diff --git a/adverse-events/pom.xml b/adverse-events/pom.xml index 78c221b..a463650 100644 --- a/adverse-events/pom.xml +++ b/adverse-events/pom.xml @@ -10,18 +10,18 @@ gov.nih.ncats adverse-events - 0.1.3-SNAPSHOT + 3.0.3-SNAPSHOT war adverse-events GSRS Adverse Events Microservices Spring Boot 8 2020.0.2 - 0.1.3-SNAPSHOT - 3.0.2-SNAPSHOT + 3.0.3-SNAPSHOT + 3.0.3-SNAPSHOT 2.17.1 - 3.0.2-SNAPSHOT + 3.0.3-SNAPSHOT diff --git a/applications/pom.xml b/applications/pom.xml index e8c22f1..610e5a1 100644 --- a/applications/pom.xml +++ b/applications/pom.xml @@ -10,18 +10,18 @@ gov.nih.ncats applications - 0.1.3-SNAPSHOT + 3.0.3-SNAPSHOT war applications GSRS Application Microservices Spring Boot 8 2020.0.2 - 0.1.3-SNAPSHOT - 3.0.2-SNAPSHOT + 3.0.3-SNAPSHOT + 3.0.3-SNAPSHOT 2.17.1 - 3.0.2-SNAPSHOT + 3.0.3-SNAPSHOT diff --git a/clinical-trials/README.md b/clinical-trials/README.md index 8309254..63c1bb1 100644 --- a/clinical-trials/README.md +++ b/clinical-trials/README.md @@ -201,8 +201,8 @@ In substances/src/main/resources/application.conf add the following: # "auth-key"="YOURAPIQUERYUSER's key" # } -gsrs.microservice.clinicaltrialsus.api.baseURL="http://localhost:8081" -gsrs.microservice.clinicaltrialseurope.api.baseURL="http://localhost:8081" +gsrs.microservice.clinicaltrialsus.api.baseURL="http://localhost:8081/" +gsrs.microservice.clinicaltrialseurope.api.baseURL="http://localhost:8081/" gsrs.indexers.list += { "indexer" = "fda.gsrs.substance.indexers.SubstanceClinicalUSTrialIndexValueMaker" diff --git a/clinical-trials/pom.xml b/clinical-trials/pom.xml index a3fff0a..b0ddc3e 100644 --- a/clinical-trials/pom.xml +++ b/clinical-trials/pom.xml @@ -10,18 +10,17 @@ gov.nih.ncats clinical-trials - 0.2.3-SNAPSHOT + 3.0.3-SNAPSHOT war clinical-trials GSRS Clinical Trials Microservice Spring Boot 8 2020.0.2 - 0.2.3-SNAPSHOT - 3.0.2-SNAPSHOT + 3.0.3-SNAPSHOT + 3.0.3-SNAPSHOT + 3.0.3-SNAPSHOT 2.17.1 - - 3.0.2-SNAPSHOT diff --git a/clinical-trials/src/main/resources/application.conf b/clinical-trials/src/main/resources/application.conf index 89b120c..978c718 100644 --- a/clinical-trials/src/main/resources/application.conf +++ b/clinical-trials/src/main/resources/application.conf @@ -27,6 +27,22 @@ ix.ginas.export.path="../substances/exports" # "auth-key"="myKey" # } +# Export CONFIG +ix.ginas.export.settingsPresets.clinicaltrialsus= { + "ALL_DATA": { + "owner":"admin", + "scrubberSettings":null + } +} + +# Export CONFIG +ix.ginas.export.settingsPresets.clinicaltrialseurope= { + "ALL_DATA": { + "owner":"admin", + "scrubberSettings":null + } +} + # Turn off eureka for now eureka.client.enabled=false @@ -79,6 +95,7 @@ mygsrs.clinicaltrial.cvUrl = application.host spring.datasource.url="jdbc:h2:file:../substances/ginas.ix/h2/sprinxight;AUTO_SERVER=TRUE" spring.datasource.driverClassName="org.h2.Driver" +spring.datasource.connectionTimeout=120000 spring.jpa.database-platform="org.hibernate.dialect.H2Dialect" spring.jpa.generate-ddl=false # Hibernate ddl auto (none, create, create-drop, validate, update) @@ -91,6 +108,7 @@ spring.hibernate.show-sql=false clinicaltrial.datasource.url="jdbc:h2:file:./ginas.ix/h2/ctdb;AUTO_SERVER=TRUE" clinicaltrial.datasource.driverClassName="org.h2.Driver" +clinicaltrial.datasource.connectionTimeout=120000 clinicaltrial.datasource.username="sa" clinicaltrial.datasource.password="" clinicaltrial.jpa.database-platform="org.hibernate.dialect.H2Dialect" @@ -189,7 +207,6 @@ gsrs.indexers.list += { ix.ginas.export.factories.clinicaltrialsus = [ "gov.hhs.gsrs.clinicaltrial.us.exporters.ClinicalTrialUSExporterFactory" ] -ix.ginas.export.factories.clinicaltrialseurope=[ +ix.ginas.export.factories.clinicaltrialseurope = [ "gov.hhs.gsrs.clinicaltrial.europe.exporters.ClinicalTrialEuropeExporterFactory" ] - diff --git a/docs/Database connection requirements for our RDBMSs.docx b/docs/Database connection requirements for our RDBMSs.docx index 1e1e05b..7ba2302 100644 Binary files a/docs/Database connection requirements for our RDBMSs.docx and b/docs/Database connection requirements for our RDBMSs.docx differ diff --git a/docs/How To Write an Entity Processor.docx b/docs/How To Write an Entity Processor.docx new file mode 100644 index 0000000..fe81733 Binary files /dev/null and b/docs/How To Write an Entity Processor.docx differ diff --git a/docs/How To Write an Index Value Maker.docx b/docs/How To Write an Index Value Maker.docx new file mode 100644 index 0000000..f4d75a1 Binary files /dev/null and b/docs/How To Write an Index Value Maker.docx differ diff --git a/docs/release notes/GSRS 3.0.3 Release Notes.docx b/docs/release notes/GSRS 3.0.3 Release Notes.docx new file mode 100644 index 0000000..0ce4944 Binary files /dev/null and b/docs/release notes/GSRS 3.0.3 Release Notes.docx differ diff --git a/frontend/pom.xml b/frontend/pom.xml index 62d3878..539238d 100644 --- a/frontend/pom.xml +++ b/frontend/pom.xml @@ -10,7 +10,7 @@ gov.nih.ncats frontend - 0.0.1-SNAPSHOT + 3.0.3-SNAPSHOT war frontend Demo project for Spring Boot diff --git a/frontend/src/main/resources/static/1089.8b595b8296d4ec75.js b/frontend/src/main/resources/static/1089.8b595b8296d4ec75.js new file mode 100644 index 0000000..4d2bf36 --- /dev/null +++ b/frontend/src/main/resources/static/1089.8b595b8296d4ec75.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1089],{31089:function(q,f,e){e.r(f),e.d(f,{SubstanceFormStructuralUnitsModule:function(){return W}});var m=e(1884),p=e(39117),d=e(36362),S=e(75143),O=e(7168),h=e(19975),C=e(65590),y=e(87317),x=e(94673),g=e(44770),l=e(90587),P=e(26439),M=e(43365),Z=e(46751),b=e(56101),U=e(79550),T=e(40104),F=e(34470),t=e(86613),A=e(78444),I=e(51279),w=e(27164),J=e(18291),_=e(63169),Y=e(33567),D=e(27299),N=e(95758),R=e(54244),Q=e(9292),j=e(16667),E=e(11307),$=e(14900);function z(o,a){if(1&o&&(t.TgZ(0,"div",26),t._uU(1),t.qZA()),2&o){var i=t.oxw();t.xp6(1),t.hij(" ",i.displayAmount(i.unit.amount)," ")}}function H(o,a){if(1&o&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&o){var i=a.$implicit;t.xp6(1),t.hij(" ",i.text," ")}}function L(o,a){if(1&o&&(t.TgZ(0,"div",27),t.YNc(1,H,2,1,"div",28),t.qZA()),2&o){var i=t.oxw();t.xp6(1),t.Q6J("ngForOf",i.errors)}}var X=function(){var o=function(){function a(i,n,r,s,u,c){var v=this;(0,p.Z)(this,a),this.cvService=i,this.dialog=n,this.utilsService=r,this.substanceService=s,this.overlayContainerService=u,this.substanceFormService=c,this.unitDeleted=new t.vpe,this.subscriptions=[],this.errors=[],this.hidePopup=!1,this.substanceService.showImagePopup.subscribe(function(G){v.hidePopup=G})}return(0,m.Z)(a,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"showHidePopup",value:function(){this.hidePopup=!this.hidePopup,this.substanceService.showImagePopup.next(this.hidePopup),this.substanceService.imagePopupUnit.next(this.unit)}},{key:"openAmountDialog",value:function(){var n=this;this.unit.amount||(this.unit.amount={},"SRU-BLOCK"===this.unit.type&&(this.unit.amount={type:"DEGREE OF POLYMERIZATION",units:"per polymer"}));var r=this.dialog.open(w.O,{data:{subsAmount:this.unit.amount},width:"1040px"});this.overlayContainer.style.zIndex="1002";var s=r.afterClosed().subscribe(function(u){n.overlayContainer.style.zIndex=null,n.unit.amount=u});this.subscriptions.push(s)}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"displayToConnectivity",value:function(n){var r=this.utilsService.sruDisplayToConnectivity(n);this.errors=r.$errors,0===this.errors.length&&(delete r.$errors,this.unit.attachmentMap=r)}},{key:"deleteSRU",value:function(){this.unit.$$deletedCode=this.utilsService.newUUID(),this.unitDeleted.emit(this.unit)}}]),a}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(J.I),t.Y36(N.uw),t.Y36(_.FW),t.Y36(D.d),t.Y36(R.Xj),t.Y36(Y.B))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-structural-unit-form"]],inputs:{unit:"unit"},outputs:{unitDeleted:"unitDeleted"},decls:30,vars:8,consts:[[1,"unit-form-container"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete SRU",3,"click"],["svgIcon","delete_forever"],[1,"form-row","full"],[1,"flex-column","related-substance"],["appSubstanceImage","",1,"related-image",3,"entityId","click"],[1,"form-container"],[1,"inner-row-top"],["domain","POLYMER_SRU_TYPE","title","SRU Type",1,"type",3,"model","valueChange"],[1,"label"],["matInput","","placeholder","Label","required","","name","label",3,"ngModel","ngModelChange"],[1,"attachment-count"],["matInput","","placeholder","attachment count","required","","name","attachment count","disabled","",3,"ngModel","ngModelChange"],[1,"inner-row-bottom"],[1,"amount"],[1,"label","padded"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],["class","amount-display",4,"ngIf"],[1,"connectivity-container"],[1,"connectivity"],["matInput","","cdkTextareaAutosize","",3,"ngModel","ngModelChange"],["class","error-container",4,"ngIf"],[1,"form-row"],[3,"source"],[1,"amount-display"],[1,"error-container"],[4,"ngFor","ngForOf"]],template:function(i,n){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"button",2),t.NdJ("click",function(){return n.deleteSRU()}),t._UZ(3,"mat-icon",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"div",5),t.TgZ(6,"img",6),t.NdJ("click",function(){return n.showHidePopup()}),t.qZA(),t.qZA(),t.TgZ(7,"div",7),t.TgZ(8,"div",8),t.TgZ(9,"app-cv-input",9),t.NdJ("valueChange",function(s){return n.unit.type=s}),t.qZA(),t.TgZ(10,"mat-form-field",10),t.TgZ(11,"input",11),t.NdJ("ngModelChange",function(s){return n.unit.label=s}),t.qZA(),t.qZA(),t.TgZ(12,"mat-form-field",12),t.TgZ(13,"input",13),t.NdJ("ngModelChange",function(s){return n.unit.attachmentCount=s}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"div",14),t.TgZ(15,"div",15),t.TgZ(16,"div",16),t._uU(17," Amount "),t.qZA(),t.TgZ(18,"button",17),t.NdJ("click",function(){return n.openAmountDialog()}),t._UZ(19,"mat-icon",18),t.qZA(),t.YNc(20,z,2,1,"div",19),t.qZA(),t.TgZ(21,"div",20),t.TgZ(22,"mat-form-field",21),t.TgZ(23,"mat-label"),t._uU(24,"Connectivity"),t.qZA(),t.TgZ(25,"textarea",22),t.NdJ("ngModelChange",function(s){return n.displayToConnectivity(s)}),t._uU(26," "),t.qZA(),t.qZA(),t.YNc(27,L,2,1,"div",23),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(28,"div",24),t._UZ(29,"app-audit-info",25),t.qZA()),2&i&&(t.xp6(6),t.Q6J("entityId",n.unit&&(n.unit.uuid||n.unit._structure&&n.unit._structure.id)),t.xp6(3),t.Q6J("model",n.unit.type),t.xp6(2),t.Q6J("ngModel",n.unit.label),t.xp6(2),t.Q6J("ngModel",n.unit.attachmentCount),t.xp6(7),t.Q6J("ngIf",n.unit.amount),t.xp6(5),t.Q6J("ngModel",n.unit._displayConnectivity),t.xp6(2),t.Q6J("ngIf",n.errors&&n.errors.length>0),t.xp6(2),t.Q6J("source",n.unit))},directives:[y.lW,C.Hw,Q.m,j.S,g.KE,M.Nt,l.Fj,l.Q7,l.JJ,l.On,d.O5,g.hX,E.IC,d.sg,$.n],styles:[".unit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:20%;width:20%;cursor:pointer} .related-substance img{max-width:125px!important;margin:auto}.full[_ngcontent-%COMP%]{width:100%}.form-container[_ngcontent-%COMP%]{width:80%}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-top[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.inner-row-top[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.inner-row-top[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.inner-row-top[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:100%}.inner-row-top[_ngcontent-%COMP%] .connectivity-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.inner-row-top[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-bottom[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.inner-row-bottom[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}"]}),o}();function k(o,a){1&o&&t._UZ(0,"mat-divider",5),2&o&&t.Q6J("inset",!0)}function B(o,a){if(1&o){var i=t.EpF();t.TgZ(0,"div",2),t.TgZ(1,"app-structural-unit-form",3),t.NdJ("unitDeleted",function(c){return t.CHM(i),t.oxw().deleteSRU(c)}),t.qZA(),t.YNc(2,k,1,1,"mat-divider",4),t.qZA()}if(2&o){var n=a.$implicit,r=a.last;t.Q6J("id","substance-structural-unit-"+a.index),t.xp6(1),t.Q6J("unit",n),t.xp6(1),t.Q6J("ngIf",!r)}}var K=function(){var o=function(a){(0,Z.Z)(n,a);var i=(0,b.Z)(n);function n(r,s,u){var c;return(0,p.Z)(this,n),(c=i.call(this,u)).substanceFormStructuralUnitsService=r,c.scrollToService=s,c.gaService=u,c.subscriptions=[],c.analyticsEventCategory="substance form structural units",c}return(0,m.Z)(n,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Structural Units")}},{key:"ngAfterViewInit",value:function(){var s=this,u=this.substanceFormStructuralUnitsService.substanceSRUs.subscribe(function(c){s.structuralUnits=c});this.subscriptions.push(u)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(s){s.unsubscribe()})}},{key:"deleteSRU",value:function(s){this.substanceFormStructuralUnitsService.deleteSubstanceSRU(s)}}]),n}(U.u);return o.\u0275fac=function(i){return new(i||o)(t.Y36(F.Z),t.Y36(A.i),t.Y36(T.$))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-form-structural-units-card"]],features:[t.qOj],decls:2,vars:1,consts:[[1,"responsive"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"unit","unitDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(i,n){1&i&&(t.TgZ(0,"div",0),t.YNc(1,B,3,3,"div",1),t.qZA()),2&i&&(t.xp6(1),t.Q6J("ngForOf",n.structuralUnits))},directives:[d.sg,I.P,X,d.O5,h.d],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--box-shadow-color-3)}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}"]}),o}(),V=e(24054),W=(e(64061),function(){var o=(0,m.Z)(function a(){(0,p.Z)(this,a)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[d.ez,S.o0.forChild(K),O.O,h.t,C.Ps,y.ot,x.w,g.lN,l.UX,l.u5,P.TU,M.c,V.f]]}),o}())}}]); +//# sourceMappingURL=1089.8b595b8296d4ec75.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1089.bdd00e548b2d7ab9.js.map b/frontend/src/main/resources/static/1089.8b595b8296d4ec75.js.map similarity index 97% rename from frontend/src/main/resources/static/1089.bdd00e548b2d7ab9.js.map rename to frontend/src/main/resources/static/1089.8b595b8296d4ec75.js.map index a128cf6..e633750 100644 --- a/frontend/src/main/resources/static/1089.bdd00e548b2d7ab9.js.map +++ b/frontend/src/main/resources/static/1089.8b595b8296d4ec75.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","StructuralUnitFormComponent","cvService","dialog","utilsService","substanceService","overlayContainerService","substanceFormService","this","EventEmitter","showImagePopup","subscribe","f","hidePopup","data","overlayContainer","getContainerElement","next","imagePopupUnit","unit","amount","type","units","dialogRef","open","AmountFormDialogComponent","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","n","newAmount","subscriptions","push","amt","displayAmount","event","result","sruDisplayToConnectivity","errors","$errors","length","attachmentMap","$$deletedCode","newUUID","unitDeleted","emit","a","selectors","ctx","ctx_r5","SubstanceFormStructuralUnitsCardComponent","substanceFormStructuralUnitsService","scrollToService","gaService","u","analyticsEventCategory","menuLabelUpdate","structuralSubscription","substanceSRUs","s","structuralUnits","forEach","subscription","unsubscribe","deleteSubstanceSRU","SubstanceCardBaseFilteredList","SubstanceFormStructuralUnitsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceImageModule"],"sources":["./src/app/core/substance-form/structural-units/structural-unit-form.component.html","./src/app/core/substance-form/structural-units/structural-unit-form.component.ts","./src/app/core/substance-form/structural-units/substance-form-structural-units-card.component.html","./src/app/core/substance-form/structural-units/substance-form-structural-units-card.component.ts","./src/app/core/substance-form/structural-units/substance-form-structural-units.module.ts"],"sourcesContent":["
\n
\n \n
\n
\n
\n \n
\n\n\n
\n
\n \n \n \n \n \n \n \n
\n\n
\n
\n
\n Amount\n
\n \n
\n {{displayAmount(unit.amount)}}\n
\n
\n
\n \n Connectivity\n \n \n
0\">\n
\n {{error.text}}\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n\n\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { AmountFormDialogComponent } from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\nimport { Subscription } from 'rxjs';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { MatDialog } from '@angular/material/dialog';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { StructuralUnit, SubstanceCode, SubstanceService } from '@gsrs-core/substance';\nimport { SafeUrl } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-structural-unit-form',\n templateUrl: './structural-unit-form.component.html',\n styleUrls: ['./structural-unit-form.component.scss']\n})\nexport class StructuralUnitFormComponent implements OnInit {\n @Input() unit: StructuralUnit;\n @Output() unitDeleted = new EventEmitter();\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n substanceType: string;\n errors = [];\n hidePopup: boolean = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private substanceService: SubstanceService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { \n this.substanceService.showImagePopup.subscribe (data => {\n this.hidePopup = data;\n })\n }\n\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n showHidePopup(): void {\n this.hidePopup = !this.hidePopup;\n this.substanceService.showImagePopup.next(this.hidePopup);\n this.substanceService.imagePopupUnit.next(this.unit);\n }\n\n openAmountDialog(): void {\n\n if (!this.unit.amount) {\n this.unit.amount = {};\n if (this.unit.type === 'SRU-BLOCK') {\n this.unit.amount = {\n type: 'DEGREE OF POLYMERIZATION',\n units: 'per polymer'\n };\n }\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: { 'subsAmount': this.unit.amount },\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.unit.amount = newAmount;\n\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n displayToConnectivity(event: any) {\n const result = this.utilsService.sruDisplayToConnectivity(event);\n this.errors = result.$errors;\n if (this.errors.length === 0) {\n delete result.$errors;\n this.unit.attachmentMap = result;\n }\n }\n\n deleteSRU(): void {\n this.unit.$$deletedCode = this.utilsService.newUUID();\n this.unitDeleted.emit(this.unit);\n }\n\n}\n\n\n\n","
\n
\n \n \n
\n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {StructuralUnit} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormStructuralUnitsService } from './substance-form-structural-units.service';\n\n@Component({\n selector: 'app-substance-form-structural-units-card',\n templateUrl: './substance-form-structural-units-card.component.html',\n styleUrls: ['./substance-form-structural-units-card.component.scss']\n})\nexport class SubstanceFormStructuralUnitsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy {\n structuralUnits: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormStructuralUnitsService: SubstanceFormStructuralUnitsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form structural units';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Structural Units');\n }\n\n ngAfterViewInit() {\n const structuralSubscription = this.substanceFormStructuralUnitsService.substanceSRUs.subscribe(structuralUnits => {\n this.structuralUnits = structuralUnits;\n });\n this.subscriptions.push(structuralSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n deleteSRU(unit: StructuralUnit): void {\n this.substanceFormStructuralUnitsService.deleteSubstanceSRU(unit);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {SubstanceFormStructuralUnitsCardComponent} from '@gsrs-core/substance-form/structural-units/substance-form-structural-units-card.component';\nimport { StructuralUnitFormComponent } from './structural-unit-form.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructuralUnitsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceFormStructuralUnitsCardComponent,\n StructuralUnitFormComponent\n ]\n})\nexport class SubstanceFormStructuralUnitsModule { }\n"],"sourceRoot":"webpack:///","file":"1089.bdd00e548b2d7ab9.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","StructuralUnitFormComponent","cvService","dialog","utilsService","substanceService","overlayContainerService","substanceFormService","this","EventEmitter","showImagePopup","subscribe","v","hidePopup","data","overlayContainer","getContainerElement","next","imagePopupUnit","unit","amount","type","units","dialogRef","open","AmountFormDialogComponent","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","n","newAmount","subscriptions","push","amt","displayAmount","event","result","sruDisplayToConnectivity","errors","$errors","length","attachmentMap","$$deletedCode","newUUID","unitDeleted","emit","a","selectors","ctx","ctx_r5","SubstanceFormStructuralUnitsCardComponent","substanceFormStructuralUnitsService","scrollToService","gaService","c","analyticsEventCategory","menuLabelUpdate","structuralSubscription","substanceSRUs","s","structuralUnits","forEach","subscription","unsubscribe","deleteSubstanceSRU","SubstanceCardBaseFilteredList","SubstanceFormStructuralUnitsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceImageModule"],"sources":["./src/app/core/substance-form/structural-units/structural-unit-form.component.html","./src/app/core/substance-form/structural-units/structural-unit-form.component.ts","./src/app/core/substance-form/structural-units/substance-form-structural-units-card.component.html","./src/app/core/substance-form/structural-units/substance-form-structural-units-card.component.ts","./src/app/core/substance-form/structural-units/substance-form-structural-units.module.ts"],"sourcesContent":["
\n
\n \n
\n
\n
\n \n
\n\n\n
\n
\n \n \n \n \n \n \n \n
\n\n
\n
\n
\n Amount\n
\n \n
\n {{displayAmount(unit.amount)}}\n
\n
\n
\n \n Connectivity\n \n \n
0\">\n
\n {{error.text}}\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n\n\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { AmountFormDialogComponent } from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\nimport { Subscription } from 'rxjs';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { MatDialog } from '@angular/material/dialog';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { StructuralUnit, SubstanceCode, SubstanceService } from '@gsrs-core/substance';\nimport { SafeUrl } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-structural-unit-form',\n templateUrl: './structural-unit-form.component.html',\n styleUrls: ['./structural-unit-form.component.scss']\n})\nexport class StructuralUnitFormComponent implements OnInit {\n @Input() unit: StructuralUnit;\n @Output() unitDeleted = new EventEmitter();\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n substanceType: string;\n errors = [];\n hidePopup: boolean = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private substanceService: SubstanceService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { \n this.substanceService.showImagePopup.subscribe (data => {\n this.hidePopup = data;\n })\n }\n\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n showHidePopup(): void {\n this.hidePopup = !this.hidePopup;\n this.substanceService.showImagePopup.next(this.hidePopup);\n this.substanceService.imagePopupUnit.next(this.unit);\n }\n\n openAmountDialog(): void {\n\n if (!this.unit.amount) {\n this.unit.amount = {};\n if (this.unit.type === 'SRU-BLOCK') {\n this.unit.amount = {\n type: 'DEGREE OF POLYMERIZATION',\n units: 'per polymer'\n };\n }\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: { 'subsAmount': this.unit.amount },\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.unit.amount = newAmount;\n\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n displayToConnectivity(event: any) {\n const result = this.utilsService.sruDisplayToConnectivity(event);\n this.errors = result.$errors;\n if (this.errors.length === 0) {\n delete result.$errors;\n this.unit.attachmentMap = result;\n }\n }\n\n deleteSRU(): void {\n this.unit.$$deletedCode = this.utilsService.newUUID();\n this.unitDeleted.emit(this.unit);\n }\n\n}\n\n\n\n","
\n
\n \n \n
\n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {StructuralUnit} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormStructuralUnitsService } from './substance-form-structural-units.service';\n\n@Component({\n selector: 'app-substance-form-structural-units-card',\n templateUrl: './substance-form-structural-units-card.component.html',\n styleUrls: ['./substance-form-structural-units-card.component.scss']\n})\nexport class SubstanceFormStructuralUnitsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy {\n structuralUnits: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormStructuralUnitsService: SubstanceFormStructuralUnitsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form structural units';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Structural Units');\n }\n\n ngAfterViewInit() {\n const structuralSubscription = this.substanceFormStructuralUnitsService.substanceSRUs.subscribe(structuralUnits => {\n this.structuralUnits = structuralUnits;\n });\n this.subscriptions.push(structuralSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n deleteSRU(unit: StructuralUnit): void {\n this.substanceFormStructuralUnitsService.deleteSubstanceSRU(unit);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {SubstanceFormStructuralUnitsCardComponent} from '@gsrs-core/substance-form/structural-units/substance-form-structural-units-card.component';\nimport { StructuralUnitFormComponent } from './structural-unit-form.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructuralUnitsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceFormStructuralUnitsCardComponent,\n StructuralUnitFormComponent\n ]\n})\nexport class SubstanceFormStructuralUnitsModule { }\n"],"sourceRoot":"webpack:///","file":"1089.8b595b8296d4ec75.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1089.bdd00e548b2d7ab9.js b/frontend/src/main/resources/static/1089.bdd00e548b2d7ab9.js deleted file mode 100644 index b4f15d6..0000000 --- a/frontend/src/main/resources/static/1089.bdd00e548b2d7ab9.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1089],{31089:function(q,v,e){e.r(v),e.d(v,{SubstanceFormStructuralUnitsModule:function(){return W}});var m=e(48047),p=e(78069),d=e(36362),S=e(75143),O=e(7168),h=e(19975),C=e(65590),y=e(87317),x=e(94673),g=e(44770),l=e(90587),P=e(26439),M=e(43365),Z=e(24582),b=e(7318),U=e(79550),T=e(40104),F=e(34470),t=e(76442),A=e(78444),I=e(51279),w=e(27164),J=e(18291),_=e(63169),Y=e(33567),D=e(27299),N=e(95758),R=e(66088),Q=e(9292),j=e(16667),E=e(11307),$=e(14900);function z(o,a){if(1&o&&(t.TgZ(0,"div",26),t._uU(1),t.qZA()),2&o){var i=t.oxw();t.xp6(1),t.hij(" ",i.displayAmount(i.unit.amount)," ")}}function H(o,a){if(1&o&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&o){var i=a.$implicit;t.xp6(1),t.hij(" ",i.text," ")}}function L(o,a){if(1&o&&(t.TgZ(0,"div",27),t.YNc(1,H,2,1,"div",28),t.qZA()),2&o){var i=t.oxw();t.xp6(1),t.Q6J("ngForOf",i.errors)}}var X=function(){var o=function(){function a(i,n,r,s,c,u){var f=this;(0,p.Z)(this,a),this.cvService=i,this.dialog=n,this.utilsService=r,this.substanceService=s,this.overlayContainerService=c,this.substanceFormService=u,this.unitDeleted=new t.vpe,this.subscriptions=[],this.errors=[],this.hidePopup=!1,this.substanceService.showImagePopup.subscribe(function(G){f.hidePopup=G})}return(0,m.Z)(a,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"showHidePopup",value:function(){this.hidePopup=!this.hidePopup,this.substanceService.showImagePopup.next(this.hidePopup),this.substanceService.imagePopupUnit.next(this.unit)}},{key:"openAmountDialog",value:function(){var n=this;this.unit.amount||(this.unit.amount={},"SRU-BLOCK"===this.unit.type&&(this.unit.amount={type:"DEGREE OF POLYMERIZATION",units:"per polymer"}));var r=this.dialog.open(w.O,{data:{subsAmount:this.unit.amount},width:"1040px"});this.overlayContainer.style.zIndex="1002";var s=r.afterClosed().subscribe(function(c){n.overlayContainer.style.zIndex=null,n.unit.amount=c});this.subscriptions.push(s)}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"displayToConnectivity",value:function(n){var r=this.utilsService.sruDisplayToConnectivity(n);this.errors=r.$errors,0===this.errors.length&&(delete r.$errors,this.unit.attachmentMap=r)}},{key:"deleteSRU",value:function(){this.unit.$$deletedCode=this.utilsService.newUUID(),this.unitDeleted.emit(this.unit)}}]),a}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(J.I),t.Y36(N.uw),t.Y36(_.FW),t.Y36(D.d),t.Y36(R.Xj),t.Y36(Y.B))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-structural-unit-form"]],inputs:{unit:"unit"},outputs:{unitDeleted:"unitDeleted"},decls:30,vars:8,consts:[[1,"unit-form-container"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete SRU",3,"click"],["svgIcon","delete_forever"],[1,"form-row","full"],[1,"flex-column","related-substance"],["appSubstanceImage","",1,"related-image",3,"entityId","click"],[1,"form-container"],[1,"inner-row-top"],["domain","POLYMER_SRU_TYPE","title","SRU Type",1,"type",3,"model","valueChange"],[1,"label"],["matInput","","placeholder","Label","required","","name","label",3,"ngModel","ngModelChange"],[1,"attachment-count"],["matInput","","placeholder","attachment count","required","","name","attachment count","disabled","",3,"ngModel","ngModelChange"],[1,"inner-row-bottom"],[1,"amount"],[1,"label","padded"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],["class","amount-display",4,"ngIf"],[1,"connectivity-container"],[1,"connectivity"],["matInput","","cdkTextareaAutosize","",3,"ngModel","ngModelChange"],["class","error-container",4,"ngIf"],[1,"form-row"],[3,"source"],[1,"amount-display"],[1,"error-container"],[4,"ngFor","ngForOf"]],template:function(i,n){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"button",2),t.NdJ("click",function(){return n.deleteSRU()}),t._UZ(3,"mat-icon",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"div",5),t.TgZ(6,"img",6),t.NdJ("click",function(){return n.showHidePopup()}),t.qZA(),t.qZA(),t.TgZ(7,"div",7),t.TgZ(8,"div",8),t.TgZ(9,"app-cv-input",9),t.NdJ("valueChange",function(s){return n.unit.type=s}),t.qZA(),t.TgZ(10,"mat-form-field",10),t.TgZ(11,"input",11),t.NdJ("ngModelChange",function(s){return n.unit.label=s}),t.qZA(),t.qZA(),t.TgZ(12,"mat-form-field",12),t.TgZ(13,"input",13),t.NdJ("ngModelChange",function(s){return n.unit.attachmentCount=s}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"div",14),t.TgZ(15,"div",15),t.TgZ(16,"div",16),t._uU(17," Amount "),t.qZA(),t.TgZ(18,"button",17),t.NdJ("click",function(){return n.openAmountDialog()}),t._UZ(19,"mat-icon",18),t.qZA(),t.YNc(20,z,2,1,"div",19),t.qZA(),t.TgZ(21,"div",20),t.TgZ(22,"mat-form-field",21),t.TgZ(23,"mat-label"),t._uU(24,"Connectivity"),t.qZA(),t.TgZ(25,"textarea",22),t.NdJ("ngModelChange",function(s){return n.displayToConnectivity(s)}),t._uU(26," "),t.qZA(),t.qZA(),t.YNc(27,L,2,1,"div",23),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(28,"div",24),t._UZ(29,"app-audit-info",25),t.qZA()),2&i&&(t.xp6(6),t.Q6J("entityId",n.unit&&(n.unit.uuid||n.unit._structure&&n.unit._structure.id)),t.xp6(3),t.Q6J("model",n.unit.type),t.xp6(2),t.Q6J("ngModel",n.unit.label),t.xp6(2),t.Q6J("ngModel",n.unit.attachmentCount),t.xp6(7),t.Q6J("ngIf",n.unit.amount),t.xp6(5),t.Q6J("ngModel",n.unit._displayConnectivity),t.xp6(2),t.Q6J("ngIf",n.errors&&n.errors.length>0),t.xp6(2),t.Q6J("source",n.unit))},directives:[y.lW,C.Hw,Q.m,j.S,g.KE,M.Nt,l.Fj,l.Q7,l.JJ,l.On,d.O5,g.hX,E.IC,d.sg,$.n],styles:[".unit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:20%;width:20%;cursor:pointer} .related-substance img{max-width:125px!important;margin:auto}.full[_ngcontent-%COMP%]{width:100%}.form-container[_ngcontent-%COMP%]{width:80%}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-top[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.inner-row-top[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.inner-row-top[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.inner-row-top[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:100%}.inner-row-top[_ngcontent-%COMP%] .connectivity-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.inner-row-top[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-bottom[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.inner-row-bottom[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}"]}),o}();function B(o,a){1&o&&t._UZ(0,"mat-divider",5),2&o&&t.Q6J("inset",!0)}function k(o,a){if(1&o){var i=t.EpF();t.TgZ(0,"div",2),t.TgZ(1,"app-structural-unit-form",3),t.NdJ("unitDeleted",function(u){return t.CHM(i),t.oxw().deleteSRU(u)}),t.qZA(),t.YNc(2,B,1,1,"mat-divider",4),t.qZA()}if(2&o){var n=a.$implicit,r=a.last;t.Q6J("id","substance-structural-unit-"+a.index),t.xp6(1),t.Q6J("unit",n),t.xp6(1),t.Q6J("ngIf",!r)}}var K=function(){var o=function(a){(0,Z.Z)(n,a);var i=(0,b.Z)(n);function n(r,s,c){var u;return(0,p.Z)(this,n),(u=i.call(this,c)).substanceFormStructuralUnitsService=r,u.scrollToService=s,u.gaService=c,u.subscriptions=[],u.analyticsEventCategory="substance form structural units",u}return(0,m.Z)(n,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Structural Units")}},{key:"ngAfterViewInit",value:function(){var s=this,c=this.substanceFormStructuralUnitsService.substanceSRUs.subscribe(function(u){s.structuralUnits=u});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(s){s.unsubscribe()})}},{key:"deleteSRU",value:function(s){this.substanceFormStructuralUnitsService.deleteSubstanceSRU(s)}}]),n}(U.u);return o.\u0275fac=function(i){return new(i||o)(t.Y36(F.Z),t.Y36(A.i),t.Y36(T.$))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-form-structural-units-card"]],features:[t.qOj],decls:2,vars:1,consts:[[1,"responsive"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"unit","unitDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(i,n){1&i&&(t.TgZ(0,"div",0),t.YNc(1,k,3,3,"div",1),t.qZA()),2&i&&(t.xp6(1),t.Q6J("ngForOf",n.structuralUnits))},directives:[d.sg,I.P,X,d.O5,h.d],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#0000001f}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}"]}),o}(),V=e(24054),W=(e(64061),function(){var o=(0,m.Z)(function a(){(0,p.Z)(this,a)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[d.ez,S.o0.forChild(K),O.O,h.t,C.Ps,y.ot,x.w,g.lN,l.UX,l.u5,P.TU,M.c,V.f]]}),o}())}}]); -//# sourceMappingURL=1089.bdd00e548b2d7ab9.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1105.e84821bf9badcee0.js b/frontend/src/main/resources/static/1105.b953ab3b8f9961b3.js similarity index 95% rename from frontend/src/main/resources/static/1105.e84821bf9badcee0.js rename to frontend/src/main/resources/static/1105.b953ab3b8f9961b3.js index bdf7ee1..6f4b600 100644 --- a/frontend/src/main/resources/static/1105.e84821bf9badcee0.js +++ b/frontend/src/main/resources/static/1105.b953ab3b8f9961b3.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1105],{51105:function(ce,f,a){a.r(f),a.d(f,{SubstancePropertiesModule:function(){return ie}});var v=a(48047),g=a(78069),m=a(36362),C=a(64061),T=a(95106),S=a(24582),x=a(7318),P=a(2756),y=a(50253),A=a(63169),e=a(76442),l=a(95758),U=a(66088),c=a(97217),Z=a(40089),b=a(65590),I=a(9292),h=a(98002),N=a(73430);function Y(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Name "),e.qZA())}function Q(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.hij(" ",o.name," ")}}function D(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Property Type "),e.qZA())}function J(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.hij(" ",o.propertyType," ")}}function O(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Amount "),e.qZA())}function _(t,n){1&t&&e._UZ(0,"mat-icon",18)}function $(t,n){if(1&t&&(e.TgZ(0,"span",16),e.YNc(1,_,1,0,"mat-icon",17),e.qZA()),2&t){var o=e.oxw().$implicit,i=e.oxw();e.xp6(1),e.Q6J("ngIf",i.codeIsProtected(o.value.access))}}function B(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.YNc(2,$,2,1,"span",15),e.qZA()),2&t){var o=n.$implicit,i=e.oxw();e.xp6(1),e.hij(" ",i.toString(o.value)," "),e.xp6(1),e.Q6J("ngIf",i.codeIsProtected(o.value.access))}}function M(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Referenced Substance "),e.qZA())}function j(t,n){if(1&t&&(e.TgZ(0,"div",24),e._uU(1),e.qZA()),2&t){var o=e.oxw(2).$implicit;e.xp6(1),e.Oqu(o.referencedSubstance.linkingID)}}var R=function(n){return["/substances",n]};function q(t,n){if(1&t&&(e.TgZ(0,"div",20),e.YNc(1,j,2,1,"div",21),e._UZ(2,"img",22),e.TgZ(3,"div"),e.TgZ(4,"a",23),e._uU(5),e.qZA(),e.qZA(),e.qZA()),2&t){var o=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",o.referencedSubstance.linkingID),e.xp6(1),e.Q6J("entityId",o.referencedSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(4,R,o.referencedSubstance.refuuid)),e.xp6(1),e.hij(" ",o.referencedSubstance.name," ")}}function F(t,n){if(1&t&&(e.TgZ(0,"td",14),e.YNc(1,q,6,6,"div",19),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.Q6J("ngIf",o.referencedSubstance)}}function H(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Defining "),e.qZA())}function z(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.hij(" ",o.defining," ")}}function V(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Parameters "),e.qZA())}function W(t,n){if(1&t&&(e.TgZ(0,"div"),e._uU(1),e._UZ(2,"br"),e._uU(3),e._UZ(4,"br"),e._uU(5),e.qZA()),2&t){var o=n.$implicit,i=e.oxw(2);e.xp6(1),e.Oqu(o.name),e.xp6(2),e.Oqu(o.type),e.xp6(2),e.Oqu(i.toString(o.value))}}function w(t,n){if(1&t&&(e.TgZ(0,"td",14),e.YNc(1,W,6,3,"div",25),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.Q6J("ngForOf",o.parameters)}}function L(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," References "),e.qZA())}function X(t,n){if(1&t&&(e.TgZ(0,"h2",28),e._uU(1,"References"),e.qZA(),e.TgZ(2,"div",29),e._UZ(3,"app-references-manager",30),e.qZA(),e.TgZ(4,"div",31),e._UZ(5,"span",32),e.TgZ(6,"button",33),e._uU(7,"Close"),e.qZA(),e.qZA()),2&t){var o=e.oxw().$implicit,i=e.oxw();e.xp6(3),e.Q6J("substance",i.substance)("references",o.references)}}function E(t,n){if(1&t){var o=e.EpF();e.TgZ(0,"td",14),e.TgZ(1,"button",26),e.NdJ("click",function(){e.CHM(o);var r=e.MAs(4);return e.oxw().openModal(r)}),e._uU(2,"View"),e.qZA(),e.YNc(3,X,8,2,"ng-template",null,27,e.W1O),e.qZA()}if(2&t){var i=n.$implicit;e.xp6(1),e.Q6J("disabled",i.references.length<=0)}}function k(t,n){1&t&&e._UZ(0,"tr",34)}function G(t,n){1&t&&e._UZ(0,"tr",35)}var K=function(){var t=function(n){(0,S.Z)(i,n);var o=(0,x.Z)(i);function i(p,r,u){var s;return(0,g.Z)(this,i),(s=o.call(this)).utilsService=p,s.dialog=r,s.overlayContainerService=u,s.properties=[],s.displayedColumns=["name","property type","amount","referenced substance","defining","parameters","references"],s.substanceUpdated=new y.x,s}return(0,v.Z)(i,[{key:"ngOnInit",value:function(){var r=this;this.substanceUpdated.subscribe(function(u){r.substance=u,null!=r.substance&&null!=r.substance.properties&&(r.properties=r.substance.properties),r.countUpdate.emit(r.properties.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"toString",value:function(r){return this.utilsService.displayAmount(r)}},{key:"codeIsProtected",value:function(r){var d,u=!1,s=(0,T.Z)(r);try{for(s.s();!(d=s.n()).done;)"protected"===d.value.toLowerCase()&&(u=!0)}catch(se){s.e(se)}finally{s.f()}return u}},{key:"openModal",value:function(r){var u=this,s=this.dialog.open(r,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",s.afterClosed().subscribe(function(d){u.overlayContainer.style.zIndex=null})}}]),i}(P.B);return t.\u0275fac=function(o){return new(o||t)(e.Y36(A.FW),e.Y36(l.uw),e.Y36(U.Xj))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-substance-properties"]],features:[e.qOj],decls:25,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","name"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","property type"],["matColumnDef","amount"],["matColumnDef","referenced substance"],["matColumnDef","defining"],["matColumnDef","parameters"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["class","thumb-col",4,"ngIf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"],[4,"ngFor","ngForOf"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-header-row",""],["mat-row",""]],template:function(o,i){1&o&&(e.TgZ(0,"div",0),e.TgZ(1,"table",1),e.ynx(2,2),e.YNc(3,Y,2,0,"th",3),e.YNc(4,Q,2,1,"td",4),e.BQk(),e.ynx(5,5),e.YNc(6,D,2,0,"th",3),e.YNc(7,J,2,1,"td",4),e.BQk(),e.ynx(8,6),e.YNc(9,O,2,0,"th",3),e.YNc(10,B,3,2,"td",4),e.BQk(),e.ynx(11,7),e.YNc(12,M,2,0,"th",3),e.YNc(13,F,2,1,"td",4),e.BQk(),e.ynx(14,8),e.YNc(15,H,2,0,"th",3),e.YNc(16,z,2,1,"td",4),e.BQk(),e.ynx(17,9),e.YNc(18,V,2,0,"th",3),e.YNc(19,w,2,1,"td",4),e.BQk(),e.ynx(20,10),e.YNc(21,L,2,0,"th",3),e.YNc(22,E,5,1,"td",4),e.BQk(),e.YNc(23,k,1,0,"tr",11),e.YNc(24,G,1,0,"tr",12),e.qZA(),e.qZA()),2&o&&(e.xp6(1),e.Q6J("dataSource",i.properties),e.xp6(22),e.Q6J("matHeaderRowDef",i.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",i.displayedColumns))},directives:[c.BZ,c.w1,c.fO,c.ge,c.Dz,c.ev,m.O5,Z.gM,b.Hw,I.m,h.yS,m.sg,l.uh,l.xY,N.C,l.H8,l.ZT,c.as,c.XQ,c.nj,c.Gk],styles:[""]}),t}(),ee=a(43365),te=a(26439),ne=a(33865),oe=a(24054),ae=a(11920),ie=function(){var t=(0,v.Z)(function n(){(0,g.Z)(this,n)});return t.\u0275fac=function(o){return new(o||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[m.ez,C.o.forChild(K),c.p0,b.Ps,ne.HT,te.TU,ee.c,h.Bz,oe.f,ae.V,l.Is,Z.AV]]}),t}()}}]); -//# sourceMappingURL=1105.e84821bf9badcee0.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1105],{51105:function(ce,f,a){a.r(f),a.d(f,{SubstancePropertiesModule:function(){return ie}});var v=a(1884),g=a(39117),m=a(36362),C=a(64061),T=a(44014),S=a(46751),x=a(56101),P=a(2756),y=a(50253),A=a(63169),e=a(86613),l=a(95758),U=a(54244),c=a(97217),Z=a(40089),b=a(65590),I=a(9292),h=a(98002),N=a(73430);function Y(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Name "),e.qZA())}function Q(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.hij(" ",o.name," ")}}function D(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Property Type "),e.qZA())}function J(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.hij(" ",o.propertyType," ")}}function O(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Amount "),e.qZA())}function _(t,n){1&t&&e._UZ(0,"mat-icon",18)}function $(t,n){if(1&t&&(e.TgZ(0,"span",16),e.YNc(1,_,1,0,"mat-icon",17),e.qZA()),2&t){var o=e.oxw().$implicit,i=e.oxw();e.xp6(1),e.Q6J("ngIf",i.codeIsProtected(o.value.access))}}function B(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.YNc(2,$,2,1,"span",15),e.qZA()),2&t){var o=n.$implicit,i=e.oxw();e.xp6(1),e.hij(" ",i.toString(o.value)," "),e.xp6(1),e.Q6J("ngIf",i.codeIsProtected(o.value.access))}}function M(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Referenced Substance "),e.qZA())}function j(t,n){if(1&t&&(e.TgZ(0,"div",24),e._uU(1),e.qZA()),2&t){var o=e.oxw(2).$implicit;e.xp6(1),e.Oqu(o.referencedSubstance.linkingID)}}var R=function(n){return["/substances",n]};function q(t,n){if(1&t&&(e.TgZ(0,"div",20),e.YNc(1,j,2,1,"div",21),e._UZ(2,"img",22),e.TgZ(3,"div"),e.TgZ(4,"a",23),e._uU(5),e.qZA(),e.qZA(),e.qZA()),2&t){var o=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",o.referencedSubstance.linkingID),e.xp6(1),e.Q6J("entityId",o.referencedSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(4,R,o.referencedSubstance.refuuid)),e.xp6(1),e.hij(" ",o.referencedSubstance.name," ")}}function F(t,n){if(1&t&&(e.TgZ(0,"td",14),e.YNc(1,q,6,6,"div",19),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.Q6J("ngIf",o.referencedSubstance)}}function H(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Defining "),e.qZA())}function z(t,n){if(1&t&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.hij(" ",o.defining," ")}}function V(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," Parameters "),e.qZA())}function W(t,n){if(1&t&&(e.TgZ(0,"div"),e._uU(1),e._UZ(2,"br"),e._uU(3),e._UZ(4,"br"),e._uU(5),e.qZA()),2&t){var o=n.$implicit,i=e.oxw(2);e.xp6(1),e.Oqu(o.name),e.xp6(2),e.Oqu(o.type),e.xp6(2),e.Oqu(i.toString(o.value))}}function w(t,n){if(1&t&&(e.TgZ(0,"td",14),e.YNc(1,W,6,3,"div",25),e.qZA()),2&t){var o=n.$implicit;e.xp6(1),e.Q6J("ngForOf",o.parameters)}}function L(t,n){1&t&&(e.TgZ(0,"th",13),e._uU(1," References "),e.qZA())}function X(t,n){if(1&t&&(e.TgZ(0,"h2",28),e._uU(1,"References"),e.qZA(),e.TgZ(2,"div",29),e._UZ(3,"app-references-manager",30),e.qZA(),e.TgZ(4,"div",31),e._UZ(5,"span",32),e.TgZ(6,"button",33),e._uU(7,"Close"),e.qZA(),e.qZA()),2&t){var o=e.oxw().$implicit,i=e.oxw();e.xp6(3),e.Q6J("substance",i.substance)("references",o.references)}}function E(t,n){if(1&t){var o=e.EpF();e.TgZ(0,"td",14),e.TgZ(1,"button",26),e.NdJ("click",function(){e.CHM(o);var r=e.MAs(4);return e.oxw().openModal(r)}),e._uU(2,"View"),e.qZA(),e.YNc(3,X,8,2,"ng-template",null,27,e.W1O),e.qZA()}if(2&t){var i=n.$implicit;e.xp6(1),e.Q6J("disabled",i.references.length<=0)}}function k(t,n){1&t&&e._UZ(0,"tr",34)}function G(t,n){1&t&&e._UZ(0,"tr",35)}var K=function(){var t=function(n){(0,S.Z)(i,n);var o=(0,x.Z)(i);function i(p,r,u){var s;return(0,g.Z)(this,i),(s=o.call(this)).utilsService=p,s.dialog=r,s.overlayContainerService=u,s.properties=[],s.displayedColumns=["name","property type","amount","referenced substance","defining","parameters","references"],s.substanceUpdated=new y.x,s}return(0,v.Z)(i,[{key:"ngOnInit",value:function(){var r=this;this.substanceUpdated.subscribe(function(u){r.substance=u,null!=r.substance&&null!=r.substance.properties&&(r.properties=r.substance.properties),r.countUpdate.emit(r.properties.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"toString",value:function(r){return this.utilsService.displayAmount(r)}},{key:"codeIsProtected",value:function(r){var d,u=!1,s=(0,T.Z)(r);try{for(s.s();!(d=s.n()).done;)"protected"===d.value.toLowerCase()&&(u=!0)}catch(se){s.e(se)}finally{s.f()}return u}},{key:"openModal",value:function(r){var u=this,s=this.dialog.open(r,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",s.afterClosed().subscribe(function(d){u.overlayContainer.style.zIndex=null})}}]),i}(P.B);return t.\u0275fac=function(o){return new(o||t)(e.Y36(A.FW),e.Y36(l.uw),e.Y36(U.Xj))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-substance-properties"]],features:[e.qOj],decls:25,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","name"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","property type"],["matColumnDef","amount"],["matColumnDef","referenced substance"],["matColumnDef","defining"],["matColumnDef","parameters"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["class","thumb-col",4,"ngIf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"],[4,"ngFor","ngForOf"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-header-row",""],["mat-row",""]],template:function(o,i){1&o&&(e.TgZ(0,"div",0),e.TgZ(1,"table",1),e.ynx(2,2),e.YNc(3,Y,2,0,"th",3),e.YNc(4,Q,2,1,"td",4),e.BQk(),e.ynx(5,5),e.YNc(6,D,2,0,"th",3),e.YNc(7,J,2,1,"td",4),e.BQk(),e.ynx(8,6),e.YNc(9,O,2,0,"th",3),e.YNc(10,B,3,2,"td",4),e.BQk(),e.ynx(11,7),e.YNc(12,M,2,0,"th",3),e.YNc(13,F,2,1,"td",4),e.BQk(),e.ynx(14,8),e.YNc(15,H,2,0,"th",3),e.YNc(16,z,2,1,"td",4),e.BQk(),e.ynx(17,9),e.YNc(18,V,2,0,"th",3),e.YNc(19,w,2,1,"td",4),e.BQk(),e.ynx(20,10),e.YNc(21,L,2,0,"th",3),e.YNc(22,E,5,1,"td",4),e.BQk(),e.YNc(23,k,1,0,"tr",11),e.YNc(24,G,1,0,"tr",12),e.qZA(),e.qZA()),2&o&&(e.xp6(1),e.Q6J("dataSource",i.properties),e.xp6(22),e.Q6J("matHeaderRowDef",i.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",i.displayedColumns))},directives:[c.BZ,c.w1,c.fO,c.ge,c.Dz,c.ev,m.O5,Z.gM,b.Hw,I.m,h.yS,m.sg,l.uh,l.xY,N.C,l.H8,l.ZT,c.as,c.XQ,c.nj,c.Gk],styles:[""]}),t}(),ee=a(43365),te=a(26439),ne=a(33865),oe=a(24054),ae=a(11920),ie=function(){var t=(0,v.Z)(function n(){(0,g.Z)(this,n)});return t.\u0275fac=function(o){return new(o||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[m.ez,C.o.forChild(K),c.p0,b.Ps,ne.HT,te.TU,ee.c,h.Bz,oe.f,ae.V,l.Is,Z.AV]]}),t}()}}]); +//# sourceMappingURL=1105.b953ab3b8f9961b3.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1105.e84821bf9badcee0.js.map b/frontend/src/main/resources/static/1105.b953ab3b8f9961b3.js.map similarity index 99% rename from frontend/src/main/resources/static/1105.e84821bf9badcee0.js.map rename to frontend/src/main/resources/static/1105.b953ab3b8f9961b3.js.map index 3eedc6d..85b682e 100644 --- a/frontend/src/main/resources/static/1105.e84821bf9badcee0.js.map +++ b/frontend/src/main/resources/static/1105.b953ab3b8f9961b3.js.map @@ -1 +1 @@ -{"version":3,"mappings":"0ZAIMA,iBAAuCA,kBAAKA,kCAC5CA,iBAAyCA,SAAkBA,gCAAlBA,sDAIzCA,iBAAuCA,2BAAcA,kCACrDA,iBAAyCA,SAA0BA,gCAA1BA,8DAIzCA,iBAAuCA,oBAAOA,8BAG1CA,gDADFA,mBACEA,6BACFA,gDADyDA,mFAF3DA,iBAAyCA,SACvCA,yBAGFA,0CAJyCA,4CAChCA,gFAOTA,iBAAuCA,kCAAqBA,kCAE1DA,kBAAsEA,SAA0CA,uCAA1CA,qHADhCA,kBACtCA,wBACAA,kBACAA,eACEA,gBACAA,SACAA,QACFA,QACFA,sCAPQA,uDACuCA,yDAEjBA,sEAC1BA,6EALJA,iBAAwCA,wBASxCA,gCAT8CA,oEAa9CA,iBAAuCA,sBAASA,kCAChDA,iBAAyCA,SAAsBA,gCAAtBA,0DAIzCA,iBAAuCA,wBAAWA,kCAE9CA,eAAqDA,SAAkBA,cAAIA,SAAkBA,cAAKA,SAA6BA,2CAA1EA,uBAAsBA,uBAAuBA,8DADtGA,iBACIA,wBACJA,gCADiCA,8DAKjCA,iBAAuCA,wBAAWA,kCAK9CA,iBAAqBA,sBAAUA,QAC/BA,kBACEA,qCACFA,QACEA,kBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,gDALwBA,wCAAyB,kEANvDA,iBACEA,qBAA6DA,gEAASC,eAAsED,gBAAIA,QAEhJA,2CAUFA,kCAZiGA,wEAgBnGA,sCACAA,iBCvDG,IAAME,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACAC,EACAC,GAAyC,6BAEjDC,gBAJQH,eACAG,WACAA,4BAPVA,aAAuC,GACvCA,mBAA6B,CAAC,OAAQ,gBAAiB,SAAU,uBAAwB,WAAY,aAAc,cACnHA,mBAAmB,IAAIC,IAK4BD,EARrD,uCAaE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAkD,MAA7BD,EAAKC,UAAUC,aAC3CF,EAAKE,WAAaF,EAAKC,UAAUC,YAEnCF,EAAKG,YAAYC,KAAKJ,EAAKE,WAAWG,UAExCR,KAAKS,iBAAmBT,KAAKH,wBAAwBa,wBArBzD,sBAwBS,SAASC,GACd,OAAOX,KAAKL,aAAaiB,cAAcD,KAzB3C,6BA4BE,SAAgBE,GACd,IAD8BC,EAC1BC,GAAO,EADmBjB,UAEjBe,GAFiB,IAE9B,2BACyB,cADJC,QACdE,gBACHD,GAAO,SAJmBE,0BAO9B,OAAOF,IAnCX,uBAsCE,SAAUG,GAAW,WAEbC,EAAYnB,KAAKJ,OAAOwB,KAAKF,EAAa,CAC9CG,SAAU,MACVC,SAAU,QAEZtB,KAAKS,iBAAiBc,MAAMC,OAAS,OAErCL,EAAUM,cAAcvB,UAAU,YAChCwB,EAAKjB,iBAAiBc,MAAMC,OAAS,WA/C3CG,GAAkDC,kDAArClC,GAA4BF,8DAA5BE,EAA4BmC,uuCDbzCrC,iBACEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,uBAKFA,QAEAA,YACEA,uBACAA,uBAUFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBAGFA,QAEAA,aACEA,uBACAA,uBAcFA,QAGAA,wBACAA,wBACFA,QACFA,eArEmBA,0CAkEKA,sDACaA,0LCvDxBE,EAAb,+DCmBaoC,GAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsCvC,GACtCwC,KACAC,KACAC,MACAC,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,SAISb,EAAb","names":["i0","ctx_r35","SubstancePropertiesComponent","utilsService","dialog","overlayContainerService","s","Subject","this","substanceUpdated","subscribe","r","substance","properties","countUpdate","emit","length","overlayContainer","getContainerElement","amount","displayAmount","access","d","itIs","toLowerCase","se","templateRef","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","u","i","SubstanceCardBase","selectors","SubstancePropertiesModule","v","CommonModule","DynamicComponentLoaderModule","MatTableModule","MatIconModule","CdkTableModule","MatPaginatorModule","MatInputModule","RouterModule","SubstanceImageModule","ReferencesManagerModule","MatDialogModule","MatTooltipModule"],"sources":["./src/app/core/substance-details/substance-properties/substance-properties.component.html","./src/app/core/substance-details/substance-properties/substance-properties.component.ts","./src/app/core/substance-details/substance-properties/substance-properties.module.ts"],"sourcesContent":["
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n
Name {{property.name}} Property Type {{property.propertyType}} Amount {{toString(property.value)}} \r\n \r\n \r\n \r\n Referenced Substance
\r\n
{{property.referencedSubstance.linkingID}}
\r\n \r\n \r\n
\r\n
Defining {{property.defining}} Parameters \r\n
{{parameter.name}}
{{parameter.type}}
{{toString(parameter.value)}}
\r\n
References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceAmount, SubstanceDetail, SubstanceProperty} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\nimport { UtilsService } from '@gsrs-core/utils';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { MatDialog } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-substance-properties',\r\n templateUrl: './substance-properties.component.html',\r\n styleUrls: ['./substance-properties.component.scss']\r\n})\r\nexport class SubstancePropertiesComponent extends SubstanceCardBase implements OnInit {\r\n properties: Array = [];\r\n displayedColumns: string[] = ['name', 'property type', 'amount', 'referenced substance', 'defining', 'parameters', 'references'];\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n constructor(\r\n private utilsService: UtilsService,\r\n private dialog: MatDialog,\r\n private overlayContainerService: OverlayContainer,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.properties != null) {\r\n this.properties = this.substance.properties;\r\n }\r\n this.countUpdate.emit(this.properties.length);\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n public toString(amount: SubstanceAmount) {\r\n return this.utilsService.displayAmount(amount);\r\n }\r\n\r\n codeIsProtected(access: string[]) {\r\n let itIs = false;\r\n for(let a of access) {\r\n if(a.toLowerCase() === 'protected') {\r\n itIs = true;\r\n }\r\n }\r\n return itIs;\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {SubstancePropertiesComponent} from './substance-properties.component';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {RouterModule} from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\nimport { ReferencesManagerModule } from '@gsrs-core/references-manager';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstancePropertiesComponent),\r\n MatTableModule,\r\n MatIconModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n RouterModule,\r\n SubstanceImageModule,\r\n ReferencesManagerModule,\r\n MatDialogModule,\r\n MatTooltipModule\r\n ],\r\n declarations: [SubstancePropertiesComponent]\r\n})\r\nexport class SubstancePropertiesModule {\r\n}\r\n"],"sourceRoot":"webpack:///","file":"1105.e84821bf9badcee0.js"} \ No newline at end of file +{"version":3,"mappings":"0ZAIMA,iBAAuCA,kBAAKA,kCAC5CA,iBAAyCA,SAAkBA,gCAAlBA,sDAIzCA,iBAAuCA,2BAAcA,kCACrDA,iBAAyCA,SAA0BA,gCAA1BA,8DAIzCA,iBAAuCA,oBAAOA,8BAG1CA,gDADFA,mBACEA,6BACFA,gDADyDA,mFAF3DA,iBAAyCA,SACvCA,yBAGFA,0CAJyCA,4CAChCA,gFAOTA,iBAAuCA,kCAAqBA,kCAE1DA,kBAAsEA,SAA0CA,uCAA1CA,qHADhCA,kBACtCA,wBACAA,kBACAA,eACEA,gBACAA,SACAA,QACFA,QACFA,sCAPQA,uDACuCA,yDAEjBA,sEAC1BA,6EALJA,iBAAwCA,wBASxCA,gCAT8CA,oEAa9CA,iBAAuCA,sBAASA,kCAChDA,iBAAyCA,SAAsBA,gCAAtBA,0DAIzCA,iBAAuCA,wBAAWA,kCAE9CA,eAAqDA,SAAkBA,cAAIA,SAAkBA,cAAKA,SAA6BA,2CAA1EA,uBAAsBA,uBAAuBA,8DADtGA,iBACIA,wBACJA,gCADiCA,8DAKjCA,iBAAuCA,wBAAWA,kCAK9CA,iBAAqBA,sBAAUA,QAC/BA,kBACEA,qCACFA,QACEA,kBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,gDALwBA,wCAAyB,kEANvDA,iBACEA,qBAA6DA,gEAASC,eAAsED,gBAAIA,QAEhJA,2CAUFA,kCAZiGA,wEAgBnGA,sCACAA,iBCvDG,IAAME,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACAC,EACAC,GAAyC,6BAEjDC,gBAJQH,eACAG,WACAA,4BAPVA,aAAuC,GACvCA,mBAA6B,CAAC,OAAQ,gBAAiB,SAAU,uBAAwB,WAAY,aAAc,cACnHA,mBAAmB,IAAIC,IAK4BD,EARrD,uCAaE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAkD,MAA7BD,EAAKC,UAAUC,aAC3CF,EAAKE,WAAaF,EAAKC,UAAUC,YAEnCF,EAAKG,YAAYC,KAAKJ,EAAKE,WAAWG,UAExCR,KAAKS,iBAAmBT,KAAKH,wBAAwBa,wBArBzD,sBAwBS,SAASC,GACd,OAAOX,KAAKL,aAAaiB,cAAcD,KAzB3C,6BA4BE,SAAgBE,GACd,IAD8BC,EAC1BC,GAAO,EADmBjB,UAEjBe,GAFiB,IAE9B,2BACyB,cADJC,QACdE,gBACHD,GAAO,SAJmBE,0BAO9B,OAAOF,IAnCX,uBAsCE,SAAUG,GAAW,WAEbC,EAAYnB,KAAKJ,OAAOwB,KAAKF,EAAa,CAC9CG,SAAU,MACVC,SAAU,QAEZtB,KAAKS,iBAAiBc,MAAMC,OAAS,OAErCL,EAAUM,cAAcvB,UAAU,YAChCwB,EAAKjB,iBAAiBc,MAAMC,OAAS,WA/C3CG,GAAkDC,kDAArClC,GAA4BF,8DAA5BE,EAA4BmC,uuCDbzCrC,iBACEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,uBAKFA,QAEAA,YACEA,uBACAA,uBAUFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBAGFA,QAEAA,aACEA,uBACAA,uBAcFA,QAGAA,wBACAA,wBACFA,QACFA,eArEmBA,0CAkEKA,sDACaA,0LCvDxBE,EAAb,+DCmBaoC,GAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsCvC,GACtCwC,KACAC,KACAC,MACAC,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,SAISb,EAAb","names":["i0","ctx_r35","SubstancePropertiesComponent","utilsService","dialog","overlayContainerService","s","Subject","this","substanceUpdated","subscribe","r","substance","properties","countUpdate","emit","length","overlayContainer","getContainerElement","amount","displayAmount","access","d","itIs","toLowerCase","se","templateRef","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","u","i","SubstanceCardBase","selectors","SubstancePropertiesModule","v","CommonModule","DynamicComponentLoaderModule","MatTableModule","MatIconModule","CdkTableModule","MatPaginatorModule","MatInputModule","RouterModule","SubstanceImageModule","ReferencesManagerModule","MatDialogModule","MatTooltipModule"],"sources":["./src/app/core/substance-details/substance-properties/substance-properties.component.html","./src/app/core/substance-details/substance-properties/substance-properties.component.ts","./src/app/core/substance-details/substance-properties/substance-properties.module.ts"],"sourcesContent":["
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n
Name {{property.name}} Property Type {{property.propertyType}} Amount {{toString(property.value)}} \r\n \r\n \r\n \r\n Referenced Substance
\r\n
{{property.referencedSubstance.linkingID}}
\r\n \r\n \r\n
\r\n
Defining {{property.defining}} Parameters \r\n
{{parameter.name}}
{{parameter.type}}
{{toString(parameter.value)}}
\r\n
References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceAmount, SubstanceDetail, SubstanceProperty} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\nimport { UtilsService } from '@gsrs-core/utils';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { MatDialog } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-substance-properties',\r\n templateUrl: './substance-properties.component.html',\r\n styleUrls: ['./substance-properties.component.scss']\r\n})\r\nexport class SubstancePropertiesComponent extends SubstanceCardBase implements OnInit {\r\n properties: Array = [];\r\n displayedColumns: string[] = ['name', 'property type', 'amount', 'referenced substance', 'defining', 'parameters', 'references'];\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n constructor(\r\n private utilsService: UtilsService,\r\n private dialog: MatDialog,\r\n private overlayContainerService: OverlayContainer,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.properties != null) {\r\n this.properties = this.substance.properties;\r\n }\r\n this.countUpdate.emit(this.properties.length);\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n public toString(amount: SubstanceAmount) {\r\n return this.utilsService.displayAmount(amount);\r\n }\r\n\r\n codeIsProtected(access: string[]) {\r\n let itIs = false;\r\n for(let a of access) {\r\n if(a.toLowerCase() === 'protected') {\r\n itIs = true;\r\n }\r\n }\r\n return itIs;\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {SubstancePropertiesComponent} from './substance-properties.component';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {RouterModule} from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\nimport { ReferencesManagerModule } from '@gsrs-core/references-manager';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstancePropertiesComponent),\r\n MatTableModule,\r\n MatIconModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n RouterModule,\r\n SubstanceImageModule,\r\n ReferencesManagerModule,\r\n MatDialogModule,\r\n MatTooltipModule\r\n ],\r\n declarations: [SubstancePropertiesComponent]\r\n})\r\nexport class SubstancePropertiesModule {\r\n}\r\n"],"sourceRoot":"webpack:///","file":"1105.b953ab3b8f9961b3.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1282.833bd7d9862e8a5e.js b/frontend/src/main/resources/static/1282.dea360198e8ee3cf.js similarity index 66% rename from frontend/src/main/resources/static/1282.833bd7d9862e8a5e.js rename to frontend/src/main/resources/static/1282.dea360198e8ee3cf.js index d9e3d3c..f5317ca 100644 --- a/frontend/src/main/resources/static/1282.833bd7d9862e8a5e.js +++ b/frontend/src/main/resources/static/1282.dea360198e8ee3cf.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1282],{61282:function(z,m,i){i.r(m),i.d(m,{SubstanceMoietiesModule:function(){return I}});var v=i(48047),f=i(78069),g=i(36362),x=i(24582),p=i(7318),C=i(2756),h=i(52149),M=i(50253),Z=i(69093),y=i(53141),e=i(76442),A=i(66088),O=i(95758),T=i(9292);function S(n,c){if(1&n&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.qZA(),e.qZA()),2&n){var o=e.oxw().$implicit;e.xp6(2),e.Oqu(o.countAmount.type),e.xp6(2),e.AsE("",o.countAmount.average,"\xa0",o.countAmount.units,"\xa0(average)")}}function b(n,c){if(1&n){var o=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"a",3),e.NdJ("click",function(){var l=e.CHM(o).$implicit;return e.oxw().openImageModal(l)}),e._UZ(3,"img",4),e.qZA(),e.qZA(),e.TgZ(4,"div",5),e.TgZ(5,"div",6),e.TgZ(6,"div",7),e.TgZ(7,"div",8),e._uU(8,"Molecular Formula:"),e.qZA(),e._UZ(9,"div",9),e.qZA(),e.TgZ(10,"div",7),e.TgZ(11,"div",8),e._uU(12,"Molecular Weight:"),e.qZA(),e.TgZ(13,"div",10),e._uU(14),e.ALo(15,"number"),e.qZA(),e.qZA(),e.TgZ(16,"div",7),e.TgZ(17,"div",8),e._uU(18,"Charge:"),e.qZA(),e.TgZ(19,"div",10),e._uU(20),e.qZA(),e.qZA(),e.TgZ(21,"div",7),e.TgZ(22,"div",8),e._uU(23,"Count:"),e.qZA(),e.TgZ(24,"div",10),e.YNc(25,S,5,3,"div",11),e.qZA(),e.qZA(),e.qZA(),e.TgZ(26,"div",6),e.TgZ(27,"div",7),e.TgZ(28,"div",8),e._uU(29,"Stereochemistry:"),e.qZA(),e.TgZ(30,"div",10),e._uU(31),e.qZA(),e.qZA(),e.TgZ(32,"div",7),e.TgZ(33,"div",8),e._uU(34,"Additional Stereochemistry:"),e.qZA(),e.TgZ(35,"div",10),e._uU(36),e.qZA(),e.qZA(),e.TgZ(37,"div",7),e.TgZ(38,"div",8),e._uU(39,"Defined Stereocenters:"),e.qZA(),e.TgZ(40,"div",10),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",7),e.TgZ(43,"div",8),e._uU(44,"E/Z Centers:"),e.qZA(),e.TgZ(45,"div",10),e._uU(46),e.qZA(),e.qZA(),e.TgZ(47,"div",7),e.TgZ(48,"div",8),e._uU(49,"Optical Activity:"),e.qZA(),e.TgZ(50,"div",10),e._uU(51),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=c.$implicit,u=e.oxw();e.xp6(3),e.Q6J("entityId",t.uuid),e.xp6(6),e.Q6J("innerHTML",t.formula,e.oJD),e.xp6(5),e.Oqu(e.xi3(15,11,t.mwt,u.rounding)),e.xp6(6),e.Oqu(t.charge),e.xp6(5),e.Q6J("ngIf",t.countAmount),e.xp6(6),e.Oqu(t.stereochemistry),e.xp6(5),e.Oqu(t.atropisomerism),e.xp6(5),e.AsE("",t.stereoCenters,"/",t.definedStereo,""),e.xp6(5),e.Oqu(t.ezCenters),e.xp6(5),e.Oqu(t.opticalActivity)}}var P=function(){var n=function(c){(0,x.Z)(t,c);var o=(0,p.Z)(t);function t(u,s,r,l,d){var a;return(0,f.Z)(this,t),(a=o.call(this)).utilService=u,a.overlayContainerService=s,a.structureService=r,a.dialog=l,a.configService=d,a.moieties=[],a.substanceUpdated=new M.x,a.rounding="1.0-2",a}return(0,v.Z)(t,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(r){s.substance=r,null!=s.substance&&null!=s.substance.moieties&&(s.moieties=JSON.parse(JSON.stringify(s.substance.moieties)),s.moieties.forEach(function(l){l.formula=s.structureService.formatFormula(l)})),s.countUpdate.emit(s.moieties.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.configService.configData&&this.configService.configData.molWeightRounding&&(this.rounding="1.0-"+this.configService.configData.molWeightRounding)}},{key:"openImageModal",value:function(s){var r=this,l=this.dialog.open(Z.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:s.uuid}});this.overlayContainer.style.zIndex="1002";var d=l.afterClosed().subscribe(function(){r.overlayContainer.style.zIndex=null,d.unsubscribe()},function(){r.overlayContainer.style.zIndex=null,d.unsubscribe()})}}]),t}(C.B);return n.\u0275fac=function(o){return new(o||n)(e.Y36(h.F),e.Y36(A.Xj),e.Y36(Z.De),e.Y36(O.uw),e.Y36(y.E))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-moieties"]],features:[e.qOj],decls:1,vars:1,consts:[["class","moiety",4,"ngFor","ngForOf"],[1,"moiety"],[1,"moiety-image"],["tabindex","0","role","link",1,"zoom",3,"click"],["appSubstanceImage","","stereo","true",1,"structure-image",3,"entityId"],[1,"moiety-details-container"],[1,"moiety-details"],[1,"name-value"],[1,"name"],[1,"value",3,"innerHTML"],[1,"value"],[4,"ngIf"]],template:function(o,t){1&o&&e.YNc(0,b,52,14,"div",0),2&o&&e.Q6J("ngForOf",t.moieties)},directives:[g.sg,T.m,g.O5],pipes:[g.JJ],styles:[".structure-image[_ngcontent-%COMP%]{width:100%;height:auto}.moiety[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding:20px 0;-ms-flex-align:center;align-items:center}.moiety[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.moiety-image[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:33.333333%;flex-basis:33.333333%;-ms-flex-negative:0;flex-shrink:0}.moiety-details-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-positive:2;flex-grow:2;-ms-flex-preferred-size:66.6%;flex-basis:66.6%;-ms-flex-negative:0;flex-shrink:0}.moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:50%;flex-basis:50%;-ms-flex-negative:0;flex-shrink:0}.moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]:first-child{padding-right:5px}.moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]:last-child{padding-left:5px}@media (max-width: 900px){.moiety[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.moiety[_ngcontent-%COMP%] .moiety-image[_ngcontent-%COMP%]{width:100%}.moiety[_ngcontent-%COMP%] .moiety-image[_ngcontent-%COMP%]{-ms-flex-order:2;order:2;text-align:center}.moiety[_ngcontent-%COMP%] .moiety-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:400px}.moiety[_ngcontent-%COMP%] .moiety-details-container[_ngcontent-%COMP%]{-ms-flex-order:1;order:1;width:100%}}@media (max-width: 615px){.moiety[_ngcontent-%COMP%] .moiety-details-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.moiety[_ngcontent-%COMP%] .moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]:first-child{margin-bottom:20px}}"]}),n}(),q=i(64061),U=i(24054),I=function(){var n=(0,v.Z)(function c(){(0,f.Z)(this,c)});return n.\u0275fac=function(o){return new(o||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[g.ez,q.o.forChild(P),U.f]]}),n}()}}]); -//# sourceMappingURL=1282.833bd7d9862e8a5e.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1282],{61282:function(z,m,i){i.r(m),i.d(m,{SubstanceMoietiesModule:function(){return I}});var v=i(1884),f=i(39117),g=i(36362),x=i(46751),p=i(56101),C=i(2756),h=i(52149),M=i(50253),Z=i(69093),y=i(53141),e=i(86613),A=i(54244),O=i(95758),T=i(9292);function S(n,c){if(1&n&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.qZA(),e.qZA()),2&n){var o=e.oxw().$implicit;e.xp6(2),e.Oqu(o.countAmount.type),e.xp6(2),e.AsE("",o.countAmount.average,"\xa0",o.countAmount.units,"\xa0(average)")}}function b(n,c){if(1&n){var o=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"a",3),e.NdJ("click",function(){var l=e.CHM(o).$implicit;return e.oxw().openImageModal(l)}),e._UZ(3,"img",4),e.qZA(),e.qZA(),e.TgZ(4,"div",5),e.TgZ(5,"div",6),e.TgZ(6,"div",7),e.TgZ(7,"div",8),e._uU(8,"Molecular Formula:"),e.qZA(),e._UZ(9,"div",9),e.qZA(),e.TgZ(10,"div",7),e.TgZ(11,"div",8),e._uU(12,"Molecular Weight:"),e.qZA(),e.TgZ(13,"div",10),e._uU(14),e.ALo(15,"number"),e.qZA(),e.qZA(),e.TgZ(16,"div",7),e.TgZ(17,"div",8),e._uU(18,"Charge:"),e.qZA(),e.TgZ(19,"div",10),e._uU(20),e.qZA(),e.qZA(),e.TgZ(21,"div",7),e.TgZ(22,"div",8),e._uU(23,"Count:"),e.qZA(),e.TgZ(24,"div",10),e.YNc(25,S,5,3,"div",11),e.qZA(),e.qZA(),e.qZA(),e.TgZ(26,"div",6),e.TgZ(27,"div",7),e.TgZ(28,"div",8),e._uU(29,"Stereochemistry:"),e.qZA(),e.TgZ(30,"div",10),e._uU(31),e.qZA(),e.qZA(),e.TgZ(32,"div",7),e.TgZ(33,"div",8),e._uU(34,"Additional Stereochemistry:"),e.qZA(),e.TgZ(35,"div",10),e._uU(36),e.qZA(),e.qZA(),e.TgZ(37,"div",7),e.TgZ(38,"div",8),e._uU(39,"Defined Stereocenters:"),e.qZA(),e.TgZ(40,"div",10),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",7),e.TgZ(43,"div",8),e._uU(44,"E/Z Centers:"),e.qZA(),e.TgZ(45,"div",10),e._uU(46),e.qZA(),e.qZA(),e.TgZ(47,"div",7),e.TgZ(48,"div",8),e._uU(49,"Optical Activity:"),e.qZA(),e.TgZ(50,"div",10),e._uU(51),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=c.$implicit,u=e.oxw();e.xp6(3),e.Q6J("entityId",t.uuid),e.xp6(6),e.Q6J("innerHTML",t.formula,e.oJD),e.xp6(5),e.Oqu(e.xi3(15,11,t.mwt,u.rounding)),e.xp6(6),e.Oqu(t.charge),e.xp6(5),e.Q6J("ngIf",t.countAmount),e.xp6(6),e.Oqu(t.stereochemistry),e.xp6(5),e.Oqu(t.atropisomerism),e.xp6(5),e.AsE("",t.stereoCenters,"/",t.definedStereo,""),e.xp6(5),e.Oqu(t.ezCenters),e.xp6(5),e.Oqu(t.opticalActivity)}}var P=function(){var n=function(c){(0,x.Z)(t,c);var o=(0,p.Z)(t);function t(u,s,r,l,d){var a;return(0,f.Z)(this,t),(a=o.call(this)).utilService=u,a.overlayContainerService=s,a.structureService=r,a.dialog=l,a.configService=d,a.moieties=[],a.substanceUpdated=new M.x,a.rounding="1.0-2",a}return(0,v.Z)(t,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(r){s.substance=r,null!=s.substance&&null!=s.substance.moieties&&(s.moieties=JSON.parse(JSON.stringify(s.substance.moieties)),s.moieties.forEach(function(l){l.formula=s.structureService.formatFormula(l)})),s.countUpdate.emit(s.moieties.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.configService.configData&&this.configService.configData.molWeightRounding&&(this.rounding="1.0-"+this.configService.configData.molWeightRounding)}},{key:"openImageModal",value:function(s){var r=this,l=this.dialog.open(Z.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:s.uuid}});this.overlayContainer.style.zIndex="1002";var d=l.afterClosed().subscribe(function(){r.overlayContainer.style.zIndex=null,d.unsubscribe()},function(){r.overlayContainer.style.zIndex=null,d.unsubscribe()})}}]),t}(C.B);return n.\u0275fac=function(o){return new(o||n)(e.Y36(h.F),e.Y36(A.Xj),e.Y36(Z.De),e.Y36(O.uw),e.Y36(y.E))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-moieties"]],features:[e.qOj],decls:1,vars:1,consts:[["class","moiety",4,"ngFor","ngForOf"],[1,"moiety"],[1,"moiety-image"],["tabindex","0","role","link",1,"zoom",3,"click"],["appSubstanceImage","","stereo","true",1,"structure-image",3,"entityId"],[1,"moiety-details-container"],[1,"moiety-details"],[1,"name-value"],[1,"name"],[1,"value",3,"innerHTML"],[1,"value"],[4,"ngIf"]],template:function(o,t){1&o&&e.YNc(0,b,52,14,"div",0),2&o&&e.Q6J("ngForOf",t.moieties)},directives:[g.sg,T.m,g.O5],pipes:[g.JJ],styles:[".structure-image[_ngcontent-%COMP%]{width:100%;height:auto}.moiety[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding:20px 0;-ms-flex-align:center;align-items:center}.moiety[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.moiety-image[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:33.333333%;flex-basis:33.333333%;-ms-flex-negative:0;flex-shrink:0}.moiety-details-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-positive:2;flex-grow:2;-ms-flex-preferred-size:66.6%;flex-basis:66.6%;-ms-flex-negative:0;flex-shrink:0}.moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:50%;flex-basis:50%;-ms-flex-negative:0;flex-shrink:0}.moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]:first-child{padding-right:5px}.moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]:last-child{padding-left:5px}@media (max-width: 900px){.moiety[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.moiety[_ngcontent-%COMP%] .moiety-image[_ngcontent-%COMP%]{width:100%}.moiety[_ngcontent-%COMP%] .moiety-image[_ngcontent-%COMP%]{-ms-flex-order:2;order:2;text-align:center}.moiety[_ngcontent-%COMP%] .moiety-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:400px}.moiety[_ngcontent-%COMP%] .moiety-details-container[_ngcontent-%COMP%]{-ms-flex-order:1;order:1;width:100%}}@media (max-width: 615px){.moiety[_ngcontent-%COMP%] .moiety-details-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.moiety[_ngcontent-%COMP%] .moiety-details-container[_ngcontent-%COMP%] .moiety-details[_ngcontent-%COMP%]:first-child{margin-bottom:20px}}"]}),n}(),q=i(64061),U=i(24054),I=function(){var n=(0,v.Z)(function c(){(0,f.Z)(this,c)});return n.\u0275fac=function(o){return new(o||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[g.ez,q.o.forChild(P),U.f]]}),n}()}}]); +//# sourceMappingURL=1282.dea360198e8ee3cf.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1282.833bd7d9862e8a5e.js.map b/frontend/src/main/resources/static/1282.dea360198e8ee3cf.js.map similarity index 98% rename from frontend/src/main/resources/static/1282.833bd7d9862e8a5e.js.map rename to frontend/src/main/resources/static/1282.dea360198e8ee3cf.js.map index b923b06..3019fcb 100644 --- a/frontend/src/main/resources/static/1282.833bd7d9862e8a5e.js.map +++ b/frontend/src/main/resources/static/1282.dea360198e8ee3cf.js.map @@ -1 +1 @@ -{"version":3,"mappings":"kWAuBUA,eACEA,eAAKA,SAA2BA,QAChCA,eAAKA,SAA+EA,QACtFA,sCAFOA,mCACAA,2HAzBjBA,iBACEA,iBACIA,eAAyCA,iEAASC,oBACpDD,iBACAA,QACFA,QACAA,iBACEA,iBACEA,iBACEA,iBAAkBA,8BAAkBA,QACpCA,iBACFA,QACAA,kBACEA,kBAAkBA,8BAAiBA,QACnCA,mBAAmBA,6BAAiCA,QACtDA,QACAA,kBACEA,kBAAkBA,oBAAOA,QACzBA,mBAAmBA,UAAiBA,QACtCA,QACAA,kBACEA,kBAAkBA,mBAAMA,QACxBA,mBACEA,yBAIFA,QACFA,QACFA,QACAA,kBACEA,kBACEA,kBAAkBA,6BAAgBA,QAClCA,mBAAmBA,UAA0BA,QAC/CA,QACAA,kBACEA,kBAAkBA,wCAA2BA,QAC7CA,mBAAmBA,UAAyBA,QAC9CA,QACAA,kBACEA,kBAAkBA,mCAAsBA,QACxCA,mBAAmBA,UAAiDA,QACtEA,QACAA,kBACEA,kBAAkBA,yBAAYA,QAC9BA,mBAAmBA,UAAoBA,QACzCA,QACAA,kBACEA,kBAAkBA,8BAAiBA,QACnCA,mBAAmBA,UAA0BA,QAC/CA,QACFA,QACFA,QACFA,4CAlDmDA,kCAOxBA,4CAIAA,8CAIAA,yBAKXA,qCAUWA,kCAIAA,iCAIAA,0DAIAA,4BAIAA,mCCjCpB,IAAME,EAAb,eAAaA,EAAb,0CAME,WACoBC,EACAC,EACAC,EACAC,EACAC,GAA4B,6BAE9CC,gBANkBL,cACAK,4BACAA,qBACAA,WACAA,kBAVpBA,WAAmC,GACnCA,mBAAmB,IAAIC,IAEvBD,WAAW,QAOqCA,EAXlD,uCAgBE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAgD,MAA3BD,EAAKC,UAAUC,WAC3CF,EAAKE,SAAWC,KAAKC,MAAMD,KAAKE,UAAUL,EAAKC,UAAUC,WACzDF,EAAKE,SAASI,QAAS,YACrBC,EAAKC,QAAUR,EAAKR,iBAAiBiB,cAAcF,MAIvDP,EAAKU,YAAYC,KAAKX,EAAKE,SAASU,UAEtCf,KAAKgB,iBAAmBhB,KAAKN,wBAAwBuB,sBAEjDjB,KAAKH,cAAcqB,YAAclB,KAAKH,cAAcqB,WAAWC,oBACjEnB,KAAKoB,SAAW,OAASpB,KAAKH,cAAcqB,WAAWC,qBA/B7D,4BAmCE,SAAef,GAAS,WAClBiB,EAAYrB,KAAKJ,OAAO0B,KAAKC,KAA8B,CAC/DC,OAAQ,MACRC,MAAO,QACPC,WAAY,wBACZC,KAAM,CAACC,UAAWxB,EAAUyB,QAG9B7B,KAAKgB,iBAAiBc,MAAMC,OAAS,OAErC,IAAMC,EAAeX,EAAUY,cAAc/B,UAAU,WACrDgC,EAAKlB,iBAAiBc,MAAMC,OAAS,KACrCC,EAAaG,eACZ,WACDD,EAAKlB,iBAAiBc,MAAMC,OAAS,KACrCC,EAAaG,oBAlDjBC,GAAgDC,kDAAnC7C,GAA0BF,oFAA1BE,EAA0B8C,gbDhBvChD,8BAAuCA,k+DCgB1BE,EAAb,yBCFa+C,EAAb,eAAaA,KAAbC,iFAAaD,4DAPF,CACPE,KACAC,aAAsClD,GACtCmD,QAISJ,EAAb","names":["i0","ctx_r4","SubstanceMoietiesComponent","utilService","overlayContainerService","structureService","dialog","configService","a","Subject","this","substanceUpdated","subscribe","s","substance","moieties","JSON","parse","stringify","forEach","unit","formula","formatFormula","countUpdate","emit","length","overlayContainer","getContainerElement","configData","molWeightRounding","rounding","dialogRef","open","StructureImageModalComponent","height","width","panelClass","data","structure","uuid","style","zIndex","subscription","afterClosed","r","unsubscribe","t","SubstanceCardBase","selectors","SubstanceMoietiesModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-moieties/substance-moieties.component.html","./src/app/core/substance-details/substance-moieties/substance-moieties.component.ts","./src/app/core/substance-details/substance-moieties/substance-moieties.module.ts"],"sourcesContent":["
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
Molecular Formula:
\r\n
\r\n
\r\n
\r\n
Molecular Weight:
\r\n
{{moiety.mwt | number: rounding}}
\r\n
\r\n
\r\n
Charge:
\r\n
{{moiety.charge}}
\r\n
\r\n
\r\n
Count:
\r\n
\r\n
\r\n
{{moiety.countAmount.type}}
\r\n
{{moiety.countAmount.average}} {{moiety.countAmount.units}} (average)
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Stereochemistry:
\r\n
{{moiety.stereochemistry}}
\r\n
\r\n
\r\n
Additional Stereochemistry:
\r\n
{{moiety.atropisomerism}}
\r\n
\r\n
\r\n
Defined Stereocenters:
\r\n
{{moiety.stereoCenters}}/{{moiety.definedStereo}}
\r\n
\r\n
\r\n
E/Z Centers:
\r\n
{{moiety.ezCenters}}
\r\n
\r\n
\r\n
Optical Activity:
\r\n
{{moiety.opticalActivity}}
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceMoiety} from '../../substance/substance.model';\r\nimport { SafeUrl } from '@angular/platform-browser';\r\nimport {UtilsService} from '../../utils/utils.service';\r\nimport {Subject} from 'rxjs';\r\nimport { StructureImageModalComponent, StructureService } from '@gsrs-core/structure';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfigService } from '@gsrs-core/config';\r\n\r\n@Component({\r\n selector: 'app-substance-moieties',\r\n templateUrl: './substance-moieties.component.html',\r\n styleUrls: ['./substance-moieties.component.scss']\r\n})\r\nexport class SubstanceMoietiesComponent extends SubstanceCardBase implements OnInit {\r\n moieties: Array = [];\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n rounding = '1.0-2';\r\n\r\n constructor(\r\n private utilService: UtilsService,\r\n private overlayContainerService: OverlayContainer,\r\n private structureService: StructureService,\r\n private dialog: MatDialog,\r\n private configService: ConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.moieties != null) {\r\n this.moieties = JSON.parse(JSON.stringify(this.substance.moieties));\r\n this.moieties.forEach( unit => {\r\n unit.formula = this.structureService.formatFormula(unit);\r\n\r\n });\r\n }\r\n this.countUpdate.emit(this.moieties.length);\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n\r\n if (this.configService.configData && this.configService.configData.molWeightRounding) {\r\n this.rounding = '1.0-' + this.configService.configData.molWeightRounding;\r\n }\r\n\r\n }\r\n openImageModal(substance) {\r\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\r\n height: '90%',\r\n width: '650px',\r\n panelClass: 'structure-image-panel',\r\n data: {structure: substance.uuid}\r\n });\r\n\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n const subscription = dialogRef.afterClosed().subscribe(() => {\r\n this.overlayContainer.style.zIndex = null;\r\n subscription.unsubscribe();\r\n }, () => {\r\n this.overlayContainer.style.zIndex = null;\r\n subscription.unsubscribe();\r\n });\r\n\r\n}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceMoietiesComponent } from './substance-moieties.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMoietiesComponent),\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceMoietiesComponent]\r\n})\r\nexport class SubstanceMoietiesModule { }\r\n"],"sourceRoot":"webpack:///","file":"1282.833bd7d9862e8a5e.js"} \ No newline at end of file +{"version":3,"mappings":"kWAuBUA,eACEA,eAAKA,SAA2BA,QAChCA,eAAKA,SAA+EA,QACtFA,sCAFOA,mCACAA,2HAzBjBA,iBACEA,iBACIA,eAAyCA,iEAASC,oBACpDD,iBACAA,QACFA,QACAA,iBACEA,iBACEA,iBACEA,iBAAkBA,8BAAkBA,QACpCA,iBACFA,QACAA,kBACEA,kBAAkBA,8BAAiBA,QACnCA,mBAAmBA,6BAAiCA,QACtDA,QACAA,kBACEA,kBAAkBA,oBAAOA,QACzBA,mBAAmBA,UAAiBA,QACtCA,QACAA,kBACEA,kBAAkBA,mBAAMA,QACxBA,mBACEA,yBAIFA,QACFA,QACFA,QACAA,kBACEA,kBACEA,kBAAkBA,6BAAgBA,QAClCA,mBAAmBA,UAA0BA,QAC/CA,QACAA,kBACEA,kBAAkBA,wCAA2BA,QAC7CA,mBAAmBA,UAAyBA,QAC9CA,QACAA,kBACEA,kBAAkBA,mCAAsBA,QACxCA,mBAAmBA,UAAiDA,QACtEA,QACAA,kBACEA,kBAAkBA,yBAAYA,QAC9BA,mBAAmBA,UAAoBA,QACzCA,QACAA,kBACEA,kBAAkBA,8BAAiBA,QACnCA,mBAAmBA,UAA0BA,QAC/CA,QACFA,QACFA,QACFA,4CAlDmDA,kCAOxBA,4CAIAA,8CAIAA,yBAKXA,qCAUWA,kCAIAA,iCAIAA,0DAIAA,4BAIAA,mCCjCpB,IAAME,EAAb,eAAaA,EAAb,0CAME,WACoBC,EACAC,EACAC,EACAC,EACAC,GAA4B,6BAE9CC,gBANkBL,cACAK,4BACAA,qBACAA,WACAA,kBAVpBA,WAAmC,GACnCA,mBAAmB,IAAIC,IAEvBD,WAAW,QAOqCA,EAXlD,uCAgBE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAgD,MAA3BD,EAAKC,UAAUC,WAC3CF,EAAKE,SAAWC,KAAKC,MAAMD,KAAKE,UAAUL,EAAKC,UAAUC,WACzDF,EAAKE,SAASI,QAAS,YACrBC,EAAKC,QAAUR,EAAKR,iBAAiBiB,cAAcF,MAIvDP,EAAKU,YAAYC,KAAKX,EAAKE,SAASU,UAEtCf,KAAKgB,iBAAmBhB,KAAKN,wBAAwBuB,sBAEjDjB,KAAKH,cAAcqB,YAAclB,KAAKH,cAAcqB,WAAWC,oBACjEnB,KAAKoB,SAAW,OAASpB,KAAKH,cAAcqB,WAAWC,qBA/B7D,4BAmCE,SAAef,GAAS,WAClBiB,EAAYrB,KAAKJ,OAAO0B,KAAKC,KAA8B,CAC/DC,OAAQ,MACRC,MAAO,QACPC,WAAY,wBACZC,KAAM,CAACC,UAAWxB,EAAUyB,QAG9B7B,KAAKgB,iBAAiBc,MAAMC,OAAS,OAErC,IAAMC,EAAeX,EAAUY,cAAc/B,UAAU,WACrDgC,EAAKlB,iBAAiBc,MAAMC,OAAS,KACrCC,EAAaG,eACZ,WACDD,EAAKlB,iBAAiBc,MAAMC,OAAS,KACrCC,EAAaG,oBAlDjBC,GAAgDC,kDAAnC7C,GAA0BF,oFAA1BE,EAA0B8C,gbDhBvChD,8BAAuCA,4+DCgB1BE,EAAb,yBCFa+C,EAAb,eAAaA,KAAbC,iFAAaD,4DAPF,CACPE,KACAC,aAAsClD,GACtCmD,QAISJ,EAAb","names":["i0","ctx_r4","SubstanceMoietiesComponent","utilService","overlayContainerService","structureService","dialog","configService","a","Subject","this","substanceUpdated","subscribe","s","substance","moieties","JSON","parse","stringify","forEach","unit","formula","formatFormula","countUpdate","emit","length","overlayContainer","getContainerElement","configData","molWeightRounding","rounding","dialogRef","open","StructureImageModalComponent","height","width","panelClass","data","structure","uuid","style","zIndex","subscription","afterClosed","r","unsubscribe","t","SubstanceCardBase","selectors","SubstanceMoietiesModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-moieties/substance-moieties.component.html","./src/app/core/substance-details/substance-moieties/substance-moieties.component.ts","./src/app/core/substance-details/substance-moieties/substance-moieties.module.ts"],"sourcesContent":["
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
Molecular Formula:
\r\n
\r\n
\r\n
\r\n
Molecular Weight:
\r\n
{{moiety.mwt | number: rounding}}
\r\n
\r\n
\r\n
Charge:
\r\n
{{moiety.charge}}
\r\n
\r\n
\r\n
Count:
\r\n
\r\n
\r\n
{{moiety.countAmount.type}}
\r\n
{{moiety.countAmount.average}} {{moiety.countAmount.units}} (average)
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Stereochemistry:
\r\n
{{moiety.stereochemistry}}
\r\n
\r\n
\r\n
Additional Stereochemistry:
\r\n
{{moiety.atropisomerism}}
\r\n
\r\n
\r\n
Defined Stereocenters:
\r\n
{{moiety.stereoCenters}}/{{moiety.definedStereo}}
\r\n
\r\n
\r\n
E/Z Centers:
\r\n
{{moiety.ezCenters}}
\r\n
\r\n
\r\n
Optical Activity:
\r\n
{{moiety.opticalActivity}}
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceMoiety} from '../../substance/substance.model';\r\nimport { SafeUrl } from '@angular/platform-browser';\r\nimport {UtilsService} from '../../utils/utils.service';\r\nimport {Subject} from 'rxjs';\r\nimport { StructureImageModalComponent, StructureService } from '@gsrs-core/structure';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfigService } from '@gsrs-core/config';\r\n\r\n@Component({\r\n selector: 'app-substance-moieties',\r\n templateUrl: './substance-moieties.component.html',\r\n styleUrls: ['./substance-moieties.component.scss']\r\n})\r\nexport class SubstanceMoietiesComponent extends SubstanceCardBase implements OnInit {\r\n moieties: Array = [];\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n rounding = '1.0-2';\r\n\r\n constructor(\r\n private utilService: UtilsService,\r\n private overlayContainerService: OverlayContainer,\r\n private structureService: StructureService,\r\n private dialog: MatDialog,\r\n private configService: ConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.moieties != null) {\r\n this.moieties = JSON.parse(JSON.stringify(this.substance.moieties));\r\n this.moieties.forEach( unit => {\r\n unit.formula = this.structureService.formatFormula(unit);\r\n\r\n });\r\n }\r\n this.countUpdate.emit(this.moieties.length);\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n\r\n if (this.configService.configData && this.configService.configData.molWeightRounding) {\r\n this.rounding = '1.0-' + this.configService.configData.molWeightRounding;\r\n }\r\n\r\n }\r\n openImageModal(substance) {\r\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\r\n height: '90%',\r\n width: '650px',\r\n panelClass: 'structure-image-panel',\r\n data: {structure: substance.uuid}\r\n });\r\n\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n const subscription = dialogRef.afterClosed().subscribe(() => {\r\n this.overlayContainer.style.zIndex = null;\r\n subscription.unsubscribe();\r\n }, () => {\r\n this.overlayContainer.style.zIndex = null;\r\n subscription.unsubscribe();\r\n });\r\n\r\n}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceMoietiesComponent } from './substance-moieties.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMoietiesComponent),\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceMoietiesComponent]\r\n})\r\nexport class SubstanceMoietiesModule { }\r\n"],"sourceRoot":"webpack:///","file":"1282.dea360198e8ee3cf.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1368.347aa89af390da16.js b/frontend/src/main/resources/static/1368.97552da2304596e6.js similarity index 92% rename from frontend/src/main/resources/static/1368.347aa89af390da16.js rename to frontend/src/main/resources/static/1368.97552da2304596e6.js index 687096f..bd9ccad 100644 --- a/frontend/src/main/resources/static/1368.347aa89af390da16.js +++ b/frontend/src/main/resources/static/1368.97552da2304596e6.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1368],{81368:function(M,u,a){a.r(u),a.d(u,{SsgGradeFormModule:function(){return O}});var m=a(48047),p=a(78069),g=a(36362),l=a(24582),v=a(7318),f=a(33567),S=a(40104),h=a(18291),G=a(79223),e=a(76442),C=a(16667),y=a(84577),Z=a(48302);function F(t,d){if(1&t){var r=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"app-cv-input",3),e.NdJ("valueChange",function(n){return e.CHM(r),e.oxw().updateGradeName(n)}),e.qZA(),e.TgZ(3,"app-cv-input",4),e.NdJ("valueChange",function(n){return e.CHM(r),e.oxw().updateGradeType(n)}),e.qZA(),e.TgZ(4,"app-access-manager",5),e.NdJ("accessOut",function(n){return e.CHM(r),e.oxw().updateAccess(n)}),e.qZA(),e.qZA(),e.TgZ(5,"div",2),e.TgZ(6,"div",6),e._UZ(7,"app-domain-references",7,8),e.qZA(),e.qZA(),e.qZA()}if(2&t){var s=e.oxw();e.xp6(2),e.Q6J("model",s.grade.name),e.xp6(1),e.Q6J("model",s.grade.type),e.xp6(1),e.Q6J("access",s.grade.access),e.xp6(3),e.Q6J("referencesUuids",s.grade.references)}}var x=function(){var t=function(d){(0,l.Z)(s,d);var r=(0,v.Z)(s);function s(c,n,i){var o;return(0,p.Z)(this,s),(o=r.call(this)).substanceFormService=c,o.gaService=n,o.cvService=i,o.subscriptions=[],o.analyticsEventCategory="substance form ssg 3 grade",o}return(0,m.Z)(s,[{key:"ngOnInit",value:function(){var n=this;this.menuLabelUpdate.emit("Grade");var i=this.substanceFormService.substance.subscribe(function(o){null==o.specifiedSubstanceG3.grade&&(o.specifiedSubstanceG3.grade={}),n.substanceFormService.resetState(),n.grade=o.specifiedSubstanceG3.grade});this.subscriptions.push(i)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"updateGradeName",value:function(n){this.grade.name=n}},{key:"updateGradeType",value:function(n){this.grade.type=n}},{key:"updateAccess",value:function(n){this.grade.access=n}}]),s}(G.o);return t.\u0275fac=function(r){return new(r||t)(e.Y36(f.B),e.Y36(S.$),e.Y36(h.I))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-ssg-grade-form"]],features:[e.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],["required","true","domain","SSG_GRADE_NAME","title","Grade Name",3,"model","valueChange"],["domain","SSG_GRADE_TYPE","required","true","title","Grade Type",3,"model","valueChange"],[3,"access","accessOut"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(r,s){1&r&&e.YNc(0,F,9,4,"div",0),2&r&&e.Q6J("ngIf",s.grade)},directives:[g.O5,C.S,y.h,Z.V],styles:[".name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.cv-input[_ngcontent-%COMP%]{margin-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),t}(),T=a(7168),A=a(64061),O=function(){var t=(0,m.Z)(function d(){(0,p.Z)(this,d)});return t.\u0275fac=function(r){return new(r||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[g.ez,A.o.forChild(x),T.O]]}),t}()}}]); -//# sourceMappingURL=1368.347aa89af390da16.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1368],{81368:function(M,u,a){a.r(u),a.d(u,{SsgGradeFormModule:function(){return O}});var m=a(1884),p=a(39117),g=a(36362),l=a(46751),v=a(56101),f=a(33567),S=a(40104),h=a(18291),G=a(79223),e=a(86613),C=a(16667),y=a(84577),Z=a(48302);function F(t,d){if(1&t){var r=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"app-cv-input",3),e.NdJ("valueChange",function(n){return e.CHM(r),e.oxw().updateGradeName(n)}),e.qZA(),e.TgZ(3,"app-cv-input",4),e.NdJ("valueChange",function(n){return e.CHM(r),e.oxw().updateGradeType(n)}),e.qZA(),e.TgZ(4,"app-access-manager",5),e.NdJ("accessOut",function(n){return e.CHM(r),e.oxw().updateAccess(n)}),e.qZA(),e.qZA(),e.TgZ(5,"div",2),e.TgZ(6,"div",6),e._UZ(7,"app-domain-references",7,8),e.qZA(),e.qZA(),e.qZA()}if(2&t){var s=e.oxw();e.xp6(2),e.Q6J("model",s.grade.name),e.xp6(1),e.Q6J("model",s.grade.type),e.xp6(1),e.Q6J("access",s.grade.access),e.xp6(3),e.Q6J("referencesUuids",s.grade.references)}}var x=function(){var t=function(d){(0,l.Z)(s,d);var r=(0,v.Z)(s);function s(c,n,i){var o;return(0,p.Z)(this,s),(o=r.call(this)).substanceFormService=c,o.gaService=n,o.cvService=i,o.subscriptions=[],o.analyticsEventCategory="substance form ssg 3 grade",o}return(0,m.Z)(s,[{key:"ngOnInit",value:function(){var n=this;this.menuLabelUpdate.emit("Grade");var i=this.substanceFormService.substance.subscribe(function(o){null==o.specifiedSubstanceG3.grade&&(o.specifiedSubstanceG3.grade={}),n.substanceFormService.resetState(),n.grade=o.specifiedSubstanceG3.grade});this.subscriptions.push(i)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"updateGradeName",value:function(n){this.grade.name=n}},{key:"updateGradeType",value:function(n){this.grade.type=n}},{key:"updateAccess",value:function(n){this.grade.access=n}}]),s}(G.o);return t.\u0275fac=function(r){return new(r||t)(e.Y36(f.B),e.Y36(S.$),e.Y36(h.I))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-ssg-grade-form"]],features:[e.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],["required","true","domain","SSG_GRADE_NAME","title","Grade Name",3,"model","valueChange"],["domain","SSG_GRADE_TYPE","required","true","title","Grade Type",3,"model","valueChange"],[3,"access","accessOut"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(r,s){1&r&&e.YNc(0,F,9,4,"div",0),2&r&&e.Q6J("ngIf",s.grade)},directives:[g.O5,C.S,y.h,Z.V],styles:[".name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.cv-input[_ngcontent-%COMP%]{margin-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),t}(),T=a(7168),A=a(64061),O=function(){var t=(0,m.Z)(function d(){(0,p.Z)(this,d)});return t.\u0275fac=function(r){return new(r||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[g.ez,A.o.forChild(x),T.O]]}),t}()}}]); +//# sourceMappingURL=1368.97552da2304596e6.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1368.347aa89af390da16.js.map b/frontend/src/main/resources/static/1368.97552da2304596e6.js.map similarity index 98% rename from frontend/src/main/resources/static/1368.347aa89af390da16.js.map rename to frontend/src/main/resources/static/1368.97552da2304596e6.js.map index a899554..72d3813 100644 --- a/frontend/src/main/resources/static/1368.347aa89af390da16.js.map +++ b/frontend/src/main/resources/static/1368.97552da2304596e6.js.map @@ -1 +1 @@ -{"version":3,"mappings":"iWAAAA,iBACCA,iBACCA,0BACCA,wDAAeC,qBAAyBD,QAEzCA,0BACCA,wDAAeE,qBAAyBF,QAEzCA,gCAAoBA,sDAAaG,kBACjCH,QACDA,QAEAA,iBACCA,iBACCA,qCACDA,QACDA,QAEDA,8BAhB4EA,qCAGDA,qCAGlBA,wCAM/BA,sDCCnB,IAAMI,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cAJDA,gBAAqC,GAO3CA,EAAKC,uBAAyB,6BAHeD,EAPjD,uCAaE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,SAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YAC9B,MAAxCD,EAAUE,qBAAqBC,QACjCH,EAAUE,qBAAqBC,MAAQ,IAEzCC,EAAKb,qBAAqBc,aAC1BD,EAAKD,MAAQH,EAAUE,qBAAqBC,QAE9CP,KAAKU,cAAcC,KAAKR,KAtB5B,6BAyBE,cAzBF,yBA4BE,WACEH,KAAKU,cAAcE,QAAQ,YACzBC,EAAaC,kBA9BnB,6BAkCE,SAAgBC,GACdf,KAAKO,MAAMQ,KAAOA,IAnCtB,6BAsCE,SAAgBC,GACdhB,KAAKO,MAAMS,KAAOA,IAvCtB,0BA0CE,SAAaC,GACXjB,KAAKO,MAAMU,OAASA,MA3CxBC,GAA2CC,kDAA9BzB,GAAqBJ,2DAArBI,EAAqB0B,4cDflC9B,4BAAkCA,gaCerBI,EAAb,wBCEa2B,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsC9B,GACtC+B,QAOSJ,EAAb","names":["i0","ctx_r2","ctx_r4","ctx_r5","SsgGradeFormComponent","substanceFormService","gaService","cvService","o","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","specifiedSubstanceG3","grade","n","resetState","subscriptions","push","forEach","subscription","unsubscribe","name","type","access","s","SubstanceFormBase","selectors","SsgGradeFormModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule"],"sources":["./src/app/core/substance-form/ssg-grade-form/ssg-grade-form.component.html","./src/app/core/substance-form/ssg-grade-form/ssg-grade-form.component.ts","./src/app/core/substance-form/ssg-grade-form/ssg-grade-form.module.ts"],"sourcesContent":["
\n\t
\n\t\t\n\n\t\t\n\n\t\t\n\t\t\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t\n
","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Grade } from '@gsrs-core/substance';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-ssg-grade-form',\n templateUrl: './ssg-grade-form.component.html',\n styleUrls: ['./ssg-grade-form.component.scss']\n})\n\nexport class SsgGradeFormComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n\n grade: Grade;\n private subscriptions: Array = [];\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form ssg 3 grade';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Grade');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.specifiedSubstanceG3.grade == null) {\n substance.specifiedSubstanceG3.grade = {};\n }\n this.substanceFormService.resetState();\n this.grade = substance.specifiedSubstanceG3.grade;\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateGradeName(name: string): void {\n this.grade.name = name;\n }\n\n updateGradeType(type: string): void {\n this.grade.type = type;\n }\n\n updateAccess(access: Array): void {\n this.grade.access = access;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SsgGradeFormComponent } from './ssg-grade-form.component';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SsgGradeFormComponent),\n SubstanceFormModule,\n ],\n declarations: [\n SsgGradeFormComponent\n ]\n})\n\nexport class SsgGradeFormModule { }\n"],"sourceRoot":"webpack:///","file":"1368.347aa89af390da16.js"} \ No newline at end of file +{"version":3,"mappings":"iWAAAA,iBACCA,iBACCA,0BACCA,wDAAeC,qBAAyBD,QAEzCA,0BACCA,wDAAeE,qBAAyBF,QAEzCA,gCAAoBA,sDAAaG,kBACjCH,QACDA,QAEAA,iBACCA,iBACCA,qCACDA,QACDA,QAEDA,8BAhB4EA,qCAGDA,qCAGlBA,wCAM/BA,sDCCnB,IAAMI,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cAJDA,gBAAqC,GAO3CA,EAAKC,uBAAyB,6BAHeD,EAPjD,uCAaE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,SAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YAC9B,MAAxCD,EAAUE,qBAAqBC,QACjCH,EAAUE,qBAAqBC,MAAQ,IAEzCC,EAAKb,qBAAqBc,aAC1BD,EAAKD,MAAQH,EAAUE,qBAAqBC,QAE9CP,KAAKU,cAAcC,KAAKR,KAtB5B,6BAyBE,cAzBF,yBA4BE,WACEH,KAAKU,cAAcE,QAAQ,YACzBC,EAAaC,kBA9BnB,6BAkCE,SAAgBC,GACdf,KAAKO,MAAMQ,KAAOA,IAnCtB,6BAsCE,SAAgBC,GACdhB,KAAKO,MAAMS,KAAOA,IAvCtB,0BA0CE,SAAaC,GACXjB,KAAKO,MAAMU,OAASA,MA3CxBC,GAA2CC,kDAA9BzB,GAAqBJ,2DAArBI,EAAqB0B,4cDflC9B,4BAAkCA,gaCerBI,EAAb,wBCEa2B,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsC9B,GACtC+B,QAOSJ,EAAb","names":["i0","ctx_r2","ctx_r4","ctx_r5","SsgGradeFormComponent","substanceFormService","gaService","cvService","o","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","specifiedSubstanceG3","grade","n","resetState","subscriptions","push","forEach","subscription","unsubscribe","name","type","access","s","SubstanceFormBase","selectors","SsgGradeFormModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule"],"sources":["./src/app/core/substance-form/ssg-grade-form/ssg-grade-form.component.html","./src/app/core/substance-form/ssg-grade-form/ssg-grade-form.component.ts","./src/app/core/substance-form/ssg-grade-form/ssg-grade-form.module.ts"],"sourcesContent":["
\n\t
\n\t\t\n\n\t\t\n\n\t\t\n\t\t\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t\n
","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Grade } from '@gsrs-core/substance';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-ssg-grade-form',\n templateUrl: './ssg-grade-form.component.html',\n styleUrls: ['./ssg-grade-form.component.scss']\n})\n\nexport class SsgGradeFormComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n\n grade: Grade;\n private subscriptions: Array = [];\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form ssg 3 grade';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Grade');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.specifiedSubstanceG3.grade == null) {\n substance.specifiedSubstanceG3.grade = {};\n }\n this.substanceFormService.resetState();\n this.grade = substance.specifiedSubstanceG3.grade;\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateGradeName(name: string): void {\n this.grade.name = name;\n }\n\n updateGradeType(type: string): void {\n this.grade.type = type;\n }\n\n updateAccess(access: Array): void {\n this.grade.access = access;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SsgGradeFormComponent } from './ssg-grade-form.component';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SsgGradeFormComponent),\n SubstanceFormModule,\n ],\n declarations: [\n SsgGradeFormComponent\n ]\n})\n\nexport class SsgGradeFormModule { }\n"],"sourceRoot":"webpack:///","file":"1368.97552da2304596e6.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1421.9f98b15e8097e932.js b/frontend/src/main/resources/static/1421.9f98b15e8097e932.js new file mode 100644 index 0000000..d9352be --- /dev/null +++ b/frontend/src/main/resources/static/1421.9f98b15e8097e932.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1421],{41421:function(Wa,L,_){_.r(L),_.d(L,{SubstanceProductsModule:function(){return Ha}});var C=_(1884),S=_(39117),b=_(36362),B=_(75143),x=_(46751),T=_(56101),N=_(40104),j=_(42154),H=_(68756),t=_(86613),P=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n){var o;return(0,S.Z)(this,r),(o=i.call(this,c)).gaService=c,o.service=n,o.results=[],o.isAdmin=!1,o}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){}},{key:"setPageEvent",value:function(n){null!=n&&(this.page=n.pageIndex,this.pageSize=n.pageSize)}},{key:"setResultData",value:function(n,o){this.results=n,this.filtered=n,this.totalRecords=this.service.totalRecords,this.pageChangeFda()}},{key:"pageChangeFda",value:function(n,o){if(this.paged=[],this.filtered)for(var u=0;u0),t.xp6(2),t.Q6J("ngIf",c.showSpinner),t.xp6(1),t.Q6J("dataSource",c.paged),t.xp6(19),t.Q6J("matHeaderRowDef",c.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",c.displayedColumns),t.xp6(1),t.Q6J("length",c.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(11,Tt))}}var Zt=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m,l){var s;return(0,S.Z)(this,r),(s=i.call(this,u,p)).router=c,s.authService=n,s.loadingService=o,s.gaService=u,s.applicationService=p,s.generalService=m,s.dialog=l,s.applicationCount=0,s.totalApplication=0,s.centerList=[],s.centerListOriginal=[],s.center="",s.fromTable="",s.loadingStatus="",s.showSpinner=!1,s.foundCenterList=!1,s.loadingComplete=!1,s.privateExport=!1,s.disableExport=!1,s.etag="",s.etagAllExport="",s.countApplicationOut=new t.vpe,s.sortValues=K.R,s.order="$root_appNumber",s.ascDescDir="desc",s.displayedColumns=["appType","appNumber","productName","sponsorName","appStatus","applicationSubType"],s}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,k.q)(1)).subscribe(function(o){n.isAdmin=o}),this.bdnum&&(this.getApplicationCenterList(),this.privateSearch="root_applicationProductList_applicationIngredientList_substanceKey:"+this.bdnum,this.getApplicationBySubstanceKeyCenter(null,"initial"))}},{key:"getApplicationCenterList",value:function(){var n=this;this.applicationService.getApplicationCenterList(this.bdnum).subscribe(function(o){n.centerListOriginal=o,n.centerList=o,n.centerList&&n.centerList.length>0&&(n.foundCenterList=!0),n.loadingComplete=!0})}},{key:"applicationTabSelected",value:function(n){if(n){var u=n.tab.textLabel;if(null!=u){this.loadingStatus="Loading data...";var p=u.indexOf(" ");this.center=u.slice(0,p),this.fromTable=u.slice(p+1,u.length)}this.paged=[],this.privateSearch="root_applicationProductList_applicationIngredientList_substanceKey:"+this.bdnum+" AND root_center:"+this.center+" AND root_fromTable: "+this.fromTable,this.getApplicationBySubstanceKeyCenter()}}},{key:"getApplicationBySubstanceKeyCenter",value:function(n,o){var u=this;this.setPageEvent(n),this.showSpinner=!0;var m=this.applicationService.getApplicationAll(this.order,this.page*this.pageSize,this.pageSize,this.privateSearch,this.privateFacetParams).subscribe(function(l){o&&"initial"===o?u.etagAllExport=l.etag:(u.applicationService.totalRecords=l.total,u.applicationCount=l.total,u.setResultData(l.content),u.etag=l.etag,u.countApplicationOut.emit(u.applicationCount))},function(l){u.showSpinner=!1,console.log("error")},function(){u.showSpinner=!1,m.unsubscribe()});this.loadingStatus=""}},{key:"export",value:function(){var n=this;if(this.etagAllExport){var o="xlsx",u=this.getApiExportUrl(this.etagAllExport,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceApplication",entity:"applications",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.applicationService.getAppAllApiExportUrl(n,o)}},{key:"updateApplicationUrl",get:function(){return this.applicationService.getUpdateApplicationUrl()}},{key:"applicationListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.applicationService.getApplicationListExportUrl(this.bdnum))}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getApplicationBySubstanceKeyCenter()}}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(h.F0),t.Y36(O.e),t.Y36(q.b),t.Y36(N.$),t.Y36(W.I),t.Y36(J.m),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-application"]],inputs:{bdnum:"bdnum"},outputs:{countApplicationOut:"countApplicationOut"},features:[t.qOj],decls:3,vars:2,consts:[[4,"ngIf"],[3,"selectedTabChange"],[3,"label",4,"ngFor","ngForOf"],[1,"padleft25px","colorblue"],[3,"label"],[1,"padtop5px","padleft25px","font15px","colorblue"],[1,"colorred"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","ptCount","matSortDirection","desc","matSortDisableClear","",1,"font12px",3,"dataSource","matSortChange"],["matColumnDef","appType"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","appNumber"],["matColumnDef","productName"],["matColumnDef","sponsorName"],["matColumnDef","appStatus"],["matColumnDef","applicationSubType"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink"],["svgIcon","edit"],[1,"font10px","colorgray"],[4,"ngFor","ngForOf"],["class","row",4,"ngFor","ngForOf"],[1,"row"],["mat-header-row",""],["mat-row",""]],template:function(i,r){1&i&&(t.YNc(0,X,6,0,"div",0),t.TgZ(1,"mat-tab-group",1),t.NdJ("selectedTabChange",function(n){return r.applicationTabSelected(n)}),t.YNc(2,At,33,12,"mat-tab",2),t.qZA()),2&i&&(t.Q6J("ngIf",!0===r.loadingComplete&&!1===r.foundCenterList&&0===r.applicationCount),t.xp6(2),t.Q6J("ngForOf",r.centerList))},directives:[b.O5,I.SP,b.sg,I.uX,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,g.nU,d.Dz,d.ev,h.yS,d.as,d.XQ,d.nj,d.Gk,E.NW],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font9px[_ngcontent-%COMP%]{font:size 10px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),R=_(69638),F=[{value:"default",display:"Relevance"},{value:"^root_trialNumber",display:"NCT Number, Ascending",displayedColumns:"trialNumber",direction:"asc"},{value:"$root_trialNumber",display:"NCT Number, Descending",displayedColumns:"trialNumber",direction:"desc"},{value:"^root_title",display:"Title, Ascending",displayedColumns:"title",direction:"asc"},{value:"$root_title",display:"Title, Descending",displayedColumns:"title",direction:"desc"},{value:"^root_sponsor",display:"Sponsor Name, Ascending",displayedColumns:"sponsor",direction:"asc"},{value:"$root_sponsor",display:"Sponsor Name, Descending",displayedColumns:"sponsor",direction:"desc"},{value:"^root_sponsorName",display:"Sponsor Name, Ascending",displayedColumns:"sponsorName",direction:"asc"},{value:"$root_sponsorName",display:"Sponsor Name, Descending",displayedColumns:"sponsorName",direction:"desc"},{value:"^root_conditions",display:"Conditions, Ascending",displayedColumns:"conditions",direction:"asc"},{value:"$root_conditions",display:"Conditions, Descending",displayedColumns:"conditions",direction:"desc"},{value:"^root_clinicalTrialEuropeMeddraList_meddraTerm",display:"Conditions, Ascending",displayedColumns:"conditionsEU",direction:"asc"},{value:"$root_clinicalTrialEuropeMeddraList_meddraTerm",display:"Conditions, Descending",displayedColumns:"conditionsEU",direction:"desc"}];function yt(e,a){1&e&&(t.TgZ(0,"div",2),t.TgZ(1,"b"),t._uU(2,"No Clinical Trial US Found"),t.qZA(),t.qZA())}function Et(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"span",19),t.TgZ(1,"button",20),t.NdJ("click",function(){return t.CHM(i),t.oxw(2).export()}),t._UZ(2,"mat-icon",21),t._uU(3," Export CTs "),t.qZA(),t.qZA()}}function Dt(e,a){1&e&&(t.TgZ(0,"div",22),t._UZ(1,"mat-progress-spinner",23),t.qZA())}function Ut(e,a){1&e&&t._UZ(0,"th",24)}function Nt(e,a){if(1&e&&(t.TgZ(0,"td",25),t.TgZ(1,"a",26),t._UZ(2,"mat-icon",27),t.qZA(),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("href","edit-clinical-trial/"+i.trialNumber,t.LSH)}}function Pt(e,a){1&e&&(t.TgZ(0,"th",28),t._uU(1,"Trial Number"),t.qZA())}function Ot(e,a){if(1&e&&(t.TgZ(0,"td",25),t.TgZ(1,"a",29),t._uU(2),t.qZA(),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("href","https://clinicaltrials.gov/ct2/show/"+i.trialNumber,t.LSH),t.xp6(1),t.Oqu(i.trialNumber)}}function wt(e,a){1&e&&(t.TgZ(0,"th",28),t._uU(1," Title "),t.qZA())}function qt(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.title," ")}}function Yt(e,a){1&e&&(t.TgZ(0,"th",28),t._uU(1," Sponsor Name "),t.qZA())}function It(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.sponsor," ")}}function Mt(e,a){1&e&&(t.TgZ(0,"th",28),t._uU(1," Conditions "),t.qZA())}function kt(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.conditions," ")}}function Qt(e,a){1&e&&(t.TgZ(0,"th",24),t._uU(1," Outcome Measures "),t.qZA())}function Lt(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.outcomeMeasures," ")}}function Jt(e,a){1&e&&t._UZ(0,"tr",30)}function Rt(e,a){1&e&&t._UZ(0,"tr",31)}var Ft=function(){return[5,10,25,100]};function $t(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",2),t.TgZ(2,"b"),t._uU(3,"Clinical Trials US"),t.qZA(),t._uU(4," \xa0\xa0\xa0 "),t.qZA(),t.TgZ(5,"div"),t.YNc(6,Et,4,0,"span",3),t.qZA(),t.TgZ(7,"div",4),t.YNc(8,Dt,2,0,"div",5),t.TgZ(9,"table",6),t.NdJ("matSortChange",function(n){return t.CHM(i),t.oxw().sortData(n)}),t.ynx(10,7),t.YNc(11,Ut,1,0,"th",8),t.YNc(12,Nt,3,1,"td",9),t.BQk(),t.ynx(13,10),t.YNc(14,Pt,2,0,"th",11),t.YNc(15,Ot,3,2,"td",9),t.BQk(),t.ynx(16,12),t.YNc(17,wt,2,0,"th",11),t.YNc(18,qt,2,1,"td",9),t.BQk(),t.ynx(19,13),t.YNc(20,Yt,2,0,"th",11),t.YNc(21,It,2,1,"td",9),t.BQk(),t.ynx(22,14),t.YNc(23,Mt,2,0,"th",11),t.YNc(24,kt,2,1,"td",9),t.BQk(),t.ynx(25,15),t.YNc(26,Qt,2,0,"th",8),t.YNc(27,Lt,2,1,"td",9),t.BQk(),t.YNc(28,Jt,1,0,"tr",16),t.YNc(29,Rt,1,0,"tr",17),t.qZA(),t.qZA(),t.TgZ(30,"mat-paginator",18),t.NdJ("page",function(n){return t.CHM(i),t.oxw().getSubstanceClinicalTrials(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.xp6(6),t.Q6J("ngIf",r.isAdmin),t.xp6(2),t.Q6J("ngIf",r.showSpinner),t.xp6(1),t.Q6J("dataSource",r.paged),t.xp6(19),t.Q6J("matHeaderRowDef",r.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",r.displayedColumns),t.xp6(1),t.Q6J("length",r.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,Ft))}}var zt=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m,l){var s;return(0,S.Z)(this,r),(s=i.call(this,c,n)).gaService=c,s.clinicalTrialService=n,s.configService=o,s.authService=u,s.loadingService=p,s.router=m,s.dialog=l,s.clinicalTrialCount=0,s.showSpinner=!1,s.subscriptions=[],s.privateExport=!1,s.disableExport=!1,s.etag="",s.etagAllExport="",s.loadingStatus="",s.sortValues=F,s.order="$root_trialNumber",s.ascDescDir="desc",s.countClinicalTrialOut=new t.vpe,s.displayedColumns=["edit","trialNumber","title","sponsor","conditions","outcomemeasures"],s}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this;this.loadedComponents=this.configService.configData.loadedComponents||null,this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,k.q)(1)).subscribe(function(o){n.isAdmin=o}),this.substanceUuid&&this.getSubstanceClinicalTrials(null,"initial")}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"getSubstanceClinicalTrials",value:function(n,o){var u=this;this.setPageEvent(n);var p=this.page*this.pageSize;this.showSpinner=!0;var m=this.clinicalTrialService.getClinicalTrials({searchTerm:this.substanceUuid,cutoff:null,type:"substanceKey",order:this.order,pageSize:this.pageSize,facets:this.privateFacetParams,skip:p}).subscribe(function(l){o&&"initial"===o&&(u.etagAllExport=l.etag),u.clinicalTrialService.totalRecords=l.total,u.setResultData(l.content),u.clinicalTrialCount=l.total,u.etag=l.etag,u.countClinicalTrialOut.emit(u.clinicalTrialCount),u.showSpinner=!1});this.subscriptions.push(m)}},{key:"export",value:function(){var n=this;if(this.etagAllExport){var o="ctus.xlsx",u=this.getApiExportUrl(this.etagAllExport,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceClinicalTrialUS",entity:"clinicaltrialsus",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.clinicalTrialService.getApiExportUrl(n,o)}},{key:"clinicalTrialListExportUrl",value:function(){null!=this.substanceUuid&&(this.exportUrl=this.clinicalTrialService.getClinicalTrialListExportUrl(this.substanceUuid))}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getSubstanceClinicalTrials()}}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(N.$),t.Y36(R.m),t.Y36(M.E),t.Y36(O.e),t.Y36(q.b),t.Y36(h.F0),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-clinical-trials"]],inputs:{substanceUuid:"substanceUuid"},outputs:{countClinicalTrialOut:"countClinicalTrialOut"},features:[t.qOj],decls:2,vars:2,consts:[["class","padtop5px padleft25px font15px colorblue",4,"ngIf"],[4,"ngIf"],[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","nctNumber","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","edit"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","trialNumber"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","title"],["matColumnDef","sponsor"],["matColumnDef","conditions"],["matColumnDef","outcomemeasures"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell",""],["mat-cell",""],["target","_blank","title","Edit in new tab",1,"clinical-trials-browse-edit1",3,"href"],["svgIcon","edit",2,"width","20px","height","20px"],["mat-header-cell","","mat-sort-header",""],["target","_blank","title","see clinicaltrials.gov",3,"href"],["mat-header-row",""],["mat-row",""]],template:function(i,r){1&i&&(t.YNc(0,yt,3,0,"div",0),t.YNc(1,$t,31,9,"div",1)),2&i&&(t.Q6J("ngIf",!r.clinicalTrialCount),t.xp6(1),t.Q6J("ngIf",r.clinicalTrialCount&&r.clinicalTrialCount>0))},directives:[b.O5,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,d.Dz,d.ev,g.nU,d.as,d.XQ,d.nj,d.Gk,E.NW],styles:[".clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{text-decoration:none}.clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{padding-left:.5em;padding-right:.5em}.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.btn1[_ngcontent-%COMP%]{color:var(--maroon-color);background-color:var(--light-yellow-color-3);border-radius:10px 0 0 10px;font-size:16px}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Bt=_(92938);function jt(e,a){1&e&&(t.TgZ(0,"div",2),t.TgZ(1,"b"),t._uU(2,"No Clinical Trial Europe Found"),t.qZA(),t.qZA())}function Ht(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"span",16),t.TgZ(1,"button",17),t.NdJ("click",function(){return t.CHM(i),t.oxw(2).export()}),t._UZ(2,"mat-icon",18),t._uU(3," Export CTs "),t.qZA(),t.qZA()}}function Gt(e,a){1&e&&(t.TgZ(0,"div",19),t._UZ(1,"mat-progress-spinner",20),t.qZA())}function Wt(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1,"Eudract Number"),t.qZA())}function Kt(e,a){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",23),t._uU(2),t.qZA(),t.qZA()),2&e){var i=t.oxw().$implicit;t.xp6(1),t.s9C("href",i.url,t.LSH),t.xp6(1),t.Oqu(i.trialNumber)}}function Xt(e,a){if(1&e&&(t.TgZ(0,"td",22),t.YNc(1,Kt,3,2,"div",1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngIf",i.trialNumber)}}function Vt(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," Title "),t.qZA())}function te(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.title," ")}}function ee(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," Sponsor Name "),t.qZA())}function ne(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.sponsorName," ")}}function ae(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1,"Conditions"),t.qZA())}function ie(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit,r=t.oxw(2);t.xp6(1),t.Oqu(r.joinMeddraTerms(i))}}function oe(e,a){1&e&&t._UZ(0,"tr",24)}function re(e,a){1&e&&t._UZ(0,"tr",25)}var se=function(){return[5,10,25,100]};function ce(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",2),t.TgZ(2,"b"),t._uU(3,"Clinical Trials Europe"),t.qZA(),t._uU(4," \xa0\xa0\xa0 "),t.qZA(),t.TgZ(5,"div"),t.YNc(6,Ht,4,0,"span",3),t.qZA(),t.TgZ(7,"div",4),t.YNc(8,Gt,2,0,"div",5),t.TgZ(9,"table",6),t.NdJ("matSortChange",function(n){return t.CHM(i),t.oxw().sortData(n)}),t.ynx(10,7),t.YNc(11,Wt,2,0,"th",8),t.YNc(12,Xt,2,1,"td",9),t.BQk(),t.ynx(13,10),t.YNc(14,Vt,2,0,"th",8),t.YNc(15,te,2,1,"td",9),t.BQk(),t.ynx(16,11),t.YNc(17,ee,2,0,"th",8),t.YNc(18,ne,2,1,"td",9),t.BQk(),t.ynx(19,12),t.YNc(20,ae,2,0,"th",8),t.YNc(21,ie,2,1,"td",9),t.BQk(),t.YNc(22,oe,1,0,"tr",13),t.YNc(23,re,1,0,"tr",14),t.qZA(),t.qZA(),t.TgZ(24,"mat-paginator",15),t.NdJ("page",function(n){return t.CHM(i),t.oxw().getSubstanceClinicalTrialsEurope(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.xp6(6),t.Q6J("ngIf",r.isAdmin),t.xp6(2),t.Q6J("ngIf",r.showSpinner),t.xp6(1),t.Q6J("dataSource",r.paged),t.xp6(13),t.Q6J("matHeaderRowDef",r.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",r.displayedColumns),t.xp6(1),t.Q6J("length",r.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,se))}}var ue=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m,l){var s;return(0,S.Z)(this,r),(s=i.call(this,c,n)).gaService=c,s.clinicalTrialService=n,s.configService=o,s.authService=u,s.loadingService=p,s.router=m,s.dialog=l,s.clinicalTrialEuCount=0,s.showSpinner=!1,s.subscriptions=[],s.privateExport=!1,s.disableExport=!1,s.etag="",s.etagAllExport="",s.loadingStatus="",s.sortValues=F,s.order="$root_trialNumber",s.ascDescDir="desc",s.countClinicalTrialEuOut=new t.vpe,s.displayedColumns=["trialNumber","title","sponsorName","conditionsEU"],s}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this;this.loadedComponents=this.configService.configData.loadedComponents||null,this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,k.q)(1)).subscribe(function(o){n.isAdmin=o}),this.substanceUuid&&this.getSubstanceClinicalTrialsEurope(null,"initial")}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"getSubstanceClinicalTrialsEurope",value:function(n,o){var u=this;this.setPageEvent(n),this.showSpinner=!0;var p=this.clinicalTrialService.getSubstanceClinicalTrialsEurope(this.substanceUuid,this.page,this.pageSize,this.order).subscribe(function(m){o&&"initial"===o&&(u.etagAllExport=m.etag),u.setResultData(m.content),u.clinicalTrialEuCount=m.total,u.countClinicalTrialEuOut.emit(u.clinicalTrialEuCount),u.showSpinner=!1});this.subscriptions.push(p)}},{key:"export",value:function(){var n=this;if(this.etagAllExport){var o="cteu.xlsx",u=this.getApiExportUrl(this.etagAllExport,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceClinicalTrialEU",entity:"clinicaltrialseurope",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.clinicalTrialService.getApiEuropeExportUrl(n,o)}},{key:"joinMeddraTerms",value:function(n){if(n)return Bt.map(n.clinicalTrialEuropeMeddraList,"meddraTerm").join("|")}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getSubstanceClinicalTrialsEurope()}}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(N.$),t.Y36(R.m),t.Y36(M.E),t.Y36(O.e),t.Y36(q.b),t.Y36(h.F0),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-clinical-trials-eu"]],inputs:{substanceUuid:"substanceUuid"},outputs:{countClinicalTrialEuOut:"countClinicalTrialEuOut"},features:[t.qOj],decls:2,vars:2,consts:[["class","padtop5px padleft25px font15px colorblue",4,"ngIf"],[4,"ngIf"],[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","trialNumber","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","trialNumber"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","title"],["matColumnDef","sponsorName"],["matColumnDef","conditionsEU"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],[3,"href"],["mat-header-row",""],["mat-row",""]],template:function(i,r){1&i&&(t.YNc(0,jt,3,0,"div",0),t.YNc(1,ce,25,9,"div",1)),2&i&&(t.Q6J("ngIf",!r.clinicalTrialEuCount),t.xp6(1),t.Q6J("ngIf",r.clinicalTrialEuCount&&r.clinicalTrialEuCount>0))},directives:[b.O5,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,g.nU,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,E.NW],styles:[".mat-column-trialNumber[_ngcontent-%COMP%]{word-wrap:break-word!important;white-space:unset!important;-ms-flex:0 0 20%!important;flex:0 0 20%!important;width:20%!important;white-space:nowrap}.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Q=_(43461),le=_(98969);function pe(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"span",20),t.TgZ(1,"button",21),t.NdJ("click",function(){return t.CHM(i),t.oxw(2).export()}),t._UZ(2,"mat-icon",22),t._uU(3," Export "),t.qZA(),t.qZA()}}function de(e,a){if(1&e&&(t.TgZ(0,"div",18),t.YNc(1,pe,4,0,"span",19),t.qZA()),2&e){var i=t.oxw();t.xp6(1),t.Q6J("ngIf",i.isAdmin&&i.adverseEventCount>0)}}function me(e,a){if(1&e&&(t.TgZ(0,"div",23),t.TgZ(1,"a",24),t.TgZ(2,"button",25),t.TgZ(3,"mat-icon"),t._uU(4,"analytics"),t.qZA(),t.TgZ(5,"span",26),t._uU(6,"Analysis by Substance"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&e){var i=t.oxw();t.xp6(1),t.s9C("href",i.adverseEventShinySubstanceNameURLWithParam,t.LSH)}}function _e(e,a){1&e&&(t.TgZ(0,"div",27),t._UZ(1,"mat-progress-spinner",28),t.qZA())}function ve(e,a){1&e&&(t.TgZ(0,"th",29),t._uU(1," PT Term "),t.qZA())}function fe(e,a){if(1&e&&(t.TgZ(0,"span",32),t.TgZ(1,"a",33),t.TgZ(2,"mat-icon"),t._uU(3,"analytics"),t.qZA(),t.qZA(),t.qZA()),2&e){var i=t.oxw().$implicit,r=t.oxw();t.xp6(1),t.hYB("href","",r.adverseEventShinyAdverseEventURLWithParam,"",r.getDecodeURL(i.ptTerm),"",t.LSH)}}function ge(e,a){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.YNc(2,fe,4,2,"span",31),t.qZA()),2&e){var i=a.$implicit,r=t.oxw();t.xp6(1),t.hij(" ",i.ptTerm," "),t.xp6(1),t.Q6J("ngIf",!0===r.adverseEventShinyAdverseEventDisplay)}}function be(e,a){1&e&&(t.TgZ(0,"th",29),t._uU(1," Prim SOC "),t.qZA())}function he(e,a){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.primSoc," ")}}function Ce(e,a){1&e&&(t.TgZ(0,"th",29),t._uU(1," Case Count "),t.qZA())}function Se(e,a){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.caseCount,"")}}function xe(e,a){1&e&&(t.TgZ(0,"th",29),t._uU(1," PT Count "),t.qZA())}function Te(e,a){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",36),t.ALo(2,"titlecase"),t.ALo(3,"titlecase"),t._UZ(4,"div",37),t.qZA(),t.TgZ(5,"span",38),t._uU(6,"FAERS Public Dashboard"),t.qZA(),t.qZA()),2&e){var i=t.oxw().$implicit,r=t.oxw();t.xp6(1),t.FAE("href","",r.FAERSDashboardAdverseEventUrl,"",r.getDecodeURL(t.lcZ(2,5,i.ptTerm)),"",r.FAERSDashboardReactionGroup,"",r.getDecodeURL(t.lcZ(3,7,i.primSoc)),"",t.LSH),t.xp6(3),t.Q6J("innerHTML",i.ptCount,t.oJD)}}function Ae(e,a){if(1&e&&t._UZ(0,"div",37),2&e){var i=t.oxw().$implicit;t.Q6J("innerHTML",i.ptCount,t.oJD)}}function Ze(e,a){if(1&e&&(t.TgZ(0,"td",30),t.YNc(1,Te,7,9,"div",34),t.YNc(2,Ae,1,1,"ng-template",null,35,t.W1O),t.qZA()),2&e){var i=t.MAs(3),r=t.oxw();t.xp6(1),t.Q6J("ngIf",r.FAERSDashboardAdverseEventUrl)("ngIfElse",i)}}function ye(e,a){1&e&&(t.TgZ(0,"th",29),t._uU(1," PRR "),t.qZA())}function Ee(e,a){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.ALo(2,"number"),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,i.prr,".2-2")," ")}}function De(e,a){1&e&&t._UZ(0,"tr",39)}function Ue(e,a){1&e&&t._UZ(0,"tr",40)}var Ne=function(){return[5,10,25,100]},Pe=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m,l){var s;return(0,S.Z)(this,r),(s=i.call(this,n,o)).router=c,s.gaService=n,s.adverseEventService=o,s.loadingService=u,s.configService=p,s.authService=m,s.dialog=l,s.countAdvPtOut=new t.vpe,s.adverseEventCount=0,s.order="$root_ptCount",s.ascDescDir="desc",s.showSpinner=!1,s.sortValues=le.g,s.privateExport=!1,s.disableExport=!1,s.etag="",s.loadingStatus="",s.subscriptions=[],s.adverseEventShinySubstanceNameDisplay=!1,s.adverseEventShinyAdverseEventDisplay=!1,s.FAERSDashboardSearchTerm="/select/Search%20Term/",s.FAERSDashboardReactionTerm="/select/Reaction%20Term/",s.FAERSDashboardReactionGroup="/select/Reaction%20Group/",s.displayedColumns=["ptTerm","primSoc","caseCount","ptCount","prr"],s}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this,o=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){n.isAdmin=u});this.subscriptions.push(o),this.bdnum&&(this.getAdverseEventPt(),this.getFaersDashboardUrl(),this.getFaersDashboardRecordByName(),this.adverseEventPtListExportUrl(),this.getAdverseEventShinyConfig())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"getAdverseEventPt",value:function(n){var o=this;this.setPageEvent(n),this.showSpinner=!0;var m=this.adverseEventService.getAdverseEventPt(this.order,this.page*this.pageSize,this.pageSize,"root_substanceKey:"+this.bdnum,this.privateFacetParams).subscribe(function(l){o.adverseEventService.totalRecords=l.total,o.adverseEventCount=l.total,o.setResultData(l.content),o.etag=l.etag,o.countAdvPtOut.emit(o.adverseEventCount)},function(l){o.showSpinner=!1,console.log("error")},function(){o.showSpinner=!1,m.unsubscribe()});this.loadingStatus=""}},{key:"adverseEventPtListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.adverseEventService.getAdverseEventPtListExportUrl(this.bdnum))}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getAdverseEventPt()}}},{key:"export",value:function(){var n=this;if(this.etag){var o="xlsx",u=this.getApiExportUrl(this.etag,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceAdverseEventPt",entity:"adverseeventpt",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.adverseEventService.getApiExportUrlPt(n,o)}},{key:"getFaersDashboardRecordByName",value:function(){var n=this,o=this.adverseEventService.getFaersDashboardRecordByName(this.substanceName).subscribe(function(u){u&&u.name&&(n.FAERSDashboardSubstanceName=u.name,n.FAERSDashboardAdverseEventUrl=n.FAERSDashboardAdverseEventUrl+u.name+n.FAERSDashboardReactionTerm)});this.subscriptions.push(o)}},{key:"getFaersDashboardUrl",value:function(){this.configService.configData&&this.configService.configData.FAERSDashboardAdverseEventUrl&&null!==this.configService.configData.FAERSDashboardAdverseEventUrl&&(this.FAERSDashboardAdverseEventUrl=this.configService.configData.FAERSDashboardAdverseEventUrl+this.FAERSDashboardSearchTerm)}},{key:"getAdverseEventShinyConfig",value:function(){this.configService.configData&&(this.configService.configData.adverseEventShinySubstanceNameDisplay&&null!==this.configService.configData.adverseEventShinySubstanceNameDisplay&&(this.adverseEventShinySubstanceNameDisplay=JSON.parse(this.configService.configData.adverseEventShinySubstanceNameDisplay)),this.configService.configData.adverseEventShinySubstanceNameURL&&null!==this.configService.configData.adverseEventShinySubstanceNameURL&&(this.adverseEventShinySubstanceNameURL=this.configService.configData.adverseEventShinySubstanceNameURL,this.adverseEventShinySubstanceNameURLWithParam=this.adverseEventShinySubstanceNameURL+decodeURIComponent(this.substanceName)),this.configService.configData.adverseEventShinyAdverseEventDisplay&&null!==this.configService.configData.adverseEventShinyAdverseEventDisplay&&(this.adverseEventShinyAdverseEventDisplay=JSON.parse(this.configService.configData.adverseEventShinyAdverseEventDisplay)),this.configService.configData.adverseEventShinyAdverseEventURL&&null!==this.configService.configData.adverseEventShinyAdverseEventURL&&(this.adverseEventShinyAdverseEventURL=this.configService.configData.adverseEventShinyAdverseEventURL,this.adverseEventShinyAdverseEventURLWithParam=this.adverseEventShinyAdverseEventURL))}},{key:"getDecodeURL",value:function(n){var o="";return null!==n&&(o=decodeURIComponent(n)),o}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(h.F0),t.Y36(N.$),t.Y36(Q.a),t.Y36(q.b),t.Y36(M.E),t.Y36(O.e),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-adverseeventpt"]],inputs:{bdnum:"bdnum",substanceName:"substanceName"},outputs:{countAdvPtOut:"countAdvPtOut"},features:[t.qOj],decls:28,vars:10,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],[1,"divflex"],[1,"padtop10px"],["class","marginleft50px padleft25px padtopneg50px width120px",4,"ngIf"],["class","marginleft50px padleft25px width200px",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","ptCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","ptTerm"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","primSoc"],["matColumnDef","caseCount"],["matColumnDef","ptCount"],["matColumnDef","prr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"marginleft50px","padleft25px","padtopneg50px","width120px"],["class","export",4,"ngIf"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"marginleft50px","padleft25px","width200px"],["target","_blank",3,"href"],["mat-icon-button","","color","accent","aria-label","Analysis by Substance Name on Shiny Server"],[1,"colororange"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["class","",4,"ngIf"],[1,""],["target","_blank","title","Analysis by Adverse Event/PT Term on Shiny Server",3,"href"],[4,"ngIf","ngIfElse"],["noFaersLink",""],["target","_blank","title","FAERS Public Dashboard",3,"href"],[3,"innerHTML"],[1,"colorgray","font10px"],["mat-header-row",""],["mat-row",""]],template:function(i,r){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"b"),t._uU(4,"Adverse Event PT"),t.qZA(),t.qZA(),t.YNc(5,de,2,1,"div",3),t.YNc(6,me,7,1,"div",4),t.qZA(),t.TgZ(7,"div",5),t.YNc(8,_e,2,0,"div",6),t.TgZ(9,"table",7),t.NdJ("matSortChange",function(n){return r.sortData(n)}),t.ynx(10,8),t.YNc(11,ve,2,0,"th",9),t.YNc(12,ge,3,2,"td",10),t.BQk(),t.ynx(13,11),t.YNc(14,be,2,0,"th",9),t.YNc(15,he,2,1,"td",10),t.BQk(),t.ynx(16,12),t.YNc(17,Ce,2,0,"th",9),t.YNc(18,Se,2,1,"td",10),t.BQk(),t.ynx(19,13),t.YNc(20,xe,2,0,"th",9),t.YNc(21,Ze,4,2,"td",10),t.BQk(),t.ynx(22,14),t.YNc(23,ye,2,0,"th",9),t.YNc(24,Ee,3,4,"td",10),t.BQk(),t.YNc(25,De,1,0,"tr",15),t.YNc(26,Ue,1,0,"tr",16),t.qZA(),t.qZA(),t.TgZ(27,"mat-paginator",17),t.NdJ("page",function(n){return r.getAdverseEventPt(n)}),t.qZA(),t.qZA()),2&i&&(t.xp6(5),t.Q6J("ngIf",r.totalRecords>0),t.xp6(1),t.Q6J("ngIf",!0===r.adverseEventShinySubstanceNameDisplay),t.xp6(2),t.Q6J("ngIf",r.showSpinner),t.xp6(1),t.Q6J("dataSource",r.paged),t.xp6(16),t.Q6J("matHeaderRowDef",r.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",r.displayedColumns),t.xp6(1),t.Q6J("length",r.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(9,Ne)))},directives:[b.O5,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,g.nU,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,E.NW],pipes:[b.rS,b.JJ],styles:[".mat-table-style[_ngcontent-%COMP%]{position:relative}.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.font8px[_ngcontent-%COMP%]{font-size:8px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padtopneg50px[_ngcontent-%COMP%]{padding-top:-50px}.colorblue[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colororange[_ngcontent-%COMP%]{color:var(--orange-color-rgb-2)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.width120px[_ngcontent-%COMP%]{width:120px;display:block}.width200px[_ngcontent-%COMP%]{width:200px;display:block}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Oe=_(52395);function we(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"span",16),t.TgZ(1,"button",17),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",18),t._uU(3," Export "),t.qZA(),t.qZA()}}function qe(e,a){1&e&&(t.TgZ(0,"div",19),t._UZ(1,"mat-progress-spinner",20),t.qZA())}function Ye(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," DME Reactions "),t.qZA())}function Ie(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.dmeReactions," ")}}function Me(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," PT Term Meddra "),t.qZA())}function ke(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.ptTermMeddra," ")}}function Qe(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," Case Count "),t.qZA())}function Le(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.caseCount," ")}}function Je(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," Dme Count "),t.qZA())}function Re(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.dmeCount," ")}}function Fe(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," Dme Count Percent "),t.qZA())}function $e(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.dmeCountPercent," ")}}function ze(e,a){1&e&&(t.TgZ(0,"th",21),t._uU(1," Weighted Average PRR"),t.qZA())}function Be(e,a){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.ALo(2,"number"),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,i.weightedAvgPrr,".2-2")," ")}}function je(e,a){1&e&&t._UZ(0,"tr",23)}function He(e,a){1&e&&t._UZ(0,"tr",24)}var Ge=function(){return[5,10,25,100]},We=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m){var l;return(0,S.Z)(this,r),(l=i.call(this,n,o)).router=c,l.gaService=n,l.adverseEventService=o,l.authService=u,l.loadingService=p,l.dialog=m,l.countAdvDmeOut=new t.vpe,l.adverseEventCount=0,l.order="$root_dmeCount",l.ascDescDir="desc",l.showSpinner=!1,l.privateExport=!1,l.disableExport=!1,l.etag="",l.loadingStatus="",l.sortValues=Oe.O,l.subscriptions=[],l.displayedColumns=["dmeReactions","ptTermMeddra","caseCount","dmeCount","dmeCountPercent","weightedAvgPrr"],l}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this,o=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){n.isAdmin=u});this.subscriptions.push(o),this.bdnum&&(this.getAdverseEventDme(),this.adverseEventDmeListExportUrl())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"getAdverseEventDme",value:function(n){var o=this;this.setPageEvent(n),this.showSpinner=!0;var m=this.adverseEventService.getAdverseEventDme(this.order,this.page*this.pageSize,this.pageSize,"root_substanceKey:"+this.bdnum,this.privateFacetParams).subscribe(function(l){o.adverseEventService.totalRecords=l.total,o.adverseEventCount=l.total,o.setResultData(l.content),o.etag=l.etag,o.countAdvDmeOut.emit(o.adverseEventCount)},function(l){o.showSpinner=!1,console.log("error")},function(){o.showSpinner=!1,m.unsubscribe()});this.loadingStatus=""}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getAdverseEventDme()}}},{key:"export",value:function(){var n=this;if(this.etag){var o="xlsx",u=this.getApiExportUrl(this.etag,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceAdverseEventDme",entity:"adverseeventdme",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.adverseEventService.getApiExportUrlDme(n,o)}},{key:"adverseEventDmeListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.adverseEventService.getAdverseEventDmeListExportUrl(this.bdnum))}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(h.F0),t.Y36(N.$),t.Y36(Q.a),t.Y36(O.e),t.Y36(q.b),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-adverseeventdme"]],inputs:{bdnum:"bdnum"},outputs:{countAdvDmeOut:"countAdvDmeOut"},features:[t.qOj],decls:29,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","dmeCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","dmeReactions"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","ptTermMeddra"],["matColumnDef","caseCount"],["matColumnDef","dmeCount"],["matColumnDef","dmeCountPercent"],["matColumnDef","weightedAvgPrr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(i,r){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Adverse Event DME"),t.qZA(),t._uU(3," \xa0\xa0\xa0 "),t.YNc(4,we,4,0,"span",1),t.qZA(),t.TgZ(5,"div",2),t.YNc(6,qe,2,0,"div",3),t.TgZ(7,"table",4),t.NdJ("matSortChange",function(n){return r.sortData(n)}),t.ynx(8,5),t.YNc(9,Ye,2,0,"th",6),t.YNc(10,Ie,2,1,"td",7),t.BQk(),t.ynx(11,8),t.YNc(12,Me,2,0,"th",6),t.YNc(13,ke,2,1,"td",7),t.BQk(),t.ynx(14,9),t.YNc(15,Qe,2,0,"th",6),t.YNc(16,Le,2,1,"td",7),t.BQk(),t.ynx(17,10),t.YNc(18,Je,2,0,"th",6),t.YNc(19,Re,2,1,"td",7),t.BQk(),t.ynx(20,11),t.YNc(21,Fe,2,0,"th",6),t.YNc(22,$e,2,1,"td",7),t.BQk(),t.ynx(23,12),t.YNc(24,ze,2,0,"th",6),t.YNc(25,Be,3,4,"td",7),t.BQk(),t.YNc(26,je,1,0,"tr",13),t.YNc(27,He,1,0,"tr",14),t.qZA(),t.qZA(),t.TgZ(28,"mat-paginator",15),t.NdJ("page",function(n){return r.getAdverseEventDme(n)}),t.qZA()),2&i&&(t.xp6(4),t.Q6J("ngIf",r.isAdmin&&r.adverseEventCount>0),t.xp6(2),t.Q6J("ngIf",r.showSpinner),t.xp6(1),t.Q6J("dataSource",r.paged),t.xp6(19),t.Q6J("matHeaderRowDef",r.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",r.displayedColumns),t.xp6(1),t.Q6J("length",r.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,Ge)))},directives:[b.O5,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,g.nU,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,E.NW],pipes:[b.JJ],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorpurple[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Ke=_(34009);function Xe(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"span",14),t.TgZ(1,"button",15),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",16),t._uU(3," Export "),t.qZA(),t.qZA()}}function Ve(e,a){1&e&&(t.TgZ(0,"div",17),t._UZ(1,"mat-progress-spinner",18),t.qZA())}function tn(e,a){1&e&&(t.TgZ(0,"th",19),t._uU(1," Adverse Event "),t.qZA())}function en(e,a){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.adverseEvent," ")}}function nn(e,a){1&e&&(t.TgZ(0,"th",19),t._uU(1," Species "),t.qZA())}function an(e,a){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.species," ")}}function on(e,a){1&e&&(t.TgZ(0,"th",19),t._uU(1," Adverse Event Count "),t.qZA())}function rn(e,a){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.aeCount," ")}}function sn(e,a){1&e&&(t.TgZ(0,"th",19),t._uU(1," Route of Administration "),t.qZA())}function cn(e,a){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.routeOfAdmin," ")}}function un(e,a){1&e&&t._UZ(0,"tr",21)}function ln(e,a){1&e&&t._UZ(0,"tr",22)}var pn=function(){return[5,10,25,100]},dn=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m){var l;return(0,S.Z)(this,r),(l=i.call(this,n,o)).router=c,l.gaService=n,l.adverseEventService=o,l.authService=u,l.loadingService=p,l.dialog=m,l.countAdvCvmOut=new t.vpe,l.adverseEventCount=0,l.order="$root_aeCount",l.ascDescDir="desc",l.showSpinner=!1,l.privateExport=!1,l.disableExport=!1,l.etag="",l.loadingStatus="",l.sortValues=Ke.l,l.subscriptions=[],l.displayedColumns=["adverseEvent","species","adverseEventCount","routeOfAdmin"],l}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this,o=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){n.isAdmin=u});this.subscriptions.push(o),this.bdnum&&(this.getAdverseEventCvm(),this.adverseEventCvmListExportUrl())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"getAdverseEventCvm",value:function(n){var o=this;this.setPageEvent(n),this.showSpinner=!0;var m=this.adverseEventService.getAdverseEventCvm(this.order,this.page*this.pageSize,this.pageSize,"root_substanceKey:"+this.bdnum,this.privateFacetParams).subscribe(function(l){o.adverseEventService.totalRecords=l.total,o.adverseEventCount=l.total,o.setResultData(l.content),o.etag=l.etag,o.countAdvCvmOut.emit(o.adverseEventCount)},function(l){o.showSpinner=!1,console.log("error")},function(){o.showSpinner=!1,m.unsubscribe()});this.loadingStatus=""}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getAdverseEventCvm()}}},{key:"export",value:function(){var n=this;if(this.etag){var o="xlsx",u=this.getApiExportUrl(this.etag,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceAdverseEventCvm",entity:"adverseeventcvm",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.adverseEventService.getApiExportUrlCvm(n,o)}},{key:"adverseEventCvmListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.adverseEventService.getAdverseEventCvmListExportUrl(this.bdnum))}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(h.F0),t.Y36(N.$),t.Y36(Q.a),t.Y36(O.e),t.Y36(q.b),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-adverseeventcvm"]],inputs:{bdnum:"bdnum"},outputs:{countAdvCvmOut:"countAdvCvmOut"},features:[t.qOj],decls:23,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","adverseEventCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","adverseEvent"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","species"],["matColumnDef","adverseEventCount"],["matColumnDef","routeOfAdmin"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(i,r){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Adverse Event CVM"),t.qZA(),t._uU(3," \xa0\xa0\xa0 "),t.YNc(4,Xe,4,0,"span",1),t.qZA(),t.TgZ(5,"div",2),t.YNc(6,Ve,2,0,"div",3),t.TgZ(7,"table",4),t.NdJ("matSortChange",function(n){return r.sortData(n)}),t.ynx(8,5),t.YNc(9,tn,2,0,"th",6),t.YNc(10,en,2,1,"td",7),t.BQk(),t.ynx(11,8),t.YNc(12,nn,2,0,"th",6),t.YNc(13,an,2,1,"td",7),t.BQk(),t.ynx(14,9),t.YNc(15,on,2,0,"th",6),t.YNc(16,rn,2,1,"td",7),t.BQk(),t.ynx(17,10),t.YNc(18,sn,2,0,"th",6),t.YNc(19,cn,2,1,"td",7),t.BQk(),t.YNc(20,un,1,0,"tr",11),t.YNc(21,ln,1,0,"tr",12),t.qZA(),t.qZA(),t.TgZ(22,"mat-paginator",13),t.NdJ("page",function(n){return r.getAdverseEventCvm(n)}),t.qZA()),2&i&&(t.xp6(4),t.Q6J("ngIf",r.isAdmin&&r.adverseEventCount>0),t.xp6(2),t.Q6J("ngIf",r.showSpinner),t.xp6(1),t.Q6J("dataSource",r.paged),t.xp6(13),t.Q6J("matHeaderRowDef",r.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",r.displayedColumns),t.xp6(1),t.Q6J("length",r.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,pn)))},directives:[b.O5,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,g.nU,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,E.NW],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorpurple[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),mn=_(91781),_n=(_(52489),[{value:"default",display:"Relevance"},{value:"^root_productSubstanceName",display:"Source Type, Ascending",displayedColumns:"productSubstanceName",direction:"asc"},{value:"$root_productSubstanceName",display:"Source Type, Descending",displayedColumns:"productSubstanceName",direction:"desc"},{value:"^root_sourceType",display:"Source Type, Ascending",displayedColumns:"sourceType",direction:"asc"},{value:"$root_sourceType",display:"Source Type, Descending",displayedColumns:"sourceType",direction:"desc"},{value:"^root_source",display:"Source, Ascending",displayedColumns:"source",direction:"asc"},{value:"$root_source",display:"Source, Descending",displayedColumns:"source",direction:"desc"},{value:"^root_sourceId",display:"Source ID, A-Z",displayedColumns:"sourceId",direction:"asc"},{value:"$root_sourceId",display:"Source ID, Z-A",displayedColumns:"sourceId",direction:"desc"},{value:"^root_type",display:"Type, A-Z",displayedColumns:"type",direction:"asc"},{value:"$root_type",display:"Type, Z-A",displayedColumns:"type",direction:"desc"},{value:"^root_specType",display:"Spec Type, A-Z",displayedColumns:"specType",direction:"asc"},{value:"$root_specType",display:"Spec Type, Z-A",displayedColumns:"specType",direction:"desc"}]);function vn(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"span",19),t.TgZ(1,"button",20),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",21),t._uU(3," Export "),t.qZA(),t.qZA()}}function fn(e,a){1&e&&(t.TgZ(0,"div",22),t._UZ(1,"mat-progress-spinner",23),t.qZA())}function gn(e,a){1&e&&(t.TgZ(0,"th",24),t._uU(1,"Product/Substance Name"),t.qZA())}function bn(e,a){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.Oqu(i.productSubstanceName)}}function hn(e,a){1&e&&t._uU(0," View ")}var Cn=function(a){return["/impurities",a,"edit"]};function Sn(e,a){if(1&e&&(t.TgZ(0,"a",31),t._UZ(1,"mat-icon",32),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.Q6J("routerLink",t.VKq(1,Cn,i.id))}}var xn=function(a){return["/impurities",a]};function Tn(e,a){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",27),t.YNc(2,bn,2,1,"div",28),t.YNc(3,hn,1,0,"ng-template",null,29,t.W1O),t.qZA(),t._uU(5," \xa0\xa0 "),t.YNc(6,Sn,2,3,"a",30),t.qZA()),2&e){var i=t.MAs(4),r=t.oxw().$implicit,c=t.oxw();t.xp6(1),t.Q6J("routerLink",t.VKq(4,xn,r.id)),t.xp6(1),t.Q6J("ngIf",r.productSubstanceName)("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",c.isAdmin)}}function An(e,a){if(1&e&&(t.TgZ(0,"td",25),t.YNc(1,Tn,7,6,"div",26),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngIf",i.id)}}function Zn(e,a){1&e&&(t.TgZ(0,"th",24),t._uU(1," Source Type"),t.qZA())}function yn(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.sourceType," ")}}function En(e,a){1&e&&(t.TgZ(0,"th",24),t._uU(1," Source "),t.qZA())}function Dn(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.source," ")}}function Un(e,a){1&e&&(t.TgZ(0,"th",24),t._uU(1," Source ID"),t.qZA())}function Nn(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.sourceId," ")}}function Pn(e,a){1&e&&(t.TgZ(0,"th",24),t._uU(1," Type "),t.qZA())}function On(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.type," ")}}function wn(e,a){1&e&&(t.TgZ(0,"th",24),t._uU(1," Spec Type "),t.qZA())}function qn(e,a){if(1&e&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.specType," ")}}function Yn(e,a){1&e&&(t.TgZ(0,"th",33),t._uU(1," Parent Substance "),t.qZA())}var In=function(a){return["/substances",a]};function Mn(e,a){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",27),t.TgZ(2,"span",35),t._uU(3),t.qZA(),t.qZA(),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(2,In,i._parentSubstanceUuid)),t.xp6(2),t.Oqu(i._parentSubstanceName)}}function kn(e,a){if(1&e&&(t.TgZ(0,"td",25),t.YNc(1,Mn,4,4,"div",34),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesSubstanceList)}}function Qn(e,a){1&e&&(t.TgZ(0,"th",33),t._uU(1," Impurities Related Substance"),t.qZA())}function Ln(e,a){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij("\xa0\xa0\xa0\xa0",i.limitType,"\xa0")}}function Jn(e,a){if(1&e&&(t.TgZ(0,"span",40),t._UZ(1,"br"),t._uU(2),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(2),t.hij("\xa0\xa0\xa0\xa0",i.impurityType," ")}}function Rn(e,a){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"span",38),t.YNc(2,Ln,2,1,"span",26),t._uU(3),t.qZA(),t.YNc(4,Jn,3,1,"span",39),t.qZA()),2&e){var i=t.oxw().$implicit;t.xp6(2),t.Q6J("ngIf",i.limitType),t.xp6(1),t.AsE(" ",i.limitValue,"\xa0",i.unit," "),t.xp6(1),t.Q6J("ngIf",i.impurityType)}}function Fn(e,a){if(1&e&&(t.TgZ(0,"div",37),t.YNc(1,Rn,5,4,"div",26),t.qZA()),2&e){var i=a.$implicit,r=t.oxw(4);t.xp6(1),t.Q6J("ngIf",i.relatedSubstanceUuid===r.substanceUuid)}}function $n(e,a){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,Fn,2,1,"div",36),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesDetailsList)}}function zn(e,a){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,$n,2,1,"div",34),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesTestList)}}function Bn(e,a){if(1&e&&(t.TgZ(0,"td",25),t.YNc(1,zn,2,1,"div",34),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesSubstanceList)}}function jn(e,a){1&e&&t._UZ(0,"tr",41)}function Hn(e,a){1&e&&t._UZ(0,"tr",42)}var Gn=function(){return[5,10,25,100]},Wn=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m,l){var s;return(0,S.Z)(this,r),(s=i.call(this,n,o)).router=c,s.gaService=n,s.impuritiesService=o,s.generalService=u,s.authService=p,s.loadingService=m,s.dialog=l,s.countImpuritiesOut=new t.vpe,s.subscriptions=[],s.showSpinner=!1,s.totalImpurities=0,s.impuritiesCount=0,s.impuritiesTestTotal=0,s.pageIndex=0,s.pageSize=5,s.privateExport=!1,s.disableExport=!1,s.etag="",s.sortValues=_n,s.order="$root_productSubstanceName",s.ascDescDir="desc",s.displayedColumns=["productSubstanceName","sourceType","source","sourceid","type","specType","parentSubstance","relatedSubstance"],s}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this,o=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){n.isAdmin=u});this.subscriptions.push(o),this.substanceUuid&&(this.getImpuritiesBySubstanceUuid(),this.impuritiesListExportUrl())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n&&n.unsubscribe()})}},{key:"searchImpurities",value:function(){var n=this;this.privateSearchTerm=this.substanceUuid;var u=this.impuritiesService.searchImpurities(this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(p){n.setResultData(p.content),n.impurities=p.content,n.impuritiesCount=p.total,n.countImpuritiesOut.emit(n.impuritiesCount),n.etag=p.etag},function(p){},function(){u.unsubscribe()})}},{key:"getImpuritiesBySubstanceUuid",value:function(n){var o=this;this.showSpinner=!0,this.setPageEvent(n),this.impuritiesService.getImpuritiesBySubstanceUuid(this.order,this.page*this.pageSize,this.pageSize,this.substanceUuid,this.privateFacetParams).subscribe(function(p){o.impuritiesService.totalRecords=p.total,o.impurities=p.content,o.loadImpuritiesTestDetails(),o.setResultData(o.impurities),o.totalImpurities=p.total,o.etag=p.etag,o.countImpuritiesOut.emit(o.totalImpurities)}),this.showSpinner=!1}},{key:"loadImpuritiesTestDetails",value:function(){var n=this;this.impurities.forEach(function(o,u){o.impuritiesSubstanceList.forEach(function(p,m){p.substanceUuid&&p.substanceUuid===n.substanceUuid&&(p._parentSubstanceName=n.substanceName,p._parentSubstanceUuid=p.substanceUuid),p.impuritiesTestList.forEach(function(l,s){l.impuritiesDetailsList.forEach(function(f,v){if(null!=f.relatedSubstanceUuid&&f.relatedSubstanceUuid===n.substanceUuid){var D=n.generalService.getSubstanceNamesBySubstanceUuid(p.substanceUuid).subscribe(function(U){U.forEach(function(z,Va){!0===z.displayName&&(p._parentSubstanceName=z.name,p._parentSubstanceUuid=p.substanceUuid)})});n.subscriptions.push(D)}})})})})}},{key:"getSubstanceNames",value:function(n){var o;if(n){var u=this.generalService.getSubstanceNamesBySubstanceUuid(n).subscribe(function(p){p.forEach(function(l,s){!0===l.displayName&&(o=l.name)})});return this.subscriptions.push(u),o}}},{key:"export",value:function(){var n=this;if(this.etag){var o="xlsx",u=this.getApiExportUrl(this.etag,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceImpurities",entity:"impurities",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.impuritiesService.getApiExportUrl(n,o)}},{key:"impuritiesListExportUrl",value:function(){null!=this.substanceUuid&&(this.exportUrl=this.impuritiesService.getImpuritiesListExportUrl(this.substanceUuid))}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getImpuritiesBySubstanceUuid()}}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(h.F0),t.Y36(N.$),t.Y36(mn.q),t.Y36(J.m),t.Y36(O.e),t.Y36(q.b),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-impurities"]],inputs:{substanceUuid:"substanceUuid",substanceName:"substanceName"},outputs:{countImpuritiesOut:"countImpuritiesOut"},features:[t.qOj],decls:35,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","id","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","productSubstanceName"],["mat-header-cell","","mat-sort-header","","class","width100px",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","sourceType"],["matColumnDef","source"],["matColumnDef","sourceid"],["matColumnDef","type"],["matColumnDef","specType"],["matColumnDef","parentSubstance"],["mat-header-cell","","class","width100px",4,"matHeaderCellDef"],["matColumnDef","relatedSubstance"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header","",1,"width100px"],["mat-cell",""],[4,"ngIf"],["target","_blank",3,"routerLink"],[4,"ngIf","ngIfElse"],["noProdName",""],["target","_blank","matTooltip","Edit Impurities Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit Impurities Record",3,"routerLink"],["svgIcon","edit"],["mat-header-cell","",1,"width100px"],[4,"ngFor","ngForOf"],[1,"colorblue"],["class","font12px",4,"ngFor","ngForOf"],[1,"font12px"],[1,"colorgreen"],["class","colorpurple",4,"ngIf"],[1,"colorpurple"],["mat-header-row",""],["mat-row",""]],template:function(i,r){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Impurities Specs"),t.qZA(),t._uU(3," \xa0\xa0\xa0 "),t.YNc(4,vn,4,0,"span",1),t.qZA(),t.TgZ(5,"div",2),t.YNc(6,fn,2,0,"div",3),t.TgZ(7,"table",4),t.NdJ("matSortChange",function(n){return r.sortData(n)}),t.ynx(8,5),t.YNc(9,gn,2,0,"th",6),t.YNc(10,An,2,1,"td",7),t.BQk(),t.ynx(11,8),t.YNc(12,Zn,2,0,"th",6),t.YNc(13,yn,2,1,"td",7),t.BQk(),t.ynx(14,9),t.YNc(15,En,2,0,"th",6),t.YNc(16,Dn,2,1,"td",7),t.BQk(),t.ynx(17,10),t.YNc(18,Un,2,0,"th",6),t.YNc(19,Nn,2,1,"td",7),t.BQk(),t.ynx(20,11),t.YNc(21,Pn,2,0,"th",6),t.YNc(22,On,2,1,"td",7),t.BQk(),t.ynx(23,12),t.YNc(24,wn,2,0,"th",6),t.YNc(25,qn,2,1,"td",7),t.BQk(),t.ynx(26,13),t.YNc(27,Yn,2,0,"th",14),t.YNc(28,kn,2,1,"td",7),t.BQk(),t.ynx(29,15),t.YNc(30,Qn,2,0,"th",14),t.YNc(31,Bn,2,1,"td",7),t.BQk(),t.YNc(32,jn,1,0,"tr",16),t.YNc(33,Hn,1,0,"tr",17),t.qZA(),t.qZA(),t.TgZ(34,"mat-paginator",18),t.NdJ("page",function(n){return r.getImpuritiesBySubstanceUuid(n)}),t.qZA()),2&i&&(t.xp6(4),t.Q6J("ngIf",r.isAdmin&&r.totalRecords>0),t.xp6(2),t.Q6J("ngIf",r.showSpinner),t.xp6(1),t.Q6J("dataSource",r.paged),t.xp6(25),t.Q6J("matHeaderRowDef",r.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",r.displayedColumns),t.xp6(1),t.Q6J("length",r.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,Gn)))},directives:[b.O5,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,g.nU,d.Dz,d.ev,h.yS,b.sg,d.as,d.XQ,d.nj,d.Gk,E.NW],styles:['@charset "UTF-8";.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colorpurple[_ngcontent-%COMP%]{color:var(--regular-purple-color)}.colorblue[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.width100px[_ngcontent-%COMP%]{width:100px}ol[_ngcontent-%COMP%], li[_ngcontent-%COMP%]{margin-left:0;padding-left:0}\\200b[_ngcontent-%COMP%] .spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}']}),e}();function Kn(e,a){if(1&e&&t._UZ(0,"a",5),2&e){var i=t.oxw();t.Q6J("href",i.baseDomain+"/ginas/app/substance/"+i.substance.uuid+"#fdadetails",t.LSH)}}function Xn(e,a){1&e&&(t.TgZ(0,"div"),t._UZ(1,"br"),t.TgZ(2,"div",9),t.TgZ(3,"b"),t._uU(4,"No Product Found"),t.qZA(),t.qZA(),t._UZ(5,"br"),t.qZA())}function Vn(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"span",29),t.TgZ(1,"button",30),t.NdJ("click",function(){return t.CHM(i),t.oxw(3).export()}),t._UZ(2,"mat-icon",31),t._uU(3," Export All Products "),t.qZA(),t.qZA()}}function ta(e,a){1&e&&(t.TgZ(0,"div",32),t._UZ(1,"mat-progress-spinner",33),t.qZA())}function ea(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Product ID "),t.qZA())}function na(e,a){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij(" ",i.productNDC," ")}}function aa(e,a){1&e&&t._uU(0," (NO NDC) ")}var ia=function(a){return["/product",a,"edit"]};function oa(e,a){if(1&e&&(t.TgZ(0,"a",40),t._UZ(1,"mat-icon",41),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.Q6J("routerLink",t.VKq(1,ia,i.productId))}}var ra=function(a){return["/product",a]};function sa(e,a){if(1&e&&(t.TgZ(0,"span"),t.TgZ(1,"a",36),t.YNc(2,na,2,1,"span",37),t.YNc(3,aa,1,0,"ng-template",null,38,t.W1O),t.qZA(),t._uU(5," \xa0\xa0 "),t.YNc(6,oa,2,3,"a",39),t.qZA()),2&e){var i=t.MAs(4),r=t.oxw().$implicit,c=t.oxw(3);t.xp6(1),t.Q6J("routerLink",t.VKq(4,ra,r.productId)),t.xp6(1),t.Q6J("ngIf",r.productNDC)("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",c.isAdmin)}}function ca(e,a){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij(" ",i.productNDC," ")}}function ua(e,a){1&e&&t._uU(0," (NO NDC) ")}var la=function(a){return["/product-elist",a]};function pa(e,a){if(1&e&&(t.TgZ(0,"span"),t.TgZ(1,"a",36),t.YNc(2,ca,2,1,"span",37),t.YNc(3,ua,1,0,"ng-template",null,42,t.W1O),t.qZA(),t._UZ(5,"br"),t.TgZ(6,"span",43),t._uU(7),t.qZA(),t.qZA()),2&e){var i=t.MAs(4),r=t.oxw().$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(4,la,r.productId)),t.xp6(1),t.Q6J("ngIf",r.productNDC)("ngIfElse",i),t.xp6(5),t.hij("(",r.fromtable,")")}}function da(e,a){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,sa,7,6,"span",4),t.YNc(2,pa,8,6,"span",4),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngIf","GSRS"===i.fromtable),t.xp6(1),t.Q6J("ngIf","GSRS"!=i.fromtable)}}function ma(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Product Name "),t.qZA())}function _a(e,a){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.productName," ")}}function va(e,a){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,_a,2,1,"div",44),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngForOf",i.productNameAllList)}}function fa(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Labeler Name "),t.qZA())}function ga(e,a){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.labelerName," ")}}function ba(e,a){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.YNc(2,ga,2,1,"div",44),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.labelerName," "),t.xp6(1),t.Q6J("ngForOf",i.productCompanyAllList)}}function ha(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Country "),t.qZA())}function Ca(e,a){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.countryWithoutCode," ")}}function Sa(e,a){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,Ca,2,1,"div",44),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngForOf",i.productCompanyAllList)}}function xa(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Status "),t.qZA())}function Ta(e,a){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.status," ")}}function Aa(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Product Type "),t.qZA())}function Za(e,a){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.productType," ")}}function ya(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Ingredient Type "),t.qZA())}function Ea(e,a){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij(" ",i.ingredientType," ")}}function Da(e,a){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,Ea,2,1,"div",4),t.qZA()),2&e){var i=t.oxw().$implicit,r=t.oxw(4);t.xp6(1),t.Q6J("ngIf",r.substance.uuid===i.substanceUuid)}}function Ua(e,a){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,Da,2,1,"div",4),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngIf",i.substanceUuid)}}function Na(e,a){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,Ua,2,1,"div",44),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.Q6J("ngForOf",i.productIngredientAllList)}}function Pa(e,a){1&e&&(t.TgZ(0,"th",34),t._uU(1," Application Number "),t.qZA())}function Oa(e,a){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.qZA()),2&e){var i=a.$implicit;t.xp6(1),t.hij(" ",i.appTypeNumber," ")}}function wa(e,a){1&e&&t._UZ(0,"tr",45)}function qa(e,a){1&e&&t._UZ(0,"tr",46)}var Ya=function(){return[5,10,25,100]};function Ia(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"div",10),t.TgZ(2,"b"),t._uU(3),t.qZA(),t._uU(4," \xa0\xa0\xa0 "),t.TgZ(5,"span",11),t._uU(6),t.qZA(),t._uU(7," \xa0\xa0\xa0 "),t.YNc(8,Vn,4,0,"span",12),t.qZA(),t.TgZ(9,"div",13),t.YNc(10,ta,2,0,"div",14),t.TgZ(11,"table",15),t.NdJ("matSortChange",function(o){return t.CHM(i),t.oxw(2).sortData(o)}),t.ynx(12,16),t.YNc(13,ea,2,0,"th",17),t.YNc(14,da,3,2,"td",18),t.BQk(),t.ynx(15,19),t.YNc(16,ma,2,0,"th",17),t.YNc(17,va,2,1,"td",18),t.BQk(),t.ynx(18,20),t.YNc(19,fa,2,0,"th",17),t.YNc(20,ba,3,2,"td",18),t.BQk(),t.ynx(21,21),t.YNc(22,ha,2,0,"th",17),t.YNc(23,Sa,2,1,"td",18),t.BQk(),t.ynx(24,22),t.YNc(25,xa,2,0,"th",17),t.YNc(26,Ta,2,1,"td",18),t.BQk(),t.ynx(27,23),t.YNc(28,Aa,2,0,"th",17),t.YNc(29,Za,2,1,"td",18),t.BQk(),t.ynx(30,24),t.YNc(31,ya,2,0,"th",17),t.YNc(32,Na,2,1,"td",18),t.BQk(),t.ynx(33,25),t.YNc(34,Pa,2,0,"th",17),t.YNc(35,Oa,2,1,"td",18),t.BQk(),t.YNc(36,wa,1,0,"tr",26),t.YNc(37,qa,1,0,"tr",27),t.qZA(),t.qZA(),t.TgZ(38,"mat-paginator",28),t.NdJ("page",function(o){return t.CHM(i),t.oxw(2).getSubstanceProducts(o)}),t.qZA(),t.qZA()}if(2&e){var r=a.$implicit,c=t.oxw(2);t.s9C("label",r),t.xp6(3),t.hij(" ",r,""),t.xp6(3),t.Oqu(c.loadingStatus),t.xp6(2),t.Q6J("ngIf",c.isAdmin&&c.totalRecords>0),t.xp6(2),t.Q6J("ngIf",c.showSpinner),t.xp6(1),t.Q6J("dataSource",c.paged),t.xp6(25),t.Q6J("matHeaderRowDef",c.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",c.displayedColumns),t.xp6(1),t.Q6J("length",c.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(11,Ya))}}function Ma(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.YNc(1,Xn,6,0,"div",4),t.TgZ(2,"mat-tab-group",7),t.NdJ("selectedTabChange",function(n){return t.CHM(i),t.oxw().tabSelected(n)}),t.YNc(3,Ia,39,12,"mat-tab",8),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.MGl("label","Product (",r.productCount,")"),t.xp6(1),t.Q6J("ngIf",!0===r.loadingComplete&&!1===r.foundProvenanceList&&0===r.productCount),t.xp6(2),t.Q6J("ngForOf",r.provenanceList)}}function ka(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-application",47),t.NdJ("countApplicationOut",function(n){return t.CHM(i),t.oxw().getApplicationCount(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.MGl("label","Application (",r.applicationCount,")"),t.xp6(1),t.Q6J("bdnum",r.bdnum)}}function Qa(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-tab",6),t.TgZ(2,"app-substance-clinical-trials",48),t.NdJ("countClinicalTrialOut",function(n){return t.CHM(i),t.oxw().getClinicalTrialCount(n)}),t.qZA(),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.xp6(1),t.MGl("label","Clinical Trial (",r.clinicalTrialCount,")"),t.xp6(1),t.Q6J("bdnum",r.bdnum)("substanceUuid",r.substance.uuid)}}function La(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-clinical-trials-eu",49),t.NdJ("countClinicalTrialEuOut",function(n){return t.CHM(i),t.oxw().getClinicalTrialEuCount(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.MGl("label","Clinical Trial Europe (",r.clinicalTrialEuCount,")"),t.xp6(1),t.Q6J("bdnum",r.bdnum)("substanceUuid",r.substance.uuid)}}function Ja(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-adverseeventpt",50),t.NdJ("countAdvPtOut",function(n){return t.CHM(i),t.oxw().getAdvPtCount(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.MGl("label","Adverse Event PT (",r.advPtCount,")"),t.xp6(1),t.Q6J("bdnum",r.bdnum)("substanceName",r.substanceName)}}function Ra(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-adverseeventdme",51),t.NdJ("countAdvDmeOut",function(n){return t.CHM(i),t.oxw().getAdvDmeCount(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.MGl("label","Adverse Event DME (",r.advDmeCount,")"),t.xp6(1),t.Q6J("bdnum",r.bdnum)}}function Fa(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-adverseeventcvm",52),t.NdJ("countAdvCvmOut",function(n){return t.CHM(i),t.oxw().getAdvCvmCount(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.MGl("label","Adverse Event CVM (",r.advCvmCount,")"),t.xp6(1),t.Q6J("bdnum",r.bdnum)}}function $a(e,a){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-impurities",53),t.NdJ("countImpuritiesOut",function(n){return t.CHM(i),t.oxw().getImpuritiesCount(n)}),t.qZA(),t.qZA()}if(2&e){var r=t.oxw();t.MGl("label","Impurities Specs (",r.impuritiesCount,")"),t.xp6(1),t.Q6J("substanceUuid",r.substance.uuid)("substanceName",r.substanceName)}}var za=function(){var e=function(a){(0,x.Z)(r,a);var i=(0,T.Z)(r);function r(c,n,o,u,p,m,l){var s;return(0,S.Z)(this,r),(s=i.call(this,n,o)).router=c,s.gaService=n,s.productService=o,s.configService=u,s.authService=p,s.loadingService=m,s.dialog=l,s.productCount=0,s.applicationCount=0,s.clinicalTrialCount=0,s.clinicalTrialEuCount=0,s.advPtCount=0,s.advDmeCount=0,s.advCvmCount=0,s.impuritiesCount=0,s.provenance="",s.provenanceList="",s.datasourceList="",s.loadingStatus="",s.showSpinner=!1,s.foundProvenanceList=!1,s.loadingComplete=!1,s.substanceName="",s.privateExport=!1,s.disableExport=!1,s.etag="",s.etagAllExport="",s.sortValues=G.R,s.order="$root_productNDC",s.ascDescDir="desc",s.displayedColumns=["productNDC","productName","labelerName","country","status","productNameType","ingredientType","applicationNumber"],s}return(0,C.Z)(r,[{key:"ngOnInit",value:function(){var n=this;this.loadedComponents=this.configService.configData.loadedComponents||null,this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,k.q)(1)).subscribe(function(o){n.isAdmin=o}),this.substance&&this.substance.uuid&&(this.getSubstanceKey(),this.getProductProvenanceList(),this.privateSearch='root_productIngredientAllList_substanceUuid:"'+this.substance.uuid+'"',this.getSubstanceProducts(null,"initial")),this.baseDomain=this.configService.configData.apiUrlDomain}},{key:"ngAfterViewInit",value:function(){}},{key:"getApplicationCount",value:function(n){this.applicationCount=n}},{key:"getClinicalTrialCount",value:function(n){this.clinicalTrialCount=n}},{key:"getClinicalTrialEuCount",value:function(n){this.clinicalTrialEuCount=n}},{key:"getAdvPtCount",value:function(n){this.advPtCount=n}},{key:"getAdvDmeCount",value:function(n){this.advDmeCount=n}},{key:"getAdvCvmCount",value:function(n){this.advCvmCount=n}},{key:"getImpuritiesCount",value:function(n){this.impuritiesCount=n}},{key:"getSubstanceKey",value:function(){var n=this;this.substance&&(this.substanceName=this.substance._name,this.substance.codes.length>0&&this.substance.codes.forEach(function(o){o.codeSystem&&"BDNUM"===o.codeSystem&&o.type&&"PRIMARY"===o.type&&(n.bdnum=o.code)}))}},{key:"getProductProvenanceList",value:function(){var n=this;this.productService.getProductProvenanceList(this.substance.uuid).subscribe(function(o){n.provenanceList=o,n.provenanceList&&n.provenanceList.length>0&&(n.foundProvenanceList=!0),n.loadingComplete=!0})}},{key:"getSubstanceProducts",value:function(n,o){var u=this;this.setPageEvent(n),this.showSpinner=!0;var m=this.productService.getProducts(this.order,this.page*this.pageSize,this.pageSize,this.privateSearch,this.privateFacetParams).subscribe(function(l){o&&"initial"===o?u.etagAllExport=l.etag:(u.productService.totalRecords=l.total,u.setResultData(l.content),u.productCount=l.total,u.etag=l.etag)},function(l){u.showSpinner=!1,console.log("error")},function(){u.showSpinner=!1,m.unsubscribe()});this.loadingStatus=""}},{key:"export",value:function(){var n=this;if(this.etagAllExport){var o="xlsx",u=this.getApiExportUrl(this.etagAllExport,o);""!==this.authService.getUser()&&this.dialog.open(w.L,{width:"700px",data:{extension:o,type:"substanceProduct",entity:"products",hideOptionButtons:!0}}).afterClosed().subscribe(function(m){var l=m.name,s=m.id;l&&""!==l&&(n.loadingService.setLoading(!0),n.authService.startUserDownload(u,n.privateExport,l+"."+o,s).subscribe(function(v){n.loadingService.setLoading(!1),n.router.navigate(["/user-downloads/",v.id])},function(v){return n.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(n,o){return this.productService.getApiExportUrl(n,o)}},{key:"tabSelected",value:function(n){if(n){var u=n.tab.textLabel;null!=u&&(this.loadingStatus="Loading data...",this.provenance=u,this.paged=[],this.privateSearch='root_productIngredientAllList_substanceUuid:"'+this.substance.uuid+'" AND root_provenance:'+this.provenance,this.getSubstanceProducts())}}},{key:"sortData",value:function(n){var o=this;if(n.active){var u=this.displayedColumns.indexOf(n.active).toString();this.ascDescDir=n.direction,this.sortValues.forEach(function(p){p.displayedColumns&&p.direction&&o.displayedColumns[u]===p.displayedColumns&&o.ascDescDir===p.direction&&(o.order=p.value)}),this.getSubstanceProducts()}}}]),r}(P);return e.\u0275fac=function(i){return new(i||e)(t.Y36(h.F0),t.Y36(N.$),t.Y36(j.M),t.Y36(M.E),t.Y36(O.e),t.Y36(q.b),t.Y36(Y.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-products"]],features:[t.qOj],decls:12,vars:9,consts:[[1,"info-container"],["aria-label","FDA details","target","_blank",3,"href",4,"ngIf"],[1,"bordergray","mat-tab-style"],[3,"label",4,"ngIf"],[4,"ngIf"],["aria-label","FDA details","target","_blank",3,"href"],[3,"label"],[3,"selectedTabChange"],[3,"label",4,"ngFor","ngForOf"],[1,"padleft25px","colorblue"],[1,"divflex","padtop5px","padleft25px","font15px","colorblue"],[1,"colorred"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","productNDC","matSortDirection","desc","matSortDisableClear","",1,"font12px",3,"dataSource","matSortChange"],["matColumnDef","productNDC"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","productName"],["matColumnDef","labelerName"],["matColumnDef","country"],["matColumnDef","status"],["matColumnDef","productNameType"],["matColumnDef","ingredientType"],["matColumnDef","applicationNumber"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink"],[4,"ngIf","ngIfElse"],["noProdNDCGSRS",""],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink"],["svgIcon","edit"],["noProdNDC",""],[1,"font10px","colorgray"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row",""],[3,"bdnum","countApplicationOut"],[3,"bdnum","substanceUuid","countClinicalTrialOut"],[3,"bdnum","substanceUuid","countClinicalTrialEuOut"],[3,"bdnum","substanceName","countAdvPtOut"],[3,"bdnum","countAdvDmeOut"],[3,"bdnum","countAdvCvmOut"],[3,"substanceUuid","substanceName","countImpuritiesOut"]],template:function(i,r){1&i&&(t.TgZ(0,"div",0),t.YNc(1,Kn,1,1,"a",1),t.qZA(),t.TgZ(2,"div",2),t.TgZ(3,"mat-tab-group"),t.YNc(4,Ma,4,3,"mat-tab",3),t.YNc(5,ka,2,2,"mat-tab",3),t.YNc(6,Qa,3,3,"div",4),t.YNc(7,La,2,3,"mat-tab",3),t.YNc(8,Ja,2,3,"mat-tab",3),t.YNc(9,Ra,2,2,"mat-tab",3),t.YNc(10,Fa,2,2,"mat-tab",3),t.YNc(11,$a,2,3,"mat-tab",3),t.qZA(),t.qZA()),2&i&&(t.xp6(1),t.Q6J("ngIf",r.substance&&r.substance.uuid),t.xp6(3),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.adverseevents),t.xp6(1),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.adverseevents),t.xp6(1),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.adverseevents),t.xp6(1),t.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.impurities))},directives:[b.O5,I.SP,I.uX,b.sg,A.lW,Z.Hw,y.Ou,d.BZ,g.YE,d.w1,d.fO,d.ge,g.nU,d.Dz,d.ev,h.yS,d.as,d.XQ,d.nj,d.Gk,E.NW,Zt,zt,ue,Pe,We,dn,Wn],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.mat-tab-style[_ngcontent-%COMP%] .mat-tab-labels[_ngcontent-%COMP%], .mat-tab-style[_ngcontent-%COMP%] .mat-tab-label[_ngcontent-%COMP%], .mat-tab-style[_ngcontent-%COMP%] .mat-tab-link[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:var(--deep-purple-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.info-container[_ngcontent-%COMP%]{margin-bottom:15px}.info-container[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--deep-blue-color-rgb-2);text-decoration:none}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}"]}),e}(),Ba=_(33865),ja=_(43365),$=_(90587),Ha=(_(64061),function(){var e=(0,C.Z)(function a(){(0,S.Z)(this,a)});return e.\u0275fac=function(i){return new(i||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[b.ez,B.o0.forChild(za),d.p0,Ba.HT,E.TU,g.JX,ja.c,I.Nh,A.ot,Z.Ps,y.Cq,$.UX,$.u5,h.Bz]]}),e}())}}]); +//# sourceMappingURL=1421.9f98b15e8097e932.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1421.9f98b15e8097e932.js.map b/frontend/src/main/resources/static/1421.9f98b15e8097e932.js.map new file mode 100644 index 0000000..6b83689 --- /dev/null +++ b/frontend/src/main/resources/static/1421.9f98b15e8097e932.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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","names":["SubstanceDetailsBaseTableDisplay","gaService","service","o","pageEvent","this","page","pageIndex","pageSize","results","totalRecords","filtered","pageChangeFda","analyticsEventCategory","paged","i","length","push","r","SubstanceCardBaseFilteredList","factory","i0","ctx_r20","ctx_r41","ctx_r43","SubstanceApplicationComponent","router","authService","loadingService","applicationService","generalService","dialog","s","EventEmitter","applicationSearchSortValues","hasAnyRolesAsync","pipe","take","subscribe","n","isAdmin","response","bdnum","getApplicationCenterList","privateSearch","getApplicationBySubstanceKeyCenter","centerListOriginal","centerList","foundCenterList","loadingComplete","$event","textLabel","tab","loadingStatus","index","indexOf","center","slice","fromTable","searchType","setPageEvent","showSpinner","subscription","getApplicationAll","order","privateFacetParams","u","etagAllExport","pagingResponse","etag","total","applicationCount","setResultData","content","countApplicationOut","emit","console","log","unsubscribe","extension","url","getApiExportUrl","getUser","open","ExportDialogComponent","width","data","type","entity","hideOptionButtons","afterClosed","name","id","setLoading","startUserDownload","privateExport","navigate","getAppAllApiExportUrl","getUpdateApplicationUrl","exportUrl","getApplicationListExportUrl","sort","active","orderIndex","displayedColumns","toString","ascDescDir","direction","sortValues","forEach","sortValue","value","selectors","ctx","clinicalTrialSearchSortValues","display","ctx_r18","ctx_r27","ctx_r29","SubstanceClinicalTrialsComponent","clinicalTrialService","configService","loadedComponents","configData","substanceUuid","getSubstanceClinicalTrials","subscriptions","skip","subscriptionClinical","getClinicalTrials","searchTerm","cutoff","facets","clinicalTrialCount","countClinicalTrialOut","getClinicalTrialListExportUrl","ctx_r14","ctx_r23","ctx_r25","SubstanceClinicalTrialsEuropeComponent","getSubstanceClinicalTrialsEurope","clinicalTrialEuCount","countClinicalTrialEuOut","getApiEuropeExportUrl","cteu","_","clinicalTrialEuropeMeddraList","join","ctx_r16","SubstanceAdverseEventPtComponent","adverseEventService","adverseEventPtSearchSortValues","rolesSubscription","getAdverseEventPt","getFaersDashboardUrl","getFaersDashboardRecordByName","adverseEventPtListExportUrl","getAdverseEventShinyConfig","adverseEventCount","countAdvPtOut","getAdverseEventPtListExportUrl","getApiExportUrlPt","faersNameSubscription","substanceName","FAERSDashboardSubstanceName","FAERSDashboardAdverseEventUrl","FAERSDashboardReactionTerm","FAERSDashboardSearchTerm","adverseEventShinySubstanceNameDisplay","JSON","parse","adverseEventShinySubstanceNameURL","adverseEventShinySubstanceNameURLWithParam","decodeURIComponent","adverseEventShinyAdverseEventDisplay","adverseEventShinyAdverseEventURL","adverseEventShinyAdverseEventURLWithParam","result","SubstanceAdverseEventDmeComponent","l","adverseEventDmeSearchSortValues","getAdverseEventDme","adverseEventDmeListExportUrl","countAdvDmeOut","getApiExportUrlDme","getAdverseEventDmeListExportUrl","ctx_r12","SubstanceAdverseEventCvmComponent","adverseEventCvmSearchSortValues","getAdverseEventCvm","adverseEventCvmListExportUrl","countAdvCvmOut","getApiExportUrlCvm","getAdverseEventCvmListExportUrl","impuritiesSearchSortValues","SubstanceImpuritiesComponent","impuritiesService","getImpuritiesBySubstanceUuid","impuritiesListExportUrl","privateSearchTerm","searchImpurities","impurities","impuritiesCount","countImpuritiesOut","loadImpuritiesTestDetails","totalImpurities","element","impuritiesSubstanceList","elementSub","indexSub","_parentSubstanceName","_parentSubstanceUuid","impuritiesTestList","elementTest","indexTest","impuritiesDetailsList","elementDetail","indexDetail","relatedSubstanceUuid","subSubscription","getSubstanceNamesBySubstanceUuid","substanceNames","names","displayName","preferredTerm","getImpuritiesListExportUrl","ctx_r33","ctx_r74","ctx_r76","ctx_r77","ctx_r79","ctx_r81","ctx_r83","ctx_r85","ctx_r87","ctx_r89","ctx_r91","SubstanceProductsComponent","productService","productSearchSortValues","substance","uuid","getSubstanceKey","getProductProvenanceList","getSubstanceProducts","baseDomain","apiUrlDomain","advPtCount","advDmeCount","advCvmCount","_name","codes","codeSystem","code","provenanceList","foundProvenanceList","getProducts","productCount","provenance","SubstanceProductsModule","C","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatSortModule","MatInputModule","MatTabsModule","MatButtonModule","MatIconModule","MatProgressSpinnerModule","ReactiveFormsModule","FormsModule","RouterModule"],"sources":["./src/app/fda/substance-details/substance-products/substance-details-base-table-display.ts","./src/app/fda/substance-details/substance-products/substance-application/substance-application.component.html","./src/app/fda/substance-details/substance-products/substance-application/substance-application.component.ts","./src/app/fda/clinical-trials/clinical-trial-search-sort-values.ts","./src/app/fda/substance-details/substance-products/substance-clinical-trials/substance-clinical-trials.component.html","./src/app/fda/substance-details/substance-products/substance-clinical-trials/substance-clinical-trials.component.ts","./src/app/fda/substance-details/substance-products/substance-clinical-trials-eu/substance-clinical-trials-eu.component.html","./src/app/fda/substance-details/substance-products/substance-clinical-trials-eu/substance-clinical-trials-eu.component.ts","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventpt/substance-adverseeventpt.component.html","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventpt/substance-adverseeventpt.component.ts","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventdme/substance-adverseeventdme.component.html","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventdme/substance-adverseeventdme.component.ts","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component.html","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component.ts","./src/app/fda/impurities/impurities-search-sort-values.ts","./src/app/fda/substance-details/substance-products/substance-impurities/substance-impurities.component.html","./src/app/fda/substance-details/substance-products/substance-impurities/substance-impurities.component.ts","./src/app/fda/substance-details/substance-products/substance-products.component.html","./src/app/fda/substance-details/substance-products/substance-products.component.ts","./src/app/fda/substance-details/substance-products/substance-products.module.ts"],"sourcesContent":["import { Component, OnInit, Input, Injectable } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FormControl } from '@angular/forms';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\n\n@Injectable()\nexport class SubstanceDetailsBaseTableDisplay extends SubstanceCardBaseFilteredList implements OnInit {\n\n totalRecords: 0;\n public results: Array = [];\n isAdmin = false;\n exportUrl: string;\n\n @Input() bdnum: string;\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private service\n ) {\n super(gaService);\n // this.service = service;\n }\n\n ngOnInit(): void {\n }\n\n setPageEvent(pageEvent?: PageEvent): void {\n if (pageEvent != null) {\n this.page = pageEvent.pageIndex;\n this.pageSize = pageEvent.pageSize;\n }\n }\n\n setResultData(results: Array, totalRecords?: number): void {\n this.results = results;\n this.filtered = results;\n this.totalRecords = this.service.totalRecords;\n this.pageChangeFda();\n }\n\n pageChangeFda(pageEvent?: PageEvent, analyticsEventCategory?: string): void {\n if (pageEvent != null) {\n\n /*\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.page !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent(analyticsEventCategory, eventAction, 'pager', eventValue);\n */\n\n // this.page = pageEvent.pageIndex;\n // this.pageSize = pageEvent.pageSize;\n }\n\n this.paged = [];\n\n if (this.filtered) {\n for (let i = 0; i < this.filtered.length; i++) {\n if (this.filtered[i] != null) {\n this.paged.push(this.filtered[i]);\n } else {\n break;\n }\n }\n }\n }\n\n}\n","
\n
\n
No Application Found
\n
\n
\n\n\n \n\n
\n {{appCenter}}\n    \n {{loadingStatus}}\n    \n \n 0\">\n \n \n\n \n
\n\n
\n\n \n
\n \n \n
\n\n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Application Type \n \n {{application.appType}}\n   \n \n \n \n \n \n {{application.appType}}\n
(Integrity)\n
\n
Application Number {{application.appNumber}} Product Name \n\n
\n \n
\n {{prodName.productName}}\n
\n
\n
Sponsor Name {{application.sponsorName}} Application Status {{application.appStatus}} Application Sub Type {{application.appSubType}}
\n
\n \n \n
\n
\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { PageEvent } from '@angular/material/paginator';\nimport { take } from 'rxjs/operators';\nimport { Sort } from '@angular/material/sort';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { ApplicationService } from '../../../application/service/application.service';\nimport { GeneralService } from '../../../service/general.service';\nimport { Application } from '../../../application/model/application.model';\nimport { SubstanceDetailsBaseTableDisplay } from '../../substance-products/substance-details-base-table-display';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { applicationSearchSortValues } from '../../../application/applications-browse/application-search-sort-values';\n\n@Component({\n selector: 'app-substance-application',\n templateUrl: './substance-application.component.html',\n styleUrls: ['./substance-application.component.scss']\n})\n\nexport class SubstanceApplicationComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n application: any;\n applicationCount = 0;\n totalApplication = 0;\n centerList: Array = [];\n centerListOriginal: Array = [];\n center = '';\n fromTable = '';\n loadingStatus = '';\n showSpinner = false;\n foundCenterList = false;\n loadingComplete = false;\n // result: any;\n public privateSearch?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n @Input() bdnum: string;\n @Output() countApplicationOut: EventEmitter = new EventEmitter();\n public sortValues = applicationSearchSortValues;\n order = '$root_appNumber';\n ascDescDir = 'desc';\n displayedColumns: string[] = [\n 'appType',\n 'appNumber',\n 'productName',\n 'sponsorName',\n 'appStatus',\n 'applicationSubType'\n ];\n\n constructor(\n private router: Router,\n public authService: AuthService,\n private loadingService: LoadingService,\n public gaService: GoogleAnalyticsService,\n private applicationService: ApplicationService,\n private generalService: GeneralService,\n private dialog: MatDialog\n ) {\n super(gaService, applicationService);\n }\n\n ngOnInit() {\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n\n if (this.bdnum) {\n this.getApplicationCenterList();\n\n this.privateSearch = 'root_applicationProductList_applicationIngredientList_substanceKey:'\n + this.bdnum;\n this.getApplicationBySubstanceKeyCenter(null, 'initial');\n }\n }\n\n getApplicationCenterList(): void {\n this.applicationService.getApplicationCenterList(this.bdnum).subscribe(results => {\n this.centerListOriginal = results;\n this.centerList = results;\n if (this.centerList && this.centerList.length > 0) {\n this.foundCenterList = true;\n\n // Replace 'Darrts' to 'Integrity' and 'SRS' to 'GSRS'\n /* this.centerList.forEach((cent, index) => {\n if (cent != null) {\n let centerReplace = '';\n if (cent.indexOf('Darrts') > 0) {\n centerReplace = cent.replace('Darrts', 'Integrity');\n } else if (cent.indexOf('SRS') > 0) {\n centerReplace = cent.replace('SRS', 'GSRS');\n }\n\n if (centerReplace.length > 0) {\n this.centerList[index] = centerReplace;\n }\n }\n }); */\n }\n this.loadingComplete = true;\n });\n }\n\n applicationTabSelected($event) {\n if ($event) {\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n // Get Center and fromTable/Source from Tab Label\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n const index = textLabel.indexOf(' ');\n this.center = textLabel.slice(0, index);\n this.fromTable = textLabel.slice(index + 1, textLabel.length);\n\n //let fromReplace = '';\n /*\n if (this.fromTable.indexOf('Integrity') >= 0) {\n fromReplace = this.fromTable.replace('Integrity', 'Darrts');\n } else if (this.fromTable.indexOf('GSRS') >= 0) {\n fromReplace = this.fromTable.replace('GSRS', 'SRS');\n }\n if (fromReplace && fromReplace.length > 0) {\n this.fromTable = fromReplace;\n }\n */\n }\n\n // set the current result data to empty or null.\n this.paged = [];\n\n this.privateSearch = 'root_applicationProductList_applicationIngredientList_substanceKey:'\n + this.bdnum + ' AND root_center:' + this.center + ' AND root_fromTable: ' + this.fromTable;\n\n this.getApplicationBySubstanceKeyCenter();\n }\n }\n\n // GSRS 3.0\n getApplicationBySubstanceKeyCenter(pageEvent?: PageEvent, searchType?: string) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n\n // if (searchType && searchType === 'initial') {\n // this.pageSize = 100;\n // }\n const subscription = this.applicationService.getApplicationAll(\n this.order,\n skip,\n this.pageSize,\n this.privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse.etag;\n } else {\n this.applicationService.totalRecords = pagingResponse.total;\n this.applicationCount = pagingResponse.total;\n\n this.setResultData(pagingResponse.content);\n\n this.etag = pagingResponse.etag;\n this.countApplicationOut.emit(this.applicationCount);\n }\n }, error => {\n this.showSpinner = false; // Stop progress spinner\n console.log('error');\n }, () => {\n this.showSpinner = false; // Stop progress spinner\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n // this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getSubstanceApplications(pageEvent ?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.applicationService.getSubstanceApplications(this.bdnum, this.center, this.fromTable, this.page, this.pageSize)\n .subscribe(results => {\n this.setResultData(results);\n this.applicationCount = this.totalRecords;\n this.countApplicationOut.emit(this.applicationCount);\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n });\n */\n /*\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.clinicaltrials, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.countUpdate.emit(clinicaltrials.length);\n });\n\n}\n*/\n\n export() {\n if (this.etagAllExport) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceApplication', 'entity': 'applications', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.applicationCount\n }\n };\n const params = { 'total': this.applicationCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.applicationService.getAppAllApiExportUrl(etag, extension);\n }\n\n get updateApplicationUrl(): string {\n return this.applicationService.getUpdateApplicationUrl();\n }\n\n applicationListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.applicationService.getApplicationListExportUrl(this.bdnum);\n }\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n // Get Sort Values from applicationSearchSortValues\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getApplicationBySubstanceKeyCenter();\n }\n return;\n }\n}\n","export const clinicalTrialSearchSortValues = [\n {\n 'value': 'default',\n 'display': 'Relevance'\n },\n {\n 'value': '^root_trialNumber',\n 'display': 'NCT Number, Ascending',\n 'displayedColumns': 'trialNumber',\n 'direction': 'asc'\n },\n {\n 'value': '$root_trialNumber',\n 'display': 'NCT Number, Descending',\n 'displayedColumns': 'trialNumber',\n 'direction': 'desc'\n },\n {\n 'value': '^root_title',\n 'display': 'Title, Ascending',\n 'displayedColumns': 'title',\n 'direction': 'asc'\n },\n {\n 'value': '$root_title',\n 'display': 'Title, Descending',\n 'displayedColumns': 'title',\n 'direction': 'desc'\n },\n {\n 'value': '^root_sponsor',\n 'display': 'Sponsor Name, Ascending',\n 'displayedColumns': 'sponsor',\n 'direction': 'asc'\n },\n {\n 'value': '$root_sponsor',\n 'display': 'Sponsor Name, Descending',\n 'displayedColumns': 'sponsor',\n 'direction': 'desc'\n },\n {\n 'value': '^root_sponsorName',\n 'display': 'Sponsor Name, Ascending',\n 'displayedColumns': 'sponsorName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_sponsorName',\n 'display': 'Sponsor Name, Descending',\n 'displayedColumns': 'sponsorName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_conditions',\n 'display': 'Conditions, Ascending',\n 'displayedColumns': 'conditions',\n 'direction': 'asc'\n },\n {\n 'value': '$root_conditions',\n 'display': 'Conditions, Descending',\n 'displayedColumns': 'conditions',\n 'direction': 'desc'\n },\n {\n 'value': '^root_clinicalTrialEuropeMeddraList_meddraTerm',\n 'display': 'Conditions, Ascending',\n 'displayedColumns': 'conditionsEU',\n 'direction': 'asc'\n },\n {\n 'value': '$root_clinicalTrialEuropeMeddraList_meddraTerm',\n 'display': 'Conditions, Descending',\n 'displayedColumns': 'conditionsEU',\n 'direction': 'desc'\n }\n];\n","
\n No Clinical Trial US Found\n
\n\n
0\">\n
\n Clinical Trials US\n    \n
\n
\n \n \n \n \n
\n\n
\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
\n \n \n \n Trial Number\n\n {{clinical.trialNumber}}\n Title {{clinical.title}} Sponsor Name {{clinical.sponsor}} Conditions {{clinical.conditions}} Outcome Measures {{clinical.outcomeMeasures}}
\n
\n\n\n\n
\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ClinicalTrialService } from '../../../clinical-trials/clinical-trial/clinical-trial.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { Sort } from '@angular/material/sort';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { Subscription, Observable, Subject } from 'rxjs';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { take } from 'rxjs/operators';\nimport { clinicalTrialSearchSortValues } from '../../../clinical-trials/clinical-trial-search-sort-values';\n\n@Component({\n selector: 'app-substance-clinical-trials',\n templateUrl: './substance-clinical-trials.component.html',\n styleUrls: ['./substance-clinical-trials.component.scss']\n})\n\nexport class SubstanceClinicalTrialsComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n\n private privateFacetParams: FacetParam;\n clinicalTrialCount = 0;\n showSpinner = false;\n private subscriptions: Array = [];\n\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n loadedComponents: LoadedComponents;\n loadingStatus = '';\n public sortValues = clinicalTrialSearchSortValues;\n order = '$root_trialNumber';\n ascDescDir = 'desc';\n\n @Input() substanceUuid: string;\n @Output() countClinicalTrialOut: EventEmitter = new EventEmitter();\n\n displayedColumns: string[] = [\n 'edit',\n 'trialNumber',\n 'title',\n 'sponsor',\n 'conditions',\n 'outcomemeasures'\n ];\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private clinicalTrialService: ClinicalTrialService,\n private configService: ConfigService,\n public authService: AuthService,\n private loadingService: LoadingService,\n private router: Router,\n private dialog: MatDialog\n ) {\n super(gaService, clinicalTrialService);\n }\n\n ngOnInit() {\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n if (this.substanceUuid) {\n this.getSubstanceClinicalTrials(null, 'initial');\n }\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getSubstanceClinicalTrials(pageEvent?: PageEvent, searchType?: string): void {\n this.setPageEvent(pageEvent);\n const skip = this.page * this.pageSize;\n this.showSpinner = true; // Start progress spinner\n const subscriptionClinical = this.clinicalTrialService.getClinicalTrials({\n searchTerm: this.substanceUuid,\n cutoff: null,\n type: \"substanceKey\",\n order: this.order,\n pageSize: this.pageSize,\n facets: this.privateFacetParams,\n skip: skip\n })\n .subscribe(pagingResponse => {\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse.etag;\n }\n // AW removed else clause so this runs every time.\n // This makes it work, but AW might need to understand the\n // intention better.\n // else {\n this.clinicalTrialService.totalRecords = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.clinicalTrialCount = pagingResponse.total;\n this.etag = pagingResponse.etag;\n // }\n\n this.countClinicalTrialOut.emit(this.clinicalTrialCount);\n this.showSpinner = false; // Stop progress spinner\n });\n\n /*\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.clinicaltrials, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.countUpdate.emit(clinicaltrials.length);\n });\n */\n this.subscriptions.push(subscriptionClinical);\n }\n\n\n export() {\n if (this.etagAllExport) {\n const extension = 'ctus.xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceClinicalTrialUS', 'entity': 'clinicaltrialsus', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.clinicalTrialCount\n }\n };\n const params = { 'total': this.clinicalTrialCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.clinicalTrialService.getApiExportUrl(etag, extension);\n }\n\n\n\n clinicalTrialListExportUrl() {\n if (this.substanceUuid != null) {\n this.exportUrl = this.clinicalTrialService.getClinicalTrialListExportUrl(this.substanceUuid);\n }\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getSubstanceClinicalTrials();\n }\n return;\n }\n\n /*\n // copied from products but has no effect. Make approaoch uniform in future.\n tabSelected($event) {\n if ($event) {\n console.log(\"EVENT\");\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n this.paged = [];\n this.getSubstanceClinicalTrials();\n }\n\n }\n }\n*/\n\n}\n","
\n No Clinical Trial Europe Found\n
\n\n
0\">\n
\n Clinical Trials Europe\n    \n
\n
\n \n \n \n \n
\n\n
\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Eudract Number\n \n Title {{clinical.title}} Sponsor Name {{clinical.sponsorName}} Conditions{{joinMeddraTerms(clinical)}}
\n
\n\n\n\n
\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ClinicalTrialService } from '../../../clinical-trials/clinical-trial/clinical-trial.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { Sort } from '@angular/material/sort';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { Subscription, Observable, Subject } from 'rxjs';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { take } from 'rxjs/operators';\nimport * as _ from 'lodash';\nimport { clinicalTrialSearchSortValues } from '../../../clinical-trials/clinical-trial-search-sort-values';\n\n@Component({\n selector: 'app-substance-clinical-trials-eu',\n templateUrl: './substance-clinical-trials-eu.component.html',\n styleUrls: ['./substance-clinical-trials-eu.component.scss']\n})\n\nexport class SubstanceClinicalTrialsEuropeComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n private privateFacetParams: FacetParam;\n clinicalTrialEuCount = 0;\n showSpinner = false;\n private subscriptions: Array = [];\n\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n loadedComponents: LoadedComponents;\n loadingStatus = '';\n public sortValues = clinicalTrialSearchSortValues;\n order = '$root_trialNumber';\n ascDescDir = 'desc';\n\n @Input() substanceUuid: string;\n @Output() countClinicalTrialEuOut: EventEmitter = new EventEmitter();\n\n displayedColumns: string[] = [\n 'trialNumber',\n 'title',\n 'sponsorName',\n 'conditionsEU'\n ];\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private clinicalTrialService: ClinicalTrialService,\n private configService: ConfigService,\n public authService: AuthService,\n private loadingService: LoadingService,\n private router: Router,\n private dialog: MatDialog\n ) {\n super(gaService, clinicalTrialService);\n }\n\n ngOnInit() {\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n if (this.substanceUuid) {\n this.getSubstanceClinicalTrialsEurope(null, 'initial');\n }\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getSubstanceClinicalTrialsEurope(pageEvent?: PageEvent, searchType?: string): void {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n\n const subscriptionClinical = this.clinicalTrialService.getSubstanceClinicalTrialsEurope(\n this.substanceUuid,\n this.page,\n this.pageSize,\n this.order\n )\n .subscribe(pagingResponse => {\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse['etag'];\n }\n this.setResultData(pagingResponse['content']);\n this.clinicalTrialEuCount = pagingResponse['total'];\n this.countClinicalTrialEuOut.emit(this.clinicalTrialEuCount);\n this.showSpinner = false; // Stop progress spinner\n });\n /*\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.clinicaltrials, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.countUpdate.emit(clinicaltrials.length);\n });\n */\n this.subscriptions.push(subscriptionClinical);\n }\n\n\n export() {\n if (this.etagAllExport) {\n const extension = 'cteu.xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceClinicalTrialEU', 'entity' : 'clinicaltrialseurope', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.clinicalTrialEuCount\n }\n };\n const params = { 'total': this.clinicalTrialEuCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.clinicalTrialService.getApiEuropeExportUrl(etag, extension);\n }\n\n\n// delete this?\n// clinicalTrialListExportUrl() {\n// if (this.substanceUuid != null) {\n// this.exportUrl = this.clinicalTrialService.getClinicalTrialEuropeListExportUrl(this.substanceUuid);\n// }\n// }\n\n /*\n // copied from products but has no effect. Make approaoch uniform in future.\n tabSelected($event) {\n if ($event) {\n console.log(\"EVENT\");\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n this.paged = [];\n this.getSubstanceClinicalTrials();\n }\n\n */\n joinMeddraTerms(cteu: any) {\n if(cteu) {\n // const a =[{\"meddraTerm\": \"meddraTerm1\"}, {\"meddraTerm\": \"meddraTerm2\"},{\"meddraTerm\": \"meddraTerm3\"},{\"meddraTerm\": \"meddraTerm4\"}];\n return _.map(cteu.clinicalTrialEuropeMeddraList, 'meddraTerm').join(\"|\");\n }\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getSubstanceClinicalTrialsEurope();\n }\n return;\n }\n}","
\n\n
\n
\n Adverse Event PT\n
\n
0\">\n \n \n 0\">\n \n \n
\n \n
\n\n
\n\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
PT Term \n {{adverse.ptTerm}}\n \n \n analytics\n \n \n Prim SOC {{adverse.primSoc}} Case Count {{adverse.caseCount}} PT Count \n
\n \n
\n
\n FAERS Public Dashboard\n
\n \n
\n
\n
PRR {{adverse.prr | number : '.2-2'}}
\n
\n \n ","import { Component, OnInit, OnDestroy, Output, EventEmitter, Input } from '@angular/core';\nimport { TitleCasePipe } from '@angular/common';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { AdverseEventService } from '../../../../adverse-event/service/adverseevent.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../../substance-products/substance-details-base-table-display';\nimport { Sort } from '@angular/material/sort';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ConfigService } from '@gsrs-core/config';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { AuthService } from '@gsrs-core/auth';\nimport { Subscription } from 'rxjs';\nimport { adverseEventPtSearchSortValues } from '../../../../adverse-event/adverse-events-pt-browse/adverse-events-pt-search-sort-values';\n\n@Component({\n selector: 'app-substance-adverseeventpt',\n templateUrl: './substance-adverseeventpt.component.html',\n styleUrls: ['./substance-adverseeventpt.component.scss']\n})\n\nexport class SubstanceAdverseEventPtComponent extends SubstanceDetailsBaseTableDisplay implements OnInit, OnDestroy {\n @Input() bdnum: string;\n @Input() substanceName: string;\n @Output() countAdvPtOut: EventEmitter = new EventEmitter();\n\n adverseEventCount = 0;\n order = '$root_ptCount';\n ascDescDir = 'desc';\n showSpinner = false;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n public sortValues = adverseEventPtSearchSortValues;\n privateExport = false;\n disableExport = false;\n etag = '';\n loadingStatus = '';\n private subscriptions: Array = [];\n\n adverseEventShinySubstanceNameDisplay = false;\n adverseEventShinyAdverseEventDisplay = false;\n adverseEventShinySubstanceNameURL: string;\n adverseEventShinyAdverseEventURL: string;\n adverseEventShinySubstanceNameURLWithParam: string;\n adverseEventShinyAdverseEventURLWithParam: string;\n\n // FAERS DASHBOARD\n FAERSDashboardAdverseEventUrl: string;\n FAERSDashboardSubstanceName: string;\n FAERSDashboardSearchTerm = \"/select/Search%20Term/\"; // FAERS Adverse Event 'Substance Name'\n FAERSDashboardReactionTerm = \"/select/Reaction%20Term/\"; // GSRS Adverse Event 'PT Term'\n FAERSDashboardReactionGroup = \"/select/Reaction%20Group/\"; // GSRS Adverse Event 'Prim SOC'\n\n filtered: Array;\n displayedColumns: string[] = [\n 'ptTerm',\n 'primSoc',\n 'caseCount',\n 'ptCount',\n 'prr'\n ];\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private adverseEventService: AdverseEventService,\n private loadingService: LoadingService,\n private configService: ConfigService,\n private authService: AuthService,\n private dialog: MatDialog\n ) {\n super(gaService, adverseEventService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n\n if (this.bdnum) {\n this.getAdverseEventPt();\n\n // FAERS DASHBOARD\n this.getFaersDashboardUrl();\n this.getFaersDashboardRecordByName();\n\n this.adverseEventPtListExportUrl();\n this.getAdverseEventShinyConfig();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getAdverseEventPt(pageEvent?: PageEvent) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n const privateSearch = 'root_substanceKey:' + this.bdnum;\n const subscription = this.adverseEventService.getAdverseEventPt(\n this.order,\n skip,\n this.pageSize,\n privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.adverseEventService.totalRecords = pagingResponse.total;\n this.adverseEventCount = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.etag = pagingResponse.etag;\n this.countAdvPtOut.emit(this.adverseEventCount);\n }, error => {\n this.showSpinner = false; // Stop progress spinner\n console.log('error');\n }, () => {\n this.showSpinner = false; // Stop progress spinner\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n // this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getSubstanceAdverseEventPt(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n this.adverseEventService.getSubstanceAdverseEventPtAdv(this.bdnum, this.page, this.pageSize,\n this.orderBy, this.ascDescDir).subscribe(results => {\n this.setResultData(results);\n this.advPtCount = this.totalRecords;\n this.countAdvPtOut.emit(this.advPtCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n adverseEventPtListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.adverseEventService.getAdverseEventPtListExportUrl(this.bdnum);\n }\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getAdverseEventPt();\n }\n return;\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceAdverseEventPt', 'entity': 'adverseeventpt', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.adverseEventCount\n }\n };\n const params = { 'total': this.adverseEventCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlPt(etag, extension);\n }\n\n getFaersDashboardRecordByName(): void {\n // Get FAERS Name from database table that contains 'P' and 'G' in name.\n // Example: Acetazolamide (G) instead of GSRS name Acetazolamide\n const faersNameSubscription = this.adverseEventService.getFaersDashboardRecordByName(this.substanceName).subscribe(results => {\n if (results) {\n if (results.name) {\n this.FAERSDashboardSubstanceName = results.name;\n this.FAERSDashboardAdverseEventUrl = this.FAERSDashboardAdverseEventUrl + results.name + this.FAERSDashboardReactionTerm;\n }\n }\n });\n this.subscriptions.push(faersNameSubscription);\n }\n\n getFaersDashboardUrl(): void {\n if (this.configService.configData) {\n if (this.configService.configData.FAERSDashboardAdverseEventUrl\n && this.configService.configData.FAERSDashboardAdverseEventUrl !== null) {\n const faersUrlConfig = this.configService.configData.FAERSDashboardAdverseEventUrl;\n\n // FULL FAERS DASHBOARD URL\n // faersUrl + /select/Search%20Term/ + FaersName + /select/Reaction%20Term/ + ptTerm + /select/Reaction%20Group/ + primSoc;\n this.FAERSDashboardAdverseEventUrl = faersUrlConfig + this.FAERSDashboardSearchTerm;\n }\n }\n }\n\n getAdverseEventShinyConfig(): void {\n if (this.configService.configData) {\n\n // Analysis by Substance in Shiny Config\n if (this.configService.configData.adverseEventShinySubstanceNameDisplay\n && this.configService.configData.adverseEventShinySubstanceNameDisplay !== null) {\n this.adverseEventShinySubstanceNameDisplay = JSON.parse(this.configService.configData.adverseEventShinySubstanceNameDisplay);\n }\n if (this.configService.configData.adverseEventShinySubstanceNameURL\n && this.configService.configData.adverseEventShinySubstanceNameURL !== null) {\n this.adverseEventShinySubstanceNameURL = this.configService.configData.adverseEventShinySubstanceNameURL;\n this.adverseEventShinySubstanceNameURLWithParam = this.adverseEventShinySubstanceNameURL + decodeURIComponent(this.substanceName);\n }\n\n // Analysis by Adverse Event in Shiny Config\n if (this.configService.configData.adverseEventShinyAdverseEventDisplay\n && this.configService.configData.adverseEventShinyAdverseEventDisplay !== null) {\n this.adverseEventShinyAdverseEventDisplay = JSON.parse(this.configService.configData.adverseEventShinyAdverseEventDisplay);\n }\n if (this.configService.configData.adverseEventShinyAdverseEventURL\n && this.configService.configData.adverseEventShinyAdverseEventURL !== null) {\n this.adverseEventShinyAdverseEventURL = this.configService.configData.adverseEventShinyAdverseEventURL;\n this.adverseEventShinyAdverseEventURLWithParam = this.adverseEventShinyAdverseEventURL;\n }\n\n }\n }\n\n getDecodeURL(value: string): string {\n let result = '';\n if (value !== null) {\n result = decodeURIComponent(value);\n }\n return result;\n }\n\n}\n\n","
\n Adverse Event DME\n    \n \n \n 0\">\n \n \n
\n\n
\n\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
DME Reactions {{adverse.dmeReactions}} PT Term Meddra {{adverse.ptTermMeddra}} Case Count {{adverse.caseCount}} Dme Count {{adverse.dmeCount}} Dme Count Percent {{adverse.dmeCountPercent}} Weighted Average PRR {{adverse.weightedAvgPrr | number : '.2-2'}}
\n
\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Sort } from '@angular/material/sort';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { AdverseEventService } from '../../../../adverse-event/service/adverseevent.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { Subscription } from 'rxjs';\nimport { adverseEventDmeSearchSortValues } from '../../../../adverse-event/adverse-events-dme-browse/adverse-events-dme-search-sort-values';\n\n@Component({\n selector: 'app-substance-adverseeventdme',\n templateUrl: './substance-adverseeventdme.component.html',\n styleUrls: ['./substance-adverseeventdme.component.scss']\n})\n\nexport class SubstanceAdverseEventDmeComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n\n @Input() bdnum: string;\n @Output() countAdvDmeOut: EventEmitter = new EventEmitter();\n\n adverseEventCount = 0;\n order = '$root_dmeCount';\n ascDescDir = 'desc';\n showSpinner = false;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n loadingStatus = '';\n public sortValues = adverseEventDmeSearchSortValues;\n private subscriptions: Array = [];\n\n displayedColumns: string[] = [\n 'dmeReactions', 'ptTermMeddra', 'caseCount', 'dmeCount', 'dmeCountPercent', 'weightedAvgPrr'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private adverseEventService: AdverseEventService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, adverseEventService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n\n if (this.bdnum) {\n this.getAdverseEventDme();\n // this.getSubstanceAdverseEventDme();\n this.adverseEventDmeListExportUrl();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getAdverseEventDme(pageEvent?: PageEvent) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n const privateSearch = 'root_substanceKey:' + this.bdnum;\n const subscription = this.adverseEventService.getAdverseEventDme(\n this.order,\n skip,\n this.pageSize,\n privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.adverseEventService.totalRecords = pagingResponse.total;\n this.adverseEventCount = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.etag = pagingResponse.etag;\n this.countAdvDmeOut.emit(this.adverseEventCount);\n }, error => {\n this.showSpinner = false; // Stop progress spinner\n console.log('error');\n }, () => {\n this.showSpinner = false; // Stop progress spinner\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n // this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getSubstanceAdverseEventDme(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.adverseEventService.getSubstanceAdverseEventDme(this.bdnum, this.page, this.pageSize).subscribe(results => {\n this.setResultData(results);\n this.advDmeCount = this.totalRecords;\n this.countAdvDmeOut.emit(this.advDmeCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString();\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getAdverseEventDme();\n }\n return;\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceAdverseEventDme','entity': 'adverseeventdme', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.adverseEventCount\n }\n };\n const params = { 'total': this.adverseEventCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlDme(etag, extension);\n }\n\n adverseEventDmeListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.adverseEventService.getAdverseEventDmeListExportUrl(this.bdnum);\n }\n }\n\n}\n","
\n Adverse Event CVM\n    \n \n \n 0\">\n \n \n
\n\n\n\n
\n\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Adverse Event {{adverse.adverseEvent}} Species {{adverse.species}} Adverse Event Count {{adverse.aeCount}} Route of Administration {{adverse.routeOfAdmin}}
\n
\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Sort } from '@angular/material/sort';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { AdverseEventService } from '../../../../adverse-event/service/adverseevent.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { Subscription } from 'rxjs';\nimport { adverseEventCvmSearchSortValues } from '../../../../adverse-event/adverse-events-cvm-browse/adverse-events-cvm-search-sort-values';\n\n@Component({\n selector: 'app-substance-adverseeventcvm',\n templateUrl: './substance-adverseeventcvm.component.html',\n styleUrls: ['./substance-adverseeventcvm.component.scss']\n})\n\nexport class SubstanceAdverseEventCvmComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n\n @Input() bdnum: string;\n @Output() countAdvCvmOut: EventEmitter = new EventEmitter();\n\n adverseEventCount = 0;\n order = '$root_aeCount';\n ascDescDir = 'desc';\n showSpinner = false;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n loadingStatus = '';\n public sortValues = adverseEventCvmSearchSortValues;\n private subscriptions: Array = [];\n\n displayedColumns: string[] = [\n 'adverseEvent', 'species', 'adverseEventCount', 'routeOfAdmin'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private adverseEventService: AdverseEventService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, adverseEventService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n if (this.bdnum) {\n this.getAdverseEventCvm();\n // this.getSubstanceAdverseEventCvm();\n this.adverseEventCvmListExportUrl();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getAdverseEventCvm(pageEvent?: PageEvent) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n const privateSearch = 'root_substanceKey:' + this.bdnum;\n const subscription = this.adverseEventService.getAdverseEventCvm(\n this.order,\n skip,\n this.pageSize,\n privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.adverseEventService.totalRecords = pagingResponse.total;\n this.adverseEventCount = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.etag = pagingResponse.etag;\n this.countAdvCvmOut.emit(this.adverseEventCount);\n }, error => {\n this.showSpinner = false; // Stop progress spinner\n console.log('error');\n }, () => {\n this.showSpinner = false; // Stop progress spinner\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n // this.showSpinner = false; // Stop progress spinner\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getAdverseEventCvm();\n }\n return;\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceAdverseEventCvm', 'entity': 'adverseeventcvm', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.adverseEventCount\n }\n };\n const params = { 'total': this.adverseEventCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlCvm(etag, extension);\n }\n\n adverseEventCvmListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.adverseEventService.getAdverseEventCvmListExportUrl(this.bdnum);\n }\n }\n\n}\n\n","export const impuritiesSearchSortValues = [\n {\n 'value': 'default',\n 'display': 'Relevance'\n },\n {\n 'value': '^root_productSubstanceName',\n 'display': 'Source Type, Ascending',\n 'displayedColumns': 'productSubstanceName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productSubstanceName',\n 'display': 'Source Type, Descending',\n 'displayedColumns': 'productSubstanceName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_sourceType',\n 'display': 'Source Type, Ascending',\n 'displayedColumns': 'sourceType',\n 'direction': 'asc'\n },\n {\n 'value': '$root_sourceType',\n 'display': 'Source Type, Descending',\n 'displayedColumns': 'sourceType',\n 'direction': 'desc'\n },\n {\n 'value': '^root_source',\n 'display': 'Source, Ascending',\n 'displayedColumns': 'source',\n 'direction': 'asc'\n },\n {\n 'value': '$root_source',\n 'display': 'Source, Descending',\n 'displayedColumns': 'source',\n 'direction': 'desc'\n },\n {\n 'value': '^root_sourceId',\n 'display': 'Source ID, A-Z',\n 'displayedColumns': 'sourceId',\n 'direction': 'asc'\n },\n {\n 'value': '$root_sourceId',\n 'display': 'Source ID, Z-A',\n 'displayedColumns': 'sourceId',\n 'direction': 'desc'\n },\n {\n 'value': '^root_type',\n 'display': 'Type, A-Z',\n 'displayedColumns': 'type',\n 'direction': 'asc'\n },\n {\n 'value': '$root_type',\n 'display': 'Type, Z-A',\n 'displayedColumns': 'type',\n 'direction': 'desc'\n },\n {\n 'value': '^root_specType',\n 'display': 'Spec Type, A-Z',\n 'displayedColumns': 'specType',\n 'direction': 'asc'\n },\n {\n 'value': '$root_specType',\n 'display': 'Spec Type, Z-A',\n 'displayedColumns': 'specType',\n 'direction': 'desc'\n }\n];\n","
\n Impurities Specs\n    \n \n 0\">\n \n \n\n \n
\n\n
\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Product/Substance Name\n \n Source Type {{impurities.sourceType}} Source {{impurities.source}} Source ID {{impurities.sourceId}} Type {{impurities.type}} Spec Type {{impurities.specType}} Parent Substance \n \n Impurities Related Substance\n
\n \n \n \n
\n \n
\n
\n \n \n \n     {{impDetail.limitType}} \n {{impDetail.limitValue}} {{impDetail.unit}}\n \n
    {{impDetail.impurityType}}\n
\n \n
\n
\n \n
\n\n \n \n\n
\n
\n
\n\n\n","import { Component, OnInit, OnDestroy, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Sort } from '@angular/material/sort';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ImpuritiesService } from '../../../impurities/service/impurities.service';\nimport { GeneralService } from '../../../service/general.service';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { SubstanceDetailsBaseTableDisplay } from '../substance-details-base-table-display';\nimport { Impurities, ImpuritiesTesting, ImpuritiesDetails, IdentityCriteria } from '../../../impurities/model/impurities.model';\nimport { Facet } from '@gsrs-core/facets-manager';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { impuritiesSearchSortValues } from '../../../impurities/impurities-search-sort-values';\n\n@Component({\n selector: 'app-substance-impurities',\n templateUrl: './substance-impurities.component.html',\n styleUrls: ['./substance-impurities.component.scss']\n})\nexport class SubstanceImpuritiesComponent extends SubstanceDetailsBaseTableDisplay implements OnInit, OnDestroy {\n\n @Input() substanceUuid: string;\n @Input() substanceName: string;\n @Output() countImpuritiesOut: EventEmitter = new EventEmitter();\n private subscriptions: Array = [];\n parentSubstance: string;\n parentSubstanceUuid: string;\n showSpinner = false;\n impurities: Array;\n totalImpurities = 0;\n impuritiesCount = 0;\n impuritiesTestTotal = 0;\n pageIndex = 0;\n pageSize = 5;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n public sortValues = impuritiesSearchSortValues;\n order = '$root_productSubstanceName';\n ascDescDir = 'desc';\n displayedColumns: string[] = [\n 'productSubstanceName',\n 'sourceType',\n 'source',\n 'sourceid',\n 'type',\n 'specType',\n 'parentSubstance',\n 'relatedSubstance'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private impuritiesService: ImpuritiesService,\n private generalService: GeneralService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, impuritiesService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n\n if (this.substanceUuid) {\n this.getImpuritiesBySubstanceUuid();\n this.impuritiesListExportUrl();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n }\n\n /*\n getSubstanceImpuritiesNEW(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.impuritiesService.searchImpurities(this.substanceUuid, this.page, this.pageSize).subscribe(results => {\n this.setResultData(results);\n this.impurities = results;\n this.getImpuritiesTestTotal();\n this.impuritiesCount = this.totalRecords;\n this.countImpuritiesOut.emit(this.impuritiesCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n searchImpurities() {\n this.privateSearchTerm = this.substanceUuid;\n // this.loadingService.setLoading(true);\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.impuritiesService.searchImpurities(\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n // this.isError = false;\n\n this.setResultData(pagingResponse.content);\n this.impurities = pagingResponse.content;\n this.impuritiesCount = pagingResponse.total;\n this.countImpuritiesOut.emit(this.impuritiesCount);\n this.etag = pagingResponse.etag;\n\n /*\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n */\n // Set Facets from paging response\n /* if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n */\n }, error => {\n /*\n console.log('error');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve Products. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n */\n }, () => {\n subscription.unsubscribe();\n // this.isLoading = false;\n // this.loadingService.setLoading(this.isLoading);\n });\n }\n\n\n getImpuritiesBySubstanceUuid(pageEvent?: PageEvent): void {\n this.showSpinner = true; // Start progress spinner\n\n this.setPageEvent(pageEvent);\n const skip = this.page * this.pageSize;\n\n // , this.page, this.pageSize\n this.impuritiesService.getImpuritiesBySubstanceUuid(\n this.order,\n skip,\n this.pageSize,\n this.substanceUuid,\n this.privateFacetParams).subscribe(results => {\n this.impuritiesService.totalRecords = results.total;\n this.impurities = results.content;\n\n // Load Impurities Test Details by Substance Uuid\n this.loadImpuritiesTestDetails();\n\n this.setResultData(this.impurities);\n\n this.totalImpurities = results.total;\n\n this.etag = results.etag;\n this.countImpuritiesOut.emit(this.totalImpurities);\n });\n this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getImpuritiesByTestImpuritiesDetails(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n // , this.page, this.pageSize\n this.impuritiesService.getImpuritiesBySubstanceUuid(this.substanceUuid).subscribe(results => {\n this.impuritiesService.totalRecords = results.total;\n this.impurities = results.content;\n\n //Load Impurities Test Details by Substance Uuid\n this.loadImpuritiesTestDetails();\n\n this.setResultData(this.impurities);\n\n this.totalImpurities = results.total;\n\n this.etag = results.etag;\n this.countImpuritiesOut.emit(this.totalImpurities);\n });\n this.showSpinner = false; // Stop progress spinner\n }\n */\n\n loadImpuritiesTestDetails() {\n this.impurities.forEach((element, index) => {\n element.impuritiesSubstanceList.forEach((elementSub, indexSub) => {\n\n if (elementSub.substanceUuid) {\n // if current Substance is same as Parent Substance of Impurities\n if (elementSub.substanceUuid === this.substanceUuid) {\n elementSub._parentSubstanceName = this.substanceName;\n elementSub._parentSubstanceUuid = elementSub.substanceUuid;\n }\n }\n elementSub.impuritiesTestList.forEach((elementTest, indexTest) => {\n\n elementTest.impuritiesDetailsList.forEach((elementDetail, indexDetail) => {\n\n if (elementDetail.relatedSubstanceUuid != null) {\n // if current Substance is same as Impurities Details of Impurities\n if (elementDetail.relatedSubstanceUuid === this.substanceUuid) {\n const subSubscription = this.generalService.getSubstanceNamesBySubstanceUuid(elementSub.substanceUuid).subscribe(substanceNames => {\n let subNames = substanceNames;\n\n // Get Preferred Term or DisplayName == true\n subNames.forEach((names, index) => {\n if (names.displayName === true) {\n elementSub._parentSubstanceName = names.name;\n elementSub._parentSubstanceUuid = elementSub.substanceUuid;\n }\n });\n });\n this.subscriptions.push(subSubscription);\n }\n }\n }); // Impurities Details forEach\n }); // Test forEach\n }); // Substance forEach\n }); // Impurities forEach\n }\n\n getSubstanceNames(substanceUuid: string): string {\n let preferredTerm;\n if (substanceUuid) {\n const subSubscription = this.generalService.getSubstanceNamesBySubstanceUuid(substanceUuid).subscribe(substanceNames => {\n let subNames = substanceNames;\n\n // Get Preferred Term or DisplayName == true\n subNames.forEach((names, index) => {\n if (names.displayName === true) {\n preferredTerm = names.name;\n }\n });\n });\n this.subscriptions.push(subSubscription);\n return preferredTerm;\n }\n }\n\n /*\n getSubstanceImpurities(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.impuritiesService.getSubstanceImpurities(this.substanceUuid, this.page, this.pageSize).subscribe(results => {\n this.setResultData(results);\n this.impurities = results;\n this.impuritiesCount = this.totalRecords;\n this.impuritiesService.totalRecords = this.totalRecords;\n this.countImpuritiesOut.emit(this.impuritiesCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceImpurities', 'entity': 'impurities', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalImpurities\n }\n };\n const params = { 'total': this.totalImpurities };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.impuritiesService.getApiExportUrl(etag, extension);\n }\n\n impuritiesListExportUrl() {\n if (this.substanceUuid != null) {\n this.exportUrl = this.impuritiesService.getImpuritiesListExportUrl(this.substanceUuid);\n }\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getImpuritiesBySubstanceUuid();\n }\n return;\n }\n}\n","
\n \n \n \n
\n
\n \n\n \n\n
\n
\n
No Product Found
\n
\n
\n \n \n
\n {{prov}}\n    \n {{loadingStatus}}\n    \n \n \n 0\">\n \n \n\n \n \n
\n\n
\n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Product ID \n \n \n \n {{product.productNDC}}\n \n \n (NO NDC)\n \n \n   \n \n \n \n \n \n \n \n {{product.productNDC}}\n \n \n (NO NDC)\n \n \n
({{product.fromtable}})\n
\n
Product Name \n
\n {{prodName.productName}}\n
\n
Labeler Name {{product.labelerName}}\n
\n {{prodComp.labelerName}}\n
\n
Country \n
\n {{prodComp.countryWithoutCode}}\n
\n
Status {{product.status}} Product Type {{product.productType}} Ingredient Type \n
\n
\n
\n {{prodIng.ingredientType}}\n
\n
\n
\n
Application Number {{product.appTypeNumber}}
\n
\n \n \n
\n\n
\n\n \n
\n\n \n\n\n \n \n \n \n\n
\n \n \n \n \n
\n\n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n
\n
","import { Component, OnInit, AfterViewInit, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ProductService } from '../../product/service/product.service';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Sort } from '@angular/material/sort';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort } from '@angular/material/sort';\nimport { PageEvent } from '@angular/material/paginator';\nimport { SubstanceDetailsBaseTableDisplay } from './substance-details-base-table-display';\nimport { SubstanceAdverseEventCvmComponent } from './substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { AuthService } from '@gsrs-core/auth';\nimport { take } from 'rxjs/operators';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { productSearchSortValues } from '../../product/products-browse/product-search-sort-values';\n\n@Component({\n selector: 'app-substance-products',\n templateUrl: './substance-products.component.html',\n styleUrls: ['./substance-products.component.scss']\n})\n\nexport class SubstanceProductsComponent extends SubstanceDetailsBaseTableDisplay implements OnInit, AfterViewInit {\n\n productCount = 0;\n applicationCount = 0;\n clinicalTrialCount = 0;\n clinicalTrialEuCount = 0;\n advPtCount = 0;\n advDmeCount = 0;\n advCvmCount = 0;\n impuritiesCount = 0;\n provenance = '';\n provenanceList = '';\n datasourceList = '';\n loadingStatus = '';\n showSpinner = false;\n baseDomain: string;\n foundProvenanceList = false;\n loadingComplete = false;\n substanceName = '';\n public privateSearch?: string;\n private privateFacetParams: FacetParam;\n public privateSearchTerm?: string;\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n loadedComponents: LoadedComponents;\n public sortValues = productSearchSortValues;\n order = '$root_productNDC';\n ascDescDir = 'desc';\n public displayedColumns: string[] = [\n 'productNDC',\n 'productName',\n 'labelerName',\n 'country',\n 'status',\n 'productNameType',\n 'ingredientType',\n 'applicationNumber'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private productService: ProductService,\n private configService: ConfigService,\n public authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, productService);\n }\n\n ngOnInit() {\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n\n if (this.substance && this.substance.uuid) {\n this.getSubstanceKey();\n\n // Get Provenance List to Display in Tab\n this.getProductProvenanceList();\n\n this.privateSearch = 'root_productIngredientAllList_substanceUuid:\\\"' + this.substance.uuid + '\"';\n this.getSubstanceProducts(null, 'initial');\n\n /*\n this.searchControl.valueChanges.subscribe(value => {\n if (value) {\n this.privateSearch = '\\\"' + value + '\\\" AND ' + 'root_productIngredientAllList_substanceUuid:\\\"'\n + this.substance.uuid + '\\\" AND root_provenance:' + this.provenance;\n this.getSubstanceProducts(null);\n }\n }, error => {\n console.log(error);\n });\n */\n }\n\n this.baseDomain = this.configService.configData.apiUrlDomain;\n }\n\n ngAfterViewInit() {\n }\n\n getApplicationCount($event: any) {\n this.applicationCount = $event;\n }\n\n getClinicalTrialCount($event: any) {\n this.clinicalTrialCount = $event;\n }\n\n getClinicalTrialEuCount($event: any) {\n this.clinicalTrialEuCount = $event;\n }\n\n getAdvPtCount($event: any) {\n this.advPtCount = $event;\n }\n\n getAdvDmeCount($event: any) {\n this.advDmeCount = $event;\n }\n\n getAdvCvmCount($event: any) {\n this.advCvmCount = $event;\n }\n\n getImpuritiesCount($event: any) {\n this.impuritiesCount = $event;\n }\n\n getSubstanceKey() {\n if (this.substance) {\n // Get Substance Name\n this.substanceName = this.substance._name;\n if (this.substance.codes.length > 0) {\n this.substance.codes.forEach(element => {\n if (element.codeSystem && element.codeSystem === 'BDNUM') {\n if (element.type && element.type === 'PRIMARY') {\n this.bdnum = element.code;\n }\n }\n });\n }\n }\n }\n\n getProductProvenanceList(): void {\n this.productService.getProductProvenanceList(this.substance.uuid).subscribe(results => {\n this.provenanceList = results;\n if (this.provenanceList && this.provenanceList.length > 0) {\n this.foundProvenanceList = true;\n }\n this.loadingComplete = true;\n });\n }\n\n getSubstanceProducts(pageEvent?: PageEvent, searchType?: string) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n\n const subscription = this.productService.getProducts(\n this.order,\n skip,\n this.pageSize,\n this.privateSearch,\n this.privateFacetParams\n ).subscribe(pagingResponse => {\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse.etag;\n } else {\n this.productService.totalRecords = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.productCount = pagingResponse.total;\n this.etag = pagingResponse.etag;\n }\n }, error => {\n this.showSpinner = false; // Stop progress spinner\n console.log('error');\n }, () => {\n this.showSpinner = false; // Stop progress spinner\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n // this.showSpinner = false; // Stop progress spinner\n }\n\n export() {\n if (this.etagAllExport) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n // height: '215x',\n width: '700px',\n data: { 'extension': extension, 'type': 'substanceProduct', 'entity': 'products', 'hideOptionButtons': true }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n const name = response.name;\n const id = response.id;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname, id).subscribe(response => {\n // this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.productCount\n }\n };\n const params = { 'total': this.productCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.productService.getApiExportUrl(etag, extension);\n }\n\n tabSelected($event) {\n if ($event) {\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n // Get Country and fromTable/Source from Tab Label\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n this.provenance = textLabel;\n // const index = textLabel.indexOf(' ');\n // const tab = textLabel.slice(0, index);\n // this.country = textLabel.slice(index + 1, textLabel.length);\n // set the current result data to empty or null.\n this.paged = [];\n\n this.privateSearch = 'root_productIngredientAllList_substanceUuid:\\\"'\n + this.substance.uuid + '\\\" AND root_provenance:' + this.provenance;\n\n this.getSubstanceProducts();\n\n }\n\n }\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getSubstanceProducts();\n }\n return;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '@gsrs-core/dynamic-component-loader';\nimport { SubstanceProductsComponent } from './substance-products.component';\nimport { MatTableModule } from '@angular/material/table';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { SubstanceApplicationComponent } from './substance-application/substance-application.component';\nimport { SubstanceClinicalTrialsComponent } from './substance-clinical-trials/substance-clinical-trials.component';\nimport { SubstanceAdverseEventPtComponent } from './substance-adverseevent/adverseeventpt/substance-adverseeventpt.component';\nimport { SubstanceAdverseEventDmeComponent } from './substance-adverseevent/adverseeventdme/substance-adverseeventdme.component';\nimport { SubstanceAdverseEventCvmComponent } from './substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component';\nimport { SubstanceClinicalTrialsEuropeComponent } from './substance-clinical-trials-eu/substance-clinical-trials-eu.component';\nimport { SubstanceImpuritiesComponent } from './substance-impurities/substance-impurities.component';\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceProductsComponent),\n MatTableModule,\n CdkTableModule,\n MatPaginatorModule,\n MatSortModule,\n MatInputModule,\n MatTabsModule,\n MatButtonModule,\n MatIconModule,\n MatProgressSpinnerModule,\n ReactiveFormsModule,\n FormsModule,\n RouterModule\n ],\n declarations: [\n SubstanceProductsComponent,\n SubstanceApplicationComponent,\n SubstanceClinicalTrialsComponent,\n SubstanceAdverseEventPtComponent,\n SubstanceAdverseEventDmeComponent,\n SubstanceAdverseEventCvmComponent,\n SubstanceClinicalTrialsEuropeComponent,\n SubstanceImpuritiesComponent,\n ]\n})\nexport class SubstanceProductsModule { }\n"],"sourceRoot":"webpack:///","file":"1421.9f98b15e8097e932.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1555.5941be4697c9ee43.js b/frontend/src/main/resources/static/1555.d79f717ed5f4973b.js similarity index 92% rename from frontend/src/main/resources/static/1555.5941be4697c9ee43.js rename to frontend/src/main/resources/static/1555.d79f717ed5f4973b.js index d09e634..b76ae89 100644 --- a/frontend/src/main/resources/static/1555.5941be4697c9ee43.js +++ b/frontend/src/main/resources/static/1555.d79f717ed5f4973b.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1555],{41555:function(Y,l,e){e.r(l),e.d(l,{SubstanceOtherLinksModule:function(){return N}});var m=e(48047),d=e(78069),c=e(36362),f=e(24582),h=e(7318),v=e(2756),g=e(50253),t=e(76442),i=e(97217);function C(n,s){1&n&&(t.TgZ(0,"th",8),t._uU(1," linkageType "),t.qZA())}function S(n,s){if(1&n&&(t.TgZ(0,"td",9),t._uU(1),t.qZA()),2&n){var a=s.$implicit;t.xp6(1),t.hij(" ",a.linkageType," ")}}function L(n,s){1&n&&(t.TgZ(0,"th",8),t._uU(1," Sites "),t.qZA())}function O(n,s){if(1&n&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&n){var a=s.$implicit;t.xp6(1),t.hij(" ",a.subunitIndex+"_"+a.residueIndex," ")}}function Z(n,s){if(1&n&&(t.TgZ(0,"span"),t.YNc(1,O,2,1,"span",11),t.qZA()),2&n){var a=t.oxw().$implicit;t.xp6(1),t.Q6J("ngForOf",a.sites)}}function b(n,s){if(1&n&&(t.TgZ(0,"td",9),t.YNc(1,Z,2,1,"span",10),t.qZA()),2&n){var a=s.$implicit;t.xp6(1),t.Q6J("ngIf",a.sites)}}function k(n,s){1&n&&t._UZ(0,"tr",12)}function T(n,s){1&n&&t._UZ(0,"tr",13)}var x=function(){var n=function(s){(0,f.Z)(u,s);var a=(0,h.Z)(u);function u(){var r;return(0,d.Z)(this,u),(r=a.call(this)).otherLinks=[],r.displayedColumns=["linkageType","residueIndex"],r.substanceUpdated=new g.x,r}return(0,m.Z)(u,[{key:"ngOnInit",value:function(){var o=this;this.substanceUpdated.subscribe(function(Q){o.substance=Q,null!=o.substance&&null!=o.substance.protein&&null!=o.substance.protein.otherLinks&&o.substance.protein.otherLinks.length&&(o.otherLinks=o.substance.protein.otherLinks),o.countUpdate.emit(o.otherLinks.length)})}},{key:"getFullSite",value:function(o){return o.subunitIndex+"_"+o.residueIndex}}]),u}(v.B);return n.\u0275fac=function(a){return new(a||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-other-links"]],features:[t.qOj],decls:10,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","linkageType"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","residueIndex"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row",""]],template:function(a,u){1&a&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,C,2,0,"th",3),t.YNc(4,S,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,L,2,0,"th",3),t.YNc(7,b,2,1,"td",4),t.BQk(),t.YNc(8,k,1,0,"tr",6),t.YNc(9,T,1,0,"tr",7),t.qZA(),t.qZA()),2&a&&(t.xp6(1),t.Q6J("dataSource",u.otherLinks),t.xp6(7),t.Q6J("matHeaderRowDef",u.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",u.displayedColumns))},directives:[i.BZ,i.w1,i.fO,i.ge,i.Dz,i.ev,c.O5,c.sg,i.as,i.XQ,i.nj,i.Gk],styles:[""]}),n}(),y=e(64061),U=e(98002),D=e(43365),I=e(26439),A=e(33865),p=e(90587),N=function(){var n=(0,m.Z)(function s(){(0,d.Z)(this,s)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[c.ez,y.o.forChild(x),U.Bz,i.p0,A.HT,I.TU,D.c,p.UX,p.u5]]}),n}()}}]); -//# sourceMappingURL=1555.5941be4697c9ee43.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1555],{41555:function(Y,l,e){e.r(l),e.d(l,{SubstanceOtherLinksModule:function(){return N}});var m=e(1884),d=e(39117),c=e(36362),f=e(46751),h=e(56101),v=e(2756),g=e(50253),t=e(86613),i=e(97217);function C(n,s){1&n&&(t.TgZ(0,"th",8),t._uU(1," linkageType "),t.qZA())}function S(n,s){if(1&n&&(t.TgZ(0,"td",9),t._uU(1),t.qZA()),2&n){var a=s.$implicit;t.xp6(1),t.hij(" ",a.linkageType," ")}}function L(n,s){1&n&&(t.TgZ(0,"th",8),t._uU(1," Sites "),t.qZA())}function O(n,s){if(1&n&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&n){var a=s.$implicit;t.xp6(1),t.hij(" ",a.subunitIndex+"_"+a.residueIndex," ")}}function Z(n,s){if(1&n&&(t.TgZ(0,"span"),t.YNc(1,O,2,1,"span",11),t.qZA()),2&n){var a=t.oxw().$implicit;t.xp6(1),t.Q6J("ngForOf",a.sites)}}function b(n,s){if(1&n&&(t.TgZ(0,"td",9),t.YNc(1,Z,2,1,"span",10),t.qZA()),2&n){var a=s.$implicit;t.xp6(1),t.Q6J("ngIf",a.sites)}}function k(n,s){1&n&&t._UZ(0,"tr",12)}function T(n,s){1&n&&t._UZ(0,"tr",13)}var x=function(){var n=function(s){(0,f.Z)(u,s);var a=(0,h.Z)(u);function u(){var r;return(0,d.Z)(this,u),(r=a.call(this)).otherLinks=[],r.displayedColumns=["linkageType","residueIndex"],r.substanceUpdated=new g.x,r}return(0,m.Z)(u,[{key:"ngOnInit",value:function(){var o=this;this.substanceUpdated.subscribe(function(Q){o.substance=Q,null!=o.substance&&null!=o.substance.protein&&null!=o.substance.protein.otherLinks&&o.substance.protein.otherLinks.length&&(o.otherLinks=o.substance.protein.otherLinks),o.countUpdate.emit(o.otherLinks.length)})}},{key:"getFullSite",value:function(o){return o.subunitIndex+"_"+o.residueIndex}}]),u}(v.B);return n.\u0275fac=function(a){return new(a||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-other-links"]],features:[t.qOj],decls:10,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","linkageType"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","residueIndex"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row",""]],template:function(a,u){1&a&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,C,2,0,"th",3),t.YNc(4,S,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,L,2,0,"th",3),t.YNc(7,b,2,1,"td",4),t.BQk(),t.YNc(8,k,1,0,"tr",6),t.YNc(9,T,1,0,"tr",7),t.qZA(),t.qZA()),2&a&&(t.xp6(1),t.Q6J("dataSource",u.otherLinks),t.xp6(7),t.Q6J("matHeaderRowDef",u.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",u.displayedColumns))},directives:[i.BZ,i.w1,i.fO,i.ge,i.Dz,i.ev,c.O5,c.sg,i.as,i.XQ,i.nj,i.Gk],styles:[""]}),n}(),y=e(64061),U=e(98002),D=e(43365),I=e(26439),A=e(33865),p=e(90587),N=function(){var n=(0,m.Z)(function s(){(0,d.Z)(this,s)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[c.ez,y.o.forChild(x),U.Bz,i.p0,A.HT,I.TU,D.c,p.UX,p.u5]]}),n}()}}]); +//# sourceMappingURL=1555.d79f717ed5f4973b.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1555.5941be4697c9ee43.js.map b/frontend/src/main/resources/static/1555.d79f717ed5f4973b.js.map similarity index 99% rename from frontend/src/main/resources/static/1555.5941be4697c9ee43.js.map rename to frontend/src/main/resources/static/1555.d79f717ed5f4973b.js.map index 2ac7785..e548f55 100644 --- a/frontend/src/main/resources/static/1555.5941be4697c9ee43.js.map +++ b/frontend/src/main/resources/static/1555.d79f717ed5f4973b.js.map @@ -1 +1 @@ -{"version":3,"mappings":"2SAMMA,gBAAuCA,yBAAYA,kCACnDA,gBAAqCA,SAAqBA,gCAArBA,6DAIrCA,gBAAuCA,mBAAMA,kCAE3CA,gBACMA,SACNA,gCADMA,oFAF4BA,gBAClCA,yBAGAA,sCAHuBA,4DADzBA,gBAAoCA,yBAIzBA,gCAJgCA,qDAO7CA,sCACAA,iBCVG,IAAMC,EAAb,eAAaA,EAAb,0CAME,0CACEC,gBANFC,WAA0B,GAC1BD,mBAAmB,CAAC,cAAe,gBACnCA,mBAAmB,IAAIE,IAGvBF,EANF,uCAUE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WACsB,MAA1BD,EAAKC,UAAUC,SACsB,MAArCF,EAAKC,UAAUC,QAAQP,YACvBK,EAAKC,UAAUC,QAAQP,WAAWQ,SACrCH,EAAKL,WAAaK,EAAKC,UAAUC,QAAQP,YAE3CK,EAAKI,YAAYC,KAAKL,EAAKL,WAAWQ,YAnB5C,yBAuBE,SAAYG,GACV,OAAOA,EAAKC,aAAe,IAAMD,EAAKE,iBAxB1CC,GAAkDC,kDAArCjB,8BAA4BkB,mfDTzCnB,iBAEEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,sBAKFA,QAEAA,sBACAA,sBACFA,QAEFA,eApBoBA,0CAgBIA,qDACaA,+ICVxBC,EAAb,qECeamB,EAAb,eAAaA,KAAbC,iFAAaD,4DAbJ,CACPE,KACAC,aAAsCtB,GACtCuB,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,SAIWV,EAAb","names":["i0","SubstanceOtherLinksComponent","r","otherLinks","Subject","this","substanceUpdated","subscribe","o","substance","protein","length","countUpdate","emit","site","subunitIndex","residueIndex","u","SubstanceCardBase","selectors","SubstanceOtherLinksModule","m","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule"],"sources":["./src/app/core/substance-details/substance-other-links/substance-other-links.component.html","./src/app/core/substance-details/substance-other-links/substance-other-links.component.ts","./src/app/core/substance-details/substance-other-links/substance-other-links.module.ts"],"sourcesContent":["\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
linkageType {{link.linkageType}} Sites \r\n \r\n {{site.subunitIndex + \"_\" + site.residueIndex}}\r\n \r\n
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Link, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-other-links',\r\n templateUrl: './substance-other-links.component.html',\r\n styleUrls: ['./substance-other-links.component.scss']\r\n})\r\nexport class SubstanceOtherLinksComponent extends SubstanceCardBase implements OnInit {\r\n otherLinks: Array = [];\r\n displayedColumns = ['linkageType', 'residueIndex'];\r\n substanceUpdated = new Subject();\r\n\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.otherLinks != null\r\n && this.substance.protein.otherLinks.length) {\r\n this.otherLinks = this.substance.protein.otherLinks;\r\n }\r\n this.countUpdate.emit(this.otherLinks.length);\r\n });\r\n }\r\n\r\n getFullSite(site: Site ): string {\r\n return site.subunitIndex + '_' + site.residueIndex;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceOtherLinksComponent } from './substance-other-links.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\n\r\n@NgModule({\r\nimports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceOtherLinksComponent),\r\n RouterModule,\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n FormsModule\r\n],\r\n declarations: [SubstanceOtherLinksComponent]\r\n})\r\nexport class SubstanceOtherLinksModule { }\r\n"],"sourceRoot":"webpack:///","file":"1555.5941be4697c9ee43.js"} \ No newline at end of file +{"version":3,"mappings":"2SAMMA,gBAAuCA,yBAAYA,kCACnDA,gBAAqCA,SAAqBA,gCAArBA,6DAIrCA,gBAAuCA,mBAAMA,kCAE3CA,gBACMA,SACNA,gCADMA,oFAF4BA,gBAClCA,yBAGAA,sCAHuBA,4DADzBA,gBAAoCA,yBAIzBA,gCAJgCA,qDAO7CA,sCACAA,iBCVG,IAAMC,EAAb,eAAaA,EAAb,0CAME,0CACEC,gBANFC,WAA0B,GAC1BD,mBAAmB,CAAC,cAAe,gBACnCA,mBAAmB,IAAIE,IAGvBF,EANF,uCAUE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WACsB,MAA1BD,EAAKC,UAAUC,SACsB,MAArCF,EAAKC,UAAUC,QAAQP,YACvBK,EAAKC,UAAUC,QAAQP,WAAWQ,SACrCH,EAAKL,WAAaK,EAAKC,UAAUC,QAAQP,YAE3CK,EAAKI,YAAYC,KAAKL,EAAKL,WAAWQ,YAnB5C,yBAuBE,SAAYG,GACV,OAAOA,EAAKC,aAAe,IAAMD,EAAKE,iBAxB1CC,GAAkDC,kDAArCjB,8BAA4BkB,mfDTzCnB,iBAEEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,sBAKFA,QAEAA,sBACAA,sBACFA,QAEFA,eApBoBA,0CAgBIA,qDACaA,+ICVxBC,EAAb,qECeamB,EAAb,eAAaA,KAAbC,iFAAaD,4DAbJ,CACPE,KACAC,aAAsCtB,GACtCuB,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,SAIWV,EAAb","names":["i0","SubstanceOtherLinksComponent","r","otherLinks","Subject","this","substanceUpdated","subscribe","o","substance","protein","length","countUpdate","emit","site","subunitIndex","residueIndex","u","SubstanceCardBase","selectors","SubstanceOtherLinksModule","m","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule"],"sources":["./src/app/core/substance-details/substance-other-links/substance-other-links.component.html","./src/app/core/substance-details/substance-other-links/substance-other-links.component.ts","./src/app/core/substance-details/substance-other-links/substance-other-links.module.ts"],"sourcesContent":["\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
linkageType {{link.linkageType}} Sites \r\n \r\n {{site.subunitIndex + \"_\" + site.residueIndex}}\r\n \r\n
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Link, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-other-links',\r\n templateUrl: './substance-other-links.component.html',\r\n styleUrls: ['./substance-other-links.component.scss']\r\n})\r\nexport class SubstanceOtherLinksComponent extends SubstanceCardBase implements OnInit {\r\n otherLinks: Array = [];\r\n displayedColumns = ['linkageType', 'residueIndex'];\r\n substanceUpdated = new Subject();\r\n\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.otherLinks != null\r\n && this.substance.protein.otherLinks.length) {\r\n this.otherLinks = this.substance.protein.otherLinks;\r\n }\r\n this.countUpdate.emit(this.otherLinks.length);\r\n });\r\n }\r\n\r\n getFullSite(site: Site ): string {\r\n return site.subunitIndex + '_' + site.residueIndex;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceOtherLinksComponent } from './substance-other-links.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\n\r\n@NgModule({\r\nimports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceOtherLinksComponent),\r\n RouterModule,\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n FormsModule\r\n],\r\n declarations: [SubstanceOtherLinksComponent]\r\n})\r\nexport class SubstanceOtherLinksModule { }\r\n"],"sourceRoot":"webpack:///","file":"1555.d79f717ed5f4973b.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1605.e926f9e8319f223e.js b/frontend/src/main/resources/static/1605.0458f0024200345f.js similarity index 91% rename from frontend/src/main/resources/static/1605.e926f9e8319f223e.js rename to frontend/src/main/resources/static/1605.0458f0024200345f.js index ee1d900..8ee5e2a 100644 --- a/frontend/src/main/resources/static/1605.e926f9e8319f223e.js +++ b/frontend/src/main/resources/static/1605.0458f0024200345f.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1605],{91605:function(j,l,t){t.r(l),t.d(l,{SubstanceFormMixtureDetailsModule:function(){return P}});var m=t(48047),d=t(78069),v=t(36362),p=t(75143),x=t(44770),S=t(43365),f=t(90587),b=t(91434),h=t(7168),g=t(96769),y=t(3311),M=t(24582),D=t(7318),C=t(18291),F=t(33567),Z=t(40104),U=t(79223),e=t(76442),A=t(24459),O=t(14900),I=function(){var s=function(c){(0,M.Z)(i,c);var u=(0,D.Z)(i);function i(r,n,o){var a;return(0,d.Z)(this,i),(a=u.call(this)).substanceFormService=r,a.gaService=n,a.cvService=o,a.subscriptions=[],a.analyticsEventCategory="substance form Mixture Details",a}return(0,m.Z)(i,[{key:"ngOnInit",value:function(){var n=this;this.menuLabelUpdate.emit("Mixture Details");var o=this.substanceFormService.substance.subscribe(function(a){null==a.mixture&&(a.mixture={access:[]}),n.mixture=a.mixture,n.parent=a.mixture.parentSubstance,n.relatedSubstanceUuid=n.mixture.parentSubstance&&n.mixture.parentSubstance.refuuid||"",n.substanceFormService.resetState()});this.subscriptions.push(o)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"updateAccess",value:function(n){this.mixture.access=n}},{key:"parentSubstanceUpdated",value:function(n){if(null!==n){var o={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID};this.mixture.parentSubstance=o,this.relatedSubstanceUuid=o&&o.refuuid||""}else this.mixture.parentSubstance=null,this.relatedSubstanceUuid=null}}]),i}(U.o);return s.\u0275fac=function(u){return new(u||s)(e.Y36(F.B),e.Y36(Z.$),e.Y36(C.I))},s.\u0275cmp=e.Xpm({type:s,selectors:[["app-substance-form-mixture-details"]],features:[e.qOj],decls:5,vars:2,consts:[[1,"mixture-details-container"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Parent Substance","header","Parent Substance",3,"subuuid","selectionUpdated"],[1,"form-row"],[3,"source"]],template:function(u,i){1&u&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"app-substance-selector",2),e.NdJ("selectionUpdated",function(n){return i.parentSubstanceUpdated(n)}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(3,"div",3),e._UZ(4,"app-audit-info",4),e.qZA()),2&u&&(e.xp6(2),e.Q6J("subuuid",i.relatedSubstanceUuid),e.xp6(2),e.Q6J("source",i.mixture))},directives:[A.Q,O.n],styles:[".mixture-details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:initial;align-items:initial;padding:20px;-ms-flex-pack:justify;justify-content:space-between}.related-substance[_ngcontent-%COMP%]{max-width:75%;width:60%}"]}),s}(),T=t(63200),P=(t(64061),function(){var s=(0,m.Z)(function c(){(0,d.Z)(this,c)});return s.\u0275fac=function(u){return new(u||s)},s.\u0275mod=e.oAB({type:s}),s.\u0275inj=e.cJS({imports:[[v.ez,p.o0.forChild(I),x.lN,S.c,f.UX,f.u5,b.LD,h.O,g.O,y.ZQ,T.U]]}),s}())}}]); -//# sourceMappingURL=1605.e926f9e8319f223e.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1605],{91605:function(j,l,t){t.r(l),t.d(l,{SubstanceFormMixtureDetailsModule:function(){return P}});var m=t(1884),d=t(39117),v=t(36362),p=t(75143),x=t(44770),S=t(43365),f=t(90587),b=t(91434),h=t(7168),g=t(96769),y=t(3311),M=t(46751),D=t(56101),C=t(18291),F=t(33567),Z=t(40104),U=t(79223),e=t(86613),A=t(24459),O=t(14900),I=function(){var s=function(c){(0,M.Z)(i,c);var u=(0,D.Z)(i);function i(r,n,o){var a;return(0,d.Z)(this,i),(a=u.call(this)).substanceFormService=r,a.gaService=n,a.cvService=o,a.subscriptions=[],a.analyticsEventCategory="substance form Mixture Details",a}return(0,m.Z)(i,[{key:"ngOnInit",value:function(){var n=this;this.menuLabelUpdate.emit("Mixture Details");var o=this.substanceFormService.substance.subscribe(function(a){null==a.mixture&&(a.mixture={access:[]}),n.mixture=a.mixture,n.parent=a.mixture.parentSubstance,n.relatedSubstanceUuid=n.mixture.parentSubstance&&n.mixture.parentSubstance.refuuid||"",n.substanceFormService.resetState()});this.subscriptions.push(o)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"updateAccess",value:function(n){this.mixture.access=n}},{key:"parentSubstanceUpdated",value:function(n){if(null!==n){var o={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID};this.mixture.parentSubstance=o,this.relatedSubstanceUuid=o&&o.refuuid||""}else this.mixture.parentSubstance=null,this.relatedSubstanceUuid=null}}]),i}(U.o);return s.\u0275fac=function(u){return new(u||s)(e.Y36(F.B),e.Y36(Z.$),e.Y36(C.I))},s.\u0275cmp=e.Xpm({type:s,selectors:[["app-substance-form-mixture-details"]],features:[e.qOj],decls:5,vars:2,consts:[[1,"mixture-details-container"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Parent Substance","header","Parent Substance",3,"subuuid","selectionUpdated"],[1,"form-row"],[3,"source"]],template:function(u,i){1&u&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"app-substance-selector",2),e.NdJ("selectionUpdated",function(n){return i.parentSubstanceUpdated(n)}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(3,"div",3),e._UZ(4,"app-audit-info",4),e.qZA()),2&u&&(e.xp6(2),e.Q6J("subuuid",i.relatedSubstanceUuid),e.xp6(2),e.Q6J("source",i.mixture))},directives:[A.Q,O.n],styles:[".mixture-details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:initial;align-items:initial;padding:20px;-ms-flex-pack:justify;justify-content:space-between}.related-substance[_ngcontent-%COMP%]{max-width:75%;width:60%}"]}),s}(),T=t(63200),P=(t(64061),function(){var s=(0,m.Z)(function c(){(0,d.Z)(this,c)});return s.\u0275fac=function(u){return new(u||s)},s.\u0275mod=e.oAB({type:s}),s.\u0275inj=e.cJS({imports:[[v.ez,p.o0.forChild(I),x.lN,S.c,f.UX,f.u5,b.LD,h.O,g.O,y.ZQ,T.U]]}),s}())}}]); +//# sourceMappingURL=1605.0458f0024200345f.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1605.e926f9e8319f223e.js.map b/frontend/src/main/resources/static/1605.0458f0024200345f.js.map similarity index 99% rename from frontend/src/main/resources/static/1605.e926f9e8319f223e.js.map rename to frontend/src/main/resources/static/1605.0458f0024200345f.js.map index b081f42..728dfac 100644 --- a/frontend/src/main/resources/static/1605.e926f9e8319f223e.js.map +++ b/frontend/src/main/resources/static/1605.0458f0024200345f.js.map @@ -1 +1 @@ -{"version":3,"mappings":"qZAgBaA,EAAb,eAAaA,EAAb,0CAOE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cALDA,gBAAqC,GAQ3CA,EAAKC,uBAAyB,iCAHeD,EAVjD,uCAgBE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,mBAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YACjD,MAArBD,EAAUE,UACZF,EAAUE,QAAU,CAClBC,OAAQ,KAGZC,EAAKF,QAAUF,EAAUE,QACzBE,EAAKC,OAASL,EAAUE,QAAQI,gBAChCF,EAAKG,qBAAuBH,EAAKF,QAAQI,iBAAmBF,EAAKF,QAAQI,gBAAgBE,SAAW,GACpGJ,EAAKb,qBAAqBkB,eAE5Bb,KAAKc,cAAcC,KAAKZ,KA7B5B,6BAgCE,cAhCF,yBAmCE,WACEH,KAAKc,cAAcE,QAAQ,YACzBC,EAAaC,kBArCnB,0BAyCE,SAAaX,GACXP,KAAKM,QAAQC,OAASA,IA1C1B,oCA6CE,SAAuBH,GAErB,GAAkB,OAAdA,EAAoB,CACtB,IAAMe,EAAqC,CACzCC,SAAUhB,EAAUiB,MACpBC,KAAMlB,EAAUiB,MAChBT,QAASR,EAAUmB,KACnBC,eAAgB,YAChBC,WAAYrB,EAAUqB,YAExBzB,KAAKM,QAAQI,gBAAkBS,EAC/BnB,KAAKW,qBAAuBQ,GAAoBA,EAAiBP,SAAW,QAE5EZ,KAAKM,QAAQI,gBAAkB,KAC/BV,KAAKW,qBAAuB,SA3DlCe,GAA2DC,kDAA9CjC,GAAoCkC,2DAApClC,EAAoCmC,2WChBjDD,iBACEA,iBACEA,oCAAwBA,4CAAoBE,8BAG5CF,QACFA,QAGFA,QACAA,iBACEA,4BACFA,eAR4BA,iDAOVA,4UDKLlC,EAAb,cEeaqC,YAAb,eAAaA,KAAbC,iFAAaD,4DAjBF,CACPE,KACAC,cAAsCxC,GACtCyC,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,KACAC,QAMSZ,EAAb","names":["SubstanceFormMixtureDetailsComponent","substanceFormService","gaService","cvService","a","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","mixture","access","n","parent","parentSubstance","relatedSubstanceUuid","refuuid","resetState","subscriptions","push","forEach","subscription","unsubscribe","relatedSubstance","refPname","_name","name","uuid","substanceClass","approvalID","i","SubstanceFormBase","i0","selectors","ctx","SubstanceFormMixtureDetailsModule","m","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/mixture-details/substance-form-mixture-details.component.ts","./src/app/core/substance-form/mixture-details/substance-form-mixture-details.component.html","./src/app/core/substance-form/mixture-details/substance-form-mixture-details.module.ts"],"sourcesContent":["import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Mixture, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {IDropdownSettings} from 'ng-multiselect-dropdown';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-substance-form-mixture-details',\n templateUrl: './substance-form-mixture-details.component.html',\n styleUrls: ['./substance-form-mixture-details.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormMixtureDetailsComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n\n parent: SubstanceRelated;\n relatedSubstanceUuid: string;\n mixture: Mixture;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Mixture Details';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Mixture Details');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.mixture == null) {\n substance.mixture = {\n access: []\n };\n }\n this.mixture = substance.mixture;\n this.parent = substance.mixture.parentSubstance;\n this.relatedSubstanceUuid = this.mixture.parentSubstance && this.mixture.parentSubstance.refuuid || '';\n this.substanceFormService.resetState();\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.mixture.access = access;\n }\n\n parentSubstanceUpdated(substance: SubstanceSummary): void {\n\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.mixture.parentSubstance = relatedSubstance;\n this.relatedSubstanceUuid = relatedSubstance && relatedSubstance.refuuid || '';\n } else {\n this.mixture.parentSubstance = null;\n this.relatedSubstanceUuid = null;\n }\n }\n\n}\n","
\n
\n \n \n
\n \n
\n
\n \n
\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatInputModule} from '@angular/material/input';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {NameResolverModule} from '@gsrs-core/name-resolver/name-resolver.module';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {SubstanceFormMixtureDetailsComponent} from '@gsrs-core/substance-form/mixture-details/substance-form-mixture-details.component';\nimport {SubstanceSelectorModule} from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMixtureDetailsComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormMixtureDetailsComponent\n ]\n})\nexport class SubstanceFormMixtureDetailsModule { }\n"],"sourceRoot":"webpack:///","file":"1605.e926f9e8319f223e.js"} \ No newline at end of file +{"version":3,"mappings":"qZAgBaA,EAAb,eAAaA,EAAb,0CAOE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cALDA,gBAAqC,GAQ3CA,EAAKC,uBAAyB,iCAHeD,EAVjD,uCAgBE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,mBAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YACjD,MAArBD,EAAUE,UACZF,EAAUE,QAAU,CAClBC,OAAQ,KAGZC,EAAKF,QAAUF,EAAUE,QACzBE,EAAKC,OAASL,EAAUE,QAAQI,gBAChCF,EAAKG,qBAAuBH,EAAKF,QAAQI,iBAAmBF,EAAKF,QAAQI,gBAAgBE,SAAW,GACpGJ,EAAKb,qBAAqBkB,eAE5Bb,KAAKc,cAAcC,KAAKZ,KA7B5B,6BAgCE,cAhCF,yBAmCE,WACEH,KAAKc,cAAcE,QAAQ,YACzBC,EAAaC,kBArCnB,0BAyCE,SAAaX,GACXP,KAAKM,QAAQC,OAASA,IA1C1B,oCA6CE,SAAuBH,GAErB,GAAkB,OAAdA,EAAoB,CACtB,IAAMe,EAAqC,CACzCC,SAAUhB,EAAUiB,MACpBC,KAAMlB,EAAUiB,MAChBT,QAASR,EAAUmB,KACnBC,eAAgB,YAChBC,WAAYrB,EAAUqB,YAExBzB,KAAKM,QAAQI,gBAAkBS,EAC/BnB,KAAKW,qBAAuBQ,GAAoBA,EAAiBP,SAAW,QAE5EZ,KAAKM,QAAQI,gBAAkB,KAC/BV,KAAKW,qBAAuB,SA3DlCe,GAA2DC,kDAA9CjC,GAAoCkC,2DAApClC,EAAoCmC,2WChBjDD,iBACEA,iBACEA,oCAAwBA,4CAAoBE,8BAG5CF,QACFA,QAGFA,QACAA,iBACEA,4BACFA,eAR4BA,iDAOVA,4UDKLlC,EAAb,cEeaqC,YAAb,eAAaA,KAAbC,iFAAaD,4DAjBF,CACPE,KACAC,cAAsCxC,GACtCyC,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,KACAC,QAMSZ,EAAb","names":["SubstanceFormMixtureDetailsComponent","substanceFormService","gaService","cvService","a","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","mixture","access","n","parent","parentSubstance","relatedSubstanceUuid","refuuid","resetState","subscriptions","push","forEach","subscription","unsubscribe","relatedSubstance","refPname","_name","name","uuid","substanceClass","approvalID","i","SubstanceFormBase","i0","selectors","ctx","SubstanceFormMixtureDetailsModule","m","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/mixture-details/substance-form-mixture-details.component.ts","./src/app/core/substance-form/mixture-details/substance-form-mixture-details.component.html","./src/app/core/substance-form/mixture-details/substance-form-mixture-details.module.ts"],"sourcesContent":["import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Mixture, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {IDropdownSettings} from 'ng-multiselect-dropdown';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-substance-form-mixture-details',\n templateUrl: './substance-form-mixture-details.component.html',\n styleUrls: ['./substance-form-mixture-details.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormMixtureDetailsComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n\n parent: SubstanceRelated;\n relatedSubstanceUuid: string;\n mixture: Mixture;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Mixture Details';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Mixture Details');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.mixture == null) {\n substance.mixture = {\n access: []\n };\n }\n this.mixture = substance.mixture;\n this.parent = substance.mixture.parentSubstance;\n this.relatedSubstanceUuid = this.mixture.parentSubstance && this.mixture.parentSubstance.refuuid || '';\n this.substanceFormService.resetState();\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.mixture.access = access;\n }\n\n parentSubstanceUpdated(substance: SubstanceSummary): void {\n\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.mixture.parentSubstance = relatedSubstance;\n this.relatedSubstanceUuid = relatedSubstance && relatedSubstance.refuuid || '';\n } else {\n this.mixture.parentSubstance = null;\n this.relatedSubstanceUuid = null;\n }\n }\n\n}\n","
\n
\n \n \n
\n \n
\n
\n \n
\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatInputModule} from '@angular/material/input';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {NameResolverModule} from '@gsrs-core/name-resolver/name-resolver.module';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {SubstanceFormMixtureDetailsComponent} from '@gsrs-core/substance-form/mixture-details/substance-form-mixture-details.component';\nimport {SubstanceSelectorModule} from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMixtureDetailsComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormMixtureDetailsComponent\n ]\n})\nexport class SubstanceFormMixtureDetailsModule { }\n"],"sourceRoot":"webpack:///","file":"1605.0458f0024200345f.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1704.3c88a3cb0f5db0ae.js b/frontend/src/main/resources/static/1704.3c88a3cb0f5db0ae.js new file mode 100644 index 0000000..b921402 --- /dev/null +++ b/frontend/src/main/resources/static/1704.3c88a3cb0f5db0ae.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1704],{51704:function(le,C,a){a.r(C),a.d(C,{SubstanceFormRelationshipsModule:function(){return se}});var m=a(1884),h=a(39117),d=a(36362),F=a(46751),S=a(56101),y=a(79550),M=a(24874),O=a(96238),e=a(86613),I=a(78444),_=a(44770),x=a(43365),c=a(90587),f=a(87317),b=a(26439),w=a(51279),A=a(42827),P=a(52149),Z=a(40089),v=a(65590),J=a(24459),U=a(16667),Q=a(84577),N=a(33662),k=a(48302),D=a(14900);function E(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",21),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",22),e.NdJ("click",function(){return e.CHM(i),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",23),e.qZA(),e.qZA()}}function Y(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-cv-input",24),e.NdJ("valueChange",function(o){return e.CHM(i),e.oxw().relationship.qualification=o}),e.qZA(),e.TgZ(2,"app-cv-input",25),e.NdJ("valueChange",function(o){return e.CHM(i),e.oxw().relationship.interactionType=o}),e.qZA(),e.qZA()}if(2&n){var t=e.oxw();e.xp6(1),e.Q6J("model",t.relationship.qualification),e.xp6(1),e.Q6J("model",t.relationship.interactionType)}}function z(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"div",26),e.TgZ(2,"div",27),e._uU(3,"Comments"),e.qZA(),e.TgZ(4,"textarea",28),e.NdJ("ngModelChange",function(o){return e.CHM(i),e.oxw().relationship.comments=o}),e._uU(5," "),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw();e.xp6(4),e.Q6J("ngModel",t.relationship.comments)}}function q(n,l){1&n&&e._UZ(0,"mat-icon",29)}function H(n,l){1&n&&e._UZ(0,"mat-icon",30)}function j(n,l){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",35),e._UZ(2,"app-domain-references",36,37),e.qZA(),e.qZA()),2&n){var i=e.oxw(2);e.xp6(2),e.Q6J("referencesUuids",i.relationship.references)}}function $(n,l){if(1&n&&(e.TgZ(0,"div"),e.TgZ(1,"div",31),e.TgZ(2,"div",32),e._uU(3,"Amount"),e.qZA(),e._UZ(4,"app-amount-form",33),e.qZA(),e.YNc(5,j,4,1,"div",13),e.TgZ(6,"div",9),e._UZ(7,"app-audit-info",34),e.qZA(),e.qZA()),2&n){var i=e.oxw();e.xp6(4),e.Q6J("substanceAmount",i.relationship.amount),e.xp6(1),e.Q6J("ngIf",i.viewFull),e.xp6(2),e.Q6J("source",i.relationship)}}var L=function(){var n=function(){function l(i,t){(0,h.Z)(this,l),this.cvService=i,this.utilsService=t,this.relationshipDeleted=new e.vpe,this.viewFull=!0}return(0,m.Z)(l,[{key:"ngOnInit",value:function(){}},{key:"show",get:function(){return this.viewFull||null},set:function(t){null!=t&&(this.viewFull=t)}},{key:"relationship",get:function(){return this.privateRelationship},set:function(t){this.privateRelationship=t,null==this.privateRelationship.amount&&(this.privateRelationship.amount={}),this.relatedSubstanceUuid=this.privateRelationship.relatedSubstance&&this.privateRelationship.relatedSubstance.refuuid||"",this.mediatorSubstanceUuid=this.privateRelationship.mediatorSubstance&&this.privateRelationship.mediatorSubstance.refuuid||"",this.name=this.privateRelationship.relatedSubstance.refPname?this.privateRelationship.relatedSubstance.refPname:this.privateRelationship.relatedSubstance.name}},{key:"deleteRelationship",value:function(){var t=this;this.privateRelationship.$$deletedCode=this.utilsService.newUUID(),(!this.privateRelationship.relatedSubstance||!this.privateRelationship.relatedSubstance.refuuid)&&!this.privateRelationship.type&&(this.deleteTimer=setTimeout(function(){t.relationshipDeleted.emit(t.relationship)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateRelationship.$$deletedCode}},{key:"updateAccess",value:function(t){this.relationship.access=t}},{key:"relatedSubstanceUpdated",value:function(t){this.relationship.relatedSubstance=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:{}}},{key:"mediatorSubstanceUpdated",value:function(t){this.relationship.mediatorSubstance=null!==t?{refPname:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:{}}}]),l}();return n.\u0275fac=function(i){return new(i||n)(e.Y36(A.I),e.Y36(P.F))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-relationship-form"]],inputs:{show:"show",relationship:"relationship"},outputs:{relationshipDeleted:"relationshipDeleted"},decls:22,vars:13,consts:[[1,"relationship-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"flex-column","delete-column"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete relationship",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Related Substance","header","Related Substance",3,"hideImage","subuuid","name","selectionUpdated"],[1,"flex-column","form-content"],[1,"form-row"],["required","true","domain","RELATIONSHIP_TYPE","title","Type","name","type",1,"type",3,"model","valueChange"],[3,"access","accessOut"],["class","form-row ",4,"ngIf"],["class","form-row",4,"ngIf"],[1,"flex-column","mediator-substance"],["eventCategory","substanceFormDefinitionType","placeholder","Mediator Substance","header","Mediator Substance",3,"hideImage","subuuid","selectionUpdated"],["matTooltip","Expand / collapse rows",1,"chevron"],["mat-icon-button","",1,"chevron-button",3,"click"],["svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],[4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],["key","Relationship Qualification","title","Qualification","name","Qualification",1,"qualification",3,"model","valueChange"],["key","Relationship Interaction Type","title","Interaction Type","name","Interaction Type",1,"interaction-type",3,"model","valueChange"],[1,"comments"],[1,"textarea-label"],["placeholder","Enter text here","name","comments",3,"ngModel","ngModelChange"],["svgIcon","chevron_up"],["svgIcon","chevron_down"],[1,"amount-form-container"],[1,"amount-title"],[3,"substanceAmount"],[3,"source"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(i,t){1&i&&(e.TgZ(0,"div",0),e.YNc(1,E,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return t.deleteRelationship()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"app-substance-selector",7),e.NdJ("selectionUpdated",function(o){return t.relatedSubstanceUpdated(o)}),e.qZA(),e.qZA(),e.TgZ(8,"div",8),e.TgZ(9,"div",9),e.TgZ(10,"app-cv-input",10),e.NdJ("valueChange",function(o){return t.relationship.type=o}),e.qZA(),e.TgZ(11,"div"),e.TgZ(12,"app-access-manager",11),e.NdJ("accessOut",function(o){return t.updateAccess(o)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(13,Y,3,2,"div",12),e.YNc(14,z,6,1,"div",13),e.qZA(),e.TgZ(15,"div",14),e.TgZ(16,"app-substance-selector",15),e.NdJ("selectionUpdated",function(o){return t.mediatorSubstanceUpdated(o)}),e.qZA(),e.qZA(),e.TgZ(17,"div",16),e.TgZ(18,"button",17),e.NdJ("click",function(){return t.viewFull=!t.viewFull}),e.YNc(19,q,1,0,"mat-icon",18),e.YNc(20,H,1,0,"mat-icon",19),e.qZA(),e.qZA(),e.qZA(),e.YNc(21,$,8,3,"div",20)),2&i&&(e.xp6(1),e.Q6J("ngIf",t.relationship.$$deletedCode),e.xp6(6),e.Q6J("hideImage",!t.viewFull)("subuuid",t.relatedSubstanceUuid)("name",t.name),e.xp6(3),e.Q6J("model",t.relationship.type),e.xp6(2),e.Q6J("access",t.relationship.access),e.xp6(1),e.Q6J("ngIf",t.viewFull),e.xp6(1),e.Q6J("ngIf",t.viewFull),e.xp6(2),e.Q6J("hideImage",!t.viewFull)("subuuid",t.mediatorSubstanceUuid),e.xp6(3),e.Q6J("ngIf",t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.relationship.$$deletedCode&&t.viewFull))},directives:[d.O5,f.lW,Z.gM,v.Hw,J.Q,U.S,Q.h,c.Fj,c.JJ,c.On,N.f,k.V,D.n],styles:[".relationship-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.type[_ngcontent-%COMP%] mat-form-field, .name[_ngcontent-%COMP%] mat-form-field, .property-name[_ngcontent-%COMP%] mat-form-field{width:100%}.collapse[_ngcontent-%COMP%]{padding:20px 10px 12px;position:relative}.chevron[_ngcontent-%COMP%]{width:20px;line-height:67px;color:var(--chevron-color)}.chevron-button[_ngcontent-%COMP%]{width:20px}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.related-substance[_ngcontent-%COMP%], .mediator-substance[_ngcontent-%COMP%]{max-width:25%;width:25%}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .qualification[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .interaction-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .comments[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}@media (max-width: 990px){.form-content[_ngcontent-%COMP%]{width:100%}.mediator-substance[_ngcontent-%COMP%]{-ms-flex-order:-1;order:-1;width:40%;max-width:40%}.related-substance[_ngcontent-%COMP%]{-ms-flex-order:-2;order:-2;width:40%;max-width:40%}.delete-column[_ngcontent-%COMP%]{-ms-flex-order:-3;order:-3;width:5%}.relationship-form-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-between}}"]}),n}(),T=a(19975);function V(n,l){if(1&n&&(e.TgZ(0,"mat-form-field",7),e._UZ(1,"input",8),e.qZA()),2&n){var i=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",i.searchControl)}}function B(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"button",9),e.NdJ("click",function(){return e.CHM(i),e.oxw().collapse()}),e._uU(1),e.qZA()}if(2&n){var t=e.oxw();e.xp6(1),e.hij("",t.expanded?"Collapse":"Expand"," All")}}var R=function(){return[5,10,25,100]};function W(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(o){e.CHM(i);var r=e.oxw();return r.pageChange(o,r.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,R))}}function X(n,l){1&n&&e._UZ(0,"mat-divider",14),2&n&&e.Q6J("inset",!0)}function K(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",11),e.TgZ(1,"app-relationship-form",12),e.NdJ("relationshipDeleted",function(g){return e.CHM(i),e.oxw().deleteRelationship(g)}),e.qZA(),e.YNc(2,X,1,1,"mat-divider",13),e.qZA()}if(2&n){var t=l.$implicit,s=l.last,o=l.index,r=e.oxw();e.Q6J("id","substance-relationship-"+o),e.xp6(1),e.Q6J("relationship",t)("show",r.expanded),e.xp6(1),e.Q6J("ngIf",!s)}}function G(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(o){e.CHM(i);var r=e.oxw();return r.pageChange(o,r.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,R))}}function ee(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",15),e._UZ(1,"span",2),e.TgZ(2,"button",16),e.NdJ("click",function(){return e.CHM(i),e.oxw().addRelationship()}),e._uU(3," Add relationship "),e._UZ(4,"mat-icon",17),e.qZA(),e.qZA()}}var te=function(){var n=function(l){(0,F.Z)(t,l);var i=(0,S.Z)(t);function t(s,o,r){var p;return(0,h.Z)(this,t),(p=i.call(this,r)).substanceFormRelationshipsService=s,p.scrollToService=o,p.gaService=r,p.subscriptions=[],p.expanded=!0,p}return(0,m.Z)(t,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Relationships"),this.analyticsEventCategory="substance form relationships"}},{key:"ngAfterViewInit",value:function(){var o=this,r=this.substanceFormRelationshipsService.substanceRelationships.subscribe(function(p){o.relationships=p,o.filtered=p;var g=o.searchControl.valueChanges.subscribe(function(u){o.filterList(u,o.relationships,o.analyticsEventCategory)},function(u){});o.subscriptions.push(g),o.page=0,o.pageChange()});this.subscriptions.push(r)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(o){o.unsubscribe()})}},{key:"collapse",value:function(){this.expanded=!this.expanded}},{key:"addItem",value:function(){this.addRelationship()}},{key:"addRelationship",value:function(){var o=this;this.substanceFormRelationshipsService.addSubstanceRelationship(),setTimeout(function(){o.scrollToService.scrollToElement("substance-relationship-0","center")})}},{key:"deleteRelationship",value:function(o){this.substanceFormRelationshipsService.deleteSubstanceRelationship(o)}}]),t}(y.u);return n.\u0275fac=function(i){return new(i||n)(e.Y36(O.F),e.Y36(I.i),e.Y36(M.$))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-form-relationships-card"]],features:[e.qOj],decls:8,vars:6,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["class","standardize","mat-button","",3,"click",4,"ngIf"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","relationship","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["mat-button","",1,"standardize",3,"click"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"relationship",3,"id"],[3,"relationship","show","relationshipDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(i,t){1&i&&(e.TgZ(0,"div",0),e.YNc(1,V,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.YNc(3,B,2,1,"button",3),e.qZA(),e.YNc(4,W,1,5,"mat-paginator",4),e.YNc(5,K,3,4,"div",5),e.YNc(6,G,1,5,"mat-paginator",4),e.YNc(7,ee,5,0,"div",6)),2&i&&(e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>t.pageSize),e.xp6(2),e.Q6J("ngIf",t.relationships&&t.relationships.length>0),e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>5),e.xp6(1),e.Q6J("ngForOf",t.paged),e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>5),e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>0))},directives:[d.O5,_.KE,x.Nt,c.Fj,c.JJ,c.oH,f.lW,b.NW,d.sg,w.P,L,T.d,v.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.relationship[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.relationship[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.relationship[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.relationship[_ngcontent-%COMP%] .mat-expansion-panel, .relationship[_ngcontent-%COMP%] .mat-table, .relationship[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),n}(),ne=a(64061),ie=a(7168),oe=a(94673),ae=a(63200),se=function(){var n=(0,m.Z)(function l(){(0,h.Z)(this,l)});return n.\u0275fac=function(i){return new(i||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[d.ez,ne.o.forChild(te),ie.O,T.t,v.Ps,f.ot,oe.w,_.lN,c.UX,c.u5,b.TU,x.c,ae.U,Z.AV]]}),n}()}}]); +//# sourceMappingURL=1704.3c88a3cb0f5db0ae.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1704.3c88a3cb0f5db0ae.js.map b/frontend/src/main/resources/static/1704.3c88a3cb0f5db0ae.js.map new file mode 100644 index 0000000..f7e0645 --- /dev/null +++ b/frontend/src/main/resources/static/1704.3c88a3cb0f5db0ae.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"ggBACEA,kBACEA,yBACAA,qBAA0CA,iDAASC,eACjDD,uBACFA,QACFA,+CA0BEA,iBACEA,2BACqDA,uFACrDA,QAEAA,2BACuDA,yFACvDA,QAEFA,8BAPgBA,qDAIAA,8FAIhBA,iBACEA,kBACEA,kBAA4BA,oBAAQA,QACpCA,uBAAwCA,oFACxCA,4BACFA,QACFA,8BAH4CA,wEAa5CA,4CACAA,gDASFA,iBACEA,kBACEA,uCACFA,QACFA,6BAF2BA,sFAP7BA,eACEA,kBACEA,kBAA0BA,kBAAMA,QAChCA,8BACFA,QACAA,wBAKAA,iBACEA,6BACFA,QACFA,4BAVqBA,wDAEKA,kCAMNA,yCC9Db,IAAME,EAAb,eAAaA,EAAb,WASE,WACUC,EACAC,IAA0B,eAD1BC,iBACAA,oBAPAA,yBAAsB,IAAIC,MAEpCD,eAAW,EANb,uCAcE,cAdF,gBAyBE,WACE,OAAOA,KAAKE,UAAY,MA1B5BC,IAkBE,SACSC,GACI,MAAPA,IACHJ,KAAKE,SAAWE,KArBrB,wBAuCE,WACE,OAAOJ,KAAKK,qBAxChBF,IA4BE,SACiBG,GACfN,KAAKK,oBAAsBC,EACY,MAAnCN,KAAKK,oBAAoBE,SAC3BP,KAAKK,oBAAoBE,OAAS,IAEpCP,KAAKQ,qBAAuBR,KAAKK,oBAAoBI,kBAAoBT,KAAKK,oBAAoBI,iBAAiBC,SAAW,GAC9HV,KAAKW,sBAAwBX,KAAKK,oBAAoBO,mBAAqBZ,KAAKK,oBAAoBO,kBAAkBF,SAAW,GACjIV,KAAKa,KAAOb,KAAKK,oBAAoBI,iBAAiBK,SAAUd,KAAKK,oBAAoBI,iBAAiBK,SAAWd,KAAKK,oBAAoBI,iBAAiBI,OApCnK,gCA4CE,WAAkB,WAChBb,KAAKK,oBAAoBU,cAAgBf,KAAKD,aAAaiB,YACrDhB,KAAKK,oBAAoBI,mBAAqBT,KAAKK,oBAAoBI,iBAAiBC,WACxFV,KAAKK,oBAAoBY,OAE7BjB,KAAKkB,YAAcC,WAAW,WAC5BC,EAAKC,oBAAoBC,KAAKF,EAAKd,eAClC,QAnDT,wBAuDE,WACEiB,aAAavB,KAAKkB,oBACXlB,KAAKK,oBAAoBU,gBAzDpC,0BA4DE,SAAaS,GACXxB,KAAKM,aAAakB,OAASA,IA7D/B,qCAgEE,SAAwBC,GASpBzB,KAAKM,aAAaG,iBARD,OAAdgB,EACwC,CACzCX,SAAUW,EAAUC,MACpBb,KAAMY,EAAUC,MAChBhB,QAASe,EAAUE,KACnBC,eAAgB,YAChBC,WAAYJ,EAAUI,YAIa,KA3E3C,sCA+EE,SAAyBJ,GAQvBzB,KAAKM,aAAaM,kBAPC,OAAda,EACwC,CAC3CX,SAAUW,EAAUC,MACpBhB,QAASe,EAAUE,KACnBC,eAAgB,YAChBC,WAAYJ,EAAUI,YAIc,OAzF1CC,kDAAajC,GAAyBF,gDAAzBE,EAAyBkC,84DDZtCpC,iBACEA,uBAMAA,iBACIA,iBACIA,oBAAyDA,gCAASqC,yBAChErC,sBACFA,QACFA,QACNA,QACAA,iBACEA,oCAAwBA,4CAAoBqC,+BAG5CrC,QACFA,QACAA,iBACEA,iBAEEA,4BAC4CA,+DAC5CA,QAEAA,gBACEA,kCAAoBA,qCAAaqC,oBACjCrC,QACFA,QACFA,QACAA,yBAUAA,yBAOFA,QACAA,mBACIA,sCAAwBA,4CAAoBqC,gCAG9CrC,QACAA,QAEFA,mBAA6DA,sBAAwBA,yDACnFA,8BACAA,8BACFA,QACAA,QACFA,QACAA,gCA9DQA,oDAe8EA,wCAAyB,iCAAzBA,CAAyB,eAQ3FA,4CAI2CA,+CAIlCA,kCAUDA,kCAUuDA,wCAAyB,mCAM7FA,kCACAA,mCAITA,+kFCnDOE,EAAb,uCCXEF,4BACEA,mBACFA,4BAFgBA,4BACuBA,qFAGvCA,oBAA2FA,iDAASC,aAAYD,SAAqCA,8BAArCA,sIAMlHA,4BACIA,uDAAQsC,2CACVtC,8BAF+DA,iDAA2C,mBAA3CA,CAA2C,aAA3CA,CAA2C,oDAO1GA,+BAAkCA,wDAJpCA,kBAEEA,oCAAqDA,gEAAuBuC,wBAC5EvC,QACAA,gCACFA,+DAJEA,wCACuBA,iCAA6B,mBAEFA,iEAEpDA,4BACEA,uDAAQwC,2CACVxC,8BAFiEA,iDAA2C,mBAA3CA,CAA2C,aAA3CA,CAA2C,sEAM5GA,kBACIA,kBACAA,qBAAmBA,iDAASyC,oBACxBzC,8BAAiBA,uBACnBA,QACJA,SClBK,IAAM0C,GAAb,eAAaA,EAAb,0CAME,WACUC,EACAC,EACDC,GAAiC,6BAExCC,cAAMD,IAJEF,oCACAG,oBACDA,cANDA,gBAAqC,GAC7CA,YAAW,EAK+BA,EAT5C,uCAcE,WACEzC,KAAK0C,iBAAiBpB,MAAK,GAC3BtB,KAAK2C,gBAAgBrB,KAAK,iBAC1BtB,KAAK4C,uBAAyB,iCAjBlC,6BAoBE,WAAe,WACPC,EAA4B7C,KAAKsC,kCAAkCQ,uBAAuBC,UAAU,YACxGC,EAAKC,cAAgBA,EACrBD,EAAKE,SAAWD,EAChB,IAAME,EAAqBH,EAAKI,cAAcC,aAAaN,UAAU,YACnEC,EAAKM,WAAWC,EAAOP,EAAKC,cAAeD,EAAKJ,yBAC/C,eAEHI,EAAKQ,cAAcC,KAAKN,GACxBH,EAAKU,KAAO,EACZV,EAAKW,eAEP3D,KAAKwD,cAAcC,KAAKZ,KAhC5B,yBAmCE,WACE7C,KAAK4D,mBAAmBtC,OACxBtB,KAAKwD,cAAcK,QAAQ,YACzBC,EAAaC,kBAtCnB,sBA0CE,WACE/D,KAAKgE,UAAYhE,KAAKgE,WA3C1B,qBA8CE,WACEhE,KAAKiE,oBA/CT,6BAkDE,WAAe,WACbjE,KAAKsC,kCAAkC4B,2BACvC/C,WAAW,WACT6B,EAAKT,gBAAgB4B,gBAArB,2BAAiE,cArDvE,gCAyDE,SAAmB7D,GACjBN,KAAKsC,kCAAkC8B,4BAA4B9D,OA1DvEc,GAA6DiD,kDAAhDhC,GAAuC1C,2DAAvC0C,EAAuCN,46BDbpDpC,iBACEA,kCAGAA,kBACAA,0BAKFA,QACAA,iCAGAA,uBAMAA,iCAMAA,+BAzByDA,0EAI9CA,iEAMKA,iEAGmCA,kCAMnCA,iEAMVA,8/BCbO0C,EAAb,kDC0BaiC,GAAb,eAAaA,KAAbC,iFAAaD,4DArBF,CACPE,KACAC,cAAsCpC,IACtCqC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,SAOSf,EAAb","names":["i0","ctx_r6","RelationshipFormComponent","cvService","utilsService","this","EventEmitter","viewFull","set","val","privateRelationship","relationship","amount","relatedSubstanceUuid","relatedSubstance","refuuid","mediatorSubstanceUuid","mediatorSubstance","name","refPname","$$deletedCode","newUUID","type","deleteTimer","setTimeout","t","relationshipDeleted","emit","clearTimeout","access","substance","_name","uuid","substanceClass","approvalID","l","selectors","ctx","ctx_r8","ctx_r14","ctx_r16","ctx_r18","SubstanceFormRelationshipsCardComponent","substanceFormRelationshipsService","scrollToService","gaService","p","canAddItemUpdate","menuLabelUpdate","analyticsEventCategory","relationshipsSubscription","substanceRelationships","subscribe","o","relationships","filtered","searchSubscription","searchControl","valueChanges","filterList","value","subscriptions","push","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","expanded","addRelationship","addSubstanceRelationship","scrollToElement","deleteSubstanceRelationship","SubstanceCardBaseFilteredList","SubstanceFormRelationshipsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule","MatTooltipModule"],"sources":["./src/app/core/substance-form/relationships/relationship-form.component.html","./src/app/core/substance-form/relationships/relationship-form.component.ts","./src/app/core/substance-form/relationships/substance-form-relationships-card.component.html","./src/app/core/substance-form/relationships/substance-form-relationships-card.component.ts","./src/app/core/substance-form/relationships/substance-form-relationships.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n
\n \n \n \n\n
\n \n \n
\n
\n
\n \n \n\n \n \n\n
\n
\n
\n
Comments
\n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n
Amount
\n \n
\n
\n
\n \n
\n
\n
\n \n
\n
\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceRelationship, SubstanceSummary, SubstanceRelated, MediatorSubstance } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UtilsService } from '../../utils/utils.service';\n\n@Component({\n selector: 'app-relationship-form',\n templateUrl: './relationship-form.component.html',\n styleUrls: ['./relationship-form.component.scss']\n})\nexport class RelationshipFormComponent implements OnInit {\n private privateRelationship: SubstanceRelationship;\n relatedSubstanceUuid: string;\n mediatorSubstanceUuid: string;\n @Output() relationshipDeleted = new EventEmitter();\n deleteTimer: any;\n viewFull = true;\n name?: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private utilsService: UtilsService\n ) { }\n\n ngOnInit() {\n\n }\n\n @Input()\n set show(val: boolean) {\n if (val != null) {\n this.viewFull = val;\n }\n }\n\n get show(): boolean {\n return this.viewFull || null;\n }\n @Input()\n set relationship(relationship: SubstanceRelationship) {\n this.privateRelationship = relationship;\n if (this.privateRelationship.amount == null) {\n this.privateRelationship.amount = {};\n }\n this.relatedSubstanceUuid = this.privateRelationship.relatedSubstance && this.privateRelationship.relatedSubstance.refuuid || '';\n this.mediatorSubstanceUuid = this.privateRelationship.mediatorSubstance && this.privateRelationship.mediatorSubstance.refuuid || '';\n this.name = this.privateRelationship.relatedSubstance.refPname? this.privateRelationship.relatedSubstance.refPname : this.privateRelationship.relatedSubstance.name;\n }\n\n get relationship(): SubstanceRelationship {\n return this.privateRelationship;\n }\n\n\n deleteRelationship(): void {\n this.privateRelationship.$$deletedCode = this.utilsService.newUUID();\n if ((!this.privateRelationship.relatedSubstance || !this.privateRelationship.relatedSubstance.refuuid)\n && !this.privateRelationship.type\n ) {\n this.deleteTimer = setTimeout(() => {\n this.relationshipDeleted.emit(this.relationship);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateRelationship.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.relationship.access = access;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if ( substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.relationship.relatedSubstance = relatedSubstance;\n } else {\n this.relationship.relatedSubstance = {};\n }\n }\n\n mediatorSubstanceUpdated(substance: SubstanceSummary): void {\n if ( substance !== null) {\n const relatedSubstance: MediatorSubstance = {\n refPname: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.relationship.mediatorSubstance = relatedSubstance;\n } else {\n this.relationship.mediatorSubstance = {};\n }\n}\n}\n","
\n pageSize\">\n \n \n \n \n\n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceRelationship } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormRelationshipsService } from './substance-form-relationships.service';\n\n@Component({\n selector: 'app-substance-form-relationships-card',\n templateUrl: './substance-form-relationships-card.component.html',\n styleUrls: ['./substance-form-relationships-card.component.scss']\n})\nexport class SubstanceFormRelationshipsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n relationships: Array;\n private subscriptions: Array = [];\n expanded = true;\n\n constructor(\n private substanceFormRelationshipsService: SubstanceFormRelationshipsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Relationships');\n this.analyticsEventCategory = 'substance form relationships';\n }\n\n ngAfterViewInit() {\n const relationshipsSubscription = this.substanceFormRelationshipsService.substanceRelationships.subscribe(relationships => {\n this.relationships = relationships;\n this.filtered = relationships;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.relationships, this.analyticsEventCategory);\n }, error => {\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(relationshipsSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n collapse() {\n this.expanded = !this.expanded;\n }\n\n addItem(): void {\n this.addRelationship();\n }\n\n addRelationship(): void {\n this.substanceFormRelationshipsService.addSubstanceRelationship();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-relationship-0`, 'center');\n });\n }\n\n deleteRelationship(relationship: SubstanceRelationship): void {\n this.substanceFormRelationshipsService.deleteSubstanceRelationship(relationship);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormRelationshipsCardComponent } from './substance-form-relationships-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { RelationshipFormComponent } from './relationship-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormRelationshipsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule,\n MatTooltipModule\n ],\n declarations: [\n SubstanceFormRelationshipsCardComponent,\n RelationshipFormComponent\n ]\n})\nexport class SubstanceFormRelationshipsModule { }\n"],"sourceRoot":"webpack:///","file":"1704.3c88a3cb0f5db0ae.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1704.9c5b32662693a3c4.js b/frontend/src/main/resources/static/1704.9c5b32662693a3c4.js deleted file mode 100644 index 18b1bba..0000000 --- a/frontend/src/main/resources/static/1704.9c5b32662693a3c4.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1704],{51704:function(le,C,a){a.r(C),a.d(C,{SubstanceFormRelationshipsModule:function(){return se}});var m=a(48047),h=a(78069),d=a(36362),R=a(24582),y=a(7318),S=a(79550),M=a(24874),O=a(96238),e=a(76442),I=a(78444),_=a(44770),x=a(43365),c=a(90587),f=a(87317),b=a(26439),w=a(51279),A=a(42827),J=a(52149),Z=a(40089),g=a(65590),P=a(24459),U=a(16667),Q=a(84577),N=a(33662),D=a(48302),k=a(14900);function E(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",21),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",22),e.NdJ("click",function(){return e.CHM(i),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",23),e.qZA(),e.qZA()}}function Y(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-cv-input",24),e.NdJ("valueChange",function(o){return e.CHM(i),e.oxw().relationship.qualification=o}),e.qZA(),e.TgZ(2,"app-cv-input",25),e.NdJ("valueChange",function(o){return e.CHM(i),e.oxw().relationship.interactionType=o}),e.qZA(),e.qZA()}if(2&n){var t=e.oxw();e.xp6(1),e.Q6J("model",t.relationship.qualification),e.xp6(1),e.Q6J("model",t.relationship.interactionType)}}function z(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"div",26),e.TgZ(2,"div",27),e._uU(3,"Comments"),e.qZA(),e.TgZ(4,"textarea",28),e.NdJ("ngModelChange",function(o){return e.CHM(i),e.oxw().relationship.comments=o}),e._uU(5," "),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw();e.xp6(4),e.Q6J("ngModel",t.relationship.comments)}}function q(n,l){1&n&&e._UZ(0,"mat-icon",29)}function H(n,l){1&n&&e._UZ(0,"mat-icon",30)}function j(n,l){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",35),e._UZ(2,"app-domain-references",36,37),e.qZA(),e.qZA()),2&n){var i=e.oxw(2);e.xp6(2),e.Q6J("referencesUuids",i.relationship.references)}}function $(n,l){if(1&n&&(e.TgZ(0,"div"),e.TgZ(1,"div",31),e.TgZ(2,"div",32),e._uU(3,"Amount"),e.qZA(),e._UZ(4,"app-amount-form",33),e.qZA(),e.YNc(5,j,4,1,"div",13),e.TgZ(6,"div",9),e._UZ(7,"app-audit-info",34),e.qZA(),e.qZA()),2&n){var i=e.oxw();e.xp6(4),e.Q6J("substanceAmount",i.relationship.amount),e.xp6(1),e.Q6J("ngIf",i.viewFull),e.xp6(2),e.Q6J("source",i.relationship)}}var L=function(){var n=function(){function l(i,t){(0,h.Z)(this,l),this.cvService=i,this.utilsService=t,this.relationshipDeleted=new e.vpe,this.viewFull=!0}return(0,m.Z)(l,[{key:"ngOnInit",value:function(){}},{key:"show",get:function(){return this.viewFull||null},set:function(t){null!=t&&(this.viewFull=t)}},{key:"relationship",get:function(){return this.privateRelationship},set:function(t){this.privateRelationship=t,null==this.privateRelationship.amount&&(this.privateRelationship.amount={}),this.relatedSubstanceUuid=this.privateRelationship.relatedSubstance&&this.privateRelationship.relatedSubstance.refuuid||"",this.mediatorSubstanceUuid=this.privateRelationship.mediatorSubstance&&this.privateRelationship.mediatorSubstance.refuuid||""}},{key:"deleteRelationship",value:function(){var t=this;this.privateRelationship.$$deletedCode=this.utilsService.newUUID(),(!this.privateRelationship.relatedSubstance||!this.privateRelationship.relatedSubstance.refuuid)&&!this.privateRelationship.type&&(this.deleteTimer=setTimeout(function(){t.relationshipDeleted.emit(t.relationship)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateRelationship.$$deletedCode}},{key:"updateAccess",value:function(t){this.relationship.access=t}},{key:"relatedSubstanceUpdated",value:function(t){this.relationship.relatedSubstance=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:{}}},{key:"mediatorSubstanceUpdated",value:function(t){this.relationship.mediatorSubstance=null!==t?{refPname:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:{}}}]),l}();return n.\u0275fac=function(i){return new(i||n)(e.Y36(A.I),e.Y36(J.F))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-relationship-form"]],inputs:{show:"show",relationship:"relationship"},outputs:{relationshipDeleted:"relationshipDeleted"},decls:22,vars:12,consts:[[1,"relationship-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"flex-column","delete-column"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete relationship",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Related Substance","header","Related Substance",3,"hideImage","subuuid","selectionUpdated"],[1,"flex-column","form-content"],[1,"form-row"],["required","true","domain","RELATIONSHIP_TYPE","title","Type","name","type",1,"type",3,"model","valueChange"],[3,"access","accessOut"],["class","form-row ",4,"ngIf"],["class","form-row",4,"ngIf"],[1,"flex-column","mediator-substance"],["eventCategory","substanceFormDefinitionType","placeholder","Mediator Substance","header","Mediator Substance",3,"hideImage","subuuid","selectionUpdated"],["matTooltip","Expand / collapse rows",1,"chevron"],["mat-icon-button","",1,"chevron-button",3,"click"],["svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],[4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],["key","Relationship Qualification","title","Qualification","name","Qualification",1,"qualification",3,"model","valueChange"],["key","Relationship Interaction Type","title","Interaction Type","name","Interaction Type",1,"interaction-type",3,"model","valueChange"],[1,"comments"],[1,"textarea-label"],["placeholder","Enter text here","name","comments",3,"ngModel","ngModelChange"],["svgIcon","chevron_up"],["svgIcon","chevron_down"],[1,"amount-form-container"],[1,"amount-title"],[3,"substanceAmount"],[3,"source"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(i,t){1&i&&(e.TgZ(0,"div",0),e.YNc(1,E,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return t.deleteRelationship()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"app-substance-selector",7),e.NdJ("selectionUpdated",function(o){return t.relatedSubstanceUpdated(o)}),e.qZA(),e.qZA(),e.TgZ(8,"div",8),e.TgZ(9,"div",9),e.TgZ(10,"app-cv-input",10),e.NdJ("valueChange",function(o){return t.relationship.type=o}),e.qZA(),e.TgZ(11,"div"),e.TgZ(12,"app-access-manager",11),e.NdJ("accessOut",function(o){return t.updateAccess(o)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(13,Y,3,2,"div",12),e.YNc(14,z,6,1,"div",13),e.qZA(),e.TgZ(15,"div",14),e.TgZ(16,"app-substance-selector",15),e.NdJ("selectionUpdated",function(o){return t.mediatorSubstanceUpdated(o)}),e.qZA(),e.qZA(),e.TgZ(17,"div",16),e.TgZ(18,"button",17),e.NdJ("click",function(){return t.viewFull=!t.viewFull}),e.YNc(19,q,1,0,"mat-icon",18),e.YNc(20,H,1,0,"mat-icon",19),e.qZA(),e.qZA(),e.qZA(),e.YNc(21,$,8,3,"div",20)),2&i&&(e.xp6(1),e.Q6J("ngIf",t.relationship.$$deletedCode),e.xp6(6),e.Q6J("hideImage",!t.viewFull)("subuuid",t.relatedSubstanceUuid),e.xp6(3),e.Q6J("model",t.relationship.type),e.xp6(2),e.Q6J("access",t.relationship.access),e.xp6(1),e.Q6J("ngIf",t.viewFull),e.xp6(1),e.Q6J("ngIf",t.viewFull),e.xp6(2),e.Q6J("hideImage",!t.viewFull)("subuuid",t.mediatorSubstanceUuid),e.xp6(3),e.Q6J("ngIf",t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.relationship.$$deletedCode&&t.viewFull))},directives:[d.O5,f.lW,Z.gM,g.Hw,P.Q,U.S,Q.h,c.Fj,c.JJ,c.On,N.f,D.V,k.n],styles:[".relationship-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.type[_ngcontent-%COMP%] mat-form-field, .name[_ngcontent-%COMP%] mat-form-field, .property-name[_ngcontent-%COMP%] mat-form-field{width:100%}.collapse[_ngcontent-%COMP%]{padding:20px 10px 12px;position:relative}.chevron[_ngcontent-%COMP%]{width:20px;line-height:67px;color:#0009}.chevron-button[_ngcontent-%COMP%]{width:20px}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.related-substance[_ngcontent-%COMP%], .mediator-substance[_ngcontent-%COMP%]{max-width:25%;width:25%}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .qualification[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .interaction-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .comments[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}@media (max-width: 990px){.form-content[_ngcontent-%COMP%]{width:100%}.mediator-substance[_ngcontent-%COMP%]{-ms-flex-order:-1;order:-1;width:40%;max-width:40%}.related-substance[_ngcontent-%COMP%]{-ms-flex-order:-2;order:-2;width:40%;max-width:40%}.delete-column[_ngcontent-%COMP%]{-ms-flex-order:-3;order:-3;width:5%}.relationship-form-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-between}}"]}),n}(),T=a(19975);function V(n,l){if(1&n&&(e.TgZ(0,"mat-form-field",7),e._UZ(1,"input",8),e.qZA()),2&n){var i=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",i.searchControl)}}function B(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"button",9),e.NdJ("click",function(){return e.CHM(i),e.oxw().collapse()}),e._uU(1),e.qZA()}if(2&n){var t=e.oxw();e.xp6(1),e.hij("",t.expanded?"Collapse":"Expand"," All")}}var F=function(){return[5,10,25,100]};function W(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(o){e.CHM(i);var r=e.oxw();return r.pageChange(o,r.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,F))}}function X(n,l){1&n&&e._UZ(0,"mat-divider",14),2&n&&e.Q6J("inset",!0)}function K(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",11),e.TgZ(1,"app-relationship-form",12),e.NdJ("relationshipDeleted",function(v){return e.CHM(i),e.oxw().deleteRelationship(v)}),e.qZA(),e.YNc(2,X,1,1,"mat-divider",13),e.qZA()}if(2&n){var t=l.$implicit,s=l.last,o=l.index,r=e.oxw();e.Q6J("id","substance-relationship-"+o),e.xp6(1),e.Q6J("relationship",t)("show",r.expanded),e.xp6(1),e.Q6J("ngIf",!s)}}function G(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(o){e.CHM(i);var r=e.oxw();return r.pageChange(o,r.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,F))}}function ee(n,l){if(1&n){var i=e.EpF();e.TgZ(0,"div",15),e._UZ(1,"span",2),e.TgZ(2,"button",16),e.NdJ("click",function(){return e.CHM(i),e.oxw().addRelationship()}),e._uU(3," Add relationship "),e._UZ(4,"mat-icon",17),e.qZA(),e.qZA()}}var te=function(){var n=function(l){(0,R.Z)(t,l);var i=(0,y.Z)(t);function t(s,o,r){var p;return(0,h.Z)(this,t),(p=i.call(this,r)).substanceFormRelationshipsService=s,p.scrollToService=o,p.gaService=r,p.subscriptions=[],p.expanded=!0,p}return(0,m.Z)(t,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Relationships"),this.analyticsEventCategory="substance form relationships"}},{key:"ngAfterViewInit",value:function(){var o=this,r=this.substanceFormRelationshipsService.substanceRelationships.subscribe(function(p){o.relationships=p,o.filtered=p;var v=o.searchControl.valueChanges.subscribe(function(u){o.filterList(u,o.relationships,o.analyticsEventCategory)},function(u){});o.subscriptions.push(v),o.page=0,o.pageChange()});this.subscriptions.push(r)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(o){o.unsubscribe()})}},{key:"collapse",value:function(){this.expanded=!this.expanded}},{key:"addItem",value:function(){this.addRelationship()}},{key:"addRelationship",value:function(){var o=this;this.substanceFormRelationshipsService.addSubstanceRelationship(),setTimeout(function(){o.scrollToService.scrollToElement("substance-relationship-0","center")})}},{key:"deleteRelationship",value:function(o){this.substanceFormRelationshipsService.deleteSubstanceRelationship(o)}}]),t}(S.u);return n.\u0275fac=function(i){return new(i||n)(e.Y36(O.F),e.Y36(I.i),e.Y36(M.$))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-form-relationships-card"]],features:[e.qOj],decls:8,vars:6,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["class","standardize","mat-button","",3,"click",4,"ngIf"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","relationship","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["mat-button","",1,"standardize",3,"click"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"relationship",3,"id"],[3,"relationship","show","relationshipDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(i,t){1&i&&(e.TgZ(0,"div",0),e.YNc(1,V,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.YNc(3,B,2,1,"button",3),e.qZA(),e.YNc(4,W,1,5,"mat-paginator",4),e.YNc(5,K,3,4,"div",5),e.YNc(6,G,1,5,"mat-paginator",4),e.YNc(7,ee,5,0,"div",6)),2&i&&(e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>t.pageSize),e.xp6(2),e.Q6J("ngIf",t.relationships&&t.relationships.length>0),e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>5),e.xp6(1),e.Q6J("ngForOf",t.paged),e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>5),e.xp6(1),e.Q6J("ngIf",t.relationships&&t.relationships.length>0))},directives:[d.O5,_.KE,x.Nt,c.Fj,c.JJ,c.oH,f.lW,b.NW,d.sg,w.P,L,T.d,g.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.relationship[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.relationship[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.relationship[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.relationship[_ngcontent-%COMP%] .mat-expansion-panel, .relationship[_ngcontent-%COMP%] .mat-table, .relationship[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),n}(),ne=a(64061),ie=a(7168),oe=a(94673),ae=a(63200),se=function(){var n=(0,m.Z)(function l(){(0,h.Z)(this,l)});return n.\u0275fac=function(i){return new(i||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[d.ez,ne.o.forChild(te),ie.O,T.t,g.Ps,f.ot,oe.w,_.lN,c.UX,c.u5,b.TU,x.c,ae.U,Z.AV]]}),n}()}}]); -//# sourceMappingURL=1704.9c5b32662693a3c4.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1704.9c5b32662693a3c4.js.map b/frontend/src/main/resources/static/1704.9c5b32662693a3c4.js.map deleted file mode 100644 index d4f2235..0000000 --- a/frontend/src/main/resources/static/1704.9c5b32662693a3c4.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r6","RelationshipFormComponent","cvService","utilsService","this","EventEmitter","viewFull","set","val","privateRelationship","relationship","amount","relatedSubstanceUuid","relatedSubstance","refuuid","mediatorSubstanceUuid","mediatorSubstance","$$deletedCode","newUUID","type","deleteTimer","setTimeout","t","relationshipDeleted","emit","clearTimeout","access","substance","refPname","_name","name","uuid","substanceClass","approvalID","l","selectors","ctx","ctx_r8","ctx_r14","ctx_r16","ctx_r18","SubstanceFormRelationshipsCardComponent","substanceFormRelationshipsService","scrollToService","gaService","p","canAddItemUpdate","menuLabelUpdate","analyticsEventCategory","relationshipsSubscription","substanceRelationships","subscribe","o","relationships","filtered","searchSubscription","searchControl","valueChanges","filterList","value","subscriptions","push","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","expanded","addRelationship","addSubstanceRelationship","scrollToElement","deleteSubstanceRelationship","SubstanceCardBaseFilteredList","SubstanceFormRelationshipsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule","MatTooltipModule"],"sources":["./src/app/core/substance-form/relationships/relationship-form.component.html","./src/app/core/substance-form/relationships/relationship-form.component.ts","./src/app/core/substance-form/relationships/substance-form-relationships-card.component.html","./src/app/core/substance-form/relationships/substance-form-relationships-card.component.ts","./src/app/core/substance-form/relationships/substance-form-relationships.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n
\n \n \n \n\n
\n \n \n
\n
\n
\n \n \n\n \n \n\n
\n
\n
\n
Comments
\n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n
Amount
\n \n
\n
\n
\n \n
\n
\n
\n \n
\n
\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceRelationship, SubstanceSummary, SubstanceRelated, MediatorSubstance } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UtilsService } from '../../utils/utils.service';\n\n@Component({\n selector: 'app-relationship-form',\n templateUrl: './relationship-form.component.html',\n styleUrls: ['./relationship-form.component.scss']\n})\nexport class RelationshipFormComponent implements OnInit {\n private privateRelationship: SubstanceRelationship;\n relatedSubstanceUuid: string;\n mediatorSubstanceUuid: string;\n @Output() relationshipDeleted = new EventEmitter();\n deleteTimer: any;\n viewFull = true;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private utilsService: UtilsService\n ) { }\n\n ngOnInit() {\n\n }\n\n @Input()\n set show(val: boolean) {\n if (val != null) {\n this.viewFull = val;\n }\n }\n\n get show(): boolean {\n return this.viewFull || null;\n }\n @Input()\n set relationship(relationship: SubstanceRelationship) {\n this.privateRelationship = relationship;\n if (this.privateRelationship.amount == null) {\n this.privateRelationship.amount = {};\n }\n this.relatedSubstanceUuid = this.privateRelationship.relatedSubstance && this.privateRelationship.relatedSubstance.refuuid || '';\n this.mediatorSubstanceUuid = this.privateRelationship.mediatorSubstance && this.privateRelationship.mediatorSubstance.refuuid || '';\n }\n\n get relationship(): SubstanceRelationship {\n return this.privateRelationship;\n }\n\n\n deleteRelationship(): void {\n this.privateRelationship.$$deletedCode = this.utilsService.newUUID();\n if ((!this.privateRelationship.relatedSubstance || !this.privateRelationship.relatedSubstance.refuuid)\n && !this.privateRelationship.type\n ) {\n this.deleteTimer = setTimeout(() => {\n this.relationshipDeleted.emit(this.relationship);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateRelationship.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.relationship.access = access;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if ( substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.relationship.relatedSubstance = relatedSubstance;\n } else {\n this.relationship.relatedSubstance = {};\n }\n }\n\n mediatorSubstanceUpdated(substance: SubstanceSummary): void {\n if ( substance !== null) {\n const relatedSubstance: MediatorSubstance = {\n refPname: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.relationship.mediatorSubstance = relatedSubstance;\n } else {\n this.relationship.mediatorSubstance = {};\n }\n}\n}\n","
\n pageSize\">\n \n \n \n \n\n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceRelationship } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormRelationshipsService } from './substance-form-relationships.service';\n\n@Component({\n selector: 'app-substance-form-relationships-card',\n templateUrl: './substance-form-relationships-card.component.html',\n styleUrls: ['./substance-form-relationships-card.component.scss']\n})\nexport class SubstanceFormRelationshipsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n relationships: Array;\n private subscriptions: Array = [];\n expanded = true;\n\n constructor(\n private substanceFormRelationshipsService: SubstanceFormRelationshipsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Relationships');\n this.analyticsEventCategory = 'substance form relationships';\n }\n\n ngAfterViewInit() {\n const relationshipsSubscription = this.substanceFormRelationshipsService.substanceRelationships.subscribe(relationships => {\n this.relationships = relationships;\n this.filtered = relationships;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.relationships, this.analyticsEventCategory);\n }, error => {\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(relationshipsSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n collapse() {\n this.expanded = !this.expanded;\n }\n\n addItem(): void {\n this.addRelationship();\n }\n\n addRelationship(): void {\n this.substanceFormRelationshipsService.addSubstanceRelationship();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-relationship-0`, 'center');\n });\n }\n\n deleteRelationship(relationship: SubstanceRelationship): void {\n this.substanceFormRelationshipsService.deleteSubstanceRelationship(relationship);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormRelationshipsCardComponent } from './substance-form-relationships-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { RelationshipFormComponent } from './relationship-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormRelationshipsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule,\n MatTooltipModule\n ],\n declarations: [\n SubstanceFormRelationshipsCardComponent,\n RelationshipFormComponent\n ]\n})\nexport class SubstanceFormRelationshipsModule { }\n"],"sourceRoot":"webpack:///","file":"1704.9c5b32662693a3c4.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1899.a37c629305203eef.js b/frontend/src/main/resources/static/1899.a5d7af21aaab1cdf.js similarity index 98% rename from frontend/src/main/resources/static/1899.a37c629305203eef.js rename to frontend/src/main/resources/static/1899.a5d7af21aaab1cdf.js index f64538d..5f14f0a 100644 --- a/frontend/src/main/resources/static/1899.a37c629305203eef.js +++ b/frontend/src/main/resources/static/1899.a5d7af21aaab1cdf.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1899],{11899:function(Ae,y,l){l.r(y),l.d(y,{SubstanceReferencesModule:function(){return xe}});var S=l(48047),A=l(78069),Z=l(36362),T=l(95106),J=l(24582),U=l(7318),Y=l(54025),I=l(24874),q=l(50253),w=l(63169),m=l(90587),e=l(76442),C=l(44770),R=l(43365),f=l(97217),_=l(64316),F=l(91434),D=l(1130),N=l(65590),O=l(40089),Q=l(26439);function M(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Citation "),e.qZA())}function $(t,a){if(1&t&&(e.TgZ(0,"a",28),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.Q6J("href",n.url,e.LSH),e.xp6(1),e.hij("",n.citation," ")}}function H(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.hij(" ",n.citation," ")}}function P(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,$,2,2,"a",26),e.YNc(2,H,2,1,"span",27),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.url),e.xp6(1),e.Q6J("ngIf",!n.url)}}function j(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Type "),e.qZA())}function L(t,a){if(1&t&&(e.TgZ(0,"td",25),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.hij(" ",n.docType," ")}}function B(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Tags "),e.qZA())}function k(t,a){1&t&&(e.TgZ(0,"span"),e._uU(1,",\xa0"),e.qZA())}function V(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,k,2,0,"span",27),e.qZA()),2&t){var n=a.$implicit,s=a.last;e.xp6(1),e.Oqu(n),e.xp6(1),e.Q6J("ngIf",!s)}}function z(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,V,3,2,"span",29),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngForOf",n.tags)}}function E(t,a){if(1&t&&(e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"mat-form-field"),e._UZ(3,"input",32),e.qZA(),e.qZA(),e.qZA()),2&t){var n=e.oxw();e.xp6(3),e.Q6J("formControl",n.citationFilter)}}function X(t,a){if(1&t&&(e.TgZ(0,"a",28),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.Q6J("href",n.url,e.LSH),e.xp6(1),e.hij("",n.citation," ")}}function W(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.hij(" ",n.citation," ")}}function G(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,X,2,2,"a",26),e.YNc(2,W,2,1,"span",27),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.url),e.xp6(1),e.Q6J("ngIf",!n.url)}}function K(t,a){if(1&t&&(e.TgZ(0,"mat-option",37),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.Q6J("value",n.display),e.xp6(1),e.Oqu(n.display)}}function ee(t,a){if(1&t&&(e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"mat-form-field",33),e.TgZ(3,"mat-select",34),e.TgZ(4,"mat-select-trigger"),e._uU(5),e.qZA(),e.TgZ(6,"mat-option",35),e._uU(7,"Select Type Filter"),e.qZA(),e.YNc(8,K,2,2,"mat-option",36),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t){var n=e.oxw();e.xp6(3),e.Q6J("formControl",n.typeFilter),e.xp6(2),e.hij(" ",n.typeFilter.value?n.typeFilter.value:""," "),e.xp6(1),e.Q6J("value",null),e.xp6(2),e.Q6J("ngForOf",n.typeFilterOptions)}}function te(t,a){if(1&t&&(e.TgZ(0,"td",25),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.hij(" ",n.docType," ")}}function ne(t,a){if(1&t&&(e.TgZ(0,"mat-option",37),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.Q6J("value",n.display),e.xp6(1),e.Oqu(n.display)}}function ae(t,a){if(1&t&&(e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"mat-form-field",33),e.TgZ(3,"mat-select",34),e.TgZ(4,"mat-select-trigger"),e._uU(5),e.qZA(),e.TgZ(6,"mat-option",35),e._uU(7,"Select Tags Filter"),e.qZA(),e.YNc(8,ne,2,2,"mat-option",36),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t){var n=e.oxw();e.xp6(3),e.Q6J("formControl",n.tagsFilter),e.xp6(2),e.hij(" ",n.tagsFilter.value?n.tagsFilter.value:""," "),e.xp6(1),e.Q6J("value",null),e.xp6(2),e.Q6J("ngForOf",n.tagsFilterOptions)}}function ie(t,a){1&t&&(e.TgZ(0,"span"),e._uU(1,",\xa0"),e.qZA())}function oe(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,ie,2,0,"span",27),e.qZA()),2&t){var n=a.$implicit,s=a.last;e.xp6(1),e.Oqu(n),e.xp6(1),e.Q6J("ngIf",!s)}}function le(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,oe,3,2,"span",29),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngForOf",n.tags)}}function se(t,a){if(1&t){var n=e.EpF();e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"button",6),e.NdJ("click",function(){return e.CHM(n),e.oxw().resetFilters()}),e._uU(3,"Reset"),e.qZA(),e.qZA(),e.qZA()}}function ce(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," File "),e.qZA())}function re(t,a){if(1&t&&(e.TgZ(0,"a",39),e._UZ(1,"mat-icon",40),e.qZA()),2&t){var n=e.oxw().$implicit;e.Q6J("href",n.uploadedFile,e.LSH)}}function fe(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,re,2,1,"a",38),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.uploadedFile)}}function pe(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Access "),e.qZA())}function ue(t,a){1&t&&e._UZ(0,"mat-icon",45)}function me(t,a){if(1&t&&(e.TgZ(0,"span",43),e.YNc(1,ue,1,0,"mat-icon",44),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",n.access.length)}}function ge(t,a){1&t&&e._UZ(0,"mat-icon",48)}function de(t,a){if(1&t&&(e.TgZ(0,"span",46),e.YNc(1,ge,1,0,"mat-icon",47),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",0===n.access.length)}}function he(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,me,2,1,"span",41),e.YNc(2,de,2,1,"span",42),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.access.length),e.xp6(1),e.Q6J("ngIf",!n.access.length)}}function ve(t,a){1&t&&e._UZ(0,"tr",49)}function Ze(t,a){if(1&t&&e._UZ(0,"tr",50),2&t){var n=e.oxw();e.Q6J("hidden",n.hideFilters)}}function Te(t,a){1&t&&e._UZ(0,"tr",51)}var Ce=function(){return[5,10,25,100]},_e=function(){var t=function(a){(0,J.Z)(s,a);var n=(0,U.Z)(s);function s(c,i){var o;return(0,A.Z)(this,s),(o=n.call(this,c)).gaService=c,o.utilsService=i,o.references=[],o.displayedColumns=["citation","docType","tags","files","access"],o.substanceUpdated=new q.x,o.pageSize=10,o.hideFilters=!0,o.showHideFilterText="Show Filter",o.displayedFilterColumns=["citationFilter","typeFilter","tagsFilter","resetFilter"],o.citationFilter=new m.NI,o.typeFilter=new m.NI,o.tagsFilter=new m.NI,o.typeFilterOptions=[],o.tagsFilterOptions=[],o}return(0,S.Z)(s,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(o){i.substance=o,null!=i.substance&&null!=i.substance.references&&(i.references=i.substance.references,i.filtered=i.substance.references,i.pageChange(),i.searchControl.valueChanges.subscribe(function(r){i.filterList(r,i.references,i.analyticsEventCategory)},function(r){console.log(r)}),i.getFilterOptions("tags"),i.getFilterOptions("type")),i.countUpdate.emit(i.references.length)}),this.citationFilter.valueChanges.subscribe(function(o){i.filterTable()}),this.typeFilter.valueChanges.subscribe(function(o){i.filterTable()}),this.tagsFilter.valueChanges.subscribe(function(o){i.filterTable()})}},{key:"filterTable",value:function(i){var o=null===this.citationFilter.value?"":this.citationFilter.value,r=null===this.tagsFilter.value?"":this.tagsFilter.value,d=null===this.typeFilter.value?"":this.typeFilter.value;this.filtered=[];var u,p=(0,T.Z)(this.references);try{for(p.s();!(u=p.n()).done;){var h=u.value;h.citation.toLowerCase().includes(o.toLowerCase())&&h.docType.toLowerCase().includes(d.toLowerCase())&&this.isIncluded(h,r)&&this.filtered.push(h)}}catch(b){p.e(b)}finally{p.f()}this.pageChange()}},{key:"isIncluded",value:function(i,o){return!(o.length>0&&!i.tags.includes(o))}},{key:"getFilterOptions",value:function(i){var d,o=this,r=(0,T.Z)(this.references);try{for(r.s();!(d=r.n()).done;){var p=d.value;if("tags"===i){var h,u=(0,T.Z)(p.tags);try{var b=function(){var v=h.value,ye={value:v,display:v};o.tagsFilterOptions.filter(function(Se){return Se.value===v}).length>0||o.tagsFilterOptions.push(ye)};for(u.s();!(h=u.n()).done;)b()}catch(g){u.e(g)}finally{u.f()}}else"type"===i&&function(){var g=p.docType,x={value:g,display:g};o.typeFilterOptions.filter(function(v){return v.value===g}).length>0||o.typeFilterOptions.push(x)}()}}catch(g){r.e(g)}finally{r.f()}}},{key:"toggleFilter",value:function(){this.hideFilters=!this.hideFilters,this.showHideFilterText=this.hideFilters?"Show Filter":"Hide Filter"}},{key:"resetFilters",value:function(){this.pageChange(),this.searchControl.setValue(""),this.citationFilter.setValue(""),this.tagsFilter.setValue(""),this.typeFilter.setValue("")}},{key:"sortData",value:function(i){var o=this,r=this.references.slice();if(!i.active||""===i.direction)return this.filtered=r,void this.pageChange();this.filtered=r.sort(function(d,p){var u="asc"===i.direction;return o.utilsService.compare(d[i.active]?d[i.active].toString().toUpperCase():null,p[i.active]?p[i.active].toString().toUpperCase():null,u)}),this.pageChange()}}]),s}(Y.u);return t.\u0275fac=function(n){return new(n||t)(e.Y36(I.$),e.Y36(w.FW))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-substance-references"]],features:[e.qOj],decls:39,vars:11,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],[1,"show-filter-span"],["mat-flat-button","","color","warn",1,"mat-button","mat-button-primary",3,"click"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","citation"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","docType"],["matColumnDef","tags"],["matColumnDef","citationFilter"],["mat-header-cell","",4,"matHeaderCellDef"],["matColumnDef","typeFilter"],["matColumnDef","tagsFilter"],["matColumnDef","resetFilter"],["matColumnDef","files"],["matColumnDef","access"],["mat-header-row","",4,"matHeaderRowDef"],["mat-header-row","",3,"hidden",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-header-cell",""],[1,"tableFilter"],["matInput","","placeholder","Citation Filter",1,"form-field",3,"formControl"],["appearance","fill"],[3,"formControl"],["selected","",3,"value"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[3,"href",4,"ngIf"],[3,"href"],["color","primary","svgIcon","cloud_download",1,"blue"],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["matTooltip","Public"],["svgIcon","lock_open","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock_open",1,"icon-align","blue-font"],["mat-header-row",""],["mat-header-row","",3,"hidden"],["mat-row",""]],template:function(n,s){1&n&&(e.TgZ(0,"div",0),e._UZ(1,"span",1),e.TgZ(2,"mat-form-field",2),e._UZ(3,"input",3),e.qZA(),e.qZA(),e.TgZ(4,"div",4),e.TgZ(5,"span",5),e.TgZ(6,"mat-label",6),e.NdJ("click",function(){return s.toggleFilter()}),e._uU(7),e.qZA(),e.qZA(),e.TgZ(8,"table",7),e.NdJ("matSortChange",function(i){return s.sortData(i)}),e.ynx(9,8),e.YNc(10,M,2,0,"th",9),e.YNc(11,P,3,2,"td",10),e.BQk(),e.ynx(12,11),e.YNc(13,j,2,0,"th",9),e.YNc(14,L,2,1,"td",10),e.BQk(),e.ynx(15,12),e.YNc(16,B,2,0,"th",9),e.YNc(17,z,2,1,"td",10),e.BQk(),e.ynx(18,13),e.YNc(19,E,4,1,"th",14),e.YNc(20,G,3,2,"td",10),e.BQk(),e.ynx(21,15),e.YNc(22,ee,9,4,"th",14),e.YNc(23,te,2,1,"td",10),e.BQk(),e.ynx(24,16),e.YNc(25,ae,9,4,"th",14),e.YNc(26,le,2,1,"td",10),e.BQk(),e.ynx(27,17),e.YNc(28,se,4,0,"th",14),e.BQk(),e.ynx(29,18),e.YNc(30,ce,2,0,"th",9),e.YNc(31,fe,2,1,"td",10),e.BQk(),e.ynx(32,19),e.YNc(33,pe,2,0,"th",9),e.YNc(34,he,3,2,"td",10),e.BQk(),e.YNc(35,ve,1,0,"tr",20),e.YNc(36,Ze,1,1,"tr",21),e.YNc(37,Te,1,0,"tr",22),e.qZA(),e.qZA(),e.TgZ(38,"mat-paginator",23),e.NdJ("page",function(i){return s.pageChange(i,s.analyticsEventCategory)}),e.qZA()),2&n&&(e.xp6(2),e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",s.searchControl),e.xp6(4),e.Oqu(s.showHideFilterText),e.xp6(1),e.Q6J("dataSource",s.paged),e.xp6(27),e.Q6J("matHeaderRowDef",s.displayedColumns),e.xp6(1),e.Q6J("matHeaderRowDef",s.displayedFilterColumns),e.xp6(1),e.Q6J("matRowDefColumns",s.displayedColumns),e.xp6(1),e.Q6J("length",s.filtered&&s.filtered.length||0)("pageSize",10)("pageSizeOptions",e.DdM(10,Ce)))},directives:[C.KE,R.Nt,m.Fj,m.JJ,m.oH,C.hX,f.BZ,_.YE,f.w1,f.fO,f.ge,_.nU,f.Dz,f.ev,Z.O5,Z.sg,F.gD,F.$L,D.ey,N.Hw,O.gM,f.as,f.XQ,f.nj,f.Gk,Q.NW],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.show-filter-span[_ngcontent-%COMP%]{display:block;float:right}"]}),t}(),Fe=l(64061),be=l(33865),xe=function(){var t=(0,S.Z)(function a(){(0,A.Z)(this,a)});return t.\u0275fac=function(n){return new(n||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[Z.ez,Fe.o.forChild(_e),f.p0,be.HT,Q.TU,R.c,C.lN,F.LD,m.UX,m.u5,_.JX,N.Ps,O.AV]]}),t}()}}]); -//# sourceMappingURL=1899.a37c629305203eef.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1899],{11899:function(Ae,y,l){l.r(y),l.d(y,{SubstanceReferencesModule:function(){return xe}});var S=l(1884),A=l(39117),Z=l(36362),T=l(44014),J=l(46751),U=l(56101),Y=l(54025),I=l(24874),q=l(50253),w=l(63169),m=l(90587),e=l(86613),C=l(44770),R=l(43365),f=l(97217),_=l(64316),F=l(91434),D=l(1130),N=l(65590),O=l(40089),Q=l(26439);function M(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Citation "),e.qZA())}function $(t,a){if(1&t&&(e.TgZ(0,"a",28),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.Q6J("href",n.url,e.LSH),e.xp6(1),e.hij("",n.citation," ")}}function H(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.hij(" ",n.citation," ")}}function P(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,$,2,2,"a",26),e.YNc(2,H,2,1,"span",27),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.url),e.xp6(1),e.Q6J("ngIf",!n.url)}}function j(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Type "),e.qZA())}function L(t,a){if(1&t&&(e.TgZ(0,"td",25),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.hij(" ",n.docType," ")}}function B(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Tags "),e.qZA())}function k(t,a){1&t&&(e.TgZ(0,"span"),e._uU(1,",\xa0"),e.qZA())}function V(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,k,2,0,"span",27),e.qZA()),2&t){var n=a.$implicit,s=a.last;e.xp6(1),e.Oqu(n),e.xp6(1),e.Q6J("ngIf",!s)}}function z(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,V,3,2,"span",29),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngForOf",n.tags)}}function E(t,a){if(1&t&&(e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"mat-form-field"),e._UZ(3,"input",32),e.qZA(),e.qZA(),e.qZA()),2&t){var n=e.oxw();e.xp6(3),e.Q6J("formControl",n.citationFilter)}}function X(t,a){if(1&t&&(e.TgZ(0,"a",28),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.Q6J("href",n.url,e.LSH),e.xp6(1),e.hij("",n.citation," ")}}function W(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.hij(" ",n.citation," ")}}function G(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,X,2,2,"a",26),e.YNc(2,W,2,1,"span",27),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.url),e.xp6(1),e.Q6J("ngIf",!n.url)}}function K(t,a){if(1&t&&(e.TgZ(0,"mat-option",37),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.Q6J("value",n.display),e.xp6(1),e.Oqu(n.display)}}function ee(t,a){if(1&t&&(e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"mat-form-field",33),e.TgZ(3,"mat-select",34),e.TgZ(4,"mat-select-trigger"),e._uU(5),e.qZA(),e.TgZ(6,"mat-option",35),e._uU(7,"Select Type Filter"),e.qZA(),e.YNc(8,K,2,2,"mat-option",36),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t){var n=e.oxw();e.xp6(3),e.Q6J("formControl",n.typeFilter),e.xp6(2),e.hij(" ",n.typeFilter.value?n.typeFilter.value:""," "),e.xp6(1),e.Q6J("value",null),e.xp6(2),e.Q6J("ngForOf",n.typeFilterOptions)}}function te(t,a){if(1&t&&(e.TgZ(0,"td",25),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.hij(" ",n.docType," ")}}function ne(t,a){if(1&t&&(e.TgZ(0,"mat-option",37),e._uU(1),e.qZA()),2&t){var n=a.$implicit;e.Q6J("value",n.display),e.xp6(1),e.Oqu(n.display)}}function ae(t,a){if(1&t&&(e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"mat-form-field",33),e.TgZ(3,"mat-select",34),e.TgZ(4,"mat-select-trigger"),e._uU(5),e.qZA(),e.TgZ(6,"mat-option",35),e._uU(7,"Select Tags Filter"),e.qZA(),e.YNc(8,ne,2,2,"mat-option",36),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t){var n=e.oxw();e.xp6(3),e.Q6J("formControl",n.tagsFilter),e.xp6(2),e.hij(" ",n.tagsFilter.value?n.tagsFilter.value:""," "),e.xp6(1),e.Q6J("value",null),e.xp6(2),e.Q6J("ngForOf",n.tagsFilterOptions)}}function ie(t,a){1&t&&(e.TgZ(0,"span"),e._uU(1,",\xa0"),e.qZA())}function oe(t,a){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,ie,2,0,"span",27),e.qZA()),2&t){var n=a.$implicit,s=a.last;e.xp6(1),e.Oqu(n),e.xp6(1),e.Q6J("ngIf",!s)}}function le(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,oe,3,2,"span",29),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngForOf",n.tags)}}function se(t,a){if(1&t){var n=e.EpF();e.TgZ(0,"th",30),e.TgZ(1,"div",31),e.TgZ(2,"button",6),e.NdJ("click",function(){return e.CHM(n),e.oxw().resetFilters()}),e._uU(3,"Reset"),e.qZA(),e.qZA(),e.qZA()}}function ce(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," File "),e.qZA())}function re(t,a){if(1&t&&(e.TgZ(0,"a",39),e._UZ(1,"mat-icon",40),e.qZA()),2&t){var n=e.oxw().$implicit;e.Q6J("href",n.uploadedFile,e.LSH)}}function fe(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,re,2,1,"a",38),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.uploadedFile)}}function pe(t,a){1&t&&(e.TgZ(0,"th",24),e._uU(1," Access "),e.qZA())}function ue(t,a){1&t&&e._UZ(0,"mat-icon",45)}function me(t,a){if(1&t&&(e.TgZ(0,"span",43),e.YNc(1,ue,1,0,"mat-icon",44),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",n.access.length)}}function ge(t,a){1&t&&e._UZ(0,"mat-icon",48)}function de(t,a){if(1&t&&(e.TgZ(0,"span",46),e.YNc(1,ge,1,0,"mat-icon",47),e.qZA()),2&t){var n=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",0===n.access.length)}}function he(t,a){if(1&t&&(e.TgZ(0,"td",25),e.YNc(1,me,2,1,"span",41),e.YNc(2,de,2,1,"span",42),e.qZA()),2&t){var n=a.$implicit;e.xp6(1),e.Q6J("ngIf",n.access.length),e.xp6(1),e.Q6J("ngIf",!n.access.length)}}function ve(t,a){1&t&&e._UZ(0,"tr",49)}function Ze(t,a){if(1&t&&e._UZ(0,"tr",50),2&t){var n=e.oxw();e.Q6J("hidden",n.hideFilters)}}function Te(t,a){1&t&&e._UZ(0,"tr",51)}var Ce=function(){return[5,10,25,100]},_e=function(){var t=function(a){(0,J.Z)(s,a);var n=(0,U.Z)(s);function s(c,i){var o;return(0,A.Z)(this,s),(o=n.call(this,c)).gaService=c,o.utilsService=i,o.references=[],o.displayedColumns=["citation","docType","tags","files","access"],o.substanceUpdated=new q.x,o.pageSize=10,o.hideFilters=!0,o.showHideFilterText="Show Filter",o.displayedFilterColumns=["citationFilter","typeFilter","tagsFilter","resetFilter"],o.citationFilter=new m.NI,o.typeFilter=new m.NI,o.tagsFilter=new m.NI,o.typeFilterOptions=[],o.tagsFilterOptions=[],o}return(0,S.Z)(s,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(o){i.substance=o,null!=i.substance&&null!=i.substance.references&&(i.references=i.substance.references,i.filtered=i.substance.references,i.pageChange(),i.searchControl.valueChanges.subscribe(function(r){i.filterList(r,i.references,i.analyticsEventCategory)},function(r){console.log(r)}),i.getFilterOptions("tags"),i.getFilterOptions("type")),i.countUpdate.emit(i.references.length)}),this.citationFilter.valueChanges.subscribe(function(o){i.filterTable()}),this.typeFilter.valueChanges.subscribe(function(o){i.filterTable()}),this.tagsFilter.valueChanges.subscribe(function(o){i.filterTable()})}},{key:"filterTable",value:function(i){var o=null===this.citationFilter.value?"":this.citationFilter.value,r=null===this.tagsFilter.value?"":this.tagsFilter.value,d=null===this.typeFilter.value?"":this.typeFilter.value;this.filtered=[];var u,p=(0,T.Z)(this.references);try{for(p.s();!(u=p.n()).done;){var h=u.value;h.citation.toLowerCase().includes(o.toLowerCase())&&h.docType.toLowerCase().includes(d.toLowerCase())&&this.isIncluded(h,r)&&this.filtered.push(h)}}catch(b){p.e(b)}finally{p.f()}this.pageChange()}},{key:"isIncluded",value:function(i,o){return!(o.length>0&&!i.tags.includes(o))}},{key:"getFilterOptions",value:function(i){var d,o=this,r=(0,T.Z)(this.references);try{for(r.s();!(d=r.n()).done;){var p=d.value;if("tags"===i){var h,u=(0,T.Z)(p.tags);try{var b=function(){var v=h.value,ye={value:v,display:v};o.tagsFilterOptions.filter(function(Se){return Se.value===v}).length>0||o.tagsFilterOptions.push(ye)};for(u.s();!(h=u.n()).done;)b()}catch(g){u.e(g)}finally{u.f()}}else"type"===i&&function(){var g=p.docType,x={value:g,display:g};o.typeFilterOptions.filter(function(v){return v.value===g}).length>0||o.typeFilterOptions.push(x)}()}}catch(g){r.e(g)}finally{r.f()}}},{key:"toggleFilter",value:function(){this.hideFilters=!this.hideFilters,this.showHideFilterText=this.hideFilters?"Show Filter":"Hide Filter"}},{key:"resetFilters",value:function(){this.pageChange(),this.searchControl.setValue(""),this.citationFilter.setValue(""),this.tagsFilter.setValue(""),this.typeFilter.setValue("")}},{key:"sortData",value:function(i){var o=this,r=this.references.slice();if(!i.active||""===i.direction)return this.filtered=r,void this.pageChange();this.filtered=r.sort(function(d,p){var u="asc"===i.direction;return o.utilsService.compare(d[i.active]?d[i.active].toString().toUpperCase():null,p[i.active]?p[i.active].toString().toUpperCase():null,u)}),this.pageChange()}}]),s}(Y.u);return t.\u0275fac=function(n){return new(n||t)(e.Y36(I.$),e.Y36(w.FW))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-substance-references"]],features:[e.qOj],decls:39,vars:11,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],[1,"show-filter-span"],["mat-flat-button","","color","warn",1,"mat-button","mat-button-primary",3,"click"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","citation"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","docType"],["matColumnDef","tags"],["matColumnDef","citationFilter"],["mat-header-cell","",4,"matHeaderCellDef"],["matColumnDef","typeFilter"],["matColumnDef","tagsFilter"],["matColumnDef","resetFilter"],["matColumnDef","files"],["matColumnDef","access"],["mat-header-row","",4,"matHeaderRowDef"],["mat-header-row","",3,"hidden",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-header-cell",""],[1,"tableFilter"],["matInput","","placeholder","Citation Filter",1,"form-field",3,"formControl"],["appearance","fill"],[3,"formControl"],["selected","",3,"value"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[3,"href",4,"ngIf"],[3,"href"],["color","primary","svgIcon","cloud_download",1,"blue"],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["matTooltip","Public"],["svgIcon","lock_open","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock_open",1,"icon-align","blue-font"],["mat-header-row",""],["mat-header-row","",3,"hidden"],["mat-row",""]],template:function(n,s){1&n&&(e.TgZ(0,"div",0),e._UZ(1,"span",1),e.TgZ(2,"mat-form-field",2),e._UZ(3,"input",3),e.qZA(),e.qZA(),e.TgZ(4,"div",4),e.TgZ(5,"span",5),e.TgZ(6,"mat-label",6),e.NdJ("click",function(){return s.toggleFilter()}),e._uU(7),e.qZA(),e.qZA(),e.TgZ(8,"table",7),e.NdJ("matSortChange",function(i){return s.sortData(i)}),e.ynx(9,8),e.YNc(10,M,2,0,"th",9),e.YNc(11,P,3,2,"td",10),e.BQk(),e.ynx(12,11),e.YNc(13,j,2,0,"th",9),e.YNc(14,L,2,1,"td",10),e.BQk(),e.ynx(15,12),e.YNc(16,B,2,0,"th",9),e.YNc(17,z,2,1,"td",10),e.BQk(),e.ynx(18,13),e.YNc(19,E,4,1,"th",14),e.YNc(20,G,3,2,"td",10),e.BQk(),e.ynx(21,15),e.YNc(22,ee,9,4,"th",14),e.YNc(23,te,2,1,"td",10),e.BQk(),e.ynx(24,16),e.YNc(25,ae,9,4,"th",14),e.YNc(26,le,2,1,"td",10),e.BQk(),e.ynx(27,17),e.YNc(28,se,4,0,"th",14),e.BQk(),e.ynx(29,18),e.YNc(30,ce,2,0,"th",9),e.YNc(31,fe,2,1,"td",10),e.BQk(),e.ynx(32,19),e.YNc(33,pe,2,0,"th",9),e.YNc(34,he,3,2,"td",10),e.BQk(),e.YNc(35,ve,1,0,"tr",20),e.YNc(36,Ze,1,1,"tr",21),e.YNc(37,Te,1,0,"tr",22),e.qZA(),e.qZA(),e.TgZ(38,"mat-paginator",23),e.NdJ("page",function(i){return s.pageChange(i,s.analyticsEventCategory)}),e.qZA()),2&n&&(e.xp6(2),e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",s.searchControl),e.xp6(4),e.Oqu(s.showHideFilterText),e.xp6(1),e.Q6J("dataSource",s.paged),e.xp6(27),e.Q6J("matHeaderRowDef",s.displayedColumns),e.xp6(1),e.Q6J("matHeaderRowDef",s.displayedFilterColumns),e.xp6(1),e.Q6J("matRowDefColumns",s.displayedColumns),e.xp6(1),e.Q6J("length",s.filtered&&s.filtered.length||0)("pageSize",10)("pageSizeOptions",e.DdM(10,Ce)))},directives:[C.KE,R.Nt,m.Fj,m.JJ,m.oH,C.hX,f.BZ,_.YE,f.w1,f.fO,f.ge,_.nU,f.Dz,f.ev,Z.O5,Z.sg,F.gD,F.$L,D.ey,N.Hw,O.gM,f.as,f.XQ,f.nj,f.Gk,Q.NW],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.show-filter-span[_ngcontent-%COMP%]{display:block;float:right}"]}),t}(),Fe=l(64061),be=l(33865),xe=function(){var t=(0,S.Z)(function a(){(0,A.Z)(this,a)});return t.\u0275fac=function(n){return new(n||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[Z.ez,Fe.o.forChild(_e),f.p0,be.HT,Q.TU,R.c,C.lN,F.LD,m.UX,m.u5,_.JX,N.Ps,O.AV]]}),t}()}}]); +//# sourceMappingURL=1899.a5d7af21aaab1cdf.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1899.a37c629305203eef.js.map b/frontend/src/main/resources/static/1899.a5d7af21aaab1cdf.js.map similarity index 99% rename from frontend/src/main/resources/static/1899.a37c629305203eef.js.map rename to frontend/src/main/resources/static/1899.a5d7af21aaab1cdf.js.map index ac95076..e4945c5 100644 --- a/frontend/src/main/resources/static/1899.a37c629305203eef.js.map +++ b/frontend/src/main/resources/static/1899.a5d7af21aaab1cdf.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r46","SubstanceReferencesComponent","gaService","utilsService","o","Subject","FormControl","this","substanceUpdated","subscribe","i","substance","references","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","getFilterOptions","countUpdate","emit","length","citationFilter","citationFilterValue","filterTable","typeFilter","typeFilterValue","tagsFilter","tagsFilterValue","type","cFilter","tgFilter","tFilter","n","u","citation","toLowerCase","includes","docType","isIncluded","push","b","name","tags","string","d","oneTag","h","val","display","tagsFilterOptions","filter","e","g","oneType","typeFilterOptions","hideFilters","showHideFilterText","setValue","sort","data","slice","active","direction","a","isAsc","compare","toString","toUpperCase","s","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceReferencesModule","S","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","MatFormFieldModule","MatSelectModule","ReactiveFormsModule","FormsModule","MatSortModule","MatIconModule","MatTooltipModule"],"sources":["./src/app/core/substance-details/substance-references/substance-references.component.html","./src/app/core/substance-details/substance-references/substance-references.component.ts","./src/app/core/substance-details/substance-references/substance-references.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{showHideFilterText}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
Citation \r\n {{reference.citation}} \r\n {{reference.citation}} \r\n Type {{reference.docType}} Tags \r\n {{tag}}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{reference.citation}} \r\n {{reference.citation}} \r\n \r\n
\r\n \r\n \r\n \r\n {{typeFilter.value ? typeFilter.value : ''}}\r\n \r\n Select Type Filter\r\n {{type.display}}\r\n \r\n \r\n
\r\n
{{reference.docType}} \r\n
\r\n \r\n \r\n \r\n {{tagsFilter.value ? tagsFilter.value : ''}}\r\n \r\n Select Tags Filter\r\n {{tags.display}}\r\n \r\n \r\n
\r\n
\r\n {{tag}}\r\n \r\n
\r\n \r\n
\r\n
File \r\n \r\n Access \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceReference, TableFilterDDModel} from '../../substance/substance.model';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport {Sort} from '@angular/material/sort';\r\nimport {UtilsService} from '@gsrs-core/utils';\r\nimport { FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-substance-references',\r\n templateUrl: './substance-references.component.html',\r\n styleUrls: ['./substance-references.component.scss']\r\n})\r\nexport class SubstanceReferencesComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n references: Array = [];\r\n displayedColumns: string[] = ['citation', 'docType', 'tags', 'files', 'access'];\r\n substanceUpdated = new Subject();\r\n pageSize = 10;\r\n hideFilters = true;\r\n showHideFilterText = 'Show Filter';\r\n displayedFilterColumns: string[] = ['citationFilter', 'typeFilter', 'tagsFilter', 'resetFilter'];\r\n citationFilter = new FormControl();\r\n typeFilter = new FormControl();\r\n tagsFilter = new FormControl();\r\n typeFilterOptions: Array = [];\r\n tagsFilterOptions: Array = [];\r\n\r\n constructor(\r\n public gaService: GoogleAnalyticsService,\r\n private utilsService: UtilsService\r\n ) {\r\n super(\r\n gaService\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.references != null) {\r\n this.references = this.substance.references;\r\n this.filtered = this.substance.references;\r\n this.pageChange();\r\n\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.references, this.analyticsEventCategory);\r\n }, error => {\r\n console.log(error);\r\n });\r\n this.getFilterOptions('tags');\r\n this.getFilterOptions('type');\r\n }\r\n this.countUpdate.emit(this.references.length);\r\n });\r\n this.citationFilter.valueChanges.subscribe((citationFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.typeFilter.valueChanges.subscribe((typeFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.tagsFilter.valueChanges.subscribe((tagsFilterValue) => {\r\n this.filterTable();\r\n });\r\n }\r\n\r\n filterTable(type?:string) {\r\n const cFilter = this.citationFilter.value === null ? '' : this.citationFilter.value;\r\n const tgFilter = this.tagsFilter.value === null ? '' : this.tagsFilter.value;\r\n const tFilter = this.typeFilter.value === null ? '' : this.typeFilter.value;\r\n this.filtered = [];\r\n for(let n of this.references) {\r\n if((n.citation.toLowerCase().includes(cFilter.toLowerCase())) &&\r\n (n.docType.toLowerCase().includes(tFilter.toLowerCase())) && \r\n (this.isIncluded(n, tgFilter))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n \r\n this.pageChange();\r\n }\r\n\r\n isIncluded(name, value) {\r\n if(value.length > 0) {\r\n if(name.tags.includes(value)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n getFilterOptions(string) {\r\n for(let n of this.references) {\r\n if(string === 'tags') {\r\n for(let t of n.tags) {\r\n let oneTag = t;\r\n let val: TableFilterDDModel = {\r\n value: oneTag,\r\n display: oneTag\r\n }\r\n if (this.tagsFilterOptions.filter(e => e.value === oneTag).length > 0) {\r\n } else {\r\n this.tagsFilterOptions.push(val);\r\n }\r\n }\r\n } else if(string === 'type') {\r\n let oneType = n.docType;\r\n let value: TableFilterDDModel = {\r\n value: oneType,\r\n display: oneType\r\n }\r\n if (this.typeFilterOptions.filter(e => e.value === oneType).length > 0) {\r\n } else {\r\n this.typeFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n }\r\n\r\n toggleFilter() {\r\n this.hideFilters = !this.hideFilters;\r\n if(this.hideFilters) {\r\n this.showHideFilterText = 'Show Filter';\r\n } else {\r\n this.showHideFilterText = 'Hide Filter';\r\n }\r\n }\r\n\r\n resetFilters() {\r\n this.pageChange();\r\n this.searchControl.setValue('');\r\n this.citationFilter.setValue('');\r\n this.tagsFilter.setValue('');\r\n this.typeFilter.setValue('');\r\n }\r\n\r\n sortData(sort: Sort) {\r\n const data = this.references.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n return this.utilsService.compare(a[sort.active] ? a[sort.active].toString().toUpperCase() : null, b[sort.active] ? b[sort.active].toString().toUpperCase() : null, isAsc);\r\n });\r\n this.pageChange();\r\n }\r\n\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceReferencesComponent } from './substance-references.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatSelectModule } from '@angular/material/select';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceReferencesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatSortModule,\r\n MatIconModule,\r\n MatTooltipModule\r\n ],\r\n declarations: [SubstanceReferencesComponent]\r\n})\r\nexport class SubstanceReferencesModule { }\r\n"],"sourceRoot":"webpack:///","file":"1899.a37c629305203eef.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r46","SubstanceReferencesComponent","gaService","utilsService","o","Subject","FormControl","this","substanceUpdated","subscribe","i","substance","references","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","getFilterOptions","countUpdate","emit","length","citationFilter","citationFilterValue","filterTable","typeFilter","typeFilterValue","tagsFilter","tagsFilterValue","type","cFilter","tgFilter","tFilter","n","u","citation","toLowerCase","includes","docType","isIncluded","push","b","name","tags","string","d","oneTag","h","val","display","tagsFilterOptions","filter","e","g","oneType","typeFilterOptions","hideFilters","showHideFilterText","setValue","sort","data","slice","active","direction","a","isAsc","compare","toString","toUpperCase","s","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceReferencesModule","S","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","MatFormFieldModule","MatSelectModule","ReactiveFormsModule","FormsModule","MatSortModule","MatIconModule","MatTooltipModule"],"sources":["./src/app/core/substance-details/substance-references/substance-references.component.html","./src/app/core/substance-details/substance-references/substance-references.component.ts","./src/app/core/substance-details/substance-references/substance-references.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{showHideFilterText}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
Citation \r\n {{reference.citation}} \r\n {{reference.citation}} \r\n Type {{reference.docType}} Tags \r\n {{tag}}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{reference.citation}} \r\n {{reference.citation}} \r\n \r\n
\r\n \r\n \r\n \r\n {{typeFilter.value ? typeFilter.value : ''}}\r\n \r\n Select Type Filter\r\n {{type.display}}\r\n \r\n \r\n
\r\n
{{reference.docType}} \r\n
\r\n \r\n \r\n \r\n {{tagsFilter.value ? tagsFilter.value : ''}}\r\n \r\n Select Tags Filter\r\n {{tags.display}}\r\n \r\n \r\n
\r\n
\r\n {{tag}}\r\n \r\n
\r\n \r\n
\r\n
File \r\n \r\n Access \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceReference, TableFilterDDModel} from '../../substance/substance.model';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport {Sort} from '@angular/material/sort';\r\nimport {UtilsService} from '@gsrs-core/utils';\r\nimport { FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-substance-references',\r\n templateUrl: './substance-references.component.html',\r\n styleUrls: ['./substance-references.component.scss']\r\n})\r\nexport class SubstanceReferencesComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n references: Array = [];\r\n displayedColumns: string[] = ['citation', 'docType', 'tags', 'files', 'access'];\r\n substanceUpdated = new Subject();\r\n pageSize = 10;\r\n hideFilters = true;\r\n showHideFilterText = 'Show Filter';\r\n displayedFilterColumns: string[] = ['citationFilter', 'typeFilter', 'tagsFilter', 'resetFilter'];\r\n citationFilter = new FormControl();\r\n typeFilter = new FormControl();\r\n tagsFilter = new FormControl();\r\n typeFilterOptions: Array = [];\r\n tagsFilterOptions: Array = [];\r\n\r\n constructor(\r\n public gaService: GoogleAnalyticsService,\r\n private utilsService: UtilsService\r\n ) {\r\n super(\r\n gaService\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.references != null) {\r\n this.references = this.substance.references;\r\n this.filtered = this.substance.references;\r\n this.pageChange();\r\n\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.references, this.analyticsEventCategory);\r\n }, error => {\r\n console.log(error);\r\n });\r\n this.getFilterOptions('tags');\r\n this.getFilterOptions('type');\r\n }\r\n this.countUpdate.emit(this.references.length);\r\n });\r\n this.citationFilter.valueChanges.subscribe((citationFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.typeFilter.valueChanges.subscribe((typeFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.tagsFilter.valueChanges.subscribe((tagsFilterValue) => {\r\n this.filterTable();\r\n });\r\n }\r\n\r\n filterTable(type?:string) {\r\n const cFilter = this.citationFilter.value === null ? '' : this.citationFilter.value;\r\n const tgFilter = this.tagsFilter.value === null ? '' : this.tagsFilter.value;\r\n const tFilter = this.typeFilter.value === null ? '' : this.typeFilter.value;\r\n this.filtered = [];\r\n for(let n of this.references) {\r\n if((n.citation.toLowerCase().includes(cFilter.toLowerCase())) &&\r\n (n.docType.toLowerCase().includes(tFilter.toLowerCase())) && \r\n (this.isIncluded(n, tgFilter))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n \r\n this.pageChange();\r\n }\r\n\r\n isIncluded(name, value) {\r\n if(value.length > 0) {\r\n if(name.tags.includes(value)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n getFilterOptions(string) {\r\n for(let n of this.references) {\r\n if(string === 'tags') {\r\n for(let t of n.tags) {\r\n let oneTag = t;\r\n let val: TableFilterDDModel = {\r\n value: oneTag,\r\n display: oneTag\r\n }\r\n if (this.tagsFilterOptions.filter(e => e.value === oneTag).length > 0) {\r\n } else {\r\n this.tagsFilterOptions.push(val);\r\n }\r\n }\r\n } else if(string === 'type') {\r\n let oneType = n.docType;\r\n let value: TableFilterDDModel = {\r\n value: oneType,\r\n display: oneType\r\n }\r\n if (this.typeFilterOptions.filter(e => e.value === oneType).length > 0) {\r\n } else {\r\n this.typeFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n }\r\n\r\n toggleFilter() {\r\n this.hideFilters = !this.hideFilters;\r\n if(this.hideFilters) {\r\n this.showHideFilterText = 'Show Filter';\r\n } else {\r\n this.showHideFilterText = 'Hide Filter';\r\n }\r\n }\r\n\r\n resetFilters() {\r\n this.pageChange();\r\n this.searchControl.setValue('');\r\n this.citationFilter.setValue('');\r\n this.tagsFilter.setValue('');\r\n this.typeFilter.setValue('');\r\n }\r\n\r\n sortData(sort: Sort) {\r\n const data = this.references.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n return this.utilsService.compare(a[sort.active] ? a[sort.active].toString().toUpperCase() : null, b[sort.active] ? b[sort.active].toString().toUpperCase() : null, isAsc);\r\n });\r\n this.pageChange();\r\n }\r\n\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceReferencesComponent } from './substance-references.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatSelectModule } from '@angular/material/select';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceReferencesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatSortModule,\r\n MatIconModule,\r\n MatTooltipModule\r\n ],\r\n declarations: [SubstanceReferencesComponent]\r\n})\r\nexport class SubstanceReferencesModule { }\r\n"],"sourceRoot":"webpack:///","file":"1899.a5d7af21aaab1cdf.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/1935.c6fd1fdbbd04ce21.js b/frontend/src/main/resources/static/1935.05ca842702a9b3fd.js similarity index 94% rename from frontend/src/main/resources/static/1935.c6fd1fdbbd04ce21.js rename to frontend/src/main/resources/static/1935.05ca842702a9b3fd.js index 8d3b9e5..5ef9990 100644 --- a/frontend/src/main/resources/static/1935.c6fd1fdbbd04ce21.js +++ b/frontend/src/main/resources/static/1935.05ca842702a9b3fd.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1935],{51935:function(I,c,n){n.r(c),n.d(c,{SubstanceFormProteinDetailsModule:function(){return U}});var p=n(48047),m=n(78069),v=n(36362),f=n(64061),g=n(44770),y=n(43365),d=n(90587),S=n(91434),h=n(7168),C=n(96769),T=n(24582),P=n(7318),Z=(n(27299),n(33567)),x=n(40104),F=n(18291),b=n(79223),e=n(76442),O=n(16667),D=n(15992),A=n(14900);function M(o,l){if(1&o){var s=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"app-cv-input",3),e.NdJ("valueChange",function(t){return e.CHM(s),e.oxw().updateType(t)}),e.qZA(),e.TgZ(3,"div",4),e.TgZ(4,"app-tag-selector",5),e.NdJ("tagsUpdate",function(t){return e.CHM(s),e.oxw().update(t)}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",6),e.NdJ("valueChange",function(t){return e.CHM(s),e.oxw().updateOrigin(t)}),e.qZA(),e.TgZ(6,"app-cv-input",7),e.NdJ("valueChange",function(t){return e.CHM(s),e.oxw().updateSequenceType(t)}),e.qZA(),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"div",2),e._UZ(9,"app-audit-info",8),e.qZA(),e.qZA()}if(2&o){var i=e.oxw();e.xp6(2),e.Q6J("model",i.protein.proteinType),e.xp6(2),e.Q6J("tags",i.pipeToArray(i.protein.proteinSubType)),e.xp6(1),e.Q6J("model",i.protein.sequenceOrigin),e.xp6(1),e.Q6J("model",i.protein.sequenceType),e.xp6(3),e.Q6J("source",i.protein)}}var E=function(){var o=function(l){(0,T.Z)(i,l);var s=(0,P.Z)(i);function i(a,t,u){var r;return(0,m.Z)(this,i),(r=s.call(this)).substanceFormService=a,r.gaService=t,r.cvService=u,r.subscriptions=[],r.dropdownSettings={},r.analyticsEventCategory="substance form Protein Details",r}return(0,p.Z)(i,[{key:"ngOnInit",value:function(){var t=this;this.menuLabelUpdate.emit("Protein Details");var u=this.substanceFormService.substance.subscribe(function(r){null==r.protein&&(r.protein={proteinType:""}),t.substanceFormService.resetState(),t.protein=r.protein});this.subscriptions.push(u),this.dropdownSettings={singleSelection:!1,idField:"value",textField:"display",selectAllText:"Select All",unSelectAllText:"UnSelect All",itemsShowLimit:3,allowSearchFilter:!0}}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"updateAccess",value:function(t){this.protein.access=t}},{key:"update",value:function(t){this.protein.proteinSubType=t.join("|")}},{key:"updateType",value:function(t){this.protein.proteinType=t}},{key:"updateSequenceType",value:function(t){this.protein.sequenceType=t}},{key:"updateOrigin",value:function(t){this.protein.sequenceOrigin=t}},{key:"pipeToArray",value:function(t){return t&&""!==t?t.split("|"):[]}}]),i}(b.o);return o.\u0275fac=function(s){return new(s||o)(e.Y36(Z.B),e.Y36(x.$),e.Y36(F.I))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-substance-form-protein-details"]],features:[e.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],["key","Protein Proteintype",1,"cv-input",3,"model","valueChange"],[1,"mat-form-field-flex","subtype"],["placeholder","protein subType","cvDomain","PROTEIN_SUBTYPE",1,"tags",3,"tags","tagsUpdate"],["domain","SEQUENCE_ORIGIN","title","Sequence Origin",1,"cv-input",3,"model","valueChange"],["domain","SEQUENCE_TYPE","title","Sequence Type",3,"model","valueChange"],[3,"source"]],template:function(s,i){1&s&&e.YNc(0,M,10,5,"div",0),2&s&&e.Q6J("ngIf",i.protein)},directives:[v.O5,O.S,D.C,A.n],styles:[".subtype[_ngcontent-%COMP%]{width:30%;margin-right:15px}.cv-input[_ngcontent-%COMP%]{margin-right:15px}.tags[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}"]}),o}(),J=n(3311),U=function(){var o=(0,p.Z)(function l(){(0,m.Z)(this,l)});return o.\u0275fac=function(s){return new(s||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({imports:[[v.ez,f.o.forChild(E),g.lN,y.c,d.UX,d.u5,S.LD,h.O,C.O,J.ZQ]]}),o}()}}]); -//# sourceMappingURL=1935.c6fd1fdbbd04ce21.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[1935],{51935:function(I,c,n){n.r(c),n.d(c,{SubstanceFormProteinDetailsModule:function(){return U}});var p=n(1884),m=n(39117),v=n(36362),f=n(64061),g=n(44770),y=n(43365),d=n(90587),S=n(91434),h=n(7168),C=n(96769),T=n(46751),P=n(56101),Z=(n(27299),n(33567)),x=n(40104),F=n(18291),b=n(79223),e=n(86613),O=n(16667),D=n(15992),A=n(14900);function M(o,l){if(1&o){var s=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"app-cv-input",3),e.NdJ("valueChange",function(t){return e.CHM(s),e.oxw().updateType(t)}),e.qZA(),e.TgZ(3,"div",4),e.TgZ(4,"app-tag-selector",5),e.NdJ("tagsUpdate",function(t){return e.CHM(s),e.oxw().update(t)}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",6),e.NdJ("valueChange",function(t){return e.CHM(s),e.oxw().updateOrigin(t)}),e.qZA(),e.TgZ(6,"app-cv-input",7),e.NdJ("valueChange",function(t){return e.CHM(s),e.oxw().updateSequenceType(t)}),e.qZA(),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"div",2),e._UZ(9,"app-audit-info",8),e.qZA(),e.qZA()}if(2&o){var i=e.oxw();e.xp6(2),e.Q6J("model",i.protein.proteinType),e.xp6(2),e.Q6J("tags",i.pipeToArray(i.protein.proteinSubType)),e.xp6(1),e.Q6J("model",i.protein.sequenceOrigin),e.xp6(1),e.Q6J("model",i.protein.sequenceType),e.xp6(3),e.Q6J("source",i.protein)}}var E=function(){var o=function(l){(0,T.Z)(i,l);var s=(0,P.Z)(i);function i(a,t,u){var r;return(0,m.Z)(this,i),(r=s.call(this)).substanceFormService=a,r.gaService=t,r.cvService=u,r.subscriptions=[],r.dropdownSettings={},r.analyticsEventCategory="substance form Protein Details",r}return(0,p.Z)(i,[{key:"ngOnInit",value:function(){var t=this;this.menuLabelUpdate.emit("Protein Details");var u=this.substanceFormService.substance.subscribe(function(r){null==r.protein&&(r.protein={proteinType:""}),t.substanceFormService.resetState(),t.protein=r.protein});this.subscriptions.push(u),this.dropdownSettings={singleSelection:!1,idField:"value",textField:"display",selectAllText:"Select All",unSelectAllText:"UnSelect All",itemsShowLimit:3,allowSearchFilter:!0}}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"updateAccess",value:function(t){this.protein.access=t}},{key:"update",value:function(t){this.protein.proteinSubType=t.join("|")}},{key:"updateType",value:function(t){this.protein.proteinType=t}},{key:"updateSequenceType",value:function(t){this.protein.sequenceType=t}},{key:"updateOrigin",value:function(t){this.protein.sequenceOrigin=t}},{key:"pipeToArray",value:function(t){return t&&""!==t?t.split("|"):[]}}]),i}(b.o);return o.\u0275fac=function(s){return new(s||o)(e.Y36(Z.B),e.Y36(x.$),e.Y36(F.I))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-substance-form-protein-details"]],features:[e.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],["key","Protein Proteintype",1,"cv-input",3,"model","valueChange"],[1,"mat-form-field-flex","subtype"],["placeholder","protein subType","cvDomain","PROTEIN_SUBTYPE",1,"tags",3,"tags","tagsUpdate"],["domain","SEQUENCE_ORIGIN","title","Sequence Origin",1,"cv-input",3,"model","valueChange"],["domain","SEQUENCE_TYPE","title","Sequence Type",3,"model","valueChange"],[3,"source"]],template:function(s,i){1&s&&e.YNc(0,M,10,5,"div",0),2&s&&e.Q6J("ngIf",i.protein)},directives:[v.O5,O.S,D.C,A.n],styles:[".subtype[_ngcontent-%COMP%]{width:30%;margin-right:15px}.cv-input[_ngcontent-%COMP%]{margin-right:15px}.tags[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}"]}),o}(),J=n(3311),U=function(){var o=(0,p.Z)(function l(){(0,m.Z)(this,l)});return o.\u0275fac=function(s){return new(s||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({imports:[[v.ez,f.o.forChild(E),g.lN,y.c,d.UX,d.u5,S.LD,h.O,C.O,J.ZQ]]}),o}()}}]); +//# sourceMappingURL=1935.05ca842702a9b3fd.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/1935.c6fd1fdbbd04ce21.js.map b/frontend/src/main/resources/static/1935.05ca842702a9b3fd.js.map similarity index 99% rename from frontend/src/main/resources/static/1935.c6fd1fdbbd04ce21.js.map rename to frontend/src/main/resources/static/1935.05ca842702a9b3fd.js.map index 2077c50..2b71824 100644 --- a/frontend/src/main/resources/static/1935.c6fd1fdbbd04ce21.js.map +++ b/frontend/src/main/resources/static/1935.05ca842702a9b3fd.js.map @@ -1 +1 @@ -{"version":3,"mappings":"ucAAAA,iBACEA,iBACIA,0BAA6DA,wDAAiBC,gBAAoDD,QACpIA,iBACEA,8BAA+DA,uDAAcE,YAChCF,QAC/CA,QACEA,0BAAwFA,wDAAiBG,kBAAyDH,QACpKA,0BAAiGA,wDAAeI,wBAA4BJ,QAC5IA,eAIFA,QACAA,iBACEA,4BACFA,QACFA,8BAfwGA,8CAELA,+DAGkCA,iDACjEA,+CAOhDA,oCCCb,IAAMK,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cALDA,gBAAqC,GAC7CA,mBAAsC,GAOpCA,EAAKC,uBAAyB,iCAHeD,EARjD,uCAcE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,mBAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YACjD,MAArBD,EAAUE,UAEZF,EAAUE,QAAU,CAAEC,YAAa,KAErCC,EAAKb,qBAAqBc,aAC1BD,EAAKF,QAAUF,EAAUE,UAE3BN,KAAKU,cAAcC,KAAKR,GACxBH,KAAKY,iBAAmB,CACtBC,iBAAiB,EAAOC,QAAS,QAASC,UAAW,UAAWC,cAAe,aAC/EC,gBAAiB,eAAgBC,eAAgB,EAAGC,mBAAmB,KA3B7E,6BA+BE,cA/BF,yBAkCE,WACEnB,KAAKU,cAAcU,QAAQ,YACzBC,EAAaC,kBApCnB,0BAwCE,SAAaC,GACXvB,KAAKM,QAAQiB,OAASA,IAzC1B,oBA4CE,SAAOC,GACLxB,KAAKM,QAAQmB,eAAiBD,EAAKE,KAAK,OA7C5C,wBAgDE,SAAWC,GACT3B,KAAKM,QAAQC,YAAcoB,IAjD/B,gCAoDE,SAAmBA,GACjB3B,KAAKM,QAAQsB,aAAeD,IArDhC,0BAwDE,SAAaA,GACX3B,KAAKM,QAAQuB,eAAiBF,IAzDlC,yBA4DE,SAAYG,GACV,OAAKA,GAAqB,KAAXA,EAGNA,EAAOC,MAAM,KAFb,OA9DbC,GAA0DC,kDAA7CvC,GAAoCL,2DAApCK,EAAoCwC,mkBDhBjD7C,6BAAkCA,mdCgBrBK,EAAb,aCcayC,EAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsC5C,GACtC6C,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,SAMSX,EAAb","names":["i0","ctx_r1","ctx_r3","ctx_r4","ctx_r5","SubstanceFormProteinDetailsComponent","substanceFormService","gaService","cvService","r","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","protein","proteinType","t","resetState","subscriptions","push","dropdownSettings","singleSelection","idField","textField","selectAllText","unSelectAllText","itemsShowLimit","allowSearchFilter","forEach","subscription","unsubscribe","access","tags","proteinSubType","join","type","sequenceType","sequenceOrigin","string","split","i","SubstanceFormBase","selectors","SubstanceFormProteinDetailsModule","p","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule"],"sources":["./src/app/core/substance-form/protein-details/substance-form-protein-details.component.html","./src/app/core/substance-form/protein-details/substance-form-protein-details.component.ts","./src/app/core/substance-form/protein-details/substance-form-protein-details.module.ts"],"sourcesContent":["
\n
\n \n
\n \n
\n \n \n
\n \n
\n
\n
\n \n
\n
\n\n","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Protein, SubstanceDetail, SubstanceName } from '@gsrs-core/substance';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-substance-form-protein-details',\n templateUrl: './substance-form-protein-details.component.html',\n styleUrls: ['./substance-form-protein-details.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormProteinDetailsComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n\n protein: Protein;\n private subscriptions: Array = [];\n dropdownSettings: IDropdownSettings = {};\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Protein Details';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Protein Details');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.protein == null) {\n // ### figure out why only proteinType takes forever to load causing a console error\n substance.protein = { proteinType: '' };\n }\n this.substanceFormService.resetState();\n this.protein = substance.protein;\n });\n this.subscriptions.push(substanceSubscription);\n this.dropdownSettings = {\n singleSelection: false, idField: 'value', textField: 'display', selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All', itemsShowLimit: 3, allowSearchFilter: true\n };\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.protein.access = access;\n }\n\n update(tags: Array): void {\n this.protein.proteinSubType = tags.join('|');\n }\n\n updateType(type: string): void {\n this.protein.proteinType = type;\n }\n\n updateSequenceType(type: string): void {\n this.protein.sequenceType = type;\n }\n\n updateOrigin(type: string): void {\n this.protein.sequenceOrigin = type;\n }\n\n pipeToArray(string: string): Array {\n if (!string || string === '') {\n return [];\n } else {\n return string.split('|');\n }\n\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\nimport {SubstanceFormProteinDetailsComponent} from '@gsrs-core/substance-form/protein-details/substance-form-protein-details.component';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {CvInputComponent} from '@gsrs-core/substance-form/cv-input/cv-input.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormProteinDetailsComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule\n ],\n declarations: [\n SubstanceFormProteinDetailsComponent\n ]\n})\nexport class SubstanceFormProteinDetailsModule { }\n"],"sourceRoot":"webpack:///","file":"1935.c6fd1fdbbd04ce21.js"} \ No newline at end of file +{"version":3,"mappings":"ucAAAA,iBACEA,iBACIA,0BAA6DA,wDAAiBC,gBAAoDD,QACpIA,iBACEA,8BAA+DA,uDAAcE,YAChCF,QAC/CA,QACEA,0BAAwFA,wDAAiBG,kBAAyDH,QACpKA,0BAAiGA,wDAAeI,wBAA4BJ,QAC5IA,eAIFA,QACAA,iBACEA,4BACFA,QACFA,8BAfwGA,8CAELA,+DAGkCA,iDACjEA,+CAOhDA,oCCCb,IAAMK,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cALDA,gBAAqC,GAC7CA,mBAAsC,GAOpCA,EAAKC,uBAAyB,iCAHeD,EARjD,uCAcE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,mBAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YACjD,MAArBD,EAAUE,UAEZF,EAAUE,QAAU,CAAEC,YAAa,KAErCC,EAAKb,qBAAqBc,aAC1BD,EAAKF,QAAUF,EAAUE,UAE3BN,KAAKU,cAAcC,KAAKR,GACxBH,KAAKY,iBAAmB,CACtBC,iBAAiB,EAAOC,QAAS,QAASC,UAAW,UAAWC,cAAe,aAC/EC,gBAAiB,eAAgBC,eAAgB,EAAGC,mBAAmB,KA3B7E,6BA+BE,cA/BF,yBAkCE,WACEnB,KAAKU,cAAcU,QAAQ,YACzBC,EAAaC,kBApCnB,0BAwCE,SAAaC,GACXvB,KAAKM,QAAQiB,OAASA,IAzC1B,oBA4CE,SAAOC,GACLxB,KAAKM,QAAQmB,eAAiBD,EAAKE,KAAK,OA7C5C,wBAgDE,SAAWC,GACT3B,KAAKM,QAAQC,YAAcoB,IAjD/B,gCAoDE,SAAmBA,GACjB3B,KAAKM,QAAQsB,aAAeD,IArDhC,0BAwDE,SAAaA,GACX3B,KAAKM,QAAQuB,eAAiBF,IAzDlC,yBA4DE,SAAYG,GACV,OAAKA,GAAqB,KAAXA,EAGNA,EAAOC,MAAM,KAFb,OA9DbC,GAA0DC,kDAA7CvC,GAAoCL,2DAApCK,EAAoCwC,mkBDhBjD7C,6BAAkCA,mdCgBrBK,EAAb,aCcayC,EAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsC5C,GACtC6C,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,SAMSX,EAAb","names":["i0","ctx_r1","ctx_r3","ctx_r4","ctx_r5","SubstanceFormProteinDetailsComponent","substanceFormService","gaService","cvService","r","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","protein","proteinType","t","resetState","subscriptions","push","dropdownSettings","singleSelection","idField","textField","selectAllText","unSelectAllText","itemsShowLimit","allowSearchFilter","forEach","subscription","unsubscribe","access","tags","proteinSubType","join","type","sequenceType","sequenceOrigin","string","split","i","SubstanceFormBase","selectors","SubstanceFormProteinDetailsModule","p","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule"],"sources":["./src/app/core/substance-form/protein-details/substance-form-protein-details.component.html","./src/app/core/substance-form/protein-details/substance-form-protein-details.component.ts","./src/app/core/substance-form/protein-details/substance-form-protein-details.module.ts"],"sourcesContent":["
\n
\n \n
\n \n
\n \n \n
\n \n
\n
\n
\n \n
\n
\n\n","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Protein, SubstanceDetail, SubstanceName } from '@gsrs-core/substance';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-substance-form-protein-details',\n templateUrl: './substance-form-protein-details.component.html',\n styleUrls: ['./substance-form-protein-details.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormProteinDetailsComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n\n protein: Protein;\n private subscriptions: Array = [];\n dropdownSettings: IDropdownSettings = {};\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Protein Details';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Protein Details');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.protein == null) {\n // ### figure out why only proteinType takes forever to load causing a console error\n substance.protein = { proteinType: '' };\n }\n this.substanceFormService.resetState();\n this.protein = substance.protein;\n });\n this.subscriptions.push(substanceSubscription);\n this.dropdownSettings = {\n singleSelection: false, idField: 'value', textField: 'display', selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All', itemsShowLimit: 3, allowSearchFilter: true\n };\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.protein.access = access;\n }\n\n update(tags: Array): void {\n this.protein.proteinSubType = tags.join('|');\n }\n\n updateType(type: string): void {\n this.protein.proteinType = type;\n }\n\n updateSequenceType(type: string): void {\n this.protein.sequenceType = type;\n }\n\n updateOrigin(type: string): void {\n this.protein.sequenceOrigin = type;\n }\n\n pipeToArray(string: string): Array {\n if (!string || string === '') {\n return [];\n } else {\n return string.split('|');\n }\n\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\nimport {SubstanceFormProteinDetailsComponent} from '@gsrs-core/substance-form/protein-details/substance-form-protein-details.component';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {CvInputComponent} from '@gsrs-core/substance-form/cv-input/cv-input.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormProteinDetailsComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule\n ],\n declarations: [\n SubstanceFormProteinDetailsComponent\n ]\n})\nexport class SubstanceFormProteinDetailsModule { }\n"],"sourceRoot":"webpack:///","file":"1935.05ca842702a9b3fd.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/221.7e26a14ac0bec123.js b/frontend/src/main/resources/static/221.4f3f00bc900d28b3.js similarity index 62% rename from frontend/src/main/resources/static/221.7e26a14ac0bec123.js rename to frontend/src/main/resources/static/221.4f3f00bc900d28b3.js index a33e422..2fc3496 100644 --- a/frontend/src/main/resources/static/221.7e26a14ac0bec123.js +++ b/frontend/src/main/resources/static/221.4f3f00bc900d28b3.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[221],{20221:function(Cn,y,c){c.r(y),c.d(y,{SubstanceFormPhysicalModificationsModule:function(){return yn}});var u=c(48047),f=c(78069),d=c(36362),b=c(64061),T=c(7168),C=c(19975),v=c(65590),h=c(87317),F=c(94673),_=c(44770),m=c(90587),A=c(26439),x=c(43365),w=c(24582),I=c(7318),N=c(79550),J=c(40104),k=c(16830),n=c(76442),S=c(78444),U=c(51279),Y=(c(27299),c(18291)),M=c(63169),Q=c(33567),g=c(95758),q=c(33662),D=function(){var i=function(){function e(t){(0,f.Z)(this,e),this.utilsService=t}return(0,u.Z)(e,[{key:"ngOnInit",value:function(){}},{key:"parameter",get:function(){return this.privateParameter},set:function(o){this.privateParameter=o,this.privateParameter.amount||(this.privateParameter.amount={})}},{key:"isValid",get:function(){return null!=this.privateParameter.parameterName&&""!==this.privateParameter.parameterName}}]),e}();return i.\u0275fac=function(t){return new(t||i)(n.Y36(M.FW))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-physical-parameter-form"]],inputs:{parameter:"parameter"},decls:8,vars:2,consts:[[1,"parameter-form-container"],[1,"form-row"],[1,"name"],["matInput","","placeholder","Name","required","","name","name",3,"ngModel","ngModelChange"],[1,"amount-form-container"],[1,"amount-title"],[3,"substanceAmount"]],template:function(t,o){1&t&&(n.TgZ(0,"div",0),n.TgZ(1,"div",1),n.TgZ(2,"mat-form-field",2),n.TgZ(3,"input",3),n.NdJ("ngModelChange",function(s){return o.parameter.parameterName=s}),n.qZA(),n.qZA(),n.qZA(),n.TgZ(4,"div",4),n.TgZ(5,"div",5),n._uU(6,"Amount"),n.qZA(),n._UZ(7,"app-amount-form",6),n.qZA(),n.qZA()),2&t&&(n.xp6(3),n.Q6J("ngModel",o.parameter.parameterName),n.xp6(4),n.Q6J("substanceAmount",o.parameter.amount))},directives:[_.KE,x.Nt,m.Fj,m.Q7,m.JJ,m.On,q.f],styles:[".parameter-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}"]}),i}();function L(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div"),n._UZ(1,"app-physical-parameter-form",3,4),n.TgZ(3,"div",5),n._UZ(4,"span",6),n.TgZ(5,"button",7),n.NdJ("click",function(){return n.CHM(t),n.oxw().cancel()}),n._uU(6,"Cancel"),n.qZA(),n.TgZ(7,"button",8),n.NdJ("click",function(){return n.CHM(t),n.oxw().save()}),n._uU(8," Save "),n.qZA(),n.qZA(),n.qZA()}if(2&i){var o=n.MAs(2),a=n.oxw();n.xp6(1),n.Q6J("parameter",a.subsParameter),n.xp6(6),n.Q6J("disabled",!o||!o.isValid)}}var P=function(){var i=function(){function e(t,o){(0,f.Z)(this,e),this.dialogRef=t,this.subsParameter=o,this.isNew=Object.keys(o).length<1}return(0,u.Z)(e,[{key:"ngOnInit",value:function(){}},{key:"save",value:function(){this.dialogRef.close(this.subsParameter)}},{key:"cancel",value:function(){this.dialogRef.close()}}]),e}();return i.\u0275fac=function(t){return new(t||i)(n.Y36(g.so),n.Y36(g.WI))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-physical-parameter-form-dialog"]],decls:4,vars:2,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[4,"ngIf"],[3,"parameter"],["parameterForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(t,o){1&t&&(n.TgZ(0,"h1",0),n._uU(1),n.qZA(),n.TgZ(2,"div",1),n.YNc(3,L,9,2,"div",2),n.qZA()),2&t&&(n.xp6(1),n.hij("",o.isNew?"Add":"Edit"," Parameter"),n.xp6(2),n.Q6J("ngIf",o.subsParameter))},directives:[g.uh,g.xY,d.O5,D,h.lW],styles:[""]}),i}(),j=c(66088),R=c(16667),Z=c(26131),$=c(84577),E=c(14900);function H(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div",19),n._uU(1," Deleted\xa0 "),n.TgZ(2,"button",20),n.NdJ("click",function(){return n.CHM(t),n.oxw().undoDelete()}),n._UZ(3,"mat-icon",21),n.qZA(),n.qZA()}}function z(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(1),n.AsE(" \xa0- \xa0 ",t.amount.average," \xa0 ",t.amount.units," ")}}function V(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0 - "),n.qZA())}function B(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," > "),n.qZA())}function W(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," < "),n.qZA())}function X(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.low," ")}}function G(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0to\xa0 "),n.qZA())}function K(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.high," ")}}function nn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" \xa0 ",t.amount.units," \xa0 (average) ")}}function tn(i,e){if(1&i&&(n.TgZ(0,"span"),n.YNc(1,V,2,0,"span",24),n._uU(2," \xa0 [ "),n.YNc(3,B,2,0,"span",24),n.YNc(4,W,2,0,"span",24),n.YNc(5,X,2,1,"span",24),n.YNc(6,G,2,0,"span",24),n.YNc(7,K,2,1,"span",24),n._uU(8," ] "),n.YNc(9,nn,2,1,"span",24),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(1),n.Q6J("ngIf",null==t.amount.average||""==t.amount.average),n.xp6(2),n.Q6J("ngIf",null==t.amount.high||""==t.amount.high),n.xp6(1),n.Q6J("ngIf",null==t.amount.low||""==t.amount.low),n.xp6(1),n.Q6J("ngIf",null!=t.amount.low&&""!=t.amount.low),n.xp6(1),n.Q6J("ngIf",null!=t.amount.low&&""!=t.amount.low&&null!=t.amount.high&&""!=t.amount.high),n.xp6(1),n.Q6J("ngIf",null!=t.amount.high&&""!=t.amount.high),n.xp6(2),n.Q6J("ngIf",null==t.amount.average||""==t.amount.average)}}function on(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0 (average) "),n.qZA())}function en(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," > "),n.qZA())}function an(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," < "),n.qZA())}function cn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.lowLimit," ")}}function sn(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0to\xa0 "),n.qZA())}function ln(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.highLimit," ")}}function rn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0- \xa0 [ "),n.YNc(2,en,2,0,"span",24),n.YNc(3,an,2,0,"span",24),n.YNc(4,cn,2,1,"span",24),n.YNc(5,sn,2,0,"span",24),n.YNc(6,ln,2,1,"span",24),n._uU(7," ] \xa0(limits) "),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(2),n.Q6J("ngIf",null==t.amount.highLimit||""==t.amount.highLimit),n.xp6(1),n.Q6J("ngIf",null==t.amount.lowLimit||""==t.amount.lowLimit),n.xp6(1),n.Q6J("ngIf",null!=t.amount.lowLimit&&""!=t.amount.lowLimit),n.xp6(1),n.Q6J("ngIf",null!=t.amount.lowLimit&&""!=t.amount.lowLimit&&null!=t.amount.highLimit&&""!=t.amount.highLimit),n.xp6(1),n.Q6J("ngIf",null!=t.amount.highLimit&&""!=t.amount.highLimit)}}function mn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(1),n.hij(" \xa0-\xa0 ",t.amount.nonNumericValue," ")}}function dn(i,e){if(1&i&&(n.TgZ(0,"span"),n.TgZ(1,"span"),n._uU(2),n.qZA(),n.YNc(3,z,2,2,"span",24),n.YNc(4,tn,10,7,"span",24),n.YNc(5,on,2,0,"span",24),n.YNc(6,rn,8,5,"span",24),n.YNc(7,mn,2,1,"span",24),n.qZA()),2&i){var t=n.oxw().$implicit;n.xp6(2),n.hij(" \xa0 ",t.amount.type," "),n.xp6(1),n.Q6J("ngIf",null!=t.amount.average&&""!=t.amount.average),n.xp6(1),n.Q6J("ngIf",null!=t.amount.low&&""!=t.amount.low||null!=t.amount.high&&""!=t.amount.high),n.xp6(1),n.Q6J("ngIf",null!=t.amount.average&&""!=t.amount.average),n.xp6(1),n.Q6J("ngIf",null!=t.amount.lowLimit&&""!=t.amount.lowLimit||null!=t.amount.highLimit&&""!=t.amount.highLimit),n.xp6(1),n.Q6J("ngIf",t.amount.nonNumericValue)}}function pn(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div",22),n.TgZ(1,"button",23),n.NdJ("click",function(){var l=n.CHM(t).index;return n.oxw().deleteParameter(l)}),n._UZ(2,"mat-icon",5),n.qZA(),n.TgZ(3,"span"),n._uU(4),n.qZA(),n.YNc(5,dn,8,6,"span",24),n.TgZ(6,"button",25),n.NdJ("click",function(){var l=n.CHM(t).$implicit;return n.oxw().openPropertyParameter(l)}),n._UZ(7,"mat-icon",26),n.qZA(),n.qZA()}if(2&i){var o=e.$implicit;n.xp6(4),n.Oqu(o.parameterName),n.xp6(1),n.Q6J("ngIf",null!=o.amount)}}function un(i,e){1&i&&(n.TgZ(0,"div",27),n.TgZ(1,"div"),n._uU(2,"*physical modifications require a modification role or parameter "),n.qZA(),n.qZA())}var fn=function(){var i=function(){function e(t,o,a,s,l){(0,f.Z)(this,e),this.cvService=t,this.dialog=o,this.utilsService=a,this.overlayContainerService=s,this.substanceFormService=l,this.modDeleted=new n.vpe,this.modTypeList=[],this.modRoleList=[],this.modProcessList=[],this.subscriptions=[],this.invalid=!1}return(0,u.Z)(e,[{key:"onFocusout",value:function(){if(this.privateMod.physicalModificationRole)this.invalid=!1;else{var o=!1;this.privateMod.parameters?(this.privateMod.parameters.forEach(function(a){a.amount.type&&(o=!0)}),this.invalid=!o):this.invalid=!0}}},{key:"onFocusin",value:function(){if(this.privateMod.physicalModificationRole)this.invalid=!1;else{var o=!1;this.privateMod.parameters?(this.privateMod.parameters.forEach(function(a){a.amount.type&&(o=!0)}),this.invalid=!o):this.invalid=!0}}},{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"mod",get:function(){return this.privateMod},set:function(o){this.privateMod=o}},{key:"getVocabularies",value:function(){var o=this;this.cvService.getDomainVocabulary("PHYSICAL_MODIFICATION_ROLE").subscribe(function(a){o.modRoleList=a.PHYSICAL_MODIFICATION_ROLE.list})}},{key:"deleteMod",value:function(){var o=this;this.privateMod.$$deletedCode=this.utilsService.newUUID(),this.privateMod||(this.deleteTimer=setTimeout(function(){o.modDeleted.emit(o.mod),o.substanceFormService.emitOtherLinkUpdate()},1e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMod.$$deletedCode}},{key:"updateRequired",value:function(){if(this.privateMod.physicalModificationRole)this.invalid=!1;else{var o=!1;this.privateMod.parameters?(this.privateMod.parameters.forEach(function(a){a.amount.type&&(o=!0)}),this.invalid=!o):this.invalid=!0}}},{key:"updateAccess",value:function(o){this.mod.access=o}},{key:"openParameterDialog",value:function(){var o=this;this.mod.parameters||(this.mod.parameters=[]);var a=this.dialog.open(P,{data:this.mod.parameters,width:"1080px"});this.overlayContainer.style.zIndex="1002";var s=a.afterClosed().subscribe(function(l){o.overlayContainer.style.zIndex=null,l&&(o.mod.parameters=l)});this.subscriptions.push(s)}},{key:"updateRole",value:function(o){this.mod.physicalModificationRole=o,this.updateRequired()}},{key:"openPropertyParameter",value:function(o){var s,a=this;null==o&&(s=!0,o={amount:{}});var l=JSON.stringify(o),r=this.dialog.open(P,{data:JSON.parse(l),width:"1200px"});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(p){a.overlayContainer.style.zIndex=null,null!=p&&(null==a.mod.parameters&&(a.mod.parameters=[]),s?a.mod.parameters.unshift(p):Object.keys(p).forEach(function(O){o[O]=p[O]}),a.updateRequired())})}},{key:"deleteParameter",value:function(o){this.mod.parameters.splice(o,1)}},{key:"displayAmount",value:function(o){return this.utilsService.displayAmount(o)}}]),e}();return i.\u0275fac=function(t){return new(t||i)(n.Y36(Y.I),n.Y36(g.uw),n.Y36(M.FW),n.Y36(j.Xj),n.Y36(Q.B))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-physical-modification-form"]],hostBindings:function(t,o){1&t&&n.NdJ("focusout",function(){return o.onFocusout()})("focusin",function(){return o.onFocusin()})},inputs:{mod:"mod"},outputs:{modDeleted:"modDeleted"},decls:23,vars:7,consts:[[1,"physical-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete name",3,"click"],["svgIcon","delete_forever"],["domain","PHYSICAL_MODIFICATION_ROLE","title","Modification Role",1,"type",3,"model","valueChange"],[1,"amount"],[1,"label","amt-label"],["mat-icon-button","","matTooltip","add / edit parameters",3,"click"],["svgIcon","add_circle_outline"],[1,"param-display"],["mat-list-item","",4,"ngFor","ngForOf"],[1,"group"],["matInput","","placeholder","Group","required","","name","group",3,"ngModel","ngModelChange"],[1,"access"],[3,"access","accessOut"],[3,"source"],["class","form-row invalid-note",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],["mat-list-item",""],["mat-icon-button","",1,"parameter-delete-icon",3,"click"],[4,"ngIf"],["mat-icon-button","",1,"parameter-icon",3,"click"],["svgIcon","edit"],[1,"form-row","invalid-note"]],template:function(t,o){1&t&&(n.TgZ(0,"div",0),n.YNc(1,H,4,0,"div",1),n.TgZ(2,"div",2),n.TgZ(3,"div",3),n.TgZ(4,"button",4),n.NdJ("click",function(){return o.deleteMod()}),n._UZ(5,"mat-icon",5),n.qZA(),n.qZA(),n.TgZ(6,"app-cv-input",6),n.NdJ("valueChange",function(s){return o.updateRole(s)}),n.qZA(),n.TgZ(7,"div",7),n.TgZ(8,"div",8),n._uU(9," Parameters "),n.qZA(),n.TgZ(10,"button",9),n.NdJ("click",function(){return o.openPropertyParameter()}),n._UZ(11,"mat-icon",10),n.qZA(),n.TgZ(12,"div",11),n.TgZ(13,"mat-list"),n.YNc(14,pn,8,2,"div",12),n.qZA(),n.qZA(),n.qZA(),n.TgZ(15,"div"),n.TgZ(16,"mat-form-field",13),n.TgZ(17,"input",14),n.NdJ("ngModelChange",function(s){return o.mod.modificationGroup=s}),n.qZA(),n.qZA(),n.qZA(),n.TgZ(18,"div",15),n.TgZ(19,"app-access-manager",16),n.NdJ("accessOut",function(s){return o.updateAccess(s)}),n.qZA(),n.qZA(),n.qZA(),n.TgZ(20,"div",2),n._UZ(21,"app-audit-info",17),n.qZA(),n.YNc(22,un,3,0,"div",18),n.qZA()),2&t&&(n.xp6(1),n.Q6J("ngIf",o.mod.$$deletedCode),n.xp6(5),n.Q6J("model",o.mod.physicalModificationRole),n.xp6(8),n.Q6J("ngForOf",o.mod.parameters),n.xp6(3),n.Q6J("ngModel",o.mod.modificationGroup),n.xp6(2),n.Q6J("access",o.mod.access),n.xp6(2),n.Q6J("source",o.mod),n.xp6(1),n.Q6J("ngIf",o.invalid))},directives:[d.O5,h.lW,v.Hw,R.S,Z.i$,d.sg,_.KE,x.Nt,m.Fj,m.Q7,m.JJ,m.On,$.h,E.n],styles:[".physical-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-sub-row[_ngcontent-%COMP%]{max-width:90%}.related-substance[_ngcontent-%COMP%]{max-width:175px}.related-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:150px}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%]{width:33%}.extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:40%}.group[_ngcontent-%COMP%]{width:85px}.type[_ngcontent-%COMP%]{max-width:225px}.access[_ngcontent-%COMP%]{width:30%}.name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-right:15px}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .domains[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .param-display[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .jurisdiction[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.references-container[_ngcontent-%COMP%], .nameorgs-container[_ngcontent-%COMP%]{width:100%}.column-radio[_ngcontent-%COMP%] .mat-radio-label{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.column-radio[_ngcontent-%COMP%] .mat-radio-label-content{padding-left:0;font-size:11px;padding-bottom:4px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:2px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.amount[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-bottom:10px}.amt-label[_ngcontent-%COMP%]{padding-top:11px}.param-display[_ngcontent-%COMP%]{padding-top:10px;width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.param-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end;padding-bottom:7px;padding-top:7px}.param-container[_ngcontent-%COMP%] .param-display[_ngcontent-%COMP%]{max-width:40%;padding-right:15px}.param-container[_ngcontent-%COMP%] .param-amount[_ngcontent-%COMP%]{max-width:60%}.invalid-note[_ngcontent-%COMP%]{margin-top:5px;font-style:italic;font-size:14px;color:red}"]}),i}();function gn(i,e){1&i&&n._UZ(0,"mat-divider",7),2&i&&n.Q6J("inset",!0)}function hn(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div",4),n.TgZ(1,"app-physical-modification-form",5),n.NdJ("modDeleted",function(r){return n.CHM(t),n.oxw().deletePhysicalModification(r)}),n.qZA(),n.YNc(2,gn,1,1,"mat-divider",6),n.qZA()}if(2&i){var o=e.$implicit,a=e.last;n.Q6J("id","substance-physical-modification-"+e.index),n.xp6(1),n.Q6J("mod",o),n.xp6(1),n.Q6J("ngIf",!a)}}function vn(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"button",9),n.NdJ("click",function(){return n.CHM(t),n.oxw(2).addStructuralModification()}),n._uU(1," Add Modification "),n._UZ(2,"mat-icon",10),n.qZA()}}function _n(i,e){if(1&i&&(n.TgZ(0,"div",0),n._UZ(1,"span",1),n.YNc(2,vn,3,0,"button",8),n.qZA()),2&i){var t=n.oxw();n.xp6(2),n.Q6J("ngIf",t.modifications&&t.modifications.length>0)}}var xn=function(){var i=function(e){(0,w.Z)(o,e);var t=(0,I.Z)(o);function o(a,s,l){var r;return(0,f.Z)(this,o),(r=t.call(this,l)).substanceFormPhysicalModificationsService=a,r.scrollToService=s,r.gaService=l,r.subscriptions=[],r.analyticsEventCategory="substance form agent modifications",r}return(0,u.Z)(o,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Physical Modifications")}},{key:"ngAfterViewInit",value:function(){var s=this,l=this.substanceFormPhysicalModificationsService.substancePhysicalModifications.subscribe(function(r){s.modifications=r});this.subscriptions.push(l)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(s){s.unsubscribe()})}},{key:"addItem",value:function(){this.addStructuralModification()}},{key:"addStructuralModification",value:function(){var s=this;this.substanceFormPhysicalModificationsService.addSubstancePhysicalModification(),setTimeout(function(){s.scrollToService.scrollToElement("substance-physical-modification-0","center")})}},{key:"deletePhysicalModification",value:function(s){this.substanceFormPhysicalModificationsService.deleteSubstancePhysicalModification(s)}}]),o}(N.u);return i.\u0275fac=function(t){return new(t||i)(n.Y36(k.q),n.Y36(S.i),n.Y36(J.$))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-substance-form-physical-modifications-card"]],features:[n.qOj],decls:4,vars:2,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["class","flex-row",4,"ngIf"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"mod","modDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],["mat-button","",3,"click",4,"ngIf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(t,o){1&t&&(n.TgZ(0,"div",0),n._UZ(1,"span",1),n.qZA(),n.YNc(2,hn,3,3,"div",2),n.YNc(3,_n,3,1,"div",3)),2&t&&(n.xp6(2),n.Q6J("ngForOf",o.modifications),n.xp6(1),n.Q6J("ngIf",o.modifications&&o.modifications.length>0))},directives:[d.sg,U.P,fn,d.O5,C.d,h.lW,v.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.substance-form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.mat-divider[_ngcontent-%COMP%]{border-top-color:#0000001f}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}"]}),i}(),yn=function(){var i=(0,u.Z)(function e(){(0,f.Z)(this,e)});return i.\u0275fac=function(t){return new(t||i)},i.\u0275mod=n.oAB({type:i}),i.\u0275inj=n.cJS({imports:[[d.ez,b.o.forChild(xn),T.O,C.t,v.Ps,h.ot,F.w,_.lN,m.UX,m.u5,A.TU,x.c,Z.ie]]}),i}()}}]); -//# sourceMappingURL=221.7e26a14ac0bec123.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[221],{20221:function(Cn,y,c){c.r(y),c.d(y,{SubstanceFormPhysicalModificationsModule:function(){return yn}});var u=c(1884),f=c(39117),d=c(36362),O=c(64061),T=c(7168),C=c(19975),v=c(65590),h=c(87317),F=c(94673),_=c(44770),m=c(90587),A=c(26439),x=c(43365),w=c(46751),I=c(56101),N=c(79550),k=c(40104),J=c(16830),n=c(86613),S=c(78444),U=c(51279),Y=(c(27299),c(18291)),M=c(63169),Q=c(33567),g=c(95758),q=c(33662),D=function(){var i=function(){function e(t){(0,f.Z)(this,e),this.utilsService=t}return(0,u.Z)(e,[{key:"ngOnInit",value:function(){}},{key:"parameter",get:function(){return this.privateParameter},set:function(o){this.privateParameter=o,this.privateParameter.amount||(this.privateParameter.amount={})}},{key:"isValid",get:function(){return null!=this.privateParameter.parameterName&&""!==this.privateParameter.parameterName}}]),e}();return i.\u0275fac=function(t){return new(t||i)(n.Y36(M.FW))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-physical-parameter-form"]],inputs:{parameter:"parameter"},decls:8,vars:2,consts:[[1,"parameter-form-container"],[1,"form-row"],[1,"name"],["matInput","","placeholder","Name","required","","name","name",3,"ngModel","ngModelChange"],[1,"amount-form-container"],[1,"amount-title"],[3,"substanceAmount"]],template:function(t,o){1&t&&(n.TgZ(0,"div",0),n.TgZ(1,"div",1),n.TgZ(2,"mat-form-field",2),n.TgZ(3,"input",3),n.NdJ("ngModelChange",function(s){return o.parameter.parameterName=s}),n.qZA(),n.qZA(),n.qZA(),n.TgZ(4,"div",4),n.TgZ(5,"div",5),n._uU(6,"Amount"),n.qZA(),n._UZ(7,"app-amount-form",6),n.qZA(),n.qZA()),2&t&&(n.xp6(3),n.Q6J("ngModel",o.parameter.parameterName),n.xp6(4),n.Q6J("substanceAmount",o.parameter.amount))},directives:[_.KE,x.Nt,m.Fj,m.Q7,m.JJ,m.On,q.f],styles:[".parameter-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}"]}),i}();function L(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div"),n._UZ(1,"app-physical-parameter-form",3,4),n.TgZ(3,"div",5),n._UZ(4,"span",6),n.TgZ(5,"button",7),n.NdJ("click",function(){return n.CHM(t),n.oxw().cancel()}),n._uU(6,"Cancel"),n.qZA(),n.TgZ(7,"button",8),n.NdJ("click",function(){return n.CHM(t),n.oxw().save()}),n._uU(8," Save "),n.qZA(),n.qZA(),n.qZA()}if(2&i){var o=n.MAs(2),a=n.oxw();n.xp6(1),n.Q6J("parameter",a.subsParameter),n.xp6(6),n.Q6J("disabled",!o||!o.isValid)}}var P=function(){var i=function(){function e(t,o){(0,f.Z)(this,e),this.dialogRef=t,this.subsParameter=o,this.isNew=Object.keys(o).length<1}return(0,u.Z)(e,[{key:"ngOnInit",value:function(){}},{key:"save",value:function(){this.dialogRef.close(this.subsParameter)}},{key:"cancel",value:function(){this.dialogRef.close()}}]),e}();return i.\u0275fac=function(t){return new(t||i)(n.Y36(g.so),n.Y36(g.WI))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-physical-parameter-form-dialog"]],decls:4,vars:2,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[4,"ngIf"],[3,"parameter"],["parameterForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(t,o){1&t&&(n.TgZ(0,"h1",0),n._uU(1),n.qZA(),n.TgZ(2,"div",1),n.YNc(3,L,9,2,"div",2),n.qZA()),2&t&&(n.xp6(1),n.hij("",o.isNew?"Add":"Edit"," Parameter"),n.xp6(2),n.Q6J("ngIf",o.subsParameter))},directives:[g.uh,g.xY,d.O5,D,h.lW],styles:[""]}),i}(),j=c(54244),R=c(16667),Z=c(26131),$=c(84577),E=c(14900);function H(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div",19),n._uU(1," Deleted\xa0 "),n.TgZ(2,"button",20),n.NdJ("click",function(){return n.CHM(t),n.oxw().undoDelete()}),n._UZ(3,"mat-icon",21),n.qZA(),n.qZA()}}function z(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(1),n.AsE(" \xa0- \xa0 ",t.amount.average," \xa0 ",t.amount.units," ")}}function V(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0 - "),n.qZA())}function B(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," > "),n.qZA())}function W(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," < "),n.qZA())}function X(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.low," ")}}function G(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0to\xa0 "),n.qZA())}function K(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.high," ")}}function nn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" \xa0 ",t.amount.units," \xa0 (average) ")}}function tn(i,e){if(1&i&&(n.TgZ(0,"span"),n.YNc(1,V,2,0,"span",24),n._uU(2," \xa0 [ "),n.YNc(3,B,2,0,"span",24),n.YNc(4,W,2,0,"span",24),n.YNc(5,X,2,1,"span",24),n.YNc(6,G,2,0,"span",24),n.YNc(7,K,2,1,"span",24),n._uU(8," ] "),n.YNc(9,nn,2,1,"span",24),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(1),n.Q6J("ngIf",null==t.amount.average||""==t.amount.average),n.xp6(2),n.Q6J("ngIf",null==t.amount.high||""==t.amount.high),n.xp6(1),n.Q6J("ngIf",null==t.amount.low||""==t.amount.low),n.xp6(1),n.Q6J("ngIf",null!=t.amount.low&&""!=t.amount.low),n.xp6(1),n.Q6J("ngIf",null!=t.amount.low&&""!=t.amount.low&&null!=t.amount.high&&""!=t.amount.high),n.xp6(1),n.Q6J("ngIf",null!=t.amount.high&&""!=t.amount.high),n.xp6(2),n.Q6J("ngIf",null==t.amount.average||""==t.amount.average)}}function on(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0 (average) "),n.qZA())}function en(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," > "),n.qZA())}function an(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," < "),n.qZA())}function cn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.lowLimit," ")}}function sn(i,e){1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0to\xa0 "),n.qZA())}function ln(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",t.amount.highLimit," ")}}function rn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1," \xa0- \xa0 [ "),n.YNc(2,en,2,0,"span",24),n.YNc(3,an,2,0,"span",24),n.YNc(4,cn,2,1,"span",24),n.YNc(5,sn,2,0,"span",24),n.YNc(6,ln,2,1,"span",24),n._uU(7," ] \xa0(limits) "),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(2),n.Q6J("ngIf",null==t.amount.highLimit||""==t.amount.highLimit),n.xp6(1),n.Q6J("ngIf",null==t.amount.lowLimit||""==t.amount.lowLimit),n.xp6(1),n.Q6J("ngIf",null!=t.amount.lowLimit&&""!=t.amount.lowLimit),n.xp6(1),n.Q6J("ngIf",null!=t.amount.lowLimit&&""!=t.amount.lowLimit&&null!=t.amount.highLimit&&""!=t.amount.highLimit),n.xp6(1),n.Q6J("ngIf",null!=t.amount.highLimit&&""!=t.amount.highLimit)}}function mn(i,e){if(1&i&&(n.TgZ(0,"span"),n._uU(1),n.qZA()),2&i){var t=n.oxw(2).$implicit;n.xp6(1),n.hij(" \xa0-\xa0 ",t.amount.nonNumericValue," ")}}function dn(i,e){if(1&i&&(n.TgZ(0,"span"),n.TgZ(1,"span"),n._uU(2),n.qZA(),n.YNc(3,z,2,2,"span",24),n.YNc(4,tn,10,7,"span",24),n.YNc(5,on,2,0,"span",24),n.YNc(6,rn,8,5,"span",24),n.YNc(7,mn,2,1,"span",24),n.qZA()),2&i){var t=n.oxw().$implicit;n.xp6(2),n.hij(" \xa0 ",t.amount.type," "),n.xp6(1),n.Q6J("ngIf",null!=t.amount.average&&""!=t.amount.average),n.xp6(1),n.Q6J("ngIf",null!=t.amount.low&&""!=t.amount.low||null!=t.amount.high&&""!=t.amount.high),n.xp6(1),n.Q6J("ngIf",null!=t.amount.average&&""!=t.amount.average),n.xp6(1),n.Q6J("ngIf",null!=t.amount.lowLimit&&""!=t.amount.lowLimit||null!=t.amount.highLimit&&""!=t.amount.highLimit),n.xp6(1),n.Q6J("ngIf",t.amount.nonNumericValue)}}function pn(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div",22),n.TgZ(1,"button",23),n.NdJ("click",function(){var l=n.CHM(t).index;return n.oxw().deleteParameter(l)}),n._UZ(2,"mat-icon",5),n.qZA(),n.TgZ(3,"span"),n._uU(4),n.qZA(),n.YNc(5,dn,8,6,"span",24),n.TgZ(6,"button",25),n.NdJ("click",function(){var l=n.CHM(t).$implicit;return n.oxw().openPropertyParameter(l)}),n._UZ(7,"mat-icon",26),n.qZA(),n.qZA()}if(2&i){var o=e.$implicit;n.xp6(4),n.Oqu(o.parameterName),n.xp6(1),n.Q6J("ngIf",null!=o.amount)}}function un(i,e){1&i&&(n.TgZ(0,"div",27),n.TgZ(1,"div"),n._uU(2,"*physical modifications require a modification role or parameter "),n.qZA(),n.qZA())}var fn=function(){var i=function(){function e(t,o,a,s,l){(0,f.Z)(this,e),this.cvService=t,this.dialog=o,this.utilsService=a,this.overlayContainerService=s,this.substanceFormService=l,this.modDeleted=new n.vpe,this.modTypeList=[],this.modRoleList=[],this.modProcessList=[],this.subscriptions=[],this.invalid=!1}return(0,u.Z)(e,[{key:"onFocusout",value:function(){if(this.privateMod.physicalModificationRole)this.invalid=!1;else{var o=!1;this.privateMod.parameters?(this.privateMod.parameters.forEach(function(a){a.amount.type&&(o=!0)}),this.invalid=!o):this.invalid=!0}}},{key:"onFocusin",value:function(){if(this.privateMod.physicalModificationRole)this.invalid=!1;else{var o=!1;this.privateMod.parameters?(this.privateMod.parameters.forEach(function(a){a.amount.type&&(o=!0)}),this.invalid=!o):this.invalid=!0}}},{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"mod",get:function(){return this.privateMod},set:function(o){this.privateMod=o}},{key:"getVocabularies",value:function(){var o=this;this.cvService.getDomainVocabulary("PHYSICAL_MODIFICATION_ROLE").subscribe(function(a){o.modRoleList=a.PHYSICAL_MODIFICATION_ROLE.list})}},{key:"deleteMod",value:function(){var o=this;this.privateMod.$$deletedCode=this.utilsService.newUUID(),this.privateMod||(this.deleteTimer=setTimeout(function(){o.modDeleted.emit(o.mod),o.substanceFormService.emitOtherLinkUpdate()},1e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMod.$$deletedCode}},{key:"updateRequired",value:function(){if(this.privateMod.physicalModificationRole)this.invalid=!1;else{var o=!1;this.privateMod.parameters?(this.privateMod.parameters.forEach(function(a){a.amount.type&&(o=!0)}),this.invalid=!o):this.invalid=!0}}},{key:"updateAccess",value:function(o){this.mod.access=o}},{key:"openParameterDialog",value:function(){var o=this;this.mod.parameters||(this.mod.parameters=[]);var a=this.dialog.open(P,{data:this.mod.parameters,width:"1080px"});this.overlayContainer.style.zIndex="1002";var s=a.afterClosed().subscribe(function(l){o.overlayContainer.style.zIndex=null,l&&(o.mod.parameters=l)});this.subscriptions.push(s)}},{key:"updateRole",value:function(o){this.mod.physicalModificationRole=o,this.updateRequired()}},{key:"openPropertyParameter",value:function(o){var s,a=this;null==o&&(s=!0,o={amount:{}});var l=JSON.stringify(o),r=this.dialog.open(P,{data:JSON.parse(l),width:"1200px"});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(p){a.overlayContainer.style.zIndex=null,null!=p&&(null==a.mod.parameters&&(a.mod.parameters=[]),s?a.mod.parameters.unshift(p):Object.keys(p).forEach(function(b){o[b]=p[b]}),a.updateRequired())})}},{key:"deleteParameter",value:function(o){this.mod.parameters.splice(o,1)}},{key:"displayAmount",value:function(o){return this.utilsService.displayAmount(o)}}]),e}();return i.\u0275fac=function(t){return new(t||i)(n.Y36(Y.I),n.Y36(g.uw),n.Y36(M.FW),n.Y36(j.Xj),n.Y36(Q.B))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-physical-modification-form"]],hostBindings:function(t,o){1&t&&n.NdJ("focusout",function(){return o.onFocusout()})("focusin",function(){return o.onFocusin()})},inputs:{mod:"mod"},outputs:{modDeleted:"modDeleted"},decls:23,vars:7,consts:[[1,"physical-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete name",3,"click"],["svgIcon","delete_forever"],["domain","PHYSICAL_MODIFICATION_ROLE","title","Modification Role",1,"type",3,"model","valueChange"],[1,"amount"],[1,"label","amt-label"],["mat-icon-button","","matTooltip","add / edit parameters",3,"click"],["svgIcon","add_circle_outline"],[1,"param-display"],["mat-list-item","",4,"ngFor","ngForOf"],[1,"group"],["matInput","","placeholder","Group","required","","name","group",3,"ngModel","ngModelChange"],[1,"access"],[3,"access","accessOut"],[3,"source"],["class","form-row invalid-note",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],["mat-list-item",""],["mat-icon-button","",1,"parameter-delete-icon",3,"click"],[4,"ngIf"],["mat-icon-button","",1,"parameter-icon",3,"click"],["svgIcon","edit"],[1,"form-row","invalid-note"]],template:function(t,o){1&t&&(n.TgZ(0,"div",0),n.YNc(1,H,4,0,"div",1),n.TgZ(2,"div",2),n.TgZ(3,"div",3),n.TgZ(4,"button",4),n.NdJ("click",function(){return o.deleteMod()}),n._UZ(5,"mat-icon",5),n.qZA(),n.qZA(),n.TgZ(6,"app-cv-input",6),n.NdJ("valueChange",function(s){return o.updateRole(s)}),n.qZA(),n.TgZ(7,"div",7),n.TgZ(8,"div",8),n._uU(9," Parameters "),n.qZA(),n.TgZ(10,"button",9),n.NdJ("click",function(){return o.openPropertyParameter()}),n._UZ(11,"mat-icon",10),n.qZA(),n.TgZ(12,"div",11),n.TgZ(13,"mat-list"),n.YNc(14,pn,8,2,"div",12),n.qZA(),n.qZA(),n.qZA(),n.TgZ(15,"div"),n.TgZ(16,"mat-form-field",13),n.TgZ(17,"input",14),n.NdJ("ngModelChange",function(s){return o.mod.modificationGroup=s}),n.qZA(),n.qZA(),n.qZA(),n.TgZ(18,"div",15),n.TgZ(19,"app-access-manager",16),n.NdJ("accessOut",function(s){return o.updateAccess(s)}),n.qZA(),n.qZA(),n.qZA(),n.TgZ(20,"div",2),n._UZ(21,"app-audit-info",17),n.qZA(),n.YNc(22,un,3,0,"div",18),n.qZA()),2&t&&(n.xp6(1),n.Q6J("ngIf",o.mod.$$deletedCode),n.xp6(5),n.Q6J("model",o.mod.physicalModificationRole),n.xp6(8),n.Q6J("ngForOf",o.mod.parameters),n.xp6(3),n.Q6J("ngModel",o.mod.modificationGroup),n.xp6(2),n.Q6J("access",o.mod.access),n.xp6(2),n.Q6J("source",o.mod),n.xp6(1),n.Q6J("ngIf",o.invalid))},directives:[d.O5,h.lW,v.Hw,R.S,Z.i$,d.sg,_.KE,x.Nt,m.Fj,m.Q7,m.JJ,m.On,$.h,E.n],styles:[".physical-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-sub-row[_ngcontent-%COMP%]{max-width:90%}.related-substance[_ngcontent-%COMP%]{max-width:175px}.related-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:150px}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%]{width:33%}.extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:40%}.group[_ngcontent-%COMP%]{width:85px}.type[_ngcontent-%COMP%]{max-width:225px}.access[_ngcontent-%COMP%]{width:30%}.name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-right:15px}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .domains[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .param-display[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .jurisdiction[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.references-container[_ngcontent-%COMP%], .nameorgs-container[_ngcontent-%COMP%]{width:100%}.column-radio[_ngcontent-%COMP%] .mat-radio-label{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.column-radio[_ngcontent-%COMP%] .mat-radio-label-content{padding-left:0;font-size:11px;padding-bottom:4px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:2px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.amount[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-bottom:10px}.amt-label[_ngcontent-%COMP%]{padding-top:11px}.param-display[_ngcontent-%COMP%]{padding-top:10px;width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.param-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end;padding-bottom:7px;padding-top:7px}.param-container[_ngcontent-%COMP%] .param-display[_ngcontent-%COMP%]{max-width:40%;padding-right:15px}.param-container[_ngcontent-%COMP%] .param-amount[_ngcontent-%COMP%]{max-width:60%}.invalid-note[_ngcontent-%COMP%]{margin-top:5px;font-style:italic;font-size:14px;color:var(--regular-red-color)}"]}),i}();function gn(i,e){1&i&&n._UZ(0,"mat-divider",7),2&i&&n.Q6J("inset",!0)}function hn(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"div",4),n.TgZ(1,"app-physical-modification-form",5),n.NdJ("modDeleted",function(r){return n.CHM(t),n.oxw().deletePhysicalModification(r)}),n.qZA(),n.YNc(2,gn,1,1,"mat-divider",6),n.qZA()}if(2&i){var o=e.$implicit,a=e.last;n.Q6J("id","substance-physical-modification-"+e.index),n.xp6(1),n.Q6J("mod",o),n.xp6(1),n.Q6J("ngIf",!a)}}function vn(i,e){if(1&i){var t=n.EpF();n.TgZ(0,"button",9),n.NdJ("click",function(){return n.CHM(t),n.oxw(2).addStructuralModification()}),n._uU(1," Add Modification "),n._UZ(2,"mat-icon",10),n.qZA()}}function _n(i,e){if(1&i&&(n.TgZ(0,"div",0),n._UZ(1,"span",1),n.YNc(2,vn,3,0,"button",8),n.qZA()),2&i){var t=n.oxw();n.xp6(2),n.Q6J("ngIf",t.modifications&&t.modifications.length>0)}}var xn=function(){var i=function(e){(0,w.Z)(o,e);var t=(0,I.Z)(o);function o(a,s,l){var r;return(0,f.Z)(this,o),(r=t.call(this,l)).substanceFormPhysicalModificationsService=a,r.scrollToService=s,r.gaService=l,r.subscriptions=[],r.analyticsEventCategory="substance form agent modifications",r}return(0,u.Z)(o,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Physical Modifications")}},{key:"ngAfterViewInit",value:function(){var s=this,l=this.substanceFormPhysicalModificationsService.substancePhysicalModifications.subscribe(function(r){s.modifications=r});this.subscriptions.push(l)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(s){s.unsubscribe()})}},{key:"addItem",value:function(){this.addStructuralModification()}},{key:"addStructuralModification",value:function(){var s=this;this.substanceFormPhysicalModificationsService.addSubstancePhysicalModification(),setTimeout(function(){s.scrollToService.scrollToElement("substance-physical-modification-0","center")})}},{key:"deletePhysicalModification",value:function(s){this.substanceFormPhysicalModificationsService.deleteSubstancePhysicalModification(s)}}]),o}(N.u);return i.\u0275fac=function(t){return new(t||i)(n.Y36(J.q),n.Y36(S.i),n.Y36(k.$))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-substance-form-physical-modifications-card"]],features:[n.qOj],decls:4,vars:2,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["class","flex-row",4,"ngIf"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"mod","modDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],["mat-button","",3,"click",4,"ngIf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(t,o){1&t&&(n.TgZ(0,"div",0),n._UZ(1,"span",1),n.qZA(),n.YNc(2,hn,3,3,"div",2),n.YNc(3,_n,3,1,"div",3)),2&t&&(n.xp6(2),n.Q6J("ngForOf",o.modifications),n.xp6(1),n.Q6J("ngIf",o.modifications&&o.modifications.length>0))},directives:[d.sg,U.P,fn,d.O5,C.d,h.lW,v.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.substance-form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--box-shadow-color-3)}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}"]}),i}(),yn=function(){var i=(0,u.Z)(function e(){(0,f.Z)(this,e)});return i.\u0275fac=function(t){return new(t||i)},i.\u0275mod=n.oAB({type:i}),i.\u0275inj=n.cJS({imports:[[d.ez,O.o.forChild(xn),T.O,C.t,v.Ps,h.ot,F.w,_.lN,m.UX,m.u5,A.TU,x.c,Z.ie]]}),i}()}}]); +//# sourceMappingURL=221.4f3f00bc900d28b3.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/221.7e26a14ac0bec123.js.map b/frontend/src/main/resources/static/221.4f3f00bc900d28b3.js.map similarity index 99% rename from frontend/src/main/resources/static/221.7e26a14ac0bec123.js.map rename to frontend/src/main/resources/static/221.4f3f00bc900d28b3.js.map index ea93aa1..baec345 100644 --- a/frontend/src/main/resources/static/221.7e26a14ac0bec123.js.map +++ b/frontend/src/main/resources/static/221.4f3f00bc900d28b3.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["PhysicalParameterFormComponent","utilsService","this","privateParameter","set","parameter","amount","parameterName","e","i0","selectors","ctx_r2","ctx_r4","PhysicalParameterFormDialogComponent","dialogRef","subsParameter","isNew","Object","keys","length","close","MAT_DIALOG_DATA","ctx_r3","ctx_r35","ctx_r37","PhysicalModificationFormComponent","cvService","dialog","overlayContainerService","substanceFormService","EventEmitter","privateMod","physicalModificationRole","invalid","present","parameters","forEach","param","type","getVocabularies","overlayContainer","getContainerElement","mod","getDomainVocabulary","subscribe","o","modRoleList","response","PHYSICAL_MODIFICATION_ROLE","list","$$deletedCode","newUUID","deleteTimer","setTimeout","modDeleted","emit","emitOtherLinkUpdate","clearTimeout","access","open","data","width","style","zIndex","dialogSubscription","afterClosed","newParams","subscriptions","push","event","updateRequired","a","parameterCopyString","JSON","stringify","parse","newParameter","s","unshift","key","id","splice","amt","displayAmount","ctx","ctx_r6","ctx_r9","SubstanceFormPhysicalModificationsCardComponent","substanceFormPhysicalModificationsService","scrollToService","gaService","r","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","physicalSubscription","substancePhysicalModifications","modifications","componentDestroyed","subscription","unsubscribe","addStructuralModification","addSubstancePhysicalModification","scrollToElement","modification","deleteSubstancePhysicalModification","SubstanceCardBaseFilteredList","SubstanceFormPhysicalModificationsModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","MatListModule"],"sources":["./src/app/core/substance-form/physical-parameter-form/physical-parameter-form.component.ts","./src/app/core/substance-form/physical-parameter-form/physical-parameter-form.component.html","./src/app/core/substance-form/physical-parameter-form-dialog/physical-parameter-form-dialog.component.html","./src/app/core/substance-form/physical-parameter-form-dialog/physical-parameter-form-dialog.component.ts","./src/app/core/substance-form/physical-modifications/physical-modification-form.component.html","./src/app/core/substance-form/physical-modifications/physical-modification-form.component.ts","./src/app/core/substance-form/physical-modifications/substance-form-physical-modifications-card.component.html","./src/app/core/substance-form/physical-modifications/substance-form-physical-modifications-card.component.ts","./src/app/core/substance-form/physical-modifications/substance-form-physical-modifications.module.ts"],"sourcesContent":["import {Component, Input, OnInit} from '@angular/core';\nimport {PhysicalModificationParameter, SubstanceAmount, SubstanceParameter} from '@gsrs-core/substance';\nimport {UtilsService} from '@gsrs-core/utils';\n\n@Component({\n selector: 'app-physical-parameter-form',\n templateUrl: './physical-parameter-form.component.html',\n styleUrls: ['./physical-parameter-form.component.scss']\n})\nexport class PhysicalParameterFormComponent implements OnInit {\n private privateParameter: PhysicalModificationParameter;\n constructor(\n private utilsService: UtilsService) { }\n\n ngOnInit() {\n }\n\n @Input()\n set parameter(parameter: PhysicalModificationParameter) {\n this.privateParameter = parameter;\n if ( !this.privateParameter.amount) {\n this.privateParameter.amount = {};\n }\n }\n\n get parameter(): PhysicalModificationParameter {\n return this.privateParameter;\n }\n\n get isValid(): boolean {\n return (this.privateParameter.parameterName != null && this.privateParameter.parameterName !== '');\n }\n}\n","
\n
\n \n \n \n
\n
\n
Amount
\n \n
\n
\n","

{{isNew ? 'Add' : 'Edit'}} Parameter

\n
\n
\n \n \n
\n \n \n \n
\n
\n
\n","import {Component, Inject, OnInit} from '@angular/core';\nimport {MAT_DIALOG_DATA, MatDialogRef} from '@angular/material/dialog';\nimport {PhysicalModificationParameter, SubstanceParameter} from '@gsrs-core/substance';\n\n@Component({\n selector: 'app-physical-parameter-form-dialog',\n templateUrl: './physical-parameter-form-dialog.component.html',\n styleUrls: ['./physical-parameter-form-dialog.component.scss']\n})\nexport class PhysicalParameterFormDialogComponent implements OnInit {\n isNew: boolean;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public subsParameter: PhysicalModificationParameter\n ) {\n this.isNew = Object.keys(subsParameter).length < 1;\n }\n\n ngOnInit() {\n }\n\n save(): void {\n this.dialogRef.close(this.subsParameter);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n}\n","
\n
\n Deleted \n \n
\n
\n
\n \n
\n \n
\n
\n Parameters\n
\n \n
\n \n
\n \n \n {{parameter.parameterName}}\n \n \n  \n {{parameter.amount.type}}\n \n \n  -\n  \n {{parameter.amount.average}}\n  \n {{parameter.amount.units}}\n \n \n \n  \n -\n \n  \n [\n \n >\n \n \n <\n \n \n {{parameter.amount.low}}\n \n \n  to \n \n \n {{parameter.amount.high}}\n \n ]\n \n  \n {{parameter.amount.units}}\n  \n (average)\n \n \n \n  \n (average)\n \n \n  -\n  \n [\n \n >\n \n \n <\n \n \n {{parameter.amount.lowLimit}}\n \n \n  to \n \n \n {{parameter.amount.highLimit}}\n \n ]\n  (limits)\n \n \n  - \n {{parameter.amount.nonNumericValue}}\n \n \n \n
\n
\n
\n\n
\n
\n \n \n \n
\n
\n \n \n
\n\n\n
\n
\n \n
\n
\n
*physical modifications require a modification role or parameter\n
\n
\n","import {Component, EventEmitter, Input, OnInit, Output, HostListener} from '@angular/core';\nimport {PhysicalModification, SubstanceAmount, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\nimport {PhysicalParameterFormDialogComponent} from '@gsrs-core/substance-form/physical-parameter-form-dialog/physical-parameter-form-dialog.component';\n\n@Component({\n selector: 'app-physical-modification-form',\n templateUrl: './physical-modification-form.component.html',\n styleUrls: ['./physical-modification-form.component.scss']\n})\nexport class PhysicalModificationFormComponent implements OnInit {\n private privateMod: PhysicalModification;\n @Output() modDeleted = new EventEmitter();\n modTypeList: Array = [];\n modRoleList: Array = [];\n modProcessList: Array = [];\n deleteTimer: any;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n invalid = false;\n\n @HostListener('focusout') onFocusout() {\n if (!this.privateMod.physicalModificationRole) {\n let present = false;\n if (this.privateMod.parameters){\n this.privateMod.parameters.forEach (param => {\n if (param.amount.type) {\n present = true;\n }\n });\n if (!present) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n } else {\n this.invalid = true;\n }\n } else {\n this.invalid = false;\n }\n }\n\n @HostListener('focusin') onFocusin() {\n if (!this.privateMod.physicalModificationRole) {\n let present = false;\n if (this.privateMod.parameters) {\n this.privateMod.parameters.forEach (param => {\n if (param.amount.type) {\n present = true;\n }\n });\n if (!present) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n } else {\n this.invalid = true;\n }\n } else {\n this.invalid = false;\n }\n }\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set mod(mod: PhysicalModification) {\n this.privateMod = mod;\n\n }\n\n get mod(): PhysicalModification {\n return this.privateMod;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('PHYSICAL_MODIFICATION_ROLE').subscribe(response => {\n this.modRoleList = response['PHYSICAL_MODIFICATION_ROLE'].list;\n });\n }\n\n deleteMod(): void {\n this.privateMod.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateMod\n ) {\n this.deleteTimer = setTimeout(() => {\n this.modDeleted.emit(this.mod);\n this.substanceFormService.emitOtherLinkUpdate();\n }, 1000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMod.$$deletedCode;\n }\n\n updateRequired(): void {\n if (!this.privateMod.physicalModificationRole) {\n let present = false;\n if (this.privateMod.parameters){\n this.privateMod.parameters.forEach (param => {\n if (param.amount.type) {\n present = true;\n }\n });\n if (!present) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n } else {\n this.invalid = true;\n }\n } else {\n this.invalid = false;\n }\n }\n\n updateAccess(access: Array): void {\n this.mod.access = access;\n }\n\n openParameterDialog(): void {\n if (!this.mod.parameters) {\n this.mod.parameters = [];\n }\n const dialogRef = this.dialog.open(PhysicalParameterFormDialogComponent, {\n data: this.mod.parameters,\n width: '1080px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newParams => {\n this.overlayContainer.style.zIndex = null;\n if (newParams) {\n this.mod.parameters = newParams;\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateRole(event: any) {\n this.mod.physicalModificationRole = event;\n this.updateRequired();\n }\n\n openPropertyParameter(parameter?: any): void {\n\n let isNew: boolean;\n if (parameter == null) {\n isNew = true;\n parameter = { amount: {} };\n }\n const parameterCopyString = JSON.stringify(parameter);\n\n\n const dialogRef = this.dialog.open(PhysicalParameterFormDialogComponent, {\n data: JSON.parse(parameterCopyString),\n width: '1200px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(newParameter => {\n this.overlayContainer.style.zIndex = null;\n if (newParameter != null) {\n if (this.mod.parameters == null) {\n this.mod.parameters = [];\n }\n if (isNew) {\n this.mod.parameters.unshift(newParameter);\n } else {\n Object.keys(newParameter).forEach(key => {\n parameter[key] = newParameter[key];\n });\n }\n this.updateRequired();\n }\n });\n }\n\n deleteParameter(id: number): void {\n this.mod.parameters.splice(id, 1);\n }\n\n displayAmount(amt: SubstanceAmount): string {\n return this.utilsService.displayAmount(amt);\n }\n\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n
0\">\n \n \n
","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {PhysicalModification} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormPhysicalModificationsService } from './substance-form-physical-modifications.service';\n\n@Component({\n selector: 'app-substance-form-physical-modifications-card',\n templateUrl: './substance-form-physical-modifications-card.component.html',\n styleUrls: ['./substance-form-physical-modifications-card.component.scss']\n})\nexport class SubstanceFormPhysicalModificationsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n modifications: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormPhysicalModificationsService: SubstanceFormPhysicalModificationsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form agent modifications';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Physical Modifications');\n }\n\n ngAfterViewInit() {\n const physicalSubscription = this.substanceFormPhysicalModificationsService.substancePhysicalModifications.subscribe(modifications => {\n this.modifications = modifications;\n });\n this.subscriptions.push(physicalSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addStructuralModification();\n }\n\n addStructuralModification(): void {\n this.substanceFormPhysicalModificationsService.addSubstancePhysicalModification();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-physical-modification-0`, 'center');\n });\n }\n\n deletePhysicalModification(modification: PhysicalModification): void {\n this.substanceFormPhysicalModificationsService.deleteSubstancePhysicalModification(modification);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport {SubstanceFormPhysicalModificationsCardComponent} from '@gsrs-core/substance-form/physical-modifications/substance-form-physical-modifications-card.component';\nimport { PhysicalModificationFormComponent } from './physical-modification-form.component';\nimport { MatListModule } from '@angular/material/list';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormPhysicalModificationsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n MatListModule\n ],\n declarations: [\n SubstanceFormPhysicalModificationsCardComponent,\n PhysicalModificationFormComponent\n ]\n})\nexport class SubstanceFormPhysicalModificationsModule { }\n"],"sourceRoot":"webpack:///","file":"221.7e26a14ac0bec123.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["PhysicalParameterFormComponent","utilsService","this","privateParameter","set","parameter","amount","parameterName","e","i0","selectors","ctx_r2","ctx_r4","PhysicalParameterFormDialogComponent","dialogRef","subsParameter","isNew","Object","keys","length","close","MAT_DIALOG_DATA","ctx_r3","ctx_r35","ctx_r37","PhysicalModificationFormComponent","cvService","dialog","overlayContainerService","substanceFormService","EventEmitter","privateMod","physicalModificationRole","invalid","present","parameters","forEach","param","type","getVocabularies","overlayContainer","getContainerElement","mod","getDomainVocabulary","subscribe","o","modRoleList","response","PHYSICAL_MODIFICATION_ROLE","list","$$deletedCode","newUUID","deleteTimer","setTimeout","modDeleted","emit","emitOtherLinkUpdate","clearTimeout","access","open","data","width","style","zIndex","dialogSubscription","afterClosed","newParams","subscriptions","push","event","updateRequired","a","parameterCopyString","JSON","stringify","parse","newParameter","s","unshift","key","id","splice","amt","displayAmount","ctx","ctx_r6","ctx_r9","SubstanceFormPhysicalModificationsCardComponent","substanceFormPhysicalModificationsService","scrollToService","gaService","r","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","physicalSubscription","substancePhysicalModifications","modifications","componentDestroyed","subscription","unsubscribe","addStructuralModification","addSubstancePhysicalModification","scrollToElement","modification","deleteSubstancePhysicalModification","SubstanceCardBaseFilteredList","SubstanceFormPhysicalModificationsModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","MatListModule"],"sources":["./src/app/core/substance-form/physical-parameter-form/physical-parameter-form.component.ts","./src/app/core/substance-form/physical-parameter-form/physical-parameter-form.component.html","./src/app/core/substance-form/physical-parameter-form-dialog/physical-parameter-form-dialog.component.html","./src/app/core/substance-form/physical-parameter-form-dialog/physical-parameter-form-dialog.component.ts","./src/app/core/substance-form/physical-modifications/physical-modification-form.component.html","./src/app/core/substance-form/physical-modifications/physical-modification-form.component.ts","./src/app/core/substance-form/physical-modifications/substance-form-physical-modifications-card.component.html","./src/app/core/substance-form/physical-modifications/substance-form-physical-modifications-card.component.ts","./src/app/core/substance-form/physical-modifications/substance-form-physical-modifications.module.ts"],"sourcesContent":["import {Component, Input, OnInit} from '@angular/core';\nimport {PhysicalModificationParameter, SubstanceAmount, SubstanceParameter} from '@gsrs-core/substance';\nimport {UtilsService} from '@gsrs-core/utils';\n\n@Component({\n selector: 'app-physical-parameter-form',\n templateUrl: './physical-parameter-form.component.html',\n styleUrls: ['./physical-parameter-form.component.scss']\n})\nexport class PhysicalParameterFormComponent implements OnInit {\n private privateParameter: PhysicalModificationParameter;\n constructor(\n private utilsService: UtilsService) { }\n\n ngOnInit() {\n }\n\n @Input()\n set parameter(parameter: PhysicalModificationParameter) {\n this.privateParameter = parameter;\n if ( !this.privateParameter.amount) {\n this.privateParameter.amount = {};\n }\n }\n\n get parameter(): PhysicalModificationParameter {\n return this.privateParameter;\n }\n\n get isValid(): boolean {\n return (this.privateParameter.parameterName != null && this.privateParameter.parameterName !== '');\n }\n}\n","
\n
\n \n \n \n
\n
\n
Amount
\n \n
\n
\n","

{{isNew ? 'Add' : 'Edit'}} Parameter

\n
\n
\n \n \n
\n \n \n \n
\n
\n
\n","import {Component, Inject, OnInit} from '@angular/core';\nimport {MAT_DIALOG_DATA, MatDialogRef} from '@angular/material/dialog';\nimport {PhysicalModificationParameter, SubstanceParameter} from '@gsrs-core/substance';\n\n@Component({\n selector: 'app-physical-parameter-form-dialog',\n templateUrl: './physical-parameter-form-dialog.component.html',\n styleUrls: ['./physical-parameter-form-dialog.component.scss']\n})\nexport class PhysicalParameterFormDialogComponent implements OnInit {\n isNew: boolean;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public subsParameter: PhysicalModificationParameter\n ) {\n this.isNew = Object.keys(subsParameter).length < 1;\n }\n\n ngOnInit() {\n }\n\n save(): void {\n this.dialogRef.close(this.subsParameter);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n}\n","
\n
\n Deleted \n \n
\n
\n
\n \n
\n \n
\n
\n Parameters\n
\n \n
\n \n
\n \n \n {{parameter.parameterName}}\n \n \n  \n {{parameter.amount.type}}\n \n \n  -\n  \n {{parameter.amount.average}}\n  \n {{parameter.amount.units}}\n \n \n \n  \n -\n \n  \n [\n \n >\n \n \n <\n \n \n {{parameter.amount.low}}\n \n \n  to \n \n \n {{parameter.amount.high}}\n \n ]\n \n  \n {{parameter.amount.units}}\n  \n (average)\n \n \n \n  \n (average)\n \n \n  -\n  \n [\n \n >\n \n \n <\n \n \n {{parameter.amount.lowLimit}}\n \n \n  to \n \n \n {{parameter.amount.highLimit}}\n \n ]\n  (limits)\n \n \n  - \n {{parameter.amount.nonNumericValue}}\n \n \n \n
\n
\n
\n\n
\n
\n \n \n \n
\n
\n \n \n
\n\n\n
\n
\n \n
\n
\n
*physical modifications require a modification role or parameter\n
\n
\n","import {Component, EventEmitter, Input, OnInit, Output, HostListener} from '@angular/core';\nimport {PhysicalModification, SubstanceAmount, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\nimport {PhysicalParameterFormDialogComponent} from '@gsrs-core/substance-form/physical-parameter-form-dialog/physical-parameter-form-dialog.component';\n\n@Component({\n selector: 'app-physical-modification-form',\n templateUrl: './physical-modification-form.component.html',\n styleUrls: ['./physical-modification-form.component.scss']\n})\nexport class PhysicalModificationFormComponent implements OnInit {\n private privateMod: PhysicalModification;\n @Output() modDeleted = new EventEmitter();\n modTypeList: Array = [];\n modRoleList: Array = [];\n modProcessList: Array = [];\n deleteTimer: any;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n invalid = false;\n\n @HostListener('focusout') onFocusout() {\n if (!this.privateMod.physicalModificationRole) {\n let present = false;\n if (this.privateMod.parameters){\n this.privateMod.parameters.forEach (param => {\n if (param.amount.type) {\n present = true;\n }\n });\n if (!present) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n } else {\n this.invalid = true;\n }\n } else {\n this.invalid = false;\n }\n }\n\n @HostListener('focusin') onFocusin() {\n if (!this.privateMod.physicalModificationRole) {\n let present = false;\n if (this.privateMod.parameters) {\n this.privateMod.parameters.forEach (param => {\n if (param.amount.type) {\n present = true;\n }\n });\n if (!present) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n } else {\n this.invalid = true;\n }\n } else {\n this.invalid = false;\n }\n }\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set mod(mod: PhysicalModification) {\n this.privateMod = mod;\n\n }\n\n get mod(): PhysicalModification {\n return this.privateMod;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('PHYSICAL_MODIFICATION_ROLE').subscribe(response => {\n this.modRoleList = response['PHYSICAL_MODIFICATION_ROLE'].list;\n });\n }\n\n deleteMod(): void {\n this.privateMod.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateMod\n ) {\n this.deleteTimer = setTimeout(() => {\n this.modDeleted.emit(this.mod);\n this.substanceFormService.emitOtherLinkUpdate();\n }, 1000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMod.$$deletedCode;\n }\n\n updateRequired(): void {\n if (!this.privateMod.physicalModificationRole) {\n let present = false;\n if (this.privateMod.parameters){\n this.privateMod.parameters.forEach (param => {\n if (param.amount.type) {\n present = true;\n }\n });\n if (!present) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n } else {\n this.invalid = true;\n }\n } else {\n this.invalid = false;\n }\n }\n\n updateAccess(access: Array): void {\n this.mod.access = access;\n }\n\n openParameterDialog(): void {\n if (!this.mod.parameters) {\n this.mod.parameters = [];\n }\n const dialogRef = this.dialog.open(PhysicalParameterFormDialogComponent, {\n data: this.mod.parameters,\n width: '1080px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newParams => {\n this.overlayContainer.style.zIndex = null;\n if (newParams) {\n this.mod.parameters = newParams;\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateRole(event: any) {\n this.mod.physicalModificationRole = event;\n this.updateRequired();\n }\n\n openPropertyParameter(parameter?: any): void {\n\n let isNew: boolean;\n if (parameter == null) {\n isNew = true;\n parameter = { amount: {} };\n }\n const parameterCopyString = JSON.stringify(parameter);\n\n\n const dialogRef = this.dialog.open(PhysicalParameterFormDialogComponent, {\n data: JSON.parse(parameterCopyString),\n width: '1200px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(newParameter => {\n this.overlayContainer.style.zIndex = null;\n if (newParameter != null) {\n if (this.mod.parameters == null) {\n this.mod.parameters = [];\n }\n if (isNew) {\n this.mod.parameters.unshift(newParameter);\n } else {\n Object.keys(newParameter).forEach(key => {\n parameter[key] = newParameter[key];\n });\n }\n this.updateRequired();\n }\n });\n }\n\n deleteParameter(id: number): void {\n this.mod.parameters.splice(id, 1);\n }\n\n displayAmount(amt: SubstanceAmount): string {\n return this.utilsService.displayAmount(amt);\n }\n\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n
0\">\n \n \n
","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {PhysicalModification} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormPhysicalModificationsService } from './substance-form-physical-modifications.service';\n\n@Component({\n selector: 'app-substance-form-physical-modifications-card',\n templateUrl: './substance-form-physical-modifications-card.component.html',\n styleUrls: ['./substance-form-physical-modifications-card.component.scss']\n})\nexport class SubstanceFormPhysicalModificationsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n modifications: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormPhysicalModificationsService: SubstanceFormPhysicalModificationsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form agent modifications';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Physical Modifications');\n }\n\n ngAfterViewInit() {\n const physicalSubscription = this.substanceFormPhysicalModificationsService.substancePhysicalModifications.subscribe(modifications => {\n this.modifications = modifications;\n });\n this.subscriptions.push(physicalSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addStructuralModification();\n }\n\n addStructuralModification(): void {\n this.substanceFormPhysicalModificationsService.addSubstancePhysicalModification();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-physical-modification-0`, 'center');\n });\n }\n\n deletePhysicalModification(modification: PhysicalModification): void {\n this.substanceFormPhysicalModificationsService.deleteSubstancePhysicalModification(modification);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport {SubstanceFormPhysicalModificationsCardComponent} from '@gsrs-core/substance-form/physical-modifications/substance-form-physical-modifications-card.component';\nimport { PhysicalModificationFormComponent } from './physical-modification-form.component';\nimport { MatListModule } from '@angular/material/list';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormPhysicalModificationsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n MatListModule\n ],\n declarations: [\n SubstanceFormPhysicalModificationsCardComponent,\n PhysicalModificationFormComponent\n ]\n})\nexport class SubstanceFormPhysicalModificationsModule { }\n"],"sourceRoot":"webpack:///","file":"221.4f3f00bc900d28b3.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/2212.2b86a8e3b5473def.js b/frontend/src/main/resources/static/2212.66c07f88f9789ef2.js similarity index 87% rename from frontend/src/main/resources/static/2212.2b86a8e3b5473def.js rename to frontend/src/main/resources/static/2212.66c07f88f9789ef2.js index d267e79..9527410 100644 --- a/frontend/src/main/resources/static/2212.2b86a8e3b5473def.js +++ b/frontend/src/main/resources/static/2212.66c07f88f9789ef2.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2212],{42212:function(T,r,u){u.r(r),u.d(r,{SubstanceMixtureSourceModule:function(){return I}});var i=u(48047),l=u(78069),v=u(36362),m=u(64061),d=u(98002),p=u(24582),f=u(7318),S=u(2756),b=u(50253),t=u(76442),x=u(9292);function g(n,a){if(1&n&&(t.TgZ(0,"div",6),t._uU(1),t.qZA()),2&n){var e=t.oxw(2);t.xp6(1),t.Oqu(e.parent.approvalID)}}var h=function(a){return["/substances",a]};function M(n,a){if(1&n&&(t.TgZ(0,"div",2),t.YNc(1,g,2,1,"div",3),t._UZ(2,"img",4),t.TgZ(3,"div"),t.TgZ(4,"a",5),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&n){var e=t.oxw();t.xp6(1),t.Q6J("ngIf",e.parent.approvalID),t.xp6(1),t.Q6J("entityId",e.parent.refuuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,h,e.parent.refuuid)),t.xp6(1),t.hij(" ",e.parent.refPname," ")}}var Z=function(){var n=function(a){(0,p.Z)(s,a);var e=(0,f.Z)(s);function s(){var o;return(0,l.Z)(this,s),(o=e.call(this)).substanceUpdated=new b.x,o}return(0,i.Z)(s,[{key:"ngOnInit",value:function(){var c=this;this.substanceUpdated.subscribe(function(y){c.substance=y,null!=c.substance&&null!=c.substance.mixture.parentSubstance&&(c.parent=c.substance.mixture.parentSubstance)})}}]),s}(S.B);return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-mixture-source"]],features:[t.qOj],decls:2,vars:1,consts:[[1,"responsive"],["class","thumb-col",4,"ngIf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"]],template:function(e,s){1&e&&(t.TgZ(0,"div",0),t.YNc(1,M,6,6,"div",1),t.qZA()),2&e&&(t.xp6(1),t.Q6J("ngIf",s.parent))},directives:[v.O5,x.m,d.yS],styles:[""]}),n}(),C=u(24054),I=function(){var n=(0,i.Z)(function a(){(0,l.Z)(this,a)});return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[v.ez,m.o.forChild(Z),d.Bz,C.f]]}),n}()}}]); -//# sourceMappingURL=2212.2b86a8e3b5473def.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2212],{42212:function(T,r,u){u.r(r),u.d(r,{SubstanceMixtureSourceModule:function(){return I}});var i=u(1884),l=u(39117),v=u(36362),m=u(64061),d=u(98002),p=u(46751),f=u(56101),S=u(2756),b=u(50253),t=u(86613),x=u(9292);function g(n,a){if(1&n&&(t.TgZ(0,"div",6),t._uU(1),t.qZA()),2&n){var e=t.oxw(2);t.xp6(1),t.Oqu(e.parent.approvalID)}}var h=function(a){return["/substances",a]};function M(n,a){if(1&n&&(t.TgZ(0,"div",2),t.YNc(1,g,2,1,"div",3),t._UZ(2,"img",4),t.TgZ(3,"div"),t.TgZ(4,"a",5),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&n){var e=t.oxw();t.xp6(1),t.Q6J("ngIf",e.parent.approvalID),t.xp6(1),t.Q6J("entityId",e.parent.refuuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,h,e.parent.refuuid)),t.xp6(1),t.hij(" ",e.parent.refPname," ")}}var Z=function(){var n=function(a){(0,p.Z)(s,a);var e=(0,f.Z)(s);function s(){var o;return(0,l.Z)(this,s),(o=e.call(this)).substanceUpdated=new b.x,o}return(0,i.Z)(s,[{key:"ngOnInit",value:function(){var c=this;this.substanceUpdated.subscribe(function(y){c.substance=y,null!=c.substance&&null!=c.substance.mixture.parentSubstance&&(c.parent=c.substance.mixture.parentSubstance)})}}]),s}(S.B);return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-mixture-source"]],features:[t.qOj],decls:2,vars:1,consts:[[1,"responsive"],["class","thumb-col",4,"ngIf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"]],template:function(e,s){1&e&&(t.TgZ(0,"div",0),t.YNc(1,M,6,6,"div",1),t.qZA()),2&e&&(t.xp6(1),t.Q6J("ngIf",s.parent))},directives:[v.O5,x.m,d.yS],styles:[""]}),n}(),C=u(24054),I=function(){var n=(0,i.Z)(function a(){(0,l.Z)(this,a)});return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[v.ez,m.o.forChild(Z),d.Bz,C.f]]}),n}()}}]); +//# sourceMappingURL=2212.66c07f88f9789ef2.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2212.2b86a8e3b5473def.js.map b/frontend/src/main/resources/static/2212.66c07f88f9789ef2.js.map similarity index 99% rename from frontend/src/main/resources/static/2212.2b86a8e3b5473def.js.map rename to frontend/src/main/resources/static/2212.66c07f88f9789ef2.js.map index 205f348..4540029 100644 --- a/frontend/src/main/resources/static/2212.2b86a8e3b5473def.js.map +++ b/frontend/src/main/resources/static/2212.66c07f88f9789ef2.js.map @@ -1 +1 @@ -{"version":3,"mappings":"sUAEIA,iBAAgDA,SAAqBA,6BAArBA,yGADlDA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,4BAPQA,2CACqCA,4CAEfA,yDACxBA,2CCID,IAAMC,EAAb,eAAaA,EAAb,0CAGE,0CAEEC,gBAHFC,iBAAmB,IAAIC,IACvBF,EAHF,uCAQE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA+D,MAA1CD,EAAKC,UAAUC,QAAQC,kBACnDH,EAAKI,OAASJ,EAAKC,UAAUC,QAAQC,uBAZ7CE,GAAqDC,kDAAxCZ,8BAA+Ba,kTDV5Cd,iBACEA,uBASFA,eAT0BA,2ECSbC,EAAb,cCMac,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCjB,GACtCkB,KACAC,QAISL,EAAb","names":["i0","SubstanceMixtureSourceComponent","o","substanceUpdated","Subject","this","subscribe","c","substance","mixture","parentSubstance","parent","s","SubstanceCardBase","selectors","SubstanceMixtureSourceModule","i","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-mixture-source/substance-mixture-source.component.html","./src/app/core/substance-details/substance-mixture-source/substance-mixture-source.component.ts","./src/app/core/substance-details/substance-mixture-source/substance-mixture-source.module.ts"],"sourcesContent":["
\r\n
\r\n
{{parent.approvalID}}
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-mixture-source',\r\n templateUrl: './substance-mixture-source.component.html',\r\n styleUrls: ['./substance-mixture-source.component.scss']\r\n})\r\nexport class SubstanceMixtureSourceComponent extends SubstanceCardBase implements OnInit {\r\n parent: SubstanceRelated;\r\n substanceUpdated = new Subject();\r\n constructor(\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.mixture.parentSubstance != null) {\r\n this.parent = this.substance.mixture.parentSubstance;\r\n }\r\n });\r\n }\r\n\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {SubstanceMixtureSourceComponent} from './substance-mixture-source.component';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMixtureSourceComponent),\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceMixtureSourceComponent]\r\n})\r\nexport class SubstanceMixtureSourceModule { }\r\n"],"sourceRoot":"webpack:///","file":"2212.2b86a8e3b5473def.js"} \ No newline at end of file +{"version":3,"mappings":"sUAEIA,iBAAgDA,SAAqBA,6BAArBA,yGADlDA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,4BAPQA,2CACqCA,4CAEfA,yDACxBA,2CCID,IAAMC,EAAb,eAAaA,EAAb,0CAGE,0CAEEC,gBAHFC,iBAAmB,IAAIC,IACvBF,EAHF,uCAQE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA+D,MAA1CD,EAAKC,UAAUC,QAAQC,kBACnDH,EAAKI,OAASJ,EAAKC,UAAUC,QAAQC,uBAZ7CE,GAAqDC,kDAAxCZ,8BAA+Ba,kTDV5Cd,iBACEA,uBASFA,eAT0BA,2ECSbC,EAAb,cCMac,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCjB,GACtCkB,KACAC,QAISL,EAAb","names":["i0","SubstanceMixtureSourceComponent","o","substanceUpdated","Subject","this","subscribe","c","substance","mixture","parentSubstance","parent","s","SubstanceCardBase","selectors","SubstanceMixtureSourceModule","i","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-mixture-source/substance-mixture-source.component.html","./src/app/core/substance-details/substance-mixture-source/substance-mixture-source.component.ts","./src/app/core/substance-details/substance-mixture-source/substance-mixture-source.module.ts"],"sourcesContent":["
\r\n
\r\n
{{parent.approvalID}}
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-mixture-source',\r\n templateUrl: './substance-mixture-source.component.html',\r\n styleUrls: ['./substance-mixture-source.component.scss']\r\n})\r\nexport class SubstanceMixtureSourceComponent extends SubstanceCardBase implements OnInit {\r\n parent: SubstanceRelated;\r\n substanceUpdated = new Subject();\r\n constructor(\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.mixture.parentSubstance != null) {\r\n this.parent = this.substance.mixture.parentSubstance;\r\n }\r\n });\r\n }\r\n\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {SubstanceMixtureSourceComponent} from './substance-mixture-source.component';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMixtureSourceComponent),\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceMixtureSourceComponent]\r\n})\r\nexport class SubstanceMixtureSourceModule { }\r\n"],"sourceRoot":"webpack:///","file":"2212.66c07f88f9789ef2.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/2505.fef2ff86efa7a2a2.js b/frontend/src/main/resources/static/2505.16b1a05b9d856784.js similarity index 93% rename from frontend/src/main/resources/static/2505.fef2ff86efa7a2a2.js rename to frontend/src/main/resources/static/2505.16b1a05b9d856784.js index eddb07f..f667a4b 100644 --- a/frontend/src/main/resources/static/2505.fef2ff86efa7a2a2.js +++ b/frontend/src/main/resources/static/2505.16b1a05b9d856784.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2505],{92505:function(ht,p,e){e.r(p),e.d(p,{SubstanceModificationsModule:function(){return xt}});var _=e(48047),l=e(78069),d=e(36362),g=e(64061),T=e(24582),M=e(7318),x=e(2756),h=e(52149),C=e(50253),t=e(76442),u=e(97217),r=e(98002);function b(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Process "),t.qZA())}function S(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.agentModificationProcess," ")}}function A(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Role "),t.qZA())}function y(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.agentModificationRole," ")}}function N(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Type "),t.qZA())}function Y(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.agentModificationType," ")}}function U(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Amount "),t.qZA())}var v=function(o){return{empty:o}};function q(i,o){if(1&i&&(t.TgZ(0,"td",13),t.TgZ(1,"span",14),t._uU(2),t.qZA(),t.qZA()),2&i){var n=o.$implicit,c=t.oxw(2);t.xp6(1),t.Q6J("ngClass",t.VKq(2,v,"empty value"===c.displayAmount(n.amount))),t.xp6(1),t.hij(" ",c.displayAmount(n.amount)," ")}}function Q(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Agent "),t.qZA())}function D(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",null==n.agentSubstance?null:n.agentSubstance.refPname," ")}}function $(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Approved ID "),t.qZA())}var Z=function(o){return["/substances",o]};function J(i,o){if(1&i&&(t.TgZ(0,"a",16),t._uU(1),t.qZA()),2&i){var n=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,Z,n.agentSubstance.refuuid)),t.xp6(1),t.Oqu(n.agentSubstance.approvalID||n.agentSubstance.refuuid)}}function I(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,J,2,4,"a",15),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.agentSubstance&&n.agentSubstance.refuuid)}}function B(i,o){1&i&&t._UZ(0,"tr",17)}function O(i,o){1&i&&t._UZ(0,"tr",18)}function R(i,o){if(1&i&&(t.TgZ(0,"div"),t.TgZ(1,"h4"),t._uU(2,"Agent Modifications:"),t.qZA(),t.TgZ(3,"table",1),t.ynx(4,2),t.YNc(5,b,2,0,"th",3),t.YNc(6,S,2,1,"td",4),t.BQk(),t.ynx(7,5),t.YNc(8,A,2,0,"th",3),t.YNc(9,y,2,1,"td",4),t.BQk(),t.ynx(10,6),t.YNc(11,N,2,0,"th",3),t.YNc(12,Y,2,1,"td",4),t.BQk(),t.ynx(13,7),t.YNc(14,U,2,0,"th",3),t.YNc(15,q,3,4,"td",4),t.BQk(),t.ynx(16,8),t.YNc(17,Q,2,0,"th",3),t.YNc(18,D,2,1,"td",4),t.BQk(),t.ynx(19,9),t.YNc(20,$,2,0,"th",3),t.YNc(21,I,2,1,"td",4),t.BQk(),t.YNc(22,B,1,0,"tr",10),t.YNc(23,O,1,0,"tr",11),t.qZA(),t.qZA()),2&i){var n=t.oxw();t.xp6(3),t.Q6J("dataSource",n.agent),t.xp6(19),t.Q6J("matHeaderRowDef",n.agentColumns),t.xp6(1),t.Q6J("matRowDefColumns",n.agentColumns)}}function j(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Role "),t.qZA())}function F(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.physicalModificationRole," ")}}function k(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Parameter Name "),t.qZA())}function P(i,o){if(1&i&&(t.TgZ(0,"span",23),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.parameterName," ")}}function w(i,o){if(1&i&&(t.TgZ(0,"div",21),t.YNc(1,P,2,1,"span",22),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.Q6J("ngForOf",n.parameters)}}function L(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,w,2,1,"div",20),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.parameters&&n.parameters.length)}}function H(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Amount "),t.qZA())}function E(i,o){if(1&i&&(t.TgZ(0,"span",25),t.TgZ(1,"span",14),t._uU(2),t.qZA(),t.qZA()),2&i){var n=o.$implicit,c=t.oxw(4);t.xp6(1),t.Q6J("ngClass",t.VKq(2,v,"empty value"===c.displayAmount(n.amount))),t.xp6(1),t.hij(" ",c.displayAmount(n.amount)," ")}}function K(i,o){if(1&i&&(t.TgZ(0,"div",21),t.YNc(1,E,3,4,"span",24),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.Q6J("ngForOf",n.parameters)}}function V(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,K,2,1,"div",20),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.parameters&&n.parameters.length)}}function z(i,o){1&i&&t._UZ(0,"tr",17)}function X(i,o){1&i&&t._UZ(0,"tr",18)}function G(i,o){if(1&i&&(t.TgZ(0,"div"),t.TgZ(1,"h4"),t._uU(2,"Physical Modifications:"),t.qZA(),t.TgZ(3,"table",1),t.ynx(4,5),t.YNc(5,j,2,0,"th",3),t.YNc(6,F,2,1,"td",4),t.BQk(),t.ynx(7,19),t.YNc(8,k,2,0,"th",3),t.YNc(9,L,2,1,"td",4),t.BQk(),t.ynx(10,7),t.YNc(11,H,2,0,"th",3),t.YNc(12,V,2,1,"td",4),t.BQk(),t.YNc(13,z,1,0,"tr",10),t.YNc(14,X,1,0,"tr",11),t.qZA(),t.qZA()),2&i){var n=t.oxw();t.xp6(3),t.Q6J("dataSource",n.physical),t.xp6(10),t.Q6J("matHeaderRowDef",n.physicalColumns),t.xp6(1),t.Q6J("matRowDefColumns",n.physicalColumns)}}function W(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Type "),t.qZA())}function tt(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.structuralModificationType," ")}}function it(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Location Site "),t.qZA())}function nt(i,o){if(1&i&&(t.TgZ(0,"div"),t._uU(1),t._UZ(2,"br"),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.AsE(" [",n.subunitIndex,"_",n.residueIndex,"] ")}}function ot(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,nt,3,2,"div",33),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngForOf",n.sites)}}function at(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Location Type "),t.qZA())}function et(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.locationType," ")}}function ct(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Residue Modified "),t.qZA())}function ut(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.residueModified," ")}}function st(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Extent "),t.qZA())}function dt(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t._UZ(2,"br"),t.TgZ(3,"b"),t._uU(4,"Amount: "),t.qZA(),t._uU(5),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.extent,""),t.xp6(4),t.hij(" ",n.$$amount," ")}}function ft(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Name "),t.qZA())}function mt(i,o){if(1&i&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.hij(" ",n.molecularFragment.refPname," ")}}function pt(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,mt,2,1,"span",0),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.molecularFragment)}}function _t(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification ID "),t.qZA())}function lt(i,o){if(1&i&&(t.TgZ(0,"span"),t.TgZ(1,"a",16),t._uU(2),t.qZA(),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(2,Z,n.molecularFragment.refuuid)),t.xp6(1),t.Oqu(n.molecularFragment.approvalID||n.molecularFragment.refuuid)}}function rt(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,lt,3,4,"span",0),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.molecularFragment)}}function vt(i,o){1&i&&t._UZ(0,"tr",17)}function Zt(i,o){1&i&&t._UZ(0,"tr",18)}function gt(i,o){if(1&i&&(t.TgZ(0,"div"),t.TgZ(1,"h4"),t._uU(2,"Structural Modifications:"),t.qZA(),t.TgZ(3,"div",26),t.TgZ(4,"table",1),t.ynx(5,6),t.YNc(6,W,2,0,"th",3),t.YNc(7,tt,2,1,"td",4),t.BQk(),t.ynx(8,27),t.YNc(9,it,2,0,"th",3),t.YNc(10,ot,2,1,"td",4),t.BQk(),t.ynx(11,28),t.YNc(12,at,2,0,"th",3),t.YNc(13,et,2,1,"td",4),t.BQk(),t.ynx(14,29),t.YNc(15,ct,2,0,"th",3),t.YNc(16,ut,2,1,"td",4),t.BQk(),t.ynx(17,30),t.YNc(18,st,2,0,"th",3),t.YNc(19,dt,6,2,"td",4),t.BQk(),t.ynx(20,31),t.YNc(21,ft,2,0,"th",3),t.YNc(22,pt,2,1,"td",4),t.BQk(),t.ynx(23,32),t.YNc(24,_t,2,0,"th",3),t.YNc(25,rt,2,1,"td",4),t.BQk(),t.YNc(26,vt,1,0,"tr",10),t.YNc(27,Zt,1,0,"tr",11),t.qZA(),t.qZA(),t.qZA()),2&i){var n=t.oxw();t.xp6(4),t.Q6J("dataSource",n.structural),t.xp6(22),t.Q6J("matHeaderRowDef",n.structuralColumns),t.xp6(1),t.Q6J("matRowDefColumns",n.structuralColumns)}}var Tt=function(){var i=function(o){(0,T.Z)(c,o);var n=(0,M.Z)(c);function c(f){var a;return(0,l.Z)(this,c),(a=n.call(this)).utilsService=f,a.substanceUpdated=new C.x,a.structuralColumns=["Modification Type","Location Site","Location Type","Residue Modified","Extent","Modification Name","Modification ID"],a.physicalColumns=["Modification Role","Parameter Name","Amount"],a.agentColumns=["Modification Process","Modification Role","Modification Type","Amount","Modification Agent","Approved ID"],a}return(0,_.Z)(c,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(s){a.substance=s,null!=a.substance&&(a.substance.modifications.structuralModifications.length>0&&(a.structural=a.substance.modifications.structuralModifications),a.substance.modifications.physicalModifications.length>0&&(a.physical=a.substance.modifications.physicalModifications),a.substance.modifications.agentModifications.length>0&&(a.agent=a.substance.modifications.agentModifications)),a.structural&&a.structural.forEach(function(m){m.extentAmount&&(m.$$amount=a.displayAmount(m.extentAmount))})})}},{key:"displayAmount",value:function(a){var s=this.utilsService.displayAmount(a);return(!s||0===s.trim().length)&&(s="empty value"),s}}]),c}(x.B);return i.\u0275fac=function(n){return new(n||i)(t.Y36(h.F))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-modifications"]],features:[t.qOj],decls:5,vars:3,consts:[[4,"ngIf"],["mat-table","",1,"no-bottom-border",3,"dataSource"],["matColumnDef","Modification Process"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Modification Role"],["matColumnDef","Modification Type"],["matColumnDef","Amount"],["matColumnDef","Modification Agent"],["matColumnDef","Approved ID"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[3,"ngClass"],["target","_blank",3,"routerLink",4,"ngIf"],["target","_blank",3,"routerLink"],["mat-header-row",""],["mat-row",""],["matColumnDef","Parameter Name"],["class","param-container",4,"ngIf"],[1,"param-container"],["class","param-name",4,"ngFor","ngForOf"],[1,"param-name"],["class","param-amount",4,"ngFor","ngForOf"],[1,"param-amount"],[1,"responsive"],["matColumnDef","Location Site"],["matColumnDef","Location Type"],["matColumnDef","Residue Modified"],["matColumnDef","Extent"],["matColumnDef","Modification Name"],["matColumnDef","Modification ID"],[4,"ngFor","ngForOf"]],template:function(n,c){1&n&&(t.YNc(0,R,24,3,"div",0),t._UZ(1,"br"),t.YNc(2,G,15,3,"div",0),t._UZ(3,"br"),t.YNc(4,gt,28,3,"div",0)),2&n&&(t.Q6J("ngIf",c.agent),t.xp6(2),t.Q6J("ngIf",c.physical),t.xp6(2),t.Q6J("ngIf",c.structural))},directives:[d.O5,u.BZ,u.w1,u.fO,u.ge,u.Dz,u.ev,d.mk,r.yS,u.as,u.XQ,u.nj,u.Gk,d.sg],styles:[".param-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.param-container[_ngcontent-%COMP%] .param-name[_ngcontent-%COMP%], .param-container[_ngcontent-%COMP%] .param-amount[_ngcontent-%COMP%]{padding-bottom:5px;padding-top:6px}.empty[_ngcontent-%COMP%]{font-style:italic}.bottom-border[_ngcontent-%COMP%]{border-bottom:1px solid rgba(0,0,0,.05)}"]}),i}(),Mt=e(33865),xt=function(){var i=(0,_.Z)(function o(){(0,l.Z)(this,o)});return i.\u0275fac=function(n){return new(n||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[d.ez,g.o.forChild(Tt),u.p0,Mt.HT,r.Bz]]}),i}()}}]); -//# sourceMappingURL=2505.fef2ff86efa7a2a2.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2505],{92505:function(xt,p,e){e.r(p),e.d(p,{SubstanceModificationsModule:function(){return ht}});var _=e(1884),l=e(39117),d=e(36362),g=e(64061),T=e(46751),M=e(56101),h=e(2756),x=e(52149),C=e(50253),t=e(86613),u=e(97217),r=e(98002);function b(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Process "),t.qZA())}function S(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.agentModificationProcess," ")}}function A(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Role "),t.qZA())}function y(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.agentModificationRole," ")}}function N(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Type "),t.qZA())}function Y(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.agentModificationType," ")}}function U(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Amount "),t.qZA())}var v=function(o){return{empty:o}};function q(i,o){if(1&i&&(t.TgZ(0,"td",13),t.TgZ(1,"span",14),t._uU(2),t.qZA(),t.qZA()),2&i){var n=o.$implicit,c=t.oxw(2);t.xp6(1),t.Q6J("ngClass",t.VKq(2,v,"empty value"===c.displayAmount(n.amount))),t.xp6(1),t.hij(" ",c.displayAmount(n.amount)," ")}}function Q(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Agent "),t.qZA())}function D(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",null==n.agentSubstance?null:n.agentSubstance.refPname," ")}}function $(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Approved ID "),t.qZA())}var Z=function(o){return["/substances",o]};function J(i,o){if(1&i&&(t.TgZ(0,"a",16),t._uU(1),t.qZA()),2&i){var n=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,Z,n.agentSubstance.refuuid)),t.xp6(1),t.Oqu(n.agentSubstance.approvalID||n.agentSubstance.refuuid)}}function I(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,J,2,4,"a",15),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.agentSubstance&&n.agentSubstance.refuuid)}}function B(i,o){1&i&&t._UZ(0,"tr",17)}function O(i,o){1&i&&t._UZ(0,"tr",18)}function R(i,o){if(1&i&&(t.TgZ(0,"div"),t.TgZ(1,"h4"),t._uU(2,"Agent Modifications:"),t.qZA(),t.TgZ(3,"table",1),t.ynx(4,2),t.YNc(5,b,2,0,"th",3),t.YNc(6,S,2,1,"td",4),t.BQk(),t.ynx(7,5),t.YNc(8,A,2,0,"th",3),t.YNc(9,y,2,1,"td",4),t.BQk(),t.ynx(10,6),t.YNc(11,N,2,0,"th",3),t.YNc(12,Y,2,1,"td",4),t.BQk(),t.ynx(13,7),t.YNc(14,U,2,0,"th",3),t.YNc(15,q,3,4,"td",4),t.BQk(),t.ynx(16,8),t.YNc(17,Q,2,0,"th",3),t.YNc(18,D,2,1,"td",4),t.BQk(),t.ynx(19,9),t.YNc(20,$,2,0,"th",3),t.YNc(21,I,2,1,"td",4),t.BQk(),t.YNc(22,B,1,0,"tr",10),t.YNc(23,O,1,0,"tr",11),t.qZA(),t.qZA()),2&i){var n=t.oxw();t.xp6(3),t.Q6J("dataSource",n.agent),t.xp6(19),t.Q6J("matHeaderRowDef",n.agentColumns),t.xp6(1),t.Q6J("matRowDefColumns",n.agentColumns)}}function j(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Role "),t.qZA())}function F(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.physicalModificationRole," ")}}function k(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Parameter Name "),t.qZA())}function P(i,o){if(1&i&&(t.TgZ(0,"span",23),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.parameterName," ")}}function w(i,o){if(1&i&&(t.TgZ(0,"div",21),t.YNc(1,P,2,1,"span",22),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.Q6J("ngForOf",n.parameters)}}function L(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,w,2,1,"div",20),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.parameters&&n.parameters.length)}}function H(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Amount "),t.qZA())}function E(i,o){if(1&i&&(t.TgZ(0,"span",25),t.TgZ(1,"span",14),t._uU(2),t.qZA(),t.qZA()),2&i){var n=o.$implicit,c=t.oxw(4);t.xp6(1),t.Q6J("ngClass",t.VKq(2,v,"empty value"===c.displayAmount(n.amount))),t.xp6(1),t.hij(" ",c.displayAmount(n.amount)," ")}}function K(i,o){if(1&i&&(t.TgZ(0,"div",21),t.YNc(1,E,3,4,"span",24),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.Q6J("ngForOf",n.parameters)}}function V(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,K,2,1,"div",20),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.parameters&&n.parameters.length)}}function z(i,o){1&i&&t._UZ(0,"tr",17)}function X(i,o){1&i&&t._UZ(0,"tr",18)}function G(i,o){if(1&i&&(t.TgZ(0,"div"),t.TgZ(1,"h4"),t._uU(2,"Physical Modifications:"),t.qZA(),t.TgZ(3,"table",1),t.ynx(4,5),t.YNc(5,j,2,0,"th",3),t.YNc(6,F,2,1,"td",4),t.BQk(),t.ynx(7,19),t.YNc(8,k,2,0,"th",3),t.YNc(9,L,2,1,"td",4),t.BQk(),t.ynx(10,7),t.YNc(11,H,2,0,"th",3),t.YNc(12,V,2,1,"td",4),t.BQk(),t.YNc(13,z,1,0,"tr",10),t.YNc(14,X,1,0,"tr",11),t.qZA(),t.qZA()),2&i){var n=t.oxw();t.xp6(3),t.Q6J("dataSource",n.physical),t.xp6(10),t.Q6J("matHeaderRowDef",n.physicalColumns),t.xp6(1),t.Q6J("matRowDefColumns",n.physicalColumns)}}function W(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Type "),t.qZA())}function tt(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.structuralModificationType," ")}}function it(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Location Site "),t.qZA())}function nt(i,o){if(1&i&&(t.TgZ(0,"div"),t._uU(1),t._UZ(2,"br"),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.AsE(" [",n.subunitIndex,"_",n.residueIndex,"] ")}}function ot(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,nt,3,2,"div",33),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngForOf",n.sites)}}function at(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Location Type "),t.qZA())}function et(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.locationType," ")}}function ct(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Residue Modified "),t.qZA())}function ut(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.residueModified," ")}}function st(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Extent "),t.qZA())}function dt(i,o){if(1&i&&(t.TgZ(0,"td",13),t._uU(1),t._UZ(2,"br"),t.TgZ(3,"b"),t._uU(4,"Amount: "),t.qZA(),t._uU(5),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.hij(" ",n.extent,""),t.xp6(4),t.hij(" ",n.$$amount," ")}}function ft(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification Name "),t.qZA())}function mt(i,o){if(1&i&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.hij(" ",n.molecularFragment.refPname," ")}}function pt(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,mt,2,1,"span",0),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.molecularFragment)}}function _t(i,o){1&i&&(t.TgZ(0,"th",12),t._uU(1," Modification ID "),t.qZA())}function lt(i,o){if(1&i&&(t.TgZ(0,"span"),t.TgZ(1,"a",16),t._uU(2),t.qZA(),t.qZA()),2&i){var n=t.oxw().$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(2,Z,n.molecularFragment.refuuid)),t.xp6(1),t.Oqu(n.molecularFragment.approvalID||n.molecularFragment.refuuid)}}function rt(i,o){if(1&i&&(t.TgZ(0,"td",13),t.YNc(1,lt,3,4,"span",0),t.qZA()),2&i){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.molecularFragment)}}function vt(i,o){1&i&&t._UZ(0,"tr",17)}function Zt(i,o){1&i&&t._UZ(0,"tr",18)}function gt(i,o){if(1&i&&(t.TgZ(0,"div"),t.TgZ(1,"h4"),t._uU(2,"Structural Modifications:"),t.qZA(),t.TgZ(3,"div",26),t.TgZ(4,"table",1),t.ynx(5,6),t.YNc(6,W,2,0,"th",3),t.YNc(7,tt,2,1,"td",4),t.BQk(),t.ynx(8,27),t.YNc(9,it,2,0,"th",3),t.YNc(10,ot,2,1,"td",4),t.BQk(),t.ynx(11,28),t.YNc(12,at,2,0,"th",3),t.YNc(13,et,2,1,"td",4),t.BQk(),t.ynx(14,29),t.YNc(15,ct,2,0,"th",3),t.YNc(16,ut,2,1,"td",4),t.BQk(),t.ynx(17,30),t.YNc(18,st,2,0,"th",3),t.YNc(19,dt,6,2,"td",4),t.BQk(),t.ynx(20,31),t.YNc(21,ft,2,0,"th",3),t.YNc(22,pt,2,1,"td",4),t.BQk(),t.ynx(23,32),t.YNc(24,_t,2,0,"th",3),t.YNc(25,rt,2,1,"td",4),t.BQk(),t.YNc(26,vt,1,0,"tr",10),t.YNc(27,Zt,1,0,"tr",11),t.qZA(),t.qZA(),t.qZA()),2&i){var n=t.oxw();t.xp6(4),t.Q6J("dataSource",n.structural),t.xp6(22),t.Q6J("matHeaderRowDef",n.structuralColumns),t.xp6(1),t.Q6J("matRowDefColumns",n.structuralColumns)}}var Tt=function(){var i=function(o){(0,T.Z)(c,o);var n=(0,M.Z)(c);function c(f){var a;return(0,l.Z)(this,c),(a=n.call(this)).utilsService=f,a.substanceUpdated=new C.x,a.structuralColumns=["Modification Type","Location Site","Location Type","Residue Modified","Extent","Modification Name","Modification ID"],a.physicalColumns=["Modification Role","Parameter Name","Amount"],a.agentColumns=["Modification Process","Modification Role","Modification Type","Amount","Modification Agent","Approved ID"],a}return(0,_.Z)(c,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(s){a.substance=s,null!=a.substance&&(a.substance.modifications.structuralModifications.length>0&&(a.structural=a.substance.modifications.structuralModifications),a.substance.modifications.physicalModifications.length>0&&(a.physical=a.substance.modifications.physicalModifications),a.substance.modifications.agentModifications.length>0&&(a.agent=a.substance.modifications.agentModifications)),a.structural&&a.structural.forEach(function(m){m.extentAmount&&(m.$$amount=a.displayAmount(m.extentAmount))})})}},{key:"displayAmount",value:function(a){var s=this.utilsService.displayAmount(a);return(!s||0===s.trim().length)&&(s="empty value"),s}}]),c}(h.B);return i.\u0275fac=function(n){return new(n||i)(t.Y36(x.F))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-modifications"]],features:[t.qOj],decls:5,vars:3,consts:[[4,"ngIf"],["mat-table","",1,"no-bottom-border",3,"dataSource"],["matColumnDef","Modification Process"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Modification Role"],["matColumnDef","Modification Type"],["matColumnDef","Amount"],["matColumnDef","Modification Agent"],["matColumnDef","Approved ID"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[3,"ngClass"],["target","_blank",3,"routerLink",4,"ngIf"],["target","_blank",3,"routerLink"],["mat-header-row",""],["mat-row",""],["matColumnDef","Parameter Name"],["class","param-container",4,"ngIf"],[1,"param-container"],["class","param-name",4,"ngFor","ngForOf"],[1,"param-name"],["class","param-amount",4,"ngFor","ngForOf"],[1,"param-amount"],[1,"responsive"],["matColumnDef","Location Site"],["matColumnDef","Location Type"],["matColumnDef","Residue Modified"],["matColumnDef","Extent"],["matColumnDef","Modification Name"],["matColumnDef","Modification ID"],[4,"ngFor","ngForOf"]],template:function(n,c){1&n&&(t.YNc(0,R,24,3,"div",0),t._UZ(1,"br"),t.YNc(2,G,15,3,"div",0),t._UZ(3,"br"),t.YNc(4,gt,28,3,"div",0)),2&n&&(t.Q6J("ngIf",c.agent),t.xp6(2),t.Q6J("ngIf",c.physical),t.xp6(2),t.Q6J("ngIf",c.structural))},directives:[d.O5,u.BZ,u.w1,u.fO,u.ge,u.Dz,u.ev,d.mk,r.yS,u.as,u.XQ,u.nj,u.Gk,d.sg],styles:[".param-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.param-container[_ngcontent-%COMP%] .param-name[_ngcontent-%COMP%], .param-container[_ngcontent-%COMP%] .param-amount[_ngcontent-%COMP%]{padding-bottom:5px;padding-top:6px}.empty[_ngcontent-%COMP%]{font-style:italic}.bottom-border[_ngcontent-%COMP%]{border-bottom:1px solid var(--sub-hierarchy-odd-bg-color)}"]}),i}(),Mt=e(33865),ht=function(){var i=(0,_.Z)(function o(){(0,l.Z)(this,o)});return i.\u0275fac=function(n){return new(n||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[d.ez,g.o.forChild(Tt),u.p0,Mt.HT,r.Bz]]}),i}()}}]); +//# sourceMappingURL=2505.16b1a05b9d856784.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2505.fef2ff86efa7a2a2.js.map b/frontend/src/main/resources/static/2505.16b1a05b9d856784.js.map similarity index 99% rename from frontend/src/main/resources/static/2505.fef2ff86efa7a2a2.js.map rename to frontend/src/main/resources/static/2505.16b1a05b9d856784.js.map index d5e626b..06d0c63 100644 --- a/frontend/src/main/resources/static/2505.fef2ff86efa7a2a2.js.map +++ b/frontend/src/main/resources/static/2505.16b1a05b9d856784.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","SubstanceModificationsComponent","utilsService","a","Subject","this","substanceUpdated","subscribe","substance","modifications","structuralModifications","length","structural","physicalModifications","physical","agentModifications","agent","forEach","item","extentAmount","$$amount","displayAmount","amount","returned","trim","c","SubstanceCardBase","selectors","SubstanceModificationsModule","_","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","RouterModule"],"sources":["./src/app/core/substance-details/substance-modifications/substance-modifications.component.html","./src/app/core/substance-details/substance-modifications/substance-modifications.component.ts","./src/app/core/substance-details/substance-modifications/substance-modifications.module.ts"],"sourcesContent":["\r\n
\r\n

Agent Modifications:

\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Modification Process \r\n {{agent.agentModificationProcess}}\r\n Modification Role \r\n {{agent.agentModificationRole}}\r\n Modification Type \r\n {{agent.agentModificationType}}\r\n Amount \r\n \r\n {{displayAmount(agent.amount)}}\r\n \r\n Modification Agent \r\n {{agent.agentSubstance?.refPname}}\r\n Approved ID \r\n {{agent.agentSubstance.approvalID || agent.agentSubstance.refuuid}}\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n

Physical Modifications:

\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Modification Role \r\n {{physical.physicalModificationRole}}\r\n Parameter Name \r\n
\r\n \r\n {{parameter.parameterName}}\r\n \r\n
\r\n
Amount \r\n
\r\n \r\n \r\n {{displayAmount(parameter.amount)}}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n

Structural Modifications:

\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Modification Type \r\n {{structural.structuralModificationType}}\r\n Location Site \r\n
\r\n [{{site.subunitIndex}}_{{site.residueIndex}}]\r\n
\r\n
\r\n
Location Type \r\n {{structural.locationType}}\r\n Residue Modified \r\n {{structural.residueModified}}\r\n Extent \r\n {{structural.extent}}
\r\n Amount: {{structural.$$amount}}\r\n
Modification Name \r\n \r\n {{structural.molecularFragment.refPname}}\r\n \r\n Modification ID \r\n \r\n {{structural.molecularFragment.approvalID || structural.molecularFragment.refuuid}}\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {UtilsService} from '../../utils/utils.service';\r\nimport {\r\n AgentModification,\r\n PhysicalModification,\r\n StructuralModification,\r\n SubstanceAmount,\r\n SubstanceDetail\r\n} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-modifications',\r\n templateUrl: './substance-modifications.component.html',\r\n styleUrls: ['./substance-modifications.component.scss']\r\n})\r\nexport class SubstanceModificationsComponent extends SubstanceCardBase implements OnInit {\r\n structural: Array;\r\n physical: Array;\r\n agent: Array;\r\n substanceUpdated = new Subject();\r\n structuralColumns: string[] = [\r\n 'Modification Type',\r\n 'Location Site',\r\n 'Location Type',\r\n 'Residue Modified',\r\n 'Extent',\r\n 'Modification Name',\r\n 'Modification ID'\r\n ];\r\n physicalColumns: string[] = ['Modification Role', 'Parameter Name', 'Amount'];\r\n agentColumns: string[] = [\r\n 'Modification Process',\r\n 'Modification Role',\r\n 'Modification Type',\r\n 'Amount',\r\n 'Modification Agent',\r\n 'Approved ID'\r\n ];\r\n constructor(\r\n private utilsService: UtilsService,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n if (this.substance.modifications.structuralModifications.length > 0) {\r\n this.structural = this.substance.modifications.structuralModifications;\r\n }\r\n if (this.substance.modifications.physicalModifications.length > 0) {\r\n this.physical = this.substance.modifications.physicalModifications;\r\n }\r\n if (this.substance.modifications.agentModifications.length > 0) {\r\n this.agent = this.substance.modifications.agentModifications;\r\n }\r\n }\r\n\r\n if (this.structural) {\r\n this.structural.forEach( item => {\r\n if (item.extentAmount) {\r\n item.$$amount = this.displayAmount(item.extentAmount);\r\n }\r\n });\r\n }\r\n });\r\n\r\n \r\n }\r\n\r\n displayAmount(amount: any): any {\r\n let returned = this.utilsService.displayAmount(amount);\r\n\r\n if (!returned || returned.trim().length === 0) {\r\n returned = 'empty value';\r\n }\r\n return returned;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceModificationsComponent } from './substance-modifications.component';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceModificationsComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n RouterModule\r\n ],\r\n declarations: [SubstanceModificationsComponent]\r\n})\r\nexport class SubstanceModificationsModule { }\r\n"],"sourceRoot":"webpack:///","file":"2505.fef2ff86efa7a2a2.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","SubstanceModificationsComponent","utilsService","a","Subject","this","substanceUpdated","subscribe","substance","modifications","structuralModifications","length","structural","physicalModifications","physical","agentModifications","agent","forEach","item","extentAmount","$$amount","displayAmount","amount","returned","trim","c","SubstanceCardBase","selectors","SubstanceModificationsModule","_","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","RouterModule"],"sources":["./src/app/core/substance-details/substance-modifications/substance-modifications.component.html","./src/app/core/substance-details/substance-modifications/substance-modifications.component.ts","./src/app/core/substance-details/substance-modifications/substance-modifications.module.ts"],"sourcesContent":["\r\n
\r\n

Agent Modifications:

\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Modification Process \r\n {{agent.agentModificationProcess}}\r\n Modification Role \r\n {{agent.agentModificationRole}}\r\n Modification Type \r\n {{agent.agentModificationType}}\r\n Amount \r\n \r\n {{displayAmount(agent.amount)}}\r\n \r\n Modification Agent \r\n {{agent.agentSubstance?.refPname}}\r\n Approved ID \r\n {{agent.agentSubstance.approvalID || agent.agentSubstance.refuuid}}\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n

Physical Modifications:

\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Modification Role \r\n {{physical.physicalModificationRole}}\r\n Parameter Name \r\n
\r\n \r\n {{parameter.parameterName}}\r\n \r\n
\r\n
Amount \r\n
\r\n \r\n \r\n {{displayAmount(parameter.amount)}}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n

Structural Modifications:

\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Modification Type \r\n {{structural.structuralModificationType}}\r\n Location Site \r\n
\r\n [{{site.subunitIndex}}_{{site.residueIndex}}]\r\n
\r\n
\r\n
Location Type \r\n {{structural.locationType}}\r\n Residue Modified \r\n {{structural.residueModified}}\r\n Extent \r\n {{structural.extent}}
\r\n Amount: {{structural.$$amount}}\r\n
Modification Name \r\n \r\n {{structural.molecularFragment.refPname}}\r\n \r\n Modification ID \r\n \r\n {{structural.molecularFragment.approvalID || structural.molecularFragment.refuuid}}\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {UtilsService} from '../../utils/utils.service';\r\nimport {\r\n AgentModification,\r\n PhysicalModification,\r\n StructuralModification,\r\n SubstanceAmount,\r\n SubstanceDetail\r\n} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-modifications',\r\n templateUrl: './substance-modifications.component.html',\r\n styleUrls: ['./substance-modifications.component.scss']\r\n})\r\nexport class SubstanceModificationsComponent extends SubstanceCardBase implements OnInit {\r\n structural: Array;\r\n physical: Array;\r\n agent: Array;\r\n substanceUpdated = new Subject();\r\n structuralColumns: string[] = [\r\n 'Modification Type',\r\n 'Location Site',\r\n 'Location Type',\r\n 'Residue Modified',\r\n 'Extent',\r\n 'Modification Name',\r\n 'Modification ID'\r\n ];\r\n physicalColumns: string[] = ['Modification Role', 'Parameter Name', 'Amount'];\r\n agentColumns: string[] = [\r\n 'Modification Process',\r\n 'Modification Role',\r\n 'Modification Type',\r\n 'Amount',\r\n 'Modification Agent',\r\n 'Approved ID'\r\n ];\r\n constructor(\r\n private utilsService: UtilsService,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n if (this.substance.modifications.structuralModifications.length > 0) {\r\n this.structural = this.substance.modifications.structuralModifications;\r\n }\r\n if (this.substance.modifications.physicalModifications.length > 0) {\r\n this.physical = this.substance.modifications.physicalModifications;\r\n }\r\n if (this.substance.modifications.agentModifications.length > 0) {\r\n this.agent = this.substance.modifications.agentModifications;\r\n }\r\n }\r\n\r\n if (this.structural) {\r\n this.structural.forEach( item => {\r\n if (item.extentAmount) {\r\n item.$$amount = this.displayAmount(item.extentAmount);\r\n }\r\n });\r\n }\r\n });\r\n\r\n \r\n }\r\n\r\n displayAmount(amount: any): any {\r\n let returned = this.utilsService.displayAmount(amount);\r\n\r\n if (!returned || returned.trim().length === 0) {\r\n returned = 'empty value';\r\n }\r\n return returned;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceModificationsComponent } from './substance-modifications.component';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceModificationsComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n RouterModule\r\n ],\r\n declarations: [SubstanceModificationsComponent]\r\n})\r\nexport class SubstanceModificationsModule { }\r\n"],"sourceRoot":"webpack:///","file":"2505.16b1a05b9d856784.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/2552.9cdfcf4263628ded.js b/frontend/src/main/resources/static/2552.509333b34eea8dc6.js similarity index 90% rename from frontend/src/main/resources/static/2552.9cdfcf4263628ded.js rename to frontend/src/main/resources/static/2552.509333b34eea8dc6.js index 5770366..5e6c5ed 100644 --- a/frontend/src/main/resources/static/2552.9cdfcf4263628ded.js +++ b/frontend/src/main/resources/static/2552.509333b34eea8dc6.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2552],{42552:function(A,u,s){s.r(u),s.d(u,{SubstanceSsg1ParentModule:function(){return T}});var r=s(48047),d=s(78069),o=s(36362),l=s(24054),g=s(98002),v=s(95758),p=s(11920),m=s(75143),f=s(24582),S=s(7318),h=s(2756),x=s(50253),n=s(76442),Z=s(9292);function b(t,e){if(1&t&&(n.TgZ(0,"div",7),n._uU(1),n.qZA()),2&t){var a=n.oxw().$implicit;n.xp6(1),n.Oqu(a.approvalID)}}function C(t,e){if(1&t&&(n.TgZ(0,"div",7),n._uU(1),n.qZA()),2&t){var a=n.oxw().$implicit;n.xp6(1),n.Oqu(a.uuid)}}var P=function(e){return["/substances",e]};function I(t,e){if(1&t&&(n.TgZ(0,"div",3),n.YNc(1,b,2,1,"div",4),n.YNc(2,C,2,1,"div",4),n._UZ(3,"img",5),n.TgZ(4,"div"),n.TgZ(5,"a",6),n._uU(6),n.qZA(),n.qZA(),n.qZA()),2&t){var a=e.$implicit;n.xp6(1),n.Q6J("ngIf",a.approvalID),n.xp6(1),n.Q6J("ngIf",!a.approvalID),n.xp6(1),n.Q6J("entityId",a.uuid),n.xp6(2),n.Q6J("routerLink",n.VKq(5,P,a.uuid)),n.xp6(1),n.hij(" ",a._name," ")}}var O=function(){var t=function(e){(0,f.Z)(i,e);var a=(0,S.Z)(i);function i(){var c;return(0,d.Z)(this,i),(c=a.call(this)).substanceUpdated=new x.x,c}return(0,r.Z)(i,[{key:"ngOnInit",value:function(){var y=this;this.substanceUpdated.subscribe(function(M){y.substance=M})}}]),i}(h.B);return t.\u0275fac=function(a){return new(a||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-ssg1-parent"]],features:[n.qOj],decls:4,vars:1,consts:[[1,"panel-title"],[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"]],template:function(a,i){1&a&&(n.TgZ(0,"h4",0),n._uU(1,"This substance has the following group 1 specified substance forms:"),n.qZA(),n.TgZ(2,"div",1),n.YNc(3,I,7,7,"div",2),n.qZA()),2&a&&(n.xp6(3),n.Q6J("ngForOf",i.substance.$$constituentParents))},directives:[o.sg,o.O5,Z.m,g.yS],styles:[".thumb-col[_ngcontent-%COMP%]{width:33%;min-width:200px}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),t}(),T=(s(64061),function(){var t=(0,r.Z)(function e(){(0,d.Z)(this,e)});return t.\u0275fac=function(a){return new(a||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[o.ez,m.o0.forChild(O),p.V,v.Is,g.Bz,l.f]]}),t}())}}]); -//# sourceMappingURL=2552.9cdfcf4263628ded.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2552],{42552:function(A,u,s){s.r(u),s.d(u,{SubstanceSsg1ParentModule:function(){return T}});var r=s(1884),d=s(39117),o=s(36362),l=s(24054),g=s(98002),v=s(95758),p=s(11920),m=s(75143),f=s(46751),S=s(56101),h=s(2756),x=s(50253),n=s(86613),Z=s(9292);function b(t,e){if(1&t&&(n.TgZ(0,"div",7),n._uU(1),n.qZA()),2&t){var a=n.oxw().$implicit;n.xp6(1),n.Oqu(a.approvalID)}}function C(t,e){if(1&t&&(n.TgZ(0,"div",7),n._uU(1),n.qZA()),2&t){var a=n.oxw().$implicit;n.xp6(1),n.Oqu(a.uuid)}}var P=function(e){return["/substances",e]};function I(t,e){if(1&t&&(n.TgZ(0,"div",3),n.YNc(1,b,2,1,"div",4),n.YNc(2,C,2,1,"div",4),n._UZ(3,"img",5),n.TgZ(4,"div"),n.TgZ(5,"a",6),n._uU(6),n.qZA(),n.qZA(),n.qZA()),2&t){var a=e.$implicit;n.xp6(1),n.Q6J("ngIf",a.approvalID),n.xp6(1),n.Q6J("ngIf",!a.approvalID),n.xp6(1),n.Q6J("entityId",a.uuid),n.xp6(2),n.Q6J("routerLink",n.VKq(5,P,a.uuid)),n.xp6(1),n.hij(" ",a._name," ")}}var O=function(){var t=function(e){(0,f.Z)(i,e);var a=(0,S.Z)(i);function i(){var c;return(0,d.Z)(this,i),(c=a.call(this)).substanceUpdated=new x.x,c}return(0,r.Z)(i,[{key:"ngOnInit",value:function(){var y=this;this.substanceUpdated.subscribe(function(M){y.substance=M})}}]),i}(h.B);return t.\u0275fac=function(a){return new(a||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-ssg1-parent"]],features:[n.qOj],decls:4,vars:1,consts:[[1,"panel-title"],[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"]],template:function(a,i){1&a&&(n.TgZ(0,"h4",0),n._uU(1,"This substance has the following group 1 specified substance forms:"),n.qZA(),n.TgZ(2,"div",1),n.YNc(3,I,7,7,"div",2),n.qZA()),2&a&&(n.xp6(3),n.Q6J("ngForOf",i.substance.$$constituentParents))},directives:[o.sg,o.O5,Z.m,g.yS],styles:[".thumb-col[_ngcontent-%COMP%]{width:33%;min-width:200px}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),t}(),T=(s(64061),function(){var t=(0,r.Z)(function e(){(0,d.Z)(this,e)});return t.\u0275fac=function(a){return new(a||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[o.ez,m.o0.forChild(O),p.V,v.Is,g.Bz,l.f]]}),t}())}}]); +//# sourceMappingURL=2552.509333b34eea8dc6.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2552.9cdfcf4263628ded.js.map b/frontend/src/main/resources/static/2552.509333b34eea8dc6.js.map similarity index 98% rename from frontend/src/main/resources/static/2552.9cdfcf4263628ded.js.map rename to frontend/src/main/resources/static/2552.509333b34eea8dc6.js.map index b617b31..0901280 100644 --- a/frontend/src/main/resources/static/2552.9cdfcf4263628ded.js.map +++ b/frontend/src/main/resources/static/2552.509333b34eea8dc6.js.map @@ -1 +1 @@ -{"version":3,"mappings":"oWAGQA,iBAA+CA,SAAwBA,sCAAxBA,uDAC/CA,iBAAgDA,SAAkBA,sCAAlBA,4FAFlDA,iBACEA,uBACAA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCARQA,oCACAA,qCACoCA,kCAEdA,+CACxBA,iCCEL,IAAMC,EAAb,eAAaA,EAAb,0CAEE,0CACEC,gBAFFC,iBAAmB,IAAIC,IACvBF,EAFF,uCAME,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,QARvBC,GAAmDC,kDAAtCT,8BAA4BU,gVDVzCX,gBAAwBA,+EAAmEA,QACvFA,iBACEA,uBAUFA,eAV6BA,yYCQpBC,EAAb,GCcaW,YAAb,eAAaA,KAAbC,iFAAaD,4DAZF,CACPE,KACAC,cAAsCd,GACtCe,IACAC,KACAC,KACAC,QAMSP,EAAb","names":["i0","SubstanceSsg1ParentComponent","c","substanceUpdated","Subject","this","subscribe","y","substance","i","SubstanceCardBase","selectors","SubstanceSsg1ParentModule","r","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-ssg1-parent/substance-ssg1-parent.component.html","./src/app/core/substance-details/substance-ssg1-parent/substance-ssg1-parent.component.ts","./src/app/core/substance-details/substance-ssg1-parent/substance-ssg1-parent.module.ts"],"sourcesContent":["

This substance has the following group 1 specified substance forms:

\n
\n
\n
{{component.approvalID}}
\n
{{component.uuid}}
\n \n \n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { SubstanceCardBase } from '@gsrs-core/substance-details/substance-card-base';\nimport { Subject } from 'rxjs';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\n\n@Component({\n selector: 'app-substance-ssg1-parent',\n templateUrl: './substance-ssg1-parent.component.html',\n styleUrls: ['./substance-ssg1-parent.component.scss']\n})\nexport class SubstanceSsg1ParentComponent extends SubstanceCardBase implements OnInit {\n substanceUpdated = new Subject();\n constructor() {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n });\n}\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { RouterModule } from '@angular/router';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { ReferencesManagerModule } from '@gsrs-core/references-manager';\nimport { DynamicComponentLoaderModule } from '@gsrs-core/dynamic-component-loader';\nimport { SubstanceSsg1ParentComponent } from '@gsrs-core/substance-details/substance-ssg1-parent/substance-ssg1-parent.component';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsg1ParentComponent),\n ReferencesManagerModule,\n MatDialogModule,\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceSsg1ParentComponent\n ]\n})\nexport class SubstanceSsg1ParentModule { }\n"],"sourceRoot":"webpack:///","file":"2552.9cdfcf4263628ded.js"} \ No newline at end of file +{"version":3,"mappings":"oWAGQA,iBAA+CA,SAAwBA,sCAAxBA,uDAC/CA,iBAAgDA,SAAkBA,sCAAlBA,4FAFlDA,iBACEA,uBACAA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCARQA,oCACAA,qCACoCA,kCAEdA,+CACxBA,iCCEL,IAAMC,EAAb,eAAaA,EAAb,0CAEE,0CACEC,gBAFFC,iBAAmB,IAAIC,IACvBF,EAFF,uCAME,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,QARvBC,GAAmDC,kDAAtCT,8BAA4BU,gVDVzCX,gBAAwBA,+EAAmEA,QACvFA,iBACEA,uBAUFA,eAV6BA,yYCQpBC,EAAb,GCcaW,YAAb,eAAaA,KAAbC,iFAAaD,4DAZF,CACPE,KACAC,cAAsCd,GACtCe,IACAC,KACAC,KACAC,QAMSP,EAAb","names":["i0","SubstanceSsg1ParentComponent","c","substanceUpdated","Subject","this","subscribe","y","substance","i","SubstanceCardBase","selectors","SubstanceSsg1ParentModule","r","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-ssg1-parent/substance-ssg1-parent.component.html","./src/app/core/substance-details/substance-ssg1-parent/substance-ssg1-parent.component.ts","./src/app/core/substance-details/substance-ssg1-parent/substance-ssg1-parent.module.ts"],"sourcesContent":["

This substance has the following group 1 specified substance forms:

\n
\n
\n
{{component.approvalID}}
\n
{{component.uuid}}
\n \n \n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { SubstanceCardBase } from '@gsrs-core/substance-details/substance-card-base';\nimport { Subject } from 'rxjs';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\n\n@Component({\n selector: 'app-substance-ssg1-parent',\n templateUrl: './substance-ssg1-parent.component.html',\n styleUrls: ['./substance-ssg1-parent.component.scss']\n})\nexport class SubstanceSsg1ParentComponent extends SubstanceCardBase implements OnInit {\n substanceUpdated = new Subject();\n constructor() {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n });\n}\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { RouterModule } from '@angular/router';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { ReferencesManagerModule } from '@gsrs-core/references-manager';\nimport { DynamicComponentLoaderModule } from '@gsrs-core/dynamic-component-loader';\nimport { SubstanceSsg1ParentComponent } from '@gsrs-core/substance-details/substance-ssg1-parent/substance-ssg1-parent.component';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsg1ParentComponent),\n ReferencesManagerModule,\n MatDialogModule,\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceSsg1ParentComponent\n ]\n})\nexport class SubstanceSsg1ParentModule { }\n"],"sourceRoot":"webpack:///","file":"2552.509333b34eea8dc6.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/2560.da755e39e015160a.js b/frontend/src/main/resources/static/2560.df62fa88bd8cd03c.js similarity index 92% rename from frontend/src/main/resources/static/2560.da755e39e015160a.js rename to frontend/src/main/resources/static/2560.df62fa88bd8cd03c.js index 75d37bf..1c77f80 100644 --- a/frontend/src/main/resources/static/2560.da755e39e015160a.js +++ b/frontend/src/main/resources/static/2560.df62fa88bd8cd03c.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2560],{32560:function(U,d,t){t.r(d),t.d(d,{SubstanceSsgDefinitionModule:function(){return M}});var f=t(48047),v=t(78069),g=t(36362),m=t(24582),S=t(7318),p=t(2756),b=t(24874),Z=t(50253),n=t(76442),l=t(95758),h=t(66088),C=t(73430);function y(e,c){if(1&e&&(n.TgZ(0,"h2",6),n._uU(1,"References"),n.qZA(),n.TgZ(2,"div",7),n._UZ(3,"app-references-manager",8),n.qZA(),n.TgZ(4,"div",9),n._UZ(5,"span",10),n.TgZ(6,"button",11),n._uU(7,"Close"),n.qZA(),n.qZA()),2&e){var s=n.oxw(2);n.xp6(3),n.Q6J("substance",s.substance)("references",s.substance.specifiedSubstanceG3.definition.references)}}function T(e,c){if(1&e){var s=n.EpF();n.TgZ(0,"div"),n.TgZ(1,"div",1),n.TgZ(2,"div",2),n._uU(3,"Definition"),n.qZA(),n.TgZ(4,"div",3),n._uU(5),n.qZA(),n.qZA(),n.TgZ(6,"div",1),n.TgZ(7,"div",2),n._uU(8,"References"),n.qZA(),n.TgZ(9,"div",3),n.TgZ(10,"button",4),n.NdJ("click",function(){n.CHM(s);var i=n.MAs(13);return n.oxw().openModal(i)}),n._uU(11,"View"),n.qZA(),n.YNc(12,y,8,2,"ng-template",null,5,n.W1O),n.qZA(),n.qZA(),n.qZA()}if(2&e){var a=n.oxw();n.xp6(5),n.Oqu(a.substance.specifiedSubstanceG3.definition.definition),n.xp6(5),n.Q6J("disabled",a.substance.specifiedSubstanceG3.definition.references.length<=0)}}var A=function(){var e=function(c){(0,m.Z)(a,c);var s=(0,S.Z)(a);function a(r,i,u){var o;return(0,v.Z)(this,a),(o=s.call(this)).dialog=r,o.gaService=i,o.overlayContainerService=u,o.definition={},o.substanceUpdated=new Z.x,o.count=0,o}return(0,f.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(u){i.substance=u,null!=i.substance&&null!=i.substance.specifiedSubstanceG3&&i.substance.specifiedSubstanceG3.definition&&(i.definition=i.substance.specifiedSubstanceG3.definition,i.count=1),i.countUpdate.emit(i.count)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"openModal",value:function(i){var u=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var o=this.dialog.open(i,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(G){u.overlayContainer.style.zIndex=null})}}]),a}(p.B);return e.\u0275fac=function(s){return new(s||e)(n.Y36(l.uw),n.Y36(b.$),n.Y36(h.Xj))},e.\u0275cmp=n.Xpm({type:e,selectors:[["app-substance-ssg-definition"]],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"]],template:function(s,a){1&s&&n.YNc(0,T,14,2,"div",0),2&s&&n.Q6J("ngIf",a.substance.specifiedSubstanceG3.definition)},directives:[g.O5,l.uh,l.xY,C.C,l.H8,l.ZT],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),e}(),D=t(64061),x=t(38277),M=function(){var e=(0,f.Z)(function c(){(0,v.Z)(this,c)});return e.\u0275fac=function(s){return new(s||e)},e.\u0275mod=n.oAB({type:e}),e.\u0275inj=n.cJS({imports:[[g.ez,D.o.forChild(A),x.V,l.Is]]}),e}()}}]); -//# sourceMappingURL=2560.da755e39e015160a.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2560],{32560:function(U,d,t){t.r(d),t.d(d,{SubstanceSsgDefinitionModule:function(){return M}});var f=t(1884),v=t(39117),g=t(36362),m=t(46751),S=t(56101),p=t(2756),b=t(24874),Z=t(50253),n=t(86613),l=t(95758),h=t(54244),C=t(73430);function y(e,c){if(1&e&&(n.TgZ(0,"h2",6),n._uU(1,"References"),n.qZA(),n.TgZ(2,"div",7),n._UZ(3,"app-references-manager",8),n.qZA(),n.TgZ(4,"div",9),n._UZ(5,"span",10),n.TgZ(6,"button",11),n._uU(7,"Close"),n.qZA(),n.qZA()),2&e){var s=n.oxw(2);n.xp6(3),n.Q6J("substance",s.substance)("references",s.substance.specifiedSubstanceG3.definition.references)}}function T(e,c){if(1&e){var s=n.EpF();n.TgZ(0,"div"),n.TgZ(1,"div",1),n.TgZ(2,"div",2),n._uU(3,"Definition"),n.qZA(),n.TgZ(4,"div",3),n._uU(5),n.qZA(),n.qZA(),n.TgZ(6,"div",1),n.TgZ(7,"div",2),n._uU(8,"References"),n.qZA(),n.TgZ(9,"div",3),n.TgZ(10,"button",4),n.NdJ("click",function(){n.CHM(s);var i=n.MAs(13);return n.oxw().openModal(i)}),n._uU(11,"View"),n.qZA(),n.YNc(12,y,8,2,"ng-template",null,5,n.W1O),n.qZA(),n.qZA(),n.qZA()}if(2&e){var a=n.oxw();n.xp6(5),n.Oqu(a.substance.specifiedSubstanceG3.definition.definition),n.xp6(5),n.Q6J("disabled",a.substance.specifiedSubstanceG3.definition.references.length<=0)}}var A=function(){var e=function(c){(0,m.Z)(a,c);var s=(0,S.Z)(a);function a(r,i,u){var o;return(0,v.Z)(this,a),(o=s.call(this)).dialog=r,o.gaService=i,o.overlayContainerService=u,o.definition={},o.substanceUpdated=new Z.x,o.count=0,o}return(0,f.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(u){i.substance=u,null!=i.substance&&null!=i.substance.specifiedSubstanceG3&&i.substance.specifiedSubstanceG3.definition&&(i.definition=i.substance.specifiedSubstanceG3.definition,i.count=1),i.countUpdate.emit(i.count)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"openModal",value:function(i){var u=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var o=this.dialog.open(i,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(G){u.overlayContainer.style.zIndex=null})}}]),a}(p.B);return e.\u0275fac=function(s){return new(s||e)(n.Y36(l.uw),n.Y36(b.$),n.Y36(h.Xj))},e.\u0275cmp=n.Xpm({type:e,selectors:[["app-substance-ssg-definition"]],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"]],template:function(s,a){1&s&&n.YNc(0,T,14,2,"div",0),2&s&&n.Q6J("ngIf",a.substance.specifiedSubstanceG3.definition)},directives:[g.O5,l.uh,l.xY,C.C,l.H8,l.ZT],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),e}(),D=t(64061),x=t(38277),M=function(){var e=(0,f.Z)(function c(){(0,v.Z)(this,c)});return e.\u0275fac=function(s){return new(s||e)},e.\u0275mod=n.oAB({type:e}),e.\u0275inj=n.cJS({imports:[[g.ez,D.o.forChild(A),x.V,l.Is]]}),e}()}}]); +//# sourceMappingURL=2560.df62fa88bd8cd03c.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2560.da755e39e015160a.js.map b/frontend/src/main/resources/static/2560.df62fa88bd8cd03c.js.map similarity index 99% rename from frontend/src/main/resources/static/2560.da755e39e015160a.js.map rename to frontend/src/main/resources/static/2560.df62fa88bd8cd03c.js.map index 4fca032..938ddcd 100644 --- a/frontend/src/main/resources/static/2560.da755e39e015160a.js.map +++ b/frontend/src/main/resources/static/2560.df62fa88bd8cd03c.js.map @@ -1 +1 @@ -{"version":3,"mappings":"kVAaQA,gBAAqBA,sBAAUA,QAC/BA,iBACEA,oCAEFA,QACAA,iBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,6BAN0BA,wCAAuB,4GAfzDA,eACEA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBAAmBA,SAAwDA,QAC7EA,QAEAA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBACEA,qBAA2DA,iEAASC,eACYD,iBAAIA,QAEpFA,2CAWFA,QACFA,QACFA,8BAtBuBA,uEAOfA,6FCID,IAAME,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,aAAyB,GACzBA,mBAAmB,IAAIC,IAEvBD,QAAQ,EAK2CA,EATrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA4D,MAAvCD,EAAKC,UAAUC,sBACxCF,EAAKC,UAAUC,qBAAqBC,aACvCH,EAAKG,WAAaH,EAAKC,UAAUC,qBAAqBC,WACtDH,EAAKI,MAAQ,GAEfJ,EAAKK,YAAYC,KAAKN,EAAKI,SAE7BP,KAAKU,iBAAmBV,KAAKH,wBAAwBc,wBAxBzD,uBA2BE,SAAUC,GAAW,WAEnBZ,KAAKJ,UAAUiB,UAAUb,KAAKc,uBAAwB,SAAU,mBAEhE,IAAMC,EAAYf,KAAKL,OAAOqB,KAAKJ,EAAa,CAC9CK,SAAU,MACVC,SAAU,QAEZlB,KAAKU,iBAAiBS,MAAMC,OAAS,OAErCL,EAAUM,cAAcnB,UAAU,YAChCoB,EAAKZ,iBAAiBS,MAAMC,OAAS,WAtC3CG,GAAqDC,kDAAxC9B,GAA+BF,6DAA/BE,EAA+B+B,ybDd5CjC,6BAAMA,4JCcOE,EAAb,yBCIagC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCnC,GACtCoC,IACAC,SAMSL,EAAb","names":["i0","ctx_r3","SubstanceSsgDefinitionComponent","dialog","gaService","overlayContainerService","o","Subject","this","substanceUpdated","subscribe","i","substance","specifiedSubstanceG3","definition","count","countUpdate","emit","overlayContainer","getContainerElement","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","u","a","SubstanceCardBase","selectors","SubstanceSsgDefinitionModule","f","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule"],"sources":["./src/app/core/substance-details/substance-ssg-definition/substance-ssg-definition.component.html","./src/app/core/substance-details/substance-ssg-definition/substance-ssg-definition.component.ts","./src/app/core/substance-details/substance-ssg-definition/substance-ssg-definition.module.ts"],"sourcesContent":["
\n
\n
Definition
\n
{{substance.specifiedSubstanceG3.definition.definition}}
\n
\n\n
\n
References
\n
\n \n\n \n

References

\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
","import { Component, OnInit} from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport { SubstanceDetail, Definition} from '../../substance/substance.model';\nimport { MatDialog} from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subject } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-ssg-definition',\n templateUrl: './substance-ssg-definition.component.html',\n styleUrls: ['./substance-ssg-definition.component.scss']\n})\n\nexport class SubstanceSsgDefinitionComponent extends SubstanceCardBase implements OnInit {\n definition: Definition = {};\n substanceUpdated = new Subject();\n private overlayContainer: HTMLElement;\n count = 0;\n\n constructor(\n private dialog: MatDialog,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null && this.substance.specifiedSubstanceG3 != null\n && this.substance.specifiedSubstanceG3.definition) {\n this.definition = this.substance.specifiedSubstanceG3.definition;\n this.count = 1;\n }\n this.countUpdate.emit(this.count);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n openModal(templateRef) {\n\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\n\n const dialogRef = this.dialog.open(templateRef, {\n minWidth: '40%',\n maxWidth: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(result => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceSsgDefinitionComponent } from './substance-ssg-definition.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReferencesManagerModule } from '../../references-manager/references-manager.module';\nimport { MatDialogModule } from '@angular/material/dialog';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsgDefinitionComponent),\n ReferencesManagerModule,\n MatDialogModule\n ],\n declarations: [\n SubstanceSsgDefinitionComponent\n ]\n})\nexport class SubstanceSsgDefinitionModule { }\n"],"sourceRoot":"webpack:///","file":"2560.da755e39e015160a.js"} \ No newline at end of file +{"version":3,"mappings":"kVAaQA,gBAAqBA,sBAAUA,QAC/BA,iBACEA,oCAEFA,QACAA,iBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,6BAN0BA,wCAAuB,4GAfzDA,eACEA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBAAmBA,SAAwDA,QAC7EA,QAEAA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBACEA,qBAA2DA,iEAASC,eACYD,iBAAIA,QAEpFA,2CAWFA,QACFA,QACFA,8BAtBuBA,uEAOfA,6FCID,IAAME,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,aAAyB,GACzBA,mBAAmB,IAAIC,IAEvBD,QAAQ,EAK2CA,EATrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA4D,MAAvCD,EAAKC,UAAUC,sBACxCF,EAAKC,UAAUC,qBAAqBC,aACvCH,EAAKG,WAAaH,EAAKC,UAAUC,qBAAqBC,WACtDH,EAAKI,MAAQ,GAEfJ,EAAKK,YAAYC,KAAKN,EAAKI,SAE7BP,KAAKU,iBAAmBV,KAAKH,wBAAwBc,wBAxBzD,uBA2BE,SAAUC,GAAW,WAEnBZ,KAAKJ,UAAUiB,UAAUb,KAAKc,uBAAwB,SAAU,mBAEhE,IAAMC,EAAYf,KAAKL,OAAOqB,KAAKJ,EAAa,CAC9CK,SAAU,MACVC,SAAU,QAEZlB,KAAKU,iBAAiBS,MAAMC,OAAS,OAErCL,EAAUM,cAAcnB,UAAU,YAChCoB,EAAKZ,iBAAiBS,MAAMC,OAAS,WAtC3CG,GAAqDC,kDAAxC9B,GAA+BF,6DAA/BE,EAA+B+B,ybDd5CjC,6BAAMA,4JCcOE,EAAb,yBCIagC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCnC,GACtCoC,IACAC,SAMSL,EAAb","names":["i0","ctx_r3","SubstanceSsgDefinitionComponent","dialog","gaService","overlayContainerService","o","Subject","this","substanceUpdated","subscribe","i","substance","specifiedSubstanceG3","definition","count","countUpdate","emit","overlayContainer","getContainerElement","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","u","a","SubstanceCardBase","selectors","SubstanceSsgDefinitionModule","f","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule"],"sources":["./src/app/core/substance-details/substance-ssg-definition/substance-ssg-definition.component.html","./src/app/core/substance-details/substance-ssg-definition/substance-ssg-definition.component.ts","./src/app/core/substance-details/substance-ssg-definition/substance-ssg-definition.module.ts"],"sourcesContent":["
\n
\n
Definition
\n
{{substance.specifiedSubstanceG3.definition.definition}}
\n
\n\n
\n
References
\n
\n \n\n \n

References

\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
","import { Component, OnInit} from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport { SubstanceDetail, Definition} from '../../substance/substance.model';\nimport { MatDialog} from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subject } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-ssg-definition',\n templateUrl: './substance-ssg-definition.component.html',\n styleUrls: ['./substance-ssg-definition.component.scss']\n})\n\nexport class SubstanceSsgDefinitionComponent extends SubstanceCardBase implements OnInit {\n definition: Definition = {};\n substanceUpdated = new Subject();\n private overlayContainer: HTMLElement;\n count = 0;\n\n constructor(\n private dialog: MatDialog,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null && this.substance.specifiedSubstanceG3 != null\n && this.substance.specifiedSubstanceG3.definition) {\n this.definition = this.substance.specifiedSubstanceG3.definition;\n this.count = 1;\n }\n this.countUpdate.emit(this.count);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n openModal(templateRef) {\n\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\n\n const dialogRef = this.dialog.open(templateRef, {\n minWidth: '40%',\n maxWidth: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(result => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceSsgDefinitionComponent } from './substance-ssg-definition.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReferencesManagerModule } from '../../references-manager/references-manager.module';\nimport { MatDialogModule } from '@angular/material/dialog';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsgDefinitionComponent),\n ReferencesManagerModule,\n MatDialogModule\n ],\n declarations: [\n SubstanceSsgDefinitionComponent\n ]\n})\nexport class SubstanceSsgDefinitionModule { }\n"],"sourceRoot":"webpack:///","file":"2560.df62fa88bd8cd03c.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/2686.85f7258c4c9f9456.js b/frontend/src/main/resources/static/2686.0f59d85217c0fefb.js similarity index 97% rename from frontend/src/main/resources/static/2686.85f7258c4c9f9456.js rename to frontend/src/main/resources/static/2686.0f59d85217c0fefb.js index 5f322a7..3e2221d 100644 --- a/frontend/src/main/resources/static/2686.85f7258c4c9f9456.js +++ b/frontend/src/main/resources/static/2686.0f59d85217c0fefb.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2686],{12686:function(ue,v,s){s.r(v),s.d(v,{SubstanceRelationshipsModule:function(){return re}});var Z=s(48047),C=s(78069),b=s(36362),R=s(24582),U=s(7318),M=s(52149),O=s(92507),q=s(54025),D=s(24874),w=s(50253),e=s(76442),f=s(95758),N=s(66088),T=s(44770),S=s(43365),m=s(90587),p=s(97217),h=s(64316),J=s(9292),x=s(98002),y=s(65590),L=s(73430),_=s(26439);function Q(n,o){1&n&&(e.TgZ(0,"th",17),e._uU(1," Related Record"),e.qZA())}var A=function(o){return["/substances",o]};function Y(n,o){if(1&n&&(e.TgZ(0,"td",18),e.TgZ(1,"div",19),e.TgZ(2,"div"),e._uU(3),e.qZA(),e._UZ(4,"img",20),e.TgZ(5,"div"),e.TgZ(6,"a",21),e._uU(7),e._UZ(8,"mat-icon",22),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&n){var i=o.$implicit;e.xp6(3),e.Oqu(i.relatedSubstance.linkingID),e.xp6(1),e.Q6J("entityId",i.relatedSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(4,A,i.relatedSubstance.refuuid)),e.xp6(1),e.hij(" ",i.relatedSubstance.name," ")}}function I(n,o){1&n&&(e.TgZ(0,"th",17),e._uU(1," Type "),e.qZA())}function P(n,o){if(1&n&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&n){var i=o.$implicit;e.xp6(1),e.hij(" ",i.type," ")}}function j(n,o){1&n&&(e.TgZ(0,"th",24),e._uU(1," Details "),e.qZA())}function E(n,o){if(1&n&&(e.TgZ(0,"div",19),e.TgZ(1,"div"),e._uU(2),e.qZA(),e._UZ(3,"img",20),e.TgZ(4,"div"),e.TgZ(5,"a",21),e._uU(6),e._UZ(7,"mat-icon",22),e.qZA(),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(2),e.Oqu(i.mediatorSubstance.linkingID),e.xp6(1),e.Q6J("entityId",i.mediatorSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(4,A,i.mediatorSubstance.refuuid)),e.xp6(1),e.hij(" ",i.mediatorSubstance.name," ")}}function $(n,o){1&n&&(e.TgZ(0,"div"),e.TgZ(1,"i"),e._uU(2,"none"),e.qZA(),e.qZA())}function H(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Interaction Type: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(4),e.hij(" ",i.interactionType," ")}}function V(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Comments: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(4),e.hij(" ",i.comments," ")}}function z(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Qualification: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(4),e.hij(" ",i.qualification," ")}}function B(n,o){if(1&n&&(e.TgZ(0,"i"),e._uU(1),e.qZA()),2&n){var i=e.oxw(3).$implicit;e.xp6(1),e.Oqu(i.amount.nonNumericValue)}}function F(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Amount: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.YNc(5,B,2,1,"i",33),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit,c=e.oxw();e.xp6(4),e.hij(" ",c.displayAmount(i.amount)," "),e.xp6(1),e.Q6J("ngIf",i.amount.nonNumericValue)}}function X(n,o){if(1&n&&(e.TgZ(0,"h2",27),e._uU(1,"Details"),e.qZA(),e.TgZ(2,"div",28),e.TgZ(3,"table",29),e.TgZ(4,"tr"),e.TgZ(5,"th",30),e._uU(6," Mediator Substance "),e.qZA(),e.TgZ(7,"th",30),e._uU(8," Details "),e.qZA(),e.qZA(),e.TgZ(9,"tr"),e.TgZ(10,"td",31),e.YNc(11,E,8,6,"div",32),e.YNc(12,$,3,0,"div",33),e.qZA(),e.TgZ(13,"td",31),e.YNc(14,H,5,1,"div",34),e.YNc(15,V,5,1,"div",34),e.YNc(16,z,5,1,"div",34),e.YNc(17,F,6,2,"div",34),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",35),e._UZ(19,"span",1),e.TgZ(20,"button",36),e._uU(21,"Close"),e.qZA(),e.qZA()),2&n){var i=e.oxw().$implicit;e.xp6(11),e.Q6J("ngIf",i.mediatorSubstance),e.xp6(1),e.Q6J("ngIf",!i.mediatorSubstance),e.xp6(2),e.Q6J("ngIf",i.interactionType),e.xp6(1),e.Q6J("ngIf",i.comments),e.xp6(1),e.Q6J("ngIf",i.qualification),e.xp6(1),e.Q6J("ngIf",i.amount)}}function K(n,o){if(1&n){var i=e.EpF();e.TgZ(0,"td",23),e.TgZ(1,"button",25),e.NdJ("click",function(){e.CHM(i);var a=e.MAs(4);return e.oxw().openModal(a)}),e._uU(2," View"),e.qZA(),e.YNc(3,X,22,6,"ng-template",null,26,e.W1O),e.qZA()}if(2&n){var c=o.$implicit,d=e.oxw();e.xp6(1),e.Q6J("disabled",!d.hasDetails(c))}}function W(n,o){1&n&&(e.TgZ(0,"th",24),e._uU(1," References "),e.qZA())}function k(n,o){if(1&n&&(e.TgZ(0,"h2",27),e._uU(1,"References"),e.qZA(),e.TgZ(2,"div",28),e._UZ(3,"app-references-manager",41),e.qZA(),e.TgZ(4,"div",35),e._UZ(5,"span",1),e.TgZ(6,"button",36),e._uU(7,"Close"),e.qZA(),e.qZA()),2&n){var i=e.oxw().$implicit,c=e.oxw();e.xp6(3),e.Q6J("substance",c.substance)("references",i.references)}}function G(n,o){if(1&n){var i=e.EpF();e.TgZ(0,"td",23),e.TgZ(1,"button",25),e.NdJ("click",function(){e.CHM(i);var t=e.MAs(4);return e.oxw().openModal(t)}),e._uU(2),e.qZA(),e.YNc(3,k,8,2,"ng-template",null,40,e.W1O),e.qZA()}if(2&n){var c=o.$implicit;e.xp6(1),e.Q6J("disabled",c.references.length<=0),e.xp6(1),e.hij("View ",c.references.length>0?c.references.length:""," references")}}function ee(n,o){1&n&&e._UZ(0,"tr",42)}function te(n,o){1&n&&e._UZ(0,"tr",43)}var ne=function(){return[5,10,25,100]},ie=function(){var n=function(o){(0,R.Z)(c,o);var i=(0,U.Z)(c);function c(d,t,a,r,u){var l;return(0,C.Z)(this,c),(l=i.call(this,r)).utilService=d,l.configService=t,l.dialog=a,l.gaService=r,l.overlayContainerService=u,l.relationships=[],l.displayedColumns=["relatedRecord","type","details","references"],l.substanceUpdated=new w.x,l}return(0,Z.Z)(c,[{key:"ngOnInit",value:function(){var t=this;this.substanceUpdated.subscribe(function(a){if(t.relationships=[],t.substance=a,"RELATIONSHIPS"===t.type&&t.configService.configData&&t.configService.configData.substanceDetailsCards&&t.configService.configData.substanceDetailsCards.length){var r=t.configService.configData.substanceDetailsCards.find(function(l){return l.type===t.type});if(null!=r&&r.filters&&r.filters.length){var u=r.filters.find(function(l){return"substanceRelationships"===l.filterName})||{value:[]};t.excludedRelationships=u.value}}null!=t.substance&&null!=t.type&&(t.filterRelationhships(),t.countUpdate.emit(t.relationships.length),t.filtered=t.relationships,t.pageChange(),t.searchControl.valueChanges.subscribe(function(l){t.filterList(l,t.relationships,t.analyticsEventCategory)},function(l){console.log(l)}))}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"sortData",value:function(t){var a=this,r=this.relationships.slice();if(!t.active||""===t.direction)return this.filtered=r,void this.pageChange();this.filtered=r.sort(function(u,l){var g="asc"===t.direction;switch(t.active){case"relatedRecord":return a.utilService.compare(u.relatedSubstance.name?u.relatedSubstance.name.toUpperCase():"",l.relatedSubstance.name?l.relatedSubstance.name.toUpperCase():"",g);case"type":return a.utilService.compare(u.type?u.type:"",l.type?l.type:"",g);default:return 0}}),this.pageChange(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"filterRelationhships",value:function(){var t=this;this.substance.relationships&&this.substance.relationships.length>0&&this.substance.relationships.forEach(function(a){var r=a.type,u=r&&r.trim()||"";if(null!=t.excludedRelationships&&t.excludedRelationships instanceof Array){var l=!1;t.excludedRelationships.forEach(function(g){u.toLowerCase().indexOf(g.toLowerCase())>-1&&(l=!0)}),l||t.relationships.push(a)}else u.toLowerCase().indexOf(t.type.toLowerCase())>-1&&t.relationships.push(a)})}},{key:"hasDetails",value:function(t){return!!(t.mediatorSubstance&&t.mediatorSubstance.name||t.amount||t.qualification||t.interactionType||t.comments)}},{key:"openModal",value:function(t){var a=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var r=this.dialog.open(t,{});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(u){a.overlayContainer.style.zIndex=null})}},{key:"formatValue",value:function(t){return t?"object"==typeof t?t.display?t.display:t.value?t.value:null:t:null}},{key:"displayAmount",value:function(t){var a="";if(t&&"object"==typeof t&&t){var r=!1,u=this.formatValue(t.units);u||(u="");var l=this.formatValue(t.type);l&&(a+=l+"\n"),(t.average||t.high||t.low)&&(t.average&&(a+=t.average,t.units&&(a+=" "+u,r=!0)),(t.high||t.low)&&(a+=" [",t.high&&!t.low?a+="<"+t.high:!t.high&&t.low?a+=">"+t.low:t.high&&t.low&&(a+=t.low+" to "+t.high),a+="] ",r||t.units&&(a+=" "+u,r=!0)),a+=" (average) "),(t.highLimit||t.lowLimit)&&(a+="\n["),t.highLimit&&!t.lowLimit?a+="<"+t.highLimit:!t.highLimit&&t.lowLimit?a+=">"+t.lowLimit:t.highLimit&&t.lowLimit&&(a+=t.lowLimit+" to "+t.highLimit),(t.highLimit||t.lowLimit)&&(a+="] ",r||t.units&&(a+=" "+u,r=!0),a+=" (limits)")}return a}}]),c}(q.u);return n.\u0275fac=function(i){return new(i||n)(e.Y36(M.F),e.Y36(O.E),e.Y36(f.uw),e.Y36(D.$),e.Y36(N.Xj))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-relationships"]],features:[e.qOj],decls:21,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","relatedRecord"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["class","text-center","mat-cell","",4,"matCellDef"],["matColumnDef","type"],["mat-cell","",4,"matCellDef"],["matColumnDef","details"],["mat-header-cell","",4,"matHeaderCellDef"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell","","mat-sort-header",""],["mat-cell","",1,"text-center"],[1,"thumb-col"],["appSubstanceImage","",1,"structure-image",3,"entityId"],["target","_blank",1,"substance-name",2,"height","18px",3,"routerLink"],["svgIcon","open_in_new",1,"icon"],["mat-cell",""],["mat-header-cell",""],[1,"mat-raised-button","mat-primary",3,"disabled","click"],["detailTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[1,"details-table","mat-table"],[1,"mat-header-cell"],[1,"mat-cell"],["class","thumb-col",4,"ngIf"],[4,"ngIf"],["class","detail",4,"ngIf"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],[1,"detail"],[1,"subhead"],[1,"subval"],["refTemplate",""],[3,"substance","references"],["mat-header-row",""],["mat-row",""]],template:function(i,c){1&i&&(e.TgZ(0,"div",0),e._UZ(1,"span",1),e.TgZ(2,"mat-form-field",2),e._UZ(3,"input",3),e.qZA(),e.qZA(),e.TgZ(4,"div",4),e.TgZ(5,"table",5),e.NdJ("matSortChange",function(t){return c.sortData(t)}),e.ynx(6,6),e.YNc(7,Q,2,0,"th",7),e.YNc(8,Y,9,6,"td",8),e.BQk(),e.ynx(9,9),e.YNc(10,I,2,0,"th",7),e.YNc(11,P,2,1,"td",10),e.BQk(),e.ynx(12,11),e.YNc(13,j,2,0,"th",12),e.YNc(14,K,5,1,"td",10),e.BQk(),e.ynx(15,13),e.YNc(16,W,2,0,"th",12),e.YNc(17,G,5,2,"td",10),e.BQk(),e.YNc(18,ee,1,0,"tr",14),e.YNc(19,te,1,0,"tr",15),e.qZA(),e.qZA(),e.TgZ(20,"mat-paginator",16),e.NdJ("page",function(t){return c.pageChange(t,c.analyticsEventCategory)}),e.qZA()),2&i&&(e.xp6(2),e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",c.searchControl),e.xp6(2),e.Q6J("dataSource",c.paged),e.xp6(13),e.Q6J("matHeaderRowDef",c.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",c.displayedColumns),e.xp6(1),e.Q6J("length",c.filtered&&c.filtered.length||0)("pageSize",5)("pageSizeOptions",e.DdM(8,ne)))},directives:[T.KE,S.Nt,m.Fj,m.JJ,m.oH,p.BZ,h.YE,p.w1,p.fO,p.ge,h.nU,p.Dz,p.ev,J.m,x.yS,y.Hw,f.uh,f.xY,b.O5,f.H8,f.ZT,L.C,p.as,p.XQ,p.nj,p.Gk,_.NW],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.structure-image[_ngcontent-%COMP%]{width:150px;height:auto}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.thumb-col[_ngcontent-%COMP%]{max-width:400px}.subhead[_ngcontent-%COMP%]{display:inline-block;width:130px}.subval[_ngcontent-%COMP%]{display:inline}.details-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%], td[_ngcontent-%COMP%]{padding:10px}"]}),n}(),ae=s(64061),oe=s(38277),se=s(33865),le=s(40089),ce=s(24054),re=function(){var n=(0,Z.Z)(function o(){(0,C.Z)(this,o)});return n.\u0275fac=function(i){return new(i||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[b.ez,ae.o.forChild(ie),p.p0,oe.V,y.Ps,f.Is,_.TU,m.u5,T.lN,m.UX,S.c,se.HT,le.AV,x.Bz,h.JX,ce.f]]}),n}()}}]); -//# sourceMappingURL=2686.85f7258c4c9f9456.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2686],{12686:function(ue,v,s){s.r(v),s.d(v,{SubstanceRelationshipsModule:function(){return re}});var Z=s(1884),C=s(39117),b=s(36362),R=s(46751),U=s(56101),M=s(52149),O=s(92507),q=s(54025),D=s(24874),w=s(50253),e=s(86613),f=s(95758),N=s(54244),T=s(44770),S=s(43365),m=s(90587),p=s(97217),h=s(64316),J=s(9292),x=s(98002),y=s(65590),L=s(73430),_=s(26439);function Q(n,o){1&n&&(e.TgZ(0,"th",17),e._uU(1," Related Record"),e.qZA())}var A=function(o){return["/substances",o]};function Y(n,o){if(1&n&&(e.TgZ(0,"td",18),e.TgZ(1,"div",19),e.TgZ(2,"div"),e._uU(3),e.qZA(),e._UZ(4,"img",20),e.TgZ(5,"div"),e.TgZ(6,"a",21),e._uU(7),e._UZ(8,"mat-icon",22),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&n){var i=o.$implicit;e.xp6(3),e.Oqu(i.relatedSubstance.linkingID),e.xp6(1),e.Q6J("entityId",i.relatedSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(4,A,i.relatedSubstance.refuuid)),e.xp6(1),e.hij(" ",i.relatedSubstance.name," ")}}function I(n,o){1&n&&(e.TgZ(0,"th",17),e._uU(1," Type "),e.qZA())}function P(n,o){if(1&n&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&n){var i=o.$implicit;e.xp6(1),e.hij(" ",i.type," ")}}function j(n,o){1&n&&(e.TgZ(0,"th",24),e._uU(1," Details "),e.qZA())}function E(n,o){if(1&n&&(e.TgZ(0,"div",19),e.TgZ(1,"div"),e._uU(2),e.qZA(),e._UZ(3,"img",20),e.TgZ(4,"div"),e.TgZ(5,"a",21),e._uU(6),e._UZ(7,"mat-icon",22),e.qZA(),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(2),e.Oqu(i.mediatorSubstance.linkingID),e.xp6(1),e.Q6J("entityId",i.mediatorSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(4,A,i.mediatorSubstance.refuuid)),e.xp6(1),e.hij(" ",i.mediatorSubstance.name," ")}}function $(n,o){1&n&&(e.TgZ(0,"div"),e.TgZ(1,"i"),e._uU(2,"none"),e.qZA(),e.qZA())}function H(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Interaction Type: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(4),e.hij(" ",i.interactionType," ")}}function V(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Comments: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(4),e.hij(" ",i.comments," ")}}function z(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Qualification: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit;e.xp6(4),e.hij(" ",i.qualification," ")}}function B(n,o){if(1&n&&(e.TgZ(0,"i"),e._uU(1),e.qZA()),2&n){var i=e.oxw(3).$implicit;e.xp6(1),e.Oqu(i.amount.nonNumericValue)}}function F(n,o){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2," Amount: "),e.qZA(),e.TgZ(3,"div",39),e._uU(4),e.YNc(5,B,2,1,"i",33),e.qZA(),e.qZA()),2&n){var i=e.oxw(2).$implicit,c=e.oxw();e.xp6(4),e.hij(" ",c.displayAmount(i.amount)," "),e.xp6(1),e.Q6J("ngIf",i.amount.nonNumericValue)}}function X(n,o){if(1&n&&(e.TgZ(0,"h2",27),e._uU(1,"Details"),e.qZA(),e.TgZ(2,"div",28),e.TgZ(3,"table",29),e.TgZ(4,"tr"),e.TgZ(5,"th",30),e._uU(6," Mediator Substance "),e.qZA(),e.TgZ(7,"th",30),e._uU(8," Details "),e.qZA(),e.qZA(),e.TgZ(9,"tr"),e.TgZ(10,"td",31),e.YNc(11,E,8,6,"div",32),e.YNc(12,$,3,0,"div",33),e.qZA(),e.TgZ(13,"td",31),e.YNc(14,H,5,1,"div",34),e.YNc(15,V,5,1,"div",34),e.YNc(16,z,5,1,"div",34),e.YNc(17,F,6,2,"div",34),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",35),e._UZ(19,"span",1),e.TgZ(20,"button",36),e._uU(21,"Close"),e.qZA(),e.qZA()),2&n){var i=e.oxw().$implicit;e.xp6(11),e.Q6J("ngIf",i.mediatorSubstance),e.xp6(1),e.Q6J("ngIf",!i.mediatorSubstance),e.xp6(2),e.Q6J("ngIf",i.interactionType),e.xp6(1),e.Q6J("ngIf",i.comments),e.xp6(1),e.Q6J("ngIf",i.qualification),e.xp6(1),e.Q6J("ngIf",i.amount)}}function K(n,o){if(1&n){var i=e.EpF();e.TgZ(0,"td",23),e.TgZ(1,"button",25),e.NdJ("click",function(){e.CHM(i);var a=e.MAs(4);return e.oxw().openModal(a)}),e._uU(2," View"),e.qZA(),e.YNc(3,X,22,6,"ng-template",null,26,e.W1O),e.qZA()}if(2&n){var c=o.$implicit,d=e.oxw();e.xp6(1),e.Q6J("disabled",!d.hasDetails(c))}}function W(n,o){1&n&&(e.TgZ(0,"th",24),e._uU(1," References "),e.qZA())}function k(n,o){if(1&n&&(e.TgZ(0,"h2",27),e._uU(1,"References"),e.qZA(),e.TgZ(2,"div",28),e._UZ(3,"app-references-manager",41),e.qZA(),e.TgZ(4,"div",35),e._UZ(5,"span",1),e.TgZ(6,"button",36),e._uU(7,"Close"),e.qZA(),e.qZA()),2&n){var i=e.oxw().$implicit,c=e.oxw();e.xp6(3),e.Q6J("substance",c.substance)("references",i.references)}}function G(n,o){if(1&n){var i=e.EpF();e.TgZ(0,"td",23),e.TgZ(1,"button",25),e.NdJ("click",function(){e.CHM(i);var t=e.MAs(4);return e.oxw().openModal(t)}),e._uU(2),e.qZA(),e.YNc(3,k,8,2,"ng-template",null,40,e.W1O),e.qZA()}if(2&n){var c=o.$implicit;e.xp6(1),e.Q6J("disabled",c.references.length<=0),e.xp6(1),e.hij("View ",c.references.length>0?c.references.length:""," references")}}function ee(n,o){1&n&&e._UZ(0,"tr",42)}function te(n,o){1&n&&e._UZ(0,"tr",43)}var ne=function(){return[5,10,25,100]},ie=function(){var n=function(o){(0,R.Z)(c,o);var i=(0,U.Z)(c);function c(d,t,a,r,u){var l;return(0,C.Z)(this,c),(l=i.call(this,r)).utilService=d,l.configService=t,l.dialog=a,l.gaService=r,l.overlayContainerService=u,l.relationships=[],l.displayedColumns=["relatedRecord","type","details","references"],l.substanceUpdated=new w.x,l}return(0,Z.Z)(c,[{key:"ngOnInit",value:function(){var t=this;this.substanceUpdated.subscribe(function(a){if(t.relationships=[],t.substance=a,"RELATIONSHIPS"===t.type&&t.configService.configData&&t.configService.configData.substanceDetailsCards&&t.configService.configData.substanceDetailsCards.length){var r=t.configService.configData.substanceDetailsCards.find(function(l){return l.type===t.type});if(null!=r&&r.filters&&r.filters.length){var u=r.filters.find(function(l){return"substanceRelationships"===l.filterName})||{value:[]};t.excludedRelationships=u.value}}null!=t.substance&&null!=t.type&&(t.filterRelationhships(),t.countUpdate.emit(t.relationships.length),t.filtered=t.relationships,t.pageChange(),t.searchControl.valueChanges.subscribe(function(l){t.filterList(l,t.relationships,t.analyticsEventCategory)},function(l){console.log(l)}))}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"sortData",value:function(t){var a=this,r=this.relationships.slice();if(!t.active||""===t.direction)return this.filtered=r,void this.pageChange();this.filtered=r.sort(function(u,l){var g="asc"===t.direction;switch(t.active){case"relatedRecord":return a.utilService.compare(u.relatedSubstance.name?u.relatedSubstance.name.toUpperCase():"",l.relatedSubstance.name?l.relatedSubstance.name.toUpperCase():"",g);case"type":return a.utilService.compare(u.type?u.type:"",l.type?l.type:"",g);default:return 0}}),this.pageChange(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"filterRelationhships",value:function(){var t=this;this.substance.relationships&&this.substance.relationships.length>0&&this.substance.relationships.forEach(function(a){var r=a.type,u=r&&r.trim()||"";if(null!=t.excludedRelationships&&t.excludedRelationships instanceof Array){var l=!1;t.excludedRelationships.forEach(function(g){u.toLowerCase().indexOf(g.toLowerCase())>-1&&(l=!0)}),l||t.relationships.push(a)}else u.toLowerCase().indexOf(t.type.toLowerCase())>-1&&t.relationships.push(a)})}},{key:"hasDetails",value:function(t){return!!(t.mediatorSubstance&&t.mediatorSubstance.name||t.amount||t.qualification||t.interactionType||t.comments)}},{key:"openModal",value:function(t){var a=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var r=this.dialog.open(t,{});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(u){a.overlayContainer.style.zIndex=null})}},{key:"formatValue",value:function(t){return t?"object"==typeof t?t.display?t.display:t.value?t.value:null:t:null}},{key:"displayAmount",value:function(t){var a="";if(t&&"object"==typeof t&&t){var r=!1,u=this.formatValue(t.units);u||(u="");var l=this.formatValue(t.type);l&&(a+=l+"\n"),(t.average||t.high||t.low)&&(t.average&&(a+=t.average,t.units&&(a+=" "+u,r=!0)),(t.high||t.low)&&(a+=" [",t.high&&!t.low?a+="<"+t.high:!t.high&&t.low?a+=">"+t.low:t.high&&t.low&&(a+=t.low+" to "+t.high),a+="] ",r||t.units&&(a+=" "+u,r=!0)),a+=" (average) "),(t.highLimit||t.lowLimit)&&(a+="\n["),t.highLimit&&!t.lowLimit?a+="<"+t.highLimit:!t.highLimit&&t.lowLimit?a+=">"+t.lowLimit:t.highLimit&&t.lowLimit&&(a+=t.lowLimit+" to "+t.highLimit),(t.highLimit||t.lowLimit)&&(a+="] ",r||t.units&&(a+=" "+u,r=!0),a+=" (limits)")}return a}}]),c}(q.u);return n.\u0275fac=function(i){return new(i||n)(e.Y36(M.F),e.Y36(O.E),e.Y36(f.uw),e.Y36(D.$),e.Y36(N.Xj))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-relationships"]],features:[e.qOj],decls:21,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","relatedRecord"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["class","text-center","mat-cell","",4,"matCellDef"],["matColumnDef","type"],["mat-cell","",4,"matCellDef"],["matColumnDef","details"],["mat-header-cell","",4,"matHeaderCellDef"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell","","mat-sort-header",""],["mat-cell","",1,"text-center"],[1,"thumb-col"],["appSubstanceImage","",1,"structure-image",3,"entityId"],["target","_blank",1,"substance-name",2,"height","18px",3,"routerLink"],["svgIcon","open_in_new",1,"icon"],["mat-cell",""],["mat-header-cell",""],[1,"mat-raised-button","mat-primary",3,"disabled","click"],["detailTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[1,"details-table","mat-table"],[1,"mat-header-cell"],[1,"mat-cell"],["class","thumb-col",4,"ngIf"],[4,"ngIf"],["class","detail",4,"ngIf"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],[1,"detail"],[1,"subhead"],[1,"subval"],["refTemplate",""],[3,"substance","references"],["mat-header-row",""],["mat-row",""]],template:function(i,c){1&i&&(e.TgZ(0,"div",0),e._UZ(1,"span",1),e.TgZ(2,"mat-form-field",2),e._UZ(3,"input",3),e.qZA(),e.qZA(),e.TgZ(4,"div",4),e.TgZ(5,"table",5),e.NdJ("matSortChange",function(t){return c.sortData(t)}),e.ynx(6,6),e.YNc(7,Q,2,0,"th",7),e.YNc(8,Y,9,6,"td",8),e.BQk(),e.ynx(9,9),e.YNc(10,I,2,0,"th",7),e.YNc(11,P,2,1,"td",10),e.BQk(),e.ynx(12,11),e.YNc(13,j,2,0,"th",12),e.YNc(14,K,5,1,"td",10),e.BQk(),e.ynx(15,13),e.YNc(16,W,2,0,"th",12),e.YNc(17,G,5,2,"td",10),e.BQk(),e.YNc(18,ee,1,0,"tr",14),e.YNc(19,te,1,0,"tr",15),e.qZA(),e.qZA(),e.TgZ(20,"mat-paginator",16),e.NdJ("page",function(t){return c.pageChange(t,c.analyticsEventCategory)}),e.qZA()),2&i&&(e.xp6(2),e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",c.searchControl),e.xp6(2),e.Q6J("dataSource",c.paged),e.xp6(13),e.Q6J("matHeaderRowDef",c.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",c.displayedColumns),e.xp6(1),e.Q6J("length",c.filtered&&c.filtered.length||0)("pageSize",5)("pageSizeOptions",e.DdM(8,ne)))},directives:[T.KE,S.Nt,m.Fj,m.JJ,m.oH,p.BZ,h.YE,p.w1,p.fO,p.ge,h.nU,p.Dz,p.ev,J.m,x.yS,y.Hw,f.uh,f.xY,b.O5,f.H8,f.ZT,L.C,p.as,p.XQ,p.nj,p.Gk,_.NW],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.structure-image[_ngcontent-%COMP%]{width:150px;height:auto}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.thumb-col[_ngcontent-%COMP%]{max-width:400px}.subhead[_ngcontent-%COMP%]{display:inline-block;width:130px}.subval[_ngcontent-%COMP%]{display:inline}.details-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%], td[_ngcontent-%COMP%]{padding:10px}"]}),n}(),ae=s(64061),oe=s(38277),se=s(33865),le=s(40089),ce=s(24054),re=function(){var n=(0,Z.Z)(function o(){(0,C.Z)(this,o)});return n.\u0275fac=function(i){return new(i||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[b.ez,ae.o.forChild(ie),p.p0,oe.V,y.Ps,f.Is,_.TU,m.u5,T.lN,m.UX,S.c,se.HT,le.AV,x.Bz,h.JX,ce.f]]}),n}()}}]); +//# sourceMappingURL=2686.0f59d85217c0fefb.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2686.85f7258c4c9f9456.js.map b/frontend/src/main/resources/static/2686.0f59d85217c0fefb.js.map similarity index 99% rename from frontend/src/main/resources/static/2686.85f7258c4c9f9456.js.map rename to frontend/src/main/resources/static/2686.0f59d85217c0fefb.js.map index 1d57f34..5ffb10c 100644 --- a/frontend/src/main/resources/static/2686.85f7258c4c9f9456.js.map +++ b/frontend/src/main/resources/static/2686.0f59d85217c0fefb.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r29","ctx_r35","SubstanceRelationshipsComponent","utilService","configService","dialog","gaService","overlayContainerService","l","Subject","this","substanceUpdated","subscribe","t","relationships","substance","type","configData","substanceDetailsCards","length","relationshipsCard","find","card","filters","filter","_filter","filterName","value","excludedRelationships","filterRelationhships","countUpdate","emit","filtered","pageChange","searchControl","valueChanges","filterList","analyticsEventCategory","console","log","error","overlayContainer","getContainerElement","sort","data","slice","active","direction","a","b","isAsc","compare","relatedSubstance","name","toUpperCase","forEach","typeParts","relationship","property","trim","Array","isInExcludedValues","toLowerCase","indexOf","push","current","mediatorSubstance","amount","qualification","interactionType","comments","templateRef","sendEvent","dialogRef","open","style","zIndex","afterClosed","v","display","amt","ret","addedunits","unittext","formatValue","units","atype","average","high","low","highLimit","lowLimit","c","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceRelationshipsModule","Z","CommonModule","DynamicComponentLoaderModule","MatTableModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatPaginatorModule","FormsModule","MatFormFieldModule","ReactiveFormsModule","MatInputModule","CdkTableModule","MatTooltipModule","RouterModule","MatSortModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-relationships/substance-relationships.component.html","./src/app/core/substance-details/substance-relationships/substance-relationships.component.ts","./src/app/core/substance-details/substance-relationships/substance-relationships.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Related Record\r\n
\r\n
{{relationship.relatedSubstance.linkingID}}
\r\n \r\n \r\n
\r\n\r\n
Type {{relationship.type}} Details \r\n \r\n \r\n

Details

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Mediator Substance\r\n \r\n Details\r\n
\r\n
\r\n
{{relationship.mediatorSubstance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n none\r\n
\r\n
\r\n
\r\n
\r\n Interaction Type:\r\n
\r\n
\r\n {{relationship.interactionType}}\r\n
\r\n
\r\n
\r\n
\r\n Comments:\r\n
\r\n
\r\n {{relationship.comments}}\r\n
\r\n
\r\n
\r\n
\r\n Qualification:\r\n
\r\n
\r\n {{relationship.qualification}}\r\n
\r\n
\r\n
\r\n Amount:\r\n
\r\n
\r\n {{displayAmount(relationship.amount)}} {{relationship.amount.nonNumericValue}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceRelationship} from '../../substance/substance.model';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport { ConfigService } from '../../config/config.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport {Sort} from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'app-substance-relationships',\r\n templateUrl: './substance-relationships.component.html',\r\n styleUrls: ['./substance-relationships.component.scss']\r\n})\r\nexport class SubstanceRelationshipsComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n type: string;\r\n relationships: Array = [];\r\n displayedColumns = ['relatedRecord', 'type', 'details', 'references'];\r\n private excludedRelationships: Array;\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n\r\n constructor(\r\n private utilService: UtilsService,\r\n private configService: ConfigService,\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private overlayContainerService: OverlayContainer\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.relationships = [];\r\n this.substance = substance;\r\n if (this.type === 'RELATIONSHIPS'\r\n && this.configService.configData\r\n && this.configService.configData.substanceDetailsCards\r\n && this.configService.configData.substanceDetailsCards.length\r\n ) {\r\n const relationshipsCard = this.configService.configData.substanceDetailsCards.find(card => card.type === this.type);\r\n if (relationshipsCard != null && relationshipsCard.filters && relationshipsCard.filters.length) {\r\n const filter = relationshipsCard.filters.find(_filter => _filter.filterName === 'substanceRelationships') || {value: []};\r\n this.excludedRelationships = filter.value;\r\n }\r\n }\r\n\r\n if (this.substance != null && this.type != null) {\r\n\r\n this.filterRelationhships();\r\n this.countUpdate.emit(this.relationships.length);\r\n this.filtered = this.relationships;\r\n this.pageChange();\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.relationships, this.analyticsEventCategory);\r\n }, error => {\r\n console.log(error);\r\n });\r\n }\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n sortData(sort: Sort) {\r\n const data = this.relationships.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n switch (sort.active) {\r\n case 'relatedRecord': return this.utilService.compare(a.relatedSubstance.name ? a.relatedSubstance.name.toUpperCase() : '',\r\n b.relatedSubstance.name ? b.relatedSubstance.name.toUpperCase() : '', isAsc);\r\n case 'type': return this.utilService.compare(a.type ? a.type : '', b.type ? b.type : '', isAsc);\r\n default: return 0;\r\n }\r\n });\r\n this.pageChange();\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n private filterRelationhships(): void {\r\n if (this.substance.relationships && this.substance.relationships.length > 0) {\r\n this.substance.relationships.forEach(relationship => {\r\n const typeParts = relationship.type;\r\n const property = typeParts && typeParts.trim() || '';\r\n if (this.excludedRelationships != null && this.excludedRelationships instanceof Array) {\r\n let isInExcludedValues = false;\r\n this.excludedRelationships.forEach(value => {\r\n if (property.toLowerCase().indexOf(value.toLowerCase()) > -1) {\r\n isInExcludedValues = true;\r\n }\r\n });\r\n if (!isInExcludedValues) {\r\n this.relationships.push(relationship);\r\n }\r\n } else if (property.toLowerCase().indexOf(this.type.toLowerCase()) > -1) {\r\n this.relationships.push(relationship);\r\n }\r\n });\r\n }\r\n }\r\n\r\n private hasDetails(current): boolean {\r\n if ((current.mediatorSubstance && current.mediatorSubstance.name)\r\n || (current.amount)\r\n || (current.qualification)\r\n || (current.interactionType)\r\n || (current.comments)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {});\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n formatValue(v) {\r\n if (v) {\r\n if (typeof v === 'object') {\r\n if (v.display) {\r\n return v.display;\r\n } else if (v.value) {\r\n return v.value;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n return v;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n displayAmount(amt): string {\r\n let ret = '';\r\n if (amt) {\r\n if (typeof amt === 'object') {\r\n if (amt) {\r\n let addedunits = false;\r\n let unittext = this.formatValue(amt.units);\r\n if (!unittext) {\r\n unittext = '';\r\n }\r\n const atype = this.formatValue(amt.type);\r\n if (atype) {\r\n ret += atype + '\\n';\r\n }\r\n if (amt.average || amt.high || amt.low) {\r\n if (amt.average) {\r\n ret += amt.average;\r\n if (amt.units) {\r\n ret += ' ' + unittext;\r\n addedunits = true;\r\n }\r\n }\r\n if (amt.high || amt.low) {\r\n ret += ' [';\r\n if (amt.high && !amt.low) {\r\n ret += '<' + amt.high;\r\n } else if (!amt.high && amt.low) {\r\n ret += '>' + amt.low;\r\n } else if (amt.high && amt.low) {\r\n ret += amt.low + ' to ' + amt.high;\r\n }\r\n ret += '] ';\r\n if (!addedunits) {\r\n if (amt.units) {\r\n ret += ' ' + unittext;\r\n addedunits = true;\r\n }\r\n }\r\n }\r\n ret += ' (average) ';\r\n }\r\n if (amt.highLimit || amt.lowLimit) {\r\n ret += '\\n[';\r\n }\r\n if (amt.highLimit && !amt.lowLimit) {\r\n ret += '<' + amt.highLimit;\r\n } else if (!amt.highLimit && amt.lowLimit) {\r\n ret += '>' + amt.lowLimit;\r\n } else if (amt.highLimit && amt.lowLimit) {\r\n ret += amt.lowLimit + ' to ' + amt.highLimit;\r\n }\r\n if (amt.highLimit || amt.lowLimit) {\r\n ret += '] ';\r\n if (!addedunits) {\r\n if (amt.units) {\r\n ret += ' ' + unittext;\r\n addedunits = true;\r\n }\r\n }\r\n ret += ' (limits)';\r\n }\r\n }\r\n }\r\n }\r\n return ret;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceRelationshipsComponent } from './substance-relationships.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatFormFieldModule} from '@angular/material/form-field';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceRelationshipsComponent),\r\n MatTableModule,\r\n ReferencesManagerModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatPaginatorModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n CdkTableModule,\r\n MatTooltipModule,\r\n RouterModule,\r\n MatSortModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceRelationshipsComponent]\r\n})\r\nexport class SubstanceRelationshipsModule { }\r\n"],"sourceRoot":"webpack:///","file":"2686.85f7258c4c9f9456.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r29","ctx_r35","SubstanceRelationshipsComponent","utilService","configService","dialog","gaService","overlayContainerService","l","Subject","this","substanceUpdated","subscribe","t","relationships","substance","type","configData","substanceDetailsCards","length","relationshipsCard","find","card","filters","filter","_filter","filterName","value","excludedRelationships","filterRelationhships","countUpdate","emit","filtered","pageChange","searchControl","valueChanges","filterList","analyticsEventCategory","console","log","error","overlayContainer","getContainerElement","sort","data","slice","active","direction","a","b","isAsc","compare","relatedSubstance","name","toUpperCase","forEach","typeParts","relationship","property","trim","Array","isInExcludedValues","toLowerCase","indexOf","push","current","mediatorSubstance","amount","qualification","interactionType","comments","templateRef","sendEvent","dialogRef","open","style","zIndex","afterClosed","v","display","amt","ret","addedunits","unittext","formatValue","units","atype","average","high","low","highLimit","lowLimit","c","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceRelationshipsModule","Z","CommonModule","DynamicComponentLoaderModule","MatTableModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatPaginatorModule","FormsModule","MatFormFieldModule","ReactiveFormsModule","MatInputModule","CdkTableModule","MatTooltipModule","RouterModule","MatSortModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-relationships/substance-relationships.component.html","./src/app/core/substance-details/substance-relationships/substance-relationships.component.ts","./src/app/core/substance-details/substance-relationships/substance-relationships.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Related Record\r\n
\r\n
{{relationship.relatedSubstance.linkingID}}
\r\n \r\n \r\n
\r\n\r\n
Type {{relationship.type}} Details \r\n \r\n \r\n

Details

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Mediator Substance\r\n \r\n Details\r\n
\r\n
\r\n
{{relationship.mediatorSubstance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n none\r\n
\r\n
\r\n
\r\n
\r\n Interaction Type:\r\n
\r\n
\r\n {{relationship.interactionType}}\r\n
\r\n
\r\n
\r\n
\r\n Comments:\r\n
\r\n
\r\n {{relationship.comments}}\r\n
\r\n
\r\n
\r\n
\r\n Qualification:\r\n
\r\n
\r\n {{relationship.qualification}}\r\n
\r\n
\r\n
\r\n Amount:\r\n
\r\n
\r\n {{displayAmount(relationship.amount)}} {{relationship.amount.nonNumericValue}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceRelationship} from '../../substance/substance.model';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport { ConfigService } from '../../config/config.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport {Sort} from '@angular/material/sort';\r\n\r\n@Component({\r\n selector: 'app-substance-relationships',\r\n templateUrl: './substance-relationships.component.html',\r\n styleUrls: ['./substance-relationships.component.scss']\r\n})\r\nexport class SubstanceRelationshipsComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n type: string;\r\n relationships: Array = [];\r\n displayedColumns = ['relatedRecord', 'type', 'details', 'references'];\r\n private excludedRelationships: Array;\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n\r\n constructor(\r\n private utilService: UtilsService,\r\n private configService: ConfigService,\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private overlayContainerService: OverlayContainer\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.relationships = [];\r\n this.substance = substance;\r\n if (this.type === 'RELATIONSHIPS'\r\n && this.configService.configData\r\n && this.configService.configData.substanceDetailsCards\r\n && this.configService.configData.substanceDetailsCards.length\r\n ) {\r\n const relationshipsCard = this.configService.configData.substanceDetailsCards.find(card => card.type === this.type);\r\n if (relationshipsCard != null && relationshipsCard.filters && relationshipsCard.filters.length) {\r\n const filter = relationshipsCard.filters.find(_filter => _filter.filterName === 'substanceRelationships') || {value: []};\r\n this.excludedRelationships = filter.value;\r\n }\r\n }\r\n\r\n if (this.substance != null && this.type != null) {\r\n\r\n this.filterRelationhships();\r\n this.countUpdate.emit(this.relationships.length);\r\n this.filtered = this.relationships;\r\n this.pageChange();\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.relationships, this.analyticsEventCategory);\r\n }, error => {\r\n console.log(error);\r\n });\r\n }\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n sortData(sort: Sort) {\r\n const data = this.relationships.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n switch (sort.active) {\r\n case 'relatedRecord': return this.utilService.compare(a.relatedSubstance.name ? a.relatedSubstance.name.toUpperCase() : '',\r\n b.relatedSubstance.name ? b.relatedSubstance.name.toUpperCase() : '', isAsc);\r\n case 'type': return this.utilService.compare(a.type ? a.type : '', b.type ? b.type : '', isAsc);\r\n default: return 0;\r\n }\r\n });\r\n this.pageChange();\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n private filterRelationhships(): void {\r\n if (this.substance.relationships && this.substance.relationships.length > 0) {\r\n this.substance.relationships.forEach(relationship => {\r\n const typeParts = relationship.type;\r\n const property = typeParts && typeParts.trim() || '';\r\n if (this.excludedRelationships != null && this.excludedRelationships instanceof Array) {\r\n let isInExcludedValues = false;\r\n this.excludedRelationships.forEach(value => {\r\n if (property.toLowerCase().indexOf(value.toLowerCase()) > -1) {\r\n isInExcludedValues = true;\r\n }\r\n });\r\n if (!isInExcludedValues) {\r\n this.relationships.push(relationship);\r\n }\r\n } else if (property.toLowerCase().indexOf(this.type.toLowerCase()) > -1) {\r\n this.relationships.push(relationship);\r\n }\r\n });\r\n }\r\n }\r\n\r\n private hasDetails(current): boolean {\r\n if ((current.mediatorSubstance && current.mediatorSubstance.name)\r\n || (current.amount)\r\n || (current.qualification)\r\n || (current.interactionType)\r\n || (current.comments)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {});\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n formatValue(v) {\r\n if (v) {\r\n if (typeof v === 'object') {\r\n if (v.display) {\r\n return v.display;\r\n } else if (v.value) {\r\n return v.value;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n return v;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n displayAmount(amt): string {\r\n let ret = '';\r\n if (amt) {\r\n if (typeof amt === 'object') {\r\n if (amt) {\r\n let addedunits = false;\r\n let unittext = this.formatValue(amt.units);\r\n if (!unittext) {\r\n unittext = '';\r\n }\r\n const atype = this.formatValue(amt.type);\r\n if (atype) {\r\n ret += atype + '\\n';\r\n }\r\n if (amt.average || amt.high || amt.low) {\r\n if (amt.average) {\r\n ret += amt.average;\r\n if (amt.units) {\r\n ret += ' ' + unittext;\r\n addedunits = true;\r\n }\r\n }\r\n if (amt.high || amt.low) {\r\n ret += ' [';\r\n if (amt.high && !amt.low) {\r\n ret += '<' + amt.high;\r\n } else if (!amt.high && amt.low) {\r\n ret += '>' + amt.low;\r\n } else if (amt.high && amt.low) {\r\n ret += amt.low + ' to ' + amt.high;\r\n }\r\n ret += '] ';\r\n if (!addedunits) {\r\n if (amt.units) {\r\n ret += ' ' + unittext;\r\n addedunits = true;\r\n }\r\n }\r\n }\r\n ret += ' (average) ';\r\n }\r\n if (amt.highLimit || amt.lowLimit) {\r\n ret += '\\n[';\r\n }\r\n if (amt.highLimit && !amt.lowLimit) {\r\n ret += '<' + amt.highLimit;\r\n } else if (!amt.highLimit && amt.lowLimit) {\r\n ret += '>' + amt.lowLimit;\r\n } else if (amt.highLimit && amt.lowLimit) {\r\n ret += amt.lowLimit + ' to ' + amt.highLimit;\r\n }\r\n if (amt.highLimit || amt.lowLimit) {\r\n ret += '] ';\r\n if (!addedunits) {\r\n if (amt.units) {\r\n ret += ' ' + unittext;\r\n addedunits = true;\r\n }\r\n }\r\n ret += ' (limits)';\r\n }\r\n }\r\n }\r\n }\r\n return ret;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceRelationshipsComponent } from './substance-relationships.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatFormFieldModule} from '@angular/material/form-field';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceRelationshipsComponent),\r\n MatTableModule,\r\n ReferencesManagerModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatPaginatorModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n CdkTableModule,\r\n MatTooltipModule,\r\n RouterModule,\r\n MatSortModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceRelationshipsComponent]\r\n})\r\nexport class SubstanceRelationshipsModule { }\r\n"],"sourceRoot":"webpack:///","file":"2686.0f59d85217c0fefb.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/275.db2bf1c2f4126e9c.js b/frontend/src/main/resources/static/275.588a33da8140f7fa.js similarity index 92% rename from frontend/src/main/resources/static/275.db2bf1c2f4126e9c.js rename to frontend/src/main/resources/static/275.588a33da8140f7fa.js index 74a3c4f..f232066 100644 --- a/frontend/src/main/resources/static/275.db2bf1c2f4126e9c.js +++ b/frontend/src/main/resources/static/275.588a33da8140f7fa.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[275],{60275:function(Yt,x,l){l.r(x),l.d(x,{SubstanceCodesModule:function(){return qt}});var b=l(48047),S=l(78069),g=l(36362),v=l(95106),N=l(24582),O=l(7318),q=l(54025),Q=l(24874),Y=l(50253),J=l(63169),p=l(90587),t=l(76442),h=l(95758),I=l(66088),Z=l(44770),F=l(43365),m=l(97217),_=l(64316),A=l(65590),w=l(98002),y=l(91434),M=l(1130),D=l(73430),U=l(26439),P=l(89633);function $(e,o){1&e&&(t.TgZ(0,"th",26),t._uU(1," Classification Tree "),t.qZA())}function H(e,o){1&e&&t._UZ(0,"mat-icon",32)}var L=function(o){return{"padding-left.px":o}},k=function(o){return{search:o}};function V(e,o){if(1&e&&(t.TgZ(0,"div",29),t.YNc(1,H,1,0,"mat-icon",30),t.TgZ(2,"a",31),t._uU(3),t.qZA(),t.qZA()),2&e){var n=o.$implicit,a=o.index;t.Q6J("ngStyle",t.VKq(4,L,10*a)),t.xp6(1),t.Q6J("ngIf",a>0),t.xp6(1),t.Q6J("queryParams",t.VKq(6,k,'root_codes_comments:"'+n+'"')),t.xp6(1),t.hij(" ",n," ")}}function B(e,o){if(1&e&&(t.TgZ(0,"td",27),t.YNc(1,V,4,8,"div",28),t.qZA()),2&e){var n=o.$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngForOf",a.getClassificationTree(n.comments))}}function j(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Code System "),t.qZA())}function E(e,o){1&e&&t._UZ(0,"mat-icon",37)}function R(e,o){if(1&e&&(t.TgZ(0,"span",35),t.YNc(1,E,1,0,"mat-icon",36),t.qZA()),2&e){var n=t.oxw().$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngIf",a.codeIsProtected(n.access))}}function z(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.ALo(2,"async"),t.ALo(3,"codeSystemDisplay"),t.YNc(4,R,2,1,"span",34),t.qZA()),2&e){var n=o.$implicit,a=t.oxw();t.xp6(1),t.hij(" ",t.lcZ(2,2,t.lcZ(3,4,n.codeSystem))," "),t.xp6(3),t.Q6J("ngIf",a.codeIsProtected(n.access))}}function W(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Code "),t.qZA())}function X(e,o){if(1&e&&(t.TgZ(0,"a",40),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.Q6J("href",n.url,t.LSH),t.xp6(1),t.Oqu(n.code)}}function K(e,o){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.xp6(1),t.hij(" ",n.code,"")}}function G(e,o){if(1&e&&(t.TgZ(0,"td",27),t.YNc(1,X,2,2,"a",38),t.YNc(2,K,2,1,"span",39),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.url),t.xp6(1),t.Q6J("ngIf",!n.url)}}function tt(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Type "),t.qZA())}function et(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.hij(" ",n.type," ")}}function nt(e,o){if(1&e&&(t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",42),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(3),t.Q6J("formControl",n.codeSystemFilter)}}function ot(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.ALo(2,"async"),t.ALo(3,"codeSystemDisplay"),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.hij(" ",t.lcZ(2,1,t.lcZ(3,3,n.codeSystem))," ")}}function it(e,o){if(1&e&&(t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",43),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(3),t.Q6J("formControl",n.codeFilter)}}function at(e,o){if(1&e&&(t.TgZ(0,"a",40),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.Q6J("href",n.url,t.LSH),t.xp6(1),t.Oqu(n.code)}}function st(e,o){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.xp6(1),t.hij(" ",n.code,"")}}function lt(e,o){if(1&e&&(t.TgZ(0,"td",27),t.YNc(1,at,2,2,"a",38),t.YNc(2,st,2,1,"span",39),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.url),t.xp6(1),t.Q6J("ngIf",!n.url)}}function ct(e,o){if(1&e&&(t.TgZ(0,"mat-option",48),t._uU(1),t.qZA()),2&e){var n=o.$implicit;t.Q6J("value",n.display),t.xp6(1),t.Oqu(n.display)}}function rt(e,o){if(1&e&&(t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"mat-form-field",44),t.TgZ(3,"mat-select",45),t.TgZ(4,"mat-select-trigger"),t._uU(5),t.qZA(),t.TgZ(6,"mat-option",46),t._uU(7,"Select Type Filter"),t.qZA(),t.YNc(8,ct,2,2,"mat-option",47),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(3),t.Q6J("formControl",n.typeFilter),t.xp6(2),t.hij(" ",n.typeFilter.value?n.typeFilter.value:""," "),t.xp6(3),t.Q6J("ngForOf",n.typeFilterOptions)}}function dt(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.hij(" ",n.type," ")}}function ut(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Comments "),t.qZA())}function mt(e,o){if(1&e&&(t.TgZ(0,"div",56),t.TgZ(1,"div",57),t._uU(2,"Comments:"),t.qZA(),t.TgZ(3,"div",58),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2).$implicit;t.xp6(4),t.Oqu(n.codeText)}}function pt(e,o){if(1&e&&(t.TgZ(0,"div",56),t.TgZ(1,"div",57),t._uU(2,"Code Text:"),t.qZA(),t.TgZ(3,"div",58),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2).$implicit;t.xp6(4),t.Oqu(n.comments)}}function ft(e,o){if(1&e&&(t.TgZ(0,"h2",51),t._uU(1,"Code Comments"),t.qZA(),t.TgZ(2,"div",52),t.YNc(3,mt,5,1,"div",53),t.YNc(4,pt,5,1,"div",53),t.qZA(),t.TgZ(5,"div",54),t._UZ(6,"span",1),t.TgZ(7,"button",55),t._uU(8,"Close"),t.qZA(),t.qZA()),2&e){var n=t.oxw().$implicit;t.xp6(3),t.Q6J("ngIf",n.codeText),t.xp6(1),t.Q6J("ngIf",n.comments)}}function Ct(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"td",27),t.TgZ(1,"button",49),t.NdJ("click",function(){t.CHM(n);var i=t.MAs(4);return t.oxw().openModal(i)}),t._uU(2,"View"),t.qZA(),t.YNc(3,ft,9,2,"ng-template",null,50,t.W1O),t.qZA()}if(2&e){var a=o.$implicit;t.xp6(1),t.Q6J("disabled",!a.comments&&!a.codeText)}}function gt(e,o){1&e&&(t.TgZ(0,"th",26),t._uU(1," References "),t.qZA())}function ht(e,o){if(1&e&&(t.TgZ(0,"h2",51),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",52),t._UZ(3,"app-references-manager",60),t.qZA(),t.TgZ(4,"div",54),t._UZ(5,"span",1),t.TgZ(6,"button",55),t._uU(7,"Close"),t.qZA(),t.qZA()),2&e){var n=t.oxw().$implicit,a=t.oxw();t.xp6(3),t.Q6J("substance",a.substance)("references",n.references)}}function vt(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"td",27),t.TgZ(1,"button",49),t.NdJ("click",function(){t.CHM(n);var i=t.MAs(4);return t.oxw().openModal(i)}),t._uU(2,"View"),t.qZA(),t.YNc(3,ht,8,2,"ng-template",null,59,t.W1O),t.qZA()}if(2&e){var a=o.$implicit;t.xp6(1),t.Q6J("disabled",a.references.length<=0)}}function Zt(e,o){1&e&&t._UZ(0,"th",26)}function _t(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"button",6),t.NdJ("click",function(){return t.CHM(n),t.oxw().resetFilters()}),t._uU(3,"Reset"),t.qZA(),t.qZA(),t.qZA()}}function yt(e,o){1&e&&t._UZ(0,"tr",61)}function Tt(e,o){if(1&e&&t._UZ(0,"tr",62),2&e){var n=t.oxw();t.Q6J("hidden",n.hideFilters)}}function xt(e,o){1&e&&t._UZ(0,"tr",63)}var bt=function(o){return{classification:o}},St=function(){return[5,10,25,100]},Ft=function(){var e=function(o){(0,N.Z)(a,o);var n=(0,O.Z)(a);function a(d,i,s,r){var c;return(0,S.Z)(this,a),(c=n.call(this,i)).dialog=d,c.gaService=i,c.overlayContainerService=s,c.utilsService=r,c.codes=[],c.substanceUpdated=new Y.x,c.hideFilters=!0,c.showHideFilterText="Show Filter",c.codeSystemFilter=new p.NI,c.typeFilter=new p.NI,c.codeFilter=new p.NI,c.typeFilterOptions=[],c}return(0,b.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(s){i.substance=s,i.codes=[],null!=i.substance&&null!=i.type&&("Codes - Classifications"===i.type?i.displayedColumns=["classificationTree","codeSystem","code","references"]:(i.displayedColumns=["codeSystem","code","type","comments","references"],i.displayedFilterColumns=["codeSystemFilter","codeFilter","typeFilter","emptyFilter","resetFilter"]),i.filterSubstanceCodes(),null!=i.codes&&i.codes.length?(i.codes.forEach(function(r){r.url&&(r.url=r.url.trim())}),i.filtered=i.codes,i.pageChange(),i.searchControl.valueChanges.subscribe(function(r){i.filterList(r,i.codes)},function(r){}),i.getTypeFilterOptions()):i.filtered=[])}),this.pageSize=10,this.overlayContainer=this.overlayContainerService.getContainerElement(),this.codeSystemFilter.valueChanges.subscribe(function(s){i.filterTable()}),this.codeFilter.valueChanges.subscribe(function(s){i.filterTable()}),this.typeFilter.valueChanges.subscribe(function(s){i.filterTable()})}},{key:"filterTable",value:function(i){var s=null===this.codeSystemFilter.value?"":this.codeSystemFilter.value,r=null===this.codeFilter.value?"":this.codeFilter.value,c=null===this.typeFilter.value?"":this.typeFilter.value;this.filtered=[];var f,u=(0,v.Z)(this.codes);try{for(u.s();!(f=u.n()).done;){var C=f.value;C.codeSystem.toLowerCase().includes(s.toLowerCase())&&C.code.toLowerCase().includes(r.toLowerCase())&&C.type.toLowerCase().includes(c.toLowerCase())&&this.filtered.push(C)}}catch(T){u.e(T)}finally{u.f()}this.pageChange()}},{key:"toggleFilter",value:function(){this.hideFilters=!this.hideFilters,this.showHideFilterText=this.hideFilters?"Show Filter":"Hide Filter"}},{key:"getTypeFilterValue",value:function(i){var r,s=(0,v.Z)(this.typeFilterOptions);try{for(s.s();!(r=s.n()).done;){var c=r.value;if(c.display===i)return c}}catch(u){s.e(u)}finally{s.f()}}},{key:"getTypeFilterOptions",value:function(){var r,i=this,s=(0,v.Z)(this.codes);try{var c=function(){var C=r.value.type,T={value:C,display:C};i.typeFilterOptions.filter(function(Qt){return Qt.value===C}).length>0||i.typeFilterOptions.push(T)};for(s.s();!(r=s.n()).done;)c()}catch(u){s.e(u)}finally{s.f()}}},{key:"sortData",value:function(i){var s=this,r=this.codes.slice();if(!i.active||""===i.direction)return this.filtered=r,void this.pageChange();this.filtered=r.sort(function(c,u){var f="asc"===i.direction;return s.utilsService.compare(c[i.active]?c[i.active].toString().toUpperCase():null,u[i.active]?u[i.active].toString().toUpperCase():null,f)}),this.pageChange()}},{key:"ngAfterViewInit",value:function(){}},{key:"filterSubstanceCodes",value:function(){var i=this;this.substance.codes&&this.substance.codes.length>0&&(this.substance.codes.forEach(function(s){(s._isClassification&&"Codes - Classifications"===i.type||!s._isClassification&&"Codes - Identifiers"===i.type)&&i.codes.push(s)}),this.countUpdate.emit(this.codes.length))}},{key:"codeIsProtected",value:function(i){var c,s=!1,r=(0,v.Z)(i);try{for(r.s();!(c=r.n()).done;)"protected"===c.value.toLowerCase()&&(s=!0)}catch(f){r.e(f)}finally{r.f()}return s}},{key:"getClassificationTree",value:function(i){return i.split("|")}},{key:"resetFilters",value:function(){this.pageChange(),this.searchControl.setValue(""),this.codeFilter.setValue(""),this.codeSystemFilter.setValue(""),this.typeFilter.setValue("")}},{key:"openModal",value:function(i){var s=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var r=this.dialog.open(i,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(c){s.overlayContainer.style.zIndex=null})}}]),a}(q.u);return e.\u0275fac=function(n){return new(n||e)(t.Y36(h.uw),t.Y36(Q.$),t.Y36(I.Xj),t.Y36(J.FW))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-codes"]],features:[t.qOj],decls:44,vars:14,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],[1,"show-filter-span"],["mat-flat-button","","color","warn",1,"mat-button","mat-button-primary",3,"click"],["mat-table","","matSort","",3,"ngClass","dataSource","matSortChange"],["matColumnDef","classificationTree"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","codeSystem"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","code"],["matColumnDef","type"],["matColumnDef","codeSystemFilter"],["matColumnDef","codeFilter"],["matColumnDef","typeFilter"],["matColumnDef","comments"],["matColumnDef","references"],["matColumnDef","emptyFilter"],["matColumnDef","resetFilter"],["mat-header-row","",4,"matHeaderRowDef"],["mat-header-row","",3,"hidden",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[3,"ngStyle",4,"ngFor","ngForOf"],[3,"ngStyle"],["svgIcon","subdirectory_arrow_right",4,"ngIf"],["routerLink","/browse-substance",3,"queryParams"],["svgIcon","subdirectory_arrow_right"],["mat-header-cell","","mat-sort-header",""],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["class","a-link","target","_blank",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank",1,"a-link",3,"href"],[1,"tableFilter"],["matInput","","placeholder","Code System Filter",1,"form-field",3,"formControl"],["matInput","","placeholder","Code Filter",1,"form-field",3,"formControl"],["appearance","fill"],[3,"formControl"],["selected","",3,"value"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"mat-raised-button","mat-primary",3,"disabled","click"],["commentTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],["class","form-row",4,"ngIf"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],[1,"form-row"],[1,"label"],[1,"content"],["refTemplate",""],[3,"substance","references"],["mat-header-row",""],["mat-header-row","",3,"hidden"],["mat-row",""]],template:function(n,a){1&n&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"span",5),t.TgZ(6,"mat-label",6),t.NdJ("click",function(){return a.toggleFilter()}),t._uU(7),t.qZA(),t.qZA(),t.TgZ(8,"table",7),t.NdJ("matSortChange",function(i){return a.sortData(i)}),t.ynx(9,8),t.YNc(10,$,2,0,"th",9),t.YNc(11,B,2,1,"td",10),t.BQk(),t.ynx(12,11),t.YNc(13,j,2,0,"th",12),t.YNc(14,z,5,6,"td",10),t.BQk(),t.ynx(15,13),t.YNc(16,W,2,0,"th",12),t.YNc(17,G,3,2,"td",10),t.BQk(),t.ynx(18,14),t.YNc(19,tt,2,0,"th",12),t.YNc(20,et,2,1,"td",10),t.BQk(),t.ynx(21,15),t.YNc(22,nt,4,1,"th",9),t.YNc(23,ot,4,5,"td",10),t.BQk(),t.ynx(24,16),t.YNc(25,it,4,1,"th",9),t.YNc(26,lt,3,2,"td",10),t.BQk(),t.ynx(27,17),t.YNc(28,rt,9,3,"th",9),t.YNc(29,dt,2,1,"td",10),t.BQk(),t.ynx(30,18),t.YNc(31,ut,2,0,"th",12),t.YNc(32,Ct,5,1,"td",10),t.BQk(),t.ynx(33,19),t.YNc(34,gt,2,0,"th",9),t.YNc(35,vt,5,1,"td",10),t.BQk(),t.ynx(36,20),t.YNc(37,Zt,1,0,"th",9),t.BQk(),t.ynx(38,21),t.YNc(39,_t,4,0,"th",9),t.BQk(),t.YNc(40,yt,1,0,"tr",22),t.YNc(41,Tt,1,1,"tr",23),t.YNc(42,xt,1,0,"tr",24),t.qZA(),t.qZA(),t.TgZ(43,"mat-paginator",25),t.NdJ("page",function(i){return a.pageChange(i,a.analyticsEventCategory)}),t.qZA()),2&n&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",a.searchControl),t.xp6(4),t.Oqu(a.showHideFilterText),t.xp6(1),t.Q6J("ngClass",t.VKq(11,bt,"Codes - Classifications"==a.type))("dataSource",a.paged),t.xp6(32),t.Q6J("matHeaderRowDef",a.displayedColumns),t.xp6(1),t.Q6J("matHeaderRowDef",a.displayedFilterColumns),t.xp6(1),t.Q6J("matRowDefColumns",a.displayedColumns),t.xp6(1),t.Q6J("length",a.filtered&&a.filtered.length||0)("pageSize",10)("pageSizeOptions",t.DdM(13,St)))},directives:[Z.KE,F.Nt,p.Fj,p.JJ,p.oH,Z.hX,m.BZ,_.YE,g.mk,m.w1,m.fO,m.ge,m.Dz,m.ev,g.sg,g.PC,g.O5,A.Hw,w.yS,_.nU,y.gD,y.$L,M.ey,h.uh,h.xY,h.H8,h.ZT,D.C,m.as,m.XQ,m.nj,m.Gk,U.NW],pipes:[g.Ov,P.q],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.a-link[_ngcontent-%COMP%]{text-decoration:none;color:#1565c0}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:25px}.form-row[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{width:10%;font-weight:600;min-width:100px}.form-row[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{width:90%}.show-filter-span[_ngcontent-%COMP%]{display:block;float:right}"]}),e}(),At=l(64061),wt=l(33865),Ut=l(34972),Nt=l(38277),Ot=l(2711),qt=function(){var e=(0,b.Z)(function o(){(0,S.Z)(this,o)});return e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[g.ez,At.o.forChild(Ft),m.p0,wt.HT,U.TU,F.c,Z.lN,y.LD,p.UX,p.u5,Ut.dp,w.Bz,A.Ps,Nt.V,h.Is,_.JX,Ot.v]]}),e}()}}]); -//# sourceMappingURL=275.db2bf1c2f4126e9c.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[275],{60275:function(Yt,x,l){l.r(x),l.d(x,{SubstanceCodesModule:function(){return qt}});var b=l(1884),S=l(39117),g=l(36362),v=l(44014),N=l(46751),O=l(56101),q=l(54025),Q=l(24874),Y=l(50253),J=l(63169),p=l(90587),t=l(86613),h=l(95758),I=l(54244),Z=l(44770),F=l(43365),m=l(97217),_=l(64316),A=l(65590),w=l(98002),y=l(91434),M=l(1130),D=l(73430),U=l(26439),P=l(89633);function $(e,o){1&e&&(t.TgZ(0,"th",26),t._uU(1," Classification Tree "),t.qZA())}function H(e,o){1&e&&t._UZ(0,"mat-icon",32)}var k=function(o){return{"padding-left.px":o}},L=function(o){return{search:o}};function V(e,o){if(1&e&&(t.TgZ(0,"div",29),t.YNc(1,H,1,0,"mat-icon",30),t.TgZ(2,"a",31),t._uU(3),t.qZA(),t.qZA()),2&e){var n=o.$implicit,a=o.index;t.Q6J("ngStyle",t.VKq(4,k,10*a)),t.xp6(1),t.Q6J("ngIf",a>0),t.xp6(1),t.Q6J("queryParams",t.VKq(6,L,'root_codes_comments:"'+n+'"')),t.xp6(1),t.hij(" ",n," ")}}function B(e,o){if(1&e&&(t.TgZ(0,"td",27),t.YNc(1,V,4,8,"div",28),t.qZA()),2&e){var n=o.$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngForOf",a.getClassificationTree(n.comments))}}function j(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Code System "),t.qZA())}function E(e,o){1&e&&t._UZ(0,"mat-icon",37)}function R(e,o){if(1&e&&(t.TgZ(0,"span",35),t.YNc(1,E,1,0,"mat-icon",36),t.qZA()),2&e){var n=t.oxw().$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngIf",a.codeIsProtected(n.access))}}function z(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.ALo(2,"async"),t.ALo(3,"codeSystemDisplay"),t.YNc(4,R,2,1,"span",34),t.qZA()),2&e){var n=o.$implicit,a=t.oxw();t.xp6(1),t.hij(" ",t.lcZ(2,2,t.lcZ(3,4,n.codeSystem))," "),t.xp6(3),t.Q6J("ngIf",a.codeIsProtected(n.access))}}function W(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Code "),t.qZA())}function X(e,o){if(1&e&&(t.TgZ(0,"a",40),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.Q6J("href",n.url,t.LSH),t.xp6(1),t.Oqu(n.code)}}function K(e,o){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.xp6(1),t.hij(" ",n.code,"")}}function G(e,o){if(1&e&&(t.TgZ(0,"td",27),t.YNc(1,X,2,2,"a",38),t.YNc(2,K,2,1,"span",39),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.url),t.xp6(1),t.Q6J("ngIf",!n.url)}}function tt(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Type "),t.qZA())}function et(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.hij(" ",n.type," ")}}function nt(e,o){if(1&e&&(t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",42),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(3),t.Q6J("formControl",n.codeSystemFilter)}}function ot(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.ALo(2,"async"),t.ALo(3,"codeSystemDisplay"),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.hij(" ",t.lcZ(2,1,t.lcZ(3,3,n.codeSystem))," ")}}function it(e,o){if(1&e&&(t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",43),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(3),t.Q6J("formControl",n.codeFilter)}}function at(e,o){if(1&e&&(t.TgZ(0,"a",40),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.Q6J("href",n.url,t.LSH),t.xp6(1),t.Oqu(n.code)}}function st(e,o){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var n=t.oxw().$implicit;t.xp6(1),t.hij(" ",n.code,"")}}function lt(e,o){if(1&e&&(t.TgZ(0,"td",27),t.YNc(1,at,2,2,"a",38),t.YNc(2,st,2,1,"span",39),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.Q6J("ngIf",n.url),t.xp6(1),t.Q6J("ngIf",!n.url)}}function ct(e,o){if(1&e&&(t.TgZ(0,"mat-option",48),t._uU(1),t.qZA()),2&e){var n=o.$implicit;t.Q6J("value",n.display),t.xp6(1),t.Oqu(n.display)}}function rt(e,o){if(1&e&&(t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"mat-form-field",44),t.TgZ(3,"mat-select",45),t.TgZ(4,"mat-select-trigger"),t._uU(5),t.qZA(),t.TgZ(6,"mat-option",46),t._uU(7,"Select Type Filter"),t.qZA(),t.YNc(8,ct,2,2,"mat-option",47),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(3),t.Q6J("formControl",n.typeFilter),t.xp6(2),t.hij(" ",n.typeFilter.value?n.typeFilter.value:""," "),t.xp6(3),t.Q6J("ngForOf",n.typeFilterOptions)}}function dt(e,o){if(1&e&&(t.TgZ(0,"td",27),t._uU(1),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.hij(" ",n.type," ")}}function ut(e,o){1&e&&(t.TgZ(0,"th",33),t._uU(1," Comments "),t.qZA())}function mt(e,o){if(1&e&&(t.TgZ(0,"div",56),t.TgZ(1,"div",57),t._uU(2,"Comments:"),t.qZA(),t.TgZ(3,"div",58),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2).$implicit;t.xp6(4),t.Oqu(n.codeText)}}function pt(e,o){if(1&e&&(t.TgZ(0,"div",56),t.TgZ(1,"div",57),t._uU(2,"Code Text:"),t.qZA(),t.TgZ(3,"div",58),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2).$implicit;t.xp6(4),t.Oqu(n.comments)}}function ft(e,o){if(1&e&&(t.TgZ(0,"h2",51),t._uU(1,"Code Comments"),t.qZA(),t.TgZ(2,"div",52),t.YNc(3,mt,5,1,"div",53),t.YNc(4,pt,5,1,"div",53),t.qZA(),t.TgZ(5,"div",54),t._UZ(6,"span",1),t.TgZ(7,"button",55),t._uU(8,"Close"),t.qZA(),t.qZA()),2&e){var n=t.oxw().$implicit;t.xp6(3),t.Q6J("ngIf",n.codeText),t.xp6(1),t.Q6J("ngIf",n.comments)}}function Ct(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"td",27),t.TgZ(1,"button",49),t.NdJ("click",function(){t.CHM(n);var i=t.MAs(4);return t.oxw().openModal(i)}),t._uU(2,"View"),t.qZA(),t.YNc(3,ft,9,2,"ng-template",null,50,t.W1O),t.qZA()}if(2&e){var a=o.$implicit;t.xp6(1),t.Q6J("disabled",!a.comments&&!a.codeText)}}function gt(e,o){1&e&&(t.TgZ(0,"th",26),t._uU(1," References "),t.qZA())}function ht(e,o){if(1&e&&(t.TgZ(0,"h2",51),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",52),t._UZ(3,"app-references-manager",60),t.qZA(),t.TgZ(4,"div",54),t._UZ(5,"span",1),t.TgZ(6,"button",55),t._uU(7,"Close"),t.qZA(),t.qZA()),2&e){var n=t.oxw().$implicit,a=t.oxw();t.xp6(3),t.Q6J("substance",a.substance)("references",n.references)}}function vt(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"td",27),t.TgZ(1,"button",49),t.NdJ("click",function(){t.CHM(n);var i=t.MAs(4);return t.oxw().openModal(i)}),t._uU(2,"View"),t.qZA(),t.YNc(3,ht,8,2,"ng-template",null,59,t.W1O),t.qZA()}if(2&e){var a=o.$implicit;t.xp6(1),t.Q6J("disabled",a.references.length<=0)}}function Zt(e,o){1&e&&t._UZ(0,"th",26)}function _t(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"th",26),t.TgZ(1,"div",41),t.TgZ(2,"button",6),t.NdJ("click",function(){return t.CHM(n),t.oxw().resetFilters()}),t._uU(3,"Reset"),t.qZA(),t.qZA(),t.qZA()}}function yt(e,o){1&e&&t._UZ(0,"tr",61)}function Tt(e,o){if(1&e&&t._UZ(0,"tr",62),2&e){var n=t.oxw();t.Q6J("hidden",n.hideFilters)}}function xt(e,o){1&e&&t._UZ(0,"tr",63)}var bt=function(o){return{classification:o}},St=function(){return[5,10,25,100]},Ft=function(){var e=function(o){(0,N.Z)(a,o);var n=(0,O.Z)(a);function a(d,i,s,r){var c;return(0,S.Z)(this,a),(c=n.call(this,i)).dialog=d,c.gaService=i,c.overlayContainerService=s,c.utilsService=r,c.codes=[],c.substanceUpdated=new Y.x,c.hideFilters=!0,c.showHideFilterText="Show Filter",c.codeSystemFilter=new p.NI,c.typeFilter=new p.NI,c.codeFilter=new p.NI,c.typeFilterOptions=[],c}return(0,b.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(s){i.substance=s,i.codes=[],null!=i.substance&&null!=i.type&&("Codes - Classifications"===i.type?i.displayedColumns=["classificationTree","codeSystem","code","references"]:(i.displayedColumns=["codeSystem","code","type","comments","references"],i.displayedFilterColumns=["codeSystemFilter","codeFilter","typeFilter","emptyFilter","resetFilter"]),i.filterSubstanceCodes(),null!=i.codes&&i.codes.length?(i.codes.forEach(function(r){r.url&&(r.url=r.url.trim())}),i.filtered=i.codes,i.pageChange(),i.searchControl.valueChanges.subscribe(function(r){i.filterList(r,i.codes)},function(r){}),i.getTypeFilterOptions()):i.filtered=[])}),this.pageSize=10,this.overlayContainer=this.overlayContainerService.getContainerElement(),this.codeSystemFilter.valueChanges.subscribe(function(s){i.filterTable()}),this.codeFilter.valueChanges.subscribe(function(s){i.filterTable()}),this.typeFilter.valueChanges.subscribe(function(s){i.filterTable()})}},{key:"filterTable",value:function(i){var s=null===this.codeSystemFilter.value?"":this.codeSystemFilter.value,r=null===this.codeFilter.value?"":this.codeFilter.value,c=null===this.typeFilter.value?"":this.typeFilter.value;this.filtered=[];var f,u=(0,v.Z)(this.codes);try{for(u.s();!(f=u.n()).done;){var C=f.value;C.codeSystem.toLowerCase().includes(s.toLowerCase())&&C.code.toLowerCase().includes(r.toLowerCase())&&C.type.toLowerCase().includes(c.toLowerCase())&&this.filtered.push(C)}}catch(T){u.e(T)}finally{u.f()}this.pageChange()}},{key:"toggleFilter",value:function(){this.hideFilters=!this.hideFilters,this.showHideFilterText=this.hideFilters?"Show Filter":"Hide Filter"}},{key:"getTypeFilterValue",value:function(i){var r,s=(0,v.Z)(this.typeFilterOptions);try{for(s.s();!(r=s.n()).done;){var c=r.value;if(c.display===i)return c}}catch(u){s.e(u)}finally{s.f()}}},{key:"getTypeFilterOptions",value:function(){var r,i=this,s=(0,v.Z)(this.codes);try{var c=function(){var C=r.value.type,T={value:C,display:C};i.typeFilterOptions.filter(function(Qt){return Qt.value===C}).length>0||i.typeFilterOptions.push(T)};for(s.s();!(r=s.n()).done;)c()}catch(u){s.e(u)}finally{s.f()}}},{key:"sortData",value:function(i){var s=this,r=this.codes.slice();if(!i.active||""===i.direction)return this.filtered=r,void this.pageChange();this.filtered=r.sort(function(c,u){var f="asc"===i.direction;return s.utilsService.compare(c[i.active]?c[i.active].toString().toUpperCase():null,u[i.active]?u[i.active].toString().toUpperCase():null,f)}),this.pageChange()}},{key:"ngAfterViewInit",value:function(){}},{key:"filterSubstanceCodes",value:function(){var i=this;this.substance.codes&&this.substance.codes.length>0&&(this.substance.codes.forEach(function(s){(s._isClassification&&"Codes - Classifications"===i.type||!s._isClassification&&"Codes - Identifiers"===i.type)&&i.codes.push(s)}),this.countUpdate.emit(this.codes.length))}},{key:"codeIsProtected",value:function(i){var c,s=!1,r=(0,v.Z)(i);try{for(r.s();!(c=r.n()).done;)"protected"===c.value.toLowerCase()&&(s=!0)}catch(f){r.e(f)}finally{r.f()}return s}},{key:"getClassificationTree",value:function(i){return i.split("|")}},{key:"resetFilters",value:function(){this.pageChange(),this.searchControl.setValue(""),this.codeFilter.setValue(""),this.codeSystemFilter.setValue(""),this.typeFilter.setValue("")}},{key:"openModal",value:function(i){var s=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var r=this.dialog.open(i,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(c){s.overlayContainer.style.zIndex=null})}}]),a}(q.u);return e.\u0275fac=function(n){return new(n||e)(t.Y36(h.uw),t.Y36(Q.$),t.Y36(I.Xj),t.Y36(J.FW))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-codes"]],features:[t.qOj],decls:44,vars:14,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],[1,"show-filter-span"],["mat-flat-button","","color","warn",1,"mat-button","mat-button-primary",3,"click"],["mat-table","","matSort","",3,"ngClass","dataSource","matSortChange"],["matColumnDef","classificationTree"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","codeSystem"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","code"],["matColumnDef","type"],["matColumnDef","codeSystemFilter"],["matColumnDef","codeFilter"],["matColumnDef","typeFilter"],["matColumnDef","comments"],["matColumnDef","references"],["matColumnDef","emptyFilter"],["matColumnDef","resetFilter"],["mat-header-row","",4,"matHeaderRowDef"],["mat-header-row","",3,"hidden",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[3,"ngStyle",4,"ngFor","ngForOf"],[3,"ngStyle"],["svgIcon","subdirectory_arrow_right",4,"ngIf"],["routerLink","/browse-substance",3,"queryParams"],["svgIcon","subdirectory_arrow_right"],["mat-header-cell","","mat-sort-header",""],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["class","a-link","target","_blank",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank",1,"a-link",3,"href"],[1,"tableFilter"],["matInput","","placeholder","Code System Filter",1,"form-field",3,"formControl"],["matInput","","placeholder","Code Filter",1,"form-field",3,"formControl"],["appearance","fill"],[3,"formControl"],["selected","",3,"value"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"mat-raised-button","mat-primary",3,"disabled","click"],["commentTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],["class","form-row",4,"ngIf"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],[1,"form-row"],[1,"label"],[1,"content"],["refTemplate",""],[3,"substance","references"],["mat-header-row",""],["mat-header-row","",3,"hidden"],["mat-row",""]],template:function(n,a){1&n&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"span",5),t.TgZ(6,"mat-label",6),t.NdJ("click",function(){return a.toggleFilter()}),t._uU(7),t.qZA(),t.qZA(),t.TgZ(8,"table",7),t.NdJ("matSortChange",function(i){return a.sortData(i)}),t.ynx(9,8),t.YNc(10,$,2,0,"th",9),t.YNc(11,B,2,1,"td",10),t.BQk(),t.ynx(12,11),t.YNc(13,j,2,0,"th",12),t.YNc(14,z,5,6,"td",10),t.BQk(),t.ynx(15,13),t.YNc(16,W,2,0,"th",12),t.YNc(17,G,3,2,"td",10),t.BQk(),t.ynx(18,14),t.YNc(19,tt,2,0,"th",12),t.YNc(20,et,2,1,"td",10),t.BQk(),t.ynx(21,15),t.YNc(22,nt,4,1,"th",9),t.YNc(23,ot,4,5,"td",10),t.BQk(),t.ynx(24,16),t.YNc(25,it,4,1,"th",9),t.YNc(26,lt,3,2,"td",10),t.BQk(),t.ynx(27,17),t.YNc(28,rt,9,3,"th",9),t.YNc(29,dt,2,1,"td",10),t.BQk(),t.ynx(30,18),t.YNc(31,ut,2,0,"th",12),t.YNc(32,Ct,5,1,"td",10),t.BQk(),t.ynx(33,19),t.YNc(34,gt,2,0,"th",9),t.YNc(35,vt,5,1,"td",10),t.BQk(),t.ynx(36,20),t.YNc(37,Zt,1,0,"th",9),t.BQk(),t.ynx(38,21),t.YNc(39,_t,4,0,"th",9),t.BQk(),t.YNc(40,yt,1,0,"tr",22),t.YNc(41,Tt,1,1,"tr",23),t.YNc(42,xt,1,0,"tr",24),t.qZA(),t.qZA(),t.TgZ(43,"mat-paginator",25),t.NdJ("page",function(i){return a.pageChange(i,a.analyticsEventCategory)}),t.qZA()),2&n&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",a.searchControl),t.xp6(4),t.Oqu(a.showHideFilterText),t.xp6(1),t.Q6J("ngClass",t.VKq(11,bt,"Codes - Classifications"==a.type))("dataSource",a.paged),t.xp6(32),t.Q6J("matHeaderRowDef",a.displayedColumns),t.xp6(1),t.Q6J("matHeaderRowDef",a.displayedFilterColumns),t.xp6(1),t.Q6J("matRowDefColumns",a.displayedColumns),t.xp6(1),t.Q6J("length",a.filtered&&a.filtered.length||0)("pageSize",10)("pageSizeOptions",t.DdM(13,St)))},directives:[Z.KE,F.Nt,p.Fj,p.JJ,p.oH,Z.hX,m.BZ,_.YE,g.mk,m.w1,m.fO,m.ge,m.Dz,m.ev,g.sg,g.PC,g.O5,A.Hw,w.yS,_.nU,y.gD,y.$L,M.ey,h.uh,h.xY,h.H8,h.ZT,D.C,m.as,m.XQ,m.nj,m.Gk,U.NW],pipes:[g.Ov,P.q],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.a-link[_ngcontent-%COMP%]{text-decoration:none;color:var(--link-color)}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:25px}.form-row[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{width:10%;font-weight:600;min-width:100px}.form-row[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{width:90%}.show-filter-span[_ngcontent-%COMP%]{display:block;float:right}"]}),e}(),At=l(64061),wt=l(33865),Ut=l(34972),Nt=l(38277),Ot=l(2711),qt=function(){var e=(0,b.Z)(function o(){(0,S.Z)(this,o)});return e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[g.ez,At.o.forChild(Ft),m.p0,wt.HT,U.TU,F.c,Z.lN,y.LD,p.UX,p.u5,Ut.dp,w.Bz,A.Ps,Nt.V,h.Is,_.JX,Ot.v]]}),e}()}}]); +//# sourceMappingURL=275.588a33da8140f7fa.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/275.db2bf1c2f4126e9c.js.map b/frontend/src/main/resources/static/275.588a33da8140f7fa.js.map similarity index 99% rename from frontend/src/main/resources/static/275.db2bf1c2f4126e9c.js.map rename to frontend/src/main/resources/static/275.588a33da8140f7fa.js.map index 2be74f5..124809f 100644 --- a/frontend/src/main/resources/static/275.db2bf1c2f4126e9c.js.map +++ b/frontend/src/main/resources/static/275.588a33da8140f7fa.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r55","ctx_r61","ctx_r63","SubstanceCodesComponent","dialog","gaService","overlayContainerService","utilsService","c","Subject","FormControl","this","substanceUpdated","subscribe","i","substance","codes","type","displayedColumns","displayedFilterColumns","filterSubstanceCodes","length","forEach","code","url","trim","filtered","pageChange","searchControl","valueChanges","filterList","value","getTypeFilterOptions","pageSize","overlayContainer","getContainerElement","codeSystemFilter","codeSystemFilterValue","filterTable","codeFilter","codeFilterValue","typeFilter","typeFilterValue","csFilter","cFilter","tFilter","n","f","codeSystem","toLowerCase","includes","push","T","hideFilters","showHideFilterText","typeFilterOptions","l","r","display","u","oneType","filter","e","sort","data","slice","active","direction","a","b","isAsc","s","compare","toString","toUpperCase","_isClassification","countUpdate","emit","access","itIs","comments","split","setValue","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceCodesModule","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","MatFormFieldModule","MatSelectModule","ReactiveFormsModule","FormsModule","MatTreeModule","RouterModule","MatIconModule","ReferencesManagerModule","MatDialogModule","MatSortModule","CodeDisplayModule"],"sources":["./src/app/core/substance-details/substance-codes/substance-codes.component.html","./src/app/core/substance-details/substance-codes/substance-codes.component.ts","./src/app/core/substance-details/substance-codes/substance-codes.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{showHideFilterText}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
Classification Tree \r\n
\r\n 0\">\r\n \r\n {{node}}\r\n \r\n
\r\n
Code System {{code.codeSystem | codeSystemDisplay | async}}\r\n \r\n \r\n \r\n Code \r\n {{code.code}}\r\n {{code.code}}\r\n Type {{code.type}} \r\n
\r\n \r\n \r\n \r\n
\r\n
{{code.codeSystem | codeSystemDisplay | async}} \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{code.code}}\r\n {{code.code}}\r\n \r\n
\r\n \r\n \r\n \r\n {{typeFilter.value ? typeFilter.value : ''}}\r\n \r\n Select Type Filter\r\n {{type.display}}\r\n \r\n \r\n
\r\n
{{code.type}} Comments \r\n \r\n \r\n

Code Comments

\r\n
\r\n
\r\n
Comments:
\r\n
{{code.codeText}}
\r\n
\r\n
\r\n
Code Text:
\r\n
{{code.comments}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport {SubstanceCode, SubstanceDetail, SubstanceName, TableFilterDDModel} from '../../substance/substance.model';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport {Sort} from '@angular/material/sort';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport {UtilsService} from '@gsrs-core/utils';\r\nimport { FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-substance-codes',\r\n templateUrl: './substance-codes.component.html',\r\n styleUrls: ['./substance-codes.component.scss']\r\n})\r\nexport class SubstanceCodesComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit {\r\n type: string;\r\n codes: Array = [];\r\n displayedColumns: string[];\r\n substanceUpdated = new Subject();\r\n hideFilters = true;\r\n showHideFilterText = 'Show Filter';\r\n displayedFilterColumns: string[];\r\n codeSystemFilter = new FormControl();\r\n typeFilter = new FormControl();\r\n codeFilter = new FormControl();\r\n typeFilterOptions: Array = [];\r\n private overlayContainer: HTMLElement;\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private overlayContainerService: OverlayContainer,\r\n private utilsService: UtilsService\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.codes = [];\r\n if (this.substance != null && this.type != null) {\r\n if (this.type === 'Codes - Classifications') {\r\n this.displayedColumns = ['classificationTree', 'codeSystem', 'code', 'references'];\r\n //this.displayedFilterColumns = ['classTreeFilter', 'codeSystemFilter', 'codeFilter', 'emptyFilter', 'resetFilter'];\r\n } else {\r\n this.displayedColumns = ['codeSystem', 'code', 'type', 'comments', 'references'];\r\n this.displayedFilterColumns = ['codeSystemFilter', 'codeFilter', 'typeFilter', 'emptyFilter', 'resetFilter'];\r\n }\r\n\r\n this.filterSubstanceCodes();\r\n\r\n if (this.codes != null && this.codes.length) {\r\n this.codes.forEach(code => {\r\n if (code.url) {\r\n code.url = code.url.trim();\r\n }\r\n });\r\n this.filtered = this.codes;\r\n this.pageChange();\r\n\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.codes);\r\n }, error => {\r\n // console.log(error);\r\n });\r\n this.getTypeFilterOptions();\r\n } else {\r\n this.filtered = [];\r\n }\r\n }\r\n });\r\n\r\n // if (this.type === 'identifiers') {\r\n this.pageSize = 10;\r\n // }\r\n \r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n this.codeSystemFilter.valueChanges.subscribe((codeSystemFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.codeFilter.valueChanges.subscribe((codeFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.typeFilter.valueChanges.subscribe((typeFilterValue) => {\r\n this.filterTable();\r\n });\r\n }\r\n\r\n filterTable(type?:string) {\r\n const csFilter = this.codeSystemFilter.value === null ? '' : this.codeSystemFilter.value;\r\n const cFilter = this.codeFilter.value === null ? '' : this.codeFilter.value;\r\n const tFilter = this.typeFilter.value === null ? '' : this.typeFilter.value;\r\n this.filtered = [];\r\n for(let n of this.codes) {\r\n if((n.codeSystem.toLowerCase().includes(csFilter.toLowerCase())) &&\r\n (n.code.toLowerCase().includes(cFilter.toLowerCase())) &&\r\n (n.type.toLowerCase().includes(tFilter.toLowerCase()))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n \r\n this.pageChange();\r\n }\r\n\r\n toggleFilter() {\r\n this.hideFilters = !this.hideFilters;\r\n if(this.hideFilters) {\r\n this.showHideFilterText = 'Show Filter';\r\n } else {\r\n this.showHideFilterText = 'Hide Filter';\r\n }\r\n }\r\n\r\n getTypeFilterValue(value) {\r\n for(let l of this.typeFilterOptions) {\r\n if(l.display === value) {\r\n return l;\r\n }\r\n }\r\n }\r\n\r\n getTypeFilterOptions() {\r\n for(let n of this.codes) {\r\n let oneType = n.type;\r\n let value: TableFilterDDModel = {\r\n value: oneType,\r\n display: oneType\r\n }\r\n if (this.typeFilterOptions.filter(e => e.value === oneType).length > 0) {\r\n } else {\r\n this.typeFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n\r\n sortData(sort: Sort) {\r\n const data = this.codes.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n return this.utilsService.compare(a[sort.active] ? a[sort.active].toString().toUpperCase() : null, b[sort.active] ? b[sort.active].toString().toUpperCase() : null, isAsc);\r\n });\r\n this.pageChange();\r\n\r\n \r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n private filterSubstanceCodes(): void {\r\n if (this.substance.codes && this.substance.codes.length > 0) {\r\n this.substance.codes.forEach(code => {\r\n if (code._isClassification && this.type === 'Codes - Classifications') {\r\n this.codes.push(code);\r\n } else if (!code._isClassification && this.type === 'Codes - Identifiers') {\r\n this.codes.push(code);\r\n }\r\n });\r\n this.countUpdate.emit(this.codes.length);\r\n }\r\n }\r\n\r\n codeIsProtected(access: string[]) {\r\n let itIs = false;\r\n for(let a of access) {\r\n if(a.toLowerCase() === 'protected') {\r\n itIs = true;\r\n }\r\n }\r\n return itIs;\r\n }\r\n\r\n getClassificationTree(comments: string): Array {\r\n return comments.split('|');\r\n }\r\n\r\n resetFilters() {\r\n this.pageChange();\r\n this.searchControl.setValue('');\r\n this.codeFilter.setValue('');\r\n this.codeSystemFilter.setValue('');\r\n this.typeFilter.setValue('');\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceCodesComponent } from './substance-codes.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { MatTreeModule } from '@angular/material/tree';\r\nimport { RouterModule } from '@angular/router';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { CodeDisplayModule } from '@gsrs-core/utils/code-display.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceCodesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatTreeModule,\r\n RouterModule,\r\n MatIconModule,\r\n ReferencesManagerModule,\r\n MatDialogModule,\r\n MatSortModule,\r\n CodeDisplayModule\r\n ],\r\n declarations: [\r\n SubstanceCodesComponent\r\n ]\r\n})\r\nexport class SubstanceCodesModule { }\r\n"],"sourceRoot":"webpack:///","file":"275.db2bf1c2f4126e9c.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r55","ctx_r61","ctx_r63","SubstanceCodesComponent","dialog","gaService","overlayContainerService","utilsService","c","Subject","FormControl","this","substanceUpdated","subscribe","i","substance","codes","type","displayedColumns","displayedFilterColumns","filterSubstanceCodes","length","forEach","code","url","trim","filtered","pageChange","searchControl","valueChanges","filterList","value","getTypeFilterOptions","pageSize","overlayContainer","getContainerElement","codeSystemFilter","codeSystemFilterValue","filterTable","codeFilter","codeFilterValue","typeFilter","typeFilterValue","csFilter","cFilter","tFilter","n","f","codeSystem","toLowerCase","includes","push","T","hideFilters","showHideFilterText","typeFilterOptions","l","r","display","u","oneType","filter","e","sort","data","slice","active","direction","a","b","isAsc","s","compare","toString","toUpperCase","_isClassification","countUpdate","emit","access","itIs","comments","split","setValue","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceCodesModule","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","MatFormFieldModule","MatSelectModule","ReactiveFormsModule","FormsModule","MatTreeModule","RouterModule","MatIconModule","ReferencesManagerModule","MatDialogModule","MatSortModule","CodeDisplayModule"],"sources":["./src/app/core/substance-details/substance-codes/substance-codes.component.html","./src/app/core/substance-details/substance-codes/substance-codes.component.ts","./src/app/core/substance-details/substance-codes/substance-codes.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{showHideFilterText}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
Classification Tree \r\n
\r\n 0\">\r\n \r\n {{node}}\r\n \r\n
\r\n
Code System {{code.codeSystem | codeSystemDisplay | async}}\r\n \r\n \r\n \r\n Code \r\n {{code.code}}\r\n {{code.code}}\r\n Type {{code.type}} \r\n
\r\n \r\n \r\n \r\n
\r\n
{{code.codeSystem | codeSystemDisplay | async}} \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{code.code}}\r\n {{code.code}}\r\n \r\n
\r\n \r\n \r\n \r\n {{typeFilter.value ? typeFilter.value : ''}}\r\n \r\n Select Type Filter\r\n {{type.display}}\r\n \r\n \r\n
\r\n
{{code.type}} Comments \r\n \r\n \r\n

Code Comments

\r\n
\r\n
\r\n
Comments:
\r\n
{{code.codeText}}
\r\n
\r\n
\r\n
Code Text:
\r\n
{{code.comments}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport {SubstanceCode, SubstanceDetail, SubstanceName, TableFilterDDModel} from '../../substance/substance.model';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport {Sort} from '@angular/material/sort';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport {UtilsService} from '@gsrs-core/utils';\r\nimport { FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-substance-codes',\r\n templateUrl: './substance-codes.component.html',\r\n styleUrls: ['./substance-codes.component.scss']\r\n})\r\nexport class SubstanceCodesComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit {\r\n type: string;\r\n codes: Array = [];\r\n displayedColumns: string[];\r\n substanceUpdated = new Subject();\r\n hideFilters = true;\r\n showHideFilterText = 'Show Filter';\r\n displayedFilterColumns: string[];\r\n codeSystemFilter = new FormControl();\r\n typeFilter = new FormControl();\r\n codeFilter = new FormControl();\r\n typeFilterOptions: Array = [];\r\n private overlayContainer: HTMLElement;\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private overlayContainerService: OverlayContainer,\r\n private utilsService: UtilsService\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.codes = [];\r\n if (this.substance != null && this.type != null) {\r\n if (this.type === 'Codes - Classifications') {\r\n this.displayedColumns = ['classificationTree', 'codeSystem', 'code', 'references'];\r\n //this.displayedFilterColumns = ['classTreeFilter', 'codeSystemFilter', 'codeFilter', 'emptyFilter', 'resetFilter'];\r\n } else {\r\n this.displayedColumns = ['codeSystem', 'code', 'type', 'comments', 'references'];\r\n this.displayedFilterColumns = ['codeSystemFilter', 'codeFilter', 'typeFilter', 'emptyFilter', 'resetFilter'];\r\n }\r\n\r\n this.filterSubstanceCodes();\r\n\r\n if (this.codes != null && this.codes.length) {\r\n this.codes.forEach(code => {\r\n if (code.url) {\r\n code.url = code.url.trim();\r\n }\r\n });\r\n this.filtered = this.codes;\r\n this.pageChange();\r\n\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.codes);\r\n }, error => {\r\n // console.log(error);\r\n });\r\n this.getTypeFilterOptions();\r\n } else {\r\n this.filtered = [];\r\n }\r\n }\r\n });\r\n\r\n // if (this.type === 'identifiers') {\r\n this.pageSize = 10;\r\n // }\r\n \r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n this.codeSystemFilter.valueChanges.subscribe((codeSystemFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.codeFilter.valueChanges.subscribe((codeFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.typeFilter.valueChanges.subscribe((typeFilterValue) => {\r\n this.filterTable();\r\n });\r\n }\r\n\r\n filterTable(type?:string) {\r\n const csFilter = this.codeSystemFilter.value === null ? '' : this.codeSystemFilter.value;\r\n const cFilter = this.codeFilter.value === null ? '' : this.codeFilter.value;\r\n const tFilter = this.typeFilter.value === null ? '' : this.typeFilter.value;\r\n this.filtered = [];\r\n for(let n of this.codes) {\r\n if((n.codeSystem.toLowerCase().includes(csFilter.toLowerCase())) &&\r\n (n.code.toLowerCase().includes(cFilter.toLowerCase())) &&\r\n (n.type.toLowerCase().includes(tFilter.toLowerCase()))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n \r\n this.pageChange();\r\n }\r\n\r\n toggleFilter() {\r\n this.hideFilters = !this.hideFilters;\r\n if(this.hideFilters) {\r\n this.showHideFilterText = 'Show Filter';\r\n } else {\r\n this.showHideFilterText = 'Hide Filter';\r\n }\r\n }\r\n\r\n getTypeFilterValue(value) {\r\n for(let l of this.typeFilterOptions) {\r\n if(l.display === value) {\r\n return l;\r\n }\r\n }\r\n }\r\n\r\n getTypeFilterOptions() {\r\n for(let n of this.codes) {\r\n let oneType = n.type;\r\n let value: TableFilterDDModel = {\r\n value: oneType,\r\n display: oneType\r\n }\r\n if (this.typeFilterOptions.filter(e => e.value === oneType).length > 0) {\r\n } else {\r\n this.typeFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n\r\n sortData(sort: Sort) {\r\n const data = this.codes.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n return this.utilsService.compare(a[sort.active] ? a[sort.active].toString().toUpperCase() : null, b[sort.active] ? b[sort.active].toString().toUpperCase() : null, isAsc);\r\n });\r\n this.pageChange();\r\n\r\n \r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n private filterSubstanceCodes(): void {\r\n if (this.substance.codes && this.substance.codes.length > 0) {\r\n this.substance.codes.forEach(code => {\r\n if (code._isClassification && this.type === 'Codes - Classifications') {\r\n this.codes.push(code);\r\n } else if (!code._isClassification && this.type === 'Codes - Identifiers') {\r\n this.codes.push(code);\r\n }\r\n });\r\n this.countUpdate.emit(this.codes.length);\r\n }\r\n }\r\n\r\n codeIsProtected(access: string[]) {\r\n let itIs = false;\r\n for(let a of access) {\r\n if(a.toLowerCase() === 'protected') {\r\n itIs = true;\r\n }\r\n }\r\n return itIs;\r\n }\r\n\r\n getClassificationTree(comments: string): Array {\r\n return comments.split('|');\r\n }\r\n\r\n resetFilters() {\r\n this.pageChange();\r\n this.searchControl.setValue('');\r\n this.codeFilter.setValue('');\r\n this.codeSystemFilter.setValue('');\r\n this.typeFilter.setValue('');\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceCodesComponent } from './substance-codes.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { MatTreeModule } from '@angular/material/tree';\r\nimport { RouterModule } from '@angular/router';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { CodeDisplayModule } from '@gsrs-core/utils/code-display.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceCodesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatTreeModule,\r\n RouterModule,\r\n MatIconModule,\r\n ReferencesManagerModule,\r\n MatDialogModule,\r\n MatSortModule,\r\n CodeDisplayModule\r\n ],\r\n declarations: [\r\n SubstanceCodesComponent\r\n ]\r\n})\r\nexport class SubstanceCodesModule { }\r\n"],"sourceRoot":"webpack:///","file":"275.588a33da8140f7fa.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/2809.1f520218fc02f41e.js b/frontend/src/main/resources/static/2809.a6721019705ae44c.js similarity index 97% rename from frontend/src/main/resources/static/2809.1f520218fc02f41e.js rename to frontend/src/main/resources/static/2809.a6721019705ae44c.js index 369374c..1535320 100644 --- a/frontend/src/main/resources/static/2809.1f520218fc02f41e.js +++ b/frontend/src/main/resources/static/2809.a6721019705ae44c.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2809],{22809:function(R,d,s){s.r(d),s.d(d,{SubstanceFormStructurallyDiverseOrganismModule:function(){return q}});var p=s(48047),m=s(78069),v=s(36362),C=s(75143),g=s(44770),f=s(43365),c=s(90587),S=s(91434),y=s(7168),h=s(96769),M=s(3311),D=s(24582),O=s(7318),T=s(18291),Z=s(40104),x=s(79223),b=s(88619),e=s(76442),P=s(16667),_=s(19975),A=s(24459),F=s(15992),J=s(14900);function U(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",6),e.TgZ(2,"mat-form-field",10),e.TgZ(3,"input",11),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismFamily=t}),e.qZA(),e.qZA(),e.TgZ(4,"mat-form-field",12),e.TgZ(5,"input",13),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismGenus=t}),e.qZA(),e.qZA(),e.TgZ(6,"mat-form-field",14),e.TgZ(7,"input",15),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismSpecies=t}),e.qZA(),e.qZA(),e.TgZ(8,"mat-form-field",16),e.TgZ(9,"input",17),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismAuthor=t}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(10,"div",6),e.TgZ(11,"app-cv-input",18),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(3).updateType(t)}),e.qZA(),e.TgZ(12,"mat-form-field",19),e.TgZ(13,"input",20),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.infraSpecificName=t}),e.qZA(),e.qZA(),e.TgZ(14,"app-cv-input",21),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(3).updateStage(t)}),e.qZA(),e.qZA(),e._UZ(15,"mat-divider",22),e.qZA()}if(2&r){var i=e.oxw(3);e.xp6(3),e.Q6J("ngModel",i.structurallyDiverse.organismFamily),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.organismGenus),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.organismSpecies),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.organismAuthor),e.xp6(2),e.Q6J("model",i.structurallyDiverse.infraSpecificType),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.infraSpecificName),e.xp6(1),e.Q6J("model",i.structurallyDiverse.developmentalStage),e.xp6(1),e.Q6J("inset",!0)}}function I(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"div"),e.YNc(1,U,16,8,"div",2),e.TgZ(2,"div",6),e.TgZ(3,"div",7),e.TgZ(4,"app-substance-selector",8),e.NdJ("selectionUpdated",function(t){return e.CHM(n),e.oxw(2).paternalUpdated(t)}),e.qZA(),e.qZA(),e.TgZ(5,"div",7),e.TgZ(6,"app-substance-selector",9),e.NdJ("selectionUpdated",function(t){return e.CHM(n),e.oxw(2).maternalUpdated(t)}),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=e.oxw(2);e.xp6(1),e.Q6J("ngIf","ORGANISM"===i.structurallyDiverse.sourceMaterialClass),e.xp6(3),e.Q6J("subuuid",i.paternalUuid),e.xp6(2),e.Q6J("subuuid",i.maternalUuid)}}function N(r,u){1&r&&e._UZ(0,"mat-divider",22),2&r&&e.Q6J("inset",!0)}function Q(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"app-cv-input",21),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(3).updateDevelopmentalStage(t)}),e.qZA()}if(2&r){var i=e.oxw(3);e.Q6J("model",i.structurallyDiverse.developmentalStage)}}function w(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"div",6),e.TgZ(1,"div",23),e.TgZ(2,"div",6),e.TgZ(3,"app-substance-selector",24),e.NdJ("selectionUpdated",function(t){return e.CHM(n),e.oxw(2).sourceMaterialUpdated(t)}),e.qZA(),e.qZA(),e.qZA(),e._UZ(4,"mat-divider",25),e.TgZ(5,"div",26),e.TgZ(6,"div",6),e.TgZ(7,"app-tag-selector",27),e.NdJ("tagsUpdate",function(t){return e.CHM(n),e.oxw(2).updatePart(t)}),e.qZA(),e.TgZ(8,"app-cv-input",28),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(2).updateLocation(t)}),e.qZA(),e.qZA(),e.TgZ(9,"div",6),e.TgZ(10,"mat-form-field",29),e.TgZ(11,"input",30),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(2).structurallyDiverse.fractionName=t}),e.qZA(),e.qZA(),e.TgZ(12,"app-cv-input",31),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(2).updateMaterialType(t)}),e.qZA(),e.YNc(13,Q,1,1,"app-cv-input",32),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=e.oxw(2);e.xp6(3),e.Q6J("subuuid",i.parentUuid),e.xp6(1),e.Q6J("vertical",!0),e.xp6(3),e.Q6J("tags",i.structurallyDiverse.part),e.xp6(1),e.Q6J("model",i.structurallyDiverse.partLocation),e.xp6(3),e.Q6J("ngModel",i.structurallyDiverse.fractionName),e.xp6(1),e.Q6J("model",i.structurallyDiverse.fractionMaterialType),e.xp6(1),e.Q6J("ngIf","full_fields"!==i.part)}}function E(r,u){if(1&r&&(e.TgZ(0,"div",1),e.YNc(1,I,7,3,"div",2),e.YNc(2,N,1,1,"mat-divider",3),e.YNc(3,w,14,7,"div",4),e._UZ(4,"app-audit-info",5),e.qZA()),2&r){var n=e.oxw();e.xp6(1),e.Q6J("ngIf","whole"===n.part||"full_fields"===n.part),e.xp6(1),e.Q6J("ngIf","full_fields"===n.part),e.xp6(1),e.Q6J("ngIf","fraction"===n.part||"full_fields"===n.part),e.xp6(1),e.Q6J("source",n.structurallyDiverse)}}var H=function(){var r=function(u){(0,D.Z)(i,u);var n=(0,O.Z)(i);function i(l,t,a){var o;return(0,m.Z)(this,i),(o=n.call(this)).substanceFormStructurallyDiverseService=l,o.gaService=t,o.cvService=a,o.subscriptions=[],o.analyticsEventCategory="substance form structural modification structurally diverse organism",o}return(0,p.Z)(i,[{key:"ngOnInit",value:function(){var t=this,a=this.substanceFormStructurallyDiverseService.substanceStructurallyDiverse.subscribe(function(o){t.structurallyDiverse=o,t.structurallyDiverse.$$diverseType&&(t.part=t.structurallyDiverse.$$diverseType),"whole"===t.part?(t.menuLabelUpdate.emit("Organism Details"),t.maternalUuid=t.structurallyDiverse.hybridSpeciesMaternalOrganism&&t.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid||"",t.paternalUuid=t.structurallyDiverse.hybridSpeciesPaternalOrganism&&t.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid||"",t.parentUuid=t.structurallyDiverse.parentSubstance&&t.structurallyDiverse.parentSubstance.refuuid||null):"full_fields"===t.part?(t.menuLabelUpdate.emit("Organism Details / Parts And Fractions"),t.maternalUuid=t.structurallyDiverse.hybridSpeciesMaternalOrganism&&t.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid||"",t.paternalUuid=t.structurallyDiverse.hybridSpeciesPaternalOrganism&&t.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid||""):(t.menuLabelUpdate.emit("Parts And Fractions"),t.parentUuid=t.structurallyDiverse.parentSubstance&&t.structurallyDiverse.parentSubstance.refuuid||"")});this.subscriptions.push(a)}},{key:"ngAfterViewInit",value:function(){}},{key:"updateType",value:function(t){this.structurallyDiverse.infraSpecificType=t}},{key:"updateStage",value:function(t){this.structurallyDiverse.developmentalStage=t}},{key:"paternalUpdated",value:function(t){this.structurallyDiverse.hybridSpeciesPaternalOrganism=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:null}},{key:"maternalUpdated",value:function(t){this.structurallyDiverse.hybridSpeciesMaternalOrganism=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:null}},{key:"sourceMaterialUpdated",value:function(t){this.structurallyDiverse.parentSubstance=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:null}},{key:"updateLocation",value:function(t){this.structurallyDiverse.partLocation=t}},{key:"updateMaterialType",value:function(t){this.structurallyDiverse.fractionMaterialType=t}},{key:"updateDevelopmentalStage",value:function(t){this.structurallyDiverse.developmentalStage=t}},{key:"updatePart",value:function(t){this.structurallyDiverse.part=t}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}}]),i}(x.o);return r.\u0275fac=function(n){return new(n||r)(e.Y36(b.r),e.Y36(Z.$),e.Y36(T.I))},r.\u0275cmp=e.Xpm({type:r,selectors:[["app-substance-form-structurally-diverse-organism"]],features:[e.qOj],decls:1,vars:1,consts:[["class","organism-form-container",4,"ngIf"],[1,"organism-form-container"],[4,"ngIf"],["class","form-divider",3,"inset",4,"ngIf"],["class","form-row",4,"ngIf"],[3,"source"],[1,"form-row"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Hybrid Paternal Organism","header","Hybrid Paternal Organism",1,"related-substance",3,"subuuid","selectionUpdated"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Hybrid Maternal Organism","header","Hybrid Maternal Organism",1,"related-substance",3,"subuuid","selectionUpdated"],[1,"family"],["matInput","","placeholder","Family","required","","name","Family",3,"ngModel","ngModelChange"],[1,"genus"],["matInput","","placeholder","Genus","required","","name","genus",3,"ngModel","ngModelChange"],[1,"species"],["matInput","","placeholder","Species","required","","name","species",3,"ngModel","ngModelChange"],[1,"author"],["matInput","","placeholder","Author","required","","name","author",3,"ngModel","ngModelChange"],["domain","INFRA_SPECIFIC_TYPE","title","Infra Specific Type",1,"cv-field",3,"model","valueChange"],[1,"cv-field"],["matInput","","placeholder","Infra Specific Name","required","","name","",3,"ngModel","ngModelChange"],["domain","DEVELOPMENTAL_STAGE","title","Developmental Stage",1,"cv-field",3,"model","valueChange"],[1,"form-divider",3,"inset"],[1,"parent"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Source Material Parent","header","Source Material Parent",1,"related-substance",3,"subuuid","selectionUpdated"],[1,"vertical-divider",3,"vertical"],[1,"details"],["cvDomain","PART","placeholder","Part(s)",1,"tags",3,"tags","tagsUpdate"],["domain","PART_LOCATION","title","Part Location",1,"cv-field",3,"model","valueChange"],[1,"fraction-name"],["matInput","","placeholder","Fraction Name","name","Fraction Name",3,"ngModel","ngModelChange"],["domain","FRACTION_MATERIAL_TYPE","title","Fraction Material Type",1,"cv-field",3,"model","valueChange"],["class","cv-field","domain","DEVELOPMENTAL_STAGE","title","Developmental Stage",3,"model","valueChange",4,"ngIf"]],template:function(n,i){1&n&&e.YNc(0,E,5,4,"div",0),2&n&&e.Q6J("ngIf",i.structurallyDiverse)},directives:[v.O5,g.KE,f.Nt,c.Fj,c.Q7,c.JJ,c.On,P.S,_.d,A.Q,F.C,J.n],styles:[".organism-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-right:15px}.form-row[_ngcontent-%COMP%] .family[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .genus[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .species[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .author[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .cv-field[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .related-substance[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .fraction-name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.flex-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.parent[_ngcontent-%COMP%]{width:23%}.vertical-divider[_ngcontent-%COMP%]{margin-left:10px;margin-right:30px;height:100%;min-height:150px}.details[_ngcontent-%COMP%]{width:74%} .related-substance img{max-width:125px!important;margin:auto}.form-divider[_ngcontent-%COMP%]{margin-top:20px;margin-bottom:20px}"]}),r}(),L=s(63200),q=(s(64061),function(){var r=(0,p.Z)(function u(){(0,m.Z)(this,u)});return r.\u0275fac=function(n){return new(n||r)},r.\u0275mod=e.oAB({type:r}),r.\u0275inj=e.cJS({imports:[[v.ez,C.o0.forChild(H),g.lN,f.c,c.UX,c.u5,S.LD,y.O,h.O,M.ZQ,L.U,_.t,y.O]]}),r}())}}]); -//# sourceMappingURL=2809.1f520218fc02f41e.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2809],{22809:function(R,d,s){s.r(d),s.d(d,{SubstanceFormStructurallyDiverseOrganismModule:function(){return q}});var p=s(1884),m=s(39117),v=s(36362),C=s(75143),g=s(44770),f=s(43365),c=s(90587),S=s(91434),y=s(7168),h=s(96769),M=s(3311),D=s(46751),O=s(56101),T=s(18291),Z=s(40104),x=s(79223),b=s(88619),e=s(86613),P=s(16667),_=s(19975),A=s(24459),F=s(15992),J=s(14900);function U(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",6),e.TgZ(2,"mat-form-field",10),e.TgZ(3,"input",11),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismFamily=t}),e.qZA(),e.qZA(),e.TgZ(4,"mat-form-field",12),e.TgZ(5,"input",13),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismGenus=t}),e.qZA(),e.qZA(),e.TgZ(6,"mat-form-field",14),e.TgZ(7,"input",15),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismSpecies=t}),e.qZA(),e.qZA(),e.TgZ(8,"mat-form-field",16),e.TgZ(9,"input",17),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.organismAuthor=t}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(10,"div",6),e.TgZ(11,"app-cv-input",18),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(3).updateType(t)}),e.qZA(),e.TgZ(12,"mat-form-field",19),e.TgZ(13,"input",20),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(3).structurallyDiverse.infraSpecificName=t}),e.qZA(),e.qZA(),e.TgZ(14,"app-cv-input",21),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(3).updateStage(t)}),e.qZA(),e.qZA(),e._UZ(15,"mat-divider",22),e.qZA()}if(2&r){var i=e.oxw(3);e.xp6(3),e.Q6J("ngModel",i.structurallyDiverse.organismFamily),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.organismGenus),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.organismSpecies),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.organismAuthor),e.xp6(2),e.Q6J("model",i.structurallyDiverse.infraSpecificType),e.xp6(2),e.Q6J("ngModel",i.structurallyDiverse.infraSpecificName),e.xp6(1),e.Q6J("model",i.structurallyDiverse.developmentalStage),e.xp6(1),e.Q6J("inset",!0)}}function I(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"div"),e.YNc(1,U,16,8,"div",2),e.TgZ(2,"div",6),e.TgZ(3,"div",7),e.TgZ(4,"app-substance-selector",8),e.NdJ("selectionUpdated",function(t){return e.CHM(n),e.oxw(2).paternalUpdated(t)}),e.qZA(),e.qZA(),e.TgZ(5,"div",7),e.TgZ(6,"app-substance-selector",9),e.NdJ("selectionUpdated",function(t){return e.CHM(n),e.oxw(2).maternalUpdated(t)}),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=e.oxw(2);e.xp6(1),e.Q6J("ngIf","ORGANISM"===i.structurallyDiverse.sourceMaterialClass),e.xp6(3),e.Q6J("subuuid",i.paternalUuid),e.xp6(2),e.Q6J("subuuid",i.maternalUuid)}}function N(r,u){1&r&&e._UZ(0,"mat-divider",22),2&r&&e.Q6J("inset",!0)}function Q(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"app-cv-input",21),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(3).updateDevelopmentalStage(t)}),e.qZA()}if(2&r){var i=e.oxw(3);e.Q6J("model",i.structurallyDiverse.developmentalStage)}}function w(r,u){if(1&r){var n=e.EpF();e.TgZ(0,"div",6),e.TgZ(1,"div",23),e.TgZ(2,"div",6),e.TgZ(3,"app-substance-selector",24),e.NdJ("selectionUpdated",function(t){return e.CHM(n),e.oxw(2).sourceMaterialUpdated(t)}),e.qZA(),e.qZA(),e.qZA(),e._UZ(4,"mat-divider",25),e.TgZ(5,"div",26),e.TgZ(6,"div",6),e.TgZ(7,"app-tag-selector",27),e.NdJ("tagsUpdate",function(t){return e.CHM(n),e.oxw(2).updatePart(t)}),e.qZA(),e.TgZ(8,"app-cv-input",28),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(2).updateLocation(t)}),e.qZA(),e.qZA(),e.TgZ(9,"div",6),e.TgZ(10,"mat-form-field",29),e.TgZ(11,"input",30),e.NdJ("ngModelChange",function(t){return e.CHM(n),e.oxw(2).structurallyDiverse.fractionName=t}),e.qZA(),e.qZA(),e.TgZ(12,"app-cv-input",31),e.NdJ("valueChange",function(t){return e.CHM(n),e.oxw(2).updateMaterialType(t)}),e.qZA(),e.YNc(13,Q,1,1,"app-cv-input",32),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=e.oxw(2);e.xp6(3),e.Q6J("subuuid",i.parentUuid),e.xp6(1),e.Q6J("vertical",!0),e.xp6(3),e.Q6J("tags",i.structurallyDiverse.part),e.xp6(1),e.Q6J("model",i.structurallyDiverse.partLocation),e.xp6(3),e.Q6J("ngModel",i.structurallyDiverse.fractionName),e.xp6(1),e.Q6J("model",i.structurallyDiverse.fractionMaterialType),e.xp6(1),e.Q6J("ngIf","full_fields"!==i.part)}}function E(r,u){if(1&r&&(e.TgZ(0,"div",1),e.YNc(1,I,7,3,"div",2),e.YNc(2,N,1,1,"mat-divider",3),e.YNc(3,w,14,7,"div",4),e._UZ(4,"app-audit-info",5),e.qZA()),2&r){var n=e.oxw();e.xp6(1),e.Q6J("ngIf","whole"===n.part||"full_fields"===n.part),e.xp6(1),e.Q6J("ngIf","full_fields"===n.part),e.xp6(1),e.Q6J("ngIf","fraction"===n.part||"full_fields"===n.part),e.xp6(1),e.Q6J("source",n.structurallyDiverse)}}var H=function(){var r=function(u){(0,D.Z)(i,u);var n=(0,O.Z)(i);function i(l,t,a){var o;return(0,m.Z)(this,i),(o=n.call(this)).substanceFormStructurallyDiverseService=l,o.gaService=t,o.cvService=a,o.subscriptions=[],o.analyticsEventCategory="substance form structural modification structurally diverse organism",o}return(0,p.Z)(i,[{key:"ngOnInit",value:function(){var t=this,a=this.substanceFormStructurallyDiverseService.substanceStructurallyDiverse.subscribe(function(o){t.structurallyDiverse=o,t.structurallyDiverse.$$diverseType&&(t.part=t.structurallyDiverse.$$diverseType),"whole"===t.part?(t.menuLabelUpdate.emit("Organism Details"),t.maternalUuid=t.structurallyDiverse.hybridSpeciesMaternalOrganism&&t.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid||"",t.paternalUuid=t.structurallyDiverse.hybridSpeciesPaternalOrganism&&t.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid||"",t.parentUuid=t.structurallyDiverse.parentSubstance&&t.structurallyDiverse.parentSubstance.refuuid||null):"full_fields"===t.part?(t.menuLabelUpdate.emit("Organism Details / Parts And Fractions"),t.maternalUuid=t.structurallyDiverse.hybridSpeciesMaternalOrganism&&t.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid||"",t.paternalUuid=t.structurallyDiverse.hybridSpeciesPaternalOrganism&&t.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid||""):(t.menuLabelUpdate.emit("Parts And Fractions"),t.parentUuid=t.structurallyDiverse.parentSubstance&&t.structurallyDiverse.parentSubstance.refuuid||"")});this.subscriptions.push(a)}},{key:"ngAfterViewInit",value:function(){}},{key:"updateType",value:function(t){this.structurallyDiverse.infraSpecificType=t}},{key:"updateStage",value:function(t){this.structurallyDiverse.developmentalStage=t}},{key:"paternalUpdated",value:function(t){this.structurallyDiverse.hybridSpeciesPaternalOrganism=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:null}},{key:"maternalUpdated",value:function(t){this.structurallyDiverse.hybridSpeciesMaternalOrganism=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:null}},{key:"sourceMaterialUpdated",value:function(t){this.structurallyDiverse.parentSubstance=null!==t?{refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID}:null}},{key:"updateLocation",value:function(t){this.structurallyDiverse.partLocation=t}},{key:"updateMaterialType",value:function(t){this.structurallyDiverse.fractionMaterialType=t}},{key:"updateDevelopmentalStage",value:function(t){this.structurallyDiverse.developmentalStage=t}},{key:"updatePart",value:function(t){this.structurallyDiverse.part=t}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}}]),i}(x.o);return r.\u0275fac=function(n){return new(n||r)(e.Y36(b.r),e.Y36(Z.$),e.Y36(T.I))},r.\u0275cmp=e.Xpm({type:r,selectors:[["app-substance-form-structurally-diverse-organism"]],features:[e.qOj],decls:1,vars:1,consts:[["class","organism-form-container",4,"ngIf"],[1,"organism-form-container"],[4,"ngIf"],["class","form-divider",3,"inset",4,"ngIf"],["class","form-row",4,"ngIf"],[3,"source"],[1,"form-row"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Hybrid Paternal Organism","header","Hybrid Paternal Organism",1,"related-substance",3,"subuuid","selectionUpdated"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Hybrid Maternal Organism","header","Hybrid Maternal Organism",1,"related-substance",3,"subuuid","selectionUpdated"],[1,"family"],["matInput","","placeholder","Family","required","","name","Family",3,"ngModel","ngModelChange"],[1,"genus"],["matInput","","placeholder","Genus","required","","name","genus",3,"ngModel","ngModelChange"],[1,"species"],["matInput","","placeholder","Species","required","","name","species",3,"ngModel","ngModelChange"],[1,"author"],["matInput","","placeholder","Author","required","","name","author",3,"ngModel","ngModelChange"],["domain","INFRA_SPECIFIC_TYPE","title","Infra Specific Type",1,"cv-field",3,"model","valueChange"],[1,"cv-field"],["matInput","","placeholder","Infra Specific Name","required","","name","",3,"ngModel","ngModelChange"],["domain","DEVELOPMENTAL_STAGE","title","Developmental Stage",1,"cv-field",3,"model","valueChange"],[1,"form-divider",3,"inset"],[1,"parent"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Source Material Parent","header","Source Material Parent",1,"related-substance",3,"subuuid","selectionUpdated"],[1,"vertical-divider",3,"vertical"],[1,"details"],["cvDomain","PART","placeholder","Part(s)",1,"tags",3,"tags","tagsUpdate"],["domain","PART_LOCATION","title","Part Location",1,"cv-field",3,"model","valueChange"],[1,"fraction-name"],["matInput","","placeholder","Fraction Name","name","Fraction Name",3,"ngModel","ngModelChange"],["domain","FRACTION_MATERIAL_TYPE","title","Fraction Material Type",1,"cv-field",3,"model","valueChange"],["class","cv-field","domain","DEVELOPMENTAL_STAGE","title","Developmental Stage",3,"model","valueChange",4,"ngIf"]],template:function(n,i){1&n&&e.YNc(0,E,5,4,"div",0),2&n&&e.Q6J("ngIf",i.structurallyDiverse)},directives:[v.O5,g.KE,f.Nt,c.Fj,c.Q7,c.JJ,c.On,P.S,_.d,A.Q,F.C,J.n],styles:[".organism-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-right:15px}.form-row[_ngcontent-%COMP%] .family[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .genus[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .species[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .author[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .cv-field[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .related-substance[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .fraction-name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.flex-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.parent[_ngcontent-%COMP%]{width:23%}.vertical-divider[_ngcontent-%COMP%]{margin-left:10px;margin-right:30px;height:100%;min-height:150px}.details[_ngcontent-%COMP%]{width:74%} .related-substance img{max-width:125px!important;margin:auto}.form-divider[_ngcontent-%COMP%]{margin-top:20px;margin-bottom:20px}"]}),r}(),L=s(63200),q=(s(64061),function(){var r=(0,p.Z)(function u(){(0,m.Z)(this,u)});return r.\u0275fac=function(n){return new(n||r)},r.\u0275mod=e.oAB({type:r}),r.\u0275inj=e.cJS({imports:[[v.ez,C.o0.forChild(H),g.lN,f.c,c.UX,c.u5,S.LD,y.O,h.O,M.ZQ,L.U,_.t,y.O]]}),r}())}}]); +//# sourceMappingURL=2809.a6721019705ae44c.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2809.1f520218fc02f41e.js.map b/frontend/src/main/resources/static/2809.a6721019705ae44c.js.map similarity index 99% rename from frontend/src/main/resources/static/2809.1f520218fc02f41e.js.map rename to frontend/src/main/resources/static/2809.a6721019705ae44c.js.map index 22289c2..1ddf4e8 100644 --- a/frontend/src/main/resources/static/2809.1f520218fc02f41e.js.map +++ b/frontend/src/main/resources/static/2809.a6721019705ae44c.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r10","ctx_r12","ctx_r13","ctx_r15","ctx_r17","ctx_r19","ctx_r21","ctx_r22","ctx_r24","SubstanceFormStructurallyDiverseOrganismComponent","substanceFormStructurallyDiverseService","gaService","cvService","o","analyticsEventCategory","structurallyDiverseSubscription","this","substanceStructurallyDiverse","subscribe","t","structurallyDiverse","$$diverseType","part","menuLabelUpdate","emit","maternalUuid","hybridSpeciesMaternalOrganism","refuuid","paternalUuid","hybridSpeciesPaternalOrganism","parentUuid","parentSubstance","subscriptions","push","event","infraSpecificType","developmentalStage","substance","refPname","_name","name","uuid","substanceClass","approvalID","partLocation","fractionMaterialType","tags","forEach","subscription","unsubscribe","i","SubstanceFormBase","selectors","SubstanceFormStructurallyDiverseOrganismModule","p","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule","SubstanceSelectorModule","MatDividerModule"],"sources":["./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.component.html","./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.component.ts","./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.module.ts"],"sourcesContent":["
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n\n \n\n \n \n \n \n \n
\n\n \n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n\n
\n
\n
\n \n \n
\n
\n\n \n
\n
\n\n \n \n\n \n
\n
\n \n \n \n\n \n \n \n
\n
\n
\n \n\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {StructurallyDiverse} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {IDropdownSettings} from 'ng-multiselect-dropdown';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormBase } from '../../base-classes/substance-form-base';\nimport { SubstanceSummary, SubstanceRelated } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormStructurallyDiverseService } from '../substance-form-structurally-diverse.service';\n\n@Component({\n selector: 'app-substance-form-structurally-diverse-organism',\n templateUrl: './substance-form-structurally-diverse-organism.component.html',\n styleUrls: ['./substance-form-structurally-diverse-organism.component.scss']\n})\nexport class SubstanceFormStructurallyDiverseOrganismComponent extends SubstanceFormBase\n implements OnInit, AfterViewInit, OnDestroy {\n part: string;\n paternalUuid: string;\n maternalUuid: string;\n parentUuid: string;\n structurallyDiverse: StructurallyDiverse;\n temporaryPart: string;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormStructurallyDiverseService: SubstanceFormStructurallyDiverseService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form structural modification structurally diverse organism';\n }\n\n ngOnInit() {\n const structurallyDiverseSubscription = this.substanceFormStructurallyDiverseService\n .substanceStructurallyDiverse.subscribe(structurallyDiverse => {\n this.structurallyDiverse = structurallyDiverse;\n // this.part = this.structurallyDiverse.$$diverseType;\n // when the form submits, $$diversetype is stripped so part must be used in it's place\n if (this.structurallyDiverse.$$diverseType) {\n this.part = this.structurallyDiverse.$$diverseType;\n }\n if (this.part === 'whole') {\n this.menuLabelUpdate.emit('Organism Details');\n this.maternalUuid = this.structurallyDiverse.hybridSpeciesMaternalOrganism\n && this.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid || '';\n this.paternalUuid = this.structurallyDiverse.hybridSpeciesPaternalOrganism\n && this.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid || '';\n this.parentUuid = this.structurallyDiverse.parentSubstance\n && this.structurallyDiverse.parentSubstance.refuuid || null;\n } else if (this.part === 'full_fields') {\n this.menuLabelUpdate.emit('Organism Details / Parts And Fractions');\n this.maternalUuid = this.structurallyDiverse.hybridSpeciesMaternalOrganism\n && this.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid || '';\n this.paternalUuid = this.structurallyDiverse.hybridSpeciesPaternalOrganism\n && this.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid || '';\n } else {\n this.menuLabelUpdate.emit('Parts And Fractions');\n this.parentUuid = this.structurallyDiverse.parentSubstance\n && this.structurallyDiverse.parentSubstance.refuuid || '';\n }\n });\n this.subscriptions.push(structurallyDiverseSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n updateType(event): void {\n this.structurallyDiverse.infraSpecificType = event;\n }\n\n updateStage(event): void {\n this.structurallyDiverse.developmentalStage = event;\n }\n\n paternalUpdated(substance: SubstanceSummary): void {\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.structurallyDiverse.hybridSpeciesPaternalOrganism = relatedSubstance;\n } else {\n this.structurallyDiverse.hybridSpeciesPaternalOrganism = null;\n }\n\n }\n\n maternalUpdated(substance: SubstanceSummary): void {\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.structurallyDiverse.hybridSpeciesMaternalOrganism = relatedSubstance;\n } else {\n this.structurallyDiverse.hybridSpeciesMaternalOrganism = null;\n }\n }\n\n sourceMaterialUpdated(substance: SubstanceSummary): void {\nif (substance !== null) {\n\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.structurallyDiverse.parentSubstance = relatedSubstance;\n} else {\n this.structurallyDiverse.parentSubstance = null;\n}\n }\n\n updateLocation(event): void {\n this.structurallyDiverse.partLocation = event;\n }\n\n updateMaterialType(event): void {\n this.structurallyDiverse.fractionMaterialType = event;\n }\n\n updateDevelopmentalStage(event): void {\n this.structurallyDiverse.developmentalStage = event;\n }\n\n updatePart(tags: Array): void {\n this.structurallyDiverse.part = tags;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatInputModule} from '@angular/material/input';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {NameResolverModule} from '@gsrs-core/name-resolver/name-resolver.module';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {SubstanceFormStructurallyDiverseOrganismComponent} from '@gsrs-core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.component';\nimport {SubstanceSelectorModule} from '@gsrs-core/substance-selector/substance-selector.module';\nimport {MatDividerModule} from '@angular/material/divider';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructurallyDiverseOrganismComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule,\n SubstanceSelectorModule,\n MatDividerModule,\n SubstanceFormModule\n ],\n declarations: [\n SubstanceFormStructurallyDiverseOrganismComponent\n ]\n})\nexport class SubstanceFormStructurallyDiverseOrganismModule { }\n"],"sourceRoot":"webpack:///","file":"2809.1f520218fc02f41e.js"} \ No newline at end of file +{"version":3,"mappings":"yeAEIA,eACAA,iBACEA,6BACEA,oBAAqCA,kGAArCA,QACFA,QACAA,6BACEA,oBAAoCA,iGAApCA,QACFA,QACAA,6BACEA,oBAAsCA,mGAAtCA,QACFA,QACAA,6BACEA,oBAAqCA,kGAArCA,QACFA,QACFA,QACEA,kBAEEA,4BAA8FA,yDAAiBC,gBAAsED,QAErLA,8BACEA,qBAAkDA,qGAAlDA,QACFA,QAEAA,4BAA+FA,yDAAiBE,iBAAwEF,QAC1LA,QAEAA,2BAEFA,+BAzByCA,+DAGDA,8DAGEA,gEAGDA,+DAK8FA,gEAG/EA,kEAGiFA,iEAGrGA,kEA3BtCA,eACEA,wBA6BAA,iBACEA,iBACEA,oCAAqDA,8DAAoBG,qBAGzEH,QACFA,QACAA,iBACEA,oCAAqDA,8DAAoBI,qBAGzEJ,QACFA,QACFA,QACFA,+BA3CQA,8EAiCsBA,yCAMAA,+DAK9BA,+BAAkCA,wDA4B5BA,2BACCA,yDAAiBK,8BAAqFL,+BAAnDA,+FA3B1DA,iBACEA,kBACEA,iBACEA,qCAAoDA,8DAAoBM,2BAGxEN,QACFA,QACFA,QAEAA,0BACAA,kBACEA,iBAEEA,+BAA+BA,wDAAcO,gBAE7CP,QAEAA,2BAAkFA,yDAAiBQ,oBAAqER,QAC1KA,QACAA,iBACEA,8BACEA,qBAA4CA,gGAA5CA,QACFA,QAEAA,4BAAoGA,yDAAiBS,wBAAiFT,QACtMA,kCAGFA,QACFA,QACAA,+BA1B4BA,uCAKUA,8BAI+BA,kDAI0DA,2DAI7EA,6DAGmGA,mEAClDA,wEA1EvGA,iBACEA,uBA6CAA,+BAEAA,wBAgCEA,4BAEJA,4BAjFQA,gEA6C4CA,8CAE5CA,mEAgCYA,gDCjEb,IAAMU,EAAb,eAAaA,EAAb,0CAUE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,0CACDG,cACAA,cALDA,gBAAqC,GAQ3CA,EAAKC,uBAAyB,uEAHeD,EAbjD,uCAmBE,WAAQ,WACAE,EAAkCC,KAAKN,wCAC1CO,6BAA6BC,UAAU,YACxCC,EAAKC,oBAAsBA,EAGvBD,EAAKC,oBAAoBC,gBAC3BF,EAAKG,KAAOH,EAAKC,oBAAoBC,eAErB,UAAlBF,EAASG,MACPH,EAAKI,gBAAgBC,KAAK,oBAC1BL,EAAKM,aAAeN,EAAKC,oBAAoBM,+BACxCP,EAAKC,oBAAoBM,8BAA8BC,SAAW,GACvER,EAAKS,aAAeT,EAAKC,oBAAoBS,+BACxCV,EAAKC,oBAAoBS,8BAA8BF,SAAW,GACrER,EAAKW,WAAaX,EAAKC,oBAAoBW,iBACxCZ,EAAKC,oBAAoBW,gBAAgBJ,SAAW,MACjC,gBAAlBR,EAASG,MACfH,EAAKI,gBAAgBC,KAAK,0CAC1BL,EAAKM,aAAeN,EAAKC,oBAAoBM,+BACxCP,EAAKC,oBAAoBM,8BAA8BC,SAAW,GACvER,EAAKS,aAAeT,EAAKC,oBAAoBS,+BACxCV,EAAKC,oBAAoBS,8BAA8BF,SAAW,KAEvER,EAAKI,gBAAgBC,KAAK,uBAC1BL,EAAKW,WAAaX,EAAKC,oBAAoBW,iBACtCZ,EAAKC,oBAAoBW,gBAAgBJ,SAAW,MAG7DX,KAAKgB,cAAcC,KAAKlB,KAhD5B,6BAmDE,cAnDF,wBAsDE,SAAWmB,GACTlB,KAAKI,oBAAoBe,kBAAoBD,IAvDjD,yBA0DE,SAAYA,GACVlB,KAAKI,oBAAoBgB,mBAAqBF,IA3DlD,6BA8DE,SAAgBG,GASZrB,KAAKI,oBAAoBS,8BART,OAAdQ,EACyC,CACzCC,SAAUD,EAAUE,MACpBC,KAAMH,EAAUE,MAChBZ,QAASU,EAAUI,KACnBC,eAAgB,YAChBC,WAAYN,EAAUM,YAIkC,OAzEhE,6BA8EE,SAAgBN,GASdrB,KAAKI,oBAAoBM,8BARP,OAAdW,EACuC,CACzCC,SAAUD,EAAUE,MACpBC,KAAMH,EAAUE,MAChBZ,QAASU,EAAUI,KACnBC,eAAgB,YAChBC,WAAYN,EAAUM,YAIiC,OAzF7D,mCA6FE,SAAsBN,GAUtBrB,KAAKI,oBAAoBW,gBATT,OAAdM,EAEyC,CACzCC,SAAUD,EAAUE,MACpBC,KAAMH,EAAUE,MAChBZ,QAASU,EAAUI,KACnBC,eAAgB,YAChBC,WAAYN,EAAUM,YAImB,OAzG7C,4BA6GE,SAAeT,GACblB,KAAKI,oBAAoBwB,aAAeV,IA9G5C,gCAiHE,SAAmBA,GACjBlB,KAAKI,oBAAoByB,qBAAuBX,IAlHpD,sCAqHE,SAAyBA,GACvBlB,KAAKI,oBAAoBgB,mBAAqBF,IAtHlD,wBAyHE,SAAWY,GACT9B,KAAKI,oBAAoBE,KAAOwB,IA1HpC,yBA6HE,WACE9B,KAAKgB,cAAce,QAAQ,YACzBC,EAAaC,oBA/HnBC,GAAuEC,kDAA1D1C,GAAiDV,2DAAjDU,EAAiD2C,8sEDf9DrD,4BAAsCA,4lDCezBU,EAAb,cCmBa4C,YAAb,eAAaA,KAAbC,iFAAaD,4DAnBF,CACPE,KACAC,cAAsC/C,GACtCgD,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,KACAC,IACAC,IACAJ,QAMST,EAAb","names":["i0","ctx_r10","ctx_r12","ctx_r13","ctx_r15","ctx_r17","ctx_r19","ctx_r21","ctx_r22","ctx_r24","SubstanceFormStructurallyDiverseOrganismComponent","substanceFormStructurallyDiverseService","gaService","cvService","o","analyticsEventCategory","structurallyDiverseSubscription","this","substanceStructurallyDiverse","subscribe","t","structurallyDiverse","$$diverseType","part","menuLabelUpdate","emit","maternalUuid","hybridSpeciesMaternalOrganism","refuuid","paternalUuid","hybridSpeciesPaternalOrganism","parentUuid","parentSubstance","subscriptions","push","event","infraSpecificType","developmentalStage","substance","refPname","_name","name","uuid","substanceClass","approvalID","partLocation","fractionMaterialType","tags","forEach","subscription","unsubscribe","i","SubstanceFormBase","selectors","SubstanceFormStructurallyDiverseOrganismModule","p","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule","SubstanceSelectorModule","MatDividerModule"],"sources":["./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.component.html","./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.component.ts","./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.module.ts"],"sourcesContent":["
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n\n \n\n \n \n \n \n \n
\n\n \n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n\n
\n
\n
\n \n \n
\n
\n\n \n
\n
\n\n \n \n\n \n
\n
\n \n \n \n\n \n \n \n
\n
\n
\n \n\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {StructurallyDiverse} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {IDropdownSettings} from 'ng-multiselect-dropdown';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormBase } from '../../base-classes/substance-form-base';\nimport { SubstanceSummary, SubstanceRelated } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormStructurallyDiverseService } from '../substance-form-structurally-diverse.service';\n\n@Component({\n selector: 'app-substance-form-structurally-diverse-organism',\n templateUrl: './substance-form-structurally-diverse-organism.component.html',\n styleUrls: ['./substance-form-structurally-diverse-organism.component.scss']\n})\nexport class SubstanceFormStructurallyDiverseOrganismComponent extends SubstanceFormBase\n implements OnInit, AfterViewInit, OnDestroy {\n part: string;\n paternalUuid: string;\n maternalUuid: string;\n parentUuid: string;\n structurallyDiverse: StructurallyDiverse;\n temporaryPart: string;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormStructurallyDiverseService: SubstanceFormStructurallyDiverseService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form structural modification structurally diverse organism';\n }\n\n ngOnInit() {\n const structurallyDiverseSubscription = this.substanceFormStructurallyDiverseService\n .substanceStructurallyDiverse.subscribe(structurallyDiverse => {\n this.structurallyDiverse = structurallyDiverse;\n // this.part = this.structurallyDiverse.$$diverseType;\n // when the form submits, $$diversetype is stripped so part must be used in it's place\n if (this.structurallyDiverse.$$diverseType) {\n this.part = this.structurallyDiverse.$$diverseType;\n }\n if (this.part === 'whole') {\n this.menuLabelUpdate.emit('Organism Details');\n this.maternalUuid = this.structurallyDiverse.hybridSpeciesMaternalOrganism\n && this.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid || '';\n this.paternalUuid = this.structurallyDiverse.hybridSpeciesPaternalOrganism\n && this.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid || '';\n this.parentUuid = this.structurallyDiverse.parentSubstance\n && this.structurallyDiverse.parentSubstance.refuuid || null;\n } else if (this.part === 'full_fields') {\n this.menuLabelUpdate.emit('Organism Details / Parts And Fractions');\n this.maternalUuid = this.structurallyDiverse.hybridSpeciesMaternalOrganism\n && this.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid || '';\n this.paternalUuid = this.structurallyDiverse.hybridSpeciesPaternalOrganism\n && this.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid || '';\n } else {\n this.menuLabelUpdate.emit('Parts And Fractions');\n this.parentUuid = this.structurallyDiverse.parentSubstance\n && this.structurallyDiverse.parentSubstance.refuuid || '';\n }\n });\n this.subscriptions.push(structurallyDiverseSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n updateType(event): void {\n this.structurallyDiverse.infraSpecificType = event;\n }\n\n updateStage(event): void {\n this.structurallyDiverse.developmentalStage = event;\n }\n\n paternalUpdated(substance: SubstanceSummary): void {\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.structurallyDiverse.hybridSpeciesPaternalOrganism = relatedSubstance;\n } else {\n this.structurallyDiverse.hybridSpeciesPaternalOrganism = null;\n }\n\n }\n\n maternalUpdated(substance: SubstanceSummary): void {\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.structurallyDiverse.hybridSpeciesMaternalOrganism = relatedSubstance;\n } else {\n this.structurallyDiverse.hybridSpeciesMaternalOrganism = null;\n }\n }\n\n sourceMaterialUpdated(substance: SubstanceSummary): void {\nif (substance !== null) {\n\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.structurallyDiverse.parentSubstance = relatedSubstance;\n} else {\n this.structurallyDiverse.parentSubstance = null;\n}\n }\n\n updateLocation(event): void {\n this.structurallyDiverse.partLocation = event;\n }\n\n updateMaterialType(event): void {\n this.structurallyDiverse.fractionMaterialType = event;\n }\n\n updateDevelopmentalStage(event): void {\n this.structurallyDiverse.developmentalStage = event;\n }\n\n updatePart(tags: Array): void {\n this.structurallyDiverse.part = tags;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatInputModule} from '@angular/material/input';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {NameResolverModule} from '@gsrs-core/name-resolver/name-resolver.module';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {SubstanceFormStructurallyDiverseOrganismComponent} from '@gsrs-core/substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.component';\nimport {SubstanceSelectorModule} from '@gsrs-core/substance-selector/substance-selector.module';\nimport {MatDividerModule} from '@angular/material/divider';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructurallyDiverseOrganismComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule,\n SubstanceSelectorModule,\n MatDividerModule,\n SubstanceFormModule\n ],\n declarations: [\n SubstanceFormStructurallyDiverseOrganismComponent\n ]\n})\nexport class SubstanceFormStructurallyDiverseOrganismModule { }\n"],"sourceRoot":"webpack:///","file":"2809.a6721019705ae44c.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/2817.3f6134c2af0ce41b.js b/frontend/src/main/resources/static/2817.3f6134c2af0ce41b.js deleted file mode 100644 index ee69f49..0000000 --- a/frontend/src/main/resources/static/2817.3f6134c2af0ce41b.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2817],{32817:function(L,v,o){o.r(v),o.d(v,{SubstanceFormConstituentsModule:function(){return W}});var d=o(48047),m=o(78069),l=o(36362),b=o(64061),Z=o(44770),y=o(43365),C=o(90587),T=o(7168),O=o(24582),x=o(7318),M=(o(27299),o(40104)),S=o(79550),P=o(26984),t=o(76442),A=o(78444),F=o(51279),U=o(18291),I=o(63169),D=o(27164),J=o(95758),N=o(66088);function _(i,c){if(1&i){var e=t.EpF();t.TgZ(0,"div",20),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",21),t.NdJ("click",function(){return t.CHM(e),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",22),t.qZA(),t.qZA()}}function w(i,c){if(1&i&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&i){var e=t.oxw();t.xp6(1),t.hij(" ",e.displayAmount(e.privateConstituent.amount)," ")}}function Q(i,c){if(1&i&&(t.TgZ(0,"div",2),t.TgZ(1,"div",23),t._UZ(2,"app-domain-references",24,25),t.qZA(),t.qZA()),2&i){var e=t.oxw();t.xp6(2),t.Q6J("referencesUuids",e.privateConstituent.references)}}var g=function(){var i=function(){function c(e,n,s,a){(0,m.Z)(this,c),this.cvService=e,this.dialog=n,this.utilsService=s,this.overlayContainerService=a,this.constituentDeleted=new t.vpe,this.subscriptions=[]}return(0,d.Z)(c,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"constituent",get:function(){return this.privateConstituent},set:function(n){this.privateConstituent=n,this.constituent.substance&&(this.relatedSubstanceUuid=this.privateConstituent.substance.refuuid)}},{key:"delete",value:function(){var n=this;this.privateConstituent.$$deletedCode=this.utilsService.newUUID(),this.privateConstituent.substance||(this.deleteTimer=setTimeout(function(){n.constituentDeleted.emit(n.privateConstituent)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateConstituent.$$deletedCode}},{key:"openAmountDialog",value:function(){var n=this;this.privateConstituent.amount||(this.privateConstituent.amount={});var s=this.dialog.open(D.O,{data:{subsAmount:this.privateConstituent.amount},width:"990px"});this.overlayContainer.style.zIndex="1002";var a=s.afterClosed().subscribe(function(r){n.overlayContainer.style.zIndex=null,r&&(n.privateConstituent.amount=r)});this.subscriptions.push(a)}},{key:"updateProcess",value:function(n){this.privateConstituent.role=n}},{key:"updateAccess",value:function(n){this.privateConstituent.access=n}},{key:"relatedSubstanceUpdated",value:function(n){this.privateConstituent.substance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.privateConstituent.substance.refuuid}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"formatValue",value:function(n){return n?"object"==typeof n?n.display?n.display:n.value?n.value:null:n:null}}]),c}();return i.\u0275fac=function(e){return new(e||i)(t.Y36(U.I),t.Y36(J.uw),t.Y36(I.FW),t.Y36(N.Xj))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-constituent-form"]],inputs:{constituent:"constituent"},outputs:{constituentDeleted:"constituentDeleted"},decls:21,vars:6,consts:[[1,"constituent-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Related Substance","header","Related Substance",3,"subuuid","selectionUpdated"],[1,"field-column"],[1,"role"],["domain","CONSTITUENT_ROLE","title","constituent role",3,"model","valueChange"],[1,"amount"],[1,"label","amt-label"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],[1,"amount-display"],[4,"ngIf"],[1,"access"],[3,"access","accessOut"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t.YNc(1,_,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"button",4),t.NdJ("click",function(){return n.delete()}),t._UZ(5,"mat-icon",5),t.qZA(),t.qZA(),t.TgZ(6,"div",6),t.TgZ(7,"app-substance-selector",7),t.NdJ("selectionUpdated",function(a){return n.relatedSubstanceUpdated(a)}),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.TgZ(10,"app-cv-input",10),t.NdJ("valueChange",function(a){return n.updateProcess(a)}),t.qZA(),t.qZA(),t.TgZ(11,"div",11),t.TgZ(12,"div",12),t._uU(13," Amount "),t.TgZ(14,"button",13),t.NdJ("click",function(){return n.openAmountDialog()}),t._UZ(15,"mat-icon",14),t.qZA(),t.qZA(),t.TgZ(16,"div",15),t.YNc(17,w,2,1,"div",16),t.qZA(),t.qZA(),t.qZA(),t.TgZ(18,"div",17),t.TgZ(19,"app-access-manager",18),t.NdJ("accessOut",function(a){return n.updateAccess(a)}),t.qZA(),t.qZA(),t.qZA(),t.YNc(20,Q,4,1,"div",19),t.qZA()),2&e&&(t.xp6(1),t.Q6J("ngIf",n.constituent.$$deletedCode),t.xp6(6),t.Q6J("subuuid",n.relatedSubstanceUuid),t.xp6(3),t.Q6J("model",n.privateConstituent.role),t.xp6(7),t.Q6J("ngIf",n.privateConstituent.amount),t.xp6(2),t.Q6J("access",n.constituent.access),t.xp6(1),t.Q6J("ngIf",!n.privateConstituent.$$deletedCode))},styles:[".constituent-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.related-substance[_ngcontent-%COMP%]{max-width:60%;width:60%;padding-right:20px} .related-substance img{max-width:125px!important;margin:auto}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{-ms-flex-align:start;align-items:flex-start;-ms-flex-line-pack:start;align-content:flex-start;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .field-column[_ngcontent-%COMP%]{width:70%}.form-row[_ngcontent-%COMP%] .field-column[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:100%;margin-top:37px}.form-row[_ngcontent-%COMP%] .field-column[_ngcontent-%COMP%] .role[_ngcontent-%COMP%]{width:100%;margin-bottom:10px}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%] .access[_ngcontent-%COMP%]{width:15%}.references-container[_ngcontent-%COMP%]{width:100%}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}"]}),i}(),h=o(19975),p=o(87317),f=o(65590);function Y(i,c){1&i&&t._UZ(0,"mat-divider",8),2&i&&t.Q6J("inset",!0)}function k(i,c){if(1&i){var e=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-constituent-form",6),t.NdJ("constituentDeleted",function(u){return t.CHM(e),t.oxw().deleteConstituent(u)}),t.qZA(),t.YNc(2,Y,1,1,"mat-divider",7),t.qZA()}if(2&i){var n=c.$implicit,s=c.last;t.Q6J("id","substance-constituent-"+c.index),t.xp6(1),t.Q6J("constituent",n),t.xp6(1),t.Q6J("ngIf",!s)}}var $=function(){var i=function(c){(0,O.Z)(n,c);var e=(0,x.Z)(n);function n(s,a,r){var u;return(0,m.Z)(this,n),(u=e.call(this,r)).substanceFormConstituentsService=s,u.scrollToService=a,u.gaService=r,u.subscriptions=[],u.analyticsEventCategory="substance form constituents",u}return(0,d.Z)(n,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Constituents")}},{key:"ngAfterViewInit",value:function(){var a=this,r=this.substanceFormConstituentsService.substanceConstituents.subscribe(function(u){a.constituents=u});this.subscriptions.push(r)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addItem",value:function(){this.addConstituent()}},{key:"addConstituent",value:function(){var a=this;this.substanceFormConstituentsService.addSubstanceConstituent(),setTimeout(function(){a.scrollToService.scrollToElement("substance-constituent-0","center")})}},{key:"deleteConstituent",value:function(a){this.substanceFormConstituentsService.deleteSubstanceConstituent(a)}}]),n}(S.u);return i.\u0275fac=function(e){return new(e||i)(t.Y36(P.D),t.Y36(A.i),t.Y36(M.$))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-form-constituents-card"]],features:[t.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"constituent","constituentDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,k,3,3,"div",2),t.TgZ(3,"div",0),t._UZ(4,"span",1),t.TgZ(5,"button",3),t.NdJ("click",function(){return n.addConstituent()}),t._uU(6," Add Constituent "),t._UZ(7,"mat-icon",4),t.qZA(),t.qZA()),2&e&&(t.xp6(2),t.Q6J("ngForOf",n.constituents))},directives:[l.sg,F.P,g,l.O5,h.d,p.lW,f.Hw],styles:[""]}),i}(),j=o(94673),E=o(26439),R=o(63200),z=o(24459),V=o(16667),H=o(84577),X=o(48302),W=function(){var i=(0,d.Z)(function c(){(0,m.Z)(this,c)});return i.\u0275fac=function(e){return new(e||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[l.ez,b.o.forChild($),T.O,h.t,f.Ps,p.ot,j.w,Z.lN,C.UX,C.u5,E.TU,y.c,R.U]]}),i}();t.B6R(g,[l.O5,p.lW,f.Hw,z.Q,V.S,H.h,X.V],[])}}]); -//# sourceMappingURL=2817.3f6134c2af0ce41b.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2817.f35a46c71a2c8315.js b/frontend/src/main/resources/static/2817.f35a46c71a2c8315.js new file mode 100644 index 0000000..916413b --- /dev/null +++ b/frontend/src/main/resources/static/2817.f35a46c71a2c8315.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[2817],{32817:function(L,v,o){o.r(v),o.d(v,{SubstanceFormConstituentsModule:function(){return W}});var d=o(1884),m=o(39117),l=o(36362),b=o(64061),Z=o(44770),y=o(43365),C=o(90587),T=o(7168),O=o(46751),x=o(56101),M=(o(27299),o(40104)),S=o(79550),P=o(26984),t=o(86613),A=o(78444),F=o(51279),U=o(18291),I=o(63169),D=o(27164),J=o(95758),N=o(54244);function _(i,c){if(1&i){var e=t.EpF();t.TgZ(0,"div",20),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",21),t.NdJ("click",function(){return t.CHM(e),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",22),t.qZA(),t.qZA()}}function w(i,c){if(1&i&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&i){var e=t.oxw();t.xp6(1),t.hij(" ",e.displayAmount(e.privateConstituent.amount)," ")}}function Q(i,c){if(1&i&&(t.TgZ(0,"div",2),t.TgZ(1,"div",23),t._UZ(2,"app-domain-references",24,25),t.qZA(),t.qZA()),2&i){var e=t.oxw();t.xp6(2),t.Q6J("referencesUuids",e.privateConstituent.references)}}var g=function(){var i=function(){function c(e,n,s,a){(0,m.Z)(this,c),this.cvService=e,this.dialog=n,this.utilsService=s,this.overlayContainerService=a,this.constituentDeleted=new t.vpe,this.subscriptions=[]}return(0,d.Z)(c,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"constituent",get:function(){return this.privateConstituent},set:function(n){this.privateConstituent=n,this.constituent.substance&&(this.relatedSubstanceUuid=this.privateConstituent.substance.refuuid)}},{key:"delete",value:function(){var n=this;this.privateConstituent.$$deletedCode=this.utilsService.newUUID(),this.privateConstituent.substance||(this.deleteTimer=setTimeout(function(){n.constituentDeleted.emit(n.privateConstituent)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateConstituent.$$deletedCode}},{key:"openAmountDialog",value:function(){var n=this;this.privateConstituent.amount||(this.privateConstituent.amount={});var s=this.dialog.open(D.O,{data:{subsAmount:this.privateConstituent.amount},width:"990px"});this.overlayContainer.style.zIndex="1002";var a=s.afterClosed().subscribe(function(u){n.overlayContainer.style.zIndex=null,u&&(n.privateConstituent.amount=u)});this.subscriptions.push(a)}},{key:"updateProcess",value:function(n){this.privateConstituent.role=n}},{key:"updateAccess",value:function(n){this.privateConstituent.access=n}},{key:"relatedSubstanceUpdated",value:function(n){this.privateConstituent.substance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.privateConstituent.substance.refuuid}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"formatValue",value:function(n){return n?"object"==typeof n?n.display?n.display:n.value?n.value:null:n:null}}]),c}();return i.\u0275fac=function(e){return new(e||i)(t.Y36(U.I),t.Y36(J.uw),t.Y36(I.FW),t.Y36(N.Xj))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-constituent-form"]],inputs:{constituent:"constituent"},outputs:{constituentDeleted:"constituentDeleted"},decls:21,vars:6,consts:[[1,"constituent-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Related Substance","header","Related Substance",3,"subuuid","selectionUpdated"],[1,"field-column"],[1,"role"],["domain","CONSTITUENT_ROLE","title","constituent role",3,"model","valueChange"],[1,"amount"],[1,"label","amt-label"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],[1,"amount-display"],[4,"ngIf"],[1,"access"],[3,"access","accessOut"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t.YNc(1,_,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"button",4),t.NdJ("click",function(){return n.delete()}),t._UZ(5,"mat-icon",5),t.qZA(),t.qZA(),t.TgZ(6,"div",6),t.TgZ(7,"app-substance-selector",7),t.NdJ("selectionUpdated",function(a){return n.relatedSubstanceUpdated(a)}),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.TgZ(10,"app-cv-input",10),t.NdJ("valueChange",function(a){return n.updateProcess(a)}),t.qZA(),t.qZA(),t.TgZ(11,"div",11),t.TgZ(12,"div",12),t._uU(13," Amount "),t.TgZ(14,"button",13),t.NdJ("click",function(){return n.openAmountDialog()}),t._UZ(15,"mat-icon",14),t.qZA(),t.qZA(),t.TgZ(16,"div",15),t.YNc(17,w,2,1,"div",16),t.qZA(),t.qZA(),t.qZA(),t.TgZ(18,"div",17),t.TgZ(19,"app-access-manager",18),t.NdJ("accessOut",function(a){return n.updateAccess(a)}),t.qZA(),t.qZA(),t.qZA(),t.YNc(20,Q,4,1,"div",19),t.qZA()),2&e&&(t.xp6(1),t.Q6J("ngIf",n.constituent.$$deletedCode),t.xp6(6),t.Q6J("subuuid",n.relatedSubstanceUuid),t.xp6(3),t.Q6J("model",n.privateConstituent.role),t.xp6(7),t.Q6J("ngIf",n.privateConstituent.amount),t.xp6(2),t.Q6J("access",n.constituent.access),t.xp6(1),t.Q6J("ngIf",!n.privateConstituent.$$deletedCode))},styles:[".constituent-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.related-substance[_ngcontent-%COMP%]{max-width:60%;width:60%;padding-right:20px} .related-substance img{max-width:125px!important;margin:auto}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{-ms-flex-align:start;align-items:flex-start;-ms-flex-line-pack:start;align-content:flex-start;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .field-column[_ngcontent-%COMP%]{width:70%}.form-row[_ngcontent-%COMP%] .field-column[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:100%;margin-top:37px}.form-row[_ngcontent-%COMP%] .field-column[_ngcontent-%COMP%] .role[_ngcontent-%COMP%]{width:100%;margin-bottom:10px}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%] .access[_ngcontent-%COMP%]{width:15%}.references-container[_ngcontent-%COMP%]{width:100%}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}"]}),i}(),h=o(19975),p=o(87317),f=o(65590);function k(i,c){1&i&&t._UZ(0,"mat-divider",8),2&i&&t.Q6J("inset",!0)}function Y(i,c){if(1&i){var e=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-constituent-form",6),t.NdJ("constituentDeleted",function(r){return t.CHM(e),t.oxw().deleteConstituent(r)}),t.qZA(),t.YNc(2,k,1,1,"mat-divider",7),t.qZA()}if(2&i){var n=c.$implicit,s=c.last;t.Q6J("id","substance-constituent-"+c.index),t.xp6(1),t.Q6J("constituent",n),t.xp6(1),t.Q6J("ngIf",!s)}}var $=function(){var i=function(c){(0,O.Z)(n,c);var e=(0,x.Z)(n);function n(s,a,u){var r;return(0,m.Z)(this,n),(r=e.call(this,u)).substanceFormConstituentsService=s,r.scrollToService=a,r.gaService=u,r.subscriptions=[],r.analyticsEventCategory="substance form constituents",r}return(0,d.Z)(n,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Constituents")}},{key:"ngAfterViewInit",value:function(){var a=this,u=this.substanceFormConstituentsService.substanceConstituents.subscribe(function(r){a.constituents=r});this.subscriptions.push(u)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addItem",value:function(){this.addConstituent()}},{key:"addConstituent",value:function(){var a=this;this.substanceFormConstituentsService.addSubstanceConstituent(),setTimeout(function(){a.scrollToService.scrollToElement("substance-constituent-0","center")})}},{key:"deleteConstituent",value:function(a){this.substanceFormConstituentsService.deleteSubstanceConstituent(a)}}]),n}(S.u);return i.\u0275fac=function(e){return new(e||i)(t.Y36(P.D),t.Y36(A.i),t.Y36(M.$))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-form-constituents-card"]],features:[t.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"constituent","constituentDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,Y,3,3,"div",2),t.TgZ(3,"div",0),t._UZ(4,"span",1),t.TgZ(5,"button",3),t.NdJ("click",function(){return n.addConstituent()}),t._uU(6," Add Constituent "),t._UZ(7,"mat-icon",4),t.qZA(),t.qZA()),2&e&&(t.xp6(2),t.Q6J("ngForOf",n.constituents))},directives:[l.sg,F.P,g,l.O5,h.d,p.lW,f.Hw],styles:[""]}),i}(),j=o(94673),E=o(26439),R=o(63200),z=o(24459),V=o(16667),H=o(84577),X=o(48302),W=function(){var i=(0,d.Z)(function c(){(0,m.Z)(this,c)});return i.\u0275fac=function(e){return new(e||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[l.ez,b.o.forChild($),T.O,h.t,f.Ps,p.ot,j.w,Z.lN,C.UX,C.u5,E.TU,y.c,R.U]]}),i}();t.B6R(g,[l.O5,p.lW,f.Hw,z.Q,V.S,H.h,X.V],[])}}]); +//# sourceMappingURL=2817.f35a46c71a2c8315.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/2817.3f6134c2af0ce41b.js.map b/frontend/src/main/resources/static/2817.f35a46c71a2c8315.js.map similarity index 98% rename from frontend/src/main/resources/static/2817.3f6134c2af0ce41b.js.map rename to frontend/src/main/resources/static/2817.f35a46c71a2c8315.js.map index efff5ab..c3f17c5 100644 --- a/frontend/src/main/resources/static/2817.3f6134c2af0ce41b.js.map +++ b/frontend/src/main/resources/static/2817.f35a46c71a2c8315.js.map @@ -1 +1 @@ -{"version":3,"mappings":"gdAEEA,kBACEA,yBACAA,qBAA0CA,iDAASC,eACjDD,uBACFA,QACFA,kCA4BMA,eACEA,SACFA,4BADEA,+FAURA,iBACEA,kBACEA,uCACFA,QACFA,4BAF2BA,mEClCtB,IAAME,EAAb,eAAaA,EAAb,WASE,WACUC,EACAC,EACAC,EACAC,MAAyCC,aAHzCC,iBACAA,cACAA,oBACAA,+BAXAA,wBAAqB,IAAIC,MAG3BD,mBAAqC,GAL/C,uCAeE,WACEA,KAAKE,iBAAmBF,KAAKF,wBAAwBK,wBAhBzD,uBA4BE,WACE,OAAOH,KAAKI,oBA7BhBC,IAmBE,SACgBC,GACdN,KAAKI,mBAAqBE,EACtBN,KAAKM,YAAYC,YACnBP,KAAKQ,qBAAuBR,KAAKI,mBAAmBG,UAAUE,WAvBpE,oBAgCE,WAAM,WACJT,KAAKI,mBAAmBM,cAAgBV,KAAKH,aAAac,UACrDX,KAAKI,mBAAmBG,YAC3BP,KAAKY,YAAcC,WAAW,WAC5BC,EAAKC,mBAAmBC,KAAKF,EAAKV,qBACjC,QArCT,wBAyCE,WACEa,aAAajB,KAAKY,oBACXZ,KAAKI,mBAAmBM,gBA3CnC,8BA8CE,WAAgB,WACTV,KAAKI,mBAAmBc,SAC3BlB,KAAKI,mBAAmBc,OAAS,IAEnC,IAAMC,EAAYnB,KAAKJ,OAAOwB,KAAKC,IAA2B,CAC5DC,KAAM,CAACC,WAAcvB,KAAKI,mBAAmBc,QAC7CM,MAAO,UAETxB,KAAKE,iBAAiBuB,MAAMC,OAAS,OAErC,IAAMC,EAAqBR,EAAUS,cAAcC,UAAU,YAC3Df,EAAKZ,iBAAiBuB,MAAMC,OAAS,KACjCI,IACFhB,EAAKV,mBAAmBc,OAASY,KAGrC9B,KAAK+B,cAAcC,KAAKL,KA9D5B,2BAiEE,SAAcM,GACZjC,KAAKI,mBAAmB8B,KAAOD,IAlEnC,0BAqEE,SAAaE,GACXnC,KAAKI,mBAAmB+B,OAASA,IAtErC,qCAyEE,SAAwB5B,GAQtBP,KAAKI,mBAAmBG,UAPmB,CACzC6B,SAAU7B,EAAU8B,MACpBC,KAAM/B,EAAU8B,MAChB5B,QAASF,EAAUgC,KACnBC,eAAgB,YAChBC,WAAYlC,EAAUkC,YAGxBzC,KAAKQ,qBAAuBR,KAAKI,mBAAmBG,UAAUE,UAlFlE,2BAqFE,SAAciC,GACZ,OAAO1C,KAAKH,aAAa8C,cAAcD,KAtF3C,yBAyFE,SAAYE,GACV,OAAIA,EACe,iBAANA,EACLA,EAAEC,QACGD,EAAEC,QACAD,EAAEE,MACJF,EAAEE,MAEF,KAGFF,EAGJ,SAvGXG,kDAAarD,GAAwBF,yEAAxBE,EAAwBsD,uiCDdrCxD,iBAEEA,uBAMAA,iBACAA,iBACEA,oBAAiDA,gCAASyD,aACxDzD,sBACFA,QACFA,QAEAA,iBACEA,oCAAwBA,4CAAoByD,+BAG5CzD,QACFA,QACAA,iBACEA,iBACEA,4BAAyGA,uCAAeyD,qBAAuBzD,QACjJA,QAEAA,mBACEA,mBACEA,qBACAA,sBAAyCA,gCAAUyD,uBACjDzD,wBACFA,QACFA,QAEAA,mBACEA,yBAGFA,QACFA,QACFA,QACEA,mBACEA,kCAAoBA,qCAAayD,oBACjCzD,QACFA,QACFA,QACAA,yBAMFA,eAlDQA,mDAgBoBA,iDAK+CA,kDAY7DA,mDAO+CA,8CAIpCA,orEChCZE,EAAb,yDCNIF,8BAAkCA,wDAFpCA,iBACEA,kCAAkDA,+DAAsB0D,uBAA2B1D,QACnGA,+BACFA,2CAHmIA,6CAC3GA,gCAC4BA,2BCK/C,IAAM2D,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACAC,EACDC,GAAiC,6BAExCC,cAAMD,IAJEF,mCACAG,oBACDA,cALDA,gBAAqC,GAQ3CA,EAAKC,uBAAyB,8BAHUD,EAR5C,uCAcE,WACEvD,KAAKyD,iBAAiBzC,MAAK,GAC3BhB,KAAK0D,gBAAgB1C,KAAK,kBAhB9B,6BAmBE,WAAe,WACP2C,EAAoB3D,KAAKoD,iCAAiCQ,sBAAsB/B,UAAU,YAC9FgC,EAAKC,aAAeA,IAEtB9D,KAAK+B,cAAcC,KAAK2B,KAvB5B,yBA0BE,WACE3D,KAAK+D,mBAAmB/C,OACxBhB,KAAK+B,cAAciC,QAAQ,YACzBC,EAAaC,kBA7BnB,qBAiCE,WACElE,KAAKmE,mBAlCT,4BAqCE,WAAc,WACZnE,KAAKoD,iCAAiCgB,0BACtCvD,WAAW,WACTgD,EAAKR,gBAAgBgB,gBAArB,0BAAgE,cAxCtE,+BA4CE,SAAkB/D,GAChBN,KAAKoD,iCAAiCkB,2BAA2BhE,OA7CrEQ,GAA4DyD,kDAA/CpB,GAAsC3D,2DAAtC2D,EAAsCH,udDbnDxD,iBACEA,kBAIFA,QACEA,uBAMAA,iBACIA,kBACGA,oBAAmBA,gCAASyD,qBAC3BzD,6BAAgBA,sBAClBA,QACRA,eAXiEA,oGCOpD2D,EAAb,gFCyBaqB,EAAb,eAAaA,KAAbC,iFAAaD,4DApBF,CACPE,KACAC,aAAsCxB,GACtCyB,IACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,IACAC,QAOSd,EAAb,SAHI9E,EAAwB","names":["i0","ctx_r3","ConstituentFormComponent","cvService","dialog","utilsService","overlayContainerService","m","this","EventEmitter","overlayContainer","getContainerElement","privateConstituent","set","constituent","substance","relatedSubstanceUuid","refuuid","$$deletedCode","newUUID","deleteTimer","setTimeout","n","constituentDeleted","emit","clearTimeout","amount","dialogRef","open","AmountFormDialogComponent","data","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","subscribe","newAmount","subscriptions","push","event","role","access","refPname","_name","name","uuid","substanceClass","approvalID","amt","displayAmount","v","display","value","c","selectors","ctx","ctx_r5","SubstanceFormConstituentsCardComponent","substanceFormConstituentsService","scrollToService","gaService","u","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","agentSubscription","substanceConstituents","a","constituents","componentDestroyed","forEach","subscription","unsubscribe","addConstituent","addSubstanceConstituent","scrollToElement","deleteSubstanceConstituent","SubstanceCardBaseFilteredList","SubstanceFormConstituentsModule","d","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/constituents/constituent-form.component.html","./src/app/core/substance-form/constituents/constituent-form.component.ts","./src/app/core/substance-form/constituents/substance-form-constituents-card.component.html","./src/app/core/substance-form/constituents/substance-form-constituents-card.component.ts","./src/app/core/substance-form/constituents/substance-form-constituents.module.ts"],"sourcesContent":["
\n\n
\n Deleted \n \n
\n
\n
\n \n
\n\n
\n \n \n
\n
\n
\n \n
\n\n
\n
\n Amount\n \n
\n\n
\n
\n {{displayAmount(privateConstituent.amount)}}\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n
\n
\n\n
\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {AgentModification, Constituent, SubstanceAmount, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\n\n@Component({\n selector: 'app-constituent-form',\n templateUrl: './constituent-form.component.html',\n styleUrls: ['./constituent-form.component.scss']\n})\nexport class ConstituentFormComponent implements OnInit {\n privateConstituent: Constituent;\n @Output() constituentDeleted = new EventEmitter();\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer\n ) { }\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set constituent(constituent: Constituent) {\n this.privateConstituent = constituent;\n if (this.constituent.substance) {\n this.relatedSubstanceUuid = this.privateConstituent.substance.refuuid;\n }\n\n }\n\n get constituent(): Constituent {\n return this.privateConstituent;\n }\n\n delete(): void {\n this.privateConstituent.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateConstituent.substance) {\n this.deleteTimer = setTimeout(() => {\n this.constituentDeleted.emit(this.privateConstituent);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateConstituent.$$deletedCode;\n }\n\n openAmountDialog(): void {\n if (!this.privateConstituent.amount) {\n this.privateConstituent.amount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.privateConstituent.amount},\n width: '990px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n if (newAmount) {\n this.privateConstituent.amount = newAmount;\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateProcess(event: string) {\n this.privateConstituent.role = event;\n }\n\n updateAccess(access: Array): void {\n this.privateConstituent.access = access;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.privateConstituent.substance = relatedSubstance;\n this.relatedSubstanceUuid = this.privateConstituent.substance.refuuid;\n }\n\n displayAmount(amt: SubstanceAmount): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n\n
\n \n \n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {AgentModification, Constituent} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormConstituentsService } from './substance-form-constituents.service';\n\n@Component({\n selector: 'app-substance-form-constituents-card',\n templateUrl: './substance-form-constituents-card.component.html',\n styleUrls: ['./substance-form-constituents-card.component.scss']\n})\nexport class SubstanceFormConstituentsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n constituents: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormConstituentsService: SubstanceFormConstituentsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form constituents';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Constituents');\n }\n\n ngAfterViewInit() {\n const agentSubscription = this.substanceFormConstituentsService.substanceConstituents.subscribe(constituents => {\n this.constituents = constituents;\n });\n this.subscriptions.push(agentSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addConstituent();\n }\n\n addConstituent(): void {\n this.substanceFormConstituentsService.addSubstanceConstituent();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-constituent-0`, 'center');\n });\n }\n\n deleteConstituent(constituent: Constituent): void {\n this.substanceFormConstituentsService.deleteSubstanceConstituent(constituent);\n }\n\n}\n","\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport {SubstanceFormConstituentsCardComponent} from '@gsrs-core/substance-form/constituents/substance-form-constituents-card.component';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport { ConstituentFormComponent } from './constituent-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormConstituentsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormConstituentsCardComponent,\n ConstituentFormComponent\n ]\n})\nexport class SubstanceFormConstituentsModule { }\n"],"sourceRoot":"webpack:///","file":"2817.3f6134c2af0ce41b.js"} \ No newline at end of file +{"version":3,"mappings":"gdAEEA,kBACEA,yBACAA,qBAA0CA,iDAASC,eACjDD,uBACFA,QACFA,kCA4BMA,eACEA,SACFA,4BADEA,+FAURA,iBACEA,kBACEA,uCACFA,QACFA,4BAF2BA,mEClCtB,IAAME,EAAb,eAAaA,EAAb,WASE,WACUC,EACAC,EACAC,EACAC,MAAyCC,aAHzCC,iBACAA,cACAA,oBACAA,+BAXAA,wBAAqB,IAAIC,MAG3BD,mBAAqC,GAL/C,uCAeE,WACEA,KAAKE,iBAAmBF,KAAKF,wBAAwBK,wBAhBzD,uBA4BE,WACE,OAAOH,KAAKI,oBA7BhBC,IAmBE,SACgBC,GACdN,KAAKI,mBAAqBE,EACtBN,KAAKM,YAAYC,YACnBP,KAAKQ,qBAAuBR,KAAKI,mBAAmBG,UAAUE,WAvBpE,oBAgCE,WAAM,WACJT,KAAKI,mBAAmBM,cAAgBV,KAAKH,aAAac,UACrDX,KAAKI,mBAAmBG,YAC3BP,KAAKY,YAAcC,WAAW,WAC5BC,EAAKC,mBAAmBC,KAAKF,EAAKV,qBACjC,QArCT,wBAyCE,WACEa,aAAajB,KAAKY,oBACXZ,KAAKI,mBAAmBM,gBA3CnC,8BA8CE,WAAgB,WACTV,KAAKI,mBAAmBc,SAC3BlB,KAAKI,mBAAmBc,OAAS,IAEnC,IAAMC,EAAYnB,KAAKJ,OAAOwB,KAAKC,IAA2B,CAC5DC,KAAM,CAACC,WAAcvB,KAAKI,mBAAmBc,QAC7CM,MAAO,UAETxB,KAAKE,iBAAiBuB,MAAMC,OAAS,OAErC,IAAMC,EAAqBR,EAAUS,cAAcC,UAAU,YAC3Df,EAAKZ,iBAAiBuB,MAAMC,OAAS,KACjCI,IACFhB,EAAKV,mBAAmBc,OAASY,KAGrC9B,KAAK+B,cAAcC,KAAKL,KA9D5B,2BAiEE,SAAcM,GACZjC,KAAKI,mBAAmB8B,KAAOD,IAlEnC,0BAqEE,SAAaE,GACXnC,KAAKI,mBAAmB+B,OAASA,IAtErC,qCAyEE,SAAwB5B,GAQtBP,KAAKI,mBAAmBG,UAPmB,CACzC6B,SAAU7B,EAAU8B,MACpBC,KAAM/B,EAAU8B,MAChB5B,QAASF,EAAUgC,KACnBC,eAAgB,YAChBC,WAAYlC,EAAUkC,YAGxBzC,KAAKQ,qBAAuBR,KAAKI,mBAAmBG,UAAUE,UAlFlE,2BAqFE,SAAciC,GACZ,OAAO1C,KAAKH,aAAa8C,cAAcD,KAtF3C,yBAyFE,SAAYE,GACV,OAAIA,EACe,iBAANA,EACLA,EAAEC,QACGD,EAAEC,QACAD,EAAEE,MACJF,EAAEE,MAEF,KAGFF,EAGJ,SAvGXG,kDAAarD,GAAwBF,yEAAxBE,EAAwBsD,uiCDdrCxD,iBAEEA,uBAMAA,iBACAA,iBACEA,oBAAiDA,gCAASyD,aACxDzD,sBACFA,QACFA,QAEAA,iBACEA,oCAAwBA,4CAAoByD,+BAG5CzD,QACFA,QACAA,iBACEA,iBACEA,4BAAyGA,uCAAeyD,qBAAuBzD,QACjJA,QAEAA,mBACEA,mBACEA,qBACAA,sBAAyCA,gCAAUyD,uBACjDzD,wBACFA,QACFA,QAEAA,mBACEA,yBAGFA,QACFA,QACFA,QACEA,mBACEA,kCAAoBA,qCAAayD,oBACjCzD,QACFA,QACFA,QACAA,yBAMFA,eAlDQA,mDAgBoBA,iDAK+CA,kDAY7DA,mDAO+CA,8CAIpCA,8sEChCZE,EAAb,yDCNIF,8BAAkCA,wDAFpCA,iBACEA,kCAAkDA,+DAAsB0D,uBAA2B1D,QACnGA,+BACFA,2CAHmIA,6CAC3GA,gCAC4BA,2BCK/C,IAAM2D,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACAC,EACDC,GAAiC,6BAExCC,cAAMD,IAJEF,mCACAG,oBACDA,cALDA,gBAAqC,GAQ3CA,EAAKC,uBAAyB,8BAHUD,EAR5C,uCAcE,WACEvD,KAAKyD,iBAAiBzC,MAAK,GAC3BhB,KAAK0D,gBAAgB1C,KAAK,kBAhB9B,6BAmBE,WAAe,WACP2C,EAAoB3D,KAAKoD,iCAAiCQ,sBAAsB/B,UAAU,YAC9FgC,EAAKC,aAAeA,IAEtB9D,KAAK+B,cAAcC,KAAK2B,KAvB5B,yBA0BE,WACE3D,KAAK+D,mBAAmB/C,OACxBhB,KAAK+B,cAAciC,QAAQ,YACzBC,EAAaC,kBA7BnB,qBAiCE,WACElE,KAAKmE,mBAlCT,4BAqCE,WAAc,WACZnE,KAAKoD,iCAAiCgB,0BACtCvD,WAAW,WACTgD,EAAKR,gBAAgBgB,gBAArB,0BAAgE,cAxCtE,+BA4CE,SAAkB/D,GAChBN,KAAKoD,iCAAiCkB,2BAA2BhE,OA7CrEQ,GAA4DyD,kDAA/CpB,GAAsC3D,2DAAtC2D,EAAsCH,udDbnDxD,iBACEA,kBAIFA,QACEA,uBAMAA,iBACIA,kBACGA,oBAAmBA,gCAASyD,qBAC3BzD,6BAAgBA,sBAClBA,QACRA,eAXiEA,oGCOpD2D,EAAb,gFCyBaqB,EAAb,eAAaA,KAAbC,iFAAaD,4DApBF,CACPE,KACAC,aAAsCxB,GACtCyB,IACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,IACAC,QAOSd,EAAb,SAHI9E,EAAwB","names":["i0","ctx_r3","ConstituentFormComponent","cvService","dialog","utilsService","overlayContainerService","m","this","EventEmitter","overlayContainer","getContainerElement","privateConstituent","set","constituent","substance","relatedSubstanceUuid","refuuid","$$deletedCode","newUUID","deleteTimer","setTimeout","n","constituentDeleted","emit","clearTimeout","amount","dialogRef","open","AmountFormDialogComponent","data","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","subscribe","newAmount","subscriptions","push","event","role","access","refPname","_name","name","uuid","substanceClass","approvalID","amt","displayAmount","v","display","value","c","selectors","ctx","ctx_r5","SubstanceFormConstituentsCardComponent","substanceFormConstituentsService","scrollToService","gaService","r","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","agentSubscription","substanceConstituents","a","constituents","componentDestroyed","forEach","subscription","unsubscribe","addConstituent","addSubstanceConstituent","scrollToElement","deleteSubstanceConstituent","SubstanceCardBaseFilteredList","SubstanceFormConstituentsModule","d","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/constituents/constituent-form.component.html","./src/app/core/substance-form/constituents/constituent-form.component.ts","./src/app/core/substance-form/constituents/substance-form-constituents-card.component.html","./src/app/core/substance-form/constituents/substance-form-constituents-card.component.ts","./src/app/core/substance-form/constituents/substance-form-constituents.module.ts"],"sourcesContent":["
\n\n
\n Deleted \n \n
\n
\n
\n \n
\n\n
\n \n \n
\n
\n
\n \n
\n\n
\n
\n Amount\n \n
\n\n
\n
\n {{displayAmount(privateConstituent.amount)}}\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n
\n
\n\n
\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {AgentModification, Constituent, SubstanceAmount, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\n\n@Component({\n selector: 'app-constituent-form',\n templateUrl: './constituent-form.component.html',\n styleUrls: ['./constituent-form.component.scss']\n})\nexport class ConstituentFormComponent implements OnInit {\n privateConstituent: Constituent;\n @Output() constituentDeleted = new EventEmitter();\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer\n ) { }\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set constituent(constituent: Constituent) {\n this.privateConstituent = constituent;\n if (this.constituent.substance) {\n this.relatedSubstanceUuid = this.privateConstituent.substance.refuuid;\n }\n\n }\n\n get constituent(): Constituent {\n return this.privateConstituent;\n }\n\n delete(): void {\n this.privateConstituent.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateConstituent.substance) {\n this.deleteTimer = setTimeout(() => {\n this.constituentDeleted.emit(this.privateConstituent);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateConstituent.$$deletedCode;\n }\n\n openAmountDialog(): void {\n if (!this.privateConstituent.amount) {\n this.privateConstituent.amount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.privateConstituent.amount},\n width: '990px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n if (newAmount) {\n this.privateConstituent.amount = newAmount;\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateProcess(event: string) {\n this.privateConstituent.role = event;\n }\n\n updateAccess(access: Array): void {\n this.privateConstituent.access = access;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.privateConstituent.substance = relatedSubstance;\n this.relatedSubstanceUuid = this.privateConstituent.substance.refuuid;\n }\n\n displayAmount(amt: SubstanceAmount): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n\n
\n \n \n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {AgentModification, Constituent} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormConstituentsService } from './substance-form-constituents.service';\n\n@Component({\n selector: 'app-substance-form-constituents-card',\n templateUrl: './substance-form-constituents-card.component.html',\n styleUrls: ['./substance-form-constituents-card.component.scss']\n})\nexport class SubstanceFormConstituentsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n constituents: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormConstituentsService: SubstanceFormConstituentsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form constituents';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Constituents');\n }\n\n ngAfterViewInit() {\n const agentSubscription = this.substanceFormConstituentsService.substanceConstituents.subscribe(constituents => {\n this.constituents = constituents;\n });\n this.subscriptions.push(agentSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addConstituent();\n }\n\n addConstituent(): void {\n this.substanceFormConstituentsService.addSubstanceConstituent();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-constituent-0`, 'center');\n });\n }\n\n deleteConstituent(constituent: Constituent): void {\n this.substanceFormConstituentsService.deleteSubstanceConstituent(constituent);\n }\n\n}\n","\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport {SubstanceFormConstituentsCardComponent} from '@gsrs-core/substance-form/constituents/substance-form-constituents-card.component';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport { ConstituentFormComponent } from './constituent-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormConstituentsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormConstituentsCardComponent,\n ConstituentFormComponent\n ]\n})\nexport class SubstanceFormConstituentsModule { }\n"],"sourceRoot":"webpack:///","file":"2817.f35a46c71a2c8315.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/3127.603341e2ce7facfb.js b/frontend/src/main/resources/static/3127.603341e2ce7facfb.js deleted file mode 100644 index 07b0558..0000000 --- a/frontend/src/main/resources/static/3127.603341e2ce7facfb.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[3127],{93127:function(q,f,i){i.r(f),i.d(f,{SubstanceFormLinksModule:function(){return W}});var m=i(48047),v=i(78069),d=i(36362),L=i(75143),y=i(7168),h=i(19975),g=i(65590),p=i(87317),S=i(94673),Z=i(44770),k=i(90587),T=i(26439),x=i(43365),C=i(40089),F=i(31959),I=i(24582),A=i(7318),D=i(79550),b=i(33567),O=i(40104),U=i(21109),t=i(76442),M=i(78444),N=i(51279),E=i(18291),J=i(63169),P=i(39401),Y=i(59295),Q=i(95758),R=i(66088),j=i(16667),V=i(14900);function $(o,l){if(1&o){var e=t.EpF();t.TgZ(0,"div",16),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",17),t.NdJ("click",function(){return t.CHM(e),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",18),t.qZA(),t.qZA()}}function G(o,l){if(1&o&&(t.TgZ(0,"div"),t._UZ(1,"img",19),t.qZA()),2&o){var e=t.oxw();t.xp6(1),t.Q6J("src",e.structure,t.LSH)}}var z=function(){var o=function(){function l(e,n,a,s,u){(0,v.Z)(this,l),this.cvService=e,this.dialog=n,this.utilsService=a,this.overlayContainerService=s,this.substanceFormService=u,this.linkDeleted=new t.vpe,this.subscriptions=[],this.structure=null}return(0,m.Z)(l,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay()}},{key:"getStructure",value:function(){var n=this;this.smiles=this.vocabulary[this.privateLink.linkage],this.smiles&&this.smiles.fragmentStructure?this.structure=this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure):this.cvService.getDomainVocabulary("NUCLEIC_ACID_LINKAGE").pipe((0,Y.q)(1)).subscribe(function(a){var u=!1;a.NUCLEIC_ACID_LINKAGE.list.forEach(function(c){c.value===n.privateLink.linkage&&(n.smiles=c,u=!0,n.structure=n.cvService.getStructureUrlFragment(n.smiles.fragmentStructure))}),u||(n.structure=null)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"link",get:function(){return this.updateDisplay(),this.privateLink},set:function(n){this.privateLink=n,this.getStructure()}},{key:"updateLinkage",value:function(n){this.privateLink.linkage=n,this.getStructure()}},{key:"addRemainingSites",value:function(){this.privateLink.sites=this.privateLink.sites?this.privateLink.sites.concat(this.remaining):this.remaining,this.updateDisplay(),this.substanceFormService.emitLinkUpdate()}},{key:"updateDisplay",value:function(){this.privateLink&&(this.siteDisplay=this.substanceFormService.siteString(this.privateLink.sites))}},{key:"deleteLink",value:function(){var n=this;this.privateLink.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){n.linkDeleted.emit(n.link),n.substanceFormService.emitLinkUpdate()},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateLink.$$deletedCode}},{key:"getVocabularies",value:function(){var n=this,a=this.cvService.getDomainVocabulary("NUCLEIC_ACID_LINKAGE").subscribe(function(s){n.linkageTypes=s.NUCLEIC_ACID_LINKAGE.list,n.vocabulary=s.NUCLEIC_ACID_LINKAGE.dictionary,n.smiles=n.vocabulary[n.privateLink.linkage],n.getStructure()});this.subscriptions.push(a)}},{key:"openDialog",value:function(){var n=this,a=this.dialog.open(P.r,{data:{card:"link",link:this.privateLink.sites},width:"1040px"});this.overlayContainer.style.zIndex="1002";var s=a.afterClosed().subscribe(function(u){n.overlayContainer.style.zIndex=null,u&&(n.privateLink.sites=u),n.updateDisplay(),n.substanceFormService.emitLinkUpdate()});this.subscriptions.push(s)}}]),l}();return o.\u0275fac=function(e){return new(e||o)(t.Y36(E.I),t.Y36(Q.uw),t.Y36(J.FW),t.Y36(R.Xj),t.Y36(b.B))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-link-form"]],inputs:{remaining:"remaining",link:"link"},outputs:{linkDeleted:"linkDeleted"},decls:19,vars:8,consts:[[1,"link-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[4,"ngIf"],[1,"type"],["domain","NUCLEIC_ACID_LINKAGE","title","Sequence Type",3,"model","valueChange"],[1,"addRemaining"],["mat-flat-button","","mat-primary","",3,"matTooltip","disabled","click"],[1,"links"],[1,"label"],["mat-icon-button","","matTooltip","Select sites from display",3,"click"],["svgIcon","edit"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"structure-image",3,"src"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t.YNc(1,$,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"button",4),t.NdJ("click",function(){return n.deleteLink()}),t._UZ(5,"mat-icon",5),t.qZA(),t.qZA(),t.YNc(6,G,2,1,"div",6),t.TgZ(7,"div",7),t.TgZ(8,"app-cv-input",8),t.NdJ("valueChange",function(s){return n.updateLinkage(s)}),t.qZA(),t.qZA(),t.TgZ(9,"div",9),t.TgZ(10,"button",10),t.NdJ("click",function(){return n.addRemainingSites()}),t._uU(11),t.qZA(),t.qZA(),t.TgZ(12,"div",11),t.TgZ(13,"div",12),t._uU(14,"link"),t.qZA(),t._uU(15),t.TgZ(16,"button",13),t.NdJ("click",function(){return n.openDialog()}),t._UZ(17,"mat-icon",14),t.qZA(),t.qZA(),t.qZA(),t._UZ(18,"app-audit-info",15),t.qZA()),2&e&&(t.xp6(1),t.Q6J("ngIf",n.link.$$deletedCode),t.xp6(5),t.Q6J("ngIf",n.structure),t.xp6(2),t.Q6J("model",n.privateLink.linkage),t.xp6(2),t.MGl("matTooltip","Add remaining ",n.remaining.length," sites"),t.Q6J("disabled",0===n.remaining.length),t.xp6(1),t.hij(" add remaining ",n.remaining.length," sites "),t.xp6(4),t.hij(" ",n.siteDisplay," "),t.xp6(3),t.Q6J("source",n.privateLink))},directives:[d.O5,p.lW,C.gM,g.Hw,j.S,V.n],styles:[".link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%;margin-right:5px}.form-row[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{width:40%}.form-row[_ngcontent-%COMP%] .addRemaining[_ngcontent-%COMP%]{width:20%}.selectedSite[_ngcontent-%COMP%]{padding-left:2px;padding-right:2px}.structure-image[_ngcontent-%COMP%]{margin-bottom:-20px;margin-left:-10px}"]}),o}();function K(o,l){1&o&&t._UZ(0,"mat-divider",10),2&o&&t.Q6J("inset",!0)}function H(o,l){if(1&o){var e=t.EpF();t.TgZ(0,"div",7),t.TgZ(1,"app-link-form",8),t.NdJ("linkDeleted",function(r){return t.CHM(e),t.oxw().deleteLink(r)}),t.qZA(),t.YNc(2,K,1,1,"mat-divider",9),t.qZA()}if(2&o){var n=l.$implicit,a=l.last,s=l.index,u=t.oxw();t.Q6J("id","substance-other-links-"+s),t.xp6(1),t.Q6J("link",n)("remaining",u.remainingSites),t.xp6(1),t.Q6J("ngIf",!a)}}var X=function(){var o=function(l){(0,I.Z)(n,l);var e=(0,A.Z)(n);function n(a,s,u,c){var r;return(0,v.Z)(this,n),(r=e.call(this,c)).substanceFormLinksService=a,r.substanceFormService=s,r.scrollToService=u,r.gaService=c,r.remainingSites=[],r.invalidSites=0,r.subscriptions=[],r.analyticsEventCategory="substance form links",r}return(0,m.Z)(n,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Links")}},{key:"ngAfterViewInit",value:function(){var s=this,u=this.substanceFormLinksService.substanceLinks.subscribe(function(r){s.links=r,s.getRemainingSites()});this.subscriptions.push(u);var c=this.substanceFormService.substanceSubunits.subscribe(function(r){s.subunits=r,s.getRemainingSites()});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(s){s.unsubscribe()})}},{key:"getRemainingSites",value:function(){var s=[],u=[];this.subunits&&this.links&&(this.subunits.forEach(function(c){if(null!=c.sequence&&c.sequence.length>0)for(var r=2;r<=c.sequence.length;r++)u.push({subunitIndex:c.subunitIndex,residueIndex:r})}),this.links.forEach(function(c){s=s.concat(c.sites)})),this.remainingSites=u.filter(function(c){return!s.some(function(r){return c.subunitIndex===r.subunitIndex&&c.residueIndex===r.residueIndex})}),this.invalidSites=u.length-s.length}},{key:"addItem",value:function(){this.addOtherLink()}},{key:"addOtherLink",value:function(){var s=this;this.substanceFormLinksService.addSubstanceLink(),setTimeout(function(){s.scrollToService.scrollToElement("substance-other-links-0","center")})}},{key:"deleteLink",value:function(s){this.substanceFormLinksService.deleteSubstanceLink(s)}}]),n}(D.u);return o.\u0275fac=function(e){return new(e||o)(t.Y36(U.e),t.Y36(b.B),t.Y36(M.i),t.Y36(O.$))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-form-links"]],features:[t.qOj],decls:10,vars:3,consts:[[1,"responsive"],[1,"form-row"],[1,"form-row",3,"ngClass"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],[1,"middle-fill"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"link","remaining","linkDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t._UZ(1,"div",1),t.TgZ(2,"div",2),t._uU(3),t.qZA(),t.YNc(4,H,3,4,"div",3),t.TgZ(5,"div",1),t._UZ(6,"span",4),t.TgZ(7,"button",5),t.NdJ("click",function(){return n.addOtherLink()}),t._uU(8," Add linkage "),t._UZ(9,"mat-icon",6),t.qZA(),t.qZA(),t.qZA()),2&e&&(t.xp6(2),t.Q6J("ngClass",0===n.invalidSites?"":"too-many"),t.xp6(1),t.hij("Remaining Links: ",0===n.invalidSites?n.remainingSites.length:n.invalidSites,""),t.xp6(1),t.Q6J("ngForOf",n.links))},directives:[d.mk,d.sg,N.P,z,d.O5,h.d,p.lW,g.Hw],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding:5 10px;-ms-flex-align:end;align-items:flex-end;font-size:18px;margin-bottom:5px}.too-many[_ngcontent-%COMP%]{color:red}"]}),o}(),B=i(91434),W=(i(64061),function(){var o=(0,m.Z)(function l(){(0,v.Z)(this,l)});return o.\u0275fac=function(e){return new(e||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[d.ez,L.o0.forChild(X),y.O,h.t,g.Ps,p.ot,S.w,Z.lN,k.UX,k.u5,T.TU,C.AV,F.vV,x.c,B.LD]]}),o}())}}]); -//# sourceMappingURL=3127.603341e2ce7facfb.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/3127.f0d2e72b1ebc6e53.js b/frontend/src/main/resources/static/3127.f0d2e72b1ebc6e53.js new file mode 100644 index 0000000..ae51fc9 --- /dev/null +++ b/frontend/src/main/resources/static/3127.f0d2e72b1ebc6e53.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[3127],{93127:function(q,f,i){i.r(f),i.d(f,{SubstanceFormLinksModule:function(){return W}});var m=i(1884),v=i(39117),d=i(36362),L=i(75143),y=i(7168),h=i(19975),g=i(65590),p=i(87317),S=i(94673),Z=i(44770),k=i(90587),T=i(26439),x=i(43365),C=i(40089),F=i(31959),I=i(46751),A=i(56101),D=i(79550),b=i(33567),O=i(40104),U=i(21109),n=i(86613),M=i(78444),N=i(51279),E=i(18291),J=i(63169),P=i(39401),Y=i(59295),Q=i(95758),R=i(54244),j=i(16667),V=i(14900);function $(o,l){if(1&o){var e=n.EpF();n.TgZ(0,"div",16),n._uU(1," Deleted\xa0 "),n.TgZ(2,"button",17),n.NdJ("click",function(){return n.CHM(e),n.oxw().undoDelete()}),n._UZ(3,"mat-icon",18),n.qZA(),n.qZA()}}function G(o,l){if(1&o&&(n.TgZ(0,"div"),n._UZ(1,"img",19),n.qZA()),2&o){var e=n.oxw();n.xp6(1),n.Q6J("src",e.structure,n.LSH)}}var z=function(){var o=function(){function l(e,t,a,s,u){(0,v.Z)(this,l),this.cvService=e,this.dialog=t,this.utilsService=a,this.overlayContainerService=s,this.substanceFormService=u,this.linkDeleted=new n.vpe,this.subscriptions=[],this.structure=null}return(0,m.Z)(l,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay()}},{key:"getStructure",value:function(){var t=this;this.smiles=this.vocabulary[this.privateLink.linkage],this.smiles&&this.smiles.fragmentStructure?this.structure=this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure):this.cvService.getDomainVocabulary("NUCLEIC_ACID_LINKAGE").pipe((0,Y.q)(1)).subscribe(function(a){var u=!1;a.NUCLEIC_ACID_LINKAGE.list.forEach(function(c){c.value===t.privateLink.linkage&&(t.smiles=c,u=!0,t.structure=t.cvService.getStructureUrlFragment(t.smiles.fragmentStructure))}),u||(t.structure=null)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"link",get:function(){return this.updateDisplay(),this.privateLink},set:function(t){this.privateLink=t,this.getStructure()}},{key:"updateLinkage",value:function(t){this.privateLink.linkage=t,this.getStructure()}},{key:"addRemainingSites",value:function(){this.privateLink.sites=this.privateLink.sites?this.privateLink.sites.concat(this.remaining):this.remaining,this.updateDisplay(),this.substanceFormService.emitLinkUpdate()}},{key:"updateDisplay",value:function(){this.privateLink&&(this.siteDisplay=this.substanceFormService.siteString(this.privateLink.sites))}},{key:"deleteLink",value:function(){var t=this;this.privateLink.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){t.linkDeleted.emit(t.link),t.substanceFormService.emitLinkUpdate()},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateLink.$$deletedCode}},{key:"getVocabularies",value:function(){var t=this,a=this.cvService.getDomainVocabulary("NUCLEIC_ACID_LINKAGE").subscribe(function(s){t.linkageTypes=s.NUCLEIC_ACID_LINKAGE.list,t.vocabulary=s.NUCLEIC_ACID_LINKAGE.dictionary,t.smiles=t.vocabulary[t.privateLink.linkage],t.getStructure()});this.subscriptions.push(a)}},{key:"openDialog",value:function(){var t=this,a=this.dialog.open(P.r,{data:{card:"link",link:this.privateLink.sites},width:"1040px"});this.overlayContainer.style.zIndex="1002";var s=a.afterClosed().subscribe(function(u){t.overlayContainer.style.zIndex=null,u&&(t.privateLink.sites=u),t.updateDisplay(),t.substanceFormService.emitLinkUpdate()});this.subscriptions.push(s)}}]),l}();return o.\u0275fac=function(e){return new(e||o)(n.Y36(E.I),n.Y36(Q.uw),n.Y36(J.FW),n.Y36(R.Xj),n.Y36(b.B))},o.\u0275cmp=n.Xpm({type:o,selectors:[["app-link-form"]],inputs:{remaining:"remaining",link:"link"},outputs:{linkDeleted:"linkDeleted"},decls:19,vars:8,consts:[[1,"link-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[4,"ngIf"],[1,"type"],["domain","NUCLEIC_ACID_LINKAGE","title","Sequence Type",3,"model","valueChange"],[1,"addRemaining"],["mat-flat-button","","mat-primary","",3,"matTooltip","disabled","click"],[1,"links"],[1,"label"],["mat-icon-button","","matTooltip","Select sites from display",3,"click"],["svgIcon","edit"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"structure-image",3,"src"]],template:function(e,t){1&e&&(n.TgZ(0,"div",0),n.YNc(1,$,4,0,"div",1),n.TgZ(2,"div",2),n.TgZ(3,"div",3),n.TgZ(4,"button",4),n.NdJ("click",function(){return t.deleteLink()}),n._UZ(5,"mat-icon",5),n.qZA(),n.qZA(),n.YNc(6,G,2,1,"div",6),n.TgZ(7,"div",7),n.TgZ(8,"app-cv-input",8),n.NdJ("valueChange",function(s){return t.updateLinkage(s)}),n.qZA(),n.qZA(),n.TgZ(9,"div",9),n.TgZ(10,"button",10),n.NdJ("click",function(){return t.addRemainingSites()}),n._uU(11),n.qZA(),n.qZA(),n.TgZ(12,"div",11),n.TgZ(13,"div",12),n._uU(14,"link"),n.qZA(),n._uU(15),n.TgZ(16,"button",13),n.NdJ("click",function(){return t.openDialog()}),n._UZ(17,"mat-icon",14),n.qZA(),n.qZA(),n.qZA(),n._UZ(18,"app-audit-info",15),n.qZA()),2&e&&(n.xp6(1),n.Q6J("ngIf",t.link.$$deletedCode),n.xp6(5),n.Q6J("ngIf",t.structure),n.xp6(2),n.Q6J("model",t.privateLink.linkage),n.xp6(2),n.MGl("matTooltip","Add remaining ",t.remaining.length," sites"),n.Q6J("disabled",0===t.remaining.length),n.xp6(1),n.hij(" add remaining ",t.remaining.length," sites "),n.xp6(4),n.hij(" ",t.siteDisplay," "),n.xp6(3),n.Q6J("source",t.privateLink))},directives:[d.O5,p.lW,C.gM,g.Hw,j.S,V.n],styles:[".link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%;margin-right:5px}.form-row[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{width:40%}.form-row[_ngcontent-%COMP%] .addRemaining[_ngcontent-%COMP%]{width:20%}.selectedSite[_ngcontent-%COMP%]{padding-left:2px;padding-right:2px}.structure-image[_ngcontent-%COMP%]{margin-bottom:-20px;margin-left:-10px}"]}),o}();function K(o,l){1&o&&n._UZ(0,"mat-divider",10),2&o&&n.Q6J("inset",!0)}function H(o,l){if(1&o){var e=n.EpF();n.TgZ(0,"div",7),n.TgZ(1,"app-link-form",8),n.NdJ("linkDeleted",function(r){return n.CHM(e),n.oxw().deleteLink(r)}),n.qZA(),n.YNc(2,K,1,1,"mat-divider",9),n.qZA()}if(2&o){var t=l.$implicit,a=l.last,s=l.index,u=n.oxw();n.Q6J("id","substance-other-links-"+s),n.xp6(1),n.Q6J("link",t)("remaining",u.remainingSites),n.xp6(1),n.Q6J("ngIf",!a)}}var X=function(){var o=function(l){(0,I.Z)(t,l);var e=(0,A.Z)(t);function t(a,s,u,c){var r;return(0,v.Z)(this,t),(r=e.call(this,c)).substanceFormLinksService=a,r.substanceFormService=s,r.scrollToService=u,r.gaService=c,r.remainingSites=[],r.invalidSites=0,r.subscriptions=[],r.analyticsEventCategory="substance form links",r}return(0,m.Z)(t,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Links")}},{key:"ngAfterViewInit",value:function(){var s=this,u=this.substanceFormLinksService.substanceLinks.subscribe(function(r){s.links=r,s.getRemainingSites()});this.subscriptions.push(u);var c=this.substanceFormService.substanceSubunits.subscribe(function(r){s.subunits=r,s.getRemainingSites()});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(s){s.unsubscribe()})}},{key:"getRemainingSites",value:function(){var s=[],u=[];this.subunits&&this.links&&(this.subunits.forEach(function(c){if(null!=c.sequence&&c.sequence.length>0)for(var r=2;r<=c.sequence.length;r++)u.push({subunitIndex:c.subunitIndex,residueIndex:r})}),this.links.forEach(function(c){s=s.concat(c.sites)})),this.remainingSites=u.filter(function(c){return!s.some(function(r){return c.subunitIndex===r.subunitIndex&&c.residueIndex===r.residueIndex})}),this.invalidSites=u.length-s.length}},{key:"addItem",value:function(){this.addOtherLink()}},{key:"addOtherLink",value:function(){var s=this;this.substanceFormLinksService.addSubstanceLink(),setTimeout(function(){s.scrollToService.scrollToElement("substance-other-links-0","center")})}},{key:"deleteLink",value:function(s){this.substanceFormLinksService.deleteSubstanceLink(s)}}]),t}(D.u);return o.\u0275fac=function(e){return new(e||o)(n.Y36(U.e),n.Y36(b.B),n.Y36(M.i),n.Y36(O.$))},o.\u0275cmp=n.Xpm({type:o,selectors:[["app-substance-form-links"]],features:[n.qOj],decls:10,vars:3,consts:[[1,"responsive"],[1,"form-row"],[1,"form-row",3,"ngClass"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],[1,"middle-fill"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"link","remaining","linkDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(e,t){1&e&&(n.TgZ(0,"div",0),n._UZ(1,"div",1),n.TgZ(2,"div",2),n._uU(3),n.qZA(),n.YNc(4,H,3,4,"div",3),n.TgZ(5,"div",1),n._UZ(6,"span",4),n.TgZ(7,"button",5),n.NdJ("click",function(){return t.addOtherLink()}),n._uU(8," Add linkage "),n._UZ(9,"mat-icon",6),n.qZA(),n.qZA(),n.qZA()),2&e&&(n.xp6(2),n.Q6J("ngClass",0===t.invalidSites?"":"too-many"),n.xp6(1),n.hij("Remaining Links: ",0===t.invalidSites?t.remainingSites.length:t.invalidSites,""),n.xp6(1),n.Q6J("ngForOf",t.links))},directives:[d.mk,d.sg,N.P,z,d.O5,h.d,p.lW,g.Hw],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding:5 10px;-ms-flex-align:end;align-items:flex-end;font-size:18px;margin-bottom:5px}.too-many[_ngcontent-%COMP%]{color:var(--regular-red-color)}"]}),o}(),B=i(91434),W=(i(64061),function(){var o=(0,m.Z)(function l(){(0,v.Z)(this,l)});return o.\u0275fac=function(e){return new(e||o)},o.\u0275mod=n.oAB({type:o}),o.\u0275inj=n.cJS({imports:[[d.ez,L.o0.forChild(X),y.O,h.t,g.Ps,p.ot,S.w,Z.lN,k.UX,k.u5,T.TU,C.AV,F.vV,x.c,B.LD]]}),o}())}}]); +//# sourceMappingURL=3127.f0d2e72b1ebc6e53.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/3127.603341e2ce7facfb.js.map b/frontend/src/main/resources/static/3127.f0d2e72b1ebc6e53.js.map similarity index 98% rename from frontend/src/main/resources/static/3127.603341e2ce7facfb.js.map rename to frontend/src/main/resources/static/3127.f0d2e72b1ebc6e53.js.map index 26e2ab0..79c5d74 100644 --- a/frontend/src/main/resources/static/3127.603341e2ce7facfb.js.map +++ b/frontend/src/main/resources/static/3127.f0d2e72b1ebc6e53.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r2","LinkFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","getVocabularies","overlayContainer","getContainerElement","updateDisplay","smiles","vocabulary","privateLink","linkage","fragmentStructure","structure","getStructureUrlFragment","getDomainVocabulary","pipe","take","subscribe","found","response","NUCLEIC_ACID_LINKAGE","list","forEach","val","value","n","subscriptions","subscription","unsubscribe","set","link","getStructure","event","sites","concat","remaining","emitLinkUpdate","siteDisplay","siteString","$$deletedCode","newUUID","deleteTimer","setTimeout","linkDeleted","emit","clearTimeout","linkageTypes","dictionary","push","dialogRef","open","SubunitSelectorDialogComponent","data","card","width","style","zIndex","dialogSubscription","afterClosed","newLinks","l","selectors","ctx","ctx_r5","SubstanceFormLinksCardComponent","substanceFormLinksService","scrollToService","gaService","r","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","linksSubscription","substanceLinks","s","links","getRemainingSites","subunitsSubscription","substanceSubunits","subunits","componentDestroyed","linkArray","subunitArray","unit","sequence","length","i","subunitIndex","residueIndex","remainingSites","filter","some","obj2","item","invalidSites","addOtherLink","addSubstanceLink","scrollToElement","deleteSubstanceLink","SubstanceCardBaseFilteredList","SubstanceFormLinksModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/links/link-form.component.html","./src/app/core/substance-form/links/link-form.component.ts","./src/app/core/substance-form/links/substance-form-links_card.component.html","./src/app/core/substance-form/links/substance-form-links_card.component.ts","./src/app/core/substance-form/links/substance-form-links.module.ts"],"sourcesContent":["\n","import {Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {Link, Linkage, Site} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-link-form',\n templateUrl: './link-form.component.html',\n styleUrls: ['./link-form.component.scss']\n})\nexport class LinkFormComponent implements OnInit, OnDestroy {\n\n privateLink: Linkage;\n @Output() linkDeleted = new EventEmitter();\n @Input() remaining: Array;\n deleteTimer: any;\n linkageTypes: any;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n vocabulary: any;\n smiles: any;\n structure: any = null;\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.updateDisplay();\n\n \n // this.cvService.getStructureUrlFragment(term.fragmentStructure);\n }\n\n getStructure() {\n this.smiles = this.vocabulary[this.privateLink.linkage];\n if (this.smiles && this.smiles.fragmentStructure) {\n this.structure = this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure);\n } else {\n this.cvService.getDomainVocabulary('NUCLEIC_ACID_LINKAGE').pipe(take(1)).subscribe(response => {\n let list = response['NUCLEIC_ACID_LINKAGE'].list;\n let found = false;\n list.forEach(val => {\n if (val.value === this.privateLink.linkage) {\n this.smiles = val;\n found = true;\n this.structure = this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure);\n }\n });\n if (!found) {\n this.structure = null;\n }\n });\n }\n // this.structure = this.cvService.getStructureUrlFragment(term.fragmentStructure);\n \n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set link(link: Link) {\n this.privateLink = link;\n this.getStructure();\n }\n\n get link(): Link {\n this.updateDisplay();\n return this.privateLink;\n }\n\n updateLinkage(event: any) {\n this.privateLink.linkage = event;\n this.getStructure();\n }\n\n addRemainingSites(): void {\n if (this.privateLink.sites) {\n this.privateLink.sites = this.privateLink.sites.concat(this.remaining);\n } else {\n this.privateLink.sites = this.remaining;\n }\n this.updateDisplay();\n this.substanceFormService.emitLinkUpdate();\n }\n\n updateDisplay(): void {\n if (this.privateLink) {\n this.siteDisplay = this.substanceFormService.siteString(this.privateLink.sites);\n\n }\n }\n\n deleteLink(): void {\n this.privateLink.$$deletedCode = this.utilsService.newUUID();\n this.deleteTimer = setTimeout(() => {\n this.linkDeleted.emit(this.link);\n this.substanceFormService.emitLinkUpdate();\n }, 2000);\n }\n\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateLink.$$deletedCode;\n }\n\n getVocabularies(): void {\n const subscription = this.cvService.getDomainVocabulary('NUCLEIC_ACID_LINKAGE').subscribe(response => {\n this.linkageTypes = response['NUCLEIC_ACID_LINKAGE'].list;\n this.vocabulary = response['NUCLEIC_ACID_LINKAGE'].dictionary;\n this.smiles = this.vocabulary[this.privateLink.linkage];\n this.getStructure();\n });\n this.subscriptions.push(subscription);\n }\n\n openDialog(): void {\n\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'link', 'link': this.privateLink.sites},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n this.privateLink.sites = newLinks;\n }\n this.updateDisplay();\n this.substanceFormService.emitLinkUpdate();\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n}\n","
\n
\n
\n
Remaining Links: {{invalidSites === 0?remainingSites.length : invalidSites}}
\n
\n \n \n
\n\n\n\n
\n \n \n
\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Link, Linkage, Site, Subunit} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormLinksService } from './substance-form-links.service';\n\n@Component({\n selector: 'app-substance-form-links',\n templateUrl: './substance-form-links_card.component.html',\n styleUrls: ['./substance-form-links_card.component.scss']\n})\nexport class SubstanceFormLinksCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n links: Array;\n subunits: Array;\n remainingSites: Array = [];\n invalidSites = 0 ;\n private subscriptions: Array = [];\n constructor(\n private substanceFormLinksService: SubstanceFormLinksService,\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form links';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Links');\n }\n\n ngAfterViewInit() {\n const linksSubscription = this.substanceFormLinksService.substanceLinks.subscribe(links => {\n this.links = links;\n this.getRemainingSites();\n });\n this.subscriptions.push(linksSubscription);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.getRemainingSites();\n });\n this.subscriptions.push(subunitsSubscription);\n\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getRemainingSites(): void {\n let linkArray = [];\n const subunitArray = [];\n if (this.subunits && this.links) {\n this.subunits.forEach(unit => {\n if (unit.sequence != null && unit.sequence.length > 0) {\n for (let i = 2; i <= unit.sequence.length; i++) {\n subunitArray.push({subunitIndex: unit.subunitIndex, residueIndex: i});\n }\n }\n });\n this.links.forEach(link => {\n linkArray = linkArray.concat(link.sites);\n });\n }\n this.remainingSites = subunitArray.filter(item => {return !linkArray.some(function(obj2) {\n return (item.subunitIndex === obj2.subunitIndex && item.residueIndex === obj2.residueIndex);\n });\n });\n this.invalidSites = subunitArray.length - linkArray.length;\n\n }\n\n addItem(): void {\n this.addOtherLink();\n }\n\n addOtherLink(): void {\n this.substanceFormLinksService.addSubstanceLink();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-other-links-0`, 'center');\n });\n }\n\n deleteLink(link: Link): void {\n this.substanceFormLinksService.deleteSubstanceLink(link);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {SubstanceFormLinksCardComponent} from '@gsrs-core/substance-form/links/substance-form-links_card.component';\nimport {MatSelectModule} from '@angular/material/select';\nimport { LinkFormComponent } from './link-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormLinksCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormLinksCardComponent,\n LinkFormComponent\n ]\n})\nexport class SubstanceFormLinksModule { }\n"],"sourceRoot":"webpack:///","file":"3127.603341e2ce7facfb.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r2","LinkFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","getVocabularies","overlayContainer","getContainerElement","updateDisplay","smiles","vocabulary","privateLink","linkage","fragmentStructure","structure","getStructureUrlFragment","getDomainVocabulary","pipe","take","subscribe","found","response","NUCLEIC_ACID_LINKAGE","list","forEach","val","value","t","subscriptions","subscription","unsubscribe","set","link","getStructure","event","sites","concat","remaining","emitLinkUpdate","siteDisplay","siteString","$$deletedCode","newUUID","deleteTimer","setTimeout","linkDeleted","emit","clearTimeout","linkageTypes","dictionary","push","dialogRef","open","SubunitSelectorDialogComponent","data","card","width","style","zIndex","dialogSubscription","afterClosed","newLinks","l","selectors","ctx","ctx_r5","SubstanceFormLinksCardComponent","substanceFormLinksService","scrollToService","gaService","r","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","linksSubscription","substanceLinks","s","links","getRemainingSites","subunitsSubscription","substanceSubunits","subunits","componentDestroyed","linkArray","subunitArray","unit","sequence","length","i","subunitIndex","residueIndex","remainingSites","filter","some","obj2","item","invalidSites","addOtherLink","addSubstanceLink","scrollToElement","deleteSubstanceLink","SubstanceCardBaseFilteredList","SubstanceFormLinksModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/links/link-form.component.html","./src/app/core/substance-form/links/link-form.component.ts","./src/app/core/substance-form/links/substance-form-links_card.component.html","./src/app/core/substance-form/links/substance-form-links_card.component.ts","./src/app/core/substance-form/links/substance-form-links.module.ts"],"sourcesContent":["\n","import {Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {Link, Linkage, Site} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-link-form',\n templateUrl: './link-form.component.html',\n styleUrls: ['./link-form.component.scss']\n})\nexport class LinkFormComponent implements OnInit, OnDestroy {\n\n privateLink: Linkage;\n @Output() linkDeleted = new EventEmitter();\n @Input() remaining: Array;\n deleteTimer: any;\n linkageTypes: any;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n vocabulary: any;\n smiles: any;\n structure: any = null;\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.updateDisplay();\n\n \n // this.cvService.getStructureUrlFragment(term.fragmentStructure);\n }\n\n getStructure() {\n this.smiles = this.vocabulary[this.privateLink.linkage];\n if (this.smiles && this.smiles.fragmentStructure) {\n this.structure = this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure);\n } else {\n this.cvService.getDomainVocabulary('NUCLEIC_ACID_LINKAGE').pipe(take(1)).subscribe(response => {\n let list = response['NUCLEIC_ACID_LINKAGE'].list;\n let found = false;\n list.forEach(val => {\n if (val.value === this.privateLink.linkage) {\n this.smiles = val;\n found = true;\n this.structure = this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure);\n }\n });\n if (!found) {\n this.structure = null;\n }\n });\n }\n // this.structure = this.cvService.getStructureUrlFragment(term.fragmentStructure);\n \n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set link(link: Link) {\n this.privateLink = link;\n this.getStructure();\n }\n\n get link(): Link {\n this.updateDisplay();\n return this.privateLink;\n }\n\n updateLinkage(event: any) {\n this.privateLink.linkage = event;\n this.getStructure();\n }\n\n addRemainingSites(): void {\n if (this.privateLink.sites) {\n this.privateLink.sites = this.privateLink.sites.concat(this.remaining);\n } else {\n this.privateLink.sites = this.remaining;\n }\n this.updateDisplay();\n this.substanceFormService.emitLinkUpdate();\n }\n\n updateDisplay(): void {\n if (this.privateLink) {\n this.siteDisplay = this.substanceFormService.siteString(this.privateLink.sites);\n\n }\n }\n\n deleteLink(): void {\n this.privateLink.$$deletedCode = this.utilsService.newUUID();\n this.deleteTimer = setTimeout(() => {\n this.linkDeleted.emit(this.link);\n this.substanceFormService.emitLinkUpdate();\n }, 2000);\n }\n\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateLink.$$deletedCode;\n }\n\n getVocabularies(): void {\n const subscription = this.cvService.getDomainVocabulary('NUCLEIC_ACID_LINKAGE').subscribe(response => {\n this.linkageTypes = response['NUCLEIC_ACID_LINKAGE'].list;\n this.vocabulary = response['NUCLEIC_ACID_LINKAGE'].dictionary;\n this.smiles = this.vocabulary[this.privateLink.linkage];\n this.getStructure();\n });\n this.subscriptions.push(subscription);\n }\n\n openDialog(): void {\n\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'link', 'link': this.privateLink.sites},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n this.privateLink.sites = newLinks;\n }\n this.updateDisplay();\n this.substanceFormService.emitLinkUpdate();\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n}\n","
\n
\n
\n
Remaining Links: {{invalidSites === 0?remainingSites.length : invalidSites}}
\n
\n \n \n
\n\n\n\n
\n \n \n
\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Link, Linkage, Site, Subunit} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormLinksService } from './substance-form-links.service';\n\n@Component({\n selector: 'app-substance-form-links',\n templateUrl: './substance-form-links_card.component.html',\n styleUrls: ['./substance-form-links_card.component.scss']\n})\nexport class SubstanceFormLinksCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n links: Array;\n subunits: Array;\n remainingSites: Array = [];\n invalidSites = 0 ;\n private subscriptions: Array = [];\n constructor(\n private substanceFormLinksService: SubstanceFormLinksService,\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form links';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Links');\n }\n\n ngAfterViewInit() {\n const linksSubscription = this.substanceFormLinksService.substanceLinks.subscribe(links => {\n this.links = links;\n this.getRemainingSites();\n });\n this.subscriptions.push(linksSubscription);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.getRemainingSites();\n });\n this.subscriptions.push(subunitsSubscription);\n\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getRemainingSites(): void {\n let linkArray = [];\n const subunitArray = [];\n if (this.subunits && this.links) {\n this.subunits.forEach(unit => {\n if (unit.sequence != null && unit.sequence.length > 0) {\n for (let i = 2; i <= unit.sequence.length; i++) {\n subunitArray.push({subunitIndex: unit.subunitIndex, residueIndex: i});\n }\n }\n });\n this.links.forEach(link => {\n linkArray = linkArray.concat(link.sites);\n });\n }\n this.remainingSites = subunitArray.filter(item => {return !linkArray.some(function(obj2) {\n return (item.subunitIndex === obj2.subunitIndex && item.residueIndex === obj2.residueIndex);\n });\n });\n this.invalidSites = subunitArray.length - linkArray.length;\n\n }\n\n addItem(): void {\n this.addOtherLink();\n }\n\n addOtherLink(): void {\n this.substanceFormLinksService.addSubstanceLink();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-other-links-0`, 'center');\n });\n }\n\n deleteLink(link: Link): void {\n this.substanceFormLinksService.deleteSubstanceLink(link);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {SubstanceFormLinksCardComponent} from '@gsrs-core/substance-form/links/substance-form-links_card.component';\nimport {MatSelectModule} from '@angular/material/select';\nimport { LinkFormComponent } from './link-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormLinksCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormLinksCardComponent,\n LinkFormComponent\n ]\n})\nexport class SubstanceFormLinksModule { }\n"],"sourceRoot":"webpack:///","file":"3127.f0d2e72b1ebc6e53.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/3155.97bc4352071ba8b9.js b/frontend/src/main/resources/static/3155.97bc4352071ba8b9.js new file mode 100644 index 0000000..01f9d93 --- /dev/null +++ b/frontend/src/main/resources/static/3155.97bc4352071ba8b9.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[3155],{53155:function(A,m,e){e.r(m),e.d(m,{SubstanceFormMoietiesModule:function(){return P}});var d=e(1884),l=e(39117),s=e(36362),g=e(46751),f=e(56101),p=e(79223),h=e(27336),t=e(86613),M=e(9292),C=e(17537),b=e(33662),v=e(19975);function Z(n,i){1&n&&t._UZ(0,"mat-divider",12),2&n&&t.Q6J("inset",!0)}function O(n,i){if(1&n&&(t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"div",3),t.TgZ(3,"div",4),t._uU(4,"Moiety Structure"),t.qZA(),t._UZ(5,"img",5),t.qZA(),t.TgZ(6,"div",6),t._UZ(7,"app-structure-form",7),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t._uU(10,"Count Amount"),t.qZA(),t.TgZ(11,"div"),t._UZ(12,"app-amount-form",10),t.qZA(),t.qZA(),t.YNc(13,Z,1,1,"mat-divider",11),t.qZA()),2&n){var o=i.$implicit,r=i.last;t.xp6(5),t.Q6J("entityId",o.id),t.xp6(2),t.Q6J("structure",o),t.xp6(5),t.Q6J("substanceAmount",o.countAmount),t.xp6(1),t.Q6J("ngIf",!r)}}var x=function(){var n=function(i){(0,g.Z)(r,i);var o=(0,f.Z)(r);function r(c){var a;return(0,l.Z)(this,r),(a=o.call(this)).substanceFormStructureService=c,a.moieties=[],a}return(0,d.Z)(r,[{key:"ngOnInit",value:function(){var a=this;this.menuLabelUpdate.emit("Moieties"),this.hiddenStateUpdate.emit(!0),this.subscription=this.substanceFormStructureService.substanceMoieties.subscribe(function(u){a.moieties=u,a.hiddenStateUpdate.emit(!(u&&u.length>1))})}},{key:"ngOnDestroy",value:function(){this.subscription.unsubscribe()}}]),r}(p.o);return n.\u0275fac=function(o){return new(o||n)(t.Y36(h.p))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-form-moieties"]],features:[t.qOj],decls:1,vars:1,consts:[["class","moiety",4,"ngFor","ngForOf"],[1,"moiety"],[1,"flex-row"],[1,"moiety-structure","flex-colum"],[1,"structure-title"],["appSubstanceImage","","stereo","true",3,"entityId"],[1,"structure-form-container","flex-column"],["type","structure","hideAccess","true",3,"structure"],[1,"amount-form-container"],[1,"count-amount-title"],[3,"substanceAmount"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(o,r){1&o&&t.YNc(0,O,14,4,"div",0),2&o&&t.Q6J("ngForOf",r.moieties)},directives:[s.sg,M.m,C.h,b.f,s.O5,v.d],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.moiety[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.moiety[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.moiety[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.moiety[_ngcontent-%COMP%] .mat-expansion-panel, .moiety[_ngcontent-%COMP%] .mat-table, .moiety[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.moiety-structure[_ngcontent-%COMP%]{max-width:20%;width:20%}.moiety-structure[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;vertical-align:middle}.structure-title[_ngcontent-%COMP%]{padding:10px 0 0 7px;font-weight:700;margin-bottom:10px}.structure-form-container[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.count-amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}"]}),n}(),y=e(64061),S=e(7168),F=e(24054),P=function(){var n=(0,d.Z)(function i(){(0,l.Z)(this,i)});return n.\u0275fac=function(o){return new(o||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[s.ez,y.o.forChild(x),S.O,v.t,F.f]]}),n}()}}]); +//# sourceMappingURL=3155.97bc4352071ba8b9.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/3155.edb4deab26ed33b3.js.map b/frontend/src/main/resources/static/3155.97bc4352071ba8b9.js.map similarity index 95% rename from frontend/src/main/resources/static/3155.edb4deab26ed33b3.js.map rename to frontend/src/main/resources/static/3155.97bc4352071ba8b9.js.map index 2d11e17..0621cc3 100644 --- a/frontend/src/main/resources/static/3155.edb4deab26ed33b3.js.map +++ b/frontend/src/main/resources/static/3155.97bc4352071ba8b9.js.map @@ -1 +1 @@ -{"version":3,"mappings":"6UAgBEA,+BAAkCA,2CAhBpCA,iBACEA,iBACIA,iBACEA,iBAA6BA,4BAAgBA,QAC7CA,iBACFA,QACAA,iBACEA,gCACFA,QACJA,QACAA,iBACEA,iBAAgCA,yBAAYA,QAC5CA,gBACEA,+BACFA,QACFA,QACAA,iCACFA,yCAb+BA,gCAGHA,8BAMLA,gDAG6BA,2BCH7C,IAAMC,EAAb,eAAaA,EAAb,0CAIE,WACUC,GAA4D,6BAEpEC,gBAFQD,gCAJVC,WAAmC,GAImCA,EALxE,uCAUE,WAAQ,WACNC,KAAKC,gBAAgBC,KAAK,YAC1BF,KAAKG,kBAAkBD,MAAK,GAC5BF,KAAKI,aAAeJ,KAAKF,8BAA8BO,kBAAkBC,UAAU,YACjFP,EAAKQ,SAAWA,EAEdR,EAAKI,kBAAkBD,OADzBM,GAAgBD,EAASE,OAAS,QAfxC,yBAuBE,WACET,KAAKI,aAAaM,kBAxBtBC,GAAoDC,kDAAvCf,GAA8BD,qCAA9BC,EAA8BgB,4hBDb3CjB,6BAAuCA,quCCa1BC,EAAb,mCCOaiB,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsCpB,GACtCqB,IACAC,IACAC,QAMSN,EAAb","names":["i0","SubstanceFormMoietiesComponent","substanceFormStructureService","a","this","menuLabelUpdate","emit","hiddenStateUpdate","subscription","substanceMoieties","subscribe","moieties","c","length","unsubscribe","r","SubstanceFormBase","selectors","SubstanceFormMoietiesModule","d","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","SubstanceImageModule"],"sources":["./src/app/core/substance-form/moieties/substance-form-moieties.component.html","./src/app/core/substance-form/moieties/substance-form-moieties.component.ts","./src/app/core/substance-form/moieties/substance-form-moieties.module.ts"],"sourcesContent":["
\n
\n
\n
Moiety Structure
\n \n
\n
\n \n
\n
\n
\n
Count Amount
\n
\n \n
\n
\n \n
\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { SafeUrl } from '@angular/platform-browser';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { StructureService } from '../../structure/structure.service';\nimport { SubstanceMoiety } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormStructureService } from '../structure/substance-form-structure.service';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-substance-form-moieties',\n templateUrl: './substance-form-moieties.component.html',\n styleUrls: ['./substance-form-moieties.component.scss']\n})\nexport class SubstanceFormMoietiesComponent extends SubstanceFormBase implements OnInit, OnDestroy {\n moieties: Array = [];\n subscription: Subscription;\n\n constructor(\n private substanceFormStructureService: SubstanceFormStructureService\n ) {\n super();\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Moieties');\n this.hiddenStateUpdate.emit(true);\n this.subscription = this.substanceFormStructureService.substanceMoieties.subscribe(moieties => {\n this.moieties = moieties;\n if (moieties && moieties.length > 1) {\n this.hiddenStateUpdate.emit(false);\n } else {\n this.hiddenStateUpdate.emit(true);\n }\n });\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormMoietiesComponent } from './substance-form-moieties.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMoietiesComponent),\n SubstanceFormModule,\n MatDividerModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceFormMoietiesComponent\n ]\n})\nexport class SubstanceFormMoietiesModule { }\n"],"sourceRoot":"webpack:///","file":"3155.edb4deab26ed33b3.js"} \ No newline at end of file +{"version":3,"mappings":"6UAgBEA,+BAAkCA,2CAhBpCA,iBACEA,iBACIA,iBACEA,iBAA6BA,4BAAgBA,QAC7CA,iBACFA,QACAA,iBACEA,gCACFA,QACJA,QACAA,iBACEA,iBAAgCA,yBAAYA,QAC5CA,gBACEA,+BACFA,QACFA,QACAA,iCACFA,yCAb+BA,gCAGHA,8BAMLA,gDAG6BA,2BCH7C,IAAMC,EAAb,eAAaA,EAAb,0CAIE,WACUC,GAA4D,6BAEpEC,gBAFQD,gCAJVC,WAAmC,GAImCA,EALxE,uCAUE,WAAQ,WACNC,KAAKC,gBAAgBC,KAAK,YAC1BF,KAAKG,kBAAkBD,MAAK,GAC5BF,KAAKI,aAAeJ,KAAKF,8BAA8BO,kBAAkBC,UAAU,YACjFP,EAAKQ,SAAWA,EAEdR,EAAKI,kBAAkBD,OADzBM,GAAgBD,EAASE,OAAS,QAfxC,yBAuBE,WACET,KAAKI,aAAaM,kBAxBtBC,GAAoDC,kDAAvCf,GAA8BD,qCAA9BC,EAA8BgB,4hBDb3CjB,6BAAuCA,+yCCa1BC,EAAb,mCCOaiB,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsCpB,GACtCqB,IACAC,IACAC,QAMSN,EAAb","names":["i0","SubstanceFormMoietiesComponent","substanceFormStructureService","a","this","menuLabelUpdate","emit","hiddenStateUpdate","subscription","substanceMoieties","subscribe","moieties","u","length","unsubscribe","r","SubstanceFormBase","selectors","SubstanceFormMoietiesModule","d","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","SubstanceImageModule"],"sources":["./src/app/core/substance-form/moieties/substance-form-moieties.component.html","./src/app/core/substance-form/moieties/substance-form-moieties.component.ts","./src/app/core/substance-form/moieties/substance-form-moieties.module.ts"],"sourcesContent":["
\n
\n
\n
Moiety Structure
\n \n
\n
\n \n
\n
\n
\n
Count Amount
\n
\n \n
\n
\n \n
\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { SafeUrl } from '@angular/platform-browser';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { StructureService } from '../../structure/structure.service';\nimport { SubstanceMoiety } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormStructureService } from '../structure/substance-form-structure.service';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-substance-form-moieties',\n templateUrl: './substance-form-moieties.component.html',\n styleUrls: ['./substance-form-moieties.component.scss']\n})\nexport class SubstanceFormMoietiesComponent extends SubstanceFormBase implements OnInit, OnDestroy {\n moieties: Array = [];\n subscription: Subscription;\n\n constructor(\n private substanceFormStructureService: SubstanceFormStructureService\n ) {\n super();\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Moieties');\n this.hiddenStateUpdate.emit(true);\n this.subscription = this.substanceFormStructureService.substanceMoieties.subscribe(moieties => {\n this.moieties = moieties;\n if (moieties && moieties.length > 1) {\n this.hiddenStateUpdate.emit(false);\n } else {\n this.hiddenStateUpdate.emit(true);\n }\n });\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormMoietiesComponent } from './substance-form-moieties.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMoietiesComponent),\n SubstanceFormModule,\n MatDividerModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceFormMoietiesComponent\n ]\n})\nexport class SubstanceFormMoietiesModule { }\n"],"sourceRoot":"webpack:///","file":"3155.97bc4352071ba8b9.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/3155.edb4deab26ed33b3.js b/frontend/src/main/resources/static/3155.edb4deab26ed33b3.js deleted file mode 100644 index c3146dd..0000000 --- a/frontend/src/main/resources/static/3155.edb4deab26ed33b3.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[3155],{53155:function(A,m,n){n.r(m),n.d(m,{SubstanceFormMoietiesModule:function(){return P}});var d=n(48047),l=n(78069),s=n(36362),v=n(24582),g=n(7318),p=n(79223),h=n(27336),t=n(76442),M=n(9292),C=n(17537),b=n(33662),f=n(19975);function Z(e,i){1&e&&t._UZ(0,"mat-divider",12),2&e&&t.Q6J("inset",!0)}function O(e,i){if(1&e&&(t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"div",3),t.TgZ(3,"div",4),t._uU(4,"Moiety Structure"),t.qZA(),t._UZ(5,"img",5),t.qZA(),t.TgZ(6,"div",6),t._UZ(7,"app-structure-form",7),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t._uU(10,"Count Amount"),t.qZA(),t.TgZ(11,"div"),t._UZ(12,"app-amount-form",10),t.qZA(),t.qZA(),t.YNc(13,Z,1,1,"mat-divider",11),t.qZA()),2&e){var o=i.$implicit,r=i.last;t.xp6(5),t.Q6J("entityId",o.id),t.xp6(2),t.Q6J("structure",o),t.xp6(5),t.Q6J("substanceAmount",o.countAmount),t.xp6(1),t.Q6J("ngIf",!r)}}var y=function(){var e=function(i){(0,v.Z)(r,i);var o=(0,g.Z)(r);function r(u){var a;return(0,l.Z)(this,r),(a=o.call(this)).substanceFormStructureService=u,a.moieties=[],a}return(0,d.Z)(r,[{key:"ngOnInit",value:function(){var a=this;this.menuLabelUpdate.emit("Moieties"),this.hiddenStateUpdate.emit(!0),this.subscription=this.substanceFormStructureService.substanceMoieties.subscribe(function(c){a.moieties=c,a.hiddenStateUpdate.emit(!(c&&c.length>1))})}},{key:"ngOnDestroy",value:function(){this.subscription.unsubscribe()}}]),r}(p.o);return e.\u0275fac=function(o){return new(o||e)(t.Y36(h.p))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-form-moieties"]],features:[t.qOj],decls:1,vars:1,consts:[["class","moiety",4,"ngFor","ngForOf"],[1,"moiety"],[1,"flex-row"],[1,"moiety-structure","flex-colum"],[1,"structure-title"],["appSubstanceImage","","stereo","true",3,"entityId"],[1,"structure-form-container","flex-column"],["type","structure","hideAccess","true",3,"structure"],[1,"amount-form-container"],[1,"count-amount-title"],[3,"substanceAmount"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(o,r){1&o&&t.YNc(0,O,14,4,"div",0),2&o&&t.Q6J("ngForOf",r.moieties)},directives:[s.sg,M.m,C.h,b.f,s.O5,f.d],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.moiety[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.moiety[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.moiety[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.moiety[_ngcontent-%COMP%] .mat-expansion-panel, .moiety[_ngcontent-%COMP%] .mat-table, .moiety[_ngcontent-%COMP%] textarea{background-color:transparent}.moiety-structure[_ngcontent-%COMP%]{max-width:20%;width:20%}.moiety-structure[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;vertical-align:middle}.structure-title[_ngcontent-%COMP%]{padding:10px 0 0 7px;font-weight:700;margin-bottom:10px}.structure-form-container[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.count-amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}"]}),e}(),S=n(64061),x=n(7168),F=n(24054),P=function(){var e=(0,d.Z)(function i(){(0,l.Z)(this,i)});return e.\u0275fac=function(o){return new(o||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[s.ez,S.o.forChild(y),x.O,f.t,F.f]]}),e}()}}]); -//# sourceMappingURL=3155.edb4deab26ed33b3.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/328.b555b6debe46b9ca.js b/frontend/src/main/resources/static/328.b555b6debe46b9ca.js deleted file mode 100644 index 1a1cf3e..0000000 --- a/frontend/src/main/resources/static/328.b555b6debe46b9ca.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[328],{70328:function(ae,x,a){a.r(x),a.d(x,{SubstanceFormCodesModule:function(){return ie}});var u=a(48047),g=a(78069),p=a(36362),F=a(24582),M=a(7318),O=a(79550),A=a(33567),J=a(24874),I=a(66452),e=a(76442),w=a(78444),f=a(44770),v=a(43365),l=a(90587),C=a(87317),h=a(40089),Z=a(26439),P=a(51279),N=a(42827),E=a(52149),_=a(65590),Q=a(16667),U=a(84577),D=a(48302),k=a(14900);function Y(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div",18),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",19),e.NdJ("click",function(){return e.CHM(n),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",20),e.qZA(),e.qZA()}}function z(o,c){if(1&o&&(e.TgZ(0,"div",21),e.TgZ(1,"div",22),e._uU(2," Code System Type "),e.qZA(),e.TgZ(3,"div",23),e._uU(4),e.qZA(),e.qZA()),2&o){var n=e.oxw();e.xp6(4),e.hij(" ",n.codeSystemType," ")}}function q(o,c){1&o&&e._UZ(0,"mat-icon",24)}function H(o,c){1&o&&e._UZ(0,"mat-icon",25)}function L(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",2),e.TgZ(2,"mat-form-field",26),e.TgZ(3,"input",27),e.NdJ("ngModelChange",function(i){return e.CHM(n),e.oxw().trimWhitespace(i)}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(4,"div",2),e.TgZ(5,"div",28),e.TgZ(6,"div",29),e._uU(7,"Code text"),e.qZA(),e.TgZ(8,"textarea",30),e.NdJ("ngModelChange",function(i){return e.CHM(n),e.oxw().code.comments=i}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"div",2),e.TgZ(10,"div",28),e.TgZ(11,"div",29),e._uU(12,"Comments"),e.qZA(),e.TgZ(13,"textarea",31),e.NdJ("ngModelChange",function(i){return e.CHM(n),e.oxw().code.codeText=i}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div",2),e.TgZ(15,"div",32),e._UZ(16,"app-domain-references",33,34),e.qZA(),e.qZA(),e.qZA()}if(2&o){var t=e.oxw();e.xp6(3),e.Q6J("ngModel",t.code.url),e.xp6(5),e.Q6J("ngModel",t.code.comments),e.xp6(5),e.Q6J("ngModel",t.code.codeText),e.xp6(3),e.Q6J("referencesUuids",t.code.references)}}function $(o,c){if(1&o&&e._UZ(0,"app-audit-info",35),2&o){var n=e.oxw();e.Q6J("source",n.code)}}var j=function(){var o=function(){function c(n,t){(0,g.Z)(this,c),this.cvService=n,this.utilsService=t,this.codeDeleted=new e.vpe,this.codeSystemList=[],this.codeTypeList=[],this.viewFull=!0}return(0,u.Z)(c,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"code",get:function(){return this.privateCode},set:function(t){this.privateCode=t}},{key:"show",get:function(){return this.viewFull||null},set:function(t){null!=t&&(this.viewFull=t)}},{key:"getVocabularies",value:function(){var t=this;this.cvService.getDomainVocabulary("CODE_SYSTEM","CODE_TYPE").subscribe(function(d){t.codeSystemList=d.CODE_SYSTEM.list,t.codeSystemDictionary=d.CODE_SYSTEM.dictionary,t.setCodeSystemType(),t.codeTypeList=d.CODE_TYPE.list})}},{key:"deleteCode",value:function(){var t=this;this.privateCode.$$deletedCode=this.utilsService.newUUID(),!this.privateCode.codeSystem&&!this.privateCode.type&&!this.privateCode.code&&(this.deleteTimer=setTimeout(function(){t.codeDeleted.emit(t.privateCode)},2e3))}},{key:"trimWhitespace",value:function(t){this.code.url=t,this.privateCode.url=this.privateCode.url.replace(/[\u200A|\u2009|\u2006|\u2008]/g," ").trim(),this.privateCode.url=t.trim().trim().trim()}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateCode.$$deletedCode}},{key:"setCodeSystemType",value:function(t){t&&(this.code.codeSystem=t),null!=this.privateCode&&null!=this.codeSystemDictionary&&(this.codeSystemType=this.codeSystemDictionary[this.privateCode.codeSystem]&&this.codeSystemDictionary[this.privateCode.codeSystem].systemCategory||"")}},{key:"updateAccess",value:function(t){this.code.access=t}}]),c}();return o.\u0275fac=function(n){return new(n||o)(e.Y36(N.I),e.Y36(E.F))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-code-form"]],inputs:{code:"code",show:"show"},outputs:{codeDeleted:"codeDeleted"},decls:19,vars:11,consts:[[1,"code-form-container",3,"ngClass"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],["required","true","key","Code System","title","Code System","name","code",1,"code-system",3,"model","valueChange"],["class","key-value-pair code-system-type",4,"ngIf"],["domain","CODE_TYPE","title","Type","name","type",1,"type",3,"model","valueChange"],[1,"code"],["matInput","","placeholder","Code","required","","name","code",3,"ngModel","ngModelChange"],[3,"access","accessOut"],[1,"chevron"],["mat-icon-button","","matTooltip","Expand / collapse rows",1,"chevron-button",3,"click"],["svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],[4,"ngIf"],[3,"source",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"key-value-pair","code-system-type"],[1,"key"],[1,"value"],["svgIcon","chevron_up"],["svgIcon","chevron_down"],[1,"url"],["matInput","","placeholder","Url","name","url",3,"ngModel","ngModelChange"],[1,"code-text"],[1,"textarea-label"],["placeholder","Enter text here","name","comments",3,"ngModel","ngModelChange"],["placeholder","Enter text here","name","codeText",3,"ngModel","ngModelChange"],[1,"references-container"],[3,"referencesUuids"],["references",""],[3,"source"]],template:function(n,t){1&n&&(e.TgZ(0,"div",0),e.YNc(1,Y,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return t.deleteCode()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.TgZ(6,"app-cv-input",6),e.NdJ("valueChange",function(i){return t.setCodeSystemType(i)}),e.qZA(),e.YNc(7,z,5,1,"div",7),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(i){return t.code.type=i}),e.qZA(),e.TgZ(9,"mat-form-field",9),e.TgZ(10,"input",10),e.NdJ("ngModelChange",function(i){return t.code.code=i}),e.qZA(),e.qZA(),e.TgZ(11,"div"),e.TgZ(12,"app-access-manager",11),e.NdJ("accessOut",function(i){return t.updateAccess(i)}),e.qZA(),e.qZA(),e.TgZ(13,"div",12),e.TgZ(14,"button",13),e.NdJ("click",function(){return t.viewFull=!t.viewFull}),e.YNc(15,q,1,0,"mat-icon",14),e.YNc(16,H,1,0,"mat-icon",15),e.qZA(),e.qZA(),e.qZA(),e.YNc(17,L,18,4,"div",16),e.YNc(18,$,1,1,"app-audit-info",17),e.qZA()),2&n&&(e.Q6J("ngClass",t.viewFull?"code-form-container":"collapse"),e.xp6(1),e.Q6J("ngIf",t.code.$$deletedCode),e.xp6(5),e.Q6J("model",t.code.codeSystem),e.xp6(1),e.Q6J("ngIf",t.code.codeSystem),e.xp6(1),e.Q6J("model",t.code.type),e.xp6(2),e.Q6J("ngModel",t.code.code),e.xp6(2),e.Q6J("access",t.code.access),e.xp6(3),e.Q6J("ngIf",t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.code.$$deletedCode&&t.viewFull),e.xp6(1),e.Q6J("ngIf",t.viewFull))},directives:[p.mk,p.O5,C.lW,h.gM,_.Hw,Q.S,f.KE,v.Nt,l.Fj,l.Q7,l.JJ,l.On,U.h,D.V,k.n],styles:[".code-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.collapse[_ngcontent-%COMP%]{padding:20px 10px 12px;position:relative}.resolve[_ngcontent-%COMP%]{padding:0 20px 20px 0;color:#4793d1}.chevron[_ngcontent-%COMP%]{width:20px;line-height:67px;color:#0009}.chevron-button[_ngcontent-%COMP%]{width:20px}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),o}(),b=a(19975);function V(o,c){if(1&o&&(e.TgZ(0,"mat-form-field",7),e._UZ(1,"input",8),e.qZA()),2&o){var n=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",n.searchControl)}}function W(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"button",9),e.NdJ("click",function(){return e.CHM(n),e.oxw().collapse()}),e._uU(1),e.qZA()}if(2&o){var t=e.oxw();e.xp6(1),e.hij("",t.expanded?"Collapse":"Expand"," All")}}var S=function(){return[5,10,25,100]};function B(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(i){e.CHM(n);var r=e.oxw();return r.pageChange(i,r.analyticsEventCategory)}),e.qZA()}if(2&o){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",10)("pageSizeOptions",e.DdM(4,S))}}function X(o,c){1&o&&e._UZ(0,"mat-divider",14),2&o&&e.Q6J("inset",!0)}function K(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div",11),e.TgZ(1,"app-code-form",12),e.NdJ("codeDeleted",function(s){return e.CHM(n),e.oxw().deleteCode(s)}),e.qZA(),e.YNc(2,X,1,1,"mat-divider",13),e.qZA()}if(2&o){var t=c.$implicit,d=c.last,i=c.index,r=e.oxw();e.Q6J("id","substance-code-"+i),e.xp6(1),e.Q6J("code",t)("show",r.expanded),e.xp6(1),e.Q6J("ngIf",!d)}}function R(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(i){e.CHM(n);var r=e.oxw();return r.pageChange(i,r.analyticsEventCategory)}),e.qZA()}if(2&o){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",10)("pageSizeOptions",e.DdM(4,S))}}function G(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div",15),e._UZ(1,"span",2),e.TgZ(2,"button",16),e.NdJ("click",function(){return e.CHM(n),e.oxw().addCode()}),e._uU(3," Add code "),e._UZ(4,"mat-icon",17),e.qZA(),e.qZA()}if(2&o){var t=e.oxw();e.xp6(2),e.Q6J("disabled",t.isAlternative)}}var ee=function(){var o=function(c){(0,F.Z)(t,c);var n=(0,M.Z)(t);function t(d,i,r,m){var s;return(0,g.Z)(this,t),(s=n.call(this,m)).substanceFormCodesService=d,s.substanceFormService=i,s.scrollToService=r,s.gaService=m,s.subscriptions=[],s.pageSize=10,s.expanded=!0,s.validate=!1,s.analyticsEventCategory="substance form codes",s}return(0,u.Z)(t,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Codes")}},{key:"collapse",value:function(){this.expanded=!this.expanded}},{key:"ngAfterViewInit",value:function(){var i=this,r=this.substanceFormService.definition.subscribe(function(s){s.definitionType&&"ALTERNATIVE"===s.definitionType?i.hiddenStateUpdate.emit(!0):(i.canAddItemUpdate.emit(!0),i.hiddenStateUpdate.emit(!1))});this.subscriptions.push(r);var m=this.substanceFormCodesService.substanceCodes.subscribe(function(s){i.codes=s,i.filtered=s;var y=i.searchControl.valueChanges.subscribe(function(T){i.filterList(T,i.codes,i.analyticsEventCategory)},function(T){console.log(T)});i.subscriptions.push(y),i.page=0,i.pageChange()});this.subscriptions.push(m)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"addItem",value:function(){this.addCode()}},{key:"addCode",value:function(){var i=this;this.substanceFormCodesService.addSubstanceCode(),setTimeout(function(){i.scrollToService.scrollToElement("substance-code-0","center")})}},{key:"deleteCode",value:function(i){this.substanceFormCodesService.deleteSubstanceCode(i)}}]),t}(O.u);return o.\u0275fac=function(n){return new(n||o)(e.Y36(I.W),e.Y36(A.B),e.Y36(w.i),e.Y36(J.$))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-substance-form-codes-card"]],features:[e.qOj],decls:8,vars:6,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["class","standardize","mat-button","","matTooltip","expand / collapse code view rows",3,"click",4,"ngIf"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","code","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["mat-button","","matTooltip","expand / collapse code view rows",1,"standardize",3,"click"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"code",3,"id"],[3,"code","show","codeDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"disabled","click"],["svgIcon","add_circle_outline"]],template:function(n,t){1&n&&(e.TgZ(0,"div",0),e.YNc(1,V,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.YNc(3,W,2,1,"button",3),e.qZA(),e.YNc(4,B,1,5,"mat-paginator",4),e.YNc(5,K,3,4,"div",5),e.YNc(6,R,1,5,"mat-paginator",4),e.YNc(7,G,5,1,"div",6)),2&n&&(e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>t.pageSize),e.xp6(2),e.Q6J("ngIf",t.codes&&t.codes.length>0),e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>5),e.xp6(1),e.Q6J("ngForOf",t.paged),e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>5),e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>0))},directives:[p.O5,f.KE,v.Nt,l.Fj,l.JJ,l.oH,C.lW,h.gM,Z.NW,p.sg,P.P,j,b.d,_.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),o}(),te=a(64061),oe=a(7168),ne=a(94673),ie=function(){var o=(0,u.Z)(function c(){(0,g.Z)(this,c)});return o.\u0275fac=function(n){return new(n||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({imports:[[p.ez,te.o.forChild(ee),oe.O,b.t,_.Ps,C.ot,ne.w,f.lN,l.UX,l.u5,Z.TU,v.c,h.AV]]}),o}()}}]); -//# sourceMappingURL=328.b555b6debe46b9ca.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/328.e359172a56ff66e5.js b/frontend/src/main/resources/static/328.e359172a56ff66e5.js new file mode 100644 index 0000000..23cfa99 --- /dev/null +++ b/frontend/src/main/resources/static/328.e359172a56ff66e5.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[328],{70328:function(ie,x,i){i.r(x),i.d(x,{SubstanceFormCodesModule:function(){return ae}});var u=i(1884),g=i(39117),p=i(36362),F=i(46751),M=i(56101),O=i(79550),A=i(33567),J=i(24874),I=i(66452),e=i(86613),w=i(78444),v=i(44770),f=i(43365),l=i(90587),C=i(87317),h=i(40089),Z=i(26439),P=i(51279),N=i(42827),E=i(52149),_=i(65590),Q=i(16667),U=i(84577),k=i(48302),D=i(14900);function Y(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div",18),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",19),e.NdJ("click",function(){return e.CHM(n),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",20),e.qZA(),e.qZA()}}function z(o,c){if(1&o&&(e.TgZ(0,"div",21),e.TgZ(1,"div",22),e._uU(2," Code System Type "),e.qZA(),e.TgZ(3,"div",23),e._uU(4),e.qZA(),e.qZA()),2&o){var n=e.oxw();e.xp6(4),e.hij(" ",n.codeSystemType," ")}}function q(o,c){1&o&&e._UZ(0,"mat-icon",24)}function H(o,c){1&o&&e._UZ(0,"mat-icon",25)}function L(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",2),e.TgZ(2,"mat-form-field",26),e.TgZ(3,"input",27),e.NdJ("ngModelChange",function(a){return e.CHM(n),e.oxw().trimWhitespace(a)}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(4,"div",2),e.TgZ(5,"div",28),e.TgZ(6,"div",29),e._uU(7,"Code text"),e.qZA(),e.TgZ(8,"textarea",30),e.NdJ("ngModelChange",function(a){return e.CHM(n),e.oxw().code.comments=a}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"div",2),e.TgZ(10,"div",28),e.TgZ(11,"div",29),e._uU(12,"Comments"),e.qZA(),e.TgZ(13,"textarea",31),e.NdJ("ngModelChange",function(a){return e.CHM(n),e.oxw().code.codeText=a}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div",2),e.TgZ(15,"div",32),e._UZ(16,"app-domain-references",33,34),e.qZA(),e.qZA(),e.qZA()}if(2&o){var t=e.oxw();e.xp6(3),e.Q6J("ngModel",t.code.url),e.xp6(5),e.Q6J("ngModel",t.code.comments),e.xp6(5),e.Q6J("ngModel",t.code.codeText),e.xp6(3),e.Q6J("referencesUuids",t.code.references)}}function $(o,c){if(1&o&&e._UZ(0,"app-audit-info",35),2&o){var n=e.oxw();e.Q6J("source",n.code)}}var j=function(){var o=function(){function c(n,t){(0,g.Z)(this,c),this.cvService=n,this.utilsService=t,this.codeDeleted=new e.vpe,this.codeSystemList=[],this.codeTypeList=[],this.viewFull=!0}return(0,u.Z)(c,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"code",get:function(){return this.privateCode},set:function(t){this.privateCode=t}},{key:"show",get:function(){return this.viewFull||null},set:function(t){null!=t&&(this.viewFull=t)}},{key:"getVocabularies",value:function(){var t=this;this.cvService.getDomainVocabulary("CODE_SYSTEM","CODE_TYPE").subscribe(function(d){t.codeSystemList=d.CODE_SYSTEM.list,t.codeSystemDictionary=d.CODE_SYSTEM.dictionary,t.setCodeSystemType(),t.codeTypeList=d.CODE_TYPE.list})}},{key:"deleteCode",value:function(){var t=this;this.privateCode.$$deletedCode=this.utilsService.newUUID(),!this.privateCode.codeSystem&&!this.privateCode.type&&!this.privateCode.code&&(this.deleteTimer=setTimeout(function(){t.codeDeleted.emit(t.privateCode)},2e3))}},{key:"trimWhitespace",value:function(t){this.code.url=t,this.privateCode.url=this.privateCode.url.replace(/[\u200A|\u2009|\u2006|\u2008]/g," ").trim(),this.privateCode.url=t.trim().trim().trim()}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateCode.$$deletedCode}},{key:"setCodeSystemType",value:function(t){t&&(this.code.codeSystem=t),null!=this.privateCode&&null!=this.codeSystemDictionary&&(this.codeSystemType=this.codeSystemDictionary[this.privateCode.codeSystem]&&this.codeSystemDictionary[this.privateCode.codeSystem].systemCategory||"")}},{key:"updateAccess",value:function(t){this.code.access=t}}]),c}();return o.\u0275fac=function(n){return new(n||o)(e.Y36(N.I),e.Y36(E.F))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-code-form"]],inputs:{code:"code",show:"show"},outputs:{codeDeleted:"codeDeleted"},decls:19,vars:11,consts:[[1,"code-form-container",3,"ngClass"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],["required","true","key","Code System","title","Code System","name","code",1,"code-system",3,"model","valueChange"],["class","key-value-pair code-system-type",4,"ngIf"],["domain","CODE_TYPE","title","Type","name","type",1,"type",3,"model","valueChange"],[1,"code"],["matInput","","placeholder","Code","required","","name","code",3,"ngModel","ngModelChange"],[3,"access","accessOut"],[1,"chevron"],["mat-icon-button","","matTooltip","Expand / collapse rows",1,"chevron-button",3,"click"],["svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],[4,"ngIf"],[3,"source",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"key-value-pair","code-system-type"],[1,"key"],[1,"value"],["svgIcon","chevron_up"],["svgIcon","chevron_down"],[1,"url"],["matInput","","placeholder","Url","name","url",3,"ngModel","ngModelChange"],[1,"code-text"],[1,"textarea-label"],["placeholder","Enter text here","name","comments",3,"ngModel","ngModelChange"],["placeholder","Enter text here","name","codeText",3,"ngModel","ngModelChange"],[1,"references-container"],[3,"referencesUuids"],["references",""],[3,"source"]],template:function(n,t){1&n&&(e.TgZ(0,"div",0),e.YNc(1,Y,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return t.deleteCode()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.TgZ(6,"app-cv-input",6),e.NdJ("valueChange",function(a){return t.setCodeSystemType(a)}),e.qZA(),e.YNc(7,z,5,1,"div",7),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(a){return t.code.type=a}),e.qZA(),e.TgZ(9,"mat-form-field",9),e.TgZ(10,"input",10),e.NdJ("ngModelChange",function(a){return t.code.code=a}),e.qZA(),e.qZA(),e.TgZ(11,"div"),e.TgZ(12,"app-access-manager",11),e.NdJ("accessOut",function(a){return t.updateAccess(a)}),e.qZA(),e.qZA(),e.TgZ(13,"div",12),e.TgZ(14,"button",13),e.NdJ("click",function(){return t.viewFull=!t.viewFull}),e.YNc(15,q,1,0,"mat-icon",14),e.YNc(16,H,1,0,"mat-icon",15),e.qZA(),e.qZA(),e.qZA(),e.YNc(17,L,18,4,"div",16),e.YNc(18,$,1,1,"app-audit-info",17),e.qZA()),2&n&&(e.Q6J("ngClass",t.viewFull?"code-form-container":"collapse"),e.xp6(1),e.Q6J("ngIf",t.code.$$deletedCode),e.xp6(5),e.Q6J("model",t.code.codeSystem),e.xp6(1),e.Q6J("ngIf",t.code.codeSystem),e.xp6(1),e.Q6J("model",t.code.type),e.xp6(2),e.Q6J("ngModel",t.code.code),e.xp6(2),e.Q6J("access",t.code.access),e.xp6(3),e.Q6J("ngIf",t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.viewFull),e.xp6(1),e.Q6J("ngIf",!t.code.$$deletedCode&&t.viewFull),e.xp6(1),e.Q6J("ngIf",t.viewFull))},directives:[p.mk,p.O5,C.lW,h.gM,_.Hw,Q.S,v.KE,f.Nt,l.Fj,l.Q7,l.JJ,l.On,U.h,k.V,D.n],styles:[".code-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.collapse[_ngcontent-%COMP%]{padding:20px 10px 12px;position:relative}.resolve[_ngcontent-%COMP%]{padding:0 20px 20px 0;color:var(--primary-color)}.chevron[_ngcontent-%COMP%]{width:20px;line-height:67px;color:var(--chevron-color)}.chevron-button[_ngcontent-%COMP%]{width:20px}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),o}(),b=i(19975);function V(o,c){if(1&o&&(e.TgZ(0,"mat-form-field",7),e._UZ(1,"input",8),e.qZA()),2&o){var n=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",n.searchControl)}}function W(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"button",9),e.NdJ("click",function(){return e.CHM(n),e.oxw().collapse()}),e._uU(1),e.qZA()}if(2&o){var t=e.oxw();e.xp6(1),e.hij("",t.expanded?"Collapse":"Expand"," All")}}var S=function(){return[5,10,25,100]};function B(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(a){e.CHM(n);var s=e.oxw();return s.pageChange(a,s.analyticsEventCategory)}),e.qZA()}if(2&o){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",10)("pageSizeOptions",e.DdM(4,S))}}function X(o,c){1&o&&e._UZ(0,"mat-divider",14),2&o&&e.Q6J("inset",!0)}function K(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div",11),e.TgZ(1,"app-code-form",12),e.NdJ("codeDeleted",function(r){return e.CHM(n),e.oxw().deleteCode(r)}),e.qZA(),e.YNc(2,X,1,1,"mat-divider",13),e.qZA()}if(2&o){var t=c.$implicit,d=c.last,a=c.index,s=e.oxw();e.Q6J("id","substance-code-"+a),e.xp6(1),e.Q6J("code",t)("show",s.expanded),e.xp6(1),e.Q6J("ngIf",!d)}}function R(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"mat-paginator",10),e.NdJ("page",function(a){e.CHM(n);var s=e.oxw();return s.pageChange(a,s.analyticsEventCategory)}),e.qZA()}if(2&o){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",10)("pageSizeOptions",e.DdM(4,S))}}function G(o,c){if(1&o){var n=e.EpF();e.TgZ(0,"div",15),e._UZ(1,"span",2),e.TgZ(2,"button",16),e.NdJ("click",function(){return e.CHM(n),e.oxw().addCode()}),e._uU(3," Add code "),e._UZ(4,"mat-icon",17),e.qZA(),e.qZA()}if(2&o){var t=e.oxw();e.xp6(2),e.Q6J("disabled",t.isAlternative)}}var ee=function(){var o=function(c){(0,F.Z)(t,c);var n=(0,M.Z)(t);function t(d,a,s,m){var r;return(0,g.Z)(this,t),(r=n.call(this,m)).substanceFormCodesService=d,r.substanceFormService=a,r.scrollToService=s,r.gaService=m,r.subscriptions=[],r.pageSize=10,r.expanded=!0,r.validate=!1,r.analyticsEventCategory="substance form codes",r}return(0,u.Z)(t,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Codes")}},{key:"collapse",value:function(){this.expanded=!this.expanded}},{key:"ngAfterViewInit",value:function(){var a=this,s=this.substanceFormService.definition.subscribe(function(r){r.definitionType&&"ALTERNATIVE"===r.definitionType?a.hiddenStateUpdate.emit(!0):(a.canAddItemUpdate.emit(!0),a.hiddenStateUpdate.emit(!1))});this.subscriptions.push(s);var m=this.substanceFormCodesService.substanceCodes.subscribe(function(r){a.codes=r,a.filtered=r;var y=a.searchControl.valueChanges.subscribe(function(T){a.filterList(T,a.codes,a.analyticsEventCategory)},function(T){console.log(T)});a.subscriptions.push(y),a.page=0,a.pageChange()});this.subscriptions.push(m)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addItem",value:function(){this.addCode()}},{key:"addCode",value:function(){var a=this;this.substanceFormCodesService.addSubstanceCode(),setTimeout(function(){a.scrollToService.scrollToElement("substance-code-0","center")})}},{key:"deleteCode",value:function(a){this.substanceFormCodesService.deleteSubstanceCode(a)}}]),t}(O.u);return o.\u0275fac=function(n){return new(n||o)(e.Y36(I.W),e.Y36(A.B),e.Y36(w.i),e.Y36(J.$))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-substance-form-codes-card"]],features:[e.qOj],decls:8,vars:6,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["class","standardize","mat-button","","matTooltip","expand / collapse code view rows",3,"click",4,"ngIf"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","code","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["mat-button","","matTooltip","expand / collapse code view rows",1,"standardize",3,"click"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"code",3,"id"],[3,"code","show","codeDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"disabled","click"],["svgIcon","add_circle_outline"]],template:function(n,t){1&n&&(e.TgZ(0,"div",0),e.YNc(1,V,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.YNc(3,W,2,1,"button",3),e.qZA(),e.YNc(4,B,1,5,"mat-paginator",4),e.YNc(5,K,3,4,"div",5),e.YNc(6,R,1,5,"mat-paginator",4),e.YNc(7,G,5,1,"div",6)),2&n&&(e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>t.pageSize),e.xp6(2),e.Q6J("ngIf",t.codes&&t.codes.length>0),e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>5),e.xp6(1),e.Q6J("ngForOf",t.paged),e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>5),e.xp6(1),e.Q6J("ngIf",t.codes&&t.codes.length>0))},directives:[p.O5,v.KE,f.Nt,l.Fj,l.JJ,l.oH,C.lW,h.gM,Z.NW,p.sg,P.P,j,b.d,_.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),o}(),te=i(64061),oe=i(7168),ne=i(94673),ae=function(){var o=(0,u.Z)(function c(){(0,g.Z)(this,c)});return o.\u0275fac=function(n){return new(n||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({imports:[[p.ez,te.o.forChild(ee),oe.O,b.t,_.Ps,C.ot,ne.w,v.lN,l.UX,l.u5,Z.TU,f.c,h.AV]]}),o}()}}]); +//# sourceMappingURL=328.e359172a56ff66e5.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/328.b555b6debe46b9ca.js.map b/frontend/src/main/resources/static/328.e359172a56ff66e5.js.map similarity index 98% rename from frontend/src/main/resources/static/328.b555b6debe46b9ca.js.map rename to frontend/src/main/resources/static/328.e359172a56ff66e5.js.map index 2b08e99..ad992aa 100644 --- a/frontend/src/main/resources/static/328.b555b6debe46b9ca.js.map +++ b/frontend/src/main/resources/static/328.e359172a56ff66e5.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r6","ctx_r9","CodeFormComponent","cvService","utilsService","g","this","EventEmitter","getVocabularies","privateCode","set","code","viewFull","val","getDomainVocabulary","subscribe","t","codeSystemList","response","CODE_SYSTEM","list","codeSystemDictionary","dictionary","setCodeSystemType","codeTypeList","CODE_TYPE","$$deletedCode","newUUID","codeSystem","type","deleteTimer","setTimeout","codeDeleted","emit","value","url","replace","trim","clearTimeout","event","codeSystemType","systemCategory","access","c","selectors","ctx","ctx_r8","ctx_r14","ctx_r16","ctx_r18","SubstanceFormCodesCardComponent","substanceFormCodesService","substanceFormService","scrollToService","gaService","s","analyticsEventCategory","menuLabelUpdate","expanded","definitionSubscription","definition","level","definitionType","i","hiddenStateUpdate","canAddItemUpdate","subscriptions","push","codesSubscription","substanceCodes","codes","filtered","searchSubscription","searchControl","valueChanges","filterList","console","log","error","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","addCode","addSubstanceCode","scrollToElement","deleteSubstanceCode","SubstanceCardBaseFilteredList","SubstanceFormCodesModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","MatTooltipModule"],"sources":["./src/app/core/substance-form/codes/code-form.component.html","./src/app/core/substance-form/codes/code-form.component.ts","./src/app/core/substance-form/codes/substance-form-codes-card.component.html","./src/app/core/substance-form/codes/substance-form-codes-card.component.ts","./src/app/core/substance-form/codes/substance-form-codes.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n \n \n
\n
\n Code System Type\n
\n
\n {{codeSystemType}}\n
\n
\n \n \n \n \n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
Code text
\n \n
\n
\n
\n
\n
Comments
\n \n
\n
\n
\n
\n \n
\n
\n
\n \n
\n","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\nimport { SubstanceCode } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UtilsService } from '../../utils/utils.service';\n\n@Component({\n selector: 'app-code-form',\n templateUrl: './code-form.component.html',\n styleUrls: ['./code-form.component.scss']\n})\nexport class CodeFormComponent implements OnInit {\n private privateCode: SubstanceCode;\n @Output() codeDeleted = new EventEmitter();\n codeSystemList: Array = [];\n codeSystemDictionary: { [termValue: string]: VocabularyTerm };\n codeSystemType: string;\n codeTypeList: Array = [];\n deleteTimer: any;\n viewFull = true;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private utilsService: UtilsService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n }\n\n @Input()\n set code(code: SubstanceCode) {\n this.privateCode = code;\n }\n\n get code(): SubstanceCode {\n return this.privateCode;\n }\n\n @Input()\n set show(val: boolean) {\n if (val != null) {\n this.viewFull = val;\n }\n }\n\n get show(): boolean {\n return this.viewFull || null;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('CODE_SYSTEM', 'CODE_TYPE').subscribe(response => {\n this.codeSystemList = response['CODE_SYSTEM'].list;\n this.codeSystemDictionary = response['CODE_SYSTEM'].dictionary;\n this.setCodeSystemType();\n this.codeTypeList = response['CODE_TYPE'].list;\n });\n }\n\n deleteCode(): void {\n this.privateCode.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateCode.codeSystem\n && !this.privateCode.type\n && !this.privateCode.code\n ) {\n this.deleteTimer = setTimeout(() => {\n this.codeDeleted.emit(this.privateCode);\n }, 2000);\n }\n }\n\n trimWhitespace(value) {\n\n this.code.url = value;\n this.privateCode.url = this.privateCode.url.replace(/[\\u200A|\\u2009|\\u2006|\\u2008]/g, ' ').trim();\n this.privateCode.url = value.trim().trim().trim();\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateCode.$$deletedCode;\n }\n\n setCodeSystemType(event?: any): void {\n if (event) {\n this.code.codeSystem = event;\n }\n if (this.privateCode != null && this.codeSystemDictionary != null) {\n this.codeSystemType = this.codeSystemDictionary[this.privateCode.codeSystem]\n && this.codeSystemDictionary[this.privateCode.codeSystem].systemCategory || '';\n }\n }\n\n updateAccess(access: Array): void {\n this.code.access = access;\n }\n\n}\n","
\n pageSize\">\n \n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n
0\" style = \"display: flex;\">\n \n \n
\n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceCode } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormCodesService } from './substance-form-codes.service';\n\n@Component({\n selector: 'app-substance-form-codes-card',\n templateUrl: './substance-form-codes-card.component.html',\n styleUrls: ['./substance-form-codes-card.component.scss']\n})\nexport class SubstanceFormCodesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n codes: Array;\n private subscriptions: Array = [];\n pageSize = 10;\n expanded = true;\n validate = false;\n\n constructor(\n private substanceFormCodesService: SubstanceFormCodesService,\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form codes';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Codes');\n }\n\n collapse() {\n this.expanded = !this.expanded;\n }\n\n ngAfterViewInit() {\n const definitionSubscription = this.substanceFormService.definition.subscribe( level => {\n if (level.definitionType && level.definitionType === 'ALTERNATIVE') {\n // this.canAddItemUpdate.emit(false);\n this.hiddenStateUpdate.emit(true);\n } else {\n this.canAddItemUpdate.emit(true);\n this.hiddenStateUpdate.emit(false);\n }\n });\n this.subscriptions.push(definitionSubscription);\n const codesSubscription = this.substanceFormCodesService.substanceCodes.subscribe(codes => {\n this.codes = codes;\n this.filtered = codes;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.codes, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(codesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addCode();\n }\n\n addCode(): void {\n this.substanceFormCodesService.addSubstanceCode();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-code-0`, 'center');\n });\n }\n\n deleteCode(code: SubstanceCode): void {\n this.substanceFormCodesService.deleteSubstanceCode(code);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormCodesCardComponent } from './substance-form-codes-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { CodeFormComponent } from './code-form.component';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormCodesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n MatTooltipModule\n ],\n declarations: [\n SubstanceFormCodesCardComponent,\n CodeFormComponent\n ]\n})\nexport class SubstanceFormCodesModule { }\n"],"sourceRoot":"webpack:///","file":"328.b555b6debe46b9ca.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r6","ctx_r9","CodeFormComponent","cvService","utilsService","g","this","EventEmitter","getVocabularies","privateCode","set","code","viewFull","val","getDomainVocabulary","subscribe","t","codeSystemList","response","CODE_SYSTEM","list","codeSystemDictionary","dictionary","setCodeSystemType","codeTypeList","CODE_TYPE","$$deletedCode","newUUID","codeSystem","type","deleteTimer","setTimeout","codeDeleted","emit","value","url","replace","trim","clearTimeout","event","codeSystemType","systemCategory","access","c","selectors","ctx","ctx_r8","ctx_r14","ctx_r16","ctx_r18","SubstanceFormCodesCardComponent","substanceFormCodesService","substanceFormService","scrollToService","gaService","r","analyticsEventCategory","menuLabelUpdate","expanded","definitionSubscription","definition","level","definitionType","a","hiddenStateUpdate","canAddItemUpdate","subscriptions","push","codesSubscription","substanceCodes","codes","filtered","searchSubscription","searchControl","valueChanges","filterList","console","log","error","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","addCode","addSubstanceCode","scrollToElement","deleteSubstanceCode","SubstanceCardBaseFilteredList","SubstanceFormCodesModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","MatTooltipModule"],"sources":["./src/app/core/substance-form/codes/code-form.component.html","./src/app/core/substance-form/codes/code-form.component.ts","./src/app/core/substance-form/codes/substance-form-codes-card.component.html","./src/app/core/substance-form/codes/substance-form-codes-card.component.ts","./src/app/core/substance-form/codes/substance-form-codes.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n \n \n
\n
\n Code System Type\n
\n
\n {{codeSystemType}}\n
\n
\n \n \n \n \n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
Code text
\n \n
\n
\n
\n
\n
Comments
\n \n
\n
\n
\n
\n \n
\n
\n
\n \n
\n","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\nimport { SubstanceCode } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UtilsService } from '../../utils/utils.service';\n\n@Component({\n selector: 'app-code-form',\n templateUrl: './code-form.component.html',\n styleUrls: ['./code-form.component.scss']\n})\nexport class CodeFormComponent implements OnInit {\n private privateCode: SubstanceCode;\n @Output() codeDeleted = new EventEmitter();\n codeSystemList: Array = [];\n codeSystemDictionary: { [termValue: string]: VocabularyTerm };\n codeSystemType: string;\n codeTypeList: Array = [];\n deleteTimer: any;\n viewFull = true;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private utilsService: UtilsService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n }\n\n @Input()\n set code(code: SubstanceCode) {\n this.privateCode = code;\n }\n\n get code(): SubstanceCode {\n return this.privateCode;\n }\n\n @Input()\n set show(val: boolean) {\n if (val != null) {\n this.viewFull = val;\n }\n }\n\n get show(): boolean {\n return this.viewFull || null;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('CODE_SYSTEM', 'CODE_TYPE').subscribe(response => {\n this.codeSystemList = response['CODE_SYSTEM'].list;\n this.codeSystemDictionary = response['CODE_SYSTEM'].dictionary;\n this.setCodeSystemType();\n this.codeTypeList = response['CODE_TYPE'].list;\n });\n }\n\n deleteCode(): void {\n this.privateCode.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateCode.codeSystem\n && !this.privateCode.type\n && !this.privateCode.code\n ) {\n this.deleteTimer = setTimeout(() => {\n this.codeDeleted.emit(this.privateCode);\n }, 2000);\n }\n }\n\n trimWhitespace(value) {\n\n this.code.url = value;\n this.privateCode.url = this.privateCode.url.replace(/[\\u200A|\\u2009|\\u2006|\\u2008]/g, ' ').trim();\n this.privateCode.url = value.trim().trim().trim();\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateCode.$$deletedCode;\n }\n\n setCodeSystemType(event?: any): void {\n if (event) {\n this.code.codeSystem = event;\n }\n if (this.privateCode != null && this.codeSystemDictionary != null) {\n this.codeSystemType = this.codeSystemDictionary[this.privateCode.codeSystem]\n && this.codeSystemDictionary[this.privateCode.codeSystem].systemCategory || '';\n }\n }\n\n updateAccess(access: Array): void {\n this.code.access = access;\n }\n\n}\n","
\n pageSize\">\n \n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n
0\" style = \"display: flex;\">\n \n \n
\n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceCode } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormCodesService } from './substance-form-codes.service';\n\n@Component({\n selector: 'app-substance-form-codes-card',\n templateUrl: './substance-form-codes-card.component.html',\n styleUrls: ['./substance-form-codes-card.component.scss']\n})\nexport class SubstanceFormCodesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n codes: Array;\n private subscriptions: Array = [];\n pageSize = 10;\n expanded = true;\n validate = false;\n\n constructor(\n private substanceFormCodesService: SubstanceFormCodesService,\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form codes';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Codes');\n }\n\n collapse() {\n this.expanded = !this.expanded;\n }\n\n ngAfterViewInit() {\n const definitionSubscription = this.substanceFormService.definition.subscribe( level => {\n if (level.definitionType && level.definitionType === 'ALTERNATIVE') {\n // this.canAddItemUpdate.emit(false);\n this.hiddenStateUpdate.emit(true);\n } else {\n this.canAddItemUpdate.emit(true);\n this.hiddenStateUpdate.emit(false);\n }\n });\n this.subscriptions.push(definitionSubscription);\n const codesSubscription = this.substanceFormCodesService.substanceCodes.subscribe(codes => {\n this.codes = codes;\n this.filtered = codes;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.codes, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(codesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addCode();\n }\n\n addCode(): void {\n this.substanceFormCodesService.addSubstanceCode();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-code-0`, 'center');\n });\n }\n\n deleteCode(code: SubstanceCode): void {\n this.substanceFormCodesService.deleteSubstanceCode(code);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormCodesCardComponent } from './substance-form-codes-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { CodeFormComponent } from './code-form.component';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormCodesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n MatTooltipModule\n ],\n declarations: [\n SubstanceFormCodesCardComponent,\n CodeFormComponent\n ]\n})\nexport class SubstanceFormCodesModule { }\n"],"sourceRoot":"webpack:///","file":"328.e359172a56ff66e5.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/3311.ea9948bff894c65a.js b/frontend/src/main/resources/static/3311.ea9948bff894c65a.js deleted file mode 100644 index 3820299..0000000 --- a/frontend/src/main/resources/static/3311.ea9948bff894c65a.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[3311],{3311:function(Q,T,g){g.d(T,{ZQ:function(){return _}});var y=g(48047),x=g(78069);function f(n,o,i,e){var s,l=arguments.length,r=l<3?o:null===e?e=Object.getOwnPropertyDescriptor(o,i):e;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(n,o,i,e);else for(var a=n.length-1;a>=0;a--)(s=n[a])&&(r=(l<3?s(r):l>3?s(o,i,r):s(o,i))||r);return l>3&&r&&Object.defineProperty(o,i,r),r}var t=g(76442),v=g(90587),w=g(36362);function A(n,o){if(1&n&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&n){var i=t.oxw();t.xp6(1),t.Oqu(i._placeholder)}}function I(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"span",14),t._uU(1),t.TgZ(2,"a",15),t.NdJ("click",function(a){var c=t.CHM(i).$implicit;return t.oxw().onItemClick(a,c)}),t._uU(3,"x"),t.qZA(),t.qZA()}if(2&n){var e=o.$implicit,l=o.index,r=t.oxw();t.Q6J("hidden",l>r._settings.itemsShowLimit-1),t.xp6(1),t.hij(" ",e.text," ")}}function Z(n,o){if(1&n&&(t.TgZ(0,"span",16),t._uU(1),t.qZA()),2&n){var i=t.oxw();t.xp6(1),t.hij("+",i.itemShowRemaining(),"")}}function J(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"li",17),t.NdJ("click",function(){return t.CHM(i),t.oxw().toggleSelectAll()}),t._UZ(1,"input",18),t.TgZ(2,"div"),t._uU(3),t.qZA(),t.qZA()}if(2&n){var e=t.oxw();t.xp6(1),t.Q6J("checked",e.isAllItemsSelected())("disabled",e.disabled||e.isLimitSelectionReached()),t.xp6(2),t.Oqu(e.isAllItemsSelected()?e._settings.unSelectAllText:e._settings.selectAllText)}}function j(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"li",19),t.TgZ(1,"input",20),t.NdJ("ngModelChange",function(r){return t.CHM(i),t.oxw().filter.text=r})("ngModelChange",function(r){return t.CHM(i),t.oxw().onFilterTextChange(r)}),t.qZA(),t.qZA()}if(2&n){var e=t.oxw();t.xp6(1),t.Q6J("readOnly",e.disabled)("placeholder",e._settings.searchPlaceholderText)("ngModel",e.filter.text)}}function R(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"li",21),t.NdJ("click",function(s){var p=t.CHM(i).$implicit;return t.oxw().onItemClick(s,p)}),t._UZ(1,"input",22),t.TgZ(2,"div"),t._uU(3),t.qZA(),t.qZA()}if(2&n){var e=o.$implicit,l=t.oxw();t.xp6(1),t.Q6J("checked",l.isSelected(e))("disabled",l.disabled||l.isLimitSelectionReached()&&!l.isSelected(e)||e.isDisabled),t.xp6(2),t.Oqu(e.text)}}function N(n,o){if(1&n&&(t.TgZ(0,"li",23),t.TgZ(1,"h5"),t._uU(2),t.qZA(),t.qZA()),2&n){var i=t.oxw();t.xp6(2),t.Oqu(i._settings.noDataAvailablePlaceholderText)}}var D,h=(0,y.Z)(function n(o){(0,x.Z)(this,n),("string"==typeof o||"number"==typeof o)&&(this.id=this.text=o,this.isDisabled=!1),"object"==typeof o&&(this.id=o.id,this.text=o.text,this.isDisabled=o.isDisabled)}),L={provide:v.JU,useExisting:(0,t.Gpc)(function(){return B}),multi:!0},P=function(){},B=function(){var n=function(){function o(i){(0,x.Z)(this,o),this.cdr=i,this._data=[],this.selectedItems=[],this.isDropdownOpen=!0,this._placeholder="Select",this._sourceDataType=null,this._sourceDataFields=[],this.filter=new h(this.data),this.defaultSettings={singleSelection:!1,idField:"id",textField:"text",disabledField:"isDisabled",enableCheckAll:!0,selectAllText:"Select All",unSelectAllText:"UnSelect All",allowSearchFilter:!1,limitSelection:-1,clearSearchFilter:!0,maxHeight:197,itemsShowLimit:999999999999,searchPlaceholderText:"Search",noDataAvailablePlaceholderText:"No data available",closeDropDownOnSelection:!1,showSelectedItemsAtTop:!1,defaultOpen:!1,allowRemoteDataSearch:!1},this.disabled=!1,this.onFilterChange=new t.vpe,this.onDropDownClose=new t.vpe,this.onSelect=new t.vpe,this.onDeSelect=new t.vpe,this.onSelectAll=new t.vpe,this.onDeSelectAll=new t.vpe,this.onTouchedCallback=P,this.onChangeCallback=P}return(0,y.Z)(o,[{key:"placeholder",set:function(e){this._placeholder=e||"Select"}},{key:"settings",set:function(e){this._settings=e?Object.assign(this.defaultSettings,e):Object.assign(this.defaultSettings)}},{key:"data",set:function(e){var l=this;if(e){var r=e[0];this._sourceDataType=typeof r,this._sourceDataFields=this.getFields(r),this._data=e.map(function(s){return new h("string"==typeof s||"number"==typeof s?s:{id:s[l._settings.idField],text:s[l._settings.textField],isDisabled:s[l._settings.disabledField]})})}else this._data=[]}},{key:"onFilterTextChange",value:function(e){this.onFilterChange.emit(e)}},{key:"onItemClick",value:function(e,l){if(this.disabled||l.isDisabled)return!1;var r=this.isSelected(l),s=-1===this._settings.limitSelection||this._settings.limitSelection>0&&this.selectedItems.length0)if(this._settings.singleSelection)try{if(e.length>=1){var r=e[0];this.selectedItems=[new h("string"==typeof r||"number"==typeof r?r:{id:r[this._settings.idField],text:r[this._settings.textField],isDisabled:r[this._settings.disabledField]})]}}catch(a){}else{var s=e.map(function(a){return new h("string"==typeof a||"number"==typeof a?a:{id:a[l._settings.idField],text:a[l._settings.textField],isDisabled:a[l._settings.disabledField]})});this.selectedItems=this._settings.limitSelection>0?s.splice(0,this._settings.limitSelection):s}else this.selectedItems=[];this.onChangeCallback(e)}},{key:"registerOnChange",value:function(e){this.onChangeCallback=e}},{key:"registerOnTouched",value:function(e){this.onTouchedCallback=e}},{key:"onTouched",value:function(){this.closeDropdown(),this.onTouchedCallback()}},{key:"trackByFn",value:function(e,l){return l.id}},{key:"isSelected",value:function(e){var l=!1;return this.selectedItems.forEach(function(r){e.id===r.id&&(l=!0)}),l}},{key:"isLimitSelectionReached",value:function(){return this._settings.limitSelection===this.selectedItems.length}},{key:"isAllItemsSelected",value:function(){var e=this._data.filter(function(l){return l.isDisabled}).length;return!((!this.data||0===this.data.length)&&this._settings.allowRemoteDataSearch)&&this._data.length===this.selectedItems.length+e}},{key:"showButton",value:function(){return!(this._settings.singleSelection||this._settings.limitSelection>0)}},{key:"itemShowRemaining",value:function(){return this.selectedItems.length-this._settings.itemsShowLimit}},{key:"addSelected",value:function(e){this._settings.singleSelection?(this.selectedItems=[],this.selectedItems.push(e)):this.selectedItems.push(e),this.onChangeCallback(this.emittedValue(this.selectedItems)),this.onSelect.emit(this.emittedValue(e))}},{key:"removeSelected",value:function(e){var l=this;this.selectedItems.forEach(function(r){e.id===r.id&&l.selectedItems.splice(l.selectedItems.indexOf(r),1)}),this.onChangeCallback(this.emittedValue(this.selectedItems)),this.onDeSelect.emit(this.emittedValue(e))}},{key:"emittedValue",value:function(e){var l=this,r=[];if(Array.isArray(e))e.map(function(s){r.push(l.objectify(s))});else if(e)return this.objectify(e);return r}},{key:"objectify",value:function(e){if("object"===this._sourceDataType){var l={};return l[this._settings.idField]=e.id,l[this._settings.textField]=e.text,this._sourceDataFields.includes(this._settings.disabledField)&&(l[this._settings.disabledField]=e.isDisabled),l}return"number"===this._sourceDataType?Number(e.id):e.text}},{key:"toggleDropdown",value:function(e){e.preventDefault(),(!this.disabled||!this._settings.singleSelection)&&(this._settings.defaultOpen=!this._settings.defaultOpen,this._settings.defaultOpen||this.onDropDownClose.emit())}},{key:"closeDropdown",value:function(){this._settings.defaultOpen=!1,this._settings.clearSearchFilter&&(this.filter.text=""),this.onDropDownClose.emit()}},{key:"toggleSelectAll",value:function(){if(this.disabled)return!1;this.isAllItemsSelected()?(this.selectedItems=[],this.onDeSelectAll.emit(this.emittedValue(this.selectedItems))):(this.selectedItems=this._data.filter(function(e){return!e.isDisabled}).slice(),this.onSelectAll.emit(this.emittedValue(this.selectedItems))),this.onChangeCallback(this.emittedValue(this.selectedItems))}},{key:"getFields",value:function(e){var l=[];if("object"!=typeof e)return l;for(var r in e)l.push(r);return l}}]),o}();return n.\u0275fac=function(i){return new(i||n)(t.Y36(t.sBO))},n.\u0275cmp=t.Xpm({type:n,selectors:[["ng-multiselect-dropdown"]],hostBindings:function(i,e){1&i&&t.NdJ("blur",function(){return e.onTouched()})},inputs:{disabled:"disabled",placeholder:"placeholder",settings:"settings",data:"data"},outputs:{onFilterChange:"onFilterChange",onDropDownClose:"onDropDownClose",onSelect:"onSelect",onDeSelect:"onDeSelect",onSelectAll:"onSelectAll",onDeSelectAll:"onDeSelectAll"},features:[t._Bn([L])],decls:16,vars:17,consts:[["tabindex","=0",1,"multiselect-dropdown",3,"blur","clickOutside"],["tabindex","-1",1,"dropdown-btn",3,"click"],[4,"ngIf"],["class","selected-item",3,"hidden",4,"ngFor","ngForOf","ngForTrackBy"],[2,"float","right !important","padding-right","4px"],["style","padding-right: 6px;",4,"ngIf"],[3,"ngClass"],[1,"dropdown-list",3,"hidden"],[1,"item1"],["class","multiselect-item-checkbox","style","border-bottom: 1px solid #ccc;padding:10px",3,"click",4,"ngIf"],["class","filter-textbox",4,"ngIf"],[1,"item2"],["class","multiselect-item-checkbox",3,"click",4,"ngFor","ngForOf"],["class","no-data",4,"ngIf"],[1,"selected-item",3,"hidden"],[2,"padding-top","2px","padding-left","2px","color","white",3,"click"],[2,"padding-right","6px"],[1,"multiselect-item-checkbox",2,"border-bottom","1px solid #ccc","padding","10px",3,"click"],["type","checkbox","aria-label","multiselect-select-all",3,"checked","disabled"],[1,"filter-textbox"],["type","text","aria-label","multiselect-search",3,"readOnly","placeholder","ngModel","ngModelChange"],[1,"multiselect-item-checkbox",3,"click"],["type","checkbox","aria-label","multiselect-item",3,"checked","disabled"],[1,"no-data"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.NdJ("blur",function(){return e.onTouched()})("clickOutside",function(){return e.closeDropdown()}),t.TgZ(1,"div"),t.TgZ(2,"span",1),t.NdJ("click",function(r){return e.toggleDropdown(r)}),t.YNc(3,A,2,1,"span",2),t.YNc(4,I,4,2,"span",3),t.TgZ(5,"span",4),t.YNc(6,Z,2,1,"span",5),t._UZ(7,"span",6),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",7),t.TgZ(9,"ul",8),t.YNc(10,J,4,3,"li",9),t.YNc(11,j,2,3,"li",10),t.qZA(),t.TgZ(12,"ul",11),t.YNc(13,R,4,3,"li",12),t.ALo(14,"multiSelectFilter"),t.YNc(15,N,3,1,"li",13),t.qZA(),t.qZA(),t.qZA()),2&i&&(t.xp6(1),t.ekj("disabled",e.disabled),t.xp6(2),t.Q6J("ngIf",0==e.selectedItems.length),t.xp6(1),t.Q6J("ngForOf",e.selectedItems)("ngForTrackBy",e.trackByFn),t.xp6(2),t.Q6J("ngIf",e.itemShowRemaining()>0),t.xp6(1),t.Q6J("ngClass",e._settings.defaultOpen?"dropdown-up":"dropdown-down"),t.xp6(1),t.Q6J("hidden",!e._settings.defaultOpen),t.xp6(2),t.Q6J("ngIf",(e._data.length>0||e._settings.allowRemoteDataSearch)&&!e._settings.singleSelection&&e._settings.enableCheckAll&&-1===e._settings.limitSelection),t.xp6(1),t.Q6J("ngIf",(e._data.length>0||e._settings.allowRemoteDataSearch)&&e._settings.allowSearchFilter),t.xp6(1),t.Udp("max-height",e._settings.maxHeight+"px"),t.xp6(1),t.Q6J("ngForOf",t.xi3(14,14,e._data,e.filter)),t.xp6(2),t.Q6J("ngIf",0==e._data.length&&!e._settings.allowRemoteDataSearch))},directives:function(){return[U,w.O5,w.sg,w.mk,v.Fj,v.JJ,v.On]},pipes:function(){return[q]},styles:['.multiselect-dropdown[_ngcontent-%COMP%]{position:relative;width:100%;font-size:inherit;font-family:inherit}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%]{display:inline-block;border:1px solid #adadad;width:100%;padding:6px 12px;margin-bottom:0;font-weight:400;line-height:1.52857143;text-align:left;vertical-align:middle;cursor:pointer;background-image:none;border-radius:4px}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]{border:1px solid #337ab7;margin-right:4px;background:#337ab7;padding:0 5px;color:#fff;border-radius:2px;float:left}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{text-decoration:none}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]:hover{box-shadow:1px 1px #959595}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-down[_ngcontent-%COMP%]{display:inline-block;top:10px;width:0;height:0;border-top:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-up[_ngcontent-%COMP%]{display:inline-block;width:0;height:0;border-bottom:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{background-color:#eceeef}.dropdown-list[_ngcontent-%COMP%]{position:absolute;padding-top:6px;width:100%;z-index:9999;border:1px solid #ccc;border-radius:3px;background:#fff;margin-top:10px;box-shadow:0 1px 5px #959595}.dropdown-list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{padding:0;list-style:none;overflow:auto;margin:0}.dropdown-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:6px 10px;cursor:pointer;text-align:left}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%]{border-bottom:1px solid #ccc;position:relative;padding:10px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:0;width:100%;padding:0 0 0 26px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{outline:0}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:focus + div[_ngcontent-%COMP%]:before, .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:hover + div[_ngcontent-%COMP%]:before{border-color:#337ab7;background-color:#f2f2f2}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:active + div[_ngcontent-%COMP%]:before{transition-duration:0s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{position:relative;padding-left:2em;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;margin:0;color:#000}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:before{box-sizing:content-box;content:"";color:#337ab7;position:absolute;top:50%;left:0;width:14px;height:14px;margin-top:-9px;border:2px solid #337ab7;text-align:center;transition:.4s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:after{box-sizing:content-box;content:"";position:absolute;transform:scale(0);transform-origin:50%;transition:transform .2s ease-out;background-color:transparent;top:50%;left:4px;width:8px;height:3px;margin-top:-4px;border-style:solid;border-color:#fff;border-width:0 0 3px 3px;-o-border-image:none;border-image:none;transform:rotate(-45deg) scale(0)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled + div[_ngcontent-%COMP%]:before{border-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:focus + div[_ngcontent-%COMP%]:before .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:hover + div[_ngcontent-%COMP%]:before{background-color:inherit}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:checked + div[_ngcontent-%COMP%]:before{background-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:after{content:"";transition:transform .2s ease-out;transform:rotate(-45deg) scale(1)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:before{-webkit-animation:.2s ease-in borderscale;animation:.2s ease-in borderscale;background:#337ab7}@-webkit-keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}@keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}'],changeDetection:0}),f([(0,t.IIB)()],n.prototype,"placeholder",null),f([(0,t.IIB)()],n.prototype,"disabled",void 0),f([(0,t.IIB)()],n.prototype,"settings",null),f([(0,t.IIB)()],n.prototype,"data",null),f([(0,t.r_U)("onFilterChange")],n.prototype,"onFilterChange",void 0),f([(0,t.r_U)("onDropDownClose")],n.prototype,"onDropDownClose",void 0),f([(0,t.r_U)("onSelect")],n.prototype,"onSelect",void 0),f([(0,t.r_U)("onDeSelect")],n.prototype,"onDeSelect",void 0),f([(0,t.r_U)("onSelectAll")],n.prototype,"onSelectAll",void 0),f([(0,t.r_U)("onDeSelectAll")],n.prototype,"onDeSelectAll",void 0),f([(0,t.L6J)("blur")],n.prototype,"onTouched",null),n}(),U=function(){var n=function(){function o(i){(0,x.Z)(this,o),this._elementRef=i,this.clickOutside=new t.vpe}return(0,y.Z)(o,[{key:"onClick",value:function(e,l){l&&(this._elementRef.nativeElement.contains(l)||this.clickOutside.emit(e))}}]),o}();return n.\u0275fac=function(i){return new(i||n)(t.Y36(t.SBq))},n.\u0275dir=t.lG2({type:n,selectors:[["","clickOutside",""]],hostBindings:function(i,e){1&i&&t.NdJ("click",function(r){return e.onClick(r,r.target)},!1,t.evT)},outputs:{clickOutside:"clickOutside"}}),f([(0,t.r_U)()],n.prototype,"clickOutside",void 0),f([(0,t.L6J)("document:click",["$event","$event.target"])],n.prototype,"onClick",null),n}(),q=function(){var n=function(){function o(){(0,x.Z)(this,o)}return(0,y.Z)(o,[{key:"transform",value:function(e,l){var r=this;return e&&l?e.filter(function(s){return r.applyFilter(s,l)}):e}},{key:"applyFilter",value:function(e,l){return"string"==typeof e.text&&"string"==typeof l.text?!(l.text&&e.text&&-1===e.text.toLowerCase().indexOf(l.text.toLowerCase())):!(l.text&&e.text&&-1===e.text.toString().toLowerCase().indexOf(l.text.toString().toLowerCase()))}}]),o}();return n.\u0275fac=function(i){return new(i||n)},n.\u0275pipe=t.Yjl({name:"multiSelectFilter",type:n,pure:!1}),n}(),_=D=function(){function n(){(0,x.Z)(this,n)}return(0,y.Z)(n,null,[{key:"forRoot",value:function(){return{ngModule:D}}}]),n}();_.\u0275fac=function(o){return new(o||_)},_.\u0275mod=t.oAB({type:_}),_.\u0275inj=t.cJS({imports:[[w.ez,v.u5]]})}}]); -//# sourceMappingURL=3311.ea9948bff894c65a.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/3311.ea9948bff894c65a.js.map b/frontend/src/main/resources/static/3311.ea9948bff894c65a.js.map deleted file mode 100644 index f7a5fc1..0000000 --- a/frontend/src/main/resources/static/3311.ea9948bff894c65a.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"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","names":["a","rf","ctx","ɵngcc0","ctx_r0","_placeholder","_r10","$event","item_r7","$implicit","onItemClick","k_r8","index","ctx_r1","_settings","itemsShowLimit","text","ctx_r2","itemShowRemaining","_r12","toggleSelectAll","ctx_r3","isAllItemsSelected","disabled","isLimitSelectionReached","e","unSelectAllText","selectAllText","_r14","filter","onFilterTextChange","ctx_r4","searchPlaceholderText","_r19","item_r16","ctx_r5","isSelected","isDisabled","ctx_r6","noDataAvailablePlaceholderText","NgMultiSelectDropDownModule_1","ListItem","source","this","id","DROPDOWN_CONTROL_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","MultiSelectComponent","multi","noop","cdr","_data","selectedItems","isDropdownOpen","_sourceDataType","_sourceDataFields","data","defaultSettings","singleSelection","idField","textField","disabledField","enableCheckAll","allowSearchFilter","limitSelection","clearSearchFilter","maxHeight","closeDropDownOnSelection","showSelectedItemsAtTop","defaultOpen","allowRemoteDataSearch","onFilterChange","EventEmitter","onDropDownClose","onSelect","onDeSelect","onSelectAll","onDeSelectAll","onTouchedCallback","onChangeCallback","value","Object","assign","firstItem","getFields","map","item","l","emit","found","allowAdd","length","removeSelected","addSelected","closeDropdown","splice","fn","clickedItem","forEach","itemDisabledCount","push","emittedValue","itemSel","indexOf","val","selected","Array","isArray","objectify","obj","includes","Number","evt","preventDefault","slice","inputData","fields","prop","o","ɵfac","t","ɵcmp","type","selectors","hostBindings","onTouched","inputs","placeholder","settings","outputs","features","decls","vars","consts","template","toggleDropdown","MultiSelectComponent_span_3_Template","MultiSelectComponent_span_4_Template","MultiSelectComponent_span_6_Template","MultiSelectComponent_li_10_Template","MultiSelectComponent_li_11_Template","MultiSelectComponent_li_13_Template","MultiSelectComponent_li_15_Template","trackByFn","directives","ClickOutsideDirective","ɵngcc1","ɵngcc2","pipes","ListFilterPipe","styles","changeDetection","__decorate","Input","prototype","Output","HostListener","_elementRef","clickOutside","event","targetElement","nativeElement","contains","ɵdir","onClick","target","items","r","applyFilter","toLowerCase","toString","ɵpipe","name","pure","NgMultiSelectDropDownModule","ngModule","n","ɵmod","ɵinj","imports","CommonModule","FormsModule"],"sources":["./node_modules/source-map-loader/dist/cjs.js","./node_modules/ng-multiselect-dropdown/__ivy_ngcc__/fesm2015/ng-multiselect-dropdown.js"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { __decorate } from 'tslib';\nimport { forwardRef, EventEmitter, ChangeDetectorRef, Input, Output, HostListener, Component, ChangeDetectionStrategy, ElementRef, Directive, Pipe, NgModule } from '@angular/core';\nimport { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\n\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/common';\nimport * as ɵngcc2 from '@angular/forms';\n\nfunction MultiSelectComponent_span_3_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\");\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r0._placeholder);\n} }\nfunction MultiSelectComponent_span_4_Template(rf, ctx) { if (rf & 1) {\n const _r10 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"span\", 14);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementStart(2, \"a\", 15);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_span_4_Template_a_click_2_listener($event) { const restoredCtx = ɵngcc0.ɵɵrestoreView(_r10); const item_r7 = restoredCtx.$implicit; const ctx_r9 = ɵngcc0.ɵɵnextContext(); return ctx_r9.onItemClick($event, item_r7); });\n ɵngcc0.ɵɵtext(3, \"x\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const item_r7 = ctx.$implicit;\n const k_r8 = ctx.index;\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"hidden\", k_r8 > ctx_r1._settings.itemsShowLimit - 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\" \", item_r7.text, \" \");\n} }\nfunction MultiSelectComponent_span_6_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\", 16);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\"+\", ctx_r2.itemShowRemaining(), \"\");\n} }\nfunction MultiSelectComponent_li_10_Template(rf, ctx) { if (rf & 1) {\n const _r12 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 17);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_li_10_Template_li_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r12); const ctx_r11 = ɵngcc0.ɵɵnextContext(); return ctx_r11.toggleSelectAll(); });\n ɵngcc0.ɵɵelement(1, \"input\", 18);\n ɵngcc0.ɵɵelementStart(2, \"div\");\n ɵngcc0.ɵɵtext(3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"checked\", ctx_r3.isAllItemsSelected())(\"disabled\", ctx_r3.disabled || ctx_r3.isLimitSelectionReached());\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵtextInterpolate(!ctx_r3.isAllItemsSelected() ? ctx_r3._settings.selectAllText : ctx_r3._settings.unSelectAllText);\n} }\nfunction MultiSelectComponent_li_11_Template(rf, ctx) { if (rf & 1) {\n const _r14 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 19);\n ɵngcc0.ɵɵelementStart(1, \"input\", 20);\n ɵngcc0.ɵɵlistener(\"ngModelChange\", function MultiSelectComponent_li_11_Template_input_ngModelChange_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r14); const ctx_r13 = ɵngcc0.ɵɵnextContext(); return ctx_r13.filter.text = $event; })(\"ngModelChange\", function MultiSelectComponent_li_11_Template_input_ngModelChange_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r14); const ctx_r15 = ɵngcc0.ɵɵnextContext(); return ctx_r15.onFilterTextChange($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r4 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"readOnly\", ctx_r4.disabled)(\"placeholder\", ctx_r4._settings.searchPlaceholderText)(\"ngModel\", ctx_r4.filter.text);\n} }\nfunction MultiSelectComponent_li_13_Template(rf, ctx) { if (rf & 1) {\n const _r19 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 21);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_li_13_Template_li_click_0_listener($event) { const restoredCtx = ɵngcc0.ɵɵrestoreView(_r19); const item_r16 = restoredCtx.$implicit; const ctx_r18 = ɵngcc0.ɵɵnextContext(); return ctx_r18.onItemClick($event, item_r16); });\n ɵngcc0.ɵɵelement(1, \"input\", 22);\n ɵngcc0.ɵɵelementStart(2, \"div\");\n ɵngcc0.ɵɵtext(3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const item_r16 = ctx.$implicit;\n const ctx_r5 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"checked\", ctx_r5.isSelected(item_r16))(\"disabled\", ctx_r5.disabled || ctx_r5.isLimitSelectionReached() && !ctx_r5.isSelected(item_r16) || item_r16.isDisabled);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵtextInterpolate(item_r16.text);\n} }\nfunction MultiSelectComponent_li_15_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"li\", 23);\n ɵngcc0.ɵɵelementStart(1, \"h5\");\n ɵngcc0.ɵɵtext(2);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r6 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵtextInterpolate(ctx_r6._settings.noDataAvailablePlaceholderText);\n} }\nclass ListItem {\r\n constructor(source) {\r\n if (typeof source === 'string' || typeof source === 'number') {\r\n this.id = this.text = source;\r\n this.isDisabled = false;\r\n }\r\n if (typeof source === 'object') {\r\n this.id = source.id;\r\n this.text = source.text;\r\n this.isDisabled = source.isDisabled;\r\n }\r\n }\r\n}\n\nconst DROPDOWN_CONTROL_VALUE_ACCESSOR = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MultiSelectComponent),\r\n multi: true\r\n};\r\nconst noop = () => { };\r\nconst ɵ0 = noop;\r\nlet MultiSelectComponent = class MultiSelectComponent {\r\n constructor(cdr) {\r\n this.cdr = cdr;\r\n this._data = [];\r\n this.selectedItems = [];\r\n this.isDropdownOpen = true;\r\n this._placeholder = \"Select\";\r\n this._sourceDataType = null; // to keep note of the source data type. could be array of string/number/object\r\n this._sourceDataFields = []; // store source data fields names\r\n this.filter = new ListItem(this.data);\r\n this.defaultSettings = {\r\n singleSelection: false,\r\n idField: \"id\",\r\n textField: \"text\",\r\n disabledField: \"isDisabled\",\r\n enableCheckAll: true,\r\n selectAllText: \"Select All\",\r\n unSelectAllText: \"UnSelect All\",\r\n allowSearchFilter: false,\r\n limitSelection: -1,\r\n clearSearchFilter: true,\r\n maxHeight: 197,\r\n itemsShowLimit: 999999999999,\r\n searchPlaceholderText: \"Search\",\r\n noDataAvailablePlaceholderText: \"No data available\",\r\n closeDropDownOnSelection: false,\r\n showSelectedItemsAtTop: false,\r\n defaultOpen: false,\r\n allowRemoteDataSearch: false\r\n };\r\n this.disabled = false;\r\n this.onFilterChange = new EventEmitter();\r\n this.onDropDownClose = new EventEmitter();\r\n this.onSelect = new EventEmitter();\r\n this.onDeSelect = new EventEmitter();\r\n this.onSelectAll = new EventEmitter();\r\n this.onDeSelectAll = new EventEmitter();\r\n this.onTouchedCallback = noop;\r\n this.onChangeCallback = noop;\r\n }\r\n set placeholder(value) {\r\n if (value) {\r\n this._placeholder = value;\r\n }\r\n else {\r\n this._placeholder = \"Select\";\r\n }\r\n }\r\n set settings(value) {\r\n if (value) {\r\n this._settings = Object.assign(this.defaultSettings, value);\r\n }\r\n else {\r\n this._settings = Object.assign(this.defaultSettings);\r\n }\r\n }\r\n set data(value) {\r\n if (!value) {\r\n this._data = [];\r\n }\r\n else {\r\n const firstItem = value[0];\r\n this._sourceDataType = typeof firstItem;\r\n this._sourceDataFields = this.getFields(firstItem);\r\n this._data = value.map((item) => typeof item === \"string\" || typeof item === \"number\"\r\n ? new ListItem(item)\r\n : new ListItem({\r\n id: item[this._settings.idField],\r\n text: item[this._settings.textField],\r\n isDisabled: item[this._settings.disabledField]\r\n }));\r\n }\r\n }\r\n onFilterTextChange($event) {\r\n this.onFilterChange.emit($event);\r\n }\r\n onItemClick($event, item) {\r\n if (this.disabled || item.isDisabled) {\r\n return false;\r\n }\r\n const found = this.isSelected(item);\r\n const allowAdd = this._settings.limitSelection === -1 || (this._settings.limitSelection > 0 && this.selectedItems.length < this._settings.limitSelection);\r\n if (!found) {\r\n if (allowAdd) {\r\n this.addSelected(item);\r\n }\r\n }\r\n else {\r\n this.removeSelected(item);\r\n }\r\n if (this._settings.singleSelection && this._settings.closeDropDownOnSelection) {\r\n this.closeDropdown();\r\n }\r\n }\r\n writeValue(value) {\r\n if (value !== undefined && value !== null && value.length > 0) {\r\n if (this._settings.singleSelection) {\r\n try {\r\n if (value.length >= 1) {\r\n const firstItem = value[0];\r\n this.selectedItems = [\r\n typeof firstItem === \"string\" || typeof firstItem === \"number\"\r\n ? new ListItem(firstItem)\r\n : new ListItem({\r\n id: firstItem[this._settings.idField],\r\n text: firstItem[this._settings.textField],\r\n isDisabled: firstItem[this._settings.disabledField]\r\n })\r\n ];\r\n }\r\n }\r\n catch (e) {\r\n // console.error(e.body.msg);\r\n }\r\n }\r\n else {\r\n const _data = value.map((item) => typeof item === \"string\" || typeof item === \"number\"\r\n ? new ListItem(item)\r\n : new ListItem({\r\n id: item[this._settings.idField],\r\n text: item[this._settings.textField],\r\n isDisabled: item[this._settings.disabledField]\r\n }));\r\n if (this._settings.limitSelection > 0) {\r\n this.selectedItems = _data.splice(0, this._settings.limitSelection);\r\n }\r\n else {\r\n this.selectedItems = _data;\r\n }\r\n }\r\n }\r\n else {\r\n this.selectedItems = [];\r\n }\r\n this.onChangeCallback(value);\r\n }\r\n // From ControlValueAccessor interface\r\n registerOnChange(fn) {\r\n this.onChangeCallback = fn;\r\n }\r\n // From ControlValueAccessor interface\r\n registerOnTouched(fn) {\r\n this.onTouchedCallback = fn;\r\n }\r\n // Set touched on blur\r\n onTouched() {\r\n this.closeDropdown();\r\n this.onTouchedCallback();\r\n }\r\n trackByFn(index, item) {\r\n return item.id;\r\n }\r\n isSelected(clickedItem) {\r\n let found = false;\r\n this.selectedItems.forEach(item => {\r\n if (clickedItem.id === item.id) {\r\n found = true;\r\n }\r\n });\r\n return found;\r\n }\r\n isLimitSelectionReached() {\r\n return this._settings.limitSelection === this.selectedItems.length;\r\n }\r\n isAllItemsSelected() {\r\n // get disabld item count\r\n const itemDisabledCount = this._data.filter(item => item.isDisabled).length;\r\n // take disabled items into consideration when checking\r\n if ((!this.data || this.data.length === 0) && this._settings.allowRemoteDataSearch) {\r\n return false;\r\n }\r\n return this._data.length === this.selectedItems.length + itemDisabledCount;\r\n }\r\n showButton() {\r\n if (!this._settings.singleSelection) {\r\n if (this._settings.limitSelection > 0) {\r\n return false;\r\n }\r\n // this._settings.enableCheckAll = this._settings.limitSelection === -1 ? true : false;\r\n return true; // !this._settings.singleSelection && this._settings.enableCheckAll && this._data.length > 0;\r\n }\r\n else {\r\n // should be disabled in single selection mode\r\n return false;\r\n }\r\n }\r\n itemShowRemaining() {\r\n return this.selectedItems.length - this._settings.itemsShowLimit;\r\n }\r\n addSelected(item) {\r\n if (this._settings.singleSelection) {\r\n this.selectedItems = [];\r\n this.selectedItems.push(item);\r\n }\r\n else {\r\n this.selectedItems.push(item);\r\n }\r\n this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n this.onSelect.emit(this.emittedValue(item));\r\n }\r\n removeSelected(itemSel) {\r\n this.selectedItems.forEach(item => {\r\n if (itemSel.id === item.id) {\r\n this.selectedItems.splice(this.selectedItems.indexOf(item), 1);\r\n }\r\n });\r\n this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n this.onDeSelect.emit(this.emittedValue(itemSel));\r\n }\r\n emittedValue(val) {\r\n const selected = [];\r\n if (Array.isArray(val)) {\r\n val.map(item => {\r\n selected.push(this.objectify(item));\r\n });\r\n }\r\n else {\r\n if (val) {\r\n return this.objectify(val);\r\n }\r\n }\r\n return selected;\r\n }\r\n objectify(val) {\r\n if (this._sourceDataType === 'object') {\r\n const obj = {};\r\n obj[this._settings.idField] = val.id;\r\n obj[this._settings.textField] = val.text;\r\n if (this._sourceDataFields.includes(this._settings.disabledField)) {\r\n obj[this._settings.disabledField] = val.isDisabled;\r\n }\r\n return obj;\r\n }\r\n if (this._sourceDataType === 'number') {\r\n return Number(val.id);\r\n }\r\n else {\r\n return val.text;\r\n }\r\n }\r\n toggleDropdown(evt) {\r\n evt.preventDefault();\r\n if (this.disabled && this._settings.singleSelection) {\r\n return;\r\n }\r\n this._settings.defaultOpen = !this._settings.defaultOpen;\r\n if (!this._settings.defaultOpen) {\r\n this.onDropDownClose.emit();\r\n }\r\n }\r\n closeDropdown() {\r\n this._settings.defaultOpen = false;\r\n // clear search text\r\n if (this._settings.clearSearchFilter) {\r\n this.filter.text = \"\";\r\n }\r\n this.onDropDownClose.emit();\r\n }\r\n toggleSelectAll() {\r\n if (this.disabled) {\r\n return false;\r\n }\r\n if (!this.isAllItemsSelected()) {\r\n // filter out disabled item first before slicing\r\n this.selectedItems = this._data.filter(item => !item.isDisabled).slice();\r\n this.onSelectAll.emit(this.emittedValue(this.selectedItems));\r\n }\r\n else {\r\n this.selectedItems = [];\r\n this.onDeSelectAll.emit(this.emittedValue(this.selectedItems));\r\n }\r\n this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n }\r\n getFields(inputData) {\r\n const fields = [];\r\n if (typeof inputData !== \"object\") {\r\n return fields;\r\n }\r\n // tslint:disable-next-line:forin\r\n for (const prop in inputData) {\r\n fields.push(prop);\r\n }\r\n return fields;\r\n }\r\n};\nMultiSelectComponent.ɵfac = function MultiSelectComponent_Factory(t) { return new (t || MultiSelectComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nMultiSelectComponent.ɵcmp = /*@__PURE__*/ ɵngcc0.ɵɵdefineComponent({ type: MultiSelectComponent, selectors: [[\"ng-multiselect-dropdown\"]], hostBindings: function MultiSelectComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"blur\", function MultiSelectComponent_blur_HostBindingHandler() { return ctx.onTouched(); });\n } }, inputs: { disabled: \"disabled\", placeholder: \"placeholder\", settings: \"settings\", data: \"data\" }, outputs: { onFilterChange: \"onFilterChange\", onDropDownClose: \"onDropDownClose\", onSelect: \"onSelect\", onDeSelect: \"onDeSelect\", onSelectAll: \"onSelectAll\", onDeSelectAll: \"onDeSelectAll\" }, features: [ɵngcc0.ɵɵProvidersFeature([DROPDOWN_CONTROL_VALUE_ACCESSOR])], decls: 16, vars: 17, consts: [[\"tabindex\", \"=0\", 1, \"multiselect-dropdown\", 3, \"blur\", \"clickOutside\"], [\"tabindex\", \"-1\", 1, \"dropdown-btn\", 3, \"click\"], [4, \"ngIf\"], [\"class\", \"selected-item\", 3, \"hidden\", 4, \"ngFor\", \"ngForOf\", \"ngForTrackBy\"], [2, \"float\", \"right !important\", \"padding-right\", \"4px\"], [\"style\", \"padding-right: 6px;\", 4, \"ngIf\"], [3, \"ngClass\"], [1, \"dropdown-list\", 3, \"hidden\"], [1, \"item1\"], [\"class\", \"multiselect-item-checkbox\", \"style\", \"border-bottom: 1px solid #ccc;padding:10px\", 3, \"click\", 4, \"ngIf\"], [\"class\", \"filter-textbox\", 4, \"ngIf\"], [1, \"item2\"], [\"class\", \"multiselect-item-checkbox\", 3, \"click\", 4, \"ngFor\", \"ngForOf\"], [\"class\", \"no-data\", 4, \"ngIf\"], [1, \"selected-item\", 3, \"hidden\"], [2, \"padding-top\", \"2px\", \"padding-left\", \"2px\", \"color\", \"white\", 3, \"click\"], [2, \"padding-right\", \"6px\"], [1, \"multiselect-item-checkbox\", 2, \"border-bottom\", \"1px solid #ccc\", \"padding\", \"10px\", 3, \"click\"], [\"type\", \"checkbox\", \"aria-label\", \"multiselect-select-all\", 3, \"checked\", \"disabled\"], [1, \"filter-textbox\"], [\"type\", \"text\", \"aria-label\", \"multiselect-search\", 3, \"readOnly\", \"placeholder\", \"ngModel\", \"ngModelChange\"], [1, \"multiselect-item-checkbox\", 3, \"click\"], [\"type\", \"checkbox\", \"aria-label\", \"multiselect-item\", 3, \"checked\", \"disabled\"], [1, \"no-data\"]], template: function MultiSelectComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n ɵngcc0.ɵɵlistener(\"blur\", function MultiSelectComponent_Template_div_blur_0_listener() { return ctx.onTouched(); })(\"clickOutside\", function MultiSelectComponent_Template_div_clickOutside_0_listener() { return ctx.closeDropdown(); });\n ɵngcc0.ɵɵelementStart(1, \"div\");\n ɵngcc0.ɵɵelementStart(2, \"span\", 1);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_Template_span_click_2_listener($event) { return ctx.toggleDropdown($event); });\n ɵngcc0.ɵɵtemplate(3, MultiSelectComponent_span_3_Template, 2, 1, \"span\", 2);\n ɵngcc0.ɵɵtemplate(4, MultiSelectComponent_span_4_Template, 4, 2, \"span\", 3);\n ɵngcc0.ɵɵelementStart(5, \"span\", 4);\n ɵngcc0.ɵɵtemplate(6, MultiSelectComponent_span_6_Template, 2, 1, \"span\", 5);\n ɵngcc0.ɵɵelement(7, \"span\", 6);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(8, \"div\", 7);\n ɵngcc0.ɵɵelementStart(9, \"ul\", 8);\n ɵngcc0.ɵɵtemplate(10, MultiSelectComponent_li_10_Template, 4, 3, \"li\", 9);\n ɵngcc0.ɵɵtemplate(11, MultiSelectComponent_li_11_Template, 2, 3, \"li\", 10);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(12, \"ul\", 11);\n ɵngcc0.ɵɵtemplate(13, MultiSelectComponent_li_13_Template, 4, 3, \"li\", 12);\n ɵngcc0.ɵɵpipe(14, \"multiSelectFilter\");\n ɵngcc0.ɵɵtemplate(15, MultiSelectComponent_li_15_Template, 3, 1, \"li\", 13);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.selectedItems.length == 0);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.selectedItems)(\"ngForTrackBy\", ctx.trackByFn);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.itemShowRemaining() > 0);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngClass\", ctx._settings.defaultOpen ? \"dropdown-up\" : \"dropdown-down\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"hidden\", !ctx._settings.defaultOpen);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", (ctx._data.length > 0 || ctx._settings.allowRemoteDataSearch) && !ctx._settings.singleSelection && ctx._settings.enableCheckAll && ctx._settings.limitSelection === -1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", (ctx._data.length > 0 || ctx._settings.allowRemoteDataSearch) && ctx._settings.allowSearchFilter);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"max-height\", ctx._settings.maxHeight + \"px\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ɵngcc0.ɵɵpipeBind2(14, 14, ctx._data, ctx.filter));\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx._data.length == 0 && !ctx._settings.allowRemoteDataSearch);\n } }, directives: function () { return [ClickOutsideDirective, ɵngcc1.NgIf, ɵngcc1.NgForOf, ɵngcc1.NgClass, ɵngcc2.DefaultValueAccessor, ɵngcc2.NgControlStatus, ɵngcc2.NgModel]; }, pipes: function () { return [ListFilterPipe]; }, styles: [\".multiselect-dropdown[_ngcontent-%COMP%]{position:relative;width:100%;font-size:inherit;font-family:inherit}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%]{display:inline-block;border:1px solid #adadad;width:100%;padding:6px 12px;margin-bottom:0;font-weight:400;line-height:1.52857143;text-align:left;vertical-align:middle;cursor:pointer;background-image:none;border-radius:4px}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]{border:1px solid #337ab7;margin-right:4px;background:#337ab7;padding:0 5px;color:#fff;border-radius:2px;float:left}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{text-decoration:none}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]:hover{box-shadow:1px 1px #959595}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-down[_ngcontent-%COMP%]{display:inline-block;top:10px;width:0;height:0;border-top:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-up[_ngcontent-%COMP%]{display:inline-block;width:0;height:0;border-bottom:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{background-color:#eceeef}.dropdown-list[_ngcontent-%COMP%]{position:absolute;padding-top:6px;width:100%;z-index:9999;border:1px solid #ccc;border-radius:3px;background:#fff;margin-top:10px;box-shadow:0 1px 5px #959595}.dropdown-list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{padding:0;list-style:none;overflow:auto;margin:0}.dropdown-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:6px 10px;cursor:pointer;text-align:left}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%]{border-bottom:1px solid #ccc;position:relative;padding:10px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:0;width:100%;padding:0 0 0 26px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{outline:0}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:focus + div[_ngcontent-%COMP%]:before, .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:hover + div[_ngcontent-%COMP%]:before{border-color:#337ab7;background-color:#f2f2f2}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:active + div[_ngcontent-%COMP%]:before{transition-duration:0s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{position:relative;padding-left:2em;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;margin:0;color:#000}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:before{box-sizing:content-box;content:\\\"\\\";color:#337ab7;position:absolute;top:50%;left:0;width:14px;height:14px;margin-top:-9px;border:2px solid #337ab7;text-align:center;transition:.4s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:after{box-sizing:content-box;content:\\\"\\\";position:absolute;transform:scale(0);transform-origin:50%;transition:transform .2s ease-out;background-color:transparent;top:50%;left:4px;width:8px;height:3px;margin-top:-4px;border-style:solid;border-color:#fff;border-width:0 0 3px 3px;-o-border-image:none;border-image:none;transform:rotate(-45deg) scale(0)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled + div[_ngcontent-%COMP%]:before{border-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:focus + div[_ngcontent-%COMP%]:before .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:hover + div[_ngcontent-%COMP%]:before{background-color:inherit}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:checked + div[_ngcontent-%COMP%]:before{background-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:after{content:\\\"\\\";transition:transform .2s ease-out;transform:rotate(-45deg) scale(1)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:before{-webkit-animation:.2s ease-in borderscale;animation:.2s ease-in borderscale;background:#337ab7}@-webkit-keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}@keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}\"], changeDetection: 0 });\r\nMultiSelectComponent.ctorParameters = () => [\r\n { type: ChangeDetectorRef }\r\n];\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"placeholder\", null);\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"disabled\", void 0);\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"settings\", null);\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"data\", null);\r\n__decorate([\r\n Output(\"onFilterChange\")\r\n], MultiSelectComponent.prototype, \"onFilterChange\", void 0);\r\n__decorate([\r\n Output(\"onDropDownClose\")\r\n], MultiSelectComponent.prototype, \"onDropDownClose\", void 0);\r\n__decorate([\r\n Output(\"onSelect\")\r\n], MultiSelectComponent.prototype, \"onSelect\", void 0);\r\n__decorate([\r\n Output(\"onDeSelect\")\r\n], MultiSelectComponent.prototype, \"onDeSelect\", void 0);\r\n__decorate([\r\n Output(\"onSelectAll\")\r\n], MultiSelectComponent.prototype, \"onSelectAll\", void 0);\r\n__decorate([\r\n Output(\"onDeSelectAll\")\r\n], MultiSelectComponent.prototype, \"onDeSelectAll\", void 0);\r\n__decorate([\r\n HostListener(\"blur\")\r\n], MultiSelectComponent.prototype, \"onTouched\", null);\n\nlet ClickOutsideDirective = class ClickOutsideDirective {\r\n constructor(_elementRef) {\r\n this._elementRef = _elementRef;\r\n this.clickOutside = new EventEmitter();\r\n }\r\n onClick(event, targetElement) {\r\n if (!targetElement) {\r\n return;\r\n }\r\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\r\n if (!clickedInside) {\r\n this.clickOutside.emit(event);\r\n }\r\n }\r\n};\nClickOutsideDirective.ɵfac = function ClickOutsideDirective_Factory(t) { return new (t || ClickOutsideDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nClickOutsideDirective.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: ClickOutsideDirective, selectors: [[\"\", \"clickOutside\", \"\"]], hostBindings: function ClickOutsideDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ClickOutsideDirective_click_HostBindingHandler($event) { return ctx.onClick($event, $event.target); }, false, ɵngcc0.ɵɵresolveDocument);\n } }, outputs: { clickOutside: \"clickOutside\" } });\r\nClickOutsideDirective.ctorParameters = () => [\r\n { type: ElementRef }\r\n];\r\n__decorate([\r\n Output()\r\n], ClickOutsideDirective.prototype, \"clickOutside\", void 0);\r\n__decorate([\r\n HostListener('document:click', ['$event', '$event.target'])\r\n], ClickOutsideDirective.prototype, \"onClick\", null);\n\nlet ListFilterPipe = class ListFilterPipe {\r\n transform(items, filter) {\r\n if (!items || !filter) {\r\n return items;\r\n }\r\n return items.filter((item) => this.applyFilter(item, filter));\r\n }\r\n applyFilter(item, filter) {\r\n if (typeof item.text === 'string' && typeof filter.text === 'string') {\r\n return !(filter.text && item.text && item.text.toLowerCase().indexOf(filter.text.toLowerCase()) === -1);\r\n }\r\n else {\r\n return !(filter.text && item.text && item.text.toString().toLowerCase().indexOf(filter.text.toString().toLowerCase()) === -1);\r\n }\r\n }\r\n};\nListFilterPipe.ɵfac = function ListFilterPipe_Factory(t) { return new (t || ListFilterPipe)(); };\nListFilterPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"multiSelectFilter\", type: ListFilterPipe, pure: false });\n\nvar NgMultiSelectDropDownModule_1;\r\nlet NgMultiSelectDropDownModule = NgMultiSelectDropDownModule_1 = class NgMultiSelectDropDownModule {\r\n static forRoot() {\r\n return {\r\n ngModule: NgMultiSelectDropDownModule_1\r\n };\r\n }\r\n};\nNgMultiSelectDropDownModule.ɵfac = function NgMultiSelectDropDownModule_Factory(t) { return new (t || NgMultiSelectDropDownModule)(); };\nNgMultiSelectDropDownModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: NgMultiSelectDropDownModule });\nNgMultiSelectDropDownModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule, FormsModule]] });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MultiSelectComponent, [{\n type: Component,\n args: [{\n selector: \"ng-multiselect-dropdown\",\n template: \"
\\r\\n
\\r\\n \\r\\n {{_placeholder}}\\r\\n _settings.itemsShowLimit-1\\\">\\r\\n {{item.text}}\\r\\n x\\r\\n \\r\\n \\r\\n 0\\\">+{{itemShowRemaining()}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
    \\r\\n
  • 0 || _settings.allowRemoteDataSearch) && !_settings.singleSelection && _settings.enableCheckAll && _settings.limitSelection===-1\\\" class=\\\"multiselect-item-checkbox\\\" style=\\\"border-bottom: 1px solid #ccc;padding:10px\\\">\\r\\n \\r\\n
    {{!isAllItemsSelected() ? _settings.selectAllText : _settings.unSelectAllText}}
    \\r\\n
  • \\r\\n
  • 0 || _settings.allowRemoteDataSearch) && _settings.allowSearchFilter\\\">\\r\\n \\r\\n
  • \\r\\n
\\r\\n
    \\r\\n
  • \\r\\n \\r\\n
    {{item.text}}
    \\r\\n
  • \\r\\n
  • \\r\\n
    {{_settings.noDataAvailablePlaceholderText}}
    \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n\",\n providers: [DROPDOWN_CONTROL_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [\".multiselect-dropdown{position:relative;width:100%;font-size:inherit;font-family:inherit}.multiselect-dropdown .dropdown-btn{display:inline-block;border:1px solid #adadad;width:100%;padding:6px 12px;margin-bottom:0;font-weight:400;line-height:1.52857143;text-align:left;vertical-align:middle;cursor:pointer;background-image:none;border-radius:4px}.multiselect-dropdown .dropdown-btn .selected-item{border:1px solid #337ab7;margin-right:4px;background:#337ab7;padding:0 5px;color:#fff;border-radius:2px;float:left}.multiselect-dropdown .dropdown-btn .selected-item a{text-decoration:none}.multiselect-dropdown .dropdown-btn .selected-item:hover{box-shadow:1px 1px #959595}.multiselect-dropdown .dropdown-btn .dropdown-down{display:inline-block;top:10px;width:0;height:0;border-top:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown .dropdown-btn .dropdown-up{display:inline-block;width:0;height:0;border-bottom:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown .disabled>span{background-color:#eceeef}.dropdown-list{position:absolute;padding-top:6px;width:100%;z-index:9999;border:1px solid #ccc;border-radius:3px;background:#fff;margin-top:10px;box-shadow:0 1px 5px #959595}.dropdown-list ul{padding:0;list-style:none;overflow:auto;margin:0}.dropdown-list li{padding:6px 10px;cursor:pointer;text-align:left}.dropdown-list .filter-textbox{border-bottom:1px solid #ccc;position:relative;padding:10px}.dropdown-list .filter-textbox input{border:0;width:100%;padding:0 0 0 26px}.dropdown-list .filter-textbox input:focus{outline:0}.multiselect-item-checkbox input[type=checkbox]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.multiselect-item-checkbox input[type=checkbox]:focus+div:before,.multiselect-item-checkbox input[type=checkbox]:hover+div:before{border-color:#337ab7;background-color:#f2f2f2}.multiselect-item-checkbox input[type=checkbox]:active+div:before{transition-duration:0s}.multiselect-item-checkbox input[type=checkbox]+div{position:relative;padding-left:2em;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;margin:0;color:#000}.multiselect-item-checkbox input[type=checkbox]+div:before{box-sizing:content-box;content:\\\"\\\";color:#337ab7;position:absolute;top:50%;left:0;width:14px;height:14px;margin-top:-9px;border:2px solid #337ab7;text-align:center;transition:.4s}.multiselect-item-checkbox input[type=checkbox]+div:after{box-sizing:content-box;content:\\\"\\\";position:absolute;transform:scale(0);transform-origin:50%;transition:transform .2s ease-out;background-color:transparent;top:50%;left:4px;width:8px;height:3px;margin-top:-4px;border-style:solid;border-color:#fff;border-width:0 0 3px 3px;-o-border-image:none;border-image:none;transform:rotate(-45deg) scale(0)}.multiselect-item-checkbox input[type=checkbox]:disabled+div:before{border-color:#ccc}.multiselect-item-checkbox input[type=checkbox]:disabled:focus+div:before .multiselect-item-checkbox input[type=checkbox]:disabled:hover+div:before{background-color:inherit}.multiselect-item-checkbox input[type=checkbox]:disabled:checked+div:before{background-color:#ccc}.multiselect-item-checkbox input[type=checkbox]:checked+div:after{content:\\\"\\\";transition:transform .2s ease-out;transform:rotate(-45deg) scale(1)}.multiselect-item-checkbox input[type=checkbox]:checked+div:before{-webkit-animation:.2s ease-in borderscale;animation:.2s ease-in borderscale;background:#337ab7}@-webkit-keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}@keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }]; }, { disabled: [{\n type: Input\n }], onFilterChange: [{\n type: Output,\n args: [\"onFilterChange\"]\n }], onDropDownClose: [{\n type: Output,\n args: [\"onDropDownClose\"]\n }], onSelect: [{\n type: Output,\n args: [\"onSelect\"]\n }], onDeSelect: [{\n type: Output,\n args: [\"onDeSelect\"]\n }], onSelectAll: [{\n type: Output,\n args: [\"onSelectAll\"]\n }], onDeSelectAll: [{\n type: Output,\n args: [\"onDeSelectAll\"]\n }], placeholder: [{\n type: Input\n }], settings: [{\n type: Input\n }], data: [{\n type: Input\n }], \n // Set touched on blur\n onTouched: [{\n type: HostListener,\n args: [\"blur\"]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ClickOutsideDirective, [{\n type: Directive,\n args: [{\n selector: '[clickOutside]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { clickOutside: [{\n type: Output\n }], onClick: [{\n type: HostListener,\n args: ['document:click', ['$event', '$event.target']]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ListFilterPipe, [{\n type: Pipe,\n args: [{\n name: 'multiSelectFilter',\n pure: false\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgMultiSelectDropDownModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule, FormsModule],\n declarations: [MultiSelectComponent, ClickOutsideDirective, ListFilterPipe],\n exports: [MultiSelectComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgMultiSelectDropDownModule, { declarations: function () { return [MultiSelectComponent, ClickOutsideDirective, ListFilterPipe]; }, imports: function () { return [CommonModule, FormsModule]; }, exports: function () { return [MultiSelectComponent]; } }); })();\n\n/**\r\n * Generated bundle index. Do not edit.\r\n */\n\nexport { MultiSelectComponent, NgMultiSelectDropDownModule, DROPDOWN_CONTROL_VALUE_ACCESSOR as ɵa, ClickOutsideDirective as ɵb, ListFilterPipe as ɵc };\n\n"],"sourceRoot":"webpack:///","file":"3311.ea9948bff894c65a.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/3311.fbbbb731fd424338.js b/frontend/src/main/resources/static/3311.fbbbb731fd424338.js new file mode 100644 index 0000000..6518f72 --- /dev/null +++ b/frontend/src/main/resources/static/3311.fbbbb731fd424338.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[3311],{3311:function(Q,T,g){g.d(T,{ZQ:function(){return _}});var y=g(1884),x=g(39117);function f(n,o,i,e){var s,l=arguments.length,r=l<3?o:null===e?e=Object.getOwnPropertyDescriptor(o,i):e;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(n,o,i,e);else for(var a=n.length-1;a>=0;a--)(s=n[a])&&(r=(l<3?s(r):l>3?s(o,i,r):s(o,i))||r);return l>3&&r&&Object.defineProperty(o,i,r),r}var t=g(86613),v=g(90587),w=g(36362);function A(n,o){if(1&n&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&n){var i=t.oxw();t.xp6(1),t.Oqu(i._placeholder)}}function I(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"span",14),t._uU(1),t.TgZ(2,"a",15),t.NdJ("click",function(a){var c=t.CHM(i).$implicit;return t.oxw().onItemClick(a,c)}),t._uU(3,"x"),t.qZA(),t.qZA()}if(2&n){var e=o.$implicit,l=o.index,r=t.oxw();t.Q6J("hidden",l>r._settings.itemsShowLimit-1),t.xp6(1),t.hij(" ",e.text," ")}}function Z(n,o){if(1&n&&(t.TgZ(0,"span",16),t._uU(1),t.qZA()),2&n){var i=t.oxw();t.xp6(1),t.hij("+",i.itemShowRemaining(),"")}}function J(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"li",17),t.NdJ("click",function(){return t.CHM(i),t.oxw().toggleSelectAll()}),t._UZ(1,"input",18),t.TgZ(2,"div"),t._uU(3),t.qZA(),t.qZA()}if(2&n){var e=t.oxw();t.xp6(1),t.Q6J("checked",e.isAllItemsSelected())("disabled",e.disabled||e.isLimitSelectionReached()),t.xp6(2),t.Oqu(e.isAllItemsSelected()?e._settings.unSelectAllText:e._settings.selectAllText)}}function j(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"li",19),t.TgZ(1,"input",20),t.NdJ("ngModelChange",function(r){return t.CHM(i),t.oxw().filter.text=r})("ngModelChange",function(r){return t.CHM(i),t.oxw().onFilterTextChange(r)}),t.qZA(),t.qZA()}if(2&n){var e=t.oxw();t.xp6(1),t.Q6J("readOnly",e.disabled)("placeholder",e._settings.searchPlaceholderText)("ngModel",e.filter.text)}}function R(n,o){if(1&n){var i=t.EpF();t.TgZ(0,"li",21),t.NdJ("click",function(s){var p=t.CHM(i).$implicit;return t.oxw().onItemClick(s,p)}),t._UZ(1,"input",22),t.TgZ(2,"div"),t._uU(3),t.qZA(),t.qZA()}if(2&n){var e=o.$implicit,l=t.oxw();t.xp6(1),t.Q6J("checked",l.isSelected(e))("disabled",l.disabled||l.isLimitSelectionReached()&&!l.isSelected(e)||e.isDisabled),t.xp6(2),t.Oqu(e.text)}}function N(n,o){if(1&n&&(t.TgZ(0,"li",23),t.TgZ(1,"h5"),t._uU(2),t.qZA(),t.qZA()),2&n){var i=t.oxw();t.xp6(2),t.Oqu(i._settings.noDataAvailablePlaceholderText)}}var D,h=(0,y.Z)(function n(o){(0,x.Z)(this,n),("string"==typeof o||"number"==typeof o)&&(this.id=this.text=o,this.isDisabled=!1),"object"==typeof o&&(this.id=o.id,this.text=o.text,this.isDisabled=o.isDisabled)}),L={provide:v.JU,useExisting:(0,t.Gpc)(function(){return B}),multi:!0},P=function(){},B=function(){var n=function(){function o(i){(0,x.Z)(this,o),this.cdr=i,this._data=[],this.selectedItems=[],this.isDropdownOpen=!0,this._placeholder="Select",this._sourceDataType=null,this._sourceDataFields=[],this.filter=new h(this.data),this.defaultSettings={singleSelection:!1,idField:"id",textField:"text",disabledField:"isDisabled",enableCheckAll:!0,selectAllText:"Select All",unSelectAllText:"UnSelect All",allowSearchFilter:!1,limitSelection:-1,clearSearchFilter:!0,maxHeight:197,itemsShowLimit:999999999999,searchPlaceholderText:"Search",noDataAvailablePlaceholderText:"No data available",closeDropDownOnSelection:!1,showSelectedItemsAtTop:!1,defaultOpen:!1,allowRemoteDataSearch:!1},this.disabled=!1,this.onFilterChange=new t.vpe,this.onDropDownClose=new t.vpe,this.onSelect=new t.vpe,this.onDeSelect=new t.vpe,this.onSelectAll=new t.vpe,this.onDeSelectAll=new t.vpe,this.onTouchedCallback=P,this.onChangeCallback=P}return(0,y.Z)(o,[{key:"placeholder",set:function(e){this._placeholder=e||"Select"}},{key:"settings",set:function(e){this._settings=e?Object.assign(this.defaultSettings,e):Object.assign(this.defaultSettings)}},{key:"data",set:function(e){var l=this;if(e){var r=e[0];this._sourceDataType=typeof r,this._sourceDataFields=this.getFields(r),this._data=e.map(function(s){return new h("string"==typeof s||"number"==typeof s?s:{id:s[l._settings.idField],text:s[l._settings.textField],isDisabled:s[l._settings.disabledField]})})}else this._data=[]}},{key:"onFilterTextChange",value:function(e){this.onFilterChange.emit(e)}},{key:"onItemClick",value:function(e,l){if(this.disabled||l.isDisabled)return!1;var r=this.isSelected(l),s=-1===this._settings.limitSelection||this._settings.limitSelection>0&&this.selectedItems.length0)if(this._settings.singleSelection)try{if(e.length>=1){var r=e[0];this.selectedItems=[new h("string"==typeof r||"number"==typeof r?r:{id:r[this._settings.idField],text:r[this._settings.textField],isDisabled:r[this._settings.disabledField]})]}}catch(a){}else{var s=e.map(function(a){return new h("string"==typeof a||"number"==typeof a?a:{id:a[l._settings.idField],text:a[l._settings.textField],isDisabled:a[l._settings.disabledField]})});this.selectedItems=this._settings.limitSelection>0?s.splice(0,this._settings.limitSelection):s}else this.selectedItems=[];this.onChangeCallback(e)}},{key:"registerOnChange",value:function(e){this.onChangeCallback=e}},{key:"registerOnTouched",value:function(e){this.onTouchedCallback=e}},{key:"onTouched",value:function(){this.closeDropdown(),this.onTouchedCallback()}},{key:"trackByFn",value:function(e,l){return l.id}},{key:"isSelected",value:function(e){var l=!1;return this.selectedItems.forEach(function(r){e.id===r.id&&(l=!0)}),l}},{key:"isLimitSelectionReached",value:function(){return this._settings.limitSelection===this.selectedItems.length}},{key:"isAllItemsSelected",value:function(){var e=this._data.filter(function(l){return l.isDisabled}).length;return!((!this.data||0===this.data.length)&&this._settings.allowRemoteDataSearch)&&this._data.length===this.selectedItems.length+e}},{key:"showButton",value:function(){return!(this._settings.singleSelection||this._settings.limitSelection>0)}},{key:"itemShowRemaining",value:function(){return this.selectedItems.length-this._settings.itemsShowLimit}},{key:"addSelected",value:function(e){this._settings.singleSelection?(this.selectedItems=[],this.selectedItems.push(e)):this.selectedItems.push(e),this.onChangeCallback(this.emittedValue(this.selectedItems)),this.onSelect.emit(this.emittedValue(e))}},{key:"removeSelected",value:function(e){var l=this;this.selectedItems.forEach(function(r){e.id===r.id&&l.selectedItems.splice(l.selectedItems.indexOf(r),1)}),this.onChangeCallback(this.emittedValue(this.selectedItems)),this.onDeSelect.emit(this.emittedValue(e))}},{key:"emittedValue",value:function(e){var l=this,r=[];if(Array.isArray(e))e.map(function(s){r.push(l.objectify(s))});else if(e)return this.objectify(e);return r}},{key:"objectify",value:function(e){if("object"===this._sourceDataType){var l={};return l[this._settings.idField]=e.id,l[this._settings.textField]=e.text,this._sourceDataFields.includes(this._settings.disabledField)&&(l[this._settings.disabledField]=e.isDisabled),l}return"number"===this._sourceDataType?Number(e.id):e.text}},{key:"toggleDropdown",value:function(e){e.preventDefault(),(!this.disabled||!this._settings.singleSelection)&&(this._settings.defaultOpen=!this._settings.defaultOpen,this._settings.defaultOpen||this.onDropDownClose.emit())}},{key:"closeDropdown",value:function(){this._settings.defaultOpen=!1,this._settings.clearSearchFilter&&(this.filter.text=""),this.onDropDownClose.emit()}},{key:"toggleSelectAll",value:function(){if(this.disabled)return!1;this.isAllItemsSelected()?(this.selectedItems=[],this.onDeSelectAll.emit(this.emittedValue(this.selectedItems))):(this.selectedItems=this._data.filter(function(e){return!e.isDisabled}).slice(),this.onSelectAll.emit(this.emittedValue(this.selectedItems))),this.onChangeCallback(this.emittedValue(this.selectedItems))}},{key:"getFields",value:function(e){var l=[];if("object"!=typeof e)return l;for(var r in e)l.push(r);return l}}]),o}();return n.\u0275fac=function(i){return new(i||n)(t.Y36(t.sBO))},n.\u0275cmp=t.Xpm({type:n,selectors:[["ng-multiselect-dropdown"]],hostBindings:function(i,e){1&i&&t.NdJ("blur",function(){return e.onTouched()})},inputs:{disabled:"disabled",placeholder:"placeholder",settings:"settings",data:"data"},outputs:{onFilterChange:"onFilterChange",onDropDownClose:"onDropDownClose",onSelect:"onSelect",onDeSelect:"onDeSelect",onSelectAll:"onSelectAll",onDeSelectAll:"onDeSelectAll"},features:[t._Bn([L])],decls:16,vars:17,consts:[["tabindex","=0",1,"multiselect-dropdown",3,"blur","clickOutside"],["tabindex","-1",1,"dropdown-btn",3,"click"],[4,"ngIf"],["class","selected-item",3,"hidden",4,"ngFor","ngForOf","ngForTrackBy"],[2,"float","right !important","padding-right","4px"],["style","padding-right: 6px;",4,"ngIf"],[3,"ngClass"],[1,"dropdown-list",3,"hidden"],[1,"item1"],["class","multiselect-item-checkbox","style","border-bottom: 1px solid #ccc;padding:10px",3,"click",4,"ngIf"],["class","filter-textbox",4,"ngIf"],[1,"item2"],["class","multiselect-item-checkbox",3,"click",4,"ngFor","ngForOf"],["class","no-data",4,"ngIf"],[1,"selected-item",3,"hidden"],[2,"padding-top","2px","padding-left","2px","color","white",3,"click"],[2,"padding-right","6px"],[1,"multiselect-item-checkbox",2,"border-bottom","1px solid #ccc","padding","10px",3,"click"],["type","checkbox","aria-label","multiselect-select-all",3,"checked","disabled"],[1,"filter-textbox"],["type","text","aria-label","multiselect-search",3,"readOnly","placeholder","ngModel","ngModelChange"],[1,"multiselect-item-checkbox",3,"click"],["type","checkbox","aria-label","multiselect-item",3,"checked","disabled"],[1,"no-data"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.NdJ("blur",function(){return e.onTouched()})("clickOutside",function(){return e.closeDropdown()}),t.TgZ(1,"div"),t.TgZ(2,"span",1),t.NdJ("click",function(r){return e.toggleDropdown(r)}),t.YNc(3,A,2,1,"span",2),t.YNc(4,I,4,2,"span",3),t.TgZ(5,"span",4),t.YNc(6,Z,2,1,"span",5),t._UZ(7,"span",6),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",7),t.TgZ(9,"ul",8),t.YNc(10,J,4,3,"li",9),t.YNc(11,j,2,3,"li",10),t.qZA(),t.TgZ(12,"ul",11),t.YNc(13,R,4,3,"li",12),t.ALo(14,"multiSelectFilter"),t.YNc(15,N,3,1,"li",13),t.qZA(),t.qZA(),t.qZA()),2&i&&(t.xp6(1),t.ekj("disabled",e.disabled),t.xp6(2),t.Q6J("ngIf",0==e.selectedItems.length),t.xp6(1),t.Q6J("ngForOf",e.selectedItems)("ngForTrackBy",e.trackByFn),t.xp6(2),t.Q6J("ngIf",e.itemShowRemaining()>0),t.xp6(1),t.Q6J("ngClass",e._settings.defaultOpen?"dropdown-up":"dropdown-down"),t.xp6(1),t.Q6J("hidden",!e._settings.defaultOpen),t.xp6(2),t.Q6J("ngIf",(e._data.length>0||e._settings.allowRemoteDataSearch)&&!e._settings.singleSelection&&e._settings.enableCheckAll&&-1===e._settings.limitSelection),t.xp6(1),t.Q6J("ngIf",(e._data.length>0||e._settings.allowRemoteDataSearch)&&e._settings.allowSearchFilter),t.xp6(1),t.Udp("max-height",e._settings.maxHeight+"px"),t.xp6(1),t.Q6J("ngForOf",t.xi3(14,14,e._data,e.filter)),t.xp6(2),t.Q6J("ngIf",0==e._data.length&&!e._settings.allowRemoteDataSearch))},directives:function(){return[U,w.O5,w.sg,w.mk,v.Fj,v.JJ,v.On]},pipes:function(){return[q]},styles:['.multiselect-dropdown[_ngcontent-%COMP%]{position:relative;width:100%;font-size:inherit;font-family:inherit}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%]{display:inline-block;border:1px solid #adadad;width:100%;padding:6px 12px;margin-bottom:0;font-weight:400;line-height:1.52857143;text-align:left;vertical-align:middle;cursor:pointer;background-image:none;border-radius:4px}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]{border:1px solid #337ab7;margin-right:4px;background:#337ab7;padding:0 5px;color:#fff;border-radius:2px;float:left}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{text-decoration:none}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]:hover{box-shadow:1px 1px #959595}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-down[_ngcontent-%COMP%]{display:inline-block;top:10px;width:0;height:0;border-top:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-up[_ngcontent-%COMP%]{display:inline-block;width:0;height:0;border-bottom:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{background-color:#eceeef}.dropdown-list[_ngcontent-%COMP%]{position:absolute;padding-top:6px;width:100%;z-index:9999;border:1px solid #ccc;border-radius:3px;background:#fff;margin-top:10px;box-shadow:0 1px 5px #959595}.dropdown-list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{padding:0;list-style:none;overflow:auto;margin:0}.dropdown-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:6px 10px;cursor:pointer;text-align:left}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%]{border-bottom:1px solid #ccc;position:relative;padding:10px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:0;width:100%;padding:0 0 0 26px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{outline:0}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:focus + div[_ngcontent-%COMP%]:before, .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:hover + div[_ngcontent-%COMP%]:before{border-color:#337ab7;background-color:#f2f2f2}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:active + div[_ngcontent-%COMP%]:before{transition-duration:0s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{position:relative;padding-left:2em;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;margin:0;color:#000}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:before{box-sizing:content-box;content:"";color:#337ab7;position:absolute;top:50%;left:0;width:14px;height:14px;margin-top:-9px;border:2px solid #337ab7;text-align:center;transition:.4s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:after{box-sizing:content-box;content:"";position:absolute;transform:scale(0);transform-origin:50%;transition:transform .2s ease-out;background-color:transparent;top:50%;left:4px;width:8px;height:3px;margin-top:-4px;border-style:solid;border-color:#fff;border-width:0 0 3px 3px;-o-border-image:none;border-image:none;transform:rotate(-45deg) scale(0)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled + div[_ngcontent-%COMP%]:before{border-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:focus + div[_ngcontent-%COMP%]:before .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:hover + div[_ngcontent-%COMP%]:before{background-color:inherit}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:checked + div[_ngcontent-%COMP%]:before{background-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:after{content:"";transition:transform .2s ease-out;transform:rotate(-45deg) scale(1)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:before{-webkit-animation:.2s ease-in borderscale;animation:.2s ease-in borderscale;background:#337ab7}@-webkit-keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}@keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}'],changeDetection:0}),f([(0,t.IIB)()],n.prototype,"placeholder",null),f([(0,t.IIB)()],n.prototype,"disabled",void 0),f([(0,t.IIB)()],n.prototype,"settings",null),f([(0,t.IIB)()],n.prototype,"data",null),f([(0,t.r_U)("onFilterChange")],n.prototype,"onFilterChange",void 0),f([(0,t.r_U)("onDropDownClose")],n.prototype,"onDropDownClose",void 0),f([(0,t.r_U)("onSelect")],n.prototype,"onSelect",void 0),f([(0,t.r_U)("onDeSelect")],n.prototype,"onDeSelect",void 0),f([(0,t.r_U)("onSelectAll")],n.prototype,"onSelectAll",void 0),f([(0,t.r_U)("onDeSelectAll")],n.prototype,"onDeSelectAll",void 0),f([(0,t.L6J)("blur")],n.prototype,"onTouched",null),n}(),U=function(){var n=function(){function o(i){(0,x.Z)(this,o),this._elementRef=i,this.clickOutside=new t.vpe}return(0,y.Z)(o,[{key:"onClick",value:function(e,l){l&&(this._elementRef.nativeElement.contains(l)||this.clickOutside.emit(e))}}]),o}();return n.\u0275fac=function(i){return new(i||n)(t.Y36(t.SBq))},n.\u0275dir=t.lG2({type:n,selectors:[["","clickOutside",""]],hostBindings:function(i,e){1&i&&t.NdJ("click",function(r){return e.onClick(r,r.target)},!1,t.evT)},outputs:{clickOutside:"clickOutside"}}),f([(0,t.r_U)()],n.prototype,"clickOutside",void 0),f([(0,t.L6J)("document:click",["$event","$event.target"])],n.prototype,"onClick",null),n}(),q=function(){var n=function(){function o(){(0,x.Z)(this,o)}return(0,y.Z)(o,[{key:"transform",value:function(e,l){var r=this;return e&&l?e.filter(function(s){return r.applyFilter(s,l)}):e}},{key:"applyFilter",value:function(e,l){return"string"==typeof e.text&&"string"==typeof l.text?!(l.text&&e.text&&-1===e.text.toLowerCase().indexOf(l.text.toLowerCase())):!(l.text&&e.text&&-1===e.text.toString().toLowerCase().indexOf(l.text.toString().toLowerCase()))}}]),o}();return n.\u0275fac=function(i){return new(i||n)},n.\u0275pipe=t.Yjl({name:"multiSelectFilter",type:n,pure:!1}),n}(),_=D=function(){function n(){(0,x.Z)(this,n)}return(0,y.Z)(n,null,[{key:"forRoot",value:function(){return{ngModule:D}}}]),n}();_.\u0275fac=function(o){return new(o||_)},_.\u0275mod=t.oAB({type:_}),_.\u0275inj=t.cJS({imports:[[w.ez,v.u5]]})}}]); +//# sourceMappingURL=3311.fbbbb731fd424338.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/3311.fbbbb731fd424338.js.map b/frontend/src/main/resources/static/3311.fbbbb731fd424338.js.map new file mode 100644 index 0000000..cc95a75 --- /dev/null +++ b/frontend/src/main/resources/static/3311.fbbbb731fd424338.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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","names":["a","rf","ctx","ɵngcc0","ctx_r0","_placeholder","_r10","$event","item_r7","$implicit","onItemClick","k_r8","index","ctx_r1","_settings","itemsShowLimit","text","ctx_r2","itemShowRemaining","_r12","toggleSelectAll","ctx_r3","isAllItemsSelected","disabled","isLimitSelectionReached","e","unSelectAllText","selectAllText","_r14","filter","onFilterTextChange","ctx_r4","searchPlaceholderText","_r19","item_r16","ctx_r5","isSelected","isDisabled","ctx_r6","noDataAvailablePlaceholderText","NgMultiSelectDropDownModule_1","ListItem","source","this","id","DROPDOWN_CONTROL_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","MultiSelectComponent","multi","noop","cdr","_data","selectedItems","isDropdownOpen","_sourceDataType","_sourceDataFields","data","defaultSettings","singleSelection","idField","textField","disabledField","enableCheckAll","allowSearchFilter","limitSelection","clearSearchFilter","maxHeight","closeDropDownOnSelection","showSelectedItemsAtTop","defaultOpen","allowRemoteDataSearch","onFilterChange","EventEmitter","onDropDownClose","onSelect","onDeSelect","onSelectAll","onDeSelectAll","onTouchedCallback","onChangeCallback","value","Object","assign","firstItem","getFields","map","item","l","emit","found","allowAdd","length","removeSelected","addSelected","closeDropdown","splice","fn","clickedItem","forEach","itemDisabledCount","push","emittedValue","itemSel","indexOf","val","selected","Array","isArray","objectify","obj","includes","Number","evt","preventDefault","slice","inputData","fields","prop","o","ɵfac","t","ɵcmp","type","selectors","hostBindings","onTouched","inputs","placeholder","settings","outputs","features","decls","vars","consts","template","toggleDropdown","MultiSelectComponent_span_3_Template","MultiSelectComponent_span_4_Template","MultiSelectComponent_span_6_Template","MultiSelectComponent_li_10_Template","MultiSelectComponent_li_11_Template","MultiSelectComponent_li_13_Template","MultiSelectComponent_li_15_Template","trackByFn","directives","ClickOutsideDirective","ɵngcc1","ɵngcc2","pipes","ListFilterPipe","styles","changeDetection","__decorate","Input","prototype","Output","HostListener","_elementRef","clickOutside","event","targetElement","nativeElement","contains","ɵdir","onClick","target","items","r","applyFilter","toLowerCase","toString","ɵpipe","name","pure","NgMultiSelectDropDownModule","ngModule","n","ɵmod","ɵinj","imports","CommonModule","FormsModule"],"sources":["./node_modules/ng-multiselect-dropdown/node_modules/tslib/tslib.es6.js","./node_modules/ng-multiselect-dropdown/__ivy_ngcc__/fesm2015/ng-multiselect-dropdown.js"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { __decorate } from 'tslib';\nimport { forwardRef, EventEmitter, ChangeDetectorRef, Input, Output, HostListener, Component, ChangeDetectionStrategy, ElementRef, Directive, Pipe, NgModule } from '@angular/core';\nimport { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\n\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/common';\nimport * as ɵngcc2 from '@angular/forms';\n\nfunction MultiSelectComponent_span_3_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\");\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r0._placeholder);\n} }\nfunction MultiSelectComponent_span_4_Template(rf, ctx) { if (rf & 1) {\n const _r10 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"span\", 14);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementStart(2, \"a\", 15);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_span_4_Template_a_click_2_listener($event) { const restoredCtx = ɵngcc0.ɵɵrestoreView(_r10); const item_r7 = restoredCtx.$implicit; const ctx_r9 = ɵngcc0.ɵɵnextContext(); return ctx_r9.onItemClick($event, item_r7); });\n ɵngcc0.ɵɵtext(3, \"x\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const item_r7 = ctx.$implicit;\n const k_r8 = ctx.index;\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"hidden\", k_r8 > ctx_r1._settings.itemsShowLimit - 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\" \", item_r7.text, \" \");\n} }\nfunction MultiSelectComponent_span_6_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\", 16);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\"+\", ctx_r2.itemShowRemaining(), \"\");\n} }\nfunction MultiSelectComponent_li_10_Template(rf, ctx) { if (rf & 1) {\n const _r12 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 17);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_li_10_Template_li_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r12); const ctx_r11 = ɵngcc0.ɵɵnextContext(); return ctx_r11.toggleSelectAll(); });\n ɵngcc0.ɵɵelement(1, \"input\", 18);\n ɵngcc0.ɵɵelementStart(2, \"div\");\n ɵngcc0.ɵɵtext(3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"checked\", ctx_r3.isAllItemsSelected())(\"disabled\", ctx_r3.disabled || ctx_r3.isLimitSelectionReached());\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵtextInterpolate(!ctx_r3.isAllItemsSelected() ? ctx_r3._settings.selectAllText : ctx_r3._settings.unSelectAllText);\n} }\nfunction MultiSelectComponent_li_11_Template(rf, ctx) { if (rf & 1) {\n const _r14 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 19);\n ɵngcc0.ɵɵelementStart(1, \"input\", 20);\n ɵngcc0.ɵɵlistener(\"ngModelChange\", function MultiSelectComponent_li_11_Template_input_ngModelChange_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r14); const ctx_r13 = ɵngcc0.ɵɵnextContext(); return ctx_r13.filter.text = $event; })(\"ngModelChange\", function MultiSelectComponent_li_11_Template_input_ngModelChange_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r14); const ctx_r15 = ɵngcc0.ɵɵnextContext(); return ctx_r15.onFilterTextChange($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r4 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"readOnly\", ctx_r4.disabled)(\"placeholder\", ctx_r4._settings.searchPlaceholderText)(\"ngModel\", ctx_r4.filter.text);\n} }\nfunction MultiSelectComponent_li_13_Template(rf, ctx) { if (rf & 1) {\n const _r19 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 21);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_li_13_Template_li_click_0_listener($event) { const restoredCtx = ɵngcc0.ɵɵrestoreView(_r19); const item_r16 = restoredCtx.$implicit; const ctx_r18 = ɵngcc0.ɵɵnextContext(); return ctx_r18.onItemClick($event, item_r16); });\n ɵngcc0.ɵɵelement(1, \"input\", 22);\n ɵngcc0.ɵɵelementStart(2, \"div\");\n ɵngcc0.ɵɵtext(3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const item_r16 = ctx.$implicit;\n const ctx_r5 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"checked\", ctx_r5.isSelected(item_r16))(\"disabled\", ctx_r5.disabled || ctx_r5.isLimitSelectionReached() && !ctx_r5.isSelected(item_r16) || item_r16.isDisabled);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵtextInterpolate(item_r16.text);\n} }\nfunction MultiSelectComponent_li_15_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"li\", 23);\n ɵngcc0.ɵɵelementStart(1, \"h5\");\n ɵngcc0.ɵɵtext(2);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r6 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵtextInterpolate(ctx_r6._settings.noDataAvailablePlaceholderText);\n} }\nclass ListItem {\r\n constructor(source) {\r\n if (typeof source === 'string' || typeof source === 'number') {\r\n this.id = this.text = source;\r\n this.isDisabled = false;\r\n }\r\n if (typeof source === 'object') {\r\n this.id = source.id;\r\n this.text = source.text;\r\n this.isDisabled = source.isDisabled;\r\n }\r\n }\r\n}\n\nconst DROPDOWN_CONTROL_VALUE_ACCESSOR = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MultiSelectComponent),\r\n multi: true\r\n};\r\nconst noop = () => { };\r\nconst ɵ0 = noop;\r\nlet MultiSelectComponent = class MultiSelectComponent {\r\n constructor(cdr) {\r\n this.cdr = cdr;\r\n this._data = [];\r\n this.selectedItems = [];\r\n this.isDropdownOpen = true;\r\n this._placeholder = \"Select\";\r\n this._sourceDataType = null; // to keep note of the source data type. could be array of string/number/object\r\n this._sourceDataFields = []; // store source data fields names\r\n this.filter = new ListItem(this.data);\r\n this.defaultSettings = {\r\n singleSelection: false,\r\n idField: \"id\",\r\n textField: \"text\",\r\n disabledField: \"isDisabled\",\r\n enableCheckAll: true,\r\n selectAllText: \"Select All\",\r\n unSelectAllText: \"UnSelect All\",\r\n allowSearchFilter: false,\r\n limitSelection: -1,\r\n clearSearchFilter: true,\r\n maxHeight: 197,\r\n itemsShowLimit: 999999999999,\r\n searchPlaceholderText: \"Search\",\r\n noDataAvailablePlaceholderText: \"No data available\",\r\n closeDropDownOnSelection: false,\r\n showSelectedItemsAtTop: false,\r\n defaultOpen: false,\r\n allowRemoteDataSearch: false\r\n };\r\n this.disabled = false;\r\n this.onFilterChange = new EventEmitter();\r\n this.onDropDownClose = new EventEmitter();\r\n this.onSelect = new EventEmitter();\r\n this.onDeSelect = new EventEmitter();\r\n this.onSelectAll = new EventEmitter();\r\n this.onDeSelectAll = new EventEmitter();\r\n this.onTouchedCallback = noop;\r\n this.onChangeCallback = noop;\r\n }\r\n set placeholder(value) {\r\n if (value) {\r\n this._placeholder = value;\r\n }\r\n else {\r\n this._placeholder = \"Select\";\r\n }\r\n }\r\n set settings(value) {\r\n if (value) {\r\n this._settings = Object.assign(this.defaultSettings, value);\r\n }\r\n else {\r\n this._settings = Object.assign(this.defaultSettings);\r\n }\r\n }\r\n set data(value) {\r\n if (!value) {\r\n this._data = [];\r\n }\r\n else {\r\n const firstItem = value[0];\r\n this._sourceDataType = typeof firstItem;\r\n this._sourceDataFields = this.getFields(firstItem);\r\n this._data = value.map((item) => typeof item === \"string\" || typeof item === \"number\"\r\n ? new ListItem(item)\r\n : new ListItem({\r\n id: item[this._settings.idField],\r\n text: item[this._settings.textField],\r\n isDisabled: item[this._settings.disabledField]\r\n }));\r\n }\r\n }\r\n onFilterTextChange($event) {\r\n this.onFilterChange.emit($event);\r\n }\r\n onItemClick($event, item) {\r\n if (this.disabled || item.isDisabled) {\r\n return false;\r\n }\r\n const found = this.isSelected(item);\r\n const allowAdd = this._settings.limitSelection === -1 || (this._settings.limitSelection > 0 && this.selectedItems.length < this._settings.limitSelection);\r\n if (!found) {\r\n if (allowAdd) {\r\n this.addSelected(item);\r\n }\r\n }\r\n else {\r\n this.removeSelected(item);\r\n }\r\n if (this._settings.singleSelection && this._settings.closeDropDownOnSelection) {\r\n this.closeDropdown();\r\n }\r\n }\r\n writeValue(value) {\r\n if (value !== undefined && value !== null && value.length > 0) {\r\n if (this._settings.singleSelection) {\r\n try {\r\n if (value.length >= 1) {\r\n const firstItem = value[0];\r\n this.selectedItems = [\r\n typeof firstItem === \"string\" || typeof firstItem === \"number\"\r\n ? new ListItem(firstItem)\r\n : new ListItem({\r\n id: firstItem[this._settings.idField],\r\n text: firstItem[this._settings.textField],\r\n isDisabled: firstItem[this._settings.disabledField]\r\n })\r\n ];\r\n }\r\n }\r\n catch (e) {\r\n // console.error(e.body.msg);\r\n }\r\n }\r\n else {\r\n const _data = value.map((item) => typeof item === \"string\" || typeof item === \"number\"\r\n ? new ListItem(item)\r\n : new ListItem({\r\n id: item[this._settings.idField],\r\n text: item[this._settings.textField],\r\n isDisabled: item[this._settings.disabledField]\r\n }));\r\n if (this._settings.limitSelection > 0) {\r\n this.selectedItems = _data.splice(0, this._settings.limitSelection);\r\n }\r\n else {\r\n this.selectedItems = _data;\r\n }\r\n }\r\n }\r\n else {\r\n this.selectedItems = [];\r\n }\r\n this.onChangeCallback(value);\r\n }\r\n // From ControlValueAccessor interface\r\n registerOnChange(fn) {\r\n this.onChangeCallback = fn;\r\n }\r\n // From ControlValueAccessor interface\r\n registerOnTouched(fn) {\r\n this.onTouchedCallback = fn;\r\n }\r\n // Set touched on blur\r\n onTouched() {\r\n this.closeDropdown();\r\n this.onTouchedCallback();\r\n }\r\n trackByFn(index, item) {\r\n return item.id;\r\n }\r\n isSelected(clickedItem) {\r\n let found = false;\r\n this.selectedItems.forEach(item => {\r\n if (clickedItem.id === item.id) {\r\n found = true;\r\n }\r\n });\r\n return found;\r\n }\r\n isLimitSelectionReached() {\r\n return this._settings.limitSelection === this.selectedItems.length;\r\n }\r\n isAllItemsSelected() {\r\n // get disabld item count\r\n const itemDisabledCount = this._data.filter(item => item.isDisabled).length;\r\n // take disabled items into consideration when checking\r\n if ((!this.data || this.data.length === 0) && this._settings.allowRemoteDataSearch) {\r\n return false;\r\n }\r\n return this._data.length === this.selectedItems.length + itemDisabledCount;\r\n }\r\n showButton() {\r\n if (!this._settings.singleSelection) {\r\n if (this._settings.limitSelection > 0) {\r\n return false;\r\n }\r\n // this._settings.enableCheckAll = this._settings.limitSelection === -1 ? true : false;\r\n return true; // !this._settings.singleSelection && this._settings.enableCheckAll && this._data.length > 0;\r\n }\r\n else {\r\n // should be disabled in single selection mode\r\n return false;\r\n }\r\n }\r\n itemShowRemaining() {\r\n return this.selectedItems.length - this._settings.itemsShowLimit;\r\n }\r\n addSelected(item) {\r\n if (this._settings.singleSelection) {\r\n this.selectedItems = [];\r\n this.selectedItems.push(item);\r\n }\r\n else {\r\n this.selectedItems.push(item);\r\n }\r\n this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n this.onSelect.emit(this.emittedValue(item));\r\n }\r\n removeSelected(itemSel) {\r\n this.selectedItems.forEach(item => {\r\n if (itemSel.id === item.id) {\r\n this.selectedItems.splice(this.selectedItems.indexOf(item), 1);\r\n }\r\n });\r\n this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n this.onDeSelect.emit(this.emittedValue(itemSel));\r\n }\r\n emittedValue(val) {\r\n const selected = [];\r\n if (Array.isArray(val)) {\r\n val.map(item => {\r\n selected.push(this.objectify(item));\r\n });\r\n }\r\n else {\r\n if (val) {\r\n return this.objectify(val);\r\n }\r\n }\r\n return selected;\r\n }\r\n objectify(val) {\r\n if (this._sourceDataType === 'object') {\r\n const obj = {};\r\n obj[this._settings.idField] = val.id;\r\n obj[this._settings.textField] = val.text;\r\n if (this._sourceDataFields.includes(this._settings.disabledField)) {\r\n obj[this._settings.disabledField] = val.isDisabled;\r\n }\r\n return obj;\r\n }\r\n if (this._sourceDataType === 'number') {\r\n return Number(val.id);\r\n }\r\n else {\r\n return val.text;\r\n }\r\n }\r\n toggleDropdown(evt) {\r\n evt.preventDefault();\r\n if (this.disabled && this._settings.singleSelection) {\r\n return;\r\n }\r\n this._settings.defaultOpen = !this._settings.defaultOpen;\r\n if (!this._settings.defaultOpen) {\r\n this.onDropDownClose.emit();\r\n }\r\n }\r\n closeDropdown() {\r\n this._settings.defaultOpen = false;\r\n // clear search text\r\n if (this._settings.clearSearchFilter) {\r\n this.filter.text = \"\";\r\n }\r\n this.onDropDownClose.emit();\r\n }\r\n toggleSelectAll() {\r\n if (this.disabled) {\r\n return false;\r\n }\r\n if (!this.isAllItemsSelected()) {\r\n // filter out disabled item first before slicing\r\n this.selectedItems = this._data.filter(item => !item.isDisabled).slice();\r\n this.onSelectAll.emit(this.emittedValue(this.selectedItems));\r\n }\r\n else {\r\n this.selectedItems = [];\r\n this.onDeSelectAll.emit(this.emittedValue(this.selectedItems));\r\n }\r\n this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n }\r\n getFields(inputData) {\r\n const fields = [];\r\n if (typeof inputData !== \"object\") {\r\n return fields;\r\n }\r\n // tslint:disable-next-line:forin\r\n for (const prop in inputData) {\r\n fields.push(prop);\r\n }\r\n return fields;\r\n }\r\n};\nMultiSelectComponent.ɵfac = function MultiSelectComponent_Factory(t) { return new (t || MultiSelectComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nMultiSelectComponent.ɵcmp = /*@__PURE__*/ ɵngcc0.ɵɵdefineComponent({ type: MultiSelectComponent, selectors: [[\"ng-multiselect-dropdown\"]], hostBindings: function MultiSelectComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"blur\", function MultiSelectComponent_blur_HostBindingHandler() { return ctx.onTouched(); });\n } }, inputs: { disabled: \"disabled\", placeholder: \"placeholder\", settings: \"settings\", data: \"data\" }, outputs: { onFilterChange: \"onFilterChange\", onDropDownClose: \"onDropDownClose\", onSelect: \"onSelect\", onDeSelect: \"onDeSelect\", onSelectAll: \"onSelectAll\", onDeSelectAll: \"onDeSelectAll\" }, features: [ɵngcc0.ɵɵProvidersFeature([DROPDOWN_CONTROL_VALUE_ACCESSOR])], decls: 16, vars: 17, consts: [[\"tabindex\", \"=0\", 1, \"multiselect-dropdown\", 3, \"blur\", \"clickOutside\"], [\"tabindex\", \"-1\", 1, \"dropdown-btn\", 3, \"click\"], [4, \"ngIf\"], [\"class\", \"selected-item\", 3, \"hidden\", 4, \"ngFor\", \"ngForOf\", \"ngForTrackBy\"], [2, \"float\", \"right !important\", \"padding-right\", \"4px\"], [\"style\", \"padding-right: 6px;\", 4, \"ngIf\"], [3, \"ngClass\"], [1, \"dropdown-list\", 3, \"hidden\"], [1, \"item1\"], [\"class\", \"multiselect-item-checkbox\", \"style\", \"border-bottom: 1px solid #ccc;padding:10px\", 3, \"click\", 4, \"ngIf\"], [\"class\", \"filter-textbox\", 4, \"ngIf\"], [1, \"item2\"], [\"class\", \"multiselect-item-checkbox\", 3, \"click\", 4, \"ngFor\", \"ngForOf\"], [\"class\", \"no-data\", 4, \"ngIf\"], [1, \"selected-item\", 3, \"hidden\"], [2, \"padding-top\", \"2px\", \"padding-left\", \"2px\", \"color\", \"white\", 3, \"click\"], [2, \"padding-right\", \"6px\"], [1, \"multiselect-item-checkbox\", 2, \"border-bottom\", \"1px solid #ccc\", \"padding\", \"10px\", 3, \"click\"], [\"type\", \"checkbox\", \"aria-label\", \"multiselect-select-all\", 3, \"checked\", \"disabled\"], [1, \"filter-textbox\"], [\"type\", \"text\", \"aria-label\", \"multiselect-search\", 3, \"readOnly\", \"placeholder\", \"ngModel\", \"ngModelChange\"], [1, \"multiselect-item-checkbox\", 3, \"click\"], [\"type\", \"checkbox\", \"aria-label\", \"multiselect-item\", 3, \"checked\", \"disabled\"], [1, \"no-data\"]], template: function MultiSelectComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n ɵngcc0.ɵɵlistener(\"blur\", function MultiSelectComponent_Template_div_blur_0_listener() { return ctx.onTouched(); })(\"clickOutside\", function MultiSelectComponent_Template_div_clickOutside_0_listener() { return ctx.closeDropdown(); });\n ɵngcc0.ɵɵelementStart(1, \"div\");\n ɵngcc0.ɵɵelementStart(2, \"span\", 1);\n ɵngcc0.ɵɵlistener(\"click\", function MultiSelectComponent_Template_span_click_2_listener($event) { return ctx.toggleDropdown($event); });\n ɵngcc0.ɵɵtemplate(3, MultiSelectComponent_span_3_Template, 2, 1, \"span\", 2);\n ɵngcc0.ɵɵtemplate(4, MultiSelectComponent_span_4_Template, 4, 2, \"span\", 3);\n ɵngcc0.ɵɵelementStart(5, \"span\", 4);\n ɵngcc0.ɵɵtemplate(6, MultiSelectComponent_span_6_Template, 2, 1, \"span\", 5);\n ɵngcc0.ɵɵelement(7, \"span\", 6);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(8, \"div\", 7);\n ɵngcc0.ɵɵelementStart(9, \"ul\", 8);\n ɵngcc0.ɵɵtemplate(10, MultiSelectComponent_li_10_Template, 4, 3, \"li\", 9);\n ɵngcc0.ɵɵtemplate(11, MultiSelectComponent_li_11_Template, 2, 3, \"li\", 10);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(12, \"ul\", 11);\n ɵngcc0.ɵɵtemplate(13, MultiSelectComponent_li_13_Template, 4, 3, \"li\", 12);\n ɵngcc0.ɵɵpipe(14, \"multiSelectFilter\");\n ɵngcc0.ɵɵtemplate(15, MultiSelectComponent_li_15_Template, 3, 1, \"li\", 13);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.selectedItems.length == 0);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.selectedItems)(\"ngForTrackBy\", ctx.trackByFn);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.itemShowRemaining() > 0);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngClass\", ctx._settings.defaultOpen ? \"dropdown-up\" : \"dropdown-down\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"hidden\", !ctx._settings.defaultOpen);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", (ctx._data.length > 0 || ctx._settings.allowRemoteDataSearch) && !ctx._settings.singleSelection && ctx._settings.enableCheckAll && ctx._settings.limitSelection === -1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", (ctx._data.length > 0 || ctx._settings.allowRemoteDataSearch) && ctx._settings.allowSearchFilter);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"max-height\", ctx._settings.maxHeight + \"px\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ɵngcc0.ɵɵpipeBind2(14, 14, ctx._data, ctx.filter));\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx._data.length == 0 && !ctx._settings.allowRemoteDataSearch);\n } }, directives: function () { return [ClickOutsideDirective, ɵngcc1.NgIf, ɵngcc1.NgForOf, ɵngcc1.NgClass, ɵngcc2.DefaultValueAccessor, ɵngcc2.NgControlStatus, ɵngcc2.NgModel]; }, pipes: function () { return [ListFilterPipe]; }, styles: [\".multiselect-dropdown[_ngcontent-%COMP%]{position:relative;width:100%;font-size:inherit;font-family:inherit}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%]{display:inline-block;border:1px solid #adadad;width:100%;padding:6px 12px;margin-bottom:0;font-weight:400;line-height:1.52857143;text-align:left;vertical-align:middle;cursor:pointer;background-image:none;border-radius:4px}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]{border:1px solid #337ab7;margin-right:4px;background:#337ab7;padding:0 5px;color:#fff;border-radius:2px;float:left}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{text-decoration:none}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]:hover{box-shadow:1px 1px #959595}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-down[_ngcontent-%COMP%]{display:inline-block;top:10px;width:0;height:0;border-top:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-up[_ngcontent-%COMP%]{display:inline-block;width:0;height:0;border-bottom:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{background-color:#eceeef}.dropdown-list[_ngcontent-%COMP%]{position:absolute;padding-top:6px;width:100%;z-index:9999;border:1px solid #ccc;border-radius:3px;background:#fff;margin-top:10px;box-shadow:0 1px 5px #959595}.dropdown-list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{padding:0;list-style:none;overflow:auto;margin:0}.dropdown-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:6px 10px;cursor:pointer;text-align:left}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%]{border-bottom:1px solid #ccc;position:relative;padding:10px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:0;width:100%;padding:0 0 0 26px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{outline:0}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:focus + div[_ngcontent-%COMP%]:before, .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:hover + div[_ngcontent-%COMP%]:before{border-color:#337ab7;background-color:#f2f2f2}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:active + div[_ngcontent-%COMP%]:before{transition-duration:0s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{position:relative;padding-left:2em;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;margin:0;color:#000}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:before{box-sizing:content-box;content:\\\"\\\";color:#337ab7;position:absolute;top:50%;left:0;width:14px;height:14px;margin-top:-9px;border:2px solid #337ab7;text-align:center;transition:.4s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:after{box-sizing:content-box;content:\\\"\\\";position:absolute;transform:scale(0);transform-origin:50%;transition:transform .2s ease-out;background-color:transparent;top:50%;left:4px;width:8px;height:3px;margin-top:-4px;border-style:solid;border-color:#fff;border-width:0 0 3px 3px;-o-border-image:none;border-image:none;transform:rotate(-45deg) scale(0)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled + div[_ngcontent-%COMP%]:before{border-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:focus + div[_ngcontent-%COMP%]:before .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:hover + div[_ngcontent-%COMP%]:before{background-color:inherit}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:checked + div[_ngcontent-%COMP%]:before{background-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:after{content:\\\"\\\";transition:transform .2s ease-out;transform:rotate(-45deg) scale(1)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:before{-webkit-animation:.2s ease-in borderscale;animation:.2s ease-in borderscale;background:#337ab7}@-webkit-keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}@keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}\"], changeDetection: 0 });\r\nMultiSelectComponent.ctorParameters = () => [\r\n { type: ChangeDetectorRef }\r\n];\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"placeholder\", null);\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"disabled\", void 0);\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"settings\", null);\r\n__decorate([\r\n Input()\r\n], MultiSelectComponent.prototype, \"data\", null);\r\n__decorate([\r\n Output(\"onFilterChange\")\r\n], MultiSelectComponent.prototype, \"onFilterChange\", void 0);\r\n__decorate([\r\n Output(\"onDropDownClose\")\r\n], MultiSelectComponent.prototype, \"onDropDownClose\", void 0);\r\n__decorate([\r\n Output(\"onSelect\")\r\n], MultiSelectComponent.prototype, \"onSelect\", void 0);\r\n__decorate([\r\n Output(\"onDeSelect\")\r\n], MultiSelectComponent.prototype, \"onDeSelect\", void 0);\r\n__decorate([\r\n Output(\"onSelectAll\")\r\n], MultiSelectComponent.prototype, \"onSelectAll\", void 0);\r\n__decorate([\r\n Output(\"onDeSelectAll\")\r\n], MultiSelectComponent.prototype, \"onDeSelectAll\", void 0);\r\n__decorate([\r\n HostListener(\"blur\")\r\n], MultiSelectComponent.prototype, \"onTouched\", null);\n\nlet ClickOutsideDirective = class ClickOutsideDirective {\r\n constructor(_elementRef) {\r\n this._elementRef = _elementRef;\r\n this.clickOutside = new EventEmitter();\r\n }\r\n onClick(event, targetElement) {\r\n if (!targetElement) {\r\n return;\r\n }\r\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\r\n if (!clickedInside) {\r\n this.clickOutside.emit(event);\r\n }\r\n }\r\n};\nClickOutsideDirective.ɵfac = function ClickOutsideDirective_Factory(t) { return new (t || ClickOutsideDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nClickOutsideDirective.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: ClickOutsideDirective, selectors: [[\"\", \"clickOutside\", \"\"]], hostBindings: function ClickOutsideDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ClickOutsideDirective_click_HostBindingHandler($event) { return ctx.onClick($event, $event.target); }, false, ɵngcc0.ɵɵresolveDocument);\n } }, outputs: { clickOutside: \"clickOutside\" } });\r\nClickOutsideDirective.ctorParameters = () => [\r\n { type: ElementRef }\r\n];\r\n__decorate([\r\n Output()\r\n], ClickOutsideDirective.prototype, \"clickOutside\", void 0);\r\n__decorate([\r\n HostListener('document:click', ['$event', '$event.target'])\r\n], ClickOutsideDirective.prototype, \"onClick\", null);\n\nlet ListFilterPipe = class ListFilterPipe {\r\n transform(items, filter) {\r\n if (!items || !filter) {\r\n return items;\r\n }\r\n return items.filter((item) => this.applyFilter(item, filter));\r\n }\r\n applyFilter(item, filter) {\r\n if (typeof item.text === 'string' && typeof filter.text === 'string') {\r\n return !(filter.text && item.text && item.text.toLowerCase().indexOf(filter.text.toLowerCase()) === -1);\r\n }\r\n else {\r\n return !(filter.text && item.text && item.text.toString().toLowerCase().indexOf(filter.text.toString().toLowerCase()) === -1);\r\n }\r\n }\r\n};\nListFilterPipe.ɵfac = function ListFilterPipe_Factory(t) { return new (t || ListFilterPipe)(); };\nListFilterPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"multiSelectFilter\", type: ListFilterPipe, pure: false });\n\nvar NgMultiSelectDropDownModule_1;\r\nlet NgMultiSelectDropDownModule = NgMultiSelectDropDownModule_1 = class NgMultiSelectDropDownModule {\r\n static forRoot() {\r\n return {\r\n ngModule: NgMultiSelectDropDownModule_1\r\n };\r\n }\r\n};\nNgMultiSelectDropDownModule.ɵfac = function NgMultiSelectDropDownModule_Factory(t) { return new (t || NgMultiSelectDropDownModule)(); };\nNgMultiSelectDropDownModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: NgMultiSelectDropDownModule });\nNgMultiSelectDropDownModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule, FormsModule]] });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MultiSelectComponent, [{\n type: Component,\n args: [{\n selector: \"ng-multiselect-dropdown\",\n template: \"
\\r\\n
\\r\\n \\r\\n {{_placeholder}}\\r\\n _settings.itemsShowLimit-1\\\">\\r\\n {{item.text}}\\r\\n x\\r\\n \\r\\n \\r\\n 0\\\">+{{itemShowRemaining()}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
    \\r\\n
  • 0 || _settings.allowRemoteDataSearch) && !_settings.singleSelection && _settings.enableCheckAll && _settings.limitSelection===-1\\\" class=\\\"multiselect-item-checkbox\\\" style=\\\"border-bottom: 1px solid #ccc;padding:10px\\\">\\r\\n \\r\\n
    {{!isAllItemsSelected() ? _settings.selectAllText : _settings.unSelectAllText}}
    \\r\\n
  • \\r\\n
  • 0 || _settings.allowRemoteDataSearch) && _settings.allowSearchFilter\\\">\\r\\n \\r\\n
  • \\r\\n
\\r\\n
    \\r\\n
  • \\r\\n \\r\\n
    {{item.text}}
    \\r\\n
  • \\r\\n
  • \\r\\n
    {{_settings.noDataAvailablePlaceholderText}}
    \\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n\",\n providers: [DROPDOWN_CONTROL_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [\".multiselect-dropdown{position:relative;width:100%;font-size:inherit;font-family:inherit}.multiselect-dropdown .dropdown-btn{display:inline-block;border:1px solid #adadad;width:100%;padding:6px 12px;margin-bottom:0;font-weight:400;line-height:1.52857143;text-align:left;vertical-align:middle;cursor:pointer;background-image:none;border-radius:4px}.multiselect-dropdown .dropdown-btn .selected-item{border:1px solid #337ab7;margin-right:4px;background:#337ab7;padding:0 5px;color:#fff;border-radius:2px;float:left}.multiselect-dropdown .dropdown-btn .selected-item a{text-decoration:none}.multiselect-dropdown .dropdown-btn .selected-item:hover{box-shadow:1px 1px #959595}.multiselect-dropdown .dropdown-btn .dropdown-down{display:inline-block;top:10px;width:0;height:0;border-top:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown .dropdown-btn .dropdown-up{display:inline-block;width:0;height:0;border-bottom:10px solid #adadad;border-left:10px solid transparent;border-right:10px solid transparent}.multiselect-dropdown .disabled>span{background-color:#eceeef}.dropdown-list{position:absolute;padding-top:6px;width:100%;z-index:9999;border:1px solid #ccc;border-radius:3px;background:#fff;margin-top:10px;box-shadow:0 1px 5px #959595}.dropdown-list ul{padding:0;list-style:none;overflow:auto;margin:0}.dropdown-list li{padding:6px 10px;cursor:pointer;text-align:left}.dropdown-list .filter-textbox{border-bottom:1px solid #ccc;position:relative;padding:10px}.dropdown-list .filter-textbox input{border:0;width:100%;padding:0 0 0 26px}.dropdown-list .filter-textbox input:focus{outline:0}.multiselect-item-checkbox input[type=checkbox]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.multiselect-item-checkbox input[type=checkbox]:focus+div:before,.multiselect-item-checkbox input[type=checkbox]:hover+div:before{border-color:#337ab7;background-color:#f2f2f2}.multiselect-item-checkbox input[type=checkbox]:active+div:before{transition-duration:0s}.multiselect-item-checkbox input[type=checkbox]+div{position:relative;padding-left:2em;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;margin:0;color:#000}.multiselect-item-checkbox input[type=checkbox]+div:before{box-sizing:content-box;content:\\\"\\\";color:#337ab7;position:absolute;top:50%;left:0;width:14px;height:14px;margin-top:-9px;border:2px solid #337ab7;text-align:center;transition:.4s}.multiselect-item-checkbox input[type=checkbox]+div:after{box-sizing:content-box;content:\\\"\\\";position:absolute;transform:scale(0);transform-origin:50%;transition:transform .2s ease-out;background-color:transparent;top:50%;left:4px;width:8px;height:3px;margin-top:-4px;border-style:solid;border-color:#fff;border-width:0 0 3px 3px;-o-border-image:none;border-image:none;transform:rotate(-45deg) scale(0)}.multiselect-item-checkbox input[type=checkbox]:disabled+div:before{border-color:#ccc}.multiselect-item-checkbox input[type=checkbox]:disabled:focus+div:before .multiselect-item-checkbox input[type=checkbox]:disabled:hover+div:before{background-color:inherit}.multiselect-item-checkbox input[type=checkbox]:disabled:checked+div:before{background-color:#ccc}.multiselect-item-checkbox input[type=checkbox]:checked+div:after{content:\\\"\\\";transition:transform .2s ease-out;transform:rotate(-45deg) scale(1)}.multiselect-item-checkbox input[type=checkbox]:checked+div:before{-webkit-animation:.2s ease-in borderscale;animation:.2s ease-in borderscale;background:#337ab7}@-webkit-keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}@keyframes borderscale{50%{box-shadow:0 0 0 2px #337ab7}}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }]; }, { disabled: [{\n type: Input\n }], onFilterChange: [{\n type: Output,\n args: [\"onFilterChange\"]\n }], onDropDownClose: [{\n type: Output,\n args: [\"onDropDownClose\"]\n }], onSelect: [{\n type: Output,\n args: [\"onSelect\"]\n }], onDeSelect: [{\n type: Output,\n args: [\"onDeSelect\"]\n }], onSelectAll: [{\n type: Output,\n args: [\"onSelectAll\"]\n }], onDeSelectAll: [{\n type: Output,\n args: [\"onDeSelectAll\"]\n }], placeholder: [{\n type: Input\n }], settings: [{\n type: Input\n }], data: [{\n type: Input\n }], \n // Set touched on blur\n onTouched: [{\n type: HostListener,\n args: [\"blur\"]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ClickOutsideDirective, [{\n type: Directive,\n args: [{\n selector: '[clickOutside]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { clickOutside: [{\n type: Output\n }], onClick: [{\n type: HostListener,\n args: ['document:click', ['$event', '$event.target']]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ListFilterPipe, [{\n type: Pipe,\n args: [{\n name: 'multiSelectFilter',\n pure: false\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgMultiSelectDropDownModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule, FormsModule],\n declarations: [MultiSelectComponent, ClickOutsideDirective, ListFilterPipe],\n exports: [MultiSelectComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgMultiSelectDropDownModule, { declarations: function () { return [MultiSelectComponent, ClickOutsideDirective, ListFilterPipe]; }, imports: function () { return [CommonModule, FormsModule]; }, exports: function () { return [MultiSelectComponent]; } }); })();\n\n/**\r\n * Generated bundle index. Do not edit.\r\n */\n\nexport { MultiSelectComponent, NgMultiSelectDropDownModule, DROPDOWN_CONTROL_VALUE_ACCESSOR as ɵa, ClickOutsideDirective as ɵb, ListFilterPipe as ɵc };\n\n"],"sourceRoot":"webpack:///","file":"3311.fbbbb731fd424338.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/3rdpartylicenses.txt b/frontend/src/main/resources/static/3rdpartylicenses.txt index 0e98a53..cc64bd5 100644 --- a/frontend/src/main/resources/static/3rdpartylicenses.txt +++ b/frontend/src/main/resources/static/3rdpartylicenses.txt @@ -930,11 +930,37 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -es-abstract +file-select + +for-each MIT The MIT License (MIT) -Copyright (C) 2015 Jordan Harband +Copyright (c) 2012 Raynos. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +function-bind +MIT +Copyright (c) 2013 Raynos. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -954,39 +980,38 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -file-select -foreach + +functions-have-names MIT -The MIT License +MIT License -Copyright (c) 2013 Manuel Stofer +Copyright (c) 2019 Jordan Harband -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -function-bind +get-intrinsic MIT -Copyright (c) 2013 Raynos. +MIT License + +Copyright (c) 2020 Jordan Harband Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -995,24 +1020,23 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -get-intrinsic +gopd MIT MIT License -Copyright (c) 2020 Jordan Harband +Copyright (c) 2022 Jordan Harband Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -1084,6 +1108,31 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +has-property-descriptors +MIT +MIT License + +Copyright (c) 2022 Inspect JS + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + has-symbols MIT MIT License @@ -1178,6 +1227,32 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +is-callable +MIT +The MIT License (MIT) + +Copyright (c) 2015 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + is-date-object MIT The MIT License (MIT) @@ -1278,6 +1353,29 @@ SOFTWARE. +jexl +MIT +Copyright (c) 2020 Tom Shawver + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + jsdraw-wrapper ketcher-wrapper @@ -1333,6 +1431,108 @@ licenses; we recommend you read them, as their terms may differ from the terms above. +lodash.get +MIT +Copyright jQuery Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + + +lodash.isequal +MIT +Copyright JS Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + + moment MIT Copyright (c) JS Foundation and other contributors @@ -1412,6 +1612,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +ngx-schema-form +MIT + object-is MIT The MIT License (MIT) @@ -1463,31 +1666,6 @@ THE SOFTWARE. primeng MIT -regenerator-runtime -MIT -MIT License - -Copyright (c) 2014-present, Facebook, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - regexp.prototype.flags MIT The MIT License (MIT) @@ -1720,6 +1898,34 @@ Apache-2.0 +sprintf-js +BSD-3-Clause +Copyright (c) 2007-2014, Alexandru Marasteanu +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of this software nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + tslib 0BSD Copyright (c) Microsoft Corporation. @@ -1757,6 +1963,30 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +validator +MIT +Copyright (c) 2018 Chris O'Hara + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + which-typed-array MIT The MIT License (MIT) @@ -1783,6 +2013,32 @@ SOFTWARE. +z-schema +MIT +The MIT License (MIT) + +Copyright (c) 2014 Martin Zagora and other contributors +https://github.com/zaggino/z-schema/graphs/contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + zone.js MIT The MIT License diff --git a/frontend/src/main/resources/static/4028.5d59feec9dcd2909.js b/frontend/src/main/resources/static/4028.765e9cc66baf04da.js similarity index 93% rename from frontend/src/main/resources/static/4028.5d59feec9dcd2909.js rename to frontend/src/main/resources/static/4028.765e9cc66baf04da.js index c4c6ef3..65f6033 100644 --- a/frontend/src/main/resources/static/4028.5d59feec9dcd2909.js +++ b/frontend/src/main/resources/static/4028.765e9cc66baf04da.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4028],{94028:function(oi,S,a){a.r(S),a.d(S,{SubstanceOverviewModule:function(){return ni}});var m=a(48047),Z=a(78069),b=a(36362),I=a(64061),D=a(24582),N=a(7318),J=a(2756),Q=a(52149),Y=a(24874),M=a(88951),P=a(12570),p=a(90587),x=a(93979),V=a(50253),F=a(18291),E=a(53141),L=a(22544),e=a(76442),j=a(50318),_=a(98002),R=a(83448),H=a(66088),k=a(95758),T=a(87317),q=a(40089),C=a(65590),f=a(82796),z=a(9292),O=a(44770),w=a(91434),K=a(1130),A=a(81196),B=a(73430),W=function(){var i=function(){function s(){(0,Z.Z)(this,s)}return(0,m.Z)(s,[{key:"transform",value:function(u,c){var t=u.toLowerCase().replace(" ","");return"chemical"===t?"Chemical":"nucleicacid"===t?"Nucleic Acid":"protein"===t?"Protein":"specifiedsubstanceg1"===t?"Group 1 Specified Substance":"polymer"===t?"Polymer":"structurallydiverse"===t?"Structurally Diverse":"polymer"===t?"Polymer":"concept"===t?"Concept":"specifiedsubstanceg3"===t?"Group 3 Specified Substance":u}}]),s}();return i.\u0275fac=function(n){return new(n||i)},i.\u0275pipe=e.Yjl({name:"classDisplay",type:i,pure:!0}),i}();function G(i,s){if(1&i&&(e.TgZ(0,"a",30),e.TgZ(1,"span",31),e._uU(2,"open in old application in new tab"),e.qZA(),e._UZ(3,"mat-icon",32),e.qZA()),2&i){var n=e.oxw(2);e.Q6J("href",n.oldUrl,e.LSH)}}var $=function(s){return["/substances",s,"edit"]};function X(i,s){if(1&i&&(e.TgZ(0,"span"),e.TgZ(1,"a",33),e._UZ(2,"mat-icon",34),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("routerLink",e.VKq(1,$,n.substance.uuid))}}function ee(i,s){if(1&i&&(e.TgZ(0,"button",36),e._UZ(1,"mat-icon",10),e.qZA()),2&i){e.oxw(2);var n=e.MAs(11);e.Q6J("matMenuTriggerFor",n)}}function ie(i,s){if(1&i&&(e.TgZ(0,"a",38),e._UZ(1,"mat-icon",34),e.qZA()),2&i){var n=e.oxw(4);e.Q6J("href",n.baseDomain+n.clasicBaseHref+"substance/"+n.substance.uuid+"/edit",e.LSH)}}function ne(i,s){1&i&&e.YNc(0,ie,2,1,"ng-template",null,37,e.W1O)}function te(i,s){if(1&i&&(e.TgZ(0,"span"),e.YNc(1,ee,2,1,"button",35),e.YNc(2,ne,2,0,null,0),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.isEditable)("ngIfElse",n.editClassic),e.xp6(1),e.Q6J("ngIf",n.showlinks)}}function se(i,s){if(1&i&&(e.TgZ(0,"a",39),e.TgZ(1,"span"),e._uU(2,"Download JSON"),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.MGl("download","",n.substance.approvalID?n.substance.approvalID.toString():n.substance.uuid.toString(),".json"),e.Q6J("href",n.downloadJsonHref,e.LSH)}}function ae(i,s){if(1&i&&(e.TgZ(0,"div",40),e.TgZ(1,"span",41),e._uU(2),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(2),e.hij(" ",n.substance.definitionLevel," DEFINITION ")}}function oe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(2),e.Oqu(n.defaultCodeSystem),e.xp6(2),e.Oqu(n.defaultCodes)}}function ce(i,s){1&i&&(e.TgZ(0,"span"),e.TgZ(1,"span"),e._uU(2,"Not a public record"),e.qZA(),e._uU(3,"\xa0 "),e._UZ(4,"mat-icon",42),e.qZA())}function ue(i,s){1&i&&(e.TgZ(0,"span"),e._uU(1,"Public record"),e.qZA(),e._uU(2,"\xa0 "),e._UZ(3,"mat-icon",43))}function re(i,s){1&i&&(e.TgZ(0,"span",44),e._uU(1,"RECORD IS DEPRECATED"),e.qZA())}function ve(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Protein Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.proteinType)}}function le(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Protein Sub-type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.proteinSubType.replace("|",", "))}}function de(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.sequenceType)}}function pe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Origin"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.sequenceOrigin)}}function fe(i,s){if(1&i&&(e.TgZ(0,"div",45),e.YNc(1,ve,5,1,"div",17),e.YNc(2,le,5,1,"div",17),e.YNc(3,de,5,1,"div",17),e.YNc(4,pe,5,1,"div",17),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.substance.protein.proteinType),e.xp6(1),e.Q6J("ngIf",n.substance.protein.proteinSubType),e.xp6(1),e.Q6J("ngIf",n.substance.protein.sequenceType),e.xp6(1),e.Q6J("ngIf",n.substance.protein.sequenceOrigin)}}function ge(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Nucleic Acid Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.nucleicAcidType)}}function me(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Nucleic Acid Sub-type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.nucleicAcidSubType.join(", "))}}function Ze(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.sequenceType)}}function be(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Origin"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.sequenceOrigin)}}function _e(i,s){if(1&i&&(e.TgZ(0,"div",45),e.YNc(1,ge,5,1,"div",17),e.YNc(2,me,5,1,"div",17),e.YNc(3,Ze,5,1,"div",17),e.YNc(4,be,5,1,"div",17),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.nucleicAcidType),e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.nucleicAcidSubType&&n.substance.nucleicAcid.nucleicAcidSubType.length>0),e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.sequenceType),e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.sequenceOrigin)}}function Te(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials Class"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.sourceMaterialClass)}}function Ae(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.sourceMaterialType)}}function he(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials State"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.sourceMaterialState)}}var h=function(s){return["/substances",s]};function ye(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials Parent"),e.qZA(),e.TgZ(3,"div",46),e._UZ(4,"img",47),e.TgZ(5,"div"),e.TgZ(6,"a",48),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("entityId",n.substance.structurallyDiverse.parentSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(3,h,n.substance.structurallyDiverse.parentSubstance.refuuid)),e.xp6(1),e.hij(" ",n.substance.structurallyDiverse.parentSubstance.refPname," ")}}function Se(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Family"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismFamily)}}function xe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Genus"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismGenus)}}function qe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Species"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismSpecies)}}function Ce(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Infraspecific Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.infraSpecificType)}}function Oe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Intraspecific Name"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.infraSpecificName)}}function we(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Author"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismAuthor)}}function Ue(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Developmental Stage"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.developmentalStage)}}function Ie(i,s){1&i&&(e.TgZ(0,"span"),e._uU(1,", "),e.qZA())}function De(i,s){if(1&i&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,Ie,2,0,"span",0),e.qZA()),2&i){var n=s.$implicit,u=s.last;e.xp6(1),e.hij(" ",n,""),e.xp6(1),e.Q6J("ngIf",!u)}}function Ne(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Part"),e.qZA(),e.TgZ(3,"div",16),e.YNc(4,De,3,2,"span",49),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("ngForOf",n.substance.structurallyDiverse.part)}}function Je(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Fraction Materials Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.fractionMaterialType)}}function Qe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Fraction Name"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.fractionName)}}function Ye(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Hybrid Paternal Organism"),e.qZA(),e.TgZ(3,"div",46),e._UZ(4,"img",47),e.TgZ(5,"div"),e.TgZ(6,"a",48),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("entityId",n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(3,h,n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid)),e.xp6(1),e.hij(" ",n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism.refPname," ")}}function Me(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Hybrid Paternal Organism"),e.qZA(),e.TgZ(3,"div",46),e._UZ(4,"img",47),e.TgZ(5,"div"),e.TgZ(6,"a",48),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("entityId",n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(3,h,n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid)),e.xp6(1),e.hij(" ",n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism.refPname," ")}}function Pe(i,s){if(1&i&&(e.TgZ(0,"div",45),e.YNc(1,Te,5,1,"div",17),e.YNc(2,Ae,5,1,"div",17),e.YNc(3,he,5,1,"div",17),e.YNc(4,ye,8,5,"div",17),e.YNc(5,Se,5,1,"div",17),e.YNc(6,xe,5,1,"div",17),e.YNc(7,qe,5,1,"div",17),e.YNc(8,Ce,5,1,"div",17),e.YNc(9,Oe,5,1,"div",17),e.YNc(10,we,5,1,"div",17),e.YNc(11,Ue,5,1,"div",17),e.YNc(12,Ne,5,1,"div",17),e.YNc(13,Je,5,1,"div",17),e.YNc(14,Qe,5,1,"div",17),e.YNc(15,Ye,8,5,"div",17),e.YNc(16,Me,8,5,"div",17),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.sourceMaterialClass),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.sourceMaterialType),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.sourceMaterialState),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.parentSubstance),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismFamily),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismGenus),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismSpecies),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.infraSpecificType),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.infraSpecificName),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismAuthor),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.developmentalStage),e.xp6(1),e.Q6J("ngIf",(null==n.substance.structurallyDiverse.part?null:n.substance.structurallyDiverse.part.length)>0),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.fractionMaterialType),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.fractionName),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse&&n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse&&n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism)}}function Ve(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Record Version"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(4),e.Oqu(n.substance.version)}}function Fe(i,s){if(1&i&&(e.TgZ(0,"mat-option",54),e._uU(1),e.qZA()),2&i){var n=s.$implicit;e.Q6J("value",n),e.xp6(1),e.hij(" ",n," ")}}function Ee(i,s){if(1&i){var n=e.EpF();e.TgZ(0,"button",55),e.NdJ("click",function(){return e.CHM(n),e.oxw(3).changeVersion()}),e._uU(1,"View"),e.qZA()}}function Le(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Record Version"),e.qZA(),e.TgZ(3,"mat-form-field",50),e.TgZ(4,"mat-select",51),e.YNc(5,Fe,2,2,"mat-option",52),e.qZA(),e.qZA(),e.YNc(6,Ee,2,0,"button",53),e.qZA()),2&i){var n=e.oxw(2);e.xp6(4),e.Q6J("formControl",n.versionControl),e.xp6(1),e.Q6J("ngForOf",n.versions),e.xp6(1),e.Q6J("ngIf",n.substance.version!=n.versionControl.value)}}function je(i,s){if(1&i){var n=e.EpF();e.TgZ(0,"button",55),e.NdJ("click",function(){return e.CHM(n),e.oxw(3).restoreVersion()}),e._uU(1,"Restore this version"),e.qZA()}}function Re(i,s){if(1&i&&(e.TgZ(0,"div",56),e._uU(1),e.YNc(2,je,2,0,"button",53),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.hij(" This is an older version of this substance - Ver. ",n.substance.version," "),e.xp6(1),e.Q6J("ngIf",n.isAdmin)}}function He(i,s){if(1&i&&(e.TgZ(0,"mat-chip",57),e._uU(1),e.qZA()),2&i){var n=s.$implicit;e.xp6(1),e.hij(" ",n," ")}}function ke(i,s){if(1&i){var n=e.EpF();e.TgZ(0,"div",14),e.TgZ(1,"div",15),e.TgZ(2,"a",58),e.NdJ("click",function(){return e.CHM(n),e.oxw(2).toggleReferences()}),e.TgZ(3,"span"),e._uU(4),e.qZA(),e._UZ(5,"mat-icon",59),e.qZA(),e.qZA(),e.qZA()}if(2&i){var u=e.oxw(2);e.xp6(4),e.hij("",!1===u.showDef?"Show":"Hide"," Definitional References"),e.xp6(1),e.s9C("svgIcon",u.defIcon)}}function ze(i,s){1&i&&(e.TgZ(0,"span"),e.TgZ(1,"span"),e._uU(2,"Not a public definition"),e.qZA(),e._uU(3,"\xa0 "),e._UZ(4,"mat-icon",42),e.qZA())}function Ke(i,s){1&i&&(e.TgZ(0,"span"),e._uU(1,"Public definition"),e.qZA(),e._uU(2,"\xa0 "),e._UZ(3,"mat-icon",43))}var U=function(s){return["/substances/register",s]},Be=function(s){return{copy:s}},We=function(s){return{copy:s,copyType:"definition"}};function Ge(i,s){if(1&i&&(e.TgZ(0,"div"),e.TgZ(1,"div",1),e.YNc(2,G,4,1,"a",2),e.YNc(3,X,3,3,"span",0),e.YNc(4,te,3,3,"span",0),e.TgZ(5,"button",3),e._UZ(6,"mat-icon",4),e.qZA(),e.TgZ(7,"mat-menu",5,6),e.YNc(9,se,3,2,"a",7),e.qZA(),e.TgZ(10,"mat-menu",5,8),e.TgZ(12,"a",9),e._UZ(13,"mat-icon",10),e.qZA(),e.TgZ(14,"a",11),e._UZ(15,"mat-icon",12),e.qZA(),e.qZA(),e.qZA(),e.YNc(16,ae,3,1,"div",13),e.TgZ(17,"div"),e.TgZ(18,"div",14),e.TgZ(19,"div",15),e._uU(20,"Substance Class"),e.qZA(),e.TgZ(21,"div",16),e._uU(22),e.ALo(23,"classDisplay"),e.qZA(),e.qZA(),e.TgZ(24,"div",14),e.TgZ(25,"div",15),e._uU(26,"Record UNII"),e.qZA(),e.TgZ(27,"div",16),e._uU(28),e.qZA(),e.qZA(),e.YNc(29,oe,5,2,"div",17),e.TgZ(30,"div",14),e.TgZ(31,"div",15),e._uU(32,"Record Protection Status"),e.qZA(),e.TgZ(33,"div",16),e.YNc(34,ce,5,0,"span",18),e.YNc(35,ue,4,0,"ng-template",null,19,e.W1O),e.qZA(),e.qZA(),e.TgZ(37,"div",14),e.TgZ(38,"div",15),e._uU(39,"Record Status"),e.qZA(),e.TgZ(40,"div",16),e._uU(41),e.YNc(42,re,2,0,"span",20),e.qZA(),e.qZA(),e.YNc(43,fe,5,4,"div",21),e.YNc(44,_e,5,4,"div",21),e.YNc(45,Pe,17,16,"div",21),e.YNc(46,Ve,5,1,"div",17),e.YNc(47,Le,7,3,"div",17),e.YNc(48,Re,3,2,"div",22),e.TgZ(49,"div",14),e.TgZ(50,"div",15),e._uU(51,"Tags"),e.qZA(),e.TgZ(52,"div",23),e.TgZ(53,"mat-chip-list",24,25),e.YNc(55,He,2,1,"mat-chip",26),e.qZA(),e.qZA(),e.qZA(),e.YNc(56,ke,6,2,"div",17),e.TgZ(57,"div",27),e._UZ(58,"app-references-manager",28),e.qZA(),e.TgZ(59,"div",14),e.TgZ(60,"div",15),e._uU(61,"Definitional Access"),e.qZA(),e.TgZ(62,"div",16),e.YNc(63,ze,5,0,"span",18),e.YNc(64,Ke,4,0,"ng-template",null,29,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.MAs(8),u=e.MAs(36),c=e.MAs(65),t=e.oxw();e.xp6(2),e.Q6J("ngIf",t.showlinks),e.xp6(1),e.Q6J("ngIf",t.canEdit),e.xp6(1),e.Q6J("ngIf",t.canEdit),e.xp6(1),e.Q6J("matMenuTriggerFor",n),e.xp6(4),e.Q6J("ngIf",t.substance.uuid),e.xp6(3),e.Q6J("routerLink",e.VKq(32,U,t.substance.substanceClass))("queryParams",e.VKq(34,Be,t.substance.uuid)),e.xp6(2),e.Q6J("routerLink",e.VKq(36,U,t.substance.substanceClass))("queryParams",e.VKq(38,We,t.substance.uuid)),e.xp6(2),e.Q6J("ngIf",t.substance.definitionLevel&&"COMPLETE"!==t.substance.definitionLevel),e.xp6(6),e.Oqu(e.lcZ(23,30,t.substance.substanceClass)),e.xp6(6),e.Oqu(t.substance._approvalIDDisplay),e.xp6(1),e.Q6J("ngIf",t.defaultCodes),e.xp6(5),e.Q6J("ngIf",t.substance.access&&t.substance.access.length>0)("ngIfElse",u),e.xp6(7),e.hij("","approved"===t.substance.status?t.primaryCode:t.substance.status," "),e.xp6(1),e.Q6J("ngIf",t.substance.deprecated),e.xp6(1),e.Q6J("ngIf",t.substance.protein),e.xp6(1),e.Q6J("ngIf",t.substance.nucleicAcid),e.xp6(1),e.Q6J("ngIf",t.substance.structurallyDiverse),e.xp6(1),e.Q6J("ngIf",!t.isAdmin),e.xp6(1),e.Q6J("ngIf",t.isAdmin),e.xp6(1),e.Q6J("ngIf",t.substance.version!=t.latestVersion),e.xp6(7),e.Q6J("ngForOf",t.substance.tags),e.xp6(1),e.Q6J("ngIf",(null==t.references?null:t.references.length)>0),e.xp6(1),e.Q6J("hidden",!t.showDef),e.xp6(1),e.Q6J("substance",t.substance)("references",t.references),e.xp6(5),e.Q6J("ngIf",t.defAccess&&t.defAccess.length>0)("ngIfElse",c)}}var $e=function(){var i=function(s){(0,D.Z)(u,s);var n=(0,N.Z)(u);function u(c,t,r,d,v,y,g,l,ti,si,ai){var o;return(0,Z.Z)(this,u),(o=n.call(this)).sanitizer=c,o.utilsService=t,o.gaService=r,o.substanceService=d,o.router=v,o.authService=y,o.cvService=g,o.configService=l,o.loadingService=ti,o.overlayContainerService=si,o.dialog=ai,o.references=[],o.showDef=!1,o.defIcon="drop_down",o.versionControl=new p.NI("",p.kI.required),o.versions=[],o.isEditable=!1,o.isAdmin=!1,o.substanceUpdated=new V.x,o.defaultCodeSystem="BDNUM",o.primaryCode="Validated (UNII)",o.subscriptions=[],o.showlinks=!1,o.baseDomain=o.configService.configData.apiUrlDomain,o.clasicBaseHref=o.configService.environment.clasicBaseHref,o}return(0,m.Z)(u,[{key:"ngOnInit",value:function(){var t=this,d=(this.authService.hasAnyRolesAsync("updater","superUpdater").subscribe(function(l){t.canEdit=l,t.isEditable=l&&null!=t.substance.substanceClass&&(null!=x.x[t.substance.substanceClass.toLowerCase()]||null!=x.x[t.substance.substanceClass])}),this.authService.hasAnyRolesAsync("admin").subscribe(function(l){t.isAdmin=l}));this.subscriptions.push(d),this.getSubtypeRefs(this.substance);var v=JSON.stringify(this.substance),y=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(v));if(this.downloadJsonHref=y,this.getVersion(),this.getClassFromCv(),this.oldUrl=this.substanceService.oldSiteRedirect("details",this.substance.uuid),null!=this.configService.configData.defaultCodeSystem&&""!==this.configService.configData.defaultCodeSystem&&(this.defaultCodeSystem=this.configService.configData.defaultCodeSystem),this.configService.configData.primaryCode&&""!==this.configService.configData.primaryCode&&(this.primaryCode="Validated ("+this.configService.configData.primaryCode+")"),this.configService.configData&&this.configService.configData.showOldLinks&&(this.showlinks=!0),this.getDefAccess(),null!=this.substance.codes&&this.substance.codes.length>0){var g=[];this.substance.codes.forEach(function(l){l.codeSystem===t.defaultCodeSystem&&g.push(l.code)}),this.defaultCodes=g.join(", ")}this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"ngAfterViewInit",value:function(){var t=this,r=this.substanceUpdated.subscribe(function(d){t.substance=d,t.getVersion()});this.subscriptions.push(r)}},{key:"getDefAccess",value:function(){this.substance.structurallyDiverse?this.defAccess=this.substance.structurallyDiverse.access:this.substance.protein?this.defAccess=this.substance.protein.access:this.substance.structure?this.defAccess=this.substance.structure.access:this.substance.mixture?this.defAccess=this.substance.mixture.access:this.substance.polymer?this.defAccess=this.substance.polymer.access:this.substance.nucleicAcid?this.defAccess=this.substance.nucleicAcid.access:this.substance.specifiedSubstance&&(this.defAccess=this.substance.specifiedSubstance.access)}},{key:"getSubtypeRefs",value:function(t){t.mixture?this.references=t.mixture.references:t.protein?this.references=t.protein.references:t.nucleicAcid?this.references=t.nucleicAcid.references:t.polymer?this.references=t.polymer.references:t.structure?this.references=t.structure.references:t.structurallyDiverse?this.references=t.structurallyDiverse.references:t.specifiedSubstance&&(this.references=t.specifiedSubstance.references)}},{key:"getVersion",value:function(){var t=this;this.substanceService.checkVersion(this.substance.uuid).subscribe(function(r){t.versions=[],t.latestVersion=r,t.setVersionList(),t.versionControl.setValue(t.substance.version)},function(r){console.log(r)})}},{key:"changeVersion",value:function(){var t=this.versionControl.value.toString();this.router.navigate(["/substances/"+this.substance.uuid+"/v/"+t])}},{key:"setVersionList",value:function(){for(var t=1;t<=this.latestVersion;t++)this.versions.push(t.toString())}},{key:"toggleReferences",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","references",this.showDef?0:1),this.showDef=!this.showDef,this.defIcon=this.showDef?"drop_up":"drop_down"}},{key:"getClassFromCv",value:function(){var t=this;this.cvService.getDomainVocabulary("SUBSTANCE_CLASS").subscribe(function(r){r.SUBSTANCE_CLASS.list.forEach(function(v){v.value===t.substance.substanceClass&&(t.substance.substanceClass=v.display)})})}},{key:"restoreVersion",value:function(){var t=this,r=this.dialog.open(L.h,{data:{substance:this.substance,version:this.substance.version,latest:this.latestVersion.toString()},width:"650px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(v){t.overlayContainer.style.zIndex=null,v&&"success"===v&&(t.router.onSameUrlNavigation="reload",t.router.navigate(["/substances/"+t.substance.uuid+"/"]))})}}]),u}(J.B);return i.\u0275fac=function(n){return new(n||i)(e.Y36(j.H7),e.Y36(Q.F),e.Y36(Y.$),e.Y36(P.d),e.Y36(_.F0),e.Y36(M.e),e.Y36(F.I),e.Y36(E.E),e.Y36(R.b),e.Y36(H.Xj),e.Y36(k.uw))},i.\u0275cmp=e.Xpm({type:i,selectors:[["app-substance-overview"]],features:[e.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"options-area"],["mat-icon-button","","target","_blank","matTooltip","view in old application",3,"href",4,"ngIf"],["mat-icon-button","","aria-label","download file","matTooltip","download options","name","download",3,"matMenuTriggerFor"],["svgIcon","get_app"],["xPosition","before"],["downloadMenu","matMenu"],["name","download_json","mat-menu-item","",3,"href","download",4,"ngIf"],["editMenu","matMenu"],["mat-icon-button","","matTooltip","copy substance to new registration form",3,"routerLink","queryParams"],["svgIcon","file_copy"],["mat-icon-button","","matTooltip","copy definition to new registration form",3,"routerLink","queryParams"],["svgIcon","outline-file_copy"],["class","extra-area",4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value","blue-font"],["class","name-value",4,"ngIf"],[4,"ngIf","ngIfElse"],["lockedIndicator",""],["class","deprecated",4,"ngIf"],["class","diverseWrapper",4,"ngIf"],["class","indent",4,"ngIf"],[1,"value"],["aria-label","Tags","selectable","false"],["tagList",""],["removable","false",4,"ngFor","ngForOf"],[3,"hidden"],[3,"substance","references"],["defIndicator",""],["mat-icon-button","","target","_blank","matTooltip","view in old application",3,"href"],["hidden",""],["svgIcon","open_in_new"],["mat-icon-button","","matTooltip","edit record","name","edit_record","aria-label","edit record",3,"routerLink"],["svgIcon","edit"],["mat-icon-button","","name","edit_substance","matTooltip","copy to edit form options","aria-label","copy file",3,"matMenuTriggerFor",4,"ngIf","ngIfElse"],["mat-icon-button","","name","edit_substance","matTooltip","copy to edit form options","aria-label","copy file",3,"matMenuTriggerFor"],["editClassic",""],["mat-icon-button","","name","edit","target","_blank",3,"href"],["name","download_json","mat-menu-item","",3,"href","download"],[1,"extra-area"],[1,"definition-level"],["svgIcon","lock"],["svgIcon","lock_open"],[1,"deprecated"],[1,"diverseWrapper"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"],[4,"ngFor","ngForOf"],[1,"version-dropdown"],[1,"version-select",3,"formControl"],["class","version-option",3,"value",4,"ngFor","ngForOf"],["mat-button","","class","mat-raised-button mat-primary view-version",3,"click",4,"ngIf"],[1,"version-option",3,"value"],["mat-button","",1,"mat-raised-button","mat-primary","view-version",3,"click"],[1,"indent"],["removable","false"],["tabindex","0","role","link",1,"blue-font","references-link",3,"click"],[3,"svgIcon"]],template:function(n,u){1&n&&e.YNc(0,Ge,66,40,"div",0),2&n&&e.Q6J("ngIf",u.substance)},directives:[b.O5,T.zs,q.gM,C.Hw,_.yS,T.lW,f.p6,f.VK,f.OP,z.m,b.sg,O.KE,w.gD,p.JJ,p.oH,K.ey,A.qn,A.HS,B.C],pipes:[W],styles:[".references-link[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.version-dropdown[_ngcontent-%COMP%]{width:50px;border:0px;height:20px}.diverseWrapper[_ngcontent-%COMP%]{padding-bottom:20px}.view-version[_ngcontent-%COMP%]{margin-left:10px}.version-dropdown[_ngcontent-%COMP%] .mat-form-field-infix{border:0px}.options-area[_ngcontent-%COMP%]{float:right;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.pre[_ngcontent-%COMP%]{white-space:pre}.definition-level[_ngcontent-%COMP%]{color:#1565c0;font-size:16px}.deprecated[_ngcontent-%COMP%]{margin-left:10px;font-size:13px;color:#c7254e}.extra-area[_ngcontent-%COMP%]{float:right;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-right:70px}.large-icon[_ngcontent-%COMP%]{height:32px;width:32px}.icon-button[_ngcontent-%COMP%]{padding:5px;height:34px;width:34px;min-width:34px;margin:2px}.indent[_ngcontent-%COMP%]{padding-left:12px;padding-bottom:10px}.standardize[_ngcontent-%COMP%]{padding-right:25px}.overview-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}"]}),i}(),Xe=a(38277),ei=a(16531),ii=a(24054),ni=function(){var i=(0,m.Z)(function s(){(0,Z.Z)(this,s)});return i.\u0275fac=function(n){return new(n||i)},i.\u0275mod=e.oAB({type:i}),i.\u0275inj=e.cJS({imports:[[b.ez,I.o.forChild($e),Xe.V,ei.To,C.Ps,_.Bz,O.lN,q.AV,w.LD,p.UX,f.Tx,T.ot,ii.f,A.Hi]]}),i}()}}]); -//# sourceMappingURL=4028.5d59feec9dcd2909.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4028],{94028:function(oi,S,a){a.r(S),a.d(S,{SubstanceOverviewModule:function(){return ni}});var m=a(1884),Z=a(39117),b=a(36362),I=a(64061),D=a(46751),N=a(56101),J=a(2756),Q=a(52149),Y=a(24874),M=a(88951),P=a(12570),p=a(90587),x=a(93979),V=a(50253),F=a(18291),E=a(53141),L=a(22544),e=a(86613),j=a(50318),_=a(98002),R=a(93392),k=a(54244),H=a(95758),T=a(87317),q=a(40089),C=a(65590),f=a(82796),z=a(9292),O=a(44770),w=a(91434),K=a(1130),A=a(81196),B=a(73430),W=function(){var i=function(){function s(){(0,Z.Z)(this,s)}return(0,m.Z)(s,[{key:"transform",value:function(u,c){var t=u.toLowerCase().replace(" ","");return"chemical"===t?"Chemical":"nucleicacid"===t?"Nucleic Acid":"protein"===t?"Protein":"specifiedsubstanceg1"===t?"Group 1 Specified Substance":"polymer"===t?"Polymer":"structurallydiverse"===t?"Structurally Diverse":"polymer"===t?"Polymer":"concept"===t?"Concept":"specifiedsubstanceg3"===t?"Group 3 Specified Substance":u}}]),s}();return i.\u0275fac=function(n){return new(n||i)},i.\u0275pipe=e.Yjl({name:"classDisplay",type:i,pure:!0}),i}();function G(i,s){if(1&i&&(e.TgZ(0,"a",30),e.TgZ(1,"span",31),e._uU(2,"open in old application in new tab"),e.qZA(),e._UZ(3,"mat-icon",32),e.qZA()),2&i){var n=e.oxw(2);e.Q6J("href",n.oldUrl,e.LSH)}}var $=function(s){return["/substances",s,"edit"]};function X(i,s){if(1&i&&(e.TgZ(0,"span"),e.TgZ(1,"a",33),e._UZ(2,"mat-icon",34),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("routerLink",e.VKq(1,$,n.substance.uuid))}}function ee(i,s){if(1&i&&(e.TgZ(0,"button",36),e._UZ(1,"mat-icon",10),e.qZA()),2&i){e.oxw(2);var n=e.MAs(11);e.Q6J("matMenuTriggerFor",n)}}function ie(i,s){if(1&i&&(e.TgZ(0,"a",38),e._UZ(1,"mat-icon",34),e.qZA()),2&i){var n=e.oxw(4);e.Q6J("href",n.baseDomain+n.clasicBaseHref+"substance/"+n.substance.uuid+"/edit",e.LSH)}}function ne(i,s){1&i&&e.YNc(0,ie,2,1,"ng-template",null,37,e.W1O)}function te(i,s){if(1&i&&(e.TgZ(0,"span"),e.YNc(1,ee,2,1,"button",35),e.YNc(2,ne,2,0,null,0),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.isEditable)("ngIfElse",n.editClassic),e.xp6(1),e.Q6J("ngIf",n.showlinks)}}function se(i,s){if(1&i&&(e.TgZ(0,"a",39),e.TgZ(1,"span"),e._uU(2,"Download JSON"),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.MGl("download","",n.substance.approvalID?n.substance.approvalID.toString():n.substance.uuid.toString(),".json"),e.Q6J("href",n.downloadJsonHref,e.LSH)}}function ae(i,s){if(1&i&&(e.TgZ(0,"div",40),e.TgZ(1,"span",41),e._uU(2),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(2),e.hij(" ",n.substance.definitionLevel," DEFINITION ")}}function oe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(2),e.Oqu(n.defaultCodeSystem),e.xp6(2),e.Oqu(n.defaultCodes)}}function ce(i,s){1&i&&(e.TgZ(0,"span"),e.TgZ(1,"span"),e._uU(2,"Not a public record"),e.qZA(),e._uU(3,"\xa0 "),e._UZ(4,"mat-icon",42),e.qZA())}function ue(i,s){1&i&&(e.TgZ(0,"span"),e._uU(1,"Public record"),e.qZA(),e._uU(2,"\xa0 "),e._UZ(3,"mat-icon",43))}function re(i,s){1&i&&(e.TgZ(0,"span",44),e._uU(1,"RECORD IS DEPRECATED"),e.qZA())}function ve(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Protein Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.proteinType)}}function le(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Protein Sub-type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.proteinSubType.replace("|",", "))}}function de(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.sequenceType)}}function pe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Origin"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.protein.sequenceOrigin)}}function fe(i,s){if(1&i&&(e.TgZ(0,"div",45),e.YNc(1,ve,5,1,"div",17),e.YNc(2,le,5,1,"div",17),e.YNc(3,de,5,1,"div",17),e.YNc(4,pe,5,1,"div",17),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.substance.protein.proteinType),e.xp6(1),e.Q6J("ngIf",n.substance.protein.proteinSubType),e.xp6(1),e.Q6J("ngIf",n.substance.protein.sequenceType),e.xp6(1),e.Q6J("ngIf",n.substance.protein.sequenceOrigin)}}function ge(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Nucleic Acid Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.nucleicAcidType)}}function me(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Nucleic Acid Sub-type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.nucleicAcidSubType.join(", "))}}function Ze(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.sequenceType)}}function be(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Sequence Origin"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.nucleicAcid.sequenceOrigin)}}function _e(i,s){if(1&i&&(e.TgZ(0,"div",45),e.YNc(1,ge,5,1,"div",17),e.YNc(2,me,5,1,"div",17),e.YNc(3,Ze,5,1,"div",17),e.YNc(4,be,5,1,"div",17),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.nucleicAcidType),e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.nucleicAcidSubType&&n.substance.nucleicAcid.nucleicAcidSubType.length>0),e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.sequenceType),e.xp6(1),e.Q6J("ngIf",n.substance.nucleicAcid.sequenceOrigin)}}function Te(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials Class"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.sourceMaterialClass)}}function Ae(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.sourceMaterialType)}}function he(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials State"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.sourceMaterialState)}}var h=function(s){return["/substances",s]};function ye(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Source Materials Parent"),e.qZA(),e.TgZ(3,"div",46),e._UZ(4,"img",47),e.TgZ(5,"div"),e.TgZ(6,"a",48),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("entityId",n.substance.structurallyDiverse.parentSubstance.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(3,h,n.substance.structurallyDiverse.parentSubstance.refuuid)),e.xp6(1),e.hij(" ",n.substance.structurallyDiverse.parentSubstance.refPname," ")}}function Se(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Family"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismFamily)}}function xe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Genus"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismGenus)}}function qe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Species"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismSpecies)}}function Ce(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Infraspecific Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.infraSpecificType)}}function Oe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Intraspecific Name"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.infraSpecificName)}}function we(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Organism Author"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.organismAuthor)}}function Ue(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Developmental Stage"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.developmentalStage)}}function Ie(i,s){1&i&&(e.TgZ(0,"span"),e._uU(1,", "),e.qZA())}function De(i,s){if(1&i&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,Ie,2,0,"span",0),e.qZA()),2&i){var n=s.$implicit,u=s.last;e.xp6(1),e.hij(" ",n,""),e.xp6(1),e.Q6J("ngIf",!u)}}function Ne(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Part"),e.qZA(),e.TgZ(3,"div",16),e.YNc(4,De,3,2,"span",49),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("ngForOf",n.substance.structurallyDiverse.part)}}function Je(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Fraction Materials Type"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.fractionMaterialType)}}function Qe(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Fraction Name"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Oqu(n.substance.structurallyDiverse.fractionName)}}function Ye(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Hybrid Paternal Organism"),e.qZA(),e.TgZ(3,"div",46),e._UZ(4,"img",47),e.TgZ(5,"div"),e.TgZ(6,"a",48),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("entityId",n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(3,h,n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism.refuuid)),e.xp6(1),e.hij(" ",n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism.refPname," ")}}function Me(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Hybrid Paternal Organism"),e.qZA(),e.TgZ(3,"div",46),e._UZ(4,"img",47),e.TgZ(5,"div"),e.TgZ(6,"a",48),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.oxw(3);e.xp6(4),e.Q6J("entityId",n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid),e.xp6(2),e.Q6J("routerLink",e.VKq(3,h,n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism.refuuid)),e.xp6(1),e.hij(" ",n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism.refPname," ")}}function Pe(i,s){if(1&i&&(e.TgZ(0,"div",45),e.YNc(1,Te,5,1,"div",17),e.YNc(2,Ae,5,1,"div",17),e.YNc(3,he,5,1,"div",17),e.YNc(4,ye,8,5,"div",17),e.YNc(5,Se,5,1,"div",17),e.YNc(6,xe,5,1,"div",17),e.YNc(7,qe,5,1,"div",17),e.YNc(8,Ce,5,1,"div",17),e.YNc(9,Oe,5,1,"div",17),e.YNc(10,we,5,1,"div",17),e.YNc(11,Ue,5,1,"div",17),e.YNc(12,Ne,5,1,"div",17),e.YNc(13,Je,5,1,"div",17),e.YNc(14,Qe,5,1,"div",17),e.YNc(15,Ye,8,5,"div",17),e.YNc(16,Me,8,5,"div",17),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.sourceMaterialClass),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.sourceMaterialType),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.sourceMaterialState),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.parentSubstance),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismFamily),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismGenus),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismSpecies),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.infraSpecificType),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.infraSpecificName),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.organismAuthor),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.developmentalStage),e.xp6(1),e.Q6J("ngIf",(null==n.substance.structurallyDiverse.part?null:n.substance.structurallyDiverse.part.length)>0),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.fractionMaterialType),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse.fractionName),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse&&n.substance.structurallyDiverse.hybridSpeciesPaternalOrganism),e.xp6(1),e.Q6J("ngIf",n.substance.structurallyDiverse&&n.substance.structurallyDiverse.hybridSpeciesMaternalOrganism)}}function Ve(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Record Version"),e.qZA(),e.TgZ(3,"div",16),e._uU(4),e.qZA(),e.qZA()),2&i){var n=e.oxw(2);e.xp6(4),e.Oqu(n.substance.version)}}function Fe(i,s){if(1&i&&(e.TgZ(0,"mat-option",54),e._uU(1),e.qZA()),2&i){var n=s.$implicit;e.Q6J("value",n),e.xp6(1),e.hij(" ",n," ")}}function Ee(i,s){if(1&i){var n=e.EpF();e.TgZ(0,"button",55),e.NdJ("click",function(){return e.CHM(n),e.oxw(3).changeVersion()}),e._uU(1,"View"),e.qZA()}}function Le(i,s){if(1&i&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._uU(2,"Record Version"),e.qZA(),e.TgZ(3,"mat-form-field",50),e.TgZ(4,"mat-select",51),e.YNc(5,Fe,2,2,"mat-option",52),e.qZA(),e.qZA(),e.YNc(6,Ee,2,0,"button",53),e.qZA()),2&i){var n=e.oxw(2);e.xp6(4),e.Q6J("formControl",n.versionControl),e.xp6(1),e.Q6J("ngForOf",n.versions),e.xp6(1),e.Q6J("ngIf",n.substance.version!=n.versionControl.value)}}function je(i,s){if(1&i){var n=e.EpF();e.TgZ(0,"button",55),e.NdJ("click",function(){return e.CHM(n),e.oxw(3).restoreVersion()}),e._uU(1,"Restore this version"),e.qZA()}}function Re(i,s){if(1&i&&(e.TgZ(0,"div",56),e._uU(1),e.YNc(2,je,2,0,"button",53),e.qZA()),2&i){var n=e.oxw(2);e.xp6(1),e.hij(" This is an older version of this substance - Ver. ",n.substance.version," "),e.xp6(1),e.Q6J("ngIf",n.isAdmin)}}function ke(i,s){if(1&i&&(e.TgZ(0,"mat-chip",57),e._uU(1),e.qZA()),2&i){var n=s.$implicit;e.xp6(1),e.hij(" ",n," ")}}function He(i,s){if(1&i){var n=e.EpF();e.TgZ(0,"div",14),e.TgZ(1,"div",15),e.TgZ(2,"a",58),e.NdJ("click",function(){return e.CHM(n),e.oxw(2).toggleReferences()}),e.TgZ(3,"span"),e._uU(4),e.qZA(),e._UZ(5,"mat-icon",59),e.qZA(),e.qZA(),e.qZA()}if(2&i){var u=e.oxw(2);e.xp6(4),e.hij("",!1===u.showDef?"Show":"Hide"," Definitional References"),e.xp6(1),e.s9C("svgIcon",u.defIcon)}}function ze(i,s){1&i&&(e.TgZ(0,"span"),e.TgZ(1,"span"),e._uU(2,"Not a public definition"),e.qZA(),e._uU(3,"\xa0 "),e._UZ(4,"mat-icon",42),e.qZA())}function Ke(i,s){1&i&&(e.TgZ(0,"span"),e._uU(1,"Public definition"),e.qZA(),e._uU(2,"\xa0 "),e._UZ(3,"mat-icon",43))}var U=function(s){return["/substances/register",s]},Be=function(s){return{copy:s}},We=function(s){return{copy:s,copyType:"definition"}};function Ge(i,s){if(1&i&&(e.TgZ(0,"div"),e.TgZ(1,"div",1),e.YNc(2,G,4,1,"a",2),e.YNc(3,X,3,3,"span",0),e.YNc(4,te,3,3,"span",0),e.TgZ(5,"button",3),e._UZ(6,"mat-icon",4),e.qZA(),e.TgZ(7,"mat-menu",5,6),e.YNc(9,se,3,2,"a",7),e.qZA(),e.TgZ(10,"mat-menu",5,8),e.TgZ(12,"a",9),e._UZ(13,"mat-icon",10),e.qZA(),e.TgZ(14,"a",11),e._UZ(15,"mat-icon",12),e.qZA(),e.qZA(),e.qZA(),e.YNc(16,ae,3,1,"div",13),e.TgZ(17,"div"),e.TgZ(18,"div",14),e.TgZ(19,"div",15),e._uU(20,"Substance Class"),e.qZA(),e.TgZ(21,"div",16),e._uU(22),e.ALo(23,"classDisplay"),e.qZA(),e.qZA(),e.TgZ(24,"div",14),e.TgZ(25,"div",15),e._uU(26,"Record UNII"),e.qZA(),e.TgZ(27,"div",16),e._uU(28),e.qZA(),e.qZA(),e.YNc(29,oe,5,2,"div",17),e.TgZ(30,"div",14),e.TgZ(31,"div",15),e._uU(32,"Record Protection Status"),e.qZA(),e.TgZ(33,"div",16),e.YNc(34,ce,5,0,"span",18),e.YNc(35,ue,4,0,"ng-template",null,19,e.W1O),e.qZA(),e.qZA(),e.TgZ(37,"div",14),e.TgZ(38,"div",15),e._uU(39,"Record Status"),e.qZA(),e.TgZ(40,"div",16),e._uU(41),e.YNc(42,re,2,0,"span",20),e.qZA(),e.qZA(),e.YNc(43,fe,5,4,"div",21),e.YNc(44,_e,5,4,"div",21),e.YNc(45,Pe,17,16,"div",21),e.YNc(46,Ve,5,1,"div",17),e.YNc(47,Le,7,3,"div",17),e.YNc(48,Re,3,2,"div",22),e.TgZ(49,"div",14),e.TgZ(50,"div",15),e._uU(51,"Tags"),e.qZA(),e.TgZ(52,"div",23),e.TgZ(53,"mat-chip-list",24,25),e.YNc(55,ke,2,1,"mat-chip",26),e.qZA(),e.qZA(),e.qZA(),e.YNc(56,He,6,2,"div",17),e.TgZ(57,"div",27),e._UZ(58,"app-references-manager",28),e.qZA(),e.TgZ(59,"div",14),e.TgZ(60,"div",15),e._uU(61,"Definitional Access"),e.qZA(),e.TgZ(62,"div",16),e.YNc(63,ze,5,0,"span",18),e.YNc(64,Ke,4,0,"ng-template",null,29,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&i){var n=e.MAs(8),u=e.MAs(36),c=e.MAs(65),t=e.oxw();e.xp6(2),e.Q6J("ngIf",t.showlinks),e.xp6(1),e.Q6J("ngIf",t.canEdit),e.xp6(1),e.Q6J("ngIf",t.canEdit),e.xp6(1),e.Q6J("matMenuTriggerFor",n),e.xp6(4),e.Q6J("ngIf",t.substance.uuid),e.xp6(3),e.Q6J("routerLink",e.VKq(32,U,t.substance.substanceClass))("queryParams",e.VKq(34,Be,t.substance.uuid)),e.xp6(2),e.Q6J("routerLink",e.VKq(36,U,t.substance.substanceClass))("queryParams",e.VKq(38,We,t.substance.uuid)),e.xp6(2),e.Q6J("ngIf",t.substance.definitionLevel&&"COMPLETE"!==t.substance.definitionLevel),e.xp6(6),e.Oqu(e.lcZ(23,30,t.substance.substanceClass)),e.xp6(6),e.Oqu(t.substance._approvalIDDisplay),e.xp6(1),e.Q6J("ngIf",t.defaultCodes),e.xp6(5),e.Q6J("ngIf",t.substance.access&&t.substance.access.length>0)("ngIfElse",u),e.xp6(7),e.hij("","approved"===t.substance.status?t.primaryCode:t.substance.status," "),e.xp6(1),e.Q6J("ngIf",t.substance.deprecated),e.xp6(1),e.Q6J("ngIf",t.substance.protein),e.xp6(1),e.Q6J("ngIf",t.substance.nucleicAcid),e.xp6(1),e.Q6J("ngIf",t.substance.structurallyDiverse),e.xp6(1),e.Q6J("ngIf",!t.isAdmin),e.xp6(1),e.Q6J("ngIf",t.isAdmin),e.xp6(1),e.Q6J("ngIf",t.substance.version!=t.latestVersion),e.xp6(7),e.Q6J("ngForOf",t.substance.tags),e.xp6(1),e.Q6J("ngIf",(null==t.references?null:t.references.length)>0),e.xp6(1),e.Q6J("hidden",!t.showDef),e.xp6(1),e.Q6J("substance",t.substance)("references",t.references),e.xp6(5),e.Q6J("ngIf",t.defAccess&&t.defAccess.length>0)("ngIfElse",c)}}var $e=function(){var i=function(s){(0,D.Z)(u,s);var n=(0,N.Z)(u);function u(c,t,r,d,v,y,g,l,ti,si,ai){var o;return(0,Z.Z)(this,u),(o=n.call(this)).sanitizer=c,o.utilsService=t,o.gaService=r,o.substanceService=d,o.router=v,o.authService=y,o.cvService=g,o.configService=l,o.loadingService=ti,o.overlayContainerService=si,o.dialog=ai,o.references=[],o.showDef=!1,o.defIcon="drop_down",o.versionControl=new p.NI("",p.kI.required),o.versions=[],o.isEditable=!1,o.isAdmin=!1,o.substanceUpdated=new V.x,o.defaultCodeSystem="BDNUM",o.primaryCode="Validated (UNII)",o.subscriptions=[],o.showlinks=!1,o.baseDomain=o.configService.configData.apiUrlDomain,o.clasicBaseHref=o.configService.environment.clasicBaseHref,o}return(0,m.Z)(u,[{key:"ngOnInit",value:function(){var t=this,d=(this.authService.hasAnyRolesAsync("updater","superUpdater").subscribe(function(l){t.canEdit=l,t.isEditable=l&&null!=t.substance.substanceClass&&(null!=x.x[t.substance.substanceClass.toLowerCase()]||null!=x.x[t.substance.substanceClass])}),this.authService.hasAnyRolesAsync("admin").subscribe(function(l){t.isAdmin=l}));this.subscriptions.push(d),this.getSubtypeRefs(this.substance);var v=JSON.stringify(this.substance),y=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(v));if(this.downloadJsonHref=y,this.getVersion(),this.getClassFromCv(),this.oldUrl=this.substanceService.oldSiteRedirect("details",this.substance.uuid),null!=this.configService.configData.defaultCodeSystem&&""!==this.configService.configData.defaultCodeSystem&&(this.defaultCodeSystem=this.configService.configData.defaultCodeSystem),this.configService.configData.primaryCode&&""!==this.configService.configData.primaryCode&&(this.primaryCode="Validated ("+this.configService.configData.primaryCode+")"),this.configService.configData&&this.configService.configData.showOldLinks&&(this.showlinks=!0),this.getDefAccess(),null!=this.substance.codes&&this.substance.codes.length>0){var g=[];this.substance.codes.forEach(function(l){l.codeSystem===t.defaultCodeSystem&&g.push(l.code)}),this.defaultCodes=g.join(", ")}this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"ngAfterViewInit",value:function(){var t=this,r=this.substanceUpdated.subscribe(function(d){t.substance=d,t.getVersion()});this.subscriptions.push(r)}},{key:"getDefAccess",value:function(){this.substance.structurallyDiverse?this.defAccess=this.substance.structurallyDiverse.access:this.substance.protein?this.defAccess=this.substance.protein.access:this.substance.structure?this.defAccess=this.substance.structure.access:this.substance.mixture?this.defAccess=this.substance.mixture.access:this.substance.polymer?this.defAccess=this.substance.polymer.access:this.substance.nucleicAcid?this.defAccess=this.substance.nucleicAcid.access:this.substance.specifiedSubstance&&(this.defAccess=this.substance.specifiedSubstance.access)}},{key:"getSubtypeRefs",value:function(t){t.mixture?this.references=t.mixture.references:t.protein?this.references=t.protein.references:t.nucleicAcid?this.references=t.nucleicAcid.references:t.polymer?this.references=t.polymer.references:t.structure?this.references=t.structure.references:t.structurallyDiverse?this.references=t.structurallyDiverse.references:t.specifiedSubstance&&(this.references=t.specifiedSubstance.references)}},{key:"getVersion",value:function(){var t=this;this.substanceService.checkVersion(this.substance.uuid).subscribe(function(r){t.versions=[],t.latestVersion=r,t.setVersionList(),t.versionControl.setValue(t.substance.version)},function(r){console.log(r)})}},{key:"changeVersion",value:function(){var t=this.versionControl.value.toString();this.router.navigate(["/substances/"+this.substance.uuid+"/v/"+t])}},{key:"setVersionList",value:function(){for(var t=1;t<=this.latestVersion;t++)this.versions.push(t.toString())}},{key:"toggleReferences",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","references",this.showDef?0:1),this.showDef=!this.showDef,this.defIcon=this.showDef?"drop_up":"drop_down"}},{key:"getClassFromCv",value:function(){var t=this;this.cvService.getDomainVocabulary("SUBSTANCE_CLASS").subscribe(function(r){r.SUBSTANCE_CLASS.list.forEach(function(v){v.value===t.substance.substanceClass&&(t.substance.substanceClass=v.display)})})}},{key:"restoreVersion",value:function(){var t=this,r=this.dialog.open(L.h,{data:{substance:this.substance,version:this.substance.version,latest:this.latestVersion.toString()},width:"650px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(v){t.overlayContainer.style.zIndex=null,v&&"success"===v&&(t.router.onSameUrlNavigation="reload",t.router.navigate(["/substances/"+t.substance.uuid+"/"]))})}}]),u}(J.B);return i.\u0275fac=function(n){return new(n||i)(e.Y36(j.H7),e.Y36(Q.F),e.Y36(Y.$),e.Y36(P.d),e.Y36(_.F0),e.Y36(M.e),e.Y36(F.I),e.Y36(E.E),e.Y36(R.b),e.Y36(k.Xj),e.Y36(H.uw))},i.\u0275cmp=e.Xpm({type:i,selectors:[["app-substance-overview"]],features:[e.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"options-area"],["mat-icon-button","","target","_blank","matTooltip","view in old application",3,"href",4,"ngIf"],["mat-icon-button","","aria-label","download file","matTooltip","download options","name","download",3,"matMenuTriggerFor"],["svgIcon","get_app"],["xPosition","before"],["downloadMenu","matMenu"],["name","download_json","mat-menu-item","",3,"href","download",4,"ngIf"],["editMenu","matMenu"],["mat-icon-button","","matTooltip","copy substance to new registration form",3,"routerLink","queryParams"],["svgIcon","file_copy"],["mat-icon-button","","matTooltip","copy definition to new registration form",3,"routerLink","queryParams"],["svgIcon","outline-file_copy"],["class","extra-area",4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value","blue-font"],["class","name-value",4,"ngIf"],[4,"ngIf","ngIfElse"],["lockedIndicator",""],["class","deprecated",4,"ngIf"],["class","diverseWrapper",4,"ngIf"],["class","indent",4,"ngIf"],[1,"value"],["aria-label","Tags","selectable","false"],["tagList",""],["removable","false",4,"ngFor","ngForOf"],[3,"hidden"],[3,"substance","references"],["defIndicator",""],["mat-icon-button","","target","_blank","matTooltip","view in old application",3,"href"],["hidden",""],["svgIcon","open_in_new"],["mat-icon-button","","matTooltip","edit record","name","edit_record","aria-label","edit record",3,"routerLink"],["svgIcon","edit"],["mat-icon-button","","name","edit_substance","matTooltip","copy to edit form options","aria-label","copy file",3,"matMenuTriggerFor",4,"ngIf","ngIfElse"],["mat-icon-button","","name","edit_substance","matTooltip","copy to edit form options","aria-label","copy file",3,"matMenuTriggerFor"],["editClassic",""],["mat-icon-button","","name","edit","target","_blank",3,"href"],["name","download_json","mat-menu-item","",3,"href","download"],[1,"extra-area"],[1,"definition-level"],["svgIcon","lock"],["svgIcon","lock_open"],[1,"deprecated"],[1,"diverseWrapper"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"],[4,"ngFor","ngForOf"],[1,"version-dropdown"],[1,"version-select",3,"formControl"],["class","version-option",3,"value",4,"ngFor","ngForOf"],["mat-button","","class","mat-raised-button mat-primary view-version",3,"click",4,"ngIf"],[1,"version-option",3,"value"],["mat-button","",1,"mat-raised-button","mat-primary","view-version",3,"click"],[1,"indent"],["removable","false"],["tabindex","0","role","link",1,"blue-font","references-link",3,"click"],[3,"svgIcon"]],template:function(n,u){1&n&&e.YNc(0,Ge,66,40,"div",0),2&n&&e.Q6J("ngIf",u.substance)},directives:[b.O5,T.zs,q.gM,C.Hw,_.yS,T.lW,f.p6,f.VK,f.OP,z.m,b.sg,O.KE,w.gD,p.JJ,p.oH,K.ey,A.qn,A.HS,B.C],pipes:[W],styles:[".references-link[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.version-dropdown[_ngcontent-%COMP%]{width:50px;border:0px;height:20px}.diverseWrapper[_ngcontent-%COMP%]{padding-bottom:20px}.view-version[_ngcontent-%COMP%]{margin-left:10px}.version-dropdown[_ngcontent-%COMP%] .mat-form-field-infix{border:0px}.options-area[_ngcontent-%COMP%]{float:right;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.pre[_ngcontent-%COMP%]{white-space:pre}.definition-level[_ngcontent-%COMP%]{color:var(--link-color);font-size:16px}.deprecated[_ngcontent-%COMP%]{margin-left:10px;font-size:13px;color:var(--pink-span-color)}.extra-area[_ngcontent-%COMP%]{float:right;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-right:70px}.large-icon[_ngcontent-%COMP%]{height:32px;width:32px}.icon-button[_ngcontent-%COMP%]{padding:5px;height:34px;width:34px;min-width:34px;margin:2px}.indent[_ngcontent-%COMP%]{padding-left:12px;padding-bottom:10px}.standardize[_ngcontent-%COMP%]{padding-right:25px}.overview-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}"]}),i}(),Xe=a(38277),ei=a(16531),ii=a(24054),ni=function(){var i=(0,m.Z)(function s(){(0,Z.Z)(this,s)});return i.\u0275fac=function(n){return new(n||i)},i.\u0275mod=e.oAB({type:i}),i.\u0275inj=e.cJS({imports:[[b.ez,I.o.forChild($e),Xe.V,ei.To,C.Ps,_.Bz,O.lN,q.AV,w.LD,p.UX,f.Tx,T.ot,ii.f,A.Hi]]}),i}()}}]); +//# sourceMappingURL=4028.765e9cc66baf04da.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4028.5d59feec9dcd2909.js.map b/frontend/src/main/resources/static/4028.765e9cc66baf04da.js.map similarity index 99% rename from frontend/src/main/resources/static/4028.5d59feec9dcd2909.js.map rename to frontend/src/main/resources/static/4028.765e9cc66baf04da.js.map index 099c1a1..4934e07 100644 --- a/frontend/src/main/resources/static/4028.5d59feec9dcd2909.js.map +++ b/frontend/src/main/resources/static/4028.765e9cc66baf04da.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["SubstanceClassPipe","name","item2","tempName","toLowerCase","replace","s","pure","i0","ctx_r60","ctx_r63","ctx_r66","SubstanceOverviewComponent","sanitizer","utilsService","gaService","substanceService","router","authService","cvService","configService","loadingService","overlayContainerService","dialog","o","FormControl","Validators","Subject","baseDomain","configData","apiUrlDomain","clasicBaseHref","environment","rolesSubscription2","this","hasAnyRolesAsync","subscribe","t","canEdit","isEditable","substance","substanceClass","formSections","isAdmin","subscriptions","push","getSubtypeRefs","theJSON","JSON","stringify","uri","bypassSecurityTrustUrl","encodeURIComponent","downloadJsonHref","getVersion","getClassFromCv","oldUrl","oldSiteRedirect","uuid","defaultCodeSystem","primaryCode","showOldLinks","showlinks","getDefAccess","codes","length","defaultCodes","forEach","code","codeSystem","join","overlayContainer","getContainerElement","subscription","unsubscribe","subSubscription","substanceUpdated","structurallyDiverse","defAccess","access","protein","structure","mixture","polymer","nucleicAcid","specifiedSubstance","references","checkVersion","result","versions","latestVersion","setVersionList","versionControl","setValue","version","console","log","error","value","toString","navigate","i","sendEvent","analyticsEventCategory","showDef","defIcon","getDomainVocabulary","response","SUBSTANCE_CLASS","list","c","display","dialogRef","open","SubstanceHistoryDialogComponent","data","latest","width","autoFocus","disableClose","style","zIndex","afterClosed","onSameUrlNavigation","u","SubstanceCardBase","selectors","SubstanceOverviewModule","m","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatExpansionModule","MatIconModule","RouterModule","MatFormFieldModule","MatTooltipModule","MatSelectModule","ReactiveFormsModule","MatMenuModule","MatButtonModule","SubstanceImageModule","MatChipsModule"],"sources":["./src/app/core/utils/substance-class.pipe.ts","./src/app/core/substance-details/substance-overview/substance-overview.component.html","./src/app/core/substance-details/substance-overview/substance-overview.component.ts","./src/app/core/substance-details/substance-overview/substance-overview.module.ts"],"sourcesContent":["import {Pipe, PipeTransform} from '@angular/core';\n\n@Pipe({\n name: 'classDisplay'\n})\nexport class SubstanceClassPipe implements PipeTransform {\n transform(name: string, item2?: string): string {\n const tempName = name.toLowerCase().replace(' ', '');\n if (tempName === 'chemical') {\n return 'Chemical';\n } else if (tempName === 'nucleicacid') {\n return 'Nucleic Acid';\n } else if (tempName === 'protein') {\n return 'Protein';\n } else if (tempName === 'specifiedsubstanceg1') {\n return 'Group 1 Specified Substance';\n } else if (tempName === 'polymer') {\n return 'Polymer';\n } else if (tempName === 'structurallydiverse') {\n return 'Structurally Diverse';\n } else if (tempName === 'polymer') {\n return 'Polymer';\n } else if (tempName === 'concept') {\n return 'Concept';\n } else if (tempName === 'specifiedsubstanceg3') {\n return 'Group 3 Specified Substance';\n } else {\n return name;\n }\n\n }\n}\n","
\n
\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n Download JSON\n \n \n \n \n \n \n \n \n \n \n
\n
\n \n {{substance.definitionLevel}} DEFINITION\n \n
\n
\n
\n
Substance Class
\n
{{substance.substanceClass | classDisplay}}
\n
\n
\n
Record UNII
\n
{{substance._approvalIDDisplay}}
\n
\n
\n
{{defaultCodeSystem}}
\n
{{defaultCodes}}
\n
\n
\n
Record Protection Status
\n
\n 0) else lockedIndicator\">\n Not a public record \n \n \n \n Public record \n \n \n
\n
\n
\n
Record Status
\n
{{substance.status === 'approved' ? primaryCode : substance.status}}\n RECORD IS DEPRECATED\n
\n
\n
\n
\n
Protein Type
\n
{{substance.protein.proteinType}}
\n
\n
\n
Protein Sub-type
\n
{{substance.protein.proteinSubType.replace('|', ', ')}}
\n
\n
\n
Sequence Type
\n
{{substance.protein.sequenceType}}
\n
\n
\n
Sequence Origin
\n
{{substance.protein.sequenceOrigin}}
\n
\n
\n
\n
\n
Nucleic Acid Type
\n
{{substance.nucleicAcid.nucleicAcidType}}
\n
\n
0\">\n
Nucleic Acid Sub-type
\n
{{substance.nucleicAcid.nucleicAcidSubType.join(', ')}}
\n
\n
\n
Sequence Type
\n
{{substance.nucleicAcid.sequenceType}}
\n
\n
\n
Sequence Origin
\n
{{substance.nucleicAcid.sequenceOrigin}}
\n
\n
\n
\n
\n
Source Materials Class
\n
{{substance.structurallyDiverse.sourceMaterialClass}}
\n
\n
\n
Source Materials Type
\n
{{substance.structurallyDiverse.sourceMaterialType}}
\n
\n
\n
Source Materials State
\n
{{substance.structurallyDiverse.sourceMaterialState}}
\n
\n
\n
Source Materials Parent
\n \n
\n
\n
Organism Family
\n
{{substance.structurallyDiverse.organismFamily}}
\n
\n
\n
Organism Genus
\n
{{substance.structurallyDiverse.organismGenus}}
\n
\n
\n
Organism Species
\n
{{substance.structurallyDiverse.organismSpecies}}
\n
\n
\n
Organism Infraspecific Type
\n
{{substance.structurallyDiverse.infraSpecificType}}
\n
\n
\n
Organism Intraspecific Name
\n
{{substance.structurallyDiverse.infraSpecificName}}
\n
\n
\n
Organism Author
\n
{{substance.structurallyDiverse.organismAuthor}}
\n
\n
\n
Developmental Stage
\n
{{substance.structurallyDiverse.developmentalStage}}
\n
\n
0\">\n
Part
\n
\n \n {{part}}, \n
\n
\n
\n
Fraction Materials Type
\n
{{substance.structurallyDiverse.fractionMaterialType}}
\n
\n
\n
Fraction Name
\n
{{substance.structurallyDiverse.fractionName}}
\n
\n \n \n
\n
\n
Record Version
\n
{{substance.version}}
\n
\n
\n
Record Version
\n \n \n \n {{version}}\n \n \n \n \n
\n
\n This is an older version of this substance - Ver. {{this.substance.version}}\n \n
\n
\n
Tags
\n
\n \n \n {{tag}}\n \n \n
\n
\n \n
\n \n
\n
\n
Definitional Access
\n
\n 0) else defIndicator\">\n Not a public definition \n \n \n \n Public definition \n \n \n
\n \n
\n
\n
","\nimport { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport {SubstanceDetail} from '../../substance/substance.model';\nimport {DomSanitizer, SafeUrl} from '@angular/platform-browser';\nimport {UtilsService} from '../../utils/utils.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport {AuthService} from '@gsrs-core/auth/auth.service';\nimport {SubstanceService} from '@gsrs-core/substance/substance.service';\nimport {FormControl, Validators} from '@angular/forms';\nimport {ActivatedRoute, Router} from '@angular/router';\nimport {formSections} from '@gsrs-core/substance-form/form-sections.constant';\nimport {Subject, of, Subscription} from 'rxjs';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceClassPipe } from '../../utils/substance-class.pipe';\nimport {ConfigService} from '@gsrs-core/config';\nimport { catchError } from 'rxjs/operators';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceHistoryDialogComponent } from '@gsrs-core/substance-history-dialog/substance-history-dialog.component';\n\n@Component({\n selector: 'app-substance-overview',\n templateUrl: './substance-overview.component.html',\n styleUrls: ['./substance-overview.component.scss']\n})\nexport class SubstanceOverviewComponent extends SubstanceCardBase implements OnInit, AfterViewInit, OnDestroy {\n references: string[] = [];\n showDef = false;\n downloadJsonHref: any;\n defIcon = 'drop_down';\n latestVersion: number;\n canEdit: boolean;\n defAccess: Array;\n versionControl = new FormControl('', Validators.required);\n versions: string[] = [];\n isEditable = false;\n isAdmin = false;\n substanceUpdated = new Subject();\n oldUrl: string;\n baseDomain: string;\n defaultCodeSystem = 'BDNUM';\n defaultCodes: string;\n clasicBaseHref: string;\n primaryCode = \"Validated (UNII)\";\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n showlinks = false;\n\n\n constructor(\n private sanitizer: DomSanitizer,\n private utilsService: UtilsService,\n public gaService: GoogleAnalyticsService,\n private substanceService: SubstanceService,\n private router: Router,\n private authService: AuthService,\n private cvService: ControlledVocabularyService,\n private configService: ConfigService,\n public loadingService: LoadingService,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog\n ) {\n super();\n this.baseDomain = this.configService.configData.apiUrlDomain;\n this.clasicBaseHref = this.configService.environment.clasicBaseHref;\n }\n\n ngOnInit() {\n\n const rolesSubscription = this.authService.hasAnyRolesAsync('updater', 'superUpdater').subscribe(canEdit => {\n this.canEdit = canEdit;\n this.isEditable = canEdit\n && this.substance.substanceClass != null\n && (formSections[this.substance.substanceClass.toLowerCase()] != null || formSections[this.substance.substanceClass] != null);\n });\n const rolesSubscription2 = this.authService.hasAnyRolesAsync('admin').subscribe(canEdit => {\n this.isAdmin = canEdit;\n });\n this.subscriptions.push(rolesSubscription2);\n this.getSubtypeRefs(this.substance);\n const theJSON = JSON.stringify(this.substance);\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' + encodeURIComponent(theJSON));\n this.downloadJsonHref = uri;\n this.getVersion();\n this.getClassFromCv();\n this.oldUrl = this.substanceService.oldSiteRedirect('details', this.substance.uuid);\n if (this.configService.configData.defaultCodeSystem != null\n && this.configService.configData.defaultCodeSystem !== '') {\n this.defaultCodeSystem = this.configService.configData.defaultCodeSystem;\n }\n\n if (this.configService.configData.primaryCode \n && this.configService.configData.primaryCode !== '') {\n this.primaryCode = 'Validated (' + this.configService.configData.primaryCode + ')';\n }\n\n if (this.configService.configData && this.configService.configData.showOldLinks) {\n this.showlinks = true;\n }\n this.getDefAccess();\n if (this.substance.codes != null && this.substance.codes.length > 0) {\n const defaultCodes = [];\n this.substance.codes.forEach(code => {\n if (code.codeSystem === this.defaultCodeSystem) {\n defaultCodes.push(code.code);\n }\n });\n\n this.defaultCodes = defaultCodes.join(', ');\n }\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n ngAfterViewInit() {\n const subSubscription = this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n this.getVersion();\n });\n this.subscriptions.push(subSubscription);\n\n }\n\n getDefAccess() {\n if (this.substance.structurallyDiverse) {\n this.defAccess = this.substance.structurallyDiverse.access;\n } else if (this.substance.protein) {\n this.defAccess = this.substance.protein.access;\n } else if (this.substance.structure) {\n this.defAccess = this.substance.structure.access;\n } else if (this.substance.mixture) {\n this.defAccess = this.substance.mixture.access;\n } else if (this.substance.polymer) {\n this.defAccess = this.substance.polymer.access;\n } else if (this.substance.nucleicAcid) {\n this.defAccess = this.substance.nucleicAcid.access;\n } else if (this.substance.specifiedSubstance) {\n this.defAccess = this.substance.specifiedSubstance.access;\n }\n\n }\n\n getSubtypeRefs(substance: SubstanceDetail): void {\n if (substance.mixture) {\n this.references = substance.mixture.references;\n } else if (substance.protein) {\n this.references = substance.protein.references;\n } else if (substance.nucleicAcid) {\n this.references = substance.nucleicAcid.references;\n } else if (substance.polymer) {\n this.references = substance.polymer.references;\n } else if (substance.structure) {\n this.references = substance.structure.references;\n } else if (substance.structurallyDiverse) {\n this.references = substance.structurallyDiverse.references;\n } else if (substance.specifiedSubstance) {\n this.references = substance.specifiedSubstance.references;\n }\n\n }\n\n getVersion() {\n this.substanceService.checkVersion(this.substance.uuid).subscribe((result: number) => {\n this.versions = [];\n this.latestVersion = result;\n this.setVersionList();\n this.versionControl.setValue(this.substance.version);\n }, error => {\n console.log(error);\n });\n }\n\n changeVersion() {\n const version = this.versionControl.value.toString();\n this.router.navigate(['/substances/' + this.substance.uuid + '/v/' + version]);\n }\n\n setVersionList() {\n for (let i = 1; i <= this.latestVersion; i++) {\n this.versions.push(i.toString());\n }\n }\n\n toggleReferences() {\n\n const value = this.showDef ? 0 : 1;\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'references', value);\n this.showDef = !this.showDef;\n if (!this.showDef) {\n this.defIcon = 'drop_down';\n } else {\n this.defIcon = 'drop_up';\n }\n }\n\n getClassFromCv(): void {\n this.cvService.getDomainVocabulary('SUBSTANCE_CLASS').subscribe(response => {\n const classes = response['SUBSTANCE_CLASS'].list;\n classes.forEach( c => {\n if (c.value === this.substance.substanceClass) {\n this.substance.substanceClass = c.display;\n }\n });\n });\n }\n\n restoreVersion() {\n const dialogRef = this.dialog.open(SubstanceHistoryDialogComponent, {\n data: {'substance': this.substance, 'version': this.substance.version, 'latest': this.latestVersion.toString()},\n width: '650px',\n autoFocus: false,\n disableClose: true\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n\n if (response && response === 'success' ) {\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigate(['/substances/' + this.substance.uuid + '/']);\n }\n });\n\n}\n\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceOverviewComponent } from './substance-overview.component';\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\nimport {MatExpansionModule} from '@angular/material/expansion';\nimport {MatChipsModule} from '@angular/material/chips';\nimport {MatIconModule} from '@angular/material/icon';\nimport {RouterModule} from '@angular/router';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatButtonModule } from '@angular/material/button';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {SubstanceClassPipe} from '@gsrs-core/utils/substance-class.pipe';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceOverviewComponent),\n ReferencesManagerModule,\n MatExpansionModule,\n MatIconModule,\n RouterModule,\n MatFormFieldModule,\n MatTooltipModule,\n MatSelectModule,\n ReactiveFormsModule,\n MatMenuModule,\n MatButtonModule,\n SubstanceImageModule,\n MatChipsModule\n ],\n declarations: [SubstanceOverviewComponent, SubstanceClassPipe]\n})\nexport class SubstanceOverviewModule { }\n"],"sourceRoot":"webpack:///","file":"4028.5d59feec9dcd2909.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["SubstanceClassPipe","name","item2","tempName","toLowerCase","replace","s","pure","i0","ctx_r60","ctx_r63","ctx_r66","SubstanceOverviewComponent","sanitizer","utilsService","gaService","substanceService","router","authService","cvService","configService","loadingService","overlayContainerService","dialog","o","FormControl","Validators","Subject","baseDomain","configData","apiUrlDomain","clasicBaseHref","environment","rolesSubscription2","this","hasAnyRolesAsync","subscribe","t","canEdit","isEditable","substance","substanceClass","formSections","isAdmin","subscriptions","push","getSubtypeRefs","theJSON","JSON","stringify","uri","bypassSecurityTrustUrl","encodeURIComponent","downloadJsonHref","getVersion","getClassFromCv","oldUrl","oldSiteRedirect","uuid","defaultCodeSystem","primaryCode","showOldLinks","showlinks","getDefAccess","codes","length","defaultCodes","forEach","code","codeSystem","join","overlayContainer","getContainerElement","subscription","unsubscribe","subSubscription","substanceUpdated","structurallyDiverse","defAccess","access","protein","structure","mixture","polymer","nucleicAcid","specifiedSubstance","references","checkVersion","result","versions","latestVersion","setVersionList","versionControl","setValue","version","console","log","error","value","toString","navigate","i","sendEvent","analyticsEventCategory","showDef","defIcon","getDomainVocabulary","response","SUBSTANCE_CLASS","list","c","display","dialogRef","open","SubstanceHistoryDialogComponent","data","latest","width","autoFocus","disableClose","style","zIndex","afterClosed","onSameUrlNavigation","u","SubstanceCardBase","selectors","SubstanceOverviewModule","m","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatExpansionModule","MatIconModule","RouterModule","MatFormFieldModule","MatTooltipModule","MatSelectModule","ReactiveFormsModule","MatMenuModule","MatButtonModule","SubstanceImageModule","MatChipsModule"],"sources":["./src/app/core/utils/substance-class.pipe.ts","./src/app/core/substance-details/substance-overview/substance-overview.component.html","./src/app/core/substance-details/substance-overview/substance-overview.component.ts","./src/app/core/substance-details/substance-overview/substance-overview.module.ts"],"sourcesContent":["import {Pipe, PipeTransform} from '@angular/core';\n\n@Pipe({\n name: 'classDisplay'\n})\nexport class SubstanceClassPipe implements PipeTransform {\n transform(name: string, item2?: string): string {\n const tempName = name.toLowerCase().replace(' ', '');\n if (tempName === 'chemical') {\n return 'Chemical';\n } else if (tempName === 'nucleicacid') {\n return 'Nucleic Acid';\n } else if (tempName === 'protein') {\n return 'Protein';\n } else if (tempName === 'specifiedsubstanceg1') {\n return 'Group 1 Specified Substance';\n } else if (tempName === 'polymer') {\n return 'Polymer';\n } else if (tempName === 'structurallydiverse') {\n return 'Structurally Diverse';\n } else if (tempName === 'polymer') {\n return 'Polymer';\n } else if (tempName === 'concept') {\n return 'Concept';\n } else if (tempName === 'specifiedsubstanceg3') {\n return 'Group 3 Specified Substance';\n } else {\n return name;\n }\n\n }\n}\n","
\n
\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n Download JSON\n \n \n \n \n \n \n \n \n \n \n
\n
\n \n {{substance.definitionLevel}} DEFINITION\n \n
\n
\n
\n
Substance Class
\n
{{substance.substanceClass | classDisplay}}
\n
\n
\n
Record UNII
\n
{{substance._approvalIDDisplay}}
\n
\n
\n
{{defaultCodeSystem}}
\n
{{defaultCodes}}
\n
\n
\n
Record Protection Status
\n
\n 0) else lockedIndicator\">\n Not a public record \n \n \n \n Public record \n \n \n
\n
\n
\n
Record Status
\n
{{substance.status === 'approved' ? primaryCode : substance.status}}\n RECORD IS DEPRECATED\n
\n
\n
\n
\n
Protein Type
\n
{{substance.protein.proteinType}}
\n
\n
\n
Protein Sub-type
\n
{{substance.protein.proteinSubType.replace('|', ', ')}}
\n
\n
\n
Sequence Type
\n
{{substance.protein.sequenceType}}
\n
\n
\n
Sequence Origin
\n
{{substance.protein.sequenceOrigin}}
\n
\n
\n
\n
\n
Nucleic Acid Type
\n
{{substance.nucleicAcid.nucleicAcidType}}
\n
\n
0\">\n
Nucleic Acid Sub-type
\n
{{substance.nucleicAcid.nucleicAcidSubType.join(', ')}}
\n
\n
\n
Sequence Type
\n
{{substance.nucleicAcid.sequenceType}}
\n
\n
\n
Sequence Origin
\n
{{substance.nucleicAcid.sequenceOrigin}}
\n
\n
\n
\n
\n
Source Materials Class
\n
{{substance.structurallyDiverse.sourceMaterialClass}}
\n
\n
\n
Source Materials Type
\n
{{substance.structurallyDiverse.sourceMaterialType}}
\n
\n
\n
Source Materials State
\n
{{substance.structurallyDiverse.sourceMaterialState}}
\n
\n
\n
Source Materials Parent
\n \n
\n
\n
Organism Family
\n
{{substance.structurallyDiverse.organismFamily}}
\n
\n
\n
Organism Genus
\n
{{substance.structurallyDiverse.organismGenus}}
\n
\n
\n
Organism Species
\n
{{substance.structurallyDiverse.organismSpecies}}
\n
\n
\n
Organism Infraspecific Type
\n
{{substance.structurallyDiverse.infraSpecificType}}
\n
\n
\n
Organism Intraspecific Name
\n
{{substance.structurallyDiverse.infraSpecificName}}
\n
\n
\n
Organism Author
\n
{{substance.structurallyDiverse.organismAuthor}}
\n
\n
\n
Developmental Stage
\n
{{substance.structurallyDiverse.developmentalStage}}
\n
\n
0\">\n
Part
\n
\n \n {{part}}, \n
\n
\n
\n
Fraction Materials Type
\n
{{substance.structurallyDiverse.fractionMaterialType}}
\n
\n
\n
Fraction Name
\n
{{substance.structurallyDiverse.fractionName}}
\n
\n \n \n
\n
\n
Record Version
\n
{{substance.version}}
\n
\n
\n
Record Version
\n \n \n \n {{version}}\n \n \n \n \n
\n
\n This is an older version of this substance - Ver. {{this.substance.version}}\n \n
\n
\n
Tags
\n
\n \n \n {{tag}}\n \n \n
\n
\n \n
\n \n
\n
\n
Definitional Access
\n
\n 0) else defIndicator\">\n Not a public definition \n \n \n \n Public definition \n \n \n
\n \n
\n
\n
","\nimport { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport {SubstanceDetail} from '../../substance/substance.model';\nimport {DomSanitizer, SafeUrl} from '@angular/platform-browser';\nimport {UtilsService} from '../../utils/utils.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport {AuthService} from '@gsrs-core/auth/auth.service';\nimport {SubstanceService} from '@gsrs-core/substance/substance.service';\nimport {FormControl, Validators} from '@angular/forms';\nimport {ActivatedRoute, Router} from '@angular/router';\nimport {formSections} from '@gsrs-core/substance-form/form-sections.constant';\nimport {Subject, of, Subscription} from 'rxjs';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceClassPipe } from '../../utils/substance-class.pipe';\nimport {ConfigService} from '@gsrs-core/config';\nimport { catchError } from 'rxjs/operators';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceHistoryDialogComponent } from '@gsrs-core/substance-history-dialog/substance-history-dialog.component';\n\n@Component({\n selector: 'app-substance-overview',\n templateUrl: './substance-overview.component.html',\n styleUrls: ['./substance-overview.component.scss']\n})\nexport class SubstanceOverviewComponent extends SubstanceCardBase implements OnInit, AfterViewInit, OnDestroy {\n references: string[] = [];\n showDef = false;\n downloadJsonHref: any;\n defIcon = 'drop_down';\n latestVersion: number;\n canEdit: boolean;\n defAccess: Array;\n versionControl = new FormControl('', Validators.required);\n versions: string[] = [];\n isEditable = false;\n isAdmin = false;\n substanceUpdated = new Subject();\n oldUrl: string;\n baseDomain: string;\n defaultCodeSystem = 'BDNUM';\n defaultCodes: string;\n clasicBaseHref: string;\n primaryCode = \"Validated (UNII)\";\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n showlinks = false;\n\n\n constructor(\n private sanitizer: DomSanitizer,\n private utilsService: UtilsService,\n public gaService: GoogleAnalyticsService,\n private substanceService: SubstanceService,\n private router: Router,\n private authService: AuthService,\n private cvService: ControlledVocabularyService,\n private configService: ConfigService,\n public loadingService: LoadingService,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog\n ) {\n super();\n this.baseDomain = this.configService.configData.apiUrlDomain;\n this.clasicBaseHref = this.configService.environment.clasicBaseHref;\n }\n\n ngOnInit() {\n\n const rolesSubscription = this.authService.hasAnyRolesAsync('updater', 'superUpdater').subscribe(canEdit => {\n this.canEdit = canEdit;\n this.isEditable = canEdit\n && this.substance.substanceClass != null\n && (formSections[this.substance.substanceClass.toLowerCase()] != null || formSections[this.substance.substanceClass] != null);\n });\n const rolesSubscription2 = this.authService.hasAnyRolesAsync('admin').subscribe(canEdit => {\n this.isAdmin = canEdit;\n });\n this.subscriptions.push(rolesSubscription2);\n this.getSubtypeRefs(this.substance);\n const theJSON = JSON.stringify(this.substance);\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' + encodeURIComponent(theJSON));\n this.downloadJsonHref = uri;\n this.getVersion();\n this.getClassFromCv();\n this.oldUrl = this.substanceService.oldSiteRedirect('details', this.substance.uuid);\n if (this.configService.configData.defaultCodeSystem != null\n && this.configService.configData.defaultCodeSystem !== '') {\n this.defaultCodeSystem = this.configService.configData.defaultCodeSystem;\n }\n\n if (this.configService.configData.primaryCode \n && this.configService.configData.primaryCode !== '') {\n this.primaryCode = 'Validated (' + this.configService.configData.primaryCode + ')';\n }\n\n if (this.configService.configData && this.configService.configData.showOldLinks) {\n this.showlinks = true;\n }\n this.getDefAccess();\n if (this.substance.codes != null && this.substance.codes.length > 0) {\n const defaultCodes = [];\n this.substance.codes.forEach(code => {\n if (code.codeSystem === this.defaultCodeSystem) {\n defaultCodes.push(code.code);\n }\n });\n\n this.defaultCodes = defaultCodes.join(', ');\n }\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n ngAfterViewInit() {\n const subSubscription = this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n this.getVersion();\n });\n this.subscriptions.push(subSubscription);\n\n }\n\n getDefAccess() {\n if (this.substance.structurallyDiverse) {\n this.defAccess = this.substance.structurallyDiverse.access;\n } else if (this.substance.protein) {\n this.defAccess = this.substance.protein.access;\n } else if (this.substance.structure) {\n this.defAccess = this.substance.structure.access;\n } else if (this.substance.mixture) {\n this.defAccess = this.substance.mixture.access;\n } else if (this.substance.polymer) {\n this.defAccess = this.substance.polymer.access;\n } else if (this.substance.nucleicAcid) {\n this.defAccess = this.substance.nucleicAcid.access;\n } else if (this.substance.specifiedSubstance) {\n this.defAccess = this.substance.specifiedSubstance.access;\n }\n\n }\n\n getSubtypeRefs(substance: SubstanceDetail): void {\n if (substance.mixture) {\n this.references = substance.mixture.references;\n } else if (substance.protein) {\n this.references = substance.protein.references;\n } else if (substance.nucleicAcid) {\n this.references = substance.nucleicAcid.references;\n } else if (substance.polymer) {\n this.references = substance.polymer.references;\n } else if (substance.structure) {\n this.references = substance.structure.references;\n } else if (substance.structurallyDiverse) {\n this.references = substance.structurallyDiverse.references;\n } else if (substance.specifiedSubstance) {\n this.references = substance.specifiedSubstance.references;\n }\n\n }\n\n getVersion() {\n this.substanceService.checkVersion(this.substance.uuid).subscribe((result: number) => {\n this.versions = [];\n this.latestVersion = result;\n this.setVersionList();\n this.versionControl.setValue(this.substance.version);\n }, error => {\n console.log(error);\n });\n }\n\n changeVersion() {\n const version = this.versionControl.value.toString();\n this.router.navigate(['/substances/' + this.substance.uuid + '/v/' + version]);\n }\n\n setVersionList() {\n for (let i = 1; i <= this.latestVersion; i++) {\n this.versions.push(i.toString());\n }\n }\n\n toggleReferences() {\n\n const value = this.showDef ? 0 : 1;\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'references', value);\n this.showDef = !this.showDef;\n if (!this.showDef) {\n this.defIcon = 'drop_down';\n } else {\n this.defIcon = 'drop_up';\n }\n }\n\n getClassFromCv(): void {\n this.cvService.getDomainVocabulary('SUBSTANCE_CLASS').subscribe(response => {\n const classes = response['SUBSTANCE_CLASS'].list;\n classes.forEach( c => {\n if (c.value === this.substance.substanceClass) {\n this.substance.substanceClass = c.display;\n }\n });\n });\n }\n\n restoreVersion() {\n const dialogRef = this.dialog.open(SubstanceHistoryDialogComponent, {\n data: {'substance': this.substance, 'version': this.substance.version, 'latest': this.latestVersion.toString()},\n width: '650px',\n autoFocus: false,\n disableClose: true\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n\n if (response && response === 'success' ) {\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigate(['/substances/' + this.substance.uuid + '/']);\n }\n });\n\n}\n\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceOverviewComponent } from './substance-overview.component';\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\nimport {MatExpansionModule} from '@angular/material/expansion';\nimport {MatChipsModule} from '@angular/material/chips';\nimport {MatIconModule} from '@angular/material/icon';\nimport {RouterModule} from '@angular/router';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatButtonModule } from '@angular/material/button';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {SubstanceClassPipe} from '@gsrs-core/utils/substance-class.pipe';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceOverviewComponent),\n ReferencesManagerModule,\n MatExpansionModule,\n MatIconModule,\n RouterModule,\n MatFormFieldModule,\n MatTooltipModule,\n MatSelectModule,\n ReactiveFormsModule,\n MatMenuModule,\n MatButtonModule,\n SubstanceImageModule,\n MatChipsModule\n ],\n declarations: [SubstanceOverviewComponent, SubstanceClassPipe]\n})\nexport class SubstanceOverviewModule { }\n"],"sourceRoot":"webpack:///","file":"4028.765e9cc66baf04da.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4123.6444967aba6afe82.js b/frontend/src/main/resources/static/4123.dddf25fc43c2dbb6.js similarity index 93% rename from frontend/src/main/resources/static/4123.6444967aba6afe82.js rename to frontend/src/main/resources/static/4123.dddf25fc43c2dbb6.js index cb6a888..45f4809 100644 --- a/frontend/src/main/resources/static/4123.6444967aba6afe82.js +++ b/frontend/src/main/resources/static/4123.dddf25fc43c2dbb6.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4123],{44123:function(X,r,o){o.r(r),o.d(r,{SubstanceGlycosylationModule:function(){return z}});var v=o(48047),p=o(78069),g=o(36362),f=o(95106),G=o(24582),x=o(7318),I=o(2756),U=o(50253),t=o(76442),l=o(97217);function A(n,a){1&n&&(t.TgZ(0,"th",9),t._uU(1," Glycosylation Link Type "),t.qZA())}function D(n,a){if(1&n&&(t.TgZ(0,"td",10),t._uU(1),t.qZA()),2&n){var s=a.$implicit;t.xp6(1),t.hij(" ",s.type," ")}}function N(n,a){1&n&&(t.TgZ(0,"th",9),t._uU(1," Site "),t.qZA())}function O(n,a){if(1&n&&(t.TgZ(0,"td",10),t._uU(1),t.qZA()),2&n){var s=a.$implicit;t.xp6(1),t.hij(" ",s.site," ")}}function Q(n,a){1&n&&t._UZ(0,"tr",11)}function Y(n,a){1&n&&t._UZ(0,"tr",12)}function j(n,a){if(1&n&&(t.TgZ(0,"div",1),t.TgZ(1,"table"),t.TgZ(2,"td"),t._uU(3,"Glycosylation Type"),t.qZA(),t.TgZ(4,"td"),t._uU(5),t.qZA(),t.qZA(),t.TgZ(6,"table",2),t.ynx(7,3),t.YNc(8,A,2,0,"th",4),t.YNc(9,D,2,1,"td",5),t.BQk(),t.ynx(10,6),t.YNc(11,N,2,0,"th",4),t.YNc(12,O,2,1,"td",5),t.BQk(),t.YNc(13,Q,1,0,"tr",7),t.YNc(14,Y,1,0,"tr",8),t.qZA(),t.qZA()),2&n){var s=t.oxw();t.xp6(5),t.Oqu(s.glycosylation.glycosylationType),t.xp6(1),t.Q6J("dataSource",s.sites),t.xp6(7),t.Q6J("matHeaderRowDef",s.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",s.displayedColumns)}}var B=function(){var n=function(a){(0,G.Z)(i,a);var s=(0,x.Z)(i);function i(){var c;return(0,p.Z)(this,i),(c=s.call(this)).sites=[],c.displayedColumns=["glycosylationLinkType","site"],c.substanceUpdated=new U.x,c}return(0,v.Z)(i,[{key:"ngOnInit",value:function(){var e=this;this.substanceUpdated.subscribe(function(L){if(e.substance=L,e.sites=[],null!=e.substance&&null!=e.substance.protein&&e.substance.protein.glycosylation){e.glycosylation=e.substance.protein.glycosylation;var h,y=(0,f.Z)(e.glycosylation.CGlycosylationSites);try{for(y.s();!(h=y.n()).done;){var Z=h.value;e.sites.push({type:"C",site:Z.subunitIndex+"_"+Z.residueIndex})}}catch(u){y.e(u)}finally{y.f()}var C,d=(0,f.Z)(e.glycosylation.NGlycosylationSites);try{for(d.s();!(C=d.n()).done;){var S=C.value;e.sites.push({type:"N",site:S.subunitIndex+"_"+S.residueIndex})}}catch(u){d.e(u)}finally{d.f()}var b,m=(0,f.Z)(e.glycosylation.OGlycosylationSites);try{for(m.s();!(b=m.n()).done;){var T=b.value;e.sites.push({type:"O",site:T.subunitIndex+"_"+T.residueIndex})}}catch(u){m.e(u)}finally{m.f()}e.countUpdate.emit(e.sites.length)}})}},{key:"getFullSite",value:function(e){return e.subunitIndex+"_"+e.residueIndex}}]),i}(I.B);return n.\u0275fac=function(s){return new(s||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-glycosylation"]],features:[t.qOj],decls:1,vars:1,consts:[["class","responsive",4,"ngIf"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","glycosylationLinkType"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","site"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(s,i){1&s&&t.YNc(0,j,15,4,"div",0),2&s&&t.Q6J("ngIf",i.glycosylation)},directives:[g.O5,l.BZ,l.w1,l.fO,l.ge,l.Dz,l.ev,l.as,l.XQ,l.nj,l.Gk],styles:[""]}),n}(),F=o(64061),H=o(98002),J=o(43365),M=o(26439),R=o(33865),z=function(){var n=(0,v.Z)(function a(){(0,p.Z)(this,a)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[g.ez,F.o.forChild(B),H.Bz,l.p0,R.HT,M.TU,J.c]]}),n}()}}]); -//# sourceMappingURL=4123.6444967aba6afe82.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4123],{44123:function(X,r,o){o.r(r),o.d(r,{SubstanceGlycosylationModule:function(){return z}});var v=o(1884),p=o(39117),g=o(36362),f=o(44014),G=o(46751),x=o(56101),I=o(2756),U=o(50253),t=o(86613),l=o(97217);function A(n,a){1&n&&(t.TgZ(0,"th",9),t._uU(1," Glycosylation Link Type "),t.qZA())}function D(n,a){if(1&n&&(t.TgZ(0,"td",10),t._uU(1),t.qZA()),2&n){var s=a.$implicit;t.xp6(1),t.hij(" ",s.type," ")}}function N(n,a){1&n&&(t.TgZ(0,"th",9),t._uU(1," Site "),t.qZA())}function O(n,a){if(1&n&&(t.TgZ(0,"td",10),t._uU(1),t.qZA()),2&n){var s=a.$implicit;t.xp6(1),t.hij(" ",s.site," ")}}function Q(n,a){1&n&&t._UZ(0,"tr",11)}function Y(n,a){1&n&&t._UZ(0,"tr",12)}function j(n,a){if(1&n&&(t.TgZ(0,"div",1),t.TgZ(1,"table"),t.TgZ(2,"td"),t._uU(3,"Glycosylation Type"),t.qZA(),t.TgZ(4,"td"),t._uU(5),t.qZA(),t.qZA(),t.TgZ(6,"table",2),t.ynx(7,3),t.YNc(8,A,2,0,"th",4),t.YNc(9,D,2,1,"td",5),t.BQk(),t.ynx(10,6),t.YNc(11,N,2,0,"th",4),t.YNc(12,O,2,1,"td",5),t.BQk(),t.YNc(13,Q,1,0,"tr",7),t.YNc(14,Y,1,0,"tr",8),t.qZA(),t.qZA()),2&n){var s=t.oxw();t.xp6(5),t.Oqu(s.glycosylation.glycosylationType),t.xp6(1),t.Q6J("dataSource",s.sites),t.xp6(7),t.Q6J("matHeaderRowDef",s.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",s.displayedColumns)}}var B=function(){var n=function(a){(0,G.Z)(i,a);var s=(0,x.Z)(i);function i(){var c;return(0,p.Z)(this,i),(c=s.call(this)).sites=[],c.displayedColumns=["glycosylationLinkType","site"],c.substanceUpdated=new U.x,c}return(0,v.Z)(i,[{key:"ngOnInit",value:function(){var e=this;this.substanceUpdated.subscribe(function(L){if(e.substance=L,e.sites=[],null!=e.substance&&null!=e.substance.protein&&e.substance.protein.glycosylation){e.glycosylation=e.substance.protein.glycosylation;var h,y=(0,f.Z)(e.glycosylation.CGlycosylationSites);try{for(y.s();!(h=y.n()).done;){var Z=h.value;e.sites.push({type:"C",site:Z.subunitIndex+"_"+Z.residueIndex})}}catch(u){y.e(u)}finally{y.f()}var C,d=(0,f.Z)(e.glycosylation.NGlycosylationSites);try{for(d.s();!(C=d.n()).done;){var S=C.value;e.sites.push({type:"N",site:S.subunitIndex+"_"+S.residueIndex})}}catch(u){d.e(u)}finally{d.f()}var b,m=(0,f.Z)(e.glycosylation.OGlycosylationSites);try{for(m.s();!(b=m.n()).done;){var T=b.value;e.sites.push({type:"O",site:T.subunitIndex+"_"+T.residueIndex})}}catch(u){m.e(u)}finally{m.f()}e.countUpdate.emit(e.sites.length)}})}},{key:"getFullSite",value:function(e){return e.subunitIndex+"_"+e.residueIndex}}]),i}(I.B);return n.\u0275fac=function(s){return new(s||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-glycosylation"]],features:[t.qOj],decls:1,vars:1,consts:[["class","responsive",4,"ngIf"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","glycosylationLinkType"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","site"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(s,i){1&s&&t.YNc(0,j,15,4,"div",0),2&s&&t.Q6J("ngIf",i.glycosylation)},directives:[g.O5,l.BZ,l.w1,l.fO,l.ge,l.Dz,l.ev,l.as,l.XQ,l.nj,l.Gk],styles:[""]}),n}(),F=o(64061),H=o(98002),J=o(43365),M=o(26439),R=o(33865),z=function(){var n=(0,v.Z)(function a(){(0,p.Z)(this,a)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[g.ez,F.o.forChild(B),H.Bz,l.p0,R.HT,M.TU,J.c]]}),n}()}}]); +//# sourceMappingURL=4123.dddf25fc43c2dbb6.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4123.6444967aba6afe82.js.map b/frontend/src/main/resources/static/4123.dddf25fc43c2dbb6.js.map similarity index 99% rename from frontend/src/main/resources/static/4123.6444967aba6afe82.js.map rename to frontend/src/main/resources/static/4123.dddf25fc43c2dbb6.js.map index 1c26338..a50571d 100644 --- a/frontend/src/main/resources/static/4123.6444967aba6afe82.js.map +++ b/frontend/src/main/resources/static/4123.dddf25fc43c2dbb6.js.map @@ -1 +1 @@ -{"version":3,"mappings":"yTAUMA,gBAAuCA,qCAAwBA,kCAC/DA,iBAAqCA,SAAcA,gCAAdA,sDAIrCA,gBAAuCA,kBAAKA,kCAC5CA,iBAAqCA,SAAcA,gCAAdA,qDAGvCA,sCACAA,0CApBJA,iBAEEA,iBACEA,cAAIA,8BAAkBA,QACtBA,cAAIA,SAAmCA,QACzCA,QAEAA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,uBACAA,uBACFA,QAEFA,4BAnBQA,kDAGYA,qCAYIA,qDACaA,uDCV9B,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CACEC,gBAJFC,MAAa,GACbD,mBAAmB,CAAC,wBAAyB,QAC7CA,mBAAmB,IAAIE,IACvBF,EALF,uCASE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAG9B,GAFAC,EAAKC,UAAYA,EACjBD,EAAKL,MAAQ,GACS,MAAlBK,EAAKC,WACsB,MAA1BD,EAAKC,UAAUC,SACfF,EAAKC,UAAUC,QAAQC,cAAe,CACzCH,EAAKG,cAAgBH,EAAKC,UAAUC,QAAQC,cADH,gBAEtBH,EAAKG,cAAcC,qBAFG,IAEzC,2BAA2D,KAAhDC,EAAgDC,QACzDN,EAAKL,MAAMY,KAAK,CAACC,KAAM,IAAKC,KAAMJ,EAAKK,aAAe,IAAML,EAAKM,sBAH1BC,wCAKtBZ,EAAKG,cAAcU,qBALG,IAKzC,2BAA2D,KAAhDR,EAAgDS,QACzDd,EAAKL,MAAMY,KAAK,CAACC,KAAM,IAAKC,KAAMJ,EAAKK,aAAe,IAAML,EAAKM,sBAN1BC,wCAQtBZ,EAAKG,cAAcY,qBARG,IAQzC,2BAA2D,KAAhDV,EAAgDW,QACzDhB,EAAKL,MAAMY,KAAK,CAACC,KAAM,IAAKC,KAAMJ,EAAKK,aAAe,IAAML,EAAKM,sBAT1BC,wBAWzCZ,EAAKiB,YAAYC,KAAKlB,EAAKL,MAAMwB,aA1BzC,yBA+BE,SAAYV,GACV,OAAOA,EAAKC,aAAe,IAAMD,EAAKE,iBAhC1CS,GAAqDC,kDAAxC5B,8BAA+B6B,ofDV5C9B,6BAAyBA,iHCUZC,EAAb,0DCYa8B,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsCjC,GACtCkC,KACAC,KACAC,KACAC,KACAC,QAISR,EAAb","names":["i0","SubstanceGlycosylationComponent","c","sites","Subject","this","substanceUpdated","subscribe","e","substance","protein","glycosylation","CGlycosylationSites","link","h","push","type","site","subunitIndex","residueIndex","u","NGlycosylationSites","C","OGlycosylationSites","b","countUpdate","emit","length","i","SubstanceCardBase","selectors","SubstanceGlycosylationModule","v","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-glycosylation/substance-glycosylation.component.html","./src/app/core/substance-details/substance-glycosylation/substance-glycosylation.component.ts","./src/app/core/substance-details/substance-glycosylation/substance-glycosylation.module.ts"],"sourcesContent":["
\r\n\r\n \r\n \r\n \r\n
Glycosylation Type{{glycosylation.glycosylationType}}
\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Glycosylation Link Type {{site.type}} Site {{site.site}}
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Glycosylation, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-glycosylation',\r\n templateUrl: './substance-glycosylation.component.html',\r\n styleUrls: ['./substance-glycosylation.component.scss']\r\n})\r\nexport class SubstanceGlycosylationComponent extends SubstanceCardBase implements OnInit {\r\n glycosylation: Glycosylation;\r\n sites: any = [];\r\n displayedColumns = ['glycosylationLinkType', 'site'];\r\n substanceUpdated = new Subject();\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.sites = [];\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.glycosylation) {\r\n this.glycosylation = this.substance.protein.glycosylation;\r\n for (const link of this.glycosylation.CGlycosylationSites) {\r\n this.sites.push({type: 'C', site: link.subunitIndex + '_' + link.residueIndex});\r\n }\r\n for (const link of this.glycosylation.NGlycosylationSites) {\r\n this.sites.push({type: 'N', site: link.subunitIndex + '_' + link.residueIndex});\r\n }\r\n for (const link of this.glycosylation.OGlycosylationSites) {\r\n this.sites.push({type: 'O', site: link.subunitIndex + '_' + link.residueIndex});\r\n }\r\n this.countUpdate.emit(this.sites.length);\r\n }\r\n });\r\n }\r\n\r\n getFullSite(site: Site ): string {\r\n return site.subunitIndex + '_' + site.residueIndex;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceGlycosylationComponent } from './substance-glycosylation.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceGlycosylationComponent),\r\n RouterModule,\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceGlycosylationComponent]\r\n})\r\nexport class SubstanceGlycosylationModule { }\r\n"],"sourceRoot":"webpack:///","file":"4123.6444967aba6afe82.js"} \ No newline at end of file +{"version":3,"mappings":"yTAUMA,gBAAuCA,qCAAwBA,kCAC/DA,iBAAqCA,SAAcA,gCAAdA,sDAIrCA,gBAAuCA,kBAAKA,kCAC5CA,iBAAqCA,SAAcA,gCAAdA,qDAGvCA,sCACAA,0CApBJA,iBAEEA,iBACEA,cAAIA,8BAAkBA,QACtBA,cAAIA,SAAmCA,QACzCA,QAEAA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,uBACAA,uBACFA,QAEFA,4BAnBQA,kDAGYA,qCAYIA,qDACaA,uDCV9B,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CACEC,gBAJFC,MAAa,GACbD,mBAAmB,CAAC,wBAAyB,QAC7CA,mBAAmB,IAAIE,IACvBF,EALF,uCASE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAG9B,GAFAC,EAAKC,UAAYA,EACjBD,EAAKL,MAAQ,GACS,MAAlBK,EAAKC,WACsB,MAA1BD,EAAKC,UAAUC,SACfF,EAAKC,UAAUC,QAAQC,cAAe,CACzCH,EAAKG,cAAgBH,EAAKC,UAAUC,QAAQC,cADH,gBAEtBH,EAAKG,cAAcC,qBAFG,IAEzC,2BAA2D,KAAhDC,EAAgDC,QACzDN,EAAKL,MAAMY,KAAK,CAACC,KAAM,IAAKC,KAAMJ,EAAKK,aAAe,IAAML,EAAKM,sBAH1BC,wCAKtBZ,EAAKG,cAAcU,qBALG,IAKzC,2BAA2D,KAAhDR,EAAgDS,QACzDd,EAAKL,MAAMY,KAAK,CAACC,KAAM,IAAKC,KAAMJ,EAAKK,aAAe,IAAML,EAAKM,sBAN1BC,wCAQtBZ,EAAKG,cAAcY,qBARG,IAQzC,2BAA2D,KAAhDV,EAAgDW,QACzDhB,EAAKL,MAAMY,KAAK,CAACC,KAAM,IAAKC,KAAMJ,EAAKK,aAAe,IAAML,EAAKM,sBAT1BC,wBAWzCZ,EAAKiB,YAAYC,KAAKlB,EAAKL,MAAMwB,aA1BzC,yBA+BE,SAAYV,GACV,OAAOA,EAAKC,aAAe,IAAMD,EAAKE,iBAhC1CS,GAAqDC,kDAAxC5B,8BAA+B6B,ofDV5C9B,6BAAyBA,iHCUZC,EAAb,0DCYa8B,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsCjC,GACtCkC,KACAC,KACAC,KACAC,KACAC,QAISR,EAAb","names":["i0","SubstanceGlycosylationComponent","c","sites","Subject","this","substanceUpdated","subscribe","e","substance","protein","glycosylation","CGlycosylationSites","link","h","push","type","site","subunitIndex","residueIndex","u","NGlycosylationSites","C","OGlycosylationSites","b","countUpdate","emit","length","i","SubstanceCardBase","selectors","SubstanceGlycosylationModule","v","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-glycosylation/substance-glycosylation.component.html","./src/app/core/substance-details/substance-glycosylation/substance-glycosylation.component.ts","./src/app/core/substance-details/substance-glycosylation/substance-glycosylation.module.ts"],"sourcesContent":["
\r\n\r\n \r\n \r\n \r\n
Glycosylation Type{{glycosylation.glycosylationType}}
\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Glycosylation Link Type {{site.type}} Site {{site.site}}
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Glycosylation, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-glycosylation',\r\n templateUrl: './substance-glycosylation.component.html',\r\n styleUrls: ['./substance-glycosylation.component.scss']\r\n})\r\nexport class SubstanceGlycosylationComponent extends SubstanceCardBase implements OnInit {\r\n glycosylation: Glycosylation;\r\n sites: any = [];\r\n displayedColumns = ['glycosylationLinkType', 'site'];\r\n substanceUpdated = new Subject();\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.sites = [];\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.glycosylation) {\r\n this.glycosylation = this.substance.protein.glycosylation;\r\n for (const link of this.glycosylation.CGlycosylationSites) {\r\n this.sites.push({type: 'C', site: link.subunitIndex + '_' + link.residueIndex});\r\n }\r\n for (const link of this.glycosylation.NGlycosylationSites) {\r\n this.sites.push({type: 'N', site: link.subunitIndex + '_' + link.residueIndex});\r\n }\r\n for (const link of this.glycosylation.OGlycosylationSites) {\r\n this.sites.push({type: 'O', site: link.subunitIndex + '_' + link.residueIndex});\r\n }\r\n this.countUpdate.emit(this.sites.length);\r\n }\r\n });\r\n }\r\n\r\n getFullSite(site: Site ): string {\r\n return site.subunitIndex + '_' + site.residueIndex;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceGlycosylationComponent } from './substance-glycosylation.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceGlycosylationComponent),\r\n RouterModule,\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceGlycosylationComponent]\r\n})\r\nexport class SubstanceGlycosylationModule { }\r\n"],"sourceRoot":"webpack:///","file":"4123.dddf25fc43c2dbb6.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4243.13a624ed9702ee4f.js b/frontend/src/main/resources/static/4243.13a624ed9702ee4f.js new file mode 100644 index 0000000..605c31a --- /dev/null +++ b/frontend/src/main/resources/static/4243.13a624ed9702ee4f.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4243],{14243:function(ct,M,r){r.r(M),r.d(M,{SubstanceFormStructuralModificationsModule:function(){return rt}});var m=r(1884),p=r(39117),u=r(36362),_=r(64061),y=r(7168),C=r(19975),f=r(65590),g=r(87317),x=r(94673),v=r(44770),l=r(90587),S=r(26439),h=r(43365),Z=r(46751),b=r(56101),A=r(79550),O=(r(27299),r(40104)),F=r(5118),t=r(86613),P=r(78444),I=r(51279),U=r(18291),J=r(63169),N=r(39401),D=r(33567),E=r(27164),k=r(95758),w=r(54244),Q=r(24459),Y=r(16667),T=r(91434),R=r(1130),j=r(15992),L=r(84577),V=r(14900);function q(n,d){if(1&n){var o=t.EpF();t.TgZ(0,"div",28),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",29),t.NdJ("click",function(){return t.CHM(o),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",30),t.qZA(),t.qZA()}}function H(n,d){if(1&n){var o=t.EpF();t.TgZ(0,"div",31),t.TgZ(1,"div",32),t._uU(2,"Sites"),t.qZA(),t._uU(3),t.TgZ(4,"button",29),t.NdJ("click",function(){return t.CHM(o),t.oxw().openDialog()}),t._UZ(5,"mat-icon",25),t.qZA(),t.qZA()}if(2&n){var e=t.oxw();t.xp6(3),t.hij(" ",e.siteDisplay," ")}}function z(n,d){if(1&n){var o=t.EpF();t.TgZ(0,"mat-form-field",18),t.TgZ(1,"input",33),t.NdJ("ngModelChange",function(i){return t.CHM(o),t.oxw().mod.residueModified=i}),t.qZA(),t.qZA()}if(2&n){var e=t.oxw();t.xp6(1),t.Q6J("ngModel",e.mod.residueModified)}}function $(n,d){1&n&&(t.TgZ(0,"mat-option",41),t.TgZ(1,"span",42),t._uU(2,"Clear selection"),t.qZA(),t.qZA()),2&n&&t.Q6J("value",null)}function X(n,d){if(1&n&&(t.TgZ(0,"mat-option",41),t._uU(1),t.qZA()),2&n){var o=d.$implicit;t.Q6J("value",o.value),t.xp6(1),t.hij(" ",o.display," ")}}function G(n,d){if(1&n&&(t.TgZ(0,"mat-option",41),t._uU(1),t.qZA()),2&n){var o=t.oxw(2);t.s9C("value",o.mod.residueModified),t.xp6(1),t.hij("",o.mod.residueModified," (not in CV)")}}function W(n,d){if(1&n){var o=t.EpF();t.TgZ(0,"div",43),t.TgZ(1,"input",44),t.NdJ("focusout",function(a){return t.CHM(o),t.oxw(2).updateOrigin(a.target)}),t.qZA(),t.qZA()}}function B(n,d){if(1&n){var o=t.EpF();t.TgZ(0,"div",18),t.TgZ(1,"div",34),t.TgZ(2,"mat-form-field",35),t.TgZ(3,"mat-label"),t._uU(4,"Residue Modified"),t.qZA(),t.TgZ(5,"mat-select",36),t.NdJ("ngModelChange",function(i){return t.CHM(o),t.oxw().mod.residueModified=i})("ngModelChange",function(i){return t.CHM(o),t.oxw().updateResidue(i)}),t.YNc(6,$,3,1,"mat-option",37),t.YNc(7,X,2,2,"mat-option",38),t.YNc(8,G,2,2,"mat-option",37),t.TgZ(9,"mat-option",39),t._uU(10,"Other (New Value)"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.YNc(11,W,2,0,"div",40),t.qZA()}if(2&n){var e=t.oxw();t.xp6(2),t.Q6J("ngClass","other"===e.privateMod?"risen":""),t.xp6(3),t.Q6J("ngModel",e.mod.residueModified)("disabled",e.disable),t.xp6(1),t.Q6J("ngIf",e.mod.residueModified),t.xp6(1),t.Q6J("ngForOf",e.nucleicAcidOptions),t.xp6(1),t.Q6J("ngIf",e.mod.residueModified&&!e.inCV(e.nucleicAcidOptions,e.mod.residueModified)&&""!==e.mod.residueModified),t.xp6(3),t.Q6J("ngIf","other"===e.mod.residueModified)}}function K(n,d){if(1&n){var o=t.EpF();t.TgZ(0,"div",45),t.TgZ(1,"app-tag-selector",46),t.NdJ("tagsUpdate",function(i){return t.CHM(o),t.oxw().update(i)}),t.qZA(),t.qZA()}if(2&n){var e=t.oxw();t.xp6(1),t.Q6J("tags",e.pipeToArray(e.mod.residueModified))}}function tt(n,d){if(1&n&&(t.TgZ(0,"div",47),t._uU(1),t.qZA()),2&n){var o=t.oxw();t.xp6(1),t.hij(" ",o.displayAmount(o.mod.extentAmount)," ")}}var et=function(){var n=function(){function d(o,e,a,i,c){(0,p.Z)(this,d),this.cvService=o,this.dialog=e,this.utilsService=a,this.overlayContainerService=i,this.substanceFormService=c,this.modDeleted=new t.vpe,this.modExtentList=[],this.modLocationList=[],this.modTypeList=[],this.subscriptions=[],this.nucleicAcidOptions=[{value:"U",display:"U"},{value:"T",display:"T"},{value:"C",display:"C"},{value:"G",display:"G"},{value:"A",display:"A"}]}return(0,m.Z)(d,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay(),this.getSubstanceType()}},{key:"ngAfterViewInit",value:function(){}},{key:"mod",get:function(){return this.privateMod},set:function(e){this.privateMod=e,this.relatedSubstanceUuid=this.privateMod.molecularFragment&&this.privateMod.molecularFragment.refuuid||""}},{key:"updateResidue",value:function(e){this.privateMod.residueModified=e}},{key:"updateOrigin",value:function(e){e&&""!==e.value&&(this.privateMod.residueModified=e.value)}},{key:"update",value:function(e){this.privateMod.residueModified=e.join(";")}},{key:"getSubstanceType",value:function(){var e=this;this.substanceFormService.definition.subscribe(function(i){e.substanceType=i.substanceClass}).unsubscribe()}},{key:"getVocabularies",value:function(){var e=this;this.cvService.getDomainVocabulary("STRUCTURAL_MODIFICATION_TYPE","LOCATION_TYPE","EXTENT_TYPE").subscribe(function(a){e.modTypeList=a.STRUCTURAL_MODIFICATION_TYPE.list,e.modLocationList=a.LOCATION_TYPE.list,e.modExtentList=a.EXTENT_TYPE.list})}},{key:"deleteMod",value:function(){var e=this;this.privateMod.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){e.modDeleted.emit(e.privateMod)},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMod.$$deletedCode}},{key:"updateAccess",value:function(e){this.mod.access=e}},{key:"relatedSubstanceUpdated",value:function(e){null!==e?(this.mod.molecularFragment={refPname:e._name,name:e._name,refuuid:e.uuid,substanceClass:"reference",approvalID:e.approvalID},this.relatedSubstanceUuid=this.mod.molecularFragment.refuuid):(this.mod.molecularFragment={},this.relatedSubstanceUuid="")}},{key:"openDialog",value:function(){var e=this,a=this.dialog.open(N.r,{data:{card:"other",link:this.mod.sites},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var i=a.afterClosed().subscribe(function(c){e.overlayContainer.style.zIndex=null,e.mod.sites=c,e.updateDisplay(),e.substanceFormService.emitStructuralModificationsUpdate()});this.subscriptions.push(i)}},{key:"openAmountDialog",value:function(){var e=this;this.mod.extentAmount||(this.mod.extentAmount={});var a=this.dialog.open(E.O,{data:{subsAmount:this.mod.extentAmount},width:"1040px"});this.overlayContainer.style.zIndex="1002";var i=a.afterClosed().subscribe(function(c){e.overlayContainer.style.zIndex=null,e.mod.extentAmount=c});this.subscriptions.push(i)}},{key:"updateDisplay",value:function(){this.siteDisplay=this.substanceFormService.siteString(this.mod.sites)}},{key:"displayAmount",value:function(e){return this.utilsService.displayAmount(e)}},{key:"formatValue",value:function(e){return e?"object"==typeof e?e.display?e.display:e.value?e.value:null:e:null}},{key:"pipeToArray",value:function(e){return e&&""!==e?e.split(";"):[]}},{key:"inCV",value:function(e,a){return!e||e.some(function(i){return a===i.value})}}]),d}();return n.\u0275fac=function(o){return new(o||n)(t.Y36(U.I),t.Y36(k.uw),t.Y36(J.FW),t.Y36(w.Xj),t.Y36(D.B))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-structural-modification-form"]],inputs:{mod:"mod"},outputs:{modDeleted:"modDeleted"},decls:34,vars:13,consts:[[1,"code-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],[1,"related-holder"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Molecular Fragment","header","Molecular Fragment",3,"subuuid","selectionUpdated"],[1,"flex-column","form-content"],[1,"form-row"],["key","Structural Modification Structural Modification Type","title","Modification Type",3,"model","valueChange"],["class","sites",4,"ngIf"],[1,"residues"],["class","group",4,"ngIf"],["class","multi",4,"ngIf"],["domain","EXTENT_TYPE","title","Extent",3,"model","valueChange"],["domain","LOCATION_TYPE","title","Location",3,"model","valueChange"],[1,"group-access"],[1,"group"],["matInput","","placeholder","Group","required","","name","group",3,"ngModel","ngModelChange"],[1,"access"],[3,"access","accessOut"],[1,"amount"],[1,"label","padded"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","edit"],["class","amount-display",4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"sites"],[1,"label"],["matInput","","placeholder","Residue Modified","name","Residue Modified",3,"ngModel","ngModelChange"],[1,"flex-row"],[1,"cv-field",3,"ngClass"],["name","residueModified",3,"ngModel","disabled","ngModelChange"],[3,"value",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],["value","other"],["class","custom",4,"ngIf"],[3,"value"],[1,"deselect"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"],[1,"multi"],["placeholder","Residue Modified","disableCV","true","cvDomain","AMINO_ACID_RESIDUE",1,"tags",3,"tags","tagsUpdate"],[1,"amount-display"]],template:function(o,e){1&o&&(t.TgZ(0,"div",0),t.YNc(1,q,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"button",3),t.NdJ("click",function(){return e.deleteMod()}),t._UZ(4,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(5,"div",5),t.TgZ(6,"div",6),t.TgZ(7,"app-substance-selector",7),t.NdJ("selectionUpdated",function(i){return e.relatedSubstanceUpdated(i)}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.TgZ(10,"app-cv-input",10),t.NdJ("valueChange",function(i){return e.mod.structuralModificationType=i}),t.qZA(),t.YNc(11,H,6,1,"div",11),t.TgZ(12,"div",12),t.YNc(13,z,2,1,"mat-form-field",13),t.YNc(14,B,12,7,"div",13),t.YNc(15,K,2,1,"div",14),t.qZA(),t.qZA(),t.TgZ(16,"div",9),t.TgZ(17,"app-cv-input",15),t.NdJ("valueChange",function(i){return e.mod.extent=i}),t.qZA(),t.TgZ(18,"app-cv-input",16),t.NdJ("valueChange",function(i){return e.mod.locationType=i}),t.qZA(),t.TgZ(19,"div",17),t.TgZ(20,"div",9),t.TgZ(21,"mat-form-field",18),t.TgZ(22,"input",19),t.NdJ("ngModelChange",function(i){return e.mod.modificationGroup=i}),t.qZA(),t.qZA(),t.TgZ(23,"div",20),t.TgZ(24,"app-access-manager",21),t.NdJ("accessOut",function(i){return e.updateAccess(i)}),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(25,"div",9),t.TgZ(26,"div",22),t.TgZ(27,"div",23),t._uU(28," Amount "),t.qZA(),t.TgZ(29,"button",24),t.NdJ("click",function(){return e.openAmountDialog()}),t._UZ(30,"mat-icon",25),t.qZA(),t.YNc(31,tt,2,1,"div",26),t.qZA(),t.qZA(),t.TgZ(32,"div",9),t._UZ(33,"app-audit-info",27),t.qZA(),t.qZA(),t.qZA()),2&o&&(t.xp6(1),t.Q6J("ngIf",e.mod.$$deletedCode),t.xp6(6),t.Q6J("subuuid",e.relatedSubstanceUuid),t.xp6(3),t.Q6J("model",e.mod.structuralModificationType),t.xp6(1),t.Q6J("ngIf","RESIDUE_SPECIFIC"!==e.mod.locationType),t.xp6(2),t.Q6J("ngIf","nucleicAcid"!==e.substanceType&&"protein"!==e.substanceType),t.xp6(1),t.Q6J("ngIf","nucleicAcid"===e.substanceType),t.xp6(1),t.Q6J("ngIf","protein"===e.substanceType),t.xp6(2),t.Q6J("model",e.mod.extent),t.xp6(1),t.Q6J("model",e.mod.locationType),t.xp6(4),t.Q6J("ngModel",e.mod.modificationGroup),t.xp6(2),t.Q6J("access",e.mod.access),t.xp6(7),t.Q6J("ngIf",e.mod.extentAmount),t.xp6(2),t.Q6J("source",e.mod))},directives:[u.O5,g.lW,f.Hw,Q.Q,Y.S,v.KE,h.Nt,l.Fj,l.JJ,l.On,u.mk,v.hX,T.gD,R.ey,u.sg,j.C,l.Q7,L.h,V.n],styles:[".code-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:25%;width:25%} .related-substance img{max-width:125px!important;margin:auto}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .location-type[_ngcontent-%COMP%] .extent[_ngcontent-%COMP%] .sites[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .comment[_ngcontent-%COMP%]{width:45%;padding-right:15px;-ms-flex-positive:1;flex-grow:1}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}.custom[_ngcontent-%COMP%]{width:100%}.residues[_ngcontent-%COMP%]{width:60%}.custom[_ngcontent-%COMP%]{padding-bottom:10px;padding-top:10px;border-bottom:1px solid var(--box-shadow-color-6)}"]}),n}();function ot(n,d){1&n&&t._UZ(0,"mat-divider",8),2&n&&t.Q6J("inset",!0)}function nt(n,d){if(1&n){var o=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-structural-modification-form",6),t.NdJ("modDeleted",function(s){return t.CHM(o),t.oxw().deleteStructuralModification(s)}),t.qZA(),t.YNc(2,ot,1,1,"mat-divider",7),t.qZA()}if(2&n){var e=d.$implicit,a=d.last;t.Q6J("id","substance-structural-modification-"+d.index),t.xp6(1),t.Q6J("mod",e),t.xp6(1),t.Q6J("ngIf",!a)}}var it=function(){var n=function(d){(0,Z.Z)(e,d);var o=(0,b.Z)(e);function e(a,i,c){var s;return(0,p.Z)(this,e),(s=o.call(this,c)).substanceFormStructuralModificationsService=a,s.scrollToService=i,s.gaService=c,s.subscriptions=[],s.analyticsEventCategory="substance form structural modifications",s}return(0,m.Z)(e,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Structural Modifications")}},{key:"ngAfterViewInit",value:function(){var i=this,c=this.substanceFormStructuralModificationsService.substanceStructuralModifications.subscribe(function(s){i.modifications=s});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"addItem",value:function(){this.addStructuralModification()}},{key:"addStructuralModification",value:function(){var i=this;this.substanceFormStructuralModificationsService.addSubstanceStructuralModification(),setTimeout(function(){i.scrollToService.scrollToElement("substance-structural-modification-0","center")})}},{key:"deleteStructuralModification",value:function(i){this.substanceFormStructuralModificationsService.deleteSubstanceStructuralModification(i)}}]),e}(A.u);return n.\u0275fac=function(o){return new(o||n)(t.Y36(F.T),t.Y36(P.i),t.Y36(O.$))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-form-structural-modifications-card"]],features:[t.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"mod","modDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(o,e){1&o&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,nt,3,3,"div",2),t.TgZ(3,"div",0),t._UZ(4,"span",1),t.TgZ(5,"button",3),t.NdJ("click",function(){return e.addStructuralModification()}),t._uU(6," Add Modification "),t._UZ(7,"mat-icon",4),t.qZA(),t.qZA()),2&o&&(t.xp6(2),t.Q6J("ngForOf",e.modifications))},directives:[u.sg,I.P,et,u.O5,C.d,g.lW,f.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--box-shadow-color-3)}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),n}(),at=r(63200),rt=function(){var n=(0,m.Z)(function d(){(0,p.Z)(this,d)});return n.\u0275fac=function(o){return new(o||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[u.ez,_.o.forChild(it),y.O,C.t,f.Ps,g.ot,x.w,v.lN,l.UX,l.u5,S.TU,T.LD,h.c,at.U]]}),n}()}}]); +//# sourceMappingURL=4243.13a624ed9702ee4f.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4243.7f434b0e225f38ea.js.map b/frontend/src/main/resources/static/4243.13a624ed9702ee4f.js.map similarity index 98% rename from frontend/src/main/resources/static/4243.7f434b0e225f38ea.js.map rename to frontend/src/main/resources/static/4243.13a624ed9702ee4f.js.map index 52da287..28f10e2 100644 --- a/frontend/src/main/resources/static/4243.7f434b0e225f38ea.js.map +++ b/frontend/src/main/resources/static/4243.13a624ed9702ee4f.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r6","ctx_r8","ctx_r17","ctx_r21","ctx_r22","StructuralModificationFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","value","display","getVocabularies","overlayContainer","getContainerElement","updateDisplay","getSubstanceType","privateMod","set","mod","relatedSubstanceUuid","molecularFragment","refuuid","event","residueModified","tags","join","definition","subscribe","e","substanceType","substanceClass","unsubscribe","getDomainVocabulary","modTypeList","response","STRUCTURAL_MODIFICATION_TYPE","list","modLocationList","LOCATION_TYPE","modExtentList","EXTENT_TYPE","$$deletedCode","newUUID","deleteTimer","setTimeout","modDeleted","emit","clearTimeout","access","substance","refPname","_name","name","uuid","approvalID","dialogRef","open","SubunitSelectorDialogComponent","data","card","link","sites","width","panelClass","style","zIndex","dialogSubscription","afterClosed","newLinks","emitStructuralModificationsUpdate","subscriptions","push","extentAmount","AmountFormDialogComponent","subsAmount","newAmount","siteDisplay","siteString","amt","displayAmount","v","string","split","vocab","property","some","r","d","selectors","ctx","ctx_r5","SubstanceFormStructuralModificationsCardComponent","substanceFormStructuralModificationsService","scrollToService","gaService","u","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","structuralSubscription","substanceStructuralModifications","i","modifications","componentDestroyed","forEach","subscription","addStructuralModification","addSubstanceStructuralModification","scrollToElement","modification","deleteSubstanceStructuralModification","SubstanceCardBaseFilteredList","SubstanceFormStructuralModificationsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatSelectModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/structural-modifications/structural-modification-form.component.html","./src/app/core/substance-form/structural-modifications/structural-modification-form.component.ts","./src/app/core/substance-form/structural-modifications/substance-form-structural-modifications-card.component.html","./src/app/core/substance-form/structural-modifications/substance-form-structural-modifications-card.component.ts","./src/app/core/substance-form/structural-modifications/substance-form-structural-modifications.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n
\n \n \n
\n
\n
\n\n
\n \n
\n
Sites
\n {{siteDisplay}}\n \n
\n
\n \n \n \n
\n
\n \n Residue Modified\n \n Clear selection\n \n {{term.display}}\n \n {{mod.residueModified}} (not in CV)\n Other (New Value)\n \n \n
\n
\n \n
\n
\n
\n \n
\n
\n
\n\n
\n \n \n
\n
\n \n \n \n
\n \n \n
\n
\n
\n\n
\n\n\n
\n
\n
\n Amount\n
\n \n
\n {{displayAmount(mod.extentAmount)}}\n
\n\n
\n\n
\n
\n \n
\n
\n\n
\n\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {StructuralModification, SubstanceCode, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\n\n@Component({\n selector: 'app-structural-modification-form',\n templateUrl: './structural-modification-form.component.html',\n styleUrls: ['./structural-modification-form.component.scss']\n})\nexport class StructuralModificationFormComponent implements OnInit, AfterViewInit {\n private privateMod: StructuralModification;\n @Output() modDeleted = new EventEmitter();\n modExtentList: Array = [];\n modLocationList: Array = [];\n modTypeList: Array = [];\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n substanceType: string;\n nucleicAcidOptions: any = [\n {value:'U', display:'U'},\n {value:'T', display:'T'},\n {value:'C', display:'C'},\n {value:'G', display:'G'},\n {value:'A', display:'A'}\n ];\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.updateDisplay();\n this.getSubstanceType();\n }\n\n ngAfterViewInit(): void {\n\n }\n\n @Input()\n set mod(mod: StructuralModification) {\n this.privateMod = mod;\n this.relatedSubstanceUuid = this.privateMod.molecularFragment && this.privateMod.molecularFragment.refuuid || '';\n }\n\n get mod(): StructuralModification {\n return this.privateMod;\n }\n\n updateResidue(event) {\n this.privateMod.residueModified = event;\n }\n\n updateOrigin(event): void {\n if (event && event.value !== '') {\n this.privateMod.residueModified = event.value;\n }\n }\n\n update(tags: Array): void {\n this.privateMod.residueModified = tags.join(';');\n }\n\n getSubstanceType(): void {\n const definitionSubscription = this.substanceFormService.definition.subscribe( definition => {\n this.substanceType = definition.substanceClass;\n });\n definitionSubscription.unsubscribe();\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('STRUCTURAL_MODIFICATION_TYPE', 'LOCATION_TYPE', 'EXTENT_TYPE').subscribe(response => {\n this.modTypeList = response['STRUCTURAL_MODIFICATION_TYPE'].list;\n this.modLocationList = response['LOCATION_TYPE'].list;\n this.modExtentList = response['EXTENT_TYPE'].list;\n });\n }\n\n deleteMod(): void {\n this.privateMod.$$deletedCode = this.utilsService.newUUID();\n this.deleteTimer = setTimeout(() => {\n this.modDeleted.emit(this.privateMod);\n }, 2000);\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMod.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.mod.access = access;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.mod.molecularFragment = relatedSubstance;\n this.relatedSubstanceUuid = this.mod.molecularFragment.refuuid;\n } else {\n this.mod.molecularFragment = {};\n this.relatedSubstanceUuid = '';\n }\n }\n\n\n\n openDialog(): void {\n\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'other', 'link': this.mod.sites},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n this.mod.sites = newLinks;\n this.updateDisplay();\n this.substanceFormService.emitStructuralModificationsUpdate();\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n openAmountDialog(): void {\n if (!this.mod.extentAmount) {\n this.mod.extentAmount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.mod.extentAmount},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.mod.extentAmount = newAmount;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateDisplay(): void {\n this.siteDisplay = this.substanceFormService.siteString(this.mod.sites);\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n pipeToArray(string: string): Array {\n if (!string || string === '') {\n return [];\n } else {\n return string.split(';');\n }\n\n }\n\n inCV(vocab: Array, property: string): boolean {\n if (vocab) {\n return vocab.some(r => property === r.value);\n } else {\n return true;\n }\n\n }\n}\n","
\n \n \n
\n
\n \n \n
\n\n\n
\n \n \n\n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {PhysicalModification, StructuralModification} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormStructuralModificationsService } from './substance-form-structural-modifications.service';\n\n@Component({\n selector: 'app-substance-form-structural-modifications-card',\n templateUrl: './substance-form-structural-modifications-card.component.html',\n styleUrls: ['./substance-form-structural-modifications-card.component.scss']\n})\nexport class SubstanceFormStructuralModificationsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n modifications: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormStructuralModificationsService: SubstanceFormStructuralModificationsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form structural modifications';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Structural Modifications');\n }\n\n ngAfterViewInit() {\n const structuralSubscription = this.substanceFormStructuralModificationsService\n .substanceStructuralModifications\n .subscribe(modifications => {\n\n this.modifications = modifications;\n });\n this.subscriptions.push(structuralSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addStructuralModification();\n }\n\n addStructuralModification(): void {\n this.substanceFormStructuralModificationsService.addSubstanceStructuralModification();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-structural-modification-0`, 'center');\n });\n }\n\n deleteStructuralModification(modification: StructuralModification): void {\n this.substanceFormStructuralModificationsService.deleteSubstanceStructuralModification(modification);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport {SubstanceFormStructuralModificationsCardComponent} from '@gsrs-core/substance-form/structural-modifications/substance-form-structural-modifications-card.component';\nimport { StructuralModificationFormComponent } from './structural-modification-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatSelectModule } from '@angular/material/select';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructuralModificationsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatSelectModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormStructuralModificationsCardComponent,\n StructuralModificationFormComponent\n ]\n})\nexport class SubstanceFormStructuralModificationsModule { }\n"],"sourceRoot":"webpack:///","file":"4243.7f434b0e225f38ea.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r6","ctx_r8","ctx_r17","ctx_r21","ctx_r22","StructuralModificationFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","value","display","getVocabularies","overlayContainer","getContainerElement","updateDisplay","getSubstanceType","privateMod","set","mod","relatedSubstanceUuid","molecularFragment","refuuid","event","residueModified","tags","join","definition","subscribe","e","substanceType","substanceClass","unsubscribe","getDomainVocabulary","modTypeList","response","STRUCTURAL_MODIFICATION_TYPE","list","modLocationList","LOCATION_TYPE","modExtentList","EXTENT_TYPE","$$deletedCode","newUUID","deleteTimer","setTimeout","modDeleted","emit","clearTimeout","access","substance","refPname","_name","name","uuid","approvalID","dialogRef","open","SubunitSelectorDialogComponent","data","card","link","sites","width","panelClass","style","zIndex","dialogSubscription","afterClosed","newLinks","emitStructuralModificationsUpdate","subscriptions","push","extentAmount","AmountFormDialogComponent","subsAmount","newAmount","siteDisplay","siteString","amt","displayAmount","v","string","split","vocab","property","some","r","d","selectors","ctx","ctx_r5","SubstanceFormStructuralModificationsCardComponent","substanceFormStructuralModificationsService","scrollToService","gaService","s","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","structuralSubscription","substanceStructuralModifications","i","modifications","componentDestroyed","forEach","subscription","addStructuralModification","addSubstanceStructuralModification","scrollToElement","modification","deleteSubstanceStructuralModification","SubstanceCardBaseFilteredList","SubstanceFormStructuralModificationsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatSelectModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/structural-modifications/structural-modification-form.component.html","./src/app/core/substance-form/structural-modifications/structural-modification-form.component.ts","./src/app/core/substance-form/structural-modifications/substance-form-structural-modifications-card.component.html","./src/app/core/substance-form/structural-modifications/substance-form-structural-modifications-card.component.ts","./src/app/core/substance-form/structural-modifications/substance-form-structural-modifications.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n
\n \n \n
\n
\n
\n\n
\n \n
\n
Sites
\n {{siteDisplay}}\n \n
\n
\n \n \n \n
\n
\n \n Residue Modified\n \n Clear selection\n \n {{term.display}}\n \n {{mod.residueModified}} (not in CV)\n Other (New Value)\n \n \n
\n
\n \n
\n
\n
\n \n
\n
\n
\n\n
\n \n \n
\n
\n \n \n \n
\n \n \n
\n
\n
\n\n
\n\n\n
\n
\n
\n Amount\n
\n \n
\n {{displayAmount(mod.extentAmount)}}\n
\n\n
\n\n
\n
\n \n
\n
\n\n
\n\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {StructuralModification, SubstanceCode, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\n\n@Component({\n selector: 'app-structural-modification-form',\n templateUrl: './structural-modification-form.component.html',\n styleUrls: ['./structural-modification-form.component.scss']\n})\nexport class StructuralModificationFormComponent implements OnInit, AfterViewInit {\n private privateMod: StructuralModification;\n @Output() modDeleted = new EventEmitter();\n modExtentList: Array = [];\n modLocationList: Array = [];\n modTypeList: Array = [];\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n substanceType: string;\n nucleicAcidOptions: any = [\n {value:'U', display:'U'},\n {value:'T', display:'T'},\n {value:'C', display:'C'},\n {value:'G', display:'G'},\n {value:'A', display:'A'}\n ];\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.updateDisplay();\n this.getSubstanceType();\n }\n\n ngAfterViewInit(): void {\n\n }\n\n @Input()\n set mod(mod: StructuralModification) {\n this.privateMod = mod;\n this.relatedSubstanceUuid = this.privateMod.molecularFragment && this.privateMod.molecularFragment.refuuid || '';\n }\n\n get mod(): StructuralModification {\n return this.privateMod;\n }\n\n updateResidue(event) {\n this.privateMod.residueModified = event;\n }\n\n updateOrigin(event): void {\n if (event && event.value !== '') {\n this.privateMod.residueModified = event.value;\n }\n }\n\n update(tags: Array): void {\n this.privateMod.residueModified = tags.join(';');\n }\n\n getSubstanceType(): void {\n const definitionSubscription = this.substanceFormService.definition.subscribe( definition => {\n this.substanceType = definition.substanceClass;\n });\n definitionSubscription.unsubscribe();\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('STRUCTURAL_MODIFICATION_TYPE', 'LOCATION_TYPE', 'EXTENT_TYPE').subscribe(response => {\n this.modTypeList = response['STRUCTURAL_MODIFICATION_TYPE'].list;\n this.modLocationList = response['LOCATION_TYPE'].list;\n this.modExtentList = response['EXTENT_TYPE'].list;\n });\n }\n\n deleteMod(): void {\n this.privateMod.$$deletedCode = this.utilsService.newUUID();\n this.deleteTimer = setTimeout(() => {\n this.modDeleted.emit(this.privateMod);\n }, 2000);\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMod.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.mod.access = access;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.mod.molecularFragment = relatedSubstance;\n this.relatedSubstanceUuid = this.mod.molecularFragment.refuuid;\n } else {\n this.mod.molecularFragment = {};\n this.relatedSubstanceUuid = '';\n }\n }\n\n\n\n openDialog(): void {\n\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'other', 'link': this.mod.sites},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n this.mod.sites = newLinks;\n this.updateDisplay();\n this.substanceFormService.emitStructuralModificationsUpdate();\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n openAmountDialog(): void {\n if (!this.mod.extentAmount) {\n this.mod.extentAmount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.mod.extentAmount},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.mod.extentAmount = newAmount;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateDisplay(): void {\n this.siteDisplay = this.substanceFormService.siteString(this.mod.sites);\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n pipeToArray(string: string): Array {\n if (!string || string === '') {\n return [];\n } else {\n return string.split(';');\n }\n\n }\n\n inCV(vocab: Array, property: string): boolean {\n if (vocab) {\n return vocab.some(r => property === r.value);\n } else {\n return true;\n }\n\n }\n}\n","
\n \n \n
\n
\n \n \n
\n\n\n
\n \n \n\n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {PhysicalModification, StructuralModification} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormStructuralModificationsService } from './substance-form-structural-modifications.service';\n\n@Component({\n selector: 'app-substance-form-structural-modifications-card',\n templateUrl: './substance-form-structural-modifications-card.component.html',\n styleUrls: ['./substance-form-structural-modifications-card.component.scss']\n})\nexport class SubstanceFormStructuralModificationsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n modifications: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormStructuralModificationsService: SubstanceFormStructuralModificationsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form structural modifications';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Structural Modifications');\n }\n\n ngAfterViewInit() {\n const structuralSubscription = this.substanceFormStructuralModificationsService\n .substanceStructuralModifications\n .subscribe(modifications => {\n\n this.modifications = modifications;\n });\n this.subscriptions.push(structuralSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addStructuralModification();\n }\n\n addStructuralModification(): void {\n this.substanceFormStructuralModificationsService.addSubstanceStructuralModification();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-structural-modification-0`, 'center');\n });\n }\n\n deleteStructuralModification(modification: StructuralModification): void {\n this.substanceFormStructuralModificationsService.deleteSubstanceStructuralModification(modification);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport {SubstanceFormStructuralModificationsCardComponent} from '@gsrs-core/substance-form/structural-modifications/substance-form-structural-modifications-card.component';\nimport { StructuralModificationFormComponent } from './structural-modification-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatSelectModule } from '@angular/material/select';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructuralModificationsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatSelectModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormStructuralModificationsCardComponent,\n StructuralModificationFormComponent\n ]\n})\nexport class SubstanceFormStructuralModificationsModule { }\n"],"sourceRoot":"webpack:///","file":"4243.13a624ed9702ee4f.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4243.7f434b0e225f38ea.js b/frontend/src/main/resources/static/4243.7f434b0e225f38ea.js deleted file mode 100644 index 0464637..0000000 --- a/frontend/src/main/resources/static/4243.7f434b0e225f38ea.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4243],{14243:function(ct,M,r){r.r(M),r.d(M,{SubstanceFormStructuralModificationsModule:function(){return rt}});var m=r(48047),p=r(78069),s=r(36362),_=r(64061),y=r(7168),C=r(19975),f=r(65590),g=r(87317),x=r(94673),v=r(44770),l=r(90587),S=r(26439),h=r(43365),Z=r(24582),b=r(7318),A=r(79550),O=(r(27299),r(40104)),F=r(5118),t=r(76442),P=r(78444),I=r(51279),U=r(18291),J=r(63169),N=r(39401),D=r(33567),E=r(27164),Q=r(95758),w=r(66088),k=r(24459),Y=r(16667),T=r(91434),R=r(1130),j=r(15992),L=r(84577),V=r(14900);function q(o,d){if(1&o){var n=t.EpF();t.TgZ(0,"div",28),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",29),t.NdJ("click",function(){return t.CHM(n),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",30),t.qZA(),t.qZA()}}function H(o,d){if(1&o){var n=t.EpF();t.TgZ(0,"div",31),t.TgZ(1,"div",32),t._uU(2,"Sites"),t.qZA(),t._uU(3),t.TgZ(4,"button",29),t.NdJ("click",function(){return t.CHM(n),t.oxw().openDialog()}),t._UZ(5,"mat-icon",25),t.qZA(),t.qZA()}if(2&o){var e=t.oxw();t.xp6(3),t.hij(" ",e.siteDisplay," ")}}function z(o,d){if(1&o){var n=t.EpF();t.TgZ(0,"mat-form-field",18),t.TgZ(1,"input",33),t.NdJ("ngModelChange",function(i){return t.CHM(n),t.oxw().mod.residueModified=i}),t.qZA(),t.qZA()}if(2&o){var e=t.oxw();t.xp6(1),t.Q6J("ngModel",e.mod.residueModified)}}function $(o,d){1&o&&(t.TgZ(0,"mat-option",41),t.TgZ(1,"span",42),t._uU(2,"Clear selection"),t.qZA(),t.qZA()),2&o&&t.Q6J("value",null)}function X(o,d){if(1&o&&(t.TgZ(0,"mat-option",41),t._uU(1),t.qZA()),2&o){var n=d.$implicit;t.Q6J("value",n.value),t.xp6(1),t.hij(" ",n.display," ")}}function G(o,d){if(1&o&&(t.TgZ(0,"mat-option",41),t._uU(1),t.qZA()),2&o){var n=t.oxw(2);t.s9C("value",n.mod.residueModified),t.xp6(1),t.hij("",n.mod.residueModified," (not in CV)")}}function W(o,d){if(1&o){var n=t.EpF();t.TgZ(0,"div",43),t.TgZ(1,"input",44),t.NdJ("focusout",function(a){return t.CHM(n),t.oxw(2).updateOrigin(a.target)}),t.qZA(),t.qZA()}}function B(o,d){if(1&o){var n=t.EpF();t.TgZ(0,"div",18),t.TgZ(1,"div",34),t.TgZ(2,"mat-form-field",35),t.TgZ(3,"mat-label"),t._uU(4,"Residue Modified"),t.qZA(),t.TgZ(5,"mat-select",36),t.NdJ("ngModelChange",function(i){return t.CHM(n),t.oxw().mod.residueModified=i})("ngModelChange",function(i){return t.CHM(n),t.oxw().updateResidue(i)}),t.YNc(6,$,3,1,"mat-option",37),t.YNc(7,X,2,2,"mat-option",38),t.YNc(8,G,2,2,"mat-option",37),t.TgZ(9,"mat-option",39),t._uU(10,"Other (New Value)"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.YNc(11,W,2,0,"div",40),t.qZA()}if(2&o){var e=t.oxw();t.xp6(2),t.Q6J("ngClass","other"===e.privateMod?"risen":""),t.xp6(3),t.Q6J("ngModel",e.mod.residueModified)("disabled",e.disable),t.xp6(1),t.Q6J("ngIf",e.mod.residueModified),t.xp6(1),t.Q6J("ngForOf",e.nucleicAcidOptions),t.xp6(1),t.Q6J("ngIf",e.mod.residueModified&&!e.inCV(e.nucleicAcidOptions,e.mod.residueModified)&&""!==e.mod.residueModified),t.xp6(3),t.Q6J("ngIf","other"===e.mod.residueModified)}}function K(o,d){if(1&o){var n=t.EpF();t.TgZ(0,"div",45),t.TgZ(1,"app-tag-selector",46),t.NdJ("tagsUpdate",function(i){return t.CHM(n),t.oxw().update(i)}),t.qZA(),t.qZA()}if(2&o){var e=t.oxw();t.xp6(1),t.Q6J("tags",e.pipeToArray(e.mod.residueModified))}}function tt(o,d){if(1&o&&(t.TgZ(0,"div",47),t._uU(1),t.qZA()),2&o){var n=t.oxw();t.xp6(1),t.hij(" ",n.displayAmount(n.mod.extentAmount)," ")}}var et=function(){var o=function(){function d(n,e,a,i,c){(0,p.Z)(this,d),this.cvService=n,this.dialog=e,this.utilsService=a,this.overlayContainerService=i,this.substanceFormService=c,this.modDeleted=new t.vpe,this.modExtentList=[],this.modLocationList=[],this.modTypeList=[],this.subscriptions=[],this.nucleicAcidOptions=[{value:"U",display:"U"},{value:"T",display:"T"},{value:"C",display:"C"},{value:"G",display:"G"},{value:"A",display:"A"}]}return(0,m.Z)(d,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay(),this.getSubstanceType()}},{key:"ngAfterViewInit",value:function(){}},{key:"mod",get:function(){return this.privateMod},set:function(e){this.privateMod=e,this.relatedSubstanceUuid=this.privateMod.molecularFragment&&this.privateMod.molecularFragment.refuuid||""}},{key:"updateResidue",value:function(e){this.privateMod.residueModified=e}},{key:"updateOrigin",value:function(e){e&&""!==e.value&&(this.privateMod.residueModified=e.value)}},{key:"update",value:function(e){this.privateMod.residueModified=e.join(";")}},{key:"getSubstanceType",value:function(){var e=this;this.substanceFormService.definition.subscribe(function(i){e.substanceType=i.substanceClass}).unsubscribe()}},{key:"getVocabularies",value:function(){var e=this;this.cvService.getDomainVocabulary("STRUCTURAL_MODIFICATION_TYPE","LOCATION_TYPE","EXTENT_TYPE").subscribe(function(a){e.modTypeList=a.STRUCTURAL_MODIFICATION_TYPE.list,e.modLocationList=a.LOCATION_TYPE.list,e.modExtentList=a.EXTENT_TYPE.list})}},{key:"deleteMod",value:function(){var e=this;this.privateMod.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){e.modDeleted.emit(e.privateMod)},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMod.$$deletedCode}},{key:"updateAccess",value:function(e){this.mod.access=e}},{key:"relatedSubstanceUpdated",value:function(e){null!==e?(this.mod.molecularFragment={refPname:e._name,name:e._name,refuuid:e.uuid,substanceClass:"reference",approvalID:e.approvalID},this.relatedSubstanceUuid=this.mod.molecularFragment.refuuid):(this.mod.molecularFragment={},this.relatedSubstanceUuid="")}},{key:"openDialog",value:function(){var e=this,a=this.dialog.open(N.r,{data:{card:"other",link:this.mod.sites},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var i=a.afterClosed().subscribe(function(c){e.overlayContainer.style.zIndex=null,e.mod.sites=c,e.updateDisplay(),e.substanceFormService.emitStructuralModificationsUpdate()});this.subscriptions.push(i)}},{key:"openAmountDialog",value:function(){var e=this;this.mod.extentAmount||(this.mod.extentAmount={});var a=this.dialog.open(E.O,{data:{subsAmount:this.mod.extentAmount},width:"1040px"});this.overlayContainer.style.zIndex="1002";var i=a.afterClosed().subscribe(function(c){e.overlayContainer.style.zIndex=null,e.mod.extentAmount=c});this.subscriptions.push(i)}},{key:"updateDisplay",value:function(){this.siteDisplay=this.substanceFormService.siteString(this.mod.sites)}},{key:"displayAmount",value:function(e){return this.utilsService.displayAmount(e)}},{key:"formatValue",value:function(e){return e?"object"==typeof e?e.display?e.display:e.value?e.value:null:e:null}},{key:"pipeToArray",value:function(e){return e&&""!==e?e.split(";"):[]}},{key:"inCV",value:function(e,a){return!e||e.some(function(i){return a===i.value})}}]),d}();return o.\u0275fac=function(n){return new(n||o)(t.Y36(U.I),t.Y36(Q.uw),t.Y36(J.FW),t.Y36(w.Xj),t.Y36(D.B))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-structural-modification-form"]],inputs:{mod:"mod"},outputs:{modDeleted:"modDeleted"},decls:34,vars:13,consts:[[1,"code-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],[1,"related-holder"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Molecular Fragment","header","Molecular Fragment",3,"subuuid","selectionUpdated"],[1,"flex-column","form-content"],[1,"form-row"],["key","Structural Modification Structural Modification Type","title","Modification Type",3,"model","valueChange"],["class","sites",4,"ngIf"],[1,"residues"],["class","group",4,"ngIf"],["class","multi",4,"ngIf"],["domain","EXTENT_TYPE","title","Extent",3,"model","valueChange"],["domain","LOCATION_TYPE","title","Location",3,"model","valueChange"],[1,"group-access"],[1,"group"],["matInput","","placeholder","Group","required","","name","group",3,"ngModel","ngModelChange"],[1,"access"],[3,"access","accessOut"],[1,"amount"],[1,"label","padded"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","edit"],["class","amount-display",4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"sites"],[1,"label"],["matInput","","placeholder","Residue Modified","name","Residue Modified",3,"ngModel","ngModelChange"],[1,"flex-row"],[1,"cv-field",3,"ngClass"],["name","residueModified",3,"ngModel","disabled","ngModelChange"],[3,"value",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],["value","other"],["class","custom",4,"ngIf"],[3,"value"],[1,"deselect"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"],[1,"multi"],["placeholder","Residue Modified","disableCV","true","cvDomain","AMINO_ACID_RESIDUE",1,"tags",3,"tags","tagsUpdate"],[1,"amount-display"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0),t.YNc(1,q,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"button",3),t.NdJ("click",function(){return e.deleteMod()}),t._UZ(4,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(5,"div",5),t.TgZ(6,"div",6),t.TgZ(7,"app-substance-selector",7),t.NdJ("selectionUpdated",function(i){return e.relatedSubstanceUpdated(i)}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.TgZ(10,"app-cv-input",10),t.NdJ("valueChange",function(i){return e.mod.structuralModificationType=i}),t.qZA(),t.YNc(11,H,6,1,"div",11),t.TgZ(12,"div",12),t.YNc(13,z,2,1,"mat-form-field",13),t.YNc(14,B,12,7,"div",13),t.YNc(15,K,2,1,"div",14),t.qZA(),t.qZA(),t.TgZ(16,"div",9),t.TgZ(17,"app-cv-input",15),t.NdJ("valueChange",function(i){return e.mod.extent=i}),t.qZA(),t.TgZ(18,"app-cv-input",16),t.NdJ("valueChange",function(i){return e.mod.locationType=i}),t.qZA(),t.TgZ(19,"div",17),t.TgZ(20,"div",9),t.TgZ(21,"mat-form-field",18),t.TgZ(22,"input",19),t.NdJ("ngModelChange",function(i){return e.mod.modificationGroup=i}),t.qZA(),t.qZA(),t.TgZ(23,"div",20),t.TgZ(24,"app-access-manager",21),t.NdJ("accessOut",function(i){return e.updateAccess(i)}),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(25,"div",9),t.TgZ(26,"div",22),t.TgZ(27,"div",23),t._uU(28," Amount "),t.qZA(),t.TgZ(29,"button",24),t.NdJ("click",function(){return e.openAmountDialog()}),t._UZ(30,"mat-icon",25),t.qZA(),t.YNc(31,tt,2,1,"div",26),t.qZA(),t.qZA(),t.TgZ(32,"div",9),t._UZ(33,"app-audit-info",27),t.qZA(),t.qZA(),t.qZA()),2&n&&(t.xp6(1),t.Q6J("ngIf",e.mod.$$deletedCode),t.xp6(6),t.Q6J("subuuid",e.relatedSubstanceUuid),t.xp6(3),t.Q6J("model",e.mod.structuralModificationType),t.xp6(1),t.Q6J("ngIf","RESIDUE_SPECIFIC"!==e.mod.locationType),t.xp6(2),t.Q6J("ngIf","nucleicAcid"!==e.substanceType&&"protein"!==e.substanceType),t.xp6(1),t.Q6J("ngIf","nucleicAcid"===e.substanceType),t.xp6(1),t.Q6J("ngIf","protein"===e.substanceType),t.xp6(2),t.Q6J("model",e.mod.extent),t.xp6(1),t.Q6J("model",e.mod.locationType),t.xp6(4),t.Q6J("ngModel",e.mod.modificationGroup),t.xp6(2),t.Q6J("access",e.mod.access),t.xp6(7),t.Q6J("ngIf",e.mod.extentAmount),t.xp6(2),t.Q6J("source",e.mod))},directives:[s.O5,g.lW,f.Hw,k.Q,Y.S,v.KE,h.Nt,l.Fj,l.JJ,l.On,s.mk,v.hX,T.gD,R.ey,s.sg,j.C,l.Q7,L.h,V.n],styles:[".code-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:25%;width:25%} .related-substance img{max-width:125px!important;margin:auto}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .location-type[_ngcontent-%COMP%] .extent[_ngcontent-%COMP%] .sites[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .comment[_ngcontent-%COMP%]{width:45%;padding-right:15px;-ms-flex-positive:1;flex-grow:1}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}.custom[_ngcontent-%COMP%]{width:100%}.residues[_ngcontent-%COMP%]{width:60%}.custom[_ngcontent-%COMP%]{padding-bottom:10px;padding-top:10px;border-bottom:1px solid rgba(0,0,0,.45)}"]}),o}();function nt(o,d){1&o&&t._UZ(0,"mat-divider",8),2&o&&t.Q6J("inset",!0)}function ot(o,d){if(1&o){var n=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-structural-modification-form",6),t.NdJ("modDeleted",function(u){return t.CHM(n),t.oxw().deleteStructuralModification(u)}),t.qZA(),t.YNc(2,nt,1,1,"mat-divider",7),t.qZA()}if(2&o){var e=d.$implicit,a=d.last;t.Q6J("id","substance-structural-modification-"+d.index),t.xp6(1),t.Q6J("mod",e),t.xp6(1),t.Q6J("ngIf",!a)}}var it=function(){var o=function(d){(0,Z.Z)(e,d);var n=(0,b.Z)(e);function e(a,i,c){var u;return(0,p.Z)(this,e),(u=n.call(this,c)).substanceFormStructuralModificationsService=a,u.scrollToService=i,u.gaService=c,u.subscriptions=[],u.analyticsEventCategory="substance form structural modifications",u}return(0,m.Z)(e,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Structural Modifications")}},{key:"ngAfterViewInit",value:function(){var i=this,c=this.substanceFormStructuralModificationsService.substanceStructuralModifications.subscribe(function(u){i.modifications=u});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"addItem",value:function(){this.addStructuralModification()}},{key:"addStructuralModification",value:function(){var i=this;this.substanceFormStructuralModificationsService.addSubstanceStructuralModification(),setTimeout(function(){i.scrollToService.scrollToElement("substance-structural-modification-0","center")})}},{key:"deleteStructuralModification",value:function(i){this.substanceFormStructuralModificationsService.deleteSubstanceStructuralModification(i)}}]),e}(A.u);return o.\u0275fac=function(n){return new(n||o)(t.Y36(F.T),t.Y36(P.i),t.Y36(O.$))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-form-structural-modifications-card"]],features:[t.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"mod","modDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,ot,3,3,"div",2),t.TgZ(3,"div",0),t._UZ(4,"span",1),t.TgZ(5,"button",3),t.NdJ("click",function(){return e.addStructuralModification()}),t._uU(6," Add Modification "),t._UZ(7,"mat-icon",4),t.qZA(),t.qZA()),2&n&&(t.xp6(2),t.Q6J("ngForOf",e.modifications))},directives:[s.sg,I.P,et,s.O5,C.d,g.lW,f.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#0000001f}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),o}(),at=r(63200),rt=function(){var o=(0,m.Z)(function d(){(0,p.Z)(this,d)});return o.\u0275fac=function(n){return new(n||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[s.ez,_.o.forChild(it),y.O,C.t,f.Ps,g.ot,x.w,v.lN,l.UX,l.u5,S.TU,T.LD,h.c,at.U]]}),o}()}}]); -//# sourceMappingURL=4243.7f434b0e225f38ea.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4300.63030b2636757e99.js b/frontend/src/main/resources/static/4300.6c61768afc9aeda9.js similarity index 92% rename from frontend/src/main/resources/static/4300.63030b2636757e99.js rename to frontend/src/main/resources/static/4300.6c61768afc9aeda9.js index 6d38ec6..2542005 100644 --- a/frontend/src/main/resources/static/4300.63030b2636757e99.js +++ b/frontend/src/main/resources/static/4300.6c61768afc9aeda9.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4300],{24300:function(I,d,e){e.r(d),e.d(d,{SsgDefinitionFormModule:function(){return J}});var u=e(48047),l=e(78069),g=e(36362),h=e(24582),C=e(7318),S=e(33567),Z=e(40104),x=e(18291),y=e(79223),n=e(76442),v=e(44770),p=e(43365),m=e(90587),F=e(84577),M=e(48302);function D(i,c){if(1&i){var o=n.EpF();n.TgZ(0,"div",1),n.TgZ(1,"div",2),n.TgZ(2,"mat-form-field",3),n.TgZ(3,"input",4),n.NdJ("ngModelChange",function(t){return n.CHM(o),n.oxw().definition.definition=t}),n.qZA(),n.qZA(),n.TgZ(4,"app-access-manager",5),n.NdJ("accessOut",function(t){return n.CHM(o),n.oxw().updateAccess(t)}),n.qZA(),n.qZA(),n.TgZ(5,"div",2),n.TgZ(6,"div",6),n._UZ(7,"app-domain-references",7,8),n.qZA(),n.qZA(),n.qZA()}if(2&i){var s=n.oxw();n.xp6(3),n.Q6J("ngModel",s.definition.definition),n.xp6(1),n.Q6J("access",s.definition.access),n.xp6(3),n.Q6J("referencesUuids",s.definition.references)}}var O=function(){var i=function(c){(0,h.Z)(s,c);var o=(0,C.Z)(s);function s(r,t,f){var a;return(0,l.Z)(this,s),(a=o.call(this)).substanceFormService=r,a.gaService=t,a.cvService=f,a.subscriptions=[],a.analyticsEventCategory="substance form ssg 3 definition",a}return(0,u.Z)(s,[{key:"ngOnInit",value:function(){var t=this;this.menuLabelUpdate.emit("Definition");var f=this.substanceFormService.substance.subscribe(function(a){null==a.specifiedSubstanceG3.definition&&(a.specifiedSubstanceG3.definition={}),t.substanceFormService.resetState(),t.definition=a.specifiedSubstanceG3.definition});this.subscriptions.push(f)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"updateAccess",value:function(t){this.definition.access=t}}]),s}(y.o);return i.\u0275fac=function(o){return new(o||i)(n.Y36(S.B),n.Y36(Z.$),n.Y36(x.I))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-ssg-definition-form"]],features:[n.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],[1,"name"],["matInput","","placeholder","Definition","name","definition",3,"ngModel","ngModelChange"],[3,"access","accessOut"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(o,s){1&o&&n.YNc(0,D,9,3,"div",0),2&o&&n.Q6J("ngIf",s.definition)},directives:[g.O5,v.KE,p.Nt,m.Fj,m.JJ,m.On,F.h,M.V],styles:[".name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.cv-input[_ngcontent-%COMP%]{margin-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),i}(),A=e(7168),T=e(64061),J=function(){var i=(0,u.Z)(function c(){(0,l.Z)(this,c)});return i.\u0275fac=function(o){return new(o||i)},i.\u0275mod=n.oAB({type:i}),i.\u0275inj=n.cJS({imports:[[g.ez,T.o.forChild(O),A.O,p.c,v.lN,m.UX,m.u5]]}),i}()}}]); -//# sourceMappingURL=4300.63030b2636757e99.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4300],{24300:function(I,d,e){e.r(d),e.d(d,{SsgDefinitionFormModule:function(){return J}});var u=e(1884),l=e(39117),g=e(36362),h=e(46751),C=e(56101),S=e(33567),Z=e(40104),x=e(18291),y=e(79223),n=e(86613),v=e(44770),p=e(43365),m=e(90587),F=e(84577),M=e(48302);function D(i,c){if(1&i){var o=n.EpF();n.TgZ(0,"div",1),n.TgZ(1,"div",2),n.TgZ(2,"mat-form-field",3),n.TgZ(3,"input",4),n.NdJ("ngModelChange",function(t){return n.CHM(o),n.oxw().definition.definition=t}),n.qZA(),n.qZA(),n.TgZ(4,"app-access-manager",5),n.NdJ("accessOut",function(t){return n.CHM(o),n.oxw().updateAccess(t)}),n.qZA(),n.qZA(),n.TgZ(5,"div",2),n.TgZ(6,"div",6),n._UZ(7,"app-domain-references",7,8),n.qZA(),n.qZA(),n.qZA()}if(2&i){var s=n.oxw();n.xp6(3),n.Q6J("ngModel",s.definition.definition),n.xp6(1),n.Q6J("access",s.definition.access),n.xp6(3),n.Q6J("referencesUuids",s.definition.references)}}var O=function(){var i=function(c){(0,h.Z)(s,c);var o=(0,C.Z)(s);function s(r,t,f){var a;return(0,l.Z)(this,s),(a=o.call(this)).substanceFormService=r,a.gaService=t,a.cvService=f,a.subscriptions=[],a.analyticsEventCategory="substance form ssg 3 definition",a}return(0,u.Z)(s,[{key:"ngOnInit",value:function(){var t=this;this.menuLabelUpdate.emit("Definition");var f=this.substanceFormService.substance.subscribe(function(a){null==a.specifiedSubstanceG3.definition&&(a.specifiedSubstanceG3.definition={}),t.substanceFormService.resetState(),t.definition=a.specifiedSubstanceG3.definition});this.subscriptions.push(f)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"updateAccess",value:function(t){this.definition.access=t}}]),s}(y.o);return i.\u0275fac=function(o){return new(o||i)(n.Y36(S.B),n.Y36(Z.$),n.Y36(x.I))},i.\u0275cmp=n.Xpm({type:i,selectors:[["app-ssg-definition-form"]],features:[n.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],[1,"name"],["matInput","","placeholder","Definition","name","definition",3,"ngModel","ngModelChange"],[3,"access","accessOut"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(o,s){1&o&&n.YNc(0,D,9,3,"div",0),2&o&&n.Q6J("ngIf",s.definition)},directives:[g.O5,v.KE,p.Nt,m.Fj,m.JJ,m.On,F.h,M.V],styles:[".name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.cv-input[_ngcontent-%COMP%]{margin-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),i}(),A=e(7168),T=e(64061),J=function(){var i=(0,u.Z)(function c(){(0,l.Z)(this,c)});return i.\u0275fac=function(o){return new(o||i)},i.\u0275mod=n.oAB({type:i}),i.\u0275inj=n.cJS({imports:[[g.ez,T.o.forChild(O),A.O,p.c,v.lN,m.UX,m.u5]]}),i}()}}]); +//# sourceMappingURL=4300.6c61768afc9aeda9.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4300.63030b2636757e99.js.map b/frontend/src/main/resources/static/4300.6c61768afc9aeda9.js.map similarity index 99% rename from frontend/src/main/resources/static/4300.63030b2636757e99.js.map rename to frontend/src/main/resources/static/4300.6c61768afc9aeda9.js.map index 157c0db..09e8820 100644 --- a/frontend/src/main/resources/static/4300.63030b2636757e99.js.map +++ b/frontend/src/main/resources/static/4300.6c61768afc9aeda9.js.map @@ -1 +1 @@ -{"version":3,"mappings":"4XAAAA,iBACEA,iBACEA,4BACEA,mBAAyCA,oFAAzCA,QACFA,QACAA,gCAAoBA,sDAAaC,kBACjCD,QACFA,QAEAA,iBACEA,iBACEA,qCACFA,QACFA,QAEFA,8BAZ+CA,kDAEYA,6CAM9BA,2DCItB,IAAME,EAAb,eAAaA,EAAb,0CAGE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cAJDA,gBAAqC,GAO3CA,EAAKC,uBAAyB,kCAHeD,EANjD,uCAYE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,cAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YACzB,MAA7CD,EAAUE,qBAAqBC,aACjCH,EAAUE,qBAAqBC,WAAa,IAE9CC,EAAKb,qBAAqBc,aAC1BD,EAAKD,WAAaH,EAAUE,qBAAqBC,aAGnDP,KAAKU,cAAcC,KAAKR,KAtB5B,6BAyBE,cAzBF,yBA4BE,WACEH,KAAKU,cAAcE,QAAQ,YACzBC,EAAaC,kBA9BnB,0BAkCE,SAAaC,GACXf,KAAKO,WAAWQ,OAASA,MAnC7BC,GAAgDC,kDAAnCvB,GAA0BF,2DAA1BE,EAA0BwB,iYDfvC1B,4BAAkCA,qiBCerBE,EAAb,wBCSayB,EAAb,eAAaA,KAAbC,iFAAaD,4DAdF,CACPE,KACAC,aAAsC5B,GACtC6B,IACAC,IACAC,KACAC,KACAC,SAOSR,EAAb","names":["i0","ctx_r4","SsgDefinitionFormComponent","substanceFormService","gaService","cvService","a","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","specifiedSubstanceG3","definition","t","resetState","subscriptions","push","forEach","subscription","unsubscribe","access","s","SubstanceFormBase","selectors","SsgDefinitionFormModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatInputModule","MatFormFieldModule","ReactiveFormsModule","FormsModule"],"sources":["./src/app/core/substance-form/ssg-definition-form/ssg-definition-form.component.html","./src/app/core/substance-form/ssg-definition-form/ssg-definition-form.component.ts","./src/app/core/substance-form/ssg-definition-form/ssg-definition-form.module.ts"],"sourcesContent":["
\n
\n \n \n \n \n \n
\n\n
\n
\n \n
\n
\n\n
","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Definition } from '@gsrs-core/substance';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-ssg-definition-form',\n templateUrl: './ssg-definition-form.component.html',\n styleUrls: ['./ssg-definition-form.component.scss']\n})\n\nexport class SsgDefinitionFormComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n definition: Definition;\n private subscriptions: Array = [];\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form ssg 3 definition';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Definition');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.specifiedSubstanceG3.definition == null) {\n substance.specifiedSubstanceG3.definition = {};\n }\n this.substanceFormService.resetState();\n this.definition = substance.specifiedSubstanceG3.definition;\n // this.definition.references = [];\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.definition.access = access;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SsgDefinitionFormComponent } from './ssg-definition-form.component';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SsgDefinitionFormComponent),\n SubstanceFormModule,\n MatInputModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule\n ],\n declarations: [\n SsgDefinitionFormComponent\n ]\n})\n\nexport class SsgDefinitionFormModule { }\n"],"sourceRoot":"webpack:///","file":"4300.63030b2636757e99.js"} \ No newline at end of file +{"version":3,"mappings":"4XAAAA,iBACEA,iBACEA,4BACEA,mBAAyCA,oFAAzCA,QACFA,QACAA,gCAAoBA,sDAAaC,kBACjCD,QACFA,QAEAA,iBACEA,iBACEA,qCACFA,QACFA,QAEFA,8BAZ+CA,kDAEYA,6CAM9BA,2DCItB,IAAME,EAAb,eAAaA,EAAb,0CAGE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cAJDA,gBAAqC,GAO3CA,EAAKC,uBAAyB,kCAHeD,EANjD,uCAYE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,cAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YACzB,MAA7CD,EAAUE,qBAAqBC,aACjCH,EAAUE,qBAAqBC,WAAa,IAE9CC,EAAKb,qBAAqBc,aAC1BD,EAAKD,WAAaH,EAAUE,qBAAqBC,aAGnDP,KAAKU,cAAcC,KAAKR,KAtB5B,6BAyBE,cAzBF,yBA4BE,WACEH,KAAKU,cAAcE,QAAQ,YACzBC,EAAaC,kBA9BnB,0BAkCE,SAAaC,GACXf,KAAKO,WAAWQ,OAASA,MAnC7BC,GAAgDC,kDAAnCvB,GAA0BF,2DAA1BE,EAA0BwB,iYDfvC1B,4BAAkCA,qiBCerBE,EAAb,wBCSayB,EAAb,eAAaA,KAAbC,iFAAaD,4DAdF,CACPE,KACAC,aAAsC5B,GACtC6B,IACAC,IACAC,KACAC,KACAC,SAOSR,EAAb","names":["i0","ctx_r4","SsgDefinitionFormComponent","substanceFormService","gaService","cvService","a","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","specifiedSubstanceG3","definition","t","resetState","subscriptions","push","forEach","subscription","unsubscribe","access","s","SubstanceFormBase","selectors","SsgDefinitionFormModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatInputModule","MatFormFieldModule","ReactiveFormsModule","FormsModule"],"sources":["./src/app/core/substance-form/ssg-definition-form/ssg-definition-form.component.html","./src/app/core/substance-form/ssg-definition-form/ssg-definition-form.component.ts","./src/app/core/substance-form/ssg-definition-form/ssg-definition-form.module.ts"],"sourcesContent":["
\n
\n \n \n \n \n \n
\n\n
\n
\n \n
\n
\n\n
","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Definition } from '@gsrs-core/substance';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\n\n@Component({\n selector: 'app-ssg-definition-form',\n templateUrl: './ssg-definition-form.component.html',\n styleUrls: ['./ssg-definition-form.component.scss']\n})\n\nexport class SsgDefinitionFormComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n definition: Definition;\n private subscriptions: Array = [];\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form ssg 3 definition';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Definition');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n if (substance.specifiedSubstanceG3.definition == null) {\n substance.specifiedSubstanceG3.definition = {};\n }\n this.substanceFormService.resetState();\n this.definition = substance.specifiedSubstanceG3.definition;\n // this.definition.references = [];\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.definition.access = access;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SsgDefinitionFormComponent } from './ssg-definition-form.component';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SsgDefinitionFormComponent),\n SubstanceFormModule,\n MatInputModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule\n ],\n declarations: [\n SsgDefinitionFormComponent\n ]\n})\n\nexport class SsgDefinitionFormModule { }\n"],"sourceRoot":"webpack:///","file":"4300.6c61768afc9aeda9.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4333.ff5051a1fee7fc8f.js b/frontend/src/main/resources/static/4333.5c32a6f78a43f792.js similarity index 76% rename from frontend/src/main/resources/static/4333.ff5051a1fee7fc8f.js rename to frontend/src/main/resources/static/4333.5c32a6f78a43f792.js index 38c7ed3..7581bc7 100644 --- a/frontend/src/main/resources/static/4333.ff5051a1fee7fc8f.js +++ b/frontend/src/main/resources/static/4333.5c32a6f78a43f792.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4333],{94333:function($,p,o){o.r(p),o.d(p,{StructureDetailsModule:function(){return V}});var Z=o(48047),S=o(78069),m=o(36362),C=o(24582),x=o(7318),A=o(9552),y=o(2756),b=o(52149),I=o(24874),w=o(50253),v=o(59295),q=o(53141),e=o(76442),_=o(50318),U=o(95758),M=o(66088),T=o(65590),O=o(9292),D=o(73430),h=o(26131);function N(n,a){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e._uU(2,"Additional stereochemistry"),e.qZA(),e.TgZ(3,"div",14),e._uU(4),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(4),e.Oqu(s.structure.atropisomerism)}}function J(n,a){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e._uU(2,"Stereo Comments"),e.qZA(),e.TgZ(3,"div",24),e._uU(4),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(4),e.Oqu(s.structure.stereoComments)}}function P(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"a",25),e.NdJ("click",function(){return e.CHM(s),e.oxw(2).toggleReferences()}),e.TgZ(3,"span"),e._uU(4),e.qZA(),e._UZ(5,"mat-icon",26),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw(2);e.xp6(4),e.hij("",!1===t.showDef?"Show":"Hide"," References"),e.xp6(1),e.s9C("svgIcon",t.defIcon)}}function H(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"a",25),e.NdJ("click",function(){return e.CHM(s),e.oxw(2).toggleSmiles()}),e.TgZ(3,"span"),e._uU(4),e.qZA(),e._UZ(5,"mat-icon",26),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw(2);e.xp6(4),e.hij("",!1===t.showSmiles?"Show":"Hide"," SMILES / InChi"),e.xp6(1),e.s9C("svgIcon",t.smilesIcon)}}function Q(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"a",29),e.NdJ("click",function(){return e.CHM(s),e.oxw(3).toggleNames()}),e.TgZ(1,"span"),e._uU(2),e.qZA(),e._UZ(3,"mat-icon",26),e.qZA()}if(2&n){var t=e.oxw(3);e.xp6(2),e.hij("",!1===t.showNames?"Show":"Hide"," Systematic Names"),e.xp6(1),e.s9C("svgIcon",t.nameIcon)}}function k(n,a){1&n&&(e.TgZ(0,"span",30),e._uU(1,"No Systematic Names"),e.qZA())}function E(n,a){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.YNc(2,Q,4,2,"a",27),e.YNc(3,k,2,0,"span",28),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(2),e.Q6J("ngIf",s.systematic.length>0),e.xp6(1),e.Q6J("ngIf",s.systematic.length<1)}}function Y(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",8),e.TgZ(2,"div"),e.TgZ(3,"div",9),e.TgZ(4,"div",10),e._uU(5,"Stereochemistry"),e.qZA(),e.TgZ(6,"div",11),e._uU(7),e.qZA(),e.qZA(),e.TgZ(8,"div",9),e.TgZ(9,"div",10),e._uU(10,"Molecular Formula"),e.qZA(),e._UZ(11,"div",12),e.qZA(),e.TgZ(12,"div",9),e.TgZ(13,"div",10),e._uU(14,"Molecular Weight"),e.qZA(),e.TgZ(15,"div",13),e._uU(16),e.ALo(17,"number"),e.qZA(),e.qZA(),e.TgZ(18,"div",9),e.TgZ(19,"div",10),e._uU(20,"Optical Activity"),e.qZA(),e.TgZ(21,"div",14),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",9),e.TgZ(24,"div",10),e._uU(25,"Defined Stereocenters"),e.qZA(),e.TgZ(26,"div",14),e._uU(27),e.qZA(),e.qZA(),e.TgZ(28,"div",9),e.TgZ(29,"div",10),e._uU(30,"E/Z Centers"),e.qZA(),e.TgZ(31,"div",14),e._uU(32),e.qZA(),e.qZA(),e.TgZ(33,"div",9),e.TgZ(34,"div",10),e._uU(35,"Charge"),e.qZA(),e.TgZ(36,"div",14),e._uU(37),e.qZA(),e.qZA(),e.YNc(38,N,5,1,"div",15),e.YNc(39,J,5,1,"div",15),e.YNc(40,P,6,2,"div",15),e.YNc(41,H,6,2,"div",15),e.YNc(42,E,4,2,"div",15),e.qZA(),e.TgZ(43,"div",16),e.TgZ(44,"div",17),e.TgZ(45,"a",18),e._UZ(46,"mat-icon",19),e.qZA(),e.TgZ(47,"a",20),e._UZ(48,"mat-icon",21),e.qZA(),e.qZA(),e.TgZ(49,"img",22),e.NdJ("click",function(){e.CHM(s);var i=e.oxw(),c=e.MAs(25);return i.openModal(c)}),e.qZA(),e._UZ(50,"br"),e.TgZ(51,"button",23),e.NdJ("click",function(){return e.CHM(s),e.oxw().toggleStereo()}),e._uU(52),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw();e.xp6(7),e.Oqu(t.structure.stereochemistry),e.xp6(4),e.Q6J("innerHTML",t.structure.formula,e.oJD),e.xp6(5),e.Oqu(e.xi3(17,21,t.structure.mwt,t.rounding)),e.xp6(6),e.Oqu(t.structure.opticalActivity),e.xp6(5),e.AsE("",t.structure.definedStereo," / ",t.structure.stereoCenters,""),e.xp6(5),e.Oqu(t.structure.ezCenters),e.xp6(5),e.Oqu(t.structure.charge),e.xp6(1),e.Q6J("ngIf",t.structure.atropisomerism),e.xp6(1),e.Q6J("ngIf",t.structure.stereoComments),e.xp6(1),e.Q6J("ngIf",(null==t.structure.references?null:t.structure.references.length)>0),e.xp6(1),e.Q6J("ngIf",t.structure.smiles),e.xp6(1),e.Q6J("ngIf",t.systematic),e.xp6(3),e.MGl("download","",t.substance.approvalID?t.substance.approvalID.toString():t.substance.uuid.toString(),".mol"),e.Q6J("href",t.molfileHref,e.LSH),e.xp6(2),e.Q6J("href",t.searchHref,e.LSH),e.xp6(2),e.Q6J("entityId",t.structure.id)("stereo",t.showStereo)("version",t.substance.version),e.xp6(2),e.Q6J("disabled",0==t.structure.definedStereo),e.xp6(1),e.hij("",!1===t.showStereo?"Show":"Hide"," Stereo")}}function F(n,a){if(1&n&&(e.TgZ(0,"mat-list-item"),e._uU(1),e.qZA()),2&n){var s=a.$implicit;e.xp6(1),e.hij(" ",s," ")}}function R(n,a){if(1&n&&(e.TgZ(0,"div",31),e._UZ(1,"img",32),e.qZA()),2&n){var s=e.oxw();e.xp6(1),e.Q6J("entityId",s.structure.id)("stereo",s.showStereo)("version",s.substance.version)}}var z=function(){var n=function(a){(0,C.Z)(t,a);var s=(0,x.Z)(t);function t(u,i,c,g,d,l,f){var r;return(0,S.Z)(this,t),(r=s.call(this)).utilService=u,r.structureService=i,r.gaService=c,r.sanitizer=g,r.dialog=d,r.overlayContainerService=l,r.configService=f,r.showDef=!1,r.showSmiles=!1,r.defIcon="drop_down",r.smilesIcon="drop_down",r.nameIcon="drop_down",r.showStereo=!1,r.substanceUpdated=new w.x,r.showNames=!1,r.rounding="1.0-2",r}return(0,Z.Z)(t,[{key:"ngOnInit",value:function(){var i=this;if(null!=this.substance){this.getSysNames(),this.structure=this.substance.structure,this.structure.smiles&&(this.structureService.getInchi(this.substance.uuid).pipe((0,v.q)(1)).subscribe(function(l){i.inchi=l.replace(/\"/g,"")}),this.structureService.getOtherInchi(this.substance.uuid).pipe((0,v.q)(1)).subscribe(function(l){i.otherInchi=l.replace(/\"/g,"")})),this.structure.formula=this.structureService.formatFormula(this.structure);var d=this.sanitizer.bypassSecurityTrustUrl("data:text;charset=UTF-8,"+encodeURIComponent(this.structure.molfile));this.molfileHref=d,this.searchHref="structure-search?structure="+this.structure.id}this.overlayContainer=this.overlayContainerService.getContainerElement(),this.configService.configData&&this.configService.configData.molWeightRounding&&(this.rounding="1.0-"+this.configService.configData.molWeightRounding)}},{key:"getSysNames",value:function(){var i=this;this.substance&&this.substance.names&&(this.systematic=[],this.substance.names.forEach(function(c){"sys"===c.type&&i.systematic.push(c.name)}))}},{key:"openModal",value:function(i){var c=this,g=this.dialog.open(i,{width:"650px",panelClass:"structure-image-panel"});this.overlayContainer.style.zIndex="1002",g.afterClosed().subscribe(function(d){c.overlayContainer.style.zIndex=null})}},{key:"ngAfterViewInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(c){if(i.substance=c,!i.structure||i.structure.id!==i.substance.structure.id||i.structure.molfile!==i.substance.structure.molfile){i.getSysNames(),i.structure.smiles&&(i.structureService.getInchi(i.substance.uuid).pipe((0,v.q)(1)).subscribe(function(r){i.inchi=r.replace(/\"/g,"")}),i.structureService.getOtherInchi(i.substance.uuid).pipe((0,v.q)(1)).subscribe(function(r){i.otherInchi=r.replace(/\"/g,"")})),i.structure=i.substance.structure;var f=i.sanitizer.bypassSecurityTrustUrl("data:text;charset=UTF-8,"+encodeURIComponent(i.structure.molfile));i.molfileHref=f}})}},{key:"toggleReferences",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","references",this.showDef?0:1),this.showDef=!this.showDef,this.defIcon=this.showDef?"drop_up":"drop_down"}},{key:"toggleNames",value:function(){this.showNames=!this.showNames,this.nameIcon=this.showNames?"drop_up":"drop_down"}},{key:"toggleSmiles",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","smiles",this.showSmiles?0:1),this.showSmiles=!this.showSmiles,this.smilesIcon=this.showSmiles?"drop_up":"drop_down"}},{key:"toggleStereo",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","stereo",this.showStereo?0:1),this.showStereo=!this.showStereo}}]),t}(y.B);return n.\u0275fac=function(s){return new(s||n)(e.Y36(b.F),e.Y36(A.D),e.Y36(I.$),e.Y36(_.H7),e.Y36(U.uw),e.Y36(M.Xj),e.Y36(q.E))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-structure-details"]],features:[e.qOj],decls:26,vars:10,consts:[[4,"ngIf"],[2,"width","100%"],[2,"min-width","50%",3,"hidden"],[3,"substance","references"],[2,"width","100%",3,"hidden"],[1,"indent"],[4,"ngFor","ngForOf"],["structureTemplate",""],[1,"structure-card-content"],[1,"name-value"],[1,"name"],[1,"value","black-pill"],[1,"value","blue-font",3,"innerHTML"],[1,"value","blue-font"],[1,"value","gray-pill"],["class","name-value",4,"ngIf"],[1,"structure-image-container","text-center"],[1,"float-right"],["title","Download molfile",1,"mat-icon-button",3,"href","download"],["svgIcon","get_app"],["title","Structure Search",1,"mat-icon-button",3,"href"],["svgIcon","search"],["appSubstanceImage","","size","250",1,"structure-img",3,"entityId","stereo","version","click"],[1,"mat-raised-button","mat-primary",3,"disabled","click"],[1,"value","stereo-comments"],["tabindex","0","role","link",1,"blue-font","references-link",3,"click"],[3,"svgIcon"],["class","blue-font references-link",3,"click",4,"ngIf"],["class","disabled",4,"ngIf"],[1,"blue-font","references-link",3,"click"],[1,"disabled"],["mat-dialog-content",""],["appSubstanceImage","","size","250",1,"structure-img-big",3,"entityId","stereo","version"]],template:function(s,t){1&s&&(e.YNc(0,Y,53,24,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"h3"),e._uU(4,"References"),e.qZA(),e._UZ(5,"app-references-manager",3),e.qZA(),e.TgZ(6,"div",4),e.TgZ(7,"h3"),e._uU(8,"SMILES:"),e.qZA(),e.TgZ(9,"p",5),e._uU(10),e.qZA(),e.TgZ(11,"h3"),e._uU(12,"InChiKey:"),e.qZA(),e.TgZ(13,"p",5),e._uU(14),e.qZA(),e.TgZ(15,"h3"),e._uU(16,"InChi:"),e.qZA(),e.TgZ(17,"p",5),e._uU(18),e.qZA(),e.qZA(),e.TgZ(19,"div",4),e.TgZ(20,"h3"),e._uU(21,"Systematic Names:"),e.qZA(),e.TgZ(22,"mat-list"),e.YNc(23,F,2,1,"mat-list-item",6),e.qZA(),e.qZA(),e.YNc(24,R,2,3,"ng-template",null,7,e.W1O),e.qZA()),2&s&&(e.Q6J("ngIf",t.structure),e.xp6(2),e.Q6J("hidden",!t.showDef),e.xp6(3),e.Q6J("substance",t.substance)("references",t.structure.references),e.xp6(1),e.Q6J("hidden",!t.showSmiles),e.xp6(4),e.Oqu(t.structure.smiles),e.xp6(4),e.Oqu(t.inchi),e.xp6(4),e.Oqu(t.otherInchi),e.xp6(1),e.Q6J("hidden",!t.showNames),e.xp6(4),e.Q6J("ngForOf",t.systematic))},directives:[m.O5,T.Hw,O.m,D.C,h.i$,m.sg,h.Tg],pipes:[m.JJ],styles:[".structure-card-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.structure-image-container[_ngcontent-%COMP%]{padding-left:20px;-ms-flex-positive:1;flex-grow:1}.structure-image-container[_ngcontent-%COMP%] .structure-img[_ngcontent-%COMP%]{width:100%;height:auto;margin-top:-12%;margin-bottom:-2%;cursor:zoom-in}.structure-img-big[_ngcontent-%COMP%]{width:100%;height:500px!important}.blue-font[_ngcontent-%COMP%] sub{margin-bottom:-10px}.content-fix[_ngcontent-%COMP%]{min-height:250px;padding:15px 20px}.src-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:50%}.actions[_ngcontent-%COMP%]{height:75px}.fixActionRow[_ngcontent-%COMP%]{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.spacer[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1} .mat-dialog-container{height:unset!important;max-height:90%}.black-pill[_ngcontent-%COMP%], .gray-pill[_ngcontent-%COMP%]{color:#fff;padding:1px 7px;border-radius:11px}.black-pill[_ngcontent-%COMP%]{background-color:#000}.gray-pill[_ngcontent-%COMP%]{background-color:gray}.name[_ngcontent-%COMP%]{min-width:175px}@media (max-width: 700px){.structure-card-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}}.references-link[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.float-right[_ngcontent-%COMP%]{float:right}.icon-button[_ngcontent-%COMP%]{padding:5px;height:34px;width:34px;min-width:34px;margin:2px}.indent[_ngcontent-%COMP%]{padding-left:15px;font-family:Menlo,Monaco,Consolas,Courier New,monospace}.stereo-comments[_ngcontent-%COMP%]{max-width:175px}"]}),n}(),j=o(64061),L=o(38277),W=o(24054),V=function(){var n=(0,Z.Z)(function a(){(0,S.Z)(this,a)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[m.ez,j.o.forChild(z),T.Ps,L.V,W.f,h.ie]]}),n}()}}]); -//# sourceMappingURL=4333.ff5051a1fee7fc8f.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4333],{94333:function($,p,r){r.r(p),r.d(p,{StructureDetailsModule:function(){return V}});var Z=r(1884),S=r(39117),m=r(36362),C=r(46751),x=r(56101),A=r(1790),y=r(2756),b=r(52149),I=r(24874),w=r(50253),v=r(59295),q=r(53141),e=r(86613),_=r(50318),U=r(95758),M=r(54244),T=r(65590),O=r(9292),D=r(73430),h=r(26131);function N(n,a){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e._uU(2,"Additional stereochemistry"),e.qZA(),e.TgZ(3,"div",14),e._uU(4),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(4),e.Oqu(s.structure.atropisomerism)}}function J(n,a){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e._uU(2,"Stereo Comments"),e.qZA(),e.TgZ(3,"div",24),e._uU(4),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(4),e.Oqu(s.structure.stereoComments)}}function P(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"a",25),e.NdJ("click",function(){return e.CHM(s),e.oxw(2).toggleReferences()}),e.TgZ(3,"span"),e._uU(4),e.qZA(),e._UZ(5,"mat-icon",26),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw(2);e.xp6(4),e.hij("",!1===t.showDef?"Show":"Hide"," References"),e.xp6(1),e.s9C("svgIcon",t.defIcon)}}function H(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"a",25),e.NdJ("click",function(){return e.CHM(s),e.oxw(2).toggleSmiles()}),e.TgZ(3,"span"),e._uU(4),e.qZA(),e._UZ(5,"mat-icon",26),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw(2);e.xp6(4),e.hij("",!1===t.showSmiles?"Show":"Hide"," SMILES / InChi"),e.xp6(1),e.s9C("svgIcon",t.smilesIcon)}}function k(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"a",29),e.NdJ("click",function(){return e.CHM(s),e.oxw(3).toggleNames()}),e.TgZ(1,"span"),e._uU(2),e.qZA(),e._UZ(3,"mat-icon",26),e.qZA()}if(2&n){var t=e.oxw(3);e.xp6(2),e.hij("",!1===t.showNames?"Show":"Hide"," Systematic Names"),e.xp6(1),e.s9C("svgIcon",t.nameIcon)}}function Q(n,a){1&n&&(e.TgZ(0,"span",30),e._uU(1,"No Systematic Names"),e.qZA())}function E(n,a){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.YNc(2,k,4,2,"a",27),e.YNc(3,Q,2,0,"span",28),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(2),e.Q6J("ngIf",s.systematic.length>0),e.xp6(1),e.Q6J("ngIf",s.systematic.length<1)}}function Y(n,a){if(1&n){var s=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",8),e.TgZ(2,"div"),e.TgZ(3,"div",9),e.TgZ(4,"div",10),e._uU(5,"Stereochemistry"),e.qZA(),e.TgZ(6,"div",11),e._uU(7),e.qZA(),e.qZA(),e.TgZ(8,"div",9),e.TgZ(9,"div",10),e._uU(10,"Molecular Formula"),e.qZA(),e._UZ(11,"div",12),e.qZA(),e.TgZ(12,"div",9),e.TgZ(13,"div",10),e._uU(14,"Molecular Weight"),e.qZA(),e.TgZ(15,"div",13),e._uU(16),e.ALo(17,"number"),e.qZA(),e.qZA(),e.TgZ(18,"div",9),e.TgZ(19,"div",10),e._uU(20,"Optical Activity"),e.qZA(),e.TgZ(21,"div",14),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",9),e.TgZ(24,"div",10),e._uU(25,"Defined Stereocenters"),e.qZA(),e.TgZ(26,"div",14),e._uU(27),e.qZA(),e.qZA(),e.TgZ(28,"div",9),e.TgZ(29,"div",10),e._uU(30,"E/Z Centers"),e.qZA(),e.TgZ(31,"div",14),e._uU(32),e.qZA(),e.qZA(),e.TgZ(33,"div",9),e.TgZ(34,"div",10),e._uU(35,"Charge"),e.qZA(),e.TgZ(36,"div",14),e._uU(37),e.qZA(),e.qZA(),e.YNc(38,N,5,1,"div",15),e.YNc(39,J,5,1,"div",15),e.YNc(40,P,6,2,"div",15),e.YNc(41,H,6,2,"div",15),e.YNc(42,E,4,2,"div",15),e.qZA(),e.TgZ(43,"div",16),e.TgZ(44,"div",17),e.TgZ(45,"a",18),e._UZ(46,"mat-icon",19),e.qZA(),e.TgZ(47,"a",20),e._UZ(48,"mat-icon",21),e.qZA(),e.qZA(),e.TgZ(49,"img",22),e.NdJ("click",function(){e.CHM(s);var i=e.oxw(),c=e.MAs(25);return i.openModal(c)}),e.qZA(),e._UZ(50,"br"),e.TgZ(51,"button",23),e.NdJ("click",function(){return e.CHM(s),e.oxw().toggleStereo()}),e._uU(52),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){var t=e.oxw();e.xp6(7),e.Oqu(t.structure.stereochemistry),e.xp6(4),e.Q6J("innerHTML",t.structure.formula,e.oJD),e.xp6(5),e.Oqu(e.xi3(17,21,t.structure.mwt,t.rounding)),e.xp6(6),e.Oqu(t.structure.opticalActivity),e.xp6(5),e.AsE("",t.structure.definedStereo," / ",t.structure.stereoCenters,""),e.xp6(5),e.Oqu(t.structure.ezCenters),e.xp6(5),e.Oqu(t.structure.charge),e.xp6(1),e.Q6J("ngIf",t.structure.atropisomerism),e.xp6(1),e.Q6J("ngIf",t.structure.stereoComments),e.xp6(1),e.Q6J("ngIf",(null==t.structure.references?null:t.structure.references.length)>0),e.xp6(1),e.Q6J("ngIf",t.structure.smiles),e.xp6(1),e.Q6J("ngIf",t.systematic),e.xp6(3),e.MGl("download","",t.substance.approvalID?t.substance.approvalID.toString():t.substance.uuid.toString(),".mol"),e.Q6J("href",t.molfileHref,e.LSH),e.xp6(2),e.Q6J("href",t.searchHref,e.LSH),e.xp6(2),e.Q6J("entityId",t.structure.id)("stereo",t.showStereo)("version",t.substance.version),e.xp6(2),e.Q6J("disabled",0==t.structure.definedStereo),e.xp6(1),e.hij("",!1===t.showStereo?"Show":"Hide"," Stereo")}}function F(n,a){if(1&n&&(e.TgZ(0,"mat-list-item"),e._uU(1),e.qZA()),2&n){var s=a.$implicit;e.xp6(1),e.hij(" ",s," ")}}function R(n,a){if(1&n&&(e.TgZ(0,"div",31),e._UZ(1,"img",32),e.qZA()),2&n){var s=e.oxw();e.xp6(1),e.Q6J("entityId",s.structure.id)("stereo",s.showStereo)("version",s.substance.version)}}var z=function(){var n=function(a){(0,C.Z)(t,a);var s=(0,x.Z)(t);function t(u,i,c,g,d,l,f){var o;return(0,S.Z)(this,t),(o=s.call(this)).utilService=u,o.structureService=i,o.gaService=c,o.sanitizer=g,o.dialog=d,o.overlayContainerService=l,o.configService=f,o.showDef=!1,o.showSmiles=!1,o.defIcon="drop_down",o.smilesIcon="drop_down",o.nameIcon="drop_down",o.showStereo=!1,o.substanceUpdated=new w.x,o.showNames=!1,o.rounding="1.0-2",o}return(0,Z.Z)(t,[{key:"ngOnInit",value:function(){var i=this;if(null!=this.substance){this.getSysNames(),this.structure=this.substance.structure,this.structure.smiles&&(this.structureService.getInchi(this.substance.uuid).pipe((0,v.q)(1)).subscribe(function(l){i.inchi=l.replace(/\"/g,"")}),this.structureService.getOtherInchi(this.substance.uuid).pipe((0,v.q)(1)).subscribe(function(l){i.otherInchi=l.replace(/\"/g,"")})),this.structure.formula=this.structureService.formatFormula(this.structure);var d=this.sanitizer.bypassSecurityTrustUrl("data:text;charset=UTF-8,"+encodeURIComponent(this.structure.molfile));this.molfileHref=d,this.searchHref="structure-search?structure="+this.structure.id}this.overlayContainer=this.overlayContainerService.getContainerElement(),this.configService.configData&&this.configService.configData.molWeightRounding&&(this.rounding="1.0-"+this.configService.configData.molWeightRounding)}},{key:"getSysNames",value:function(){var i=this;this.substance&&this.substance.names&&(this.systematic=[],this.substance.names.forEach(function(c){"sys"===c.type&&i.systematic.push(c.name)}))}},{key:"openModal",value:function(i){var c=this,g=this.dialog.open(i,{width:"650px",panelClass:"structure-image-panel"});this.overlayContainer.style.zIndex="1002",g.afterClosed().subscribe(function(d){c.overlayContainer.style.zIndex=null})}},{key:"ngAfterViewInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(c){if(i.substance=c,!i.structure||i.structure.id!==i.substance.structure.id||i.structure.molfile!==i.substance.structure.molfile){i.getSysNames(),i.structure.smiles&&(i.structureService.getInchi(i.substance.uuid).pipe((0,v.q)(1)).subscribe(function(o){i.inchi=o.replace(/\"/g,"")}),i.structureService.getOtherInchi(i.substance.uuid).pipe((0,v.q)(1)).subscribe(function(o){i.otherInchi=o.replace(/\"/g,"")})),i.structure=i.substance.structure;var f=i.sanitizer.bypassSecurityTrustUrl("data:text;charset=UTF-8,"+encodeURIComponent(i.structure.molfile));i.molfileHref=f}})}},{key:"toggleReferences",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","references",this.showDef?0:1),this.showDef=!this.showDef,this.defIcon=this.showDef?"drop_up":"drop_down"}},{key:"toggleNames",value:function(){this.showNames=!this.showNames,this.nameIcon=this.showNames?"drop_up":"drop_down"}},{key:"toggleSmiles",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","smiles",this.showSmiles?0:1),this.showSmiles=!this.showSmiles,this.smilesIcon=this.showSmiles?"drop_up":"drop_down"}},{key:"toggleStereo",value:function(){this.gaService.sendEvent(this.analyticsEventCategory,"link-toggle","stereo",this.showStereo?0:1),this.showStereo=!this.showStereo}}]),t}(y.B);return n.\u0275fac=function(s){return new(s||n)(e.Y36(b.F),e.Y36(A.D),e.Y36(I.$),e.Y36(_.H7),e.Y36(U.uw),e.Y36(M.Xj),e.Y36(q.E))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-structure-details"]],features:[e.qOj],decls:26,vars:10,consts:[[4,"ngIf"],[2,"width","100%"],[2,"min-width","50%",3,"hidden"],[3,"substance","references"],[2,"width","100%",3,"hidden"],[1,"indent"],[4,"ngFor","ngForOf"],["structureTemplate",""],[1,"structure-card-content"],[1,"name-value"],[1,"name"],[1,"value","black-pill"],[1,"value","blue-font",3,"innerHTML"],[1,"value","blue-font"],[1,"value","gray-pill"],["class","name-value",4,"ngIf"],[1,"structure-image-container","text-center"],[1,"float-right"],["title","Download molfile",1,"mat-icon-button",3,"href","download"],["svgIcon","get_app"],["title","Structure Search",1,"mat-icon-button",3,"href"],["svgIcon","search"],["appSubstanceImage","","size","250",1,"structure-img",3,"entityId","stereo","version","click"],[1,"mat-raised-button","mat-primary",3,"disabled","click"],[1,"value","stereo-comments"],["tabindex","0","role","link",1,"blue-font","references-link",3,"click"],[3,"svgIcon"],["class","blue-font references-link",3,"click",4,"ngIf"],["class","disabled",4,"ngIf"],[1,"blue-font","references-link",3,"click"],[1,"disabled"],["mat-dialog-content",""],["appSubstanceImage","","size","250",1,"structure-img-big",3,"entityId","stereo","version"]],template:function(s,t){1&s&&(e.YNc(0,Y,53,24,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"h3"),e._uU(4,"References"),e.qZA(),e._UZ(5,"app-references-manager",3),e.qZA(),e.TgZ(6,"div",4),e.TgZ(7,"h3"),e._uU(8,"SMILES:"),e.qZA(),e.TgZ(9,"p",5),e._uU(10),e.qZA(),e.TgZ(11,"h3"),e._uU(12,"InChiKey:"),e.qZA(),e.TgZ(13,"p",5),e._uU(14),e.qZA(),e.TgZ(15,"h3"),e._uU(16,"InChi:"),e.qZA(),e.TgZ(17,"p",5),e._uU(18),e.qZA(),e.qZA(),e.TgZ(19,"div",4),e.TgZ(20,"h3"),e._uU(21,"Systematic Names:"),e.qZA(),e.TgZ(22,"mat-list"),e.YNc(23,F,2,1,"mat-list-item",6),e.qZA(),e.qZA(),e.YNc(24,R,2,3,"ng-template",null,7,e.W1O),e.qZA()),2&s&&(e.Q6J("ngIf",t.structure),e.xp6(2),e.Q6J("hidden",!t.showDef),e.xp6(3),e.Q6J("substance",t.substance)("references",t.structure.references),e.xp6(1),e.Q6J("hidden",!t.showSmiles),e.xp6(4),e.Oqu(t.structure.smiles),e.xp6(4),e.Oqu(t.inchi),e.xp6(4),e.Oqu(t.otherInchi),e.xp6(1),e.Q6J("hidden",!t.showNames),e.xp6(4),e.Q6J("ngForOf",t.systematic))},directives:[m.O5,T.Hw,O.m,D.C,h.i$,m.sg,h.Tg],pipes:[m.JJ],styles:[".structure-card-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.structure-image-container[_ngcontent-%COMP%]{padding-left:20px;-ms-flex-positive:1;flex-grow:1}.structure-image-container[_ngcontent-%COMP%] .structure-img[_ngcontent-%COMP%]{width:100%;height:auto;cursor:zoom-in}.structure-img-big[_ngcontent-%COMP%]{width:100%;height:500px!important}.blue-font[_ngcontent-%COMP%] sub{margin-bottom:-10px}.content-fix[_ngcontent-%COMP%]{min-height:250px;padding:15px 20px}.src-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:50%}.actions[_ngcontent-%COMP%]{height:75px}.fixActionRow[_ngcontent-%COMP%]{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.spacer[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1} .mat-dialog-container{height:unset!important;max-height:90%}.black-pill[_ngcontent-%COMP%], .gray-pill[_ngcontent-%COMP%]{color:var(--regular-white-color);padding:1px 7px;border-radius:11px}.black-pill[_ngcontent-%COMP%]{background-color:var(--regular-black-color)}.gray-pill[_ngcontent-%COMP%]{background-color:var(--regular-grey-color)}.name[_ngcontent-%COMP%]{min-width:175px}@media (max-width: 700px){.structure-card-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}}.references-link[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.float-right[_ngcontent-%COMP%]{float:right}.icon-button[_ngcontent-%COMP%]{padding:5px;height:34px;width:34px;min-width:34px;margin:2px}.indent[_ngcontent-%COMP%]{padding-left:15px;font-family:Menlo,Monaco,Consolas,Courier New,monospace}.stereo-comments[_ngcontent-%COMP%]{max-width:175px}"]}),n}(),j=r(64061),L=r(38277),W=r(24054),V=function(){var n=(0,Z.Z)(function a(){(0,S.Z)(this,a)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[m.ez,j.o.forChild(z),T.Ps,L.V,W.f,h.ie]]}),n}()}}]); +//# sourceMappingURL=4333.5c32a6f78a43f792.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4333.ff5051a1fee7fc8f.js.map b/frontend/src/main/resources/static/4333.5c32a6f78a43f792.js.map similarity index 98% rename from frontend/src/main/resources/static/4333.ff5051a1fee7fc8f.js.map rename to frontend/src/main/resources/static/4333.5c32a6f78a43f792.js.map index 56579e9..dc50169 100644 --- a/frontend/src/main/resources/static/4333.ff5051a1fee7fc8f.js.map +++ b/frontend/src/main/resources/static/4333.5c32a6f78a43f792.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r9","ctx_r11","ctx_r15","ctx_r17","ctx_r19","StructureDetailsComponent","utilService","structureService","gaService","sanitizer","dialog","overlayContainerService","configService","r","Subject","this","substance","getSysNames","structure","smiles","getInchi","uuid","pipe","take","subscribe","i","inchi","replace","getOtherInchi","otherInchi","formula","formatFormula","uri","bypassSecurityTrustUrl","encodeURIComponent","molfile","molfileHref","searchHref","id","overlayContainer","getContainerElement","configData","molWeightRounding","rounding","names","systematic","forEach","name","type","push","templateRef","dialogRef","open","width","panelClass","style","zIndex","afterClosed","c","substanceUpdated","sendEvent","analyticsEventCategory","showDef","defIcon","showNames","nameIcon","showSmiles","smilesIcon","showStereo","t","SubstanceCardBase","selectors","StructureDetailsModule","Z","CommonModule","DynamicComponentLoaderModule","MatIconModule","ReferencesManagerModule","SubstanceImageModule","MatListModule"],"sources":["./src/app/core/substance-details/structure-details/structure-details.component.html","./src/app/core/substance-details/structure-details/structure-details.component.ts","./src/app/core/substance-details/structure-details/structure-details.module.ts"],"sourcesContent":["
\r\n
\r\n
\r\n
\r\n
Stereochemistry
\r\n
{{structure.stereochemistry}}
\r\n
\r\n
\r\n
Molecular Formula
\r\n
\r\n
\r\n
\r\n
Molecular Weight
\r\n
{{structure.mwt | number: rounding}}
\r\n
\r\n
\r\n
Optical Activity
\r\n
{{structure.opticalActivity}}
\r\n
\r\n
\r\n
Defined Stereocenters
\r\n
{{structure.definedStereo}} / {{structure.stereoCenters}}
\r\n
\r\n
\r\n
E/Z Centers
\r\n
{{structure.ezCenters}}
\r\n
\r\n
\r\n
Charge
\r\n
{{structure.charge}}
\r\n
\r\n
\r\n
Additional stereochemistry
\r\n
{{structure.atropisomerism}}
\r\n
\r\n
\r\n
Stereo Comments
\r\n
{{structure.stereoComments}}
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n

References

\r\n \r\n
\r\n\r\n
\r\n

SMILES:

\r\n

{{structure.smiles}}

\r\n

InChiKey:

\r\n

{{inchi}}

\r\n

InChi:

\r\n

{{otherInchi}}

\r\n
\r\n \r\n
\r\n

Systematic Names:

\r\n \r\n \r\n {{name}}\r\n \r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n
","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceDetail } from '../../substance/substance.model';\r\nimport { SubstanceStructure } from '../../substance/substance.model';\r\nimport { StructureService } from '../../structure/structure.service';\r\nimport {DomSanitizer, SafeUrl} from '@angular/platform-browser';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport { take } from 'rxjs/operators';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { ConfigService } from '@gsrs-core/config';\r\n\r\n@Component({\r\n selector: 'app-structure-details',\r\n templateUrl: './structure-details.component.html',\r\n styleUrls: ['./structure-details.component.scss']\r\n})\r\nexport class StructureDetailsComponent extends SubstanceCardBase implements OnInit, AfterViewInit {\r\n structure: SubstanceStructure;\r\n showDef = false;\r\n showSmiles = false;\r\n defIcon = 'drop_down';\r\n smilesIcon = 'drop_down';\r\n nameIcon = 'drop_down';\r\n inchi: string;\r\n otherInchi: string;\r\n showStereo = false;\r\n molfileHref: any;\r\n systematic: Array;\r\n substanceUpdated = new Subject();\r\n showNames = false;\r\n searchHref: string;\r\n private overlayContainer: HTMLElement;\r\n rounding = '1.0-2';\r\n\r\n constructor(\r\n private utilService: UtilsService,\r\n private structureService: StructureService,\r\n public gaService: GoogleAnalyticsService,\r\n private sanitizer: DomSanitizer,\r\n private dialog: MatDialog,\r\n private overlayContainerService: OverlayContainer,\r\n private configService: ConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n if (this.substance != null) {\r\n this.getSysNames();\r\n this.structure = this.substance.structure;\r\n if (this.structure.smiles) {\r\n this.structureService.getInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.inchi = inchi.replace(/\\\"/g, '');\r\n });\r\n const otherInchiSub = this.structureService.getOtherInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.otherInchi = inchi.replace(/\\\"/g, '');\r\n });\r\n }\r\n this.structure.formula = this.structureService.formatFormula(this.structure);\r\n\r\n const theJSON = this.structure.molfile;\r\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text;charset=UTF-8,' + encodeURIComponent(theJSON));\r\n this.molfileHref = uri;\r\n this.searchHref = 'structure-search?structure=' + this.structure.id;\r\n }\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n if (this.configService.configData && this.configService.configData.molWeightRounding) {\r\n this.rounding = '1.0-' + this.configService.configData.molWeightRounding;\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n getSysNames() {\r\n if ( this.substance && this.substance.names) {\r\n this.systematic = [];\r\n this.substance.names.forEach (name => {\r\n if (name.type === 'sys') {\r\n this.systematic.push(name.name);\r\n }\r\n });\r\n }\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n width: '650px',\r\n panelClass: 'structure-image-panel',\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if ( !this.structure || this.structure.id !== this.substance.structure.id ||\r\n this.structure.molfile !== this.substance.structure.molfile) {\r\n this.getSysNames();\r\n if (this.structure.smiles) {\r\n const inchiSub = this.structureService.getInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.inchi = inchi.replace(/\\\"/g, '');\r\n });\r\n const otherInchiSub = this.structureService.getOtherInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.otherInchi = inchi.replace(/\\\"/g, '');\r\n });\r\n }\r\n this.structure = this.substance.structure;\r\n const theJSON = this.structure.molfile;\r\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text;charset=UTF-8,' + encodeURIComponent(theJSON));\r\n this.molfileHref = uri;\r\n }\r\n\r\n });\r\n }\r\n\r\n toggleReferences() {\r\n\r\n const value = this.showDef ? 0 : 1;\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'references', value);\r\n\r\n this.showDef = !this.showDef;\r\n if (!this.showDef) {\r\n this.defIcon = 'drop_down';\r\n } else {\r\n this.defIcon = 'drop_up';\r\n }\r\n }\r\n\r\n\r\n toggleNames() {\r\n const value = this.showNames ? 0 : 1;\r\n\r\n this.showNames = !this.showNames;\r\n if (!this.showNames) {\r\n this.nameIcon = 'drop_down';\r\n } else {\r\n this.nameIcon = 'drop_up';\r\n }\r\n }\r\n\r\n\r\n toggleSmiles() {\r\n\r\n const value = this.showSmiles ? 0 : 1;\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'smiles', value);\r\n\r\n this.showSmiles = !this.showSmiles;\r\n if (!this.showSmiles) {\r\n this.smilesIcon = 'drop_down';\r\n } else {\r\n this.smilesIcon = 'drop_up';\r\n }\r\n }\r\n\r\n toggleStereo() {\r\n const value = this.showStereo ? 0 : 1;\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'stereo', value);\r\n this.showStereo = !this.showStereo;\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { StructureDetailsComponent } from './structure-details.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(StructureDetailsComponent),\r\n MatIconModule,\r\n ReferencesManagerModule,\r\n SubstanceImageModule,\r\n MatListModule\r\n ],\r\n declarations: [\r\n StructureDetailsComponent\r\n ]\r\n})\r\nexport class StructureDetailsModule { }\r\n"],"sourceRoot":"webpack:///","file":"4333.ff5051a1fee7fc8f.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r9","ctx_r11","ctx_r15","ctx_r17","ctx_r19","StructureDetailsComponent","utilService","structureService","gaService","sanitizer","dialog","overlayContainerService","configService","o","Subject","this","substance","getSysNames","structure","smiles","getInchi","uuid","pipe","take","subscribe","i","inchi","replace","getOtherInchi","otherInchi","formula","formatFormula","uri","bypassSecurityTrustUrl","encodeURIComponent","molfile","molfileHref","searchHref","id","overlayContainer","getContainerElement","configData","molWeightRounding","rounding","names","systematic","forEach","name","type","push","templateRef","dialogRef","open","width","panelClass","style","zIndex","afterClosed","c","substanceUpdated","sendEvent","analyticsEventCategory","showDef","defIcon","showNames","nameIcon","showSmiles","smilesIcon","showStereo","t","SubstanceCardBase","selectors","StructureDetailsModule","Z","CommonModule","DynamicComponentLoaderModule","MatIconModule","ReferencesManagerModule","SubstanceImageModule","MatListModule"],"sources":["./src/app/core/substance-details/structure-details/structure-details.component.html","./src/app/core/substance-details/structure-details/structure-details.component.ts","./src/app/core/substance-details/structure-details/structure-details.module.ts"],"sourcesContent":["
\r\n
\r\n
\r\n
\r\n
Stereochemistry
\r\n
{{structure.stereochemistry}}
\r\n
\r\n
\r\n
Molecular Formula
\r\n
\r\n
\r\n
\r\n
Molecular Weight
\r\n
{{structure.mwt | number: rounding}}
\r\n
\r\n
\r\n
Optical Activity
\r\n
{{structure.opticalActivity}}
\r\n
\r\n
\r\n
Defined Stereocenters
\r\n
{{structure.definedStereo}} / {{structure.stereoCenters}}
\r\n
\r\n
\r\n
E/Z Centers
\r\n
{{structure.ezCenters}}
\r\n
\r\n
\r\n
Charge
\r\n
{{structure.charge}}
\r\n
\r\n
\r\n
Additional stereochemistry
\r\n
{{structure.atropisomerism}}
\r\n
\r\n
\r\n
Stereo Comments
\r\n
{{structure.stereoComments}}
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n

References

\r\n \r\n
\r\n\r\n
\r\n

SMILES:

\r\n

{{structure.smiles}}

\r\n

InChiKey:

\r\n

{{inchi}}

\r\n

InChi:

\r\n

{{otherInchi}}

\r\n
\r\n \r\n
\r\n

Systematic Names:

\r\n \r\n \r\n {{name}}\r\n \r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n
","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceDetail } from '../../substance/substance.model';\r\nimport { SubstanceStructure } from '../../substance/substance.model';\r\nimport { StructureService } from '../../structure/structure.service';\r\nimport {DomSanitizer, SafeUrl} from '@angular/platform-browser';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport { take } from 'rxjs/operators';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { ConfigService } from '@gsrs-core/config';\r\n\r\n@Component({\r\n selector: 'app-structure-details',\r\n templateUrl: './structure-details.component.html',\r\n styleUrls: ['./structure-details.component.scss']\r\n})\r\nexport class StructureDetailsComponent extends SubstanceCardBase implements OnInit, AfterViewInit {\r\n structure: SubstanceStructure;\r\n showDef = false;\r\n showSmiles = false;\r\n defIcon = 'drop_down';\r\n smilesIcon = 'drop_down';\r\n nameIcon = 'drop_down';\r\n inchi: string;\r\n otherInchi: string;\r\n showStereo = false;\r\n molfileHref: any;\r\n systematic: Array;\r\n substanceUpdated = new Subject();\r\n showNames = false;\r\n searchHref: string;\r\n private overlayContainer: HTMLElement;\r\n rounding = '1.0-2';\r\n\r\n constructor(\r\n private utilService: UtilsService,\r\n private structureService: StructureService,\r\n public gaService: GoogleAnalyticsService,\r\n private sanitizer: DomSanitizer,\r\n private dialog: MatDialog,\r\n private overlayContainerService: OverlayContainer,\r\n private configService: ConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n if (this.substance != null) {\r\n this.getSysNames();\r\n this.structure = this.substance.structure;\r\n if (this.structure.smiles) {\r\n this.structureService.getInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.inchi = inchi.replace(/\\\"/g, '');\r\n });\r\n const otherInchiSub = this.structureService.getOtherInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.otherInchi = inchi.replace(/\\\"/g, '');\r\n });\r\n }\r\n this.structure.formula = this.structureService.formatFormula(this.structure);\r\n\r\n const theJSON = this.structure.molfile;\r\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text;charset=UTF-8,' + encodeURIComponent(theJSON));\r\n this.molfileHref = uri;\r\n this.searchHref = 'structure-search?structure=' + this.structure.id;\r\n }\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n if (this.configService.configData && this.configService.configData.molWeightRounding) {\r\n this.rounding = '1.0-' + this.configService.configData.molWeightRounding;\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n getSysNames() {\r\n if ( this.substance && this.substance.names) {\r\n this.systematic = [];\r\n this.substance.names.forEach (name => {\r\n if (name.type === 'sys') {\r\n this.systematic.push(name.name);\r\n }\r\n });\r\n }\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n width: '650px',\r\n panelClass: 'structure-image-panel',\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if ( !this.structure || this.structure.id !== this.substance.structure.id ||\r\n this.structure.molfile !== this.substance.structure.molfile) {\r\n this.getSysNames();\r\n if (this.structure.smiles) {\r\n const inchiSub = this.structureService.getInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.inchi = inchi.replace(/\\\"/g, '');\r\n });\r\n const otherInchiSub = this.structureService.getOtherInchi(this.substance.uuid).pipe(take(1)).subscribe(inchi => {\r\n this.otherInchi = inchi.replace(/\\\"/g, '');\r\n });\r\n }\r\n this.structure = this.substance.structure;\r\n const theJSON = this.structure.molfile;\r\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text;charset=UTF-8,' + encodeURIComponent(theJSON));\r\n this.molfileHref = uri;\r\n }\r\n\r\n });\r\n }\r\n\r\n toggleReferences() {\r\n\r\n const value = this.showDef ? 0 : 1;\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'references', value);\r\n\r\n this.showDef = !this.showDef;\r\n if (!this.showDef) {\r\n this.defIcon = 'drop_down';\r\n } else {\r\n this.defIcon = 'drop_up';\r\n }\r\n }\r\n\r\n\r\n toggleNames() {\r\n const value = this.showNames ? 0 : 1;\r\n\r\n this.showNames = !this.showNames;\r\n if (!this.showNames) {\r\n this.nameIcon = 'drop_down';\r\n } else {\r\n this.nameIcon = 'drop_up';\r\n }\r\n }\r\n\r\n\r\n toggleSmiles() {\r\n\r\n const value = this.showSmiles ? 0 : 1;\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'smiles', value);\r\n\r\n this.showSmiles = !this.showSmiles;\r\n if (!this.showSmiles) {\r\n this.smilesIcon = 'drop_down';\r\n } else {\r\n this.smilesIcon = 'drop_up';\r\n }\r\n }\r\n\r\n toggleStereo() {\r\n const value = this.showStereo ? 0 : 1;\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'link-toggle', 'stereo', value);\r\n this.showStereo = !this.showStereo;\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { StructureDetailsComponent } from './structure-details.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(StructureDetailsComponent),\r\n MatIconModule,\r\n ReferencesManagerModule,\r\n SubstanceImageModule,\r\n MatListModule\r\n ],\r\n declarations: [\r\n StructureDetailsComponent\r\n ]\r\n})\r\nexport class StructureDetailsModule { }\r\n"],"sourceRoot":"webpack:///","file":"4333.5c32a6f78a43f792.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4371.6026c0c6ad88dd22.js b/frontend/src/main/resources/static/4371.6026c0c6ad88dd22.js deleted file mode 100644 index 6e799df..0000000 --- a/frontend/src/main/resources/static/4371.6026c0c6ad88dd22.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4371],{34371:function(Ra,M,_){_.r(M),_.d(M,{SubstanceProductsModule:function(){return Ma}});var g=_(48047),b=_(78069),v=_(36362),F=_(75143),C=_(24582),x=_(7318),y=_(40104),z=_(42154),$=_(68756),t=_(76442),E=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a){var s;return(0,b.Z)(this,o),(s=i.call(this,c)).gaService=c,s.service=a,s.results=[],s.isAdmin=!1,s}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){}},{key:"setPageEvent",value:function(a){null!=a&&(this.page=a.pageIndex,this.pageSize=a.pageSize)}},{key:"setResultData",value:function(a,s){this.results=a,this.filtered=a,this.totalRecords=this.service.totalRecords,this.pageChangeFda()}},{key:"pageChangeFda",value:function(a,s){if(this.paged=[],this.filtered)for(var u=0;u0&&(a.foundCenterList=!0),a.loadingComplete=!0})}},{key:"applicationTabSelected",value:function(a){if(a){var u=a.tab.textLabel;if(null!=u){this.loadingStatus="Loading data...";var l=u.indexOf(" ");this.center=u.slice(0,l),this.fromTable=u.slice(l+1,u.length)}this.paged=[],this.privateSearch="root_applicationProductList_applicationIngredientList_substanceKey:"+this.bdnum+" AND root_center:"+this.center+" AND root_fromTable: "+this.fromTable,this.getApplicationBySubstanceKeyCenter()}}},{key:"getApplicationBySubstanceKeyCenter",value:function(a,s){var u=this;this.setPageEvent(a),this.showSpinner=!0;var m=this.applicationService.getApplicationAll("default",this.page*this.pageSize,this.pageSize,this.privateSearch,this.privateFacetParams).subscribe(function(p){s&&"initial"===s?u.etagAllExport=p.etag:(u.applicationService.totalRecords=p.total,u.applicationCount=p.total,u.setResultData(p.content),u.etag=p.etag,u.countApplicationOut.emit(u.applicationCount))},function(p){console.log("error")},function(){m.unsubscribe()});this.loadingStatus="",this.showSpinner=!1}},{key:"export",value:function(){var a=this;if(this.etagAllExport){var s="xlsx",u=this.getApiExportUrl(this.etagAllExport,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceApplication"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.applicationService.getAppAllApiExportUrl(a,s)}},{key:"updateApplicationUrl",get:function(){return this.applicationService.getUpdateApplicationUrl()}},{key:"applicationListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.applicationService.getApplicationListExportUrl(this.bdnum))}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(f.F0),t.Y36(U.e),t.Y36(D.b),t.Y36(y.$),t.Y36(B.I),t.Y36(Q.m),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-application"]],inputs:{bdnum:"bdnum"},outputs:{countApplicationOut:"countApplicationOut"},features:[t.qOj],decls:3,vars:2,consts:[[4,"ngIf"],[3,"selectedTabChange"],[3,"label",4,"ngFor","ngForOf"],[1,"padleft25px","colorblue"],[3,"label"],[1,"padtop5px","padleft25px","font15px","colorblue"],[1,"colorred"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","",1,"font12px",3,"dataSource"],["matColumnDef","appType"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","appNumber"],["matColumnDef","productName"],["matColumnDef","sponsorName"],["matColumnDef","applicationStatus"],["matColumnDef","applicationSubType"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell",""],["mat-cell",""],["target","_blank",3,"routerLink"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink"],["svgIcon","edit"],[1,"font10px","colorgray"],[4,"ngFor","ngForOf"],["class","row",4,"ngFor","ngForOf"],[1,"row"],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.YNc(0,j,6,0,"div",0),t.TgZ(1,"mat-tab-group",1),t.NdJ("selectedTabChange",function(a){return o.applicationTabSelected(a)}),t.YNc(2,ht,33,12,"mat-tab",2),t.qZA()),2&i&&(t.Q6J("ngIf",!0===o.loadingComplete&&!1===o.foundCenterList&&0===o.applicationCount),t.xp6(2),t.Q6J("ngForOf",o.centerList))},directives:[v.O5,q.SP,v.sg,q.uX,S.lW,T.Hw,A.Ou,d.BZ,d.w1,d.fO,d.ge,d.Dz,d.ev,f.yS,d.as,d.XQ,d.nj,d.Gk,Z.NW],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font9px[_ngcontent-%COMP%]{font:size 10px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:#4b4572}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),L=_(69638);function xt(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"span",16),t.TgZ(1,"button",17),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",18),t._uU(3," Export CTs "),t.qZA(),t.qZA()}}function St(e,n){1&e&&(t.TgZ(0,"div",19),t._UZ(1,"mat-progress-spinner",20),t.qZA())}function Tt(e,n){1&e&&t._UZ(0,"th",21)}function At(e,n){if(1&e&&(t.TgZ(0,"td",22),t.TgZ(1,"a",23),t._UZ(2,"mat-icon",24),t.qZA(),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("href","edit-clinical-trial/"+i.trialNumber,t.LSH)}}function Zt(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1,"Trial Number"),t.qZA())}function yt(e,n){if(1&e&&(t.TgZ(0,"td",22),t.TgZ(1,"a",25),t._uU(2),t.qZA(),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("href","https://clinicaltrials.gov/ct2/show/"+i.trialNumber,t.LSH),t.xp6(1),t.Oqu(i.trialNumber)}}function Et(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Title "),t.qZA())}function Ut(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.title," ")}}function Nt(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Sponsor Name "),t.qZA())}function Dt(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.sponsor," ")}}function Pt(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Conditions "),t.qZA())}function Ot(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.conditions," ")}}function wt(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Outcome Measures "),t.qZA())}function qt(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.outcomeMeasures," ")}}function Yt(e,n){1&e&&t._UZ(0,"tr",26)}function It(e,n){1&e&&t._UZ(0,"tr",27)}var kt=function(){return[5,10,25,100]},Mt=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a,s,u,l,m,p){var r;return(0,b.Z)(this,o),(r=i.call(this,c,a)).gaService=c,r.clinicalTrialService=a,r.configService=s,r.authService=u,r.loadingService=l,r.router=m,r.dialog=p,r.clinicalTrialCount=0,r.showSpinner=!1,r.subscriptions=[],r.privateExport=!1,r.disableExport=!1,r.etag="",r.etagAllExport="",r.loadingStatus="",r.countClinicalTrialOut=new t.vpe,r.displayedColumns=["edit","nctNumber","title","sponsorName","conditions","outcomemeasures"],r}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){var a=this;this.loadedComponents=this.configService.configData.loadedComponents||null,this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,I.q)(1)).subscribe(function(s){a.isAdmin=s}),this.substanceUuid&&this.getSubstanceClinicalTrials(null,"initial")}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getSubstanceClinicalTrials",value:function(a,s){var u=this;this.setPageEvent(a);var l=this.page*this.pageSize;this.showSpinner=!0;var m=this.clinicalTrialService.getClinicalTrials({searchTerm:this.substanceUuid,cutoff:null,type:"substanceKey",order:"$trialNumber",pageSize:this.pageSize,facets:this.privateFacetParams,skip:l}).subscribe(function(p){s&&"initial"===s&&(u.etagAllExport=p.etag),u.clinicalTrialService.totalRecords=p.total,u.setResultData(p.content),u.clinicalTrialCount=p.total,u.etag=p.etag,u.countClinicalTrialOut.emit(u.clinicalTrialCount),u.showSpinner=!1});this.subscriptions.push(m)}},{key:"export",value:function(){var a=this;if(this.etagAllExport){var s="ctus.xlsx",u=this.getApiExportUrl(this.etagAllExport,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceClinicalTrialUS"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.clinicalTrialService.getApiExportUrl(a,s)}},{key:"clinicalTrialListExportUrl",value:function(){null!=this.substanceUuid&&(this.exportUrl=this.clinicalTrialService.getClinicalTrialListExportUrl(this.substanceUuid))}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(y.$),t.Y36(L.m),t.Y36(Y.E),t.Y36(U.e),t.Y36(D.b),t.Y36(f.F0),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-clinical-trials"]],inputs:{substanceUuid:"substanceUuid"},outputs:{countClinicalTrialOut:"countClinicalTrialOut"},features:[t.qOj],decls:28,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","",3,"dataSource"],["matColumnDef","edit"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","nctNumber"],["matColumnDef","title"],["matColumnDef","sponsorName"],["matColumnDef","conditions"],["matColumnDef","outcomemeasures"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell",""],["mat-cell",""],["target","_blank","title","Edit in new tab",1,"clinical-trials-browse-edit1",3,"href"],["svgIcon","edit",2,"width","20px","height","20px"],["target","_blank","title","see clinicaltrials.gov",3,"href"],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Clinical Trial US\xa0\xa0\xa0\xa0"),t.qZA(),t.YNc(3,xt,4,0,"span",1),t.qZA(),t.TgZ(4,"div",2),t.YNc(5,St,2,0,"div",3),t.TgZ(6,"table",4),t.ynx(7,5),t.YNc(8,Tt,1,0,"th",6),t.YNc(9,At,3,1,"td",7),t.BQk(),t.ynx(10,8),t.YNc(11,Zt,2,0,"th",6),t.YNc(12,yt,3,2,"td",7),t.BQk(),t.ynx(13,9),t.YNc(14,Et,2,0,"th",6),t.YNc(15,Ut,2,1,"td",7),t.BQk(),t.ynx(16,10),t.YNc(17,Nt,2,0,"th",6),t.YNc(18,Dt,2,1,"td",7),t.BQk(),t.ynx(19,11),t.YNc(20,Pt,2,0,"th",6),t.YNc(21,Ot,2,1,"td",7),t.BQk(),t.ynx(22,12),t.YNc(23,wt,2,0,"th",6),t.YNc(24,qt,2,1,"td",7),t.BQk(),t.YNc(25,Yt,1,0,"tr",13),t.YNc(26,It,1,0,"tr",14),t.qZA(),t.qZA(),t.TgZ(27,"mat-paginator",15),t.NdJ("page",function(a){return o.getSubstanceClinicalTrials(a)}),t.qZA()),2&i&&(t.xp6(3),t.Q6J("ngIf",o.isAdmin),t.xp6(2),t.Q6J("ngIf",o.showSpinner),t.xp6(1),t.Q6J("dataSource",o.paged),t.xp6(19),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,kt)))},directives:[v.O5,S.lW,T.Hw,A.Ou,d.BZ,d.w1,d.fO,d.ge,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,Z.NW],styles:[".clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{text-decoration:none}.clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{padding-left:.5em;padding-right:.5em}.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:gray}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:#4b4572}.colorred[_ngcontent-%COMP%]{color:red}.btn1[_ngcontent-%COMP%]{color:#312e2e;background-color:#ffde79f5;border-radius:10px 0 0 10px;font-size:16px}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Qt=_(92938);function Lt(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"span",14),t.TgZ(1,"button",15),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",16),t._uU(3," Export CTs "),t.qZA(),t.qZA()}}function Jt(e,n){1&e&&(t.TgZ(0,"div",17),t._UZ(1,"mat-progress-spinner",18),t.qZA())}function Rt(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1,"Eudract Number"),t.qZA())}function Ft(e,n){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",22),t._uU(2),t.qZA(),t.qZA()),2&e){var i=t.oxw().$implicit;t.xp6(1),t.s9C("href",i.url,t.LSH),t.xp6(1),t.Oqu(i.trialNumber)}}function zt(e,n){if(1&e&&(t.TgZ(0,"td",20),t.YNc(1,Ft,3,2,"div",21),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngIf",i.trialNumber)}}function $t(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1," Title "),t.qZA())}function Bt(e,n){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.title," ")}}function jt(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1," Sponsor Name "),t.qZA())}function Ht(e,n){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.sponsorName," ")}}function Gt(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1,"Conditions"),t.qZA())}function Wt(e,n){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=n.$implicit,o=t.oxw();t.xp6(1),t.Oqu(o.joinMeddraTerms(i))}}function Kt(e,n){1&e&&t._UZ(0,"tr",23)}function Xt(e,n){1&e&&t._UZ(0,"tr",24)}var Vt=function(){return[5,10,25,100]},te=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a,s,u,l,m,p){var r;return(0,b.Z)(this,o),(r=i.call(this,c,a)).gaService=c,r.clinicalTrialService=a,r.configService=s,r.authService=u,r.loadingService=l,r.router=m,r.dialog=p,r.clinicalTrialEuCount=0,r.showSpinner=!1,r.subscriptions=[],r.privateExport=!1,r.disableExport=!1,r.etag="",r.etagAllExport="",r.loadingStatus="",r.countClinicalTrialEuOut=new t.vpe,r.displayedColumns=["trialNumber","title","sponsorName","conditions"],r}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){var a=this;this.loadedComponents=this.configService.configData.loadedComponents||null,this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,I.q)(1)).subscribe(function(s){a.isAdmin=s}),this.substanceUuid&&this.getSubstanceClinicalTrialsEurope(null,"initial")}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getSubstanceClinicalTrialsEurope",value:function(a,s){var u=this;this.setPageEvent(a),this.showSpinner=!0;var l=this.clinicalTrialService.getSubstanceClinicalTrialsEurope(this.substanceUuid,this.page,this.pageSize).subscribe(function(m){s&&"initial"===s&&(u.etagAllExport=m.etag),u.setResultData(m.content),u.clinicalTrialEuCount=m.total,u.countClinicalTrialEuOut.emit(u.clinicalTrialEuCount),u.showSpinner=!1});this.subscriptions.push(l)}},{key:"export",value:function(){var a=this;if(this.etagAllExport){var s="cteu.xlsx",u=this.getApiExportUrl(this.etagAllExport,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceClinicalTrialEU"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.clinicalTrialService.getApiEuropeExportUrl(a,s)}},{key:"joinMeddraTerms",value:function(a){if(a)return Qt.map(a.clinicalTrialEuropeMeddraList,"meddraTerm").join("|")}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(y.$),t.Y36(L.m),t.Y36(Y.E),t.Y36(U.e),t.Y36(D.b),t.Y36(f.F0),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-clinical-trials-eu"]],inputs:{substanceUuid:"substanceUuid"},outputs:{countClinicalTrialEuOut:"countClinicalTrialEuOut"},features:[t.qOj],decls:23,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","",3,"dataSource"],["matColumnDef","trialNumber"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","title"],["matColumnDef","sponsorName"],["matColumnDef","conditions"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],[3,"href"],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Clinical Trials Europe"),t.qZA(),t._uU(3," \xa0\xa0\xa0 "),t.YNc(4,Lt,4,0,"span",1),t.qZA(),t.TgZ(5,"div",2),t.YNc(6,Jt,2,0,"div",3),t.TgZ(7,"table",4),t.ynx(8,5),t.YNc(9,Rt,2,0,"th",6),t.YNc(10,zt,2,1,"td",7),t.BQk(),t.ynx(11,8),t.YNc(12,$t,2,0,"th",6),t.YNc(13,Bt,2,1,"td",7),t.BQk(),t.ynx(14,9),t.YNc(15,jt,2,0,"th",6),t.YNc(16,Ht,2,1,"td",7),t.BQk(),t.ynx(17,10),t.YNc(18,Gt,2,0,"th",6),t.YNc(19,Wt,2,1,"td",7),t.BQk(),t.YNc(20,Kt,1,0,"tr",11),t.YNc(21,Xt,1,0,"tr",12),t.qZA(),t.qZA(),t.TgZ(22,"mat-paginator",13),t.NdJ("page",function(a){return o.getSubstanceClinicalTrialsEurope(a)}),t.qZA()),2&i&&(t.xp6(4),t.Q6J("ngIf",o.isAdmin),t.xp6(2),t.Q6J("ngIf",o.showSpinner),t.xp6(1),t.Q6J("dataSource",o.paged),t.xp6(13),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,Vt)))},directives:[v.O5,S.lW,T.Hw,A.Ou,d.BZ,d.w1,d.fO,d.ge,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,Z.NW],styles:[".mat-column-trialNumber[_ngcontent-%COMP%]{word-wrap:break-word!important;white-space:unset!important;-ms-flex:0 0 20%!important;flex:0 0 20%!important;width:20%!important;white-space:nowrap}.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:#4b4572}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),k=_(43461),ee=_(98969),w=_(64316);function ne(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"span",20),t.TgZ(1,"button",21),t.NdJ("click",function(){return t.CHM(i),t.oxw(2).export()}),t._UZ(2,"mat-icon",22),t._uU(3," Export "),t.qZA(),t.qZA()}}function ae(e,n){if(1&e&&(t.TgZ(0,"div",18),t.YNc(1,ne,4,0,"span",19),t.qZA()),2&e){var i=t.oxw();t.xp6(1),t.Q6J("ngIf",i.isAdmin&&i.adverseEventCount>0)}}function ie(e,n){if(1&e&&(t.TgZ(0,"div",23),t.TgZ(1,"a",24),t.TgZ(2,"button",25),t.TgZ(3,"mat-icon"),t._uU(4,"analytics"),t.qZA(),t.TgZ(5,"span",26),t._uU(6,"Analysis by Substance"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&e){var i=t.oxw();t.xp6(1),t.s9C("href",i.adverseEventShinySubstanceNameURLWithParam,t.LSH)}}function oe(e,n){1&e&&(t.TgZ(0,"div",27),t._UZ(1,"mat-progress-spinner",28),t.qZA())}function se(e,n){1&e&&(t.TgZ(0,"th",29),t._uU(1," PT Term "),t.qZA())}function re(e,n){if(1&e&&(t.TgZ(0,"span",32),t.TgZ(1,"a",33),t.TgZ(2,"mat-icon"),t._uU(3,"analytics"),t.qZA(),t.qZA(),t.qZA()),2&e){var i=t.oxw().$implicit,o=t.oxw();t.xp6(1),t.hYB("href","",o.adverseEventShinyAdverseEventURLWithParam,"",o.getDecodeURL(i.ptTerm),"",t.LSH)}}function ce(e,n){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.YNc(2,re,4,2,"span",31),t.qZA()),2&e){var i=n.$implicit,o=t.oxw();t.xp6(1),t.hij(" ",i.ptTerm," "),t.xp6(1),t.Q6J("ngIf",!0===o.adverseEventShinyAdverseEventDisplay)}}function ue(e,n){1&e&&(t.TgZ(0,"th",29),t._uU(1," Prim SOC "),t.qZA())}function pe(e,n){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.primSoc," ")}}function le(e,n){1&e&&(t.TgZ(0,"th",29),t._uU(1," Case Count "),t.qZA())}function de(e,n){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.caseCount,"")}}function me(e,n){1&e&&(t.TgZ(0,"th",29),t._uU(1," PT Count "),t.qZA())}function _e(e,n){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",36),t.ALo(2,"titlecase"),t.ALo(3,"titlecase"),t._UZ(4,"div",37),t.qZA(),t.TgZ(5,"span",38),t._uU(6,"FAERS Public Dashboard"),t.qZA(),t.qZA()),2&e){var i=t.oxw().$implicit,o=t.oxw();t.xp6(1),t.FAE("href","",o.FAERSDashboardAdverseEventUrl,"",o.getDecodeURL(t.lcZ(2,5,i.ptTerm)),"",o.FAERSDashboardReactionGroup,"",o.getDecodeURL(t.lcZ(3,7,i.primSoc)),"",t.LSH),t.xp6(3),t.Q6J("innerHTML",i.ptCount,t.oJD)}}function ve(e,n){if(1&e&&t._UZ(0,"div",37),2&e){var i=t.oxw().$implicit;t.Q6J("innerHTML",i.ptCount,t.oJD)}}function fe(e,n){if(1&e&&(t.TgZ(0,"td",30),t.YNc(1,_e,7,9,"div",34),t.YNc(2,ve,1,1,"ng-template",null,35,t.W1O),t.qZA()),2&e){var i=t.MAs(3),o=t.oxw();t.xp6(1),t.Q6J("ngIf",o.FAERSDashboardAdverseEventUrl)("ngIfElse",i)}}function ge(e,n){1&e&&(t.TgZ(0,"th",29),t._uU(1," PRR "),t.qZA())}function be(e,n){if(1&e&&(t.TgZ(0,"td",30),t._uU(1),t.ALo(2,"number"),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,i.prr,".2-2")," ")}}function he(e,n){1&e&&t._UZ(0,"tr",39)}function Ce(e,n){1&e&&t._UZ(0,"tr",40)}var xe=function(){return[5,10,25,100]},Se=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a,s,u,l,m,p){var r;return(0,b.Z)(this,o),(r=i.call(this,a,s)).router=c,r.gaService=a,r.adverseEventService=s,r.loadingService=u,r.configService=l,r.authService=m,r.dialog=p,r.countAdvPtOut=new t.vpe,r.adverseEventCount=0,r.order="$root_ptCount",r.ascDescDir="desc",r.showSpinner=!1,r.sortValues=ee.g,r.privateExport=!1,r.disableExport=!1,r.etag="",r.loadingStatus="",r.subscriptions=[],r.adverseEventShinySubstanceNameDisplay=!1,r.adverseEventShinyAdverseEventDisplay=!1,r.FAERSDashboardSearchTerm="/select/Search%20Term/",r.FAERSDashboardReactionTerm="/select/Reaction%20Term/",r.FAERSDashboardReactionGroup="/select/Reaction%20Group/",r.displayedColumns=["ptTerm","primSoc","caseCount","ptCount","prr"],r}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){var a=this,s=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){a.isAdmin=u});this.subscriptions.push(s),this.bdnum&&(this.getAdverseEventPt(),this.getFaersDashboardUrl(),this.getFaersDashboardRecordByName(),this.adverseEventPtListExportUrl(),this.getAdverseEventShinyConfig())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getAdverseEventPt",value:function(a){var s=this;this.setPageEvent(a),this.showSpinner=!0;var m=this.adverseEventService.getAdverseEventPt(this.order,this.page*this.pageSize,this.pageSize,"root_substanceKey:"+this.bdnum,this.privateFacetParams).subscribe(function(p){s.adverseEventService.totalRecords=p.total,s.adverseEventCount=p.total,s.setResultData(p.content),s.etag=p.etag,s.countAdvPtOut.emit(s.adverseEventCount)},function(p){console.log("error")},function(){m.unsubscribe()});this.loadingStatus="",this.showSpinner=!1}},{key:"adverseEventPtListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.adverseEventService.getAdverseEventPtListExportUrl(this.bdnum))}},{key:"sortData",value:function(a){var s=this;if(a.active){var u=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(l){l.displayedColumns&&l.direction&&s.displayedColumns[u]===l.displayedColumns&&s.ascDescDir===l.direction&&(s.order=l.value)}),this.getAdverseEventPt()}}},{key:"export",value:function(){var a=this;if(this.etag){var s="xlsx",u=this.getApiExportUrl(this.etag,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceAdverseEventPt"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.adverseEventService.getApiExportUrlPt(a,s)}},{key:"getFaersDashboardRecordByName",value:function(){var a=this,s=this.adverseEventService.getFaersDashboardRecordByName(this.substanceName).subscribe(function(u){u&&u.name&&(a.FAERSDashboardSubstanceName=u.name,a.FAERSDashboardAdverseEventUrl=a.FAERSDashboardAdverseEventUrl+u.name+a.FAERSDashboardReactionTerm)});this.subscriptions.push(s)}},{key:"getFaersDashboardUrl",value:function(){this.configService.configData&&this.configService.configData.FAERSDashboardAdverseEventUrl&&null!==this.configService.configData.FAERSDashboardAdverseEventUrl&&(this.FAERSDashboardAdverseEventUrl=this.configService.configData.FAERSDashboardAdverseEventUrl+this.FAERSDashboardSearchTerm)}},{key:"getAdverseEventShinyConfig",value:function(){this.configService.configData&&(this.configService.configData.adverseEventShinySubstanceNameDisplay&&null!==this.configService.configData.adverseEventShinySubstanceNameDisplay&&(this.adverseEventShinySubstanceNameDisplay=JSON.parse(this.configService.configData.adverseEventShinySubstanceNameDisplay)),this.configService.configData.adverseEventShinySubstanceNameURL&&null!==this.configService.configData.adverseEventShinySubstanceNameURL&&(this.adverseEventShinySubstanceNameURL=this.configService.configData.adverseEventShinySubstanceNameURL,this.adverseEventShinySubstanceNameURLWithParam=this.adverseEventShinySubstanceNameURL+decodeURIComponent(this.substanceName)),this.configService.configData.adverseEventShinyAdverseEventDisplay&&null!==this.configService.configData.adverseEventShinyAdverseEventDisplay&&(this.adverseEventShinyAdverseEventDisplay=JSON.parse(this.configService.configData.adverseEventShinyAdverseEventDisplay)),this.configService.configData.adverseEventShinyAdverseEventURL&&null!==this.configService.configData.adverseEventShinyAdverseEventURL&&(this.adverseEventShinyAdverseEventURL=this.configService.configData.adverseEventShinyAdverseEventURL,this.adverseEventShinyAdverseEventURLWithParam=this.adverseEventShinyAdverseEventURL))}},{key:"getDecodeURL",value:function(a){var s="";return null!==a&&(s=decodeURIComponent(a)),s}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(f.F0),t.Y36(y.$),t.Y36(k.a),t.Y36(D.b),t.Y36(Y.E),t.Y36(U.e),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-adverseeventpt"]],inputs:{bdnum:"bdnum",substanceName:"substanceName"},outputs:{countAdvPtOut:"countAdvPtOut"},features:[t.qOj],decls:28,vars:10,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],[1,"divflex"],[1,"padtop10px"],["class","marginleft50px padleft25px padtopneg50px width120px",4,"ngIf"],["class","marginleft50px padleft25px width200px",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","ptCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","ptTerm"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","primSoc"],["matColumnDef","caseCount"],["matColumnDef","ptCount"],["matColumnDef","prr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"marginleft50px","padleft25px","padtopneg50px","width120px"],["class","export",4,"ngIf"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"marginleft50px","padleft25px","width200px"],["target","_blank",3,"href"],["mat-icon-button","","color","accent","aria-label","Analysis by Substance Name on Shiny Server"],[1,"colororange"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["class","",4,"ngIf"],[1,""],["target","_blank","title","Analysis by Adverse Event/PT Term on Shiny Server",3,"href"],[4,"ngIf","ngIfElse"],["noFaersLink",""],["target","_blank","title","FAERS Public Dashboard",3,"href"],[3,"innerHTML"],[1,"colorgray","font10px"],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"b"),t._uU(4,"Adverse Event PT"),t.qZA(),t.qZA(),t.YNc(5,ae,2,1,"div",3),t.YNc(6,ie,7,1,"div",4),t.qZA(),t.TgZ(7,"div",5),t.YNc(8,oe,2,0,"div",6),t.TgZ(9,"table",7),t.NdJ("matSortChange",function(a){return o.sortData(a)}),t.ynx(10,8),t.YNc(11,se,2,0,"th",9),t.YNc(12,ce,3,2,"td",10),t.BQk(),t.ynx(13,11),t.YNc(14,ue,2,0,"th",9),t.YNc(15,pe,2,1,"td",10),t.BQk(),t.ynx(16,12),t.YNc(17,le,2,0,"th",9),t.YNc(18,de,2,1,"td",10),t.BQk(),t.ynx(19,13),t.YNc(20,me,2,0,"th",9),t.YNc(21,fe,4,2,"td",10),t.BQk(),t.ynx(22,14),t.YNc(23,ge,2,0,"th",9),t.YNc(24,be,3,4,"td",10),t.BQk(),t.YNc(25,he,1,0,"tr",15),t.YNc(26,Ce,1,0,"tr",16),t.qZA(),t.qZA(),t.TgZ(27,"mat-paginator",17),t.NdJ("page",function(a){return o.getAdverseEventPt(a)}),t.qZA(),t.qZA()),2&i&&(t.xp6(5),t.Q6J("ngIf",o.totalRecords>0),t.xp6(1),t.Q6J("ngIf",!0===o.adverseEventShinySubstanceNameDisplay),t.xp6(2),t.Q6J("ngIf",o.showSpinner),t.xp6(1),t.Q6J("dataSource",o.paged),t.xp6(16),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(9,xe)))},directives:[v.O5,S.lW,T.Hw,A.Ou,d.BZ,w.YE,d.w1,d.fO,d.ge,w.nU,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,Z.NW],pipes:[v.rS,v.JJ],styles:[".mat-table-style[_ngcontent-%COMP%]{position:relative}.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.font8px[_ngcontent-%COMP%]{font-size:8px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padtopneg50px[_ngcontent-%COMP%]{padding-top:-50px}.colorblue[_ngcontent-%COMP%]{color:#4b4572}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colororange[_ngcontent-%COMP%]{color:#e4862e}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.width120px[_ngcontent-%COMP%]{width:120px;display:block}.width200px[_ngcontent-%COMP%]{width:200px;display:block}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Te=_(52395);function Ae(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"span",16),t.TgZ(1,"button",17),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",18),t._uU(3," Export "),t.qZA(),t.qZA()}}function Ze(e,n){1&e&&(t.TgZ(0,"div",19),t._UZ(1,"mat-progress-spinner",20),t.qZA())}function ye(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," DME Reactions "),t.qZA())}function Ee(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.dmeReactions," ")}}function Ue(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," PT Term Meddra "),t.qZA())}function Ne(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.ptTermMeddra," ")}}function De(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Case Count "),t.qZA())}function Pe(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.caseCount," ")}}function Oe(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Dme Count "),t.qZA())}function we(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.dmeCount," ")}}function qe(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Dme Count Percent "),t.qZA())}function Ye(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.dmeCountPercent," ")}}function Ie(e,n){1&e&&(t.TgZ(0,"th",21),t._uU(1," Weighted Average PRR"),t.qZA())}function ke(e,n){if(1&e&&(t.TgZ(0,"td",22),t._uU(1),t.ALo(2,"number"),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,i.weightedAvgPrr,".2-2")," ")}}function Me(e,n){1&e&&t._UZ(0,"tr",23)}function Qe(e,n){1&e&&t._UZ(0,"tr",24)}var Le=function(){return[5,10,25,100]},Je=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a,s,u,l,m){var p;return(0,b.Z)(this,o),(p=i.call(this,a,s)).router=c,p.gaService=a,p.adverseEventService=s,p.authService=u,p.loadingService=l,p.dialog=m,p.countAdvDmeOut=new t.vpe,p.adverseEventCount=0,p.order="$root_dmeCount",p.ascDescDir="desc",p.showSpinner=!1,p.privateExport=!1,p.disableExport=!1,p.etag="",p.loadingStatus="",p.sortValues=Te.O,p.subscriptions=[],p.displayedColumns=["dmeReactions","ptTermMeddra","caseCount","dmeCount","dmeCountPercent","weightedAvgPrr"],p}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){var a=this,s=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){a.isAdmin=u});this.subscriptions.push(s),this.bdnum&&(this.getAdverseEventDme(),this.adverseEventDmeListExportUrl())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getAdverseEventDme",value:function(a){var s=this;this.setPageEvent(a),this.showSpinner=!0;var m=this.adverseEventService.getAdverseEventDme(this.order,this.page*this.pageSize,this.pageSize,"root_substanceKey:"+this.bdnum,this.privateFacetParams).subscribe(function(p){s.adverseEventService.totalRecords=p.total,s.adverseEventCount=p.total,s.setResultData(p.content),s.etag=p.etag,s.countAdvDmeOut.emit(s.adverseEventCount)},function(p){console.log("error")},function(){m.unsubscribe()});this.loadingStatus="",this.showSpinner=!1}},{key:"sortData",value:function(a){var s=this;if(a.active){var u=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(l){l.displayedColumns&&l.direction&&s.displayedColumns[u]===l.displayedColumns&&s.ascDescDir===l.direction&&(s.order=l.value)}),this.getAdverseEventDme()}}},{key:"export",value:function(){var a=this;if(this.etag){var s="xlsx",u=this.getApiExportUrl(this.etag,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceAdverseEventDme"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.adverseEventService.getApiExportUrlDme(a,s)}},{key:"adverseEventDmeListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.adverseEventService.getAdverseEventDmeListExportUrl(this.bdnum))}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(f.F0),t.Y36(y.$),t.Y36(k.a),t.Y36(U.e),t.Y36(D.b),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-adverseeventdme"]],inputs:{bdnum:"bdnum"},outputs:{countAdvDmeOut:"countAdvDmeOut"},features:[t.qOj],decls:29,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","dmeCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","dmeReactions"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","ptTermMeddra"],["matColumnDef","caseCount"],["matColumnDef","dmeCount"],["matColumnDef","dmeCountPercent"],["matColumnDef","weightedAvgPrr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Adverse Event DME"),t.qZA(),t._uU(3," \xa0\xa0\xa0 "),t.YNc(4,Ae,4,0,"span",1),t.qZA(),t.TgZ(5,"div",2),t.YNc(6,Ze,2,0,"div",3),t.TgZ(7,"table",4),t.NdJ("matSortChange",function(a){return o.sortData(a)}),t.ynx(8,5),t.YNc(9,ye,2,0,"th",6),t.YNc(10,Ee,2,1,"td",7),t.BQk(),t.ynx(11,8),t.YNc(12,Ue,2,0,"th",6),t.YNc(13,Ne,2,1,"td",7),t.BQk(),t.ynx(14,9),t.YNc(15,De,2,0,"th",6),t.YNc(16,Pe,2,1,"td",7),t.BQk(),t.ynx(17,10),t.YNc(18,Oe,2,0,"th",6),t.YNc(19,we,2,1,"td",7),t.BQk(),t.ynx(20,11),t.YNc(21,qe,2,0,"th",6),t.YNc(22,Ye,2,1,"td",7),t.BQk(),t.ynx(23,12),t.YNc(24,Ie,2,0,"th",6),t.YNc(25,ke,3,4,"td",7),t.BQk(),t.YNc(26,Me,1,0,"tr",13),t.YNc(27,Qe,1,0,"tr",14),t.qZA(),t.qZA(),t.TgZ(28,"mat-paginator",15),t.NdJ("page",function(a){return o.getAdverseEventDme(a)}),t.qZA()),2&i&&(t.xp6(4),t.Q6J("ngIf",o.isAdmin&&o.adverseEventCount>0),t.xp6(2),t.Q6J("ngIf",o.showSpinner),t.xp6(1),t.Q6J("dataSource",o.paged),t.xp6(19),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,Le)))},directives:[v.O5,S.lW,T.Hw,A.Ou,d.BZ,w.YE,d.w1,d.fO,d.ge,w.nU,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,Z.NW],pipes:[v.JJ],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:#4b4572}.colorgray[_ngcontent-%COMP%]{color:gray}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Re=_(34009);function Fe(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"span",14),t.TgZ(1,"button",15),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",16),t._uU(3," Export "),t.qZA(),t.qZA()}}function ze(e,n){1&e&&(t.TgZ(0,"div",17),t._UZ(1,"mat-progress-spinner",18),t.qZA())}function $e(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1," Adverse Event "),t.qZA())}function Be(e,n){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.adverseEvent," ")}}function je(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1," Species "),t.qZA())}function He(e,n){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.species," ")}}function Ge(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1," Adverse Event Count "),t.qZA())}function We(e,n){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.aeCount," ")}}function Ke(e,n){1&e&&(t.TgZ(0,"th",19),t._uU(1," Route of Administration "),t.qZA())}function Xe(e,n){if(1&e&&(t.TgZ(0,"td",20),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.routeOfAdmin," ")}}function Ve(e,n){1&e&&t._UZ(0,"tr",21)}function tn(e,n){1&e&&t._UZ(0,"tr",22)}var en=function(){return[5,10,25,100]},nn=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a,s,u,l,m){var p;return(0,b.Z)(this,o),(p=i.call(this,a,s)).router=c,p.gaService=a,p.adverseEventService=s,p.authService=u,p.loadingService=l,p.dialog=m,p.countAdvCvmOut=new t.vpe,p.adverseEventCount=0,p.order="$root_aeCount",p.ascDescDir="desc",p.showSpinner=!1,p.privateExport=!1,p.disableExport=!1,p.etag="",p.loadingStatus="",p.sortValues=Re.l,p.subscriptions=[],p.displayedColumns=["adverseEvent","species","adverseEventCount","routeOfAdmin"],p}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){var a=this,s=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){a.isAdmin=u});this.subscriptions.push(s),this.bdnum&&(this.getAdverseEventCvm(),this.adverseEventCvmListExportUrl())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getAdverseEventCvm",value:function(a){var s=this;this.setPageEvent(a),this.showSpinner=!0;var m=this.adverseEventService.getAdverseEventCvm(this.order,this.page*this.pageSize,this.pageSize,"root_substanceKey:"+this.bdnum,this.privateFacetParams).subscribe(function(p){s.adverseEventService.totalRecords=p.total,s.adverseEventCount=p.total,s.setResultData(p.content),s.etag=p.etag,s.countAdvCvmOut.emit(s.adverseEventCount)},function(p){console.log("error")},function(){m.unsubscribe()});this.loadingStatus="",this.showSpinner=!1}},{key:"sortData",value:function(a){var s=this;if(a.active){var u=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(l){l.displayedColumns&&l.direction&&s.displayedColumns[u]===l.displayedColumns&&s.ascDescDir===l.direction&&(s.order=l.value)}),this.getAdverseEventCvm()}}},{key:"export",value:function(){var a=this;if(this.etag){var s="xlsx",u=this.getApiExportUrl(this.etag,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceAdverseEventCvm"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.adverseEventService.getApiExportUrlCvm(a,s)}},{key:"adverseEventCvmListExportUrl",value:function(){null!=this.bdnum&&(this.exportUrl=this.adverseEventService.getAdverseEventCvmListExportUrl(this.bdnum))}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(f.F0),t.Y36(y.$),t.Y36(k.a),t.Y36(U.e),t.Y36(D.b),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-adverseeventcvm"]],inputs:{bdnum:"bdnum"},outputs:{countAdvCvmOut:"countAdvCvmOut"},features:[t.qOj],decls:23,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","","matSort","","matSortActive","adverseEventCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","adverseEvent"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","species"],["matColumnDef","adverseEventCount"],["matColumnDef","routeOfAdmin"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Adverse Event CVM"),t.qZA(),t._uU(3," \xa0\xa0\xa0 "),t.YNc(4,Fe,4,0,"span",1),t.qZA(),t.TgZ(5,"div",2),t.YNc(6,ze,2,0,"div",3),t.TgZ(7,"table",4),t.NdJ("matSortChange",function(a){return o.sortData(a)}),t.ynx(8,5),t.YNc(9,$e,2,0,"th",6),t.YNc(10,Be,2,1,"td",7),t.BQk(),t.ynx(11,8),t.YNc(12,je,2,0,"th",6),t.YNc(13,He,2,1,"td",7),t.BQk(),t.ynx(14,9),t.YNc(15,Ge,2,0,"th",6),t.YNc(16,We,2,1,"td",7),t.BQk(),t.ynx(17,10),t.YNc(18,Ke,2,0,"th",6),t.YNc(19,Xe,2,1,"td",7),t.BQk(),t.YNc(20,Ve,1,0,"tr",11),t.YNc(21,tn,1,0,"tr",12),t.qZA(),t.qZA(),t.TgZ(22,"mat-paginator",13),t.NdJ("page",function(a){return o.getAdverseEventCvm(a)}),t.qZA()),2&i&&(t.xp6(4),t.Q6J("ngIf",o.isAdmin&&o.adverseEventCount>0),t.xp6(2),t.Q6J("ngIf",o.showSpinner),t.xp6(1),t.Q6J("dataSource",o.paged),t.xp6(13),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,en)))},directives:[v.O5,S.lW,T.Hw,A.Ou,d.BZ,w.YE,d.w1,d.fO,d.ge,w.nU,d.Dz,d.ev,d.as,d.XQ,d.nj,d.Gk,Z.NW],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:#4b4572}.colorgray[_ngcontent-%COMP%]{color:gray}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),an=_(91781);function on(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"span",18),t.TgZ(1,"button",19),t.NdJ("click",function(){return t.CHM(i),t.oxw().export()}),t._UZ(2,"mat-icon",20),t._uU(3," Export "),t.qZA(),t.qZA()}}function sn(e,n){1&e&&(t.TgZ(0,"div",21),t._UZ(1,"mat-progress-spinner",22),t.qZA())}function rn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1,"Product/Substance Name"),t.qZA())}function cn(e,n){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.Oqu(i.productSubstanceName)}}function un(e,n){1&e&&t._uU(0," View ")}_(52489);var pn=function(n){return["/impurities",n,"edit"]};function ln(e,n){if(1&e&&(t.TgZ(0,"a",30),t._UZ(1,"mat-icon",31),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.Q6J("routerLink",t.VKq(1,pn,i.id))}}var dn=function(n){return["/impurities",n]};function mn(e,n){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",26),t.YNc(2,cn,2,1,"div",27),t.YNc(3,un,1,0,"ng-template",null,28,t.W1O),t.qZA(),t._uU(5," \xa0\xa0 "),t.YNc(6,ln,2,3,"a",29),t.qZA()),2&e){var i=t.MAs(4),o=t.oxw().$implicit,c=t.oxw();t.xp6(1),t.Q6J("routerLink",t.VKq(4,dn,o.id)),t.xp6(1),t.Q6J("ngIf",o.productSubstanceName)("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",c.isAdmin)}}function _n(e,n){if(1&e&&(t.TgZ(0,"td",24),t.YNc(1,mn,7,6,"div",25),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngIf",i.id)}}function vn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1," Source Type"),t.qZA())}function fn(e,n){if(1&e&&(t.TgZ(0,"td",24),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.sourceType," ")}}function gn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1," Source "),t.qZA())}function bn(e,n){if(1&e&&(t.TgZ(0,"td",24),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.source," ")}}function hn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1," Source ID"),t.qZA())}function Cn(e,n){if(1&e&&(t.TgZ(0,"td",24),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.sourceId," ")}}function xn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1," Type "),t.qZA())}function Sn(e,n){if(1&e&&(t.TgZ(0,"td",24),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.type," ")}}function Tn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1," Spec Type "),t.qZA())}function An(e,n){if(1&e&&(t.TgZ(0,"td",24),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.specType," ")}}function Zn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1," Parent Substance "),t.qZA())}var yn=function(n){return["/substances",n]};function En(e,n){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"a",26),t.TgZ(2,"span",33),t._uU(3),t.qZA(),t.qZA(),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(2,yn,i._parentSubstanceUuid)),t.xp6(2),t.Oqu(i._parentSubstanceName)}}function Un(e,n){if(1&e&&(t.TgZ(0,"td",24),t.YNc(1,En,4,4,"div",32),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesSubstanceList)}}function Nn(e,n){1&e&&(t.TgZ(0,"th",23),t._uU(1," Impurities Related Substance"),t.qZA())}function Dn(e,n){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij("\xa0\xa0\xa0\xa0",i.limitType,"\xa0")}}function Pn(e,n){if(1&e&&(t.TgZ(0,"span",38),t._UZ(1,"br"),t._uU(2),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(2),t.hij("\xa0\xa0\xa0\xa0",i.impurityType," ")}}function On(e,n){if(1&e&&(t.TgZ(0,"div"),t.TgZ(1,"span",36),t.YNc(2,Dn,2,1,"span",25),t._uU(3),t.qZA(),t.YNc(4,Pn,3,1,"span",37),t.qZA()),2&e){var i=t.oxw().$implicit;t.xp6(2),t.Q6J("ngIf",i.limitType),t.xp6(1),t.AsE(" ",i.limitValue,"\xa0",i.unit," "),t.xp6(1),t.Q6J("ngIf",i.impurityType)}}function wn(e,n){if(1&e&&(t.TgZ(0,"div",35),t.YNc(1,On,5,4,"div",25),t.qZA()),2&e){var i=n.$implicit,o=t.oxw(4);t.xp6(1),t.Q6J("ngIf",i.relatedSubstanceUuid===o.substanceUuid)}}function qn(e,n){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,wn,2,1,"div",34),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesDetailsList)}}function Yn(e,n){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,qn,2,1,"div",32),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesTestList)}}function In(e,n){if(1&e&&(t.TgZ(0,"td",24),t.YNc(1,Yn,2,1,"div",32),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngForOf",i.impuritiesSubstanceList)}}function kn(e,n){1&e&&t._UZ(0,"tr",39)}function Mn(e,n){1&e&&t._UZ(0,"tr",40)}var Qn=function(){return[5,10,25,100]},Ln=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a,s,u,l,m,p){var r;return(0,b.Z)(this,o),(r=i.call(this,a,s)).router=c,r.gaService=a,r.impuritiesService=s,r.generalService=u,r.authService=l,r.loadingService=m,r.dialog=p,r.countImpuritiesOut=new t.vpe,r.subscriptions=[],r.showSpinner=!1,r.totalImpurities=0,r.impuritiesCount=0,r.impuritiesTestTotal=0,r.pageIndex=0,r.pageSize=5,r.privateExport=!1,r.disableExport=!1,r.etag="",r.displayedColumns=["productName","sourceType","source","sourceid","type","specType","parentSubstance","relatedSubstance"],r}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){var a=this,s=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(u){a.isAdmin=u});this.subscriptions.push(s),this.substanceUuid&&(this.getImpuritiesBySubstanceUuid(),this.impuritiesListExportUrl())}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()})}},{key:"searchImpurities",value:function(){var a=this;this.privateSearchTerm=this.substanceUuid;var u=this.impuritiesService.searchImpurities(this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(l){a.setResultData(l.content),a.impurities=l.content,a.impuritiesCount=l.total,a.countImpuritiesOut.emit(a.impuritiesCount),a.etag=l.etag},function(l){},function(){u.unsubscribe()})}},{key:"getImpuritiesBySubstanceUuid",value:function(a){var s=this;this.setPageEvent(a),this.showSpinner=!0,this.impuritiesService.getImpuritiesBySubstanceUuid(this.substanceUuid).subscribe(function(u){s.impuritiesService.totalRecords=u.total,s.impurities=u.content,s.loadImpuritiesTestDetails(),s.setResultData(s.impurities),s.totalImpurities=u.total,s.etag=u.etag,s.countImpuritiesOut.emit(s.totalImpurities)}),this.showSpinner=!1}},{key:"loadImpuritiesTestDetails",value:function(){var a=this;this.impurities.forEach(function(s,u){s.impuritiesSubstanceList.forEach(function(l,m){l.substanceUuid&&l.substanceUuid===a.substanceUuid&&(l._parentSubstanceName=a.substanceName,l._parentSubstanceUuid=l.substanceUuid),l.impuritiesTestList.forEach(function(p,r){p.impuritiesDetailsList.forEach(function(h,O){if(null!=h.relatedSubstanceUuid&&h.relatedSubstanceUuid===a.substanceUuid){var Qa=a.generalService.getSubstanceNamesBySubstanceUuid(l.substanceUuid).subscribe(function(La){La.forEach(function(R,$a){!0===R.displayName&&(l._parentSubstanceName=R.name,l._parentSubstanceUuid=l.substanceUuid)})});a.subscriptions.push(Qa)}})})})})}},{key:"getSubstanceNames",value:function(a){var s;if(a){var u=this.generalService.getSubstanceNamesBySubstanceUuid(a).subscribe(function(l){l.forEach(function(p,r){!0===p.displayName&&(s=p.name)})});return this.subscriptions.push(u),s}}},{key:"export",value:function(){var a=this;if(this.etag){var s="xlsx",u=this.getApiExportUrl(this.etag,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceImpurities"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.impuritiesService.getApiExportUrl(a,s)}},{key:"impuritiesListExportUrl",value:function(){null!=this.substanceUuid&&(this.exportUrl=this.impuritiesService.getImpuritiesListExportUrl(this.substanceUuid))}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(f.F0),t.Y36(y.$),t.Y36(an.q),t.Y36(Q.m),t.Y36(U.e),t.Y36(D.b),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-impurities"]],inputs:{substanceUuid:"substanceUuid",substanceName:"substanceName"},outputs:{countImpuritiesOut:"countImpuritiesOut"},features:[t.qOj],decls:35,vars:9,consts:[[1,"padtop5px","padleft25px","font15px","colorblue"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","",3,"dataSource"],["matColumnDef","productName"],["mat-header-cell","","class","width100px",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","sourceType"],["matColumnDef","source"],["matColumnDef","sourceid"],["matColumnDef","type"],["matColumnDef","specType"],["matColumnDef","parentSubstance"],["matColumnDef","relatedSubstance"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell","",1,"width100px"],["mat-cell",""],[4,"ngIf"],["target","_blank",3,"routerLink"],[4,"ngIf","ngIfElse"],["noProdName",""],["target","_blank","matTooltip","Edit Impurities Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit Impurities Record",3,"routerLink"],["svgIcon","edit"],[4,"ngFor","ngForOf"],[1,"colorblue"],["class","font12px",4,"ngFor","ngForOf"],[1,"font12px"],[1,"colorgreen"],["class","colorpurple",4,"ngIf"],[1,"colorpurple"],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"b"),t._uU(2,"Impurities Specs"),t.qZA(),t._uU(3," \xa0\xa0\xa0 "),t.YNc(4,on,4,0,"span",1),t.qZA(),t.TgZ(5,"div",2),t.YNc(6,sn,2,0,"div",3),t.TgZ(7,"table",4),t.ynx(8,5),t.YNc(9,rn,2,0,"th",6),t.YNc(10,_n,2,1,"td",7),t.BQk(),t.ynx(11,8),t.YNc(12,vn,2,0,"th",6),t.YNc(13,fn,2,1,"td",7),t.BQk(),t.ynx(14,9),t.YNc(15,gn,2,0,"th",6),t.YNc(16,bn,2,1,"td",7),t.BQk(),t.ynx(17,10),t.YNc(18,hn,2,0,"th",6),t.YNc(19,Cn,2,1,"td",7),t.BQk(),t.ynx(20,11),t.YNc(21,xn,2,0,"th",6),t.YNc(22,Sn,2,1,"td",7),t.BQk(),t.ynx(23,12),t.YNc(24,Tn,2,0,"th",6),t.YNc(25,An,2,1,"td",7),t.BQk(),t.ynx(26,13),t.YNc(27,Zn,2,0,"th",6),t.YNc(28,Un,2,1,"td",7),t.BQk(),t.ynx(29,14),t.YNc(30,Nn,2,0,"th",6),t.YNc(31,In,2,1,"td",7),t.BQk(),t.YNc(32,kn,1,0,"tr",15),t.YNc(33,Mn,1,0,"tr",16),t.qZA(),t.qZA(),t.TgZ(34,"mat-paginator",17),t.NdJ("page",function(a){return o.getImpuritiesBySubstanceUuid(a)}),t.qZA()),2&i&&(t.xp6(4),t.Q6J("ngIf",o.isAdmin),t.xp6(2),t.Q6J("ngIf",o.showSpinner),t.xp6(1),t.Q6J("dataSource",o.paged),t.xp6(25),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(8,Qn)))},directives:[v.O5,S.lW,T.Hw,A.Ou,d.BZ,d.w1,d.fO,d.ge,d.Dz,d.ev,f.yS,v.sg,d.as,d.XQ,d.nj,d.Gk,Z.NW],styles:['@charset "UTF-8";.mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorgreen[_ngcontent-%COMP%]{color:green}.colorpurple[_ngcontent-%COMP%]{color:purple}.colorblue[_ngcontent-%COMP%]{color:#3828c9}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.width100px[_ngcontent-%COMP%]{width:100px}ol[_ngcontent-%COMP%], li[_ngcontent-%COMP%]{margin-left:0;padding-left:0}\\200b[_ngcontent-%COMP%] .spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}']}),e}();function Jn(e,n){if(1&e&&t._UZ(0,"a",5),2&e){var i=t.oxw();t.Q6J("href",i.baseDomain+"/ginas/app/substance/"+i.substance.uuid+"#fdadetails",t.LSH)}}function Rn(e,n){1&e&&(t.TgZ(0,"div"),t._UZ(1,"br"),t.TgZ(2,"div",9),t.TgZ(3,"b"),t._uU(4,"No Product Found"),t.qZA(),t.qZA(),t._UZ(5,"br"),t.qZA())}function Fn(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"span",29),t.TgZ(1,"button",30),t.NdJ("click",function(){return t.CHM(i),t.oxw(3).export()}),t._UZ(2,"mat-icon",31),t._uU(3," Export All Products "),t.qZA(),t.qZA()}}function zn(e,n){1&e&&(t.TgZ(0,"div",32),t._UZ(1,"mat-progress-spinner",33),t.qZA())}function $n(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Product ID "),t.qZA())}function Bn(e,n){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij(" ",i.productNDC," ")}}function jn(e,n){1&e&&t._uU(0," (NO NDC) ")}var Hn=function(n){return["/product",n,"edit"]};function Gn(e,n){if(1&e&&(t.TgZ(0,"a",40),t._UZ(1,"mat-icon",41),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.Q6J("routerLink",t.VKq(1,Hn,i.productId))}}var Wn=function(n){return["/product",n]};function Kn(e,n){if(1&e&&(t.TgZ(0,"span"),t.TgZ(1,"a",36),t.YNc(2,Bn,2,1,"span",37),t.YNc(3,jn,1,0,"ng-template",null,38,t.W1O),t.qZA(),t._uU(5," \xa0\xa0 "),t.YNc(6,Gn,2,3,"a",39),t.qZA()),2&e){var i=t.MAs(4),o=t.oxw().$implicit,c=t.oxw(3);t.xp6(1),t.Q6J("routerLink",t.VKq(4,Wn,o.productId)),t.xp6(1),t.Q6J("ngIf",o.productNDC)("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",c.isAdmin)}}function Xn(e,n){if(1&e&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij(" ",i.productNDC," ")}}function Vn(e,n){1&e&&t._uU(0," (NO NDC) ")}var ta=function(n){return["/product-elist",n]};function ea(e,n){if(1&e&&(t.TgZ(0,"span"),t.TgZ(1,"a",36),t.YNc(2,Xn,2,1,"span",37),t.YNc(3,Vn,1,0,"ng-template",null,42,t.W1O),t.qZA(),t._UZ(5,"br"),t.TgZ(6,"span",43),t._uU(7),t.qZA(),t.qZA()),2&e){var i=t.MAs(4),o=t.oxw().$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(4,ta,o.productId)),t.xp6(1),t.Q6J("ngIf",o.productNDC)("ngIfElse",i),t.xp6(5),t.hij("(",o.fromtable,")")}}function na(e,n){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,Kn,7,6,"span",4),t.YNc(2,ea,8,6,"span",4),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngIf","GSRS"===i.fromtable),t.xp6(1),t.Q6J("ngIf","GSRS"!=i.fromtable)}}function aa(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Product Name "),t.qZA())}function ia(e,n){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.productName," ")}}function oa(e,n){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,ia,2,1,"div",44),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngForOf",i.productNameAllList)}}function sa(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Labeler Name "),t.qZA())}function ra(e,n){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.labelerName," ")}}function ca(e,n){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.YNc(2,ra,2,1,"div",44),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.labelerName," "),t.xp6(1),t.Q6J("ngForOf",i.productCompanyAllList)}}function ua(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Country "),t.qZA())}function pa(e,n){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.countryWithoutCode," ")}}function la(e,n){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,pa,2,1,"div",44),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngForOf",i.productCompanyAllList)}}function da(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Status "),t.qZA())}function ma(e,n){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.status," ")}}function _a(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Product Type "),t.qZA())}function va(e,n){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.productType," ")}}function fa(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Ingredient Type "),t.qZA())}function ga(e,n){if(1&e&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&e){var i=t.oxw(2).$implicit;t.xp6(1),t.hij(" ",i.ingredientType," ")}}function ba(e,n){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,ga,2,1,"div",4),t.qZA()),2&e){var i=t.oxw().$implicit,o=t.oxw(4);t.xp6(1),t.Q6J("ngIf",o.substance.uuid===i.substanceUuid)}}function ha(e,n){if(1&e&&(t.TgZ(0,"div"),t.YNc(1,ba,2,1,"div",4),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngIf",i.substanceUuid)}}function Ca(e,n){if(1&e&&(t.TgZ(0,"td",35),t.YNc(1,ha,2,1,"div",44),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.Q6J("ngForOf",i.productIngredientAllList)}}function xa(e,n){1&e&&(t.TgZ(0,"th",34),t._uU(1," Application Number "),t.qZA())}function Sa(e,n){if(1&e&&(t.TgZ(0,"td",35),t._uU(1),t.qZA()),2&e){var i=n.$implicit;t.xp6(1),t.hij(" ",i.appTypeNumber," ")}}function Ta(e,n){1&e&&t._UZ(0,"tr",45)}function Aa(e,n){1&e&&t._UZ(0,"tr",46)}var Za=function(){return[5,10,25,100]};function ya(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"div",10),t.TgZ(2,"b"),t._uU(3),t.qZA(),t._uU(4," \xa0\xa0\xa0 "),t.TgZ(5,"span",11),t._uU(6),t.qZA(),t._uU(7," \xa0\xa0\xa0 "),t.YNc(8,Fn,4,0,"span",12),t.qZA(),t.TgZ(9,"div",13),t.YNc(10,zn,2,0,"div",14),t.TgZ(11,"table",15),t.ynx(12,16),t.YNc(13,$n,2,0,"th",17),t.YNc(14,na,3,2,"td",18),t.BQk(),t.ynx(15,19),t.YNc(16,aa,2,0,"th",17),t.YNc(17,oa,2,1,"td",18),t.BQk(),t.ynx(18,20),t.YNc(19,sa,2,0,"th",17),t.YNc(20,ca,3,2,"td",18),t.BQk(),t.ynx(21,21),t.YNc(22,ua,2,0,"th",17),t.YNc(23,la,2,1,"td",18),t.BQk(),t.ynx(24,22),t.YNc(25,da,2,0,"th",17),t.YNc(26,ma,2,1,"td",18),t.BQk(),t.ynx(27,23),t.YNc(28,_a,2,0,"th",17),t.YNc(29,va,2,1,"td",18),t.BQk(),t.ynx(30,24),t.YNc(31,fa,2,0,"th",17),t.YNc(32,Ca,2,1,"td",18),t.BQk(),t.ynx(33,25),t.YNc(34,xa,2,0,"th",17),t.YNc(35,Sa,2,1,"td",18),t.BQk(),t.YNc(36,Ta,1,0,"tr",26),t.YNc(37,Aa,1,0,"tr",27),t.qZA(),t.qZA(),t.TgZ(38,"mat-paginator",28),t.NdJ("page",function(s){return t.CHM(i),t.oxw(2).getSubstanceProducts(s)}),t.qZA(),t.qZA()}if(2&e){var o=n.$implicit,c=t.oxw(2);t.s9C("label",o),t.xp6(3),t.hij(" ",o,""),t.xp6(3),t.Oqu(c.loadingStatus),t.xp6(2),t.Q6J("ngIf",c.isAdmin),t.xp6(2),t.Q6J("ngIf",c.showSpinner),t.xp6(1),t.Q6J("dataSource",c.paged),t.xp6(25),t.Q6J("matHeaderRowDef",c.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",c.displayedColumns),t.xp6(1),t.Q6J("length",c.totalRecords)("pageSize",5)("pageSizeOptions",t.DdM(11,Za))}}function Ea(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.YNc(1,Rn,6,0,"div",4),t.TgZ(2,"mat-tab-group",7),t.NdJ("selectedTabChange",function(a){return t.CHM(i),t.oxw().tabSelected(a)}),t.YNc(3,ya,39,12,"mat-tab",8),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.MGl("label","Product (",o.productCount,")"),t.xp6(1),t.Q6J("ngIf",!0===o.loadingComplete&&!1===o.foundProvenanceList&&0===o.productCount),t.xp6(2),t.Q6J("ngForOf",o.provenanceList)}}function Ua(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-application",47),t.NdJ("countApplicationOut",function(a){return t.CHM(i),t.oxw().getApplicationCount(a)}),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.MGl("label","Application (",o.applicationCount,")"),t.xp6(1),t.Q6J("bdnum",o.bdnum)}}function Na(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-tab",6),t.TgZ(2,"app-substance-clinical-trials",48),t.NdJ("countClinicalTrialOut",function(a){return t.CHM(i),t.oxw().getClinicalTrialCount(a)}),t.qZA(),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.xp6(1),t.MGl("label","Clinical Trial (",o.clinicalTrialCount,")"),t.xp6(1),t.Q6J("bdnum",o.bdnum)("substanceUuid",o.substance.uuid)}}function Da(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-clinical-trials-eu",49),t.NdJ("countClinicalTrialEuOut",function(a){return t.CHM(i),t.oxw().getClinicalTrialEuCount(a)}),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.MGl("label","Clinical Trial Europe (",o.clinicalTrialEuCount,")"),t.xp6(1),t.Q6J("bdnum",o.bdnum)("substanceUuid",o.substance.uuid)}}function Pa(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-adverseeventpt",50),t.NdJ("countAdvPtOut",function(a){return t.CHM(i),t.oxw().getAdvPtCount(a)}),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.MGl("label","Adverse Event PT (",o.advPtCount,")"),t.xp6(1),t.Q6J("bdnum",o.bdnum)("substanceName",o.substanceName)}}function Oa(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-adverseeventdme",51),t.NdJ("countAdvDmeOut",function(a){return t.CHM(i),t.oxw().getAdvDmeCount(a)}),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.MGl("label","Adverse Event DME (",o.advDmeCount,")"),t.xp6(1),t.Q6J("bdnum",o.bdnum)}}function wa(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-adverseeventcvm",52),t.NdJ("countAdvCvmOut",function(a){return t.CHM(i),t.oxw().getAdvCvmCount(a)}),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.MGl("label","Adverse Event CVM (",o.advCvmCount,")"),t.xp6(1),t.Q6J("bdnum",o.bdnum)}}function qa(e,n){if(1&e){var i=t.EpF();t.TgZ(0,"mat-tab",6),t.TgZ(1,"app-substance-impurities",53),t.NdJ("countImpuritiesOut",function(a){return t.CHM(i),t.oxw().getImpuritiesCount(a)}),t.qZA(),t.qZA()}if(2&e){var o=t.oxw();t.MGl("label","Impurities Specs (",o.impuritiesCount,")"),t.xp6(1),t.Q6J("substanceUuid",o.substance.uuid)("substanceName",o.substanceName)}}var Ya=function(){var e=function(n){(0,C.Z)(o,n);var i=(0,x.Z)(o);function o(c,a,s,u,l,m,p){var r;return(0,b.Z)(this,o),(r=i.call(this,a,s)).router=c,r.gaService=a,r.productService=s,r.configService=u,r.authService=l,r.loadingService=m,r.dialog=p,r.productCount=0,r.applicationCount=0,r.clinicalTrialCount=0,r.clinicalTrialEuCount=0,r.advPtCount=0,r.advDmeCount=0,r.advCvmCount=0,r.impuritiesCount=0,r.provenance="",r.provenanceList="",r.datasourceList="",r.loadingStatus="",r.showSpinner=!1,r.foundProvenanceList=!1,r.loadingComplete=!1,r.substanceName="",r.privateExport=!1,r.disableExport=!1,r.etag="",r.etagAllExport="",r.displayedColumns=["productId","productName","labelerName","country","status","productNameType","ingredientType","applicationNumber"],r}return(0,g.Z)(o,[{key:"ngOnInit",value:function(){var a=this;this.loadedComponents=this.configService.configData.loadedComponents||null,this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,I.q)(1)).subscribe(function(s){a.isAdmin=s}),this.substance&&this.substance.uuid&&(this.getSubstanceKey(),this.getProductProvenanceList(),this.privateSearch='root_productIngredientAllList_substanceUuid:"'+this.substance.uuid+'"',this.getSubstanceProducts(null,"initial")),this.baseDomain=this.configService.configData.apiUrlDomain}},{key:"ngAfterViewInit",value:function(){}},{key:"getApplicationCount",value:function(a){this.applicationCount=a}},{key:"getClinicalTrialCount",value:function(a){this.clinicalTrialCount=a}},{key:"getClinicalTrialEuCount",value:function(a){this.clinicalTrialEuCount=a}},{key:"getAdvPtCount",value:function(a){this.advPtCount=a}},{key:"getAdvDmeCount",value:function(a){this.advDmeCount=a}},{key:"getAdvCvmCount",value:function(a){this.advCvmCount=a}},{key:"getImpuritiesCount",value:function(a){this.impuritiesCount=a}},{key:"getSubstanceKey",value:function(){var a=this;this.substance&&(this.substanceName=this.substance._name,this.substance.codes.length>0&&this.substance.codes.forEach(function(s){s.codeSystem&&"BDNUM"===s.codeSystem&&s.type&&"PRIMARY"===s.type&&(a.bdnum=s.code)}))}},{key:"getProductProvenanceList",value:function(){var a=this;this.productService.getProductProvenanceList(this.substance.uuid).subscribe(function(s){a.provenanceList=s,a.provenanceList&&a.provenanceList.length>0&&(a.foundProvenanceList=!0),a.loadingComplete=!0})}},{key:"getSubstanceProducts",value:function(a,s){var u=this;this.setPageEvent(a),this.showSpinner=!0;var m=this.productService.getProducts("default",this.page*this.pageSize,this.pageSize,this.privateSearch,this.privateFacetParams).subscribe(function(p){s&&"initial"===s?u.etagAllExport=p.etag:(u.productService.totalRecords=p.total,u.setResultData(p.content),u.productCount=p.total,u.etag=p.etag)},function(p){console.log("error")},function(){m.unsubscribe()});this.loadingStatus="",this.showSpinner=!1}},{key:"export",value:function(){var a=this;if(this.etagAllExport){var s="xlsx",u=this.getApiExportUrl(this.etagAllExport,s);""!==this.authService.getUser()&&this.dialog.open(N.L,{height:"215x",width:"550px",data:{extension:s,type:"substanceProduct"}}).afterClosed().subscribe(function(m){m&&""!==m&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(u,a.privateExport,m+"."+s).subscribe(function(r){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",r.id])},function(r){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,s){return this.productService.getApiExportUrl(a,s)}},{key:"tabSelected",value:function(a){if(a){var u=a.tab.textLabel;null!=u&&(this.loadingStatus="Loading data...",this.provenance=u,this.paged=[],this.privateSearch='root_productIngredientAllList_substanceUuid:"'+this.substance.uuid+'" AND root_provenance:'+this.provenance,this.getSubstanceProducts())}}}]),o}(E);return e.\u0275fac=function(i){return new(i||e)(t.Y36(f.F0),t.Y36(y.$),t.Y36(z.M),t.Y36(Y.E),t.Y36(U.e),t.Y36(D.b),t.Y36(P.uw))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-products"]],features:[t.qOj],decls:12,vars:9,consts:[[1,"info-container"],["aria-label","FDA details","target","_blank",3,"href",4,"ngIf"],[1,"bordergray","mat-tab-style"],[3,"label",4,"ngIf"],[4,"ngIf"],["aria-label","FDA details","target","_blank",3,"href"],[3,"label"],[3,"selectedTabChange"],[3,"label",4,"ngFor","ngForOf"],[1,"padleft25px","colorblue"],[1,"padtop5px","padleft25px","font15px","colorblue"],[1,"colorred"],["class","export",4,"ngIf"],[1,"responsive","mat-table-style"],["class","spinnerstyle",4,"ngIf"],["mat-table","",1,"font12px",3,"dataSource"],["matColumnDef","productId"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","productName"],["matColumnDef","labelerName"],["matColumnDef","country"],["matColumnDef","status"],["matColumnDef","productNameType"],["matColumnDef","ingredientType"],["matColumnDef","applicationNumber"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],["mat-header-cell",""],["mat-cell",""],["target","_blank",3,"routerLink"],[4,"ngIf","ngIfElse"],["noProdNDCGSRS",""],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink"],["svgIcon","edit"],["noProdNDC",""],[1,"font10px","colorgray"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row",""],[3,"bdnum","countApplicationOut"],[3,"bdnum","substanceUuid","countClinicalTrialOut"],[3,"bdnum","substanceUuid","countClinicalTrialEuOut"],[3,"bdnum","substanceName","countAdvPtOut"],[3,"bdnum","countAdvDmeOut"],[3,"bdnum","countAdvCvmOut"],[3,"substanceUuid","substanceName","countImpuritiesOut"]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t.YNc(1,Jn,1,1,"a",1),t.qZA(),t.TgZ(2,"div",2),t.TgZ(3,"mat-tab-group"),t.YNc(4,Ea,4,3,"mat-tab",3),t.YNc(5,Ua,2,2,"mat-tab",3),t.YNc(6,Na,3,3,"div",4),t.YNc(7,Da,2,3,"mat-tab",3),t.YNc(8,Pa,2,3,"mat-tab",3),t.YNc(9,Oa,2,2,"mat-tab",3),t.YNc(10,wa,2,2,"mat-tab",3),t.YNc(11,qa,2,3,"mat-tab",3),t.qZA(),t.qZA()),2&i&&(t.xp6(1),t.Q6J("ngIf",o.substance&&o.substance.uuid),t.xp6(3),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.adverseevents),t.xp6(1),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.adverseevents),t.xp6(1),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.adverseevents),t.xp6(1),t.Q6J("ngIf",o.loadedComponents&&o.loadedComponents.impurities))},directives:[v.O5,q.SP,q.uX,v.sg,S.lW,T.Hw,A.Ou,d.BZ,d.w1,d.fO,d.ge,d.Dz,d.ev,f.yS,d.as,d.XQ,d.nj,d.Gk,Z.NW,Ct,Mt,te,Se,Je,nn,Ln],styles:[".mat-table-style[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;font-size:12px}.mat-tab-style[_ngcontent-%COMP%] .mat-tab-labels[_ngcontent-%COMP%], .mat-tab-style[_ngcontent-%COMP%] .mat-tab-label[_ngcontent-%COMP%], .mat-tab-style[_ngcontent-%COMP%] .mat-tab-link[_ngcontent-%COMP%]{color:#00f}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.font10px[_ngcontent-%COMP%]{font-size:10px}.font15px[_ngcontent-%COMP%]{font-size:15px}.colorgray[_ngcontent-%COMP%]{color:gray}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.colorblue[_ngcontent-%COMP%]{color:#4b4572}.colorred[_ngcontent-%COMP%]{color:red}.info-container[_ngcontent-%COMP%]{margin-bottom:15px}.info-container[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#00f;text-decoration:none}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}"]}),e}(),Ia=_(33865),ka=_(43365),J=_(90587),Ma=(_(64061),function(){var e=(0,g.Z)(function n(){(0,b.Z)(this,n)});return e.\u0275fac=function(i){return new(i||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[v.ez,F.o0.forChild(Ya),d.p0,Ia.HT,Z.TU,w.JX,ka.c,q.Nh,S.ot,T.Ps,A.Cq,J.UX,J.u5,f.Bz]]}),e}())}}]); -//# sourceMappingURL=4371.6026c0c6ad88dd22.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4371.6026c0c6ad88dd22.js.map b/frontend/src/main/resources/static/4371.6026c0c6ad88dd22.js.map deleted file mode 100644 index 600ab40..0000000 --- a/frontend/src/main/resources/static/4371.6026c0c6ad88dd22.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"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","names":["SubstanceDetailsBaseTableDisplay","gaService","service","s","pageEvent","this","page","pageIndex","pageSize","results","totalRecords","filtered","pageChangeFda","analyticsEventCategory","paged","i","length","push","o","SubstanceCardBaseFilteredList","factory","i0","ctx_r20","ctx_r41","SubstanceApplicationComponent","router","authService","loadingService","applicationService","generalService","dialog","r","EventEmitter","hasAnyRolesAsync","pipe","take","subscribe","a","isAdmin","response","bdnum","getApplicationCenterList","privateSearch","getApplicationBySubstanceKeyCenter","centerListOriginal","centerList","foundCenterList","loadingComplete","$event","textLabel","tab","loadingStatus","index","indexOf","center","slice","fromTable","searchType","setPageEvent","showSpinner","subscription","getApplicationAll","privateFacetParams","u","etagAllExport","pagingResponse","etag","total","applicationCount","setResultData","content","countApplicationOut","emit","console","log","unsubscribe","extension","url","getApiExportUrl","getUser","open","ExportDialogComponent","height","width","data","type","afterClosed","name","setLoading","startUserDownload","privateExport","navigate","id","getAppAllApiExportUrl","getUpdateApplicationUrl","exportUrl","getApplicationListExportUrl","selectors","ctx","ctx_r16","SubstanceClinicalTrialsComponent","clinicalTrialService","configService","loadedComponents","configData","substanceUuid","getSubstanceClinicalTrials","subscriptions","forEach","skip","subscriptionClinical","getClinicalTrials","searchTerm","cutoff","order","facets","clinicalTrialCount","countClinicalTrialOut","getClinicalTrialListExportUrl","ctx_r12","SubstanceClinicalTrialsEuropeComponent","getSubstanceClinicalTrialsEurope","clinicalTrialEuCount","countClinicalTrialEuOut","getApiEuropeExportUrl","cteu","_","clinicalTrialEuropeMeddraList","join","SubstanceAdverseEventPtComponent","adverseEventService","adverseEventPtSearchSortValues","rolesSubscription","getAdverseEventPt","getFaersDashboardUrl","getFaersDashboardRecordByName","adverseEventPtListExportUrl","getAdverseEventShinyConfig","adverseEventCount","countAdvPtOut","getAdverseEventPtListExportUrl","sort","active","orderIndex","displayedColumns","toString","ascDescDir","direction","sortValues","sortValue","value","getApiExportUrlPt","faersNameSubscription","substanceName","FAERSDashboardSubstanceName","FAERSDashboardAdverseEventUrl","FAERSDashboardReactionTerm","FAERSDashboardSearchTerm","adverseEventShinySubstanceNameDisplay","JSON","parse","adverseEventShinySubstanceNameURL","adverseEventShinySubstanceNameURLWithParam","decodeURIComponent","adverseEventShinyAdverseEventDisplay","adverseEventShinyAdverseEventURL","adverseEventShinyAdverseEventURLWithParam","result","SubstanceAdverseEventDmeComponent","p","adverseEventDmeSearchSortValues","getAdverseEventDme","adverseEventDmeListExportUrl","countAdvDmeOut","getApiExportUrlDme","getAdverseEventDmeListExportUrl","SubstanceAdverseEventCvmComponent","adverseEventCvmSearchSortValues","getAdverseEventCvm","adverseEventCvmListExportUrl","countAdvCvmOut","getApiExportUrlCvm","getAdverseEventCvmListExportUrl","SubstanceImpuritiesComponent","impuritiesService","getImpuritiesBySubstanceUuid","impuritiesListExportUrl","privateSearchTerm","searchImpurities","impurities","impuritiesCount","countImpuritiesOut","loadImpuritiesTestDetails","totalImpurities","element","impuritiesSubstanceList","elementSub","indexSub","_parentSubstanceName","_parentSubstanceUuid","impuritiesTestList","elementTest","indexTest","impuritiesDetailsList","elementDetail","indexDetail","relatedSubstanceUuid","subSubscription","getSubstanceNamesBySubstanceUuid","substanceNames","names","displayName","preferredTerm","getImpuritiesListExportUrl","ctx_r33","ctx_r74","ctx_r76","ctx_r78","ctx_r80","ctx_r82","ctx_r84","ctx_r86","ctx_r88","ctx_r90","SubstanceProductsComponent","productService","substance","uuid","getSubstanceKey","getProductProvenanceList","getSubstanceProducts","baseDomain","apiUrlDomain","advPtCount","advDmeCount","advCvmCount","_name","codes","codeSystem","code","provenanceList","foundProvenanceList","getProducts","productCount","provenance","SubstanceProductsModule","g","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatSortModule","MatInputModule","MatTabsModule","MatButtonModule","MatIconModule","MatProgressSpinnerModule","ReactiveFormsModule","FormsModule","RouterModule"],"sources":["./src/app/fda/substance-details/substance-products/substance-details-base-table-display.ts","./src/app/fda/substance-details/substance-products/substance-application/substance-application.component.html","./src/app/fda/substance-details/substance-products/substance-application/substance-application.component.ts","./src/app/fda/substance-details/substance-products/substance-clinical-trials/substance-clinical-trials.component.html","./src/app/fda/substance-details/substance-products/substance-clinical-trials/substance-clinical-trials.component.ts","./src/app/fda/substance-details/substance-products/substance-clinical-trials-eu/substance-clinical-trials-eu.component.html","./src/app/fda/substance-details/substance-products/substance-clinical-trials-eu/substance-clinical-trials-eu.component.ts","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventpt/substance-adverseeventpt.component.html","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventpt/substance-adverseeventpt.component.ts","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventdme/substance-adverseeventdme.component.html","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventdme/substance-adverseeventdme.component.ts","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component.html","./src/app/fda/substance-details/substance-products/substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component.ts","./src/app/fda/substance-details/substance-products/substance-impurities/substance-impurities.component.html","./src/app/fda/substance-details/substance-products/substance-impurities/substance-impurities.component.ts","./src/app/fda/substance-details/substance-products/substance-products.component.html","./src/app/fda/substance-details/substance-products/substance-products.component.ts","./src/app/fda/substance-details/substance-products/substance-products.module.ts"],"sourcesContent":["import { Component, OnInit, Input, Injectable } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FormControl } from '@angular/forms';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\n\n@Injectable()\nexport class SubstanceDetailsBaseTableDisplay extends SubstanceCardBaseFilteredList implements OnInit {\n\n totalRecords: 0;\n public results: Array = [];\n isAdmin = false;\n exportUrl: string;\n\n @Input() bdnum: string;\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private service\n ) {\n super(gaService);\n // this.service = service;\n }\n\n ngOnInit(): void {\n }\n\n setPageEvent(pageEvent?: PageEvent): void {\n if (pageEvent != null) {\n this.page = pageEvent.pageIndex;\n this.pageSize = pageEvent.pageSize;\n }\n }\n\n setResultData(results: Array, totalRecords?: number): void {\n this.results = results;\n this.filtered = results;\n this.totalRecords = this.service.totalRecords;\n this.pageChangeFda();\n }\n\n pageChangeFda(pageEvent?: PageEvent, analyticsEventCategory?: string): void {\n if (pageEvent != null) {\n\n /*\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.page !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent(analyticsEventCategory, eventAction, 'pager', eventValue);\n */\n\n // this.page = pageEvent.pageIndex;\n // this.pageSize = pageEvent.pageSize;\n }\n\n this.paged = [];\n\n if (this.filtered) {\n for (let i = 0; i < this.filtered.length; i++) {\n if (this.filtered[i] != null) {\n this.paged.push(this.filtered[i]);\n } else {\n break;\n }\n }\n }\n }\n\n}\n","
\n
\n
No Application Found
\n
\n
\n\n\n \n\n
\n {{appCenter}}\n    \n {{loadingStatus}}\n    \n \n \n \n \n\n \n
\n\n
\n\n \n
\n \n \n
\n\n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Application Type \n \n {{application.appType}}\n   \n \n \n \n \n \n {{application.appType}}\n
(Integrity)\n
\n
Application Number {{application.appNumber}} Product Name \n\n
\n \n
\n {{prodName.productName}}\n
\n
\n
Sponsor Name {{application.sponsorName}} Application Status {{application.appStatus}} Application Sub Type {{application.appSubType}}
\n
\n \n \n
\n
\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { PageEvent } from '@angular/material/paginator';\nimport { take } from 'rxjs/operators';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { ApplicationService } from '../../../application/service/application.service';\nimport { GeneralService } from '../../../service/general.service';\nimport { Application } from '../../../application/model/application.model';\nimport { SubstanceDetailsBaseTableDisplay } from '../../substance-products/substance-details-base-table-display';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\n\n@Component({\n selector: 'app-substance-application',\n templateUrl: './substance-application.component.html',\n styleUrls: ['./substance-application.component.scss']\n})\n\nexport class SubstanceApplicationComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n\n application: any;\n applicationCount = 0;\n totalApplication = 0;\n centerList: Array = [];\n centerListOriginal: Array = [];\n center = '';\n fromTable = '';\n loadingStatus = '';\n showSpinner = false;\n foundCenterList = false;\n loadingComplete = false;\n // result: any;\n public privateSearch?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n @Input() bdnum: string;\n @Output() countApplicationOut: EventEmitter = new EventEmitter();\n\n displayedColumns: string[] = [\n 'appType', 'appNumber', 'productName', 'sponsorName', 'applicationStatus', 'applicationSubType'];\n\n constructor(\n private router: Router,\n public authService: AuthService,\n private loadingService: LoadingService,\n public gaService: GoogleAnalyticsService,\n private applicationService: ApplicationService,\n private generalService: GeneralService,\n private dialog: MatDialog\n ) {\n super(gaService, applicationService);\n }\n\n ngOnInit() {\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n\n /*\n if (this.substance && this.substance.uuid) {\n alert(this.substance.uuid);\n this.generalService.getSubstanceCodesBySubstanceUuid(this.substance.uuid).subscribe(results => {\n if (results) {\n const substanceCodes = results;\n for (let index = 0; index < substanceCodes.length; index++) {\n if (substanceCodes[index].codeSystem === 'BDNUM') {\n this.bdnum = substanceCodes[index].code;\n break;\n }\n }\n }\n });\n }\n */\n\n if (this.bdnum) {\n this.getApplicationCenterList();\n\n this.privateSearch = 'root_applicationProductList_applicationIngredientList_substanceKey:'\n + this.bdnum;\n this.getApplicationBySubstanceKeyCenter(null, 'initial');\n // this.getApplicationCenterByBdnum();\n // this.getSubstanceApplications();\n // this.applicationListExportUrl();\n }\n }\n\n /*\n searchApplicationBySubstanceKey(): string {\n this.applicationService.searchApplicationBySubstanceKey(this.bdnum).subscribe(results => {\n this.results = results;\n if (results) {\n // const content = results.content;\n // if (this.centerList && this.centerList.length > 0) {\n // this.foundCenterList = true;\n }\n this.loadingComplete = true;\n }\n });\n // return this.centerList;\n }\n */\n\n /* PLAY FRAMEWORK */\n /*\n getApplicationCenterByBdnum(): string {\n this.applicationService.getApplicationCenterByBdnum(this.bdnum).subscribe(results => {\n this.centerList = results.centerList;\n if (this.centerList && this.centerList.length > 0) {\n this.foundCenterList = true;\n }\n this.loadingComplete = true;\n });\n return this.centerList;\n }\n */\n\n getApplicationCenterList(): void {\n this.applicationService.getApplicationCenterList(this.bdnum).subscribe(results => {\n this.centerListOriginal = results;\n this.centerList = results;\n if (this.centerList && this.centerList.length > 0) {\n this.foundCenterList = true;\n\n // Replace 'Darrts' to 'Integrity' and 'SRS' to 'GSRS'\n /* this.centerList.forEach((cent, index) => {\n if (cent != null) {\n let centerReplace = '';\n if (cent.indexOf('Darrts') > 0) {\n centerReplace = cent.replace('Darrts', 'Integrity');\n } else if (cent.indexOf('SRS') > 0) {\n centerReplace = cent.replace('SRS', 'GSRS');\n }\n\n if (centerReplace.length > 0) {\n this.centerList[index] = centerReplace;\n }\n }\n }); */\n }\n this.loadingComplete = true;\n });\n }\n\n applicationTabSelected($event) {\n if ($event) {\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n // Get Center and fromTable/Source from Tab Label\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n const index = textLabel.indexOf(' ');\n this.center = textLabel.slice(0, index);\n this.fromTable = textLabel.slice(index + 1, textLabel.length);\n\n //let fromReplace = '';\n /*\n if (this.fromTable.indexOf('Integrity') >= 0) {\n fromReplace = this.fromTable.replace('Integrity', 'Darrts');\n } else if (this.fromTable.indexOf('GSRS') >= 0) {\n fromReplace = this.fromTable.replace('GSRS', 'SRS');\n }\n if (fromReplace && fromReplace.length > 0) {\n this.fromTable = fromReplace;\n }\n */\n }\n\n // set the current result data to empty or null.\n this.paged = [];\n\n this.privateSearch = 'root_applicationProductList_applicationIngredientList_substanceKey:'\n + this.bdnum + ' AND root_center:' + this.center + ' AND root_fromTable: ' + this.fromTable;\n\n this.getApplicationBySubstanceKeyCenter();\n }\n }\n\n /*\n getApplicationBySubstanceKeyCenter(pageEvent ?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n // , this.page, this.pageSize\n this.applicationService.getApplicationBySubstanceKeyCenter(this.bdnum).subscribe(results => {\n this.setResultData(results.content);\n this.application = results.content;\n this.totalApplication = results.total;\n this.applicationService.totalRecords = results.total;\n this.etag = results.etag;\n this.countApplicationOut.emit(this.totalApplication);\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n // GSRS 3.0\n getApplicationBySubstanceKeyCenter(pageEvent?: PageEvent, searchType?: string) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n\n // if (searchType && searchType === 'initial') {\n // this.pageSize = 100;\n // }\n const subscription = this.applicationService.getApplicationAll(\n 'default',\n skip,\n this.pageSize,\n this.privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse.etag;\n } else {\n this.applicationService.totalRecords = pagingResponse.total;\n this.applicationCount = pagingResponse.total;\n\n this.setResultData(pagingResponse.content);\n\n this.etag = pagingResponse.etag;\n this.countApplicationOut.emit(this.applicationCount);\n }\n }, error => {\n console.log('error');\n }, () => {\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getSubstanceApplications(pageEvent ?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.applicationService.getSubstanceApplications(this.bdnum, this.center, this.fromTable, this.page, this.pageSize)\n .subscribe(results => {\n this.setResultData(results);\n this.applicationCount = this.totalRecords;\n this.countApplicationOut.emit(this.applicationCount);\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n });\n */\n /*\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.clinicaltrials, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.countUpdate.emit(clinicaltrials.length);\n });\n\n}\n*/\n\n export() {\n if (this.etagAllExport) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceApplication' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.applicationCount\n }\n };\n const params = { 'total': this.applicationCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.applicationService.getAppAllApiExportUrl(etag, extension);\n }\n\n get updateApplicationUrl(): string {\n return this.applicationService.getUpdateApplicationUrl();\n }\n\n applicationListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.applicationService.getApplicationListExportUrl(this.bdnum);\n }\n }\n\n}\n","
\n Clinical Trial US    \n\n \n \n \n \n\n
\n\n
\n\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
\n \n \n \n Trial Number\n\n {{clinical.trialNumber}}\n \n Title {{clinical.title}} Sponsor Name {{clinical.sponsor}} Conditions {{clinical.conditions}} Outcome Measures {{clinical.outcomeMeasures}}
\n
\n\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ClinicalTrialService } from '../../../clinical-trials/clinical-trial/clinical-trial.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { Subscription, Observable, Subject } from 'rxjs';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { take } from 'rxjs/operators';\n\n\n@Component({\n selector: 'app-substance-clinical-trials',\n templateUrl: './substance-clinical-trials.component.html',\n styleUrls: ['./substance-clinical-trials.component.scss']\n})\n\nexport class SubstanceClinicalTrialsComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n\n private privateFacetParams: FacetParam;\n clinicalTrialCount = 0;\n showSpinner = false;\n private subscriptions: Array = [];\n\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n loadedComponents: LoadedComponents;\n loadingStatus = '';\n\n @Input() substanceUuid: string;\n @Output() countClinicalTrialOut: EventEmitter = new EventEmitter();\n\n displayedColumns: string[] = [\n 'edit',\n 'nctNumber',\n 'title',\n 'sponsorName',\n 'conditions',\n 'outcomemeasures'\n ];\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private clinicalTrialService: ClinicalTrialService,\n private configService: ConfigService,\n public authService: AuthService,\n private loadingService: LoadingService,\n private router: Router,\n private dialog: MatDialog \n ) {\n super(gaService, clinicalTrialService);\n }\n\n ngOnInit() {\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n if (this.substanceUuid) {\n this.getSubstanceClinicalTrials(null, 'initial');\n }\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getSubstanceClinicalTrials(pageEvent?: PageEvent, searchType?: string): void {\n this.setPageEvent(pageEvent);\n const skip = this.page * this.pageSize;\n this.showSpinner = true; // Start progress spinner\n const subscriptionClinical = this.clinicalTrialService.getClinicalTrials({\n searchTerm: this.substanceUuid,\n cutoff: null,\n type: \"substanceKey\",\n order: '$trialNumber',\n pageSize: this.pageSize,\n facets: this.privateFacetParams,\n skip: skip\n })\n .subscribe(pagingResponse => {\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse.etag;\n } \n // AW removed else clause so this runs every time. \n // This makes it work, but AW might need to understand the \n // intention better. \n // else {\n this.clinicalTrialService.totalRecords = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.clinicalTrialCount = pagingResponse.total;\n this.etag = pagingResponse.etag;\n // } \n\n this.countClinicalTrialOut.emit(this.clinicalTrialCount);\n this.showSpinner = false; // Stop progress spinner\n });\n\n /*\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.clinicaltrials, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.countUpdate.emit(clinicaltrials.length);\n });\n */\n this.subscriptions.push(subscriptionClinical);\n }\n\n\n export() {\n if (this.etagAllExport) {\n const extension = 'ctus.xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceClinicalTrialUS' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.clinicalTrialCount\n }\n };\n const params = { 'total': this.clinicalTrialCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.clinicalTrialService.getApiExportUrl(etag, extension);\n }\n\n\n\n clinicalTrialListExportUrl() {\n if (this.substanceUuid != null) {\n this.exportUrl = this.clinicalTrialService.getClinicalTrialListExportUrl(this.substanceUuid);\n }\n }\n\n /*\n // copied from products but has no effect. Make approaoch uniform in future. \n tabSelected($event) {\n if ($event) {\n console.log(\"EVENT\");\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n this.paged = [];\n this.getSubstanceClinicalTrials();\n }\n\n }\n }\n*/\n\n}\n","
\n Clinical Trials Europe\n    \n\n \n \n \n \n
\n\n
\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Eudract Number\n \n Title {{clinical.title}} Sponsor Name {{clinical.sponsorName}} Conditions{{joinMeddraTerms(clinical)}}
\n
\n\n\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ClinicalTrialService } from '../../../clinical-trials/clinical-trial/clinical-trial.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { Subscription, Observable, Subject } from 'rxjs';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { take } from 'rxjs/operators';\nimport * as _ from 'lodash';\n\n@Component({\n selector: 'app-substance-clinical-trials-eu',\n templateUrl: './substance-clinical-trials-eu.component.html',\n styleUrls: ['./substance-clinical-trials-eu.component.scss']\n})\n\nexport class SubstanceClinicalTrialsEuropeComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n private privateFacetParams: FacetParam;\n clinicalTrialEuCount = 0;\n showSpinner = false;\n private subscriptions: Array = [];\n\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n loadedComponents: LoadedComponents;\n loadingStatus = '';\n\n @Input() substanceUuid: string;\n @Output() countClinicalTrialEuOut: EventEmitter = new EventEmitter();\n\n displayedColumns: string[] = [\n 'trialNumber',\n 'title',\n 'sponsorName',\n 'conditions'\n ];\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private clinicalTrialService: ClinicalTrialService,\n private configService: ConfigService,\n public authService: AuthService,\n private loadingService: LoadingService,\n private router: Router,\n private dialog: MatDialog \n ) {\n super(gaService, clinicalTrialService);\n }\n\n ngOnInit() {\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n if (this.substanceUuid) {\n this.getSubstanceClinicalTrialsEurope(null, 'initial');\n }\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getSubstanceClinicalTrialsEurope(pageEvent?: PageEvent, searchType?: string): void {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const subscriptionClinical = this.clinicalTrialService.getSubstanceClinicalTrialsEurope(\n this.substanceUuid, this.page, this.pageSize\n )\n .subscribe(pagingResponse => {\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse['etag'];\n } \n this.setResultData(pagingResponse['content']);\n this.clinicalTrialEuCount = pagingResponse['total'];\n this.countClinicalTrialEuOut.emit(this.clinicalTrialEuCount);\n this.showSpinner = false; // Stop progress spinner\n });\n /*\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.clinicaltrials, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.countUpdate.emit(clinicaltrials.length);\n });\n */\n this.subscriptions.push(subscriptionClinical);\n }\n\n\n export() {\n if (this.etagAllExport) {\n const extension = 'cteu.xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceClinicalTrialEU' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.clinicalTrialEuCount\n }\n };\n const params = { 'total': this.clinicalTrialEuCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.clinicalTrialService.getApiEuropeExportUrl(etag, extension);\n }\n\n\n// delete this? \n// clinicalTrialListExportUrl() {\n// if (this.substanceUuid != null) {\n// this.exportUrl = this.clinicalTrialService.getClinicalTrialEuropeListExportUrl(this.substanceUuid);\n// }\n// }\n\n /*\n // copied from products but has no effect. Make approaoch uniform in future. \n tabSelected($event) {\n if ($event) {\n console.log(\"EVENT\");\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n this.paged = [];\n this.getSubstanceClinicalTrials();\n }\n\n */\n joinMeddraTerms(cteu: any) {\n if(cteu) {\n // const a =[{\"meddraTerm\": \"meddraTerm1\"}, {\"meddraTerm\": \"meddraTerm2\"},{\"meddraTerm\": \"meddraTerm3\"},{\"meddraTerm\": \"meddraTerm4\"}];\n return _.map(cteu.clinicalTrialEuropeMeddraList, 'meddraTerm').join(\"|\");\n }\n } \n}","
\n\n
\n
\n Adverse Event PT\n
\n
0\">\n \n \n 0\">\n \n \n
\n \n
\n\n
\n\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
PT Term \n {{adverse.ptTerm}}\n \n \n analytics\n \n \n Prim SOC {{adverse.primSoc}} Case Count {{adverse.caseCount}} PT Count \n
\n \n
\n
\n FAERS Public Dashboard\n
\n \n
\n
\n
PRR {{adverse.prr | number : '.2-2'}}
\n
\n \n ","import { Component, OnInit, OnDestroy, Output, EventEmitter, Input } from '@angular/core';\nimport { TitleCasePipe } from '@angular/common';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { AdverseEventService } from '../../../../adverse-event/service/adverseevent.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../../substance-products/substance-details-base-table-display';\nimport { Sort } from '@angular/material/sort';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ConfigService } from '@gsrs-core/config';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { AuthService } from '@gsrs-core/auth';\nimport { Subscription } from 'rxjs';\nimport { adverseEventPtSearchSortValues } from '../../../../adverse-event/adverse-events-pt-browse/adverse-events-pt-search-sort-values';\n\n@Component({\n selector: 'app-substance-adverseeventpt',\n templateUrl: './substance-adverseeventpt.component.html',\n styleUrls: ['./substance-adverseeventpt.component.scss']\n})\n\nexport class SubstanceAdverseEventPtComponent extends SubstanceDetailsBaseTableDisplay implements OnInit, OnDestroy {\n @Input() bdnum: string;\n @Input() substanceName: string;\n @Output() countAdvPtOut: EventEmitter = new EventEmitter();\n\n adverseEventCount = 0;\n order = '$root_ptCount';\n ascDescDir = 'desc';\n showSpinner = false;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n public sortValues = adverseEventPtSearchSortValues;\n privateExport = false;\n disableExport = false;\n etag = '';\n loadingStatus = '';\n private subscriptions: Array = [];\n\n adverseEventShinySubstanceNameDisplay = false;\n adverseEventShinyAdverseEventDisplay = false;\n adverseEventShinySubstanceNameURL: string;\n adverseEventShinyAdverseEventURL: string;\n adverseEventShinySubstanceNameURLWithParam: string;\n adverseEventShinyAdverseEventURLWithParam: string;\n\n // FAERS DASHBOARD\n FAERSDashboardAdverseEventUrl: string;\n FAERSDashboardSubstanceName: string;\n FAERSDashboardSearchTerm = \"/select/Search%20Term/\"; // FAERS Adverse Event 'Substance Name'\n FAERSDashboardReactionTerm = \"/select/Reaction%20Term/\"; // GSRS Adverse Event 'PT Term'\n FAERSDashboardReactionGroup = \"/select/Reaction%20Group/\"; // GSRS Adverse Event 'Prim SOC'\n\n filtered: Array;\n displayedColumns: string[] = [\n 'ptTerm',\n 'primSoc',\n 'caseCount',\n 'ptCount',\n 'prr'\n ];\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private adverseEventService: AdverseEventService,\n private loadingService: LoadingService,\n private configService: ConfigService,\n private authService: AuthService,\n private dialog: MatDialog\n ) {\n super(gaService, adverseEventService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n\n if (this.bdnum) {\n this.getAdverseEventPt();\n\n // FAERS DASHBOARD\n this.getFaersDashboardUrl();\n this.getFaersDashboardRecordByName();\n\n this.adverseEventPtListExportUrl();\n this.getAdverseEventShinyConfig();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getAdverseEventPt(pageEvent?: PageEvent) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n const privateSearch = 'root_substanceKey:' + this.bdnum;\n const subscription = this.adverseEventService.getAdverseEventPt(\n this.order,\n skip,\n this.pageSize,\n privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.adverseEventService.totalRecords = pagingResponse.total;\n this.adverseEventCount = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.etag = pagingResponse.etag;\n this.countAdvPtOut.emit(this.adverseEventCount);\n }, error => {\n console.log('error');\n }, () => {\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getSubstanceAdverseEventPt(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n this.adverseEventService.getSubstanceAdverseEventPtAdv(this.bdnum, this.page, this.pageSize,\n this.orderBy, this.ascDescDir).subscribe(results => {\n this.setResultData(results);\n this.advPtCount = this.totalRecords;\n this.countAdvPtOut.emit(this.advPtCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n adverseEventPtListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.adverseEventService.getAdverseEventPtListExportUrl(this.bdnum);\n }\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getAdverseEventPt();\n }\n return;\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceAdverseEventPt' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.adverseEventCount\n }\n };\n const params = { 'total': this.adverseEventCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlPt(etag, extension);\n }\n\n getFaersDashboardRecordByName(): void {\n // Get FAERS Name from database table that contains 'P' and 'G' in name.\n // Example: Acetazolamide (G) instead of GSRS name Acetazolamide\n const faersNameSubscription = this.adverseEventService.getFaersDashboardRecordByName(this.substanceName).subscribe(results => {\n if (results) {\n if (results.name) {\n this.FAERSDashboardSubstanceName = results.name;\n this.FAERSDashboardAdverseEventUrl = this.FAERSDashboardAdverseEventUrl + results.name + this.FAERSDashboardReactionTerm;\n }\n }\n });\n this.subscriptions.push(faersNameSubscription);\n }\n\n getFaersDashboardUrl(): void {\n if (this.configService.configData) {\n if (this.configService.configData.FAERSDashboardAdverseEventUrl\n && this.configService.configData.FAERSDashboardAdverseEventUrl !== null) {\n const faersUrlConfig = this.configService.configData.FAERSDashboardAdverseEventUrl;\n\n // FULL FAERS DASHBOARD URL\n // faersUrl + /select/Search%20Term/ + FaersName + /select/Reaction%20Term/ + ptTerm + /select/Reaction%20Group/ + primSoc;\n this.FAERSDashboardAdverseEventUrl = faersUrlConfig + this.FAERSDashboardSearchTerm;\n }\n }\n }\n\n getAdverseEventShinyConfig(): void {\n if (this.configService.configData) {\n\n // Analysis by Substance in Shiny Config\n if (this.configService.configData.adverseEventShinySubstanceNameDisplay\n && this.configService.configData.adverseEventShinySubstanceNameDisplay !== null) {\n this.adverseEventShinySubstanceNameDisplay = JSON.parse(this.configService.configData.adverseEventShinySubstanceNameDisplay);\n }\n if (this.configService.configData.adverseEventShinySubstanceNameURL\n && this.configService.configData.adverseEventShinySubstanceNameURL !== null) {\n this.adverseEventShinySubstanceNameURL = this.configService.configData.adverseEventShinySubstanceNameURL;\n this.adverseEventShinySubstanceNameURLWithParam = this.adverseEventShinySubstanceNameURL + decodeURIComponent(this.substanceName);\n }\n\n // Analysis by Adverse Event in Shiny Config\n if (this.configService.configData.adverseEventShinyAdverseEventDisplay\n && this.configService.configData.adverseEventShinyAdverseEventDisplay !== null) {\n this.adverseEventShinyAdverseEventDisplay = JSON.parse(this.configService.configData.adverseEventShinyAdverseEventDisplay);\n }\n if (this.configService.configData.adverseEventShinyAdverseEventURL\n && this.configService.configData.adverseEventShinyAdverseEventURL !== null) {\n this.adverseEventShinyAdverseEventURL = this.configService.configData.adverseEventShinyAdverseEventURL;\n this.adverseEventShinyAdverseEventURLWithParam = this.adverseEventShinyAdverseEventURL;\n }\n\n }\n }\n\n getDecodeURL(value: string): string {\n let result = '';\n if (value !== null) {\n result = decodeURIComponent(value);\n }\n return result;\n }\n\n}\n\n","
\n Adverse Event DME\n    \n \n \n 0\">\n \n \n
\n\n
\n\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
DME Reactions {{adverse.dmeReactions}} PT Term Meddra {{adverse.ptTermMeddra}} Case Count {{adverse.caseCount}} Dme Count {{adverse.dmeCount}} Dme Count Percent {{adverse.dmeCountPercent}} Weighted Average PRR {{adverse.weightedAvgPrr | number : '.2-2'}}
\n
\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Sort } from '@angular/material/sort';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { AdverseEventService } from '../../../../adverse-event/service/adverseevent.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { Subscription } from 'rxjs';\nimport { adverseEventDmeSearchSortValues } from '../../../../adverse-event/adverse-events-dme-browse/adverse-events-dme-search-sort-values';\n\n@Component({\n selector: 'app-substance-adverseeventdme',\n templateUrl: './substance-adverseeventdme.component.html',\n styleUrls: ['./substance-adverseeventdme.component.scss']\n})\n\nexport class SubstanceAdverseEventDmeComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n\n @Input() bdnum: string;\n @Output() countAdvDmeOut: EventEmitter = new EventEmitter();\n\n adverseEventCount = 0;\n order = '$root_dmeCount';\n ascDescDir = 'desc';\n showSpinner = false;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n loadingStatus = '';\n public sortValues = adverseEventDmeSearchSortValues;\n private subscriptions: Array = [];\n\n displayedColumns: string[] = [\n 'dmeReactions', 'ptTermMeddra', 'caseCount', 'dmeCount', 'dmeCountPercent', 'weightedAvgPrr'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private adverseEventService: AdverseEventService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, adverseEventService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n\n if (this.bdnum) {\n this.getAdverseEventDme();\n // this.getSubstanceAdverseEventDme();\n this.adverseEventDmeListExportUrl();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getAdverseEventDme(pageEvent?: PageEvent) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n const privateSearch = 'root_substanceKey:' + this.bdnum;\n const subscription = this.adverseEventService.getAdverseEventDme(\n this.order,\n skip,\n this.pageSize,\n privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.adverseEventService.totalRecords = pagingResponse.total;\n this.adverseEventCount = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.etag = pagingResponse.etag;\n this.countAdvDmeOut.emit(this.adverseEventCount);\n }, error => {\n console.log('error');\n }, () => {\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getSubstanceAdverseEventDme(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.adverseEventService.getSubstanceAdverseEventDme(this.bdnum, this.page, this.pageSize).subscribe(results => {\n this.setResultData(results);\n this.advDmeCount = this.totalRecords;\n this.countAdvDmeOut.emit(this.advDmeCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString();\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getAdverseEventDme();\n }\n return;\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceAdverseEventDme' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.adverseEventCount\n }\n };\n const params = { 'total': this.adverseEventCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlDme(etag, extension);\n }\n\n adverseEventDmeListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.adverseEventService.getAdverseEventDmeListExportUrl(this.bdnum);\n }\n }\n\n}\n","
\n Adverse Event CVM\n    \n \n \n 0\">\n \n \n
\n\n\n\n
\n\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Adverse Event {{adverse.adverseEvent}} Species {{adverse.species}} Adverse Event Count {{adverse.aeCount}} Route of Administration {{adverse.routeOfAdmin}}
\n
\n\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Sort } from '@angular/material/sort';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { AdverseEventService } from '../../../../adverse-event/service/adverseevent.service';\nimport { SubstanceDetailsBaseTableDisplay } from '../../../substance-products/substance-details-base-table-display';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { Subscription } from 'rxjs';\nimport { adverseEventCvmSearchSortValues } from '../../../../adverse-event/adverse-events-cvm-browse/adverse-events-cvm-search-sort-values';\n\n@Component({\n selector: 'app-substance-adverseeventcvm',\n templateUrl: './substance-adverseeventcvm.component.html',\n styleUrls: ['./substance-adverseeventcvm.component.scss']\n})\n\nexport class SubstanceAdverseEventCvmComponent extends SubstanceDetailsBaseTableDisplay implements OnInit {\n\n @Input() bdnum: string;\n @Output() countAdvCvmOut: EventEmitter = new EventEmitter();\n\n adverseEventCount = 0;\n order = '$root_aeCount';\n ascDescDir = 'desc';\n showSpinner = false;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n loadingStatus = '';\n public sortValues = adverseEventCvmSearchSortValues;\n private subscriptions: Array = [];\n\n displayedColumns: string[] = [\n 'adverseEvent', 'species', 'adverseEventCount', 'routeOfAdmin'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private adverseEventService: AdverseEventService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, adverseEventService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n if (this.bdnum) {\n this.getAdverseEventCvm();\n // this.getSubstanceAdverseEventCvm();\n this.adverseEventCvmListExportUrl();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getAdverseEventCvm(pageEvent?: PageEvent) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n const privateSearch = 'root_substanceKey:' + this.bdnum;\n const subscription = this.adverseEventService.getAdverseEventCvm(\n this.order,\n skip,\n this.pageSize,\n privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.adverseEventService.totalRecords = pagingResponse.total;\n this.adverseEventCount = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.etag = pagingResponse.etag;\n this.countAdvCvmOut.emit(this.adverseEventCount);\n }, error => {\n console.log('error');\n }, () => {\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString(); // + 2; // Adding 2, for name and bdnum.\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n this.getAdverseEventCvm();\n }\n return;\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceAdverseEventCvm' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.adverseEventCount\n }\n };\n const params = { 'total': this.adverseEventCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlCvm(etag, extension);\n }\n\n adverseEventCvmListExportUrl() {\n if (this.bdnum != null) {\n this.exportUrl = this.adverseEventService.getAdverseEventCvmListExportUrl(this.bdnum);\n }\n }\n\n}\n\n","
\n Impurities Specs\n    \n \n \n \n \n\n \n
\n\n
\n \n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Product/Substance Name\n \n Source Type {{impurities.sourceType}} Source {{impurities.source}} Source ID {{impurities.sourceId}} Type {{impurities.type}} Spec Type {{impurities.specType}} Parent Substance \n \n Impurities Related Substance\n
\n \n \n \n
\n \n
\n
\n \n \n \n     {{impDetail.limitType}} \n {{impDetail.limitValue}} {{impDetail.unit}}\n \n
    {{impDetail.impurityType}}\n
\n \n
\n
\n \n
\n\n \n \n\n
\n
\n
\n\n\n","import { Component, OnInit, OnDestroy, Input, Output, EventEmitter } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ImpuritiesService } from '../../../impurities/service/impurities.service';\nimport { GeneralService } from '../../../service/general.service';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { SubstanceDetailsBaseTableDisplay } from '../substance-details-base-table-display';\nimport { Impurities, ImpuritiesTesting, ImpuritiesDetails, IdentityCriteria } from '../../../impurities/model/impurities.model';\nimport { Facet } from '@gsrs-core/facets-manager';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\n\n@Component({\n selector: 'app-substance-impurities',\n templateUrl: './substance-impurities.component.html',\n styleUrls: ['./substance-impurities.component.scss']\n})\nexport class SubstanceImpuritiesComponent extends SubstanceDetailsBaseTableDisplay implements OnInit, OnDestroy {\n\n @Input() substanceUuid: string;\n @Input() substanceName: string;\n @Output() countImpuritiesOut: EventEmitter = new EventEmitter();\n private subscriptions: Array = [];\n parentSubstance: string;\n parentSubstanceUuid: string;\n showSpinner = false;\n impurities: Array;\n totalImpurities = 0;\n impuritiesCount = 0;\n impuritiesTestTotal = 0;\n pageIndex = 0;\n pageSize = 5;\n public privateSearchTerm?: string;\n private privateFacetParams: FacetParam;\n privateExport = false;\n disableExport = false;\n etag = '';\n displayedColumns: string[] = [\n 'productName',\n 'sourceType',\n 'source',\n 'sourceid',\n 'type',\n 'specType',\n 'parentSubstance',\n 'relatedSubstance'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private impuritiesService: ImpuritiesService,\n private generalService: GeneralService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, impuritiesService);\n }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n\n if (this.substanceUuid) {\n this.getImpuritiesBySubstanceUuid();\n this.impuritiesListExportUrl();\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n }\n\n /*\n getSubstanceImpuritiesNEW(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.impuritiesService.searchImpurities(this.substanceUuid, this.page, this.pageSize).subscribe(results => {\n this.setResultData(results);\n this.impurities = results;\n this.getImpuritiesTestTotal();\n this.impuritiesCount = this.totalRecords;\n this.countImpuritiesOut.emit(this.impuritiesCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n searchImpurities() {\n this.privateSearchTerm = this.substanceUuid;\n // this.loadingService.setLoading(true);\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.impuritiesService.searchImpurities(\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n // this.isError = false;\n\n this.setResultData(pagingResponse.content);\n this.impurities = pagingResponse.content;\n this.impuritiesCount = pagingResponse.total;\n this.countImpuritiesOut.emit(this.impuritiesCount);\n this.etag = pagingResponse.etag;\n\n /*\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n */\n // Set Facets from paging response\n /* if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n */\n }, error => {\n /*\n console.log('error');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve Products. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n */\n }, () => {\n subscription.unsubscribe();\n // this.isLoading = false;\n // this.loadingService.setLoading(this.isLoading);\n });\n }\n\n getImpuritiesBySubstanceUuid(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n // , this.page, this.pageSize\n this.impuritiesService.getImpuritiesBySubstanceUuid(this.substanceUuid).subscribe(results => {\n this.impuritiesService.totalRecords = results.total;\n this.impurities = results.content;\n\n // Load Impurities Test Details by Substance Uuid\n this.loadImpuritiesTestDetails();\n\n this.setResultData(this.impurities);\n\n this.totalImpurities = results.total;\n\n this.etag = results.etag;\n this.countImpuritiesOut.emit(this.totalImpurities);\n });\n this.showSpinner = false; // Stop progress spinner\n }\n\n /*\n getImpuritiesByTestImpuritiesDetails(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n // , this.page, this.pageSize\n this.impuritiesService.getImpuritiesBySubstanceUuid(this.substanceUuid).subscribe(results => {\n this.impuritiesService.totalRecords = results.total;\n this.impurities = results.content;\n\n //Load Impurities Test Details by Substance Uuid\n this.loadImpuritiesTestDetails();\n\n this.setResultData(this.impurities);\n\n this.totalImpurities = results.total;\n\n this.etag = results.etag;\n this.countImpuritiesOut.emit(this.totalImpurities);\n });\n this.showSpinner = false; // Stop progress spinner\n }\n */\n\n loadImpuritiesTestDetails() {\n this.impurities.forEach((element, index) => {\n element.impuritiesSubstanceList.forEach((elementSub, indexSub) => {\n\n if (elementSub.substanceUuid) {\n // if current Substance is same as Parent Substance of Impurities\n if (elementSub.substanceUuid === this.substanceUuid) {\n elementSub._parentSubstanceName = this.substanceName;\n elementSub._parentSubstanceUuid = elementSub.substanceUuid;\n }\n }\n elementSub.impuritiesTestList.forEach((elementTest, indexTest) => {\n\n elementTest.impuritiesDetailsList.forEach((elementDetail, indexDetail) => {\n\n if (elementDetail.relatedSubstanceUuid != null) {\n // if current Substance is same as Impurities Details of Impurities\n if (elementDetail.relatedSubstanceUuid === this.substanceUuid) {\n const subSubscription = this.generalService.getSubstanceNamesBySubstanceUuid(elementSub.substanceUuid).subscribe(substanceNames => {\n let subNames = substanceNames;\n\n // Get Preferred Term or DisplayName == true\n subNames.forEach((names, index) => {\n if (names.displayName === true) {\n elementSub._parentSubstanceName = names.name;\n elementSub._parentSubstanceUuid = elementSub.substanceUuid;\n }\n });\n });\n this.subscriptions.push(subSubscription);\n }\n }\n }); // Impurities Details forEach\n }); // Test forEach\n }); // Substance forEach\n }); // Impurities forEach\n }\n\n getSubstanceNames(substanceUuid: string): string {\n let preferredTerm;\n if (substanceUuid) {\n const subSubscription = this.generalService.getSubstanceNamesBySubstanceUuid(substanceUuid).subscribe(substanceNames => {\n let subNames = substanceNames;\n\n // Get Preferred Term or DisplayName == true\n subNames.forEach((names, index) => {\n if (names.displayName === true) {\n preferredTerm = names.name;\n }\n });\n });\n this.subscriptions.push(subSubscription);\n return preferredTerm;\n }\n }\n\n /*\n getSubstanceImpurities(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n\n this.showSpinner = true; // Start progress spinner\n this.impuritiesService.getSubstanceImpurities(this.substanceUuid, this.page, this.pageSize).subscribe(results => {\n this.setResultData(results);\n this.impurities = results;\n this.impuritiesCount = this.totalRecords;\n this.impuritiesService.totalRecords = this.totalRecords;\n this.countImpuritiesOut.emit(this.impuritiesCount);\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceImpurities' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalImpurities\n }\n };\n const params = { 'total': this.totalImpurities };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.impuritiesService.getApiExportUrl(etag, extension);\n }\n\n impuritiesListExportUrl() {\n if (this.substanceUuid != null) {\n this.exportUrl = this.impuritiesService.getImpuritiesListExportUrl(this.substanceUuid);\n }\n }\n\n}\n","
\n \n \n \n
\n
\n \n\n \n\n
\n
\n
No Product Found
\n
\n
\n \n \n
\n {{prov}}\n    \n {{loadingStatus}}\n    \n \n \n \n \n \n
\n\n
\n\n
\n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Product ID \n \n \n \n {{product.productNDC}}\n \n \n (NO NDC)\n \n \n   \n \n \n \n \n \n \n \n {{product.productNDC}}\n \n \n (NO NDC)\n \n \n
({{product.fromtable}})\n
\n
Product Name \n
\n {{prodName.productName}}\n
\n
Labeler Name {{product.labelerName}}\n
\n {{prodComp.labelerName}}\n
\n
Country \n
\n {{prodComp.countryWithoutCode}}\n
\n
Status {{product.status}} Product Type {{product.productType}} Ingredient Type \n
\n
\n
\n {{prodIng.ingredientType}}\n
\n
\n
\n
Application Number {{product.appTypeNumber}}
\n
\n \n \n
\n\n\n
\n\n \n
\n\n \n\n\n \n \n \n \n\n
\n \n \n \n \n
\n\n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n
\n
\n","import { Component, OnInit, AfterViewInit, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ProductService } from '../../product/service/product.service';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort } from '@angular/material/sort';\nimport { PageEvent } from '@angular/material/paginator';\nimport { SubstanceDetailsBaseTableDisplay } from './substance-details-base-table-display';\nimport { SubstanceAdverseEventCvmComponent } from './substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { AuthService } from '@gsrs-core/auth';\nimport { take } from 'rxjs/operators';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\n\n@Component({\n selector: 'app-substance-products',\n templateUrl: './substance-products.component.html',\n styleUrls: ['./substance-products.component.scss']\n})\n\nexport class SubstanceProductsComponent extends SubstanceDetailsBaseTableDisplay implements OnInit, AfterViewInit {\n\n productCount = 0;\n applicationCount = 0;\n clinicalTrialCount = 0;\n clinicalTrialEuCount = 0;\n advPtCount = 0;\n advDmeCount = 0;\n advCvmCount = 0;\n impuritiesCount = 0;\n provenance = '';\n provenanceList = '';\n datasourceList = '';\n loadingStatus = '';\n showSpinner = false;\n baseDomain: string;\n foundProvenanceList = false;\n loadingComplete = false;\n substanceName = '';\n public privateSearch?: string;\n private privateFacetParams: FacetParam;\n public privateSearchTerm?: string;\n privateExport = false;\n disableExport = false;\n etag = '';\n etagAllExport = '';\n loadedComponents: LoadedComponents;\n public displayedColumns: string[] = [\n 'productId',\n 'productName',\n 'labelerName',\n 'country',\n 'status',\n 'productNameType',\n 'ingredientType',\n 'applicationNumber'\n ];\n\n constructor(\n private router: Router,\n public gaService: GoogleAnalyticsService,\n private productService: ProductService,\n private configService: ConfigService,\n public authService: AuthService,\n private loadingService: LoadingService,\n private dialog: MatDialog\n ) {\n super(gaService, productService);\n }\n\n ngOnInit() {\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n\n if (this.substance && this.substance.uuid) {\n this.getSubstanceKey();\n\n // Get Provenance List to Display in Tab\n this.getProductProvenanceList();\n\n this.privateSearch = 'root_productIngredientAllList_substanceUuid:\\\"' + this.substance.uuid + '\"';\n this.getSubstanceProducts(null, 'initial');\n }\n\n this.baseDomain = this.configService.configData.apiUrlDomain;\n }\n\n ngAfterViewInit() {\n }\n\n getApplicationCount($event: any) {\n this.applicationCount = $event;\n }\n\n getClinicalTrialCount($event: any) {\n this.clinicalTrialCount = $event;\n }\n\n getClinicalTrialEuCount($event: any) {\n this.clinicalTrialEuCount = $event;\n }\n\n getAdvPtCount($event: any) {\n this.advPtCount = $event;\n }\n\n getAdvDmeCount($event: any) {\n this.advDmeCount = $event;\n }\n\n getAdvCvmCount($event: any) {\n this.advCvmCount = $event;\n }\n\n getImpuritiesCount($event: any) {\n this.impuritiesCount = $event;\n }\n\n getSubstanceKey() {\n if (this.substance) {\n // Get Substance Name\n this.substanceName = this.substance._name;\n if (this.substance.codes.length > 0) {\n this.substance.codes.forEach(element => {\n if (element.codeSystem && element.codeSystem === 'BDNUM') {\n if (element.type && element.type === 'PRIMARY') {\n this.bdnum = element.code;\n }\n }\n });\n }\n }\n }\n\n getProductProvenanceList(): void {\n this.productService.getProductProvenanceList(this.substance.uuid).subscribe(results => {\n this.provenanceList = results;\n if (this.provenanceList && this.provenanceList.length > 0) {\n this.foundProvenanceList = true;\n }\n this.loadingComplete = true;\n });\n }\n\n /* WORKS In PLAY FRAMEWORK\n getProductProvenanceList(): void {\n this.productService.getProductProvenanceList(this.substance.uuid).subscribe(results => {\n this.provenanceList = results.provenanceList;\n if (this.provenanceList && this.provenanceList.length > 0) {\n this.foundProvenanceList = true;\n }\n this.loadingComplete = true;\n });\n }\n */\n\n /* WORKS In PLAY FRAMEWORK\n getSubstanceProducts(pageEvent?: PageEvent): void {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n this.productService.getSubstanceProducts(this.substance.uuid, this.provenance, this.page, this.pageSize).subscribe(results => {\n this.setResultData(results);\n this.productCount = this.totalRecords;\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n });\n }\n */\n\n getSubstanceProducts(pageEvent?: PageEvent, searchType?: string) {\n this.setPageEvent(pageEvent);\n this.showSpinner = true; // Start progress spinner\n const skip = this.page * this.pageSize;\n\n // Facet Search for \"Provenance\"\n // this.privateFacetParams = { 'Provenance': { 'params': { 'SPL': true }, 'isAllMatch': false } };\n\n const subscription = this.productService.getProducts(\n 'default',\n skip,\n this.pageSize,\n this.privateSearch,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n if (searchType && searchType === 'initial') {\n this.etagAllExport = pagingResponse.etag;\n } else {\n this.productService.totalRecords = pagingResponse.total;\n this.setResultData(pagingResponse.content);\n this.productCount = pagingResponse.total;\n this.etag = pagingResponse.etag;\n }\n }, error => {\n console.log('error');\n }, () => {\n subscription.unsubscribe();\n });\n this.loadingStatus = '';\n this.showSpinner = false; // Stop progress spinner\n }\n\n export() {\n if (this.etagAllExport) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etagAllExport, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'substanceProduct' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.productCount\n }\n };\n const params = { 'total': this.productCount };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.productService.getApiExportUrl(etag, extension);\n }\n\n tabSelected($event) {\n if ($event) {\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n // Get Country and fromTable/Source from Tab Label\n if (textLabel != null) {\n this.loadingStatus = 'Loading data...';\n this.provenance = textLabel;\n // const index = textLabel.indexOf(' ');\n // const tab = textLabel.slice(0, index);\n // this.country = textLabel.slice(index + 1, textLabel.length);\n // set the current result data to empty or null.\n this.paged = [];\n\n this.privateSearch = 'root_productIngredientAllList_substanceUuid:\\\"'\n + this.substance.uuid + '\\\" AND root_provenance:' + this.provenance;\n\n this.getSubstanceProducts();\n\n }\n\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '@gsrs-core/dynamic-component-loader';\nimport { SubstanceProductsComponent } from './substance-products.component';\nimport { MatTableModule } from '@angular/material/table';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { SubstanceApplicationComponent } from './substance-application/substance-application.component';\nimport { SubstanceClinicalTrialsComponent } from './substance-clinical-trials/substance-clinical-trials.component';\nimport { SubstanceAdverseEventPtComponent } from './substance-adverseevent/adverseeventpt/substance-adverseeventpt.component';\nimport { SubstanceAdverseEventDmeComponent } from './substance-adverseevent/adverseeventdme/substance-adverseeventdme.component';\nimport { SubstanceAdverseEventCvmComponent } from './substance-adverseevent/adverseeventcvm/substance-adverseeventcvm.component';\nimport { SubstanceClinicalTrialsEuropeComponent } from './substance-clinical-trials-eu/substance-clinical-trials-eu.component';\nimport { SubstanceImpuritiesComponent } from './substance-impurities/substance-impurities.component';\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceProductsComponent),\n MatTableModule,\n CdkTableModule,\n MatPaginatorModule,\n MatSortModule,\n MatInputModule,\n MatTabsModule,\n MatButtonModule,\n MatIconModule,\n MatProgressSpinnerModule,\n ReactiveFormsModule,\n FormsModule,\n RouterModule\n ],\n declarations: [\n SubstanceProductsComponent,\n SubstanceApplicationComponent,\n SubstanceClinicalTrialsComponent,\n SubstanceAdverseEventPtComponent,\n SubstanceAdverseEventDmeComponent,\n SubstanceAdverseEventCvmComponent,\n SubstanceClinicalTrialsEuropeComponent,\n SubstanceImpuritiesComponent,\n ]\n})\nexport class SubstanceProductsModule { }\n"],"sourceRoot":"webpack:///","file":"4371.6026c0c6ad88dd22.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4394.9d7f56427461ceb0.js b/frontend/src/main/resources/static/4394.185e7693ad579c75.js similarity index 51% rename from frontend/src/main/resources/static/4394.9d7f56427461ceb0.js rename to frontend/src/main/resources/static/4394.185e7693ad579c75.js index 28f42d6..af395e5 100644 --- a/frontend/src/main/resources/static/4394.9d7f56427461ceb0.js +++ b/frontend/src/main/resources/static/4394.185e7693ad579c75.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4394],{64394:function(R,C,e){e.r(C),e.d(C,{SubstanceFormMixtureComponentsModule:function(){return X}});var p=e(48047),l=e(78069),c=e(36362),h=e(75143),x=e(7168),f=e(19975),d=e(65590),v=e(87317),M=e(94673),T=e(44770),g=e(90587),b=e(26439),Z=e(43365),y=e(24582),F=e(7318),S=e(79550),U=e(87625),O=e(40104),t=e(76442),A=e(78444),I=e(51279),P=e(63169),D=e(66088),J=e(24459),N=e(16667);function Q(i,r){if(1&i){var o=t.EpF();t.TgZ(0,"div",11),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",12),t.NdJ("click",function(){return t.CHM(o),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",13),t.qZA(),t.qZA()}}function Y(i,r){1&i&&(t.TgZ(0,"span",14),t._uU(1,"*required"),t.qZA())}var E=function(){var i=function(){function r(o,n){(0,l.Z)(this,r),this.utilsService=o,this.overlayContainerService=n,this.componentDeleted=new t.vpe,this.invalid=!1}return(0,p.Z)(r,[{key:"onFocusout",value:function(){this.invalid=!this.privateComp.type}},{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"component",get:function(){return this.privateComp},set:function(n){this.privateComp=n,this.privateComp.substance&&(this.relatedSubstanceUuid=this.privateComp.substance.refuuid)}},{key:"updateType",value:function(n){this.privateComp.type=n,this.invalid=!this.privateComp.type}},{key:"deleteComponent",value:function(){var n=this;this.privateComp.$$deletedCode=this.utilsService.newUUID(),(!this.privateComp||!this.component)&&(this.deleteTimer=setTimeout(function(){n.componentDeleted.emit(n.privateComp)},1e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateComp.$$deletedCode}},{key:"componentUpdated",value:function(n){this.component.substance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.component.substance.refuuid}}]),r}();return i.\u0275fac=function(o){return new(o||i)(t.Y36(P.FW),t.Y36(D.Xj))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-mixture-component-form"]],hostBindings:function(o,n){1&o&&t.NdJ("focusout",function(){return n.onFocusout()})},inputs:{component:"component"},outputs:{componentDeleted:"componentDeleted"},decls:11,vars:6,consts:[[1,"component-form-container","form-row"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"related-substance"],[1,"flex-column"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Mixture Component","header","Mixture Component",3,"subuuid","name","selectionUpdated"],[1,"type"],["domain","MIXTURE_TYPE","title","Mixture Component Type *",3,"ngClass","model","valueChange"],["class","invalid-note",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"invalid-note"]],template:function(o,n){1&o&&(t.TgZ(0,"div",0),t.YNc(1,Q,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"button",3),t.NdJ("click",function(){return n.deleteComponent()}),t._UZ(4,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(5,"div",5),t.TgZ(6,"div",6),t.TgZ(7,"app-substance-selector",7),t.NdJ("selectionUpdated",function(a){return n.componentUpdated(a)}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"app-cv-input",9),t.NdJ("valueChange",function(a){return n.updateType(a)}),t.qZA(),t.YNc(10,Y,2,0,"span",10),t.qZA(),t.qZA()),2&o&&(t.xp6(1),t.Q6J("ngIf",n.component.$$deletedCode),t.xp6(6),t.Q6J("subuuid",n.relatedSubstanceUuid)("name",n.component.substance?n.component.substance.name:""),t.xp6(2),t.Q6J("ngClass",n.invalid?"invalid":"")("model",n.component.type),t.xp6(1),t.Q6J("ngIf",n.invalid))},directives:[c.O5,v.lW,d.Hw,J.Q,N.S,c.mk],styles:[".component-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .related-substance[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%;-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%} .related-substance img{max-width:125px!important;margin:auto}.invalid[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{color:red}.invalid[_ngcontent-%COMP%] .mat-form-field-label{color:red}.invalid[_ngcontent-%COMP%] .mat-select-arrow{color:red}.invalid-note[_ngcontent-%COMP%]{margin-bottom:18px;font-style:italic;font-size:14px;color:red}"]}),i}();function $(i,r){1&i&&t._UZ(0,"mat-divider",8),2&i&&t.Q6J("inset",!0)}function H(i,r){if(1&i){var o=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-mixture-component-form",6),t.NdJ("componentDeleted",function(m){return t.CHM(o),t.oxw().deleteComponent(m)}),t.qZA(),t.YNc(2,$,1,1,"mat-divider",7),t.qZA()}if(2&i){var n=r.$implicit,s=r.last;t.Q6J("id","substance-mixture-component-"+r.index),t.xp6(1),t.Q6J("component",n),t.xp6(1),t.Q6J("ngIf",!s)}}var j=function(){var i=function(r){(0,y.Z)(n,r);var o=(0,F.Z)(n);function n(s,a,u){var m;return(0,l.Z)(this,n),(m=o.call(this,u)).substanceFormMixtureComponentsService=s,m.scrollToService=a,m.gaService=u,m.subscriptions=[],m}return(0,p.Z)(n,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Components"),this.analyticsEventCategory="substance form mixture components"}},{key:"ngAfterViewInit",value:function(){var a=this,u=this.substanceFormMixtureComponentsService.substanceMixtureComponents.subscribe(function(m){a.relationships=m});this.subscriptions.push(u)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addItem",value:function(){this.addComponent()}},{key:"addComponent",value:function(){var a=this;this.substanceFormMixtureComponentsService.addSubstanceMixtureComponent(),setTimeout(function(){a.scrollToService.scrollToElement("substance-mixture-component-0","center")})}},{key:"deleteComponent",value:function(a){this.substanceFormMixtureComponentsService.deleteSubstanceMixtureComponent(a)}}]),n}(S.u);return i.\u0275fac=function(o){return new(o||i)(t.Y36(U.b),t.Y36(A.i),t.Y36(O.$))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-form-mixture-components-card"]],features:[t.qOj],decls:12,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","relationship","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"relationship",3,"id"],[3,"component","componentDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(o,n){1&o&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,H,3,3,"div",2),t.TgZ(3,"div",0),t.TgZ(4,"button",3),t.NdJ("click",function(){return n.addComponent()}),t._uU(5," Add component "),t._UZ(6,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(7,"div",0),t._UZ(8,"span",1),t.TgZ(9,"button",3),t.NdJ("click",function(){return n.addComponent()}),t._uU(10," Add component "),t._UZ(11,"mat-icon",4),t.qZA(),t.qZA()),2&o&&(t.xp6(2),t.Q6J("ngForOf",n.relationships))},directives:[c.sg,I.P,E,c.O5,f.d,v.lW,d.Hw],styles:[""]}),i}(),k=e(63200),X=(e(64061),function(){var i=(0,p.Z)(function r(){(0,l.Z)(this,r)});return i.\u0275fac=function(o){return new(o||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[c.ez,h.o0.forChild(j),x.O,f.t,d.Ps,v.ot,M.w,T.lN,g.UX,g.u5,b.TU,Z.c,k.U]]}),i}())}}]); -//# sourceMappingURL=4394.9d7f56427461ceb0.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4394],{64394:function(R,C,e){e.r(C),e.d(C,{SubstanceFormMixtureComponentsModule:function(){return X}});var l=e(1884),p=e(39117),c=e(36362),h=e(75143),x=e(7168),f=e(19975),d=e(65590),v=e(87317),M=e(94673),T=e(44770),g=e(90587),b=e(26439),Z=e(43365),y=e(46751),F=e(56101),S=e(79550),U=e(87625),O=e(40104),t=e(86613),A=e(78444),I=e(51279),P=e(63169),D=e(54244),J=e(24459),N=e(16667);function Q(i,r){if(1&i){var o=t.EpF();t.TgZ(0,"div",11),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",12),t.NdJ("click",function(){return t.CHM(o),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",13),t.qZA(),t.qZA()}}function Y(i,r){1&i&&(t.TgZ(0,"span",14),t._uU(1,"*required"),t.qZA())}var E=function(){var i=function(){function r(o,n){(0,p.Z)(this,r),this.utilsService=o,this.overlayContainerService=n,this.componentDeleted=new t.vpe,this.invalid=!1}return(0,l.Z)(r,[{key:"onFocusout",value:function(){this.invalid=!this.privateComp.type}},{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"component",get:function(){return this.privateComp},set:function(n){this.privateComp=n,this.privateComp.substance&&(this.relatedSubstanceUuid=this.privateComp.substance.refuuid)}},{key:"updateType",value:function(n){this.privateComp.type=n,this.invalid=!this.privateComp.type}},{key:"deleteComponent",value:function(){var n=this;this.privateComp.$$deletedCode=this.utilsService.newUUID(),(!this.privateComp||!this.component)&&(this.deleteTimer=setTimeout(function(){n.componentDeleted.emit(n.privateComp)},1e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateComp.$$deletedCode}},{key:"componentUpdated",value:function(n){this.component.substance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.component.substance.refuuid}}]),r}();return i.\u0275fac=function(o){return new(o||i)(t.Y36(P.FW),t.Y36(D.Xj))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-mixture-component-form"]],hostBindings:function(o,n){1&o&&t.NdJ("focusout",function(){return n.onFocusout()})},inputs:{component:"component"},outputs:{componentDeleted:"componentDeleted"},decls:11,vars:6,consts:[[1,"component-form-container","form-row"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"related-substance"],[1,"flex-column"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Mixture Component","header","Mixture Component",3,"subuuid","name","selectionUpdated"],[1,"type"],["domain","MIXTURE_TYPE","title","Mixture Component Type *",3,"ngClass","model","valueChange"],["class","invalid-note",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"invalid-note"]],template:function(o,n){1&o&&(t.TgZ(0,"div",0),t.YNc(1,Q,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"button",3),t.NdJ("click",function(){return n.deleteComponent()}),t._UZ(4,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(5,"div",5),t.TgZ(6,"div",6),t.TgZ(7,"app-substance-selector",7),t.NdJ("selectionUpdated",function(a){return n.componentUpdated(a)}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"app-cv-input",9),t.NdJ("valueChange",function(a){return n.updateType(a)}),t.qZA(),t.YNc(10,Y,2,0,"span",10),t.qZA(),t.qZA()),2&o&&(t.xp6(1),t.Q6J("ngIf",n.component.$$deletedCode),t.xp6(6),t.Q6J("subuuid",n.relatedSubstanceUuid)("name",n.component.substance?n.component.substance.name:""),t.xp6(2),t.Q6J("ngClass",n.invalid?"invalid":"")("model",n.component.type),t.xp6(1),t.Q6J("ngIf",n.invalid))},directives:[c.O5,v.lW,d.Hw,J.Q,N.S,c.mk],styles:[".component-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .related-substance[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%;-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%} .related-substance img{max-width:125px!important;margin:auto}.invalid[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{color:var(--regular-red-color)}.invalid[_ngcontent-%COMP%] .mat-form-field-label{color:var(--regular-red-color)}.invalid[_ngcontent-%COMP%] .mat-select-arrow{color:var(--regular-red-color)}.invalid-note[_ngcontent-%COMP%]{margin-bottom:18px;font-style:italic;font-size:14px;color:var(--regular-red-color)}"]}),i}();function $(i,r){1&i&&t._UZ(0,"mat-divider",8),2&i&&t.Q6J("inset",!0)}function H(i,r){if(1&i){var o=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-mixture-component-form",6),t.NdJ("componentDeleted",function(m){return t.CHM(o),t.oxw().deleteComponent(m)}),t.qZA(),t.YNc(2,$,1,1,"mat-divider",7),t.qZA()}if(2&i){var n=r.$implicit,s=r.last;t.Q6J("id","substance-mixture-component-"+r.index),t.xp6(1),t.Q6J("component",n),t.xp6(1),t.Q6J("ngIf",!s)}}var j=function(){var i=function(r){(0,y.Z)(n,r);var o=(0,F.Z)(n);function n(s,a,u){var m;return(0,p.Z)(this,n),(m=o.call(this,u)).substanceFormMixtureComponentsService=s,m.scrollToService=a,m.gaService=u,m.subscriptions=[],m}return(0,l.Z)(n,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Components"),this.analyticsEventCategory="substance form mixture components"}},{key:"ngAfterViewInit",value:function(){var a=this,u=this.substanceFormMixtureComponentsService.substanceMixtureComponents.subscribe(function(m){a.relationships=m});this.subscriptions.push(u)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addItem",value:function(){this.addComponent()}},{key:"addComponent",value:function(){var a=this;this.substanceFormMixtureComponentsService.addSubstanceMixtureComponent(),setTimeout(function(){a.scrollToService.scrollToElement("substance-mixture-component-0","center")})}},{key:"deleteComponent",value:function(a){this.substanceFormMixtureComponentsService.deleteSubstanceMixtureComponent(a)}}]),n}(S.u);return i.\u0275fac=function(o){return new(o||i)(t.Y36(U.b),t.Y36(A.i),t.Y36(O.$))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-form-mixture-components-card"]],features:[t.qOj],decls:12,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","relationship","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"relationship",3,"id"],[3,"component","componentDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(o,n){1&o&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,H,3,3,"div",2),t.TgZ(3,"div",0),t.TgZ(4,"button",3),t.NdJ("click",function(){return n.addComponent()}),t._uU(5," Add component "),t._UZ(6,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(7,"div",0),t._UZ(8,"span",1),t.TgZ(9,"button",3),t.NdJ("click",function(){return n.addComponent()}),t._uU(10," Add component "),t._UZ(11,"mat-icon",4),t.qZA(),t.qZA()),2&o&&(t.xp6(2),t.Q6J("ngForOf",n.relationships))},directives:[c.sg,I.P,E,c.O5,f.d,v.lW,d.Hw],styles:[""]}),i}(),k=e(63200),X=(e(64061),function(){var i=(0,l.Z)(function r(){(0,p.Z)(this,r)});return i.\u0275fac=function(o){return new(o||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[c.ez,h.o0.forChild(j),x.O,f.t,d.Ps,v.ot,M.w,T.lN,g.UX,g.u5,b.TU,Z.c,k.U]]}),i}())}}]); +//# sourceMappingURL=4394.185e7693ad579c75.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4394.9d7f56427461ceb0.js.map b/frontend/src/main/resources/static/4394.185e7693ad579c75.js.map similarity index 98% rename from frontend/src/main/resources/static/4394.9d7f56427461ceb0.js.map rename to frontend/src/main/resources/static/4394.185e7693ad579c75.js.map index 66af7a5..481aa05 100644 --- a/frontend/src/main/resources/static/4394.9d7f56427461ceb0.js.map +++ b/frontend/src/main/resources/static/4394.185e7693ad579c75.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r2","MixtureComponentFormComponent","utilsService","overlayContainerService","this","EventEmitter","invalid","privateComp","type","overlayContainer","getContainerElement","set","component","substance","relatedSubstanceUuid","refuuid","event","$$deletedCode","newUUID","deleteTimer","setTimeout","n","componentDeleted","emit","clearTimeout","refPname","_name","name","uuid","substanceClass","approvalID","r","selectors","ctx","ctx_r5","SubstanceFormMixtureComponentsCardComponent","substanceFormMixtureComponentsService","scrollToService","gaService","m","canAddItemUpdate","menuLabelUpdate","analyticsEventCategory","relationshipsSubscription","substanceMixtureComponents","subscribe","a","relationships","components","subscriptions","push","componentDestroyed","forEach","subscription","unsubscribe","addComponent","addSubstanceMixtureComponent","scrollToElement","relationship","deleteSubstanceMixtureComponent","SubstanceCardBaseFilteredList","SubstanceFormMixtureComponentsModule","p","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/mixture-components/mixture-component-form.component.html","./src/app/core/substance-form/mixture-components/mixture-component-form.component.ts","./src/app/core/substance-form/mixture-components/substance-form-mixture-components-card.component.html","./src/app/core/substance-form/mixture-components/substance-form-mixture-components-card.component.ts","./src/app/core/substance-form/mixture-components/substance-form-mixture-components.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n
\n \n *required\n
\n\n
\n","import {Component, EventEmitter, Input, OnInit, Output, HostListener} from '@angular/core';\nimport {MixtureComponents, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-mixture-component-form',\n templateUrl: './mixture-component-form.component.html',\n styleUrls: ['./mixture-component-form.component.scss']\n})\nexport class MixtureComponentFormComponent implements OnInit {\n private privateComp: MixtureComponents;\n @Output() componentDeleted = new EventEmitter();\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n invalid = false;\n\n @HostListener('focusout') onFocusout() {\n if (!this.privateComp.type) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n }\n\n constructor(\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer\n ) { }\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set component(component: MixtureComponents) {\n this.privateComp = component;\n if (this.privateComp.substance) {\n this.relatedSubstanceUuid = this.privateComp.substance.refuuid;\n }\n\n }\n\n get component(): MixtureComponents {\n return this.privateComp;\n }\n\n updateType(event: any): void {\n this.privateComp.type = event;\n if (!this.privateComp.type) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n }\n\n \n\n\n deleteComponent(): void {\n this.privateComp.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateComp || !this.component\n ) {\n this.deleteTimer = setTimeout(() => {\n this.componentDeleted.emit(this.privateComp);\n }, 1000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateComp.$$deletedCode;\n }\n\n componentUpdated(substance: SubstanceSummary): void {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.component.substance = relatedSubstance;\n this.relatedSubstanceUuid = this.component.substance.refuuid;\n }\n\n}\n","
\n \n \n
\n
\n \n \n \n
\n
\n \n
\n\n
\n \n \n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {MixtureComponents, SubstanceRelationship} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormMixtureComponentsService} from './substance-form-mixture-components.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-substance-form-mixture-components-card',\n templateUrl: './substance-form-mixture-components-card.component.html',\n styleUrls: ['./substance-form-mixture-components-card.component.scss']\n})\nexport class SubstanceFormMixtureComponentsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n relationships: Array;\n private subscriptions: Array = [];\n constructor(\n private substanceFormMixtureComponentsService: SubstanceFormMixtureComponentsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Components');\n this.analyticsEventCategory = 'substance form mixture components';\n }\n\n ngAfterViewInit() {\n const relationshipsSubscription = this.substanceFormMixtureComponentsService.substanceMixtureComponents.subscribe(components => {\n this.relationships = components;\n });\n this.subscriptions.push(relationshipsSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addComponent();\n }\n\n addComponent(): void {\n this.substanceFormMixtureComponentsService.addSubstanceMixtureComponent();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-mixture-component-0`, 'center');\n });\n }\n\n deleteComponent(relationship: MixtureComponents): void {\n this.substanceFormMixtureComponentsService.deleteSubstanceMixtureComponent(relationship);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {SubstanceFormMixtureComponentsCardComponent} from '@gsrs-core/substance-form/mixture-components/substance-form-mixture-components-card.component';\nimport { MixtureComponentFormComponent } from './mixture-component-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMixtureComponentsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormMixtureComponentsCardComponent,\n MixtureComponentFormComponent\n ]\n})\nexport class SubstanceFormMixtureComponentsModule { }\n"],"sourceRoot":"webpack:///","file":"4394.9d7f56427461ceb0.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r2","MixtureComponentFormComponent","utilsService","overlayContainerService","this","EventEmitter","invalid","privateComp","type","overlayContainer","getContainerElement","set","component","substance","relatedSubstanceUuid","refuuid","event","$$deletedCode","newUUID","deleteTimer","setTimeout","n","componentDeleted","emit","clearTimeout","refPname","_name","name","uuid","substanceClass","approvalID","r","selectors","ctx","ctx_r5","SubstanceFormMixtureComponentsCardComponent","substanceFormMixtureComponentsService","scrollToService","gaService","m","canAddItemUpdate","menuLabelUpdate","analyticsEventCategory","relationshipsSubscription","substanceMixtureComponents","subscribe","a","relationships","components","subscriptions","push","componentDestroyed","forEach","subscription","unsubscribe","addComponent","addSubstanceMixtureComponent","scrollToElement","relationship","deleteSubstanceMixtureComponent","SubstanceCardBaseFilteredList","SubstanceFormMixtureComponentsModule","l","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/mixture-components/mixture-component-form.component.html","./src/app/core/substance-form/mixture-components/mixture-component-form.component.ts","./src/app/core/substance-form/mixture-components/substance-form-mixture-components-card.component.html","./src/app/core/substance-form/mixture-components/substance-form-mixture-components-card.component.ts","./src/app/core/substance-form/mixture-components/substance-form-mixture-components.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n
\n \n *required\n
\n\n
\n","import {Component, EventEmitter, Input, OnInit, Output, HostListener} from '@angular/core';\nimport {MixtureComponents, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-mixture-component-form',\n templateUrl: './mixture-component-form.component.html',\n styleUrls: ['./mixture-component-form.component.scss']\n})\nexport class MixtureComponentFormComponent implements OnInit {\n private privateComp: MixtureComponents;\n @Output() componentDeleted = new EventEmitter();\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n invalid = false;\n\n @HostListener('focusout') onFocusout() {\n if (!this.privateComp.type) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n }\n\n constructor(\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer\n ) { }\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set component(component: MixtureComponents) {\n this.privateComp = component;\n if (this.privateComp.substance) {\n this.relatedSubstanceUuid = this.privateComp.substance.refuuid;\n }\n\n }\n\n get component(): MixtureComponents {\n return this.privateComp;\n }\n\n updateType(event: any): void {\n this.privateComp.type = event;\n if (!this.privateComp.type) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n }\n\n \n\n\n deleteComponent(): void {\n this.privateComp.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateComp || !this.component\n ) {\n this.deleteTimer = setTimeout(() => {\n this.componentDeleted.emit(this.privateComp);\n }, 1000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateComp.$$deletedCode;\n }\n\n componentUpdated(substance: SubstanceSummary): void {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.component.substance = relatedSubstance;\n this.relatedSubstanceUuid = this.component.substance.refuuid;\n }\n\n}\n","
\n \n \n
\n
\n \n \n \n
\n
\n \n
\n\n
\n \n \n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {MixtureComponents, SubstanceRelationship} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormMixtureComponentsService} from './substance-form-mixture-components.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-substance-form-mixture-components-card',\n templateUrl: './substance-form-mixture-components-card.component.html',\n styleUrls: ['./substance-form-mixture-components-card.component.scss']\n})\nexport class SubstanceFormMixtureComponentsCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n relationships: Array;\n private subscriptions: Array = [];\n constructor(\n private substanceFormMixtureComponentsService: SubstanceFormMixtureComponentsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Components');\n this.analyticsEventCategory = 'substance form mixture components';\n }\n\n ngAfterViewInit() {\n const relationshipsSubscription = this.substanceFormMixtureComponentsService.substanceMixtureComponents.subscribe(components => {\n this.relationships = components;\n });\n this.subscriptions.push(relationshipsSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addComponent();\n }\n\n addComponent(): void {\n this.substanceFormMixtureComponentsService.addSubstanceMixtureComponent();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-mixture-component-0`, 'center');\n });\n }\n\n deleteComponent(relationship: MixtureComponents): void {\n this.substanceFormMixtureComponentsService.deleteSubstanceMixtureComponent(relationship);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {SubstanceFormMixtureComponentsCardComponent} from '@gsrs-core/substance-form/mixture-components/substance-form-mixture-components-card.component';\nimport { MixtureComponentFormComponent } from './mixture-component-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMixtureComponentsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormMixtureComponentsCardComponent,\n MixtureComponentFormComponent\n ]\n})\nexport class SubstanceFormMixtureComponentsModule { }\n"],"sourceRoot":"webpack:///","file":"4394.185e7693ad579c75.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4501.077c73ff77cb1ecb.js b/frontend/src/main/resources/static/4501.077c73ff77cb1ecb.js deleted file mode 100644 index 576048a..0000000 --- a/frontend/src/main/resources/static/4501.077c73ff77cb1ecb.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4501],{24501:function(G,f,t){t.r(f),t.d(f,{SubstanceFormMonomersModule:function(){return W}});var d=t(48047),u=t(78069),l=t(36362),b=t(24582),C=t(7318),y=t(79550),x=t(24874),Z=t(21584),e=t(76442),T=t(78444),S=t(51279),O=t(18291),F=t(63169),A=t(27164),U=t(95758),P=t(66088),p=t(87317),v=t(65590),I=t(24459),k=t(16667),g=t(61534),D=t(14900);function J(r,m){if(1&r){var o=e.EpF();e.TgZ(0,"div",20),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",21),e.NdJ("click",function(){return e.CHM(o),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",22),e.qZA(),e.qZA()}}function N(r,m){if(1&r&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&r){var o=e.oxw();e.xp6(1),e.hij(" Error retrieving monomer, missing reference uuid for ",o.privateMonomer.monomerSubstance.name," ")}}function Q(r,m){if(1&r&&(e.TgZ(0,"div",23),e._uU(1),e.qZA()),2&r){var o=e.oxw();e.xp6(1),e.hij(" ",o.displayAmount(o.privateMonomer.amount)," ")}}var Y=function(){var r=function(){function m(o,n,i,a){(0,u.Z)(this,m),this.cvService=o,this.dialog=n,this.utilsService=i,this.overlayContainerService=a,this.monomerDeleted=new e.vpe,this.subscriptions=[]}return(0,d.Z)(m,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"monomer",get:function(){return this.privateMonomer},set:function(n){this.privateMonomer=n,this.relatedSubstanceUuid=this.privateMonomer.monomerSubstance?this.privateMonomer.monomerSubstance.refuuid:""}},{key:"updateType",value:function(n){this.privateMonomer.type=n}},{key:"definingChange",value:function(n){this.privateMonomer.defining=n.checked}},{key:"ngAfterViewInit",value:function(){}},{key:"deleteComponent",value:function(){var n=this;this.privateMonomer.$$deletedCode=this.utilsService.newUUID(),(!this.privateMonomer||!this.monomer)&&(this.deleteTimer=setTimeout(function(){n.monomerDeleted.emit(n.privateMonomer)},1e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMonomer.$$deletedCode}},{key:"componentUpdated",value:function(n){null!==n?(this.privateMonomer.monomerSubstance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.privateMonomer.monomerSubstance.refuuid):(this.privateMonomer.monomerSubstance=null,this.relatedSubstanceUuid=null)}},{key:"openAmountDialog",value:function(){var n=this;this.privateMonomer.amount||(this.privateMonomer.amount={});var i=this.dialog.open(A.O,{data:{subsAmount:this.privateMonomer.amount},width:"1040px"});this.overlayContainer.style.zIndex="1002";var a=i.afterClosed().subscribe(function(c){n.overlayContainer.style.zIndex=null,n.privateMonomer.amount=c});this.subscriptions.push(a)}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"formatValue",value:function(n){return n?"object"==typeof n?n.display?n.display:n.value?n.value:null:n:null}}]),m}();return r.\u0275fac=function(o){return new(o||r)(e.Y36(O.I),e.Y36(U.uw),e.Y36(F.FW),e.Y36(P.Xj))},r.\u0275cmp=e.Xpm({type:r,selectors:[["app-monomer-form"]],inputs:{monomer:"monomer"},outputs:{monomerDeleted:"monomerDeleted"},decls:22,vars:8,consts:[[1,"component-form-container","form-row"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete monomer",3,"click"],["svgIcon","delete_forever"],[1,"related-substance"],[1,"flex-column"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Monomer Substance","header","Monomer Substance",3,"subuuid","name","selectionUpdated"],[4,"ngIf"],[1,"type"],["domain","MONOMER_TYPE","title","Monomer Type",3,"model","valueChange"],[1,"amount"],[1,"label","padded","amount-label"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],["class","amount-display",4,"ngIf"],[1,"checkbox-container","column-checkbox"],[3,"checked","change"],[1,"form-row"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"amount-display"]],template:function(o,n){1&o&&(e.TgZ(0,"div",0),e.YNc(1,J,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"button",3),e.NdJ("click",function(){return n.deleteComponent()}),e._UZ(4,"mat-icon",4),e.qZA(),e.qZA(),e.TgZ(5,"div",5),e.TgZ(6,"div",6),e.TgZ(7,"app-substance-selector",7),e.NdJ("selectionUpdated",function(a){return n.componentUpdated(a)}),e.qZA(),e.YNc(8,N,2,1,"span",8),e.qZA(),e.qZA(),e.TgZ(9,"div",9),e.TgZ(10,"app-cv-input",10),e.NdJ("valueChange",function(a){return n.updateType(a)}),e.qZA(),e.qZA(),e.TgZ(11,"div",11),e.TgZ(12,"div",12),e._uU(13," Amount "),e.TgZ(14,"button",13),e.NdJ("click",function(){return n.openAmountDialog()}),e._UZ(15,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(16,Q,2,1,"div",15),e.qZA(),e.TgZ(17,"div",16),e.TgZ(18,"mat-checkbox",17),e.NdJ("change",function(a){return n.definingChange(a)}),e._uU(19,"Defining"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"div",18),e._UZ(21,"app-audit-info",19),e.qZA()),2&o&&(e.xp6(1),e.Q6J("ngIf",n.monomer.$$deletedCode),e.xp6(6),e.Q6J("subuuid",n.relatedSubstanceUuid)("name",n.privateMonomer.monomerSubstance?n.privateMonomer.monomerSubstance.name:""),e.xp6(1),e.Q6J("ngIf",n.privateMonomer.monomerSubstance&&n.privateMonomer.monomerSubstance.uuid&&!n.privateMonomer.monomerSubstance.refuuid),e.xp6(2),e.Q6J("model",n.monomer.type),e.xp6(6),e.Q6J("ngIf",n.privateMonomer.amount),e.xp6(2),e.Q6J("checked",n.privateMonomer.defining),e.xp6(3),e.Q6J("source",n.privateMonomer))},directives:[l.O5,p.lW,v.Hw,I.Q,k.S,g.oG,D.n],styles:[".notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.component-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .related-substance[_ngcontent-%COMP%]{width:30%}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:25%;-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{min-width:15%}.amount-label[_ngcontent-%COMP%]{padding-bottom:10px} .related-substance img{max-width:125px!important;margin:auto}.defining[_ngcontent-%COMP%]{padding-bottom:20px}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:7.5px;line-height:11px}.checkbox-container[_ngcontent-%COMP%], .radio-container[_ngcontent-%COMP%]{padding-bottom:16px;padding-right:15px}"]}),r}(),h=t(19975);function j(r,m){1&r&&e._UZ(0,"mat-divider",8),2&r&&e.Q6J("inset",!0)}function E(r,m){if(1&r){var o=e.EpF();e.TgZ(0,"div",5),e.TgZ(1,"app-monomer-form",6),e.NdJ("monomerDeleted",function(s){return e.CHM(o),e.oxw().deleteCode(s)}),e.qZA(),e.YNc(2,j,1,1,"mat-divider",7),e.qZA()}if(2&r){var n=m.$implicit,i=m.last;e.Q6J("id","substance-monomer-"+m.index),e.xp6(1),e.Q6J("monomer",n),e.xp6(1),e.Q6J("ngIf",!i)}}var _=function(){var r=function(m){(0,b.Z)(n,m);var o=(0,C.Z)(n);function n(i,a,c){var s;return(0,u.Z)(this,n),(s=o.call(this,c)).substanceFormMonomersService=i,s.scrollToService=a,s.gaService=c,s.subscriptions=[],s.analyticsEventCategory="substance form monomers",s}return(0,d.Z)(n,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Monomers")}},{key:"ngAfterViewInit",value:function(){var a=this,c=this.substanceFormMonomersService.substanceMonomers.subscribe(function(s){a.monomers=s});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addItem",value:function(){this.addMonomer()}},{key:"addMonomer",value:function(){var a=this;this.substanceFormMonomersService.addSubstanceMonomer(),setTimeout(function(){a.scrollToService.scrollToElement("substance-monomer-0","center")})}},{key:"deleteMonomer",value:function(a){this.substanceFormMonomersService.deleteSubstanceMonomer(a)}}]),n}(y.u);return r.\u0275fac=function(o){return new(o||r)(e.Y36(Z.C),e.Y36(T.i),e.Y36(x.$))},r.\u0275cmp=e.Xpm({type:r,selectors:[["app-substance-form-monomers-card"]],features:[e.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","monomer","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"monomer",3,"id"],[3,"monomer","monomerDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(o,n){1&o&&(e.TgZ(0,"div",0),e._UZ(1,"span",1),e.qZA(),e.YNc(2,E,3,3,"div",2),e.TgZ(3,"div",0),e._UZ(4,"span",1),e.TgZ(5,"button",3),e.NdJ("click",function(){return n.addMonomer()}),e._uU(6," Add Monomer "),e._UZ(7,"mat-icon",4),e.qZA(),e.qZA()),2&o&&(e.xp6(2),e.Q6J("ngForOf",n.monomers))},directives:[l.sg,S.P,Y,l.O5,h.d,p.lW,v.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),r}(),$=t(64061),z=t(7168),V=t(94673),w=t(44770),M=t(90587),H=t(26439),R=t(43365),X=t(63200),W=function(){var r=(0,d.Z)(function m(){(0,u.Z)(this,m)});return r.\u0275fac=function(o){return new(o||r)},r.\u0275mod=e.oAB({type:r}),r.\u0275inj=e.cJS({imports:[[l.ez,$.o.forChild(_),z.O,h.t,v.Ps,p.ot,V.w,w.lN,M.UX,M.u5,H.TU,R.c,X.U,g.p9]]}),r}()}}]); -//# sourceMappingURL=4501.077c73ff77cb1ecb.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4501.e87f3743e810b5f5.js b/frontend/src/main/resources/static/4501.e87f3743e810b5f5.js new file mode 100644 index 0000000..7b5c01e --- /dev/null +++ b/frontend/src/main/resources/static/4501.e87f3743e810b5f5.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4501],{24501:function(G,f,t){t.r(f),t.d(f,{SubstanceFormMonomersModule:function(){return W}});var d=t(1884),u=t(39117),l=t(36362),b=t(46751),C=t(56101),y=t(79550),x=t(24874),Z=t(21584),e=t(86613),T=t(78444),S=t(51279),O=t(18291),F=t(63169),A=t(27164),U=t(95758),P=t(54244),p=t(87317),v=t(65590),k=t(24459),I=t(16667),g=t(61534),D=t(14900);function J(r,m){if(1&r){var o=e.EpF();e.TgZ(0,"div",20),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",21),e.NdJ("click",function(){return e.CHM(o),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",22),e.qZA(),e.qZA()}}function N(r,m){if(1&r&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&r){var o=e.oxw();e.xp6(1),e.hij(" Error retrieving monomer, missing reference uuid for ",o.privateMonomer.monomerSubstance.name," ")}}function Q(r,m){if(1&r&&(e.TgZ(0,"div",23),e._uU(1),e.qZA()),2&r){var o=e.oxw();e.xp6(1),e.hij(" ",o.displayAmount(o.privateMonomer.amount)," ")}}var Y=function(){var r=function(){function m(o,n,i,a){(0,u.Z)(this,m),this.cvService=o,this.dialog=n,this.utilsService=i,this.overlayContainerService=a,this.monomerDeleted=new e.vpe,this.subscriptions=[]}return(0,d.Z)(m,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"monomer",get:function(){return this.privateMonomer},set:function(n){this.privateMonomer=n,this.relatedSubstanceUuid=this.privateMonomer.monomerSubstance?this.privateMonomer.monomerSubstance.refuuid:""}},{key:"updateType",value:function(n){this.privateMonomer.type=n}},{key:"definingChange",value:function(n){this.privateMonomer.defining=n.checked}},{key:"ngAfterViewInit",value:function(){}},{key:"deleteComponent",value:function(){var n=this;this.privateMonomer.$$deletedCode=this.utilsService.newUUID(),(!this.privateMonomer||!this.monomer)&&(this.deleteTimer=setTimeout(function(){n.monomerDeleted.emit(n.privateMonomer)},1e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMonomer.$$deletedCode}},{key:"componentUpdated",value:function(n){null!==n?(this.privateMonomer.monomerSubstance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.privateMonomer.monomerSubstance.refuuid):(this.privateMonomer.monomerSubstance=null,this.relatedSubstanceUuid=null)}},{key:"openAmountDialog",value:function(){var n=this;this.privateMonomer.amount||(this.privateMonomer.amount={});var i=this.dialog.open(A.O,{data:{subsAmount:this.privateMonomer.amount},width:"1040px"});this.overlayContainer.style.zIndex="1002";var a=i.afterClosed().subscribe(function(c){n.overlayContainer.style.zIndex=null,n.privateMonomer.amount=c});this.subscriptions.push(a)}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"formatValue",value:function(n){return n?"object"==typeof n?n.display?n.display:n.value?n.value:null:n:null}}]),m}();return r.\u0275fac=function(o){return new(o||r)(e.Y36(O.I),e.Y36(U.uw),e.Y36(F.FW),e.Y36(P.Xj))},r.\u0275cmp=e.Xpm({type:r,selectors:[["app-monomer-form"]],inputs:{monomer:"monomer"},outputs:{monomerDeleted:"monomerDeleted"},decls:22,vars:8,consts:[[1,"component-form-container","form-row"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete monomer",3,"click"],["svgIcon","delete_forever"],[1,"related-substance"],[1,"flex-column"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Monomer Substance","header","Monomer Substance",3,"subuuid","name","selectionUpdated"],[4,"ngIf"],[1,"type"],["domain","MONOMER_TYPE","title","Monomer Type",3,"model","valueChange"],[1,"amount"],[1,"label","padded","amount-label"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],["class","amount-display",4,"ngIf"],[1,"checkbox-container","column-checkbox"],[3,"checked","change"],[1,"form-row"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"amount-display"]],template:function(o,n){1&o&&(e.TgZ(0,"div",0),e.YNc(1,J,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"button",3),e.NdJ("click",function(){return n.deleteComponent()}),e._UZ(4,"mat-icon",4),e.qZA(),e.qZA(),e.TgZ(5,"div",5),e.TgZ(6,"div",6),e.TgZ(7,"app-substance-selector",7),e.NdJ("selectionUpdated",function(a){return n.componentUpdated(a)}),e.qZA(),e.YNc(8,N,2,1,"span",8),e.qZA(),e.qZA(),e.TgZ(9,"div",9),e.TgZ(10,"app-cv-input",10),e.NdJ("valueChange",function(a){return n.updateType(a)}),e.qZA(),e.qZA(),e.TgZ(11,"div",11),e.TgZ(12,"div",12),e._uU(13," Amount "),e.TgZ(14,"button",13),e.NdJ("click",function(){return n.openAmountDialog()}),e._UZ(15,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(16,Q,2,1,"div",15),e.qZA(),e.TgZ(17,"div",16),e.TgZ(18,"mat-checkbox",17),e.NdJ("change",function(a){return n.definingChange(a)}),e._uU(19,"Defining"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"div",18),e._UZ(21,"app-audit-info",19),e.qZA()),2&o&&(e.xp6(1),e.Q6J("ngIf",n.monomer.$$deletedCode),e.xp6(6),e.Q6J("subuuid",n.relatedSubstanceUuid)("name",n.privateMonomer.monomerSubstance?n.privateMonomer.monomerSubstance.name:""),e.xp6(1),e.Q6J("ngIf",n.privateMonomer.monomerSubstance&&n.privateMonomer.monomerSubstance.uuid&&!n.privateMonomer.monomerSubstance.refuuid),e.xp6(2),e.Q6J("model",n.monomer.type),e.xp6(6),e.Q6J("ngIf",n.privateMonomer.amount),e.xp6(2),e.Q6J("checked",n.privateMonomer.defining),e.xp6(3),e.Q6J("source",n.privateMonomer))},directives:[l.O5,p.lW,v.Hw,k.Q,I.S,g.oG,D.n],styles:[".notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.component-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .related-substance[_ngcontent-%COMP%]{width:30%}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:25%;-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{min-width:15%}.amount-label[_ngcontent-%COMP%]{padding-bottom:10px} .related-substance img{max-width:125px!important;margin:auto}.defining[_ngcontent-%COMP%]{padding-bottom:20px}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:7.5px;line-height:11px}.checkbox-container[_ngcontent-%COMP%], .radio-container[_ngcontent-%COMP%]{padding-bottom:16px;padding-right:15px}"]}),r}(),h=t(19975);function j(r,m){1&r&&e._UZ(0,"mat-divider",8),2&r&&e.Q6J("inset",!0)}function E(r,m){if(1&r){var o=e.EpF();e.TgZ(0,"div",5),e.TgZ(1,"app-monomer-form",6),e.NdJ("monomerDeleted",function(s){return e.CHM(o),e.oxw().deleteCode(s)}),e.qZA(),e.YNc(2,j,1,1,"mat-divider",7),e.qZA()}if(2&r){var n=m.$implicit,i=m.last;e.Q6J("id","substance-monomer-"+m.index),e.xp6(1),e.Q6J("monomer",n),e.xp6(1),e.Q6J("ngIf",!i)}}var _=function(){var r=function(m){(0,b.Z)(n,m);var o=(0,C.Z)(n);function n(i,a,c){var s;return(0,u.Z)(this,n),(s=o.call(this,c)).substanceFormMonomersService=i,s.scrollToService=a,s.gaService=c,s.subscriptions=[],s.analyticsEventCategory="substance form monomers",s}return(0,d.Z)(n,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Monomers")}},{key:"ngAfterViewInit",value:function(){var a=this,c=this.substanceFormMonomersService.substanceMonomers.subscribe(function(s){a.monomers=s});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addItem",value:function(){this.addMonomer()}},{key:"addMonomer",value:function(){var a=this;this.substanceFormMonomersService.addSubstanceMonomer(),setTimeout(function(){a.scrollToService.scrollToElement("substance-monomer-0","center")})}},{key:"deleteMonomer",value:function(a){this.substanceFormMonomersService.deleteSubstanceMonomer(a)}}]),n}(y.u);return r.\u0275fac=function(o){return new(o||r)(e.Y36(Z.C),e.Y36(T.i),e.Y36(x.$))},r.\u0275cmp=e.Xpm({type:r,selectors:[["app-substance-form-monomers-card"]],features:[e.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","monomer","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"monomer",3,"id"],[3,"monomer","monomerDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(o,n){1&o&&(e.TgZ(0,"div",0),e._UZ(1,"span",1),e.qZA(),e.YNc(2,E,3,3,"div",2),e.TgZ(3,"div",0),e._UZ(4,"span",1),e.TgZ(5,"button",3),e.NdJ("click",function(){return n.addMonomer()}),e._uU(6," Add Monomer "),e._UZ(7,"mat-icon",4),e.qZA(),e.qZA()),2&o&&(e.xp6(2),e.Q6J("ngForOf",n.monomers))},directives:[l.sg,S.P,Y,l.O5,h.d,p.lW,v.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),r}(),$=t(64061),z=t(7168),V=t(94673),w=t(44770),M=t(90587),H=t(26439),R=t(43365),X=t(63200),W=function(){var r=(0,d.Z)(function m(){(0,u.Z)(this,m)});return r.\u0275fac=function(o){return new(o||r)},r.\u0275mod=e.oAB({type:r}),r.\u0275inj=e.cJS({imports:[[l.ez,$.o.forChild(_),z.O,h.t,v.Ps,p.ot,V.w,w.lN,M.UX,M.u5,H.TU,R.c,X.U,g.p9]]}),r}()}}]); +//# sourceMappingURL=4501.e87f3743e810b5f5.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4501.077c73ff77cb1ecb.js.map b/frontend/src/main/resources/static/4501.e87f3743e810b5f5.js.map similarity index 99% rename from frontend/src/main/resources/static/4501.077c73ff77cb1ecb.js.map rename to frontend/src/main/resources/static/4501.e87f3743e810b5f5.js.map index 9332a67..5e7cdbd 100644 --- a/frontend/src/main/resources/static/4501.077c73ff77cb1ecb.js.map +++ b/frontend/src/main/resources/static/4501.e87f3743e810b5f5.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r3","MonomerFormComponent","cvService","dialog","utilsService","overlayContainerService","u","this","EventEmitter","overlayContainer","getContainerElement","privateMonomer","set","monomer","relatedSubstanceUuid","monomerSubstance","refuuid","event","type","defining","checked","$$deletedCode","newUUID","deleteTimer","setTimeout","n","monomerDeleted","emit","clearTimeout","substance","refPname","_name","name","uuid","substanceClass","approvalID","amount","dialogRef","open","AmountFormDialogComponent","data","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","subscribe","newAmount","subscriptions","push","amt","displayAmount","v","display","value","m","selectors","ctx","ctx_r5","SubstanceFormMonomersCardComponent","substanceFormMonomersService","scrollToService","gaService","s","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","monomersSubscription","substanceMonomers","a","monomers","componentDestroyed","forEach","subscription","unsubscribe","addMonomer","addSubstanceMonomer","scrollToElement","deleteSubstanceMonomer","SubstanceCardBaseFilteredList","SubstanceFormMonomersModule","d","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule","MatCheckboxModule"],"sources":["./src/app/core/substance-form/monomers/monomer-form.component.html","./src/app/core/substance-form/monomers/monomer-form.component.ts","./src/app/core/substance-form/monomers/substance-form-monomers-card.component.html","./src/app/core/substance-form/monomers/substance-form-monomers-card.component.ts","./src/app/core/substance-form/monomers/substance-form-monomers.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n
\n \n \n \n Error retrieving monomer, missing reference uuid for {{this.privateMonomer.monomerSubstance.name}}\n \n
\n
\n\n
\n \n
\n\n
\n
\n Amount\n \n
\n
\n {{displayAmount(privateMonomer.amount)}}\n
\n
\n
\n Defining\n
\n\n
\n
\n \n
\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {Monomer, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\n\n@Component({\n selector: 'app-monomer-form',\n templateUrl: './monomer-form.component.html',\n styleUrls: ['./monomer-form.component.scss']\n})\nexport class MonomerFormComponent implements OnInit, AfterViewInit {\n privateMonomer: Monomer;\n @Output() monomerDeleted = new EventEmitter();\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer\n ) { }\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set monomer(monomer: Monomer) {\n this.privateMonomer = monomer;\n if (this.privateMonomer.monomerSubstance) {\n this.relatedSubstanceUuid = this.privateMonomer.monomerSubstance.refuuid;\n } else {\n this.relatedSubstanceUuid = '';\n }\n\n }\n\n get monomer(): Monomer {\n return this.privateMonomer;\n }\n\n updateType(event: any): void {\n this.privateMonomer.type = event;\n }\n\n definingChange(event: any): void {\n this.privateMonomer.defining = event.checked;\n }\n\n ngAfterViewInit(): void {\n }\n\n\n deleteComponent(): void {\n this.privateMonomer.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateMonomer || !this.monomer\n ) {\n this.deleteTimer = setTimeout(() => {\n this.monomerDeleted.emit(this.privateMonomer);\n }, 1000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMonomer.$$deletedCode;\n }\n\n componentUpdated(substance: SubstanceSummary): void {\n\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.privateMonomer.monomerSubstance = relatedSubstance;\n this.relatedSubstanceUuid = this.privateMonomer.monomerSubstance.refuuid;\n } else {\n this.privateMonomer.monomerSubstance = null;\n this.relatedSubstanceUuid = null;\n }\n\n\n }\n\n openAmountDialog(): void {\n if (!this.privateMonomer.amount) {\n this.privateMonomer.amount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.privateMonomer.amount},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.privateMonomer.amount = newAmount;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n
\n \n \n
\n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { Monomer } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormMonomersService } from './substance-form-monomers.service';\n\n@Component({\n selector: 'app-substance-form-monomers-card',\n templateUrl: './substance-form-monomers-card.component.html',\n styleUrls: ['./substance-form-monomers-card.component.scss']\n})\nexport class SubstanceFormMonomersCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n monomers: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormMonomersService: SubstanceFormMonomersService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form monomers';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Monomers');\n }\n\n ngAfterViewInit() {\n const monomersSubscription = this.substanceFormMonomersService.substanceMonomers.subscribe(monomers => {\n this.monomers = monomers;\n });\n this.subscriptions.push(monomersSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addMonomer();\n }\n\n addMonomer(): void {\n this.substanceFormMonomersService.addSubstanceMonomer();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-monomer-0`, 'center');\n });\n }\n\n deleteMonomer(monomer: Monomer): void {\n this.substanceFormMonomersService.deleteSubstanceMonomer(monomer);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormMonomersCardComponent } from './substance-form-monomers-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { MonomerFormComponent } from './monomer-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMonomersCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule,\n MatCheckboxModule\n ],\n declarations: [\n SubstanceFormMonomersCardComponent,\n MonomerFormComponent\n ]\n})\nexport class SubstanceFormMonomersModule { }\n"],"sourceRoot":"webpack:///","file":"4501.077c73ff77cb1ecb.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r3","MonomerFormComponent","cvService","dialog","utilsService","overlayContainerService","u","this","EventEmitter","overlayContainer","getContainerElement","privateMonomer","set","monomer","relatedSubstanceUuid","monomerSubstance","refuuid","event","type","defining","checked","$$deletedCode","newUUID","deleteTimer","setTimeout","n","monomerDeleted","emit","clearTimeout","substance","refPname","_name","name","uuid","substanceClass","approvalID","amount","dialogRef","open","AmountFormDialogComponent","data","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","subscribe","newAmount","subscriptions","push","amt","displayAmount","v","display","value","m","selectors","ctx","ctx_r5","SubstanceFormMonomersCardComponent","substanceFormMonomersService","scrollToService","gaService","s","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","monomersSubscription","substanceMonomers","a","monomers","componentDestroyed","forEach","subscription","unsubscribe","addMonomer","addSubstanceMonomer","scrollToElement","deleteSubstanceMonomer","SubstanceCardBaseFilteredList","SubstanceFormMonomersModule","d","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule","MatCheckboxModule"],"sources":["./src/app/core/substance-form/monomers/monomer-form.component.html","./src/app/core/substance-form/monomers/monomer-form.component.ts","./src/app/core/substance-form/monomers/substance-form-monomers-card.component.html","./src/app/core/substance-form/monomers/substance-form-monomers-card.component.ts","./src/app/core/substance-form/monomers/substance-form-monomers.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n
\n \n \n \n Error retrieving monomer, missing reference uuid for {{this.privateMonomer.monomerSubstance.name}}\n \n
\n
\n\n
\n \n
\n\n
\n
\n Amount\n \n
\n
\n {{displayAmount(privateMonomer.amount)}}\n
\n
\n
\n Defining\n
\n\n
\n
\n \n
\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {Monomer, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\n\n@Component({\n selector: 'app-monomer-form',\n templateUrl: './monomer-form.component.html',\n styleUrls: ['./monomer-form.component.scss']\n})\nexport class MonomerFormComponent implements OnInit, AfterViewInit {\n privateMonomer: Monomer;\n @Output() monomerDeleted = new EventEmitter();\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer\n ) { }\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set monomer(monomer: Monomer) {\n this.privateMonomer = monomer;\n if (this.privateMonomer.monomerSubstance) {\n this.relatedSubstanceUuid = this.privateMonomer.monomerSubstance.refuuid;\n } else {\n this.relatedSubstanceUuid = '';\n }\n\n }\n\n get monomer(): Monomer {\n return this.privateMonomer;\n }\n\n updateType(event: any): void {\n this.privateMonomer.type = event;\n }\n\n definingChange(event: any): void {\n this.privateMonomer.defining = event.checked;\n }\n\n ngAfterViewInit(): void {\n }\n\n\n deleteComponent(): void {\n this.privateMonomer.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateMonomer || !this.monomer\n ) {\n this.deleteTimer = setTimeout(() => {\n this.monomerDeleted.emit(this.privateMonomer);\n }, 1000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMonomer.$$deletedCode;\n }\n\n componentUpdated(substance: SubstanceSummary): void {\n\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.privateMonomer.monomerSubstance = relatedSubstance;\n this.relatedSubstanceUuid = this.privateMonomer.monomerSubstance.refuuid;\n } else {\n this.privateMonomer.monomerSubstance = null;\n this.relatedSubstanceUuid = null;\n }\n\n\n }\n\n openAmountDialog(): void {\n if (!this.privateMonomer.amount) {\n this.privateMonomer.amount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.privateMonomer.amount},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.privateMonomer.amount = newAmount;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n
\n \n \n
\n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { Monomer } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormMonomersService } from './substance-form-monomers.service';\n\n@Component({\n selector: 'app-substance-form-monomers-card',\n templateUrl: './substance-form-monomers-card.component.html',\n styleUrls: ['./substance-form-monomers-card.component.scss']\n})\nexport class SubstanceFormMonomersCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n monomers: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormMonomersService: SubstanceFormMonomersService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form monomers';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Monomers');\n }\n\n ngAfterViewInit() {\n const monomersSubscription = this.substanceFormMonomersService.substanceMonomers.subscribe(monomers => {\n this.monomers = monomers;\n });\n this.subscriptions.push(monomersSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addMonomer();\n }\n\n addMonomer(): void {\n this.substanceFormMonomersService.addSubstanceMonomer();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-monomer-0`, 'center');\n });\n }\n\n deleteMonomer(monomer: Monomer): void {\n this.substanceFormMonomersService.deleteSubstanceMonomer(monomer);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormMonomersCardComponent } from './substance-form-monomers-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { MonomerFormComponent } from './monomer-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormMonomersCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule,\n MatCheckboxModule\n ],\n declarations: [\n SubstanceFormMonomersCardComponent,\n MonomerFormComponent\n ]\n})\nexport class SubstanceFormMonomersModule { }\n"],"sourceRoot":"webpack:///","file":"4501.e87f3743e810b5f5.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4662.1a9365232bf999f5.js b/frontend/src/main/resources/static/4662.3b6568af3658d987.js similarity index 92% rename from frontend/src/main/resources/static/4662.1a9365232bf999f5.js rename to frontend/src/main/resources/static/4662.3b6568af3658d987.js index 1acdbbf..1fe4b26 100644 --- a/frontend/src/main/resources/static/4662.1a9365232bf999f5.js +++ b/frontend/src/main/resources/static/4662.3b6568af3658d987.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4662],{24662:function(F,l,i){i.r(l),i.d(l,{SubstanceAlternativeDefinitionModule:function(){return O}});var f=i(48047),v=i(78069),r=i(36362),h=i(64061),b=i(95106),g=i(24582),A=i(7318),S=i(50253),y=i(2756),n=i(76442),Z=i(9292),d=i(98002),x=function(a){return["/substances",a]};function C(t,a){if(1&t&&(n.TgZ(0,"div",3),n.TgZ(1,"div"),n._uU(2),n.qZA(),n._UZ(3,"img",4),n.TgZ(4,"div"),n.TgZ(5,"a",5),n._uU(6),n.qZA(),n.qZA(),n.qZA()),2&t){var e=a.$implicit;n.xp6(2),n.hij(" ",e.approvalID?e.approvalID:e.refuuid," "),n.xp6(1),n.Q6J("entityId",e.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,x,e.refuuid)),n.xp6(1),n.hij(" ",e.name," ")}}function D(t,a){if(1&t&&(n.TgZ(0,"div",1),n.YNc(1,C,7,6,"div",2),n.qZA()),2&t){var e=n.oxw();n.xp6(1),n.Q6J("ngForOf",e.alternatives)}}var T=function(){var t=function(a){(0,g.Z)(o,a);var e=(0,A.Z)(o);function o(){var c;return(0,v.Z)(this,o),(c=e.call(this)).substanceUpdated=new S.x,c}return(0,f.Z)(o,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(U){if(s.alternatives=[],s.substance=U,null!=s.substance&&s.substance.relationships){var m,u=(0,b.Z)(s.substance.relationships);try{for(u.s();!(m=u.n()).done;){var p=m.value;"SUBSTANCE->SUB_ALTERNATE"===p.type&&s.alternatives.push(p.relatedSubstance)}}catch(j){u.e(j)}finally{u.f()}s.countUpdate.emit(s.alternatives.length)}})}}]),o}(y.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-alternative-definition"]],features:[n.qOj],decls:1,vars:1,consts:[["class","form-row",4,"ngIf"],[1,"form-row"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(e,o){1&e&&n.YNc(0,D,2,1,"div",0),2&e&&n.Q6J("ngIf",o.alternatives)},directives:[r.O5,r.sg,Z.m,d.yS],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly;-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%}"]}),t}(),I=i(24054),O=function(){var t=(0,f.Z)(function a(){(0,v.Z)(this,a)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[r.ez,h.o.forChild(T),d.Bz,I.f]]}),t}()}}]); -//# sourceMappingURL=4662.1a9365232bf999f5.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4662],{24662:function(F,l,i){i.r(l),i.d(l,{SubstanceAlternativeDefinitionModule:function(){return O}});var f=i(1884),v=i(39117),r=i(36362),h=i(64061),b=i(44014),g=i(46751),A=i(56101),S=i(50253),y=i(2756),n=i(86613),Z=i(9292),d=i(98002),x=function(a){return["/substances",a]};function C(t,a){if(1&t&&(n.TgZ(0,"div",3),n.TgZ(1,"div"),n._uU(2),n.qZA(),n._UZ(3,"img",4),n.TgZ(4,"div"),n.TgZ(5,"a",5),n._uU(6),n.qZA(),n.qZA(),n.qZA()),2&t){var e=a.$implicit;n.xp6(2),n.hij(" ",e.approvalID?e.approvalID:e.refuuid," "),n.xp6(1),n.Q6J("entityId",e.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,x,e.refuuid)),n.xp6(1),n.hij(" ",e.name," ")}}function D(t,a){if(1&t&&(n.TgZ(0,"div",1),n.YNc(1,C,7,6,"div",2),n.qZA()),2&t){var e=n.oxw();n.xp6(1),n.Q6J("ngForOf",e.alternatives)}}var T=function(){var t=function(a){(0,g.Z)(o,a);var e=(0,A.Z)(o);function o(){var c;return(0,v.Z)(this,o),(c=e.call(this)).substanceUpdated=new S.x,c}return(0,f.Z)(o,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(U){if(s.alternatives=[],s.substance=U,null!=s.substance&&s.substance.relationships){var m,u=(0,b.Z)(s.substance.relationships);try{for(u.s();!(m=u.n()).done;){var p=m.value;"SUBSTANCE->SUB_ALTERNATE"===p.type&&s.alternatives.push(p.relatedSubstance)}}catch(j){u.e(j)}finally{u.f()}s.countUpdate.emit(s.alternatives.length)}})}}]),o}(y.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-alternative-definition"]],features:[n.qOj],decls:1,vars:1,consts:[["class","form-row",4,"ngIf"],[1,"form-row"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(e,o){1&e&&n.YNc(0,D,2,1,"div",0),2&e&&n.Q6J("ngIf",o.alternatives)},directives:[r.O5,r.sg,Z.m,d.yS],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly;-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%}"]}),t}(),I=i(24054),O=function(){var t=(0,f.Z)(function a(){(0,v.Z)(this,a)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[r.ez,h.o.forChild(T),d.Bz,I.f]]}),t}()}}]); +//# sourceMappingURL=4662.3b6568af3658d987.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4662.1a9365232bf999f5.js.map b/frontend/src/main/resources/static/4662.3b6568af3658d987.js.map similarity index 98% rename from frontend/src/main/resources/static/4662.1a9365232bf999f5.js.map rename to frontend/src/main/resources/static/4662.3b6568af3658d987.js.map index b5b4787..a653396 100644 --- a/frontend/src/main/resources/static/4662.1a9365232bf999f5.js.map +++ b/frontend/src/main/resources/static/4662.3b6568af3658d987.js.map @@ -1 +1 @@ -{"version":3,"mappings":"gYAEAA,iBACEA,eAAaA,SACXA,QACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCARaA,4DAEgCA,qCAEfA,kDACxBA,yDARRA,iBAEAA,uBAUAA,4BAViDA,0CCQ1C,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CAEEC,gBAJFC,iBAAmB,IAAIC,IAEvBF,EALF,uCAUE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAG9B,GAFAC,EAAKC,aAAe,GACpBD,EAAKE,UAAYA,EACK,MAAlBF,EAAKE,WAAqBF,EAAKE,UAAUC,cAAe,iBACxCH,EAAKE,UAAUC,eADyB,IAC1D,2BAAgD,KAArCC,EAAqCC,QAC7B,6BAAbD,EAAIE,MACNN,EAAKC,aAAaM,KAAKH,EAAII,yBAH2BC,wBAM1DT,EAAKU,YAAYC,KAAKX,EAAKC,aAAaW,eApBhDC,GAA6DC,kDAAhDpB,8BAAuCqB,wUDVpDtB,4BAAyBA,yRCUZC,EAAb,cCMasB,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCzB,GACtC0B,KACAC,QAISL,EAAb","names":["i0","SubstanceAlternativeDefinitionComponent","c","substanceUpdated","Subject","this","subscribe","s","alternatives","substance","relationships","rel","m","type","push","relatedSubstance","j","countUpdate","emit","length","o","SubstanceCardBase","selectors","SubstanceAlternativeDefinitionModule","f","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-alternative-definition/substance-alternative-definition.component.html","./src/app/core/substance-details/substance-alternative-definition/substance-alternative-definition.component.ts","./src/app/core/substance-details/substance-alternative-definition/substance-alternative-definition.module.ts"],"sourcesContent":["
\n\n
\n
{{alternative.approvalID? alternative.approvalID : alternative.refuuid}}\n
\n \n \n
\n
\n ","import { Component, OnInit } from '@angular/core';\nimport { SubstanceDetail, SubstanceRelated } from '@gsrs-core/substance/substance.model';\nimport { Subject } from 'rxjs';\nimport { SubstanceCardBase } from '@gsrs-core/substance-details/substance-card-base';\n\n@Component({\n selector: 'app-substance-alternative-definition',\n templateUrl: './substance-alternative-definition.component.html',\n styleUrls: ['./substance-alternative-definition.component.scss']\n})\nexport class SubstanceAlternativeDefinitionComponent extends SubstanceCardBase implements OnInit {\n definition: string;\n alternatives: Array;\n substanceUpdated = new Subject();\n\n constructor(\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.alternatives = [];\n this.substance = substance;\n if (this.substance != null && this.substance.relationships) {\n for (const rel of this.substance.relationships) {\n if (rel.type === 'SUBSTANCE->SUB_ALTERNATE') {\n this.alternatives.push(rel.relatedSubstance );\n }\n }\n this.countUpdate.emit(this.alternatives.length);\n\n }\n });\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport {SubstanceAlternativeDefinitionComponent} from './substance-alternative-definition.component';\nimport {RouterModule} from '@angular/router';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceAlternativeDefinitionComponent),\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [SubstanceAlternativeDefinitionComponent]\n})\nexport class SubstanceAlternativeDefinitionModule { }\n"],"sourceRoot":"webpack:///","file":"4662.1a9365232bf999f5.js"} \ No newline at end of file +{"version":3,"mappings":"gYAEAA,iBACEA,eAAaA,SACXA,QACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCARaA,4DAEgCA,qCAEfA,kDACxBA,yDARRA,iBAEAA,uBAUAA,4BAViDA,0CCQ1C,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CAEEC,gBAJFC,iBAAmB,IAAIC,IAEvBF,EALF,uCAUE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAG9B,GAFAC,EAAKC,aAAe,GACpBD,EAAKE,UAAYA,EACK,MAAlBF,EAAKE,WAAqBF,EAAKE,UAAUC,cAAe,iBACxCH,EAAKE,UAAUC,eADyB,IAC1D,2BAAgD,KAArCC,EAAqCC,QAC7B,6BAAbD,EAAIE,MACNN,EAAKC,aAAaM,KAAKH,EAAII,yBAH2BC,wBAM1DT,EAAKU,YAAYC,KAAKX,EAAKC,aAAaW,eApBhDC,GAA6DC,kDAAhDpB,8BAAuCqB,wUDVpDtB,4BAAyBA,yRCUZC,EAAb,cCMasB,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCzB,GACtC0B,KACAC,QAISL,EAAb","names":["i0","SubstanceAlternativeDefinitionComponent","c","substanceUpdated","Subject","this","subscribe","s","alternatives","substance","relationships","rel","m","type","push","relatedSubstance","j","countUpdate","emit","length","o","SubstanceCardBase","selectors","SubstanceAlternativeDefinitionModule","f","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-alternative-definition/substance-alternative-definition.component.html","./src/app/core/substance-details/substance-alternative-definition/substance-alternative-definition.component.ts","./src/app/core/substance-details/substance-alternative-definition/substance-alternative-definition.module.ts"],"sourcesContent":["
\n\n
\n
{{alternative.approvalID? alternative.approvalID : alternative.refuuid}}\n
\n \n \n
\n
\n ","import { Component, OnInit } from '@angular/core';\nimport { SubstanceDetail, SubstanceRelated } from '@gsrs-core/substance/substance.model';\nimport { Subject } from 'rxjs';\nimport { SubstanceCardBase } from '@gsrs-core/substance-details/substance-card-base';\n\n@Component({\n selector: 'app-substance-alternative-definition',\n templateUrl: './substance-alternative-definition.component.html',\n styleUrls: ['./substance-alternative-definition.component.scss']\n})\nexport class SubstanceAlternativeDefinitionComponent extends SubstanceCardBase implements OnInit {\n definition: string;\n alternatives: Array;\n substanceUpdated = new Subject();\n\n constructor(\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.alternatives = [];\n this.substance = substance;\n if (this.substance != null && this.substance.relationships) {\n for (const rel of this.substance.relationships) {\n if (rel.type === 'SUBSTANCE->SUB_ALTERNATE') {\n this.alternatives.push(rel.relatedSubstance );\n }\n }\n this.countUpdate.emit(this.alternatives.length);\n\n }\n });\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport {SubstanceAlternativeDefinitionComponent} from './substance-alternative-definition.component';\nimport {RouterModule} from '@angular/router';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceAlternativeDefinitionComponent),\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [SubstanceAlternativeDefinitionComponent]\n})\nexport class SubstanceAlternativeDefinitionModule { }\n"],"sourceRoot":"webpack:///","file":"4662.3b6568af3658d987.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4690.d09269ca4fda9b6e.js b/frontend/src/main/resources/static/4690.aa5e0e153bc82dd6.js similarity index 91% rename from frontend/src/main/resources/static/4690.d09269ca4fda9b6e.js rename to frontend/src/main/resources/static/4690.aa5e0e153bc82dd6.js index 95d6653..ea8ac3d 100644 --- a/frontend/src/main/resources/static/4690.d09269ca4fda9b6e.js +++ b/frontend/src/main/resources/static/4690.aa5e0e153bc82dd6.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4690],{14690:function($,o,a){a.r(o),a.d(o,{SubstanceMixtureParentModule:function(){return T}});var d=a(48047),l=a(78069),r=a(36362),m=a(98002),f=a(75143),x=a(24582),v=a(7318),g=a(50253),h=a(2756),t=a(76442),b=a(9292);function M(n,i){if(1&n&&(t.TgZ(0,"div",7),t._uU(1),t.qZA()),2&n){var e=t.oxw().$implicit;t.xp6(1),t.Oqu(e.approvalID)}}function Z(n,i){if(1&n&&(t.TgZ(0,"div",7),t._uU(1),t.qZA()),2&n){var e=t.oxw().$implicit;t.xp6(1),t.Oqu(e.uuid)}}var P=function(i){return["/substances",i]};function C(n,i){if(1&n&&(t.TgZ(0,"div",3),t.YNc(1,M,2,1,"div",4),t.YNc(2,Z,2,1,"div",4),t._UZ(3,"img",5),t.TgZ(4,"div"),t.TgZ(5,"a",6),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&n){var e=i.$implicit;t.xp6(1),t.Q6J("ngIf",e.approvalID),t.xp6(1),t.Q6J("ngIf",!e.approvalID),t.xp6(1),t.Q6J("entityId",e.uuid),t.xp6(2),t.Q6J("routerLink",t.VKq(5,P,e.uuid)),t.xp6(1),t.hij(" ",e._name," ")}}var S=function(){var n=function(i){(0,x.Z)(s,i);var e=(0,v.Z)(s);function s(){var c;return(0,l.Z)(this,s),(c=e.call(this)).substanceUpdated=new g.x,c}return(0,d.Z)(s,[{key:"ngOnInit",value:function(){var u=this;this.substanceUpdated.subscribe(function(y){u.substance=y,u.mixtures=[],null!=u.substance&&u.substance.$$mixtureParents&&u.substance.$$mixtureParents.length>0&&u.substance.$$mixtureParents.forEach(function(p){p.mixture.components.forEach(function(I){I.substance.refuuid===u.substance.uuid&&u.mixtures.push(p)})})})}}]),s}(h.B);return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-mixture-parent"]],features:[t.qOj],decls:4,vars:1,consts:[[1,"panel-title"],[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"]],template:function(e,s){1&e&&(t.TgZ(0,"h4",0),t._uU(1,"This substance is a component of the following mixture(s):"),t.qZA(),t.TgZ(2,"div",1),t.YNc(3,C,7,7,"div",2),t.qZA()),2&e&&(t.xp6(3),t.Q6J("ngForOf",s.mixtures))},directives:[r.sg,r.O5,b.m,m.yS],styles:[".thumb-col[_ngcontent-%COMP%]{max-width:400px;min-width:25%}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),n}(),O=a(24054),T=(a(64061),function(){var n=(0,d.Z)(function i(){(0,l.Z)(this,i)});return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[r.ez,m.Bz,f.o0.forChild(S),O.f]]}),n}())}}]); -//# sourceMappingURL=4690.d09269ca4fda9b6e.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4690],{14690:function($,o,a){a.r(o),a.d(o,{SubstanceMixtureParentModule:function(){return T}});var d=a(1884),l=a(39117),r=a(36362),m=a(98002),f=a(75143),x=a(46751),v=a(56101),g=a(50253),h=a(2756),t=a(86613),b=a(9292);function M(n,i){if(1&n&&(t.TgZ(0,"div",7),t._uU(1),t.qZA()),2&n){var e=t.oxw().$implicit;t.xp6(1),t.Oqu(e.approvalID)}}function Z(n,i){if(1&n&&(t.TgZ(0,"div",7),t._uU(1),t.qZA()),2&n){var e=t.oxw().$implicit;t.xp6(1),t.Oqu(e.uuid)}}var P=function(i){return["/substances",i]};function C(n,i){if(1&n&&(t.TgZ(0,"div",3),t.YNc(1,M,2,1,"div",4),t.YNc(2,Z,2,1,"div",4),t._UZ(3,"img",5),t.TgZ(4,"div"),t.TgZ(5,"a",6),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&n){var e=i.$implicit;t.xp6(1),t.Q6J("ngIf",e.approvalID),t.xp6(1),t.Q6J("ngIf",!e.approvalID),t.xp6(1),t.Q6J("entityId",e.uuid),t.xp6(2),t.Q6J("routerLink",t.VKq(5,P,e.uuid)),t.xp6(1),t.hij(" ",e._name," ")}}var S=function(){var n=function(i){(0,x.Z)(s,i);var e=(0,v.Z)(s);function s(){var c;return(0,l.Z)(this,s),(c=e.call(this)).substanceUpdated=new g.x,c}return(0,d.Z)(s,[{key:"ngOnInit",value:function(){var u=this;this.substanceUpdated.subscribe(function(y){u.substance=y,u.mixtures=[],null!=u.substance&&u.substance.$$mixtureParents&&u.substance.$$mixtureParents.length>0&&u.substance.$$mixtureParents.forEach(function(p){p.mixture.components.forEach(function(I){I.substance.refuuid===u.substance.uuid&&u.mixtures.push(p)})})})}}]),s}(h.B);return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-mixture-parent"]],features:[t.qOj],decls:4,vars:1,consts:[[1,"panel-title"],[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"]],template:function(e,s){1&e&&(t.TgZ(0,"h4",0),t._uU(1,"This substance is a component of the following mixture(s):"),t.qZA(),t.TgZ(2,"div",1),t.YNc(3,C,7,7,"div",2),t.qZA()),2&e&&(t.xp6(3),t.Q6J("ngForOf",s.mixtures))},directives:[r.sg,r.O5,b.m,m.yS],styles:[".thumb-col[_ngcontent-%COMP%]{max-width:400px;min-width:25%}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),n}(),O=a(24054),T=(a(64061),function(){var n=(0,d.Z)(function i(){(0,l.Z)(this,i)});return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[r.ez,m.Bz,f.o0.forChild(S),O.f]]}),n}())}}]); +//# sourceMappingURL=4690.aa5e0e153bc82dd6.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4690.d09269ca4fda9b6e.js.map b/frontend/src/main/resources/static/4690.aa5e0e153bc82dd6.js.map similarity index 99% rename from frontend/src/main/resources/static/4690.d09269ca4fda9b6e.js.map rename to frontend/src/main/resources/static/4690.aa5e0e153bc82dd6.js.map index 6ff9b54..0ff19d2 100644 --- a/frontend/src/main/resources/static/4690.d09269ca4fda9b6e.js.map +++ b/frontend/src/main/resources/static/4690.aa5e0e153bc82dd6.js.map @@ -1 +1 @@ -{"version":3,"mappings":"sUAGQA,iBAA+CA,SAAwBA,sCAAxBA,uDAC/CA,iBAAgDA,SAAkBA,sCAAlBA,4FAFlDA,iBACEA,uBACAA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCARQA,oCACAA,qCACoCA,kCAEdA,+CACxBA,iCCEL,IAAMC,EAAb,eAAaA,EAAb,0CAIE,0CACEC,gBAJFC,iBAAmB,IAAIC,IAGvBF,EAJF,uCAOA,WAAQ,WAENG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,EACjBD,EAAKE,SAAW,GACO,MAAlBF,EAAKC,WAAuBD,EAAKC,UAAUE,kBAAsBH,EAAKC,UAAUE,iBAAiBC,OAAS,GAC7GJ,EAAKC,UAAUE,iBAAiBE,QAAS,YACvCC,EAAOC,QAAQC,WAAWH,QAAQ,YAC5BI,EAAKR,UAAUS,UAAYV,EAAKC,UAAUU,MAC5CX,EAAKE,SAASU,KAAKN,aAhB/BO,GAAqDC,kDAAxCpB,8BAA+BqB,mVDV5CtB,gBAAwBA,sEAA0DA,QAC9EA,iBACEA,uBAUFA,eAV6BA,uXCQpBC,EAAb,cCUasB,YAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,KACAC,cAAsC1B,GACtC2B,QAMSL,EAAb","names":["i0","SubstanceMixtureParentComponent","c","substanceUpdated","Subject","this","subscribe","u","substance","mixtures","$$mixtureParents","length","forEach","parent","mixture","components","comp","refuuid","uuid","push","s","SubstanceCardBase","selectors","SubstanceMixtureParentModule","d","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-mixture-parent/substance-mixture-parent.component.html","./src/app/core/substance-details/substance-mixture-parent/substance-mixture-parent.component.ts","./src/app/core/substance-details/substance-mixture-parent/substance-mixture-parent.module.ts"],"sourcesContent":["

This substance is a component of the following mixture(s):

\n
\n
\n
{{component.approvalID}}
\n
{{component.uuid}}
\n \n \n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { Subject } from 'rxjs';\nimport { SubstanceCardBase } from '@gsrs-core/substance-details/substance-card-base';\n\n@Component({\n selector: 'app-substance-mixture-parent',\n templateUrl: './substance-mixture-parent.component.html',\n styleUrls: ['./substance-mixture-parent.component.scss']\n})\nexport class SubstanceMixtureParentComponent extends SubstanceCardBase implements OnInit {\n substanceUpdated = new Subject();\n mixtures: Array;\n\n constructor() {\n super();\n }\nngOnInit(){\n\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n this.mixtures = [];\n if ((this.substance != null) && (this.substance.$$mixtureParents) && (this.substance.$$mixtureParents.length > 0)) {\n this.substance.$$mixtureParents.forEach( parent => {\n parent.mixture.components.forEach(comp => {\n if (comp.substance.refuuid === this.substance.uuid) {\n this.mixtures.push(parent);\n }\n });\n\n });\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { DynamicComponentLoaderModule } from '@gsrs-core/dynamic-component-loader';\nimport { SubstanceMixtureParentComponent } from '@gsrs-core/substance-details/substance-mixture-parent/substance-mixture-parent.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n DynamicComponentLoaderModule.forChild(SubstanceMixtureParentComponent),\n SubstanceImageModule\n ],\n declarations: [\n SubstanceMixtureParentComponent\n ]\n})\nexport class SubstanceMixtureParentModule { }\n"],"sourceRoot":"webpack:///","file":"4690.d09269ca4fda9b6e.js"} \ No newline at end of file +{"version":3,"mappings":"sUAGQA,iBAA+CA,SAAwBA,sCAAxBA,uDAC/CA,iBAAgDA,SAAkBA,sCAAlBA,4FAFlDA,iBACEA,uBACAA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCARQA,oCACAA,qCACoCA,kCAEdA,+CACxBA,iCCEL,IAAMC,EAAb,eAAaA,EAAb,0CAIE,0CACEC,gBAJFC,iBAAmB,IAAIC,IAGvBF,EAJF,uCAOA,WAAQ,WAENG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,EACjBD,EAAKE,SAAW,GACO,MAAlBF,EAAKC,WAAuBD,EAAKC,UAAUE,kBAAsBH,EAAKC,UAAUE,iBAAiBC,OAAS,GAC7GJ,EAAKC,UAAUE,iBAAiBE,QAAS,YACvCC,EAAOC,QAAQC,WAAWH,QAAQ,YAC5BI,EAAKR,UAAUS,UAAYV,EAAKC,UAAUU,MAC5CX,EAAKE,SAASU,KAAKN,aAhB/BO,GAAqDC,kDAAxCpB,8BAA+BqB,mVDV5CtB,gBAAwBA,sEAA0DA,QAC9EA,iBACEA,uBAUFA,eAV6BA,uXCQpBC,EAAb,cCUasB,YAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,KACAC,cAAsC1B,GACtC2B,QAMSL,EAAb","names":["i0","SubstanceMixtureParentComponent","c","substanceUpdated","Subject","this","subscribe","u","substance","mixtures","$$mixtureParents","length","forEach","parent","mixture","components","comp","refuuid","uuid","push","s","SubstanceCardBase","selectors","SubstanceMixtureParentModule","d","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-mixture-parent/substance-mixture-parent.component.html","./src/app/core/substance-details/substance-mixture-parent/substance-mixture-parent.component.ts","./src/app/core/substance-details/substance-mixture-parent/substance-mixture-parent.module.ts"],"sourcesContent":["

This substance is a component of the following mixture(s):

\n
\n
\n
{{component.approvalID}}
\n
{{component.uuid}}
\n \n \n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { Subject } from 'rxjs';\nimport { SubstanceCardBase } from '@gsrs-core/substance-details/substance-card-base';\n\n@Component({\n selector: 'app-substance-mixture-parent',\n templateUrl: './substance-mixture-parent.component.html',\n styleUrls: ['./substance-mixture-parent.component.scss']\n})\nexport class SubstanceMixtureParentComponent extends SubstanceCardBase implements OnInit {\n substanceUpdated = new Subject();\n mixtures: Array;\n\n constructor() {\n super();\n }\nngOnInit(){\n\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n this.mixtures = [];\n if ((this.substance != null) && (this.substance.$$mixtureParents) && (this.substance.$$mixtureParents.length > 0)) {\n this.substance.$$mixtureParents.forEach( parent => {\n parent.mixture.components.forEach(comp => {\n if (comp.substance.refuuid === this.substance.uuid) {\n this.mixtures.push(parent);\n }\n });\n\n });\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { DynamicComponentLoaderModule } from '@gsrs-core/dynamic-component-loader';\nimport { SubstanceMixtureParentComponent } from '@gsrs-core/substance-details/substance-mixture-parent/substance-mixture-parent.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n DynamicComponentLoaderModule.forChild(SubstanceMixtureParentComponent),\n SubstanceImageModule\n ],\n declarations: [\n SubstanceMixtureParentComponent\n ]\n})\nexport class SubstanceMixtureParentModule { }\n"],"sourceRoot":"webpack:///","file":"4690.aa5e0e153bc82dd6.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4869.01cbe295f9493573.js b/frontend/src/main/resources/static/4869.8cdc14d81f977c12.js similarity index 96% rename from frontend/src/main/resources/static/4869.01cbe295f9493573.js rename to frontend/src/main/resources/static/4869.8cdc14d81f977c12.js index 60a5858..abc3bfe 100644 --- a/frontend/src/main/resources/static/4869.01cbe295f9493573.js +++ b/frontend/src/main/resources/static/4869.8cdc14d81f977c12.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4869],{84869:function(H,f,a){a.r(f),a.d(f,{SubstanceNotesModule:function(){return Q}});var u=a(48047),g=a(78069),p=a(36362),v=a(24582),C=a(7318),x=a(2756),b=a(24874),Z=a(50253),t=a(76442),d=a(95758),T=a(66088),l=a(97217),h=a(65590);function y(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"a",2),t.NdJ("click",function(){return t.CHM(n),t.oxw().toggleView()}),t._uU(1),t._UZ(2,"mat-icon",3),t.qZA()}if(2&e){var s=t.oxw();t.xp6(1),t.hij("Show ",s.isCollapsed?"all ":"less"," "),t.xp6(1),t.s9C("svgIcon",s.isCollapsed?"drop_down":"drop_up")}}var M=function(){var e=function(){function o(n){(0,g.Z)(this,o),this.elementRef=n,this.maxLength=200,this.hideToggle=!0,this.isCollapsed=!0}return(0,u.Z)(o,[{key:"ngOnInit",value:function(){this.determineView()}},{key:"toggleView",value:function(){this.isCollapsed=!this.isCollapsed,this.determineView()}},{key:"determineView",value:function(){if(!this.text||this.text.length<=this.maxLength)return this.currentText=this.text.replace(/(?:\r\n|\r|\n)/g,"
"),this.isCollapsed=!1,void(this.hideToggle=!0);this.hideToggle=!1,!0===this.isCollapsed?(this.currentText=this.text.substring(0,this.maxLength)+"...",this.currentText=this.currentText.replace(/(?:\r\n|\r|\n)/g,"
")):!1===this.isCollapsed&&(this.currentText=this.currentText=this.text.replace(/(?:\r\n|\r|\n)/g,"
"))}}]),o}();return e.\u0275fac=function(n){return new(n||e)(t.Y36(t.SBq))},e.\u0275cmp=t.Xpm({type:e,selectors:[["read-more"]],inputs:{text:"text",maxLength:"maxLength"},decls:2,vars:2,consts:[[3,"innerHTML"],["class","blue-font toggle",3,"click",4,"ngIf"],[1,"blue-font","toggle",3,"click"],[3,"svgIcon"]],template:function(n,s){1&n&&(t._UZ(0,"div",0),t.YNc(1,y,3,2,"a",1)),2&n&&(t.Q6J("innerHTML",s.currentText,t.oJD),t.xp6(1),t.Q6J("ngIf",!s.hideToggle))},directives:[p.O5,h.Hw],styles:[".toggle[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}"]}),e}(),N=a(73430);function S(e,o){1&e&&(t.TgZ(0,"th",8),t._uU(1," Note "),t.qZA())}function O(e,o){if(1&e&&(t.TgZ(0,"td",9),t._UZ(1,"read-more",10),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.Q6J("text",n.note)("maxLength",100)}}function w(e,o){1&e&&(t.TgZ(0,"th",8),t._uU(1," References "),t.qZA())}function R(e,o){if(1&e&&(t.TgZ(0,"h2",13),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",14),t._UZ(3,"app-references-manager",15),t.qZA(),t.TgZ(4,"div",16),t._UZ(5,"span",17),t.TgZ(6,"button",18),t._uU(7,"Close"),t.qZA(),t.qZA()),2&e){var n=t.oxw().$implicit,s=t.oxw();t.xp6(3),t.Q6J("substance",s.substance)("references",n.references)}}function U(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"td",9),t.TgZ(1,"button",11),t.NdJ("click",function(){t.CHM(n);var i=t.MAs(4);return t.oxw().openModal(i)}),t._uU(2,"View"),t.qZA(),t.YNc(3,R,8,2,"ng-template",null,12,t.W1O),t.qZA()}if(2&e){var s=o.$implicit;t.xp6(1),t.Q6J("disabled",s.references.length<=0)}}function A(e,o){1&e&&t._UZ(0,"tr",19)}function P(e,o){1&e&&t._UZ(0,"tr",20)}var Y=function(){var e=function(o){(0,v.Z)(s,o);var n=(0,C.Z)(s);function s(m,i,c){var r;return(0,g.Z)(this,s),(r=n.call(this)).dialog=m,r.gaService=i,r.overlayContainerService=c,r.notes=[],r.displayedColumns=["note","references"],r.substanceUpdated=new Z.x,r}return(0,u.Z)(s,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(c){i.substance=c,null!=i.substance&&null!=i.substance.notes&&i.substance.notes.length&&(i.notes=i.substance.notes),i.countUpdate.emit(i.notes.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"openModal",value:function(i){var c=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var r=this.dialog.open(i,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(L){c.overlayContainer.style.zIndex=null})}}]),s}(x.B);return e.\u0275fac=function(n){return new(n||e)(t.Y36(d.uw),t.Y36(b.$),t.Y36(T.Xj))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-notes"]],features:[t.qOj],decls:10,vars:3,consts:[[1,"responsive"],["mat-table","",1,"no-bottom-border",3,"dataSource"],["matColumnDef","note"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[3,"text","maxLength"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-header-row",""],["mat-row",""]],template:function(n,s){1&n&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,S,2,0,"th",3),t.YNc(4,O,2,2,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,w,2,0,"th",3),t.YNc(7,U,5,1,"td",4),t.BQk(),t.YNc(8,A,1,0,"tr",6),t.YNc(9,P,1,0,"tr",7),t.qZA(),t.qZA()),2&n&&(t.xp6(1),t.Q6J("dataSource",s.notes),t.xp6(7),t.Q6J("matHeaderRowDef",s.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",s.displayedColumns))},directives:[l.BZ,l.w1,l.fO,l.ge,l.Dz,l.ev,M,d.uh,d.xY,N.C,d.H8,d.ZT,l.as,l.XQ,l.nj,l.Gk],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}"]}),e}(),J=a(64061),D=a(33865),I=a(38277),Q=function(){var e=(0,u.Z)(function o(){(0,g.Z)(this,o)});return e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[p.ez,J.o.forChild(Y),l.p0,D.HT,d.Is,I.V,h.Ps]]}),e}()}}]); -//# sourceMappingURL=4869.01cbe295f9493573.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4869],{84869:function(H,f,a){a.r(f),a.d(f,{SubstanceNotesModule:function(){return Q}});var u=a(1884),g=a(39117),p=a(36362),v=a(46751),C=a(56101),x=a(2756),b=a(24874),Z=a(50253),t=a(86613),d=a(95758),T=a(54244),l=a(97217),h=a(65590);function y(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"a",2),t.NdJ("click",function(){return t.CHM(n),t.oxw().toggleView()}),t._uU(1),t._UZ(2,"mat-icon",3),t.qZA()}if(2&e){var s=t.oxw();t.xp6(1),t.hij("Show ",s.isCollapsed?"all ":"less"," "),t.xp6(1),t.s9C("svgIcon",s.isCollapsed?"drop_down":"drop_up")}}var M=function(){var e=function(){function o(n){(0,g.Z)(this,o),this.elementRef=n,this.maxLength=200,this.hideToggle=!0,this.isCollapsed=!0}return(0,u.Z)(o,[{key:"ngOnInit",value:function(){this.determineView()}},{key:"toggleView",value:function(){this.isCollapsed=!this.isCollapsed,this.determineView()}},{key:"determineView",value:function(){if(!this.text||this.text.length<=this.maxLength)return this.currentText=this.text.replace(/(?:\r\n|\r|\n)/g,"
"),this.isCollapsed=!1,void(this.hideToggle=!0);this.hideToggle=!1,!0===this.isCollapsed?(this.currentText=this.text.substring(0,this.maxLength)+"...",this.currentText=this.currentText.replace(/(?:\r\n|\r|\n)/g,"
")):!1===this.isCollapsed&&(this.currentText=this.currentText=this.text.replace(/(?:\r\n|\r|\n)/g,"
"))}}]),o}();return e.\u0275fac=function(n){return new(n||e)(t.Y36(t.SBq))},e.\u0275cmp=t.Xpm({type:e,selectors:[["read-more"]],inputs:{text:"text",maxLength:"maxLength"},decls:2,vars:2,consts:[[3,"innerHTML"],["class","blue-font toggle",3,"click",4,"ngIf"],[1,"blue-font","toggle",3,"click"],[3,"svgIcon"]],template:function(n,s){1&n&&(t._UZ(0,"div",0),t.YNc(1,y,3,2,"a",1)),2&n&&(t.Q6J("innerHTML",s.currentText,t.oJD),t.xp6(1),t.Q6J("ngIf",!s.hideToggle))},directives:[p.O5,h.Hw],styles:[".toggle[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}"]}),e}(),N=a(73430);function S(e,o){1&e&&(t.TgZ(0,"th",8),t._uU(1," Note "),t.qZA())}function O(e,o){if(1&e&&(t.TgZ(0,"td",9),t._UZ(1,"read-more",10),t.qZA()),2&e){var n=o.$implicit;t.xp6(1),t.Q6J("text",n.note)("maxLength",100)}}function w(e,o){1&e&&(t.TgZ(0,"th",8),t._uU(1," References "),t.qZA())}function R(e,o){if(1&e&&(t.TgZ(0,"h2",13),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",14),t._UZ(3,"app-references-manager",15),t.qZA(),t.TgZ(4,"div",16),t._UZ(5,"span",17),t.TgZ(6,"button",18),t._uU(7,"Close"),t.qZA(),t.qZA()),2&e){var n=t.oxw().$implicit,s=t.oxw();t.xp6(3),t.Q6J("substance",s.substance)("references",n.references)}}function U(e,o){if(1&e){var n=t.EpF();t.TgZ(0,"td",9),t.TgZ(1,"button",11),t.NdJ("click",function(){t.CHM(n);var i=t.MAs(4);return t.oxw().openModal(i)}),t._uU(2,"View"),t.qZA(),t.YNc(3,R,8,2,"ng-template",null,12,t.W1O),t.qZA()}if(2&e){var s=o.$implicit;t.xp6(1),t.Q6J("disabled",s.references.length<=0)}}function A(e,o){1&e&&t._UZ(0,"tr",19)}function P(e,o){1&e&&t._UZ(0,"tr",20)}var Y=function(){var e=function(o){(0,v.Z)(s,o);var n=(0,C.Z)(s);function s(m,i,c){var r;return(0,g.Z)(this,s),(r=n.call(this)).dialog=m,r.gaService=i,r.overlayContainerService=c,r.notes=[],r.displayedColumns=["note","references"],r.substanceUpdated=new Z.x,r}return(0,u.Z)(s,[{key:"ngOnInit",value:function(){var i=this;this.substanceUpdated.subscribe(function(c){i.substance=c,null!=i.substance&&null!=i.substance.notes&&i.substance.notes.length&&(i.notes=i.substance.notes),i.countUpdate.emit(i.notes.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"openModal",value:function(i){var c=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var r=this.dialog.open(i,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",r.afterClosed().subscribe(function(L){c.overlayContainer.style.zIndex=null})}}]),s}(x.B);return e.\u0275fac=function(n){return new(n||e)(t.Y36(d.uw),t.Y36(b.$),t.Y36(T.Xj))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-notes"]],features:[t.qOj],decls:10,vars:3,consts:[[1,"responsive"],["mat-table","",1,"no-bottom-border",3,"dataSource"],["matColumnDef","note"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[3,"text","maxLength"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-header-row",""],["mat-row",""]],template:function(n,s){1&n&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,S,2,0,"th",3),t.YNc(4,O,2,2,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,w,2,0,"th",3),t.YNc(7,U,5,1,"td",4),t.BQk(),t.YNc(8,A,1,0,"tr",6),t.YNc(9,P,1,0,"tr",7),t.qZA(),t.qZA()),2&n&&(t.xp6(1),t.Q6J("dataSource",s.notes),t.xp6(7),t.Q6J("matHeaderRowDef",s.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",s.displayedColumns))},directives:[l.BZ,l.w1,l.fO,l.ge,l.Dz,l.ev,M,d.uh,d.xY,N.C,d.H8,d.ZT,l.as,l.XQ,l.nj,l.Gk],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}"]}),e}(),J=a(64061),D=a(33865),I=a(38277),Q=function(){var e=(0,u.Z)(function o(){(0,g.Z)(this,o)});return e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[p.ez,J.o.forChild(Y),l.p0,D.HT,d.Is,I.V,h.Ps]]}),e}()}}]); +//# sourceMappingURL=4869.8cdc14d81f977c12.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4869.01cbe295f9493573.js.map b/frontend/src/main/resources/static/4869.8cdc14d81f977c12.js.map similarity index 99% rename from frontend/src/main/resources/static/4869.01cbe295f9493573.js.map rename to frontend/src/main/resources/static/4869.8cdc14d81f977c12.js.map index 657f302..5ecb20e 100644 --- a/frontend/src/main/resources/static/4869.01cbe295f9493573.js.map +++ b/frontend/src/main/resources/static/4869.8cdc14d81f977c12.js.map @@ -1 +1 @@ -{"version":3,"mappings":"kWACAA,eAAkDA,iDAASC,eAAcD,SAAoCA,sBAAsEA,8BAA1GA,wDAA8CA,+DCOhH,IAAME,EAAb,eAAaA,EAAb,WAQE,WAAoBC,IAAsB,eAAtBC,kBANXA,eAAY,IAErBA,iBAAa,EAENA,kBAAc,EANvB,uCAUE,WACEA,KAAKC,kBAXT,wBAaE,WACED,KAAKE,aAAeF,KAAKE,YACzBF,KAAKC,kBAfT,2BAiBE,WACE,IAAKD,KAAKG,MAAQH,KAAKG,KAAKC,QAAUJ,KAAKK,UAIzC,OAHAL,KAAKM,YAAcN,KAAKG,KAAKI,QAAQ,kBAAmB,SACxDP,KAAKE,aAAc,OACnBF,KAAKQ,YAAa,GAGpBR,KAAKQ,YAAa,GACO,IAAzBR,KAASE,aACPF,KAAKM,YAAcN,KAAKG,KAAKM,UAAU,EAAGT,KAAKK,WAAa,MAC5DL,KAAKM,YAAcN,KAAKM,YAAYC,QAAQ,kBAAmB,WACjC,IAArBP,KAAKE,cACdF,KAAKM,YAAcN,KAAKM,YAAcN,KAAKG,KAAKI,QAAQ,kBAAmB,cA7BjFG,kDAAaZ,GAAiBF,uCAAjBE,EAAiBa,2ODR9Bf,iBACAA,4BADKA,uCACDA,4KCOSE,EAAb,oCCJQF,gBAAuCA,kBAAKA,kCAC5CA,gBACEA,wBACFA,gCADaA,8BAAkB,wCAI9BA,gBAAuCA,wBAAWA,kCAKjDA,iBAAqBA,sBAAUA,QAC/BA,kBACEA,qCACFA,QACAA,kBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,gDAL0BA,wCAAyB,kEANrDA,gBACEA,qBAA6DA,gEAASgB,eAAkEhB,gBAAIA,QAE5IA,2CAWFA,kCAbiGA,wEAgBnGA,sCACAA,iBCfC,IAAMiB,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,QAA8B,GAC9BA,mBAA6B,CAAC,OAAQ,cACtCA,mBAAmB,IAAIC,IAM4BD,EATrD,uCAcE,WAAQ,WACNjB,KAAKmB,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA6C,MAAxBD,EAAKC,UAAUC,OAAiBF,EAAKC,UAAUC,MAAMnB,SACjFiB,EAAKE,MAAQF,EAAKC,UAAUC,OAE9BF,EAAKG,YAAYC,KAAKJ,EAAKE,MAAMnB,UAEnCJ,KAAK0B,iBAAmB1B,KAAKgB,wBAAwBW,wBAtBzD,uBAyBE,SAAUC,GAAW,WAEnB5B,KAAKe,UAAUc,UAAU7B,KAAK8B,uBAAwB,SAAU,mBAEhE,IAAMC,EAAY/B,KAAKc,OAAOkB,KAAKJ,EAAa,CAC9CK,SAAU,MACVC,SAAU,QAEZlC,KAAK0B,iBAAiBS,MAAMC,OAAS,OAErCL,EAAUM,cAAcjB,UAAU,YAChCkB,EAAKZ,iBAAiBS,MAAMC,OAAS,WApC3CG,GAA6CC,kDAAhC3B,GAAuBjB,6DAAvBiB,EAAuBF,mwBDdpCf,iBACIA,mBAEEA,WACEA,sBACAA,sBAGFA,QACEA,WACCA,sBACDA,sBAeFA,QAEAA,sBACAA,sBACFA,QACFA,eA9B4CA,qCA2BpBA,qDACaA,ktBCf1BiB,EAAb,oCCSa4B,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsC/B,GACtCgC,KACAC,KACAC,KACAC,IACAC,SAISR,EAAb","names":["i0","ctx_r1","ReadMoreComponent","elementRef","this","determineView","isCollapsed","text","length","maxLength","currentText","replace","hideToggle","substring","o","selectors","ctx_r11","SubstanceNotesComponent","dialog","gaService","overlayContainerService","r","Subject","substanceUpdated","subscribe","i","substance","notes","countUpdate","emit","overlayContainer","getContainerElement","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","c","s","SubstanceCardBase","SubstanceNotesModule","u","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatDialogModule","ReferencesManagerModule","MatIconModule"],"sources":["./src/app/core/substance-details/substance-notes/read-more/read-more.component.html","./src/app/core/substance-details/substance-notes/read-more/read-more.component.ts","./src/app/core/substance-details/substance-notes/substance-notes.component.html","./src/app/core/substance-details/substance-notes/substance-notes.component.ts","./src/app/core/substance-details/substance-notes/substance-notes.module.ts"],"sourcesContent":["
\r\nShow {{isCollapsed? 'all ':'less'}} \r\n","import {AfterViewInit, Component, ElementRef, Input, OnChanges, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'read-more',\r\n templateUrl: './read-more.component.html',\r\n styleUrls: ['./read-more.component.scss']\r\n})\r\nexport class ReadMoreComponent implements OnInit {\r\n @Input() text: string;\r\n @Input() maxLength = 200;\r\n currentText: string;\r\n hideToggle = true;\r\n\r\n public isCollapsed = true;\r\n\r\n constructor(private elementRef: ElementRef) {\r\n }\r\n ngOnInit() {\r\n this.determineView();\r\n }\r\n toggleView(): void {\r\n this.isCollapsed = !this.isCollapsed;\r\n this.determineView();\r\n }\r\n determineView(): void {\r\n if (!this.text || this.text.length <= this.maxLength) {\r\n this.currentText = this.text.replace(/(?:\\r\\n|\\r|\\n)/g, '
');\r\n this.isCollapsed = false;\r\n this.hideToggle = true;\r\n return;\r\n }\r\n this.hideToggle = false;\r\n if (this.isCollapsed === true) {\r\n this.currentText = this.text.substring(0, this.maxLength) + '...';\r\n this.currentText = this.currentText.replace(/(?:\\r\\n|\\r|\\n)/g, '
');\r\n } else if (this.isCollapsed === false) {\r\n this.currentText = this.currentText = this.text.replace(/(?:\\r\\n|\\r|\\n)/g, '
');\r\n }\r\n\r\n }\r\n\r\n}\r\n","
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Note \r\n \r\n References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceNote} from '../../substance/substance.model';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport { ReadMoreComponent } from '@gsrs-core/substance-details/substance-notes/read-more/read-more.component';\r\nimport {Subject} from 'rxjs';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\n\r\n@Component({\r\n selector: 'app-substance-notes',\r\n templateUrl: './substance-notes.component.html',\r\n styleUrls: ['./substance-notes.component.scss']\r\n})\r\nexport class SubstanceNotesComponent extends SubstanceCardBase implements OnInit {\r\n notes: Array = [];\r\n displayedColumns: string[] = ['note', 'references'];\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private overlayContainerService: OverlayContainer\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.notes != null && this.substance.notes.length) {\r\n this.notes = this.substance.notes;\r\n }\r\n this.countUpdate.emit(this.notes.length);\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceNotesComponent } from './substance-notes.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {ReadMoreComponent} from '@gsrs-core/substance-details/substance-notes/read-more/read-more.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNotesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatDialogModule,\r\n ReferencesManagerModule,\r\n MatIconModule\r\n ],\r\n declarations: [SubstanceNotesComponent, ReadMoreComponent]\r\n})\r\nexport class SubstanceNotesModule { }\r\n"],"sourceRoot":"webpack:///","file":"4869.01cbe295f9493573.js"} \ No newline at end of file +{"version":3,"mappings":"kWACAA,eAAkDA,iDAASC,eAAcD,SAAoCA,sBAAsEA,8BAA1GA,wDAA8CA,+DCOhH,IAAME,EAAb,eAAaA,EAAb,WAQE,WAAoBC,IAAsB,eAAtBC,kBANXA,eAAY,IAErBA,iBAAa,EAENA,kBAAc,EANvB,uCAUE,WACEA,KAAKC,kBAXT,wBAaE,WACED,KAAKE,aAAeF,KAAKE,YACzBF,KAAKC,kBAfT,2BAiBE,WACE,IAAKD,KAAKG,MAAQH,KAAKG,KAAKC,QAAUJ,KAAKK,UAIzC,OAHAL,KAAKM,YAAcN,KAAKG,KAAKI,QAAQ,kBAAmB,SACxDP,KAAKE,aAAc,OACnBF,KAAKQ,YAAa,GAGpBR,KAAKQ,YAAa,GACO,IAAzBR,KAASE,aACPF,KAAKM,YAAcN,KAAKG,KAAKM,UAAU,EAAGT,KAAKK,WAAa,MAC5DL,KAAKM,YAAcN,KAAKM,YAAYC,QAAQ,kBAAmB,WACjC,IAArBP,KAAKE,cACdF,KAAKM,YAAcN,KAAKM,YAAcN,KAAKG,KAAKI,QAAQ,kBAAmB,cA7BjFG,kDAAaZ,GAAiBF,uCAAjBE,EAAiBa,2ODR9Bf,iBACAA,4BADKA,uCACDA,4KCOSE,EAAb,oCCJQF,gBAAuCA,kBAAKA,kCAC5CA,gBACEA,wBACFA,gCADaA,8BAAkB,wCAI9BA,gBAAuCA,wBAAWA,kCAKjDA,iBAAqBA,sBAAUA,QAC/BA,kBACEA,qCACFA,QACAA,kBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,gDAL0BA,wCAAyB,kEANrDA,gBACEA,qBAA6DA,gEAASgB,eAAkEhB,gBAAIA,QAE5IA,2CAWFA,kCAbiGA,wEAgBnGA,sCACAA,iBCfC,IAAMiB,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,QAA8B,GAC9BA,mBAA6B,CAAC,OAAQ,cACtCA,mBAAmB,IAAIC,IAM4BD,EATrD,uCAcE,WAAQ,WACNjB,KAAKmB,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA6C,MAAxBD,EAAKC,UAAUC,OAAiBF,EAAKC,UAAUC,MAAMnB,SACjFiB,EAAKE,MAAQF,EAAKC,UAAUC,OAE9BF,EAAKG,YAAYC,KAAKJ,EAAKE,MAAMnB,UAEnCJ,KAAK0B,iBAAmB1B,KAAKgB,wBAAwBW,wBAtBzD,uBAyBE,SAAUC,GAAW,WAEnB5B,KAAKe,UAAUc,UAAU7B,KAAK8B,uBAAwB,SAAU,mBAEhE,IAAMC,EAAY/B,KAAKc,OAAOkB,KAAKJ,EAAa,CAC9CK,SAAU,MACVC,SAAU,QAEZlC,KAAK0B,iBAAiBS,MAAMC,OAAS,OAErCL,EAAUM,cAAcjB,UAAU,YAChCkB,EAAKZ,iBAAiBS,MAAMC,OAAS,WApC3CG,GAA6CC,kDAAhC3B,GAAuBjB,6DAAvBiB,EAAuBF,mwBDdpCf,iBACIA,mBAEEA,WACEA,sBACAA,sBAGFA,QACEA,WACCA,sBACDA,sBAeFA,QAEAA,sBACAA,sBACFA,QACFA,eA9B4CA,qCA2BpBA,qDACaA,ktBCf1BiB,EAAb,oCCSa4B,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsC/B,GACtCgC,KACAC,KACAC,KACAC,IACAC,SAISR,EAAb","names":["i0","ctx_r1","ReadMoreComponent","elementRef","this","determineView","isCollapsed","text","length","maxLength","currentText","replace","hideToggle","substring","o","selectors","ctx_r11","SubstanceNotesComponent","dialog","gaService","overlayContainerService","r","Subject","substanceUpdated","subscribe","i","substance","notes","countUpdate","emit","overlayContainer","getContainerElement","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","c","s","SubstanceCardBase","SubstanceNotesModule","u","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatDialogModule","ReferencesManagerModule","MatIconModule"],"sources":["./src/app/core/substance-details/substance-notes/read-more/read-more.component.html","./src/app/core/substance-details/substance-notes/read-more/read-more.component.ts","./src/app/core/substance-details/substance-notes/substance-notes.component.html","./src/app/core/substance-details/substance-notes/substance-notes.component.ts","./src/app/core/substance-details/substance-notes/substance-notes.module.ts"],"sourcesContent":["
\r\nShow {{isCollapsed? 'all ':'less'}} \r\n","import {AfterViewInit, Component, ElementRef, Input, OnChanges, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'read-more',\r\n templateUrl: './read-more.component.html',\r\n styleUrls: ['./read-more.component.scss']\r\n})\r\nexport class ReadMoreComponent implements OnInit {\r\n @Input() text: string;\r\n @Input() maxLength = 200;\r\n currentText: string;\r\n hideToggle = true;\r\n\r\n public isCollapsed = true;\r\n\r\n constructor(private elementRef: ElementRef) {\r\n }\r\n ngOnInit() {\r\n this.determineView();\r\n }\r\n toggleView(): void {\r\n this.isCollapsed = !this.isCollapsed;\r\n this.determineView();\r\n }\r\n determineView(): void {\r\n if (!this.text || this.text.length <= this.maxLength) {\r\n this.currentText = this.text.replace(/(?:\\r\\n|\\r|\\n)/g, '
');\r\n this.isCollapsed = false;\r\n this.hideToggle = true;\r\n return;\r\n }\r\n this.hideToggle = false;\r\n if (this.isCollapsed === true) {\r\n this.currentText = this.text.substring(0, this.maxLength) + '...';\r\n this.currentText = this.currentText.replace(/(?:\\r\\n|\\r|\\n)/g, '
');\r\n } else if (this.isCollapsed === false) {\r\n this.currentText = this.currentText = this.text.replace(/(?:\\r\\n|\\r|\\n)/g, '
');\r\n }\r\n\r\n }\r\n\r\n}\r\n","
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Note \r\n \r\n References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceNote} from '../../substance/substance.model';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport { ReadMoreComponent } from '@gsrs-core/substance-details/substance-notes/read-more/read-more.component';\r\nimport {Subject} from 'rxjs';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\n\r\n@Component({\r\n selector: 'app-substance-notes',\r\n templateUrl: './substance-notes.component.html',\r\n styleUrls: ['./substance-notes.component.scss']\r\n})\r\nexport class SubstanceNotesComponent extends SubstanceCardBase implements OnInit {\r\n notes: Array = [];\r\n displayedColumns: string[] = ['note', 'references'];\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private overlayContainerService: OverlayContainer\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.notes != null && this.substance.notes.length) {\r\n this.notes = this.substance.notes;\r\n }\r\n this.countUpdate.emit(this.notes.length);\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceNotesComponent } from './substance-notes.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {ReadMoreComponent} from '@gsrs-core/substance-details/substance-notes/read-more/read-more.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNotesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatDialogModule,\r\n ReferencesManagerModule,\r\n MatIconModule\r\n ],\r\n declarations: [SubstanceNotesComponent, ReadMoreComponent]\r\n})\r\nexport class SubstanceNotesModule { }\r\n"],"sourceRoot":"webpack:///","file":"4869.8cdc14d81f977c12.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4874.e53a2061fc9bbaf0.js b/frontend/src/main/resources/static/4874.e53a2061fc9bbaf0.js deleted file mode 100644 index 431d5c0..0000000 --- a/frontend/src/main/resources/static/4874.e53a2061fc9bbaf0.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4874],{54874:function(S,C,s){"use strict";s.r(C),s.d(C,{SubstanceFormSubunitsModule:function(){return ht}});var c=s(48047),a=s(78069),g=s(36362),y=s(75143),v=s(24582),x=s(7318),O=s(33567),_=s(40104),q=(s(27299),s(79550)),A=s(18291),r=s(39401),l=s(39233),t=s(76442),d=s(78444),T=s(95758),U=s(66088),k=s(87317),I=s(65590),N=s(31959),F=s(51279),D=s(15541),E=s(21109);function $(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"button",12),t.NdJ("click",function(){t.CHM(n);var i=t.oxw(2).$implicit;return t.oxw(2).select(i.subunitIndex)}),t._uU(1),t.qZA()}if(2&u){var e=t.oxw(2).$implicit;t.xp6(1),t.hij(" Copy From Subunit ",e.subunitIndex," ")}}function j(u,f){if(1&u&&(t.TgZ(0,"div",10),t.YNc(1,$,2,1,"button",11),t.qZA()),2&u){var n=t.oxw().$implicit,e=t.oxw(2);t.xp6(1),t.Q6J("ngIf",n.subunitIndex!==e.unit)}}function L(u,f){if(1&u&&(t.TgZ(0,"div",10),t._uU(1),t.qZA()),2&u){var n=t.oxw().$implicit;t.xp6(1),t.hij(" Subunit ",n.subunitIndex," is not applicable ")}}function z(u,f){if(1&u&&(t.TgZ(0,"div",8),t.YNc(1,j,2,1,"div",9),t.YNc(2,L,2,1,"div",9),t.qZA()),2&u){var n=f.$implicit,e=t.oxw(2);t.xp6(1),t.Q6J("ngIf",n.sequence==e.sequence),t.xp6(1),t.Q6J("ngIf",n.sequence!==e.sequence)}}function H(u,f){if(1&u&&(t.TgZ(0,"span"),t.YNc(1,z,3,2,"div",7),t.qZA()),2&u){var n=t.oxw();t.xp6(1),t.Q6J("ngForOf",n.units)}}function V(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",13),t._uU(2),t.qZA(),t.TgZ(3,"div",13),t.TgZ(4,"button",12),t.NdJ("click",function(){return t.CHM(n),t.oxw().confirm()}),t._uU(5,"Confirm"),t.qZA(),t._UZ(6,"span",6),t.TgZ(7,"button",12),t.NdJ("click",function(){return t.CHM(n),t.oxw().cancel()}),t._uU(8,"Cancel"),t.qZA(),t.qZA(),t.qZA()}if(2&u){var e=t.oxw();t.xp6(2),t.lnq(" Are you sure you want to copy the disulfide links from subunit ",e.selected," to subunit ",e.unit,"? Any disulfide links on subunit ",e.unit," will be erased and overwritten. ")}}function G(u,f){if(1&u&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&u){var n=t.oxw();t.xp6(1),t.hij(" ",n.message,"\n")}}var X=function(){var u=function(){function f(n,e){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};(0,a.Z)(this,f),this.dialogRef=n,this.subService=e,this.data=o,this.showButtons=!0,n.disableClose=!0}return(0,c.Z)(f,[{key:"ngOnInit",value:function(){var e=this;this.unit=this.data.unit,this.sequence=this.data.full.sequence,this.subService.substanceSubunits.subscribe(function(o){e.units=o})}},{key:"select",value:function(e){this.selected=e,this.showButtons=!1}},{key:"confirm",value:function(){var e=this;this.subService.copyDisulfideLinks(this.unit,this.selected),this.selected=null,this.message="Copying...",setTimeout(function(){e.message="Links successfully copied over."},500)}},{key:"cancel",value:function(){this.selected=null,this.showButtons=!0}}]),f}();return u.\u0275fac=function(n){return new(n||u)(t.Y36(T.so),t.Y36(O.B),t.Y36(T.WI))},u.\u0275cmp=t.Xpm({type:u,selectors:[["app-copy-disulfide-dialog"]],decls:12,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"form-row","desc"],[4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose",""],[1,"middle-fill"],["class","form-column",4,"ngFor","ngForOf"],[1,"form-column"],["class","option",4,"ngIf"],[1,"option"],["mat-button","",3,"click",4,"ngIf"],["mat-button","",3,"click"],[1,"form-row"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0),t._uU(1," Copy Disulfide Links "),t.qZA(),t.TgZ(2,"div",1),t.TgZ(3,"div",2),t._uU(4," Copy intra-connected disulfide links from one subunit to another with an identical sequence. "),t.qZA(),t.YNc(5,H,2,1,"span",3),t.qZA(),t.YNc(6,V,9,3,"div",3),t.YNc(7,G,2,1,"div",3),t.TgZ(8,"div",4),t.TgZ(9,"button",5),t._uU(10,"Close"),t.qZA(),t._UZ(11,"span",6),t.qZA()),2&n&&(t.xp6(5),t.Q6J("ngIf",e.showButtons),t.xp6(1),t.Q6J("ngIf",e.selected),t.xp6(1),t.Q6J("ngIf",e.message))},directives:[T.uh,T.xY,g.O5,g.sg,k.lW,T.H8,T.ZT],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row;margin-bottom:15px}.option[_ngcontent-%COMP%]{padding:10px}.desc[_ngcontent-%COMP%]{margin-bottom:30px}"]}),u}(),W=s(98002),R=s(40089),Y=s(90587),K=s(14900);function tt(u,f){1&u&&(t.TgZ(0,"div",24),t._uU(1," Deleted\xa0 "),t.qZA())}function et(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"button",25),t.NdJ("click",function(){return t.CHM(n),t.oxw().convertSequence()}),t._uU(1," convert"),t.qZA()}}function nt(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"button",26),t.NdJ("click",function(){return t.CHM(n),t.oxw().copyDisulfides()}),t._uU(1," copy disulfide links"),t.qZA()}}function it(u,f){if(1&u&&(t.TgZ(0,"span",36),t.TgZ(1,"span",37),t._uU(2),t.qZA(),t.qZA()),2&u){var n=f.$implicit,e=t.oxw(4);t.xp6(1),t.s9C("matTooltip",e.getTooltipMessage(e.subunitSequence.subunitIndex,n.unitIndex,n.unitValue,n.class||"").join("\n")),t.Q6J("ngClass",n.class),t.xp6(1),t.Oqu(n.unitValue)}}function st(u,f){if(1&u&&(t.TgZ(0,"div",32),t.TgZ(1,"div",33),t._uU(2),t.qZA(),t.TgZ(3,"div",34),t.YNc(4,it,3,3,"span",35),t.qZA(),t.qZA()),2&u){var n=f.$implicit,e=f.last,o=t.oxw().last,i=t.oxw(2);t.Q6J("ngClass",o&&e?"last-section":""),t.xp6(2),t.Oqu(n[1]),t.xp6(2),t.Q6J("ngForOf",i.subunitSequence.subunits.slice(n[0],n[1]))}}function ot(u,f){if(1&u&&(t.TgZ(0,"div",30),t.YNc(1,st,5,3,"div",31),t.qZA()),2&u){var n=f.$implicit;t.xp6(1),t.Q6J("ngForOf",n)}}function ut(u,f){if(1&u&&(t.TgZ(0,"div",27),t.TgZ(1,"div",28),t.YNc(2,ot,2,1,"div",29),t.qZA(),t.qZA()),2&u){var n=t.oxw();t.xp6(2),t.Q6J("ngForOf",n.subunitSequence.subsections)}}function rt(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"div"),t._uU(1),t.TgZ(2,"button",38),t.NdJ("click",function(){return t.CHM(n),t.oxw().generateSites("DNA")}),t._uU(3,"DNA"),t.qZA(),t.TgZ(4,"button",38),t.NdJ("click",function(){return t.CHM(n),t.oxw().generateSites("RNA")}),t._uU(5,"RNA"),t.qZA(),t._uU(6," sequence "),t.qZA()}if(2&u){var e=t.oxw();t.xp6(1),t.hij(" Generate",e.sequenceType?"d":""," links and sugars for this subunit as a "),t.xp6(1),t.Q6J("ngClass","DNA"===e.sequenceType?"generated":""),t.xp6(2),t.Q6J("ngClass","RNA"===e.sequenceType?"generated":"")}}var at=function(){var u=function(){function f(n,e,o,i,p,b,m,P){(0,a.Z)(this,f),this.substanceFormService=n,this.substanceFormLinksService=e,this.scrollToService=o,this.gaService=i,this.cvService=p,this.dialog=b,this.overlayContainerService=m,this.router=P,this.subunitDeleted=new t.vpe,this.vocabulary={},this.subscriptions=[],this.toggle={},this.allSites=[],this.features=[],this.sequenceSites=[],this.sequenceType="",this.validArray=[]}return(0,c.Z)(f,[{key:"ngOnInit",value:function(){var e=this;this.allSites=[],this.overlayContainer=this.overlayContainerService.getContainerElement(),""===this.subunit.sequence&&(this.toggle[this.subunit.subunitIndex]=!0),this.substanceFormService.definition.subscribe(function(i){e.substanceType=i.substanceClass,e.searchType="protein"===e.substanceType?"Protein":"Nucleicacid",e.getVocabularies()}).unsubscribe()}},{key:"ngAfterViewInit",value:function(){var e=this;setTimeout(function(){var i=e.substanceFormService.subunitDisplaySequences.subscribe(function(p){var b=p.filter(function(m){return m.subunitIndex===e.subunit.subunitIndex})[0];(!e.subunitSequence||!D(e.subunitSequence,b))&&(e.subunitSequence&&JSON.stringify(e.subunitSequence)!==JSON.stringify(b)?(e.subunitSequence=b,setTimeout(function(){e.allSites&&e.addStyle()})):e.subunitSequence=b)});e.subscriptions.push(i)});var o=this.substanceFormService.allSites.subscribe(function(i){var p=[];i.forEach(function(b){b.subunit===e.subunit.subunitIndex&&p.push(b)}),e.allSites&&e.allSites!==p?(e.allSites=p,setTimeout(function(){e.subunitSequence&&e.addStyle()})):e.allSites||(e.allSites=p)});this.subscriptions.push(o),setTimeout(function(){})}},{key:"ngOnChanges",value:function(e){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"getVocabularies",value:function(){var e=this,o={value:"X",display:"Non-standard Residue"};"protein"===this.substanceType?this.cvService.getDomainVocabulary("AMINO_ACID_RESIDUE").subscribe(function(i){for(var p in e.vocabulary=i.AMINO_ACID_RESIDUE.dictionary,e.vocabulary.X=o,e.vocabulary)e.validArray.push(e.vocabulary[p].value)},function(i){}):this.cvService.getDomainVocabulary("NUCLEIC_ACID_BASE").subscribe(function(i){for(var p in e.vocabulary=i.NUCLEIC_ACID_BASE.dictionary,e.vocabulary.X=o,e.vocabulary)e.validArray.push(e.vocabulary[p].value)},function(i){})}},{key:"addStyle",value:function(){var e=this;this.subunitSequence&&this.subunitSequence.subunits&&this.allSites.forEach(function(o){e.subunitSequence.subunits&&(e.subunitSequence.subunits[o.residue-1].class=e.subunitSequence.subunits[o.residue-1].class&&e.subunitSequence.subunits[o.residue-1].class!==o.type?e.subunitSequence.subunits[o.residue-1].class+" "+o.type:o.type)})}},{key:"getTooltipMessage",value:function(e,o,i,p){var b=void 0===this.vocabulary[i.toUpperCase()]?"UNDEFINED":this.vocabulary[i.toUpperCase()].display,m=[],P={modification:"Structural Modification",other:"Other Link","C-Glycosylation":"C-Glycosylation","N-Glycosylation":"N-Glycosylation","O-Glycosylation":"O-Glycosylation",feature:this.substanceType.toUpperCase()+" Feature",disulfide:"Disulfide Link"};return m.push("".concat(e," - ").concat(o,": ").concat(i.toUpperCase()," (").concat(b,")")),p.split(" ").forEach(function(h){m.push(P[h]||"")}),m}},{key:"copyDisulfides",value:function(){var e=this,o=this.dialog.open(X,{data:{unit:this.subunit.subunitIndex,full:this.subunit},width:"600px"});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(p){e.overlayContainer.style.zIndex=null})}},{key:"search",value:function(){var e=this.makeRandom();sessionStorage.setItem("gsrs_edit_sequence_"+e,JSON.stringify(this.subunit.sequence));var i=window.location.href.replace(this.router.url,"")+this.router.serializeUrl(this.router.createUrlTree(["/sequence-search"],{queryParams:{seq_type:this.searchType,source:"edit",source_id:e}}));window.open(i,"_blank")}},{key:"makeRandom",value:function(){for(var e="",o="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890",i=0;i<6;i++)e+=o.charAt(Math.floor(Math.random()*o.length));return e}},{key:"editSubunit",value:function(e,o){this.toggle[e.subunitIndex]=!this.toggle[e.subunitIndex],!1===this.toggle[e.subunitIndex]?(this.subunit.sequence=o.trim().replace(/\s/g,""),this.substanceFormService.emitSubunitUpdate(),this.substanceFormService.recalculateCysteine()):(this.editSequence=this.preformatSeq(this.subunit.sequence),setTimeout(function(){var i=document.getElementsByClassName("sequence-textarea");[].forEach.call(i,function(p){p.style.height=p.scrollHeight+10+"px"})}))}},{key:"change",value:function(e){!1===this.toggle[this.subunit.subunitIndex]&&(e.target.value=this.subunit.sequence)}},{key:"deleteSubunit",value:function(){this.subunitDeleted.emit(this.subunit)}},{key:"preformatSeq",value:function(e){var o="";if(e)for(var i=0;i=0}).toString().replace(/,/g,"").trim();"protein"!==this.substanceType&&(b=b.toUpperCase()),this.editSequence=this.preformatSeq(b)}else{var i=this.subunit.sequence.split("").filter(function(m){return e.validArray.indexOf(m.toUpperCase())>=0}).toString().replace(/,/g,"").trim();"protein"!==this.substanceType&&(i=i.toUpperCase()),i!==this.subunit.sequence&&(this.subunit.sequence=i,this.substanceFormService.emitSubunitUpdate(),this.substanceFormService.recalculateCysteine())}}},{key:"convertSequence",value:function(){var i=[],p={},b="";i="A\tAla;C\tCys;D\tAsp;E\tGlu;F\tPhe;G\tGly;H\tHis;I\tIle;K\tLys;L\tLeu;M\tMet;N\tAsn;P\tPro;Q\tGln;R\tArg;S\tSer;T\tThr;V\tVal;W\tTrp;Y\tTyr".split(";");for(var m=0;m3?b+=M[h]:(void 0===J&&(J="X"),b+=J)}this.toggle[this.subunit.subunitIndex]?this.editSequence=b:(this.subunit.sequence=b,this.substanceFormService.emitSubunitUpdate(),this.substanceFormService.recalculateCysteine())}},{key:"generateSites",value:function(e){var o=this;this.sequenceType=e;var b,i=this.substanceFormService.substanceSugars.subscribe(function(w){o.sugars=w}),p=this.substanceFormLinksService.substanceLinks.subscribe(function(w){o.links=w});b="DNA"===e?"dR":"R",this.sugars.forEach(function(w){w.sites=w.sites.filter(function(Q){return Q.subunitIndex!==o.subunit.subunitIndex})});var m=[];if(null!=this.subunit&&null!=this.subunit.sequence)for(var P=1;P<=this.subunit.sequence.length;P++)m.push({subunitIndex:this.subunit.subunitIndex,residueIndex:P});this.sugars.push({sugar:b,sites:m}),this.links.forEach(function(w){w.sites=w.sites.filter(function(Q){return Q.subunitIndex!==o.subunit.subunitIndex})});var h=[];if(null!=this.subunit&&null!=this.subunit.sequence)for(var J=2;J<=this.subunit.sequence.length;J++)h.push({subunitIndex:this.subunit.subunitIndex,residueIndex:J});this.links.push({linkage:"P",sites:h}),this.substanceFormService.emitSugarUpdate(),this.substanceFormService.emitLinkUpdate(),p.unsubscribe(),i.unsubscribe()}}]),f}();return u.\u0275fac=function(n){return new(n||u)(t.Y36(O.B),t.Y36(E.e),t.Y36(d.i),t.Y36(_.$),t.Y36(A.I),t.Y36(T.uw),t.Y36(U.Xj),t.Y36(W.F0))},u.\u0275cmp=t.Xpm({type:u,selectors:[["app-subunit-form"]],inputs:{subunit:"subunit",view:"view",sites:"sites"},outputs:{subunitDeleted:"subunitDeleted"},features:[t.TTD],decls:30,vars:12,consts:[[1,"subunit-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[1,"subunit-label"],[1,"buttons"],[1,"mat-button","mat-primary","action-button",3,"click"],[1,"mat-button","action-button","mat-primary",3,"click"],[1,"spacer"],["class","mat-button action-button mat-primary convert","matTooltip","convert 3 letter sequence to 1 letter",3,"click",4,"ngIf"],["matTooltip","search for sequence in a new tab",1,"button-link",3,"click"],["class","mat-button action-button mat-primary","matTooltip","copy disulfides from another subunit",3,"click",4,"ngIf"],[1,"subunit-edit",3,"ngClass"],["cdkAutosizeMinRows","3","placeholder","Enter sequence here","name","edit",1,"sequence-textarea",3,"ngModel","ngModelChange","change"],["sequence",""],[3,"ngClass"],[1,"nest"],[1,"subunit"],[1,"raw-sequence"],["class","subunit-sequence",4,"ngIf"],[4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["matTooltip","convert 3 letter sequence to 1 letter",1,"mat-button","action-button","mat-primary","convert",3,"click"],["matTooltip","copy disulfides from another subunit",1,"mat-button","action-button","mat-primary",3,"click"],[1,"subunit-sequence"],[1,"responsive"],["class","sequence-section-group",4,"ngFor","ngForOf"],[1,"sequence-section-group"],["class","sequence-section",3,"ngClass",4,"ngFor","ngForOf"],[1,"sequence-section",3,"ngClass"],[1,"section-number"],[1,"section-units-container"],["class","section-unit",4,"ngFor","ngForOf"],[1,"section-unit"],["matTooltipClass","unit-tooltip",1,"selectedSite","siteref",3,"matTooltip","ngClass"],["mat-button","",3,"ngClass","click"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0),t.YNc(1,tt,2,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"button",4),t.NdJ("click",function(){return e.deleteSubunit()}),t._UZ(5,"mat-icon",5),t.qZA(),t.qZA(),t.TgZ(6,"div",6),t._uU(7),t.qZA(),t.TgZ(8,"div",7),t.TgZ(9,"button",8),t.NdJ("click",function(){return e.editSubunit(e.subunit,e.editSequence)}),t._uU(10),t.qZA(),t.TgZ(11,"button",9),t.NdJ("click",function(){return e.cleanSequence()}),t._uU(12," clean"),t.qZA(),t._UZ(13,"span",10),t.YNc(14,et,2,0,"button",11),t.TgZ(15,"a",12),t.NdJ("click",function(){return e.search()}),t._uU(16,"sequence search"),t.qZA(),t.YNc(17,nt,2,0,"button",13),t.qZA(),t.qZA(),t.TgZ(18,"div",14),t.TgZ(19,"textarea",15,16),t.NdJ("ngModelChange",function(i){return e.editSequence=i})("change",function(){return e.editSubunit(e.subunit,e.editSequence)}),t.qZA(),t.qZA(),t.TgZ(21,"div",17),t.TgZ(22,"div",18),t.TgZ(23,"div",19),t.TgZ(24,"div",20),t._uU(25),t.qZA(),t.qZA(),t.qZA(),t.YNc(26,ut,3,1,"div",21),t.qZA(),t.TgZ(27,"div",2),t.YNc(28,rt,7,3,"div",22),t.qZA(),t._UZ(29,"app-audit-info",23),t.qZA()),2&n&&(t.xp6(1),t.Q6J("ngIf",e.subunit.$$deletedCode),t.xp6(6),t.hij("Subunit ",e.subunit.subunitIndex,""),t.xp6(3),t.hij(" ",e.toggle[e.subunit.subunitIndex]?"save":"edit",""),t.xp6(4),t.Q6J("ngIf","nucleicAcid"!==e.substanceType),t.xp6(3),t.Q6J("ngIf","protein"===e.substanceType),t.xp6(1),t.Q6J("ngClass",e.toggle[e.subunit.subunitIndex]?"show":"hide"),t.xp6(1),t.Q6J("ngModel",e.editSequence),t.xp6(2),t.Q6J("ngClass",e.toggle[e.subunit.subunitIndex]?"hide":"show"),t.xp6(4),t.Oqu(e.subunit.sequence),t.xp6(1),t.Q6J("ngIf",e.subunitSequence),t.xp6(2),t.Q6J("ngIf","nucleicAcid"===e.substanceType),t.xp6(1),t.Q6J("source",e.subunit))},directives:[g.O5,k.lW,R.gM,I.Hw,g.mk,Y.Fj,Y.JJ,Y.On,g.sg,K.n],styles:[".details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:block}.sequence-textarea[_ngcontent-%COMP%]{font-size:14px;letter-spacing:2px}.show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;padding:0 10px;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.filters-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.subunit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;margin-top:20px}.delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0;width:30px}.subunit-label[_ngcontent-%COMP%]{font-size:18px;font-weight:400;padding-top:0;margin-top:10px;padding-left:30px;width:20%}.buttons[_ngcontent-%COMP%]{width:75%;display:-ms-flexbox;display:flex}.action-button[_ngcontent-%COMP%]{margin:5px}.glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#006400}.disulfide[_ngcontent-%COMP%]{color:#fff;background-color:#cca300}.other[_ngcontent-%COMP%]{color:#fff;background-color:#483d8b}.glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#608000}.N-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#06c}.C-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:gray}.O-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#f66}.feature[_ngcontent-%COMP%]{border-top:1px solid magenta;border-bottom:1px solid magenta}.modification[_ngcontent-%COMP%]{color:#fff;background-color:#556b2f}.selectedSite[_ngcontent-%COMP%]{display:block;text-align:center}.last-section[_ngcontent-%COMP%]{-ms-flex-preferred-size:0!important;flex-basis:0!important}.siteref[_ngcontent-%COMP%]{display:block;width:15.5px!important;text-align:center}.generated[_ngcontent-%COMP%]{background-color:#00000026}.subunit-container[_ngcontent-%COMP%]{padding:5px}.button-link[_ngcontent-%COMP%]{color:#4793d1;text-decoration:none;vertical-align:middle;font-weight:500;text-align:center;line-height:46px}.convert[_ngcontent-%COMP%]{padding-right:40px}.spacer[_ngcontent-%COMP%]{width:15%}.error[_ngcontent-%COMP%]{color:red}"]}),u}(),B=s(19975);function ct(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"div",1),t.TgZ(1,"button",2),t.NdJ("click",function(){return t.CHM(n),t.oxw().openAnyDialog()}),t._uU(2," Add Any Site Type "),t._UZ(3,"mat-icon",3),t.qZA(),t.qZA()}}function lt(u,f){1&u&&t._UZ(0,"mat-divider",18),2&u&&t.Q6J("inset",!0)}function ft(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"div",15),t.TgZ(1,"app-subunit-form",16),t.NdJ("subunitDeleted",function(m){return t.CHM(n),t.oxw().deleteSubunit(m)}),t.qZA(),t.YNc(2,lt,1,1,"mat-divider",17),t.qZA()}if(2&u){var e=f.$implicit,o=f.last,i=f.index,p=t.oxw();t.Q6J("id","substance-subunit-"+i),t.xp6(1),t.Q6J("subunit",e)("view",p.substanceType),t.xp6(1),t.Q6J("ngIf",!o)}}function pt(u,f){if(1&u){var n=t.EpF();t.TgZ(0,"div",19),t.TgZ(1,"div",1),t.TgZ(2,"button",2),t.NdJ("click",function(){return t.CHM(n),t.oxw().addSubunit()}),t._uU(3," Add Subunit "),t._UZ(4,"mat-icon",3),t.qZA(),t.qZA(),t.qZA()}}var dt=function(){var u=function(f){(0,v.Z)(e,f);var n=(0,x.Z)(e);function e(o,i,p,b,m,P,M){var h;return(0,a.Z)(this,e),(h=n.call(this,p)).substanceFormService=o,h.scrollToService=i,h.gaService=p,h.cvService=b,h.dialog=m,h.overlayContainerService=P,h.substanceFormPropertiesService=M,h.subunits=[],h.subunitSequences=[],h.vocabulary={},h.subscriptions=[],h.toggle={},h.view="details",h.sequenceType="",h.allSites=[],h.subcount=0,h.sequenceSites=[],h.analyticsEventCategory="substance form subunits",h}return(0,c.Z)(e,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Subunits"),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var i=this;this.substanceFormService.definition.subscribe(function(m){i.substanceType=m.substanceClass}).unsubscribe(),this.canAddItemUpdate.emit(!0);var b=this.substanceFormService.substanceSubunits.subscribe(function(m){i.subunits=m,i.filtered=m,i.subunits.forEach(function(P){i.allSites[P.subunitIndex]=[]})});this.subscriptions.push(b)}},{key:"getSites",value:function(i){return this.subcount=this.subcount+1,this.allSites[i]}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"updateView",value:function(i){this.gaService.sendEvent(this.analyticsEventCategory,"button:view-update",i.value),this.view=i.value}},{key:"addItem",value:function(){this.addSubunit()}},{key:"addSubunit",value:function(){var i=this;this.substanceFormService.addSubstanceSubunit();var p="substance-subunit-"+(this.subunits.length-1);setTimeout(function(){i.scrollToService.scrollToElement(p,"center")}),this.substanceFormService.emitSubunitUpdate()}},{key:"deleteSubunit",value:function(i){this.substanceFormService.deleteSubstanceSubunit(i)}},{key:"getSequence",value:function(i){var p={};return this.subunitSequences.forEach(function(b){b.subunitIndex===i+1&&(p=b)}),p}},{key:"openDialog",value:function(){var i=this,p=this.dialog.open(r.r,{data:{card:"feature",link:[]},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var b=p.afterClosed().subscribe(function(m){m&&(i.substanceFormPropertiesService.addSubstancePropertyFromFeature(m),setTimeout(function(){alert('Feature added under "Properties"')})),i.overlayContainer.style.zIndex=null});this.subscriptions.push(b)}},{key:"openAnyDialog",value:function(){var i=this,p=this.dialog.open(r.r,{data:{card:"any",link:[]},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var b=p.afterClosed().subscribe(function(m){m&&("feature"===m.siteType?i.substanceFormPropertiesService.addSubstancePropertyFromFeature(m.sentFeature):i.substanceFormService.addAnySiteType(m))});this.subscriptions.push(b)}}]),e}(q.u);return u.\u0275fac=function(n){return new(n||u)(t.Y36(O.B),t.Y36(d.i),t.Y36(_.$),t.Y36(A.I),t.Y36(T.uw),t.Y36(U.Xj),t.Y36(l.S))},u.\u0275cmp=t.Xpm({type:u,selectors:[["app-substance-form-subunits"]],features:[t.qOj],decls:16,vars:5,consts:[[1,"add-container"],[1,"add-button"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["class","add-button",4,"ngIf"],[1,"middle-fill"],[1,"filters-container"],[3,"value","change"],["value","details"],["svgIcon","list"],["value","raw"],["svgIcon","view_stream"],[3,"ngClass"],["appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["class","add-container-bottom",4,"ngIf"],["appScrollToTarget","",3,"id"],[3,"subunit","view","subunitDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[1,"add-container-bottom"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"button",2),t.NdJ("click",function(){return e.openDialog()}),t._uU(3," Add Feature "),t._UZ(4,"mat-icon",3),t.qZA(),t.qZA(),t.YNc(5,ct,4,0,"div",4),t._UZ(6,"div",5),t.TgZ(7,"div",6),t.TgZ(8,"mat-button-toggle-group",7),t.NdJ("change",function(i){return e.updateView(i)}),t.TgZ(9,"mat-button-toggle",8),t._UZ(10,"mat-icon",9),t.qZA(),t.TgZ(11,"mat-button-toggle",10),t._UZ(12,"mat-icon",11),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(13,"div",12),t.YNc(14,ft,3,4,"div",13),t.qZA(),t.YNc(15,pt,5,0,"div",14)),2&n&&(t.xp6(5),t.Q6J("ngIf","protein"===e.substanceType),t.xp6(3),t.Q6J("value",e.view),t.xp6(5),t.Q6J("ngClass",e.view),t.xp6(1),t.Q6J("ngForOf",e.subunits),t.xp6(1),t.Q6J("ngIf",e.subunits&&e.subunits.length>0))},directives:[k.lW,I.Hw,g.O5,N.A9,N.Yi,g.mk,g.sg,F.P,at,B.d],styles:[".details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%], .show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;padding:0 10px;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.add-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.add-button[_ngcontent-%COMP%]{margin-right:10px}.add-container-bottom[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;margin-top:10px;-ms-flex-pack:end;justify-content:flex-end}"]}),u}(),gt=s(7168),bt=s(94673),vt=s(44770),mt=s(26439),yt=s(43365),ht=(s(64061),function(){var u=(0,c.Z)(function f(){(0,a.Z)(this,f)});return u.\u0275fac=function(n){return new(n||u)},u.\u0275mod=t.oAB({type:u}),u.\u0275inj=t.cJS({imports:[[g.ez,y.o0.forChild(dt),gt.O,B.t,I.Ps,k.ot,bt.w,vt.lN,Y.UX,Y.u5,mt.TU,R.AV,N.vV,yt.c]]}),u}())},15541:function(S,C,s){var c=s(62093),a=s(9102),g=s(25734),y=s(6687),v=s(18704),x=s(94666),O=Date.prototype.getTime;function Z(r){return null==r}function q(r){return!(!r||"object"!=typeof r||"number"!=typeof r.length||"function"!=typeof r.copy||"function"!=typeof r.slice||r.length>0&&"number"!=typeof r[0])}S.exports=function _(r,l,t){var d=t||{};return!!(d.strict?g(r,l):r===l)||(!r||!l||"object"!=typeof r&&"object"!=typeof l?d.strict?g(r,l):r==l:function A(r,l,t){var d,T;if(typeof r!=typeof l||Z(r)||Z(l)||r.prototype!==l.prototype||a(r)!==a(l))return!1;var U=y(r),k=y(l);if(U!==k)return!1;if(U||k)return r.source===l.source&&v(r)===v(l);if(x(r)&&x(l))return O.call(r)===O.call(l);var I=q(r),N=q(l);if(I!==N)return!1;if(I||N){if(r.length!==l.length)return!1;for(d=0;d=0;d--)if(F[d]!=D[d])return!1;for(d=F.length-1;d>=0;d--)if(!_(r[T=F[d]],l[T],t))return!1;return!0}(r,l,d))}},11790:function(S,C,s){"use strict";var c=s(62093),a="function"==typeof Symbol&&"symbol"==typeof Symbol("foo"),g=Object.prototype.toString,y=Array.prototype.concat,v=Object.defineProperty,_=v&&function(){var r={};try{for(var l in v(r,"x",{enumerable:!1,value:r}),r)return!1;return r.x===r}catch(t){return!1}}(),Z=function(r,l,t,d){l in r&&(!function(r){return"function"==typeof r&&"[object Function]"===g.call(r)}(d)||!d())||(_?v(r,l,{configurable:!0,enumerable:!1,value:t,writable:!0}):r[l]=t)},q=function(r,l){var t=arguments.length>2?arguments[2]:{},d=c(l);a&&(d=y.call(d,Object.getOwnPropertySymbols(l)));for(var T=0;T0&&!a.call(t,0))for(var F=0;F0)for(var D=0;D=0&&"[object Function]"===C.call(c.callee)),g}},44040:function(S){"use strict";var C=Object,s=TypeError;S.exports=function(){if(null!=this&&this!==C(this))throw new s("RegExp.prototype.flags getter called on non-object");var a="";return this.hasIndices&&(a+="d"),this.global&&(a+="g"),this.ignoreCase&&(a+="i"),this.multiline&&(a+="m"),this.dotAll&&(a+="s"),this.unicode&&(a+="u"),this.sticky&&(a+="y"),a}},18704:function(S,C,s){"use strict";var c=s(11790),a=s(3855),g=s(44040),y=s(49783),v=s(29369),x=a(y());c(x,{getPolyfill:y,implementation:g,shim:v}),S.exports=x},49783:function(S,C,s){"use strict";var c=s(44040),a=s(11790).supportsDescriptors,g=Object.getOwnPropertyDescriptor;S.exports=function(){if(a&&"gim"===/a/gim.flags){var v=g(RegExp.prototype,"flags");if(v&&"function"==typeof v.get&&"boolean"==typeof/a/.dotAll)return v.get}return c}},29369:function(S,C,s){"use strict";var c=s(11790).supportsDescriptors,a=s(49783),g=Object.getOwnPropertyDescriptor,y=Object.defineProperty,v=TypeError,x=Object.getPrototypeOf,O=/a/;S.exports=function(){if(!c||!x)throw new v("RegExp.prototype.flags requires a true ES5 environment that supports property descriptors");var Z=a(),q=x(O),A=g(q,"flags");return(!A||A.get!==Z)&&y(q,"flags",{configurable:!0,enumerable:!1,get:Z}),Z}}}]); -//# sourceMappingURL=4874.e53a2061fc9bbaf0.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4874.e53a2061fc9bbaf0.js.map b/frontend/src/main/resources/static/4874.e53a2061fc9bbaf0.js.map deleted file mode 100644 index 70ea729..0000000 --- a/frontend/src/main/resources/static/4874.e53a2061fc9bbaf0.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r8","ctx_r14","ctx_r16","CopyDisulfideDialogComponent","dialogRef","subService","data","arguments","this","disableClose","unit","sequence","full","substanceSubunits","subscribe","e","units","resp","selected","showButtons","copyDisulfideLinks","message","setTimeout","f","MAT_DIALOG_DATA","selectors","ctx_r6","ctx_r19","ctx_r21","SubunitFormComponent","substanceFormService","substanceFormLinksService","scrollToService","gaService","cvService","dialog","overlayContainerService","router","a","EventEmitter","allSites","overlayContainer","getContainerElement","subunit","toggle","subunitIndex","definition","substanceType","substanceClass","searchType","getVocabularies","unsubscribe","displaySequenceSubscription","subunitDisplaySequences","newSubunits","subunits","filter","subunitSequence","deepEqual","JSON","stringify","addStyle","subscriptions","push","allSitesSubscription","tempSitelist","forEach","site","changes","subscription","nonStandard","value","display","getDomainVocabulary","key","vocabulary","response","AMINO_ACID_RESIDUE","dictionary","X","validArray","NUCLEIC_ACID_BASE","residue","class","type","unitIndex","unitValue","vocab","undefined","toUpperCase","arr","formatted","modification","other","feature","disulfide","splitDisplay","split","type2","open","width","style","zIndex","afterClosed","id","makeRandom","sessionStorage","setItem","url","window","location","href","replace","serializeUrl","createUrlTree","queryParams","seq_type","source","source_id","text","possible","i","charAt","Math","floor","random","length","input","trim","emitSubunitUpdate","recalculateCysteine","editSequence","preformatSeq","textArea","document","getElementsByClassName","call","area","height","scrollHeight","event","target","subunitDeleted","emit","seq","ret","substr","cleanedSequence","indexOf","char","toString","obj","n","arr2","seqarr","trans","sequenceType","sugarType","sugarsSubscription","substanceSugars","o","sugars","sug","linksSubscription","substanceLinks","links","l","sugar","sites","s","subunitArray","residueIndex","link","linkageArray","linkage","emitSugarUpdate","emitLinkUpdate","ctx","ctx_r3","ctx_r9","ctx_r11","SubstanceFormSubunitsComponent","substanceFormPropertiesService","h","analyticsEventCategory","menuLabelUpdate","canAddItemUpdate","subunitsSubscription","filtered","index","subcount","sendEvent","view","addSubunit","addSubstanceSubunit","next","scrollToElement","deleteSubstanceSubunit","subunitSequences","v","SubunitSelectorDialogComponent","card","panelClass","dialogSubscription","newFeature","addSubstancePropertyFromFeature","alert","siteType","sentFeature","addAnySiteType","SubstanceCardBaseFilteredList","SubstanceFormSubunitsModule","c","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","objectKeys","require","isArguments","is","isRegex","flags","isDate","getTime","Date","prototype","x","copy","slice","module","exports","actual","expected","options","opts","strict","b","isUndefinedOrNull","aIsRegex","bIsRegex","aIsBuffer","isBuffer","bIsBuffer","ka","kb","sort","objEquiv","keys","hasSymbols","Symbol","toStr","Object","concat","Array","origDefineProperty","defineProperty","supportsDescriptors","_","enumerable","arePropertyDescriptorsSupported","object","name","predicate","fn","isFunction","configurable","writable","defineProperties","map","predicates","props","getOwnPropertySymbols","getDay","hasToStringTag","toStringTag","tryDateObject","has","$exec","isRegexMarker","badStringifier","callBound","throwRegexMarker","valueOf","toPrimitive","$toString","gOPD","getOwnPropertyDescriptor","descriptor","numberIsNaN","define","callBind","implementation","getPolyfill","shim","polyfill","keysShim","hasOwnProperty","isArgs","isEnumerable","propertyIsEnumerable","hasDontEnumBug","hasProtoEnumBug","dontEnums","equalsConstructorPrototype","ctor","constructor","excludedKeys","$applicationCache","$console","$external","$frame","$frameElement","$frames","$innerHeight","$innerWidth","$onmozfullscreenchange","$onmozfullscreenerror","$outerHeight","$outerWidth","$pageXOffset","$pageYOffset","$parent","$scrollLeft","$scrollTop","$scrollX","$scrollY","$self","$webkitIndexedDB","$webkitStorageInfo","$window","hasAutomationEqualityBug","k","isObject","isString","theKeys","TypeError","skipProto","String","j","skipConstructor","equalsConstructorPrototypeIfNotBuggy","origKeys","originalKeys","keysWorksWithArguments","args","str","callee","$Object","$TypeError","result","hasIndices","global","ignoreCase","multiline","dotAll","unicode","sticky","flagsBound","$gOPD","RegExp","get","TypeErr","getProto","getPrototypeOf","regex","proto"],"sources":["./src/app/core/substance-form/copy-disulfide-dialog/copy-disulfide-dialog.component.html","./src/app/core/substance-form/copy-disulfide-dialog/copy-disulfide-dialog.component.ts","./src/app/core/substance-form/subunit-form/subunit-form.component.html","./src/app/core/substance-form/subunit-form/subunit-form.component.ts","./src/app/core/substance-form/substance-form-subunits/substance-form-subunits.component.html","./src/app/core/substance-form/substance-form-subunits/substance-form-subunits.component.ts","./src/app/core/substance-form/substance-form-subunits/substance-form-subunits.module.ts","./node_modules/deep-equal/index.js","./node_modules/define-properties/index.js","./node_modules/is-date-object/index.js","./node_modules/is-regex/index.js","./node_modules/object-is/implementation.js","./node_modules/object-is/index.js","./node_modules/object-is/polyfill.js","./node_modules/object-is/shim.js","./node_modules/object-keys/implementation.js","./node_modules/object-keys/index.js","./node_modules/object-keys/isArguments.js","./node_modules/regexp.prototype.flags/implementation.js","./node_modules/regexp.prototype.flags/index.js","./node_modules/regexp.prototype.flags/polyfill.js","./node_modules/regexp.prototype.flags/shim.js"],"sourcesContent":["
\n Copy Disulfide Links\n
\n
\n
\n Copy intra-connected disulfide links from one subunit to another with an identical sequence.\n
\n \n
\n
\n \n
\n
\n Subunit {{current.subunitIndex}} is not applicable\n
\n \n
\n
\n \n \n\n
\n
\n
\n\n Are you sure you want to copy the disulfide links from subunit {{selected}} to subunit {{unit}}? Any disulfide links on subunit {{unit}} will be erased and overwritten.\n
\n
\n\n \n \n\n \n
\n
\n
\n {{message}}\n
\n
\n \n \n \n \n
","import { Component, OnInit, Inject } from '@angular/core';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-copy-disulfide-dialog',\n templateUrl: './copy-disulfide-dialog.component.html',\n styleUrls: ['./copy-disulfide-dialog.component.scss']\n})\nexport class CopyDisulfideDialogComponent implements OnInit {\n unit: any;\n units: any;\n selected: any;\n sequence: string;\n message: string;\n showButtons = true;\n constructor(\n public dialogRef: MatDialogRef,\n private subService: SubstanceFormService,\n @Inject(MAT_DIALOG_DATA) public data: any = {}\n ) {dialogRef.disableClose = true; }\n\n ngOnInit() {\n this.unit = this.data.unit;\n this.sequence = this.data.full.sequence;\n this.subService.substanceSubunits.subscribe(resp => {\n this.units = resp;\n });\n }\n\n select(unit: any) {\n this.selected = unit;\n this.showButtons = false;\n }\n\n confirm() {\n this.subService.copyDisulfideLinks(this.unit, this.selected);\n this.selected = null;\n this.message = 'Copying...';\n setTimeout(() => {\n this.message = 'Links successfully copied over.';\n }, 500);\n\n }\n\n cancel() {\n this.selected = null;\n this.showButtons = true;\n\n }\n\n}\n","
\n
\n Deleted \n\n
\n
\n
\n \n
\n
Subunit {{subunit.subunitIndex}}
\n
\n \n \n \n \n \n\n sequence search\n \n
\n
\n\n
\n \n
\n
\n
\n
\n
{{subunit.sequence}}
\n
\n
\n\n\n
\n
\n
\n
\n
{{num[1]}}
\n
\n \n {{subunit.unitValue}}\n \n
\n
\n
\n
\n
\n
\n
\n
\n Generate{{sequenceType? 'd':''}} links and sugars for this subunit as a\n \n \n sequence\n
\n
\n \n
\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n SimpleChanges\n} from '@angular/core';\nimport { Linkage, Site, Subunit, Sugar } from '@gsrs-core/substance';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { Subject, Subscription } from 'rxjs';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport * as deepEqual from 'deep-equal';\nimport { SubstanceFormLinksService } from '../links/substance-form-links.service';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { CopyDisulfideDialogComponent } from '@gsrs-core/substance-form/copy-disulfide-dialog/copy-disulfide-dialog.component';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-subunit-form',\n templateUrl: './subunit-form.component.html',\n styleUrls: ['./subunit-form.component.scss']\n})\n\nexport class SubunitFormComponent implements OnInit, OnDestroy, OnChanges, AfterViewInit {\n @Input() subunit: Subunit;\n @Input() view: string;\n @Input() sites?: Array;\n @Output() subunitDeleted = new EventEmitter();\n subunitSequence: SubunitSequence;\n vocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\n private subscriptions: Array = [];\n toggle = {};\n allSites: Array = [];\n features: Array = [];\n sequenceSites: Array = [];\n editSequence: string;\n sugars: Array;\n links: Array;\n sequenceType = '';\n substanceType: string;\n searchType: string;\n validArray: Array = [];\n private overlayContainer: HTMLElement;\n\n\n\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceFormLinksService: SubstanceFormLinksService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private router: Router,\n ) {\n\n }\n\n ngOnInit() {\n this.allSites = [];\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n if (this.subunit.sequence === '') {\n this.toggle[this.subunit.subunitIndex] = true;\n }\n const definitionSubscription = this.substanceFormService.definition.subscribe(definition => {\n this.substanceType = definition.substanceClass;\n if (this.substanceType === 'protein') {\n this.searchType = 'Protein';\n } else {\n this.searchType = 'Nucleicacid';\n }\n this.getVocabularies();\n });\n definitionSubscription.unsubscribe();\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n const displaySequenceSubscription = this.substanceFormService.subunitDisplaySequences.subscribe(subunits => {\n const newSubunits = subunits.filter(unit => unit.subunitIndex === this.subunit.subunitIndex)[0];\n if (!this.subunitSequence || !deepEqual(this.subunitSequence, newSubunits)) {\n if (this.subunitSequence && JSON.stringify(this.subunitSequence) !== JSON.stringify(newSubunits)) {\n this.subunitSequence = newSubunits;\n setTimeout(() => {\n if (this.allSites) {\n this.addStyle();\n }\n });\n } else {\n this.subunitSequence = newSubunits;\n }\n }\n });\n this.subscriptions.push(displaySequenceSubscription);\n\n });\n\n const allSitesSubscription = this.substanceFormService.allSites.subscribe(allSites => {\n const tempSitelist = [];\n allSites.forEach(site => {\n if (site.subunit === this.subunit.subunitIndex) {\n tempSitelist.push(site);\n }\n });\n if (this.allSites && this.allSites !== tempSitelist) {\n this.allSites = tempSitelist;\n setTimeout(() => {\n if (this.subunitSequence) {\n this.addStyle();\n }\n });\n } else if (!this.allSites) {\n this.allSites = tempSitelist;\n }\n\n }\n );\n this.subscriptions.push(allSitesSubscription);\n setTimeout(() => {\n if (this.subunitSequence) {\n // this.addStyle('after subs');\n }\n });\n }\n\n ngOnChanges(changes: SimpleChanges) {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getVocabularies(): void {\n const nonStandard: VocabularyTerm = {\n 'value': 'X',\n 'display': 'Non-standard Residue'\n };\n if (this.substanceType === 'protein') {\n this.cvService.getDomainVocabulary('AMINO_ACID_RESIDUE').subscribe(response => {\n this.vocabulary = response['AMINO_ACID_RESIDUE'].dictionary;\n this.vocabulary.X = nonStandard;\n // eslint-disable-next-line guard-for-in\n for (const key in this.vocabulary) {\n this.validArray.push(this.vocabulary[key].value);\n }\n }, error => {\n });\n } else {\n this.cvService.getDomainVocabulary('NUCLEIC_ACID_BASE').subscribe(response => {\n this.vocabulary = response['NUCLEIC_ACID_BASE'].dictionary;\n this.vocabulary.X = nonStandard;\n // eslint-disable-next-line guard-for-in\n for (const key in this.vocabulary) {\n this.validArray.push(this.vocabulary[key].value);\n }\n\n }, error => {\n });\n\n }\n\n }\n\n addStyle(): void {\n if (this.subunitSequence && this.subunitSequence.subunits) {\n this.allSites.forEach(site => {\n if (this.subunitSequence.subunits) {\n if (this.subunitSequence.subunits[site.residue - 1].class\n && this.subunitSequence.subunits[site.residue - 1].class !== site.type) {\n this.subunitSequence.subunits[site.residue - 1].class = this.subunitSequence.subunits[site.residue - 1].class + ' ' + site.type;\n } else {\n this.subunitSequence.subunits[site.residue - 1].class = site.type;\n }\n }\n });\n }\n }\n\n /* getTooltipMessage(subunitIndex: number, unitIndex: number, unitValue: string): string {\n const vocab = (this.vocabulary[unitValue.toUpperCase()] === undefined ? 'UNDEFINED'\n : this.vocabulary[unitValue.toUpperCase()].display);\n return `${subunitIndex} - ${unitIndex}: ${unitValue.toUpperCase()} (${vocab})`;\n }*/\n\n getTooltipMessage(subunitIndex: number, unitIndex: number, unitValue: string, type: string): any {\n const vocab = (this.vocabulary[unitValue.toUpperCase()] === undefined ? 'UNDEFINED' : this.vocabulary[unitValue.toUpperCase()].display);\n const arr = [];\n const formatted = {\n 'modification': 'Structural Modification',\n 'other': 'Other Link',\n 'C-Glycosylation': 'C-Glycosylation',\n 'N-Glycosylation': 'N-Glycosylation',\n 'O-Glycosylation': 'O-Glycosylation',\n 'feature': this.substanceType.toUpperCase() + ' Feature',\n 'disulfide': 'Disulfide Link'\n };\n arr.push(`${subunitIndex} - ${unitIndex}: ${unitValue.toUpperCase()} (${vocab})`);\n const splitDisplay = type.split(' ');\n splitDisplay.forEach(type2 => {\n arr.push(formatted[type2] || '');\n });\n return arr;\n }\n\n copyDisulfides() {\n const dialogRef = this.dialog.open(CopyDisulfideDialogComponent, {\n data: {'unit': this.subunit.subunitIndex, 'full': this.subunit},\n width: '600px'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n if (response ) {\n }\n });\n }\n\n search() {\n const id = this.makeRandom();\n sessionStorage.setItem('gsrs_edit_sequence_' + id, JSON.stringify(this.subunit.sequence));\n const baseUrl = window.location.href.replace(this.router.url, '');\n const url = baseUrl + this.router.serializeUrl(this.router.createUrlTree(['/sequence-search'],\n { queryParams: { seq_type: this.searchType, source: 'edit', source_id: id}}));\nwindow.open( url, '_blank');\n\n }\n\n makeRandom() {\n let text = '';\n const possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';\n for (let i = 0; i < 6; i++) {\n text += possible.charAt(Math.floor(Math.random() * possible.length));\n }\n return text;\n }\n\n editSubunit(subunit: Subunit, input: string): void {\n this.toggle[subunit.subunitIndex] = !this.toggle[subunit.subunitIndex];\n if (this.toggle[subunit.subunitIndex] === false) {\n this.subunit.sequence = input.trim().replace(/\\s/g, '');\n this.substanceFormService.emitSubunitUpdate();\n this.substanceFormService.recalculateCysteine();\n } else {\n this.editSequence = this.preformatSeq(this.subunit.sequence);\n\n setTimeout(() => {\n const textArea = document.getElementsByClassName('sequence-textarea');\n [].forEach.call(textArea, function (area) {\n area.style.height = (area.scrollHeight + 10) + 'px';\n });\n });\n }\n }\n change(event): void {\n if (this.toggle[this.subunit.subunitIndex] === false) {\n event.target.value = this.subunit.sequence;\n }\n }\n\n deleteSubunit(): void {\n this.subunitDeleted.emit(this.subunit);\n }\n\n preformatSeq(seq): string {\n let ret = '';\n if (seq) {\n for (let i = 0; i < seq.length; i += 10) {\n if (i % 50 === 0) {\n ret += '\\n';\n }\n ret += seq.substr(i, 10) + ' ';\n }\n }\n return ret.trim();\n }\n\n cleanSequence(): void {\n if (!this.toggle[this.subunit.subunitIndex]) {\n\n const toArray = this.subunit.sequence.split('');\n let cleanedSequence = toArray.filter(char => this.validArray.indexOf(char.toUpperCase()) >= 0).toString().replace(/,/g, '').trim();\n if (this.toggle[this.subunit.subunitIndex] === false) {\n\n }\n if (this.substanceType !== 'protein') {\n //non-proteins should have sequences be upper-case always\n cleanedSequence = cleanedSequence.toUpperCase();\n }\n if (cleanedSequence !== this.subunit.sequence) {\n this.subunit.sequence = cleanedSequence;\n this.substanceFormService.emitSubunitUpdate();\n this.substanceFormService.recalculateCysteine();\n }\n } else {\n const toArray = this.editSequence.replace(/\\s/g, '').split('');\n let cleanedSequence = toArray.filter(char => this.validArray.indexOf(char.toUpperCase()) >= 0).toString().replace(/,/g, '').trim();\n if (this.substanceType !== 'protein') {\n //non-proteins should have sequences be upper-case always\n cleanedSequence = cleanedSequence.toUpperCase();\n }\n this.editSequence = this.preformatSeq(cleanedSequence);\n }\n }\n\n convertSequence(): void {\n const dashes = true;\n const dict = 'A\tAla;C\tCys;D\tAsp;E\tGlu;F\tPhe;G\tGly;H\tHis;I\tIle;K\tLys;L\tLeu;M\tMet;N\tAsn;P\tPro;Q\tGln;R\tArg;S\tSer;T\tThr;V\tVal;W\tTrp;Y\tTyr';\n let arr = [];\n const obj = {};\n let n = '';\n arr = dict.split(';');\n for (let i = 0; i < arr.length; i++) {\n let arr2 = [];\n arr2 = arr[i].split('\\t');\n obj[arr2[0]] = arr2[1];\n obj[arr2[1].toUpperCase()] = arr2[0];\n }\n let seqarr = [];\n if (!this.toggle[this.subunit.subunitIndex]) {\n seqarr = this.subunit.sequence.replace(/[ ]/g, '-').split('-');\n } else {\n seqarr = this.editSequence.replace(/[ ]/g, '-').split('-');\n\n }\n\n for (let i = 0; i < seqarr.length; i++) {\n let trans = obj[seqarr[i].toUpperCase()];\n if (seqarr[i].length > 3) {\n n = n + seqarr[i];\n continue;\n }\n if (trans === undefined) {\n trans = 'X';\n }\n\n n = n + trans;\n }\n if (!this.toggle[this.subunit.subunitIndex]) {\n this.subunit.sequence = n;\n this.substanceFormService.emitSubunitUpdate();\n this.substanceFormService.recalculateCysteine();\n } else {\n this.editSequence = n;\n }\n }\n\n\n\n generateSites(event): void {\n this.sequenceType = event;\n const sugarsSubscription = this.substanceFormService.substanceSugars.subscribe(sug => {\n this.sugars = sug;\n });\n\n const linksSubscription = this.substanceFormLinksService.substanceLinks.subscribe(l => {\n this.links = l;\n });\n let sugarType = '';\n if (event === 'DNA') {\n sugarType = 'dR';\n } else {\n sugarType = 'R';\n }\n this.sugars.forEach(sugar => {\n sugar.sites = sugar.sites.filter(s => s.subunitIndex !== this.subunit.subunitIndex);\n });\n const subunitArray = [];\n if (this.subunit != null && this.subunit.sequence != null) {\n for (let i = 1; i <= this.subunit.sequence.length; i++) {\n subunitArray.push({ subunitIndex: this.subunit.subunitIndex, residueIndex: i });\n }\n }\n const newSugar: Sugar = { sugar: sugarType, sites: subunitArray };\n this.sugars.push(newSugar);\n this.links.forEach(link => {\n link.sites = link.sites.filter(s => s.subunitIndex !== this.subunit.subunitIndex);\n });\n const linkageArray = [];\n if (this.subunit != null && this.subunit.sequence != null) {\n for (let i = 2; i <= this.subunit.sequence.length; i++) {\n linkageArray.push({ subunitIndex: this.subunit.subunitIndex, residueIndex: i });\n }\n }\n const newLinkage: Linkage = { linkage: 'P', sites: linkageArray };\n this.links.push(newLinkage);\n this.substanceFormService.emitSugarUpdate();\n this.substanceFormService.emitLinkUpdate();\n linksSubscription.unsubscribe();\n sugarsSubscription.unsubscribe();\n }\n\n}\n\ninterface SubunitSequence {\n subunitIndex?: number;\n subsections?: Array;\n subgroups?: Array;\n subunits?: Array;\n}\n\ninterface SequenceUnit {\n unitIndex: number;\n unitValue: string;\n class: string;\n}\n\ninterface DisplaySite {\n type: string;\n subunit: number;\n residue: number;\n}\n","
\n
\n \n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n \n \n \n
\n \n
\n
0\">\n
\n \n
\n
","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {Linkage, Site, Subunit, Sugar} from '@gsrs-core/substance';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {DisplaySite, SubunitSequence} from '@gsrs-core/substance-form/substance-form.model';\nimport { SubstanceFormPropertiesService } from '../properties/substance-form-properties.service';\n\n@Component({\n selector: 'app-substance-form-subunits',\n templateUrl: './substance-form-subunits.component.html',\n styleUrls: ['./substance-form-subunits.component.scss']\n})\nexport class SubstanceFormSubunitsComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit, OnDestroy {\n subunits: Array = [];\n subunitSequences: Array = [];\n vocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\n private subscriptions: Array = [];\n toggle = {};\n view = 'details';\n sequenceType = '';\n substanceType: string;\n private overlayContainer: HTMLElement;\n features: any;\n allSites: Array> = [];\n subcount = 0;\n sequenceSites: Array = [];\n sugars: Array;\n links: Array;\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private substanceFormPropertiesService: SubstanceFormPropertiesService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form subunits';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Subunits');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n }\n\n ngAfterViewInit(): void {\n\n const definitionSubscription = this.substanceFormService.definition.subscribe( definition => {\n this.substanceType = definition.substanceClass;\n });\n definitionSubscription.unsubscribe();\n this.canAddItemUpdate.emit(true);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.filtered = subunits;\n\n\n this.subunits.forEach(unit => {\n this.allSites[unit.subunitIndex] = [];\n });\n });\n this.subscriptions.push(subunitsSubscription);\n }\n\n getSites(index: number): Array {\n this.subcount = this.subcount + 1;\n return this.allSites[index];\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateView(event): void {\n this.gaService.sendEvent(this.analyticsEventCategory, 'button:view-update', event.value);\n this.view = event.value;\n }\n\n addItem(): void {\n this.addSubunit();\n }\n\n addSubunit(): void {\n this.substanceFormService.addSubstanceSubunit();\n const next = 'substance-subunit-' + (this.subunits.length - 1);\n setTimeout(() => {\n this.scrollToService.scrollToElement(next, 'center');\n });\n this.substanceFormService.emitSubunitUpdate();\n }\n\n deleteSubunit(subunit: Subunit): void {\n this.substanceFormService.deleteSubstanceSubunit(subunit);\n }\n\n getSequence(index: number): any {\n let sequence = {};\n this.subunitSequences.forEach(v => {\n if (v.subunitIndex === (index + 1)) {\n sequence = v;\n }\n });\n return sequence;\n\n }\n\n openDialog(): void {\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'feature', 'link': []},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(newFeature => {\n if (newFeature) {\n this.substanceFormPropertiesService.addSubstancePropertyFromFeature(newFeature);\n setTimeout(() => {\n // this.scrollToService.scrollToElement(`substance-property-0`, 'center');\n alert('Feature added under \"Properties\"');\n });\n }\n this.overlayContainer.style.zIndex = null;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n openAnyDialog(): void {\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'any', 'link': []},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n if (response) {\n if (response.siteType === 'feature') {\n this.substanceFormPropertiesService.addSubstancePropertyFromFeature(response.sentFeature);\n } else {\n this.substanceFormService.addAnySiteType(response);\n }\n }\n }\n );\n this.subscriptions.push(dialogSubscription);\n }\n\n}\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormSubunitsComponent} from '@gsrs-core/substance-form/substance-form-subunits/substance-form-subunits.component';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormSubunitsComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormSubunitsComponent\n ]\n})\nexport class SubstanceFormSubunitsModule { }\n","var objectKeys = require('object-keys');\nvar isArguments = require('is-arguments');\nvar is = require('object-is');\nvar isRegex = require('is-regex');\nvar flags = require('regexp.prototype.flags');\nvar isDate = require('is-date-object');\n\nvar getTime = Date.prototype.getTime;\n\nfunction deepEqual(actual, expected, options) {\n var opts = options || {};\n\n // 7.1. All identical values are equivalent, as determined by ===.\n if (opts.strict ? is(actual, expected) : actual === expected) {\n return true;\n }\n\n // 7.3. Other pairs that do not both pass typeof value == 'object', equivalence is determined by ==.\n if (!actual || !expected || (typeof actual !== 'object' && typeof expected !== 'object')) {\n return opts.strict ? is(actual, expected) : actual == expected;\n }\n\n /*\n * 7.4. For all other Object pairs, including Array objects, equivalence is\n * determined by having the same number of owned properties (as verified\n * with Object.prototype.hasOwnProperty.call), the same set of keys\n * (although not necessarily the same order), equivalent values for every\n * corresponding key, and an identical 'prototype' property. Note: this\n * accounts for both named and indexed properties on Arrays.\n */\n // eslint-disable-next-line no-use-before-define\n return objEquiv(actual, expected, opts);\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer(x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') {\n return false;\n }\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') {\n return false;\n }\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n /* eslint max-statements: [2, 50] */\n var i, key;\n if (typeof a !== typeof b) { return false; }\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b)) { return false; }\n\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) { return false; }\n\n if (isArguments(a) !== isArguments(b)) { return false; }\n\n var aIsRegex = isRegex(a);\n var bIsRegex = isRegex(b);\n if (aIsRegex !== bIsRegex) { return false; }\n if (aIsRegex || bIsRegex) {\n return a.source === b.source && flags(a) === flags(b);\n }\n\n if (isDate(a) && isDate(b)) {\n return getTime.call(a) === getTime.call(b);\n }\n\n var aIsBuffer = isBuffer(a);\n var bIsBuffer = isBuffer(b);\n if (aIsBuffer !== bIsBuffer) { return false; }\n if (aIsBuffer || bIsBuffer) { // && would work too, because both are true or both false here\n if (a.length !== b.length) { return false; }\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) { return false; }\n }\n return true;\n }\n\n if (typeof a !== typeof b) { return false; }\n\n try {\n var ka = objectKeys(a);\n var kb = objectKeys(b);\n } catch (e) { // happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates hasOwnProperty)\n if (ka.length !== kb.length) { return false; }\n\n // the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n // ~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i]) { return false; }\n }\n // equivalent values for every corresponding key, and ~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) { return false; }\n }\n\n return true;\n}\n\nmodule.exports = deepEqual;\n","'use strict';\n\nvar keys = require('object-keys');\nvar hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';\n\nvar toStr = Object.prototype.toString;\nvar concat = Array.prototype.concat;\nvar origDefineProperty = Object.defineProperty;\n\nvar isFunction = function (fn) {\n\treturn typeof fn === 'function' && toStr.call(fn) === '[object Function]';\n};\n\nvar arePropertyDescriptorsSupported = function () {\n\tvar obj = {};\n\ttry {\n\t\torigDefineProperty(obj, 'x', { enumerable: false, value: obj });\n\t\t// eslint-disable-next-line no-unused-vars, no-restricted-syntax\n\t\tfor (var _ in obj) { // jscs:ignore disallowUnusedVariables\n\t\t\treturn false;\n\t\t}\n\t\treturn obj.x === obj;\n\t} catch (e) { /* this is IE 8. */\n\t\treturn false;\n\t}\n};\nvar supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();\n\nvar defineProperty = function (object, name, value, predicate) {\n\tif (name in object && (!isFunction(predicate) || !predicate())) {\n\t\treturn;\n\t}\n\tif (supportsDescriptors) {\n\t\torigDefineProperty(object, name, {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: false,\n\t\t\tvalue: value,\n\t\t\twritable: true\n\t\t});\n\t} else {\n\t\tobject[name] = value;\n\t}\n};\n\nvar defineProperties = function (object, map) {\n\tvar predicates = arguments.length > 2 ? arguments[2] : {};\n\tvar props = keys(map);\n\tif (hasSymbols) {\n\t\tprops = concat.call(props, Object.getOwnPropertySymbols(map));\n\t}\n\tfor (var i = 0; i < props.length; i += 1) {\n\t\tdefineProperty(object, props[i], map[props[i]], predicates[props[i]]);\n\t}\n};\n\ndefineProperties.supportsDescriptors = !!supportsDescriptors;\n\nmodule.exports = defineProperties;\n","'use strict';\n\nvar getDay = Date.prototype.getDay;\nvar tryDateObject = function tryDateGetDayCall(value) {\n\ttry {\n\t\tgetDay.call(value);\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n\nvar toStr = Object.prototype.toString;\nvar dateClass = '[object Date]';\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\n\nmodule.exports = function isDateObject(value) {\n\tif (typeof value !== 'object' || value === null) {\n\t\treturn false;\n\t}\n\treturn hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;\n};\n","'use strict';\n\nvar callBound = require('call-bind/callBound');\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar has;\nvar $exec;\nvar isRegexMarker;\nvar badStringifier;\n\nif (hasToStringTag) {\n\thas = callBound('Object.prototype.hasOwnProperty');\n\t$exec = callBound('RegExp.prototype.exec');\n\tisRegexMarker = {};\n\n\tvar throwRegexMarker = function () {\n\t\tthrow isRegexMarker;\n\t};\n\tbadStringifier = {\n\t\ttoString: throwRegexMarker,\n\t\tvalueOf: throwRegexMarker\n\t};\n\n\tif (typeof Symbol.toPrimitive === 'symbol') {\n\t\tbadStringifier[Symbol.toPrimitive] = throwRegexMarker;\n\t}\n}\n\nvar $toString = callBound('Object.prototype.toString');\nvar gOPD = Object.getOwnPropertyDescriptor;\nvar regexClass = '[object RegExp]';\n\nmodule.exports = hasToStringTag\n\t// eslint-disable-next-line consistent-return\n\t? function isRegex(value) {\n\t\tif (!value || typeof value !== 'object') {\n\t\t\treturn false;\n\t\t}\n\n\t\tvar descriptor = gOPD(value, 'lastIndex');\n\t\tvar hasLastIndexDataProperty = descriptor && has(descriptor, 'value');\n\t\tif (!hasLastIndexDataProperty) {\n\t\t\treturn false;\n\t\t}\n\n\t\ttry {\n\t\t\t$exec(value, badStringifier);\n\t\t} catch (e) {\n\t\t\treturn e === isRegexMarker;\n\t\t}\n\t}\n\t: function isRegex(value) {\n\t\t// In older browsers, typeof regex incorrectly returns 'function'\n\t\tif (!value || (typeof value !== 'object' && typeof value !== 'function')) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn $toString(value) === regexClass;\n\t};\n","'use strict';\n\nvar numberIsNaN = function (value) {\n\treturn value !== value;\n};\n\nmodule.exports = function is(a, b) {\n\tif (a === 0 && b === 0) {\n\t\treturn 1 / a === 1 / b;\n\t}\n\tif (a === b) {\n\t\treturn true;\n\t}\n\tif (numberIsNaN(a) && numberIsNaN(b)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Object);\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\treturn typeof Object.is === 'function' ? Object.is : implementation;\n};\n","'use strict';\n\nvar getPolyfill = require('./polyfill');\nvar define = require('define-properties');\n\nmodule.exports = function shimObjectIs() {\n\tvar polyfill = getPolyfill();\n\tdefine(Object, { is: polyfill }, {\n\t\tis: function testObjectIs() {\n\t\t\treturn Object.is !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar keysShim;\nif (!Object.keys) {\n\t// modified from https://github.com/es-shims/es5-shim\n\tvar has = Object.prototype.hasOwnProperty;\n\tvar toStr = Object.prototype.toString;\n\tvar isArgs = require('./isArguments'); // eslint-disable-line global-require\n\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\n\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\n\tvar dontEnums = [\n\t\t'toString',\n\t\t'toLocaleString',\n\t\t'valueOf',\n\t\t'hasOwnProperty',\n\t\t'isPrototypeOf',\n\t\t'propertyIsEnumerable',\n\t\t'constructor'\n\t];\n\tvar equalsConstructorPrototype = function (o) {\n\t\tvar ctor = o.constructor;\n\t\treturn ctor && ctor.prototype === o;\n\t};\n\tvar excludedKeys = {\n\t\t$applicationCache: true,\n\t\t$console: true,\n\t\t$external: true,\n\t\t$frame: true,\n\t\t$frameElement: true,\n\t\t$frames: true,\n\t\t$innerHeight: true,\n\t\t$innerWidth: true,\n\t\t$onmozfullscreenchange: true,\n\t\t$onmozfullscreenerror: true,\n\t\t$outerHeight: true,\n\t\t$outerWidth: true,\n\t\t$pageXOffset: true,\n\t\t$pageYOffset: true,\n\t\t$parent: true,\n\t\t$scrollLeft: true,\n\t\t$scrollTop: true,\n\t\t$scrollX: true,\n\t\t$scrollY: true,\n\t\t$self: true,\n\t\t$webkitIndexedDB: true,\n\t\t$webkitStorageInfo: true,\n\t\t$window: true\n\t};\n\tvar hasAutomationEqualityBug = (function () {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined') { return false; }\n\t\tfor (var k in window) {\n\t\t\ttry {\n\t\t\t\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tequalsConstructorPrototype(window[k]);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}());\n\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t}\n\t\ttry {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\tkeysShim = function keys(object) {\n\t\tvar isObject = object !== null && typeof object === 'object';\n\t\tvar isFunction = toStr.call(object) === '[object Function]';\n\t\tvar isArguments = isArgs(object);\n\t\tvar isString = isObject && toStr.call(object) === '[object String]';\n\t\tvar theKeys = [];\n\n\t\tif (!isObject && !isFunction && !isArguments) {\n\t\t\tthrow new TypeError('Object.keys called on a non-object');\n\t\t}\n\n\t\tvar skipProto = hasProtoEnumBug && isFunction;\n\t\tif (isString && object.length > 0 && !has.call(object, 0)) {\n\t\t\tfor (var i = 0; i < object.length; ++i) {\n\t\t\t\ttheKeys.push(String(i));\n\t\t\t}\n\t\t}\n\n\t\tif (isArguments && object.length > 0) {\n\t\t\tfor (var j = 0; j < object.length; ++j) {\n\t\t\t\ttheKeys.push(String(j));\n\t\t\t}\n\t\t} else {\n\t\t\tfor (var name in object) {\n\t\t\t\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\n\t\t\t\t\ttheKeys.push(String(name));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (hasDontEnumBug) {\n\t\t\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\n\n\t\t\tfor (var k = 0; k < dontEnums.length; ++k) {\n\t\t\t\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\n\t\t\t\t\ttheKeys.push(dontEnums[k]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn theKeys;\n\t};\n}\nmodule.exports = keysShim;\n","'use strict';\n\nvar slice = Array.prototype.slice;\nvar isArgs = require('./isArguments');\n\nvar origKeys = Object.keys;\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : require('./implementation');\n\nvar originalKeys = Object.keys;\n\nkeysShim.shim = function shimObjectKeys() {\n\tif (Object.keys) {\n\t\tvar keysWorksWithArguments = (function () {\n\t\t\t// Safari 5.0 bug\n\t\t\tvar args = Object.keys(arguments);\n\t\t\treturn args && args.length === arguments.length;\n\t\t}(1, 2));\n\t\tif (!keysWorksWithArguments) {\n\t\t\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\n\t\t\t\tif (isArgs(object)) {\n\t\t\t\t\treturn originalKeys(slice.call(object));\n\t\t\t\t}\n\t\t\t\treturn originalKeys(object);\n\t\t\t};\n\t\t}\n\t} else {\n\t\tObject.keys = keysShim;\n\t}\n\treturn Object.keys || keysShim;\n};\n\nmodule.exports = keysShim;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\n\nmodule.exports = function isArguments(value) {\n\tvar str = toStr.call(value);\n\tvar isArgs = str === '[object Arguments]';\n\tif (!isArgs) {\n\t\tisArgs = str !== '[object Array]' &&\n\t\t\tvalue !== null &&\n\t\t\ttypeof value === 'object' &&\n\t\t\ttypeof value.length === 'number' &&\n\t\t\tvalue.length >= 0 &&\n\t\t\ttoStr.call(value.callee) === '[object Function]';\n\t}\n\treturn isArgs;\n};\n","'use strict';\n\nvar $Object = Object;\nvar $TypeError = TypeError;\n\nmodule.exports = function flags() {\n\tif (this != null && this !== $Object(this)) {\n\t\tthrow new $TypeError('RegExp.prototype.flags getter called on non-object');\n\t}\n\tvar result = '';\n\tif (this.hasIndices) {\n\t\tresult += 'd';\n\t}\n\tif (this.global) {\n\t\tresult += 'g';\n\t}\n\tif (this.ignoreCase) {\n\t\tresult += 'i';\n\t}\n\tif (this.multiline) {\n\t\tresult += 'm';\n\t}\n\tif (this.dotAll) {\n\t\tresult += 's';\n\t}\n\tif (this.unicode) {\n\t\tresult += 'u';\n\t}\n\tif (this.sticky) {\n\t\tresult += 'y';\n\t}\n\treturn result;\n};\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar flagsBound = callBind(getPolyfill());\n\ndefine(flagsBound, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = flagsBound;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nvar supportsDescriptors = require('define-properties').supportsDescriptors;\nvar $gOPD = Object.getOwnPropertyDescriptor;\n\nmodule.exports = function getPolyfill() {\n\tif (supportsDescriptors && (/a/mig).flags === 'gim') {\n\t\tvar descriptor = $gOPD(RegExp.prototype, 'flags');\n\t\tif (descriptor && typeof descriptor.get === 'function' && typeof (/a/).dotAll === 'boolean') {\n\t\t\treturn descriptor.get;\n\t\t}\n\t}\n\treturn implementation;\n};\n","'use strict';\n\nvar supportsDescriptors = require('define-properties').supportsDescriptors;\nvar getPolyfill = require('./polyfill');\nvar gOPD = Object.getOwnPropertyDescriptor;\nvar defineProperty = Object.defineProperty;\nvar TypeErr = TypeError;\nvar getProto = Object.getPrototypeOf;\nvar regex = /a/;\n\nmodule.exports = function shimFlags() {\n\tif (!supportsDescriptors || !getProto) {\n\t\tthrow new TypeErr('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors');\n\t}\n\tvar polyfill = getPolyfill();\n\tvar proto = getProto(regex);\n\tvar descriptor = gOPD(proto, 'flags');\n\tif (!descriptor || descriptor.get !== polyfill) {\n\t\tdefineProperty(proto, 'flags', {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: false,\n\t\t\tget: polyfill\n\t\t});\n\t}\n\treturn polyfill;\n};\n"],"sourceRoot":"webpack:///","file":"4874.e53a2061fc9bbaf0.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4874.ed0f068a0f5f2cf9.js b/frontend/src/main/resources/static/4874.ed0f068a0f5f2cf9.js new file mode 100644 index 0000000..0c2355e --- /dev/null +++ b/frontend/src/main/resources/static/4874.ed0f068a0f5f2cf9.js @@ -0,0 +1,2 @@ +(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4874],{54874:function(m,O,n){"use strict";n.r(O),n.d(O,{SubstanceFormSubunitsModule:function(){return ht}});var a=n(1884),c=n(39117),l=n(36362),h=n(75143),g=n(46751),C=n(56101),x=n(33567),T=n(40104),q=(n(27299),n(79550)),A=n(18291),u=n(39401),f=n(39233),t=n(86613),b=n(78444),_=n(95758),N=n(54244),M=n(87317),I=n(65590),U=n(31959),F=n(51279),w=n(15541),E=n(21109);function Y(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"button",12),t.NdJ("click",function(){t.CHM(i);var o=t.oxw(2).$implicit;return t.oxw(2).select(o.subunitIndex)}),t._uU(1),t.qZA()}if(2&r){var e=t.oxw(2).$implicit;t.xp6(1),t.hij(" Copy From Subunit ",e.subunitIndex," ")}}function j(r,p){if(1&r&&(t.TgZ(0,"div",10),t.YNc(1,Y,2,1,"button",11),t.qZA()),2&r){var i=t.oxw().$implicit,e=t.oxw(2);t.xp6(1),t.Q6J("ngIf",i.subunitIndex!==e.unit)}}function B(r,p){if(1&r&&(t.TgZ(0,"div",10),t._uU(1),t.qZA()),2&r){var i=t.oxw().$implicit;t.xp6(1),t.hij(" Subunit ",i.subunitIndex," is not applicable ")}}function L(r,p){if(1&r&&(t.TgZ(0,"div",8),t.YNc(1,j,2,1,"div",9),t.YNc(2,B,2,1,"div",9),t.qZA()),2&r){var i=p.$implicit,e=t.oxw(2);t.xp6(1),t.Q6J("ngIf",i.sequence==e.sequence),t.xp6(1),t.Q6J("ngIf",i.sequence!==e.sequence)}}function z(r,p){if(1&r&&(t.TgZ(0,"span"),t.YNc(1,L,3,2,"div",7),t.qZA()),2&r){var i=t.oxw();t.xp6(1),t.Q6J("ngForOf",i.units)}}function G(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",13),t._uU(2),t.qZA(),t.TgZ(3,"div",13),t.TgZ(4,"button",12),t.NdJ("click",function(){return t.CHM(i),t.oxw().confirm()}),t._uU(5,"Confirm"),t.qZA(),t._UZ(6,"span",6),t.TgZ(7,"button",12),t.NdJ("click",function(){return t.CHM(i),t.oxw().cancel()}),t._uU(8,"Cancel"),t.qZA(),t.qZA(),t.qZA()}if(2&r){var e=t.oxw();t.xp6(2),t.lnq(" Are you sure you want to copy the disulfide links from subunit ",e.selected," to subunit ",e.unit,"? Any disulfide links on subunit ",e.unit," will be erased and overwritten. ")}}function V(r,p){if(1&r&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&r){var i=t.oxw();t.xp6(1),t.hij(" ",i.message,"\n")}}var X=function(){var r=function(){function p(i,e){var s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};(0,c.Z)(this,p),this.dialogRef=i,this.subService=e,this.data=s,this.showButtons=!0,i.disableClose=!0}return(0,a.Z)(p,[{key:"ngOnInit",value:function(){var e=this;this.unit=this.data.unit,this.sequence=this.data.full.sequence,this.subService.substanceSubunits.subscribe(function(s){e.units=s})}},{key:"select",value:function(e){this.selected=e,this.showButtons=!1}},{key:"confirm",value:function(){var e=this;this.subService.copyDisulfideLinks(this.unit,this.selected),this.selected=null,this.message="Copying...",setTimeout(function(){e.message="Links successfully copied over."},500)}},{key:"cancel",value:function(){this.selected=null,this.showButtons=!0}}]),p}();return r.\u0275fac=function(i){return new(i||r)(t.Y36(_.so),t.Y36(x.B),t.Y36(_.WI))},r.\u0275cmp=t.Xpm({type:r,selectors:[["app-copy-disulfide-dialog"]],decls:12,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"form-row","desc"],[4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose",""],[1,"middle-fill"],["class","form-column",4,"ngFor","ngForOf"],[1,"form-column"],["class","option",4,"ngIf"],[1,"option"],["mat-button","",3,"click",4,"ngIf"],["mat-button","",3,"click"],[1,"form-row"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t._uU(1," Copy Disulfide Links "),t.qZA(),t.TgZ(2,"div",1),t.TgZ(3,"div",2),t._uU(4," Copy intra-connected disulfide links from one subunit to another with an identical sequence. "),t.qZA(),t.YNc(5,z,2,1,"span",3),t.qZA(),t.YNc(6,G,9,3,"div",3),t.YNc(7,V,2,1,"div",3),t.TgZ(8,"div",4),t.TgZ(9,"button",5),t._uU(10,"Close"),t.qZA(),t._UZ(11,"span",6),t.qZA()),2&i&&(t.xp6(5),t.Q6J("ngIf",e.showButtons),t.xp6(1),t.Q6J("ngIf",e.selected),t.xp6(1),t.Q6J("ngIf",e.message))},directives:[_.uh,_.xY,l.O5,l.sg,M.lW,_.H8,_.ZT],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row;margin-bottom:15px}.option[_ngcontent-%COMP%]{padding:10px}.desc[_ngcontent-%COMP%]{margin-bottom:30px}"]}),r}(),W=n(98002),R=n(40089),$=n(90587),K=n(14900);function tt(r,p){1&r&&(t.TgZ(0,"div",24),t._uU(1," Deleted\xa0 "),t.qZA())}function et(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"button",25),t.NdJ("click",function(){return t.CHM(i),t.oxw().convertSequence()}),t._uU(1," convert"),t.qZA()}}function nt(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"button",26),t.NdJ("click",function(){return t.CHM(i),t.oxw().copyDisulfides()}),t._uU(1," copy disulfide links"),t.qZA()}}function it(r,p){if(1&r&&(t.TgZ(0,"span",36),t.TgZ(1,"span",37),t._uU(2),t.qZA(),t.qZA()),2&r){var i=p.$implicit,e=t.oxw(4);t.xp6(1),t.s9C("matTooltip",e.getTooltipMessage(e.subunitSequence.subunitIndex,i.unitIndex,i.unitValue,i.class||"").join("\n")),t.Q6J("ngClass",i.class),t.xp6(1),t.Oqu(i.unitValue)}}function ot(r,p){if(1&r&&(t.TgZ(0,"div",32),t.TgZ(1,"div",33),t._uU(2),t.qZA(),t.TgZ(3,"div",34),t.YNc(4,it,3,3,"span",35),t.qZA(),t.qZA()),2&r){var i=p.$implicit,e=p.last,s=t.oxw().last,o=t.oxw(2);t.Q6J("ngClass",s&&e?"last-section":""),t.xp6(2),t.Oqu(i[1]),t.xp6(2),t.Q6J("ngForOf",o.subunitSequence.subunits.slice(i[0],i[1]))}}function st(r,p){if(1&r&&(t.TgZ(0,"div",30),t.YNc(1,ot,5,3,"div",31),t.qZA()),2&r){var i=p.$implicit;t.xp6(1),t.Q6J("ngForOf",i)}}function rt(r,p){if(1&r&&(t.TgZ(0,"div",27),t.TgZ(1,"div",28),t.YNc(2,st,2,1,"div",29),t.qZA(),t.qZA()),2&r){var i=t.oxw();t.xp6(2),t.Q6J("ngForOf",i.subunitSequence.subsections)}}function ut(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"div"),t._uU(1),t.TgZ(2,"button",38),t.NdJ("click",function(){return t.CHM(i),t.oxw().generateSites("DNA")}),t._uU(3,"DNA"),t.qZA(),t.TgZ(4,"button",38),t.NdJ("click",function(){return t.CHM(i),t.oxw().generateSites("RNA")}),t._uU(5,"RNA"),t.qZA(),t._uU(6," sequence "),t.qZA()}if(2&r){var e=t.oxw();t.xp6(1),t.hij(" Generate",e.sequenceType?"d":""," links and sugars for this subunit as a "),t.xp6(1),t.Q6J("ngClass","DNA"===e.sequenceType?"generated":""),t.xp6(2),t.Q6J("ngClass","RNA"===e.sequenceType?"generated":"")}}var at=function(){var r=function(){function p(i,e,s,o,d,v,y,P){(0,c.Z)(this,p),this.substanceFormService=i,this.substanceFormLinksService=e,this.scrollToService=s,this.gaService=o,this.cvService=d,this.dialog=v,this.overlayContainerService=y,this.router=P,this.subunitDeleted=new t.vpe,this.vocabulary={},this.subscriptions=[],this.toggle={},this.allSites=[],this.features=[],this.sequenceSites=[],this.sequenceType="",this.validArray=[]}return(0,a.Z)(p,[{key:"ngOnInit",value:function(){var e=this;this.allSites=[],this.overlayContainer=this.overlayContainerService.getContainerElement(),""===this.subunit.sequence&&(this.toggle[this.subunit.subunitIndex]=!0),this.substanceFormService.definition.subscribe(function(o){e.substanceType=o.substanceClass,e.searchType="protein"===e.substanceType?"Protein":"Nucleicacid",e.getVocabularies()}).unsubscribe()}},{key:"ngAfterViewInit",value:function(){var e=this;setTimeout(function(){var o=e.substanceFormService.subunitDisplaySequences.subscribe(function(d){var v=d.filter(function(y){return y.subunitIndex===e.subunit.subunitIndex})[0];(!e.subunitSequence||!w(e.subunitSequence,v))&&(e.subunitSequence&&JSON.stringify(e.subunitSequence)!==JSON.stringify(v)?(e.subunitSequence=v,setTimeout(function(){e.allSites&&e.addStyle()})):e.subunitSequence=v)});e.subscriptions.push(o)});var s=this.substanceFormService.allSites.subscribe(function(o){var d=[];o.forEach(function(v){v.subunit===e.subunit.subunitIndex&&d.push(v)}),e.allSites&&e.allSites!==d?(e.allSites=d,setTimeout(function(){e.subunitSequence&&e.addStyle()})):e.allSites||(e.allSites=d)});this.subscriptions.push(s),setTimeout(function(){})}},{key:"ngOnChanges",value:function(e){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"getVocabularies",value:function(){var e=this,s={value:"X",display:"Non-standard Residue"};"protein"===this.substanceType?this.cvService.getDomainVocabulary("AMINO_ACID_RESIDUE").subscribe(function(o){for(var d in e.vocabulary=o.AMINO_ACID_RESIDUE.dictionary,e.vocabulary.X=s,e.vocabulary)e.validArray.push(e.vocabulary[d].value)},function(o){}):this.cvService.getDomainVocabulary("NUCLEIC_ACID_BASE").subscribe(function(o){for(var d in e.vocabulary=o.NUCLEIC_ACID_BASE.dictionary,e.vocabulary.X=s,e.vocabulary)e.validArray.push(e.vocabulary[d].value)},function(o){})}},{key:"addStyle",value:function(){var e=this;this.subunitSequence&&this.subunitSequence.subunits&&this.allSites.forEach(function(s){e.subunitSequence.subunits&&(e.subunitSequence.subunits[s.residue-1].class=e.subunitSequence.subunits[s.residue-1].class&&e.subunitSequence.subunits[s.residue-1].class!==s.type?e.subunitSequence.subunits[s.residue-1].class+" "+s.type:s.type)})}},{key:"getTooltipMessage",value:function(e,s,o,d){var v=void 0===this.vocabulary[o.toUpperCase()]?"UNDEFINED":this.vocabulary[o.toUpperCase()].display,y=[],P={modification:"Structural Modification",other:"Other Link","C-Glycosylation":"C-Glycosylation","N-Glycosylation":"N-Glycosylation","O-Glycosylation":"O-Glycosylation",feature:this.substanceType.toUpperCase()+" Feature",disulfide:"Disulfide Link"};return y.push("".concat(e," - ").concat(s,": ").concat(o.toUpperCase()," (").concat(v,")")),d.split(" ").forEach(function(S){y.push(P[S]||"")}),y}},{key:"copyDisulfides",value:function(){var e=this,s=this.dialog.open(X,{data:{unit:this.subunit.subunitIndex,full:this.subunit},width:"600px"});this.overlayContainer.style.zIndex="1002",s.afterClosed().subscribe(function(d){e.overlayContainer.style.zIndex=null})}},{key:"search",value:function(){var e=this.makeRandom();sessionStorage.setItem("gsrs_edit_sequence_"+e,JSON.stringify(this.subunit.sequence));var o=window.location.href.replace(this.router.url,"")+this.router.serializeUrl(this.router.createUrlTree(["/sequence-search"],{queryParams:{seq_type:this.searchType,source:"edit",source_id:e}}));window.open(o,"_blank")}},{key:"makeRandom",value:function(){for(var e="",s="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890",o=0;o<6;o++)e+=s.charAt(Math.floor(Math.random()*s.length));return e}},{key:"editSubunit",value:function(e,s){this.toggle[e.subunitIndex]=!this.toggle[e.subunitIndex],!1===this.toggle[e.subunitIndex]?(this.subunit.sequence=s.trim().replace(/\s/g,""),this.substanceFormService.emitSubunitUpdate(),this.substanceFormService.recalculateCysteine()):(this.editSequence=this.preformatSeq(this.subunit.sequence),setTimeout(function(){var o=document.getElementsByClassName("sequence-textarea");[].forEach.call(o,function(d){d.style.height=d.scrollHeight+10+"px"})}))}},{key:"change",value:function(e){!1===this.toggle[this.subunit.subunitIndex]&&(e.target.value=this.subunit.sequence)}},{key:"deleteSubunit",value:function(){this.subunitDeleted.emit(this.subunit)}},{key:"preformatSeq",value:function(e){var s="";if(e)for(var o=0;o=0}).toString().replace(/,/g,"").trim();"protein"!==this.substanceType&&(v=v.toUpperCase()),this.editSequence=this.preformatSeq(v)}else{var o=this.subunit.sequence.split("").filter(function(y){return e.validArray.indexOf(y.toUpperCase())>=0}).toString().replace(/,/g,"").trim();"protein"!==this.substanceType&&(o=o.toUpperCase()),o!==this.subunit.sequence&&(this.subunit.sequence=o,this.substanceFormService.emitSubunitUpdate(),this.substanceFormService.recalculateCysteine())}}},{key:"convertSequence",value:function(){var o=[],d={},v="";o="A\tAla;C\tCys;D\tAsp;E\tGlu;F\tPhe;G\tGly;H\tHis;I\tIle;K\tLys;L\tLeu;M\tMet;N\tAsn;P\tPro;Q\tGln;R\tArg;S\tSer;T\tThr;V\tVal;W\tTrp;Y\tTyr".split(";");for(var y=0;y3?v+=k[S]:(void 0===J&&(J="X"),v+=J)}this.toggle[this.subunit.subunitIndex]?this.editSequence=v:(this.subunit.sequence=v,this.substanceFormService.emitSubunitUpdate(),this.substanceFormService.recalculateCysteine())}},{key:"generateSites",value:function(e){var s=this;this.sequenceType=e;var v,o=this.substanceFormService.substanceSugars.subscribe(function(D){s.sugars=D}),d=this.substanceFormLinksService.substanceLinks.subscribe(function(D){s.links=D});v="DNA"===e?"dR":"R",this.sugars.forEach(function(D){D.sites=D.sites.filter(function(Q){return Q.subunitIndex!==s.subunit.subunitIndex})});var y=[];if(null!=this.subunit&&null!=this.subunit.sequence)for(var P=1;P<=this.subunit.sequence.length;P++)y.push({subunitIndex:this.subunit.subunitIndex,residueIndex:P});this.sugars.push({sugar:v,sites:y}),this.links.forEach(function(D){D.sites=D.sites.filter(function(Q){return Q.subunitIndex!==s.subunit.subunitIndex})});var S=[];if(null!=this.subunit&&null!=this.subunit.sequence)for(var J=2;J<=this.subunit.sequence.length;J++)S.push({subunitIndex:this.subunit.subunitIndex,residueIndex:J});this.links.push({linkage:"P",sites:S}),this.substanceFormService.emitSugarUpdate(),this.substanceFormService.emitLinkUpdate(),d.unsubscribe(),o.unsubscribe()}}]),p}();return r.\u0275fac=function(i){return new(i||r)(t.Y36(x.B),t.Y36(E.e),t.Y36(b.i),t.Y36(T.$),t.Y36(A.I),t.Y36(_.uw),t.Y36(N.Xj),t.Y36(W.F0))},r.\u0275cmp=t.Xpm({type:r,selectors:[["app-subunit-form"]],inputs:{subunit:"subunit",view:"view",sites:"sites"},outputs:{subunitDeleted:"subunitDeleted"},features:[t.TTD],decls:30,vars:12,consts:[[1,"subunit-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[1,"subunit-label"],[1,"buttons"],[1,"mat-button","mat-primary","action-button",3,"click"],[1,"mat-button","action-button","mat-primary",3,"click"],[1,"spacer"],["class","mat-button action-button mat-primary convert","matTooltip","convert 3 letter sequence to 1 letter",3,"click",4,"ngIf"],["matTooltip","search for sequence in a new tab",1,"button-link",3,"click"],["class","mat-button action-button mat-primary","matTooltip","copy disulfides from another subunit",3,"click",4,"ngIf"],[1,"subunit-edit",3,"ngClass"],["cdkAutosizeMinRows","3","placeholder","Enter sequence here","name","edit",1,"sequence-textarea",3,"ngModel","ngModelChange","change"],["sequence",""],[3,"ngClass"],[1,"nest"],[1,"subunit"],[1,"raw-sequence"],["class","subunit-sequence",4,"ngIf"],[4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["matTooltip","convert 3 letter sequence to 1 letter",1,"mat-button","action-button","mat-primary","convert",3,"click"],["matTooltip","copy disulfides from another subunit",1,"mat-button","action-button","mat-primary",3,"click"],[1,"subunit-sequence"],[1,"responsive"],["class","sequence-section-group",4,"ngFor","ngForOf"],[1,"sequence-section-group"],["class","sequence-section",3,"ngClass",4,"ngFor","ngForOf"],[1,"sequence-section",3,"ngClass"],[1,"section-number"],[1,"section-units-container"],["class","section-unit",4,"ngFor","ngForOf"],[1,"section-unit"],["matTooltipClass","unit-tooltip",1,"selectedSite","siteref",3,"matTooltip","ngClass"],["mat-button","",3,"ngClass","click"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.YNc(1,tt,2,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"button",4),t.NdJ("click",function(){return e.deleteSubunit()}),t._UZ(5,"mat-icon",5),t.qZA(),t.qZA(),t.TgZ(6,"div",6),t._uU(7),t.qZA(),t.TgZ(8,"div",7),t.TgZ(9,"button",8),t.NdJ("click",function(){return e.editSubunit(e.subunit,e.editSequence)}),t._uU(10),t.qZA(),t.TgZ(11,"button",9),t.NdJ("click",function(){return e.cleanSequence()}),t._uU(12," clean"),t.qZA(),t._UZ(13,"span",10),t.YNc(14,et,2,0,"button",11),t.TgZ(15,"a",12),t.NdJ("click",function(){return e.search()}),t._uU(16,"sequence search"),t.qZA(),t.YNc(17,nt,2,0,"button",13),t.qZA(),t.qZA(),t.TgZ(18,"div",14),t.TgZ(19,"textarea",15,16),t.NdJ("ngModelChange",function(o){return e.editSequence=o})("change",function(){return e.editSubunit(e.subunit,e.editSequence)}),t.qZA(),t.qZA(),t.TgZ(21,"div",17),t.TgZ(22,"div",18),t.TgZ(23,"div",19),t.TgZ(24,"div",20),t._uU(25),t.qZA(),t.qZA(),t.qZA(),t.YNc(26,rt,3,1,"div",21),t.qZA(),t.TgZ(27,"div",2),t.YNc(28,ut,7,3,"div",22),t.qZA(),t._UZ(29,"app-audit-info",23),t.qZA()),2&i&&(t.xp6(1),t.Q6J("ngIf",e.subunit.$$deletedCode),t.xp6(6),t.hij("Subunit ",e.subunit.subunitIndex,""),t.xp6(3),t.hij(" ",e.toggle[e.subunit.subunitIndex]?"save":"edit",""),t.xp6(4),t.Q6J("ngIf","nucleicAcid"!==e.substanceType),t.xp6(3),t.Q6J("ngIf","protein"===e.substanceType),t.xp6(1),t.Q6J("ngClass",e.toggle[e.subunit.subunitIndex]?"show":"hide"),t.xp6(1),t.Q6J("ngModel",e.editSequence),t.xp6(2),t.Q6J("ngClass",e.toggle[e.subunit.subunitIndex]?"hide":"show"),t.xp6(4),t.Oqu(e.subunit.sequence),t.xp6(1),t.Q6J("ngIf",e.subunitSequence),t.xp6(2),t.Q6J("ngIf","nucleicAcid"===e.substanceType),t.xp6(1),t.Q6J("source",e.subunit))},directives:[l.O5,M.lW,R.gM,I.Hw,l.mk,$.Fj,$.JJ,$.On,l.sg,K.n],styles:[".details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:block}.sequence-textarea[_ngcontent-%COMP%]{font-size:14px;letter-spacing:2px}.show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;padding:0 10px;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.filters-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.subunit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;margin-top:20px}.delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0;width:30px}.subunit-label[_ngcontent-%COMP%]{font-size:18px;font-weight:400;padding-top:0;margin-top:10px;padding-left:30px;width:20%}.buttons[_ngcontent-%COMP%]{width:75%;display:-ms-flexbox;display:flex}.action-button[_ngcontent-%COMP%]{margin:5px}.glycosylation[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--regular-darkgreen-color)}.disulfide[_ngcontent-%COMP%]{color:#fff;background-color:#cca300}.other[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--regular-darkslateblue-color)}.glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#608000}.N-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#06c}.C-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:gray}.O-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#f66}.feature[_ngcontent-%COMP%]{border-top:1px solid var(--regular-magenta-color);border-bottom:1px solid var(--regular-magenta-color)}.modification[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--regular-darkolivegreen-color)}.selectedSite[_ngcontent-%COMP%]{display:block;text-align:center}.last-section[_ngcontent-%COMP%]{-ms-flex-preferred-size:0!important;flex-basis:0!important}.siteref[_ngcontent-%COMP%]{display:block;width:15.5px!important;text-align:center}.generated[_ngcontent-%COMP%]{background-color:var(--box-shadow-color-2)}.subunit-container[_ngcontent-%COMP%]{padding:5px}.button-link[_ngcontent-%COMP%]{color:var(--primary-color);text-decoration:none;vertical-align:middle;font-weight:500;text-align:center;line-height:46px}.convert[_ngcontent-%COMP%]{padding-right:40px}.spacer[_ngcontent-%COMP%]{width:15%}.error[_ngcontent-%COMP%]{color:var(--regular-red-color)}"]}),r}(),H=n(19975);function ct(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"div",1),t.TgZ(1,"button",2),t.NdJ("click",function(){return t.CHM(i),t.oxw().openAnyDialog()}),t._uU(2," Add Any Site Type "),t._UZ(3,"mat-icon",3),t.qZA(),t.qZA()}}function lt(r,p){1&r&&t._UZ(0,"mat-divider",18),2&r&&t.Q6J("inset",!0)}function ft(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"div",15),t.TgZ(1,"app-subunit-form",16),t.NdJ("subunitDeleted",function(y){return t.CHM(i),t.oxw().deleteSubunit(y)}),t.qZA(),t.YNc(2,lt,1,1,"mat-divider",17),t.qZA()}if(2&r){var e=p.$implicit,s=p.last,o=p.index,d=t.oxw();t.Q6J("id","substance-subunit-"+o),t.xp6(1),t.Q6J("subunit",e)("view",d.substanceType),t.xp6(1),t.Q6J("ngIf",!s)}}function pt(r,p){if(1&r){var i=t.EpF();t.TgZ(0,"div",19),t.TgZ(1,"div",1),t.TgZ(2,"button",2),t.NdJ("click",function(){return t.CHM(i),t.oxw().addSubunit()}),t._uU(3," Add Subunit "),t._UZ(4,"mat-icon",3),t.qZA(),t.qZA(),t.qZA()}}var dt=function(){var r=function(p){(0,g.Z)(e,p);var i=(0,C.Z)(e);function e(s,o,d,v,y,P,k){var S;return(0,c.Z)(this,e),(S=i.call(this,d)).substanceFormService=s,S.scrollToService=o,S.gaService=d,S.cvService=v,S.dialog=y,S.overlayContainerService=P,S.substanceFormPropertiesService=k,S.subunits=[],S.subunitSequences=[],S.vocabulary={},S.subscriptions=[],S.toggle={},S.view="details",S.sequenceType="",S.allSites=[],S.subcount=0,S.sequenceSites=[],S.analyticsEventCategory="substance form subunits",S}return(0,a.Z)(e,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Subunits"),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var o=this;this.substanceFormService.definition.subscribe(function(y){o.substanceType=y.substanceClass}).unsubscribe(),this.canAddItemUpdate.emit(!0);var v=this.substanceFormService.substanceSubunits.subscribe(function(y){o.subunits=y,o.filtered=y,o.subunits.forEach(function(P){o.allSites[P.subunitIndex]=[]})});this.subscriptions.push(v)}},{key:"getSites",value:function(o){return this.subcount=this.subcount+1,this.allSites[o]}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(o){o.unsubscribe()})}},{key:"updateView",value:function(o){this.gaService.sendEvent(this.analyticsEventCategory,"button:view-update",o.value),this.view=o.value}},{key:"addItem",value:function(){this.addSubunit()}},{key:"addSubunit",value:function(){var o=this;this.substanceFormService.addSubstanceSubunit();var d="substance-subunit-"+(this.subunits.length-1);setTimeout(function(){o.scrollToService.scrollToElement(d,"center")}),this.substanceFormService.emitSubunitUpdate()}},{key:"deleteSubunit",value:function(o){this.substanceFormService.deleteSubstanceSubunit(o)}},{key:"getSequence",value:function(o){var d={};return this.subunitSequences.forEach(function(v){v.subunitIndex===o+1&&(d=v)}),d}},{key:"openDialog",value:function(){var o=this,d=this.dialog.open(u.r,{data:{card:"feature",link:[]},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var v=d.afterClosed().subscribe(function(y){y&&(o.substanceFormPropertiesService.addSubstancePropertyFromFeature(y),setTimeout(function(){alert('Feature added under "Properties"')})),o.overlayContainer.style.zIndex=null});this.subscriptions.push(v)}},{key:"openAnyDialog",value:function(){var o=this,d=this.dialog.open(u.r,{data:{card:"any",link:[]},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var v=d.afterClosed().subscribe(function(y){y&&("feature"===y.siteType?o.substanceFormPropertiesService.addSubstancePropertyFromFeature(y.sentFeature):o.substanceFormService.addAnySiteType(y))});this.subscriptions.push(v)}}]),e}(q.u);return r.\u0275fac=function(i){return new(i||r)(t.Y36(x.B),t.Y36(b.i),t.Y36(T.$),t.Y36(A.I),t.Y36(_.uw),t.Y36(N.Xj),t.Y36(f.S))},r.\u0275cmp=t.Xpm({type:r,selectors:[["app-substance-form-subunits"]],features:[t.qOj],decls:16,vars:5,consts:[[1,"add-container"],[1,"add-button"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["class","add-button",4,"ngIf"],[1,"middle-fill"],[1,"filters-container"],[3,"value","change"],["value","details"],["svgIcon","list"],["value","raw"],["svgIcon","view_stream"],[3,"ngClass"],["appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["class","add-container-bottom",4,"ngIf"],["appScrollToTarget","",3,"id"],[3,"subunit","view","subunitDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[1,"add-container-bottom"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"button",2),t.NdJ("click",function(){return e.openDialog()}),t._uU(3," Add Feature "),t._UZ(4,"mat-icon",3),t.qZA(),t.qZA(),t.YNc(5,ct,4,0,"div",4),t._UZ(6,"div",5),t.TgZ(7,"div",6),t.TgZ(8,"mat-button-toggle-group",7),t.NdJ("change",function(o){return e.updateView(o)}),t.TgZ(9,"mat-button-toggle",8),t._UZ(10,"mat-icon",9),t.qZA(),t.TgZ(11,"mat-button-toggle",10),t._UZ(12,"mat-icon",11),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(13,"div",12),t.YNc(14,ft,3,4,"div",13),t.qZA(),t.YNc(15,pt,5,0,"div",14)),2&i&&(t.xp6(5),t.Q6J("ngIf","protein"===e.substanceType),t.xp6(3),t.Q6J("value",e.view),t.xp6(5),t.Q6J("ngClass",e.view),t.xp6(1),t.Q6J("ngForOf",e.subunits),t.xp6(1),t.Q6J("ngIf",e.subunits&&e.subunits.length>0))},directives:[M.lW,I.Hw,l.O5,U.A9,U.Yi,l.mk,l.sg,F.P,at,H.d],styles:[".details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%], .show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;padding:0 10px;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.add-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.add-button[_ngcontent-%COMP%]{margin-right:10px}.add-container-bottom[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;margin-top:10px;-ms-flex-pack:end;justify-content:flex-end}"]}),r}(),gt=n(7168),bt=n(94673),vt=n(44770),mt=n(26439),yt=n(43365),ht=(n(64061),function(){var r=(0,a.Z)(function p(){(0,c.Z)(this,p)});return r.\u0275fac=function(i){return new(i||r)},r.\u0275mod=t.oAB({type:r}),r.\u0275inj=t.cJS({imports:[[l.ez,h.o0.forChild(dt),gt.O,H.t,I.Ps,M.ot,bt.w,vt.lN,$.UX,$.u5,mt.TU,R.AV,U.vV,yt.c]]}),r}())},15541:function(m,O,n){var a=n(62093),c=n(9102),l=n(25734),h=n(6687),g=n(18704),C=n(94666),x=Date.prototype.getTime;function Z(u){return null==u}function q(u){return!(!u||"object"!=typeof u||"number"!=typeof u.length||"function"!=typeof u.copy||"function"!=typeof u.slice||u.length>0&&"number"!=typeof u[0])}m.exports=function T(u,f,t){var b=t||{};return!!(b.strict?l(u,f):u===f)||(!u||!f||"object"!=typeof u&&"object"!=typeof f?b.strict?l(u,f):u==f:function A(u,f,t){var b,_;if(typeof u!=typeof f||Z(u)||Z(f)||u.prototype!==f.prototype||c(u)!==c(f))return!1;var N=h(u),M=h(f);if(N!==M)return!1;if(N||M)return u.source===f.source&&g(u)===g(f);if(C(u)&&C(f))return x.call(u)===x.call(f);var I=q(u),U=q(f);if(I!==U)return!1;if(I||U){if(u.length!==f.length)return!1;for(b=0;b=0;b--)if(F[b]!=w[b])return!1;for(b=F.length-1;b>=0;b--)if(!T(u[_=F[b]],f[_],t))return!1;return!0}(u,f,b))}},11790:function(m,O,n){"use strict";var a=n(62093),c="function"==typeof Symbol&&"symbol"==typeof Symbol("foo"),l=Object.prototype.toString,h=Array.prototype.concat,g=Object.defineProperty,x=n(19006)(),T=g&&x,Z=function(u,f,t,b){f in u&&(!function(u){return"function"==typeof u&&"[object Function]"===l.call(u)}(b)||!b())||(T?g(u,f,{configurable:!0,enumerable:!1,value:t,writable:!0}):u[f]=t)},q=function(u,f){var t=arguments.length>2?arguments[2]:{},b=a(f);c&&(b=h.call(b,Object.getOwnPropertySymbols(f)));for(var _=0;_0&&!c.call(t,0))for(var F=0;F0)for(var w=0;w=0&&"[object Function]"===O.call(a.callee)),l}},44040:function(m,O,n){"use strict";var a=n(13677).functionsHaveConfigurableNames(),c=Object,l=TypeError;m.exports=function(){if(null!=this&&this!==c(this))throw new l("RegExp.prototype.flags getter called on non-object");var g="";return this.hasIndices&&(g+="d"),this.global&&(g+="g"),this.ignoreCase&&(g+="i"),this.multiline&&(g+="m"),this.dotAll&&(g+="s"),this.unicode&&(g+="u"),this.sticky&&(g+="y"),g},a&&Object.defineProperty&&Object.defineProperty(m.exports,"name",{value:"get flags"})},18704:function(m,O,n){"use strict";var a=n(11790),c=n(3855),l=n(44040),h=n(49783),g=n(29369),C=c(h());a(C,{getPolyfill:h,implementation:l,shim:g}),m.exports=C},49783:function(m,O,n){"use strict";var a=n(44040),c=n(11790).supportsDescriptors,l=Object.getOwnPropertyDescriptor;m.exports=function(){if(c&&"gim"===/a/gim.flags){var g=l(RegExp.prototype,"flags");if(g&&"function"==typeof g.get&&"boolean"==typeof RegExp.prototype.dotAll&&"boolean"==typeof RegExp.prototype.hasIndices){var C="",x={};if(Object.defineProperty(x,"hasIndices",{get:function(){C+="d"}}),Object.defineProperty(x,"sticky",{get:function(){C+="y"}}),"dy"===C)return g.get}}return a}},29369:function(m,O,n){"use strict";var a=n(11790).supportsDescriptors,c=n(49783),l=Object.getOwnPropertyDescriptor,h=Object.defineProperty,g=TypeError,C=Object.getPrototypeOf,x=/a/;m.exports=function(){if(!a||!C)throw new g("RegExp.prototype.flags requires a true ES5 environment that supports property descriptors");var Z=c(),q=C(x),A=l(q,"flags");return(!A||A.get!==Z)&&h(q,"flags",{configurable:!0,enumerable:!1,get:Z}),Z}}}]); +//# sourceMappingURL=4874.ed0f068a0f5f2cf9.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/4874.ed0f068a0f5f2cf9.js.map b/frontend/src/main/resources/static/4874.ed0f068a0f5f2cf9.js.map new file mode 100644 index 0000000..515cf40 --- /dev/null +++ b/frontend/src/main/resources/static/4874.ed0f068a0f5f2cf9.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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","names":["i0","ctx_r8","ctx_r14","ctx_r16","CopyDisulfideDialogComponent","dialogRef","subService","data","arguments","this","disableClose","unit","sequence","full","substanceSubunits","subscribe","e","units","resp","selected","showButtons","copyDisulfideLinks","message","setTimeout","p","MAT_DIALOG_DATA","selectors","ctx_r6","ctx_r19","ctx_r21","SubunitFormComponent","substanceFormService","substanceFormLinksService","scrollToService","gaService","cvService","dialog","overlayContainerService","router","c","EventEmitter","allSites","overlayContainer","getContainerElement","subunit","toggle","subunitIndex","definition","substanceType","substanceClass","searchType","getVocabularies","unsubscribe","displaySequenceSubscription","subunitDisplaySequences","newSubunits","subunits","filter","subunitSequence","deepEqual","JSON","stringify","addStyle","subscriptions","push","allSitesSubscription","tempSitelist","forEach","site","changes","subscription","nonStandard","value","display","getDomainVocabulary","key","vocabulary","response","AMINO_ACID_RESIDUE","dictionary","X","validArray","NUCLEIC_ACID_BASE","residue","class","type","unitIndex","unitValue","vocab","undefined","toUpperCase","arr","formatted","modification","other","feature","disulfide","splitDisplay","split","type2","open","width","style","zIndex","afterClosed","id","makeRandom","sessionStorage","setItem","url","window","location","href","replace","serializeUrl","createUrlTree","queryParams","seq_type","source","source_id","text","possible","i","charAt","Math","floor","random","length","input","trim","emitSubunitUpdate","recalculateCysteine","editSequence","preformatSeq","textArea","document","getElementsByClassName","call","area","height","scrollHeight","event","target","subunitDeleted","emit","seq","ret","substr","cleanedSequence","indexOf","char","toString","obj","n","arr2","seqarr","trans","sequenceType","sugarType","sugarsSubscription","substanceSugars","s","sugars","sug","linksSubscription","substanceLinks","links","l","sugar","sites","subunitArray","residueIndex","link","linkageArray","linkage","emitSugarUpdate","emitLinkUpdate","ctx","ctx_r3","ctx_r9","ctx_r11","SubstanceFormSubunitsComponent","substanceFormPropertiesService","S","analyticsEventCategory","menuLabelUpdate","o","canAddItemUpdate","subunitsSubscription","filtered","index","subcount","sendEvent","view","addSubunit","addSubstanceSubunit","next","scrollToElement","deleteSubstanceSubunit","subunitSequences","v","SubunitSelectorDialogComponent","card","panelClass","dialogSubscription","newFeature","addSubstancePropertyFromFeature","alert","siteType","sentFeature","addAnySiteType","SubstanceCardBaseFilteredList","SubstanceFormSubunitsModule","a","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","objectKeys","require","isArguments","is","isRegex","flags","isDate","getTime","Date","prototype","x","copy","slice","module","exports","actual","expected","options","opts","strict","b","isUndefinedOrNull","aIsRegex","bIsRegex","aIsBuffer","isBuffer","bIsBuffer","ka","kb","sort","objEquiv","keys","hasSymbols","Symbol","toStr","Object","concat","Array","origDefineProperty","defineProperty","hasPropertyDescriptors","supportsDescriptors","object","name","predicate","fn","isFunction","configurable","enumerable","writable","defineProperties","map","predicates","props","getOwnPropertySymbols","functionsHaveNames","gOPD","getOwnPropertyDescriptor","functionsHaveConfigurableNames","desc","$bind","Function","bind","boundFunctionsHaveNames","$defineProperty","GetIntrinsic","hasArrayLengthDefineBug","getDay","hasToStringTag","tryDateObject","has","$exec","isRegexMarker","badStringifier","callBound","throwRegexMarker","valueOf","toPrimitive","$toString","descriptor","numberIsNaN","define","callBind","implementation","getPolyfill","shim","polyfill","keysShim","hasOwnProperty","isArgs","isEnumerable","propertyIsEnumerable","hasDontEnumBug","hasProtoEnumBug","dontEnums","equalsConstructorPrototype","ctor","constructor","excludedKeys","$applicationCache","$console","$external","$frame","$frameElement","$frames","$innerHeight","$innerWidth","$onmozfullscreenchange","$onmozfullscreenerror","$outerHeight","$outerWidth","$pageXOffset","$pageYOffset","$parent","$scrollLeft","$scrollTop","$scrollX","$scrollY","$self","$webkitIndexedDB","$webkitStorageInfo","$window","hasAutomationEqualityBug","k","isObject","isString","theKeys","TypeError","skipProto","String","j","skipConstructor","equalsConstructorPrototypeIfNotBuggy","origKeys","originalKeys","keysWorksWithArguments","args","str","callee","$Object","$TypeError","result","hasIndices","global","ignoreCase","multiline","dotAll","unicode","sticky","flagsBound","$gOPD","RegExp","get","calls","TypeErr","getProto","getPrototypeOf","regex","proto"],"sources":["./src/app/core/substance-form/copy-disulfide-dialog/copy-disulfide-dialog.component.html","./src/app/core/substance-form/copy-disulfide-dialog/copy-disulfide-dialog.component.ts","./src/app/core/substance-form/subunit-form/subunit-form.component.html","./src/app/core/substance-form/subunit-form/subunit-form.component.ts","./src/app/core/substance-form/substance-form-subunits/substance-form-subunits.component.html","./src/app/core/substance-form/substance-form-subunits/substance-form-subunits.component.ts","./src/app/core/substance-form/substance-form-subunits/substance-form-subunits.module.ts","./node_modules/deep-equal/index.js","./node_modules/define-properties/index.js","./node_modules/functions-have-names/index.js","./node_modules/has-property-descriptors/index.js","./node_modules/is-date-object/index.js","./node_modules/is-regex/index.js","./node_modules/object-is/implementation.js","./node_modules/object-is/index.js","./node_modules/object-is/polyfill.js","./node_modules/object-is/shim.js","./node_modules/object-keys/implementation.js","./node_modules/object-keys/index.js","./node_modules/object-keys/isArguments.js","./node_modules/regexp.prototype.flags/implementation.js","./node_modules/regexp.prototype.flags/index.js","./node_modules/regexp.prototype.flags/polyfill.js","./node_modules/regexp.prototype.flags/shim.js"],"sourcesContent":["
\n Copy Disulfide Links\n
\n
\n
\n Copy intra-connected disulfide links from one subunit to another with an identical sequence.\n
\n \n
\n
\n \n
\n
\n Subunit {{current.subunitIndex}} is not applicable\n
\n \n
\n
\n \n \n\n
\n
\n
\n\n Are you sure you want to copy the disulfide links from subunit {{selected}} to subunit {{unit}}? Any disulfide links on subunit {{unit}} will be erased and overwritten.\n
\n
\n\n \n \n\n \n
\n
\n
\n {{message}}\n
\n
\n \n \n \n \n
","import { Component, OnInit, Inject } from '@angular/core';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-copy-disulfide-dialog',\n templateUrl: './copy-disulfide-dialog.component.html',\n styleUrls: ['./copy-disulfide-dialog.component.scss']\n})\nexport class CopyDisulfideDialogComponent implements OnInit {\n unit: any;\n units: any;\n selected: any;\n sequence: string;\n message: string;\n showButtons = true;\n constructor(\n public dialogRef: MatDialogRef,\n private subService: SubstanceFormService,\n @Inject(MAT_DIALOG_DATA) public data: any = {}\n ) {dialogRef.disableClose = true; }\n\n ngOnInit() {\n this.unit = this.data.unit;\n this.sequence = this.data.full.sequence;\n this.subService.substanceSubunits.subscribe(resp => {\n this.units = resp;\n });\n }\n\n select(unit: any) {\n this.selected = unit;\n this.showButtons = false;\n }\n\n confirm() {\n this.subService.copyDisulfideLinks(this.unit, this.selected);\n this.selected = null;\n this.message = 'Copying...';\n setTimeout(() => {\n this.message = 'Links successfully copied over.';\n }, 500);\n\n }\n\n cancel() {\n this.selected = null;\n this.showButtons = true;\n\n }\n\n}\n","
\n
\n Deleted \n\n
\n
\n
\n \n
\n
Subunit {{subunit.subunitIndex}}
\n
\n \n \n \n \n \n\n sequence search\n \n
\n
\n\n
\n \n
\n
\n
\n
\n
{{subunit.sequence}}
\n
\n
\n\n\n
\n
\n
\n
\n
{{num[1]}}
\n
\n \n {{subunit.unitValue}}\n \n
\n
\n
\n
\n
\n
\n
\n
\n Generate{{sequenceType? 'd':''}} links and sugars for this subunit as a\n \n \n sequence\n
\n
\n \n
\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n SimpleChanges\n} from '@angular/core';\nimport { Linkage, Site, Subunit, Sugar } from '@gsrs-core/substance';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { Subject, Subscription } from 'rxjs';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport * as deepEqual from 'deep-equal';\nimport { SubstanceFormLinksService } from '../links/substance-form-links.service';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { CopyDisulfideDialogComponent } from '@gsrs-core/substance-form/copy-disulfide-dialog/copy-disulfide-dialog.component';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-subunit-form',\n templateUrl: './subunit-form.component.html',\n styleUrls: ['./subunit-form.component.scss']\n})\n\nexport class SubunitFormComponent implements OnInit, OnDestroy, OnChanges, AfterViewInit {\n @Input() subunit: Subunit;\n @Input() view: string;\n @Input() sites?: Array;\n @Output() subunitDeleted = new EventEmitter();\n subunitSequence: SubunitSequence;\n vocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\n private subscriptions: Array = [];\n toggle = {};\n allSites: Array = [];\n features: Array = [];\n sequenceSites: Array = [];\n editSequence: string;\n sugars: Array;\n links: Array;\n sequenceType = '';\n substanceType: string;\n searchType: string;\n validArray: Array = [];\n private overlayContainer: HTMLElement;\n\n\n\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceFormLinksService: SubstanceFormLinksService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private router: Router,\n ) {\n\n }\n\n ngOnInit() {\n this.allSites = [];\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n if (this.subunit.sequence === '') {\n this.toggle[this.subunit.subunitIndex] = true;\n }\n const definitionSubscription = this.substanceFormService.definition.subscribe(definition => {\n this.substanceType = definition.substanceClass;\n if (this.substanceType === 'protein') {\n this.searchType = 'Protein';\n } else {\n this.searchType = 'Nucleicacid';\n }\n this.getVocabularies();\n });\n definitionSubscription.unsubscribe();\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n const displaySequenceSubscription = this.substanceFormService.subunitDisplaySequences.subscribe(subunits => {\n const newSubunits = subunits.filter(unit => unit.subunitIndex === this.subunit.subunitIndex)[0];\n if (!this.subunitSequence || !deepEqual(this.subunitSequence, newSubunits)) {\n if (this.subunitSequence && JSON.stringify(this.subunitSequence) !== JSON.stringify(newSubunits)) {\n this.subunitSequence = newSubunits;\n setTimeout(() => {\n if (this.allSites) {\n this.addStyle();\n }\n });\n } else {\n this.subunitSequence = newSubunits;\n }\n }\n });\n this.subscriptions.push(displaySequenceSubscription);\n\n });\n\n const allSitesSubscription = this.substanceFormService.allSites.subscribe(allSites => {\n const tempSitelist = [];\n allSites.forEach(site => {\n if (site.subunit === this.subunit.subunitIndex) {\n tempSitelist.push(site);\n }\n });\n if (this.allSites && this.allSites !== tempSitelist) {\n this.allSites = tempSitelist;\n setTimeout(() => {\n if (this.subunitSequence) {\n this.addStyle();\n }\n });\n } else if (!this.allSites) {\n this.allSites = tempSitelist;\n }\n\n }\n );\n this.subscriptions.push(allSitesSubscription);\n setTimeout(() => {\n if (this.subunitSequence) {\n // this.addStyle('after subs');\n }\n });\n }\n\n ngOnChanges(changes: SimpleChanges) {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getVocabularies(): void {\n const nonStandard: VocabularyTerm = {\n 'value': 'X',\n 'display': 'Non-standard Residue'\n };\n if (this.substanceType === 'protein') {\n this.cvService.getDomainVocabulary('AMINO_ACID_RESIDUE').subscribe(response => {\n this.vocabulary = response['AMINO_ACID_RESIDUE'].dictionary;\n this.vocabulary.X = nonStandard;\n // eslint-disable-next-line guard-for-in\n for (const key in this.vocabulary) {\n this.validArray.push(this.vocabulary[key].value);\n }\n }, error => {\n });\n } else {\n this.cvService.getDomainVocabulary('NUCLEIC_ACID_BASE').subscribe(response => {\n this.vocabulary = response['NUCLEIC_ACID_BASE'].dictionary;\n this.vocabulary.X = nonStandard;\n // eslint-disable-next-line guard-for-in\n for (const key in this.vocabulary) {\n this.validArray.push(this.vocabulary[key].value);\n }\n\n }, error => {\n });\n\n }\n\n }\n\n addStyle(): void {\n if (this.subunitSequence && this.subunitSequence.subunits) {\n this.allSites.forEach(site => {\n if (this.subunitSequence.subunits) {\n if (this.subunitSequence.subunits[site.residue - 1].class\n && this.subunitSequence.subunits[site.residue - 1].class !== site.type) {\n this.subunitSequence.subunits[site.residue - 1].class = this.subunitSequence.subunits[site.residue - 1].class + ' ' + site.type;\n } else {\n this.subunitSequence.subunits[site.residue - 1].class = site.type;\n }\n }\n });\n }\n }\n\n /* getTooltipMessage(subunitIndex: number, unitIndex: number, unitValue: string): string {\n const vocab = (this.vocabulary[unitValue.toUpperCase()] === undefined ? 'UNDEFINED'\n : this.vocabulary[unitValue.toUpperCase()].display);\n return `${subunitIndex} - ${unitIndex}: ${unitValue.toUpperCase()} (${vocab})`;\n }*/\n\n getTooltipMessage(subunitIndex: number, unitIndex: number, unitValue: string, type: string): any {\n const vocab = (this.vocabulary[unitValue.toUpperCase()] === undefined ? 'UNDEFINED' : this.vocabulary[unitValue.toUpperCase()].display);\n const arr = [];\n const formatted = {\n 'modification': 'Structural Modification',\n 'other': 'Other Link',\n 'C-Glycosylation': 'C-Glycosylation',\n 'N-Glycosylation': 'N-Glycosylation',\n 'O-Glycosylation': 'O-Glycosylation',\n 'feature': this.substanceType.toUpperCase() + ' Feature',\n 'disulfide': 'Disulfide Link'\n };\n arr.push(`${subunitIndex} - ${unitIndex}: ${unitValue.toUpperCase()} (${vocab})`);\n const splitDisplay = type.split(' ');\n splitDisplay.forEach(type2 => {\n arr.push(formatted[type2] || '');\n });\n return arr;\n }\n\n copyDisulfides() {\n const dialogRef = this.dialog.open(CopyDisulfideDialogComponent, {\n data: {'unit': this.subunit.subunitIndex, 'full': this.subunit},\n width: '600px'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n if (response ) {\n }\n });\n }\n\n search() {\n const id = this.makeRandom();\n sessionStorage.setItem('gsrs_edit_sequence_' + id, JSON.stringify(this.subunit.sequence));\n const baseUrl = window.location.href.replace(this.router.url, '');\n const url = baseUrl + this.router.serializeUrl(this.router.createUrlTree(['/sequence-search'],\n { queryParams: { seq_type: this.searchType, source: 'edit', source_id: id}}));\nwindow.open( url, '_blank');\n\n }\n\n makeRandom() {\n let text = '';\n const possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';\n for (let i = 0; i < 6; i++) {\n text += possible.charAt(Math.floor(Math.random() * possible.length));\n }\n return text;\n }\n\n editSubunit(subunit: Subunit, input: string): void {\n this.toggle[subunit.subunitIndex] = !this.toggle[subunit.subunitIndex];\n if (this.toggle[subunit.subunitIndex] === false) {\n this.subunit.sequence = input.trim().replace(/\\s/g, '');\n this.substanceFormService.emitSubunitUpdate();\n this.substanceFormService.recalculateCysteine();\n } else {\n this.editSequence = this.preformatSeq(this.subunit.sequence);\n\n setTimeout(() => {\n const textArea = document.getElementsByClassName('sequence-textarea');\n [].forEach.call(textArea, function (area) {\n area.style.height = (area.scrollHeight + 10) + 'px';\n });\n });\n }\n }\n change(event): void {\n if (this.toggle[this.subunit.subunitIndex] === false) {\n event.target.value = this.subunit.sequence;\n }\n }\n\n deleteSubunit(): void {\n this.subunitDeleted.emit(this.subunit);\n }\n\n preformatSeq(seq): string {\n let ret = '';\n if (seq) {\n for (let i = 0; i < seq.length; i += 10) {\n if (i % 50 === 0) {\n ret += '\\n';\n }\n ret += seq.substr(i, 10) + ' ';\n }\n }\n return ret.trim();\n }\n\n cleanSequence(): void {\n if (!this.toggle[this.subunit.subunitIndex]) {\n\n const toArray = this.subunit.sequence.split('');\n let cleanedSequence = toArray.filter(char => this.validArray.indexOf(char.toUpperCase()) >= 0).toString().replace(/,/g, '').trim();\n if (this.toggle[this.subunit.subunitIndex] === false) {\n\n }\n if (this.substanceType !== 'protein') {\n //non-proteins should have sequences be upper-case always\n cleanedSequence = cleanedSequence.toUpperCase();\n }\n if (cleanedSequence !== this.subunit.sequence) {\n this.subunit.sequence = cleanedSequence;\n this.substanceFormService.emitSubunitUpdate();\n this.substanceFormService.recalculateCysteine();\n }\n } else {\n const toArray = this.editSequence.replace(/\\s/g, '').split('');\n let cleanedSequence = toArray.filter(char => this.validArray.indexOf(char.toUpperCase()) >= 0).toString().replace(/,/g, '').trim();\n if (this.substanceType !== 'protein') {\n //non-proteins should have sequences be upper-case always\n cleanedSequence = cleanedSequence.toUpperCase();\n }\n this.editSequence = this.preformatSeq(cleanedSequence);\n }\n }\n\n convertSequence(): void {\n const dashes = true;\n const dict = 'A\tAla;C\tCys;D\tAsp;E\tGlu;F\tPhe;G\tGly;H\tHis;I\tIle;K\tLys;L\tLeu;M\tMet;N\tAsn;P\tPro;Q\tGln;R\tArg;S\tSer;T\tThr;V\tVal;W\tTrp;Y\tTyr';\n let arr = [];\n const obj = {};\n let n = '';\n arr = dict.split(';');\n for (let i = 0; i < arr.length; i++) {\n let arr2 = [];\n arr2 = arr[i].split('\\t');\n obj[arr2[0]] = arr2[1];\n obj[arr2[1].toUpperCase()] = arr2[0];\n }\n let seqarr = [];\n if (!this.toggle[this.subunit.subunitIndex]) {\n seqarr = this.subunit.sequence.replace(/[ ]/g, '-').split('-');\n } else {\n seqarr = this.editSequence.replace(/[ ]/g, '-').split('-');\n\n }\n\n for (let i = 0; i < seqarr.length; i++) {\n let trans = obj[seqarr[i].toUpperCase()];\n if (seqarr[i].length > 3) {\n n = n + seqarr[i];\n continue;\n }\n if (trans === undefined) {\n trans = 'X';\n }\n\n n = n + trans;\n }\n if (!this.toggle[this.subunit.subunitIndex]) {\n this.subunit.sequence = n;\n this.substanceFormService.emitSubunitUpdate();\n this.substanceFormService.recalculateCysteine();\n } else {\n this.editSequence = n;\n }\n }\n\n\n\n generateSites(event): void {\n this.sequenceType = event;\n const sugarsSubscription = this.substanceFormService.substanceSugars.subscribe(sug => {\n this.sugars = sug;\n });\n\n const linksSubscription = this.substanceFormLinksService.substanceLinks.subscribe(l => {\n this.links = l;\n });\n let sugarType = '';\n if (event === 'DNA') {\n sugarType = 'dR';\n } else {\n sugarType = 'R';\n }\n this.sugars.forEach(sugar => {\n sugar.sites = sugar.sites.filter(s => s.subunitIndex !== this.subunit.subunitIndex);\n });\n const subunitArray = [];\n if (this.subunit != null && this.subunit.sequence != null) {\n for (let i = 1; i <= this.subunit.sequence.length; i++) {\n subunitArray.push({ subunitIndex: this.subunit.subunitIndex, residueIndex: i });\n }\n }\n const newSugar: Sugar = { sugar: sugarType, sites: subunitArray };\n this.sugars.push(newSugar);\n this.links.forEach(link => {\n link.sites = link.sites.filter(s => s.subunitIndex !== this.subunit.subunitIndex);\n });\n const linkageArray = [];\n if (this.subunit != null && this.subunit.sequence != null) {\n for (let i = 2; i <= this.subunit.sequence.length; i++) {\n linkageArray.push({ subunitIndex: this.subunit.subunitIndex, residueIndex: i });\n }\n }\n const newLinkage: Linkage = { linkage: 'P', sites: linkageArray };\n this.links.push(newLinkage);\n this.substanceFormService.emitSugarUpdate();\n this.substanceFormService.emitLinkUpdate();\n linksSubscription.unsubscribe();\n sugarsSubscription.unsubscribe();\n }\n\n}\n\ninterface SubunitSequence {\n subunitIndex?: number;\n subsections?: Array;\n subgroups?: Array;\n subunits?: Array;\n}\n\ninterface SequenceUnit {\n unitIndex: number;\n unitValue: string;\n class: string;\n}\n\ninterface DisplaySite {\n type: string;\n subunit: number;\n residue: number;\n}\n","
\n
\n \n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n \n \n \n
\n \n
\n
0\">\n
\n \n
\n
","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {Linkage, Site, Subunit, Sugar} from '@gsrs-core/substance';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {DisplaySite, SubunitSequence} from '@gsrs-core/substance-form/substance-form.model';\nimport { SubstanceFormPropertiesService } from '../properties/substance-form-properties.service';\n\n@Component({\n selector: 'app-substance-form-subunits',\n templateUrl: './substance-form-subunits.component.html',\n styleUrls: ['./substance-form-subunits.component.scss']\n})\nexport class SubstanceFormSubunitsComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit, OnDestroy {\n subunits: Array = [];\n subunitSequences: Array = [];\n vocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\n private subscriptions: Array = [];\n toggle = {};\n view = 'details';\n sequenceType = '';\n substanceType: string;\n private overlayContainer: HTMLElement;\n features: any;\n allSites: Array> = [];\n subcount = 0;\n sequenceSites: Array = [];\n sugars: Array;\n links: Array;\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private substanceFormPropertiesService: SubstanceFormPropertiesService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form subunits';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Subunits');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n }\n\n ngAfterViewInit(): void {\n\n const definitionSubscription = this.substanceFormService.definition.subscribe( definition => {\n this.substanceType = definition.substanceClass;\n });\n definitionSubscription.unsubscribe();\n this.canAddItemUpdate.emit(true);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.filtered = subunits;\n\n\n this.subunits.forEach(unit => {\n this.allSites[unit.subunitIndex] = [];\n });\n });\n this.subscriptions.push(subunitsSubscription);\n }\n\n getSites(index: number): Array {\n this.subcount = this.subcount + 1;\n return this.allSites[index];\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateView(event): void {\n this.gaService.sendEvent(this.analyticsEventCategory, 'button:view-update', event.value);\n this.view = event.value;\n }\n\n addItem(): void {\n this.addSubunit();\n }\n\n addSubunit(): void {\n this.substanceFormService.addSubstanceSubunit();\n const next = 'substance-subunit-' + (this.subunits.length - 1);\n setTimeout(() => {\n this.scrollToService.scrollToElement(next, 'center');\n });\n this.substanceFormService.emitSubunitUpdate();\n }\n\n deleteSubunit(subunit: Subunit): void {\n this.substanceFormService.deleteSubstanceSubunit(subunit);\n }\n\n getSequence(index: number): any {\n let sequence = {};\n this.subunitSequences.forEach(v => {\n if (v.subunitIndex === (index + 1)) {\n sequence = v;\n }\n });\n return sequence;\n\n }\n\n openDialog(): void {\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'feature', 'link': []},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(newFeature => {\n if (newFeature) {\n this.substanceFormPropertiesService.addSubstancePropertyFromFeature(newFeature);\n setTimeout(() => {\n // this.scrollToService.scrollToElement(`substance-property-0`, 'center');\n alert('Feature added under \"Properties\"');\n });\n }\n this.overlayContainer.style.zIndex = null;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n openAnyDialog(): void {\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'any', 'link': []},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n if (response) {\n if (response.siteType === 'feature') {\n this.substanceFormPropertiesService.addSubstancePropertyFromFeature(response.sentFeature);\n } else {\n this.substanceFormService.addAnySiteType(response);\n }\n }\n }\n );\n this.subscriptions.push(dialogSubscription);\n }\n\n}\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormSubunitsComponent} from '@gsrs-core/substance-form/substance-form-subunits/substance-form-subunits.component';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormSubunitsComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormSubunitsComponent\n ]\n})\nexport class SubstanceFormSubunitsModule { }\n","var objectKeys = require('object-keys');\nvar isArguments = require('is-arguments');\nvar is = require('object-is');\nvar isRegex = require('is-regex');\nvar flags = require('regexp.prototype.flags');\nvar isDate = require('is-date-object');\n\nvar getTime = Date.prototype.getTime;\n\nfunction deepEqual(actual, expected, options) {\n var opts = options || {};\n\n // 7.1. All identical values are equivalent, as determined by ===.\n if (opts.strict ? is(actual, expected) : actual === expected) {\n return true;\n }\n\n // 7.3. Other pairs that do not both pass typeof value == 'object', equivalence is determined by ==.\n if (!actual || !expected || (typeof actual !== 'object' && typeof expected !== 'object')) {\n return opts.strict ? is(actual, expected) : actual == expected;\n }\n\n /*\n * 7.4. For all other Object pairs, including Array objects, equivalence is\n * determined by having the same number of owned properties (as verified\n * with Object.prototype.hasOwnProperty.call), the same set of keys\n * (although not necessarily the same order), equivalent values for every\n * corresponding key, and an identical 'prototype' property. Note: this\n * accounts for both named and indexed properties on Arrays.\n */\n // eslint-disable-next-line no-use-before-define\n return objEquiv(actual, expected, opts);\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer(x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') {\n return false;\n }\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') {\n return false;\n }\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n /* eslint max-statements: [2, 50] */\n var i, key;\n if (typeof a !== typeof b) { return false; }\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b)) { return false; }\n\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) { return false; }\n\n if (isArguments(a) !== isArguments(b)) { return false; }\n\n var aIsRegex = isRegex(a);\n var bIsRegex = isRegex(b);\n if (aIsRegex !== bIsRegex) { return false; }\n if (aIsRegex || bIsRegex) {\n return a.source === b.source && flags(a) === flags(b);\n }\n\n if (isDate(a) && isDate(b)) {\n return getTime.call(a) === getTime.call(b);\n }\n\n var aIsBuffer = isBuffer(a);\n var bIsBuffer = isBuffer(b);\n if (aIsBuffer !== bIsBuffer) { return false; }\n if (aIsBuffer || bIsBuffer) { // && would work too, because both are true or both false here\n if (a.length !== b.length) { return false; }\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) { return false; }\n }\n return true;\n }\n\n if (typeof a !== typeof b) { return false; }\n\n try {\n var ka = objectKeys(a);\n var kb = objectKeys(b);\n } catch (e) { // happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates hasOwnProperty)\n if (ka.length !== kb.length) { return false; }\n\n // the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n // ~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i]) { return false; }\n }\n // equivalent values for every corresponding key, and ~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) { return false; }\n }\n\n return true;\n}\n\nmodule.exports = deepEqual;\n","'use strict';\n\nvar keys = require('object-keys');\nvar hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';\n\nvar toStr = Object.prototype.toString;\nvar concat = Array.prototype.concat;\nvar origDefineProperty = Object.defineProperty;\n\nvar isFunction = function (fn) {\n\treturn typeof fn === 'function' && toStr.call(fn) === '[object Function]';\n};\n\nvar hasPropertyDescriptors = require('has-property-descriptors')();\n\nvar supportsDescriptors = origDefineProperty && hasPropertyDescriptors;\n\nvar defineProperty = function (object, name, value, predicate) {\n\tif (name in object && (!isFunction(predicate) || !predicate())) {\n\t\treturn;\n\t}\n\tif (supportsDescriptors) {\n\t\torigDefineProperty(object, name, {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: false,\n\t\t\tvalue: value,\n\t\t\twritable: true\n\t\t});\n\t} else {\n\t\tobject[name] = value; // eslint-disable-line no-param-reassign\n\t}\n};\n\nvar defineProperties = function (object, map) {\n\tvar predicates = arguments.length > 2 ? arguments[2] : {};\n\tvar props = keys(map);\n\tif (hasSymbols) {\n\t\tprops = concat.call(props, Object.getOwnPropertySymbols(map));\n\t}\n\tfor (var i = 0; i < props.length; i += 1) {\n\t\tdefineProperty(object, props[i], map[props[i]], predicates[props[i]]);\n\t}\n};\n\ndefineProperties.supportsDescriptors = !!supportsDescriptors;\n\nmodule.exports = defineProperties;\n","'use strict';\n\nvar functionsHaveNames = function functionsHaveNames() {\n\treturn typeof function f() {}.name === 'string';\n};\n\nvar gOPD = Object.getOwnPropertyDescriptor;\nif (gOPD) {\n\ttry {\n\t\tgOPD([], 'length');\n\t} catch (e) {\n\t\t// IE 8 has a broken gOPD\n\t\tgOPD = null;\n\t}\n}\n\nfunctionsHaveNames.functionsHaveConfigurableNames = function functionsHaveConfigurableNames() {\n\tif (!functionsHaveNames() || !gOPD) {\n\t\treturn false;\n\t}\n\tvar desc = gOPD(function () {}, 'name');\n\treturn !!desc && !!desc.configurable;\n};\n\nvar $bind = Function.prototype.bind;\n\nfunctionsHaveNames.boundFunctionsHaveNames = function boundFunctionsHaveNames() {\n\treturn functionsHaveNames() && typeof $bind === 'function' && function f() {}.bind().name !== '';\n};\n\nmodule.exports = functionsHaveNames;\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\n\nvar hasPropertyDescriptors = function hasPropertyDescriptors() {\n\tif ($defineProperty) {\n\t\ttry {\n\t\t\t$defineProperty({}, 'a', { value: 1 });\n\t\t\treturn true;\n\t\t} catch (e) {\n\t\t\t// IE 8 has a broken defineProperty\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn false;\n};\n\nhasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {\n\t// node v0.6 has a bug where array lengths can be Set but not Defined\n\tif (!hasPropertyDescriptors()) {\n\t\treturn null;\n\t}\n\ttry {\n\t\treturn $defineProperty([], 'length', { value: 1 }).length !== 1;\n\t} catch (e) {\n\t\t// In Firefox 4-22, defining length on an array throws an exception.\n\t\treturn true;\n\t}\n};\n\nmodule.exports = hasPropertyDescriptors;\n","'use strict';\n\nvar getDay = Date.prototype.getDay;\nvar tryDateObject = function tryDateGetDayCall(value) {\n\ttry {\n\t\tgetDay.call(value);\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n\nvar toStr = Object.prototype.toString;\nvar dateClass = '[object Date]';\nvar hasToStringTag = require('has-tostringtag/shams')();\n\nmodule.exports = function isDateObject(value) {\n\tif (typeof value !== 'object' || value === null) {\n\t\treturn false;\n\t}\n\treturn hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;\n};\n","'use strict';\n\nvar callBound = require('call-bind/callBound');\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar has;\nvar $exec;\nvar isRegexMarker;\nvar badStringifier;\n\nif (hasToStringTag) {\n\thas = callBound('Object.prototype.hasOwnProperty');\n\t$exec = callBound('RegExp.prototype.exec');\n\tisRegexMarker = {};\n\n\tvar throwRegexMarker = function () {\n\t\tthrow isRegexMarker;\n\t};\n\tbadStringifier = {\n\t\ttoString: throwRegexMarker,\n\t\tvalueOf: throwRegexMarker\n\t};\n\n\tif (typeof Symbol.toPrimitive === 'symbol') {\n\t\tbadStringifier[Symbol.toPrimitive] = throwRegexMarker;\n\t}\n}\n\nvar $toString = callBound('Object.prototype.toString');\nvar gOPD = Object.getOwnPropertyDescriptor;\nvar regexClass = '[object RegExp]';\n\nmodule.exports = hasToStringTag\n\t// eslint-disable-next-line consistent-return\n\t? function isRegex(value) {\n\t\tif (!value || typeof value !== 'object') {\n\t\t\treturn false;\n\t\t}\n\n\t\tvar descriptor = gOPD(value, 'lastIndex');\n\t\tvar hasLastIndexDataProperty = descriptor && has(descriptor, 'value');\n\t\tif (!hasLastIndexDataProperty) {\n\t\t\treturn false;\n\t\t}\n\n\t\ttry {\n\t\t\t$exec(value, badStringifier);\n\t\t} catch (e) {\n\t\t\treturn e === isRegexMarker;\n\t\t}\n\t}\n\t: function isRegex(value) {\n\t\t// In older browsers, typeof regex incorrectly returns 'function'\n\t\tif (!value || (typeof value !== 'object' && typeof value !== 'function')) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn $toString(value) === regexClass;\n\t};\n","'use strict';\n\nvar numberIsNaN = function (value) {\n\treturn value !== value;\n};\n\nmodule.exports = function is(a, b) {\n\tif (a === 0 && b === 0) {\n\t\treturn 1 / a === 1 / b;\n\t}\n\tif (a === b) {\n\t\treturn true;\n\t}\n\tif (numberIsNaN(a) && numberIsNaN(b)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Object);\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\treturn typeof Object.is === 'function' ? Object.is : implementation;\n};\n","'use strict';\n\nvar getPolyfill = require('./polyfill');\nvar define = require('define-properties');\n\nmodule.exports = function shimObjectIs() {\n\tvar polyfill = getPolyfill();\n\tdefine(Object, { is: polyfill }, {\n\t\tis: function testObjectIs() {\n\t\t\treturn Object.is !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar keysShim;\nif (!Object.keys) {\n\t// modified from https://github.com/es-shims/es5-shim\n\tvar has = Object.prototype.hasOwnProperty;\n\tvar toStr = Object.prototype.toString;\n\tvar isArgs = require('./isArguments'); // eslint-disable-line global-require\n\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\n\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\n\tvar dontEnums = [\n\t\t'toString',\n\t\t'toLocaleString',\n\t\t'valueOf',\n\t\t'hasOwnProperty',\n\t\t'isPrototypeOf',\n\t\t'propertyIsEnumerable',\n\t\t'constructor'\n\t];\n\tvar equalsConstructorPrototype = function (o) {\n\t\tvar ctor = o.constructor;\n\t\treturn ctor && ctor.prototype === o;\n\t};\n\tvar excludedKeys = {\n\t\t$applicationCache: true,\n\t\t$console: true,\n\t\t$external: true,\n\t\t$frame: true,\n\t\t$frameElement: true,\n\t\t$frames: true,\n\t\t$innerHeight: true,\n\t\t$innerWidth: true,\n\t\t$onmozfullscreenchange: true,\n\t\t$onmozfullscreenerror: true,\n\t\t$outerHeight: true,\n\t\t$outerWidth: true,\n\t\t$pageXOffset: true,\n\t\t$pageYOffset: true,\n\t\t$parent: true,\n\t\t$scrollLeft: true,\n\t\t$scrollTop: true,\n\t\t$scrollX: true,\n\t\t$scrollY: true,\n\t\t$self: true,\n\t\t$webkitIndexedDB: true,\n\t\t$webkitStorageInfo: true,\n\t\t$window: true\n\t};\n\tvar hasAutomationEqualityBug = (function () {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined') { return false; }\n\t\tfor (var k in window) {\n\t\t\ttry {\n\t\t\t\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tequalsConstructorPrototype(window[k]);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}());\n\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t}\n\t\ttry {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\tkeysShim = function keys(object) {\n\t\tvar isObject = object !== null && typeof object === 'object';\n\t\tvar isFunction = toStr.call(object) === '[object Function]';\n\t\tvar isArguments = isArgs(object);\n\t\tvar isString = isObject && toStr.call(object) === '[object String]';\n\t\tvar theKeys = [];\n\n\t\tif (!isObject && !isFunction && !isArguments) {\n\t\t\tthrow new TypeError('Object.keys called on a non-object');\n\t\t}\n\n\t\tvar skipProto = hasProtoEnumBug && isFunction;\n\t\tif (isString && object.length > 0 && !has.call(object, 0)) {\n\t\t\tfor (var i = 0; i < object.length; ++i) {\n\t\t\t\ttheKeys.push(String(i));\n\t\t\t}\n\t\t}\n\n\t\tif (isArguments && object.length > 0) {\n\t\t\tfor (var j = 0; j < object.length; ++j) {\n\t\t\t\ttheKeys.push(String(j));\n\t\t\t}\n\t\t} else {\n\t\t\tfor (var name in object) {\n\t\t\t\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\n\t\t\t\t\ttheKeys.push(String(name));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (hasDontEnumBug) {\n\t\t\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\n\n\t\t\tfor (var k = 0; k < dontEnums.length; ++k) {\n\t\t\t\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\n\t\t\t\t\ttheKeys.push(dontEnums[k]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn theKeys;\n\t};\n}\nmodule.exports = keysShim;\n","'use strict';\n\nvar slice = Array.prototype.slice;\nvar isArgs = require('./isArguments');\n\nvar origKeys = Object.keys;\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : require('./implementation');\n\nvar originalKeys = Object.keys;\n\nkeysShim.shim = function shimObjectKeys() {\n\tif (Object.keys) {\n\t\tvar keysWorksWithArguments = (function () {\n\t\t\t// Safari 5.0 bug\n\t\t\tvar args = Object.keys(arguments);\n\t\t\treturn args && args.length === arguments.length;\n\t\t}(1, 2));\n\t\tif (!keysWorksWithArguments) {\n\t\t\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\n\t\t\t\tif (isArgs(object)) {\n\t\t\t\t\treturn originalKeys(slice.call(object));\n\t\t\t\t}\n\t\t\t\treturn originalKeys(object);\n\t\t\t};\n\t\t}\n\t} else {\n\t\tObject.keys = keysShim;\n\t}\n\treturn Object.keys || keysShim;\n};\n\nmodule.exports = keysShim;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\n\nmodule.exports = function isArguments(value) {\n\tvar str = toStr.call(value);\n\tvar isArgs = str === '[object Arguments]';\n\tif (!isArgs) {\n\t\tisArgs = str !== '[object Array]' &&\n\t\t\tvalue !== null &&\n\t\t\ttypeof value === 'object' &&\n\t\t\ttypeof value.length === 'number' &&\n\t\t\tvalue.length >= 0 &&\n\t\t\ttoStr.call(value.callee) === '[object Function]';\n\t}\n\treturn isArgs;\n};\n","'use strict';\n\nvar functionsHaveConfigurableNames = require('functions-have-names').functionsHaveConfigurableNames();\n\nvar $Object = Object;\nvar $TypeError = TypeError;\n\nmodule.exports = function flags() {\n\tif (this != null && this !== $Object(this)) {\n\t\tthrow new $TypeError('RegExp.prototype.flags getter called on non-object');\n\t}\n\tvar result = '';\n\tif (this.hasIndices) {\n\t\tresult += 'd';\n\t}\n\tif (this.global) {\n\t\tresult += 'g';\n\t}\n\tif (this.ignoreCase) {\n\t\tresult += 'i';\n\t}\n\tif (this.multiline) {\n\t\tresult += 'm';\n\t}\n\tif (this.dotAll) {\n\t\tresult += 's';\n\t}\n\tif (this.unicode) {\n\t\tresult += 'u';\n\t}\n\tif (this.sticky) {\n\t\tresult += 'y';\n\t}\n\treturn result;\n};\n\nif (functionsHaveConfigurableNames && Object.defineProperty) {\n\tObject.defineProperty(module.exports, 'name', { value: 'get flags' });\n}\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar flagsBound = callBind(getPolyfill());\n\ndefine(flagsBound, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = flagsBound;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nvar supportsDescriptors = require('define-properties').supportsDescriptors;\nvar $gOPD = Object.getOwnPropertyDescriptor;\n\nmodule.exports = function getPolyfill() {\n\tif (supportsDescriptors && (/a/mig).flags === 'gim') {\n\t\tvar descriptor = $gOPD(RegExp.prototype, 'flags');\n\t\tif (\n\t\t\tdescriptor\n\t\t\t&& typeof descriptor.get === 'function'\n\t\t\t&& typeof RegExp.prototype.dotAll === 'boolean'\n\t\t\t&& typeof RegExp.prototype.hasIndices === 'boolean'\n\t\t) {\n\t\t\t/* eslint getter-return: 0 */\n\t\t\tvar calls = '';\n\t\t\tvar o = {};\n\t\t\tObject.defineProperty(o, 'hasIndices', {\n\t\t\t\tget: function () {\n\t\t\t\t\tcalls += 'd';\n\t\t\t\t}\n\t\t\t});\n\t\t\tObject.defineProperty(o, 'sticky', {\n\t\t\t\tget: function () {\n\t\t\t\t\tcalls += 'y';\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (calls === 'dy') {\n\t\t\t\treturn descriptor.get;\n\t\t\t}\n\t\t}\n\t}\n\treturn implementation;\n};\n","'use strict';\n\nvar supportsDescriptors = require('define-properties').supportsDescriptors;\nvar getPolyfill = require('./polyfill');\nvar gOPD = Object.getOwnPropertyDescriptor;\nvar defineProperty = Object.defineProperty;\nvar TypeErr = TypeError;\nvar getProto = Object.getPrototypeOf;\nvar regex = /a/;\n\nmodule.exports = function shimFlags() {\n\tif (!supportsDescriptors || !getProto) {\n\t\tthrow new TypeErr('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors');\n\t}\n\tvar polyfill = getPolyfill();\n\tvar proto = getProto(regex);\n\tvar descriptor = gOPD(proto, 'flags');\n\tif (!descriptor || descriptor.get !== polyfill) {\n\t\tdefineProperty(proto, 'flags', {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: false,\n\t\t\tget: polyfill\n\t\t});\n\t}\n\treturn polyfill;\n};\n"],"sourceRoot":"webpack:///","file":"4874.ed0f068a0f5f2cf9.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/4952.bf4e24976a8d2523.js b/frontend/src/main/resources/static/4952.1a61bab0769e4fcf.js similarity index 90% rename from frontend/src/main/resources/static/4952.bf4e24976a8d2523.js rename to frontend/src/main/resources/static/4952.1a61bab0769e4fcf.js index d73f32e..0f7ec09 100644 --- a/frontend/src/main/resources/static/4952.bf4e24976a8d2523.js +++ b/frontend/src/main/resources/static/4952.1a61bab0769e4fcf.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[4952],{14952:function(L,p,r){r.r(p),r.d(p,{SubstanceFormStructurallyDiverseSourceModule:function(){return J}});var f=r(48047),m=r(78069),d=r(36362),S=r(75143),g=r(44770),D=r(43365),y=r(90587),C=r(91434),h=r(7168),T=r(96769),M=r(3311),b=r(24582),x=r(7318),O=r(40104),Z=r(18291),A=r(79223),F=r(88619),e=r(76442),P=r(16667),v=r(68390),$=r(14900);function E(i,c){if(1&i){var u=e.EpF();e.TgZ(0,"app-cv-input",13),e.NdJ("valueChange",function(t){return e.CHM(u),e.oxw(2).update("state",t)}),e.qZA()}if(2&i){var a=e.oxw(2);e.Q6J("model",a.structurallyDiverse.sourceMaterialState)}}function N(i,c){if(1&i){var u=e.EpF();e.TgZ(0,"div",14),e.TgZ(1,"div"),e._uU(2,"Changes made to the now hidden form will still be submitted "),e.TgZ(3,"button",15),e.NdJ("click",function(){return e.CHM(u),e.oxw(2).clean()}),e._uU(4,"clean hidden fields"),e.qZA(),e.qZA(),e.qZA()}}function U(i,c){if(1&i){var u=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"app-cv-input",3),e.NdJ("valueChange",function(t){return e.CHM(u),e.oxw().update("class",t)}),e.qZA(),e.TgZ(3,"app-cv-input",4),e.NdJ("valueChange",function(t){return e.CHM(u),e.oxw().update("type",t)}),e.qZA(),e.YNc(4,E,1,1,"app-cv-input",5),e.TgZ(5,"div",6),e.TgZ(6,"mat-radio-group",7),e.NdJ("change",function(t){return e.CHM(u),e.oxw().updateType(t)}),e.TgZ(7,"mat-radio-button",8),e._uU(8,"Whole"),e.qZA(),e.TgZ(9,"mat-radio-button",9),e._uU(10,"Part/ Fraction"),e.qZA(),e.TgZ(11,"mat-radio-button",10),e._uU(12,"Full Fields"),e.qZA(),e.qZA(),e.qZA(),e._UZ(13,"div"),e.qZA(),e.YNc(14,N,5,0,"div",11),e.TgZ(15,"div",2),e._UZ(16,"app-audit-info",12),e.qZA(),e.qZA()}if(2&i){var a=e.oxw();e.xp6(2),e.Q6J("model",a.structurallyDiverse.sourceMaterialClass),e.xp6(1),e.Q6J("model",a.structurallyDiverse.sourceMaterialType),e.xp6(1),e.Q6J("ngIf","ORGANISM"===a.structurallyDiverse.sourceMaterialClass),e.xp6(3),e.Q6J("checked",a.part&&"whole"===a.part),e.xp6(2),e.Q6J("checked",a.part&&"fraction"===a.part),e.xp6(2),e.Q6J("checked",a.part&&"full_fields"===a.part),e.xp6(3),e.Q6J("ngIf",a.confirm),e.xp6(2),e.Q6J("source",a.structurallyDiverse)}}var I=function(){var i=function(c){(0,b.Z)(a,c);var u=(0,x.Z)(a);function a(n,t,s){var l;return(0,m.Z)(this,a),(l=u.call(this)).substanceFormStructurallyDiverseService=n,l.gaService=t,l.cvService=s,l.confirm=!1,l.subscriptions=[],l.analyticsEventCategory="substance form Source Material",l}return(0,f.Z)(a,[{key:"ngOnInit",value:function(){var t=this;this.menuLabelUpdate.emit("Source Material");var s=this.substanceFormStructurallyDiverseService.substanceStructurallyDiverse.subscribe(function(l){if(t.structurallyDiverse=l,!t.structurallyDiverse.$$diverseType)if(1===t.structurallyDiverse.part.length&&"WHOLE"===t.structurallyDiverse.part[0].toUpperCase())!1===t.checkParts()?(t.structurallyDiverse.$$diverseType="full_fields",t.part="full_fields"):(t.structurallyDiverse.$$diverseType="whole",t.part="whole");else{!1===t.checkWhole()?(t.structurallyDiverse.$$diverseType="full_fields",t.part="full_fields"):(t.structurallyDiverse.$$diverseType="fraction",t.part="fraction");for(var o=0;o
\n\n\n\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {StructurallyDiverse} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormBase } from '../../base-classes/substance-form-base';\nimport { SubstanceFormStructurallyDiverseService } from '../substance-form-structurally-diverse.service';\n\n@Component({\n selector: 'app-substance-form-structurally-diverse-source',\n templateUrl: './substance-form-structurally-diverse-source.component.html',\n styleUrls: ['./substance-form-structurally-diverse-source.component.scss']\n})\nexport class SubstanceFormStructurallyDiverseSourceComponent extends SubstanceFormBase\n implements OnInit, AfterViewInit, OnDestroy {\n confirm = false;\n structurallyDiverse: StructurallyDiverse;\n private subscriptions: Array = [];\n part?: string;\n\n constructor(\n private substanceFormStructurallyDiverseService: SubstanceFormStructurallyDiverseService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Source Material';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Source Material');\n const structurallyDiverseSubscription = this.substanceFormStructurallyDiverseService\n .substanceStructurallyDiverse.subscribe(structurallyDiverse => {\n this.structurallyDiverse = structurallyDiverse;\n if (!this.structurallyDiverse.$$diverseType) {\n if (this.structurallyDiverse.part.length === 1 && this.structurallyDiverse.part[0].toUpperCase() === ('WHOLE')) {\n if (this.checkParts() === false) {\n this.structurallyDiverse.$$diverseType = 'full_fields';\n this.part = 'full_fields';\n\n } else {\n this.structurallyDiverse.$$diverseType = 'whole';\n this.part = 'whole';\n\n }\n } else {\n if (this.checkWhole() === false) {\n this.structurallyDiverse.$$diverseType = 'full_fields';\n this.part = 'full_fields';\n\n } else {\n this.structurallyDiverse.$$diverseType = 'fraction';\n this.part = 'fraction';\n\n\n }\n\n for ( let i = 0; i < this.structurallyDiverse.part.length; i++) {\n if ( this.structurallyDiverse.part[i].toUpperCase() === ('WHOLE')) {\n }\n }\n }\n }\n });\n this.subscriptions.push(structurallyDiverseSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n updateAccess(access: Array): void {\n this.structurallyDiverse.access = access;\n }\n\n update(field: string, event: any): void {\n if (field === 'type') {\n\n this.structurallyDiverse.sourceMaterialType = event;\n } else if (field === 'class') {\n this.structurallyDiverse.sourceMaterialClass = event;\n this.substanceFormStructurallyDiverseService.emitStructurallyDiverseUpdate();\n } else if (field === 'state') {\n this.structurallyDiverse.sourceMaterialState = event;\n }\n }\n\n checkParts(): boolean {\n\n if (this.structurallyDiverse.partLocation && this.structurallyDiverse.partLocation !== null &&\n this.structurallyDiverse.partLocation !== '' ) {\n return false;\n } else if (this.structurallyDiverse.fractionName && this.structurallyDiverse.fractionName !== null &&\n this.structurallyDiverse.fractionName !== '' ) {\n return false;\n } else if (this.structurallyDiverse.fractionMaterialType && this.structurallyDiverse.fractionMaterialType !== null &&\n this.structurallyDiverse.fractionMaterialType !== '' ) {\n return false;\n } else {\n return true;\n }\n }\n\n checkWhole(): boolean {\n const check = ['organismFamily', 'organismGenus', 'organismSpecies', 'organismAuthor', 'infraSpecificType', 'infraSpecificName',\n 'hybridSpeciesMaternalOrganism', 'hybridSpeciesPaternalOrganism'];\n let found = true;\n check.forEach( field => {\n if (this.structurallyDiverse[field] && this.structurallyDiverse[field] !== null &&\n this.structurallyDiverse[field] !== '' &&\n this.structurallyDiverse[field] !== {} ) {\n found = false;\n }\n });\n return found;\n }\n\n updateType(event: any): void {\n this.confirm = false;\n if (event.value && event.value !== '' && event.value !== null) {\n this.part = event.value;\n }\n if (event.value === 'whole') {\n if (this.checkParts()) {\n this.confirm = false;\n } else {\n this.confirm = true;\n }\n if (this.structurallyDiverse.$$diverseType === 'fraction') {\n this.structurallyDiverse.$$storedPart = this.structurallyDiverse.part;\n\n }\n this.structurallyDiverse.part = ['WHOLE'];\n } else {\n if (event.value === 'full_fields') {\n this.structurallyDiverse.$$diverseType = event.value;\n } else {\n\n if (this.checkWhole()) {\n this.confirm = false;\n } else {\n this.confirm = true;\n }\n this.structurallyDiverse.$$diverseType = event.value;\n if (this.structurallyDiverse.$$storedPart) {\n this.structurallyDiverse.part = this.structurallyDiverse.$$storedPart;\n } \n }\n }\n this.structurallyDiverse.$$diverseType = event.value;\n // this.structurallyDiverse.$$diverseType = event.value;\n this.substanceFormStructurallyDiverseService.emitStructurallyDiverseUpdate();\n }\n\n clean() {\n if (this.structurallyDiverse.$$diverseType === 'fraction') {\n const check = ['organismFamily', 'organismGenus', 'organismSpecies', 'organismAuthor', 'infraSpecificType', 'infraSpecificName',\n 'hybridSpeciesMaternalOrganism', 'hybridSpeciesPaternalOrganism'];\n check.forEach( field => {\n if (this.structurallyDiverse[field] && this.structurallyDiverse[field] !== null &&\n this.structurallyDiverse[field] !== '' ) {\n // this.structurallyDiverse[field] = null;\n delete this.structurallyDiverse[field];\n }\n });\n } else {\n if (this.structurallyDiverse.partLocation && this.structurallyDiverse.partLocation !== null) {\n delete this.structurallyDiverse.partLocation;\n }\n if (this.structurallyDiverse.fractionName && this.structurallyDiverse.fractionName !== null) {\n delete this.structurallyDiverse.fractionName;\n }\n if (this.structurallyDiverse.fractionMaterialType && this.structurallyDiverse.fractionMaterialType !== null) {\n delete this.structurallyDiverse.fractionMaterialType;\n }\n if (this.structurallyDiverse.parentSubstance && this.structurallyDiverse.parentSubstance !== null ) {\n delete this.structurallyDiverse.fractionMaterialType;\n }\n }\n this.confirm = false;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n}\n","\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatInputModule} from '@angular/material/input';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {NameResolverModule} from '@gsrs-core/name-resolver/name-resolver.module';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {SubstanceFormStructurallyDiverseSourceComponent} from '@gsrs-core/substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.component';\nimport {MatRadioModule} from '@angular/material/radio';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructurallyDiverseSourceComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule,\n MatRadioModule,\n SubstanceFormModule\n ],\n declarations: [\n SubstanceFormStructurallyDiverseSourceComponent\n ]\n})\nexport class SubstanceFormStructurallyDiverseSourceModule { }\n"],"sourceRoot":"webpack:///","file":"4952.bf4e24976a8d2523.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r3","$event","ctx_r5","ctx_r7","ctx_r9","ctx_r10","SubstanceFormStructurallyDiverseSourceComponent","substanceFormStructurallyDiverseService","gaService","cvService","l","analyticsEventCategory","this","menuLabelUpdate","emit","structurallyDiverseSubscription","substanceStructurallyDiverse","subscribe","t","structurallyDiverse","$$diverseType","part","length","toUpperCase","checkParts","checkWhole","i","subscriptions","push","access","field","event","sourceMaterialType","sourceMaterialClass","emitStructurallyDiverseUpdate","sourceMaterialState","partLocation","fractionName","fractionMaterialType","found","check","forEach","confirm","value","$$storedPart","parentSubstance","subscription","unsubscribe","a","SubstanceFormBase","selectors","SubstanceFormStructurallyDiverseSourceModule","f","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule","MatRadioModule"],"sources":["./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.component.html","./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.component.ts","./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.module.ts"],"sourcesContent":["\n\n
\n
\n \n \n \n
\n \n Whole\n Part/ Fraction\n Full Fields\n\n \n
\n
\n \n
\n
\n
\n
Changes made to the now hidden form will still be submitted
\n
\n
\n \n
\n\n\n
\n\n\n\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {StructurallyDiverse} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormBase } from '../../base-classes/substance-form-base';\nimport { SubstanceFormStructurallyDiverseService } from '../substance-form-structurally-diverse.service';\n\n@Component({\n selector: 'app-substance-form-structurally-diverse-source',\n templateUrl: './substance-form-structurally-diverse-source.component.html',\n styleUrls: ['./substance-form-structurally-diverse-source.component.scss']\n})\nexport class SubstanceFormStructurallyDiverseSourceComponent extends SubstanceFormBase\n implements OnInit, AfterViewInit, OnDestroy {\n confirm = false;\n structurallyDiverse: StructurallyDiverse;\n private subscriptions: Array = [];\n part?: string;\n\n constructor(\n private substanceFormStructurallyDiverseService: SubstanceFormStructurallyDiverseService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Source Material';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Source Material');\n const structurallyDiverseSubscription = this.substanceFormStructurallyDiverseService\n .substanceStructurallyDiverse.subscribe(structurallyDiverse => {\n this.structurallyDiverse = structurallyDiverse;\n if (!this.structurallyDiverse.$$diverseType) {\n if (this.structurallyDiverse.part.length === 1 && this.structurallyDiverse.part[0].toUpperCase() === ('WHOLE')) {\n if (this.checkParts() === false) {\n this.structurallyDiverse.$$diverseType = 'full_fields';\n this.part = 'full_fields';\n\n } else {\n this.structurallyDiverse.$$diverseType = 'whole';\n this.part = 'whole';\n\n }\n } else {\n if (this.checkWhole() === false) {\n this.structurallyDiverse.$$diverseType = 'full_fields';\n this.part = 'full_fields';\n\n } else {\n this.structurallyDiverse.$$diverseType = 'fraction';\n this.part = 'fraction';\n\n\n }\n\n for ( let i = 0; i < this.structurallyDiverse.part.length; i++) {\n if ( this.structurallyDiverse.part[i].toUpperCase() === ('WHOLE')) {\n }\n }\n }\n }\n });\n this.subscriptions.push(structurallyDiverseSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n updateAccess(access: Array): void {\n this.structurallyDiverse.access = access;\n }\n\n update(field: string, event: any): void {\n if (field === 'type') {\n\n this.structurallyDiverse.sourceMaterialType = event;\n } else if (field === 'class') {\n this.structurallyDiverse.sourceMaterialClass = event;\n this.substanceFormStructurallyDiverseService.emitStructurallyDiverseUpdate();\n } else if (field === 'state') {\n this.structurallyDiverse.sourceMaterialState = event;\n }\n }\n\n checkParts(): boolean {\n\n if (this.structurallyDiverse.partLocation && this.structurallyDiverse.partLocation !== null &&\n this.structurallyDiverse.partLocation !== '' ) {\n return false;\n } else if (this.structurallyDiverse.fractionName && this.structurallyDiverse.fractionName !== null &&\n this.structurallyDiverse.fractionName !== '' ) {\n return false;\n } else if (this.structurallyDiverse.fractionMaterialType && this.structurallyDiverse.fractionMaterialType !== null &&\n this.structurallyDiverse.fractionMaterialType !== '' ) {\n return false;\n } else {\n return true;\n }\n }\n\n checkWhole(): boolean {\n const check = ['organismFamily', 'organismGenus', 'organismSpecies', 'organismAuthor', 'infraSpecificType', 'infraSpecificName',\n 'hybridSpeciesMaternalOrganism', 'hybridSpeciesPaternalOrganism'];\n let found = true;\n check.forEach( field => {\n if (this.structurallyDiverse[field] && this.structurallyDiverse[field] !== null &&\n this.structurallyDiverse[field] !== '' &&\n this.structurallyDiverse[field] !== {} ) {\n found = false;\n }\n });\n return found;\n }\n\n updateType(event: any): void {\n this.confirm = false;\n if (event.value && event.value !== '' && event.value !== null) {\n this.part = event.value;\n }\n if (event.value === 'whole') {\n if (this.checkParts()) {\n this.confirm = false;\n } else {\n this.confirm = true;\n }\n if (this.structurallyDiverse.$$diverseType === 'fraction') {\n this.structurallyDiverse.$$storedPart = this.structurallyDiverse.part;\n\n }\n this.structurallyDiverse.part = ['WHOLE'];\n } else {\n if (event.value === 'full_fields') {\n this.structurallyDiverse.$$diverseType = event.value;\n } else {\n\n if (this.checkWhole()) {\n this.confirm = false;\n } else {\n this.confirm = true;\n }\n this.structurallyDiverse.$$diverseType = event.value;\n if (this.structurallyDiverse.$$storedPart) {\n this.structurallyDiverse.part = this.structurallyDiverse.$$storedPart;\n } \n }\n }\n this.structurallyDiverse.$$diverseType = event.value;\n // this.structurallyDiverse.$$diverseType = event.value;\n this.substanceFormStructurallyDiverseService.emitStructurallyDiverseUpdate();\n }\n\n clean() {\n if (this.structurallyDiverse.$$diverseType === 'fraction') {\n const check = ['organismFamily', 'organismGenus', 'organismSpecies', 'organismAuthor', 'infraSpecificType', 'infraSpecificName',\n 'hybridSpeciesMaternalOrganism', 'hybridSpeciesPaternalOrganism'];\n check.forEach( field => {\n if (this.structurallyDiverse[field] && this.structurallyDiverse[field] !== null &&\n this.structurallyDiverse[field] !== '' ) {\n // this.structurallyDiverse[field] = null;\n delete this.structurallyDiverse[field];\n }\n });\n } else {\n if (this.structurallyDiverse.partLocation && this.structurallyDiverse.partLocation !== null) {\n delete this.structurallyDiverse.partLocation;\n }\n if (this.structurallyDiverse.fractionName && this.structurallyDiverse.fractionName !== null) {\n delete this.structurallyDiverse.fractionName;\n }\n if (this.structurallyDiverse.fractionMaterialType && this.structurallyDiverse.fractionMaterialType !== null) {\n delete this.structurallyDiverse.fractionMaterialType;\n }\n if (this.structurallyDiverse.parentSubstance && this.structurallyDiverse.parentSubstance !== null ) {\n delete this.structurallyDiverse.fractionMaterialType;\n }\n }\n this.confirm = false;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n}\n","\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatInputModule} from '@angular/material/input';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {NameResolverModule} from '@gsrs-core/name-resolver/name-resolver.module';\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {SubstanceFormStructurallyDiverseSourceComponent} from '@gsrs-core/substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.component';\nimport {MatRadioModule} from '@angular/material/radio';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructurallyDiverseSourceComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule,\n MatRadioModule,\n SubstanceFormModule\n ],\n declarations: [\n SubstanceFormStructurallyDiverseSourceComponent\n ]\n})\nexport class SubstanceFormStructurallyDiverseSourceModule { }\n"],"sourceRoot":"webpack:///","file":"4952.1a61bab0769e4fcf.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5171.221aed4ea7c5246b.js b/frontend/src/main/resources/static/5171.221aed4ea7c5246b.js deleted file mode 100644 index 14fd483..0000000 --- a/frontend/src/main/resources/static/5171.221aed4ea7c5246b.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5171],{35171:function(te,C,a){a.r(C),a.d(C,{SubstanceFormDisulfideLinksModule:function(){return ie}});var v=a(48047),g=a(78069),m=a(36362),A=a(75143),M=a(7168),x=a(19975),k=a(65590),h=a(87317),P=a(94673),b=a(44770),f=a(90587),U=a(26439),J=a(43365),y=a(40089),N=a(31959),w=a(24582),Y=a(7318),Q=a(79550),L=a(35354),E=a(40104),D=a(39401),F=a(33567),e=a(76442),S=a(95758),Z=a(66088),_=a(51279),V=a(63169),$=a(18291),T=a(91434),j=a(1130);function z(n,l){if(1&n){var s=e.EpF();e.TgZ(0,"div",9),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",10),e.NdJ("click",function(){return e.CHM(s),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",11),e.qZA(),e.qZA()}}function B(n,l){if(1&n&&(e.TgZ(0,"mat-option",16),e._uU(1),e.qZA()),2&n){var s=l.$implicit;e.Q6J("value",s),e.xp6(1),e.AsE(" ",s.subunitIndex,"_",s.residueIndex," ")}}function H(n,l){if(1&n){var s=e.EpF();e.TgZ(0,"div",12),e.TgZ(1,"mat-form-field",13),e.TgZ(2,"mat-label"),e._uU(3),e.qZA(),e.TgZ(4,"mat-select",14),e.NdJ("selectionChange",function(r){var u=e.CHM(s).index;return e.oxw().updateSuggestions(r.value,u)}),e.YNc(5,B,2,3,"mat-option",15),e.TgZ(6,"mat-option",16),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){var i=l.$implicit,t=l.index,o=e.oxw();e.xp6(3),e.Oqu(0===t?"To":"From"),e.xp6(1),e.Q6J("formControlName","site"+t),e.xp6(1),e.Q6J("ngForOf",o.cysteine),e.xp6(1),e.Q6J("value",i),e.xp6(1),e.AsE(" ",i.subunitIndex,"_",i.residueIndex," ")}}var X=function(){var n=function(){function l(s,i,t,o,d,r){(0,g.Z)(this,l),this.cvService=s,this.dialog=i,this.utilsService=t,this.overlayContainerService=o,this.substanceFormService=d,this.substanceFormDisulfideLinksService=r,this.cysteine=[],this.linkDeleted=new e.vpe,this.testForm=new f.cw({site0:new f.NI("",[f.kI.required]),site1:new f.NI("",[f.kI.required])}),this.subscriptions=[]}return(0,v.Z)(l,[{key:"ngOnInit",value:function(){this.privateLink.sites?(this.testForm.controls.site0.setValue(this.privateLink.sites[0]),this.testForm.controls.site1.setValue(this.privateLink.sites[1])):this.privateLink.sites=[{},{}],this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var i=this;setTimeout(function(){var t=i.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(function(o){i.cysteine=o});i.subscriptions.push(t)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"link",get:function(){return this.privateLink},set:function(i){this.privateLink=i}},{key:"deleteLink",value:function(){var i=this;confirm("Are you sure you want to delete links?")&&(this.privateLink.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){i.linkDeleted.emit(i.link)},1e3),this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate())}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateLink.$$deletedCode,this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate()}},{key:"updateAccess",value:function(i){this.link.access=i}},{key:"updateSuggestions",value:function(i,t){this.cysteine=this.cysteine.filter(function(o){return o.residueIndex!==i.residueIndex||o.subunitIndex!==i.subunitIndex}),this.privateLink.sites[t]!==i&&(this.privateLink.sites[t].residueIndex&&this.cysteine.push(this.privateLink.sites[t]),this.privateLink.sites[t]=i,this.substanceFormDisulfideLinksService.updateCysteine(this.cysteine)),this.testForm.controls["site"+t].setValue(i)}},{key:"openDialog",value:function(){var i=this,t=this.privateLink.sites;(!t[0].residueIndex||!t[1].residueIndex)&&(t=[]);var o=this.dialog.open(D.r,{data:{card:"disulfide",link:t},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var d=o.afterClosed().subscribe(function(r){i.overlayContainer.style.zIndex=null,r&&(r[0]&&r[0].subunitIndex?(i.privateLink.sites[0]=r[0],i.testForm.controls.site0.setValue(i.privateLink.sites[0])):(i.privateLink.sites[0]={},i.testForm.controls.site0.reset()),r[1]&&r[1].subunitIndex?(i.privateLink.sites[1]=r[1],i.testForm.controls.site1.setValue(i.privateLink.sites[1])):(i.privateLink.sites[1]={},i.testForm.controls.site1.reset())),i.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate()});this.subscriptions.push(d)}}]),l}();return n.\u0275fac=function(s){return new(s||n)(e.Y36($.I),e.Y36(S.uw),e.Y36(V.FW),e.Y36(Z.Xj),e.Y36(F.B),e.Y36(L.n))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-disulfide-links-form"]],inputs:{link:"link"},outputs:{linkDeleted:"linkDeleted"},decls:9,vars:3,consts:[[1,"link-form-container",3,"formGroup"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],["class","sites",4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Select from sequence view",3,"click"],["svgIcon","edit"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"sites"],[1,"site"],[1,"site-select",3,"formControlName","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(s,i){1&s&&(e.TgZ(0,"div",0),e.YNc(1,z,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return i.deleteLink()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.YNc(6,H,8,6,"div",6),e.TgZ(7,"button",7),e.NdJ("click",function(){return i.openDialog()}),e._UZ(8,"mat-icon",8),e.qZA(),e.qZA(),e.qZA()),2&s&&(e.Q6J("formGroup",i.testForm),e.xp6(1),e.Q6J("ngIf",i.link.$$deletedCode),e.xp6(5),e.Q6J("ngForOf",i.link.sites))},directives:[f.JL,f.sg,m.O5,h.lW,y.gM,k.Hw,m.sg,b.KE,b.hX,T.gD,f.JJ,f.u,j.ey],styles:[".notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .site[_ngcontent-%COMP%]{max-width:80px}.form-row[_ngcontent-%COMP%] sites[_ngcontent-%COMP%]{width:35%}"]}),n}(),W=a(14900);function G(n,l){1&n&&e._UZ(0,"mat-divider",15),2&n&&e.Q6J("vertical",!0)("inset",!0)}function R(n,l){1&n&&e._UZ(0,"mat-divider",16),2&n&&e.Q6J("inset",!0)}function K(n,l){if(1&n){var s=e.EpF();e.TgZ(0,"div",11),e.YNc(1,G,1,2,"mat-divider",12),e.TgZ(2,"app-disulfide-links-form",13),e.NdJ("linkDeleted",function(c){return e.CHM(s),e.oxw().deleteDisulfideLink(c)}),e.qZA(),e.YNc(3,R,1,1,"mat-divider",14),e.qZA()}if(2&n){var i=l.$implicit,t=l.last,o=l.index,d=e.oxw();e.Q6J("id","substance-disulfide-links-"+o)("ngClass",o%2==0?"side-border":""),e.xp6(1),e.Q6J("ngIf",o%2==0),e.xp6(1),e.Q6J("link",i),e.xp6(1),e.Q6J("ngIf",!t&&o!==d.disulfideLinks.length-2)}}function q(n,l){if(1&n){var s=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"button",17),e.NdJ("click",function(){return e.CHM(s),e.oxw().deleteAllDisulfideLinks()}),e._uU(2," Delete All Links\n"),e.qZA(),e.qZA()}}var ee=function(){var n=function(l){(0,w.Z)(i,l);var s=(0,Y.Z)(i);function i(t,o,d,r,c){var u;return(0,g.Z)(this,i),(u=s.call(this,d)).substanceFormDisulfideLinksService=t,u.substanceFormService=o,u.gaService=d,u.dialog=r,u.overlayContainerService=c,u.subscriptions=[],u.analyticsEventCategory="substance form disulfide Links",u}return(0,v.Z)(i,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Disulfide Links"),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var o=this,d=this.substanceFormDisulfideLinksService.substanceDisulfideLinks.subscribe(function(u){o.disulfideLinks=u,o.countCysteine()});this.subscriptions.push(d);var r=this.substanceFormService.substanceSubunits.subscribe(function(u){o.subunits=u,o.countCysteine()});this.subscriptions.push(r);var c=this.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(function(u){o.cysteine=u,o.countCysteine()});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(o){o.unsubscribe()})}},{key:"countCysteine",value:function(){var o=this;null!=this.disulfideLinks&&null!=this.subunits&&null!=this.cysteine&&(this.cysteineBonds=0,this.subunits&&this.subunits.forEach(function(d){o.cysteineBonds+=d.sequence.toUpperCase().split("C").length-1}),this.cysteine&&this.cysteine.length?this.cysteineBonds=this.cysteine.length:this.cysteineBonds-=2*this.disulfideLinks.length,this.getSuggestions())}},{key:"getSuggestions",value:function(){var o=[];if(this.subunits)for(var d=0;d0)for(var c=0;c0),e.xp6(1),e.Q6J("source",i.disulfideLinks))},directives:[h.lW,k.Hw,m.sg,_.P,m.mk,m.O5,x.d,X,W.n],styles:[".link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end;-ms-flex:1 0 99%;flex:1 0 99%}.form-row2[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row2[_ngcontent-%COMP%] .add-buttons[_ngcontent-%COMP%]{width:40%}.form-row2[_ngcontent-%COMP%] .cysteine[_ngcontent-%COMP%]{width:50%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.site-set[_ngcontent-%COMP%]{-ms-flex:1 0 48%;flex:1 0 48%;margin:5px;max-width:50%}.columns[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n){background-color:#448aff12}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+3){background-color:#448aff12}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+3) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+1) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+2) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.alternate-backgrounds2[_ngcontent-%COMP%] .mat-expansion-panel, .alternate-backgrounds2[_ngcontent-%COMP%] .mat-table, .alternate-backgrounds2[_ngcontent-%COMP%] textarea{background-color:transparent}"]}),n}(),ie=(a(64061),function(){var n=(0,v.Z)(function l(){(0,g.Z)(this,l)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[m.ez,A.o0.forChild(ee),M.O,x.t,k.Ps,h.ot,P.w,b.lN,f.UX,f.u5,U.TU,y.AV,N.vV,J.c,T.LD]]}),n}())}}]); -//# sourceMappingURL=5171.221aed4ea7c5246b.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5171.eaaa6792dca14bd0.js b/frontend/src/main/resources/static/5171.eaaa6792dca14bd0.js new file mode 100644 index 0000000..ecad914 --- /dev/null +++ b/frontend/src/main/resources/static/5171.eaaa6792dca14bd0.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5171],{35171:function(ne,C,a){a.r(C),a.d(C,{SubstanceFormDisulfideLinksModule:function(){return ie}});var v=a(1884),g=a(39117),m=a(36362),A=a(75143),M=a(7168),x=a(19975),h=a(65590),k=a(87317),P=a(94673),b=a(44770),f=a(90587),U=a(26439),J=a(43365),y=a(40089),N=a(31959),w=a(46751),Y=a(56101),Q=a(79550),L=a(35354),E=a(40104),D=a(39401),F=a(33567),e=a(86613),S=a(95758),Z=a(54244),_=a(51279),V=a(63169),$=a(18291),T=a(91434),j=a(1130);function z(t,l){if(1&t){var s=e.EpF();e.TgZ(0,"div",9),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",10),e.NdJ("click",function(){return e.CHM(s),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",11),e.qZA(),e.qZA()}}function B(t,l){if(1&t&&(e.TgZ(0,"mat-option",16),e._uU(1),e.qZA()),2&t){var s=l.$implicit;e.Q6J("value",s),e.xp6(1),e.AsE(" ",s.subunitIndex,"_",s.residueIndex," ")}}function H(t,l){if(1&t){var s=e.EpF();e.TgZ(0,"div",12),e.TgZ(1,"mat-form-field",13),e.TgZ(2,"mat-label"),e._uU(3),e.qZA(),e.TgZ(4,"mat-select",14),e.NdJ("selectionChange",function(r){var u=e.CHM(s).index;return e.oxw().updateSuggestions(r.value,u)}),e.YNc(5,B,2,3,"mat-option",15),e.TgZ(6,"mat-option",16),e._uU(7),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&t){var i=l.$implicit,n=l.index,o=e.oxw();e.xp6(3),e.Oqu(0===n?"To":"From"),e.xp6(1),e.Q6J("formControlName","site"+n),e.xp6(1),e.Q6J("ngForOf",o.cysteine),e.xp6(1),e.Q6J("value",i),e.xp6(1),e.AsE(" ",i.subunitIndex,"_",i.residueIndex," ")}}var X=function(){var t=function(){function l(s,i,n,o,d,r){(0,g.Z)(this,l),this.cvService=s,this.dialog=i,this.utilsService=n,this.overlayContainerService=o,this.substanceFormService=d,this.substanceFormDisulfideLinksService=r,this.cysteine=[],this.linkDeleted=new e.vpe,this.testForm=new f.cw({site0:new f.NI("",[f.kI.required]),site1:new f.NI("",[f.kI.required])}),this.subscriptions=[]}return(0,v.Z)(l,[{key:"ngOnInit",value:function(){this.privateLink.sites?(this.testForm.controls.site0.setValue(this.privateLink.sites[0]),this.testForm.controls.site1.setValue(this.privateLink.sites[1])):this.privateLink.sites=[{},{}],this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var i=this;setTimeout(function(){var n=i.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(function(o){i.cysteine=o});i.subscriptions.push(n)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"link",get:function(){return this.privateLink},set:function(i){this.privateLink=i}},{key:"deleteLink",value:function(){var i=this;confirm("Are you sure you want to delete links?")&&(this.privateLink.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){i.linkDeleted.emit(i.link)},1e3),this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate())}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateLink.$$deletedCode,this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate()}},{key:"updateAccess",value:function(i){this.link.access=i}},{key:"updateSuggestions",value:function(i,n){this.cysteine=this.cysteine.filter(function(o){return o.residueIndex!==i.residueIndex||o.subunitIndex!==i.subunitIndex}),this.privateLink.sites[n]!==i&&(this.privateLink.sites[n].residueIndex&&this.cysteine.push(this.privateLink.sites[n]),this.privateLink.sites[n]=i,this.substanceFormDisulfideLinksService.updateCysteine(this.cysteine)),this.testForm.controls["site"+n].setValue(i)}},{key:"openDialog",value:function(){var i=this,n=this.privateLink.sites;(!n[0].residueIndex||!n[1].residueIndex)&&(n=[]);var o=this.dialog.open(D.r,{data:{card:"disulfide",link:n},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var d=o.afterClosed().subscribe(function(r){i.overlayContainer.style.zIndex=null,r&&(r[0]&&r[0].subunitIndex?(i.privateLink.sites[0]=r[0],i.testForm.controls.site0.setValue(i.privateLink.sites[0])):(i.privateLink.sites[0]={},i.testForm.controls.site0.reset()),r[1]&&r[1].subunitIndex?(i.privateLink.sites[1]=r[1],i.testForm.controls.site1.setValue(i.privateLink.sites[1])):(i.privateLink.sites[1]={},i.testForm.controls.site1.reset())),i.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate()});this.subscriptions.push(d)}}]),l}();return t.\u0275fac=function(s){return new(s||t)(e.Y36($.I),e.Y36(S.uw),e.Y36(V.FW),e.Y36(Z.Xj),e.Y36(F.B),e.Y36(L.n))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-disulfide-links-form"]],inputs:{link:"link"},outputs:{linkDeleted:"linkDeleted"},decls:9,vars:3,consts:[[1,"link-form-container",3,"formGroup"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],["class","sites",4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Select from sequence view",3,"click"],["svgIcon","edit"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"sites"],[1,"site"],[1,"site-select",3,"formControlName","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(s,i){1&s&&(e.TgZ(0,"div",0),e.YNc(1,z,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return i.deleteLink()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.YNc(6,H,8,6,"div",6),e.TgZ(7,"button",7),e.NdJ("click",function(){return i.openDialog()}),e._UZ(8,"mat-icon",8),e.qZA(),e.qZA(),e.qZA()),2&s&&(e.Q6J("formGroup",i.testForm),e.xp6(1),e.Q6J("ngIf",i.link.$$deletedCode),e.xp6(5),e.Q6J("ngForOf",i.link.sites))},directives:[f.JL,f.sg,m.O5,k.lW,y.gM,h.Hw,m.sg,b.KE,b.hX,T.gD,f.JJ,f.u,j.ey],styles:[".notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .site[_ngcontent-%COMP%]{max-width:80px}.form-row[_ngcontent-%COMP%] sites[_ngcontent-%COMP%]{width:35%}"]}),t}(),W=a(14900);function G(t,l){1&t&&e._UZ(0,"mat-divider",15),2&t&&e.Q6J("vertical",!0)("inset",!0)}function R(t,l){1&t&&e._UZ(0,"mat-divider",16),2&t&&e.Q6J("inset",!0)}function K(t,l){if(1&t){var s=e.EpF();e.TgZ(0,"div",11),e.YNc(1,G,1,2,"mat-divider",12),e.TgZ(2,"app-disulfide-links-form",13),e.NdJ("linkDeleted",function(c){return e.CHM(s),e.oxw().deleteDisulfideLink(c)}),e.qZA(),e.YNc(3,R,1,1,"mat-divider",14),e.qZA()}if(2&t){var i=l.$implicit,n=l.last,o=l.index,d=e.oxw();e.Q6J("id","substance-disulfide-links-"+o)("ngClass",o%2==0?"side-border":""),e.xp6(1),e.Q6J("ngIf",o%2==0),e.xp6(1),e.Q6J("link",i),e.xp6(1),e.Q6J("ngIf",!n&&o!==d.disulfideLinks.length-2)}}function q(t,l){if(1&t){var s=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"button",17),e.NdJ("click",function(){return e.CHM(s),e.oxw().deleteAllDisulfideLinks()}),e._uU(2," Delete All Links\n"),e.qZA(),e.qZA()}}var ee=function(){var t=function(l){(0,w.Z)(i,l);var s=(0,Y.Z)(i);function i(n,o,d,r,c){var u;return(0,g.Z)(this,i),(u=s.call(this,d)).substanceFormDisulfideLinksService=n,u.substanceFormService=o,u.gaService=d,u.dialog=r,u.overlayContainerService=c,u.subscriptions=[],u.analyticsEventCategory="substance form disulfide Links",u}return(0,v.Z)(i,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Disulfide Links"),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var o=this,d=this.substanceFormDisulfideLinksService.substanceDisulfideLinks.subscribe(function(u){o.disulfideLinks=u,o.countCysteine()});this.subscriptions.push(d);var r=this.substanceFormService.substanceSubunits.subscribe(function(u){o.subunits=u,o.countCysteine()});this.subscriptions.push(r);var c=this.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(function(u){o.cysteine=u,o.countCysteine()});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(o){o.unsubscribe()})}},{key:"countCysteine",value:function(){var o=this;null!=this.disulfideLinks&&null!=this.subunits&&null!=this.cysteine&&(this.cysteineBonds=0,this.subunits&&this.subunits.forEach(function(d){o.cysteineBonds+=d.sequence.toUpperCase().split("C").length-1}),this.cysteine&&this.cysteine.length?this.cysteineBonds=this.cysteine.length:this.cysteineBonds-=2*this.disulfideLinks.length,this.getSuggestions())}},{key:"getSuggestions",value:function(){var o=[];if(this.subunits)for(var d=0;d0)for(var c=0;c0),e.xp6(1),e.Q6J("source",i.disulfideLinks))},directives:[k.lW,h.Hw,m.sg,_.P,m.mk,m.O5,x.d,X,W.n],styles:[".link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end;-ms-flex:1 0 99%;flex:1 0 99%}.form-row2[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row2[_ngcontent-%COMP%] .add-buttons[_ngcontent-%COMP%]{width:40%}.form-row2[_ngcontent-%COMP%] .cysteine[_ngcontent-%COMP%]{width:50%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.site-set[_ngcontent-%COMP%]{-ms-flex:1 0 48%;flex:1 0 48%;margin:5px;max-width:50%}.columns[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n){background-color:var(--nth-child-color-2)}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+3){background-color:var(--nth-child-color-2)}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+3) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+1) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.alternate-backgrounds2[_ngcontent-%COMP%]:nth-child(4n+2) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.alternate-backgrounds2[_ngcontent-%COMP%] .mat-expansion-panel, .alternate-backgrounds2[_ngcontent-%COMP%] .mat-table, .alternate-backgrounds2[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}"]}),t}(),ie=(a(64061),function(){var t=(0,v.Z)(function l(){(0,g.Z)(this,l)});return t.\u0275fac=function(s){return new(s||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[m.ez,A.o0.forChild(ee),M.O,x.t,h.Ps,k.ot,P.w,b.lN,f.UX,f.u5,U.TU,y.AV,N.vV,J.c,T.LD]]}),t}())}}]); +//# sourceMappingURL=5171.eaaa6792dca14bd0.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5171.221aed4ea7c5246b.js.map b/frontend/src/main/resources/static/5171.eaaa6792dca14bd0.js.map similarity index 99% rename from frontend/src/main/resources/static/5171.221aed4ea7c5246b.js.map rename to frontend/src/main/resources/static/5171.eaaa6792dca14bd0.js.map index 3013fd2..ba73452 100644 --- a/frontend/src/main/resources/static/5171.221aed4ea7c5246b.js.map +++ b/frontend/src/main/resources/static/5171.eaaa6792dca14bd0.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r2","ctx_r8","DisulfideLinksFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","substanceFormDisulfideLinksService","this","EventEmitter","FormGroup","site0","FormControl","Validators","site1","privateLink","sites","testForm","controls","setValue","overlayContainer","getContainerElement","setTimeout","cysteineSubscription","i","substanceCysteineSites","subscribe","cysteine","subscriptions","push","forEach","subscription","unsubscribe","set","link","confirm","$$deletedCode","newUUID","deleteTimer","linkDeleted","emit","emitDisulfideLinkUpdate","clearTimeout","access","value","pos","filter","r","residueIndex","subunitIndex","updateCysteine","sentSites","dialogRef","open","SubunitSelectorDialogComponent","data","card","width","panelClass","style","zIndex","dialogSubscription","afterClosed","newLinks","reset","l","selectors","ctx","ctx_r7","ctx_r9","SubstanceFormDisulfideLinksCardComponent","gaService","u","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","disulfideLinksSubscription","substanceDisulfideLinks","o","disulfideLinks","countCysteine","subunitsSubscription","substanceSubunits","subunits","componentDestroyed","cysteineBonds","subunit","sequence","toUpperCase","split","length","getSuggestions","available","j","site","addLink","addSubstanceDisulfideLink","disulfideLink","deleteSubstanceDisulfideLink","deleteAllDisulfideLinks","addCompleteDisulfideLinks","SubstanceCardBaseFilteredList","SubstanceFormDisulfideLinksModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/disulfide-links/disulfide-links-form.component.html","./src/app/core/substance-form/disulfide-links/disulfide-links-form.component.ts","./src/app/core/substance-form/disulfide-links/substance-form-disulfide-links-card.component.html","./src/app/core/substance-form/disulfide-links/substance-form-disulfide-links-card.component.ts","./src/app/core/substance-form/disulfide-links/substance-form-disulfide-links.module.ts"],"sourcesContent":["\n","import {AfterViewInit, Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {Link, Site} from '@gsrs-core/substance';\nimport { SubstanceFormDisulfideLinksService } from './substance-form-disulfide-links.service';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {FormControl, FormGroup, Validators} from '@angular/forms';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\n\n@Component({\n selector: 'app-disulfide-links-form',\n templateUrl: './disulfide-links-form.component.html',\n styleUrls: ['./disulfide-links-form.component.scss']\n})\nexport class DisulfideLinksFormComponent implements OnInit, AfterViewInit, OnDestroy {\n\n private privateLink: Link;\n public cysteine: Array = [];\n @Output() linkDeleted = new EventEmitter();\n deleteTimer: any;\n testForm = new FormGroup({\n site0: new FormControl('', [\n Validators.required\n ]),\n site1: new FormControl('', [\n Validators.required\n ]),\n });\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService,\n private substanceFormDisulfideLinksService: SubstanceFormDisulfideLinksService\n ) { }\n\n ngOnInit() {\n if (this.privateLink.sites) {\n this.testForm.controls['site0'].setValue(this.privateLink.sites[0]);\n this.testForm.controls['site1'].setValue(this.privateLink.sites[1]);\n } else {\n this.privateLink.sites = [{}, {}];\n }\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n ngAfterViewInit() {\n setTimeout(() => {\n const cysteineSubscription = this.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(cysteine => {\n this.cysteine = cysteine;\n });\n this.subscriptions.push(cysteineSubscription);\n });\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set link(link: Link) {\n this.privateLink = link;\n }\n\n get link(): Link {\n return this.privateLink;\n }\n\n deleteLink(): void {\n if (confirm('Are you sure you want to delete links?')) {\n this.privateLink.$$deletedCode = this.utilsService.newUUID();\n // if (!this.privateLink) {\n this.deleteTimer = setTimeout(() => {\n this.linkDeleted.emit(this.link);\n }, 1000);\n // }\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateLink.$$deletedCode;\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n\n updateAccess(access: Array): void {\n this.link.access = access;\n }\n\n updateSuggestions(value: Site, pos: number): void {\n this.cysteine = this.cysteine.filter(function(r) {\n return (r.residueIndex !== value.residueIndex) || (r.subunitIndex !== value.subunitIndex);\n });\n if (this.privateLink.sites[pos] !== value) {\n if (this.privateLink.sites[pos].residueIndex) {\n this.cysteine.push(this.privateLink.sites[pos]);\n }\n this.privateLink.sites[pos] = value;\n this.substanceFormDisulfideLinksService.updateCysteine(this.cysteine);\n } else {\n }\n this.testForm.controls['site' + pos].setValue(value);\n }\n\n openDialog(): void {\n let sentSites = this.privateLink.sites;\n if (!sentSites[0].residueIndex || !sentSites[1].residueIndex) {\n sentSites = [];\n }\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'disulfide', 'link': sentSites},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n if (newLinks[0] && newLinks[0].subunitIndex) {\n this.privateLink.sites[0] = newLinks[0];\n this.testForm.controls['site0'].setValue(this.privateLink.sites[0]);\n } else {\n this.privateLink.sites[0] = {};\n this.testForm.controls['site0'].reset();\n }\n if (newLinks[1] && newLinks[1].subunitIndex) {\n this.privateLink.sites[1] = newLinks[1];\n this.testForm.controls['site1'].setValue(this.privateLink.sites[1]);\n } else {\n this.privateLink.sites[1] = {};\n this.testForm.controls['site1'].reset();\n }\n }\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n}\n","
\n
\n
\n \n \n
\n\n
\n Number of unspecified Cysteine residues: {{cysteineBonds}}\n
\n
\n\n
\n \n \n \n
\n\n
\n\n
0\">
\n\n\n
\n \n \n
\n\n\n\n\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {DisulfideLink, Site, Subunit} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormDisulfideLinksService } from './substance-form-disulfide-links.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport { SubstanceFormService } from '../substance-form.service';\n\n@Component({\n selector: 'app-substance-form-disulfide-links-card',\n templateUrl: './substance-form-disulfide-links-card.component.html',\n styleUrls: ['./substance-form-disulfide-links-card.component.scss']\n})\nexport class SubstanceFormDisulfideLinksCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n disulfideLinks: Array;\n private subscriptions: Array = [];\n cysteineBonds: number;\n cysteine: Array;\n subunits: Array;\n private overlayContainer: HTMLElement;\n constructor(\n private substanceFormDisulfideLinksService: SubstanceFormDisulfideLinksService,\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form disulfide Links';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Disulfide Links');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngAfterViewInit() {\n const disulfideLinksSubscription = this.substanceFormDisulfideLinksService.substanceDisulfideLinks.subscribe(disulfideLinks => {\n this.disulfideLinks = disulfideLinks;\n this.countCysteine();\n });\n\n this.subscriptions.push(disulfideLinksSubscription);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.countCysteine();\n });\n this.subscriptions.push(subunitsSubscription);\n const cysteineSubscription = this.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(cysteine => {\n this.cysteine = cysteine;\n this.countCysteine();\n });\n this.subscriptions.push(cysteineSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n countCysteine(): void {\n if (this.disulfideLinks != null && this.subunits != null && this.cysteine != null) {\n this.cysteineBonds = 0;\n if (this.subunits) {\n this.subunits.forEach(subunit => {\n this.cysteineBonds += (subunit.sequence.toUpperCase().split('C').length - 1);\n });\n }\n if (this.cysteine && this.cysteine.length) {\n this.cysteineBonds = this.cysteine.length;\n } else {\n this.cysteineBonds -= (this.disulfideLinks.length * 2);\n }\n this.getSuggestions();\n }\n }\n\n getSuggestions(): void {\n let available = [];\n if (this.subunits) {\n for (let i = 0; i < this.subunits.length; i++) {\n const sequence = this.subunits[i].sequence;\n if (sequence != null && sequence.length > 0) {\n for (let j = 0; j < sequence.length; j++) {\n const site = sequence[j];\n if (site.toUpperCase() === 'C') {\n available.push({'residueIndex': (j + 1), 'subunitIndex': (i + 1)});\n }\n }\n }\n }\n }\n this.disulfideLinks.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n available = available.filter(r => (r.residueIndex !== site.residueIndex) || (r.subunitIndex !== site.subunitIndex));\n });\n }\n\n });\n }\n\n addItem(): void {\n this.addLink();\n }\n\n addLink(): void {\n this.substanceFormDisulfideLinksService.addSubstanceDisulfideLink();\n setTimeout(() => {\n });\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n\n deleteDisulfideLink(disulfideLink: DisulfideLink): void {\n this.substanceFormDisulfideLinksService.deleteSubstanceDisulfideLink(disulfideLink);\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n\n deleteAllDisulfideLinks(): void {\n if (confirm('Are you sure you want to delete all links?')) {\n this.substanceFormDisulfideLinksService.deleteAllDisulfideLinks();\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n }\n\n openDialog(): void {\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'multi-disulfide', 'link': []},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n this.substanceFormDisulfideLinksService.addCompleteDisulfideLinks(newLinks);\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\n// eslint-disable-next-line max-len\nimport {SubstanceFormDisulfideLinksCardComponent} from '@gsrs-core/substance-form/disulfide-links/substance-form-disulfide-links-card.component';\nimport { DisulfideLinksFormComponent } from './disulfide-links-form.component';\nimport { MatSelectModule } from '@angular/material/select';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormDisulfideLinksCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n DisulfideLinksFormComponent\n ],\n declarations: [\n SubstanceFormDisulfideLinksCardComponent,\n DisulfideLinksFormComponent\n ]\n})\nexport class SubstanceFormDisulfideLinksModule { }\n"],"sourceRoot":"webpack:///","file":"5171.221aed4ea7c5246b.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r2","ctx_r8","DisulfideLinksFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","substanceFormDisulfideLinksService","this","EventEmitter","FormGroup","site0","FormControl","Validators","site1","privateLink","sites","testForm","controls","setValue","overlayContainer","getContainerElement","setTimeout","cysteineSubscription","i","substanceCysteineSites","subscribe","cysteine","subscriptions","push","forEach","subscription","unsubscribe","set","link","confirm","$$deletedCode","newUUID","deleteTimer","linkDeleted","emit","emitDisulfideLinkUpdate","clearTimeout","access","value","pos","filter","r","residueIndex","subunitIndex","updateCysteine","sentSites","dialogRef","open","SubunitSelectorDialogComponent","data","card","width","panelClass","style","zIndex","dialogSubscription","afterClosed","newLinks","reset","l","selectors","ctx","ctx_r7","ctx_r9","SubstanceFormDisulfideLinksCardComponent","gaService","u","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","disulfideLinksSubscription","substanceDisulfideLinks","o","disulfideLinks","countCysteine","subunitsSubscription","substanceSubunits","subunits","componentDestroyed","cysteineBonds","subunit","sequence","toUpperCase","split","length","getSuggestions","available","j","site","addLink","addSubstanceDisulfideLink","disulfideLink","deleteSubstanceDisulfideLink","deleteAllDisulfideLinks","addCompleteDisulfideLinks","SubstanceCardBaseFilteredList","SubstanceFormDisulfideLinksModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/disulfide-links/disulfide-links-form.component.html","./src/app/core/substance-form/disulfide-links/disulfide-links-form.component.ts","./src/app/core/substance-form/disulfide-links/substance-form-disulfide-links-card.component.html","./src/app/core/substance-form/disulfide-links/substance-form-disulfide-links-card.component.ts","./src/app/core/substance-form/disulfide-links/substance-form-disulfide-links.module.ts"],"sourcesContent":["\n","import {AfterViewInit, Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {Link, Site} from '@gsrs-core/substance';\nimport { SubstanceFormDisulfideLinksService } from './substance-form-disulfide-links.service';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {FormControl, FormGroup, Validators} from '@angular/forms';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\n\n@Component({\n selector: 'app-disulfide-links-form',\n templateUrl: './disulfide-links-form.component.html',\n styleUrls: ['./disulfide-links-form.component.scss']\n})\nexport class DisulfideLinksFormComponent implements OnInit, AfterViewInit, OnDestroy {\n\n private privateLink: Link;\n public cysteine: Array = [];\n @Output() linkDeleted = new EventEmitter();\n deleteTimer: any;\n testForm = new FormGroup({\n site0: new FormControl('', [\n Validators.required\n ]),\n site1: new FormControl('', [\n Validators.required\n ]),\n });\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService,\n private substanceFormDisulfideLinksService: SubstanceFormDisulfideLinksService\n ) { }\n\n ngOnInit() {\n if (this.privateLink.sites) {\n this.testForm.controls['site0'].setValue(this.privateLink.sites[0]);\n this.testForm.controls['site1'].setValue(this.privateLink.sites[1]);\n } else {\n this.privateLink.sites = [{}, {}];\n }\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n ngAfterViewInit() {\n setTimeout(() => {\n const cysteineSubscription = this.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(cysteine => {\n this.cysteine = cysteine;\n });\n this.subscriptions.push(cysteineSubscription);\n });\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set link(link: Link) {\n this.privateLink = link;\n }\n\n get link(): Link {\n return this.privateLink;\n }\n\n deleteLink(): void {\n if (confirm('Are you sure you want to delete links?')) {\n this.privateLink.$$deletedCode = this.utilsService.newUUID();\n // if (!this.privateLink) {\n this.deleteTimer = setTimeout(() => {\n this.linkDeleted.emit(this.link);\n }, 1000);\n // }\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateLink.$$deletedCode;\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n\n updateAccess(access: Array): void {\n this.link.access = access;\n }\n\n updateSuggestions(value: Site, pos: number): void {\n this.cysteine = this.cysteine.filter(function(r) {\n return (r.residueIndex !== value.residueIndex) || (r.subunitIndex !== value.subunitIndex);\n });\n if (this.privateLink.sites[pos] !== value) {\n if (this.privateLink.sites[pos].residueIndex) {\n this.cysteine.push(this.privateLink.sites[pos]);\n }\n this.privateLink.sites[pos] = value;\n this.substanceFormDisulfideLinksService.updateCysteine(this.cysteine);\n } else {\n }\n this.testForm.controls['site' + pos].setValue(value);\n }\n\n openDialog(): void {\n let sentSites = this.privateLink.sites;\n if (!sentSites[0].residueIndex || !sentSites[1].residueIndex) {\n sentSites = [];\n }\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'disulfide', 'link': sentSites},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n if (newLinks[0] && newLinks[0].subunitIndex) {\n this.privateLink.sites[0] = newLinks[0];\n this.testForm.controls['site0'].setValue(this.privateLink.sites[0]);\n } else {\n this.privateLink.sites[0] = {};\n this.testForm.controls['site0'].reset();\n }\n if (newLinks[1] && newLinks[1].subunitIndex) {\n this.privateLink.sites[1] = newLinks[1];\n this.testForm.controls['site1'].setValue(this.privateLink.sites[1]);\n } else {\n this.privateLink.sites[1] = {};\n this.testForm.controls['site1'].reset();\n }\n }\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n}\n","
\n
\n
\n \n \n
\n\n
\n Number of unspecified Cysteine residues: {{cysteineBonds}}\n
\n
\n\n
\n \n \n \n
\n\n
\n\n
0\">
\n\n\n
\n \n \n
\n\n\n\n\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {DisulfideLink, Site, Subunit} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormDisulfideLinksService } from './substance-form-disulfide-links.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport { SubstanceFormService } from '../substance-form.service';\n\n@Component({\n selector: 'app-substance-form-disulfide-links-card',\n templateUrl: './substance-form-disulfide-links-card.component.html',\n styleUrls: ['./substance-form-disulfide-links-card.component.scss']\n})\nexport class SubstanceFormDisulfideLinksCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n disulfideLinks: Array;\n private subscriptions: Array = [];\n cysteineBonds: number;\n cysteine: Array;\n subunits: Array;\n private overlayContainer: HTMLElement;\n constructor(\n private substanceFormDisulfideLinksService: SubstanceFormDisulfideLinksService,\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form disulfide Links';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Disulfide Links');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngAfterViewInit() {\n const disulfideLinksSubscription = this.substanceFormDisulfideLinksService.substanceDisulfideLinks.subscribe(disulfideLinks => {\n this.disulfideLinks = disulfideLinks;\n this.countCysteine();\n });\n\n this.subscriptions.push(disulfideLinksSubscription);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.countCysteine();\n });\n this.subscriptions.push(subunitsSubscription);\n const cysteineSubscription = this.substanceFormDisulfideLinksService.substanceCysteineSites.subscribe(cysteine => {\n this.cysteine = cysteine;\n this.countCysteine();\n });\n this.subscriptions.push(cysteineSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n countCysteine(): void {\n if (this.disulfideLinks != null && this.subunits != null && this.cysteine != null) {\n this.cysteineBonds = 0;\n if (this.subunits) {\n this.subunits.forEach(subunit => {\n this.cysteineBonds += (subunit.sequence.toUpperCase().split('C').length - 1);\n });\n }\n if (this.cysteine && this.cysteine.length) {\n this.cysteineBonds = this.cysteine.length;\n } else {\n this.cysteineBonds -= (this.disulfideLinks.length * 2);\n }\n this.getSuggestions();\n }\n }\n\n getSuggestions(): void {\n let available = [];\n if (this.subunits) {\n for (let i = 0; i < this.subunits.length; i++) {\n const sequence = this.subunits[i].sequence;\n if (sequence != null && sequence.length > 0) {\n for (let j = 0; j < sequence.length; j++) {\n const site = sequence[j];\n if (site.toUpperCase() === 'C') {\n available.push({'residueIndex': (j + 1), 'subunitIndex': (i + 1)});\n }\n }\n }\n }\n }\n this.disulfideLinks.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n available = available.filter(r => (r.residueIndex !== site.residueIndex) || (r.subunitIndex !== site.subunitIndex));\n });\n }\n\n });\n }\n\n addItem(): void {\n this.addLink();\n }\n\n addLink(): void {\n this.substanceFormDisulfideLinksService.addSubstanceDisulfideLink();\n setTimeout(() => {\n });\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n\n deleteDisulfideLink(disulfideLink: DisulfideLink): void {\n this.substanceFormDisulfideLinksService.deleteSubstanceDisulfideLink(disulfideLink);\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n\n deleteAllDisulfideLinks(): void {\n if (confirm('Are you sure you want to delete all links?')) {\n this.substanceFormDisulfideLinksService.deleteAllDisulfideLinks();\n this.substanceFormDisulfideLinksService.emitDisulfideLinkUpdate();\n }\n }\n\n openDialog(): void {\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'multi-disulfide', 'link': []},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n this.substanceFormDisulfideLinksService.addCompleteDisulfideLinks(newLinks);\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\n// eslint-disable-next-line max-len\nimport {SubstanceFormDisulfideLinksCardComponent} from '@gsrs-core/substance-form/disulfide-links/substance-form-disulfide-links-card.component';\nimport { DisulfideLinksFormComponent } from './disulfide-links-form.component';\nimport { MatSelectModule } from '@angular/material/select';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormDisulfideLinksCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n DisulfideLinksFormComponent\n ],\n declarations: [\n SubstanceFormDisulfideLinksCardComponent,\n DisulfideLinksFormComponent\n ]\n})\nexport class SubstanceFormDisulfideLinksModule { }\n"],"sourceRoot":"webpack:///","file":"5171.eaaa6792dca14bd0.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5223.d9e7c577b7fb5a46.js b/frontend/src/main/resources/static/5223.9eaa0a735474407b.js similarity index 91% rename from frontend/src/main/resources/static/5223.d9e7c577b7fb5a46.js rename to frontend/src/main/resources/static/5223.9eaa0a735474407b.js index bb24387..56e9df6 100644 --- a/frontend/src/main/resources/static/5223.d9e7c577b7fb5a46.js +++ b/frontend/src/main/resources/static/5223.9eaa0a735474407b.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5223],{75223:function(M,c,e){e.r(c),e.d(c,{SubstanceDisulfideLinksModule:function(){return F}});var r=e(48047),m=e(78069),v=e(36362),h=e(95106),C=e(24582),D=e(7318),b=e(2756),S=e(50253),t=e(76442),u=e(97217);function L(n,i){1&n&&(t.TgZ(0,"th",8),t._uU(1," To "),t.qZA())}function Z(n,i){if(1&n&&(t.TgZ(0,"td",9),t._uU(1),t.qZA()),2&n){var a=i.$implicit;t.xp6(1),t.hij(" ",a.start," ")}}function g(n,i){1&n&&(t.TgZ(0,"th",8),t._uU(1," From "),t.qZA())}function T(n,i){if(1&n&&(t.TgZ(0,"td",9),t._uU(1),t.qZA()),2&n){var a=i.$implicit;t.xp6(1),t.hij(" ",a.end," ")}}function x(n,i){1&n&&t._UZ(0,"tr",10)}function y(n,i){1&n&&t._UZ(0,"tr",11)}var k=function(){var n=function(i){(0,C.Z)(o,i);var a=(0,D.Z)(o);function o(){var l;return(0,m.Z)(this,o),(l=a.call(this)).formatted=[],l.displayedColumns=["to","from"],l.substanceUpdated=new S.x,l}return(0,r.Z)(o,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(N){if(s.substance=N,s.formatted=[],null!=s.substance&&null!=s.substance.protein&&null!=s.substance.protein.disulfideLinks&&s.substance.protein.disulfideLinks.length){s.disulfideLinks=s.substance.protein.disulfideLinks;var p,f=(0,h.Z)(s.disulfideLinks);try{for(f.s();!(p=f.n()).done;){var d=p.value;d.sites&&d.sites.length>1&&s.formatted.push({start:d.sites[0].subunitIndex+"_"+d.sites[0].residueIndex,end:d.sites[1].subunitIndex+"_"+d.sites[1].residueIndex})}}catch(H){f.e(H)}finally{f.f()}s.countUpdate.emit(s.disulfideLinks.length)}})}},{key:"getFullSite",value:function(s){return s.subunitIndex+"_"+s.residueIndex}}]),o}(b.B);return n.\u0275fac=function(a){return new(a||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-disulfide-links"]],features:[t.qOj],decls:10,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","to"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","from"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(a,o){1&a&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,L,2,0,"th",3),t.YNc(4,Z,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,g,2,0,"th",3),t.YNc(7,T,2,1,"td",4),t.BQk(),t.YNc(8,x,1,0,"tr",6),t.YNc(9,y,1,0,"tr",7),t.qZA(),t.qZA()),2&a&&(t.xp6(1),t.Q6J("dataSource",o.formatted),t.xp6(7),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns))},directives:[u.BZ,u.w1,u.fO,u.ge,u.Dz,u.ev,u.as,u.XQ,u.nj,u.Gk],styles:[""]}),n}(),U=e(64061),I=e(98002),A=e(43365),j=e(26439),B=e(33865),F=function(){var n=(0,r.Z)(function i(){(0,m.Z)(this,i)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[v.ez,U.o.forChild(k),I.Bz,u.p0,B.HT,j.TU,A.c]]}),n}()}}]); -//# sourceMappingURL=5223.d9e7c577b7fb5a46.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5223],{75223:function(M,c,e){e.r(c),e.d(c,{SubstanceDisulfideLinksModule:function(){return F}});var r=e(1884),m=e(39117),v=e(36362),h=e(44014),C=e(46751),D=e(56101),b=e(2756),S=e(50253),t=e(86613),u=e(97217);function L(n,i){1&n&&(t.TgZ(0,"th",8),t._uU(1," To "),t.qZA())}function Z(n,i){if(1&n&&(t.TgZ(0,"td",9),t._uU(1),t.qZA()),2&n){var a=i.$implicit;t.xp6(1),t.hij(" ",a.start," ")}}function g(n,i){1&n&&(t.TgZ(0,"th",8),t._uU(1," From "),t.qZA())}function T(n,i){if(1&n&&(t.TgZ(0,"td",9),t._uU(1),t.qZA()),2&n){var a=i.$implicit;t.xp6(1),t.hij(" ",a.end," ")}}function x(n,i){1&n&&t._UZ(0,"tr",10)}function y(n,i){1&n&&t._UZ(0,"tr",11)}var k=function(){var n=function(i){(0,C.Z)(o,i);var a=(0,D.Z)(o);function o(){var l;return(0,m.Z)(this,o),(l=a.call(this)).formatted=[],l.displayedColumns=["to","from"],l.substanceUpdated=new S.x,l}return(0,r.Z)(o,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(N){if(s.substance=N,s.formatted=[],null!=s.substance&&null!=s.substance.protein&&null!=s.substance.protein.disulfideLinks&&s.substance.protein.disulfideLinks.length){s.disulfideLinks=s.substance.protein.disulfideLinks;var p,f=(0,h.Z)(s.disulfideLinks);try{for(f.s();!(p=f.n()).done;){var d=p.value;d.sites&&d.sites.length>1&&s.formatted.push({start:d.sites[0].subunitIndex+"_"+d.sites[0].residueIndex,end:d.sites[1].subunitIndex+"_"+d.sites[1].residueIndex})}}catch(H){f.e(H)}finally{f.f()}s.countUpdate.emit(s.disulfideLinks.length)}})}},{key:"getFullSite",value:function(s){return s.subunitIndex+"_"+s.residueIndex}}]),o}(b.B);return n.\u0275fac=function(a){return new(a||n)},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-disulfide-links"]],features:[t.qOj],decls:10,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","to"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","from"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(a,o){1&a&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,L,2,0,"th",3),t.YNc(4,Z,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,g,2,0,"th",3),t.YNc(7,T,2,1,"td",4),t.BQk(),t.YNc(8,x,1,0,"tr",6),t.YNc(9,y,1,0,"tr",7),t.qZA(),t.qZA()),2&a&&(t.xp6(1),t.Q6J("dataSource",o.formatted),t.xp6(7),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns))},directives:[u.BZ,u.w1,u.fO,u.ge,u.Dz,u.ev,u.as,u.XQ,u.nj,u.Gk],styles:[""]}),n}(),U=e(64061),I=e(98002),A=e(43365),j=e(26439),B=e(33865),F=function(){var n=(0,r.Z)(function i(){(0,m.Z)(this,i)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[v.ez,U.o.forChild(k),I.Bz,u.p0,B.HT,j.TU,A.c]]}),n}()}}]); +//# sourceMappingURL=5223.9eaa0a735474407b.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5223.d9e7c577b7fb5a46.js.map b/frontend/src/main/resources/static/5223.9eaa0a735474407b.js.map similarity index 99% rename from frontend/src/main/resources/static/5223.d9e7c577b7fb5a46.js.map rename to frontend/src/main/resources/static/5223.9eaa0a735474407b.js.map index bbb8ff6..10552d7 100644 --- a/frontend/src/main/resources/static/5223.d9e7c577b7fb5a46.js.map +++ b/frontend/src/main/resources/static/5223.9eaa0a735474407b.js.map @@ -1 +1 @@ -{"version":3,"mappings":"0TAKIA,gBAAuCA,gBAAGA,kCAC1CA,gBAAuCA,SAAiBA,gCAAjBA,uDAIvCA,gBAAuCA,kBAAKA,kCAC5CA,gBAAuCA,SAAeA,gCAAfA,oDAGzCA,sCACAA,iBCLK,IAAMC,EAAb,eAAaA,EAAb,0CAOE,0CACEC,gBANFC,UAAiB,GACjBD,mBAA6B,CAAC,KAAM,QACpCA,mBAAmB,IAAIE,IAGvBF,EAPF,uCAWE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAG9B,GAFAC,EAAKC,UAAYA,EACjBD,EAAKL,UAAY,GACK,MAAlBK,EAAKC,WACsB,MAA1BD,EAAKC,UAAUC,SAC0B,MAAzCF,EAAKC,UAAUC,QAAQC,gBACvBH,EAAKC,UAAUC,QAAQC,eAAeC,OAAQ,CACjDJ,EAAKG,eAAiBH,EAAKC,UAAUC,QAAQC,eADI,gBAE9BH,EAAKG,gBAFyB,IAEjD,2BAAwC,KAA7BE,EAA6BC,QAClCD,EAAKE,OAASF,EAAKE,MAAMH,OAAS,GAGpCJ,EAAKL,UAAUa,KAAK,CAACC,MAFPJ,EAAKE,MAAM,GAAGG,aAAe,IAAML,EAAKE,MAAM,GAAGI,aAE5BC,IADnBP,EAAKE,MAAM,GAAGG,aAAe,IAAML,EAAKE,MAAM,GAAGI,gBACzBE,MANKC,wBASjDd,EAAKe,YAAYC,KAAKhB,EAAKG,eAAeC,aA3BlD,yBAiCE,SAAYa,GACV,OAAOA,EAAKP,aAAe,IAAMO,EAAKN,iBAlC1CO,GAAsDC,kDAAzC1B,8BAAgC2B,qcDV7C5B,iBAEAA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,sBACFA,QAEAA,sBACAA,sBACFA,QAEAA,eAhBkBA,yCAYIA,qDACaA,qICLtBC,EAAb,0DCYa4B,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsC/B,GACtCgC,KACAC,KACAC,KACAC,KACAC,QAISR,EAAb","names":["i0","SubstanceDisulfideLinksComponent","l","formatted","Subject","this","substanceUpdated","subscribe","s","substance","protein","disulfideLinks","length","link","p","sites","push","start","subunitIndex","residueIndex","end","fromcol","H","countUpdate","emit","site","o","SubstanceCardBase","selectors","SubstanceDisulfideLinksModule","r","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-disulfide-links/substance-disulfide-links.component.html","./src/app/core/substance-details/substance-disulfide-links/substance-disulfide-links.component.ts","./src/app/core/substance-details/substance-disulfide-links/substance-disulfide-links.module.ts"],"sourcesContent":["
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
To {{format.start}} From {{format.end}}
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {DisulfideLink, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-disulfide-links',\r\n templateUrl: './substance-disulfide-links.component.html',\r\n styleUrls: ['./substance-disulfide-links.component.scss']\r\n})\r\nexport class SubstanceDisulfideLinksComponent extends SubstanceCardBase implements OnInit {\r\n disulfideLinks: Array;\r\n formatted: any = [];\r\n displayedColumns: string[] = ['to', 'from'];\r\n substanceUpdated = new Subject();\r\n\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.formatted = [];\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.disulfideLinks != null\r\n && this.substance.protein.disulfideLinks.length) {\r\n this.disulfideLinks = this.substance.protein.disulfideLinks;\r\n for (const link of this.disulfideLinks) {\r\n if (link.sites && link.sites.length > 1) {\r\n const tocol = link.sites[0].subunitIndex + '_' + link.sites[0].residueIndex;\r\n const fromcol = link.sites[1].subunitIndex + '_' + link.sites[1].residueIndex;\r\n this.formatted.push({start: tocol, end: fromcol});\r\n }\r\n }\r\n this.countUpdate.emit(this.disulfideLinks.length);\r\n }\r\n });\r\n }\r\n\r\n\r\n getFullSite(site: Site ): string {\r\n return site.subunitIndex + '_' + site.residueIndex;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceDisulfideLinksComponent } from './substance-disulfide-links.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceDisulfideLinksComponent),\r\n RouterModule,\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceDisulfideLinksComponent]\r\n})\r\nexport class SubstanceDisulfideLinksModule { }\r\n"],"sourceRoot":"webpack:///","file":"5223.d9e7c577b7fb5a46.js"} \ No newline at end of file +{"version":3,"mappings":"0TAKIA,gBAAuCA,gBAAGA,kCAC1CA,gBAAuCA,SAAiBA,gCAAjBA,uDAIvCA,gBAAuCA,kBAAKA,kCAC5CA,gBAAuCA,SAAeA,gCAAfA,oDAGzCA,sCACAA,iBCLK,IAAMC,EAAb,eAAaA,EAAb,0CAOE,0CACEC,gBANFC,UAAiB,GACjBD,mBAA6B,CAAC,KAAM,QACpCA,mBAAmB,IAAIE,IAGvBF,EAPF,uCAWE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAG9B,GAFAC,EAAKC,UAAYA,EACjBD,EAAKL,UAAY,GACK,MAAlBK,EAAKC,WACsB,MAA1BD,EAAKC,UAAUC,SAC0B,MAAzCF,EAAKC,UAAUC,QAAQC,gBACvBH,EAAKC,UAAUC,QAAQC,eAAeC,OAAQ,CACjDJ,EAAKG,eAAiBH,EAAKC,UAAUC,QAAQC,eADI,gBAE9BH,EAAKG,gBAFyB,IAEjD,2BAAwC,KAA7BE,EAA6BC,QAClCD,EAAKE,OAASF,EAAKE,MAAMH,OAAS,GAGpCJ,EAAKL,UAAUa,KAAK,CAACC,MAFPJ,EAAKE,MAAM,GAAGG,aAAe,IAAML,EAAKE,MAAM,GAAGI,aAE5BC,IADnBP,EAAKE,MAAM,GAAGG,aAAe,IAAML,EAAKE,MAAM,GAAGI,gBACzBE,MANKC,wBASjDd,EAAKe,YAAYC,KAAKhB,EAAKG,eAAeC,aA3BlD,yBAiCE,SAAYa,GACV,OAAOA,EAAKP,aAAe,IAAMO,EAAKN,iBAlC1CO,GAAsDC,kDAAzC1B,8BAAgC2B,qcDV7C5B,iBAEAA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,sBACFA,QAEAA,sBACAA,sBACFA,QAEAA,eAhBkBA,yCAYIA,qDACaA,qICLtBC,EAAb,0DCYa4B,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,aAAsC/B,GACtCgC,KACAC,KACAC,KACAC,KACAC,QAISR,EAAb","names":["i0","SubstanceDisulfideLinksComponent","l","formatted","Subject","this","substanceUpdated","subscribe","s","substance","protein","disulfideLinks","length","link","p","sites","push","start","subunitIndex","residueIndex","end","fromcol","H","countUpdate","emit","site","o","SubstanceCardBase","selectors","SubstanceDisulfideLinksModule","r","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-disulfide-links/substance-disulfide-links.component.html","./src/app/core/substance-details/substance-disulfide-links/substance-disulfide-links.component.ts","./src/app/core/substance-details/substance-disulfide-links/substance-disulfide-links.module.ts"],"sourcesContent":["
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
To {{format.start}} From {{format.end}}
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {DisulfideLink, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-disulfide-links',\r\n templateUrl: './substance-disulfide-links.component.html',\r\n styleUrls: ['./substance-disulfide-links.component.scss']\r\n})\r\nexport class SubstanceDisulfideLinksComponent extends SubstanceCardBase implements OnInit {\r\n disulfideLinks: Array;\r\n formatted: any = [];\r\n displayedColumns: string[] = ['to', 'from'];\r\n substanceUpdated = new Subject();\r\n\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.formatted = [];\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.disulfideLinks != null\r\n && this.substance.protein.disulfideLinks.length) {\r\n this.disulfideLinks = this.substance.protein.disulfideLinks;\r\n for (const link of this.disulfideLinks) {\r\n if (link.sites && link.sites.length > 1) {\r\n const tocol = link.sites[0].subunitIndex + '_' + link.sites[0].residueIndex;\r\n const fromcol = link.sites[1].subunitIndex + '_' + link.sites[1].residueIndex;\r\n this.formatted.push({start: tocol, end: fromcol});\r\n }\r\n }\r\n this.countUpdate.emit(this.disulfideLinks.length);\r\n }\r\n });\r\n }\r\n\r\n\r\n getFullSite(site: Site ): string {\r\n return site.subunitIndex + '_' + site.residueIndex;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceDisulfideLinksComponent } from './substance-disulfide-links.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceDisulfideLinksComponent),\r\n RouterModule,\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceDisulfideLinksComponent]\r\n})\r\nexport class SubstanceDisulfideLinksModule { }\r\n"],"sourceRoot":"webpack:///","file":"5223.9eaa0a735474407b.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5331.3421cbc41e8cd509.js b/frontend/src/main/resources/static/5331.54e4b52fc18f1150.js similarity index 89% rename from frontend/src/main/resources/static/5331.3421cbc41e8cd509.js rename to frontend/src/main/resources/static/5331.54e4b52fc18f1150.js index d9c0e66..17f6314 100644 --- a/frontend/src/main/resources/static/5331.3421cbc41e8cd509.js +++ b/frontend/src/main/resources/static/5331.54e4b52fc18f1150.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5331],{35331:function(U,u,t){t.r(u),t.d(u,{SubstanceVariantConceptsModule:function(){return A}});var l=t(48047),p=t(78069),d=t(36362),C=t(64061),g=t(95106),h=t(24582),b=t(7318),S=t(2756),Z=t(50253),n=t(76442),x=t(9292),f=t(98002),y=function(s){return["/substances",s]};function V(a,s){if(1&a&&(n.TgZ(0,"div",2),n._UZ(1,"img",3),n.TgZ(2,"div"),n.TgZ(3,"a",4),n._uU(4),n.qZA(),n.qZA(),n.qZA()),2&a){var e=s.$implicit;n.xp6(1),n.Q6J("entityId",e.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(3,y,e.refuuid)),n.xp6(1),n.hij(" ",e.refPname," ")}}var O=function(){var a=function(s){(0,h.Z)(c,s);var e=(0,b.Z)(c);function c(){var i;return(0,p.Z)(this,c),(i=e.call(this)).substanceUpdated=new Z.x,i}return(0,l.Z)(c,[{key:"ngOnInit",value:function(){var o=this;this.substanceUpdated.subscribe(function(F){if(o.substance=F,null!=o.substance&&o.substance.relationships.length>0){o.variants=[];var v,r=(0,g.Z)(o.substance.relationships);try{for(r.s();!(v=r.n()).done;){var m=v.value;"SUB_CONCEPT->SUBSTANCE"===m.type&&o.variants.push(m.relatedSubstance)}}catch(I){r.e(I)}finally{r.f()}}})}}]),c}(S.B);return a.\u0275fac=function(e){return new(e||a)},a.\u0275cmp=n.Xpm({type:a,selectors:[["app-substance-variant-concepts"]],features:[n.qOj],decls:2,vars:1,consts:[[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(e,c){1&e&&(n.TgZ(0,"div",0),n.YNc(1,V,5,5,"div",1),n.qZA()),2&e&&(n.xp6(1),n.Q6J("ngForOf",c.variants))},directives:[d.sg,x.m,f.yS],styles:[".image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),a}(),M=t(97217),T=t(24054),A=function(){var a=(0,l.Z)(function s(){(0,p.Z)(this,s)});return a.\u0275fac=function(e){return new(e||a)},a.\u0275mod=n.oAB({type:a}),a.\u0275inj=n.cJS({imports:[[d.ez,C.o.forChild(O),f.Bz,M.p0,T.f]]}),a}()}}]); -//# sourceMappingURL=5331.3421cbc41e8cd509.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5331],{35331:function(U,u,t){t.r(u),t.d(u,{SubstanceVariantConceptsModule:function(){return A}});var l=t(1884),p=t(39117),d=t(36362),C=t(64061),g=t(44014),h=t(46751),b=t(56101),S=t(2756),Z=t(50253),n=t(86613),x=t(9292),f=t(98002),y=function(s){return["/substances",s]};function V(a,s){if(1&a&&(n.TgZ(0,"div",2),n._UZ(1,"img",3),n.TgZ(2,"div"),n.TgZ(3,"a",4),n._uU(4),n.qZA(),n.qZA(),n.qZA()),2&a){var e=s.$implicit;n.xp6(1),n.Q6J("entityId",e.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(3,y,e.refuuid)),n.xp6(1),n.hij(" ",e.refPname," ")}}var O=function(){var a=function(s){(0,h.Z)(c,s);var e=(0,b.Z)(c);function c(){var i;return(0,p.Z)(this,c),(i=e.call(this)).substanceUpdated=new Z.x,i}return(0,l.Z)(c,[{key:"ngOnInit",value:function(){var o=this;this.substanceUpdated.subscribe(function(F){if(o.substance=F,null!=o.substance&&o.substance.relationships.length>0){o.variants=[];var v,r=(0,g.Z)(o.substance.relationships);try{for(r.s();!(v=r.n()).done;){var m=v.value;"SUB_CONCEPT->SUBSTANCE"===m.type&&o.variants.push(m.relatedSubstance)}}catch(I){r.e(I)}finally{r.f()}}})}}]),c}(S.B);return a.\u0275fac=function(e){return new(e||a)},a.\u0275cmp=n.Xpm({type:a,selectors:[["app-substance-variant-concepts"]],features:[n.qOj],decls:2,vars:1,consts:[[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(e,c){1&e&&(n.TgZ(0,"div",0),n.YNc(1,V,5,5,"div",1),n.qZA()),2&e&&(n.xp6(1),n.Q6J("ngForOf",c.variants))},directives:[d.sg,x.m,f.yS],styles:[".image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),a}(),M=t(97217),T=t(24054),A=function(){var a=(0,l.Z)(function s(){(0,p.Z)(this,s)});return a.\u0275fac=function(e){return new(e||a)},a.\u0275mod=n.oAB({type:a}),a.\u0275inj=n.cJS({imports:[[d.ez,C.o.forChild(O),f.Bz,M.p0,T.f]]}),a}()}}]); +//# sourceMappingURL=5331.54e4b52fc18f1150.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5331.3421cbc41e8cd509.js.map b/frontend/src/main/resources/static/5331.54e4b52fc18f1150.js.map similarity index 98% rename from frontend/src/main/resources/static/5331.3421cbc41e8cd509.js.map rename to frontend/src/main/resources/static/5331.54e4b52fc18f1150.js.map index 5410ea0..763e64b 100644 --- a/frontend/src/main/resources/static/5331.3421cbc41e8cd509.js.map +++ b/frontend/src/main/resources/static/5331.54e4b52fc18f1150.js.map @@ -1 +1 @@ -{"version":3,"mappings":"0XACEA,iBACEA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAN6CA,qCAEfA,kDACxBA,oCCKD,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CAEEC,gBAJFC,iBAAmB,IAAIC,IAEvBF,EALF,uCAUE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAE9B,GADAC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAqBD,EAAKC,UAAUC,cAAcC,OAAS,EAAG,CACrEH,EAAKI,SAAW,GADqD,gBAEnDJ,EAAKC,UAAUC,eAFoC,IAErE,2BAAgD,KAArCG,EAAqCC,QAC7B,2BAAbD,EAAIE,MACNP,EAAKI,SAASI,KAAKH,EAAII,yBAJ0CC,gCAb7EC,GAAuDC,kDAA1ClB,8BAAiCmB,4SDV9CpB,iBACEA,uBAQFA,eAR+CA,sTCSlCC,EAAb,yBCQaoB,EAAb,eAAaA,KAAbC,iFAAaD,4DATF,CACPE,KACAC,aAAsCvB,GACtCwB,KACAC,KACAC,QAISN,EAAb","names":["i0","SubstanceVariantConceptsComponent","i","substanceUpdated","Subject","this","subscribe","o","substance","relationships","length","variants","rel","v","type","push","relatedSubstance","I","c","SubstanceCardBase","selectors","SubstanceVariantConceptsModule","l","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-variant-concepts/substance-variant-concepts.component.html","./src/app/core/substance-details/substance-variant-concepts/substance-variant-concepts.component.ts","./src/app/core/substance-details/substance-variant-concepts/substance-variant-concepts.module.ts"],"sourcesContent":["
\r\n
\r\n \r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-variant-concepts',\r\n templateUrl: './substance-variant-concepts.component.html',\r\n styleUrls: ['./substance-variant-concepts.component.scss']\r\n})\r\nexport class SubstanceVariantConceptsComponent extends SubstanceCardBase implements OnInit {\r\n definition: string;\r\n variants: Array;\r\n substanceUpdated = new Subject();\r\n\r\n constructor(\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.relationships.length > 0) {\r\n this.variants = [];\r\n for (const rel of this.substance.relationships) {\r\n if (rel.type === 'SUB_CONCEPT->SUBSTANCE') {\r\n this.variants.push(rel.relatedSubstance);\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {SubstanceVariantConceptsComponent} from './substance-variant-concepts.component';\r\nimport {RouterModule} from '@angular/router';\r\nimport { MatTableModule} from '@angular/material/table';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceVariantConceptsComponent),\r\n RouterModule,\r\n MatTableModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceVariantConceptsComponent]\r\n})\r\nexport class SubstanceVariantConceptsModule { }\r\n"],"sourceRoot":"webpack:///","file":"5331.3421cbc41e8cd509.js"} \ No newline at end of file +{"version":3,"mappings":"0XACEA,iBACEA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAN6CA,qCAEfA,kDACxBA,oCCKD,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CAEEC,gBAJFC,iBAAmB,IAAIC,IAEvBF,EALF,uCAUE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAE9B,GADAC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAqBD,EAAKC,UAAUC,cAAcC,OAAS,EAAG,CACrEH,EAAKI,SAAW,GADqD,gBAEnDJ,EAAKC,UAAUC,eAFoC,IAErE,2BAAgD,KAArCG,EAAqCC,QAC7B,2BAAbD,EAAIE,MACNP,EAAKI,SAASI,KAAKH,EAAII,yBAJ0CC,gCAb7EC,GAAuDC,kDAA1ClB,8BAAiCmB,4SDV9CpB,iBACEA,uBAQFA,eAR+CA,sTCSlCC,EAAb,yBCQaoB,EAAb,eAAaA,KAAbC,iFAAaD,4DATF,CACPE,KACAC,aAAsCvB,GACtCwB,KACAC,KACAC,QAISN,EAAb","names":["i0","SubstanceVariantConceptsComponent","i","substanceUpdated","Subject","this","subscribe","o","substance","relationships","length","variants","rel","v","type","push","relatedSubstance","I","c","SubstanceCardBase","selectors","SubstanceVariantConceptsModule","l","CommonModule","DynamicComponentLoaderModule","RouterModule","MatTableModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-variant-concepts/substance-variant-concepts.component.html","./src/app/core/substance-details/substance-variant-concepts/substance-variant-concepts.component.ts","./src/app/core/substance-details/substance-variant-concepts/substance-variant-concepts.module.ts"],"sourcesContent":["
\r\n
\r\n \r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-variant-concepts',\r\n templateUrl: './substance-variant-concepts.component.html',\r\n styleUrls: ['./substance-variant-concepts.component.scss']\r\n})\r\nexport class SubstanceVariantConceptsComponent extends SubstanceCardBase implements OnInit {\r\n definition: string;\r\n variants: Array;\r\n substanceUpdated = new Subject();\r\n\r\n constructor(\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.relationships.length > 0) {\r\n this.variants = [];\r\n for (const rel of this.substance.relationships) {\r\n if (rel.type === 'SUB_CONCEPT->SUBSTANCE') {\r\n this.variants.push(rel.relatedSubstance);\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {SubstanceVariantConceptsComponent} from './substance-variant-concepts.component';\r\nimport {RouterModule} from '@angular/router';\r\nimport { MatTableModule} from '@angular/material/table';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceVariantConceptsComponent),\r\n RouterModule,\r\n MatTableModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceVariantConceptsComponent]\r\n})\r\nexport class SubstanceVariantConceptsModule { }\r\n"],"sourceRoot":"webpack:///","file":"5331.54e4b52fc18f1150.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5353.9902d2be30e23d0e.js b/frontend/src/main/resources/static/5353.9902d2be30e23d0e.js new file mode 100644 index 0000000..bcc3c10 --- /dev/null +++ b/frontend/src/main/resources/static/5353.9902d2be30e23d0e.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5353],{91770:function(J,b,t){t.d(b,{n:function(){return D}});var S=t(39117),F=t(1884),p=t(95758),T=t(12570),y=t(44250),n=t(86613),x=t(36362),E=t(53349),Z=t(95465),e=t(87317);function O(m,g){if(1&m){var c=n.EpF();n.TgZ(0,"app-previous-references",4),n.NdJ("selectedReference",function(_){return n.CHM(c),n.oxw().fillReference(_)}),n.qZA()}}function M(m,g){if(1&m){var c=n.EpF();n.TgZ(0,"div"),n._UZ(1,"app-reference-form",5,6),n.TgZ(3,"div",7),n._UZ(4,"span",8),n.TgZ(5,"button",9),n.NdJ("click",function(){return n.CHM(c),n.oxw().cancel()}),n._uU(6,"Cancel"),n.qZA(),n.TgZ(7,"button",10),n.NdJ("click",function(){return n.CHM(c),n.oxw().save()}),n._uU(8," Save "),n.qZA(),n.qZA(),n.qZA()}if(2&m){var r=n.MAs(2),_=n.oxw();n.xp6(1),n.Q6J("reference",_.reference),n.xp6(6),n.Q6J("disabled",!r||!r.isValid)}}var D=function(){var m=function(){function g(c,r,_){var h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(0,S.Z)(this,g),this.dialogRef=c,this.substanceService=r,this.authService=_,this.reference=h,this.showPrev=!1}return(0,F.Z)(g,[{key:"ngOnInit",value:function(){var r=this;this.dialogRef.beforeClosed().subscribe(function(){return r.dialogRef.close(r.reference.docType&&""!==r.reference.docType&&r.reference.citation&&""!==r.reference.citation?r.reference:null)})}},{key:"save",value:function(){this.dialogRef.close(this.reference)}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"fillReference",value:function(r){delete r.uuid,delete r.lastEdited,delete r.lastEditedBy,delete r.created,delete r.createdBy,delete r._self,r.docType&&""!==r.docType&&r.citation&&""!==r.citation&&(this.reference=r),this.showPrev=!1}}]),g}();return m.\u0275fac=function(c){return new(c||m)(n.Y36(p.so),n.Y36(T.d),n.Y36(y.e),n.Y36(p.WI))},m.\u0275cmp=n.Xpm({type:m,selectors:[["app-refernce-form-dialog"]],decls:5,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content","","name","reference-dialog-container","id","reference-dialog-container"],[3,"selectedReference",4,"ngIf"],[4,"ngIf"],[3,"selectedReference"],["hideDelete","true","id","reference-dialog-form","name","reference-dialog-form",3,"reference"],["referenceForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(c,r){1&c&&(n.TgZ(0,"h1",0),n._uU(1),n.qZA(),n.TgZ(2,"div",1),n.YNc(3,O,1,0,"app-previous-references",2),n.YNc(4,M,9,2,"div",3),n.qZA()),2&c&&(n.xp6(1),n.hij("",r.reference.uuid?"Edit":"Add"," Reference"),n.xp6(2),n.Q6J("ngIf",r.showPrev),n.xp6(1),n.Q6J("ngIf",r.reference))},directives:[p.uh,p.xY,x.O5,E.s,Z.b,e.lW],styles:[".actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}"]}),m}()},55353:function(J,b,t){t.r(b),t.d(b,{SubstanceFormReferencesModule:function(){return j}});var S=t(1884),F=t(39117),p=t(36362),T=t(46751),y=t(56101),n=t(79550),x=t(91770),E=t(24874),Z=t(24936),e=t(86613),O=t(95758),M=t(78444),D=t(54244),m=t(44770),g=t(43365),c=t(90587),r=t(26439),_=t(51279),h=t(95465),C=t(19975),I=t(87317),P=t(65590);function U(o,d){if(1&o&&(e.TgZ(0,"mat-form-field",6),e._UZ(1,"input",7),e.qZA()),2&o){var s=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",s.searchControl)}}var A=function(){return[5,10,25,100]};function N(o,d){if(1&o){var s=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(s);var f=e.oxw();return f.pageChange(i,f.analyticsEventCategory)}),e.qZA()}if(2&o){var a=e.oxw();e.Q6J("length",a.filtered&&a.filtered.length||0)("pageIndex",a.page)("pageSize",5)("pageSizeOptions",e.DdM(4,A))}}function Y(o,d){1&o&&e._UZ(0,"mat-divider",12),2&o&&e.Q6J("inset",!0)}function L(o,d){if(1&o){var s=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-reference-form",10),e.NdJ("referenceDeleted",function(f){return e.CHM(s),e.oxw().deleteReference(f)}),e.qZA(),e.YNc(2,Y,1,1,"mat-divider",11),e.qZA()}if(2&o){var a=d.$implicit,u=d.last;e.Q6J("id",a.uuid),e.xp6(1),e.Q6J("reference",a),e.xp6(1),e.Q6J("ngIf",!u)}}function Q(o,d){if(1&o){var s=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(s);var f=e.oxw();return f.pageChange(i,f.analyticsEventCategory)}),e.qZA()}if(2&o){var a=e.oxw();e.Q6J("length",a.filtered&&a.filtered.length||0)("pageIndex",a.page)("pageSize",5)("pageSizeOptions",e.DdM(4,A))}}function B(o,d){if(1&o){var s=e.EpF();e.TgZ(0,"div",13),e._UZ(1,"span",2),e.TgZ(2,"button",14),e.NdJ("click",function(){return e.CHM(s),e.oxw().addSubstanceReference()}),e._uU(3," Add reference "),e._UZ(4,"mat-icon",15),e.qZA(),e.qZA()}}var W=function(){var o=function(d){(0,T.Z)(a,d);var s=(0,y.Z)(a);function a(u,i,f,v,R){var l;return(0,F.Z)(this,a),(l=s.call(this,v)).substanceFormReferencesService=u,l.dialog=i,l.scrollToService=f,l.gaService=v,l.overlayContainerService=R,l.subscriptions=[],l.analyticsEventCategory="substance form references",l}return(0,S.Z)(a,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("References"),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var i=this,f=this.substanceFormReferencesService.substanceReferences.subscribe(function(v){i.references=v,i.filtered=v;var R=i.searchControl.valueChanges.subscribe(function(l){i.filterList(l,i.references,i.analyticsEventCategory)},function(l){console.log(l)});i.subscriptions.push(R),i.page=0,i.pageChange()});this.subscriptions.push(f)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"openReferenceFormDialog",value:function(){var i=this,f=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{access:[]},v=this.dialog.open(x.n,{data:f,width:"900px"});this.overlayContainer.style.zIndex="1002";var R=v.afterClosed().subscribe(function(l){i.overlayContainer.style.zIndex=null,null!=l&&l.doctype&&l.citation&&i.substanceFormReferencesService.addSubstanceReference(l)});this.subscriptions.push(R)}},{key:"addItem",value:function(){this.addSubstanceReference()}},{key:"addSubstanceReference",value:function(){var i=this,f=this.substanceFormReferencesService.addSubstanceReference({});setTimeout(function(){i.scrollToService.scrollToElement(f.uuid,"center")},10)}},{key:"deleteReference",value:function(i){this.substanceFormReferencesService.deleteSubstanceReference(i)}}]),a}(n.u);return o.\u0275fac=function(s){return new(s||o)(e.Y36(Z.v),e.Y36(O.uw),e.Y36(M.i),e.Y36(E.$),e.Y36(D.Xj))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-substance-form-references-card"]],features:[e.qOj],decls:7,vars:5,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","reference","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"reference",3,"id"],[3,"reference","referenceDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(s,a){1&s&&(e.TgZ(0,"div",0),e.YNc(1,U,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.qZA(),e.YNc(3,N,1,5,"mat-paginator",3),e.YNc(4,L,3,3,"div",4),e.YNc(5,Q,1,5,"mat-paginator",3),e.YNc(6,B,5,0,"div",5)),2&s&&(e.xp6(1),e.Q6J("ngIf",a.references&&a.references.length>a.pageSize),e.xp6(2),e.Q6J("ngIf",a.references&&a.references.length>5),e.xp6(1),e.Q6J("ngForOf",a.paged),e.xp6(1),e.Q6J("ngIf",a.references&&a.references.length>5),e.xp6(1),e.Q6J("ngIf",a.references&&a.references.length>0))},directives:[p.O5,m.KE,g.Nt,c.Fj,c.JJ,c.oH,r.NW,p.sg,_.P,h.b,C.d,I.lW,P.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.reference[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.reference[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.reference[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),o}(),z=t(64061),K=t(7168),H=t(94673),j=function(){var o=(0,S.Z)(function d(){(0,F.Z)(this,d)});return o.\u0275fac=function(s){return new(s||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({imports:[[p.ez,z.o.forChild(W),K.O,C.t,H.w,P.Ps,I.ot,m.lN,c.UX,c.u5,r.TU,g.c]]}),o}()}}]); +//# sourceMappingURL=5353.9902d2be30e23d0e.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5353.e5b8a074ea6e2a34.js.map b/frontend/src/main/resources/static/5353.9902d2be30e23d0e.js.map similarity index 97% rename from frontend/src/main/resources/static/5353.e5b8a074ea6e2a34.js.map rename to frontend/src/main/resources/static/5353.9902d2be30e23d0e.js.map index 5ef6d13..ae98264 100644 --- a/frontend/src/main/resources/static/5353.e5b8a074ea6e2a34.js.map +++ b/frontend/src/main/resources/static/5353.9902d2be30e23d0e.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r2","ctx_r5","ctx_r7","RefernceFormDialogComponent","dialogRef","substanceService","authService","reference","arguments","this","beforeClosed","subscribe","r","close","docType","citation","ref","uuid","lastEdited","lastEditedBy","created","createdBy","_self","showPrev","p","MAT_DIALOG_DATA","selectors","ctx_r10","ctx_r12","ctx_r14","SubstanceFormReferencesCardComponent","substanceFormReferencesService","dialog","scrollToService","gaService","overlayContainerService","l","analyticsEventCategory","canAddItemUpdate","emit","menuLabelUpdate","overlayContainer","getContainerElement","referencesSubscription","substanceReferences","i","references","filtered","searchSubscription","searchControl","valueChanges","filterList","value","console","log","error","subscriptions","push","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","access","open","data","width","style","zIndex","dialogSubscription","afterClosed","newReference","doctype","addSubstanceReference","addedReference","setTimeout","scrollToElement","deleteSubstanceReference","a","SubstanceCardBaseFilteredList","SubstanceFormReferencesModule","b","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","ScrollToModule","MatIconModule","MatButtonModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.html","./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.ts","./src/app/core/substance-form/references/substance-form-references-card.component.html","./src/app/core/substance-form/references/substance-form-references-card.component.ts","./src/app/core/substance-form/references/substance-form-references.module.ts"],"sourcesContent":["

{{reference.uuid ? 'Edit' : 'Add'}} Reference

\n
\n \n
\n \n
\n \n \n \n
\n
\n
\n","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { Content } from '@angular/compiler/src/render3/r3_ast';\n\n@Component({\n selector: 'app-refernce-form-dialog',\n templateUrl: './refernce-form-dialog.component.html',\n styleUrls: ['./refernce-form-dialog.component.scss']\n})\nexport class RefernceFormDialogComponent implements OnInit {\nuser: string;\nshowPrev = false;\n\n constructor(\n public dialogRef: MatDialogRef,\n private substanceService: SubstanceService,\n private authService: AuthService,\n @Inject(MAT_DIALOG_DATA) public reference: SubstanceReference = {}\n ) {}\n\n ngOnInit() {\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(\n ((this.reference.docType && this.reference.docType !== '') &&\n (this.reference.citation && this.reference.citation !== '')) ? this.reference : null));\n }\n\n save(): void {\n this.dialogRef.close(this.reference);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n fillReference(ref: SubstanceReference) {\n delete ref.uuid;\n delete ref.lastEdited;\n delete ref.lastEditedBy;\n delete ref.created;\n delete ref.createdBy;\n delete ref._self;\n if ((ref.docType && ref.docType !== '') && (ref.citation && ref.citation !== '')) {\n this.reference = ref;\n }\n this.showPrev = false;\n }\n\n}\n","
\n pageSize\">\n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceReference } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { MatDialog } from '@angular/material/dialog';\nimport { RefernceFormDialogComponent } from './references-dialogs/refernce-form-dialog.component';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceFormReferencesService } from './substance-form-references.service';\n\n@Component({\n selector: 'app-substance-form-references-card',\n templateUrl: './substance-form-references-card.component.html',\n styleUrls: ['./substance-form-references-card.component.scss']\n})\nexport class SubstanceFormReferencesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n references: Array;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n\n constructor(\n private substanceFormReferencesService: SubstanceFormReferencesService,\n private dialog: MatDialog,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form references';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('References');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngAfterViewInit() {\n const referencesSubscription = this.substanceFormReferencesService.substanceReferences.subscribe(references => {\n this.references = references;\n this.filtered = references;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.references, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(referencesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n openReferenceFormDialog(reference: SubstanceReference = { access: [] }): void {\n\n const dialogRef = this.dialog.open(RefernceFormDialogComponent, {\n data: reference,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newReference => {\n this.overlayContainer.style.zIndex = null;\n if (newReference != null && newReference.doctype && newReference.citation) {\n this.substanceFormReferencesService.addSubstanceReference(newReference);\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n addItem(): void {\n this.addSubstanceReference();\n }\n\n addSubstanceReference(): void {\n const addedReference = this.substanceFormReferencesService.addSubstanceReference({});\n setTimeout(() => {\n this.scrollToService.scrollToElement(addedReference.uuid, 'center');\n }, 10);\n }\n\n deleteReference(reference: SubstanceReference): void {\n this.substanceFormReferencesService.deleteSubstanceReference(reference);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormReferencesCardComponent } from './substance-form-references-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormReferencesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n ScrollToModule,\n MatIconModule,\n MatButtonModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule\n ],\n declarations: [\n SubstanceFormReferencesCardComponent,\n ]\n})\nexport class SubstanceFormReferencesModule { }\n"],"sourceRoot":"webpack:///","file":"5353.e5b8a074ea6e2a34.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r2","ctx_r5","ctx_r7","RefernceFormDialogComponent","dialogRef","substanceService","authService","reference","arguments","this","beforeClosed","subscribe","r","close","docType","citation","ref","uuid","lastEdited","lastEditedBy","created","createdBy","_self","showPrev","g","MAT_DIALOG_DATA","selectors","ctx_r10","ctx_r12","ctx_r14","SubstanceFormReferencesCardComponent","substanceFormReferencesService","dialog","scrollToService","gaService","overlayContainerService","l","analyticsEventCategory","canAddItemUpdate","emit","menuLabelUpdate","overlayContainer","getContainerElement","referencesSubscription","substanceReferences","i","references","filtered","searchSubscription","searchControl","valueChanges","filterList","value","console","log","error","subscriptions","push","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","access","open","data","width","style","zIndex","dialogSubscription","afterClosed","newReference","doctype","addSubstanceReference","addedReference","setTimeout","scrollToElement","deleteSubstanceReference","a","SubstanceCardBaseFilteredList","SubstanceFormReferencesModule","S","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","ScrollToModule","MatIconModule","MatButtonModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.html","./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.ts","./src/app/core/substance-form/references/substance-form-references-card.component.html","./src/app/core/substance-form/references/substance-form-references-card.component.ts","./src/app/core/substance-form/references/substance-form-references.module.ts"],"sourcesContent":["

{{reference.uuid ? 'Edit' : 'Add'}} Reference

\n
\n \n
\n \n
\n \n \n \n
\n
\n
\n","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { Content } from '@angular/compiler/src/render3/r3_ast';\n\n@Component({\n selector: 'app-refernce-form-dialog',\n templateUrl: './refernce-form-dialog.component.html',\n styleUrls: ['./refernce-form-dialog.component.scss']\n})\nexport class RefernceFormDialogComponent implements OnInit {\nuser: string;\nshowPrev = false;\n\n constructor(\n public dialogRef: MatDialogRef,\n private substanceService: SubstanceService,\n private authService: AuthService,\n @Inject(MAT_DIALOG_DATA) public reference: SubstanceReference = {}\n ) {}\n\n ngOnInit() {\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(\n ((this.reference.docType && this.reference.docType !== '') &&\n (this.reference.citation && this.reference.citation !== '')) ? this.reference : null));\n }\n\n save(): void {\n this.dialogRef.close(this.reference);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n fillReference(ref: SubstanceReference) {\n delete ref.uuid;\n delete ref.lastEdited;\n delete ref.lastEditedBy;\n delete ref.created;\n delete ref.createdBy;\n delete ref._self;\n if ((ref.docType && ref.docType !== '') && (ref.citation && ref.citation !== '')) {\n this.reference = ref;\n }\n this.showPrev = false;\n }\n\n}\n","
\n pageSize\">\n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceReference } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { MatDialog } from '@angular/material/dialog';\nimport { RefernceFormDialogComponent } from './references-dialogs/refernce-form-dialog.component';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceFormReferencesService } from './substance-form-references.service';\n\n@Component({\n selector: 'app-substance-form-references-card',\n templateUrl: './substance-form-references-card.component.html',\n styleUrls: ['./substance-form-references-card.component.scss']\n})\nexport class SubstanceFormReferencesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n references: Array;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n\n constructor(\n private substanceFormReferencesService: SubstanceFormReferencesService,\n private dialog: MatDialog,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form references';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('References');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngAfterViewInit() {\n const referencesSubscription = this.substanceFormReferencesService.substanceReferences.subscribe(references => {\n this.references = references;\n this.filtered = references;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.references, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(referencesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n openReferenceFormDialog(reference: SubstanceReference = { access: [] }): void {\n\n const dialogRef = this.dialog.open(RefernceFormDialogComponent, {\n data: reference,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newReference => {\n this.overlayContainer.style.zIndex = null;\n if (newReference != null && newReference.doctype && newReference.citation) {\n this.substanceFormReferencesService.addSubstanceReference(newReference);\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n addItem(): void {\n this.addSubstanceReference();\n }\n\n addSubstanceReference(): void {\n const addedReference = this.substanceFormReferencesService.addSubstanceReference({});\n setTimeout(() => {\n this.scrollToService.scrollToElement(addedReference.uuid, 'center');\n }, 10);\n }\n\n deleteReference(reference: SubstanceReference): void {\n this.substanceFormReferencesService.deleteSubstanceReference(reference);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormReferencesCardComponent } from './substance-form-references-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormReferencesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n ScrollToModule,\n MatIconModule,\n MatButtonModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule\n ],\n declarations: [\n SubstanceFormReferencesCardComponent,\n ]\n})\nexport class SubstanceFormReferencesModule { }\n"],"sourceRoot":"webpack:///","file":"5353.9902d2be30e23d0e.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5353.e5b8a074ea6e2a34.js b/frontend/src/main/resources/static/5353.e5b8a074ea6e2a34.js deleted file mode 100644 index 0ff7193..0000000 --- a/frontend/src/main/resources/static/5353.e5b8a074ea6e2a34.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5353],{91770:function(J,S,t){t.d(S,{n:function(){return D}});var b=t(78069),F=t(48047),v=t(95758),T=t(12570),y=t(44250),n=t(76442),x=t(36362),E=t(53349),Z=t(95465),e=t(87317);function O(m,p){if(1&m){var s=n.EpF();n.TgZ(0,"app-previous-references",4),n.NdJ("selectedReference",function(_){return n.CHM(s),n.oxw().fillReference(_)}),n.qZA()}}function M(m,p){if(1&m){var s=n.EpF();n.TgZ(0,"div"),n._UZ(1,"app-reference-form",5,6),n.TgZ(3,"div",7),n._UZ(4,"span",8),n.TgZ(5,"button",9),n.NdJ("click",function(){return n.CHM(s),n.oxw().cancel()}),n._uU(6,"Cancel"),n.qZA(),n.TgZ(7,"button",10),n.NdJ("click",function(){return n.CHM(s),n.oxw().save()}),n._uU(8," Save "),n.qZA(),n.qZA(),n.qZA()}if(2&m){var r=n.MAs(2),_=n.oxw();n.xp6(1),n.Q6J("reference",_.reference),n.xp6(6),n.Q6J("disabled",!r||!r.isValid)}}var D=function(){var m=function(){function p(s,r,_){var h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(0,b.Z)(this,p),this.dialogRef=s,this.substanceService=r,this.authService=_,this.reference=h,this.showPrev=!1}return(0,F.Z)(p,[{key:"ngOnInit",value:function(){var r=this;this.dialogRef.beforeClosed().subscribe(function(){return r.dialogRef.close(r.reference.docType&&""!==r.reference.docType&&r.reference.citation&&""!==r.reference.citation?r.reference:null)})}},{key:"save",value:function(){this.dialogRef.close(this.reference)}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"fillReference",value:function(r){delete r.uuid,delete r.lastEdited,delete r.lastEditedBy,delete r.created,delete r.createdBy,delete r._self,r.docType&&""!==r.docType&&r.citation&&""!==r.citation&&(this.reference=r),this.showPrev=!1}}]),p}();return m.\u0275fac=function(s){return new(s||m)(n.Y36(v.so),n.Y36(T.d),n.Y36(y.e),n.Y36(v.WI))},m.\u0275cmp=n.Xpm({type:m,selectors:[["app-refernce-form-dialog"]],decls:5,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content","","name","reference-dialog-container","id","reference-dialog-container"],[3,"selectedReference",4,"ngIf"],[4,"ngIf"],[3,"selectedReference"],["hideDelete","true","id","reference-dialog-form","name","reference-dialog-form",3,"reference"],["referenceForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(s,r){1&s&&(n.TgZ(0,"h1",0),n._uU(1),n.qZA(),n.TgZ(2,"div",1),n.YNc(3,O,1,0,"app-previous-references",2),n.YNc(4,M,9,2,"div",3),n.qZA()),2&s&&(n.xp6(1),n.hij("",r.reference.uuid?"Edit":"Add"," Reference"),n.xp6(2),n.Q6J("ngIf",r.showPrev),n.xp6(1),n.Q6J("ngIf",r.reference))},directives:[v.uh,v.xY,x.O5,E.s,Z.b,e.lW],styles:[".actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}"]}),m}()},55353:function(J,S,t){t.r(S),t.d(S,{SubstanceFormReferencesModule:function(){return j}});var b=t(48047),F=t(78069),v=t(36362),T=t(24582),y=t(7318),n=t(79550),x=t(91770),E=t(24874),Z=t(24936),e=t(76442),O=t(95758),M=t(78444),D=t(66088),m=t(44770),p=t(43365),s=t(90587),r=t(26439),_=t(51279),h=t(95465),C=t(19975),I=t(87317),P=t(65590);function U(o,d){if(1&o&&(e.TgZ(0,"mat-form-field",6),e._UZ(1,"input",7),e.qZA()),2&o){var c=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",c.searchControl)}}var A=function(){return[5,10,25,100]};function N(o,d){if(1&o){var c=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(c);var f=e.oxw();return f.pageChange(i,f.analyticsEventCategory)}),e.qZA()}if(2&o){var a=e.oxw();e.Q6J("length",a.filtered&&a.filtered.length||0)("pageIndex",a.page)("pageSize",5)("pageSizeOptions",e.DdM(4,A))}}function Y(o,d){1&o&&e._UZ(0,"mat-divider",12),2&o&&e.Q6J("inset",!0)}function L(o,d){if(1&o){var c=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-reference-form",10),e.NdJ("referenceDeleted",function(f){return e.CHM(c),e.oxw().deleteReference(f)}),e.qZA(),e.YNc(2,Y,1,1,"mat-divider",11),e.qZA()}if(2&o){var a=d.$implicit,u=d.last;e.Q6J("id",a.uuid),e.xp6(1),e.Q6J("reference",a),e.xp6(1),e.Q6J("ngIf",!u)}}function Q(o,d){if(1&o){var c=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(c);var f=e.oxw();return f.pageChange(i,f.analyticsEventCategory)}),e.qZA()}if(2&o){var a=e.oxw();e.Q6J("length",a.filtered&&a.filtered.length||0)("pageIndex",a.page)("pageSize",5)("pageSizeOptions",e.DdM(4,A))}}function B(o,d){if(1&o){var c=e.EpF();e.TgZ(0,"div",13),e._UZ(1,"span",2),e.TgZ(2,"button",14),e.NdJ("click",function(){return e.CHM(c),e.oxw().addSubstanceReference()}),e._uU(3," Add reference "),e._UZ(4,"mat-icon",15),e.qZA(),e.qZA()}}var W=function(){var o=function(d){(0,T.Z)(a,d);var c=(0,y.Z)(a);function a(u,i,f,g,R){var l;return(0,F.Z)(this,a),(l=c.call(this,g)).substanceFormReferencesService=u,l.dialog=i,l.scrollToService=f,l.gaService=g,l.overlayContainerService=R,l.subscriptions=[],l.analyticsEventCategory="substance form references",l}return(0,b.Z)(a,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("References"),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var i=this,f=this.substanceFormReferencesService.substanceReferences.subscribe(function(g){i.references=g,i.filtered=g;var R=i.searchControl.valueChanges.subscribe(function(l){i.filterList(l,i.references,i.analyticsEventCategory)},function(l){console.log(l)});i.subscriptions.push(R),i.page=0,i.pageChange()});this.subscriptions.push(f)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"openReferenceFormDialog",value:function(){var i=this,f=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{access:[]},g=this.dialog.open(x.n,{data:f,width:"900px"});this.overlayContainer.style.zIndex="1002";var R=g.afterClosed().subscribe(function(l){i.overlayContainer.style.zIndex=null,null!=l&&l.doctype&&l.citation&&i.substanceFormReferencesService.addSubstanceReference(l)});this.subscriptions.push(R)}},{key:"addItem",value:function(){this.addSubstanceReference()}},{key:"addSubstanceReference",value:function(){var i=this,f=this.substanceFormReferencesService.addSubstanceReference({});setTimeout(function(){i.scrollToService.scrollToElement(f.uuid,"center")},10)}},{key:"deleteReference",value:function(i){this.substanceFormReferencesService.deleteSubstanceReference(i)}}]),a}(n.u);return o.\u0275fac=function(c){return new(c||o)(e.Y36(Z.v),e.Y36(O.uw),e.Y36(M.i),e.Y36(E.$),e.Y36(D.Xj))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-substance-form-references-card"]],features:[e.qOj],decls:7,vars:5,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","reference","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"reference",3,"id"],[3,"reference","referenceDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(c,a){1&c&&(e.TgZ(0,"div",0),e.YNc(1,U,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.qZA(),e.YNc(3,N,1,5,"mat-paginator",3),e.YNc(4,L,3,3,"div",4),e.YNc(5,Q,1,5,"mat-paginator",3),e.YNc(6,B,5,0,"div",5)),2&c&&(e.xp6(1),e.Q6J("ngIf",a.references&&a.references.length>a.pageSize),e.xp6(2),e.Q6J("ngIf",a.references&&a.references.length>5),e.xp6(1),e.Q6J("ngForOf",a.paged),e.xp6(1),e.Q6J("ngIf",a.references&&a.references.length>5),e.xp6(1),e.Q6J("ngIf",a.references&&a.references.length>0))},directives:[v.O5,m.KE,p.Nt,s.Fj,s.JJ,s.oH,r.NW,v.sg,_.P,h.b,C.d,I.lW,P.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.reference[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.reference[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.reference[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),o}(),z=t(64061),K=t(7168),H=t(94673),j=function(){var o=(0,b.Z)(function d(){(0,F.Z)(this,d)});return o.\u0275fac=function(c){return new(c||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({imports:[[v.ez,z.o.forChild(W),K.O,C.t,H.w,P.Ps,I.ot,m.lN,s.UX,s.u5,r.TU,p.c]]}),o}()}}]); -//# sourceMappingURL=5353.e5b8a074ea6e2a34.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5718.daf31fff4a6709f3.js b/frontend/src/main/resources/static/5718.abf826fd1c1d07c4.js similarity index 94% rename from frontend/src/main/resources/static/5718.daf31fff4a6709f3.js rename to frontend/src/main/resources/static/5718.abf826fd1c1d07c4.js index 5c25c79..a762fa3 100644 --- a/frontend/src/main/resources/static/5718.daf31fff4a6709f3.js +++ b/frontend/src/main/resources/static/5718.abf826fd1c1d07c4.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5718],{95718:function(H,f,i){i.r(f),i.d(f,{SubstanceNaLinkagesModule:function(){return E}});var d=i(48047),p=i(78069),h=i(36362),v=i(95106),C=i(24582),S=i(7318),b=i(2756),y=i(50253),k=i(18291),t=i(76442),c=i(97217);function N(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Linkage "),t.qZA())}function Z(e,a){if(1&e&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&e){var s=a.$implicit,u=t.oxw();t.xp6(1),t.hij(" ",u.getLinkageDisplay(s.linkage)," ")}}function L(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Structure "),t.qZA())}function T(e,a){if(1&e&&(t.TgZ(0,"td",11),t._UZ(1,"img",12),t.qZA()),2&e){var s=a.$implicit;t.xp6(1),t.Q6J("src",s.structure,t.LSH)}}function x(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Site Range "),t.qZA())}function D(e,a){if(1&e&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&e){var s=a.$implicit;t.xp6(1),t.hij(" ",s.sitesShorthand," ")}}function A(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Site Count "),t.qZA())}function U(e,a){if(1&e&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&e){var s=a.$implicit,u=t.oxw();t.xp6(1),t.hij(" ",u.getSiteCount(s.sites)," ")}}function Y(e,a){1&e&&t._UZ(0,"tr",13)}function I(e,a){1&e&&t._UZ(0,"tr",14)}var Q=function(){var e=function(a){(0,C.Z)(u,a);var s=(0,S.Z)(u);function u(o){var n;return(0,p.Z)(this,u),(n=s.call(this)).cvService=o,n.displayedColumns=["linkage","Structure","Site Range","Site Count"],n.substanceUpdated=new y.x,n.subscriptions=[],n}return(0,d.Z)(u,[{key:"ngOnInit",value:function(){var n=this;this.substanceUpdated.subscribe(function(l){if(n.substance=l,null!=n.substance&&null!=n.substance.nucleicAcid&&null!=n.substance.nucleicAcid.linkages&&n.substance.nucleicAcid.linkages.length){n.linkages=n.substance.nucleicAcid.linkages,n.countUpdate.emit(n.linkages.length);var g=n.cvService.getDomainVocabulary("NUCLEIC_ACID_LINKAGE").subscribe(function(m){n.vocabulary=m.NUCLEIC_ACID_LINKAGE.dictionary,n.linkages.forEach(function(r){r.structure=n.vocabulary[r.linkage]?n.cvService.getStructureUrlFragment(n.vocabulary[r.linkage].fragmentStructure):null})});n.subscriptions.push(g),n.getTotalSites()}})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"getTotalSites",value:function(){this.siteCount=0;var l,n=(0,v.Z)(this.linkages);try{for(n.s();!(l=n.n()).done;)this.siteCount=this.siteCount+l.value.sites.length}catch(m){n.e(m)}finally{n.f()}}},{key:"getSiteCount",value:function(n){return n.length+"/"+this.siteCount}},{key:"getLinkageDisplay",value:function(n){return this.vocabulary&&this.vocabulary[n]&&this.vocabulary[n].display?this.vocabulary[n].display:n}}]),u}(b.B);return e.\u0275fac=function(s){return new(s||e)(t.Y36(k.I))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-na-linkages"]],features:[t.qOj],decls:16,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","linkage"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Structure"],["matColumnDef","Site Range"],["matColumnDef","Site Count"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","","style","height:145px",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[1,"structure",3,"src"],["mat-header-row",""],["mat-row","",2,"height","145px"]],template:function(s,u){1&s&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,N,2,0,"th",3),t.YNc(4,Z,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,L,2,0,"th",3),t.YNc(7,T,2,1,"td",4),t.BQk(),t.ynx(8,6),t.YNc(9,x,2,0,"th",3),t.YNc(10,D,2,1,"td",4),t.BQk(),t.ynx(11,7),t.YNc(12,A,2,0,"th",3),t.YNc(13,U,2,1,"td",4),t.BQk(),t.YNc(14,Y,1,0,"tr",8),t.YNc(15,I,1,0,"tr",9),t.qZA(),t.qZA()),2&s&&(t.xp6(1),t.Q6J("dataSource",u.linkages),t.xp6(13),t.Q6J("matHeaderRowDef",u.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",u.displayedColumns))},directives:[c.BZ,c.w1,c.fO,c.ge,c.Dz,c.ev,c.as,c.XQ,c.nj,c.Gk],styles:[".structure[_ngcontent-%COMP%]{margin:-12px}"]}),e}(),O=i(64061),R=i(43365),j=i(26439),B=i(33865),E=function(){var e=(0,d.Z)(function a(){(0,p.Z)(this,a)});return e.\u0275fac=function(s){return new(s||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[h.ez,O.o.forChild(Q),c.p0,B.HT,j.TU,R.c]]}),e}()}}]); -//# sourceMappingURL=5718.daf31fff4a6709f3.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5718],{95718:function(H,f,i){i.r(f),i.d(f,{SubstanceNaLinkagesModule:function(){return E}});var d=i(1884),p=i(39117),h=i(36362),v=i(44014),C=i(46751),S=i(56101),b=i(2756),y=i(50253),k=i(18291),t=i(86613),c=i(97217);function N(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Linkage "),t.qZA())}function Z(e,a){if(1&e&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&e){var s=a.$implicit,u=t.oxw();t.xp6(1),t.hij(" ",u.getLinkageDisplay(s.linkage)," ")}}function L(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Structure "),t.qZA())}function T(e,a){if(1&e&&(t.TgZ(0,"td",11),t._UZ(1,"img",12),t.qZA()),2&e){var s=a.$implicit;t.xp6(1),t.Q6J("src",s.structure,t.LSH)}}function x(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Site Range "),t.qZA())}function D(e,a){if(1&e&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&e){var s=a.$implicit;t.xp6(1),t.hij(" ",s.sitesShorthand," ")}}function A(e,a){1&e&&(t.TgZ(0,"th",10),t._uU(1," Site Count "),t.qZA())}function U(e,a){if(1&e&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&e){var s=a.$implicit,u=t.oxw();t.xp6(1),t.hij(" ",u.getSiteCount(s.sites)," ")}}function Y(e,a){1&e&&t._UZ(0,"tr",13)}function I(e,a){1&e&&t._UZ(0,"tr",14)}var Q=function(){var e=function(a){(0,C.Z)(u,a);var s=(0,S.Z)(u);function u(o){var n;return(0,p.Z)(this,u),(n=s.call(this)).cvService=o,n.displayedColumns=["linkage","Structure","Site Range","Site Count"],n.substanceUpdated=new y.x,n.subscriptions=[],n}return(0,d.Z)(u,[{key:"ngOnInit",value:function(){var n=this;this.substanceUpdated.subscribe(function(l){if(n.substance=l,null!=n.substance&&null!=n.substance.nucleicAcid&&null!=n.substance.nucleicAcid.linkages&&n.substance.nucleicAcid.linkages.length){n.linkages=n.substance.nucleicAcid.linkages,n.countUpdate.emit(n.linkages.length);var g=n.cvService.getDomainVocabulary("NUCLEIC_ACID_LINKAGE").subscribe(function(m){n.vocabulary=m.NUCLEIC_ACID_LINKAGE.dictionary,n.linkages.forEach(function(r){r.structure=n.vocabulary[r.linkage]?n.cvService.getStructureUrlFragment(n.vocabulary[r.linkage].fragmentStructure):null})});n.subscriptions.push(g),n.getTotalSites()}})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"getTotalSites",value:function(){this.siteCount=0;var l,n=(0,v.Z)(this.linkages);try{for(n.s();!(l=n.n()).done;)this.siteCount=this.siteCount+l.value.sites.length}catch(m){n.e(m)}finally{n.f()}}},{key:"getSiteCount",value:function(n){return n.length+"/"+this.siteCount}},{key:"getLinkageDisplay",value:function(n){return this.vocabulary&&this.vocabulary[n]&&this.vocabulary[n].display?this.vocabulary[n].display:n}}]),u}(b.B);return e.\u0275fac=function(s){return new(s||e)(t.Y36(k.I))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-na-linkages"]],features:[t.qOj],decls:16,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","linkage"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Structure"],["matColumnDef","Site Range"],["matColumnDef","Site Count"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","","style","height:145px",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[1,"structure",3,"src"],["mat-header-row",""],["mat-row","",2,"height","145px"]],template:function(s,u){1&s&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,N,2,0,"th",3),t.YNc(4,Z,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,L,2,0,"th",3),t.YNc(7,T,2,1,"td",4),t.BQk(),t.ynx(8,6),t.YNc(9,x,2,0,"th",3),t.YNc(10,D,2,1,"td",4),t.BQk(),t.ynx(11,7),t.YNc(12,A,2,0,"th",3),t.YNc(13,U,2,1,"td",4),t.BQk(),t.YNc(14,Y,1,0,"tr",8),t.YNc(15,I,1,0,"tr",9),t.qZA(),t.qZA()),2&s&&(t.xp6(1),t.Q6J("dataSource",u.linkages),t.xp6(13),t.Q6J("matHeaderRowDef",u.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",u.displayedColumns))},directives:[c.BZ,c.w1,c.fO,c.ge,c.Dz,c.ev,c.as,c.XQ,c.nj,c.Gk],styles:[".structure[_ngcontent-%COMP%]{margin:-12px}"]}),e}(),O=i(64061),R=i(43365),j=i(26439),B=i(33865),E=function(){var e=(0,d.Z)(function a(){(0,p.Z)(this,a)});return e.\u0275fac=function(s){return new(s||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[h.ez,O.o.forChild(Q),c.p0,B.HT,j.TU,R.c]]}),e}()}}]); +//# sourceMappingURL=5718.abf826fd1c1d07c4.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5718.daf31fff4a6709f3.js.map b/frontend/src/main/resources/static/5718.abf826fd1c1d07c4.js.map similarity index 99% rename from frontend/src/main/resources/static/5718.daf31fff4a6709f3.js.map rename to frontend/src/main/resources/static/5718.abf826fd1c1d07c4.js.map index d9beb1d..b790ccd 100644 --- a/frontend/src/main/resources/static/5718.daf31fff4a6709f3.js.map +++ b/frontend/src/main/resources/static/5718.abf826fd1c1d07c4.js.map @@ -1 +1 @@ -{"version":3,"mappings":"iUAIMA,iBAAuCA,qBAAQA,kCAC/CA,iBAAwCA,SAAuCA,0CAAvCA,8EAItCA,iBAAuCA,uBAAUA,kCACjDA,iBAAwCA,kBAAuDA,gCAA9BA,+DAInEA,iBAAuCA,wBAAWA,kCAClDA,iBAAwCA,SAA2BA,gCAA3BA,gEAIxCA,iBAAuCA,wBAAWA,kCAClDA,iBAAwCA,SAAgCA,0CAAhCA,sEAG1CA,sCACAA,iBCZG,IAAMC,EAAb,eAAaA,EAAb,0CASE,WACSC,GAAsC,6BAE7CC,gBAFOD,YARTC,mBAA6B,CAAC,UAAY,YAAa,aAAe,cAGtEA,mBAAmB,IAAIC,IACvBD,gBAAqC,GAIUA,EAVjD,uCAeE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAE9B,GADAJ,EAAKK,UAAYA,EACK,MAAlBL,EAAKK,WAC0B,MAA9BL,EAAKK,UAAUC,aACwB,MAAvCN,EAAKK,UAAUC,YAAYC,UAC3BP,EAAKK,UAAUC,YAAYC,SAASC,OAAQ,CAC/CR,EAAKO,SAAWP,EAAKK,UAAUC,YAAYC,SAC3CP,EAAKS,YAAYC,KAAKV,EAAKO,SAASC,QACpC,IAAMG,EAAkBX,EAAKD,UAAUa,oBAAoB,wBAAwBR,UAAU,YAC3FJ,EAAKa,WAAaC,EAASC,qBAAwBC,WACnDhB,EAAKO,SAASU,QAAQ,YAElBC,EAAQC,UADPnB,EAAKa,WAAWK,EAAQA,SACLlB,EAAKD,UAAUqB,wBAAwBpB,EAAKa,WAAWK,EAAQA,SAASG,mBAExE,SAI1BrB,EAAKsB,cAAcC,KAAKZ,GACxBX,EAAKwB,qBAnCb,yBAwCE,WACEtB,KAAKoB,cAAcL,QAAQ,YACzBQ,EAAaC,kBA1CnB,2BA8CE,WACExB,KAAKyB,UAAY,EADN,gBAEWzB,KAAKK,UAFhB,IAEX,2BACEL,KAAKyB,UAAYzB,KAAKyB,UADaC,QACOC,MAAMrB,aAHvCsB,2BA9Cf,0BAsDE,SAAaD,GACX,OAAOA,EAAMrB,OAAS,IAAMN,KAAKyB,YAvDrC,+BA0DE,SAAkBI,GAChB,OAAI7B,KAAKW,YAAcX,KAAKW,WAAWkB,IAAS7B,KAAKW,WAAWkB,GAAMC,QAC7D9B,KAAKW,WAAWkB,GAAMC,QAEtBD,MA9DbE,GAAkDC,kDAArCpC,GAA4BD,qCAA5BC,EAA4BqC,ykBDZzCtC,iBACEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACIA,sBACAA,sBACFA,QAEFA,WACEA,sBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,uBACAA,uBACFA,QACFA,eAzBmBA,wCAsBKA,sDACoCA,gLCZ/CC,EAAb,+CCQasC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCzC,GACtC0C,KACAC,KACAC,KACAC,QAISP,EAAb","names":["i0","SubstanceNaLinkagesComponent","cvService","n","Subject","this","substanceUpdated","subscribe","substance","nucleicAcid","linkages","length","countUpdate","emit","cvSubscription","getDomainVocabulary","vocabulary","response","NUCLEIC_ACID_LINKAGE","dictionary","forEach","linkage","structure","getStructureUrlFragment","fragmentStructure","subscriptions","push","getTotalSites","subscription","unsubscribe","siteCount","l","sites","m","term","display","u","SubstanceCardBase","selectors","SubstanceNaLinkagesModule","d","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-na-linkages/substance-na-linkages.component.html","./src/app/core/substance-details/substance-na-linkages/substance-na-linkages.component.ts","./src/app/core/substance-details/substance-na-linkages/substance-na-linkages.module.ts"],"sourcesContent":["
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Linkage {{getLinkageDisplay(linkage.linkage)}} Structure Site Range {{linkage.sitesShorthand}} Site Count {{getSiteCount(linkage.sites)}}
\r\n
\r\n","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {Linkage, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport {DataDictionaryService} from '@gsrs-core/utils/data-dictionary.service';\r\nimport {ControlledVocabularyService, VocabularyDictionary, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\r\n\r\n@Component({\r\n selector: 'app-substance-na-linkages',\r\n templateUrl: './substance-na-linkages.component.html',\r\n styleUrls: ['./substance-na-linkages.component.scss']\r\n})\r\nexport class SubstanceNaLinkagesComponent extends SubstanceCardBase implements OnInit, OnDestroy {\r\n linkages: Array;\r\n displayedColumns: string[] = ['linkage' , 'Structure', 'Site Range' , 'Site Count' ];\r\n siteCount: number;\r\n vocabulary: any;\r\n substanceUpdated = new Subject();\r\n subscriptions: Array = [];\r\n\r\n\r\n constructor(\r\n public cvService: ControlledVocabularyService,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null\r\n && this.substance.nucleicAcid != null\r\n && this.substance.nucleicAcid.linkages != null\r\n && this.substance.nucleicAcid.linkages.length) {\r\n this.linkages = this.substance.nucleicAcid.linkages;\r\n this.countUpdate.emit(this.linkages.length);\r\n const cvSubscription = this.cvService.getDomainVocabulary('NUCLEIC_ACID_LINKAGE').subscribe(response => {\r\n this.vocabulary = response['NUCLEIC_ACID_LINKAGE'].dictionary;\r\n this.linkages.forEach(linkage => {\r\n if(this.vocabulary[linkage.linkage]) {\r\n linkage.structure = this.cvService.getStructureUrlFragment(this.vocabulary[linkage.linkage].fragmentStructure);\r\n } else {\r\n linkage.structure = null;\r\n }\r\n })\r\n });\r\n this.subscriptions.push(cvSubscription);\r\n this.getTotalSites();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach(subscription => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n\r\n getTotalSites() {\r\n this.siteCount = 0;\r\n for (const linkage of this.linkages) {\r\n this.siteCount = this.siteCount + linkage.sites.length;\r\n }\r\n\r\n }\r\n\r\n getSiteCount(sites: Array): string {\r\n return sites.length + '/' + this.siteCount;\r\n }\r\n\r\n getLinkageDisplay(term: string): string {\r\n if (this.vocabulary && this.vocabulary[term] && this.vocabulary[term].display) {\r\n return this.vocabulary[term].display;\r\n } else {\r\n return term;\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {SubstanceNaLinkagesComponent} from './substance-na-linkages.component';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNaLinkagesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceNaLinkagesComponent]\r\n})\r\nexport class SubstanceNaLinkagesModule { }\r\n"],"sourceRoot":"webpack:///","file":"5718.daf31fff4a6709f3.js"} \ No newline at end of file +{"version":3,"mappings":"iUAIMA,iBAAuCA,qBAAQA,kCAC/CA,iBAAwCA,SAAuCA,0CAAvCA,8EAItCA,iBAAuCA,uBAAUA,kCACjDA,iBAAwCA,kBAAuDA,gCAA9BA,+DAInEA,iBAAuCA,wBAAWA,kCAClDA,iBAAwCA,SAA2BA,gCAA3BA,gEAIxCA,iBAAuCA,wBAAWA,kCAClDA,iBAAwCA,SAAgCA,0CAAhCA,sEAG1CA,sCACAA,iBCZG,IAAMC,EAAb,eAAaA,EAAb,0CASE,WACSC,GAAsC,6BAE7CC,gBAFOD,YARTC,mBAA6B,CAAC,UAAY,YAAa,aAAe,cAGtEA,mBAAmB,IAAIC,IACvBD,gBAAqC,GAIUA,EAVjD,uCAeE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAE9B,GADAJ,EAAKK,UAAYA,EACK,MAAlBL,EAAKK,WAC0B,MAA9BL,EAAKK,UAAUC,aACwB,MAAvCN,EAAKK,UAAUC,YAAYC,UAC3BP,EAAKK,UAAUC,YAAYC,SAASC,OAAQ,CAC/CR,EAAKO,SAAWP,EAAKK,UAAUC,YAAYC,SAC3CP,EAAKS,YAAYC,KAAKV,EAAKO,SAASC,QACpC,IAAMG,EAAkBX,EAAKD,UAAUa,oBAAoB,wBAAwBR,UAAU,YAC3FJ,EAAKa,WAAaC,EAASC,qBAAwBC,WACnDhB,EAAKO,SAASU,QAAQ,YAElBC,EAAQC,UADPnB,EAAKa,WAAWK,EAAQA,SACLlB,EAAKD,UAAUqB,wBAAwBpB,EAAKa,WAAWK,EAAQA,SAASG,mBAExE,SAI1BrB,EAAKsB,cAAcC,KAAKZ,GACxBX,EAAKwB,qBAnCb,yBAwCE,WACEtB,KAAKoB,cAAcL,QAAQ,YACzBQ,EAAaC,kBA1CnB,2BA8CE,WACExB,KAAKyB,UAAY,EADN,gBAEWzB,KAAKK,UAFhB,IAEX,2BACEL,KAAKyB,UAAYzB,KAAKyB,UADaC,QACOC,MAAMrB,aAHvCsB,2BA9Cf,0BAsDE,SAAaD,GACX,OAAOA,EAAMrB,OAAS,IAAMN,KAAKyB,YAvDrC,+BA0DE,SAAkBI,GAChB,OAAI7B,KAAKW,YAAcX,KAAKW,WAAWkB,IAAS7B,KAAKW,WAAWkB,GAAMC,QAC7D9B,KAAKW,WAAWkB,GAAMC,QAEtBD,MA9DbE,GAAkDC,kDAArCpC,GAA4BD,qCAA5BC,EAA4BqC,ykBDZzCtC,iBACEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACIA,sBACAA,sBACFA,QAEFA,WACEA,sBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,uBACAA,uBACFA,QACFA,eAzBmBA,wCAsBKA,sDACoCA,gLCZ/CC,EAAb,+CCQasC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCzC,GACtC0C,KACAC,KACAC,KACAC,QAISP,EAAb","names":["i0","SubstanceNaLinkagesComponent","cvService","n","Subject","this","substanceUpdated","subscribe","substance","nucleicAcid","linkages","length","countUpdate","emit","cvSubscription","getDomainVocabulary","vocabulary","response","NUCLEIC_ACID_LINKAGE","dictionary","forEach","linkage","structure","getStructureUrlFragment","fragmentStructure","subscriptions","push","getTotalSites","subscription","unsubscribe","siteCount","l","sites","m","term","display","u","SubstanceCardBase","selectors","SubstanceNaLinkagesModule","d","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-na-linkages/substance-na-linkages.component.html","./src/app/core/substance-details/substance-na-linkages/substance-na-linkages.component.ts","./src/app/core/substance-details/substance-na-linkages/substance-na-linkages.module.ts"],"sourcesContent":["
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Linkage {{getLinkageDisplay(linkage.linkage)}} Structure Site Range {{linkage.sitesShorthand}} Site Count {{getSiteCount(linkage.sites)}}
\r\n
\r\n","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {Linkage, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport {DataDictionaryService} from '@gsrs-core/utils/data-dictionary.service';\r\nimport {ControlledVocabularyService, VocabularyDictionary, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\r\n\r\n@Component({\r\n selector: 'app-substance-na-linkages',\r\n templateUrl: './substance-na-linkages.component.html',\r\n styleUrls: ['./substance-na-linkages.component.scss']\r\n})\r\nexport class SubstanceNaLinkagesComponent extends SubstanceCardBase implements OnInit, OnDestroy {\r\n linkages: Array;\r\n displayedColumns: string[] = ['linkage' , 'Structure', 'Site Range' , 'Site Count' ];\r\n siteCount: number;\r\n vocabulary: any;\r\n substanceUpdated = new Subject();\r\n subscriptions: Array = [];\r\n\r\n\r\n constructor(\r\n public cvService: ControlledVocabularyService,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null\r\n && this.substance.nucleicAcid != null\r\n && this.substance.nucleicAcid.linkages != null\r\n && this.substance.nucleicAcid.linkages.length) {\r\n this.linkages = this.substance.nucleicAcid.linkages;\r\n this.countUpdate.emit(this.linkages.length);\r\n const cvSubscription = this.cvService.getDomainVocabulary('NUCLEIC_ACID_LINKAGE').subscribe(response => {\r\n this.vocabulary = response['NUCLEIC_ACID_LINKAGE'].dictionary;\r\n this.linkages.forEach(linkage => {\r\n if(this.vocabulary[linkage.linkage]) {\r\n linkage.structure = this.cvService.getStructureUrlFragment(this.vocabulary[linkage.linkage].fragmentStructure);\r\n } else {\r\n linkage.structure = null;\r\n }\r\n })\r\n });\r\n this.subscriptions.push(cvSubscription);\r\n this.getTotalSites();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach(subscription => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n\r\n getTotalSites() {\r\n this.siteCount = 0;\r\n for (const linkage of this.linkages) {\r\n this.siteCount = this.siteCount + linkage.sites.length;\r\n }\r\n\r\n }\r\n\r\n getSiteCount(sites: Array): string {\r\n return sites.length + '/' + this.siteCount;\r\n }\r\n\r\n getLinkageDisplay(term: string): string {\r\n if (this.vocabulary && this.vocabulary[term] && this.vocabulary[term].display) {\r\n return this.vocabulary[term].display;\r\n } else {\r\n return term;\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {SubstanceNaLinkagesComponent} from './substance-na-linkages.component';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNaLinkagesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceNaLinkagesComponent]\r\n})\r\nexport class SubstanceNaLinkagesModule { }\r\n"],"sourceRoot":"webpack:///","file":"5718.abf826fd1c1d07c4.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5783.4f99947958be60ca.js b/frontend/src/main/resources/static/5783.0de6a28bc7b8ff0a.js similarity index 92% rename from frontend/src/main/resources/static/5783.4f99947958be60ca.js rename to frontend/src/main/resources/static/5783.0de6a28bc7b8ff0a.js index 10b8e1d..87ff0ab 100644 --- a/frontend/src/main/resources/static/5783.4f99947958be60ca.js +++ b/frontend/src/main/resources/static/5783.0de6a28bc7b8ff0a.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5783],{55783:function(M,l,t){t.r(l),t.d(l,{SubstanceSsgGradeModule:function(){return x}});var g=t(48047),v=t(78069),m=t(36362),f=t(24582),p=t(7318),S=t(2756),b=t(24874),Z=t(50253),e=t(76442),d=t(95758),h=t(66088),C=t(73430);function y(n,o){if(1&n&&(e.TgZ(0,"h2",6),e._uU(1,"References"),e.qZA(),e.TgZ(2,"div",7),e._UZ(3,"app-references-manager",8),e.qZA(),e.TgZ(4,"div",9),e._UZ(5,"span",10),e.TgZ(6,"button",11),e._uU(7,"Close"),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(3),e.Q6J("substance",s.substance)("references",s.substance.specifiedSubstanceG3.grade.references)}}function G(n,o){if(1&n){var s=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e._uU(3,"Grade Name"),e.qZA(),e.TgZ(4,"div",3),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"div",1),e.TgZ(7,"div",2),e._uU(8,"Grade Type"),e.qZA(),e.TgZ(9,"div",3),e._uU(10),e.qZA(),e.qZA(),e.TgZ(11,"div",1),e.TgZ(12,"div",2),e._uU(13,"References"),e.qZA(),e.TgZ(14,"div",3),e.TgZ(15,"button",4),e.NdJ("click",function(){e.CHM(s);var a=e.MAs(18);return e.oxw().openModal(a)}),e._uU(16,"View"),e.qZA(),e.YNc(17,y,8,2,"ng-template",null,5,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&n){var i=e.oxw();e.xp6(5),e.Oqu(i.substance.specifiedSubstanceG3.grade.name),e.xp6(5),e.Oqu(i.substance.specifiedSubstanceG3.grade.type),e.xp6(5),e.Q6J("disabled",i.substance.specifiedSubstanceG3.grade.references.length<=0)}}var T=function(){var n=function(o){(0,f.Z)(i,o);var s=(0,p.Z)(i);function i(u,a,r){var c;return(0,v.Z)(this,i),(c=s.call(this)).dialog=u,c.gaService=a,c.overlayContainerService=r,c.grade={},c.substanceUpdated=new Z.x,c.count=0,c}return(0,g.Z)(i,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(r){a.substance=r,null!=a.substance&&null!=a.substance.specifiedSubstanceG3&&a.substance.specifiedSubstanceG3.grade&&(a.grade=a.substance.specifiedSubstanceG3.grade,a.count=1),a.countUpdate.emit(a.count)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"openModal",value:function(a){var r=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var c=this.dialog.open(a,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",c.afterClosed().subscribe(function(O){r.overlayContainer.style.zIndex=null})}}]),i}(S.B);return n.\u0275fac=function(s){return new(s||n)(e.Y36(d.uw),e.Y36(b.$),e.Y36(h.Xj))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-ssg-grade"]],features:[e.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"]],template:function(s,i){1&s&&e.YNc(0,G,19,3,"div",0),2&s&&e.Q6J("ngIf",i.substance.specifiedSubstanceG3.grade)},directives:[m.O5,d.uh,d.xY,C.C,d.H8,d.ZT],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),n}(),A=t(64061),U=t(38277),x=function(){var n=(0,g.Z)(function o(){(0,v.Z)(this,o)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[m.ez,A.o.forChild(T),U.V,d.Is]]}),n}()}}]); -//# sourceMappingURL=5783.4f99947958be60ca.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5783],{55783:function(M,l,t){t.r(l),t.d(l,{SubstanceSsgGradeModule:function(){return x}});var g=t(1884),v=t(39117),m=t(36362),f=t(46751),p=t(56101),S=t(2756),b=t(24874),Z=t(50253),e=t(86613),d=t(95758),h=t(54244),C=t(73430);function y(n,o){if(1&n&&(e.TgZ(0,"h2",6),e._uU(1,"References"),e.qZA(),e.TgZ(2,"div",7),e._UZ(3,"app-references-manager",8),e.qZA(),e.TgZ(4,"div",9),e._UZ(5,"span",10),e.TgZ(6,"button",11),e._uU(7,"Close"),e.qZA(),e.qZA()),2&n){var s=e.oxw(2);e.xp6(3),e.Q6J("substance",s.substance)("references",s.substance.specifiedSubstanceG3.grade.references)}}function G(n,o){if(1&n){var s=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e._uU(3,"Grade Name"),e.qZA(),e.TgZ(4,"div",3),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"div",1),e.TgZ(7,"div",2),e._uU(8,"Grade Type"),e.qZA(),e.TgZ(9,"div",3),e._uU(10),e.qZA(),e.qZA(),e.TgZ(11,"div",1),e.TgZ(12,"div",2),e._uU(13,"References"),e.qZA(),e.TgZ(14,"div",3),e.TgZ(15,"button",4),e.NdJ("click",function(){e.CHM(s);var a=e.MAs(18);return e.oxw().openModal(a)}),e._uU(16,"View"),e.qZA(),e.YNc(17,y,8,2,"ng-template",null,5,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&n){var i=e.oxw();e.xp6(5),e.Oqu(i.substance.specifiedSubstanceG3.grade.name),e.xp6(5),e.Oqu(i.substance.specifiedSubstanceG3.grade.type),e.xp6(5),e.Q6J("disabled",i.substance.specifiedSubstanceG3.grade.references.length<=0)}}var T=function(){var n=function(o){(0,f.Z)(i,o);var s=(0,p.Z)(i);function i(u,a,r){var c;return(0,v.Z)(this,i),(c=s.call(this)).dialog=u,c.gaService=a,c.overlayContainerService=r,c.grade={},c.substanceUpdated=new Z.x,c.count=0,c}return(0,g.Z)(i,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(r){a.substance=r,null!=a.substance&&null!=a.substance.specifiedSubstanceG3&&a.substance.specifiedSubstanceG3.grade&&(a.grade=a.substance.specifiedSubstanceG3.grade,a.count=1),a.countUpdate.emit(a.count)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"openModal",value:function(a){var r=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var c=this.dialog.open(a,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",c.afterClosed().subscribe(function(O){r.overlayContainer.style.zIndex=null})}}]),i}(S.B);return n.\u0275fac=function(s){return new(s||n)(e.Y36(d.uw),e.Y36(b.$),e.Y36(h.Xj))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-ssg-grade"]],features:[e.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"]],template:function(s,i){1&s&&e.YNc(0,G,19,3,"div",0),2&s&&e.Q6J("ngIf",i.substance.specifiedSubstanceG3.grade)},directives:[m.O5,d.uh,d.xY,C.C,d.H8,d.ZT],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),n}(),A=t(64061),U=t(38277),x=function(){var n=(0,g.Z)(function o(){(0,v.Z)(this,o)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[m.ez,A.o.forChild(T),U.V,d.Is]]}),n}()}}]); +//# sourceMappingURL=5783.0de6a28bc7b8ff0a.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5783.4f99947958be60ca.js.map b/frontend/src/main/resources/static/5783.0de6a28bc7b8ff0a.js.map similarity index 99% rename from frontend/src/main/resources/static/5783.4f99947958be60ca.js.map rename to frontend/src/main/resources/static/5783.0de6a28bc7b8ff0a.js.map index bf7e004..7c6c432 100644 --- a/frontend/src/main/resources/static/5783.4f99947958be60ca.js.map +++ b/frontend/src/main/resources/static/5783.0de6a28bc7b8ff0a.js.map @@ -1 +1 @@ -{"version":3,"mappings":"6UAkBQA,gBAAqBA,sBAAUA,QAC/BA,iBACEA,oCAEFA,QACAA,iBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,6BAN0BA,wCAAuB,uGApBzDA,eACEA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBAAmBA,SAA6CA,QAClEA,QAEAA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBAAmBA,UAA6CA,QAClEA,QAEAA,kBACEA,kBAAkBA,uBAAUA,QAC5BA,kBACEA,qBAA2DA,iEAASC,eACOD,iBAAIA,QAE/EA,2CAWFA,QACFA,QACFA,8BA3BuBA,4DAKAA,4DAOfA,wFCDD,IAAME,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,QAAe,GACfA,mBAAmB,IAAIC,IAEvBD,QAAQ,EAK2CA,EATrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA4D,MAAvCD,EAAKC,UAAUC,sBACxCF,EAAKC,UAAUC,qBAAqBC,QACvCH,EAAKG,MAAQH,EAAKC,UAAUC,qBAAqBC,MACjDH,EAAKI,MAAQ,GAEfJ,EAAKK,YAAYC,KAAKN,EAAKI,SAE7BP,KAAKU,iBAAmBV,KAAKH,wBAAwBc,wBAxBzD,uBA2BE,SAAUC,GAAW,WAEnBZ,KAAKJ,UAAUiB,UAAUb,KAAKc,uBAAwB,SAAU,mBAEhE,IAAMC,EAAYf,KAAKL,OAAOqB,KAAKJ,EAAa,CAC9CK,SAAU,MACVC,SAAU,QAEZlB,KAAKU,iBAAiBS,MAAMC,OAAS,OAErCL,EAAUM,cAAcnB,UAAU,YAChCoB,EAAKZ,iBAAiBS,MAAMC,OAAS,WAtC3CG,GAAgDC,kDAAnC9B,GAA0BF,6DAA1BE,EAA0B+B,obDdvCjC,6BAAMA,uJCcOE,EAAb,yBCIagC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCnC,GACtCoC,IACAC,SAMSL,EAAb","names":["i0","ctx_r3","SubstanceSsgGradeComponent","dialog","gaService","overlayContainerService","c","Subject","this","substanceUpdated","subscribe","a","substance","specifiedSubstanceG3","grade","count","countUpdate","emit","overlayContainer","getContainerElement","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","r","i","SubstanceCardBase","selectors","SubstanceSsgGradeModule","g","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule"],"sources":["./src/app/core/substance-details/substance-ssg-grade/substance-ssg-grade.component.html","./src/app/core/substance-details/substance-ssg-grade/substance-ssg-grade.component.ts","./src/app/core/substance-details/substance-ssg-grade/substance-ssg-grade.module.ts"],"sourcesContent":["
\n
\n
Grade Name
\n
{{substance.specifiedSubstanceG3.grade.name}}
\n
\n\n
\n
Grade Type
\n
{{substance.specifiedSubstanceG3.grade.type}}
\n
\n\n
\n
References
\n
\n \n\n \n

References

\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
","import { Component, OnInit} from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport { SubstanceDetail, Grade} from '../../substance/substance.model';\nimport { MatDialog} from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subject } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-ssg-grade',\n templateUrl: './substance-ssg-grade.component.html',\n styleUrls: ['./substance-ssg-grade.component.scss']\n})\n\nexport class SubstanceSsgGradeComponent extends SubstanceCardBase implements OnInit {\n grade: Grade = {};\n substanceUpdated = new Subject();\n private overlayContainer: HTMLElement;\n count = 0;\n\n constructor(\n private dialog: MatDialog,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null && this.substance.specifiedSubstanceG3 != null\n && this.substance.specifiedSubstanceG3.grade) {\n this.grade = this.substance.specifiedSubstanceG3.grade;\n this.count = 1;\n }\n this.countUpdate.emit(this.count);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n openModal(templateRef) {\n\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\n\n const dialogRef = this.dialog.open(templateRef, {\n minWidth: '40%',\n maxWidth: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(result => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceSsgGradeComponent } from './substance-ssg-grade.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReferencesManagerModule } from '../../references-manager/references-manager.module';\nimport { MatDialogModule } from '@angular/material/dialog';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsgGradeComponent),\n ReferencesManagerModule,\n MatDialogModule\n ],\n declarations: [\n SubstanceSsgGradeComponent\n ]\n})\nexport class SubstanceSsgGradeModule { }\n"],"sourceRoot":"webpack:///","file":"5783.4f99947958be60ca.js"} \ No newline at end of file +{"version":3,"mappings":"6UAkBQA,gBAAqBA,sBAAUA,QAC/BA,iBACEA,oCAEFA,QACAA,iBACEA,mBACAA,qBAA+DA,iBAAKA,QACtEA,6BAN0BA,wCAAuB,uGApBzDA,eACEA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBAAmBA,SAA6CA,QAClEA,QAEAA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,iBAAmBA,UAA6CA,QAClEA,QAEAA,kBACEA,kBAAkBA,uBAAUA,QAC5BA,kBACEA,qBAA2DA,iEAASC,eACOD,iBAAIA,QAE/EA,2CAWFA,QACFA,QACFA,8BA3BuBA,4DAKAA,4DAOfA,wFCDD,IAAME,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,QAAe,GACfA,mBAAmB,IAAIC,IAEvBD,QAAQ,EAK2CA,EATrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA4D,MAAvCD,EAAKC,UAAUC,sBACxCF,EAAKC,UAAUC,qBAAqBC,QACvCH,EAAKG,MAAQH,EAAKC,UAAUC,qBAAqBC,MACjDH,EAAKI,MAAQ,GAEfJ,EAAKK,YAAYC,KAAKN,EAAKI,SAE7BP,KAAKU,iBAAmBV,KAAKH,wBAAwBc,wBAxBzD,uBA2BE,SAAUC,GAAW,WAEnBZ,KAAKJ,UAAUiB,UAAUb,KAAKc,uBAAwB,SAAU,mBAEhE,IAAMC,EAAYf,KAAKL,OAAOqB,KAAKJ,EAAa,CAC9CK,SAAU,MACVC,SAAU,QAEZlB,KAAKU,iBAAiBS,MAAMC,OAAS,OAErCL,EAAUM,cAAcnB,UAAU,YAChCoB,EAAKZ,iBAAiBS,MAAMC,OAAS,WAtC3CG,GAAgDC,kDAAnC9B,GAA0BF,6DAA1BE,EAA0B+B,obDdvCjC,6BAAMA,uJCcOE,EAAb,yBCIagC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCnC,GACtCoC,IACAC,SAMSL,EAAb","names":["i0","ctx_r3","SubstanceSsgGradeComponent","dialog","gaService","overlayContainerService","c","Subject","this","substanceUpdated","subscribe","a","substance","specifiedSubstanceG3","grade","count","countUpdate","emit","overlayContainer","getContainerElement","templateRef","sendEvent","analyticsEventCategory","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","r","i","SubstanceCardBase","selectors","SubstanceSsgGradeModule","g","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule"],"sources":["./src/app/core/substance-details/substance-ssg-grade/substance-ssg-grade.component.html","./src/app/core/substance-details/substance-ssg-grade/substance-ssg-grade.component.ts","./src/app/core/substance-details/substance-ssg-grade/substance-ssg-grade.module.ts"],"sourcesContent":["
\n
\n
Grade Name
\n
{{substance.specifiedSubstanceG3.grade.name}}
\n
\n\n
\n
Grade Type
\n
{{substance.specifiedSubstanceG3.grade.type}}
\n
\n\n
\n
References
\n
\n \n\n \n

References

\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
","import { Component, OnInit} from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport { SubstanceDetail, Grade} from '../../substance/substance.model';\nimport { MatDialog} from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subject } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-ssg-grade',\n templateUrl: './substance-ssg-grade.component.html',\n styleUrls: ['./substance-ssg-grade.component.scss']\n})\n\nexport class SubstanceSsgGradeComponent extends SubstanceCardBase implements OnInit {\n grade: Grade = {};\n substanceUpdated = new Subject();\n private overlayContainer: HTMLElement;\n count = 0;\n\n constructor(\n private dialog: MatDialog,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null && this.substance.specifiedSubstanceG3 != null\n && this.substance.specifiedSubstanceG3.grade) {\n this.grade = this.substance.specifiedSubstanceG3.grade;\n this.count = 1;\n }\n this.countUpdate.emit(this.count);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n openModal(templateRef) {\n\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\n\n const dialogRef = this.dialog.open(templateRef, {\n minWidth: '40%',\n maxWidth: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(result => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceSsgGradeComponent } from './substance-ssg-grade.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReferencesManagerModule } from '../../references-manager/references-manager.module';\nimport { MatDialogModule } from '@angular/material/dialog';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsgGradeComponent),\n ReferencesManagerModule,\n MatDialogModule\n ],\n declarations: [\n SubstanceSsgGradeComponent\n ]\n})\nexport class SubstanceSsgGradeModule { }\n"],"sourceRoot":"webpack:///","file":"5783.0de6a28bc7b8ff0a.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5846.339820d4eea24497.js b/frontend/src/main/resources/static/5846.339820d4eea24497.js deleted file mode 100644 index 01cf637..0000000 --- a/frontend/src/main/resources/static/5846.339820d4eea24497.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5846],{65846:function(W,f,n){n.r(f),n.d(f,{SubstanceFormOtherLinksModule:function(){return G}});var u=n(48047),m=n(78069),d=n(36362),O=n(75143),C=n(7168),h=n(19975),v=n(65590),p=n(87317),b=n(94673),y=n(44770),g=n(90587),L=n(26439),T=n(43365),k=n(40089),Z=n(31959),S=n(24582),F=n(7318),x=n(79550),D=n(40104),M=n(71896),t=n(76442),A=n(78444),P=n(51279),I=(n(27299),n(63169)),U=n(18291),E=n(39401),J=n(33567),Y=n(95758),N=n(66088),Q=n(16667),V=n(14900);function $(o,a){if(1&o){var i=t.EpF();t.TgZ(0,"div",13),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",14),t.NdJ("click",function(){return t.CHM(i),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",15),t.qZA(),t.qZA()}}var j=function(){var o=function(){function a(i,e,s,r,c){(0,m.Z)(this,a),this.cvService=i,this.dialog=e,this.utilsService=s,this.overlayContainerService=r,this.substanceFormService=c,this.linkDeleted=new t.vpe,this.subscriptions=[]}return(0,u.Z)(a,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"link",get:function(){return this.privateLink},set:function(e){this.privateLink=e}},{key:"updateDisplay",value:function(){this.siteDisplay=this.substanceFormService.siteString(this.privateLink.sites)}},{key:"deleteLink",value:function(){var e=this;this.privateLink.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){e.linkDeleted.emit(e.link),e.substanceFormService.emitOtherLinkUpdate()},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateLink.$$deletedCode}},{key:"getVocabularies",value:function(){var e=this,s=this.cvService.getDomainVocabulary("OTHER_LINKAGE_TYPE").subscribe(function(r){e.linkageTypes=r.OTHER_LINKAGE_TYPE.list});this.subscriptions.push(s)}},{key:"openDialog",value:function(){var e=this,s=this.dialog.open(E.r,{data:{card:"other",link:this.privateLink.sites},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var r=s.afterClosed().subscribe(function(l){e.overlayContainer.style.zIndex=null,l&&(e.privateLink.sites=l,e.substanceFormService.emitOtherLinkUpdate()),e.updateDisplay()});s.backdropClick().subscribe(function(l){}).unsubscribe(),this.subscriptions.push(r)}}]),a}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(U.I),t.Y36(Y.uw),t.Y36(I.FW),t.Y36(N.Xj),t.Y36(J.B))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-other-links-form"]],inputs:{link:"link"},outputs:{linkDeleted:"linkDeleted"},decls:15,vars:4,consts:[[1,"link-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[1,"type"],["domain","OTHER_LINKAGE_TYPE","title","Sequence Type",3,"model","valueChange"],[1,"links"],[1,"label"],["mat-icon-button","","matTooltip","Select sites from display",3,"click"],["svgIcon","edit"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.YNc(1,$,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"button",4),t.NdJ("click",function(){return e.deleteLink()}),t._UZ(5,"mat-icon",5),t.qZA(),t.qZA(),t.TgZ(6,"div",6),t.TgZ(7,"app-cv-input",7),t.NdJ("valueChange",function(r){return e.link.linkageType=r}),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t._uU(10,"link"),t.qZA(),t._uU(11),t.TgZ(12,"button",10),t.NdJ("click",function(){return e.openDialog()}),t._UZ(13,"mat-icon",11),t.qZA(),t.qZA(),t.qZA(),t._UZ(14,"app-audit-info",12),t.qZA()),2&i&&(t.xp6(1),t.Q6J("ngIf",e.link.$$deletedCode),t.xp6(6),t.Q6J("model",e.link.linkageType),t.xp6(4),t.hij(" ",e.siteDisplay," "),t.xp6(3),t.Q6J("source",e.link))},directives:[d.O5,p.lW,k.gM,v.Hw,Q.S,V.n],styles:[".link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{width:40%}.selectedSite[_ngcontent-%COMP%]{padding-left:2px;padding-right:2px}"]}),o}();function H(o,a){1&o&&t._UZ(0,"mat-divider",8),2&o&&t.Q6J("inset",!0)}function z(o,a){if(1&o){var i=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-other-links-form",6),t.NdJ("linkDeleted",function(l){return t.CHM(i),t.oxw().deleteLink(l)}),t.qZA(),t.YNc(2,H,1,1,"mat-divider",7),t.qZA()}if(2&o){var e=a.$implicit,s=a.last;t.Q6J("id","substance-other-links-"+a.index),t.xp6(1),t.Q6J("link",e),t.xp6(1),t.Q6J("ngIf",!s)}}var X=function(){var o=function(a){(0,S.Z)(e,a);var i=(0,F.Z)(e);function e(s,r,c){var l;return(0,m.Z)(this,e),(l=i.call(this,c)).substanceFormOtherLinksService=s,l.scrollToService=r,l.gaService=c,l.subscriptions=[],l.analyticsEventCategory="substance form otherLinks",l}return(0,u.Z)(e,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Other Links")}},{key:"ngAfterViewInit",value:function(){var r=this,c=this.substanceFormOtherLinksService.substanceOtherLinks.subscribe(function(l){r.otherLinks=l});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"addItem",value:function(){this.addOtherLink()}},{key:"addOtherLink",value:function(){var r=this;this.substanceFormOtherLinksService.addSubstanceOtherLink(),setTimeout(function(){r.scrollToService.scrollToElement("substance-other-links-0","center")})}},{key:"deleteLink",value:function(r){this.substanceFormOtherLinksService.deleteSubstanceOtherLink(r)}}]),e}(x.u);return o.\u0275fac=function(i){return new(i||o)(t.Y36(M.X),t.Y36(A.i),t.Y36(D.$))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-form-other-links-card"]],features:[t.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"link","linkDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,z,3,3,"div",2),t.TgZ(3,"div",0),t._UZ(4,"span",1),t.TgZ(5,"button",3),t.NdJ("click",function(){return e.addOtherLink()}),t._uU(6," Add link "),t._UZ(7,"mat-icon",4),t.qZA(),t.qZA()),2&i&&(t.xp6(2),t.Q6J("ngForOf",e.otherLinks))},directives:[d.sg,P.P,j,d.O5,h.d,p.lW,v.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#0000001f}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}"]}),o}(),R=n(91434),G=(n(64061),function(){var o=(0,u.Z)(function a(){(0,m.Z)(this,a)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[d.ez,O.o0.forChild(X),C.O,h.t,v.Ps,p.ot,b.w,y.lN,g.UX,g.u5,L.TU,k.AV,Z.vV,T.c,R.LD]]}),o}())}}]); -//# sourceMappingURL=5846.339820d4eea24497.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5846.f6dcd7c74d37326c.js b/frontend/src/main/resources/static/5846.f6dcd7c74d37326c.js new file mode 100644 index 0000000..e17604d --- /dev/null +++ b/frontend/src/main/resources/static/5846.f6dcd7c74d37326c.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5846],{65846:function(W,h,n){n.r(h),n.d(h,{SubstanceFormOtherLinksModule:function(){return G}});var u=n(1884),m=n(39117),d=n(36362),O=n(75143),b=n(7168),f=n(19975),v=n(65590),p=n(87317),C=n(94673),y=n(44770),g=n(90587),L=n(26439),T=n(43365),k=n(40089),Z=n(31959),S=n(46751),x=n(56101),F=n(79550),D=n(40104),M=n(71896),t=n(86613),A=n(78444),P=n(51279),I=(n(27299),n(63169)),U=n(18291),E=n(39401),J=n(33567),Y=n(95758),N=n(54244),Q=n(16667),V=n(14900);function $(o,a){if(1&o){var i=t.EpF();t.TgZ(0,"div",13),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",14),t.NdJ("click",function(){return t.CHM(i),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",15),t.qZA(),t.qZA()}}var j=function(){var o=function(){function a(i,e,s,r,c){(0,m.Z)(this,a),this.cvService=i,this.dialog=e,this.utilsService=s,this.overlayContainerService=r,this.substanceFormService=c,this.linkDeleted=new t.vpe,this.subscriptions=[]}return(0,u.Z)(a,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"link",get:function(){return this.privateLink},set:function(e){this.privateLink=e}},{key:"updateDisplay",value:function(){this.siteDisplay=this.substanceFormService.siteString(this.privateLink.sites)}},{key:"deleteLink",value:function(){var e=this;this.privateLink.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){e.linkDeleted.emit(e.link),e.substanceFormService.emitOtherLinkUpdate()},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateLink.$$deletedCode}},{key:"getVocabularies",value:function(){var e=this,s=this.cvService.getDomainVocabulary("OTHER_LINKAGE_TYPE").subscribe(function(r){e.linkageTypes=r.OTHER_LINKAGE_TYPE.list});this.subscriptions.push(s)}},{key:"openDialog",value:function(){var e=this,s=this.dialog.open(E.r,{data:{card:"other",link:this.privateLink.sites},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var r=s.afterClosed().subscribe(function(l){e.overlayContainer.style.zIndex=null,l&&(e.privateLink.sites=l,e.substanceFormService.emitOtherLinkUpdate()),e.updateDisplay()});s.backdropClick().subscribe(function(l){}).unsubscribe(),this.subscriptions.push(r)}}]),a}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(U.I),t.Y36(Y.uw),t.Y36(I.FW),t.Y36(N.Xj),t.Y36(J.B))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-other-links-form"]],inputs:{link:"link"},outputs:{linkDeleted:"linkDeleted"},decls:15,vars:4,consts:[[1,"link-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[1,"type"],["domain","OTHER_LINKAGE_TYPE","title","Sequence Type",3,"model","valueChange"],[1,"links"],[1,"label"],["mat-icon-button","","matTooltip","Select sites from display",3,"click"],["svgIcon","edit"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.YNc(1,$,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"button",4),t.NdJ("click",function(){return e.deleteLink()}),t._UZ(5,"mat-icon",5),t.qZA(),t.qZA(),t.TgZ(6,"div",6),t.TgZ(7,"app-cv-input",7),t.NdJ("valueChange",function(r){return e.link.linkageType=r}),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t._uU(10,"link"),t.qZA(),t._uU(11),t.TgZ(12,"button",10),t.NdJ("click",function(){return e.openDialog()}),t._UZ(13,"mat-icon",11),t.qZA(),t.qZA(),t.qZA(),t._UZ(14,"app-audit-info",12),t.qZA()),2&i&&(t.xp6(1),t.Q6J("ngIf",e.link.$$deletedCode),t.xp6(6),t.Q6J("model",e.link.linkageType),t.xp6(4),t.hij(" ",e.siteDisplay," "),t.xp6(3),t.Q6J("source",e.link))},directives:[d.O5,p.lW,k.gM,v.Hw,Q.S,V.n],styles:[".link-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{width:40%}.selectedSite[_ngcontent-%COMP%]{padding-left:2px;padding-right:2px}"]}),o}();function H(o,a){1&o&&t._UZ(0,"mat-divider",8),2&o&&t.Q6J("inset",!0)}function z(o,a){if(1&o){var i=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"app-other-links-form",6),t.NdJ("linkDeleted",function(l){return t.CHM(i),t.oxw().deleteLink(l)}),t.qZA(),t.YNc(2,H,1,1,"mat-divider",7),t.qZA()}if(2&o){var e=a.$implicit,s=a.last;t.Q6J("id","substance-other-links-"+a.index),t.xp6(1),t.Q6J("link",e),t.xp6(1),t.Q6J("ngIf",!s)}}var X=function(){var o=function(a){(0,S.Z)(e,a);var i=(0,x.Z)(e);function e(s,r,c){var l;return(0,m.Z)(this,e),(l=i.call(this,c)).substanceFormOtherLinksService=s,l.scrollToService=r,l.gaService=c,l.subscriptions=[],l.analyticsEventCategory="substance form otherLinks",l}return(0,u.Z)(e,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Other Links")}},{key:"ngAfterViewInit",value:function(){var r=this,c=this.substanceFormOtherLinksService.substanceOtherLinks.subscribe(function(l){r.otherLinks=l});this.subscriptions.push(c)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"addItem",value:function(){this.addOtherLink()}},{key:"addOtherLink",value:function(){var r=this;this.substanceFormOtherLinksService.addSubstanceOtherLink(),setTimeout(function(){r.scrollToService.scrollToElement("substance-other-links-0","center")})}},{key:"deleteLink",value:function(r){this.substanceFormOtherLinksService.deleteSubstanceOtherLink(r)}}]),e}(F.u);return o.\u0275fac=function(i){return new(i||o)(t.Y36(M.X),t.Y36(A.i),t.Y36(D.$))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-form-other-links-card"]],features:[t.qOj],decls:8,vars:1,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"link","linkDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,z,3,3,"div",2),t.TgZ(3,"div",0),t._UZ(4,"span",1),t.TgZ(5,"button",3),t.NdJ("click",function(){return e.addOtherLink()}),t._uU(6," Add link "),t._UZ(7,"mat-icon",4),t.qZA(),t.qZA()),2&i&&(t.xp6(2),t.Q6J("ngForOf",e.otherLinks))},directives:[d.sg,P.P,j,d.O5,f.d,p.lW,v.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--box-shadow-color-3)}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}"]}),o}(),R=n(91434),G=(n(64061),function(){var o=(0,u.Z)(function a(){(0,m.Z)(this,a)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[d.ez,O.o0.forChild(X),b.O,f.t,v.Ps,p.ot,C.w,y.lN,g.UX,g.u5,L.TU,k.AV,Z.vV,T.c,R.LD]]}),o}())}}]); +//# sourceMappingURL=5846.f6dcd7c74d37326c.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5846.339820d4eea24497.js.map b/frontend/src/main/resources/static/5846.f6dcd7c74d37326c.js.map similarity index 98% rename from frontend/src/main/resources/static/5846.339820d4eea24497.js.map rename to frontend/src/main/resources/static/5846.f6dcd7c74d37326c.js.map index f35e8ea..36b7c4a 100644 --- a/frontend/src/main/resources/static/5846.339820d4eea24497.js.map +++ b/frontend/src/main/resources/static/5846.f6dcd7c74d37326c.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r1","OtherLinksFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","m","this","EventEmitter","getVocabularies","overlayContainer","getContainerElement","updateDisplay","subscriptions","forEach","subscription","unsubscribe","privateLink","set","link","siteDisplay","siteString","sites","$$deletedCode","newUUID","deleteTimer","setTimeout","e","linkDeleted","emit","emitOtherLinkUpdate","clearTimeout","getDomainVocabulary","subscribe","linkageTypes","response","OTHER_LINKAGE_TYPE","list","push","dialogRef","open","SubunitSelectorDialogComponent","data","card","width","panelClass","style","zIndex","dialogSubscription","afterClosed","newLinks","backdropClick","a","selectors","ctx","ctx_r5","SubstanceFormOtherLinksCardComponent","substanceFormOtherLinksService","scrollToService","gaService","l","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","otherLinksSubscription","substanceOtherLinks","r","otherLinks","componentDestroyed","addOtherLink","addSubstanceOtherLink","scrollToElement","deleteSubstanceOtherLink","SubstanceCardBaseFilteredList","SubstanceFormOtherLinksModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/other-links/other-links-form.component.html","./src/app/core/substance-form/other-links/other-links-form.component.ts","./src/app/core/substance-form/other-links/substance-form-other-links-card.component.html","./src/app/core/substance-form/other-links/substance-form-other-links-card.component.ts","./src/app/core/substance-form/other-links/substance-form-other-links.module.ts"],"sourcesContent":["\n","import {Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {Link, SubstanceReference} from '@gsrs-core/substance';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {Subscription} from 'rxjs';\nimport {SubunitSelectorComponent} from '@gsrs-core/substance-form/subunit-selector/subunit-selector.component';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\n\n@Component({\n selector: 'app-other-links-form',\n templateUrl: './other-links-form.component.html',\n styleUrls: ['./other-links-form.component.scss']\n})\nexport class OtherLinksFormComponent implements OnInit, OnDestroy {\n\n private privateLink: Link;\n @Output() linkDeleted = new EventEmitter();\n deleteTimer: any;\n linkageTypes: any;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.updateDisplay();\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set link(link: Link) {\n this.privateLink = link;\n }\n\n get link(): Link {\n return this.privateLink;\n }\n updateDisplay(): void {\n this.siteDisplay = this.substanceFormService.siteString(this.privateLink.sites);\n }\n deleteLink(): void {\n this.privateLink.$$deletedCode = this.utilsService.newUUID();\n this.deleteTimer = setTimeout(() => {\n this.linkDeleted.emit(this.link);\n this.substanceFormService.emitOtherLinkUpdate();\n }, 2000);\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateLink.$$deletedCode;\n }\n\n getVocabularies(): void {\n const subscription = this.cvService.getDomainVocabulary('OTHER_LINKAGE_TYPE').subscribe(response => {\n this.linkageTypes = response['OTHER_LINKAGE_TYPE'].list;\n });\n this.subscriptions.push(subscription);\n }\n\n openDialog(): void {\n\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'other', 'link': this.privateLink.sites},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n this.privateLink.sites = newLinks;\n this.substanceFormService.emitOtherLinkUpdate();\n }\n this.updateDisplay();\n });\n const dialogSubscription2 = dialogRef.backdropClick().subscribe(sub => { }\n );\n\n dialogSubscription2.unsubscribe();\n this.subscriptions.push(dialogSubscription);\n }\n\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n
\n \n
\n\n\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Link} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormOtherLinksService } from './substance-form-other-links.service';\n\n@Component({\n selector: 'app-substance-form-other-links-card',\n templateUrl: './substance-form-other-links-card.component.html',\n styleUrls: ['./substance-form-other-links-card.component.scss']\n})\nexport class SubstanceFormOtherLinksCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n otherLinks: Array;\n private subscriptions: Array = [];\n constructor(\n private substanceFormOtherLinksService: SubstanceFormOtherLinksService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form otherLinks';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Other Links');\n }\n\n ngAfterViewInit() {\n const otherLinksSubscription = this.substanceFormOtherLinksService.substanceOtherLinks.subscribe(otherLinks => {\n this.otherLinks = otherLinks;\n });\n this.subscriptions.push(otherLinksSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addOtherLink();\n }\n\n addOtherLink(): void {\n this.substanceFormOtherLinksService.addSubstanceOtherLink();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-other-links-0`, 'center');\n });\n }\n\n deleteLink(link: Link): void {\n this.substanceFormOtherLinksService.deleteSubstanceOtherLink(link);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {SubstanceFormOtherLinksCardComponent} from '@gsrs-core/substance-form/other-links/substance-form-other-links-card.component';\nimport {MatSelectModule} from '@angular/material/select';\nimport { OtherLinksFormComponent } from './other-links-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormOtherLinksCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormOtherLinksCardComponent,\n OtherLinksFormComponent\n ]\n})\nexport class SubstanceFormOtherLinksModule { }\n"],"sourceRoot":"webpack:///","file":"5846.339820d4eea24497.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r1","OtherLinksFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","m","this","EventEmitter","getVocabularies","overlayContainer","getContainerElement","updateDisplay","subscriptions","forEach","subscription","unsubscribe","privateLink","set","link","siteDisplay","siteString","sites","$$deletedCode","newUUID","deleteTimer","setTimeout","e","linkDeleted","emit","emitOtherLinkUpdate","clearTimeout","getDomainVocabulary","subscribe","linkageTypes","response","OTHER_LINKAGE_TYPE","list","push","dialogRef","open","SubunitSelectorDialogComponent","data","card","width","panelClass","style","zIndex","dialogSubscription","afterClosed","newLinks","backdropClick","a","selectors","ctx","ctx_r5","SubstanceFormOtherLinksCardComponent","substanceFormOtherLinksService","scrollToService","gaService","l","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","otherLinksSubscription","substanceOtherLinks","r","otherLinks","componentDestroyed","addOtherLink","addSubstanceOtherLink","scrollToElement","deleteSubstanceOtherLink","SubstanceCardBaseFilteredList","SubstanceFormOtherLinksModule","u","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/other-links/other-links-form.component.html","./src/app/core/substance-form/other-links/other-links-form.component.ts","./src/app/core/substance-form/other-links/substance-form-other-links-card.component.html","./src/app/core/substance-form/other-links/substance-form-other-links-card.component.ts","./src/app/core/substance-form/other-links/substance-form-other-links.module.ts"],"sourcesContent":["\n","import {Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {Link, SubstanceReference} from '@gsrs-core/substance';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {Subscription} from 'rxjs';\nimport {SubunitSelectorComponent} from '@gsrs-core/substance-form/subunit-selector/subunit-selector.component';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\n\n@Component({\n selector: 'app-other-links-form',\n templateUrl: './other-links-form.component.html',\n styleUrls: ['./other-links-form.component.scss']\n})\nexport class OtherLinksFormComponent implements OnInit, OnDestroy {\n\n private privateLink: Link;\n @Output() linkDeleted = new EventEmitter();\n deleteTimer: any;\n linkageTypes: any;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.updateDisplay();\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set link(link: Link) {\n this.privateLink = link;\n }\n\n get link(): Link {\n return this.privateLink;\n }\n updateDisplay(): void {\n this.siteDisplay = this.substanceFormService.siteString(this.privateLink.sites);\n }\n deleteLink(): void {\n this.privateLink.$$deletedCode = this.utilsService.newUUID();\n this.deleteTimer = setTimeout(() => {\n this.linkDeleted.emit(this.link);\n this.substanceFormService.emitOtherLinkUpdate();\n }, 2000);\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateLink.$$deletedCode;\n }\n\n getVocabularies(): void {\n const subscription = this.cvService.getDomainVocabulary('OTHER_LINKAGE_TYPE').subscribe(response => {\n this.linkageTypes = response['OTHER_LINKAGE_TYPE'].list;\n });\n this.subscriptions.push(subscription);\n }\n\n openDialog(): void {\n\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'other', 'link': this.privateLink.sites},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n this.privateLink.sites = newLinks;\n this.substanceFormService.emitOtherLinkUpdate();\n }\n this.updateDisplay();\n });\n const dialogSubscription2 = dialogRef.backdropClick().subscribe(sub => { }\n );\n\n dialogSubscription2.unsubscribe();\n this.subscriptions.push(dialogSubscription);\n }\n\n\n}\n","
\n \n \n
\n
\n \n \n
\n\n
\n \n
\n\n\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Link} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { SubstanceFormOtherLinksService } from './substance-form-other-links.service';\n\n@Component({\n selector: 'app-substance-form-other-links-card',\n templateUrl: './substance-form-other-links-card.component.html',\n styleUrls: ['./substance-form-other-links-card.component.scss']\n})\nexport class SubstanceFormOtherLinksCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n otherLinks: Array;\n private subscriptions: Array = [];\n constructor(\n private substanceFormOtherLinksService: SubstanceFormOtherLinksService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form otherLinks';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Other Links');\n }\n\n ngAfterViewInit() {\n const otherLinksSubscription = this.substanceFormOtherLinksService.substanceOtherLinks.subscribe(otherLinks => {\n this.otherLinks = otherLinks;\n });\n this.subscriptions.push(otherLinksSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addOtherLink();\n }\n\n addOtherLink(): void {\n this.substanceFormOtherLinksService.addSubstanceOtherLink();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-other-links-0`, 'center');\n });\n }\n\n deleteLink(link: Link): void {\n this.substanceFormOtherLinksService.deleteSubstanceOtherLink(link);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {SubstanceFormOtherLinksCardComponent} from '@gsrs-core/substance-form/other-links/substance-form-other-links-card.component';\nimport {MatSelectModule} from '@angular/material/select';\nimport { OtherLinksFormComponent } from './other-links-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormOtherLinksCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormOtherLinksCardComponent,\n OtherLinksFormComponent\n ]\n})\nexport class SubstanceFormOtherLinksModule { }\n"],"sourceRoot":"webpack:///","file":"5846.f6dcd7c74d37326c.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5850.9a681cbc00d319d1.js b/frontend/src/main/resources/static/5850.14171550cd7d1a7d.js similarity index 94% rename from frontend/src/main/resources/static/5850.9a681cbc00d319d1.js rename to frontend/src/main/resources/static/5850.14171550cd7d1a7d.js index c21619f..eafc517 100644 --- a/frontend/src/main/resources/static/5850.9a681cbc00d319d1.js +++ b/frontend/src/main/resources/static/5850.14171550cd7d1a7d.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5850],{45850:function(I,u,n){n.r(u),n.d(u,{SubstanceFormPolymerClassificationModule:function(){return Y}});var m=n(48047),f=n(78069),p=n(36362),v=n(64061),C=n(44770),g=n(43365),d=n(90587),y=n(91434),P=n(7168),S=n(96769),h=n(24582),b=n(7318),M=(n(27299),n(40104)),O=n(18291),x=n(79223),Z=n(88194),t=n(76442),T=n(16667),F=n(15992),A=n(24459),U=n(14900);function J(a,r){if(1&a){var i=t.EpF();t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"div",3),t.TgZ(3,"div",4),t.TgZ(4,"app-cv-input",5),t.NdJ("valueChange",function(e){return t.CHM(i),t.oxw().updateClass(e)}),t.qZA(),t.TgZ(5,"app-cv-input",6),t.NdJ("valueChange",function(e){return t.CHM(i),t.oxw().updateType(e)}),t.qZA(),t.qZA(),t.TgZ(6,"div",4),t.TgZ(7,"app-tag-selector",7),t.NdJ("tagsUpdate",function(e){return t.CHM(i),t.oxw().update(e)}),t.qZA(),t.TgZ(8,"app-cv-input",8),t.NdJ("valueChange",function(e){return t.CHM(i),t.oxw().updateGeometry(e)}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"div",9),t.TgZ(10,"app-substance-selector",10),t.NdJ("selectionUpdated",function(e){return t.CHM(i),t.oxw().parentSubstanceUpdated(e)}),t.qZA(),t.qZA(),t.qZA(),t._UZ(11,"app-audit-info",11),t.qZA()}if(2&a){var l=t.oxw();t.xp6(4),t.Q6J("model",l.classification.polymerClass),t.xp6(1),t.Q6J("model",l.classification.sourceType),t.xp6(2),t.Q6J("tags",l.classification.polymerSubclass),t.xp6(1),t.Q6J("model",l.classification.polymerGeometry),t.xp6(2),t.Q6J("subuuid",l.relatedSubstanceUuid),t.xp6(1),t.Q6J("source",l.classification)}}var w=function(){var a=function(r){(0,h.Z)(l,r);var i=(0,b.Z)(l);function l(s,e,o){var c;return(0,f.Z)(this,l),(c=i.call(this)).substanceFormPolymerClassificationService=s,c.gaService=e,c.cvService=o,c.subscriptions=[],c.dropdownSettings={},c.analyticsEventCategory="substance form Polymer Classification",c}return(0,m.Z)(l,[{key:"ngOnInit",value:function(){var e=this;this.menuLabelUpdate.emit("Polymer Classification");var o=this.substanceFormPolymerClassificationService.substancePolymerClassification.subscribe(function(c){e.classification=c,e.relatedSubstanceUuid=e.classification.parentSubstance&&e.classification.parentSubstance.refuuid||""});this.subscriptions.push(o),this.dropdownSettings={singleSelection:!1,idField:"value",textField:"display",selectAllText:"Select All",unSelectAllText:"UnSelect All",itemsShowLimit:3,allowSearchFilter:!0}}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"update",value:function(e){this.classification.polymerSubclass=e}},{key:"updateType",value:function(e){this.classification.sourceType=e}},{key:"updateGeometry",value:function(e){this.classification.polymerGeometry=e}},{key:"updateClass",value:function(e){this.classification.polymerClass=e}},{key:"parentSubstanceUpdated",value:function(e){if(null!==e){var o={refPname:e._name,name:e._name,refuuid:e.uuid,substanceClass:"reference",approvalID:e.approvalID};this.classification.parentSubstance=o,this.relatedSubstanceUuid=o&&o.refuuid||""}else this.classification.parentSubstance=null,this.relatedSubstanceUuid=null}},{key:"updateAccess",value:function(e){this.classification.access=e}}]),l}(x.o);return a.\u0275fac=function(i){return new(i||a)(t.Y36(Z.D),t.Y36(M.$),t.Y36(O.I))},a.\u0275cmp=t.Xpm({type:a,selectors:[["app-substance-form-polymer-classification"]],features:[t.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],[1,"field-container"],[1,"field-row"],["domain","POLYMER_CLASS","title","Polymer Class",1,"class",3,"model","valueChange"],["domain","POLYMER_SOURCE_TYPE","title","Source Type",1,"type",3,"model","valueChange"],["placeholder","polymer subclass","cvDomain","POLYMER_SUBCLASS",1,"tags","subtype",3,"tags","tagsUpdate"],["domain","POLYMER_GEOMETRY","title","Polymer Geometry",1,"geometry",3,"model","valueChange"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Parent Substance","header","Parent Substance",3,"subuuid","selectionUpdated"],[3,"source"]],template:function(i,l){1&i&&t.YNc(0,J,12,6,"div",0),2&i&&t.Q6J("ngIf",l.classification)},directives:[p.O5,T.S,F.C,A.Q,U.n],styles:[".related-substance[_ngcontent-%COMP%]{width:45%}.field-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:start;align-items:flex-start}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .geometry[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .subtype[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .class[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .subtype[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .form-block[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .class[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .geometry[_ngcontent-%COMP%]{max-width:250px}.field-container[_ngcontent-%COMP%]{width:55%}"]}),a}(),E=n(63200),Y=function(){var a=(0,m.Z)(function r(){(0,f.Z)(this,r)});return a.\u0275fac=function(i){return new(i||a)},a.\u0275mod=t.oAB({type:a}),a.\u0275inj=t.cJS({imports:[[p.ez,v.o.forChild(w),C.lN,g.c,d.UX,d.u5,y.LD,P.O,S.O,E.U]]}),a}()}}]); -//# sourceMappingURL=5850.9a681cbc00d319d1.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5850],{45850:function(I,u,n){n.r(u),n.d(u,{SubstanceFormPolymerClassificationModule:function(){return Y}});var m=n(1884),f=n(39117),p=n(36362),v=n(64061),C=n(44770),g=n(43365),d=n(90587),y=n(91434),P=n(7168),S=n(96769),h=n(46751),b=n(56101),M=(n(27299),n(40104)),O=n(18291),x=n(79223),Z=n(88194),t=n(86613),T=n(16667),F=n(15992),A=n(24459),U=n(14900);function J(a,r){if(1&a){var i=t.EpF();t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"div",3),t.TgZ(3,"div",4),t.TgZ(4,"app-cv-input",5),t.NdJ("valueChange",function(e){return t.CHM(i),t.oxw().updateClass(e)}),t.qZA(),t.TgZ(5,"app-cv-input",6),t.NdJ("valueChange",function(e){return t.CHM(i),t.oxw().updateType(e)}),t.qZA(),t.qZA(),t.TgZ(6,"div",4),t.TgZ(7,"app-tag-selector",7),t.NdJ("tagsUpdate",function(e){return t.CHM(i),t.oxw().update(e)}),t.qZA(),t.TgZ(8,"app-cv-input",8),t.NdJ("valueChange",function(e){return t.CHM(i),t.oxw().updateGeometry(e)}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"div",9),t.TgZ(10,"app-substance-selector",10),t.NdJ("selectionUpdated",function(e){return t.CHM(i),t.oxw().parentSubstanceUpdated(e)}),t.qZA(),t.qZA(),t.qZA(),t._UZ(11,"app-audit-info",11),t.qZA()}if(2&a){var l=t.oxw();t.xp6(4),t.Q6J("model",l.classification.polymerClass),t.xp6(1),t.Q6J("model",l.classification.sourceType),t.xp6(2),t.Q6J("tags",l.classification.polymerSubclass),t.xp6(1),t.Q6J("model",l.classification.polymerGeometry),t.xp6(2),t.Q6J("subuuid",l.relatedSubstanceUuid),t.xp6(1),t.Q6J("source",l.classification)}}var w=function(){var a=function(r){(0,h.Z)(l,r);var i=(0,b.Z)(l);function l(s,e,o){var c;return(0,f.Z)(this,l),(c=i.call(this)).substanceFormPolymerClassificationService=s,c.gaService=e,c.cvService=o,c.subscriptions=[],c.dropdownSettings={},c.analyticsEventCategory="substance form Polymer Classification",c}return(0,m.Z)(l,[{key:"ngOnInit",value:function(){var e=this;this.menuLabelUpdate.emit("Polymer Classification");var o=this.substanceFormPolymerClassificationService.substancePolymerClassification.subscribe(function(c){e.classification=c,e.relatedSubstanceUuid=e.classification.parentSubstance&&e.classification.parentSubstance.refuuid||""});this.subscriptions.push(o),this.dropdownSettings={singleSelection:!1,idField:"value",textField:"display",selectAllText:"Select All",unSelectAllText:"UnSelect All",itemsShowLimit:3,allowSearchFilter:!0}}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"update",value:function(e){this.classification.polymerSubclass=e}},{key:"updateType",value:function(e){this.classification.sourceType=e}},{key:"updateGeometry",value:function(e){this.classification.polymerGeometry=e}},{key:"updateClass",value:function(e){this.classification.polymerClass=e}},{key:"parentSubstanceUpdated",value:function(e){if(null!==e){var o={refPname:e._name,name:e._name,refuuid:e.uuid,substanceClass:"reference",approvalID:e.approvalID};this.classification.parentSubstance=o,this.relatedSubstanceUuid=o&&o.refuuid||""}else this.classification.parentSubstance=null,this.relatedSubstanceUuid=null}},{key:"updateAccess",value:function(e){this.classification.access=e}}]),l}(x.o);return a.\u0275fac=function(i){return new(i||a)(t.Y36(Z.D),t.Y36(M.$),t.Y36(O.I))},a.\u0275cmp=t.Xpm({type:a,selectors:[["app-substance-form-polymer-classification"]],features:[t.qOj],decls:1,vars:1,consts:[["class","name-form-container",4,"ngIf"],[1,"name-form-container"],[1,"form-row"],[1,"field-container"],[1,"field-row"],["domain","POLYMER_CLASS","title","Polymer Class",1,"class",3,"model","valueChange"],["domain","POLYMER_SOURCE_TYPE","title","Source Type",1,"type",3,"model","valueChange"],["placeholder","polymer subclass","cvDomain","POLYMER_SUBCLASS",1,"tags","subtype",3,"tags","tagsUpdate"],["domain","POLYMER_GEOMETRY","title","Polymer Geometry",1,"geometry",3,"model","valueChange"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Parent Substance","header","Parent Substance",3,"subuuid","selectionUpdated"],[3,"source"]],template:function(i,l){1&i&&t.YNc(0,J,12,6,"div",0),2&i&&t.Q6J("ngIf",l.classification)},directives:[p.O5,T.S,F.C,A.Q,U.n],styles:[".related-substance[_ngcontent-%COMP%]{width:45%}.field-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:start;align-items:flex-start}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .geometry[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .subtype[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .class[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .subtype[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .form-block[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .class[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .geometry[_ngcontent-%COMP%]{max-width:250px}.field-container[_ngcontent-%COMP%]{width:55%}"]}),a}(),E=n(63200),Y=function(){var a=(0,m.Z)(function r(){(0,f.Z)(this,r)});return a.\u0275fac=function(i){return new(i||a)},a.\u0275mod=t.oAB({type:a}),a.\u0275inj=t.cJS({imports:[[p.ez,v.o.forChild(w),C.lN,g.c,d.UX,d.u5,y.LD,P.O,S.O,E.U]]}),a}()}}]); +//# sourceMappingURL=5850.14171550cd7d1a7d.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5850.9a681cbc00d319d1.js.map b/frontend/src/main/resources/static/5850.14171550cd7d1a7d.js.map similarity index 99% rename from frontend/src/main/resources/static/5850.9a681cbc00d319d1.js.map rename to frontend/src/main/resources/static/5850.14171550cd7d1a7d.js.map index 17e776c..81b88bf 100644 --- a/frontend/src/main/resources/static/5850.9a681cbc00d319d1.js.map +++ b/frontend/src/main/resources/static/5850.14171550cd7d1a7d.js.map @@ -1 +1 @@ -{"version":3,"mappings":"ydAAAA,iBACEA,iBACEA,iBACEA,iBACAA,0BACcA,wDAAiBC,iBAA6DD,QAC1FA,0BACcA,wDAAiBE,gBAA0DF,QAE3FA,QACAA,iBACEA,8BACmBA,uDAAcG,YACcH,QACjDA,0BACyDA,wDAAeI,oBAAwBJ,QAElGA,QACAA,QACAA,iBACEA,sCAAwBA,6DAAoBK,4BAG5CL,QACFA,QAGFA,QACAA,8BAEFA,8BAzB0DA,sDAECA,oDAKFA,wDAGrCA,yDAOUA,iDAMZA,2CCNX,IAAMM,EAAb,eAAaA,EAAb,0CAQE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,4CACDG,cACAA,cALDA,gBAAqC,GAC7CA,mBAAsC,GAOpCA,EAAKC,uBAAyB,wCAHeD,EAXjD,uCAiBE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,0BAC1B,IAAMC,EAAsBH,KAAKL,0CAA0CS,+BAA+BC,UAAU,YAClHC,EAAKC,eAAiBA,EACtBD,EAAKE,qBAAuBF,EAAKC,eAAeE,iBAAmBH,EAAKC,eAAeE,gBAAgBC,SAAW,KAEpHV,KAAKW,cAAcC,KAAKT,GAExBH,KAAKa,iBAAmB,CAAEC,iBAAiB,EAAOC,QAAS,QAASC,UAAW,UAAWC,cAAe,aACvGC,gBAAiB,eAAgBC,eAAgB,EAAGC,mBAAmB,KA1B7E,6BA6BE,cA7BF,yBAgCE,WACEpB,KAAKW,cAAcU,QAAQ,YACzBC,EAAaC,kBAlCnB,oBAsCE,SAAOC,GACLxB,KAAKO,eAAekB,gBAAkBD,IAvC1C,wBA0CE,SAAWE,GACT1B,KAAKO,eAAeoB,WAAaD,IA3CrC,4BA8CE,SAAeA,GACb1B,KAAKO,eAAeqB,gBAAkBF,IA/C1C,yBAkDE,SAAYA,GACR1B,KAAKO,eAAesB,aAAeH,IAnDzC,oCAsDE,SAAuBI,GACrB,GAAkB,OAAdA,EAAmB,CACrB,IAAMC,EAAqC,CACzCC,SAAUF,EAAUG,MACpBC,KAAMJ,EAAUG,MAChBvB,QAASoB,EAAUK,KACnBC,eAAgB,YAChBC,WAAYP,EAAUO,YAExBrC,KAAKO,eAAeE,gBAAkBsB,EACtC/B,KAAKQ,qBAAuBuB,GAAoBA,EAAiBrB,SAAW,QAE5EV,KAAKO,eAAeE,gBAAkB,KACtCT,KAAKQ,qBAAuB,OAnElC,0BAwEE,SAAa8B,GACXtC,KAAKO,eAAe+B,OAASA,MAzEjCC,GAAiEC,kDAApD9C,GAA2CN,2DAA3CM,EAA2C+C,+yBDtBxDrD,6BAAkCA,qoCCsBrBM,EAAb,cCOagD,EAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsCnD,GACtCoD,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,QAMSX,EAAb","names":["i0","ctx_r1","ctx_r3","ctx_r4","ctx_r5","ctx_r6","SubstanceFormPolymerClassificationComponent","substanceFormPolymerClassificationService","gaService","cvService","c","analyticsEventCategory","this","menuLabelUpdate","emit","proteinSubscription","substancePolymerClassification","subscribe","e","classification","relatedSubstanceUuid","parentSubstance","refuuid","subscriptions","push","dropdownSettings","singleSelection","idField","textField","selectAllText","unSelectAllText","itemsShowLimit","allowSearchFilter","forEach","subscription","unsubscribe","tags","polymerSubclass","type","sourceType","polymerGeometry","polymerClass","substance","relatedSubstance","refPname","_name","name","uuid","substanceClass","approvalID","access","l","SubstanceFormBase","selectors","SubstanceFormPolymerClassificationModule","m","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/polymer-classification/substance-form-polymer-classification.component.html","./src/app/core/substance-form/polymer-classification/substance-form-polymer-classification.component.ts","./src/app/core/substance-form/polymer-classification/substance-form-polymer-classification.module.ts"],"sourcesContent":["
\n
\n
\n
\n \n \n\n
\n
\n \n \n\n
\n
\n
\n \n \n
\n \n
\n \n\n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {\n Polymer,\n PolymerClassification,\n Protein,\n SubstanceDetail,\n SubstanceName,\n SubstanceRelated, SubstanceSummary\n} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport { IDropdownSettings} from 'ng-multiselect-dropdown';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { SubstanceFormPolymerClassificationService } from './substance-form-polymer-classification.service';\n\n@Component({\n selector: 'app-substance-form-polymer-classification',\n templateUrl: './substance-form-polymer-classification.component.html',\n styleUrls: ['./substance-form-polymer-classification.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormPolymerClassificationComponent extends SubstanceFormBase\n implements OnInit, AfterViewInit, OnDestroy {\n\n classification: PolymerClassification;\n parent: SubstanceRelated;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n dropdownSettings: IDropdownSettings = {};\n constructor(\n private substanceFormPolymerClassificationService: SubstanceFormPolymerClassificationService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Polymer Classification';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Polymer Classification');\n const proteinSubscription = this.substanceFormPolymerClassificationService.substancePolymerClassification.subscribe(classification => {\n this.classification = classification;\n this.relatedSubstanceUuid = this.classification.parentSubstance && this.classification.parentSubstance.refuuid || '';\n });\n this.subscriptions.push(proteinSubscription);\n\n this.dropdownSettings = { singleSelection: false, idField: 'value', textField: 'display', selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All', itemsShowLimit: 3, allowSearchFilter: true};\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n update(tags: Array): void {\n this.classification.polymerSubclass = tags;\n }\n\n updateType(type: string): void {\n this.classification.sourceType = type;\n }\n\n updateGeometry(type: string): void {\n this.classification.polymerGeometry = type;\n }\n\n updateClass(type: string): void {\n this.classification.polymerClass = type;\n }\n\n parentSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance !== null){\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.classification.parentSubstance = relatedSubstance;\n this.relatedSubstanceUuid = relatedSubstance && relatedSubstance.refuuid || '';\n } else {\n this.classification.parentSubstance = null;\n this.relatedSubstanceUuid = null;\n }\n\n }\n\n updateAccess(access: Array): void {\n this.classification.access = access;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\nimport {SubstanceFormPolymerClassificationComponent} from '@gsrs-core/substance-form/polymer-classification/substance-form-polymer-classification.component';\nimport {SubstanceSelectorModule} from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormPolymerClassificationComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormPolymerClassificationComponent\n ]\n})\nexport class SubstanceFormPolymerClassificationModule { }\n"],"sourceRoot":"webpack:///","file":"5850.9a681cbc00d319d1.js"} \ No newline at end of file +{"version":3,"mappings":"ydAAAA,iBACEA,iBACEA,iBACEA,iBACAA,0BACcA,wDAAiBC,iBAA6DD,QAC1FA,0BACcA,wDAAiBE,gBAA0DF,QAE3FA,QACAA,iBACEA,8BACmBA,uDAAcG,YACcH,QACjDA,0BACyDA,wDAAeI,oBAAwBJ,QAElGA,QACAA,QACAA,iBACEA,sCAAwBA,6DAAoBK,4BAG5CL,QACFA,QAGFA,QACAA,8BAEFA,8BAzB0DA,sDAECA,oDAKFA,wDAGrCA,yDAOUA,iDAMZA,2CCNX,IAAMM,EAAb,eAAaA,EAAb,0CAQE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,4CACDG,cACAA,cALDA,gBAAqC,GAC7CA,mBAAsC,GAOpCA,EAAKC,uBAAyB,wCAHeD,EAXjD,uCAiBE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,0BAC1B,IAAMC,EAAsBH,KAAKL,0CAA0CS,+BAA+BC,UAAU,YAClHC,EAAKC,eAAiBA,EACtBD,EAAKE,qBAAuBF,EAAKC,eAAeE,iBAAmBH,EAAKC,eAAeE,gBAAgBC,SAAW,KAEpHV,KAAKW,cAAcC,KAAKT,GAExBH,KAAKa,iBAAmB,CAAEC,iBAAiB,EAAOC,QAAS,QAASC,UAAW,UAAWC,cAAe,aACvGC,gBAAiB,eAAgBC,eAAgB,EAAGC,mBAAmB,KA1B7E,6BA6BE,cA7BF,yBAgCE,WACEpB,KAAKW,cAAcU,QAAQ,YACzBC,EAAaC,kBAlCnB,oBAsCE,SAAOC,GACLxB,KAAKO,eAAekB,gBAAkBD,IAvC1C,wBA0CE,SAAWE,GACT1B,KAAKO,eAAeoB,WAAaD,IA3CrC,4BA8CE,SAAeA,GACb1B,KAAKO,eAAeqB,gBAAkBF,IA/C1C,yBAkDE,SAAYA,GACR1B,KAAKO,eAAesB,aAAeH,IAnDzC,oCAsDE,SAAuBI,GACrB,GAAkB,OAAdA,EAAmB,CACrB,IAAMC,EAAqC,CACzCC,SAAUF,EAAUG,MACpBC,KAAMJ,EAAUG,MAChBvB,QAASoB,EAAUK,KACnBC,eAAgB,YAChBC,WAAYP,EAAUO,YAExBrC,KAAKO,eAAeE,gBAAkBsB,EACtC/B,KAAKQ,qBAAuBuB,GAAoBA,EAAiBrB,SAAW,QAE5EV,KAAKO,eAAeE,gBAAkB,KACtCT,KAAKQ,qBAAuB,OAnElC,0BAwEE,SAAa8B,GACXtC,KAAKO,eAAe+B,OAASA,MAzEjCC,GAAiEC,kDAApD9C,GAA2CN,2DAA3CM,EAA2C+C,+yBDtBxDrD,6BAAkCA,qoCCsBrBM,EAAb,cCOagD,EAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsCnD,GACtCoD,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,QAMSX,EAAb","names":["i0","ctx_r1","ctx_r3","ctx_r4","ctx_r5","ctx_r6","SubstanceFormPolymerClassificationComponent","substanceFormPolymerClassificationService","gaService","cvService","c","analyticsEventCategory","this","menuLabelUpdate","emit","proteinSubscription","substancePolymerClassification","subscribe","e","classification","relatedSubstanceUuid","parentSubstance","refuuid","subscriptions","push","dropdownSettings","singleSelection","idField","textField","selectAllText","unSelectAllText","itemsShowLimit","allowSearchFilter","forEach","subscription","unsubscribe","tags","polymerSubclass","type","sourceType","polymerGeometry","polymerClass","substance","relatedSubstance","refPname","_name","name","uuid","substanceClass","approvalID","access","l","SubstanceFormBase","selectors","SubstanceFormPolymerClassificationModule","m","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/polymer-classification/substance-form-polymer-classification.component.html","./src/app/core/substance-form/polymer-classification/substance-form-polymer-classification.component.ts","./src/app/core/substance-form/polymer-classification/substance-form-polymer-classification.module.ts"],"sourcesContent":["
\n
\n
\n
\n \n \n\n
\n
\n \n \n\n
\n
\n
\n \n \n
\n \n
\n \n\n
\n\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {\n Polymer,\n PolymerClassification,\n Protein,\n SubstanceDetail,\n SubstanceName,\n SubstanceRelated, SubstanceSummary\n} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport { IDropdownSettings} from 'ng-multiselect-dropdown';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { SubstanceFormPolymerClassificationService } from './substance-form-polymer-classification.service';\n\n@Component({\n selector: 'app-substance-form-polymer-classification',\n templateUrl: './substance-form-polymer-classification.component.html',\n styleUrls: ['./substance-form-polymer-classification.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormPolymerClassificationComponent extends SubstanceFormBase\n implements OnInit, AfterViewInit, OnDestroy {\n\n classification: PolymerClassification;\n parent: SubstanceRelated;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n dropdownSettings: IDropdownSettings = {};\n constructor(\n private substanceFormPolymerClassificationService: SubstanceFormPolymerClassificationService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form Polymer Classification';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Polymer Classification');\n const proteinSubscription = this.substanceFormPolymerClassificationService.substancePolymerClassification.subscribe(classification => {\n this.classification = classification;\n this.relatedSubstanceUuid = this.classification.parentSubstance && this.classification.parentSubstance.refuuid || '';\n });\n this.subscriptions.push(proteinSubscription);\n\n this.dropdownSettings = { singleSelection: false, idField: 'value', textField: 'display', selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All', itemsShowLimit: 3, allowSearchFilter: true};\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n update(tags: Array): void {\n this.classification.polymerSubclass = tags;\n }\n\n updateType(type: string): void {\n this.classification.sourceType = type;\n }\n\n updateGeometry(type: string): void {\n this.classification.polymerGeometry = type;\n }\n\n updateClass(type: string): void {\n this.classification.polymerClass = type;\n }\n\n parentSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance !== null){\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.classification.parentSubstance = relatedSubstance;\n this.relatedSubstanceUuid = relatedSubstance && relatedSubstance.refuuid || '';\n } else {\n this.classification.parentSubstance = null;\n this.relatedSubstanceUuid = null;\n }\n\n }\n\n updateAccess(access: Array): void {\n this.classification.access = access;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\nimport {SubstanceFormPolymerClassificationComponent} from '@gsrs-core/substance-form/polymer-classification/substance-form-polymer-classification.component';\nimport {SubstanceSelectorModule} from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormPolymerClassificationComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormPolymerClassificationComponent\n ]\n})\nexport class SubstanceFormPolymerClassificationModule { }\n"],"sourceRoot":"webpack:///","file":"5850.14171550cd7d1a7d.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5913.e6d4b7e3d6751ad1.js b/frontend/src/main/resources/static/5913.b128595d2176eec5.js similarity index 93% rename from frontend/src/main/resources/static/5913.e6d4b7e3d6751ad1.js rename to frontend/src/main/resources/static/5913.b128595d2176eec5.js index bbcc426..3391845 100644 --- a/frontend/src/main/resources/static/5913.e6d4b7e3d6751ad1.js +++ b/frontend/src/main/resources/static/5913.b128595d2176eec5.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5913],{45913:function(G,p,e){e.r(p),e.d(p,{SubstanceStructuralUnitsModule:function(){return X}});var f=e(48047),d=e(78069),g=e(36362),h=e(64061),S=e(43365),v=e(26439),l=e(97217),U=e(33865),c=e(90587),Z=e(98002),C=e(24582),y=e(7318),T=e(54025),b=e(52149),A=e(24874),x=e(50253),t=e(76442),N=e(44770),D=e(9292);function Y(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," SRU "),t.qZA())}function Q(n,a){if(1&n&&(t.TgZ(0,"td",17),t.TgZ(1,"div",18),t._UZ(2,"img",19),t._UZ(3,"div"),t.qZA(),t.qZA()),2&n){var i=a.$implicit;t.xp6(2),t.Q6J("entityId",i.uuid)}}function J(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Label "),t.qZA())}function j(n,a){if(1&n&&(t.TgZ(0,"td",17),t._uU(1),t.qZA()),2&n){var i=a.$implicit;t.xp6(1),t.hij(" ",i.label," ")}}function B(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Amount "),t.qZA())}function R(n,a){if(1&n&&(t.TgZ(0,"td",17),t._uU(1),t.qZA()),2&n){var i=a.$implicit,o=t.oxw();t.xp6(1),t.hij(" ",o.displayAmount(i.amount)," ")}}function z(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Type "),t.qZA())}function M(n,a){if(1&n&&(t.TgZ(0,"td",17),t._uU(1),t.qZA()),2&n){var i=a.$implicit;t.xp6(1),t.hij(" ",i.type," ")}}function O(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Connectivity "),t.qZA())}function I(n,a){if(1&n&&(t.TgZ(0,"td",17),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&n){var i=a.$implicit,o=t.oxw();t.xp6(2),t.hij("",o.connectivity(i.attachmentMap)," ")}}function $(n,a){1&n&&t._UZ(0,"tr",20)}function F(n,a){1&n&&t._UZ(0,"tr",21)}var H=function(){return[5,10,25,100]},L=function(){var n=function(a){(0,C.Z)(o,a);var i=(0,y.Z)(o);function o(r,u){var s;return(0,d.Z)(this,o),(s=i.call(this,u)).utilsService=r,s.gaService=u,s.displayedColumns=["SRU","label","amount","type","connectivity"],s.substanceUpdated=new x.x,s}return(0,f.Z)(o,[{key:"ngOnInit",value:function(){var u=this;this.substanceUpdated.subscribe(function(s){u.substance=s,null!=u.substance&&(u.structuralUnits=u.substance.polymer.structuralUnits,u.countUpdate.emit(u.structuralUnits.length),u.filtered=u.substance.polymer.structuralUnits,u.pageChange(),u.searchControl.valueChanges.subscribe(function(m){u.filterList(m,u.structuralUnits,u.analyticsEventCategory)},function(m){console.log(m)}))})}},{key:"displayAmount",value:function(u){return this.utilsService.displayAmount(u)}},{key:"connectivity",value:function(u){var s=JSON.stringify(u);return(s=(s=s.replace(":","=")).replace('"',"")).replace(",",", ")}}]),o}(T.u);return n.\u0275fac=function(i){return new(i||n)(t.Y36(b.F),t.Y36(A.$))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-structural-units"]],features:[t.qOj],decls:24,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","SRU"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","label"],["matColumnDef","amount"],["matColumnDef","type"],["matColumnDef","connectivity"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[1,"thumb-col"],["appSubstanceImage","",1,"image-icon",3,"entityId"],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"table",5),t.ynx(6,6),t.YNc(7,Y,2,0,"th",7),t.YNc(8,Q,4,1,"td",8),t.BQk(),t.ynx(9,9),t.YNc(10,J,2,0,"th",7),t.YNc(11,j,2,1,"td",8),t.BQk(),t.ynx(12,10),t.YNc(13,B,2,0,"th",7),t.YNc(14,R,2,1,"td",8),t.BQk(),t.ynx(15,11),t.YNc(16,z,2,0,"th",7),t.YNc(17,M,2,1,"td",8),t.BQk(),t.ynx(18,12),t.YNc(19,O,2,0,"th",7),t.YNc(20,I,3,1,"td",8),t.BQk(),t.YNc(21,$,1,0,"tr",13),t.YNc(22,F,1,0,"tr",14),t.qZA(),t.qZA(),t.TgZ(23,"mat-paginator",15),t.NdJ("page",function(u){return o.pageChange(u,o.analyticsEventCategory)}),t.qZA()),2&i&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",o.searchControl),t.xp6(2),t.Q6J("dataSource",o.paged),t.xp6(16),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.filtered&&o.filtered.length||0)("pageSize",5)("pageSizeOptions",t.DdM(8,H)))},directives:[N.KE,S.Nt,c.Fj,c.JJ,c.oH,l.BZ,l.w1,l.fO,l.ge,l.Dz,l.ev,D.m,l.as,l.XQ,l.nj,l.Gk,v.NW],styles:[""]}),n}(),E=e(24054),X=function(){var n=(0,f.Z)(function a(){(0,d.Z)(this,a)});return n.\u0275fac=function(i){return new(i||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[g.ez,h.o.forChild(L),l.p0,U.HT,v.TU,S.c,c.UX,c.u5,Z.Bz,E.f]]}),n}()}}]); -//# sourceMappingURL=5913.e6d4b7e3d6751ad1.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5913],{45913:function(G,p,e){e.r(p),e.d(p,{SubstanceStructuralUnitsModule:function(){return X}});var f=e(1884),d=e(39117),g=e(36362),h=e(64061),S=e(43365),v=e(26439),l=e(97217),U=e(33865),c=e(90587),Z=e(98002),C=e(46751),y=e(56101),T=e(54025),b=e(52149),A=e(24874),x=e(50253),t=e(86613),N=e(44770),D=e(9292);function Y(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," SRU "),t.qZA())}function Q(n,a){if(1&n&&(t.TgZ(0,"td",17),t.TgZ(1,"div",18),t._UZ(2,"img",19),t._UZ(3,"div"),t.qZA(),t.qZA()),2&n){var i=a.$implicit;t.xp6(2),t.Q6J("entityId",i.uuid)}}function J(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Label "),t.qZA())}function j(n,a){if(1&n&&(t.TgZ(0,"td",17),t._uU(1),t.qZA()),2&n){var i=a.$implicit;t.xp6(1),t.hij(" ",i.label," ")}}function B(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Amount "),t.qZA())}function R(n,a){if(1&n&&(t.TgZ(0,"td",17),t._uU(1),t.qZA()),2&n){var i=a.$implicit,o=t.oxw();t.xp6(1),t.hij(" ",o.displayAmount(i.amount)," ")}}function z(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Type "),t.qZA())}function M(n,a){if(1&n&&(t.TgZ(0,"td",17),t._uU(1),t.qZA()),2&n){var i=a.$implicit;t.xp6(1),t.hij(" ",i.type," ")}}function O(n,a){1&n&&(t.TgZ(0,"th",16),t._uU(1," Connectivity "),t.qZA())}function I(n,a){if(1&n&&(t.TgZ(0,"td",17),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&n){var i=a.$implicit,o=t.oxw();t.xp6(2),t.hij("",o.connectivity(i.attachmentMap)," ")}}function $(n,a){1&n&&t._UZ(0,"tr",20)}function F(n,a){1&n&&t._UZ(0,"tr",21)}var H=function(){return[5,10,25,100]},L=function(){var n=function(a){(0,C.Z)(o,a);var i=(0,y.Z)(o);function o(r,u){var s;return(0,d.Z)(this,o),(s=i.call(this,u)).utilsService=r,s.gaService=u,s.displayedColumns=["SRU","label","amount","type","connectivity"],s.substanceUpdated=new x.x,s}return(0,f.Z)(o,[{key:"ngOnInit",value:function(){var u=this;this.substanceUpdated.subscribe(function(s){u.substance=s,null!=u.substance&&(u.structuralUnits=u.substance.polymer.structuralUnits,u.countUpdate.emit(u.structuralUnits.length),u.filtered=u.substance.polymer.structuralUnits,u.pageChange(),u.searchControl.valueChanges.subscribe(function(m){u.filterList(m,u.structuralUnits,u.analyticsEventCategory)},function(m){console.log(m)}))})}},{key:"displayAmount",value:function(u){return this.utilsService.displayAmount(u)}},{key:"connectivity",value:function(u){var s=JSON.stringify(u);return(s=(s=s.replace(":","=")).replace('"',"")).replace(",",", ")}}]),o}(T.u);return n.\u0275fac=function(i){return new(i||n)(t.Y36(b.F),t.Y36(A.$))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-structural-units"]],features:[t.qOj],decls:24,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","SRU"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","label"],["matColumnDef","amount"],["matColumnDef","type"],["matColumnDef","connectivity"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[1,"thumb-col"],["appSubstanceImage","",1,"image-icon",3,"entityId"],["mat-header-row",""],["mat-row",""]],template:function(i,o){1&i&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"table",5),t.ynx(6,6),t.YNc(7,Y,2,0,"th",7),t.YNc(8,Q,4,1,"td",8),t.BQk(),t.ynx(9,9),t.YNc(10,J,2,0,"th",7),t.YNc(11,j,2,1,"td",8),t.BQk(),t.ynx(12,10),t.YNc(13,B,2,0,"th",7),t.YNc(14,R,2,1,"td",8),t.BQk(),t.ynx(15,11),t.YNc(16,z,2,0,"th",7),t.YNc(17,M,2,1,"td",8),t.BQk(),t.ynx(18,12),t.YNc(19,O,2,0,"th",7),t.YNc(20,I,3,1,"td",8),t.BQk(),t.YNc(21,$,1,0,"tr",13),t.YNc(22,F,1,0,"tr",14),t.qZA(),t.qZA(),t.TgZ(23,"mat-paginator",15),t.NdJ("page",function(u){return o.pageChange(u,o.analyticsEventCategory)}),t.qZA()),2&i&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",o.searchControl),t.xp6(2),t.Q6J("dataSource",o.paged),t.xp6(16),t.Q6J("matHeaderRowDef",o.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",o.displayedColumns),t.xp6(1),t.Q6J("length",o.filtered&&o.filtered.length||0)("pageSize",5)("pageSizeOptions",t.DdM(8,H)))},directives:[N.KE,S.Nt,c.Fj,c.JJ,c.oH,l.BZ,l.w1,l.fO,l.ge,l.Dz,l.ev,D.m,l.as,l.XQ,l.nj,l.Gk,v.NW],styles:[""]}),n}(),E=e(24054),X=function(){var n=(0,f.Z)(function a(){(0,d.Z)(this,a)});return n.\u0275fac=function(i){return new(i||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[g.ez,h.o.forChild(L),l.p0,U.HT,v.TU,S.c,c.UX,c.u5,Z.Bz,E.f]]}),n}()}}]); +//# sourceMappingURL=5913.b128595d2176eec5.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5913.e6d4b7e3d6751ad1.js.map b/frontend/src/main/resources/static/5913.b128595d2176eec5.js.map similarity index 99% rename from frontend/src/main/resources/static/5913.e6d4b7e3d6751ad1.js.map rename to frontend/src/main/resources/static/5913.b128595d2176eec5.js.map index 390184b..527e85c 100644 --- a/frontend/src/main/resources/static/5913.e6d4b7e3d6751ad1.js.map +++ b/frontend/src/main/resources/static/5913.b128595d2176eec5.js.map @@ -1 +1 @@ -{"version":3,"mappings":"8ZAWMA,iBAAuCA,iBAAIA,kCAC3CA,iBACEA,kBACEA,kBACAA,eAGFA,QANFA,gCAE8CA,yDAO9CA,iBAAuCA,mBAAMA,kCAC7CA,iBAAoCA,SAAcA,gCAAdA,uDAGpCA,iBAAuCA,oBAAOA,kCAC9CA,iBAAoCA,SAA8BA,0CAA9BA,yEAIpCA,iBAAuCA,kBAAKA,kCAC5CA,iBAAoCA,SAAaA,gCAAbA,sDAGpCA,iBAAuCA,0BAAaA,kCACpDA,iBAAoCA,gBAAOA,SAAoCA,QAAOA,0CAA3CA,6EAG7CA,sCACAA,uDC1BSC,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACDC,GAAiC,6BAExCC,cAAMD,IAHED,eACDE,cAJTA,mBAA6B,CAAC,MAAO,QAAS,SAAU,OAAQ,gBAChEA,mBAAmB,IAAIC,IAGmBD,EAN5C,uCAWE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,YACPD,EAAKE,gBAAkBF,EAAKC,UAAUE,QAAQD,gBAC9CF,EAAKI,YAAYC,KAAKL,EAAKE,gBAAgBI,QAC3CN,EAAKO,SAAWP,EAAKC,UAAUE,QAAQD,gBACvCF,EAAKQ,aAELR,EAAKS,cAAcC,aAAaX,UAAU,YACxCC,EAAKW,WAAWC,EAAOZ,EAAKE,gBAAiBF,EAAKa,yBACjD,YACDC,QAAQC,IAAIC,UAvBtB,2BA8BE,SAAcC,GACZ,OAAOpB,KAAKJ,aAAayB,cAAcD,KA/B3C,0BAkCE,SAAaE,GACX,IAAIC,EAAUC,KAAKC,UAAUH,GAC7BC,OACAA,GADAA,EAAUA,EAAQG,QAAQ,IAAK,MACbA,QAAQ,IAAK,KACbA,QAAQ,IAAK,UAtCnCC,GAAuDC,kDAA1CjC,GAAiCD,gDAAjCC,EAAiCkC,kyBDb9CnC,iBACEA,kBACAA,4BACEA,mBACFA,QACFA,QACAA,iBAEEA,mBAEEA,WACEA,sBACAA,sBAOFA,QACAA,WACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QAEAA,aACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QAEAA,wBACAA,wBACFA,QACFA,QACAA,6BAAsGA,gCAAQoC,2CAE9GpC,eA1CkBA,qCACuBA,8CAKtBA,qCA8BKA,sDACaA,sDAGtBA,0DAA2C,aAA3CA,CAA2C,+IC7B7CC,EAAb,cCeaoC,EAAb,eAAaA,KAAbC,iFAAaD,4DAdF,CACPE,KACAC,aAAsCvC,GACtCwC,KACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,QAISX,EAAb","names":["i0","SubstanceStructuralUnitsComponent","utilsService","gaService","s","Subject","this","substanceUpdated","subscribe","u","substance","structuralUnits","polymer","countUpdate","emit","length","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","amt","displayAmount","con","display","JSON","stringify","replace","o","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceStructuralUnitsModule","f","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-structural-units/substance-structural-units.component.html","./src/app/core/substance-details/substance-structural-units/substance-structural-units.component.ts","./src/app/core/substance-details/substance-structural-units/substance-structural-units.module.ts"],"sourcesContent":["
\n \n \n \n \n
\n
\n\n \n\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n \n
SRU \n
\n \n
\n\n
\n
\n \n \n
Label {{sru.label}} Amount {{displayAmount(sru.amount)}} Type {{sru.type}} Connectivity {{connectivity(sru.attachmentMap)}}
\n
\n\n\n","import { Component, OnInit } from '@angular/core';\nimport {Monomer, SubstanceDetail} from '../../substance/substance.model';\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\nimport { UtilsService } from '../../utils/utils.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport {Subject} from 'rxjs';\nimport {StructuralUnit} from '@gsrs-core/substance';\n\n@Component({\n selector: 'app-substance-structural-units',\n templateUrl: './substance-structural-units.component.html',\n styleUrls: ['./substance-structural-units.component.scss']\n})\nexport class SubstanceStructuralUnitsComponent extends SubstanceCardBaseFilteredList implements OnInit {\n structuralUnits: Array;\n displayedColumns: string[] = ['SRU', 'label', 'amount', 'type', 'connectivity'];\n substanceUpdated = new Subject();\n constructor(\n private utilsService: UtilsService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null) {\n this.structuralUnits = this.substance.polymer.structuralUnits;\n this.countUpdate.emit(this.structuralUnits.length);\n this.filtered = this.substance.polymer.structuralUnits;\n this.pageChange();\n\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.structuralUnits, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n }\n });\n\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n connectivity(con): string {\n let display = JSON.stringify(con);\n display = display.replace(':', '=');\n display = display.replace('\"', '');\n display = display.replace(',', ', ');\n\n return display;\n }\n\n}\n","\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatTableModule} from '@angular/material/table';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport {SubstanceStructuralUnitsComponent} from '@gsrs-core/substance-details/substance-structural-units/substance-structural-units.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceStructuralUnitsComponent),\n MatTableModule,\n CdkTableModule,\n MatPaginatorModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [SubstanceStructuralUnitsComponent]\n})\nexport class SubstanceStructuralUnitsModule { }\n"],"sourceRoot":"webpack:///","file":"5913.e6d4b7e3d6751ad1.js"} \ No newline at end of file +{"version":3,"mappings":"8ZAWMA,iBAAuCA,iBAAIA,kCAC3CA,iBACEA,kBACEA,kBACAA,eAGFA,QANFA,gCAE8CA,yDAO9CA,iBAAuCA,mBAAMA,kCAC7CA,iBAAoCA,SAAcA,gCAAdA,uDAGpCA,iBAAuCA,oBAAOA,kCAC9CA,iBAAoCA,SAA8BA,0CAA9BA,yEAIpCA,iBAAuCA,kBAAKA,kCAC5CA,iBAAoCA,SAAaA,gCAAbA,sDAGpCA,iBAAuCA,0BAAaA,kCACpDA,iBAAoCA,gBAAOA,SAAoCA,QAAOA,0CAA3CA,6EAG7CA,sCACAA,uDC1BSC,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACDC,GAAiC,6BAExCC,cAAMD,IAHED,eACDE,cAJTA,mBAA6B,CAAC,MAAO,QAAS,SAAU,OAAQ,gBAChEA,mBAAmB,IAAIC,IAGmBD,EAN5C,uCAWE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,YACPD,EAAKE,gBAAkBF,EAAKC,UAAUE,QAAQD,gBAC9CF,EAAKI,YAAYC,KAAKL,EAAKE,gBAAgBI,QAC3CN,EAAKO,SAAWP,EAAKC,UAAUE,QAAQD,gBACvCF,EAAKQ,aAELR,EAAKS,cAAcC,aAAaX,UAAU,YACxCC,EAAKW,WAAWC,EAAOZ,EAAKE,gBAAiBF,EAAKa,yBACjD,YACDC,QAAQC,IAAIC,UAvBtB,2BA8BE,SAAcC,GACZ,OAAOpB,KAAKJ,aAAayB,cAAcD,KA/B3C,0BAkCE,SAAaE,GACX,IAAIC,EAAUC,KAAKC,UAAUH,GAC7BC,OACAA,GADAA,EAAUA,EAAQG,QAAQ,IAAK,MACbA,QAAQ,IAAK,KACbA,QAAQ,IAAK,UAtCnCC,GAAuDC,kDAA1CjC,GAAiCD,gDAAjCC,EAAiCkC,kyBDb9CnC,iBACEA,kBACAA,4BACEA,mBACFA,QACFA,QACAA,iBAEEA,mBAEEA,WACEA,sBACAA,sBAOFA,QACAA,WACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QAEAA,aACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QAEAA,wBACAA,wBACFA,QACFA,QACAA,6BAAsGA,gCAAQoC,2CAE9GpC,eA1CkBA,qCACuBA,8CAKtBA,qCA8BKA,sDACaA,sDAGtBA,0DAA2C,aAA3CA,CAA2C,+IC7B7CC,EAAb,cCeaoC,EAAb,eAAaA,KAAbC,iFAAaD,4DAdF,CACPE,KACAC,aAAsCvC,GACtCwC,KACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,QAISX,EAAb","names":["i0","SubstanceStructuralUnitsComponent","utilsService","gaService","s","Subject","this","substanceUpdated","subscribe","u","substance","structuralUnits","polymer","countUpdate","emit","length","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","amt","displayAmount","con","display","JSON","stringify","replace","o","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceStructuralUnitsModule","f","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-structural-units/substance-structural-units.component.html","./src/app/core/substance-details/substance-structural-units/substance-structural-units.component.ts","./src/app/core/substance-details/substance-structural-units/substance-structural-units.module.ts"],"sourcesContent":["
\n \n \n \n \n
\n
\n\n \n\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n \n
SRU \n
\n \n
\n\n
\n
\n \n \n
Label {{sru.label}} Amount {{displayAmount(sru.amount)}} Type {{sru.type}} Connectivity {{connectivity(sru.attachmentMap)}}
\n
\n\n\n","import { Component, OnInit } from '@angular/core';\nimport {Monomer, SubstanceDetail} from '../../substance/substance.model';\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\nimport { UtilsService } from '../../utils/utils.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport {Subject} from 'rxjs';\nimport {StructuralUnit} from '@gsrs-core/substance';\n\n@Component({\n selector: 'app-substance-structural-units',\n templateUrl: './substance-structural-units.component.html',\n styleUrls: ['./substance-structural-units.component.scss']\n})\nexport class SubstanceStructuralUnitsComponent extends SubstanceCardBaseFilteredList implements OnInit {\n structuralUnits: Array;\n displayedColumns: string[] = ['SRU', 'label', 'amount', 'type', 'connectivity'];\n substanceUpdated = new Subject();\n constructor(\n private utilsService: UtilsService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null) {\n this.structuralUnits = this.substance.polymer.structuralUnits;\n this.countUpdate.emit(this.structuralUnits.length);\n this.filtered = this.substance.polymer.structuralUnits;\n this.pageChange();\n\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.structuralUnits, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n }\n });\n\n }\n\n displayAmount(amt): string {\n return this.utilsService.displayAmount(amt);\n }\n\n connectivity(con): string {\n let display = JSON.stringify(con);\n display = display.replace(':', '=');\n display = display.replace('\"', '');\n display = display.replace(',', ', ');\n\n return display;\n }\n\n}\n","\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatTableModule} from '@angular/material/table';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport {SubstanceStructuralUnitsComponent} from '@gsrs-core/substance-details/substance-structural-units/substance-structural-units.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceStructuralUnitsComponent),\n MatTableModule,\n CdkTableModule,\n MatPaginatorModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [SubstanceStructuralUnitsComponent]\n})\nexport class SubstanceStructuralUnitsModule { }\n"],"sourceRoot":"webpack:///","file":"5913.b128595d2176eec5.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/5965.2888e437f9906fd7.js b/frontend/src/main/resources/static/5965.950fb46cf1a03ac0.js similarity index 94% rename from frontend/src/main/resources/static/5965.2888e437f9906fd7.js rename to frontend/src/main/resources/static/5965.950fb46cf1a03ac0.js index c635119..1d578d9 100644 --- a/frontend/src/main/resources/static/5965.2888e437f9906fd7.js +++ b/frontend/src/main/resources/static/5965.950fb46cf1a03ac0.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5965],{65965:function(_,m,s){s.r(m),s.d(m,{SubstanceMixtureComponentsModule:function(){return Q}});var d=s(48047),v=s(78069),r=s(36362),f=s(98002),l=s(64061),g=s(24582),x=s(7318),Z=s(2756),b=s(50253),n=s(76442),C=s(9292);function T(t,i){if(1&t&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&t){var e=n.oxw().$implicit;n.xp6(1),n.Oqu(e.substance.linkingID)}}var p=function(i){return["/substances",i]};function A(t,i){if(1&t&&(n.TgZ(0,"div",4),n.YNc(1,T,2,1,"div",5),n._UZ(2,"img",6),n.TgZ(3,"div"),n.TgZ(4,"a",7),n._uU(5),n.qZA(),n.qZA(),n.qZA()),2&t){var e=i.$implicit;n.xp6(1),n.Q6J("ngIf",e.substance.linkingID),n.xp6(1),n.Q6J("entityId",e.substance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,p,e.substance.refuuid)),n.xp6(1),n.hij(" ",e.substance.name," ")}}function I(t,i){if(1&t&&(n.TgZ(0,"div"),n.TgZ(1,"h3"),n._uU(2,"All of the following components "),n.TgZ(3,"i"),n._uU(4,"must"),n.qZA(),n._uU(5," be present:"),n.qZA(),n.TgZ(6,"div",2),n.YNc(7,A,6,6,"div",3),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(7),n.Q6J("ngForOf",e.required)}}function h(t,i){if(1&t&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&t){var e=n.oxw().$implicit;n.xp6(1),n.Oqu(e.substance.linkingID)}}function M(t,i){if(1&t&&(n.TgZ(0,"div",4),n.YNc(1,h,2,1,"div",5),n._UZ(2,"img",6),n.TgZ(3,"div"),n.TgZ(4,"a",7),n._uU(5),n.qZA(),n.qZA(),n.qZA()),2&t){var e=i.$implicit;n.xp6(1),n.Q6J("ngIf",e.substance.linkingID),n.xp6(1),n.Q6J("entityId",e.substance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,p,e.substance.refuuid)),n.xp6(1),n.hij(" ",e.substance.name," ")}}function S(t,i){if(1&t&&(n.TgZ(0,"div"),n.TgZ(1,"h3"),n._uU(2,"Any of these components may be present:"),n.qZA(),n.TgZ(3,"div",2),n.YNc(4,M,6,6,"div",3),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(4),n.Q6J("ngForOf",e.presentInAny)}}function y(t,i){if(1&t&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&t){var e=n.oxw().$implicit;n.xp6(1),n.Oqu(e.substance.linkingID)}}function q(t,i){if(1&t&&(n.TgZ(0,"div",4),n.YNc(1,y,2,1,"div",5),n._UZ(2,"img",6),n.TgZ(3,"div"),n.TgZ(4,"a",7),n._uU(5),n.qZA(),n.qZA(),n.qZA()),2&t){var e=i.$implicit;n.xp6(1),n.Q6J("ngIf",e.substance.linkingID),n.xp6(1),n.Q6J("entityId",e.substance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,p,e.substance.refuuid)),n.xp6(1),n.hij(" ",e.substance.name," ")}}function O(t,i){if(1&t&&(n.TgZ(0,"div",2),n.TgZ(1,"h3"),n._uU(2,"One of these components may be present:"),n.qZA(),n.TgZ(3,"div",9),n.YNc(4,q,6,6,"div",3),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(4),n.Q6J("ngForOf",e.presentInOne)}}var U=function(){var t=function(i){(0,g.Z)(o,i);var e=(0,x.Z)(o);function o(){var c;return(0,v.Z)(this,o),(c=e.call(this)).substanceUpdated=new b.x,c}return(0,d.Z)(o,[{key:"ngOnInit",value:function(){var u=this;this.substanceUpdated.subscribe(function(N){u.substance=N,null!=u.substance&&u.substance.mixture.components.length>0&&(u.countUpdate.emit(u.substance.mixture.components.length),u.components=u.substance.mixture.components,u.required=u.components.filter(function(a){return"MUST_BE_PRESENT"===a.type}),u.presentInAny=u.components.filter(function(a){return"MAY_BE_PRESENT_ANY_OF"===a.type}),u.presentInOne=u.components.filter(function(a){return"MAY_BE_PRESENT_ONE_OF"===a.type}))})}}]),o}(Z.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-mixture-components"]],features:[n.qOj],decls:3,vars:3,consts:[[4,"ngIf"],["class","flex-row wrap",4,"ngIf"],[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"],[1,"flex-row"]],template:function(e,o){1&e&&(n.YNc(0,I,8,1,"div",0),n.YNc(1,S,5,1,"div",0),n.YNc(2,O,5,1,"div",1)),2&e&&(n.Q6J("ngIf",o.required&&o.required.length>0),n.xp6(1),n.Q6J("ngIf",o.presentInAny&&o.presentInAny.length>0),n.xp6(1),n.Q6J("ngIf",o.presentInOne&&o.presentInOne.length>0))},directives:[r.O5,r.sg,C.m,f.yS],styles:[".wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),t}(),J=s(24054),Q=function(){var t=(0,d.Z)(function i(){(0,v.Z)(this,i)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[r.ez,f.Bz,l.o.forChild(U),J.f]]}),t}()}}]); -//# sourceMappingURL=5965.2888e437f9906fd7.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[5965],{65965:function(_,m,s){s.r(m),s.d(m,{SubstanceMixtureComponentsModule:function(){return Q}});var d=s(1884),v=s(39117),r=s(36362),f=s(98002),l=s(64061),g=s(46751),x=s(56101),Z=s(2756),b=s(50253),n=s(86613),C=s(9292);function T(t,i){if(1&t&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&t){var e=n.oxw().$implicit;n.xp6(1),n.Oqu(e.substance.linkingID)}}var p=function(i){return["/substances",i]};function A(t,i){if(1&t&&(n.TgZ(0,"div",4),n.YNc(1,T,2,1,"div",5),n._UZ(2,"img",6),n.TgZ(3,"div"),n.TgZ(4,"a",7),n._uU(5),n.qZA(),n.qZA(),n.qZA()),2&t){var e=i.$implicit;n.xp6(1),n.Q6J("ngIf",e.substance.linkingID),n.xp6(1),n.Q6J("entityId",e.substance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,p,e.substance.refuuid)),n.xp6(1),n.hij(" ",e.substance.name," ")}}function I(t,i){if(1&t&&(n.TgZ(0,"div"),n.TgZ(1,"h3"),n._uU(2,"All of the following components "),n.TgZ(3,"i"),n._uU(4,"must"),n.qZA(),n._uU(5," be present:"),n.qZA(),n.TgZ(6,"div",2),n.YNc(7,A,6,6,"div",3),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(7),n.Q6J("ngForOf",e.required)}}function h(t,i){if(1&t&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&t){var e=n.oxw().$implicit;n.xp6(1),n.Oqu(e.substance.linkingID)}}function M(t,i){if(1&t&&(n.TgZ(0,"div",4),n.YNc(1,h,2,1,"div",5),n._UZ(2,"img",6),n.TgZ(3,"div"),n.TgZ(4,"a",7),n._uU(5),n.qZA(),n.qZA(),n.qZA()),2&t){var e=i.$implicit;n.xp6(1),n.Q6J("ngIf",e.substance.linkingID),n.xp6(1),n.Q6J("entityId",e.substance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,p,e.substance.refuuid)),n.xp6(1),n.hij(" ",e.substance.name," ")}}function S(t,i){if(1&t&&(n.TgZ(0,"div"),n.TgZ(1,"h3"),n._uU(2,"Any of these components may be present:"),n.qZA(),n.TgZ(3,"div",2),n.YNc(4,M,6,6,"div",3),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(4),n.Q6J("ngForOf",e.presentInAny)}}function y(t,i){if(1&t&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&t){var e=n.oxw().$implicit;n.xp6(1),n.Oqu(e.substance.linkingID)}}function q(t,i){if(1&t&&(n.TgZ(0,"div",4),n.YNc(1,y,2,1,"div",5),n._UZ(2,"img",6),n.TgZ(3,"div"),n.TgZ(4,"a",7),n._uU(5),n.qZA(),n.qZA(),n.qZA()),2&t){var e=i.$implicit;n.xp6(1),n.Q6J("ngIf",e.substance.linkingID),n.xp6(1),n.Q6J("entityId",e.substance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,p,e.substance.refuuid)),n.xp6(1),n.hij(" ",e.substance.name," ")}}function O(t,i){if(1&t&&(n.TgZ(0,"div",2),n.TgZ(1,"h3"),n._uU(2,"One of these components may be present:"),n.qZA(),n.TgZ(3,"div",9),n.YNc(4,q,6,6,"div",3),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(4),n.Q6J("ngForOf",e.presentInOne)}}var U=function(){var t=function(i){(0,g.Z)(o,i);var e=(0,x.Z)(o);function o(){var c;return(0,v.Z)(this,o),(c=e.call(this)).substanceUpdated=new b.x,c}return(0,d.Z)(o,[{key:"ngOnInit",value:function(){var u=this;this.substanceUpdated.subscribe(function(N){u.substance=N,null!=u.substance&&u.substance.mixture.components.length>0&&(u.countUpdate.emit(u.substance.mixture.components.length),u.components=u.substance.mixture.components,u.required=u.components.filter(function(a){return"MUST_BE_PRESENT"===a.type}),u.presentInAny=u.components.filter(function(a){return"MAY_BE_PRESENT_ANY_OF"===a.type}),u.presentInOne=u.components.filter(function(a){return"MAY_BE_PRESENT_ONE_OF"===a.type}))})}}]),o}(Z.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-mixture-components"]],features:[n.qOj],decls:3,vars:3,consts:[[4,"ngIf"],["class","flex-row wrap",4,"ngIf"],[1,"flex-row","wrap"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"],[1,"flex-row"]],template:function(e,o){1&e&&(n.YNc(0,I,8,1,"div",0),n.YNc(1,S,5,1,"div",0),n.YNc(2,O,5,1,"div",1)),2&e&&(n.Q6J("ngIf",o.required&&o.required.length>0),n.xp6(1),n.Q6J("ngIf",o.presentInAny&&o.presentInAny.length>0),n.xp6(1),n.Q6J("ngIf",o.presentInOne&&o.presentInOne.length>0))},directives:[r.O5,r.sg,C.m,f.yS],styles:[".wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),t}(),J=s(24054),Q=function(){var t=(0,d.Z)(function i(){(0,v.Z)(this,i)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[r.ez,f.Bz,l.o.forChild(U),J.f]]}),t}()}}]); +//# sourceMappingURL=5965.950fb46cf1a03ac0.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/5965.2888e437f9906fd7.js.map b/frontend/src/main/resources/static/5965.950fb46cf1a03ac0.js.map similarity index 99% rename from frontend/src/main/resources/static/5965.2888e437f9906fd7.js.map rename to frontend/src/main/resources/static/5965.950fb46cf1a03ac0.js.map index 2905a3a..aa25ecd 100644 --- a/frontend/src/main/resources/static/5965.2888e437f9906fd7.js.map +++ b/frontend/src/main/resources/static/5965.950fb46cf1a03ac0.js.map @@ -1 +1 @@ -{"version":3,"mappings":"0UAKMA,iBAAwDA,SAAiCA,sCAAjCA,2GAD1DA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAPQA,6CACoCA,+CAEdA,4DACxBA,mEATVA,eACEA,cAAIA,4CACFA,aAAGA,gBAAIA,QAAKA,wBAAWA,QACzBA,iBACEA,uBASFA,QACFA,4BAV+BA,+DAezBA,iBAAwDA,SAAiCA,sCAAjCA,gEAD1DA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAPQA,6CACoCA,+CAEdA,4DACxBA,mEARVA,eACEA,cAAIA,mDAAuCA,QAC3CA,iBACEA,uBASFA,QAEFA,4BAX+BA,mEAgBzBA,iBAAwDA,SAAiCA,sCAAjCA,gEAD1DA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAPQA,6CACoCA,+CAEdA,4DACxBA,mEARVA,iBACEA,cAAIA,mDAAuCA,QAC3CA,iBACEA,uBASFA,QACFA,4BAV+BA,0CCvBxB,IAAMC,EAAb,eAAaA,EAAb,0CAOE,0CACEC,gBAHFC,iBAAmB,IAAIC,IAEvBF,EAPF,uCAWE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,EACM,MAAlBD,EAAKC,WAAuBD,EAAKC,UAAUC,QAAQC,WAAWC,OAAS,IAC1EJ,EAAKK,YAAYC,KAAKN,EAAKC,UAAUC,QAAQC,WAAWC,QACxDJ,EAAKG,WAAaH,EAAKC,UAAUC,QAAQC,WACzCH,EAAKO,SAAWP,EAAKG,WAAWK,OAC9B,YAAS,MAAuB,oBAAnBC,EAAUC,OACzBV,EAAKW,aAAeX,EAAKG,WAAWK,OAClC,YAAS,MAAuB,0BAAnBC,EAAUC,OACzBV,EAAKY,aAAeZ,EAAKG,WAAWK,OAClC,YAAS,MAAuB,0BAAnBC,EAAUC,cAtBjCG,GAAyDC,kDAA5CpB,8BAAmCqB,kYDVhDtB,uBAeAA,uBAeAA,8BA9BMA,8CAeAA,+DAeAA,0KCpBOC,EAAb,cCQasB,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,KACAC,aAAsC1B,GACtC2B,QAMSL,EAAb","names":["i0","SubstanceMixtureComponentsComponent","c","substanceUpdated","Subject","this","subscribe","u","substance","mixture","components","length","countUpdate","emit","required","filter","component","type","presentInAny","presentInOne","o","SubstanceCardBase","selectors","SubstanceMixtureComponentsModule","d","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-mixture-components/substance-mixture-components.component.html","./src/app/core/substance-details/substance-mixture-components/substance-mixture-components.component.ts","./src/app/core/substance-details/substance-mixture-components/substance-mixture-components.module.ts"],"sourcesContent":["
0\">\r\n

All of the following components\r\n must be present:

\r\n
\r\n
\r\n
{{component.substance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n
\r\n
0\">\r\n

Any of these components may be present:

\r\n
\r\n
\r\n
{{component.substance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
0\" class=\"flex-row wrap\">\r\n

One of these components may be present:

\r\n
\r\n
\r\n
{{component.substance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {MixtureComponents, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-mixture-components',\r\n templateUrl: './substance-mixture-components.component.html',\r\n styleUrls: ['./substance-mixture-components.component.scss']\r\n})\r\nexport class SubstanceMixtureComponentsComponent extends SubstanceCardBase implements OnInit {\r\n components: Array;\r\n required: Array;\r\n presentInAny: Array;\r\n presentInOne: Array;\r\n substanceUpdated = new Subject();\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if ((this.substance != null) && (this.substance.mixture.components.length > 0)) {\r\n this.countUpdate.emit(this.substance.mixture.components.length);\r\n this.components = this.substance.mixture.components;\r\n this.required = this.components.filter(\r\n component => component.type === 'MUST_BE_PRESENT');\r\n this.presentInAny = this.components.filter(\r\n component => component.type === 'MAY_BE_PRESENT_ANY_OF');\r\n this.presentInOne = this.components.filter(\r\n component => component.type === 'MAY_BE_PRESENT_ONE_OF');\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceMixtureComponentsComponent } from './substance-mixture-components.component';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMixtureComponentsComponent),\r\n SubstanceImageModule\r\n ],\r\n declarations: [\r\n SubstanceMixtureComponentsComponent\r\n ]\r\n})\r\nexport class SubstanceMixtureComponentsModule { }\r\n\r\n"],"sourceRoot":"webpack:///","file":"5965.2888e437f9906fd7.js"} \ No newline at end of file +{"version":3,"mappings":"0UAKMA,iBAAwDA,SAAiCA,sCAAjCA,2GAD1DA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAPQA,6CACoCA,+CAEdA,4DACxBA,mEATVA,eACEA,cAAIA,4CACFA,aAAGA,gBAAIA,QAAKA,wBAAWA,QACzBA,iBACEA,uBASFA,QACFA,4BAV+BA,+DAezBA,iBAAwDA,SAAiCA,sCAAjCA,gEAD1DA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAPQA,6CACoCA,+CAEdA,4DACxBA,mEARVA,eACEA,cAAIA,mDAAuCA,QAC3CA,iBACEA,uBASFA,QAEFA,4BAX+BA,mEAgBzBA,iBAAwDA,SAAiCA,sCAAjCA,gEAD1DA,iBACEA,uBACAA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAPQA,6CACoCA,+CAEdA,4DACxBA,mEARVA,iBACEA,cAAIA,mDAAuCA,QAC3CA,iBACEA,uBASFA,QACFA,4BAV+BA,0CCvBxB,IAAMC,EAAb,eAAaA,EAAb,0CAOE,0CACEC,gBAHFC,iBAAmB,IAAIC,IAEvBF,EAPF,uCAWE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAC9BC,EAAKC,UAAYA,EACM,MAAlBD,EAAKC,WAAuBD,EAAKC,UAAUC,QAAQC,WAAWC,OAAS,IAC1EJ,EAAKK,YAAYC,KAAKN,EAAKC,UAAUC,QAAQC,WAAWC,QACxDJ,EAAKG,WAAaH,EAAKC,UAAUC,QAAQC,WACzCH,EAAKO,SAAWP,EAAKG,WAAWK,OAC9B,YAAS,MAAuB,oBAAnBC,EAAUC,OACzBV,EAAKW,aAAeX,EAAKG,WAAWK,OAClC,YAAS,MAAuB,0BAAnBC,EAAUC,OACzBV,EAAKY,aAAeZ,EAAKG,WAAWK,OAClC,YAAS,MAAuB,0BAAnBC,EAAUC,cAtBjCG,GAAyDC,kDAA5CpB,8BAAmCqB,kYDVhDtB,uBAeAA,uBAeAA,8BA9BMA,8CAeAA,+DAeAA,0KCpBOC,EAAb,cCQasB,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,KACAC,aAAsC1B,GACtC2B,QAMSL,EAAb","names":["i0","SubstanceMixtureComponentsComponent","c","substanceUpdated","Subject","this","subscribe","u","substance","mixture","components","length","countUpdate","emit","required","filter","component","type","presentInAny","presentInOne","o","SubstanceCardBase","selectors","SubstanceMixtureComponentsModule","d","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-mixture-components/substance-mixture-components.component.html","./src/app/core/substance-details/substance-mixture-components/substance-mixture-components.component.ts","./src/app/core/substance-details/substance-mixture-components/substance-mixture-components.module.ts"],"sourcesContent":["
0\">\r\n

All of the following components\r\n must be present:

\r\n
\r\n
\r\n
{{component.substance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n
\r\n
0\">\r\n

Any of these components may be present:

\r\n
\r\n
\r\n
{{component.substance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
0\" class=\"flex-row wrap\">\r\n

One of these components may be present:

\r\n
\r\n
\r\n
{{component.substance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {MixtureComponents, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-mixture-components',\r\n templateUrl: './substance-mixture-components.component.html',\r\n styleUrls: ['./substance-mixture-components.component.scss']\r\n})\r\nexport class SubstanceMixtureComponentsComponent extends SubstanceCardBase implements OnInit {\r\n components: Array;\r\n required: Array;\r\n presentInAny: Array;\r\n presentInOne: Array;\r\n substanceUpdated = new Subject();\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if ((this.substance != null) && (this.substance.mixture.components.length > 0)) {\r\n this.countUpdate.emit(this.substance.mixture.components.length);\r\n this.components = this.substance.mixture.components;\r\n this.required = this.components.filter(\r\n component => component.type === 'MUST_BE_PRESENT');\r\n this.presentInAny = this.components.filter(\r\n component => component.type === 'MAY_BE_PRESENT_ANY_OF');\r\n this.presentInOne = this.components.filter(\r\n component => component.type === 'MAY_BE_PRESENT_ONE_OF');\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceMixtureComponentsComponent } from './substance-mixture-components.component';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMixtureComponentsComponent),\r\n SubstanceImageModule\r\n ],\r\n declarations: [\r\n SubstanceMixtureComponentsComponent\r\n ]\r\n})\r\nexport class SubstanceMixtureComponentsModule { }\r\n\r\n"],"sourceRoot":"webpack:///","file":"5965.950fb46cf1a03ac0.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6102.00a928993408d756.js b/frontend/src/main/resources/static/6102.3413f71a7ae8f5d2.js similarity index 65% rename from frontend/src/main/resources/static/6102.00a928993408d756.js rename to frontend/src/main/resources/static/6102.3413f71a7ae8f5d2.js index c94bca1..77c1934 100644 --- a/frontend/src/main/resources/static/6102.00a928993408d756.js +++ b/frontend/src/main/resources/static/6102.3413f71a7ae8f5d2.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6102],{36102:function(Je,y,p){p.r(y),p.d(y,{SubstanceFormPropertiesModule:function(){return Se}});var v=p(48047),_=p(78069),d=p(36362),F=p(24582),A=p(7318),N=p(79550),I=p(24874),S=p(39233),e=p(76442),J=p(78444),h=p(44770),x=p(43365),c=p(90587),C=p(26439),U=p(51279),O=p(42827),M=p(56569),Q=p(52149),w=p(39401),Y=p(33567),E=p(95758),k=p(66088),f=p(87317),g=p(65590),L=p(16667),T=p(61534),q=p(24459),D=p(84577),P=p(26131),$=p(33662),R=p(48302),z=p(14900);function j(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",16),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",17),e.NdJ("click",function(){return e.CHM(t),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",18),e.qZA(),e.qZA()}}function H(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",19),e._uU(2,"Site Range"),e.qZA(),e.TgZ(3,"input",20),e.NdJ("ngModelChange",function(i){return e.CHM(t),e.oxw()._nonNumeric=i})("focusout",function(){return e.CHM(t),e.oxw().validateRange()}),e.qZA(),e.TgZ(4,"button",21),e.NdJ("click",function(){return e.CHM(t),e.oxw().openFeatureDialog()}),e._UZ(5,"mat-icon",22),e.qZA(),e.qZA()}if(2&n){var o=e.oxw();e.xp6(3),e.Q6J("ngModel",o._nonNumeric)}}function V(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",23),e.TgZ(1,"app-substance-selector",24),e.NdJ("selectionUpdated",function(i){return e.CHM(t),e.oxw().referencedSubstanceUpdated(i)}),e.qZA(),e.qZA()}if(2&n){var o=e.oxw();e.xp6(1),e.Q6J("subuuid",o.referencedSubstanceUuid)}}function B(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(1),e.AsE(" \xa0- \xa0 ",t.value.average," \xa0 ",t.value.units," ")}}function X(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0 - "),e.qZA())}function W(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," > "),e.qZA())}function G(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," < "),e.qZA())}function K(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.low," ")}}function ee(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0to\xa0 "),e.qZA())}function te(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.high," ")}}function ne(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" \xa0 ",t.value.units," \xa0 (average) ")}}function oe(n,r){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,X,2,0,"span",12),e._uU(2," \xa0 [ "),e.YNc(3,W,2,0,"span",12),e.YNc(4,G,2,0,"span",12),e.YNc(5,K,2,1,"span",12),e.YNc(6,ee,2,0,"span",12),e.YNc(7,te,2,1,"span",12),e._uU(8," ] "),e.YNc(9,ne,2,1,"span",12),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf",null==t.value.average||""==t.value.average),e.xp6(2),e.Q6J("ngIf",null==t.value.high||""==t.value.high),e.xp6(1),e.Q6J("ngIf",null==t.value.low||""==t.value.low),e.xp6(1),e.Q6J("ngIf",null!=t.value.low&&""!=t.value.low),e.xp6(1),e.Q6J("ngIf",null!=t.value.low&&""!=t.value.low&&null!=t.value.high&&""!=t.value.high),e.xp6(1),e.Q6J("ngIf",null!=t.value.high&&""!=t.value.high),e.xp6(2),e.Q6J("ngIf",null==t.value.average||""==t.value.average)}}function ie(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0 (average) "),e.qZA())}function re(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," > "),e.qZA())}function ae(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," < "),e.qZA())}function pe(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.lowLimit," ")}}function le(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0to\xa0 "),e.qZA())}function se(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.highLimit," ")}}function ce(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0- \xa0 [ "),e.YNc(2,re,2,0,"span",12),e.YNc(3,ae,2,0,"span",12),e.YNc(4,pe,2,1,"span",12),e.YNc(5,le,2,0,"span",12),e.YNc(6,se,2,1,"span",12),e._uU(7," ] \xa0(limits) "),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(2),e.Q6J("ngIf",null==t.value.highLimit||""==t.value.highLimit),e.xp6(1),e.Q6J("ngIf",null==t.value.lowLimit||""==t.value.lowLimit),e.xp6(1),e.Q6J("ngIf",null!=t.value.lowLimit&&""!=t.value.lowLimit),e.xp6(1),e.Q6J("ngIf",null!=t.value.lowLimit&&""!=t.value.lowLimit&&null!=t.value.highLimit&&""!=t.value.highLimit),e.xp6(1),e.Q6J("ngIf",null!=t.value.highLimit&&""!=t.value.highLimit)}}function ue(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(1),e.hij(" \xa0-\xa0 ",t.value.nonNumericValue," ")}}function me(n,r){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"span"),e._uU(2),e.qZA(),e.YNc(3,B,2,2,"span",12),e.YNc(4,oe,10,7,"span",12),e.YNc(5,ie,2,0,"span",12),e.YNc(6,ce,8,5,"span",12),e.YNc(7,ue,2,1,"span",12),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(2),e.hij(" \xa0 ",t.value.type," "),e.xp6(1),e.Q6J("ngIf",null!=t.value.average&&""!=t.value.average),e.xp6(1),e.Q6J("ngIf",null!=t.value.low&&""!=t.value.low||null!=t.value.high&&""!=t.value.high),e.xp6(1),e.Q6J("ngIf",null!=t.value.average&&""!=t.value.average),e.xp6(1),e.Q6J("ngIf",null!=t.value.lowLimit&&""!=t.value.lowLimit||null!=t.value.highLimit&&""!=t.value.highLimit),e.xp6(1),e.Q6J("ngIf",t.value.nonNumericValue)}}function de(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",29),e.TgZ(1,"button",30),e.NdJ("click",function(){var l=e.CHM(t).index;return e.oxw(3).deleteParameter(l)}),e._UZ(2,"mat-icon",5),e.qZA(),e.TgZ(3,"span"),e._uU(4),e.qZA(),e.YNc(5,me,8,6,"span",12),e.TgZ(6,"button",31),e.NdJ("click",function(){var l=e.CHM(t).$implicit;return e.oxw(3).openPropertyParameter(l)}),e._UZ(7,"mat-icon",22),e.qZA(),e.qZA()}if(2&n){var o=r.$implicit;e.xp6(4),e.Oqu(o.name),e.xp6(1),e.Q6J("ngIf",null!=o.value)}}function ve(n,r){if(1&n&&(e.TgZ(0,"mat-list"),e.YNc(1,de,8,2,"div",28),e.qZA()),2&n){var t=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",t.property.parameters)}}function _e(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",7),e.TgZ(1,"div"),e.TgZ(2,"h4",25),e._uU(3," Parameters "),e.TgZ(4,"button",26),e.NdJ("click",function(){return e.CHM(t),e.oxw().openPropertyParameter()}),e._UZ(5,"mat-icon",27),e.qZA(),e.qZA(),e.YNc(6,ve,2,1,"mat-list",12),e.qZA(),e.qZA()}if(2&n){var o=e.oxw();e.xp6(6),e.Q6J("ngIf",o.property.parameters)}}function fe(n,r){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",19),e._uU(2,"Amount"),e.qZA(),e._UZ(3,"app-amount-form",38),e.qZA()),2&n){var t=e.oxw(2);e.xp6(3),e.Q6J("substanceAmount",t.property.value)}}function ge(n,r){if(1&n&&(e.TgZ(0,"div"),e.YNc(1,fe,4,1,"div",32),e.TgZ(2,"div",7),e.TgZ(3,"div",33),e._UZ(4,"app-domain-references",34,35),e.qZA(),e.qZA(),e._UZ(6,"app-audit-info",36),e.qZA()),2&n){var t=e.oxw();e.xp6(1),e.Q6J("ngIf","PROTEIN FEATURE"!==t.property.propertyType&&"NUCLEIC ACID FEATURE"!==t.property.propertyType),e.xp6(3),e.Q6J("referencesUuids",t.property.references),e.xp6(2),e.Q6J("source",t.property)}}var ye=function(){var n=function(){function r(t,o,a,i,l){(0,_.Z)(this,r),this.cvService=t,this.dialog=o,this.utilsService=a,this.overlayContainerService=i,this.substanceFormService=l,this.propertyDeleted=new e.vpe,this.propertyNameList=[],this.propertyTypeList=[]}return(0,v.Z)(r,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"property",get:function(){return this.privateProperty},set:function(o){this.privateProperty=o,this.referencedSubstanceUuid=this.privateProperty.referencedSubstance&&this.privateProperty.referencedSubstance.refuuid||"",this.privateProperty.value||(this.privateProperty.value={}),this.property.value&&this.property.value.nonNumericValue&&(this._nonNumeric=this.property.value.nonNumericValue)}},{key:"deleteProperty",value:function(){var o=this;this.privateProperty.$$deletedCode=this.utilsService.newUUID(),(!this.privateProperty.referencedSubstance||!this.privateProperty.referencedSubstance.refuuid)&&!this.privateProperty.name&&!this.privateProperty.type&&(this.deleteTimer=setTimeout(function(){o.propertyDeleted.emit(o.property)},2e3))}},{key:"deleteParameter",value:function(o){this.property.parameters.splice(o,1)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateProperty.$$deletedCode}},{key:"updateAccess",value:function(o){this.property.access=o}},{key:"referencedSubstanceUpdated",value:function(o){this.property.referencedSubstance=null!==o?{refPname:o._name,name:o._name,refuuid:o.uuid,substanceClass:"reference",approvalID:o.approvalID}:null}},{key:"openPropertyParameter",value:function(o){var i,a=this;null==o&&(i=!0,o={value:{}});var l=JSON.stringify(o),s=this.dialog.open(M.M,{data:JSON.parse(l),width:"1200px"});this.overlayContainer.style.zIndex="1002",s.afterClosed().subscribe(function(u){a.overlayContainer.style.zIndex=null,null!=u&&(null==a.property.parameters&&(a.property.parameters=[]),i?a.property.parameters.unshift(u):Object.keys(u).forEach(function(m){o[m]=u[m]}))})}},{key:"openFeatureDialog",value:function(){var o=this,i=this.dialog.open(w.r,{data:{card:"feature",link:[],feature:{name:this.property.name,siteRange:this.property.value.nonNumericValue}},width:"1048px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002",i.afterClosed().subscribe(function(s){o.overlayContainer.style.zIndex=null,o.property.name=s.name||"",o.property.value.nonNumericValue=s.siteRange,o._nonNumeric=s.siteRange})}},{key:"validateRange",value:function(){try{this.substanceFormService.stringToSites(this._nonNumeric),this.property.value.nonNumericValue=this._nonNumeric}catch(o){alert('invalid shorthand for a site. Must be of form "{subunit}_{residue}" with multiple ranges seperated by a comma. Changes will be reverted'),this._nonNumeric=this.property.value.nonNumericValue}}},{key:"addOtherOption",value:function(o,a){return o.some(function(i){return a===i.value}),o}}]),r}();return n.\u0275fac=function(t){return new(t||n)(e.Y36(O.I),e.Y36(E.uw),e.Y36(Q.F),e.Y36(k.Xj),e.Y36(Y.B))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-property-form"]],inputs:{property:"property"},outputs:{propertyDeleted:"propertyDeleted"},decls:19,vars:9,consts:[[1,"property-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"flex-column"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete property",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","form-content"],[1,"form-row"],["required","true","key","Property Name","title","Name",1,"name","property-name",3,"model","valueChange"],["required","true","key","Property Property Type","title","Property Type","name","type",1,"type",3,"model","valueChange"],[1,"checkbox-container","column-checkbox"],["name","defining",3,"ngModel","ngModelChange"],[4,"ngIf"],["class","flex-column referenced-substance",4,"ngIf"],[3,"access","accessOut"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"amount-title"],[3,"ngModel","ngModelChange","focusout"],["mat-icon-button","","matTooltip","Edit Feature Sites",3,"click"],["svgIcon","edit"],[1,"flex-column","referenced-substance"],["eventCategory","substancePropertyReferencedSub","placeholder","Referenced Substance","header","Referenced Substance",3,"subuuid","selectionUpdated"],[1,"parameters-title"],["mat-icon-button","","matTooltip","Add parameter",3,"click"],["svgIcon","add_circle_outline"],["mat-list-item","",4,"ngFor","ngForOf"],["mat-list-item",""],["mat-icon-button","",1,"parameter-delete-icon",3,"click"],["mat-icon-button","",1,"parameter-icon",3,"click"],["class","amount-form-container",4,"ngIf"],[1,"references-container"],[3,"referencesUuids"],["references",""],[3,"source"],[1,"amount-form-container"],[3,"substanceAmount"]],template:function(t,o){1&t&&(e.TgZ(0,"div",0),e.YNc(1,j,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return o.deleteProperty()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"div",7),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(i){return o.property.name=i}),e.qZA(),e.TgZ(9,"app-cv-input",9),e.NdJ("valueChange",function(i){return o.property.propertyType=i}),e.qZA(),e.TgZ(10,"div",10),e.TgZ(11,"mat-checkbox",11),e.NdJ("ngModelChange",function(i){return o.property.defining=i}),e._uU(12," Defining "),e.qZA(),e.qZA(),e.YNc(13,H,6,1,"div",12),e.YNc(14,V,2,1,"div",13),e.TgZ(15,"div"),e.TgZ(16,"app-access-manager",14),e.NdJ("accessOut",function(i){return o.updateAccess(i)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(17,_e,7,1,"div",15),e.qZA(),e.qZA(),e.YNc(18,ge,7,3,"div",12)),2&t&&(e.xp6(1),e.Q6J("ngIf",o.property.$$deletedCode),e.xp6(7),e.Q6J("model",o.property.name),e.xp6(1),e.Q6J("model",o.property.propertyType),e.xp6(2),e.Q6J("ngModel",o.property.defining),e.xp6(2),e.Q6J("ngIf","PROTEIN FEATURE"===o.property.propertyType||"NUCLEIC ACID FEATURE"===o.property.propertyType),e.xp6(1),e.Q6J("ngIf","PROTEIN FEATURE"!==o.property.propertyType&&"NUCLEIC ACID FEATURE"!==o.property.propertyType),e.xp6(2),e.Q6J("access",o.property.access),e.xp6(1),e.Q6J("ngIf",!o.property.$$deletedCode),e.xp6(1),e.Q6J("ngIf",!o.property.$$deletedCode))},directives:[d.O5,f.lW,g.Hw,L.S,T.oG,c.JJ,c.On,c.Fj,q.Q,D.h,P.i$,d.sg,$.f,R.V,z.n],styles:[".property-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.type[_ngcontent-%COMP%] mat-form-field, .qualification[_ngcontent-%COMP%] mat-form-field, .interaction-type[_ngcontent-%COMP%] mat-form-field{width:100%}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.referenced-substance[_ngcontent-%COMP%]{max-width:25%;width:25%}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:16px;padding-right:15px}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}.amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:7.5px;line-height:11px}.parameters-title[_ngcontent-%COMP%]{margin-bottom:0}"]}),n}(),Z=p(19975);function he(n,r){if(1&n&&(e.TgZ(0,"mat-form-field",6),e._UZ(1,"input",7),e.qZA()),2&n){var t=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",t.searchControl)}}var b=function(){return[5,10,25,100]};function xe(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(t);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var o=e.oxw();e.Q6J("length",o.filtered&&o.filtered.length||0)("pageIndex",o.page)("pageSize",5)("pageSizeOptions",e.DdM(4,b))}}function Ce(n,r){1&n&&e._UZ(0,"mat-divider",12),2&n&&e.Q6J("inset",!0)}function Te(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-property-form",10),e.NdJ("propertyDeleted",function(s){return e.CHM(t),e.oxw().deleteProperty(s)}),e.qZA(),e.YNc(2,Ce,1,1,"mat-divider",11),e.qZA()}if(2&n){var o=r.$implicit,a=r.last;e.Q6J("id","substance-property-"+r.index),e.xp6(1),e.Q6J("property",o),e.xp6(1),e.Q6J("ngIf",!a)}}function Pe(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(t);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var o=e.oxw();e.Q6J("length",o.filtered&&o.filtered.length||0)("pageIndex",o.page)("pageSize",5)("pageSizeOptions",e.DdM(4,b))}}function Ze(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",13),e._UZ(1,"span",2),e.TgZ(2,"button",14),e.NdJ("click",function(){return e.CHM(t),e.oxw().addProperty()}),e._uU(3," Add property "),e._UZ(4,"mat-icon",15),e.qZA(),e.qZA()}}var be=function(){var n=function(r){(0,F.Z)(o,r);var t=(0,A.Z)(o);function o(a,i,l){var s;return(0,_.Z)(this,o),(s=t.call(this,l)).substanceFormPropertiesService=a,s.scrollToService=i,s.gaService=l,s.subscriptions=[],s.analyticsEventCategory="substance form properties",s}return(0,v.Z)(o,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Properties")}},{key:"ngAfterViewInit",value:function(){var i=this,l=this.substanceFormPropertiesService.substanceProperties.subscribe(function(s){i.properties=s,i.filtered=s;var u=i.searchControl.valueChanges.subscribe(function(m){i.filterList(m,i.properties,i.analyticsEventCategory)},function(m){console.log(m)});i.subscriptions.push(u),i.page=0,i.pageChange()});this.subscriptions.push(l)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"addItem",value:function(){this.addProperty()}},{key:"addProperty",value:function(){var i=this;this.substanceFormPropertiesService.addSubstanceProperty(),setTimeout(function(){i.scrollToService.scrollToElement("substance-property-0","center")})}},{key:"deleteProperty",value:function(i){this.substanceFormPropertiesService.deleteSubstanceProperty(i)}}]),o}(N.u);return n.\u0275fac=function(t){return new(t||n)(e.Y36(S.S),e.Y36(J.i),e.Y36(I.$))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-form-properties-card"]],features:[e.qOj],decls:7,vars:5,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","property","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"property",3,"id"],[3,"property","propertyDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(t,o){1&t&&(e.TgZ(0,"div",0),e.YNc(1,he,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.qZA(),e.YNc(3,xe,1,5,"mat-paginator",3),e.YNc(4,Te,3,3,"div",4),e.YNc(5,Pe,1,5,"mat-paginator",3),e.YNc(6,Ze,5,0,"div",5)),2&t&&(e.xp6(1),e.Q6J("ngIf",o.properties&&o.properties.length>o.pageSize),e.xp6(2),e.Q6J("ngIf",o.properties&&o.properties.length>5),e.xp6(1),e.Q6J("ngForOf",o.paged),e.xp6(1),e.Q6J("ngIf",o.properties&&o.properties.length>5),e.xp6(1),e.Q6J("ngIf",o.properties&&o.properties.length>0))},directives:[d.O5,h.KE,x.Nt,c.Fj,c.JJ,c.oH,C.NW,d.sg,U.P,ye,Z.d,f.lW,g.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.property[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.property[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.property[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.property[_ngcontent-%COMP%] .mat-expansion-panel, .property[_ngcontent-%COMP%] .mat-table, .property[_ngcontent-%COMP%] textarea{background-color:transparent}"]}),n}(),Fe=p(64061),Ae=p(7168),Ne=p(94673),Ie=p(63200),Se=function(){var n=(0,v.Z)(function r(){(0,_.Z)(this,r)});return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[d.ez,Fe.o.forChild(be),Ae.O,Z.t,g.Ps,f.ot,Ne.w,h.lN,c.UX,c.u5,C.TU,x.c,Ie.U,T.p9,P.ie]]}),n}()}}]); -//# sourceMappingURL=6102.00a928993408d756.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6102],{36102:function(Je,y,p){p.r(y),p.d(y,{SubstanceFormPropertiesModule:function(){return Se}});var v=p(1884),_=p(39117),d=p(36362),F=p(46751),A=p(56101),N=p(79550),I=p(24874),S=p(39233),e=p(86613),J=p(78444),h=p(44770),x=p(43365),c=p(90587),C=p(26439),U=p(51279),O=p(42827),M=p(56569),Q=p(52149),w=p(39401),Y=p(33567),E=p(95758),k=p(54244),f=p(87317),g=p(65590),L=p(16667),T=p(61534),q=p(24459),D=p(84577),P=p(26131),$=p(33662),R=p(48302),z=p(14900);function j(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",16),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",17),e.NdJ("click",function(){return e.CHM(t),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",18),e.qZA(),e.qZA()}}function H(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",19),e._uU(2,"Site Range"),e.qZA(),e.TgZ(3,"input",20),e.NdJ("ngModelChange",function(i){return e.CHM(t),e.oxw()._nonNumeric=i})("focusout",function(){return e.CHM(t),e.oxw().validateRange()}),e.qZA(),e.TgZ(4,"button",21),e.NdJ("click",function(){return e.CHM(t),e.oxw().openFeatureDialog()}),e._UZ(5,"mat-icon",22),e.qZA(),e.qZA()}if(2&n){var o=e.oxw();e.xp6(3),e.Q6J("ngModel",o._nonNumeric)}}function V(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",23),e.TgZ(1,"app-substance-selector",24),e.NdJ("selectionUpdated",function(i){return e.CHM(t),e.oxw().referencedSubstanceUpdated(i)}),e.qZA(),e.qZA()}if(2&n){var o=e.oxw();e.xp6(1),e.Q6J("subuuid",o.referencedSubstanceUuid)}}function B(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(1),e.AsE(" \xa0- \xa0 ",t.value.average," \xa0 ",t.value.units," ")}}function X(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0 - "),e.qZA())}function W(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," > "),e.qZA())}function G(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," < "),e.qZA())}function K(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.low," ")}}function ee(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0to\xa0 "),e.qZA())}function te(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.high," ")}}function ne(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" \xa0 ",t.value.units," \xa0 (average) ")}}function oe(n,r){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,X,2,0,"span",12),e._uU(2," \xa0 [ "),e.YNc(3,W,2,0,"span",12),e.YNc(4,G,2,0,"span",12),e.YNc(5,K,2,1,"span",12),e.YNc(6,ee,2,0,"span",12),e.YNc(7,te,2,1,"span",12),e._uU(8," ] "),e.YNc(9,ne,2,1,"span",12),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf",null==t.value.average||""==t.value.average),e.xp6(2),e.Q6J("ngIf",null==t.value.high||""==t.value.high),e.xp6(1),e.Q6J("ngIf",null==t.value.low||""==t.value.low),e.xp6(1),e.Q6J("ngIf",null!=t.value.low&&""!=t.value.low),e.xp6(1),e.Q6J("ngIf",null!=t.value.low&&""!=t.value.low&&null!=t.value.high&&""!=t.value.high),e.xp6(1),e.Q6J("ngIf",null!=t.value.high&&""!=t.value.high),e.xp6(2),e.Q6J("ngIf",null==t.value.average||""==t.value.average)}}function ie(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0 (average) "),e.qZA())}function re(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," > "),e.qZA())}function ae(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," < "),e.qZA())}function pe(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.lowLimit," ")}}function le(n,r){1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0to\xa0 "),e.qZA())}function se(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",t.value.highLimit," ")}}function ce(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1," \xa0- \xa0 [ "),e.YNc(2,re,2,0,"span",12),e.YNc(3,ae,2,0,"span",12),e.YNc(4,pe,2,1,"span",12),e.YNc(5,le,2,0,"span",12),e.YNc(6,se,2,1,"span",12),e._uU(7," ] \xa0(limits) "),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(2),e.Q6J("ngIf",null==t.value.highLimit||""==t.value.highLimit),e.xp6(1),e.Q6J("ngIf",null==t.value.lowLimit||""==t.value.lowLimit),e.xp6(1),e.Q6J("ngIf",null!=t.value.lowLimit&&""!=t.value.lowLimit),e.xp6(1),e.Q6J("ngIf",null!=t.value.lowLimit&&""!=t.value.lowLimit&&null!=t.value.highLimit&&""!=t.value.highLimit),e.xp6(1),e.Q6J("ngIf",null!=t.value.highLimit&&""!=t.value.highLimit)}}function ue(n,r){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw(2).$implicit;e.xp6(1),e.hij(" \xa0-\xa0 ",t.value.nonNumericValue," ")}}function me(n,r){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"span"),e._uU(2),e.qZA(),e.YNc(3,B,2,2,"span",12),e.YNc(4,oe,10,7,"span",12),e.YNc(5,ie,2,0,"span",12),e.YNc(6,ce,8,5,"span",12),e.YNc(7,ue,2,1,"span",12),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(2),e.hij(" \xa0 ",t.value.type," "),e.xp6(1),e.Q6J("ngIf",null!=t.value.average&&""!=t.value.average),e.xp6(1),e.Q6J("ngIf",null!=t.value.low&&""!=t.value.low||null!=t.value.high&&""!=t.value.high),e.xp6(1),e.Q6J("ngIf",null!=t.value.average&&""!=t.value.average),e.xp6(1),e.Q6J("ngIf",null!=t.value.lowLimit&&""!=t.value.lowLimit||null!=t.value.highLimit&&""!=t.value.highLimit),e.xp6(1),e.Q6J("ngIf",t.value.nonNumericValue)}}function de(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",29),e.TgZ(1,"button",30),e.NdJ("click",function(){var l=e.CHM(t).index;return e.oxw(3).deleteParameter(l)}),e._UZ(2,"mat-icon",5),e.qZA(),e.TgZ(3,"span"),e._uU(4),e.qZA(),e.YNc(5,me,8,6,"span",12),e.TgZ(6,"button",31),e.NdJ("click",function(){var l=e.CHM(t).$implicit;return e.oxw(3).openPropertyParameter(l)}),e._UZ(7,"mat-icon",22),e.qZA(),e.qZA()}if(2&n){var o=r.$implicit;e.xp6(4),e.Oqu(o.name),e.xp6(1),e.Q6J("ngIf",null!=o.value)}}function ve(n,r){if(1&n&&(e.TgZ(0,"mat-list"),e.YNc(1,de,8,2,"div",28),e.qZA()),2&n){var t=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",t.property.parameters)}}function _e(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",7),e.TgZ(1,"div"),e.TgZ(2,"h4",25),e._uU(3," Parameters "),e.TgZ(4,"button",26),e.NdJ("click",function(){return e.CHM(t),e.oxw().openPropertyParameter()}),e._UZ(5,"mat-icon",27),e.qZA(),e.qZA(),e.YNc(6,ve,2,1,"mat-list",12),e.qZA(),e.qZA()}if(2&n){var o=e.oxw();e.xp6(6),e.Q6J("ngIf",o.property.parameters)}}function fe(n,r){if(1&n&&(e.TgZ(0,"div",37),e.TgZ(1,"div",19),e._uU(2,"Amount"),e.qZA(),e._UZ(3,"app-amount-form",38),e.qZA()),2&n){var t=e.oxw(2);e.xp6(3),e.Q6J("substanceAmount",t.property.value)}}function ge(n,r){if(1&n&&(e.TgZ(0,"div"),e.YNc(1,fe,4,1,"div",32),e.TgZ(2,"div",7),e.TgZ(3,"div",33),e._UZ(4,"app-domain-references",34,35),e.qZA(),e.qZA(),e._UZ(6,"app-audit-info",36),e.qZA()),2&n){var t=e.oxw();e.xp6(1),e.Q6J("ngIf","PROTEIN FEATURE"!==t.property.propertyType&&"NUCLEIC ACID FEATURE"!==t.property.propertyType),e.xp6(3),e.Q6J("referencesUuids",t.property.references),e.xp6(2),e.Q6J("source",t.property)}}var ye=function(){var n=function(){function r(t,o,a,i,l){(0,_.Z)(this,r),this.cvService=t,this.dialog=o,this.utilsService=a,this.overlayContainerService=i,this.substanceFormService=l,this.propertyDeleted=new e.vpe,this.propertyNameList=[],this.propertyTypeList=[]}return(0,v.Z)(r,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"property",get:function(){return this.privateProperty},set:function(o){this.privateProperty=o,this.referencedSubstanceUuid=this.privateProperty.referencedSubstance&&this.privateProperty.referencedSubstance.refuuid||"",this.privateProperty.value||(this.privateProperty.value={}),this.property.value&&this.property.value.nonNumericValue&&(this._nonNumeric=this.property.value.nonNumericValue)}},{key:"deleteProperty",value:function(){var o=this;this.privateProperty.$$deletedCode=this.utilsService.newUUID(),(!this.privateProperty.referencedSubstance||!this.privateProperty.referencedSubstance.refuuid)&&!this.privateProperty.name&&!this.privateProperty.type&&(this.deleteTimer=setTimeout(function(){o.propertyDeleted.emit(o.property)},2e3))}},{key:"deleteParameter",value:function(o){this.property.parameters.splice(o,1)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateProperty.$$deletedCode}},{key:"updateAccess",value:function(o){this.property.access=o}},{key:"referencedSubstanceUpdated",value:function(o){this.property.referencedSubstance=null!==o?{refPname:o._name,name:o._name,refuuid:o.uuid,substanceClass:"reference",approvalID:o.approvalID}:null}},{key:"openPropertyParameter",value:function(o){var i,a=this;null==o&&(i=!0,o={value:{}});var l=JSON.stringify(o),s=this.dialog.open(M.M,{data:JSON.parse(l),width:"1200px"});this.overlayContainer.style.zIndex="1002",s.afterClosed().subscribe(function(u){a.overlayContainer.style.zIndex=null,null!=u&&(null==a.property.parameters&&(a.property.parameters=[]),i?a.property.parameters.unshift(u):Object.keys(u).forEach(function(m){o[m]=u[m]}))})}},{key:"openFeatureDialog",value:function(){var o=this,i=this.dialog.open(w.r,{data:{card:"feature",link:[],feature:{name:this.property.name,siteRange:this.property.value.nonNumericValue}},width:"1048px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002",i.afterClosed().subscribe(function(s){o.overlayContainer.style.zIndex=null,o.property.name=s.name||"",o.property.value.nonNumericValue=s.siteRange,o._nonNumeric=s.siteRange})}},{key:"validateRange",value:function(){try{this.substanceFormService.stringToSites(this._nonNumeric),this.property.value.nonNumericValue=this._nonNumeric}catch(o){alert('invalid shorthand for a site. Must be of form "{subunit}_{residue}" with multiple ranges seperated by a comma. Changes will be reverted'),this._nonNumeric=this.property.value.nonNumericValue}}},{key:"addOtherOption",value:function(o,a){return o.some(function(i){return a===i.value}),o}}]),r}();return n.\u0275fac=function(t){return new(t||n)(e.Y36(O.I),e.Y36(E.uw),e.Y36(Q.F),e.Y36(k.Xj),e.Y36(Y.B))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-property-form"]],inputs:{property:"property"},outputs:{propertyDeleted:"propertyDeleted"},decls:19,vars:9,consts:[[1,"property-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"flex-column"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete property",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","form-content"],[1,"form-row"],["required","true","key","Property Name","title","Name",1,"name","property-name",3,"model","valueChange"],["required","true","key","Property Property Type","title","Property Type","name","type",1,"type",3,"model","valueChange"],[1,"checkbox-container","column-checkbox"],["name","defining",3,"ngModel","ngModelChange"],[4,"ngIf"],["class","flex-column referenced-substance",4,"ngIf"],[3,"access","accessOut"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"amount-title"],[3,"ngModel","ngModelChange","focusout"],["mat-icon-button","","matTooltip","Edit Feature Sites",3,"click"],["svgIcon","edit"],[1,"flex-column","referenced-substance"],["eventCategory","substancePropertyReferencedSub","placeholder","Referenced Substance","header","Referenced Substance",3,"subuuid","selectionUpdated"],[1,"parameters-title"],["mat-icon-button","","matTooltip","Add parameter",3,"click"],["svgIcon","add_circle_outline"],["mat-list-item","",4,"ngFor","ngForOf"],["mat-list-item",""],["mat-icon-button","",1,"parameter-delete-icon",3,"click"],["mat-icon-button","",1,"parameter-icon",3,"click"],["class","amount-form-container",4,"ngIf"],[1,"references-container"],[3,"referencesUuids"],["references",""],[3,"source"],[1,"amount-form-container"],[3,"substanceAmount"]],template:function(t,o){1&t&&(e.TgZ(0,"div",0),e.YNc(1,j,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return o.deleteProperty()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"div",7),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(i){return o.property.name=i}),e.qZA(),e.TgZ(9,"app-cv-input",9),e.NdJ("valueChange",function(i){return o.property.propertyType=i}),e.qZA(),e.TgZ(10,"div",10),e.TgZ(11,"mat-checkbox",11),e.NdJ("ngModelChange",function(i){return o.property.defining=i}),e._uU(12," Defining "),e.qZA(),e.qZA(),e.YNc(13,H,6,1,"div",12),e.YNc(14,V,2,1,"div",13),e.TgZ(15,"div"),e.TgZ(16,"app-access-manager",14),e.NdJ("accessOut",function(i){return o.updateAccess(i)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(17,_e,7,1,"div",15),e.qZA(),e.qZA(),e.YNc(18,ge,7,3,"div",12)),2&t&&(e.xp6(1),e.Q6J("ngIf",o.property.$$deletedCode),e.xp6(7),e.Q6J("model",o.property.name),e.xp6(1),e.Q6J("model",o.property.propertyType),e.xp6(2),e.Q6J("ngModel",o.property.defining),e.xp6(2),e.Q6J("ngIf","PROTEIN FEATURE"===o.property.propertyType||"NUCLEIC ACID FEATURE"===o.property.propertyType),e.xp6(1),e.Q6J("ngIf","PROTEIN FEATURE"!==o.property.propertyType&&"NUCLEIC ACID FEATURE"!==o.property.propertyType),e.xp6(2),e.Q6J("access",o.property.access),e.xp6(1),e.Q6J("ngIf",!o.property.$$deletedCode),e.xp6(1),e.Q6J("ngIf",!o.property.$$deletedCode))},directives:[d.O5,f.lW,g.Hw,L.S,T.oG,c.JJ,c.On,c.Fj,q.Q,D.h,P.i$,d.sg,$.f,R.V,z.n],styles:[".property-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.type[_ngcontent-%COMP%] mat-form-field, .qualification[_ngcontent-%COMP%] mat-form-field, .interaction-type[_ngcontent-%COMP%] mat-form-field{width:100%}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.referenced-substance[_ngcontent-%COMP%]{max-width:25%;width:25%}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:16px;padding-right:15px}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}.amount-title[_ngcontent-%COMP%]{margin-bottom:10px;font-weight:700}.amount-form-container[_ngcontent-%COMP%]{padding:0 7px}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:7.5px;line-height:11px}.parameters-title[_ngcontent-%COMP%]{margin-bottom:0}"]}),n}(),Z=p(19975);function he(n,r){if(1&n&&(e.TgZ(0,"mat-form-field",6),e._UZ(1,"input",7),e.qZA()),2&n){var t=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",t.searchControl)}}var b=function(){return[5,10,25,100]};function xe(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(t);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var o=e.oxw();e.Q6J("length",o.filtered&&o.filtered.length||0)("pageIndex",o.page)("pageSize",5)("pageSizeOptions",e.DdM(4,b))}}function Ce(n,r){1&n&&e._UZ(0,"mat-divider",12),2&n&&e.Q6J("inset",!0)}function Te(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-property-form",10),e.NdJ("propertyDeleted",function(s){return e.CHM(t),e.oxw().deleteProperty(s)}),e.qZA(),e.YNc(2,Ce,1,1,"mat-divider",11),e.qZA()}if(2&n){var o=r.$implicit,a=r.last;e.Q6J("id","substance-property-"+r.index),e.xp6(1),e.Q6J("property",o),e.xp6(1),e.Q6J("ngIf",!a)}}function Pe(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(t);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var o=e.oxw();e.Q6J("length",o.filtered&&o.filtered.length||0)("pageIndex",o.page)("pageSize",5)("pageSizeOptions",e.DdM(4,b))}}function Ze(n,r){if(1&n){var t=e.EpF();e.TgZ(0,"div",13),e._UZ(1,"span",2),e.TgZ(2,"button",14),e.NdJ("click",function(){return e.CHM(t),e.oxw().addProperty()}),e._uU(3," Add property "),e._UZ(4,"mat-icon",15),e.qZA(),e.qZA()}}var be=function(){var n=function(r){(0,F.Z)(o,r);var t=(0,A.Z)(o);function o(a,i,l){var s;return(0,_.Z)(this,o),(s=t.call(this,l)).substanceFormPropertiesService=a,s.scrollToService=i,s.gaService=l,s.subscriptions=[],s.analyticsEventCategory="substance form properties",s}return(0,v.Z)(o,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Properties")}},{key:"ngAfterViewInit",value:function(){var i=this,l=this.substanceFormPropertiesService.substanceProperties.subscribe(function(s){i.properties=s,i.filtered=s;var u=i.searchControl.valueChanges.subscribe(function(m){i.filterList(m,i.properties,i.analyticsEventCategory)},function(m){console.log(m)});i.subscriptions.push(u),i.page=0,i.pageChange()});this.subscriptions.push(l)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"addItem",value:function(){this.addProperty()}},{key:"addProperty",value:function(){var i=this;this.substanceFormPropertiesService.addSubstanceProperty(),setTimeout(function(){i.scrollToService.scrollToElement("substance-property-0","center")})}},{key:"deleteProperty",value:function(i){this.substanceFormPropertiesService.deleteSubstanceProperty(i)}}]),o}(N.u);return n.\u0275fac=function(t){return new(t||n)(e.Y36(S.S),e.Y36(J.i),e.Y36(I.$))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-form-properties-card"]],features:[e.qOj],decls:7,vars:5,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","property","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"property",3,"id"],[3,"property","propertyDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(t,o){1&t&&(e.TgZ(0,"div",0),e.YNc(1,he,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.qZA(),e.YNc(3,xe,1,5,"mat-paginator",3),e.YNc(4,Te,3,3,"div",4),e.YNc(5,Pe,1,5,"mat-paginator",3),e.YNc(6,Ze,5,0,"div",5)),2&t&&(e.xp6(1),e.Q6J("ngIf",o.properties&&o.properties.length>o.pageSize),e.xp6(2),e.Q6J("ngIf",o.properties&&o.properties.length>5),e.xp6(1),e.Q6J("ngForOf",o.paged),e.xp6(1),e.Q6J("ngIf",o.properties&&o.properties.length>5),e.xp6(1),e.Q6J("ngIf",o.properties&&o.properties.length>0))},directives:[d.O5,h.KE,x.Nt,c.Fj,c.JJ,c.oH,C.NW,d.sg,U.P,ye,Z.d,f.lW,g.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.property[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.property[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.property[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.property[_ngcontent-%COMP%] .mat-expansion-panel, .property[_ngcontent-%COMP%] .mat-table, .property[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}"]}),n}(),Fe=p(64061),Ae=p(7168),Ne=p(94673),Ie=p(63200),Se=function(){var n=(0,v.Z)(function r(){(0,_.Z)(this,r)});return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[d.ez,Fe.o.forChild(be),Ae.O,Z.t,g.Ps,f.ot,Ne.w,h.lN,c.UX,c.u5,C.TU,x.c,Ie.U,T.p9,P.ie]]}),n}()}}]); +//# sourceMappingURL=6102.3413f71a7ae8f5d2.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6102.00a928993408d756.js.map b/frontend/src/main/resources/static/6102.3413f71a7ae8f5d2.js.map similarity index 99% rename from frontend/src/main/resources/static/6102.00a928993408d756.js.map rename to frontend/src/main/resources/static/6102.3413f71a7ae8f5d2.js.map index 9b59dce..d3acba5 100644 --- a/frontend/src/main/resources/static/6102.00a928993408d756.js.map +++ b/frontend/src/main/resources/static/6102.3413f71a7ae8f5d2.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r5","ctx_r9","ctx_r10","ctx_r11","ctx_r45","ctx_r47","ctx_r48","PropertyFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","overlayContainer","getContainerElement","privateProperty","set","property","referencedSubstanceUuid","referencedSubstance","refuuid","value","nonNumericValue","_nonNumeric","$$deletedCode","newUUID","name","type","deleteTimer","setTimeout","o","propertyDeleted","emit","id","parameters","splice","clearTimeout","access","substance","refPname","_name","uuid","substanceClass","approvalID","parameter","isNew","a","parameterCopyString","JSON","stringify","dialogRef","open","PropertyParameterDialogComponent","data","parse","width","style","zIndex","afterClosed","subscribe","newParameter","i","unshift","Object","keys","forEach","key","SubunitSelectorDialogComponent","card","link","feature","siteRange","panelClass","features","stringToSites","error","alert","vocab","some","r","selectors","ctx","ctx_r13","ctx_r15","SubstanceFormPropertiesCardComponent","substanceFormPropertiesService","scrollToService","gaService","s","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","propertiesSubscription","substanceProperties","properties","filtered","searchSubscription","searchControl","valueChanges","filterList","console","log","subscriptions","push","page","pageChange","componentDestroyed","subscription","unsubscribe","addProperty","addSubstanceProperty","scrollToElement","deleteSubstanceProperty","SubstanceCardBaseFilteredList","SubstanceFormPropertiesModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule","MatCheckboxModule","MatListModule"],"sources":["./src/app/core/substance-form/properties/property-form.component.html","./src/app/core/substance-form/properties/property-form.component.ts","./src/app/core/substance-form/properties/substance-form-properties-card.component.html","./src/app/core/substance-form/properties/substance-form-properties-card.component.ts","./src/app/core/substance-form/properties/substance-form-properties.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n
\n \n
\n
\n \n \n \n \n \n \n
\n \n Defining\n \n
\n
\n
Site Range
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n

\n Parameters\n \n

\n \n
\n \n \n {{parameter.name}}\n \n \n  \n {{parameter.value.type}}\n \n \n  -\n  \n {{parameter.value.average}}\n  \n {{parameter.value.units}}\n \n \n \n  \n -\n \n  \n [\n \n >\n \n \n <\n \n \n {{parameter.value.low}}\n \n \n  to \n \n \n {{parameter.value.high}}\n \n ]\n \n  \n {{parameter.value.units}}\n  \n (average)\n \n \n \n  \n (average)\n \n \n  -\n  \n [\n \n >\n \n \n <\n \n \n {{parameter.value.lowLimit}}\n \n \n  to \n \n \n {{parameter.value.highLimit}}\n \n ]\n  (limits)\n \n \n  - \n {{parameter.value.nonNumericValue}}\n \n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
Amount
\n \n
\n
\n
\n \n
\n
\n \n \n
\n ","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceProperty, SubstanceSummary, SubstanceRelated, SubstanceParameter } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { MatDialog } from '@angular/material/dialog';\nimport { PropertyParameterDialogComponent } from '../property-parameter-dialog/property-parameter-dialog.component';\nimport { UtilsService } from '../../utils/utils.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\n\n@Component({\n selector: 'app-property-form',\n templateUrl: './property-form.component.html',\n styleUrls: ['./property-form.component.scss']\n})\nexport class PropertyFormComponent implements OnInit {\n deleteTimer: any;\n private privateProperty: SubstanceProperty;\n referencedSubstanceUuid: string;\n @Output() propertyDeleted = new EventEmitter();\n propertyNameList: Array = [];\n propertyTypeList: Array = [];\n private overlayContainer: HTMLElement;\n _nonNumeric: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set property(property: SubstanceProperty) {\n this.privateProperty = property;\n this.referencedSubstanceUuid = this.privateProperty.referencedSubstance && this.privateProperty.referencedSubstance.refuuid || '';\n if ( !this.privateProperty.value) {\n this.privateProperty.value = {};\n }\n if (this.property.value && this.property.value.nonNumericValue) {\n this._nonNumeric = this.property.value.nonNumericValue;\n }\n }\n\n get property(): SubstanceProperty {\n return this.privateProperty;\n }\n\n deleteProperty(): void {\n this.privateProperty.$$deletedCode = this.utilsService.newUUID();\n if ((!this.privateProperty.referencedSubstance || !this.privateProperty.referencedSubstance.refuuid)\n && !this.privateProperty.name\n && !this.privateProperty.type\n ) {\n this.deleteTimer = setTimeout(() => {\n this.propertyDeleted.emit(this.property);\n }, 2000);\n }\n }\n\n deleteParameter(id: number): void {\n this.property.parameters.splice(id, 1);\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateProperty.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.property.access = access;\n }\n\n referencedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance !== null){\n const referencedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.property.referencedSubstance = referencedSubstance;\n } else {\n this.property.referencedSubstance = null;\n }\n\n }\n\n openPropertyParameter(parameter?: SubstanceParameter): void {\n\n let isNew: boolean;\n if (parameter == null) {\n isNew = true;\n parameter = { value: {} };\n }\n const parameterCopyString = JSON.stringify(parameter);\n\n const dialogRef = this.dialog.open(PropertyParameterDialogComponent, {\n data: JSON.parse(parameterCopyString),\n width: '1200px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(newParameter => {\n this.overlayContainer.style.zIndex = null;\n if (newParameter != null) {\n if (this.property.parameters == null) {\n this.property.parameters = [];\n }\n if (isNew) {\n this.property.parameters.unshift(newParameter);\n } else {\n Object.keys(newParameter).forEach(key => {\n parameter[key] = newParameter[key];\n });\n }\n }\n });\n }\n\n openFeatureDialog() {\n const feature = {'name': this.property.name, 'siteRange': this.property.value.nonNumericValue};\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'feature', 'link': [], 'feature': feature},\n width: '1048px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(features => {\n this.overlayContainer.style.zIndex = null;\n this.property.name = features.name || '';\n this.property.value.nonNumericValue = features.siteRange;\n this._nonNumeric = features.siteRange;\n });\n }\n\n validateRange() {\n try {\n this.substanceFormService.stringToSites(this._nonNumeric);\n this.property.value.nonNumericValue = this._nonNumeric;\n } catch (error) {\n alert('invalid shorthand for a site. Must be of form \"{subunit}_{residue}\" with multiple ranges seperated by a comma. Changes will be reverted');\n this._nonNumeric = this.property.value.nonNumericValue;\n }\n }\n\n addOtherOption(vocab: Array, property: string) {\n if (vocab.some(r => property === r.value)) {\n } else {\n }\n return vocab;\n }\n\n\n}\n","
\n pageSize\">\n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceProperty } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormPropertiesService } from './substance-form-properties.service';\n\n@Component({\n selector: 'app-substance-form-properties-card',\n templateUrl: './substance-form-properties-card.component.html',\n styleUrls: ['./substance-form-properties-card.component.scss']\n})\nexport class SubstanceFormPropertiesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n properties: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormPropertiesService: SubstanceFormPropertiesService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form properties';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Properties');\n }\n\n ngAfterViewInit() {\n const propertiesSubscription = this.substanceFormPropertiesService.substanceProperties.subscribe(properties => {\n this.properties = properties;\n this.filtered = properties;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.properties, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(propertiesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addProperty();\n }\n\n addProperty(): void {\n this.substanceFormPropertiesService.addSubstanceProperty();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-property-0`, 'center');\n });\n }\n\n deleteProperty(property: SubstanceProperty): void {\n this.substanceFormPropertiesService.deleteSubstanceProperty(property);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormPropertiesCardComponent } from './substance-form-properties-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { PropertyFormComponent } from './property-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatListModule } from '@angular/material/list';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormPropertiesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule,\n MatCheckboxModule,\n MatListModule\n ],\n declarations: [\n SubstanceFormPropertiesCardComponent,\n PropertyFormComponent\n ]\n})\nexport class SubstanceFormPropertiesModule { }\n"],"sourceRoot":"webpack:///","file":"6102.00a928993408d756.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r5","ctx_r9","ctx_r10","ctx_r11","ctx_r45","ctx_r47","ctx_r48","PropertyFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","overlayContainer","getContainerElement","privateProperty","set","property","referencedSubstanceUuid","referencedSubstance","refuuid","value","nonNumericValue","_nonNumeric","$$deletedCode","newUUID","name","type","deleteTimer","setTimeout","o","propertyDeleted","emit","id","parameters","splice","clearTimeout","access","substance","refPname","_name","uuid","substanceClass","approvalID","parameter","isNew","a","parameterCopyString","JSON","stringify","dialogRef","open","PropertyParameterDialogComponent","data","parse","width","style","zIndex","afterClosed","subscribe","newParameter","i","unshift","Object","keys","forEach","key","SubunitSelectorDialogComponent","card","link","feature","siteRange","panelClass","features","stringToSites","error","alert","vocab","some","r","selectors","ctx","ctx_r13","ctx_r15","SubstanceFormPropertiesCardComponent","substanceFormPropertiesService","scrollToService","gaService","s","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","propertiesSubscription","substanceProperties","properties","filtered","searchSubscription","searchControl","valueChanges","filterList","console","log","subscriptions","push","page","pageChange","componentDestroyed","subscription","unsubscribe","addProperty","addSubstanceProperty","scrollToElement","deleteSubstanceProperty","SubstanceCardBaseFilteredList","SubstanceFormPropertiesModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule","MatCheckboxModule","MatListModule"],"sources":["./src/app/core/substance-form/properties/property-form.component.html","./src/app/core/substance-form/properties/property-form.component.ts","./src/app/core/substance-form/properties/substance-form-properties-card.component.html","./src/app/core/substance-form/properties/substance-form-properties-card.component.ts","./src/app/core/substance-form/properties/substance-form-properties.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n
\n \n
\n
\n \n \n \n \n \n \n
\n \n Defining\n \n
\n
\n
Site Range
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n

\n Parameters\n \n

\n \n
\n \n \n {{parameter.name}}\n \n \n  \n {{parameter.value.type}}\n \n \n  -\n  \n {{parameter.value.average}}\n  \n {{parameter.value.units}}\n \n \n \n  \n -\n \n  \n [\n \n >\n \n \n <\n \n \n {{parameter.value.low}}\n \n \n  to \n \n \n {{parameter.value.high}}\n \n ]\n \n  \n {{parameter.value.units}}\n  \n (average)\n \n \n \n  \n (average)\n \n \n  -\n  \n [\n \n >\n \n \n <\n \n \n {{parameter.value.lowLimit}}\n \n \n  to \n \n \n {{parameter.value.highLimit}}\n \n ]\n  (limits)\n \n \n  - \n {{parameter.value.nonNumericValue}}\n \n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
Amount
\n \n
\n
\n
\n \n
\n
\n \n \n
\n ","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceProperty, SubstanceSummary, SubstanceRelated, SubstanceParameter } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { MatDialog } from '@angular/material/dialog';\nimport { PropertyParameterDialogComponent } from '../property-parameter-dialog/property-parameter-dialog.component';\nimport { UtilsService } from '../../utils/utils.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\n\n@Component({\n selector: 'app-property-form',\n templateUrl: './property-form.component.html',\n styleUrls: ['./property-form.component.scss']\n})\nexport class PropertyFormComponent implements OnInit {\n deleteTimer: any;\n private privateProperty: SubstanceProperty;\n referencedSubstanceUuid: string;\n @Output() propertyDeleted = new EventEmitter();\n propertyNameList: Array = [];\n propertyTypeList: Array = [];\n private overlayContainer: HTMLElement;\n _nonNumeric: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set property(property: SubstanceProperty) {\n this.privateProperty = property;\n this.referencedSubstanceUuid = this.privateProperty.referencedSubstance && this.privateProperty.referencedSubstance.refuuid || '';\n if ( !this.privateProperty.value) {\n this.privateProperty.value = {};\n }\n if (this.property.value && this.property.value.nonNumericValue) {\n this._nonNumeric = this.property.value.nonNumericValue;\n }\n }\n\n get property(): SubstanceProperty {\n return this.privateProperty;\n }\n\n deleteProperty(): void {\n this.privateProperty.$$deletedCode = this.utilsService.newUUID();\n if ((!this.privateProperty.referencedSubstance || !this.privateProperty.referencedSubstance.refuuid)\n && !this.privateProperty.name\n && !this.privateProperty.type\n ) {\n this.deleteTimer = setTimeout(() => {\n this.propertyDeleted.emit(this.property);\n }, 2000);\n }\n }\n\n deleteParameter(id: number): void {\n this.property.parameters.splice(id, 1);\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateProperty.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.property.access = access;\n }\n\n referencedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance !== null){\n const referencedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.property.referencedSubstance = referencedSubstance;\n } else {\n this.property.referencedSubstance = null;\n }\n\n }\n\n openPropertyParameter(parameter?: SubstanceParameter): void {\n\n let isNew: boolean;\n if (parameter == null) {\n isNew = true;\n parameter = { value: {} };\n }\n const parameterCopyString = JSON.stringify(parameter);\n\n const dialogRef = this.dialog.open(PropertyParameterDialogComponent, {\n data: JSON.parse(parameterCopyString),\n width: '1200px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(newParameter => {\n this.overlayContainer.style.zIndex = null;\n if (newParameter != null) {\n if (this.property.parameters == null) {\n this.property.parameters = [];\n }\n if (isNew) {\n this.property.parameters.unshift(newParameter);\n } else {\n Object.keys(newParameter).forEach(key => {\n parameter[key] = newParameter[key];\n });\n }\n }\n });\n }\n\n openFeatureDialog() {\n const feature = {'name': this.property.name, 'siteRange': this.property.value.nonNumericValue};\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'feature', 'link': [], 'feature': feature},\n width: '1048px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(features => {\n this.overlayContainer.style.zIndex = null;\n this.property.name = features.name || '';\n this.property.value.nonNumericValue = features.siteRange;\n this._nonNumeric = features.siteRange;\n });\n }\n\n validateRange() {\n try {\n this.substanceFormService.stringToSites(this._nonNumeric);\n this.property.value.nonNumericValue = this._nonNumeric;\n } catch (error) {\n alert('invalid shorthand for a site. Must be of form \"{subunit}_{residue}\" with multiple ranges seperated by a comma. Changes will be reverted');\n this._nonNumeric = this.property.value.nonNumericValue;\n }\n }\n\n addOtherOption(vocab: Array, property: string) {\n if (vocab.some(r => property === r.value)) {\n } else {\n }\n return vocab;\n }\n\n\n}\n","
\n pageSize\">\n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceProperty } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormPropertiesService } from './substance-form-properties.service';\n\n@Component({\n selector: 'app-substance-form-properties-card',\n templateUrl: './substance-form-properties-card.component.html',\n styleUrls: ['./substance-form-properties-card.component.scss']\n})\nexport class SubstanceFormPropertiesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n properties: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormPropertiesService: SubstanceFormPropertiesService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form properties';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Properties');\n }\n\n ngAfterViewInit() {\n const propertiesSubscription = this.substanceFormPropertiesService.substanceProperties.subscribe(properties => {\n this.properties = properties;\n this.filtered = properties;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.properties, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(propertiesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addProperty();\n }\n\n addProperty(): void {\n this.substanceFormPropertiesService.addSubstanceProperty();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-property-0`, 'center');\n });\n }\n\n deleteProperty(property: SubstanceProperty): void {\n this.substanceFormPropertiesService.deleteSubstanceProperty(property);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormPropertiesCardComponent } from './substance-form-properties-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { PropertyFormComponent } from './property-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatListModule } from '@angular/material/list';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormPropertiesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule,\n MatCheckboxModule,\n MatListModule\n ],\n declarations: [\n SubstanceFormPropertiesCardComponent,\n PropertyFormComponent\n ]\n})\nexport class SubstanceFormPropertiesModule { }\n"],"sourceRoot":"webpack:///","file":"6102.3413f71a7ae8f5d2.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6131.516a353ceb1fed14.js b/frontend/src/main/resources/static/6131.516a353ceb1fed14.js new file mode 100644 index 0000000..a7ba65e --- /dev/null +++ b/frontend/src/main/resources/static/6131.516a353ceb1fed14.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6131],{65992:function(X,C,a){a.r(C),a.d(C,{SubstanceFormNotesModule:function(){return W}});var p=a(1884),u=a(39117),m=a(36362),F=a(46751),S=a(56101),y=a(79550),O=a(24874),_=a(35663),e=a(86613),M=a(78444),N=a(44770),Z=a(43365),d=a(90587),b=a(26439),J=a(51279),I=a(52149),f=a(87317),g=a(65590),A=a(84577),U=a(48302),Q=a(14900);function P(n,r){if(1&n){var o=e.EpF();e.TgZ(0,"div",12),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",13),e.NdJ("click",function(){return e.CHM(o),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",14),e.qZA(),e.qZA()}}function D(n,r){if(1&n&&(e.TgZ(0,"div",2),e.TgZ(1,"div",15),e._UZ(2,"app-domain-references",16,17),e.qZA(),e.qZA()),2&n){var o=e.oxw();e.xp6(2),e.Q6J("referencesUuids",o.note.references)}}var E=function(){var n=function(){function r(o){(0,u.Z)(this,r),this.utilsService=o,this.noteDeleted=new e.vpe}return(0,p.Z)(r,[{key:"ngOnInit",value:function(){}},{key:"note",get:function(){return this.privateNote},set:function(t){this.privateNote=t}},{key:"deleteNote",value:function(){var t=this;this.privateNote.$$deletedCode=this.utilsService.newUUID(),this.privateNote.note||(this.deleteTimer=setTimeout(function(){t.noteDeleted.emit(t.note)},20))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateNote.$$deletedCode}},{key:"updateAccess",value:function(t){this.note.access=t}}]),r}();return n.\u0275fac=function(o){return new(o||n)(e.Y36(I.F))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-note-form"]],inputs:{note:"note"},outputs:{noteDeleted:"noteDeleted"},decls:15,vars:5,consts:[[1,"note-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete note",3,"click"],["svgIcon","delete_forever"],[1,"note"],[1,"textarea-label"],["placeholder","Enter text here","required","","name","note",3,"ngModel","ngModelChange"],[3,"access","accessOut"],["class","form-row",4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(o,t){1&o&&(e.TgZ(0,"div",0),e.YNc(1,P,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return t.deleteNote()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"div",7),e._uU(8,"Note"),e.qZA(),e.TgZ(9,"textarea",8),e.NdJ("ngModelChange",function(i){return t.note.note=i}),e._uU(10," "),e.qZA(),e.qZA(),e.TgZ(11,"div"),e.TgZ(12,"app-access-manager",9),e.NdJ("accessOut",function(i){return t.updateAccess(i)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(13,D,4,1,"div",10),e._UZ(14,"app-audit-info",11),e.qZA()),2&o&&(e.xp6(1),e.Q6J("ngIf",t.note.$$deletedCode),e.xp6(8),e.Q6J("ngModel",t.note.note),e.xp6(3),e.Q6J("access",t.note.access),e.xp6(1),e.Q6J("ngIf",!t.note.$$deletedCode),e.xp6(1),e.Q6J("source",t.note))},directives:[m.O5,f.lW,g.Hw,d.Fj,d.Q7,d.JJ,d.On,A.h,U.V,Q.n],styles:[".note-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),n}(),x=a(19975);function k(n,r){if(1&n&&(e.TgZ(0,"mat-form-field",6),e._UZ(1,"input",7),e.qZA()),2&n){var o=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",o.searchControl)}}var T=function(){return[5,10,25,100]};function z(n,r){if(1&n){var o=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(o);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,T))}}function Y(n,r){1&n&&e._UZ(0,"mat-divider",12),2&n&&e.Q6J("inset",!0)}function $(n,r){if(1&n){var o=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-note-form",10),e.NdJ("noteDeleted",function(c){return e.CHM(o),e.oxw().deleteNote(c)}),e.qZA(),e.YNc(2,Y,1,1,"mat-divider",11),e.qZA()}if(2&n){var t=r.$implicit,s=r.last;e.Q6J("id","substance-note-"+r.index),e.xp6(1),e.Q6J("note",t),e.xp6(1),e.Q6J("ngIf",!s)}}function w(n,r){if(1&n){var o=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(o);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,T))}}function H(n,r){if(1&n){var o=e.EpF();e.TgZ(0,"div",13),e._UZ(1,"span",2),e.TgZ(2,"button",14),e.NdJ("click",function(){return e.CHM(o),e.oxw().addNote()}),e._uU(3," Add note "),e._UZ(4,"mat-icon",15),e.qZA(),e.qZA()}}var j=function(){var n=function(r){(0,F.Z)(t,r);var o=(0,S.Z)(t);function t(s,i,l){var c;return(0,u.Z)(this,t),(c=o.call(this,l)).substanceFormNotesService=s,c.scrollToService=i,c.gaService=l,c.subscriptions=[],c.analyticsEventCategory="substance form notes",c}return(0,p.Z)(t,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Notes")}},{key:"ngAfterViewInit",value:function(){var i=this,l=this.substanceFormNotesService.substanceNotes.subscribe(function(c){i.notes=c,i.filtered=c;var v=i.searchControl.valueChanges.subscribe(function(h){i.filterList(h,i.notes,i.analyticsEventCategory)},function(h){console.log(h)});i.subscriptions.push(v),i.page=0,i.pageChange()});this.subscriptions.push(l)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"addItem",value:function(){this.addNote()}},{key:"addNote",value:function(){var i=this;this.substanceFormNotesService.addSubstanceNote(),setTimeout(function(){i.scrollToService.scrollToElement("substance-note-0","center")})}},{key:"deleteNote",value:function(i){this.substanceFormNotesService.deleteSubstanceNote(i)}}]),t}(y.u);return n.\u0275fac=function(o){return new(o||n)(e.Y36(_.k),e.Y36(M.i),e.Y36(O.$))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-form-notes-card"]],features:[e.qOj],decls:7,vars:5,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","note","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"note",3,"id"],[3,"note","noteDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(o,t){1&o&&(e.TgZ(0,"div",0),e.YNc(1,k,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.qZA(),e.YNc(3,z,1,5,"mat-paginator",3),e.YNc(4,$,3,3,"div",4),e.YNc(5,w,1,5,"mat-paginator",3),e.YNc(6,H,5,0,"div",5)),2&o&&(e.xp6(1),e.Q6J("ngIf",t.notes&&t.notes.length>t.pageSize),e.xp6(2),e.Q6J("ngIf",t.notes&&t.notes.length>5),e.xp6(1),e.Q6J("ngForOf",t.paged),e.xp6(1),e.Q6J("ngIf",t.notes&&t.notes.length>5),e.xp6(1),e.Q6J("ngIf",t.notes&&t.notes.length>0))},directives:[m.O5,N.KE,Z.Nt,d.Fj,d.JJ,d.oH,b.NW,m.sg,J.P,E,x.d,f.lW,g.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.note[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.note[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.note[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.note[_ngcontent-%COMP%] .mat-expansion-panel, .note[_ngcontent-%COMP%] .mat-table, .note[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),n}(),L=a(64061),B=a(7168),V=a(94673),W=function(){var n=(0,p.Z)(function r(){(0,u.Z)(this,r)});return n.\u0275fac=function(o){return new(o||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[m.ez,L.o.forChild(j),B.O,x.t,g.Ps,f.ot,V.w,N.lN,d.UX,d.u5,b.TU,Z.c]]}),n}()}}]); +//# sourceMappingURL=6131.516a353ceb1fed14.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6131.d632a5cb127fce74.js.map b/frontend/src/main/resources/static/6131.516a353ceb1fed14.js.map similarity index 98% rename from frontend/src/main/resources/static/6131.d632a5cb127fce74.js.map rename to frontend/src/main/resources/static/6131.516a353ceb1fed14.js.map index 5ea4df3..5013ecb 100644 --- a/frontend/src/main/resources/static/6131.d632a5cb127fce74.js.map +++ b/frontend/src/main/resources/static/6131.516a353ceb1fed14.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r2","NoteFormComponent","utilsService","this","EventEmitter","privateNote","set","note","$$deletedCode","newUUID","deleteTimer","setTimeout","t","noteDeleted","emit","clearTimeout","access","s","selectors","ctx","ctx_r5","ctx_r11","ctx_r13","ctx_r15","SubstanceFormNotesCardComponent","substanceFormNotesService","scrollToService","gaService","c","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","notesSubscription","substanceNotes","subscribe","i","notes","filtered","searchSubscription","searchControl","valueChanges","filterList","value","console","log","error","subscriptions","push","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","addNote","addSubstanceNote","scrollToElement","deleteSubstanceNote","SubstanceCardBaseFilteredList","SubstanceFormNotesModule","p","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-form/notes/note-form.component.html","./src/app/core/substance-form/notes/note-form.component.ts","./src/app/core/substance-form/notes/substance-form-notes-card.component.html","./src/app/core/substance-form/notes/substance-form-notes-card.component.ts","./src/app/core/substance-form/notes/substance-form-notes.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n
\n
Note
\n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n
\n \n
\n","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\nimport { SubstanceNote } from '../../substance/substance.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UtilsService } from '../../utils/utils.service';\n\n@Component({\n selector: 'app-note-form',\n templateUrl: './note-form.component.html',\n styleUrls: ['./note-form.component.scss']\n})\nexport class NoteFormComponent implements OnInit {\n private privateNote: SubstanceNote;\n @Output() noteDeleted = new EventEmitter();\n deleteTimer: any;\n\n constructor(\n private utilsService: UtilsService\n ) { }\n\n ngOnInit() {\n }\n\n @Input()\n set note(note: SubstanceNote) {\n this.privateNote = note;\n }\n\n get note(): SubstanceNote {\n return this.privateNote;\n }\n\n deleteNote(): void {\n this.privateNote.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateNote.note\n ) {\n this.deleteTimer = setTimeout(() => {\n this.noteDeleted.emit(this.note);\n }, 20);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateNote.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.note.access = access;\n }\n\n}\n","
\n pageSize\">\n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceNote } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormNotesService } from './substance-form-notes.service';\n\n@Component({\n selector: 'app-substance-form-notes-card',\n templateUrl: './substance-form-notes-card.component.html',\n styleUrls: ['./substance-form-notes-card.component.scss']\n})\nexport class SubstanceFormNotesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n notes: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormNotesService: SubstanceFormNotesService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form notes';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Notes');\n }\n\n ngAfterViewInit() {\n const notesSubscription = this.substanceFormNotesService.substanceNotes.subscribe(notes => {\n this.notes = notes;\n this.filtered = notes;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.notes, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(notesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addNote();\n }\n\n addNote(): void {\n this.substanceFormNotesService.addSubstanceNote();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-note-0`, 'center');\n });\n }\n\n deleteNote(note: SubstanceNote): void {\n this.substanceFormNotesService.deleteSubstanceNote(note);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormNotesCardComponent } from './substance-form-notes-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { NoteFormComponent } from './note-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormNotesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule\n ],\n declarations: [\n SubstanceFormNotesCardComponent,\n NoteFormComponent\n ]\n})\nexport class SubstanceFormNotesModule { }\n"],"sourceRoot":"webpack:///","file":"6131.d632a5cb127fce74.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r2","NoteFormComponent","utilsService","this","EventEmitter","privateNote","set","note","$$deletedCode","newUUID","deleteTimer","setTimeout","t","noteDeleted","emit","clearTimeout","access","r","selectors","ctx","ctx_r5","ctx_r11","ctx_r13","ctx_r15","SubstanceFormNotesCardComponent","substanceFormNotesService","scrollToService","gaService","c","analyticsEventCategory","canAddItemUpdate","menuLabelUpdate","notesSubscription","substanceNotes","subscribe","i","notes","filtered","searchSubscription","searchControl","valueChanges","filterList","value","console","log","error","subscriptions","push","page","pageChange","componentDestroyed","forEach","subscription","unsubscribe","addNote","addSubstanceNote","scrollToElement","deleteSubstanceNote","SubstanceCardBaseFilteredList","SubstanceFormNotesModule","p","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-form/notes/note-form.component.html","./src/app/core/substance-form/notes/note-form.component.ts","./src/app/core/substance-form/notes/substance-form-notes-card.component.html","./src/app/core/substance-form/notes/substance-form-notes-card.component.ts","./src/app/core/substance-form/notes/substance-form-notes.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n
\n \n
\n
\n
Note
\n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n
\n \n
\n","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\nimport { SubstanceNote } from '../../substance/substance.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UtilsService } from '../../utils/utils.service';\n\n@Component({\n selector: 'app-note-form',\n templateUrl: './note-form.component.html',\n styleUrls: ['./note-form.component.scss']\n})\nexport class NoteFormComponent implements OnInit {\n private privateNote: SubstanceNote;\n @Output() noteDeleted = new EventEmitter();\n deleteTimer: any;\n\n constructor(\n private utilsService: UtilsService\n ) { }\n\n ngOnInit() {\n }\n\n @Input()\n set note(note: SubstanceNote) {\n this.privateNote = note;\n }\n\n get note(): SubstanceNote {\n return this.privateNote;\n }\n\n deleteNote(): void {\n this.privateNote.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateNote.note\n ) {\n this.deleteTimer = setTimeout(() => {\n this.noteDeleted.emit(this.note);\n }, 20);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateNote.$$deletedCode;\n }\n\n updateAccess(access: Array): void {\n this.note.access = access;\n }\n\n}\n","
\n pageSize\">\n \n \n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
\n \n \n
\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"5\" showFirstLastButtons=\"true\"\n (page)=\"pageChange($event, analyticsEventCategory)\" [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n\n\n
0\" style = \"display: flex;\">\n \n \n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceNote } from '@gsrs-core/substance/substance.model';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormNotesService } from './substance-form-notes.service';\n\n@Component({\n selector: 'app-substance-form-notes-card',\n templateUrl: './substance-form-notes-card.component.html',\n styleUrls: ['./substance-form-notes-card.component.scss']\n})\nexport class SubstanceFormNotesCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n notes: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormNotesService: SubstanceFormNotesService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form notes';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Notes');\n }\n\n ngAfterViewInit() {\n const notesSubscription = this.substanceFormNotesService.substanceNotes.subscribe(notes => {\n this.notes = notes;\n this.filtered = notes;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.notes, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(notesSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addNote();\n }\n\n addNote(): void {\n this.substanceFormNotesService.addSubstanceNote();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-note-0`, 'center');\n });\n }\n\n deleteNote(note: SubstanceNote): void {\n this.substanceFormNotesService.deleteSubstanceNote(note);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormNotesCardComponent } from './substance-form-notes-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { NoteFormComponent } from './note-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormNotesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule\n ],\n declarations: [\n SubstanceFormNotesCardComponent,\n NoteFormComponent\n ]\n})\nexport class SubstanceFormNotesModule { }\n"],"sourceRoot":"webpack:///","file":"6131.516a353ceb1fed14.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6131.d632a5cb127fce74.js b/frontend/src/main/resources/static/6131.d632a5cb127fce74.js deleted file mode 100644 index ef4d986..0000000 --- a/frontend/src/main/resources/static/6131.d632a5cb127fce74.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6131],{65992:function(X,h,a){a.r(h),a.d(h,{SubstanceFormNotesModule:function(){return W}});var p=a(48047),u=a(78069),m=a(36362),F=a(24582),S=a(7318),y=a(79550),O=a(24874),_=a(35663),e=a(76442),M=a(78444),N=a(44770),Z=a(43365),d=a(90587),x=a(26439),J=a(51279),I=a(52149),f=a(87317),g=a(65590),A=a(84577),U=a(48302),Q=a(14900);function P(n,s){if(1&n){var o=e.EpF();e.TgZ(0,"div",12),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",13),e.NdJ("click",function(){return e.CHM(o),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",14),e.qZA(),e.qZA()}}function D(n,s){if(1&n&&(e.TgZ(0,"div",2),e.TgZ(1,"div",15),e._UZ(2,"app-domain-references",16,17),e.qZA(),e.qZA()),2&n){var o=e.oxw();e.xp6(2),e.Q6J("referencesUuids",o.note.references)}}var E=function(){var n=function(){function s(o){(0,u.Z)(this,s),this.utilsService=o,this.noteDeleted=new e.vpe}return(0,p.Z)(s,[{key:"ngOnInit",value:function(){}},{key:"note",get:function(){return this.privateNote},set:function(t){this.privateNote=t}},{key:"deleteNote",value:function(){var t=this;this.privateNote.$$deletedCode=this.utilsService.newUUID(),this.privateNote.note||(this.deleteTimer=setTimeout(function(){t.noteDeleted.emit(t.note)},20))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateNote.$$deletedCode}},{key:"updateAccess",value:function(t){this.note.access=t}}]),s}();return n.\u0275fac=function(o){return new(o||n)(e.Y36(I.F))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-note-form"]],inputs:{note:"note"},outputs:{noteDeleted:"noteDeleted"},decls:15,vars:5,consts:[[1,"note-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete note",3,"click"],["svgIcon","delete_forever"],[1,"note"],[1,"textarea-label"],["placeholder","Enter text here","required","","name","note",3,"ngModel","ngModelChange"],[3,"access","accessOut"],["class","form-row",4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"references-container"],[3,"referencesUuids"],["references",""]],template:function(o,t){1&o&&(e.TgZ(0,"div",0),e.YNc(1,P,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return t.deleteNote()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"div",7),e._uU(8,"Note"),e.qZA(),e.TgZ(9,"textarea",8),e.NdJ("ngModelChange",function(i){return t.note.note=i}),e._uU(10," "),e.qZA(),e.qZA(),e.TgZ(11,"div"),e.TgZ(12,"app-access-manager",9),e.NdJ("accessOut",function(i){return t.updateAccess(i)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(13,D,4,1,"div",10),e._UZ(14,"app-audit-info",11),e.qZA()),2&o&&(e.xp6(1),e.Q6J("ngIf",t.note.$$deletedCode),e.xp6(8),e.Q6J("ngModel",t.note.note),e.xp6(3),e.Q6J("access",t.note.access),e.xp6(1),e.Q6J("ngIf",!t.note.$$deletedCode),e.xp6(1),e.Q6J("source",t.note))},directives:[m.O5,f.lW,g.Hw,d.Fj,d.Q7,d.JJ,d.On,A.h,U.V,Q.n],styles:[".note-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}"]}),n}(),b=a(19975);function z(n,s){if(1&n&&(e.TgZ(0,"mat-form-field",6),e._UZ(1,"input",7),e.qZA()),2&n){var o=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",o.searchControl)}}var T=function(){return[5,10,25,100]};function Y(n,s){if(1&n){var o=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(o);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,T))}}function k(n,s){1&n&&e._UZ(0,"mat-divider",12),2&n&&e.Q6J("inset",!0)}function $(n,s){if(1&n){var o=e.EpF();e.TgZ(0,"div",9),e.TgZ(1,"app-note-form",10),e.NdJ("noteDeleted",function(c){return e.CHM(o),e.oxw().deleteNote(c)}),e.qZA(),e.YNc(2,k,1,1,"mat-divider",11),e.qZA()}if(2&n){var t=s.$implicit,r=s.last;e.Q6J("id","substance-note-"+s.index),e.xp6(1),e.Q6J("note",t),e.xp6(1),e.Q6J("ngIf",!r)}}function w(n,s){if(1&n){var o=e.EpF();e.TgZ(0,"mat-paginator",8),e.NdJ("page",function(i){e.CHM(o);var l=e.oxw();return l.pageChange(i,l.analyticsEventCategory)}),e.qZA()}if(2&n){var t=e.oxw();e.Q6J("length",t.filtered&&t.filtered.length||0)("pageIndex",t.page)("pageSize",5)("pageSizeOptions",e.DdM(4,T))}}function H(n,s){if(1&n){var o=e.EpF();e.TgZ(0,"div",13),e._UZ(1,"span",2),e.TgZ(2,"button",14),e.NdJ("click",function(){return e.CHM(o),e.oxw().addNote()}),e._uU(3," Add note "),e._UZ(4,"mat-icon",15),e.qZA(),e.qZA()}}var j=function(){var n=function(s){(0,F.Z)(t,s);var o=(0,S.Z)(t);function t(r,i,l){var c;return(0,u.Z)(this,t),(c=o.call(this,l)).substanceFormNotesService=r,c.scrollToService=i,c.gaService=l,c.subscriptions=[],c.analyticsEventCategory="substance form notes",c}return(0,p.Z)(t,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Notes")}},{key:"ngAfterViewInit",value:function(){var i=this,l=this.substanceFormNotesService.substanceNotes.subscribe(function(c){i.notes=c,i.filtered=c;var v=i.searchControl.valueChanges.subscribe(function(C){i.filterList(C,i.notes,i.analyticsEventCategory)},function(C){console.log(C)});i.subscriptions.push(v),i.page=0,i.pageChange()});this.subscriptions.push(l)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"addItem",value:function(){this.addNote()}},{key:"addNote",value:function(){var i=this;this.substanceFormNotesService.addSubstanceNote(),setTimeout(function(){i.scrollToService.scrollToElement("substance-note-0","center")})}},{key:"deleteNote",value:function(i){this.substanceFormNotesService.deleteSubstanceNote(i)}}]),t}(y.u);return n.\u0275fac=function(o){return new(o||n)(e.Y36(_.k),e.Y36(M.i),e.Y36(O.$))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-form-notes-card"]],features:[e.qOj],decls:7,vars:5,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","note","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"note",3,"id"],[3,"note","noteDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(o,t){1&o&&(e.TgZ(0,"div",0),e.YNc(1,z,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.qZA(),e.YNc(3,Y,1,5,"mat-paginator",3),e.YNc(4,$,3,3,"div",4),e.YNc(5,w,1,5,"mat-paginator",3),e.YNc(6,H,5,0,"div",5)),2&o&&(e.xp6(1),e.Q6J("ngIf",t.notes&&t.notes.length>t.pageSize),e.xp6(2),e.Q6J("ngIf",t.notes&&t.notes.length>5),e.xp6(1),e.Q6J("ngForOf",t.paged),e.xp6(1),e.Q6J("ngIf",t.notes&&t.notes.length>5),e.xp6(1),e.Q6J("ngIf",t.notes&&t.notes.length>0))},directives:[m.O5,N.KE,Z.Nt,d.Fj,d.JJ,d.oH,x.NW,m.sg,J.P,E,b.d,f.lW,g.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.note[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.note[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.note[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.note[_ngcontent-%COMP%] .mat-expansion-panel, .note[_ngcontent-%COMP%] .mat-table, .note[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),n}(),L=a(64061),B=a(7168),V=a(94673),W=function(){var n=(0,p.Z)(function s(){(0,u.Z)(this,s)});return n.\u0275fac=function(o){return new(o||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[m.ez,L.o.forChild(j),B.O,b.t,g.Ps,f.ot,V.w,N.lN,d.UX,d.u5,x.TU,Z.c]]}),n}()}}]); -//# sourceMappingURL=6131.d632a5cb127fce74.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6558.213ac266ccf8454e.js b/frontend/src/main/resources/static/6558.213ac266ccf8454e.js new file mode 100644 index 0000000..cad94b9 --- /dev/null +++ b/frontend/src/main/resources/static/6558.213ac266ccf8454e.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6558],{16558:function(Te,C,s){s.r(C),s.d(C,{SubstanceFormDefinitionModule:function(){return he}});var S=s(1884),_=s(39117),p=s(36362),E=s(46751),O=s(56101),e=s(86613),M=s(79223),N=s(42827),P=s(12570),U=s(33567),y=s(75939),f=s(90587),L=s(59295),J=s(53141),H=s(54244),h=s(98002),g=s(44770),x=s(91434),Q=s(1130),Y=s(24459),Z=s(61534),w=s(84577),A=s(40089),D=s(65590),m=s(81196),T=s(43188),R=s(48302),k=s(14900),B=s(13821),j=["tagsInput"];function V(n,c){if(1&n&&(e.TgZ(0,"span",23),e._uU(1),e.qZA()),2&n){var a=e.oxw(2);e.xp6(1),e.Oqu(a.definition.approvalID)}}function z(n,c){if(1&n&&(e.TgZ(0,"div",24),e.TgZ(1,"div"),e._uU(2),e.ALo(3,"elementLabel"),e._UZ(4,"span",25),e.qZA(),e.qZA()),2&n){var a=e.oxw(2);e.xp6(2),e.hij("",e.xi3(3,2,"displayNameTitle","substance_names_name"),": "),e.xp6(2),e.Q6J("innerHTML",a.definition._nameHTML?a.definition._nameHTML:a.definition._name,e.oJD)}}function q(n,c){if(1&n&&(e.TgZ(0,"mat-option",28),e._uU(1),e.qZA()),2&n){var a=c.$implicit;e.Q6J("value",a.value),e.xp6(1),e.hij(" ",a.display," ")}}function G(n,c){if(1&n){var a=e.EpF();e.TgZ(0,"mat-form-field",26),e.TgZ(1,"mat-label"),e._uU(2,"Definition Type"),e.qZA(),e.TgZ(3,"mat-select",27),e.NdJ("ngModelChange",function(t){return e.CHM(a),e.oxw(2).definition.definitionType=t})("selectionChange",function(t){return e.CHM(a),e.oxw(2).updateDefinitionType(t)}),e.YNc(4,q,2,2,"mat-option",20),e.qZA(),e.qZA()}if(2&n){var u=e.oxw(2);e.xp6(3),e.Q6J("ngModel",u.definition.definitionType),e.xp6(1),e.Q6J("ngForOf",u.definitionTypes)}}function K(n,c){if(1&n){var a=e.EpF();e.TgZ(0,"div",29),e.TgZ(1,"app-substance-selector",30),e.NdJ("selectionUpdated",function(t){return e.CHM(a),e.oxw(2).primartySubstanceUpdated(t)}),e.qZA(),e.qZA()}if(2&n){var u=e.oxw(2);e.xp6(1),e.Q6J("subuuid",u.primarySubUuid)}}function X(n,c){if(1&n&&(e.TgZ(0,"mat-option",28),e._uU(1),e.qZA()),2&n){var a=c.$implicit;e.Q6J("value",a.value),e.xp6(1),e.hij(" ",a.display," ")}}function $(n,c){if(1&n){var a=e.EpF();e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-label"),e._uU(2,"Definition Level"),e.qZA(),e.TgZ(3,"mat-select",31),e.NdJ("ngModelChange",function(t){return e.CHM(a),e.oxw(2).definition.definitionLevel=t})("selectionChange",function(){return e.CHM(a),e.oxw(2).updateDefinition()}),e.YNc(4,X,2,2,"mat-option",20),e.qZA(),e.qZA()}if(2&n){var u=e.oxw(2);e.xp6(3),e.Q6J("ngModel",u.definition.definitionLevel),e.xp6(1),e.Q6J("ngForOf",u.definitionLevels)}}function W(n,c){if(1&n&&(e.TgZ(0,"a",36),e._uU(1," Old edit form "),e._UZ(2,"mat-icon",35),e.qZA()),2&n){var a=e.oxw(3);e.Q6J("href",a.getRedirect(),e.LSH)}}var ee=function(c){return["/substances",c]};function te(n,c){if(1&n&&(e.TgZ(0,"div",32),e.YNc(1,W,3,1,"a",33),e._UZ(2,"br"),e.TgZ(3,"a",34),e._uU(4," Details page "),e._UZ(5,"mat-icon",35),e.qZA(),e.qZA()),2&n){var a=e.oxw(2);e.xp6(1),e.Q6J("ngIf",a.oldlink),e.xp6(2),e.Q6J("routerLink",e.VKq(2,ee,a.uuid))}}function ne(n,c){if(1&n){var a=e.EpF();e.TgZ(0,"mat-chip",37),e.NdJ("removed",function(){var i=e.CHM(a).$implicit;return e.oxw(2).removeTag(i)}),e._uU(1),e._UZ(2,"mat-icon",38),e.qZA()}if(2&n){var u=c.$implicit;e.xp6(1),e.hij(" ",u," ")}}function ie(n,c){if(1&n&&(e.TgZ(0,"mat-option",28),e._uU(1),e.qZA()),2&n){var a=c.$implicit;e.Q6J("value",a),e.xp6(1),e.hij(" ",a," ")}}function ae(n,c){if(1&n){var a=e.EpF();e.TgZ(0,"div",5),e.TgZ(1,"div",39),e._UZ(2,"app-domain-references",40,41),e.qZA(),e.TgZ(4,"div",42),e.TgZ(5,"app-access-manager",43),e.NdJ("accessOut",function(t){return e.CHM(a),e.oxw(2).updateDefAccess(t)}),e.qZA(),e.qZA(),e.qZA()}if(2&n){var u=e.oxw(2);e.xp6(2),e.Q6J("referencesUuids",u.definition.references),e.xp6(2),e.MGl("matTooltip","Set ",u.definition.substanceClass," access"),e.xp6(1),e.Q6J("access",u.defAccess)}}function oe(n,c){1&n&&(e.TgZ(0,"div",5),e._uU(1," Concepts have no defining information, but are collections of terms, codes and related information. "),e._UZ(2,"br"),e._uU(3," They can be promoted to a defined substance at a later time, when appropriate. "),e.qZA())}function se(n,c){if(1&n){var a=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",1),e.TgZ(2,"div"),e.TgZ(3,"span",2),e._uU(4),e.qZA(),e.TgZ(5,"span"),e._uU(6),e.ALo(7,"titlecase"),e.qZA(),e.qZA(),e.YNc(8,V,2,1,"span",3),e.qZA(),e.YNc(9,z,5,5,"div",4),e.TgZ(10,"div",5),e.YNc(11,G,5,2,"mat-form-field",6),e.YNc(12,K,2,1,"div",7),e.YNc(13,$,5,2,"mat-form-field",0),e.TgZ(14,"div",8),e.TgZ(15,"mat-checkbox",9),e.NdJ("ngModelChange",function(o){return e.CHM(a),e.oxw().definition.deprecated=o})("change",function(){return e.CHM(a),e.oxw().updateDefinition()}),e._uU(16,"Deprecated"),e.qZA(),e.qZA(),e.TgZ(17,"div"),e.TgZ(18,"app-access-manager",10),e.NdJ("accessOut",function(o){return e.CHM(a),e.oxw().updateAccess(o)}),e.qZA(),e.qZA(),e.YNc(19,te,6,4,"div",11),e.qZA(),e.TgZ(20,"div",5),e.TgZ(21,"mat-form-field",12),e.TgZ(22,"mat-chip-list",13,14),e.YNc(24,ne,3,1,"mat-chip",15),e.TgZ(25,"input",16,17),e.NdJ("matChipInputTokenEnd",function(o){return e.CHM(a),e.oxw().tagAdded(o)})("blur",function(){return e.CHM(a),e.oxw().tagsBlurred()}),e.qZA(),e.qZA(),e.TgZ(27,"mat-autocomplete",18,19),e.NdJ("opened",function(){return e.CHM(a),e.oxw().increaseOverlayZindex()})("closed",function(){return e.CHM(a),e.oxw().tagsAutocompleteClosed()})("optionSelected",function(o){return e.CHM(a),e.oxw().selectedTag(o)}),e.YNc(29,ie,2,2,"mat-option",20),e.qZA(),e.TgZ(30,"mat-hint"),e._uU(31,"Enter new tags (and press Enter after each entry) or select from suggested tags below"),e.qZA(),e.qZA(),e.qZA(),e.YNc(32,ae,6,3,"div",21),e.YNc(33,oe,4,0,"div",21),e._UZ(34,"app-audit-info",22),e.qZA()}if(2&n){var u=e.MAs(23),r=e.MAs(28),t=e.oxw();e.xp6(4),e.Oqu(t.uuid&&!t.imported?"Editing ":"Registering New "),e.xp6(2),e.hij(" ",e.lcZ(7,19,t.substanceClass),""),e.xp6(2),e.Q6J("ngIf",t.definition.approvalID&&""!==t.definition.approvalID),e.xp6(1),e.Q6J("ngIf",t.definition._name),e.xp6(2),e.Q6J("ngIf","concept"!==t.definition.substanceClass),e.xp6(1),e.Q6J("ngIf","ALTERNATIVE"==t.definition.definitionType),e.xp6(1),e.Q6J("ngIf","concept"!==t.definition.substanceClass),e.xp6(2),e.Q6J("ngModel",t.definition.deprecated),e.xp6(3),e.Q6J("access",t.definition.access),e.xp6(1),e.Q6J("ngIf",t.uuid),e.xp6(5),e.Q6J("ngForOf",t.definition.tags),e.xp6(1),e.Q6J("formControl",t.tagsCtrl)("matAutocomplete",r)("matChipInputFor",u)("matChipInputSeparatorKeyCodes",t.separatorKeysCodes),e.xp6(4),e.Q6J("ngForOf",t.filteredSuggestedTags),e.xp6(3),e.Q6J("ngIf","concept"!==t.definition.substanceClass),e.xp6(1),e.Q6J("ngIf","concept"===t.definition.substanceClass),e.xp6(1),e.Q6J("source",t.definition)}}var re=function(){var n=function(c){(0,E.Z)(u,c);var a=(0,O.Z)(u);function u(r,t,i,o,l,v){var d;return(0,_.Z)(this,u),(d=a.call(this)).cvService=r,d.substanceService=t,d.substanceFormService=i,d.overlayContainerService=o,d.configService=l,d.activatedRoute=v,d.separatorKeysCodes=[y.K5,y.OC],d.tagsCtrl=new f.NI({value:"",disabled:!0}),d.usedSuggestedTags=[],d.subscriptions=[],d.imported=!1,d.oldlink=!1,d}return(0,S.Z)(u,[{key:"ngOnInit",value:function(){var t=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),this.menuLabelUpdate.emit("Overview"),this.getVocabularies(),this.substanceService.getTags().subscribe(function(o){t.suggestedTags=o,t.filteredSuggestedTags=o,t.crossCheckTags(),t.tagsCtrl.enable()});var i=this.tagsCtrl.valueChanges.subscribe(function(o){t.filteredSuggestedTags=t.suggestedTags.filter(function(l){return l.toLowerCase().indexOf((o||"").toLowerCase())>-1})});this.subscriptions.push(i),this.configService.configData&&this.configService.configData.showOldLinks&&(this.oldlink=!0)}},{key:"ngAfterViewInit",value:function(){var t=this,i=this.substanceFormService.definition.subscribe(function(o){t.defAccess=t.substanceFormService.getDefinitionForDefRef(),t.definition=o||{},t.crossCheckTags(),t.substanceClass="structure"===t.definition.substanceClass?"chemical":"nucleicAcid"===t.definition.substanceClass?"Nucleic Acid":"structurallyDiverse"===t.definition.substanceClass?"Structurally Diverse":"SPECIFIEDSUBSTANCE"===t.definition.substanceClass.toUpperCase()?"Specified Substance Group 1":"SPECIFIEDSUBSTANCEG3"===t.definition.substanceClass.toUpperCase()?"Specified Substance Group 3":t.definition.substanceClass,t.definition.definitionType||(t.definition.definitionType="PRIMARY"),t.definition.definitionLevel||(t.definition.definitionLevel="COMPLETE"),t.json=t.substanceFormService.getJson(),t.definition.status&&(t.status=t.definition.status),"ALTERNATIVE"===t.definition.definitionType&&t.cvService.getDomainVocabulary("RELATIONSHIP_TYPE").pipe((0,L.q)(1)).subscribe(function(d){var F=d.RELATIONSHIP_TYPE&&d.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"]&&d.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"].value||null;if(F&&t.definition.relationships&&t.definition.relationships.length){var I=t.definition.relationships.find(function(b){return b.type===F});null!=I&&t.substanceService.getSubstanceSummary(I.relatedSubstance.refuuid).subscribe(function(b){t.primarySubstance=b,t.primarySubUuid=t.primarySubstance.uuid})}}),t.uuid=t.substanceFormService.getUuid();var l=t.substanceFormService.getMethod(),v=t.activatedRoute.snapshot.queryParams.source||null;t.imported=!(!l||"import"!==l||v&&"draft"===v)});this.subscriptions.push(i)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"getRedirect",value:function(){return this.uuid?this.substanceService.oldSiteRedirect("edit",this.substanceFormService.getUuid()):"#"}},{key:"getVocabularies",value:function(){var t=this;this.cvService.getDomainVocabulary("DEFINITION_TYPE","DEFINITION_LEVEL").subscribe(function(i){t.definitionTypes=i.DEFINITION_TYPE.list,t.definitionLevels=i.DEFINITION_LEVEL.list})}},{key:"updateDefinitionType",value:function(t){var i=this;if("PRIMARY"===this.definition.definitionType&&null!=this.definition.relationships&&this.definition.relationships.length){var o=this.definition.relationships.findIndex(function(l){return l.relatedSubstance.refuuid===i.primarySubstance.uuid});o>-1&&this.definition.relationships.splice(o,1),this.primarySubstance=null}this.substanceFormService.updateDefinition(this.definition)}},{key:"primartySubstanceUpdated",value:function(t){null!=t?this.setPrimarySubstance(t):this.removePrimarySubstance()}},{key:"setPrimarySubstance",value:function(t){var i=this;this.primarySubstance=t,this.primarySubUuid=t.uuid,(null==this.definition.relationships||"[object Array]"!==Object.prototype.toString.call(this.definition.relationships))&&(this.definition.relationships=[]),this.cvService.getDomainVocabulary("RELATIONSHIP_TYPE").subscribe(function(o){i.definition.relationships.push({relatedSubstance:{refuuid:i.primarySubstance.uuid,refPname:i.primarySubstance._name,approvalID:i.primarySubstance.approvalID,substanceClass:"reference"},access:[],type:o.RELATIONSHIP_TYPE&&o.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"]&&o.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"].value||""}),i.substanceFormService.updateDefinition(i.definition)})}},{key:"removePrimarySubstance",value:function(){var t=this,i=this.definition.relationships.findIndex(function(o){return o.relatedSubstance.refuuid===t.primarySubUuid});this.definition.relationships.splice(i,1),this.primarySubstance=null,this.substanceFormService.updateDefinition(this.definition)}},{key:"updateAccess",value:function(t){this.definition.access=t,this.substanceFormService.updateDefinition(this.definition)}},{key:"updateDefAccess",value:function(t){this.substanceFormService.setDefinitionFromDefRef(t),this.substanceFormService.updateDefinition(this.definition)}},{key:"updateDefinition",value:function(){this.substanceFormService.updateDefinition(this.definition)}},{key:"crossCheckTags",value:function(){var t=this;if(null!=this.definition&&null!=this.definition.tags&&this.definition.tags.length>0&&null!=this.suggestedTags){this.definition.tags.sort();var o=0;this.definition.tags.forEach(function(l){for(o=o;o-1&&(this.definition.tags.splice(i,1),this.updateDefinition(),this.usedSuggestedTags.length>0))for(var o=0;o-1&&this.suggestedTags.splice(i,1)}},{key:"tagsAutocompleteClosed",value:function(){this.decreaseOverlayZindex();var t=this.tagsCtrl.value;null!=t&&""!==t&&(t=t.trim(),this.addTag(t),this.tagsCtrl.setValue(null),this.tagsInput.nativeElement.value="")}},{key:"tagsBlurred",value:function(){if(0===this.filteredSuggestedTags.length){var t=this.tagsCtrl.value;null!=t&&""!==t&&(t=t.trim(),this.addTag(t),this.tagsCtrl.setValue(null),this.tagsInput.nativeElement.value="")}}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),u}(M.o);return n.\u0275fac=function(a){return new(a||n)(e.Y36(N.I),e.Y36(P.d),e.Y36(U.B),e.Y36(H.Xj),e.Y36(J.E),e.Y36(h.gz))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-substance-form-definition"]],viewQuery:function(a,u){var r;1&a&&e.Gf(j,5,e.SBq),2&a&&e.iGM(r=e.CRH())&&(u.tagsInput=r.first)},features:[e.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"substance-form-row","form-header"],[1,"sub-header"],["class","approval",4,"ngIf"],["class","substance-form-row form-name",4,"ngIf"],[1,"substance-form-row"],["style","margin-right: 5px",4,"ngIf"],["class","primary-substance-container",4,"ngIf"],[1,"checkbox-container"],["name","deprecated",3,"ngModel","ngModelChange","change"],["label","Record Level Access",3,"access","accessOut"],["class","redirect-links",4,"ngIf"],[1,"tag-list"],["aria-label","Tags edit","selectable","false"],["tagList",""],["removable","true",3,"removed",4,"ngFor","ngForOf"],["placeholder","Substance tags",3,"formControl","matAutocomplete","matChipInputFor","matChipInputSeparatorKeyCodes","matChipInputTokenEnd","blur"],["tagsInput",""],[3,"opened","closed","optionSelected"],["tagsAuto","matAutocomplete"],[3,"value",4,"ngFor","ngForOf"],["class","substance-form-row",4,"ngIf"],[3,"source"],[1,"approval"],[1,"substance-form-row","form-name"],[1,"name",3,"innerHTML"],[2,"margin-right","5px"],["name","definitionType","required","",3,"ngModel","ngModelChange","selectionChange"],[3,"value"],[1,"primary-substance-container"],["eventCategory","substanceFormDefinitionType","placeholder","Primary Substance","header","Primary Substance",3,"subuuid","selectionUpdated"],["name","definitionLevel",3,"ngModel","ngModelChange","selectionChange"],[1,"redirect-links"],["target","_blank","matTooltip","open old edit form in new tab",3,"href",4,"ngIf"],["target","_blank","matTooltip","open details page in new tab",3,"routerLink"],["svgIcon","open_in_new",1,"icon"],["target","_blank","matTooltip","open old edit form in new tab",3,"href"],["removable","true",3,"removed"],["matChipRemove","","svgIcon","cancel"],[1,"references-container"],["card","definition",3,"referencesUuids"],["references",""],[3,"matTooltip"],["label","Definition Access",3,"access","accessOut"]],template:function(a,u){1&a&&e.YNc(0,se,35,21,"div",0),2&a&&e.Q6J("ngIf",u.definition)},directives:[p.O5,g.KE,g.hX,x.gD,f.Q7,f.JJ,f.On,p.sg,Q.ey,Y.Q,Z.oG,w.h,A.gM,D.Hw,h.yS,m.qn,m.HS,m.qH,f.Fj,T.ZL,m.oH,f.oH,T.XC,g.bx,R.V,k.n],pipes:[p.rS,B.f],styles:[".substance-form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.approval[_ngcontent-%COMP%]{color:var(--pink-span-color);font-size:24px}.primary-substance-container[_ngcontent-%COMP%]{max-width:25%}.section-header[_ngcontent-%COMP%]{color:var(--dark-label-color);font-size:11px;text-align:left;letter-spacing:.005px}.form-header[_ngcontent-%COMP%]{padding-bottom:20px;font-weight:500;font-size:28px}.sub-header[_ngcontent-%COMP%]{font-weight:400;padding-right:5px}.references-container[_ngcontent-%COMP%]{width:100%}.checkbox-container[_ngcontent-%COMP%]{padding-top:10px}.definition-reference[_ngcontent-%COMP%]{margin-bottom:0}.redirect-links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--primary-color)!important;float:right;text-decoration:none}.redirect-links[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{-ms-transform:scale(.75);transform:scale(.75)}.icon[_ngcontent-%COMP%]{font-size:10px!important}.set-status[_ngcontent-%COMP%] .mat-radio-label{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.set-status[_ngcontent-%COMP%] .mat-radio-label-content{padding-left:5px;font-size:11px;padding-bottom:4px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.status-label[_ngcontent-%COMP%]{padding-right:10px}.message-field[_ngcontent-%COMP%]{width:50%}.form-name[_ngcontent-%COMP%]{font-size:22px;padding-bottom:15px}.name[_ngcontent-%COMP%]{color:var(--regular-blue-color);padding-left:5px}.tag-list[_ngcontent-%COMP%]{width:100%}"]}),n}(),ce=s(64061),ue=s(82796),le=s(87317),de=s(7168),fe=s(94673),me=s(63200),pe=s(68390),ge=s(60833),ve=s(88547),he=function(){var n=(0,S.Z)(function c(){(0,_.Z)(this,c)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[p.ez,ce.o.forChild(re),f.UX,f.u5,g.lN,x.LD,ue.Tx,Z.p9,le.ot,D.Ps,de.O,fe.w,me.U,A.AV,h.Bz,pe.Fk,m.Hi,T.Bb,ge.Cv,ve.J]]}),n}()}}]); +//# sourceMappingURL=6558.213ac266ccf8454e.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6558.213ac266ccf8454e.js.map b/frontend/src/main/resources/static/6558.213ac266ccf8454e.js.map new file mode 100644 index 0000000..39c0b65 --- /dev/null +++ b/frontend/src/main/resources/static/6558.213ac266ccf8454e.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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","names":["i0","ctx_r18","ctx_r19","ctx_r25","ctx_r28","ctx_r32","ctx_r36","ctx_r37","ctx_r38","ctx_r39","ctx_r40","ctx_r41","ctx_r42","SubstanceFormDefinitionComponent","cvService","substanceService","substanceFormService","overlayContainerService","configService","activatedRoute","d","ENTER","COMMA","FormControl","value","disabled","this","overlayContainer","getContainerElement","menuLabelUpdate","emit","getVocabularies","getTags","subscribe","t","suggestedTags","tags","filteredSuggestedTags","crossCheckTags","tagsCtrl","enable","tagsSubscription","valueChanges","filter","tag","toLowerCase","indexOf","subscriptions","push","configData","showOldLinks","oldlink","subscription","definition","defAccess","getDefinitionForDefRef","substanceClass","toUpperCase","definitionType","definitionLevel","json","getJson","status","getDomainVocabulary","pipe","take","type","vocabularyResponse","RELATIONSHIP_TYPE","dictionary","relationships","length","primarySubstance","find","relationship","getSubstanceSummary","relatedSubstance","refuuid","response","primarySubUuid","uuid","getUuid","imported","getMethod","source","snapshot","queryParams","forEach","unsubscribe","oldSiteRedirect","definitionTypes","DEFINITION_TYPE","list","definitionLevels","DEFINITION_LEVEL","event","indexToRemove","findIndex","i","splice","updateDefinition","substance","setPrimarySubstance","removePrimarySubstance","Object","prototype","toString","call","refPname","_name","approvalID","access","setDefinitionFromDefRef","sort","trim","addedTag","addTag","input","tagIndex","usedSuggestedTags","availableTag","option","setValue","tagsInput","nativeElement","decreaseOverlayZindex","autocompleteInputValue","style","zIndex","u","SubstanceFormBase","selectors","ElementRef","SubstanceFormDefinitionModule","S","CommonModule","DynamicComponentLoaderModule","ReactiveFormsModule","FormsModule","MatFormFieldModule","MatSelectModule","MatMenuModule","MatCheckboxModule","MatButtonModule","MatIconModule","SubstanceFormModule","ScrollToModule","SubstanceSelectorModule","MatTooltipModule","RouterModule","MatRadioModule","MatChipsModule","MatAutocompleteModule","MatProgressBarModule","ElementLabelDisplayModule"],"sources":["./src/app/core/substance-form/substance-form-definition/substance-form-definition.component.html","./src/app/core/substance-form/substance-form-definition/substance-form-definition.component.ts","./src/app/core/substance-form/substance-form-definition/substance-form-definition.module.ts"],"sourcesContent":["
\n
\n
{{(uuid && !imported) ? 'Editing ' : 'Registering New '}}\n {{substanceClass | titlecase}}\n
\n {{definition.approvalID}}\n
\n
\n\n
{{ 'displayNameTitle' | elementLabel : 'substance_names_name' }}:
\n
\n
\n \n Definition Type\n \n \n {{defitionType.display}}\n \n \n \n
\n \n \n
\n \n Definition Level\n \n \n {{defitionLevel.display}}\n \n \n \n
\n Deprecated\n
\n
\n \n
\n \n
\n
\n \n \n \n {{tag}}\n \n \n \n \n \n \n {{tag}}\n \n \n Enter new tags (and press Enter after each entry) or select from suggested tags below\n \n
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n Concepts have no defining information, but are collections of terms, codes and related information.
They can be promoted to a defined substance at a later time, when appropriate.\n
\n \n
\n","import { Component, OnInit, AfterViewInit, OnDestroy, ViewChild, ElementRef } from '@angular/core';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { MatSelectChange } from '@angular/material/select';\nimport { SubstanceService } from '../../substance/substance.service';\nimport { SubstanceSummary, SubstanceRelationship } from '../../substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceFormDefinition } from '../substance-form.model';\nimport {MatChipInputEvent} from '@angular/material/chips';\nimport {MatAutocompleteSelectedEvent} from '@angular/material/autocomplete';\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\nimport { FormControl } from '@angular/forms';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'app-substance-form-definition',\n templateUrl: './substance-form-definition.component.html',\n styleUrls: ['./substance-form-definition.component.scss']\n})\nexport class SubstanceFormDefinitionComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n definitionTypes: Array;\n definitionLevels: Array;\n primarySubstance?: SubstanceSummary;\n definition: SubstanceFormDefinition;\n primarySubUuid: string;\n uuid: string;\n json: any;\n feature: string;\n substanceClass: string;\n status: string;\n accessLabel?:string;\n readonly separatorKeysCodes: number[] = [ENTER, COMMA];\n tagsCtrl = new FormControl({value: '', disabled: true});\n private suggestedTags: Array;\n filteredSuggestedTags: Array;\n private usedSuggestedTags: Array = [];\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n defAccess: Array;\n @ViewChild('tagsInput', { read: ElementRef, static: false }) tagsInput: ElementRef;\n imported = false;\n oldlink = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n public substanceService: SubstanceService,\n private substanceFormService: SubstanceFormService,\n private overlayContainerService: OverlayContainer,\n private configService: ConfigService,\n private activatedRoute: ActivatedRoute,\n\n ) {\n super();\n }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.menuLabelUpdate.emit('Overview');\n this.getVocabularies();\n this.substanceService.getTags().subscribe(tags => {\n this.suggestedTags = tags;\n this.filteredSuggestedTags = tags;\n this.crossCheckTags();\n this.tagsCtrl.enable();\n });\n const tagsSubscription = this.tagsCtrl.valueChanges.subscribe(value => {\n this.filteredSuggestedTags = this.suggestedTags.filter(tag => tag.toLowerCase().indexOf((value || '').toLowerCase()) > -1);\n });\n this.subscriptions.push(tagsSubscription);\n\n if (this.configService.configData && this.configService.configData.showOldLinks) {\n this.oldlink = true;\n\n }\n }\n\n ngAfterViewInit() {\n const subscription = this.substanceFormService.definition.subscribe(definition => {\n this.defAccess = this.substanceFormService.getDefinitionForDefRef();\n this.definition = definition || {};\n this.crossCheckTags();\n if (this.definition.substanceClass === 'structure') {\n this.substanceClass = 'chemical';\n } else if (this.definition.substanceClass === 'nucleicAcid') {\n this.substanceClass = 'Nucleic Acid';\n } else if (this.definition.substanceClass === 'structurallyDiverse') {\n this.substanceClass = 'Structurally Diverse';\n } else if (this.definition.substanceClass.toUpperCase() === 'SPECIFIEDSUBSTANCE') {\n this.substanceClass = 'Specified Substance Group 1';\n } else if (this.definition.substanceClass.toUpperCase() === 'SPECIFIEDSUBSTANCEG3') {\n this.substanceClass = 'Specified Substance Group 3';\n } else {\n this.substanceClass = this.definition.substanceClass;\n }\n if (!this.definition.definitionType) {\n this.definition.definitionType = 'PRIMARY';\n }\n\n if (!this.definition.definitionLevel) {\n this.definition.definitionLevel = 'COMPLETE';\n }\n this.json = this.substanceFormService.getJson();\n if (this.definition.status) {\n this.status = this.definition.status;\n }\n if (this.definition.definitionType === 'ALTERNATIVE') {\n this.cvService.getDomainVocabulary('RELATIONSHIP_TYPE').pipe(take(1)).subscribe(vocabularyResponse => {\n const type = vocabularyResponse['RELATIONSHIP_TYPE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE'].value\n || null;\n\n if (type && this.definition.relationships && this.definition.relationships.length) {\n const primarySubstance = this.definition.relationships.find(relationship => relationship.type === type);\n if (primarySubstance != null) {\n this.substanceService.getSubstanceSummary(primarySubstance.relatedSubstance.refuuid).subscribe(response => {\n this.primarySubstance = response;\n this.primarySubUuid = this.primarySubstance.uuid;\n });\n }\n }\n });\n }\n this.uuid = this.substanceFormService.getUuid();\n const imported = this.substanceFormService.getMethod();\n const source = this.activatedRoute.snapshot.queryParams['source'] || null;\n if (imported && imported === 'import' && (!source || source !== 'draft')) {\n this.imported = true;\n } else {\n this.imported = false;\n }\n\n });\n\n this.subscriptions.push(subscription);\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getRedirect() {\n if (this.uuid) {\n return this.substanceService.oldSiteRedirect('edit', this.substanceFormService.getUuid());\n } else {\n return '#';\n }\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('DEFINITION_TYPE', 'DEFINITION_LEVEL').subscribe(response => {\n this.definitionTypes = response['DEFINITION_TYPE'].list;\n this.definitionLevels = response['DEFINITION_LEVEL'].list;\n });\n }\n\n updateDefinitionType(event: MatSelectChange): void {\n if (this.definition.definitionType === 'PRIMARY' && this.definition.relationships != null && this.definition.relationships.length) {\n const indexToRemove = this.definition.relationships\n .findIndex((relationship) => relationship.relatedSubstance.refuuid === this.primarySubstance.uuid);\n if (indexToRemove > -1) {\n this.definition.relationships.splice(indexToRemove, 1);\n }\n this.primarySubstance = null;\n }\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n primartySubstanceUpdated(substance?: SubstanceSummary): void {\n if (substance != null) {\n this.setPrimarySubstance(substance);\n } else {\n this.removePrimarySubstance();\n }\n }\n\n setPrimarySubstance(substance: SubstanceSummary): void {\n\n this.primarySubstance = substance;\n this.primarySubUuid = substance.uuid;\n\n if (this.definition.relationships == null\n || Object.prototype.toString.call(this.definition.relationships) !== '[object Array]') {\n this.definition.relationships = [];\n }\n this.cvService.getDomainVocabulary('RELATIONSHIP_TYPE').subscribe(vocabularyResponse => {\n const relationship: SubstanceRelationship = {\n relatedSubstance: {\n refuuid: this.primarySubstance.uuid,\n refPname: this.primarySubstance._name,\n approvalID: this.primarySubstance.approvalID,\n substanceClass: 'reference'\n },\n access: [],\n type: vocabularyResponse['RELATIONSHIP_TYPE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE'].value\n || ''\n };\n this.definition.relationships.push(relationship);\n this.substanceFormService.updateDefinition(this.definition);\n });\n }\n\n removePrimarySubstance(): void {\n const indexToRemove = this.definition.relationships\n .findIndex((relationship) => relationship.relatedSubstance.refuuid === this.primarySubUuid);\n this.definition.relationships.splice(indexToRemove, 1);\n this.primarySubstance = null;\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n updateAccess(access: Array): void {\n this.definition.access = access;\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n updateDefAccess(access: Array): void {\n this.substanceFormService.setDefinitionFromDefRef(access);\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n updateDefinition(): void {\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n private crossCheckTags(): void {\n if (\n this.definition != null\n && this.definition.tags != null\n && this.definition.tags.length > 0\n && this.suggestedTags != null) {\n const tags = this.definition.tags.sort();\n let i = 0;\n this.definition.tags.forEach(tag => {\n for (i = i; i < this.suggestedTags.length; i++) {\n if (tag.toLowerCase() === this.suggestedTags[i].toLowerCase()) {\n this.suggestedTags.splice(i, 1);\n break;\n }\n }\n });\n }\n }\n\n tagAdded(event: MatChipInputEvent): void {\n if ((event.value || '').trim()) {\n const addedTag = event.value.trim();\n this.addTag(addedTag);\n }\n if (event.input) {\n event.input.value = '';\n }\n }\n\n private addTag(addedTag: string): void {\n this.definition.tags.push(addedTag);\n this.updateDefinition();\n for (let i = 0; i < this.suggestedTags.length; i++) {\n if (addedTag.toLowerCase() === this.suggestedTags[i].toLowerCase()) {\n this.suggestedTags.splice(i, 1);\n break;\n }\n }\n }\n\n removeTag(tag: string): void {\n const tagIndex = this.definition.tags.indexOf(tag);\n\n if (tagIndex > -1) {\n this.definition.tags.splice(tagIndex, 1);\n this.updateDefinition();\n\n if (this.usedSuggestedTags.length > 0) {\n for (let i = 0; i < this.usedSuggestedTags.length; i++) {\n if (tag.toLowerCase() === this.usedSuggestedTags[i].toLowerCase()) {\n const availableTag = this.usedSuggestedTags.splice(i, 1)[0];\n this.suggestedTags.push(availableTag);\n this.suggestedTags.sort();\n break;\n }\n }\n }\n }\n }\n\n selectedTag(event: MatAutocompleteSelectedEvent): void {\n this.definition.tags.push(event.option.value);\n this.updateDefinition();\n this.tagsCtrl.setValue(null);\n this.tagsInput.nativeElement.value = '';\n this.usedSuggestedTags.push(event.option.value);\n const tagIndex = this.suggestedTags.indexOf(event.option.value);\n if (tagIndex > -1) {\n this.suggestedTags.splice(tagIndex, 1);\n }\n }\n\n tagsAutocompleteClosed(): void {\n this.decreaseOverlayZindex();\n let autocompleteInputValue = this.tagsCtrl.value;\n if (autocompleteInputValue != null && autocompleteInputValue !== '') {\n autocompleteInputValue = autocompleteInputValue.trim();\n this.addTag(autocompleteInputValue);\n this.tagsCtrl.setValue(null);\n this.tagsInput.nativeElement.value = '';\n }\n }\n\n tagsBlurred(): void {\n if (this.filteredSuggestedTags.length === 0) {\n let autocompleteInputValue = this.tagsCtrl.value;\n if (autocompleteInputValue != null && autocompleteInputValue !== '') {\n autocompleteInputValue = autocompleteInputValue.trim();\n this.addTag(autocompleteInputValue);\n this.tagsCtrl.setValue(null);\n this.tagsInput.nativeElement.value = '';\n }\n }\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormDefinitionComponent } from './substance-form-definition.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { SubstanceSelectorModule } from '../../substance-selector/substance-selector.module';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {RouterModule} from '@angular/router';\nimport {MatRadioModule} from '@angular/material/radio';\nimport {MatChipsModule} from '@angular/material/chips';\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\nimport {MatAutocompleteModule} from '@angular/material/autocomplete';\nimport { ElementLabelDisplayModule } from '@gsrs-core/utils/element-label-display.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormDefinitionComponent),\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatSelectModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n SubstanceFormModule,\n ScrollToModule,\n SubstanceSelectorModule,\n MatTooltipModule,\n RouterModule,\n MatRadioModule,\n MatChipsModule,\n MatAutocompleteModule,\n MatProgressBarModule,\n ElementLabelDisplayModule\n ],\n declarations: [\n SubstanceFormDefinitionComponent\n ]\n})\nexport class SubstanceFormDefinitionModule { }\n"],"sourceRoot":"webpack:///","file":"6558.213ac266ccf8454e.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6558.31834a7e8b6d3cc2.js b/frontend/src/main/resources/static/6558.31834a7e8b6d3cc2.js deleted file mode 100644 index a348a87..0000000 --- a/frontend/src/main/resources/static/6558.31834a7e8b6d3cc2.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6558],{16558:function(ve,b,s){s.r(b),s.d(b,{SubstanceFormDefinitionModule:function(){return ge}});var S=s(48047),_=s(78069),p=s(36362),E=s(24582),O=s(7318),e=s(76442),M=s(79223),N=s(42827),P=s(12570),U=s(33567),y=s(75939),f=s(90587),L=s(59295),J=s(53141),H=s(66088),h=s(98002),g=s(44770),x=s(91434),Q=s(1130),Y=s(24459),Z=s(61534),w=s(84577),A=s(40089),D=s(65590),m=s(81196),T=s(43188),R=s(48302),k=s(14900),B=["tagsInput"];function V(i,c){if(1&i&&(e.TgZ(0,"span",23),e._uU(1),e.qZA()),2&i){var o=e.oxw(2);e.xp6(1),e.Oqu(o.definition.approvalID)}}function j(i,c){if(1&i&&(e.TgZ(0,"div",24),e.TgZ(1,"div"),e._uU(2,"Display Name: "),e._UZ(3,"span",25),e.qZA(),e.qZA()),2&i){var o=e.oxw(2);e.xp6(3),e.Q6J("innerHTML",o.definition._nameHTML?o.definition._nameHTML:o.definition._name,e.oJD)}}function q(i,c){if(1&i&&(e.TgZ(0,"mat-option",28),e._uU(1),e.qZA()),2&i){var o=c.$implicit;e.Q6J("value",o.value),e.xp6(1),e.hij(" ",o.display," ")}}function z(i,c){if(1&i){var o=e.EpF();e.TgZ(0,"mat-form-field",26),e.TgZ(1,"mat-label"),e._uU(2,"Definition Type"),e.qZA(),e.TgZ(3,"mat-select",27),e.NdJ("ngModelChange",function(t){return e.CHM(o),e.oxw(2).definition.definitionType=t})("selectionChange",function(t){return e.CHM(o),e.oxw(2).updateDefinitionType(t)}),e.YNc(4,q,2,2,"mat-option",20),e.qZA(),e.qZA()}if(2&i){var u=e.oxw(2);e.xp6(3),e.Q6J("ngModel",u.definition.definitionType),e.xp6(1),e.Q6J("ngForOf",u.definitionTypes)}}function G(i,c){if(1&i){var o=e.EpF();e.TgZ(0,"div",29),e.TgZ(1,"app-substance-selector",30),e.NdJ("selectionUpdated",function(t){return e.CHM(o),e.oxw(2).primartySubstanceUpdated(t)}),e.qZA(),e.qZA()}if(2&i){var u=e.oxw(2);e.xp6(1),e.Q6J("subuuid",u.primarySubUuid)}}function K(i,c){if(1&i&&(e.TgZ(0,"mat-option",28),e._uU(1),e.qZA()),2&i){var o=c.$implicit;e.Q6J("value",o.value),e.xp6(1),e.hij(" ",o.display," ")}}function X(i,c){if(1&i){var o=e.EpF();e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-label"),e._uU(2,"Definition Level"),e.qZA(),e.TgZ(3,"mat-select",31),e.NdJ("ngModelChange",function(t){return e.CHM(o),e.oxw(2).definition.definitionLevel=t})("selectionChange",function(){return e.CHM(o),e.oxw(2).updateDefinition()}),e.YNc(4,K,2,2,"mat-option",20),e.qZA(),e.qZA()}if(2&i){var u=e.oxw(2);e.xp6(3),e.Q6J("ngModel",u.definition.definitionLevel),e.xp6(1),e.Q6J("ngForOf",u.definitionLevels)}}function $(i,c){if(1&i&&(e.TgZ(0,"a",36),e._uU(1," Old edit form "),e._UZ(2,"mat-icon",35),e.qZA()),2&i){var o=e.oxw(3);e.Q6J("href",o.getRedirect(),e.LSH)}}var W=function(c){return["/substances",c]};function ee(i,c){if(1&i&&(e.TgZ(0,"div",32),e.YNc(1,$,3,1,"a",33),e._UZ(2,"br"),e.TgZ(3,"a",34),e._uU(4," Details page "),e._UZ(5,"mat-icon",35),e.qZA(),e.qZA()),2&i){var o=e.oxw(2);e.xp6(1),e.Q6J("ngIf",o.oldlink),e.xp6(2),e.Q6J("routerLink",e.VKq(2,W,o.uuid))}}function te(i,c){if(1&i){var o=e.EpF();e.TgZ(0,"mat-chip",37),e.NdJ("removed",function(){var n=e.CHM(o).$implicit;return e.oxw(2).removeTag(n)}),e._uU(1),e._UZ(2,"mat-icon",38),e.qZA()}if(2&i){var u=c.$implicit;e.xp6(1),e.hij(" ",u," ")}}function ie(i,c){if(1&i&&(e.TgZ(0,"mat-option",28),e._uU(1),e.qZA()),2&i){var o=c.$implicit;e.Q6J("value",o),e.xp6(1),e.hij(" ",o," ")}}function ne(i,c){if(1&i){var o=e.EpF();e.TgZ(0,"div",5),e.TgZ(1,"div",39),e._UZ(2,"app-domain-references",40,41),e.qZA(),e.TgZ(4,"div",42),e.TgZ(5,"app-access-manager",43),e.NdJ("accessOut",function(t){return e.CHM(o),e.oxw(2).updateDefAccess(t)}),e.qZA(),e.qZA(),e.qZA()}if(2&i){var u=e.oxw(2);e.xp6(2),e.Q6J("referencesUuids",u.definition.references),e.xp6(2),e.MGl("matTooltip","Set ",u.definition.substanceClass," access"),e.xp6(1),e.Q6J("access",u.defAccess)}}function oe(i,c){1&i&&(e.TgZ(0,"div",5),e._uU(1," Concepts have no defining information, but are collections of terms, codes and related information. "),e._UZ(2,"br"),e._uU(3," They can be promoted to a defined substance at a later time, when appropriate. "),e.qZA())}function ae(i,c){if(1&i){var o=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",1),e.TgZ(2,"div"),e.TgZ(3,"span",2),e._uU(4),e.qZA(),e.TgZ(5,"span"),e._uU(6),e.ALo(7,"titlecase"),e.qZA(),e.qZA(),e.YNc(8,V,2,1,"span",3),e.qZA(),e.YNc(9,j,4,1,"div",4),e.TgZ(10,"div",5),e.YNc(11,z,5,2,"mat-form-field",6),e.YNc(12,G,2,1,"div",7),e.YNc(13,X,5,2,"mat-form-field",0),e.TgZ(14,"div",8),e.TgZ(15,"mat-checkbox",9),e.NdJ("ngModelChange",function(a){return e.CHM(o),e.oxw().definition.deprecated=a})("change",function(){return e.CHM(o),e.oxw().updateDefinition()}),e._uU(16,"Deprecated"),e.qZA(),e.qZA(),e.TgZ(17,"div"),e.TgZ(18,"app-access-manager",10),e.NdJ("accessOut",function(a){return e.CHM(o),e.oxw().updateAccess(a)}),e.qZA(),e.qZA(),e.YNc(19,ee,6,4,"div",11),e.qZA(),e.TgZ(20,"div",5),e.TgZ(21,"mat-form-field",12),e.TgZ(22,"mat-chip-list",13,14),e.YNc(24,te,3,1,"mat-chip",15),e.TgZ(25,"input",16,17),e.NdJ("matChipInputTokenEnd",function(a){return e.CHM(o),e.oxw().tagAdded(a)})("blur",function(){return e.CHM(o),e.oxw().tagsBlurred()}),e.qZA(),e.qZA(),e.TgZ(27,"mat-autocomplete",18,19),e.NdJ("opened",function(){return e.CHM(o),e.oxw().increaseOverlayZindex()})("closed",function(){return e.CHM(o),e.oxw().tagsAutocompleteClosed()})("optionSelected",function(a){return e.CHM(o),e.oxw().selectedTag(a)}),e.YNc(29,ie,2,2,"mat-option",20),e.qZA(),e.TgZ(30,"mat-hint"),e._uU(31,"Enter new tags (and press Enter after each entry) or select from suggested tags below"),e.qZA(),e.qZA(),e.qZA(),e.YNc(32,ne,6,3,"div",21),e.YNc(33,oe,4,0,"div",21),e._UZ(34,"app-audit-info",22),e.qZA()}if(2&i){var u=e.MAs(23),r=e.MAs(28),t=e.oxw();e.xp6(4),e.Oqu(t.uuid&&!t.imported?"Editing ":"Registering New "),e.xp6(2),e.hij(" ",e.lcZ(7,19,t.substanceClass),""),e.xp6(2),e.Q6J("ngIf",t.definition.approvalID&&""!==t.definition.approvalID),e.xp6(1),e.Q6J("ngIf",t.definition._name),e.xp6(2),e.Q6J("ngIf","concept"!==t.definition.substanceClass),e.xp6(1),e.Q6J("ngIf","ALTERNATIVE"==t.definition.definitionType),e.xp6(1),e.Q6J("ngIf","concept"!==t.definition.substanceClass),e.xp6(2),e.Q6J("ngModel",t.definition.deprecated),e.xp6(3),e.Q6J("access",t.definition.access),e.xp6(1),e.Q6J("ngIf",t.uuid),e.xp6(5),e.Q6J("ngForOf",t.definition.tags),e.xp6(1),e.Q6J("formControl",t.tagsCtrl)("matAutocomplete",r)("matChipInputFor",u)("matChipInputSeparatorKeyCodes",t.separatorKeysCodes),e.xp6(4),e.Q6J("ngForOf",t.filteredSuggestedTags),e.xp6(3),e.Q6J("ngIf","concept"!==t.definition.substanceClass),e.xp6(1),e.Q6J("ngIf","concept"===t.definition.substanceClass),e.xp6(1),e.Q6J("source",t.definition)}}var se=function(){var i=function(c){(0,E.Z)(u,c);var o=(0,O.Z)(u);function u(r,t,n,a,d,v){var l;return(0,_.Z)(this,u),(l=o.call(this)).cvService=r,l.substanceService=t,l.substanceFormService=n,l.overlayContainerService=a,l.configService=d,l.activatedRoute=v,l.separatorKeysCodes=[y.K5,y.OC],l.tagsCtrl=new f.NI({value:"",disabled:!0}),l.usedSuggestedTags=[],l.subscriptions=[],l.imported=!1,l.oldlink=!1,l}return(0,S.Z)(u,[{key:"ngOnInit",value:function(){var t=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),this.menuLabelUpdate.emit("Overview"),this.getVocabularies(),this.substanceService.getTags().subscribe(function(a){t.suggestedTags=a,t.filteredSuggestedTags=a,t.crossCheckTags(),t.tagsCtrl.enable()});var n=this.tagsCtrl.valueChanges.subscribe(function(a){t.filteredSuggestedTags=t.suggestedTags.filter(function(d){return d.toLowerCase().indexOf((a||"").toLowerCase())>-1})});this.subscriptions.push(n),this.configService.configData&&this.configService.configData.showOldLinks&&(this.oldlink=!0)}},{key:"ngAfterViewInit",value:function(){var t=this,n=this.substanceFormService.definition.subscribe(function(a){t.defAccess=t.substanceFormService.getDefinitionForDefRef(),t.definition=a||{},t.crossCheckTags(),t.substanceClass="structure"===t.definition.substanceClass?"chemical":"nucleicAcid"===t.definition.substanceClass?"Nucleic Acid":"structurallyDiverse"===t.definition.substanceClass?"Structurally Diverse":"SPECIFIEDSUBSTANCE"===t.definition.substanceClass.toUpperCase()?"Specified Substance Group 1":"SPECIFIEDSUBSTANCEG3"===t.definition.substanceClass.toUpperCase()?"Specified Substance Group 3":t.definition.substanceClass,t.definition.definitionType||(t.definition.definitionType="PRIMARY"),t.definition.definitionLevel||(t.definition.definitionLevel="COMPLETE"),t.json=t.substanceFormService.getJson(),t.definition.status&&(t.status=t.definition.status),"ALTERNATIVE"===t.definition.definitionType&&t.cvService.getDomainVocabulary("RELATIONSHIP_TYPE").pipe((0,L.q)(1)).subscribe(function(l){var F=l.RELATIONSHIP_TYPE&&l.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"]&&l.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"].value||null;if(F&&t.definition.relationships&&t.definition.relationships.length){var I=t.definition.relationships.find(function(C){return C.type===F});null!=I&&t.substanceService.getSubstanceSummary(I.relatedSubstance.refuuid).subscribe(function(C){t.primarySubstance=C,t.primarySubUuid=t.primarySubstance.uuid})}}),t.uuid=t.substanceFormService.getUuid();var d=t.substanceFormService.getMethod(),v=t.activatedRoute.snapshot.queryParams.source||null;t.imported=!(!d||"import"!==d||v&&"draft"===v)});this.subscriptions.push(n)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"getRedirect",value:function(){return this.uuid?this.substanceService.oldSiteRedirect("edit",this.substanceFormService.getUuid()):"#"}},{key:"getVocabularies",value:function(){var t=this;this.cvService.getDomainVocabulary("DEFINITION_TYPE","DEFINITION_LEVEL").subscribe(function(n){t.definitionTypes=n.DEFINITION_TYPE.list,t.definitionLevels=n.DEFINITION_LEVEL.list})}},{key:"updateDefinitionType",value:function(t){var n=this;if("PRIMARY"===this.definition.definitionType&&null!=this.definition.relationships&&this.definition.relationships.length){var a=this.definition.relationships.findIndex(function(d){return d.relatedSubstance.refuuid===n.primarySubstance.uuid});a>-1&&this.definition.relationships.splice(a,1),this.primarySubstance=null}this.substanceFormService.updateDefinition(this.definition)}},{key:"primartySubstanceUpdated",value:function(t){null!=t?this.setPrimarySubstance(t):this.removePrimarySubstance()}},{key:"setPrimarySubstance",value:function(t){var n=this;this.primarySubstance=t,this.primarySubUuid=t.uuid,(null==this.definition.relationships||"[object Array]"!==Object.prototype.toString.call(this.definition.relationships))&&(this.definition.relationships=[]),this.cvService.getDomainVocabulary("RELATIONSHIP_TYPE").subscribe(function(a){n.definition.relationships.push({relatedSubstance:{refuuid:n.primarySubstance.uuid,refPname:n.primarySubstance._name,approvalID:n.primarySubstance.approvalID,substanceClass:"reference"},access:[],type:a.RELATIONSHIP_TYPE&&a.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"]&&a.RELATIONSHIP_TYPE.dictionary["SUB_ALTERNATE->SUBSTANCE"].value||""}),n.substanceFormService.updateDefinition(n.definition)})}},{key:"removePrimarySubstance",value:function(){var t=this,n=this.definition.relationships.findIndex(function(a){return a.relatedSubstance.refuuid===t.primarySubUuid});this.definition.relationships.splice(n,1),this.primarySubstance=null,this.substanceFormService.updateDefinition(this.definition)}},{key:"updateAccess",value:function(t){this.definition.access=t,this.substanceFormService.updateDefinition(this.definition)}},{key:"updateDefAccess",value:function(t){this.substanceFormService.setDefinitionFromDefRef(t),this.substanceFormService.updateDefinition(this.definition)}},{key:"updateDefinition",value:function(){this.substanceFormService.updateDefinition(this.definition)}},{key:"crossCheckTags",value:function(){var t=this;if(null!=this.definition&&null!=this.definition.tags&&this.definition.tags.length>0&&null!=this.suggestedTags){this.definition.tags.sort();var a=0;this.definition.tags.forEach(function(d){for(a=a;a-1&&(this.definition.tags.splice(n,1),this.updateDefinition(),this.usedSuggestedTags.length>0))for(var a=0;a-1&&this.suggestedTags.splice(n,1)}},{key:"tagsAutocompleteClosed",value:function(){this.decreaseOverlayZindex();var t=this.tagsCtrl.value;null!=t&&""!==t&&(t=t.trim(),this.addTag(t),this.tagsCtrl.setValue(null),this.tagsInput.nativeElement.value="")}},{key:"tagsBlurred",value:function(){if(0===this.filteredSuggestedTags.length){var t=this.tagsCtrl.value;null!=t&&""!==t&&(t=t.trim(),this.addTag(t),this.tagsCtrl.setValue(null),this.tagsInput.nativeElement.value="")}}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),u}(M.o);return i.\u0275fac=function(o){return new(o||i)(e.Y36(N.I),e.Y36(P.d),e.Y36(U.B),e.Y36(H.Xj),e.Y36(J.E),e.Y36(h.gz))},i.\u0275cmp=e.Xpm({type:i,selectors:[["app-substance-form-definition"]],viewQuery:function(o,u){var r;1&o&&e.Gf(B,5,e.SBq),2&o&&e.iGM(r=e.CRH())&&(u.tagsInput=r.first)},features:[e.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"substance-form-row","form-header"],[1,"sub-header"],["class","approval",4,"ngIf"],["class","substance-form-row form-name",4,"ngIf"],[1,"substance-form-row"],["style","margin-right: 5px",4,"ngIf"],["class","primary-substance-container",4,"ngIf"],[1,"checkbox-container"],["name","deprecated",3,"ngModel","ngModelChange","change"],["label","Record Level Access",3,"access","accessOut"],["class","redirect-links",4,"ngIf"],[1,"tag-list"],["aria-label","Tags edit","selectable","false"],["tagList",""],["removable","true",3,"removed",4,"ngFor","ngForOf"],["placeholder","Substance tags",3,"formControl","matAutocomplete","matChipInputFor","matChipInputSeparatorKeyCodes","matChipInputTokenEnd","blur"],["tagsInput",""],[3,"opened","closed","optionSelected"],["tagsAuto","matAutocomplete"],[3,"value",4,"ngFor","ngForOf"],["class","substance-form-row",4,"ngIf"],[3,"source"],[1,"approval"],[1,"substance-form-row","form-name"],[1,"name",3,"innerHTML"],[2,"margin-right","5px"],["name","definitionType","required","",3,"ngModel","ngModelChange","selectionChange"],[3,"value"],[1,"primary-substance-container"],["eventCategory","substanceFormDefinitionType","placeholder","Primary Substance","header","Primary Substance",3,"subuuid","selectionUpdated"],["name","definitionLevel",3,"ngModel","ngModelChange","selectionChange"],[1,"redirect-links"],["target","_blank","matTooltip","open old edit form in new tab",3,"href",4,"ngIf"],["target","_blank","matTooltip","open details page in new tab",3,"routerLink"],["svgIcon","open_in_new",1,"icon"],["target","_blank","matTooltip","open old edit form in new tab",3,"href"],["removable","true",3,"removed"],["matChipRemove","","svgIcon","cancel"],[1,"references-container"],["card","definition",3,"referencesUuids"],["references",""],[3,"matTooltip"],["label","Definition Access",3,"access","accessOut"]],template:function(o,u){1&o&&e.YNc(0,ae,35,21,"div",0),2&o&&e.Q6J("ngIf",u.definition)},directives:[p.O5,g.KE,g.hX,x.gD,f.Q7,f.JJ,f.On,p.sg,Q.ey,Y.Q,Z.oG,w.h,A.gM,D.Hw,h.yS,m.qn,m.HS,m.qH,f.Fj,T.ZL,m.oH,f.oH,T.XC,g.bx,R.V,k.n],pipes:[p.rS],styles:[".substance-form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.approval[_ngcontent-%COMP%]{color:#c7254e;font-size:24px}.primary-substance-container[_ngcontent-%COMP%]{max-width:25%}.section-header[_ngcontent-%COMP%]{color:#0000008a;font-size:11px;text-align:left;letter-spacing:.005px}.form-header[_ngcontent-%COMP%]{padding-bottom:20px;font-weight:500;font-size:28px}.sub-header[_ngcontent-%COMP%]{font-weight:400;padding-right:5px}.references-container[_ngcontent-%COMP%]{width:100%}.checkbox-container[_ngcontent-%COMP%]{padding-top:10px}.definition-reference[_ngcontent-%COMP%]{margin-bottom:0}.redirect-links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#4793d1!important;float:right;text-decoration:none}.redirect-links[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{-ms-transform:scale(.75);transform:scale(.75)}.icon[_ngcontent-%COMP%]{font-size:10px!important}.set-status[_ngcontent-%COMP%] .mat-radio-label{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.set-status[_ngcontent-%COMP%] .mat-radio-label-content{padding-left:5px;font-size:11px;padding-bottom:4px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.status-label[_ngcontent-%COMP%]{padding-right:10px}.message-field[_ngcontent-%COMP%]{width:50%}.form-name[_ngcontent-%COMP%]{font-size:22px;padding-bottom:15px}.name[_ngcontent-%COMP%]{color:#00f;padding-left:5px}.tag-list[_ngcontent-%COMP%]{width:100%}"]}),i}(),re=s(64061),ce=s(82796),ue=s(87317),de=s(7168),le=s(94673),fe=s(63200),me=s(68390),pe=s(60833),ge=function(){var i=(0,S.Z)(function c(){(0,_.Z)(this,c)});return i.\u0275fac=function(o){return new(o||i)},i.\u0275mod=e.oAB({type:i}),i.\u0275inj=e.cJS({imports:[[p.ez,re.o.forChild(se),f.UX,f.u5,g.lN,x.LD,ce.Tx,Z.p9,ue.ot,D.Ps,de.O,le.w,fe.U,A.AV,h.Bz,me.Fk,m.Hi,T.Bb,pe.Cv]]}),i}()}}]); -//# sourceMappingURL=6558.31834a7e8b6d3cc2.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6558.31834a7e8b6d3cc2.js.map b/frontend/src/main/resources/static/6558.31834a7e8b6d3cc2.js.map deleted file mode 100644 index 8f262a6..0000000 --- a/frontend/src/main/resources/static/6558.31834a7e8b6d3cc2.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r18","ctx_r19","ctx_r25","ctx_r28","ctx_r32","ctx_r36","ctx_r37","ctx_r38","ctx_r39","ctx_r40","ctx_r41","ctx_r42","SubstanceFormDefinitionComponent","cvService","substanceService","substanceFormService","overlayContainerService","configService","activatedRoute","l","ENTER","COMMA","FormControl","value","disabled","this","overlayContainer","getContainerElement","menuLabelUpdate","emit","getVocabularies","getTags","subscribe","t","suggestedTags","tags","filteredSuggestedTags","crossCheckTags","tagsCtrl","enable","tagsSubscription","valueChanges","filter","tag","toLowerCase","indexOf","subscriptions","push","configData","showOldLinks","oldlink","subscription","definition","defAccess","getDefinitionForDefRef","substanceClass","toUpperCase","definitionType","definitionLevel","json","getJson","status","getDomainVocabulary","pipe","take","type","vocabularyResponse","RELATIONSHIP_TYPE","dictionary","relationships","length","primarySubstance","find","relationship","getSubstanceSummary","relatedSubstance","refuuid","response","primarySubUuid","uuid","getUuid","imported","getMethod","source","snapshot","queryParams","forEach","unsubscribe","oldSiteRedirect","definitionTypes","DEFINITION_TYPE","list","definitionLevels","DEFINITION_LEVEL","event","indexToRemove","findIndex","n","splice","updateDefinition","substance","setPrimarySubstance","removePrimarySubstance","Object","prototype","toString","call","refPname","_name","approvalID","access","setDefinitionFromDefRef","sort","i","trim","addedTag","addTag","input","tagIndex","usedSuggestedTags","availableTag","option","setValue","tagsInput","nativeElement","decreaseOverlayZindex","autocompleteInputValue","style","zIndex","u","SubstanceFormBase","selectors","ElementRef","SubstanceFormDefinitionModule","S","CommonModule","DynamicComponentLoaderModule","ReactiveFormsModule","FormsModule","MatFormFieldModule","MatSelectModule","MatMenuModule","MatCheckboxModule","MatButtonModule","MatIconModule","SubstanceFormModule","ScrollToModule","SubstanceSelectorModule","MatTooltipModule","RouterModule","MatRadioModule","MatChipsModule","MatAutocompleteModule","MatProgressBarModule"],"sources":["./src/app/core/substance-form/substance-form-definition/substance-form-definition.component.html","./src/app/core/substance-form/substance-form-definition/substance-form-definition.component.ts","./src/app/core/substance-form/substance-form-definition/substance-form-definition.module.ts"],"sourcesContent":["
\n
\n
{{(uuid && !imported) ? 'Editing ' : 'Registering New '}}\n {{substanceClass | titlecase}}\n
\n {{definition.approvalID}}\n
\n
\n
Display Name:
\n
\n
\n \n Definition Type\n \n \n {{defitionType.display}}\n \n \n \n
\n \n \n
\n \n Definition Level\n \n \n {{defitionLevel.display}}\n \n \n \n
\n Deprecated\n
\n
\n \n
\n \n
\n
\n \n \n \n {{tag}}\n \n \n \n \n \n \n {{tag}}\n \n \n Enter new tags (and press Enter after each entry) or select from suggested tags below\n \n
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n Concepts have no defining information, but are collections of terms, codes and related information.
They can be promoted to a defined substance at a later time, when appropriate.\n
\n \n
\n","import { Component, OnInit, AfterViewInit, OnDestroy, ViewChild, ElementRef } from '@angular/core';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { MatSelectChange } from '@angular/material/select';\nimport { SubstanceService } from '../../substance/substance.service';\nimport { SubstanceSummary, SubstanceRelationship } from '../../substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceFormDefinition } from '../substance-form.model';\nimport {MatChipInputEvent} from '@angular/material/chips';\nimport {MatAutocompleteSelectedEvent} from '@angular/material/autocomplete';\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\nimport { FormControl } from '@angular/forms';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'app-substance-form-definition',\n templateUrl: './substance-form-definition.component.html',\n styleUrls: ['./substance-form-definition.component.scss']\n})\nexport class SubstanceFormDefinitionComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n definitionTypes: Array;\n definitionLevels: Array;\n primarySubstance?: SubstanceSummary;\n definition: SubstanceFormDefinition;\n primarySubUuid: string;\n uuid: string;\n json: any;\n feature: string;\n substanceClass: string;\n status: string;\n accessLabel?:string;\n readonly separatorKeysCodes: number[] = [ENTER, COMMA];\n tagsCtrl = new FormControl({value: '', disabled: true});\n private suggestedTags: Array;\n filteredSuggestedTags: Array;\n private usedSuggestedTags: Array = [];\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n defAccess: Array;\n @ViewChild('tagsInput', { read: ElementRef, static: false }) tagsInput: ElementRef;\n imported = false;\n oldlink = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n public substanceService: SubstanceService,\n private substanceFormService: SubstanceFormService,\n private overlayContainerService: OverlayContainer,\n private configService: ConfigService,\n private activatedRoute: ActivatedRoute,\n\n ) {\n super();\n }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.menuLabelUpdate.emit('Overview');\n this.getVocabularies();\n this.substanceService.getTags().subscribe(tags => {\n this.suggestedTags = tags;\n this.filteredSuggestedTags = tags;\n this.crossCheckTags();\n this.tagsCtrl.enable();\n });\n const tagsSubscription = this.tagsCtrl.valueChanges.subscribe(value => {\n this.filteredSuggestedTags = this.suggestedTags.filter(tag => tag.toLowerCase().indexOf((value || '').toLowerCase()) > -1);\n });\n this.subscriptions.push(tagsSubscription);\n\n if (this.configService.configData && this.configService.configData.showOldLinks) {\n this.oldlink = true;\n\n }\n }\n\n ngAfterViewInit() {\n const subscription = this.substanceFormService.definition.subscribe(definition => {\n this.defAccess = this.substanceFormService.getDefinitionForDefRef();\n this.definition = definition || {};\n this.crossCheckTags();\n if (this.definition.substanceClass === 'structure') {\n this.substanceClass = 'chemical';\n } else if (this.definition.substanceClass === 'nucleicAcid') {\n this.substanceClass = 'Nucleic Acid';\n } else if (this.definition.substanceClass === 'structurallyDiverse') {\n this.substanceClass = 'Structurally Diverse';\n } else if (this.definition.substanceClass.toUpperCase() === 'SPECIFIEDSUBSTANCE') {\n this.substanceClass = 'Specified Substance Group 1';\n } else if (this.definition.substanceClass.toUpperCase() === 'SPECIFIEDSUBSTANCEG3') {\n this.substanceClass = 'Specified Substance Group 3';\n } else {\n this.substanceClass = this.definition.substanceClass;\n }\n if (!this.definition.definitionType) {\n this.definition.definitionType = 'PRIMARY';\n }\n\n if (!this.definition.definitionLevel) {\n this.definition.definitionLevel = 'COMPLETE';\n }\n this.json = this.substanceFormService.getJson();\n if (this.definition.status) {\n this.status = this.definition.status;\n }\n if (this.definition.definitionType === 'ALTERNATIVE') {\n this.cvService.getDomainVocabulary('RELATIONSHIP_TYPE').pipe(take(1)).subscribe(vocabularyResponse => {\n const type = vocabularyResponse['RELATIONSHIP_TYPE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE'].value\n || null;\n\n if (type && this.definition.relationships && this.definition.relationships.length) {\n const primarySubstance = this.definition.relationships.find(relationship => relationship.type === type);\n if (primarySubstance != null) {\n this.substanceService.getSubstanceSummary(primarySubstance.relatedSubstance.refuuid).subscribe(response => {\n this.primarySubstance = response;\n this.primarySubUuid = this.primarySubstance.uuid;\n });\n }\n }\n });\n }\n this.uuid = this.substanceFormService.getUuid();\n const imported = this.substanceFormService.getMethod();\n const source = this.activatedRoute.snapshot.queryParams['source'] || null;\n if (imported && imported === 'import' && (!source || source !== 'draft')) {\n this.imported = true;\n } else {\n this.imported = false;\n }\n\n });\n\n this.subscriptions.push(subscription);\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getRedirect() {\n if (this.uuid) {\n return this.substanceService.oldSiteRedirect('edit', this.substanceFormService.getUuid());\n } else {\n return '#';\n }\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('DEFINITION_TYPE', 'DEFINITION_LEVEL').subscribe(response => {\n this.definitionTypes = response['DEFINITION_TYPE'].list;\n this.definitionLevels = response['DEFINITION_LEVEL'].list;\n });\n }\n\n updateDefinitionType(event: MatSelectChange): void {\n if (this.definition.definitionType === 'PRIMARY' && this.definition.relationships != null && this.definition.relationships.length) {\n const indexToRemove = this.definition.relationships\n .findIndex((relationship) => relationship.relatedSubstance.refuuid === this.primarySubstance.uuid);\n if (indexToRemove > -1) {\n this.definition.relationships.splice(indexToRemove, 1);\n }\n this.primarySubstance = null;\n }\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n primartySubstanceUpdated(substance?: SubstanceSummary): void {\n if (substance != null) {\n this.setPrimarySubstance(substance);\n } else {\n this.removePrimarySubstance();\n }\n }\n\n setPrimarySubstance(substance: SubstanceSummary): void {\n\n this.primarySubstance = substance;\n this.primarySubUuid = substance.uuid;\n\n if (this.definition.relationships == null\n || Object.prototype.toString.call(this.definition.relationships) !== '[object Array]') {\n this.definition.relationships = [];\n }\n this.cvService.getDomainVocabulary('RELATIONSHIP_TYPE').subscribe(vocabularyResponse => {\n const relationship: SubstanceRelationship = {\n relatedSubstance: {\n refuuid: this.primarySubstance.uuid,\n refPname: this.primarySubstance._name,\n approvalID: this.primarySubstance.approvalID,\n substanceClass: 'reference'\n },\n access: [],\n type: vocabularyResponse['RELATIONSHIP_TYPE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE']\n && vocabularyResponse['RELATIONSHIP_TYPE'].dictionary['SUB_ALTERNATE->SUBSTANCE'].value\n || ''\n };\n this.definition.relationships.push(relationship);\n this.substanceFormService.updateDefinition(this.definition);\n });\n }\n\n removePrimarySubstance(): void {\n const indexToRemove = this.definition.relationships\n .findIndex((relationship) => relationship.relatedSubstance.refuuid === this.primarySubUuid);\n this.definition.relationships.splice(indexToRemove, 1);\n this.primarySubstance = null;\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n updateAccess(access: Array): void {\n this.definition.access = access;\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n updateDefAccess(access: Array): void {\n this.substanceFormService.setDefinitionFromDefRef(access);\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n updateDefinition(): void {\n this.substanceFormService.updateDefinition(this.definition);\n }\n\n private crossCheckTags(): void {\n if (\n this.definition != null\n && this.definition.tags != null\n && this.definition.tags.length > 0\n && this.suggestedTags != null) {\n const tags = this.definition.tags.sort();\n let i = 0;\n this.definition.tags.forEach(tag => {\n for (i = i; i < this.suggestedTags.length; i++) {\n if (tag.toLowerCase() === this.suggestedTags[i].toLowerCase()) {\n this.suggestedTags.splice(i, 1);\n break;\n }\n }\n });\n }\n }\n\n tagAdded(event: MatChipInputEvent): void {\n if ((event.value || '').trim()) {\n const addedTag = event.value.trim();\n this.addTag(addedTag);\n }\n if (event.input) {\n event.input.value = '';\n }\n }\n\n private addTag(addedTag: string): void {\n this.definition.tags.push(addedTag);\n this.updateDefinition();\n for (let i = 0; i < this.suggestedTags.length; i++) {\n if (addedTag.toLowerCase() === this.suggestedTags[i].toLowerCase()) {\n this.suggestedTags.splice(i, 1);\n break;\n }\n }\n }\n\n removeTag(tag: string): void {\n const tagIndex = this.definition.tags.indexOf(tag);\n\n if (tagIndex > -1) {\n this.definition.tags.splice(tagIndex, 1);\n this.updateDefinition();\n\n if (this.usedSuggestedTags.length > 0) {\n for (let i = 0; i < this.usedSuggestedTags.length; i++) {\n if (tag.toLowerCase() === this.usedSuggestedTags[i].toLowerCase()) {\n const availableTag = this.usedSuggestedTags.splice(i, 1)[0];\n this.suggestedTags.push(availableTag);\n this.suggestedTags.sort();\n break;\n }\n }\n }\n }\n }\n\n selectedTag(event: MatAutocompleteSelectedEvent): void {\n this.definition.tags.push(event.option.value);\n this.updateDefinition();\n this.tagsCtrl.setValue(null);\n this.tagsInput.nativeElement.value = '';\n this.usedSuggestedTags.push(event.option.value);\n const tagIndex = this.suggestedTags.indexOf(event.option.value);\n if (tagIndex > -1) {\n this.suggestedTags.splice(tagIndex, 1);\n }\n }\n\n tagsAutocompleteClosed(): void {\n this.decreaseOverlayZindex();\n let autocompleteInputValue = this.tagsCtrl.value;\n if (autocompleteInputValue != null && autocompleteInputValue !== '') {\n autocompleteInputValue = autocompleteInputValue.trim();\n this.addTag(autocompleteInputValue);\n this.tagsCtrl.setValue(null);\n this.tagsInput.nativeElement.value = '';\n }\n }\n\n tagsBlurred(): void {\n if (this.filteredSuggestedTags.length === 0) {\n let autocompleteInputValue = this.tagsCtrl.value;\n if (autocompleteInputValue != null && autocompleteInputValue !== '') {\n autocompleteInputValue = autocompleteInputValue.trim();\n this.addTag(autocompleteInputValue);\n this.tagsCtrl.setValue(null);\n this.tagsInput.nativeElement.value = '';\n }\n }\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormDefinitionComponent } from './substance-form-definition.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { SubstanceSelectorModule } from '../../substance-selector/substance-selector.module';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {RouterModule} from '@angular/router';\nimport {MatRadioModule} from '@angular/material/radio';\nimport {MatChipsModule} from '@angular/material/chips';\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\nimport {MatAutocompleteModule} from '@angular/material/autocomplete';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormDefinitionComponent),\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatSelectModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n SubstanceFormModule,\n ScrollToModule,\n SubstanceSelectorModule,\n MatTooltipModule,\n RouterModule,\n MatRadioModule,\n MatChipsModule,\n MatAutocompleteModule,\n MatProgressBarModule\n ],\n declarations: [\n SubstanceFormDefinitionComponent\n ]\n})\nexport class SubstanceFormDefinitionModule { }\n"],"sourceRoot":"webpack:///","file":"6558.31834a7e8b6d3cc2.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6597.156fe57317ecd262.js b/frontend/src/main/resources/static/6597.42786e918ef43067.js similarity index 91% rename from frontend/src/main/resources/static/6597.156fe57317ecd262.js rename to frontend/src/main/resources/static/6597.42786e918ef43067.js index 41cd6f2..1308be3 100644 --- a/frontend/src/main/resources/static/6597.156fe57317ecd262.js +++ b/frontend/src/main/resources/static/6597.42786e918ef43067.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6597],{66597:function(w,p,i){i.r(p),i.d(p,{SubstanceConceptDefinitionModule:function(){return O}});var r=i(48047),d=i(78069),f=i(36362),m=i(24582),h=i(7318),g=i(2756),v=i(50253),n=i(76442),C=i(9292),l=i(98002),b=function(o){return["/substances",o]};function x(t,o){if(1&t&&(n.TgZ(0,"div",3),n._UZ(1,"img",4),n.TgZ(2,"div"),n.TgZ(3,"a",5),n._uU(4),n.qZA(),n.qZA(),n.qZA()),2&t){var e=o.$implicit;n.xp6(1),n.Q6J("entityId",e.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(3,b,e.refuuid)),n.xp6(1),n.hij(" ",e.refPname," ")}}function S(t,o){if(1&t&&(n.TgZ(0,"div"),n._uU(1," This record is a subconcept of "),n.TgZ(2,"div",1),n.YNc(3,x,5,5,"div",2),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(3),n.Q6J("ngForOf",e.definitions)}}function Z(t,o){1&t&&(n.TgZ(0,"div"),n.TgZ(1,"i"),n._uU(2,"This is a non-substance concept"),n.qZA(),n.qZA())}var D=function(){var t=function(o){(0,m.Z)(s,o);var e=(0,h.Z)(s);function s(){var c;return(0,d.Z)(this,s),(c=e.call(this)).relationships=[],c.definitions=[],c.substanceUpdated=new v.x,c}return(0,r.Z)(s,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(u){a.substance=u,null!=a.substance&&a.getConceptDefinition()})}},{key:"getConceptDefinition",value:function(){var a=this;this.definitions=[],this.substance.relationships&&this.substance.relationships.length>0&&(this.substance.relationships.forEach(function(u){"SUBSTANCE->SUB_CONCEPT"===u.type&&a.definitions.push(u.relatedSubstance)}),this.countUpdate.emit(this.definitions.length))}}]),s}(g.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-concept-definition"]],features:[n.qOj],decls:2,vars:2,consts:[[4,"ngIf"],[1,"thumb-row"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["appSubstanceImage","",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(e,s){1&e&&(n.YNc(0,S,4,1,"div",0),n.YNc(1,Z,3,0,"div",0)),2&e&&(n.Q6J("ngIf",s.definitions.length>0),n.xp6(1),n.Q6J("ngIf",0==s.definitions.length))},directives:[f.O5,f.sg,C.m,l.yS],styles:[".thumb-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%}.thumb-col[_ngcontent-%COMP%]{max-width:400px;min-width:25%;padding-bottom:25px}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),t}(),T=i(64061),y=i(24054),O=function(){var t=(0,r.Z)(function o(){(0,d.Z)(this,o)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[f.ez,T.o.forChild(D),l.Bz,y.f]]}),t}()}}]); -//# sourceMappingURL=6597.156fe57317ecd262.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6597],{66597:function(w,p,i){i.r(p),i.d(p,{SubstanceConceptDefinitionModule:function(){return O}});var r=i(1884),d=i(39117),f=i(36362),m=i(46751),h=i(56101),g=i(2756),v=i(50253),n=i(86613),C=i(9292),l=i(98002),b=function(o){return["/substances",o]};function x(t,o){if(1&t&&(n.TgZ(0,"div",3),n._UZ(1,"img",4),n.TgZ(2,"div"),n.TgZ(3,"a",5),n._uU(4),n.qZA(),n.qZA(),n.qZA()),2&t){var e=o.$implicit;n.xp6(1),n.Q6J("entityId",e.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(3,b,e.refuuid)),n.xp6(1),n.hij(" ",e.refPname," ")}}function S(t,o){if(1&t&&(n.TgZ(0,"div"),n._uU(1," This record is a subconcept of "),n.TgZ(2,"div",1),n.YNc(3,x,5,5,"div",2),n.qZA(),n.qZA()),2&t){var e=n.oxw();n.xp6(3),n.Q6J("ngForOf",e.definitions)}}function Z(t,o){1&t&&(n.TgZ(0,"div"),n.TgZ(1,"i"),n._uU(2,"This is a non-substance concept"),n.qZA(),n.qZA())}var D=function(){var t=function(o){(0,m.Z)(s,o);var e=(0,h.Z)(s);function s(){var c;return(0,d.Z)(this,s),(c=e.call(this)).relationships=[],c.definitions=[],c.substanceUpdated=new v.x,c}return(0,r.Z)(s,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(u){a.substance=u,null!=a.substance&&a.getConceptDefinition()})}},{key:"getConceptDefinition",value:function(){var a=this;this.definitions=[],this.substance.relationships&&this.substance.relationships.length>0&&(this.substance.relationships.forEach(function(u){"SUBSTANCE->SUB_CONCEPT"===u.type&&a.definitions.push(u.relatedSubstance)}),this.countUpdate.emit(this.definitions.length))}}]),s}(g.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-concept-definition"]],features:[n.qOj],decls:2,vars:2,consts:[[4,"ngIf"],[1,"thumb-row"],["class","thumb-col",4,"ngFor","ngForOf"],[1,"thumb-col"],["appSubstanceImage","",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(e,s){1&e&&(n.YNc(0,S,4,1,"div",0),n.YNc(1,Z,3,0,"div",0)),2&e&&(n.Q6J("ngIf",s.definitions.length>0),n.xp6(1),n.Q6J("ngIf",0==s.definitions.length))},directives:[f.O5,f.sg,C.m,l.yS],styles:[".thumb-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%}.thumb-col[_ngcontent-%COMP%]{max-width:400px;min-width:25%;padding-bottom:25px}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.substance-icon-container[_ngcontent-%COMP%]{text-align:center;padding-left:10px;padding-right:10px;max-width:250px}.wrap[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}"]}),t}(),T=i(64061),y=i(24054),O=function(){var t=(0,r.Z)(function o(){(0,d.Z)(this,o)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[f.ez,T.o.forChild(D),l.Bz,y.f]]}),t}()}}]); +//# sourceMappingURL=6597.42786e918ef43067.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6597.156fe57317ecd262.js.map b/frontend/src/main/resources/static/6597.42786e918ef43067.js.map similarity index 98% rename from frontend/src/main/resources/static/6597.156fe57317ecd262.js.map rename to frontend/src/main/resources/static/6597.42786e918ef43067.js.map index c2ba642..5a88e32 100644 --- a/frontend/src/main/resources/static/6597.156fe57317ecd262.js.map +++ b/frontend/src/main/resources/static/6597.42786e918ef43067.js.map @@ -1 +1 @@ -{"version":3,"mappings":"sWAIMA,iBACCA,iBACCA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAN4CA,qCAEdA,kDACxBA,6DAPVA,eACEA,4CACAA,iBACEA,uBAQFA,QACFA,4BATkDA,+DAUlDA,eACEA,aAAGA,2CAA+BA,QACpCA,SCNK,IAAMC,EAAb,eAAaA,EAAb,0CAME,0CACEC,gBANFC,cAA8C,GAC9CD,cAAuC,GACvCA,mBAAmB,IAAIE,IAGvBF,EANF,uCAWE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WACPD,EAAKE,2BAfb,kCAoBU,WAAoB,WAC1BL,KAAKM,YAAc,GACfN,KAAKI,UAAUN,eAAiBE,KAAKI,UAAUN,cAAcS,OAAS,IACxEP,KAAKI,UAAUN,cAAcU,QAAQ,YACT,2BAAtBC,EAAaC,MACfP,EAAKG,YAAYK,KAAKF,EAAaG,oBAGvCZ,KAAKa,YAAYC,KAAKd,KAAKM,YAAYC,aA5B7CQ,GAAyDC,kDAA5CpB,8BAAmCqB,sSDT9CtB,uBAaAA,8BAbMA,qCAaAA,2iBCJKC,EAAb,yBCMasB,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCzB,GACtC0B,KACAC,QAISL,EAAb","names":["i0","SubstanceConceptDefinitionComponent","c","relationships","Subject","this","substanceUpdated","subscribe","a","substance","getConceptDefinition","definitions","length","forEach","relationship","type","push","relatedSubstance","countUpdate","emit","s","SubstanceCardBase","selectors","SubstanceConceptDefinitionModule","r","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-concept-definition/substance-concept-definition.component.html","./src/app/core/substance-details/substance-concept-definition/substance-concept-definition.component.ts","./src/app/core/substance-details/substance-concept-definition/substance-concept-definition.module.ts"],"sourcesContent":["\r\n
0\">\r\n This record is a subconcept of\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n This is a non-substance concept\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceRelated, SubstanceRelationship} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-concept-definition',\r\n templateUrl: './substance-concept-definition.component.html',\r\n styleUrls: ['./substance-concept-definition.component.scss']\r\n})\r\nexport class SubstanceConceptDefinitionComponent extends SubstanceCardBase implements OnInit {\r\n relationships: Array = [];\r\n definitions: Array = [];\r\n substanceUpdated = new Subject();\r\n\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n this.getConceptDefinition();\r\n }\r\n });\r\n }\r\n\r\n private getConceptDefinition(): void {\r\n this.definitions = [];\r\n if (this.substance.relationships && this.substance.relationships.length > 0) {\r\n this.substance.relationships.forEach(relationship => {\r\n if (relationship.type === 'SUBSTANCE->SUB_CONCEPT') {\r\n this.definitions.push(relationship.relatedSubstance);\r\n }\r\n });\r\n this.countUpdate.emit(this.definitions.length);\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceConceptDefinitionComponent } from './substance-concept-definition.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceConceptDefinitionComponent),\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceConceptDefinitionComponent]\r\n})\r\nexport class SubstanceConceptDefinitionModule { }\r\n"],"sourceRoot":"webpack:///","file":"6597.156fe57317ecd262.js"} \ No newline at end of file +{"version":3,"mappings":"sWAIMA,iBACCA,iBACCA,eACEA,eACEA,SACFA,QACFA,QACFA,gCAN4CA,qCAEdA,kDACxBA,6DAPVA,eACEA,4CACAA,iBACEA,uBAQFA,QACFA,4BATkDA,+DAUlDA,eACEA,aAAGA,2CAA+BA,QACpCA,SCNK,IAAMC,EAAb,eAAaA,EAAb,0CAME,0CACEC,gBANFC,cAA8C,GAC9CD,cAAuC,GACvCA,mBAAmB,IAAIE,IAGvBF,EANF,uCAWE,WAAQ,WACNG,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WACPD,EAAKE,2BAfb,kCAoBU,WAAoB,WAC1BL,KAAKM,YAAc,GACfN,KAAKI,UAAUN,eAAiBE,KAAKI,UAAUN,cAAcS,OAAS,IACxEP,KAAKI,UAAUN,cAAcU,QAAQ,YACT,2BAAtBC,EAAaC,MACfP,EAAKG,YAAYK,KAAKF,EAAaG,oBAGvCZ,KAAKa,YAAYC,KAAKd,KAAKM,YAAYC,aA5B7CQ,GAAyDC,kDAA5CpB,8BAAmCqB,sSDT9CtB,uBAaAA,8BAbMA,qCAaAA,2iBCJKC,EAAb,yBCMasB,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCzB,GACtC0B,KACAC,QAISL,EAAb","names":["i0","SubstanceConceptDefinitionComponent","c","relationships","Subject","this","substanceUpdated","subscribe","a","substance","getConceptDefinition","definitions","length","forEach","relationship","type","push","relatedSubstance","countUpdate","emit","s","SubstanceCardBase","selectors","SubstanceConceptDefinitionModule","r","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-concept-definition/substance-concept-definition.component.html","./src/app/core/substance-details/substance-concept-definition/substance-concept-definition.component.ts","./src/app/core/substance-details/substance-concept-definition/substance-concept-definition.module.ts"],"sourcesContent":["\r\n
0\">\r\n This record is a subconcept of\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n This is a non-substance concept\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceRelated, SubstanceRelationship} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-concept-definition',\r\n templateUrl: './substance-concept-definition.component.html',\r\n styleUrls: ['./substance-concept-definition.component.scss']\r\n})\r\nexport class SubstanceConceptDefinitionComponent extends SubstanceCardBase implements OnInit {\r\n relationships: Array = [];\r\n definitions: Array = [];\r\n substanceUpdated = new Subject();\r\n\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n this.getConceptDefinition();\r\n }\r\n });\r\n }\r\n\r\n private getConceptDefinition(): void {\r\n this.definitions = [];\r\n if (this.substance.relationships && this.substance.relationships.length > 0) {\r\n this.substance.relationships.forEach(relationship => {\r\n if (relationship.type === 'SUBSTANCE->SUB_CONCEPT') {\r\n this.definitions.push(relationship.relatedSubstance);\r\n }\r\n });\r\n this.countUpdate.emit(this.definitions.length);\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceConceptDefinitionComponent } from './substance-concept-definition.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceConceptDefinitionComponent),\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceConceptDefinitionComponent]\r\n})\r\nexport class SubstanceConceptDefinitionModule { }\r\n"],"sourceRoot":"webpack:///","file":"6597.42786e918ef43067.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6599.e65fdd676f898ed0.js b/frontend/src/main/resources/static/6599.d344ea9e6eae0756.js similarity index 91% rename from frontend/src/main/resources/static/6599.e65fdd676f898ed0.js rename to frontend/src/main/resources/static/6599.d344ea9e6eae0756.js index 63493a4..09e7e60 100644 --- a/frontend/src/main/resources/static/6599.e65fdd676f898ed0.js +++ b/frontend/src/main/resources/static/6599.d344ea9e6eae0756.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6599],{86599:function(b,d,n){n.r(d),n.d(d,{NucleicAcidDetailsFormModule:function(){return U}});var r=n(48047),p=n(78069),m=n(36362),f=n(64061),g=n(44770),A=n(43365),v=n(90587),C=n(91434),y=n(7168),h=n(96769),T=n(3311),N=n(24582),O=n(7318),x=n(79550),S=(n(27299),n(18291)),Z=n(33567),M=n(40104),e=n(76442),F=n(16667),D=n(15992),P=n(14900);function E(c,u){if(1&c){var o=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"app-cv-input",3),e.NdJ("valueChange",function(t){return e.CHM(o),e.oxw().update("nucleicAcidType",t)}),e.qZA(),e.TgZ(3,"div",4),e.TgZ(4,"app-tag-selector",5),e.NdJ("tagsUpdate",function(t){return e.CHM(o),e.oxw().updateSubtype(t)}),e.qZA(),e.qZA(),e.TgZ(5,"div",6),e.TgZ(6,"app-cv-input",7),e.NdJ("valueChange",function(t){return e.CHM(o),e.oxw().update("sequenceOrigin",t)}),e.qZA(),e.qZA(),e.TgZ(7,"app-cv-input",8),e.NdJ("valueChange",function(t){return e.CHM(o),e.oxw().update("sequenceType",t)}),e.qZA(),e.qZA(),e.TgZ(8,"div",2),e._UZ(9,"app-audit-info",9),e.qZA(),e.qZA()}if(2&c){var l=e.oxw();e.xp6(2),e.Q6J("model",l.nucleicAcid.nucleicAcidType),e.xp6(2),e.Q6J("tags",l.nucleicAcid.nucleicAcidSubType),e.xp6(2),e.Q6J("model",l.nucleicAcid.sequenceOrigin),e.xp6(1),e.Q6J("model",l.nucleicAcid.sequenceType),e.xp6(2),e.Q6J("source",l.nucleicAcid)}}var I=function(){var c=function(u){(0,N.Z)(l,u);var o=(0,O.Z)(l);function l(a,t,i){var s;return(0,p.Z)(this,l),(s=o.call(this,t)).substanceFormService=a,s.gaService=t,s.cvService=i,s.subscriptions=[],s.dropdownSettings={},s.analyticsEventCategory="substance form Nucleic Acid Details",s}return(0,r.Z)(l,[{key:"ngOnInit",value:function(){var t=this;this.menuLabelUpdate.emit("Nucleic Acid Classification");var i=this.substanceFormService.substanceNucleicAcid.subscribe(function(s){t.nucleicAcid=s});this.subscriptions.push(i),this.dropdownSettings={singleSelection:!1,idField:"value",textField:"display",selectAllText:"Select All",unSelectAllText:"UnSelect All",itemsShowLimit:3,allowSearchFilter:!0}}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"updateAccess",value:function(t){this.nucleicAcid.access=t}},{key:"update",value:function(t,i){"nucleicAcidType"===t?this.nucleicAcid.nucleicAcidType=i:"sequenceOrigin"===t?this.nucleicAcid.sequenceOrigin=i:"sequenceType"===t&&(this.nucleicAcid.sequenceType=i)}},{key:"updateSubtype",value:function(t){this.nucleicAcid.nucleicAcidSubType=t}}]),l}(x.u);return c.\u0275fac=function(o){return new(o||c)(e.Y36(Z.B),e.Y36(M.$),e.Y36(S.I))},c.\u0275cmp=e.Xpm({type:c,selectors:[["app-nucleic-acid-details-form"]],features:[e.qOj],decls:1,vars:1,consts:[["class","na-form-container",4,"ngIf"],[1,"na-form-container"],[1,"form-row"],["domain","NUCLEIC_ACID_TYPE","title","Nucleic Acid Type",1,"type",3,"model","valueChange"],[1,"mat-form-field-flex","subtype"],["placeholder","Nucleic Acid SubType","cvDomain","NUCLEIC_ACID_SUBTYPE",1,"tags",3,"tags","tagsUpdate"],[1,"location-container","origin"],["domain","SEQUENCE_ORIGIN","title","Sequence Origin",3,"model","valueChange"],["domain","SEQUENCE_TYPE","title","Sequence Type",1,"seqtype",3,"model","valueChange"],[3,"source"]],template:function(o,l){1&o&&e.YNc(0,E,10,5,"div",0),2&o&&e.Q6J("ngIf",l.nucleicAcid)},directives:[m.O5,F.S,D.C,P.n],styles:[".subtype[_ngcontent-%COMP%]{width:33%}.tags[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .subtype[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .origin[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .sequence[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .seqtype[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:10px}"]}),c}(),U=function(){var c=(0,r.Z)(function u(){(0,p.Z)(this,u)});return c.\u0275fac=function(o){return new(o||c)},c.\u0275mod=e.oAB({type:c}),c.\u0275inj=e.cJS({imports:[[m.ez,f.o.forChild(I),g.lN,A.c,v.UX,v.u5,C.LD,y.O,h.O,T.ZQ]]}),c}()}}]); -//# sourceMappingURL=6599.e65fdd676f898ed0.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6599],{86599:function(b,d,n){n.r(d),n.d(d,{NucleicAcidDetailsFormModule:function(){return U}});var r=n(1884),p=n(39117),m=n(36362),f=n(64061),g=n(44770),A=n(43365),v=n(90587),C=n(91434),y=n(7168),h=n(96769),T=n(3311),N=n(46751),O=n(56101),x=n(79550),S=(n(27299),n(18291)),Z=n(33567),M=n(40104),e=n(86613),F=n(16667),D=n(15992),P=n(14900);function E(c,u){if(1&c){var o=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"div",2),e.TgZ(2,"app-cv-input",3),e.NdJ("valueChange",function(t){return e.CHM(o),e.oxw().update("nucleicAcidType",t)}),e.qZA(),e.TgZ(3,"div",4),e.TgZ(4,"app-tag-selector",5),e.NdJ("tagsUpdate",function(t){return e.CHM(o),e.oxw().updateSubtype(t)}),e.qZA(),e.qZA(),e.TgZ(5,"div",6),e.TgZ(6,"app-cv-input",7),e.NdJ("valueChange",function(t){return e.CHM(o),e.oxw().update("sequenceOrigin",t)}),e.qZA(),e.qZA(),e.TgZ(7,"app-cv-input",8),e.NdJ("valueChange",function(t){return e.CHM(o),e.oxw().update("sequenceType",t)}),e.qZA(),e.qZA(),e.TgZ(8,"div",2),e._UZ(9,"app-audit-info",9),e.qZA(),e.qZA()}if(2&c){var l=e.oxw();e.xp6(2),e.Q6J("model",l.nucleicAcid.nucleicAcidType),e.xp6(2),e.Q6J("tags",l.nucleicAcid.nucleicAcidSubType),e.xp6(2),e.Q6J("model",l.nucleicAcid.sequenceOrigin),e.xp6(1),e.Q6J("model",l.nucleicAcid.sequenceType),e.xp6(2),e.Q6J("source",l.nucleicAcid)}}var I=function(){var c=function(u){(0,N.Z)(l,u);var o=(0,O.Z)(l);function l(a,t,i){var s;return(0,p.Z)(this,l),(s=o.call(this,t)).substanceFormService=a,s.gaService=t,s.cvService=i,s.subscriptions=[],s.dropdownSettings={},s.analyticsEventCategory="substance form Nucleic Acid Details",s}return(0,r.Z)(l,[{key:"ngOnInit",value:function(){var t=this;this.menuLabelUpdate.emit("Nucleic Acid Classification");var i=this.substanceFormService.substanceNucleicAcid.subscribe(function(s){t.nucleicAcid=s});this.subscriptions.push(i),this.dropdownSettings={singleSelection:!1,idField:"value",textField:"display",selectAllText:"Select All",unSelectAllText:"UnSelect All",itemsShowLimit:3,allowSearchFilter:!0}}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"updateAccess",value:function(t){this.nucleicAcid.access=t}},{key:"update",value:function(t,i){"nucleicAcidType"===t?this.nucleicAcid.nucleicAcidType=i:"sequenceOrigin"===t?this.nucleicAcid.sequenceOrigin=i:"sequenceType"===t&&(this.nucleicAcid.sequenceType=i)}},{key:"updateSubtype",value:function(t){this.nucleicAcid.nucleicAcidSubType=t}}]),l}(x.u);return c.\u0275fac=function(o){return new(o||c)(e.Y36(Z.B),e.Y36(M.$),e.Y36(S.I))},c.\u0275cmp=e.Xpm({type:c,selectors:[["app-nucleic-acid-details-form"]],features:[e.qOj],decls:1,vars:1,consts:[["class","na-form-container",4,"ngIf"],[1,"na-form-container"],[1,"form-row"],["domain","NUCLEIC_ACID_TYPE","title","Nucleic Acid Type",1,"type",3,"model","valueChange"],[1,"mat-form-field-flex","subtype"],["placeholder","Nucleic Acid SubType","cvDomain","NUCLEIC_ACID_SUBTYPE",1,"tags",3,"tags","tagsUpdate"],[1,"location-container","origin"],["domain","SEQUENCE_ORIGIN","title","Sequence Origin",3,"model","valueChange"],["domain","SEQUENCE_TYPE","title","Sequence Type",1,"seqtype",3,"model","valueChange"],[3,"source"]],template:function(o,l){1&o&&e.YNc(0,E,10,5,"div",0),2&o&&e.Q6J("ngIf",l.nucleicAcid)},directives:[m.O5,F.S,D.C,P.n],styles:[".subtype[_ngcontent-%COMP%]{width:33%}.tags[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .subtype[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .origin[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .sequence[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .seqtype[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:10px}"]}),c}(),U=function(){var c=(0,r.Z)(function u(){(0,p.Z)(this,u)});return c.\u0275fac=function(o){return new(o||c)},c.\u0275mod=e.oAB({type:c}),c.\u0275inj=e.cJS({imports:[[m.ez,f.o.forChild(I),g.lN,A.c,v.UX,v.u5,C.LD,y.O,h.O,T.ZQ]]}),c}()}}]); +//# sourceMappingURL=6599.d344ea9e6eae0756.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6599.e65fdd676f898ed0.js.map b/frontend/src/main/resources/static/6599.d344ea9e6eae0756.js.map similarity index 99% rename from frontend/src/main/resources/static/6599.e65fdd676f898ed0.js.map rename to frontend/src/main/resources/static/6599.d344ea9e6eae0756.js.map index a430eb6..55eaee3 100644 --- a/frontend/src/main/resources/static/6599.e65fdd676f898ed0.js.map +++ b/frontend/src/main/resources/static/6599.d344ea9e6eae0756.js.map @@ -1 +1 @@ -{"version":3,"mappings":"4cAAAA,iBACEA,iBACEA,0BAAsFA,wDAAiBC,OAAO,kBAAiBC,KAAgDF,QAC/KA,iBACEA,8BAAoEA,uDAAcG,mBAChCH,QACpDA,QACAA,iBACEA,0BAAmEA,wDAAiBI,OAAO,iBAAgBF,KAAiDF,QAC9JA,QACAA,0BAAsHA,wDAAeK,OAAO,eAAcH,KAAUF,QAGtKA,QACAA,iBACEA,4BACFA,QACFA,8BAf6IA,sDAE9BA,wDAIYA,qDAEtCA,mDAKjEA,wCCAb,IAAMM,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,cAAMF,IAJED,uBACDG,cACAA,cALHA,gBAAqC,GAC3CA,mBAAsC,GAOpCA,EAAKC,uBAAyB,sCAHeD,EARjD,uCAcE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,+BAC1B,IAAMC,EAA0BH,KAAKL,qBAAqBS,qBAAqBC,UAAU,YACvFC,EAAKC,YAAcA,IAErBP,KAAKQ,cAAcC,KAAKN,GACxBH,KAAKU,iBAAmB,CAAEC,iBAAiB,EAAOC,QAAS,QAASC,UAAW,UAAWC,cAAe,aACvGC,gBAAiB,eAAgBC,eAAgB,EAAGC,mBAAmB,KArB7E,6BAwBE,cAxBF,yBA2BE,WACEjB,KAAKQ,cAAcU,QAAQ,YACzBC,EAAaC,kBA7BnB,0BAiCE,SAAaC,GACXrB,KAAKO,YAAYc,OAASA,IAlC9B,oBAqCE,SAAQC,EAAeC,GACP,oBAAVD,EACFtB,KAAKO,YAAYiB,gBAAkBD,EAChB,mBAAdjB,EACLN,KAAKO,YAAYkB,eAAiBF,EACf,iBAAVD,IACTtB,KAAKO,YAAYmB,aAAeH,KA3CtC,2BA+CE,SAAcI,GACV3B,KAAKO,YAAYqB,mBAAqBD,MAhD5CE,GAAqDC,kDAAxCpC,GAA+BN,2DAA/BM,EAA+BqC,8nBDf5C3C,6BAAgCA,ivBCenBM,EAAb,GCeasC,EAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsCzC,GACtC0C,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,SAMSX,EAAb","names":["i0","ctx_r1","$event","ctx_r3","ctx_r4","ctx_r5","NucleicAcidDetailsFormComponent","substanceFormService","gaService","cvService","s","analyticsEventCategory","this","menuLabelUpdate","emit","nucleicAcidSubscription","substanceNucleicAcid","subscribe","t","nucleicAcid","subscriptions","push","dropdownSettings","singleSelection","idField","textField","selectAllText","unSelectAllText","itemsShowLimit","allowSearchFilter","forEach","subscription","unsubscribe","access","field","event","nucleicAcidType","sequenceOrigin","sequenceType","tags","nucleicAcidSubType","l","SubstanceCardBaseFilteredList","selectors","NucleicAcidDetailsFormModule","r","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule"],"sources":["./src/app/core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.component.html","./src/app/core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.component.ts","./src/app/core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.module.ts"],"sourcesContent":["
\n
\n \n
\n \n
\n
\n \n
\n \n \n
\n
\n \n
\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {NucleicAcid, Protein} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {IDropdownSettings} from 'ng-multiselect-dropdown';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-nucleic-acid-details-form',\n templateUrl: './nucleic-acid-details-form.component.html',\n styleUrls: ['./nucleic-acid-details-form.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class NucleicAcidDetailsFormComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit, OnDestroy {\n\n nucleicAcid: NucleicAcid;\nprivate subscriptions: Array = [];\n dropdownSettings: IDropdownSettings = {};\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n) {\n super(gaService);\n this.analyticsEventCategory = 'substance form Nucleic Acid Details';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Nucleic Acid Classification');\n const nucleicAcidSubscription = this.substanceFormService.substanceNucleicAcid.subscribe(nucleicAcid => {\n this.nucleicAcid = nucleicAcid;\n });\n this.subscriptions.push(nucleicAcidSubscription);\n this.dropdownSettings = { singleSelection: false, idField: 'value', textField: 'display', selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All', itemsShowLimit: 3, allowSearchFilter: true};\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.nucleicAcid.access = access;\n }\n\n update( field: string, event: any): void {\n if (field === 'nucleicAcidType') {\n this.nucleicAcid.nucleicAcidType = event;\n } else if (field === 'sequenceOrigin') {\n this.nucleicAcid.sequenceOrigin = event;\n } else if (field === 'sequenceType') {\n this.nucleicAcid.sequenceType = event;\n }\n }\n\n updateSubtype(tags: Array) {\n this.nucleicAcid.nucleicAcidSubType = tags;\n }\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\n// eslint-disable-next-line max-len\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {NucleicAcidDetailsFormComponent} from '@gsrs-core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(NucleicAcidDetailsFormComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule\n ],\n declarations: [\n NucleicAcidDetailsFormComponent\n ]\n})\nexport class NucleicAcidDetailsFormModule { }\n"],"sourceRoot":"webpack:///","file":"6599.e65fdd676f898ed0.js"} \ No newline at end of file +{"version":3,"mappings":"4cAAAA,iBACEA,iBACEA,0BAAsFA,wDAAiBC,OAAO,kBAAiBC,KAAgDF,QAC/KA,iBACEA,8BAAoEA,uDAAcG,mBAChCH,QACpDA,QACAA,iBACEA,0BAAmEA,wDAAiBI,OAAO,iBAAgBF,KAAiDF,QAC9JA,QACAA,0BAAsHA,wDAAeK,OAAO,eAAcH,KAAUF,QAGtKA,QACAA,iBACEA,4BACFA,QACFA,8BAf6IA,sDAE9BA,wDAIYA,qDAEtCA,mDAKjEA,wCCAb,IAAMM,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,cAAMF,IAJED,uBACDG,cACAA,cALHA,gBAAqC,GAC3CA,mBAAsC,GAOpCA,EAAKC,uBAAyB,sCAHeD,EARjD,uCAcE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,+BAC1B,IAAMC,EAA0BH,KAAKL,qBAAqBS,qBAAqBC,UAAU,YACvFC,EAAKC,YAAcA,IAErBP,KAAKQ,cAAcC,KAAKN,GACxBH,KAAKU,iBAAmB,CAAEC,iBAAiB,EAAOC,QAAS,QAASC,UAAW,UAAWC,cAAe,aACvGC,gBAAiB,eAAgBC,eAAgB,EAAGC,mBAAmB,KArB7E,6BAwBE,cAxBF,yBA2BE,WACEjB,KAAKQ,cAAcU,QAAQ,YACzBC,EAAaC,kBA7BnB,0BAiCE,SAAaC,GACXrB,KAAKO,YAAYc,OAASA,IAlC9B,oBAqCE,SAAQC,EAAeC,GACP,oBAAVD,EACFtB,KAAKO,YAAYiB,gBAAkBD,EAChB,mBAAdjB,EACLN,KAAKO,YAAYkB,eAAiBF,EACf,iBAAVD,IACTtB,KAAKO,YAAYmB,aAAeH,KA3CtC,2BA+CE,SAAcI,GACV3B,KAAKO,YAAYqB,mBAAqBD,MAhD5CE,GAAqDC,kDAAxCpC,GAA+BN,2DAA/BM,EAA+BqC,8nBDf5C3C,6BAAgCA,ivBCenBM,EAAb,GCeasC,EAAb,eAAaA,KAAbC,iFAAaD,4DAhBF,CACPE,KACAC,aAAsCzC,GACtC0C,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,IACAC,SAMSX,EAAb","names":["i0","ctx_r1","$event","ctx_r3","ctx_r4","ctx_r5","NucleicAcidDetailsFormComponent","substanceFormService","gaService","cvService","s","analyticsEventCategory","this","menuLabelUpdate","emit","nucleicAcidSubscription","substanceNucleicAcid","subscribe","t","nucleicAcid","subscriptions","push","dropdownSettings","singleSelection","idField","textField","selectAllText","unSelectAllText","itemsShowLimit","allowSearchFilter","forEach","subscription","unsubscribe","access","field","event","nucleicAcidType","sequenceOrigin","sequenceType","tags","nucleicAcidSubType","l","SubstanceCardBaseFilteredList","selectors","NucleicAcidDetailsFormModule","r","CommonModule","DynamicComponentLoaderModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","NgMultiSelectDropDownModule"],"sources":["./src/app/core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.component.html","./src/app/core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.component.ts","./src/app/core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.module.ts"],"sourcesContent":["
\n
\n \n
\n \n
\n
\n \n
\n \n \n
\n
\n \n
\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {NucleicAcid, Protein} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {IDropdownSettings} from 'ng-multiselect-dropdown';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-nucleic-acid-details-form',\n templateUrl: './nucleic-acid-details-form.component.html',\n styleUrls: ['./nucleic-acid-details-form.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class NucleicAcidDetailsFormComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit, OnDestroy {\n\n nucleicAcid: NucleicAcid;\nprivate subscriptions: Array = [];\n dropdownSettings: IDropdownSettings = {};\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n) {\n super(gaService);\n this.analyticsEventCategory = 'substance form Nucleic Acid Details';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Nucleic Acid Classification');\n const nucleicAcidSubscription = this.substanceFormService.substanceNucleicAcid.subscribe(nucleicAcid => {\n this.nucleicAcid = nucleicAcid;\n });\n this.subscriptions.push(nucleicAcidSubscription);\n this.dropdownSettings = { singleSelection: false, idField: 'value', textField: 'display', selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All', itemsShowLimit: 3, allowSearchFilter: true};\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.nucleicAcid.access = access;\n }\n\n update( field: string, event: any): void {\n if (field === 'nucleicAcidType') {\n this.nucleicAcid.nucleicAcidType = event;\n } else if (field === 'sequenceOrigin') {\n this.nucleicAcid.sequenceOrigin = event;\n } else if (field === 'sequenceType') {\n this.nucleicAcid.sequenceType = event;\n }\n }\n\n updateSubtype(tags: Array) {\n this.nucleicAcid.nucleicAcidSubType = tags;\n }\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\n// eslint-disable-next-line max-len\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown';\nimport {NucleicAcidDetailsFormComponent} from '@gsrs-core/substance-form/nucleic-acid-details-form/nucleic-acid-details-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(NucleicAcidDetailsFormComponent),\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n NgMultiSelectDropDownModule\n ],\n declarations: [\n NucleicAcidDetailsFormComponent\n ]\n})\nexport class NucleicAcidDetailsFormModule { }\n"],"sourceRoot":"webpack:///","file":"6599.d344ea9e6eae0756.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6607.511ae07d117b3070.js b/frontend/src/main/resources/static/6607.facc1d7856468f44.js similarity index 93% rename from frontend/src/main/resources/static/6607.511ae07d117b3070.js rename to frontend/src/main/resources/static/6607.facc1d7856468f44.js index 1de5ecb..6722655 100644 --- a/frontend/src/main/resources/static/6607.511ae07d117b3070.js +++ b/frontend/src/main/resources/static/6607.facc1d7856468f44.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6607],{76607:function(I,d,u){u.r(d),u.d(d,{SubstanceAuditInfoModule:function(){return T}});var s=u(48047),c=u(78069),a=u(36362),v=u(24582),Z=u(7318),f=u(2756),n=u(76442);function p(t,i){if(1&t&&(n.TgZ(0,"div",1),n.TgZ(1,"div",2),n._uU(2,"Approved"),n.qZA(),n.TgZ(3,"div",3),n._uU(4),n.ALo(5,"date"),n.qZA(),n.qZA()),2&t){var e=n.oxw(2);n.xp6(4),n.Oqu(n.xi3(5,1,e.substance.approved,"short"))}}function A(t,i){if(1&t&&(n.TgZ(0,"div",1),n.TgZ(1,"div",2),n._uU(2,"Approved By"),n.qZA(),n.TgZ(3,"div",3),n._uU(4),n.qZA(),n.qZA()),2&t){var e=n.oxw(2);n.xp6(4),n.Oqu(e.substance.approvedBy)}}function g(t,i){if(1&t&&(n.TgZ(0,"div",1),n.TgZ(1,"div",2),n._uU(2,"Version Comments"),n.qZA(),n.TgZ(3,"div",3),n._uU(4),n.qZA(),n.qZA()),2&t){var e=n.oxw(2);n.xp6(4),n.Oqu(e.substance.changeReason)}}function l(t,i){if(1&t&&(n.TgZ(0,"div"),n.TgZ(1,"div",1),n.TgZ(2,"div",2),n._uU(3,"Created"),n.qZA(),n.TgZ(4,"div",3),n._uU(5),n.ALo(6,"date"),n.qZA(),n.qZA(),n.TgZ(7,"div",1),n.TgZ(8,"div",2),n._uU(9,"Created By"),n.qZA(),n.TgZ(10,"div",3),n._uU(11),n.qZA(),n.qZA(),n.TgZ(12,"div",1),n.TgZ(13,"div",2),n._uU(14,"Last Edited"),n.qZA(),n.TgZ(15,"div",3),n._uU(16),n.ALo(17,"date"),n.qZA(),n.qZA(),n.TgZ(18,"div",1),n.TgZ(19,"div",2),n._uU(20,"Last Edited By"),n.qZA(),n.TgZ(21,"div",3),n._uU(22),n.qZA(),n.qZA(),n.YNc(23,p,6,4,"div",4),n.YNc(24,A,5,1,"div",4),n.YNc(25,g,5,1,"div",4),n.qZA()),2&t){var e=n.oxw();n.xp6(5),n.Oqu(n.xi3(6,7,e.substance.created,"short")),n.xp6(6),n.Oqu(e.substance.createdBy),n.xp6(5),n.Oqu(n.xi3(17,10,e.substance.lastEdited,"short")),n.xp6(6),n.Oqu(e.substance.lastEditedBy),n.xp6(1),n.Q6J("ngIf",e.substance.approved),n.xp6(1),n.Q6J("ngIf",e.substance.approved),n.xp6(1),n.Q6J("ngIf",e.substance.changeReason)}}var r=function(){var t=function(i){(0,v.Z)(o,i);var e=(0,Z.Z)(o);function o(){return(0,c.Z)(this,o),e.call(this)}return(0,s.Z)(o,[{key:"ngOnInit",value:function(){}}]),o}(f.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-audit-info"]],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],["class","name-value",4,"ngIf"]],template:function(e,o){1&e&&n.YNc(0,l,26,13,"div",0),2&e&&n.Q6J("ngIf",o.substance)},directives:[a.O5],pipes:[a.uU],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),t}(),m=u(64061),T=function(){var t=(0,s.Z)(function i(){(0,c.Z)(this,i)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[a.ez,m.o.forChild(r)]]}),t}()}}]); -//# sourceMappingURL=6607.511ae07d117b3070.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6607],{76607:function(I,d,u){u.r(d),u.d(d,{SubstanceAuditInfoModule:function(){return T}});var s=u(1884),c=u(39117),a=u(36362),v=u(46751),Z=u(56101),f=u(2756),n=u(86613);function p(t,i){if(1&t&&(n.TgZ(0,"div",1),n.TgZ(1,"div",2),n._uU(2,"Approved"),n.qZA(),n.TgZ(3,"div",3),n._uU(4),n.ALo(5,"date"),n.qZA(),n.qZA()),2&t){var e=n.oxw(2);n.xp6(4),n.Oqu(n.xi3(5,1,e.substance.approved,"short"))}}function A(t,i){if(1&t&&(n.TgZ(0,"div",1),n.TgZ(1,"div",2),n._uU(2,"Approved By"),n.qZA(),n.TgZ(3,"div",3),n._uU(4),n.qZA(),n.qZA()),2&t){var e=n.oxw(2);n.xp6(4),n.Oqu(e.substance.approvedBy)}}function g(t,i){if(1&t&&(n.TgZ(0,"div",1),n.TgZ(1,"div",2),n._uU(2,"Version Comments"),n.qZA(),n.TgZ(3,"div",3),n._uU(4),n.qZA(),n.qZA()),2&t){var e=n.oxw(2);n.xp6(4),n.Oqu(e.substance.changeReason)}}function l(t,i){if(1&t&&(n.TgZ(0,"div"),n.TgZ(1,"div",1),n.TgZ(2,"div",2),n._uU(3,"Created"),n.qZA(),n.TgZ(4,"div",3),n._uU(5),n.ALo(6,"date"),n.qZA(),n.qZA(),n.TgZ(7,"div",1),n.TgZ(8,"div",2),n._uU(9,"Created By"),n.qZA(),n.TgZ(10,"div",3),n._uU(11),n.qZA(),n.qZA(),n.TgZ(12,"div",1),n.TgZ(13,"div",2),n._uU(14,"Last Edited"),n.qZA(),n.TgZ(15,"div",3),n._uU(16),n.ALo(17,"date"),n.qZA(),n.qZA(),n.TgZ(18,"div",1),n.TgZ(19,"div",2),n._uU(20,"Last Edited By"),n.qZA(),n.TgZ(21,"div",3),n._uU(22),n.qZA(),n.qZA(),n.YNc(23,p,6,4,"div",4),n.YNc(24,A,5,1,"div",4),n.YNc(25,g,5,1,"div",4),n.qZA()),2&t){var e=n.oxw();n.xp6(5),n.Oqu(n.xi3(6,7,e.substance.created,"short")),n.xp6(6),n.Oqu(e.substance.createdBy),n.xp6(5),n.Oqu(n.xi3(17,10,e.substance.lastEdited,"short")),n.xp6(6),n.Oqu(e.substance.lastEditedBy),n.xp6(1),n.Q6J("ngIf",e.substance.approved),n.xp6(1),n.Q6J("ngIf",e.substance.approved),n.xp6(1),n.Q6J("ngIf",e.substance.changeReason)}}var r=function(){var t=function(i){(0,v.Z)(o,i);var e=(0,Z.Z)(o);function o(){return(0,c.Z)(this,o),e.call(this)}return(0,s.Z)(o,[{key:"ngOnInit",value:function(){}}]),o}(f.B);return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-audit-info"]],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],["class","name-value",4,"ngIf"]],template:function(e,o){1&e&&n.YNc(0,l,26,13,"div",0),2&e&&n.Q6J("ngIf",o.substance)},directives:[a.O5],pipes:[a.uU],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),t}(),m=u(64061),T=function(){var t=(0,s.Z)(function i(){(0,c.Z)(this,i)});return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[a.ez,m.o.forChild(r)]]}),t}()}}]); +//# sourceMappingURL=6607.facc1d7856468f44.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6607.511ae07d117b3070.js.map b/frontend/src/main/resources/static/6607.facc1d7856468f44.js.map similarity index 99% rename from frontend/src/main/resources/static/6607.511ae07d117b3070.js.map rename to frontend/src/main/resources/static/6607.facc1d7856468f44.js.map index 1285651..01445b4 100644 --- a/frontend/src/main/resources/static/6607.511ae07d117b3070.js.map +++ b/frontend/src/main/resources/static/6607.facc1d7856468f44.js.map @@ -1 +1 @@ -{"version":3,"mappings":"uRAkBEA,iBACEA,iBAAkBA,oBAAQA,QAC1BA,iBAAmBA,yBAAsCA,QAC3DA,6BADqBA,kFAErBA,iBACEA,iBAAkBA,uBAAWA,QAC7BA,iBAAmBA,SAAwBA,QAC7CA,6BADqBA,iEAErBA,iBACEA,iBAAkBA,4BAAgBA,QAClCA,iBAAmBA,SAA0BA,QAC/CA,6BADqBA,mEA5BvBA,eACEA,iBACEA,iBAAkBA,mBAAOA,QACzBA,iBAAmBA,yBAAsCA,QAC3DA,QACAA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,kBAAmBA,UAAuBA,QAC5CA,QACAA,kBACEA,kBAAkBA,wBAAWA,QAC7BA,kBAAmBA,2BAAyCA,QAC9DA,QACAA,kBACEA,kBAAkBA,2BAAcA,QAChCA,kBAAmBA,UAA0BA,QAC/CA,QAEAA,wBAIAA,wBAIAA,wBAIFA,4BA3BuBA,uDAIAA,sCAIAA,4DAIAA,yCAGIA,4CAIAA,4CAIAA,iDClBpB,IAAMC,EAAb,eAAaA,EAAb,0CAEE,gDAFF,uCAME,gBANFC,GAAiDC,kDAApCF,8BAA2BG,iMDRxCJ,8BAAMA,iHCQOC,EAAb,cCIaI,EAAb,eAAaA,KAAbC,iFAAaD,4DANF,CACPE,KACAC,aAAsCP,OAI7BI,EAAb","names":["i0","SubstanceAuditInfoComponent","o","SubstanceCardBase","selectors","SubstanceAuditInfoModule","s","CommonModule","DynamicComponentLoaderModule"],"sources":["./src/app/core/substance-details/substance-audit-info/substance-audit-info.component.html","./src/app/core/substance-details/substance-audit-info/substance-audit-info.component.ts","./src/app/core/substance-details/substance-audit-info/substance-audit-info.module.ts"],"sourcesContent":["
\r\n
\r\n
Created
\r\n
{{substance.created | date : 'short'}}
\r\n
\r\n
\r\n
Created By
\r\n
{{substance.createdBy}}
\r\n
\r\n
\r\n
Last Edited
\r\n
{{substance.lastEdited | date : 'short'}}
\r\n
\r\n
\r\n
Last Edited By
\r\n
{{substance.lastEditedBy}}
\r\n
\r\n\r\n
\r\n
Approved
\r\n
{{substance.approved| date : 'short'}}
\r\n
\r\n
\r\n
Approved By
\r\n
{{substance.approvedBy}}
\r\n
\r\n
\r\n
Version Comments
\r\n
{{substance.changeReason}}
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\n\r\n@Component({\r\n selector: 'app-substance-audit-info',\r\n templateUrl: './substance-audit-info.component.html',\r\n styleUrls: ['./substance-audit-info.component.scss']\r\n})\r\nexport class SubstanceAuditInfoComponent extends SubstanceCardBase implements OnInit {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceAuditInfoComponent } from './substance-audit-info.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceAuditInfoComponent)\r\n ],\r\n declarations: [SubstanceAuditInfoComponent]\r\n})\r\nexport class SubstanceAuditInfoModule { }\r\n"],"sourceRoot":"webpack:///","file":"6607.511ae07d117b3070.js"} \ No newline at end of file +{"version":3,"mappings":"uRAkBEA,iBACEA,iBAAkBA,oBAAQA,QAC1BA,iBAAmBA,yBAAsCA,QAC3DA,6BADqBA,kFAErBA,iBACEA,iBAAkBA,uBAAWA,QAC7BA,iBAAmBA,SAAwBA,QAC7CA,6BADqBA,iEAErBA,iBACEA,iBAAkBA,4BAAgBA,QAClCA,iBAAmBA,SAA0BA,QAC/CA,6BADqBA,mEA5BvBA,eACEA,iBACEA,iBAAkBA,mBAAOA,QACzBA,iBAAmBA,yBAAsCA,QAC3DA,QACAA,iBACEA,iBAAkBA,sBAAUA,QAC5BA,kBAAmBA,UAAuBA,QAC5CA,QACAA,kBACEA,kBAAkBA,wBAAWA,QAC7BA,kBAAmBA,2BAAyCA,QAC9DA,QACAA,kBACEA,kBAAkBA,2BAAcA,QAChCA,kBAAmBA,UAA0BA,QAC/CA,QAEAA,wBAIAA,wBAIAA,wBAIFA,4BA3BuBA,uDAIAA,sCAIAA,4DAIAA,yCAGIA,4CAIAA,4CAIAA,iDClBpB,IAAMC,EAAb,eAAaA,EAAb,0CAEE,gDAFF,uCAME,gBANFC,GAAiDC,kDAApCF,8BAA2BG,iMDRxCJ,8BAAMA,iHCQOC,EAAb,cCIaI,EAAb,eAAaA,KAAbC,iFAAaD,4DANF,CACPE,KACAC,aAAsCP,OAI7BI,EAAb","names":["i0","SubstanceAuditInfoComponent","o","SubstanceCardBase","selectors","SubstanceAuditInfoModule","s","CommonModule","DynamicComponentLoaderModule"],"sources":["./src/app/core/substance-details/substance-audit-info/substance-audit-info.component.html","./src/app/core/substance-details/substance-audit-info/substance-audit-info.component.ts","./src/app/core/substance-details/substance-audit-info/substance-audit-info.module.ts"],"sourcesContent":["
\r\n
\r\n
Created
\r\n
{{substance.created | date : 'short'}}
\r\n
\r\n
\r\n
Created By
\r\n
{{substance.createdBy}}
\r\n
\r\n
\r\n
Last Edited
\r\n
{{substance.lastEdited | date : 'short'}}
\r\n
\r\n
\r\n
Last Edited By
\r\n
{{substance.lastEditedBy}}
\r\n
\r\n\r\n
\r\n
Approved
\r\n
{{substance.approved| date : 'short'}}
\r\n
\r\n
\r\n
Approved By
\r\n
{{substance.approvedBy}}
\r\n
\r\n
\r\n
Version Comments
\r\n
{{substance.changeReason}}
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\n\r\n@Component({\r\n selector: 'app-substance-audit-info',\r\n templateUrl: './substance-audit-info.component.html',\r\n styleUrls: ['./substance-audit-info.component.scss']\r\n})\r\nexport class SubstanceAuditInfoComponent extends SubstanceCardBase implements OnInit {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceAuditInfoComponent } from './substance-audit-info.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceAuditInfoComponent)\r\n ],\r\n declarations: [SubstanceAuditInfoComponent]\r\n})\r\nexport class SubstanceAuditInfoModule { }\r\n"],"sourceRoot":"webpack:///","file":"6607.facc1d7856468f44.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6620.2368041933af908e.js b/frontend/src/main/resources/static/6620.2368041933af908e.js new file mode 100644 index 0000000..48274af --- /dev/null +++ b/frontend/src/main/resources/static/6620.2368041933af908e.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6620],{46620:function(G,f,t){t.r(f),t.d(f,{SsgParentSubstanceFormModule:function(){return O}});var d=t(1884),m=t(39117),b=t(36362),S=t(98002),p=t(46751),g=t(56101),v=t(40104),h=(t(27299),t(33567)),C=t(18291),y=t(92507),x=t(79223),s=t(86613),F=t(24459),P=function(){var n=function(o){(0,p.Z)(i,o);var c=(0,g.Z)(i);function i(r,e,u,l){var a;return(0,m.Z)(this,i),(a=c.call(this)).gaService=r,a.substanceFormService=e,a.cvService=u,a.configService=l,a.subscriptions=[],a.analyticsEventCategory="substance form ssg 3 and 4 parent substance",a}return(0,d.Z)(i,[{key:"ngOnInit",value:function(){var e=this;this.configSsg4Form=this.configService.configData&&this.configService.configData.ssg4Form||null;var u="Search or Register a New Substance";this.configSsg4Form&&(u=this.configSsg4Form.titles.parentSubstance||null),this.menuLabelUpdate.emit(u);var l=this.substanceFormService.substance.subscribe(function(a){e.substance=a,e.substanceClass=a.substanceClass,e.substanceClass&&"specifiedSubstanceG4m"===e.substanceClass&&e.substance.specifiedSubstanceG4m.parentSubstance&&e.substance.specifiedSubstanceG4m.parentSubstance.refuuid&&(e.relatedSubstanceUuid=e.substance.specifiedSubstanceG4m.parentSubstance.refuuid),e.substanceFormService.resetState()});this.subscriptions.push(l)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"relatedSubstanceUpdated",value:function(e){null!==e?this.substanceClass&&"specifiedSubstanceG4m"===this.substanceClass&&(this.substance.specifiedSubstanceG4m.parentSubstance={refPname:e._name,name:e._name,refuuid:e.uuid,substanceClass:"reference",approvalID:e.approvalID}):this.substanceClass&&"specifiedSubstanceG4m"===this.substanceClass&&(this.substance.specifiedSubstanceG4m.parentSubstance={})}}]),i}(x.o);return n.\u0275fac=function(c){return new(c||n)(s.Y36(v.$),s.Y36(h.B),s.Y36(C.I),s.Y36(y.E))},n.\u0275cmp=s.Xpm({type:n,selectors:[["app-ssg-parent-substance-form"]],features:[s.qOj],decls:4,vars:2,consts:[[1,"name-form-container"],[1,"form-row"],[1,"related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","Parent Substance",3,"subuuid","showMorelinks","selectionUpdated"]],template:function(c,i){1&c&&(s.TgZ(0,"div",0),s.TgZ(1,"div",1),s.TgZ(2,"div",2),s.TgZ(3,"app-substance-selector",3),s.NdJ("selectionUpdated",function(e){return i.relatedSubstanceUpdated(e)}),s.qZA(),s.qZA(),s.qZA(),s.qZA()),2&c&&(s.xp6(3),s.Q6J("subuuid",i.relatedSubstanceUuid)("showMorelinks",!0))},directives:[F.Q],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.related-substance[_ngcontent-%COMP%]{width:350px;max-width:350px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.font11px[_ngcontent-%COMP%]{font-size:11px}"]}),n}(),Z=t(7168),M=t(64061),U=t(63200),O=function(){var n=(0,d.Z)(function o(){(0,m.Z)(this,o)});return n.\u0275fac=function(c){return new(c||n)},n.\u0275mod=s.oAB({type:n}),n.\u0275inj=s.cJS({imports:[[b.ez,S.Bz,M.o.forChild(P),Z.O,U.U]]}),n}()}}]); +//# sourceMappingURL=6620.2368041933af908e.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6620.2368041933af908e.js.map b/frontend/src/main/resources/static/6620.2368041933af908e.js.map new file mode 100644 index 0000000..3c96983 --- /dev/null +++ b/frontend/src/main/resources/static/6620.2368041933af908e.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"gVAiBaA,EAAb,eAAaA,EAAb,0CAQE,WACSC,EACCC,EACDC,EACAC,GAA4B,6BAEnCC,gBALOJ,YACCI,yBACDA,cACAA,kBANDA,gBAAqC,GAS3CA,EAAKC,uBAAyB,8CAHKD,EAZvC,uCAkBE,WAAQ,WAENE,KAAKC,eAAkBD,KAAKH,cAAcK,YAAcF,KAAKH,cAAcK,WAAWC,UAAa,KACnG,IAAIC,EAAc,qCACdJ,KAAKC,iBACPG,EAAcJ,KAAKC,eAAeI,OAAOC,iBAAmB,MAG9DN,KAAKO,gBAAgBC,KAAKJ,GAC1B,IAAMK,EAAwBT,KAAKL,qBAAqBe,UAAUC,UAAU,YAC1EC,EAAKF,UAAYA,EACjBE,EAAKC,eAAiBH,EAAUG,eAG5BD,EAAKC,gBAA0C,0BAAxBD,EAAKC,gBAC1BD,EAAKF,UAAUI,sBAAsBR,iBACnCM,EAAKF,UAAUI,sBAAsBR,gBAAgBS,UACvDH,EAAKI,qBAAuBJ,EAAKF,UAAUI,sBAAsBR,gBAAgBS,SAsBvFH,EAAKjB,qBAAqBsB,eAO5BjB,KAAKkB,cAAcC,KAAKV,KAhE5B,6BAmEE,cAnEF,yBAsEE,WACET,KAAKkB,cAAcE,QAAQ,YACzBC,EAAaC,kBAxEnB,qCA4EE,SAAwBZ,GACJ,OAAdA,EAQEV,KAAKa,gBAA0C,0BAAxBb,KAAKa,iBAC9Bb,KAAKU,UAAUI,sBAAsBR,gBARI,CACzCiB,SAAUb,EAAUc,MACpBC,KAAMf,EAAUc,MAChBT,QAASL,EAAUgB,KACnBb,eAAgB,YAChBc,WAAYjB,EAAUiB,aAMpB3B,KAAKa,gBAA0C,0BAAxBb,KAAKa,iBAC9Bb,KAAKU,UAAUI,sBAAsBR,gBAAkB,QA1F/DsB,GAAqDC,kDAAxCpC,GAA+BqC,sEAA/BrC,EAA+BsC,qWCjB5CD,iBACEA,iBACEA,iBACEA,oCAAwBA,4CAAoBE,+BAG5CF,QACFA,QACFA,QAgBFA,eAnBQA,iDAAgC,kmBDY3BrC,EAAb,mCEGawC,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,KACAC,aAAsC5C,GACtC6C,IACAC,QAMSN,EAAb","names":["SsgParentSubstanceFormComponent","gaService","substanceFormService","cvService","configService","a","analyticsEventCategory","this","configSsg4Form","configData","ssg4Form","configTitle","titles","parentSubstance","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","e","substanceClass","specifiedSubstanceG4m","refuuid","relatedSubstanceUuid","resetState","subscriptions","push","forEach","subscription","unsubscribe","refPname","_name","name","uuid","approvalID","i","SubstanceFormBase","i0","selectors","ctx","SsgParentSubstanceFormModule","d","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceFormModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/ssg-parent-substance-form/ssg-parent-substance-form.component.ts","./src/app/core/substance-form/ssg-parent-substance-form/ssg-parent-substance-form.component.html","./src/app/core/substance-form/ssg-parent-substance-form/ssg-parent-substance-form.module.ts"],"sourcesContent":["import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { SubstanceRelated, SubstanceSummary, SpecifiedSubstanceG3, SpecifiedSubstanceG4m } from '@gsrs-core/substance';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { SubstanceFormSsg4mStartingMaterialsModule } from '@gsrs-core/substance-ssg4m/ssg4m-starting-materials/substance-form-ssg4m-starting-materials.module';\n\n@Component({\n selector: 'app-ssg-parent-substance-form',\n templateUrl: './ssg-parent-substance-form.component.html',\n styleUrls: ['./ssg-parent-substance-form.component.scss']\n})\n\nexport class SsgParentSubstanceFormComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n substance: any;\n substanceClass: string;\n parentSubstance: SubstanceRelated;\n relatedSubstanceUuid: string;\n configSsg4Form: any;\n private subscriptions: Array = [];\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private substanceFormService: SubstanceFormService,\n public cvService: ControlledVocabularyService,\n public configService: ConfigService\n ) {\n super();\n this.analyticsEventCategory = 'substance form ssg 3 and 4 parent substance';\n }\n\n ngOnInit() {\n // Get Config variables for SSG4\n this.configSsg4Form = (this.configService.configData && this.configService.configData.ssg4Form) || null;\n let configTitle = 'Search or Register a New Substance';\n if (this.configSsg4Form) {\n configTitle = this.configSsg4Form.titles.parentSubstance || null;\n }\n\n this.menuLabelUpdate.emit(configTitle);\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n this.substanceClass = substance.substanceClass;\n\n // SSG4m: Load/Set Substance Name with Structure\n if (this.substanceClass && this.substanceClass === 'specifiedSubstanceG4m') {\n if (this.substance.specifiedSubstanceG4m.parentSubstance) {\n if (this.substance.specifiedSubstanceG4m.parentSubstance.refuuid) {\n this.relatedSubstanceUuid = this.substance.specifiedSubstanceG4m.parentSubstance.refuuid;\n }\n }\n }\n\n // Specified Substance Group 3\n /*\n if (substance.specifiedSubstanceG3.parentSubstance == null) {\n substance.specifiedSubstanceG3.parentSubstance = {};\n }\n this.substanceFormService.resetState();\n this.parentSubstance = substance.specifiedSubstanceG3.parentSubstance;\n\n if (substance.specifiedSubstanceG3.parentSubstance != null) {\n this.relatedSubstanceUuid = substance.specifiedSubstanceG3.parentSubstance.refuuid;\n }\n */\n\n // Specified Substance Group 4 Manufacturing\n if (substance.specifiedSubstanceG4m.parentSubstance == null) {\n // substance.specifiedSubstanceG4m.parentSubstance = {};\n }\n this.substanceFormService.resetState();\n // this.parentSubstance = substance.specifiedSubstanceG4m.parentSubstance;\n\n // if (substance.specifiedSubstanceG4m.parentSubstance != null) {\n // this.relatedSubstanceUuid = substance.specifiedSubstanceG4m.parentSubstance.refuuid;\n // }\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n if (this.substanceClass && this.substanceClass === 'specifiedSubstanceG4m') {\n this.substance.specifiedSubstanceG4m.parentSubstance = relatedSubstance;\n }\n } else {\n if (this.substanceClass && this.substanceClass === 'specifiedSubstanceG4m') {\n this.substance.specifiedSubstanceG4m.parentSubstance = {};\n }\n }\n }\n\n}\n","
\n
\n
\n \n \n
\n
\n\n \n\n
","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { SsgParentSubstanceFormComponent } from './ssg-parent-substance-form.component';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n DynamicComponentLoaderModule.forChild(SsgParentSubstanceFormComponent),\n SubstanceFormModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SsgParentSubstanceFormComponent\n ]\n})\nexport class SsgParentSubstanceFormModule { }\n"],"sourceRoot":"webpack:///","file":"6620.2368041933af908e.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6620.501541665c345c50.js b/frontend/src/main/resources/static/6620.501541665c345c50.js deleted file mode 100644 index be4075c..0000000 --- a/frontend/src/main/resources/static/6620.501541665c345c50.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6620],{46620:function(D,f,n){n.r(f),n.d(f,{SsgParentSubstanceFormModule:function(){return O}});var d=n(48047),m=n(78069),p=n(36362),g=n(98002),S=n(24582),b=n(7318),v=n(40104),x=(n(27299),n(33567)),h=n(18291),A=n(92507),y=n(79223),e=n(76442),C=n(24459),Z=function(){return["/substances/register/chemical"]},F=function(){return["/structure-search"]},P=function(){var s=function(i){(0,S.Z)(r,i);var c=(0,b.Z)(r);function r(o,t,u,l){var a;return(0,m.Z)(this,r),(a=c.call(this)).gaService=o,a.substanceFormService=t,a.cvService=u,a.configService=l,a.subscriptions=[],a.analyticsEventCategory="substance form ssg 3 and 4 parent substance",a}return(0,d.Z)(r,[{key:"ngOnInit",value:function(){var t=this;this.configSsg4Form=this.configService.configData&&this.configService.configData.ssg4Form||null;var u="Parent Substance";this.configSsg4Form&&(u=this.configSsg4Form.titles.parentSubstance||null),this.menuLabelUpdate.emit(u);var l=this.substanceFormService.substance.subscribe(function(a){t.substance=a,t.substanceClass=a.substanceClass,t.substanceClass&&"specifiedSubstanceG4m"===t.substanceClass&&t.substance.specifiedSubstanceG4m.parentSubstance&&t.substance.specifiedSubstanceG4m.parentSubstance.refuuid&&(t.relatedSubstanceUuid=t.substance.specifiedSubstanceG4m.parentSubstance.refuuid),t.substanceFormService.resetState()});this.subscriptions.push(l)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(t){t.unsubscribe()})}},{key:"relatedSubstanceUpdated",value:function(t){null!=t&&this.substanceClass&&"specifiedSubstanceG4m"===this.substanceClass&&(this.substance.specifiedSubstanceG4m.parentSubstance={refPname:t._name,name:t._name,refuuid:t.uuid,substanceClass:"reference",approvalID:t.approvalID})}}]),r}(y.o);return s.\u0275fac=function(c){return new(c||s)(e.Y36(v.$),e.Y36(x.B),e.Y36(h.I),e.Y36(A.E))},s.\u0275cmp=e.Xpm({type:s,selectors:[["app-ssg-parent-substance-form"]],features:[e.qOj],decls:13,vars:5,consts:[[1,"name-form-container"],[1,"form-row"],[1,"related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","Parent Substance",3,"subuuid","selectionUpdated"],[1,"col"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"]],template:function(c,r){1&c&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"app-substance-selector",3),e.NdJ("selectionUpdated",function(t){return r.relatedSubstanceUpdated(t)}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(4,"div",1),e.TgZ(5,"div",4),e.TgZ(6,"a",5),e.TgZ(7,"span",6),e._uU(8,"Register New"),e.qZA(),e.qZA(),e._uU(9," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(10,"a",7),e.TgZ(11,"span",6),e._uU(12,"Search By Structure"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&c&&(e.xp6(3),e.Q6J("subuuid",r.relatedSubstanceUuid),e.xp6(3),e.Q6J("routerLink",e.DdM(3,Z)),e.xp6(4),e.Q6J("routerLink",e.DdM(4,F)))},directives:[C.Q,g.yS],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.related-substance[_ngcontent-%COMP%]{width:350px;max-width:350px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.font11px[_ngcontent-%COMP%]{font-size:11px}"]}),s}(),T=n(7168),U=n(64061),M=n(63200),O=function(){var s=(0,d.Z)(function i(){(0,m.Z)(this,i)});return s.\u0275fac=function(c){return new(c||s)},s.\u0275mod=e.oAB({type:s}),s.\u0275inj=e.cJS({imports:[[p.ez,g.Bz,U.o.forChild(P),T.O,M.U]]}),s}()}}]); -//# sourceMappingURL=6620.501541665c345c50.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6620.501541665c345c50.js.map b/frontend/src/main/resources/static/6620.501541665c345c50.js.map deleted file mode 100644 index 0169e58..0000000 --- a/frontend/src/main/resources/static/6620.501541665c345c50.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"gbAiBaA,EAAb,eAAaA,EAAb,0CAQE,WACSC,EACCC,EACDC,EACAC,GAA4B,6BAEnCC,gBALOJ,YACCI,yBACDA,cACAA,kBANDA,gBAAqC,GAS3CA,EAAKC,uBAAyB,8CAHKD,EAZvC,uCAkBE,WAAQ,WAENE,KAAKC,eAAkBD,KAAKH,cAAcK,YAAcF,KAAKH,cAAcK,WAAWC,UAAa,KACnG,IAAIC,EAAc,mBACdJ,KAAKC,iBACPG,EAAcJ,KAAKC,eAAeI,OAAOC,iBAAmB,MAG9DN,KAAKO,gBAAgBC,KAAKJ,GAC1B,IAAMK,EAAwBT,KAAKL,qBAAqBe,UAAUC,UAAU,YAC1EC,EAAKF,UAAYA,EACjBE,EAAKC,eAAiBH,EAAUG,eAG5BD,EAAKC,gBAA0C,0BAAxBD,EAAKC,gBAC1BD,EAAKF,UAAUI,sBAAsBR,iBACnCM,EAAKF,UAAUI,sBAAsBR,gBAAgBS,UACvDH,EAAKI,qBAAuBJ,EAAKF,UAAUI,sBAAsBR,gBAAgBS,SAsBvFH,EAAKjB,qBAAqBsB,eAO5BjB,KAAKkB,cAAcC,KAAKV,KAhE5B,6BAmEE,cAnEF,yBAsEE,WACET,KAAKkB,cAAcE,QAAQ,YACzBC,EAAaC,kBAxEnB,qCA4EE,SAAwBZ,GACL,MAAbA,GASEV,KAAKa,gBAA0C,0BAAxBb,KAAKa,iBAC9Bb,KAAKU,UAAUI,sBAAsBR,gBATI,CACzCiB,SAAUb,EAAUc,MACpBC,KAAMf,EAAUc,MAChBT,QAASL,EAAUgB,KACnBb,eAAgB,YAChBc,WAAYjB,EAAUiB,iBAnF9BC,GAAqDC,kDAAxCpC,GAA+BqC,sEAA/BrC,EAA+BsC,2fCjB5CD,iBACEA,iBACEA,iBACEA,oCAAwBA,4CAAoBE,+BAG5CF,QACFA,QACFA,QAEAA,iBACEA,iBAEEA,eACEA,kBAAuBA,wBAAYA,QACrCA,QACAA,8FAEAA,gBACEA,mBAAuBA,gCAAmBA,QAC5CA,QACFA,QACFA,QACFA,eAlBQA,iDAQCA,wCAKAA,2nBDDIrC,EAAb,mCEGawC,EAAb,eAAaA,KAAbC,iFAAaD,4DAXF,CACPE,KACAC,KACAC,aAAsC5C,GACtC6C,IACAC,QAMSN,EAAb","names":["SsgParentSubstanceFormComponent","gaService","substanceFormService","cvService","configService","a","analyticsEventCategory","this","configSsg4Form","configData","ssg4Form","configTitle","titles","parentSubstance","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","t","substanceClass","specifiedSubstanceG4m","refuuid","relatedSubstanceUuid","resetState","subscriptions","push","forEach","subscription","unsubscribe","refPname","_name","name","uuid","approvalID","r","SubstanceFormBase","i0","selectors","ctx","SsgParentSubstanceFormModule","d","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceFormModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/ssg-parent-substance-form/ssg-parent-substance-form.component.ts","./src/app/core/substance-form/ssg-parent-substance-form/ssg-parent-substance-form.component.html","./src/app/core/substance-form/ssg-parent-substance-form/ssg-parent-substance-form.module.ts"],"sourcesContent":["import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { SubstanceRelated, SubstanceSummary, SpecifiedSubstanceG3, SpecifiedSubstanceG4m } from '@gsrs-core/substance';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { SubstanceFormSsg4mStartingMaterialsModule } from '@gsrs-core/substance-ssg4m/ssg4m-starting-materials/substance-form-ssg4m-starting-materials.module';\n\n@Component({\n selector: 'app-ssg-parent-substance-form',\n templateUrl: './ssg-parent-substance-form.component.html',\n styleUrls: ['./ssg-parent-substance-form.component.scss']\n})\n\nexport class SsgParentSubstanceFormComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n substance: any;\n substanceClass: string;\n parentSubstance: SubstanceRelated;\n relatedSubstanceUuid: string;\n configSsg4Form: any;\n private subscriptions: Array = [];\n\n constructor(\n public gaService: GoogleAnalyticsService,\n private substanceFormService: SubstanceFormService,\n public cvService: ControlledVocabularyService,\n public configService: ConfigService\n ) {\n super();\n this.analyticsEventCategory = 'substance form ssg 3 and 4 parent substance';\n }\n\n ngOnInit() {\n // Get Config variables for SSG4\n this.configSsg4Form = (this.configService.configData && this.configService.configData.ssg4Form) || null;\n let configTitle = 'Parent Substance';\n if (this.configSsg4Form) {\n configTitle = this.configSsg4Form.titles.parentSubstance || null;\n }\n\n this.menuLabelUpdate.emit(configTitle);\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n this.substanceClass = substance.substanceClass;\n\n // SSG4m: Load/Set Substance Name with Structure\n if (this.substanceClass && this.substanceClass === 'specifiedSubstanceG4m') {\n if (this.substance.specifiedSubstanceG4m.parentSubstance) {\n if (this.substance.specifiedSubstanceG4m.parentSubstance.refuuid) {\n this.relatedSubstanceUuid = this.substance.specifiedSubstanceG4m.parentSubstance.refuuid;\n }\n }\n }\n\n // Specified Substance Group 3\n /*\n if (substance.specifiedSubstanceG3.parentSubstance == null) {\n substance.specifiedSubstanceG3.parentSubstance = {};\n }\n this.substanceFormService.resetState();\n this.parentSubstance = substance.specifiedSubstanceG3.parentSubstance;\n\n if (substance.specifiedSubstanceG3.parentSubstance != null) {\n this.relatedSubstanceUuid = substance.specifiedSubstanceG3.parentSubstance.refuuid;\n }\n */\n\n // Specified Substance Group 4 Manufacturing\n if (substance.specifiedSubstanceG4m.parentSubstance == null) {\n // substance.specifiedSubstanceG4m.parentSubstance = {};\n }\n this.substanceFormService.resetState();\n // this.parentSubstance = substance.specifiedSubstanceG4m.parentSubstance;\n\n // if (substance.specifiedSubstanceG4m.parentSubstance != null) {\n // this.relatedSubstanceUuid = substance.specifiedSubstanceG4m.parentSubstance.refuuid;\n // }\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n if (this.substanceClass && this.substanceClass === 'specifiedSubstanceG4m') {\n this.substance.specifiedSubstanceG4m.parentSubstance = relatedSubstance;\n }\n }\n }\n\n}\n","
\n
\n
\n \n \n
\n
\n\n
\n
\n \n \n Register New\n \n                     \n \n \n Search By Structure\n \n
\n
\n
","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { SsgParentSubstanceFormComponent } from './ssg-parent-substance-form.component';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n DynamicComponentLoaderModule.forChild(SsgParentSubstanceFormComponent),\n SubstanceFormModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SsgParentSubstanceFormComponent\n ]\n})\nexport class SsgParentSubstanceFormModule { }\n"],"sourceRoot":"webpack:///","file":"6620.501541665c345c50.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6684.06ad341111896c70.js b/frontend/src/main/resources/static/6684.06ad341111896c70.js new file mode 100644 index 0000000..b3ddc9f --- /dev/null +++ b/frontend/src/main/resources/static/6684.06ad341111896c70.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6684],{66684:function(X,v,o){o.r(v),o.d(v,{SubstanceFormAgentModificationsModule:function(){return H}});var m=o(1884),f=o(39117),u=o(36362),b=o(64061),y=o(7168),M=o(19975),g=o(65590),p=o(87317),x=o(94673),C=o(44770),l=o(90587),O=o(26439),h=o(43365),T=o(46751),Z=o(56101),P=o(79550),S=(o(27299),o(457)),_=o(40104),t=o(86613),F=o(78444),I=o(27164),U=o(18291),J=o(63169),N=o(33567),k=o(95758),D=o(54244);function E(i,d){if(1&i){var e=t.EpF();t.TgZ(0,"div",23),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",24),t.NdJ("click",function(){return t.CHM(e),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",25),t.qZA(),t.qZA()}}function w(i,d){if(1&i&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&i){var e=t.oxw();t.xp6(1),t.hij(" ",e.displayAmount(e.mod.amount)," ")}}var A=function(){var i=function(){function d(e,n,a,c,r){(0,f.Z)(this,d),this.cvService=e,this.dialog=n,this.utilsService=a,this.overlayContainerService=c,this.substanceFormService=r,this.modDeleted=new t.vpe,this.modTypeList=[],this.modRoleList=[],this.modProcessList=[],this.subscriptions=[]}return(0,m.Z)(d,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"mod",get:function(){return this.privateMod},set:function(n){this.privateMod=n,this.privateMod.agentSubstance&&(this.relatedSubstanceUuid=this.privateMod.agentSubstance.refuuid)}},{key:"updateAccess",value:function(n){this.mod.access=n}},{key:"getVocabularies",value:function(){var n=this;this.cvService.getDomainVocabulary("AGENT_MODIFICATION_TYPE","AGENT_MODIFICATION_PROCESS","ROLE").subscribe(function(a){n.modTypeList=a.AGENT_MODIFICATION_TYPE.list,n.modProcessList=a.AGENT_MODIFICATION_PROCESS.list,n.modRoleList=a.ROLE.list})}},{key:"deleteCode",value:function(){var n=this;this.privateMod.$$deletedCode=this.utilsService.newUUID(),this.privateMod||(this.deleteTimer=setTimeout(function(){n.modDeleted.emit(n.privateMod)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMod.$$deletedCode}},{key:"openAmountDialog",value:function(){var n=this;this.mod.amount||(this.mod.amount={});var a=this.dialog.open(I.O,{data:{subsAmount:this.mod.amount},width:"990px"});this.overlayContainer.style.zIndex="1002";var c=a.afterClosed().subscribe(function(r){n.overlayContainer.style.zIndex=null,n.mod.amount=r});this.subscriptions.push(c)}},{key:"updateProcess",value:function(n){this.privateMod.agentModificationProcess=n}},{key:"relatedSubstanceUpdated",value:function(n){null!==n?(this.mod.agentSubstance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.mod.agentSubstance.refuuid):(this.mod.agentSubstance=null,this.relatedSubstanceUuid="")}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"formatValue",value:function(n){return n?"object"==typeof n?n.display?n.display:n.value?n.value:null:n:null}}]),d}();return i.\u0275fac=function(e){return new(e||i)(t.Y36(U.I),t.Y36(k.uw),t.Y36(J.FW),t.Y36(D.Xj),t.Y36(N.B))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-agent-modification-form"]],inputs:{mod:"mod"},outputs:{modDeleted:"modDeleted"},decls:26,vars:9,consts:[[1,"code-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Agent Substance","header","Agent Substance",3,"subuuid","selectionUpdated"],[1,"flex-column","form-content"],[1,"form-row"],["key","Agent Modification Agent Modification Process","title","Modification Process",3,"model","valueChange"],["key","Agent Modification Agent Modification Type","title","Modification Type",3,"model","valueChange"],["key","Agent Modification Agent Modification Role","title","Modification Role",3,"model","valueChange"],[1,"amount"],[1,"label","amt-label"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],[1,"amount-display"],[4,"ngIf"],[1,"group"],["matInput","","placeholder","Group","required","","name","group",3,"ngModel","ngModelChange"],[1,"access"],[3,"access","accessOut"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t.YNc(1,E,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"button",3),t.NdJ("click",function(){return n.deleteCode()}),t._UZ(4,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(5,"div",5),t.TgZ(6,"app-substance-selector",6),t.NdJ("selectionUpdated",function(c){return n.relatedSubstanceUpdated(c)}),t.qZA(),t.qZA(),t.TgZ(7,"div",7),t.TgZ(8,"div",8),t.TgZ(9,"app-cv-input",9),t.NdJ("valueChange",function(c){return n.updateProcess(c)}),t.qZA(),t.TgZ(10,"app-cv-input",10),t.NdJ("valueChange",function(c){return n.mod.agentModificationType=c}),t.qZA(),t.TgZ(11,"app-cv-input",11),t.NdJ("valueChange",function(c){return n.mod.agentModificationRole=c}),t.qZA(),t.qZA(),t.TgZ(12,"div",8),t.TgZ(13,"div",12),t.TgZ(14,"div",13),t._uU(15," Amount "),t.qZA(),t.TgZ(16,"button",14),t.NdJ("click",function(){return n.openAmountDialog()}),t._UZ(17,"mat-icon",15),t.qZA(),t.TgZ(18,"div",16),t.YNc(19,w,2,1,"div",17),t.qZA(),t.qZA(),t.TgZ(20,"mat-form-field",18),t.TgZ(21,"input",19),t.NdJ("ngModelChange",function(c){return n.mod.modificationGroup=c}),t.qZA(),t.qZA(),t.TgZ(22,"div",20),t.TgZ(23,"app-access-manager",21),t.NdJ("accessOut",function(c){return n.updateAccess(c)}),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(24,"div",8),t._UZ(25,"app-audit-info",22),t.qZA()),2&e&&(t.xp6(1),t.Q6J("ngIf",n.mod.$$deletedCode),t.xp6(5),t.Q6J("subuuid",n.relatedSubstanceUuid),t.xp6(3),t.Q6J("model",n.mod.agentModificationProcess),t.xp6(1),t.Q6J("model",n.mod.agentModificationType),t.xp6(1),t.Q6J("model",n.mod.agentModificationRole),t.xp6(8),t.Q6J("ngIf",n.mod.amount),t.xp6(2),t.Q6J("ngModel",n.mod.modificationGroup),t.xp6(2),t.Q6J("access",n.mod.access),t.xp6(2),t.Q6J("source",n.mod))},styles:[".code-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:25%;width:25%} .related-substance img{max-width:125px!important;margin:auto}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .location-type[_ngcontent-%COMP%] .extent[_ngcontent-%COMP%] .mod-type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:10px}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:22%}"]}),i}();function Q(i,d){1&i&&t._UZ(0,"mat-divider",7),2&i&&t.Q6J("inset",!0)}function R(i,d){if(1&i){var e=t.EpF();t.TgZ(0,"div",4),t.TgZ(1,"app-agent-modification-form",5),t.NdJ("modDeleted",function(){return t.CHM(e),t.oxw().deleteAgentModification()}),t.qZA(),t.YNc(2,Q,1,1,"mat-divider",6),t.qZA()}if(2&i){var n=d.$implicit,a=d.last;t.Q6J("id","substance-agent-modification-"+d.index),t.xp6(1),t.Q6J("mod",n),t.xp6(1),t.Q6J("ngIf",!a)}}function Y(i,d){if(1&i){var e=t.EpF();t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"button",8),t.NdJ("click",function(){return t.CHM(e),t.oxw().addStructuralModification()}),t._uU(3," Add Modification "),t._UZ(4,"mat-icon",9),t.qZA(),t.qZA()}}var j=function(){var i=function(d){(0,T.Z)(n,d);var e=(0,Z.Z)(n);function n(a,c,r){var s;return(0,f.Z)(this,n),(s=e.call(this,r)).substanceFormAgentModificationsService=a,s.scrollToService=c,s.gaService=r,s.subscriptions=[],s.analyticsEventCategory="substance form agent modifications",s}return(0,m.Z)(n,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Agent Modifications")}},{key:"ngAfterViewInit",value:function(){var c=this;this.canAddItemUpdate.emit(!0);var r=this.substanceFormAgentModificationsService.substanceAgentModifications.subscribe(function(s){c.modifications=s});this.subscriptions.push(r)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(c){c.unsubscribe()}),this.componentDestroyed.emit()}},{key:"addItem",value:function(){this.addStructuralModification()}},{key:"addStructuralModification",value:function(){var c=this;this.substanceFormAgentModificationsService.addSubstanceAgentModification(),setTimeout(function(){c.scrollToService.scrollToElement("substance-agent-modification-0","center")})}},{key:"deleteAgentModification",value:function(c){this.substanceFormAgentModificationsService.deleteSubstanceAgentModification(c)}}]),n}(P.u);return i.\u0275fac=function(e){return new(e||i)(t.Y36(S.O),t.Y36(F.i),t.Y36(_.$))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-form-agent-modifications-card"]],features:[t.qOj],decls:4,vars:2,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds",3,"id",4,"ngFor","ngForOf"],["class","flex-row",4,"ngIf"],[1,"alternate-backgrounds",3,"id"],[3,"mod","modDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,R,3,3,"div",2),t.YNc(3,Y,5,0,"div",3)),2&e&&(t.xp6(2),t.Q6J("ngForOf",n.modifications),t.xp6(1),t.Q6J("ngIf",n.modifications&&n.modifications.length>0))},directives:[u.sg,A,u.O5,M.d,p.lW,g.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--box-shadow-color-3)}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),i}(),L=o(63200),V=o(24459),$=o(16667),z=o(84577),G=o(14900),H=function(){var i=(0,m.Z)(function d(){(0,f.Z)(this,d)});return i.\u0275fac=function(e){return new(e||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[u.ez,b.o.forChild(j),y.O,M.t,g.Ps,p.ot,x.w,C.lN,l.UX,l.u5,O.TU,h.c,L.U]]}),i}();t.B6R(A,[u.O5,p.lW,g.Hw,V.Q,$.S,C.KE,h.Nt,l.Fj,l.Q7,l.JJ,l.On,z.h,G.n],[])}}]); +//# sourceMappingURL=6684.06ad341111896c70.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6684.4da283839092a8ce.js.map b/frontend/src/main/resources/static/6684.06ad341111896c70.js.map similarity index 99% rename from frontend/src/main/resources/static/6684.4da283839092a8ce.js.map rename to frontend/src/main/resources/static/6684.06ad341111896c70.js.map index be110aa..410ae61 100644 --- a/frontend/src/main/resources/static/6684.4da283839092a8ce.js.map +++ b/frontend/src/main/resources/static/6684.06ad341111896c70.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r2","AgentModificationFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","getVocabularies","overlayContainer","getContainerElement","privateMod","set","mod","agentSubstance","relatedSubstanceUuid","refuuid","access","getDomainVocabulary","subscribe","n","modTypeList","response","AGENT_MODIFICATION_TYPE","list","modProcessList","AGENT_MODIFICATION_PROCESS","modRoleList","ROLE","$$deletedCode","newUUID","deleteTimer","setTimeout","modDeleted","emit","clearTimeout","amount","dialogRef","open","AmountFormDialogComponent","data","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","newAmount","subscriptions","push","event","agentModificationProcess","substance","refPname","_name","name","uuid","substanceClass","approvalID","amt","displayAmount","v","display","value","d","selectors","ctx","ctx_r6","ctx_r8","SubstanceFormAgentModificationsCardComponent","substanceFormAgentModificationsService","scrollToService","gaService","s","analyticsEventCategory","menuLabelUpdate","canAddItemUpdate","agentSubscription","substanceAgentModifications","c","modifications","forEach","subscription","unsubscribe","componentDestroyed","addStructuralModification","addSubstanceAgentModification","scrollToElement","modification","deleteSubstanceAgentModification","SubstanceCardBaseFilteredList","SubstanceFormAgentModificationsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/agent-modifications/agent-modification-form.component.html","./src/app/core/substance-form/agent-modifications/agent-modification-form.component.ts","./src/app/core/substance-form/agent-modifications/substance-form-agent-modifications-card.component.html","./src/app/core/substance-form/agent-modifications/substance-form-agent-modifications-card.component.ts","./src/app/core/substance-form/agent-modifications/substance-form-agent-modifications.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n \n \n
\n
\n
\n \n \n \n\n
\n
\n
\n
\n Amount\n
\n \n
\n
\n {{displayAmount(mod.amount)}}\n
\n
\n
\n\n \n \n \n
\n \n \n
\n
\n
\n\n\n
\n
\n \n
\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\nimport {AgentModification, StructuralModification, SubstanceAmount, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\n\n@Component({\n selector: 'app-agent-modification-form',\n templateUrl: './agent-modification-form.component.html',\n styleUrls: ['./agent-modification-form.component.scss']\n})\nexport class AgentModificationFormComponent implements OnInit {\n private privateMod: AgentModification;\n @Output() modDeleted = new EventEmitter();\n modTypeList: Array = [];\n modRoleList: Array = [];\n modProcessList: Array = [];\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set mod(mod: AgentModification) {\n this.privateMod = mod;\n if (this.privateMod.agentSubstance) {\n this.relatedSubstanceUuid = this.privateMod.agentSubstance.refuuid;\n }\n\n }\n\n get mod(): AgentModification {\n return this.privateMod;\n }\n\n updateAccess(access: Array): void {\n this.mod.access = access;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('AGENT_MODIFICATION_TYPE', 'AGENT_MODIFICATION_PROCESS', 'ROLE').subscribe(response => {\n this.modTypeList = response['AGENT_MODIFICATION_TYPE'].list;\n this.modProcessList = response['AGENT_MODIFICATION_PROCESS'].list;\n this.modRoleList = response['ROLE'].list;\n });\n }\n\n deleteCode(): void {\n this.privateMod.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateMod\n ) {\n this.deleteTimer = setTimeout(() => {\n this.modDeleted.emit(this.privateMod);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMod.$$deletedCode;\n }\n\n openAmountDialog(): void {\n if (!this.mod.amount) {\n this.mod.amount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.mod.amount},\n width: '990px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.mod.amount = newAmount;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateProcess(event: string) {\n this.privateMod.agentModificationProcess = event;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if ( substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.mod.agentSubstance = relatedSubstance;\n this.relatedSubstanceUuid = this.mod.agentSubstance.refuuid;\n } else {\n this.mod.agentSubstance = null;\n this.relatedSubstanceUuid = '';\n }\n }\n\n displayAmount(amt: SubstanceAmount): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n}\n","\n
\n \n \n
\n
\n \n \n
\n\n\n
0\">\n \n \n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {AgentModification, StructuralModification} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormAgentModificationsService} from './substance-form-agent-modifications.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-substance-form-agent-modifications-card',\n templateUrl: './substance-form-agent-modifications-card.component.html',\n styleUrls: ['./substance-form-agent-modifications-card.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormAgentModificationsCardComponent\n extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n modifications: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormAgentModificationsService: SubstanceFormAgentModificationsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form agent modifications';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Agent Modifications');\n }\n\n ngAfterViewInit() {\n this.canAddItemUpdate.emit(true);\n const agentSubscription = this.substanceFormAgentModificationsService.substanceAgentModifications.subscribe(modifications => {\n this.modifications = modifications;\n });\n this.subscriptions.push(agentSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n this.componentDestroyed.emit();\n }\n\n addItem() {\n this.addStructuralModification();\n }\n\n addStructuralModification(): void {\n this.substanceFormAgentModificationsService.addSubstanceAgentModification();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-agent-modification-0`, 'center');\n });\n }\n\n deleteAgentModification(modification: AgentModification): void {\n this.substanceFormAgentModificationsService.deleteSubstanceAgentModification(modification);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport {SubstanceFormAgentModificationsCardComponent} from '@gsrs-core/substance-form/agent-modifications/substance-form-agent-modifications-card.component';\nimport {AgentModificationFormComponent} from '@gsrs-core/substance-form/agent-modifications/agent-modification-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormAgentModificationsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormAgentModificationsCardComponent,\n AgentModificationFormComponent\n ]\n})\nexport class SubstanceFormAgentModificationsModule { }\n"],"sourceRoot":"webpack:///","file":"6684.4da283839092a8ce.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r2","AgentModificationFormComponent","cvService","dialog","utilsService","overlayContainerService","substanceFormService","this","EventEmitter","getVocabularies","overlayContainer","getContainerElement","privateMod","set","mod","agentSubstance","relatedSubstanceUuid","refuuid","access","getDomainVocabulary","subscribe","n","modTypeList","response","AGENT_MODIFICATION_TYPE","list","modProcessList","AGENT_MODIFICATION_PROCESS","modRoleList","ROLE","$$deletedCode","newUUID","deleteTimer","setTimeout","modDeleted","emit","clearTimeout","amount","dialogRef","open","AmountFormDialogComponent","data","subsAmount","width","style","zIndex","dialogSubscription","afterClosed","newAmount","subscriptions","push","event","agentModificationProcess","substance","refPname","_name","name","uuid","substanceClass","approvalID","amt","displayAmount","v","display","value","d","selectors","ctx","ctx_r6","ctx_r8","SubstanceFormAgentModificationsCardComponent","substanceFormAgentModificationsService","scrollToService","gaService","s","analyticsEventCategory","menuLabelUpdate","canAddItemUpdate","agentSubscription","substanceAgentModifications","c","modifications","forEach","subscription","unsubscribe","componentDestroyed","addStructuralModification","addSubstanceAgentModification","scrollToElement","modification","deleteSubstanceAgentModification","SubstanceCardBaseFilteredList","SubstanceFormAgentModificationsModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","SubstanceSelectorModule"],"sources":["./src/app/core/substance-form/agent-modifications/agent-modification-form.component.html","./src/app/core/substance-form/agent-modifications/agent-modification-form.component.ts","./src/app/core/substance-form/agent-modifications/substance-form-agent-modifications-card.component.html","./src/app/core/substance-form/agent-modifications/substance-form-agent-modifications-card.component.ts","./src/app/core/substance-form/agent-modifications/substance-form-agent-modifications.module.ts"],"sourcesContent":["
\n
\n Deleted \n \n
\n
\n \n
\n
\n \n \n
\n
\n
\n \n \n \n\n
\n
\n
\n
\n Amount\n
\n \n
\n
\n {{displayAmount(mod.amount)}}\n
\n
\n
\n\n \n \n \n
\n \n \n
\n
\n
\n\n\n
\n
\n \n
\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\nimport {AgentModification, StructuralModification, SubstanceAmount, SubstanceRelated, SubstanceSummary} from '@gsrs-core/substance';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {Subscription} from 'rxjs';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\n\n@Component({\n selector: 'app-agent-modification-form',\n templateUrl: './agent-modification-form.component.html',\n styleUrls: ['./agent-modification-form.component.scss']\n})\nexport class AgentModificationFormComponent implements OnInit {\n private privateMod: AgentModification;\n @Output() modDeleted = new EventEmitter();\n modTypeList: Array = [];\n modRoleList: Array = [];\n modProcessList: Array = [];\n deleteTimer: any;\n relatedSubstanceUuid: string;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n @Input()\n set mod(mod: AgentModification) {\n this.privateMod = mod;\n if (this.privateMod.agentSubstance) {\n this.relatedSubstanceUuid = this.privateMod.agentSubstance.refuuid;\n }\n\n }\n\n get mod(): AgentModification {\n return this.privateMod;\n }\n\n updateAccess(access: Array): void {\n this.mod.access = access;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('AGENT_MODIFICATION_TYPE', 'AGENT_MODIFICATION_PROCESS', 'ROLE').subscribe(response => {\n this.modTypeList = response['AGENT_MODIFICATION_TYPE'].list;\n this.modProcessList = response['AGENT_MODIFICATION_PROCESS'].list;\n this.modRoleList = response['ROLE'].list;\n });\n }\n\n deleteCode(): void {\n this.privateMod.$$deletedCode = this.utilsService.newUUID();\n if (!this.privateMod\n ) {\n this.deleteTimer = setTimeout(() => {\n this.modDeleted.emit(this.privateMod);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateMod.$$deletedCode;\n }\n\n openAmountDialog(): void {\n if (!this.mod.amount) {\n this.mod.amount = {};\n }\n const dialogRef = this.dialog.open(AmountFormDialogComponent, {\n data: {'subsAmount': this.mod.amount},\n width: '990px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newAmount => {\n this.overlayContainer.style.zIndex = null;\n this.mod.amount = newAmount;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateProcess(event: string) {\n this.privateMod.agentModificationProcess = event;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if ( substance !== null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n this.mod.agentSubstance = relatedSubstance;\n this.relatedSubstanceUuid = this.mod.agentSubstance.refuuid;\n } else {\n this.mod.agentSubstance = null;\n this.relatedSubstanceUuid = '';\n }\n }\n\n displayAmount(amt: SubstanceAmount): string {\n return this.utilsService.displayAmount(amt);\n }\n\n formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n}\n","\n
\n \n \n
\n
\n \n \n
\n\n\n
0\">\n \n \n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {AgentModification, StructuralModification} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormAgentModificationsService} from './substance-form-agent-modifications.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-substance-form-agent-modifications-card',\n templateUrl: './substance-form-agent-modifications-card.component.html',\n styleUrls: ['./substance-form-agent-modifications-card.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormAgentModificationsCardComponent\n extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n modifications: Array;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormAgentModificationsService: SubstanceFormAgentModificationsService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form agent modifications';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Agent Modifications');\n }\n\n ngAfterViewInit() {\n this.canAddItemUpdate.emit(true);\n const agentSubscription = this.substanceFormAgentModificationsService.substanceAgentModifications.subscribe(modifications => {\n this.modifications = modifications;\n });\n this.subscriptions.push(agentSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n this.componentDestroyed.emit();\n }\n\n addItem() {\n this.addStructuralModification();\n }\n\n addStructuralModification(): void {\n this.substanceFormAgentModificationsService.addSubstanceAgentModification();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-agent-modification-0`, 'center');\n });\n }\n\n deleteAgentModification(modification: AgentModification): void {\n this.substanceFormAgentModificationsService.deleteSubstanceAgentModification(modification);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport {SubstanceFormAgentModificationsCardComponent} from '@gsrs-core/substance-form/agent-modifications/substance-form-agent-modifications-card.component';\nimport {AgentModificationFormComponent} from '@gsrs-core/substance-form/agent-modifications/agent-modification-form.component';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormAgentModificationsCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n SubstanceSelectorModule\n ],\n declarations: [\n SubstanceFormAgentModificationsCardComponent,\n AgentModificationFormComponent\n ]\n})\nexport class SubstanceFormAgentModificationsModule { }\n"],"sourceRoot":"webpack:///","file":"6684.06ad341111896c70.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/6684.4da283839092a8ce.js b/frontend/src/main/resources/static/6684.4da283839092a8ce.js deleted file mode 100644 index 112ff1a..0000000 --- a/frontend/src/main/resources/static/6684.4da283839092a8ce.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6684],{66684:function(X,v,o){o.r(v),o.d(v,{SubstanceFormAgentModificationsModule:function(){return H}});var m=o(48047),f=o(78069),u=o(36362),y=o(64061),b=o(7168),M=o(19975),g=o(65590),p=o(87317),x=o(94673),C=o(44770),l=o(90587),O=o(26439),h=o(43365),T=o(24582),Z=o(7318),P=o(79550),S=(o(27299),o(457)),_=o(40104),t=o(76442),F=o(78444),I=o(27164),U=o(18291),J=o(63169),N=o(33567),D=o(95758),k=o(66088);function E(i,d){if(1&i){var e=t.EpF();t.TgZ(0,"div",23),t._uU(1," Deleted\xa0 "),t.TgZ(2,"button",24),t.NdJ("click",function(){return t.CHM(e),t.oxw().undoDelete()}),t._UZ(3,"mat-icon",25),t.qZA(),t.qZA()}}function Q(i,d){if(1&i&&(t.TgZ(0,"div"),t._uU(1),t.qZA()),2&i){var e=t.oxw();t.xp6(1),t.hij(" ",e.displayAmount(e.mod.amount)," ")}}var A=function(){var i=function(){function d(e,n,a,c,r){(0,f.Z)(this,d),this.cvService=e,this.dialog=n,this.utilsService=a,this.overlayContainerService=c,this.substanceFormService=r,this.modDeleted=new t.vpe,this.modTypeList=[],this.modRoleList=[],this.modProcessList=[],this.subscriptions=[]}return(0,m.Z)(d,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"mod",get:function(){return this.privateMod},set:function(n){this.privateMod=n,this.privateMod.agentSubstance&&(this.relatedSubstanceUuid=this.privateMod.agentSubstance.refuuid)}},{key:"updateAccess",value:function(n){this.mod.access=n}},{key:"getVocabularies",value:function(){var n=this;this.cvService.getDomainVocabulary("AGENT_MODIFICATION_TYPE","AGENT_MODIFICATION_PROCESS","ROLE").subscribe(function(a){n.modTypeList=a.AGENT_MODIFICATION_TYPE.list,n.modProcessList=a.AGENT_MODIFICATION_PROCESS.list,n.modRoleList=a.ROLE.list})}},{key:"deleteCode",value:function(){var n=this;this.privateMod.$$deletedCode=this.utilsService.newUUID(),this.privateMod||(this.deleteTimer=setTimeout(function(){n.modDeleted.emit(n.privateMod)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateMod.$$deletedCode}},{key:"openAmountDialog",value:function(){var n=this;this.mod.amount||(this.mod.amount={});var a=this.dialog.open(I.O,{data:{subsAmount:this.mod.amount},width:"990px"});this.overlayContainer.style.zIndex="1002";var c=a.afterClosed().subscribe(function(r){n.overlayContainer.style.zIndex=null,n.mod.amount=r});this.subscriptions.push(c)}},{key:"updateProcess",value:function(n){this.privateMod.agentModificationProcess=n}},{key:"relatedSubstanceUpdated",value:function(n){null!==n?(this.mod.agentSubstance={refPname:n._name,name:n._name,refuuid:n.uuid,substanceClass:"reference",approvalID:n.approvalID},this.relatedSubstanceUuid=this.mod.agentSubstance.refuuid):(this.mod.agentSubstance=null,this.relatedSubstanceUuid="")}},{key:"displayAmount",value:function(n){return this.utilsService.displayAmount(n)}},{key:"formatValue",value:function(n){return n?"object"==typeof n?n.display?n.display:n.value?n.value:null:n:null}}]),d}();return i.\u0275fac=function(e){return new(e||i)(t.Y36(U.I),t.Y36(D.uw),t.Y36(J.FW),t.Y36(k.Xj),t.Y36(N.B))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-agent-modification-form"]],inputs:{mod:"mod"},outputs:{modDeleted:"modDeleted"},decls:26,vars:9,consts:[[1,"code-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete code",3,"click"],["svgIcon","delete_forever"],[1,"flex-column","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Agent Substance","header","Agent Substance",3,"subuuid","selectionUpdated"],[1,"flex-column","form-content"],[1,"form-row"],["key","Agent Modification Agent Modification Process","title","Modification Process",3,"model","valueChange"],["key","Agent Modification Agent Modification Type","title","Modification Type",3,"model","valueChange"],["key","Agent Modification Agent Modification Role","title","Modification Role",3,"model","valueChange"],[1,"amount"],[1,"label","amt-label"],["mat-icon-button","","matTooltip","add",3,"click"],["svgIcon","add_circle_outline"],[1,"amount-display"],[4,"ngIf"],[1,"group"],["matInput","","placeholder","Group","required","","name","group",3,"ngModel","ngModelChange"],[1,"access"],[3,"access","accessOut"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t.YNc(1,E,4,0,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"button",3),t.NdJ("click",function(){return n.deleteCode()}),t._UZ(4,"mat-icon",4),t.qZA(),t.qZA(),t.TgZ(5,"div",5),t.TgZ(6,"app-substance-selector",6),t.NdJ("selectionUpdated",function(c){return n.relatedSubstanceUpdated(c)}),t.qZA(),t.qZA(),t.TgZ(7,"div",7),t.TgZ(8,"div",8),t.TgZ(9,"app-cv-input",9),t.NdJ("valueChange",function(c){return n.updateProcess(c)}),t.qZA(),t.TgZ(10,"app-cv-input",10),t.NdJ("valueChange",function(c){return n.mod.agentModificationType=c}),t.qZA(),t.TgZ(11,"app-cv-input",11),t.NdJ("valueChange",function(c){return n.mod.agentModificationRole=c}),t.qZA(),t.qZA(),t.TgZ(12,"div",8),t.TgZ(13,"div",12),t.TgZ(14,"div",13),t._uU(15," Amount "),t.qZA(),t.TgZ(16,"button",14),t.NdJ("click",function(){return n.openAmountDialog()}),t._UZ(17,"mat-icon",15),t.qZA(),t.TgZ(18,"div",16),t.YNc(19,Q,2,1,"div",17),t.qZA(),t.qZA(),t.TgZ(20,"mat-form-field",18),t.TgZ(21,"input",19),t.NdJ("ngModelChange",function(c){return n.mod.modificationGroup=c}),t.qZA(),t.qZA(),t.TgZ(22,"div",20),t.TgZ(23,"app-access-manager",21),t.NdJ("accessOut",function(c){return n.updateAccess(c)}),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(24,"div",8),t._UZ(25,"app-audit-info",22),t.qZA()),2&e&&(t.xp6(1),t.Q6J("ngIf",n.mod.$$deletedCode),t.xp6(5),t.Q6J("subuuid",n.relatedSubstanceUuid),t.xp6(3),t.Q6J("model",n.mod.agentModificationProcess),t.xp6(1),t.Q6J("model",n.mod.agentModificationType),t.xp6(1),t.Q6J("model",n.mod.agentModificationRole),t.xp6(8),t.Q6J("ngIf",n.mod.amount),t.xp6(2),t.Q6J("ngModel",n.mod.modificationGroup),t.xp6(2),t.Q6J("access",n.mod.access),t.xp6(2),t.Q6J("source",n.mod))},styles:[".code-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:25%;width:25%} .related-substance img{max-width:125px!important;margin:auto}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:start;align-self:flex-start}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15.5px}.references-container[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .location-type[_ngcontent-%COMP%] .extent[_ngcontent-%COMP%] .mod-type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:10px}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:22%}"]}),i}();function w(i,d){1&i&&t._UZ(0,"mat-divider",7),2&i&&t.Q6J("inset",!0)}function R(i,d){if(1&i){var e=t.EpF();t.TgZ(0,"div",4),t.TgZ(1,"app-agent-modification-form",5),t.NdJ("modDeleted",function(){return t.CHM(e),t.oxw().deleteAgentModification()}),t.qZA(),t.YNc(2,w,1,1,"mat-divider",6),t.qZA()}if(2&i){var n=d.$implicit,a=d.last;t.Q6J("id","substance-agent-modification-"+d.index),t.xp6(1),t.Q6J("mod",n),t.xp6(1),t.Q6J("ngIf",!a)}}function Y(i,d){if(1&i){var e=t.EpF();t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"button",8),t.NdJ("click",function(){return t.CHM(e),t.oxw().addStructuralModification()}),t._uU(3," Add Modification "),t._UZ(4,"mat-icon",9),t.qZA(),t.qZA()}}var j=function(){var i=function(d){(0,T.Z)(n,d);var e=(0,Z.Z)(n);function n(a,c,r){var s;return(0,f.Z)(this,n),(s=e.call(this,r)).substanceFormAgentModificationsService=a,s.scrollToService=c,s.gaService=r,s.subscriptions=[],s.analyticsEventCategory="substance form agent modifications",s}return(0,m.Z)(n,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Agent Modifications")}},{key:"ngAfterViewInit",value:function(){var c=this;this.canAddItemUpdate.emit(!0);var r=this.substanceFormAgentModificationsService.substanceAgentModifications.subscribe(function(s){c.modifications=s});this.subscriptions.push(r)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(c){c.unsubscribe()}),this.componentDestroyed.emit()}},{key:"addItem",value:function(){this.addStructuralModification()}},{key:"addStructuralModification",value:function(){var c=this;this.substanceFormAgentModificationsService.addSubstanceAgentModification(),setTimeout(function(){c.scrollToService.scrollToElement("substance-agent-modification-0","center")})}},{key:"deleteAgentModification",value:function(c){this.substanceFormAgentModificationsService.deleteSubstanceAgentModification(c)}}]),n}(P.u);return i.\u0275fac=function(e){return new(e||i)(t.Y36(S.O),t.Y36(F.i),t.Y36(_.$))},i.\u0275cmp=t.Xpm({type:i,selectors:[["app-substance-form-agent-modifications-card"]],features:[t.qOj],decls:4,vars:2,consts:[[1,"flex-row"],[1,"middle-fill"],["class","alternate-backgrounds",3,"id",4,"ngFor","ngForOf"],["class","flex-row",4,"ngIf"],[1,"alternate-backgrounds",3,"id"],[3,"mod","modDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(e,n){1&e&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.qZA(),t.YNc(2,R,3,3,"div",2),t.YNc(3,Y,5,0,"div",3)),2&e&&(t.xp6(2),t.Q6J("ngForOf",n.modifications),t.xp6(1),t.Q6J("ngIf",n.modifications&&n.modifications.length>0))},directives:[u.sg,A,u.O5,M.d,p.lW,g.Hw],styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#0000001f}.code[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.code[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.code[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.code[_ngcontent-%COMP%] .mat-expansion-panel, .code[_ngcontent-%COMP%] .mat-table, .code[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),i}(),L=o(63200),V=o(24459),$=o(16667),z=o(84577),G=o(14900),H=function(){var i=(0,m.Z)(function d(){(0,f.Z)(this,d)});return i.\u0275fac=function(e){return new(e||i)},i.\u0275mod=t.oAB({type:i}),i.\u0275inj=t.cJS({imports:[[u.ez,y.o.forChild(j),b.O,M.t,g.Ps,p.ot,x.w,C.lN,l.UX,l.u5,O.TU,h.c,L.U]]}),i}();t.B6R(A,[u.O5,p.lW,g.Hw,V.Q,$.S,C.KE,h.Nt,l.Fj,l.Q7,l.JJ,l.On,z.h,G.n],[])}}]); -//# sourceMappingURL=6684.4da283839092a8ce.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6710.6df56b0136eb6d4a.js b/frontend/src/main/resources/static/6710.5f0dbe107aeddae1.js similarity index 94% rename from frontend/src/main/resources/static/6710.6df56b0136eb6d4a.js rename to frontend/src/main/resources/static/6710.5f0dbe107aeddae1.js index 649ac0f..fd2ee62 100644 --- a/frontend/src/main/resources/static/6710.6df56b0136eb6d4a.js +++ b/frontend/src/main/resources/static/6710.5f0dbe107aeddae1.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6710],{36710:function(E,m,u){u.r(m),u.d(m,{SubstanceNaSugarsModule:function(){return J}});var f=u(48047),d=u(78069),p=u(36362),h=u(95106),v=u(24582),C=u(7318),b=u(2756),y=u(50253),N=u(18291),t=u(76442),r=u(97217);function Z(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Sugar "),t.qZA())}function T(n,e){if(1&n&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&n){var s=e.$implicit,c=t.oxw();t.xp6(1),t.hij(" ",c.getSugarDisplay(s.sugar)," ")}}function x(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Structure "),t.qZA())}function D(n,e){if(1&n&&(t.TgZ(0,"td",11),t._UZ(1,"img",12),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.Q6J("src",s.structure,t.LSH)}}function A(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Site Range "),t.qZA())}function U(n,e){if(1&n&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.sitesShorthand," ")}}function Y(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Site Count "),t.qZA())}function R(n,e){if(1&n&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&n){var s=e.$implicit,c=t.oxw();t.xp6(1),t.hij(" ",c.getSiteCount(s.sites)," ")}}function Q(n,e){1&n&&t._UZ(0,"tr",13)}function I(n,e){1&n&&t._UZ(0,"tr",14)}var O=function(){var n=function(e){(0,v.Z)(c,e);var s=(0,C.Z)(c);function c(o){var a;return(0,d.Z)(this,c),(a=s.call(this)).cvService=o,a.displayedColumns=["Sugar","Structure","Site Range","Site Count"],a.substanceUpdated=new y.x,a.subscriptions=[],a}return(0,f.Z)(c,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(i){if(a.substance=i,null!=a.substance&&null!=a.substance.nucleicAcid&&null!=a.substance.nucleicAcid.sugars&&a.substance.nucleicAcid.sugars.length){a.sugars=a.substance.nucleicAcid.sugars,a.countUpdate.emit(a.sugars.length);var g=a.cvService.getDomainVocabulary("NUCLEIC_ACID_SUGAR").subscribe(function(S){a.vocabulary=S.NUCLEIC_ACID_SUGAR.dictionary,a.sugars.forEach(function(l){l.structure=a.vocabulary[l.sugar]?a.cvService.getStructureUrlFragment(a.vocabulary[l.sugar].fragmentStructure):null})});a.subscriptions.push(g),a.getTotalSites()}})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getTotalSites",value:function(){this.siteCount=0;var i,a=(0,h.Z)(this.sugars);try{for(a.s();!(i=a.n()).done;)this.siteCount=this.siteCount+i.value.sites.length}catch(S){a.e(S)}finally{a.f()}}},{key:"getSiteCount",value:function(a){return a.length+"/"+this.siteCount}},{key:"getSugarDisplay",value:function(a){return this.vocabulary&&this.vocabulary[a]&&this.vocabulary[a].display?this.vocabulary[a].display:a}}]),c}(b.B);return n.\u0275fac=function(s){return new(s||n)(t.Y36(N.I))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-na-sugars"]],features:[t.qOj],decls:16,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","Sugar"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Structure"],["matColumnDef","Site Range"],["matColumnDef","Site Count"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","","style","height:145px",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[1,"structure",3,"src"],["mat-header-row",""],["mat-row","",2,"height","145px"]],template:function(s,c){1&s&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,Z,2,0,"th",3),t.YNc(4,T,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,x,2,0,"th",3),t.YNc(7,D,2,1,"td",4),t.BQk(),t.ynx(8,6),t.YNc(9,A,2,0,"th",3),t.YNc(10,U,2,1,"td",4),t.BQk(),t.ynx(11,7),t.YNc(12,Y,2,0,"th",3),t.YNc(13,R,2,1,"td",4),t.BQk(),t.YNc(14,Q,1,0,"tr",8),t.YNc(15,I,1,0,"tr",9),t.qZA(),t.qZA()),2&s&&(t.xp6(1),t.Q6J("dataSource",c.sugars),t.xp6(13),t.Q6J("matHeaderRowDef",c.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",c.displayedColumns))},directives:[r.BZ,r.w1,r.fO,r.ge,r.Dz,r.ev,r.as,r.XQ,r.nj,r.Gk],styles:[".structure[_ngcontent-%COMP%]{margin:-12px}"]}),n}(),j=u(64061),B=u(43365),H=u(26439),M=u(33865),J=function(){var n=(0,f.Z)(function e(){(0,d.Z)(this,e)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[p.ez,j.o.forChild(O),r.p0,M.HT,H.TU,B.c]]}),n}()}}]); -//# sourceMappingURL=6710.6df56b0136eb6d4a.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[6710],{36710:function(E,m,u){u.r(m),u.d(m,{SubstanceNaSugarsModule:function(){return J}});var f=u(1884),d=u(39117),p=u(36362),h=u(44014),v=u(46751),C=u(56101),b=u(2756),y=u(50253),N=u(18291),t=u(86613),r=u(97217);function Z(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Sugar "),t.qZA())}function T(n,e){if(1&n&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&n){var s=e.$implicit,c=t.oxw();t.xp6(1),t.hij(" ",c.getSugarDisplay(s.sugar)," ")}}function x(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Structure "),t.qZA())}function D(n,e){if(1&n&&(t.TgZ(0,"td",11),t._UZ(1,"img",12),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.Q6J("src",s.structure,t.LSH)}}function A(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Site Range "),t.qZA())}function U(n,e){if(1&n&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.sitesShorthand," ")}}function Y(n,e){1&n&&(t.TgZ(0,"th",10),t._uU(1," Site Count "),t.qZA())}function R(n,e){if(1&n&&(t.TgZ(0,"td",11),t._uU(1),t.qZA()),2&n){var s=e.$implicit,c=t.oxw();t.xp6(1),t.hij(" ",c.getSiteCount(s.sites)," ")}}function Q(n,e){1&n&&t._UZ(0,"tr",13)}function I(n,e){1&n&&t._UZ(0,"tr",14)}var O=function(){var n=function(e){(0,v.Z)(c,e);var s=(0,C.Z)(c);function c(o){var a;return(0,d.Z)(this,c),(a=s.call(this)).cvService=o,a.displayedColumns=["Sugar","Structure","Site Range","Site Count"],a.substanceUpdated=new y.x,a.subscriptions=[],a}return(0,f.Z)(c,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(i){if(a.substance=i,null!=a.substance&&null!=a.substance.nucleicAcid&&null!=a.substance.nucleicAcid.sugars&&a.substance.nucleicAcid.sugars.length){a.sugars=a.substance.nucleicAcid.sugars,a.countUpdate.emit(a.sugars.length);var g=a.cvService.getDomainVocabulary("NUCLEIC_ACID_SUGAR").subscribe(function(S){a.vocabulary=S.NUCLEIC_ACID_SUGAR.dictionary,a.sugars.forEach(function(l){l.structure=a.vocabulary[l.sugar]?a.cvService.getStructureUrlFragment(a.vocabulary[l.sugar].fragmentStructure):null})});a.subscriptions.push(g),a.getTotalSites()}})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getTotalSites",value:function(){this.siteCount=0;var i,a=(0,h.Z)(this.sugars);try{for(a.s();!(i=a.n()).done;)this.siteCount=this.siteCount+i.value.sites.length}catch(S){a.e(S)}finally{a.f()}}},{key:"getSiteCount",value:function(a){return a.length+"/"+this.siteCount}},{key:"getSugarDisplay",value:function(a){return this.vocabulary&&this.vocabulary[a]&&this.vocabulary[a].display?this.vocabulary[a].display:a}}]),c}(b.B);return n.\u0275fac=function(s){return new(s||n)(t.Y36(N.I))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-na-sugars"]],features:[t.qOj],decls:16,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","Sugar"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Structure"],["matColumnDef","Site Range"],["matColumnDef","Site Count"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","","style","height:145px",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[1,"structure",3,"src"],["mat-header-row",""],["mat-row","",2,"height","145px"]],template:function(s,c){1&s&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,Z,2,0,"th",3),t.YNc(4,T,2,1,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,x,2,0,"th",3),t.YNc(7,D,2,1,"td",4),t.BQk(),t.ynx(8,6),t.YNc(9,A,2,0,"th",3),t.YNc(10,U,2,1,"td",4),t.BQk(),t.ynx(11,7),t.YNc(12,Y,2,0,"th",3),t.YNc(13,R,2,1,"td",4),t.BQk(),t.YNc(14,Q,1,0,"tr",8),t.YNc(15,I,1,0,"tr",9),t.qZA(),t.qZA()),2&s&&(t.xp6(1),t.Q6J("dataSource",c.sugars),t.xp6(13),t.Q6J("matHeaderRowDef",c.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",c.displayedColumns))},directives:[r.BZ,r.w1,r.fO,r.ge,r.Dz,r.ev,r.as,r.XQ,r.nj,r.Gk],styles:[".structure[_ngcontent-%COMP%]{margin:-12px}"]}),n}(),j=u(64061),B=u(43365),H=u(26439),M=u(33865),J=function(){var n=(0,f.Z)(function e(){(0,d.Z)(this,e)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[p.ez,j.o.forChild(O),r.p0,M.HT,H.TU,B.c]]}),n}()}}]); +//# sourceMappingURL=6710.5f0dbe107aeddae1.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/6710.6df56b0136eb6d4a.js.map b/frontend/src/main/resources/static/6710.5f0dbe107aeddae1.js.map similarity index 99% rename from frontend/src/main/resources/static/6710.6df56b0136eb6d4a.js.map rename to frontend/src/main/resources/static/6710.5f0dbe107aeddae1.js.map index a4c1752..f56ab81 100644 --- a/frontend/src/main/resources/static/6710.6df56b0136eb6d4a.js.map +++ b/frontend/src/main/resources/static/6710.5f0dbe107aeddae1.js.map @@ -1 +1 @@ -{"version":3,"mappings":"+TAIMA,iBAAuCA,mBAAMA,kCAC7CA,iBAAsCA,SAAiCA,0CAAjCA,0EAIpCA,iBAAuCA,uBAAUA,kCACjDA,iBAAsCA,kBAAqDA,gCAA5BA,+DAIjEA,iBAAuCA,wBAAWA,kCAClDA,iBAAsCA,SAAyBA,gCAAzBA,gEAItCA,iBAAuCA,wBAAWA,kCAClDA,iBAAsCA,SAA8BA,0CAA9BA,sEAGxCA,sCACAA,iBCbG,IAAMC,EAAb,eAAaA,EAAb,0CAQE,WACSC,GAAsC,6BAE7CC,gBAFOD,YAPTC,mBAA6B,CAAC,QAAU,YAAa,aAAe,cAGpEA,mBAAmB,IAAIC,IACvBD,gBAAqC,GAGUA,EATjD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAE9B,GADAJ,EAAKK,UAAYA,EACK,MAAlBL,EAAKK,WAC0B,MAA9BL,EAAKK,UAAUC,aACsB,MAArCN,EAAKK,UAAUC,YAAYC,QAC3BP,EAAKK,UAAUC,YAAYC,OAAOC,OAAQ,CAC7CR,EAAKO,OAASP,EAAKK,UAAUC,YAAYC,OACzCP,EAAKS,YAAYC,KAAKV,EAAKO,OAAOC,QAClC,IAAMG,EAAkBX,EAAKD,UAAUa,oBAAoB,sBAAsBR,UAAU,YACzFJ,EAAKa,WAAaC,EAASC,mBAAsBC,WACjDhB,EAAKO,OAAOU,QAAQ,YAEhBC,EAAMC,UADLnB,EAAKa,WAAWK,EAAMA,OACLlB,EAAKD,UAAUqB,wBAAwBpB,EAAKa,WAAWK,EAAMA,OAAOG,mBAEpE,SAIxBrB,EAAKsB,cAAcC,KAAKZ,GACxBX,EAAKwB,qBAlCb,yBAuCE,WACEtB,KAAKoB,cAAcL,QAAQ,YACzBQ,EAAaC,kBAzCnB,2BA6CE,WACExB,KAAKyB,UAAY,EADN,gBAESzB,KAAKK,QAFd,IAEX,2BACEL,KAAKyB,UAAYzB,KAAKyB,UADSC,QACSC,MAAMrB,aAHrCsB,2BA7Cf,0BAqDE,SAAaD,GACX,OAAOA,EAAMrB,OAAS,IAAMN,KAAKyB,YAtDrC,6BAyDE,SAAgBI,GACd,OAAI7B,KAAKW,YAAcX,KAAKW,WAAWkB,IAAS7B,KAAKW,WAAWkB,GAAMC,QAC7D9B,KAAKW,WAAWkB,GAAMC,QAEtBD,MA7DbE,GAAgDC,kDAAnCpC,GAA0BD,qCAA1BC,EAA0BqC,qkBDXvCtC,iBACEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACIA,sBACAA,sBACFA,QAEFA,WACEA,sBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,uBACAA,uBACFA,QACFA,eAzBmBA,sCAsBKA,sDACoCA,gLCb/CC,EAAb,+CCUasC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCzC,GACtC0C,KACAC,KACAC,KACAC,QAISP,EAAb","names":["i0","SubstanceNaSugarsComponent","cvService","a","Subject","this","substanceUpdated","subscribe","substance","nucleicAcid","sugars","length","countUpdate","emit","cvSubscription","getDomainVocabulary","vocabulary","response","NUCLEIC_ACID_SUGAR","dictionary","forEach","sugar","structure","getStructureUrlFragment","fragmentStructure","subscriptions","push","getTotalSites","subscription","unsubscribe","siteCount","i","sites","S","term","display","c","SubstanceCardBase","selectors","SubstanceNaSugarsModule","f","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-na-sugars/substance-na-sugars.component.html","./src/app/core/substance-details/substance-na-sugars/substance-na-sugars.component.ts","./src/app/core/substance-details/substance-na-sugars/substance-na-sugars.module.ts"],"sourcesContent":["
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Sugar {{getSugarDisplay(sugar.sugar)}} Structure Site Range {{sugar.sitesShorthand}} Site Count {{getSiteCount(sugar.sites)}}
\r\n
\r\n","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {Sugar, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\r\n\r\n@Component({\r\n selector: 'app-substance-na-sugars',\r\n templateUrl: './substance-na-sugars.component.html',\r\n styleUrls: ['./substance-na-sugars.component.scss']\r\n})\r\nexport class SubstanceNaSugarsComponent extends SubstanceCardBase implements OnInit, OnDestroy {\r\n sugars: Array;\r\n displayedColumns: string[] = ['Sugar' , 'Structure', 'Site Range' , 'Site Count' ];\r\n siteCount: number;\r\n vocabulary: any;\r\n substanceUpdated = new Subject();\r\n subscriptions: Array = [];\r\n\r\n constructor(\r\n public cvService: ControlledVocabularyService,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null\r\n && this.substance.nucleicAcid != null\r\n && this.substance.nucleicAcid.sugars != null\r\n && this.substance.nucleicAcid.sugars.length) {\r\n this.sugars = this.substance.nucleicAcid.sugars;\r\n this.countUpdate.emit(this.sugars.length);\r\n const cvSubscription = this.cvService.getDomainVocabulary('NUCLEIC_ACID_SUGAR').subscribe(response => {\r\n this.vocabulary = response['NUCLEIC_ACID_SUGAR'].dictionary;\r\n this.sugars.forEach(sugar => {\r\n if(this.vocabulary[sugar.sugar]) {\r\n sugar.structure = this.cvService.getStructureUrlFragment(this.vocabulary[sugar.sugar].fragmentStructure);\r\n } else {\r\n sugar.structure = null;\r\n }\r\n })\r\n });\r\n this.subscriptions.push(cvSubscription);\r\n this.getTotalSites();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach(subscription => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n\r\n getTotalSites() {\r\n this.siteCount = 0;\r\n for (const sugar of this.sugars) {\r\n this.siteCount = this.siteCount + sugar.sites.length;\r\n }\r\n\r\n }\r\n\r\n getSiteCount(sites: Array): string {\r\n return sites.length + '/' + this.siteCount;\r\n }\r\n\r\n getSugarDisplay(term: string): string {\r\n if (this.vocabulary && this.vocabulary[term] && this.vocabulary[term].display) {\r\n return this.vocabulary[term].display;\r\n } else {\r\n return term;\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {SubstanceNaSugarsComponent} from './substance-na-sugars.component';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNaSugarsComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceNaSugarsComponent]\r\n})\r\nexport class SubstanceNaSugarsModule { }\r\n"],"sourceRoot":"webpack:///","file":"6710.6df56b0136eb6d4a.js"} \ No newline at end of file +{"version":3,"mappings":"+TAIMA,iBAAuCA,mBAAMA,kCAC7CA,iBAAsCA,SAAiCA,0CAAjCA,0EAIpCA,iBAAuCA,uBAAUA,kCACjDA,iBAAsCA,kBAAqDA,gCAA5BA,+DAIjEA,iBAAuCA,wBAAWA,kCAClDA,iBAAsCA,SAAyBA,gCAAzBA,gEAItCA,iBAAuCA,wBAAWA,kCAClDA,iBAAsCA,SAA8BA,0CAA9BA,sEAGxCA,sCACAA,iBCbG,IAAMC,EAAb,eAAaA,EAAb,0CAQE,WACSC,GAAsC,6BAE7CC,gBAFOD,YAPTC,mBAA6B,CAAC,QAAU,YAAa,aAAe,cAGpEA,mBAAmB,IAAIC,IACvBD,gBAAqC,GAGUA,EATjD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAE9B,GADAJ,EAAKK,UAAYA,EACK,MAAlBL,EAAKK,WAC0B,MAA9BL,EAAKK,UAAUC,aACsB,MAArCN,EAAKK,UAAUC,YAAYC,QAC3BP,EAAKK,UAAUC,YAAYC,OAAOC,OAAQ,CAC7CR,EAAKO,OAASP,EAAKK,UAAUC,YAAYC,OACzCP,EAAKS,YAAYC,KAAKV,EAAKO,OAAOC,QAClC,IAAMG,EAAkBX,EAAKD,UAAUa,oBAAoB,sBAAsBR,UAAU,YACzFJ,EAAKa,WAAaC,EAASC,mBAAsBC,WACjDhB,EAAKO,OAAOU,QAAQ,YAEhBC,EAAMC,UADLnB,EAAKa,WAAWK,EAAMA,OACLlB,EAAKD,UAAUqB,wBAAwBpB,EAAKa,WAAWK,EAAMA,OAAOG,mBAEpE,SAIxBrB,EAAKsB,cAAcC,KAAKZ,GACxBX,EAAKwB,qBAlCb,yBAuCE,WACEtB,KAAKoB,cAAcL,QAAQ,YACzBQ,EAAaC,kBAzCnB,2BA6CE,WACExB,KAAKyB,UAAY,EADN,gBAESzB,KAAKK,QAFd,IAEX,2BACEL,KAAKyB,UAAYzB,KAAKyB,UADSC,QACSC,MAAMrB,aAHrCsB,2BA7Cf,0BAqDE,SAAaD,GACX,OAAOA,EAAMrB,OAAS,IAAMN,KAAKyB,YAtDrC,6BAyDE,SAAgBI,GACd,OAAI7B,KAAKW,YAAcX,KAAKW,WAAWkB,IAAS7B,KAAKW,WAAWkB,GAAMC,QAC7D9B,KAAKW,WAAWkB,GAAMC,QAEtBD,MA7DbE,GAAgDC,kDAAnCpC,GAA0BD,qCAA1BC,EAA0BqC,qkBDXvCtC,iBACEA,mBAEEA,WACEA,sBACAA,sBACFA,QAEAA,WACIA,sBACAA,sBACFA,QAEFA,WACEA,sBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,uBACAA,uBACFA,QACFA,eAzBmBA,sCAsBKA,sDACoCA,gLCb/CC,EAAb,+CCUasC,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCzC,GACtC0C,KACAC,KACAC,KACAC,QAISP,EAAb","names":["i0","SubstanceNaSugarsComponent","cvService","a","Subject","this","substanceUpdated","subscribe","substance","nucleicAcid","sugars","length","countUpdate","emit","cvSubscription","getDomainVocabulary","vocabulary","response","NUCLEIC_ACID_SUGAR","dictionary","forEach","sugar","structure","getStructureUrlFragment","fragmentStructure","subscriptions","push","getTotalSites","subscription","unsubscribe","siteCount","i","sites","S","term","display","c","SubstanceCardBase","selectors","SubstanceNaSugarsModule","f","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule"],"sources":["./src/app/core/substance-details/substance-na-sugars/substance-na-sugars.component.html","./src/app/core/substance-details/substance-na-sugars/substance-na-sugars.component.ts","./src/app/core/substance-details/substance-na-sugars/substance-na-sugars.module.ts"],"sourcesContent":["
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Sugar {{getSugarDisplay(sugar.sugar)}} Structure Site Range {{sugar.sitesShorthand}} Site Count {{getSiteCount(sugar.sites)}}
\r\n
\r\n","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {Sugar, Site, SubstanceDetail} from '../../substance/substance.model';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\r\n\r\n@Component({\r\n selector: 'app-substance-na-sugars',\r\n templateUrl: './substance-na-sugars.component.html',\r\n styleUrls: ['./substance-na-sugars.component.scss']\r\n})\r\nexport class SubstanceNaSugarsComponent extends SubstanceCardBase implements OnInit, OnDestroy {\r\n sugars: Array;\r\n displayedColumns: string[] = ['Sugar' , 'Structure', 'Site Range' , 'Site Count' ];\r\n siteCount: number;\r\n vocabulary: any;\r\n substanceUpdated = new Subject();\r\n subscriptions: Array = [];\r\n\r\n constructor(\r\n public cvService: ControlledVocabularyService,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null\r\n && this.substance.nucleicAcid != null\r\n && this.substance.nucleicAcid.sugars != null\r\n && this.substance.nucleicAcid.sugars.length) {\r\n this.sugars = this.substance.nucleicAcid.sugars;\r\n this.countUpdate.emit(this.sugars.length);\r\n const cvSubscription = this.cvService.getDomainVocabulary('NUCLEIC_ACID_SUGAR').subscribe(response => {\r\n this.vocabulary = response['NUCLEIC_ACID_SUGAR'].dictionary;\r\n this.sugars.forEach(sugar => {\r\n if(this.vocabulary[sugar.sugar]) {\r\n sugar.structure = this.cvService.getStructureUrlFragment(this.vocabulary[sugar.sugar].fragmentStructure);\r\n } else {\r\n sugar.structure = null;\r\n }\r\n })\r\n });\r\n this.subscriptions.push(cvSubscription);\r\n this.getTotalSites();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach(subscription => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n\r\n getTotalSites() {\r\n this.siteCount = 0;\r\n for (const sugar of this.sugars) {\r\n this.siteCount = this.siteCount + sugar.sites.length;\r\n }\r\n\r\n }\r\n\r\n getSiteCount(sites: Array): string {\r\n return sites.length + '/' + this.siteCount;\r\n }\r\n\r\n getSugarDisplay(term: string): string {\r\n if (this.vocabulary && this.vocabulary[term] && this.vocabulary[term].display) {\r\n return this.vocabulary[term].display;\r\n } else {\r\n return term;\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {SubstanceNaSugarsComponent} from './substance-na-sugars.component';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNaSugarsComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ],\r\n declarations: [SubstanceNaSugarsComponent]\r\n})\r\nexport class SubstanceNaSugarsModule { }\r\n"],"sourceRoot":"webpack:///","file":"6710.5f0dbe107aeddae1.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7010.27a434b8b589cafe.js b/frontend/src/main/resources/static/7010.bbde5299bdd5f296.js similarity index 95% rename from frontend/src/main/resources/static/7010.27a434b8b589cafe.js rename to frontend/src/main/resources/static/7010.bbde5299bdd5f296.js index a843496..8d7d3fb 100644 --- a/frontend/src/main/resources/static/7010.27a434b8b589cafe.js +++ b/frontend/src/main/resources/static/7010.bbde5299bdd5f296.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7010],{87010:function(tt,v,o){o.r(v),o.d(v,{SubstanceHistoryModule:function(){return _}});var f=o(48047),p=o(78069),m=o(36362),Z=o(24582),S=o(7318),T=o(2756),x=o(12570),H=o(50253),A=o(22544),t=o(76442),h=o(98002),U=o(83448),Y=o(66088),y=o(95758),u=o(97217);function N(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Displayed "),t.qZA())}function D(n,e){if(1&n){var s=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"button",16),t.NdJ("click",function(){t.CHM(s);var l=t.oxw().$implicit;return t.oxw().switchVersion(l.version)}),t._uU(2,"View"),t.qZA(),t.qZA()}}function V(n,e){1&n&&(t.TgZ(0,"span",17),t._uU(1," Viewing "),t.qZA())}function Q(n,e){if(1&n&&(t.TgZ(0,"td",13),t.YNc(1,D,3,0,"span",14),t.YNc(2,V,2,0,"span",15),t.qZA()),2&n){var s=e.$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngIf",a.substance.version!=s.version),t.xp6(1),t.Q6J("ngIf",a.substance.version==s.version)}}function I(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Version "),t.qZA())}function B(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.version," ")}}function j(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Version Comments "),t.qZA())}function J(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.comments," ")}}function M(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Editor"),t.qZA())}function R(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.editor," ")}}function $(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Change Date "),t.qZA())}function F(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.ALo(2,"date"),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,s.created,"short")," ")}}function O(n,e){1&n&&t._UZ(0,"th",12)}function w(n,e){if(1&n){var s=t.EpF();t.TgZ(0,"td",13),t.TgZ(1,"button",16),t.NdJ("click",function(){var r=t.CHM(s).$implicit;return t.oxw().restoreVersion(r.version)}),t._uU(2,"Restore"),t.qZA(),t.qZA()}}function z(n,e){1&n&&t._UZ(0,"tr",18)}function E(n,e){1&n&&t._UZ(0,"tr",19)}var X=function(){var n=function(e){(0,Z.Z)(a,e);var s=(0,S.Z)(a);function a(l,r,i,d,b){var c;return(0,p.Z)(this,a),(c=s.call(this)).substanceService=l,c.router=r,c.loadingService=i,c.overlayContainerService=d,c.dialog=b,c.displayedColumns=["view","version","versionComments","editor","changeDate","restore"],c.substanceUpdated=new H.x,c}return(0,f.Z)(a,[{key:"ngOnInit",value:function(){var r=this;this.substanceService.getEdits(this.substance.uuid).subscribe(function(i){r.versions=i},function(i){}),this.substanceService.checkVersion(this.substance.uuid).subscribe(function(i){r.latest=i}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var r=this;this.substanceUpdated.subscribe(function(i){r.substance=i})}},{key:"switchVersion",value:function(r){this.router.navigate(["/substances/"+this.substance.uuid+"/v/"+r])}},{key:"restoreVersion",value:function(r){var i=this,d=this.dialog.open(A.h,{data:{substance:this.substance,version:r,latest:this.latest},width:"650px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",d.afterClosed().subscribe(function(c){i.overlayContainer.style.zIndex=null,c&&"success"===c&&(i.router.onSameUrlNavigation="reload",i.router.navigate(["/substances/"+i.substance.uuid+"/"]))})}}]),a}(T.B);return n.\u0275fac=function(s){return new(s||n)(t.Y36(x.d),t.Y36(h.F0),t.Y36(U.b),t.Y36(Y.Xj),t.Y36(y.uw))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-history"]],features:[t.qOj],decls:22,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","view"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","version"],["matColumnDef","versionComments"],["matColumnDef","editor"],["matColumnDef","changeDate"],["matColumnDef","restore"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],["class","centered",4,"ngIf"],[1,"mat-raised-button","mat-primary",3,"click"],[1,"centered"],["mat-header-row",""],["mat-row",""]],template:function(s,a){1&s&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,N,2,0,"th",3),t.YNc(4,Q,3,2,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,I,2,0,"th",3),t.YNc(7,B,2,1,"td",4),t.BQk(),t.ynx(8,6),t.YNc(9,j,2,0,"th",3),t.YNc(10,J,2,1,"td",4),t.BQk(),t.ynx(11,7),t.YNc(12,M,2,0,"th",3),t.YNc(13,R,2,1,"td",4),t.BQk(),t.ynx(14,8),t.YNc(15,$,2,0,"th",3),t.YNc(16,F,3,4,"td",4),t.BQk(),t.ynx(17,9),t.YNc(18,O,1,0,"th",3),t.YNc(19,w,3,0,"td",4),t.BQk(),t.YNc(20,z,1,0,"tr",10),t.YNc(21,E,1,0,"tr",11),t.qZA(),t.qZA()),2&s&&(t.xp6(1),t.Q6J("dataSource",a.versions),t.xp6(19),t.Q6J("matHeaderRowDef",a.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",a.displayedColumns))},directives:[u.BZ,u.w1,u.fO,u.ge,u.Dz,u.ev,m.O5,u.as,u.XQ,u.nj,u.Gk],pipes:[m.uU],styles:[".centered[_ngcontent-%COMP%]{text-align:center}"]}),n}(),P=o(64061),G=o(43365),L=o(26439),C=o(65590),K=o(64316),W=o(34972),k=o(33865),g=o(90587),q=o(38277),_=function(){var n=(0,f.Z)(function e(){(0,p.Z)(this,e)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[m.ez,P.o.forChild(X),u.p0,k.HT,L.TU,G.c,g.UX,g.u5,q.V,C.Ps,y.Is,K.JX,W.dp,h.Bz,C.Ps]]}),n}()}}]); -//# sourceMappingURL=7010.27a434b8b589cafe.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7010],{87010:function(tt,v,o){o.r(v),o.d(v,{SubstanceHistoryModule:function(){return _}});var f=o(1884),p=o(39117),m=o(36362),Z=o(46751),S=o(56101),T=o(2756),x=o(12570),H=o(50253),A=o(22544),t=o(86613),h=o(98002),U=o(93392),Y=o(54244),y=o(95758),u=o(97217);function N(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Displayed "),t.qZA())}function D(n,e){if(1&n){var s=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"button",16),t.NdJ("click",function(){t.CHM(s);var l=t.oxw().$implicit;return t.oxw().switchVersion(l.version)}),t._uU(2,"View"),t.qZA(),t.qZA()}}function V(n,e){1&n&&(t.TgZ(0,"span",17),t._uU(1," Viewing "),t.qZA())}function Q(n,e){if(1&n&&(t.TgZ(0,"td",13),t.YNc(1,D,3,0,"span",14),t.YNc(2,V,2,0,"span",15),t.qZA()),2&n){var s=e.$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngIf",a.substance.version!=s.version),t.xp6(1),t.Q6J("ngIf",a.substance.version==s.version)}}function I(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Version "),t.qZA())}function B(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.version," ")}}function j(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Version Comments "),t.qZA())}function J(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.comments," ")}}function M(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Editor"),t.qZA())}function R(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",s.editor," ")}}function $(n,e){1&n&&(t.TgZ(0,"th",12),t._uU(1," Change Date "),t.qZA())}function F(n,e){if(1&n&&(t.TgZ(0,"td",13),t._uU(1),t.ALo(2,"date"),t.qZA()),2&n){var s=e.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,s.created,"short")," ")}}function O(n,e){1&n&&t._UZ(0,"th",12)}function w(n,e){if(1&n){var s=t.EpF();t.TgZ(0,"td",13),t.TgZ(1,"button",16),t.NdJ("click",function(){var r=t.CHM(s).$implicit;return t.oxw().restoreVersion(r.version)}),t._uU(2,"Restore"),t.qZA(),t.qZA()}}function z(n,e){1&n&&t._UZ(0,"tr",18)}function E(n,e){1&n&&t._UZ(0,"tr",19)}var X=function(){var n=function(e){(0,Z.Z)(a,e);var s=(0,S.Z)(a);function a(l,r,i,d,b){var c;return(0,p.Z)(this,a),(c=s.call(this)).substanceService=l,c.router=r,c.loadingService=i,c.overlayContainerService=d,c.dialog=b,c.displayedColumns=["view","version","versionComments","editor","changeDate","restore"],c.substanceUpdated=new H.x,c}return(0,f.Z)(a,[{key:"ngOnInit",value:function(){var r=this;this.substanceService.getEdits(this.substance.uuid).subscribe(function(i){r.versions=i},function(i){}),this.substanceService.checkVersion(this.substance.uuid).subscribe(function(i){r.latest=i}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var r=this;this.substanceUpdated.subscribe(function(i){r.substance=i})}},{key:"switchVersion",value:function(r){this.router.navigate(["/substances/"+this.substance.uuid+"/v/"+r])}},{key:"restoreVersion",value:function(r){var i=this,d=this.dialog.open(A.h,{data:{substance:this.substance,version:r,latest:this.latest},width:"650px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",d.afterClosed().subscribe(function(c){i.overlayContainer.style.zIndex=null,c&&"success"===c&&(i.router.onSameUrlNavigation="reload",i.router.navigate(["/substances/"+i.substance.uuid+"/"]))})}}]),a}(T.B);return n.\u0275fac=function(s){return new(s||n)(t.Y36(x.d),t.Y36(h.F0),t.Y36(U.b),t.Y36(Y.Xj),t.Y36(y.uw))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-history"]],features:[t.qOj],decls:22,vars:3,consts:[[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","view"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","version"],["matColumnDef","versionComments"],["matColumnDef","editor"],["matColumnDef","changeDate"],["matColumnDef","restore"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],["class","centered",4,"ngIf"],[1,"mat-raised-button","mat-primary",3,"click"],[1,"centered"],["mat-header-row",""],["mat-row",""]],template:function(s,a){1&s&&(t.TgZ(0,"div",0),t.TgZ(1,"table",1),t.ynx(2,2),t.YNc(3,N,2,0,"th",3),t.YNc(4,Q,3,2,"td",4),t.BQk(),t.ynx(5,5),t.YNc(6,I,2,0,"th",3),t.YNc(7,B,2,1,"td",4),t.BQk(),t.ynx(8,6),t.YNc(9,j,2,0,"th",3),t.YNc(10,J,2,1,"td",4),t.BQk(),t.ynx(11,7),t.YNc(12,M,2,0,"th",3),t.YNc(13,R,2,1,"td",4),t.BQk(),t.ynx(14,8),t.YNc(15,$,2,0,"th",3),t.YNc(16,F,3,4,"td",4),t.BQk(),t.ynx(17,9),t.YNc(18,O,1,0,"th",3),t.YNc(19,w,3,0,"td",4),t.BQk(),t.YNc(20,z,1,0,"tr",10),t.YNc(21,E,1,0,"tr",11),t.qZA(),t.qZA()),2&s&&(t.xp6(1),t.Q6J("dataSource",a.versions),t.xp6(19),t.Q6J("matHeaderRowDef",a.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",a.displayedColumns))},directives:[u.BZ,u.w1,u.fO,u.ge,u.Dz,u.ev,m.O5,u.as,u.XQ,u.nj,u.Gk],pipes:[m.uU],styles:[".centered[_ngcontent-%COMP%]{text-align:center}"]}),n}(),P=o(64061),G=o(43365),L=o(26439),C=o(65590),K=o(64316),W=o(34972),k=o(33865),g=o(90587),q=o(38277),_=function(){var n=(0,f.Z)(function e(){(0,p.Z)(this,e)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[m.ez,P.o.forChild(X),u.p0,k.HT,L.TU,G.c,g.UX,g.u5,q.V,C.Ps,y.Is,K.JX,W.dp,h.Bz,C.Ps]]}),n}()}}]); +//# sourceMappingURL=7010.bbde5299bdd5f296.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7010.27a434b8b589cafe.js.map b/frontend/src/main/resources/static/7010.bbde5299bdd5f296.js.map similarity index 99% rename from frontend/src/main/resources/static/7010.27a434b8b589cafe.js.map rename to frontend/src/main/resources/static/7010.bbde5299bdd5f296.js.map index 9525d2f..a6f8224 100644 --- a/frontend/src/main/resources/static/7010.27a434b8b589cafe.js.map +++ b/frontend/src/main/resources/static/7010.bbde5299bdd5f296.js.map @@ -1 +1 @@ -{"version":3,"mappings":"2WAKMA,iBAAuCA,uBAAUA,+CACTA,gBACtCA,qBAAgDA,yEAAWC,2BAAgCD,gBAAIA,QACjGA,+BACEA,mBACEA,qBACFA,kCALFA,iBAAwCA,yBAGtCA,yBAGFA,0CAN+CA,sDAGtCA,6EAOTA,iBAAuCA,qBAAQA,kCAC/CA,iBAAwCA,SAAoBA,gCAApBA,yDAIxCA,iBAAuCA,8BAAiBA,kCACxDA,iBAAwCA,SAAqBA,gCAArBA,0DAIxCA,iBAAuCA,mBAAMA,kCAC7CA,iBAAwCA,SAAmBA,gCAAnBA,wDAIxCA,iBAAuCA,yBAAYA,kCACnDA,iBAAwCA,yBAAsCA,gCAAtCA,2EAItCA,uDACAA,iBACEA,qBAAgDA,iEAAWE,4BAAiCF,mBAAOA,QACrGA,8BAGJA,sCACAA,iBCdG,IAAMG,EAAb,eAAaA,EAAb,0CASE,WACUC,EACAC,EACDC,EACCC,EACAC,GAAiB,6BAGzBC,gBAPQL,mBACAK,WACDA,mBACCA,4BACAA,WAZVA,mBAA6B,CAAC,OAAQ,UAAW,kBAAmB,SAAU,aAAc,WAC5FA,mBAAmB,IAAIC,IAWID,EAd7B,uCAmBE,WAAQ,WACPE,KAAKP,iBAAiBQ,SAASD,KAAKE,UAAUC,MAAMC,UAAW,YAC7DC,EAAKC,SAAWC,GACf,eACHP,KAAKP,iBAAiBe,aAAaR,KAAKE,UAAUC,MAAMC,UAAU,SAACK,GAClEJ,EAAKK,OAASD,IAEhBT,KAAKW,iBAAmBX,KAAKJ,wBAAwBgB,wBA1BvD,6BA6BE,WAAe,WACbZ,KAAKa,iBAAiBT,UAAU,YAC9BC,EAAKH,UAAYA,MA/BvB,2BAmCE,SAAcY,GACZd,KAAKN,OAAOqB,SAAS,CAAC,eAAiBf,KAAKE,UAAUC,KAAO,MAAQW,MApCzE,4BAuCE,SAAeA,GAAY,WACjBE,EAAYhB,KAAKH,OAAOoB,KAAKC,IAAiC,CAClEC,KAAM,CAACjB,UAAaF,KAAKE,UAAWY,QAAWA,EAASJ,OAAUV,KAAKU,QACvEU,MAAO,QACPC,WAAW,EACXC,cAAc,IAEftB,KAAKW,iBAAiBY,MAAMC,OAAS,OACXR,EAAUS,cAAcrB,UAAU,YAC3DsB,EAAKf,iBAAiBY,MAAMC,OAAS,KAEjCjB,GAAyB,YAAbA,IACdmB,EAAKhC,OAAOiC,oBAAsB,SAClCD,EAAKhC,OAAOqB,SAAS,CAAC,eAAiBW,EAAKxB,UAAUC,KAAO,aApDvEyB,GAA+CC,kDAAlCrC,GAAyBH,oFAAzBG,EAAyBsC,gqBD5BtCzC,iBACEA,mBAEEA,WACEA,sBACAA,sBAOFA,QAEAA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,YACIA,uBACAA,uBAGFA,QAEFA,wBACAA,wBACFA,QACFA,eA3CmBA,wCAwCKA,sDACaA,sMCdxBG,EAAb,sGCOauC,EAAb,eAAaA,KAAbC,iFAAaD,4DAnBF,CACPE,KACAC,aAAsC1C,GACtC2C,KACAC,KACAC,KACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAJ,SAISX,EAAb","names":["i0","ctx_r17","ctx_r25","SubstanceHistoryComponent","substanceService","router","loadingService","overlayContainerService","dialog","c","Subject","this","getEdits","substance","uuid","subscribe","r","versions","response","checkVersion","result","latest","overlayContainer","getContainerElement","substanceUpdated","version","navigate","dialogRef","open","SubstanceHistoryDialogComponent","data","width","autoFocus","disableClose","style","zIndex","afterClosed","i","onSameUrlNavigation","a","SubstanceCardBase","selectors","SubstanceHistoryModule","f","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatSortModule","MatTreeModule","RouterModule"],"sources":["./src/app/core/substance-details/substance-history/substance-history.component.html","./src/app/core/substance-details/substance-history/substance-history.component.ts","./src/app/core/substance-details/substance-history/substance-history.module.ts"],"sourcesContent":["\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Displayed \r\n \r\n \r\n \r\n Viewing\r\n \r\n Version {{version.version}} Version Comments {{version.comments}} Editor {{version.editor}} Change Date {{version.created | date : 'short'}} \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit, AfterViewInit } from '@angular/core';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatDialog, MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {SubstanceCardBase} from '@gsrs-core/substance-details/substance-card-base';\r\nimport {SubstanceDetail, SubstanceEdit, SubstanceName} from '@gsrs-core/substance/substance.model';\r\nimport {SubstanceService} from '@gsrs-core/substance/substance.service';\r\nimport {LoadingService} from '@gsrs-core/loading/loading.service';\r\nimport {MainNotificationService} from '@gsrs-core/main-notification/main-notification.service';\r\nimport {Router} from '@angular/router';\r\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics/google-analytics.service';\r\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-details/substance-card-base-filtered-list';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { SubstanceHistoryDialogComponent } from '@gsrs-core/substance-history-dialog/substance-history-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-substance-history',\r\n templateUrl: './substance-history.component.html',\r\n styleUrls: ['./substance-history.component.scss']\r\n})\r\nexport class SubstanceHistoryComponent extends SubstanceCardBase implements OnInit , AfterViewInit {\r\n versions: Array;\r\n displayedColumns: string[] = ['view', 'version', 'versionComments', 'editor', 'changeDate', 'restore'];\r\n substanceUpdated = new Subject();\r\n latest: any;\r\n private overlayContainer: HTMLElement;\r\n\r\n\r\n\r\n constructor(\r\n private substanceService: SubstanceService,\r\n private router: Router,\r\n public loadingService: LoadingService,\r\n private overlayContainerService: OverlayContainer,\r\n private dialog: MatDialog\r\n\r\n ) {\r\n super();\r\n }\r\n ngOnInit() {\r\n this.substanceService.getEdits(this.substance.uuid).subscribe( response => {\r\n this.versions = response;\r\n }, error => {} );\r\n this.substanceService.checkVersion(this.substance.uuid).subscribe((result: number) => {\r\n this.latest = result;\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n });\r\n }\r\n\r\n switchVersion(version): void {\r\n this.router.navigate(['/substances/' + this.substance.uuid + '/v/' + version]);\r\n }\r\n\r\n restoreVersion(version: any) {\r\n const dialogRef = this.dialog.open(SubstanceHistoryDialogComponent, {\r\n data: {'substance': this.substance, 'version': version, 'latest': this.latest},\r\n width: '650px',\r\n autoFocus: false,\r\n disableClose: true\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\r\n this.overlayContainer.style.zIndex = null;\r\n\r\n if (response && response === 'success' ) {\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate(['/substances/' + this.substance.uuid + '/']);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {SubstanceHistoryComponent} from '@gsrs-core/substance-details/substance-history/substance-history.component';\r\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader/dynamic-component-loader.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTreeModule} from '@angular/material/tree';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport {ReferencesManagerModule} from '@gsrs-core/references-manager/references-manager.module';\r\nimport {RouterModule} from '@angular/router';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceHistoryComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ReferencesManagerModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatSortModule,\r\n MatTreeModule,\r\n RouterModule,\r\n MatIconModule,\r\n ],\r\n declarations: [SubstanceHistoryComponent]\r\n})\r\nexport class SubstanceHistoryModule { }\r\n"],"sourceRoot":"webpack:///","file":"7010.27a434b8b589cafe.js"} \ No newline at end of file +{"version":3,"mappings":"2WAKMA,iBAAuCA,uBAAUA,+CACTA,gBACtCA,qBAAgDA,yEAAWC,2BAAgCD,gBAAIA,QACjGA,+BACEA,mBACEA,qBACFA,kCALFA,iBAAwCA,yBAGtCA,yBAGFA,0CAN+CA,sDAGtCA,6EAOTA,iBAAuCA,qBAAQA,kCAC/CA,iBAAwCA,SAAoBA,gCAApBA,yDAIxCA,iBAAuCA,8BAAiBA,kCACxDA,iBAAwCA,SAAqBA,gCAArBA,0DAIxCA,iBAAuCA,mBAAMA,kCAC7CA,iBAAwCA,SAAmBA,gCAAnBA,wDAIxCA,iBAAuCA,yBAAYA,kCACnDA,iBAAwCA,yBAAsCA,gCAAtCA,2EAItCA,uDACAA,iBACEA,qBAAgDA,iEAAWE,4BAAiCF,mBAAOA,QACrGA,8BAGJA,sCACAA,iBCdG,IAAMG,EAAb,eAAaA,EAAb,0CASE,WACUC,EACAC,EACDC,EACCC,EACAC,GAAiB,6BAGzBC,gBAPQL,mBACAK,WACDA,mBACCA,4BACAA,WAZVA,mBAA6B,CAAC,OAAQ,UAAW,kBAAmB,SAAU,aAAc,WAC5FA,mBAAmB,IAAIC,IAWID,EAd7B,uCAmBE,WAAQ,WACPE,KAAKP,iBAAiBQ,SAASD,KAAKE,UAAUC,MAAMC,UAAW,YAC7DC,EAAKC,SAAWC,GACf,eACHP,KAAKP,iBAAiBe,aAAaR,KAAKE,UAAUC,MAAMC,UAAU,SAACK,GAClEJ,EAAKK,OAASD,IAEhBT,KAAKW,iBAAmBX,KAAKJ,wBAAwBgB,wBA1BvD,6BA6BE,WAAe,WACbZ,KAAKa,iBAAiBT,UAAU,YAC9BC,EAAKH,UAAYA,MA/BvB,2BAmCE,SAAcY,GACZd,KAAKN,OAAOqB,SAAS,CAAC,eAAiBf,KAAKE,UAAUC,KAAO,MAAQW,MApCzE,4BAuCE,SAAeA,GAAY,WACjBE,EAAYhB,KAAKH,OAAOoB,KAAKC,IAAiC,CAClEC,KAAM,CAACjB,UAAaF,KAAKE,UAAWY,QAAWA,EAASJ,OAAUV,KAAKU,QACvEU,MAAO,QACPC,WAAW,EACXC,cAAc,IAEftB,KAAKW,iBAAiBY,MAAMC,OAAS,OACXR,EAAUS,cAAcrB,UAAU,YAC3DsB,EAAKf,iBAAiBY,MAAMC,OAAS,KAEjCjB,GAAyB,YAAbA,IACdmB,EAAKhC,OAAOiC,oBAAsB,SAClCD,EAAKhC,OAAOqB,SAAS,CAAC,eAAiBW,EAAKxB,UAAUC,KAAO,aApDvEyB,GAA+CC,kDAAlCrC,GAAyBH,oFAAzBG,EAAyBsC,gqBD5BtCzC,iBACEA,mBAEEA,WACEA,sBACAA,sBAOFA,QAEAA,WACEA,sBACAA,sBACFA,QAEAA,WACEA,sBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,YACEA,uBACAA,uBACFA,QAEAA,YACIA,uBACAA,uBAGFA,QAEFA,wBACAA,wBACFA,QACFA,eA3CmBA,wCAwCKA,sDACaA,sMCdxBG,EAAb,sGCOauC,EAAb,eAAaA,KAAbC,iFAAaD,4DAnBF,CACPE,KACAC,aAAsC1C,GACtC2C,KACAC,KACAC,KACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAJ,SAISX,EAAb","names":["i0","ctx_r17","ctx_r25","SubstanceHistoryComponent","substanceService","router","loadingService","overlayContainerService","dialog","c","Subject","this","getEdits","substance","uuid","subscribe","r","versions","response","checkVersion","result","latest","overlayContainer","getContainerElement","substanceUpdated","version","navigate","dialogRef","open","SubstanceHistoryDialogComponent","data","width","autoFocus","disableClose","style","zIndex","afterClosed","i","onSameUrlNavigation","a","SubstanceCardBase","selectors","SubstanceHistoryModule","f","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatSortModule","MatTreeModule","RouterModule"],"sources":["./src/app/core/substance-details/substance-history/substance-history.component.html","./src/app/core/substance-details/substance-history/substance-history.component.ts","./src/app/core/substance-details/substance-history/substance-history.module.ts"],"sourcesContent":["\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Displayed \r\n \r\n \r\n \r\n Viewing\r\n \r\n Version {{version.version}} Version Comments {{version.comments}} Editor {{version.editor}} Change Date {{version.created | date : 'short'}} \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit, AfterViewInit } from '@angular/core';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatDialog, MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {SubstanceCardBase} from '@gsrs-core/substance-details/substance-card-base';\r\nimport {SubstanceDetail, SubstanceEdit, SubstanceName} from '@gsrs-core/substance/substance.model';\r\nimport {SubstanceService} from '@gsrs-core/substance/substance.service';\r\nimport {LoadingService} from '@gsrs-core/loading/loading.service';\r\nimport {MainNotificationService} from '@gsrs-core/main-notification/main-notification.service';\r\nimport {Router} from '@angular/router';\r\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics/google-analytics.service';\r\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-details/substance-card-base-filtered-list';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { SubstanceHistoryDialogComponent } from '@gsrs-core/substance-history-dialog/substance-history-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-substance-history',\r\n templateUrl: './substance-history.component.html',\r\n styleUrls: ['./substance-history.component.scss']\r\n})\r\nexport class SubstanceHistoryComponent extends SubstanceCardBase implements OnInit , AfterViewInit {\r\n versions: Array;\r\n displayedColumns: string[] = ['view', 'version', 'versionComments', 'editor', 'changeDate', 'restore'];\r\n substanceUpdated = new Subject();\r\n latest: any;\r\n private overlayContainer: HTMLElement;\r\n\r\n\r\n\r\n constructor(\r\n private substanceService: SubstanceService,\r\n private router: Router,\r\n public loadingService: LoadingService,\r\n private overlayContainerService: OverlayContainer,\r\n private dialog: MatDialog\r\n\r\n ) {\r\n super();\r\n }\r\n ngOnInit() {\r\n this.substanceService.getEdits(this.substance.uuid).subscribe( response => {\r\n this.versions = response;\r\n }, error => {} );\r\n this.substanceService.checkVersion(this.substance.uuid).subscribe((result: number) => {\r\n this.latest = result;\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n });\r\n }\r\n\r\n switchVersion(version): void {\r\n this.router.navigate(['/substances/' + this.substance.uuid + '/v/' + version]);\r\n }\r\n\r\n restoreVersion(version: any) {\r\n const dialogRef = this.dialog.open(SubstanceHistoryDialogComponent, {\r\n data: {'substance': this.substance, 'version': version, 'latest': this.latest},\r\n width: '650px',\r\n autoFocus: false,\r\n disableClose: true\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\r\n this.overlayContainer.style.zIndex = null;\r\n\r\n if (response && response === 'success' ) {\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate(['/substances/' + this.substance.uuid + '/']);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {SubstanceHistoryComponent} from '@gsrs-core/substance-details/substance-history/substance-history.component';\r\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader/dynamic-component-loader.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTreeModule} from '@angular/material/tree';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport {ReferencesManagerModule} from '@gsrs-core/references-manager/references-manager.module';\r\nimport {RouterModule} from '@angular/router';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceHistoryComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ReferencesManagerModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatSortModule,\r\n MatTreeModule,\r\n RouterModule,\r\n MatIconModule,\r\n ],\r\n declarations: [SubstanceHistoryComponent]\r\n})\r\nexport class SubstanceHistoryModule { }\r\n"],"sourceRoot":"webpack:///","file":"7010.bbde5299bdd5f296.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7022.e5a98311cf434a36.js b/frontend/src/main/resources/static/7022.0b76ccb42448b7a7.js similarity index 56% rename from frontend/src/main/resources/static/7022.e5a98311cf434a36.js rename to frontend/src/main/resources/static/7022.0b76ccb42448b7a7.js index 7af7d5f..c08c99b 100644 --- a/frontend/src/main/resources/static/7022.e5a98311cf434a36.js +++ b/frontend/src/main/resources/static/7022.0b76ccb42448b7a7.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7022],{87022:function(q,p,e){e.r(p),e.d(p,{SubstanceConstituentsModule:function(){return k}});var C=e(48047),v=e(78069),y=e(36362),f=e(98002),O=e(64061),b=e(24582),Z=e(7318),P=e(63169),S=e(50253),T=e(68756),w=e(40104),t=e(76442),m=e(95758),A=e(66088),x=e(44770),h=e(43365),g=e(90587),c=e(97217),U=e(9292),J=e(73430),M=e(26439);function N(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," Substance "),t.qZA())}var Y=function(o){return["/substances",o]};function j(n,o){if(1&n&&(t.TgZ(0,"td",16),t.TgZ(1,"div",17),t.TgZ(2,"div"),t._uU(3),t.qZA(),t._UZ(4,"img",18),t.TgZ(5,"div"),t.TgZ(6,"a",19),t._uU(7),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&n){var a=o.$implicit;t.xp6(3),t.Oqu(a.substance.linkingID),t.xp6(1),t.Q6J("entityId",a.substance.refuuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,Y,a.substance.refuuid)),t.xp6(1),t.hij(" ",a.substance.name," ")}}function Q(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," Role "),t.qZA())}function D(n,o){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=o.$implicit;t.xp6(1),t.hij(" ",a.role," ")}}function R(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," Amount "),t.qZA())}function z(n,o){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=o.$implicit,i=t.oxw();t.xp6(1),t.hij(" ",i.toString(a.amount)," ")}}function I(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," References "),t.qZA())}function B(n,o){if(1&n&&(t.TgZ(0,"h2",22),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",23),t._UZ(3,"app-references-manager",24),t.qZA(),t.TgZ(4,"div",25),t._UZ(5,"span",1),t.TgZ(6,"button",26),t._uU(7,"Close"),t.qZA(),t.qZA()),2&n){var a=t.oxw().$implicit,i=t.oxw();t.xp6(3),t.Q6J("substance",i.substance)("references",a.references)}}function _(n,o){if(1&n){var a=t.EpF();t.TgZ(0,"td",16),t.TgZ(1,"button",20),t.NdJ("click",function(){t.CHM(a);var s=t.MAs(4);return t.oxw().openModal(s)}),t._uU(2,"View"),t.qZA(),t.YNc(3,B,8,2,"ng-template",null,21,t.W1O),t.qZA()}if(2&n){var i=o.$implicit;t.xp6(1),t.Q6J("disabled",!i.references||i.references.length<=0)}}function E(n,o){1&n&&t._UZ(0,"tr",27)}function H(n,o){1&n&&t._UZ(0,"tr",28)}var F=function(){return[5,10,25,100]},L=function(){var n=function(o){(0,b.Z)(i,o);var a=(0,Z.Z)(i);function i(d,s,l,u){var r;return(0,v.Z)(this,i),(r=a.call(this,s)).utilsService=d,r.gaService=s,r.dialog=l,r.overlayContainerService=u,r.substanceUpdated=new S.x,r.displayedColumns=["Substance","Role","Amount","References"],r}return(0,C.Z)(i,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(l){null!=l&&null!=l.specifiedSubstance&&l.specifiedSubstance.constituents&&(s.constituents=l.specifiedSubstance.constituents,s.filtered=s.substance.specifiedSubstance.constituents,s.pageChange(),s.searchControl.valueChanges.subscribe(function(u){s.filterList(u,s.constituents,s.analyticsEventCategory)},function(u){console.log(u)})),s.countUpdate.emit(s.constituents.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"toString",value:function(s){return this.utilsService.displayAmount(s)}},{key:"openModal",value:function(s){var l=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var u=this.dialog.open(s,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",u.afterClosed().subscribe(function(r){l.overlayContainer.style.zIndex=null})}}]),i}(T.uJ);return n.\u0275fac=function(a){return new(a||n)(t.Y36(P.FW),t.Y36(w.$),t.Y36(m.uw),t.Y36(A.Xj))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-constituents"]],features:[t.qOj],decls:21,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","Substance"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Role"],["matColumnDef","Amount"],["matColumnDef","References"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[1,"thumb-col"],["appSubstanceImage","",1,"structure-image",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-header-row",""],["mat-row",""]],template:function(a,i){1&a&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"table",5),t.ynx(6,6),t.YNc(7,N,2,0,"th",7),t.YNc(8,j,8,6,"td",8),t.BQk(),t.ynx(9,9),t.YNc(10,Q,2,0,"th",7),t.YNc(11,D,2,1,"td",8),t.BQk(),t.ynx(12,10),t.YNc(13,R,2,0,"th",7),t.YNc(14,z,2,1,"td",8),t.BQk(),t.ynx(15,11),t.YNc(16,I,2,0,"th",7),t.YNc(17,_,5,1,"td",8),t.BQk(),t.YNc(18,E,1,0,"tr",12),t.YNc(19,H,1,0,"tr",13),t.qZA(),t.qZA(),t.TgZ(20,"mat-paginator",14),t.NdJ("page",function(s){return i.pageChange(s,i.analyticsEventCategory)}),t.qZA()),2&a&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",i.searchControl),t.xp6(2),t.Q6J("dataSource",i.paged),t.xp6(13),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns),t.xp6(1),t.Q6J("length",i.filtered&&i.filtered.length||0)("pageSize",5)("pageSizeOptions",t.DdM(8,F)))},directives:[x.KE,h.Nt,g.Fj,g.JJ,g.oH,c.BZ,c.w1,c.fO,c.ge,c.Dz,c.ev,U.m,f.yS,m.uh,m.xY,J.C,m.H8,m.ZT,c.as,c.XQ,c.nj,c.Gk,M.NW],styles:[".unit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:20%;width:20%} .related-substance img{max-width:125px!important;margin:auto}.structure-image[_ngcontent-%COMP%]{max-width:150px}.full[_ngcontent-%COMP%]{width:100%}.form-container[_ngcontent-%COMP%]{width:80%}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:50%}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-top[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.inner-row-top[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.inner-row-top[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.inner-row-top[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:100%}.inner-row-top[_ngcontent-%COMP%] .connectivity-container[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.inner-row-top[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-bottom[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.inner-row-bottom[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:50%}.inner-row-bottom[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}"]}),n}(),$=e(11920),W=e(33865),X=e(40089),V=e(64316),K=e(65590),G=e(24054),k=function(){var n=(0,C.Z)(function o(){(0,v.Z)(this,o)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[y.ez,f.Bz,O.o.forChild(L),c.p0,$.V,K.Ps,m.Is,M.TU,g.u5,x.lN,g.UX,h.c,W.HT,X.AV,f.Bz,V.JX,G.f]]}),n}()}}]); -//# sourceMappingURL=7022.e5a98311cf434a36.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7022],{87022:function(q,p,e){e.r(p),e.d(p,{SubstanceConstituentsModule:function(){return k}});var C=e(1884),v=e(39117),y=e(36362),f=e(98002),O=e(64061),b=e(46751),Z=e(56101),P=e(63169),S=e(50253),T=e(68756),w=e(40104),t=e(86613),m=e(95758),A=e(54244),x=e(44770),h=e(43365),g=e(90587),c=e(97217),U=e(9292),J=e(73430),M=e(26439);function N(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," Substance "),t.qZA())}var Y=function(o){return["/substances",o]};function j(n,o){if(1&n&&(t.TgZ(0,"td",16),t.TgZ(1,"div",17),t.TgZ(2,"div"),t._uU(3),t.qZA(),t._UZ(4,"img",18),t.TgZ(5,"div"),t.TgZ(6,"a",19),t._uU(7),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&n){var a=o.$implicit;t.xp6(3),t.Oqu(a.substance.linkingID),t.xp6(1),t.Q6J("entityId",a.substance.refuuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,Y,a.substance.refuuid)),t.xp6(1),t.hij(" ",a.substance.name," ")}}function Q(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," Role "),t.qZA())}function D(n,o){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=o.$implicit;t.xp6(1),t.hij(" ",a.role," ")}}function R(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," Amount "),t.qZA())}function z(n,o){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=o.$implicit,i=t.oxw();t.xp6(1),t.hij(" ",i.toString(a.amount)," ")}}function I(n,o){1&n&&(t.TgZ(0,"th",15),t._uU(1," References "),t.qZA())}function B(n,o){if(1&n&&(t.TgZ(0,"h2",22),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",23),t._UZ(3,"app-references-manager",24),t.qZA(),t.TgZ(4,"div",25),t._UZ(5,"span",1),t.TgZ(6,"button",26),t._uU(7,"Close"),t.qZA(),t.qZA()),2&n){var a=t.oxw().$implicit,i=t.oxw();t.xp6(3),t.Q6J("substance",i.substance)("references",a.references)}}function _(n,o){if(1&n){var a=t.EpF();t.TgZ(0,"td",16),t.TgZ(1,"button",20),t.NdJ("click",function(){t.CHM(a);var s=t.MAs(4);return t.oxw().openModal(s)}),t._uU(2,"View"),t.qZA(),t.YNc(3,B,8,2,"ng-template",null,21,t.W1O),t.qZA()}if(2&n){var i=o.$implicit;t.xp6(1),t.Q6J("disabled",!i.references||i.references.length<=0)}}function E(n,o){1&n&&t._UZ(0,"tr",27)}function H(n,o){1&n&&t._UZ(0,"tr",28)}var F=function(){return[5,10,25,100]},L=function(){var n=function(o){(0,b.Z)(i,o);var a=(0,Z.Z)(i);function i(d,s,r,u){var l;return(0,v.Z)(this,i),(l=a.call(this,s)).utilsService=d,l.gaService=s,l.dialog=r,l.overlayContainerService=u,l.substanceUpdated=new S.x,l.displayedColumns=["Substance","Role","Amount","References"],l}return(0,C.Z)(i,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(r){null!=r&&null!=r.specifiedSubstance&&r.specifiedSubstance.constituents&&(s.constituents=r.specifiedSubstance.constituents,s.filtered=s.substance.specifiedSubstance.constituents,s.pageChange(),s.searchControl.valueChanges.subscribe(function(u){s.filterList(u,s.constituents,s.analyticsEventCategory)},function(u){console.log(u)})),s.countUpdate.emit(s.constituents.length)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"toString",value:function(s){return this.utilsService.displayAmount(s)}},{key:"openModal",value:function(s){var r=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var u=this.dialog.open(s,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",u.afterClosed().subscribe(function(l){r.overlayContainer.style.zIndex=null})}}]),i}(T.uJ);return n.\u0275fac=function(a){return new(a||n)(t.Y36(P.FW),t.Y36(w.$),t.Y36(m.uw),t.Y36(A.Xj))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-constituents"]],features:[t.qOj],decls:21,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","Substance"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Role"],["matColumnDef","Amount"],["matColumnDef","References"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[1,"thumb-col"],["appSubstanceImage","",1,"structure-image",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[3,"substance","references"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-header-row",""],["mat-row",""]],template:function(a,i){1&a&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"table",5),t.ynx(6,6),t.YNc(7,N,2,0,"th",7),t.YNc(8,j,8,6,"td",8),t.BQk(),t.ynx(9,9),t.YNc(10,Q,2,0,"th",7),t.YNc(11,D,2,1,"td",8),t.BQk(),t.ynx(12,10),t.YNc(13,R,2,0,"th",7),t.YNc(14,z,2,1,"td",8),t.BQk(),t.ynx(15,11),t.YNc(16,I,2,0,"th",7),t.YNc(17,_,5,1,"td",8),t.BQk(),t.YNc(18,E,1,0,"tr",12),t.YNc(19,H,1,0,"tr",13),t.qZA(),t.qZA(),t.TgZ(20,"mat-paginator",14),t.NdJ("page",function(s){return i.pageChange(s,i.analyticsEventCategory)}),t.qZA()),2&a&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",i.searchControl),t.xp6(2),t.Q6J("dataSource",i.paged),t.xp6(13),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns),t.xp6(1),t.Q6J("length",i.filtered&&i.filtered.length||0)("pageSize",5)("pageSizeOptions",t.DdM(8,F)))},directives:[x.KE,h.Nt,g.Fj,g.JJ,g.oH,c.BZ,c.w1,c.fO,c.ge,c.Dz,c.ev,U.m,f.yS,m.uh,m.xY,J.C,m.H8,m.ZT,c.as,c.XQ,c.nj,c.Gk,M.NW],styles:[".unit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative;display:-ms-flexbox;display:flex}.related-substance[_ngcontent-%COMP%]{max-width:20%;width:20%} .related-substance img{max-width:125px!important;margin:auto}.structure-image[_ngcontent-%COMP%]{max-width:150px}.full[_ngcontent-%COMP%]{width:100%}.form-container[_ngcontent-%COMP%]{width:80%}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:50%}.form-row[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-top[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.inner-row-top[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.inner-row-top[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .attachment-count[_ngcontent-%COMP%], .inner-row-top[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.inner-row-top[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:100%}.inner-row-top[_ngcontent-%COMP%] .connectivity-container[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.inner-row-top[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.inner-row-bottom[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.inner-row-bottom[_ngcontent-%COMP%] .connectivity[_ngcontent-%COMP%]{width:50%}.inner-row-bottom[_ngcontent-%COMP%] .amount[_ngcontent-%COMP%]{width:50%;padding-right:15px}.references-container[_ngcontent-%COMP%]{width:100%}.padded[_ngcontent-%COMP%]{padding-right:20px}.amount-display[_ngcontent-%COMP%]{padding-top:11px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.form-content[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.mod-type[_ngcontent-%COMP%], .location-type[_ngcontent-%COMP%], .sites[_ngcontent-%COMP%], .group-access[_ngcontent-%COMP%], .extent[_ngcontent-%COMP%], .amount[_ngcontent-%COMP%]{width:33%}.group[_ngcontent-%COMP%], .access[_ngcontent-%COMP%]{width:45%}"]}),n}(),$=e(11920),W=e(33865),X=e(40089),V=e(64316),K=e(65590),G=e(24054),k=function(){var n=(0,C.Z)(function o(){(0,v.Z)(this,o)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[y.ez,f.Bz,O.o.forChild(L),c.p0,$.V,K.Ps,m.Is,M.TU,g.u5,x.lN,g.UX,h.c,W.HT,X.AV,f.Bz,V.JX,G.f]]}),n}()}}]); +//# sourceMappingURL=7022.0b76ccb42448b7a7.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7022.e5a98311cf434a36.js.map b/frontend/src/main/resources/static/7022.0b76ccb42448b7a7.js.map similarity index 96% rename from frontend/src/main/resources/static/7022.e5a98311cf434a36.js.map rename to frontend/src/main/resources/static/7022.0b76ccb42448b7a7.js.map index bc4ef77..706b31c 100644 --- a/frontend/src/main/resources/static/7022.e5a98311cf434a36.js.map +++ b/frontend/src/main/resources/static/7022.0b76ccb42448b7a7.js.map @@ -1 +1 @@ -{"version":3,"mappings":"ibAaMA,iBAAuCA,uBAAUA,6EACjDA,iBACEA,kBACEA,eAAKA,SAA2BA,QAChCA,kBACAA,eACEA,gBACEA,SACFA,QACFA,QACFA,QACFA,gCARSA,sCAC0CA,+CAEnBA,4DACxBA,gEAORA,iBAAuCA,kBAAKA,kCAC5CA,iBAAoCA,SAAaA,gCAAbA,sDAGpCA,iBAAuCA,oBAAOA,kCAC9CA,iBAAoCA,SAAyBA,0CAAzBA,oEAGlCA,iBAAuCA,wBAAWA,kCAK9CA,iBAAqBA,sBAAUA,QAC/BA,kBACEA,qCACFA,QACEA,kBACEA,kBACAA,qBAA+DA,iBAAKA,QACtEA,gDALwBA,wCAAyB,kEANvDA,iBACEA,qBAA6DA,gEAASC,eAAoFD,gBAAIA,QAE9JA,2CAUFA,kCAZiGA,uFAgBrGA,sCACAA,uDCvCSE,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,EACAC,GAAyC,6BAE/CC,cAAMH,IALAD,eACDI,cACCA,WACAA,4BARVA,mBAAmB,IAAIC,IACvBD,mBAA6B,CAAC,YAAa,OAAQ,SAAU,cAOVA,EAVrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YACb,MAAbC,GAAqD,MAAhCA,EAAUC,oBAA8BD,EAAUC,mBAAmBC,eAC5FC,EAAKD,aAAeF,EAAUC,mBAAmBC,aACjDC,EAAKC,SAAWD,EAAKH,UAAUC,mBAAmBC,aAClDC,EAAKE,aAELF,EAAKG,cAAcC,aAAaR,UAAU,YACxCI,EAAKK,WAAWC,EAAON,EAAKD,aAAcC,EAAKO,yBAC9C,YACDC,QAAQC,IAAIC,MAGhBV,EAAKW,YAAYC,KAAKZ,EAAKD,aAAac,UAE1CnB,KAAKoB,iBAAmBpB,KAAKH,wBAAwBwB,wBA7BzD,sBAgCS,SAASC,GACd,OAAOtB,KAAKN,aAAa6B,cAAcD,KAjC3C,uBAoCE,SAAUE,GAAW,WAEnBxB,KAAKL,UAAU8B,UAAUzB,KAAKa,uBAAwB,SAAU,mBAEhE,IAAMa,EAAY1B,KAAKJ,OAAO+B,KAAKH,EAAa,CAC9CI,SAAU,MACVC,SAAU,QAEZ7B,KAAKoB,iBAAiBU,MAAMC,OAAS,OAErCL,EAAUM,cAAc9B,UAAU,YAChC+B,EAAKb,iBAAiBU,MAAMC,OAAS,WA/C3CG,GAAoDC,mDAAvC1C,GAA8BF,yEAA9BE,EAA8B2C,ojCDb3C7C,iBACEA,kBACAA,4BACEA,mBACFA,QACFA,QACAA,iBAEEA,mBAEEA,WACEA,sBACAA,sBAWFA,QACAA,WACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QACAA,aACIA,uBACAA,uBAcFA,QAGFA,wBACAA,wBACFA,QACFA,QACAA,6BAAsGA,gCAAQ8C,2CAE9G9C,eAvDkBA,qCACuBA,8CAKtBA,qCA2CKA,sDACaA,sDAGtBA,0DAA2C,aAA3CA,CAA2C,irGC1C7CE,EAAb,qEC2Ba6C,EAAb,eAAaA,KAAbC,iFAAaD,4DAvBF,CACPE,KACAC,KACAC,aAAsCjD,GACtCkD,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,KACAZ,KACAa,KACAC,QAMSjB,EAAb","names":["i0","ctx_r17","SubstanceConstituentsComponent","utilsService","gaService","dialog","overlayContainerService","r","Subject","this","substanceUpdated","subscribe","substance","specifiedSubstance","constituents","s","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","countUpdate","emit","length","overlayContainer","getContainerElement","amount","displayAmount","templateRef","sendEvent","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","l","i","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceConstituentsModule","C","CommonModule","RouterModule","DynamicComponentLoaderModule","MatTableModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatPaginatorModule","FormsModule","MatFormFieldModule","ReactiveFormsModule","MatInputModule","CdkTableModule","MatTooltipModule","MatSortModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-constituents/substance-constituents.component.html","./src/app/core/substance-details/substance-constituents/substance-constituents.component.ts","./src/app/core/substance-details/substance-constituents/substance-constituents.module.ts"],"sourcesContent":["\n\n
\n \n \n \n \n
\n
\n\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n \n \n
Substance \n
\n
{{con.substance.linkingID}}
\n \n \n
\n
Role {{con.role}} Amount {{toString(con.amount)}} References \n \n \n \n

References

\n
\n \n
\n
\n \n \n
\n
\n
\n
\n\n\n","import { Component, OnInit } from '@angular/core';\nimport {SafeUrl} from '@angular/platform-browser';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {Constituent, SubstanceAmount, SubstanceDetail} from '@gsrs-core/substance';\nimport {Subject} from 'rxjs';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { MatDialog } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-substance-constituents',\n templateUrl: './substance-constituents.component.html',\n styleUrls: ['./substance-constituents.component.scss']\n})\nexport class SubstanceConstituentsComponent extends SubstanceCardBaseFilteredList implements OnInit {\n constituents: Array;\n substanceUpdated = new Subject();\n displayedColumns: string[] = ['Substance', 'Role', 'Amount', 'References'];\n private overlayContainer: HTMLElement;\n\n constructor(\n private utilsService: UtilsService,\n public gaService: GoogleAnalyticsService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n\n ) { super(gaService); }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n if (substance != null && substance.specifiedSubstance != null && substance.specifiedSubstance.constituents) {\n this.constituents = substance.specifiedSubstance.constituents;\n this.filtered = this.substance.specifiedSubstance.constituents;\n this.pageChange();\n\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.constituents, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n }\n this.countUpdate.emit(this.constituents.length);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n public toString(amount: SubstanceAmount): string {\n return this.utilsService.displayAmount(amount);\n }\n\n openModal(templateRef) {\n\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\n\n const dialogRef = this.dialog.open(templateRef, {\n minWidth: '40%',\n maxWidth: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(result => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport {SubstanceConstituentsComponent} from '@gsrs-core/substance-details/substance-constituents/substance-constituents.component';\nimport {MatTableModule} from '@angular/material/table';\nimport {ReferencesManagerModule} from '@gsrs-core/references-manager';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {CdkTableModule} from '@angular/cdk/table';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatSortModule} from '@angular/material/sort';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatDialogModule} from '@angular/material/dialog';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n DynamicComponentLoaderModule.forChild(SubstanceConstituentsComponent),\n MatTableModule,\n ReferencesManagerModule,\n MatIconModule,\n MatDialogModule,\n MatPaginatorModule,\n FormsModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n MatInputModule,\n CdkTableModule,\n MatTooltipModule,\n RouterModule,\n MatSortModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceConstituentsComponent\n ]\n})\nexport class SubstanceConstituentsModule { }\n"],"sourceRoot":"webpack:///","file":"7022.e5a98311cf434a36.js"} \ No newline at end of file +{"version":3,"mappings":"ibAaMA,iBAAuCA,uBAAUA,6EACjDA,iBACEA,kBACEA,eAAKA,SAA2BA,QAChCA,kBACAA,eACEA,gBACEA,SACFA,QACFA,QACFA,QACFA,gCARSA,sCAC0CA,+CAEnBA,4DACxBA,gEAORA,iBAAuCA,kBAAKA,kCAC5CA,iBAAoCA,SAAaA,gCAAbA,sDAGpCA,iBAAuCA,oBAAOA,kCAC9CA,iBAAoCA,SAAyBA,0CAAzBA,oEAGlCA,iBAAuCA,wBAAWA,kCAK9CA,iBAAqBA,sBAAUA,QAC/BA,kBACEA,qCACFA,QACEA,kBACEA,kBACAA,qBAA+DA,iBAAKA,QACtEA,gDALwBA,wCAAyB,kEANvDA,iBACEA,qBAA6DA,gEAASC,eAAoFD,gBAAIA,QAE9JA,2CAUFA,kCAZiGA,uFAgBrGA,sCACAA,uDCvCSE,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,EACAC,GAAyC,6BAE/CC,cAAMH,IALAD,eACDI,cACCA,WACAA,4BARVA,mBAAmB,IAAIC,IACvBD,mBAA6B,CAAC,YAAa,OAAQ,SAAU,cAOVA,EAVrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YACb,MAAbC,GAAqD,MAAhCA,EAAUC,oBAA8BD,EAAUC,mBAAmBC,eAC5FC,EAAKD,aAAeF,EAAUC,mBAAmBC,aACjDC,EAAKC,SAAWD,EAAKH,UAAUC,mBAAmBC,aAClDC,EAAKE,aAELF,EAAKG,cAAcC,aAAaR,UAAU,YACxCI,EAAKK,WAAWC,EAAON,EAAKD,aAAcC,EAAKO,yBAC9C,YACDC,QAAQC,IAAIC,MAGhBV,EAAKW,YAAYC,KAAKZ,EAAKD,aAAac,UAE1CnB,KAAKoB,iBAAmBpB,KAAKH,wBAAwBwB,wBA7BzD,sBAgCS,SAASC,GACd,OAAOtB,KAAKN,aAAa6B,cAAcD,KAjC3C,uBAoCE,SAAUE,GAAW,WAEnBxB,KAAKL,UAAU8B,UAAUzB,KAAKa,uBAAwB,SAAU,mBAEhE,IAAMa,EAAY1B,KAAKJ,OAAO+B,KAAKH,EAAa,CAC9CI,SAAU,MACVC,SAAU,QAEZ7B,KAAKoB,iBAAiBU,MAAMC,OAAS,OAErCL,EAAUM,cAAc9B,UAAU,YAChC+B,EAAKb,iBAAiBU,MAAMC,OAAS,WA/C3CG,GAAoDC,mDAAvC1C,GAA8BF,yEAA9BE,EAA8B2C,ojCDb3C7C,iBACEA,kBACAA,4BACEA,mBACFA,QACFA,QACAA,iBAEEA,mBAEEA,WACEA,sBACAA,sBAWFA,QACAA,WACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QACAA,aACIA,uBACAA,uBAcFA,QAGFA,wBACAA,wBACFA,QACFA,QACAA,6BAAsGA,gCAAQ8C,2CAE9G9C,eAvDkBA,qCACuBA,8CAKtBA,qCA2CKA,sDACaA,sDAGtBA,0DAA2C,aAA3CA,CAA2C,2sGC1C7CE,EAAb,qEC2Ba6C,EAAb,eAAaA,KAAbC,iFAAaD,4DAvBF,CACPE,KACAC,KACAC,aAAsCjD,GACtCkD,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,KACAZ,KACAa,KACAC,QAMSjB,EAAb","names":["i0","ctx_r17","SubstanceConstituentsComponent","utilsService","gaService","dialog","overlayContainerService","l","Subject","this","substanceUpdated","subscribe","substance","specifiedSubstance","constituents","s","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","countUpdate","emit","length","overlayContainer","getContainerElement","amount","displayAmount","templateRef","sendEvent","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","r","i","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceConstituentsModule","C","CommonModule","RouterModule","DynamicComponentLoaderModule","MatTableModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatPaginatorModule","FormsModule","MatFormFieldModule","ReactiveFormsModule","MatInputModule","CdkTableModule","MatTooltipModule","MatSortModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-constituents/substance-constituents.component.html","./src/app/core/substance-details/substance-constituents/substance-constituents.component.ts","./src/app/core/substance-details/substance-constituents/substance-constituents.module.ts"],"sourcesContent":["\n\n
\n \n \n \n \n
\n
\n\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n \n \n
Substance \n
\n
{{con.substance.linkingID}}
\n \n \n
\n
Role {{con.role}} Amount {{toString(con.amount)}} References \n \n \n \n

References

\n
\n \n
\n
\n \n \n
\n
\n
\n
\n\n\n","import { Component, OnInit } from '@angular/core';\nimport {SafeUrl} from '@angular/platform-browser';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {Constituent, SubstanceAmount, SubstanceDetail} from '@gsrs-core/substance';\nimport {Subject} from 'rxjs';\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { MatDialog } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-substance-constituents',\n templateUrl: './substance-constituents.component.html',\n styleUrls: ['./substance-constituents.component.scss']\n})\nexport class SubstanceConstituentsComponent extends SubstanceCardBaseFilteredList implements OnInit {\n constituents: Array;\n substanceUpdated = new Subject();\n displayedColumns: string[] = ['Substance', 'Role', 'Amount', 'References'];\n private overlayContainer: HTMLElement;\n\n constructor(\n private utilsService: UtilsService,\n public gaService: GoogleAnalyticsService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n\n ) { super(gaService); }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n if (substance != null && substance.specifiedSubstance != null && substance.specifiedSubstance.constituents) {\n this.constituents = substance.specifiedSubstance.constituents;\n this.filtered = this.substance.specifiedSubstance.constituents;\n this.pageChange();\n\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.constituents, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n }\n this.countUpdate.emit(this.constituents.length);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n public toString(amount: SubstanceAmount): string {\n return this.utilsService.displayAmount(amount);\n }\n\n openModal(templateRef) {\n\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\n\n const dialogRef = this.dialog.open(templateRef, {\n minWidth: '40%',\n maxWidth: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(result => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport {SubstanceConstituentsComponent} from '@gsrs-core/substance-details/substance-constituents/substance-constituents.component';\nimport {MatTableModule} from '@angular/material/table';\nimport {ReferencesManagerModule} from '@gsrs-core/references-manager';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {CdkTableModule} from '@angular/cdk/table';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatSortModule} from '@angular/material/sort';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatDialogModule} from '@angular/material/dialog';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n DynamicComponentLoaderModule.forChild(SubstanceConstituentsComponent),\n MatTableModule,\n ReferencesManagerModule,\n MatIconModule,\n MatDialogModule,\n MatPaginatorModule,\n FormsModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n MatInputModule,\n CdkTableModule,\n MatTooltipModule,\n RouterModule,\n MatSortModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceConstituentsComponent\n ]\n})\nexport class SubstanceConstituentsModule { }\n"],"sourceRoot":"webpack:///","file":"7022.0b76ccb42448b7a7.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7081.ef5b6750a1738e83.js b/frontend/src/main/resources/static/7081.567bb2ff7728b947.js similarity index 92% rename from frontend/src/main/resources/static/7081.ef5b6750a1738e83.js rename to frontend/src/main/resources/static/7081.567bb2ff7728b947.js index 95099f0..410fc40 100644 --- a/frontend/src/main/resources/static/7081.ef5b6750a1738e83.js +++ b/frontend/src/main/resources/static/7081.567bb2ff7728b947.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7081],{57081:function(Z,u,t){t.r(u),t.d(u,{SubstanceRelationshipsVisualizationModule:function(){return S}});var c=t(48047),r=t(78069),h=t(36362),d=t(64061),f=t(24582),v=t(7318),m=t(2756),g=t(53141),i=t(76442),z=t(50318),p=t(87317);function b(n,o){if(1&n){var s=i.EpF();i.TgZ(0,"div"),i.TgZ(1,"p"),i._uU(2,"This substance record has relationships which can be visualized as a network with other substance records."),i.qZA(),i.TgZ(3,"p"),i._uU(4,"A simplified representation of that network can be interactively explored below."),i.qZA(),i.TgZ(5,"div",1),i.TgZ(6,"div",2),i.TgZ(7,"button",3),i.NdJ("click",function(){return i.CHM(s),i.oxw().openRelationshipsVisualizationWindow()}),i._uU(8,"Open Visualization in a New Window/Tab"),i.qZA(),i.qZA(),i.qZA(),i.qZA()}}var V=function(){var n=function(o){(0,f.Z)(a,o);var s=(0,v.Z)(a);function a(e,R){var l;return(0,r.Z)(this,a),(l=s.call(this)).sanitizer=e,l.configService=R,l.displayedVisualizations=[],l}return(0,c.Z)(a,[{key:"ngOnInit",value:function(){this.visualizationUri=this.sanitizer.bypassSecurityTrustResourceUrl(this.configService.configData.relationshipsVisualizationUri+this.substance.uuid.toString())}},{key:"openRelationshipsVisualizationWindow",value:function(){window.open(this.configService.configData.relationshipsVisualizationUri+this.substance.uuid.toString(),"_blank")}},{key:"showRelationshipsVisualizationIframe",value:function(){this.displayedVisualizations=[1]}}]),a}(m.B);return n.\u0275fac=function(s){return new(s||n)(i.Y36(z.H7),i.Y36(g.E))},n.\u0275cmp=i.Xpm({type:n,selectors:[["app-substance-relationships-visualization"]],features:[i.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"row"],[1,"action-button-container","one","button-right"],["name","search","mat-raised-button","","color","primary",1,"search-button",3,"click"]],template:function(s,a){1&s&&i.YNc(0,b,9,0,"div",0),2&s&&i.Q6J("ngIf",a.substance)},directives:[h.O5,p.lW],styles:[".substance-relationships-visualization[_ngcontent-%COMP%]{width:100%;height:600px;margin-top:10px;border:0}.button-left[_ngcontent-%COMP%]{margin-right:10px;display:inline}.button-right[_ngcontent-%COMP%]{display:inline}"]}),n}(),S=function(){var n=(0,c.Z)(function o(){(0,r.Z)(this,o)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=i.oAB({type:n}),n.\u0275inj=i.cJS({imports:[[h.ez,d.o.forChild(V),p.ot]]}),n}()}}]); -//# sourceMappingURL=7081.ef5b6750a1738e83.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7081],{57081:function(Z,u,t){t.r(u),t.d(u,{SubstanceRelationshipsVisualizationModule:function(){return S}});var c=t(1884),r=t(39117),h=t(36362),d=t(64061),f=t(46751),v=t(56101),m=t(2756),g=t(53141),i=t(86613),z=t(50318),p=t(87317);function b(n,o){if(1&n){var s=i.EpF();i.TgZ(0,"div"),i.TgZ(1,"p"),i._uU(2,"This substance record has relationships which can be visualized as a network with other substance records."),i.qZA(),i.TgZ(3,"p"),i._uU(4,"A simplified representation of that network can be interactively explored below."),i.qZA(),i.TgZ(5,"div",1),i.TgZ(6,"div",2),i.TgZ(7,"button",3),i.NdJ("click",function(){return i.CHM(s),i.oxw().openRelationshipsVisualizationWindow()}),i._uU(8,"Open Visualization in a New Window/Tab"),i.qZA(),i.qZA(),i.qZA(),i.qZA()}}var V=function(){var n=function(o){(0,f.Z)(a,o);var s=(0,v.Z)(a);function a(e,R){var l;return(0,r.Z)(this,a),(l=s.call(this)).sanitizer=e,l.configService=R,l.displayedVisualizations=[],l}return(0,c.Z)(a,[{key:"ngOnInit",value:function(){this.visualizationUri=this.sanitizer.bypassSecurityTrustResourceUrl(this.configService.configData.relationshipsVisualizationUri+this.substance.uuid.toString())}},{key:"openRelationshipsVisualizationWindow",value:function(){window.open(this.configService.configData.relationshipsVisualizationUri+this.substance.uuid.toString(),"_blank")}},{key:"showRelationshipsVisualizationIframe",value:function(){this.displayedVisualizations=[1]}}]),a}(m.B);return n.\u0275fac=function(s){return new(s||n)(i.Y36(z.H7),i.Y36(g.E))},n.\u0275cmp=i.Xpm({type:n,selectors:[["app-substance-relationships-visualization"]],features:[i.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"row"],[1,"action-button-container","one","button-right"],["name","search","mat-raised-button","","color","primary",1,"search-button",3,"click"]],template:function(s,a){1&s&&i.YNc(0,b,9,0,"div",0),2&s&&i.Q6J("ngIf",a.substance)},directives:[h.O5,p.lW],styles:[".substance-relationships-visualization[_ngcontent-%COMP%]{width:100%;height:600px;margin-top:10px;border:0}.button-left[_ngcontent-%COMP%]{margin-right:10px;display:inline}.button-right[_ngcontent-%COMP%]{display:inline}"]}),n}(),S=function(){var n=(0,c.Z)(function o(){(0,r.Z)(this,o)});return n.\u0275fac=function(s){return new(s||n)},n.\u0275mod=i.oAB({type:n}),n.\u0275inj=i.cJS({imports:[[h.ez,d.o.forChild(V),p.ot]]}),n}()}}]); +//# sourceMappingURL=7081.567bb2ff7728b947.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7081.ef5b6750a1738e83.js.map b/frontend/src/main/resources/static/7081.567bb2ff7728b947.js.map similarity index 99% rename from frontend/src/main/resources/static/7081.ef5b6750a1738e83.js.map rename to frontend/src/main/resources/static/7081.567bb2ff7728b947.js.map index cfdc74a..80cffae 100644 --- a/frontend/src/main/resources/static/7081.ef5b6750a1738e83.js.map +++ b/frontend/src/main/resources/static/7081.567bb2ff7728b947.js.map @@ -1 +1 @@ -{"version":3,"mappings":"iWACAA,eACQA,aAAGA,sHAA0GA,QAC7GA,aAAGA,4FAAgFA,QACnFA,iBAIEA,iBACEA,oBAAgFA,iDAASC,yCAAwCD,kDAAsCA,QACzKA,QACFA,QAMFA,SCNC,IAAME,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACAC,GAA4B,6BAEpCC,gBAHQF,YACAE,kBAJVA,0BAAoC,GAIEA,EANxC,uCAYE,WACEC,KAAKC,iBAAmBD,KAAKH,UAAUK,+BAA+BF,KAAKF,cAAcK,WAAWC,8BAChGJ,KAAKK,UAAUC,KAAKC,cAd5B,kDAiBE,WACEC,OAAOC,KAAKT,KAAKF,cAAcK,WAAWC,8BAAgCJ,KAAKK,UAAUC,KAAKC,WAAY,YAlB9G,kDAqBE,WACEP,KAAKU,wBAA0B,CAAC,OAtBpCC,GAAkEC,kDAArDhB,GAA4CF,iDAA5CE,EAA4CiB,8RDVzDnB,4BAAMA,4RCUOE,EAAb,GCEakB,EAAb,eAAaA,KAAbC,iFAAaD,4DAPF,CACPE,KACAC,aAAsCrB,GACtCsB,SAISJ,EAAb","names":["i0","ctx_r1","SubstanceRelationshipsVisualizationComponent","sanitizer","configService","l","this","visualizationUri","bypassSecurityTrustResourceUrl","configData","relationshipsVisualizationUri","substance","uuid","toString","window","open","displayedVisualizations","a","SubstanceCardBase","selectors","SubstanceRelationshipsVisualizationModule","c","CommonModule","DynamicComponentLoaderModule","MatButtonModule"],"sources":["./src/app/core/substance-details/substance-relationships-visualization/substance-relationships-visualization.component.html","./src/app/core/substance-details/substance-relationships-visualization/substance-relationships-visualization.component.ts","./src/app/core/substance-details/substance-relationships-visualization/substance-relationships-visualization.module.ts"],"sourcesContent":["\n
\n

This substance record has relationships which can be visualized as a network with other substance records.

\n

A simplified representation of that network can be interactively explored below.

\n
\n \n
\n \n
\n
\n \n
","\nimport { Component, OnInit } from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {ConfigService} from '@gsrs-core/config';\n\n@Component({\n selector: 'app-substance-relationships-visualization',\n templateUrl: './substance-relationships-visualization.component.html',\n styleUrls: ['./substance-relationships-visualization.component.scss']\n})\nexport class SubstanceRelationshipsVisualizationComponent extends SubstanceCardBase implements OnInit {\n visualizationUri: SafeResourceUrl;\n displayedVisualizations: number[] = [];\n\n constructor(\n private sanitizer: DomSanitizer,\n private configService: ConfigService,\n ) {\n super();\n }\n\n\n ngOnInit() {\n this.visualizationUri = this.sanitizer.bypassSecurityTrustResourceUrl(this.configService.configData.relationshipsVisualizationUri\n + this.substance.uuid.toString());\n }\n\n openRelationshipsVisualizationWindow() {\n window.open(this.configService.configData.relationshipsVisualizationUri + this.substance.uuid.toString(), '_blank');\n }\n\n showRelationshipsVisualizationIframe() {\n this.displayedVisualizations = [1];\n }\n\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceRelationshipsVisualizationComponent } from './substance-relationships-visualization.component';\nimport { MatButtonModule } from '@angular/material/button';\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceRelationshipsVisualizationComponent),\n MatButtonModule,\n ],\n declarations: [SubstanceRelationshipsVisualizationComponent]\n})\nexport class SubstanceRelationshipsVisualizationModule {}"],"sourceRoot":"webpack:///","file":"7081.ef5b6750a1738e83.js"} \ No newline at end of file +{"version":3,"mappings":"iWACAA,eACQA,aAAGA,sHAA0GA,QAC7GA,aAAGA,4FAAgFA,QACnFA,iBAIEA,iBACEA,oBAAgFA,iDAASC,yCAAwCD,kDAAsCA,QACzKA,QACFA,QAMFA,SCNC,IAAME,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACAC,GAA4B,6BAEpCC,gBAHQF,YACAE,kBAJVA,0BAAoC,GAIEA,EANxC,uCAYE,WACEC,KAAKC,iBAAmBD,KAAKH,UAAUK,+BAA+BF,KAAKF,cAAcK,WAAWC,8BAChGJ,KAAKK,UAAUC,KAAKC,cAd5B,kDAiBE,WACEC,OAAOC,KAAKT,KAAKF,cAAcK,WAAWC,8BAAgCJ,KAAKK,UAAUC,KAAKC,WAAY,YAlB9G,kDAqBE,WACEP,KAAKU,wBAA0B,CAAC,OAtBpCC,GAAkEC,kDAArDhB,GAA4CF,iDAA5CE,EAA4CiB,8RDVzDnB,4BAAMA,4RCUOE,EAAb,GCEakB,EAAb,eAAaA,KAAbC,iFAAaD,4DAPF,CACPE,KACAC,aAAsCrB,GACtCsB,SAISJ,EAAb","names":["i0","ctx_r1","SubstanceRelationshipsVisualizationComponent","sanitizer","configService","l","this","visualizationUri","bypassSecurityTrustResourceUrl","configData","relationshipsVisualizationUri","substance","uuid","toString","window","open","displayedVisualizations","a","SubstanceCardBase","selectors","SubstanceRelationshipsVisualizationModule","c","CommonModule","DynamicComponentLoaderModule","MatButtonModule"],"sources":["./src/app/core/substance-details/substance-relationships-visualization/substance-relationships-visualization.component.html","./src/app/core/substance-details/substance-relationships-visualization/substance-relationships-visualization.component.ts","./src/app/core/substance-details/substance-relationships-visualization/substance-relationships-visualization.module.ts"],"sourcesContent":["\n
\n

This substance record has relationships which can be visualized as a network with other substance records.

\n

A simplified representation of that network can be interactively explored below.

\n
\n \n
\n \n
\n
\n \n
","\nimport { Component, OnInit } from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {ConfigService} from '@gsrs-core/config';\n\n@Component({\n selector: 'app-substance-relationships-visualization',\n templateUrl: './substance-relationships-visualization.component.html',\n styleUrls: ['./substance-relationships-visualization.component.scss']\n})\nexport class SubstanceRelationshipsVisualizationComponent extends SubstanceCardBase implements OnInit {\n visualizationUri: SafeResourceUrl;\n displayedVisualizations: number[] = [];\n\n constructor(\n private sanitizer: DomSanitizer,\n private configService: ConfigService,\n ) {\n super();\n }\n\n\n ngOnInit() {\n this.visualizationUri = this.sanitizer.bypassSecurityTrustResourceUrl(this.configService.configData.relationshipsVisualizationUri\n + this.substance.uuid.toString());\n }\n\n openRelationshipsVisualizationWindow() {\n window.open(this.configService.configData.relationshipsVisualizationUri + this.substance.uuid.toString(), '_blank');\n }\n\n showRelationshipsVisualizationIframe() {\n this.displayedVisualizations = [1];\n }\n\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceRelationshipsVisualizationComponent } from './substance-relationships-visualization.component';\nimport { MatButtonModule } from '@angular/material/button';\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceRelationshipsVisualizationComponent),\n MatButtonModule,\n ],\n declarations: [SubstanceRelationshipsVisualizationComponent]\n})\nexport class SubstanceRelationshipsVisualizationModule {}"],"sourceRoot":"webpack:///","file":"7081.567bb2ff7728b947.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7333.2688bf4de8850664.js b/frontend/src/main/resources/static/7333.089593b69d056762.js similarity index 80% rename from frontend/src/main/resources/static/7333.2688bf4de8850664.js rename to frontend/src/main/resources/static/7333.089593b69d056762.js index 0985097..0881443 100644 --- a/frontend/src/main/resources/static/7333.2688bf4de8850664.js +++ b/frontend/src/main/resources/static/7333.089593b69d056762.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7333],{27333:function(nt,h,n){n.r(h),n.d(h,{SubstanceFormStructureModule:function(){return et}});var S=n(48047),b=n(78069),p=n(36362),T=n(24582),M=n(7318),F=n(79223),I=n(33567),_=n(9552),C=n(69093),O=n(45592),U=n(40104),k=n(99146),A=n(12570),E=n(34470),z=n(27336),t=n(76442),N=n(83448),J=n(95758),P=n(66088),L=n(82835),x=n(87317),y=n(65590),g=n(82796),D=n(17537);function Y(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",6),t._UZ(1,"span",7),t.TgZ(2,"span",8),t.TgZ(3,"button",9),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImportDialog()}),t._UZ(4,"mat-icon",10),t._uU(5," Import "),t.qZA(),t.TgZ(6,"button",11),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureExportDialog()}),t._UZ(7,"mat-icon",12),t._uU(8," Export "),t.qZA(),t.TgZ(9,"button",13),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImageModal()}),t._UZ(10,"mat-icon",14),t._uU(11," View stereochemistry "),t.qZA(),t.qZA(),t.qZA()}}function H(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",6),t.TgZ(1,"span",15),t.TgZ(2,"button",16),t.NdJ("click",function(){return t.CHM(u),t.oxw().duplicateCheck()}),t._UZ(3,"mat-icon",17),t._uU(4," Check for duplicates "),t.qZA(),t.qZA(),t._UZ(5,"span",7),t.TgZ(6,"span",8),t.TgZ(7,"button",18),t._UZ(8,"mat-icon",10),t._uU(9," Import \u25bc "),t.qZA(),t.TgZ(10,"button",11),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureExportDialog()}),t._UZ(11,"mat-icon",12),t._uU(12," Export "),t.qZA(),t.TgZ(13,"button",13),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImageModal()}),t._UZ(14,"mat-icon",14),t._uU(15," View stereochemistry "),t.qZA(),t.qZA(),t.TgZ(16,"mat-menu",null,19),t.TgZ(18,"button",20),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImportDialog()}),t._uU(19," Import Structure "),t.qZA(),t.TgZ(20,"button",20),t.NdJ("click",function(){return t.CHM(u),t.oxw().openNameResolverDialog()}),t._uU(21," Resolve name "),t.qZA(),t.qZA(),t.qZA()}if(2&s){var i=t.MAs(17);t.xp6(7),t.Q6J("matMenuTriggerFor",i)}}function Q(s,c){if(1&s&&(t.TgZ(0,"span"),t._UZ(1,"br"),t.TgZ(2,"a",29),t._uU(3),t.qZA(),t.qZA()),2&s){var u=c.$implicit,i=t.oxw(3);t.xp6(2),t.Q6J("href",i.fixLink(u.href),t.LSH),t.xp6(1),t.hij(" ",u.text," ")}}function R(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"div",24),t._uU(2),t.qZA(),t.TgZ(3,"div",25),t._uU(4),t.YNc(5,Q,4,2,"span",26),t.qZA(),t.TgZ(6,"button",27),t.NdJ("click",function(){var o=t.CHM(u).index;return t.oxw(2).dismissErrorMessage(o)}),t._UZ(7,"mat-icon",28),t.qZA(),t.qZA()}if(2&s){var i=c.$implicit;t.xp6(1),t.Q6J("ngClass",i.messageType),t.xp6(1),t.Oqu(i.messageType),t.xp6(2),t.Oqu(i.message),t.xp6(1),t.Q6J("ngForOf",i.links)}}function w(s,c){if(1&s&&(t.TgZ(0,"div",21),t.YNc(1,R,8,4,"div",22),t.qZA()),2&s){var u=t.oxw();t.xp6(1),t.Q6J("ngForOf",u.structureErrorsArray)}}function j(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",30),t.TgZ(1,"button",31),t.NdJ("click",function(){return t.CHM(u),t.oxw().generateSRU()}),t._uU(2,"Generate SRUs"),t.qZA(),t.qZA()}}var V=function(c,u){return{"messages-container":!0,collapsed:c,expanded:u}},B=function(){var s=function(c){(0,T.Z)(i,c);var u=(0,M.Z)(i);function i(r,e,o,a,m,v,f,d,rt){var l;return(0,b.Z)(this,i),(l=u.call(this)).substanceFormService=r,l.substanceFormStructureService=e,l.structureService=o,l.loadingService=a,l.dialog=m,l.overlayContainerService=v,l.gaService=f,l.substanceService=d,l.substanceFormStructuralUnitsService=rt,l.isInitializing=!0,l.subscriptions=[],l}return(0,S.Z)(i,[{key:"ngOnInit",value:function(){var e=this;this.overlayContainer=this.overlayContainerService.getContainerElement();var o=this.substanceFormService.definition.subscribe(function(m){if(e.substanceType=m.substanceClass,"polymer"===e.substanceType){e.menuLabelUpdate.emit("Idealized Structure");var v=e.substanceFormStructureService.substanceIdealizedStructure.subscribe(function(d){d&&(e.structure=d),e.loadStructure()});e.subscriptions.push(v)}else{e.menuLabelUpdate.emit("Structure");var f=e.substanceFormStructureService.substanceStructure.subscribe(function(d){e.structure=d,e.loadStructure()});e.subscriptions.push(f)}});this.subscriptions.push(o),this.substanceFormService.resolvedMol.subscribe(function(m){null!=m&&""!==m&&(e.updateStructureForm(m),e.structureEditor.setMolecule(m))})}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"editorOnLoad",value:function(e){var o=this;this.loadingService.setLoading(!1),this.structureEditor=e,this.loadStructure(),this.structureEditor.structureUpdated().subscribe(function(a){o.updateStructureForm(a),o.smiles=o.structure&&o.structure.smiles||null,o.mol=o.structure&&o.structure.molfile||null}),this.isInitializing=!1}},{key:"startInitializing",value:function(){this.isInitializing=!0}},{key:"endInitializing",value:function(){this.isInitializing=!1}},{key:"loadStructure",value:function(){this.structure&&this.structureEditor&&this.structure.molfile&&(this.isInitializing=!0,this.structureEditor.setMolecule(this.structure.molfile),this.smiles=this.structure.smiles,this.mol=this.structure.molfile,this.isInitializing=!1)}},{key:"molvecUpdate",value:function(e){this.updateStructureForm(e),this.structureEditor.setMolecule(e)}},{key:"updateStructureForm",value:function(e){var o=this;this.isInitializing||(this.structure.molfile=e,this.structureService.interpretStructure(e).subscribe(function(a){o.processStructurePostResponse(a)}))}},{key:"processStructurePostResponse",value:function(e){var o=this;e&&e.structure&&("polymer"===this.substanceType||this.structure.hash!==e.structure.hash||this.structure.charge!==e.structure.charge)&&(this.smiles=e.structure.smiles,this.mol=e.structure.molfile,Object.keys(e.structure).forEach(function(a){"molfile"!==a&&(o.structure[a]=e.structure[a])}),this.structure.uuid="",this.substanceFormStructureService.updateMoieties(e.moieties),"polymer"!==this.substanceType&&e.moieties&&e.moieties.length>1&&(clearTimeout(this.userMessageTimer),this.userMessage="Certain moieties may have been updated and/or deleted. Please check that the changes are correct.",this.userMessageTimer=setTimeout(function(){o.userMessage=null},2e4)))}},{key:"openStructureImportDialog",value:function(){var e=this;this.gaService.sendEvent("structureForm","button:import","import structure");var o=this.dialog.open(C.Nt,{height:"auto",width:"650px",data:{}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(a){e.overlayContainer.style.zIndex=null,null!=a&&(a&&a.structure&&a.structure.molfile&&e.structureEditor.setMolecule(a.structure.molfile),e.processStructurePostResponse(a))},function(){})}},{key:"generateSRU",value:function(){var e=this;this.loadingService.setLoading(!0),this.structureService.interpretStructure(this.structure.molfile).subscribe(function(o){o.structuralUnits&&o.structuralUnits.length>0&&e.substanceFormStructuralUnitsService.updateSRUs(o.structuralUnits),e.loadingService.setLoading(!1)},function(o){e.loadingService.setLoading(!1)})}},{key:"openStructureExportDialog",value:function(){var e=this,o=this.dialog.open(O.g,{height:"auto",width:"650px",data:{molfile:this.mol,smiles:this.smiles,type:this.substanceType}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(){e.overlayContainer.style.zIndex=null},function(){e.overlayContainer.style.zIndex=null})}},{key:"openNameResolverDialog",value:function(){var e=this;this.gaService.sendEvent("structureForm","button:resolveName","resolve name");var o=this.dialog.open(k.a,{height:"auto",width:"800px",data:{}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(a){e.overlayContainer.style.zIndex=null,null!=a&&""!==a&&(e.updateStructureForm(a),e.structureEditor.setMolecule(a))},function(){})}},{key:"openStructureImageModal",value:function(){var e=this,o=this.dialog.open(C.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:this.structure.id}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(){e.overlayContainer.style.zIndex=null},function(){e.overlayContainer.style.zIndex=null})}},{key:"duplicateCheck",value:function(){var e=this;this.structureErrorsArray=[],this.substanceFormService.structureDuplicateCheck().subscribe(function(o){o.forEach(function(a){a.messageType&&"INFO"!==a.messageType&&e.structureErrorsArray.push(a)})})}},{key:"dismissErrorMessage",value:function(e){this.structureErrorsArray.splice(e,1)}},{key:"fixLink",value:function(e){return this.substanceService.oldLinkFix(e)}}]),i}(F.o);return s.\u0275fac=function(u){return new(u||s)(t.Y36(I.B),t.Y36(z.p),t.Y36(_.D),t.Y36(N.b),t.Y36(J.uw),t.Y36(P.Xj),t.Y36(U.$),t.Y36(A.d),t.Y36(E.Z))},s.\u0275cmp=t.Xpm({type:s,selectors:[["app-substance-form-structure-card"]],features:[t.qOj],decls:11,vars:11,consts:[[2,"z-index","9999",3,"loadedMolfile","editorOnLoad"],[3,"ngClass"],["class","button-row",4,"ngIf"],["class","submission-messages",4,"ngIf"],["showSettings","true",3,"structure","type"],["class","button-container",4,"ngIf"],[1,"button-row"],[1,"middle-fill"],[1,"right-buttons"],["mat-button","","color","primary","matTooltip","Import options",3,"click"],["svgIcon","cloud_upload"],["mat-button","","color","primary","matTooltip","export structure",3,"click"],["svgIcon","get_app"],["mat-button","","color","primary","matTooltip","preview structure stereochemistry",3,"click"],["svgIcon","zoom_in"],[1,"left-buttons"],["matTooltip","check the database for duplicate structures","mat-button","","color","primary",1,"dupe-check",3,"click"],["svgIcon","search"],["mat-button","","color","primary","matTooltip","Import options",3,"matMenuTriggerFor"],["importMenu","matMenu"],["mat-menu-item","",3,"click"],[1,"submission-messages"],["class","validation-message",4,"ngFor","ngForOf"],[1,"validation-message"],[1,"message-type",3,"ngClass"],[1,"message"],[4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Dismiss",3,"click"],["svgIcon","close"],["target","_blank",1,"internal-link",3,"href"],[1,"button-container"],["color","primary","matTooltip","generate structural units for this structure",1,"mat-flat-button","mat-primary",3,"click"]],template:function(u,i){1&u&&(t.TgZ(0,"div"),t.TgZ(1,"div"),t.TgZ(2,"div"),t.TgZ(3,"app-structure-editor",0),t.NdJ("loadedMolfile",function(e){return i.molvecUpdate(e)})("editorOnLoad",function(e){return i.editorOnLoad(e)}),t.qZA(),t.qZA(),t.TgZ(4,"div",1),t._uU(5),t.qZA(),t.qZA(),t.YNc(6,Y,12,0,"div",2),t.YNc(7,H,22,1,"div",2),t.YNc(8,w,2,1,"div",3),t._UZ(9,"app-structure-form",4),t.YNc(10,j,3,0,"div",5),t.qZA()),2&u&&(t.xp6(4),t.Q6J("ngClass",t.WLB(8,V,!i.userMessage,i.userMessage)),t.xp6(1),t.hij(" ",i.userMessage," "),t.xp6(1),t.Q6J("ngIf",i.structure&&"polymer"===i.substanceType),t.xp6(1),t.Q6J("ngIf",i.structure&&"structure"===i.substanceType),t.xp6(1),t.Q6J("ngIf",i.structureErrorsArray&&i.structureErrorsArray.length>0),t.xp6(1),t.Q6J("structure",i.structure)("type",i.substanceType),t.xp6(1),t.Q6J("ngIf","polymer"===i.substanceType))},directives:[L.K,p.mk,p.O5,x.lW,y.Hw,g.p6,g.VK,g.OP,p.sg,D.h],styles:[".messages-container[_ngcontent-%COMP%]{text-align:center;font-weight:500;font-size:1.05em;transition:all .5s ease-out;overflow:hidden}.messages-container.collapsed[_ngcontent-%COMP%]{max-height:0}.messages-container.expanded[_ngcontent-%COMP%]{max-height:500px;padding:10px 0 5px}.button-container[_ngcontent-%COMP%]{margin-top:-50px}.button-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;width:100%;margin-bottom:10px}.button-row[_ngcontent-%COMP%] .right-buttons[_ngcontent-%COMP%]{-ms-flex-line-pack:end;align-content:flex-end;display:-ms-flexbox;display:flex;margin-right:-8px}.button-row[_ngcontent-%COMP%] .left-buttons[_ngcontent-%COMP%]{-ms-flex-line-pack:start;align-content:flex-start;display:-ms-flexbox;display:flex}.SUCCESS[_ngcontent-%COMP%]{color:#3f914c;background-color:#def2de}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.WARNING[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.ERROR[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.dupe-check[_ngcontent-%COMP%]{margin-bottom:5px}.internal-link[_ngcontent-%COMP%]{color:#448aff}.z-index[_ngcontent-%COMP%]{z-index:9999!important}"]}),s}(),W=n(64061),X=n(56473),$=n(44770),G=n(43365),Z=n(90587),K=n(91434),q=n(7168),tt=n(96769),et=function(){var s=(0,S.Z)(function c(){(0,b.Z)(this,c)});return s.\u0275fac=function(u){return new(u||s)},s.\u0275mod=t.oAB({type:s}),s.\u0275inj=t.cJS({imports:[[p.ez,W.o.forChild(B),X.h,$.lN,G.c,Z.UX,Z.u5,K.LD,q.O,tt.O,g.Tx,y.Ps,x.ot]]}),s}()}}]); -//# sourceMappingURL=7333.2688bf4de8850664.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7333],{27333:function(nt,h,n){n.r(h),n.d(h,{SubstanceFormStructureModule:function(){return et}});var b=n(1884),S=n(39117),g=n(36362),T=n(46751),M=n(56101),F=n(79223),I=n(33567),_=n(1790),C=n(69093),O=n(45592),U=n(40104),k=n(99146),A=n(12570),E=n(34470),z=n(27336),t=n(86613),N=n(93392),J=n(95758),P=n(54244),L=n(82835),x=n(87317),y=n(65590),p=n(82796),D=n(17537);function Y(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",6),t._UZ(1,"span",7),t.TgZ(2,"span",8),t.TgZ(3,"button",9),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImportDialog()}),t._UZ(4,"mat-icon",10),t._uU(5," Import "),t.qZA(),t.TgZ(6,"button",11),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureExportDialog()}),t._UZ(7,"mat-icon",12),t._uU(8," Export "),t.qZA(),t.TgZ(9,"button",13),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImageModal()}),t._UZ(10,"mat-icon",14),t._uU(11," View stereochemistry "),t.qZA(),t.qZA(),t.qZA()}}function w(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",6),t.TgZ(1,"span",15),t.TgZ(2,"button",16),t.NdJ("click",function(){return t.CHM(u),t.oxw().duplicateCheck()}),t._UZ(3,"mat-icon",17),t._uU(4," Check for duplicates "),t.qZA(),t.qZA(),t._UZ(5,"span",7),t.TgZ(6,"span",8),t.TgZ(7,"button",18),t._UZ(8,"mat-icon",10),t._uU(9," Import \u25bc "),t.qZA(),t.TgZ(10,"button",11),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureExportDialog()}),t._UZ(11,"mat-icon",12),t._uU(12," Export "),t.qZA(),t.TgZ(13,"button",13),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImageModal()}),t._UZ(14,"mat-icon",14),t._uU(15," View stereochemistry "),t.qZA(),t.qZA(),t.TgZ(16,"mat-menu",null,19),t.TgZ(18,"button",20),t.NdJ("click",function(){return t.CHM(u),t.oxw().openStructureImportDialog()}),t._uU(19," Import Structure "),t.qZA(),t.TgZ(20,"button",20),t.NdJ("click",function(){return t.CHM(u),t.oxw().openNameResolverDialog()}),t._uU(21," Resolve name "),t.qZA(),t.qZA(),t.qZA()}if(2&s){var i=t.MAs(17);t.xp6(7),t.Q6J("matMenuTriggerFor",i)}}function H(s,c){if(1&s&&(t.TgZ(0,"span"),t._UZ(1,"br"),t.TgZ(2,"a",29),t._uU(3),t.qZA(),t.qZA()),2&s){var u=c.$implicit,i=t.oxw(3);t.xp6(2),t.Q6J("href",i.fixLink(u.href),t.LSH),t.xp6(1),t.hij(" ",u.text," ")}}function Q(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"div",24),t._uU(2),t.qZA(),t.TgZ(3,"div",25),t._uU(4),t.YNc(5,H,4,2,"span",26),t.qZA(),t.TgZ(6,"button",27),t.NdJ("click",function(){var o=t.CHM(u).index;return t.oxw(2).dismissErrorMessage(o)}),t._UZ(7,"mat-icon",28),t.qZA(),t.qZA()}if(2&s){var i=c.$implicit;t.xp6(1),t.Q6J("ngClass",i.messageType),t.xp6(1),t.Oqu(i.messageType),t.xp6(2),t.Oqu(i.message),t.xp6(1),t.Q6J("ngForOf",i.links)}}function R(s,c){if(1&s&&(t.TgZ(0,"div",21),t.YNc(1,Q,8,4,"div",22),t.qZA()),2&s){var u=t.oxw();t.xp6(1),t.Q6J("ngForOf",u.structureErrorsArray)}}function j(s,c){if(1&s){var u=t.EpF();t.TgZ(0,"div",30),t.TgZ(1,"button",31),t.NdJ("click",function(){return t.CHM(u),t.oxw().generateSRU()}),t._uU(2,"Generate SRUs"),t.qZA(),t.qZA()}}var V=function(c,u){return{"messages-container":!0,collapsed:c,expanded:u}},B=function(){var s=function(c){(0,T.Z)(i,c);var u=(0,M.Z)(i);function i(r,e,o,a,m,v,f,d,rt){var l;return(0,S.Z)(this,i),(l=u.call(this)).substanceFormService=r,l.substanceFormStructureService=e,l.structureService=o,l.loadingService=a,l.dialog=m,l.overlayContainerService=v,l.gaService=f,l.substanceService=d,l.substanceFormStructuralUnitsService=rt,l.isInitializing=!0,l.subscriptions=[],l}return(0,b.Z)(i,[{key:"ngOnInit",value:function(){var e=this;this.overlayContainer=this.overlayContainerService.getContainerElement();var o=this.substanceFormService.definition.subscribe(function(m){if(e.substanceType=m.substanceClass,"polymer"===e.substanceType){e.menuLabelUpdate.emit("Idealized Structure");var v=e.substanceFormStructureService.substanceIdealizedStructure.subscribe(function(d){d&&(e.structure=d),e.loadStructure()});e.subscriptions.push(v)}else{e.menuLabelUpdate.emit("Structure");var f=e.substanceFormStructureService.substanceStructure.subscribe(function(d){e.structure=d,e.loadStructure()});e.subscriptions.push(f)}});this.subscriptions.push(o),this.substanceFormService.resolvedMol.subscribe(function(m){null!=m&&""!==m&&(e.updateStructureForm(m),e.structureEditor.setMolecule(m))})}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"editorOnLoad",value:function(e){var o=this;this.loadingService.setLoading(!1),this.structureEditor=e,this.loadStructure(),this.structureEditor.structureUpdated().subscribe(function(a){o.updateStructureForm(a),o.smiles=o.structure&&o.structure.smiles||null,o.mol=o.structure&&o.structure.molfile||null}),this.isInitializing=!1}},{key:"startInitializing",value:function(){this.isInitializing=!0}},{key:"endInitializing",value:function(){this.isInitializing=!1}},{key:"loadStructure",value:function(){this.structure&&this.structureEditor&&this.structure.molfile&&(this.isInitializing=!0,this.structureEditor.setMolecule(this.structure.molfile),this.smiles=this.structure.smiles,this.mol=this.structure.molfile,this.isInitializing=!1)}},{key:"molvecUpdate",value:function(e){this.updateStructureForm(e),this.structureEditor.setMolecule(e)}},{key:"updateStructureForm",value:function(e){var o=this;this.isInitializing||(this.structure.molfile=e,this.structureService.interpretStructure(e).subscribe(function(a){o.processStructurePostResponse(a)}))}},{key:"processStructurePostResponse",value:function(e){var o=this;e&&e.structure&&("polymer"===this.substanceType||this.structure.hash!==e.structure.hash||this.structure.charge!==e.structure.charge)&&(this.smiles=e.structure.smiles,this.mol=e.structure.molfile,Object.keys(e.structure).forEach(function(a){"molfile"!==a&&(o.structure[a]=e.structure[a])}),this.structure.uuid="",this.substanceFormStructureService.updateMoieties(e.moieties),"polymer"!==this.substanceType&&e.moieties&&e.moieties.length>1&&(clearTimeout(this.userMessageTimer),this.userMessage="Certain moieties may have been updated and/or deleted. Please check that the changes are correct.",this.userMessageTimer=setTimeout(function(){o.userMessage=null},2e4)))}},{key:"openStructureImportDialog",value:function(){var e=this;this.gaService.sendEvent("structureForm","button:import","import structure");var o=this.dialog.open(C.Nt,{height:"auto",width:"650px",data:{}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(a){e.overlayContainer.style.zIndex=null,null!=a&&(a&&a.structure&&a.structure.molfile&&e.structureEditor.setMolecule(a.structure.molfile),e.processStructurePostResponse(a))},function(){})}},{key:"generateSRU",value:function(){var e=this;this.loadingService.setLoading(!0),this.structureService.interpretStructure(this.structure.molfile).subscribe(function(o){o.structuralUnits&&o.structuralUnits.length>0&&e.substanceFormStructuralUnitsService.updateSRUs(o.structuralUnits),e.loadingService.setLoading(!1)},function(o){e.loadingService.setLoading(!1)})}},{key:"openStructureExportDialog",value:function(){var e=this,o=this.dialog.open(O.g,{height:"auto",width:"650px",data:{molfile:this.mol,smiles:this.smiles,type:this.substanceType}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(){e.overlayContainer.style.zIndex=null},function(){e.overlayContainer.style.zIndex=null})}},{key:"openNameResolverDialog",value:function(){var e=this;this.gaService.sendEvent("structureForm","button:resolveName","resolve name");var o=this.dialog.open(k.a,{height:"auto",width:"800px",data:{}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(a){e.overlayContainer.style.zIndex=null,null!=a&&""!==a&&(e.updateStructureForm(a),e.structureEditor.setMolecule(a))},function(){})}},{key:"openStructureImageModal",value:function(){var e=this,o=this.dialog.open(C.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:this.structure.id}});this.overlayContainer.style.zIndex="1002",o.afterClosed().subscribe(function(){e.overlayContainer.style.zIndex=null},function(){e.overlayContainer.style.zIndex=null})}},{key:"duplicateCheck",value:function(){var e=this;this.structureErrorsArray=[],this.substanceFormService.structureDuplicateCheck().subscribe(function(o){o.forEach(function(a){a.messageType&&"INFO"!==a.messageType&&e.structureErrorsArray.push(a)})})}},{key:"dismissErrorMessage",value:function(e){this.structureErrorsArray.splice(e,1)}},{key:"fixLink",value:function(e){return this.substanceService.oldLinkFix(e)}}]),i}(F.o);return s.\u0275fac=function(u){return new(u||s)(t.Y36(I.B),t.Y36(z.p),t.Y36(_.D),t.Y36(N.b),t.Y36(J.uw),t.Y36(P.Xj),t.Y36(U.$),t.Y36(A.d),t.Y36(E.Z))},s.\u0275cmp=t.Xpm({type:s,selectors:[["app-substance-form-structure-card"]],features:[t.qOj],decls:11,vars:11,consts:[[2,"z-index","9999",3,"loadedMolfile","editorOnLoad"],[3,"ngClass"],["class","button-row",4,"ngIf"],["class","submission-messages",4,"ngIf"],["showSettings","true",3,"structure","type"],["class","button-container",4,"ngIf"],[1,"button-row"],[1,"middle-fill"],[1,"right-buttons"],["mat-button","","color","primary","matTooltip","Import options",3,"click"],["svgIcon","cloud_upload"],["mat-button","","color","primary","matTooltip","export structure",3,"click"],["svgIcon","get_app"],["mat-button","","color","primary","matTooltip","preview structure stereochemistry",3,"click"],["svgIcon","zoom_in"],[1,"left-buttons"],["matTooltip","check the database for duplicate structures","mat-button","","color","primary",1,"dupe-check",3,"click"],["svgIcon","search"],["mat-button","","color","primary","matTooltip","Import options",3,"matMenuTriggerFor"],["importMenu","matMenu"],["mat-menu-item","",3,"click"],[1,"submission-messages"],["class","validation-message",4,"ngFor","ngForOf"],[1,"validation-message"],[1,"message-type",3,"ngClass"],[1,"message"],[4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Dismiss",3,"click"],["svgIcon","close"],["target","_blank",1,"internal-link",3,"href"],[1,"button-container"],["color","primary","matTooltip","generate structural units for this structure",1,"mat-flat-button","mat-primary",3,"click"]],template:function(u,i){1&u&&(t.TgZ(0,"div"),t.TgZ(1,"div"),t.TgZ(2,"div"),t.TgZ(3,"app-structure-editor",0),t.NdJ("loadedMolfile",function(e){return i.molvecUpdate(e)})("editorOnLoad",function(e){return i.editorOnLoad(e)}),t.qZA(),t.qZA(),t.TgZ(4,"div",1),t._uU(5),t.qZA(),t.qZA(),t.YNc(6,Y,12,0,"div",2),t.YNc(7,w,22,1,"div",2),t.YNc(8,R,2,1,"div",3),t._UZ(9,"app-structure-form",4),t.YNc(10,j,3,0,"div",5),t.qZA()),2&u&&(t.xp6(4),t.Q6J("ngClass",t.WLB(8,V,!i.userMessage,i.userMessage)),t.xp6(1),t.hij(" ",i.userMessage," "),t.xp6(1),t.Q6J("ngIf",i.structure&&"polymer"===i.substanceType),t.xp6(1),t.Q6J("ngIf",i.structure&&"structure"===i.substanceType),t.xp6(1),t.Q6J("ngIf",i.structureErrorsArray&&i.structureErrorsArray.length>0),t.xp6(1),t.Q6J("structure",i.structure)("type",i.substanceType),t.xp6(1),t.Q6J("ngIf","polymer"===i.substanceType))},directives:[L.K,g.mk,g.O5,x.lW,y.Hw,p.p6,p.VK,p.OP,g.sg,D.h],styles:[".messages-container[_ngcontent-%COMP%]{text-align:center;font-weight:500;font-size:1.05em;transition:all .5s ease-out;overflow:hidden}.messages-container.collapsed[_ngcontent-%COMP%]{max-height:0}.messages-container.expanded[_ngcontent-%COMP%]{max-height:500px;padding:10px 0 5px}.button-container[_ngcontent-%COMP%]{margin-top:-50px}.button-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;width:100%;margin-bottom:10px}.button-row[_ngcontent-%COMP%] .right-buttons[_ngcontent-%COMP%]{-ms-flex-line-pack:end;align-content:flex-end;display:-ms-flexbox;display:flex;margin-right:-8px}.button-row[_ngcontent-%COMP%] .left-buttons[_ngcontent-%COMP%]{-ms-flex-line-pack:start;align-content:flex-start;display:-ms-flexbox;display:flex}.SUCCESS[_ngcontent-%COMP%]{color:var(--success-green-color);background-color:var(--success-green-bg-color)}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.WARNING[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.ERROR[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.dupe-check[_ngcontent-%COMP%]{margin-bottom:5px}.internal-link[_ngcontent-%COMP%]{color:var(--link-primary-color)}.z-index[_ngcontent-%COMP%]{z-index:9999!important}"]}),s}(),W=n(64061),X=n(56473),$=n(44770),G=n(43365),Z=n(90587),K=n(91434),q=n(7168),tt=n(96769),et=function(){var s=(0,b.Z)(function c(){(0,S.Z)(this,c)});return s.\u0275fac=function(u){return new(u||s)},s.\u0275mod=t.oAB({type:s}),s.\u0275inj=t.cJS({imports:[[g.ez,W.o.forChild(B),X.h,$.lN,G.c,Z.UX,Z.u5,K.LD,q.O,tt.O,p.Tx,y.Ps,x.ot]]}),s}()}}]); +//# sourceMappingURL=7333.089593b69d056762.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7333.2688bf4de8850664.js.map b/frontend/src/main/resources/static/7333.089593b69d056762.js.map similarity index 99% rename from frontend/src/main/resources/static/7333.2688bf4de8850664.js.map rename to frontend/src/main/resources/static/7333.089593b69d056762.js.map index 48428a2..613468c 100644 --- a/frontend/src/main/resources/static/7333.2688bf4de8850664.js.map +++ b/frontend/src/main/resources/static/7333.089593b69d056762.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r4","ctx_r6","ctx_r7","ctx_r9","ctx_r11","ctx_r12","ctx_r13","ctx_r14","ctx_r20","ctx_r22","SubstanceFormStructureCardComponent","substanceFormService","substanceFormStructureService","structureService","loadingService","dialog","overlayContainerService","gaService","substanceService","substanceFormStructuralUnitsService","l","this","overlayContainer","getContainerElement","definitionSubscription","definition","subscribe","e","substanceType","def","substanceClass","menuLabelUpdate","emit","idealStructSubscription","substanceIdealizedStructure","structure","loadStructure","subscriptions","push","structSubscription","substanceStructure","resolvedMol","mol","updateStructureForm","structureEditor","setMolecule","forEach","subscription","unsubscribe","editor","setLoading","structureUpdated","o","molfile","smiles","isInitializing","interpretStructure","processStructurePostResponse","response","structurePostResponse","hash","charge","Object","keys","key","uuid","updateMoieties","moieties","length","clearTimeout","userMessageTimer","userMessage","setTimeout","sendEvent","dialogRef","open","StructureImportComponent","height","width","data","style","zIndex","afterClosed","structuralUnits","updateSRUs","StructureExportComponent","type","NameResolverDialogComponent","StructureImageModalComponent","panelClass","id","structureErrorsArray","structureDuplicateCheck","resp","messageType","index","splice","link","oldLinkFix","i","SubstanceFormBase","selectors","ctx","SubstanceFormStructureModule","S","CommonModule","DynamicComponentLoaderModule","StructureEditorModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","MatMenuModule","MatIconModule","MatButtonModule"],"sources":["./src/app/core/substance-form/structure/substance-form-structure-card.component.html","./src/app/core/substance-form/structure/substance-form-structure-card.component.ts","./src/app/core/substance-form/structure/substance-form-structure.module.ts"],"sourcesContent":["
\n
\n
\n \n \n
\n
\n {{userMessage}}\n
\n
\n
\n \n \n \n \n \n \n
\n
\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
\n
0\">\n
\n
{{err.messageType}}
\n
{{err.message}}
\n \n {{link.text}}\n
\n \n
\n
\n \n \n
\n \n
\n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { Editor } from '../../structure-editor/structure.editor.model';\nimport { SubstanceStructure } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { StructureService } from '../../structure/structure.service';\nimport { LoadingService } from '../../loading/loading.service';\nimport { InterpretStructureResponse, StructureImportComponent, StructureImageModalComponent } from '@gsrs-core/structure';\nimport { MatDialog } from '@angular/material/dialog';\nimport { StructureExportComponent } from '@gsrs-core/structure/structure-export/structure-export.component';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { StructureDuplicationMessage } from '../substance-form.model';\nimport { NameResolverDialogComponent } from '@gsrs-core/name-resolver/name-resolver-dialog.component';\nimport { Subscription } from 'rxjs';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { SubstanceFormStructuralUnitsService } from '../structural-units/substance-form-structural-units.service';\nimport { SubstanceFormStructureService } from './substance-form-structure.service';\n\n@Component({\n selector: 'app-substance-form-structure-card',\n templateUrl: './substance-form-structure-card.component.html',\n styleUrls: ['./substance-form-structure-card.component.scss']\n})\nexport class SubstanceFormStructureCardComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n structureEditor: Editor;\n structure: SubstanceStructure;\n userMessage: string;\n userMessageTimer: any;\n substanceType: string;\n smiles: string;\n mol: string;\n isInitializing = true;\n private overlayContainer: HTMLElement;\n structureErrorsArray: Array;\n subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceFormStructureService: SubstanceFormStructureService,\n private structureService: StructureService,\n private loadingService: LoadingService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private gaService: GoogleAnalyticsService,\n private substanceService: SubstanceService,\n private substanceFormStructuralUnitsService: SubstanceFormStructuralUnitsService\n ) {\n super();\n }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const definitionSubscription = this.substanceFormService.definition.subscribe(def => {\n this.substanceType = def.substanceClass;\n if (this.substanceType === 'polymer') {\n this.menuLabelUpdate.emit('Idealized Structure');\n const idealStructSubscription = this.substanceFormStructureService.substanceIdealizedStructure.subscribe(structure => {\n if (structure) {\n this.structure = structure;\n } else {\n // while we also want to do something with display structures eventually,\n // this isn't the place to do it, I don't think ...\n //\n // this.substanceFormService.substanceDisplayStructure.subscribe(structure2 => {\n // this.structure = structure2;\n // });\n }\n this.loadStructure();\n });\n this.subscriptions.push(idealStructSubscription);\n } else {\n this.menuLabelUpdate.emit('Structure');\n const structSubscription = this.substanceFormStructureService.substanceStructure.subscribe(structure => {\n this.structure = structure;\n this.loadStructure();\n });\n this.subscriptions.push(structSubscription);\n }\n });\n this.subscriptions.push(definitionSubscription);\n const resolver = this.substanceFormService.resolvedMol.subscribe(mol => {\n if (mol != null && mol !== '') {\n this.updateStructureForm(mol);\n this.structureEditor.setMolecule(mol);\n }\n });\n }\n\n ngAfterViewInit() {\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n editorOnLoad(editor: Editor): void {\n this.loadingService.setLoading(false);\n this.structureEditor = editor;\n this.loadStructure();\n this.structureEditor.structureUpdated().subscribe(molfile => {\n this.updateStructureForm(molfile);\n this.smiles = this.structure && this.structure.smiles || null;\n this.mol = this.structure && this.structure.molfile || null;\n });\n this.isInitializing = false;\n }\n\n startInitializing(): void {\n this.isInitializing = true;\n }\n\n endInitializing(): void {\n this.isInitializing = false;\n }\n\n loadStructure(): void {\n if (this.structure && this.structureEditor && this.structure.molfile) {\n this.isInitializing = true;\n this.structureEditor.setMolecule(this.structure.molfile);\n this.smiles = this.structure.smiles;\n this.mol = this.structure.molfile;\n this.isInitializing = false;\n }\n }\n\n molvecUpdate(mol: any): void {\n this.updateStructureForm(mol);\n this.structureEditor.setMolecule(mol);\n }\n\n updateStructureForm(molfile: string): void {\n if (!this.isInitializing) {\n this.structure.molfile = molfile;\n this.structureService.interpretStructure(molfile).subscribe(response => {\n this.processStructurePostResponse(response);\n });\n }\n }\n\n processStructurePostResponse(structurePostResponse?: InterpretStructureResponse): void {\n if (structurePostResponse && structurePostResponse.structure) {\n\n // we should only be dealing with this stuff if the total hash changes\n // or if the charge changes, or if it's a polymer\n if (this.substanceType === 'polymer' ||\n this.structure['hash'] !== structurePostResponse.structure['hash'] ||\n this.structure['charge'] !== structurePostResponse.structure['charge']) {\n\n this.smiles = structurePostResponse.structure.smiles;\n this.mol = structurePostResponse.structure.molfile;\n // this is sometimes overly ambitious\n Object.keys(structurePostResponse.structure).forEach(key => {\n // we don't want to do this with molfile, we want to trust the editor\n if (key !== 'molfile') {\n this.structure[key] = structurePostResponse.structure[key];\n }\n });\n\n this.structure.uuid = '';\n this.substanceFormStructureService.updateMoieties(structurePostResponse.moieties);\n if (this.substanceType !== 'polymer') {\n if (structurePostResponse.moieties && structurePostResponse.moieties.length > 1) {\n clearTimeout(this.userMessageTimer);\n this.userMessage = 'Certain moieties may have been updated and/or deleted. Please check that the changes are correct.';\n this.userMessageTimer = setTimeout(() => {\n this.userMessage = null;\n }, 20000);\n }\n }\n }\n }\n }\n\n openStructureImportDialog(): void {\n this.gaService.sendEvent('structureForm', 'button:import', 'import structure');\n const dialogRef = this.dialog.open(StructureImportComponent, {\n height: 'auto',\n width: '650px',\n data: {}\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe((response?: InterpretStructureResponse) => {\n this.overlayContainer.style.zIndex = null;\n if (response != null) {\n if (response && response.structure && response.structure.molfile) {\n this.structureEditor.setMolecule(response.structure.molfile);\n }\n this.processStructurePostResponse(response);\n }\n }, () => { });\n }\n\n generateSRU(): void {\n this.loadingService.setLoading(true);\n this.structureService.interpretStructure(this.structure.molfile).subscribe(response => {\n if (response.structuralUnits && response.structuralUnits.length > 0) {\n this.substanceFormStructuralUnitsService.updateSRUs(response.structuralUnits);\n }\n this.loadingService.setLoading(false);\n }, error => {\n this.loadingService.setLoading(false);\n });\n }\n\n openStructureExportDialog(): void {\n\n const dialogRef = this.dialog.open(StructureExportComponent, {\n height: 'auto',\n width: '650px',\n data: {\n molfile: this.mol,\n smiles: this.smiles,\n type: this.substanceType\n }\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n }, () => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n openNameResolverDialog(): void {\n this.gaService.sendEvent('structureForm', 'button:resolveName', 'resolve name');\n const dialogRef = this.dialog.open(NameResolverDialogComponent, {\n height: 'auto',\n width: '800px',\n data: {}\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe((molfile?: string) => {\n this.overlayContainer.style.zIndex = null;\n if (molfile != null && molfile !== '') {\n this.updateStructureForm(molfile);\n this.structureEditor.setMolecule(molfile);\n }\n }, () => { });\n }\n\n openStructureImageModal(): void {\n\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\n height: '90%',\n width: '650px',\n panelClass: 'structure-image-panel',\n data: {\n structure: this.structure.id\n }\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n }, () => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n duplicateCheck() {\n this.structureErrorsArray = [];\n this.substanceFormService.structureDuplicateCheck().subscribe(response => {\n response.forEach(resp => {\n if (resp.messageType && resp.messageType !== 'INFO') {\n this.structureErrorsArray.push(resp);\n }\n });\n });\n }\n\n dismissErrorMessage(index: number) {\n this.structureErrorsArray.splice(index, 1);\n }\n\n fixLink(link: string) {\n return this.substanceService.oldLinkFix(link);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormStructureCardComponent } from './substance-form-structure-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { StructureEditorModule } from '../../structure-editor/structure-editor.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\nimport { DragDropPasteDirective } from '@gsrs-core/substance-form/structure/drag-drop-paste.component';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatMenuModule} from '@angular/material/menu';\nimport {MatButtonModule} from '@angular/material/button';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructureCardComponent),\n StructureEditorModule,\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n MatMenuModule,\n MatIconModule,\n MatButtonModule\n ],\n declarations: [\n SubstanceFormStructureCardComponent,\n ]\n})\nexport class SubstanceFormStructureModule { }\n"],"sourceRoot":"webpack:///","file":"7333.2688bf4de8850664.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r4","ctx_r6","ctx_r7","ctx_r9","ctx_r11","ctx_r12","ctx_r13","ctx_r14","ctx_r20","ctx_r22","SubstanceFormStructureCardComponent","substanceFormService","substanceFormStructureService","structureService","loadingService","dialog","overlayContainerService","gaService","substanceService","substanceFormStructuralUnitsService","l","this","overlayContainer","getContainerElement","definitionSubscription","definition","subscribe","e","substanceType","def","substanceClass","menuLabelUpdate","emit","idealStructSubscription","substanceIdealizedStructure","structure","loadStructure","subscriptions","push","structSubscription","substanceStructure","resolvedMol","mol","updateStructureForm","structureEditor","setMolecule","forEach","subscription","unsubscribe","editor","setLoading","structureUpdated","o","molfile","smiles","isInitializing","interpretStructure","processStructurePostResponse","response","structurePostResponse","hash","charge","Object","keys","key","uuid","updateMoieties","moieties","length","clearTimeout","userMessageTimer","userMessage","setTimeout","sendEvent","dialogRef","open","StructureImportComponent","height","width","data","style","zIndex","afterClosed","structuralUnits","updateSRUs","StructureExportComponent","type","NameResolverDialogComponent","StructureImageModalComponent","panelClass","id","structureErrorsArray","structureDuplicateCheck","resp","messageType","index","splice","link","oldLinkFix","i","SubstanceFormBase","selectors","ctx","SubstanceFormStructureModule","b","CommonModule","DynamicComponentLoaderModule","StructureEditorModule","MatFormFieldModule","MatInputModule","ReactiveFormsModule","FormsModule","MatSelectModule","SubstanceFormModule","NameResolverModule","MatMenuModule","MatIconModule","MatButtonModule"],"sources":["./src/app/core/substance-form/structure/substance-form-structure-card.component.html","./src/app/core/substance-form/structure/substance-form-structure-card.component.ts","./src/app/core/substance-form/structure/substance-form-structure.module.ts"],"sourcesContent":["
\n
\n
\n \n \n
\n
\n {{userMessage}}\n
\n
\n
\n \n \n \n \n \n \n
\n
\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
\n
0\">\n
\n
{{err.messageType}}
\n
{{err.message}}
\n \n {{link.text}}\n
\n \n
\n
\n \n \n
\n \n
\n
","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { Editor } from '../../structure-editor/structure.editor.model';\nimport { SubstanceStructure } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { StructureService } from '../../structure/structure.service';\nimport { LoadingService } from '../../loading/loading.service';\nimport { InterpretStructureResponse, StructureImportComponent, StructureImageModalComponent } from '@gsrs-core/structure';\nimport { MatDialog } from '@angular/material/dialog';\nimport { StructureExportComponent } from '@gsrs-core/structure/structure-export/structure-export.component';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { StructureDuplicationMessage } from '../substance-form.model';\nimport { NameResolverDialogComponent } from '@gsrs-core/name-resolver/name-resolver-dialog.component';\nimport { Subscription } from 'rxjs';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { SubstanceFormStructuralUnitsService } from '../structural-units/substance-form-structural-units.service';\nimport { SubstanceFormStructureService } from './substance-form-structure.service';\n\n@Component({\n selector: 'app-substance-form-structure-card',\n templateUrl: './substance-form-structure-card.component.html',\n styleUrls: ['./substance-form-structure-card.component.scss']\n})\nexport class SubstanceFormStructureCardComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n structureEditor: Editor;\n structure: SubstanceStructure;\n userMessage: string;\n userMessageTimer: any;\n substanceType: string;\n smiles: string;\n mol: string;\n isInitializing = true;\n private overlayContainer: HTMLElement;\n structureErrorsArray: Array;\n subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceFormStructureService: SubstanceFormStructureService,\n private structureService: StructureService,\n private loadingService: LoadingService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private gaService: GoogleAnalyticsService,\n private substanceService: SubstanceService,\n private substanceFormStructuralUnitsService: SubstanceFormStructuralUnitsService\n ) {\n super();\n }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const definitionSubscription = this.substanceFormService.definition.subscribe(def => {\n this.substanceType = def.substanceClass;\n if (this.substanceType === 'polymer') {\n this.menuLabelUpdate.emit('Idealized Structure');\n const idealStructSubscription = this.substanceFormStructureService.substanceIdealizedStructure.subscribe(structure => {\n if (structure) {\n this.structure = structure;\n } else {\n // while we also want to do something with display structures eventually,\n // this isn't the place to do it, I don't think ...\n //\n // this.substanceFormService.substanceDisplayStructure.subscribe(structure2 => {\n // this.structure = structure2;\n // });\n }\n this.loadStructure();\n });\n this.subscriptions.push(idealStructSubscription);\n } else {\n this.menuLabelUpdate.emit('Structure');\n const structSubscription = this.substanceFormStructureService.substanceStructure.subscribe(structure => {\n this.structure = structure;\n this.loadStructure();\n });\n this.subscriptions.push(structSubscription);\n }\n });\n this.subscriptions.push(definitionSubscription);\n const resolver = this.substanceFormService.resolvedMol.subscribe(mol => {\n if (mol != null && mol !== '') {\n this.updateStructureForm(mol);\n this.structureEditor.setMolecule(mol);\n }\n });\n }\n\n ngAfterViewInit() {\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n editorOnLoad(editor: Editor): void {\n this.loadingService.setLoading(false);\n this.structureEditor = editor;\n this.loadStructure();\n this.structureEditor.structureUpdated().subscribe(molfile => {\n this.updateStructureForm(molfile);\n this.smiles = this.structure && this.structure.smiles || null;\n this.mol = this.structure && this.structure.molfile || null;\n });\n this.isInitializing = false;\n }\n\n startInitializing(): void {\n this.isInitializing = true;\n }\n\n endInitializing(): void {\n this.isInitializing = false;\n }\n\n loadStructure(): void {\n if (this.structure && this.structureEditor && this.structure.molfile) {\n this.isInitializing = true;\n this.structureEditor.setMolecule(this.structure.molfile);\n this.smiles = this.structure.smiles;\n this.mol = this.structure.molfile;\n this.isInitializing = false;\n }\n }\n\n molvecUpdate(mol: any): void {\n this.updateStructureForm(mol);\n this.structureEditor.setMolecule(mol);\n }\n\n updateStructureForm(molfile: string): void {\n if (!this.isInitializing) {\n this.structure.molfile = molfile;\n this.structureService.interpretStructure(molfile).subscribe(response => {\n this.processStructurePostResponse(response);\n });\n }\n }\n\n processStructurePostResponse(structurePostResponse?: InterpretStructureResponse): void {\n if (structurePostResponse && structurePostResponse.structure) {\n\n // we should only be dealing with this stuff if the total hash changes\n // or if the charge changes, or if it's a polymer\n if (this.substanceType === 'polymer' ||\n this.structure['hash'] !== structurePostResponse.structure['hash'] ||\n this.structure['charge'] !== structurePostResponse.structure['charge']) {\n\n this.smiles = structurePostResponse.structure.smiles;\n this.mol = structurePostResponse.structure.molfile;\n // this is sometimes overly ambitious\n Object.keys(structurePostResponse.structure).forEach(key => {\n // we don't want to do this with molfile, we want to trust the editor\n if (key !== 'molfile') {\n this.structure[key] = structurePostResponse.structure[key];\n }\n });\n\n this.structure.uuid = '';\n this.substanceFormStructureService.updateMoieties(structurePostResponse.moieties);\n if (this.substanceType !== 'polymer') {\n if (structurePostResponse.moieties && structurePostResponse.moieties.length > 1) {\n clearTimeout(this.userMessageTimer);\n this.userMessage = 'Certain moieties may have been updated and/or deleted. Please check that the changes are correct.';\n this.userMessageTimer = setTimeout(() => {\n this.userMessage = null;\n }, 20000);\n }\n }\n }\n }\n }\n\n openStructureImportDialog(): void {\n this.gaService.sendEvent('structureForm', 'button:import', 'import structure');\n const dialogRef = this.dialog.open(StructureImportComponent, {\n height: 'auto',\n width: '650px',\n data: {}\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe((response?: InterpretStructureResponse) => {\n this.overlayContainer.style.zIndex = null;\n if (response != null) {\n if (response && response.structure && response.structure.molfile) {\n this.structureEditor.setMolecule(response.structure.molfile);\n }\n this.processStructurePostResponse(response);\n }\n }, () => { });\n }\n\n generateSRU(): void {\n this.loadingService.setLoading(true);\n this.structureService.interpretStructure(this.structure.molfile).subscribe(response => {\n if (response.structuralUnits && response.structuralUnits.length > 0) {\n this.substanceFormStructuralUnitsService.updateSRUs(response.structuralUnits);\n }\n this.loadingService.setLoading(false);\n }, error => {\n this.loadingService.setLoading(false);\n });\n }\n\n openStructureExportDialog(): void {\n\n const dialogRef = this.dialog.open(StructureExportComponent, {\n height: 'auto',\n width: '650px',\n data: {\n molfile: this.mol,\n smiles: this.smiles,\n type: this.substanceType\n }\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n }, () => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n openNameResolverDialog(): void {\n this.gaService.sendEvent('structureForm', 'button:resolveName', 'resolve name');\n const dialogRef = this.dialog.open(NameResolverDialogComponent, {\n height: 'auto',\n width: '800px',\n data: {}\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe((molfile?: string) => {\n this.overlayContainer.style.zIndex = null;\n if (molfile != null && molfile !== '') {\n this.updateStructureForm(molfile);\n this.structureEditor.setMolecule(molfile);\n }\n }, () => { });\n }\n\n openStructureImageModal(): void {\n\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\n height: '90%',\n width: '650px',\n panelClass: 'structure-image-panel',\n data: {\n structure: this.structure.id\n }\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n }, () => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n duplicateCheck() {\n this.structureErrorsArray = [];\n this.substanceFormService.structureDuplicateCheck().subscribe(response => {\n response.forEach(resp => {\n if (resp.messageType && resp.messageType !== 'INFO') {\n this.structureErrorsArray.push(resp);\n }\n });\n });\n }\n\n dismissErrorMessage(index: number) {\n this.structureErrorsArray.splice(index, 1);\n }\n\n fixLink(link: string) {\n return this.substanceService.oldLinkFix(link);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormStructureCardComponent } from './substance-form-structure-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { StructureEditorModule } from '../../structure-editor/structure-editor.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { NameResolverModule } from '../../name-resolver/name-resolver.module';\nimport { DragDropPasteDirective } from '@gsrs-core/substance-form/structure/drag-drop-paste.component';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatMenuModule} from '@angular/material/menu';\nimport {MatButtonModule} from '@angular/material/button';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormStructureCardComponent),\n StructureEditorModule,\n MatFormFieldModule,\n MatInputModule,\n ReactiveFormsModule,\n FormsModule,\n MatSelectModule,\n SubstanceFormModule,\n NameResolverModule,\n MatMenuModule,\n MatIconModule,\n MatButtonModule\n ],\n declarations: [\n SubstanceFormStructureCardComponent,\n ]\n})\nexport class SubstanceFormStructureModule { }\n"],"sourceRoot":"webpack:///","file":"7333.089593b69d056762.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7398.5d25de6d5e4fd059.js b/frontend/src/main/resources/static/7398.5d25de6d5e4fd059.js new file mode 100644 index 0000000..554b61e --- /dev/null +++ b/frontend/src/main/resources/static/7398.5d25de6d5e4fd059.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7398],{87398:function(J,m,o){o.r(m),o.d(m,{SubstanceSubunitsModule:function(){return k}});var h=o(1884),S=o(39117),p=o(36362),Z=o(46751),O=o(56101),M=o(2756),q=o(42827),T=o(24874),A=o(50253),n=o(86613),b=o(31959),C=o(65590),x=o(98002),y=o(40089);function P(s,a){if(1&s&&(n.TgZ(0,"span",22),n._uU(1),n.qZA()),2&s){var i=a.$implicit,u=n.oxw(3).$implicit,l=n.oxw();n.Q6J("ngClass",i.class?"error":"")("matTooltip",l.getTooltipMessage(u.subunitIndex,i.unitIndex,i.unitValue)),n.xp6(1),n.hij(" ",i.unitValue," ")}}function w(s,a){if(1&s&&(n.TgZ(0,"div",18),n.TgZ(1,"div",19),n._uU(2),n.qZA(),n.TgZ(3,"div",20),n.YNc(4,P,2,3,"span",21),n.qZA(),n.qZA()),2&s){var i=a.$implicit,u=a.last,l=n.oxw().last;n.Q6J("ngClass",l&&u?"last-section":""),n.xp6(2),n.Oqu(i.sectionNumber),n.xp6(2),n.Q6J("ngForOf",i.sectionUnits)}}function I(s,a){if(1&s&&(n.TgZ(0,"div",16),n.YNc(1,w,5,3,"div",17),n.qZA()),2&s){var i=a.$implicit;n.xp6(1),n.Q6J("ngForOf",i.sequenceSections)}}var U=function(){return["/sequence-search"]},_=function(a,i,u){return{substance:a,subunit:i,seq_type:u}};function F(s,a){if(1&s&&(n.TgZ(0,"div",9),n.TgZ(1,"div",10),n.TgZ(2,"div",11),n._uU(3),n.qZA(),n.TgZ(4,"div"),n.TgZ(5,"a",12),n._uU(6,"similarity search "),n._UZ(7,"mat-icon",13),n.qZA(),n.qZA(),n.qZA(),n.TgZ(8,"div",9),n.TgZ(9,"div",14),n.YNc(10,I,2,1,"div",15),n.qZA(),n.qZA(),n.qZA()),2&s){var i=a.$implicit,u=n.oxw();n.xp6(3),n.hij(" Subunit ",i.subunitIndex,""),n.xp6(2),n.Q6J("routerLink",n.DdM(4,U))("queryParams",n.kEZ(5,_,u.uuid,i.uuid,u.substanceType)),n.xp6(5),n.Q6J("ngForOf",i.sequencesSectionGroups)}}function V(s,a){if(1&s&&(n.TgZ(0,"div",23),n.TgZ(1,"h4"),n._uU(2),n.qZA(),n.TgZ(3,"div",24),n._uU(4),n.qZA(),n.qZA()),2&s){var i=a.$implicit;n.xp6(2),n.hij("Subunit ",i.subunitIndex,""),n.xp6(2),n.Oqu(i.sequence)}}var N=function(){var s=function(a){(0,Z.Z)(u,a);var i=(0,O.Z)(u);function u(l,e){var t;return(0,S.Z)(this,u),(t=i.call(this)).cvService=l,t.gaService=e,t.subunits=[],t.subunitSequences=[],t.vocabulary={},t.view="details",t.substanceUpdated=new A.x,t.cvType="AMINO_ACID_RESIDUE",t}return(0,h.Z)(u,[{key:"ngOnInit",value:function(){null!=this.substance&&null!=this.substance.protein&&null!=this.substance.protein.subunits&&this.substance.protein.subunits.length?(this.subunits=this.substance.protein.subunits,this.countUpdate.emit(this.subunits.length),this.cvType="AMINO_ACID_RESIDUE",this.substanceType="protein",this.getVocabularies(),this.uuid=this.substance.uuid):null!=this.substance&&null!=this.substance.nucleicAcid&&null!=this.substance.nucleicAcid.subunits&&this.substance.nucleicAcid.subunits.length&&(this.subunits=this.substance.nucleicAcid.subunits,this.countUpdate.emit(this.subunits.length),this.cvType="NUCLEIC_ACID_BASE",this.substanceType="nucleicAcid",this.getVocabularies(),this.uuid=this.substance.uuid)}},{key:"ngAfterViewInit",value:function(){var e=this;this.substanceUpdated.subscribe(function(t){e.substance=t,e.uuid=e.substance.uuid,e.substance.protein?e.subunits=e.substance.protein.subunits:e.substance.nucleicAcid&&(e.subunits=e.substance.nucleicAcid.subunits),e.countUpdate.emit(e.subunits.length)})}},{key:"getVocabularies",value:function(){var e=this;this.cvService.getDomainVocabulary(this.cvType).subscribe(function(t){e.vocabulary=t[e.cvType].dictionary,e.processSubunits()},function(t){e.processSubunits()})}},{key:"processSubunits",value:function(){var e=this;this.subunits.forEach(function(t){var c={fullSequence:t.sequence,subunitIndex:t.subunitIndex,uuid:t.uuid,sequencesSectionGroups:[]};e.subunitSequences.push(c),e.addSequenceSectionsGroup(c,t.sequence)})}},{key:"addSequenceSectionsGroup",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=50;if(t.length>c+1){var d={sequenceSections:[]};e.sequencesSectionGroups.push(d);var g=t.substr(c,r);this.addSequenceSections(d,g,c),g.length===r&&this.addSequenceSectionsGroup(e,t,c+=r)}}},{key:"addSequenceSections",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",c=arguments.length>2?arguments[2]:void 0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,d=arguments.length>4&&void 0!==arguments[4]?arguments[4]:9,g=10;if(""!==t){for(var v={sectionNumber:0,sectionUnits:[]};r<=d&&t[r];){var f={unitIndex:r+c+1,unitValue:t[r]};this.vocabulary[f.unitValue.toUpperCase()]||(f.class="error"),v.sectionUnits.push(f),r++}v.sectionNumber=r+c,e.sequenceSections.push(v),t.length>r&&this.addSequenceSections(e,t,c,r,d+=g)}}},{key:"getTooltipMessage",value:function(e,t,c){var r;return r=this.vocabulary[c.toUpperCase()]?this.vocabulary[c.toUpperCase()].display:"UNDEFINED","".concat(e," - ").concat(t,": ").concat(c.toUpperCase()," (").concat(r,")")}},{key:"updateView",value:function(e){this.gaService.sendEvent(this.analyticsEventCategory,"button:view-update",e.value),this.view=e.value}}]),u}(M.B);return s.\u0275fac=function(i){return new(i||s)(n.Y36(q.I),n.Y36(T.$))},s.\u0275cmp=n.Xpm({type:s,selectors:[["app-substance-subunits"]],features:[n.qOj],decls:9,vars:4,consts:[[1,"filters-container"],[3,"value","change"],["aria-label","View List","value","details"],["svgIcon","list"],["aria-label","View Raw","value","raw"],["svgIcon","view_stream"],[3,"ngClass"],["class","subunit-sequence",4,"ngFor","ngForOf"],["class","subunit",4,"ngFor","ngForOf"],[1,"subunit-sequence"],[1,"form-row","subunit-row"],[1,"subunit-label"],["target","_blank",1,"subunit-title",3,"routerLink","queryParams"],["svgIcon","open_in_new",1,"icon","small-icon"],[1,"responsive"],["class","sequence-section-group",4,"ngFor","ngForOf"],[1,"sequence-section-group"],["class","sequence-section","class","sequence-section",3,"ngClass",4,"ngFor","ngForOf"],[1,"sequence-section",3,"ngClass"],[1,"section-number"],[1,"section-units-container"],["class","section-unit selectedSite siteref",3,"ngClass","matTooltip",4,"ngFor","ngForOf"],[1,"section-unit","selectedSite","siteref",3,"ngClass","matTooltip"],[1,"subunit"],[1,"raw-sequence"]],template:function(i,u){1&i&&(n.TgZ(0,"div",0),n.TgZ(1,"mat-button-toggle-group",1),n.NdJ("change",function(e){return u.updateView(e)}),n.TgZ(2,"mat-button-toggle",2),n._UZ(3,"mat-icon",3),n.qZA(),n.TgZ(4,"mat-button-toggle",4),n._UZ(5,"mat-icon",5),n.qZA(),n.qZA(),n.qZA(),n.TgZ(6,"div",6),n.YNc(7,F,11,9,"div",7),n.YNc(8,V,5,2,"div",8),n.qZA()),2&i&&(n.xp6(1),n.Q6J("value",u.view),n.xp6(5),n.Q6J("ngClass",u.view),n.xp6(1),n.Q6J("ngForOf",u.subunitSequences),n.xp6(1),n.Q6J("ngForOf",u.subunits))},directives:[b.A9,b.Yi,C.Hw,p.mk,p.sg,x.yS,y.gM],styles:[".filters-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.subunit-title[_ngcontent-%COMP%]{color:var(--link-color);text-decoration:none}.subunit-label[_ngcontent-%COMP%]{font-weight:500;font-size:16px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding-bottom:5px}.sequence-container[_ngcontent-%COMP%]{padding-top:20px}error[_ngcontent-%COMP%]{color:var(--regular-red-color)}.subunit-row[_ngcontent-%COMP%]{padding-top:10px}.details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%], .show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.siteref[_ngcontent-%COMP%]{display:block;width:15.5px!important;text-align:center}.last-section[_ngcontent-%COMP%]{-ms-flex-preferred-size:0!important;flex-basis:0!important}.mat-icon[_ngcontent-%COMP%]{height:15px!important;width:15px!important}"]}),s}(),E=o(64061),k=function(){var s=(0,h.Z)(function a(){(0,S.Z)(this,a)});return s.\u0275fac=function(i){return new(i||s)},s.\u0275mod=n.oAB({type:s}),s.\u0275inj=n.cJS({imports:[[p.ez,E.o.forChild(N),y.AV,b.vV,C.Ps,x.Bz]]}),s}()}}]); +//# sourceMappingURL=7398.5d25de6d5e4fd059.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7398.9c701025cdc7a88b.js.map b/frontend/src/main/resources/static/7398.5d25de6d5e4fd059.js.map similarity index 98% rename from frontend/src/main/resources/static/7398.9c701025cdc7a88b.js.map rename to frontend/src/main/resources/static/7398.5d25de6d5e4fd059.js.map index 04105c8..9319595 100644 --- a/frontend/src/main/resources/static/7398.9c701025cdc7a88b.js.map +++ b/frontend/src/main/resources/static/7398.5d25de6d5e4fd059.js.map @@ -1 +1 @@ -{"version":3,"mappings":"mWA4BYA,mBACEA,SACFA,+DAFiDA,oCAA2C,0EAC1FA,8DAJNA,kBACEA,kBAA4BA,SAAuCA,QACnEA,kBACEA,yBAGFA,QACFA,wDAPoJA,wCACtHA,gCAE2FA,mEAJ3HA,kBACEA,wBAQFA,gCARkEA,gLAdtEA,iBACAA,kBACEA,kBAA8BA,SAAwCA,QACtEA,eACEA,gBAC6FA,8BAC1FA,uBACHA,QACFA,QAEFA,QACEA,iBACAA,kBACEA,yBAUFA,QACAA,QACFA,0CAvBgCA,8CAEDA,wCAAmC,wDASQA,6EAa1EA,kBACEA,cAAIA,SAAgCA,QACpCA,kBAA0BA,SAAoBA,QAChDA,gCAFMA,6CACsBA,4BC1BvB,IAAMC,EAAb,eAAaA,EAAb,0CAWE,WACUC,EACDC,GAAiC,6BAExCC,gBAHQF,YACDE,cAZTA,WAA2B,GAC3BA,mBAA2C,GAC3CA,aAAgE,GAChEA,OAAO,UACPA,mBAAmB,IAAIC,IACvBD,SAAS,qBAOiCA,EAb5C,uCAkBE,WAC0B,MAAlBE,KAAKC,WACsB,MAA1BD,KAAKC,UAAUC,SACoB,MAAnCF,KAAKC,UAAUC,QAAQC,UACvBH,KAAKC,UAAUC,QAAQC,SAASC,QACnCJ,KAAKG,SAAWH,KAAKC,UAAUC,QAAQC,SACvCH,KAAKK,YAAYC,KAAKN,KAAKG,SAASC,QACpCJ,KAAKO,OAAS,qBACdP,KAAKQ,cAAgB,UACrBR,KAAKS,kBACLT,KAAKU,KAAOV,KAAKC,UAAUS,MACA,MAAlBV,KAAKC,WACmB,MAA9BD,KAAKC,UAAUU,aACwB,MAAvCX,KAAKC,UAAUU,YAAYR,UAC3BH,KAAKC,UAAUU,YAAYR,SAASC,SACvCJ,KAAKG,SAAWH,KAAKC,UAAUU,YAAYR,SAC3CH,KAAKK,YAAYC,KAAKN,KAAKG,SAASC,QACpCJ,KAAKO,OAAS,oBACdP,KAAKQ,cAAgB,cACrBR,KAAKS,kBACLT,KAAKU,KAAOV,KAAKC,UAAUS,QAtCnC,6BA0CE,WAAe,WACbV,KAAKY,iBAAiBC,UAAU,YAC9BC,EAAKb,UAAYA,EACjBa,EAAKJ,KAAOI,EAAKb,UAAUS,KACvBI,EAAKb,UAAUC,QACfY,EAAKX,SAAWW,EAAKb,UAAUC,QAAQC,SAChCW,EAAKb,UAAUU,cACtBG,EAAKX,SAAWW,EAAKb,UAAUU,YAAYR,UAE/CW,EAAKT,YAAYC,KAAKQ,EAAKX,SAASC,YAnD1C,6BAuDE,WAAe,WACbJ,KAAKJ,UAAUmB,oBAAoBf,KAAKO,QAAQM,UAAU,YACxDC,EAAKE,WAAaC,EAASH,EAAKP,QAAQW,WACxCJ,EAAKK,mBACJ,YACDL,EAAKK,sBA5DX,6BAgEU,WAAe,WACrBnB,KAAKG,SAASiB,QAAQ,YACpB,IAAMC,EAAmC,CACvCC,aAAcC,EAAQC,SACtBC,aAAcF,EAAQE,aACtBf,KAAMa,EAAQb,KACdgB,uBAAwB,IAE1BZ,EAAKa,iBAAiBC,KAAKP,GAC3BP,EAAKe,yBAAyBR,EAAiBE,EAAQC,cAzE7D,sCA6EU,SAAyBH,GAAoF,IAAlDS,EAAkDC,uDAA1B,GAAIC,EAAsBD,uDAAD,EAC5GE,EAAwB,GAC9B,GAAIH,EAAc1B,OAAU4B,EAAa,EAAI,CAC3C,IAAME,EAA6C,CACjDC,iBAAkB,IAEpBd,EAAgBK,uBAAuBE,KAAKM,GAC5C,IAAME,EAAwBN,EAAcO,OAAOL,EAAYC,GAE/DjC,KAAKsC,oBAAoBJ,EAAsBE,EAAuBJ,GAElEI,EAAsBhC,SAAW6B,GAEnCjC,KAAK6B,yBAAyBR,EAAiBS,EAD/CE,GAA0BC,MAzFlC,iCA+FU,SACNM,GAIoB,IAHpBH,EAGoBL,uDAHY,GAChCS,EAEoBT,uCADpBU,EACoBV,uDADJ,EAChBW,EAAoBX,uDAAD,EACbY,EAAiB,GAEvB,GAA8B,KAA1BP,EAA8B,CAOhC,QALMQ,EAAmC,CACvCC,cAAe,EACfC,aAAc,IAGTL,GAASC,GACVN,EAAsBK,IAAQ,CAChC,IAAMM,EAA6B,CACjCC,UAAWP,EAAQD,EAAsB,EACzCS,UAAWb,EAAsBK,IAE9BzC,KAAKgB,WAAW+B,EAAaE,UAAUC,iBACxCH,EAAaI,MAAQ,SAEzBP,EAAgBE,aAAalB,KAAKmB,GAClCN,IAMJG,EAAgBC,cAAgBJ,EAAQD,EAExCD,EAAaJ,iBAAiBP,KAAKgB,GAE/BR,EAAsBhC,OAASqC,GAEjCzC,KAAKsC,oBAAoBC,EAAcH,EAAuBI,EAAqBC,EADnFC,GAAsBC,MAnI9B,+BAyIE,SAAkBlB,EAAsBuB,EAAmBC,GACzD,IAAIG,EACJ,OACEA,EADEpD,KAAKgB,WAAWiC,EAAUC,eACblD,KAAKgB,WAAWiC,EAAUC,eAAeG,QAEzC,YAEjB,UAAU5B,EAAV,cAA4BuB,EAA5B,aAA0CC,EAAUC,cAApD,aAAsEE,EAAtE,OAhJJ,wBAmJE,SAAWE,GACTtD,KAAKH,UAAU0D,UAAUvD,KAAKwD,uBAAwB,qBAAsBF,EAAMG,OAClFzD,KAAK0D,KAAOJ,EAAMG,UArJtBE,GAAgDC,kDAAnCjE,GAA0BD,gDAA1BC,EAA0BkE,mhCDbvCnE,iBACEA,qCAAwCA,kCAAUoE,kBAChDpE,+BACEA,sBACFA,QACAA,+BACEA,sBACFA,QACFA,QACFA,QACAA,iBACEA,wBA0BAA,uBAIFA,eAxC2BA,+BAStBA,iCACuDA,6CA0BjBA,g+DCxB9BC,EAAb,cCOaoE,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCvE,GACtCwE,KACAC,KACAC,KACAC,SAISP,EAAb","names":["i0","SubstanceSubunitsComponent","cvService","gaService","e","Subject","this","substance","protein","subunits","length","countUpdate","emit","cvType","substanceType","getVocabularies","uuid","nucleicAcid","substanceUpdated","subscribe","t","getDomainVocabulary","vocabulary","response","dictionary","processSubunits","forEach","subunitSequence","fullSequence","subunit","sequence","subunitIndex","sequencesSectionGroups","subunitSequences","push","addSequenceSectionsGroup","squenceString","arguments","indexStart","sequenceSectionLength","sequenceSectionGroup","sequenceSections","sequenceSectionString","substr","addSequenceSections","sectionGroup","sectionNumberAddend","index","indexEnd","indexIncrement","sequenceSection","sectionNumber","sectionUnits","sequenceUnit","unitIndex","unitValue","toUpperCase","class","vocabDisplay","display","event","sendEvent","analyticsEventCategory","value","view","u","SubstanceCardBase","selectors","ctx","SubstanceSubunitsModule","h","CommonModule","DynamicComponentLoaderModule","MatTooltipModule","MatButtonToggleModule","MatIconModule","RouterModule"],"sources":["./src/app/core/substance-details/substance-subunits/substance-subunits.component.html","./src/app/core/substance-details/substance-subunits/substance-subunits.component.ts","./src/app/core/substance-details/substance-subunits/substance-subunits.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
Subunit {{subunitSequence.subunitIndex}}
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{sequencesSectionGroup.sectionNumber}}
\r\n
\r\n \r\n {{sectionUnit.unitValue}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Subunit {{subunit.subunitIndex}}

\r\n
{{subunit.sequence}}
\r\n
\r\n
\r\n","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {SubstanceDetail, Subunit} from '../../substance/substance.model';\r\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\r\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-subunits',\r\n templateUrl: './substance-subunits.component.html',\r\n styleUrls: ['./substance-subunits.component.scss']\r\n})\r\nexport class SubstanceSubunitsComponent extends SubstanceCardBase implements OnInit, AfterViewInit {\r\n subunits: Array = [];\r\n subunitSequences: Array = [];\r\n vocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\r\n view = 'details';\r\n substanceUpdated = new Subject();\r\n cvType = 'AMINO_ACID_RESIDUE';\r\n uuid: string;\r\n substanceType: string;\r\n\r\n\r\n constructor(\r\n private cvService: ControlledVocabularyService,\r\n public gaService: GoogleAnalyticsService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.subunits != null\r\n && this.substance.protein.subunits.length) {\r\n this.subunits = this.substance.protein.subunits;\r\n this.countUpdate.emit(this.subunits.length);\r\n this.cvType = 'AMINO_ACID_RESIDUE';\r\n this.substanceType = 'protein';\r\n this.getVocabularies();\r\n this.uuid = this.substance.uuid;\r\n } else if (this.substance != null\r\n && this.substance.nucleicAcid != null\r\n && this.substance.nucleicAcid.subunits != null\r\n && this.substance.nucleicAcid.subunits.length) {\r\n this.subunits = this.substance.nucleicAcid.subunits;\r\n this.countUpdate.emit(this.subunits.length);\r\n this.cvType = 'NUCLEIC_ACID_BASE';\r\n this.substanceType = 'nucleicAcid';\r\n this.getVocabularies();\r\n this.uuid = this.substance.uuid;\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.uuid = this.substance.uuid;\r\n if (this.substance.protein) {\r\n this.subunits = this.substance.protein.subunits;\r\n } else if (this.substance.nucleicAcid) {\r\n this.subunits = this.substance.nucleicAcid.subunits;\r\n }\r\n this.countUpdate.emit(this.subunits.length);\r\n });\r\n }\r\n\r\n getVocabularies(): void {\r\n this.cvService.getDomainVocabulary(this.cvType).subscribe(response => {\r\n this.vocabulary = response[this.cvType].dictionary;\r\n this.processSubunits();\r\n }, error => {\r\n this.processSubunits();\r\n });\r\n }\r\n\r\n private processSubunits(): void {\r\n this.subunits.forEach(subunit => {\r\n const subunitSequence: SubunitSequence = {\r\n fullSequence: subunit.sequence,\r\n subunitIndex: subunit.subunitIndex,\r\n uuid: subunit.uuid,\r\n sequencesSectionGroups: []\r\n };\r\n this.subunitSequences.push(subunitSequence);\r\n this.addSequenceSectionsGroup(subunitSequence, subunit.sequence);\r\n });\r\n }\r\n\r\n private addSequenceSectionsGroup(subunitSequence: SubunitSequence, squenceString: string = '', indexStart: number = 0) {\r\n const sequenceSectionLength = 50;\r\n if (squenceString.length > (indexStart + 1)) {\r\n const sequenceSectionGroup: SequenceSectionGroup = {\r\n sequenceSections: []\r\n };\r\n subunitSequence.sequencesSectionGroups.push(sequenceSectionGroup);\r\n const sequenceSectionString = squenceString.substr(indexStart, sequenceSectionLength);\r\n\r\n this.addSequenceSections(sequenceSectionGroup, sequenceSectionString, indexStart);\r\n\r\n if (sequenceSectionString.length === sequenceSectionLength) {\r\n indexStart = indexStart + sequenceSectionLength;\r\n this.addSequenceSectionsGroup(subunitSequence, squenceString, indexStart);\r\n }\r\n }\r\n }\r\n\r\n private addSequenceSections(\r\n sectionGroup: SequenceSectionGroup,\r\n sequenceSectionString: string = '',\r\n sectionNumberAddend: number,\r\n index: number = 0,\r\n indexEnd: number = 9) {\r\n const indexIncrement = 10;\r\n\r\n if (sequenceSectionString !== '') {\r\n\r\n const sequenceSection: SequenceSection = {\r\n sectionNumber: 0,\r\n sectionUnits: []\r\n };\r\n\r\n while (index <= indexEnd) {\r\n if (sequenceSectionString[index]) {\r\n const sequenceUnit: SequenceUnit = {\r\n unitIndex: index + sectionNumberAddend + 1,\r\n unitValue: sequenceSectionString[index]\r\n };\r\n if (!this.vocabulary[sequenceUnit.unitValue.toUpperCase()]) {\r\n sequenceUnit.class = 'error';\r\n }\r\n sequenceSection.sectionUnits.push(sequenceUnit);\r\n index++;\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n sequenceSection.sectionNumber = index + sectionNumberAddend;\r\n\r\n sectionGroup.sequenceSections.push(sequenceSection);\r\n\r\n if (sequenceSectionString.length > index) {\r\n indexEnd = indexEnd + indexIncrement;\r\n this.addSequenceSections(sectionGroup, sequenceSectionString, sectionNumberAddend, index, indexEnd);\r\n }\r\n }\r\n }\r\n\r\n getTooltipMessage(subunitIndex: number, unitIndex: number, unitValue: string): string {\r\n let vocabDisplay = '';\r\n if (this.vocabulary[unitValue.toUpperCase()]) {\r\n vocabDisplay = this.vocabulary[unitValue.toUpperCase()].display;\r\n } else {\r\n vocabDisplay = 'UNDEFINED';\r\n }\r\n return `${subunitIndex} - ${unitIndex}: ${unitValue.toUpperCase()} (${vocabDisplay})`;\r\n }\r\n\r\n updateView(event): void {\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button:view-update', event.value);\r\n this.view = event.value;\r\n }\r\n}\r\n\r\ninterface SubunitSequence {\r\n subunitIndex: number;\r\n fullSequence?: string;\r\n uuid?: string;\r\n sequencesSectionGroups: Array;\r\n}\r\n\r\ninterface SequenceSectionGroup {\r\n sequenceSections: Array;\r\n}\r\n\r\ninterface SequenceSection {\r\n sectionNumber: number;\r\n sectionUnits: Array;\r\n}\r\n\r\ninterface SequenceUnit {\r\n unitIndex: number;\r\n unitValue: string;\r\n class?: string;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceSubunitsComponent } from './substance-subunits.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {RouterModule} from '@angular/router';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceSubunitsComponent),\r\n MatTooltipModule,\r\n MatButtonToggleModule,\r\n MatIconModule,\r\n RouterModule\r\n ],\r\n declarations: [SubstanceSubunitsComponent]\r\n})\r\nexport class SubstanceSubunitsModule { }\r\n"],"sourceRoot":"webpack:///","file":"7398.9c701025cdc7a88b.js"} \ No newline at end of file +{"version":3,"mappings":"mWA4BYA,mBACEA,SACFA,+DAFiDA,oCAA2C,0EAC1FA,8DAJNA,kBACEA,kBAA4BA,SAAuCA,QACnEA,kBACEA,yBAGFA,QACFA,wDAPoJA,wCACtHA,gCAE2FA,mEAJ3HA,kBACEA,wBAQFA,gCARkEA,gLAdtEA,iBACAA,kBACEA,kBAA8BA,SAAwCA,QACtEA,eACEA,gBAC6FA,8BAC1FA,uBACHA,QACFA,QAEFA,QACEA,iBACAA,kBACEA,yBAUFA,QACAA,QACFA,0CAvBgCA,8CAEDA,wCAAmC,wDASQA,6EAa1EA,kBACEA,cAAIA,SAAgCA,QACpCA,kBAA0BA,SAAoBA,QAChDA,gCAFMA,6CACsBA,4BC1BvB,IAAMC,EAAb,eAAaA,EAAb,0CAWE,WACUC,EACDC,GAAiC,6BAExCC,gBAHQF,YACDE,cAZTA,WAA2B,GAC3BA,mBAA2C,GAC3CA,aAAgE,GAChEA,OAAO,UACPA,mBAAmB,IAAIC,IACvBD,SAAS,qBAOiCA,EAb5C,uCAkBE,WAC0B,MAAlBE,KAAKC,WACsB,MAA1BD,KAAKC,UAAUC,SACoB,MAAnCF,KAAKC,UAAUC,QAAQC,UACvBH,KAAKC,UAAUC,QAAQC,SAASC,QACnCJ,KAAKG,SAAWH,KAAKC,UAAUC,QAAQC,SACvCH,KAAKK,YAAYC,KAAKN,KAAKG,SAASC,QACpCJ,KAAKO,OAAS,qBACdP,KAAKQ,cAAgB,UACrBR,KAAKS,kBACLT,KAAKU,KAAOV,KAAKC,UAAUS,MACA,MAAlBV,KAAKC,WACmB,MAA9BD,KAAKC,UAAUU,aACwB,MAAvCX,KAAKC,UAAUU,YAAYR,UAC3BH,KAAKC,UAAUU,YAAYR,SAASC,SACvCJ,KAAKG,SAAWH,KAAKC,UAAUU,YAAYR,SAC3CH,KAAKK,YAAYC,KAAKN,KAAKG,SAASC,QACpCJ,KAAKO,OAAS,oBACdP,KAAKQ,cAAgB,cACrBR,KAAKS,kBACLT,KAAKU,KAAOV,KAAKC,UAAUS,QAtCnC,6BA0CE,WAAe,WACbV,KAAKY,iBAAiBC,UAAU,YAC9BC,EAAKb,UAAYA,EACjBa,EAAKJ,KAAOI,EAAKb,UAAUS,KACvBI,EAAKb,UAAUC,QACfY,EAAKX,SAAWW,EAAKb,UAAUC,QAAQC,SAChCW,EAAKb,UAAUU,cACtBG,EAAKX,SAAWW,EAAKb,UAAUU,YAAYR,UAE/CW,EAAKT,YAAYC,KAAKQ,EAAKX,SAASC,YAnD1C,6BAuDE,WAAe,WACbJ,KAAKJ,UAAUmB,oBAAoBf,KAAKO,QAAQM,UAAU,YACxDC,EAAKE,WAAaC,EAASH,EAAKP,QAAQW,WACxCJ,EAAKK,mBACJ,YACDL,EAAKK,sBA5DX,6BAgEU,WAAe,WACrBnB,KAAKG,SAASiB,QAAQ,YACpB,IAAMC,EAAmC,CACvCC,aAAcC,EAAQC,SACtBC,aAAcF,EAAQE,aACtBf,KAAMa,EAAQb,KACdgB,uBAAwB,IAE1BZ,EAAKa,iBAAiBC,KAAKP,GAC3BP,EAAKe,yBAAyBR,EAAiBE,EAAQC,cAzE7D,sCA6EU,SAAyBH,GAAoF,IAAlDS,EAAkDC,uDAA1B,GAAIC,EAAsBD,uDAAD,EAC5GE,EAAwB,GAC9B,GAAIH,EAAc1B,OAAU4B,EAAa,EAAI,CAC3C,IAAME,EAA6C,CACjDC,iBAAkB,IAEpBd,EAAgBK,uBAAuBE,KAAKM,GAC5C,IAAME,EAAwBN,EAAcO,OAAOL,EAAYC,GAE/DjC,KAAKsC,oBAAoBJ,EAAsBE,EAAuBJ,GAElEI,EAAsBhC,SAAW6B,GAEnCjC,KAAK6B,yBAAyBR,EAAiBS,EAD/CE,GAA0BC,MAzFlC,iCA+FU,SACNM,GAIoB,IAHpBH,EAGoBL,uDAHY,GAChCS,EAEoBT,uCADpBU,EACoBV,uDADJ,EAChBW,EAAoBX,uDAAD,EACbY,EAAiB,GAEvB,GAA8B,KAA1BP,EAA8B,CAOhC,QALMQ,EAAmC,CACvCC,cAAe,EACfC,aAAc,IAGTL,GAASC,GACVN,EAAsBK,IAAQ,CAChC,IAAMM,EAA6B,CACjCC,UAAWP,EAAQD,EAAsB,EACzCS,UAAWb,EAAsBK,IAE9BzC,KAAKgB,WAAW+B,EAAaE,UAAUC,iBACxCH,EAAaI,MAAQ,SAEzBP,EAAgBE,aAAalB,KAAKmB,GAClCN,IAMJG,EAAgBC,cAAgBJ,EAAQD,EAExCD,EAAaJ,iBAAiBP,KAAKgB,GAE/BR,EAAsBhC,OAASqC,GAEjCzC,KAAKsC,oBAAoBC,EAAcH,EAAuBI,EAAqBC,EADnFC,GAAsBC,MAnI9B,+BAyIE,SAAkBlB,EAAsBuB,EAAmBC,GACzD,IAAIG,EACJ,OACEA,EADEpD,KAAKgB,WAAWiC,EAAUC,eACblD,KAAKgB,WAAWiC,EAAUC,eAAeG,QAEzC,YAEjB,UAAU5B,EAAV,cAA4BuB,EAA5B,aAA0CC,EAAUC,cAApD,aAAsEE,EAAtE,OAhJJ,wBAmJE,SAAWE,GACTtD,KAAKH,UAAU0D,UAAUvD,KAAKwD,uBAAwB,qBAAsBF,EAAMG,OAClFzD,KAAK0D,KAAOJ,EAAMG,UArJtBE,GAAgDC,kDAAnCjE,GAA0BD,gDAA1BC,EAA0BkE,mhCDbvCnE,iBACEA,qCAAwCA,kCAAUoE,kBAChDpE,+BACEA,sBACFA,QACAA,+BACEA,sBACFA,QACFA,QACFA,QACAA,iBACEA,wBA0BAA,uBAIFA,eAxC2BA,+BAStBA,iCACuDA,6CA0BjBA,ygECxB9BC,EAAb,cCOaoE,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsCvE,GACtCwE,KACAC,KACAC,KACAC,SAISP,EAAb","names":["i0","SubstanceSubunitsComponent","cvService","gaService","t","Subject","this","substance","protein","subunits","length","countUpdate","emit","cvType","substanceType","getVocabularies","uuid","nucleicAcid","substanceUpdated","subscribe","e","getDomainVocabulary","vocabulary","response","dictionary","processSubunits","forEach","subunitSequence","fullSequence","subunit","sequence","subunitIndex","sequencesSectionGroups","subunitSequences","push","addSequenceSectionsGroup","squenceString","arguments","indexStart","sequenceSectionLength","sequenceSectionGroup","sequenceSections","sequenceSectionString","substr","addSequenceSections","sectionGroup","sectionNumberAddend","index","indexEnd","indexIncrement","sequenceSection","sectionNumber","sectionUnits","sequenceUnit","unitIndex","unitValue","toUpperCase","class","vocabDisplay","display","event","sendEvent","analyticsEventCategory","value","view","u","SubstanceCardBase","selectors","ctx","SubstanceSubunitsModule","h","CommonModule","DynamicComponentLoaderModule","MatTooltipModule","MatButtonToggleModule","MatIconModule","RouterModule"],"sources":["./src/app/core/substance-details/substance-subunits/substance-subunits.component.html","./src/app/core/substance-details/substance-subunits/substance-subunits.component.ts","./src/app/core/substance-details/substance-subunits/substance-subunits.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
Subunit {{subunitSequence.subunitIndex}}
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{sequencesSectionGroup.sectionNumber}}
\r\n
\r\n \r\n {{sectionUnit.unitValue}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Subunit {{subunit.subunitIndex}}

\r\n
{{subunit.sequence}}
\r\n
\r\n
\r\n","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {SubstanceDetail, Subunit} from '../../substance/substance.model';\r\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\r\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-subunits',\r\n templateUrl: './substance-subunits.component.html',\r\n styleUrls: ['./substance-subunits.component.scss']\r\n})\r\nexport class SubstanceSubunitsComponent extends SubstanceCardBase implements OnInit, AfterViewInit {\r\n subunits: Array = [];\r\n subunitSequences: Array = [];\r\n vocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\r\n view = 'details';\r\n substanceUpdated = new Subject();\r\n cvType = 'AMINO_ACID_RESIDUE';\r\n uuid: string;\r\n substanceType: string;\r\n\r\n\r\n constructor(\r\n private cvService: ControlledVocabularyService,\r\n public gaService: GoogleAnalyticsService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n if (this.substance != null\r\n && this.substance.protein != null\r\n && this.substance.protein.subunits != null\r\n && this.substance.protein.subunits.length) {\r\n this.subunits = this.substance.protein.subunits;\r\n this.countUpdate.emit(this.subunits.length);\r\n this.cvType = 'AMINO_ACID_RESIDUE';\r\n this.substanceType = 'protein';\r\n this.getVocabularies();\r\n this.uuid = this.substance.uuid;\r\n } else if (this.substance != null\r\n && this.substance.nucleicAcid != null\r\n && this.substance.nucleicAcid.subunits != null\r\n && this.substance.nucleicAcid.subunits.length) {\r\n this.subunits = this.substance.nucleicAcid.subunits;\r\n this.countUpdate.emit(this.subunits.length);\r\n this.cvType = 'NUCLEIC_ACID_BASE';\r\n this.substanceType = 'nucleicAcid';\r\n this.getVocabularies();\r\n this.uuid = this.substance.uuid;\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n this.uuid = this.substance.uuid;\r\n if (this.substance.protein) {\r\n this.subunits = this.substance.protein.subunits;\r\n } else if (this.substance.nucleicAcid) {\r\n this.subunits = this.substance.nucleicAcid.subunits;\r\n }\r\n this.countUpdate.emit(this.subunits.length);\r\n });\r\n }\r\n\r\n getVocabularies(): void {\r\n this.cvService.getDomainVocabulary(this.cvType).subscribe(response => {\r\n this.vocabulary = response[this.cvType].dictionary;\r\n this.processSubunits();\r\n }, error => {\r\n this.processSubunits();\r\n });\r\n }\r\n\r\n private processSubunits(): void {\r\n this.subunits.forEach(subunit => {\r\n const subunitSequence: SubunitSequence = {\r\n fullSequence: subunit.sequence,\r\n subunitIndex: subunit.subunitIndex,\r\n uuid: subunit.uuid,\r\n sequencesSectionGroups: []\r\n };\r\n this.subunitSequences.push(subunitSequence);\r\n this.addSequenceSectionsGroup(subunitSequence, subunit.sequence);\r\n });\r\n }\r\n\r\n private addSequenceSectionsGroup(subunitSequence: SubunitSequence, squenceString: string = '', indexStart: number = 0) {\r\n const sequenceSectionLength = 50;\r\n if (squenceString.length > (indexStart + 1)) {\r\n const sequenceSectionGroup: SequenceSectionGroup = {\r\n sequenceSections: []\r\n };\r\n subunitSequence.sequencesSectionGroups.push(sequenceSectionGroup);\r\n const sequenceSectionString = squenceString.substr(indexStart, sequenceSectionLength);\r\n\r\n this.addSequenceSections(sequenceSectionGroup, sequenceSectionString, indexStart);\r\n\r\n if (sequenceSectionString.length === sequenceSectionLength) {\r\n indexStart = indexStart + sequenceSectionLength;\r\n this.addSequenceSectionsGroup(subunitSequence, squenceString, indexStart);\r\n }\r\n }\r\n }\r\n\r\n private addSequenceSections(\r\n sectionGroup: SequenceSectionGroup,\r\n sequenceSectionString: string = '',\r\n sectionNumberAddend: number,\r\n index: number = 0,\r\n indexEnd: number = 9) {\r\n const indexIncrement = 10;\r\n\r\n if (sequenceSectionString !== '') {\r\n\r\n const sequenceSection: SequenceSection = {\r\n sectionNumber: 0,\r\n sectionUnits: []\r\n };\r\n\r\n while (index <= indexEnd) {\r\n if (sequenceSectionString[index]) {\r\n const sequenceUnit: SequenceUnit = {\r\n unitIndex: index + sectionNumberAddend + 1,\r\n unitValue: sequenceSectionString[index]\r\n };\r\n if (!this.vocabulary[sequenceUnit.unitValue.toUpperCase()]) {\r\n sequenceUnit.class = 'error';\r\n }\r\n sequenceSection.sectionUnits.push(sequenceUnit);\r\n index++;\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n sequenceSection.sectionNumber = index + sectionNumberAddend;\r\n\r\n sectionGroup.sequenceSections.push(sequenceSection);\r\n\r\n if (sequenceSectionString.length > index) {\r\n indexEnd = indexEnd + indexIncrement;\r\n this.addSequenceSections(sectionGroup, sequenceSectionString, sectionNumberAddend, index, indexEnd);\r\n }\r\n }\r\n }\r\n\r\n getTooltipMessage(subunitIndex: number, unitIndex: number, unitValue: string): string {\r\n let vocabDisplay = '';\r\n if (this.vocabulary[unitValue.toUpperCase()]) {\r\n vocabDisplay = this.vocabulary[unitValue.toUpperCase()].display;\r\n } else {\r\n vocabDisplay = 'UNDEFINED';\r\n }\r\n return `${subunitIndex} - ${unitIndex}: ${unitValue.toUpperCase()} (${vocabDisplay})`;\r\n }\r\n\r\n updateView(event): void {\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button:view-update', event.value);\r\n this.view = event.value;\r\n }\r\n}\r\n\r\ninterface SubunitSequence {\r\n subunitIndex: number;\r\n fullSequence?: string;\r\n uuid?: string;\r\n sequencesSectionGroups: Array;\r\n}\r\n\r\ninterface SequenceSectionGroup {\r\n sequenceSections: Array;\r\n}\r\n\r\ninterface SequenceSection {\r\n sectionNumber: number;\r\n sectionUnits: Array;\r\n}\r\n\r\ninterface SequenceUnit {\r\n unitIndex: number;\r\n unitValue: string;\r\n class?: string;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceSubunitsComponent } from './substance-subunits.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport {RouterModule} from '@angular/router';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceSubunitsComponent),\r\n MatTooltipModule,\r\n MatButtonToggleModule,\r\n MatIconModule,\r\n RouterModule\r\n ],\r\n declarations: [SubstanceSubunitsComponent]\r\n})\r\nexport class SubstanceSubunitsModule { }\r\n"],"sourceRoot":"webpack:///","file":"7398.5d25de6d5e4fd059.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7398.9c701025cdc7a88b.js b/frontend/src/main/resources/static/7398.9c701025cdc7a88b.js deleted file mode 100644 index 78b5b52..0000000 --- a/frontend/src/main/resources/static/7398.9c701025cdc7a88b.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7398],{87398:function(k,m,o){o.r(m),o.d(m,{SubstanceSubunitsModule:function(){return J}});var h=o(48047),S=o(78069),p=o(36362),Z=o(24582),O=o(7318),M=o(2756),q=o(42827),T=o(24874),A=o(50253),n=o(76442),b=o(31959),C=o(65590),x=o(98002),y=o(40089);function P(s,a){if(1&s&&(n.TgZ(0,"span",22),n._uU(1),n.qZA()),2&s){var i=a.$implicit,u=n.oxw(3).$implicit,l=n.oxw();n.Q6J("ngClass",i.class?"error":"")("matTooltip",l.getTooltipMessage(u.subunitIndex,i.unitIndex,i.unitValue)),n.xp6(1),n.hij(" ",i.unitValue," ")}}function w(s,a){if(1&s&&(n.TgZ(0,"div",18),n.TgZ(1,"div",19),n._uU(2),n.qZA(),n.TgZ(3,"div",20),n.YNc(4,P,2,3,"span",21),n.qZA(),n.qZA()),2&s){var i=a.$implicit,u=a.last,l=n.oxw().last;n.Q6J("ngClass",l&&u?"last-section":""),n.xp6(2),n.Oqu(i.sectionNumber),n.xp6(2),n.Q6J("ngForOf",i.sectionUnits)}}function I(s,a){if(1&s&&(n.TgZ(0,"div",16),n.YNc(1,w,5,3,"div",17),n.qZA()),2&s){var i=a.$implicit;n.xp6(1),n.Q6J("ngForOf",i.sequenceSections)}}var U=function(){return["/sequence-search"]},_=function(a,i,u){return{substance:a,subunit:i,seq_type:u}};function F(s,a){if(1&s&&(n.TgZ(0,"div",9),n.TgZ(1,"div",10),n.TgZ(2,"div",11),n._uU(3),n.qZA(),n.TgZ(4,"div"),n.TgZ(5,"a",12),n._uU(6,"similarity search "),n._UZ(7,"mat-icon",13),n.qZA(),n.qZA(),n.qZA(),n.TgZ(8,"div",9),n.TgZ(9,"div",14),n.YNc(10,I,2,1,"div",15),n.qZA(),n.qZA(),n.qZA()),2&s){var i=a.$implicit,u=n.oxw();n.xp6(3),n.hij(" Subunit ",i.subunitIndex,""),n.xp6(2),n.Q6J("routerLink",n.DdM(4,U))("queryParams",n.kEZ(5,_,u.uuid,i.uuid,u.substanceType)),n.xp6(5),n.Q6J("ngForOf",i.sequencesSectionGroups)}}function V(s,a){if(1&s&&(n.TgZ(0,"div",23),n.TgZ(1,"h4"),n._uU(2),n.qZA(),n.TgZ(3,"div",24),n._uU(4),n.qZA(),n.qZA()),2&s){var i=a.$implicit;n.xp6(2),n.hij("Subunit ",i.subunitIndex,""),n.xp6(2),n.Oqu(i.sequence)}}var N=function(){var s=function(a){(0,Z.Z)(u,a);var i=(0,O.Z)(u);function u(l,t){var e;return(0,S.Z)(this,u),(e=i.call(this)).cvService=l,e.gaService=t,e.subunits=[],e.subunitSequences=[],e.vocabulary={},e.view="details",e.substanceUpdated=new A.x,e.cvType="AMINO_ACID_RESIDUE",e}return(0,h.Z)(u,[{key:"ngOnInit",value:function(){null!=this.substance&&null!=this.substance.protein&&null!=this.substance.protein.subunits&&this.substance.protein.subunits.length?(this.subunits=this.substance.protein.subunits,this.countUpdate.emit(this.subunits.length),this.cvType="AMINO_ACID_RESIDUE",this.substanceType="protein",this.getVocabularies(),this.uuid=this.substance.uuid):null!=this.substance&&null!=this.substance.nucleicAcid&&null!=this.substance.nucleicAcid.subunits&&this.substance.nucleicAcid.subunits.length&&(this.subunits=this.substance.nucleicAcid.subunits,this.countUpdate.emit(this.subunits.length),this.cvType="NUCLEIC_ACID_BASE",this.substanceType="nucleicAcid",this.getVocabularies(),this.uuid=this.substance.uuid)}},{key:"ngAfterViewInit",value:function(){var t=this;this.substanceUpdated.subscribe(function(e){t.substance=e,t.uuid=t.substance.uuid,t.substance.protein?t.subunits=t.substance.protein.subunits:t.substance.nucleicAcid&&(t.subunits=t.substance.nucleicAcid.subunits),t.countUpdate.emit(t.subunits.length)})}},{key:"getVocabularies",value:function(){var t=this;this.cvService.getDomainVocabulary(this.cvType).subscribe(function(e){t.vocabulary=e[t.cvType].dictionary,t.processSubunits()},function(e){t.processSubunits()})}},{key:"processSubunits",value:function(){var t=this;this.subunits.forEach(function(e){var c={fullSequence:e.sequence,subunitIndex:e.subunitIndex,uuid:e.uuid,sequencesSectionGroups:[]};t.subunitSequences.push(c),t.addSequenceSectionsGroup(c,e.sequence)})}},{key:"addSequenceSectionsGroup",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=50;if(e.length>c+1){var g={sequenceSections:[]};t.sequencesSectionGroups.push(g);var d=e.substr(c,r);this.addSequenceSections(g,d,c),d.length===r&&this.addSequenceSectionsGroup(t,e,c+=r)}}},{key:"addSequenceSections",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",c=arguments.length>2?arguments[2]:void 0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,g=arguments.length>4&&void 0!==arguments[4]?arguments[4]:9,d=10;if(""!==e){for(var v={sectionNumber:0,sectionUnits:[]};r<=g&&e[r];){var f={unitIndex:r+c+1,unitValue:e[r]};this.vocabulary[f.unitValue.toUpperCase()]||(f.class="error"),v.sectionUnits.push(f),r++}v.sectionNumber=r+c,t.sequenceSections.push(v),e.length>r&&this.addSequenceSections(t,e,c,r,g+=d)}}},{key:"getTooltipMessage",value:function(t,e,c){var r;return r=this.vocabulary[c.toUpperCase()]?this.vocabulary[c.toUpperCase()].display:"UNDEFINED","".concat(t," - ").concat(e,": ").concat(c.toUpperCase()," (").concat(r,")")}},{key:"updateView",value:function(t){this.gaService.sendEvent(this.analyticsEventCategory,"button:view-update",t.value),this.view=t.value}}]),u}(M.B);return s.\u0275fac=function(i){return new(i||s)(n.Y36(q.I),n.Y36(T.$))},s.\u0275cmp=n.Xpm({type:s,selectors:[["app-substance-subunits"]],features:[n.qOj],decls:9,vars:4,consts:[[1,"filters-container"],[3,"value","change"],["aria-label","View List","value","details"],["svgIcon","list"],["aria-label","View Raw","value","raw"],["svgIcon","view_stream"],[3,"ngClass"],["class","subunit-sequence",4,"ngFor","ngForOf"],["class","subunit",4,"ngFor","ngForOf"],[1,"subunit-sequence"],[1,"form-row","subunit-row"],[1,"subunit-label"],["target","_blank",1,"subunit-title",3,"routerLink","queryParams"],["svgIcon","open_in_new",1,"icon","small-icon"],[1,"responsive"],["class","sequence-section-group",4,"ngFor","ngForOf"],[1,"sequence-section-group"],["class","sequence-section","class","sequence-section",3,"ngClass",4,"ngFor","ngForOf"],[1,"sequence-section",3,"ngClass"],[1,"section-number"],[1,"section-units-container"],["class","section-unit selectedSite siteref",3,"ngClass","matTooltip",4,"ngFor","ngForOf"],[1,"section-unit","selectedSite","siteref",3,"ngClass","matTooltip"],[1,"subunit"],[1,"raw-sequence"]],template:function(i,u){1&i&&(n.TgZ(0,"div",0),n.TgZ(1,"mat-button-toggle-group",1),n.NdJ("change",function(t){return u.updateView(t)}),n.TgZ(2,"mat-button-toggle",2),n._UZ(3,"mat-icon",3),n.qZA(),n.TgZ(4,"mat-button-toggle",4),n._UZ(5,"mat-icon",5),n.qZA(),n.qZA(),n.qZA(),n.TgZ(6,"div",6),n.YNc(7,F,11,9,"div",7),n.YNc(8,V,5,2,"div",8),n.qZA()),2&i&&(n.xp6(1),n.Q6J("value",u.view),n.xp6(5),n.Q6J("ngClass",u.view),n.xp6(1),n.Q6J("ngForOf",u.subunitSequences),n.xp6(1),n.Q6J("ngForOf",u.subunits))},directives:[b.A9,b.Yi,C.Hw,p.mk,p.sg,x.yS,y.gM],styles:[".filters-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.subunit-title[_ngcontent-%COMP%]{color:#1565c0;text-decoration:none}.subunit-label[_ngcontent-%COMP%]{font-weight:500;font-size:16px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding-bottom:5px}.sequence-container[_ngcontent-%COMP%]{padding-top:20px}error[_ngcontent-%COMP%]{color:red}.subunit-row[_ngcontent-%COMP%]{padding-top:10px}.details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%], .show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.siteref[_ngcontent-%COMP%]{display:block;width:15.5px!important;text-align:center}.last-section[_ngcontent-%COMP%]{-ms-flex-preferred-size:0!important;flex-basis:0!important}.mat-icon[_ngcontent-%COMP%]{height:15px!important;width:15px!important}"]}),s}(),E=o(64061),J=function(){var s=(0,h.Z)(function a(){(0,S.Z)(this,a)});return s.\u0275fac=function(i){return new(i||s)},s.\u0275mod=n.oAB({type:s}),s.\u0275inj=n.cJS({imports:[[p.ez,E.o.forChild(N),y.AV,b.vV,C.Ps,x.Bz]]}),s}()}}]); -//# sourceMappingURL=7398.9c701025cdc7a88b.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7405.d2f604285ab69432.js b/frontend/src/main/resources/static/7405.d2f604285ab69432.js new file mode 100644 index 0000000..e99e577 --- /dev/null +++ b/frontend/src/main/resources/static/7405.d2f604285ab69432.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7405],{77405:function(B,v,t){t.r(v),t.d(v,{SubstanceFormGlycosylationModule:function(){return X}});var m=t(1884),d=t(39117),f=t(36362),Z=t(75143),S=t(7168),G=t(19975),p=t(65590),C=t(87317),T=t(94673),x=t(44770),b=t(90587),O=t(26439),A=t(43365),h=t(40089),M=t(31959),F=t(46751),U=t(56101),P=t(79550),N=t(33567),D=t(40104),Y=t(18291),I=t(39401),j=t(12671),o=t(86613),J=t(95758),V=t(54244),E=t(16667),H=t(14900);function z(l,r){if(1&l){var e=o.EpF();o.TgZ(0,"div"),o.TgZ(1,"div",1),o.TgZ(2,"div",2),o.TgZ(3,"div",3),o.TgZ(4,"app-cv-input",4),o.NdJ("valueChange",function(n){return o.CHM(e),o.oxw().glycosylation.glycosylationType=n}),o.qZA(),o._UZ(5,"br"),o._UZ(6,"br"),o.TgZ(7,"button",5),o.NdJ("click",function(){return o.CHM(e),o.oxw().clearAll()}),o._uU(8,"Clear Glycosylation"),o.qZA(),o.qZA(),o.TgZ(9,"div",6),o.TgZ(10,"div",7),o.TgZ(11,"div",8),o.TgZ(12,"b"),o._uU(13,"C "),o.qZA(),o._uU(14,"Glycosylation Sites "),o.qZA(),o.TgZ(15,"div",9),o.TgZ(16,"button",10),o.NdJ("click",function(){return o.CHM(e),o.oxw().openDialog("C")}),o._UZ(17,"mat-icon",11),o.qZA(),o._uU(18),o.qZA(),o.qZA(),o.TgZ(19,"div",7),o.TgZ(20,"div",8),o.TgZ(21,"b"),o._uU(22,"N "),o.qZA(),o._uU(23,"Glycosylation Sites"),o.qZA(),o.TgZ(24,"div",9),o.TgZ(25,"button",10),o.NdJ("click",function(){return o.CHM(e),o.oxw().openDialog("N")}),o._UZ(26,"mat-icon",11),o.qZA(),o._uU(27),o.qZA(),o.qZA(),o.TgZ(28,"div",7),o.TgZ(29,"div",8),o.TgZ(30,"b"),o._uU(31,"O "),o.qZA(),o._uU(32,"Glycosylation Sites"),o.qZA(),o.TgZ(33,"div",9),o.TgZ(34,"button",10),o.NdJ("click",function(){return o.CHM(e),o.oxw().openDialog("O")}),o._UZ(35,"mat-icon",11),o.qZA(),o._uU(36),o.qZA(),o.qZA(),o.qZA(),o.qZA(),o.qZA(),o._UZ(37,"app-audit-info",12),o.qZA()}if(2&l){var i=o.oxw();o.xp6(4),o.Q6J("model",i.glycosylation.glycosylationType),o.xp6(14),o.hij(" ",i.siteDisplay(i.glycosylation.CGlycosylationSites)," "),o.xp6(9),o.hij(" ",i.siteDisplay(i.glycosylation.NGlycosylationSites)," "),o.xp6(9),o.hij(" ",i.siteDisplay(i.glycosylation.OGlycosylationSites)," "),o.xp6(1),o.Q6J("source",i.privateLink)}}var L=function(){var l=function(r){(0,F.Z)(i,r);var e=(0,U.Z)(i);function i(c,n,a,y,u,g){var s;return(0,d.Z)(this,i),(s=e.call(this,a)).substanceFormGlycosylationService=c,s.substanceFormService=n,s.gaService=a,s.cvService=y,s.dialog=u,s.overlayContainerService=g,s.subscriptions=[],s.analyticsEventCategory="substance form glycosylation",s}return(0,m.Z)(i,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Glycosylation"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.getVocabularies()}},{key:"ngAfterViewInit",value:function(){var n=this,a=this.substanceFormGlycosylationService.substanceGlycosylation.subscribe(function(y){n.glycosylation=y});this.subscriptions.push(a)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"clearAll",value:function(){this.glycosylation.CGlycosylationSites=[],this.glycosylation.NGlycosylationSites=[],this.glycosylation.OGlycosylationSites=[],this.glycosylation.glycosylationType=null,this.substanceFormGlycosylationService.emitGlycosylationUpdate()}},{key:"getVocabularies",value:function(){var n=this,a=this.cvService.getDomainVocabulary("GLYCOSYLATION_TYPE").subscribe(function(y){n.glycosylationTypes=y.GLYCOSYLATION_TYPE.list});this.subscriptions.push(a)}},{key:"openDialog",value:function(n){var a=this,u=this.dialog.open(I.r,{data:{card:n,link:"N"===n?this.glycosylation.NGlycosylationSites:"C"===n?this.glycosylation.CGlycosylationSites:this.glycosylation.OGlycosylationSites},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var g=u.afterClosed().subscribe(function(s){a.overlayContainer.style.zIndex=null,s&&("N"===n?a.glycosylation.NGlycosylationSites=s:"C"===n?a.glycosylation.CGlycosylationSites=s:a.glycosylation.OGlycosylationSites=s,a.substanceFormGlycosylationService.emitGlycosylationUpdate())});this.subscriptions.push(g)}},{key:"siteDisplay",value:function(n){return this.substanceFormService.siteString(n)}}]),i}(P.u);return l.\u0275fac=function(e){return new(e||l)(o.Y36(j.w),o.Y36(N.B),o.Y36(D.$),o.Y36(Y.I),o.Y36(J.uw),o.Y36(V.Xj))},l.\u0275cmp=o.Xpm({type:l,selectors:[["app-substance-form-glycosylation"]],features:[o.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"link-form-container"],[1,"form-row"],[1,"name-type"],["key","Protein Glycosylation Type","title","Glycosylation Type",3,"model","valueChange"],["mat-raised-button","","mat-primary","",3,"click"],[1,"types"],[1,"sites"],[1,"label","row-label"],[1,"row-sites"],["mat-icon-button","","matTooltip","Select sites from sequence",3,"click"],["svgIcon","edit"],[3,"source"]],template:function(e,i){1&e&&o.YNc(0,z,38,5,"div",0),2&e&&o.Q6J("ngIf",i.glycosylation)},directives:[f.O5,E.S,C.lW,h.gM,p.Hw,H.n],styles:[".notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.sites[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.row-label[_ngcontent-%COMP%]{width:25%;padding-top:10px}.row-sites[_ngcontent-%COMP%]{width:75%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .name-type[_ngcontent-%COMP%]{width:25%}.form-row[_ngcontent-%COMP%] .name-field[_ngcontent-%COMP%]{margin-bottom:60px}.form-row[_ngcontent-%COMP%] .types[_ngcontent-%COMP%]{width:74%}.label[_ngcontent-%COMP%]{min-width:100px;padding-right:25px}"]}),l}(),w=t(1130),Q=t(91434),X=(t(64061),function(){var l=(0,m.Z)(function r(){(0,d.Z)(this,r)});return l.\u0275fac=function(e){return new(e||l)},l.\u0275mod=o.oAB({type:l}),l.\u0275inj=o.cJS({imports:[[f.ez,Z.o0.forChild(L),S.O,G.t,p.Ps,C.ot,T.w,x.lN,b.UX,b.u5,O.TU,h.AV,M.vV,A.c,w.Ng,Q.LD]]}),l}())}}]); +//# sourceMappingURL=7405.d2f604285ab69432.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7405.e142ef9aad48a50e.js.map b/frontend/src/main/resources/static/7405.d2f604285ab69432.js.map similarity index 98% rename from frontend/src/main/resources/static/7405.e142ef9aad48a50e.js.map rename to frontend/src/main/resources/static/7405.d2f604285ab69432.js.map index 377b59e..e00c016 100644 --- a/frontend/src/main/resources/static/7405.e142ef9aad48a50e.js.map +++ b/frontend/src/main/resources/static/7405.d2f604285ab69432.js.map @@ -1 +1 @@ -{"version":3,"mappings":"mhBAAAA,eACEA,iBACAA,iBACEA,iBACEA,0BAA8EA,4FAAuGA,QACrLA,cACAA,cACAA,oBAAsCA,iDAAWC,aAAaD,+BAAmBA,QACnFA,QACAA,iBACEA,kBACEA,kBAA6BA,cAAGA,eAAEA,QAAIA,iCAAoBA,QAC1DA,kBAAyBA,sBAAgEA,iDAAUE,WAAW,OAC5GF,wBACFA,QACFA,UACEA,QACFA,QACAA,kBACEA,kBAA6BA,cAAGA,eAAEA,QAAIA,gCAAmBA,QACzDA,kBAAyBA,sBAAgEA,iDAAUG,WAAW,OAC5GH,wBACFA,QACFA,UACAA,QAEAA,QACAA,kBACEA,kBAA6BA,cAAGA,eAAEA,QAAIA,gCAAmBA,QACzDA,kBAAyBA,sBAAgEA,iDAAUI,WAAW,OAC5GJ,wBACFA,QACFA,UACEA,QAEFA,QACFA,QAEFA,QACFA,QACAA,8BAEAA,8BAtC+IA,0DAWzIA,4EAQAA,2EASAA,2EAQUA,wCCvBT,IAAMK,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACAC,EACDC,EACCC,EACAC,EACAC,GAAyC,6BAGjDC,cAAMJ,IAREF,oCACAM,yBACDA,cACCA,cACAA,WACAA,4BARFA,gBAAqC,GAY3CA,EAAKC,uBAAyB,+BAJmBD,EAXrD,uCAkBE,WACEE,KAAKC,gBAAgBC,KAAK,iBAC1BF,KAAKG,iBAAmBH,KAAKH,wBAAwBO,sBACrDJ,KAAKK,oBArBT,6BAwBE,WAAe,WACPC,EAA4BN,KAAKR,kCAAkCe,uBAAuBC,UAAU,YACxGC,EAAKC,cAAgBA,IAEvBV,KAAKW,cAAcC,KAAKN,KA5B5B,yBA+BE,WACEN,KAAKW,cAAcE,QAAQ,YACzBC,EAAaC,kBAjCnB,sBAqCE,WACEf,KAAKU,cAAcM,oBAAsB,GACzChB,KAAKU,cAAcO,oBAAsB,GACzCjB,KAAKU,cAAcQ,oBAAsB,GACzClB,KAAKU,cAAcS,kBAAoB,KACvCnB,KAAKR,kCAAkC4B,4BA1C3C,6BA6CE,WAAe,WACPN,EAAed,KAAKL,UAAU0B,oBAAoB,sBAAsBb,UAAU,YACtFC,EAAKa,mBAAqBC,EAASC,mBAAsBC,OAE3DzB,KAAKW,cAAcC,KAAKE,KAjD5B,wBAoDE,SAAWY,GAAY,WASbC,EAAY3B,KAAKJ,OAAOgC,KAAKC,IAAgC,CACnEC,KAAM,CAACC,KAAQL,EAAMM,KARV,MAATN,EACM1B,KAAKU,cAAcO,oBACT,MAAbR,EACGT,KAAKU,cAAcM,oBAEnBhB,KAAKU,cAAcQ,qBAI3Be,MAAO,SACPC,WAAY,mBAEdlC,KAAKG,iBAAiBgC,MAAMC,OAAS,OACrC,IAAMC,EAAqBV,EAAUW,cAAc9B,UAAU,YAC3D+B,EAAKpC,iBAAiBgC,MAAMC,OAAS,KACjCI,IACW,MAATd,EACFa,EAAK7B,cAAcO,oBAAsBuB,EACvB,MAAb/B,EACL8B,EAAK7B,cAAcM,oBAAsBwB,EAEzCD,EAAK7B,cAAcQ,oBAAsBsB,EAE3CD,EAAK/C,kCAAkC4B,6BAG3CpB,KAAKW,cAAcC,KAAKyB,KAhF5B,yBAmFE,SAAYI,GACV,OAAOzC,KAAKP,qBAAqBiD,WAAWD,OApFhDE,GAAyDC,kDAA5CrD,GAAmCL,8FAAnCK,EAAmCsD,mfDjBhD3D,6BAAMA,8qCCiBOK,EAAb,wBC2BauD,YAAb,eAAaA,KAAbC,iFAAaD,4DAxBF,CACPE,KACAC,cAAsC1D,GACtC2D,IACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,SAQSjB,EAAb","names":["i0","ctx_r3","ctx_r4","ctx_r5","ctx_r6","SubstanceFormGlycosylationComponent","substanceFormGlycosylationService","substanceFormService","gaService","cvService","dialog","overlayContainerService","s","analyticsEventCategory","this","menuLabelUpdate","emit","overlayContainer","getContainerElement","getVocabularies","glycosylationSubscription","substanceGlycosylation","subscribe","n","glycosylation","subscriptions","push","forEach","subscription","unsubscribe","CGlycosylationSites","NGlycosylationSites","OGlycosylationSites","glycosylationType","emitGlycosylationUpdate","getDomainVocabulary","glycosylationTypes","response","GLYCOSYLATION_TYPE","list","type","dialogRef","open","SubunitSelectorDialogComponent","data","card","link","width","panelClass","style","zIndex","dialogSubscription","afterClosed","a","newLinks","sites","siteString","i","SubstanceCardBaseFilteredList","selectors","SubstanceFormGlycosylationModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatOptionModule","MatSelectModule"],"sources":["./src/app/core/substance-form/glycosylation/substance-form-glycosylation.component.html","./src/app/core/substance-form/glycosylation/substance-form-glycosylation.component.ts","./src/app/core/substance-form/glycosylation/substance-form-glycosylation.module.ts"],"sourcesContent":["
\n \n\n\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Glycosylation, Site, SubstanceName} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport { SubstanceFormGlycosylationService } from './substance-form-glycosylation.service';\n@Component({\n selector: 'app-substance-form-glycosylation',\n templateUrl: './substance-form-glycosylation.component.html',\n styleUrls: ['./substance-form-glycosylation.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormGlycosylationComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit, OnDestroy {\n glycosylation: Glycosylation;\n glycosylationTypes: Array;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n constructor(\n private substanceFormGlycosylationService: SubstanceFormGlycosylationService,\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form glycosylation';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Glycosylation');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.getVocabularies();\n }\n\n ngAfterViewInit() {\n const glycosylationSubscription = this.substanceFormGlycosylationService.substanceGlycosylation.subscribe(glycosylation => {\n this.glycosylation = glycosylation;\n });\n this.subscriptions.push(glycosylationSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n clearAll(): void {\n this.glycosylation.CGlycosylationSites = [];\n this.glycosylation.NGlycosylationSites = [];\n this.glycosylation.OGlycosylationSites = [];\n this.glycosylation.glycosylationType = null;\n this.substanceFormGlycosylationService.emitGlycosylationUpdate();\n }\n\n getVocabularies(): void {\n const subscription = this.cvService.getDomainVocabulary('GLYCOSYLATION_TYPE').subscribe(response => {\n this.glycosylationTypes = response['GLYCOSYLATION_TYPE'].list;\n });\n this.subscriptions.push(subscription);\n }\n\n openDialog(type: string): void {\n let param = {};\n if (type === 'N') {\n param = this.glycosylation.NGlycosylationSites;\n } else if (type === 'C') {\n param = this.glycosylation.CGlycosylationSites;\n } else {\n param = this.glycosylation.OGlycosylationSites;\n }\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': type, 'link': param},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n if (type === 'N') {\n this.glycosylation.NGlycosylationSites = newLinks;\n } else if (type === 'C') {\n this.glycosylation.CGlycosylationSites = newLinks;\n } else {\n this.glycosylation.OGlycosylationSites = newLinks;\n }\n this.substanceFormGlycosylationService.emitGlycosylationUpdate();\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n siteDisplay(sites: Array) {\n return this.substanceFormService.siteString(sites);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {SubstanceFormGlycosylationComponent} from '@gsrs-core/substance-form/glycosylation/substance-form-glycosylation.component';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport {MatOptionModule} from '@angular/material/core';\nimport {MatSelectModule} from '@angular/material/select';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormGlycosylationComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatOptionModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormGlycosylationComponent\n ]\n})\nexport class SubstanceFormGlycosylationModule { }\n"],"sourceRoot":"webpack:///","file":"7405.e142ef9aad48a50e.js"} \ No newline at end of file +{"version":3,"mappings":"mhBAAAA,eACEA,iBACAA,iBACEA,iBACEA,0BAA8EA,4FAAuGA,QACrLA,cACAA,cACAA,oBAAsCA,iDAAWC,aAAaD,+BAAmBA,QACnFA,QACAA,iBACEA,kBACEA,kBAA6BA,cAAGA,eAAEA,QAAIA,iCAAoBA,QAC1DA,kBAAyBA,sBAAgEA,iDAAUE,WAAW,OAC5GF,wBACFA,QACFA,UACEA,QACFA,QACAA,kBACEA,kBAA6BA,cAAGA,eAAEA,QAAIA,gCAAmBA,QACzDA,kBAAyBA,sBAAgEA,iDAAUG,WAAW,OAC5GH,wBACFA,QACFA,UACAA,QAEAA,QACAA,kBACEA,kBAA6BA,cAAGA,eAAEA,QAAIA,gCAAmBA,QACzDA,kBAAyBA,sBAAgEA,iDAAUI,WAAW,OAC5GJ,wBACFA,QACFA,UACEA,QAEFA,QACFA,QAEFA,QACFA,QACAA,8BAEAA,8BAtC+IA,0DAWzIA,4EAQAA,2EASAA,2EAQUA,wCCvBT,IAAMK,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACAC,EACDC,EACCC,EACAC,EACAC,GAAyC,6BAGjDC,cAAMJ,IAREF,oCACAM,yBACDA,cACCA,cACAA,WACAA,4BARFA,gBAAqC,GAY3CA,EAAKC,uBAAyB,+BAJmBD,EAXrD,uCAkBE,WACEE,KAAKC,gBAAgBC,KAAK,iBAC1BF,KAAKG,iBAAmBH,KAAKH,wBAAwBO,sBACrDJ,KAAKK,oBArBT,6BAwBE,WAAe,WACPC,EAA4BN,KAAKR,kCAAkCe,uBAAuBC,UAAU,YACxGC,EAAKC,cAAgBA,IAEvBV,KAAKW,cAAcC,KAAKN,KA5B5B,yBA+BE,WACEN,KAAKW,cAAcE,QAAQ,YACzBC,EAAaC,kBAjCnB,sBAqCE,WACEf,KAAKU,cAAcM,oBAAsB,GACzChB,KAAKU,cAAcO,oBAAsB,GACzCjB,KAAKU,cAAcQ,oBAAsB,GACzClB,KAAKU,cAAcS,kBAAoB,KACvCnB,KAAKR,kCAAkC4B,4BA1C3C,6BA6CE,WAAe,WACPN,EAAed,KAAKL,UAAU0B,oBAAoB,sBAAsBb,UAAU,YACtFC,EAAKa,mBAAqBC,EAASC,mBAAsBC,OAE3DzB,KAAKW,cAAcC,KAAKE,KAjD5B,wBAoDE,SAAWY,GAAY,WASbC,EAAY3B,KAAKJ,OAAOgC,KAAKC,IAAgC,CACnEC,KAAM,CAACC,KAAQL,EAAMM,KARV,MAATN,EACM1B,KAAKU,cAAcO,oBACT,MAAbR,EACGT,KAAKU,cAAcM,oBAEnBhB,KAAKU,cAAcQ,qBAI3Be,MAAO,SACPC,WAAY,mBAEdlC,KAAKG,iBAAiBgC,MAAMC,OAAS,OACrC,IAAMC,EAAqBV,EAAUW,cAAc9B,UAAU,YAC3D+B,EAAKpC,iBAAiBgC,MAAMC,OAAS,KACjCI,IACW,MAATd,EACFa,EAAK7B,cAAcO,oBAAsBuB,EACvB,MAAb/B,EACL8B,EAAK7B,cAAcM,oBAAsBwB,EAEzCD,EAAK7B,cAAcQ,oBAAsBsB,EAE3CD,EAAK/C,kCAAkC4B,6BAG3CpB,KAAKW,cAAcC,KAAKyB,KAhF5B,yBAmFE,SAAYI,GACV,OAAOzC,KAAKP,qBAAqBiD,WAAWD,OApFhDE,GAAyDC,kDAA5CrD,GAAmCL,8FAAnCK,EAAmCsD,mfDjBhD3D,6BAAMA,wsCCiBOK,EAAb,wBC2BauD,YAAb,eAAaA,KAAbC,iFAAaD,4DAxBF,CACPE,KACAC,cAAsC1D,GACtC2D,IACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,SAQSjB,EAAb","names":["i0","ctx_r3","ctx_r4","ctx_r5","ctx_r6","SubstanceFormGlycosylationComponent","substanceFormGlycosylationService","substanceFormService","gaService","cvService","dialog","overlayContainerService","s","analyticsEventCategory","this","menuLabelUpdate","emit","overlayContainer","getContainerElement","getVocabularies","glycosylationSubscription","substanceGlycosylation","subscribe","n","glycosylation","subscriptions","push","forEach","subscription","unsubscribe","CGlycosylationSites","NGlycosylationSites","OGlycosylationSites","glycosylationType","emitGlycosylationUpdate","getDomainVocabulary","glycosylationTypes","response","GLYCOSYLATION_TYPE","list","type","dialogRef","open","SubunitSelectorDialogComponent","data","card","link","width","panelClass","style","zIndex","dialogSubscription","afterClosed","a","newLinks","sites","siteString","i","SubstanceCardBaseFilteredList","selectors","SubstanceFormGlycosylationModule","m","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatOptionModule","MatSelectModule"],"sources":["./src/app/core/substance-form/glycosylation/substance-form-glycosylation.component.html","./src/app/core/substance-form/glycosylation/substance-form-glycosylation.component.ts","./src/app/core/substance-form/glycosylation/substance-form-glycosylation.module.ts"],"sourcesContent":["
\n \n\n\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Glycosylation, Site, SubstanceName} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {MatDialog} from '@angular/material/dialog';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport { SubstanceFormGlycosylationService } from './substance-form-glycosylation.service';\n@Component({\n selector: 'app-substance-form-glycosylation',\n templateUrl: './substance-form-glycosylation.component.html',\n styleUrls: ['./substance-form-glycosylation.component.scss']\n})\n// eslint-disable-next-line max-len\nexport class SubstanceFormGlycosylationComponent extends SubstanceCardBaseFilteredList implements OnInit, AfterViewInit, OnDestroy {\n glycosylation: Glycosylation;\n glycosylationTypes: Array;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n constructor(\n private substanceFormGlycosylationService: SubstanceFormGlycosylationService,\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form glycosylation';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Glycosylation');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.getVocabularies();\n }\n\n ngAfterViewInit() {\n const glycosylationSubscription = this.substanceFormGlycosylationService.substanceGlycosylation.subscribe(glycosylation => {\n this.glycosylation = glycosylation;\n });\n this.subscriptions.push(glycosylationSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n clearAll(): void {\n this.glycosylation.CGlycosylationSites = [];\n this.glycosylation.NGlycosylationSites = [];\n this.glycosylation.OGlycosylationSites = [];\n this.glycosylation.glycosylationType = null;\n this.substanceFormGlycosylationService.emitGlycosylationUpdate();\n }\n\n getVocabularies(): void {\n const subscription = this.cvService.getDomainVocabulary('GLYCOSYLATION_TYPE').subscribe(response => {\n this.glycosylationTypes = response['GLYCOSYLATION_TYPE'].list;\n });\n this.subscriptions.push(subscription);\n }\n\n openDialog(type: string): void {\n let param = {};\n if (type === 'N') {\n param = this.glycosylation.NGlycosylationSites;\n } else if (type === 'C') {\n param = this.glycosylation.CGlycosylationSites;\n } else {\n param = this.glycosylation.OGlycosylationSites;\n }\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': type, 'link': param},\n width: '1040px',\n panelClass: 'subunit-dialog'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n if (type === 'N') {\n this.glycosylation.NGlycosylationSites = newLinks;\n } else if (type === 'C') {\n this.glycosylation.CGlycosylationSites = newLinks;\n } else {\n this.glycosylation.OGlycosylationSites = newLinks;\n }\n this.substanceFormGlycosylationService.emitGlycosylationUpdate();\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n siteDisplay(sites: Array) {\n return this.substanceFormService.siteString(sites);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {SubstanceFormGlycosylationComponent} from '@gsrs-core/substance-form/glycosylation/substance-form-glycosylation.component';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport {MatOptionModule} from '@angular/material/core';\nimport {MatSelectModule} from '@angular/material/select';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormGlycosylationComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatOptionModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormGlycosylationComponent\n ]\n})\nexport class SubstanceFormGlycosylationModule { }\n"],"sourceRoot":"webpack:///","file":"7405.d2f604285ab69432.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7405.e142ef9aad48a50e.js b/frontend/src/main/resources/static/7405.e142ef9aad48a50e.js deleted file mode 100644 index f805cec..0000000 --- a/frontend/src/main/resources/static/7405.e142ef9aad48a50e.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7405],{77405:function(B,v,o){o.r(v),o.d(v,{SubstanceFormGlycosylationModule:function(){return X}});var m=o(48047),d=o(78069),f=o(36362),b=o(75143),S=o(7168),G=o(19975),p=o(65590),C=o(87317),T=o(94673),x=o(44770),h=o(90587),O=o(26439),A=o(43365),Z=o(40089),M=o(31959),F=o(24582),U=o(7318),P=o(79550),N=o(33567),D=o(40104),Y=o(18291),I=o(39401),j=o(12671),t=o(76442),J=o(95758),V=o(66088),E=o(16667),H=o(14900);function z(l,r){if(1&l){var e=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"app-cv-input",4),t.NdJ("valueChange",function(n){return t.CHM(e),t.oxw().glycosylation.glycosylationType=n}),t.qZA(),t._UZ(5,"br"),t._UZ(6,"br"),t.TgZ(7,"button",5),t.NdJ("click",function(){return t.CHM(e),t.oxw().clearAll()}),t._uU(8,"Clear Glycosylation"),t.qZA(),t.qZA(),t.TgZ(9,"div",6),t.TgZ(10,"div",7),t.TgZ(11,"div",8),t.TgZ(12,"b"),t._uU(13,"C "),t.qZA(),t._uU(14,"Glycosylation Sites "),t.qZA(),t.TgZ(15,"div",9),t.TgZ(16,"button",10),t.NdJ("click",function(){return t.CHM(e),t.oxw().openDialog("C")}),t._UZ(17,"mat-icon",11),t.qZA(),t._uU(18),t.qZA(),t.qZA(),t.TgZ(19,"div",7),t.TgZ(20,"div",8),t.TgZ(21,"b"),t._uU(22,"N "),t.qZA(),t._uU(23,"Glycosylation Sites"),t.qZA(),t.TgZ(24,"div",9),t.TgZ(25,"button",10),t.NdJ("click",function(){return t.CHM(e),t.oxw().openDialog("N")}),t._UZ(26,"mat-icon",11),t.qZA(),t._uU(27),t.qZA(),t.qZA(),t.TgZ(28,"div",7),t.TgZ(29,"div",8),t.TgZ(30,"b"),t._uU(31,"O "),t.qZA(),t._uU(32,"Glycosylation Sites"),t.qZA(),t.TgZ(33,"div",9),t.TgZ(34,"button",10),t.NdJ("click",function(){return t.CHM(e),t.oxw().openDialog("O")}),t._UZ(35,"mat-icon",11),t.qZA(),t._uU(36),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t._UZ(37,"app-audit-info",12),t.qZA()}if(2&l){var i=t.oxw();t.xp6(4),t.Q6J("model",i.glycosylation.glycosylationType),t.xp6(14),t.hij(" ",i.siteDisplay(i.glycosylation.CGlycosylationSites)," "),t.xp6(9),t.hij(" ",i.siteDisplay(i.glycosylation.NGlycosylationSites)," "),t.xp6(9),t.hij(" ",i.siteDisplay(i.glycosylation.OGlycosylationSites)," "),t.xp6(1),t.Q6J("source",i.privateLink)}}var L=function(){var l=function(r){(0,F.Z)(i,r);var e=(0,U.Z)(i);function i(c,n,a,y,u,g){var s;return(0,d.Z)(this,i),(s=e.call(this,a)).substanceFormGlycosylationService=c,s.substanceFormService=n,s.gaService=a,s.cvService=y,s.dialog=u,s.overlayContainerService=g,s.subscriptions=[],s.analyticsEventCategory="substance form glycosylation",s}return(0,m.Z)(i,[{key:"ngOnInit",value:function(){this.menuLabelUpdate.emit("Glycosylation"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.getVocabularies()}},{key:"ngAfterViewInit",value:function(){var n=this,a=this.substanceFormGlycosylationService.substanceGlycosylation.subscribe(function(y){n.glycosylation=y});this.subscriptions.push(a)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"clearAll",value:function(){this.glycosylation.CGlycosylationSites=[],this.glycosylation.NGlycosylationSites=[],this.glycosylation.OGlycosylationSites=[],this.glycosylation.glycosylationType=null,this.substanceFormGlycosylationService.emitGlycosylationUpdate()}},{key:"getVocabularies",value:function(){var n=this,a=this.cvService.getDomainVocabulary("GLYCOSYLATION_TYPE").subscribe(function(y){n.glycosylationTypes=y.GLYCOSYLATION_TYPE.list});this.subscriptions.push(a)}},{key:"openDialog",value:function(n){var a=this,u=this.dialog.open(I.r,{data:{card:n,link:"N"===n?this.glycosylation.NGlycosylationSites:"C"===n?this.glycosylation.CGlycosylationSites:this.glycosylation.OGlycosylationSites},width:"1040px",panelClass:"subunit-dialog"});this.overlayContainer.style.zIndex="1002";var g=u.afterClosed().subscribe(function(s){a.overlayContainer.style.zIndex=null,s&&("N"===n?a.glycosylation.NGlycosylationSites=s:"C"===n?a.glycosylation.CGlycosylationSites=s:a.glycosylation.OGlycosylationSites=s,a.substanceFormGlycosylationService.emitGlycosylationUpdate())});this.subscriptions.push(g)}},{key:"siteDisplay",value:function(n){return this.substanceFormService.siteString(n)}}]),i}(P.u);return l.\u0275fac=function(e){return new(e||l)(t.Y36(j.w),t.Y36(N.B),t.Y36(D.$),t.Y36(Y.I),t.Y36(J.uw),t.Y36(V.Xj))},l.\u0275cmp=t.Xpm({type:l,selectors:[["app-substance-form-glycosylation"]],features:[t.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"link-form-container"],[1,"form-row"],[1,"name-type"],["key","Protein Glycosylation Type","title","Glycosylation Type",3,"model","valueChange"],["mat-raised-button","","mat-primary","",3,"click"],[1,"types"],[1,"sites"],[1,"label","row-label"],[1,"row-sites"],["mat-icon-button","","matTooltip","Select sites from sequence",3,"click"],["svgIcon","edit"],[3,"source"]],template:function(e,i){1&e&&t.YNc(0,z,38,5,"div",0),2&e&&t.Q6J("ngIf",i.glycosylation)},directives:[f.O5,E.S,C.lW,Z.gM,p.Hw,H.n],styles:[".notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.sites[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.row-label[_ngcontent-%COMP%]{width:25%;padding-top:10px}.row-sites[_ngcontent-%COMP%]{width:75%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .name-type[_ngcontent-%COMP%]{width:25%}.form-row[_ngcontent-%COMP%] .name-field[_ngcontent-%COMP%]{margin-bottom:60px}.form-row[_ngcontent-%COMP%] .types[_ngcontent-%COMP%]{width:74%}.label[_ngcontent-%COMP%]{min-width:100px;padding-right:25px}"]}),l}(),w=o(1130),Q=o(91434),X=(o(64061),function(){var l=(0,m.Z)(function r(){(0,d.Z)(this,r)});return l.\u0275fac=function(e){return new(e||l)},l.\u0275mod=t.oAB({type:l}),l.\u0275inj=t.cJS({imports:[[f.ez,b.o0.forChild(L),S.O,G.t,p.Ps,C.ot,T.w,x.lN,h.UX,h.u5,O.TU,Z.AV,M.vV,A.c,w.Ng,Q.LD]]}),l}())}}]); -//# sourceMappingURL=7405.e142ef9aad48a50e.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7408.7f95627e550cf687.js b/frontend/src/main/resources/static/7408.7f95627e550cf687.js new file mode 100644 index 0000000..b4428db --- /dev/null +++ b/frontend/src/main/resources/static/7408.7f95627e550cf687.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7408],{57408:function(nn,g,n){n.r(g),n.d(g,{Ssg2OverviewFormModule:function(){return _}});var m=n(39117),f=n(1884),u=n(36362),x=n(98002),c=n(90587),p=n(44770),C=n(91434),v=n(43365),O=n(61534),b=n(68390),h=n(87317),S=n(31959),M=n(65590),y=n(40089),P=n(82796),F=n(12379),A=n(19975),G=n(81196),Z=n(43188),z=n(95758),T=n(97217),J=n(26131),B=n(16531),R=n(70178),j=n(74742),I=n(60833),N=n(49241),E=n(64061),V=n(65831),D=n(94673),U=n(45723),L=n(7168),Q=n(63200),Y=n(24054),X=n(46751),H=n(56101),K=n(33567),$=n(40104),W=n(18291),w=n(79223),t=n(86613),k=n(16667),q=function(){var e=function(i){(0,X.Z)(r,i);var a=(0,H.Z)(r);function r(l,o,d){var s;return(0,m.Z)(this,r),(s=a.call(this)).substanceFormService=l,s.gaService=o,s.cvService=d,s.subscriptions=[],s.analyticsEventCategory="substance form ssg 2 Manufacturing",s}return(0,f.Z)(r,[{key:"ngOnInit",value:function(){var o=this;this.menuLabelUpdate.emit("Overview");var d=this.substanceFormService.substance.subscribe(function(s){o.substance=s,s.specifiedSubstanceG2||(s.specifiedSubstanceG2={}),o.substanceFormService.resetState(),o.specifiedSubstanceG2=s.specifiedSubstanceG2});this.subscriptions.push(d)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(o){o.unsubscribe()})}}]),r}(w.o);return e.\u0275fac=function(a){return new(a||e)(t.Y36(K.B),t.Y36($.$),t.Y36(W.I))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-ssg2-overview-form"]],features:[t.qOj],decls:5,vars:3,consts:[[1,"form-row"],["domain","SSG_SUBSTANCE_ROLE","title","Substance Role","name","specifiedSubstanceG2.substanceRole",1,"col-3-1",3,"model","valueChange"],["domain","SSG_GRADE","title","Grade","name","specifiedSubstanceG2.grade",1,"col-3-1",3,"model","valueChange"],[1,"col-3-1"],["matInput","","placeholder","Comments","name","specifiedSubstanceG2.comments",3,"ngModel","ngModelChange"]],template:function(a,r){1&a&&(t.TgZ(0,"div",0),t.TgZ(1,"app-cv-input",1),t.NdJ("valueChange",function(o){return r.specifiedSubstanceG2.substanceRole=o}),t.qZA(),t.TgZ(2,"app-cv-input",2),t.NdJ("valueChange",function(o){return r.specifiedSubstanceG2.grade=o}),t.qZA(),t.TgZ(3,"mat-form-field",3),t.TgZ(4,"input",4),t.NdJ("ngModelChange",function(o){return r.specifiedSubstanceG2.comments=o}),t.qZA(),t.qZA(),t.qZA()),2&a&&(t.xp6(1),t.Q6J("model",r.specifiedSubstanceG2.substanceRole),t.xp6(1),t.Q6J("model",r.specifiedSubstanceG2.grade),t.xp6(2),t.Q6J("ngModel",r.specifiedSubstanceG2.comments))},directives:[k.S,p.KE,v.Nt,c.Fj,c.JJ,c.On],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:10px}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.references-container[_ngcontent-%COMP%]{width:100%}.materialborder[_ngcontent-%COMP%]{padding-top:10px;margin-top:15px;border:2px solid #b6afaf}.materialtitle[_ngcontent-%COMP%]{font-size:18px;padding-left:10px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderorange[_ngcontent-%COMP%]{border:1px solid orangered}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.colorgreen[_ngcontent-%COMP%]{color:green}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:25px;margin-right:20px;background-color:#fff;border:1px solid #007CBA}.button-delete-stage[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:20px;color:red;background-color:#fff;border:1px solid red}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}.button-insert-before[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:360px;color:#007cba;background-color:#fff;border:1px solid #007CBA}.button-insert-after[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:180px;color:#007cba;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 2px #A0A0A3!important;padding:0 10px 10px;border-bottom:none;border-radius:3px;margin-bottom:30px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px}"]}),e}(),_=function(){var e=function(){function i(){(0,m.Z)(this,i)}return(0,f.Z)(i,null,[{key:"forRoot",value:function(){return{ngModule:i,providers:[]}}}]),i}();return e.\u0275fac=function(a){return new(a||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[E.o.forChild(q),u.ez,c.UX,c.u5,p.lN,P.Tx,O.p9,h.ot,M.Ps,y.AV,F.Nh,A.t,C.LD,v.c,G.Hi,Z.Bb,D.w,z.Is,T.p0,B.To,R.g,b.Fk,U.F,Q.U,J.ie,V.x,S.vV,N.s,x.Bz,Y.f,I.Cv,j.Cq,L.O]]}),e}()}}]); +//# sourceMappingURL=7408.7f95627e550cf687.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7408.7f95627e550cf687.js.map b/frontend/src/main/resources/static/7408.7f95627e550cf687.js.map new file mode 100644 index 0000000..07c9ec5 --- /dev/null +++ b/frontend/src/main/resources/static/7408.7f95627e550cf687.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"8nBAcaA,EAAb,eAAaA,EAAb,0CAKE,WACUC,EACDC,EACAC,GAAsC,6BAE7CC,gBAJQH,uBACDG,cACAA,cAJDA,gBAAqC,GAO3CA,EAAKC,uBAAyB,qCAHeD,EARjD,uCAcE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,YAC1B,IAAMC,EAAwBH,KAAKL,qBAAqBS,UAAUC,UAAU,YAC1EC,EAAKF,UAAYA,EAEZA,EAAUG,uBACbH,EAAUG,qBAAuB,IAEnCD,EAAKX,qBAAqBa,aAC1BF,EAAKC,qBAAuBH,EAAUG,uBAExCP,KAAKS,cAAcC,KAAKP,KAzB5B,6BA4BE,cA5BF,yBA+BE,WACEH,KAAKS,cAAcE,QAAQ,YACzBC,EAAaC,oBAjCnBC,GAA+CC,kDAAlCrB,GAAyBsB,2DAAzBtB,EAAyBuB,8eCdtCD,iBAEEA,0BAC+CA,gFAC/CA,QAEAA,0BACEA,wEACFA,QAEAA,4BACEA,mBAAuCA,6EAAvCA,QAEFA,QAEFA,eAZIA,6DAG+FA,qDAKxDA,kqFDG9BtB,EAAb,GEoFawB,EAAb,eAAaA,EAAb,mFACE,WACE,MAAO,CACLC,SAAUD,EACVE,UAAW,QAJjBC,kDAAaH,4DA7CF,CACPI,aAAsC5B,GACtC6B,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,KACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,IACAC,KACAC,IACAC,IACAC,KACAC,IACAC,KACAC,IACAC,KACAC,IACAC,KACAC,KACAC,QAYSpC,EAAb","names":["Ssg2OverviewFormComponent","substanceFormService","gaService","cvService","s","analyticsEventCategory","this","menuLabelUpdate","emit","substanceSubscription","substance","subscribe","o","specifiedSubstanceG2","resetState","subscriptions","push","forEach","subscription","unsubscribe","r","SubstanceFormBase","i0","selectors","Ssg2OverviewFormModule","ngModule","providers","i","DynamicComponentLoaderModule","CommonModule","ReactiveFormsModule","FormsModule","MatFormFieldModule","MatMenuModule","MatCheckboxModule","MatButtonModule","MatIconModule","MatTooltipModule","MatTabsModule","MatDividerModule","MatSelectModule","MatInputModule","MatChipsModule","MatAutocompleteModule","ScrollToModule","MatDialogModule","MatTableModule","MatExpansionModule","MatBadgeModule","MatRadioModule","ExpandDetailsModule","SubstanceSelectorModule","MatListModule","FileSelectModule","MatButtonToggleModule","NgxJsonViewerModule","RouterModule","SubstanceImageModule","MatProgressBarModule","MatProgressSpinnerModule","SubstanceFormModule"],"sources":["./src/app/core/substance-ssg2/ssg2-overview-form/ssg2-overview-form.component.ts","./src/app/core/substance-ssg2/ssg2-overview-form/ssg2-overview-form.component.html","./src/app/core/substance-ssg2/ssg2-overview-form/ssg2-overview-form.module.ts"],"sourcesContent":["import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { SubstanceFormBase } from '../../substance-form/base-classes/substance-form-base';\nimport { SubstanceDetail, SpecifiedSubstanceG2 } from '@gsrs-core/substance/substance.model';\n\n@Component({\n selector: 'app-ssg2-overview-form',\n templateUrl: './ssg2-overview-form.component.html',\n styleUrls: ['./ssg2-overview-form.component.scss']\n})\nexport class Ssg2OverviewFormComponent extends SubstanceFormBase implements OnInit, AfterViewInit, OnDestroy {\n\n substance: SubstanceDetail;\n specifiedSubstanceG2: SpecifiedSubstanceG2;\n private subscriptions: Array = [];\n constructor(\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService\n ) {\n super();\n this.analyticsEventCategory = 'substance form ssg 2 Manufacturing';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Overview');\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n\n if (!substance.specifiedSubstanceG2) {\n substance.specifiedSubstanceG2 = {};\n }\n this.substanceFormService.resetState();\n this.specifiedSubstanceG2 = substance.specifiedSubstanceG2;\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n}","
\n\n \n \n\n \n \n\n \n \n \n\n
","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule, formatDate } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatListModule } from '@angular/material/list';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatProgressBarModule} from '@angular/material/progress-bar';\nimport { NgxJsonViewerModule} from 'ngx-json-viewer';\n// GSRS Imports\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { FileSelectModule } from 'file-select';\nimport { ScrollToModule } from '@gsrs-core/scroll-to/scroll-to.module';\nimport { ExpandDetailsModule } from '@gsrs-core/expand-details/expand-details.module';\nimport { SubstanceFormModule } from '../../substance-form/substance-form.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { Ssg2OverviewFormComponent } from './ssg2-overview-form.component';\n\nimport { CvInputComponent} from '@gsrs-core/substance-form/cv-input/cv-input.component';\nimport { CvDialogComponent} from '@gsrs-core/substance-form/cv-dialog/cv-dialog.component';\nimport { JsonDialogComponent} from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport { AuditInfoComponent} from '@gsrs-core/substance-form/audit-info/audit-info.component';\n\n// import { SubmitSuccessDialogComponent } from './submit-success-dialog/submit-success-dialog.component';\n// import { MergeConceptDialogComponent} from '@gsrs-core/substance-form/merge-concept-dialog/merge-concept-dialog.component';\n// import { SubstanceFormComponent } from './substance-form.component';\n// import { CanActivateSubstanceForm } from './can-activate-substance-form';\n// import { CanRegisterSubstanceForm } from './can-register-substance-form';\n// import { SubstanceFormService } from '../substance-form.service';\n// import { AccessManagerComponent } from './access-manager/access-manager.component';\n// import { SubstanceSsg4mService } from './substance-ssg4m-form.service';\n// import { SubstanceFormComponent } from '../substance-form/substance-form.component';\n// import { SubstanceFormSsg4mSitesService } from './ssg4m-sites/substance-form-ssg4m-sites.service.';\n\n@NgModule({\n imports: [\n DynamicComponentLoaderModule.forChild(Ssg2OverviewFormComponent),\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatDividerModule,\n MatSelectModule,\n MatInputModule,\n MatChipsModule,\n MatAutocompleteModule,\n ScrollToModule,\n MatDialogModule,\n MatTableModule,\n MatExpansionModule,\n MatBadgeModule,\n MatRadioModule,\n ExpandDetailsModule,\n SubstanceSelectorModule,\n MatListModule,\n FileSelectModule,\n MatButtonToggleModule,\n NgxJsonViewerModule,\n RouterModule,\n SubstanceImageModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n SubstanceFormModule\n ],\n declarations: [\n Ssg2OverviewFormComponent\n ],\n exports: [\n Ssg2OverviewFormComponent\n ],\n entryComponents: [\n ]\n})\n\nexport class Ssg2OverviewFormModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: Ssg2OverviewFormModule,\n providers: [\n ]\n };\n }\n}\n"],"sourceRoot":"webpack:///","file":"7408.7f95627e550cf687.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7440.c7864c17d1781b9e.js b/frontend/src/main/resources/static/7440.de27b18d22451e72.js similarity index 95% rename from frontend/src/main/resources/static/7440.c7864c17d1781b9e.js rename to frontend/src/main/resources/static/7440.de27b18d22451e72.js index 08a4457..2a4d5bf 100644 --- a/frontend/src/main/resources/static/7440.c7864c17d1781b9e.js +++ b/frontend/src/main/resources/static/7440.de27b18d22451e72.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7440],{27440:function(j,o,i){i.r(o),i.d(o,{SubstancePolymerStructureModule:function(){return q}});var u=i(48047),r=i(78069),l=i(36362),p=i(64061),g=i(24582),S=i(7318),b=i(2756),Z=i(50253),t=i(76442),y=i(50318),d=i(40089),m=i(65590),x=i(9292),f=i(98002);function T(e,a){if(1&e&&(t.TgZ(0,"div",3),t.TgZ(1,"a",4),t._UZ(2,"mat-icon",5),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(1),t.MGl("download","",n.substance.approvalID?n.substance.approvalID.toString():n.substance.uuid.toString(),".mol"),t.Q6J("href",n.molfileHref,t.LSH)}}function h(e,a){if(1&e&&(t.TgZ(0,"div",6),t.TgZ(1,"div",7),t._UZ(2,"img",8),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(2),t.Q6J("entityId",n.structure.id)}}function C(e,a){if(1&e&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._uU(2,"Polymer Class:"),t.qZA(),t.TgZ(3,"div",15),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(4),t.Oqu(n.classification.polymerClass)}}function I(e,a){if(1&e&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._uU(2,"Source Type:"),t.qZA(),t.TgZ(3,"div",15),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(4),t.Oqu(n.classification.sourceType)}}function P(e,a){if(1&e&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._uU(2,"Polymer SubClass:"),t.qZA(),t.TgZ(3,"div",15),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(4),t.Oqu(n.classification.polymerSubclass)}}function A(e,a){if(1&e&&(t.TgZ(0,"div",20),t._uU(1),t.qZA()),2&e){var n=t.oxw(3);t.xp6(1),t.hij(" ",n.classification.parentSubstance.linkingID,"")}}function U(e,a){if(1&e&&t._UZ(0,"img",21),2&e){var n=t.oxw(3);t.Q6J("entityId",n.relatedSubstanceUuid)}}var J=function(a){return["/substances",a]};function M(e,a){if(1&e&&(t.TgZ(0,"div",16),t.TgZ(1,"div",14),t._uU(2,"Parent Substance"),t.qZA(),t.YNc(3,A,2,1,"div",17),t.YNc(4,U,1,1,"img",18),t.TgZ(5,"div"),t.TgZ(6,"a",19),t._uU(7),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(3),t.Q6J("ngIf",n.classification.parentSubstance&&n.classification.parentSubstance.linkingID),t.xp6(1),t.Q6J("ngIf",n.relatedSubstanceUuid&&""!==n.relatedSubstanceUuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,J,n.relatedSubstanceUuid||"")),t.xp6(1),t.hij(" ",n.classification.parentSubstance.name," ")}}function O(e,a){if(1&e&&(t.TgZ(0,"div",9),t.TgZ(1,"div",10),t.YNc(2,C,5,1,"div",11),t.YNc(3,I,5,1,"div",11),t.YNc(4,P,5,1,"div",11),t.qZA(),t.TgZ(5,"div"),t.YNc(6,M,8,6,"div",12),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(2),t.Q6J("ngIf",n.classification.polymerClass),t.xp6(1),t.Q6J("ngIf",n.classification.sourceType),t.xp6(1),t.Q6J("ngIf",n.classification.polymerSubclass),t.xp6(2),t.Q6J("ngIf",n.classification.parentSubstance)}}var w=function(){var e=function(a){(0,g.Z)(s,a);var n=(0,S.Z)(s);function s(v){var c;return(0,r.Z)(this,s),(c=n.call(this)).sanitizer=v,c.substanceUpdated=new Z.x,c}return(0,u.Z)(s,[{key:"ngOnInit",value:function(){var c=this;this.substanceUpdated.subscribe(function(N){c.substance=N,null!=c.substance&&(c.structure=c.substance.polymer.idealizedStructure,c.classification=c.substance.polymer.classification),c.relatedSubstanceUuid=c.classification.parentSubstance&&c.classification.parentSubstance.refuuid||"";var z=c.sanitizer.bypassSecurityTrustUrl("data:text;charset=UTF-8,"+encodeURIComponent(c.structure.molfile));c.molfileHref=z})}}]),s}(b.B);return e.\u0275fac=function(n){return new(n||e)(t.Y36(y.H7))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-polymer-structure"]],features:[t.qOj],decls:3,vars:3,consts:[["class","float-right",4,"ngIf"],["class","flex-row center-content",4,"ngIf"],["class","flex-row",4,"ngIf"],[1,"float-right"],["title","Download molfile","matTooltip","Download Molfile",1,"mat-icon-button",3,"href","download"],["svgIcon","get_app"],[1,"flex-row","center-content"],[1,"structure-image-container"],["appSubstanceImage","","size","400",1,"structure-img",3,"entityId"],[1,"flex-row"],[1,"classification"],["class","name-value",4,"ngIf"],["class","selected-substance",4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],[1,"selected-substance"],["class","code",4,"ngIf"],["class","image-icon","appSubstanceImage","","size","400",3,"entityId",4,"ngIf"],[1,"substance-name",3,"routerLink"],[1,"code"],["appSubstanceImage","","size","400",1,"image-icon",3,"entityId"]],template:function(n,s){1&n&&(t.YNc(0,T,3,2,"div",0),t.YNc(1,h,3,1,"div",1),t.YNc(2,O,7,4,"div",2)),2&n&&(t.Q6J("ngIf",s.structure),t.xp6(1),t.Q6J("ngIf",s.structure),t.xp6(1),t.Q6J("ngIf",s.classification))},directives:[l.O5,d.gM,m.Hw,x.m,f.yS],styles:[".center-content[_ngcontent-%COMP%]{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.classification[_ngcontent-%COMP%]{width:50%}.selected-substance[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:center;position:relative;width:50%}.selected-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block;max-width:200px}.float-right[_ngcontent-%COMP%]{float:right}"]}),e}(),Q=i(24054),q=function(){var e=(0,u.Z)(function a(){(0,r.Z)(this,a)});return e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[l.ez,f.Bz,p.o.forChild(w),Q.f,m.Ps,d.AV]]}),e}()}}]); -//# sourceMappingURL=7440.c7864c17d1781b9e.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7440],{27440:function(j,o,i){i.r(o),i.d(o,{SubstancePolymerStructureModule:function(){return q}});var u=i(1884),r=i(39117),l=i(36362),p=i(64061),g=i(46751),S=i(56101),b=i(2756),Z=i(50253),t=i(86613),y=i(50318),d=i(40089),m=i(65590),x=i(9292),f=i(98002);function T(e,a){if(1&e&&(t.TgZ(0,"div",3),t.TgZ(1,"a",4),t._UZ(2,"mat-icon",5),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(1),t.MGl("download","",n.substance.approvalID?n.substance.approvalID.toString():n.substance.uuid.toString(),".mol"),t.Q6J("href",n.molfileHref,t.LSH)}}function h(e,a){if(1&e&&(t.TgZ(0,"div",6),t.TgZ(1,"div",7),t._UZ(2,"img",8),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(2),t.Q6J("entityId",n.structure.id)}}function C(e,a){if(1&e&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._uU(2,"Polymer Class:"),t.qZA(),t.TgZ(3,"div",15),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(4),t.Oqu(n.classification.polymerClass)}}function I(e,a){if(1&e&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._uU(2,"Source Type:"),t.qZA(),t.TgZ(3,"div",15),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(4),t.Oqu(n.classification.sourceType)}}function P(e,a){if(1&e&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._uU(2,"Polymer SubClass:"),t.qZA(),t.TgZ(3,"div",15),t._uU(4),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(4),t.Oqu(n.classification.polymerSubclass)}}function A(e,a){if(1&e&&(t.TgZ(0,"div",20),t._uU(1),t.qZA()),2&e){var n=t.oxw(3);t.xp6(1),t.hij(" ",n.classification.parentSubstance.linkingID,"")}}function U(e,a){if(1&e&&t._UZ(0,"img",21),2&e){var n=t.oxw(3);t.Q6J("entityId",n.relatedSubstanceUuid)}}var J=function(a){return["/substances",a]};function M(e,a){if(1&e&&(t.TgZ(0,"div",16),t.TgZ(1,"div",14),t._uU(2,"Parent Substance"),t.qZA(),t.YNc(3,A,2,1,"div",17),t.YNc(4,U,1,1,"img",18),t.TgZ(5,"div"),t.TgZ(6,"a",19),t._uU(7),t.qZA(),t.qZA(),t.qZA()),2&e){var n=t.oxw(2);t.xp6(3),t.Q6J("ngIf",n.classification.parentSubstance&&n.classification.parentSubstance.linkingID),t.xp6(1),t.Q6J("ngIf",n.relatedSubstanceUuid&&""!==n.relatedSubstanceUuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,J,n.relatedSubstanceUuid||"")),t.xp6(1),t.hij(" ",n.classification.parentSubstance.name," ")}}function O(e,a){if(1&e&&(t.TgZ(0,"div",9),t.TgZ(1,"div",10),t.YNc(2,C,5,1,"div",11),t.YNc(3,I,5,1,"div",11),t.YNc(4,P,5,1,"div",11),t.qZA(),t.TgZ(5,"div"),t.YNc(6,M,8,6,"div",12),t.qZA(),t.qZA()),2&e){var n=t.oxw();t.xp6(2),t.Q6J("ngIf",n.classification.polymerClass),t.xp6(1),t.Q6J("ngIf",n.classification.sourceType),t.xp6(1),t.Q6J("ngIf",n.classification.polymerSubclass),t.xp6(2),t.Q6J("ngIf",n.classification.parentSubstance)}}var w=function(){var e=function(a){(0,g.Z)(s,a);var n=(0,S.Z)(s);function s(v){var c;return(0,r.Z)(this,s),(c=n.call(this)).sanitizer=v,c.substanceUpdated=new Z.x,c}return(0,u.Z)(s,[{key:"ngOnInit",value:function(){var c=this;this.substanceUpdated.subscribe(function(N){c.substance=N,null!=c.substance&&(c.structure=c.substance.polymer.idealizedStructure,c.classification=c.substance.polymer.classification),c.relatedSubstanceUuid=c.classification.parentSubstance&&c.classification.parentSubstance.refuuid||"";var z=c.sanitizer.bypassSecurityTrustUrl("data:text;charset=UTF-8,"+encodeURIComponent(c.structure.molfile));c.molfileHref=z})}}]),s}(b.B);return e.\u0275fac=function(n){return new(n||e)(t.Y36(y.H7))},e.\u0275cmp=t.Xpm({type:e,selectors:[["app-substance-polymer-structure"]],features:[t.qOj],decls:3,vars:3,consts:[["class","float-right",4,"ngIf"],["class","flex-row center-content",4,"ngIf"],["class","flex-row",4,"ngIf"],[1,"float-right"],["title","Download molfile","matTooltip","Download Molfile",1,"mat-icon-button",3,"href","download"],["svgIcon","get_app"],[1,"flex-row","center-content"],[1,"structure-image-container"],["appSubstanceImage","","size","400",1,"structure-img",3,"entityId"],[1,"flex-row"],[1,"classification"],["class","name-value",4,"ngIf"],["class","selected-substance",4,"ngIf"],[1,"name-value"],[1,"name"],[1,"value"],[1,"selected-substance"],["class","code",4,"ngIf"],["class","image-icon","appSubstanceImage","","size","400",3,"entityId",4,"ngIf"],[1,"substance-name",3,"routerLink"],[1,"code"],["appSubstanceImage","","size","400",1,"image-icon",3,"entityId"]],template:function(n,s){1&n&&(t.YNc(0,T,3,2,"div",0),t.YNc(1,h,3,1,"div",1),t.YNc(2,O,7,4,"div",2)),2&n&&(t.Q6J("ngIf",s.structure),t.xp6(1),t.Q6J("ngIf",s.structure),t.xp6(1),t.Q6J("ngIf",s.classification))},directives:[l.O5,d.gM,m.Hw,x.m,f.yS],styles:[".center-content[_ngcontent-%COMP%]{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.classification[_ngcontent-%COMP%]{width:50%}.selected-substance[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:center;position:relative;width:50%}.selected-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block;max-width:200px}.float-right[_ngcontent-%COMP%]{float:right}"]}),e}(),Q=i(24054),q=function(){var e=(0,u.Z)(function a(){(0,r.Z)(this,a)});return e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=t.oAB({type:e}),e.\u0275inj=t.cJS({imports:[[l.ez,f.Bz,p.o.forChild(w),Q.f,m.Ps,d.AV]]}),e}()}}]); +//# sourceMappingURL=7440.de27b18d22451e72.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7440.c7864c17d1781b9e.js.map b/frontend/src/main/resources/static/7440.de27b18d22451e72.js.map similarity index 99% rename from frontend/src/main/resources/static/7440.c7864c17d1781b9e.js.map rename to frontend/src/main/resources/static/7440.de27b18d22451e72.js.map index 0bd5df2..1132801 100644 --- a/frontend/src/main/resources/static/7440.c7864c17d1781b9e.js.map +++ b/frontend/src/main/resources/static/7440.de27b18d22451e72.js.map @@ -1 +1 @@ -{"version":3,"mappings":"0WACAA,iBACIA,eACEA,sBACFA,QACFA,4BAH2GA,0HAArDA,4DAIxDA,iBAEEA,iBACEA,iBACFA,QAEFA,4BAHiDA,oEAW7CA,kBACEA,kBAAkBA,0BAAcA,QAChCA,kBAAmBA,SAA+BA,QACpDA,6BADqBA,wEAGrBA,kBACEA,kBAAkBA,wBAAYA,QAC9BA,kBAAmBA,SAA6BA,QAClDA,6BADqBA,sEAGrBA,kBACEA,kBAAkBA,6BAAiBA,QACnCA,kBAAmBA,SAAkCA,QACvDA,6BADqBA,2EAMnBA,kBACEA,SAA4CA,6BAA5CA,2FACFA,sCACoBA,8GALtBA,kBACEA,kBAAkBA,4BAAgBA,QAClCA,wBAEAA,wBAEAA,eACEA,gBACEA,SACFA,QACFA,QACFA,6BATQA,oGAEoBA,2EAGEA,mEACxBA,wFA3BVA,iBACEA,kBAEEA,wBAKAA,wBAKAA,wBAIFA,QACAA,eACEA,wBAYFA,QAEFA,4BA9B6BA,qDAKAA,mDAKAA,wDAMUA,yDCzBhC,IAAMC,EAAb,eAAaA,EAAb,0CAQE,WACUC,GAAuB,6BAE/BC,gBAFQD,YAPVC,mBAAmB,IAAIC,IAOUD,EATnC,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BJ,EAAKK,UAAYA,EACK,MAAlBL,EAAKK,YACPL,EAAKM,UAAYN,EAAKK,UAAUE,QAAQC,mBACxCR,EAAKS,eAAiBT,EAAKK,UAAUE,QAAQE,gBAE/CT,EAAKU,qBAAuBV,EAAKS,eAAeE,iBAAmBX,EAAKS,eAAeE,gBAAgBC,SAAW,GAClH,IACQC,EAAMb,EAAKD,UAAUe,uBAAuB,2BAA6BC,mBADjEf,EAAKM,UAAUU,UAE7BhB,EAAKiB,YAAcJ,QAxB3BK,GAAwDC,kDAA3CrB,GAAkCD,sCAAlCC,EAAkCsB,63BDV/CvB,uBAKAA,uBAWAA,8BAhB4BA,0BAKUA,mCAWfA,goBCNVC,EAAb,cCSauB,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,KACAC,aAAsC3B,GACtC4B,IACAC,KACAC,SAISP,EAAb","names":["i0","SubstancePolymerStructureComponent","sanitizer","c","Subject","this","substanceUpdated","subscribe","substance","structure","polymer","idealizedStructure","classification","relatedSubstanceUuid","parentSubstance","refuuid","uri","bypassSecurityTrustUrl","encodeURIComponent","molfile","molfileHref","s","SubstanceCardBase","selectors","SubstancePolymerStructureModule","u","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceImageModule","MatIconModule","MatTooltipModule"],"sources":["./src/app/core/substance-details/substance-polymer-structure/substance-polymer-structure.component.html","./src/app/core/substance-details/substance-polymer-structure/substance-polymer-structure.component.ts","./src/app/core/substance-details/substance-polymer-structure/substance-polymer-structure.module.ts"],"sourcesContent":["\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
Polymer Class:
\r\n
{{classification.polymerClass}}
\r\n
\r\n\r\n
\r\n
Source Type:
\r\n
{{classification.sourceType}}
\r\n
\r\n\r\n
\r\n
Polymer SubClass:
\r\n
{{classification.polymerSubclass}}
\r\n
\r\n
\r\n
\r\n
\r\n
Parent Substance
\r\n
\r\n {{classification.parentSubstance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {DisplayStructure, Polymer, PolymerClassification, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-substance-polymer-structure',\r\n templateUrl: './substance-polymer-structure.component.html',\r\n styleUrls: ['./substance-polymer-structure.component.scss']\r\n})\r\nexport class SubstancePolymerStructureComponent extends SubstanceCardBase implements OnInit {\r\n structure: DisplayStructure;\r\n substanceUpdated = new Subject();\r\n classification: PolymerClassification;\r\n relatedSubstanceUuid: string;\r\n molfileHref: any;\r\n\r\n\r\n constructor(\r\n private sanitizer: DomSanitizer,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n this.structure = this.substance.polymer.idealizedStructure;\r\n this.classification = this.substance.polymer.classification;\r\n }\r\n this.relatedSubstanceUuid = this.classification.parentSubstance && this.classification.parentSubstance.refuuid || '';\r\n const theJSON = this.structure.molfile;\r\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text;charset=UTF-8,' + encodeURIComponent(theJSON));\r\n this.molfileHref = uri;\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstancePolymerStructureComponent } from './substance-polymer-structure.component';\r\nimport {RouterModule} from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatIconModule} from '@angular/material/icon';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n DynamicComponentLoaderModule.forChild(SubstancePolymerStructureComponent),\r\n SubstanceImageModule,\r\n MatIconModule,\r\n MatTooltipModule\r\n ],\r\n declarations: [SubstancePolymerStructureComponent]\r\n})\r\nexport class SubstancePolymerStructureModule { }\r\n"],"sourceRoot":"webpack:///","file":"7440.c7864c17d1781b9e.js"} \ No newline at end of file +{"version":3,"mappings":"0WACAA,iBACIA,eACEA,sBACFA,QACFA,4BAH2GA,0HAArDA,4DAIxDA,iBAEEA,iBACEA,iBACFA,QAEFA,4BAHiDA,oEAW7CA,kBACEA,kBAAkBA,0BAAcA,QAChCA,kBAAmBA,SAA+BA,QACpDA,6BADqBA,wEAGrBA,kBACEA,kBAAkBA,wBAAYA,QAC9BA,kBAAmBA,SAA6BA,QAClDA,6BADqBA,sEAGrBA,kBACEA,kBAAkBA,6BAAiBA,QACnCA,kBAAmBA,SAAkCA,QACvDA,6BADqBA,2EAMnBA,kBACEA,SAA4CA,6BAA5CA,2FACFA,sCACoBA,8GALtBA,kBACEA,kBAAkBA,4BAAgBA,QAClCA,wBAEAA,wBAEAA,eACEA,gBACEA,SACFA,QACFA,QACFA,6BATQA,oGAEoBA,2EAGEA,mEACxBA,wFA3BVA,iBACEA,kBAEEA,wBAKAA,wBAKAA,wBAIFA,QACAA,eACEA,wBAYFA,QAEFA,4BA9B6BA,qDAKAA,mDAKAA,wDAMUA,yDCzBhC,IAAMC,EAAb,eAAaA,EAAb,0CAQE,WACUC,GAAuB,6BAE/BC,gBAFQD,YAPVC,mBAAmB,IAAIC,IAOUD,EATnC,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BJ,EAAKK,UAAYA,EACK,MAAlBL,EAAKK,YACPL,EAAKM,UAAYN,EAAKK,UAAUE,QAAQC,mBACxCR,EAAKS,eAAiBT,EAAKK,UAAUE,QAAQE,gBAE/CT,EAAKU,qBAAuBV,EAAKS,eAAeE,iBAAmBX,EAAKS,eAAeE,gBAAgBC,SAAW,GAClH,IACQC,EAAMb,EAAKD,UAAUe,uBAAuB,2BAA6BC,mBADjEf,EAAKM,UAAUU,UAE7BhB,EAAKiB,YAAcJ,QAxB3BK,GAAwDC,kDAA3CrB,GAAkCD,sCAAlCC,EAAkCsB,63BDV/CvB,uBAKAA,uBAWAA,8BAhB4BA,0BAKUA,mCAWfA,goBCNVC,EAAb,cCSauB,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,KACAC,aAAsC3B,GACtC4B,IACAC,KACAC,SAISP,EAAb","names":["i0","SubstancePolymerStructureComponent","sanitizer","c","Subject","this","substanceUpdated","subscribe","substance","structure","polymer","idealizedStructure","classification","relatedSubstanceUuid","parentSubstance","refuuid","uri","bypassSecurityTrustUrl","encodeURIComponent","molfile","molfileHref","s","SubstanceCardBase","selectors","SubstancePolymerStructureModule","u","CommonModule","RouterModule","DynamicComponentLoaderModule","SubstanceImageModule","MatIconModule","MatTooltipModule"],"sources":["./src/app/core/substance-details/substance-polymer-structure/substance-polymer-structure.component.html","./src/app/core/substance-details/substance-polymer-structure/substance-polymer-structure.component.ts","./src/app/core/substance-details/substance-polymer-structure/substance-polymer-structure.module.ts"],"sourcesContent":["\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
Polymer Class:
\r\n
{{classification.polymerClass}}
\r\n
\r\n\r\n
\r\n
Source Type:
\r\n
{{classification.sourceType}}
\r\n
\r\n\r\n
\r\n
Polymer SubClass:
\r\n
{{classification.polymerSubclass}}
\r\n
\r\n
\r\n
\r\n
\r\n
Parent Substance
\r\n
\r\n {{classification.parentSubstance.linkingID}}
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport {DisplayStructure, Polymer, PolymerClassification, SubstanceDetail} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-substance-polymer-structure',\r\n templateUrl: './substance-polymer-structure.component.html',\r\n styleUrls: ['./substance-polymer-structure.component.scss']\r\n})\r\nexport class SubstancePolymerStructureComponent extends SubstanceCardBase implements OnInit {\r\n structure: DisplayStructure;\r\n substanceUpdated = new Subject();\r\n classification: PolymerClassification;\r\n relatedSubstanceUuid: string;\r\n molfileHref: any;\r\n\r\n\r\n constructor(\r\n private sanitizer: DomSanitizer,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n this.structure = this.substance.polymer.idealizedStructure;\r\n this.classification = this.substance.polymer.classification;\r\n }\r\n this.relatedSubstanceUuid = this.classification.parentSubstance && this.classification.parentSubstance.refuuid || '';\r\n const theJSON = this.structure.molfile;\r\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text;charset=UTF-8,' + encodeURIComponent(theJSON));\r\n this.molfileHref = uri;\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstancePolymerStructureComponent } from './substance-polymer-structure.component';\r\nimport {RouterModule} from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatIconModule} from '@angular/material/icon';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n DynamicComponentLoaderModule.forChild(SubstancePolymerStructureComponent),\r\n SubstanceImageModule,\r\n MatIconModule,\r\n MatTooltipModule\r\n ],\r\n declarations: [SubstancePolymerStructureComponent]\r\n})\r\nexport class SubstancePolymerStructureModule { }\r\n"],"sourceRoot":"webpack:///","file":"7440.de27b18d22451e72.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/7441.c0539023d694db57.js b/frontend/src/main/resources/static/7441.ebe724642a3823f7.js similarity index 84% rename from frontend/src/main/resources/static/7441.c0539023d694db57.js rename to frontend/src/main/resources/static/7441.ebe724642a3823f7.js index 2dcfa24..7ae75eb 100644 --- a/frontend/src/main/resources/static/7441.c0539023d694db57.js +++ b/frontend/src/main/resources/static/7441.ebe724642a3823f7.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7441],{57441:function($,m,t){t.r(m),t.d(m,{SubstanceFormSugarsModule:function(){return L}});var v=t(48047),f=t(78069),g=t(36362),Z=t(75143),C=t(7168),S=t(19975),h=t(65590),p=t(87317),x=t(94673),T=t(44770),b=t(90587),I=t(26439),O=t(43365),A=t(40089),E=t(31959),J=t(91434),M=t(95106),U=t(24582),D=t(7318),Q=t(79550),N=(t(27299),t(33567)),Y=t(40104),n=t(76442),R=t(78444),H=t(51279),P=t(1427);function V(r,u){1&r&&n._UZ(0,"mat-divider",7),2&r&&n.Q6J("inset",!0)}function j(r,u){if(1&r){var c=n.EpF();n.TgZ(0,"div",4),n.TgZ(1,"app-sugar-form",5),n.NdJ("sugarDeleted",function(i){return n.CHM(c),n.oxw().deleteSugar(i)}),n.qZA(),n.YNc(2,V,1,1,"mat-divider",6),n.qZA()}if(2&r){var a=u.$implicit,o=u.last,e=u.index,l=n.oxw();n.Q6J("id","substance-sugars-"+e),n.xp6(1),n.Q6J("sugar",a)("remaining",l.remainingSites),n.xp6(1),n.Q6J("ngIf",!o)}}function z(r,u){if(1&r){var c=n.EpF();n.TgZ(0,"div",8),n._UZ(1,"span",9),n.TgZ(2,"div",8),n.TgZ(3,"button",10),n.NdJ("click",function(){return n.CHM(c),n.oxw().addOtherSugar()}),n._uU(4," Add sugar "),n._UZ(5,"mat-icon",11),n.qZA(),n.qZA(),n.qZA()}}var B=function(){var r=function(u){(0,U.Z)(a,u);var c=(0,D.Z)(a);function a(o,e,l){var s;return(0,f.Z)(this,a),(s=c.call(this,l)).substanceFormService=o,s.scrollToService=e,s.gaService=l,s.remainingSites=[],s.invalidSites=0,s.subscriptions=[],s.analyticsEventCategory="substance form sugars",s}return(0,v.Z)(a,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Sugars")}},{key:"ngAfterViewInit",value:function(){var e=this,l=this.substanceFormService.substanceSugars.subscribe(function(i){e.sugars=i,e.getRemainingSites()});this.subscriptions.push(l);var s=this.substanceFormService.substanceSubunits.subscribe(function(i){e.subunits=i,e.getRemainingSites()});this.subscriptions.push(s)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"getRemainingSites",value:function(){var e=[],l=[];this.subunits&&this.sugars&&(this.subunits.forEach(function(s){if(null!=s.sequence&&s.sequence.length>0)for(var i=1;i<=s.sequence.length;i++)l.push({subunitIndex:s.subunitIndex,residueIndex:i})}),this.sugars.forEach(function(s){e=e.concat(s.sites)})),this.remainingSites=l.filter(function(s){return!e.some(function(i){return s.subunitIndex===i.subunitIndex&&s.residueIndex===i.residueIndex})}),this.invalidSites=l.length-e.length}},{key:"addItem",value:function(){this.addOtherSugar()}},{key:"addOtherSugar",value:function(){var e=this;this.substanceFormService.addSubstanceSugar(),setTimeout(function(){e.scrollToService.scrollToElement("substance-sugars-0","center")})}},{key:"deleteSugar",value:function(e){this.substanceFormService.deleteSubstanceSugar(e)}},{key:"findElements",value:function(e,l,s){var y,i=[],d=(0,M.Z)(e);try{for(d.s();!(y=d.n()).done;){var F=y.value;F[l]===s&&i.push(F)}}catch(X){d.e(X)}finally{d.f()}return i}}]),a}(Q.u);return r.\u0275fac=function(c){return new(c||r)(n.Y36(N.B),n.Y36(R.i),n.Y36(Y.$))},r.\u0275cmp=n.Xpm({type:r,selectors:[["app-substance-form-sugars"]],features:[n.qOj],decls:5,vars:4,consts:[[1,"responsive"],[1,"form-row",3,"ngClass"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["class","form-row",4,"ngIf"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"sugar","remaining","sugarDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[1,"form-row"],[1,"middle-fill"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(c,a){1&c&&(n.TgZ(0,"div",0),n.TgZ(1,"div",1),n._uU(2),n.qZA(),n.YNc(3,j,3,4,"div",2),n.qZA(),n.YNc(4,z,6,0,"div",3)),2&c&&(n.xp6(1),n.Q6J("ngClass",0===a.invalidSites?"":"too-many"),n.xp6(1),n.hij("Remaining Sugars: ",0===a.invalidSites?a.remainingSites.length:a.invalidSites,""),n.xp6(1),n.Q6J("ngForOf",a.sugars),n.xp6(1),n.Q6J("ngIf",a.sugars&&a.sugars.length>0))},directives:[g.mk,g.sg,H.P,P.I,g.O5,S.d,p.lW,h.Hw],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding:5px 10px;-ms-flex-align:end;align-items:flex-end;font-size:18px;margin-bottom:5px}.too-many[_ngcontent-%COMP%]{color:red}"]}),r}(),L=(t(64061),function(){var r=(0,v.Z)(function u(){(0,f.Z)(this,u)});return r.\u0275fac=function(c){return new(c||r)},r.\u0275mod=n.oAB({type:r}),r.\u0275inj=n.cJS({imports:[[g.ez,Z.o0.forChild(B),C.O,S.t,h.Ps,p.ot,x.w,T.lN,b.UX,b.u5,I.TU,A.AV,E.vV,O.c,J.LD]]}),r}())}}]); -//# sourceMappingURL=7441.c0539023d694db57.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[7441],{57441:function($,m,t){t.r(m),t.d(m,{SubstanceFormSugarsModule:function(){return L}});var v=t(1884),f=t(39117),g=t(36362),Z=t(75143),C=t(7168),S=t(19975),h=t(65590),p=t(87317),x=t(94673),T=t(44770),b=t(90587),I=t(26439),O=t(43365),A=t(40089),E=t(31959),J=t(91434),M=t(44014),U=t(46751),D=t(56101),Q=t(79550),N=(t(27299),t(33567)),Y=t(40104),n=t(86613),R=t(78444),H=t(51279),P=t(1427);function V(r,u){1&r&&n._UZ(0,"mat-divider",7),2&r&&n.Q6J("inset",!0)}function j(r,u){if(1&r){var c=n.EpF();n.TgZ(0,"div",4),n.TgZ(1,"app-sugar-form",5),n.NdJ("sugarDeleted",function(i){return n.CHM(c),n.oxw().deleteSugar(i)}),n.qZA(),n.YNc(2,V,1,1,"mat-divider",6),n.qZA()}if(2&r){var a=u.$implicit,o=u.last,e=u.index,l=n.oxw();n.Q6J("id","substance-sugars-"+e),n.xp6(1),n.Q6J("sugar",a)("remaining",l.remainingSites),n.xp6(1),n.Q6J("ngIf",!o)}}function z(r,u){if(1&r){var c=n.EpF();n.TgZ(0,"div",8),n._UZ(1,"span",9),n.TgZ(2,"div",8),n.TgZ(3,"button",10),n.NdJ("click",function(){return n.CHM(c),n.oxw().addOtherSugar()}),n._uU(4," Add sugar "),n._UZ(5,"mat-icon",11),n.qZA(),n.qZA(),n.qZA()}}var B=function(){var r=function(u){(0,U.Z)(a,u);var c=(0,D.Z)(a);function a(o,e,l){var s;return(0,f.Z)(this,a),(s=c.call(this,l)).substanceFormService=o,s.scrollToService=e,s.gaService=l,s.remainingSites=[],s.invalidSites=0,s.subscriptions=[],s.analyticsEventCategory="substance form sugars",s}return(0,v.Z)(a,[{key:"ngOnInit",value:function(){this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Sugars")}},{key:"ngAfterViewInit",value:function(){var e=this,l=this.substanceFormService.substanceSugars.subscribe(function(i){e.sugars=i,e.getRemainingSites()});this.subscriptions.push(l);var s=this.substanceFormService.substanceSubunits.subscribe(function(i){e.subunits=i,e.getRemainingSites()});this.subscriptions.push(s)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"getRemainingSites",value:function(){var e=[],l=[];this.subunits&&this.sugars&&(this.subunits.forEach(function(s){if(null!=s.sequence&&s.sequence.length>0)for(var i=1;i<=s.sequence.length;i++)l.push({subunitIndex:s.subunitIndex,residueIndex:i})}),this.sugars.forEach(function(s){e=e.concat(s.sites)})),this.remainingSites=l.filter(function(s){return!e.some(function(i){return s.subunitIndex===i.subunitIndex&&s.residueIndex===i.residueIndex})}),this.invalidSites=l.length-e.length}},{key:"addItem",value:function(){this.addOtherSugar()}},{key:"addOtherSugar",value:function(){var e=this;this.substanceFormService.addSubstanceSugar(),setTimeout(function(){e.scrollToService.scrollToElement("substance-sugars-0","center")})}},{key:"deleteSugar",value:function(e){this.substanceFormService.deleteSubstanceSugar(e)}},{key:"findElements",value:function(e,l,s){var y,i=[],d=(0,M.Z)(e);try{for(d.s();!(y=d.n()).done;){var F=y.value;F[l]===s&&i.push(F)}}catch(X){d.e(X)}finally{d.f()}return i}}]),a}(Q.u);return r.\u0275fac=function(c){return new(c||r)(n.Y36(N.B),n.Y36(R.i),n.Y36(Y.$))},r.\u0275cmp=n.Xpm({type:r,selectors:[["app-substance-form-sugars"]],features:[n.qOj],decls:5,vars:4,consts:[[1,"responsive"],[1,"form-row",3,"ngClass"],["class","alternate-backgrounds","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["class","form-row",4,"ngIf"],["appScrollToTarget","",1,"alternate-backgrounds",3,"id"],[3,"sugar","remaining","sugarDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[1,"form-row"],[1,"middle-fill"],["mat-button","",3,"click"],["svgIcon","add_circle_outline"]],template:function(c,a){1&c&&(n.TgZ(0,"div",0),n.TgZ(1,"div",1),n._uU(2),n.qZA(),n.YNc(3,j,3,4,"div",2),n.qZA(),n.YNc(4,z,6,0,"div",3)),2&c&&(n.xp6(1),n.Q6J("ngClass",0===a.invalidSites?"":"too-many"),n.xp6(1),n.hij("Remaining Sugars: ",0===a.invalidSites?a.remainingSites.length:a.invalidSites,""),n.xp6(1),n.Q6J("ngForOf",a.sugars),n.xp6(1),n.Q6J("ngIf",a.sugars&&a.sugars.length>0))},directives:[g.mk,g.sg,H.P,P.I,g.O5,S.d,p.lW,h.Hw],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding:5px 10px;-ms-flex-align:end;align-items:flex-end;font-size:18px;margin-bottom:5px}.too-many[_ngcontent-%COMP%]{color:var(--regular-red-color)}"]}),r}(),L=(t(64061),function(){var r=(0,v.Z)(function u(){(0,f.Z)(this,u)});return r.\u0275fac=function(c){return new(c||r)},r.\u0275mod=n.oAB({type:r}),r.\u0275inj=n.cJS({imports:[[g.ez,Z.o0.forChild(B),C.O,S.t,h.Ps,p.ot,x.w,T.lN,b.UX,b.u5,I.TU,A.AV,E.vV,O.c,J.LD]]}),r}())}}]); +//# sourceMappingURL=7441.ebe724642a3823f7.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/7441.c0539023d694db57.js.map b/frontend/src/main/resources/static/7441.ebe724642a3823f7.js.map similarity index 98% rename from frontend/src/main/resources/static/7441.c0539023d694db57.js.map rename to frontend/src/main/resources/static/7441.ebe724642a3823f7.js.map index ccf7486..eff8fc2 100644 --- a/frontend/src/main/resources/static/7441.c0539023d694db57.js.map +++ b/frontend/src/main/resources/static/7441.ebe724642a3823f7.js.map @@ -1 +1 @@ -{"version":3,"mappings":"+eASIA,8BAAkCA,wDAFpCA,iBACEA,4BAA+DA,yDAAgBC,iBAAqBD,QACpGA,+BACFA,+DAHuHA,kCACrGA,0BAAe,8BACmBA,iEAGtDA,iBACIA,kBACGA,iBACCA,qBAAmBA,iDAASE,kBAC1BF,uBAAUA,uBACZA,QACFA,QACNA,SCNO,IAAMG,EAAb,eAAaA,EAAb,0CAQE,WACUC,EACAC,EACDC,GAAiC,6BAGxCC,cAAMD,IALEF,uBACAG,oBACDA,cANTA,iBAA8B,GAC9BA,eAAe,EACPA,gBAAqC,GAQ3CA,EAAKC,uBAAyB,wBAJUD,EAX5C,uCAkBE,WACEE,KAAKC,iBAAiBC,MAAK,GAC3BF,KAAKG,gBAAgBD,KAAK,YApB9B,6BAuBE,WAAe,WACPE,EAAqBJ,KAAKL,qBAAqBU,gBAAgBC,UAAU,YAC7EC,EAAKC,OAASA,EACdD,EAAKE,sBAEPT,KAAKU,cAAcC,KAAKP,GACxB,IAAMQ,EAAuBZ,KAAKL,qBAAqBkB,kBAAkBP,UAAU,YACjFC,EAAKO,SAAWA,EAChBP,EAAKE,sBAEPT,KAAKU,cAAcC,KAAKC,KAjC5B,yBAqCE,WACEZ,KAAKe,mBAAmBb,OACxBF,KAAKU,cAAcM,QAAQ,YACzBC,EAAaC,kBAxCnB,+BA4CE,WACE,IAAIC,EAAa,GACXC,EAAe,GACjBpB,KAAKc,UAAYd,KAAKQ,SACxBR,KAAKc,SAASE,QAAQ,YACpB,GAAqB,MAAjBK,EAAKC,UAAoBD,EAAKC,SAASC,OAAS,EAClD,QAASC,EAAI,EAAGA,GAAKH,EAAKC,SAASC,OAAQC,IACzCJ,EAAaT,KAAK,CAACc,aAAcJ,EAAKI,aAAcC,aAAcF,MAIxExB,KAAKQ,OAAOQ,QAAQ,YAClBG,EAAaA,EAAWQ,OAAOC,EAAMC,UAGzC7B,KAAK8B,eAAiBV,EAAaW,OAAO,YAAS,OAAQZ,EAAWa,KAAK,SAASC,GAChF,OAAQC,EAAKT,eAAiBQ,EAAKR,cAAgBS,EAAKR,eAAiBO,EAAKP,iBAGlF1B,KAAKmC,aAAef,EAAaG,OAASJ,EAAWI,SA/DzD,qBAkEE,WACEvB,KAAKoC,kBAnET,2BAsEE,WAAa,WACXpC,KAAKL,qBAAqB0C,oBAC1BC,WAAW,WACT/B,EAAKX,gBAAgB2C,gBAArB,qBAA2D,cAzEjE,yBA6EE,SAAYX,GACV5B,KAAKL,qBAAqB6C,qBAAqBZ,KA9EnD,0BAkFU,SAAmBa,EAAYC,EAAkBC,GACvD,IAD+DC,EACzDC,EAAqB,GADoCC,UAEzCL,GAFyC,IAE/D,2BAA6B,KAAlBM,EAAkBH,QACvBG,EAAQL,KAAcC,GACxBE,EAAclC,KAAKoC,UAJwCC,wBAO/D,OAAOH,MAzFXI,GAAkDC,kDAArCxD,GAA4BH,2DAA5BG,EAA4ByD,shBDbzC5D,iBAMEA,iBAAuEA,SAA6EA,QACpJA,uBAIFA,QACAA,8BAN0BA,2DAA+CA,kGACdA,mCAKlCA,gWCCZG,EAAb,GC4Ba0D,YAAb,eAAaA,KAAbC,iFAAaD,4DAvBF,CACPE,KACAC,cAAsC7D,GACtC8D,IACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,SAQShB,EAAb","names":["i0","ctx_r6","ctx_r8","SubstanceFormSugarsComponent","substanceFormService","scrollToService","gaService","s","analyticsEventCategory","this","canAddItemUpdate","emit","menuLabelUpdate","sugarsSubscription","substanceSugars","subscribe","e","sugars","getRemainingSites","subscriptions","push","subunitsSubscription","substanceSubunits","subunits","componentDestroyed","forEach","subscription","unsubscribe","sugarArray","subunitArray","unit","sequence","length","i","subunitIndex","residueIndex","concat","sugar","sites","remainingSites","filter","some","obj2","item","invalidSites","addOtherSugar","addSubstanceSugar","setTimeout","scrollToElement","deleteSubstanceSugar","array","property","value","y","foundElements","d","element","X","a","SubstanceCardBaseFilteredList","selectors","SubstanceFormSugarsModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/substance-form-sugars/substance-form-sugars.component.html","./src/app/core/substance-form/substance-form-sugars/substance-form-sugars.component.ts","./src/app/core/substance-form/substance-form-sugars/substance-form-sugars.module.ts"],"sourcesContent":["
\n \n
Remaining Sugars: {{invalidSites === 0?remainingSites.length : invalidSites}}
\n
\n \n \n
\n
\n
0\">\n \n
\n \n
\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Link, Linkage, Site, Subunit, Sugar} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-substance-form-sugars',\n templateUrl: './substance-form-sugars.component.html',\n styleUrls: ['./substance-form-sugars.component.scss']\n})\nexport class SubstanceFormSugarsComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n sugars: Array;\n subunits: Array;\n remainingSites: Array = [];\n invalidSites = 0 ;\n private subscriptions: Array = [];\n constructor(\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form sugars';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Sugars');\n }\n\n ngAfterViewInit() {\n const sugarsSubscription = this.substanceFormService.substanceSugars.subscribe(sugars => {\n this.sugars = sugars;\n this.getRemainingSites();\n });\n this.subscriptions.push(sugarsSubscription);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.getRemainingSites();\n });\n this.subscriptions.push(subunitsSubscription);\n\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getRemainingSites(): void {\n let sugarArray = [];\n const subunitArray = [];\n if (this.subunits && this.sugars) {\n this.subunits.forEach(unit => {\n if (unit.sequence != null && unit.sequence.length > 0) {\n for (let i = 1; i <= unit.sequence.length; i++) {\n subunitArray.push({subunitIndex: unit.subunitIndex, residueIndex: i});\n }\n }\n });\n this.sugars.forEach(sugar => {\n sugarArray = sugarArray.concat(sugar.sites);\n });\n }\n this.remainingSites = subunitArray.filter(item => {return !sugarArray.some(function(obj2) {\n return (item.subunitIndex === obj2.subunitIndex && item.residueIndex === obj2.residueIndex);\n });\n });\n this.invalidSites = subunitArray.length - sugarArray.length;\n }\n\n addItem(): void {\n this.addOtherSugar();\n }\n\n addOtherSugar(): void {\n this.substanceFormService.addSubstanceSugar();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-sugars-0`, 'center');\n });\n }\n\n deleteSugar(sugar: Sugar): void {\n this.substanceFormService.deleteSubstanceSugar(sugar);\n }\n\n\n private findElements(array: T[], property: string, value: V): T[] {\n const foundElements: T[] = [];\n for (const element of array) {\n if (element[property] === value) {\n foundElements.push(element);\n }\n }\n return foundElements;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormSugarsComponent} from '@gsrs-core/substance-form/substance-form-sugars/substance-form-sugars.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormSugarsComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormSugarsComponent\n ]\n})\nexport class SubstanceFormSugarsModule { }\n"],"sourceRoot":"webpack:///","file":"7441.c0539023d694db57.js"} \ No newline at end of file +{"version":3,"mappings":"+eASIA,8BAAkCA,wDAFpCA,iBACEA,4BAA+DA,yDAAgBC,iBAAqBD,QACpGA,+BACFA,+DAHuHA,kCACrGA,0BAAe,8BACmBA,iEAGtDA,iBACIA,kBACGA,iBACCA,qBAAmBA,iDAASE,kBAC1BF,uBAAUA,uBACZA,QACFA,QACNA,SCNO,IAAMG,EAAb,eAAaA,EAAb,0CAQE,WACUC,EACAC,EACDC,GAAiC,6BAGxCC,cAAMD,IALEF,uBACAG,oBACDA,cANTA,iBAA8B,GAC9BA,eAAe,EACPA,gBAAqC,GAQ3CA,EAAKC,uBAAyB,wBAJUD,EAX5C,uCAkBE,WACEE,KAAKC,iBAAiBC,MAAK,GAC3BF,KAAKG,gBAAgBD,KAAK,YApB9B,6BAuBE,WAAe,WACPE,EAAqBJ,KAAKL,qBAAqBU,gBAAgBC,UAAU,YAC7EC,EAAKC,OAASA,EACdD,EAAKE,sBAEPT,KAAKU,cAAcC,KAAKP,GACxB,IAAMQ,EAAuBZ,KAAKL,qBAAqBkB,kBAAkBP,UAAU,YACjFC,EAAKO,SAAWA,EAChBP,EAAKE,sBAEPT,KAAKU,cAAcC,KAAKC,KAjC5B,yBAqCE,WACEZ,KAAKe,mBAAmBb,OACxBF,KAAKU,cAAcM,QAAQ,YACzBC,EAAaC,kBAxCnB,+BA4CE,WACE,IAAIC,EAAa,GACXC,EAAe,GACjBpB,KAAKc,UAAYd,KAAKQ,SACxBR,KAAKc,SAASE,QAAQ,YACpB,GAAqB,MAAjBK,EAAKC,UAAoBD,EAAKC,SAASC,OAAS,EAClD,QAASC,EAAI,EAAGA,GAAKH,EAAKC,SAASC,OAAQC,IACzCJ,EAAaT,KAAK,CAACc,aAAcJ,EAAKI,aAAcC,aAAcF,MAIxExB,KAAKQ,OAAOQ,QAAQ,YAClBG,EAAaA,EAAWQ,OAAOC,EAAMC,UAGzC7B,KAAK8B,eAAiBV,EAAaW,OAAO,YAAS,OAAQZ,EAAWa,KAAK,SAASC,GAChF,OAAQC,EAAKT,eAAiBQ,EAAKR,cAAgBS,EAAKR,eAAiBO,EAAKP,iBAGlF1B,KAAKmC,aAAef,EAAaG,OAASJ,EAAWI,SA/DzD,qBAkEE,WACEvB,KAAKoC,kBAnET,2BAsEE,WAAa,WACXpC,KAAKL,qBAAqB0C,oBAC1BC,WAAW,WACT/B,EAAKX,gBAAgB2C,gBAArB,qBAA2D,cAzEjE,yBA6EE,SAAYX,GACV5B,KAAKL,qBAAqB6C,qBAAqBZ,KA9EnD,0BAkFU,SAAmBa,EAAYC,EAAkBC,GACvD,IAD+DC,EACzDC,EAAqB,GADoCC,UAEzCL,GAFyC,IAE/D,2BAA6B,KAAlBM,EAAkBH,QACvBG,EAAQL,KAAcC,GACxBE,EAAclC,KAAKoC,UAJwCC,wBAO/D,OAAOH,MAzFXI,GAAkDC,kDAArCxD,GAA4BH,2DAA5BG,EAA4ByD,shBDbzC5D,iBAMEA,iBAAuEA,SAA6EA,QACpJA,uBAIFA,QACAA,8BAN0BA,2DAA+CA,kGACdA,mCAKlCA,qXCCZG,EAAb,GC4Ba0D,YAAb,eAAaA,KAAbC,iFAAaD,4DAvBF,CACPE,KACAC,cAAsC7D,GACtC8D,IACAC,IACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IACAC,SAQShB,EAAb","names":["i0","ctx_r6","ctx_r8","SubstanceFormSugarsComponent","substanceFormService","scrollToService","gaService","s","analyticsEventCategory","this","canAddItemUpdate","emit","menuLabelUpdate","sugarsSubscription","substanceSugars","subscribe","e","sugars","getRemainingSites","subscriptions","push","subunitsSubscription","substanceSubunits","subunits","componentDestroyed","forEach","subscription","unsubscribe","sugarArray","subunitArray","unit","sequence","length","i","subunitIndex","residueIndex","concat","sugar","sites","remainingSites","filter","some","obj2","item","invalidSites","addOtherSugar","addSubstanceSugar","setTimeout","scrollToElement","deleteSubstanceSugar","array","property","value","y","foundElements","d","element","X","a","SubstanceCardBaseFilteredList","selectors","SubstanceFormSugarsModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatTooltipModule","MatButtonToggleModule","MatInputModule","MatSelectModule"],"sources":["./src/app/core/substance-form/substance-form-sugars/substance-form-sugars.component.html","./src/app/core/substance-form/substance-form-sugars/substance-form-sugars.component.ts","./src/app/core/substance-form/substance-form-sugars/substance-form-sugars.module.ts"],"sourcesContent":["
\n \n
Remaining Sugars: {{invalidSites === 0?remainingSites.length : invalidSites}}
\n
\n \n \n
\n
\n
0\">\n \n
\n \n
\n
\n","import {AfterViewInit, Component, OnDestroy, OnInit} from '@angular/core';\nimport {SubstanceCardBaseFilteredList, SubstanceCardBaseList} from '@gsrs-core/substance-form/base-classes/substance-form-base-filtered-list';\nimport {Link, Linkage, Site, Subunit, Sugar} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {ScrollToService} from '@gsrs-core/scroll-to/scroll-to.service';\nimport {GoogleAnalyticsService} from '@gsrs-core/google-analytics';\n\n@Component({\n selector: 'app-substance-form-sugars',\n templateUrl: './substance-form-sugars.component.html',\n styleUrls: ['./substance-form-sugars.component.scss']\n})\nexport class SubstanceFormSugarsComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n sugars: Array;\n subunits: Array;\n remainingSites: Array = [];\n invalidSites = 0 ;\n private subscriptions: Array = [];\n constructor(\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form sugars';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Sugars');\n }\n\n ngAfterViewInit() {\n const sugarsSubscription = this.substanceFormService.substanceSugars.subscribe(sugars => {\n this.sugars = sugars;\n this.getRemainingSites();\n });\n this.subscriptions.push(sugarsSubscription);\n const subunitsSubscription = this.substanceFormService.substanceSubunits.subscribe(subunits => {\n this.subunits = subunits;\n this.getRemainingSites();\n });\n this.subscriptions.push(subunitsSubscription);\n\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getRemainingSites(): void {\n let sugarArray = [];\n const subunitArray = [];\n if (this.subunits && this.sugars) {\n this.subunits.forEach(unit => {\n if (unit.sequence != null && unit.sequence.length > 0) {\n for (let i = 1; i <= unit.sequence.length; i++) {\n subunitArray.push({subunitIndex: unit.subunitIndex, residueIndex: i});\n }\n }\n });\n this.sugars.forEach(sugar => {\n sugarArray = sugarArray.concat(sugar.sites);\n });\n }\n this.remainingSites = subunitArray.filter(item => {return !sugarArray.some(function(obj2) {\n return (item.subunitIndex === obj2.subunitIndex && item.residueIndex === obj2.residueIndex);\n });\n });\n this.invalidSites = subunitArray.length - sugarArray.length;\n }\n\n addItem(): void {\n this.addOtherSugar();\n }\n\n addOtherSugar(): void {\n this.substanceFormService.addSubstanceSugar();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-sugars-0`, 'center');\n });\n }\n\n deleteSugar(sugar: Sugar): void {\n this.substanceFormService.deleteSubstanceSugar(sugar);\n }\n\n\n private findElements(array: T[], property: string, value: V): T[] {\n const foundElements: T[] = [];\n for (const element of array) {\n if (element[property] === value) {\n foundElements.push(element);\n }\n }\n return foundElements;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {DynamicComponentLoaderModule} from '@gsrs-core/dynamic-component-loader';\nimport {SubstanceFormModule} from '@gsrs-core/substance-form/substance-form.module';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ScrollToModule} from '@gsrs-core/scroll-to';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {MatSelectModule} from '@angular/material/select';\nimport {SubstanceFormSugarsComponent} from '@gsrs-core/substance-form/substance-form-sugars/substance-form-sugars.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormSugarsComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatTooltipModule,\n MatButtonToggleModule,\n MatInputModule,\n MatSelectModule\n ],\n exports: [\n ],\n declarations: [\n SubstanceFormSugarsComponent\n ]\n})\nexport class SubstanceFormSugarsModule { }\n"],"sourceRoot":"webpack:///","file":"7441.ebe724642a3823f7.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/8302.2fb7a95454afe2eb.js b/frontend/src/main/resources/static/8302.2fb7a95454afe2eb.js deleted file mode 100644 index 54b66ba..0000000 --- a/frontend/src/main/resources/static/8302.2fb7a95454afe2eb.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8302],{48302:function(E,N,r){r.d(N,{V:function(){return Oe}});var x=r(78069),D=r(48047),v=r(33567),Z=r(42827),y=r(91770),o=r(95758),e=r(76442),O=r(61534),U=r(40089),f=r(97217),R=r(36362),T=r(87317);function Y(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Apply "),e.qZA())}function p(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"mat-checkbox",3),e.NdJ("change",function(u){var b=e.CHM(t).$implicit;return e.oxw().toggleReference(u,b)}),e.qZA(),e.qZA()}if(2&n){var i=a.$implicit,c=e.oxw();e.xp6(1),e.Q6J("checked",c.domainReferenceUuids.indexOf(i.uuid)>-1)}}function d(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Type "),e.qZA())}function m(n,a){if(1&n&&(e.TgZ(0,"td",18),e._uU(1),e.qZA()),2&n){var t=a.$implicit,i=e.oxw();e.xp6(1),e.hij(" ",i.documentTypes[t.docType]&&i.documentTypes[t.docType].value," ")}}function l(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Citation "),e.qZA())}function g(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Oqu(t.citation)}}function h(n,a){if(1&n&&(e.TgZ(0,"a",21),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.Q6J("href",t.url,e.LSH),e.xp6(1),e.Oqu(t.citation)}}function C(n,a){if(1&n&&(e.TgZ(0,"td",18),e.YNc(1,g,2,1,"span",19),e.YNc(2,h,2,2,"a",20),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.url),e.xp6(1),e.Q6J("ngIf",t.url)}}function k(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Public Domain "),e.qZA())}function I(n,a){if(1&n&&(e.TgZ(0,"td",18),e._uU(1),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.hij(" ",t.publicDomain?"Yes":"No"," ")}}function w(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Access "),e.qZA())}function M(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1," Public "),e.qZA())}function J(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1,", "),e.qZA())}function P(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,J,2,0,"span",19),e.qZA()),2&n){var t=a.$implicit,i=a.last;e.xp6(1),e.hij(" ",t," "),e.xp6(1),e.Q6J("ngIf",!i)}}function Q(n,a){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,P,3,2,"span",22),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",t.access)}}function q(n,a){if(1&n&&(e.TgZ(0,"td",18),e.YNc(1,M,2,0,"span",19),e.YNc(2,Q,2,1,"span",19),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.access||0===t.access.length),e.xp6(1),e.Q6J("ngIf",t.access&&t.access.length>0)}}function F(n,a){1&n&&e._UZ(0,"tr",23)}function S(n,a){1&n&&e._UZ(0,"tr",24)}var B=function(){var n=function(){function a(t,i,c){(0,x.Z)(this,a),this.dialogRef=t,this.data=i,this.cvService=c,this.domainReferenceUuids=[],this.documentTypes={},this.displayedColumns=["apply","type","citation","publicDomain","access"],this.filter=!1,this.domainReferenceUuids=i.domainRefereceUuids.slice(),this.substanceReferences=i.substanceReferences}return(0,D.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.unfiltered=JSON.parse(JSON.stringify(this.substanceReferences)),this.getVocabularies(),this.dialogRef.beforeClosed().subscribe(function(){return i.dialogRef.close(i.domainReferenceUuids&&i.domainReferenceUuids.length>0?i.domainReferenceUuids:null)}),this.filterRefs()}},{key:"filterRefs",value:function(){this.filter=!this.filter,this.substanceReferences=this.filter?this.substanceReferences.filter(function(i){return"SYSTEM"!==i.docType&&"VALIDATION_MESSAGE"!==i.docType}):JSON.parse(JSON.stringify(this.unfiltered))}},{key:"getVocabularies",value:function(){var i=this;this.cvService.getDomainVocabulary("DOCUMENT_TYPE").subscribe(function(c){i.documentTypes=c.DOCUMENT_TYPE.dictionary})}},{key:"toggleReference",value:function(i,c){var s=this.domainReferenceUuids.indexOf(c.uuid);i.checked&&-1===s?this.domainReferenceUuids.push(c.uuid):!i.checked&&s>-1&&this.domainReferenceUuids.splice(s,1)}},{key:"save",value:function(){this.dialogRef.close(this.domainReferenceUuids)}},{key:"cancel",value:function(){this.dialogRef.close()}}]),a}();return n.\u0275fac=function(t){return new(t||n)(e.Y36(o.so),e.Y36(o.WI),e.Y36(Z.I))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-reuse-references-dialog"]],decls:30,vars:4,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"form-row"],["matTooltip","Apply",3,"checked","change"],["mat-table","",3,"dataSource"],["matColumnDef","apply"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","type"],["matColumnDef","citation"],["matColumnDef","publicDomain"],["matColumnDef","access"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["matDialogActions",""],[1,"middle-fill"],["mat-button","",3,"click"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row",""]],template:function(t,i){1&t&&(e.TgZ(0,"h1",0),e._uU(1,"Reuse Substance References"),e.qZA(),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e.TgZ(4,"mat-checkbox",3),e.NdJ("change",function(){return i.filterRefs()}),e._uU(5,"Filter Out System / Validation references "),e.qZA(),e.qZA(),e.TgZ(6,"table",4),e.ynx(7,5),e.YNc(8,Y,2,0,"th",6),e.YNc(9,p,2,1,"td",7),e.BQk(),e.ynx(10,8),e.YNc(11,d,2,0,"th",6),e.YNc(12,m,2,1,"td",7),e.BQk(),e.ynx(13,9),e.YNc(14,l,2,0,"th",6),e.YNc(15,C,3,2,"td",7),e.BQk(),e.ynx(16,10),e.YNc(17,k,2,0,"th",6),e.YNc(18,I,2,1,"td",7),e.BQk(),e.ynx(19,11),e.YNc(20,w,2,0,"th",6),e.YNc(21,q,3,2,"td",7),e.BQk(),e.YNc(22,F,1,0,"tr",12),e.YNc(23,S,1,0,"tr",13),e.qZA(),e.qZA(),e.TgZ(24,"div",14),e._UZ(25,"span",15),e.TgZ(26,"button",16),e.NdJ("click",function(){return i.cancel()}),e._uU(27,"Cancel"),e.qZA(),e.TgZ(28,"button",16),e.NdJ("click",function(){return i.save()}),e._uU(29," Save "),e.qZA(),e.qZA()),2&t&&(e.xp6(4),e.Q6J("checked",i.filter),e.xp6(2),e.Q6J("dataSource",i.substanceReferences),e.xp6(16),e.Q6J("matHeaderRowDef",i.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",i.displayedColumns))},directives:[o.uh,o.xY,O.oG,U.gM,f.BZ,f.w1,f.fO,f.ge,f.Dz,f.ev,R.O5,R.sg,f.as,f.XQ,f.nj,f.Gk,o.H8,T.lW],styles:["tr.mat-row[_ngcontent-%COMP%]:last-child td[_ngcontent-%COMP%]{border-bottom-width:0}"]}),n}(),$=r(52149),H=r(24936),j=r(66088),A=r(16531),W=r(70178),V=r(65590),L=r(98827);function z(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"button",11),e.NdJ("click",function(c){return e.CHM(t),e.oxw().reuseExistingReference(),c.stopPropagation()}),e._uU(1," Reuse "),e._UZ(2,"mat-icon",12),e.qZA()}}function K(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Type "),e.qZA())}function G(n,a){if(1&n&&(e.TgZ(0,"td",28),e._uU(1),e.qZA()),2&n){var t=a.$implicit,i=e.oxw(2);e.xp6(1),e.hij(" ",i.documentTypesDictionary[t.docType]&&i.documentTypesDictionary[t.docType].value," ")}}function X(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Citation "),e.qZA())}function ee(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Oqu(t.citation)}}function ne(n,a){if(1&n&&(e.TgZ(0,"a",31),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.Q6J("href",t.url,e.LSH),e.xp6(1),e.Oqu(t.citation)}}function te(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,ee,2,1,"span",29),e.YNc(2,ne,2,2,"a",30),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.url),e.xp6(1),e.Q6J("ngIf",t.url)}}function ie(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Public Domain "),e.qZA())}function ae(n,a){if(1&n&&(e.TgZ(0,"td",28),e._uU(1),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.hij(" ",t.publicDomain?"Yes":"No"," ")}}function oe(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Access "),e.qZA())}function ce(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1," Public "),e.qZA())}function se(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1,", "),e.qZA())}function re(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,se,2,0,"span",29),e.qZA()),2&n){var t=a.$implicit,i=a.last;e.xp6(1),e.hij(" ",t," "),e.xp6(1),e.Q6J("ngIf",!i)}}function le(n,a){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,re,3,2,"span",32),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",t.access)}}function fe(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,ce,2,0,"span",29),e.YNc(2,le,2,1,"span",29),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.access||0===t.access.length),e.xp6(1),e.Q6J("ngIf",t.access&&t.access.length>0)}}function ue(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Edit "),e.qZA())}function me(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"td",28),e.TgZ(1,"button",33),e.NdJ("click",function(){var s=e.CHM(t).$implicit;return e.oxw(2).openExistingReferenceForm(s)}),e._UZ(2,"mat-icon",34),e.qZA(),e.qZA()}}function _e(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Deselect "),e.qZA())}function pe(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"td",28),e.TgZ(1,"button",35),e.NdJ("click",function(){var s=e.CHM(t).$implicit;return e.oxw(2).removeDomainReference(s.uuid)}),e._UZ(2,"mat-icon",36),e.qZA(),e.qZA()}}function de(n,a){1&n&&e._UZ(0,"th",27)}function ge(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"a",37),e.NdJ("click",function(){e.CHM(t);var c=e.oxw().$implicit;return e.oxw(2).downloadDocument(c.uploadedFile)}),e._UZ(2,"mat-icon",38),e.qZA(),e.qZA()}}function he(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,ge,3,0,"div",29),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",t.uploadedFile)}}function ve(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Tags "),e.qZA())}function Re(n,a){if(1&n&&(e.TgZ(0,"span",41),e._uU(1),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.hij(" ",t," ")}}function Te(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"a",42),e.NdJ("click",function(){e.CHM(t);var c=e.oxw(4);return c.showmore=!c.showmore}),e._uU(1,"hide"),e.qZA()}}function Ce(n,a){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,Re,2,1,"span",39),e.YNc(2,Te,2,0,"a",40),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",t.tags),e.xp6(1),e.Q6J("ngIf",t.tags.length>1)}}function be(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"a",42),e.NdJ("click",function(){e.CHM(t);var c=e.oxw(4);return c.showmore=!c.showmore}),e._uU(1,"more..."),e.qZA()}}function xe(n,a){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"span",41),e._uU(2),e.qZA(),e.YNc(3,be,2,0,"a",40),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(2),e.hij(" ",t.tags.length>0?t.tags[0]:null,""),e.xp6(1),e.Q6J("ngIf",t.tags.length>1)}}function De(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,Ce,3,2,"span",29),e.YNc(2,xe,4,2,"span",29),e.qZA()),2&n){var t=a.$implicit,i=e.oxw(2);e.xp6(1),e.Q6J("ngIf",i.showmore&&t.tags&&t.tags.length>0),e.xp6(1),e.Q6J("ngIf",!i.showmore&&t.tags&&t.tags.length>0)}}function Ze(n,a){1&n&&e._UZ(0,"th",27)}function ye(n,a){if(1&n&&(e.TgZ(0,"td",28),e._UZ(1,"app-apply-reference",43),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("subReferenceUuid",t.uuid)}}function Ue(n,a){1&n&&e._UZ(0,"tr",44)}function Ae(n,a){1&n&&e._UZ(0,"tr",45)}function Ne(n,a){if(1&n&&(e.TgZ(0,"table",13),e.ynx(1,14),e.YNc(2,K,2,0,"th",15),e.YNc(3,G,2,1,"td",16),e.BQk(),e.ynx(4,17),e.YNc(5,X,2,0,"th",15),e.YNc(6,te,3,2,"td",16),e.BQk(),e.ynx(7,18),e.YNc(8,ie,2,0,"th",15),e.YNc(9,ae,2,1,"td",16),e.BQk(),e.ynx(10,19),e.YNc(11,oe,2,0,"th",15),e.YNc(12,fe,3,2,"td",16),e.BQk(),e.ynx(13,20),e.YNc(14,ue,2,0,"th",15),e.YNc(15,me,3,0,"td",16),e.BQk(),e.ynx(16,21),e.YNc(17,_e,2,0,"th",15),e.YNc(18,pe,3,0,"td",16),e.BQk(),e.ynx(19,22),e.YNc(20,de,1,0,"th",15),e.YNc(21,he,2,1,"td",16),e.BQk(),e.ynx(22,23),e.YNc(23,ve,2,0,"th",15),e.YNc(24,De,3,2,"td",16),e.BQk(),e.ynx(25,24),e.YNc(26,Ze,1,0,"th",15),e.YNc(27,ye,2,1,"td",16),e.BQk(),e.YNc(28,Ue,1,0,"tr",25),e.YNc(29,Ae,1,0,"tr",26),e.qZA()),2&n){var t=e.oxw();e.Q6J("dataSource",t.tableData),e.xp6(28),e.Q6J("matHeaderRowDef",t.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",t.displayedColumns)}}var Oe=function(){var n=function(){function a(t,i,c,s,u,_,b){(0,x.Z)(this,a),this.cvService=t,this.substanceFormReferencesService=i,this.dialog=c,this.element=s,this.utilsService=u,this.overlayContainerService=_,this.substanceFormService=b,this.canReuse=!1,this.references=[],this.documentTypesDictionary={},this.displayedColumns=["type","citation","publicDomain","access","goToReference","remove","attachment","tags","apply"],this.isExpanded=!1,this.showmore=!1,this.subscriptions=[]}return(0,D.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.getVocabularies();var c=this.substanceFormReferencesService.substanceReferences.subscribe(function(s){i.substanceReferences=s&&s.length?s.filter(function(u){return!u.$$deletedCode}):[],i.canReuse=i.substanceReferences&&i.substanceReferences.length>0,i.loadReferences()});this.subscriptions.push(c),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"referencesUuids",get:function(){return this.domainReferenceUuids},set:function(i){this.domainReferenceUuids=i||[],this.loadReferences()}},{key:"getVocabularies",value:function(){var i=this,c=this.cvService.getDomainVocabulary("DOCUMENT_TYPE").subscribe(function(s){i.documentTypesDictionary=s.DOCUMENT_TYPE.dictionary});this.subscriptions.push(c)}},{key:"loadReferences",value:function(){var i=this;this.domainReferenceUuids&&this.substanceReferences?(this.references=[],this.domainReferenceUuids.forEach(function(c){var s=i.substanceReferences.find(function(u){return u.uuid===c});null!=s&&i.references.push(s)}),this.tableData=new f.by(this.references)):this.references=[]}},{key:"addNewReference",value:function(){var i=this,s=this.dialog.open(y.n,{data:{tags:[],access:[]},width:"900px"});this.overlayContainer.style.zIndex="1002";var u=s.afterClosed().subscribe(function(_){i.overlayContainer.style.zIndex=null,null!=_&&(_=i.substanceFormReferencesService.addSubstanceReference(_),setTimeout(function(){i.addDomainReference(_.uuid)}),i.canReuse=!0)});this.subscriptions.push(u)}},{key:"openExistingReferenceForm",value:function(i){var c=this,s=this.dialog.open(y.n,{data:i,width:"900px"});this.overlayContainer.style.zIndex="1002";var u=s.afterClosed().subscribe(function(_){c.overlayContainer.style.zIndex=null});this.subscriptions.push(u)}},{key:"addDomainReference",value:function(i){-1===this.domainReferenceUuids.indexOf(i)&&this.domainReferenceUuids.push(i);var c=this.references.find(function(s){return s.uuid===i});null==c&&null!=(c=this.substanceReferences.find(function(s){return s.uuid===i}))&&(this.references.unshift(c),this.tableData.data=this.references)}},{key:"reuseExistingReference",value:function(){var i=this,s=this.dialog.open(B,{data:{domainRefereceUuids:this.domainReferenceUuids,substanceReferences:this.substanceReferences},width:"900px"});this.overlayContainer.style.zIndex="1002";var u=s.afterClosed().subscribe(function(_){i.overlayContainer.style.zIndex=null,null!=_&&i.updateDomainReferences(_)});this.subscriptions.push(u)}},{key:"updateDomainReferences",value:function(){var i=this,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.domainReferenceUuids.length=0,c.forEach(function(u){i.domainReferenceUuids.push(u)});var s=[];this.domainReferenceUuids.forEach(function(u){var _=i.substanceReferences.find(function(b){return b.uuid===u});null!=_&&s.push(_)}),this.references=s,this.tableData.data=this.references}},{key:"removeDomainReference",value:function(i){var c=this.domainReferenceUuids.indexOf(i);c>-1&&this.domainReferenceUuids.splice(c,1);var s=this.references.findIndex(function(u){return u.uuid===i});s>-1&&this.references.splice(s,1),this.tableData.data=this.references}},{key:"panelOpened",value:function(){this.isExpanded=!0;var i=new Event("focusin",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(i)}},{key:"panelClosed",value:function(){this.isExpanded=!1;var i=new Event("focusout",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(i)}},{key:"downloadDocument",value:function(i){this.substanceFormService.bypassUpdateCheck(),window.open(i)}}]),a}();return n.\u0275fac=function(t){return new(t||n)(e.Y36(Z.I),e.Y36(H.v),e.Y36(o.uw),e.Y36(e.SBq),e.Y36($.F),e.Y36(j.Xj),e.Y36(v.B))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-domain-references"]],inputs:{card:"card",referencesUuids:"referencesUuids"},decls:16,vars:4,consts:[[1,"domain-references-content"],[3,"closed","opened"],[1,"domain-reference-header"],["matTooltip","Expand references",1,"title","ref-title"],["matBadgeOverlap","false",1,"custom-badge",3,"matBadge"],[1,"middle-fill"],[1,"title-actions"],["mat-flat-button","","color","primary","matTooltip","Create new reference",3,"click"],["svgIcon","add_circle_outline"],["mat-flat-button","","color","primary","matTooltip","Reuse existing reference",3,"click",4,"ngIf"],["mat-table","",3,"dataSource",4,"ngIf"],["mat-flat-button","","color","primary","matTooltip","Reuse existing reference",3,"click"],["svgIcon","move_to_inbox"],["mat-table","",3,"dataSource"],["matColumnDef","type"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","citation"],["matColumnDef","publicDomain"],["matColumnDef","access"],["matColumnDef","goToReference"],["matColumnDef","remove"],["matColumnDef","attachment"],["matColumnDef","tags"],["matColumnDef","apply"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Open reference form",3,"click"],["svgIcon","edit"],["mat-icon-button","","matTooltip","Remove reference",3,"click"],["svgIcon","clear"],["mat-icon-button","","matTooltip","Download document",3,"click"],["svgIcon","cloud_download"],["class","badge",4,"ngFor","ngForOf"],["class","morelink",3,"click",4,"ngIf"],[1,"badge"],[1,"morelink",3,"click"],[3,"subReferenceUuid"],["mat-header-row",""],["mat-row",""]],template:function(t,i){1&t&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-accordion"),e.TgZ(2,"mat-expansion-panel",1),e.NdJ("closed",function(){return i.panelClosed()})("opened",function(){return i.panelOpened()}),e.TgZ(3,"mat-expansion-panel-header",2),e.TgZ(4,"mat-panel-title"),e.TgZ(5,"h4",3),e._uU(6),e._UZ(7,"span",4),e.qZA(),e._UZ(8,"div",5),e.TgZ(9,"div",6),e.TgZ(10,"button",7),e.NdJ("click",function(s){return i.addNewReference(),s.stopPropagation()}),e._uU(11," Create new "),e._UZ(12,"mat-icon",8),e.qZA(),e.YNc(13,z,3,0,"button",9),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div"),e.YNc(15,Ne,30,3,"table",10),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t&&(e.xp6(6),e.hij(" ",i.card&&"definition"===i.card?"Definitional ":"","References "),e.xp6(1),e.Q6J("matBadge",i.referencesUuids&&i.referencesUuids.length||0),e.xp6(6),e.Q6J("ngIf",i.canReuse),e.xp6(2),e.Q6J("ngIf",i.referencesUuids))},directives:[A.pp,A.ib,A.yz,A.yK,U.gM,W.k,T.lW,V.Hw,R.O5,f.BZ,f.w1,f.fO,f.ge,f.Dz,f.ev,R.sg,T.zs,L.U,f.as,f.XQ,f.nj,f.Gk],styles:[".domain-reference[_ngcontent-%COMP%]{display:block;padding:5px 0 10px;color:#448aff}.mat-expansion-panel[_ngcontent-%COMP%]:not([class*=mat-elevation-z]), .mat-expansion-panel[_ngcontent-%COMP%]{box-shadow:none}.domain-reference-header[_ngcontent-%COMP%] .mat-expansion-indicator:after{margin-right:7px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0}.domain-references-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:5px;padding:0 7px}.domain-references-content[_ngcontent-%COMP%] .mat-expansion-panel-body{padding:0}.mat-expansion-panel-header-title.block-display[_ngcontent-%COMP%]{display:block}.custom-badge[_ngcontent-%COMP%] > .mat-badge-content[_ngcontent-%COMP%]{background-color:#fff!important;color:#4793d1!important}.title-actions[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:end;align-items:flex-end;padding-bottom:5px}.title-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:0;padding:0 10px;line-height:30px}.title-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:last-child){margin-right:10px}.ref-title[_ngcontent-%COMP%]{min-width:200px}"]}),n}()},91770:function(E,N,r){r.d(N,{n:function(){return Y}});var x=r(78069),D=r(48047),v=r(95758),Z=r(12570),y=r(44250),o=r(76442),e=r(36362),O=r(53349),U=r(95465),f=r(87317);function R(p,d){if(1&p){var m=o.EpF();o.TgZ(0,"app-previous-references",4),o.NdJ("selectedReference",function(g){return o.CHM(m),o.oxw().fillReference(g)}),o.qZA()}}function T(p,d){if(1&p){var m=o.EpF();o.TgZ(0,"div"),o._UZ(1,"app-reference-form",5,6),o.TgZ(3,"div",7),o._UZ(4,"span",8),o.TgZ(5,"button",9),o.NdJ("click",function(){return o.CHM(m),o.oxw().cancel()}),o._uU(6,"Cancel"),o.qZA(),o.TgZ(7,"button",10),o.NdJ("click",function(){return o.CHM(m),o.oxw().save()}),o._uU(8," Save "),o.qZA(),o.qZA(),o.qZA()}if(2&p){var l=o.MAs(2),g=o.oxw();o.xp6(1),o.Q6J("reference",g.reference),o.xp6(6),o.Q6J("disabled",!l||!l.isValid)}}var Y=function(){var p=function(){function d(m,l,g){var h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(0,x.Z)(this,d),this.dialogRef=m,this.substanceService=l,this.authService=g,this.reference=h,this.showPrev=!1}return(0,D.Z)(d,[{key:"ngOnInit",value:function(){var l=this;this.dialogRef.beforeClosed().subscribe(function(){return l.dialogRef.close(l.reference.docType&&""!==l.reference.docType&&l.reference.citation&&""!==l.reference.citation?l.reference:null)})}},{key:"save",value:function(){this.dialogRef.close(this.reference)}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"fillReference",value:function(l){delete l.uuid,delete l.lastEdited,delete l.lastEditedBy,delete l.created,delete l.createdBy,delete l._self,l.docType&&""!==l.docType&&l.citation&&""!==l.citation&&(this.reference=l),this.showPrev=!1}}]),d}();return p.\u0275fac=function(m){return new(m||p)(o.Y36(v.so),o.Y36(Z.d),o.Y36(y.e),o.Y36(v.WI))},p.\u0275cmp=o.Xpm({type:p,selectors:[["app-refernce-form-dialog"]],decls:5,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content","","name","reference-dialog-container","id","reference-dialog-container"],[3,"selectedReference",4,"ngIf"],[4,"ngIf"],[3,"selectedReference"],["hideDelete","true","id","reference-dialog-form","name","reference-dialog-form",3,"reference"],["referenceForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(m,l){1&m&&(o.TgZ(0,"h1",0),o._uU(1),o.qZA(),o.TgZ(2,"div",1),o.YNc(3,R,1,0,"app-previous-references",2),o.YNc(4,T,9,2,"div",3),o.qZA()),2&m&&(o.xp6(1),o.hij("",l.reference.uuid?"Edit":"Add"," Reference"),o.xp6(2),o.Q6J("ngIf",l.showPrev),o.xp6(1),o.Q6J("ngIf",l.reference))},directives:[v.uh,v.xY,e.O5,O.s,U.b,f.lW],styles:[".actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}"]}),p}()}}]); -//# sourceMappingURL=8302.2fb7a95454afe2eb.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/8302.ba64c65b9c0507a1.js b/frontend/src/main/resources/static/8302.ba64c65b9c0507a1.js new file mode 100644 index 0000000..bd6e9ab --- /dev/null +++ b/frontend/src/main/resources/static/8302.ba64c65b9c0507a1.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8302],{48302:function(k,N,r){r.d(N,{V:function(){return Oe}});var x=r(39117),D=r(1884),v=r(33567),Z=r(42827),y=r(91770),o=r(95758),e=r(86613),O=r(61534),U=r(40089),f=r(97217),R=r(36362),T=r(87317);function Y(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Apply "),e.qZA())}function p(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"mat-checkbox",3),e.NdJ("change",function(u){var C=e.CHM(t).$implicit;return e.oxw().toggleReference(u,C)}),e.qZA(),e.qZA()}if(2&n){var i=a.$implicit,c=e.oxw();e.xp6(1),e.Q6J("checked",c.domainReferenceUuids.indexOf(i.uuid)>-1)}}function d(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Type "),e.qZA())}function m(n,a){if(1&n&&(e.TgZ(0,"td",18),e._uU(1),e.qZA()),2&n){var t=a.$implicit,i=e.oxw();e.xp6(1),e.hij(" ",i.documentTypes[t.docType]&&i.documentTypes[t.docType].value," ")}}function l(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Citation "),e.qZA())}function g(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Oqu(t.citation)}}function h(n,a){if(1&n&&(e.TgZ(0,"a",21),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.Q6J("href",t.url,e.LSH),e.xp6(1),e.Oqu(t.citation)}}function b(n,a){if(1&n&&(e.TgZ(0,"td",18),e.YNc(1,g,2,1,"span",19),e.YNc(2,h,2,2,"a",20),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.url),e.xp6(1),e.Q6J("ngIf",t.url)}}function E(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Public Domain "),e.qZA())}function I(n,a){if(1&n&&(e.TgZ(0,"td",18),e._uU(1),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.hij(" ",t.publicDomain?"Yes":"No"," ")}}function w(n,a){1&n&&(e.TgZ(0,"th",17),e._uU(1," Access "),e.qZA())}function M(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1," Public "),e.qZA())}function J(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1,", "),e.qZA())}function P(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,J,2,0,"span",19),e.qZA()),2&n){var t=a.$implicit,i=a.last;e.xp6(1),e.hij(" ",t," "),e.xp6(1),e.Q6J("ngIf",!i)}}function Q(n,a){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,P,3,2,"span",22),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",t.access)}}function q(n,a){if(1&n&&(e.TgZ(0,"td",18),e.YNc(1,M,2,0,"span",19),e.YNc(2,Q,2,1,"span",19),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.access||0===t.access.length),e.xp6(1),e.Q6J("ngIf",t.access&&t.access.length>0)}}function F(n,a){1&n&&e._UZ(0,"tr",23)}function S(n,a){1&n&&e._UZ(0,"tr",24)}var B=function(){var n=function(){function a(t,i,c){(0,x.Z)(this,a),this.dialogRef=t,this.data=i,this.cvService=c,this.domainReferenceUuids=[],this.documentTypes={},this.displayedColumns=["apply","type","citation","publicDomain","access"],this.filter=!1,this.domainReferenceUuids=i.domainRefereceUuids.slice(),this.substanceReferences=i.substanceReferences}return(0,D.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.unfiltered=JSON.parse(JSON.stringify(this.substanceReferences)),this.getVocabularies(),this.dialogRef.beforeClosed().subscribe(function(){return i.dialogRef.close(i.domainReferenceUuids&&i.domainReferenceUuids.length>0?i.domainReferenceUuids:null)}),this.filterRefs()}},{key:"filterRefs",value:function(){this.filter=!this.filter,this.substanceReferences=this.filter?this.substanceReferences.filter(function(i){return"SYSTEM"!==i.docType&&"VALIDATION_MESSAGE"!==i.docType}):JSON.parse(JSON.stringify(this.unfiltered))}},{key:"getVocabularies",value:function(){var i=this;this.cvService.getDomainVocabulary("DOCUMENT_TYPE").subscribe(function(c){i.documentTypes=c.DOCUMENT_TYPE.dictionary})}},{key:"toggleReference",value:function(i,c){var s=this.domainReferenceUuids.indexOf(c.uuid);i.checked&&-1===s?this.domainReferenceUuids.push(c.uuid):!i.checked&&s>-1&&this.domainReferenceUuids.splice(s,1)}},{key:"save",value:function(){this.dialogRef.close(this.domainReferenceUuids)}},{key:"cancel",value:function(){this.dialogRef.close()}}]),a}();return n.\u0275fac=function(t){return new(t||n)(e.Y36(o.so),e.Y36(o.WI),e.Y36(Z.I))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-reuse-references-dialog"]],decls:30,vars:4,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"form-row"],["matTooltip","Apply",3,"checked","change"],["mat-table","",3,"dataSource"],["matColumnDef","apply"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","type"],["matColumnDef","citation"],["matColumnDef","publicDomain"],["matColumnDef","access"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["matDialogActions",""],[1,"middle-fill"],["mat-button","",3,"click"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row",""]],template:function(t,i){1&t&&(e.TgZ(0,"h1",0),e._uU(1,"Reuse Substance References"),e.qZA(),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e.TgZ(4,"mat-checkbox",3),e.NdJ("change",function(){return i.filterRefs()}),e._uU(5,"Filter Out System / Validation references "),e.qZA(),e.qZA(),e.TgZ(6,"table",4),e.ynx(7,5),e.YNc(8,Y,2,0,"th",6),e.YNc(9,p,2,1,"td",7),e.BQk(),e.ynx(10,8),e.YNc(11,d,2,0,"th",6),e.YNc(12,m,2,1,"td",7),e.BQk(),e.ynx(13,9),e.YNc(14,l,2,0,"th",6),e.YNc(15,b,3,2,"td",7),e.BQk(),e.ynx(16,10),e.YNc(17,E,2,0,"th",6),e.YNc(18,I,2,1,"td",7),e.BQk(),e.ynx(19,11),e.YNc(20,w,2,0,"th",6),e.YNc(21,q,3,2,"td",7),e.BQk(),e.YNc(22,F,1,0,"tr",12),e.YNc(23,S,1,0,"tr",13),e.qZA(),e.qZA(),e.TgZ(24,"div",14),e._UZ(25,"span",15),e.TgZ(26,"button",16),e.NdJ("click",function(){return i.cancel()}),e._uU(27,"Cancel"),e.qZA(),e.TgZ(28,"button",16),e.NdJ("click",function(){return i.save()}),e._uU(29," Save "),e.qZA(),e.qZA()),2&t&&(e.xp6(4),e.Q6J("checked",i.filter),e.xp6(2),e.Q6J("dataSource",i.substanceReferences),e.xp6(16),e.Q6J("matHeaderRowDef",i.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",i.displayedColumns))},directives:[o.uh,o.xY,O.oG,U.gM,f.BZ,f.w1,f.fO,f.ge,f.Dz,f.ev,R.O5,R.sg,f.as,f.XQ,f.nj,f.Gk,o.H8,T.lW],styles:["tr.mat-row[_ngcontent-%COMP%]:last-child td[_ngcontent-%COMP%]{border-bottom-width:0}"]}),n}(),$=r(52149),H=r(24936),j=r(54244),A=r(16531),W=r(70178),L=r(65590),V=r(98827);function z(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"button",11),e.NdJ("click",function(c){return e.CHM(t),e.oxw().reuseExistingReference(),c.stopPropagation()}),e._uU(1," Reuse "),e._UZ(2,"mat-icon",12),e.qZA()}}function K(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Type "),e.qZA())}function G(n,a){if(1&n&&(e.TgZ(0,"td",28),e._uU(1),e.qZA()),2&n){var t=a.$implicit,i=e.oxw(2);e.xp6(1),e.hij(" ",i.documentTypesDictionary[t.docType]&&i.documentTypesDictionary[t.docType].value," ")}}function X(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Citation "),e.qZA())}function ee(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Oqu(t.citation)}}function ne(n,a){if(1&n&&(e.TgZ(0,"a",31),e._uU(1),e.qZA()),2&n){var t=e.oxw().$implicit;e.Q6J("href",t.url,e.LSH),e.xp6(1),e.Oqu(t.citation)}}function te(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,ee,2,1,"span",29),e.YNc(2,ne,2,2,"a",30),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.url),e.xp6(1),e.Q6J("ngIf",t.url)}}function ie(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Public Domain "),e.qZA())}function ae(n,a){if(1&n&&(e.TgZ(0,"td",28),e._uU(1),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.hij(" ",t.publicDomain?"Yes":"No"," ")}}function oe(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Access "),e.qZA())}function ce(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1," Public "),e.qZA())}function se(n,a){1&n&&(e.TgZ(0,"span"),e._uU(1,", "),e.qZA())}function re(n,a){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,se,2,0,"span",29),e.qZA()),2&n){var t=a.$implicit,i=a.last;e.xp6(1),e.hij(" ",t," "),e.xp6(1),e.Q6J("ngIf",!i)}}function le(n,a){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,re,3,2,"span",32),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",t.access)}}function fe(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,ce,2,0,"span",29),e.YNc(2,le,2,1,"span",29),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",!t.access||0===t.access.length),e.xp6(1),e.Q6J("ngIf",t.access&&t.access.length>0)}}function ue(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Edit "),e.qZA())}function me(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"td",28),e.TgZ(1,"button",33),e.NdJ("click",function(){var s=e.CHM(t).$implicit;return e.oxw(2).openExistingReferenceForm(s)}),e._UZ(2,"mat-icon",34),e.qZA(),e.qZA()}}function _e(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Deselect "),e.qZA())}function pe(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"td",28),e.TgZ(1,"button",35),e.NdJ("click",function(){var s=e.CHM(t).$implicit;return e.oxw(2).removeDomainReference(s.uuid)}),e._UZ(2,"mat-icon",36),e.qZA(),e.qZA()}}function de(n,a){1&n&&e._UZ(0,"th",27)}function ge(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"a",37),e.NdJ("click",function(){e.CHM(t);var c=e.oxw().$implicit;return e.oxw(2).downloadDocument(c.uploadedFile)}),e._UZ(2,"mat-icon",38),e.qZA(),e.qZA()}}function he(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,ge,3,0,"div",29),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("ngIf",t.uploadedFile)}}function ve(n,a){1&n&&(e.TgZ(0,"th",27),e._uU(1," Tags "),e.qZA())}function Re(n,a){if(1&n&&(e.TgZ(0,"span",41),e._uU(1),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.hij(" ",t," ")}}function Te(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"a",42),e.NdJ("click",function(){e.CHM(t);var c=e.oxw(4);return c.showmore=!c.showmore}),e._uU(1,"hide"),e.qZA()}}function be(n,a){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,Re,2,1,"span",39),e.YNc(2,Te,2,0,"a",40),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",t.tags),e.xp6(1),e.Q6J("ngIf",t.tags.length>1)}}function Ce(n,a){if(1&n){var t=e.EpF();e.TgZ(0,"a",42),e.NdJ("click",function(){e.CHM(t);var c=e.oxw(4);return c.showmore=!c.showmore}),e._uU(1,"more..."),e.qZA()}}function xe(n,a){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"span",41),e._uU(2),e.qZA(),e.YNc(3,Ce,2,0,"a",40),e.qZA()),2&n){var t=e.oxw().$implicit;e.xp6(2),e.hij(" ",t.tags.length>0?t.tags[0]:null,""),e.xp6(1),e.Q6J("ngIf",t.tags.length>1)}}function De(n,a){if(1&n&&(e.TgZ(0,"td",28),e.YNc(1,be,3,2,"span",29),e.YNc(2,xe,4,2,"span",29),e.qZA()),2&n){var t=a.$implicit,i=e.oxw(2);e.xp6(1),e.Q6J("ngIf",i.showmore&&t.tags&&t.tags.length>0),e.xp6(1),e.Q6J("ngIf",!i.showmore&&t.tags&&t.tags.length>0)}}function Ze(n,a){1&n&&e._UZ(0,"th",27)}function ye(n,a){if(1&n&&(e.TgZ(0,"td",28),e._UZ(1,"app-apply-reference",43),e.qZA()),2&n){var t=a.$implicit;e.xp6(1),e.Q6J("subReferenceUuid",t.uuid)}}function Ue(n,a){1&n&&e._UZ(0,"tr",44)}function Ae(n,a){1&n&&e._UZ(0,"tr",45)}function Ne(n,a){if(1&n&&(e.TgZ(0,"table",13),e.ynx(1,14),e.YNc(2,K,2,0,"th",15),e.YNc(3,G,2,1,"td",16),e.BQk(),e.ynx(4,17),e.YNc(5,X,2,0,"th",15),e.YNc(6,te,3,2,"td",16),e.BQk(),e.ynx(7,18),e.YNc(8,ie,2,0,"th",15),e.YNc(9,ae,2,1,"td",16),e.BQk(),e.ynx(10,19),e.YNc(11,oe,2,0,"th",15),e.YNc(12,fe,3,2,"td",16),e.BQk(),e.ynx(13,20),e.YNc(14,ue,2,0,"th",15),e.YNc(15,me,3,0,"td",16),e.BQk(),e.ynx(16,21),e.YNc(17,_e,2,0,"th",15),e.YNc(18,pe,3,0,"td",16),e.BQk(),e.ynx(19,22),e.YNc(20,de,1,0,"th",15),e.YNc(21,he,2,1,"td",16),e.BQk(),e.ynx(22,23),e.YNc(23,ve,2,0,"th",15),e.YNc(24,De,3,2,"td",16),e.BQk(),e.ynx(25,24),e.YNc(26,Ze,1,0,"th",15),e.YNc(27,ye,2,1,"td",16),e.BQk(),e.YNc(28,Ue,1,0,"tr",25),e.YNc(29,Ae,1,0,"tr",26),e.qZA()),2&n){var t=e.oxw();e.Q6J("dataSource",t.tableData),e.xp6(28),e.Q6J("matHeaderRowDef",t.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",t.displayedColumns)}}var Oe=function(){var n=function(){function a(t,i,c,s,u,_,C){(0,x.Z)(this,a),this.cvService=t,this.substanceFormReferencesService=i,this.dialog=c,this.element=s,this.utilsService=u,this.overlayContainerService=_,this.substanceFormService=C,this.canReuse=!1,this.references=[],this.documentTypesDictionary={},this.displayedColumns=["type","citation","publicDomain","access","goToReference","remove","attachment","tags","apply"],this.isExpanded=!1,this.showmore=!1,this.subscriptions=[]}return(0,D.Z)(a,[{key:"ngOnInit",value:function(){var i=this;this.getVocabularies();var c=this.substanceFormReferencesService.substanceReferences.subscribe(function(s){i.substanceReferences=s&&s.length?s.filter(function(u){return!u.$$deletedCode}):[],i.canReuse=i.substanceReferences&&i.substanceReferences.length>0,i.loadReferences()});this.subscriptions.push(c),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"referencesUuids",get:function(){return this.domainReferenceUuids},set:function(i){this.domainReferenceUuids=i||[],this.loadReferences()}},{key:"getVocabularies",value:function(){var i=this,c=this.cvService.getDomainVocabulary("DOCUMENT_TYPE").subscribe(function(s){i.documentTypesDictionary=s.DOCUMENT_TYPE.dictionary});this.subscriptions.push(c)}},{key:"loadReferences",value:function(){var i=this;this.domainReferenceUuids&&this.substanceReferences?(this.references=[],this.domainReferenceUuids.forEach(function(c){var s=i.substanceReferences.find(function(u){return u.uuid===c});null!=s&&i.references.push(s)}),this.tableData=new f.by(this.references)):this.references=[]}},{key:"addNewReference",value:function(){var i=this,s=this.dialog.open(y.n,{data:{tags:[],access:[]},width:"900px"});this.overlayContainer.style.zIndex="1002";var u=s.afterClosed().subscribe(function(_){i.overlayContainer.style.zIndex=null,null!=_&&(_=i.substanceFormReferencesService.addSubstanceReference(_),setTimeout(function(){i.addDomainReference(_.uuid)}),i.canReuse=!0)});this.subscriptions.push(u)}},{key:"openExistingReferenceForm",value:function(i){var c=this,s=this.dialog.open(y.n,{data:i,width:"900px"});this.overlayContainer.style.zIndex="1002";var u=s.afterClosed().subscribe(function(_){c.overlayContainer.style.zIndex=null});this.subscriptions.push(u)}},{key:"addDomainReference",value:function(i){-1===this.domainReferenceUuids.indexOf(i)&&this.domainReferenceUuids.push(i);var c=this.references.find(function(s){return s.uuid===i});null==c&&null!=(c=this.substanceReferences.find(function(s){return s.uuid===i}))&&(this.references.unshift(c),this.tableData.data=this.references)}},{key:"reuseExistingReference",value:function(){var i=this,s=this.dialog.open(B,{data:{domainRefereceUuids:this.domainReferenceUuids,substanceReferences:this.substanceReferences},width:"900px"});this.overlayContainer.style.zIndex="1002";var u=s.afterClosed().subscribe(function(_){i.overlayContainer.style.zIndex=null,null!=_&&i.updateDomainReferences(_)});this.subscriptions.push(u)}},{key:"updateDomainReferences",value:function(){var i=this,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.domainReferenceUuids.length=0,c.forEach(function(u){i.domainReferenceUuids.push(u)});var s=[];this.domainReferenceUuids.forEach(function(u){var _=i.substanceReferences.find(function(C){return C.uuid===u});null!=_&&s.push(_)}),this.references=s,this.tableData.data=this.references}},{key:"removeDomainReference",value:function(i){var c=this.domainReferenceUuids.indexOf(i);c>-1&&this.domainReferenceUuids.splice(c,1);var s=this.references.findIndex(function(u){return u.uuid===i});s>-1&&this.references.splice(s,1),this.tableData.data=this.references}},{key:"panelOpened",value:function(){this.isExpanded=!0;var i=new Event("focusin",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(i)}},{key:"panelClosed",value:function(){this.isExpanded=!1;var i=new Event("focusout",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(i)}},{key:"downloadDocument",value:function(i){this.substanceFormService.bypassUpdateCheck(),window.open(i)}}]),a}();return n.\u0275fac=function(t){return new(t||n)(e.Y36(Z.I),e.Y36(H.v),e.Y36(o.uw),e.Y36(e.SBq),e.Y36($.F),e.Y36(j.Xj),e.Y36(v.B))},n.\u0275cmp=e.Xpm({type:n,selectors:[["app-domain-references"]],inputs:{card:"card",referencesUuids:"referencesUuids"},decls:16,vars:4,consts:[[1,"domain-references-content"],[3,"closed","opened"],[1,"domain-reference-header"],["matTooltip","Expand references",1,"title","ref-title"],["matBadgeOverlap","false",1,"custom-badge",3,"matBadge"],[1,"middle-fill"],[1,"title-actions"],["mat-flat-button","","color","primary","matTooltip","Create new reference",3,"click"],["svgIcon","add_circle_outline"],["mat-flat-button","","color","primary","matTooltip","Reuse existing reference",3,"click",4,"ngIf"],["mat-table","",3,"dataSource",4,"ngIf"],["mat-flat-button","","color","primary","matTooltip","Reuse existing reference",3,"click"],["svgIcon","move_to_inbox"],["mat-table","",3,"dataSource"],["matColumnDef","type"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","citation"],["matColumnDef","publicDomain"],["matColumnDef","access"],["matColumnDef","goToReference"],["matColumnDef","remove"],["matColumnDef","attachment"],["matColumnDef","tags"],["matColumnDef","apply"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[4,"ngIf"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Open reference form",3,"click"],["svgIcon","edit"],["mat-icon-button","","matTooltip","Remove reference",3,"click"],["svgIcon","clear"],["mat-icon-button","","matTooltip","Download document",3,"click"],["svgIcon","cloud_download"],["class","badge",4,"ngFor","ngForOf"],["class","morelink",3,"click",4,"ngIf"],[1,"badge"],[1,"morelink",3,"click"],[3,"subReferenceUuid"],["mat-header-row",""],["mat-row",""]],template:function(t,i){1&t&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-accordion"),e.TgZ(2,"mat-expansion-panel",1),e.NdJ("closed",function(){return i.panelClosed()})("opened",function(){return i.panelOpened()}),e.TgZ(3,"mat-expansion-panel-header",2),e.TgZ(4,"mat-panel-title"),e.TgZ(5,"h4",3),e._uU(6),e._UZ(7,"span",4),e.qZA(),e._UZ(8,"div",5),e.TgZ(9,"div",6),e.TgZ(10,"button",7),e.NdJ("click",function(s){return i.addNewReference(),s.stopPropagation()}),e._uU(11," Create new "),e._UZ(12,"mat-icon",8),e.qZA(),e.YNc(13,z,3,0,"button",9),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div"),e.YNc(15,Ne,30,3,"table",10),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t&&(e.xp6(6),e.hij(" ",i.card&&"definition"===i.card?"Definitional ":"","References "),e.xp6(1),e.Q6J("matBadge",i.referencesUuids&&i.referencesUuids.length||0),e.xp6(6),e.Q6J("ngIf",i.canReuse),e.xp6(2),e.Q6J("ngIf",i.referencesUuids))},directives:[A.pp,A.ib,A.yz,A.yK,U.gM,W.k,T.lW,L.Hw,R.O5,f.BZ,f.w1,f.fO,f.ge,f.Dz,f.ev,R.sg,T.zs,V.U,f.as,f.XQ,f.nj,f.Gk],styles:[".domain-reference[_ngcontent-%COMP%]{display:block;padding:5px 0 10px;color:#448aff}.mat-expansion-panel[_ngcontent-%COMP%]:not([class*=mat-elevation-z]), .mat-expansion-panel[_ngcontent-%COMP%]{box-shadow:none}.domain-reference-header[_ngcontent-%COMP%] .mat-expansion-indicator:after{margin-right:7px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0}.domain-references-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:5px;padding:0 7px}.domain-references-content[_ngcontent-%COMP%] .mat-expansion-panel-body{padding:0}.mat-expansion-panel-header-title.block-display[_ngcontent-%COMP%]{display:block}.custom-badge[_ngcontent-%COMP%] > .mat-badge-content[_ngcontent-%COMP%]{background-color:var(--regular-white-color)!important;color:var(--secondary-rgb-blue)!important}.title-actions[_ngcontent-%COMP%]{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:end;align-items:flex-end;padding-bottom:5px}.title-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:0;padding:0 10px;line-height:30px}.title-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:last-child){margin-right:10px}.ref-title[_ngcontent-%COMP%]{min-width:200px}"]}),n}()},91770:function(k,N,r){r.d(N,{n:function(){return Y}});var x=r(39117),D=r(1884),v=r(95758),Z=r(12570),y=r(44250),o=r(86613),e=r(36362),O=r(53349),U=r(95465),f=r(87317);function R(p,d){if(1&p){var m=o.EpF();o.TgZ(0,"app-previous-references",4),o.NdJ("selectedReference",function(g){return o.CHM(m),o.oxw().fillReference(g)}),o.qZA()}}function T(p,d){if(1&p){var m=o.EpF();o.TgZ(0,"div"),o._UZ(1,"app-reference-form",5,6),o.TgZ(3,"div",7),o._UZ(4,"span",8),o.TgZ(5,"button",9),o.NdJ("click",function(){return o.CHM(m),o.oxw().cancel()}),o._uU(6,"Cancel"),o.qZA(),o.TgZ(7,"button",10),o.NdJ("click",function(){return o.CHM(m),o.oxw().save()}),o._uU(8," Save "),o.qZA(),o.qZA(),o.qZA()}if(2&p){var l=o.MAs(2),g=o.oxw();o.xp6(1),o.Q6J("reference",g.reference),o.xp6(6),o.Q6J("disabled",!l||!l.isValid)}}var Y=function(){var p=function(){function d(m,l,g){var h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(0,x.Z)(this,d),this.dialogRef=m,this.substanceService=l,this.authService=g,this.reference=h,this.showPrev=!1}return(0,D.Z)(d,[{key:"ngOnInit",value:function(){var l=this;this.dialogRef.beforeClosed().subscribe(function(){return l.dialogRef.close(l.reference.docType&&""!==l.reference.docType&&l.reference.citation&&""!==l.reference.citation?l.reference:null)})}},{key:"save",value:function(){this.dialogRef.close(this.reference)}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"fillReference",value:function(l){delete l.uuid,delete l.lastEdited,delete l.lastEditedBy,delete l.created,delete l.createdBy,delete l._self,l.docType&&""!==l.docType&&l.citation&&""!==l.citation&&(this.reference=l),this.showPrev=!1}}]),d}();return p.\u0275fac=function(m){return new(m||p)(o.Y36(v.so),o.Y36(Z.d),o.Y36(y.e),o.Y36(v.WI))},p.\u0275cmp=o.Xpm({type:p,selectors:[["app-refernce-form-dialog"]],decls:5,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content","","name","reference-dialog-container","id","reference-dialog-container"],[3,"selectedReference",4,"ngIf"],[4,"ngIf"],[3,"selectedReference"],["hideDelete","true","id","reference-dialog-form","name","reference-dialog-form",3,"reference"],["referenceForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(m,l){1&m&&(o.TgZ(0,"h1",0),o._uU(1),o.qZA(),o.TgZ(2,"div",1),o.YNc(3,R,1,0,"app-previous-references",2),o.YNc(4,T,9,2,"div",3),o.qZA()),2&m&&(o.xp6(1),o.hij("",l.reference.uuid?"Edit":"Add"," Reference"),o.xp6(2),o.Q6J("ngIf",l.showPrev),o.xp6(1),o.Q6J("ngIf",l.reference))},directives:[v.uh,v.xY,e.O5,O.s,U.b,f.lW],styles:[".actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}"]}),p}()}}]); +//# sourceMappingURL=8302.ba64c65b9c0507a1.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/8302.2fb7a95454afe2eb.js.map b/frontend/src/main/resources/static/8302.ba64c65b9c0507a1.js.map similarity index 99% rename from frontend/src/main/resources/static/8302.2fb7a95454afe2eb.js.map rename to frontend/src/main/resources/static/8302.ba64c65b9c0507a1.js.map index d736e7e..3fb1ebd 100644 --- a/frontend/src/main/resources/static/8302.2fb7a95454afe2eb.js.map +++ b/frontend/src/main/resources/static/8302.ba64c65b9c0507a1.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r13","ReuseReferencesDialogComponent","dialogRef","data","cvService","this","domainReferenceUuids","domainRefereceUuids","slice","substanceReferences","unfiltered","JSON","parse","stringify","getVocabularies","beforeClosed","subscribe","i","close","length","filterRefs","filter","item","docType","getDomainVocabulary","documentTypes","response","DOCUMENT_TYPE","dictionary","event","reference","domainReferenceIndex","indexOf","uuid","checked","push","splice","a","MAT_DIALOG_DATA","selectors","ctx","ctx_r2","$event","ctx_r40","ctx_r43","ctx_r47","DomainReferencesComponent","substanceFormReferencesService","dialog","element","utilsService","overlayContainerService","substanceFormService","x","referencesSubscription","references","$$deletedCode","canReuse","loadReferences","subscriptions","overlayContainer","getContainerElement","forEach","subscription","unsubscribe","set","referencesUuids","dictionarySubscription","documentTypesDictionary","substanceReference","find","tableData","MatTableDataSource","open","RefernceFormDialogComponent","tags","access","width","style","zIndex","dialogSubscription","afterClosed","newReference","addSubstanceReference","setTimeout","addDomainReference","c","unshift","updateDomainReferences","referenceUuids","arguments","referenceUuidIndex","substanceReferenceIndex","findIndex","isExpanded","Event","bubbles","cancelable","nativeElement","dispatchEvent","url","bypassUpdateCheck","window","ctx_r5","ctx_r7","substanceService","authService","l","citation","ref","lastEdited","lastEditedBy","created","createdBy","_self","showPrev","d"],"sources":["./src/app/core/substance-form/references/references-dialogs/reuse-references-dialog.component.html","./src/app/core/substance-form/references/references-dialogs/reuse-references-dialog.component.ts","./src/app/core/substance-form/references/domain-references/domain-references.component.html","./src/app/core/substance-form/references/domain-references/domain-references.component.ts","./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.html","./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.ts"],"sourcesContent":["

Reuse Substance References

\n
\n
\n Filter Out System / Validation references\n \n\n
\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Apply \n -1\">\n \n Type {{documentTypes[reference.docType] && documentTypes[reference.docType].value}} Citation \n {{reference.citation}}\n {{reference.citation}}\n Public Domain \n {{reference.publicDomain ? 'Yes' : 'No'}}\n Access \n \n Public\n \n 0\">\n \n {{item}}\n , \n \n \n
\n
\n
\n \n \n \n
","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { ReuseReferencesDialogData } from './reuse-references-dialog-data.model';\nimport { ControlledVocabularyService } from '../../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../controlled-vocabulary/vocabulary.model';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'app-reuse-references-dialog',\n templateUrl: './reuse-references-dialog.component.html',\n styleUrls: ['./reuse-references-dialog.component.scss']\n})\nexport class ReuseReferencesDialogComponent implements OnInit {\n domainReferenceUuids: Array = [];\n substanceReferences: Array;\n documentTypes: { [vocabularyValue: string]: VocabularyTerm } = {};\n displayedColumns: string[] = ['apply', 'type', 'citation', 'publicDomain', 'access'];\n filter = false;\n unfiltered: Array;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) private data: ReuseReferencesDialogData,\n private cvService: ControlledVocabularyService\n ) {\n this.domainReferenceUuids = data.domainRefereceUuids.slice();\n this.substanceReferences = data.substanceReferences;\n }\n\n ngOnInit() {\n this.unfiltered = JSON.parse(JSON.stringify(this.substanceReferences));\n this.getVocabularies();\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(\n (this.domainReferenceUuids && this.domainReferenceUuids.length > 0) ? this.domainReferenceUuids : null));\n this.filterRefs();\n }\n\n filterRefs() {\n this.filter = !this.filter;\n if (this.filter) {\n this.substanceReferences = this.substanceReferences.filter( item => {\n return item.docType !== 'SYSTEM' && item.docType !== 'VALIDATION_MESSAGE';\n });\n } else {\n this.substanceReferences = JSON.parse(JSON.stringify(this.unfiltered));\n }\n }\n \n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('DOCUMENT_TYPE').subscribe(response => {\n this.documentTypes = response['DOCUMENT_TYPE'].dictionary;\n });\n }\n\n toggleReference(event: MatCheckboxChange, reference: SubstanceReference): void {\n\n const domainReferenceIndex = this.domainReferenceUuids.indexOf(reference.uuid);\n\n if (event.checked && domainReferenceIndex === -1) {\n this.domainReferenceUuids.push(reference.uuid);\n } else if (!event.checked && domainReferenceIndex > -1) {\n this.domainReferenceUuids.splice(domainReferenceIndex, 1);\n }\n\n }\n\n save(): void {\n this.dialogRef.close(this.domainReferenceUuids);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n}\n","
\n \n \n \n \n

\n {{card && card === 'definition'? 'Definitional ': ''}}References\n \n \n

\n
\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n\n \n \n \n \n \n \n \n \n \n\n \n \n
Type \n {{documentTypesDictionary[reference.docType] && documentTypesDictionary[reference.docType].value}} Citation \n {{reference.citation}}\n {{reference.citation}}\n Public Domain \n {{reference.publicDomain ? 'Yes' : 'No'}}\n Access \n \n Public\n \n 0\">\n \n {{item}}\n , \n \n \n Edit \n \n Deselect \n \n \n
\n \n \n \n
\n
Tags \n 0)\" > {{tag}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">hide \n 0)\" > {{reference.tags.length > 0? reference.tags[0]:null}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">more... \n \n \n
\n
\n
\n
\n
\n","import { Component, OnInit, Input, ElementRef, OnDestroy } from '@angular/core';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { SubstanceFormService } from '../../substance-form.service';\nimport { ControlledVocabularyService } from '../../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../controlled-vocabulary/vocabulary.model';\nimport { MatDialog } from '@angular/material/dialog';\nimport { RefernceFormDialogComponent } from '../references-dialogs/refernce-form-dialog.component';\nimport { ReuseReferencesDialogComponent } from '../references-dialogs/reuse-references-dialog.component';\nimport { ReuseReferencesDialogData } from '../references-dialogs/reuse-references-dialog-data.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { UtilsService } from '../../../utils/utils.service';\nimport { Subscription } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceFormReferencesService } from '../substance-form-references.service';\n\n@Component({\n selector: 'app-domain-references',\n templateUrl: './domain-references.component.html',\n styleUrls: ['./domain-references.component.scss']\n})\nexport class DomainReferencesComponent implements OnInit, OnDestroy {\n @Input() card?: string;\n private domainReferenceUuids: Array;\n private substanceReferences: Array;\n canReuse = false;\n references: Array = [];\n documentTypesDictionary: { [dictionaryValue: string]: VocabularyTerm } = {};\n displayedColumns: string[] = ['type', 'citation', 'publicDomain', 'access', 'goToReference', 'remove', 'attachment', 'tags', 'apply'];\n tableData: MatTableDataSource;\n isExpanded = false;\n showmore = false;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private substanceFormReferencesService: SubstanceFormReferencesService,\n private dialog: MatDialog,\n private element: ElementRef,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n const referencesSubscription = this.substanceFormReferencesService.substanceReferences.subscribe(references => {\n if (references && references.length) {\n this.substanceReferences = references.filter(reference => !reference.$$deletedCode);\n } else {\n this.substanceReferences = [];\n }\n this.canReuse = this.substanceReferences && this.substanceReferences.length > 0;\n this.loadReferences();\n });\n this.subscriptions.push(referencesSubscription);\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set referencesUuids(referencesUuids: Array) {\n this.domainReferenceUuids = referencesUuids || [];\n this.loadReferences();\n }\n\n get referencesUuids(): Array {\n return this.domainReferenceUuids;\n }\n\n getVocabularies(): void {\n const dictionarySubscription = this.cvService.getDomainVocabulary('DOCUMENT_TYPE').subscribe(response => {\n this.documentTypesDictionary = response['DOCUMENT_TYPE'].dictionary;\n });\n this.subscriptions.push(dictionarySubscription);\n }\n\n private loadReferences() {\n if (this.domainReferenceUuids && this.substanceReferences) {\n this.references = [];\n this.domainReferenceUuids.forEach((uuid: string) => {\n const substanceReference = this.substanceReferences.find(reference => reference.uuid === uuid);\n if (substanceReference != null) {\n this.references.push(substanceReference);\n }\n });\n this.tableData = new MatTableDataSource(this.references);\n } else {\n this.references = [];\n }\n }\n\n addNewReference(): void {\n\n const reference: SubstanceReference = {\n tags: [],\n access: []\n };\n\n const dialogRef = this.dialog.open(RefernceFormDialogComponent, {\n data: reference,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newReference => {\n this.overlayContainer.style.zIndex = null;\n if (newReference != null) {\n newReference = this.substanceFormReferencesService.addSubstanceReference(newReference);\n setTimeout(() => {\n this.addDomainReference(newReference.uuid);\n });\n this.canReuse = true;\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n openExistingReferenceForm(reference: SubstanceReference): void {\n\n const dialogRef = this.dialog.open(RefernceFormDialogComponent, {\n data: reference,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(updatedReference => {\n this.overlayContainer.style.zIndex = null;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n addDomainReference(uuid: string): void {\n if (this.domainReferenceUuids.indexOf(uuid) === -1) {\n this.domainReferenceUuids.push(uuid);\n }\n\n let substanceReference = this.references.find(reference => reference.uuid === uuid);\n if (substanceReference == null) {\n substanceReference = this.substanceReferences.find(reference => reference.uuid === uuid);\n if (substanceReference != null) {\n this.references.unshift(substanceReference);\n this.tableData.data = this.references;\n }\n }\n }\n\n reuseExistingReference(): void {\n\n const data: ReuseReferencesDialogData = {\n domainRefereceUuids: this.domainReferenceUuids,\n substanceReferences: this.substanceReferences\n };\n\n const dialogRef = this.dialog.open(ReuseReferencesDialogComponent, {\n data: data,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(domainRefereceUuids => {\n this.overlayContainer.style.zIndex = null;\n if (domainRefereceUuids != null) {\n this.updateDomainReferences(domainRefereceUuids);\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateDomainReferences(referenceUuids: Array = []): void {\n this.domainReferenceUuids.length = 0;\n referenceUuids.forEach(uuid => {\n this.domainReferenceUuids.push(uuid);\n });\n const references = [];\n this.domainReferenceUuids.forEach((uuid: string) => {\n const substanceReference = this.substanceReferences.find(reference => reference.uuid === uuid);\n if (substanceReference != null) {\n references.push(substanceReference);\n }\n });\n this.references = references;\n this.tableData.data = this.references;\n }\n\n removeDomainReference(uuid: string): void {\n const referenceUuidIndex = this.domainReferenceUuids.indexOf(uuid);\n\n if (referenceUuidIndex > -1) {\n this.domainReferenceUuids.splice(referenceUuidIndex, 1);\n }\n const substanceReferenceIndex = this.references.findIndex(reference => reference.uuid === uuid);\n\n if (substanceReferenceIndex > -1) {\n this.references.splice(substanceReferenceIndex, 1);\n }\n this.tableData.data = this.references;\n }\n\n // COMMENTING OUT IN CASE WE NEED TO ADD BACK SOMEDAY\n // deleteReference(reference: SubstanceReference): void {\n // reference.$$deletedCode = this.utilsService.newUUID();\n // this.substanceFormReferencesService.emitReferencesUpdate();\n // }\n\n panelOpened(): void {\n this.isExpanded = true;\n const event: Event = new Event('focusin', { bubbles: true, cancelable: true });\n this.element.nativeElement.dispatchEvent(event);\n }\n\n panelClosed(): void {\n this.isExpanded = false;\n const event: Event = new Event('focusout', { bubbles: true, cancelable: true });\n this.element.nativeElement.dispatchEvent(event);\n }\n\n downloadDocument(url: string): void {\n this.substanceFormService.bypassUpdateCheck();\n window.open(url);\n }\n}\n","

{{reference.uuid ? 'Edit' : 'Add'}} Reference

\n
\n \n
\n \n
\n \n \n \n
\n
\n
\n","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { Content } from '@angular/compiler/src/render3/r3_ast';\n\n@Component({\n selector: 'app-refernce-form-dialog',\n templateUrl: './refernce-form-dialog.component.html',\n styleUrls: ['./refernce-form-dialog.component.scss']\n})\nexport class RefernceFormDialogComponent implements OnInit {\nuser: string;\nshowPrev = false;\n\n constructor(\n public dialogRef: MatDialogRef,\n private substanceService: SubstanceService,\n private authService: AuthService,\n @Inject(MAT_DIALOG_DATA) public reference: SubstanceReference = {}\n ) {}\n\n ngOnInit() {\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(\n ((this.reference.docType && this.reference.docType !== '') &&\n (this.reference.citation && this.reference.citation !== '')) ? this.reference : null));\n }\n\n save(): void {\n this.dialogRef.close(this.reference);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n fillReference(ref: SubstanceReference) {\n delete ref.uuid;\n delete ref.lastEdited;\n delete ref.lastEditedBy;\n delete ref.created;\n delete ref.createdBy;\n delete ref._self;\n if ((ref.docType && ref.docType !== '') && (ref.citation && ref.citation !== '')) {\n this.reference = ref;\n }\n this.showPrev = false;\n }\n\n}\n"],"sourceRoot":"webpack:///","file":"8302.2fb7a95454afe2eb.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["i0","ctx_r13","ReuseReferencesDialogComponent","dialogRef","data","cvService","this","domainReferenceUuids","domainRefereceUuids","slice","substanceReferences","unfiltered","JSON","parse","stringify","getVocabularies","beforeClosed","subscribe","i","close","length","filterRefs","filter","item","docType","getDomainVocabulary","documentTypes","response","DOCUMENT_TYPE","dictionary","event","reference","domainReferenceIndex","indexOf","uuid","checked","push","splice","a","MAT_DIALOG_DATA","selectors","ctx","ctx_r2","$event","ctx_r40","ctx_r43","ctx_r47","DomainReferencesComponent","substanceFormReferencesService","dialog","element","utilsService","overlayContainerService","substanceFormService","x","referencesSubscription","references","$$deletedCode","canReuse","loadReferences","subscriptions","overlayContainer","getContainerElement","forEach","subscription","unsubscribe","set","referencesUuids","dictionarySubscription","documentTypesDictionary","substanceReference","find","tableData","MatTableDataSource","open","RefernceFormDialogComponent","tags","access","width","style","zIndex","dialogSubscription","afterClosed","newReference","addSubstanceReference","setTimeout","addDomainReference","c","unshift","updateDomainReferences","referenceUuids","arguments","referenceUuidIndex","substanceReferenceIndex","findIndex","isExpanded","Event","bubbles","cancelable","nativeElement","dispatchEvent","url","bypassUpdateCheck","window","ctx_r5","ctx_r7","substanceService","authService","l","citation","ref","lastEdited","lastEditedBy","created","createdBy","_self","showPrev","d"],"sources":["./src/app/core/substance-form/references/references-dialogs/reuse-references-dialog.component.html","./src/app/core/substance-form/references/references-dialogs/reuse-references-dialog.component.ts","./src/app/core/substance-form/references/domain-references/domain-references.component.html","./src/app/core/substance-form/references/domain-references/domain-references.component.ts","./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.html","./src/app/core/substance-form/references/references-dialogs/refernce-form-dialog.component.ts"],"sourcesContent":["

Reuse Substance References

\n
\n
\n Filter Out System / Validation references\n \n\n
\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
Apply \n -1\">\n \n Type {{documentTypes[reference.docType] && documentTypes[reference.docType].value}} Citation \n {{reference.citation}}\n {{reference.citation}}\n Public Domain \n {{reference.publicDomain ? 'Yes' : 'No'}}\n Access \n \n Public\n \n 0\">\n \n {{item}}\n , \n \n \n
\n
\n
\n \n \n \n
","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { ReuseReferencesDialogData } from './reuse-references-dialog-data.model';\nimport { ControlledVocabularyService } from '../../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../controlled-vocabulary/vocabulary.model';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'app-reuse-references-dialog',\n templateUrl: './reuse-references-dialog.component.html',\n styleUrls: ['./reuse-references-dialog.component.scss']\n})\nexport class ReuseReferencesDialogComponent implements OnInit {\n domainReferenceUuids: Array = [];\n substanceReferences: Array;\n documentTypes: { [vocabularyValue: string]: VocabularyTerm } = {};\n displayedColumns: string[] = ['apply', 'type', 'citation', 'publicDomain', 'access'];\n filter = false;\n unfiltered: Array;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) private data: ReuseReferencesDialogData,\n private cvService: ControlledVocabularyService\n ) {\n this.domainReferenceUuids = data.domainRefereceUuids.slice();\n this.substanceReferences = data.substanceReferences;\n }\n\n ngOnInit() {\n this.unfiltered = JSON.parse(JSON.stringify(this.substanceReferences));\n this.getVocabularies();\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(\n (this.domainReferenceUuids && this.domainReferenceUuids.length > 0) ? this.domainReferenceUuids : null));\n this.filterRefs();\n }\n\n filterRefs() {\n this.filter = !this.filter;\n if (this.filter) {\n this.substanceReferences = this.substanceReferences.filter( item => {\n return item.docType !== 'SYSTEM' && item.docType !== 'VALIDATION_MESSAGE';\n });\n } else {\n this.substanceReferences = JSON.parse(JSON.stringify(this.unfiltered));\n }\n }\n \n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('DOCUMENT_TYPE').subscribe(response => {\n this.documentTypes = response['DOCUMENT_TYPE'].dictionary;\n });\n }\n\n toggleReference(event: MatCheckboxChange, reference: SubstanceReference): void {\n\n const domainReferenceIndex = this.domainReferenceUuids.indexOf(reference.uuid);\n\n if (event.checked && domainReferenceIndex === -1) {\n this.domainReferenceUuids.push(reference.uuid);\n } else if (!event.checked && domainReferenceIndex > -1) {\n this.domainReferenceUuids.splice(domainReferenceIndex, 1);\n }\n\n }\n\n save(): void {\n this.dialogRef.close(this.domainReferenceUuids);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n}\n","
\n \n \n \n \n

\n {{card && card === 'definition'? 'Definitional ': ''}}References\n \n \n

\n
\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n\n \n \n \n \n \n \n \n \n \n\n \n \n
Type \n {{documentTypesDictionary[reference.docType] && documentTypesDictionary[reference.docType].value}} Citation \n {{reference.citation}}\n {{reference.citation}}\n Public Domain \n {{reference.publicDomain ? 'Yes' : 'No'}}\n Access \n \n Public\n \n 0\">\n \n {{item}}\n , \n \n \n Edit \n \n Deselect \n \n \n
\n \n \n \n
\n
Tags \n 0)\" > {{tag}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">hide \n 0)\" > {{reference.tags.length > 0? reference.tags[0]:null}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">more... \n \n \n
\n
\n
\n
\n
\n","import { Component, OnInit, Input, ElementRef, OnDestroy } from '@angular/core';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { SubstanceFormService } from '../../substance-form.service';\nimport { ControlledVocabularyService } from '../../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../controlled-vocabulary/vocabulary.model';\nimport { MatDialog } from '@angular/material/dialog';\nimport { RefernceFormDialogComponent } from '../references-dialogs/refernce-form-dialog.component';\nimport { ReuseReferencesDialogComponent } from '../references-dialogs/reuse-references-dialog.component';\nimport { ReuseReferencesDialogData } from '../references-dialogs/reuse-references-dialog-data.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { UtilsService } from '../../../utils/utils.service';\nimport { Subscription } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { SubstanceFormReferencesService } from '../substance-form-references.service';\n\n@Component({\n selector: 'app-domain-references',\n templateUrl: './domain-references.component.html',\n styleUrls: ['./domain-references.component.scss']\n})\nexport class DomainReferencesComponent implements OnInit, OnDestroy {\n @Input() card?: string;\n private domainReferenceUuids: Array;\n private substanceReferences: Array;\n canReuse = false;\n references: Array = [];\n documentTypesDictionary: { [dictionaryValue: string]: VocabularyTerm } = {};\n displayedColumns: string[] = ['type', 'citation', 'publicDomain', 'access', 'goToReference', 'remove', 'attachment', 'tags', 'apply'];\n tableData: MatTableDataSource;\n isExpanded = false;\n showmore = false;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private substanceFormReferencesService: SubstanceFormReferencesService,\n private dialog: MatDialog,\n private element: ElementRef,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n const referencesSubscription = this.substanceFormReferencesService.substanceReferences.subscribe(references => {\n if (references && references.length) {\n this.substanceReferences = references.filter(reference => !reference.$$deletedCode);\n } else {\n this.substanceReferences = [];\n }\n this.canReuse = this.substanceReferences && this.substanceReferences.length > 0;\n this.loadReferences();\n });\n this.subscriptions.push(referencesSubscription);\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set referencesUuids(referencesUuids: Array) {\n this.domainReferenceUuids = referencesUuids || [];\n this.loadReferences();\n }\n\n get referencesUuids(): Array {\n return this.domainReferenceUuids;\n }\n\n getVocabularies(): void {\n const dictionarySubscription = this.cvService.getDomainVocabulary('DOCUMENT_TYPE').subscribe(response => {\n this.documentTypesDictionary = response['DOCUMENT_TYPE'].dictionary;\n });\n this.subscriptions.push(dictionarySubscription);\n }\n\n private loadReferences() {\n if (this.domainReferenceUuids && this.substanceReferences) {\n this.references = [];\n this.domainReferenceUuids.forEach((uuid: string) => {\n const substanceReference = this.substanceReferences.find(reference => reference.uuid === uuid);\n if (substanceReference != null) {\n this.references.push(substanceReference);\n }\n });\n this.tableData = new MatTableDataSource(this.references);\n } else {\n this.references = [];\n }\n }\n\n addNewReference(): void {\n\n const reference: SubstanceReference = {\n tags: [],\n access: []\n };\n\n const dialogRef = this.dialog.open(RefernceFormDialogComponent, {\n data: reference,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newReference => {\n this.overlayContainer.style.zIndex = null;\n if (newReference != null) {\n newReference = this.substanceFormReferencesService.addSubstanceReference(newReference);\n setTimeout(() => {\n this.addDomainReference(newReference.uuid);\n });\n this.canReuse = true;\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n openExistingReferenceForm(reference: SubstanceReference): void {\n\n const dialogRef = this.dialog.open(RefernceFormDialogComponent, {\n data: reference,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(updatedReference => {\n this.overlayContainer.style.zIndex = null;\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n addDomainReference(uuid: string): void {\n if (this.domainReferenceUuids.indexOf(uuid) === -1) {\n this.domainReferenceUuids.push(uuid);\n }\n\n let substanceReference = this.references.find(reference => reference.uuid === uuid);\n if (substanceReference == null) {\n substanceReference = this.substanceReferences.find(reference => reference.uuid === uuid);\n if (substanceReference != null) {\n this.references.unshift(substanceReference);\n this.tableData.data = this.references;\n }\n }\n }\n\n reuseExistingReference(): void {\n\n const data: ReuseReferencesDialogData = {\n domainRefereceUuids: this.domainReferenceUuids,\n substanceReferences: this.substanceReferences\n };\n\n const dialogRef = this.dialog.open(ReuseReferencesDialogComponent, {\n data: data,\n width: '900px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(domainRefereceUuids => {\n this.overlayContainer.style.zIndex = null;\n if (domainRefereceUuids != null) {\n this.updateDomainReferences(domainRefereceUuids);\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n updateDomainReferences(referenceUuids: Array = []): void {\n this.domainReferenceUuids.length = 0;\n referenceUuids.forEach(uuid => {\n this.domainReferenceUuids.push(uuid);\n });\n const references = [];\n this.domainReferenceUuids.forEach((uuid: string) => {\n const substanceReference = this.substanceReferences.find(reference => reference.uuid === uuid);\n if (substanceReference != null) {\n references.push(substanceReference);\n }\n });\n this.references = references;\n this.tableData.data = this.references;\n }\n\n removeDomainReference(uuid: string): void {\n const referenceUuidIndex = this.domainReferenceUuids.indexOf(uuid);\n\n if (referenceUuidIndex > -1) {\n this.domainReferenceUuids.splice(referenceUuidIndex, 1);\n }\n const substanceReferenceIndex = this.references.findIndex(reference => reference.uuid === uuid);\n\n if (substanceReferenceIndex > -1) {\n this.references.splice(substanceReferenceIndex, 1);\n }\n this.tableData.data = this.references;\n }\n\n // COMMENTING OUT IN CASE WE NEED TO ADD BACK SOMEDAY\n // deleteReference(reference: SubstanceReference): void {\n // reference.$$deletedCode = this.utilsService.newUUID();\n // this.substanceFormReferencesService.emitReferencesUpdate();\n // }\n\n panelOpened(): void {\n this.isExpanded = true;\n const event: Event = new Event('focusin', { bubbles: true, cancelable: true });\n this.element.nativeElement.dispatchEvent(event);\n }\n\n panelClosed(): void {\n this.isExpanded = false;\n const event: Event = new Event('focusout', { bubbles: true, cancelable: true });\n this.element.nativeElement.dispatchEvent(event);\n }\n\n downloadDocument(url: string): void {\n this.substanceFormService.bypassUpdateCheck();\n window.open(url);\n }\n}\n","

{{reference.uuid ? 'Edit' : 'Add'}} Reference

\n
\n \n
\n \n
\n \n \n \n
\n
\n
\n","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { SubstanceReference } from '../../../substance/substance.model';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { Content } from '@angular/compiler/src/render3/r3_ast';\n\n@Component({\n selector: 'app-refernce-form-dialog',\n templateUrl: './refernce-form-dialog.component.html',\n styleUrls: ['./refernce-form-dialog.component.scss']\n})\nexport class RefernceFormDialogComponent implements OnInit {\nuser: string;\nshowPrev = false;\n\n constructor(\n public dialogRef: MatDialogRef,\n private substanceService: SubstanceService,\n private authService: AuthService,\n @Inject(MAT_DIALOG_DATA) public reference: SubstanceReference = {}\n ) {}\n\n ngOnInit() {\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(\n ((this.reference.docType && this.reference.docType !== '') &&\n (this.reference.citation && this.reference.citation !== '')) ? this.reference : null));\n }\n\n save(): void {\n this.dialogRef.close(this.reference);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n fillReference(ref: SubstanceReference) {\n delete ref.uuid;\n delete ref.lastEdited;\n delete ref.lastEditedBy;\n delete ref.created;\n delete ref.createdBy;\n delete ref._self;\n if ((ref.docType && ref.docType !== '') && (ref.citation && ref.citation !== '')) {\n this.reference = ref;\n }\n this.showPrev = false;\n }\n\n}\n"],"sourceRoot":"webpack:///","file":"8302.ba64c65b9c0507a1.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/834.1cf66dd81d3e2489.js b/frontend/src/main/resources/static/834.1cf66dd81d3e2489.js new file mode 100644 index 0000000..626e015 --- /dev/null +++ b/frontend/src/main/resources/static/834.1cf66dd81d3e2489.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[834],{90834:function(Bo,pe,b){b.r(pe),b.d(pe,{SubstanceNamesModule:function(){return Ho}});var w=b(1884),C=b(39117),_=b(36362),E=b(44014),Fe=b(46751),Pe=b(56101),Le=b(54025),Ae=b(42827),He=b(24874),ee=b(50253),Ne=b(63169),I=b(90587),t=b(86613),U=b(95758),Ve=b(54244),te=b(44770),he=b(43365),ie=b(68390),L=b(97217),ne=b(64316),fe=b(40089),me=b(65590),ae=b(91434),Be=b(1130),Ze=b(73430),ve=b(26439),ze=b(13821);function Ue(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Name "),t.qZA())}function Ke(o,l){1&o&&(t.TgZ(0,"span",38),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",39),t.qZA()),2&o&&t.s9C("matTooltip",t.xi3(1,1,"displayNameTitle","substance_names_name"))}function Ye(o,l){1&o&&(t.TgZ(0,"span",38),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",40),t.qZA()),2&o&&t.s9C("matTooltip",t.xi3(1,1,"preferredTitle","substance_names_name"))}function We(o,l){1&o&&t._UZ(0,"mat-icon",43)}function qe(o,l){if(1&o&&(t.TgZ(0,"span",41),t.YNc(1,We,1,0,"mat-icon",42),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function Je(o,l){if(1&o&&(t.TgZ(0,"td",34),t._UZ(1,"span",35),t.YNc(2,Ke,3,4,"span",36),t.YNc(3,Ye,3,4,"span",36),t.YNc(4,qe,2,1,"span",37),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.Q6J("innerHTML",i._nameHTML?i._nameHTML:i.name,t.oJD),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",1==i.preferred),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function Qe(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Std. Name "),t.qZA())}function Ge(o,l){1&o&&(t.TgZ(0,"span",38),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",39),t.qZA()),2&o&&t.s9C("matTooltip",t.xi3(1,1,"displayNameTitle","substance_names_name"))}function je(o,l){1&o&&t._UZ(0,"mat-icon",43)}function $e(o,l){if(1&o&&(t.TgZ(0,"span",41),t.YNc(1,je,1,0,"mat-icon",42),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function Xe(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.YNc(2,Ge,3,4,"span",36),t.YNc(3,$e,2,1,"span",37),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.hij("",i.stdName," "),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function et(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Type "),t.qZA())}function tt(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.typeVocabulary[i.type]&&e.typeVocabulary[i.type].display," ")}}function it(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Language "),t.qZA())}function nt(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.getLanguages(i)," ")}}function at(o,l){if(1&o&&(t.TgZ(0,"th",44),t.TgZ(1,"div",45),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",46),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.nameFilter)}}function ot(o,l){1&o&&(t.TgZ(0,"span",38),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",39),t.qZA()),2&o&&t.s9C("matTooltip",t.xi3(1,1,"displayNameTitle","substance_names_name"))}function rt(o,l){1&o&&t._UZ(0,"mat-icon",43)}function lt(o,l){if(1&o&&(t.TgZ(0,"span",41),t.YNc(1,rt,1,0,"mat-icon",42),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function st(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.YNc(2,ot,3,4,"span",36),t.YNc(3,lt,2,1,"span",37),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.hij("",i.name," "),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function ut(o,l){if(1&o&&(t.TgZ(0,"th",44),t.TgZ(1,"div",45),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",47),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.stdNameFilter)}}function ct(o,l){1&o&&(t.TgZ(0,"span",38),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",39),t.qZA()),2&o&&t.s9C("matTooltip",t.xi3(1,1,"displayNameTitle","substance_names_name"))}function dt(o,l){1&o&&t._UZ(0,"mat-icon",43)}function pt(o,l){if(1&o&&(t.TgZ(0,"span",41),t.YNc(1,dt,1,0,"mat-icon",42),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function ht(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.YNc(2,ct,3,4,"span",36),t.YNc(3,pt,2,1,"span",37),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.hij("",i.stdName," "),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function ft(o,l){if(1&o&&(t.TgZ(0,"mat-option",52),t._uU(1),t.qZA()),2&o){var i=l.$implicit;t.Q6J("value",i.display),t.xp6(1),t.Oqu(i.display)}}function mt(o,l){if(1&o&&(t.TgZ(0,"th",44),t.TgZ(1,"div",45),t.TgZ(2,"mat-form-field",48),t.TgZ(3,"mat-select",49),t.TgZ(4,"mat-select-trigger"),t._uU(5),t.qZA(),t.TgZ(6,"mat-option",50),t._uU(7,"Select Type Filter"),t.qZA(),t.YNc(8,ft,2,2,"mat-option",51),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.typeFilter),t.xp6(2),t.hij(" ",i.typeFilter.value?i.typeFilter.value:""," "),t.xp6(3),t.Q6J("ngForOf",i.typeFilterOptions)}}function vt(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.typeVocabulary[i.type]&&e.typeVocabulary[i.type].display," ")}}function gt(o,l){if(1&o&&(t.TgZ(0,"mat-option",52),t._uU(1),t.qZA()),2&o){var i=l.$implicit;t.Q6J("value",i.display),t.xp6(1),t.Oqu(i.display)}}function _t(o,l){if(1&o&&(t.TgZ(0,"th",44),t.TgZ(1,"div",45),t.TgZ(2,"mat-form-field",48),t.TgZ(3,"mat-select",49),t.TgZ(4,"mat-select-trigger"),t._uU(5),t.qZA(),t.TgZ(6,"mat-option",50),t._uU(7,"Select Language Filter"),t.qZA(),t.YNc(8,gt,2,2,"mat-option",51),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.langFilter),t.xp6(2),t.hij(" ",i.langFilter.value?i.langFilter.value:""," "),t.xp6(3),t.Q6J("ngForOf",i.langFilterOptions)}}function yt(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.getLanguages(i)," ")}}function bt(o,l){1&o&&t._UZ(0,"th",44)}function wt(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"th",44),t.TgZ(1,"div",45),t.TgZ(2,"button",11),t.NdJ("click",function(){return t.CHM(i),t.oxw().resetFilters()}),t._uU(3,"Reset"),t.qZA(),t.qZA(),t.qZA()}}function Ct(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Details "),t.qZA())}function kt(o,l){if(1&o&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=l.last;t.xp6(1),t.AsE("",i.nameOrg,"",e?"":", ","")}}function Tt(o,l){if(1&o&&(t.TgZ(0,"div",62),t.TgZ(1,"div",63),t._uU(2," Naming organizations: "),t.qZA(),t.TgZ(3,"div",64),t.YNc(4,kt,2,2,"span",65),t.qZA(),t.qZA()),2&o){var i=t.oxw(2).$implicit;t.xp6(4),t.Q6J("ngForOf",i.nameOrgs)}}function St(o,l){if(1&o&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=l.last;t.xp6(1),t.AsE("",i,"",e?"":", ","")}}function xt(o,l){if(1&o&&(t.TgZ(0,"div",62),t.TgZ(1,"div",63),t._uU(2," Domains: "),t.qZA(),t.TgZ(3,"div",64),t.YNc(4,St,2,2,"span",65),t.qZA(),t.qZA()),2&o){var i=t.oxw(2).$implicit;t.xp6(4),t.Q6J("ngForOf",i.domains)}}function Et(o,l){if(1&o&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=l.last;t.xp6(1),t.AsE("",i,"",e?"":", ","")}}function It(o,l){if(1&o&&(t.TgZ(0,"div",62),t.TgZ(1,"div",63),t._uU(2," Jurisdiction: "),t.qZA(),t.TgZ(3,"div",64),t.YNc(4,Et,2,2,"span",65),t.qZA(),t.qZA()),2&o){var i=t.oxw(2).$implicit;t.xp6(4),t.Q6J("ngForOf",i.nameJurisdiction)}}function Dt(o,l){if(1&o&&(t.TgZ(0,"h2",55),t._uU(1,"Details"),t.qZA(),t.TgZ(2,"div",56),t.TgZ(3,"table",57),t.TgZ(4,"tr"),t.TgZ(5,"td",58),t.YNc(6,Tt,5,1,"div",59),t.YNc(7,xt,5,1,"div",59),t.YNc(8,It,5,1,"div",59),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"div",60),t._UZ(10,"span",1),t.TgZ(11,"button",61),t._uU(12,"Close"),t.qZA(),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(6),t.Q6J("ngIf",i.nameOrgs&&i.nameOrgs.length>0),t.xp6(1),t.Q6J("ngIf",i.domains&&i.domains.length>0),t.xp6(1),t.Q6J("ngIf",i.nameJurisdiction&&i.nameJurisdiction.length>0)}}function Mt(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"td",34),t.TgZ(1,"button",53),t.NdJ("click",function(){t.CHM(i);var r=t.MAs(4);return t.oxw().openModal(r)}),t._uU(2," View"),t.qZA(),t.YNc(3,Dt,13,3,"ng-template",null,54,t.W1O),t.qZA()}if(2&o){var e=l.$implicit,n=t.oxw();t.xp6(1),t.Q6J("disabled",!(e.nameOrgs&&0!=e.nameOrgs.length||e.domains&&0!=e.domains.length||e.nameJurisdiction&&0!=e.nameJurisdiction.length))("ngClass",n.isButtonDisabled(e)?"disabled-btn":"")}}function Ot(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," References "),t.qZA())}function Rt(o,l){if(1&o&&(t.TgZ(0,"h2",55),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",56),t._UZ(3,"app-references-manager",68),t.qZA(),t.TgZ(4,"div",60),t._UZ(5,"span",1),t.TgZ(6,"button",61),t._uU(7,"Close"),t.qZA(),t.qZA()),2&o){var i=t.oxw().$implicit,e=t.oxw();t.xp6(3),t.Q6J("substance",e.substance)("references",i.references)}}function Ft(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"td",34),t.TgZ(1,"button",66),t.NdJ("click",function(){t.CHM(i);var a=t.MAs(4);return t.oxw().openModal(a)}),t._uU(2,"View"),t.qZA(),t.YNc(3,Rt,8,2,"ng-template",null,67,t.W1O),t.qZA()}if(2&o){var e=l.$implicit;t.xp6(1),t.Q6J("disabled",e.references.length<=0)}}function Pt(o,l){1&o&&t._UZ(0,"tr",69)}function Lt(o,l){if(1&o&&t._UZ(0,"tr",70),2&o){var i=t.oxw();t.Q6J("hidden",i.hideFilters)}}function At(o,l){1&o&&t._UZ(0,"tr",71)}var Ht=function(){return[5,10,25,100]},Nt=function(){var o=function(l){(0,Fe.Z)(e,l);var i=(0,Pe.Z)(e);function e(n,a,r,s,u){var c;return(0,C.Z)(this,e),(c=i.call(this,a)).dialog=n,c.gaService=a,c.cvService=r,c.overlayContainerService=s,c.utilsService=u,c.displayedColumns=["name","type","language","details","references"],c.displayedFilterColumns=["nameFilter","typeFilter","languageFilter","emptyFilter","resetFilter"],c.languageVocabulary={},c.typeVocabulary={},c.substanceUpdated=new ee.x,c.hideOrgs=!0,c.pageSize=10,c.filterSelectObj=[],c.typeFilterOn="false",c.nameFilter=new I.NI,c.stdNameFilter=new I.NI,c.typeFilter=new I.NI,c.langFilter=new I.NI,c.langFilterOptions=[],c.typeFilterOptions=[],c.nameType="name",c.hideFilters=!0,c.showHideFilterText="Show Filter",c}return(0,w.Z)(e,[{key:"ngOnInit",value:function(){var a=this;this.filterSelectObj=[{name:"Name Type",columnProp:"type",options:[]}],this.substanceUpdated.subscribe(function(r){a.substance=r,null!=a.substance&&null!=a.substance.names&&(a.names=a.substance.names,a.filtered=a.substance.names,a.countUpdate.emit(a.names.length),a.searchControl.valueChanges.subscribe(function(s){"false"===a.typeFilterOn?a.filterList(s,a.names,a.analyticsEventCategory):"true"===a.typeFilterOn&&(JSON.parse(JSON.stringify(a.filtered)),a.filterList(s,a.filterBackup,a.analyticsEventCategory))},function(s){console.log(s)}),a.getVocabularies(),a.filtered=a.names.slice().sort(function(s,u){var c=-1;return s.displayName?c=-1:u.displayName||u.preferred&&!s.preferred?c=1:!u.preferred&&s.preferred?c=-1:s.name.toUpperCase()>u.name.toUpperCase()&&(c=1),c})),a.pageChange(),a.filterSelectObj.filter(function(s){s.options=a.getFilterObject(a.names,s.columnProp)})}),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.nameFilter.valueChanges.subscribe(function(r){a.filterTable()}),this.stdNameFilter.valueChanges.subscribe(function(r){a.filterTable("std")}),this.typeFilter.valueChanges.subscribe(function(r){a.filterTable()}),this.langFilter.valueChanges.subscribe(function(r){a.filterTable()})}},{key:"toggleFilter",value:function(){this.hideFilters=!this.hideFilters,this.showHideFilterText=this.hideFilters?"Show Filter":"Hide Filter"}},{key:"updateType",value:function(a){this.nameType=a.value,"name"===a.value?(this.displayedColumns=["name","type","language","details","references"],this.displayedFilterColumns=["nameFilter","typeFilter","languageFilter","emptyFilter","resetFilter"]):"ascii"===a.value?(this.displayedColumns=["stdName","type","language","details","references"],this.displayedFilterColumns=["stdNameFilter","typeFilter","languageFilter","emptyFilter","resetFilter"]):(this.displayedColumns=["name","stdName","type","language","details","references"],this.displayedFilterColumns=["nameFilter","stdNameFilter","typeFilter","languageFilter","resetFilter"])}},{key:"filterTable",value:function(a){var r=null===this.nameFilter.value?"":this.nameFilter.value,s=null===this.stdNameFilter.value?"":this.stdNameFilter.value,u=null===this.langFilter.value?"":this.langFilter.value,c=null===this.typeFilter.value?"":this.typeFilter.value,d=void 0===this.getLangFilterValue(u)?"":this.getLangFilterValue(u).value,h=void 0===this.getTypeFilterValue(c)?"":this.getTypeFilterValue(c).value;if(this.filtered=[],a&&"std"===a){var f,v=(0,E.Z)(this.names);try{for(v.s();!(f=v.n()).done;){var g=f.value;(void 0===g.stdName?"":g.stdName).toLowerCase().includes(s.toLowerCase())&&this.isIncluded(g,h,"type")&&this.isIncluded(g,d,"lang")&&this.filtered.push(g)}}catch(D){v.e(D)}finally{v.f()}}else{var k,y=(0,E.Z)(this.names);try{for(y.s();!(k=y.n()).done;){var S=k.value;S.name.toLowerCase().includes(r.toLowerCase())&&this.isIncluded(S,h,"type")&&this.isIncluded(S,d,"lang")&&this.filtered.push(S)}}catch(D){y.e(D)}finally{y.f()}}this.pageChange()}},{key:"isIncluded",value:function(a,r,s){return"type"===s?!(r.length>0&&!a.type.includes(r)):"lang"===s?!(r.length>0&&!a.languages.includes(r)):void 0}},{key:"getLangFilterValue",value:function(a){var s,r=(0,E.Z)(this.langFilterOptions);try{for(r.s();!(s=r.n()).done;){var u=s.value;if(u.display===a)return u}}catch(c){r.e(c)}finally{r.f()}}},{key:"getLangFilterOptions",value:function(){var s,a=this,r=(0,E.Z)(this.names);try{for(r.s();!(s=r.n()).done;){var h,d=(0,E.Z)(s.value.languages);try{var v=function(){var m=h.value,k={value:m,display:a.languageVocabulary[m]&&a.languageVocabulary[m].display?a.languageVocabulary[m].display:m};a.langFilterOptions.filter(function(S){return S.value===m}).length>0||a.langFilterOptions.push(k)};for(d.s();!(h=d.n()).done;)v()}catch(f){d.e(f)}finally{d.f()}}}catch(f){r.e(f)}finally{r.f()}}},{key:"getTypeFilterValue",value:function(a){var s,r=(0,E.Z)(this.typeFilterOptions);try{for(r.s();!(s=r.n()).done;){var u=s.value;if(u.display===a)return u}}catch(c){r.e(c)}finally{r.f()}}},{key:"getTypeFilterOptions",value:function(){var s,a=this,r=(0,E.Z)(this.names);try{var u=function(){var h=s.value.type,f={value:h,display:a.typeVocabulary[h]&&a.typeVocabulary[h].display?a.typeVocabulary[h].display:h};a.typeFilterOptions.filter(function(g){return g.value===h}).length>0||a.typeFilterOptions.push(f)};for(r.s();!(s=r.n()).done;)u()}catch(c){r.e(c)}finally{r.f()}}},{key:"filterChange",value:function(a,r){var s=this;this.typeFilterOn="false";var u=[];this.filterBackup=[],this.names.forEach(function(c){JSON.stringify(c[a.columnProp]).toLowerCase().indexOf(r.target.value.toLowerCase())>-1&&s.filterBackup.push(c)}),setTimeout(function(){s.names.forEach(function(c){JSON.stringify(c[a.columnProp]).toLowerCase().indexOf(r.target.value.toLowerCase())>-1&&u.push(c)}),s.filtered=u,s.typeFilterOn="true",s.page=0,s.pageChange()},50)}},{key:"setDisplay",value:function(a,r){return"type"===r?this.typeVocabulary[a]&&this.typeVocabulary[a].display?this.typeVocabulary[a].display:a:"language"===r&&this.languageVocabulary[a]&&this.languageVocabulary[a].display?this.typeVocabulary[a].display:a}},{key:"getFilterObject",value:function(a,r){var s=[];return a.filter(function(u){return s.includes(u[r])||s.push(u[r]),u}),s}},{key:"sortData",value:function(a){var r=this,s=this.names.slice();if(!a.active||""===a.direction)return this.filtered=s,void this.pageChange();this.filtered=s.sort(function(u,c){var d="asc"===a.direction;switch(a.active){case"name":return r.utilsService.compare(u.name?u.name.toUpperCase():"",c.name?c.name.toUpperCase():"",d);case"type":return r.utilsService.compare(u.type?u.type:"",c.type?c.type:"",d);case"language":return r.utilsService.compare(r.getLanguages(u),r.getLanguages(c),d);default:return 0}}),this.pageChange()}},{key:"resetFilters",value:function(){this.filterSelectObj.forEach(function(a,r){a.modelValue=void 0}),this.typeFilterOn="false",this.filtered=this.names,this.pageChange(),this.searchControl.setValue(""),this.nameFilter.setValue(""),this.stdNameFilter.setValue(""),this.langFilter.setValue(""),this.typeFilter.setValue("")}},{key:"getVocabularies",value:function(){var a=this;this.cvService.getDomainVocabulary("LANGUAGE","NAME_TYPE").subscribe(function(r){a.languageVocabulary=r.LANGUAGE&&r.LANGUAGE.dictionary,a.typeVocabulary=r.NAME_TYPE&&r.NAME_TYPE.dictionary,a.getLangFilterOptions(),a.getTypeFilterOptions()})}},{key:"getLanguages",value:function(a){var r=this;if(null!=this.languageVocabulary&&a.languages&&a.languages.length){var s=[];return a.languages.forEach(function(u){null!=r.languageVocabulary[u]&&s.push(r.languageVocabulary[u].display)}),s.join(", ")}return""}},{key:"openModal",value:function(a){var r=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var s=this.dialog.open(a,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",s.afterClosed().subscribe(function(u){r.overlayContainer.style.zIndex=null})}},{key:"isButtonDisabled",value:function(a){return!(a.nameOrgs&&0!=a.nameOrgs.length||a.domains&&0!=a.domains.length||a.nameJurisdiction&&0!=a.nameJurisdiction.length)}}]),e}(Le.u);return o.\u0275fac=function(i){return new(i||o)(t.Y36(U.uw),t.Y36(He.$),t.Y36(Ae.I),t.Y36(Ve.Xj),t.Y36(Ne.FW))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-names"]],features:[t.qOj],decls:58,vars:14,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"flex-row","right"],[1,"name-view"],[1,"name-view-label"],[1,"type",3,"change"],["value","name",3,"checked"],["value","ascii",3,"checked"],["value","both",3,"checked"],["mat-flat-button","","color","warn",1,"mat-button","mat-button-primary",3,"click"],[1,"responsive"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","name"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","stdName"],["matColumnDef","type"],["matColumnDef","language"],["matColumnDef","nameFilter"],["mat-header-cell","",4,"matHeaderCellDef"],["matColumnDef","stdNameFilter"],["matColumnDef","typeFilter"],["matColumnDef","languageFilter"],["matColumnDef","emptyFilter"],["matColumnDef","resetFilter"],["matColumnDef","details"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-header-row","",3,"hidden",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],[3,"innerHTML"],[3,"matTooltip",4,"ngIf"],["matTooltip","Not Public",4,"ngIf"],[3,"matTooltip"],["svgIcon","done",1,"icon-align","blue-font"],["svgIcon","done",1,"icon-align","grey-font"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["mat-header-cell",""],[1,"tableFilter"],["matInput","","placeholder","Name Filter",1,"form-field",3,"formControl"],["matInput","","placeholder","Std. Name Filter",1,"form-field",3,"formControl"],["appearance","fill"],[3,"formControl"],["selected","",3,"value"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","ngClass","click"],["detailTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[1,"details-table","mat-table"],[1,"mat-cell"],["class","detail",4,"ngIf"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],[1,"detail"],[1,"subhead"],[1,"subval"],[4,"ngFor","ngForOf"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],[3,"substance","references"],["mat-header-row",""],["mat-header-row","",3,"hidden"],["mat-row",""]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"div",5),t.TgZ(6,"span",6),t._uU(7,"Name View:"),t.qZA(),t.TgZ(8,"mat-radio-group",7),t.NdJ("change",function(a){return e.updateType(a)}),t.TgZ(9,"mat-radio-button",8),t._uU(10,"Name (UTF-8)"),t.qZA(),t.TgZ(11,"mat-radio-button",9),t._uU(12,"Std. Name (ASCII)"),t.qZA(),t.TgZ(13,"mat-radio-button",10),t._uU(14,"Both"),t.qZA(),t.qZA(),t.qZA(),t._UZ(15,"span",1),t.TgZ(16,"mat-label",11),t.NdJ("click",function(){return e.toggleFilter()}),t._uU(17),t.qZA(),t.qZA(),t.TgZ(18,"div",12),t.TgZ(19,"table",13),t.NdJ("matSortChange",function(a){return e.sortData(a)}),t.ynx(20,14),t.YNc(21,Ue,2,0,"th",15),t.YNc(22,Je,5,4,"td",16),t.BQk(),t.ynx(23,17),t.YNc(24,Qe,2,0,"th",15),t.YNc(25,Xe,4,3,"td",16),t.BQk(),t.ynx(26,18),t.YNc(27,et,2,0,"th",15),t.YNc(28,tt,2,1,"td",16),t.BQk(),t.ynx(29,19),t.YNc(30,it,2,0,"th",15),t.YNc(31,nt,2,1,"td",16),t.BQk(),t.ynx(32,20),t.YNc(33,at,4,1,"th",21),t.YNc(34,st,4,3,"td",16),t.BQk(),t.ynx(35,22),t.YNc(36,ut,4,1,"th",21),t.YNc(37,ht,4,3,"td",16),t.BQk(),t.ynx(38,23),t.YNc(39,mt,9,3,"th",21),t.YNc(40,vt,2,1,"td",16),t.BQk(),t.ynx(41,24),t.YNc(42,_t,9,3,"th",21),t.YNc(43,yt,2,1,"td",16),t.BQk(),t.ynx(44,25),t.YNc(45,bt,1,0,"th",21),t.BQk(),t.ynx(46,26),t.YNc(47,wt,4,0,"th",21),t.BQk(),t.ynx(48,27),t.YNc(49,Ct,2,0,"th",15),t.YNc(50,Mt,5,2,"td",16),t.BQk(),t.ynx(51,28),t.YNc(52,Ot,2,0,"th",15),t.YNc(53,Ft,5,1,"td",16),t.BQk(),t.YNc(54,Pt,1,0,"tr",29),t.YNc(55,Lt,1,1,"tr",30),t.YNc(56,At,1,0,"tr",31),t.qZA(),t.qZA(),t.TgZ(57,"mat-paginator",32),t.NdJ("page",function(a){return e.pageChange(a,e.analyticsEventCategory)}),t.qZA()),2&i&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",e.searchControl),t.xp6(6),t.Q6J("checked","name"===e.nameType),t.xp6(2),t.Q6J("checked","ascii"===e.nameType),t.xp6(2),t.Q6J("checked","both"===e.nameType),t.xp6(4),t.Oqu(e.showHideFilterText),t.xp6(2),t.Q6J("dataSource",e.paged),t.xp6(35),t.Q6J("matHeaderRowDef",e.displayedColumns),t.xp6(1),t.Q6J("matHeaderRowDef",e.displayedFilterColumns),t.xp6(1),t.Q6J("matRowDefColumns",e.displayedColumns),t.xp6(1),t.Q6J("length",e.filtered&&e.filtered.length||0)("pageSize",10)("pageSizeOptions",t.DdM(13,Ht)))},directives:[te.KE,he.Nt,I.Fj,I.JJ,I.oH,ie.VQ,ie.U0,te.hX,L.BZ,ne.YE,L.w1,L.fO,L.ge,ne.nU,L.Dz,L.ev,_.O5,fe.gM,me.Hw,ae.gD,ae.$L,Be.ey,_.sg,_.mk,U.uh,U.xY,U.H8,U.ZT,Ze.C,L.as,L.XQ,L.nj,L.Gk,ve.NW],pipes:[ze.f],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.detail[_ngcontent-%COMP%]{padding:10px}.mat-radio-button[_ngcontent-%COMP%]{padding-left:30px}.name-view[_ngcontent-%COMP%]{margin-top:16px}.name-view-label[_ngcontent-%COMP%]{font-weight:500}.right[_ngcontent-%COMP%]{-ms-flex-pack:right;justify-content:right;-ms-flex-align:right;align-items:right;padding-top:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.structure-image[_ngcontent-%COMP%]{width:150px;height:auto}.thumb-col[_ngcontent-%COMP%]{max-width:400px}.subhead[_ngcontent-%COMP%]{display:inline-block;width:150px}.subval[_ngcontent-%COMP%]{display:inline}.disabled-btn[_ngcontent-%COMP%]{color:var(--box-shadow-color-5);background-color:var(--box-shadow-color-3)}"]}),o}(),Vt=b(64061),Bt=b(33865),Zt=b(38277),T=function(){function o(){(0,C.Z)(this,o)}return(0,w.Z)(o,null,[{key:"equals",value:function(i,e,n){return n?this.resolveFieldData(i,n)===this.resolveFieldData(e,n):this.equalsByValue(i,e)}},{key:"equalsByValue",value:function(i,e){if(i===e)return!0;if(i&&e&&"object"==typeof i&&"object"==typeof e){var r,s,u,n=Array.isArray(i),a=Array.isArray(e);if(n&&a){if((s=i.length)!=e.length)return!1;for(r=s;0!=r--;)if(!this.equalsByValue(i[r],e[r]))return!1;return!0}if(n!=a)return!1;var c=i instanceof Date,d=e instanceof Date;if(c!=d)return!1;if(c&&d)return i.getTime()==e.getTime();var h=i instanceof RegExp,v=e instanceof RegExp;if(h!=v)return!1;if(h&&v)return i.toString()==e.toString();var f=Object.keys(i);if((s=f.length)!==Object.keys(e).length)return!1;for(r=s;0!=r--;)if(!Object.prototype.hasOwnProperty.call(e,f[r]))return!1;for(r=s;0!=r--;)if(!this.equalsByValue(i[u=f[r]],e[u]))return!1;return!0}return i!=i&&e!=e}},{key:"resolveFieldData",value:function(i,e){if(i&&e){if(this.isFunction(e))return e(i);if(-1==e.indexOf("."))return i[e];for(var n=e.split("."),a=i,r=0,s=n.length;r=i.length&&(n%=i.length,e%=i.length),i.splice(n,0,i.splice(e,1)[0]))}},{key:"insertIntoOrderedArray",value:function(i,e,n,a){if(n.length>0){for(var r=!1,s=0;se){n.splice(s,0,i),r=!0;break}r||n.push(i)}else n.push(i)}},{key:"findIndexInList",value:function(i,e){var n=-1;if(e)for(var a=0;a-1&&(i=i.replace(/[\xC0-\xC5]/g,"A").replace(/[\xC6]/g,"AE").replace(/[\xC7]/g,"C").replace(/[\xC8-\xCB]/g,"E").replace(/[\xCC-\xCF]/g,"I").replace(/[\xD0]/g,"D").replace(/[\xD1]/g,"N").replace(/[\xD2-\xD6\xD8]/g,"O").replace(/[\xD9-\xDC]/g,"U").replace(/[\xDD]/g,"Y").replace(/[\xDE]/g,"P").replace(/[\xE0-\xE5]/g,"a").replace(/[\xE6]/g,"ae").replace(/[\xE7]/g,"c").replace(/[\xE8-\xEB]/g,"e").replace(/[\xEC-\xEF]/g,"i").replace(/[\xF1]/g,"n").replace(/[\xF2-\xF6\xF8]/g,"o").replace(/[\xF9-\xFC]/g,"u").replace(/[\xFE]/g,"p").replace(/[\xFD\xFF]/g,"y")),i}},{key:"isEmpty",value:function(i){return null==i||""===i||Array.isArray(i)&&0===i.length||!(i instanceof Date)&&"object"==typeof i&&0===Object.keys(i).length}},{key:"isNotEmpty",value:function(i){return!this.isEmpty(i)}}]),o}(),ge=0;function _e(){return ge++,"".concat("pr_id_").concat(ge)}var A=function zt(){var o=[],n=function(r){return r&&parseInt(r.style.zIndex,10)||0};return{get:n,set:function(r,s,u){s&&(s.style.zIndex=String(function(r,s){var u=o.length>0?o[o.length-1]:{key:r,value:s},c=u.value+(u.key===r?0:s)+1;return o.push({key:r,value:c}),c}(r,u)))},clear:function(r){r&&(function(r){o=o.filter(function(s){return s.value!==r})}(n(r)),r.style.zIndex="")},getCurrent:function(){return o.length>0?o[o.length-1].value:0}}}(),M=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.STARTS_WITH="startsWith",o.CONTAINS="contains",o.NOT_CONTAINS="notContains",o.ENDS_WITH="endsWith",o.EQUALS="equals",o.NOT_EQUALS="notEquals",o.IN="in",o.LESS_THAN="lt",o.LESS_THAN_OR_EQUAL_TO="lte",o.GREATER_THAN="gt",o.GREATER_THAN_OR_EQUAL_TO="gte",o.BETWEEN="between",o.IS="is",o.IS_NOT="isNot",o.BEFORE="before",o.AFTER="after",o.DATE_IS="dateIs",o.DATE_IS_NOT="dateIsNot",o.DATE_BEFORE="dateBefore",o.DATE_AFTER="dateAfter",o}(),q=function(){var o=function(){function l(){(0,C.Z)(this,l),this.ripple=!1,this.filterMatchModeOptions={text:[M.STARTS_WITH,M.CONTAINS,M.NOT_CONTAINS,M.ENDS_WITH,M.EQUALS,M.NOT_EQUALS],numeric:[M.EQUALS,M.NOT_EQUALS,M.LESS_THAN,M.LESS_THAN_OR_EQUAL_TO,M.GREATER_THAN,M.GREATER_THAN_OR_EQUAL_TO],date:[M.DATE_IS,M.DATE_IS_NOT,M.DATE_BEFORE,M.DATE_AFTER]},this.translation={startsWith:"Starts with",contains:"Contains",notContains:"Not contains",endsWith:"Ends with",equals:"Equals",notEquals:"Not equals",noFilter:"No Filter",lt:"Less than",lte:"Less than or equal to",gt:"Greater than",gte:"Greater than or equal to",is:"Is",isNot:"Is not",before:"Before",after:"After",dateIs:"Date is",dateIsNot:"Date is not",dateBefore:"Date is before",dateAfter:"Date is after",clear:"Clear",apply:"Apply",matchAll:"Match All",matchAny:"Match Any",addRule:"Add Rule",removeRule:"Remove Rule",accept:"Yes",reject:"No",choose:"Choose",upload:"Upload",cancel:"Cancel",dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dateFormat:"mm/dd/yy",firstDayOfWeek:0,today:"Today",weekHeader:"Wk",weak:"Weak",medium:"Medium",strong:"Strong",passwordPrompt:"Enter a password",emptyMessage:"No results found",emptyFilterMessage:"No results found"},this.zIndex={modal:1100,overlay:1e3,menu:1e3,tooltip:1100},this.translationSource=new ee.x,this.translationObserver=this.translationSource.asObservable()}return(0,w.Z)(l,[{key:"getTranslation",value:function(e){return this.translation[e]}},{key:"setTranslation",value:function(e){this.translation=Object.assign(Object.assign({},this.translation),e),this.translationSource.next(this.translation)}}]),l}();return o.\u0275fac=function(i){return new(i||o)},o.\u0275prov=t.Yz7({token:o,factory:o.\u0275fac,providedIn:"root"}),o}(),R=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.STARTS_WITH="startsWith",o.CONTAINS="contains",o.NOT_CONTAINS="notContains",o.ENDS_WITH="endsWith",o.EQUALS="equals",o.NOT_EQUALS="notEquals",o.NO_FILTER="noFilter",o.LT="lt",o.LTE="lte",o.GT="gt",o.GTE="gte",o.IS="is",o.IS_NOT="isNot",o.BEFORE="before",o.AFTER="after",o.CLEAR="clear",o.APPLY="apply",o.MATCH_ALL="matchAll",o.MATCH_ANY="matchAny",o.ADD_RULE="addRule",o.REMOVE_RULE="removeRule",o.ACCEPT="accept",o.REJECT="reject",o.CHOOSE="choose",o.UPLOAD="upload",o.CANCEL="cancel",o.DAY_NAMES="dayNames",o.DAY_NAMES_SHORT="dayNamesShort",o.DAY_NAMES_MIN="dayNamesMin",o.MONTH_NAMES="monthNames",o.MONTH_NAMES_SHORT="monthNamesShort",o.FIRST_DAY_OF_WEEK="firstDayOfWeek",o.TODAY="today",o.WEEK_HEADER="weekHeader",o.WEAK="weak",o.MEDIUM="medium",o.STRONG="strong",o.PASSWORD_PROMPT="passwordPrompt",o.EMPTY_MESSAGE="emptyMessage",o.EMPTY_FILTER_MESSAGE="emptyFilterMessage",o}(),Ut=function(){var o=function(){function l(){var i=this;(0,C.Z)(this,l),this.filters={startsWith:function(n,a,r){if(null==a||""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r);return T.removeAccents(n.toString()).toLocaleLowerCase(r).slice(0,s.length)===s},contains:function(n,a,r){if(null==a||"string"==typeof a&&""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r);return-1!==T.removeAccents(n.toString()).toLocaleLowerCase(r).indexOf(s)},notContains:function(n,a,r){if(null==a||"string"==typeof a&&""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r);return-1===T.removeAccents(n.toString()).toLocaleLowerCase(r).indexOf(s)},endsWith:function(n,a,r){if(null==a||""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r),u=T.removeAccents(n.toString()).toLocaleLowerCase(r);return-1!==u.indexOf(s,u.length-s.length)},equals:function(n,a,r){return null==a||"string"==typeof a&&""===a.trim()||null!=n&&(n.getTime&&a.getTime?n.getTime()===a.getTime():T.removeAccents(n.toString()).toLocaleLowerCase(r)==T.removeAccents(a.toString()).toLocaleLowerCase(r))},notEquals:function(n,a,r){return!(null==a||"string"==typeof a&&""===a.trim()||null!=n&&(n.getTime&&a.getTime?n.getTime()===a.getTime():T.removeAccents(n.toString()).toLocaleLowerCase(r)==T.removeAccents(a.toString()).toLocaleLowerCase(r)))},in:function(n,a){if(null==a||0===a.length)return!0;for(var r=0;ra.getTime():n>a)},gte:function(n,a,r){return null==a||null!=n&&(n.getTime&&a.getTime?n.getTime()>=a.getTime():n>=a)},is:function(n,a,r){return i.filters.equals(n,a,r)},isNot:function(n,a,r){return i.filters.notEquals(n,a,r)},before:function(n,a,r){return i.filters.lt(n,a,r)},after:function(n,a,r){return i.filters.gt(n,a,r)},dateIs:function(n,a){return null==a||null!=n&&n.toDateString()===a.toDateString()},dateIsNot:function(n,a){return null==a||null!=n&&n.toDateString()!==a.toDateString()},dateBefore:function(n,a){return null==a||null!=n&&n.getTime()a.getTime()}}}return(0,w.Z)(l,[{key:"filter",value:function(e,n,a,r,s){var u=[];if(e){var d,c=(0,E.Z)(e);try{for(c.s();!(d=c.n()).done;){var f,h=d.value,v=(0,E.Z)(n);try{for(v.s();!(f=v.n()).done;){var m=T.resolveFieldData(h,f.value);if(this.filters[r](m,a,s)){u.push(h);break}}}catch(y){v.e(y)}finally{v.f()}}}catch(y){c.e(y)}finally{c.f()}}return u}},{key:"register",value:function(e,n){this.filters[e]=n}}]),l}();return o.\u0275fac=function(i){return new(i||o)},o.\u0275prov=t.Yz7({token:o,factory:o.\u0275fac,providedIn:"root"}),o}(),ye=function(){var o=function(){function l(){(0,C.Z)(this,l),this.clickSource=new ee.x,this.clickObservable=this.clickSource.asObservable()}return(0,w.Z)(l,[{key:"add",value:function(e){e&&this.clickSource.next(e)}}]),l}();return o.\u0275fac=function(i){return new(i||o)},o.\u0275prov=t.Yz7({token:o,factory:o.\u0275fac,providedIn:"root"}),o}(),be=function(){var o=function(){function l(i){(0,C.Z)(this,l),this.template=i}return(0,w.Z)(l,[{key:"getType",value:function(){return this.name}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.Rgc))},o.\u0275dir=t.lG2({type:o,selectors:[["","pTemplate",""]],inputs:{type:"type",name:["pTemplate","name"]}}),o}(),Z=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez]]}),o}(),Kt=b(70350),H=b(24426),x=b(31631),p=function(){var o=function(){function l(){(0,C.Z)(this,l)}return(0,w.Z)(l,null,[{key:"addClass",value:function(e,n){e.classList?e.classList.add(n):e.className+=" "+n}},{key:"addMultipleClasses",value:function(e,n){if(e.classList)for(var a=n.trim().split(" "),r=0;ru.height?(c=-1*a.height,e.style.transformOrigin="bottom",s.top+c<0&&(c=-1*s.top)):(c=r,e.style.transformOrigin="top"),d=a.width>u.width?-1*s.left:s.left+a.width>u.width?-1*(s.left+a.width-u.width):0,e.style.top=c+"px",e.style.left=d+"px"}},{key:"absolutePosition",value:function(e,n){var g,m,a=e.offsetParent?{width:e.offsetWidth,height:e.offsetHeight}:this.getHiddenElementDimensions(e),r=a.height,s=a.width,u=n.offsetHeight,c=n.offsetWidth,d=n.getBoundingClientRect(),h=this.getWindowScrollTop(),v=this.getWindowScrollLeft(),f=this.getViewport();d.top+u+r>f.height?(g=d.top+h-r,e.style.transformOrigin="bottom",g<0&&(g=h)):(g=u+d.top+h,e.style.transformOrigin="top"),m=d.left+s>f.width?Math.max(0,d.left+v+c-s):d.left+v,e.style.top=g+"px",e.style.left=m+"px"}},{key:"getParents",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return null===e.parentNode?n:this.getParents(e.parentNode,n.concat([e.parentNode]))}},{key:"getScrollableParents",value:function(e){var n=[];if(e){var c,a=this.getParents(e),r=/(auto|scroll)/,s=function(S){var D=window.getComputedStyle(S,null);return r.test(D.getPropertyValue("overflow"))||r.test(D.getPropertyValue("overflowX"))||r.test(D.getPropertyValue("overflowY"))},u=(0,E.Z)(a);try{for(u.s();!(c=u.n()).done;){var d=c.value,h=1===d.nodeType&&d.dataset.scrollselectors;if(h){var g,v=h.split(","),f=(0,E.Z)(v);try{for(f.s();!(g=f.n()).done;){var y=this.findSingle(d,g.value);y&&s(y)&&n.push(y)}}catch(k){f.e(k)}finally{f.f()}}9!==d.nodeType&&s(d)&&n.push(d)}}catch(k){u.e(k)}finally{u.f()}}return n}},{key:"getHiddenElementOuterHeight",value:function(e){e.style.visibility="hidden",e.style.display="block";var n=e.offsetHeight;return e.style.display="none",e.style.visibility="visible",n}},{key:"getHiddenElementOuterWidth",value:function(e){e.style.visibility="hidden",e.style.display="block";var n=e.offsetWidth;return e.style.display="none",e.style.visibility="visible",n}},{key:"getHiddenElementDimensions",value:function(e){var n={};return e.style.visibility="hidden",e.style.display="block",n.width=e.offsetWidth,n.height=e.offsetHeight,e.style.display="none",e.style.visibility="visible",n}},{key:"scrollInView",value:function(e,n){var a=getComputedStyle(e).getPropertyValue("borderTopWidth"),r=a?parseFloat(a):0,s=getComputedStyle(e).getPropertyValue("paddingTop"),u=s?parseFloat(s):0,c=e.getBoundingClientRect(),h=n.getBoundingClientRect().top+document.body.scrollTop-(c.top+document.body.scrollTop)-r-u,v=e.scrollTop,f=e.clientHeight,g=this.getOuterHeight(n);h<0?e.scrollTop=v+h:h+g>f&&(e.scrollTop=v+h-f+g)}},{key:"fadeIn",value:function(e,n){e.style.opacity=0;var a=+new Date,r=0;!function u(){r=+e.style.opacity.replace(",",".")+((new Date).getTime()-a)/n,e.style.opacity=r,a=+new Date,+r<1&&(window.requestAnimationFrame&&requestAnimationFrame(u)||setTimeout(u,16))}()}},{key:"fadeOut",value:function(e,n){var a=1,u=50/n,c=setInterval(function(){(a-=u)<=0&&(a=0,clearInterval(c)),e.style.opacity=a},50)}},{key:"getWindowScrollTop",value:function(){var e=document.documentElement;return(window.pageYOffset||e.scrollTop)-(e.clientTop||0)}},{key:"getWindowScrollLeft",value:function(){var e=document.documentElement;return(window.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}},{key:"matches",value:function(e,n){var a=Element.prototype;return(a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.msMatchesSelector||function(s){return-1!==[].indexOf.call(document.querySelectorAll(s),this)}).call(e,n)}},{key:"getOuterWidth",value:function(e,n){var a=e.offsetWidth;if(n){var r=getComputedStyle(e);a+=parseFloat(r.marginLeft)+parseFloat(r.marginRight)}return a}},{key:"getHorizontalPadding",value:function(e){var n=getComputedStyle(e);return parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)}},{key:"getHorizontalMargin",value:function(e){var n=getComputedStyle(e);return parseFloat(n.marginLeft)+parseFloat(n.marginRight)}},{key:"innerWidth",value:function(e){var n=e.offsetWidth,a=getComputedStyle(e);return n+(parseFloat(a.paddingLeft)+parseFloat(a.paddingRight))}},{key:"width",value:function(e){var n=e.offsetWidth,a=getComputedStyle(e);return n-(parseFloat(a.paddingLeft)+parseFloat(a.paddingRight))}},{key:"getInnerHeight",value:function(e){var n=e.offsetHeight,a=getComputedStyle(e);return n+(parseFloat(a.paddingTop)+parseFloat(a.paddingBottom))}},{key:"getOuterHeight",value:function(e,n){var a=e.offsetHeight;if(n){var r=getComputedStyle(e);a+=parseFloat(r.marginTop)+parseFloat(r.marginBottom)}return a}},{key:"getHeight",value:function(e){var n=e.offsetHeight,a=getComputedStyle(e);return n-(parseFloat(a.paddingTop)+parseFloat(a.paddingBottom)+parseFloat(a.borderTopWidth)+parseFloat(a.borderBottomWidth))}},{key:"getWidth",value:function(e){var n=e.offsetWidth,a=getComputedStyle(e);return n-(parseFloat(a.paddingLeft)+parseFloat(a.paddingRight)+parseFloat(a.borderLeftWidth)+parseFloat(a.borderRightWidth))}},{key:"getViewport",value:function(){var e=window,n=document,a=n.documentElement,r=n.getElementsByTagName("body")[0];return{width:e.innerWidth||a.clientWidth||r.clientWidth,height:e.innerHeight||a.clientHeight||r.clientHeight}}},{key:"getOffset",value:function(e){var n=e.getBoundingClientRect();return{top:n.top+(window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0),left:n.left+(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0)}}},{key:"replaceElementWith",value:function(e,n){var a=e.parentNode;if(!a)throw"Can't replace element";return a.replaceChild(n,e)}},{key:"getUserAgent",value:function(){return navigator.userAgent}},{key:"isIE",value:function(){var e=window.navigator.userAgent;return e.indexOf("MSIE ")>0||(e.indexOf("Trident/")>0?(e.indexOf("rv:"),!0):e.indexOf("Edge/")>0)}},{key:"isIOS",value:function(){return/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream}},{key:"isAndroid",value:function(){return/(android)/i.test(navigator.userAgent)}},{key:"isTouchDevice",value:function(){return"ontouchstart"in window||navigator.maxTouchPoints>0}},{key:"appendChild",value:function(e,n){if(this.isElement(n))n.appendChild(e);else{if(!n.el||!n.el.nativeElement)throw"Cannot append "+n+" to "+e;n.el.nativeElement.appendChild(e)}}},{key:"removeChild",value:function(e,n){if(this.isElement(n))n.removeChild(e);else{if(!n.el||!n.el.nativeElement)throw"Cannot remove "+e+" from "+n;n.el.nativeElement.removeChild(e)}}},{key:"removeElement",value:function(e){"remove"in Element.prototype?e.remove():e.parentNode.removeChild(e)}},{key:"isElement",value:function(e){return"object"==typeof HTMLElement?e instanceof HTMLElement:e&&"object"==typeof e&&null!==e&&1===e.nodeType&&"string"==typeof e.nodeName}},{key:"calculateScrollbarWidth",value:function(e){if(e){var n=getComputedStyle(e);return e.offsetWidth-e.clientWidth-parseFloat(n.borderLeftWidth)-parseFloat(n.borderRightWidth)}if(null!==this.calculatedScrollbarWidth)return this.calculatedScrollbarWidth;var a=document.createElement("div");a.className="p-scrollbar-measure",document.body.appendChild(a);var r=a.offsetWidth-a.clientWidth;return document.body.removeChild(a),this.calculatedScrollbarWidth=r,r}},{key:"calculateScrollbarHeight",value:function(){if(null!==this.calculatedScrollbarHeight)return this.calculatedScrollbarHeight;var e=document.createElement("div");e.className="p-scrollbar-measure",document.body.appendChild(e);var n=e.offsetHeight-e.clientHeight;return document.body.removeChild(e),this.calculatedScrollbarWidth=n,n}},{key:"invokeElementMethod",value:function(e,n,a){e[n].apply(e,a)}},{key:"clearSelection",value:function(){if(window.getSelection)window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().rangeCount>0&&window.getSelection().getRangeAt(0).getClientRects().length>0&&window.getSelection().removeAllRanges();else if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(e){}}},{key:"getBrowser",value:function(){if(!this.browser){var e=this.resolveUserAgent();this.browser={},e.browser&&(this.browser[e.browser]=!0,this.browser.version=e.version),this.browser.chrome?this.browser.webkit=!0:this.browser.webkit&&(this.browser.safari=!0)}return this.browser}},{key:"resolveUserAgent",value:function(){var e=navigator.userAgent.toLowerCase(),n=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:n[1]||"",version:n[2]||"0"}}},{key:"isInteger",value:function(e){return Number.isInteger?Number.isInteger(e):"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}},{key:"isHidden",value:function(e){return null===e.offsetParent}},{key:"getFocusableElements",value:function(e){var s,n=l.find(e,'button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n [href][clientHeight][clientWidth]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]), select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]), [tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n [contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]):not(.p-disabled)'),a=[],r=(0,E.Z)(n);try{for(r.s();!(s=r.n()).done;){var u=s.value;"none"!=getComputedStyle(u).display&&"hidden"!=getComputedStyle(u).visibility&&a.push(u)}}catch(c){r.e(c)}finally{r.f()}return a}},{key:"generateZIndex",value:function(){return this.zindex=this.zindex||999,++this.zindex}}]),l}();return o.zindex=1e3,o.calculatedScrollbarWidth=null,o.calculatedScrollbarHeight=null,o}(),oe=function(){function o(l){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){};(0,C.Z)(this,o),this.element=l,this.listener=i}return(0,w.Z)(o,[{key:"bindScrollListener",value:function(){this.scrollableParents=p.getScrollableParents(this.element);for(var i=0;iu.width||a<0||n<0||n+s>u.height}},{key:"onWindowResize",value:function(e){this.hide()}},{key:"bindDocumentResizeListener",value:function(){var e=this;this.zone.runOutsideAngular(function(){e.resizeListener=e.onWindowResize.bind(e),window.addEventListener("resize",e.resizeListener)})}},{key:"unbindDocumentResizeListener",value:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)}},{key:"bindScrollListener",value:function(){var e=this;this.scrollHandler||(this.scrollHandler=new oe(this.el.nativeElement,function(){e.container&&e.hide()})),this.scrollHandler.bindScrollListener()}},{key:"unbindScrollListener",value:function(){this.scrollHandler&&this.scrollHandler.unbindScrollListener()}},{key:"unbindEvents",value:function(){if("hover"===this.getOption("tooltipEvent"))this.el.nativeElement.removeEventListener("mouseenter",this.mouseEnterListener),this.el.nativeElement.removeEventListener("mouseleave",this.mouseLeaveListener),this.el.nativeElement.removeEventListener("click",this.clickListener);else if("focus"===this.getOption("tooltipEvent")){var e=this.getTarget(this.el.nativeElement);e.removeEventListener("focus",this.focusListener),e.removeEventListener("blur",this.blurListener)}this.unbindDocumentResizeListener()}},{key:"remove",value:function(){this.container&&this.container.parentElement&&("body"===this.getOption("appendTo")?document.body.removeChild(this.container):"target"===this.getOption("appendTo")?this.el.nativeElement.removeChild(this.container):p.removeChild(this.container,this.getOption("appendTo"))),this.unbindDocumentResizeListener(),this.unbindScrollListener(),this.clearTimeouts(),this.container=null,this.scrollHandler=null}},{key:"clearShowTimeout",value:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null)}},{key:"clearHideTimeout",value:function(){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=null)}},{key:"clearTimeouts",value:function(){this.clearShowTimeout(),this.clearHideTimeout()}},{key:"ngOnDestroy",value:function(){this.unbindEvents(),this.container&&A.clear(this.container),this.remove(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null)}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.SBq),t.Y36(t.R0b),t.Y36(q))},o.\u0275dir=t.lG2({type:o,selectors:[["","pTooltip",""]],hostAttrs:[1,"p-element"],inputs:{tooltipPosition:"tooltipPosition",tooltipEvent:"tooltipEvent",appendTo:"appendTo",positionStyle:"positionStyle",tooltipStyleClass:"tooltipStyleClass",tooltipZIndex:"tooltipZIndex",escape:"escape",showDelay:"showDelay",hideDelay:"hideDelay",life:"life",positionTop:"positionTop",positionLeft:"positionLeft",text:["pTooltip","text"],disabled:["tooltipDisabled","disabled"],tooltipOptions:"tooltipOptions"},features:[t.TTD]}),o}(),Wt=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez]]}),o}(),re=function(){var o=function(){function l(i,e,n){(0,C.Z)(this,l),this.el=i,this.zone=e,this.config=n}return(0,w.Z)(l,[{key:"ngAfterViewInit",value:function(){var e=this;this.config&&this.config.ripple&&this.zone.runOutsideAngular(function(){e.create(),e.mouseDownListener=e.onMouseDown.bind(e),e.el.nativeElement.addEventListener("mousedown",e.mouseDownListener)})}},{key:"onMouseDown",value:function(e){var n=this.getInk();if(n&&"none"!==getComputedStyle(n,null).display){if(p.removeClass(n,"p-ink-active"),!p.getHeight(n)&&!p.getWidth(n)){var a=Math.max(p.getOuterWidth(this.el.nativeElement),p.getOuterHeight(this.el.nativeElement));n.style.height=a+"px",n.style.width=a+"px"}var r=p.getOffset(this.el.nativeElement),s=e.pageX-r.left+document.body.scrollTop-p.getWidth(n)/2,u=e.pageY-r.top+document.body.scrollLeft-p.getHeight(n)/2;n.style.top=u+"px",n.style.left=s+"px",p.addClass(n,"p-ink-active")}}},{key:"getInk",value:function(){for(var e=0;ethis.virtualScrollSelectedIndex||n.end-1&&this.viewPort.scrollToIndex(this.virtualScrollSelectedIndex)),this.virtualAutoScrolled=!0}},{key:"updateVirtualScrollSelectedIndex",value:function(e){this.selectedOption&&this.optionsToDisplay&&this.optionsToDisplay.length&&(e&&(this.viewPortOffsetTop=0),this.virtualScrollSelectedIndex=this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay))}},{key:"appendOverlay",value:function(){this.appendTo&&("body"===this.appendTo?document.body.appendChild(this.overlay):p.appendChild(this.overlay,this.appendTo),this.overlay.style.minWidth||(this.overlay.style.minWidth=p.getWidth(this.containerViewChild.nativeElement)+"px"))}},{key:"restoreOverlayAppend",value:function(){this.overlay&&this.appendTo&&this.el.nativeElement.appendChild(this.overlay)}},{key:"hide",value:function(){this.overlayVisible=!1,this.filter&&this.resetFilterOnHide&&this.resetFilter(),this.virtualScroll&&(this.virtualAutoScrolled=!1),this.cd.markForCheck()}},{key:"alignOverlay",value:function(){this.overlay&&(this.appendTo?p.absolutePosition(this.overlay,this.containerViewChild.nativeElement):p.relativePosition(this.overlay,this.containerViewChild.nativeElement))}},{key:"onInputFocus",value:function(e){this.focused=!0,this.onFocus.emit(e)}},{key:"onInputBlur",value:function(e){this.focused=!1,this.onBlur.emit(e),this.preventModelTouched||this.onModelTouched(),this.preventModelTouched=!1}},{key:"findPrevEnabledOption",value:function(e){var n;if(this.optionsToDisplay&&this.optionsToDisplay.length){for(var a=e-1;0<=a;a--){var r=this.optionsToDisplay[a];if(!this.isOptionDisabled(r)){n=r;break}}if(!n)for(var s=this.optionsToDisplay.length-1;s>=e;s--){var u=this.optionsToDisplay[s];if(!this.isOptionDisabled(u)){n=u;break}}}return n}},{key:"findNextEnabledOption",value:function(e){var n;if(this.optionsToDisplay&&this.optionsToDisplay.length){for(var a=e+1;a0&&this.selectItem(e,this.getOptionGroupChildren(this.optionsToDisplay[0])[0])}else{var s=this.selectedOption?this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1,u=this.findNextEnabledOption(s);u&&(this.selectItem(e,u),this.selectedOptionUpdated=!0)}e.preventDefault();break;case 38:if(this.group){var c=this.selectedOption?this.findOptionGroupIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1;if(-1!==c){var d=c.itemIndex-1;if(d>=0)this.selectItem(e,this.getOptionGroupChildren(this.optionsToDisplay[c.groupIndex])[d]),this.selectedOptionUpdated=!0;else if(d<0){var h=this.optionsToDisplay[c.groupIndex-1];h&&(this.selectItem(e,this.getOptionGroupChildren(h)[this.getOptionGroupChildren(h).length-1]),this.selectedOptionUpdated=!0)}}}else{var v=this.selectedOption?this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1,f=this.findPrevEnabledOption(v);f&&(this.selectItem(e,f),this.selectedOptionUpdated=!0)}e.preventDefault();break;case 32:n&&(this.overlayVisible?this.hide():this.show(),e.preventDefault());break;case 13:this.overlayVisible&&(!this.filter||this.optionsToDisplay&&this.optionsToDisplay.length>0)?this.hide():this.overlayVisible||this.show(),e.preventDefault();break;case 27:case 9:this.hide();break;default:n&&!e.metaKey&&this.search(e)}}},{key:"search",value:function(e){var n=this;this.searchTimeout&&clearTimeout(this.searchTimeout);var r,a=e.key;if(this.previousSearchChar=this.currentSearchChar,this.currentSearchChar=a,this.searchValue=this.previousSearchChar===this.currentSearchChar?this.currentSearchChar:this.searchValue?this.searchValue+a:a,this.group){var s=this.selectedOption?this.findOptionGroupIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):{groupIndex:0,itemIndex:0};r=this.searchOptionWithinGroup(s)}else{var u=this.selectedOption?this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1;r=this.searchOption(++u)}r&&!this.isOptionDisabled(r)&&(this.selectItem(e,r),this.selectedOptionUpdated=!0),this.searchTimeout=setTimeout(function(){n.searchValue=null},250)}},{key:"searchOption",value:function(e){var n;return this.searchValue&&((n=this.searchOptionInRange(e,this.optionsToDisplay.length))||(n=this.searchOptionInRange(0,e))),n}},{key:"searchOptionInRange",value:function(e,n){for(var a=e;a0&&n>d){var f=this.isDecimalMode()&&(this.minFractionDigits||0)0?s:""):s=r.slice(0,n-1)+r.slice(n)}this.updateValue(e,s,null,"delete-single")}else s=this.deleteRange(r,n,a),this.updateValue(e,s,null,"delete-range");break;case 46:if(e.preventDefault(),n===a){var g=r.charAt(n),m=this.getDecimalCharIndexes(r),y=m.decimalCharIndex,k=m.decimalCharIndexWithoutPrefix;if(this.isNumeralChar(g)){var S=this.getDecimalLength(r);if(this._group.test(g))this._group.lastIndex=0,s=r.slice(0,n)+r.slice(n+2);else if(this._decimal.test(g))this._decimal.lastIndex=0,S?this.input.nativeElement.setSelectionRange(n+1,n+1):s=r.slice(0,n)+r.slice(n+1);else if(y>0&&n>y){var D=this.isDecimalMode()&&(this.minFractionDigits||0)0?s:""):s=r.slice(0,n)+r.slice(n+1)}this.updateValue(e,s,null,"delete-back-single")}else s=this.deleteRange(r,n,a),this.updateValue(e,s,null,"delete-range")}this.onKeyDown.emit(e)}}},{key:"onInputKeyPress",value:function(e){if(!this.readonly){e.preventDefault();var n=e.which||e.keyCode,a=String.fromCharCode(n),r=this.isDecimalSign(a),s=this.isMinusSign(a);(48<=n&&n<=57||s||r)&&this.insert(e,a,{isDecimalSign:r,isMinusSign:s})}}},{key:"onPaste",value:function(e){if(!this.disabled&&!this.readonly){e.preventDefault();var n=(e.clipboardData||window.clipboardData).getData("Text");if(n){var a=this.parseValue(n);null!=a&&this.insert(e,a.toString())}}}},{key:"allowMinusSign",value:function(){return null==this.min||this.min<0}},{key:"isMinusSign",value:function(e){return!(!this._minusSign.test(e)&&"-"!==e||(this._minusSign.lastIndex=0,0))}},{key:"isDecimalSign",value:function(e){return!!this._decimal.test(e)&&(this._decimal.lastIndex=0,!0)}},{key:"isDecimalMode",value:function(){return"decimal"===this.mode}},{key:"getDecimalCharIndexes",value:function(e){var n=e.search(this._decimal);this._decimal.lastIndex=0;var r=e.replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").search(this._decimal);return this._decimal.lastIndex=0,{decimalCharIndex:n,decimalCharIndexWithoutPrefix:r}}},{key:"getCharIndexes",value:function(e){var n=e.search(this._decimal);this._decimal.lastIndex=0;var a=e.search(this._minusSign);this._minusSign.lastIndex=0;var r=e.search(this._suffix);this._suffix.lastIndex=0;var s=e.search(this._currency);return this._currency.lastIndex=0,{decimalCharIndex:n,minusCharIndex:a,suffixCharIndex:r,currencyCharIndex:s}}},{key:"insert",value:function(e,n){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{isDecimalSign:!1,isMinusSign:!1},r=n.search(this._minusSign);if(this._minusSign.lastIndex=0,this.allowMinusSign()||-1===r){var m,s=this.input.nativeElement.selectionStart,u=this.input.nativeElement.selectionEnd,c=this.input.nativeElement.value.trim(),d=this.getCharIndexes(c),h=d.decimalCharIndex,v=d.minusCharIndex,f=d.suffixCharIndex,g=d.currencyCharIndex;if(a.isMinusSign)0===s&&(m=c,(-1===v||0!==u)&&(m=this.insertText(c,n,0,u)),this.updateValue(e,m,n,"insert"));else if(a.isDecimalSign)h>0&&s===h?this.updateValue(e,c,n,"insert"):(h>s&&h0&&s>h){if(s+n.length-(h+1)<=y){var S=g>=s?g-1:f>=s?f:c.length;m=c.slice(0,s)+n+c.slice(s+n.length,S)+c.slice(S),this.updateValue(e,m,n,k)}}else m=this.insertText(c,n,s,u),this.updateValue(e,m,n,k)}}}},{key:"insertText",value:function(e,n,a,r){if(2===("."===n?n:n.split(".")).length){var u=e.slice(a,r).search(this._decimal);return this._decimal.lastIndex=0,u>0?e.slice(0,a)+this.formatValue(n)+e.slice(r):e||this.formatValue(n)}return r-a===e.length?this.formatValue(n):0===a?n+e.slice(r):r===e.length?e.slice(0,a)+n:e.slice(0,a)+n+e.slice(r)}},{key:"deleteRange",value:function(e,n,a){return a-n===e.length?"":0===n?e.slice(a):a===e.length?e.slice(0,n):e.slice(0,n)+e.slice(a)}},{key:"initCursor",value:function(){var e=this.input.nativeElement.selectionStart,n=this.input.nativeElement.value,a=n.length,r=null,s=(this.prefixChar||"").length,u=(n=n.replace(this._prefix,"")).charAt(e-=s);if(this.isNumeralChar(u))return e+s;for(var c=e-1;c>=0;){if(u=n.charAt(c),this.isNumeralChar(u)){r=c+s;break}c--}if(null!==r)this.input.nativeElement.setSelectionRange(r+1,r+1);else{for(c=e;cthis.max?this.max:e}},{key:"updateInput",value:function(e,n,a,r){n=n||"";var s=this.input.nativeElement.value,u=this.formatValue(e),c=s.length;if(u!==r&&(u=this.concatValues(u,r)),0===c){this.input.nativeElement.value=u,this.input.nativeElement.setSelectionRange(0,0);var h=this.initCursor()+n.length;this.input.nativeElement.setSelectionRange(h,h)}else{var v=this.input.nativeElement.selectionStart,f=this.input.nativeElement.selectionEnd;if(this.maxlength&&this.maxlength0}},{key:"clearTimer",value:function(){this.timer&&clearInterval(this.timer)}},{key:"getFormatter",value:function(){return this.numberFormat}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.SBq),t.Y36(t.sBO))},o.\u0275cmp=t.Xpm({type:o,selectors:[["p-inputNumber"]],viewQuery:function(i,e){var n;1&i&&t.Gf(Bi,5),2&i&&t.iGM(n=t.CRH())&&(e.input=n.first)},hostAttrs:[1,"p-element","p-inputwrapper"],hostVars:6,hostBindings:function(i,e){2&i&&t.ekj("p-inputwrapper-filled",e.filled)("p-inputwrapper-focus",e.focused)("p-inputnumber-clearable",e.showClear&&"vertical"!=e.buttonLayout)},inputs:{showButtons:"showButtons",format:"format",buttonLayout:"buttonLayout",inputId:"inputId",styleClass:"styleClass",style:"style",placeholder:"placeholder",size:"size",maxlength:"maxlength",tabindex:"tabindex",title:"title",ariaLabel:"ariaLabel",ariaRequired:"ariaRequired",name:"name",required:"required",autocomplete:"autocomplete",min:"min",max:"max",incrementButtonClass:"incrementButtonClass",decrementButtonClass:"decrementButtonClass",incrementButtonIcon:"incrementButtonIcon",decrementButtonIcon:"decrementButtonIcon",readonly:"readonly",step:"step",allowEmpty:"allowEmpty",locale:"locale",localeMatcher:"localeMatcher",mode:"mode",currency:"currency",currencyDisplay:"currencyDisplay",useGrouping:"useGrouping",minFractionDigits:"minFractionDigits",maxFractionDigits:"maxFractionDigits",prefix:"prefix",suffix:"suffix",inputStyle:"inputStyle",inputStyleClass:"inputStyleClass",showClear:"showClear",disabled:"disabled"},outputs:{onInput:"onInput",onFocus:"onFocus",onBlur:"onBlur",onKeyDown:"onKeyDown",onClear:"onClear"},features:[t._Bn([Wi]),t.TTD],decls:7,vars:32,consts:[[3,"ngClass","ngStyle"],["pInputText","","inputmode","decimal",3,"ngClass","ngStyle","value","disabled","readonly","input","keydown","keypress","paste","click","focus","blur"],["input",""],["class","p-inputnumber-clear-icon pi pi-times",3,"click",4,"ngIf"],["class","p-inputnumber-button-group",4,"ngIf"],["type","button","pButton","",3,"ngClass","class","icon","disabled","mousedown","mouseup","mouseleave","keydown","keyup",4,"ngIf"],[1,"p-inputnumber-clear-icon","pi","pi-times",3,"click"],[1,"p-inputnumber-button-group"],["type","button","pButton","",3,"ngClass","icon","disabled","mousedown","mouseup","mouseleave","keydown","keyup"]],template:function(i,e){1&i&&(t.TgZ(0,"span",0),t.TgZ(1,"input",1,2),t.NdJ("input",function(a){return e.onUserInput(a)})("keydown",function(a){return e.onInputKeyDown(a)})("keypress",function(a){return e.onInputKeyPress(a)})("paste",function(a){return e.onPaste(a)})("click",function(){return e.onInputClick()})("focus",function(a){return e.onInputFocus(a)})("blur",function(a){return e.onInputBlur(a)}),t.qZA(),t.YNc(3,Zi,1,0,"i",3),t.YNc(4,zi,3,12,"span",4),t.YNc(5,Ui,1,6,"button",5),t.YNc(6,Ki,1,6,"button",5),t.qZA()),2&i&&(t.Tol(e.styleClass),t.Q6J("ngClass",t.kEZ(28,Yi,e.showButtons&&"stacked"===e.buttonLayout,e.showButtons&&"horizontal"===e.buttonLayout,e.showButtons&&"vertical"===e.buttonLayout))("ngStyle",e.style),t.xp6(1),t.Tol(e.inputStyleClass),t.Q6J("ngClass","p-inputnumber-input")("ngStyle",e.inputStyle)("value",e.formattedValue())("disabled",e.disabled)("readonly",e.readonly),t.uIk("placeholder",e.placeholder)("title",e.title)("id",e.inputId)("size",e.size)("name",e.name)("autocomplete",e.autocomplete)("maxlength",e.maxlength)("tabindex",e.tabindex)("aria-label",e.ariaLabel)("aria-required",e.ariaRequired)("required",e.required)("min",e.min)("max",e.max),t.xp6(2),t.Q6J("ngIf","vertical"!=e.buttonLayout&&e.showClear&&e.value),t.xp6(1),t.Q6J("ngIf",e.showButtons&&"stacked"===e.buttonLayout),t.xp6(1),t.Q6J("ngIf",e.showButtons&&"stacked"!==e.buttonLayout),t.xp6(1),t.Q6J("ngIf",e.showButtons&&"stacked"!==e.buttonLayout))},directives:[_.mk,_.PC,Ni,_.O5,Te],styles:["p-inputnumber,.p-inputnumber{display:inline-flex}.p-inputnumber-button{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label{display:none}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up{border-top-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-input{border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-button-group{display:flex;flex-direction:column}.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button{flex:1 1 auto}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{order:3;border-top-left-radius:0;border-bottom-left-radius:0}.p-inputnumber-buttons-horizontal .p-inputnumber-input{order:2;border-radius:0}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{order:1;border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-vertical{flex-direction:column}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up{order:1;border-bottom-left-radius:0;border-bottom-right-radius:0;width:100%}.p-inputnumber-buttons-vertical .p-inputnumber-input{order:2;border-radius:0;text-align:center}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down{order:3;border-top-left-radius:0;border-top-right-radius:0;width:100%}.p-inputnumber-input{flex:1 1 auto}.p-fluid p-inputnumber,.p-fluid .p-inputnumber{width:100%}.p-fluid .p-inputnumber .p-inputnumber-input{width:1%}.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input{width:100%}.p-inputnumber-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-inputnumber-clearable{position:relative}\n"],encapsulation:2,changeDetection:0}),o}(),ue=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,ke,J]]}),o}(),pn=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,se,ue,I.u5,Z,Y],se,ue,I.u5,Z]}),o}();function hn(o,l){if(1&o&&t._UZ(0,"span",8),2&o){var i=t.oxw(2).$implicit;t.Tol(i.icon),t.Q6J("ngClass","p-button-icon p-button-icon-left")}}function fn(o,l){if(1&o&&(t.ynx(0),t.YNc(1,hn,1,3,"span",6),t.TgZ(2,"span",7),t._uU(3),t.qZA(),t.BQk()),2&o){var i=t.oxw().$implicit,e=t.oxw();t.xp6(1),t.Q6J("ngIf",i.icon),t.xp6(2),t.Oqu(e.getOptionLabel(i))}}function mn(o,l){1&o&&t.GkF(0)}var vn=function(l,i){return{$implicit:l,index:i}};function gn(o,l){if(1&o&&t.YNc(0,mn,1,0,"ng-container",9),2&o){var i=t.oxw(),e=i.$implicit,n=i.index,a=t.oxw();t.Q6J("ngTemplateOutlet",a.itemTemplate)("ngTemplateOutletContext",t.WLB(2,vn,e,n))}}var _n=function(l,i,e){return{"p-highlight":l,"p-disabled":i,"p-button-icon-only":e}};function yn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",2,3),t.NdJ("click",function(s){var u=t.CHM(i),c=u.$implicit,d=u.index;return t.oxw().onItemClick(s,c,d)})("keydown.enter",function(s){var u=t.CHM(i),c=u.$implicit,d=u.index;return t.oxw().onItemClick(s,c,d)})("blur",function(){return t.CHM(i),t.oxw().onBlur()}),t.YNc(2,fn,4,2,"ng-container",4),t.YNc(3,gn,1,5,"ng-template",null,5,t.W1O),t.qZA()}if(2&o){var e=l.$implicit,n=t.MAs(4),a=t.oxw();t.Tol(e.styleClass),t.Q6J("ngClass",t.kEZ(10,_n,a.isSelected(e),a.disabled||a.isOptionDisabled(e),e.icon&&!a.getOptionLabel(e))),t.uIk("aria-pressed",a.isSelected(e))("title",e.title)("aria-label",e.label)("tabindex",a.disabled?null:a.tabindex)("aria-labelledby",a.getOptionLabel(e)),t.xp6(2),t.Q6J("ngIf",!a.itemTemplate)("ngIfElse",n)}}var bn={provide:I.JU,useExisting:(0,t.Gpc)(function(){return wn}),multi:!0},wn=function(){var o=function(){function l(i){(0,C.Z)(this,l),this.cd=i,this.tabindex=0,this.onOptionClick=new t.vpe,this.onChange=new t.vpe,this.onModelChange=function(){},this.onModelTouched=function(){}}return(0,w.Z)(l,[{key:"getOptionLabel",value:function(e){return this.optionLabel?T.resolveFieldData(e,this.optionLabel):null!=e.label?e.label:e}},{key:"getOptionValue",value:function(e){return this.optionValue?T.resolveFieldData(e,this.optionValue):this.optionLabel||void 0===e.value?e:e.value}},{key:"isOptionDisabled",value:function(e){return this.optionDisabled?T.resolveFieldData(e,this.optionDisabled):void 0!==e.disabled&&e.disabled}},{key:"writeValue",value:function(e){this.value=e,this.cd.markForCheck()}},{key:"registerOnChange",value:function(e){this.onModelChange=e}},{key:"registerOnTouched",value:function(e){this.onModelTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e,this.cd.markForCheck()}},{key:"onItemClick",value:function(e,n,a){if(!this.disabled&&!this.isOptionDisabled(n)){if(this.multiple)this.isSelected(n)?this.removeOption(n):this.value=[].concat((0,W.Z)(this.value||[]),[this.getOptionValue(n)]),this.onModelChange(this.value),this.onChange.emit({originalEvent:e,value:this.value});else{var r=this.getOptionValue(n);this.value!==r&&(this.value=this.getOptionValue(n),this.onModelChange(this.value),this.onChange.emit({originalEvent:e,value:this.value}))}this.onOptionClick.emit({originalEvent:e,option:n,index:a})}}},{key:"onBlur",value:function(){this.onModelTouched()}},{key:"removeOption",value:function(e){var n=this;this.value=this.value.filter(function(a){return!T.equals(a,n.getOptionValue(e),n.dataKey)})}},{key:"isSelected",value:function(e){var n=!1,a=this.getOptionValue(e);if(this.multiple){if(this.value){var s,r=(0,E.Z)(this.value);try{for(r.s();!(s=r.n()).done;)if(T.equals(s.value,a,this.dataKey)){n=!0;break}}catch(c){r.e(c)}finally{r.f()}}}else n=T.equals(this.getOptionValue(e),this.value,this.dataKey);return n}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.sBO))},o.\u0275cmp=t.Xpm({type:o,selectors:[["p-selectButton"]],contentQueries:function(i,e,n){var a;1&i&&t.Suo(n,t.Rgc,5),2&i&&t.iGM(a=t.CRH())&&(e.itemTemplate=a.first)},hostAttrs:[1,"p-element"],inputs:{options:"options",optionLabel:"optionLabel",optionValue:"optionValue",optionDisabled:"optionDisabled",tabindex:"tabindex",multiple:"multiple",style:"style",styleClass:"styleClass",ariaLabelledBy:"ariaLabelledBy",disabled:"disabled",dataKey:"dataKey"},outputs:{onOptionClick:"onOptionClick",onChange:"onChange"},features:[t._Bn([bn])],decls:2,vars:5,consts:[["role","group",3,"ngClass","ngStyle"],["class","p-button p-component","role","button","pRipple","",3,"class","ngClass","click","keydown.enter","blur",4,"ngFor","ngForOf"],["role","button","pRipple","",1,"p-button","p-component",3,"ngClass","click","keydown.enter","blur"],["btn",""],[4,"ngIf","ngIfElse"],["customcontent",""],[3,"ngClass","class",4,"ngIf"],[1,"p-button-label"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.YNc(1,yn,5,14,"div",1),t.qZA()),2&i&&(t.Tol(e.styleClass),t.Q6J("ngClass","p-selectbutton p-buttonset p-component")("ngStyle",e.style),t.xp6(1),t.Q6J("ngForOf",e.options))},directives:[_.mk,_.PC,_.sg,re,_.O5,_.tP],styles:[".p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default}.p-button-icon-only{justify-content:center}.p-button-icon-only .p-button-label{visibility:hidden;width:0;flex:0 0 auto}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-buttonset .p-button{margin:0}.p-buttonset .p-button:not(:last-child){border-right:0 none}.p-buttonset .p-button:not(:first-of-type):not(:last-of-type){border-radius:0}.p-buttonset .p-button:first-of-type{border-top-right-radius:0;border-bottom-right-radius:0}.p-buttonset .p-button:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}.p-buttonset .p-button:focus{position:relative;z-index:1}\n"],encapsulation:2,changeDetection:0}),o}(),Cn=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,Y]]}),o}(),kn=function(l,i,e){return{"p-checkbox-label-active":l,"p-disabled":i,"p-checkbox-label-focus":e}};function Tn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"label",7),t.NdJ("click",function(a){t.CHM(i);var r=t.oxw(),s=t.MAs(3);return r.onClick(a,s)}),t._uU(1),t.qZA()}if(2&o){var e=t.oxw();t.Q6J("ngClass",t.kEZ(3,kn,null!=e.value,e.disabled,e.focused)),t.uIk("for",e.inputId),t.xp6(1),t.Oqu(e.label)}}var Sn=function(l,i){return{"p-checkbox p-component":!0,"p-checkbox-disabled":l,"p-checkbox-focused":i}},xn=function(l,i,e){return{"p-highlight":l,"p-disabled":i,"p-focus":e}},En={provide:I.JU,useExisting:(0,t.Gpc)(function(){return In}),multi:!0},In=function(){var o=function(){function l(i){(0,C.Z)(this,l),this.cd=i,this.checkboxTrueIcon="pi pi-check",this.checkboxFalseIcon="pi pi-times",this.onChange=new t.vpe,this.onModelChange=function(){},this.onModelTouched=function(){}}return(0,w.Z)(l,[{key:"onClick",value:function(e,n){!this.disabled&&!this.readonly&&(this.toggle(e),this.focused=!0,n.focus())}},{key:"onKeydown",value:function(e){32==e.keyCode&&e.preventDefault()}},{key:"onKeyup",value:function(e){32==e.keyCode&&!this.readonly&&(this.toggle(e),e.preventDefault())}},{key:"toggle",value:function(e){null==this.value||null==this.value?this.value=!0:1==this.value?this.value=!1:0==this.value&&(this.value=null),this.onModelChange(this.value),this.onChange.emit({originalEvent:e,value:this.value})}},{key:"onFocus",value:function(){this.focused=!0}},{key:"onBlur",value:function(){this.focused=!1,this.onModelTouched()}},{key:"registerOnChange",value:function(e){this.onModelChange=e}},{key:"registerOnTouched",value:function(e){this.onModelTouched=e}},{key:"writeValue",value:function(e){this.value=e,this.cd.markForCheck()}},{key:"setDisabledState",value:function(e){this.disabled=e,this.cd.markForCheck()}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.sBO))},o.\u0275cmp=t.Xpm({type:o,selectors:[["p-triStateCheckbox"]],hostAttrs:[1,"p-element"],inputs:{disabled:"disabled",name:"name",ariaLabelledBy:"ariaLabelledBy",tabindex:"tabindex",inputId:"inputId",style:"style",styleClass:"styleClass",label:"label",readonly:"readonly",checkboxTrueIcon:"checkboxTrueIcon",checkboxFalseIcon:"checkboxFalseIcon"},outputs:{onChange:"onChange"},features:[t._Bn([En])],decls:7,vars:21,consts:[[3,"ngStyle","ngClass"],[1,"p-hidden-accessible"],["type","text","inputmode","none",3,"name","readonly","disabled","keyup","keydown","focus","blur"],["input",""],["role","checkbox",1,"p-checkbox-box",3,"ngClass","click"],[1,"p-checkbox-icon",3,"ngClass"],["class","p-checkbox-label",3,"ngClass","click",4,"ngIf"],[1,"p-checkbox-label",3,"ngClass","click"]],template:function(i,e){if(1&i){var n=t.EpF();t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"input",2,3),t.NdJ("keyup",function(r){return e.onKeyup(r)})("keydown",function(r){return e.onKeydown(r)})("focus",function(){return e.onFocus()})("blur",function(){return e.onBlur()}),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.NdJ("click",function(r){t.CHM(n);var s=t.MAs(3);return e.onClick(r,s)}),t._UZ(5,"span",5),t.qZA(),t.qZA(),t.YNc(6,Tn,2,7,"label",6)}2&i&&(t.Tol(e.styleClass),t.Q6J("ngStyle",e.style)("ngClass",t.WLB(14,Sn,e.disabled,e.focused)),t.xp6(2),t.Q6J("name",e.name)("readonly",e.readonly)("disabled",e.disabled),t.uIk("id",e.inputId)("tabindex",e.tabindex)("aria-labelledby",e.ariaLabelledBy),t.xp6(2),t.Q6J("ngClass",t.kEZ(17,xn,null!=e.value,e.disabled,e.focused)),t.uIk("aria-checked",!0===e.value),t.xp6(1),t.Q6J("ngClass",!0===e.value?e.checkboxTrueIcon:!1===e.value?e.checkboxFalseIcon:""),t.xp6(1),t.Q6J("ngIf",e.label))},directives:[_.PC,_.mk,_.O5],encapsulation:2,changeDetection:0}),o}(),Dn=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez]]}),o}(),Mn=["container"],On=["inputfield"],Rn=["contentWrapper"];function Fn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"i",8),t.NdJ("click",function(){return t.CHM(i),t.oxw(2).clear()}),t.qZA()}}function Pn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",9),t.NdJ("click",function(a){t.CHM(i),t.oxw();var r=t.MAs(1);return t.oxw().onButtonClick(a,r)}),t.qZA()}if(2&o){var e=t.oxw(2);t.Q6J("icon",e.icon)("disabled",e.disabled),t.uIk("aria-label",e.iconAriaLabel)}}function Ln(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"input",4,5),t.NdJ("focus",function(a){return t.CHM(i),t.oxw().onInputFocus(a)})("keydown",function(a){return t.CHM(i),t.oxw().onInputKeydown(a)})("click",function(){return t.CHM(i),t.oxw().onInputClick()})("blur",function(a){return t.CHM(i),t.oxw().onInputBlur(a)})("input",function(a){return t.CHM(i),t.oxw().onUserInput(a)}),t.qZA(),t.YNc(2,Fn,1,0,"i",6),t.YNc(3,Pn,1,3,"button",7)}if(2&o){var e=t.oxw();t.Tol(e.inputStyleClass),t.Q6J("value",e.inputFieldValue)("readonly",e.readonlyInput)("ngStyle",e.inputStyle)("placeholder",e.placeholder||"")("disabled",e.disabled)("ngClass","p-inputtext p-component"),t.uIk("id",e.inputId)("name",e.name)("required",e.required)("aria-required",e.required)("tabindex",e.tabindex)("inputmode",e.touchUI?"off":null)("aria-labelledby",e.ariaLabelledBy),t.xp6(2),t.Q6J("ngIf",e.showClear&&!e.disabled&&null!=e.value),t.xp6(1),t.Q6J("ngIf",e.showIcon)}}function An(o,l){1&o&&t.GkF(0)}function Hn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",30),t.NdJ("keydown",function(n){return t.CHM(i),t.oxw(4).onContainerButtonKeydown(n)})("click",function(n){return t.CHM(i),t.oxw(4).onPrevButtonClick(n)}),t._UZ(1,"span",31),t.qZA()}}function Nn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",32),t.NdJ("click",function(r){return t.CHM(i),t.oxw(4).switchToMonthView(r)})("keydown",function(r){return t.CHM(i),t.oxw(4).onContainerButtonKeydown(r)}),t._uU(1),t.qZA()}if(2&o){var e=t.oxw().$implicit,n=t.oxw(3);t.Q6J("disabled",n.switchViewButtonDisabled()),t.xp6(1),t.hij(" ",n.getMonthName(e.month)," ")}}function Vn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(r){return t.CHM(i),t.oxw(4).switchToYearView(r)})("keydown",function(r){return t.CHM(i),t.oxw(4).onContainerButtonKeydown(r)}),t._uU(1),t.qZA()}if(2&o){var e=t.oxw().$implicit,n=t.oxw(3);t.Q6J("disabled",n.switchViewButtonDisabled()),t.xp6(1),t.hij(" ",n.getYear(e)," ")}}function Bn(o,l){if(1&o&&(t.ynx(0),t._uU(1),t.BQk()),2&o){var i=t.oxw(5);t.xp6(1),t.AsE("",i.yearPickerValues()[0]," - ",i.yearPickerValues()[i.yearPickerValues().length-1],"")}}function Zn(o,l){1&o&&t.GkF(0)}var Ee=function(l){return{$implicit:l}};function zn(o,l){if(1&o&&(t.TgZ(0,"span",34),t.YNc(1,Bn,2,2,"ng-container",13),t.YNc(2,Zn,1,0,"ng-container",35),t.qZA()),2&o){var i=t.oxw(4);t.xp6(1),t.Q6J("ngIf",!i.decadeTemplate),t.xp6(1),t.Q6J("ngTemplateOutlet",i.decadeTemplate)("ngTemplateOutletContext",t.VKq(3,Ee,i.yearPickerValues))}}function Un(o,l){if(1&o&&(t.TgZ(0,"th",41),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&o){var i=t.oxw(5);t.xp6(2),t.Oqu(i.getTranslation("weekHeader"))}}function Kn(o,l){if(1&o&&(t.TgZ(0,"th",42),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&o){var i=l.$implicit;t.xp6(2),t.Oqu(i)}}function Yn(o,l){if(1&o&&(t.TgZ(0,"td",45),t.TgZ(1,"span",46),t._uU(2),t.qZA(),t.qZA()),2&o){var i=t.oxw().index,e=t.oxw(2).$implicit;t.xp6(2),t.hij(" ",e.weekNumbers[i]," ")}}function Wn(o,l){if(1&o&&(t.ynx(0),t._uU(1),t.BQk()),2&o){var i=t.oxw(2).$implicit;t.xp6(1),t.Oqu(i.day)}}function qn(o,l){1&o&&t.GkF(0)}var Jn=function(l,i){return{"p-highlight":l,"p-disabled":i}};function Qn(o,l){if(1&o){var i=t.EpF();t.ynx(0),t.TgZ(1,"span",48),t.NdJ("click",function(r){t.CHM(i);var s=t.oxw().$implicit;return t.oxw(6).onDateSelect(r,s)})("keydown",function(r){t.CHM(i);var s=t.oxw().$implicit,u=t.oxw(3).index;return t.oxw(3).onDateCellKeydown(r,s,u)}),t.YNc(2,Wn,2,1,"ng-container",13),t.YNc(3,qn,1,0,"ng-container",35),t.qZA(),t.BQk()}if(2&o){var e=t.oxw().$implicit,n=t.oxw(6);t.xp6(1),t.Q6J("ngClass",t.WLB(4,Jn,n.isSelected(e),!e.selectable)),t.xp6(1),t.Q6J("ngIf",!n.dateTemplate),t.xp6(1),t.Q6J("ngTemplateOutlet",n.dateTemplate)("ngTemplateOutletContext",t.VKq(7,Ee,e))}}var Gn=function(l,i){return{"p-datepicker-other-month":l,"p-datepicker-today":i}};function jn(o,l){if(1&o&&(t.TgZ(0,"td",47),t.YNc(1,Qn,4,9,"ng-container",13),t.qZA()),2&o){var i=l.$implicit,e=t.oxw(6);t.Q6J("ngClass",t.WLB(2,Gn,i.otherMonth,i.today)),t.xp6(1),t.Q6J("ngIf",!i.otherMonth||e.showOtherMonths)}}function $n(o,l){if(1&o&&(t.TgZ(0,"tr"),t.YNc(1,Yn,3,1,"td",43),t.YNc(2,jn,2,5,"td",44),t.qZA()),2&o){var i=l.$implicit,e=t.oxw(5);t.xp6(1),t.Q6J("ngIf",e.showWeek),t.xp6(1),t.Q6J("ngForOf",i)}}function Xn(o,l){if(1&o&&(t.TgZ(0,"div",36),t.TgZ(1,"table",37),t.TgZ(2,"thead"),t.TgZ(3,"tr"),t.YNc(4,Un,3,1,"th",38),t.YNc(5,Kn,3,1,"th",39),t.qZA(),t.qZA(),t.TgZ(6,"tbody"),t.YNc(7,$n,3,2,"tr",40),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw().$implicit,e=t.oxw(3);t.xp6(4),t.Q6J("ngIf",e.showWeek),t.xp6(1),t.Q6J("ngForOf",e.weekDays),t.xp6(2),t.Q6J("ngForOf",i.dates)}}function ea(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",20),t.TgZ(1,"div",21),t.YNc(2,Hn,2,0,"button",22),t.TgZ(3,"div",23),t.YNc(4,Nn,2,2,"button",24),t.YNc(5,Vn,2,2,"button",25),t.YNc(6,zn,3,5,"span",26),t.qZA(),t.TgZ(7,"button",27),t.NdJ("keydown",function(r){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(r)})("click",function(r){return t.CHM(i),t.oxw(3).onNextButtonClick(r)}),t._UZ(8,"span",28),t.qZA(),t.qZA(),t.YNc(9,Xn,8,3,"div",29),t.qZA()}if(2&o){var e=l.index,n=t.oxw(3);t.xp6(2),t.Q6J("ngIf",0===e),t.xp6(2),t.Q6J("ngIf","date"===n.currentView),t.xp6(1),t.Q6J("ngIf","year"!==n.currentView),t.xp6(1),t.Q6J("ngIf","year"===n.currentView),t.xp6(1),t.Udp("display",1===n.numberOfMonths||e===n.numberOfMonths-1?"inline-flex":"none"),t.xp6(2),t.Q6J("ngIf","date"===n.currentView)}}var Ie=function(l){return{"p-highlight":l}};function ta(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"span",51),t.NdJ("click",function(s){var c=t.CHM(i).index;return t.oxw(4).onMonthSelect(s,c)})("keydown",function(s){var c=t.CHM(i).index;return t.oxw(4).onMonthCellKeydown(s,c)}),t._uU(1),t.qZA()}if(2&o){var e=l.$implicit,n=l.index,a=t.oxw(4);t.Q6J("ngClass",t.VKq(2,Ie,a.isMonthSelected(n))),t.xp6(1),t.hij(" ",e," ")}}function ia(o,l){if(1&o&&(t.TgZ(0,"div",49),t.YNc(1,ta,2,4,"span",50),t.qZA()),2&o){var i=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",i.monthPickerValues())}}function na(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"span",54),t.NdJ("click",function(r){var u=t.CHM(i).$implicit;return t.oxw(4).onYearSelect(r,u)})("keydown",function(r){var u=t.CHM(i).$implicit;return t.oxw(4).onYearCellKeydown(r,u)}),t._uU(1),t.qZA()}if(2&o){var e=l.$implicit,n=t.oxw(4);t.Q6J("ngClass",t.VKq(2,Ie,n.isYearSelected(e))),t.xp6(1),t.hij(" ",e," ")}}function aa(o,l){if(1&o&&(t.TgZ(0,"div",52),t.YNc(1,na,2,4,"span",53),t.qZA()),2&o){var i=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",i.yearPickerValues())}}function oa(o,l){if(1&o&&(t.ynx(0),t.TgZ(1,"div",16),t.YNc(2,ea,10,7,"div",17),t.qZA(),t.YNc(3,ia,2,1,"div",18),t.YNc(4,aa,2,1,"div",19),t.BQk()),2&o){var i=t.oxw(2);t.xp6(2),t.Q6J("ngForOf",i.months),t.xp6(1),t.Q6J("ngIf","month"===i.currentView),t.xp6(1),t.Q6J("ngIf","year"===i.currentView)}}function ra(o,l){1&o&&(t.ynx(0),t._uU(1,"0"),t.BQk())}function la(o,l){1&o&&(t.ynx(0),t._uU(1,"0"),t.BQk())}function sa(o,l){if(1&o&&(t.TgZ(0,"div",60),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&o){var i=t.oxw(3);t.xp6(2),t.Oqu(i.timeSeparator)}}function ua(o,l){1&o&&(t.ynx(0),t._uU(1,"0"),t.BQk())}function ca(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",65),t.TgZ(1,"button",57),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).incrementSecond(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(3).incrementSecond(a)})("mousedown",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseDown(a,2,1)})("mouseup",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(3).onTimePickerElementMouseLeave()}),t._UZ(2,"span",58),t.qZA(),t.TgZ(3,"span"),t.YNc(4,ua,2,0,"ng-container",13),t._uU(5),t.qZA(),t.TgZ(6,"button",57),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).decrementSecond(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(3).decrementSecond(a)})("mousedown",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseDown(a,2,-1)})("mouseup",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(3).onTimePickerElementMouseLeave()}),t._UZ(7,"span",59),t.qZA(),t.qZA()}if(2&o){var e=t.oxw(3);t.xp6(4),t.Q6J("ngIf",e.currentSecond<10),t.xp6(1),t.Oqu(e.currentSecond)}}function da(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",66),t.TgZ(1,"button",67),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)}),t._UZ(2,"span",58),t.qZA(),t.TgZ(3,"span"),t._uU(4),t.qZA(),t.TgZ(5,"button",67),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)}),t._UZ(6,"span",59),t.qZA(),t.qZA()}if(2&o){var e=t.oxw(3);t.xp6(4),t.Oqu(e.pm?"PM":"AM")}}function pa(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",55),t.TgZ(1,"div",56),t.TgZ(2,"button",57),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).incrementHour(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).incrementHour(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,0,1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(3,"span",58),t.qZA(),t.TgZ(4,"span"),t.YNc(5,ra,2,0,"ng-container",13),t._uU(6),t.qZA(),t.TgZ(7,"button",57),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).decrementHour(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).decrementHour(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,0,-1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(8,"span",59),t.qZA(),t.qZA(),t.TgZ(9,"div",60),t.TgZ(10,"span"),t._uU(11),t.qZA(),t.qZA(),t.TgZ(12,"div",61),t.TgZ(13,"button",57),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).incrementMinute(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).incrementMinute(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,1,1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(14,"span",58),t.qZA(),t.TgZ(15,"span"),t.YNc(16,la,2,0,"ng-container",13),t._uU(17),t.qZA(),t.TgZ(18,"button",57),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).decrementMinute(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).decrementMinute(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,1,-1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(19,"span",59),t.qZA(),t.qZA(),t.YNc(20,sa,3,1,"div",62),t.YNc(21,ca,8,2,"div",63),t.YNc(22,da,7,1,"div",64),t.qZA()}if(2&o){var e=t.oxw(2);t.xp6(5),t.Q6J("ngIf",e.currentHour<10),t.xp6(1),t.Oqu(e.currentHour),t.xp6(5),t.Oqu(e.timeSeparator),t.xp6(5),t.Q6J("ngIf",e.currentMinute<10),t.xp6(1),t.Oqu(e.currentMinute),t.xp6(3),t.Q6J("ngIf",e.showSeconds),t.xp6(1),t.Q6J("ngIf",e.showSeconds),t.xp6(1),t.Q6J("ngIf","12"==e.hourFormat)}}var De=function(l){return[l]};function ha(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",68),t.TgZ(1,"button",69),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(2).onTodayButtonClick(a)}),t.qZA(),t.TgZ(2,"button",69),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(2).onClearButtonClick(a)}),t.qZA(),t.qZA()}if(2&o){var e=t.oxw(2);t.xp6(1),t.Q6J("label",e.getTranslation("today"))("ngClass",t.VKq(4,De,e.todayButtonStyleClass)),t.xp6(1),t.Q6J("label",e.getTranslation("clear"))("ngClass",t.VKq(6,De,e.clearButtonStyleClass))}}function fa(o,l){1&o&&t.GkF(0)}var ma=function(l,i,e,n,a,r){return{"p-datepicker p-component":!0,"p-datepicker-inline":l,"p-disabled":i,"p-datepicker-timeonly":e,"p-datepicker-multiple-month":n,"p-datepicker-monthpicker":a,"p-datepicker-touch-ui":r}},Me=function(l,i){return{showTransitionParams:l,hideTransitionParams:i}},va=function(l){return{value:"visibleTouchUI",params:l}},ga=function(l){return{value:"visible",params:l}};function _a(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",10,11),t.NdJ("@overlayAnimation.start",function(a){return t.CHM(i),t.oxw().onOverlayAnimationStart(a)})("@overlayAnimation.done",function(a){return t.CHM(i),t.oxw().onOverlayAnimationDone(a)})("click",function(a){return t.CHM(i),t.oxw().onOverlayClick(a)}),t.Hsn(2),t.YNc(3,An,1,0,"ng-container",12),t.YNc(4,oa,5,3,"ng-container",13),t.YNc(5,pa,23,8,"div",14),t.YNc(6,ha,3,8,"div",15),t.Hsn(7,1),t.YNc(8,fa,1,0,"ng-container",12),t.qZA()}if(2&o){var e=t.oxw();t.Tol(e.panelStyleClass),t.Q6J("ngStyle",e.panelStyle)("ngClass",t.HTZ(11,ma,e.inline,e.disabled,e.timeOnly,e.numberOfMonths>1,"month"===e.view,e.touchUI))("@overlayAnimation",e.touchUI?t.VKq(21,va,t.WLB(18,Me,e.showTransitionOptions,e.hideTransitionOptions)):t.VKq(26,ga,t.WLB(23,Me,e.showTransitionOptions,e.hideTransitionOptions)))("@.disabled",!0===e.inline),t.xp6(3),t.Q6J("ngTemplateOutlet",e.headerTemplate),t.xp6(1),t.Q6J("ngIf",!e.timeOnly),t.xp6(1),t.Q6J("ngIf",(e.showTime||e.timeOnly)&&"date"===e.currentView),t.xp6(1),t.Q6J("ngIf",e.showButtonBar),t.xp6(2),t.Q6J("ngTemplateOutlet",e.footerTemplate)}}var ya=[[["p-header"]],[["p-footer"]]],ba=function(l,i,e,n){return{"p-calendar":!0,"p-calendar-w-btn":l,"p-calendar-timeonly":i,"p-calendar-disabled":e,"p-focus":n}},wa=["p-header","p-footer"],Ca={provide:I.JU,useExisting:(0,t.Gpc)(function(){return ka}),multi:!0},ka=function(){var o=function(){function l(i,e,n,a,r,s){(0,C.Z)(this,l),this.el=i,this.renderer=e,this.cd=n,this.zone=a,this.config=r,this.overlayService=s,this.multipleSeparator=",",this.rangeSeparator="-",this.inline=!1,this.showOtherMonths=!0,this.icon="pi pi-calendar",this.shortYearCutoff="+10",this.hourFormat="24",this.stepHour=1,this.stepMinute=1,this.stepSecond=1,this.showSeconds=!1,this.showOnFocus=!0,this.showWeek=!1,this.showClear=!1,this.dataType="date",this.selectionMode="single",this.todayButtonStyleClass="p-button-text",this.clearButtonStyleClass="p-button-text",this.autoZIndex=!0,this.baseZIndex=0,this.keepInvalid=!1,this.hideOnDateTimeSelect=!0,this.timeSeparator=":",this.focusTrap=!0,this.showTransitionOptions=".12s cubic-bezier(0, 0, 0.2, 1)",this.hideTransitionOptions=".1s linear",this.onFocus=new t.vpe,this.onBlur=new t.vpe,this.onClose=new t.vpe,this.onSelect=new t.vpe,this.onClear=new t.vpe,this.onInput=new t.vpe,this.onTodayClick=new t.vpe,this.onClearClick=new t.vpe,this.onMonthChange=new t.vpe,this.onYearChange=new t.vpe,this.onClickOutside=new t.vpe,this.onShow=new t.vpe,this.onModelChange=function(){},this.onModelTouched=function(){},this.inputFieldValue=null,this.navigationState=null,this._numberOfMonths=1,this._view="date",this.convertTo24Hour=function(u,c){return"12"==this.hourFormat?12===u?c?12:0:c?u+12:u:u}}return(0,w.Z)(l,[{key:"content",set:function(e){var n=this;this.contentViewChild=e,this.contentViewChild&&(this.isMonthNavigate?(Promise.resolve(null).then(function(){return n.updateFocus()}),this.isMonthNavigate=!1):this.focus||this.initFocusableCell())}},{key:"view",get:function(){return this._view},set:function(e){this._view=e,this.currentView=this._view}},{key:"defaultDate",get:function(){return this._defaultDate},set:function(e){if(this._defaultDate=e,this.initialized){var n=e||new Date;this.currentMonth=n.getMonth(),this.currentYear=n.getFullYear(),this.initTime(n),this.createMonths(this.currentMonth,this.currentYear)}}},{key:"minDate",get:function(){return this._minDate},set:function(e){this._minDate=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"maxDate",get:function(){return this._maxDate},set:function(e){this._maxDate=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"disabledDates",get:function(){return this._disabledDates},set:function(e){this._disabledDates=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"disabledDays",get:function(){return this._disabledDays},set:function(e){this._disabledDays=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"yearRange",get:function(){return this._yearRange},set:function(e){if(this._yearRange=e,e){var n=e.split(":"),a=parseInt(n[0]),r=parseInt(n[1]);this.populateYearOptions(a,r)}}},{key:"showTime",get:function(){return this._showTime},set:function(e){this._showTime=e,void 0===this.currentHour&&this.initTime(this.value||new Date),this.updateInputfield()}},{key:"locale",get:function(){return this._locale},set:function(e){console.warn("Locale property has no effect, use new i18n API instead.")}},{key:"responsiveOptions",get:function(){return this._responsiveOptions},set:function(e){this._responsiveOptions=e,this.destroyResponsiveStyleElement(),this.createResponsiveStyle()}},{key:"numberOfMonths",get:function(){return this._numberOfMonths},set:function(e){this._numberOfMonths=e,this.destroyResponsiveStyleElement(),this.createResponsiveStyle()}},{key:"firstDayOfWeek",get:function(){return this._firstDayOfWeek},set:function(e){this._firstDayOfWeek=e,this.createWeekDays()}},{key:"ngOnInit",value:function(){var e=this;this.attributeSelector=_e();var n=this.defaultDate||new Date;this.createResponsiveStyle(),this.currentMonth=n.getMonth(),this.currentYear=n.getFullYear(),this.currentView=this.view,"date"===this.view&&(this.createWeekDays(),this.initTime(n),this.createMonths(this.currentMonth,this.currentYear),this.ticksTo1970=24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*60*60*1e7),this.translationSubscription=this.config.translationObserver.subscribe(function(){e.createWeekDays()}),this.initialized=!0}},{key:"ngAfterContentInit",value:function(){var e=this;this.templates.forEach(function(n){switch(n.getType()){case"date":default:e.dateTemplate=n.template;break;case"decade":e.decadeTemplate=n.template;break;case"disabledDate":e.disabledDateTemplate=n.template;break;case"header":e.headerTemplate=n.template;break;case"footer":e.footerTemplate=n.template}})}},{key:"ngAfterViewInit",value:function(){this.inline&&(this.contentViewChild&&this.contentViewChild.nativeElement.setAttribute(this.attributeSelector,""),this.disabled||(this.initFocusableCell(),1===this.numberOfMonths&&(this.contentViewChild.nativeElement.style.width=p.getOuterWidth(this.containerViewChild.nativeElement)+"px")))}},{key:"getTranslation",value:function(e){return this.config.getTranslation(e)}},{key:"populateYearOptions",value:function(e,n){this.yearOptions=[];for(var a=e;a<=n;a++)this.yearOptions.push(a)}},{key:"createWeekDays",value:function(){this.weekDays=[];for(var e=this.getFirstDateOfWeek(),n=this.getTranslation(R.DAY_NAMES_MIN),a=0;a<7;a++)this.weekDays.push(n[e]),e=6==e?0:++e}},{key:"monthPickerValues",value:function(){for(var e=[],n=0;n<=11;n++)e.push(this.config.getTranslation("monthNamesShort")[n]);return e}},{key:"yearPickerValues",value:function(){for(var e=[],n=this.currentYear-this.currentYear%10,a=0;a<10;a++)e.push(n+a);return e}},{key:"createMonths",value:function(e,n){this.months=this.months=[];for(var a=0;a11&&(r=r%11-1,s=n+1),this.months.push(this.createMonth(r,s))}}},{key:"getWeekNumber",value:function(e){var n=new Date(e.getTime());n.setDate(n.getDate()+4-(n.getDay()||7));var a=n.getTime();return n.setMonth(0),n.setDate(1),Math.floor(Math.round((a-n.getTime())/864e5)/7)+1}},{key:"createMonth",value:function(e,n){for(var a=[],r=this.getFirstDayOfMonthIndex(e,n),s=this.getDaysCountInMonth(e,n),u=this.getDaysCountInPrevMonth(e,n),c=1,d=new Date,h=[],v=Math.ceil((s+r)/7),f=0;fs){var O=this.getNextMonthAndYear(e,n);g.push({day:c-s,month:O.month,year:O.year,otherMonth:!0,today:this.isToday(d,c-s,O.month,O.year),selectable:this.isSelectable(c-s,O.month,O.year,!0)})}else g.push({day:c,month:e,year:n,today:this.isToday(d,c,e,n),selectable:this.isSelectable(c,e,n,!1)});c++}this.showWeek&&h.push(this.getWeekNumber(new Date(g[0].year,g[0].month,g[0].day))),a.push(g)}return{month:e,year:n,dates:a,weekNumbers:h}}},{key:"initTime",value:function(e){this.pm=e.getHours()>11,this.showTime?(this.currentMinute=e.getMinutes(),this.currentSecond=e.getSeconds(),this.setCurrentHourPM(e.getHours())):this.timeOnly&&(this.currentMinute=0,this.currentHour=0,this.currentSecond=0)}},{key:"navBackward",value:function(e){var n=this;this.disabled?e.preventDefault():(this.isMonthNavigate=!0,"month"===this.currentView?(this.decrementYear(),setTimeout(function(){n.updateFocus()},1)):"year"===this.currentView?(this.decrementDecade(),setTimeout(function(){n.updateFocus()},1)):(0===this.currentMonth?(this.currentMonth=11,this.decrementYear()):this.currentMonth--,this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)))}},{key:"navForward",value:function(e){var n=this;this.disabled?e.preventDefault():(this.isMonthNavigate=!0,"month"===this.currentView?(this.incrementYear(),setTimeout(function(){n.updateFocus()},1)):"year"===this.currentView?(this.incrementDecade(),setTimeout(function(){n.updateFocus()},1)):(11===this.currentMonth?(this.currentMonth=0,this.incrementYear()):this.currentMonth++,this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)))}},{key:"decrementYear",value:function(){if(this.currentYear--,this.yearNavigator&&this.currentYearthis.yearOptions[this.yearOptions.length-1]){var e=this.yearOptions[this.yearOptions.length-1]-this.yearOptions[0];this.populateYearOptions(this.yearOptions[0]+e,this.yearOptions[this.yearOptions.length-1]+e)}}},{key:"switchToMonthView",value:function(e){this.setCurrentView("month"),e.preventDefault()}},{key:"switchToYearView",value:function(e){this.setCurrentView("year"),e.preventDefault()}},{key:"onDateSelect",value:function(e,n){var a=this;!this.disabled&&n.selectable?(this.isMultipleSelection()&&this.isSelected(n)?(this.value=this.value.filter(function(r,s){return!a.isDateEquals(r,n)}),0===this.value.length&&(this.value=null),this.updateModel(this.value)):this.shouldSelectDate(n)&&this.selectDate(n),this.isSingleSelection()&&this.hideOnDateTimeSelect&&setTimeout(function(){e.preventDefault(),a.hideOverlay(),a.mask&&a.disableModality(),a.cd.markForCheck()},150),this.updateInputfield(),e.preventDefault()):e.preventDefault()}},{key:"shouldSelectDate",value:function(e){return!this.isMultipleSelection()||null==this.maxDateCount||this.maxDateCount>(this.value?this.value.length:0)}},{key:"onMonthSelect",value:function(e,n){"month"===this.view?this.onDateSelect(e,{year:this.currentYear,month:n,day:1,selectable:!0}):(this.currentMonth=n,this.createMonths(this.currentMonth,this.currentYear),this.setCurrentView("date"),this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}))}},{key:"onYearSelect",value:function(e,n){"year"===this.view?this.onDateSelect(e,{year:n,month:0,day:1,selectable:!0}):(this.currentYear=n,this.setCurrentView("month"),this.onYearChange.emit({month:this.currentMonth+1,year:this.currentYear}))}},{key:"updateInputfield",value:function(){var e="";if(this.value)if(this.isSingleSelection())e=this.formatDateTime(this.value);else if(this.isMultipleSelection())for(var n=0;n11,this.currentHour=e>=12?12==e?12:e-12:0==e?12:e):this.currentHour=e}},{key:"setCurrentView",value:function(e){this.currentView=e,this.cd.detectChanges(),this.alignOverlay()}},{key:"selectDate",value:function(e){var n=new Date(e.year,e.month,e.day);if(this.showTime&&(n.setHours("12"==this.hourFormat?12===this.currentHour?this.pm?12:0:this.pm?this.currentHour+12:this.currentHour:this.currentHour),n.setMinutes(this.currentMinute),n.setSeconds(this.currentSecond)),this.minDate&&this.minDate>n&&(this.setCurrentHourPM((n=this.minDate).getHours()),this.currentMinute=n.getMinutes(),this.currentSecond=n.getSeconds()),this.maxDate&&this.maxDate=a.getTime()?r=n:(a=n,r=null),this.updateModel([a,r])}else this.updateModel([n,null]);this.onSelect.emit(n)}},{key:"updateModel",value:function(e){var n=this;if(this.value=e,"date"==this.dataType)this.onModelChange(this.value);else if("string"==this.dataType)if(this.isSingleSelection())this.onModelChange(this.formatDateTime(this.value));else{var a=null;this.value&&(a=this.value.map(function(r){return n.formatDateTime(r)})),this.onModelChange(a)}}},{key:"getFirstDayOfMonthIndex",value:function(e,n){var a=new Date;a.setDate(1),a.setMonth(e),a.setFullYear(n);var r=a.getDay()+this.getSundayIndex();return r>=7?r-7:r}},{key:"getDaysCountInMonth",value:function(e,n){return 32-this.daylightSavingAdjust(new Date(n,e,32)).getDate()}},{key:"getDaysCountInPrevMonth",value:function(e,n){var a=this.getPreviousMonthAndYear(e,n);return this.getDaysCountInMonth(a.month,a.year)}},{key:"getPreviousMonthAndYear",value:function(e,n){var a,r;return 0===e?(a=11,r=n-1):(a=e-1,r=n),{month:a,year:r}}},{key:"getNextMonthAndYear",value:function(e,n){var a,r;return 11===e?(a=0,r=n+1):(a=e+1,r=n),{month:a,year:r}}},{key:"getSundayIndex",value:function(){var e=this.getFirstDateOfWeek();return e>0?7-e:0}},{key:"isSelected",value:function(e){if(!this.value)return!1;if(this.isSingleSelection())return this.isDateEquals(this.value,e);if(this.isMultipleSelection()){var r,n=!1,a=(0,E.Z)(this.value);try{for(a.s();!(r=a.n()).done&&!(n=this.isDateEquals(r.value,e)););}catch(u){a.e(u)}finally{a.f()}return n}return this.isRangeSelection()?this.value[1]?this.isDateEquals(this.value[0],e)||this.isDateEquals(this.value[1],e)||this.isDateBetween(this.value[0],this.value[1],e):this.isDateEquals(this.value[0],e):void 0}},{key:"isComparable",value:function(){return null!=this.value&&"string"!=typeof this.value}},{key:"isMonthSelected",value:function(e){if(this.isComparable()){var n=this.isRangeSelection()?this.value[0]:this.value;return!this.isMultipleSelection()&&n.getMonth()===e&&n.getFullYear()===this.currentYear}return!1}},{key:"isYearSelected",value:function(e){if(this.isComparable()){var n=this.isRangeSelection()?this.value[0]:this.value;return!this.isMultipleSelection()&&n.getFullYear()===e}return!1}},{key:"isDateEquals",value:function(e,n){return!!(e&&e instanceof Date)&&e.getDate()===n.day&&e.getMonth()===n.month&&e.getFullYear()===n.year}},{key:"isDateBetween",value:function(e,n,a){if(e&&n){var s=new Date(a.year,a.month,a.day);return e.getTime()<=s.getTime()&&n.getTime()>=s.getTime()}return!1}},{key:"isSingleSelection",value:function(){return"single"===this.selectionMode}},{key:"isRangeSelection",value:function(){return"range"===this.selectionMode}},{key:"isMultipleSelection",value:function(){return"multiple"===this.selectionMode}},{key:"isToday",value:function(e,n,a,r){return e.getDate()===n&&e.getMonth()===a&&e.getFullYear()===r}},{key:"isSelectable",value:function(e,n,a,r){var s=!0,u=!0,c=!0,d=!0;return!(r&&!this.selectOtherMonths)&&(this.minDate&&(this.minDate.getFullYear()>a||this.minDate.getFullYear()===a&&(this.minDate.getMonth()>n||this.minDate.getMonth()===n&&this.minDate.getDate()>e))&&(s=!1),this.maxDate&&(this.maxDate.getFullYear()1||this.disabled}},{key:"onPrevButtonClick",value:function(e){this.navigationState={backward:!0,button:!0},this.navBackward(e)}},{key:"onNextButtonClick",value:function(e){this.navigationState={backward:!1,button:!0},this.navForward(e)}},{key:"onContainerButtonKeydown",value:function(e){switch(e.which){case 9:this.inline||this.trapFocus(e);break;case 27:this.overlayVisible=!1,e.preventDefault()}}},{key:"onInputKeydown",value:function(e){this.isKeydown=!0,40===e.keyCode&&this.contentViewChild?this.trapFocus(e):27===e.keyCode||13===e.keyCode?this.overlayVisible&&(this.overlayVisible=!1,e.preventDefault()):9===e.keyCode&&this.contentViewChild&&(p.getFocusableElements(this.contentViewChild.nativeElement).forEach(function(n){return n.tabIndex="-1"}),this.overlayVisible&&(this.overlayVisible=!1))}},{key:"onDateCellKeydown",value:function(e,n,a){var r=e.currentTarget,s=r.parentElement;switch(e.which){case 40:r.tabIndex="-1";var u=p.index(s),c=s.parentElement.nextElementSibling;c?p.hasClass(c.children[u].children[0],"p-disabled")?(this.navigationState={backward:!1},this.navForward(e)):(c.children[u].children[0].tabIndex="0",c.children[u].children[0].focus()):(this.navigationState={backward:!1},this.navForward(e)),e.preventDefault();break;case 38:r.tabIndex="-1";var h=p.index(s),v=s.parentElement.previousElementSibling;if(v){var f=v.children[h].children[0];p.hasClass(f,"p-disabled")?(this.navigationState={backward:!0},this.navBackward(e)):(f.tabIndex="0",f.focus())}else this.navigationState={backward:!0},this.navBackward(e);e.preventDefault();break;case 37:r.tabIndex="-1";var g=s.previousElementSibling;if(g){var m=g.children[0];p.hasClass(m,"p-disabled")||p.hasClass(m.parentElement,"p-datepicker-weeknumber")?this.navigateToMonth(!0,a):(m.tabIndex="0",m.focus())}else this.navigateToMonth(!0,a);e.preventDefault();break;case 39:r.tabIndex="-1";var y=s.nextElementSibling;if(y){var k=y.children[0];p.hasClass(k,"p-disabled")?this.navigateToMonth(!1,a):(k.tabIndex="0",k.focus())}else this.navigateToMonth(!1,a);e.preventDefault();break;case 13:case 32:this.onDateSelect(e,n),e.preventDefault();break;case 27:this.overlayVisible=!1,e.preventDefault();break;case 9:this.inline||this.trapFocus(e)}}},{key:"onMonthCellKeydown",value:function(e,n){var a=e.currentTarget;switch(e.which){case 38:case 40:a.tabIndex="-1";var r=a.parentElement.children,s=p.index(a),u=r[40===e.which?s+3:s-3];u&&(u.tabIndex="0",u.focus()),e.preventDefault();break;case 37:a.tabIndex="-1";var c=a.previousElementSibling;c?(c.tabIndex="0",c.focus()):(this.navigationState={backward:!0},this.navBackward(e)),e.preventDefault();break;case 39:a.tabIndex="-1";var d=a.nextElementSibling;d?(d.tabIndex="0",d.focus()):(this.navigationState={backward:!1},this.navForward(e)),e.preventDefault();break;case 13:this.onMonthSelect(e,n),e.preventDefault();break;case 13:case 32:case 27:this.overlayVisible=!1,e.preventDefault();break;case 9:this.inline||this.trapFocus(e)}}},{key:"onYearCellKeydown",value:function(e,n){var a=e.currentTarget;switch(e.which){case 38:case 40:a.tabIndex="-1";var r=a.parentElement.children,s=p.index(a),u=r[40===e.which?s+2:s-2];u&&(u.tabIndex="0",u.focus()),e.preventDefault();break;case 37:a.tabIndex="-1";var c=a.previousElementSibling;c?(c.tabIndex="0",c.focus()):(this.navigationState={backward:!0},this.navBackward(e)),e.preventDefault();break;case 39:a.tabIndex="-1";var d=a.nextElementSibling;d?(d.tabIndex="0",d.focus()):(this.navigationState={backward:!1},this.navForward(e)),e.preventDefault();break;case 13:case 32:this.onYearSelect(e,n),e.preventDefault();break;case 27:this.overlayVisible=!1,e.preventDefault();break;case 9:this.trapFocus(e)}}},{key:"navigateToMonth",value:function(e,n){if(e)if(1===this.numberOfMonths||0===n)this.navigationState={backward:!0},this.navBackward(event);else{var r=p.find(this.contentViewChild.nativeElement.children[n-1],".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)"),s=r[r.length-1];s.tabIndex="0",s.focus()}else if(1===this.numberOfMonths||n===this.numberOfMonths-1)this.navigationState={backward:!1},this.navForward(event);else{var c=p.findSingle(this.contentViewChild.nativeElement.children[n+1],".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)");c.tabIndex="0",c.focus()}}},{key:"updateFocus",value:function(){var e;if(this.navigationState){var n;if(this.navigationState.button)this.initFocusableCell(),this.navigationState.backward?p.findSingle(this.contentViewChild.nativeElement,".p-datepicker-prev").focus():p.findSingle(this.contentViewChild.nativeElement,".p-datepicker-next").focus();else this.navigationState.backward?(n=p.find(this.contentViewChild.nativeElement,"month"===this.currentView?".p-monthpicker .p-monthpicker-month:not(.p-disabled)":"year"===this.currentView?".p-yearpicker .p-yearpicker-year:not(.p-disabled)":".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)"))&&n.length>0&&(e=n[n.length-1]):e=p.findSingle(this.contentViewChild.nativeElement,"month"===this.currentView?".p-monthpicker .p-monthpicker-month:not(.p-disabled)":"year"===this.currentView?".p-yearpicker .p-yearpicker-year:not(.p-disabled)":".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)"),e&&(e.tabIndex="0",e.focus());this.navigationState=null}else this.initFocusableCell()}},{key:"initFocusableCell",value:function(){var e;if("month"===this.currentView){var n=p.find(this.contentViewChild.nativeElement,".p-monthpicker .p-monthpicker-month:not(.p-disabled)"),a=p.findSingle(this.contentViewChild.nativeElement,".p-monthpicker .p-monthpicker-month.p-highlight");n.forEach(function(h){return h.tabIndex=-1}),e=a||n[0],0===n.length&&p.find(this.contentViewChild.nativeElement,'.p-monthpicker .p-monthpicker-month.p-disabled[tabindex = "0"]').forEach(function(h){return h.tabIndex=-1})}else if("year"===this.currentView){var s=p.find(this.contentViewChild.nativeElement,".p-yearpicker .p-yearpicker-year:not(.p-disabled)"),u=p.findSingle(this.contentViewChild.nativeElement,".p-yearpicker .p-yearpicker-year.p-highlight");s.forEach(function(h){return h.tabIndex=-1}),e=u||s[0],0===s.length&&p.find(this.contentViewChild.nativeElement,'.p-yearpicker .p-yearpicker-year.p-disabled[tabindex = "0"]').forEach(function(h){return h.tabIndex=-1})}else if(!(e=p.findSingle(this.contentViewChild.nativeElement,"span.p-highlight"))){var d=p.findSingle(this.contentViewChild.nativeElement,"td.p-datepicker-today span:not(.p-disabled):not(.p-ink)");e=d||p.findSingle(this.contentViewChild.nativeElement,".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)")}e&&(e.tabIndex="0",!this.preventFocus&&(!this.navigationState||!this.navigationState.button)&&setTimeout(function(){e.focus()},1),this.preventFocus=!1)}},{key:"trapFocus",value:function(e){var n=p.getFocusableElements(this.contentViewChild.nativeElement);if(n&&n.length>0)if(n[0].ownerDocument.activeElement){var a=n.indexOf(n[0].ownerDocument.activeElement);if(e.shiftKey)if(-1==a||0===a)if(this.focusTrap)n[n.length-1].focus();else{if(-1===a)return this.hideOverlay();if(0===a)return}else n[a-1].focus();else if(-1==a||a===n.length-1){if(!this.focusTrap&&-1!=a)return this.hideOverlay();n[0].focus()}else n[a+1].focus()}else n[0].focus();e.preventDefault()}},{key:"onMonthDropdownChange",value:function(e){this.currentMonth=parseInt(e),this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)}},{key:"onYearDropdownChange",value:function(e){this.currentYear=parseInt(e),this.onYearChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)}},{key:"validateTime",value:function(e,n,a,r){var s=this.value,u=this.convertTo24Hour(e,r);this.isRangeSelection()&&(s=this.value[1]||this.value[0]),this.isMultipleSelection()&&(s=this.value[this.value.length-1]);var c=s?s.toDateString():null;return!(this.minDate&&c&&this.minDate.toDateString()===c&&(this.minDate.getHours()>u||this.minDate.getHours()===u&&(this.minDate.getMinutes()>n||this.minDate.getMinutes()===n&&this.minDate.getSeconds()>a))||this.maxDate&&c&&this.maxDate.toDateString()===c&&(this.maxDate.getHours()=24?a-24:a:"12"==this.hourFormat&&(this.currentHour<12&&a>11&&(r=!this.pm),a=a>=13?a-12:a),this.validateTime(a,this.currentMinute,this.currentSecond,r)&&(this.currentHour=a,this.pm=r),e.preventDefault()}},{key:"onTimePickerElementMouseDown",value:function(e,n,a){this.disabled||(this.repeat(e,null,n,a),e.preventDefault())}},{key:"onTimePickerElementMouseUp",value:function(e){this.disabled||(this.clearTimePickerTimer(),this.updateTime())}},{key:"onTimePickerElementMouseLeave",value:function(){!this.disabled&&this.timePickerTimer&&(this.clearTimePickerTimer(),this.updateTime())}},{key:"repeat",value:function(e,n,a,r){var s=this,u=n||500;switch(this.clearTimePickerTimer(),this.timePickerTimer=setTimeout(function(){s.repeat(e,100,a,r),s.cd.markForCheck()},u),a){case 0:1===r?this.incrementHour(e):this.decrementHour(e);break;case 1:1===r?this.incrementMinute(e):this.decrementMinute(e);break;case 2:1===r?this.incrementSecond(e):this.decrementSecond(e)}this.updateInputfield()}},{key:"clearTimePickerTimer",value:function(){this.timePickerTimer&&(clearTimeout(this.timePickerTimer),this.timePickerTimer=null)}},{key:"decrementHour",value:function(e){var n=this.currentHour-this.stepHour,a=this.pm;"24"==this.hourFormat?n=n<0?24+n:n:"12"==this.hourFormat&&(12===this.currentHour&&(a=!this.pm),n=n<=0?12+n:n),this.validateTime(n,this.currentMinute,this.currentSecond,a)&&(this.currentHour=n,this.pm=a),e.preventDefault()}},{key:"incrementMinute",value:function(e){var n=this.currentMinute+this.stepMinute;this.validateTime(this.currentHour,n=n>59?n-60:n,this.currentSecond,this.pm)&&(this.currentMinute=n),e.preventDefault()}},{key:"decrementMinute",value:function(e){var n=this.currentMinute-this.stepMinute;this.validateTime(this.currentHour,n=n<0?60+n:n,this.currentSecond,this.pm)&&(this.currentMinute=n),e.preventDefault()}},{key:"incrementSecond",value:function(e){var n=this.currentSecond+this.stepSecond;this.validateTime(this.currentHour,this.currentMinute,n=n>59?n-60:n,this.pm)&&(this.currentSecond=n),e.preventDefault()}},{key:"decrementSecond",value:function(e){var n=this.currentSecond-this.stepSecond;this.validateTime(this.currentHour,this.currentMinute,n=n<0?60+n:n,this.pm)&&(this.currentSecond=n),e.preventDefault()}},{key:"updateTime",value:function(){var e=this.value;this.isRangeSelection()&&(e=this.value[1]||this.value[0]),this.isMultipleSelection()&&(e=this.value[this.value.length-1]),(e=e?new Date(e.getTime()):new Date).setHours("12"==this.hourFormat?12===this.currentHour?this.pm?12:0:this.pm?this.currentHour+12:this.currentHour:this.currentHour),e.setMinutes(this.currentMinute),e.setSeconds(this.currentSecond),this.isRangeSelection()&&(e=this.value[1]?[this.value[0],e]:[e,null]),this.isMultipleSelection()&&(e=[].concat((0,W.Z)(this.value.slice(0,-1)),[e])),this.updateModel(e),this.onSelect.emit(e),this.updateInputfield()}},{key:"toggleAMPM",value:function(e){var n=!this.pm;this.validateTime(this.currentHour,this.currentMinute,this.currentSecond,n)&&(this.pm=n,this.updateTime()),e.preventDefault()}},{key:"onUserInput",value:function(e){if(this.isKeydown){this.isKeydown=!1;var n=e.target.value;try{var a=this.parseValueFromString(n);this.isValidSelection(a)&&(this.updateModel(a),this.updateUI())}catch(s){this.updateModel(this.keepInvalid?n:null)}this.filled=null!=n&&n.length,this.onInput.emit(e)}}},{key:"isValidSelection",value:function(e){var n=this,a=!0;return this.isSingleSelection()?this.isSelectable(e.getDate(),e.getMonth(),e.getFullYear(),!1)||(a=!1):e.every(function(r){return n.isSelectable(r.getDate(),r.getMonth(),r.getFullYear(),!1)})&&this.isRangeSelection()&&(a=e.length>1&&e[1]>e[0]),a}},{key:"parseValueFromString",value:function(e){if(!e||0===e.trim().length)return null;var n;if(this.isSingleSelection())n=this.parseDateTime(e);else if(this.isMultipleSelection()){var a=e.split(this.multipleSeparator);n=[];var s,r=(0,E.Z)(a);try{for(r.s();!(s=r.n()).done;)n.push(this.parseDateTime(s.value.trim()))}catch(h){r.e(h)}finally{r.f()}}else if(this.isRangeSelection()){var c=e.split(" "+this.rangeSeparator+" ");n=[];for(var d=0;d11&&12!=a&&(a-=12),n+="12"==this.hourFormat&&0===a?12:a<10?"0"+a:a,n+=":",n+=r<10?"0"+r:r,this.showSeconds&&(n+=":",n+=s<10?"0"+s:s),"12"==this.hourFormat&&(n+=e.getHours()>11?" PM":" AM"),n}},{key:"parseTime",value:function(e){var n=e.split(":");if(n.length!==(this.showSeconds?3:2))throw"Invalid time";var r=parseInt(n[0]),s=parseInt(n[1]),u=this.showSeconds?parseInt(n[2]):null;if(isNaN(r)||isNaN(s)||r>23||s>59||"12"==this.hourFormat&&r>12||this.showSeconds&&(isNaN(u)||u>59))throw"Invalid time";return"12"==this.hourFormat&&(12!==r&&this.pm?r+=12:!this.pm&&12===r&&(r-=12)),{hour:r,minute:s,second:u}}},{key:"parseDate",value:function(e,n){if(null==n||null==e)throw"Invalid arguments";if(""===(e="object"==typeof e?e.toString():e+""))return null;var a,r,s,m,u=0,c="string"!=typeof this.shortYearCutoff?this.shortYearCutoff:(new Date).getFullYear()%100+parseInt(this.shortYearCutoff,10),d=-1,h=-1,v=-1,f=-1,g=!1,y=function(F){var V=a+1-1)for(h=1,v=f;!(v<=(r=this.getDaysCountInMonth(d,h-1)));)h++,v-=r;if((m=this.daylightSavingAdjust(new Date(d,h-1,v))).getFullYear()!==d||m.getMonth()+1!==h||m.getDate()!==v)throw"Invalid date";return m}},{key:"daylightSavingAdjust",value:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null}},{key:"updateFilledState",value:function(){this.filled=this.inputFieldValue&&""!=this.inputFieldValue}},{key:"onTodayButtonClick",value:function(e){var n=new Date,a={day:n.getDate(),month:n.getMonth(),year:n.getFullYear(),otherMonth:n.getMonth()!==this.currentMonth||n.getFullYear()!==this.currentYear,today:!0,selectable:!0};this.onDateSelect(e,a),this.onTodayClick.emit(e)}},{key:"onClearButtonClick",value:function(e){this.updateModel(null),this.updateInputfield(),this.hideOverlay(),this.onClearClick.emit(e)}},{key:"createResponsiveStyle",value:function(){if(this.numberOfMonths>1&&this.responsiveOptions){this.responsiveStyleElement||(this.responsiveStyleElement=document.createElement("style"),this.responsiveStyleElement.type="text/css",document.body.appendChild(this.responsiveStyleElement));var e="";if(this.responsiveOptions)for(var n=(0,W.Z)(this.responsiveOptions).filter(function(h){return!(!h.breakpoint||!h.numMonths)}).sort(function(h,v){return-1*h.breakpoint.localeCompare(v.breakpoint,void 0,{numeric:!0})}),a=0;aspan{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-calendar-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-calendar-clearable{position:relative}\n"],encapsulation:2,data:{animation:[(0,x.X$)("overlayAnimation",[(0,x.SB)("visibleTouchUI",(0,x.oB)({transform:"translate(-50%,-50%)",opacity:1})),(0,x.eR)("void => visible",[(0,x.oB)({opacity:0,transform:"scaleY(0.8)"}),(0,x.jt)("{{showTransitionParams}}",(0,x.oB)({opacity:1,transform:"*"}))]),(0,x.eR)("visible => void",[(0,x.jt)("{{hideTransitionParams}}",(0,x.oB)({opacity:0}))]),(0,x.eR)("void => visibleTouchUI",[(0,x.oB)({opacity:0,transform:"translate3d(-50%, -40%, 0) scale(0.9)"}),(0,x.jt)("{{showTransitionParams}}")]),(0,x.eR)("visibleTouchUI => void",[(0,x.jt)("{{hideTransitionParams}}",(0,x.oB)({opacity:0,transform:"translate3d(-50%, -40%, 0) scale(0.9)"}))])])]},changeDetection:0}),o}(),Ta=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,J,Z,Y],J,Z]}),o}(),Lo=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,pn,ke,se,H.Cl,I.u5,J,Cn,Ta,ue,Dn],Z,H.Cl]}),o}(),Ao=b(88547),Ho=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,Vt.o.forChild(Nt),L.p0,Bt.HT,ve.TU,he.c,te.lN,ae.LD,I.UX,I.u5,Zt.V,me.Ps,U.Is,ne.JX,Lo,fe.AV,ie.Fk,Ao.J]]}),o}()}}]); +//# sourceMappingURL=834.1cf66dd81d3e2489.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/834.1cf66dd81d3e2489.js.map b/frontend/src/main/resources/static/834.1cf66dd81d3e2489.js.map new file mode 100644 index 0000000..49fa5a3 --- /dev/null +++ b/frontend/src/main/resources/static/834.1cf66dd81d3e2489.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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","names":["i0","ctx_r54","ctx_r75","ctx_r81","SubstanceNamesComponent","dialog","gaService","cvService","overlayContainerService","utilsService","c","Subject","FormControl","this","filterSelectObj","name","columnProp","options","substanceUpdated","subscribe","a","substance","names","filtered","countUpdate","emit","length","searchControl","valueChanges","typeFilterOn","filterList","value","analyticsEventCategory","JSON","parse","stringify","filterBackup","console","log","error","getVocabularies","slice","sort","b","returned","displayName","preferred","toUpperCase","pageChange","filter","o","getFilterObject","overlayContainer","getContainerElement","nameFilter","nameFilterValue","filterTable","stdNameFilter","stdNameFilterValue","typeFilter","typeFilterValue","langFilter","langFilterValue","hideFilters","showHideFilterText","event","nameType","displayedColumns","displayedFilterColumns","type","nFilter","snFilter","lFilter","tFilter","lFilterCode","undefined","getLangFilterValue","tFilterCode","getTypeFilterValue","n","f","stdName","toLowerCase","includes","isIncluded","push","D","k","field","languages","langFilterOptions","l","s","display","oneLang","h","languageVocabulary","e","v","typeFilterOptions","oneType","typeVocabulary","u","tempFiltered","forEach","item","indexOf","target","setTimeout","page","column","fullObj","key","uniqChk","obj","data","active","direction","isAsc","r","compare","getLanguages","modelValue","setValue","getDomainVocabulary","response","LANGUAGE","dictionary","NAME_TYPE","getLangFilterOptions","getTypeFilterOptions","languagesArray","language","join","templateRef","sendEvent","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","nameOrgs","domains","nameJurisdiction","SubstanceCardBaseFilteredList","selectors","ctx","ObjectUtils","obj1","obj2","resolveFieldData","equalsByValue","i","arrA","Array","isArray","arrB","dateA","Date","dateB","getTime","regexpA","RegExp","regexpB","toString","keys","Object","prototype","hasOwnProperty","call","isFunction","fields","split","len","constructor","apply","from","to","splice","index","arr","sourceArr","injected","findIndexInList","list","equals","str","search","replace","isEmpty","lastId","concat","zindexutils","zIndexes","getZIndex","el","parseInt","get","set","baseZIndex","String","lastZIndex","newZIndex","generateZIndex","clear","revertZIndex","getCurrent","ZIndexUtils","FilterMatchMode","STARTS_WITH","CONTAINS","NOT_CONTAINS","ENDS_WITH","EQUALS","NOT_EQUALS","IN","LESS_THAN","LESS_THAN_OR_EQUAL_TO","GREATER_THAN","GREATER_THAN_OR_EQUAL_TO","BETWEEN","IS","IS_NOT","BEFORE","AFTER","DATE_IS","DATE_IS_NOT","DATE_BEFORE","DATE_AFTER","PrimeNGConfig","C","ripple","filterMatchModeOptions","text","numeric","date","translation","startsWith","contains","notContains","endsWith","notEquals","noFilter","lt","lte","gt","gte","is","isNot","before","after","dateIs","dateIsNot","dateBefore","dateAfter","matchAll","matchAny","addRule","removeRule","accept","reject","choose","upload","cancel","dayNames","dayNamesShort","dayNamesMin","monthNames","monthNamesShort","dateFormat","firstDayOfWeek","today","weekHeader","weak","medium","strong","passwordPrompt","emptyMessage","emptyFilterMessage","modal","overlay","menu","tooltip","translationSource","translationObserver","asObservable","assign","next","ɵfac","ɵprov","factory","TranslationKeys","NO_FILTER","LT","LTE","GT","GTE","CLEAR","APPLY","MATCH_ALL","MATCH_ANY","ADD_RULE","REMOVE_RULE","ACCEPT","REJECT","CHOOSE","UPLOAD","CANCEL","DAY_NAMES","DAY_NAMES_SHORT","DAY_NAMES_MIN","MONTH_NAMES","MONTH_NAMES_SHORT","FIRST_DAY_OF_WEEK","TODAY","WEEK_HEADER","WEAK","MEDIUM","STRONG","PASSWORD_PROMPT","EMPTY_MESSAGE","EMPTY_FILTER_MESSAGE","FilterService","filters","filterLocale","trim","filterValue","toLocaleLowerCase","stringValue","in","between","toDateString","filterMatchMode","filteredItems","d","fieldValue","y","rule","fn","OverlayService","clickSource","clickObservable","PrimeTemplate","template","ɵdir","SharedModule","ɵmod","ɵinj","CommonModule","DomHandler","element","className","classList","add","styles","remove","test","parentNode","children","child","selector","querySelectorAll","querySelector","childNodes","num","nodeType","attributeName","attributes","top","left","elementDimensions","offsetParent","width","offsetWidth","height","offsetHeight","getHiddenElementDimensions","targetHeight","targetOffset","getBoundingClientRect","viewport","getViewport","transformOrigin","elementOuterHeight","elementOuterWidth","targetOuterHeight","targetOuterWidth","windowScrollTop","getWindowScrollTop","windowScrollLeft","getWindowScrollLeft","Math","max","parents","arguments","getParents","scrollableParents","overflowRegex","overflowCheck","node","styleDeclaration","window","getComputedStyle","getPropertyValue","parent","scrollSelectors","dataset","scrollselectors","g","findSingle","visibility","elementHeight","elementWidth","dimensions","container","borderTopValue","borderTop","parseFloat","paddingTopValue","paddingTop","containerRect","offset","document","body","scrollTop","scroll","clientHeight","itemHeight","getOuterHeight","duration","opacity","last","requestAnimationFrame","tick","ms","gap","fading","setInterval","clearInterval","doc","documentElement","pageYOffset","clientTop","pageXOffset","scrollLeft","clientLeft","p","Element","matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","margin","marginLeft","marginRight","paddingLeft","paddingRight","paddingBottom","marginTop","marginBottom","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","win","getElementsByTagName","innerWidth","clientWidth","innerHeight","rect","replacementElement","replaceChild","navigator","userAgent","ua","MSStream","maxTouchPoints","isElement","appendChild","nativeElement","removeChild","HTMLElement","nodeName","calculatedScrollbarWidth","scrollDiv","createElement","scrollbarWidth","calculatedScrollbarHeight","scrollbarHeight","methodName","args","getSelection","empty","removeAllRanges","rangeCount","getRangeAt","getClientRects","selection","browser","matched","resolveUserAgent","version","chrome","webkit","safari","match","exec","Number","isInteger","isFinite","floor","focusableElements","find","visibleFocusableElements","focusableElement","zindex","ConnectedOverlayScrollHandler","listener","getScrollableParents","addEventListener","removeEventListener","unbindScrollListener","Tooltip","zone","config","escape","_tooltipOptions","tooltipPosition","tooltipEvent","appendTo","tooltipZIndex","positionTop","positionLeft","_disabled","val","deactivate","runOutsideAngular","getOption","mouseEnterListener","onMouseEnter","bind","mouseLeaveListener","onMouseLeave","clickListener","onClick","focusListener","onFocus","blurListener","onBlur","getTarget","simpleChange","setOption","currentValue","positionStyle","tooltipStyleClass","showDelay","hideDelay","life","disabled","tooltipLabel","updateText","align","show","hide","tooltipOptions","showTimeout","activate","clearHideTimeout","hideTimeout","clearShowTimeout","tooltipArrow","tooltipText","position","create","bindDocumentResizeListener","bindScrollListener","innerHTML","createTextNode","alignTop","isOutOfBounds","alignBottom","alignRight","alignLeft","preAlign","hostOffset","getHostOffset","option","defaultClassName","targetTop","targetLeft","resizeListener","onWindowResize","scrollHandler","unbindDocumentResizeListener","parentElement","clearTimeouts","clearTimeout","unbindEvents","destroy","i1","TooltipModule","Ripple","mouseDownListener","onMouseDown","ink","getInk","x","pageX","pageY","currentTarget","animationListener","onAnimationEnd","RippleModule","onEditableInputClick","onEditableInputChange","onEditableInputFocus","onInputBlur","onKeydown","onFilterInputChange","onItemClick","scrollToSelectedVirtualScrollElement","onOverlayClick","onOverlayAnimationStart","onOverlayAnimationEnd","DROPDOWN_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","Dropdown","multi","DropdownItem","EventEmitter","originalEvent","ɵcmp","directives","i2","encapsulation","renderer","cd","filterService","overlayService","scrollHeight","resetFilterOnHide","dropdownIcon","optionGroupChildren","autoDisplayFirst","autoZIndex","showTransitionOptions","hideTransitionOptions","tooltipPositionStyle","autofocusFilter","onChange","onFilter","onShow","onHide","onClear","onModelChange","onModelTouched","viewPortOffsetTop","id","UniqueComponentId","focused","overlayVisible","destroyed","detectChanges","templates","getType","itemTemplate","selectedItemTemplate","headerTemplate","footerTemplate","emptyFilterTemplate","emptyTemplate","groupTemplate","optionsToDisplay","updateSelectedOption","labelId","listId","_options","selectedOption","findOption","optionsChanged","_filterValue","activateFilter","editable","updateEditableLabel","getOptionLabel","getTranslation","editableInputViewChild","optionLabel","label","optionValue","optionDisabled","optionGroup","optionGroupLabel","items","isOptionDisabled","selectItem","accessibleViewChild","focus","getOptionValue","virtualScroll","viewPort","measureScrollOffset","updateVirtualScrollSelectedIndex","alignOverlay","selectedOptionUpdated","itemsWrapper","range","getRenderedRange","start","virtualScrollSelectedIndex","end","scrollToIndex","resetFilter","markForCheck","filterViewChild","placeholder","group","readonly","isInputClick","isSameNode","bindDocumentClickListener","toState","appendOverlay","selectedListItem","scrollIntoView","block","inline","preventModelTouched","onOverlayHide","virtualAutoScrolled","scrollToOffset","resetOffset","findOptionIndex","containerViewChild","prevEnabledOption","nextEnabledOption","which","altKey","selectedItemIndex","findOptionGroupIndex","nextItemIndex","itemIndex","getOptionGroupChildren","groupIndex","findNextEnabledOption","preventDefault","prevItemIndex","prevGroup","findPrevEnabledOption","metaKey","searchTimeout","newOption","char","previousSearchChar","currentSearchChar","searchValue","searchIndex","searchOptionWithinGroup","searchOption","searchOptionInRange","opt","j","opts","dataKey","inGroup","inputValue","searchFields","filterBy","filteredGroups","optgroup","filteredSubOptions","applyFocus","documentClickListener","listen","ownerDocument","preventDocumentDefault","isOutsideClicked","unbindDocumentClickListener","documentResizeListener","restoreOverlayAppend","i3","Gt","jt","$t","CdkVirtualScrollViewport","Xt","decls","i4","i5","trigger","transition","transform","animate","changeDetection","DropdownModule","ScrollingModule","InputText","ngModel","updateFilledState","filled","model","InputTextModule","ButtonDirective","iconPos","loadingIcon","_loading","_initialStyleClass","getStyleClass","icon","loading","createIconEl","labelElement","setAttribute","initialized","styleClass","iconElement","iconPosClass","iconClass","getIconClass","labelEl","insertBefore","_icon","_label","textContent","setIconClass","setStyleClass","removeIconElement","ButtonModule","onUpButtonMouseDown","onUpButtonMouseUp","onUpButtonMouseLeave","onUpButtonKeyDown","onUpButtonKeyUp","onDownButtonMouseDown","onDownButtonMouseUp","onDownButtonMouseLeave","onDownButtonKeyDown","onDownButtonKeyUp","INPUTNUMBER_VALUE_ACCESSOR","InputNumber","showButtons","format","buttonLayout","incrementButtonIcon","decrementButtonIcon","step","allowEmpty","mode","useGrouping","showClear","onInput","onKeyDown","groupChar","prefixChar","suffixChar","timer","clearTimer","some","updateConstructParser","constructParser","localeMatcher","currency","currencyDisplay","minimumFractionDigits","minFractionDigits","maximumFractionDigits","maxFractionDigits","numberFormat","Intl","NumberFormat","locale","getOptions","numerals","W","reverse","Map","map","_numeral","_group","getGroupingExpression","_minusSign","getMinusSignExpression","_currency","getCurrencyExpression","_decimal","getDecimalExpression","_suffix","getSuffixExpression","_prefix","getPrefixExpression","_index","formatter","charAt","prefix","escapeRegExp","suffix","formattedValue","filteredText","parsedValue","isNaN","interval","dir","repeat","spin","parseValue","input","newValue","validateValue","maxlength","formatValue","updateInput","updateModel","handleOnInput","keyCode","isSpecialChar","lastValue","shiftKey","selectionStart","selectionEnd","newValueStr","isNumeralChar","deleteChar","getDecimalCharIndexes","decimalCharIndex","decimalCharIndexWithoutPrefix","decimalLength","getDecimalLength","lastIndex","setSelectionRange","insertedText","isDecimalMode","updateValue","deleteRange","m","S","code","fromCharCode","isDecimalSign","isMinusSign","insert","clipboardData","getData","filteredData","min","minusCharIndex","suffixCharIndex","currencyCharIndex","sign","minusCharIndexOnText","allowMinusSign","getCharIndexes","insertText","resolvedOptions","operation","charIndex","valueLength","prefixLength","initCursor","resetRegex","valueStr","insertedValueStr","isValueChanged","currentLength","concatValues","newLength","startValue","startExpr","sRegex","tExpr","tRegex","prevChar","nextChar","diff","isGroupChar","val1","val2","valueSplit","Bi","InputNumberModule","PaginatorModule","FormsModule","SELECTBUTTON_VALUE_ACCESSOR","SelectButton","tabindex","onOptionClick","multiple","isSelected","removeOption","selected","TemplateRef","SelectButtonModule","TRISTATECHECKBOX_VALUE_ACCESSOR","TriStateCheckbox","checkboxTrueIcon","checkboxFalseIcon","toggle","TriStateCheckboxModule","onButtonClick","onInputFocus","onInputKeydown","onInputClick","onUserInput","onContainerButtonKeydown","onPrevButtonClick","switchToMonthView","switchToYearView","$implicit","onDateSelect","onDateCellKeydown","onNextButtonClick","onMonthSelect","onMonthCellKeydown","onYearSelect","onYearCellKeydown","incrementSecond","onTimePickerElementMouseDown","onTimePickerElementMouseUp","onTimePickerElementMouseLeave","decrementSecond","toggleAMPM","incrementHour","decrementHour","incrementMinute","decrementMinute","onTodayButtonClick","onClearButtonClick","onOverlayAnimationDone","CALENDAR_VALUE_ACCESSOR","Calendar","multipleSeparator","rangeSeparator","showOtherMonths","shortYearCutoff","hourFormat","stepHour","stepMinute","stepSecond","showSeconds","showOnFocus","showWeek","dataType","selectionMode","todayButtonStyleClass","clearButtonStyleClass","keepInvalid","hideOnDateTimeSelect","timeSeparator","focusTrap","onClose","onSelect","onTodayClick","onClearClick","onMonthChange","onYearChange","onClickOutside","inputFieldValue","navigationState","_numberOfMonths","_view","convertTo24Hour","hours","pm","content","contentViewChild","isMonthNavigate","Promise","resolve","then","updateFocus","initFocusableCell","view","currentView","_defaultDate","defaultDate","currentMonth","getMonth","currentYear","getFullYear","initTime","createMonths","_minDate","_maxDate","_disabledDates","disabledDates","_disabledDays","disabledDays","_yearRange","yearRange","years","yearStart","yearEnd","populateYearOptions","_showTime","showTime","currentHour","updateInputfield","_locale","newLocale","warn","_responsiveOptions","responsiveOptions","destroyResponsiveStyleElement","createResponsiveStyle","numberOfMonths","_firstDayOfWeek","createWeekDays","attributeSelector","ticksTo1970","translationSubscription","dateTemplate","decadeTemplate","disabledDateTemplate","yearOptions","weekDays","dayIndex","getFirstDateOfWeek","dayLabels","monthPickerValues","yearPickerValues","base","month","year","months","createMonth","checkDate","setDate","getDate","getDay","time","setMonth","round","dates","firstDay","getFirstDayOfMonthIndex","daysLength","getDaysCountInMonth","prevMonthDaysLength","getDaysCountInPrevMonth","dayNo","weekNumbers","monthRows","ceil","week","prev","getPreviousMonthAndYear","day","otherMonth","isToday","selectable","isSelectable","remainingDaysLength","getNextMonthAndYear","getWeekNumber","getHours","currentMinute","getMinutes","currentSecond","getSeconds","setCurrentHourPM","timeOnly","decrementYear","decrementDecade","incrementYear","incrementDecade","yearNavigator","difference","setCurrentView","dateMeta","isMultipleSelection","isDateEquals","shouldSelectDate","selectDate","isSingleSelection","hideOverlay","mask","disableModality","maxDateCount","formatDateTime","isRangeSelection","endDate","inputfieldViewChild","isValidDate","formatTime","formatDate","getDateFormat","setHours","setMinutes","setSeconds","minDate","maxDate","startDate","stringArrValue","setFullYear","getSundayIndex","daylightSavingAdjust","isDateBetween","isComparable","validMin","validMax","validDate","validDay","selectOtherMonths","isDateDisabled","isDayDisabled","disabledDate","weekdayNumber","showOverlay","inputfield","backward","button","navBackward","navForward","trapFocus","isKeydown","tabIndex","cellContent","cell","cellIndex","nextRow","nextElementSibling","prevRow","previousElementSibling","focusCell","prevCell","navigateToMonth","nextCell","cells","selectedCell","todayCell","preventFocus","activeElement","focusedIndex","hour","minute","second","convertedHour","valueDateString","newHour","newPM","validateTime","clearTimePickerTimer","updateTime","timePickerTimer","newMinute","newSecond","parseValueFromString","isValidSelection","updateUI","err","isValid","every","parseDateTime","tokens","parts","populateTime","ampm","pop","timeString","parseDate","parseTime","propValue","touchUI","enableModality","maskClickListener","animationEndListener","destroyMask","hasBlockerMasks","bodyChildren","unbindAnimationEndListener","unbindMaskClickListener","_a","iFormat","lookAhead","formatNumber","formatName","shortNames","longNames","output","literal","minutes","seconds","dim","extra","iValue","doy","getNumber","isDoubled","size","digits","substring","getName","substr","checkLiteral","responsiveStyleElement","breakpoint","numMonths","o1","o2","localeCompare","run","isNavIconClicked","unsubscribe","Mn","On","Rn","ngContentSelectors","ya","state","CalendarModule","TableModule","SubstanceNamesModule","w","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","MatFormFieldModule","MatSelectModule","ReactiveFormsModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatSortModule","MatTooltipModule","MatRadioModule","ElementLabelDisplayModule"],"sources":["./src/app/core/substance-details/substance-names/substance-names.component.html","./src/app/core/substance-details/substance-names/substance-names.component.ts","./node_modules/primeng/fesm2015/primeng-utils.mjs","./node_modules/primeng/fesm2015/primeng-api.mjs","./node_modules/primeng/fesm2015/primeng-dom.mjs","./node_modules/primeng/fesm2015/primeng-tooltip.mjs","./node_modules/primeng/fesm2015/primeng-ripple.mjs","./node_modules/primeng/fesm2015/primeng-dropdown.mjs","./node_modules/primeng/fesm2015/primeng-inputtext.mjs","./node_modules/primeng/fesm2015/primeng-button.mjs","./node_modules/primeng/fesm2015/primeng-inputnumber.mjs","./node_modules/primeng/fesm2015/primeng-paginator.mjs","./node_modules/primeng/fesm2015/primeng-selectbutton.mjs","./node_modules/primeng/fesm2015/primeng-tristatecheckbox.mjs","./node_modules/primeng/fesm2015/primeng-calendar.mjs","./node_modules/primeng/fesm2015/primeng-table.mjs","./src/app/core/substance-details/substance-names/substance-names.module.ts"],"sourcesContent":["
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
Name View:\r\n \r\n Name (UTF-8)\r\n Std. Name (ASCII)\r\n Both\r\n \r\n
\r\n \r\n \r\n {{showHideFilterText}}\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
Name\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n Std. Name\r\n {{name.stdName}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n Type\r\n {{typeVocabulary[name.type] && typeVocabulary[name.type].display}} Language\r\n {{getLanguages(name)}} \r\n
\r\n \r\n \r\n \r\n
\r\n
{{name.name}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{name.stdName}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n {{typeFilter.value ? typeFilter.value : ''}}\r\n \r\n Select Type Filter\r\n {{type.display}}\r\n \r\n \r\n
\r\n
{{typeVocabulary[name.type] && typeVocabulary[name.type].display}} \r\n
\r\n \r\n \r\n \r\n {{langFilter.value ? langFilter.value : ''}}\r\n \r\n Select Language Filter\r\n {{lang.display}}\r\n \r\n \r\n
\r\n
{{getLanguages(name)}} \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
Details \r\n \r\n \r\n

Details

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
0\">\r\n
\r\n Naming organizations: \r\n
\r\n
\r\n {{org.nameOrg}}{{!last? ', ':''}} \r\n
\r\n
\r\n
0\">\r\n
\r\n Domains:\r\n
\r\n
\r\n {{domain}}{{!last? ', ':''}}\r\n
\r\n
\r\n
0\">\r\n
\r\n Jurisdiction:\r\n
\r\n
\r\n {{domain}}{{!last? ', ':''}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
References \r\n \r\n\r\n \r\n

References

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import {Component, OnInit, AfterViewInit} from '@angular/core';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport {SubstanceDetail, SubstanceName, TableFilterDDModel} from '../../substance/substance.model';\r\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\r\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport {Sort} from '@angular/material/sort';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport {UtilsService} from '@gsrs-core/utils';\r\nimport { FormControl } from '@angular/forms';\r\nimport { throws } from 'assert';\r\nimport { I } from '@angular/cdk/keycodes';\r\n\r\n@Component({\r\n selector: 'app-substance-names',\r\n templateUrl: './substance-names.component.html',\r\n styleUrls: ['./substance-names.component.scss']\r\n})\r\nexport class SubstanceNamesComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n names: Array;\r\n displayedColumns: string[] = ['name', 'type', 'language', 'details', 'references'];\r\n displayedFilterColumns: string[] = ['nameFilter', 'typeFilter', 'languageFilter', 'emptyFilter', 'resetFilter'];\r\n languageVocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\r\n typeVocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n hideOrgs = true;\r\n pageSize = 10;\r\n uniqueVals: Array;\r\n filterSelectObj = [];\r\n filterBackup: Array;\r\n typeFilterOn = 'false';\r\n nameFilter = new FormControl();\r\n stdNameFilter = new FormControl();\r\n typeFilter = new FormControl();\r\n langFilter = new FormControl();\r\n langFilterOptions: Array = [];\r\n typeFilterOptions: Array = [];\r\n nameType = 'name';\r\n hideFilters = true;\r\n showHideFilterText = 'Show Filter';\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private cvService: ControlledVocabularyService,\r\n private overlayContainerService: OverlayContainer,\r\n private utilsService: UtilsService\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.filterSelectObj = [\r\n {\r\n name: 'Name Type',\r\n columnProp: 'type',\r\n options: []\r\n }\r\n ];\r\n\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.names != null) {\r\n this.names = this.substance.names;\r\n this.filtered = this.substance.names;\r\n this.countUpdate.emit(this.names.length);\r\n this.searchControl.valueChanges.subscribe(value => {\r\n if (this.typeFilterOn === 'false') {\r\n this.filterList(value, this.names, this.analyticsEventCategory);\r\n\r\n } else if (this.typeFilterOn === 'true') {\r\n const tempFilter = JSON.parse(JSON.stringify(this.filtered));\r\n this.filterList(value, this.filterBackup, this.analyticsEventCategory);\r\n }\r\n }, error => {\r\n console.log(error);\r\n });\r\n this.getVocabularies();\r\n // move display name to top\r\n this.filtered = this.names.slice().sort((a, b) => {\r\n let returned = -1;\r\n if (a.displayName) {\r\n returned = -1;\r\n } else if (b.displayName) {\r\n returned = 1;\r\n } else if (b.preferred && !a.preferred) {\r\n returned = 1;\r\n } else if (!b.preferred && a.preferred) {\r\n returned = -1;\r\n }else if (a.name.toUpperCase() > b.name.toUpperCase()) {\r\n returned = 1;\r\n }\r\n return returned;\r\n });\r\n }\r\n\r\n this.pageChange();\r\n\r\n this.filterSelectObj.filter((o) => {\r\n o.options = this.getFilterObject(this.names, o.columnProp);\r\n });\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n this.nameFilter.valueChanges.subscribe((nameFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.stdNameFilter.valueChanges.subscribe((stdNameFilterValue) => {\r\n this.filterTable('std');\r\n });\r\n this.typeFilter.valueChanges.subscribe((typeFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.langFilter.valueChanges.subscribe((langFilterValue) => {\r\n this.filterTable();\r\n });\r\n }\r\n\r\n toggleFilter() {\r\n this.hideFilters = !this.hideFilters;\r\n if(this.hideFilters) {\r\n this.showHideFilterText = 'Show Filter';\r\n } else {\r\n this.showHideFilterText = 'Hide Filter';\r\n }\r\n }\r\n\r\n updateType(event) {\r\n this.nameType = event.value;\r\n if(event.value === 'name') {\r\n this.displayedColumns = ['name', 'type', 'language', 'details', 'references'];\r\n this.displayedFilterColumns = ['nameFilter', 'typeFilter', 'languageFilter', 'emptyFilter', 'resetFilter'];\r\n } else if (event.value === 'ascii') {\r\n this.displayedColumns = ['stdName', 'type', 'language', 'details', 'references'];\r\n this.displayedFilterColumns = ['stdNameFilter', 'typeFilter', 'languageFilter', 'emptyFilter', 'resetFilter'];\r\n } else {\r\n this.displayedColumns = ['name', 'stdName', 'type', 'language', 'details', 'references'];\r\n this.displayedFilterColumns = ['nameFilter', 'stdNameFilter', 'typeFilter', 'languageFilter', 'resetFilter'];\r\n }\r\n}\r\n\r\n filterTable(type?:string) {\r\n const nFilter = this.nameFilter.value === null ? '' : this.nameFilter.value;\r\n const snFilter = this.stdNameFilter.value === null ? '' : this.stdNameFilter.value;\r\n\r\n const lFilter = this.langFilter.value === null ? '' : this.langFilter.value;\r\n const tFilter = this.typeFilter.value === null ? '' : this.typeFilter.value;\r\n const lFilterCode = this.getLangFilterValue(lFilter) === undefined ? '' : this.getLangFilterValue(lFilter).value;\r\n const tFilterCode = this.getTypeFilterValue(tFilter) === undefined ? '' : this.getTypeFilterValue(tFilter).value;\r\n this.filtered = [];\r\n if(type && type === 'std') {\r\n for(let n of this.names) {\r\n let stdNameStr = n.stdName === undefined ? '' : n.stdName;\r\n if((stdNameStr.toLowerCase().includes(snFilter.toLowerCase())) &&\r\n (this.isIncluded(n, tFilterCode, 'type')) &&\r\n (this.isIncluded(n, lFilterCode, 'lang'))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n } else {\r\n for(let n of this.names) {\r\n if((n.name.toLowerCase().includes(nFilter.toLowerCase())) &&\r\n (this.isIncluded(n, tFilterCode, 'type')) &&\r\n (this.isIncluded(n, lFilterCode, 'lang'))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n }\r\n \r\n this.pageChange();\r\n }\r\n\r\n isIncluded(name: SubstanceName, value: string, field: string) {\r\n if(field === 'type') {\r\n if(value.length > 0) {\r\n if(name.type.includes(value)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n } else if(field === 'lang') {\r\n if(value.length > 0) {\r\n if(name.languages.includes(value)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n getLangFilterValue(value) {\r\n for(let l of this.langFilterOptions) {\r\n if(l.display === value) {\r\n return l;\r\n }\r\n }\r\n }\r\n\r\n getLangFilterOptions() {\r\n for(let n of this.names) {\r\n let nLangs = n.languages;\r\n for(let l of nLangs) {\r\n let oneLang = l;\r\n let oneLangDisplay = this.languageVocabulary[oneLang] && this.languageVocabulary[oneLang].display ? this.languageVocabulary[oneLang].display : oneLang;\r\n let value: TableFilterDDModel = {\r\n value: oneLang,\r\n display: oneLangDisplay\r\n }\r\n if (this.langFilterOptions.filter(e => e.value === oneLang).length > 0) {\r\n } else {\r\n this.langFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n }\r\n\r\n getTypeFilterValue(value) {\r\n for(let l of this.typeFilterOptions) {\r\n if(l.display === value) {\r\n return l;\r\n }\r\n }\r\n }\r\n\r\n getTypeFilterOptions() {\r\n for(let n of this.names) {\r\n let oneType = n.type;\r\n let oneTypeDisplay = this.typeVocabulary[oneType] && this.typeVocabulary[oneType].display ? this.typeVocabulary[oneType].display : oneType;\r\n let value: TableFilterDDModel = {\r\n value: oneType,\r\n display: oneTypeDisplay\r\n }\r\n if (this.typeFilterOptions.filter(e => e.value === oneType).length > 0) {\r\n } else {\r\n this.typeFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n\r\n filterChange(filter, event) {\r\n this.typeFilterOn = 'false';\r\n const tempFiltered = [];\r\n this.filterBackup = [];\r\n this.names.forEach(item => {\r\n const itemString = JSON.stringify(item[filter.columnProp]).toLowerCase();\r\n if (itemString.indexOf(event.target.value.toLowerCase()) > -1) {\r\n this.filterBackup.push(item);\r\n }\r\n });\r\n setTimeout(() => {\r\n \r\n this.names.forEach(item => {\r\n const itemString = JSON.stringify(item[filter.columnProp]).toLowerCase();\r\n if (itemString.indexOf(event.target.value.toLowerCase()) > -1) {\r\n tempFiltered.push(item);\r\n }\r\n });\r\n this.filtered = tempFiltered;\r\n this.typeFilterOn = 'true';\r\n this.page = 0;\r\n this.pageChange();\r\n }, 50);\r\n }\r\n\r\n setDisplay(value, column) {\r\n if (column === 'type') {\r\n return (this.typeVocabulary[value] && this.typeVocabulary[value].display ? this.typeVocabulary[value].display : value);\r\n } else if (column === 'language') {\r\n return ( this.languageVocabulary[value] && this.languageVocabulary[value].display ? this.typeVocabulary[value].display : value);\r\n } else {\r\n return value;\r\n }\r\n }\r\n\r\n getFilterObject(fullObj, key) {\r\n const uniqChk = [];\r\n if (key === 'type') {\r\n\r\n }\r\n fullObj.filter((obj) => {\r\n if (!uniqChk.includes(obj[key])) {\r\n uniqChk.push(obj[key]);\r\n }\r\n return obj;\r\n });\r\n return uniqChk;\r\n }\r\n\r\n sortData(sort: Sort) {\r\n const data = this.names.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n switch (sort.active) {\r\n case 'name': return this.utilsService.compare(a.name ? a.name.toUpperCase() : '', b.name ? b.name.toUpperCase() : '', isAsc);\r\n case 'type': return this.utilsService.compare(a.type ? a.type : '', b.type ? b.type : '', isAsc);\r\n case 'language': return this.utilsService.compare(this.getLanguages(a), this.getLanguages(b), isAsc);\r\n default: return 0;\r\n }\r\n });\r\n this.pageChange();\r\n }\r\n\r\n resetFilters() {\r\n this.filterSelectObj.forEach((value, key) => {\r\n value.modelValue = undefined;\r\n });\r\n this.typeFilterOn = 'false';\r\n this.filtered = this.names;\r\n this.pageChange();\r\n this.searchControl.setValue('');\r\n this.nameFilter.setValue('');\r\n this.stdNameFilter.setValue('');\r\n this.langFilter.setValue('');\r\n this.typeFilter.setValue('');\r\n }\r\n\r\n\r\n getVocabularies(): void {\r\n this.cvService.getDomainVocabulary('LANGUAGE', 'NAME_TYPE').subscribe(response => {\r\n this.languageVocabulary = response['LANGUAGE'] && response['LANGUAGE'].dictionary;\r\n this.typeVocabulary = response['NAME_TYPE'] && response['NAME_TYPE'].dictionary;\r\n this.getLangFilterOptions();\r\n this.getTypeFilterOptions();\r\n });\r\n }\r\n\r\n getLanguages(name: SubstanceName): string {\r\n if (this.languageVocabulary != null && name.languages && name.languages.length) {\r\n const languagesArray = [];\r\n name.languages.forEach(language => {\r\n if (this.languageVocabulary[language] != null) {\r\n languagesArray.push(this.languageVocabulary[language].display);\r\n }\r\n });\r\n return languagesArray.join(', ');\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n isButtonDisabled(name) {\r\n if((!name.nameOrgs || name.nameOrgs.length == 0) && (!name.domains || name.domains.length == 0) &&\r\n (!name.nameJurisdiction || name.nameJurisdiction.length == 0 )) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n}\r\n\r\n","class ObjectUtils {\n static equals(obj1, obj2, field) {\n if (field)\n return (this.resolveFieldData(obj1, field) === this.resolveFieldData(obj2, field));\n else\n return this.equalsByValue(obj1, obj2);\n }\n static equalsByValue(obj1, obj2) {\n if (obj1 === obj2)\n return true;\n if (obj1 && obj2 && typeof obj1 == 'object' && typeof obj2 == 'object') {\n var arrA = Array.isArray(obj1), arrB = Array.isArray(obj2), i, length, key;\n if (arrA && arrB) {\n length = obj1.length;\n if (length != obj2.length)\n return false;\n for (i = length; i-- !== 0;)\n if (!this.equalsByValue(obj1[i], obj2[i]))\n return false;\n return true;\n }\n if (arrA != arrB)\n return false;\n var dateA = obj1 instanceof Date, dateB = obj2 instanceof Date;\n if (dateA != dateB)\n return false;\n if (dateA && dateB)\n return obj1.getTime() == obj2.getTime();\n var regexpA = obj1 instanceof RegExp, regexpB = obj2 instanceof RegExp;\n if (regexpA != regexpB)\n return false;\n if (regexpA && regexpB)\n return obj1.toString() == obj2.toString();\n var keys = Object.keys(obj1);\n length = keys.length;\n if (length !== Object.keys(obj2).length)\n return false;\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(obj2, keys[i]))\n return false;\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (!this.equalsByValue(obj1[key], obj2[key]))\n return false;\n }\n return true;\n }\n return obj1 !== obj1 && obj2 !== obj2;\n }\n static resolveFieldData(data, field) {\n if (data && field) {\n if (this.isFunction(field)) {\n return field(data);\n }\n else if (field.indexOf('.') == -1) {\n return data[field];\n }\n else {\n let fields = field.split('.');\n let value = data;\n for (let i = 0, len = fields.length; i < len; ++i) {\n if (value == null) {\n return null;\n }\n value = value[fields[i]];\n }\n return value;\n }\n }\n else {\n return null;\n }\n }\n static isFunction(obj) {\n return !!(obj && obj.constructor && obj.call && obj.apply);\n }\n static reorderArray(value, from, to) {\n let target;\n if (value && from !== to) {\n if (to >= value.length) {\n to %= value.length;\n from %= value.length;\n }\n value.splice(to, 0, value.splice(from, 1)[0]);\n }\n }\n static insertIntoOrderedArray(item, index, arr, sourceArr) {\n if (arr.length > 0) {\n let injected = false;\n for (let i = 0; i < arr.length; i++) {\n let currentItemIndex = this.findIndexInList(arr[i], sourceArr);\n if (currentItemIndex > index) {\n arr.splice(i, 0, item);\n injected = true;\n break;\n }\n }\n if (!injected) {\n arr.push(item);\n }\n }\n else {\n arr.push(item);\n }\n }\n static findIndexInList(item, list) {\n let index = -1;\n if (list) {\n for (let i = 0; i < list.length; i++) {\n if (list[i] == item) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n static contains(value, list) {\n if (value != null && list && list.length) {\n for (let val of list) {\n if (this.equals(value, val))\n return true;\n }\n }\n return false;\n }\n static removeAccents(str) {\n if (str && str.search(/[\\xC0-\\xFF]/g) > -1) {\n str = str\n .replace(/[\\xC0-\\xC5]/g, \"A\")\n .replace(/[\\xC6]/g, \"AE\")\n .replace(/[\\xC7]/g, \"C\")\n .replace(/[\\xC8-\\xCB]/g, \"E\")\n .replace(/[\\xCC-\\xCF]/g, \"I\")\n .replace(/[\\xD0]/g, \"D\")\n .replace(/[\\xD1]/g, \"N\")\n .replace(/[\\xD2-\\xD6\\xD8]/g, \"O\")\n .replace(/[\\xD9-\\xDC]/g, \"U\")\n .replace(/[\\xDD]/g, \"Y\")\n .replace(/[\\xDE]/g, \"P\")\n .replace(/[\\xE0-\\xE5]/g, \"a\")\n .replace(/[\\xE6]/g, \"ae\")\n .replace(/[\\xE7]/g, \"c\")\n .replace(/[\\xE8-\\xEB]/g, \"e\")\n .replace(/[\\xEC-\\xEF]/g, \"i\")\n .replace(/[\\xF1]/g, \"n\")\n .replace(/[\\xF2-\\xF6\\xF8]/g, \"o\")\n .replace(/[\\xF9-\\xFC]/g, \"u\")\n .replace(/[\\xFE]/g, \"p\")\n .replace(/[\\xFD\\xFF]/g, \"y\");\n }\n return str;\n }\n static isEmpty(value) {\n return (value === null || value === undefined || value === '' ||\n (Array.isArray(value) && value.length === 0) ||\n (!(value instanceof Date) && typeof value === 'object' && Object.keys(value).length === 0));\n }\n static isNotEmpty(value) {\n return !this.isEmpty(value);\n }\n}\n\nvar lastId = 0;\nfunction UniqueComponentId() {\n let prefix = 'pr_id_';\n lastId++;\n return `${prefix}${lastId}`;\n}\n\nfunction ZIndexUtils() {\n let zIndexes = [];\n const generateZIndex = (key, baseZIndex) => {\n let lastZIndex = zIndexes.length > 0 ? zIndexes[zIndexes.length - 1] : { key, value: baseZIndex };\n let newZIndex = lastZIndex.value + (lastZIndex.key === key ? 0 : baseZIndex) + 1;\n zIndexes.push({ key, value: newZIndex });\n return newZIndex;\n };\n const revertZIndex = (zIndex) => {\n zIndexes = zIndexes.filter(obj => obj.value !== zIndex);\n };\n const getCurrentZIndex = () => {\n return zIndexes.length > 0 ? zIndexes[zIndexes.length - 1].value : 0;\n };\n const getZIndex = (el) => {\n return el ? parseInt(el.style.zIndex, 10) || 0 : 0;\n };\n return {\n get: getZIndex,\n set: (key, el, baseZIndex) => {\n if (el) {\n el.style.zIndex = String(generateZIndex(key, baseZIndex));\n }\n },\n clear: (el) => {\n if (el) {\n revertZIndex(getZIndex(el));\n el.style.zIndex = '';\n }\n },\n getCurrent: () => getCurrentZIndex()\n };\n}\nvar zindexutils = ZIndexUtils();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ObjectUtils, UniqueComponentId, zindexutils as ZIndexUtils };\n","import * as i0 from '@angular/core';\nimport { Injectable, Component, Directive, Input, NgModule } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { ObjectUtils } from 'primeng/utils';\nimport { CommonModule } from '@angular/common';\n\nclass FilterMatchMode {\n}\nFilterMatchMode.STARTS_WITH = 'startsWith';\nFilterMatchMode.CONTAINS = 'contains';\nFilterMatchMode.NOT_CONTAINS = 'notContains';\nFilterMatchMode.ENDS_WITH = 'endsWith';\nFilterMatchMode.EQUALS = 'equals';\nFilterMatchMode.NOT_EQUALS = 'notEquals';\nFilterMatchMode.IN = 'in';\nFilterMatchMode.LESS_THAN = 'lt';\nFilterMatchMode.LESS_THAN_OR_EQUAL_TO = 'lte';\nFilterMatchMode.GREATER_THAN = 'gt';\nFilterMatchMode.GREATER_THAN_OR_EQUAL_TO = 'gte';\nFilterMatchMode.BETWEEN = 'between';\nFilterMatchMode.IS = 'is';\nFilterMatchMode.IS_NOT = 'isNot';\nFilterMatchMode.BEFORE = 'before';\nFilterMatchMode.AFTER = 'after';\nFilterMatchMode.DATE_IS = 'dateIs';\nFilterMatchMode.DATE_IS_NOT = 'dateIsNot';\nFilterMatchMode.DATE_BEFORE = 'dateBefore';\nFilterMatchMode.DATE_AFTER = 'dateAfter';\n\nclass PrimeNGConfig {\n constructor() {\n this.ripple = false;\n this.filterMatchModeOptions = {\n text: [\n FilterMatchMode.STARTS_WITH,\n FilterMatchMode.CONTAINS,\n FilterMatchMode.NOT_CONTAINS,\n FilterMatchMode.ENDS_WITH,\n FilterMatchMode.EQUALS,\n FilterMatchMode.NOT_EQUALS\n ],\n numeric: [\n FilterMatchMode.EQUALS,\n FilterMatchMode.NOT_EQUALS,\n FilterMatchMode.LESS_THAN,\n FilterMatchMode.LESS_THAN_OR_EQUAL_TO,\n FilterMatchMode.GREATER_THAN,\n FilterMatchMode.GREATER_THAN_OR_EQUAL_TO\n ],\n date: [\n FilterMatchMode.DATE_IS,\n FilterMatchMode.DATE_IS_NOT,\n FilterMatchMode.DATE_BEFORE,\n FilterMatchMode.DATE_AFTER\n ]\n };\n this.translation = {\n startsWith: 'Starts with',\n contains: 'Contains',\n notContains: 'Not contains',\n endsWith: 'Ends with',\n equals: 'Equals',\n notEquals: 'Not equals',\n noFilter: 'No Filter',\n lt: 'Less than',\n lte: 'Less than or equal to',\n gt: 'Greater than',\n gte: 'Greater than or equal to',\n is: 'Is',\n isNot: 'Is not',\n before: 'Before',\n after: 'After',\n dateIs: 'Date is',\n dateIsNot: 'Date is not',\n dateBefore: 'Date is before',\n dateAfter: 'Date is after',\n clear: 'Clear',\n apply: 'Apply',\n matchAll: 'Match All',\n matchAny: 'Match Any',\n addRule: 'Add Rule',\n removeRule: 'Remove Rule',\n accept: 'Yes',\n reject: 'No',\n choose: 'Choose',\n upload: 'Upload',\n cancel: 'Cancel',\n dayNames: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n dayNamesShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n dayNamesMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n monthNames: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n monthNamesShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n dateFormat: 'mm/dd/yy',\n firstDayOfWeek: 0,\n today: 'Today',\n weekHeader: 'Wk',\n weak: 'Weak',\n medium: 'Medium',\n strong: 'Strong',\n passwordPrompt: 'Enter a password',\n emptyMessage: 'No results found',\n emptyFilterMessage: 'No results found'\n };\n this.zIndex = {\n modal: 1100,\n overlay: 1000,\n menu: 1000,\n tooltip: 1100\n };\n this.translationSource = new Subject();\n this.translationObserver = this.translationSource.asObservable();\n }\n getTranslation(key) {\n return this.translation[key];\n }\n setTranslation(value) {\n this.translation = Object.assign(Object.assign({}, this.translation), value);\n this.translationSource.next(this.translation);\n }\n}\nPrimeNGConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PrimeNGConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nPrimeNGConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PrimeNGConfig, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PrimeNGConfig, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass TranslationKeys {\n}\nTranslationKeys.STARTS_WITH = 'startsWith';\nTranslationKeys.CONTAINS = 'contains';\nTranslationKeys.NOT_CONTAINS = 'notContains';\nTranslationKeys.ENDS_WITH = 'endsWith';\nTranslationKeys.EQUALS = 'equals';\nTranslationKeys.NOT_EQUALS = 'notEquals';\nTranslationKeys.NO_FILTER = 'noFilter';\nTranslationKeys.LT = 'lt';\nTranslationKeys.LTE = 'lte';\nTranslationKeys.GT = 'gt';\nTranslationKeys.GTE = 'gte';\nTranslationKeys.IS = 'is';\nTranslationKeys.IS_NOT = 'isNot';\nTranslationKeys.BEFORE = 'before';\nTranslationKeys.AFTER = 'after';\nTranslationKeys.CLEAR = 'clear';\nTranslationKeys.APPLY = 'apply';\nTranslationKeys.MATCH_ALL = 'matchAll';\nTranslationKeys.MATCH_ANY = 'matchAny';\nTranslationKeys.ADD_RULE = 'addRule';\nTranslationKeys.REMOVE_RULE = 'removeRule';\nTranslationKeys.ACCEPT = 'accept';\nTranslationKeys.REJECT = 'reject';\nTranslationKeys.CHOOSE = 'choose';\nTranslationKeys.UPLOAD = 'upload';\nTranslationKeys.CANCEL = 'cancel';\nTranslationKeys.DAY_NAMES = 'dayNames';\nTranslationKeys.DAY_NAMES_SHORT = 'dayNamesShort';\nTranslationKeys.DAY_NAMES_MIN = 'dayNamesMin';\nTranslationKeys.MONTH_NAMES = 'monthNames';\nTranslationKeys.MONTH_NAMES_SHORT = 'monthNamesShort';\nTranslationKeys.FIRST_DAY_OF_WEEK = 'firstDayOfWeek';\nTranslationKeys.TODAY = 'today';\nTranslationKeys.WEEK_HEADER = 'weekHeader';\nTranslationKeys.WEAK = 'weak';\nTranslationKeys.MEDIUM = 'medium';\nTranslationKeys.STRONG = 'strong';\nTranslationKeys.PASSWORD_PROMPT = 'passwordPrompt';\nTranslationKeys.EMPTY_MESSAGE = 'emptyMessage';\nTranslationKeys.EMPTY_FILTER_MESSAGE = 'emptyFilterMessage';\n\nvar ConfirmEventType;\n(function (ConfirmEventType) {\n ConfirmEventType[ConfirmEventType[\"ACCEPT\"] = 0] = \"ACCEPT\";\n ConfirmEventType[ConfirmEventType[\"REJECT\"] = 1] = \"REJECT\";\n ConfirmEventType[ConfirmEventType[\"CANCEL\"] = 2] = \"CANCEL\";\n})(ConfirmEventType || (ConfirmEventType = {}));\n\nclass ConfirmationService {\n constructor() {\n this.requireConfirmationSource = new Subject();\n this.acceptConfirmationSource = new Subject();\n this.requireConfirmation$ = this.requireConfirmationSource.asObservable();\n this.accept = this.acceptConfirmationSource.asObservable();\n }\n confirm(confirmation) {\n this.requireConfirmationSource.next(confirmation);\n return this;\n }\n close() {\n this.requireConfirmationSource.next(null);\n return this;\n }\n onAccept() {\n this.acceptConfirmationSource.next(null);\n }\n}\nConfirmationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ConfirmationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nConfirmationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ConfirmationService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ConfirmationService, decorators: [{\n type: Injectable\n }] });\n\nclass FilterService {\n constructor() {\n this.filters = {\n startsWith: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || filter.trim() === '') {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.slice(0, filterValue.length) === filterValue;\n },\n contains: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.indexOf(filterValue) !== -1;\n },\n notContains: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.indexOf(filterValue) === -1;\n },\n endsWith: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || filter.trim() === '') {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.indexOf(filterValue, stringValue.length - filterValue.length) !== -1;\n },\n equals: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() === filter.getTime();\n else\n return ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale) == ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n },\n notEquals: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return false;\n }\n if (value === undefined || value === null) {\n return true;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() !== filter.getTime();\n else\n return ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale) != ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n },\n in: (value, filter) => {\n if (filter === undefined || filter === null || filter.length === 0) {\n return true;\n }\n for (let i = 0; i < filter.length; i++) {\n if (ObjectUtils.equals(value, filter[i])) {\n return true;\n }\n }\n return false;\n },\n between: (value, filter) => {\n if (filter == null || filter[0] == null || filter[1] == null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime)\n return filter[0].getTime() <= value.getTime() && value.getTime() <= filter[1].getTime();\n else\n return filter[0] <= value && value <= filter[1];\n },\n lt: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() < filter.getTime();\n else\n return value < filter;\n },\n lte: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() <= filter.getTime();\n else\n return value <= filter;\n },\n gt: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() > filter.getTime();\n else\n return value > filter;\n },\n gte: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() >= filter.getTime();\n else\n return value >= filter;\n },\n is: (value, filter, filterLocale) => {\n return this.filters.equals(value, filter, filterLocale);\n },\n isNot: (value, filter, filterLocale) => {\n return this.filters.notEquals(value, filter, filterLocale);\n },\n before: (value, filter, filterLocale) => {\n return this.filters.lt(value, filter, filterLocale);\n },\n after: (value, filter, filterLocale) => {\n return this.filters.gt(value, filter, filterLocale);\n },\n dateIs: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.toDateString() === filter.toDateString();\n },\n dateIsNot: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.toDateString() !== filter.toDateString();\n },\n dateBefore: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.getTime() < filter.getTime();\n },\n dateAfter: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.getTime() > filter.getTime();\n }\n };\n }\n filter(value, fields, filterValue, filterMatchMode, filterLocale) {\n let filteredItems = [];\n if (value) {\n for (let item of value) {\n for (let field of fields) {\n let fieldValue = ObjectUtils.resolveFieldData(item, field);\n if (this.filters[filterMatchMode](fieldValue, filterValue, filterLocale)) {\n filteredItems.push(item);\n break;\n }\n }\n }\n }\n return filteredItems;\n }\n register(rule, fn) {\n this.filters[rule] = fn;\n }\n}\nFilterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: FilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nFilterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: FilterService, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: FilterService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass ContextMenuService {\n constructor() {\n this.activeItemKeyChange = new Subject();\n this.activeItemKeyChange$ = this.activeItemKeyChange.asObservable();\n }\n changeKey(key) {\n this.activeItemKey = key;\n this.activeItemKeyChange.next(this.activeItemKey);\n }\n reset() {\n this.activeItemKey = null;\n this.activeItemKeyChange.next(this.activeItemKey);\n }\n}\nContextMenuService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ContextMenuService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nContextMenuService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ContextMenuService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ContextMenuService, decorators: [{\n type: Injectable\n }] });\n\nclass MessageService {\n constructor() {\n this.messageSource = new Subject();\n this.clearSource = new Subject();\n this.messageObserver = this.messageSource.asObservable();\n this.clearObserver = this.clearSource.asObservable();\n }\n add(message) {\n if (message) {\n this.messageSource.next(message);\n }\n }\n addAll(messages) {\n if (messages && messages.length) {\n this.messageSource.next(messages);\n }\n }\n clear(key) {\n this.clearSource.next(key || null);\n }\n}\nMessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: MessageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nMessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: MessageService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: MessageService, decorators: [{\n type: Injectable\n }] });\n\nclass OverlayService {\n constructor() {\n this.clickSource = new Subject();\n this.clickObservable = this.clickSource.asObservable();\n }\n add(event) {\n if (event) {\n this.clickSource.next(event);\n }\n }\n}\nOverlayService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: OverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nOverlayService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: OverlayService, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: OverlayService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass PrimeIcons {\n}\nPrimeIcons.ALIGN_CENTER = 'pi pi-align-center';\nPrimeIcons.ALIGN_JUSTIFY = 'pi pi-align-justify';\nPrimeIcons.ALIGN_LEFT = 'pi pi-align-left';\nPrimeIcons.ALIGN_RIGHT = 'pi pi-align-right';\nPrimeIcons.AMAZON = 'pi pi-amazon';\nPrimeIcons.ANDROID = 'pi pi-android';\nPrimeIcons.ANGLE_DOUBLE_DOWN = 'pi pi-angle-double-down';\nPrimeIcons.ANGLE_DOUBLE_LEFT = 'pi pi-angle-double-left';\nPrimeIcons.ANGLE_DOUBLE_RIGHT = 'pi pi-angle-double-right';\nPrimeIcons.ANGLE_DOUBLE_UP = 'pi pi-angle-double-up';\nPrimeIcons.ANGLE_DOWN = 'pi pi-angle-down';\nPrimeIcons.ANGLE_LEFT = 'pi pi-angle-left';\nPrimeIcons.ANGLE_RIGHT = 'pi pi-angle-right';\nPrimeIcons.ANGLE_UP = 'pi pi-angle-up';\nPrimeIcons.APPLE = 'pi pi-apple';\nPrimeIcons.ARROW_CIRCLE_DOWN = 'pi pi-arrow-circle-down';\nPrimeIcons.ARROW_CIRCLE_LEFT = 'pi pi-arrow-circle-left';\nPrimeIcons.ARROW_CIRCLE_RIGHT = 'pi pi-arrow-circle-right';\nPrimeIcons.ARROW_CIRCLE_UP = 'pi pi-arrow-circle-up';\nPrimeIcons.ARROW_DOWN = 'pi pi-arrow-down';\nPrimeIcons.ARROW_DOWN_LEFT = 'pi pi-arrow-down-left';\nPrimeIcons.ARROW_DOWN_RIGHT = 'pi pi-arrow-down-right';\nPrimeIcons.ARROW_LEFT = 'pi pi-arrow-left';\nPrimeIcons.ARROW_RIGHT = 'pi pi-arrow-right';\nPrimeIcons.ARROW_UP = 'pi pi-arrow-up';\nPrimeIcons.ARROW_UP_LEFT = 'pi pi-arrow-up-left';\nPrimeIcons.ARROW_UP_RIGHT = 'pi pi-arrow-up-right';\nPrimeIcons.ARROW_H = 'pi pi-arrows-h';\nPrimeIcons.ARROW_V = 'pi pi-arrows-v';\nPrimeIcons.AT = 'pi pi-at';\nPrimeIcons.BACKWARD = 'pi pi-backward';\nPrimeIcons.BAN = 'pi pi-ban';\nPrimeIcons.BARS = 'pi pi-bars';\nPrimeIcons.BELL = 'pi pi-bell';\nPrimeIcons.BOLT = 'pi pi-bolt';\nPrimeIcons.BOOK = 'pi pi-book';\nPrimeIcons.BOOKMARK = 'pi pi-bookmark';\nPrimeIcons.BOOKMARK_FILL = 'pi pi-bookmark-fill';\nPrimeIcons.BOX = 'pi pi-box';\nPrimeIcons.BRIEFCASE = 'pi pi-briefcase';\nPrimeIcons.BUILDING = 'pi pi-building';\nPrimeIcons.CALENDAR = 'pi pi-calendar';\nPrimeIcons.CALENDAR_MINUS = 'pi pi-calendar-minus';\nPrimeIcons.CALENDAR_PLUS = 'pi pi-calendar-plus';\nPrimeIcons.CALENDAR_TIMES = 'pi pi-calendar-times';\nPrimeIcons.CAMERA = 'pi pi-camera';\nPrimeIcons.CAR = 'pi pi-car';\nPrimeIcons.CARET_DOWN = 'pi pi-caret-down';\nPrimeIcons.CARET_LEFT = 'pi pi-caret-left';\nPrimeIcons.CARET_RIGHT = 'pi pi-caret-right';\nPrimeIcons.CARET_UP = 'pi pi-caret-up';\nPrimeIcons.CHART_BAR = 'pi pi-chart-bar';\nPrimeIcons.CHART_LINE = 'pi pi-chart-line';\nPrimeIcons.CHART_PIE = 'pi pi-chart-pie';\nPrimeIcons.CHECK = 'pi pi-check';\nPrimeIcons.CHECK_CIRCLE = 'pi pi-check-circle';\nPrimeIcons.CHECK_SQUARE = 'pi pi-check-square';\nPrimeIcons.CHEVRON_CIRCLE_DOWN = 'pi pi-chevron-circle-down';\nPrimeIcons.CHEVRON_CIRCLE_LEFT = 'pi pi-chevron-circle-left';\nPrimeIcons.CHEVRON_CIRCLE_RIGHT = 'pi pi-chevron-circle-right';\nPrimeIcons.CHEVRON_CIRCLE_UP = 'pi pi-chevron-circle-up';\nPrimeIcons.CHEVRON_DOWN = 'pi pi-chevron-down';\nPrimeIcons.CHEVRON_LEFT = 'pi pi-chevron-left';\nPrimeIcons.CHEVRON_RIGHT = 'pi pi-chevron-right';\nPrimeIcons.CHEVRON_UP = 'pi pi-chevron-up';\nPrimeIcons.CIRCLE = 'pi pi-circle';\nPrimeIcons.CIRCLE_FILL = 'pi pi-circle-fill';\nPrimeIcons.CLOCK = 'pi pi-clock';\nPrimeIcons.CLONE = 'pi pi-clone';\nPrimeIcons.CLOUD = 'pi pi-cloud';\nPrimeIcons.CLOUD_DOWNLOAD = 'pi pi-cloud-download';\nPrimeIcons.CLOUD_UPLOAD = 'pi pi-cloud-upload';\nPrimeIcons.CODE = 'pi pi-code';\nPrimeIcons.COG = 'pi pi-cog';\nPrimeIcons.COMMENT = 'pi pi-comment';\nPrimeIcons.COMMENTS = 'pi pi-comments';\nPrimeIcons.COMPASS = 'pi pi-compass';\nPrimeIcons.COPY = 'pi pi-copy';\nPrimeIcons.CREDIT_CARD = 'pi pi-credit-card';\nPrimeIcons.DATABASE = 'pi pi-database';\nPrimeIcons.DESKTOP = 'pi pi-desktop';\nPrimeIcons.DIRECTIONS = 'pi pi-directions';\nPrimeIcons.DIRECTIONS_ALT = 'pi pi-directions-alt';\nPrimeIcons.DISCORD = 'pi pi-discord';\nPrimeIcons.DOLLAR = 'pi pi-dollar';\nPrimeIcons.DOWNLOAD = 'pi pi-download';\nPrimeIcons.EJECT = 'pi pi-eject';\nPrimeIcons.ELLIPSIS_H = 'pi pi-ellipsis-h';\nPrimeIcons.ELLIPSIS_V = 'pi pi-ellipsis-v';\nPrimeIcons.ENVELOPE = 'pi pi-envelope';\nPrimeIcons.EURO = 'pi pi-euro';\nPrimeIcons.EXCLAMATION_CIRCLE = 'pi pi-exclamation-circle';\nPrimeIcons.EXCLAMATION_TRIANGLE = 'pi pi-exclamation-triangle';\nPrimeIcons.EXTERNAL_LINK = 'pi pi-external-link';\nPrimeIcons.EYE = 'pi pi-eye';\nPrimeIcons.EYE_SLASH = 'pi pi-eye-slash';\nPrimeIcons.FACEBOOK = 'pi pi-facebook';\nPrimeIcons.FAST_BACKWARD = 'pi pi-fast-backward';\nPrimeIcons.FAST_FORWARD = 'pi pi-fast-forward';\nPrimeIcons.FILE = 'pi pi-file';\nPrimeIcons.FILE_EXCEL = 'pi pi-file-excel';\nPrimeIcons.FILE_PDF = 'pi pi-file-pdf';\nPrimeIcons.FILTER = 'pi pi-filter';\nPrimeIcons.FILTER_FILL = 'pi pi-filter-fill';\nPrimeIcons.FILTER_SLASH = 'pi pi-filter-slash';\nPrimeIcons.FLAG = 'pi pi-flag';\nPrimeIcons.FLAG_FILL = 'pi pi-flag-fill';\nPrimeIcons.FOLDER = 'pi pi-folder';\nPrimeIcons.FOLDER_OPEN = 'pi pi-folder-open';\nPrimeIcons.FORWARD = 'pi pi-forward';\nPrimeIcons.GITHUB = 'pi pi-github';\nPrimeIcons.GLOBE = 'pi pi-globe';\nPrimeIcons.GOOGLE = 'pi pi-google';\nPrimeIcons.HASHTAG = 'pi pi-hashtag';\nPrimeIcons.HEART = 'pi pi-heart';\nPrimeIcons.HEART_FILL = 'pi pi-heart-fill';\nPrimeIcons.HISTORY = 'pi pi-history';\nPrimeIcons.HOME = 'pi pi-home';\nPrimeIcons.ID_CARD = 'pi pi-id-card';\nPrimeIcons.IMAGE = 'pi pi-image';\nPrimeIcons.IMAGES = 'pi pi-images';\nPrimeIcons.INBOX = 'pi pi-inbox';\nPrimeIcons.INFO = 'pi pi-info';\nPrimeIcons.INFO_CIRCLE = 'pi pi-info-circle';\nPrimeIcons.INSTAGRAM = 'pi pi-instagram';\nPrimeIcons.KEY = 'pi pi-key';\nPrimeIcons.LINK = 'pi pi-link';\nPrimeIcons.LINKEDIN = 'pi pi-linkedin';\nPrimeIcons.LIST = 'pi pi-list';\nPrimeIcons.LOCK = 'pi pi-lock';\nPrimeIcons.LOCK_OPEN = 'pi pi-lock-open';\nPrimeIcons.MAP = 'pi pi-map';\nPrimeIcons.MAP_MARKER = 'pi pi-map-marker';\nPrimeIcons.MICROSOFT = 'pi pi-microsoft';\nPrimeIcons.MINUS = 'pi pi-minus';\nPrimeIcons.MINUS_CIRCLE = 'pi pi-minus-circle';\nPrimeIcons.MOBILE = 'pi pi-mobile';\nPrimeIcons.MONEY_BILL = 'pi pi-money-bill';\nPrimeIcons.MOON = 'pi pi-moon';\nPrimeIcons.PALETTE = 'pi pi-palette';\nPrimeIcons.PAPERCLIP = 'pi pi-paperclip';\nPrimeIcons.PAUSE = 'pi pi-pause';\nPrimeIcons.PAYPAL = 'pi pi-paypal';\nPrimeIcons.PENCIL = 'pi pi-pencil';\nPrimeIcons.PERCENTAGE = 'pi pi-percentage';\nPrimeIcons.PHONE = 'pi pi-phone';\nPrimeIcons.PLAY = 'pi pi-play';\nPrimeIcons.PLUS = 'pi pi-plus';\nPrimeIcons.PLUS_CIRCLE = 'pi pi-plus-circle';\nPrimeIcons.POUND = 'pi pi-pound';\nPrimeIcons.POWER_OFF = 'pi pi-power-off';\nPrimeIcons.PRIME = 'pi pi-prime';\nPrimeIcons.PRINT = 'pi pi-print';\nPrimeIcons.QRCODE = 'pi pi-qrcode';\nPrimeIcons.QUESTION = 'pi pi-question';\nPrimeIcons.QUESTION_CIRCLE = 'pi pi-question-circle';\nPrimeIcons.REDDIT = 'pi pi-reddit';\nPrimeIcons.REFRESH = 'pi pi-refresh';\nPrimeIcons.REPLAY = 'pi pi-replay';\nPrimeIcons.REPLY = 'pi pi-reply';\nPrimeIcons.SAVE = 'pi pi-save';\nPrimeIcons.SEARCH = 'pi pi-search';\nPrimeIcons.SEARCH_MINUS = 'pi pi-search-minus';\nPrimeIcons.SEARCH_PLUS = 'pi pi-search-plus';\nPrimeIcons.SEND = 'pi pi-send';\nPrimeIcons.SERVER = 'pi pi-server';\nPrimeIcons.SHARE_ALT = 'pi pi-share-alt';\nPrimeIcons.SHIELD = 'pi pi-shield';\nPrimeIcons.SHOPPING_BAG = 'pi pi-shopping-bag';\nPrimeIcons.SHOPPING_CART = 'pi pi-shopping-cart';\nPrimeIcons.SIGN_IN = 'pi pi-sign-in';\nPrimeIcons.SIGN_OUT = 'pi pi-sign-out';\nPrimeIcons.SITEMAP = 'pi pi-sitemap';\nPrimeIcons.SLACK = 'pi pi-slack';\nPrimeIcons.SLIDERS_H = 'pi pi-sliders-h';\nPrimeIcons.SLIDERS_V = 'pi pi-sliders-v';\nPrimeIcons.SORT = 'pi pi-sort';\nPrimeIcons.SORT_ALPHA_DOWN = 'pi pi-sort-alpha-down';\nPrimeIcons.SORT_ALPHA_ALT_DOWN = 'pi pi-sort-alpha-alt-down';\nPrimeIcons.SORT_ALPHA_UP = 'pi pi-sort-alpha-up';\nPrimeIcons.SORT_ALPHA_ALT_UP = 'pi pi-sort-alpha-alt-up';\nPrimeIcons.SORT_ALT = 'pi pi-sort-alt';\nPrimeIcons.SORT_ALT_SLASH = 'pi pi-sort-slash';\nPrimeIcons.SORT_AMOUNT_DOWN = 'pi pi-sort-amount-down';\nPrimeIcons.SORT_AMOUNT_DOWN_ALT = 'pi pi-sort-amount-down-alt';\nPrimeIcons.SORT_AMOUNT_UP = 'pi pi-sort-amount-up';\nPrimeIcons.SORT_AMOUNT_UP_ALT = 'pi pi-sort-amount-up-alt';\nPrimeIcons.SORT_DOWN = 'pi pi-sort-down';\nPrimeIcons.SORT_NUMERIC_DOWN = 'pi pi-sort-numeric-down';\nPrimeIcons.SORT_NUMERIC_ALT_DOWN = 'pi pi-sort-numeric-alt-down';\nPrimeIcons.SORT_NUMERIC_UP = 'pi pi-sort-numeric-up';\nPrimeIcons.SORT_NUMERIC_ALT_UP = 'pi pi-sort-numeric-alt-up';\nPrimeIcons.SORT_UP = 'pi pi-sort-up';\nPrimeIcons.SPINNER = 'pi pi-spinner';\nPrimeIcons.STAR = 'pi pi-star';\nPrimeIcons.STAR_FILL = 'pi pi-star-fill';\nPrimeIcons.STEP_BACKWARD = 'pi pi-step-backward';\nPrimeIcons.STEP_BACKWARD_ALT = 'pi pi-step-backward-alt';\nPrimeIcons.STEP_FORWARD = 'pi pi-step-forward';\nPrimeIcons.STEP_FORWARD_ALT = 'pi pi-step-forward-alt';\nPrimeIcons.STOP = 'pi pi-stop';\nPrimeIcons.STOP_CIRCLE = 'pi pi-stop-circle';\nPrimeIcons.SUN = 'pi pi-sun';\nPrimeIcons.SYNC = 'pi pi-sync';\nPrimeIcons.TABLE = 'pi pi-table';\nPrimeIcons.TABLET = 'pi pi-tablet';\nPrimeIcons.TAG = 'pi pi-tag';\nPrimeIcons.TAGS = 'pi pi-tags';\nPrimeIcons.TELEGRAM = 'pi pi-telegram';\nPrimeIcons.TH_LARGE = 'pi pi-th-large';\nPrimeIcons.THUMBS_DOWN = 'pi pi-thumbs-down';\nPrimeIcons.THUMBS_UP = 'pi pi-thumbs-up';\nPrimeIcons.TICKET = 'pi pi-ticket';\nPrimeIcons.TIMES = 'pi pi-times';\nPrimeIcons.TIMES_CIRCLE = 'pi pi-times-circle';\nPrimeIcons.TRASH = 'pi pi-trash';\nPrimeIcons.TWITTER = 'pi pi-twitter';\nPrimeIcons.UNDO = 'pi pi-undo';\nPrimeIcons.UNLOCK = 'pi pi-unlock';\nPrimeIcons.UPLOAD = 'pi pi-upload';\nPrimeIcons.USER = 'pi pi-user';\nPrimeIcons.USER_EDIT = 'pi pi-user-edit';\nPrimeIcons.USER_MINUS = 'pi pi-user-minus';\nPrimeIcons.USER_PLUS = 'pi pi-user-plus';\nPrimeIcons.USERS = 'pi pi-users';\nPrimeIcons.VIDEO = 'pi pi-video';\nPrimeIcons.VIMEO = 'pi pi-vimeo';\nPrimeIcons.VOLUME_DOWN = 'pi pi-volume-down';\nPrimeIcons.VOLUME_OFF = 'pi pi-volume-off';\nPrimeIcons.VOLUME_UP = 'pi pi-volume-up';\nPrimeIcons.WALLET = 'pi pi-wallet';\nPrimeIcons.WHATSAPP = 'pi pi-whatsapp';\nPrimeIcons.WIFI = 'pi pi-wifi';\nPrimeIcons.WINDOW_MAXIMIZE = 'pi pi-window-maximize';\nPrimeIcons.WINDOW_MINIMIZE = 'pi pi-window-minimize';\nPrimeIcons.YOUTUBE = 'pi pi-youtube';\n\nclass FilterOperator {\n}\nFilterOperator.AND = 'and';\nFilterOperator.OR = 'or';\n\nclass Header {\n}\nHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Header, deps: [], target: i0.ɵɵFactoryTarget.Component });\nHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Header, selector: \"p-header\", ngImport: i0, template: '', isInline: true });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Header, decorators: [{\n type: Component,\n args: [{\n selector: 'p-header',\n template: ''\n }]\n }] });\nclass Footer {\n}\nFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Footer, deps: [], target: i0.ɵɵFactoryTarget.Component });\nFooter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Footer, selector: \"p-footer\", ngImport: i0, template: '', isInline: true });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Footer, decorators: [{\n type: Component,\n args: [{\n selector: 'p-footer',\n template: ''\n }]\n }] });\nclass PrimeTemplate {\n constructor(template) {\n this.template = template;\n }\n getType() {\n return this.name;\n }\n}\nPrimeTemplate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PrimeTemplate, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });\nPrimeTemplate.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: PrimeTemplate, selector: \"[pTemplate]\", inputs: { type: \"type\", name: [\"pTemplate\", \"name\"] }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PrimeTemplate, decorators: [{\n type: Directive,\n args: [{\n selector: '[pTemplate]',\n host: {}\n }]\n }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { type: [{\n type: Input\n }], name: [{\n type: Input,\n args: ['pTemplate']\n }] } });\nclass SharedModule {\n}\nSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SharedModule, declarations: [Header, Footer, PrimeTemplate], imports: [CommonModule], exports: [Header, Footer, PrimeTemplate] });\nSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SharedModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SharedModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [Header, Footer, PrimeTemplate],\n declarations: [Header, Footer, PrimeTemplate]\n }]\n }] });\n\nclass TreeDragDropService {\n constructor() {\n this.dragStartSource = new Subject();\n this.dragStopSource = new Subject();\n this.dragStart$ = this.dragStartSource.asObservable();\n this.dragStop$ = this.dragStopSource.asObservable();\n }\n startDrag(event) {\n this.dragStartSource.next(event);\n }\n stopDrag(event) {\n this.dragStopSource.next(event);\n }\n}\nTreeDragDropService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TreeDragDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nTreeDragDropService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TreeDragDropService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TreeDragDropService, decorators: [{\n type: Injectable\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ConfirmEventType, ConfirmationService, ContextMenuService, FilterMatchMode, FilterOperator, FilterService, Footer, Header, MessageService, OverlayService, PrimeIcons, PrimeNGConfig, PrimeTemplate, SharedModule, TranslationKeys, TreeDragDropService };\n","/**\n * @dynamic is for runtime initializing DomHandler.browser\n *\n * If delete below comment, we can see this error message:\n * Metadata collected contains an error that will be reported at runtime:\n * Only initialized variables and constants can be referenced\n * because the value of this variable is needed by the template compiler.\n */\n// @dynamic\nclass DomHandler {\n static addClass(element, className) {\n if (element.classList)\n element.classList.add(className);\n else\n element.className += ' ' + className;\n }\n static addMultipleClasses(element, className) {\n if (element.classList) {\n let styles = className.trim().split(' ');\n for (let i = 0; i < styles.length; i++) {\n element.classList.add(styles[i]);\n }\n }\n else {\n let styles = className.split(' ');\n for (let i = 0; i < styles.length; i++) {\n element.className += ' ' + styles[i];\n }\n }\n }\n static removeClass(element, className) {\n if (element.classList)\n element.classList.remove(className);\n else\n element.className = element.className.replace(new RegExp('(^|\\\\b)' + className.split(' ').join('|') + '(\\\\b|$)', 'gi'), ' ');\n }\n static hasClass(element, className) {\n if (element.classList)\n return element.classList.contains(className);\n else\n return new RegExp('(^| )' + className + '( |$)', 'gi').test(element.className);\n }\n static siblings(element) {\n return Array.prototype.filter.call(element.parentNode.children, function (child) {\n return child !== element;\n });\n }\n static find(element, selector) {\n return Array.from(element.querySelectorAll(selector));\n }\n static findSingle(element, selector) {\n if (element) {\n return element.querySelector(selector);\n }\n return null;\n }\n static index(element) {\n let children = element.parentNode.childNodes;\n let num = 0;\n for (var i = 0; i < children.length; i++) {\n if (children[i] == element)\n return num;\n if (children[i].nodeType == 1)\n num++;\n }\n return -1;\n }\n static indexWithinGroup(element, attributeName) {\n let children = element.parentNode ? element.parentNode.childNodes : [];\n let num = 0;\n for (var i = 0; i < children.length; i++) {\n if (children[i] == element)\n return num;\n if (children[i].attributes && children[i].attributes[attributeName] && children[i].nodeType == 1)\n num++;\n }\n return -1;\n }\n static relativePosition(element, target) {\n let elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n const targetHeight = target.offsetHeight;\n const targetOffset = target.getBoundingClientRect();\n const viewport = this.getViewport();\n let top, left;\n if ((targetOffset.top + targetHeight + elementDimensions.height) > viewport.height) {\n top = -1 * (elementDimensions.height);\n element.style.transformOrigin = 'bottom';\n if (targetOffset.top + top < 0) {\n top = -1 * targetOffset.top;\n }\n }\n else {\n top = targetHeight;\n element.style.transformOrigin = 'top';\n }\n if (elementDimensions.width > viewport.width) {\n // element wider then viewport and cannot fit on screen (align at left side of viewport)\n left = targetOffset.left * -1;\n }\n else if ((targetOffset.left + elementDimensions.width) > viewport.width) {\n // element wider then viewport but can be fit on screen (align at right side of viewport)\n left = (targetOffset.left + elementDimensions.width - viewport.width) * -1;\n }\n else {\n // element fits on screen (align with target)\n left = 0;\n }\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n }\n static absolutePosition(element, target) {\n let elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n let elementOuterHeight = elementDimensions.height;\n let elementOuterWidth = elementDimensions.width;\n let targetOuterHeight = target.offsetHeight;\n let targetOuterWidth = target.offsetWidth;\n let targetOffset = target.getBoundingClientRect();\n let windowScrollTop = this.getWindowScrollTop();\n let windowScrollLeft = this.getWindowScrollLeft();\n let viewport = this.getViewport();\n let top, left;\n if (targetOffset.top + targetOuterHeight + elementOuterHeight > viewport.height) {\n top = targetOffset.top + windowScrollTop - elementOuterHeight;\n element.style.transformOrigin = 'bottom';\n if (top < 0) {\n top = windowScrollTop;\n }\n }\n else {\n top = targetOuterHeight + targetOffset.top + windowScrollTop;\n element.style.transformOrigin = 'top';\n }\n if (targetOffset.left + elementOuterWidth > viewport.width)\n left = Math.max(0, targetOffset.left + windowScrollLeft + targetOuterWidth - elementOuterWidth);\n else\n left = targetOffset.left + windowScrollLeft;\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n }\n static getParents(element, parents = []) {\n return element['parentNode'] === null ? parents : this.getParents(element.parentNode, parents.concat([element.parentNode]));\n }\n static getScrollableParents(element) {\n let scrollableParents = [];\n if (element) {\n let parents = this.getParents(element);\n const overflowRegex = /(auto|scroll)/;\n const overflowCheck = (node) => {\n let styleDeclaration = window['getComputedStyle'](node, null);\n return overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowX')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowY'));\n };\n for (let parent of parents) {\n let scrollSelectors = parent.nodeType === 1 && parent.dataset['scrollselectors'];\n if (scrollSelectors) {\n let selectors = scrollSelectors.split(',');\n for (let selector of selectors) {\n let el = this.findSingle(parent, selector);\n if (el && overflowCheck(el)) {\n scrollableParents.push(el);\n }\n }\n }\n if (parent.nodeType !== 9 && overflowCheck(parent)) {\n scrollableParents.push(parent);\n }\n }\n }\n return scrollableParents;\n }\n static getHiddenElementOuterHeight(element) {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementHeight = element.offsetHeight;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n return elementHeight;\n }\n static getHiddenElementOuterWidth(element) {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementWidth = element.offsetWidth;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n return elementWidth;\n }\n static getHiddenElementDimensions(element) {\n let dimensions = {};\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n dimensions.width = element.offsetWidth;\n dimensions.height = element.offsetHeight;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n return dimensions;\n }\n static scrollInView(container, item) {\n let borderTopValue = getComputedStyle(container).getPropertyValue('borderTopWidth');\n let borderTop = borderTopValue ? parseFloat(borderTopValue) : 0;\n let paddingTopValue = getComputedStyle(container).getPropertyValue('paddingTop');\n let paddingTop = paddingTopValue ? parseFloat(paddingTopValue) : 0;\n let containerRect = container.getBoundingClientRect();\n let itemRect = item.getBoundingClientRect();\n let offset = (itemRect.top + document.body.scrollTop) - (containerRect.top + document.body.scrollTop) - borderTop - paddingTop;\n let scroll = container.scrollTop;\n let elementHeight = container.clientHeight;\n let itemHeight = this.getOuterHeight(item);\n if (offset < 0) {\n container.scrollTop = scroll + offset;\n }\n else if ((offset + itemHeight) > elementHeight) {\n container.scrollTop = scroll + offset - elementHeight + itemHeight;\n }\n }\n static fadeIn(element, duration) {\n element.style.opacity = 0;\n let last = +new Date();\n let opacity = 0;\n let tick = function () {\n opacity = +element.style.opacity.replace(\",\", \".\") + (new Date().getTime() - last) / duration;\n element.style.opacity = opacity;\n last = +new Date();\n if (+opacity < 1) {\n (window.requestAnimationFrame && requestAnimationFrame(tick)) || setTimeout(tick, 16);\n }\n };\n tick();\n }\n static fadeOut(element, ms) {\n var opacity = 1, interval = 50, duration = ms, gap = interval / duration;\n let fading = setInterval(() => {\n opacity = opacity - gap;\n if (opacity <= 0) {\n opacity = 0;\n clearInterval(fading);\n }\n element.style.opacity = opacity;\n }, interval);\n }\n static getWindowScrollTop() {\n let doc = document.documentElement;\n return (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n }\n static getWindowScrollLeft() {\n let doc = document.documentElement;\n return (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);\n }\n static matches(element, selector) {\n var p = Element.prototype;\n var f = p['matches'] || p.webkitMatchesSelector || p['mozMatchesSelector'] || p['msMatchesSelector'] || function (s) {\n return [].indexOf.call(document.querySelectorAll(s), this) !== -1;\n };\n return f.call(element, selector);\n }\n static getOuterWidth(el, margin) {\n let width = el.offsetWidth;\n if (margin) {\n let style = getComputedStyle(el);\n width += parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n return width;\n }\n static getHorizontalPadding(el) {\n let style = getComputedStyle(el);\n return parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n }\n static getHorizontalMargin(el) {\n let style = getComputedStyle(el);\n return parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n static innerWidth(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n width += parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n return width;\n }\n static width(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n return width;\n }\n static getInnerHeight(el) {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n height += parseFloat(style.paddingTop) + parseFloat(style.paddingBottom);\n return height;\n }\n static getOuterHeight(el, margin) {\n let height = el.offsetHeight;\n if (margin) {\n let style = getComputedStyle(el);\n height += parseFloat(style.marginTop) + parseFloat(style.marginBottom);\n }\n return height;\n }\n static getHeight(el) {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth);\n return height;\n }\n static getWidth(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth);\n return width;\n }\n static getViewport() {\n let win = window, d = document, e = d.documentElement, g = d.getElementsByTagName('body')[0], w = win.innerWidth || e.clientWidth || g.clientWidth, h = win.innerHeight || e.clientHeight || g.clientHeight;\n return { width: w, height: h };\n }\n static getOffset(el) {\n var rect = el.getBoundingClientRect();\n return {\n top: rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),\n left: rect.left + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0),\n };\n }\n static replaceElementWith(element, replacementElement) {\n let parentNode = element.parentNode;\n if (!parentNode)\n throw `Can't replace element`;\n return parentNode.replaceChild(replacementElement, element);\n }\n static getUserAgent() {\n return navigator.userAgent;\n }\n static isIE() {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n if (msie > 0) {\n // IE 10 or older => return version number\n return true;\n }\n var trident = ua.indexOf('Trident/');\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return true;\n }\n var edge = ua.indexOf('Edge/');\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return true;\n }\n // other browser\n return false;\n }\n static isIOS() {\n return /iPad|iPhone|iPod/.test(navigator.userAgent) && !window['MSStream'];\n }\n static isAndroid() {\n return /(android)/i.test(navigator.userAgent);\n }\n static isTouchDevice() {\n return (('ontouchstart' in window) || (navigator.maxTouchPoints > 0));\n }\n static appendChild(element, target) {\n if (this.isElement(target))\n target.appendChild(element);\n else if (target.el && target.el.nativeElement)\n target.el.nativeElement.appendChild(element);\n else\n throw 'Cannot append ' + target + ' to ' + element;\n }\n static removeChild(element, target) {\n if (this.isElement(target))\n target.removeChild(element);\n else if (target.el && target.el.nativeElement)\n target.el.nativeElement.removeChild(element);\n else\n throw 'Cannot remove ' + element + ' from ' + target;\n }\n static removeElement(element) {\n if (!('remove' in Element.prototype))\n element.parentNode.removeChild(element);\n else\n element.remove();\n }\n static isElement(obj) {\n return (typeof HTMLElement === \"object\" ? obj instanceof HTMLElement :\n obj && typeof obj === \"object\" && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === \"string\");\n }\n static calculateScrollbarWidth(el) {\n if (el) {\n let style = getComputedStyle(el);\n return (el.offsetWidth - el.clientWidth - parseFloat(style.borderLeftWidth) - parseFloat(style.borderRightWidth));\n }\n else {\n if (this.calculatedScrollbarWidth !== null)\n return this.calculatedScrollbarWidth;\n let scrollDiv = document.createElement(\"div\");\n scrollDiv.className = \"p-scrollbar-measure\";\n document.body.appendChild(scrollDiv);\n let scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n document.body.removeChild(scrollDiv);\n this.calculatedScrollbarWidth = scrollbarWidth;\n return scrollbarWidth;\n }\n }\n static calculateScrollbarHeight() {\n if (this.calculatedScrollbarHeight !== null)\n return this.calculatedScrollbarHeight;\n let scrollDiv = document.createElement(\"div\");\n scrollDiv.className = \"p-scrollbar-measure\";\n document.body.appendChild(scrollDiv);\n let scrollbarHeight = scrollDiv.offsetHeight - scrollDiv.clientHeight;\n document.body.removeChild(scrollDiv);\n this.calculatedScrollbarWidth = scrollbarHeight;\n return scrollbarHeight;\n }\n static invokeElementMethod(element, methodName, args) {\n element[methodName].apply(element, args);\n }\n static clearSelection() {\n if (window.getSelection) {\n if (window.getSelection().empty) {\n window.getSelection().empty();\n }\n else if (window.getSelection().removeAllRanges && window.getSelection().rangeCount > 0 && window.getSelection().getRangeAt(0).getClientRects().length > 0) {\n window.getSelection().removeAllRanges();\n }\n }\n else if (document['selection'] && document['selection'].empty) {\n try {\n document['selection'].empty();\n }\n catch (error) {\n //ignore IE bug\n }\n }\n }\n static getBrowser() {\n if (!this.browser) {\n let matched = this.resolveUserAgent();\n this.browser = {};\n if (matched.browser) {\n this.browser[matched.browser] = true;\n this.browser['version'] = matched.version;\n }\n if (this.browser['chrome']) {\n this.browser['webkit'] = true;\n }\n else if (this.browser['webkit']) {\n this.browser['safari'] = true;\n }\n }\n return this.browser;\n }\n static resolveUserAgent() {\n let ua = navigator.userAgent.toLowerCase();\n let match = /(chrome)[ \\/]([\\w.]+)/.exec(ua) ||\n /(webkit)[ \\/]([\\w.]+)/.exec(ua) ||\n /(opera)(?:.*version|)[ \\/]([\\w.]+)/.exec(ua) ||\n /(msie) ([\\w.]+)/.exec(ua) ||\n ua.indexOf(\"compatible\") < 0 && /(mozilla)(?:.*? rv:([\\w.]+)|)/.exec(ua) ||\n [];\n return {\n browser: match[1] || \"\",\n version: match[2] || \"0\"\n };\n }\n static isInteger(value) {\n if (Number.isInteger) {\n return Number.isInteger(value);\n }\n else {\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\n }\n }\n static isHidden(element) {\n return element.offsetParent === null;\n }\n static getFocusableElements(element) {\n let focusableElements = DomHandler.find(element, `button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n [href][clientHeight][clientWidth]:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n input:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]), select:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n textarea:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]), [tabIndex]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n [contenteditable]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]):not(.p-disabled)`);\n let visibleFocusableElements = [];\n for (let focusableElement of focusableElements) {\n if (getComputedStyle(focusableElement).display != \"none\" && getComputedStyle(focusableElement).visibility != \"hidden\")\n visibleFocusableElements.push(focusableElement);\n }\n return visibleFocusableElements;\n }\n static generateZIndex() {\n this.zindex = this.zindex || 999;\n return ++this.zindex;\n }\n}\nDomHandler.zindex = 1000;\nDomHandler.calculatedScrollbarWidth = null;\nDomHandler.calculatedScrollbarHeight = null;\n\nclass ConnectedOverlayScrollHandler {\n constructor(element, listener = () => { }) {\n this.element = element;\n this.listener = listener;\n }\n bindScrollListener() {\n this.scrollableParents = DomHandler.getScrollableParents(this.element);\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].addEventListener('scroll', this.listener);\n }\n }\n unbindScrollListener() {\n if (this.scrollableParents) {\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].removeEventListener('scroll', this.listener);\n }\n }\n }\n destroy() {\n this.unbindScrollListener();\n this.element = null;\n this.listener = null;\n this.scrollableParents = null;\n }\n}\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ConnectedOverlayScrollHandler, DomHandler };\n","import * as i0 from '@angular/core';\nimport { Directive, Input, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { ZIndexUtils } from 'primeng/utils';\nimport * as i1 from 'primeng/api';\n\nclass Tooltip {\n constructor(el, zone, config) {\n this.el = el;\n this.zone = zone;\n this.config = config;\n this.escape = true;\n this._tooltipOptions = {\n tooltipPosition: 'right',\n tooltipEvent: 'hover',\n appendTo: 'body',\n tooltipZIndex: 'auto',\n escape: true,\n positionTop: 0,\n positionLeft: 0\n };\n }\n get disabled() {\n return this._disabled;\n }\n set disabled(val) {\n this._disabled = val;\n this.deactivate();\n }\n ngAfterViewInit() {\n this.zone.runOutsideAngular(() => {\n if (this.getOption('tooltipEvent') === 'hover') {\n this.mouseEnterListener = this.onMouseEnter.bind(this);\n this.mouseLeaveListener = this.onMouseLeave.bind(this);\n this.clickListener = this.onClick.bind(this);\n this.el.nativeElement.addEventListener('mouseenter', this.mouseEnterListener);\n this.el.nativeElement.addEventListener('mouseleave', this.mouseLeaveListener);\n this.el.nativeElement.addEventListener('click', this.clickListener);\n }\n else if (this.getOption('tooltipEvent') === 'focus') {\n this.focusListener = this.onFocus.bind(this);\n this.blurListener = this.onBlur.bind(this);\n let target = this.getTarget(this.el.nativeElement);\n target.addEventListener('focus', this.focusListener);\n target.addEventListener('blur', this.blurListener);\n }\n });\n }\n ngOnChanges(simpleChange) {\n if (simpleChange.tooltipPosition) {\n this.setOption({ tooltipPosition: simpleChange.tooltipPosition.currentValue });\n }\n if (simpleChange.tooltipEvent) {\n this.setOption({ tooltipEvent: simpleChange.tooltipEvent.currentValue });\n }\n if (simpleChange.appendTo) {\n this.setOption({ appendTo: simpleChange.appendTo.currentValue });\n }\n if (simpleChange.positionStyle) {\n this.setOption({ positionStyle: simpleChange.positionStyle.currentValue });\n }\n if (simpleChange.tooltipStyleClass) {\n this.setOption({ tooltipStyleClass: simpleChange.tooltipStyleClass.currentValue });\n }\n if (simpleChange.tooltipZIndex) {\n this.setOption({ tooltipZIndex: simpleChange.tooltipZIndex.currentValue });\n }\n if (simpleChange.escape) {\n this.setOption({ escape: simpleChange.escape.currentValue });\n }\n if (simpleChange.showDelay) {\n this.setOption({ showDelay: simpleChange.showDelay.currentValue });\n }\n if (simpleChange.hideDelay) {\n this.setOption({ hideDelay: simpleChange.hideDelay.currentValue });\n }\n if (simpleChange.life) {\n this.setOption({ life: simpleChange.life.currentValue });\n }\n if (simpleChange.positionTop) {\n this.setOption({ positionTop: simpleChange.positionTop.currentValue });\n }\n if (simpleChange.positionLeft) {\n this.setOption({ positionLeft: simpleChange.positionLeft.currentValue });\n }\n if (simpleChange.disabled) {\n this.setOption({ disabled: simpleChange.disabled.currentValue });\n }\n if (simpleChange.text) {\n this.setOption({ tooltipLabel: simpleChange.text.currentValue });\n if (this.active) {\n if (simpleChange.text.currentValue) {\n if (this.container && this.container.offsetParent) {\n this.updateText();\n this.align();\n }\n else {\n this.show();\n }\n }\n else {\n this.hide();\n }\n }\n }\n if (simpleChange.tooltipOptions) {\n this._tooltipOptions = Object.assign(Object.assign({}, this._tooltipOptions), simpleChange.tooltipOptions.currentValue);\n this.deactivate();\n if (this.active) {\n if (this.getOption('tooltipLabel')) {\n if (this.container && this.container.offsetParent) {\n this.updateText();\n this.align();\n }\n else {\n this.show();\n }\n }\n else {\n this.hide();\n }\n }\n }\n }\n onMouseEnter(e) {\n if (!this.container && !this.showTimeout) {\n this.activate();\n }\n }\n onMouseLeave(e) {\n this.deactivate();\n }\n onFocus(e) {\n this.activate();\n }\n onBlur(e) {\n this.deactivate();\n }\n onClick(e) {\n this.deactivate();\n }\n activate() {\n this.active = true;\n this.clearHideTimeout();\n if (this.getOption('showDelay'))\n this.showTimeout = setTimeout(() => { this.show(); }, this.getOption('showDelay'));\n else\n this.show();\n if (this.getOption('life')) {\n let duration = this.getOption('showDelay') ? this.getOption('life') + this.getOption('showDelay') : this.getOption('life');\n this.hideTimeout = setTimeout(() => { this.hide(); }, duration);\n }\n }\n deactivate() {\n this.active = false;\n this.clearShowTimeout();\n if (this.getOption('hideDelay')) {\n this.clearHideTimeout(); //life timeout\n this.hideTimeout = setTimeout(() => { this.hide(); }, this.getOption('hideDelay'));\n }\n else {\n this.hide();\n }\n }\n create() {\n if (this.container) {\n this.clearHideTimeout();\n this.remove();\n }\n this.container = document.createElement('div');\n let tooltipArrow = document.createElement('div');\n tooltipArrow.className = 'p-tooltip-arrow';\n this.container.appendChild(tooltipArrow);\n this.tooltipText = document.createElement('div');\n this.tooltipText.className = 'p-tooltip-text';\n this.updateText();\n if (this.getOption('positionStyle')) {\n this.container.style.position = this.getOption('positionStyle');\n }\n this.container.appendChild(this.tooltipText);\n if (this.getOption('appendTo') === 'body')\n document.body.appendChild(this.container);\n else if (this.getOption('appendTo') === 'target')\n DomHandler.appendChild(this.container, this.el.nativeElement);\n else\n DomHandler.appendChild(this.container, this.getOption('appendTo'));\n this.container.style.display = 'inline-block';\n }\n show() {\n if (!this.getOption('tooltipLabel') || this.getOption('disabled')) {\n return;\n }\n this.create();\n this.align();\n DomHandler.fadeIn(this.container, 250);\n if (this.getOption('tooltipZIndex') === 'auto')\n ZIndexUtils.set('tooltip', this.container, this.config.zIndex.tooltip);\n else\n this.container.style.zIndex = this.getOption('tooltipZIndex');\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n }\n hide() {\n if (this.getOption('tooltipZIndex') === 'auto') {\n ZIndexUtils.clear(this.container);\n }\n this.remove();\n }\n updateText() {\n if (this.getOption('escape')) {\n this.tooltipText.innerHTML = '';\n this.tooltipText.appendChild(document.createTextNode(this.getOption('tooltipLabel')));\n }\n else {\n this.tooltipText.innerHTML = this.getOption('tooltipLabel');\n }\n }\n align() {\n let position = this.getOption('tooltipPosition');\n switch (position) {\n case 'top':\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignBottom();\n if (this.isOutOfBounds()) {\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignLeft();\n }\n }\n }\n break;\n case 'bottom':\n this.alignBottom();\n if (this.isOutOfBounds()) {\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignLeft();\n }\n }\n }\n break;\n case 'left':\n this.alignLeft();\n if (this.isOutOfBounds()) {\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignBottom();\n }\n }\n }\n break;\n case 'right':\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignLeft();\n if (this.isOutOfBounds()) {\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignBottom();\n }\n }\n }\n break;\n }\n }\n getHostOffset() {\n if (this.getOption('appendTo') === 'body' || this.getOption('appendTo') === 'target') {\n let offset = this.el.nativeElement.getBoundingClientRect();\n let targetLeft = offset.left + DomHandler.getWindowScrollLeft();\n let targetTop = offset.top + DomHandler.getWindowScrollTop();\n return { left: targetLeft, top: targetTop };\n }\n else {\n return { left: 0, top: 0 };\n }\n }\n alignRight() {\n this.preAlign('right');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left + DomHandler.getOuterWidth(this.el.nativeElement);\n let top = hostOffset.top + (DomHandler.getOuterHeight(this.el.nativeElement) - DomHandler.getOuterHeight(this.container)) / 2;\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n alignLeft() {\n this.preAlign('left');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left - DomHandler.getOuterWidth(this.container);\n let top = hostOffset.top + (DomHandler.getOuterHeight(this.el.nativeElement) - DomHandler.getOuterHeight(this.container)) / 2;\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n alignTop() {\n this.preAlign('top');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left + (DomHandler.getOuterWidth(this.el.nativeElement) - DomHandler.getOuterWidth(this.container)) / 2;\n let top = hostOffset.top - DomHandler.getOuterHeight(this.container);\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n alignBottom() {\n this.preAlign('bottom');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left + (DomHandler.getOuterWidth(this.el.nativeElement) - DomHandler.getOuterWidth(this.container)) / 2;\n let top = hostOffset.top + DomHandler.getOuterHeight(this.el.nativeElement);\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n setOption(option) {\n this._tooltipOptions = Object.assign(Object.assign({}, this._tooltipOptions), option);\n }\n getOption(option) {\n return this._tooltipOptions[option];\n }\n getTarget(el) {\n return DomHandler.hasClass(el, 'p-inputwrapper') ? DomHandler.findSingle(el, 'input') : el;\n }\n preAlign(position) {\n this.container.style.left = -999 + 'px';\n this.container.style.top = -999 + 'px';\n let defaultClassName = 'p-tooltip p-component p-tooltip-' + position;\n this.container.className = this.getOption('tooltipStyleClass') ? defaultClassName + ' ' + this.getOption('tooltipStyleClass') : defaultClassName;\n }\n isOutOfBounds() {\n let offset = this.container.getBoundingClientRect();\n let targetTop = offset.top;\n let targetLeft = offset.left;\n let width = DomHandler.getOuterWidth(this.container);\n let height = DomHandler.getOuterHeight(this.container);\n let viewport = DomHandler.getViewport();\n return (targetLeft + width > viewport.width) || (targetLeft < 0) || (targetTop < 0) || (targetTop + height > viewport.height);\n }\n onWindowResize(e) {\n this.hide();\n }\n bindDocumentResizeListener() {\n this.zone.runOutsideAngular(() => {\n this.resizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.resizeListener);\n });\n }\n unbindDocumentResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.el.nativeElement, () => {\n if (this.container) {\n this.hide();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n unbindEvents() {\n if (this.getOption('tooltipEvent') === 'hover') {\n this.el.nativeElement.removeEventListener('mouseenter', this.mouseEnterListener);\n this.el.nativeElement.removeEventListener('mouseleave', this.mouseLeaveListener);\n this.el.nativeElement.removeEventListener('click', this.clickListener);\n }\n else if (this.getOption('tooltipEvent') === 'focus') {\n let target = this.getTarget(this.el.nativeElement);\n target.removeEventListener('focus', this.focusListener);\n target.removeEventListener('blur', this.blurListener);\n }\n this.unbindDocumentResizeListener();\n }\n remove() {\n if (this.container && this.container.parentElement) {\n if (this.getOption('appendTo') === 'body')\n document.body.removeChild(this.container);\n else if (this.getOption('appendTo') === 'target')\n this.el.nativeElement.removeChild(this.container);\n else\n DomHandler.removeChild(this.container, this.getOption('appendTo'));\n }\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.clearTimeouts();\n this.container = null;\n this.scrollHandler = null;\n }\n clearShowTimeout() {\n if (this.showTimeout) {\n clearTimeout(this.showTimeout);\n this.showTimeout = null;\n }\n }\n clearHideTimeout() {\n if (this.hideTimeout) {\n clearTimeout(this.hideTimeout);\n this.hideTimeout = null;\n }\n }\n clearTimeouts() {\n this.clearShowTimeout();\n this.clearHideTimeout();\n }\n ngOnDestroy() {\n this.unbindEvents();\n if (this.container) {\n ZIndexUtils.clear(this.container);\n }\n this.remove();\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n }\n}\nTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Tooltip, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig }], target: i0.ɵɵFactoryTarget.Directive });\nTooltip.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Tooltip, selector: \"[pTooltip]\", inputs: { tooltipPosition: \"tooltipPosition\", tooltipEvent: \"tooltipEvent\", appendTo: \"appendTo\", positionStyle: \"positionStyle\", tooltipStyleClass: \"tooltipStyleClass\", tooltipZIndex: \"tooltipZIndex\", escape: \"escape\", showDelay: \"showDelay\", hideDelay: \"hideDelay\", life: \"life\", positionTop: \"positionTop\", positionLeft: \"positionLeft\", text: [\"pTooltip\", \"text\"], disabled: [\"tooltipDisabled\", \"disabled\"], tooltipOptions: \"tooltipOptions\" }, host: { classAttribute: \"p-element\" }, usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Tooltip, decorators: [{\n type: Directive,\n args: [{\n selector: '[pTooltip]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PrimeNGConfig }]; }, propDecorators: { tooltipPosition: [{\n type: Input\n }], tooltipEvent: [{\n type: Input\n }], appendTo: [{\n type: Input\n }], positionStyle: [{\n type: Input\n }], tooltipStyleClass: [{\n type: Input\n }], tooltipZIndex: [{\n type: Input\n }], escape: [{\n type: Input\n }], showDelay: [{\n type: Input\n }], hideDelay: [{\n type: Input\n }], life: [{\n type: Input\n }], positionTop: [{\n type: Input\n }], positionLeft: [{\n type: Input\n }], text: [{\n type: Input,\n args: ['pTooltip']\n }], disabled: [{\n type: Input,\n args: [\"tooltipDisabled\"]\n }], tooltipOptions: [{\n type: Input\n }] } });\nclass TooltipModule {\n}\nTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TooltipModule, declarations: [Tooltip], imports: [CommonModule], exports: [Tooltip] });\nTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TooltipModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TooltipModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [Tooltip],\n declarations: [Tooltip]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Tooltip, TooltipModule };\n","import * as i0 from '@angular/core';\nimport { Directive, Optional, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport * as i1 from 'primeng/api';\n\nclass Ripple {\n constructor(el, zone, config) {\n this.el = el;\n this.zone = zone;\n this.config = config;\n }\n ngAfterViewInit() {\n if (this.config && this.config.ripple) {\n this.zone.runOutsideAngular(() => {\n this.create();\n this.mouseDownListener = this.onMouseDown.bind(this);\n this.el.nativeElement.addEventListener('mousedown', this.mouseDownListener);\n });\n }\n }\n onMouseDown(event) {\n let ink = this.getInk();\n if (!ink || getComputedStyle(ink, null).display === 'none') {\n return;\n }\n DomHandler.removeClass(ink, 'p-ink-active');\n if (!DomHandler.getHeight(ink) && !DomHandler.getWidth(ink)) {\n let d = Math.max(DomHandler.getOuterWidth(this.el.nativeElement), DomHandler.getOuterHeight(this.el.nativeElement));\n ink.style.height = d + 'px';\n ink.style.width = d + 'px';\n }\n let offset = DomHandler.getOffset(this.el.nativeElement);\n let x = event.pageX - offset.left + document.body.scrollTop - DomHandler.getWidth(ink) / 2;\n let y = event.pageY - offset.top + document.body.scrollLeft - DomHandler.getHeight(ink) / 2;\n ink.style.top = y + 'px';\n ink.style.left = x + 'px';\n DomHandler.addClass(ink, 'p-ink-active');\n }\n getInk() {\n for (let i = 0; i < this.el.nativeElement.children.length; i++) {\n if (this.el.nativeElement.children[i].className.indexOf('p-ink') !== -1) {\n return this.el.nativeElement.children[i];\n }\n }\n return null;\n }\n resetInk() {\n let ink = this.getInk();\n if (ink) {\n DomHandler.removeClass(ink, 'p-ink-active');\n }\n }\n onAnimationEnd(event) {\n DomHandler.removeClass(event.currentTarget, 'p-ink-active');\n }\n create() {\n let ink = document.createElement('span');\n ink.className = 'p-ink';\n this.el.nativeElement.appendChild(ink);\n this.animationListener = this.onAnimationEnd.bind(this);\n ink.addEventListener('animationend', this.animationListener);\n }\n remove() {\n let ink = this.getInk();\n if (ink) {\n this.el.nativeElement.removeEventListener('mousedown', this.mouseDownListener);\n ink.removeEventListener('animationend', this.animationListener);\n DomHandler.removeElement(ink);\n }\n }\n ngOnDestroy() {\n if (this.config && this.config.ripple) {\n this.remove();\n }\n }\n}\nRipple.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Ripple, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig, optional: true }], target: i0.ɵɵFactoryTarget.Directive });\nRipple.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Ripple, selector: \"[pRipple]\", host: { classAttribute: \"p-ripple p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Ripple, decorators: [{\n type: Directive,\n args: [{\n selector: '[pRipple]',\n host: {\n 'class': 'p-ripple p-element'\n }\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PrimeNGConfig, decorators: [{\n type: Optional\n }] }];\n } });\nclass RippleModule {\n}\nRippleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nRippleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RippleModule, declarations: [Ripple], imports: [CommonModule], exports: [Ripple] });\nRippleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RippleModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RippleModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [Ripple],\n declarations: [Ripple]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Ripple, RippleModule };\n","import * as i4 from '@angular/cdk/scrolling';\nimport { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';\nimport * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, Input, Output, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, ContentChildren, NgModule } from '@angular/core';\nimport { trigger, transition, style, animate } from '@angular/animations';\nimport * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i3 from 'primeng/api';\nimport { TranslationKeys, PrimeTemplate, SharedModule } from 'primeng/api';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport * as i5 from 'primeng/tooltip';\nimport { TooltipModule } from 'primeng/tooltip';\nimport * as i1 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\n\nconst DROPDOWN_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Dropdown),\n multi: true\n};\nclass DropdownItem {\n constructor() {\n this.onClick = new EventEmitter();\n }\n onOptionClick(event) {\n this.onClick.emit({\n originalEvent: event,\n option: this.option\n });\n }\n}\nDropdownItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: DropdownItem, deps: [], target: i0.ɵɵFactoryTarget.Component });\nDropdownItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: DropdownItem, selector: \"p-dropdownItem\", inputs: { option: \"option\", selected: \"selected\", label: \"label\", disabled: \"disabled\", visible: \"visible\", itemSize: \"itemSize\", template: \"template\" }, outputs: { onClick: \"onClick\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
  • \n {{label||'empty'}}\n \n
  • \n `, isInline: true, directives: [{ type: i1.Ripple, selector: \"[pRipple]\" }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: DropdownItem, decorators: [{\n type: Component,\n args: [{\n selector: 'p-dropdownItem',\n template: `\n
  • \n {{label||'empty'}}\n \n
  • \n `,\n host: {\n 'class': 'p-element'\n }\n }]\n }], propDecorators: { option: [{\n type: Input\n }], selected: [{\n type: Input\n }], label: [{\n type: Input\n }], disabled: [{\n type: Input\n }], visible: [{\n type: Input\n }], itemSize: [{\n type: Input\n }], template: [{\n type: Input\n }], onClick: [{\n type: Output\n }] } });\nclass Dropdown {\n constructor(el, renderer, cd, zone, filterService, config, overlayService) {\n this.el = el;\n this.renderer = renderer;\n this.cd = cd;\n this.zone = zone;\n this.filterService = filterService;\n this.config = config;\n this.overlayService = overlayService;\n this.scrollHeight = '200px';\n this.resetFilterOnHide = false;\n this.dropdownIcon = 'pi pi-chevron-down';\n this.optionGroupChildren = \"items\";\n this.autoDisplayFirst = true;\n this.emptyFilterMessage = '';\n this.emptyMessage = '';\n this.autoZIndex = true;\n this.baseZIndex = 0;\n this.showTransitionOptions = '.12s cubic-bezier(0, 0, 0.2, 1)';\n this.hideTransitionOptions = '.1s linear';\n this.filterMatchMode = \"contains\";\n this.tooltip = '';\n this.tooltipPosition = 'right';\n this.tooltipPositionStyle = 'absolute';\n this.autofocusFilter = true;\n this.onChange = new EventEmitter();\n this.onFilter = new EventEmitter();\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n this.onClick = new EventEmitter();\n this.onShow = new EventEmitter();\n this.onHide = new EventEmitter();\n this.onClear = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n this.viewPortOffsetTop = 0;\n this.id = UniqueComponentId();\n }\n get disabled() {\n return this._disabled;\n }\n ;\n set disabled(_disabled) {\n if (_disabled) {\n this.focused = false;\n if (this.overlayVisible)\n this.hide();\n }\n this._disabled = _disabled;\n if (!this.cd.destroyed) {\n this.cd.detectChanges();\n }\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n case 'selectedItem':\n this.selectedItemTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n case 'emptyfilter':\n this.emptyFilterTemplate = item.template;\n break;\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n case 'group':\n this.groupTemplate = item.template;\n break;\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n ngOnInit() {\n this.optionsToDisplay = this.options;\n this.updateSelectedOption(null);\n this.labelId = this.id + '_label';\n this.listId = this.id + '_list';\n }\n get options() {\n return this._options;\n }\n set options(val) {\n this._options = val;\n this.optionsToDisplay = this._options;\n this.updateSelectedOption(this.value);\n this.selectedOption = this.findOption(this.value, this.optionsToDisplay);\n if (!this.selectedOption) {\n this.value = null;\n this.onModelChange(this.value);\n }\n this.optionsChanged = true;\n if (this._filterValue && this._filterValue.length) {\n this.activateFilter();\n }\n }\n get filterValue() {\n return this._filterValue;\n }\n set filterValue(val) {\n this._filterValue = val;\n this.activateFilter();\n }\n ngAfterViewInit() {\n if (this.editable) {\n this.updateEditableLabel();\n }\n }\n get label() {\n return this.selectedOption ? this.getOptionLabel(this.selectedOption) : null;\n }\n get emptyMessageLabel() {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n get emptyFilterMessageLabel() {\n return this.emptyFilterMessage || this.config.getTranslation(TranslationKeys.EMPTY_FILTER_MESSAGE);\n }\n get filled() {\n return this.value || this.value != null || this.value != undefined;\n }\n updateEditableLabel() {\n if (this.editableInputViewChild && this.editableInputViewChild.nativeElement) {\n this.editableInputViewChild.nativeElement.value = (this.selectedOption ? this.getOptionLabel(this.selectedOption) : this.value || '');\n }\n }\n getOptionLabel(option) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : (option.label != undefined ? option.label : option);\n }\n getOptionValue(option) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : (this.optionLabel || option.value === undefined ? option : option.value);\n }\n isOptionDisabled(option) {\n return this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : (option.disabled !== undefined ? option.disabled : false);\n }\n getOptionGroupLabel(optionGroup) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : (optionGroup.label != undefined ? optionGroup.label : optionGroup);\n }\n getOptionGroupChildren(optionGroup) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n onItemClick(event) {\n const option = event.option;\n if (!this.isOptionDisabled(option)) {\n this.selectItem(event.originalEvent, option);\n this.accessibleViewChild.nativeElement.focus();\n }\n setTimeout(() => {\n this.hide();\n }, 150);\n }\n selectItem(event, option) {\n if (this.selectedOption != option) {\n this.selectedOption = option;\n this.value = this.getOptionValue(option);\n this.onModelChange(this.value);\n this.updateEditableLabel();\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n if (this.virtualScroll) {\n setTimeout(() => {\n this.viewPortOffsetTop = this.viewPort ? this.viewPort.measureScrollOffset() : 0;\n }, 1);\n }\n }\n }\n ngAfterViewChecked() {\n if (this.optionsChanged && this.overlayVisible) {\n this.optionsChanged = false;\n if (this.virtualScroll) {\n this.updateVirtualScrollSelectedIndex(true);\n }\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.alignOverlay();\n }, 1);\n });\n }\n if (this.selectedOptionUpdated && this.itemsWrapper) {\n if (this.virtualScroll && this.viewPort) {\n let range = this.viewPort.getRenderedRange();\n this.updateVirtualScrollSelectedIndex(false);\n if (range.start > this.virtualScrollSelectedIndex || range.end < this.virtualScrollSelectedIndex) {\n this.viewPort.scrollToIndex(this.virtualScrollSelectedIndex);\n }\n }\n let selectedItem = DomHandler.findSingle(this.overlay, 'li.p-highlight');\n if (selectedItem) {\n DomHandler.scrollInView(this.itemsWrapper, DomHandler.findSingle(this.overlay, 'li.p-highlight'));\n }\n this.selectedOptionUpdated = false;\n }\n }\n writeValue(value) {\n if (this.filter) {\n this.resetFilter();\n }\n this.value = value;\n this.updateSelectedOption(value);\n this.updateEditableLabel();\n this.cd.markForCheck();\n }\n resetFilter() {\n this._filterValue = null;\n if (this.filterViewChild && this.filterViewChild.nativeElement) {\n this.filterViewChild.nativeElement.value = '';\n }\n this.optionsToDisplay = this.options;\n }\n updateSelectedOption(val) {\n this.selectedOption = this.findOption(val, this.optionsToDisplay);\n if (this.autoDisplayFirst && !this.placeholder && !this.selectedOption && this.optionsToDisplay && this.optionsToDisplay.length && !this.editable) {\n if (this.group) {\n this.selectedOption = this.optionsToDisplay[0].items[0];\n }\n else {\n this.selectedOption = this.optionsToDisplay[0];\n }\n this.value = this.getOptionValue(this.selectedOption);\n this.onModelChange(this.value);\n }\n this.selectedOptionUpdated = true;\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n onMouseclick(event) {\n if (this.disabled || this.readonly || this.isInputClick(event)) {\n return;\n }\n this.onClick.emit(event);\n this.accessibleViewChild.nativeElement.focus();\n if (this.overlayVisible)\n this.hide();\n else\n this.show();\n this.cd.detectChanges();\n }\n onOverlayClick(event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n isInputClick(event) {\n return DomHandler.hasClass(event.target, 'p-dropdown-clear-icon') ||\n event.target.isSameNode(this.accessibleViewChild.nativeElement) ||\n (this.editableInputViewChild && event.target.isSameNode(this.editableInputViewChild.nativeElement));\n }\n isOutsideClicked(event) {\n return !(this.el.nativeElement.isSameNode(event.target) || this.el.nativeElement.contains(event.target) || (this.overlay && this.overlay.contains(event.target)));\n }\n isEmpty() {\n return !this.optionsToDisplay || (this.optionsToDisplay && this.optionsToDisplay.length === 0);\n }\n onEditableInputClick() {\n this.bindDocumentClickListener();\n }\n onEditableInputFocus(event) {\n this.focused = true;\n this.hide();\n this.onFocus.emit(event);\n }\n onEditableInputChange(event) {\n this.value = event.target.value;\n this.updateSelectedOption(this.value);\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n show() {\n this.overlayVisible = true;\n this.cd.markForCheck();\n }\n onOverlayAnimationStart(event) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n let itemsWrapperSelector = this.virtualScroll ? '.cdk-virtual-scroll-viewport' : '.p-dropdown-items-wrapper';\n this.itemsWrapper = DomHandler.findSingle(this.overlay, itemsWrapperSelector);\n this.appendOverlay();\n if (this.autoZIndex) {\n ZIndexUtils.set('overlay', this.overlay, this.baseZIndex + this.config.zIndex.overlay);\n }\n this.alignOverlay();\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n if (this.options && this.options.length) {\n if (!this.virtualScroll) {\n let selectedListItem = DomHandler.findSingle(this.itemsWrapper, '.p-dropdown-item.p-highlight');\n if (selectedListItem) {\n selectedListItem.scrollIntoView({ block: 'nearest', inline: 'center' });\n }\n }\n }\n if (this.filterViewChild && this.filterViewChild.nativeElement) {\n this.preventModelTouched = true;\n if (this.autofocusFilter) {\n this.filterViewChild.nativeElement.focus();\n }\n }\n this.onShow.emit(event);\n break;\n case 'void':\n this.onOverlayHide();\n this.onHide.emit(event);\n break;\n }\n }\n onOverlayAnimationEnd(event) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n scrollToSelectedVirtualScrollElement() {\n if (!this.virtualAutoScrolled) {\n if (this.viewPortOffsetTop) {\n this.viewPort.scrollToOffset(this.viewPortOffsetTop);\n }\n else if (this.virtualScrollSelectedIndex > -1) {\n this.viewPort.scrollToIndex(this.virtualScrollSelectedIndex);\n }\n }\n this.virtualAutoScrolled = true;\n }\n updateVirtualScrollSelectedIndex(resetOffset) {\n if (this.selectedOption && this.optionsToDisplay && this.optionsToDisplay.length) {\n if (resetOffset) {\n this.viewPortOffsetTop = 0;\n }\n this.virtualScrollSelectedIndex = this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay);\n }\n }\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.overlay);\n else\n DomHandler.appendChild(this.overlay, this.appendTo);\n if (!this.overlay.style.minWidth) {\n this.overlay.style.minWidth = DomHandler.getWidth(this.containerViewChild.nativeElement) + 'px';\n }\n }\n }\n restoreOverlayAppend() {\n if (this.overlay && this.appendTo) {\n this.el.nativeElement.appendChild(this.overlay);\n }\n }\n hide() {\n this.overlayVisible = false;\n if (this.filter && this.resetFilterOnHide) {\n this.resetFilter();\n }\n if (this.virtualScroll) {\n this.virtualAutoScrolled = false;\n }\n this.cd.markForCheck();\n }\n alignOverlay() {\n if (this.overlay) {\n if (this.appendTo)\n DomHandler.absolutePosition(this.overlay, this.containerViewChild.nativeElement);\n else\n DomHandler.relativePosition(this.overlay, this.containerViewChild.nativeElement);\n }\n }\n onInputFocus(event) {\n this.focused = true;\n this.onFocus.emit(event);\n }\n onInputBlur(event) {\n this.focused = false;\n this.onBlur.emit(event);\n if (!this.preventModelTouched) {\n this.onModelTouched();\n }\n this.preventModelTouched = false;\n }\n findPrevEnabledOption(index) {\n let prevEnabledOption;\n if (this.optionsToDisplay && this.optionsToDisplay.length) {\n for (let i = (index - 1); 0 <= i; i--) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n prevEnabledOption = option;\n break;\n }\n }\n if (!prevEnabledOption) {\n for (let i = this.optionsToDisplay.length - 1; i >= index; i--) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n prevEnabledOption = option;\n break;\n }\n }\n }\n }\n return prevEnabledOption;\n }\n findNextEnabledOption(index) {\n let nextEnabledOption;\n if (this.optionsToDisplay && this.optionsToDisplay.length) {\n for (let i = (index + 1); i < this.optionsToDisplay.length; i++) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n nextEnabledOption = option;\n break;\n }\n }\n if (!nextEnabledOption) {\n for (let i = 0; i < index; i++) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n nextEnabledOption = option;\n break;\n }\n }\n }\n }\n return nextEnabledOption;\n }\n onKeydown(event, search) {\n if (this.readonly || !this.optionsToDisplay || this.optionsToDisplay.length === null) {\n return;\n }\n switch (event.which) {\n //down\n case 40:\n if (!this.overlayVisible && event.altKey) {\n this.show();\n }\n else {\n if (this.group) {\n let selectedItemIndex = this.selectedOption ? this.findOptionGroupIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n if (selectedItemIndex !== -1) {\n let nextItemIndex = selectedItemIndex.itemIndex + 1;\n if (nextItemIndex < (this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex]).length)) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex])[nextItemIndex]);\n this.selectedOptionUpdated = true;\n }\n else if (this.optionsToDisplay[selectedItemIndex.groupIndex + 1]) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex + 1])[0]);\n this.selectedOptionUpdated = true;\n }\n }\n else {\n if (this.optionsToDisplay && this.optionsToDisplay.length > 0) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[0])[0]);\n }\n }\n }\n else {\n let selectedItemIndex = this.selectedOption ? this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n let nextEnabledOption = this.findNextEnabledOption(selectedItemIndex);\n if (nextEnabledOption) {\n this.selectItem(event, nextEnabledOption);\n this.selectedOptionUpdated = true;\n }\n }\n }\n event.preventDefault();\n break;\n //up\n case 38:\n if (this.group) {\n let selectedItemIndex = this.selectedOption ? this.findOptionGroupIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n if (selectedItemIndex !== -1) {\n let prevItemIndex = selectedItemIndex.itemIndex - 1;\n if (prevItemIndex >= 0) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex])[prevItemIndex]);\n this.selectedOptionUpdated = true;\n }\n else if (prevItemIndex < 0) {\n let prevGroup = this.optionsToDisplay[selectedItemIndex.groupIndex - 1];\n if (prevGroup) {\n this.selectItem(event, this.getOptionGroupChildren(prevGroup)[this.getOptionGroupChildren(prevGroup).length - 1]);\n this.selectedOptionUpdated = true;\n }\n }\n }\n }\n else {\n let selectedItemIndex = this.selectedOption ? this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n let prevEnabledOption = this.findPrevEnabledOption(selectedItemIndex);\n if (prevEnabledOption) {\n this.selectItem(event, prevEnabledOption);\n this.selectedOptionUpdated = true;\n }\n }\n event.preventDefault();\n break;\n //space\n case 32:\n if (search) {\n if (!this.overlayVisible) {\n this.show();\n }\n else {\n this.hide();\n }\n event.preventDefault();\n }\n break;\n //enter\n case 13:\n if (this.overlayVisible && (!this.filter || (this.optionsToDisplay && this.optionsToDisplay.length > 0))) {\n this.hide();\n }\n else if (!this.overlayVisible) {\n this.show();\n }\n event.preventDefault();\n break;\n //escape and tab\n case 27:\n case 9:\n this.hide();\n break;\n //search item based on keyboard input\n default:\n if (search && !event.metaKey) {\n this.search(event);\n }\n break;\n }\n }\n search(event) {\n if (this.searchTimeout) {\n clearTimeout(this.searchTimeout);\n }\n const char = event.key;\n this.previousSearchChar = this.currentSearchChar;\n this.currentSearchChar = char;\n if (this.previousSearchChar === this.currentSearchChar)\n this.searchValue = this.currentSearchChar;\n else\n this.searchValue = this.searchValue ? this.searchValue + char : char;\n let newOption;\n if (this.group) {\n let searchIndex = this.selectedOption ? this.findOptionGroupIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : { groupIndex: 0, itemIndex: 0 };\n newOption = this.searchOptionWithinGroup(searchIndex);\n }\n else {\n let searchIndex = this.selectedOption ? this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n newOption = this.searchOption(++searchIndex);\n }\n if (newOption && !this.isOptionDisabled(newOption)) {\n this.selectItem(event, newOption);\n this.selectedOptionUpdated = true;\n }\n this.searchTimeout = setTimeout(() => {\n this.searchValue = null;\n }, 250);\n }\n searchOption(index) {\n let option;\n if (this.searchValue) {\n option = this.searchOptionInRange(index, this.optionsToDisplay.length);\n if (!option) {\n option = this.searchOptionInRange(0, index);\n }\n }\n return option;\n }\n searchOptionInRange(start, end) {\n for (let i = start; i < end; i++) {\n let opt = this.optionsToDisplay[i];\n if (this.getOptionLabel(opt).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale)) && !this.isOptionDisabled(opt)) {\n return opt;\n }\n }\n return null;\n }\n searchOptionWithinGroup(index) {\n let option;\n if (this.searchValue) {\n for (let i = index.groupIndex; i < this.optionsToDisplay.length; i++) {\n for (let j = (index.groupIndex === i) ? (index.itemIndex + 1) : 0; j < this.getOptionGroupChildren(this.optionsToDisplay[i]).length; j++) {\n let opt = this.getOptionGroupChildren(this.optionsToDisplay[i])[j];\n if (this.getOptionLabel(opt).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale)) && !this.isOptionDisabled(opt)) {\n return opt;\n }\n }\n }\n if (!option) {\n for (let i = 0; i <= index.groupIndex; i++) {\n for (let j = 0; j < ((index.groupIndex === i) ? index.itemIndex : this.getOptionGroupChildren(this.optionsToDisplay[i]).length); j++) {\n let opt = this.getOptionGroupChildren(this.optionsToDisplay[i])[j];\n if (this.getOptionLabel(opt).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale)) && !this.isOptionDisabled(opt)) {\n return opt;\n }\n }\n }\n }\n }\n return null;\n }\n findOptionIndex(val, opts) {\n let index = -1;\n if (opts) {\n for (let i = 0; i < opts.length; i++) {\n if ((val == null && this.getOptionValue(opts[i]) == null) || ObjectUtils.equals(val, this.getOptionValue(opts[i]), this.dataKey)) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n findOptionGroupIndex(val, opts) {\n let groupIndex, itemIndex;\n if (opts) {\n for (let i = 0; i < opts.length; i++) {\n groupIndex = i;\n itemIndex = this.findOptionIndex(val, this.getOptionGroupChildren(opts[i]));\n if (itemIndex !== -1) {\n break;\n }\n }\n }\n if (itemIndex !== -1) {\n return { groupIndex: groupIndex, itemIndex: itemIndex };\n }\n else {\n return -1;\n }\n }\n findOption(val, opts, inGroup) {\n if (this.group && !inGroup) {\n let opt;\n if (opts && opts.length) {\n for (let optgroup of opts) {\n opt = this.findOption(val, this.getOptionGroupChildren(optgroup), true);\n if (opt) {\n break;\n }\n }\n }\n return opt;\n }\n else {\n let index = this.findOptionIndex(val, opts);\n return (index != -1) ? opts[index] : null;\n }\n }\n onFilterInputChange(event) {\n let inputValue = event.target.value;\n if (inputValue && inputValue.length) {\n this._filterValue = inputValue;\n this.activateFilter();\n }\n else {\n this._filterValue = null;\n this.optionsToDisplay = this.options;\n }\n this.optionsChanged = true;\n this.onFilter.emit({ originalEvent: event, filter: this._filterValue });\n }\n activateFilter() {\n let searchFields = (this.filterBy || this.optionLabel || 'label').split(',');\n if (this.options && this.options.length) {\n if (this.group) {\n let filteredGroups = [];\n for (let optgroup of this.options) {\n let filteredSubOptions = this.filterService.filter(this.getOptionGroupChildren(optgroup), searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n if (filteredSubOptions && filteredSubOptions.length) {\n filteredGroups.push(Object.assign(Object.assign({}, optgroup), { [this.optionGroupChildren]: filteredSubOptions }));\n }\n }\n this.optionsToDisplay = filteredGroups;\n }\n else {\n this.optionsToDisplay = this.filterService.filter(this.options, searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n }\n this.optionsChanged = true;\n }\n }\n applyFocus() {\n if (this.editable)\n DomHandler.findSingle(this.el.nativeElement, '.p-dropdown-label.p-inputtext').focus();\n else\n DomHandler.findSingle(this.el.nativeElement, 'input[readonly]').focus();\n }\n focus() {\n this.applyFocus();\n }\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';\n this.documentClickListener = this.renderer.listen(documentTarget, 'click', (event) => {\n if (!this.preventDocumentDefault && this.isOutsideClicked(event)) {\n this.hide();\n this.unbindDocumentClickListener();\n }\n this.preventDocumentDefault = false;\n });\n }\n }\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n bindDocumentResizeListener() {\n this.documentResizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.documentResizeListener);\n }\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n onWindowResize() {\n if (this.overlayVisible && !DomHandler.isTouchDevice()) {\n this.hide();\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.containerViewChild.nativeElement, (event) => {\n if (this.overlayVisible) {\n this.hide();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n clear(event) {\n this.value = null;\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n this.updateSelectedOption(this.value);\n this.updateEditableLabel();\n this.onClear.emit(event);\n }\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.overlay = null;\n this.itemsWrapper = null;\n this.onModelTouched();\n }\n ngOnDestroy() {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n }\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n}\nDropdown.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Dropdown, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i3.FilterService }, { token: i3.PrimeNGConfig }, { token: i3.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nDropdown.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Dropdown, selector: \"p-dropdown\", inputs: { scrollHeight: \"scrollHeight\", filter: \"filter\", name: \"name\", style: \"style\", panelStyle: \"panelStyle\", styleClass: \"styleClass\", panelStyleClass: \"panelStyleClass\", readonly: \"readonly\", required: \"required\", editable: \"editable\", appendTo: \"appendTo\", tabindex: \"tabindex\", placeholder: \"placeholder\", filterPlaceholder: \"filterPlaceholder\", filterLocale: \"filterLocale\", inputId: \"inputId\", selectId: \"selectId\", dataKey: \"dataKey\", filterBy: \"filterBy\", autofocus: \"autofocus\", resetFilterOnHide: \"resetFilterOnHide\", dropdownIcon: \"dropdownIcon\", optionLabel: \"optionLabel\", optionValue: \"optionValue\", optionDisabled: \"optionDisabled\", optionGroupLabel: \"optionGroupLabel\", optionGroupChildren: \"optionGroupChildren\", autoDisplayFirst: \"autoDisplayFirst\", group: \"group\", showClear: \"showClear\", emptyFilterMessage: \"emptyFilterMessage\", emptyMessage: \"emptyMessage\", virtualScroll: \"virtualScroll\", itemSize: \"itemSize\", autoZIndex: \"autoZIndex\", baseZIndex: \"baseZIndex\", showTransitionOptions: \"showTransitionOptions\", hideTransitionOptions: \"hideTransitionOptions\", ariaFilterLabel: \"ariaFilterLabel\", ariaLabel: \"ariaLabel\", ariaLabelledBy: \"ariaLabelledBy\", filterMatchMode: \"filterMatchMode\", maxlength: \"maxlength\", tooltip: \"tooltip\", tooltipPosition: \"tooltipPosition\", tooltipPositionStyle: \"tooltipPositionStyle\", tooltipStyleClass: \"tooltipStyleClass\", autofocusFilter: \"autofocusFilter\", disabled: \"disabled\", options: \"options\", filterValue: \"filterValue\" }, outputs: { onChange: \"onChange\", onFilter: \"onFilter\", onFocus: \"onFocus\", onBlur: \"onBlur\", onClick: \"onClick\", onShow: \"onShow\", onHide: \"onHide\", onClear: \"onClear\" }, host: { properties: { \"class.p-inputwrapper-filled\": \"filled\", \"class.p-inputwrapper-focus\": \"focused || overlayVisible\" }, classAttribute: \"p-element p-inputwrapper\" }, providers: [DROPDOWN_VALUE_ACCESSOR], queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"containerViewChild\", first: true, predicate: [\"container\"], descendants: true }, { propertyName: \"filterViewChild\", first: true, predicate: [\"filter\"], descendants: true }, { propertyName: \"accessibleViewChild\", first: true, predicate: [\"in\"], descendants: true }, { propertyName: \"viewPort\", first: true, predicate: CdkVirtualScrollViewport, descendants: true }, { propertyName: \"editableInputViewChild\", first: true, predicate: [\"editableInput\"], descendants: true }], ngImport: i0, template: `\n
    \n
    \n \n
    \n \n {{label||'empty'}}\n \n \n {{placeholder||'empty'}}\n \n \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
      \n \n \n
    • \n {{getOptionGroupLabel(optgroup)||'empty'}}\n \n
    • \n \n
      \n
      \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    • \n \n {{emptyFilterMessageLabel}}\n \n \n
    • \n
    • \n \n {{emptyMessageLabel}}\n \n \n
    • \n
    \n
    \n \n
    \n
    \n `, isInline: true, styles: [\".p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;visibility:hidden}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-panel{position:absolute;top:0;left:0}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}\\n\"], components: [{ type: DropdownItem, selector: \"p-dropdownItem\", inputs: [\"option\", \"selected\", \"label\", \"disabled\", \"visible\", \"itemSize\", \"template\"], outputs: [\"onClick\"] }, { type: i4.CdkVirtualScrollViewport, selector: \"cdk-virtual-scroll-viewport\", inputs: [\"orientation\", \"appendOnly\"], outputs: [\"scrolledIndexChange\"] }], directives: [{ type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i5.Tooltip, selector: \"[pTooltip]\", inputs: [\"tooltipPosition\", \"tooltipEvent\", \"appendTo\", \"positionStyle\", \"tooltipStyleClass\", \"tooltipZIndex\", \"escape\", \"showDelay\", \"hideDelay\", \"life\", \"positionTop\", \"positionLeft\", \"pTooltip\", \"tooltipDisabled\", \"tooltipOptions\"] }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i2.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i4.CdkFixedSizeVirtualScroll, selector: \"cdk-virtual-scroll-viewport[itemSize]\", inputs: [\"itemSize\", \"minBufferPx\", \"maxBufferPx\"] }, { type: i4.CdkVirtualForOf, selector: \"[cdkVirtualFor][cdkVirtualForOf]\", inputs: [\"cdkVirtualForOf\", \"cdkVirtualForTrackBy\", \"cdkVirtualForTemplate\", \"cdkVirtualForTemplateCacheSize\"] }], animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition(':leave', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ])\n ])\n ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Dropdown, decorators: [{\n type: Component,\n args: [{ selector: 'p-dropdown', template: `\n
    \n
    \n \n
    \n \n {{label||'empty'}}\n \n \n {{placeholder||'empty'}}\n \n \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
      \n \n \n
    • \n {{getOptionGroupLabel(optgroup)||'empty'}}\n \n
    • \n \n
      \n
      \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    • \n \n {{emptyFilterMessageLabel}}\n \n \n
    • \n
    • \n \n {{emptyMessageLabel}}\n \n \n
    • \n
    \n
    \n \n
    \n
    \n `, animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition(':leave', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ])\n ])\n ], host: {\n 'class': 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focused || overlayVisible'\n }, providers: [DROPDOWN_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [\".p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;visibility:hidden}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-panel{position:absolute;top:0;left:0}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i3.FilterService }, { type: i3.PrimeNGConfig }, { type: i3.OverlayService }]; }, propDecorators: { scrollHeight: [{\n type: Input\n }], filter: [{\n type: Input\n }], name: [{\n type: Input\n }], style: [{\n type: Input\n }], panelStyle: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], panelStyleClass: [{\n type: Input\n }], readonly: [{\n type: Input\n }], required: [{\n type: Input\n }], editable: [{\n type: Input\n }], appendTo: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], filterPlaceholder: [{\n type: Input\n }], filterLocale: [{\n type: Input\n }], inputId: [{\n type: Input\n }], selectId: [{\n type: Input\n }], dataKey: [{\n type: Input\n }], filterBy: [{\n type: Input\n }], autofocus: [{\n type: Input\n }], resetFilterOnHide: [{\n type: Input\n }], dropdownIcon: [{\n type: Input\n }], optionLabel: [{\n type: Input\n }], optionValue: [{\n type: Input\n }], optionDisabled: [{\n type: Input\n }], optionGroupLabel: [{\n type: Input\n }], optionGroupChildren: [{\n type: Input\n }], autoDisplayFirst: [{\n type: Input\n }], group: [{\n type: Input\n }], showClear: [{\n type: Input\n }], emptyFilterMessage: [{\n type: Input\n }], emptyMessage: [{\n type: Input\n }], virtualScroll: [{\n type: Input\n }], itemSize: [{\n type: Input\n }], autoZIndex: [{\n type: Input\n }], baseZIndex: [{\n type: Input\n }], showTransitionOptions: [{\n type: Input\n }], hideTransitionOptions: [{\n type: Input\n }], ariaFilterLabel: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], filterMatchMode: [{\n type: Input\n }], maxlength: [{\n type: Input\n }], tooltip: [{\n type: Input\n }], tooltipPosition: [{\n type: Input\n }], tooltipPositionStyle: [{\n type: Input\n }], tooltipStyleClass: [{\n type: Input\n }], autofocusFilter: [{\n type: Input\n }], onChange: [{\n type: Output\n }], onFilter: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], onClick: [{\n type: Output\n }], onShow: [{\n type: Output\n }], onHide: [{\n type: Output\n }], onClear: [{\n type: Output\n }], containerViewChild: [{\n type: ViewChild,\n args: ['container']\n }], filterViewChild: [{\n type: ViewChild,\n args: ['filter']\n }], accessibleViewChild: [{\n type: ViewChild,\n args: ['in']\n }], viewPort: [{\n type: ViewChild,\n args: [CdkVirtualScrollViewport]\n }], editableInputViewChild: [{\n type: ViewChild,\n args: ['editableInput']\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], disabled: [{\n type: Input\n }], options: [{\n type: Input\n }], filterValue: [{\n type: Input\n }] } });\nclass DropdownModule {\n}\nDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: DropdownModule, declarations: [Dropdown, DropdownItem], imports: [CommonModule, SharedModule, ScrollingModule, TooltipModule, RippleModule], exports: [Dropdown, SharedModule, ScrollingModule] });\nDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: DropdownModule, imports: [[CommonModule, SharedModule, ScrollingModule, TooltipModule, RippleModule], SharedModule, ScrollingModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: DropdownModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, SharedModule, ScrollingModule, TooltipModule, RippleModule],\n exports: [Dropdown, SharedModule, ScrollingModule],\n declarations: [Dropdown, DropdownItem]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { DROPDOWN_VALUE_ACCESSOR, Dropdown, DropdownItem, DropdownModule };\n","import * as i0 from '@angular/core';\nimport { Directive, Optional, HostListener, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport * as i1 from '@angular/forms';\n\nclass InputText {\n constructor(el, ngModel, cd) {\n this.el = el;\n this.ngModel = ngModel;\n this.cd = cd;\n }\n ngAfterViewInit() {\n this.updateFilledState();\n this.cd.detectChanges();\n }\n ngDoCheck() {\n this.updateFilledState();\n }\n onInput(e) {\n this.updateFilledState();\n }\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) ||\n (this.ngModel && this.ngModel.model);\n }\n}\nInputText.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputText, deps: [{ token: i0.ElementRef }, { token: i1.NgModel, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });\nInputText.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: InputText, selector: \"[pInputText]\", host: { listeners: { \"input\": \"onInput($event)\" }, properties: { \"class.p-filled\": \"filled\" }, classAttribute: \"p-inputtext p-component p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputText, decorators: [{\n type: Directive,\n args: [{\n selector: '[pInputText]',\n host: {\n 'class': 'p-inputtext p-component p-element',\n '[class.p-filled]': 'filled'\n }\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: i1.NgModel, decorators: [{\n type: Optional\n }] }, { type: i0.ChangeDetectorRef }];\n }, propDecorators: { onInput: [{\n type: HostListener,\n args: ['input', ['$event']]\n }] } });\nclass InputTextModule {\n}\nInputTextModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputTextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nInputTextModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputTextModule, declarations: [InputText], imports: [CommonModule], exports: [InputText] });\nInputTextModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputTextModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputTextModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [InputText],\n declarations: [InputText]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { InputText, InputTextModule };\n","import * as i0 from '@angular/core';\nimport { Directive, Input, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, ContentChildren, Output, NgModule } from '@angular/core';\nimport { DomHandler } from 'primeng/dom';\nimport * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i1 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport { PrimeTemplate } from 'primeng/api';\n\nclass ButtonDirective {\n constructor(el) {\n this.el = el;\n this.iconPos = 'left';\n this.loadingIcon = \"pi pi-spinner pi-spin\";\n this._loading = false;\n }\n ngAfterViewInit() {\n this._initialStyleClass = this.el.nativeElement.className;\n DomHandler.addMultipleClasses(this.el.nativeElement, this.getStyleClass());\n if (this.icon || this.loading) {\n this.createIconEl();\n }\n let labelElement = document.createElement(\"span\");\n if (this.icon && !this.label) {\n labelElement.setAttribute('aria-hidden', 'true');\n }\n labelElement.className = 'p-button-label';\n if (this.label)\n labelElement.appendChild(document.createTextNode(this.label));\n else\n labelElement.innerHTML = ' ';\n this.el.nativeElement.appendChild(labelElement);\n this.initialized = true;\n }\n getStyleClass() {\n let styleClass = 'p-button p-component';\n if (this.icon && !this.label) {\n styleClass = styleClass + ' p-button-icon-only';\n }\n if (this.loading) {\n styleClass = styleClass + ' p-disabled p-button-loading';\n if (!this.icon && this.label)\n styleClass = styleClass + ' p-button-loading-label-only';\n }\n return styleClass;\n }\n setStyleClass() {\n let styleClass = this.getStyleClass();\n this.el.nativeElement.className = styleClass + ' ' + this._initialStyleClass;\n }\n createIconEl() {\n let iconElement = document.createElement(\"span\");\n iconElement.className = 'p-button-icon';\n iconElement.setAttribute(\"aria-hidden\", \"true\");\n let iconPosClass = this.label ? 'p-button-icon-' + this.iconPos : null;\n if (iconPosClass) {\n DomHandler.addClass(iconElement, iconPosClass);\n }\n let iconClass = this.getIconClass();\n if (iconClass) {\n DomHandler.addMultipleClasses(iconElement, iconClass);\n }\n let labelEl = DomHandler.findSingle(this.el.nativeElement, '.p-button-label');\n if (labelEl)\n this.el.nativeElement.insertBefore(iconElement, labelEl);\n else\n this.el.nativeElement.appendChild(iconElement);\n }\n getIconClass() {\n return this.loading ? 'p-button-loading-icon ' + this.loadingIcon : this._icon;\n }\n setIconClass() {\n let iconElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-icon');\n if (iconElement) {\n if (this.iconPos)\n iconElement.className = 'p-button-icon p-button-icon-' + this.iconPos + ' ' + this.getIconClass();\n else\n iconElement.className = 'p-button-icon ' + this.getIconClass();\n }\n else {\n this.createIconEl();\n }\n }\n removeIconElement() {\n let iconElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-icon');\n this.el.nativeElement.removeChild(iconElement);\n }\n get label() {\n return this._label;\n }\n set label(val) {\n this._label = val;\n if (this.initialized) {\n DomHandler.findSingle(this.el.nativeElement, '.p-button-label').textContent = this._label || ' ';\n if (this.loading || this.icon) {\n this.setIconClass();\n }\n this.setStyleClass();\n }\n }\n get icon() {\n return this._icon;\n }\n set icon(val) {\n this._icon = val;\n if (this.initialized) {\n this.setIconClass();\n this.setStyleClass();\n }\n }\n get loading() {\n return this._loading;\n }\n set loading(val) {\n this._loading = val;\n if (this.initialized) {\n if (this.loading || this.icon)\n this.setIconClass();\n else\n this.removeIconElement();\n this.setStyleClass();\n }\n }\n ngOnDestroy() {\n this.initialized = false;\n }\n}\nButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ButtonDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ButtonDirective, selector: \"[pButton]\", inputs: { iconPos: \"iconPos\", loadingIcon: \"loadingIcon\", label: \"label\", icon: \"icon\", loading: \"loading\" }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ButtonDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[pButton]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { iconPos: [{\n type: Input\n }], loadingIcon: [{\n type: Input\n }], label: [{\n type: Input\n }], icon: [{\n type: Input\n }], loading: [{\n type: Input\n }] } });\nclass Button {\n constructor() {\n this.type = \"button\";\n this.iconPos = 'left';\n this.loading = false;\n this.loadingIcon = \"pi pi-spinner pi-spin\";\n this.onClick = new EventEmitter();\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n badgeStyleClass() {\n return {\n 'p-badge p-component': true,\n 'p-badge-no-gutter': this.badge && String(this.badge).length === 1\n };\n }\n}\nButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Button, deps: [], target: i0.ɵɵFactoryTarget.Component });\nButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Button, selector: \"p-button\", inputs: { type: \"type\", iconPos: \"iconPos\", icon: \"icon\", badge: \"badge\", label: \"label\", disabled: \"disabled\", loading: \"loading\", loadingIcon: \"loadingIcon\", style: \"style\", styleClass: \"styleClass\", badgeClass: \"badgeClass\", ariaLabel: \"ariaLabel\" }, outputs: { onClick: \"onClick\", onFocus: \"onFocus\", onBlur: \"onBlur\" }, host: { classAttribute: \"p-element\" }, queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], ngImport: i0, template: `\n \n `, isInline: true, directives: [{ type: i1.Ripple, selector: \"[pRipple]\" }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Button, decorators: [{\n type: Component,\n args: [{\n selector: 'p-button',\n template: `\n \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], propDecorators: { type: [{\n type: Input\n }], iconPos: [{\n type: Input\n }], icon: [{\n type: Input\n }], badge: [{\n type: Input\n }], label: [{\n type: Input\n }], disabled: [{\n type: Input\n }], loading: [{\n type: Input\n }], loadingIcon: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], badgeClass: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], onClick: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }] } });\nclass ButtonModule {\n}\nButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ButtonModule, declarations: [ButtonDirective, Button], imports: [CommonModule, RippleModule], exports: [ButtonDirective, Button] });\nButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ButtonModule, imports: [[CommonModule, RippleModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ButtonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, RippleModule],\n exports: [ButtonDirective, Button],\n declarations: [ButtonDirective, Button]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Button, ButtonDirective, ButtonModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, ViewChild, Output, NgModule } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i2 from 'primeng/inputtext';\nimport { InputTextModule } from 'primeng/inputtext';\nimport * as i3 from 'primeng/button';\nimport { ButtonModule } from 'primeng/button';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nconst INPUTNUMBER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputNumber),\n multi: true\n};\nclass InputNumber {\n constructor(el, cd) {\n this.el = el;\n this.cd = cd;\n this.showButtons = false;\n this.format = true;\n this.buttonLayout = \"stacked\";\n this.incrementButtonIcon = 'pi pi-angle-up';\n this.decrementButtonIcon = 'pi pi-angle-down';\n this.readonly = false;\n this.step = 1;\n this.allowEmpty = true;\n this.mode = \"decimal\";\n this.useGrouping = true;\n this.showClear = false;\n this.onInput = new EventEmitter();\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n this.onKeyDown = new EventEmitter();\n this.onClear = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n this.groupChar = '';\n this.prefixChar = '';\n this.suffixChar = '';\n }\n get disabled() {\n return this._disabled;\n }\n set disabled(disabled) {\n if (disabled)\n this.focused = false;\n this._disabled = disabled;\n if (this.timer)\n this.clearTimer();\n }\n ngOnChanges(simpleChange) {\n const props = ['locale', 'localeMatcher', 'mode', 'currency', 'currencyDisplay', 'useGrouping', 'minFractionDigits', 'maxFractionDigits', 'prefix', 'suffix'];\n if (props.some(p => !!simpleChange[p])) {\n this.updateConstructParser();\n }\n }\n ngOnInit() {\n this.constructParser();\n this.initialized = true;\n }\n getOptions() {\n return {\n localeMatcher: this.localeMatcher,\n style: this.mode,\n currency: this.currency,\n currencyDisplay: this.currencyDisplay,\n useGrouping: this.useGrouping,\n minimumFractionDigits: this.minFractionDigits,\n maximumFractionDigits: this.maxFractionDigits\n };\n }\n constructParser() {\n this.numberFormat = new Intl.NumberFormat(this.locale, this.getOptions());\n const numerals = [...new Intl.NumberFormat(this.locale, { useGrouping: false }).format(9876543210)].reverse();\n const index = new Map(numerals.map((d, i) => [d, i]));\n this._numeral = new RegExp(`[${numerals.join('')}]`, 'g');\n this._group = this.getGroupingExpression();\n this._minusSign = this.getMinusSignExpression();\n this._currency = this.getCurrencyExpression();\n this._decimal = this.getDecimalExpression();\n this._suffix = this.getSuffixExpression();\n this._prefix = this.getPrefixExpression();\n this._index = d => index.get(d);\n }\n updateConstructParser() {\n if (this.initialized) {\n this.constructParser();\n }\n }\n escapeRegExp(text) {\n return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n }\n getDecimalExpression() {\n const formatter = new Intl.NumberFormat(this.locale, Object.assign(Object.assign({}, this.getOptions()), { useGrouping: false }));\n return new RegExp(`[${formatter.format(1.1).replace(this._currency, '').trim().replace(this._numeral, '')}]`, 'g');\n }\n getGroupingExpression() {\n const formatter = new Intl.NumberFormat(this.locale, { useGrouping: true });\n this.groupChar = formatter.format(1000000).trim().replace(this._numeral, '').charAt(0);\n return new RegExp(`[${this.groupChar}]`, 'g');\n }\n getMinusSignExpression() {\n const formatter = new Intl.NumberFormat(this.locale, { useGrouping: false });\n return new RegExp(`[${formatter.format(-1).trim().replace(this._numeral, '')}]`, 'g');\n }\n getCurrencyExpression() {\n if (this.currency) {\n const formatter = new Intl.NumberFormat(this.locale, { style: 'currency', currency: this.currency, currencyDisplay: this.currencyDisplay,\n minimumFractionDigits: 0, maximumFractionDigits: 0 });\n return new RegExp(`[${formatter.format(1).replace(/\\s/g, '').replace(this._numeral, '').replace(this._group, '')}]`, 'g');\n }\n return new RegExp(`[]`, 'g');\n }\n getPrefixExpression() {\n if (this.prefix) {\n this.prefixChar = this.prefix;\n }\n else {\n const formatter = new Intl.NumberFormat(this.locale, { style: this.mode, currency: this.currency, currencyDisplay: this.currencyDisplay });\n this.prefixChar = formatter.format(1).split('1')[0];\n }\n return new RegExp(`${this.escapeRegExp(this.prefixChar || '')}`, 'g');\n }\n getSuffixExpression() {\n if (this.suffix) {\n this.suffixChar = this.suffix;\n }\n else {\n const formatter = new Intl.NumberFormat(this.locale, { style: this.mode, currency: this.currency, currencyDisplay: this.currencyDisplay,\n minimumFractionDigits: 0, maximumFractionDigits: 0 });\n this.suffixChar = formatter.format(1).split('1')[1];\n }\n return new RegExp(`${this.escapeRegExp(this.suffixChar || '')}`, 'g');\n }\n formatValue(value) {\n if (value != null) {\n if (value === '-') { // Minus sign\n return value;\n }\n if (this.format) {\n let formatter = new Intl.NumberFormat(this.locale, this.getOptions());\n let formattedValue = formatter.format(value);\n if (this.prefix) {\n formattedValue = this.prefix + formattedValue;\n }\n if (this.suffix) {\n formattedValue = formattedValue + this.suffix;\n }\n return formattedValue;\n }\n return value.toString();\n }\n return '';\n }\n parseValue(text) {\n let filteredText = text\n .replace(this._suffix, '')\n .replace(this._prefix, '')\n .trim()\n .replace(/\\s/g, '')\n .replace(this._currency, '')\n .replace(this._group, '')\n .replace(this._minusSign, '-')\n .replace(this._decimal, '.')\n .replace(this._numeral, this._index);\n if (filteredText) {\n if (filteredText === '-') // Minus sign\n return filteredText;\n let parsedValue = +filteredText;\n return isNaN(parsedValue) ? null : parsedValue;\n }\n return null;\n }\n repeat(event, interval, dir) {\n if (this.readonly) {\n return;\n }\n let i = interval || 500;\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(event, 40, dir);\n }, i);\n this.spin(event, dir);\n }\n spin(event, dir) {\n let step = this.step * dir;\n let currentValue = this.parseValue(this.input.nativeElement.value) || 0;\n let newValue = this.validateValue(currentValue + step);\n if (this.maxlength && this.maxlength < this.formatValue(newValue).length) {\n return;\n }\n this.updateInput(newValue, null, 'spin', null);\n this.updateModel(event, newValue);\n this.handleOnInput(event, currentValue, newValue);\n }\n clear() {\n this.value = null;\n this.onModelChange(this.value);\n this.onClear.emit();\n }\n onUpButtonMouseDown(event) {\n this.input.nativeElement.focus();\n this.repeat(event, null, 1);\n event.preventDefault();\n }\n onUpButtonMouseUp() {\n this.clearTimer();\n }\n onUpButtonMouseLeave() {\n this.clearTimer();\n }\n onUpButtonKeyDown(event) {\n if (event.keyCode === 32 || event.keyCode === 13) {\n this.repeat(event, null, 1);\n }\n }\n onUpButtonKeyUp() {\n this.clearTimer();\n }\n onDownButtonMouseDown(event) {\n this.input.nativeElement.focus();\n this.repeat(event, null, -1);\n event.preventDefault();\n }\n onDownButtonMouseUp() {\n this.clearTimer();\n }\n onDownButtonMouseLeave() {\n this.clearTimer();\n }\n onDownButtonKeyUp() {\n this.clearTimer();\n }\n onDownButtonKeyDown(event) {\n if (event.keyCode === 32 || event.keyCode === 13) {\n this.repeat(event, null, -1);\n }\n }\n onUserInput(event) {\n if (this.readonly) {\n return;\n }\n if (this.isSpecialChar) {\n event.target.value = this.lastValue;\n }\n this.isSpecialChar = false;\n }\n onInputKeyDown(event) {\n if (this.readonly) {\n return;\n }\n this.lastValue = event.target.value;\n if (event.shiftKey || event.altKey) {\n this.isSpecialChar = true;\n return;\n }\n let selectionStart = event.target.selectionStart;\n let selectionEnd = event.target.selectionEnd;\n let inputValue = event.target.value;\n let newValueStr = null;\n if (event.altKey) {\n event.preventDefault();\n }\n switch (event.which) {\n //up\n case 38:\n this.spin(event, 1);\n event.preventDefault();\n break;\n //down\n case 40:\n this.spin(event, -1);\n event.preventDefault();\n break;\n //left\n case 37:\n if (!this.isNumeralChar(inputValue.charAt(selectionStart - 1))) {\n event.preventDefault();\n }\n break;\n //right\n case 39:\n if (!this.isNumeralChar(inputValue.charAt(selectionStart))) {\n event.preventDefault();\n }\n break;\n //enter\n case 13:\n newValueStr = this.validateValue(this.parseValue(this.input.nativeElement.value));\n this.input.nativeElement.value = this.formatValue(newValueStr);\n this.input.nativeElement.setAttribute('aria-valuenow', newValueStr);\n this.updateModel(event, newValueStr);\n break;\n //backspace\n case 8: {\n event.preventDefault();\n if (selectionStart === selectionEnd) {\n const deleteChar = inputValue.charAt(selectionStart - 1);\n const { decimalCharIndex, decimalCharIndexWithoutPrefix } = this.getDecimalCharIndexes(inputValue);\n if (this.isNumeralChar(deleteChar)) {\n const decimalLength = this.getDecimalLength(inputValue);\n if (this._group.test(deleteChar)) {\n this._group.lastIndex = 0;\n newValueStr = inputValue.slice(0, selectionStart - 2) + inputValue.slice(selectionStart - 1);\n }\n else if (this._decimal.test(deleteChar)) {\n this._decimal.lastIndex = 0;\n if (decimalLength) {\n this.input.nativeElement.setSelectionRange(selectionStart - 1, selectionStart - 1);\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart - 1) + inputValue.slice(selectionStart);\n }\n }\n else if (decimalCharIndex > 0 && selectionStart > decimalCharIndex) {\n const insertedText = this.isDecimalMode() && (this.minFractionDigits || 0) < decimalLength ? '' : '0';\n newValueStr = inputValue.slice(0, selectionStart - 1) + insertedText + inputValue.slice(selectionStart);\n }\n else if (decimalCharIndexWithoutPrefix === 1) {\n newValueStr = inputValue.slice(0, selectionStart - 1) + '0' + inputValue.slice(selectionStart);\n newValueStr = this.parseValue(newValueStr) > 0 ? newValueStr : '';\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart - 1) + inputValue.slice(selectionStart);\n }\n }\n this.updateValue(event, newValueStr, null, 'delete-single');\n }\n else {\n newValueStr = this.deleteRange(inputValue, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, null, 'delete-range');\n }\n break;\n }\n // del\n case 46:\n event.preventDefault();\n if (selectionStart === selectionEnd) {\n const deleteChar = inputValue.charAt(selectionStart);\n const { decimalCharIndex, decimalCharIndexWithoutPrefix } = this.getDecimalCharIndexes(inputValue);\n if (this.isNumeralChar(deleteChar)) {\n const decimalLength = this.getDecimalLength(inputValue);\n if (this._group.test(deleteChar)) {\n this._group.lastIndex = 0;\n newValueStr = inputValue.slice(0, selectionStart) + inputValue.slice(selectionStart + 2);\n }\n else if (this._decimal.test(deleteChar)) {\n this._decimal.lastIndex = 0;\n if (decimalLength) {\n this.input.nativeElement.setSelectionRange(selectionStart + 1, selectionStart + 1);\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart) + inputValue.slice(selectionStart + 1);\n }\n }\n else if (decimalCharIndex > 0 && selectionStart > decimalCharIndex) {\n const insertedText = this.isDecimalMode() && (this.minFractionDigits || 0) < decimalLength ? '' : '0';\n newValueStr = inputValue.slice(0, selectionStart) + insertedText + inputValue.slice(selectionStart + 1);\n }\n else if (decimalCharIndexWithoutPrefix === 1) {\n newValueStr = inputValue.slice(0, selectionStart) + '0' + inputValue.slice(selectionStart + 1);\n newValueStr = this.parseValue(newValueStr) > 0 ? newValueStr : '';\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart) + inputValue.slice(selectionStart + 1);\n }\n }\n this.updateValue(event, newValueStr, null, 'delete-back-single');\n }\n else {\n newValueStr = this.deleteRange(inputValue, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, null, 'delete-range');\n }\n break;\n default:\n break;\n }\n this.onKeyDown.emit(event);\n }\n onInputKeyPress(event) {\n if (this.readonly) {\n return;\n }\n event.preventDefault();\n let code = event.which || event.keyCode;\n let char = String.fromCharCode(code);\n const isDecimalSign = this.isDecimalSign(char);\n const isMinusSign = this.isMinusSign(char);\n if ((48 <= code && code <= 57) || isMinusSign || isDecimalSign) {\n this.insert(event, char, { isDecimalSign, isMinusSign });\n }\n }\n onPaste(event) {\n if (!this.disabled && !this.readonly) {\n event.preventDefault();\n let data = (event.clipboardData || window['clipboardData']).getData('Text');\n if (data) {\n let filteredData = this.parseValue(data);\n if (filteredData != null) {\n this.insert(event, filteredData.toString());\n }\n }\n }\n }\n allowMinusSign() {\n return this.min == null || this.min < 0;\n }\n isMinusSign(char) {\n if (this._minusSign.test(char) || char === '-') {\n this._minusSign.lastIndex = 0;\n return true;\n }\n return false;\n }\n isDecimalSign(char) {\n if (this._decimal.test(char)) {\n this._decimal.lastIndex = 0;\n return true;\n }\n return false;\n }\n isDecimalMode() {\n return this.mode === 'decimal';\n }\n getDecimalCharIndexes(val) {\n let decimalCharIndex = val.search(this._decimal);\n this._decimal.lastIndex = 0;\n const filteredVal = val.replace(this._prefix, '').trim().replace(/\\s/g, '').replace(this._currency, '');\n const decimalCharIndexWithoutPrefix = filteredVal.search(this._decimal);\n this._decimal.lastIndex = 0;\n return { decimalCharIndex, decimalCharIndexWithoutPrefix };\n }\n getCharIndexes(val) {\n const decimalCharIndex = val.search(this._decimal);\n this._decimal.lastIndex = 0;\n const minusCharIndex = val.search(this._minusSign);\n this._minusSign.lastIndex = 0;\n const suffixCharIndex = val.search(this._suffix);\n this._suffix.lastIndex = 0;\n const currencyCharIndex = val.search(this._currency);\n this._currency.lastIndex = 0;\n return { decimalCharIndex, minusCharIndex, suffixCharIndex, currencyCharIndex };\n }\n insert(event, text, sign = { isDecimalSign: false, isMinusSign: false }) {\n const minusCharIndexOnText = text.search(this._minusSign);\n this._minusSign.lastIndex = 0;\n if (!this.allowMinusSign() && minusCharIndexOnText !== -1) {\n return;\n }\n let selectionStart = this.input.nativeElement.selectionStart;\n let selectionEnd = this.input.nativeElement.selectionEnd;\n let inputValue = this.input.nativeElement.value.trim();\n const { decimalCharIndex, minusCharIndex, suffixCharIndex, currencyCharIndex } = this.getCharIndexes(inputValue);\n let newValueStr;\n if (sign.isMinusSign) {\n if (selectionStart === 0) {\n newValueStr = inputValue;\n if (minusCharIndex === -1 || selectionEnd !== 0) {\n newValueStr = this.insertText(inputValue, text, 0, selectionEnd);\n }\n this.updateValue(event, newValueStr, text, 'insert');\n }\n }\n else if (sign.isDecimalSign) {\n if (decimalCharIndex > 0 && selectionStart === decimalCharIndex) {\n this.updateValue(event, inputValue, text, 'insert');\n }\n else if (decimalCharIndex > selectionStart && decimalCharIndex < selectionEnd) {\n newValueStr = this.insertText(inputValue, text, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, text, 'insert');\n }\n else if (decimalCharIndex === -1 && this.maxFractionDigits) {\n newValueStr = this.insertText(inputValue, text, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, text, 'insert');\n }\n }\n else {\n const maxFractionDigits = this.numberFormat.resolvedOptions().maximumFractionDigits;\n const operation = selectionStart !== selectionEnd ? 'range-insert' : 'insert';\n if (decimalCharIndex > 0 && selectionStart > decimalCharIndex) {\n if ((selectionStart + text.length - (decimalCharIndex + 1)) <= maxFractionDigits) {\n const charIndex = currencyCharIndex >= selectionStart ? currencyCharIndex - 1 : (suffixCharIndex >= selectionStart ? suffixCharIndex : inputValue.length);\n newValueStr = inputValue.slice(0, selectionStart) + text + inputValue.slice(selectionStart + text.length, charIndex) + inputValue.slice(charIndex);\n this.updateValue(event, newValueStr, text, operation);\n }\n }\n else {\n newValueStr = this.insertText(inputValue, text, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, text, operation);\n }\n }\n }\n insertText(value, text, start, end) {\n let textSplit = text === '.' ? text : text.split('.');\n if (textSplit.length === 2) {\n const decimalCharIndex = value.slice(start, end).search(this._decimal);\n this._decimal.lastIndex = 0;\n return (decimalCharIndex > 0) ? value.slice(0, start) + this.formatValue(text) + value.slice(end) : (value || this.formatValue(text));\n }\n else if ((end - start) === value.length) {\n return this.formatValue(text);\n }\n else if (start === 0) {\n return text + value.slice(end);\n }\n else if (end === value.length) {\n return value.slice(0, start) + text;\n }\n else {\n return value.slice(0, start) + text + value.slice(end);\n }\n }\n deleteRange(value, start, end) {\n let newValueStr;\n if ((end - start) === value.length)\n newValueStr = '';\n else if (start === 0)\n newValueStr = value.slice(end);\n else if (end === value.length)\n newValueStr = value.slice(0, start);\n else\n newValueStr = value.slice(0, start) + value.slice(end);\n return newValueStr;\n }\n initCursor() {\n let selectionStart = this.input.nativeElement.selectionStart;\n let inputValue = this.input.nativeElement.value;\n let valueLength = inputValue.length;\n let index = null;\n // remove prefix\n let prefixLength = (this.prefixChar || '').length;\n inputValue = inputValue.replace(this._prefix, '');\n selectionStart = selectionStart - prefixLength;\n let char = inputValue.charAt(selectionStart);\n if (this.isNumeralChar(char)) {\n return selectionStart + prefixLength;\n }\n //left\n let i = selectionStart - 1;\n while (i >= 0) {\n char = inputValue.charAt(i);\n if (this.isNumeralChar(char)) {\n index = i + prefixLength;\n break;\n }\n else {\n i--;\n }\n }\n if (index !== null) {\n this.input.nativeElement.setSelectionRange(index + 1, index + 1);\n }\n else {\n i = selectionStart;\n while (i < valueLength) {\n char = inputValue.charAt(i);\n if (this.isNumeralChar(char)) {\n index = i + prefixLength;\n break;\n }\n else {\n i++;\n }\n }\n if (index !== null) {\n this.input.nativeElement.setSelectionRange(index, index);\n }\n }\n return index || 0;\n }\n onInputClick() {\n if (!this.readonly) {\n this.initCursor();\n }\n }\n isNumeralChar(char) {\n if (char.length === 1 && (this._numeral.test(char) || this._decimal.test(char) || this._group.test(char) || this._minusSign.test(char))) {\n this.resetRegex();\n return true;\n }\n return false;\n }\n resetRegex() {\n this._numeral.lastIndex = 0;\n this._decimal.lastIndex = 0;\n this._group.lastIndex = 0;\n this._minusSign.lastIndex = 0;\n }\n updateValue(event, valueStr, insertedValueStr, operation) {\n let currentValue = this.input.nativeElement.value;\n let newValue = null;\n if (valueStr != null) {\n newValue = this.parseValue(valueStr);\n newValue = !newValue && !this.allowEmpty ? 0 : newValue;\n this.updateInput(newValue, insertedValueStr, operation, valueStr);\n this.handleOnInput(event, currentValue, newValue);\n }\n }\n handleOnInput(event, currentValue, newValue) {\n if (this.isValueChanged(currentValue, newValue)) {\n this.onInput.emit({ originalEvent: event, value: newValue });\n }\n }\n isValueChanged(currentValue, newValue) {\n if (newValue === null && currentValue !== null) {\n return true;\n }\n if (newValue != null) {\n let parsedCurrentValue = (typeof currentValue === 'string') ? this.parseValue(currentValue) : currentValue;\n return newValue !== parsedCurrentValue;\n }\n return false;\n }\n validateValue(value) {\n if (value === '-' || value == null) {\n return null;\n }\n if (this.min != null && value < this.min) {\n return this.min;\n }\n if (this.max != null && value > this.max) {\n return this.max;\n }\n return value;\n }\n updateInput(value, insertedValueStr, operation, valueStr) {\n insertedValueStr = insertedValueStr || '';\n let inputValue = this.input.nativeElement.value;\n let newValue = this.formatValue(value);\n let currentLength = inputValue.length;\n if (newValue !== valueStr) {\n newValue = this.concatValues(newValue, valueStr);\n }\n if (currentLength === 0) {\n this.input.nativeElement.value = newValue;\n this.input.nativeElement.setSelectionRange(0, 0);\n const index = this.initCursor();\n const selectionEnd = index + insertedValueStr.length;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else {\n let selectionStart = this.input.nativeElement.selectionStart;\n let selectionEnd = this.input.nativeElement.selectionEnd;\n if (this.maxlength && this.maxlength < newValue.length) {\n return;\n }\n this.input.nativeElement.value = newValue;\n let newLength = newValue.length;\n if (operation === 'range-insert') {\n const startValue = this.parseValue((inputValue || '').slice(0, selectionStart));\n const startValueStr = startValue !== null ? startValue.toString() : '';\n const startExpr = startValueStr.split('').join(`(${this.groupChar})?`);\n const sRegex = new RegExp(startExpr, 'g');\n sRegex.test(newValue);\n const tExpr = insertedValueStr.split('').join(`(${this.groupChar})?`);\n const tRegex = new RegExp(tExpr, 'g');\n tRegex.test(newValue.slice(sRegex.lastIndex));\n selectionEnd = sRegex.lastIndex + tRegex.lastIndex;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else if (newLength === currentLength) {\n if (operation === 'insert' || operation === 'delete-back-single')\n this.input.nativeElement.setSelectionRange(selectionEnd + 1, selectionEnd + 1);\n else if (operation === 'delete-single')\n this.input.nativeElement.setSelectionRange(selectionEnd - 1, selectionEnd - 1);\n else if (operation === 'delete-range' || operation === 'spin')\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else if (operation === 'delete-back-single') {\n let prevChar = inputValue.charAt(selectionEnd - 1);\n let nextChar = inputValue.charAt(selectionEnd);\n let diff = currentLength - newLength;\n let isGroupChar = this._group.test(nextChar);\n if (isGroupChar && diff === 1) {\n selectionEnd += 1;\n }\n else if (!isGroupChar && this.isNumeralChar(prevChar)) {\n selectionEnd += (-1 * diff) + 1;\n }\n this._group.lastIndex = 0;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else if (inputValue === '-' && operation === 'insert') {\n this.input.nativeElement.setSelectionRange(0, 0);\n const index = this.initCursor();\n const selectionEnd = index + insertedValueStr.length + 1;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else {\n selectionEnd = selectionEnd + (newLength - currentLength);\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n }\n this.input.nativeElement.setAttribute('aria-valuenow', value);\n }\n concatValues(val1, val2) {\n if (val1 && val2) {\n let decimalCharIndex = val2.search(this._decimal);\n this._decimal.lastIndex = 0;\n return decimalCharIndex !== -1 ? (val1.split(this._decimal)[0] + val2.slice(decimalCharIndex)) : val1;\n }\n return val1;\n }\n getDecimalLength(value) {\n if (value) {\n const valueSplit = value.split(this._decimal);\n if (valueSplit.length === 2) {\n return valueSplit[1].replace(this._suffix, '')\n .trim()\n .replace(/\\s/g, '')\n .replace(this._currency, '').length;\n }\n }\n return 0;\n }\n onInputFocus(event) {\n this.focused = true;\n this.onFocus.emit(event);\n }\n onInputBlur(event) {\n this.focused = false;\n let newValue = this.validateValue(this.parseValue(this.input.nativeElement.value));\n this.input.nativeElement.value = this.formatValue(newValue);\n this.input.nativeElement.setAttribute('aria-valuenow', newValue);\n this.updateModel(event, newValue);\n this.onBlur.emit(event);\n }\n formattedValue() {\n const val = !this.value && !this.allowEmpty ? 0 : this.value;\n return this.formatValue(val);\n }\n updateModel(event, value) {\n if (this.value !== value) {\n this.value = value;\n this.onModelChange(value);\n }\n this.onModelTouched();\n }\n writeValue(value) {\n this.value = value;\n this.cd.markForCheck();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n get filled() {\n return (this.value != null && this.value.toString().length > 0);\n }\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n }\n }\n getFormatter() {\n return this.numberFormat;\n }\n}\nInputNumber.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputNumber, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nInputNumber.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: InputNumber, selector: \"p-inputNumber\", inputs: { showButtons: \"showButtons\", format: \"format\", buttonLayout: \"buttonLayout\", inputId: \"inputId\", styleClass: \"styleClass\", style: \"style\", placeholder: \"placeholder\", size: \"size\", maxlength: \"maxlength\", tabindex: \"tabindex\", title: \"title\", ariaLabel: \"ariaLabel\", ariaRequired: \"ariaRequired\", name: \"name\", required: \"required\", autocomplete: \"autocomplete\", min: \"min\", max: \"max\", incrementButtonClass: \"incrementButtonClass\", decrementButtonClass: \"decrementButtonClass\", incrementButtonIcon: \"incrementButtonIcon\", decrementButtonIcon: \"decrementButtonIcon\", readonly: \"readonly\", step: \"step\", allowEmpty: \"allowEmpty\", locale: \"locale\", localeMatcher: \"localeMatcher\", mode: \"mode\", currency: \"currency\", currencyDisplay: \"currencyDisplay\", useGrouping: \"useGrouping\", minFractionDigits: \"minFractionDigits\", maxFractionDigits: \"maxFractionDigits\", prefix: \"prefix\", suffix: \"suffix\", inputStyle: \"inputStyle\", inputStyleClass: \"inputStyleClass\", showClear: \"showClear\", disabled: \"disabled\" }, outputs: { onInput: \"onInput\", onFocus: \"onFocus\", onBlur: \"onBlur\", onKeyDown: \"onKeyDown\", onClear: \"onClear\" }, host: { properties: { \"class.p-inputwrapper-filled\": \"filled\", \"class.p-inputwrapper-focus\": \"focused\", \"class.p-inputnumber-clearable\": \"showClear && buttonLayout != \\\"vertical\\\"\" }, classAttribute: \"p-element p-inputwrapper\" }, providers: [INPUTNUMBER_VALUE_ACCESSOR], viewQueries: [{ propertyName: \"input\", first: true, predicate: [\"input\"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `\n \n \n \n \n \n \n \n \n \n \n `, isInline: true, styles: [\"p-inputnumber,.p-inputnumber{display:inline-flex}.p-inputnumber-button{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label{display:none}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up{border-top-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-input{border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-button-group{display:flex;flex-direction:column}.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button{flex:1 1 auto}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{order:3;border-top-left-radius:0;border-bottom-left-radius:0}.p-inputnumber-buttons-horizontal .p-inputnumber-input{order:2;border-radius:0}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{order:1;border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-vertical{flex-direction:column}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up{order:1;border-bottom-left-radius:0;border-bottom-right-radius:0;width:100%}.p-inputnumber-buttons-vertical .p-inputnumber-input{order:2;border-radius:0;text-align:center}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down{order:3;border-top-left-radius:0;border-top-right-radius:0;width:100%}.p-inputnumber-input{flex:1 1 auto}.p-fluid p-inputnumber,.p-fluid .p-inputnumber{width:100%}.p-fluid .p-inputnumber .p-inputnumber-input{width:1%}.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input{width:100%}.p-inputnumber-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-inputnumber-clearable{position:relative}\\n\"], directives: [{ type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i1.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.InputText, selector: \"[pInputText]\" }, { type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i3.ButtonDirective, selector: \"[pButton]\", inputs: [\"iconPos\", \"loadingIcon\", \"label\", \"icon\", \"loading\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputNumber, decorators: [{\n type: Component,\n args: [{ selector: 'p-inputNumber', template: `\n \n \n \n \n \n \n \n \n \n \n `, changeDetection: ChangeDetectionStrategy.OnPush, providers: [INPUTNUMBER_VALUE_ACCESSOR], encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focused',\n '[class.p-inputnumber-clearable]': 'showClear && buttonLayout != \"vertical\"'\n }, styles: [\"p-inputnumber,.p-inputnumber{display:inline-flex}.p-inputnumber-button{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label{display:none}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up{border-top-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-input{border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-button-group{display:flex;flex-direction:column}.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button{flex:1 1 auto}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{order:3;border-top-left-radius:0;border-bottom-left-radius:0}.p-inputnumber-buttons-horizontal .p-inputnumber-input{order:2;border-radius:0}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{order:1;border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-vertical{flex-direction:column}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up{order:1;border-bottom-left-radius:0;border-bottom-right-radius:0;width:100%}.p-inputnumber-buttons-vertical .p-inputnumber-input{order:2;border-radius:0;text-align:center}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down{order:3;border-top-left-radius:0;border-top-right-radius:0;width:100%}.p-inputnumber-input{flex:1 1 auto}.p-fluid p-inputnumber,.p-fluid .p-inputnumber{width:100%}.p-fluid .p-inputnumber .p-inputnumber-input{width:1%}.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input{width:100%}.p-inputnumber-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-inputnumber-clearable{position:relative}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { showButtons: [{\n type: Input\n }], format: [{\n type: Input\n }], buttonLayout: [{\n type: Input\n }], inputId: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], style: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], size: [{\n type: Input\n }], maxlength: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], title: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], ariaRequired: [{\n type: Input\n }], name: [{\n type: Input\n }], required: [{\n type: Input\n }], autocomplete: [{\n type: Input\n }], min: [{\n type: Input\n }], max: [{\n type: Input\n }], incrementButtonClass: [{\n type: Input\n }], decrementButtonClass: [{\n type: Input\n }], incrementButtonIcon: [{\n type: Input\n }], decrementButtonIcon: [{\n type: Input\n }], readonly: [{\n type: Input\n }], step: [{\n type: Input\n }], allowEmpty: [{\n type: Input\n }], locale: [{\n type: Input\n }], localeMatcher: [{\n type: Input\n }], mode: [{\n type: Input\n }], currency: [{\n type: Input\n }], currencyDisplay: [{\n type: Input\n }], useGrouping: [{\n type: Input\n }], minFractionDigits: [{\n type: Input\n }], maxFractionDigits: [{\n type: Input\n }], prefix: [{\n type: Input\n }], suffix: [{\n type: Input\n }], inputStyle: [{\n type: Input\n }], inputStyleClass: [{\n type: Input\n }], showClear: [{\n type: Input\n }], input: [{\n type: ViewChild,\n args: ['input']\n }], onInput: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], onKeyDown: [{\n type: Output\n }], onClear: [{\n type: Output\n }], disabled: [{\n type: Input\n }] } });\nclass InputNumberModule {\n}\nInputNumberModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputNumberModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nInputNumberModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputNumberModule, declarations: [InputNumber], imports: [CommonModule, InputTextModule, ButtonModule], exports: [InputNumber] });\nInputNumberModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputNumberModule, imports: [[CommonModule, InputTextModule, ButtonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InputNumberModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, InputTextModule, ButtonModule],\n exports: [InputNumber],\n declarations: [InputNumber]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { INPUTNUMBER_VALUE_ACCESSOR, InputNumber, InputNumberModule };\n","import * as i0 from '@angular/core';\nimport { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, NgModule } from '@angular/core';\nimport * as i3 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i5 from '@angular/forms';\nimport { FormsModule } from '@angular/forms';\nimport * as i1 from 'primeng/dropdown';\nimport { DropdownModule } from 'primeng/dropdown';\nimport * as i4 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport * as i6 from 'primeng/api';\nimport { SharedModule } from 'primeng/api';\nimport * as i2 from 'primeng/inputnumber';\nimport { InputNumberModule } from 'primeng/inputnumber';\n\nclass Paginator {\n constructor(cd) {\n this.cd = cd;\n this.pageLinkSize = 5;\n this.onPageChange = new EventEmitter();\n this.alwaysShow = true;\n this.dropdownScrollHeight = '200px';\n this.currentPageReportTemplate = '{currentPage} of {totalPages}';\n this.showFirstLastIcon = true;\n this.totalRecords = 0;\n this.rows = 0;\n this.showPageLinks = true;\n this._first = 0;\n this._page = 0;\n }\n ngOnInit() {\n this.updatePaginatorState();\n }\n ngOnChanges(simpleChange) {\n if (simpleChange.totalRecords) {\n this.updatePageLinks();\n this.updatePaginatorState();\n this.updateFirst();\n this.updateRowsPerPageOptions();\n }\n if (simpleChange.first) {\n this._first = simpleChange.first.currentValue;\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n if (simpleChange.rows) {\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n if (simpleChange.rowsPerPageOptions) {\n this.updateRowsPerPageOptions();\n }\n }\n get first() {\n return this._first;\n }\n set first(val) {\n this._first = val;\n }\n updateRowsPerPageOptions() {\n if (this.rowsPerPageOptions) {\n this.rowsPerPageItems = [];\n for (let opt of this.rowsPerPageOptions) {\n if (typeof opt == 'object' && opt['showAll']) {\n this.rowsPerPageItems.unshift({ label: opt['showAll'], value: this.totalRecords });\n }\n else {\n this.rowsPerPageItems.push({ label: String(opt), value: opt });\n }\n }\n }\n }\n isFirstPage() {\n return this.getPage() === 0;\n }\n isLastPage() {\n return this.getPage() === this.getPageCount() - 1;\n }\n getPageCount() {\n return Math.ceil(this.totalRecords / this.rows);\n }\n calculatePageLinkBoundaries() {\n let numberOfPages = this.getPageCount(), visiblePages = Math.min(this.pageLinkSize, numberOfPages);\n //calculate range, keep current in middle if necessary\n let start = Math.max(0, Math.ceil(this.getPage() - ((visiblePages) / 2))), end = Math.min(numberOfPages - 1, start + visiblePages - 1);\n //check when approaching to last page\n var delta = this.pageLinkSize - (end - start + 1);\n start = Math.max(0, start - delta);\n return [start, end];\n }\n updatePageLinks() {\n this.pageLinks = [];\n let boundaries = this.calculatePageLinkBoundaries(), start = boundaries[0], end = boundaries[1];\n for (let i = start; i <= end; i++) {\n this.pageLinks.push(i + 1);\n }\n if (this.showJumpToPageDropdown) {\n this.pageItems = [];\n for (let i = 0; i < this.getPageCount(); i++) {\n this.pageItems.push({ label: String(i + 1), value: i });\n }\n }\n }\n changePage(p) {\n var pc = this.getPageCount();\n if (p >= 0 && p < pc) {\n this._first = this.rows * p;\n var state = {\n page: p,\n first: this.first,\n rows: this.rows,\n pageCount: pc\n };\n this.updatePageLinks();\n this.onPageChange.emit(state);\n this.updatePaginatorState();\n }\n }\n updateFirst() {\n const page = this.getPage();\n if (page > 0 && this.totalRecords && (this.first >= this.totalRecords)) {\n Promise.resolve(null).then(() => this.changePage(page - 1));\n }\n }\n getPage() {\n return Math.floor(this.first / this.rows);\n }\n changePageToFirst(event) {\n if (!this.isFirstPage()) {\n this.changePage(0);\n }\n event.preventDefault();\n }\n changePageToPrev(event) {\n this.changePage(this.getPage() - 1);\n event.preventDefault();\n }\n changePageToNext(event) {\n this.changePage(this.getPage() + 1);\n event.preventDefault();\n }\n changePageToLast(event) {\n if (!this.isLastPage()) {\n this.changePage(this.getPageCount() - 1);\n }\n event.preventDefault();\n }\n onPageLinkClick(event, page) {\n this.changePage(page);\n event.preventDefault();\n }\n onRppChange(event) {\n this.changePage(this.getPage());\n }\n onPageDropdownChange(event) {\n this.changePage(event.value);\n }\n updatePaginatorState() {\n this.paginatorState = {\n page: this.getPage(),\n pageCount: this.getPageCount(),\n rows: this.rows,\n first: this.first,\n totalRecords: this.totalRecords\n };\n }\n empty() {\n return this.getPageCount() === 0;\n }\n currentPage() {\n return this.getPageCount() > 0 ? this.getPage() + 1 : 0;\n }\n get currentPageReport() {\n return this.currentPageReportTemplate\n .replace(\"{currentPage}\", String(this.currentPage()))\n .replace(\"{totalPages}\", String(this.getPageCount()))\n .replace(\"{first}\", String((this.totalRecords > 0) ? this._first + 1 : 0))\n .replace(\"{last}\", String(Math.min(this._first + this.rows, this.totalRecords)))\n .replace(\"{rows}\", String(this.rows))\n .replace(\"{totalRecords}\", String(this.totalRecords));\n }\n}\nPaginator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Paginator, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nPaginator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Paginator, selector: \"p-paginator\", inputs: { pageLinkSize: \"pageLinkSize\", style: \"style\", styleClass: \"styleClass\", alwaysShow: \"alwaysShow\", templateLeft: \"templateLeft\", templateRight: \"templateRight\", dropdownAppendTo: \"dropdownAppendTo\", dropdownScrollHeight: \"dropdownScrollHeight\", currentPageReportTemplate: \"currentPageReportTemplate\", showCurrentPageReport: \"showCurrentPageReport\", showFirstLastIcon: \"showFirstLastIcon\", totalRecords: \"totalRecords\", rows: \"rows\", rowsPerPageOptions: \"rowsPerPageOptions\", showJumpToPageDropdown: \"showJumpToPageDropdown\", showJumpToPageInput: \"showJumpToPageInput\", showPageLinks: \"showPageLinks\", dropdownItemTemplate: \"dropdownItemTemplate\", first: \"first\" }, outputs: { onPageChange: \"onPageChange\" }, host: { classAttribute: \"p-element\" }, usesOnChanges: true, ngImport: i0, template: `\n
    1)\">\n
    \n \n
    \n {{currentPageReport}}\n \n \n \n \n \n \n {{currentPageReport}}\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n `, isInline: true, styles: [\".p-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.p-paginator-left-content{margin-right:auto}.p-paginator-right-content{margin-left:auto}.p-paginator-page,.p-paginator-next,.p-paginator-last,.p-paginator-first,.p-paginator-prev,.p-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.p-paginator-element:focus{z-index:1;position:relative}\\n\"], components: [{ type: i1.Dropdown, selector: \"p-dropdown\", inputs: [\"scrollHeight\", \"filter\", \"name\", \"style\", \"panelStyle\", \"styleClass\", \"panelStyleClass\", \"readonly\", \"required\", \"editable\", \"appendTo\", \"tabindex\", \"placeholder\", \"filterPlaceholder\", \"filterLocale\", \"inputId\", \"selectId\", \"dataKey\", \"filterBy\", \"autofocus\", \"resetFilterOnHide\", \"dropdownIcon\", \"optionLabel\", \"optionValue\", \"optionDisabled\", \"optionGroupLabel\", \"optionGroupChildren\", \"autoDisplayFirst\", \"group\", \"showClear\", \"emptyFilterMessage\", \"emptyMessage\", \"virtualScroll\", \"itemSize\", \"autoZIndex\", \"baseZIndex\", \"showTransitionOptions\", \"hideTransitionOptions\", \"ariaFilterLabel\", \"ariaLabel\", \"ariaLabelledBy\", \"filterMatchMode\", \"maxlength\", \"tooltip\", \"tooltipPosition\", \"tooltipPositionStyle\", \"tooltipStyleClass\", \"autofocusFilter\", \"disabled\", \"options\", \"filterValue\"], outputs: [\"onChange\", \"onFilter\", \"onFocus\", \"onBlur\", \"onClick\", \"onShow\", \"onHide\", \"onClear\"] }, { type: i2.InputNumber, selector: \"p-inputNumber\", inputs: [\"showButtons\", \"format\", \"buttonLayout\", \"inputId\", \"styleClass\", \"style\", \"placeholder\", \"size\", \"maxlength\", \"tabindex\", \"title\", \"ariaLabel\", \"ariaRequired\", \"name\", \"required\", \"autocomplete\", \"min\", \"max\", \"incrementButtonClass\", \"decrementButtonClass\", \"incrementButtonIcon\", \"decrementButtonIcon\", \"readonly\", \"step\", \"allowEmpty\", \"locale\", \"localeMatcher\", \"mode\", \"currency\", \"currencyDisplay\", \"useGrouping\", \"minFractionDigits\", \"maxFractionDigits\", \"prefix\", \"suffix\", \"inputStyle\", \"inputStyleClass\", \"showClear\", \"disabled\"], outputs: [\"onInput\", \"onFocus\", \"onBlur\", \"onKeyDown\", \"onClear\"] }], directives: [{ type: i3.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i3.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i3.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i3.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i4.Ripple, selector: \"[pRipple]\" }, { type: i3.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i5.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { type: i5.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { type: i6.PrimeTemplate, selector: \"[pTemplate]\", inputs: [\"type\", \"pTemplate\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Paginator, decorators: [{\n type: Component,\n args: [{ selector: 'p-paginator', template: `\n
    1)\">\n
    \n \n
    \n {{currentPageReport}}\n \n \n \n \n \n \n {{currentPageReport}}\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n `, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element'\n }, styles: [\".p-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.p-paginator-left-content{margin-right:auto}.p-paginator-right-content{margin-left:auto}.p-paginator-page,.p-paginator-next,.p-paginator-last,.p-paginator-first,.p-paginator-prev,.p-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.p-paginator-element:focus{z-index:1;position:relative}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { pageLinkSize: [{\n type: Input\n }], onPageChange: [{\n type: Output\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], alwaysShow: [{\n type: Input\n }], templateLeft: [{\n type: Input\n }], templateRight: [{\n type: Input\n }], dropdownAppendTo: [{\n type: Input\n }], dropdownScrollHeight: [{\n type: Input\n }], currentPageReportTemplate: [{\n type: Input\n }], showCurrentPageReport: [{\n type: Input\n }], showFirstLastIcon: [{\n type: Input\n }], totalRecords: [{\n type: Input\n }], rows: [{\n type: Input\n }], rowsPerPageOptions: [{\n type: Input\n }], showJumpToPageDropdown: [{\n type: Input\n }], showJumpToPageInput: [{\n type: Input\n }], showPageLinks: [{\n type: Input\n }], dropdownItemTemplate: [{\n type: Input\n }], first: [{\n type: Input\n }] } });\nclass PaginatorModule {\n}\nPaginatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PaginatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nPaginatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PaginatorModule, declarations: [Paginator], imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule], exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule] });\nPaginatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PaginatorModule, imports: [[CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule], DropdownModule, InputNumberModule, FormsModule, SharedModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: PaginatorModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule],\n exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule],\n declarations: [Paginator]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Paginator, PaginatorModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, TemplateRef, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChild, NgModule } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport { ObjectUtils } from 'primeng/utils';\nimport * as i2 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nconst SELECTBUTTON_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SelectButton),\n multi: true\n};\nclass SelectButton {\n constructor(cd) {\n this.cd = cd;\n this.tabindex = 0;\n this.onOptionClick = new EventEmitter();\n this.onChange = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n }\n getOptionLabel(option) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : (option.label != undefined ? option.label : option);\n }\n getOptionValue(option) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : (this.optionLabel || option.value === undefined ? option : option.value);\n }\n isOptionDisabled(option) {\n return this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : (option.disabled !== undefined ? option.disabled : false);\n }\n writeValue(value) {\n this.value = value;\n this.cd.markForCheck();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n onItemClick(event, option, index) {\n if (this.disabled || this.isOptionDisabled(option)) {\n return;\n }\n if (this.multiple) {\n if (this.isSelected(option))\n this.removeOption(option);\n else\n this.value = [...(this.value || []), this.getOptionValue(option)];\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n else {\n let value = this.getOptionValue(option);\n if (this.value !== value) {\n this.value = this.getOptionValue(option);\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n }\n this.onOptionClick.emit({\n originalEvent: event,\n option: option,\n index: index\n });\n }\n onBlur() {\n this.onModelTouched();\n }\n removeOption(option) {\n this.value = this.value.filter(val => !ObjectUtils.equals(val, this.getOptionValue(option), this.dataKey));\n }\n isSelected(option) {\n let selected = false;\n let optionValue = this.getOptionValue(option);\n if (this.multiple) {\n if (this.value) {\n for (let val of this.value) {\n if (ObjectUtils.equals(val, optionValue, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n }\n else {\n selected = ObjectUtils.equals(this.getOptionValue(option), this.value, this.dataKey);\n }\n return selected;\n }\n}\nSelectButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectButton, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nSelectButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: SelectButton, selector: \"p-selectButton\", inputs: { options: \"options\", optionLabel: \"optionLabel\", optionValue: \"optionValue\", optionDisabled: \"optionDisabled\", tabindex: \"tabindex\", multiple: \"multiple\", style: \"style\", styleClass: \"styleClass\", ariaLabelledBy: \"ariaLabelledBy\", disabled: \"disabled\", dataKey: \"dataKey\" }, outputs: { onOptionClick: \"onOptionClick\", onChange: \"onChange\" }, host: { classAttribute: \"p-element\" }, providers: [SELECTBUTTON_VALUE_ACCESSOR], queries: [{ propertyName: \"itemTemplate\", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: `\n
    \n
    \n \n \n {{getOptionLabel(option)}}\n \n \n \n \n
    \n
    \n `, isInline: true, styles: [\".p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default}.p-button-icon-only{justify-content:center}.p-button-icon-only .p-button-label{visibility:hidden;width:0;flex:0 0 auto}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-buttonset .p-button{margin:0}.p-buttonset .p-button:not(:last-child){border-right:0 none}.p-buttonset .p-button:not(:first-of-type):not(:last-of-type){border-radius:0}.p-buttonset .p-button:first-of-type{border-top-right-radius:0;border-bottom-right-radius:0}.p-buttonset .p-button:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}.p-buttonset .p-button:focus{position:relative;z-index:1}\\n\"], directives: [{ type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i1.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i1.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i2.Ripple, selector: \"[pRipple]\" }, { type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i1.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectButton, decorators: [{\n type: Component,\n args: [{ selector: 'p-selectButton', template: `\n
    \n
    \n \n \n {{getOptionLabel(option)}}\n \n \n \n \n
    \n
    \n `, providers: [SELECTBUTTON_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element'\n }, styles: [\".p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default}.p-button-icon-only{justify-content:center}.p-button-icon-only .p-button-label{visibility:hidden;width:0;flex:0 0 auto}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-buttonset .p-button{margin:0}.p-buttonset .p-button:not(:last-child){border-right:0 none}.p-buttonset .p-button:not(:first-of-type):not(:last-of-type){border-radius:0}.p-buttonset .p-button:first-of-type{border-top-right-radius:0;border-bottom-right-radius:0}.p-buttonset .p-button:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}.p-buttonset .p-button:focus{position:relative;z-index:1}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { options: [{\n type: Input\n }], optionLabel: [{\n type: Input\n }], optionValue: [{\n type: Input\n }], optionDisabled: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], multiple: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], disabled: [{\n type: Input\n }], dataKey: [{\n type: Input\n }], onOptionClick: [{\n type: Output\n }], onChange: [{\n type: Output\n }], itemTemplate: [{\n type: ContentChild,\n args: [TemplateRef]\n }] } });\nclass SelectButtonModule {\n}\nSelectButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nSelectButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectButtonModule, declarations: [SelectButton], imports: [CommonModule, RippleModule], exports: [SelectButton] });\nSelectButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectButtonModule, imports: [[CommonModule, RippleModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectButtonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, RippleModule],\n exports: [SelectButton],\n declarations: [SelectButton]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { SELECTBUTTON_VALUE_ACCESSOR, SelectButton, SelectButtonModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, NgModule } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nconst TRISTATECHECKBOX_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TriStateCheckbox),\n multi: true\n};\nclass TriStateCheckbox {\n constructor(cd) {\n this.cd = cd;\n this.checkboxTrueIcon = 'pi pi-check';\n this.checkboxFalseIcon = 'pi pi-times';\n this.onChange = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n }\n onClick(event, input) {\n if (!this.disabled && !this.readonly) {\n this.toggle(event);\n this.focused = true;\n input.focus();\n }\n }\n onKeydown(event) {\n if (event.keyCode == 32) {\n event.preventDefault();\n }\n }\n onKeyup(event) {\n if (event.keyCode == 32 && !this.readonly) {\n this.toggle(event);\n event.preventDefault();\n }\n }\n toggle(event) {\n if (this.value == null || this.value == undefined)\n this.value = true;\n else if (this.value == true)\n this.value = false;\n else if (this.value == false)\n this.value = null;\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n this.onModelTouched();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n writeValue(value) {\n this.value = value;\n this.cd.markForCheck();\n }\n setDisabledState(disabled) {\n this.disabled = disabled;\n this.cd.markForCheck();\n }\n}\nTriStateCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TriStateCheckbox, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTriStateCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: TriStateCheckbox, selector: \"p-triStateCheckbox\", inputs: { disabled: \"disabled\", name: \"name\", ariaLabelledBy: \"ariaLabelledBy\", tabindex: \"tabindex\", inputId: \"inputId\", style: \"style\", styleClass: \"styleClass\", label: \"label\", readonly: \"readonly\", checkboxTrueIcon: \"checkboxTrueIcon\", checkboxFalseIcon: \"checkboxFalseIcon\" }, outputs: { onChange: \"onChange\" }, host: { classAttribute: \"p-element\" }, providers: [TRISTATECHECKBOX_VALUE_ACCESSOR], ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n `, isInline: true, directives: [{ type: i1.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TriStateCheckbox, decorators: [{\n type: Component,\n args: [{\n selector: 'p-triStateCheckbox',\n template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n `,\n providers: [TRISTATECHECKBOX_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], name: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], inputId: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], label: [{\n type: Input\n }], readonly: [{\n type: Input\n }], checkboxTrueIcon: [{\n type: Input\n }], checkboxFalseIcon: [{\n type: Input\n }], onChange: [{\n type: Output\n }] } });\nclass TriStateCheckboxModule {\n}\nTriStateCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TriStateCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nTriStateCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TriStateCheckboxModule, declarations: [TriStateCheckbox], imports: [CommonModule], exports: [TriStateCheckbox] });\nTriStateCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TriStateCheckboxModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TriStateCheckboxModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [TriStateCheckbox],\n declarations: [TriStateCheckbox]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { TRISTATECHECKBOX_VALUE_ACCESSOR, TriStateCheckbox, TriStateCheckboxModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChildren, ViewChild, NgModule } from '@angular/core';\nimport { trigger, state, style, transition, animate } from '@angular/animations';\nimport * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i3 from 'primeng/button';\nimport { ButtonModule } from 'primeng/button';\nimport * as i4 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport * as i1 from 'primeng/api';\nimport { TranslationKeys, PrimeTemplate, SharedModule } from 'primeng/api';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';\n\nconst CALENDAR_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Calendar),\n multi: true\n};\nclass Calendar {\n constructor(el, renderer, cd, zone, config, overlayService) {\n this.el = el;\n this.renderer = renderer;\n this.cd = cd;\n this.zone = zone;\n this.config = config;\n this.overlayService = overlayService;\n this.multipleSeparator = ',';\n this.rangeSeparator = '-';\n this.inline = false;\n this.showOtherMonths = true;\n this.icon = 'pi pi-calendar';\n this.shortYearCutoff = '+10';\n this.hourFormat = '24';\n this.stepHour = 1;\n this.stepMinute = 1;\n this.stepSecond = 1;\n this.showSeconds = false;\n this.showOnFocus = true;\n this.showWeek = false;\n this.showClear = false;\n this.dataType = 'date';\n this.selectionMode = 'single';\n this.todayButtonStyleClass = 'p-button-text';\n this.clearButtonStyleClass = 'p-button-text';\n this.autoZIndex = true;\n this.baseZIndex = 0;\n this.keepInvalid = false;\n this.hideOnDateTimeSelect = true;\n this.timeSeparator = \":\";\n this.focusTrap = true;\n this.showTransitionOptions = '.12s cubic-bezier(0, 0, 0.2, 1)';\n this.hideTransitionOptions = '.1s linear';\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n this.onClose = new EventEmitter();\n this.onSelect = new EventEmitter();\n this.onClear = new EventEmitter();\n this.onInput = new EventEmitter();\n this.onTodayClick = new EventEmitter();\n this.onClearClick = new EventEmitter();\n this.onMonthChange = new EventEmitter();\n this.onYearChange = new EventEmitter();\n this.onClickOutside = new EventEmitter();\n this.onShow = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n this.inputFieldValue = null;\n this.navigationState = null;\n this._numberOfMonths = 1;\n this._view = 'date';\n this.convertTo24Hour = function (hours, pm) {\n if (this.hourFormat == '12') {\n if (hours === 12) {\n return (pm ? 12 : 0);\n }\n else {\n return (pm ? hours + 12 : hours);\n }\n }\n return hours;\n };\n }\n set content(content) {\n this.contentViewChild = content;\n if (this.contentViewChild) {\n if (this.isMonthNavigate) {\n Promise.resolve(null).then(() => this.updateFocus());\n this.isMonthNavigate = false;\n }\n else {\n if (!this.focus) {\n this.initFocusableCell();\n }\n }\n }\n }\n ;\n get view() {\n return this._view;\n }\n ;\n set view(view) {\n this._view = view;\n this.currentView = this._view;\n }\n get defaultDate() {\n return this._defaultDate;\n }\n ;\n set defaultDate(defaultDate) {\n this._defaultDate = defaultDate;\n if (this.initialized) {\n const date = defaultDate || new Date();\n this.currentMonth = date.getMonth();\n this.currentYear = date.getFullYear();\n this.initTime(date);\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get minDate() {\n return this._minDate;\n }\n set minDate(date) {\n this._minDate = date;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get maxDate() {\n return this._maxDate;\n }\n set maxDate(date) {\n this._maxDate = date;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get disabledDates() {\n return this._disabledDates;\n }\n set disabledDates(disabledDates) {\n this._disabledDates = disabledDates;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get disabledDays() {\n return this._disabledDays;\n }\n set disabledDays(disabledDays) {\n this._disabledDays = disabledDays;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get yearRange() {\n return this._yearRange;\n }\n set yearRange(yearRange) {\n this._yearRange = yearRange;\n if (yearRange) {\n const years = yearRange.split(':');\n const yearStart = parseInt(years[0]);\n const yearEnd = parseInt(years[1]);\n this.populateYearOptions(yearStart, yearEnd);\n }\n }\n get showTime() {\n return this._showTime;\n }\n set showTime(showTime) {\n this._showTime = showTime;\n if (this.currentHour === undefined) {\n this.initTime(this.value || new Date());\n }\n this.updateInputfield();\n }\n get locale() {\n return this._locale;\n }\n get responsiveOptions() {\n return this._responsiveOptions;\n }\n ;\n set responsiveOptions(responsiveOptions) {\n this._responsiveOptions = responsiveOptions;\n this.destroyResponsiveStyleElement();\n this.createResponsiveStyle();\n }\n get numberOfMonths() {\n return this._numberOfMonths;\n }\n set numberOfMonths(numberOfMonths) {\n this._numberOfMonths = numberOfMonths;\n this.destroyResponsiveStyleElement();\n this.createResponsiveStyle();\n }\n get firstDayOfWeek() {\n return this._firstDayOfWeek;\n }\n set firstDayOfWeek(firstDayOfWeek) {\n this._firstDayOfWeek = firstDayOfWeek;\n this.createWeekDays();\n }\n set locale(newLocale) {\n console.warn(\"Locale property has no effect, use new i18n API instead.\");\n }\n ngOnInit() {\n this.attributeSelector = UniqueComponentId();\n const date = this.defaultDate || new Date();\n this.createResponsiveStyle();\n this.currentMonth = date.getMonth();\n this.currentYear = date.getFullYear();\n this.currentView = this.view;\n if (this.view === 'date') {\n this.createWeekDays();\n this.initTime(date);\n this.createMonths(this.currentMonth, this.currentYear);\n this.ticksTo1970 = (((1970 - 1) * 365 + Math.floor(1970 / 4) - Math.floor(1970 / 100) + Math.floor(1970 / 400)) * 24 * 60 * 60 * 10000000);\n }\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.createWeekDays();\n });\n this.initialized = true;\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'date':\n this.dateTemplate = item.template;\n break;\n case 'decade':\n this.decadeTemplate = item.template;\n break;\n case 'disabledDate':\n this.disabledDateTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n default:\n this.dateTemplate = item.template;\n break;\n }\n });\n }\n ngAfterViewInit() {\n if (this.inline) {\n this.contentViewChild && this.contentViewChild.nativeElement.setAttribute(this.attributeSelector, '');\n if (!this.disabled) {\n this.initFocusableCell();\n if (this.numberOfMonths === 1) {\n this.contentViewChild.nativeElement.style.width = DomHandler.getOuterWidth(this.containerViewChild.nativeElement) + 'px';\n }\n }\n }\n }\n getTranslation(option) {\n return this.config.getTranslation(option);\n }\n populateYearOptions(start, end) {\n this.yearOptions = [];\n for (let i = start; i <= end; i++) {\n this.yearOptions.push(i);\n }\n }\n createWeekDays() {\n this.weekDays = [];\n let dayIndex = this.getFirstDateOfWeek();\n let dayLabels = this.getTranslation(TranslationKeys.DAY_NAMES_MIN);\n for (let i = 0; i < 7; i++) {\n this.weekDays.push(dayLabels[dayIndex]);\n dayIndex = (dayIndex == 6) ? 0 : ++dayIndex;\n }\n }\n monthPickerValues() {\n let monthPickerValues = [];\n for (let i = 0; i <= 11; i++) {\n monthPickerValues.push(this.config.getTranslation('monthNamesShort')[i]);\n }\n return monthPickerValues;\n }\n yearPickerValues() {\n let yearPickerValues = [];\n let base = this.currentYear - (this.currentYear % 10);\n for (let i = 0; i < 10; i++) {\n yearPickerValues.push(base + i);\n }\n return yearPickerValues;\n }\n createMonths(month, year) {\n this.months = this.months = [];\n for (let i = 0; i < this.numberOfMonths; i++) {\n let m = month + i;\n let y = year;\n if (m > 11) {\n m = m % 11 - 1;\n y = year + 1;\n }\n this.months.push(this.createMonth(m, y));\n }\n }\n getWeekNumber(date) {\n let checkDate = new Date(date.getTime());\n checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7));\n let time = checkDate.getTime();\n checkDate.setMonth(0);\n checkDate.setDate(1);\n return Math.floor(Math.round((time - checkDate.getTime()) / 86400000) / 7) + 1;\n }\n createMonth(month, year) {\n let dates = [];\n let firstDay = this.getFirstDayOfMonthIndex(month, year);\n let daysLength = this.getDaysCountInMonth(month, year);\n let prevMonthDaysLength = this.getDaysCountInPrevMonth(month, year);\n let dayNo = 1;\n let today = new Date();\n let weekNumbers = [];\n let monthRows = Math.ceil((daysLength + firstDay) / 7);\n for (let i = 0; i < monthRows; i++) {\n let week = [];\n if (i == 0) {\n for (let j = (prevMonthDaysLength - firstDay + 1); j <= prevMonthDaysLength; j++) {\n let prev = this.getPreviousMonthAndYear(month, year);\n week.push({ day: j, month: prev.month, year: prev.year, otherMonth: true,\n today: this.isToday(today, j, prev.month, prev.year), selectable: this.isSelectable(j, prev.month, prev.year, true) });\n }\n let remainingDaysLength = 7 - week.length;\n for (let j = 0; j < remainingDaysLength; j++) {\n week.push({ day: dayNo, month: month, year: year, today: this.isToday(today, dayNo, month, year),\n selectable: this.isSelectable(dayNo, month, year, false) });\n dayNo++;\n }\n }\n else {\n for (let j = 0; j < 7; j++) {\n if (dayNo > daysLength) {\n let next = this.getNextMonthAndYear(month, year);\n week.push({ day: dayNo - daysLength, month: next.month, year: next.year, otherMonth: true,\n today: this.isToday(today, dayNo - daysLength, next.month, next.year),\n selectable: this.isSelectable((dayNo - daysLength), next.month, next.year, true) });\n }\n else {\n week.push({ day: dayNo, month: month, year: year, today: this.isToday(today, dayNo, month, year),\n selectable: this.isSelectable(dayNo, month, year, false) });\n }\n dayNo++;\n }\n }\n if (this.showWeek) {\n weekNumbers.push(this.getWeekNumber(new Date(week[0].year, week[0].month, week[0].day)));\n }\n dates.push(week);\n }\n return {\n month: month,\n year: year,\n dates: dates,\n weekNumbers: weekNumbers\n };\n }\n initTime(date) {\n this.pm = date.getHours() > 11;\n if (this.showTime) {\n this.currentMinute = date.getMinutes();\n this.currentSecond = date.getSeconds();\n this.setCurrentHourPM(date.getHours());\n }\n else if (this.timeOnly) {\n this.currentMinute = 0;\n this.currentHour = 0;\n this.currentSecond = 0;\n }\n }\n navBackward(event) {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n this.isMonthNavigate = true;\n if (this.currentView === 'month') {\n this.decrementYear();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else if (this.currentView === 'year') {\n this.decrementDecade();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else {\n if (this.currentMonth === 0) {\n this.currentMonth = 11;\n this.decrementYear();\n }\n else {\n this.currentMonth--;\n }\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n navForward(event) {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n this.isMonthNavigate = true;\n if (this.currentView === 'month') {\n this.incrementYear();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else if (this.currentView === 'year') {\n this.incrementDecade();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else {\n if (this.currentMonth === 11) {\n this.currentMonth = 0;\n this.incrementYear();\n }\n else {\n this.currentMonth++;\n }\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n decrementYear() {\n this.currentYear--;\n if (this.yearNavigator && this.currentYear < this.yearOptions[0]) {\n let difference = this.yearOptions[this.yearOptions.length - 1] - this.yearOptions[0];\n this.populateYearOptions(this.yearOptions[0] - difference, this.yearOptions[this.yearOptions.length - 1] - difference);\n }\n }\n decrementDecade() {\n this.currentYear = this.currentYear - 10;\n }\n incrementDecade() {\n this.currentYear = this.currentYear + 10;\n }\n incrementYear() {\n this.currentYear++;\n if (this.yearNavigator && this.currentYear > this.yearOptions[this.yearOptions.length - 1]) {\n let difference = this.yearOptions[this.yearOptions.length - 1] - this.yearOptions[0];\n this.populateYearOptions(this.yearOptions[0] + difference, this.yearOptions[this.yearOptions.length - 1] + difference);\n }\n }\n switchToMonthView(event) {\n this.setCurrentView('month');\n event.preventDefault();\n }\n switchToYearView(event) {\n this.setCurrentView('year');\n event.preventDefault();\n }\n onDateSelect(event, dateMeta) {\n if (this.disabled || !dateMeta.selectable) {\n event.preventDefault();\n return;\n }\n if (this.isMultipleSelection() && this.isSelected(dateMeta)) {\n this.value = this.value.filter((date, i) => {\n return !this.isDateEquals(date, dateMeta);\n });\n if (this.value.length === 0) {\n this.value = null;\n }\n this.updateModel(this.value);\n }\n else {\n if (this.shouldSelectDate(dateMeta)) {\n this.selectDate(dateMeta);\n }\n }\n if (this.isSingleSelection() && this.hideOnDateTimeSelect) {\n setTimeout(() => {\n event.preventDefault();\n this.hideOverlay();\n if (this.mask) {\n this.disableModality();\n }\n this.cd.markForCheck();\n }, 150);\n }\n this.updateInputfield();\n event.preventDefault();\n }\n shouldSelectDate(dateMeta) {\n if (this.isMultipleSelection())\n return this.maxDateCount != null ? this.maxDateCount > (this.value ? this.value.length : 0) : true;\n else\n return true;\n }\n onMonthSelect(event, index) {\n if (this.view === 'month') {\n this.onDateSelect(event, { year: this.currentYear, month: index, day: 1, selectable: true });\n }\n else {\n this.currentMonth = index;\n this.createMonths(this.currentMonth, this.currentYear);\n this.setCurrentView('date');\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n }\n }\n onYearSelect(event, year) {\n if (this.view === 'year') {\n this.onDateSelect(event, { year: year, month: 0, day: 1, selectable: true });\n }\n else {\n this.currentYear = year;\n this.setCurrentView('month');\n this.onYearChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n }\n }\n updateInputfield() {\n let formattedValue = '';\n if (this.value) {\n if (this.isSingleSelection()) {\n formattedValue = this.formatDateTime(this.value);\n }\n else if (this.isMultipleSelection()) {\n for (let i = 0; i < this.value.length; i++) {\n let dateAsString = this.formatDateTime(this.value[i]);\n formattedValue += dateAsString;\n if (i !== (this.value.length - 1)) {\n formattedValue += this.multipleSeparator + ' ';\n }\n }\n }\n else if (this.isRangeSelection()) {\n if (this.value && this.value.length) {\n let startDate = this.value[0];\n let endDate = this.value[1];\n formattedValue = this.formatDateTime(startDate);\n if (endDate) {\n formattedValue += ' ' + this.rangeSeparator + ' ' + this.formatDateTime(endDate);\n }\n }\n }\n }\n this.inputFieldValue = formattedValue;\n this.updateFilledState();\n if (this.inputfieldViewChild && this.inputfieldViewChild.nativeElement) {\n this.inputfieldViewChild.nativeElement.value = this.inputFieldValue;\n }\n }\n formatDateTime(date) {\n let formattedValue = this.keepInvalid ? date : null;\n if (this.isValidDate(date)) {\n if (this.timeOnly) {\n formattedValue = this.formatTime(date);\n }\n else {\n formattedValue = this.formatDate(date, this.getDateFormat());\n if (this.showTime) {\n formattedValue += ' ' + this.formatTime(date);\n }\n }\n }\n return formattedValue;\n }\n setCurrentHourPM(hours) {\n if (this.hourFormat == '12') {\n this.pm = hours > 11;\n if (hours >= 12) {\n this.currentHour = (hours == 12) ? 12 : hours - 12;\n }\n else {\n this.currentHour = (hours == 0) ? 12 : hours;\n }\n }\n else {\n this.currentHour = hours;\n }\n }\n setCurrentView(currentView) {\n this.currentView = currentView;\n this.cd.detectChanges();\n this.alignOverlay();\n }\n selectDate(dateMeta) {\n let date = new Date(dateMeta.year, dateMeta.month, dateMeta.day);\n if (this.showTime) {\n if (this.hourFormat == '12') {\n if (this.currentHour === 12)\n date.setHours(this.pm ? 12 : 0);\n else\n date.setHours(this.pm ? this.currentHour + 12 : this.currentHour);\n }\n else {\n date.setHours(this.currentHour);\n }\n date.setMinutes(this.currentMinute);\n date.setSeconds(this.currentSecond);\n }\n if (this.minDate && this.minDate > date) {\n date = this.minDate;\n this.setCurrentHourPM(date.getHours());\n this.currentMinute = date.getMinutes();\n this.currentSecond = date.getSeconds();\n }\n if (this.maxDate && this.maxDate < date) {\n date = this.maxDate;\n this.setCurrentHourPM(date.getHours());\n this.currentMinute = date.getMinutes();\n this.currentSecond = date.getSeconds();\n }\n if (this.isSingleSelection()) {\n this.updateModel(date);\n }\n else if (this.isMultipleSelection()) {\n this.updateModel(this.value ? [...this.value, date] : [date]);\n }\n else if (this.isRangeSelection()) {\n if (this.value && this.value.length) {\n let startDate = this.value[0];\n let endDate = this.value[1];\n if (!endDate && date.getTime() >= startDate.getTime()) {\n endDate = date;\n }\n else {\n startDate = date;\n endDate = null;\n }\n this.updateModel([startDate, endDate]);\n }\n else {\n this.updateModel([date, null]);\n }\n }\n this.onSelect.emit(date);\n }\n updateModel(value) {\n this.value = value;\n if (this.dataType == 'date') {\n this.onModelChange(this.value);\n }\n else if (this.dataType == 'string') {\n if (this.isSingleSelection()) {\n this.onModelChange(this.formatDateTime(this.value));\n }\n else {\n let stringArrValue = null;\n if (this.value) {\n stringArrValue = this.value.map(date => this.formatDateTime(date));\n }\n this.onModelChange(stringArrValue);\n }\n }\n }\n getFirstDayOfMonthIndex(month, year) {\n let day = new Date();\n day.setDate(1);\n day.setMonth(month);\n day.setFullYear(year);\n let dayIndex = day.getDay() + this.getSundayIndex();\n return dayIndex >= 7 ? dayIndex - 7 : dayIndex;\n }\n getDaysCountInMonth(month, year) {\n return 32 - this.daylightSavingAdjust(new Date(year, month, 32)).getDate();\n }\n getDaysCountInPrevMonth(month, year) {\n let prev = this.getPreviousMonthAndYear(month, year);\n return this.getDaysCountInMonth(prev.month, prev.year);\n }\n getPreviousMonthAndYear(month, year) {\n let m, y;\n if (month === 0) {\n m = 11;\n y = year - 1;\n }\n else {\n m = month - 1;\n y = year;\n }\n return { 'month': m, 'year': y };\n }\n getNextMonthAndYear(month, year) {\n let m, y;\n if (month === 11) {\n m = 0;\n y = year + 1;\n }\n else {\n m = month + 1;\n y = year;\n }\n return { 'month': m, 'year': y };\n }\n getSundayIndex() {\n let firstDayOfWeek = this.getFirstDateOfWeek();\n return firstDayOfWeek > 0 ? 7 - firstDayOfWeek : 0;\n }\n isSelected(dateMeta) {\n if (this.value) {\n if (this.isSingleSelection()) {\n return this.isDateEquals(this.value, dateMeta);\n }\n else if (this.isMultipleSelection()) {\n let selected = false;\n for (let date of this.value) {\n selected = this.isDateEquals(date, dateMeta);\n if (selected) {\n break;\n }\n }\n return selected;\n }\n else if (this.isRangeSelection()) {\n if (this.value[1])\n return this.isDateEquals(this.value[0], dateMeta) || this.isDateEquals(this.value[1], dateMeta) || this.isDateBetween(this.value[0], this.value[1], dateMeta);\n else\n return this.isDateEquals(this.value[0], dateMeta);\n }\n }\n else {\n return false;\n }\n }\n isComparable() {\n return this.value != null && typeof this.value !== 'string';\n }\n isMonthSelected(month) {\n if (this.isComparable()) {\n let value = this.isRangeSelection() ? this.value[0] : this.value;\n return !this.isMultipleSelection() ? (value.getMonth() === month && value.getFullYear() === this.currentYear) : false;\n }\n return false;\n }\n isYearSelected(year) {\n if (this.isComparable()) {\n let value = this.isRangeSelection() ? this.value[0] : this.value;\n return !this.isMultipleSelection() ? (value.getFullYear() === year) : false;\n }\n return false;\n }\n isDateEquals(value, dateMeta) {\n if (value && value instanceof Date)\n return value.getDate() === dateMeta.day && value.getMonth() === dateMeta.month && value.getFullYear() === dateMeta.year;\n else\n return false;\n }\n isDateBetween(start, end, dateMeta) {\n let between = false;\n if (start && end) {\n let date = new Date(dateMeta.year, dateMeta.month, dateMeta.day);\n return start.getTime() <= date.getTime() && end.getTime() >= date.getTime();\n }\n return between;\n }\n isSingleSelection() {\n return this.selectionMode === 'single';\n }\n isRangeSelection() {\n return this.selectionMode === 'range';\n }\n isMultipleSelection() {\n return this.selectionMode === 'multiple';\n }\n isToday(today, day, month, year) {\n return today.getDate() === day && today.getMonth() === month && today.getFullYear() === year;\n }\n isSelectable(day, month, year, otherMonth) {\n let validMin = true;\n let validMax = true;\n let validDate = true;\n let validDay = true;\n if (otherMonth && !this.selectOtherMonths) {\n return false;\n }\n if (this.minDate) {\n if (this.minDate.getFullYear() > year) {\n validMin = false;\n }\n else if (this.minDate.getFullYear() === year) {\n if (this.minDate.getMonth() > month) {\n validMin = false;\n }\n else if (this.minDate.getMonth() === month) {\n if (this.minDate.getDate() > day) {\n validMin = false;\n }\n }\n }\n }\n if (this.maxDate) {\n if (this.maxDate.getFullYear() < year) {\n validMax = false;\n }\n else if (this.maxDate.getFullYear() === year) {\n if (this.maxDate.getMonth() < month) {\n validMax = false;\n }\n else if (this.maxDate.getMonth() === month) {\n if (this.maxDate.getDate() < day) {\n validMax = false;\n }\n }\n }\n }\n if (this.disabledDates) {\n validDate = !this.isDateDisabled(day, month, year);\n }\n if (this.disabledDays) {\n validDay = !this.isDayDisabled(day, month, year);\n }\n return validMin && validMax && validDate && validDay;\n }\n isDateDisabled(day, month, year) {\n if (this.disabledDates) {\n for (let disabledDate of this.disabledDates) {\n if (disabledDate.getFullYear() === year && disabledDate.getMonth() === month && disabledDate.getDate() === day) {\n return true;\n }\n }\n }\n return false;\n }\n isDayDisabled(day, month, year) {\n if (this.disabledDays) {\n let weekday = new Date(year, month, day);\n let weekdayNumber = weekday.getDay();\n return this.disabledDays.indexOf(weekdayNumber) !== -1;\n }\n return false;\n }\n onInputFocus(event) {\n this.focus = true;\n if (this.showOnFocus) {\n this.showOverlay();\n }\n this.onFocus.emit(event);\n }\n onInputClick() {\n if (this.showOnFocus && !this.overlayVisible) {\n this.showOverlay();\n }\n }\n onInputBlur(event) {\n this.focus = false;\n this.onBlur.emit(event);\n if (!this.keepInvalid) {\n this.updateInputfield();\n }\n this.onModelTouched();\n }\n onButtonClick(event, inputfield) {\n if (!this.overlayVisible) {\n inputfield.focus();\n this.showOverlay();\n }\n else {\n this.hideOverlay();\n }\n }\n clear() {\n this.inputFieldValue = null;\n this.value = null;\n this.onModelChange(this.value);\n this.onClear.emit();\n }\n onOverlayClick(event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n getMonthName(index) {\n return this.config.getTranslation('monthNames')[index];\n }\n getYear(month) {\n return this.currentView === 'month' ? this.currentYear : month.year;\n }\n switchViewButtonDisabled() {\n return this.numberOfMonths > 1 || this.disabled;\n }\n onPrevButtonClick(event) {\n this.navigationState = { backward: true, button: true };\n this.navBackward(event);\n }\n onNextButtonClick(event) {\n this.navigationState = { backward: false, button: true };\n this.navForward(event);\n }\n onContainerButtonKeydown(event) {\n switch (event.which) {\n //tab\n case 9:\n if (!this.inline) {\n this.trapFocus(event);\n }\n break;\n //escape\n case 27:\n this.overlayVisible = false;\n event.preventDefault();\n break;\n default:\n //Noop\n break;\n }\n }\n onInputKeydown(event) {\n this.isKeydown = true;\n if (event.keyCode === 40 && this.contentViewChild) {\n this.trapFocus(event);\n }\n else if (event.keyCode === 27) {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n event.preventDefault();\n }\n }\n else if (event.keyCode === 13) {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n event.preventDefault();\n }\n }\n else if (event.keyCode === 9 && this.contentViewChild) {\n DomHandler.getFocusableElements(this.contentViewChild.nativeElement).forEach(el => el.tabIndex = '-1');\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n }\n }\n onDateCellKeydown(event, date, groupIndex) {\n const cellContent = event.currentTarget;\n const cell = cellContent.parentElement;\n switch (event.which) {\n //down arrow\n case 40: {\n cellContent.tabIndex = '-1';\n let cellIndex = DomHandler.index(cell);\n let nextRow = cell.parentElement.nextElementSibling;\n if (nextRow) {\n let focusCell = nextRow.children[cellIndex].children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled')) {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n else {\n nextRow.children[cellIndex].children[0].tabIndex = '0';\n nextRow.children[cellIndex].children[0].focus();\n }\n }\n else {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n event.preventDefault();\n break;\n }\n //up arrow\n case 38: {\n cellContent.tabIndex = '-1';\n let cellIndex = DomHandler.index(cell);\n let prevRow = cell.parentElement.previousElementSibling;\n if (prevRow) {\n let focusCell = prevRow.children[cellIndex].children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled')) {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n else {\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n event.preventDefault();\n break;\n }\n //left arrow\n case 37: {\n cellContent.tabIndex = '-1';\n let prevCell = cell.previousElementSibling;\n if (prevCell) {\n let focusCell = prevCell.children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled') || DomHandler.hasClass(focusCell.parentElement, 'p-datepicker-weeknumber')) {\n this.navigateToMonth(true, groupIndex);\n }\n else {\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n this.navigateToMonth(true, groupIndex);\n }\n event.preventDefault();\n break;\n }\n //right arrow\n case 39: {\n cellContent.tabIndex = '-1';\n let nextCell = cell.nextElementSibling;\n if (nextCell) {\n let focusCell = nextCell.children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled')) {\n this.navigateToMonth(false, groupIndex);\n }\n else {\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n this.navigateToMonth(false, groupIndex);\n }\n event.preventDefault();\n break;\n }\n //enter\n //space\n case 13:\n case 32: {\n this.onDateSelect(event, date);\n event.preventDefault();\n break;\n }\n //escape\n case 27: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //tab\n case 9: {\n if (!this.inline) {\n this.trapFocus(event);\n }\n break;\n }\n default:\n //no op\n break;\n }\n }\n onMonthCellKeydown(event, index) {\n const cell = event.currentTarget;\n switch (event.which) {\n //arrows\n case 38:\n case 40: {\n cell.tabIndex = '-1';\n var cells = cell.parentElement.children;\n var cellIndex = DomHandler.index(cell);\n let nextCell = cells[event.which === 40 ? cellIndex + 3 : cellIndex - 3];\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n event.preventDefault();\n break;\n }\n //left arrow\n case 37: {\n cell.tabIndex = '-1';\n let prevCell = cell.previousElementSibling;\n if (prevCell) {\n prevCell.tabIndex = '0';\n prevCell.focus();\n }\n else {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n event.preventDefault();\n break;\n }\n //right arrow\n case 39: {\n cell.tabIndex = '-1';\n let nextCell = cell.nextElementSibling;\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n else {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n event.preventDefault();\n break;\n }\n //enter\n case 13: {\n this.onMonthSelect(event, index);\n event.preventDefault();\n break;\n }\n //enter\n //space\n case 13:\n case 32: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //escape\n case 27: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //tab\n case 9: {\n if (!this.inline) {\n this.trapFocus(event);\n }\n break;\n }\n default:\n //no op\n break;\n }\n }\n onYearCellKeydown(event, index) {\n const cell = event.currentTarget;\n switch (event.which) {\n //arrows\n case 38:\n case 40: {\n cell.tabIndex = '-1';\n var cells = cell.parentElement.children;\n var cellIndex = DomHandler.index(cell);\n let nextCell = cells[event.which === 40 ? cellIndex + 2 : cellIndex - 2];\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n event.preventDefault();\n break;\n }\n //left arrow\n case 37: {\n cell.tabIndex = '-1';\n let prevCell = cell.previousElementSibling;\n if (prevCell) {\n prevCell.tabIndex = '0';\n prevCell.focus();\n }\n else {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n event.preventDefault();\n break;\n }\n //right arrow\n case 39: {\n cell.tabIndex = '-1';\n let nextCell = cell.nextElementSibling;\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n else {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n event.preventDefault();\n break;\n }\n //enter\n //space\n case 13:\n case 32: {\n this.onYearSelect(event, index);\n event.preventDefault();\n break;\n }\n //escape\n case 27: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //tab\n case 9: {\n this.trapFocus(event);\n break;\n }\n default:\n //no op\n break;\n }\n }\n navigateToMonth(prev, groupIndex) {\n if (prev) {\n if (this.numberOfMonths === 1 || (groupIndex === 0)) {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n else {\n let prevMonthContainer = this.contentViewChild.nativeElement.children[groupIndex - 1];\n let cells = DomHandler.find(prevMonthContainer, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n let focusCell = cells[cells.length - 1];\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n if (this.numberOfMonths === 1 || (groupIndex === this.numberOfMonths - 1)) {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n else {\n let nextMonthContainer = this.contentViewChild.nativeElement.children[groupIndex + 1];\n let focusCell = DomHandler.findSingle(nextMonthContainer, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n }\n updateFocus() {\n let cell;\n if (this.navigationState) {\n if (this.navigationState.button) {\n this.initFocusableCell();\n if (this.navigationState.backward)\n DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-prev').focus();\n else\n DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-next').focus();\n }\n else {\n if (this.navigationState.backward) {\n let cells;\n if (this.currentView === 'month') {\n cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');\n }\n else if (this.currentView === 'year') {\n cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');\n }\n else {\n cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n }\n if (cells && cells.length > 0) {\n cell = cells[cells.length - 1];\n }\n }\n else {\n if (this.currentView === 'month') {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');\n }\n else if (this.currentView === 'year') {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');\n }\n else {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n }\n }\n if (cell) {\n cell.tabIndex = '0';\n cell.focus();\n }\n }\n this.navigationState = null;\n }\n else {\n this.initFocusableCell();\n }\n }\n initFocusableCell() {\n let cell;\n if (this.currentView === 'month') {\n let cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');\n let selectedCell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month.p-highlight');\n cells.forEach(cell => cell.tabIndex = -1);\n cell = selectedCell || cells[0];\n if (cells.length === 0) {\n let disabledCells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month.p-disabled[tabindex = \"0\"]');\n disabledCells.forEach(cell => cell.tabIndex = -1);\n }\n }\n else if (this.currentView === 'year') {\n let cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');\n let selectedCell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year.p-highlight');\n cells.forEach(cell => cell.tabIndex = -1);\n cell = selectedCell || cells[0];\n if (cells.length === 0) {\n let disabledCells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year.p-disabled[tabindex = \"0\"]');\n disabledCells.forEach(cell => cell.tabIndex = -1);\n }\n }\n else {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, 'span.p-highlight');\n if (!cell) {\n let todayCell = DomHandler.findSingle(this.contentViewChild.nativeElement, 'td.p-datepicker-today span:not(.p-disabled):not(.p-ink)');\n if (todayCell)\n cell = todayCell;\n else\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n }\n }\n if (cell) {\n cell.tabIndex = '0';\n if (!this.preventFocus && (!this.navigationState || !this.navigationState.button)) {\n setTimeout(() => {\n cell.focus();\n }, 1);\n }\n this.preventFocus = false;\n }\n }\n trapFocus(event) {\n let focusableElements = DomHandler.getFocusableElements(this.contentViewChild.nativeElement);\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n }\n else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0) {\n if (this.focusTrap) {\n focusableElements[focusableElements.length - 1].focus();\n }\n else {\n if (focusedIndex === -1)\n return this.hideOverlay();\n else if (focusedIndex === 0)\n return;\n }\n }\n else {\n focusableElements[focusedIndex - 1].focus();\n }\n }\n else {\n if (focusedIndex == -1 || focusedIndex === (focusableElements.length - 1)) {\n if (!this.focusTrap && focusedIndex != -1)\n return this.hideOverlay();\n else\n focusableElements[0].focus();\n }\n else {\n focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n event.preventDefault();\n }\n onMonthDropdownChange(m) {\n this.currentMonth = parseInt(m);\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n onYearDropdownChange(y) {\n this.currentYear = parseInt(y);\n this.onYearChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n validateTime(hour, minute, second, pm) {\n let value = this.value;\n const convertedHour = this.convertTo24Hour(hour, pm);\n if (this.isRangeSelection()) {\n value = this.value[1] || this.value[0];\n }\n if (this.isMultipleSelection()) {\n value = this.value[this.value.length - 1];\n }\n const valueDateString = value ? value.toDateString() : null;\n if (this.minDate && valueDateString && this.minDate.toDateString() === valueDateString) {\n if (this.minDate.getHours() > convertedHour) {\n return false;\n }\n if (this.minDate.getHours() === convertedHour) {\n if (this.minDate.getMinutes() > minute) {\n return false;\n }\n if (this.minDate.getMinutes() === minute) {\n if (this.minDate.getSeconds() > second) {\n return false;\n }\n }\n }\n }\n if (this.maxDate && valueDateString && this.maxDate.toDateString() === valueDateString) {\n if (this.maxDate.getHours() < convertedHour) {\n return false;\n }\n if (this.maxDate.getHours() === convertedHour) {\n if (this.maxDate.getMinutes() < minute) {\n return false;\n }\n if (this.maxDate.getMinutes() === minute) {\n if (this.maxDate.getSeconds() < second) {\n return false;\n }\n }\n }\n }\n return true;\n }\n incrementHour(event) {\n const prevHour = this.currentHour;\n let newHour = this.currentHour + this.stepHour;\n let newPM = this.pm;\n if (this.hourFormat == '24')\n newHour = (newHour >= 24) ? (newHour - 24) : newHour;\n else if (this.hourFormat == '12') {\n // Before the AM/PM break, now after\n if (prevHour < 12 && newHour > 11) {\n newPM = !this.pm;\n }\n newHour = (newHour >= 13) ? (newHour - 12) : newHour;\n }\n if (this.validateTime(newHour, this.currentMinute, this.currentSecond, newPM)) {\n this.currentHour = newHour;\n this.pm = newPM;\n }\n event.preventDefault();\n }\n onTimePickerElementMouseDown(event, type, direction) {\n if (!this.disabled) {\n this.repeat(event, null, type, direction);\n event.preventDefault();\n }\n }\n onTimePickerElementMouseUp(event) {\n if (!this.disabled) {\n this.clearTimePickerTimer();\n this.updateTime();\n }\n }\n onTimePickerElementMouseLeave() {\n if (!this.disabled && this.timePickerTimer) {\n this.clearTimePickerTimer();\n this.updateTime();\n }\n }\n repeat(event, interval, type, direction) {\n let i = interval || 500;\n this.clearTimePickerTimer();\n this.timePickerTimer = setTimeout(() => {\n this.repeat(event, 100, type, direction);\n this.cd.markForCheck();\n }, i);\n switch (type) {\n case 0:\n if (direction === 1)\n this.incrementHour(event);\n else\n this.decrementHour(event);\n break;\n case 1:\n if (direction === 1)\n this.incrementMinute(event);\n else\n this.decrementMinute(event);\n break;\n case 2:\n if (direction === 1)\n this.incrementSecond(event);\n else\n this.decrementSecond(event);\n break;\n }\n this.updateInputfield();\n }\n clearTimePickerTimer() {\n if (this.timePickerTimer) {\n clearTimeout(this.timePickerTimer);\n this.timePickerTimer = null;\n }\n }\n decrementHour(event) {\n let newHour = this.currentHour - this.stepHour;\n let newPM = this.pm;\n if (this.hourFormat == '24')\n newHour = (newHour < 0) ? (24 + newHour) : newHour;\n else if (this.hourFormat == '12') {\n // If we were at noon/midnight, then switch\n if (this.currentHour === 12) {\n newPM = !this.pm;\n }\n newHour = (newHour <= 0) ? (12 + newHour) : newHour;\n }\n if (this.validateTime(newHour, this.currentMinute, this.currentSecond, newPM)) {\n this.currentHour = newHour;\n this.pm = newPM;\n }\n event.preventDefault();\n }\n incrementMinute(event) {\n let newMinute = this.currentMinute + this.stepMinute;\n newMinute = (newMinute > 59) ? newMinute - 60 : newMinute;\n if (this.validateTime(this.currentHour, newMinute, this.currentSecond, this.pm)) {\n this.currentMinute = newMinute;\n }\n event.preventDefault();\n }\n decrementMinute(event) {\n let newMinute = this.currentMinute - this.stepMinute;\n newMinute = (newMinute < 0) ? 60 + newMinute : newMinute;\n if (this.validateTime(this.currentHour, newMinute, this.currentSecond, this.pm)) {\n this.currentMinute = newMinute;\n }\n event.preventDefault();\n }\n incrementSecond(event) {\n let newSecond = this.currentSecond + this.stepSecond;\n newSecond = (newSecond > 59) ? newSecond - 60 : newSecond;\n if (this.validateTime(this.currentHour, this.currentMinute, newSecond, this.pm)) {\n this.currentSecond = newSecond;\n }\n event.preventDefault();\n }\n decrementSecond(event) {\n let newSecond = this.currentSecond - this.stepSecond;\n newSecond = (newSecond < 0) ? 60 + newSecond : newSecond;\n if (this.validateTime(this.currentHour, this.currentMinute, newSecond, this.pm)) {\n this.currentSecond = newSecond;\n }\n event.preventDefault();\n }\n updateTime() {\n let value = this.value;\n if (this.isRangeSelection()) {\n value = this.value[1] || this.value[0];\n }\n if (this.isMultipleSelection()) {\n value = this.value[this.value.length - 1];\n }\n value = value ? new Date(value.getTime()) : new Date();\n if (this.hourFormat == '12') {\n if (this.currentHour === 12)\n value.setHours(this.pm ? 12 : 0);\n else\n value.setHours(this.pm ? this.currentHour + 12 : this.currentHour);\n }\n else {\n value.setHours(this.currentHour);\n }\n value.setMinutes(this.currentMinute);\n value.setSeconds(this.currentSecond);\n if (this.isRangeSelection()) {\n if (this.value[1])\n value = [this.value[0], value];\n else\n value = [value, null];\n }\n if (this.isMultipleSelection()) {\n value = [...this.value.slice(0, -1), value];\n }\n this.updateModel(value);\n this.onSelect.emit(value);\n this.updateInputfield();\n }\n toggleAMPM(event) {\n const newPM = !this.pm;\n if (this.validateTime(this.currentHour, this.currentMinute, this.currentSecond, newPM)) {\n this.pm = newPM;\n this.updateTime();\n }\n event.preventDefault();\n }\n onUserInput(event) {\n // IE 11 Workaround for input placeholder : https://github.com/primefaces/primeng/issues/2026\n if (!this.isKeydown) {\n return;\n }\n this.isKeydown = false;\n let val = event.target.value;\n try {\n let value = this.parseValueFromString(val);\n if (this.isValidSelection(value)) {\n this.updateModel(value);\n this.updateUI();\n }\n }\n catch (err) {\n //invalid date\n let value = this.keepInvalid ? val : null;\n this.updateModel(value);\n }\n this.filled = val != null && val.length;\n this.onInput.emit(event);\n }\n isValidSelection(value) {\n let isValid = true;\n if (this.isSingleSelection()) {\n if (!this.isSelectable(value.getDate(), value.getMonth(), value.getFullYear(), false)) {\n isValid = false;\n }\n }\n else if (value.every(v => this.isSelectable(v.getDate(), v.getMonth(), v.getFullYear(), false))) {\n if (this.isRangeSelection()) {\n isValid = value.length > 1 && value[1] > value[0] ? true : false;\n }\n }\n return isValid;\n }\n parseValueFromString(text) {\n if (!text || text.trim().length === 0) {\n return null;\n }\n let value;\n if (this.isSingleSelection()) {\n value = this.parseDateTime(text);\n }\n else if (this.isMultipleSelection()) {\n let tokens = text.split(this.multipleSeparator);\n value = [];\n for (let token of tokens) {\n value.push(this.parseDateTime(token.trim()));\n }\n }\n else if (this.isRangeSelection()) {\n let tokens = text.split(' ' + this.rangeSeparator + ' ');\n value = [];\n for (let i = 0; i < tokens.length; i++) {\n value[i] = this.parseDateTime(tokens[i].trim());\n }\n }\n return value;\n }\n parseDateTime(text) {\n let date;\n let parts = text.split(' ');\n if (this.timeOnly) {\n date = new Date();\n this.populateTime(date, parts[0], parts[1]);\n }\n else {\n const dateFormat = this.getDateFormat();\n if (this.showTime) {\n let ampm = this.hourFormat == '12' ? parts.pop() : null;\n let timeString = parts.pop();\n date = this.parseDate(parts.join(' '), dateFormat);\n this.populateTime(date, timeString, ampm);\n }\n else {\n date = this.parseDate(text, dateFormat);\n }\n }\n return date;\n }\n populateTime(value, timeString, ampm) {\n if (this.hourFormat == '12' && !ampm) {\n throw 'Invalid Time';\n }\n this.pm = (ampm === 'PM' || ampm === 'pm');\n let time = this.parseTime(timeString);\n value.setHours(time.hour);\n value.setMinutes(time.minute);\n value.setSeconds(time.second);\n }\n isValidDate(date) {\n return date instanceof Date && ObjectUtils.isNotEmpty(date);\n }\n updateUI() {\n let propValue = this.value;\n if (Array.isArray(propValue)) {\n propValue = propValue[0];\n }\n let val = this.defaultDate && this.isValidDate(this.defaultDate) && !this.value ? this.defaultDate : (propValue && this.isValidDate(propValue) ? propValue : new Date());\n this.currentMonth = val.getMonth();\n this.currentYear = val.getFullYear();\n this.createMonths(this.currentMonth, this.currentYear);\n if (this.showTime || this.timeOnly) {\n this.setCurrentHourPM(val.getHours());\n this.currentMinute = val.getMinutes();\n this.currentSecond = val.getSeconds();\n }\n }\n showOverlay() {\n if (!this.overlayVisible) {\n this.updateUI();\n if (!this.touchUI) {\n this.preventFocus = true;\n }\n this.overlayVisible = true;\n }\n }\n hideOverlay() {\n this.overlayVisible = false;\n this.clearTimePickerTimer();\n if (this.touchUI) {\n this.disableModality();\n }\n this.cd.markForCheck();\n }\n toggle() {\n if (!this.inline) {\n if (!this.overlayVisible) {\n this.showOverlay();\n this.inputfieldViewChild.nativeElement.focus();\n }\n else {\n this.hideOverlay();\n }\n }\n }\n onOverlayAnimationStart(event) {\n switch (event.toState) {\n case 'visible':\n case 'visibleTouchUI':\n if (!this.inline) {\n this.overlay = event.element;\n this.overlay.setAttribute(this.attributeSelector, '');\n this.appendOverlay();\n this.updateFocus();\n if (this.autoZIndex) {\n if (this.touchUI)\n ZIndexUtils.set('modal', this.overlay, this.baseZIndex || this.config.zIndex.modal);\n else\n ZIndexUtils.set('overlay', this.overlay, this.baseZIndex || this.config.zIndex.overlay);\n }\n this.alignOverlay();\n this.onShow.emit(event);\n }\n break;\n case 'void':\n this.onOverlayHide();\n this.onClose.emit(event);\n break;\n }\n }\n onOverlayAnimationDone(event) {\n switch (event.toState) {\n case 'visible':\n case 'visibleTouchUI':\n if (!this.inline) {\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n }\n break;\n case 'void':\n if (this.autoZIndex) {\n ZIndexUtils.clear(event.element);\n }\n break;\n }\n }\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.overlay);\n else\n DomHandler.appendChild(this.overlay, this.appendTo);\n }\n }\n restoreOverlayAppend() {\n if (this.overlay && this.appendTo) {\n this.el.nativeElement.appendChild(this.overlay);\n }\n }\n alignOverlay() {\n if (this.touchUI) {\n this.enableModality(this.overlay);\n }\n else if (this.overlay) {\n if (this.appendTo) {\n if (this.view === 'date') {\n this.overlay.style.width = DomHandler.getOuterWidth(this.overlay) + 'px';\n this.overlay.style.minWidth = DomHandler.getOuterWidth(this.inputfieldViewChild.nativeElement) + 'px';\n }\n else {\n this.overlay.style.width = DomHandler.getOuterWidth(this.inputfieldViewChild.nativeElement) + 'px';\n }\n DomHandler.absolutePosition(this.overlay, this.inputfieldViewChild.nativeElement);\n }\n else {\n DomHandler.relativePosition(this.overlay, this.inputfieldViewChild.nativeElement);\n }\n }\n }\n enableModality(element) {\n if (!this.mask) {\n this.mask = document.createElement('div');\n this.mask.style.zIndex = String(parseInt(element.style.zIndex) - 1);\n let maskStyleClass = 'p-component-overlay p-datepicker-mask p-datepicker-mask-scrollblocker p-component-overlay p-component-overlay-enter';\n DomHandler.addMultipleClasses(this.mask, maskStyleClass);\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event) => {\n this.disableModality();\n });\n document.body.appendChild(this.mask);\n DomHandler.addClass(document.body, 'p-overflow-hidden');\n }\n }\n disableModality() {\n if (this.mask) {\n DomHandler.addClass(this.mask, 'p-component-overlay-leave');\n this.animationEndListener = this.destroyMask.bind(this);\n this.mask.addEventListener('animationend', this.animationEndListener);\n }\n }\n destroyMask() {\n document.body.removeChild(this.mask);\n let bodyChildren = document.body.children;\n let hasBlockerMasks;\n for (let i = 0; i < bodyChildren.length; i++) {\n let bodyChild = bodyChildren[i];\n if (DomHandler.hasClass(bodyChild, 'p-datepicker-mask-scrollblocker')) {\n hasBlockerMasks = true;\n break;\n }\n }\n if (!hasBlockerMasks) {\n DomHandler.removeClass(document.body, 'p-overflow-hidden');\n }\n this.unbindAnimationEndListener();\n this.unbindMaskClickListener();\n this.mask = null;\n }\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n unbindAnimationEndListener() {\n if (this.animationEndListener && this.mask) {\n this.mask.removeEventListener('animationend', this.animationEndListener);\n this.animationEndListener = null;\n }\n }\n writeValue(value) {\n this.value = value;\n if (this.value && typeof this.value === 'string') {\n try {\n this.value = this.parseValueFromString(this.value);\n }\n catch (_a) {\n if (this.keepInvalid) {\n this.value = value;\n }\n }\n }\n this.updateInputfield();\n this.updateUI();\n this.cd.markForCheck();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n getDateFormat() {\n return this.dateFormat || this.getTranslation('dateFormat');\n }\n getFirstDateOfWeek() {\n return this._firstDayOfWeek || this.getTranslation(TranslationKeys.FIRST_DAY_OF_WEEK);\n }\n // Ported from jquery-ui datepicker formatDate\n formatDate(date, format) {\n if (!date) {\n return '';\n }\n let iFormat;\n const lookAhead = (match) => {\n const matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match);\n if (matches) {\n iFormat++;\n }\n return matches;\n }, formatNumber = (match, value, len) => {\n let num = '' + value;\n if (lookAhead(match)) {\n while (num.length < len) {\n num = '0' + num;\n }\n }\n return num;\n }, formatName = (match, value, shortNames, longNames) => {\n return (lookAhead(match) ? longNames[value] : shortNames[value]);\n };\n let output = '';\n let literal = false;\n if (date) {\n for (iFormat = 0; iFormat < format.length; iFormat++) {\n if (literal) {\n if (format.charAt(iFormat) === '\\'' && !lookAhead('\\'')) {\n literal = false;\n }\n else {\n output += format.charAt(iFormat);\n }\n }\n else {\n switch (format.charAt(iFormat)) {\n case 'd':\n output += formatNumber('d', date.getDate(), 2);\n break;\n case 'D':\n output += formatName('D', date.getDay(), this.getTranslation(TranslationKeys.DAY_NAMES_SHORT), this.getTranslation(TranslationKeys.DAY_NAMES));\n break;\n case 'o':\n output += formatNumber('o', Math.round((new Date(date.getFullYear(), date.getMonth(), date.getDate()).getTime() -\n new Date(date.getFullYear(), 0, 0).getTime()) / 86400000), 3);\n break;\n case 'm':\n output += formatNumber('m', date.getMonth() + 1, 2);\n break;\n case 'M':\n output += formatName('M', date.getMonth(), this.getTranslation(TranslationKeys.MONTH_NAMES_SHORT), this.getTranslation(TranslationKeys.MONTH_NAMES));\n break;\n case 'y':\n output += lookAhead('y') ? date.getFullYear() : (date.getFullYear() % 100 < 10 ? '0' : '') + (date.getFullYear() % 100);\n break;\n case '@':\n output += date.getTime();\n break;\n case '!':\n output += date.getTime() * 10000 + this.ticksTo1970;\n break;\n case '\\'':\n if (lookAhead('\\'')) {\n output += '\\'';\n }\n else {\n literal = true;\n }\n break;\n default:\n output += format.charAt(iFormat);\n }\n }\n }\n }\n return output;\n }\n formatTime(date) {\n if (!date) {\n return '';\n }\n let output = '';\n let hours = date.getHours();\n let minutes = date.getMinutes();\n let seconds = date.getSeconds();\n if (this.hourFormat == '12' && hours > 11 && hours != 12) {\n hours -= 12;\n }\n if (this.hourFormat == '12') {\n output += hours === 0 ? 12 : (hours < 10) ? '0' + hours : hours;\n }\n else {\n output += (hours < 10) ? '0' + hours : hours;\n }\n output += ':';\n output += (minutes < 10) ? '0' + minutes : minutes;\n if (this.showSeconds) {\n output += ':';\n output += (seconds < 10) ? '0' + seconds : seconds;\n }\n if (this.hourFormat == '12') {\n output += date.getHours() > 11 ? ' PM' : ' AM';\n }\n return output;\n }\n parseTime(value) {\n let tokens = value.split(':');\n let validTokenLength = this.showSeconds ? 3 : 2;\n if (tokens.length !== validTokenLength) {\n throw \"Invalid time\";\n }\n let h = parseInt(tokens[0]);\n let m = parseInt(tokens[1]);\n let s = this.showSeconds ? parseInt(tokens[2]) : null;\n if (isNaN(h) || isNaN(m) || h > 23 || m > 59 || (this.hourFormat == '12' && h > 12) || (this.showSeconds && (isNaN(s) || s > 59))) {\n throw \"Invalid time\";\n }\n else {\n if (this.hourFormat == '12') {\n if (h !== 12 && this.pm) {\n h += 12;\n }\n else if (!this.pm && h === 12) {\n h -= 12;\n }\n }\n return { hour: h, minute: m, second: s };\n }\n }\n // Ported from jquery-ui datepicker parseDate\n parseDate(value, format) {\n if (format == null || value == null) {\n throw \"Invalid arguments\";\n }\n value = (typeof value === \"object\" ? value.toString() : value + \"\");\n if (value === \"\") {\n return null;\n }\n let iFormat, dim, extra, iValue = 0, shortYearCutoff = (typeof this.shortYearCutoff !== \"string\" ? this.shortYearCutoff : new Date().getFullYear() % 100 + parseInt(this.shortYearCutoff, 10)), year = -1, month = -1, day = -1, doy = -1, literal = false, date, lookAhead = (match) => {\n let matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match);\n if (matches) {\n iFormat++;\n }\n return matches;\n }, getNumber = (match) => {\n let isDoubled = lookAhead(match), size = (match === \"@\" ? 14 : (match === \"!\" ? 20 :\n (match === \"y\" && isDoubled ? 4 : (match === \"o\" ? 3 : 2)))), minSize = (match === \"y\" ? size : 1), digits = new RegExp(\"^\\\\d{\" + minSize + \",\" + size + \"}\"), num = value.substring(iValue).match(digits);\n if (!num) {\n throw \"Missing number at position \" + iValue;\n }\n iValue += num[0].length;\n return parseInt(num[0], 10);\n }, getName = (match, shortNames, longNames) => {\n let index = -1;\n let arr = lookAhead(match) ? longNames : shortNames;\n let names = [];\n for (let i = 0; i < arr.length; i++) {\n names.push([i, arr[i]]);\n }\n names.sort((a, b) => {\n return -(a[1].length - b[1].length);\n });\n for (let i = 0; i < names.length; i++) {\n let name = names[i][1];\n if (value.substr(iValue, name.length).toLowerCase() === name.toLowerCase()) {\n index = names[i][0];\n iValue += name.length;\n break;\n }\n }\n if (index !== -1) {\n return index + 1;\n }\n else {\n throw \"Unknown name at position \" + iValue;\n }\n }, checkLiteral = () => {\n if (value.charAt(iValue) !== format.charAt(iFormat)) {\n throw \"Unexpected literal at position \" + iValue;\n }\n iValue++;\n };\n if (this.view === 'month') {\n day = 1;\n }\n for (iFormat = 0; iFormat < format.length; iFormat++) {\n if (literal) {\n if (format.charAt(iFormat) === \"'\" && !lookAhead(\"'\")) {\n literal = false;\n }\n else {\n checkLiteral();\n }\n }\n else {\n switch (format.charAt(iFormat)) {\n case \"d\":\n day = getNumber(\"d\");\n break;\n case \"D\":\n getName(\"D\", this.getTranslation(TranslationKeys.DAY_NAMES_SHORT), this.getTranslation(TranslationKeys.DAY_NAMES));\n break;\n case \"o\":\n doy = getNumber(\"o\");\n break;\n case \"m\":\n month = getNumber(\"m\");\n break;\n case \"M\":\n month = getName(\"M\", this.getTranslation(TranslationKeys.MONTH_NAMES_SHORT), this.getTranslation(TranslationKeys.MONTH_NAMES));\n break;\n case \"y\":\n year = getNumber(\"y\");\n break;\n case \"@\":\n date = new Date(getNumber(\"@\"));\n year = date.getFullYear();\n month = date.getMonth() + 1;\n day = date.getDate();\n break;\n case \"!\":\n date = new Date((getNumber(\"!\") - this.ticksTo1970) / 10000);\n year = date.getFullYear();\n month = date.getMonth() + 1;\n day = date.getDate();\n break;\n case \"'\":\n if (lookAhead(\"'\")) {\n checkLiteral();\n }\n else {\n literal = true;\n }\n break;\n default:\n checkLiteral();\n }\n }\n }\n if (iValue < value.length) {\n extra = value.substr(iValue);\n if (!/^\\s+/.test(extra)) {\n throw \"Extra/unparsed characters found in date: \" + extra;\n }\n }\n if (year === -1) {\n year = new Date().getFullYear();\n }\n else if (year < 100) {\n year += new Date().getFullYear() - new Date().getFullYear() % 100 +\n (year <= shortYearCutoff ? 0 : -100);\n }\n if (doy > -1) {\n month = 1;\n day = doy;\n do {\n dim = this.getDaysCountInMonth(year, month - 1);\n if (day <= dim) {\n break;\n }\n month++;\n day -= dim;\n } while (true);\n }\n date = this.daylightSavingAdjust(new Date(year, month - 1, day));\n if (date.getFullYear() !== year || date.getMonth() + 1 !== month || date.getDate() !== day) {\n throw \"Invalid date\"; // E.g. 31/02/00\n }\n return date;\n }\n daylightSavingAdjust(date) {\n if (!date) {\n return null;\n }\n date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0);\n return date;\n }\n updateFilledState() {\n this.filled = this.inputFieldValue && this.inputFieldValue != '';\n }\n onTodayButtonClick(event) {\n let date = new Date();\n let dateMeta = { day: date.getDate(), month: date.getMonth(), year: date.getFullYear(), otherMonth: date.getMonth() !== this.currentMonth || date.getFullYear() !== this.currentYear, today: true, selectable: true };\n this.onDateSelect(event, dateMeta);\n this.onTodayClick.emit(event);\n }\n onClearButtonClick(event) {\n this.updateModel(null);\n this.updateInputfield();\n this.hideOverlay();\n this.onClearClick.emit(event);\n }\n createResponsiveStyle() {\n if (this.numberOfMonths > 1 && this.responsiveOptions) {\n if (!this.responsiveStyleElement) {\n this.responsiveStyleElement = document.createElement('style');\n this.responsiveStyleElement.type = 'text/css';\n document.body.appendChild(this.responsiveStyleElement);\n }\n let innerHTML = '';\n if (this.responsiveOptions) {\n let responsiveOptions = [...this.responsiveOptions]\n .filter(o => !!(o.breakpoint && o.numMonths))\n .sort((o1, o2) => -1 * o1.breakpoint.localeCompare(o2.breakpoint, undefined, { numeric: true }));\n for (let i = 0; i < responsiveOptions.length; i++) {\n let { breakpoint, numMonths } = responsiveOptions[i];\n let styles = `\n .p-datepicker[${this.attributeSelector}] .p-datepicker-group:nth-child(${numMonths}) .p-datepicker-next {\n display: inline-flex !important;\n }\n `;\n for (let j = numMonths; j < this.numberOfMonths; j++) {\n styles += `\n .p-datepicker[${this.attributeSelector}] .p-datepicker-group:nth-child(${j + 1}) {\n display: none !important;\n }\n `;\n }\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n ${styles}\n }\n `;\n }\n }\n this.responsiveStyleElement.innerHTML = innerHTML;\n }\n }\n destroyResponsiveStyleElement() {\n if (this.responsiveStyleElement) {\n this.responsiveStyleElement.remove();\n this.responsiveStyleElement = null;\n }\n }\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n this.zone.runOutsideAngular(() => {\n const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';\n this.documentClickListener = this.renderer.listen(documentTarget, 'mousedown', (event) => {\n if (this.isOutsideClicked(event) && this.overlayVisible) {\n this.zone.run(() => {\n this.hideOverlay();\n this.onClickOutside.emit(event);\n this.cd.markForCheck();\n });\n }\n });\n });\n }\n }\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n bindDocumentResizeListener() {\n if (!this.documentResizeListener && !this.touchUI) {\n this.documentResizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.documentResizeListener);\n }\n }\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.containerViewChild.nativeElement, () => {\n if (this.overlayVisible) {\n this.hideOverlay();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n isOutsideClicked(event) {\n return !(this.el.nativeElement.isSameNode(event.target) || this.isNavIconClicked(event) ||\n this.el.nativeElement.contains(event.target) || (this.overlay && this.overlay.contains(event.target)));\n }\n isNavIconClicked(event) {\n return (DomHandler.hasClass(event.target, 'p-datepicker-prev') || DomHandler.hasClass(event.target, 'p-datepicker-prev-icon')\n || DomHandler.hasClass(event.target, 'p-datepicker-next') || DomHandler.hasClass(event.target, 'p-datepicker-next-icon'));\n }\n onWindowResize() {\n if (this.overlayVisible && !DomHandler.isAndroid()) {\n this.hideOverlay();\n }\n }\n onOverlayHide() {\n this.currentView = this.view;\n if (this.mask) {\n this.destroyMask();\n }\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.overlay = null;\n }\n ngOnDestroy() {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n if (this.overlay && this.autoZIndex) {\n ZIndexUtils.clear(this.overlay);\n }\n this.destroyResponsiveStyleElement();\n this.clearTimePickerTimer();\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n}\nCalendar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Calendar, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nCalendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Calendar, selector: \"p-calendar\", inputs: { style: \"style\", styleClass: \"styleClass\", inputStyle: \"inputStyle\", inputId: \"inputId\", name: \"name\", inputStyleClass: \"inputStyleClass\", placeholder: \"placeholder\", ariaLabelledBy: \"ariaLabelledBy\", iconAriaLabel: \"iconAriaLabel\", disabled: \"disabled\", dateFormat: \"dateFormat\", multipleSeparator: \"multipleSeparator\", rangeSeparator: \"rangeSeparator\", inline: \"inline\", showOtherMonths: \"showOtherMonths\", selectOtherMonths: \"selectOtherMonths\", showIcon: \"showIcon\", icon: \"icon\", appendTo: \"appendTo\", readonlyInput: \"readonlyInput\", shortYearCutoff: \"shortYearCutoff\", monthNavigator: \"monthNavigator\", yearNavigator: \"yearNavigator\", hourFormat: \"hourFormat\", timeOnly: \"timeOnly\", stepHour: \"stepHour\", stepMinute: \"stepMinute\", stepSecond: \"stepSecond\", showSeconds: \"showSeconds\", required: \"required\", showOnFocus: \"showOnFocus\", showWeek: \"showWeek\", showClear: \"showClear\", dataType: \"dataType\", selectionMode: \"selectionMode\", maxDateCount: \"maxDateCount\", showButtonBar: \"showButtonBar\", todayButtonStyleClass: \"todayButtonStyleClass\", clearButtonStyleClass: \"clearButtonStyleClass\", autoZIndex: \"autoZIndex\", baseZIndex: \"baseZIndex\", panelStyleClass: \"panelStyleClass\", panelStyle: \"panelStyle\", keepInvalid: \"keepInvalid\", hideOnDateTimeSelect: \"hideOnDateTimeSelect\", touchUI: \"touchUI\", timeSeparator: \"timeSeparator\", focusTrap: \"focusTrap\", showTransitionOptions: \"showTransitionOptions\", hideTransitionOptions: \"hideTransitionOptions\", tabindex: \"tabindex\", view: \"view\", defaultDate: \"defaultDate\", minDate: \"minDate\", maxDate: \"maxDate\", disabledDates: \"disabledDates\", disabledDays: \"disabledDays\", yearRange: \"yearRange\", showTime: \"showTime\", responsiveOptions: \"responsiveOptions\", numberOfMonths: \"numberOfMonths\", firstDayOfWeek: \"firstDayOfWeek\", locale: \"locale\" }, outputs: { onFocus: \"onFocus\", onBlur: \"onBlur\", onClose: \"onClose\", onSelect: \"onSelect\", onClear: \"onClear\", onInput: \"onInput\", onTodayClick: \"onTodayClick\", onClearClick: \"onClearClick\", onMonthChange: \"onMonthChange\", onYearChange: \"onYearChange\", onClickOutside: \"onClickOutside\", onShow: \"onShow\" }, host: { properties: { \"class.p-inputwrapper-filled\": \"filled\", \"class.p-inputwrapper-focus\": \"focus\", \"class.p-calendar-clearable\": \"showClear && !disabled\" }, classAttribute: \"p-element p-inputwrapper\" }, providers: [CALENDAR_VALUE_ACCESSOR], queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"containerViewChild\", first: true, predicate: [\"container\"], descendants: true }, { propertyName: \"inputfieldViewChild\", first: true, predicate: [\"inputfield\"], descendants: true }, { propertyName: \"content\", first: true, predicate: [\"contentWrapper\"], descendants: true }], ngImport: i0, template: `\n \n \n \n \n \n \n
    1, 'p-datepicker-monthpicker': (view === 'month'), 'p-datepicker-touch-ui': touchUI}\"\n [@overlayAnimation]=\"touchUI ? {value: 'visibleTouchUI', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}:\n {value: 'visible', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\"\n [@.disabled]=\"inline === true\" (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\" (@overlayAnimation.done)=\"onOverlayAnimationDone($event)\" (click)=\"onOverlayClick($event)\" *ngIf=\"inline || overlayVisible\">\n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n {{yearPickerValues()[0]}} - {{yearPickerValues()[yearPickerValues().length - 1]}}\n \n \n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n {{getTranslation('weekHeader')}}\n \n {{weekDay}}\n
    \n \n {{month.weekNumbers[j]}}\n \n \n \n \n {{date.day}}\n \n \n \n
    \n
    \n
    \n
    \n
    \n \n {{m}}\n \n
    \n
    \n \n {{y}}\n \n
    \n
    \n
    \n
    \n \n 0{{currentHour}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentMinute}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentSecond}}\n \n
    \n
    \n \n {{pm ? 'PM' : 'AM'}}\n \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n
    \n `, isInline: true, styles: [\".p-calendar{position:relative;display:inline-flex;max-width:100%}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{display:inline-block;position:static;overflow-x:auto}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container .p-datepicker-group{flex:1 1 auto}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-calendar-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-calendar-clearable{position:relative}\\n\"], directives: [{ type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i3.ButtonDirective, selector: \"[pButton]\", inputs: [\"iconPos\", \"loadingIcon\", \"label\", \"icon\", \"loading\"] }, { type: i4.Ripple, selector: \"[pRipple]\" }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i2.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }], animations: [\n trigger('overlayAnimation', [\n state('visibleTouchUI', style({\n transform: 'translate(-50%,-50%)',\n opacity: 1\n })),\n transition('void => visible', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}', style({ opacity: 1, transform: '*' }))\n ]),\n transition('visible => void', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ]),\n transition('void => visibleTouchUI', [\n style({ opacity: 0, transform: 'translate3d(-50%, -40%, 0) scale(0.9)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition('visibleTouchUI => void', [\n animate(('{{hideTransitionParams}}'), style({\n opacity: 0,\n transform: 'translate3d(-50%, -40%, 0) scale(0.9)'\n }))\n ])\n ])\n ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Calendar, decorators: [{\n type: Component,\n args: [{ selector: 'p-calendar', template: `\n \n \n \n \n \n \n
    1, 'p-datepicker-monthpicker': (view === 'month'), 'p-datepicker-touch-ui': touchUI}\"\n [@overlayAnimation]=\"touchUI ? {value: 'visibleTouchUI', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}:\n {value: 'visible', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\"\n [@.disabled]=\"inline === true\" (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\" (@overlayAnimation.done)=\"onOverlayAnimationDone($event)\" (click)=\"onOverlayClick($event)\" *ngIf=\"inline || overlayVisible\">\n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n {{yearPickerValues()[0]}} - {{yearPickerValues()[yearPickerValues().length - 1]}}\n \n \n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n {{getTranslation('weekHeader')}}\n \n {{weekDay}}\n
    \n \n {{month.weekNumbers[j]}}\n \n \n \n \n {{date.day}}\n \n \n \n
    \n
    \n
    \n
    \n
    \n \n {{m}}\n \n
    \n
    \n \n {{y}}\n \n
    \n
    \n
    \n
    \n \n 0{{currentHour}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentMinute}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentSecond}}\n \n
    \n
    \n \n {{pm ? 'PM' : 'AM'}}\n \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n
    \n `, animations: [\n trigger('overlayAnimation', [\n state('visibleTouchUI', style({\n transform: 'translate(-50%,-50%)',\n opacity: 1\n })),\n transition('void => visible', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}', style({ opacity: 1, transform: '*' }))\n ]),\n transition('visible => void', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ]),\n transition('void => visibleTouchUI', [\n style({ opacity: 0, transform: 'translate3d(-50%, -40%, 0) scale(0.9)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition('visibleTouchUI => void', [\n animate(('{{hideTransitionParams}}'), style({\n opacity: 0,\n transform: 'translate3d(-50%, -40%, 0) scale(0.9)'\n }))\n ])\n ])\n ], host: {\n 'class': 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focus',\n '[class.p-calendar-clearable]': 'showClear && !disabled'\n }, providers: [CALENDAR_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [\".p-calendar{position:relative;display:inline-flex;max-width:100%}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{display:inline-block;position:static;overflow-x:auto}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container .p-datepicker-group{flex:1 1 auto}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-calendar-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-calendar-clearable{position:relative}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1.PrimeNGConfig }, { type: i1.OverlayService }]; }, propDecorators: { style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], inputStyle: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], inputStyleClass: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], iconAriaLabel: [{\n type: Input\n }], disabled: [{\n type: Input\n }], dateFormat: [{\n type: Input\n }], multipleSeparator: [{\n type: Input\n }], rangeSeparator: [{\n type: Input\n }], inline: [{\n type: Input\n }], showOtherMonths: [{\n type: Input\n }], selectOtherMonths: [{\n type: Input\n }], showIcon: [{\n type: Input\n }], icon: [{\n type: Input\n }], appendTo: [{\n type: Input\n }], readonlyInput: [{\n type: Input\n }], shortYearCutoff: [{\n type: Input\n }], monthNavigator: [{\n type: Input\n }], yearNavigator: [{\n type: Input\n }], hourFormat: [{\n type: Input\n }], timeOnly: [{\n type: Input\n }], stepHour: [{\n type: Input\n }], stepMinute: [{\n type: Input\n }], stepSecond: [{\n type: Input\n }], showSeconds: [{\n type: Input\n }], required: [{\n type: Input\n }], showOnFocus: [{\n type: Input\n }], showWeek: [{\n type: Input\n }], showClear: [{\n type: Input\n }], dataType: [{\n type: Input\n }], selectionMode: [{\n type: Input\n }], maxDateCount: [{\n type: Input\n }], showButtonBar: [{\n type: Input\n }], todayButtonStyleClass: [{\n type: Input\n }], clearButtonStyleClass: [{\n type: Input\n }], autoZIndex: [{\n type: Input\n }], baseZIndex: [{\n type: Input\n }], panelStyleClass: [{\n type: Input\n }], panelStyle: [{\n type: Input\n }], keepInvalid: [{\n type: Input\n }], hideOnDateTimeSelect: [{\n type: Input\n }], touchUI: [{\n type: Input\n }], timeSeparator: [{\n type: Input\n }], focusTrap: [{\n type: Input\n }], showTransitionOptions: [{\n type: Input\n }], hideTransitionOptions: [{\n type: Input\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], onClose: [{\n type: Output\n }], onSelect: [{\n type: Output\n }], onClear: [{\n type: Output\n }], onInput: [{\n type: Output\n }], onTodayClick: [{\n type: Output\n }], onClearClick: [{\n type: Output\n }], onMonthChange: [{\n type: Output\n }], onYearChange: [{\n type: Output\n }], onClickOutside: [{\n type: Output\n }], onShow: [{\n type: Output\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], tabindex: [{\n type: Input\n }], containerViewChild: [{\n type: ViewChild,\n args: ['container', { static: false }]\n }], inputfieldViewChild: [{\n type: ViewChild,\n args: ['inputfield', { static: false }]\n }], content: [{\n type: ViewChild,\n args: ['contentWrapper', { static: false }]\n }], view: [{\n type: Input\n }], defaultDate: [{\n type: Input\n }], minDate: [{\n type: Input\n }], maxDate: [{\n type: Input\n }], disabledDates: [{\n type: Input\n }], disabledDays: [{\n type: Input\n }], yearRange: [{\n type: Input\n }], showTime: [{\n type: Input\n }], responsiveOptions: [{\n type: Input\n }], numberOfMonths: [{\n type: Input\n }], firstDayOfWeek: [{\n type: Input\n }], locale: [{\n type: Input\n }] } });\nclass CalendarModule {\n}\nCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CalendarModule, declarations: [Calendar], imports: [CommonModule, ButtonModule, SharedModule, RippleModule], exports: [Calendar, ButtonModule, SharedModule] });\nCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CalendarModule, imports: [[CommonModule, ButtonModule, SharedModule, RippleModule], ButtonModule, SharedModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CalendarModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, ButtonModule, SharedModule, RippleModule],\n exports: [Calendar, ButtonModule, SharedModule],\n declarations: [Calendar]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { CALENDAR_VALUE_ACCESSOR, Calendar, CalendarModule };\n","import * as i0 from '@angular/core';\nimport { Injectable, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ViewChild, ContentChildren, Directive, HostListener, Optional, NgModule } from '@angular/core';\nimport * as i4 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i9 from '@angular/forms';\nimport { FormsModule } from '@angular/forms';\nimport * as i1 from 'primeng/api';\nimport { FilterOperator, FilterMatchMode, PrimeTemplate, TranslationKeys, SharedModule } from 'primeng/api';\nimport * as i2 from 'primeng/paginator';\nimport { PaginatorModule } from 'primeng/paginator';\nimport * as i8 from 'primeng/inputtext';\nimport { InputTextModule } from 'primeng/inputtext';\nimport * as i11 from 'primeng/button';\nimport { ButtonModule } from 'primeng/button';\nimport { SelectButtonModule } from 'primeng/selectbutton';\nimport * as i6 from 'primeng/tristatecheckbox';\nimport { TriStateCheckboxModule } from 'primeng/tristatecheckbox';\nimport * as i7 from 'primeng/calendar';\nimport { CalendarModule } from 'primeng/calendar';\nimport * as i5 from 'primeng/inputnumber';\nimport { InputNumberModule } from 'primeng/inputnumber';\nimport * as i10 from 'primeng/dropdown';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';\nimport { Subject } from 'rxjs';\nimport * as i3 from '@angular/cdk/scrolling';\nimport { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';\nimport { trigger, transition, style, animate } from '@angular/animations';\n\nclass TableService {\n constructor() {\n this.sortSource = new Subject();\n this.selectionSource = new Subject();\n this.contextMenuSource = new Subject();\n this.valueSource = new Subject();\n this.totalRecordsSource = new Subject();\n this.columnsSource = new Subject();\n this.resetSource = new Subject();\n this.sortSource$ = this.sortSource.asObservable();\n this.selectionSource$ = this.selectionSource.asObservable();\n this.contextMenuSource$ = this.contextMenuSource.asObservable();\n this.valueSource$ = this.valueSource.asObservable();\n this.totalRecordsSource$ = this.totalRecordsSource.asObservable();\n this.columnsSource$ = this.columnsSource.asObservable();\n this.resetSource$ = this.resetSource.asObservable();\n }\n onSort(sortMeta) {\n this.sortSource.next(sortMeta);\n }\n onSelectionChange() {\n this.selectionSource.next(null);\n }\n onResetChange() {\n this.resetSource.next(null);\n }\n onContextMenu(data) {\n this.contextMenuSource.next(data);\n }\n onValueChange(value) {\n this.valueSource.next(value);\n }\n onTotalRecordsChange(value) {\n this.totalRecordsSource.next(value);\n }\n onColumnsChange(columns) {\n this.columnsSource.next(columns);\n }\n}\nTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableService, decorators: [{\n type: Injectable\n }] });\nclass Table {\n constructor(el, zone, tableService, cd, filterService, overlayService) {\n this.el = el;\n this.zone = zone;\n this.tableService = tableService;\n this.cd = cd;\n this.filterService = filterService;\n this.overlayService = overlayService;\n this.pageLinks = 5;\n this.alwaysShowPaginator = true;\n this.paginatorPosition = 'bottom';\n this.paginatorDropdownScrollHeight = '200px';\n this.currentPageReportTemplate = '{currentPage} of {totalPages}';\n this.showFirstLastIcon = true;\n this.showPageLinks = true;\n this.defaultSortOrder = 1;\n this.sortMode = 'single';\n this.resetPageOnSort = true;\n this.selectAllChange = new EventEmitter();\n this.selectionChange = new EventEmitter();\n this.contextMenuSelectionChange = new EventEmitter();\n this.contextMenuSelectionMode = \"separate\";\n this.rowTrackBy = (index, item) => item;\n this.lazy = false;\n this.lazyLoadOnInit = true;\n this.compareSelectionBy = 'deepEquals';\n this.csvSeparator = ',';\n this.exportFilename = 'download';\n this.filters = {};\n this.filterDelay = 300;\n this.expandedRowKeys = {};\n this.editingRowKeys = {};\n this.rowExpandMode = 'multiple';\n this.scrollDirection = \"vertical\";\n this.virtualScrollDelay = 250;\n this.virtualRowHeight = 28;\n this.columnResizeMode = 'fit';\n this.loadingIcon = 'pi pi-spinner';\n this.showLoader = true;\n this.showInitialSortBadge = true;\n this.stateStorage = 'session';\n this.editMode = 'cell';\n this.groupRowsByOrder = 1;\n this.responsiveLayout = 'stack';\n this.breakpoint = '960px';\n this.onRowSelect = new EventEmitter();\n this.onRowUnselect = new EventEmitter();\n this.onPage = new EventEmitter();\n this.onSort = new EventEmitter();\n this.onFilter = new EventEmitter();\n this.onLazyLoad = new EventEmitter();\n this.onRowExpand = new EventEmitter();\n this.onRowCollapse = new EventEmitter();\n this.onContextMenuSelect = new EventEmitter();\n this.onColResize = new EventEmitter();\n this.onColReorder = new EventEmitter();\n this.onRowReorder = new EventEmitter();\n this.onEditInit = new EventEmitter();\n this.onEditComplete = new EventEmitter();\n this.onEditCancel = new EventEmitter();\n this.onHeaderCheckboxToggle = new EventEmitter();\n this.sortFunction = new EventEmitter();\n this.firstChange = new EventEmitter();\n this.rowsChange = new EventEmitter();\n this.onStateSave = new EventEmitter();\n this.onStateRestore = new EventEmitter();\n this._value = [];\n this._totalRecords = 0;\n this._first = 0;\n this.selectionKeys = {};\n this._sortOrder = 1;\n this._selectAll = null;\n this.columnResizing = false;\n this.rowGroupHeaderStyleObject = {};\n this.id = UniqueComponentId();\n this.virtualScrollInitialized = false;\n }\n ngOnInit() {\n if (this.lazy && this.lazyLoadOnInit) {\n if (!this.virtualScroll) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n if (this.restoringFilter) {\n this.restoringFilter = false;\n }\n }\n if (this.responsiveLayout === 'stack' && !this.scrollable) {\n this.createResponsiveStyle();\n }\n this.initialized = true;\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'caption':\n this.captionTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'headergrouped':\n this.headerGroupedTemplate = item.template;\n break;\n case 'body':\n this.bodyTemplate = item.template;\n break;\n case 'loadingbody':\n this.loadingBodyTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n case 'footergrouped':\n this.footerGroupedTemplate = item.template;\n break;\n case 'summary':\n this.summaryTemplate = item.template;\n break;\n case 'colgroup':\n this.colGroupTemplate = item.template;\n break;\n case 'rowexpansion':\n this.expandedRowTemplate = item.template;\n break;\n case 'groupheader':\n this.groupHeaderTemplate = item.template;\n break;\n case 'rowspan':\n this.rowspanTemplate = item.template;\n break;\n case 'groupfooter':\n this.groupFooterTemplate = item.template;\n break;\n case 'frozenrows':\n this.frozenRowsTemplate = item.template;\n break;\n case 'frozenheader':\n this.frozenHeaderTemplate = item.template;\n break;\n case 'frozenbody':\n this.frozenBodyTemplate = item.template;\n break;\n case 'frozenfooter':\n this.frozenFooterTemplate = item.template;\n break;\n case 'frozencolgroup':\n this.frozenColGroupTemplate = item.template;\n break;\n case 'frozenrowexpansion':\n this.frozenExpandedRowTemplate = item.template;\n break;\n case 'emptymessage':\n this.emptyMessageTemplate = item.template;\n break;\n case 'paginatorleft':\n this.paginatorLeftTemplate = item.template;\n break;\n case 'paginatorright':\n this.paginatorRightTemplate = item.template;\n break;\n case 'paginatordropdownitem':\n this.paginatorDropdownItemTemplate = item.template;\n break;\n }\n });\n }\n ngAfterViewInit() {\n if (this.isStateful() && this.resizableColumns) {\n this.restoreColumnWidths();\n }\n if (this.scrollable && this.virtualScroll) {\n this.virtualScrollSubscription = this.virtualScrollBody.renderedRangeStream.subscribe(range => {\n let top = range.start * this.virtualRowHeight * -1;\n this.tableHeaderViewChild.nativeElement.style.top = top + 'px';\n });\n }\n }\n ngOnChanges(simpleChange) {\n if (simpleChange.value) {\n if (this.isStateful() && !this.stateRestored) {\n this.restoreState();\n }\n this._value = simpleChange.value.currentValue;\n if (!this.lazy) {\n this.totalRecords = (this._value ? this._value.length : 0);\n if (this.sortMode == 'single' && (this.sortField || this.groupRowsBy))\n this.sortSingle();\n else if (this.sortMode == 'multiple' && (this.multiSortMeta || this.groupRowsBy))\n this.sortMultiple();\n else if (this.hasFilter()) //sort already filters\n this._filter();\n }\n this.tableService.onValueChange(simpleChange.value.currentValue);\n }\n if (simpleChange.columns) {\n this._columns = simpleChange.columns.currentValue;\n this.tableService.onColumnsChange(simpleChange.columns.currentValue);\n if (this._columns && this.isStateful() && this.reorderableColumns && !this.columnOrderStateRestored) {\n this.restoreColumnOrder();\n }\n }\n if (simpleChange.sortField) {\n this._sortField = simpleChange.sortField.currentValue;\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.groupRowsBy) {\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.sortOrder) {\n this._sortOrder = simpleChange.sortOrder.currentValue;\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.groupRowsByOrder) {\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.multiSortMeta) {\n this._multiSortMeta = simpleChange.multiSortMeta.currentValue;\n if (this.sortMode === 'multiple' && (this.initialized || (!this.lazy && !this.virtualScroll))) {\n this.sortMultiple();\n }\n }\n if (simpleChange.selection) {\n this._selection = simpleChange.selection.currentValue;\n if (!this.preventSelectionSetterPropagation) {\n this.updateSelectionKeys();\n this.tableService.onSelectionChange();\n }\n this.preventSelectionSetterPropagation = false;\n }\n if (simpleChange.selectAll) {\n this._selectAll = simpleChange.selectAll.currentValue;\n if (!this.preventSelectionSetterPropagation) {\n this.updateSelectionKeys();\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n this.preventSelectionSetterPropagation = false;\n }\n }\n get value() {\n return this._value;\n }\n set value(val) {\n this._value = val;\n }\n get columns() {\n return this._columns;\n }\n set columns(cols) {\n this._columns = cols;\n }\n get first() {\n return this._first;\n }\n set first(val) {\n this._first = val;\n }\n get rows() {\n return this._rows;\n }\n set rows(val) {\n this._rows = val;\n }\n get totalRecords() {\n return this._totalRecords;\n }\n set totalRecords(val) {\n this._totalRecords = val;\n this.tableService.onTotalRecordsChange(this._totalRecords);\n }\n get sortField() {\n return this._sortField;\n }\n set sortField(val) {\n this._sortField = val;\n }\n get sortOrder() {\n return this._sortOrder;\n }\n set sortOrder(val) {\n this._sortOrder = val;\n }\n get multiSortMeta() {\n return this._multiSortMeta;\n }\n set multiSortMeta(val) {\n this._multiSortMeta = val;\n }\n get selection() {\n return this._selection;\n }\n set selection(val) {\n this._selection = val;\n }\n get selectAll() {\n return this._selection;\n }\n set selectAll(val) {\n this._selection = val;\n }\n get dataToRender() {\n let data = this.filteredValue || this.value;\n return data ? ((this.paginator && !this.lazy) ? (data.slice(this.first, this.first + this.rows)) : data) : [];\n }\n updateSelectionKeys() {\n if (this.dataKey && this._selection) {\n this.selectionKeys = {};\n if (Array.isArray(this._selection)) {\n for (let data of this._selection) {\n this.selectionKeys[String(ObjectUtils.resolveFieldData(data, this.dataKey))] = 1;\n }\n }\n else {\n this.selectionKeys[String(ObjectUtils.resolveFieldData(this._selection, this.dataKey))] = 1;\n }\n }\n }\n onPageChange(event) {\n this.first = event.first;\n this.rows = event.rows;\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n this.onPage.emit({\n first: this.first,\n rows: this.rows\n });\n this.firstChange.emit(this.first);\n this.rowsChange.emit(this.rows);\n this.tableService.onValueChange(this.value);\n if (this.isStateful()) {\n this.saveState();\n }\n this.anchorRowIndex = null;\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n sort(event) {\n let originalEvent = event.originalEvent;\n if (this.sortMode === 'single') {\n this._sortOrder = (this.sortField === event.field) ? this.sortOrder * -1 : this.defaultSortOrder;\n this._sortField = event.field;\n if (this.resetPageOnSort) {\n this._first = 0;\n this.firstChange.emit(this._first);\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n this.sortSingle();\n }\n if (this.sortMode === 'multiple') {\n let metaKey = originalEvent.metaKey || originalEvent.ctrlKey;\n let sortMeta = this.getSortMeta(event.field);\n if (sortMeta) {\n if (!metaKey) {\n this._multiSortMeta = [{ field: event.field, order: sortMeta.order * -1 }];\n if (this.resetPageOnSort) {\n this._first = 0;\n this.firstChange.emit(this._first);\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n }\n else {\n sortMeta.order = sortMeta.order * -1;\n }\n }\n else {\n if (!metaKey || !this.multiSortMeta) {\n this._multiSortMeta = [];\n if (this.resetPageOnSort) {\n this._first = 0;\n this.firstChange.emit(this._first);\n }\n }\n this._multiSortMeta.push({ field: event.field, order: this.defaultSortOrder });\n }\n this.sortMultiple();\n }\n if (this.isStateful()) {\n this.saveState();\n }\n this.anchorRowIndex = null;\n }\n sortSingle() {\n let field = this.sortField || this.groupRowsBy;\n let order = this.sortField ? this.sortOrder : this.groupRowsByOrder;\n if (this.groupRowsBy && this.sortField && this.groupRowsBy !== this.sortField) {\n this._multiSortMeta = [this.getGroupRowsMeta(), { field: this.sortField, order: this.sortOrder }];\n this.sortMultiple();\n return;\n }\n if (field && order) {\n if (this.restoringSort) {\n this.restoringSort = false;\n }\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else if (this.value) {\n if (this.customSort) {\n this.sortFunction.emit({\n data: this.value,\n mode: this.sortMode,\n field: field,\n order: order\n });\n }\n else {\n this.value.sort((data1, data2) => {\n let value1 = ObjectUtils.resolveFieldData(data1, field);\n let value2 = ObjectUtils.resolveFieldData(data2, field);\n let result = null;\n if (value1 == null && value2 != null)\n result = -1;\n else if (value1 != null && value2 == null)\n result = 1;\n else if (value1 == null && value2 == null)\n result = 0;\n else if (typeof value1 === 'string' && typeof value2 === 'string')\n result = value1.localeCompare(value2);\n else\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\n return (order * result);\n });\n this._value = [...this.value];\n }\n if (this.hasFilter()) {\n this._filter();\n }\n }\n let sortMeta = {\n field: field,\n order: order\n };\n this.onSort.emit(sortMeta);\n this.tableService.onSort(sortMeta);\n }\n }\n sortMultiple() {\n if (this.groupRowsBy) {\n if (!this._multiSortMeta)\n this._multiSortMeta = [this.getGroupRowsMeta()];\n else if (this.multiSortMeta[0].field !== this.groupRowsBy)\n this._multiSortMeta = [this.getGroupRowsMeta(), ...this._multiSortMeta];\n }\n if (this.multiSortMeta) {\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else if (this.value) {\n if (this.customSort) {\n this.sortFunction.emit({\n data: this.value,\n mode: this.sortMode,\n multiSortMeta: this.multiSortMeta\n });\n }\n else {\n this.value.sort((data1, data2) => {\n return this.multisortField(data1, data2, this.multiSortMeta, 0);\n });\n this._value = [...this.value];\n }\n if (this.hasFilter()) {\n this._filter();\n }\n }\n this.onSort.emit({\n multisortmeta: this.multiSortMeta\n });\n this.tableService.onSort(this.multiSortMeta);\n }\n }\n multisortField(data1, data2, multiSortMeta, index) {\n let value1 = ObjectUtils.resolveFieldData(data1, multiSortMeta[index].field);\n let value2 = ObjectUtils.resolveFieldData(data2, multiSortMeta[index].field);\n let result = null;\n if (value1 == null && value2 != null)\n result = -1;\n else if (value1 != null && value2 == null)\n result = 1;\n else if (value1 == null && value2 == null)\n result = 0;\n else if (typeof value1 == 'string' || value1 instanceof String) {\n if (value1.localeCompare && (value1 != value2)) {\n return (multiSortMeta[index].order * value1.localeCompare(value2));\n }\n }\n else {\n result = (value1 < value2) ? -1 : 1;\n }\n if (value1 == value2) {\n return (multiSortMeta.length - 1) > (index) ? (this.multisortField(data1, data2, multiSortMeta, index + 1)) : 0;\n }\n return (multiSortMeta[index].order * result);\n }\n getSortMeta(field) {\n if (this.multiSortMeta && this.multiSortMeta.length) {\n for (let i = 0; i < this.multiSortMeta.length; i++) {\n if (this.multiSortMeta[i].field === field) {\n return this.multiSortMeta[i];\n }\n }\n }\n return null;\n }\n isSorted(field) {\n if (this.sortMode === 'single') {\n return (this.sortField && this.sortField === field);\n }\n else if (this.sortMode === 'multiple') {\n let sorted = false;\n if (this.multiSortMeta) {\n for (let i = 0; i < this.multiSortMeta.length; i++) {\n if (this.multiSortMeta[i].field == field) {\n sorted = true;\n break;\n }\n }\n }\n return sorted;\n }\n }\n handleRowClick(event) {\n let target = event.originalEvent.target;\n let targetNode = target.nodeName;\n let parentNode = target.parentElement && target.parentElement.nodeName;\n if (targetNode == 'INPUT' || targetNode == 'BUTTON' || targetNode == 'A' ||\n parentNode == 'INPUT' || parentNode == 'BUTTON' || parentNode == 'A' ||\n (DomHandler.hasClass(event.originalEvent.target, 'p-clickable'))) {\n return;\n }\n if (this.selectionMode) {\n let rowData = event.rowData;\n let rowIndex = event.rowIndex;\n this.preventSelectionSetterPropagation = true;\n if (this.isMultipleSelectionMode() && event.originalEvent.shiftKey && this.anchorRowIndex != null) {\n DomHandler.clearSelection();\n if (this.rangeRowIndex != null) {\n this.clearSelectionRange(event.originalEvent);\n }\n this.rangeRowIndex = rowIndex;\n this.selectRange(event.originalEvent, rowIndex);\n }\n else {\n let selected = this.isSelected(rowData);\n if (!selected && !this.isRowSelectable(rowData, rowIndex)) {\n return;\n }\n let metaSelection = this.rowTouched ? false : this.metaKeySelection;\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rowData, this.dataKey)) : null;\n this.anchorRowIndex = rowIndex;\n this.rangeRowIndex = rowIndex;\n if (metaSelection) {\n let metaKey = event.originalEvent.metaKey || event.originalEvent.ctrlKey;\n if (selected && metaKey) {\n if (this.isSingleSelectionMode()) {\n this._selection = null;\n this.selectionKeys = {};\n this.selectionChange.emit(null);\n }\n else {\n let selectionIndex = this.findIndexInSelection(rowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n this.selectionChange.emit(this.selection);\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n }\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row' });\n }\n else {\n if (this.isSingleSelectionMode()) {\n this._selection = rowData;\n this.selectionChange.emit(rowData);\n if (dataKeyValue) {\n this.selectionKeys = {};\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n else if (this.isMultipleSelectionMode()) {\n if (metaKey) {\n this._selection = this.selection || [];\n }\n else {\n this._selection = [];\n this.selectionKeys = {};\n }\n this._selection = [...this.selection, rowData];\n this.selectionChange.emit(this.selection);\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n this.onRowSelect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n }\n }\n else {\n if (this.selectionMode === 'single') {\n if (selected) {\n this._selection = null;\n this.selectionKeys = {};\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n }\n else {\n this._selection = rowData;\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n if (dataKeyValue) {\n this.selectionKeys = {};\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n else if (this.selectionMode === 'multiple') {\n if (selected) {\n let selectionIndex = this.findIndexInSelection(rowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n }\n else {\n this._selection = this.selection ? [...this.selection, rowData] : [rowData];\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n }\n }\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n this.rowTouched = false;\n }\n handleRowTouchEnd(event) {\n this.rowTouched = true;\n }\n handleRowRightClick(event) {\n if (this.contextMenu) {\n const rowData = event.rowData;\n const rowIndex = event.rowIndex;\n if (this.contextMenuSelectionMode === 'separate') {\n this.contextMenuSelection = rowData;\n this.contextMenuSelectionChange.emit(rowData);\n this.onContextMenuSelect.emit({ originalEvent: event.originalEvent, data: rowData, index: event.rowIndex });\n this.contextMenu.show(event.originalEvent);\n this.tableService.onContextMenu(rowData);\n }\n else if (this.contextMenuSelectionMode === 'joint') {\n this.preventSelectionSetterPropagation = true;\n let selected = this.isSelected(rowData);\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rowData, this.dataKey)) : null;\n if (!selected) {\n if (!this.isRowSelectable(rowData, rowIndex)) {\n return;\n }\n if (this.isSingleSelectionMode()) {\n this.selection = rowData;\n this.selectionChange.emit(rowData);\n if (dataKeyValue) {\n this.selectionKeys = {};\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n else if (this.isMultipleSelectionMode()) {\n this._selection = this.selection ? [...this.selection, rowData] : [rowData];\n this.selectionChange.emit(this.selection);\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n this.tableService.onSelectionChange();\n this.contextMenu.show(event.originalEvent);\n this.onContextMenuSelect.emit({ originalEvent: event, data: rowData, index: event.rowIndex });\n }\n }\n }\n selectRange(event, rowIndex) {\n let rangeStart, rangeEnd;\n if (this.anchorRowIndex > rowIndex) {\n rangeStart = rowIndex;\n rangeEnd = this.anchorRowIndex;\n }\n else if (this.anchorRowIndex < rowIndex) {\n rangeStart = this.anchorRowIndex;\n rangeEnd = rowIndex;\n }\n else {\n rangeStart = rowIndex;\n rangeEnd = rowIndex;\n }\n if (this.lazy && this.paginator) {\n rangeStart -= this.first;\n rangeEnd -= this.first;\n }\n let rangeRowsData = [];\n for (let i = rangeStart; i <= rangeEnd; i++) {\n let rangeRowData = this.filteredValue ? this.filteredValue[i] : this.value[i];\n if (!this.isSelected(rangeRowData)) {\n if (!this.isRowSelectable(rangeRowData, rowIndex)) {\n continue;\n }\n rangeRowsData.push(rangeRowData);\n this._selection = [...this.selection, rangeRowData];\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rangeRowData, this.dataKey)) : null;\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event, data: rangeRowsData, type: 'row' });\n }\n clearSelectionRange(event) {\n let rangeStart, rangeEnd;\n if (this.rangeRowIndex > this.anchorRowIndex) {\n rangeStart = this.anchorRowIndex;\n rangeEnd = this.rangeRowIndex;\n }\n else if (this.rangeRowIndex < this.anchorRowIndex) {\n rangeStart = this.rangeRowIndex;\n rangeEnd = this.anchorRowIndex;\n }\n else {\n rangeStart = this.rangeRowIndex;\n rangeEnd = this.rangeRowIndex;\n }\n for (let i = rangeStart; i <= rangeEnd; i++) {\n let rangeRowData = this.value[i];\n let selectionIndex = this.findIndexInSelection(rangeRowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rangeRowData, this.dataKey)) : null;\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n this.onRowUnselect.emit({ originalEvent: event, data: rangeRowData, type: 'row' });\n }\n }\n isSelected(rowData) {\n if (rowData && this.selection) {\n if (this.dataKey) {\n return this.selectionKeys[ObjectUtils.resolveFieldData(rowData, this.dataKey)] !== undefined;\n }\n else {\n if (this.selection instanceof Array)\n return this.findIndexInSelection(rowData) > -1;\n else\n return this.equals(rowData, this.selection);\n }\n }\n return false;\n }\n findIndexInSelection(rowData) {\n let index = -1;\n if (this.selection && this.selection.length) {\n for (let i = 0; i < this.selection.length; i++) {\n if (this.equals(rowData, this.selection[i])) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n isRowSelectable(data, index) {\n if (this.rowSelectable && !this.rowSelectable({ data, index })) {\n return false;\n }\n return true;\n }\n toggleRowWithRadio(event, rowData) {\n this.preventSelectionSetterPropagation = true;\n if (this.selection != rowData) {\n if (!this.isRowSelectable(rowData, event.rowIndex)) {\n return;\n }\n this._selection = rowData;\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'radiobutton' });\n if (this.dataKey) {\n this.selectionKeys = {};\n this.selectionKeys[String(ObjectUtils.resolveFieldData(rowData, this.dataKey))] = 1;\n }\n }\n else {\n this._selection = null;\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'radiobutton' });\n }\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n toggleRowWithCheckbox(event, rowData) {\n this.selection = this.selection || [];\n let selected = this.isSelected(rowData);\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rowData, this.dataKey)) : null;\n this.preventSelectionSetterPropagation = true;\n if (selected) {\n let selectionIndex = this.findIndexInSelection(rowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'checkbox' });\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n }\n else {\n if (!this.isRowSelectable(rowData, event.rowIndex)) {\n return;\n }\n this._selection = this.selection ? [...this.selection, rowData] : [rowData];\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'checkbox' });\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n toggleRowsWithCheckbox(event, check) {\n if (this._selectAll !== null) {\n this.selectAllChange.emit({ originalEvent: event, checked: check });\n }\n else {\n const data = this.selectionPageOnly ? this.dataToRender : (this.filteredValue || this.value || []);\n let selection = this.selectionPageOnly && this._selection ? this._selection.filter(s => !data.some(d => this.equals(s, d))) : [];\n if (check) {\n selection = this.frozenValue ? [...selection, ...this.frozenValue, ...data] : [...selection, ...data];\n selection = this.rowSelectable ? selection.filter((data, index) => this.rowSelectable({ data, index })) : selection;\n }\n this._selection = selection;\n this.preventSelectionSetterPropagation = true;\n this.updateSelectionKeys();\n this.selectionChange.emit(this._selection);\n this.tableService.onSelectionChange();\n this.onHeaderCheckboxToggle.emit({ originalEvent: event, checked: check });\n if (this.isStateful()) {\n this.saveState();\n }\n }\n }\n equals(data1, data2) {\n return this.compareSelectionBy === 'equals' ? (data1 === data2) : ObjectUtils.equals(data1, data2, this.dataKey);\n }\n /* Legacy Filtering for custom elements */\n filter(value, field, matchMode) {\n if (this.filterTimeout) {\n clearTimeout(this.filterTimeout);\n }\n if (!this.isFilterBlank(value)) {\n this.filters[field] = { value: value, matchMode: matchMode };\n }\n else if (this.filters[field]) {\n delete this.filters[field];\n }\n this.filterTimeout = setTimeout(() => {\n this._filter();\n this.filterTimeout = null;\n }, this.filterDelay);\n this.anchorRowIndex = null;\n }\n filterGlobal(value, matchMode) {\n this.filter(value, 'global', matchMode);\n }\n isFilterBlank(filter) {\n if (filter !== null && filter !== undefined) {\n if ((typeof filter === 'string' && filter.trim().length == 0) || (filter instanceof Array && filter.length == 0))\n return true;\n else\n return false;\n }\n return true;\n }\n _filter() {\n if (!this.restoringFilter) {\n this.first = 0;\n this.firstChange.emit(this.first);\n }\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else {\n if (!this.value) {\n return;\n }\n if (!this.hasFilter()) {\n this.filteredValue = null;\n if (this.paginator) {\n this.totalRecords = this.value ? this.value.length : 0;\n }\n }\n else {\n let globalFilterFieldsArray;\n if (this.filters['global']) {\n if (!this.columns && !this.globalFilterFields)\n throw new Error('Global filtering requires dynamic columns or globalFilterFields to be defined.');\n else\n globalFilterFieldsArray = this.globalFilterFields || this.columns;\n }\n this.filteredValue = [];\n for (let i = 0; i < this.value.length; i++) {\n let localMatch = true;\n let globalMatch = false;\n let localFiltered = false;\n for (let prop in this.filters) {\n if (this.filters.hasOwnProperty(prop) && prop !== 'global') {\n localFiltered = true;\n let filterField = prop;\n let filterMeta = this.filters[filterField];\n if (Array.isArray(filterMeta)) {\n for (let meta of filterMeta) {\n localMatch = this.executeLocalFilter(filterField, this.value[i], meta);\n if ((meta.operator === FilterOperator.OR && localMatch) || (meta.operator === FilterOperator.AND && !localMatch)) {\n break;\n }\n }\n }\n else {\n localMatch = this.executeLocalFilter(filterField, this.value[i], filterMeta);\n }\n if (!localMatch) {\n break;\n }\n }\n }\n if (this.filters['global'] && !globalMatch && globalFilterFieldsArray) {\n for (let j = 0; j < globalFilterFieldsArray.length; j++) {\n let globalFilterField = globalFilterFieldsArray[j].field || globalFilterFieldsArray[j];\n globalMatch = this.filterService.filters[this.filters['global'].matchMode](ObjectUtils.resolveFieldData(this.value[i], globalFilterField), this.filters['global'].value, this.filterLocale);\n if (globalMatch) {\n break;\n }\n }\n }\n let matches;\n if (this.filters['global']) {\n matches = localFiltered ? (localFiltered && localMatch && globalMatch) : globalMatch;\n }\n else {\n matches = localFiltered && localMatch;\n }\n if (matches) {\n this.filteredValue.push(this.value[i]);\n }\n }\n if (this.filteredValue.length === this.value.length) {\n this.filteredValue = null;\n }\n if (this.paginator) {\n this.totalRecords = this.filteredValue ? this.filteredValue.length : this.value ? this.value.length : 0;\n }\n }\n }\n this.onFilter.emit({\n filters: this.filters,\n filteredValue: this.filteredValue || this.value\n });\n this.tableService.onValueChange(this.value);\n if (this.isStateful() && !this.restoringFilter) {\n this.saveState();\n }\n if (this.restoringFilter) {\n this.restoringFilter = false;\n }\n this.cd.markForCheck();\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n executeLocalFilter(field, rowData, filterMeta) {\n let filterValue = filterMeta.value;\n let filterMatchMode = filterMeta.matchMode || FilterMatchMode.STARTS_WITH;\n let dataFieldValue = ObjectUtils.resolveFieldData(rowData, field);\n let filterConstraint = this.filterService.filters[filterMatchMode];\n return filterConstraint(dataFieldValue, filterValue, this.filterLocale);\n }\n hasFilter() {\n let empty = true;\n for (let prop in this.filters) {\n if (this.filters.hasOwnProperty(prop)) {\n empty = false;\n break;\n }\n }\n return !empty;\n }\n createLazyLoadMetadata() {\n return {\n first: this.first,\n rows: this.rows,\n sortField: this.sortField,\n sortOrder: this.sortOrder,\n filters: this.filters,\n globalFilter: this.filters && this.filters['global'] ? this.filters['global'].value : null,\n multiSortMeta: this.multiSortMeta\n };\n }\n clear() {\n this._sortField = null;\n this._sortOrder = this.defaultSortOrder;\n this._multiSortMeta = null;\n this.tableService.onSort(null);\n if (this.filters['global']) {\n this.filters['global'].value = null;\n }\n this.filteredValue = null;\n this.tableService.onResetChange();\n this.first = 0;\n this.firstChange.emit(this.first);\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else {\n this.totalRecords = (this._value ? this._value.length : 0);\n }\n }\n reset() {\n this.clear();\n }\n getExportHeader(column) {\n return column[this.exportHeader] || column.header || column.field;\n }\n exportCSV(options) {\n let data;\n let csv = '';\n let columns = this.columns;\n if (options && options.selectionOnly) {\n data = this.selection || [];\n }\n else {\n data = this.filteredValue || this.value;\n if (this.frozenValue) {\n data = data ? [...this.frozenValue, ...data] : this.frozenValue;\n }\n }\n //headers\n for (let i = 0; i < columns.length; i++) {\n let column = columns[i];\n if (column.exportable !== false && column.field) {\n csv += '\"' + this.getExportHeader(column) + '\"';\n if (i < (columns.length - 1)) {\n csv += this.csvSeparator;\n }\n }\n }\n //body\n data.forEach((record, i) => {\n csv += '\\n';\n for (let i = 0; i < columns.length; i++) {\n let column = columns[i];\n if (column.exportable !== false && column.field) {\n let cellData = ObjectUtils.resolveFieldData(record, column.field);\n if (cellData != null) {\n if (this.exportFunction) {\n cellData = this.exportFunction({\n data: cellData,\n field: column.field\n });\n }\n else\n cellData = String(cellData).replace(/\"/g, '\"\"');\n }\n else\n cellData = '';\n csv += '\"' + cellData + '\"';\n if (i < (columns.length - 1)) {\n csv += this.csvSeparator;\n }\n }\n }\n });\n let blob = new Blob([csv], {\n type: 'text/csv;charset=utf-8;'\n });\n let link = document.createElement(\"a\");\n link.style.display = 'none';\n document.body.appendChild(link);\n if (link.download !== undefined) {\n link.setAttribute('href', URL.createObjectURL(blob));\n link.setAttribute('download', this.exportFilename + '.csv');\n link.click();\n }\n else {\n csv = 'data:text/csv;charset=utf-8,' + csv;\n window.open(encodeURI(csv));\n }\n document.body.removeChild(link);\n }\n resetScrollTop() {\n if (this.virtualScroll)\n this.scrollToVirtualIndex(0);\n else\n this.scrollTo({ top: 0 });\n }\n scrollToVirtualIndex(index) {\n if (this.virtualScrollBody) {\n this.virtualScrollBody.scrollToIndex(index);\n }\n }\n onScrollIndexChange(index) {\n if (this.lazy) {\n if (this.virtualScrollTimeout) {\n clearTimeout(this.virtualScrollTimeout);\n }\n this.virtualScrollTimeout = setTimeout(() => {\n let page = Math.floor(index / this.rows);\n let virtualScrollOffset = page === 0 ? 0 : (page - 1) * this.rows;\n let virtualScrollChunkSize = page === 0 ? this.rows * 2 : this.rows * 3;\n if (page !== this.virtualPage) {\n this.virtualPage = page;\n if (this.lazyLoadOnInit || this.virtualScrollInitialized) {\n this.onLazyLoad.emit({\n first: virtualScrollOffset,\n rows: virtualScrollChunkSize,\n sortField: this.sortField,\n sortOrder: this.sortOrder,\n filters: this.filters,\n globalFilter: this.filters && this.filters['global'] ? this.filters['global'].value : null,\n multiSortMeta: this.multiSortMeta\n });\n }\n else {\n this.virtualScrollInitialized = true;\n }\n }\n }, this.virtualScrollDelay);\n }\n }\n scrollTo(options) {\n if (this.virtualScrollBody) {\n this.virtualScrollBody.scrollTo(options);\n }\n else if (this.wrapperViewChild && this.wrapperViewChild.nativeElement) {\n if (this.wrapperViewChild.nativeElement.scrollTo) {\n this.wrapperViewChild.nativeElement.scrollTo(options);\n }\n else {\n this.wrapperViewChild.nativeElement.scrollLeft = options.left;\n this.wrapperViewChild.nativeElement.scrollTop = options.top;\n }\n }\n }\n updateEditingCell(cell, data, field, index) {\n this.editingCell = cell;\n this.editingCellData = data;\n this.editingCellField = field;\n this.editingCellRowIndex = index;\n this.bindDocumentEditListener();\n }\n isEditingCellValid() {\n return (this.editingCell && DomHandler.find(this.editingCell, '.ng-invalid.ng-dirty').length === 0);\n }\n bindDocumentEditListener() {\n if (!this.documentEditListener) {\n this.documentEditListener = (event) => {\n if (this.editingCell && !this.selfClick && this.isEditingCellValid()) {\n DomHandler.removeClass(this.editingCell, 'p-cell-editing');\n this.editingCell = null;\n this.onEditComplete.emit({ field: this.editingCellField, data: this.editingCellData, originalEvent: event, index: this.editingCellRowIndex });\n this.editingCellField = null;\n this.editingCellData = null;\n this.editingCellRowIndex = null;\n this.unbindDocumentEditListener();\n this.cd.markForCheck();\n if (this.overlaySubscription) {\n this.overlaySubscription.unsubscribe();\n }\n }\n this.selfClick = false;\n };\n document.addEventListener('click', this.documentEditListener);\n }\n }\n unbindDocumentEditListener() {\n if (this.documentEditListener) {\n document.removeEventListener('click', this.documentEditListener);\n this.documentEditListener = null;\n }\n }\n initRowEdit(rowData) {\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n this.editingRowKeys[dataKeyValue] = true;\n }\n saveRowEdit(rowData, rowElement) {\n if (DomHandler.find(rowElement, '.ng-invalid.ng-dirty').length === 0) {\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n delete this.editingRowKeys[dataKeyValue];\n }\n }\n cancelRowEdit(rowData) {\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n delete this.editingRowKeys[dataKeyValue];\n }\n toggleRow(rowData, event) {\n if (!this.dataKey) {\n throw new Error('dataKey must be defined to use row expansion');\n }\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n if (this.expandedRowKeys[dataKeyValue] != null) {\n delete this.expandedRowKeys[dataKeyValue];\n this.onRowCollapse.emit({\n originalEvent: event,\n data: rowData\n });\n }\n else {\n if (this.rowExpandMode === 'single') {\n this.expandedRowKeys = {};\n }\n this.expandedRowKeys[dataKeyValue] = true;\n this.onRowExpand.emit({\n originalEvent: event,\n data: rowData\n });\n }\n if (event) {\n event.preventDefault();\n }\n if (this.isStateful()) {\n this.saveState();\n }\n }\n isRowExpanded(rowData) {\n return this.expandedRowKeys[String(ObjectUtils.resolveFieldData(rowData, this.dataKey))] === true;\n }\n isRowEditing(rowData) {\n return this.editingRowKeys[String(ObjectUtils.resolveFieldData(rowData, this.dataKey))] === true;\n }\n isSingleSelectionMode() {\n return this.selectionMode === 'single';\n }\n isMultipleSelectionMode() {\n return this.selectionMode === 'multiple';\n }\n onColumnResizeBegin(event) {\n let containerLeft = DomHandler.getOffset(this.containerViewChild.nativeElement).left;\n this.resizeColumnElement = event.target.parentElement;\n this.columnResizing = true;\n this.lastResizerHelperX = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft);\n this.onColumnResize(event);\n event.preventDefault();\n }\n onColumnResize(event) {\n let containerLeft = DomHandler.getOffset(this.containerViewChild.nativeElement).left;\n DomHandler.addClass(this.containerViewChild.nativeElement, 'p-unselectable-text');\n this.resizeHelperViewChild.nativeElement.style.height = this.containerViewChild.nativeElement.offsetHeight + 'px';\n this.resizeHelperViewChild.nativeElement.style.top = 0 + 'px';\n this.resizeHelperViewChild.nativeElement.style.left = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft) + 'px';\n this.resizeHelperViewChild.nativeElement.style.display = 'block';\n }\n onColumnResizeEnd() {\n let delta = this.resizeHelperViewChild.nativeElement.offsetLeft - this.lastResizerHelperX;\n let columnWidth = this.resizeColumnElement.offsetWidth;\n let newColumnWidth = columnWidth + delta;\n let minWidth = this.resizeColumnElement.style.minWidth || 15;\n if (newColumnWidth >= minWidth) {\n if (this.columnResizeMode === 'fit') {\n let nextColumn = this.resizeColumnElement.nextElementSibling;\n let nextColumnWidth = nextColumn.offsetWidth - delta;\n if (newColumnWidth > 15 && nextColumnWidth > 15) {\n this.resizeTableCells(newColumnWidth, nextColumnWidth);\n }\n }\n else if (this.columnResizeMode === 'expand') {\n let tableWidth = this.tableViewChild.nativeElement.offsetWidth + delta;\n this.tableViewChild.nativeElement.style.width = tableWidth + 'px';\n this.tableViewChild.nativeElement.style.minWidth = tableWidth + 'px';\n this.resizeTableCells(newColumnWidth, null);\n }\n this.onColResize.emit({\n element: this.resizeColumnElement,\n delta: delta\n });\n if (this.isStateful()) {\n this.saveState();\n }\n }\n this.resizeHelperViewChild.nativeElement.style.display = 'none';\n DomHandler.removeClass(this.containerViewChild.nativeElement, 'p-unselectable-text');\n }\n resizeTableCells(newColumnWidth, nextColumnWidth) {\n let colIndex = DomHandler.index(this.resizeColumnElement);\n let widths = [];\n const tableHead = DomHandler.findSingle(this.containerViewChild.nativeElement, '.p-datatable-thead');\n let headers = DomHandler.find(tableHead, 'tr > th');\n headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));\n this.destroyStyleElement();\n this.createStyleElement();\n let innerHTML = '';\n widths.forEach((width, index) => {\n let colWidth = index === colIndex ? newColumnWidth : (nextColumnWidth && index === colIndex + 1) ? nextColumnWidth : width;\n let style = this.scrollable ? `flex: 1 1 ${colWidth}px !important` : `width: ${colWidth}px !important`;\n innerHTML += `\n #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),\n #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),\n #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {\n ${style}\n }\n `;\n });\n this.styleElement.innerHTML = innerHTML;\n }\n onColumnDragStart(event, columnElement) {\n this.reorderIconWidth = DomHandler.getHiddenElementOuterWidth(this.reorderIndicatorUpViewChild.nativeElement);\n this.reorderIconHeight = DomHandler.getHiddenElementOuterHeight(this.reorderIndicatorDownViewChild.nativeElement);\n this.draggedColumn = columnElement;\n event.dataTransfer.setData('text', 'b'); // For firefox\n }\n onColumnDragEnter(event, dropHeader) {\n if (this.reorderableColumns && this.draggedColumn && dropHeader) {\n event.preventDefault();\n let containerOffset = DomHandler.getOffset(this.containerViewChild.nativeElement);\n let dropHeaderOffset = DomHandler.getOffset(dropHeader);\n if (this.draggedColumn != dropHeader) {\n let dragIndex = DomHandler.indexWithinGroup(this.draggedColumn, 'preorderablecolumn');\n let dropIndex = DomHandler.indexWithinGroup(dropHeader, 'preorderablecolumn');\n let targetLeft = dropHeaderOffset.left - containerOffset.left;\n let targetTop = containerOffset.top - dropHeaderOffset.top;\n let columnCenter = dropHeaderOffset.left + dropHeader.offsetWidth / 2;\n this.reorderIndicatorUpViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top - (this.reorderIconHeight - 1) + 'px';\n this.reorderIndicatorDownViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top + dropHeader.offsetHeight + 'px';\n if (event.pageX > columnCenter) {\n this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.dropPosition = 1;\n }\n else {\n this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.dropPosition = -1;\n }\n if ((dropIndex - dragIndex === 1 && this.dropPosition === -1) || (dropIndex - dragIndex === -1 && this.dropPosition === 1)) {\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'none';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'none';\n }\n else {\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'block';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'block';\n }\n }\n else {\n event.dataTransfer.dropEffect = 'none';\n }\n }\n }\n onColumnDragLeave(event) {\n if (this.reorderableColumns && this.draggedColumn) {\n event.preventDefault();\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'none';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'none';\n }\n }\n onColumnDrop(event, dropColumn) {\n event.preventDefault();\n if (this.draggedColumn) {\n let dragIndex = DomHandler.indexWithinGroup(this.draggedColumn, 'preorderablecolumn');\n let dropIndex = DomHandler.indexWithinGroup(dropColumn, 'preorderablecolumn');\n let allowDrop = (dragIndex != dropIndex);\n if (allowDrop && ((dropIndex - dragIndex == 1 && this.dropPosition === -1) || (dragIndex - dropIndex == 1 && this.dropPosition === 1))) {\n allowDrop = false;\n }\n if (allowDrop && ((dropIndex < dragIndex && this.dropPosition === 1))) {\n dropIndex = dropIndex + 1;\n }\n if (allowDrop && ((dropIndex > dragIndex && this.dropPosition === -1))) {\n dropIndex = dropIndex - 1;\n }\n if (allowDrop) {\n ObjectUtils.reorderArray(this.columns, dragIndex, dropIndex);\n this.onColReorder.emit({\n dragIndex: dragIndex,\n dropIndex: dropIndex,\n columns: this.columns\n });\n if (this.isStateful()) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.saveState();\n });\n });\n }\n }\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'none';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'none';\n this.draggedColumn.draggable = false;\n this.draggedColumn = null;\n this.dropPosition = null;\n }\n }\n onRowDragStart(event, index) {\n this.rowDragging = true;\n this.draggedRowIndex = index;\n event.dataTransfer.setData('text', 'b'); // For firefox\n }\n onRowDragOver(event, index, rowElement) {\n if (this.rowDragging && this.draggedRowIndex !== index) {\n let rowY = DomHandler.getOffset(rowElement).top + DomHandler.getWindowScrollTop();\n let pageY = event.pageY;\n let rowMidY = rowY + DomHandler.getOuterHeight(rowElement) / 2;\n let prevRowElement = rowElement.previousElementSibling;\n if (pageY < rowMidY) {\n DomHandler.removeClass(rowElement, 'p-datatable-dragpoint-bottom');\n this.droppedRowIndex = index;\n if (prevRowElement)\n DomHandler.addClass(prevRowElement, 'p-datatable-dragpoint-bottom');\n else\n DomHandler.addClass(rowElement, 'p-datatable-dragpoint-top');\n }\n else {\n if (prevRowElement)\n DomHandler.removeClass(prevRowElement, 'p-datatable-dragpoint-bottom');\n else\n DomHandler.addClass(rowElement, 'p-datatable-dragpoint-top');\n this.droppedRowIndex = index + 1;\n DomHandler.addClass(rowElement, 'p-datatable-dragpoint-bottom');\n }\n }\n }\n onRowDragLeave(event, rowElement) {\n let prevRowElement = rowElement.previousElementSibling;\n if (prevRowElement) {\n DomHandler.removeClass(prevRowElement, 'p-datatable-dragpoint-bottom');\n }\n DomHandler.removeClass(rowElement, 'p-datatable-dragpoint-bottom');\n DomHandler.removeClass(rowElement, 'p-datatable-dragpoint-top');\n }\n onRowDragEnd(event) {\n this.rowDragging = false;\n this.draggedRowIndex = null;\n this.droppedRowIndex = null;\n }\n onRowDrop(event, rowElement) {\n if (this.droppedRowIndex != null) {\n let dropIndex = (this.draggedRowIndex > this.droppedRowIndex) ? this.droppedRowIndex : (this.droppedRowIndex === 0) ? 0 : this.droppedRowIndex - 1;\n ObjectUtils.reorderArray(this.value, this.draggedRowIndex, dropIndex);\n if (this.virtualScroll) {\n this._value = [...this._value];\n }\n this.onRowReorder.emit({\n dragIndex: this.draggedRowIndex,\n dropIndex: dropIndex\n });\n }\n //cleanup\n this.onRowDragLeave(event, rowElement);\n this.onRowDragEnd(event);\n }\n isEmpty() {\n let data = this.filteredValue || this.value;\n return data == null || data.length == 0;\n }\n getBlockableElement() {\n return this.el.nativeElement.children[0];\n }\n getStorage() {\n switch (this.stateStorage) {\n case 'local':\n return window.localStorage;\n case 'session':\n return window.sessionStorage;\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n }\n isStateful() {\n return this.stateKey != null;\n }\n saveState() {\n const storage = this.getStorage();\n let state = {};\n if (this.paginator) {\n state.first = this.first;\n state.rows = this.rows;\n }\n if (this.sortField) {\n state.sortField = this.sortField;\n state.sortOrder = this.sortOrder;\n }\n if (this.multiSortMeta) {\n state.multiSortMeta = this.multiSortMeta;\n }\n if (this.hasFilter()) {\n state.filters = this.filters;\n }\n if (this.resizableColumns) {\n this.saveColumnWidths(state);\n }\n if (this.reorderableColumns) {\n this.saveColumnOrder(state);\n }\n if (this.selection) {\n state.selection = this.selection;\n }\n if (Object.keys(this.expandedRowKeys).length) {\n state.expandedRowKeys = this.expandedRowKeys;\n }\n storage.setItem(this.stateKey, JSON.stringify(state));\n this.onStateSave.emit(state);\n }\n clearState() {\n const storage = this.getStorage();\n if (this.stateKey) {\n storage.removeItem(this.stateKey);\n }\n }\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n const dateFormat = /\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/;\n const reviver = function (key, value) {\n if (typeof value === \"string\" && dateFormat.test(value)) {\n return new Date(value);\n }\n return value;\n };\n if (stateString) {\n let state = JSON.parse(stateString, reviver);\n if (this.paginator) {\n if (this.first !== undefined) {\n this.first = state.first;\n this.firstChange.emit(this.first);\n }\n if (this.rows !== undefined) {\n this.rows = state.rows;\n this.rowsChange.emit(this.rows);\n }\n }\n if (state.sortField) {\n this.restoringSort = true;\n this._sortField = state.sortField;\n this._sortOrder = state.sortOrder;\n }\n if (state.multiSortMeta) {\n this.restoringSort = true;\n this._multiSortMeta = state.multiSortMeta;\n }\n if (state.filters) {\n this.restoringFilter = true;\n this.filters = state.filters;\n }\n if (this.resizableColumns) {\n this.columnWidthsState = state.columnWidths;\n this.tableWidthState = state.tableWidth;\n }\n if (state.expandedRowKeys) {\n this.expandedRowKeys = state.expandedRowKeys;\n }\n if (state.selection) {\n Promise.resolve(null).then(() => this.selectionChange.emit(state.selection));\n }\n this.stateRestored = true;\n this.onStateRestore.emit(state);\n }\n }\n saveColumnWidths(state) {\n let widths = [];\n let headers = DomHandler.find(this.containerViewChild.nativeElement, '.p-datatable-thead > tr > th');\n headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));\n state.columnWidths = widths.join(',');\n if (this.columnResizeMode === 'expand') {\n state.tableWidth = DomHandler.getOuterWidth(this.tableViewChild.nativeElement) + 'px';\n }\n }\n restoreColumnWidths() {\n if (this.columnWidthsState) {\n let widths = this.columnWidthsState.split(',');\n if (this.columnResizeMode === 'expand' && this.tableWidthState) {\n this.tableViewChild.nativeElement.style.width = this.tableWidthState;\n this.tableViewChild.nativeElement.style.minWidth = this.tableWidthState;\n this.containerViewChild.nativeElement.style.width = this.tableWidthState;\n }\n if (ObjectUtils.isNotEmpty(widths)) {\n this.createStyleElement();\n let innerHTML = '';\n widths.forEach((width, index) => {\n let style = this.scrollable ? `flex: 1 1 ${width}px !important` : `width: ${width}px !important`;\n innerHTML += `\n #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),\n #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),\n #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {\n ${style}\n }\n `;\n });\n this.styleElement.innerHTML = innerHTML;\n }\n }\n }\n saveColumnOrder(state) {\n if (this.columns) {\n let columnOrder = [];\n this.columns.map(column => {\n columnOrder.push(column.field || column.key);\n });\n state.columnOrder = columnOrder;\n }\n }\n restoreColumnOrder() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n if (stateString) {\n let state = JSON.parse(stateString);\n let columnOrder = state.columnOrder;\n if (columnOrder) {\n let reorderedColumns = [];\n columnOrder.map(key => {\n let col = this.findColumnByKey(key);\n if (col) {\n reorderedColumns.push(col);\n }\n });\n this.columnOrderStateRestored = true;\n this.columns = reorderedColumns;\n }\n }\n }\n findColumnByKey(key) {\n if (this.columns) {\n for (let col of this.columns) {\n if (col.key === key || col.field === key)\n return col;\n else\n continue;\n }\n }\n else {\n return null;\n }\n }\n createStyleElement() {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n document.head.appendChild(this.styleElement);\n }\n getGroupRowsMeta() {\n return { field: this.groupRowsBy, order: this.groupRowsByOrder };\n }\n createResponsiveStyle() {\n if (!this.responsiveStyleElement) {\n this.responsiveStyleElement = document.createElement('style');\n this.responsiveStyleElement.type = 'text/css';\n document.head.appendChild(this.responsiveStyleElement);\n let innerHTML = `\n@media screen and (max-width: ${this.breakpoint}) {\n #${this.id} .p-datatable-thead > tr > th,\n #${this.id} .p-datatable-tfoot > tr > td {\n display: none !important;\n }\n\n #${this.id} .p-datatable-tbody > tr > td {\n display: flex;\n width: 100% !important;\n align-items: center;\n justify-content: space-between;\n }\n\n #${this.id} .p-datatable-tbody > tr > td:not(:last-child) {\n border: 0 none;\n }\n\n #${this.id}.p-datatable-gridlines .p-datatable-tbody > tr > td:last-child {\n border-top: 0;\n border-right: 0;\n border-left: 0;\n }\n\n #${this.id} .p-datatable-tbody > tr > td > .p-column-title {\n display: block;\n }\n}\n`;\n this.responsiveStyleElement.innerHTML = innerHTML;\n }\n }\n destroyResponsiveStyle() {\n if (this.responsiveStyleElement) {\n document.head.removeChild(this.responsiveStyleElement);\n this.responsiveStyleElement = null;\n }\n }\n destroyStyleElement() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n }\n ngOnDestroy() {\n this.unbindDocumentEditListener();\n this.editingCell = null;\n this.initialized = null;\n this.virtualScrollInitialized = null;\n if (this.virtualScrollSubscription) {\n this.virtualScrollSubscription.unsubscribe();\n }\n this.destroyStyleElement();\n this.destroyResponsiveStyle();\n }\n}\nTable.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Table, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i1.FilterService }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nTable.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: Table, selector: \"p-table\", inputs: { frozenColumns: \"frozenColumns\", frozenValue: \"frozenValue\", style: \"style\", styleClass: \"styleClass\", tableStyle: \"tableStyle\", tableStyleClass: \"tableStyleClass\", paginator: \"paginator\", pageLinks: \"pageLinks\", rowsPerPageOptions: \"rowsPerPageOptions\", alwaysShowPaginator: \"alwaysShowPaginator\", paginatorPosition: \"paginatorPosition\", paginatorDropdownAppendTo: \"paginatorDropdownAppendTo\", paginatorDropdownScrollHeight: \"paginatorDropdownScrollHeight\", currentPageReportTemplate: \"currentPageReportTemplate\", showCurrentPageReport: \"showCurrentPageReport\", showJumpToPageDropdown: \"showJumpToPageDropdown\", showJumpToPageInput: \"showJumpToPageInput\", showFirstLastIcon: \"showFirstLastIcon\", showPageLinks: \"showPageLinks\", defaultSortOrder: \"defaultSortOrder\", sortMode: \"sortMode\", resetPageOnSort: \"resetPageOnSort\", selectionMode: \"selectionMode\", selectionPageOnly: \"selectionPageOnly\", contextMenuSelection: \"contextMenuSelection\", contextMenuSelectionMode: \"contextMenuSelectionMode\", dataKey: \"dataKey\", metaKeySelection: \"metaKeySelection\", rowSelectable: \"rowSelectable\", rowTrackBy: \"rowTrackBy\", lazy: \"lazy\", lazyLoadOnInit: \"lazyLoadOnInit\", compareSelectionBy: \"compareSelectionBy\", csvSeparator: \"csvSeparator\", exportFilename: \"exportFilename\", filters: \"filters\", globalFilterFields: \"globalFilterFields\", filterDelay: \"filterDelay\", filterLocale: \"filterLocale\", expandedRowKeys: \"expandedRowKeys\", editingRowKeys: \"editingRowKeys\", rowExpandMode: \"rowExpandMode\", scrollable: \"scrollable\", scrollDirection: \"scrollDirection\", rowGroupMode: \"rowGroupMode\", scrollHeight: \"scrollHeight\", virtualScroll: \"virtualScroll\", virtualScrollDelay: \"virtualScrollDelay\", virtualRowHeight: \"virtualRowHeight\", frozenWidth: \"frozenWidth\", responsive: \"responsive\", contextMenu: \"contextMenu\", resizableColumns: \"resizableColumns\", columnResizeMode: \"columnResizeMode\", reorderableColumns: \"reorderableColumns\", loading: \"loading\", loadingIcon: \"loadingIcon\", showLoader: \"showLoader\", rowHover: \"rowHover\", customSort: \"customSort\", showInitialSortBadge: \"showInitialSortBadge\", autoLayout: \"autoLayout\", exportFunction: \"exportFunction\", exportHeader: \"exportHeader\", stateKey: \"stateKey\", stateStorage: \"stateStorage\", editMode: \"editMode\", groupRowsBy: \"groupRowsBy\", groupRowsByOrder: \"groupRowsByOrder\", minBufferPx: \"minBufferPx\", maxBufferPx: \"maxBufferPx\", responsiveLayout: \"responsiveLayout\", breakpoint: \"breakpoint\", value: \"value\", columns: \"columns\", first: \"first\", rows: \"rows\", totalRecords: \"totalRecords\", sortField: \"sortField\", sortOrder: \"sortOrder\", multiSortMeta: \"multiSortMeta\", selection: \"selection\", selectAll: \"selectAll\" }, outputs: { selectAllChange: \"selectAllChange\", selectionChange: \"selectionChange\", contextMenuSelectionChange: \"contextMenuSelectionChange\", onRowSelect: \"onRowSelect\", onRowUnselect: \"onRowUnselect\", onPage: \"onPage\", onSort: \"onSort\", onFilter: \"onFilter\", onLazyLoad: \"onLazyLoad\", onRowExpand: \"onRowExpand\", onRowCollapse: \"onRowCollapse\", onContextMenuSelect: \"onContextMenuSelect\", onColResize: \"onColResize\", onColReorder: \"onColReorder\", onRowReorder: \"onRowReorder\", onEditInit: \"onEditInit\", onEditComplete: \"onEditComplete\", onEditCancel: \"onEditCancel\", onHeaderCheckboxToggle: \"onHeaderCheckboxToggle\", sortFunction: \"sortFunction\", firstChange: \"firstChange\", rowsChange: \"rowsChange\", onStateSave: \"onStateSave\", onStateRestore: \"onStateRestore\" }, host: { classAttribute: \"p-element\" }, providers: [TableService], queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"containerViewChild\", first: true, predicate: [\"container\"], descendants: true }, { propertyName: \"resizeHelperViewChild\", first: true, predicate: [\"resizeHelper\"], descendants: true }, { propertyName: \"reorderIndicatorUpViewChild\", first: true, predicate: [\"reorderIndicatorUp\"], descendants: true }, { propertyName: \"reorderIndicatorDownViewChild\", first: true, predicate: [\"reorderIndicatorDown\"], descendants: true }, { propertyName: \"wrapperViewChild\", first: true, predicate: [\"wrapper\"], descendants: true }, { propertyName: \"tableViewChild\", first: true, predicate: [\"table\"], descendants: true }, { propertyName: \"tableHeaderViewChild\", first: true, predicate: [\"tableHeader\"], descendants: true }, { propertyName: \"virtualScrollBody\", first: true, predicate: CdkVirtualScrollViewport, descendants: true }], usesOnChanges: true, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n \n\n
    \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n\n \n\n
    \n \n
    \n\n
    \n \n \n
    \n `, isInline: true, styles: [\".p-datatable{position:relative}.p-datatable table{border-collapse:collapse;min-width:100%;table-layout:fixed}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-auto-layout>.p-datatable-wrapper{overflow-x:auto}.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper{overflow-x:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper>table,.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable .p-datatable-wrapper{position:relative;overflow:auto}.p-datatable-scrollable .p-datatable-thead,.p-datatable-scrollable .p-datatable-tbody,.p-datatable-scrollable .p-datatable-tfoot{display:block}.p-datatable-scrollable .p-datatable-thead>tr,.p-datatable-scrollable .p-datatable-tbody>tr,.p-datatable-scrollable .p-datatable-tfoot>tr{display:flex;flex-wrap:nowrap;width:100%}.p-datatable-scrollable .p-datatable-thead>tr>th,.p-datatable-scrollable .p-datatable-tbody>tr>td,.p-datatable-scrollable .p-datatable-tfoot>tr>td{display:flex;flex:1 1 0;align-items:center}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-thead,.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-virtual-scrollable-body>.cdk-virtual-scroll-content-wrapper>.p-datatable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-scrollable-both .p-datatable-thead>tr>th,.p-datatable-scrollable-both .p-datatable-tbody>tr>td,.p-datatable-scrollable-both .p-datatable-tfoot>tr>td,.p-datatable-scrollable-horizontal .p-datatable-thead>tr>th .p-datatable-scrollable-horizontal .p-datatable-tbody>tr>td,.p-datatable-scrollable-horizontal .p-datatable-tfoot>tr>td{flex:0 0 auto}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable .p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable .p-rowgroup-header{position:sticky;z-index:1}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot{display:table;border-collapse:collapse;width:100%;table-layout:fixed}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr{display:table-row}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr>th,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr>td{display:table-cell}.p-datatable-flex-scrollable{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-flex-scrollable .p-datatable-virtual-scrollable-body{flex:1}.p-datatable-resizable>.p-datatable-wrapper{overflow-x:auto}.p-datatable-resizable .p-datatable-thead>tr>th,.p-datatable-resizable .p-datatable-tfoot>tr>td,.p-datatable-resizable .p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable .p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-fit .p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable .p-datatable-tbody>tr>td>.p-column-title{display:none}cdk-virtual-scroll-viewport{outline:0 none}\\n\"], components: [{ type: i0.forwardRef(function () { return i2.Paginator; }), selector: \"p-paginator\", inputs: [\"pageLinkSize\", \"style\", \"styleClass\", \"alwaysShow\", \"templateLeft\", \"templateRight\", \"dropdownAppendTo\", \"dropdownScrollHeight\", \"currentPageReportTemplate\", \"showCurrentPageReport\", \"showFirstLastIcon\", \"totalRecords\", \"rows\", \"rowsPerPageOptions\", \"showJumpToPageDropdown\", \"showJumpToPageInput\", \"showPageLinks\", \"dropdownItemTemplate\", \"first\"], outputs: [\"onPageChange\"] }, { type: i0.forwardRef(function () { return TableBody; }), selector: \"[pTableBody]\", inputs: [\"pTableBody\", \"pTableBodyTemplate\", \"value\", \"frozen\", \"frozenRows\"] }, { type: i0.forwardRef(function () { return i3.CdkVirtualScrollViewport; }), selector: \"cdk-virtual-scroll-viewport\", inputs: [\"orientation\", \"appendOnly\"], outputs: [\"scrolledIndexChange\"] }], directives: [{ type: i0.forwardRef(function () { return i4.NgStyle; }), selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i0.forwardRef(function () { return i4.NgClass; }), selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i0.forwardRef(function () { return i4.NgIf; }), selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i0.forwardRef(function () { return i4.NgTemplateOutlet; }), selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i0.forwardRef(function () { return i3.CdkFixedSizeVirtualScroll; }), selector: \"cdk-virtual-scroll-viewport[itemSize]\", inputs: [\"itemSize\", \"minBufferPx\", \"maxBufferPx\"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: Table, decorators: [{\n type: Component,\n args: [{ selector: 'p-table', template: `\n
    \n
    \n \n
    \n
    \n \n
    \n \n\n
    \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n\n \n\n
    \n \n
    \n\n
    \n \n \n
    \n `, providers: [TableService], changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element'\n }, styles: [\".p-datatable{position:relative}.p-datatable table{border-collapse:collapse;min-width:100%;table-layout:fixed}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-auto-layout>.p-datatable-wrapper{overflow-x:auto}.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper{overflow-x:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper>table,.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable .p-datatable-wrapper{position:relative;overflow:auto}.p-datatable-scrollable .p-datatable-thead,.p-datatable-scrollable .p-datatable-tbody,.p-datatable-scrollable .p-datatable-tfoot{display:block}.p-datatable-scrollable .p-datatable-thead>tr,.p-datatable-scrollable .p-datatable-tbody>tr,.p-datatable-scrollable .p-datatable-tfoot>tr{display:flex;flex-wrap:nowrap;width:100%}.p-datatable-scrollable .p-datatable-thead>tr>th,.p-datatable-scrollable .p-datatable-tbody>tr>td,.p-datatable-scrollable .p-datatable-tfoot>tr>td{display:flex;flex:1 1 0;align-items:center}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-thead,.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-virtual-scrollable-body>.cdk-virtual-scroll-content-wrapper>.p-datatable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-scrollable-both .p-datatable-thead>tr>th,.p-datatable-scrollable-both .p-datatable-tbody>tr>td,.p-datatable-scrollable-both .p-datatable-tfoot>tr>td,.p-datatable-scrollable-horizontal .p-datatable-thead>tr>th .p-datatable-scrollable-horizontal .p-datatable-tbody>tr>td,.p-datatable-scrollable-horizontal .p-datatable-tfoot>tr>td{flex:0 0 auto}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable .p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable .p-rowgroup-header{position:sticky;z-index:1}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot{display:table;border-collapse:collapse;width:100%;table-layout:fixed}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr{display:table-row}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr>th,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr>td{display:table-cell}.p-datatable-flex-scrollable{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-flex-scrollable .p-datatable-virtual-scrollable-body{flex:1}.p-datatable-resizable>.p-datatable-wrapper{overflow-x:auto}.p-datatable-resizable .p-datatable-thead>tr>th,.p-datatable-resizable .p-datatable-tfoot>tr>td,.p-datatable-resizable .p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable .p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-fit .p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable .p-datatable-tbody>tr>td>.p-column-title{display:none}cdk-virtual-scroll-viewport{outline:0 none}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }, { type: i1.OverlayService }]; }, propDecorators: { frozenColumns: [{\n type: Input\n }], frozenValue: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], tableStyle: [{\n type: Input\n }], tableStyleClass: [{\n type: Input\n }], paginator: [{\n type: Input\n }], pageLinks: [{\n type: Input\n }], rowsPerPageOptions: [{\n type: Input\n }], alwaysShowPaginator: [{\n type: Input\n }], paginatorPosition: [{\n type: Input\n }], paginatorDropdownAppendTo: [{\n type: Input\n }], paginatorDropdownScrollHeight: [{\n type: Input\n }], currentPageReportTemplate: [{\n type: Input\n }], showCurrentPageReport: [{\n type: Input\n }], showJumpToPageDropdown: [{\n type: Input\n }], showJumpToPageInput: [{\n type: Input\n }], showFirstLastIcon: [{\n type: Input\n }], showPageLinks: [{\n type: Input\n }], defaultSortOrder: [{\n type: Input\n }], sortMode: [{\n type: Input\n }], resetPageOnSort: [{\n type: Input\n }], selectionMode: [{\n type: Input\n }], selectionPageOnly: [{\n type: Input\n }], selectAllChange: [{\n type: Output\n }], selectionChange: [{\n type: Output\n }], contextMenuSelection: [{\n type: Input\n }], contextMenuSelectionChange: [{\n type: Output\n }], contextMenuSelectionMode: [{\n type: Input\n }], dataKey: [{\n type: Input\n }], metaKeySelection: [{\n type: Input\n }], rowSelectable: [{\n type: Input\n }], rowTrackBy: [{\n type: Input\n }], lazy: [{\n type: Input\n }], lazyLoadOnInit: [{\n type: Input\n }], compareSelectionBy: [{\n type: Input\n }], csvSeparator: [{\n type: Input\n }], exportFilename: [{\n type: Input\n }], filters: [{\n type: Input\n }], globalFilterFields: [{\n type: Input\n }], filterDelay: [{\n type: Input\n }], filterLocale: [{\n type: Input\n }], expandedRowKeys: [{\n type: Input\n }], editingRowKeys: [{\n type: Input\n }], rowExpandMode: [{\n type: Input\n }], scrollable: [{\n type: Input\n }], scrollDirection: [{\n type: Input\n }], rowGroupMode: [{\n type: Input\n }], scrollHeight: [{\n type: Input\n }], virtualScroll: [{\n type: Input\n }], virtualScrollDelay: [{\n type: Input\n }], virtualRowHeight: [{\n type: Input\n }], frozenWidth: [{\n type: Input\n }], responsive: [{\n type: Input\n }], contextMenu: [{\n type: Input\n }], resizableColumns: [{\n type: Input\n }], columnResizeMode: [{\n type: Input\n }], reorderableColumns: [{\n type: Input\n }], loading: [{\n type: Input\n }], loadingIcon: [{\n type: Input\n }], showLoader: [{\n type: Input\n }], rowHover: [{\n type: Input\n }], customSort: [{\n type: Input\n }], showInitialSortBadge: [{\n type: Input\n }], autoLayout: [{\n type: Input\n }], exportFunction: [{\n type: Input\n }], exportHeader: [{\n type: Input\n }], stateKey: [{\n type: Input\n }], stateStorage: [{\n type: Input\n }], editMode: [{\n type: Input\n }], groupRowsBy: [{\n type: Input\n }], groupRowsByOrder: [{\n type: Input\n }], minBufferPx: [{\n type: Input\n }], maxBufferPx: [{\n type: Input\n }], responsiveLayout: [{\n type: Input\n }], breakpoint: [{\n type: Input\n }], onRowSelect: [{\n type: Output\n }], onRowUnselect: [{\n type: Output\n }], onPage: [{\n type: Output\n }], onSort: [{\n type: Output\n }], onFilter: [{\n type: Output\n }], onLazyLoad: [{\n type: Output\n }], onRowExpand: [{\n type: Output\n }], onRowCollapse: [{\n type: Output\n }], onContextMenuSelect: [{\n type: Output\n }], onColResize: [{\n type: Output\n }], onColReorder: [{\n type: Output\n }], onRowReorder: [{\n type: Output\n }], onEditInit: [{\n type: Output\n }], onEditComplete: [{\n type: Output\n }], onEditCancel: [{\n type: Output\n }], onHeaderCheckboxToggle: [{\n type: Output\n }], sortFunction: [{\n type: Output\n }], firstChange: [{\n type: Output\n }], rowsChange: [{\n type: Output\n }], onStateSave: [{\n type: Output\n }], onStateRestore: [{\n type: Output\n }], containerViewChild: [{\n type: ViewChild,\n args: ['container']\n }], resizeHelperViewChild: [{\n type: ViewChild,\n args: ['resizeHelper']\n }], reorderIndicatorUpViewChild: [{\n type: ViewChild,\n args: ['reorderIndicatorUp']\n }], reorderIndicatorDownViewChild: [{\n type: ViewChild,\n args: ['reorderIndicatorDown']\n }], wrapperViewChild: [{\n type: ViewChild,\n args: ['wrapper']\n }], tableViewChild: [{\n type: ViewChild,\n args: ['table']\n }], tableHeaderViewChild: [{\n type: ViewChild,\n args: ['tableHeader']\n }], virtualScrollBody: [{\n type: ViewChild,\n args: [CdkVirtualScrollViewport]\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], value: [{\n type: Input\n }], columns: [{\n type: Input\n }], first: [{\n type: Input\n }], rows: [{\n type: Input\n }], totalRecords: [{\n type: Input\n }], sortField: [{\n type: Input\n }], sortOrder: [{\n type: Input\n }], multiSortMeta: [{\n type: Input\n }], selection: [{\n type: Input\n }], selectAll: [{\n type: Input\n }] } });\nclass TableBody {\n constructor(dt, tableService, cd, el) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.el = el;\n this.subscription = this.dt.tableService.valueSource$.subscribe(() => {\n if (this.dt.virtualScroll) {\n this.cd.detectChanges();\n }\n });\n }\n get value() {\n return this._value;\n }\n set value(val) {\n this._value = val;\n if (this.frozenRows) {\n this.updateFrozenRowStickyPosition();\n }\n if (this.dt.scrollable && this.dt.rowGroupMode === 'subheader') {\n this.updateFrozenRowGroupHeaderStickyPosition();\n }\n }\n ngAfterViewInit() {\n if (this.frozenRows) {\n this.updateFrozenRowStickyPosition();\n }\n if (this.dt.scrollable && this.dt.rowGroupMode === 'subheader') {\n this.updateFrozenRowGroupHeaderStickyPosition();\n }\n }\n shouldRenderRowGroupHeader(value, rowData, i) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let prevRowData = value[i - 1];\n if (prevRowData) {\n let previousRowFieldData = ObjectUtils.resolveFieldData(prevRowData, this.dt.groupRowsBy);\n return currentRowFieldData !== previousRowFieldData;\n }\n else {\n return true;\n }\n }\n shouldRenderRowGroupFooter(value, rowData, i) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let nextRowData = value[i + 1];\n if (nextRowData) {\n let nextRowFieldData = ObjectUtils.resolveFieldData(nextRowData, this.dt.groupRowsBy);\n return currentRowFieldData !== nextRowFieldData;\n }\n else {\n return true;\n }\n }\n shouldRenderRowspan(value, rowData, i) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let prevRowData = value[i - 1];\n if (prevRowData) {\n let previousRowFieldData = ObjectUtils.resolveFieldData(prevRowData, this.dt.groupRowsBy);\n return currentRowFieldData !== previousRowFieldData;\n }\n else {\n return true;\n }\n }\n calculateRowGroupSize(value, rowData, index) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let nextRowFieldData = currentRowFieldData;\n let groupRowSpan = 0;\n while (currentRowFieldData === nextRowFieldData) {\n groupRowSpan++;\n let nextRowData = value[++index];\n if (nextRowData) {\n nextRowFieldData = ObjectUtils.resolveFieldData(nextRowData, this.dt.groupRowsBy);\n }\n else {\n break;\n }\n }\n return groupRowSpan === 1 ? null : groupRowSpan;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n updateFrozenRowStickyPosition() {\n this.el.nativeElement.style.top = DomHandler.getOuterHeight(this.el.nativeElement.previousElementSibling) + 'px';\n }\n updateFrozenRowGroupHeaderStickyPosition() {\n if (this.el.nativeElement.previousElementSibling) {\n let tableHeaderHeight = DomHandler.getOuterHeight(this.el.nativeElement.previousElementSibling);\n this.dt.rowGroupHeaderStyleObject.top = tableHeaderHeight + 'px';\n }\n }\n}\nTableBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableBody, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });\nTableBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: TableBody, selector: \"[pTableBody]\", inputs: { columns: [\"pTableBody\", \"columns\"], template: [\"pTableBodyTemplate\", \"template\"], value: \"value\", frozen: \"frozen\", frozenRows: \"frozenRows\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `, isInline: true, directives: [{ type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i3.CdkVirtualForOf, selector: \"[cdkVirtualFor][cdkVirtualForOf]\", inputs: [\"cdkVirtualForOf\", \"cdkVirtualForTrackBy\", \"cdkVirtualForTemplate\", \"cdkVirtualForTemplateCacheSize\"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableBody, decorators: [{\n type: Component,\n args: [{\n selector: '[pTableBody]',\n template: `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `,\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { columns: [{\n type: Input,\n args: [\"pTableBody\"]\n }], template: [{\n type: Input,\n args: [\"pTableBodyTemplate\"]\n }], value: [{\n type: Input\n }], frozen: [{\n type: Input\n }], frozenRows: [{\n type: Input\n }] } });\nclass RowGroupHeader {\n constructor(dt) {\n this.dt = dt;\n }\n get getFrozenRowGroupHeaderStickyPosition() {\n return this.dt.rowGroupHeaderStyleObject ? this.dt.rowGroupHeaderStyleObject.top : '';\n }\n}\nRowGroupHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RowGroupHeader, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Directive });\nRowGroupHeader.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: RowGroupHeader, selector: \"[pRowGroupHeader]\", host: { properties: { \"style.top\": \"getFrozenRowGroupHeaderStickyPosition\" }, classAttribute: \"p-rowgroup-header p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RowGroupHeader, decorators: [{\n type: Directive,\n args: [{\n selector: '[pRowGroupHeader]',\n host: {\n 'class': 'p-rowgroup-header p-element',\n '[style.top]': \"getFrozenRowGroupHeaderStickyPosition\"\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; } });\nclass FrozenColumn {\n constructor(el) {\n this.el = el;\n this.alignFrozen = \"left\";\n this._frozen = true;\n }\n get frozen() {\n return this._frozen;\n }\n set frozen(val) {\n this._frozen = val;\n this.updateStickyPosition();\n }\n ngAfterViewInit() {\n this.updateStickyPosition();\n }\n updateStickyPosition() {\n if (this._frozen) {\n if (this.alignFrozen === 'right') {\n let right = 0;\n let next = this.el.nativeElement.nextElementSibling;\n if (next) {\n right = DomHandler.getOuterWidth(next) + (parseFloat(next.style.right) || 0);\n }\n this.el.nativeElement.style.right = right + 'px';\n }\n else {\n let left = 0;\n let prev = this.el.nativeElement.previousElementSibling;\n if (prev) {\n left = DomHandler.getOuterWidth(prev) + (parseFloat(prev.style.left) || 0);\n }\n this.el.nativeElement.style.left = left + 'px';\n }\n let filterRow = this.el.nativeElement.parentElement.nextElementSibling;\n if (filterRow) {\n let index = DomHandler.index(this.el.nativeElement);\n if (filterRow.children && filterRow.children[index]) {\n filterRow.children[index].style.left = this.el.nativeElement.style.left;\n filterRow.children[index].style.right = this.el.nativeElement.style.right;\n }\n }\n }\n }\n}\nFrozenColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: FrozenColumn, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nFrozenColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: FrozenColumn, selector: \"[pFrozenColumn]\", inputs: { frozen: \"frozen\", alignFrozen: \"alignFrozen\" }, host: { properties: { \"class.p-frozen-column\": \"frozen\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: FrozenColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pFrozenColumn]',\n host: {\n 'class': 'p-element',\n '[class.p-frozen-column]': 'frozen'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { frozen: [{\n type: Input\n }], alignFrozen: [{\n type: Input\n }] } });\nclass SortableColumn {\n constructor(dt) {\n this.dt = dt;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {\n this.updateSortState();\n });\n }\n }\n ngOnInit() {\n if (this.isEnabled()) {\n this.updateSortState();\n }\n }\n updateSortState() {\n this.sorted = this.dt.isSorted(this.field);\n this.sortOrder = this.sorted ? (this.dt.sortOrder === 1 ? 'ascending' : 'descending') : 'none';\n }\n onClick(event) {\n if (this.isEnabled() && !this.isFilterElement(event.target)) {\n this.updateSortState();\n this.dt.sort({\n originalEvent: event,\n field: this.field\n });\n DomHandler.clearSelection();\n }\n }\n onEnterKey(event) {\n this.onClick(event);\n }\n isEnabled() {\n return this.pSortableColumnDisabled !== true;\n }\n isFilterElement(element) {\n return DomHandler.hasClass(element, 'pi-filter-icon') || DomHandler.hasClass(element, 'p-column-filter-menu-button');\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSortableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SortableColumn, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Directive });\nSortableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: SortableColumn, selector: \"[pSortableColumn]\", inputs: { field: [\"pSortableColumn\", \"field\"], pSortableColumnDisabled: \"pSortableColumnDisabled\" }, host: { listeners: { \"click\": \"onClick($event)\", \"keydown.enter\": \"onEnterKey($event)\" }, properties: { \"class.p-sortable-column\": \"isEnabled()\", \"class.p-highlight\": \"sorted\", \"attr.tabindex\": \"isEnabled() ? \\\"0\\\" : null\", \"attr.role\": \"\\\"columnheader\\\"\", \"attr.aria-sort\": \"sortOrder\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SortableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSortableColumn]',\n host: {\n 'class': 'p-element',\n '[class.p-sortable-column]': 'isEnabled()',\n '[class.p-highlight]': 'sorted',\n '[attr.tabindex]': 'isEnabled() ? \"0\" : null',\n '[attr.role]': '\"columnheader\"',\n '[attr.aria-sort]': 'sortOrder'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { field: [{\n type: Input,\n args: [\"pSortableColumn\"]\n }], pSortableColumnDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onEnterKey: [{\n type: HostListener,\n args: ['keydown.enter', ['$event']]\n }] } });\nclass SortIcon {\n constructor(dt, cd) {\n this.dt = dt;\n this.cd = cd;\n this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {\n this.updateSortState();\n });\n }\n ngOnInit() {\n this.updateSortState();\n }\n onClick(event) {\n event.preventDefault();\n }\n updateSortState() {\n if (this.dt.sortMode === 'single') {\n this.sortOrder = this.dt.isSorted(this.field) ? this.dt.sortOrder : 0;\n }\n else if (this.dt.sortMode === 'multiple') {\n let sortMeta = this.dt.getSortMeta(this.field);\n this.sortOrder = sortMeta ? sortMeta.order : 0;\n }\n this.cd.markForCheck();\n }\n getMultiSortMetaIndex() {\n let multiSortMeta = this.dt._multiSortMeta;\n let index = -1;\n if (multiSortMeta && this.dt.sortMode === 'multiple' && (this.dt.showInitialSortBadge || multiSortMeta.length > 1)) {\n for (let i = 0; i < multiSortMeta.length; i++) {\n let meta = multiSortMeta[i];\n if (meta.field === this.field || meta.field === this.field) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n getBadgeValue() {\n let index = this.getMultiSortMetaIndex();\n return this.dt.groupRowsBy && index > -1 ? index : index + 1;\n }\n isMultiSorted() {\n return this.dt.sortMode === 'multiple' && this.getMultiSortMetaIndex() > -1;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSortIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SortIcon, deps: [{ token: Table }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nSortIcon.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: SortIcon, selector: \"p-sortIcon\", inputs: { field: \"field\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n \n {{getBadgeValue()}}\n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SortIcon, decorators: [{\n type: Component,\n args: [{\n selector: 'p-sortIcon',\n template: `\n \n {{getBadgeValue()}}\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { field: [{\n type: Input\n }] } });\nclass SelectableRow {\n constructor(dt, tableService) {\n this.dt = dt;\n this.tableService = tableService;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.selected = this.dt.isSelected(this.data);\n });\n }\n }\n ngOnInit() {\n if (this.isEnabled()) {\n this.selected = this.dt.isSelected(this.data);\n }\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.handleRowClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n }\n }\n onTouchEnd(event) {\n if (this.isEnabled()) {\n this.dt.handleRowTouchEnd(event);\n }\n }\n onArrowDownKeyDown(event) {\n if (!this.isEnabled()) {\n return;\n }\n const row = event.currentTarget;\n const nextRow = this.findNextSelectableRow(row);\n if (nextRow) {\n nextRow.focus();\n }\n event.preventDefault();\n }\n onArrowUpKeyDown(event) {\n if (!this.isEnabled()) {\n return;\n }\n const row = event.currentTarget;\n const prevRow = this.findPrevSelectableRow(row);\n if (prevRow) {\n prevRow.focus();\n }\n event.preventDefault();\n }\n onEnterKeyDown(event) {\n if (!this.isEnabled()) {\n return;\n }\n this.dt.handleRowClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n }\n onPageDownKeyDown() {\n if (this.dt.virtualScroll) {\n this.dt.virtualScrollBody.elementRef.nativeElement.focus();\n }\n }\n onSpaceKeydown() {\n if (this.dt.virtualScroll && !this.dt.editingCell) {\n this.dt.virtualScrollBody.elementRef.nativeElement.focus();\n }\n }\n findNextSelectableRow(row) {\n let nextRow = row.nextElementSibling;\n if (nextRow) {\n if (DomHandler.hasClass(nextRow, 'p-selectable-row'))\n return nextRow;\n else\n return this.findNextSelectableRow(nextRow);\n }\n else {\n return null;\n }\n }\n findPrevSelectableRow(row) {\n let prevRow = row.previousElementSibling;\n if (prevRow) {\n if (DomHandler.hasClass(prevRow, 'p-selectable-row'))\n return prevRow;\n else\n return this.findPrevSelectableRow(prevRow);\n }\n else {\n return null;\n }\n }\n isEnabled() {\n return this.pSelectableRowDisabled !== true;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSelectableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectableRow, deps: [{ token: Table }, { token: TableService }], target: i0.ɵɵFactoryTarget.Directive });\nSelectableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: SelectableRow, selector: \"[pSelectableRow]\", inputs: { data: [\"pSelectableRow\", \"data\"], index: [\"pSelectableRowIndex\", \"index\"], pSelectableRowDisabled: \"pSelectableRowDisabled\" }, host: { listeners: { \"click\": \"onClick($event)\", \"touchend\": \"onTouchEnd($event)\", \"keydown.arrowdown\": \"onArrowDownKeyDown($event)\", \"keydown.arrowup\": \"onArrowUpKeyDown($event)\", \"keydown.enter\": \"onEnterKeyDown($event)\", \"keydown.shift.enter\": \"onEnterKeyDown($event)\", \"keydown.meta.enter\": \"onEnterKeyDown($event)\", \"keydown.pagedown\": \"onPageDownKeyDown()\", \"keydown.pageup\": \"onPageDownKeyDown()\", \"keydown.home\": \"onPageDownKeyDown()\", \"keydown.end\": \"onPageDownKeyDown()\", \"keydown.space\": \"onSpaceKeydown()\" }, properties: { \"class.p-selectable-row\": \"isEnabled()\", \"class.p-highlight\": \"selected\", \"attr.tabindex\": \"isEnabled() ? 0 : undefined\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSelectableRow]',\n host: {\n 'class': 'p-element',\n '[class.p-selectable-row]': 'isEnabled()',\n '[class.p-highlight]': 'selected',\n '[attr.tabindex]': 'isEnabled() ? 0 : undefined'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pSelectableRow\"]\n }], index: [{\n type: Input,\n args: [\"pSelectableRowIndex\"]\n }], pSelectableRowDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onTouchEnd: [{\n type: HostListener,\n args: ['touchend', ['$event']]\n }], onArrowDownKeyDown: [{\n type: HostListener,\n args: ['keydown.arrowdown', ['$event']]\n }], onArrowUpKeyDown: [{\n type: HostListener,\n args: ['keydown.arrowup', ['$event']]\n }], onEnterKeyDown: [{\n type: HostListener,\n args: ['keydown.enter', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.shift.enter', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.meta.enter', ['$event']]\n }], onPageDownKeyDown: [{\n type: HostListener,\n args: ['keydown.pagedown']\n }, {\n type: HostListener,\n args: ['keydown.pageup']\n }, {\n type: HostListener,\n args: ['keydown.home']\n }, {\n type: HostListener,\n args: ['keydown.end']\n }], onSpaceKeydown: [{\n type: HostListener,\n args: ['keydown.space']\n }] } });\nclass SelectableRowDblClick {\n constructor(dt, tableService) {\n this.dt = dt;\n this.tableService = tableService;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.selected = this.dt.isSelected(this.data);\n });\n }\n }\n ngOnInit() {\n if (this.isEnabled()) {\n this.selected = this.dt.isSelected(this.data);\n }\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.handleRowClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n }\n }\n isEnabled() {\n return this.pSelectableRowDisabled !== true;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSelectableRowDblClick.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectableRowDblClick, deps: [{ token: Table }, { token: TableService }], target: i0.ɵɵFactoryTarget.Directive });\nSelectableRowDblClick.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: SelectableRowDblClick, selector: \"[pSelectableRowDblClick]\", inputs: { data: [\"pSelectableRowDblClick\", \"data\"], index: [\"pSelectableRowIndex\", \"index\"], pSelectableRowDisabled: \"pSelectableRowDisabled\" }, host: { listeners: { \"dblclick\": \"onClick($event)\" }, properties: { \"class.p-selectable-row\": \"isEnabled()\", \"class.p-highlight\": \"selected\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SelectableRowDblClick, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSelectableRowDblClick]',\n host: {\n 'class': 'p-element',\n '[class.p-selectable-row]': 'isEnabled()',\n '[class.p-highlight]': 'selected'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pSelectableRowDblClick\"]\n }], index: [{\n type: Input,\n args: [\"pSelectableRowIndex\"]\n }], pSelectableRowDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['dblclick', ['$event']]\n }] } });\nclass ContextMenuRow {\n constructor(dt, tableService, el) {\n this.dt = dt;\n this.tableService = tableService;\n this.el = el;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.contextMenuSource$.subscribe((data) => {\n this.selected = this.dt.equals(this.data, data);\n });\n }\n }\n onContextMenu(event) {\n if (this.isEnabled()) {\n this.dt.handleRowRightClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n this.el.nativeElement.focus();\n event.preventDefault();\n }\n }\n isEnabled() {\n return this.pContextMenuRowDisabled !== true;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nContextMenuRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ContextMenuRow, deps: [{ token: Table }, { token: TableService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nContextMenuRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ContextMenuRow, selector: \"[pContextMenuRow]\", inputs: { data: [\"pContextMenuRow\", \"data\"], index: [\"pContextMenuRowIndex\", \"index\"], pContextMenuRowDisabled: \"pContextMenuRowDisabled\" }, host: { listeners: { \"contextmenu\": \"onContextMenu($event)\" }, properties: { \"class.p-highlight-contextmenu\": \"selected\", \"attr.tabindex\": \"isEnabled() ? 0 : undefined\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ContextMenuRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pContextMenuRow]',\n host: {\n 'class': 'p-element',\n '[class.p-highlight-contextmenu]': 'selected',\n '[attr.tabindex]': 'isEnabled() ? 0 : undefined'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ElementRef }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pContextMenuRow\"]\n }], index: [{\n type: Input,\n args: [\"pContextMenuRowIndex\"]\n }], pContextMenuRowDisabled: [{\n type: Input\n }], onContextMenu: [{\n type: HostListener,\n args: ['contextmenu', ['$event']]\n }] } });\nclass RowToggler {\n constructor(dt) {\n this.dt = dt;\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.toggleRow(this.data, event);\n event.preventDefault();\n }\n }\n isEnabled() {\n return this.pRowTogglerDisabled !== true;\n }\n}\nRowToggler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RowToggler, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Directive });\nRowToggler.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: RowToggler, selector: \"[pRowToggler]\", inputs: { data: [\"pRowToggler\", \"data\"], pRowTogglerDisabled: \"pRowTogglerDisabled\" }, host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: RowToggler, decorators: [{\n type: Directive,\n args: [{\n selector: '[pRowToggler]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { data: [{\n type: Input,\n args: ['pRowToggler']\n }], pRowTogglerDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass ResizableColumn {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n DomHandler.addClass(this.el.nativeElement, 'p-resizable-column');\n this.resizer = document.createElement('span');\n this.resizer.className = 'p-column-resizer';\n this.el.nativeElement.appendChild(this.resizer);\n this.zone.runOutsideAngular(() => {\n this.resizerMouseDownListener = this.onMouseDown.bind(this);\n this.resizer.addEventListener('mousedown', this.resizerMouseDownListener);\n });\n }\n }\n bindDocumentEvents() {\n this.zone.runOutsideAngular(() => {\n this.documentMouseMoveListener = this.onDocumentMouseMove.bind(this);\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseUpListener = this.onDocumentMouseUp.bind(this);\n document.addEventListener('mouseup', this.documentMouseUpListener);\n });\n }\n unbindDocumentEvents() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n }\n onMouseDown(event) {\n if (event.which === 1) {\n this.dt.onColumnResizeBegin(event);\n this.bindDocumentEvents();\n }\n }\n onDocumentMouseMove(event) {\n this.dt.onColumnResize(event);\n }\n onDocumentMouseUp(event) {\n this.dt.onColumnResizeEnd();\n this.unbindDocumentEvents();\n }\n isEnabled() {\n return this.pResizableColumnDisabled !== true;\n }\n ngOnDestroy() {\n if (this.resizerMouseDownListener) {\n this.resizer.removeEventListener('mousedown', this.resizerMouseDownListener);\n }\n this.unbindDocumentEvents();\n }\n}\nResizableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ResizableColumn, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nResizableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ResizableColumn, selector: \"[pResizableColumn]\", inputs: { pResizableColumnDisabled: \"pResizableColumnDisabled\" }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ResizableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pResizableColumn]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pResizableColumnDisabled: [{\n type: Input\n }] } });\nclass ReorderableColumn {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n this.bindEvents();\n }\n }\n bindEvents() {\n this.zone.runOutsideAngular(() => {\n this.mouseDownListener = this.onMouseDown.bind(this);\n this.el.nativeElement.addEventListener('mousedown', this.mouseDownListener);\n this.dragStartListener = this.onDragStart.bind(this);\n this.el.nativeElement.addEventListener('dragstart', this.dragStartListener);\n this.dragOverListener = this.onDragEnter.bind(this);\n this.el.nativeElement.addEventListener('dragover', this.dragOverListener);\n this.dragEnterListener = this.onDragEnter.bind(this);\n this.el.nativeElement.addEventListener('dragenter', this.dragEnterListener);\n this.dragLeaveListener = this.onDragLeave.bind(this);\n this.el.nativeElement.addEventListener('dragleave', this.dragLeaveListener);\n });\n }\n unbindEvents() {\n if (this.mouseDownListener) {\n document.removeEventListener('mousedown', this.mouseDownListener);\n this.mouseDownListener = null;\n }\n if (this.dragOverListener) {\n document.removeEventListener('dragover', this.dragOverListener);\n this.dragOverListener = null;\n }\n if (this.dragEnterListener) {\n document.removeEventListener('dragenter', this.dragEnterListener);\n this.dragEnterListener = null;\n }\n if (this.dragEnterListener) {\n document.removeEventListener('dragenter', this.dragEnterListener);\n this.dragEnterListener = null;\n }\n if (this.dragLeaveListener) {\n document.removeEventListener('dragleave', this.dragLeaveListener);\n this.dragLeaveListener = null;\n }\n }\n onMouseDown(event) {\n if (event.target.nodeName === 'INPUT' || event.target.nodeName === 'TEXTAREA' || DomHandler.hasClass(event.target, 'p-column-resizer'))\n this.el.nativeElement.draggable = false;\n else\n this.el.nativeElement.draggable = true;\n }\n onDragStart(event) {\n this.dt.onColumnDragStart(event, this.el.nativeElement);\n }\n onDragOver(event) {\n event.preventDefault();\n }\n onDragEnter(event) {\n this.dt.onColumnDragEnter(event, this.el.nativeElement);\n }\n onDragLeave(event) {\n this.dt.onColumnDragLeave(event);\n }\n onDrop(event) {\n if (this.isEnabled()) {\n this.dt.onColumnDrop(event, this.el.nativeElement);\n }\n }\n isEnabled() {\n return this.pReorderableColumnDisabled !== true;\n }\n ngOnDestroy() {\n this.unbindEvents();\n }\n}\nReorderableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ReorderableColumn, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nReorderableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ReorderableColumn, selector: \"[pReorderableColumn]\", inputs: { pReorderableColumnDisabled: \"pReorderableColumnDisabled\" }, host: { listeners: { \"drop\": \"onDrop($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ReorderableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pReorderableColumn]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pReorderableColumnDisabled: [{\n type: Input\n }], onDrop: [{\n type: HostListener,\n args: ['drop', ['$event']]\n }] } });\nclass EditableColumn {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n DomHandler.addClass(this.el.nativeElement, 'p-editable-column');\n }\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.selfClick = true;\n if (this.dt.editingCell) {\n if (this.dt.editingCell !== this.el.nativeElement) {\n if (!this.dt.isEditingCellValid()) {\n return;\n }\n this.closeEditingCell(true, event);\n this.openCell();\n }\n }\n else {\n this.openCell();\n }\n }\n }\n openCell() {\n this.dt.updateEditingCell(this.el.nativeElement, this.data, this.field, this.rowIndex);\n DomHandler.addClass(this.el.nativeElement, 'p-cell-editing');\n this.dt.onEditInit.emit({ field: this.field, data: this.data, index: this.rowIndex });\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n let focusCellSelector = this.pFocusCellSelector || 'input, textarea, select';\n let focusableElement = DomHandler.findSingle(this.el.nativeElement, focusCellSelector);\n if (focusableElement) {\n focusableElement.focus();\n }\n }, 50);\n });\n this.overlayEventListener = (e) => {\n if (this.el && this.el.nativeElement.contains(e.target)) {\n this.dt.selfClick = true;\n }\n };\n this.dt.overlaySubscription = this.dt.overlayService.clickObservable.subscribe(this.overlayEventListener);\n }\n closeEditingCell(completed, event) {\n if (completed)\n this.dt.onEditComplete.emit({ field: this.dt.editingCellField, data: this.dt.editingCellData, originalEvent: event, index: this.dt.editingCellRowIndex });\n else\n this.dt.onEditCancel.emit({ field: this.dt.editingCellField, data: this.dt.editingCellData, originalEvent: event, index: this.dt.editingCellRowIndex });\n DomHandler.removeClass(this.dt.editingCell, 'p-cell-editing');\n this.dt.editingCell = null;\n this.dt.editingCellData = null;\n this.dt.editingCellField = null;\n this.dt.unbindDocumentEditListener();\n if (this.dt.overlaySubscription) {\n this.dt.overlaySubscription.unsubscribe();\n }\n }\n onEnterKeyDown(event) {\n if (this.isEnabled()) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n event.preventDefault();\n }\n }\n onEscapeKeyDown(event) {\n if (this.isEnabled()) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(false, event);\n }\n event.preventDefault();\n }\n }\n onShiftKeyDown(event) {\n if (this.isEnabled()) {\n if (event.shiftKey)\n this.moveToPreviousCell(event);\n else {\n this.moveToNextCell(event);\n }\n }\n }\n onArrowDown(event) {\n if (this.isEnabled()) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let cellIndex = DomHandler.index(currentCell);\n let targetCell = this.findNextEditableColumnByIndex(currentCell, cellIndex);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n }\n event.preventDefault();\n }\n }\n }\n onArrowUp(event) {\n if (this.isEnabled()) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let cellIndex = DomHandler.index(currentCell);\n let targetCell = this.findPrevEditableColumnByIndex(currentCell, cellIndex);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n }\n event.preventDefault();\n }\n }\n }\n onArrowLeft(event) {\n if (this.isEnabled()) {\n this.moveToPreviousCell(event);\n }\n }\n onArrowRight(event) {\n if (this.isEnabled()) {\n this.moveToNextCell(event);\n }\n }\n findCell(element) {\n if (element) {\n let cell = element;\n while (cell && !DomHandler.hasClass(cell, 'p-cell-editing')) {\n cell = cell.parentElement;\n }\n return cell;\n }\n else {\n return null;\n }\n }\n moveToPreviousCell(event) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let targetCell = this.findPreviousEditableColumn(currentCell);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n event.preventDefault();\n }\n }\n }\n moveToNextCell(event) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let targetCell = this.findNextEditableColumn(currentCell);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n event.preventDefault();\n }\n }\n }\n findPreviousEditableColumn(cell) {\n let prevCell = cell.previousElementSibling;\n if (!prevCell) {\n let previousRow = cell.parentElement.previousElementSibling;\n if (previousRow) {\n prevCell = previousRow.lastElementChild;\n }\n }\n if (prevCell) {\n if (DomHandler.hasClass(prevCell, 'p-editable-column'))\n return prevCell;\n else\n return this.findPreviousEditableColumn(prevCell);\n }\n else {\n return null;\n }\n }\n findNextEditableColumn(cell) {\n let nextCell = cell.nextElementSibling;\n if (!nextCell) {\n let nextRow = cell.parentElement.nextElementSibling;\n if (nextRow) {\n nextCell = nextRow.firstElementChild;\n }\n }\n if (nextCell) {\n if (DomHandler.hasClass(nextCell, 'p-editable-column'))\n return nextCell;\n else\n return this.findNextEditableColumn(nextCell);\n }\n else {\n return null;\n }\n }\n findNextEditableColumnByIndex(cell, index) {\n let nextRow = cell.parentElement.nextElementSibling;\n if (nextRow) {\n let nextCell = nextRow.children[index];\n if (nextCell && DomHandler.hasClass(nextCell, 'p-editable-column')) {\n return nextCell;\n }\n return null;\n }\n else {\n return null;\n }\n }\n findPrevEditableColumnByIndex(cell, index) {\n let prevRow = cell.parentElement.previousElementSibling;\n if (prevRow) {\n let prevCell = prevRow.children[index];\n if (prevCell && DomHandler.hasClass(prevCell, 'p-editable-column')) {\n return prevCell;\n }\n return null;\n }\n else {\n return null;\n }\n }\n isEnabled() {\n return this.pEditableColumnDisabled !== true;\n }\n ngOnDestroy() {\n if (this.dt.overlaySubscription) {\n this.dt.overlaySubscription.unsubscribe();\n }\n }\n}\nEditableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: EditableColumn, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nEditableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: EditableColumn, selector: \"[pEditableColumn]\", inputs: { data: [\"pEditableColumn\", \"data\"], field: [\"pEditableColumnField\", \"field\"], rowIndex: [\"pEditableColumnRowIndex\", \"rowIndex\"], pEditableColumnDisabled: \"pEditableColumnDisabled\", pFocusCellSelector: \"pFocusCellSelector\" }, host: { listeners: { \"click\": \"onClick($event)\", \"keydown.enter\": \"onEnterKeyDown($event)\", \"keydown.escape\": \"onEscapeKeyDown($event)\", \"keydown.tab\": \"onShiftKeyDown($event)\", \"keydown.shift.tab\": \"onShiftKeyDown($event)\", \"keydown.meta.tab\": \"onShiftKeyDown($event)\", \"keydown.arrowdown\": \"onArrowDown($event)\", \"keydown.arrowup\": \"onArrowUp($event)\", \"keydown.arrowleft\": \"onArrowLeft($event)\", \"keydown.arrowright\": \"onArrowRight($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: EditableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pEditableColumn]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pEditableColumn\"]\n }], field: [{\n type: Input,\n args: [\"pEditableColumnField\"]\n }], rowIndex: [{\n type: Input,\n args: [\"pEditableColumnRowIndex\"]\n }], pEditableColumnDisabled: [{\n type: Input\n }], pFocusCellSelector: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onEnterKeyDown: [{\n type: HostListener,\n args: ['keydown.enter', ['$event']]\n }], onEscapeKeyDown: [{\n type: HostListener,\n args: ['keydown.escape', ['$event']]\n }], onShiftKeyDown: [{\n type: HostListener,\n args: ['keydown.tab', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.shift.tab', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.meta.tab', ['$event']]\n }], onArrowDown: [{\n type: HostListener,\n args: ['keydown.arrowdown', ['$event']]\n }], onArrowUp: [{\n type: HostListener,\n args: ['keydown.arrowup', ['$event']]\n }], onArrowLeft: [{\n type: HostListener,\n args: ['keydown.arrowleft', ['$event']]\n }], onArrowRight: [{\n type: HostListener,\n args: ['keydown.arrowright', ['$event']]\n }] } });\nclass EditableRow {\n constructor(el) {\n this.el = el;\n }\n isEnabled() {\n return this.pEditableRowDisabled !== true;\n }\n}\nEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: EditableRow, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: EditableRow, selector: \"[pEditableRow]\", inputs: { data: [\"pEditableRow\", \"data\"], pEditableRowDisabled: \"pEditableRowDisabled\" }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: EditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pEditableRow\"]\n }], pEditableRowDisabled: [{\n type: Input\n }] } });\nclass InitEditableRow {\n constructor(dt, editableRow) {\n this.dt = dt;\n this.editableRow = editableRow;\n }\n onClick(event) {\n this.dt.initRowEdit(this.editableRow.data);\n event.preventDefault();\n }\n}\nInitEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InitEditableRow, deps: [{ token: Table }, { token: EditableRow }], target: i0.ɵɵFactoryTarget.Directive });\nInitEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: InitEditableRow, selector: \"[pInitEditableRow]\", host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: InitEditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pInitEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass SaveEditableRow {\n constructor(dt, editableRow) {\n this.dt = dt;\n this.editableRow = editableRow;\n }\n onClick(event) {\n this.dt.saveRowEdit(this.editableRow.data, this.editableRow.el.nativeElement);\n event.preventDefault();\n }\n}\nSaveEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SaveEditableRow, deps: [{ token: Table }, { token: EditableRow }], target: i0.ɵɵFactoryTarget.Directive });\nSaveEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: SaveEditableRow, selector: \"[pSaveEditableRow]\", host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: SaveEditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSaveEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass CancelEditableRow {\n constructor(dt, editableRow) {\n this.dt = dt;\n this.editableRow = editableRow;\n }\n onClick(event) {\n this.dt.cancelRowEdit(this.editableRow.data);\n event.preventDefault();\n }\n}\nCancelEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CancelEditableRow, deps: [{ token: Table }, { token: EditableRow }], target: i0.ɵɵFactoryTarget.Directive });\nCancelEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: CancelEditableRow, selector: \"[pCancelEditableRow]\", host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CancelEditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pCancelEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass CellEditor {\n constructor(dt, editableColumn, editableRow) {\n this.dt = dt;\n this.editableColumn = editableColumn;\n this.editableRow = editableRow;\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'input':\n this.inputTemplate = item.template;\n break;\n case 'output':\n this.outputTemplate = item.template;\n break;\n }\n });\n }\n get editing() {\n return (this.dt.editingCell && this.editableColumn && this.dt.editingCell === this.editableColumn.el.nativeElement) ||\n (this.editableRow && this.dt.editMode === 'row' && this.dt.isRowEditing(this.editableRow.data));\n }\n}\nCellEditor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CellEditor, deps: [{ token: Table }, { token: EditableColumn, optional: true }, { token: EditableRow, optional: true }], target: i0.ɵɵFactoryTarget.Component });\nCellEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: CellEditor, selector: \"p-cellEditor\", host: { classAttribute: \"p-element\" }, queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], ngImport: i0, template: `\n \n \n \n \n \n \n `, isInline: true, directives: [{ type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: CellEditor, decorators: [{\n type: Component,\n args: [{\n selector: 'p-cellEditor',\n template: `\n \n \n \n \n \n \n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () {\n return [{ type: Table }, { type: EditableColumn, decorators: [{\n type: Optional\n }] }, { type: EditableRow, decorators: [{\n type: Optional\n }] }];\n }, propDecorators: { templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }] } });\nclass TableRadioButton {\n constructor(dt, tableService, cd) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.checked = this.dt.isSelected(this.value);\n this.cd.markForCheck();\n });\n }\n ngOnInit() {\n this.checked = this.dt.isSelected(this.value);\n }\n onClick(event) {\n if (!this.disabled) {\n this.dt.toggleRowWithRadio({\n originalEvent: event,\n rowIndex: this.index\n }, this.value);\n }\n DomHandler.clearSelection();\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nTableRadioButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableRadioButton, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTableRadioButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: TableRadioButton, selector: \"p-tableRadioButton\", inputs: { disabled: \"disabled\", value: \"value\", index: \"index\", inputId: \"inputId\", name: \"name\", ariaLabel: \"ariaLabel\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableRadioButton, decorators: [{\n type: Component,\n args: [{\n selector: 'p-tableRadioButton',\n template: `\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], value: [{\n type: Input\n }], index: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }] } });\nclass TableCheckbox {\n constructor(dt, tableService, cd) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.checked = this.dt.isSelected(this.value);\n this.cd.markForCheck();\n });\n }\n ngOnInit() {\n this.checked = this.dt.isSelected(this.value);\n }\n onClick(event) {\n if (!this.disabled) {\n this.dt.toggleRowWithCheckbox({\n originalEvent: event,\n rowIndex: this.index\n }, this.value);\n }\n DomHandler.clearSelection();\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nTableCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableCheckbox, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTableCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: TableCheckbox, selector: \"p-tableCheckbox\", inputs: { disabled: \"disabled\", value: \"value\", index: \"index\", inputId: \"inputId\", name: \"name\", required: \"required\", ariaLabel: \"ariaLabel\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableCheckbox, decorators: [{\n type: Component,\n args: [{\n selector: 'p-tableCheckbox',\n template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], value: [{\n type: Input\n }], index: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], required: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }] } });\nclass TableHeaderCheckbox {\n constructor(dt, tableService, cd) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.valueChangeSubscription = this.dt.tableService.valueSource$.subscribe(() => {\n this.checked = this.updateCheckedState();\n });\n this.selectionChangeSubscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.checked = this.updateCheckedState();\n });\n }\n ngOnInit() {\n this.checked = this.updateCheckedState();\n }\n onClick(event) {\n if (!this.disabled) {\n if (this.dt.value && this.dt.value.length > 0) {\n this.dt.toggleRowsWithCheckbox(event, !this.checked);\n }\n }\n DomHandler.clearSelection();\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n }\n isDisabled() {\n return this.disabled || !this.dt.value || !this.dt.value.length;\n }\n ngOnDestroy() {\n if (this.selectionChangeSubscription) {\n this.selectionChangeSubscription.unsubscribe();\n }\n if (this.valueChangeSubscription) {\n this.valueChangeSubscription.unsubscribe();\n }\n }\n updateCheckedState() {\n this.cd.markForCheck();\n if (this.dt._selectAll !== null) {\n return this.dt._selectAll;\n }\n else {\n const data = this.dt.selectionPageOnly ? this.dt.dataToRender : (this.dt.filteredValue || this.dt.value || []);\n const val = this.dt.frozenValue ? [...this.dt.frozenValue, ...data] : data;\n const selectableVal = this.dt.rowSelectable ? val.filter((data, index) => this.dt.rowSelectable({ data, index })) : val;\n return ObjectUtils.isNotEmpty(selectableVal) && ObjectUtils.isNotEmpty(this.dt.selection) && selectableVal.every(v => this.dt.selection.some(s => this.dt.equals(v, s)));\n }\n }\n}\nTableHeaderCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableHeaderCheckbox, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTableHeaderCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: TableHeaderCheckbox, selector: \"p-tableHeaderCheckbox\", inputs: { disabled: \"disabled\", inputId: \"inputId\", name: \"name\", ariaLabel: \"ariaLabel\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableHeaderCheckbox, decorators: [{\n type: Component,\n args: [{\n selector: 'p-tableHeaderCheckbox',\n template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }] } });\nclass ReorderableRowHandle {\n constructor(el) {\n this.el = el;\n }\n ngAfterViewInit() {\n DomHandler.addClass(this.el.nativeElement, 'p-datatable-reorderablerow-handle');\n }\n}\nReorderableRowHandle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ReorderableRowHandle, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nReorderableRowHandle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ReorderableRowHandle, selector: \"[pReorderableRowHandle]\", inputs: { index: [\"pReorderableRowHandle\", \"index\"] }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ReorderableRowHandle, decorators: [{\n type: Directive,\n args: [{\n selector: '[pReorderableRowHandle]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { index: [{\n type: Input,\n args: [\"pReorderableRowHandle\"]\n }] } });\nclass ReorderableRow {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n this.el.nativeElement.droppable = true;\n this.bindEvents();\n }\n }\n bindEvents() {\n this.zone.runOutsideAngular(() => {\n this.mouseDownListener = this.onMouseDown.bind(this);\n this.el.nativeElement.addEventListener('mousedown', this.mouseDownListener);\n this.dragStartListener = this.onDragStart.bind(this);\n this.el.nativeElement.addEventListener('dragstart', this.dragStartListener);\n this.dragEndListener = this.onDragEnd.bind(this);\n this.el.nativeElement.addEventListener('dragend', this.dragEndListener);\n this.dragOverListener = this.onDragOver.bind(this);\n this.el.nativeElement.addEventListener('dragover', this.dragOverListener);\n this.dragLeaveListener = this.onDragLeave.bind(this);\n this.el.nativeElement.addEventListener('dragleave', this.dragLeaveListener);\n });\n }\n unbindEvents() {\n if (this.mouseDownListener) {\n document.removeEventListener('mousedown', this.mouseDownListener);\n this.mouseDownListener = null;\n }\n if (this.dragStartListener) {\n document.removeEventListener('dragstart', this.dragStartListener);\n this.dragStartListener = null;\n }\n if (this.dragEndListener) {\n document.removeEventListener('dragend', this.dragEndListener);\n this.dragEndListener = null;\n }\n if (this.dragOverListener) {\n document.removeEventListener('dragover', this.dragOverListener);\n this.dragOverListener = null;\n }\n if (this.dragLeaveListener) {\n document.removeEventListener('dragleave', this.dragLeaveListener);\n this.dragLeaveListener = null;\n }\n }\n onMouseDown(event) {\n if (DomHandler.hasClass(event.target, 'p-datatable-reorderablerow-handle'))\n this.el.nativeElement.draggable = true;\n else\n this.el.nativeElement.draggable = false;\n }\n onDragStart(event) {\n this.dt.onRowDragStart(event, this.index);\n }\n onDragEnd(event) {\n this.dt.onRowDragEnd(event);\n this.el.nativeElement.draggable = false;\n }\n onDragOver(event) {\n this.dt.onRowDragOver(event, this.index, this.el.nativeElement);\n event.preventDefault();\n }\n onDragLeave(event) {\n this.dt.onRowDragLeave(event, this.el.nativeElement);\n }\n isEnabled() {\n return this.pReorderableRowDisabled !== true;\n }\n onDrop(event) {\n if (this.isEnabled() && this.dt.rowDragging) {\n this.dt.onRowDrop(event, this.el.nativeElement);\n }\n event.preventDefault();\n }\n ngOnDestroy() {\n this.unbindEvents();\n }\n}\nReorderableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ReorderableRow, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nReorderableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ReorderableRow, selector: \"[pReorderableRow]\", inputs: { index: [\"pReorderableRow\", \"index\"], pReorderableRowDisabled: \"pReorderableRowDisabled\" }, host: { listeners: { \"drop\": \"onDrop($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ReorderableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pReorderableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { index: [{\n type: Input,\n args: [\"pReorderableRow\"]\n }], pReorderableRowDisabled: [{\n type: Input\n }], onDrop: [{\n type: HostListener,\n args: ['drop', ['$event']]\n }] } });\nclass ColumnFilterFormElement {\n constructor(dt) {\n this.dt = dt;\n this.useGrouping = true;\n }\n ngOnInit() {\n this.filterCallback = value => {\n this.filterConstraint.value = value;\n this.dt._filter();\n };\n }\n onModelChange(value) {\n this.filterConstraint.value = value;\n if (this.type === 'boolean' || value === '') {\n this.dt._filter();\n }\n }\n onTextInputEnterKeyDown(event) {\n this.dt._filter();\n event.preventDefault();\n }\n onNumericInputKeyDown(event) {\n if (event.key === 'Enter') {\n this.dt._filter();\n event.preventDefault();\n }\n }\n}\nColumnFilterFormElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ColumnFilterFormElement, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Component });\nColumnFilterFormElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ColumnFilterFormElement, selector: \"p-columnFilterFormElement\", inputs: { field: \"field\", type: \"type\", filterConstraint: \"filterConstraint\", filterTemplate: \"filterTemplate\", placeholder: \"placeholder\", minFractionDigits: \"minFractionDigits\", maxFractionDigits: \"maxFractionDigits\", prefix: \"prefix\", suffix: \"suffix\", locale: \"locale\", localeMatcher: \"localeMatcher\", currency: \"currency\", currencyDisplay: \"currencyDisplay\", useGrouping: \"useGrouping\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n \n \n \n \n \n \n \n \n \n \n \n `, isInline: true, components: [{ type: i5.InputNumber, selector: \"p-inputNumber\", inputs: [\"showButtons\", \"format\", \"buttonLayout\", \"inputId\", \"styleClass\", \"style\", \"placeholder\", \"size\", \"maxlength\", \"tabindex\", \"title\", \"ariaLabel\", \"ariaRequired\", \"name\", \"required\", \"autocomplete\", \"min\", \"max\", \"incrementButtonClass\", \"decrementButtonClass\", \"incrementButtonIcon\", \"decrementButtonIcon\", \"readonly\", \"step\", \"allowEmpty\", \"locale\", \"localeMatcher\", \"mode\", \"currency\", \"currencyDisplay\", \"useGrouping\", \"minFractionDigits\", \"maxFractionDigits\", \"prefix\", \"suffix\", \"inputStyle\", \"inputStyleClass\", \"showClear\", \"disabled\"], outputs: [\"onInput\", \"onFocus\", \"onBlur\", \"onKeyDown\", \"onClear\"] }, { type: i6.TriStateCheckbox, selector: \"p-triStateCheckbox\", inputs: [\"disabled\", \"name\", \"ariaLabelledBy\", \"tabindex\", \"inputId\", \"style\", \"styleClass\", \"label\", \"readonly\", \"checkboxTrueIcon\", \"checkboxFalseIcon\"], outputs: [\"onChange\"] }, { type: i7.Calendar, selector: \"p-calendar\", inputs: [\"style\", \"styleClass\", \"inputStyle\", \"inputId\", \"name\", \"inputStyleClass\", \"placeholder\", \"ariaLabelledBy\", \"iconAriaLabel\", \"disabled\", \"dateFormat\", \"multipleSeparator\", \"rangeSeparator\", \"inline\", \"showOtherMonths\", \"selectOtherMonths\", \"showIcon\", \"icon\", \"appendTo\", \"readonlyInput\", \"shortYearCutoff\", \"monthNavigator\", \"yearNavigator\", \"hourFormat\", \"timeOnly\", \"stepHour\", \"stepMinute\", \"stepSecond\", \"showSeconds\", \"required\", \"showOnFocus\", \"showWeek\", \"showClear\", \"dataType\", \"selectionMode\", \"maxDateCount\", \"showButtonBar\", \"todayButtonStyleClass\", \"clearButtonStyleClass\", \"autoZIndex\", \"baseZIndex\", \"panelStyleClass\", \"panelStyle\", \"keepInvalid\", \"hideOnDateTimeSelect\", \"touchUI\", \"timeSeparator\", \"focusTrap\", \"showTransitionOptions\", \"hideTransitionOptions\", \"tabindex\", \"view\", \"defaultDate\", \"minDate\", \"maxDate\", \"disabledDates\", \"disabledDays\", \"yearRange\", \"showTime\", \"responsiveOptions\", \"numberOfMonths\", \"firstDayOfWeek\", \"locale\"], outputs: [\"onFocus\", \"onBlur\", \"onClose\", \"onSelect\", \"onClear\", \"onInput\", \"onTodayClick\", \"onClearClick\", \"onMonthChange\", \"onYearChange\", \"onClickOutside\", \"onShow\"] }], directives: [{ type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i4.NgSwitch, selector: \"[ngSwitch]\", inputs: [\"ngSwitch\"] }, { type: i4.NgSwitchCase, selector: \"[ngSwitchCase]\", inputs: [\"ngSwitchCase\"] }, { type: i8.InputText, selector: \"[pInputText]\" }, { type: i9.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { type: i9.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ColumnFilterFormElement, decorators: [{\n type: Component,\n args: [{\n selector: 'p-columnFilterFormElement',\n template: `\n \n \n \n \n \n \n \n \n \n \n \n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { field: [{\n type: Input\n }], type: [{\n type: Input\n }], filterConstraint: [{\n type: Input\n }], filterTemplate: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], minFractionDigits: [{\n type: Input\n }], maxFractionDigits: [{\n type: Input\n }], prefix: [{\n type: Input\n }], suffix: [{\n type: Input\n }], locale: [{\n type: Input\n }], localeMatcher: [{\n type: Input\n }], currency: [{\n type: Input\n }], currencyDisplay: [{\n type: Input\n }], useGrouping: [{\n type: Input\n }] } });\nclass ColumnFilter {\n constructor(el, dt, renderer, config, overlayService) {\n this.el = el;\n this.dt = dt;\n this.renderer = renderer;\n this.config = config;\n this.overlayService = overlayService;\n this.type = 'text';\n this.display = 'row';\n this.showMenu = true;\n this.operator = FilterOperator.AND;\n this.showOperator = true;\n this.showClearButton = true;\n this.showApplyButton = true;\n this.showMatchModes = true;\n this.showAddButton = true;\n this.hideOnClear = false;\n this.maxConstraints = 2;\n this.useGrouping = true;\n }\n ngOnInit() {\n if (!this.dt.filters[this.field]) {\n this.initFieldFilterConstraint();\n }\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.generateMatchModeOptions();\n this.generateOperatorOptions();\n });\n this.resetSubscription = this.dt.tableService.resetSource$.subscribe(() => {\n this.initFieldFilterConstraint();\n });\n this.generateMatchModeOptions();\n this.generateOperatorOptions();\n }\n generateMatchModeOptions() {\n var _a;\n this.matchModes = this.matchModeOptions ||\n ((_a = this.config.filterMatchModeOptions[this.type]) === null || _a === void 0 ? void 0 : _a.map(key => {\n return { label: this.config.getTranslation(key), value: key };\n }));\n }\n generateOperatorOptions() {\n this.operatorOptions = [\n { label: this.config.getTranslation(TranslationKeys.MATCH_ALL), value: FilterOperator.AND },\n { label: this.config.getTranslation(TranslationKeys.MATCH_ANY), value: FilterOperator.OR }\n ];\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'filter':\n this.filterTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n default:\n this.filterTemplate = item.template;\n break;\n }\n });\n }\n initFieldFilterConstraint() {\n let defaultMatchMode = this.getDefaultMatchMode();\n this.dt.filters[this.field] = this.display == 'row' ? { value: null, matchMode: defaultMatchMode } : [{ value: null, matchMode: defaultMatchMode, operator: this.operator }];\n }\n onMenuMatchModeChange(value, filterMeta) {\n filterMeta.matchMode = value;\n if (!this.showApplyButton) {\n this.dt._filter();\n }\n }\n onRowMatchModeChange(matchMode) {\n this.dt.filters[this.field].matchMode = matchMode;\n this.dt._filter();\n this.hide();\n }\n onRowMatchModeKeyDown(event) {\n let item = event.target;\n switch (event.key) {\n case 'ArrowDown':\n var nextItem = this.findNextItem(item);\n if (nextItem) {\n item.removeAttribute('tabindex');\n nextItem.tabIndex = '0';\n nextItem.focus();\n }\n event.preventDefault();\n break;\n case 'ArrowUp':\n var prevItem = this.findPrevItem(item);\n if (prevItem) {\n item.removeAttribute('tabindex');\n prevItem.tabIndex = '0';\n prevItem.focus();\n }\n event.preventDefault();\n break;\n }\n }\n onRowClearItemClick() {\n this.clearFilter();\n this.hide();\n }\n isRowMatchModeSelected(matchMode) {\n return this.dt.filters[this.field].matchMode === matchMode;\n }\n addConstraint() {\n this.dt.filters[this.field].push({ value: null, matchMode: this.getDefaultMatchMode(), operator: this.getDefaultOperator() });\n this.dt._filter();\n }\n removeConstraint(filterMeta) {\n this.dt.filters[this.field] = this.dt.filters[this.field].filter(meta => meta !== filterMeta);\n this.dt._filter();\n }\n onOperatorChange(value) {\n this.dt.filters[this.field].forEach(filterMeta => {\n filterMeta.operator = value;\n this.operator = value;\n });\n if (!this.showApplyButton) {\n this.dt._filter();\n }\n }\n toggleMenu() {\n this.overlayVisible = !this.overlayVisible;\n }\n onToggleButtonKeyDown(event) {\n switch (event.key) {\n case 'Escape':\n case 'Tab':\n this.overlayVisible = false;\n break;\n case 'ArrowDown':\n if (this.overlayVisible) {\n let focusable = DomHandler.getFocusableElements(this.overlay);\n if (focusable) {\n focusable[0].focus();\n }\n event.preventDefault();\n }\n else if (event.altKey) {\n this.overlayVisible = true;\n event.preventDefault();\n }\n break;\n }\n }\n onEscape() {\n this.overlayVisible = false;\n this.icon.nativeElement.focus();\n }\n findNextItem(item) {\n let nextItem = item.nextElementSibling;\n if (nextItem)\n return DomHandler.hasClass(nextItem, 'p-column-filter-separator') ? this.findNextItem(nextItem) : nextItem;\n else\n return item.parentElement.firstElementChild;\n }\n findPrevItem(item) {\n let prevItem = item.previousElementSibling;\n if (prevItem)\n return DomHandler.hasClass(prevItem, 'p-column-filter-separator') ? this.findPrevItem(prevItem) : prevItem;\n else\n return item.parentElement.lastElementChild;\n }\n onContentClick() {\n this.selfClick = true;\n }\n onOverlayAnimationStart(event) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n document.body.appendChild(this.overlay);\n ZIndexUtils.set('overlay', this.overlay, this.config.zIndex.overlay);\n DomHandler.absolutePosition(this.overlay, this.icon.nativeElement);\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n this.overlayEventListener = (e) => {\n if (this.overlay && this.overlay.contains(e.target)) {\n this.selfClick = true;\n }\n };\n this.overlaySubscription = this.overlayService.clickObservable.subscribe(this.overlayEventListener);\n break;\n case 'void':\n this.onOverlayHide();\n if (this.overlaySubscription) {\n this.overlaySubscription.unsubscribe();\n }\n break;\n }\n }\n onOverlayAnimationEnd(event) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n getDefaultMatchMode() {\n if (this.matchMode) {\n return this.matchMode;\n }\n else {\n if (this.type === 'text')\n return FilterMatchMode.STARTS_WITH;\n else if (this.type === 'numeric')\n return FilterMatchMode.EQUALS;\n else if (this.type === 'date')\n return FilterMatchMode.DATE_IS;\n else\n return FilterMatchMode.CONTAINS;\n }\n }\n getDefaultOperator() {\n return this.dt.filters ? this.dt.filters[this.field][0].operator : this.operator;\n }\n hasRowFilter() {\n return this.dt.filters[this.field] && !this.dt.isFilterBlank(this.dt.filters[this.field].value);\n }\n get fieldConstraints() {\n return this.dt.filters ? this.dt.filters[this.field] : null;\n }\n get showRemoveIcon() {\n return this.fieldConstraints ? this.fieldConstraints.length > 1 : false;\n }\n get showMenuButton() {\n return this.showMenu && (this.display === 'row' ? this.type !== 'boolean' : true);\n }\n get isShowOperator() {\n return this.showOperator && this.type !== 'boolean';\n }\n get isShowAddConstraint() {\n return this.showAddButton && this.type !== 'boolean' && (this.fieldConstraints && this.fieldConstraints.length < this.maxConstraints);\n }\n get applyButtonLabel() {\n return this.config.getTranslation(TranslationKeys.APPLY);\n }\n get clearButtonLabel() {\n return this.config.getTranslation(TranslationKeys.CLEAR);\n }\n get addRuleButtonLabel() {\n return this.config.getTranslation(TranslationKeys.ADD_RULE);\n }\n get removeRuleButtonLabel() {\n return this.config.getTranslation(TranslationKeys.REMOVE_RULE);\n }\n get noFilterLabel() {\n return this.config.getTranslation(TranslationKeys.NO_FILTER);\n }\n hasFilter() {\n let fieldFilter = this.dt.filters[this.field];\n if (fieldFilter) {\n if (Array.isArray(fieldFilter))\n return !this.dt.isFilterBlank(fieldFilter[0].value);\n else\n return !this.dt.isFilterBlank(fieldFilter.value);\n }\n return false;\n }\n isOutsideClicked(event) {\n return !(this.overlay.isSameNode(event.target) || this.overlay.contains(event.target)\n || this.icon.nativeElement.isSameNode(event.target) || this.icon.nativeElement.contains(event.target)\n || DomHandler.hasClass(event.target, 'p-column-filter-add-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-add-button')\n || DomHandler.hasClass(event.target, 'p-column-filter-remove-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-remove-button'));\n }\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';\n this.documentClickListener = this.renderer.listen(documentTarget, 'mousedown', event => {\n if (this.overlayVisible && !this.selfClick && this.isOutsideClicked(event)) {\n this.hide();\n }\n this.selfClick = false;\n });\n }\n }\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n this.selfClick = false;\n }\n }\n bindDocumentResizeListener() {\n this.documentResizeListener = () => this.hide();\n window.addEventListener('resize', this.documentResizeListener);\n }\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.icon.nativeElement, () => {\n if (this.overlayVisible) {\n this.hide();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n hide() {\n this.overlayVisible = false;\n }\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.overlay = null;\n }\n clearFilter() {\n this.initFieldFilterConstraint();\n this.dt._filter();\n if (this.hideOnClear)\n this.hide();\n }\n applyFilter() {\n this.dt._filter();\n this.hide();\n }\n ngOnDestroy() {\n if (this.overlay) {\n this.el.nativeElement.appendChild(this.overlay);\n ZIndexUtils.clear(this.overlay);\n this.onOverlayHide();\n }\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n if (this.resetSubscription) {\n this.resetSubscription.unsubscribe();\n }\n if (this.overlaySubscription) {\n this.overlaySubscription.unsubscribe();\n }\n }\n}\nColumnFilter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ColumnFilter, deps: [{ token: i0.ElementRef }, { token: Table }, { token: i0.Renderer2 }, { token: i1.PrimeNGConfig }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nColumnFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.7\", type: ColumnFilter, selector: \"p-columnFilter\", inputs: { field: \"field\", type: \"type\", display: \"display\", showMenu: \"showMenu\", matchMode: \"matchMode\", operator: \"operator\", showOperator: \"showOperator\", showClearButton: \"showClearButton\", showApplyButton: \"showApplyButton\", showMatchModes: \"showMatchModes\", showAddButton: \"showAddButton\", hideOnClear: \"hideOnClear\", placeholder: \"placeholder\", matchModeOptions: \"matchModeOptions\", maxConstraints: \"maxConstraints\", minFractionDigits: \"minFractionDigits\", maxFractionDigits: \"maxFractionDigits\", prefix: \"prefix\", suffix: \"suffix\", locale: \"locale\", localeMatcher: \"localeMatcher\", currency: \"currency\", currencyDisplay: \"currencyDisplay\", useGrouping: \"useGrouping\" }, host: { classAttribute: \"p-element\" }, queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"icon\", first: true, predicate: [\"icon\"], descendants: true }], ngImport: i0, template: `\n
    \n \n \n \n
    \n \n
      \n
    • {{matchMode.label}}
    • \n
    • \n
    • {{noFilterLabel}}
    • \n
    \n \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n `, isInline: true, components: [{ type: ColumnFilterFormElement, selector: \"p-columnFilterFormElement\", inputs: [\"field\", \"type\", \"filterConstraint\", \"filterTemplate\", \"placeholder\", \"minFractionDigits\", \"maxFractionDigits\", \"prefix\", \"suffix\", \"locale\", \"localeMatcher\", \"currency\", \"currencyDisplay\", \"useGrouping\"] }, { type: i10.Dropdown, selector: \"p-dropdown\", inputs: [\"scrollHeight\", \"filter\", \"name\", \"style\", \"panelStyle\", \"styleClass\", \"panelStyleClass\", \"readonly\", \"required\", \"editable\", \"appendTo\", \"tabindex\", \"placeholder\", \"filterPlaceholder\", \"filterLocale\", \"inputId\", \"selectId\", \"dataKey\", \"filterBy\", \"autofocus\", \"resetFilterOnHide\", \"dropdownIcon\", \"optionLabel\", \"optionValue\", \"optionDisabled\", \"optionGroupLabel\", \"optionGroupChildren\", \"autoDisplayFirst\", \"group\", \"showClear\", \"emptyFilterMessage\", \"emptyMessage\", \"virtualScroll\", \"itemSize\", \"autoZIndex\", \"baseZIndex\", \"showTransitionOptions\", \"hideTransitionOptions\", \"ariaFilterLabel\", \"ariaLabel\", \"ariaLabelledBy\", \"filterMatchMode\", \"maxlength\", \"tooltip\", \"tooltipPosition\", \"tooltipPositionStyle\", \"tooltipStyleClass\", \"autofocusFilter\", \"disabled\", \"options\", \"filterValue\"], outputs: [\"onChange\", \"onFilter\", \"onFocus\", \"onBlur\", \"onClick\", \"onShow\", \"onHide\", \"onClear\"] }], directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i4.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i9.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { type: i9.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { type: i11.ButtonDirective, selector: \"[pButton]\", inputs: [\"iconPos\", \"loadingIcon\", \"label\", \"icon\", \"loading\"] }], animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('.12s cubic-bezier(0, 0, 0.2, 1)')\n ]),\n transition(':leave', [\n animate('.1s linear', style({ opacity: 0 }))\n ])\n ])\n ], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: ColumnFilter, decorators: [{\n type: Component,\n args: [{\n selector: 'p-columnFilter',\n template: `\n
    \n \n \n \n
    \n \n
      \n
    • {{matchMode.label}}
    • \n
    • \n
    • {{noFilterLabel}}
    • \n
    \n \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n `,\n animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('.12s cubic-bezier(0, 0, 0.2, 1)')\n ]),\n transition(':leave', [\n animate('.1s linear', style({ opacity: 0 }))\n ])\n ])\n ],\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Table }, { type: i0.Renderer2 }, { type: i1.PrimeNGConfig }, { type: i1.OverlayService }]; }, propDecorators: { field: [{\n type: Input\n }], type: [{\n type: Input\n }], display: [{\n type: Input\n }], showMenu: [{\n type: Input\n }], matchMode: [{\n type: Input\n }], operator: [{\n type: Input\n }], showOperator: [{\n type: Input\n }], showClearButton: [{\n type: Input\n }], showApplyButton: [{\n type: Input\n }], showMatchModes: [{\n type: Input\n }], showAddButton: [{\n type: Input\n }], hideOnClear: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], matchModeOptions: [{\n type: Input\n }], maxConstraints: [{\n type: Input\n }], minFractionDigits: [{\n type: Input\n }], maxFractionDigits: [{\n type: Input\n }], prefix: [{\n type: Input\n }], suffix: [{\n type: Input\n }], locale: [{\n type: Input\n }], localeMatcher: [{\n type: Input\n }], currency: [{\n type: Input\n }], currencyDisplay: [{\n type: Input\n }], useGrouping: [{\n type: Input\n }], icon: [{\n type: ViewChild,\n args: ['icon']\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }] } });\nclass TableModule {\n}\nTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableModule, declarations: [Table, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, TableBody, SortIcon, TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement], imports: [CommonModule, PaginatorModule, InputTextModule, DropdownModule, ScrollingModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule], exports: [Table, SharedModule, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, SortIcon, TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ScrollingModule, ColumnFilter] });\nTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableModule, imports: [[CommonModule, PaginatorModule, InputTextModule, DropdownModule, ScrollingModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule], SharedModule,\n ScrollingModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.7\", ngImport: i0, type: TableModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, PaginatorModule, InputTextModule, DropdownModule, ScrollingModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule],\n exports: [Table, SharedModule, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, SortIcon,\n TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ScrollingModule, ColumnFilter],\n declarations: [Table, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, TableBody, SortIcon,\n TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { CancelEditableRow, CellEditor, ColumnFilter, ColumnFilterFormElement, ContextMenuRow, EditableColumn, EditableRow, FrozenColumn, InitEditableRow, ReorderableColumn, ReorderableRow, ReorderableRowHandle, ResizableColumn, RowGroupHeader, RowToggler, SaveEditableRow, SelectableRow, SelectableRowDblClick, SortIcon, SortableColumn, Table, TableBody, TableCheckbox, TableHeaderCheckbox, TableModule, TableRadioButton, TableService };\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceNamesComponent } from './substance-names.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport { TableModule } from 'primeng/table';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { ElementLabelDisplayModule } from '@gsrs-core/utils/element-label-display.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNamesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ReferencesManagerModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatSortModule,\r\n TableModule,\r\n MatTooltipModule,\r\n MatRadioModule,\r\n ElementLabelDisplayModule\r\n ],\r\n declarations: [SubstanceNamesComponent,\r\n ]\r\n})\r\nexport class SubstanceNamesModule { }\r\n"],"sourceRoot":"webpack:///","file":"834.1cf66dd81d3e2489.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/834.e53845467f8174d0.js b/frontend/src/main/resources/static/834.e53845467f8174d0.js deleted file mode 100644 index e6eb196..0000000 --- a/frontend/src/main/resources/static/834.e53845467f8174d0.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[834],{90834:function(Ao,pe,b){b.r(pe),b.d(pe,{SubstanceNamesModule:function(){return Fo}});var w=b(48047),C=b(78069),_=b(36362),E=b(95106),Fe=b(24582),Pe=b(7318),Le=b(54025),Ae=b(42827),He=b(24874),ee=b(50253),Ne=b(63169),I=b(90587),t=b(76442),U=b(95758),Ve=b(66088),te=b(44770),he=b(43365),ie=b(68390),L=b(97217),ne=b(64316),fe=b(40089),me=b(65590),ae=b(91434),Be=b(1130),Ze=b(73430),ve=b(26439);function ze(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Name "),t.qZA())}function Ue(o,l){1&o&&(t.TgZ(0,"span",39),t._UZ(1,"mat-icon",40),t.qZA())}function Ke(o,l){1&o&&(t.TgZ(0,"span",41),t._UZ(1,"mat-icon",42),t.qZA())}function Ye(o,l){1&o&&t._UZ(0,"mat-icon",45)}function We(o,l){if(1&o&&(t.TgZ(0,"span",43),t.YNc(1,Ye,1,0,"mat-icon",44),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function qe(o,l){if(1&o&&(t.TgZ(0,"td",34),t._UZ(1,"span",35),t.YNc(2,Ue,2,0,"span",36),t.YNc(3,Ke,2,0,"span",37),t.YNc(4,We,2,1,"span",38),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.Q6J("innerHTML",i._nameHTML?i._nameHTML:i.name,t.oJD),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",1==i.preferred),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function Je(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Std. Name "),t.qZA())}function Qe(o,l){1&o&&(t.TgZ(0,"span",39),t._UZ(1,"mat-icon",40),t.qZA())}function Ge(o,l){1&o&&t._UZ(0,"mat-icon",45)}function je(o,l){if(1&o&&(t.TgZ(0,"span",43),t.YNc(1,Ge,1,0,"mat-icon",44),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function $e(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.YNc(2,Qe,2,0,"span",36),t.YNc(3,je,2,1,"span",38),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.hij("",i.stdName," "),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function Xe(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Type "),t.qZA())}function et(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.typeVocabulary[i.type]&&e.typeVocabulary[i.type].display," ")}}function tt(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Language "),t.qZA())}function it(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.getLanguages(i)," ")}}function nt(o,l){if(1&o&&(t.TgZ(0,"th",46),t.TgZ(1,"div",47),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",48),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.nameFilter)}}function at(o,l){1&o&&(t.TgZ(0,"span",39),t._UZ(1,"mat-icon",40),t.qZA())}function ot(o,l){1&o&&t._UZ(0,"mat-icon",45)}function rt(o,l){if(1&o&&(t.TgZ(0,"span",43),t.YNc(1,ot,1,0,"mat-icon",44),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function lt(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.YNc(2,at,2,0,"span",36),t.YNc(3,rt,2,1,"span",38),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.hij("",i.name," "),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function st(o,l){if(1&o&&(t.TgZ(0,"th",46),t.TgZ(1,"div",47),t.TgZ(2,"mat-form-field"),t._UZ(3,"input",49),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.stdNameFilter)}}function ut(o,l){1&o&&(t.TgZ(0,"span",39),t._UZ(1,"mat-icon",40),t.qZA())}function ct(o,l){1&o&&t._UZ(0,"mat-icon",45)}function dt(o,l){if(1&o&&(t.TgZ(0,"span",43),t.YNc(1,ct,1,0,"mat-icon",44),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",i.access.length)}}function pt(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.YNc(2,ut,2,0,"span",36),t.YNc(3,dt,2,1,"span",38),t.qZA()),2&o){var i=l.$implicit;t.xp6(1),t.hij("",i.stdName," "),t.xp6(1),t.Q6J("ngIf",1==i.displayName),t.xp6(1),t.Q6J("ngIf",i.access.length)}}function ht(o,l){if(1&o&&(t.TgZ(0,"mat-option",54),t._uU(1),t.qZA()),2&o){var i=l.$implicit;t.Q6J("value",i.display),t.xp6(1),t.Oqu(i.display)}}function ft(o,l){if(1&o&&(t.TgZ(0,"th",46),t.TgZ(1,"div",47),t.TgZ(2,"mat-form-field",50),t.TgZ(3,"mat-select",51),t.TgZ(4,"mat-select-trigger"),t._uU(5),t.qZA(),t.TgZ(6,"mat-option",52),t._uU(7,"Select Type Filter"),t.qZA(),t.YNc(8,ht,2,2,"mat-option",53),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.typeFilter),t.xp6(2),t.hij(" ",i.typeFilter.value?i.typeFilter.value:""," "),t.xp6(3),t.Q6J("ngForOf",i.typeFilterOptions)}}function mt(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.typeVocabulary[i.type]&&e.typeVocabulary[i.type].display," ")}}function vt(o,l){if(1&o&&(t.TgZ(0,"mat-option",54),t._uU(1),t.qZA()),2&o){var i=l.$implicit;t.Q6J("value",i.display),t.xp6(1),t.Oqu(i.display)}}function gt(o,l){if(1&o&&(t.TgZ(0,"th",46),t.TgZ(1,"div",47),t.TgZ(2,"mat-form-field",50),t.TgZ(3,"mat-select",51),t.TgZ(4,"mat-select-trigger"),t._uU(5),t.qZA(),t.TgZ(6,"mat-option",52),t._uU(7,"Select Language Filter"),t.qZA(),t.YNc(8,vt,2,2,"mat-option",53),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.langFilter),t.xp6(2),t.hij(" ",i.langFilter.value?i.langFilter.value:""," "),t.xp6(3),t.Q6J("ngForOf",i.langFilterOptions)}}function _t(o,l){if(1&o&&(t.TgZ(0,"td",34),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=t.oxw();t.xp6(1),t.hij(" ",e.getLanguages(i)," ")}}function yt(o,l){1&o&&t._UZ(0,"th",46)}function bt(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"th",46),t.TgZ(1,"div",47),t.TgZ(2,"button",11),t.NdJ("click",function(){return t.CHM(i),t.oxw().resetFilters()}),t._uU(3,"Reset"),t.qZA(),t.qZA(),t.qZA()}}function wt(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," Details "),t.qZA())}function Ct(o,l){if(1&o&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=l.last;t.xp6(1),t.AsE("",i.nameOrg,"",e?"":", ","")}}function kt(o,l){if(1&o&&(t.TgZ(0,"div",64),t.TgZ(1,"div",65),t._uU(2," Naming organizations: "),t.qZA(),t.TgZ(3,"div",66),t.YNc(4,Ct,2,2,"span",67),t.qZA(),t.qZA()),2&o){var i=t.oxw(2).$implicit;t.xp6(4),t.Q6J("ngForOf",i.nameOrgs)}}function Tt(o,l){if(1&o&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=l.last;t.xp6(1),t.AsE("",i,"",e?"":", ","")}}function St(o,l){if(1&o&&(t.TgZ(0,"div",64),t.TgZ(1,"div",65),t._uU(2," Domains: "),t.qZA(),t.TgZ(3,"div",66),t.YNc(4,Tt,2,2,"span",67),t.qZA(),t.qZA()),2&o){var i=t.oxw(2).$implicit;t.xp6(4),t.Q6J("ngForOf",i.domains)}}function xt(o,l){if(1&o&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&o){var i=l.$implicit,e=l.last;t.xp6(1),t.AsE("",i,"",e?"":", ","")}}function Et(o,l){if(1&o&&(t.TgZ(0,"div",64),t.TgZ(1,"div",65),t._uU(2," Jurisdiction: "),t.qZA(),t.TgZ(3,"div",66),t.YNc(4,xt,2,2,"span",67),t.qZA(),t.qZA()),2&o){var i=t.oxw(2).$implicit;t.xp6(4),t.Q6J("ngForOf",i.nameJurisdiction)}}function It(o,l){if(1&o&&(t.TgZ(0,"h2",57),t._uU(1,"Details"),t.qZA(),t.TgZ(2,"div",58),t.TgZ(3,"table",59),t.TgZ(4,"tr"),t.TgZ(5,"td",60),t.YNc(6,kt,5,1,"div",61),t.YNc(7,St,5,1,"div",61),t.YNc(8,Et,5,1,"div",61),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"div",62),t._UZ(10,"span",1),t.TgZ(11,"button",63),t._uU(12,"Close"),t.qZA(),t.qZA()),2&o){var i=t.oxw().$implicit;t.xp6(6),t.Q6J("ngIf",i.nameOrgs&&i.nameOrgs.length>0),t.xp6(1),t.Q6J("ngIf",i.domains&&i.domains.length>0),t.xp6(1),t.Q6J("ngIf",i.nameJurisdiction&&i.nameJurisdiction.length>0)}}function Dt(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"td",34),t.TgZ(1,"button",55),t.NdJ("click",function(){t.CHM(i);var r=t.MAs(4);return t.oxw().openModal(r)}),t._uU(2," View"),t.qZA(),t.YNc(3,It,13,3,"ng-template",null,56,t.W1O),t.qZA()}if(2&o){var e=l.$implicit,n=t.oxw();t.xp6(1),t.Q6J("disabled",!(e.nameOrgs&&0!=e.nameOrgs.length||e.domains&&0!=e.domains.length||e.nameJurisdiction&&0!=e.nameJurisdiction.length))("ngClass",n.isButtonDisabled(e)?"disabled-btn":"")}}function Mt(o,l){1&o&&(t.TgZ(0,"th",33),t._uU(1," References "),t.qZA())}function Ot(o,l){if(1&o&&(t.TgZ(0,"h2",57),t._uU(1,"References"),t.qZA(),t.TgZ(2,"div",58),t._UZ(3,"app-references-manager",70),t.qZA(),t.TgZ(4,"div",62),t._UZ(5,"span",1),t.TgZ(6,"button",63),t._uU(7,"Close"),t.qZA(),t.qZA()),2&o){var i=t.oxw().$implicit,e=t.oxw();t.xp6(3),t.Q6J("substance",e.substance)("references",i.references)}}function Rt(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"td",34),t.TgZ(1,"button",68),t.NdJ("click",function(){t.CHM(i);var a=t.MAs(4);return t.oxw().openModal(a)}),t._uU(2,"View"),t.qZA(),t.YNc(3,Ot,8,2,"ng-template",null,69,t.W1O),t.qZA()}if(2&o){var e=l.$implicit;t.xp6(1),t.Q6J("disabled",e.references.length<=0)}}function Ft(o,l){1&o&&t._UZ(0,"tr",71)}function Pt(o,l){if(1&o&&t._UZ(0,"tr",72),2&o){var i=t.oxw();t.Q6J("hidden",i.hideFilters)}}function Lt(o,l){1&o&&t._UZ(0,"tr",73)}var At=function(){return[5,10,25,100]},Ht=function(){var o=function(l){(0,Fe.Z)(e,l);var i=(0,Pe.Z)(e);function e(n,a,r,s,u){var c;return(0,C.Z)(this,e),(c=i.call(this,a)).dialog=n,c.gaService=a,c.cvService=r,c.overlayContainerService=s,c.utilsService=u,c.displayedColumns=["name","type","language","details","references"],c.displayedFilterColumns=["nameFilter","typeFilter","languageFilter","emptyFilter","resetFilter"],c.languageVocabulary={},c.typeVocabulary={},c.substanceUpdated=new ee.x,c.hideOrgs=!0,c.pageSize=10,c.filterSelectObj=[],c.typeFilterOn="false",c.nameFilter=new I.NI,c.stdNameFilter=new I.NI,c.typeFilter=new I.NI,c.langFilter=new I.NI,c.langFilterOptions=[],c.typeFilterOptions=[],c.nameType="name",c.hideFilters=!0,c.showHideFilterText="Show Filter",c}return(0,w.Z)(e,[{key:"ngOnInit",value:function(){var a=this;this.filterSelectObj=[{name:"Name Type",columnProp:"type",options:[]}],this.substanceUpdated.subscribe(function(r){a.substance=r,null!=a.substance&&null!=a.substance.names&&(a.names=a.substance.names,a.filtered=a.substance.names,a.countUpdate.emit(a.names.length),a.searchControl.valueChanges.subscribe(function(s){"false"===a.typeFilterOn?a.filterList(s,a.names,a.analyticsEventCategory):"true"===a.typeFilterOn&&(JSON.parse(JSON.stringify(a.filtered)),a.filterList(s,a.filterBackup,a.analyticsEventCategory))},function(s){console.log(s)}),a.getVocabularies(),a.filtered=a.names.slice().sort(function(s,u){var c=-1;return s.displayName?c=-1:u.displayName||u.preferred&&!s.preferred?c=1:!u.preferred&&s.preferred?c=-1:s.name.toUpperCase()>u.name.toUpperCase()&&(c=1),c})),a.pageChange(),a.filterSelectObj.filter(function(s){s.options=a.getFilterObject(a.names,s.columnProp)})}),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.nameFilter.valueChanges.subscribe(function(r){a.filterTable()}),this.stdNameFilter.valueChanges.subscribe(function(r){a.filterTable("std")}),this.typeFilter.valueChanges.subscribe(function(r){a.filterTable()}),this.langFilter.valueChanges.subscribe(function(r){a.filterTable()})}},{key:"toggleFilter",value:function(){this.hideFilters=!this.hideFilters,this.showHideFilterText=this.hideFilters?"Show Filter":"Hide Filter"}},{key:"updateType",value:function(a){this.nameType=a.value,"name"===a.value?(this.displayedColumns=["name","type","language","details","references"],this.displayedFilterColumns=["nameFilter","typeFilter","languageFilter","emptyFilter","resetFilter"]):"ascii"===a.value?(this.displayedColumns=["stdName","type","language","details","references"],this.displayedFilterColumns=["stdNameFilter","typeFilter","languageFilter","emptyFilter","resetFilter"]):(this.displayedColumns=["name","stdName","type","language","details","references"],this.displayedFilterColumns=["nameFilter","stdNameFilter","typeFilter","languageFilter","resetFilter"])}},{key:"filterTable",value:function(a){var r=null===this.nameFilter.value?"":this.nameFilter.value,s=null===this.stdNameFilter.value?"":this.stdNameFilter.value,u=null===this.langFilter.value?"":this.langFilter.value,c=null===this.typeFilter.value?"":this.typeFilter.value,d=void 0===this.getLangFilterValue(u)?"":this.getLangFilterValue(u).value,h=void 0===this.getTypeFilterValue(c)?"":this.getTypeFilterValue(c).value;if(this.filtered=[],a&&"std"===a){var f,v=(0,E.Z)(this.names);try{for(v.s();!(f=v.n()).done;){var g=f.value;(void 0===g.stdName?"":g.stdName).toLowerCase().includes(s.toLowerCase())&&this.isIncluded(g,h,"type")&&this.isIncluded(g,d,"lang")&&this.filtered.push(g)}}catch(D){v.e(D)}finally{v.f()}}else{var k,y=(0,E.Z)(this.names);try{for(y.s();!(k=y.n()).done;){var S=k.value;S.name.toLowerCase().includes(r.toLowerCase())&&this.isIncluded(S,h,"type")&&this.isIncluded(S,d,"lang")&&this.filtered.push(S)}}catch(D){y.e(D)}finally{y.f()}}this.pageChange()}},{key:"isIncluded",value:function(a,r,s){return"type"===s?!(r.length>0&&!a.type.includes(r)):"lang"===s?!(r.length>0&&!a.languages.includes(r)):void 0}},{key:"getLangFilterValue",value:function(a){var s,r=(0,E.Z)(this.langFilterOptions);try{for(r.s();!(s=r.n()).done;){var u=s.value;if(u.display===a)return u}}catch(c){r.e(c)}finally{r.f()}}},{key:"getLangFilterOptions",value:function(){var s,a=this,r=(0,E.Z)(this.names);try{for(r.s();!(s=r.n()).done;){var h,d=(0,E.Z)(s.value.languages);try{var v=function(){var m=h.value,k={value:m,display:a.languageVocabulary[m]&&a.languageVocabulary[m].display?a.languageVocabulary[m].display:m};a.langFilterOptions.filter(function(S){return S.value===m}).length>0||a.langFilterOptions.push(k)};for(d.s();!(h=d.n()).done;)v()}catch(f){d.e(f)}finally{d.f()}}}catch(f){r.e(f)}finally{r.f()}}},{key:"getTypeFilterValue",value:function(a){var s,r=(0,E.Z)(this.typeFilterOptions);try{for(r.s();!(s=r.n()).done;){var u=s.value;if(u.display===a)return u}}catch(c){r.e(c)}finally{r.f()}}},{key:"getTypeFilterOptions",value:function(){var s,a=this,r=(0,E.Z)(this.names);try{var u=function(){var h=s.value.type,f={value:h,display:a.typeVocabulary[h]&&a.typeVocabulary[h].display?a.typeVocabulary[h].display:h};a.typeFilterOptions.filter(function(g){return g.value===h}).length>0||a.typeFilterOptions.push(f)};for(r.s();!(s=r.n()).done;)u()}catch(c){r.e(c)}finally{r.f()}}},{key:"filterChange",value:function(a,r){var s=this;this.typeFilterOn="false";var u=[];this.filterBackup=[],this.names.forEach(function(c){JSON.stringify(c[a.columnProp]).toLowerCase().indexOf(r.target.value.toLowerCase())>-1&&s.filterBackup.push(c)}),setTimeout(function(){s.names.forEach(function(c){JSON.stringify(c[a.columnProp]).toLowerCase().indexOf(r.target.value.toLowerCase())>-1&&u.push(c)}),s.filtered=u,s.typeFilterOn="true",s.page=0,s.pageChange()},50)}},{key:"setDisplay",value:function(a,r){return"type"===r?this.typeVocabulary[a]&&this.typeVocabulary[a].display?this.typeVocabulary[a].display:a:"language"===r&&this.languageVocabulary[a]&&this.languageVocabulary[a].display?this.typeVocabulary[a].display:a}},{key:"getFilterObject",value:function(a,r){var s=[];return a.filter(function(u){return s.includes(u[r])||s.push(u[r]),u}),s}},{key:"sortData",value:function(a){var r=this,s=this.names.slice();if(!a.active||""===a.direction)return this.filtered=s,void this.pageChange();this.filtered=s.sort(function(u,c){var d="asc"===a.direction;switch(a.active){case"name":return r.utilsService.compare(u.name?u.name.toUpperCase():"",c.name?c.name.toUpperCase():"",d);case"type":return r.utilsService.compare(u.type?u.type:"",c.type?c.type:"",d);case"language":return r.utilsService.compare(r.getLanguages(u),r.getLanguages(c),d);default:return 0}}),this.pageChange()}},{key:"resetFilters",value:function(){this.filterSelectObj.forEach(function(a,r){a.modelValue=void 0}),this.typeFilterOn="false",this.filtered=this.names,this.pageChange(),this.searchControl.setValue(""),this.nameFilter.setValue(""),this.stdNameFilter.setValue(""),this.langFilter.setValue(""),this.typeFilter.setValue("")}},{key:"getVocabularies",value:function(){var a=this;this.cvService.getDomainVocabulary("LANGUAGE","NAME_TYPE").subscribe(function(r){a.languageVocabulary=r.LANGUAGE&&r.LANGUAGE.dictionary,a.typeVocabulary=r.NAME_TYPE&&r.NAME_TYPE.dictionary,a.getLangFilterOptions(),a.getTypeFilterOptions()})}},{key:"getLanguages",value:function(a){var r=this;if(null!=this.languageVocabulary&&a.languages&&a.languages.length){var s=[];return a.languages.forEach(function(u){null!=r.languageVocabulary[u]&&s.push(r.languageVocabulary[u].display)}),s.join(", ")}return""}},{key:"openModal",value:function(a){var r=this;this.gaService.sendEvent(this.analyticsEventCategory,"button","references view");var s=this.dialog.open(a,{minWidth:"40%",maxWidth:"90%"});this.overlayContainer.style.zIndex="1002",s.afterClosed().subscribe(function(u){r.overlayContainer.style.zIndex=null})}},{key:"isButtonDisabled",value:function(a){return!(a.nameOrgs&&0!=a.nameOrgs.length||a.domains&&0!=a.domains.length||a.nameJurisdiction&&0!=a.nameJurisdiction.length)}}]),e}(Le.u);return o.\u0275fac=function(i){return new(i||o)(t.Y36(U.uw),t.Y36(He.$),t.Y36(Ae.I),t.Y36(Ve.Xj),t.Y36(Ne.FW))},o.\u0275cmp=t.Xpm({type:o,selectors:[["app-substance-names"]],features:[t.qOj],decls:58,vars:14,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"flex-row","right"],[1,"name-view"],[1,"name-view-label"],[1,"type",3,"change"],["value","name",3,"checked"],["value","ascii",3,"checked"],["value","both",3,"checked"],["mat-flat-button","","color","warn",1,"mat-button","mat-button-primary",3,"click"],[1,"responsive"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","name"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","stdName"],["matColumnDef","type"],["matColumnDef","language"],["matColumnDef","nameFilter"],["mat-header-cell","",4,"matHeaderCellDef"],["matColumnDef","stdNameFilter"],["matColumnDef","typeFilter"],["matColumnDef","languageFilter"],["matColumnDef","emptyFilter"],["matColumnDef","resetFilter"],["matColumnDef","details"],["matColumnDef","references"],["mat-header-row","",4,"matHeaderRowDef"],["mat-header-row","",3,"hidden",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],[3,"innerHTML"],["matTooltip","Display Name",4,"ngIf"],["matTooltip","Additional Listing Name",4,"ngIf"],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Display Name"],["svgIcon","done",1,"icon-align","blue-font"],["matTooltip","Additional Listing Name"],["svgIcon","done",1,"icon-align","grey-font"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["mat-header-cell",""],[1,"tableFilter"],["matInput","","placeholder","Name Filter",1,"form-field",3,"formControl"],["matInput","","placeholder","Std. Name Filter",1,"form-field",3,"formControl"],["appearance","fill"],[3,"formControl"],["selected","",3,"value"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","ngClass","click"],["detailTemplate",""],["mat-dialog-title",""],["mat-dialog-content",""],[1,"details-table","mat-table"],[1,"mat-cell"],["class","detail",4,"ngIf"],["mat-dialog-actions",""],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],[1,"detail"],[1,"subhead"],[1,"subval"],[4,"ngFor","ngForOf"],[1,"mat-raised-button","mat-primary","dialog-close",3,"disabled","click"],["refTemplate",""],[3,"substance","references"],["mat-header-row",""],["mat-header-row","",3,"hidden"],["mat-row",""]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"div",5),t.TgZ(6,"span",6),t._uU(7,"Name View:"),t.qZA(),t.TgZ(8,"mat-radio-group",7),t.NdJ("change",function(a){return e.updateType(a)}),t.TgZ(9,"mat-radio-button",8),t._uU(10,"Name (UTF-8)"),t.qZA(),t.TgZ(11,"mat-radio-button",9),t._uU(12,"Std. Name (ASCII)"),t.qZA(),t.TgZ(13,"mat-radio-button",10),t._uU(14,"Both"),t.qZA(),t.qZA(),t.qZA(),t._UZ(15,"span",1),t.TgZ(16,"mat-label",11),t.NdJ("click",function(){return e.toggleFilter()}),t._uU(17),t.qZA(),t.qZA(),t.TgZ(18,"div",12),t.TgZ(19,"table",13),t.NdJ("matSortChange",function(a){return e.sortData(a)}),t.ynx(20,14),t.YNc(21,ze,2,0,"th",15),t.YNc(22,qe,5,4,"td",16),t.BQk(),t.ynx(23,17),t.YNc(24,Je,2,0,"th",15),t.YNc(25,$e,4,3,"td",16),t.BQk(),t.ynx(26,18),t.YNc(27,Xe,2,0,"th",15),t.YNc(28,et,2,1,"td",16),t.BQk(),t.ynx(29,19),t.YNc(30,tt,2,0,"th",15),t.YNc(31,it,2,1,"td",16),t.BQk(),t.ynx(32,20),t.YNc(33,nt,4,1,"th",21),t.YNc(34,lt,4,3,"td",16),t.BQk(),t.ynx(35,22),t.YNc(36,st,4,1,"th",21),t.YNc(37,pt,4,3,"td",16),t.BQk(),t.ynx(38,23),t.YNc(39,ft,9,3,"th",21),t.YNc(40,mt,2,1,"td",16),t.BQk(),t.ynx(41,24),t.YNc(42,gt,9,3,"th",21),t.YNc(43,_t,2,1,"td",16),t.BQk(),t.ynx(44,25),t.YNc(45,yt,1,0,"th",21),t.BQk(),t.ynx(46,26),t.YNc(47,bt,4,0,"th",21),t.BQk(),t.ynx(48,27),t.YNc(49,wt,2,0,"th",15),t.YNc(50,Dt,5,2,"td",16),t.BQk(),t.ynx(51,28),t.YNc(52,Mt,2,0,"th",15),t.YNc(53,Rt,5,1,"td",16),t.BQk(),t.YNc(54,Ft,1,0,"tr",29),t.YNc(55,Pt,1,1,"tr",30),t.YNc(56,Lt,1,0,"tr",31),t.qZA(),t.qZA(),t.TgZ(57,"mat-paginator",32),t.NdJ("page",function(a){return e.pageChange(a,e.analyticsEventCategory)}),t.qZA()),2&i&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",e.searchControl),t.xp6(6),t.Q6J("checked","name"===e.nameType),t.xp6(2),t.Q6J("checked","ascii"===e.nameType),t.xp6(2),t.Q6J("checked","both"===e.nameType),t.xp6(4),t.Oqu(e.showHideFilterText),t.xp6(2),t.Q6J("dataSource",e.paged),t.xp6(35),t.Q6J("matHeaderRowDef",e.displayedColumns),t.xp6(1),t.Q6J("matHeaderRowDef",e.displayedFilterColumns),t.xp6(1),t.Q6J("matRowDefColumns",e.displayedColumns),t.xp6(1),t.Q6J("length",e.filtered&&e.filtered.length||0)("pageSize",10)("pageSizeOptions",t.DdM(13,At)))},directives:[te.KE,he.Nt,I.Fj,I.JJ,I.oH,ie.VQ,ie.U0,te.hX,L.BZ,ne.YE,L.w1,L.fO,L.ge,ne.nU,L.Dz,L.ev,_.O5,fe.gM,me.Hw,ae.gD,ae.$L,Be.ey,_.sg,_.mk,U.uh,U.xY,U.H8,U.ZT,Ze.C,L.as,L.XQ,L.nj,L.Gk,ve.NW],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}td.mat-cell[_ngcontent-%COMP%]:not(:last-child), td.mat-footer-cell[_ngcontent-%COMP%]:not(:last-child), th.mat-header-cell[_ngcontent-%COMP%]:not(:last-child){padding-right:10px}.no-bottom-border[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td.mat-cell[_ngcontent-%COMP%]{border-bottom:none}.mat-sort-header-content[_ngcontent-%COMP%]{display:block!important}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.detail[_ngcontent-%COMP%]{padding:10px}.mat-radio-button[_ngcontent-%COMP%]{padding-left:30px}.name-view[_ngcontent-%COMP%]{margin-top:16px}.name-view-label[_ngcontent-%COMP%]{font-weight:500}.right[_ngcontent-%COMP%]{-ms-flex-pack:right;justify-content:right;-ms-flex-align:right;align-items:right;padding-top:10px}td.mat-cell[_ngcontent-%COMP%], td.mat-footer-cell[_ngcontent-%COMP%], th.mat-header-cell[_ngcontent-%COMP%]{padding-top:10px;padding-bottom:10px}.structure-image[_ngcontent-%COMP%]{width:150px;height:auto}.thumb-col[_ngcontent-%COMP%]{max-width:400px}.subhead[_ngcontent-%COMP%]{display:inline-block;width:150px}.subval[_ngcontent-%COMP%]{display:inline}.disabled-btn[_ngcontent-%COMP%]{color:#00000042;background-color:#0000001f}"]}),o}(),Nt=b(64061),Vt=b(33865),Bt=b(38277),T=function(){function o(){(0,C.Z)(this,o)}return(0,w.Z)(o,null,[{key:"equals",value:function(i,e,n){return n?this.resolveFieldData(i,n)===this.resolveFieldData(e,n):this.equalsByValue(i,e)}},{key:"equalsByValue",value:function(i,e){if(i===e)return!0;if(i&&e&&"object"==typeof i&&"object"==typeof e){var r,s,u,n=Array.isArray(i),a=Array.isArray(e);if(n&&a){if((s=i.length)!=e.length)return!1;for(r=s;0!=r--;)if(!this.equalsByValue(i[r],e[r]))return!1;return!0}if(n!=a)return!1;var c=i instanceof Date,d=e instanceof Date;if(c!=d)return!1;if(c&&d)return i.getTime()==e.getTime();var h=i instanceof RegExp,v=e instanceof RegExp;if(h!=v)return!1;if(h&&v)return i.toString()==e.toString();var f=Object.keys(i);if((s=f.length)!==Object.keys(e).length)return!1;for(r=s;0!=r--;)if(!Object.prototype.hasOwnProperty.call(e,f[r]))return!1;for(r=s;0!=r--;)if(!this.equalsByValue(i[u=f[r]],e[u]))return!1;return!0}return i!=i&&e!=e}},{key:"resolveFieldData",value:function(i,e){if(i&&e){if(this.isFunction(e))return e(i);if(-1==e.indexOf("."))return i[e];for(var n=e.split("."),a=i,r=0,s=n.length;r=i.length&&(n%=i.length,e%=i.length),i.splice(n,0,i.splice(e,1)[0]))}},{key:"insertIntoOrderedArray",value:function(i,e,n,a){if(n.length>0){for(var r=!1,s=0;se){n.splice(s,0,i),r=!0;break}r||n.push(i)}else n.push(i)}},{key:"findIndexInList",value:function(i,e){var n=-1;if(e)for(var a=0;a-1&&(i=i.replace(/[\xC0-\xC5]/g,"A").replace(/[\xC6]/g,"AE").replace(/[\xC7]/g,"C").replace(/[\xC8-\xCB]/g,"E").replace(/[\xCC-\xCF]/g,"I").replace(/[\xD0]/g,"D").replace(/[\xD1]/g,"N").replace(/[\xD2-\xD6\xD8]/g,"O").replace(/[\xD9-\xDC]/g,"U").replace(/[\xDD]/g,"Y").replace(/[\xDE]/g,"P").replace(/[\xE0-\xE5]/g,"a").replace(/[\xE6]/g,"ae").replace(/[\xE7]/g,"c").replace(/[\xE8-\xEB]/g,"e").replace(/[\xEC-\xEF]/g,"i").replace(/[\xF1]/g,"n").replace(/[\xF2-\xF6\xF8]/g,"o").replace(/[\xF9-\xFC]/g,"u").replace(/[\xFE]/g,"p").replace(/[\xFD\xFF]/g,"y")),i}},{key:"isEmpty",value:function(i){return null==i||""===i||Array.isArray(i)&&0===i.length||!(i instanceof Date)&&"object"==typeof i&&0===Object.keys(i).length}},{key:"isNotEmpty",value:function(i){return!this.isEmpty(i)}}]),o}(),ge=0;function _e(){return ge++,"".concat("pr_id_").concat(ge)}var A=function Zt(){var o=[],n=function(r){return r&&parseInt(r.style.zIndex,10)||0};return{get:n,set:function(r,s,u){s&&(s.style.zIndex=String(function(r,s){var u=o.length>0?o[o.length-1]:{key:r,value:s},c=u.value+(u.key===r?0:s)+1;return o.push({key:r,value:c}),c}(r,u)))},clear:function(r){r&&(function(r){o=o.filter(function(s){return s.value!==r})}(n(r)),r.style.zIndex="")},getCurrent:function(){return o.length>0?o[o.length-1].value:0}}}(),M=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.STARTS_WITH="startsWith",o.CONTAINS="contains",o.NOT_CONTAINS="notContains",o.ENDS_WITH="endsWith",o.EQUALS="equals",o.NOT_EQUALS="notEquals",o.IN="in",o.LESS_THAN="lt",o.LESS_THAN_OR_EQUAL_TO="lte",o.GREATER_THAN="gt",o.GREATER_THAN_OR_EQUAL_TO="gte",o.BETWEEN="between",o.IS="is",o.IS_NOT="isNot",o.BEFORE="before",o.AFTER="after",o.DATE_IS="dateIs",o.DATE_IS_NOT="dateIsNot",o.DATE_BEFORE="dateBefore",o.DATE_AFTER="dateAfter",o}(),q=function(){var o=function(){function l(){(0,C.Z)(this,l),this.ripple=!1,this.filterMatchModeOptions={text:[M.STARTS_WITH,M.CONTAINS,M.NOT_CONTAINS,M.ENDS_WITH,M.EQUALS,M.NOT_EQUALS],numeric:[M.EQUALS,M.NOT_EQUALS,M.LESS_THAN,M.LESS_THAN_OR_EQUAL_TO,M.GREATER_THAN,M.GREATER_THAN_OR_EQUAL_TO],date:[M.DATE_IS,M.DATE_IS_NOT,M.DATE_BEFORE,M.DATE_AFTER]},this.translation={startsWith:"Starts with",contains:"Contains",notContains:"Not contains",endsWith:"Ends with",equals:"Equals",notEquals:"Not equals",noFilter:"No Filter",lt:"Less than",lte:"Less than or equal to",gt:"Greater than",gte:"Greater than or equal to",is:"Is",isNot:"Is not",before:"Before",after:"After",dateIs:"Date is",dateIsNot:"Date is not",dateBefore:"Date is before",dateAfter:"Date is after",clear:"Clear",apply:"Apply",matchAll:"Match All",matchAny:"Match Any",addRule:"Add Rule",removeRule:"Remove Rule",accept:"Yes",reject:"No",choose:"Choose",upload:"Upload",cancel:"Cancel",dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dateFormat:"mm/dd/yy",firstDayOfWeek:0,today:"Today",weekHeader:"Wk",weak:"Weak",medium:"Medium",strong:"Strong",passwordPrompt:"Enter a password",emptyMessage:"No results found",emptyFilterMessage:"No results found"},this.zIndex={modal:1100,overlay:1e3,menu:1e3,tooltip:1100},this.translationSource=new ee.x,this.translationObserver=this.translationSource.asObservable()}return(0,w.Z)(l,[{key:"getTranslation",value:function(e){return this.translation[e]}},{key:"setTranslation",value:function(e){this.translation=Object.assign(Object.assign({},this.translation),e),this.translationSource.next(this.translation)}}]),l}();return o.\u0275fac=function(i){return new(i||o)},o.\u0275prov=t.Yz7({token:o,factory:o.\u0275fac,providedIn:"root"}),o}(),R=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.STARTS_WITH="startsWith",o.CONTAINS="contains",o.NOT_CONTAINS="notContains",o.ENDS_WITH="endsWith",o.EQUALS="equals",o.NOT_EQUALS="notEquals",o.NO_FILTER="noFilter",o.LT="lt",o.LTE="lte",o.GT="gt",o.GTE="gte",o.IS="is",o.IS_NOT="isNot",o.BEFORE="before",o.AFTER="after",o.CLEAR="clear",o.APPLY="apply",o.MATCH_ALL="matchAll",o.MATCH_ANY="matchAny",o.ADD_RULE="addRule",o.REMOVE_RULE="removeRule",o.ACCEPT="accept",o.REJECT="reject",o.CHOOSE="choose",o.UPLOAD="upload",o.CANCEL="cancel",o.DAY_NAMES="dayNames",o.DAY_NAMES_SHORT="dayNamesShort",o.DAY_NAMES_MIN="dayNamesMin",o.MONTH_NAMES="monthNames",o.MONTH_NAMES_SHORT="monthNamesShort",o.FIRST_DAY_OF_WEEK="firstDayOfWeek",o.TODAY="today",o.WEEK_HEADER="weekHeader",o.WEAK="weak",o.MEDIUM="medium",o.STRONG="strong",o.PASSWORD_PROMPT="passwordPrompt",o.EMPTY_MESSAGE="emptyMessage",o.EMPTY_FILTER_MESSAGE="emptyFilterMessage",o}(),zt=function(){var o=function(){function l(){var i=this;(0,C.Z)(this,l),this.filters={startsWith:function(n,a,r){if(null==a||""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r);return T.removeAccents(n.toString()).toLocaleLowerCase(r).slice(0,s.length)===s},contains:function(n,a,r){if(null==a||"string"==typeof a&&""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r);return-1!==T.removeAccents(n.toString()).toLocaleLowerCase(r).indexOf(s)},notContains:function(n,a,r){if(null==a||"string"==typeof a&&""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r);return-1===T.removeAccents(n.toString()).toLocaleLowerCase(r).indexOf(s)},endsWith:function(n,a,r){if(null==a||""===a.trim())return!0;if(null==n)return!1;var s=T.removeAccents(a.toString()).toLocaleLowerCase(r),u=T.removeAccents(n.toString()).toLocaleLowerCase(r);return-1!==u.indexOf(s,u.length-s.length)},equals:function(n,a,r){return null==a||"string"==typeof a&&""===a.trim()||null!=n&&(n.getTime&&a.getTime?n.getTime()===a.getTime():T.removeAccents(n.toString()).toLocaleLowerCase(r)==T.removeAccents(a.toString()).toLocaleLowerCase(r))},notEquals:function(n,a,r){return!(null==a||"string"==typeof a&&""===a.trim()||null!=n&&(n.getTime&&a.getTime?n.getTime()===a.getTime():T.removeAccents(n.toString()).toLocaleLowerCase(r)==T.removeAccents(a.toString()).toLocaleLowerCase(r)))},in:function(n,a){if(null==a||0===a.length)return!0;for(var r=0;ra.getTime():n>a)},gte:function(n,a,r){return null==a||null!=n&&(n.getTime&&a.getTime?n.getTime()>=a.getTime():n>=a)},is:function(n,a,r){return i.filters.equals(n,a,r)},isNot:function(n,a,r){return i.filters.notEquals(n,a,r)},before:function(n,a,r){return i.filters.lt(n,a,r)},after:function(n,a,r){return i.filters.gt(n,a,r)},dateIs:function(n,a){return null==a||null!=n&&n.toDateString()===a.toDateString()},dateIsNot:function(n,a){return null==a||null!=n&&n.toDateString()!==a.toDateString()},dateBefore:function(n,a){return null==a||null!=n&&n.getTime()a.getTime()}}}return(0,w.Z)(l,[{key:"filter",value:function(e,n,a,r,s){var u=[];if(e){var d,c=(0,E.Z)(e);try{for(c.s();!(d=c.n()).done;){var f,h=d.value,v=(0,E.Z)(n);try{for(v.s();!(f=v.n()).done;){var m=T.resolveFieldData(h,f.value);if(this.filters[r](m,a,s)){u.push(h);break}}}catch(y){v.e(y)}finally{v.f()}}}catch(y){c.e(y)}finally{c.f()}}return u}},{key:"register",value:function(e,n){this.filters[e]=n}}]),l}();return o.\u0275fac=function(i){return new(i||o)},o.\u0275prov=t.Yz7({token:o,factory:o.\u0275fac,providedIn:"root"}),o}(),ye=function(){var o=function(){function l(){(0,C.Z)(this,l),this.clickSource=new ee.x,this.clickObservable=this.clickSource.asObservable()}return(0,w.Z)(l,[{key:"add",value:function(e){e&&this.clickSource.next(e)}}]),l}();return o.\u0275fac=function(i){return new(i||o)},o.\u0275prov=t.Yz7({token:o,factory:o.\u0275fac,providedIn:"root"}),o}(),be=function(){var o=function(){function l(i){(0,C.Z)(this,l),this.template=i}return(0,w.Z)(l,[{key:"getType",value:function(){return this.name}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.Rgc))},o.\u0275dir=t.lG2({type:o,selectors:[["","pTemplate",""]],inputs:{type:"type",name:["pTemplate","name"]}}),o}(),Z=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez]]}),o}(),Ut=b(77797),H=b(24426),x=b(31631),p=function(){var o=function(){function l(){(0,C.Z)(this,l)}return(0,w.Z)(l,null,[{key:"addClass",value:function(e,n){e.classList?e.classList.add(n):e.className+=" "+n}},{key:"addMultipleClasses",value:function(e,n){if(e.classList)for(var a=n.trim().split(" "),r=0;ru.height?(c=-1*a.height,e.style.transformOrigin="bottom",s.top+c<0&&(c=-1*s.top)):(c=r,e.style.transformOrigin="top"),d=a.width>u.width?-1*s.left:s.left+a.width>u.width?-1*(s.left+a.width-u.width):0,e.style.top=c+"px",e.style.left=d+"px"}},{key:"absolutePosition",value:function(e,n){var g,m,a=e.offsetParent?{width:e.offsetWidth,height:e.offsetHeight}:this.getHiddenElementDimensions(e),r=a.height,s=a.width,u=n.offsetHeight,c=n.offsetWidth,d=n.getBoundingClientRect(),h=this.getWindowScrollTop(),v=this.getWindowScrollLeft(),f=this.getViewport();d.top+u+r>f.height?(g=d.top+h-r,e.style.transformOrigin="bottom",g<0&&(g=h)):(g=u+d.top+h,e.style.transformOrigin="top"),m=d.left+s>f.width?Math.max(0,d.left+v+c-s):d.left+v,e.style.top=g+"px",e.style.left=m+"px"}},{key:"getParents",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return null===e.parentNode?n:this.getParents(e.parentNode,n.concat([e.parentNode]))}},{key:"getScrollableParents",value:function(e){var n=[];if(e){var c,a=this.getParents(e),r=/(auto|scroll)/,s=function(S){var D=window.getComputedStyle(S,null);return r.test(D.getPropertyValue("overflow"))||r.test(D.getPropertyValue("overflowX"))||r.test(D.getPropertyValue("overflowY"))},u=(0,E.Z)(a);try{for(u.s();!(c=u.n()).done;){var d=c.value,h=1===d.nodeType&&d.dataset.scrollselectors;if(h){var g,v=h.split(","),f=(0,E.Z)(v);try{for(f.s();!(g=f.n()).done;){var y=this.findSingle(d,g.value);y&&s(y)&&n.push(y)}}catch(k){f.e(k)}finally{f.f()}}9!==d.nodeType&&s(d)&&n.push(d)}}catch(k){u.e(k)}finally{u.f()}}return n}},{key:"getHiddenElementOuterHeight",value:function(e){e.style.visibility="hidden",e.style.display="block";var n=e.offsetHeight;return e.style.display="none",e.style.visibility="visible",n}},{key:"getHiddenElementOuterWidth",value:function(e){e.style.visibility="hidden",e.style.display="block";var n=e.offsetWidth;return e.style.display="none",e.style.visibility="visible",n}},{key:"getHiddenElementDimensions",value:function(e){var n={};return e.style.visibility="hidden",e.style.display="block",n.width=e.offsetWidth,n.height=e.offsetHeight,e.style.display="none",e.style.visibility="visible",n}},{key:"scrollInView",value:function(e,n){var a=getComputedStyle(e).getPropertyValue("borderTopWidth"),r=a?parseFloat(a):0,s=getComputedStyle(e).getPropertyValue("paddingTop"),u=s?parseFloat(s):0,c=e.getBoundingClientRect(),h=n.getBoundingClientRect().top+document.body.scrollTop-(c.top+document.body.scrollTop)-r-u,v=e.scrollTop,f=e.clientHeight,g=this.getOuterHeight(n);h<0?e.scrollTop=v+h:h+g>f&&(e.scrollTop=v+h-f+g)}},{key:"fadeIn",value:function(e,n){e.style.opacity=0;var a=+new Date,r=0;!function u(){r=+e.style.opacity.replace(",",".")+((new Date).getTime()-a)/n,e.style.opacity=r,a=+new Date,+r<1&&(window.requestAnimationFrame&&requestAnimationFrame(u)||setTimeout(u,16))}()}},{key:"fadeOut",value:function(e,n){var a=1,u=50/n,c=setInterval(function(){(a-=u)<=0&&(a=0,clearInterval(c)),e.style.opacity=a},50)}},{key:"getWindowScrollTop",value:function(){var e=document.documentElement;return(window.pageYOffset||e.scrollTop)-(e.clientTop||0)}},{key:"getWindowScrollLeft",value:function(){var e=document.documentElement;return(window.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}},{key:"matches",value:function(e,n){var a=Element.prototype;return(a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.msMatchesSelector||function(s){return-1!==[].indexOf.call(document.querySelectorAll(s),this)}).call(e,n)}},{key:"getOuterWidth",value:function(e,n){var a=e.offsetWidth;if(n){var r=getComputedStyle(e);a+=parseFloat(r.marginLeft)+parseFloat(r.marginRight)}return a}},{key:"getHorizontalPadding",value:function(e){var n=getComputedStyle(e);return parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)}},{key:"getHorizontalMargin",value:function(e){var n=getComputedStyle(e);return parseFloat(n.marginLeft)+parseFloat(n.marginRight)}},{key:"innerWidth",value:function(e){var n=e.offsetWidth,a=getComputedStyle(e);return n+(parseFloat(a.paddingLeft)+parseFloat(a.paddingRight))}},{key:"width",value:function(e){var n=e.offsetWidth,a=getComputedStyle(e);return n-(parseFloat(a.paddingLeft)+parseFloat(a.paddingRight))}},{key:"getInnerHeight",value:function(e){var n=e.offsetHeight,a=getComputedStyle(e);return n+(parseFloat(a.paddingTop)+parseFloat(a.paddingBottom))}},{key:"getOuterHeight",value:function(e,n){var a=e.offsetHeight;if(n){var r=getComputedStyle(e);a+=parseFloat(r.marginTop)+parseFloat(r.marginBottom)}return a}},{key:"getHeight",value:function(e){var n=e.offsetHeight,a=getComputedStyle(e);return n-(parseFloat(a.paddingTop)+parseFloat(a.paddingBottom)+parseFloat(a.borderTopWidth)+parseFloat(a.borderBottomWidth))}},{key:"getWidth",value:function(e){var n=e.offsetWidth,a=getComputedStyle(e);return n-(parseFloat(a.paddingLeft)+parseFloat(a.paddingRight)+parseFloat(a.borderLeftWidth)+parseFloat(a.borderRightWidth))}},{key:"getViewport",value:function(){var e=window,n=document,a=n.documentElement,r=n.getElementsByTagName("body")[0];return{width:e.innerWidth||a.clientWidth||r.clientWidth,height:e.innerHeight||a.clientHeight||r.clientHeight}}},{key:"getOffset",value:function(e){var n=e.getBoundingClientRect();return{top:n.top+(window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0),left:n.left+(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0)}}},{key:"replaceElementWith",value:function(e,n){var a=e.parentNode;if(!a)throw"Can't replace element";return a.replaceChild(n,e)}},{key:"getUserAgent",value:function(){return navigator.userAgent}},{key:"isIE",value:function(){var e=window.navigator.userAgent;return e.indexOf("MSIE ")>0||(e.indexOf("Trident/")>0?(e.indexOf("rv:"),!0):e.indexOf("Edge/")>0)}},{key:"isIOS",value:function(){return/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream}},{key:"isAndroid",value:function(){return/(android)/i.test(navigator.userAgent)}},{key:"isTouchDevice",value:function(){return"ontouchstart"in window||navigator.maxTouchPoints>0}},{key:"appendChild",value:function(e,n){if(this.isElement(n))n.appendChild(e);else{if(!n.el||!n.el.nativeElement)throw"Cannot append "+n+" to "+e;n.el.nativeElement.appendChild(e)}}},{key:"removeChild",value:function(e,n){if(this.isElement(n))n.removeChild(e);else{if(!n.el||!n.el.nativeElement)throw"Cannot remove "+e+" from "+n;n.el.nativeElement.removeChild(e)}}},{key:"removeElement",value:function(e){"remove"in Element.prototype?e.remove():e.parentNode.removeChild(e)}},{key:"isElement",value:function(e){return"object"==typeof HTMLElement?e instanceof HTMLElement:e&&"object"==typeof e&&null!==e&&1===e.nodeType&&"string"==typeof e.nodeName}},{key:"calculateScrollbarWidth",value:function(e){if(e){var n=getComputedStyle(e);return e.offsetWidth-e.clientWidth-parseFloat(n.borderLeftWidth)-parseFloat(n.borderRightWidth)}if(null!==this.calculatedScrollbarWidth)return this.calculatedScrollbarWidth;var a=document.createElement("div");a.className="p-scrollbar-measure",document.body.appendChild(a);var r=a.offsetWidth-a.clientWidth;return document.body.removeChild(a),this.calculatedScrollbarWidth=r,r}},{key:"calculateScrollbarHeight",value:function(){if(null!==this.calculatedScrollbarHeight)return this.calculatedScrollbarHeight;var e=document.createElement("div");e.className="p-scrollbar-measure",document.body.appendChild(e);var n=e.offsetHeight-e.clientHeight;return document.body.removeChild(e),this.calculatedScrollbarWidth=n,n}},{key:"invokeElementMethod",value:function(e,n,a){e[n].apply(e,a)}},{key:"clearSelection",value:function(){if(window.getSelection)window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().rangeCount>0&&window.getSelection().getRangeAt(0).getClientRects().length>0&&window.getSelection().removeAllRanges();else if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(e){}}},{key:"getBrowser",value:function(){if(!this.browser){var e=this.resolveUserAgent();this.browser={},e.browser&&(this.browser[e.browser]=!0,this.browser.version=e.version),this.browser.chrome?this.browser.webkit=!0:this.browser.webkit&&(this.browser.safari=!0)}return this.browser}},{key:"resolveUserAgent",value:function(){var e=navigator.userAgent.toLowerCase(),n=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:n[1]||"",version:n[2]||"0"}}},{key:"isInteger",value:function(e){return Number.isInteger?Number.isInteger(e):"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}},{key:"isHidden",value:function(e){return null===e.offsetParent}},{key:"getFocusableElements",value:function(e){var s,n=l.find(e,'button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n [href][clientHeight][clientWidth]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]), select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]), [tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),\n [contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]):not(.p-disabled)'),a=[],r=(0,E.Z)(n);try{for(r.s();!(s=r.n()).done;){var u=s.value;"none"!=getComputedStyle(u).display&&"hidden"!=getComputedStyle(u).visibility&&a.push(u)}}catch(c){r.e(c)}finally{r.f()}return a}},{key:"generateZIndex",value:function(){return this.zindex=this.zindex||999,++this.zindex}}]),l}();return o.zindex=1e3,o.calculatedScrollbarWidth=null,o.calculatedScrollbarHeight=null,o}(),oe=function(){function o(l){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){};(0,C.Z)(this,o),this.element=l,this.listener=i}return(0,w.Z)(o,[{key:"bindScrollListener",value:function(){this.scrollableParents=p.getScrollableParents(this.element);for(var i=0;iu.width||a<0||n<0||n+s>u.height}},{key:"onWindowResize",value:function(e){this.hide()}},{key:"bindDocumentResizeListener",value:function(){var e=this;this.zone.runOutsideAngular(function(){e.resizeListener=e.onWindowResize.bind(e),window.addEventListener("resize",e.resizeListener)})}},{key:"unbindDocumentResizeListener",value:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)}},{key:"bindScrollListener",value:function(){var e=this;this.scrollHandler||(this.scrollHandler=new oe(this.el.nativeElement,function(){e.container&&e.hide()})),this.scrollHandler.bindScrollListener()}},{key:"unbindScrollListener",value:function(){this.scrollHandler&&this.scrollHandler.unbindScrollListener()}},{key:"unbindEvents",value:function(){"hover"===this.getOption("tooltipEvent")?(this.el.nativeElement.removeEventListener("mouseenter",this.mouseEnterListener),this.el.nativeElement.removeEventListener("mouseleave",this.mouseLeaveListener),this.el.nativeElement.removeEventListener("click",this.clickListener)):"focus"===this.getOption("tooltipEvent")&&(this.el.nativeElement.removeEventListener("focus",this.focusListener),this.el.nativeElement.removeEventListener("blur",this.blurListener)),this.unbindDocumentResizeListener()}},{key:"remove",value:function(){this.container&&this.container.parentElement&&("body"===this.getOption("appendTo")?document.body.removeChild(this.container):"target"===this.getOption("appendTo")?this.el.nativeElement.removeChild(this.container):p.removeChild(this.container,this.getOption("appendTo"))),this.unbindDocumentResizeListener(),this.unbindScrollListener(),this.clearTimeouts(),this.container=null,this.scrollHandler=null}},{key:"clearShowTimeout",value:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null)}},{key:"clearHideTimeout",value:function(){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=null)}},{key:"clearTimeouts",value:function(){this.clearShowTimeout(),this.clearHideTimeout()}},{key:"ngOnDestroy",value:function(){this.unbindEvents(),this.container&&A.clear(this.container),this.remove(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null)}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.SBq),t.Y36(t.R0b),t.Y36(q))},o.\u0275dir=t.lG2({type:o,selectors:[["","pTooltip",""]],hostAttrs:[1,"p-element"],inputs:{tooltipPosition:"tooltipPosition",tooltipEvent:"tooltipEvent",appendTo:"appendTo",positionStyle:"positionStyle",tooltipStyleClass:"tooltipStyleClass",tooltipZIndex:"tooltipZIndex",escape:"escape",showDelay:"showDelay",hideDelay:"hideDelay",life:"life",positionTop:"positionTop",positionLeft:"positionLeft",text:["pTooltip","text"],disabled:["tooltipDisabled","disabled"],tooltipOptions:"tooltipOptions"},features:[t.TTD]}),o}(),Yt=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez]]}),o}(),re=function(){var o=function(){function l(i,e,n){(0,C.Z)(this,l),this.el=i,this.zone=e,this.config=n}return(0,w.Z)(l,[{key:"ngAfterViewInit",value:function(){var e=this;this.config&&this.config.ripple&&this.zone.runOutsideAngular(function(){e.create(),e.mouseDownListener=e.onMouseDown.bind(e),e.el.nativeElement.addEventListener("mousedown",e.mouseDownListener)})}},{key:"onMouseDown",value:function(e){var n=this.getInk();if(n&&"none"!==getComputedStyle(n,null).display){if(p.removeClass(n,"p-ink-active"),!p.getHeight(n)&&!p.getWidth(n)){var a=Math.max(p.getOuterWidth(this.el.nativeElement),p.getOuterHeight(this.el.nativeElement));n.style.height=a+"px",n.style.width=a+"px"}var r=p.getOffset(this.el.nativeElement),s=e.pageX-r.left+document.body.scrollTop-p.getWidth(n)/2,u=e.pageY-r.top+document.body.scrollLeft-p.getHeight(n)/2;n.style.top=u+"px",n.style.left=s+"px",p.addClass(n,"p-ink-active")}}},{key:"getInk",value:function(){for(var e=0;ethis.virtualScrollSelectedIndex||n.end-1&&this.viewPort.scrollToIndex(this.virtualScrollSelectedIndex)),this.virtualAutoScrolled=!0}},{key:"updateVirtualScrollSelectedIndex",value:function(e){this.selectedOption&&this.optionsToDisplay&&this.optionsToDisplay.length&&(e&&(this.viewPortOffsetTop=0),this.virtualScrollSelectedIndex=this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay))}},{key:"appendOverlay",value:function(){this.appendTo&&("body"===this.appendTo?document.body.appendChild(this.overlay):p.appendChild(this.overlay,this.appendTo),this.overlay.style.minWidth||(this.overlay.style.minWidth=p.getWidth(this.containerViewChild.nativeElement)+"px"))}},{key:"restoreOverlayAppend",value:function(){this.overlay&&this.appendTo&&this.el.nativeElement.appendChild(this.overlay)}},{key:"hide",value:function(){this.overlayVisible=!1,this.filter&&this.resetFilterOnHide&&this.resetFilter(),this.virtualScroll&&(this.virtualAutoScrolled=!1),this.cd.markForCheck()}},{key:"alignOverlay",value:function(){this.overlay&&(this.appendTo?p.absolutePosition(this.overlay,this.containerViewChild.nativeElement):p.relativePosition(this.overlay,this.containerViewChild.nativeElement))}},{key:"onInputFocus",value:function(e){this.focused=!0,this.onFocus.emit(e)}},{key:"onInputBlur",value:function(e){this.focused=!1,this.onBlur.emit(e),this.preventModelTouched||this.onModelTouched(),this.preventModelTouched=!1}},{key:"findPrevEnabledOption",value:function(e){var n;if(this.optionsToDisplay&&this.optionsToDisplay.length){for(var a=e-1;0<=a;a--){var r=this.optionsToDisplay[a];if(!this.isOptionDisabled(r)){n=r;break}}if(!n)for(var s=this.optionsToDisplay.length-1;s>=e;s--){var u=this.optionsToDisplay[s];if(!this.isOptionDisabled(u)){n=u;break}}}return n}},{key:"findNextEnabledOption",value:function(e){var n;if(this.optionsToDisplay&&this.optionsToDisplay.length){for(var a=e+1;a0&&this.selectItem(e,this.getOptionGroupChildren(this.optionsToDisplay[0])[0])}else{var s=this.selectedOption?this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1,u=this.findNextEnabledOption(s);u&&(this.selectItem(e,u),this.selectedOptionUpdated=!0)}e.preventDefault();break;case 38:if(this.group){var c=this.selectedOption?this.findOptionGroupIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1;if(-1!==c){var d=c.itemIndex-1;if(d>=0)this.selectItem(e,this.getOptionGroupChildren(this.optionsToDisplay[c.groupIndex])[d]),this.selectedOptionUpdated=!0;else if(d<0){var h=this.optionsToDisplay[c.groupIndex-1];h&&(this.selectItem(e,this.getOptionGroupChildren(h)[this.getOptionGroupChildren(h).length-1]),this.selectedOptionUpdated=!0)}}}else{var v=this.selectedOption?this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1,f=this.findPrevEnabledOption(v);f&&(this.selectItem(e,f),this.selectedOptionUpdated=!0)}e.preventDefault();break;case 32:n&&(this.overlayVisible?this.hide():this.show(),e.preventDefault());break;case 13:this.overlayVisible&&(!this.filter||this.optionsToDisplay&&this.optionsToDisplay.length>0)?this.hide():this.overlayVisible||this.show(),e.preventDefault();break;case 27:case 9:this.hide();break;default:n&&!e.metaKey&&this.search(e)}}},{key:"search",value:function(e){var n=this;this.searchTimeout&&clearTimeout(this.searchTimeout);var r,a=e.key;if(this.previousSearchChar=this.currentSearchChar,this.currentSearchChar=a,this.searchValue=this.previousSearchChar===this.currentSearchChar?this.currentSearchChar:this.searchValue?this.searchValue+a:a,this.group){var s=this.selectedOption?this.findOptionGroupIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):{groupIndex:0,itemIndex:0};r=this.searchOptionWithinGroup(s)}else{var u=this.selectedOption?this.findOptionIndex(this.getOptionValue(this.selectedOption),this.optionsToDisplay):-1;r=this.searchOption(++u)}r&&!this.isOptionDisabled(r)&&(this.selectItem(e,r),this.selectedOptionUpdated=!0),this.searchTimeout=setTimeout(function(){n.searchValue=null},250)}},{key:"searchOption",value:function(e){var n;return this.searchValue&&((n=this.searchOptionInRange(e,this.optionsToDisplay.length))||(n=this.searchOptionInRange(0,e))),n}},{key:"searchOptionInRange",value:function(e,n){for(var a=e;a0&&n>d){var f=this.isDecimalMode()&&(this.minFractionDigits||0)0?s:""):s=r.slice(0,n-1)+r.slice(n)}this.updateValue(e,s,null,"delete-single")}else s=this.deleteRange(r,n,a),this.updateValue(e,s,null,"delete-range");break;case 46:if(e.preventDefault(),n===a){var g=r.charAt(n),m=this.getDecimalCharIndexes(r),y=m.decimalCharIndex,k=m.decimalCharIndexWithoutPrefix;if(this.isNumeralChar(g)){var S=this.getDecimalLength(r);if(this._group.test(g))this._group.lastIndex=0,s=r.slice(0,n)+r.slice(n+2);else if(this._decimal.test(g))this._decimal.lastIndex=0,S?this.input.nativeElement.setSelectionRange(n+1,n+1):s=r.slice(0,n)+r.slice(n+1);else if(y>0&&n>y){var D=this.isDecimalMode()&&(this.minFractionDigits||0)0?s:""):s=r.slice(0,n)+r.slice(n+1)}this.updateValue(e,s,null,"delete-back-single")}else s=this.deleteRange(r,n,a),this.updateValue(e,s,null,"delete-range")}this.onKeyDown.emit(e)}}},{key:"onInputKeyPress",value:function(e){if(!this.readonly){e.preventDefault();var n=e.which||e.keyCode,a=String.fromCharCode(n),r=this.isDecimalSign(a),s=this.isMinusSign(a);(48<=n&&n<=57||s||r)&&this.insert(e,a,{isDecimalSign:r,isMinusSign:s})}}},{key:"onPaste",value:function(e){if(!this.disabled&&!this.readonly){e.preventDefault();var n=(e.clipboardData||window.clipboardData).getData("Text");if(n){var a=this.parseValue(n);null!=a&&this.insert(e,a.toString())}}}},{key:"allowMinusSign",value:function(){return null==this.min||this.min<0}},{key:"isMinusSign",value:function(e){return!(!this._minusSign.test(e)&&"-"!==e||(this._minusSign.lastIndex=0,0))}},{key:"isDecimalSign",value:function(e){return!!this._decimal.test(e)&&(this._decimal.lastIndex=0,!0)}},{key:"isDecimalMode",value:function(){return"decimal"===this.mode}},{key:"getDecimalCharIndexes",value:function(e){var n=e.search(this._decimal);this._decimal.lastIndex=0;var r=e.replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").search(this._decimal);return this._decimal.lastIndex=0,{decimalCharIndex:n,decimalCharIndexWithoutPrefix:r}}},{key:"getCharIndexes",value:function(e){var n=e.search(this._decimal);this._decimal.lastIndex=0;var a=e.search(this._minusSign);this._minusSign.lastIndex=0;var r=e.search(this._suffix);this._suffix.lastIndex=0;var s=e.search(this._currency);return this._currency.lastIndex=0,{decimalCharIndex:n,minusCharIndex:a,suffixCharIndex:r,currencyCharIndex:s}}},{key:"insert",value:function(e,n){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{isDecimalSign:!1,isMinusSign:!1},r=n.search(this._minusSign);if(this._minusSign.lastIndex=0,this.allowMinusSign()||-1===r){var m,s=this.input.nativeElement.selectionStart,u=this.input.nativeElement.selectionEnd,c=this.input.nativeElement.value.trim(),d=this.getCharIndexes(c),h=d.decimalCharIndex,v=d.minusCharIndex,f=d.suffixCharIndex,g=d.currencyCharIndex;if(a.isMinusSign)0===s&&(m=c,(-1===v||0!==u)&&(m=this.insertText(c,n,0,u)),this.updateValue(e,m,n,"insert"));else if(a.isDecimalSign)h>0&&s===h?this.updateValue(e,c,n,"insert"):(h>s&&h0&&s>h){if(s+n.length-(h+1)<=y){var S=g>=s?g-1:f>=s?f:c.length;m=c.slice(0,s)+n+c.slice(s+n.length,S)+c.slice(S),this.updateValue(e,m,n,k)}}else m=this.insertText(c,n,s,u),this.updateValue(e,m,n,k)}}}},{key:"insertText",value:function(e,n,a,r){if(2===("."===n?n:n.split(".")).length){var u=e.slice(a,r).search(this._decimal);return this._decimal.lastIndex=0,u>0?e.slice(0,a)+this.formatValue(n)+e.slice(r):e||this.formatValue(n)}return r-a===e.length?this.formatValue(n):0===a?n+e.slice(r):r===e.length?e.slice(0,a)+n:e.slice(0,a)+n+e.slice(r)}},{key:"deleteRange",value:function(e,n,a){return a-n===e.length?"":0===n?e.slice(a):a===e.length?e.slice(0,n):e.slice(0,n)+e.slice(a)}},{key:"initCursor",value:function(){var e=this.input.nativeElement.selectionStart,n=this.input.nativeElement.value,a=n.length,r=null,s=(this.prefixChar||"").length,u=(n=n.replace(this._prefix,"")).charAt(e-=s);if(this.isNumeralChar(u))return e+s;for(var c=e-1;c>=0;){if(u=n.charAt(c),this.isNumeralChar(u)){r=c+s;break}c--}if(null!==r)this.input.nativeElement.setSelectionRange(r+1,r+1);else{for(c=e;cthis.max?this.max:e}},{key:"updateInput",value:function(e,n,a,r){n=n||"";var s=this.input.nativeElement.value,u=this.formatValue(e),c=s.length;if(u!==r&&(u=this.concatValues(u,r)),0===c){this.input.nativeElement.value=u,this.input.nativeElement.setSelectionRange(0,0);var h=this.initCursor()+n.length;this.input.nativeElement.setSelectionRange(h,h)}else{var v=this.input.nativeElement.selectionStart,f=this.input.nativeElement.selectionEnd;if(this.maxlength&&this.maxlength0}},{key:"clearTimer",value:function(){this.timer&&clearInterval(this.timer)}},{key:"getFormatter",value:function(){return this.numberFormat}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.SBq),t.Y36(t.sBO))},o.\u0275cmp=t.Xpm({type:o,selectors:[["p-inputNumber"]],viewQuery:function(i,e){var n;1&i&&t.Gf(Vi,5),2&i&&t.iGM(n=t.CRH())&&(e.input=n.first)},hostAttrs:[1,"p-element","p-inputwrapper"],hostVars:4,hostBindings:function(i,e){2&i&&t.ekj("p-inputwrapper-filled",e.filled)("p-inputwrapper-focus",e.focused)},inputs:{showButtons:"showButtons",format:"format",buttonLayout:"buttonLayout",inputId:"inputId",styleClass:"styleClass",style:"style",placeholder:"placeholder",size:"size",maxlength:"maxlength",tabindex:"tabindex",title:"title",ariaLabel:"ariaLabel",ariaRequired:"ariaRequired",name:"name",required:"required",autocomplete:"autocomplete",min:"min",max:"max",incrementButtonClass:"incrementButtonClass",decrementButtonClass:"decrementButtonClass",incrementButtonIcon:"incrementButtonIcon",decrementButtonIcon:"decrementButtonIcon",readonly:"readonly",step:"step",allowEmpty:"allowEmpty",locale:"locale",localeMatcher:"localeMatcher",mode:"mode",currency:"currency",currencyDisplay:"currencyDisplay",useGrouping:"useGrouping",minFractionDigits:"minFractionDigits",maxFractionDigits:"maxFractionDigits",prefix:"prefix",suffix:"suffix",inputStyle:"inputStyle",inputStyleClass:"inputStyleClass",disabled:"disabled"},outputs:{onInput:"onInput",onFocus:"onFocus",onBlur:"onBlur",onKeyDown:"onKeyDown"},features:[t._Bn([Ki]),t.TTD],decls:6,vars:31,consts:[[3,"ngClass","ngStyle"],["pInputText","","inputmode","decimal",3,"ngClass","ngStyle","value","disabled","readonly","input","keydown","keypress","paste","click","focus","blur"],["input",""],["class","p-inputnumber-button-group",4,"ngIf"],["type","button","pButton","",3,"ngClass","class","icon","disabled","mousedown","mouseup","mouseleave","keydown","keyup",4,"ngIf"],[1,"p-inputnumber-button-group"],["type","button","pButton","",3,"ngClass","icon","disabled","mousedown","mouseup","mouseleave","keydown","keyup"]],template:function(i,e){1&i&&(t.TgZ(0,"span",0),t.TgZ(1,"input",1,2),t.NdJ("input",function(a){return e.onUserInput(a)})("keydown",function(a){return e.onInputKeyDown(a)})("keypress",function(a){return e.onInputKeyPress(a)})("paste",function(a){return e.onPaste(a)})("click",function(){return e.onInputClick()})("focus",function(a){return e.onInputFocus(a)})("blur",function(a){return e.onInputBlur(a)}),t.qZA(),t.YNc(3,Bi,3,12,"span",3),t.YNc(4,Zi,1,6,"button",4),t.YNc(5,zi,1,6,"button",4),t.qZA()),2&i&&(t.Tol(e.styleClass),t.Q6J("ngClass",t.kEZ(27,Ui,e.showButtons&&"stacked"===e.buttonLayout,e.showButtons&&"horizontal"===e.buttonLayout,e.showButtons&&"vertical"===e.buttonLayout))("ngStyle",e.style),t.xp6(1),t.Tol(e.inputStyleClass),t.Q6J("ngClass","p-inputnumber-input")("ngStyle",e.inputStyle)("value",e.formattedValue())("disabled",e.disabled)("readonly",e.readonly),t.uIk("placeholder",e.placeholder)("title",e.title)("id",e.inputId)("size",e.size)("name",e.name)("autocomplete",e.autocomplete)("maxlength",e.maxlength)("tabindex",e.tabindex)("aria-label",e.ariaLabel)("aria-required",e.ariaRequired)("required",e.required)("min",e.min)("max",e.max),t.xp6(2),t.Q6J("ngIf",e.showButtons&&"stacked"===e.buttonLayout),t.xp6(1),t.Q6J("ngIf",e.showButtons&&"stacked"!==e.buttonLayout),t.xp6(1),t.Q6J("ngIf",e.showButtons&&"stacked"!==e.buttonLayout))},directives:[_.mk,_.PC,Hi,_.O5,Te],styles:["p-inputnumber,.p-inputnumber{display:inline-flex}.p-inputnumber-button{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label{display:none}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up{border-top-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-input{border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-button-group{display:flex;flex-direction:column}.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button{flex:1 1 auto}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{order:3;border-top-left-radius:0;border-bottom-left-radius:0}.p-inputnumber-buttons-horizontal .p-inputnumber-input{order:2;border-radius:0}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{order:1;border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-vertical{flex-direction:column}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up{order:1;border-bottom-left-radius:0;border-bottom-right-radius:0;width:100%}.p-inputnumber-buttons-vertical .p-inputnumber-input{order:2;border-radius:0;text-align:center}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down{order:3;border-top-left-radius:0;border-top-right-radius:0;width:100%}.p-inputnumber-input{flex:1 1 auto}.p-fluid p-inputnumber,.p-fluid .p-inputnumber{width:100%}.p-fluid .p-inputnumber .p-inputnumber-input{width:1%}.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input{width:100%}\n"],encapsulation:2,changeDetection:0}),o}(),ue=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,ke,J]]}),o}(),cn=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,se,ue,I.u5,Z,Y],se,ue,I.u5,Z]}),o}();function dn(o,l){if(1&o&&t._UZ(0,"span",8),2&o){var i=t.oxw(2).$implicit;t.Tol(i.icon),t.Q6J("ngClass","p-button-icon p-button-icon-left")}}function pn(o,l){if(1&o&&(t.ynx(0),t.YNc(1,dn,1,3,"span",6),t.TgZ(2,"span",7),t._uU(3),t.qZA(),t.BQk()),2&o){var i=t.oxw().$implicit,e=t.oxw();t.xp6(1),t.Q6J("ngIf",i.icon),t.xp6(2),t.Oqu(e.getOptionLabel(i))}}function hn(o,l){1&o&&t.GkF(0)}var fn=function(l,i){return{$implicit:l,index:i}};function mn(o,l){if(1&o&&t.YNc(0,hn,1,0,"ng-container",9),2&o){var i=t.oxw(),e=i.$implicit,n=i.index,a=t.oxw();t.Q6J("ngTemplateOutlet",a.itemTemplate)("ngTemplateOutletContext",t.WLB(2,fn,e,n))}}var vn=function(l,i,e){return{"p-highlight":l,"p-disabled":i,"p-button-icon-only":e}};function gn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",2,3),t.NdJ("click",function(s){var u=t.CHM(i),c=u.$implicit,d=u.index;return t.oxw().onItemClick(s,c,d)})("keydown.enter",function(s){var u=t.CHM(i),c=u.$implicit,d=u.index;return t.oxw().onItemClick(s,c,d)})("blur",function(){return t.CHM(i),t.oxw().onBlur()}),t.YNc(2,pn,4,2,"ng-container",4),t.YNc(3,mn,1,5,"ng-template",null,5,t.W1O),t.qZA()}if(2&o){var e=l.$implicit,n=t.MAs(4),a=t.oxw();t.Tol(e.styleClass),t.Q6J("ngClass",t.kEZ(10,vn,a.isSelected(e),a.disabled||a.isOptionDisabled(e),e.icon&&!a.getOptionLabel(e))),t.uIk("aria-pressed",a.isSelected(e))("title",e.title)("aria-label",e.label)("tabindex",a.disabled?null:a.tabindex)("aria-labelledby",a.getOptionLabel(e)),t.xp6(2),t.Q6J("ngIf",!a.itemTemplate)("ngIfElse",n)}}var _n={provide:I.JU,useExisting:(0,t.Gpc)(function(){return yn}),multi:!0},yn=function(){var o=function(){function l(i){(0,C.Z)(this,l),this.cd=i,this.tabindex=0,this.onOptionClick=new t.vpe,this.onChange=new t.vpe,this.onModelChange=function(){},this.onModelTouched=function(){}}return(0,w.Z)(l,[{key:"getOptionLabel",value:function(e){return this.optionLabel?T.resolveFieldData(e,this.optionLabel):null!=e.label?e.label:e}},{key:"getOptionValue",value:function(e){return this.optionValue?T.resolveFieldData(e,this.optionValue):this.optionLabel||void 0===e.value?e:e.value}},{key:"isOptionDisabled",value:function(e){return this.optionDisabled?T.resolveFieldData(e,this.optionDisabled):void 0!==e.disabled&&e.disabled}},{key:"writeValue",value:function(e){this.value=e,this.cd.markForCheck()}},{key:"registerOnChange",value:function(e){this.onModelChange=e}},{key:"registerOnTouched",value:function(e){this.onModelTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e,this.cd.markForCheck()}},{key:"onItemClick",value:function(e,n,a){this.disabled||this.isOptionDisabled(n)||(this.multiple?this.isSelected(n)?this.removeOption(n):this.value=[].concat((0,W.Z)(this.value||[]),[this.getOptionValue(n)]):this.value=this.getOptionValue(n),this.onOptionClick.emit({originalEvent:e,option:n,index:a}),this.onModelChange(this.value),this.onChange.emit({originalEvent:e,value:this.value}))}},{key:"onBlur",value:function(){this.onModelTouched()}},{key:"removeOption",value:function(e){var n=this;this.value=this.value.filter(function(a){return!T.equals(a,n.getOptionValue(e),n.dataKey)})}},{key:"isSelected",value:function(e){var n=!1,a=this.getOptionValue(e);if(this.multiple){if(this.value){var s,r=(0,E.Z)(this.value);try{for(r.s();!(s=r.n()).done;)if(T.equals(s.value,a,this.dataKey)){n=!0;break}}catch(c){r.e(c)}finally{r.f()}}}else n=T.equals(this.getOptionValue(e),this.value,this.dataKey);return n}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.sBO))},o.\u0275cmp=t.Xpm({type:o,selectors:[["p-selectButton"]],contentQueries:function(i,e,n){var a;1&i&&t.Suo(n,t.Rgc,5),2&i&&t.iGM(a=t.CRH())&&(e.itemTemplate=a.first)},hostAttrs:[1,"p-element"],inputs:{options:"options",optionLabel:"optionLabel",optionValue:"optionValue",optionDisabled:"optionDisabled",tabindex:"tabindex",multiple:"multiple",style:"style",styleClass:"styleClass",ariaLabelledBy:"ariaLabelledBy",disabled:"disabled",dataKey:"dataKey"},outputs:{onOptionClick:"onOptionClick",onChange:"onChange"},features:[t._Bn([_n])],decls:2,vars:5,consts:[["role","group",3,"ngClass","ngStyle"],["class","p-button p-component","role","button","pRipple","",3,"class","ngClass","click","keydown.enter","blur",4,"ngFor","ngForOf"],["role","button","pRipple","",1,"p-button","p-component",3,"ngClass","click","keydown.enter","blur"],["btn",""],[4,"ngIf","ngIfElse"],["customcontent",""],[3,"ngClass","class",4,"ngIf"],[1,"p-button-label"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,e){1&i&&(t.TgZ(0,"div",0),t.YNc(1,gn,5,14,"div",1),t.qZA()),2&i&&(t.Tol(e.styleClass),t.Q6J("ngClass","p-selectbutton p-buttonset p-component")("ngStyle",e.style),t.xp6(1),t.Q6J("ngForOf",e.options))},directives:[_.mk,_.PC,_.sg,re,_.O5,_.tP],styles:[".p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default}.p-button-icon-only{justify-content:center}.p-button-icon-only .p-button-label{visibility:hidden;width:0;flex:0 0 auto}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-buttonset .p-button{margin:0}.p-buttonset .p-button:not(:last-child){border-right:0 none}.p-buttonset .p-button:not(:first-of-type):not(:last-of-type){border-radius:0}.p-buttonset .p-button:first-of-type{border-top-right-radius:0;border-bottom-right-radius:0}.p-buttonset .p-button:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}.p-buttonset .p-button:focus{position:relative;z-index:1}.p-button-label{transition:all .2s}\n"],encapsulation:2,changeDetection:0}),o}(),bn=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,Y]]}),o}(),wn=function(l,i,e){return{"p-checkbox-label-active":l,"p-disabled":i,"p-checkbox-label-focus":e}};function Cn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"label",7),t.NdJ("click",function(a){t.CHM(i);var r=t.oxw(),s=t.MAs(3);return r.onClick(a,s)}),t._uU(1),t.qZA()}if(2&o){var e=t.oxw();t.Q6J("ngClass",t.kEZ(3,wn,null!=e.value,e.disabled,e.focused)),t.uIk("for",e.inputId),t.xp6(1),t.Oqu(e.label)}}var kn=function(l,i){return{"p-checkbox p-component":!0,"p-checkbox-disabled":l,"p-checkbox-focused":i}},Tn=function(l,i,e){return{"p-highlight":l,"p-disabled":i,"p-focus":e}},Sn={provide:I.JU,useExisting:(0,t.Gpc)(function(){return xn}),multi:!0},xn=function(){var o=function(){function l(i){(0,C.Z)(this,l),this.cd=i,this.checkboxTrueIcon="pi pi-check",this.checkboxFalseIcon="pi pi-times",this.onChange=new t.vpe,this.onModelChange=function(){},this.onModelTouched=function(){}}return(0,w.Z)(l,[{key:"onClick",value:function(e,n){!this.disabled&&!this.readonly&&(this.toggle(e),this.focused=!0,n.focus())}},{key:"onKeydown",value:function(e){32==e.keyCode&&e.preventDefault()}},{key:"onKeyup",value:function(e){32==e.keyCode&&!this.readonly&&(this.toggle(e),e.preventDefault())}},{key:"toggle",value:function(e){null==this.value||null==this.value?this.value=!0:1==this.value?this.value=!1:0==this.value&&(this.value=null),this.onModelChange(this.value),this.onChange.emit({originalEvent:e,value:this.value})}},{key:"onFocus",value:function(){this.focused=!0}},{key:"onBlur",value:function(){this.focused=!1,this.onModelTouched()}},{key:"registerOnChange",value:function(e){this.onModelChange=e}},{key:"registerOnTouched",value:function(e){this.onModelTouched=e}},{key:"writeValue",value:function(e){this.value=e,this.cd.markForCheck()}},{key:"setDisabledState",value:function(e){this.disabled=e,this.cd.markForCheck()}}]),l}();return o.\u0275fac=function(i){return new(i||o)(t.Y36(t.sBO))},o.\u0275cmp=t.Xpm({type:o,selectors:[["p-triStateCheckbox"]],hostAttrs:[1,"p-element"],inputs:{disabled:"disabled",name:"name",ariaLabelledBy:"ariaLabelledBy",tabindex:"tabindex",inputId:"inputId",style:"style",styleClass:"styleClass",label:"label",readonly:"readonly",checkboxTrueIcon:"checkboxTrueIcon",checkboxFalseIcon:"checkboxFalseIcon"},outputs:{onChange:"onChange"},features:[t._Bn([Sn])],decls:7,vars:21,consts:[[3,"ngStyle","ngClass"],[1,"p-hidden-accessible"],["type","text","inputmode","none",3,"name","readonly","disabled","keyup","keydown","focus","blur"],["input",""],["role","checkbox",1,"p-checkbox-box",3,"ngClass","click"],[1,"p-checkbox-icon",3,"ngClass"],["class","p-checkbox-label",3,"ngClass","click",4,"ngIf"],[1,"p-checkbox-label",3,"ngClass","click"]],template:function(i,e){if(1&i){var n=t.EpF();t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"input",2,3),t.NdJ("keyup",function(r){return e.onKeyup(r)})("keydown",function(r){return e.onKeydown(r)})("focus",function(){return e.onFocus()})("blur",function(){return e.onBlur()}),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.NdJ("click",function(r){t.CHM(n);var s=t.MAs(3);return e.onClick(r,s)}),t._UZ(5,"span",5),t.qZA(),t.qZA(),t.YNc(6,Cn,2,7,"label",6)}2&i&&(t.Tol(e.styleClass),t.Q6J("ngStyle",e.style)("ngClass",t.WLB(14,kn,e.disabled,e.focused)),t.xp6(2),t.Q6J("name",e.name)("readonly",e.readonly)("disabled",e.disabled),t.uIk("id",e.inputId)("tabindex",e.tabindex)("aria-labelledby",e.ariaLabelledBy),t.xp6(2),t.Q6J("ngClass",t.kEZ(17,Tn,null!=e.value,e.disabled,e.focused)),t.uIk("aria-checked",!0===e.value),t.xp6(1),t.Q6J("ngClass",!0===e.value?e.checkboxTrueIcon:!1===e.value?e.checkboxFalseIcon:""),t.xp6(1),t.Q6J("ngIf",e.label))},directives:[_.PC,_.mk,_.O5],encapsulation:2,changeDetection:0}),o}(),En=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez]]}),o}(),In=["container"],Dn=["inputfield"],Mn=["contentWrapper"];function On(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",7),t.NdJ("click",function(a){t.CHM(i),t.oxw();var r=t.MAs(1);return t.oxw().onButtonClick(a,r)}),t.qZA()}if(2&o){var e=t.oxw(2);t.Q6J("icon",e.icon)("disabled",e.disabled),t.uIk("aria-label",e.iconAriaLabel)}}function Rn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"input",4,5),t.NdJ("focus",function(a){return t.CHM(i),t.oxw().onInputFocus(a)})("keydown",function(a){return t.CHM(i),t.oxw().onInputKeydown(a)})("click",function(){return t.CHM(i),t.oxw().onInputClick()})("blur",function(a){return t.CHM(i),t.oxw().onInputBlur(a)})("input",function(a){return t.CHM(i),t.oxw().onUserInput(a)}),t.qZA(),t.YNc(2,On,1,3,"button",6)}if(2&o){var e=t.oxw();t.Tol(e.inputStyleClass),t.Q6J("value",e.inputFieldValue)("readonly",e.readonlyInput)("ngStyle",e.inputStyle)("placeholder",e.placeholder||"")("disabled",e.disabled)("ngClass","p-inputtext p-component"),t.uIk("id",e.inputId)("name",e.name)("required",e.required)("aria-required",e.required)("tabindex",e.tabindex)("inputmode",e.touchUI?"off":null)("aria-labelledby",e.ariaLabelledBy),t.xp6(2),t.Q6J("ngIf",e.showIcon)}}function Fn(o,l){1&o&&t.GkF(0)}function Pn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",28),t.NdJ("keydown",function(n){return t.CHM(i),t.oxw(4).onContainerButtonKeydown(n)})("click",function(n){return t.CHM(i),t.oxw(4).onPrevButtonClick(n)}),t._UZ(1,"span",29),t.qZA()}}function Ln(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",30),t.NdJ("click",function(r){return t.CHM(i),t.oxw(4).switchToMonthView(r)})("keydown",function(r){return t.CHM(i),t.oxw(4).onContainerButtonKeydown(r)}),t._uU(1),t.qZA()}if(2&o){var e=t.oxw().$implicit,n=t.oxw(3);t.Q6J("disabled",n.switchViewButtonDisabled()),t.xp6(1),t.hij(" ",n.getMonthName(e.month)," ")}}function An(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"button",31),t.NdJ("click",function(r){return t.CHM(i),t.oxw(4).switchToYearView(r)})("keydown",function(r){return t.CHM(i),t.oxw(4).onContainerButtonKeydown(r)}),t._uU(1),t.qZA()}if(2&o){var e=t.oxw().$implicit,n=t.oxw(3);t.Q6J("disabled",n.switchViewButtonDisabled()),t.xp6(1),t.hij(" ",n.getYear(e)," ")}}function Hn(o,l){if(1&o&&(t.ynx(0),t._uU(1),t.BQk()),2&o){var i=t.oxw(5);t.xp6(1),t.AsE("",i.yearPickerValues()[0]," - ",i.yearPickerValues()[i.yearPickerValues().length-1],"")}}function Nn(o,l){1&o&&t.GkF(0)}var Ee=function(l){return{$implicit:l}};function Vn(o,l){if(1&o&&(t.TgZ(0,"span",32),t.YNc(1,Hn,2,2,"ng-container",11),t.YNc(2,Nn,1,0,"ng-container",33),t.qZA()),2&o){var i=t.oxw(4);t.xp6(1),t.Q6J("ngIf",!i.decadeTemplate),t.xp6(1),t.Q6J("ngTemplateOutlet",i.decadeTemplate)("ngTemplateOutletContext",t.VKq(3,Ee,i.yearPickerValues))}}function Bn(o,l){if(1&o&&(t.TgZ(0,"th",39),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&o){var i=t.oxw(5);t.xp6(2),t.Oqu(i.getTranslation("weekHeader"))}}function Zn(o,l){if(1&o&&(t.TgZ(0,"th",40),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&o){var i=l.$implicit;t.xp6(2),t.Oqu(i)}}function zn(o,l){if(1&o&&(t.TgZ(0,"td",43),t.TgZ(1,"span",44),t._uU(2),t.qZA(),t.qZA()),2&o){var i=t.oxw().index,e=t.oxw(2).$implicit;t.xp6(2),t.hij(" ",e.weekNumbers[i]," ")}}function Un(o,l){if(1&o&&(t.ynx(0),t._uU(1),t.BQk()),2&o){var i=t.oxw(2).$implicit;t.xp6(1),t.Oqu(i.day)}}function Kn(o,l){1&o&&t.GkF(0)}var Yn=function(l,i){return{"p-highlight":l,"p-disabled":i}};function Wn(o,l){if(1&o){var i=t.EpF();t.ynx(0),t.TgZ(1,"span",46),t.NdJ("click",function(r){t.CHM(i);var s=t.oxw().$implicit;return t.oxw(6).onDateSelect(r,s)})("keydown",function(r){t.CHM(i);var s=t.oxw().$implicit,u=t.oxw(3).index;return t.oxw(3).onDateCellKeydown(r,s,u)}),t.YNc(2,Un,2,1,"ng-container",11),t.YNc(3,Kn,1,0,"ng-container",33),t.qZA(),t.BQk()}if(2&o){var e=t.oxw().$implicit,n=t.oxw(6);t.xp6(1),t.Q6J("ngClass",t.WLB(4,Yn,n.isSelected(e),!e.selectable)),t.xp6(1),t.Q6J("ngIf",!n.dateTemplate),t.xp6(1),t.Q6J("ngTemplateOutlet",n.dateTemplate)("ngTemplateOutletContext",t.VKq(7,Ee,e))}}var qn=function(l,i){return{"p-datepicker-other-month":l,"p-datepicker-today":i}};function Jn(o,l){if(1&o&&(t.TgZ(0,"td",45),t.YNc(1,Wn,4,9,"ng-container",11),t.qZA()),2&o){var i=l.$implicit,e=t.oxw(6);t.Q6J("ngClass",t.WLB(2,qn,i.otherMonth,i.today)),t.xp6(1),t.Q6J("ngIf",!i.otherMonth||e.showOtherMonths)}}function Qn(o,l){if(1&o&&(t.TgZ(0,"tr"),t.YNc(1,zn,3,1,"td",41),t.YNc(2,Jn,2,5,"td",42),t.qZA()),2&o){var i=l.$implicit,e=t.oxw(5);t.xp6(1),t.Q6J("ngIf",e.showWeek),t.xp6(1),t.Q6J("ngForOf",i)}}function Gn(o,l){if(1&o&&(t.TgZ(0,"div",34),t.TgZ(1,"table",35),t.TgZ(2,"thead"),t.TgZ(3,"tr"),t.YNc(4,Bn,3,1,"th",36),t.YNc(5,Zn,3,1,"th",37),t.qZA(),t.qZA(),t.TgZ(6,"tbody"),t.YNc(7,Qn,3,2,"tr",38),t.qZA(),t.qZA(),t.qZA()),2&o){var i=t.oxw().$implicit,e=t.oxw(3);t.xp6(4),t.Q6J("ngIf",e.showWeek),t.xp6(1),t.Q6J("ngForOf",e.weekDays),t.xp6(2),t.Q6J("ngForOf",i.dates)}}function jn(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",18),t.TgZ(1,"div",19),t.YNc(2,Pn,2,0,"button",20),t.TgZ(3,"div",21),t.YNc(4,Ln,2,2,"button",22),t.YNc(5,An,2,2,"button",23),t.YNc(6,Vn,3,5,"span",24),t.qZA(),t.TgZ(7,"button",25),t.NdJ("keydown",function(r){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(r)})("click",function(r){return t.CHM(i),t.oxw(3).onNextButtonClick(r)}),t._UZ(8,"span",26),t.qZA(),t.qZA(),t.YNc(9,Gn,8,3,"div",27),t.qZA()}if(2&o){var e=l.index,n=t.oxw(3);t.xp6(2),t.Q6J("ngIf",0===e),t.xp6(2),t.Q6J("ngIf","date"===n.currentView),t.xp6(1),t.Q6J("ngIf","year"!==n.currentView),t.xp6(1),t.Q6J("ngIf","year"===n.currentView),t.xp6(1),t.Udp("display",1===n.numberOfMonths||e===n.numberOfMonths-1?"inline-flex":"none"),t.xp6(2),t.Q6J("ngIf","date"===n.currentView)}}var Ie=function(l){return{"p-highlight":l}};function $n(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"span",49),t.NdJ("click",function(s){var c=t.CHM(i).index;return t.oxw(4).onMonthSelect(s,c)})("keydown",function(s){var c=t.CHM(i).index;return t.oxw(4).onMonthCellKeydown(s,c)}),t._uU(1),t.qZA()}if(2&o){var e=l.$implicit,n=l.index,a=t.oxw(4);t.Q6J("ngClass",t.VKq(2,Ie,a.isMonthSelected(n))),t.xp6(1),t.hij(" ",e," ")}}function Xn(o,l){if(1&o&&(t.TgZ(0,"div",47),t.YNc(1,$n,2,4,"span",48),t.qZA()),2&o){var i=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",i.monthPickerValues())}}function ea(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"span",52),t.NdJ("click",function(r){var u=t.CHM(i).$implicit;return t.oxw(4).onYearSelect(r,u)})("keydown",function(r){var u=t.CHM(i).$implicit;return t.oxw(4).onYearCellKeydown(r,u)}),t._uU(1),t.qZA()}if(2&o){var e=l.$implicit,n=t.oxw(4);t.Q6J("ngClass",t.VKq(2,Ie,n.isYearSelected(e))),t.xp6(1),t.hij(" ",e," ")}}function ta(o,l){if(1&o&&(t.TgZ(0,"div",50),t.YNc(1,ea,2,4,"span",51),t.qZA()),2&o){var i=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",i.yearPickerValues())}}function ia(o,l){if(1&o&&(t.ynx(0),t.TgZ(1,"div",14),t.YNc(2,jn,10,7,"div",15),t.qZA(),t.YNc(3,Xn,2,1,"div",16),t.YNc(4,ta,2,1,"div",17),t.BQk()),2&o){var i=t.oxw(2);t.xp6(2),t.Q6J("ngForOf",i.months),t.xp6(1),t.Q6J("ngIf","month"===i.currentView),t.xp6(1),t.Q6J("ngIf","year"===i.currentView)}}function na(o,l){1&o&&(t.ynx(0),t._uU(1,"0"),t.BQk())}function aa(o,l){1&o&&(t.ynx(0),t._uU(1,"0"),t.BQk())}function oa(o,l){if(1&o&&(t.TgZ(0,"div",58),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&o){var i=t.oxw(3);t.xp6(2),t.Oqu(i.timeSeparator)}}function ra(o,l){1&o&&(t.ynx(0),t._uU(1,"0"),t.BQk())}function la(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",63),t.TgZ(1,"button",55),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).incrementSecond(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(3).incrementSecond(a)})("mousedown",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseDown(a,2,1)})("mouseup",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(3).onTimePickerElementMouseLeave()}),t._UZ(2,"span",56),t.qZA(),t.TgZ(3,"span"),t.YNc(4,ra,2,0,"ng-container",11),t._uU(5),t.qZA(),t.TgZ(6,"button",55),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).decrementSecond(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(3).decrementSecond(a)})("mousedown",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseDown(a,2,-1)})("mouseup",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(3).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(3).onTimePickerElementMouseLeave()}),t._UZ(7,"span",57),t.qZA(),t.qZA()}if(2&o){var e=t.oxw(3);t.xp6(4),t.Q6J("ngIf",e.currentSecond<10),t.xp6(1),t.Oqu(e.currentSecond)}}function sa(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",64),t.TgZ(1,"button",65),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)}),t._UZ(2,"span",56),t.qZA(),t.TgZ(3,"span"),t._uU(4),t.qZA(),t.TgZ(5,"button",65),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(3).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(3).toggleAMPM(a)}),t._UZ(6,"span",57),t.qZA(),t.qZA()}if(2&o){var e=t.oxw(3);t.xp6(4),t.Oqu(e.pm?"PM":"AM")}}function ua(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",53),t.TgZ(1,"div",54),t.TgZ(2,"button",55),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).incrementHour(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).incrementHour(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,0,1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(3,"span",56),t.qZA(),t.TgZ(4,"span"),t.YNc(5,na,2,0,"ng-container",11),t._uU(6),t.qZA(),t.TgZ(7,"button",55),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).decrementHour(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).decrementHour(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,0,-1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(8,"span",57),t.qZA(),t.qZA(),t.TgZ(9,"div",58),t.TgZ(10,"span"),t._uU(11),t.qZA(),t.qZA(),t.TgZ(12,"div",59),t.TgZ(13,"button",55),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).incrementMinute(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).incrementMinute(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,1,1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(14,"span",56),t.qZA(),t.TgZ(15,"span"),t.YNc(16,aa,2,0,"ng-container",11),t._uU(17),t.qZA(),t.TgZ(18,"button",55),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("keydown.enter",function(a){return t.CHM(i),t.oxw(2).decrementMinute(a)})("keydown.space",function(a){return t.CHM(i),t.oxw(2).decrementMinute(a)})("mousedown",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseDown(a,1,-1)})("mouseup",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.enter",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("keyup.space",function(a){return t.CHM(i),t.oxw(2).onTimePickerElementMouseUp(a)})("mouseleave",function(){return t.CHM(i),t.oxw(2).onTimePickerElementMouseLeave()}),t._UZ(19,"span",57),t.qZA(),t.qZA(),t.YNc(20,oa,3,1,"div",60),t.YNc(21,la,8,2,"div",61),t.YNc(22,sa,7,1,"div",62),t.qZA()}if(2&o){var e=t.oxw(2);t.xp6(5),t.Q6J("ngIf",e.currentHour<10),t.xp6(1),t.Oqu(e.currentHour),t.xp6(5),t.Oqu(e.timeSeparator),t.xp6(5),t.Q6J("ngIf",e.currentMinute<10),t.xp6(1),t.Oqu(e.currentMinute),t.xp6(3),t.Q6J("ngIf",e.showSeconds),t.xp6(1),t.Q6J("ngIf",e.showSeconds),t.xp6(1),t.Q6J("ngIf","12"==e.hourFormat)}}var De=function(l){return[l]};function ca(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",66),t.TgZ(1,"button",67),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(2).onTodayButtonClick(a)}),t.qZA(),t.TgZ(2,"button",67),t.NdJ("keydown",function(a){return t.CHM(i),t.oxw(2).onContainerButtonKeydown(a)})("click",function(a){return t.CHM(i),t.oxw(2).onClearButtonClick(a)}),t.qZA(),t.qZA()}if(2&o){var e=t.oxw(2);t.xp6(1),t.Q6J("label",e.getTranslation("today"))("ngClass",t.VKq(4,De,e.todayButtonStyleClass)),t.xp6(1),t.Q6J("label",e.getTranslation("clear"))("ngClass",t.VKq(6,De,e.clearButtonStyleClass))}}function da(o,l){1&o&&t.GkF(0)}var pa=function(l,i,e,n,a,r){return{"p-datepicker p-component":!0,"p-datepicker-inline":l,"p-disabled":i,"p-datepicker-timeonly":e,"p-datepicker-multiple-month":n,"p-datepicker-monthpicker":a,"p-datepicker-touch-ui":r}},Me=function(l,i){return{showTransitionParams:l,hideTransitionParams:i}},ha=function(l){return{value:"visibleTouchUI",params:l}},fa=function(l){return{value:"visible",params:l}};function ma(o,l){if(1&o){var i=t.EpF();t.TgZ(0,"div",8,9),t.NdJ("@overlayAnimation.start",function(a){return t.CHM(i),t.oxw().onOverlayAnimationStart(a)})("@overlayAnimation.done",function(a){return t.CHM(i),t.oxw().onOverlayAnimationDone(a)})("click",function(a){return t.CHM(i),t.oxw().onOverlayClick(a)}),t.Hsn(2),t.YNc(3,Fn,1,0,"ng-container",10),t.YNc(4,ia,5,3,"ng-container",11),t.YNc(5,ua,23,8,"div",12),t.YNc(6,ca,3,8,"div",13),t.Hsn(7,1),t.YNc(8,da,1,0,"ng-container",10),t.qZA()}if(2&o){var e=t.oxw();t.Tol(e.panelStyleClass),t.Q6J("ngStyle",e.panelStyle)("ngClass",t.HTZ(11,pa,e.inline,e.disabled,e.timeOnly,e.numberOfMonths>1,"month"===e.view,e.touchUI))("@overlayAnimation",e.touchUI?t.VKq(21,ha,t.WLB(18,Me,e.showTransitionOptions,e.hideTransitionOptions)):t.VKq(26,fa,t.WLB(23,Me,e.showTransitionOptions,e.hideTransitionOptions)))("@.disabled",!0===e.inline),t.xp6(3),t.Q6J("ngTemplateOutlet",e.headerTemplate),t.xp6(1),t.Q6J("ngIf",!e.timeOnly),t.xp6(1),t.Q6J("ngIf",(e.showTime||e.timeOnly)&&"date"===e.currentView),t.xp6(1),t.Q6J("ngIf",e.showButtonBar),t.xp6(2),t.Q6J("ngTemplateOutlet",e.footerTemplate)}}var va=[[["p-header"]],[["p-footer"]]],ga=function(l,i,e,n){return{"p-calendar":!0,"p-calendar-w-btn":l,"p-calendar-timeonly":i,"p-calendar-disabled":e,"p-focus":n}},_a=["p-header","p-footer"],ya={provide:I.JU,useExisting:(0,t.Gpc)(function(){return ba}),multi:!0},ba=function(){var o=function(){function l(i,e,n,a,r,s){(0,C.Z)(this,l),this.el=i,this.renderer=e,this.cd=n,this.zone=a,this.config=r,this.overlayService=s,this.multipleSeparator=",",this.rangeSeparator="-",this.inline=!1,this.showOtherMonths=!0,this.icon="pi pi-calendar",this.shortYearCutoff="+10",this.hourFormat="24",this.stepHour=1,this.stepMinute=1,this.stepSecond=1,this.showSeconds=!1,this.showOnFocus=!0,this.showWeek=!1,this.dataType="date",this.selectionMode="single",this.todayButtonStyleClass="p-button-text",this.clearButtonStyleClass="p-button-text",this.autoZIndex=!0,this.baseZIndex=0,this.keepInvalid=!1,this.hideOnDateTimeSelect=!0,this.timeSeparator=":",this.focusTrap=!0,this.showTransitionOptions=".12s cubic-bezier(0, 0, 0.2, 1)",this.hideTransitionOptions=".1s linear",this.onFocus=new t.vpe,this.onBlur=new t.vpe,this.onClose=new t.vpe,this.onSelect=new t.vpe,this.onInput=new t.vpe,this.onTodayClick=new t.vpe,this.onClearClick=new t.vpe,this.onMonthChange=new t.vpe,this.onYearChange=new t.vpe,this.onClickOutside=new t.vpe,this.onShow=new t.vpe,this.onModelChange=function(){},this.onModelTouched=function(){},this.inputFieldValue=null,this.navigationState=null,this._numberOfMonths=1,this._view="date",this.convertTo24Hour=function(u,c){return"12"==this.hourFormat?12===u?c?12:0:c?u+12:u:u}}return(0,w.Z)(l,[{key:"content",set:function(e){var n=this;this.contentViewChild=e,this.contentViewChild&&(this.isMonthNavigate?(Promise.resolve(null).then(function(){return n.updateFocus()}),this.isMonthNavigate=!1):this.focus||this.initFocusableCell())}},{key:"view",get:function(){return this._view},set:function(e){this._view=e,this.currentView=this._view}},{key:"defaultDate",get:function(){return this._defaultDate},set:function(e){if(this._defaultDate=e,this.initialized){var n=e||new Date;this.currentMonth=n.getMonth(),this.currentYear=n.getFullYear(),this.initTime(n),this.createMonths(this.currentMonth,this.currentYear)}}},{key:"minDate",get:function(){return this._minDate},set:function(e){this._minDate=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"maxDate",get:function(){return this._maxDate},set:function(e){this._maxDate=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"disabledDates",get:function(){return this._disabledDates},set:function(e){this._disabledDates=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"disabledDays",get:function(){return this._disabledDays},set:function(e){this._disabledDays=e,null!=this.currentMonth&&null!=this.currentMonth&&this.currentYear&&this.createMonths(this.currentMonth,this.currentYear)}},{key:"yearRange",get:function(){return this._yearRange},set:function(e){if(this._yearRange=e,e){var n=e.split(":"),a=parseInt(n[0]),r=parseInt(n[1]);this.populateYearOptions(a,r)}}},{key:"showTime",get:function(){return this._showTime},set:function(e){this._showTime=e,void 0===this.currentHour&&this.initTime(this.value||new Date),this.updateInputfield()}},{key:"locale",get:function(){return this._locale},set:function(e){console.warn("Locale property has no effect, use new i18n API instead.")}},{key:"responsiveOptions",get:function(){return this._responsiveOptions},set:function(e){this._responsiveOptions=e,this.destroyResponsiveStyleElement(),this.createResponsiveStyle()}},{key:"numberOfMonths",get:function(){return this._numberOfMonths},set:function(e){this._numberOfMonths=e,this.destroyResponsiveStyleElement(),this.createResponsiveStyle()}},{key:"firstDayOfWeek",get:function(){return this._firstDayOfWeek},set:function(e){this._firstDayOfWeek=e,this.createWeekDays()}},{key:"ngOnInit",value:function(){var e=this;this.attributeSelector=_e();var n=this.defaultDate||new Date;this.createResponsiveStyle(),this.currentMonth=n.getMonth(),this.currentYear=n.getFullYear(),this.currentView=this.view,"date"===this.view&&(this.createWeekDays(),this.initTime(n),this.createMonths(this.currentMonth,this.currentYear),this.ticksTo1970=24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*60*60*1e7),this.translationSubscription=this.config.translationObserver.subscribe(function(){e.createWeekDays()}),this.initialized=!0}},{key:"ngAfterContentInit",value:function(){var e=this;this.templates.forEach(function(n){switch(n.getType()){case"date":default:e.dateTemplate=n.template;break;case"decade":e.decadeTemplate=n.template;break;case"disabledDate":e.disabledDateTemplate=n.template;break;case"header":e.headerTemplate=n.template;break;case"footer":e.footerTemplate=n.template}})}},{key:"ngAfterViewInit",value:function(){this.inline&&(this.contentViewChild&&this.contentViewChild.nativeElement.setAttribute(this.attributeSelector,""),this.disabled||(this.initFocusableCell(),1===this.numberOfMonths&&(this.contentViewChild.nativeElement.style.width=p.getOuterWidth(this.containerViewChild.nativeElement)+"px")))}},{key:"getTranslation",value:function(e){return this.config.getTranslation(e)}},{key:"populateYearOptions",value:function(e,n){this.yearOptions=[];for(var a=e;a<=n;a++)this.yearOptions.push(a)}},{key:"createWeekDays",value:function(){this.weekDays=[];for(var e=this.getFirstDateOfWeek(),n=this.getTranslation(R.DAY_NAMES_MIN),a=0;a<7;a++)this.weekDays.push(n[e]),e=6==e?0:++e}},{key:"monthPickerValues",value:function(){for(var e=[],n=0;n<=11;n++)e.push(this.config.getTranslation("monthNamesShort")[n]);return e}},{key:"yearPickerValues",value:function(){for(var e=[],n=this.currentYear-this.currentYear%10,a=0;a<10;a++)e.push(n+a);return e}},{key:"createMonths",value:function(e,n){this.months=this.months=[];for(var a=0;a11&&(r=r%11-1,s=n+1),this.months.push(this.createMonth(r,s))}}},{key:"getWeekNumber",value:function(e){var n=new Date(e.getTime());n.setDate(n.getDate()+4-(n.getDay()||7));var a=n.getTime();return n.setMonth(0),n.setDate(1),Math.floor(Math.round((a-n.getTime())/864e5)/7)+1}},{key:"createMonth",value:function(e,n){for(var a=[],r=this.getFirstDayOfMonthIndex(e,n),s=this.getDaysCountInMonth(e,n),u=this.getDaysCountInPrevMonth(e,n),c=1,d=new Date,h=[],v=Math.ceil((s+r)/7),f=0;fs){var O=this.getNextMonthAndYear(e,n);g.push({day:c-s,month:O.month,year:O.year,otherMonth:!0,today:this.isToday(d,c-s,O.month,O.year),selectable:this.isSelectable(c-s,O.month,O.year,!0)})}else g.push({day:c,month:e,year:n,today:this.isToday(d,c,e,n),selectable:this.isSelectable(c,e,n,!1)});c++}this.showWeek&&h.push(this.getWeekNumber(new Date(g[0].year,g[0].month,g[0].day))),a.push(g)}return{month:e,year:n,dates:a,weekNumbers:h}}},{key:"initTime",value:function(e){this.pm=e.getHours()>11,this.showTime?(this.currentMinute=e.getMinutes(),this.currentSecond=e.getSeconds(),this.setCurrentHourPM(e.getHours())):this.timeOnly&&(this.currentMinute=0,this.currentHour=0,this.currentSecond=0)}},{key:"navBackward",value:function(e){var n=this;this.disabled?e.preventDefault():(this.isMonthNavigate=!0,"month"===this.currentView?(this.decrementYear(),setTimeout(function(){n.updateFocus()},1)):"year"===this.currentView?(this.decrementDecade(),setTimeout(function(){n.updateFocus()},1)):(0===this.currentMonth?(this.currentMonth=11,this.decrementYear()):this.currentMonth--,this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)))}},{key:"navForward",value:function(e){var n=this;this.disabled?e.preventDefault():(this.isMonthNavigate=!0,"month"===this.currentView?(this.incrementYear(),setTimeout(function(){n.updateFocus()},1)):"year"===this.currentView?(this.incrementDecade(),setTimeout(function(){n.updateFocus()},1)):(11===this.currentMonth?(this.currentMonth=0,this.incrementYear()):this.currentMonth++,this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)))}},{key:"decrementYear",value:function(){if(this.currentYear--,this.yearNavigator&&this.currentYearthis.yearOptions[this.yearOptions.length-1]){var e=this.yearOptions[this.yearOptions.length-1]-this.yearOptions[0];this.populateYearOptions(this.yearOptions[0]+e,this.yearOptions[this.yearOptions.length-1]+e)}}},{key:"switchToMonthView",value:function(e){this.currentView="month",this.cd.detectChanges(),this.alignOverlay(),e.preventDefault()}},{key:"switchToYearView",value:function(e){this.currentView="year",this.cd.detectChanges(),this.alignOverlay(),e.preventDefault()}},{key:"onDateSelect",value:function(e,n){var a=this;!this.disabled&&n.selectable?(this.isMultipleSelection()&&this.isSelected(n)?(this.value=this.value.filter(function(r,s){return!a.isDateEquals(r,n)}),0===this.value.length&&(this.value=null),this.updateModel(this.value)):this.shouldSelectDate(n)&&this.selectDate(n),this.isSingleSelection()&&this.hideOnDateTimeSelect&&setTimeout(function(){e.preventDefault(),a.hideOverlay(),a.mask&&a.disableModality(),a.cd.markForCheck()},150),this.updateInputfield(),e.preventDefault()):e.preventDefault()}},{key:"shouldSelectDate",value:function(e){return!this.isMultipleSelection()||null==this.maxDateCount||this.maxDateCount>(this.value?this.value.length:0)}},{key:"onMonthSelect",value:function(e,n){"month"===this.view?this.onDateSelect(e,{year:this.currentYear,month:n,day:1,selectable:!0}):(this.currentMonth=n,this.currentView="date",this.createMonths(this.currentMonth,this.currentYear),this.cd.markForCheck(),this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}))}},{key:"onYearSelect",value:function(e,n){"year"===this.view?this.onDateSelect(e,{year:n,month:0,day:1,selectable:!0}):(this.currentYear=n,this.currentView="month",this.onYearChange.emit({month:this.currentMonth+1,year:this.currentYear}))}},{key:"updateInputfield",value:function(){var e="";if(this.value)if(this.isSingleSelection())e=this.formatDateTime(this.value);else if(this.isMultipleSelection())for(var n=0;n11,this.currentHour=e>=12?12==e?12:e-12:0==e?12:e):this.currentHour=e}},{key:"selectDate",value:function(e){var n=new Date(e.year,e.month,e.day);if(this.showTime&&(n.setHours("12"==this.hourFormat?12===this.currentHour?this.pm?12:0:this.pm?this.currentHour+12:this.currentHour:this.currentHour),n.setMinutes(this.currentMinute),n.setSeconds(this.currentSecond)),this.minDate&&this.minDate>n&&(this.setCurrentHourPM((n=this.minDate).getHours()),this.currentMinute=n.getMinutes(),this.currentSecond=n.getSeconds()),this.maxDate&&this.maxDate=a.getTime()?r=n:(a=n,r=null),this.updateModel([a,r])}else this.updateModel([n,null]);this.onSelect.emit(n)}},{key:"updateModel",value:function(e){var n=this;if(this.value=e,"date"==this.dataType)this.onModelChange(this.value);else if("string"==this.dataType)if(this.isSingleSelection())this.onModelChange(this.formatDateTime(this.value));else{var a=null;this.value&&(a=this.value.map(function(r){return n.formatDateTime(r)})),this.onModelChange(a)}}},{key:"getFirstDayOfMonthIndex",value:function(e,n){var a=new Date;a.setDate(1),a.setMonth(e),a.setFullYear(n);var r=a.getDay()+this.getSundayIndex();return r>=7?r-7:r}},{key:"getDaysCountInMonth",value:function(e,n){return 32-this.daylightSavingAdjust(new Date(n,e,32)).getDate()}},{key:"getDaysCountInPrevMonth",value:function(e,n){var a=this.getPreviousMonthAndYear(e,n);return this.getDaysCountInMonth(a.month,a.year)}},{key:"getPreviousMonthAndYear",value:function(e,n){var a,r;return 0===e?(a=11,r=n-1):(a=e-1,r=n),{month:a,year:r}}},{key:"getNextMonthAndYear",value:function(e,n){var a,r;return 11===e?(a=0,r=n+1):(a=e+1,r=n),{month:a,year:r}}},{key:"getSundayIndex",value:function(){var e=this.getFirstDateOfWeek();return e>0?7-e:0}},{key:"isSelected",value:function(e){if(!this.value)return!1;if(this.isSingleSelection())return this.isDateEquals(this.value,e);if(this.isMultipleSelection()){var r,n=!1,a=(0,E.Z)(this.value);try{for(a.s();!(r=a.n()).done&&!(n=this.isDateEquals(r.value,e)););}catch(u){a.e(u)}finally{a.f()}return n}return this.isRangeSelection()?this.value[1]?this.isDateEquals(this.value[0],e)||this.isDateEquals(this.value[1],e)||this.isDateBetween(this.value[0],this.value[1],e):this.isDateEquals(this.value[0],e):void 0}},{key:"isComparable",value:function(){return null!=this.value&&"string"!=typeof this.value}},{key:"isMonthSelected",value:function(e){if(this.isComparable()){var n=this.isRangeSelection()?this.value[0]:this.value;return!this.isMultipleSelection()&&n.getMonth()===e&&n.getFullYear()===this.currentYear}return!1}},{key:"isYearSelected",value:function(e){if(this.isComparable()){var n=this.isRangeSelection()?this.value[0]:this.value;return!this.isMultipleSelection()&&n.getFullYear()===e}return!1}},{key:"isDateEquals",value:function(e,n){return!!(e&&e instanceof Date)&&e.getDate()===n.day&&e.getMonth()===n.month&&e.getFullYear()===n.year}},{key:"isDateBetween",value:function(e,n,a){if(e&&n){var s=new Date(a.year,a.month,a.day);return e.getTime()<=s.getTime()&&n.getTime()>=s.getTime()}return!1}},{key:"isSingleSelection",value:function(){return"single"===this.selectionMode}},{key:"isRangeSelection",value:function(){return"range"===this.selectionMode}},{key:"isMultipleSelection",value:function(){return"multiple"===this.selectionMode}},{key:"isToday",value:function(e,n,a,r){return e.getDate()===n&&e.getMonth()===a&&e.getFullYear()===r}},{key:"isSelectable",value:function(e,n,a,r){var s=!0,u=!0,c=!0,d=!0;return!(r&&!this.selectOtherMonths)&&(this.minDate&&(this.minDate.getFullYear()>a||this.minDate.getFullYear()===a&&(this.minDate.getMonth()>n||this.minDate.getMonth()===n&&this.minDate.getDate()>e))&&(s=!1),this.maxDate&&(this.maxDate.getFullYear()1||this.disabled}},{key:"onPrevButtonClick",value:function(e){this.navigationState={backward:!0,button:!0},this.navBackward(e)}},{key:"onNextButtonClick",value:function(e){this.navigationState={backward:!1,button:!0},this.navForward(e)}},{key:"onContainerButtonKeydown",value:function(e){switch(e.which){case 9:this.inline||this.trapFocus(e);break;case 27:this.overlayVisible=!1,e.preventDefault()}}},{key:"onInputKeydown",value:function(e){this.isKeydown=!0,40===e.keyCode&&this.contentViewChild?this.trapFocus(e):27===e.keyCode||13===e.keyCode?this.overlayVisible&&(this.overlayVisible=!1,e.preventDefault()):9===e.keyCode&&this.contentViewChild&&(p.getFocusableElements(this.contentViewChild.nativeElement).forEach(function(n){return n.tabIndex="-1"}),this.overlayVisible&&(this.overlayVisible=!1))}},{key:"onDateCellKeydown",value:function(e,n,a){var r=e.currentTarget,s=r.parentElement;switch(e.which){case 40:r.tabIndex="-1";var u=p.index(s),c=s.parentElement.nextElementSibling;c?p.hasClass(c.children[u].children[0],"p-disabled")?(this.navigationState={backward:!1},this.navForward(e)):(c.children[u].children[0].tabIndex="0",c.children[u].children[0].focus()):(this.navigationState={backward:!1},this.navForward(e)),e.preventDefault();break;case 38:r.tabIndex="-1";var h=p.index(s),v=s.parentElement.previousElementSibling;if(v){var f=v.children[h].children[0];p.hasClass(f,"p-disabled")?(this.navigationState={backward:!0},this.navBackward(e)):(f.tabIndex="0",f.focus())}else this.navigationState={backward:!0},this.navBackward(e);e.preventDefault();break;case 37:r.tabIndex="-1";var g=s.previousElementSibling;if(g){var m=g.children[0];p.hasClass(m,"p-disabled")||p.hasClass(m.parentElement,"p-datepicker-weeknumber")?this.navigateToMonth(!0,a):(m.tabIndex="0",m.focus())}else this.navigateToMonth(!0,a);e.preventDefault();break;case 39:r.tabIndex="-1";var y=s.nextElementSibling;if(y){var k=y.children[0];p.hasClass(k,"p-disabled")?this.navigateToMonth(!1,a):(k.tabIndex="0",k.focus())}else this.navigateToMonth(!1,a);e.preventDefault();break;case 13:case 32:this.onDateSelect(e,n),e.preventDefault();break;case 27:this.overlayVisible=!1,e.preventDefault();break;case 9:this.inline||this.trapFocus(e)}}},{key:"onMonthCellKeydown",value:function(e,n){var a=e.currentTarget;switch(e.which){case 38:case 40:a.tabIndex="-1";var r=a.parentElement.children,s=p.index(a),u=r[40===e.which?s+3:s-3];u&&(u.tabIndex="0",u.focus()),e.preventDefault();break;case 37:a.tabIndex="-1";var c=a.previousElementSibling;c?(c.tabIndex="0",c.focus()):(this.navigationState={backward:!0},this.navBackward(e)),e.preventDefault();break;case 39:a.tabIndex="-1";var d=a.nextElementSibling;d?(d.tabIndex="0",d.focus()):(this.navigationState={backward:!1},this.navForward(e)),e.preventDefault();break;case 13:this.onMonthSelect(e,n),e.preventDefault();break;case 13:case 32:case 27:this.overlayVisible=!1,e.preventDefault();break;case 9:this.inline||this.trapFocus(e)}}},{key:"onYearCellKeydown",value:function(e,n){var a=e.currentTarget;switch(e.which){case 38:case 40:a.tabIndex="-1";var r=a.parentElement.children,s=p.index(a),u=r[40===e.which?s+2:s-2];u&&(u.tabIndex="0",u.focus()),e.preventDefault();break;case 37:a.tabIndex="-1";var c=a.previousElementSibling;c?(c.tabIndex="0",c.focus()):(this.navigationState={backward:!0},this.navBackward(e)),e.preventDefault();break;case 39:a.tabIndex="-1";var d=a.nextElementSibling;d?(d.tabIndex="0",d.focus()):(this.navigationState={backward:!1},this.navForward(e)),e.preventDefault();break;case 13:case 32:this.onYearSelect(e,n),e.preventDefault();break;case 27:this.overlayVisible=!1,e.preventDefault();break;case 9:this.trapFocus(e)}}},{key:"navigateToMonth",value:function(e,n){if(e)if(1===this.numberOfMonths||0===n)this.navigationState={backward:!0},this.navBackward(event);else{var r=p.find(this.contentViewChild.nativeElement.children[n-1],".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)"),s=r[r.length-1];s.tabIndex="0",s.focus()}else if(1===this.numberOfMonths||n===this.numberOfMonths-1)this.navigationState={backward:!1},this.navForward(event);else{var c=p.findSingle(this.contentViewChild.nativeElement.children[n+1],".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)");c.tabIndex="0",c.focus()}}},{key:"updateFocus",value:function(){var e;if(this.navigationState){var n;if(this.navigationState.button)this.initFocusableCell(),this.navigationState.backward?p.findSingle(this.contentViewChild.nativeElement,".p-datepicker-prev").focus():p.findSingle(this.contentViewChild.nativeElement,".p-datepicker-next").focus();else this.navigationState.backward?(n=p.find(this.contentViewChild.nativeElement,"month"===this.currentView?".p-monthpicker .p-monthpicker-month:not(.p-disabled)":"year"===this.currentView?".p-yearpicker .p-yearpicker-year:not(.p-disabled)":".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)"))&&n.length>0&&(e=n[n.length-1]):e=p.findSingle(this.contentViewChild.nativeElement,"month"===this.currentView?".p-monthpicker .p-monthpicker-month:not(.p-disabled)":"year"===this.currentView?".p-yearpicker .p-yearpicker-year:not(.p-disabled)":".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)"),e&&(e.tabIndex="0",e.focus());this.navigationState=null}else this.initFocusableCell()}},{key:"initFocusableCell",value:function(){var e;if("month"===this.currentView){var n=p.find(this.contentViewChild.nativeElement,".p-monthpicker .p-monthpicker-month:not(.p-disabled)"),a=p.findSingle(this.contentViewChild.nativeElement,".p-monthpicker .p-monthpicker-month.p-highlight");n.forEach(function(h){return h.tabIndex=-1}),e=a||n[0],0===n.length&&p.find(this.contentViewChild.nativeElement,'.p-monthpicker .p-monthpicker-month.p-disabled[tabindex = "0"]').forEach(function(h){return h.tabIndex=-1})}else if("year"===this.currentView){var s=p.find(this.contentViewChild.nativeElement,".p-yearpicker .p-yearpicker-year:not(.p-disabled)"),u=p.findSingle(this.contentViewChild.nativeElement,".p-yearpicker .p-yearpicker-year.p-highlight");s.forEach(function(h){return h.tabIndex=-1}),e=u||s[0],0===s.length&&p.find(this.contentViewChild.nativeElement,'.p-yearpicker .p-yearpicker-year.p-disabled[tabindex = "0"]').forEach(function(h){return h.tabIndex=-1})}else if(!(e=p.findSingle(this.contentViewChild.nativeElement,"span.p-highlight"))){var d=p.findSingle(this.contentViewChild.nativeElement,"td.p-datepicker-today span:not(.p-disabled):not(.p-ink)");e=d||p.findSingle(this.contentViewChild.nativeElement,".p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)")}e&&(e.tabIndex="0",!this.preventFocus&&(!this.navigationState||!this.navigationState.button)&&setTimeout(function(){e.focus()},1),this.preventFocus=!1)}},{key:"trapFocus",value:function(e){var n=p.getFocusableElements(this.contentViewChild.nativeElement);if(n&&n.length>0)if(n[0].ownerDocument.activeElement){var a=n.indexOf(n[0].ownerDocument.activeElement);if(e.shiftKey)if(-1==a||0===a)if(this.focusTrap)n[n.length-1].focus();else{if(-1===a)return this.hideOverlay();if(0===a)return}else n[a-1].focus();else if(-1==a||a===n.length-1){if(!this.focusTrap&&-1!=a)return this.hideOverlay();n[0].focus()}else n[a+1].focus()}else n[0].focus();e.preventDefault()}},{key:"onMonthDropdownChange",value:function(e){this.currentMonth=parseInt(e),this.onMonthChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)}},{key:"onYearDropdownChange",value:function(e){this.currentYear=parseInt(e),this.onYearChange.emit({month:this.currentMonth+1,year:this.currentYear}),this.createMonths(this.currentMonth,this.currentYear)}},{key:"validateTime",value:function(e,n,a,r){var s=this.value,u=this.convertTo24Hour(e,r);this.isRangeSelection()&&(s=this.value[1]||this.value[0]),this.isMultipleSelection()&&(s=this.value[this.value.length-1]);var c=s?s.toDateString():null;return!(this.minDate&&c&&this.minDate.toDateString()===c&&(this.minDate.getHours()>u||this.minDate.getHours()===u&&(this.minDate.getMinutes()>n||this.minDate.getMinutes()===n&&this.minDate.getSeconds()>a))||this.maxDate&&c&&this.maxDate.toDateString()===c&&(this.maxDate.getHours()=24?a-24:a:"12"==this.hourFormat&&(this.currentHour<12&&a>11&&(r=!this.pm),a=a>=13?a-12:a),this.validateTime(a,this.currentMinute,this.currentSecond,r)&&(this.currentHour=a,this.pm=r),e.preventDefault()}},{key:"onTimePickerElementMouseDown",value:function(e,n,a){this.disabled||(this.repeat(e,null,n,a),e.preventDefault())}},{key:"onTimePickerElementMouseUp",value:function(e){this.disabled||(this.clearTimePickerTimer(),this.updateTime())}},{key:"onTimePickerElementMouseLeave",value:function(){!this.disabled&&this.timePickerTimer&&(this.clearTimePickerTimer(),this.updateTime())}},{key:"repeat",value:function(e,n,a,r){var s=this,u=n||500;switch(this.clearTimePickerTimer(),this.timePickerTimer=setTimeout(function(){s.repeat(e,100,a,r),s.cd.markForCheck()},u),a){case 0:1===r?this.incrementHour(e):this.decrementHour(e);break;case 1:1===r?this.incrementMinute(e):this.decrementMinute(e);break;case 2:1===r?this.incrementSecond(e):this.decrementSecond(e)}this.updateInputfield()}},{key:"clearTimePickerTimer",value:function(){this.timePickerTimer&&(clearTimeout(this.timePickerTimer),this.timePickerTimer=null)}},{key:"decrementHour",value:function(e){var n=this.currentHour-this.stepHour,a=this.pm;"24"==this.hourFormat?n=n<0?24+n:n:"12"==this.hourFormat&&(12===this.currentHour&&(a=!this.pm),n=n<=0?12+n:n),this.validateTime(n,this.currentMinute,this.currentSecond,a)&&(this.currentHour=n,this.pm=a),e.preventDefault()}},{key:"incrementMinute",value:function(e){var n=this.currentMinute+this.stepMinute;this.validateTime(this.currentHour,n=n>59?n-60:n,this.currentSecond,this.pm)&&(this.currentMinute=n),e.preventDefault()}},{key:"decrementMinute",value:function(e){var n=this.currentMinute-this.stepMinute;this.validateTime(this.currentHour,n=n<0?60+n:n,this.currentSecond,this.pm)&&(this.currentMinute=n),e.preventDefault()}},{key:"incrementSecond",value:function(e){var n=this.currentSecond+this.stepSecond;this.validateTime(this.currentHour,this.currentMinute,n=n>59?n-60:n,this.pm)&&(this.currentSecond=n),e.preventDefault()}},{key:"decrementSecond",value:function(e){var n=this.currentSecond-this.stepSecond;this.validateTime(this.currentHour,this.currentMinute,n=n<0?60+n:n,this.pm)&&(this.currentSecond=n),e.preventDefault()}},{key:"updateTime",value:function(){var e=this.value;this.isRangeSelection()&&(e=this.value[1]||this.value[0]),this.isMultipleSelection()&&(e=this.value[this.value.length-1]),(e=e?new Date(e.getTime()):new Date).setHours("12"==this.hourFormat?12===this.currentHour?this.pm?12:0:this.pm?this.currentHour+12:this.currentHour:this.currentHour),e.setMinutes(this.currentMinute),e.setSeconds(this.currentSecond),this.isRangeSelection()&&(e=this.value[1]?[this.value[0],e]:[e,null]),this.isMultipleSelection()&&(e=[].concat((0,W.Z)(this.value.slice(0,-1)),[e])),this.updateModel(e),this.onSelect.emit(e),this.updateInputfield()}},{key:"toggleAMPM",value:function(e){var n=!this.pm;this.validateTime(this.currentHour,this.currentMinute,this.currentSecond,n)&&(this.pm=n,this.updateTime()),e.preventDefault()}},{key:"onUserInput",value:function(e){if(this.isKeydown){this.isKeydown=!1;var n=e.target.value;try{var a=this.parseValueFromString(n);this.isValidSelection(a)&&(this.updateModel(a),this.updateUI())}catch(s){this.updateModel(this.keepInvalid?n:null)}this.filled=null!=n&&n.length,this.onInput.emit(e)}}},{key:"isValidSelection",value:function(e){var n=this,a=!0;return this.isSingleSelection()?this.isSelectable(e.getDate(),e.getMonth(),e.getFullYear(),!1)||(a=!1):e.every(function(r){return n.isSelectable(r.getDate(),r.getMonth(),r.getFullYear(),!1)})&&this.isRangeSelection()&&(a=e.length>1&&e[1]>e[0]),a}},{key:"parseValueFromString",value:function(e){if(!e||0===e.trim().length)return null;var n;if(this.isSingleSelection())n=this.parseDateTime(e);else if(this.isMultipleSelection()){var a=e.split(this.multipleSeparator);n=[];var s,r=(0,E.Z)(a);try{for(r.s();!(s=r.n()).done;)n.push(this.parseDateTime(s.value.trim()))}catch(h){r.e(h)}finally{r.f()}}else if(this.isRangeSelection()){var c=e.split(" "+this.rangeSeparator+" ");n=[];for(var d=0;d11&&12!=a&&(a-=12),n+="12"==this.hourFormat&&0===a?12:a<10?"0"+a:a,n+=":",n+=r<10?"0"+r:r,this.showSeconds&&(n+=":",n+=s<10?"0"+s:s),"12"==this.hourFormat&&(n+=e.getHours()>11?" PM":" AM"),n}},{key:"parseTime",value:function(e){var n=e.split(":");if(n.length!==(this.showSeconds?3:2))throw"Invalid time";var r=parseInt(n[0]),s=parseInt(n[1]),u=this.showSeconds?parseInt(n[2]):null;if(isNaN(r)||isNaN(s)||r>23||s>59||"12"==this.hourFormat&&r>12||this.showSeconds&&(isNaN(u)||u>59))throw"Invalid time";return"12"==this.hourFormat&&(12!==r&&this.pm?r+=12:!this.pm&&12===r&&(r-=12)),{hour:r,minute:s,second:u}}},{key:"parseDate",value:function(e,n){if(null==n||null==e)throw"Invalid arguments";if(""===(e="object"==typeof e?e.toString():e+""))return null;var a,r,s,m,u=0,c="string"!=typeof this.shortYearCutoff?this.shortYearCutoff:(new Date).getFullYear()%100+parseInt(this.shortYearCutoff,10),d=-1,h=-1,v=-1,f=-1,g=!1,y=function(F){var V=a+1-1)for(h=1,v=f;!(v<=(r=this.getDaysCountInMonth(d,h-1)));)h++,v-=r;if((m=this.daylightSavingAdjust(new Date(d,h-1,v))).getFullYear()!==d||m.getMonth()+1!==h||m.getDate()!==v)throw"Invalid date";return m}},{key:"daylightSavingAdjust",value:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null}},{key:"updateFilledState",value:function(){this.filled=this.inputFieldValue&&""!=this.inputFieldValue}},{key:"onTodayButtonClick",value:function(e){var n=new Date,a={day:n.getDate(),month:n.getMonth(),year:n.getFullYear(),otherMonth:n.getMonth()!==this.currentMonth||n.getFullYear()!==this.currentYear,today:!0,selectable:!0};this.onDateSelect(e,a),this.onTodayClick.emit(e)}},{key:"onClearButtonClick",value:function(e){this.updateModel(null),this.updateInputfield(),this.hideOverlay(),this.onClearClick.emit(e)}},{key:"createResponsiveStyle",value:function(){if(this.numberOfMonths>1&&this.responsiveOptions){this.responsiveStyleElement||(this.responsiveStyleElement=document.createElement("style"),this.responsiveStyleElement.type="text/css",document.body.appendChild(this.responsiveStyleElement));var e="";if(this.responsiveOptions)for(var n=(0,W.Z)(this.responsiveOptions).filter(function(h){return!(!h.breakpoint||!h.numMonths)}).sort(function(h,v){return-1*h.breakpoint.localeCompare(v.breakpoint,void 0,{numeric:!0})}),a=0;aspan{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}\n"],encapsulation:2,data:{animation:[(0,x.X$)("overlayAnimation",[(0,x.SB)("visibleTouchUI",(0,x.oB)({transform:"translate(-50%,-50%)",opacity:1})),(0,x.eR)("void => visible",[(0,x.oB)({opacity:0,transform:"scaleY(0.8)"}),(0,x.jt)("{{showTransitionParams}}",(0,x.oB)({opacity:1,transform:"*"}))]),(0,x.eR)("visible => void",[(0,x.jt)("{{hideTransitionParams}}",(0,x.oB)({opacity:0}))]),(0,x.eR)("void => visibleTouchUI",[(0,x.oB)({opacity:0,transform:"translate3d(-50%, -40%, 0) scale(0.9)"}),(0,x.jt)("{{showTransitionParams}}")]),(0,x.eR)("visibleTouchUI => void",[(0,x.jt)("{{hideTransitionParams}}",(0,x.oB)({opacity:0,transform:"translate3d(-50%, -40%, 0) scale(0.9)"}))])])]},changeDetection:0}),o}(),wa=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,J,Z,Y],J,Z]}),o}(),Ro=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,cn,ke,se,H.Cl,I.u5,J,bn,wa,ue,En],Z,H.Cl]}),o}(),Fo=function(){var o=(0,w.Z)(function l(){(0,C.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=t.oAB({type:o}),o.\u0275inj=t.cJS({imports:[[_.ez,Nt.o.forChild(Ht),L.p0,Vt.HT,ve.TU,he.c,te.lN,ae.LD,I.UX,I.u5,Bt.V,me.Ps,U.Is,ne.JX,Ro,fe.AV,ie.Fk]]}),o}()}}]); -//# sourceMappingURL=834.e53845467f8174d0.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/834.e53845467f8174d0.js.map b/frontend/src/main/resources/static/834.e53845467f8174d0.js.map deleted file mode 100644 index 4aabc97..0000000 --- a/frontend/src/main/resources/static/834.e53845467f8174d0.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r54","ctx_r75","ctx_r81","SubstanceNamesComponent","dialog","gaService","cvService","overlayContainerService","utilsService","c","Subject","FormControl","this","filterSelectObj","name","columnProp","options","substanceUpdated","subscribe","a","substance","names","filtered","countUpdate","emit","length","searchControl","valueChanges","typeFilterOn","filterList","value","analyticsEventCategory","JSON","parse","stringify","filterBackup","console","log","error","getVocabularies","slice","sort","b","returned","displayName","preferred","toUpperCase","pageChange","filter","o","getFilterObject","overlayContainer","getContainerElement","nameFilter","nameFilterValue","filterTable","stdNameFilter","stdNameFilterValue","typeFilter","typeFilterValue","langFilter","langFilterValue","hideFilters","showHideFilterText","event","nameType","displayedColumns","displayedFilterColumns","type","nFilter","snFilter","lFilter","tFilter","lFilterCode","undefined","getLangFilterValue","tFilterCode","getTypeFilterValue","n","f","stdName","toLowerCase","includes","isIncluded","push","D","k","field","languages","langFilterOptions","l","s","display","oneLang","h","languageVocabulary","e","v","typeFilterOptions","oneType","typeVocabulary","u","tempFiltered","forEach","item","indexOf","target","setTimeout","page","column","fullObj","key","uniqChk","obj","data","active","direction","isAsc","r","compare","getLanguages","modelValue","setValue","getDomainVocabulary","response","LANGUAGE","dictionary","NAME_TYPE","getLangFilterOptions","getTypeFilterOptions","languagesArray","language","join","templateRef","sendEvent","dialogRef","open","minWidth","maxWidth","style","zIndex","afterClosed","nameOrgs","domains","nameJurisdiction","SubstanceCardBaseFilteredList","selectors","ctx","ObjectUtils","obj1","obj2","resolveFieldData","equalsByValue","i","arrA","Array","isArray","arrB","dateA","Date","dateB","getTime","regexpA","RegExp","regexpB","toString","keys","Object","prototype","hasOwnProperty","call","isFunction","fields","split","len","constructor","apply","from","to","splice","index","arr","sourceArr","injected","findIndexInList","list","equals","str","search","replace","isEmpty","lastId","concat","zindexutils","zIndexes","getZIndex","el","parseInt","get","set","baseZIndex","String","lastZIndex","newZIndex","generateZIndex","clear","revertZIndex","getCurrent","ZIndexUtils","FilterMatchMode","STARTS_WITH","CONTAINS","NOT_CONTAINS","ENDS_WITH","EQUALS","NOT_EQUALS","IN","LESS_THAN","LESS_THAN_OR_EQUAL_TO","GREATER_THAN","GREATER_THAN_OR_EQUAL_TO","BETWEEN","IS","IS_NOT","BEFORE","AFTER","DATE_IS","DATE_IS_NOT","DATE_BEFORE","DATE_AFTER","PrimeNGConfig","C","ripple","filterMatchModeOptions","text","numeric","date","translation","startsWith","contains","notContains","endsWith","notEquals","noFilter","lt","lte","gt","gte","is","isNot","before","after","dateIs","dateIsNot","dateBefore","dateAfter","matchAll","matchAny","addRule","removeRule","accept","reject","choose","upload","cancel","dayNames","dayNamesShort","dayNamesMin","monthNames","monthNamesShort","dateFormat","firstDayOfWeek","today","weekHeader","weak","medium","strong","passwordPrompt","emptyMessage","emptyFilterMessage","modal","overlay","menu","tooltip","translationSource","translationObserver","asObservable","assign","next","ɵfac","ɵprov","factory","TranslationKeys","NO_FILTER","LT","LTE","GT","GTE","CLEAR","APPLY","MATCH_ALL","MATCH_ANY","ADD_RULE","REMOVE_RULE","ACCEPT","REJECT","CHOOSE","UPLOAD","CANCEL","DAY_NAMES","DAY_NAMES_SHORT","DAY_NAMES_MIN","MONTH_NAMES","MONTH_NAMES_SHORT","FIRST_DAY_OF_WEEK","TODAY","WEEK_HEADER","WEAK","MEDIUM","STRONG","PASSWORD_PROMPT","EMPTY_MESSAGE","EMPTY_FILTER_MESSAGE","FilterService","filters","filterLocale","trim","filterValue","toLocaleLowerCase","stringValue","in","between","toDateString","filterMatchMode","filteredItems","d","fieldValue","y","rule","fn","OverlayService","clickSource","clickObservable","PrimeTemplate","template","ɵdir","SharedModule","ɵmod","ɵinj","CommonModule","DomHandler","element","className","classList","add","styles","remove","test","parentNode","children","child","selector","querySelectorAll","querySelector","childNodes","num","nodeType","attributeName","attributes","top","left","elementDimensions","offsetParent","width","offsetWidth","height","offsetHeight","getHiddenElementDimensions","targetHeight","targetOffset","getBoundingClientRect","viewport","getViewport","transformOrigin","elementOuterHeight","elementOuterWidth","targetOuterHeight","targetOuterWidth","windowScrollTop","getWindowScrollTop","windowScrollLeft","getWindowScrollLeft","Math","max","parents","arguments","getParents","scrollableParents","overflowRegex","overflowCheck","node","styleDeclaration","window","getComputedStyle","getPropertyValue","parent","scrollSelectors","dataset","scrollselectors","g","findSingle","visibility","elementHeight","elementWidth","dimensions","container","borderTopValue","borderTop","parseFloat","paddingTopValue","paddingTop","containerRect","offset","document","body","scrollTop","scroll","clientHeight","itemHeight","getOuterHeight","duration","opacity","last","requestAnimationFrame","tick","ms","gap","fading","setInterval","clearInterval","doc","documentElement","pageYOffset","clientTop","pageXOffset","scrollLeft","clientLeft","p","Element","matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","margin","marginLeft","marginRight","paddingLeft","paddingRight","paddingBottom","marginTop","marginBottom","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","win","getElementsByTagName","innerWidth","clientWidth","innerHeight","rect","replacementElement","replaceChild","navigator","userAgent","ua","MSStream","maxTouchPoints","isElement","appendChild","nativeElement","removeChild","HTMLElement","nodeName","calculatedScrollbarWidth","scrollDiv","createElement","scrollbarWidth","calculatedScrollbarHeight","scrollbarHeight","methodName","args","getSelection","empty","removeAllRanges","rangeCount","getRangeAt","getClientRects","selection","browser","matched","resolveUserAgent","version","chrome","webkit","safari","match","exec","Number","isInteger","isFinite","floor","focusableElements","find","visibleFocusableElements","focusableElement","zindex","ConnectedOverlayScrollHandler","listener","getScrollableParents","addEventListener","removeEventListener","unbindScrollListener","Tooltip","zone","config","escape","_tooltipOptions","tooltipPosition","tooltipEvent","appendTo","tooltipZIndex","positionTop","positionLeft","_disabled","val","deactivate","runOutsideAngular","getOption","mouseEnterListener","onMouseEnter","bind","mouseLeaveListener","onMouseLeave","clickListener","onClick","focusListener","onFocus","blurListener","onBlur","simpleChange","setOption","currentValue","positionStyle","tooltipStyleClass","showDelay","hideDelay","life","disabled","tooltipLabel","updateText","align","show","hide","tooltipOptions","showTimeout","activate","clearHideTimeout","hideTimeout","clearShowTimeout","tooltipArrow","tooltipText","position","create","bindDocumentResizeListener","bindScrollListener","innerHTML","createTextNode","alignTop","isOutOfBounds","alignBottom","alignRight","alignLeft","preAlign","hostOffset","getHostOffset","option","defaultClassName","targetTop","targetLeft","resizeListener","onWindowResize","scrollHandler","unbindDocumentResizeListener","parentElement","clearTimeouts","clearTimeout","unbindEvents","destroy","i1","TooltipModule","Ripple","mouseDownListener","onMouseDown","ink","getInk","x","pageX","pageY","currentTarget","animationListener","onAnimationEnd","RippleModule","onEditableInputClick","onEditableInputChange","onEditableInputFocus","onInputBlur","onKeydown","onFilterInputChange","onItemClick","scrollToSelectedVirtualScrollElement","onOverlayClick","onOverlayAnimationStart","onOverlayAnimationEnd","DROPDOWN_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","Dropdown","multi","DropdownItem","EventEmitter","originalEvent","ɵcmp","directives","i2","encapsulation","renderer","cd","filterService","overlayService","scrollHeight","resetFilterOnHide","dropdownIcon","optionGroupChildren","autoDisplayFirst","autoZIndex","showTransitionOptions","hideTransitionOptions","tooltipPositionStyle","autofocusFilter","onChange","onFilter","onShow","onHide","onClear","onModelChange","onModelTouched","viewPortOffsetTop","id","UniqueComponentId","focused","overlayVisible","destroyed","detectChanges","templates","getType","itemTemplate","selectedItemTemplate","headerTemplate","footerTemplate","emptyFilterTemplate","emptyTemplate","groupTemplate","optionsToDisplay","updateSelectedOption","labelId","listId","_options","optionsChanged","_filterValue","activateFilter","editable","updateEditableLabel","selectedOption","getOptionLabel","getTranslation","editableInputViewChild","optionLabel","label","optionValue","optionDisabled","optionGroup","optionGroupLabel","items","isOptionDisabled","selectItem","accessibleViewChild","focus","getOptionValue","virtualScroll","viewPort","measureScrollOffset","updateVirtualScrollSelectedIndex","alignOverlay","selectedOptionUpdated","itemsWrapper","range","getRenderedRange","start","virtualScrollSelectedIndex","end","scrollToIndex","resetFilter","markForCheck","filterViewChild","findOption","placeholder","readonly","isInputClick","isSameNode","bindDocumentClickListener","preventDocumentDefault","toState","appendOverlay","selectedListItem","scrollIntoView","block","inline","preventModelTouched","onOverlayHide","virtualAutoScrolled","scrollToOffset","resetOffset","findOptionIndex","containerViewChild","prevEnabledOption","nextEnabledOption","which","altKey","group","selectedItemIndex","findOptionGroupIndex","nextItemIndex","itemIndex","getOptionGroupChildren","groupIndex","findNextEnabledOption","preventDefault","prevItemIndex","prevGroup","findPrevEnabledOption","metaKey","searchTimeout","newOption","char","previousSearchChar","currentSearchChar","searchValue","searchIndex","searchOptionWithinGroup","searchOption","searchOptionInRange","opt","j","opts","dataKey","inGroup","inputValue","searchFields","filterBy","filteredGroups","optgroup","filteredSubOptions","applyFocus","documentClickListener","listen","ownerDocument","isOutsideClicked","unbindDocumentClickListener","documentResizeListener","restoreOverlayAppend","i3","Qt","Gt","jt","CdkVirtualScrollViewport","$t","decls","i4","i5","trigger","transition","transform","animate","changeDetection","DropdownModule","ScrollingModule","InputText","ngModel","updateFilledState","filled","model","InputTextModule","ButtonDirective","iconPos","loadingIcon","_loading","_initialStyleClass","getStyleClass","icon","loading","createIconEl","labelElement","setAttribute","initialized","styleClass","iconElement","iconPosClass","iconClass","getIconClass","labelEl","insertBefore","_icon","_label","textContent","setIconClass","setStyleClass","removeIconElement","ButtonModule","onUpButtonMouseDown","onUpButtonMouseUp","onUpButtonMouseLeave","onUpButtonKeyDown","onUpButtonKeyUp","onDownButtonMouseDown","onDownButtonMouseUp","onDownButtonMouseLeave","onDownButtonKeyDown","onDownButtonKeyUp","INPUTNUMBER_VALUE_ACCESSOR","InputNumber","showButtons","format","buttonLayout","incrementButtonIcon","decrementButtonIcon","step","allowEmpty","mode","useGrouping","onInput","onKeyDown","groupChar","prefixChar","suffixChar","timer","clearTimer","some","updateConstructParser","constructParser","localeMatcher","currency","currencyDisplay","minimumFractionDigits","minFractionDigits","maximumFractionDigits","maxFractionDigits","numberFormat","Intl","NumberFormat","locale","getOptions","numerals","W","reverse","Map","map","_numeral","_group","getGroupingExpression","_minusSign","getMinusSignExpression","_currency","getCurrencyExpression","_decimal","getDecimalExpression","_suffix","getSuffixExpression","_prefix","getPrefixExpression","_index","formatter","charAt","prefix","escapeRegExp","suffix","formattedValue","filteredText","parsedValue","isNaN","interval","dir","repeat","spin","parseValue","input","newValue","validateValue","maxlength","formatValue","updateInput","updateModel","handleOnInput","keyCode","isSpecialChar","lastValue","shiftKey","selectionStart","selectionEnd","newValueStr","isNumeralChar","deleteChar","getDecimalCharIndexes","decimalCharIndex","decimalCharIndexWithoutPrefix","decimalLength","getDecimalLength","lastIndex","setSelectionRange","insertedText","isDecimalMode","updateValue","deleteRange","m","S","code","fromCharCode","isDecimalSign","isMinusSign","insert","clipboardData","getData","filteredData","min","minusCharIndex","suffixCharIndex","currencyCharIndex","sign","minusCharIndexOnText","allowMinusSign","getCharIndexes","insertText","resolvedOptions","operation","charIndex","valueLength","prefixLength","initCursor","resetRegex","valueStr","insertedValueStr","isValueChanged","currentLength","concatValues","newLength","startValue","startExpr","sRegex","tExpr","tRegex","prevChar","nextChar","diff","isGroupChar","val1","val2","valueSplit","Vi","InputNumberModule","PaginatorModule","FormsModule","SELECTBUTTON_VALUE_ACCESSOR","SelectButton","tabindex","onOptionClick","multiple","isSelected","removeOption","selected","TemplateRef","SelectButtonModule","TRISTATECHECKBOX_VALUE_ACCESSOR","TriStateCheckbox","checkboxTrueIcon","checkboxFalseIcon","toggle","TriStateCheckboxModule","onButtonClick","onInputFocus","onInputKeydown","onInputClick","onUserInput","onContainerButtonKeydown","onPrevButtonClick","switchToMonthView","switchToYearView","$implicit","onDateSelect","onDateCellKeydown","onNextButtonClick","onMonthSelect","onMonthCellKeydown","onYearSelect","onYearCellKeydown","incrementSecond","onTimePickerElementMouseDown","onTimePickerElementMouseUp","onTimePickerElementMouseLeave","decrementSecond","toggleAMPM","incrementHour","decrementHour","incrementMinute","decrementMinute","onTodayButtonClick","onClearButtonClick","onOverlayAnimationDone","CALENDAR_VALUE_ACCESSOR","Calendar","multipleSeparator","rangeSeparator","showOtherMonths","shortYearCutoff","hourFormat","stepHour","stepMinute","stepSecond","showSeconds","showOnFocus","showWeek","dataType","selectionMode","todayButtonStyleClass","clearButtonStyleClass","keepInvalid","hideOnDateTimeSelect","timeSeparator","focusTrap","onClose","onSelect","onTodayClick","onClearClick","onMonthChange","onYearChange","onClickOutside","inputFieldValue","navigationState","_numberOfMonths","_view","convertTo24Hour","hours","pm","content","contentViewChild","isMonthNavigate","Promise","resolve","then","updateFocus","initFocusableCell","view","currentView","_defaultDate","defaultDate","currentMonth","getMonth","currentYear","getFullYear","initTime","createMonths","_minDate","_maxDate","_disabledDates","disabledDates","_disabledDays","disabledDays","_yearRange","yearRange","years","yearStart","yearEnd","populateYearOptions","_showTime","showTime","currentHour","updateInputfield","_locale","newLocale","warn","_responsiveOptions","responsiveOptions","destroyResponsiveStyleElement","createResponsiveStyle","numberOfMonths","_firstDayOfWeek","createWeekDays","attributeSelector","ticksTo1970","translationSubscription","dateTemplate","decadeTemplate","disabledDateTemplate","yearOptions","weekDays","dayIndex","getFirstDateOfWeek","dayLabels","monthPickerValues","yearPickerValues","base","month","year","months","createMonth","checkDate","setDate","getDate","getDay","time","setMonth","round","dates","firstDay","getFirstDayOfMonthIndex","daysLength","getDaysCountInMonth","prevMonthDaysLength","getDaysCountInPrevMonth","dayNo","weekNumbers","monthRows","ceil","week","prev","getPreviousMonthAndYear","day","otherMonth","isToday","selectable","isSelectable","remainingDaysLength","getNextMonthAndYear","getWeekNumber","getHours","currentMinute","getMinutes","currentSecond","getSeconds","setCurrentHourPM","timeOnly","decrementYear","decrementDecade","incrementYear","incrementDecade","yearNavigator","difference","dateMeta","isMultipleSelection","isDateEquals","shouldSelectDate","selectDate","isSingleSelection","hideOverlay","mask","disableModality","maxDateCount","formatDateTime","isRangeSelection","endDate","inputfieldViewChild","isValidDate","formatTime","formatDate","getDateFormat","setHours","setMinutes","setSeconds","minDate","maxDate","startDate","stringArrValue","setFullYear","getSundayIndex","daylightSavingAdjust","isDateBetween","isComparable","validMin","validMax","validDate","validDay","selectOtherMonths","isDateDisabled","isDayDisabled","disabledDate","weekdayNumber","showOverlay","inputfield","backward","button","navBackward","navForward","trapFocus","isKeydown","tabIndex","cellContent","cell","cellIndex","nextRow","nextElementSibling","prevRow","previousElementSibling","focusCell","prevCell","navigateToMonth","nextCell","cells","selectedCell","todayCell","preventFocus","activeElement","focusedIndex","hour","minute","second","convertedHour","valueDateString","newHour","newPM","validateTime","clearTimePickerTimer","updateTime","timePickerTimer","newMinute","newSecond","parseValueFromString","isValidSelection","updateUI","err","isValid","every","parseDateTime","tokens","parts","populateTime","ampm","pop","timeString","parseDate","parseTime","propValue","touchUI","enableModality","maskClickListener","animationEndListener","destroyMask","hasBlockerMasks","bodyChildren","unbindAnimationEndListener","unbindMaskClickListener","_a","iFormat","lookAhead","formatNumber","formatName","shortNames","longNames","output","literal","minutes","seconds","dim","extra","iValue","doy","getNumber","isDoubled","size","digits","substring","getName","substr","checkLiteral","responsiveStyleElement","breakpoint","numMonths","o1","o2","localeCompare","run","isNavIconClicked","unsubscribe","In","Dn","Mn","ngContentSelectors","va","state","CalendarModule","TableModule","SubstanceNamesModule","w","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","MatFormFieldModule","MatSelectModule","ReactiveFormsModule","ReferencesManagerModule","MatIconModule","MatDialogModule","MatSortModule","MatTooltipModule","MatRadioModule"],"sources":["./src/app/core/substance-details/substance-names/substance-names.component.html","./src/app/core/substance-details/substance-names/substance-names.component.ts","./node_modules/primeng/fesm2015/primeng-utils.mjs","./node_modules/primeng/fesm2015/primeng-api.mjs","./node_modules/primeng/fesm2015/primeng-dom.mjs","./node_modules/primeng/fesm2015/primeng-tooltip.mjs","./node_modules/primeng/fesm2015/primeng-ripple.mjs","./node_modules/primeng/fesm2015/primeng-dropdown.mjs","./node_modules/primeng/fesm2015/primeng-inputtext.mjs","./node_modules/primeng/fesm2015/primeng-button.mjs","./node_modules/primeng/fesm2015/primeng-inputnumber.mjs","./node_modules/primeng/fesm2015/primeng-paginator.mjs","./node_modules/primeng/fesm2015/primeng-selectbutton.mjs","./node_modules/primeng/fesm2015/primeng-tristatecheckbox.mjs","./node_modules/primeng/fesm2015/primeng-calendar.mjs","./node_modules/primeng/fesm2015/primeng-table.mjs","./src/app/core/substance-details/substance-names/substance-names.module.ts"],"sourcesContent":["
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    Name View:\r\n \r\n Name (UTF-8)\r\n Std. Name (ASCII)\r\n Both\r\n \r\n
    \r\n \r\n \r\n {{showHideFilterText}}\r\n
    \r\n\r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
    Name\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n Std. Name\r\n {{name.stdName}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n Type\r\n {{typeVocabulary[name.type] && typeVocabulary[name.type].display}} Language\r\n {{getLanguages(name)}} \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    {{name.name}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    {{name.stdName}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n \r\n \r\n \r\n {{typeFilter.value ? typeFilter.value : ''}}\r\n \r\n Select Type Filter\r\n {{type.display}}\r\n \r\n \r\n
    \r\n
    {{typeVocabulary[name.type] && typeVocabulary[name.type].display}} \r\n
    \r\n \r\n \r\n \r\n {{langFilter.value ? langFilter.value : ''}}\r\n \r\n Select Language Filter\r\n {{lang.display}}\r\n \r\n \r\n
    \r\n
    {{getLanguages(name)}} \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    Details \r\n \r\n \r\n

    Details

    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    0\">\r\n
    \r\n Naming organizations: \r\n
    \r\n
    \r\n {{org.nameOrg}}{{!last? ', ':''}} \r\n
    \r\n
    \r\n
    0\">\r\n
    \r\n Domains:\r\n
    \r\n
    \r\n {{domain}}{{!last? ', ':''}}\r\n
    \r\n
    \r\n
    0\">\r\n
    \r\n Jurisdiction:\r\n
    \r\n
    \r\n {{domain}}{{!last? ', ':''}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    References \r\n \r\n\r\n \r\n

    References

    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n","import {Component, OnInit, AfterViewInit} from '@angular/core';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport {SubstanceDetail, SubstanceName, TableFilterDDModel} from '../../substance/substance.model';\r\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\r\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\nimport {Sort} from '@angular/material/sort';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport {UtilsService} from '@gsrs-core/utils';\r\nimport { FormControl } from '@angular/forms';\r\nimport { throws } from 'assert';\r\nimport { I } from '@angular/cdk/keycodes';\r\n\r\n@Component({\r\n selector: 'app-substance-names',\r\n templateUrl: './substance-names.component.html',\r\n styleUrls: ['./substance-names.component.scss']\r\n})\r\nexport class SubstanceNamesComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n names: Array;\r\n displayedColumns: string[] = ['name', 'type', 'language', 'details', 'references'];\r\n displayedFilterColumns: string[] = ['nameFilter', 'typeFilter', 'languageFilter', 'emptyFilter', 'resetFilter'];\r\n languageVocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\r\n typeVocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\r\n substanceUpdated = new Subject();\r\n private overlayContainer: HTMLElement;\r\n hideOrgs = true;\r\n pageSize = 10;\r\n uniqueVals: Array;\r\n filterSelectObj = [];\r\n filterBackup: Array;\r\n typeFilterOn = 'false';\r\n nameFilter = new FormControl();\r\n stdNameFilter = new FormControl();\r\n typeFilter = new FormControl();\r\n langFilter = new FormControl();\r\n langFilterOptions: Array = [];\r\n typeFilterOptions: Array = [];\r\n nameType = 'name';\r\n hideFilters = true;\r\n showHideFilterText = 'Show Filter';\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n public gaService: GoogleAnalyticsService,\r\n private cvService: ControlledVocabularyService,\r\n private overlayContainerService: OverlayContainer,\r\n private utilsService: UtilsService\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.filterSelectObj = [\r\n {\r\n name: 'Name Type',\r\n columnProp: 'type',\r\n options: []\r\n }\r\n ];\r\n\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.names != null) {\r\n this.names = this.substance.names;\r\n this.filtered = this.substance.names;\r\n this.countUpdate.emit(this.names.length);\r\n this.searchControl.valueChanges.subscribe(value => {\r\n if (this.typeFilterOn === 'false') {\r\n this.filterList(value, this.names, this.analyticsEventCategory);\r\n\r\n } else if (this.typeFilterOn === 'true') {\r\n const tempFilter = JSON.parse(JSON.stringify(this.filtered));\r\n this.filterList(value, this.filterBackup, this.analyticsEventCategory);\r\n }\r\n }, error => {\r\n console.log(error);\r\n });\r\n this.getVocabularies();\r\n // move display name to top\r\n this.filtered = this.names.slice().sort((a, b) => {\r\n let returned = -1;\r\n if (a.displayName) {\r\n returned = -1;\r\n } else if (b.displayName) {\r\n returned = 1;\r\n } else if (b.preferred && !a.preferred) {\r\n returned = 1;\r\n } else if (!b.preferred && a.preferred) {\r\n returned = -1;\r\n }else if (a.name.toUpperCase() > b.name.toUpperCase()) {\r\n returned = 1;\r\n }\r\n return returned;\r\n });\r\n }\r\n\r\n this.pageChange();\r\n\r\n this.filterSelectObj.filter((o) => {\r\n o.options = this.getFilterObject(this.names, o.columnProp);\r\n });\r\n });\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n this.nameFilter.valueChanges.subscribe((nameFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.stdNameFilter.valueChanges.subscribe((stdNameFilterValue) => {\r\n this.filterTable('std');\r\n });\r\n this.typeFilter.valueChanges.subscribe((typeFilterValue) => {\r\n this.filterTable();\r\n });\r\n this.langFilter.valueChanges.subscribe((langFilterValue) => {\r\n this.filterTable();\r\n });\r\n }\r\n\r\n toggleFilter() {\r\n this.hideFilters = !this.hideFilters;\r\n if(this.hideFilters) {\r\n this.showHideFilterText = 'Show Filter';\r\n } else {\r\n this.showHideFilterText = 'Hide Filter';\r\n }\r\n }\r\n\r\n updateType(event) {\r\n this.nameType = event.value;\r\n if(event.value === 'name') {\r\n this.displayedColumns = ['name', 'type', 'language', 'details', 'references'];\r\n this.displayedFilterColumns = ['nameFilter', 'typeFilter', 'languageFilter', 'emptyFilter', 'resetFilter'];\r\n } else if (event.value === 'ascii') {\r\n this.displayedColumns = ['stdName', 'type', 'language', 'details', 'references'];\r\n this.displayedFilterColumns = ['stdNameFilter', 'typeFilter', 'languageFilter', 'emptyFilter', 'resetFilter'];\r\n } else {\r\n this.displayedColumns = ['name', 'stdName', 'type', 'language', 'details', 'references'];\r\n this.displayedFilterColumns = ['nameFilter', 'stdNameFilter', 'typeFilter', 'languageFilter', 'resetFilter'];\r\n }\r\n}\r\n\r\n filterTable(type?:string) {\r\n const nFilter = this.nameFilter.value === null ? '' : this.nameFilter.value;\r\n const snFilter = this.stdNameFilter.value === null ? '' : this.stdNameFilter.value;\r\n\r\n const lFilter = this.langFilter.value === null ? '' : this.langFilter.value;\r\n const tFilter = this.typeFilter.value === null ? '' : this.typeFilter.value;\r\n const lFilterCode = this.getLangFilterValue(lFilter) === undefined ? '' : this.getLangFilterValue(lFilter).value;\r\n const tFilterCode = this.getTypeFilterValue(tFilter) === undefined ? '' : this.getTypeFilterValue(tFilter).value;\r\n this.filtered = [];\r\n if(type && type === 'std') {\r\n for(let n of this.names) {\r\n let stdNameStr = n.stdName === undefined ? '' : n.stdName;\r\n if((stdNameStr.toLowerCase().includes(snFilter.toLowerCase())) &&\r\n (this.isIncluded(n, tFilterCode, 'type')) &&\r\n (this.isIncluded(n, lFilterCode, 'lang'))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n } else {\r\n for(let n of this.names) {\r\n if((n.name.toLowerCase().includes(nFilter.toLowerCase())) &&\r\n (this.isIncluded(n, tFilterCode, 'type')) &&\r\n (this.isIncluded(n, lFilterCode, 'lang'))) {\r\n this.filtered.push(n);\r\n }\r\n }\r\n }\r\n \r\n this.pageChange();\r\n }\r\n\r\n isIncluded(name: SubstanceName, value: string, field: string) {\r\n if(field === 'type') {\r\n if(value.length > 0) {\r\n if(name.type.includes(value)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n } else if(field === 'lang') {\r\n if(value.length > 0) {\r\n if(name.languages.includes(value)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n getLangFilterValue(value) {\r\n for(let l of this.langFilterOptions) {\r\n if(l.display === value) {\r\n return l;\r\n }\r\n }\r\n }\r\n\r\n getLangFilterOptions() {\r\n for(let n of this.names) {\r\n let nLangs = n.languages;\r\n for(let l of nLangs) {\r\n let oneLang = l;\r\n let oneLangDisplay = this.languageVocabulary[oneLang] && this.languageVocabulary[oneLang].display ? this.languageVocabulary[oneLang].display : oneLang;\r\n let value: TableFilterDDModel = {\r\n value: oneLang,\r\n display: oneLangDisplay\r\n }\r\n if (this.langFilterOptions.filter(e => e.value === oneLang).length > 0) {\r\n } else {\r\n this.langFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n }\r\n\r\n getTypeFilterValue(value) {\r\n for(let l of this.typeFilterOptions) {\r\n if(l.display === value) {\r\n return l;\r\n }\r\n }\r\n }\r\n\r\n getTypeFilterOptions() {\r\n for(let n of this.names) {\r\n let oneType = n.type;\r\n let oneTypeDisplay = this.typeVocabulary[oneType] && this.typeVocabulary[oneType].display ? this.typeVocabulary[oneType].display : oneType;\r\n let value: TableFilterDDModel = {\r\n value: oneType,\r\n display: oneTypeDisplay\r\n }\r\n if (this.typeFilterOptions.filter(e => e.value === oneType).length > 0) {\r\n } else {\r\n this.typeFilterOptions.push(value);\r\n }\r\n }\r\n }\r\n\r\n filterChange(filter, event) {\r\n this.typeFilterOn = 'false';\r\n const tempFiltered = [];\r\n this.filterBackup = [];\r\n this.names.forEach(item => {\r\n const itemString = JSON.stringify(item[filter.columnProp]).toLowerCase();\r\n if (itemString.indexOf(event.target.value.toLowerCase()) > -1) {\r\n this.filterBackup.push(item);\r\n }\r\n });\r\n setTimeout(() => {\r\n \r\n this.names.forEach(item => {\r\n const itemString = JSON.stringify(item[filter.columnProp]).toLowerCase();\r\n if (itemString.indexOf(event.target.value.toLowerCase()) > -1) {\r\n tempFiltered.push(item);\r\n }\r\n });\r\n this.filtered = tempFiltered;\r\n this.typeFilterOn = 'true';\r\n this.page = 0;\r\n this.pageChange();\r\n }, 50);\r\n }\r\n\r\n setDisplay(value, column) {\r\n if (column === 'type') {\r\n return (this.typeVocabulary[value] && this.typeVocabulary[value].display ? this.typeVocabulary[value].display : value);\r\n } else if (column === 'language') {\r\n return ( this.languageVocabulary[value] && this.languageVocabulary[value].display ? this.typeVocabulary[value].display : value);\r\n } else {\r\n return value;\r\n }\r\n }\r\n\r\n getFilterObject(fullObj, key) {\r\n const uniqChk = [];\r\n if (key === 'type') {\r\n\r\n }\r\n fullObj.filter((obj) => {\r\n if (!uniqChk.includes(obj[key])) {\r\n uniqChk.push(obj[key]);\r\n }\r\n return obj;\r\n });\r\n return uniqChk;\r\n }\r\n\r\n sortData(sort: Sort) {\r\n const data = this.names.slice();\r\n if (!sort.active || sort.direction === '') {\r\n this.filtered = data;\r\n this.pageChange();\r\n return;\r\n }\r\n this.filtered = data.sort((a, b) => {\r\n const isAsc = sort.direction === 'asc';\r\n switch (sort.active) {\r\n case 'name': return this.utilsService.compare(a.name ? a.name.toUpperCase() : '', b.name ? b.name.toUpperCase() : '', isAsc);\r\n case 'type': return this.utilsService.compare(a.type ? a.type : '', b.type ? b.type : '', isAsc);\r\n case 'language': return this.utilsService.compare(this.getLanguages(a), this.getLanguages(b), isAsc);\r\n default: return 0;\r\n }\r\n });\r\n this.pageChange();\r\n }\r\n\r\n resetFilters() {\r\n this.filterSelectObj.forEach((value, key) => {\r\n value.modelValue = undefined;\r\n });\r\n this.typeFilterOn = 'false';\r\n this.filtered = this.names;\r\n this.pageChange();\r\n this.searchControl.setValue('');\r\n this.nameFilter.setValue('');\r\n this.stdNameFilter.setValue('');\r\n this.langFilter.setValue('');\r\n this.typeFilter.setValue('');\r\n }\r\n\r\n\r\n getVocabularies(): void {\r\n this.cvService.getDomainVocabulary('LANGUAGE', 'NAME_TYPE').subscribe(response => {\r\n this.languageVocabulary = response['LANGUAGE'] && response['LANGUAGE'].dictionary;\r\n this.typeVocabulary = response['NAME_TYPE'] && response['NAME_TYPE'].dictionary;\r\n this.getLangFilterOptions();\r\n this.getTypeFilterOptions();\r\n });\r\n }\r\n\r\n getLanguages(name: SubstanceName): string {\r\n if (this.languageVocabulary != null && name.languages && name.languages.length) {\r\n const languagesArray = [];\r\n name.languages.forEach(language => {\r\n if (this.languageVocabulary[language] != null) {\r\n languagesArray.push(this.languageVocabulary[language].display);\r\n }\r\n });\r\n return languagesArray.join(', ');\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n this.gaService.sendEvent(this.analyticsEventCategory, 'button', 'references view');\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n minWidth: '40%',\r\n maxWidth: '90%'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n isButtonDisabled(name) {\r\n if((!name.nameOrgs || name.nameOrgs.length == 0) && (!name.domains || name.domains.length == 0) &&\r\n (!name.nameJurisdiction || name.nameJurisdiction.length == 0 )) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n}\r\n\r\n","class ObjectUtils {\n static equals(obj1, obj2, field) {\n if (field)\n return (this.resolveFieldData(obj1, field) === this.resolveFieldData(obj2, field));\n else\n return this.equalsByValue(obj1, obj2);\n }\n static equalsByValue(obj1, obj2) {\n if (obj1 === obj2)\n return true;\n if (obj1 && obj2 && typeof obj1 == 'object' && typeof obj2 == 'object') {\n var arrA = Array.isArray(obj1), arrB = Array.isArray(obj2), i, length, key;\n if (arrA && arrB) {\n length = obj1.length;\n if (length != obj2.length)\n return false;\n for (i = length; i-- !== 0;)\n if (!this.equalsByValue(obj1[i], obj2[i]))\n return false;\n return true;\n }\n if (arrA != arrB)\n return false;\n var dateA = obj1 instanceof Date, dateB = obj2 instanceof Date;\n if (dateA != dateB)\n return false;\n if (dateA && dateB)\n return obj1.getTime() == obj2.getTime();\n var regexpA = obj1 instanceof RegExp, regexpB = obj2 instanceof RegExp;\n if (regexpA != regexpB)\n return false;\n if (regexpA && regexpB)\n return obj1.toString() == obj2.toString();\n var keys = Object.keys(obj1);\n length = keys.length;\n if (length !== Object.keys(obj2).length)\n return false;\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(obj2, keys[i]))\n return false;\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (!this.equalsByValue(obj1[key], obj2[key]))\n return false;\n }\n return true;\n }\n return obj1 !== obj1 && obj2 !== obj2;\n }\n static resolveFieldData(data, field) {\n if (data && field) {\n if (this.isFunction(field)) {\n return field(data);\n }\n else if (field.indexOf('.') == -1) {\n return data[field];\n }\n else {\n let fields = field.split('.');\n let value = data;\n for (let i = 0, len = fields.length; i < len; ++i) {\n if (value == null) {\n return null;\n }\n value = value[fields[i]];\n }\n return value;\n }\n }\n else {\n return null;\n }\n }\n static isFunction(obj) {\n return !!(obj && obj.constructor && obj.call && obj.apply);\n }\n static reorderArray(value, from, to) {\n let target;\n if (value && from !== to) {\n if (to >= value.length) {\n to %= value.length;\n from %= value.length;\n }\n value.splice(to, 0, value.splice(from, 1)[0]);\n }\n }\n static insertIntoOrderedArray(item, index, arr, sourceArr) {\n if (arr.length > 0) {\n let injected = false;\n for (let i = 0; i < arr.length; i++) {\n let currentItemIndex = this.findIndexInList(arr[i], sourceArr);\n if (currentItemIndex > index) {\n arr.splice(i, 0, item);\n injected = true;\n break;\n }\n }\n if (!injected) {\n arr.push(item);\n }\n }\n else {\n arr.push(item);\n }\n }\n static findIndexInList(item, list) {\n let index = -1;\n if (list) {\n for (let i = 0; i < list.length; i++) {\n if (list[i] == item) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n static contains(value, list) {\n if (value != null && list && list.length) {\n for (let val of list) {\n if (this.equals(value, val))\n return true;\n }\n }\n return false;\n }\n static removeAccents(str) {\n if (str && str.search(/[\\xC0-\\xFF]/g) > -1) {\n str = str\n .replace(/[\\xC0-\\xC5]/g, \"A\")\n .replace(/[\\xC6]/g, \"AE\")\n .replace(/[\\xC7]/g, \"C\")\n .replace(/[\\xC8-\\xCB]/g, \"E\")\n .replace(/[\\xCC-\\xCF]/g, \"I\")\n .replace(/[\\xD0]/g, \"D\")\n .replace(/[\\xD1]/g, \"N\")\n .replace(/[\\xD2-\\xD6\\xD8]/g, \"O\")\n .replace(/[\\xD9-\\xDC]/g, \"U\")\n .replace(/[\\xDD]/g, \"Y\")\n .replace(/[\\xDE]/g, \"P\")\n .replace(/[\\xE0-\\xE5]/g, \"a\")\n .replace(/[\\xE6]/g, \"ae\")\n .replace(/[\\xE7]/g, \"c\")\n .replace(/[\\xE8-\\xEB]/g, \"e\")\n .replace(/[\\xEC-\\xEF]/g, \"i\")\n .replace(/[\\xF1]/g, \"n\")\n .replace(/[\\xF2-\\xF6\\xF8]/g, \"o\")\n .replace(/[\\xF9-\\xFC]/g, \"u\")\n .replace(/[\\xFE]/g, \"p\")\n .replace(/[\\xFD\\xFF]/g, \"y\");\n }\n return str;\n }\n static isEmpty(value) {\n return (value === null || value === undefined || value === '' ||\n (Array.isArray(value) && value.length === 0) ||\n (!(value instanceof Date) && typeof value === 'object' && Object.keys(value).length === 0));\n }\n static isNotEmpty(value) {\n return !this.isEmpty(value);\n }\n}\n\nvar lastId = 0;\nfunction UniqueComponentId() {\n let prefix = 'pr_id_';\n lastId++;\n return `${prefix}${lastId}`;\n}\n\nfunction ZIndexUtils() {\n let zIndexes = [];\n const generateZIndex = (key, baseZIndex) => {\n let lastZIndex = zIndexes.length > 0 ? zIndexes[zIndexes.length - 1] : { key, value: baseZIndex };\n let newZIndex = lastZIndex.value + (lastZIndex.key === key ? 0 : baseZIndex) + 1;\n zIndexes.push({ key, value: newZIndex });\n return newZIndex;\n };\n const revertZIndex = (zIndex) => {\n zIndexes = zIndexes.filter(obj => obj.value !== zIndex);\n };\n const getCurrentZIndex = () => {\n return zIndexes.length > 0 ? zIndexes[zIndexes.length - 1].value : 0;\n };\n const getZIndex = (el) => {\n return el ? parseInt(el.style.zIndex, 10) || 0 : 0;\n };\n return {\n get: getZIndex,\n set: (key, el, baseZIndex) => {\n if (el) {\n el.style.zIndex = String(generateZIndex(key, baseZIndex));\n }\n },\n clear: (el) => {\n if (el) {\n revertZIndex(getZIndex(el));\n el.style.zIndex = '';\n }\n },\n getCurrent: () => getCurrentZIndex()\n };\n}\nvar zindexutils = ZIndexUtils();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ObjectUtils, UniqueComponentId, zindexutils as ZIndexUtils };\n","import * as i0 from '@angular/core';\nimport { Injectable, Component, Directive, Input, NgModule } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { ObjectUtils } from 'primeng/utils';\nimport { CommonModule } from '@angular/common';\n\nclass FilterMatchMode {\n}\nFilterMatchMode.STARTS_WITH = 'startsWith';\nFilterMatchMode.CONTAINS = 'contains';\nFilterMatchMode.NOT_CONTAINS = 'notContains';\nFilterMatchMode.ENDS_WITH = 'endsWith';\nFilterMatchMode.EQUALS = 'equals';\nFilterMatchMode.NOT_EQUALS = 'notEquals';\nFilterMatchMode.IN = 'in';\nFilterMatchMode.LESS_THAN = 'lt';\nFilterMatchMode.LESS_THAN_OR_EQUAL_TO = 'lte';\nFilterMatchMode.GREATER_THAN = 'gt';\nFilterMatchMode.GREATER_THAN_OR_EQUAL_TO = 'gte';\nFilterMatchMode.BETWEEN = 'between';\nFilterMatchMode.IS = 'is';\nFilterMatchMode.IS_NOT = 'isNot';\nFilterMatchMode.BEFORE = 'before';\nFilterMatchMode.AFTER = 'after';\nFilterMatchMode.DATE_IS = 'dateIs';\nFilterMatchMode.DATE_IS_NOT = 'dateIsNot';\nFilterMatchMode.DATE_BEFORE = 'dateBefore';\nFilterMatchMode.DATE_AFTER = 'dateAfter';\n\nclass PrimeNGConfig {\n constructor() {\n this.ripple = false;\n this.filterMatchModeOptions = {\n text: [\n FilterMatchMode.STARTS_WITH,\n FilterMatchMode.CONTAINS,\n FilterMatchMode.NOT_CONTAINS,\n FilterMatchMode.ENDS_WITH,\n FilterMatchMode.EQUALS,\n FilterMatchMode.NOT_EQUALS\n ],\n numeric: [\n FilterMatchMode.EQUALS,\n FilterMatchMode.NOT_EQUALS,\n FilterMatchMode.LESS_THAN,\n FilterMatchMode.LESS_THAN_OR_EQUAL_TO,\n FilterMatchMode.GREATER_THAN,\n FilterMatchMode.GREATER_THAN_OR_EQUAL_TO\n ],\n date: [\n FilterMatchMode.DATE_IS,\n FilterMatchMode.DATE_IS_NOT,\n FilterMatchMode.DATE_BEFORE,\n FilterMatchMode.DATE_AFTER\n ]\n };\n this.translation = {\n startsWith: 'Starts with',\n contains: 'Contains',\n notContains: 'Not contains',\n endsWith: 'Ends with',\n equals: 'Equals',\n notEquals: 'Not equals',\n noFilter: 'No Filter',\n lt: 'Less than',\n lte: 'Less than or equal to',\n gt: 'Greater than',\n gte: 'Greater than or equal to',\n is: 'Is',\n isNot: 'Is not',\n before: 'Before',\n after: 'After',\n dateIs: 'Date is',\n dateIsNot: 'Date is not',\n dateBefore: 'Date is before',\n dateAfter: 'Date is after',\n clear: 'Clear',\n apply: 'Apply',\n matchAll: 'Match All',\n matchAny: 'Match Any',\n addRule: 'Add Rule',\n removeRule: 'Remove Rule',\n accept: 'Yes',\n reject: 'No',\n choose: 'Choose',\n upload: 'Upload',\n cancel: 'Cancel',\n dayNames: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n dayNamesShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n dayNamesMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n monthNames: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n monthNamesShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n dateFormat: 'mm/dd/yy',\n firstDayOfWeek: 0,\n today: 'Today',\n weekHeader: 'Wk',\n weak: 'Weak',\n medium: 'Medium',\n strong: 'Strong',\n passwordPrompt: 'Enter a password',\n emptyMessage: 'No results found',\n emptyFilterMessage: 'No results found'\n };\n this.zIndex = {\n modal: 1100,\n overlay: 1000,\n menu: 1000,\n tooltip: 1100\n };\n this.translationSource = new Subject();\n this.translationObserver = this.translationSource.asObservable();\n }\n getTranslation(key) {\n return this.translation[key];\n }\n setTranslation(value) {\n this.translation = Object.assign(Object.assign({}, this.translation), value);\n this.translationSource.next(this.translation);\n }\n}\nPrimeNGConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PrimeNGConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nPrimeNGConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PrimeNGConfig, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PrimeNGConfig, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass TranslationKeys {\n}\nTranslationKeys.STARTS_WITH = 'startsWith';\nTranslationKeys.CONTAINS = 'contains';\nTranslationKeys.NOT_CONTAINS = 'notContains';\nTranslationKeys.ENDS_WITH = 'endsWith';\nTranslationKeys.EQUALS = 'equals';\nTranslationKeys.NOT_EQUALS = 'notEquals';\nTranslationKeys.NO_FILTER = 'noFilter';\nTranslationKeys.LT = 'lt';\nTranslationKeys.LTE = 'lte';\nTranslationKeys.GT = 'gt';\nTranslationKeys.GTE = 'gte';\nTranslationKeys.IS = 'is';\nTranslationKeys.IS_NOT = 'isNot';\nTranslationKeys.BEFORE = 'before';\nTranslationKeys.AFTER = 'after';\nTranslationKeys.CLEAR = 'clear';\nTranslationKeys.APPLY = 'apply';\nTranslationKeys.MATCH_ALL = 'matchAll';\nTranslationKeys.MATCH_ANY = 'matchAny';\nTranslationKeys.ADD_RULE = 'addRule';\nTranslationKeys.REMOVE_RULE = 'removeRule';\nTranslationKeys.ACCEPT = 'accept';\nTranslationKeys.REJECT = 'reject';\nTranslationKeys.CHOOSE = 'choose';\nTranslationKeys.UPLOAD = 'upload';\nTranslationKeys.CANCEL = 'cancel';\nTranslationKeys.DAY_NAMES = 'dayNames';\nTranslationKeys.DAY_NAMES_SHORT = 'dayNamesShort';\nTranslationKeys.DAY_NAMES_MIN = 'dayNamesMin';\nTranslationKeys.MONTH_NAMES = 'monthNames';\nTranslationKeys.MONTH_NAMES_SHORT = 'monthNamesShort';\nTranslationKeys.FIRST_DAY_OF_WEEK = 'firstDayOfWeek';\nTranslationKeys.TODAY = 'today';\nTranslationKeys.WEEK_HEADER = 'weekHeader';\nTranslationKeys.WEAK = 'weak';\nTranslationKeys.MEDIUM = 'medium';\nTranslationKeys.STRONG = 'strong';\nTranslationKeys.PASSWORD_PROMPT = 'passwordPrompt';\nTranslationKeys.EMPTY_MESSAGE = 'emptyMessage';\nTranslationKeys.EMPTY_FILTER_MESSAGE = 'emptyFilterMessage';\n\nvar ConfirmEventType;\n(function (ConfirmEventType) {\n ConfirmEventType[ConfirmEventType[\"ACCEPT\"] = 0] = \"ACCEPT\";\n ConfirmEventType[ConfirmEventType[\"REJECT\"] = 1] = \"REJECT\";\n ConfirmEventType[ConfirmEventType[\"CANCEL\"] = 2] = \"CANCEL\";\n})(ConfirmEventType || (ConfirmEventType = {}));\n\nclass ConfirmationService {\n constructor() {\n this.requireConfirmationSource = new Subject();\n this.acceptConfirmationSource = new Subject();\n this.requireConfirmation$ = this.requireConfirmationSource.asObservable();\n this.accept = this.acceptConfirmationSource.asObservable();\n }\n confirm(confirmation) {\n this.requireConfirmationSource.next(confirmation);\n return this;\n }\n close() {\n this.requireConfirmationSource.next(null);\n return this;\n }\n onAccept() {\n this.acceptConfirmationSource.next(null);\n }\n}\nConfirmationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ConfirmationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nConfirmationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ConfirmationService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ConfirmationService, decorators: [{\n type: Injectable\n }] });\n\nclass FilterService {\n constructor() {\n this.filters = {\n startsWith: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || filter.trim() === '') {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.slice(0, filterValue.length) === filterValue;\n },\n contains: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.indexOf(filterValue) !== -1;\n },\n notContains: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.indexOf(filterValue) === -1;\n },\n endsWith: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || filter.trim() === '') {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n let filterValue = ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n let stringValue = ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale);\n return stringValue.indexOf(filterValue, stringValue.length - filterValue.length) !== -1;\n },\n equals: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() === filter.getTime();\n else\n return ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale) == ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n },\n notEquals: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {\n return false;\n }\n if (value === undefined || value === null) {\n return true;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() !== filter.getTime();\n else\n return ObjectUtils.removeAccents(value.toString()).toLocaleLowerCase(filterLocale) != ObjectUtils.removeAccents(filter.toString()).toLocaleLowerCase(filterLocale);\n },\n in: (value, filter) => {\n if (filter === undefined || filter === null || filter.length === 0) {\n return true;\n }\n for (let i = 0; i < filter.length; i++) {\n if (ObjectUtils.equals(value, filter[i])) {\n return true;\n }\n }\n return false;\n },\n between: (value, filter) => {\n if (filter == null || filter[0] == null || filter[1] == null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime)\n return filter[0].getTime() <= value.getTime() && value.getTime() <= filter[1].getTime();\n else\n return filter[0] <= value && value <= filter[1];\n },\n lt: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() < filter.getTime();\n else\n return value < filter;\n },\n lte: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() <= filter.getTime();\n else\n return value <= filter;\n },\n gt: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() > filter.getTime();\n else\n return value > filter;\n },\n gte: (value, filter, filterLocale) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n if (value.getTime && filter.getTime)\n return value.getTime() >= filter.getTime();\n else\n return value >= filter;\n },\n is: (value, filter, filterLocale) => {\n return this.filters.equals(value, filter, filterLocale);\n },\n isNot: (value, filter, filterLocale) => {\n return this.filters.notEquals(value, filter, filterLocale);\n },\n before: (value, filter, filterLocale) => {\n return this.filters.lt(value, filter, filterLocale);\n },\n after: (value, filter, filterLocale) => {\n return this.filters.gt(value, filter, filterLocale);\n },\n dateIs: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.toDateString() === filter.toDateString();\n },\n dateIsNot: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.toDateString() !== filter.toDateString();\n },\n dateBefore: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.getTime() < filter.getTime();\n },\n dateAfter: (value, filter) => {\n if (filter === undefined || filter === null) {\n return true;\n }\n if (value === undefined || value === null) {\n return false;\n }\n return value.getTime() > filter.getTime();\n }\n };\n }\n filter(value, fields, filterValue, filterMatchMode, filterLocale) {\n let filteredItems = [];\n if (value) {\n for (let item of value) {\n for (let field of fields) {\n let fieldValue = ObjectUtils.resolveFieldData(item, field);\n if (this.filters[filterMatchMode](fieldValue, filterValue, filterLocale)) {\n filteredItems.push(item);\n break;\n }\n }\n }\n }\n return filteredItems;\n }\n register(rule, fn) {\n this.filters[rule] = fn;\n }\n}\nFilterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: FilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nFilterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: FilterService, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: FilterService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass ContextMenuService {\n constructor() {\n this.activeItemKeyChange = new Subject();\n this.activeItemKeyChange$ = this.activeItemKeyChange.asObservable();\n }\n changeKey(key) {\n this.activeItemKey = key;\n this.activeItemKeyChange.next(this.activeItemKey);\n }\n reset() {\n this.activeItemKey = null;\n this.activeItemKeyChange.next(this.activeItemKey);\n }\n}\nContextMenuService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ContextMenuService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nContextMenuService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ContextMenuService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ContextMenuService, decorators: [{\n type: Injectable\n }] });\n\nclass MessageService {\n constructor() {\n this.messageSource = new Subject();\n this.clearSource = new Subject();\n this.messageObserver = this.messageSource.asObservable();\n this.clearObserver = this.clearSource.asObservable();\n }\n add(message) {\n if (message) {\n this.messageSource.next(message);\n }\n }\n addAll(messages) {\n if (messages && messages.length) {\n this.messageSource.next(messages);\n }\n }\n clear(key) {\n this.clearSource.next(key || null);\n }\n}\nMessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: MessageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nMessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: MessageService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: MessageService, decorators: [{\n type: Injectable\n }] });\n\nclass OverlayService {\n constructor() {\n this.clickSource = new Subject();\n this.clickObservable = this.clickSource.asObservable();\n }\n add(event) {\n if (event) {\n this.clickSource.next(event);\n }\n }\n}\nOverlayService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: OverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nOverlayService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: OverlayService, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: OverlayService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass PrimeIcons {\n}\nPrimeIcons.ALIGN_CENTER = 'pi pi-align-center';\nPrimeIcons.ALIGN_JUSTIFY = 'pi pi-align-justify';\nPrimeIcons.ALIGN_LEFT = 'pi pi-align-left';\nPrimeIcons.ALIGN_RIGHT = 'pi pi-align-right';\nPrimeIcons.AMAZON = 'pi pi-amazon';\nPrimeIcons.ANDROID = 'pi pi-android';\nPrimeIcons.ANGLE_DOUBLE_DOWN = 'pi pi-angle-double-down';\nPrimeIcons.ANGLE_DOUBLE_LEFT = 'pi pi-angle-double-left';\nPrimeIcons.ANGLE_DOUBLE_RIGHT = 'pi pi-angle-double-right';\nPrimeIcons.ANGLE_DOUBLE_UP = 'pi pi-angle-double-up';\nPrimeIcons.ANGLE_DOWN = 'pi pi-angle-down';\nPrimeIcons.ANGLE_LEFT = 'pi pi-angle-left';\nPrimeIcons.ANGLE_RIGHT = 'pi pi-angle-right';\nPrimeIcons.ANGLE_UP = 'pi pi-angle-up';\nPrimeIcons.APPLE = 'pi pi-apple';\nPrimeIcons.ARROW_CIRCLE_DOWN = 'pi pi-arrow-circle-down';\nPrimeIcons.ARROW_CIRCLE_LEFT = 'pi pi-arrow-circle-left';\nPrimeIcons.ARROW_CIRCLE_RIGHT = 'pi pi-arrow-circle-right';\nPrimeIcons.ARROW_CIRCLE_UP = 'pi pi-arrow-circle-up';\nPrimeIcons.ARROW_DOWN = 'pi pi-arrow-down';\nPrimeIcons.ARROW_DOWN_LEFT = 'pi pi-arrow-down-left';\nPrimeIcons.ARROW_DOWN_RIGHT = 'pi pi-arrow-down-right';\nPrimeIcons.ARROW_LEFT = 'pi pi-arrow-left';\nPrimeIcons.ARROW_RIGHT = 'pi pi-arrow-right';\nPrimeIcons.ARROW_UP = 'pi pi-arrow-up';\nPrimeIcons.ARROW_UP_LEFT = 'pi pi-arrow-up-left';\nPrimeIcons.ARROW_UP_RIGHT = 'pi pi-arrow-up-right';\nPrimeIcons.ARROW_H = 'pi pi-arrow-h';\nPrimeIcons.ARROW_V = 'pi pi-arrow-v';\nPrimeIcons.AT = 'pi pi-at';\nPrimeIcons.BACKWARD = 'pi pi-backward';\nPrimeIcons.BAN = 'pi pi-ban';\nPrimeIcons.BARS = 'pi pi-bars';\nPrimeIcons.BELL = 'pi pi-bell';\nPrimeIcons.BOLT = 'pi pi-bolt';\nPrimeIcons.BOOK = 'pi pi-book';\nPrimeIcons.BOOKMARK = 'pi pi-bookmark';\nPrimeIcons.BOOKMARK_FILL = 'pi pi-bookmark-fill';\nPrimeIcons.BOX = 'pi pi-box';\nPrimeIcons.BRIEFCASE = 'pi pi-briefcase';\nPrimeIcons.BUILDING = 'pi pi-building';\nPrimeIcons.CALENDAR = 'pi pi-calendar';\nPrimeIcons.CALENDAR_MINUS = 'pi pi-calendar-minus';\nPrimeIcons.CALENDAR_PLUS = 'pi pi-calendar-plus';\nPrimeIcons.CALENDAR_TIMES = 'pi pi-calendar-times';\nPrimeIcons.CAMERA = 'pi pi-camera';\nPrimeIcons.CAR = 'pi pi-car';\nPrimeIcons.CARET_DOWN = 'pi pi-caret-down';\nPrimeIcons.CARET_LEFT = 'pi pi-caret-left';\nPrimeIcons.CARET_RIGHT = 'pi pi-caret-right';\nPrimeIcons.CARET_UP = 'pi pi-caret-up';\nPrimeIcons.CHART_BAR = 'pi pi-chart-bar';\nPrimeIcons.CHART_LINE = 'pi pi-chart-line';\nPrimeIcons.CHART_PIE = 'pi pi-chart-pie';\nPrimeIcons.CHECK = 'pi pi-check';\nPrimeIcons.CHECK_CIRCLE = 'pi pi-check-circle';\nPrimeIcons.CHECK_SQUARE = 'pi pi-check-square';\nPrimeIcons.CHEVRON_CIRCLE_DOWN = 'pi pi-chevron-circle-down';\nPrimeIcons.CHEVRON_CIRCLE_LEFT = 'pi pi-chevron-circle-left';\nPrimeIcons.CHEVRON_CIRCLE_RIGHT = 'pi pi-chevron-circle-right';\nPrimeIcons.CHEVRON_CIRCLE_UP = 'pi pi-chevron-circle-up';\nPrimeIcons.CHEVRON_DOWN = 'pi pi-chevron-down';\nPrimeIcons.CHEVRON_LEFT = 'pi pi-chevron-left';\nPrimeIcons.CHEVRON_RIGHT = 'pi pi-chevron-right';\nPrimeIcons.CHEVRON_UP = 'pi pi-chevron-up';\nPrimeIcons.CIRCLE = 'pi pi-circle';\nPrimeIcons.CIRCLE_FILL = 'pi pi-circle-fill';\nPrimeIcons.CLOCK = 'pi pi-clock';\nPrimeIcons.CLONE = 'pi pi-clone';\nPrimeIcons.CLOUD = 'pi pi-cloud';\nPrimeIcons.CLOUD_DOWNLOAD = 'pi pi-cloud-download';\nPrimeIcons.CLOUD_UPLOAD = 'pi pi-cloud-upload';\nPrimeIcons.CODE = 'pi pi-code';\nPrimeIcons.COG = 'pi pi-cog';\nPrimeIcons.COMMENT = 'pi pi-comment';\nPrimeIcons.COMMENTS = 'pi pi-comments';\nPrimeIcons.COMPASS = 'pi pi-compass';\nPrimeIcons.COPY = 'pi pi-copy';\nPrimeIcons.CREDIT_CARD = 'pi pi-credit-card';\nPrimeIcons.DATABASE = 'pi pi-database';\nPrimeIcons.DESKTOP = 'pi pi-desktop';\nPrimeIcons.DIRECTIONS = 'pi pi-directions';\nPrimeIcons.DIRECTIONS_ALT = 'pi pi-directions-alt';\nPrimeIcons.DISCORD = 'pi pi-discord';\nPrimeIcons.DOLLAR = 'pi pi-dollar';\nPrimeIcons.DOWNLOAD = 'pi pi-download';\nPrimeIcons.EJECT = 'pi pi-eject';\nPrimeIcons.ELLIPSIS_H = 'pi pi-ellipsis-h';\nPrimeIcons.ELLIPSIS_V = 'pi pi-ellipsis-v';\nPrimeIcons.ENVELOPE = 'pi pi-envelope';\nPrimeIcons.EURO = 'pi pi-euro';\nPrimeIcons.EXCLAMATION_CIRCLE = 'pi pi-exclamation-circle';\nPrimeIcons.EXCLAMATION_TRIANGLE = 'pi pi-exclamation-triangle';\nPrimeIcons.EXTERNAL_LINK = 'pi pi-external-link';\nPrimeIcons.EYE = 'pi pi-eye';\nPrimeIcons.EYE_SLASH = 'pi pi-eye-slash';\nPrimeIcons.FACEBOOK = 'pi pi-facebook';\nPrimeIcons.FAST_BACKWARD = 'pi pi-fast-backward';\nPrimeIcons.FAST_FORWARD = 'pi pi-fast-forward';\nPrimeIcons.FILE = 'pi pi-file';\nPrimeIcons.FILE_EXCEL = 'pi pi-file-excel';\nPrimeIcons.FILE_PDF = 'pi pi-file-pdf';\nPrimeIcons.FILTER = 'pi pi-filter';\nPrimeIcons.FILTER_FILL = 'pi pi-filter-fill';\nPrimeIcons.FILTER_SLASH = 'pi pi-filter-slash';\nPrimeIcons.FLAG = 'pi pi-flag';\nPrimeIcons.FLAG_FILL = 'pi pi-flag-fill';\nPrimeIcons.FOLDER = 'pi pi-folder';\nPrimeIcons.FOLDER_OPEN = 'pi pi-folder-open';\nPrimeIcons.FORWARD = 'pi pi-forward';\nPrimeIcons.GITHUB = 'pi pi-github';\nPrimeIcons.GLOBE = 'pi pi-globe';\nPrimeIcons.GOOGLE = 'pi pi-google';\nPrimeIcons.HASHTAG = 'pi pi-hashtag';\nPrimeIcons.HEART = 'pi pi-heart';\nPrimeIcons.HEART_FILL = 'pi pi-heart-fill';\nPrimeIcons.HISTORY = 'pi pi-history';\nPrimeIcons.HOME = 'pi pi-home';\nPrimeIcons.ID_CARD = 'pi pi-id-card';\nPrimeIcons.IMAGE = 'pi pi-image';\nPrimeIcons.IMAGES = 'pi pi-images';\nPrimeIcons.INBOX = 'pi pi-inbox';\nPrimeIcons.INFO = 'pi pi-info';\nPrimeIcons.INFO_CIRCLE = 'pi pi-info-circle';\nPrimeIcons.INSTAGRAM = 'pi pi-instagram';\nPrimeIcons.KEY = 'pi pi-key';\nPrimeIcons.LINK = 'pi pi-link';\nPrimeIcons.LINKEDIN = 'pi pi-linkedin';\nPrimeIcons.LIST = 'pi pi-list';\nPrimeIcons.LOCK = 'pi pi-lock';\nPrimeIcons.LOCK_OPEN = 'pi pi-lock-open';\nPrimeIcons.MAP = 'pi pi-map';\nPrimeIcons.MAP_MARKER = 'pi pi-map-marker';\nPrimeIcons.MICROSOFT = 'pi pi-microsoft';\nPrimeIcons.MINUS = 'pi pi-minus';\nPrimeIcons.MINUS_CIRCLE = 'pi pi-minus-circle';\nPrimeIcons.MOBILE = 'pi pi-mobile';\nPrimeIcons.MONEY_BILL = 'pi pi-money-bill';\nPrimeIcons.MOON = 'pi pi-moon';\nPrimeIcons.PALETTE = 'pi pi-palette';\nPrimeIcons.PAPERCLIP = 'pi pi-paperclip';\nPrimeIcons.PAUSE = 'pi pi-pause';\nPrimeIcons.PAYPAL = 'pi pi-paypal';\nPrimeIcons.PENCIL = 'pi pi-pencil';\nPrimeIcons.PERCENTAGE = 'pi pi-percentage';\nPrimeIcons.PHONE = 'pi pi-phone';\nPrimeIcons.PLAY = 'pi pi-play';\nPrimeIcons.PLUS = 'pi pi-plus';\nPrimeIcons.PLUS_CIRCLE = 'pi pi-plus-circle';\nPrimeIcons.POUND = 'pi pi-pound';\nPrimeIcons.POWER_OFF = 'pi pi-power-off';\nPrimeIcons.PRIME = 'pi pi-prime';\nPrimeIcons.PRINT = 'pi pi-print';\nPrimeIcons.QRCODE = 'pi pi-qrcode';\nPrimeIcons.QUESTION = 'pi pi-question';\nPrimeIcons.QUESTION_CIRCLE = 'pi pi-question-circle';\nPrimeIcons.REDDIT = 'pi pi-reddit';\nPrimeIcons.REFRESH = 'pi pi-refresh';\nPrimeIcons.REPLAY = 'pi pi-replay';\nPrimeIcons.REPLY = 'pi pi-reply';\nPrimeIcons.SAVE = 'pi pi-save';\nPrimeIcons.SEARCH = 'pi pi-search';\nPrimeIcons.SEARCH_MINUS = 'pi pi-search-minus';\nPrimeIcons.SEARCH_PLUS = 'pi pi-search-plus';\nPrimeIcons.SEND = 'pi pi-send';\nPrimeIcons.SERVER = 'pi pi-server';\nPrimeIcons.SHARE_ALT = 'pi pi-share-alt';\nPrimeIcons.SHIELD = 'pi pi-shield';\nPrimeIcons.SHOPPING_BAG = 'pi pi-shopping-bag';\nPrimeIcons.SHOPPING_CART = 'pi pi-shopping-cart';\nPrimeIcons.SIGN_IN = 'pi pi-sign-in';\nPrimeIcons.SIGN_OUT = 'pi pi-sign-out';\nPrimeIcons.SITEMAP = 'pi pi-sitemap';\nPrimeIcons.SLACK = 'pi pi-slack';\nPrimeIcons.SLIDERS_H = 'pi pi-sliders-h';\nPrimeIcons.SLIDERS_V = 'pi pi-sliders-v';\nPrimeIcons.SORT = 'pi pi-sort';\nPrimeIcons.SORT_ALPHA_DOWN = 'pi pi-sort-alpha-down';\nPrimeIcons.SORT_ALPHA_ALT_DOWN = 'pi pi-sort-alpha-alt-down';\nPrimeIcons.SORT_ALPHA_UP = 'pi pi-sort-alpha-up';\nPrimeIcons.SORT_ALPHA_ALT_UP = 'pi pi-sort-alpha-alt-up';\nPrimeIcons.SORT_ALT = 'pi pi-sort-alt';\nPrimeIcons.SORT_ALT_SLASH = 'pi pi-sort-slash';\nPrimeIcons.SORT_AMOUNT_DOWN = 'pi pi-sort-amount-down';\nPrimeIcons.SORT_AMOUNT_DOWN_ALT = 'pi pi-sort-amount-down-alt';\nPrimeIcons.SORT_AMOUNT_UP = 'pi pi-sort-amount-up';\nPrimeIcons.SORT_AMOUNT_UP_ALT = 'pi pi-sort-amount-up-alt';\nPrimeIcons.SORT_DOWN = 'pi pi-sort-down';\nPrimeIcons.SORT_NUMERIC_DOWN = 'pi pi-sort-numeric-down';\nPrimeIcons.SORT_NUMERIC_ALT_DOWN = 'pi pi-sort-numeric-alt-down';\nPrimeIcons.SORT_NUMERIC_UP = 'pi pi-sort-numeric-up';\nPrimeIcons.SORT_NUMERIC_ALT_UP = 'pi pi-sort-numeric-alt-up';\nPrimeIcons.SORT_UP = 'pi pi-sort-up';\nPrimeIcons.SPINNER = 'pi pi-spinner';\nPrimeIcons.STAR = 'pi pi-star';\nPrimeIcons.STAR_FILL = 'pi pi-star-fill';\nPrimeIcons.STEP_BACKWARD = 'pi pi-step-backward';\nPrimeIcons.STEP_BACKWARD_ALT = 'pi pi-step-backward-alt';\nPrimeIcons.STEP_FORWARD = 'pi pi-step-forward';\nPrimeIcons.STEP_FORWARD_ALT = 'pi pi-step-forward-alt';\nPrimeIcons.STOP = 'pi pi-stop';\nPrimeIcons.STOP_CIRCLE = 'pi pi-stop-circle';\nPrimeIcons.SUN = 'pi pi-sun';\nPrimeIcons.SYNC = 'pi pi-sync';\nPrimeIcons.TABLE = 'pi pi-table';\nPrimeIcons.TABLET = 'pi pi-tablet';\nPrimeIcons.TAG = 'pi pi-tag';\nPrimeIcons.TAGS = 'pi pi-tags';\nPrimeIcons.TELEGRAM = 'pi pi-telegram';\nPrimeIcons.TH_LARGE = 'pi pi-th-large';\nPrimeIcons.THUMBS_DOWN = 'pi pi-thumbs-down';\nPrimeIcons.THUMBS_UP = 'pi pi-thumbs-up';\nPrimeIcons.TICKET = 'pi pi-ticket';\nPrimeIcons.TIMES = 'pi pi-times';\nPrimeIcons.TIMES_CIRCLE = 'pi pi-times-circle';\nPrimeIcons.TRASH = 'pi pi-trash';\nPrimeIcons.TWITTER = 'pi pi-twitter';\nPrimeIcons.UNDO = 'pi pi-undo';\nPrimeIcons.UNLOCK = 'pi pi-unlock';\nPrimeIcons.UPLOAD = 'pi pi-upload';\nPrimeIcons.USER = 'pi pi-user';\nPrimeIcons.USER_EDIT = 'pi pi-user-edit';\nPrimeIcons.USER_MINUS = 'pi pi-user-minus';\nPrimeIcons.USER_PLUS = 'pi pi-user-plus';\nPrimeIcons.USERS = 'pi pi-users';\nPrimeIcons.VIDEO = 'pi pi-video';\nPrimeIcons.VIMEO = 'pi pi-vimeo';\nPrimeIcons.VOLUME_DOWN = 'pi pi-volume-down';\nPrimeIcons.VOLUME_OFF = 'pi pi-volume-off';\nPrimeIcons.VOLUME_UP = 'pi pi-volume-up';\nPrimeIcons.WALLET = 'pi pi-wallet';\nPrimeIcons.WHATSAPP = 'pi pi-whatsapp';\nPrimeIcons.WIFI = 'pi pi-wifi';\nPrimeIcons.WINDOW_MAXIMIZE = 'pi pi-window-maximize';\nPrimeIcons.WINDOW_MINIMIZE = 'pi pi-window-minimize';\nPrimeIcons.YOUTUBE = 'pi pi-youtube';\n\nclass FilterOperator {\n}\nFilterOperator.AND = 'and';\nFilterOperator.OR = 'or';\n\nclass Header {\n}\nHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Header, deps: [], target: i0.ɵɵFactoryTarget.Component });\nHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Header, selector: \"p-header\", ngImport: i0, template: '', isInline: true });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Header, decorators: [{\n type: Component,\n args: [{\n selector: 'p-header',\n template: ''\n }]\n }] });\nclass Footer {\n}\nFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Footer, deps: [], target: i0.ɵɵFactoryTarget.Component });\nFooter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Footer, selector: \"p-footer\", ngImport: i0, template: '', isInline: true });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Footer, decorators: [{\n type: Component,\n args: [{\n selector: 'p-footer',\n template: ''\n }]\n }] });\nclass PrimeTemplate {\n constructor(template) {\n this.template = template;\n }\n getType() {\n return this.name;\n }\n}\nPrimeTemplate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PrimeTemplate, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });\nPrimeTemplate.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: PrimeTemplate, selector: \"[pTemplate]\", inputs: { type: \"type\", name: [\"pTemplate\", \"name\"] }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PrimeTemplate, decorators: [{\n type: Directive,\n args: [{\n selector: '[pTemplate]',\n host: {}\n }]\n }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { type: [{\n type: Input\n }], name: [{\n type: Input,\n args: ['pTemplate']\n }] } });\nclass SharedModule {\n}\nSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SharedModule, declarations: [Header, Footer, PrimeTemplate], imports: [CommonModule], exports: [Header, Footer, PrimeTemplate] });\nSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SharedModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SharedModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [Header, Footer, PrimeTemplate],\n declarations: [Header, Footer, PrimeTemplate]\n }]\n }] });\n\nclass TreeDragDropService {\n constructor() {\n this.dragStartSource = new Subject();\n this.dragStopSource = new Subject();\n this.dragStart$ = this.dragStartSource.asObservable();\n this.dragStop$ = this.dragStopSource.asObservable();\n }\n startDrag(event) {\n this.dragStartSource.next(event);\n }\n stopDrag(event) {\n this.dragStopSource.next(event);\n }\n}\nTreeDragDropService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TreeDragDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nTreeDragDropService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TreeDragDropService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TreeDragDropService, decorators: [{\n type: Injectable\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ConfirmEventType, ConfirmationService, ContextMenuService, FilterMatchMode, FilterOperator, FilterService, Footer, Header, MessageService, OverlayService, PrimeIcons, PrimeNGConfig, PrimeTemplate, SharedModule, TranslationKeys, TreeDragDropService };\n","/**\n * @dynamic is for runtime initializing DomHandler.browser\n *\n * If delete below comment, we can see this error message:\n * Metadata collected contains an error that will be reported at runtime:\n * Only initialized variables and constants can be referenced\n * because the value of this variable is needed by the template compiler.\n */\n// @dynamic\nclass DomHandler {\n static addClass(element, className) {\n if (element.classList)\n element.classList.add(className);\n else\n element.className += ' ' + className;\n }\n static addMultipleClasses(element, className) {\n if (element.classList) {\n let styles = className.trim().split(' ');\n for (let i = 0; i < styles.length; i++) {\n element.classList.add(styles[i]);\n }\n }\n else {\n let styles = className.split(' ');\n for (let i = 0; i < styles.length; i++) {\n element.className += ' ' + styles[i];\n }\n }\n }\n static removeClass(element, className) {\n if (element.classList)\n element.classList.remove(className);\n else\n element.className = element.className.replace(new RegExp('(^|\\\\b)' + className.split(' ').join('|') + '(\\\\b|$)', 'gi'), ' ');\n }\n static hasClass(element, className) {\n if (element.classList)\n return element.classList.contains(className);\n else\n return new RegExp('(^| )' + className + '( |$)', 'gi').test(element.className);\n }\n static siblings(element) {\n return Array.prototype.filter.call(element.parentNode.children, function (child) {\n return child !== element;\n });\n }\n static find(element, selector) {\n return Array.from(element.querySelectorAll(selector));\n }\n static findSingle(element, selector) {\n if (element) {\n return element.querySelector(selector);\n }\n return null;\n }\n static index(element) {\n let children = element.parentNode.childNodes;\n let num = 0;\n for (var i = 0; i < children.length; i++) {\n if (children[i] == element)\n return num;\n if (children[i].nodeType == 1)\n num++;\n }\n return -1;\n }\n static indexWithinGroup(element, attributeName) {\n let children = element.parentNode ? element.parentNode.childNodes : [];\n let num = 0;\n for (var i = 0; i < children.length; i++) {\n if (children[i] == element)\n return num;\n if (children[i].attributes && children[i].attributes[attributeName] && children[i].nodeType == 1)\n num++;\n }\n return -1;\n }\n static relativePosition(element, target) {\n let elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n const targetHeight = target.offsetHeight;\n const targetOffset = target.getBoundingClientRect();\n const viewport = this.getViewport();\n let top, left;\n if ((targetOffset.top + targetHeight + elementDimensions.height) > viewport.height) {\n top = -1 * (elementDimensions.height);\n element.style.transformOrigin = 'bottom';\n if (targetOffset.top + top < 0) {\n top = -1 * targetOffset.top;\n }\n }\n else {\n top = targetHeight;\n element.style.transformOrigin = 'top';\n }\n if (elementDimensions.width > viewport.width) {\n // element wider then viewport and cannot fit on screen (align at left side of viewport)\n left = targetOffset.left * -1;\n }\n else if ((targetOffset.left + elementDimensions.width) > viewport.width) {\n // element wider then viewport but can be fit on screen (align at right side of viewport)\n left = (targetOffset.left + elementDimensions.width - viewport.width) * -1;\n }\n else {\n // element fits on screen (align with target)\n left = 0;\n }\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n }\n static absolutePosition(element, target) {\n let elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n let elementOuterHeight = elementDimensions.height;\n let elementOuterWidth = elementDimensions.width;\n let targetOuterHeight = target.offsetHeight;\n let targetOuterWidth = target.offsetWidth;\n let targetOffset = target.getBoundingClientRect();\n let windowScrollTop = this.getWindowScrollTop();\n let windowScrollLeft = this.getWindowScrollLeft();\n let viewport = this.getViewport();\n let top, left;\n if (targetOffset.top + targetOuterHeight + elementOuterHeight > viewport.height) {\n top = targetOffset.top + windowScrollTop - elementOuterHeight;\n element.style.transformOrigin = 'bottom';\n if (top < 0) {\n top = windowScrollTop;\n }\n }\n else {\n top = targetOuterHeight + targetOffset.top + windowScrollTop;\n element.style.transformOrigin = 'top';\n }\n if (targetOffset.left + elementOuterWidth > viewport.width)\n left = Math.max(0, targetOffset.left + windowScrollLeft + targetOuterWidth - elementOuterWidth);\n else\n left = targetOffset.left + windowScrollLeft;\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n }\n static getParents(element, parents = []) {\n return element['parentNode'] === null ? parents : this.getParents(element.parentNode, parents.concat([element.parentNode]));\n }\n static getScrollableParents(element) {\n let scrollableParents = [];\n if (element) {\n let parents = this.getParents(element);\n const overflowRegex = /(auto|scroll)/;\n const overflowCheck = (node) => {\n let styleDeclaration = window['getComputedStyle'](node, null);\n return overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowX')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowY'));\n };\n for (let parent of parents) {\n let scrollSelectors = parent.nodeType === 1 && parent.dataset['scrollselectors'];\n if (scrollSelectors) {\n let selectors = scrollSelectors.split(',');\n for (let selector of selectors) {\n let el = this.findSingle(parent, selector);\n if (el && overflowCheck(el)) {\n scrollableParents.push(el);\n }\n }\n }\n if (parent.nodeType !== 9 && overflowCheck(parent)) {\n scrollableParents.push(parent);\n }\n }\n }\n return scrollableParents;\n }\n static getHiddenElementOuterHeight(element) {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementHeight = element.offsetHeight;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n return elementHeight;\n }\n static getHiddenElementOuterWidth(element) {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementWidth = element.offsetWidth;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n return elementWidth;\n }\n static getHiddenElementDimensions(element) {\n let dimensions = {};\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n dimensions.width = element.offsetWidth;\n dimensions.height = element.offsetHeight;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n return dimensions;\n }\n static scrollInView(container, item) {\n let borderTopValue = getComputedStyle(container).getPropertyValue('borderTopWidth');\n let borderTop = borderTopValue ? parseFloat(borderTopValue) : 0;\n let paddingTopValue = getComputedStyle(container).getPropertyValue('paddingTop');\n let paddingTop = paddingTopValue ? parseFloat(paddingTopValue) : 0;\n let containerRect = container.getBoundingClientRect();\n let itemRect = item.getBoundingClientRect();\n let offset = (itemRect.top + document.body.scrollTop) - (containerRect.top + document.body.scrollTop) - borderTop - paddingTop;\n let scroll = container.scrollTop;\n let elementHeight = container.clientHeight;\n let itemHeight = this.getOuterHeight(item);\n if (offset < 0) {\n container.scrollTop = scroll + offset;\n }\n else if ((offset + itemHeight) > elementHeight) {\n container.scrollTop = scroll + offset - elementHeight + itemHeight;\n }\n }\n static fadeIn(element, duration) {\n element.style.opacity = 0;\n let last = +new Date();\n let opacity = 0;\n let tick = function () {\n opacity = +element.style.opacity.replace(\",\", \".\") + (new Date().getTime() - last) / duration;\n element.style.opacity = opacity;\n last = +new Date();\n if (+opacity < 1) {\n (window.requestAnimationFrame && requestAnimationFrame(tick)) || setTimeout(tick, 16);\n }\n };\n tick();\n }\n static fadeOut(element, ms) {\n var opacity = 1, interval = 50, duration = ms, gap = interval / duration;\n let fading = setInterval(() => {\n opacity = opacity - gap;\n if (opacity <= 0) {\n opacity = 0;\n clearInterval(fading);\n }\n element.style.opacity = opacity;\n }, interval);\n }\n static getWindowScrollTop() {\n let doc = document.documentElement;\n return (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n }\n static getWindowScrollLeft() {\n let doc = document.documentElement;\n return (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);\n }\n static matches(element, selector) {\n var p = Element.prototype;\n var f = p['matches'] || p.webkitMatchesSelector || p['mozMatchesSelector'] || p['msMatchesSelector'] || function (s) {\n return [].indexOf.call(document.querySelectorAll(s), this) !== -1;\n };\n return f.call(element, selector);\n }\n static getOuterWidth(el, margin) {\n let width = el.offsetWidth;\n if (margin) {\n let style = getComputedStyle(el);\n width += parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n return width;\n }\n static getHorizontalPadding(el) {\n let style = getComputedStyle(el);\n return parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n }\n static getHorizontalMargin(el) {\n let style = getComputedStyle(el);\n return parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n static innerWidth(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n width += parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n return width;\n }\n static width(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n return width;\n }\n static getInnerHeight(el) {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n height += parseFloat(style.paddingTop) + parseFloat(style.paddingBottom);\n return height;\n }\n static getOuterHeight(el, margin) {\n let height = el.offsetHeight;\n if (margin) {\n let style = getComputedStyle(el);\n height += parseFloat(style.marginTop) + parseFloat(style.marginBottom);\n }\n return height;\n }\n static getHeight(el) {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth);\n return height;\n }\n static getWidth(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth);\n return width;\n }\n static getViewport() {\n let win = window, d = document, e = d.documentElement, g = d.getElementsByTagName('body')[0], w = win.innerWidth || e.clientWidth || g.clientWidth, h = win.innerHeight || e.clientHeight || g.clientHeight;\n return { width: w, height: h };\n }\n static getOffset(el) {\n var rect = el.getBoundingClientRect();\n return {\n top: rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),\n left: rect.left + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0),\n };\n }\n static replaceElementWith(element, replacementElement) {\n let parentNode = element.parentNode;\n if (!parentNode)\n throw `Can't replace element`;\n return parentNode.replaceChild(replacementElement, element);\n }\n static getUserAgent() {\n return navigator.userAgent;\n }\n static isIE() {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n if (msie > 0) {\n // IE 10 or older => return version number\n return true;\n }\n var trident = ua.indexOf('Trident/');\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return true;\n }\n var edge = ua.indexOf('Edge/');\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return true;\n }\n // other browser\n return false;\n }\n static isIOS() {\n return /iPad|iPhone|iPod/.test(navigator.userAgent) && !window['MSStream'];\n }\n static isAndroid() {\n return /(android)/i.test(navigator.userAgent);\n }\n static isTouchDevice() {\n return (('ontouchstart' in window) || (navigator.maxTouchPoints > 0));\n }\n static appendChild(element, target) {\n if (this.isElement(target))\n target.appendChild(element);\n else if (target.el && target.el.nativeElement)\n target.el.nativeElement.appendChild(element);\n else\n throw 'Cannot append ' + target + ' to ' + element;\n }\n static removeChild(element, target) {\n if (this.isElement(target))\n target.removeChild(element);\n else if (target.el && target.el.nativeElement)\n target.el.nativeElement.removeChild(element);\n else\n throw 'Cannot remove ' + element + ' from ' + target;\n }\n static removeElement(element) {\n if (!('remove' in Element.prototype))\n element.parentNode.removeChild(element);\n else\n element.remove();\n }\n static isElement(obj) {\n return (typeof HTMLElement === \"object\" ? obj instanceof HTMLElement :\n obj && typeof obj === \"object\" && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === \"string\");\n }\n static calculateScrollbarWidth(el) {\n if (el) {\n let style = getComputedStyle(el);\n return (el.offsetWidth - el.clientWidth - parseFloat(style.borderLeftWidth) - parseFloat(style.borderRightWidth));\n }\n else {\n if (this.calculatedScrollbarWidth !== null)\n return this.calculatedScrollbarWidth;\n let scrollDiv = document.createElement(\"div\");\n scrollDiv.className = \"p-scrollbar-measure\";\n document.body.appendChild(scrollDiv);\n let scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n document.body.removeChild(scrollDiv);\n this.calculatedScrollbarWidth = scrollbarWidth;\n return scrollbarWidth;\n }\n }\n static calculateScrollbarHeight() {\n if (this.calculatedScrollbarHeight !== null)\n return this.calculatedScrollbarHeight;\n let scrollDiv = document.createElement(\"div\");\n scrollDiv.className = \"p-scrollbar-measure\";\n document.body.appendChild(scrollDiv);\n let scrollbarHeight = scrollDiv.offsetHeight - scrollDiv.clientHeight;\n document.body.removeChild(scrollDiv);\n this.calculatedScrollbarWidth = scrollbarHeight;\n return scrollbarHeight;\n }\n static invokeElementMethod(element, methodName, args) {\n element[methodName].apply(element, args);\n }\n static clearSelection() {\n if (window.getSelection) {\n if (window.getSelection().empty) {\n window.getSelection().empty();\n }\n else if (window.getSelection().removeAllRanges && window.getSelection().rangeCount > 0 && window.getSelection().getRangeAt(0).getClientRects().length > 0) {\n window.getSelection().removeAllRanges();\n }\n }\n else if (document['selection'] && document['selection'].empty) {\n try {\n document['selection'].empty();\n }\n catch (error) {\n //ignore IE bug\n }\n }\n }\n static getBrowser() {\n if (!this.browser) {\n let matched = this.resolveUserAgent();\n this.browser = {};\n if (matched.browser) {\n this.browser[matched.browser] = true;\n this.browser['version'] = matched.version;\n }\n if (this.browser['chrome']) {\n this.browser['webkit'] = true;\n }\n else if (this.browser['webkit']) {\n this.browser['safari'] = true;\n }\n }\n return this.browser;\n }\n static resolveUserAgent() {\n let ua = navigator.userAgent.toLowerCase();\n let match = /(chrome)[ \\/]([\\w.]+)/.exec(ua) ||\n /(webkit)[ \\/]([\\w.]+)/.exec(ua) ||\n /(opera)(?:.*version|)[ \\/]([\\w.]+)/.exec(ua) ||\n /(msie) ([\\w.]+)/.exec(ua) ||\n ua.indexOf(\"compatible\") < 0 && /(mozilla)(?:.*? rv:([\\w.]+)|)/.exec(ua) ||\n [];\n return {\n browser: match[1] || \"\",\n version: match[2] || \"0\"\n };\n }\n static isInteger(value) {\n if (Number.isInteger) {\n return Number.isInteger(value);\n }\n else {\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\n }\n }\n static isHidden(element) {\n return element.offsetParent === null;\n }\n static getFocusableElements(element) {\n let focusableElements = DomHandler.find(element, `button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n [href][clientHeight][clientWidth]:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n input:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]), select:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n textarea:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]), [tabIndex]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]),\n [contenteditable]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden]):not(.p-disabled)`);\n let visibleFocusableElements = [];\n for (let focusableElement of focusableElements) {\n if (getComputedStyle(focusableElement).display != \"none\" && getComputedStyle(focusableElement).visibility != \"hidden\")\n visibleFocusableElements.push(focusableElement);\n }\n return visibleFocusableElements;\n }\n static generateZIndex() {\n this.zindex = this.zindex || 999;\n return ++this.zindex;\n }\n}\nDomHandler.zindex = 1000;\nDomHandler.calculatedScrollbarWidth = null;\nDomHandler.calculatedScrollbarHeight = null;\n\nclass ConnectedOverlayScrollHandler {\n constructor(element, listener = () => { }) {\n this.element = element;\n this.listener = listener;\n }\n bindScrollListener() {\n this.scrollableParents = DomHandler.getScrollableParents(this.element);\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].addEventListener('scroll', this.listener);\n }\n }\n unbindScrollListener() {\n if (this.scrollableParents) {\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].removeEventListener('scroll', this.listener);\n }\n }\n }\n destroy() {\n this.unbindScrollListener();\n this.element = null;\n this.listener = null;\n this.scrollableParents = null;\n }\n}\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ConnectedOverlayScrollHandler, DomHandler };\n","import * as i0 from '@angular/core';\nimport { Directive, Input, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { ZIndexUtils } from 'primeng/utils';\nimport * as i1 from 'primeng/api';\n\nclass Tooltip {\n constructor(el, zone, config) {\n this.el = el;\n this.zone = zone;\n this.config = config;\n this.escape = true;\n this._tooltipOptions = {\n tooltipPosition: 'right',\n tooltipEvent: 'hover',\n appendTo: 'body',\n tooltipZIndex: 'auto',\n escape: false,\n positionTop: 0,\n positionLeft: 0\n };\n }\n get disabled() {\n return this._disabled;\n }\n set disabled(val) {\n this._disabled = val;\n this.deactivate();\n }\n ngAfterViewInit() {\n this.zone.runOutsideAngular(() => {\n if (this.getOption('tooltipEvent') === 'hover') {\n this.mouseEnterListener = this.onMouseEnter.bind(this);\n this.mouseLeaveListener = this.onMouseLeave.bind(this);\n this.clickListener = this.onClick.bind(this);\n this.el.nativeElement.addEventListener('mouseenter', this.mouseEnterListener);\n this.el.nativeElement.addEventListener('mouseleave', this.mouseLeaveListener);\n this.el.nativeElement.addEventListener('click', this.clickListener);\n }\n else if (this.getOption('tooltipEvent') === 'focus') {\n this.focusListener = this.onFocus.bind(this);\n this.blurListener = this.onBlur.bind(this);\n this.el.nativeElement.addEventListener('focus', this.focusListener);\n this.el.nativeElement.addEventListener('blur', this.blurListener);\n }\n });\n }\n ngOnChanges(simpleChange) {\n if (simpleChange.tooltipPosition) {\n this.setOption({ tooltipPosition: simpleChange.tooltipPosition.currentValue });\n }\n if (simpleChange.tooltipEvent) {\n this.setOption({ tooltipEvent: simpleChange.tooltipEvent.currentValue });\n }\n if (simpleChange.appendTo) {\n this.setOption({ appendTo: simpleChange.appendTo.currentValue });\n }\n if (simpleChange.positionStyle) {\n this.setOption({ positionStyle: simpleChange.positionStyle.currentValue });\n }\n if (simpleChange.tooltipStyleClass) {\n this.setOption({ tooltipStyleClass: simpleChange.tooltipStyleClass.currentValue });\n }\n if (simpleChange.tooltipZIndex) {\n this.setOption({ tooltipZIndex: simpleChange.tooltipZIndex.currentValue });\n }\n if (simpleChange.escape) {\n this.setOption({ escape: simpleChange.escape.currentValue });\n }\n if (simpleChange.showDelay) {\n this.setOption({ showDelay: simpleChange.showDelay.currentValue });\n }\n if (simpleChange.hideDelay) {\n this.setOption({ hideDelay: simpleChange.hideDelay.currentValue });\n }\n if (simpleChange.life) {\n this.setOption({ life: simpleChange.life.currentValue });\n }\n if (simpleChange.positionTop) {\n this.setOption({ positionTop: simpleChange.positionTop.currentValue });\n }\n if (simpleChange.positionLeft) {\n this.setOption({ positionLeft: simpleChange.positionLeft.currentValue });\n }\n if (simpleChange.disabled) {\n this.setOption({ disabled: simpleChange.disabled.currentValue });\n }\n if (simpleChange.text) {\n this.setOption({ tooltipLabel: simpleChange.text.currentValue });\n if (this.active) {\n if (simpleChange.text.currentValue) {\n if (this.container && this.container.offsetParent) {\n this.updateText();\n this.align();\n }\n else {\n this.show();\n }\n }\n else {\n this.hide();\n }\n }\n }\n if (simpleChange.tooltipOptions) {\n this._tooltipOptions = Object.assign(Object.assign({}, this._tooltipOptions), simpleChange.tooltipOptions.currentValue);\n this.deactivate();\n if (this.active) {\n if (this.getOption('tooltipLabel')) {\n if (this.container && this.container.offsetParent) {\n this.updateText();\n this.align();\n }\n else {\n this.show();\n }\n }\n else {\n this.hide();\n }\n }\n }\n }\n onMouseEnter(e) {\n if (!this.container && !this.showTimeout) {\n this.activate();\n }\n }\n onMouseLeave(e) {\n this.deactivate();\n }\n onFocus(e) {\n this.activate();\n }\n onBlur(e) {\n this.deactivate();\n }\n onClick(e) {\n this.deactivate();\n }\n activate() {\n this.active = true;\n this.clearHideTimeout();\n if (this.getOption('showDelay'))\n this.showTimeout = setTimeout(() => { this.show(); }, this.getOption('showDelay'));\n else\n this.show();\n if (this.getOption('life')) {\n let duration = this.getOption('showDelay') ? this.getOption('life') + this.getOption('showDelay') : this.getOption('life');\n this.hideTimeout = setTimeout(() => { this.hide(); }, duration);\n }\n }\n deactivate() {\n this.active = false;\n this.clearShowTimeout();\n if (this.getOption('hideDelay')) {\n this.clearHideTimeout(); //life timeout\n this.hideTimeout = setTimeout(() => { this.hide(); }, this.getOption('hideDelay'));\n }\n else {\n this.hide();\n }\n }\n create() {\n if (this.container) {\n this.clearHideTimeout();\n this.remove();\n }\n this.container = document.createElement('div');\n let tooltipArrow = document.createElement('div');\n tooltipArrow.className = 'p-tooltip-arrow';\n this.container.appendChild(tooltipArrow);\n this.tooltipText = document.createElement('div');\n this.tooltipText.className = 'p-tooltip-text';\n this.updateText();\n if (this.getOption('positionStyle')) {\n this.container.style.position = this.getOption('positionStyle');\n }\n this.container.appendChild(this.tooltipText);\n if (this.getOption('appendTo') === 'body')\n document.body.appendChild(this.container);\n else if (this.getOption('appendTo') === 'target')\n DomHandler.appendChild(this.container, this.el.nativeElement);\n else\n DomHandler.appendChild(this.container, this.getOption('appendTo'));\n this.container.style.display = 'inline-block';\n }\n show() {\n if (!this.getOption('tooltipLabel') || this.getOption('disabled')) {\n return;\n }\n this.create();\n this.align();\n DomHandler.fadeIn(this.container, 250);\n if (this.getOption('tooltipZIndex') === 'auto')\n ZIndexUtils.set('tooltip', this.container, this.config.zIndex.tooltip);\n else\n this.container.style.zIndex = this.getOption('tooltipZIndex');\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n }\n hide() {\n if (this.getOption('tooltipZIndex') === 'auto') {\n ZIndexUtils.clear(this.container);\n }\n this.remove();\n }\n updateText() {\n if (this.getOption('escape')) {\n this.tooltipText.innerHTML = '';\n this.tooltipText.appendChild(document.createTextNode(this.getOption('tooltipLabel')));\n }\n else {\n this.tooltipText.innerHTML = this.getOption('tooltipLabel');\n }\n }\n align() {\n let position = this.getOption('tooltipPosition');\n switch (position) {\n case 'top':\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignBottom();\n if (this.isOutOfBounds()) {\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignLeft();\n }\n }\n }\n break;\n case 'bottom':\n this.alignBottom();\n if (this.isOutOfBounds()) {\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignLeft();\n }\n }\n }\n break;\n case 'left':\n this.alignLeft();\n if (this.isOutOfBounds()) {\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignBottom();\n }\n }\n }\n break;\n case 'right':\n this.alignRight();\n if (this.isOutOfBounds()) {\n this.alignLeft();\n if (this.isOutOfBounds()) {\n this.alignTop();\n if (this.isOutOfBounds()) {\n this.alignBottom();\n }\n }\n }\n break;\n }\n }\n getHostOffset() {\n if (this.getOption('appendTo') === 'body' || this.getOption('appendTo') === 'target') {\n let offset = this.el.nativeElement.getBoundingClientRect();\n let targetLeft = offset.left + DomHandler.getWindowScrollLeft();\n let targetTop = offset.top + DomHandler.getWindowScrollTop();\n return { left: targetLeft, top: targetTop };\n }\n else {\n return { left: 0, top: 0 };\n }\n }\n alignRight() {\n this.preAlign('right');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left + DomHandler.getOuterWidth(this.el.nativeElement);\n let top = hostOffset.top + (DomHandler.getOuterHeight(this.el.nativeElement) - DomHandler.getOuterHeight(this.container)) / 2;\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n alignLeft() {\n this.preAlign('left');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left - DomHandler.getOuterWidth(this.container);\n let top = hostOffset.top + (DomHandler.getOuterHeight(this.el.nativeElement) - DomHandler.getOuterHeight(this.container)) / 2;\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n alignTop() {\n this.preAlign('top');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left + (DomHandler.getOuterWidth(this.el.nativeElement) - DomHandler.getOuterWidth(this.container)) / 2;\n let top = hostOffset.top - DomHandler.getOuterHeight(this.container);\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n alignBottom() {\n this.preAlign('bottom');\n let hostOffset = this.getHostOffset();\n let left = hostOffset.left + (DomHandler.getOuterWidth(this.el.nativeElement) - DomHandler.getOuterWidth(this.container)) / 2;\n let top = hostOffset.top + DomHandler.getOuterHeight(this.el.nativeElement);\n this.container.style.left = left + this.getOption('positionLeft') + 'px';\n this.container.style.top = top + this.getOption('positionTop') + 'px';\n }\n setOption(option) {\n this._tooltipOptions = Object.assign(Object.assign({}, this._tooltipOptions), option);\n }\n getOption(option) {\n return this._tooltipOptions[option];\n }\n preAlign(position) {\n this.container.style.left = -999 + 'px';\n this.container.style.top = -999 + 'px';\n let defaultClassName = 'p-tooltip p-component p-tooltip-' + position;\n this.container.className = this.getOption('tooltipStyleClass') ? defaultClassName + ' ' + this.getOption('tooltipStyleClass') : defaultClassName;\n }\n isOutOfBounds() {\n let offset = this.container.getBoundingClientRect();\n let targetTop = offset.top;\n let targetLeft = offset.left;\n let width = DomHandler.getOuterWidth(this.container);\n let height = DomHandler.getOuterHeight(this.container);\n let viewport = DomHandler.getViewport();\n return (targetLeft + width > viewport.width) || (targetLeft < 0) || (targetTop < 0) || (targetTop + height > viewport.height);\n }\n onWindowResize(e) {\n this.hide();\n }\n bindDocumentResizeListener() {\n this.zone.runOutsideAngular(() => {\n this.resizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.resizeListener);\n });\n }\n unbindDocumentResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.el.nativeElement, () => {\n if (this.container) {\n this.hide();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n unbindEvents() {\n if (this.getOption('tooltipEvent') === 'hover') {\n this.el.nativeElement.removeEventListener('mouseenter', this.mouseEnterListener);\n this.el.nativeElement.removeEventListener('mouseleave', this.mouseLeaveListener);\n this.el.nativeElement.removeEventListener('click', this.clickListener);\n }\n else if (this.getOption('tooltipEvent') === 'focus') {\n this.el.nativeElement.removeEventListener('focus', this.focusListener);\n this.el.nativeElement.removeEventListener('blur', this.blurListener);\n }\n this.unbindDocumentResizeListener();\n }\n remove() {\n if (this.container && this.container.parentElement) {\n if (this.getOption('appendTo') === 'body')\n document.body.removeChild(this.container);\n else if (this.getOption('appendTo') === 'target')\n this.el.nativeElement.removeChild(this.container);\n else\n DomHandler.removeChild(this.container, this.getOption('appendTo'));\n }\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.clearTimeouts();\n this.container = null;\n this.scrollHandler = null;\n }\n clearShowTimeout() {\n if (this.showTimeout) {\n clearTimeout(this.showTimeout);\n this.showTimeout = null;\n }\n }\n clearHideTimeout() {\n if (this.hideTimeout) {\n clearTimeout(this.hideTimeout);\n this.hideTimeout = null;\n }\n }\n clearTimeouts() {\n this.clearShowTimeout();\n this.clearHideTimeout();\n }\n ngOnDestroy() {\n this.unbindEvents();\n if (this.container) {\n ZIndexUtils.clear(this.container);\n }\n this.remove();\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n }\n}\nTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Tooltip, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig }], target: i0.ɵɵFactoryTarget.Directive });\nTooltip.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Tooltip, selector: \"[pTooltip]\", inputs: { tooltipPosition: \"tooltipPosition\", tooltipEvent: \"tooltipEvent\", appendTo: \"appendTo\", positionStyle: \"positionStyle\", tooltipStyleClass: \"tooltipStyleClass\", tooltipZIndex: \"tooltipZIndex\", escape: \"escape\", showDelay: \"showDelay\", hideDelay: \"hideDelay\", life: \"life\", positionTop: \"positionTop\", positionLeft: \"positionLeft\", text: [\"pTooltip\", \"text\"], disabled: [\"tooltipDisabled\", \"disabled\"], tooltipOptions: \"tooltipOptions\" }, host: { classAttribute: \"p-element\" }, usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Tooltip, decorators: [{\n type: Directive,\n args: [{\n selector: '[pTooltip]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PrimeNGConfig }]; }, propDecorators: { tooltipPosition: [{\n type: Input\n }], tooltipEvent: [{\n type: Input\n }], appendTo: [{\n type: Input\n }], positionStyle: [{\n type: Input\n }], tooltipStyleClass: [{\n type: Input\n }], tooltipZIndex: [{\n type: Input\n }], escape: [{\n type: Input\n }], showDelay: [{\n type: Input\n }], hideDelay: [{\n type: Input\n }], life: [{\n type: Input\n }], positionTop: [{\n type: Input\n }], positionLeft: [{\n type: Input\n }], text: [{\n type: Input,\n args: ['pTooltip']\n }], disabled: [{\n type: Input,\n args: [\"tooltipDisabled\"]\n }], tooltipOptions: [{\n type: Input\n }] } });\nclass TooltipModule {\n}\nTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TooltipModule, declarations: [Tooltip], imports: [CommonModule], exports: [Tooltip] });\nTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TooltipModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TooltipModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [Tooltip],\n declarations: [Tooltip]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Tooltip, TooltipModule };\n","import * as i0 from '@angular/core';\nimport { Directive, Optional, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport * as i1 from 'primeng/api';\n\nclass Ripple {\n constructor(el, zone, config) {\n this.el = el;\n this.zone = zone;\n this.config = config;\n }\n ngAfterViewInit() {\n if (this.config && this.config.ripple) {\n this.zone.runOutsideAngular(() => {\n this.create();\n this.mouseDownListener = this.onMouseDown.bind(this);\n this.el.nativeElement.addEventListener('mousedown', this.mouseDownListener);\n });\n }\n }\n onMouseDown(event) {\n let ink = this.getInk();\n if (!ink || getComputedStyle(ink, null).display === 'none') {\n return;\n }\n DomHandler.removeClass(ink, 'p-ink-active');\n if (!DomHandler.getHeight(ink) && !DomHandler.getWidth(ink)) {\n let d = Math.max(DomHandler.getOuterWidth(this.el.nativeElement), DomHandler.getOuterHeight(this.el.nativeElement));\n ink.style.height = d + 'px';\n ink.style.width = d + 'px';\n }\n let offset = DomHandler.getOffset(this.el.nativeElement);\n let x = event.pageX - offset.left + document.body.scrollTop - DomHandler.getWidth(ink) / 2;\n let y = event.pageY - offset.top + document.body.scrollLeft - DomHandler.getHeight(ink) / 2;\n ink.style.top = y + 'px';\n ink.style.left = x + 'px';\n DomHandler.addClass(ink, 'p-ink-active');\n }\n getInk() {\n for (let i = 0; i < this.el.nativeElement.children.length; i++) {\n if (this.el.nativeElement.children[i].className.indexOf('p-ink') !== -1) {\n return this.el.nativeElement.children[i];\n }\n }\n return null;\n }\n resetInk() {\n let ink = this.getInk();\n if (ink) {\n DomHandler.removeClass(ink, 'p-ink-active');\n }\n }\n onAnimationEnd(event) {\n DomHandler.removeClass(event.currentTarget, 'p-ink-active');\n }\n create() {\n let ink = document.createElement('span');\n ink.className = 'p-ink';\n this.el.nativeElement.appendChild(ink);\n this.animationListener = this.onAnimationEnd.bind(this);\n ink.addEventListener('animationend', this.animationListener);\n }\n remove() {\n let ink = this.getInk();\n if (ink) {\n this.el.nativeElement.removeEventListener('mousedown', this.mouseDownListener);\n ink.removeEventListener('animationend', this.animationListener);\n DomHandler.removeElement(ink);\n }\n }\n ngOnDestroy() {\n if (this.config && this.config.ripple) {\n this.remove();\n }\n }\n}\nRipple.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Ripple, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig, optional: true }], target: i0.ɵɵFactoryTarget.Directive });\nRipple.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Ripple, selector: \"[pRipple]\", host: { classAttribute: \"p-ripple p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Ripple, decorators: [{\n type: Directive,\n args: [{\n selector: '[pRipple]',\n host: {\n 'class': 'p-ripple p-element'\n }\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PrimeNGConfig, decorators: [{\n type: Optional\n }] }];\n } });\nclass RippleModule {\n}\nRippleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nRippleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RippleModule, declarations: [Ripple], imports: [CommonModule], exports: [Ripple] });\nRippleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RippleModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RippleModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [Ripple],\n declarations: [Ripple]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Ripple, RippleModule };\n","import * as i4 from '@angular/cdk/scrolling';\nimport { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';\nimport * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, Input, Output, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, ContentChildren, NgModule } from '@angular/core';\nimport { trigger, transition, style, animate } from '@angular/animations';\nimport * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i3 from 'primeng/api';\nimport { TranslationKeys, PrimeTemplate, SharedModule } from 'primeng/api';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport * as i5 from 'primeng/tooltip';\nimport { TooltipModule } from 'primeng/tooltip';\nimport * as i1 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\n\nconst DROPDOWN_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Dropdown),\n multi: true\n};\nclass DropdownItem {\n constructor() {\n this.onClick = new EventEmitter();\n }\n onOptionClick(event) {\n this.onClick.emit({\n originalEvent: event,\n option: this.option\n });\n }\n}\nDropdownItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: DropdownItem, deps: [], target: i0.ɵɵFactoryTarget.Component });\nDropdownItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: DropdownItem, selector: \"p-dropdownItem\", inputs: { option: \"option\", selected: \"selected\", label: \"label\", disabled: \"disabled\", visible: \"visible\", itemSize: \"itemSize\", template: \"template\" }, outputs: { onClick: \"onClick\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
  • \n {{label||'empty'}}\n \n
  • \n `, isInline: true, directives: [{ type: i1.Ripple, selector: \"[pRipple]\" }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: DropdownItem, decorators: [{\n type: Component,\n args: [{\n selector: 'p-dropdownItem',\n template: `\n
  • \n {{label||'empty'}}\n \n
  • \n `,\n host: {\n 'class': 'p-element'\n }\n }]\n }], propDecorators: { option: [{\n type: Input\n }], selected: [{\n type: Input\n }], label: [{\n type: Input\n }], disabled: [{\n type: Input\n }], visible: [{\n type: Input\n }], itemSize: [{\n type: Input\n }], template: [{\n type: Input\n }], onClick: [{\n type: Output\n }] } });\nclass Dropdown {\n constructor(el, renderer, cd, zone, filterService, config, overlayService) {\n this.el = el;\n this.renderer = renderer;\n this.cd = cd;\n this.zone = zone;\n this.filterService = filterService;\n this.config = config;\n this.overlayService = overlayService;\n this.scrollHeight = '200px';\n this.resetFilterOnHide = false;\n this.dropdownIcon = 'pi pi-chevron-down';\n this.optionGroupChildren = \"items\";\n this.autoDisplayFirst = true;\n this.emptyFilterMessage = '';\n this.emptyMessage = '';\n this.autoZIndex = true;\n this.baseZIndex = 0;\n this.showTransitionOptions = '.12s cubic-bezier(0, 0, 0.2, 1)';\n this.hideTransitionOptions = '.1s linear';\n this.filterMatchMode = \"contains\";\n this.tooltip = '';\n this.tooltipPosition = 'right';\n this.tooltipPositionStyle = 'absolute';\n this.autofocusFilter = true;\n this.onChange = new EventEmitter();\n this.onFilter = new EventEmitter();\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n this.onClick = new EventEmitter();\n this.onShow = new EventEmitter();\n this.onHide = new EventEmitter();\n this.onClear = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n this.viewPortOffsetTop = 0;\n this.id = UniqueComponentId();\n }\n get disabled() {\n return this._disabled;\n }\n ;\n set disabled(_disabled) {\n if (_disabled) {\n this.focused = false;\n if (this.overlayVisible)\n this.hide();\n }\n this._disabled = _disabled;\n if (!this.cd.destroyed) {\n this.cd.detectChanges();\n }\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n case 'selectedItem':\n this.selectedItemTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n case 'emptyfilter':\n this.emptyFilterTemplate = item.template;\n break;\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n case 'group':\n this.groupTemplate = item.template;\n break;\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n ngOnInit() {\n this.optionsToDisplay = this.options;\n this.updateSelectedOption(null);\n this.labelId = this.id + '_label';\n this.listId = this.id + '_list';\n }\n get options() {\n return this._options;\n }\n set options(val) {\n this._options = val;\n this.optionsToDisplay = this._options;\n this.updateSelectedOption(this.value);\n this.optionsChanged = true;\n if (this._filterValue && this._filterValue.length) {\n this.activateFilter();\n }\n }\n get filterValue() {\n return this._filterValue;\n }\n set filterValue(val) {\n this._filterValue = val;\n this.activateFilter();\n }\n ngAfterViewInit() {\n if (this.editable) {\n this.updateEditableLabel();\n }\n }\n get label() {\n return this.selectedOption ? this.getOptionLabel(this.selectedOption) : null;\n }\n get emptyMessageLabel() {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n get emptyFilterMessageLabel() {\n return this.emptyFilterMessage || this.config.getTranslation(TranslationKeys.EMPTY_FILTER_MESSAGE);\n }\n get filled() {\n return this.value || this.value != null || this.value != undefined;\n }\n updateEditableLabel() {\n if (this.editableInputViewChild && this.editableInputViewChild.nativeElement) {\n this.editableInputViewChild.nativeElement.value = (this.selectedOption ? this.getOptionLabel(this.selectedOption) : this.value || '');\n }\n }\n getOptionLabel(option) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : (option.label != undefined ? option.label : option);\n }\n getOptionValue(option) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : (this.optionLabel || option.value === undefined ? option : option.value);\n }\n isOptionDisabled(option) {\n return this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : (option.disabled !== undefined ? option.disabled : false);\n }\n getOptionGroupLabel(optionGroup) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : (optionGroup.label != undefined ? optionGroup.label : optionGroup);\n }\n getOptionGroupChildren(optionGroup) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n onItemClick(event) {\n const option = event.option;\n if (!this.isOptionDisabled(option)) {\n this.selectItem(event.originalEvent, option);\n this.accessibleViewChild.nativeElement.focus();\n }\n setTimeout(() => {\n this.hide();\n }, 150);\n }\n selectItem(event, option) {\n if (this.selectedOption != option) {\n this.selectedOption = option;\n this.value = this.getOptionValue(option);\n this.onModelChange(this.value);\n this.updateEditableLabel();\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n if (this.virtualScroll) {\n setTimeout(() => {\n this.viewPortOffsetTop = this.viewPort ? this.viewPort.measureScrollOffset() : 0;\n }, 1);\n }\n }\n }\n ngAfterViewChecked() {\n if (this.optionsChanged && this.overlayVisible) {\n this.optionsChanged = false;\n if (this.virtualScroll) {\n this.updateVirtualScrollSelectedIndex(true);\n }\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.alignOverlay();\n }, 1);\n });\n }\n if (this.selectedOptionUpdated && this.itemsWrapper) {\n if (this.virtualScroll && this.viewPort) {\n let range = this.viewPort.getRenderedRange();\n this.updateVirtualScrollSelectedIndex(false);\n if (range.start > this.virtualScrollSelectedIndex || range.end < this.virtualScrollSelectedIndex) {\n this.viewPort.scrollToIndex(this.virtualScrollSelectedIndex);\n }\n }\n let selectedItem = DomHandler.findSingle(this.overlay, 'li.p-highlight');\n if (selectedItem) {\n DomHandler.scrollInView(this.itemsWrapper, DomHandler.findSingle(this.overlay, 'li.p-highlight'));\n }\n this.selectedOptionUpdated = false;\n }\n }\n writeValue(value) {\n if (this.filter) {\n this.resetFilter();\n }\n this.value = value;\n this.updateSelectedOption(value);\n this.updateEditableLabel();\n this.cd.markForCheck();\n }\n resetFilter() {\n this._filterValue = null;\n if (this.filterViewChild && this.filterViewChild.nativeElement) {\n this.filterViewChild.nativeElement.value = '';\n }\n this.optionsToDisplay = this.options;\n }\n updateSelectedOption(val) {\n this.selectedOption = this.findOption(val, this.optionsToDisplay);\n if (this.autoDisplayFirst && !this.placeholder && !this.selectedOption && this.optionsToDisplay && this.optionsToDisplay.length && !this.editable) {\n this.selectedOption = this.optionsToDisplay[0];\n this.value = this.getOptionValue(this.selectedOption);\n this.onModelChange(this.value);\n }\n this.selectedOptionUpdated = true;\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n onMouseclick(event) {\n if (this.disabled || this.readonly || this.isInputClick(event)) {\n return;\n }\n this.onClick.emit(event);\n this.accessibleViewChild.nativeElement.focus();\n if (this.overlayVisible)\n this.hide();\n else\n this.show();\n this.cd.detectChanges();\n }\n onOverlayClick(event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n isInputClick(event) {\n return DomHandler.hasClass(event.target, 'p-dropdown-clear-icon') ||\n event.target.isSameNode(this.accessibleViewChild.nativeElement) ||\n (this.editableInputViewChild && event.target.isSameNode(this.editableInputViewChild.nativeElement));\n }\n isOutsideClicked(event) {\n return !(this.el.nativeElement.isSameNode(event.target) || this.el.nativeElement.contains(event.target) || (this.overlay && this.overlay.contains(event.target)));\n }\n isEmpty() {\n return !this.optionsToDisplay || (this.optionsToDisplay && this.optionsToDisplay.length === 0);\n }\n onEditableInputClick() {\n this.bindDocumentClickListener();\n }\n onEditableInputFocus(event) {\n this.focused = true;\n this.hide();\n this.onFocus.emit(event);\n }\n onEditableInputChange(event) {\n this.value = event.target.value;\n this.updateSelectedOption(this.value);\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n show() {\n this.overlayVisible = true;\n this.preventDocumentDefault = true;\n this.cd.markForCheck();\n }\n onOverlayAnimationStart(event) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n let itemsWrapperSelector = this.virtualScroll ? '.cdk-virtual-scroll-viewport' : '.p-dropdown-items-wrapper';\n this.itemsWrapper = DomHandler.findSingle(this.overlay, itemsWrapperSelector);\n this.appendOverlay();\n if (this.autoZIndex) {\n ZIndexUtils.set('overlay', this.overlay, this.baseZIndex + this.config.zIndex.overlay);\n }\n this.alignOverlay();\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n if (this.options && this.options.length) {\n if (!this.virtualScroll) {\n let selectedListItem = DomHandler.findSingle(this.itemsWrapper, '.p-dropdown-item.p-highlight');\n if (selectedListItem) {\n selectedListItem.scrollIntoView({ block: 'nearest', inline: 'center' });\n }\n }\n }\n if (this.filterViewChild && this.filterViewChild.nativeElement) {\n this.preventModelTouched = true;\n if (this.autofocusFilter) {\n this.filterViewChild.nativeElement.focus();\n }\n }\n this.onShow.emit(event);\n break;\n case 'void':\n this.onOverlayHide();\n this.onHide.emit(event);\n break;\n }\n }\n onOverlayAnimationEnd(event) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n scrollToSelectedVirtualScrollElement() {\n if (!this.virtualAutoScrolled) {\n if (this.viewPortOffsetTop) {\n this.viewPort.scrollToOffset(this.viewPortOffsetTop);\n }\n else if (this.virtualScrollSelectedIndex > -1) {\n this.viewPort.scrollToIndex(this.virtualScrollSelectedIndex);\n }\n }\n this.virtualAutoScrolled = true;\n }\n updateVirtualScrollSelectedIndex(resetOffset) {\n if (this.selectedOption && this.optionsToDisplay && this.optionsToDisplay.length) {\n if (resetOffset) {\n this.viewPortOffsetTop = 0;\n }\n this.virtualScrollSelectedIndex = this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay);\n }\n }\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.overlay);\n else\n DomHandler.appendChild(this.overlay, this.appendTo);\n if (!this.overlay.style.minWidth) {\n this.overlay.style.minWidth = DomHandler.getWidth(this.containerViewChild.nativeElement) + 'px';\n }\n }\n }\n restoreOverlayAppend() {\n if (this.overlay && this.appendTo) {\n this.el.nativeElement.appendChild(this.overlay);\n }\n }\n hide() {\n this.overlayVisible = false;\n if (this.filter && this.resetFilterOnHide) {\n this.resetFilter();\n }\n if (this.virtualScroll) {\n this.virtualAutoScrolled = false;\n }\n this.cd.markForCheck();\n }\n alignOverlay() {\n if (this.overlay) {\n if (this.appendTo)\n DomHandler.absolutePosition(this.overlay, this.containerViewChild.nativeElement);\n else\n DomHandler.relativePosition(this.overlay, this.containerViewChild.nativeElement);\n }\n }\n onInputFocus(event) {\n this.focused = true;\n this.onFocus.emit(event);\n }\n onInputBlur(event) {\n this.focused = false;\n this.onBlur.emit(event);\n if (!this.preventModelTouched) {\n this.onModelTouched();\n }\n this.preventModelTouched = false;\n }\n findPrevEnabledOption(index) {\n let prevEnabledOption;\n if (this.optionsToDisplay && this.optionsToDisplay.length) {\n for (let i = (index - 1); 0 <= i; i--) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n prevEnabledOption = option;\n break;\n }\n }\n if (!prevEnabledOption) {\n for (let i = this.optionsToDisplay.length - 1; i >= index; i--) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n prevEnabledOption = option;\n break;\n }\n }\n }\n }\n return prevEnabledOption;\n }\n findNextEnabledOption(index) {\n let nextEnabledOption;\n if (this.optionsToDisplay && this.optionsToDisplay.length) {\n for (let i = (index + 1); i < this.optionsToDisplay.length; i++) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n nextEnabledOption = option;\n break;\n }\n }\n if (!nextEnabledOption) {\n for (let i = 0; i < index; i++) {\n let option = this.optionsToDisplay[i];\n if (this.isOptionDisabled(option)) {\n continue;\n }\n else {\n nextEnabledOption = option;\n break;\n }\n }\n }\n }\n return nextEnabledOption;\n }\n onKeydown(event, search) {\n if (this.readonly || !this.optionsToDisplay || this.optionsToDisplay.length === null) {\n return;\n }\n switch (event.which) {\n //down\n case 40:\n if (!this.overlayVisible && event.altKey) {\n this.show();\n }\n else {\n if (this.group) {\n let selectedItemIndex = this.selectedOption ? this.findOptionGroupIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n if (selectedItemIndex !== -1) {\n let nextItemIndex = selectedItemIndex.itemIndex + 1;\n if (nextItemIndex < (this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex]).length)) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex])[nextItemIndex]);\n this.selectedOptionUpdated = true;\n }\n else if (this.optionsToDisplay[selectedItemIndex.groupIndex + 1]) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex + 1])[0]);\n this.selectedOptionUpdated = true;\n }\n }\n else {\n if (this.optionsToDisplay && this.optionsToDisplay.length > 0) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[0])[0]);\n }\n }\n }\n else {\n let selectedItemIndex = this.selectedOption ? this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n let nextEnabledOption = this.findNextEnabledOption(selectedItemIndex);\n if (nextEnabledOption) {\n this.selectItem(event, nextEnabledOption);\n this.selectedOptionUpdated = true;\n }\n }\n }\n event.preventDefault();\n break;\n //up\n case 38:\n if (this.group) {\n let selectedItemIndex = this.selectedOption ? this.findOptionGroupIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n if (selectedItemIndex !== -1) {\n let prevItemIndex = selectedItemIndex.itemIndex - 1;\n if (prevItemIndex >= 0) {\n this.selectItem(event, this.getOptionGroupChildren(this.optionsToDisplay[selectedItemIndex.groupIndex])[prevItemIndex]);\n this.selectedOptionUpdated = true;\n }\n else if (prevItemIndex < 0) {\n let prevGroup = this.optionsToDisplay[selectedItemIndex.groupIndex - 1];\n if (prevGroup) {\n this.selectItem(event, this.getOptionGroupChildren(prevGroup)[this.getOptionGroupChildren(prevGroup).length - 1]);\n this.selectedOptionUpdated = true;\n }\n }\n }\n }\n else {\n let selectedItemIndex = this.selectedOption ? this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n let prevEnabledOption = this.findPrevEnabledOption(selectedItemIndex);\n if (prevEnabledOption) {\n this.selectItem(event, prevEnabledOption);\n this.selectedOptionUpdated = true;\n }\n }\n event.preventDefault();\n break;\n //space\n case 32:\n if (search) {\n if (!this.overlayVisible) {\n this.show();\n }\n else {\n this.hide();\n }\n event.preventDefault();\n }\n break;\n //enter\n case 13:\n if (this.overlayVisible && (!this.filter || (this.optionsToDisplay && this.optionsToDisplay.length > 0))) {\n this.hide();\n }\n else if (!this.overlayVisible) {\n this.show();\n }\n event.preventDefault();\n break;\n //escape and tab\n case 27:\n case 9:\n this.hide();\n break;\n //search item based on keyboard input\n default:\n if (search && !event.metaKey) {\n this.search(event);\n }\n break;\n }\n }\n search(event) {\n if (this.searchTimeout) {\n clearTimeout(this.searchTimeout);\n }\n const char = event.key;\n this.previousSearchChar = this.currentSearchChar;\n this.currentSearchChar = char;\n if (this.previousSearchChar === this.currentSearchChar)\n this.searchValue = this.currentSearchChar;\n else\n this.searchValue = this.searchValue ? this.searchValue + char : char;\n let newOption;\n if (this.group) {\n let searchIndex = this.selectedOption ? this.findOptionGroupIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : { groupIndex: 0, itemIndex: 0 };\n newOption = this.searchOptionWithinGroup(searchIndex);\n }\n else {\n let searchIndex = this.selectedOption ? this.findOptionIndex(this.getOptionValue(this.selectedOption), this.optionsToDisplay) : -1;\n newOption = this.searchOption(++searchIndex);\n }\n if (newOption && !this.isOptionDisabled(newOption)) {\n this.selectItem(event, newOption);\n this.selectedOptionUpdated = true;\n }\n this.searchTimeout = setTimeout(() => {\n this.searchValue = null;\n }, 250);\n }\n searchOption(index) {\n let option;\n if (this.searchValue) {\n option = this.searchOptionInRange(index, this.optionsToDisplay.length);\n if (!option) {\n option = this.searchOptionInRange(0, index);\n }\n }\n return option;\n }\n searchOptionInRange(start, end) {\n for (let i = start; i < end; i++) {\n let opt = this.optionsToDisplay[i];\n if (this.getOptionLabel(opt).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale)) && !this.isOptionDisabled(opt)) {\n return opt;\n }\n }\n return null;\n }\n searchOptionWithinGroup(index) {\n let option;\n if (this.searchValue) {\n for (let i = index.groupIndex; i < this.optionsToDisplay.length; i++) {\n for (let j = (index.groupIndex === i) ? (index.itemIndex + 1) : 0; j < this.getOptionGroupChildren(this.optionsToDisplay[i]).length; j++) {\n let opt = this.getOptionGroupChildren(this.optionsToDisplay[i])[j];\n if (this.getOptionLabel(opt).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale)) && !this.isOptionDisabled(opt)) {\n return opt;\n }\n }\n }\n if (!option) {\n for (let i = 0; i <= index.groupIndex; i++) {\n for (let j = 0; j < ((index.groupIndex === i) ? index.itemIndex : this.getOptionGroupChildren(this.optionsToDisplay[i]).length); j++) {\n let opt = this.getOptionGroupChildren(this.optionsToDisplay[i])[j];\n if (this.getOptionLabel(opt).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale)) && !this.isOptionDisabled(opt)) {\n return opt;\n }\n }\n }\n }\n }\n return null;\n }\n findOptionIndex(val, opts) {\n let index = -1;\n if (opts) {\n for (let i = 0; i < opts.length; i++) {\n if ((val == null && this.getOptionValue(opts[i]) == null) || ObjectUtils.equals(val, this.getOptionValue(opts[i]), this.dataKey)) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n findOptionGroupIndex(val, opts) {\n let groupIndex, itemIndex;\n if (opts) {\n for (let i = 0; i < opts.length; i++) {\n groupIndex = i;\n itemIndex = this.findOptionIndex(val, this.getOptionGroupChildren(opts[i]));\n if (itemIndex !== -1) {\n break;\n }\n }\n }\n if (itemIndex !== -1) {\n return { groupIndex: groupIndex, itemIndex: itemIndex };\n }\n else {\n return -1;\n }\n }\n findOption(val, opts, inGroup) {\n if (this.group && !inGroup) {\n let opt;\n if (opts && opts.length) {\n for (let optgroup of opts) {\n opt = this.findOption(val, this.getOptionGroupChildren(optgroup), true);\n if (opt) {\n break;\n }\n }\n }\n return opt;\n }\n else {\n let index = this.findOptionIndex(val, opts);\n return (index != -1) ? opts[index] : null;\n }\n }\n onFilterInputChange(event) {\n let inputValue = event.target.value;\n if (inputValue && inputValue.length) {\n this._filterValue = inputValue;\n this.activateFilter();\n }\n else {\n this._filterValue = null;\n this.optionsToDisplay = this.options;\n }\n this.optionsChanged = true;\n this.onFilter.emit({ originalEvent: event, filter: this._filterValue });\n }\n activateFilter() {\n let searchFields = (this.filterBy || this.optionLabel || 'label').split(',');\n if (this.options && this.options.length) {\n if (this.group) {\n let filteredGroups = [];\n for (let optgroup of this.options) {\n let filteredSubOptions = this.filterService.filter(this.getOptionGroupChildren(optgroup), searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n if (filteredSubOptions && filteredSubOptions.length) {\n filteredGroups.push(Object.assign(Object.assign({}, optgroup), { [this.optionGroupChildren]: filteredSubOptions }));\n }\n }\n this.optionsToDisplay = filteredGroups;\n }\n else {\n this.optionsToDisplay = this.filterService.filter(this.options, searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n }\n this.optionsChanged = true;\n }\n }\n applyFocus() {\n if (this.editable)\n DomHandler.findSingle(this.el.nativeElement, '.p-dropdown-label.p-inputtext').focus();\n else\n DomHandler.findSingle(this.el.nativeElement, 'input[readonly]').focus();\n }\n focus() {\n this.applyFocus();\n }\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';\n this.documentClickListener = this.renderer.listen(documentTarget, 'click', (event) => {\n if (!this.preventDocumentDefault && this.isOutsideClicked(event)) {\n this.hide();\n this.unbindDocumentClickListener();\n }\n this.preventDocumentDefault = false;\n });\n }\n }\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n bindDocumentResizeListener() {\n this.documentResizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.documentResizeListener);\n }\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n onWindowResize() {\n if (this.overlayVisible && !DomHandler.isTouchDevice()) {\n this.hide();\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.containerViewChild.nativeElement, (event) => {\n if (this.overlayVisible) {\n this.hide();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n clear(event) {\n this.value = null;\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n this.updateSelectedOption(this.value);\n this.updateEditableLabel();\n this.onClear.emit(event);\n }\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.overlay = null;\n this.itemsWrapper = null;\n this.onModelTouched();\n }\n ngOnDestroy() {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n }\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n}\nDropdown.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Dropdown, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i3.FilterService }, { token: i3.PrimeNGConfig }, { token: i3.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nDropdown.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Dropdown, selector: \"p-dropdown\", inputs: { scrollHeight: \"scrollHeight\", filter: \"filter\", name: \"name\", style: \"style\", panelStyle: \"panelStyle\", styleClass: \"styleClass\", panelStyleClass: \"panelStyleClass\", readonly: \"readonly\", required: \"required\", editable: \"editable\", appendTo: \"appendTo\", tabindex: \"tabindex\", placeholder: \"placeholder\", filterPlaceholder: \"filterPlaceholder\", filterLocale: \"filterLocale\", inputId: \"inputId\", selectId: \"selectId\", dataKey: \"dataKey\", filterBy: \"filterBy\", autofocus: \"autofocus\", resetFilterOnHide: \"resetFilterOnHide\", dropdownIcon: \"dropdownIcon\", optionLabel: \"optionLabel\", optionValue: \"optionValue\", optionDisabled: \"optionDisabled\", optionGroupLabel: \"optionGroupLabel\", optionGroupChildren: \"optionGroupChildren\", autoDisplayFirst: \"autoDisplayFirst\", group: \"group\", showClear: \"showClear\", emptyFilterMessage: \"emptyFilterMessage\", emptyMessage: \"emptyMessage\", virtualScroll: \"virtualScroll\", itemSize: \"itemSize\", autoZIndex: \"autoZIndex\", baseZIndex: \"baseZIndex\", showTransitionOptions: \"showTransitionOptions\", hideTransitionOptions: \"hideTransitionOptions\", ariaFilterLabel: \"ariaFilterLabel\", ariaLabel: \"ariaLabel\", ariaLabelledBy: \"ariaLabelledBy\", filterMatchMode: \"filterMatchMode\", maxlength: \"maxlength\", tooltip: \"tooltip\", tooltipPosition: \"tooltipPosition\", tooltipPositionStyle: \"tooltipPositionStyle\", tooltipStyleClass: \"tooltipStyleClass\", autofocusFilter: \"autofocusFilter\", disabled: \"disabled\", options: \"options\", filterValue: \"filterValue\" }, outputs: { onChange: \"onChange\", onFilter: \"onFilter\", onFocus: \"onFocus\", onBlur: \"onBlur\", onClick: \"onClick\", onShow: \"onShow\", onHide: \"onHide\", onClear: \"onClear\" }, host: { properties: { \"class.p-inputwrapper-filled\": \"filled\", \"class.p-inputwrapper-focus\": \"focused || overlayVisible\" }, classAttribute: \"p-element p-inputwrapper\" }, providers: [DROPDOWN_VALUE_ACCESSOR], queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"containerViewChild\", first: true, predicate: [\"container\"], descendants: true }, { propertyName: \"filterViewChild\", first: true, predicate: [\"filter\"], descendants: true }, { propertyName: \"accessibleViewChild\", first: true, predicate: [\"in\"], descendants: true }, { propertyName: \"viewPort\", first: true, predicate: CdkVirtualScrollViewport, descendants: true }, { propertyName: \"editableInputViewChild\", first: true, predicate: [\"editableInput\"], descendants: true }], ngImport: i0, template: `\n
    \n
    \n \n
    \n \n {{label||'empty'}}\n \n \n {{placeholder||'empty'}}\n \n \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
      \n \n \n
    • \n {{getOptionGroupLabel(optgroup)||'empty'}}\n \n
    • \n \n
      \n
      \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    • \n \n {{emptyFilterMessageLabel}}\n \n \n
    • \n
    • \n \n {{emptyMessageLabel}}\n \n \n
    • \n
    \n
    \n \n
    \n
    \n `, isInline: true, styles: [\".p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;visibility:hidden}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-panel{position:absolute;top:0;left:0}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}\\n\"], components: [{ type: DropdownItem, selector: \"p-dropdownItem\", inputs: [\"option\", \"selected\", \"label\", \"disabled\", \"visible\", \"itemSize\", \"template\"], outputs: [\"onClick\"] }, { type: i4.CdkVirtualScrollViewport, selector: \"cdk-virtual-scroll-viewport\", inputs: [\"orientation\", \"appendOnly\"], outputs: [\"scrolledIndexChange\"] }], directives: [{ type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i5.Tooltip, selector: \"[pTooltip]\", inputs: [\"tooltipPosition\", \"tooltipEvent\", \"appendTo\", \"positionStyle\", \"tooltipStyleClass\", \"tooltipZIndex\", \"escape\", \"showDelay\", \"hideDelay\", \"life\", \"positionTop\", \"positionLeft\", \"pTooltip\", \"tooltipDisabled\", \"tooltipOptions\"] }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i2.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i4.CdkFixedSizeVirtualScroll, selector: \"cdk-virtual-scroll-viewport[itemSize]\", inputs: [\"itemSize\", \"minBufferPx\", \"maxBufferPx\"] }, { type: i4.CdkVirtualForOf, selector: \"[cdkVirtualFor][cdkVirtualForOf]\", inputs: [\"cdkVirtualForOf\", \"cdkVirtualForTrackBy\", \"cdkVirtualForTemplate\", \"cdkVirtualForTemplateCacheSize\"] }], animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition(':leave', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ])\n ])\n ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Dropdown, decorators: [{\n type: Component,\n args: [{ selector: 'p-dropdown', template: `\n
    \n
    \n \n
    \n \n {{label||'empty'}}\n \n \n {{placeholder||'empty'}}\n \n \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
      \n \n \n
    • \n {{getOptionGroupLabel(optgroup)||'empty'}}\n \n
    • \n \n
      \n
      \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    • \n \n {{emptyFilterMessageLabel}}\n \n \n
    • \n
    • \n \n {{emptyMessageLabel}}\n \n \n
    • \n
    \n
    \n \n
    \n
    \n `, animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition(':leave', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ])\n ])\n ], host: {\n 'class': 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focused || overlayVisible'\n }, providers: [DROPDOWN_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [\".p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;visibility:hidden}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-panel{position:absolute;top:0;left:0}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i3.FilterService }, { type: i3.PrimeNGConfig }, { type: i3.OverlayService }]; }, propDecorators: { scrollHeight: [{\n type: Input\n }], filter: [{\n type: Input\n }], name: [{\n type: Input\n }], style: [{\n type: Input\n }], panelStyle: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], panelStyleClass: [{\n type: Input\n }], readonly: [{\n type: Input\n }], required: [{\n type: Input\n }], editable: [{\n type: Input\n }], appendTo: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], filterPlaceholder: [{\n type: Input\n }], filterLocale: [{\n type: Input\n }], inputId: [{\n type: Input\n }], selectId: [{\n type: Input\n }], dataKey: [{\n type: Input\n }], filterBy: [{\n type: Input\n }], autofocus: [{\n type: Input\n }], resetFilterOnHide: [{\n type: Input\n }], dropdownIcon: [{\n type: Input\n }], optionLabel: [{\n type: Input\n }], optionValue: [{\n type: Input\n }], optionDisabled: [{\n type: Input\n }], optionGroupLabel: [{\n type: Input\n }], optionGroupChildren: [{\n type: Input\n }], autoDisplayFirst: [{\n type: Input\n }], group: [{\n type: Input\n }], showClear: [{\n type: Input\n }], emptyFilterMessage: [{\n type: Input\n }], emptyMessage: [{\n type: Input\n }], virtualScroll: [{\n type: Input\n }], itemSize: [{\n type: Input\n }], autoZIndex: [{\n type: Input\n }], baseZIndex: [{\n type: Input\n }], showTransitionOptions: [{\n type: Input\n }], hideTransitionOptions: [{\n type: Input\n }], ariaFilterLabel: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], filterMatchMode: [{\n type: Input\n }], maxlength: [{\n type: Input\n }], tooltip: [{\n type: Input\n }], tooltipPosition: [{\n type: Input\n }], tooltipPositionStyle: [{\n type: Input\n }], tooltipStyleClass: [{\n type: Input\n }], autofocusFilter: [{\n type: Input\n }], onChange: [{\n type: Output\n }], onFilter: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], onClick: [{\n type: Output\n }], onShow: [{\n type: Output\n }], onHide: [{\n type: Output\n }], onClear: [{\n type: Output\n }], containerViewChild: [{\n type: ViewChild,\n args: ['container']\n }], filterViewChild: [{\n type: ViewChild,\n args: ['filter']\n }], accessibleViewChild: [{\n type: ViewChild,\n args: ['in']\n }], viewPort: [{\n type: ViewChild,\n args: [CdkVirtualScrollViewport]\n }], editableInputViewChild: [{\n type: ViewChild,\n args: ['editableInput']\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], disabled: [{\n type: Input\n }], options: [{\n type: Input\n }], filterValue: [{\n type: Input\n }] } });\nclass DropdownModule {\n}\nDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: DropdownModule, declarations: [Dropdown, DropdownItem], imports: [CommonModule, SharedModule, ScrollingModule, TooltipModule, RippleModule], exports: [Dropdown, SharedModule, ScrollingModule] });\nDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: DropdownModule, imports: [[CommonModule, SharedModule, ScrollingModule, TooltipModule, RippleModule], SharedModule, ScrollingModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: DropdownModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, SharedModule, ScrollingModule, TooltipModule, RippleModule],\n exports: [Dropdown, SharedModule, ScrollingModule],\n declarations: [Dropdown, DropdownItem]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { DROPDOWN_VALUE_ACCESSOR, Dropdown, DropdownItem, DropdownModule };\n","import * as i0 from '@angular/core';\nimport { Directive, Optional, HostListener, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport * as i1 from '@angular/forms';\n\nclass InputText {\n constructor(el, ngModel, cd) {\n this.el = el;\n this.ngModel = ngModel;\n this.cd = cd;\n }\n ngAfterViewInit() {\n this.updateFilledState();\n this.cd.detectChanges();\n }\n ngDoCheck() {\n this.updateFilledState();\n }\n onInput(e) {\n this.updateFilledState();\n }\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) ||\n (this.ngModel && this.ngModel.model);\n }\n}\nInputText.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputText, deps: [{ token: i0.ElementRef }, { token: i1.NgModel, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });\nInputText.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: InputText, selector: \"[pInputText]\", host: { listeners: { \"input\": \"onInput($event)\" }, properties: { \"class.p-filled\": \"filled\" }, classAttribute: \"p-inputtext p-component p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputText, decorators: [{\n type: Directive,\n args: [{\n selector: '[pInputText]',\n host: {\n 'class': 'p-inputtext p-component p-element',\n '[class.p-filled]': 'filled'\n }\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: i1.NgModel, decorators: [{\n type: Optional\n }] }, { type: i0.ChangeDetectorRef }];\n }, propDecorators: { onInput: [{\n type: HostListener,\n args: ['input', ['$event']]\n }] } });\nclass InputTextModule {\n}\nInputTextModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputTextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nInputTextModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputTextModule, declarations: [InputText], imports: [CommonModule], exports: [InputText] });\nInputTextModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputTextModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputTextModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [InputText],\n declarations: [InputText]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { InputText, InputTextModule };\n","import * as i0 from '@angular/core';\nimport { Directive, Input, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, ContentChildren, Output, NgModule } from '@angular/core';\nimport { DomHandler } from 'primeng/dom';\nimport * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i1 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport { PrimeTemplate } from 'primeng/api';\n\nclass ButtonDirective {\n constructor(el) {\n this.el = el;\n this.iconPos = 'left';\n this.loadingIcon = \"pi pi-spinner pi-spin\";\n this._loading = false;\n }\n ngAfterViewInit() {\n this._initialStyleClass = this.el.nativeElement.className;\n DomHandler.addMultipleClasses(this.el.nativeElement, this.getStyleClass());\n if (this.icon || this.loading) {\n this.createIconEl();\n }\n let labelElement = document.createElement(\"span\");\n if (this.icon && !this.label) {\n labelElement.setAttribute('aria-hidden', 'true');\n }\n labelElement.className = 'p-button-label';\n if (this.label)\n labelElement.appendChild(document.createTextNode(this.label));\n else\n labelElement.innerHTML = ' ';\n this.el.nativeElement.appendChild(labelElement);\n this.initialized = true;\n }\n getStyleClass() {\n let styleClass = 'p-button p-component';\n if (this.icon && !this.label) {\n styleClass = styleClass + ' p-button-icon-only';\n }\n if (this.loading) {\n styleClass = styleClass + ' p-disabled p-button-loading';\n if (!this.icon && this.label)\n styleClass = styleClass + ' p-button-loading-label-only';\n }\n return styleClass;\n }\n setStyleClass() {\n let styleClass = this.getStyleClass();\n this.el.nativeElement.className = styleClass + ' ' + this._initialStyleClass;\n }\n createIconEl() {\n let iconElement = document.createElement(\"span\");\n iconElement.className = 'p-button-icon';\n iconElement.setAttribute(\"aria-hidden\", \"true\");\n let iconPosClass = this.label ? 'p-button-icon-' + this.iconPos : null;\n if (iconPosClass) {\n DomHandler.addClass(iconElement, iconPosClass);\n }\n let iconClass = this.getIconClass();\n if (iconClass) {\n DomHandler.addMultipleClasses(iconElement, iconClass);\n }\n let labelEl = DomHandler.findSingle(this.el.nativeElement, '.p-button-label');\n if (labelEl)\n this.el.nativeElement.insertBefore(iconElement, labelEl);\n else\n this.el.nativeElement.appendChild(iconElement);\n }\n getIconClass() {\n return this.loading ? 'p-button-loading-icon ' + this.loadingIcon : this._icon;\n }\n setIconClass() {\n let iconElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-icon');\n if (iconElement) {\n if (this.iconPos)\n iconElement.className = 'p-button-icon p-button-icon-' + this.iconPos + ' ' + this.getIconClass();\n else\n iconElement.className = 'p-button-icon ' + this.getIconClass();\n }\n else {\n this.createIconEl();\n }\n }\n removeIconElement() {\n let iconElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-icon');\n this.el.nativeElement.removeChild(iconElement);\n }\n get label() {\n return this._label;\n }\n set label(val) {\n this._label = val;\n if (this.initialized) {\n DomHandler.findSingle(this.el.nativeElement, '.p-button-label').textContent = this._label || ' ';\n if (this.loading || this.icon) {\n this.setIconClass();\n }\n this.setStyleClass();\n }\n }\n get icon() {\n return this._icon;\n }\n set icon(val) {\n this._icon = val;\n if (this.initialized) {\n this.setIconClass();\n this.setStyleClass();\n }\n }\n get loading() {\n return this._loading;\n }\n set loading(val) {\n this._loading = val;\n if (this.initialized) {\n if (this.loading || this.icon)\n this.setIconClass();\n else\n this.removeIconElement();\n this.setStyleClass();\n }\n }\n ngOnDestroy() {\n this.initialized = false;\n }\n}\nButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ButtonDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ButtonDirective, selector: \"[pButton]\", inputs: { iconPos: \"iconPos\", loadingIcon: \"loadingIcon\", label: \"label\", icon: \"icon\", loading: \"loading\" }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ButtonDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[pButton]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { iconPos: [{\n type: Input\n }], loadingIcon: [{\n type: Input\n }], label: [{\n type: Input\n }], icon: [{\n type: Input\n }], loading: [{\n type: Input\n }] } });\nclass Button {\n constructor() {\n this.type = \"button\";\n this.iconPos = 'left';\n this.loading = false;\n this.loadingIcon = \"pi pi-spinner pi-spin\";\n this.onClick = new EventEmitter();\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n badgeStyleClass() {\n return {\n 'p-badge p-component': true,\n 'p-badge-no-gutter': this.badge && String(this.badge).length === 1\n };\n }\n}\nButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Button, deps: [], target: i0.ɵɵFactoryTarget.Component });\nButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Button, selector: \"p-button\", inputs: { type: \"type\", iconPos: \"iconPos\", icon: \"icon\", badge: \"badge\", label: \"label\", disabled: \"disabled\", loading: \"loading\", loadingIcon: \"loadingIcon\", style: \"style\", styleClass: \"styleClass\", badgeClass: \"badgeClass\", ariaLabel: \"ariaLabel\" }, outputs: { onClick: \"onClick\", onFocus: \"onFocus\", onBlur: \"onBlur\" }, host: { classAttribute: \"p-element\" }, queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], ngImport: i0, template: `\n \n `, isInline: true, directives: [{ type: i1.Ripple, selector: \"[pRipple]\" }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Button, decorators: [{\n type: Component,\n args: [{\n selector: 'p-button',\n template: `\n \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], propDecorators: { type: [{\n type: Input\n }], iconPos: [{\n type: Input\n }], icon: [{\n type: Input\n }], badge: [{\n type: Input\n }], label: [{\n type: Input\n }], disabled: [{\n type: Input\n }], loading: [{\n type: Input\n }], loadingIcon: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], badgeClass: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], onClick: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }] } });\nclass ButtonModule {\n}\nButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ButtonModule, declarations: [ButtonDirective, Button], imports: [CommonModule, RippleModule], exports: [ButtonDirective, Button] });\nButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ButtonModule, imports: [[CommonModule, RippleModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ButtonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, RippleModule],\n exports: [ButtonDirective, Button],\n declarations: [ButtonDirective, Button]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Button, ButtonDirective, ButtonModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, ViewChild, Output, NgModule } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i2 from 'primeng/inputtext';\nimport { InputTextModule } from 'primeng/inputtext';\nimport * as i3 from 'primeng/button';\nimport { ButtonModule } from 'primeng/button';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nconst INPUTNUMBER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputNumber),\n multi: true\n};\nclass InputNumber {\n constructor(el, cd) {\n this.el = el;\n this.cd = cd;\n this.showButtons = false;\n this.format = true;\n this.buttonLayout = \"stacked\";\n this.incrementButtonIcon = 'pi pi-angle-up';\n this.decrementButtonIcon = 'pi pi-angle-down';\n this.readonly = false;\n this.step = 1;\n this.allowEmpty = true;\n this.mode = \"decimal\";\n this.useGrouping = true;\n this.onInput = new EventEmitter();\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n this.onKeyDown = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n this.groupChar = '';\n this.prefixChar = '';\n this.suffixChar = '';\n }\n get disabled() {\n return this._disabled;\n }\n set disabled(disabled) {\n if (disabled)\n this.focused = false;\n this._disabled = disabled;\n if (this.timer)\n this.clearTimer();\n }\n ngOnChanges(simpleChange) {\n const props = ['locale', 'localeMatcher', 'mode', 'currency', 'currencyDisplay', 'useGrouping', 'minFractionDigits', 'maxFractionDigits', 'prefix', 'suffix'];\n if (props.some(p => !!simpleChange[p])) {\n this.updateConstructParser();\n }\n }\n ngOnInit() {\n this.constructParser();\n this.initialized = true;\n }\n getOptions() {\n return {\n localeMatcher: this.localeMatcher,\n style: this.mode,\n currency: this.currency,\n currencyDisplay: this.currencyDisplay,\n useGrouping: this.useGrouping,\n minimumFractionDigits: this.minFractionDigits,\n maximumFractionDigits: this.maxFractionDigits\n };\n }\n constructParser() {\n this.numberFormat = new Intl.NumberFormat(this.locale, this.getOptions());\n const numerals = [...new Intl.NumberFormat(this.locale, { useGrouping: false }).format(9876543210)].reverse();\n const index = new Map(numerals.map((d, i) => [d, i]));\n this._numeral = new RegExp(`[${numerals.join('')}]`, 'g');\n this._group = this.getGroupingExpression();\n this._minusSign = this.getMinusSignExpression();\n this._currency = this.getCurrencyExpression();\n this._decimal = this.getDecimalExpression();\n this._suffix = this.getSuffixExpression();\n this._prefix = this.getPrefixExpression();\n this._index = d => index.get(d);\n }\n updateConstructParser() {\n if (this.initialized) {\n this.constructParser();\n }\n }\n escapeRegExp(text) {\n return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n }\n getDecimalExpression() {\n const formatter = new Intl.NumberFormat(this.locale, Object.assign(Object.assign({}, this.getOptions()), { useGrouping: false }));\n return new RegExp(`[${formatter.format(1.1).replace(this._currency, '').trim().replace(this._numeral, '')}]`, 'g');\n }\n getGroupingExpression() {\n const formatter = new Intl.NumberFormat(this.locale, { useGrouping: true });\n this.groupChar = formatter.format(1000000).trim().replace(this._numeral, '').charAt(0);\n return new RegExp(`[${this.groupChar}]`, 'g');\n }\n getMinusSignExpression() {\n const formatter = new Intl.NumberFormat(this.locale, { useGrouping: false });\n return new RegExp(`[${formatter.format(-1).trim().replace(this._numeral, '')}]`, 'g');\n }\n getCurrencyExpression() {\n if (this.currency) {\n const formatter = new Intl.NumberFormat(this.locale, { style: 'currency', currency: this.currency, currencyDisplay: this.currencyDisplay,\n minimumFractionDigits: 0, maximumFractionDigits: 0 });\n return new RegExp(`[${formatter.format(1).replace(/\\s/g, '').replace(this._numeral, '').replace(this._group, '')}]`, 'g');\n }\n return new RegExp(`[]`, 'g');\n }\n getPrefixExpression() {\n if (this.prefix) {\n this.prefixChar = this.prefix;\n }\n else {\n const formatter = new Intl.NumberFormat(this.locale, { style: this.mode, currency: this.currency, currencyDisplay: this.currencyDisplay });\n this.prefixChar = formatter.format(1).split('1')[0];\n }\n return new RegExp(`${this.escapeRegExp(this.prefixChar || '')}`, 'g');\n }\n getSuffixExpression() {\n if (this.suffix) {\n this.suffixChar = this.suffix;\n }\n else {\n const formatter = new Intl.NumberFormat(this.locale, { style: this.mode, currency: this.currency, currencyDisplay: this.currencyDisplay,\n minimumFractionDigits: 0, maximumFractionDigits: 0 });\n this.suffixChar = formatter.format(1).split('1')[1];\n }\n return new RegExp(`${this.escapeRegExp(this.suffixChar || '')}`, 'g');\n }\n formatValue(value) {\n if (value != null) {\n if (value === '-') { // Minus sign\n return value;\n }\n if (this.format) {\n let formatter = new Intl.NumberFormat(this.locale, this.getOptions());\n let formattedValue = formatter.format(value);\n if (this.prefix) {\n formattedValue = this.prefix + formattedValue;\n }\n if (this.suffix) {\n formattedValue = formattedValue + this.suffix;\n }\n return formattedValue;\n }\n return value.toString();\n }\n return '';\n }\n parseValue(text) {\n let filteredText = text\n .replace(this._suffix, '')\n .replace(this._prefix, '')\n .trim()\n .replace(/\\s/g, '')\n .replace(this._currency, '')\n .replace(this._group, '')\n .replace(this._minusSign, '-')\n .replace(this._decimal, '.')\n .replace(this._numeral, this._index);\n if (filteredText) {\n if (filteredText === '-') // Minus sign\n return filteredText;\n let parsedValue = +filteredText;\n return isNaN(parsedValue) ? null : parsedValue;\n }\n return null;\n }\n repeat(event, interval, dir) {\n if (this.readonly) {\n return;\n }\n let i = interval || 500;\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(event, 40, dir);\n }, i);\n this.spin(event, dir);\n }\n spin(event, dir) {\n let step = this.step * dir;\n let currentValue = this.parseValue(this.input.nativeElement.value) || 0;\n let newValue = this.validateValue(currentValue + step);\n if (this.maxlength && this.maxlength < this.formatValue(newValue).length) {\n return;\n }\n this.updateInput(newValue, null, 'spin', null);\n this.updateModel(event, newValue);\n this.handleOnInput(event, currentValue, newValue);\n }\n onUpButtonMouseDown(event) {\n this.input.nativeElement.focus();\n this.repeat(event, null, 1);\n event.preventDefault();\n }\n onUpButtonMouseUp() {\n this.clearTimer();\n }\n onUpButtonMouseLeave() {\n this.clearTimer();\n }\n onUpButtonKeyDown(event) {\n if (event.keyCode === 32 || event.keyCode === 13) {\n this.repeat(event, null, 1);\n }\n }\n onUpButtonKeyUp() {\n this.clearTimer();\n }\n onDownButtonMouseDown(event) {\n this.input.nativeElement.focus();\n this.repeat(event, null, -1);\n event.preventDefault();\n }\n onDownButtonMouseUp() {\n this.clearTimer();\n }\n onDownButtonMouseLeave() {\n this.clearTimer();\n }\n onDownButtonKeyUp() {\n this.clearTimer();\n }\n onDownButtonKeyDown(event) {\n if (event.keyCode === 32 || event.keyCode === 13) {\n this.repeat(event, null, -1);\n }\n }\n onUserInput(event) {\n if (this.readonly) {\n return;\n }\n if (this.isSpecialChar) {\n event.target.value = this.lastValue;\n }\n this.isSpecialChar = false;\n }\n onInputKeyDown(event) {\n if (this.readonly) {\n return;\n }\n this.lastValue = event.target.value;\n if (event.shiftKey || event.altKey) {\n this.isSpecialChar = true;\n return;\n }\n let selectionStart = event.target.selectionStart;\n let selectionEnd = event.target.selectionEnd;\n let inputValue = event.target.value;\n let newValueStr = null;\n if (event.altKey) {\n event.preventDefault();\n }\n switch (event.which) {\n //up\n case 38:\n this.spin(event, 1);\n event.preventDefault();\n break;\n //down\n case 40:\n this.spin(event, -1);\n event.preventDefault();\n break;\n //left\n case 37:\n if (!this.isNumeralChar(inputValue.charAt(selectionStart - 1))) {\n event.preventDefault();\n }\n break;\n //right\n case 39:\n if (!this.isNumeralChar(inputValue.charAt(selectionStart))) {\n event.preventDefault();\n }\n break;\n //enter\n case 13:\n newValueStr = this.validateValue(this.parseValue(this.input.nativeElement.value));\n this.input.nativeElement.value = this.formatValue(newValueStr);\n this.input.nativeElement.setAttribute('aria-valuenow', newValueStr);\n this.updateModel(event, newValueStr);\n break;\n //backspace\n case 8: {\n event.preventDefault();\n if (selectionStart === selectionEnd) {\n const deleteChar = inputValue.charAt(selectionStart - 1);\n const { decimalCharIndex, decimalCharIndexWithoutPrefix } = this.getDecimalCharIndexes(inputValue);\n if (this.isNumeralChar(deleteChar)) {\n const decimalLength = this.getDecimalLength(inputValue);\n if (this._group.test(deleteChar)) {\n this._group.lastIndex = 0;\n newValueStr = inputValue.slice(0, selectionStart - 2) + inputValue.slice(selectionStart - 1);\n }\n else if (this._decimal.test(deleteChar)) {\n this._decimal.lastIndex = 0;\n if (decimalLength) {\n this.input.nativeElement.setSelectionRange(selectionStart - 1, selectionStart - 1);\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart - 1) + inputValue.slice(selectionStart);\n }\n }\n else if (decimalCharIndex > 0 && selectionStart > decimalCharIndex) {\n const insertedText = this.isDecimalMode() && (this.minFractionDigits || 0) < decimalLength ? '' : '0';\n newValueStr = inputValue.slice(0, selectionStart - 1) + insertedText + inputValue.slice(selectionStart);\n }\n else if (decimalCharIndexWithoutPrefix === 1) {\n newValueStr = inputValue.slice(0, selectionStart - 1) + '0' + inputValue.slice(selectionStart);\n newValueStr = this.parseValue(newValueStr) > 0 ? newValueStr : '';\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart - 1) + inputValue.slice(selectionStart);\n }\n }\n this.updateValue(event, newValueStr, null, 'delete-single');\n }\n else {\n newValueStr = this.deleteRange(inputValue, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, null, 'delete-range');\n }\n break;\n }\n // del\n case 46:\n event.preventDefault();\n if (selectionStart === selectionEnd) {\n const deleteChar = inputValue.charAt(selectionStart);\n const { decimalCharIndex, decimalCharIndexWithoutPrefix } = this.getDecimalCharIndexes(inputValue);\n if (this.isNumeralChar(deleteChar)) {\n const decimalLength = this.getDecimalLength(inputValue);\n if (this._group.test(deleteChar)) {\n this._group.lastIndex = 0;\n newValueStr = inputValue.slice(0, selectionStart) + inputValue.slice(selectionStart + 2);\n }\n else if (this._decimal.test(deleteChar)) {\n this._decimal.lastIndex = 0;\n if (decimalLength) {\n this.input.nativeElement.setSelectionRange(selectionStart + 1, selectionStart + 1);\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart) + inputValue.slice(selectionStart + 1);\n }\n }\n else if (decimalCharIndex > 0 && selectionStart > decimalCharIndex) {\n const insertedText = this.isDecimalMode() && (this.minFractionDigits || 0) < decimalLength ? '' : '0';\n newValueStr = inputValue.slice(0, selectionStart) + insertedText + inputValue.slice(selectionStart + 1);\n }\n else if (decimalCharIndexWithoutPrefix === 1) {\n newValueStr = inputValue.slice(0, selectionStart) + '0' + inputValue.slice(selectionStart + 1);\n newValueStr = this.parseValue(newValueStr) > 0 ? newValueStr : '';\n }\n else {\n newValueStr = inputValue.slice(0, selectionStart) + inputValue.slice(selectionStart + 1);\n }\n }\n this.updateValue(event, newValueStr, null, 'delete-back-single');\n }\n else {\n newValueStr = this.deleteRange(inputValue, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, null, 'delete-range');\n }\n break;\n default:\n break;\n }\n this.onKeyDown.emit(event);\n }\n onInputKeyPress(event) {\n if (this.readonly) {\n return;\n }\n event.preventDefault();\n let code = event.which || event.keyCode;\n let char = String.fromCharCode(code);\n const isDecimalSign = this.isDecimalSign(char);\n const isMinusSign = this.isMinusSign(char);\n if ((48 <= code && code <= 57) || isMinusSign || isDecimalSign) {\n this.insert(event, char, { isDecimalSign, isMinusSign });\n }\n }\n onPaste(event) {\n if (!this.disabled && !this.readonly) {\n event.preventDefault();\n let data = (event.clipboardData || window['clipboardData']).getData('Text');\n if (data) {\n let filteredData = this.parseValue(data);\n if (filteredData != null) {\n this.insert(event, filteredData.toString());\n }\n }\n }\n }\n allowMinusSign() {\n return this.min == null || this.min < 0;\n }\n isMinusSign(char) {\n if (this._minusSign.test(char) || char === '-') {\n this._minusSign.lastIndex = 0;\n return true;\n }\n return false;\n }\n isDecimalSign(char) {\n if (this._decimal.test(char)) {\n this._decimal.lastIndex = 0;\n return true;\n }\n return false;\n }\n isDecimalMode() {\n return this.mode === 'decimal';\n }\n getDecimalCharIndexes(val) {\n let decimalCharIndex = val.search(this._decimal);\n this._decimal.lastIndex = 0;\n const filteredVal = val.replace(this._prefix, '').trim().replace(/\\s/g, '').replace(this._currency, '');\n const decimalCharIndexWithoutPrefix = filteredVal.search(this._decimal);\n this._decimal.lastIndex = 0;\n return { decimalCharIndex, decimalCharIndexWithoutPrefix };\n }\n getCharIndexes(val) {\n const decimalCharIndex = val.search(this._decimal);\n this._decimal.lastIndex = 0;\n const minusCharIndex = val.search(this._minusSign);\n this._minusSign.lastIndex = 0;\n const suffixCharIndex = val.search(this._suffix);\n this._suffix.lastIndex = 0;\n const currencyCharIndex = val.search(this._currency);\n this._currency.lastIndex = 0;\n return { decimalCharIndex, minusCharIndex, suffixCharIndex, currencyCharIndex };\n }\n insert(event, text, sign = { isDecimalSign: false, isMinusSign: false }) {\n const minusCharIndexOnText = text.search(this._minusSign);\n this._minusSign.lastIndex = 0;\n if (!this.allowMinusSign() && minusCharIndexOnText !== -1) {\n return;\n }\n let selectionStart = this.input.nativeElement.selectionStart;\n let selectionEnd = this.input.nativeElement.selectionEnd;\n let inputValue = this.input.nativeElement.value.trim();\n const { decimalCharIndex, minusCharIndex, suffixCharIndex, currencyCharIndex } = this.getCharIndexes(inputValue);\n let newValueStr;\n if (sign.isMinusSign) {\n if (selectionStart === 0) {\n newValueStr = inputValue;\n if (minusCharIndex === -1 || selectionEnd !== 0) {\n newValueStr = this.insertText(inputValue, text, 0, selectionEnd);\n }\n this.updateValue(event, newValueStr, text, 'insert');\n }\n }\n else if (sign.isDecimalSign) {\n if (decimalCharIndex > 0 && selectionStart === decimalCharIndex) {\n this.updateValue(event, inputValue, text, 'insert');\n }\n else if (decimalCharIndex > selectionStart && decimalCharIndex < selectionEnd) {\n newValueStr = this.insertText(inputValue, text, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, text, 'insert');\n }\n else if (decimalCharIndex === -1 && this.maxFractionDigits) {\n newValueStr = this.insertText(inputValue, text, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, text, 'insert');\n }\n }\n else {\n const maxFractionDigits = this.numberFormat.resolvedOptions().maximumFractionDigits;\n const operation = selectionStart !== selectionEnd ? 'range-insert' : 'insert';\n if (decimalCharIndex > 0 && selectionStart > decimalCharIndex) {\n if ((selectionStart + text.length - (decimalCharIndex + 1)) <= maxFractionDigits) {\n const charIndex = currencyCharIndex >= selectionStart ? currencyCharIndex - 1 : (suffixCharIndex >= selectionStart ? suffixCharIndex : inputValue.length);\n newValueStr = inputValue.slice(0, selectionStart) + text + inputValue.slice(selectionStart + text.length, charIndex) + inputValue.slice(charIndex);\n this.updateValue(event, newValueStr, text, operation);\n }\n }\n else {\n newValueStr = this.insertText(inputValue, text, selectionStart, selectionEnd);\n this.updateValue(event, newValueStr, text, operation);\n }\n }\n }\n insertText(value, text, start, end) {\n let textSplit = text === '.' ? text : text.split('.');\n if (textSplit.length === 2) {\n const decimalCharIndex = value.slice(start, end).search(this._decimal);\n this._decimal.lastIndex = 0;\n return (decimalCharIndex > 0) ? value.slice(0, start) + this.formatValue(text) + value.slice(end) : (value || this.formatValue(text));\n }\n else if ((end - start) === value.length) {\n return this.formatValue(text);\n }\n else if (start === 0) {\n return text + value.slice(end);\n }\n else if (end === value.length) {\n return value.slice(0, start) + text;\n }\n else {\n return value.slice(0, start) + text + value.slice(end);\n }\n }\n deleteRange(value, start, end) {\n let newValueStr;\n if ((end - start) === value.length)\n newValueStr = '';\n else if (start === 0)\n newValueStr = value.slice(end);\n else if (end === value.length)\n newValueStr = value.slice(0, start);\n else\n newValueStr = value.slice(0, start) + value.slice(end);\n return newValueStr;\n }\n initCursor() {\n let selectionStart = this.input.nativeElement.selectionStart;\n let inputValue = this.input.nativeElement.value;\n let valueLength = inputValue.length;\n let index = null;\n // remove prefix\n let prefixLength = (this.prefixChar || '').length;\n inputValue = inputValue.replace(this._prefix, '');\n selectionStart = selectionStart - prefixLength;\n let char = inputValue.charAt(selectionStart);\n if (this.isNumeralChar(char)) {\n return selectionStart + prefixLength;\n }\n //left\n let i = selectionStart - 1;\n while (i >= 0) {\n char = inputValue.charAt(i);\n if (this.isNumeralChar(char)) {\n index = i + prefixLength;\n break;\n }\n else {\n i--;\n }\n }\n if (index !== null) {\n this.input.nativeElement.setSelectionRange(index + 1, index + 1);\n }\n else {\n i = selectionStart;\n while (i < valueLength) {\n char = inputValue.charAt(i);\n if (this.isNumeralChar(char)) {\n index = i + prefixLength;\n break;\n }\n else {\n i++;\n }\n }\n if (index !== null) {\n this.input.nativeElement.setSelectionRange(index, index);\n }\n }\n return index || 0;\n }\n onInputClick() {\n if (!this.readonly) {\n this.initCursor();\n }\n }\n isNumeralChar(char) {\n if (char.length === 1 && (this._numeral.test(char) || this._decimal.test(char) || this._group.test(char) || this._minusSign.test(char))) {\n this.resetRegex();\n return true;\n }\n return false;\n }\n resetRegex() {\n this._numeral.lastIndex = 0;\n this._decimal.lastIndex = 0;\n this._group.lastIndex = 0;\n this._minusSign.lastIndex = 0;\n }\n updateValue(event, valueStr, insertedValueStr, operation) {\n let currentValue = this.input.nativeElement.value;\n let newValue = null;\n if (valueStr != null) {\n newValue = this.parseValue(valueStr);\n newValue = !newValue && !this.allowEmpty ? 0 : newValue;\n this.updateInput(newValue, insertedValueStr, operation, valueStr);\n this.handleOnInput(event, currentValue, newValue);\n }\n }\n handleOnInput(event, currentValue, newValue) {\n if (this.isValueChanged(currentValue, newValue)) {\n this.onInput.emit({ originalEvent: event, value: newValue });\n }\n }\n isValueChanged(currentValue, newValue) {\n if (newValue === null && currentValue !== null) {\n return true;\n }\n if (newValue != null) {\n let parsedCurrentValue = (typeof currentValue === 'string') ? this.parseValue(currentValue) : currentValue;\n return newValue !== parsedCurrentValue;\n }\n return false;\n }\n validateValue(value) {\n if (value === '-' || value == null) {\n return null;\n }\n if (this.min != null && value < this.min) {\n return this.min;\n }\n if (this.max != null && value > this.max) {\n return this.max;\n }\n return value;\n }\n updateInput(value, insertedValueStr, operation, valueStr) {\n insertedValueStr = insertedValueStr || '';\n let inputValue = this.input.nativeElement.value;\n let newValue = this.formatValue(value);\n let currentLength = inputValue.length;\n if (newValue !== valueStr) {\n newValue = this.concatValues(newValue, valueStr);\n }\n if (currentLength === 0) {\n this.input.nativeElement.value = newValue;\n this.input.nativeElement.setSelectionRange(0, 0);\n const index = this.initCursor();\n const selectionEnd = index + insertedValueStr.length;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else {\n let selectionStart = this.input.nativeElement.selectionStart;\n let selectionEnd = this.input.nativeElement.selectionEnd;\n if (this.maxlength && this.maxlength < newValue.length) {\n return;\n }\n this.input.nativeElement.value = newValue;\n let newLength = newValue.length;\n if (operation === 'range-insert') {\n const startValue = this.parseValue((inputValue || '').slice(0, selectionStart));\n const startValueStr = startValue !== null ? startValue.toString() : '';\n const startExpr = startValueStr.split('').join(`(${this.groupChar})?`);\n const sRegex = new RegExp(startExpr, 'g');\n sRegex.test(newValue);\n const tExpr = insertedValueStr.split('').join(`(${this.groupChar})?`);\n const tRegex = new RegExp(tExpr, 'g');\n tRegex.test(newValue.slice(sRegex.lastIndex));\n selectionEnd = sRegex.lastIndex + tRegex.lastIndex;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else if (newLength === currentLength) {\n if (operation === 'insert' || operation === 'delete-back-single')\n this.input.nativeElement.setSelectionRange(selectionEnd + 1, selectionEnd + 1);\n else if (operation === 'delete-single')\n this.input.nativeElement.setSelectionRange(selectionEnd - 1, selectionEnd - 1);\n else if (operation === 'delete-range' || operation === 'spin')\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else if (operation === 'delete-back-single') {\n let prevChar = inputValue.charAt(selectionEnd - 1);\n let nextChar = inputValue.charAt(selectionEnd);\n let diff = currentLength - newLength;\n let isGroupChar = this._group.test(nextChar);\n if (isGroupChar && diff === 1) {\n selectionEnd += 1;\n }\n else if (!isGroupChar && this.isNumeralChar(prevChar)) {\n selectionEnd += (-1 * diff) + 1;\n }\n this._group.lastIndex = 0;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else if (inputValue === '-' && operation === 'insert') {\n this.input.nativeElement.setSelectionRange(0, 0);\n const index = this.initCursor();\n const selectionEnd = index + insertedValueStr.length + 1;\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n else {\n selectionEnd = selectionEnd + (newLength - currentLength);\n this.input.nativeElement.setSelectionRange(selectionEnd, selectionEnd);\n }\n }\n this.input.nativeElement.setAttribute('aria-valuenow', value);\n }\n concatValues(val1, val2) {\n if (val1 && val2) {\n let decimalCharIndex = val2.search(this._decimal);\n this._decimal.lastIndex = 0;\n return decimalCharIndex !== -1 ? (val1.split(this._decimal)[0] + val2.slice(decimalCharIndex)) : val1;\n }\n return val1;\n }\n getDecimalLength(value) {\n if (value) {\n const valueSplit = value.split(this._decimal);\n if (valueSplit.length === 2) {\n return valueSplit[1].replace(this._suffix, '')\n .trim()\n .replace(/\\s/g, '')\n .replace(this._currency, '').length;\n }\n }\n return 0;\n }\n onInputFocus(event) {\n this.focused = true;\n this.onFocus.emit(event);\n }\n onInputBlur(event) {\n this.focused = false;\n let newValue = this.validateValue(this.parseValue(this.input.nativeElement.value));\n this.input.nativeElement.value = this.formatValue(newValue);\n this.input.nativeElement.setAttribute('aria-valuenow', newValue);\n this.updateModel(event, newValue);\n this.onBlur.emit(event);\n }\n formattedValue() {\n const val = !this.value && !this.allowEmpty ? 0 : this.value;\n return this.formatValue(val);\n }\n updateModel(event, value) {\n if (this.value !== value) {\n this.value = value;\n this.onModelChange(value);\n }\n this.onModelTouched();\n }\n writeValue(value) {\n this.value = value;\n this.cd.markForCheck();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n get filled() {\n return (this.value != null && this.value.toString().length > 0);\n }\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n }\n }\n getFormatter() {\n return this.numberFormat;\n }\n}\nInputNumber.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputNumber, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nInputNumber.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: InputNumber, selector: \"p-inputNumber\", inputs: { showButtons: \"showButtons\", format: \"format\", buttonLayout: \"buttonLayout\", inputId: \"inputId\", styleClass: \"styleClass\", style: \"style\", placeholder: \"placeholder\", size: \"size\", maxlength: \"maxlength\", tabindex: \"tabindex\", title: \"title\", ariaLabel: \"ariaLabel\", ariaRequired: \"ariaRequired\", name: \"name\", required: \"required\", autocomplete: \"autocomplete\", min: \"min\", max: \"max\", incrementButtonClass: \"incrementButtonClass\", decrementButtonClass: \"decrementButtonClass\", incrementButtonIcon: \"incrementButtonIcon\", decrementButtonIcon: \"decrementButtonIcon\", readonly: \"readonly\", step: \"step\", allowEmpty: \"allowEmpty\", locale: \"locale\", localeMatcher: \"localeMatcher\", mode: \"mode\", currency: \"currency\", currencyDisplay: \"currencyDisplay\", useGrouping: \"useGrouping\", minFractionDigits: \"minFractionDigits\", maxFractionDigits: \"maxFractionDigits\", prefix: \"prefix\", suffix: \"suffix\", inputStyle: \"inputStyle\", inputStyleClass: \"inputStyleClass\", disabled: \"disabled\" }, outputs: { onInput: \"onInput\", onFocus: \"onFocus\", onBlur: \"onBlur\", onKeyDown: \"onKeyDown\" }, host: { properties: { \"class.p-inputwrapper-filled\": \"filled\", \"class.p-inputwrapper-focus\": \"focused\" }, classAttribute: \"p-element p-inputwrapper\" }, providers: [INPUTNUMBER_VALUE_ACCESSOR], viewQueries: [{ propertyName: \"input\", first: true, predicate: [\"input\"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `\n \n \n \n \n \n \n \n \n \n `, isInline: true, styles: [\"p-inputnumber,.p-inputnumber{display:inline-flex}.p-inputnumber-button{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label{display:none}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up{border-top-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-input{border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-button-group{display:flex;flex-direction:column}.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button{flex:1 1 auto}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{order:3;border-top-left-radius:0;border-bottom-left-radius:0}.p-inputnumber-buttons-horizontal .p-inputnumber-input{order:2;border-radius:0}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{order:1;border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-vertical{flex-direction:column}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up{order:1;border-bottom-left-radius:0;border-bottom-right-radius:0;width:100%}.p-inputnumber-buttons-vertical .p-inputnumber-input{order:2;border-radius:0;text-align:center}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down{order:3;border-top-left-radius:0;border-top-right-radius:0;width:100%}.p-inputnumber-input{flex:1 1 auto}.p-fluid p-inputnumber,.p-fluid .p-inputnumber{width:100%}.p-fluid .p-inputnumber .p-inputnumber-input{width:1%}.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input{width:100%}\\n\"], directives: [{ type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i1.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.InputText, selector: \"[pInputText]\" }, { type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i3.ButtonDirective, selector: \"[pButton]\", inputs: [\"iconPos\", \"loadingIcon\", \"label\", \"icon\", \"loading\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputNumber, decorators: [{\n type: Component,\n args: [{ selector: 'p-inputNumber', template: `\n \n \n \n \n \n \n \n \n \n `, changeDetection: ChangeDetectionStrategy.OnPush, providers: [INPUTNUMBER_VALUE_ACCESSOR], encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focused'\n }, styles: [\"p-inputnumber,.p-inputnumber{display:inline-flex}.p-inputnumber-button{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label{display:none}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up{border-top-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-input{border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;padding:0}.p-inputnumber-buttons-stacked .p-inputnumber-button-group{display:flex;flex-direction:column}.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button{flex:1 1 auto}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{order:3;border-top-left-radius:0;border-bottom-left-radius:0}.p-inputnumber-buttons-horizontal .p-inputnumber-input{order:2;border-radius:0}.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{order:1;border-top-right-radius:0;border-bottom-right-radius:0}.p-inputnumber-buttons-vertical{flex-direction:column}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up{order:1;border-bottom-left-radius:0;border-bottom-right-radius:0;width:100%}.p-inputnumber-buttons-vertical .p-inputnumber-input{order:2;border-radius:0;text-align:center}.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down{order:3;border-top-left-radius:0;border-top-right-radius:0;width:100%}.p-inputnumber-input{flex:1 1 auto}.p-fluid p-inputnumber,.p-fluid .p-inputnumber{width:100%}.p-fluid .p-inputnumber .p-inputnumber-input{width:1%}.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input{width:100%}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { showButtons: [{\n type: Input\n }], format: [{\n type: Input\n }], buttonLayout: [{\n type: Input\n }], inputId: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], style: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], size: [{\n type: Input\n }], maxlength: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], title: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], ariaRequired: [{\n type: Input\n }], name: [{\n type: Input\n }], required: [{\n type: Input\n }], autocomplete: [{\n type: Input\n }], min: [{\n type: Input\n }], max: [{\n type: Input\n }], incrementButtonClass: [{\n type: Input\n }], decrementButtonClass: [{\n type: Input\n }], incrementButtonIcon: [{\n type: Input\n }], decrementButtonIcon: [{\n type: Input\n }], readonly: [{\n type: Input\n }], step: [{\n type: Input\n }], allowEmpty: [{\n type: Input\n }], locale: [{\n type: Input\n }], localeMatcher: [{\n type: Input\n }], mode: [{\n type: Input\n }], currency: [{\n type: Input\n }], currencyDisplay: [{\n type: Input\n }], useGrouping: [{\n type: Input\n }], minFractionDigits: [{\n type: Input\n }], maxFractionDigits: [{\n type: Input\n }], prefix: [{\n type: Input\n }], suffix: [{\n type: Input\n }], inputStyle: [{\n type: Input\n }], inputStyleClass: [{\n type: Input\n }], input: [{\n type: ViewChild,\n args: ['input']\n }], onInput: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], onKeyDown: [{\n type: Output\n }], disabled: [{\n type: Input\n }] } });\nclass InputNumberModule {\n}\nInputNumberModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputNumberModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nInputNumberModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputNumberModule, declarations: [InputNumber], imports: [CommonModule, InputTextModule, ButtonModule], exports: [InputNumber] });\nInputNumberModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputNumberModule, imports: [[CommonModule, InputTextModule, ButtonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InputNumberModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, InputTextModule, ButtonModule],\n exports: [InputNumber],\n declarations: [InputNumber]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { INPUTNUMBER_VALUE_ACCESSOR, InputNumber, InputNumberModule };\n","import * as i0 from '@angular/core';\nimport { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, NgModule } from '@angular/core';\nimport * as i3 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i5 from '@angular/forms';\nimport { FormsModule } from '@angular/forms';\nimport * as i1 from 'primeng/dropdown';\nimport { DropdownModule } from 'primeng/dropdown';\nimport * as i4 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport * as i6 from 'primeng/api';\nimport { SharedModule } from 'primeng/api';\nimport * as i2 from 'primeng/inputnumber';\nimport { InputNumberModule } from 'primeng/inputnumber';\n\nclass Paginator {\n constructor(cd) {\n this.cd = cd;\n this.pageLinkSize = 5;\n this.onPageChange = new EventEmitter();\n this.alwaysShow = true;\n this.dropdownScrollHeight = '200px';\n this.currentPageReportTemplate = '{currentPage} of {totalPages}';\n this.showFirstLastIcon = true;\n this.totalRecords = 0;\n this.rows = 0;\n this.showPageLinks = true;\n this._first = 0;\n this._page = 0;\n }\n ngOnInit() {\n this.updatePaginatorState();\n }\n ngOnChanges(simpleChange) {\n if (simpleChange.totalRecords) {\n this.updatePageLinks();\n this.updatePaginatorState();\n this.updateFirst();\n this.updateRowsPerPageOptions();\n }\n if (simpleChange.first) {\n this._first = simpleChange.first.currentValue;\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n if (simpleChange.rows) {\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n if (simpleChange.rowsPerPageOptions) {\n this.updateRowsPerPageOptions();\n }\n }\n get first() {\n return this._first;\n }\n set first(val) {\n this._first = val;\n }\n updateRowsPerPageOptions() {\n if (this.rowsPerPageOptions) {\n this.rowsPerPageItems = [];\n for (let opt of this.rowsPerPageOptions) {\n if (typeof opt == 'object' && opt['showAll']) {\n this.rowsPerPageItems.unshift({ label: opt['showAll'], value: this.totalRecords });\n }\n else {\n this.rowsPerPageItems.push({ label: String(opt), value: opt });\n }\n }\n }\n }\n isFirstPage() {\n return this.getPage() === 0;\n }\n isLastPage() {\n return this.getPage() === this.getPageCount() - 1;\n }\n getPageCount() {\n return Math.ceil(this.totalRecords / this.rows);\n }\n calculatePageLinkBoundaries() {\n let numberOfPages = this.getPageCount(), visiblePages = Math.min(this.pageLinkSize, numberOfPages);\n //calculate range, keep current in middle if necessary\n let start = Math.max(0, Math.ceil(this.getPage() - ((visiblePages) / 2))), end = Math.min(numberOfPages - 1, start + visiblePages - 1);\n //check when approaching to last page\n var delta = this.pageLinkSize - (end - start + 1);\n start = Math.max(0, start - delta);\n return [start, end];\n }\n updatePageLinks() {\n this.pageLinks = [];\n let boundaries = this.calculatePageLinkBoundaries(), start = boundaries[0], end = boundaries[1];\n for (let i = start; i <= end; i++) {\n this.pageLinks.push(i + 1);\n }\n if (this.showJumpToPageDropdown) {\n this.pageItems = [];\n for (let i = 0; i < this.getPageCount(); i++) {\n this.pageItems.push({ label: String(i + 1), value: i });\n }\n }\n }\n changePage(p) {\n var pc = this.getPageCount();\n if (p >= 0 && p < pc) {\n this._first = this.rows * p;\n var state = {\n page: p,\n first: this.first,\n rows: this.rows,\n pageCount: pc\n };\n this.updatePageLinks();\n this.onPageChange.emit(state);\n this.updatePaginatorState();\n }\n }\n updateFirst() {\n const page = this.getPage();\n if (page > 0 && this.totalRecords && (this.first >= this.totalRecords)) {\n Promise.resolve(null).then(() => this.changePage(page - 1));\n }\n }\n getPage() {\n return Math.floor(this.first / this.rows);\n }\n changePageToFirst(event) {\n if (!this.isFirstPage()) {\n this.changePage(0);\n }\n event.preventDefault();\n }\n changePageToPrev(event) {\n this.changePage(this.getPage() - 1);\n event.preventDefault();\n }\n changePageToNext(event) {\n this.changePage(this.getPage() + 1);\n event.preventDefault();\n }\n changePageToLast(event) {\n if (!this.isLastPage()) {\n this.changePage(this.getPageCount() - 1);\n }\n event.preventDefault();\n }\n onPageLinkClick(event, page) {\n this.changePage(page);\n event.preventDefault();\n }\n onRppChange(event) {\n this.changePage(this.getPage());\n }\n onPageDropdownChange(event) {\n this.changePage(event.value);\n }\n updatePaginatorState() {\n this.paginatorState = {\n page: this.getPage(),\n pageCount: this.getPageCount(),\n rows: this.rows,\n first: this.first,\n totalRecords: this.totalRecords\n };\n }\n empty() {\n return this.getPageCount() === 0;\n }\n currentPage() {\n return this.getPageCount() > 0 ? this.getPage() + 1 : 0;\n }\n get currentPageReport() {\n return this.currentPageReportTemplate\n .replace(\"{currentPage}\", String(this.currentPage()))\n .replace(\"{totalPages}\", String(this.getPageCount()))\n .replace(\"{first}\", String((this.totalRecords > 0) ? this._first + 1 : 0))\n .replace(\"{last}\", String(Math.min(this._first + this.rows, this.totalRecords)))\n .replace(\"{rows}\", String(this.rows))\n .replace(\"{totalRecords}\", String(this.totalRecords));\n }\n}\nPaginator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Paginator, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nPaginator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Paginator, selector: \"p-paginator\", inputs: { pageLinkSize: \"pageLinkSize\", style: \"style\", styleClass: \"styleClass\", alwaysShow: \"alwaysShow\", templateLeft: \"templateLeft\", templateRight: \"templateRight\", dropdownAppendTo: \"dropdownAppendTo\", dropdownScrollHeight: \"dropdownScrollHeight\", currentPageReportTemplate: \"currentPageReportTemplate\", showCurrentPageReport: \"showCurrentPageReport\", showFirstLastIcon: \"showFirstLastIcon\", totalRecords: \"totalRecords\", rows: \"rows\", rowsPerPageOptions: \"rowsPerPageOptions\", showJumpToPageDropdown: \"showJumpToPageDropdown\", showJumpToPageInput: \"showJumpToPageInput\", showPageLinks: \"showPageLinks\", dropdownItemTemplate: \"dropdownItemTemplate\", first: \"first\" }, outputs: { onPageChange: \"onPageChange\" }, host: { classAttribute: \"p-element\" }, usesOnChanges: true, ngImport: i0, template: `\n
    1)\">\n
    \n \n
    \n {{currentPageReport}}\n \n \n \n \n \n \n {{currentPageReport}}\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n `, isInline: true, styles: [\".p-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.p-paginator-left-content{margin-right:auto}.p-paginator-right-content{margin-left:auto}.p-paginator-page,.p-paginator-next,.p-paginator-last,.p-paginator-first,.p-paginator-prev,.p-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.p-paginator-element:focus{z-index:1;position:relative}\\n\"], components: [{ type: i1.Dropdown, selector: \"p-dropdown\", inputs: [\"scrollHeight\", \"filter\", \"name\", \"style\", \"panelStyle\", \"styleClass\", \"panelStyleClass\", \"readonly\", \"required\", \"editable\", \"appendTo\", \"tabindex\", \"placeholder\", \"filterPlaceholder\", \"filterLocale\", \"inputId\", \"selectId\", \"dataKey\", \"filterBy\", \"autofocus\", \"resetFilterOnHide\", \"dropdownIcon\", \"optionLabel\", \"optionValue\", \"optionDisabled\", \"optionGroupLabel\", \"optionGroupChildren\", \"autoDisplayFirst\", \"group\", \"showClear\", \"emptyFilterMessage\", \"emptyMessage\", \"virtualScroll\", \"itemSize\", \"autoZIndex\", \"baseZIndex\", \"showTransitionOptions\", \"hideTransitionOptions\", \"ariaFilterLabel\", \"ariaLabel\", \"ariaLabelledBy\", \"filterMatchMode\", \"maxlength\", \"tooltip\", \"tooltipPosition\", \"tooltipPositionStyle\", \"tooltipStyleClass\", \"autofocusFilter\", \"disabled\", \"options\", \"filterValue\"], outputs: [\"onChange\", \"onFilter\", \"onFocus\", \"onBlur\", \"onClick\", \"onShow\", \"onHide\", \"onClear\"] }, { type: i2.InputNumber, selector: \"p-inputNumber\", inputs: [\"showButtons\", \"format\", \"buttonLayout\", \"inputId\", \"styleClass\", \"style\", \"placeholder\", \"size\", \"maxlength\", \"tabindex\", \"title\", \"ariaLabel\", \"ariaRequired\", \"name\", \"required\", \"autocomplete\", \"min\", \"max\", \"incrementButtonClass\", \"decrementButtonClass\", \"incrementButtonIcon\", \"decrementButtonIcon\", \"readonly\", \"step\", \"allowEmpty\", \"locale\", \"localeMatcher\", \"mode\", \"currency\", \"currencyDisplay\", \"useGrouping\", \"minFractionDigits\", \"maxFractionDigits\", \"prefix\", \"suffix\", \"inputStyle\", \"inputStyleClass\", \"disabled\"], outputs: [\"onInput\", \"onFocus\", \"onBlur\", \"onKeyDown\"] }], directives: [{ type: i3.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i3.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i3.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i3.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i4.Ripple, selector: \"[pRipple]\" }, { type: i3.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i5.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { type: i5.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { type: i6.PrimeTemplate, selector: \"[pTemplate]\", inputs: [\"type\", \"pTemplate\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Paginator, decorators: [{\n type: Component,\n args: [{ selector: 'p-paginator', template: `\n
    1)\">\n
    \n \n
    \n {{currentPageReport}}\n \n \n \n \n \n \n {{currentPageReport}}\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n `, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element'\n }, styles: [\".p-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.p-paginator-left-content{margin-right:auto}.p-paginator-right-content{margin-left:auto}.p-paginator-page,.p-paginator-next,.p-paginator-last,.p-paginator-first,.p-paginator-prev,.p-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.p-paginator-element:focus{z-index:1;position:relative}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { pageLinkSize: [{\n type: Input\n }], onPageChange: [{\n type: Output\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], alwaysShow: [{\n type: Input\n }], templateLeft: [{\n type: Input\n }], templateRight: [{\n type: Input\n }], dropdownAppendTo: [{\n type: Input\n }], dropdownScrollHeight: [{\n type: Input\n }], currentPageReportTemplate: [{\n type: Input\n }], showCurrentPageReport: [{\n type: Input\n }], showFirstLastIcon: [{\n type: Input\n }], totalRecords: [{\n type: Input\n }], rows: [{\n type: Input\n }], rowsPerPageOptions: [{\n type: Input\n }], showJumpToPageDropdown: [{\n type: Input\n }], showJumpToPageInput: [{\n type: Input\n }], showPageLinks: [{\n type: Input\n }], dropdownItemTemplate: [{\n type: Input\n }], first: [{\n type: Input\n }] } });\nclass PaginatorModule {\n}\nPaginatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PaginatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nPaginatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PaginatorModule, declarations: [Paginator], imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule], exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule] });\nPaginatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PaginatorModule, imports: [[CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule], DropdownModule, InputNumberModule, FormsModule, SharedModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: PaginatorModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule],\n exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule],\n declarations: [Paginator]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Paginator, PaginatorModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, TemplateRef, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChild, NgModule } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport { ObjectUtils } from 'primeng/utils';\nimport * as i2 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nconst SELECTBUTTON_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SelectButton),\n multi: true\n};\nclass SelectButton {\n constructor(cd) {\n this.cd = cd;\n this.tabindex = 0;\n this.onOptionClick = new EventEmitter();\n this.onChange = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n }\n getOptionLabel(option) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : (option.label != undefined ? option.label : option);\n }\n getOptionValue(option) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : (this.optionLabel || option.value === undefined ? option : option.value);\n }\n isOptionDisabled(option) {\n return this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : (option.disabled !== undefined ? option.disabled : false);\n }\n writeValue(value) {\n this.value = value;\n this.cd.markForCheck();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n onItemClick(event, option, index) {\n if (this.disabled || this.isOptionDisabled(option)) {\n return;\n }\n if (this.multiple) {\n if (this.isSelected(option))\n this.removeOption(option);\n else\n this.value = [...(this.value || []), this.getOptionValue(option)];\n }\n else {\n this.value = this.getOptionValue(option);\n }\n this.onOptionClick.emit({\n originalEvent: event,\n option: option,\n index: index\n });\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n onBlur() {\n this.onModelTouched();\n }\n removeOption(option) {\n this.value = this.value.filter(val => !ObjectUtils.equals(val, this.getOptionValue(option), this.dataKey));\n }\n isSelected(option) {\n let selected = false;\n let optionValue = this.getOptionValue(option);\n if (this.multiple) {\n if (this.value) {\n for (let val of this.value) {\n if (ObjectUtils.equals(val, optionValue, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n }\n else {\n selected = ObjectUtils.equals(this.getOptionValue(option), this.value, this.dataKey);\n }\n return selected;\n }\n}\nSelectButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectButton, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nSelectButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: SelectButton, selector: \"p-selectButton\", inputs: { options: \"options\", optionLabel: \"optionLabel\", optionValue: \"optionValue\", optionDisabled: \"optionDisabled\", tabindex: \"tabindex\", multiple: \"multiple\", style: \"style\", styleClass: \"styleClass\", ariaLabelledBy: \"ariaLabelledBy\", disabled: \"disabled\", dataKey: \"dataKey\" }, outputs: { onOptionClick: \"onOptionClick\", onChange: \"onChange\" }, host: { classAttribute: \"p-element\" }, providers: [SELECTBUTTON_VALUE_ACCESSOR], queries: [{ propertyName: \"itemTemplate\", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: `\n
    \n
    \n \n \n {{getOptionLabel(option)}}\n \n \n \n \n
    \n
    \n `, isInline: true, styles: [\".p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default}.p-button-icon-only{justify-content:center}.p-button-icon-only .p-button-label{visibility:hidden;width:0;flex:0 0 auto}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-buttonset .p-button{margin:0}.p-buttonset .p-button:not(:last-child){border-right:0 none}.p-buttonset .p-button:not(:first-of-type):not(:last-of-type){border-radius:0}.p-buttonset .p-button:first-of-type{border-top-right-radius:0;border-bottom-right-radius:0}.p-buttonset .p-button:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}.p-buttonset .p-button:focus{position:relative;z-index:1}.p-button-label{transition:all .2s}\\n\"], directives: [{ type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i1.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i1.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i2.Ripple, selector: \"[pRipple]\" }, { type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i1.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectButton, decorators: [{\n type: Component,\n args: [{ selector: 'p-selectButton', template: `\n
    \n
    \n \n \n {{getOptionLabel(option)}}\n \n \n \n \n
    \n
    \n `, providers: [SELECTBUTTON_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element'\n }, styles: [\".p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default}.p-button-icon-only{justify-content:center}.p-button-icon-only .p-button-label{visibility:hidden;width:0;flex:0 0 auto}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-buttonset .p-button{margin:0}.p-buttonset .p-button:not(:last-child){border-right:0 none}.p-buttonset .p-button:not(:first-of-type):not(:last-of-type){border-radius:0}.p-buttonset .p-button:first-of-type{border-top-right-radius:0;border-bottom-right-radius:0}.p-buttonset .p-button:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}.p-buttonset .p-button:focus{position:relative;z-index:1}.p-button-label{transition:all .2s}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { options: [{\n type: Input\n }], optionLabel: [{\n type: Input\n }], optionValue: [{\n type: Input\n }], optionDisabled: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], multiple: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], disabled: [{\n type: Input\n }], dataKey: [{\n type: Input\n }], onOptionClick: [{\n type: Output\n }], onChange: [{\n type: Output\n }], itemTemplate: [{\n type: ContentChild,\n args: [TemplateRef]\n }] } });\nclass SelectButtonModule {\n}\nSelectButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nSelectButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectButtonModule, declarations: [SelectButton], imports: [CommonModule, RippleModule], exports: [SelectButton] });\nSelectButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectButtonModule, imports: [[CommonModule, RippleModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectButtonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, RippleModule],\n exports: [SelectButton],\n declarations: [SelectButton]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { SELECTBUTTON_VALUE_ACCESSOR, SelectButton, SelectButtonModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, NgModule } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nconst TRISTATECHECKBOX_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TriStateCheckbox),\n multi: true\n};\nclass TriStateCheckbox {\n constructor(cd) {\n this.cd = cd;\n this.checkboxTrueIcon = 'pi pi-check';\n this.checkboxFalseIcon = 'pi pi-times';\n this.onChange = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n }\n onClick(event, input) {\n if (!this.disabled && !this.readonly) {\n this.toggle(event);\n this.focused = true;\n input.focus();\n }\n }\n onKeydown(event) {\n if (event.keyCode == 32) {\n event.preventDefault();\n }\n }\n onKeyup(event) {\n if (event.keyCode == 32 && !this.readonly) {\n this.toggle(event);\n event.preventDefault();\n }\n }\n toggle(event) {\n if (this.value == null || this.value == undefined)\n this.value = true;\n else if (this.value == true)\n this.value = false;\n else if (this.value == false)\n this.value = null;\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n this.onModelTouched();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n writeValue(value) {\n this.value = value;\n this.cd.markForCheck();\n }\n setDisabledState(disabled) {\n this.disabled = disabled;\n this.cd.markForCheck();\n }\n}\nTriStateCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TriStateCheckbox, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTriStateCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: TriStateCheckbox, selector: \"p-triStateCheckbox\", inputs: { disabled: \"disabled\", name: \"name\", ariaLabelledBy: \"ariaLabelledBy\", tabindex: \"tabindex\", inputId: \"inputId\", style: \"style\", styleClass: \"styleClass\", label: \"label\", readonly: \"readonly\", checkboxTrueIcon: \"checkboxTrueIcon\", checkboxFalseIcon: \"checkboxFalseIcon\" }, outputs: { onChange: \"onChange\" }, host: { classAttribute: \"p-element\" }, providers: [TRISTATECHECKBOX_VALUE_ACCESSOR], ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n `, isInline: true, directives: [{ type: i1.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TriStateCheckbox, decorators: [{\n type: Component,\n args: [{\n selector: 'p-triStateCheckbox',\n template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n `,\n providers: [TRISTATECHECKBOX_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], name: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], inputId: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], label: [{\n type: Input\n }], readonly: [{\n type: Input\n }], checkboxTrueIcon: [{\n type: Input\n }], checkboxFalseIcon: [{\n type: Input\n }], onChange: [{\n type: Output\n }] } });\nclass TriStateCheckboxModule {\n}\nTriStateCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TriStateCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nTriStateCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TriStateCheckboxModule, declarations: [TriStateCheckbox], imports: [CommonModule], exports: [TriStateCheckbox] });\nTriStateCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TriStateCheckboxModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TriStateCheckboxModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [TriStateCheckbox],\n declarations: [TriStateCheckbox]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { TRISTATECHECKBOX_VALUE_ACCESSOR, TriStateCheckbox, TriStateCheckboxModule };\n","import * as i0 from '@angular/core';\nimport { forwardRef, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChildren, ViewChild, NgModule } from '@angular/core';\nimport { trigger, state, style, transition, animate } from '@angular/animations';\nimport * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i3 from 'primeng/button';\nimport { ButtonModule } from 'primeng/button';\nimport * as i4 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport * as i1 from 'primeng/api';\nimport { TranslationKeys, PrimeTemplate, SharedModule } from 'primeng/api';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';\n\nconst CALENDAR_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Calendar),\n multi: true\n};\nclass Calendar {\n constructor(el, renderer, cd, zone, config, overlayService) {\n this.el = el;\n this.renderer = renderer;\n this.cd = cd;\n this.zone = zone;\n this.config = config;\n this.overlayService = overlayService;\n this.multipleSeparator = ',';\n this.rangeSeparator = '-';\n this.inline = false;\n this.showOtherMonths = true;\n this.icon = 'pi pi-calendar';\n this.shortYearCutoff = '+10';\n this.hourFormat = '24';\n this.stepHour = 1;\n this.stepMinute = 1;\n this.stepSecond = 1;\n this.showSeconds = false;\n this.showOnFocus = true;\n this.showWeek = false;\n this.dataType = 'date';\n this.selectionMode = 'single';\n this.todayButtonStyleClass = 'p-button-text';\n this.clearButtonStyleClass = 'p-button-text';\n this.autoZIndex = true;\n this.baseZIndex = 0;\n this.keepInvalid = false;\n this.hideOnDateTimeSelect = true;\n this.timeSeparator = \":\";\n this.focusTrap = true;\n this.showTransitionOptions = '.12s cubic-bezier(0, 0, 0.2, 1)';\n this.hideTransitionOptions = '.1s linear';\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n this.onClose = new EventEmitter();\n this.onSelect = new EventEmitter();\n this.onInput = new EventEmitter();\n this.onTodayClick = new EventEmitter();\n this.onClearClick = new EventEmitter();\n this.onMonthChange = new EventEmitter();\n this.onYearChange = new EventEmitter();\n this.onClickOutside = new EventEmitter();\n this.onShow = new EventEmitter();\n this.onModelChange = () => { };\n this.onModelTouched = () => { };\n this.inputFieldValue = null;\n this.navigationState = null;\n this._numberOfMonths = 1;\n this._view = 'date';\n this.convertTo24Hour = function (hours, pm) {\n if (this.hourFormat == '12') {\n if (hours === 12) {\n return (pm ? 12 : 0);\n }\n else {\n return (pm ? hours + 12 : hours);\n }\n }\n return hours;\n };\n }\n set content(content) {\n this.contentViewChild = content;\n if (this.contentViewChild) {\n if (this.isMonthNavigate) {\n Promise.resolve(null).then(() => this.updateFocus());\n this.isMonthNavigate = false;\n }\n else {\n if (!this.focus) {\n this.initFocusableCell();\n }\n }\n }\n }\n ;\n get view() {\n return this._view;\n }\n ;\n set view(view) {\n this._view = view;\n this.currentView = this._view;\n }\n get defaultDate() {\n return this._defaultDate;\n }\n ;\n set defaultDate(defaultDate) {\n this._defaultDate = defaultDate;\n if (this.initialized) {\n const date = defaultDate || new Date();\n this.currentMonth = date.getMonth();\n this.currentYear = date.getFullYear();\n this.initTime(date);\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get minDate() {\n return this._minDate;\n }\n set minDate(date) {\n this._minDate = date;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get maxDate() {\n return this._maxDate;\n }\n set maxDate(date) {\n this._maxDate = date;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get disabledDates() {\n return this._disabledDates;\n }\n set disabledDates(disabledDates) {\n this._disabledDates = disabledDates;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get disabledDays() {\n return this._disabledDays;\n }\n set disabledDays(disabledDays) {\n this._disabledDays = disabledDays;\n if (this.currentMonth != undefined && this.currentMonth != null && this.currentYear) {\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n get yearRange() {\n return this._yearRange;\n }\n set yearRange(yearRange) {\n this._yearRange = yearRange;\n if (yearRange) {\n const years = yearRange.split(':');\n const yearStart = parseInt(years[0]);\n const yearEnd = parseInt(years[1]);\n this.populateYearOptions(yearStart, yearEnd);\n }\n }\n get showTime() {\n return this._showTime;\n }\n set showTime(showTime) {\n this._showTime = showTime;\n if (this.currentHour === undefined) {\n this.initTime(this.value || new Date());\n }\n this.updateInputfield();\n }\n get locale() {\n return this._locale;\n }\n get responsiveOptions() {\n return this._responsiveOptions;\n }\n ;\n set responsiveOptions(responsiveOptions) {\n this._responsiveOptions = responsiveOptions;\n this.destroyResponsiveStyleElement();\n this.createResponsiveStyle();\n }\n get numberOfMonths() {\n return this._numberOfMonths;\n }\n set numberOfMonths(numberOfMonths) {\n this._numberOfMonths = numberOfMonths;\n this.destroyResponsiveStyleElement();\n this.createResponsiveStyle();\n }\n get firstDayOfWeek() {\n return this._firstDayOfWeek;\n }\n set firstDayOfWeek(firstDayOfWeek) {\n this._firstDayOfWeek = firstDayOfWeek;\n this.createWeekDays();\n }\n set locale(newLocale) {\n console.warn(\"Locale property has no effect, use new i18n API instead.\");\n }\n ngOnInit() {\n this.attributeSelector = UniqueComponentId();\n const date = this.defaultDate || new Date();\n this.createResponsiveStyle();\n this.currentMonth = date.getMonth();\n this.currentYear = date.getFullYear();\n this.currentView = this.view;\n if (this.view === 'date') {\n this.createWeekDays();\n this.initTime(date);\n this.createMonths(this.currentMonth, this.currentYear);\n this.ticksTo1970 = (((1970 - 1) * 365 + Math.floor(1970 / 4) - Math.floor(1970 / 100) + Math.floor(1970 / 400)) * 24 * 60 * 60 * 10000000);\n }\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.createWeekDays();\n });\n this.initialized = true;\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'date':\n this.dateTemplate = item.template;\n break;\n case 'decade':\n this.decadeTemplate = item.template;\n break;\n case 'disabledDate':\n this.disabledDateTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n default:\n this.dateTemplate = item.template;\n break;\n }\n });\n }\n ngAfterViewInit() {\n if (this.inline) {\n this.contentViewChild && this.contentViewChild.nativeElement.setAttribute(this.attributeSelector, '');\n if (!this.disabled) {\n this.initFocusableCell();\n if (this.numberOfMonths === 1) {\n this.contentViewChild.nativeElement.style.width = DomHandler.getOuterWidth(this.containerViewChild.nativeElement) + 'px';\n }\n }\n }\n }\n getTranslation(option) {\n return this.config.getTranslation(option);\n }\n populateYearOptions(start, end) {\n this.yearOptions = [];\n for (let i = start; i <= end; i++) {\n this.yearOptions.push(i);\n }\n }\n createWeekDays() {\n this.weekDays = [];\n let dayIndex = this.getFirstDateOfWeek();\n let dayLabels = this.getTranslation(TranslationKeys.DAY_NAMES_MIN);\n for (let i = 0; i < 7; i++) {\n this.weekDays.push(dayLabels[dayIndex]);\n dayIndex = (dayIndex == 6) ? 0 : ++dayIndex;\n }\n }\n monthPickerValues() {\n let monthPickerValues = [];\n for (let i = 0; i <= 11; i++) {\n monthPickerValues.push(this.config.getTranslation('monthNamesShort')[i]);\n }\n return monthPickerValues;\n }\n yearPickerValues() {\n let yearPickerValues = [];\n let base = this.currentYear - (this.currentYear % 10);\n for (let i = 0; i < 10; i++) {\n yearPickerValues.push(base + i);\n }\n return yearPickerValues;\n }\n createMonths(month, year) {\n this.months = this.months = [];\n for (let i = 0; i < this.numberOfMonths; i++) {\n let m = month + i;\n let y = year;\n if (m > 11) {\n m = m % 11 - 1;\n y = year + 1;\n }\n this.months.push(this.createMonth(m, y));\n }\n }\n getWeekNumber(date) {\n let checkDate = new Date(date.getTime());\n checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7));\n let time = checkDate.getTime();\n checkDate.setMonth(0);\n checkDate.setDate(1);\n return Math.floor(Math.round((time - checkDate.getTime()) / 86400000) / 7) + 1;\n }\n createMonth(month, year) {\n let dates = [];\n let firstDay = this.getFirstDayOfMonthIndex(month, year);\n let daysLength = this.getDaysCountInMonth(month, year);\n let prevMonthDaysLength = this.getDaysCountInPrevMonth(month, year);\n let dayNo = 1;\n let today = new Date();\n let weekNumbers = [];\n let monthRows = Math.ceil((daysLength + firstDay) / 7);\n for (let i = 0; i < monthRows; i++) {\n let week = [];\n if (i == 0) {\n for (let j = (prevMonthDaysLength - firstDay + 1); j <= prevMonthDaysLength; j++) {\n let prev = this.getPreviousMonthAndYear(month, year);\n week.push({ day: j, month: prev.month, year: prev.year, otherMonth: true,\n today: this.isToday(today, j, prev.month, prev.year), selectable: this.isSelectable(j, prev.month, prev.year, true) });\n }\n let remainingDaysLength = 7 - week.length;\n for (let j = 0; j < remainingDaysLength; j++) {\n week.push({ day: dayNo, month: month, year: year, today: this.isToday(today, dayNo, month, year),\n selectable: this.isSelectable(dayNo, month, year, false) });\n dayNo++;\n }\n }\n else {\n for (let j = 0; j < 7; j++) {\n if (dayNo > daysLength) {\n let next = this.getNextMonthAndYear(month, year);\n week.push({ day: dayNo - daysLength, month: next.month, year: next.year, otherMonth: true,\n today: this.isToday(today, dayNo - daysLength, next.month, next.year),\n selectable: this.isSelectable((dayNo - daysLength), next.month, next.year, true) });\n }\n else {\n week.push({ day: dayNo, month: month, year: year, today: this.isToday(today, dayNo, month, year),\n selectable: this.isSelectable(dayNo, month, year, false) });\n }\n dayNo++;\n }\n }\n if (this.showWeek) {\n weekNumbers.push(this.getWeekNumber(new Date(week[0].year, week[0].month, week[0].day)));\n }\n dates.push(week);\n }\n return {\n month: month,\n year: year,\n dates: dates,\n weekNumbers: weekNumbers\n };\n }\n initTime(date) {\n this.pm = date.getHours() > 11;\n if (this.showTime) {\n this.currentMinute = date.getMinutes();\n this.currentSecond = date.getSeconds();\n this.setCurrentHourPM(date.getHours());\n }\n else if (this.timeOnly) {\n this.currentMinute = 0;\n this.currentHour = 0;\n this.currentSecond = 0;\n }\n }\n navBackward(event) {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n this.isMonthNavigate = true;\n if (this.currentView === 'month') {\n this.decrementYear();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else if (this.currentView === 'year') {\n this.decrementDecade();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else {\n if (this.currentMonth === 0) {\n this.currentMonth = 11;\n this.decrementYear();\n }\n else {\n this.currentMonth--;\n }\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n navForward(event) {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n this.isMonthNavigate = true;\n if (this.currentView === 'month') {\n this.incrementYear();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else if (this.currentView === 'year') {\n this.incrementDecade();\n setTimeout(() => {\n this.updateFocus();\n }, 1);\n }\n else {\n if (this.currentMonth === 11) {\n this.currentMonth = 0;\n this.incrementYear();\n }\n else {\n this.currentMonth++;\n }\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n }\n decrementYear() {\n this.currentYear--;\n if (this.yearNavigator && this.currentYear < this.yearOptions[0]) {\n let difference = this.yearOptions[this.yearOptions.length - 1] - this.yearOptions[0];\n this.populateYearOptions(this.yearOptions[0] - difference, this.yearOptions[this.yearOptions.length - 1] - difference);\n }\n }\n decrementDecade() {\n this.currentYear = this.currentYear - 10;\n }\n incrementDecade() {\n this.currentYear = this.currentYear + 10;\n }\n incrementYear() {\n this.currentYear++;\n if (this.yearNavigator && this.currentYear > this.yearOptions[this.yearOptions.length - 1]) {\n let difference = this.yearOptions[this.yearOptions.length - 1] - this.yearOptions[0];\n this.populateYearOptions(this.yearOptions[0] + difference, this.yearOptions[this.yearOptions.length - 1] + difference);\n }\n }\n switchToMonthView(event) {\n this.currentView = 'month';\n this.cd.detectChanges();\n this.alignOverlay();\n event.preventDefault();\n }\n switchToYearView(event) {\n this.currentView = 'year';\n this.cd.detectChanges();\n this.alignOverlay();\n event.preventDefault();\n }\n onDateSelect(event, dateMeta) {\n if (this.disabled || !dateMeta.selectable) {\n event.preventDefault();\n return;\n }\n if (this.isMultipleSelection() && this.isSelected(dateMeta)) {\n this.value = this.value.filter((date, i) => {\n return !this.isDateEquals(date, dateMeta);\n });\n if (this.value.length === 0) {\n this.value = null;\n }\n this.updateModel(this.value);\n }\n else {\n if (this.shouldSelectDate(dateMeta)) {\n this.selectDate(dateMeta);\n }\n }\n if (this.isSingleSelection() && this.hideOnDateTimeSelect) {\n setTimeout(() => {\n event.preventDefault();\n this.hideOverlay();\n if (this.mask) {\n this.disableModality();\n }\n this.cd.markForCheck();\n }, 150);\n }\n this.updateInputfield();\n event.preventDefault();\n }\n shouldSelectDate(dateMeta) {\n if (this.isMultipleSelection())\n return this.maxDateCount != null ? this.maxDateCount > (this.value ? this.value.length : 0) : true;\n else\n return true;\n }\n onMonthSelect(event, index) {\n if (this.view === 'month') {\n this.onDateSelect(event, { year: this.currentYear, month: index, day: 1, selectable: true });\n }\n else {\n this.currentMonth = index;\n this.currentView = 'date';\n this.createMonths(this.currentMonth, this.currentYear);\n this.cd.markForCheck();\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n }\n }\n onYearSelect(event, year) {\n if (this.view === 'year') {\n this.onDateSelect(event, { year: year, month: 0, day: 1, selectable: true });\n }\n else {\n this.currentYear = year;\n this.currentView = 'month';\n this.onYearChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n }\n }\n updateInputfield() {\n let formattedValue = '';\n if (this.value) {\n if (this.isSingleSelection()) {\n formattedValue = this.formatDateTime(this.value);\n }\n else if (this.isMultipleSelection()) {\n for (let i = 0; i < this.value.length; i++) {\n let dateAsString = this.formatDateTime(this.value[i]);\n formattedValue += dateAsString;\n if (i !== (this.value.length - 1)) {\n formattedValue += this.multipleSeparator + ' ';\n }\n }\n }\n else if (this.isRangeSelection()) {\n if (this.value && this.value.length) {\n let startDate = this.value[0];\n let endDate = this.value[1];\n formattedValue = this.formatDateTime(startDate);\n if (endDate) {\n formattedValue += ' ' + this.rangeSeparator + ' ' + this.formatDateTime(endDate);\n }\n }\n }\n }\n this.inputFieldValue = formattedValue;\n this.updateFilledState();\n if (this.inputfieldViewChild && this.inputfieldViewChild.nativeElement) {\n this.inputfieldViewChild.nativeElement.value = this.inputFieldValue;\n }\n }\n formatDateTime(date) {\n let formattedValue = this.keepInvalid ? date : null;\n if (this.isValidDate(date)) {\n if (this.timeOnly) {\n formattedValue = this.formatTime(date);\n }\n else {\n formattedValue = this.formatDate(date, this.getDateFormat());\n if (this.showTime) {\n formattedValue += ' ' + this.formatTime(date);\n }\n }\n }\n return formattedValue;\n }\n setCurrentHourPM(hours) {\n if (this.hourFormat == '12') {\n this.pm = hours > 11;\n if (hours >= 12) {\n this.currentHour = (hours == 12) ? 12 : hours - 12;\n }\n else {\n this.currentHour = (hours == 0) ? 12 : hours;\n }\n }\n else {\n this.currentHour = hours;\n }\n }\n selectDate(dateMeta) {\n let date = new Date(dateMeta.year, dateMeta.month, dateMeta.day);\n if (this.showTime) {\n if (this.hourFormat == '12') {\n if (this.currentHour === 12)\n date.setHours(this.pm ? 12 : 0);\n else\n date.setHours(this.pm ? this.currentHour + 12 : this.currentHour);\n }\n else {\n date.setHours(this.currentHour);\n }\n date.setMinutes(this.currentMinute);\n date.setSeconds(this.currentSecond);\n }\n if (this.minDate && this.minDate > date) {\n date = this.minDate;\n this.setCurrentHourPM(date.getHours());\n this.currentMinute = date.getMinutes();\n this.currentSecond = date.getSeconds();\n }\n if (this.maxDate && this.maxDate < date) {\n date = this.maxDate;\n this.setCurrentHourPM(date.getHours());\n this.currentMinute = date.getMinutes();\n this.currentSecond = date.getSeconds();\n }\n if (this.isSingleSelection()) {\n this.updateModel(date);\n }\n else if (this.isMultipleSelection()) {\n this.updateModel(this.value ? [...this.value, date] : [date]);\n }\n else if (this.isRangeSelection()) {\n if (this.value && this.value.length) {\n let startDate = this.value[0];\n let endDate = this.value[1];\n if (!endDate && date.getTime() >= startDate.getTime()) {\n endDate = date;\n }\n else {\n startDate = date;\n endDate = null;\n }\n this.updateModel([startDate, endDate]);\n }\n else {\n this.updateModel([date, null]);\n }\n }\n this.onSelect.emit(date);\n }\n updateModel(value) {\n this.value = value;\n if (this.dataType == 'date') {\n this.onModelChange(this.value);\n }\n else if (this.dataType == 'string') {\n if (this.isSingleSelection()) {\n this.onModelChange(this.formatDateTime(this.value));\n }\n else {\n let stringArrValue = null;\n if (this.value) {\n stringArrValue = this.value.map(date => this.formatDateTime(date));\n }\n this.onModelChange(stringArrValue);\n }\n }\n }\n getFirstDayOfMonthIndex(month, year) {\n let day = new Date();\n day.setDate(1);\n day.setMonth(month);\n day.setFullYear(year);\n let dayIndex = day.getDay() + this.getSundayIndex();\n return dayIndex >= 7 ? dayIndex - 7 : dayIndex;\n }\n getDaysCountInMonth(month, year) {\n return 32 - this.daylightSavingAdjust(new Date(year, month, 32)).getDate();\n }\n getDaysCountInPrevMonth(month, year) {\n let prev = this.getPreviousMonthAndYear(month, year);\n return this.getDaysCountInMonth(prev.month, prev.year);\n }\n getPreviousMonthAndYear(month, year) {\n let m, y;\n if (month === 0) {\n m = 11;\n y = year - 1;\n }\n else {\n m = month - 1;\n y = year;\n }\n return { 'month': m, 'year': y };\n }\n getNextMonthAndYear(month, year) {\n let m, y;\n if (month === 11) {\n m = 0;\n y = year + 1;\n }\n else {\n m = month + 1;\n y = year;\n }\n return { 'month': m, 'year': y };\n }\n getSundayIndex() {\n let firstDayOfWeek = this.getFirstDateOfWeek();\n return firstDayOfWeek > 0 ? 7 - firstDayOfWeek : 0;\n }\n isSelected(dateMeta) {\n if (this.value) {\n if (this.isSingleSelection()) {\n return this.isDateEquals(this.value, dateMeta);\n }\n else if (this.isMultipleSelection()) {\n let selected = false;\n for (let date of this.value) {\n selected = this.isDateEquals(date, dateMeta);\n if (selected) {\n break;\n }\n }\n return selected;\n }\n else if (this.isRangeSelection()) {\n if (this.value[1])\n return this.isDateEquals(this.value[0], dateMeta) || this.isDateEquals(this.value[1], dateMeta) || this.isDateBetween(this.value[0], this.value[1], dateMeta);\n else\n return this.isDateEquals(this.value[0], dateMeta);\n }\n }\n else {\n return false;\n }\n }\n isComparable() {\n return this.value != null && typeof this.value !== 'string';\n }\n isMonthSelected(month) {\n if (this.isComparable()) {\n let value = this.isRangeSelection() ? this.value[0] : this.value;\n return !this.isMultipleSelection() ? (value.getMonth() === month && value.getFullYear() === this.currentYear) : false;\n }\n return false;\n }\n isYearSelected(year) {\n if (this.isComparable()) {\n let value = this.isRangeSelection() ? this.value[0] : this.value;\n return !this.isMultipleSelection() ? (value.getFullYear() === year) : false;\n }\n return false;\n }\n isDateEquals(value, dateMeta) {\n if (value && value instanceof Date)\n return value.getDate() === dateMeta.day && value.getMonth() === dateMeta.month && value.getFullYear() === dateMeta.year;\n else\n return false;\n }\n isDateBetween(start, end, dateMeta) {\n let between = false;\n if (start && end) {\n let date = new Date(dateMeta.year, dateMeta.month, dateMeta.day);\n return start.getTime() <= date.getTime() && end.getTime() >= date.getTime();\n }\n return between;\n }\n isSingleSelection() {\n return this.selectionMode === 'single';\n }\n isRangeSelection() {\n return this.selectionMode === 'range';\n }\n isMultipleSelection() {\n return this.selectionMode === 'multiple';\n }\n isToday(today, day, month, year) {\n return today.getDate() === day && today.getMonth() === month && today.getFullYear() === year;\n }\n isSelectable(day, month, year, otherMonth) {\n let validMin = true;\n let validMax = true;\n let validDate = true;\n let validDay = true;\n if (otherMonth && !this.selectOtherMonths) {\n return false;\n }\n if (this.minDate) {\n if (this.minDate.getFullYear() > year) {\n validMin = false;\n }\n else if (this.minDate.getFullYear() === year) {\n if (this.minDate.getMonth() > month) {\n validMin = false;\n }\n else if (this.minDate.getMonth() === month) {\n if (this.minDate.getDate() > day) {\n validMin = false;\n }\n }\n }\n }\n if (this.maxDate) {\n if (this.maxDate.getFullYear() < year) {\n validMax = false;\n }\n else if (this.maxDate.getFullYear() === year) {\n if (this.maxDate.getMonth() < month) {\n validMax = false;\n }\n else if (this.maxDate.getMonth() === month) {\n if (this.maxDate.getDate() < day) {\n validMax = false;\n }\n }\n }\n }\n if (this.disabledDates) {\n validDate = !this.isDateDisabled(day, month, year);\n }\n if (this.disabledDays) {\n validDay = !this.isDayDisabled(day, month, year);\n }\n return validMin && validMax && validDate && validDay;\n }\n isDateDisabled(day, month, year) {\n if (this.disabledDates) {\n for (let disabledDate of this.disabledDates) {\n if (disabledDate.getFullYear() === year && disabledDate.getMonth() === month && disabledDate.getDate() === day) {\n return true;\n }\n }\n }\n return false;\n }\n isDayDisabled(day, month, year) {\n if (this.disabledDays) {\n let weekday = new Date(year, month, day);\n let weekdayNumber = weekday.getDay();\n return this.disabledDays.indexOf(weekdayNumber) !== -1;\n }\n return false;\n }\n onInputFocus(event) {\n this.focus = true;\n if (this.showOnFocus) {\n this.showOverlay();\n }\n this.onFocus.emit(event);\n }\n onInputClick() {\n if (this.showOnFocus && !this.overlayVisible) {\n this.showOverlay();\n }\n }\n onInputBlur(event) {\n this.focus = false;\n this.onBlur.emit(event);\n if (!this.keepInvalid) {\n this.updateInputfield();\n }\n this.onModelTouched();\n }\n onButtonClick(event, inputfield) {\n if (!this.overlayVisible) {\n inputfield.focus();\n this.showOverlay();\n }\n else {\n this.hideOverlay();\n }\n }\n onOverlayClick(event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n getMonthName(index) {\n return this.config.getTranslation('monthNames')[index];\n }\n getYear(month) {\n return this.currentView === 'month' ? this.currentYear : month.year;\n }\n switchViewButtonDisabled() {\n return this.numberOfMonths > 1 || this.disabled;\n }\n onPrevButtonClick(event) {\n this.navigationState = { backward: true, button: true };\n this.navBackward(event);\n }\n onNextButtonClick(event) {\n this.navigationState = { backward: false, button: true };\n this.navForward(event);\n }\n onContainerButtonKeydown(event) {\n switch (event.which) {\n //tab\n case 9:\n if (!this.inline) {\n this.trapFocus(event);\n }\n break;\n //escape\n case 27:\n this.overlayVisible = false;\n event.preventDefault();\n break;\n default:\n //Noop\n break;\n }\n }\n onInputKeydown(event) {\n this.isKeydown = true;\n if (event.keyCode === 40 && this.contentViewChild) {\n this.trapFocus(event);\n }\n else if (event.keyCode === 27) {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n event.preventDefault();\n }\n }\n else if (event.keyCode === 13) {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n event.preventDefault();\n }\n }\n else if (event.keyCode === 9 && this.contentViewChild) {\n DomHandler.getFocusableElements(this.contentViewChild.nativeElement).forEach(el => el.tabIndex = '-1');\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n }\n }\n onDateCellKeydown(event, date, groupIndex) {\n const cellContent = event.currentTarget;\n const cell = cellContent.parentElement;\n switch (event.which) {\n //down arrow\n case 40: {\n cellContent.tabIndex = '-1';\n let cellIndex = DomHandler.index(cell);\n let nextRow = cell.parentElement.nextElementSibling;\n if (nextRow) {\n let focusCell = nextRow.children[cellIndex].children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled')) {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n else {\n nextRow.children[cellIndex].children[0].tabIndex = '0';\n nextRow.children[cellIndex].children[0].focus();\n }\n }\n else {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n event.preventDefault();\n break;\n }\n //up arrow\n case 38: {\n cellContent.tabIndex = '-1';\n let cellIndex = DomHandler.index(cell);\n let prevRow = cell.parentElement.previousElementSibling;\n if (prevRow) {\n let focusCell = prevRow.children[cellIndex].children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled')) {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n else {\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n event.preventDefault();\n break;\n }\n //left arrow\n case 37: {\n cellContent.tabIndex = '-1';\n let prevCell = cell.previousElementSibling;\n if (prevCell) {\n let focusCell = prevCell.children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled') || DomHandler.hasClass(focusCell.parentElement, 'p-datepicker-weeknumber')) {\n this.navigateToMonth(true, groupIndex);\n }\n else {\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n this.navigateToMonth(true, groupIndex);\n }\n event.preventDefault();\n break;\n }\n //right arrow\n case 39: {\n cellContent.tabIndex = '-1';\n let nextCell = cell.nextElementSibling;\n if (nextCell) {\n let focusCell = nextCell.children[0];\n if (DomHandler.hasClass(focusCell, 'p-disabled')) {\n this.navigateToMonth(false, groupIndex);\n }\n else {\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n this.navigateToMonth(false, groupIndex);\n }\n event.preventDefault();\n break;\n }\n //enter\n //space\n case 13:\n case 32: {\n this.onDateSelect(event, date);\n event.preventDefault();\n break;\n }\n //escape\n case 27: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //tab\n case 9: {\n if (!this.inline) {\n this.trapFocus(event);\n }\n break;\n }\n default:\n //no op\n break;\n }\n }\n onMonthCellKeydown(event, index) {\n const cell = event.currentTarget;\n switch (event.which) {\n //arrows\n case 38:\n case 40: {\n cell.tabIndex = '-1';\n var cells = cell.parentElement.children;\n var cellIndex = DomHandler.index(cell);\n let nextCell = cells[event.which === 40 ? cellIndex + 3 : cellIndex - 3];\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n event.preventDefault();\n break;\n }\n //left arrow\n case 37: {\n cell.tabIndex = '-1';\n let prevCell = cell.previousElementSibling;\n if (prevCell) {\n prevCell.tabIndex = '0';\n prevCell.focus();\n }\n else {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n event.preventDefault();\n break;\n }\n //right arrow\n case 39: {\n cell.tabIndex = '-1';\n let nextCell = cell.nextElementSibling;\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n else {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n event.preventDefault();\n break;\n }\n //enter\n case 13: {\n this.onMonthSelect(event, index);\n event.preventDefault();\n break;\n }\n //enter\n //space\n case 13:\n case 32: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //escape\n case 27: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //tab\n case 9: {\n if (!this.inline) {\n this.trapFocus(event);\n }\n break;\n }\n default:\n //no op\n break;\n }\n }\n onYearCellKeydown(event, index) {\n const cell = event.currentTarget;\n switch (event.which) {\n //arrows\n case 38:\n case 40: {\n cell.tabIndex = '-1';\n var cells = cell.parentElement.children;\n var cellIndex = DomHandler.index(cell);\n let nextCell = cells[event.which === 40 ? cellIndex + 2 : cellIndex - 2];\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n event.preventDefault();\n break;\n }\n //left arrow\n case 37: {\n cell.tabIndex = '-1';\n let prevCell = cell.previousElementSibling;\n if (prevCell) {\n prevCell.tabIndex = '0';\n prevCell.focus();\n }\n else {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n event.preventDefault();\n break;\n }\n //right arrow\n case 39: {\n cell.tabIndex = '-1';\n let nextCell = cell.nextElementSibling;\n if (nextCell) {\n nextCell.tabIndex = '0';\n nextCell.focus();\n }\n else {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n event.preventDefault();\n break;\n }\n //enter\n //space\n case 13:\n case 32: {\n this.onYearSelect(event, index);\n event.preventDefault();\n break;\n }\n //escape\n case 27: {\n this.overlayVisible = false;\n event.preventDefault();\n break;\n }\n //tab\n case 9: {\n this.trapFocus(event);\n break;\n }\n default:\n //no op\n break;\n }\n }\n navigateToMonth(prev, groupIndex) {\n if (prev) {\n if (this.numberOfMonths === 1 || (groupIndex === 0)) {\n this.navigationState = { backward: true };\n this.navBackward(event);\n }\n else {\n let prevMonthContainer = this.contentViewChild.nativeElement.children[groupIndex - 1];\n let cells = DomHandler.find(prevMonthContainer, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n let focusCell = cells[cells.length - 1];\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n else {\n if (this.numberOfMonths === 1 || (groupIndex === this.numberOfMonths - 1)) {\n this.navigationState = { backward: false };\n this.navForward(event);\n }\n else {\n let nextMonthContainer = this.contentViewChild.nativeElement.children[groupIndex + 1];\n let focusCell = DomHandler.findSingle(nextMonthContainer, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n focusCell.tabIndex = '0';\n focusCell.focus();\n }\n }\n }\n updateFocus() {\n let cell;\n if (this.navigationState) {\n if (this.navigationState.button) {\n this.initFocusableCell();\n if (this.navigationState.backward)\n DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-prev').focus();\n else\n DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-next').focus();\n }\n else {\n if (this.navigationState.backward) {\n let cells;\n if (this.currentView === 'month') {\n cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');\n }\n else if (this.currentView === 'year') {\n cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');\n }\n else {\n cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n }\n if (cells && cells.length > 0) {\n cell = cells[cells.length - 1];\n }\n }\n else {\n if (this.currentView === 'month') {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');\n }\n else if (this.currentView === 'year') {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');\n }\n else {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n }\n }\n if (cell) {\n cell.tabIndex = '0';\n cell.focus();\n }\n }\n this.navigationState = null;\n }\n else {\n this.initFocusableCell();\n }\n }\n initFocusableCell() {\n let cell;\n if (this.currentView === 'month') {\n let cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');\n let selectedCell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month.p-highlight');\n cells.forEach(cell => cell.tabIndex = -1);\n cell = selectedCell || cells[0];\n if (cells.length === 0) {\n let disabledCells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month.p-disabled[tabindex = \"0\"]');\n disabledCells.forEach(cell => cell.tabIndex = -1);\n }\n }\n else if (this.currentView === 'year') {\n let cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');\n let selectedCell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year.p-highlight');\n cells.forEach(cell => cell.tabIndex = -1);\n cell = selectedCell || cells[0];\n if (cells.length === 0) {\n let disabledCells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year.p-disabled[tabindex = \"0\"]');\n disabledCells.forEach(cell => cell.tabIndex = -1);\n }\n }\n else {\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, 'span.p-highlight');\n if (!cell) {\n let todayCell = DomHandler.findSingle(this.contentViewChild.nativeElement, 'td.p-datepicker-today span:not(.p-disabled):not(.p-ink)');\n if (todayCell)\n cell = todayCell;\n else\n cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');\n }\n }\n if (cell) {\n cell.tabIndex = '0';\n if (!this.preventFocus && (!this.navigationState || !this.navigationState.button)) {\n setTimeout(() => {\n cell.focus();\n }, 1);\n }\n this.preventFocus = false;\n }\n }\n trapFocus(event) {\n let focusableElements = DomHandler.getFocusableElements(this.contentViewChild.nativeElement);\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n }\n else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0) {\n if (this.focusTrap) {\n focusableElements[focusableElements.length - 1].focus();\n }\n else {\n if (focusedIndex === -1)\n return this.hideOverlay();\n else if (focusedIndex === 0)\n return;\n }\n }\n else {\n focusableElements[focusedIndex - 1].focus();\n }\n }\n else {\n if (focusedIndex == -1 || focusedIndex === (focusableElements.length - 1)) {\n if (!this.focusTrap && focusedIndex != -1)\n return this.hideOverlay();\n else\n focusableElements[0].focus();\n }\n else {\n focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n event.preventDefault();\n }\n onMonthDropdownChange(m) {\n this.currentMonth = parseInt(m);\n this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n onYearDropdownChange(y) {\n this.currentYear = parseInt(y);\n this.onYearChange.emit({ month: this.currentMonth + 1, year: this.currentYear });\n this.createMonths(this.currentMonth, this.currentYear);\n }\n validateTime(hour, minute, second, pm) {\n let value = this.value;\n const convertedHour = this.convertTo24Hour(hour, pm);\n if (this.isRangeSelection()) {\n value = this.value[1] || this.value[0];\n }\n if (this.isMultipleSelection()) {\n value = this.value[this.value.length - 1];\n }\n const valueDateString = value ? value.toDateString() : null;\n if (this.minDate && valueDateString && this.minDate.toDateString() === valueDateString) {\n if (this.minDate.getHours() > convertedHour) {\n return false;\n }\n if (this.minDate.getHours() === convertedHour) {\n if (this.minDate.getMinutes() > minute) {\n return false;\n }\n if (this.minDate.getMinutes() === minute) {\n if (this.minDate.getSeconds() > second) {\n return false;\n }\n }\n }\n }\n if (this.maxDate && valueDateString && this.maxDate.toDateString() === valueDateString) {\n if (this.maxDate.getHours() < convertedHour) {\n return false;\n }\n if (this.maxDate.getHours() === convertedHour) {\n if (this.maxDate.getMinutes() < minute) {\n return false;\n }\n if (this.maxDate.getMinutes() === minute) {\n if (this.maxDate.getSeconds() < second) {\n return false;\n }\n }\n }\n }\n return true;\n }\n incrementHour(event) {\n const prevHour = this.currentHour;\n let newHour = this.currentHour + this.stepHour;\n let newPM = this.pm;\n if (this.hourFormat == '24')\n newHour = (newHour >= 24) ? (newHour - 24) : newHour;\n else if (this.hourFormat == '12') {\n // Before the AM/PM break, now after\n if (prevHour < 12 && newHour > 11) {\n newPM = !this.pm;\n }\n newHour = (newHour >= 13) ? (newHour - 12) : newHour;\n }\n if (this.validateTime(newHour, this.currentMinute, this.currentSecond, newPM)) {\n this.currentHour = newHour;\n this.pm = newPM;\n }\n event.preventDefault();\n }\n onTimePickerElementMouseDown(event, type, direction) {\n if (!this.disabled) {\n this.repeat(event, null, type, direction);\n event.preventDefault();\n }\n }\n onTimePickerElementMouseUp(event) {\n if (!this.disabled) {\n this.clearTimePickerTimer();\n this.updateTime();\n }\n }\n onTimePickerElementMouseLeave() {\n if (!this.disabled && this.timePickerTimer) {\n this.clearTimePickerTimer();\n this.updateTime();\n }\n }\n repeat(event, interval, type, direction) {\n let i = interval || 500;\n this.clearTimePickerTimer();\n this.timePickerTimer = setTimeout(() => {\n this.repeat(event, 100, type, direction);\n this.cd.markForCheck();\n }, i);\n switch (type) {\n case 0:\n if (direction === 1)\n this.incrementHour(event);\n else\n this.decrementHour(event);\n break;\n case 1:\n if (direction === 1)\n this.incrementMinute(event);\n else\n this.decrementMinute(event);\n break;\n case 2:\n if (direction === 1)\n this.incrementSecond(event);\n else\n this.decrementSecond(event);\n break;\n }\n this.updateInputfield();\n }\n clearTimePickerTimer() {\n if (this.timePickerTimer) {\n clearTimeout(this.timePickerTimer);\n this.timePickerTimer = null;\n }\n }\n decrementHour(event) {\n let newHour = this.currentHour - this.stepHour;\n let newPM = this.pm;\n if (this.hourFormat == '24')\n newHour = (newHour < 0) ? (24 + newHour) : newHour;\n else if (this.hourFormat == '12') {\n // If we were at noon/midnight, then switch\n if (this.currentHour === 12) {\n newPM = !this.pm;\n }\n newHour = (newHour <= 0) ? (12 + newHour) : newHour;\n }\n if (this.validateTime(newHour, this.currentMinute, this.currentSecond, newPM)) {\n this.currentHour = newHour;\n this.pm = newPM;\n }\n event.preventDefault();\n }\n incrementMinute(event) {\n let newMinute = this.currentMinute + this.stepMinute;\n newMinute = (newMinute > 59) ? newMinute - 60 : newMinute;\n if (this.validateTime(this.currentHour, newMinute, this.currentSecond, this.pm)) {\n this.currentMinute = newMinute;\n }\n event.preventDefault();\n }\n decrementMinute(event) {\n let newMinute = this.currentMinute - this.stepMinute;\n newMinute = (newMinute < 0) ? 60 + newMinute : newMinute;\n if (this.validateTime(this.currentHour, newMinute, this.currentSecond, this.pm)) {\n this.currentMinute = newMinute;\n }\n event.preventDefault();\n }\n incrementSecond(event) {\n let newSecond = this.currentSecond + this.stepSecond;\n newSecond = (newSecond > 59) ? newSecond - 60 : newSecond;\n if (this.validateTime(this.currentHour, this.currentMinute, newSecond, this.pm)) {\n this.currentSecond = newSecond;\n }\n event.preventDefault();\n }\n decrementSecond(event) {\n let newSecond = this.currentSecond - this.stepSecond;\n newSecond = (newSecond < 0) ? 60 + newSecond : newSecond;\n if (this.validateTime(this.currentHour, this.currentMinute, newSecond, this.pm)) {\n this.currentSecond = newSecond;\n }\n event.preventDefault();\n }\n updateTime() {\n let value = this.value;\n if (this.isRangeSelection()) {\n value = this.value[1] || this.value[0];\n }\n if (this.isMultipleSelection()) {\n value = this.value[this.value.length - 1];\n }\n value = value ? new Date(value.getTime()) : new Date();\n if (this.hourFormat == '12') {\n if (this.currentHour === 12)\n value.setHours(this.pm ? 12 : 0);\n else\n value.setHours(this.pm ? this.currentHour + 12 : this.currentHour);\n }\n else {\n value.setHours(this.currentHour);\n }\n value.setMinutes(this.currentMinute);\n value.setSeconds(this.currentSecond);\n if (this.isRangeSelection()) {\n if (this.value[1])\n value = [this.value[0], value];\n else\n value = [value, null];\n }\n if (this.isMultipleSelection()) {\n value = [...this.value.slice(0, -1), value];\n }\n this.updateModel(value);\n this.onSelect.emit(value);\n this.updateInputfield();\n }\n toggleAMPM(event) {\n const newPM = !this.pm;\n if (this.validateTime(this.currentHour, this.currentMinute, this.currentSecond, newPM)) {\n this.pm = newPM;\n this.updateTime();\n }\n event.preventDefault();\n }\n onUserInput(event) {\n // IE 11 Workaround for input placeholder : https://github.com/primefaces/primeng/issues/2026\n if (!this.isKeydown) {\n return;\n }\n this.isKeydown = false;\n let val = event.target.value;\n try {\n let value = this.parseValueFromString(val);\n if (this.isValidSelection(value)) {\n this.updateModel(value);\n this.updateUI();\n }\n }\n catch (err) {\n //invalid date\n let value = this.keepInvalid ? val : null;\n this.updateModel(value);\n }\n this.filled = val != null && val.length;\n this.onInput.emit(event);\n }\n isValidSelection(value) {\n let isValid = true;\n if (this.isSingleSelection()) {\n if (!this.isSelectable(value.getDate(), value.getMonth(), value.getFullYear(), false)) {\n isValid = false;\n }\n }\n else if (value.every(v => this.isSelectable(v.getDate(), v.getMonth(), v.getFullYear(), false))) {\n if (this.isRangeSelection()) {\n isValid = value.length > 1 && value[1] > value[0] ? true : false;\n }\n }\n return isValid;\n }\n parseValueFromString(text) {\n if (!text || text.trim().length === 0) {\n return null;\n }\n let value;\n if (this.isSingleSelection()) {\n value = this.parseDateTime(text);\n }\n else if (this.isMultipleSelection()) {\n let tokens = text.split(this.multipleSeparator);\n value = [];\n for (let token of tokens) {\n value.push(this.parseDateTime(token.trim()));\n }\n }\n else if (this.isRangeSelection()) {\n let tokens = text.split(' ' + this.rangeSeparator + ' ');\n value = [];\n for (let i = 0; i < tokens.length; i++) {\n value[i] = this.parseDateTime(tokens[i].trim());\n }\n }\n return value;\n }\n parseDateTime(text) {\n let date;\n let parts = text.split(' ');\n if (this.timeOnly) {\n date = new Date();\n this.populateTime(date, parts[0], parts[1]);\n }\n else {\n const dateFormat = this.getDateFormat();\n if (this.showTime) {\n let ampm = this.hourFormat == '12' ? parts.pop() : null;\n let timeString = parts.pop();\n date = this.parseDate(parts.join(' '), dateFormat);\n this.populateTime(date, timeString, ampm);\n }\n else {\n date = this.parseDate(text, dateFormat);\n }\n }\n return date;\n }\n populateTime(value, timeString, ampm) {\n if (this.hourFormat == '12' && !ampm) {\n throw 'Invalid Time';\n }\n this.pm = (ampm === 'PM' || ampm === 'pm');\n let time = this.parseTime(timeString);\n value.setHours(time.hour);\n value.setMinutes(time.minute);\n value.setSeconds(time.second);\n }\n isValidDate(date) {\n return date instanceof Date && ObjectUtils.isNotEmpty(date);\n }\n updateUI() {\n let propValue = this.value;\n if (Array.isArray(propValue)) {\n propValue = propValue[0];\n }\n let val = this.defaultDate && this.isValidDate(this.defaultDate) && !this.value ? this.defaultDate : (propValue && this.isValidDate(propValue) ? propValue : new Date());\n this.currentMonth = val.getMonth();\n this.currentYear = val.getFullYear();\n this.createMonths(this.currentMonth, this.currentYear);\n if (this.showTime || this.timeOnly) {\n this.setCurrentHourPM(val.getHours());\n this.currentMinute = val.getMinutes();\n this.currentSecond = val.getSeconds();\n }\n }\n showOverlay() {\n if (!this.overlayVisible) {\n this.updateUI();\n if (!this.touchUI) {\n this.preventFocus = true;\n }\n this.overlayVisible = true;\n }\n }\n hideOverlay() {\n this.overlayVisible = false;\n this.clearTimePickerTimer();\n if (this.touchUI) {\n this.disableModality();\n }\n this.cd.markForCheck();\n }\n toggle() {\n if (!this.inline) {\n if (!this.overlayVisible) {\n this.showOverlay();\n this.inputfieldViewChild.nativeElement.focus();\n }\n else {\n this.hideOverlay();\n }\n }\n }\n onOverlayAnimationStart(event) {\n switch (event.toState) {\n case 'visible':\n case 'visibleTouchUI':\n if (!this.inline) {\n this.overlay = event.element;\n this.overlay.setAttribute(this.attributeSelector, '');\n this.appendOverlay();\n this.updateFocus();\n if (this.autoZIndex) {\n if (this.touchUI)\n ZIndexUtils.set('modal', this.overlay, this.baseZIndex || this.config.zIndex.modal);\n else\n ZIndexUtils.set('overlay', this.overlay, this.baseZIndex || this.config.zIndex.overlay);\n }\n this.alignOverlay();\n this.onShow.emit(event);\n }\n break;\n case 'void':\n this.onOverlayHide();\n this.onClose.emit(event);\n break;\n }\n }\n onOverlayAnimationDone(event) {\n switch (event.toState) {\n case 'visible':\n case 'visibleTouchUI':\n if (!this.inline) {\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n }\n break;\n case 'void':\n if (this.autoZIndex) {\n ZIndexUtils.clear(event.element);\n }\n break;\n }\n }\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.overlay);\n else\n DomHandler.appendChild(this.overlay, this.appendTo);\n }\n }\n restoreOverlayAppend() {\n if (this.overlay && this.appendTo) {\n this.el.nativeElement.appendChild(this.overlay);\n }\n }\n alignOverlay() {\n if (this.touchUI) {\n this.enableModality(this.overlay);\n }\n else if (this.overlay) {\n if (this.appendTo) {\n if (this.view === 'date') {\n this.overlay.style.width = DomHandler.getOuterWidth(this.overlay) + 'px';\n this.overlay.style.minWidth = DomHandler.getOuterWidth(this.inputfieldViewChild.nativeElement) + 'px';\n }\n else {\n this.overlay.style.width = DomHandler.getOuterWidth(this.inputfieldViewChild.nativeElement) + 'px';\n }\n DomHandler.absolutePosition(this.overlay, this.inputfieldViewChild.nativeElement);\n }\n else {\n DomHandler.relativePosition(this.overlay, this.inputfieldViewChild.nativeElement);\n }\n }\n }\n enableModality(element) {\n if (!this.mask) {\n this.mask = document.createElement('div');\n this.mask.style.zIndex = String(parseInt(element.style.zIndex) - 1);\n let maskStyleClass = 'p-component-overlay p-datepicker-mask p-datepicker-mask-scrollblocker p-component-overlay p-component-overlay-enter';\n DomHandler.addMultipleClasses(this.mask, maskStyleClass);\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event) => {\n this.disableModality();\n });\n document.body.appendChild(this.mask);\n DomHandler.addClass(document.body, 'p-overflow-hidden');\n }\n }\n disableModality() {\n if (this.mask) {\n DomHandler.addClass(this.mask, 'p-component-overlay-leave');\n this.animationEndListener = this.destroyMask.bind(this);\n this.mask.addEventListener('animationend', this.animationEndListener);\n }\n }\n destroyMask() {\n document.body.removeChild(this.mask);\n let bodyChildren = document.body.children;\n let hasBlockerMasks;\n for (let i = 0; i < bodyChildren.length; i++) {\n let bodyChild = bodyChildren[i];\n if (DomHandler.hasClass(bodyChild, 'p-datepicker-mask-scrollblocker')) {\n hasBlockerMasks = true;\n break;\n }\n }\n if (!hasBlockerMasks) {\n DomHandler.removeClass(document.body, 'p-overflow-hidden');\n }\n this.unbindAnimationEndListener();\n this.unbindMaskClickListener();\n this.mask = null;\n }\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n unbindAnimationEndListener() {\n if (this.animationEndListener && this.mask) {\n this.mask.removeEventListener('animationend', this.animationEndListener);\n this.animationEndListener = null;\n }\n }\n writeValue(value) {\n this.value = value;\n if (this.value && typeof this.value === 'string') {\n try {\n this.value = this.parseValueFromString(this.value);\n }\n catch (_a) {\n if (this.keepInvalid) {\n this.value = value;\n }\n }\n }\n this.updateInputfield();\n this.updateUI();\n this.cd.markForCheck();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n getDateFormat() {\n return this.dateFormat || this.getTranslation('dateFormat');\n }\n getFirstDateOfWeek() {\n return this._firstDayOfWeek || this.getTranslation(TranslationKeys.FIRST_DAY_OF_WEEK);\n }\n // Ported from jquery-ui datepicker formatDate\n formatDate(date, format) {\n if (!date) {\n return '';\n }\n let iFormat;\n const lookAhead = (match) => {\n const matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match);\n if (matches) {\n iFormat++;\n }\n return matches;\n }, formatNumber = (match, value, len) => {\n let num = '' + value;\n if (lookAhead(match)) {\n while (num.length < len) {\n num = '0' + num;\n }\n }\n return num;\n }, formatName = (match, value, shortNames, longNames) => {\n return (lookAhead(match) ? longNames[value] : shortNames[value]);\n };\n let output = '';\n let literal = false;\n if (date) {\n for (iFormat = 0; iFormat < format.length; iFormat++) {\n if (literal) {\n if (format.charAt(iFormat) === '\\'' && !lookAhead('\\'')) {\n literal = false;\n }\n else {\n output += format.charAt(iFormat);\n }\n }\n else {\n switch (format.charAt(iFormat)) {\n case 'd':\n output += formatNumber('d', date.getDate(), 2);\n break;\n case 'D':\n output += formatName('D', date.getDay(), this.getTranslation(TranslationKeys.DAY_NAMES_SHORT), this.getTranslation(TranslationKeys.DAY_NAMES));\n break;\n case 'o':\n output += formatNumber('o', Math.round((new Date(date.getFullYear(), date.getMonth(), date.getDate()).getTime() -\n new Date(date.getFullYear(), 0, 0).getTime()) / 86400000), 3);\n break;\n case 'm':\n output += formatNumber('m', date.getMonth() + 1, 2);\n break;\n case 'M':\n output += formatName('M', date.getMonth(), this.getTranslation(TranslationKeys.MONTH_NAMES_SHORT), this.getTranslation(TranslationKeys.MONTH_NAMES));\n break;\n case 'y':\n output += lookAhead('y') ? date.getFullYear() : (date.getFullYear() % 100 < 10 ? '0' : '') + (date.getFullYear() % 100);\n break;\n case '@':\n output += date.getTime();\n break;\n case '!':\n output += date.getTime() * 10000 + this.ticksTo1970;\n break;\n case '\\'':\n if (lookAhead('\\'')) {\n output += '\\'';\n }\n else {\n literal = true;\n }\n break;\n default:\n output += format.charAt(iFormat);\n }\n }\n }\n }\n return output;\n }\n formatTime(date) {\n if (!date) {\n return '';\n }\n let output = '';\n let hours = date.getHours();\n let minutes = date.getMinutes();\n let seconds = date.getSeconds();\n if (this.hourFormat == '12' && hours > 11 && hours != 12) {\n hours -= 12;\n }\n if (this.hourFormat == '12') {\n output += hours === 0 ? 12 : (hours < 10) ? '0' + hours : hours;\n }\n else {\n output += (hours < 10) ? '0' + hours : hours;\n }\n output += ':';\n output += (minutes < 10) ? '0' + minutes : minutes;\n if (this.showSeconds) {\n output += ':';\n output += (seconds < 10) ? '0' + seconds : seconds;\n }\n if (this.hourFormat == '12') {\n output += date.getHours() > 11 ? ' PM' : ' AM';\n }\n return output;\n }\n parseTime(value) {\n let tokens = value.split(':');\n let validTokenLength = this.showSeconds ? 3 : 2;\n if (tokens.length !== validTokenLength) {\n throw \"Invalid time\";\n }\n let h = parseInt(tokens[0]);\n let m = parseInt(tokens[1]);\n let s = this.showSeconds ? parseInt(tokens[2]) : null;\n if (isNaN(h) || isNaN(m) || h > 23 || m > 59 || (this.hourFormat == '12' && h > 12) || (this.showSeconds && (isNaN(s) || s > 59))) {\n throw \"Invalid time\";\n }\n else {\n if (this.hourFormat == '12') {\n if (h !== 12 && this.pm) {\n h += 12;\n }\n else if (!this.pm && h === 12) {\n h -= 12;\n }\n }\n return { hour: h, minute: m, second: s };\n }\n }\n // Ported from jquery-ui datepicker parseDate\n parseDate(value, format) {\n if (format == null || value == null) {\n throw \"Invalid arguments\";\n }\n value = (typeof value === \"object\" ? value.toString() : value + \"\");\n if (value === \"\") {\n return null;\n }\n let iFormat, dim, extra, iValue = 0, shortYearCutoff = (typeof this.shortYearCutoff !== \"string\" ? this.shortYearCutoff : new Date().getFullYear() % 100 + parseInt(this.shortYearCutoff, 10)), year = -1, month = -1, day = -1, doy = -1, literal = false, date, lookAhead = (match) => {\n let matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match);\n if (matches) {\n iFormat++;\n }\n return matches;\n }, getNumber = (match) => {\n let isDoubled = lookAhead(match), size = (match === \"@\" ? 14 : (match === \"!\" ? 20 :\n (match === \"y\" && isDoubled ? 4 : (match === \"o\" ? 3 : 2)))), minSize = (match === \"y\" ? size : 1), digits = new RegExp(\"^\\\\d{\" + minSize + \",\" + size + \"}\"), num = value.substring(iValue).match(digits);\n if (!num) {\n throw \"Missing number at position \" + iValue;\n }\n iValue += num[0].length;\n return parseInt(num[0], 10);\n }, getName = (match, shortNames, longNames) => {\n let index = -1;\n let arr = lookAhead(match) ? longNames : shortNames;\n let names = [];\n for (let i = 0; i < arr.length; i++) {\n names.push([i, arr[i]]);\n }\n names.sort((a, b) => {\n return -(a[1].length - b[1].length);\n });\n for (let i = 0; i < names.length; i++) {\n let name = names[i][1];\n if (value.substr(iValue, name.length).toLowerCase() === name.toLowerCase()) {\n index = names[i][0];\n iValue += name.length;\n break;\n }\n }\n if (index !== -1) {\n return index + 1;\n }\n else {\n throw \"Unknown name at position \" + iValue;\n }\n }, checkLiteral = () => {\n if (value.charAt(iValue) !== format.charAt(iFormat)) {\n throw \"Unexpected literal at position \" + iValue;\n }\n iValue++;\n };\n if (this.view === 'month') {\n day = 1;\n }\n for (iFormat = 0; iFormat < format.length; iFormat++) {\n if (literal) {\n if (format.charAt(iFormat) === \"'\" && !lookAhead(\"'\")) {\n literal = false;\n }\n else {\n checkLiteral();\n }\n }\n else {\n switch (format.charAt(iFormat)) {\n case \"d\":\n day = getNumber(\"d\");\n break;\n case \"D\":\n getName(\"D\", this.getTranslation(TranslationKeys.DAY_NAMES_SHORT), this.getTranslation(TranslationKeys.DAY_NAMES));\n break;\n case \"o\":\n doy = getNumber(\"o\");\n break;\n case \"m\":\n month = getNumber(\"m\");\n break;\n case \"M\":\n month = getName(\"M\", this.getTranslation(TranslationKeys.MONTH_NAMES_SHORT), this.getTranslation(TranslationKeys.MONTH_NAMES));\n break;\n case \"y\":\n year = getNumber(\"y\");\n break;\n case \"@\":\n date = new Date(getNumber(\"@\"));\n year = date.getFullYear();\n month = date.getMonth() + 1;\n day = date.getDate();\n break;\n case \"!\":\n date = new Date((getNumber(\"!\") - this.ticksTo1970) / 10000);\n year = date.getFullYear();\n month = date.getMonth() + 1;\n day = date.getDate();\n break;\n case \"'\":\n if (lookAhead(\"'\")) {\n checkLiteral();\n }\n else {\n literal = true;\n }\n break;\n default:\n checkLiteral();\n }\n }\n }\n if (iValue < value.length) {\n extra = value.substr(iValue);\n if (!/^\\s+/.test(extra)) {\n throw \"Extra/unparsed characters found in date: \" + extra;\n }\n }\n if (year === -1) {\n year = new Date().getFullYear();\n }\n else if (year < 100) {\n year += new Date().getFullYear() - new Date().getFullYear() % 100 +\n (year <= shortYearCutoff ? 0 : -100);\n }\n if (doy > -1) {\n month = 1;\n day = doy;\n do {\n dim = this.getDaysCountInMonth(year, month - 1);\n if (day <= dim) {\n break;\n }\n month++;\n day -= dim;\n } while (true);\n }\n date = this.daylightSavingAdjust(new Date(year, month - 1, day));\n if (date.getFullYear() !== year || date.getMonth() + 1 !== month || date.getDate() !== day) {\n throw \"Invalid date\"; // E.g. 31/02/00\n }\n return date;\n }\n daylightSavingAdjust(date) {\n if (!date) {\n return null;\n }\n date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0);\n return date;\n }\n updateFilledState() {\n this.filled = this.inputFieldValue && this.inputFieldValue != '';\n }\n onTodayButtonClick(event) {\n let date = new Date();\n let dateMeta = { day: date.getDate(), month: date.getMonth(), year: date.getFullYear(), otherMonth: date.getMonth() !== this.currentMonth || date.getFullYear() !== this.currentYear, today: true, selectable: true };\n this.onDateSelect(event, dateMeta);\n this.onTodayClick.emit(event);\n }\n onClearButtonClick(event) {\n this.updateModel(null);\n this.updateInputfield();\n this.hideOverlay();\n this.onClearClick.emit(event);\n }\n createResponsiveStyle() {\n if (this.numberOfMonths > 1 && this.responsiveOptions) {\n if (!this.responsiveStyleElement) {\n this.responsiveStyleElement = document.createElement('style');\n this.responsiveStyleElement.type = 'text/css';\n document.body.appendChild(this.responsiveStyleElement);\n }\n let innerHTML = '';\n if (this.responsiveOptions) {\n let responsiveOptions = [...this.responsiveOptions]\n .filter(o => !!(o.breakpoint && o.numMonths))\n .sort((o1, o2) => -1 * o1.breakpoint.localeCompare(o2.breakpoint, undefined, { numeric: true }));\n for (let i = 0; i < responsiveOptions.length; i++) {\n let { breakpoint, numMonths } = responsiveOptions[i];\n let styles = `\n .p-datepicker[${this.attributeSelector}] .p-datepicker-group:nth-child(${numMonths}) .p-datepicker-next {\n display: inline-flex !important;\n }\n `;\n for (let j = numMonths; j < this.numberOfMonths; j++) {\n styles += `\n .p-datepicker[${this.attributeSelector}] .p-datepicker-group:nth-child(${j + 1}) {\n display: none !important;\n }\n `;\n }\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n ${styles}\n }\n `;\n }\n }\n this.responsiveStyleElement.innerHTML = innerHTML;\n }\n }\n destroyResponsiveStyleElement() {\n if (this.responsiveStyleElement) {\n this.responsiveStyleElement.remove();\n this.responsiveStyleElement = null;\n }\n }\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n this.zone.runOutsideAngular(() => {\n const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';\n this.documentClickListener = this.renderer.listen(documentTarget, 'mousedown', (event) => {\n if (this.isOutsideClicked(event) && this.overlayVisible) {\n this.zone.run(() => {\n this.hideOverlay();\n this.onClickOutside.emit(event);\n this.cd.markForCheck();\n });\n }\n });\n });\n }\n }\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n bindDocumentResizeListener() {\n if (!this.documentResizeListener && !this.touchUI) {\n this.documentResizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.documentResizeListener);\n }\n }\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.containerViewChild.nativeElement, () => {\n if (this.overlayVisible) {\n this.hideOverlay();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n isOutsideClicked(event) {\n return !(this.el.nativeElement.isSameNode(event.target) || this.isNavIconClicked(event) ||\n this.el.nativeElement.contains(event.target) || (this.overlay && this.overlay.contains(event.target)));\n }\n isNavIconClicked(event) {\n return (DomHandler.hasClass(event.target, 'p-datepicker-prev') || DomHandler.hasClass(event.target, 'p-datepicker-prev-icon')\n || DomHandler.hasClass(event.target, 'p-datepicker-next') || DomHandler.hasClass(event.target, 'p-datepicker-next-icon'));\n }\n onWindowResize() {\n if (this.overlayVisible && !DomHandler.isAndroid()) {\n this.hideOverlay();\n }\n }\n onOverlayHide() {\n this.currentView = this.view;\n if (this.mask) {\n this.destroyMask();\n }\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.overlay = null;\n }\n ngOnDestroy() {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n if (this.overlay && this.autoZIndex) {\n ZIndexUtils.clear(this.overlay);\n }\n this.destroyResponsiveStyleElement();\n this.clearTimePickerTimer();\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n}\nCalendar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Calendar, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nCalendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Calendar, selector: \"p-calendar\", inputs: { style: \"style\", styleClass: \"styleClass\", inputStyle: \"inputStyle\", inputId: \"inputId\", name: \"name\", inputStyleClass: \"inputStyleClass\", placeholder: \"placeholder\", ariaLabelledBy: \"ariaLabelledBy\", iconAriaLabel: \"iconAriaLabel\", disabled: \"disabled\", dateFormat: \"dateFormat\", multipleSeparator: \"multipleSeparator\", rangeSeparator: \"rangeSeparator\", inline: \"inline\", showOtherMonths: \"showOtherMonths\", selectOtherMonths: \"selectOtherMonths\", showIcon: \"showIcon\", icon: \"icon\", appendTo: \"appendTo\", readonlyInput: \"readonlyInput\", shortYearCutoff: \"shortYearCutoff\", monthNavigator: \"monthNavigator\", yearNavigator: \"yearNavigator\", hourFormat: \"hourFormat\", timeOnly: \"timeOnly\", stepHour: \"stepHour\", stepMinute: \"stepMinute\", stepSecond: \"stepSecond\", showSeconds: \"showSeconds\", required: \"required\", showOnFocus: \"showOnFocus\", showWeek: \"showWeek\", dataType: \"dataType\", selectionMode: \"selectionMode\", maxDateCount: \"maxDateCount\", showButtonBar: \"showButtonBar\", todayButtonStyleClass: \"todayButtonStyleClass\", clearButtonStyleClass: \"clearButtonStyleClass\", autoZIndex: \"autoZIndex\", baseZIndex: \"baseZIndex\", panelStyleClass: \"panelStyleClass\", panelStyle: \"panelStyle\", keepInvalid: \"keepInvalid\", hideOnDateTimeSelect: \"hideOnDateTimeSelect\", touchUI: \"touchUI\", timeSeparator: \"timeSeparator\", focusTrap: \"focusTrap\", showTransitionOptions: \"showTransitionOptions\", hideTransitionOptions: \"hideTransitionOptions\", tabindex: \"tabindex\", view: \"view\", defaultDate: \"defaultDate\", minDate: \"minDate\", maxDate: \"maxDate\", disabledDates: \"disabledDates\", disabledDays: \"disabledDays\", yearRange: \"yearRange\", showTime: \"showTime\", responsiveOptions: \"responsiveOptions\", numberOfMonths: \"numberOfMonths\", firstDayOfWeek: \"firstDayOfWeek\", locale: \"locale\" }, outputs: { onFocus: \"onFocus\", onBlur: \"onBlur\", onClose: \"onClose\", onSelect: \"onSelect\", onInput: \"onInput\", onTodayClick: \"onTodayClick\", onClearClick: \"onClearClick\", onMonthChange: \"onMonthChange\", onYearChange: \"onYearChange\", onClickOutside: \"onClickOutside\", onShow: \"onShow\" }, host: { properties: { \"class.p-inputwrapper-filled\": \"filled\", \"class.p-inputwrapper-focus\": \"focus\" }, classAttribute: \"p-element p-inputwrapper\" }, providers: [CALENDAR_VALUE_ACCESSOR], queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"containerViewChild\", first: true, predicate: [\"container\"], descendants: true }, { propertyName: \"inputfieldViewChild\", first: true, predicate: [\"inputfield\"], descendants: true }, { propertyName: \"content\", first: true, predicate: [\"contentWrapper\"], descendants: true }], ngImport: i0, template: `\n \n \n \n \n
    1, 'p-datepicker-monthpicker': (view === 'month'), 'p-datepicker-touch-ui': touchUI}\"\n [@overlayAnimation]=\"touchUI ? {value: 'visibleTouchUI', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}:\n {value: 'visible', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\"\n [@.disabled]=\"inline === true\" (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\" (@overlayAnimation.done)=\"onOverlayAnimationDone($event)\" (click)=\"onOverlayClick($event)\" *ngIf=\"inline || overlayVisible\">\n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n {{yearPickerValues()[0]}} - {{yearPickerValues()[yearPickerValues().length - 1]}}\n \n \n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n {{getTranslation('weekHeader')}}\n \n {{weekDay}}\n
    \n \n {{month.weekNumbers[j]}}\n \n \n \n \n {{date.day}}\n \n \n \n
    \n
    \n
    \n
    \n
    \n \n {{m}}\n \n
    \n
    \n \n {{y}}\n \n
    \n
    \n
    \n
    \n \n 0{{currentHour}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentMinute}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentSecond}}\n \n
    \n
    \n \n {{pm ? 'PM' : 'AM'}}\n \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n
    \n `, isInline: true, styles: [\".p-calendar{position:relative;display:inline-flex;max-width:100%}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{display:inline-block;position:static;overflow-x:auto}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container .p-datepicker-group{flex:1 1 auto}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}\\n\"], directives: [{ type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i3.ButtonDirective, selector: \"[pButton]\", inputs: [\"iconPos\", \"loadingIcon\", \"label\", \"icon\", \"loading\"] }, { type: i4.Ripple, selector: \"[pRipple]\" }, { type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i2.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }], animations: [\n trigger('overlayAnimation', [\n state('visibleTouchUI', style({\n transform: 'translate(-50%,-50%)',\n opacity: 1\n })),\n transition('void => visible', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}', style({ opacity: 1, transform: '*' }))\n ]),\n transition('visible => void', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ]),\n transition('void => visibleTouchUI', [\n style({ opacity: 0, transform: 'translate3d(-50%, -40%, 0) scale(0.9)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition('visibleTouchUI => void', [\n animate(('{{hideTransitionParams}}'), style({\n opacity: 0,\n transform: 'translate3d(-50%, -40%, 0) scale(0.9)'\n }))\n ])\n ])\n ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Calendar, decorators: [{\n type: Component,\n args: [{ selector: 'p-calendar', template: `\n \n \n \n \n
    1, 'p-datepicker-monthpicker': (view === 'month'), 'p-datepicker-touch-ui': touchUI}\"\n [@overlayAnimation]=\"touchUI ? {value: 'visibleTouchUI', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}:\n {value: 'visible', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\"\n [@.disabled]=\"inline === true\" (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\" (@overlayAnimation.done)=\"onOverlayAnimationDone($event)\" (click)=\"onOverlayClick($event)\" *ngIf=\"inline || overlayVisible\">\n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n {{yearPickerValues()[0]}} - {{yearPickerValues()[yearPickerValues().length - 1]}}\n \n \n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n {{getTranslation('weekHeader')}}\n \n {{weekDay}}\n
    \n \n {{month.weekNumbers[j]}}\n \n \n \n \n {{date.day}}\n \n \n \n
    \n
    \n
    \n
    \n
    \n \n {{m}}\n \n
    \n
    \n \n {{y}}\n \n
    \n
    \n
    \n
    \n \n 0{{currentHour}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentMinute}}\n \n
    \n
    \n {{timeSeparator}}\n
    \n
    \n \n 0{{currentSecond}}\n \n
    \n
    \n \n {{pm ? 'PM' : 'AM'}}\n \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n
    \n `, animations: [\n trigger('overlayAnimation', [\n state('visibleTouchUI', style({\n transform: 'translate(-50%,-50%)',\n opacity: 1\n })),\n transition('void => visible', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('{{showTransitionParams}}', style({ opacity: 1, transform: '*' }))\n ]),\n transition('visible => void', [\n animate('{{hideTransitionParams}}', style({ opacity: 0 }))\n ]),\n transition('void => visibleTouchUI', [\n style({ opacity: 0, transform: 'translate3d(-50%, -40%, 0) scale(0.9)' }),\n animate('{{showTransitionParams}}')\n ]),\n transition('visibleTouchUI => void', [\n animate(('{{hideTransitionParams}}'), style({\n opacity: 0,\n transform: 'translate3d(-50%, -40%, 0) scale(0.9)'\n }))\n ])\n ])\n ], host: {\n 'class': 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focus'\n }, providers: [CALENDAR_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [\".p-calendar{position:relative;display:inline-flex;max-width:100%}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{display:inline-block;position:static;overflow-x:auto}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container .p-datepicker-group{flex:1 1 auto}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1.PrimeNGConfig }, { type: i1.OverlayService }]; }, propDecorators: { style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], inputStyle: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], inputStyleClass: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], iconAriaLabel: [{\n type: Input\n }], disabled: [{\n type: Input\n }], dateFormat: [{\n type: Input\n }], multipleSeparator: [{\n type: Input\n }], rangeSeparator: [{\n type: Input\n }], inline: [{\n type: Input\n }], showOtherMonths: [{\n type: Input\n }], selectOtherMonths: [{\n type: Input\n }], showIcon: [{\n type: Input\n }], icon: [{\n type: Input\n }], appendTo: [{\n type: Input\n }], readonlyInput: [{\n type: Input\n }], shortYearCutoff: [{\n type: Input\n }], monthNavigator: [{\n type: Input\n }], yearNavigator: [{\n type: Input\n }], hourFormat: [{\n type: Input\n }], timeOnly: [{\n type: Input\n }], stepHour: [{\n type: Input\n }], stepMinute: [{\n type: Input\n }], stepSecond: [{\n type: Input\n }], showSeconds: [{\n type: Input\n }], required: [{\n type: Input\n }], showOnFocus: [{\n type: Input\n }], showWeek: [{\n type: Input\n }], dataType: [{\n type: Input\n }], selectionMode: [{\n type: Input\n }], maxDateCount: [{\n type: Input\n }], showButtonBar: [{\n type: Input\n }], todayButtonStyleClass: [{\n type: Input\n }], clearButtonStyleClass: [{\n type: Input\n }], autoZIndex: [{\n type: Input\n }], baseZIndex: [{\n type: Input\n }], panelStyleClass: [{\n type: Input\n }], panelStyle: [{\n type: Input\n }], keepInvalid: [{\n type: Input\n }], hideOnDateTimeSelect: [{\n type: Input\n }], touchUI: [{\n type: Input\n }], timeSeparator: [{\n type: Input\n }], focusTrap: [{\n type: Input\n }], showTransitionOptions: [{\n type: Input\n }], hideTransitionOptions: [{\n type: Input\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], onClose: [{\n type: Output\n }], onSelect: [{\n type: Output\n }], onInput: [{\n type: Output\n }], onTodayClick: [{\n type: Output\n }], onClearClick: [{\n type: Output\n }], onMonthChange: [{\n type: Output\n }], onYearChange: [{\n type: Output\n }], onClickOutside: [{\n type: Output\n }], onShow: [{\n type: Output\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], tabindex: [{\n type: Input\n }], containerViewChild: [{\n type: ViewChild,\n args: ['container', { static: false }]\n }], inputfieldViewChild: [{\n type: ViewChild,\n args: ['inputfield', { static: false }]\n }], content: [{\n type: ViewChild,\n args: ['contentWrapper', { static: false }]\n }], view: [{\n type: Input\n }], defaultDate: [{\n type: Input\n }], minDate: [{\n type: Input\n }], maxDate: [{\n type: Input\n }], disabledDates: [{\n type: Input\n }], disabledDays: [{\n type: Input\n }], yearRange: [{\n type: Input\n }], showTime: [{\n type: Input\n }], responsiveOptions: [{\n type: Input\n }], numberOfMonths: [{\n type: Input\n }], firstDayOfWeek: [{\n type: Input\n }], locale: [{\n type: Input\n }] } });\nclass CalendarModule {\n}\nCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CalendarModule, declarations: [Calendar], imports: [CommonModule, ButtonModule, SharedModule, RippleModule], exports: [Calendar, ButtonModule, SharedModule] });\nCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CalendarModule, imports: [[CommonModule, ButtonModule, SharedModule, RippleModule], ButtonModule, SharedModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CalendarModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, ButtonModule, SharedModule, RippleModule],\n exports: [Calendar, ButtonModule, SharedModule],\n declarations: [Calendar]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { CALENDAR_VALUE_ACCESSOR, Calendar, CalendarModule };\n","import * as i0 from '@angular/core';\nimport { Injectable, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ViewChild, ContentChildren, Directive, HostListener, Optional, NgModule } from '@angular/core';\nimport * as i4 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i9 from '@angular/forms';\nimport { FormsModule } from '@angular/forms';\nimport * as i1 from 'primeng/api';\nimport { FilterOperator, FilterMatchMode, PrimeTemplate, TranslationKeys, SharedModule } from 'primeng/api';\nimport * as i2 from 'primeng/paginator';\nimport { PaginatorModule } from 'primeng/paginator';\nimport * as i8 from 'primeng/inputtext';\nimport { InputTextModule } from 'primeng/inputtext';\nimport * as i11 from 'primeng/button';\nimport { ButtonModule } from 'primeng/button';\nimport { SelectButtonModule } from 'primeng/selectbutton';\nimport * as i6 from 'primeng/tristatecheckbox';\nimport { TriStateCheckboxModule } from 'primeng/tristatecheckbox';\nimport * as i7 from 'primeng/calendar';\nimport { CalendarModule } from 'primeng/calendar';\nimport * as i5 from 'primeng/inputnumber';\nimport { InputNumberModule } from 'primeng/inputnumber';\nimport * as i10 from 'primeng/dropdown';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';\nimport { Subject } from 'rxjs';\nimport * as i3 from '@angular/cdk/scrolling';\nimport { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';\nimport { trigger, transition, style, animate } from '@angular/animations';\n\nclass TableService {\n constructor() {\n this.sortSource = new Subject();\n this.selectionSource = new Subject();\n this.contextMenuSource = new Subject();\n this.valueSource = new Subject();\n this.totalRecordsSource = new Subject();\n this.columnsSource = new Subject();\n this.resetSource = new Subject();\n this.sortSource$ = this.sortSource.asObservable();\n this.selectionSource$ = this.selectionSource.asObservable();\n this.contextMenuSource$ = this.contextMenuSource.asObservable();\n this.valueSource$ = this.valueSource.asObservable();\n this.totalRecordsSource$ = this.totalRecordsSource.asObservable();\n this.columnsSource$ = this.columnsSource.asObservable();\n this.resetSource$ = this.resetSource.asObservable();\n }\n onSort(sortMeta) {\n this.sortSource.next(sortMeta);\n }\n onSelectionChange() {\n this.selectionSource.next(null);\n }\n onResetChange() {\n this.resetSource.next(null);\n }\n onContextMenu(data) {\n this.contextMenuSource.next(data);\n }\n onValueChange(value) {\n this.valueSource.next(value);\n }\n onTotalRecordsChange(value) {\n this.totalRecordsSource.next(value);\n }\n onColumnsChange(columns) {\n this.columnsSource.next(columns);\n }\n}\nTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableService });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableService, decorators: [{\n type: Injectable\n }] });\nclass Table {\n constructor(el, zone, tableService, cd, filterService, overlayService) {\n this.el = el;\n this.zone = zone;\n this.tableService = tableService;\n this.cd = cd;\n this.filterService = filterService;\n this.overlayService = overlayService;\n this.pageLinks = 5;\n this.alwaysShowPaginator = true;\n this.paginatorPosition = 'bottom';\n this.paginatorDropdownScrollHeight = '200px';\n this.currentPageReportTemplate = '{currentPage} of {totalPages}';\n this.showFirstLastIcon = true;\n this.showPageLinks = true;\n this.defaultSortOrder = 1;\n this.sortMode = 'single';\n this.resetPageOnSort = true;\n this.selectAllChange = new EventEmitter();\n this.selectionChange = new EventEmitter();\n this.contextMenuSelectionChange = new EventEmitter();\n this.contextMenuSelectionMode = \"separate\";\n this.rowTrackBy = (index, item) => item;\n this.lazy = false;\n this.lazyLoadOnInit = true;\n this.compareSelectionBy = 'deepEquals';\n this.csvSeparator = ',';\n this.exportFilename = 'download';\n this.filters = {};\n this.filterDelay = 300;\n this.expandedRowKeys = {};\n this.editingRowKeys = {};\n this.rowExpandMode = 'multiple';\n this.scrollDirection = \"vertical\";\n this.virtualScrollDelay = 250;\n this.virtualRowHeight = 28;\n this.columnResizeMode = 'fit';\n this.loadingIcon = 'pi pi-spinner';\n this.showLoader = true;\n this.showInitialSortBadge = true;\n this.stateStorage = 'session';\n this.editMode = 'cell';\n this.groupRowsByOrder = 1;\n this.responsiveLayout = 'stack';\n this.breakpoint = '960px';\n this.onRowSelect = new EventEmitter();\n this.onRowUnselect = new EventEmitter();\n this.onPage = new EventEmitter();\n this.onSort = new EventEmitter();\n this.onFilter = new EventEmitter();\n this.onLazyLoad = new EventEmitter();\n this.onRowExpand = new EventEmitter();\n this.onRowCollapse = new EventEmitter();\n this.onContextMenuSelect = new EventEmitter();\n this.onColResize = new EventEmitter();\n this.onColReorder = new EventEmitter();\n this.onRowReorder = new EventEmitter();\n this.onEditInit = new EventEmitter();\n this.onEditComplete = new EventEmitter();\n this.onEditCancel = new EventEmitter();\n this.onHeaderCheckboxToggle = new EventEmitter();\n this.sortFunction = new EventEmitter();\n this.firstChange = new EventEmitter();\n this.rowsChange = new EventEmitter();\n this.onStateSave = new EventEmitter();\n this.onStateRestore = new EventEmitter();\n this._value = [];\n this._totalRecords = 0;\n this._first = 0;\n this.selectionKeys = {};\n this._sortOrder = 1;\n this._selectAll = null;\n this.columnResizing = false;\n this.rowGroupHeaderStyleObject = {};\n this.id = UniqueComponentId();\n this.virtualScrollInitialized = false;\n }\n ngOnInit() {\n if (this.lazy && this.lazyLoadOnInit) {\n if (!this.virtualScroll) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n if (this.restoringFilter) {\n this.restoringFilter = false;\n }\n }\n if (this.responsiveLayout === 'stack' && !this.scrollable) {\n this.createResponsiveStyle();\n }\n this.initialized = true;\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'caption':\n this.captionTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'headergrouped':\n this.headerGroupedTemplate = item.template;\n break;\n case 'body':\n this.bodyTemplate = item.template;\n break;\n case 'loadingbody':\n this.loadingBodyTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n case 'footergrouped':\n this.footerGroupedTemplate = item.template;\n break;\n case 'summary':\n this.summaryTemplate = item.template;\n break;\n case 'colgroup':\n this.colGroupTemplate = item.template;\n break;\n case 'rowexpansion':\n this.expandedRowTemplate = item.template;\n break;\n case 'groupheader':\n this.groupHeaderTemplate = item.template;\n break;\n case 'rowspan':\n this.rowspanTemplate = item.template;\n break;\n case 'groupfooter':\n this.groupFooterTemplate = item.template;\n break;\n case 'frozenrows':\n this.frozenRowsTemplate = item.template;\n break;\n case 'frozenheader':\n this.frozenHeaderTemplate = item.template;\n break;\n case 'frozenbody':\n this.frozenBodyTemplate = item.template;\n break;\n case 'frozenfooter':\n this.frozenFooterTemplate = item.template;\n break;\n case 'frozencolgroup':\n this.frozenColGroupTemplate = item.template;\n break;\n case 'frozenrowexpansion':\n this.frozenExpandedRowTemplate = item.template;\n break;\n case 'emptymessage':\n this.emptyMessageTemplate = item.template;\n break;\n case 'paginatorleft':\n this.paginatorLeftTemplate = item.template;\n break;\n case 'paginatorright':\n this.paginatorRightTemplate = item.template;\n break;\n case 'paginatordropdownitem':\n this.paginatorDropdownItemTemplate = item.template;\n break;\n }\n });\n }\n ngAfterViewInit() {\n if (this.isStateful() && this.resizableColumns) {\n this.restoreColumnWidths();\n }\n if (this.scrollable && this.virtualScroll) {\n this.virtualScrollSubscription = this.virtualScrollBody.renderedRangeStream.subscribe(range => {\n let top = range.start * this.virtualRowHeight * -1;\n this.tableHeaderViewChild.nativeElement.style.top = top + 'px';\n });\n }\n }\n ngOnChanges(simpleChange) {\n if (simpleChange.value) {\n if (this.isStateful() && !this.stateRestored) {\n this.restoreState();\n }\n this._value = simpleChange.value.currentValue;\n if (!this.lazy) {\n this.totalRecords = (this._value ? this._value.length : 0);\n if (this.sortMode == 'single' && (this.sortField || this.groupRowsBy))\n this.sortSingle();\n else if (this.sortMode == 'multiple' && (this.multiSortMeta || this.groupRowsBy))\n this.sortMultiple();\n else if (this.hasFilter()) //sort already filters\n this._filter();\n }\n this.tableService.onValueChange(simpleChange.value.currentValue);\n }\n if (simpleChange.columns) {\n this._columns = simpleChange.columns.currentValue;\n this.tableService.onColumnsChange(simpleChange.columns.currentValue);\n if (this._columns && this.isStateful() && this.reorderableColumns && !this.columnOrderStateRestored) {\n this.restoreColumnOrder();\n }\n }\n if (simpleChange.sortField) {\n this._sortField = simpleChange.sortField.currentValue;\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.groupRowsBy) {\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.sortOrder) {\n this._sortOrder = simpleChange.sortOrder.currentValue;\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.groupRowsByOrder) {\n //avoid triggering lazy load prior to lazy initialization at onInit\n if (!this.lazy || this.initialized) {\n if (this.sortMode === 'single') {\n this.sortSingle();\n }\n }\n }\n if (simpleChange.multiSortMeta) {\n this._multiSortMeta = simpleChange.multiSortMeta.currentValue;\n if (this.sortMode === 'multiple' && (this.initialized || (!this.lazy && !this.virtualScroll))) {\n this.sortMultiple();\n }\n }\n if (simpleChange.selection) {\n this._selection = simpleChange.selection.currentValue;\n if (!this.preventSelectionSetterPropagation) {\n this.updateSelectionKeys();\n this.tableService.onSelectionChange();\n }\n this.preventSelectionSetterPropagation = false;\n }\n if (simpleChange.selectAll) {\n this._selectAll = simpleChange.selectAll.currentValue;\n if (!this.preventSelectionSetterPropagation) {\n this.updateSelectionKeys();\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n this.preventSelectionSetterPropagation = false;\n }\n }\n get value() {\n return this._value;\n }\n set value(val) {\n this._value = val;\n }\n get columns() {\n return this._columns;\n }\n set columns(cols) {\n this._columns = cols;\n }\n get first() {\n return this._first;\n }\n set first(val) {\n this._first = val;\n }\n get rows() {\n return this._rows;\n }\n set rows(val) {\n this._rows = val;\n }\n get totalRecords() {\n return this._totalRecords;\n }\n set totalRecords(val) {\n this._totalRecords = val;\n this.tableService.onTotalRecordsChange(this._totalRecords);\n }\n get sortField() {\n return this._sortField;\n }\n set sortField(val) {\n this._sortField = val;\n }\n get sortOrder() {\n return this._sortOrder;\n }\n set sortOrder(val) {\n this._sortOrder = val;\n }\n get multiSortMeta() {\n return this._multiSortMeta;\n }\n set multiSortMeta(val) {\n this._multiSortMeta = val;\n }\n get selection() {\n return this._selection;\n }\n set selection(val) {\n this._selection = val;\n }\n get selectAll() {\n return this._selection;\n }\n set selectAll(val) {\n this._selection = val;\n }\n get dataToRender() {\n let data = this.filteredValue || this.value;\n return data ? ((this.paginator && !this.lazy) ? (data.slice(this.first, this.first + this.rows)) : data) : [];\n }\n updateSelectionKeys() {\n if (this.dataKey && this._selection) {\n this.selectionKeys = {};\n if (Array.isArray(this._selection)) {\n for (let data of this._selection) {\n this.selectionKeys[String(ObjectUtils.resolveFieldData(data, this.dataKey))] = 1;\n }\n }\n else {\n this.selectionKeys[String(ObjectUtils.resolveFieldData(this._selection, this.dataKey))] = 1;\n }\n }\n }\n onPageChange(event) {\n this.first = event.first;\n this.rows = event.rows;\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n this.onPage.emit({\n first: this.first,\n rows: this.rows\n });\n this.firstChange.emit(this.first);\n this.rowsChange.emit(this.rows);\n this.tableService.onValueChange(this.value);\n if (this.isStateful()) {\n this.saveState();\n }\n this.anchorRowIndex = null;\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n sort(event) {\n let originalEvent = event.originalEvent;\n if (this.sortMode === 'single') {\n this._sortOrder = (this.sortField === event.field) ? this.sortOrder * -1 : this.defaultSortOrder;\n this._sortField = event.field;\n if (this.resetPageOnSort) {\n this._first = 0;\n this.firstChange.emit(this._first);\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n this.sortSingle();\n }\n if (this.sortMode === 'multiple') {\n let metaKey = originalEvent.metaKey || originalEvent.ctrlKey;\n let sortMeta = this.getSortMeta(event.field);\n if (sortMeta) {\n if (!metaKey) {\n this._multiSortMeta = [{ field: event.field, order: sortMeta.order * -1 }];\n if (this.resetPageOnSort) {\n this._first = 0;\n this.firstChange.emit(this._first);\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n }\n else {\n sortMeta.order = sortMeta.order * -1;\n }\n }\n else {\n if (!metaKey || !this.multiSortMeta) {\n this._multiSortMeta = [];\n if (this.resetPageOnSort) {\n this._first = 0;\n this.firstChange.emit(this._first);\n }\n }\n this._multiSortMeta.push({ field: event.field, order: this.defaultSortOrder });\n }\n this.sortMultiple();\n }\n if (this.isStateful()) {\n this.saveState();\n }\n this.anchorRowIndex = null;\n }\n sortSingle() {\n let field = this.sortField || this.groupRowsBy;\n let order = this.sortField ? this.sortOrder : this.groupRowsByOrder;\n if (this.groupRowsBy && this.sortField && this.groupRowsBy !== this.sortField) {\n this._multiSortMeta = [this.getGroupRowsMeta(), { field: this.sortField, order: this.sortOrder }];\n this.sortMultiple();\n return;\n }\n if (field && order) {\n if (this.restoringSort) {\n this.restoringSort = false;\n }\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else if (this.value) {\n if (this.customSort) {\n this.sortFunction.emit({\n data: this.value,\n mode: this.sortMode,\n field: field,\n order: order\n });\n }\n else {\n this.value.sort((data1, data2) => {\n let value1 = ObjectUtils.resolveFieldData(data1, field);\n let value2 = ObjectUtils.resolveFieldData(data2, field);\n let result = null;\n if (value1 == null && value2 != null)\n result = -1;\n else if (value1 != null && value2 == null)\n result = 1;\n else if (value1 == null && value2 == null)\n result = 0;\n else if (typeof value1 === 'string' && typeof value2 === 'string')\n result = value1.localeCompare(value2);\n else\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\n return (order * result);\n });\n this._value = [...this.value];\n }\n if (this.hasFilter()) {\n this._filter();\n }\n }\n let sortMeta = {\n field: field,\n order: order\n };\n this.onSort.emit(sortMeta);\n this.tableService.onSort(sortMeta);\n }\n }\n sortMultiple() {\n if (this.groupRowsBy) {\n if (!this._multiSortMeta)\n this._multiSortMeta = [this.getGroupRowsMeta()];\n else if (this.multiSortMeta[0].field !== this.groupRowsBy)\n this._multiSortMeta = [this.getGroupRowsMeta(), ...this._multiSortMeta];\n }\n if (this.multiSortMeta) {\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else if (this.value) {\n if (this.customSort) {\n this.sortFunction.emit({\n data: this.value,\n mode: this.sortMode,\n multiSortMeta: this.multiSortMeta\n });\n }\n else {\n this.value.sort((data1, data2) => {\n return this.multisortField(data1, data2, this.multiSortMeta, 0);\n });\n this._value = [...this.value];\n }\n if (this.hasFilter()) {\n this._filter();\n }\n }\n this.onSort.emit({\n multisortmeta: this.multiSortMeta\n });\n this.tableService.onSort(this.multiSortMeta);\n }\n }\n multisortField(data1, data2, multiSortMeta, index) {\n let value1 = ObjectUtils.resolveFieldData(data1, multiSortMeta[index].field);\n let value2 = ObjectUtils.resolveFieldData(data2, multiSortMeta[index].field);\n let result = null;\n if (value1 == null && value2 != null)\n result = -1;\n else if (value1 != null && value2 == null)\n result = 1;\n else if (value1 == null && value2 == null)\n result = 0;\n else if (typeof value1 == 'string' || value1 instanceof String) {\n if (value1.localeCompare && (value1 != value2)) {\n return (multiSortMeta[index].order * value1.localeCompare(value2));\n }\n }\n else {\n result = (value1 < value2) ? -1 : 1;\n }\n if (value1 == value2) {\n return (multiSortMeta.length - 1) > (index) ? (this.multisortField(data1, data2, multiSortMeta, index + 1)) : 0;\n }\n return (multiSortMeta[index].order * result);\n }\n getSortMeta(field) {\n if (this.multiSortMeta && this.multiSortMeta.length) {\n for (let i = 0; i < this.multiSortMeta.length; i++) {\n if (this.multiSortMeta[i].field === field) {\n return this.multiSortMeta[i];\n }\n }\n }\n return null;\n }\n isSorted(field) {\n if (this.sortMode === 'single') {\n return (this.sortField && this.sortField === field);\n }\n else if (this.sortMode === 'multiple') {\n let sorted = false;\n if (this.multiSortMeta) {\n for (let i = 0; i < this.multiSortMeta.length; i++) {\n if (this.multiSortMeta[i].field == field) {\n sorted = true;\n break;\n }\n }\n }\n return sorted;\n }\n }\n handleRowClick(event) {\n let target = event.originalEvent.target;\n let targetNode = target.nodeName;\n let parentNode = target.parentElement && target.parentElement.nodeName;\n if (targetNode == 'INPUT' || targetNode == 'BUTTON' || targetNode == 'A' ||\n parentNode == 'INPUT' || parentNode == 'BUTTON' || parentNode == 'A' ||\n (DomHandler.hasClass(event.originalEvent.target, 'p-clickable'))) {\n return;\n }\n if (this.selectionMode) {\n let rowData = event.rowData;\n let rowIndex = event.rowIndex;\n this.preventSelectionSetterPropagation = true;\n if (this.isMultipleSelectionMode() && event.originalEvent.shiftKey && this.anchorRowIndex != null) {\n DomHandler.clearSelection();\n if (this.rangeRowIndex != null) {\n this.clearSelectionRange(event.originalEvent);\n }\n this.rangeRowIndex = rowIndex;\n this.selectRange(event.originalEvent, rowIndex);\n }\n else {\n let selected = this.isSelected(rowData);\n if (!selected && !this.isRowSelectable(rowData, rowIndex)) {\n return;\n }\n let metaSelection = this.rowTouched ? false : this.metaKeySelection;\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rowData, this.dataKey)) : null;\n this.anchorRowIndex = rowIndex;\n this.rangeRowIndex = rowIndex;\n if (metaSelection) {\n let metaKey = event.originalEvent.metaKey || event.originalEvent.ctrlKey;\n if (selected && metaKey) {\n if (this.isSingleSelectionMode()) {\n this._selection = null;\n this.selectionKeys = {};\n this.selectionChange.emit(null);\n }\n else {\n let selectionIndex = this.findIndexInSelection(rowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n this.selectionChange.emit(this.selection);\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n }\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row' });\n }\n else {\n if (this.isSingleSelectionMode()) {\n this._selection = rowData;\n this.selectionChange.emit(rowData);\n if (dataKeyValue) {\n this.selectionKeys = {};\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n else if (this.isMultipleSelectionMode()) {\n if (metaKey) {\n this._selection = this.selection || [];\n }\n else {\n this._selection = [];\n this.selectionKeys = {};\n }\n this._selection = [...this.selection, rowData];\n this.selectionChange.emit(this.selection);\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n this.onRowSelect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n }\n }\n else {\n if (this.selectionMode === 'single') {\n if (selected) {\n this._selection = null;\n this.selectionKeys = {};\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n }\n else {\n this._selection = rowData;\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n if (dataKeyValue) {\n this.selectionKeys = {};\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n else if (this.selectionMode === 'multiple') {\n if (selected) {\n let selectionIndex = this.findIndexInSelection(rowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n }\n else {\n this._selection = this.selection ? [...this.selection, rowData] : [rowData];\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, data: rowData, type: 'row', index: rowIndex });\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n }\n }\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n this.rowTouched = false;\n }\n handleRowTouchEnd(event) {\n this.rowTouched = true;\n }\n handleRowRightClick(event) {\n if (this.contextMenu) {\n const rowData = event.rowData;\n const rowIndex = event.rowIndex;\n if (this.contextMenuSelectionMode === 'separate') {\n this.contextMenuSelection = rowData;\n this.contextMenuSelectionChange.emit(rowData);\n this.onContextMenuSelect.emit({ originalEvent: event.originalEvent, data: rowData, index: event.rowIndex });\n this.contextMenu.show(event.originalEvent);\n this.tableService.onContextMenu(rowData);\n }\n else if (this.contextMenuSelectionMode === 'joint') {\n this.preventSelectionSetterPropagation = true;\n let selected = this.isSelected(rowData);\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rowData, this.dataKey)) : null;\n if (!selected) {\n if (!this.isRowSelectable(rowData, rowIndex)) {\n return;\n }\n if (this.isSingleSelectionMode()) {\n this.selection = rowData;\n this.selectionChange.emit(rowData);\n if (dataKeyValue) {\n this.selectionKeys = {};\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n else if (this.isMultipleSelectionMode()) {\n this._selection = this.selection ? [...this.selection, rowData] : [rowData];\n this.selectionChange.emit(this.selection);\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n this.tableService.onSelectionChange();\n this.contextMenu.show(event.originalEvent);\n this.onContextMenuSelect.emit({ originalEvent: event, data: rowData, index: event.rowIndex });\n }\n }\n }\n selectRange(event, rowIndex) {\n let rangeStart, rangeEnd;\n if (this.anchorRowIndex > rowIndex) {\n rangeStart = rowIndex;\n rangeEnd = this.anchorRowIndex;\n }\n else if (this.anchorRowIndex < rowIndex) {\n rangeStart = this.anchorRowIndex;\n rangeEnd = rowIndex;\n }\n else {\n rangeStart = rowIndex;\n rangeEnd = rowIndex;\n }\n if (this.lazy && this.paginator) {\n rangeStart -= this.first;\n rangeEnd -= this.first;\n }\n let rangeRowsData = [];\n for (let i = rangeStart; i <= rangeEnd; i++) {\n let rangeRowData = this.filteredValue ? this.filteredValue[i] : this.value[i];\n if (!this.isSelected(rangeRowData)) {\n if (!this.isRowSelectable(rangeRowData, rowIndex)) {\n continue;\n }\n rangeRowsData.push(rangeRowData);\n this._selection = [...this.selection, rangeRowData];\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rangeRowData, this.dataKey)) : null;\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n }\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event, data: rangeRowsData, type: 'row' });\n }\n clearSelectionRange(event) {\n let rangeStart, rangeEnd;\n if (this.rangeRowIndex > this.anchorRowIndex) {\n rangeStart = this.anchorRowIndex;\n rangeEnd = this.rangeRowIndex;\n }\n else if (this.rangeRowIndex < this.anchorRowIndex) {\n rangeStart = this.rangeRowIndex;\n rangeEnd = this.anchorRowIndex;\n }\n else {\n rangeStart = this.rangeRowIndex;\n rangeEnd = this.rangeRowIndex;\n }\n for (let i = rangeStart; i <= rangeEnd; i++) {\n let rangeRowData = this.value[i];\n let selectionIndex = this.findIndexInSelection(rangeRowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rangeRowData, this.dataKey)) : null;\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n this.onRowUnselect.emit({ originalEvent: event, data: rangeRowData, type: 'row' });\n }\n }\n isSelected(rowData) {\n if (rowData && this.selection) {\n if (this.dataKey) {\n return this.selectionKeys[ObjectUtils.resolveFieldData(rowData, this.dataKey)] !== undefined;\n }\n else {\n if (this.selection instanceof Array)\n return this.findIndexInSelection(rowData) > -1;\n else\n return this.equals(rowData, this.selection);\n }\n }\n return false;\n }\n findIndexInSelection(rowData) {\n let index = -1;\n if (this.selection && this.selection.length) {\n for (let i = 0; i < this.selection.length; i++) {\n if (this.equals(rowData, this.selection[i])) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n isRowSelectable(data, index) {\n if (this.rowSelectable && !this.rowSelectable({ data, index })) {\n return false;\n }\n return true;\n }\n toggleRowWithRadio(event, rowData) {\n this.preventSelectionSetterPropagation = true;\n if (this.selection != rowData) {\n if (!this.isRowSelectable(rowData, event.rowIndex)) {\n return;\n }\n this._selection = rowData;\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'radiobutton' });\n if (this.dataKey) {\n this.selectionKeys = {};\n this.selectionKeys[String(ObjectUtils.resolveFieldData(rowData, this.dataKey))] = 1;\n }\n }\n else {\n this._selection = null;\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'radiobutton' });\n }\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n toggleRowWithCheckbox(event, rowData) {\n this.selection = this.selection || [];\n let selected = this.isSelected(rowData);\n let dataKeyValue = this.dataKey ? String(ObjectUtils.resolveFieldData(rowData, this.dataKey)) : null;\n this.preventSelectionSetterPropagation = true;\n if (selected) {\n let selectionIndex = this.findIndexInSelection(rowData);\n this._selection = this.selection.filter((val, i) => i != selectionIndex);\n this.selectionChange.emit(this.selection);\n this.onRowUnselect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'checkbox' });\n if (dataKeyValue) {\n delete this.selectionKeys[dataKeyValue];\n }\n }\n else {\n if (!this.isRowSelectable(rowData, event.rowIndex)) {\n return;\n }\n this._selection = this.selection ? [...this.selection, rowData] : [rowData];\n this.selectionChange.emit(this.selection);\n this.onRowSelect.emit({ originalEvent: event.originalEvent, index: event.rowIndex, data: rowData, type: 'checkbox' });\n if (dataKeyValue) {\n this.selectionKeys[dataKeyValue] = 1;\n }\n }\n this.tableService.onSelectionChange();\n if (this.isStateful()) {\n this.saveState();\n }\n }\n toggleRowsWithCheckbox(event, check) {\n if (this._selectAll !== null) {\n this.selectAllChange.emit({ originalEvent: event, checked: check });\n }\n else {\n const data = this.selectionPageOnly ? this.dataToRender : (this.filteredValue || this.value || []);\n let selection = this.selectionPageOnly && this._selection ? this._selection.filter(s => !data.some(d => this.equals(s, d))) : [];\n if (check) {\n selection = this.frozenValue ? [...selection, ...this.frozenValue, ...data] : [...selection, ...data];\n selection = this.rowSelectable ? selection.filter((data, index) => this.rowSelectable({ data, index })) : selection;\n }\n this._selection = selection;\n this.preventSelectionSetterPropagation = true;\n this.updateSelectionKeys();\n this.selectionChange.emit(this._selection);\n this.tableService.onSelectionChange();\n this.onHeaderCheckboxToggle.emit({ originalEvent: event, checked: check });\n if (this.isStateful()) {\n this.saveState();\n }\n }\n }\n equals(data1, data2) {\n return this.compareSelectionBy === 'equals' ? (data1 === data2) : ObjectUtils.equals(data1, data2, this.dataKey);\n }\n /* Legacy Filtering for custom elements */\n filter(value, field, matchMode) {\n if (this.filterTimeout) {\n clearTimeout(this.filterTimeout);\n }\n if (!this.isFilterBlank(value)) {\n this.filters[field] = { value: value, matchMode: matchMode };\n }\n else if (this.filters[field]) {\n delete this.filters[field];\n }\n this.filterTimeout = setTimeout(() => {\n this._filter();\n this.filterTimeout = null;\n }, this.filterDelay);\n this.anchorRowIndex = null;\n }\n filterGlobal(value, matchMode) {\n this.filter(value, 'global', matchMode);\n }\n isFilterBlank(filter) {\n if (filter !== null && filter !== undefined) {\n if ((typeof filter === 'string' && filter.trim().length == 0) || (filter instanceof Array && filter.length == 0))\n return true;\n else\n return false;\n }\n return true;\n }\n _filter() {\n if (!this.restoringFilter) {\n this.first = 0;\n this.firstChange.emit(this.first);\n }\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else {\n if (!this.value) {\n return;\n }\n if (!this.hasFilter()) {\n this.filteredValue = null;\n if (this.paginator) {\n this.totalRecords = this.value ? this.value.length : 0;\n }\n }\n else {\n let globalFilterFieldsArray;\n if (this.filters['global']) {\n if (!this.columns && !this.globalFilterFields)\n throw new Error('Global filtering requires dynamic columns or globalFilterFields to be defined.');\n else\n globalFilterFieldsArray = this.globalFilterFields || this.columns;\n }\n this.filteredValue = [];\n for (let i = 0; i < this.value.length; i++) {\n let localMatch = true;\n let globalMatch = false;\n let localFiltered = false;\n for (let prop in this.filters) {\n if (this.filters.hasOwnProperty(prop) && prop !== 'global') {\n localFiltered = true;\n let filterField = prop;\n let filterMeta = this.filters[filterField];\n if (Array.isArray(filterMeta)) {\n for (let meta of filterMeta) {\n localMatch = this.executeLocalFilter(filterField, this.value[i], meta);\n if ((meta.operator === FilterOperator.OR && localMatch) || (meta.operator === FilterOperator.AND && !localMatch)) {\n break;\n }\n }\n }\n else {\n localMatch = this.executeLocalFilter(filterField, this.value[i], filterMeta);\n }\n if (!localMatch) {\n break;\n }\n }\n }\n if (this.filters['global'] && !globalMatch && globalFilterFieldsArray) {\n for (let j = 0; j < globalFilterFieldsArray.length; j++) {\n let globalFilterField = globalFilterFieldsArray[j].field || globalFilterFieldsArray[j];\n globalMatch = this.filterService.filters[this.filters['global'].matchMode](ObjectUtils.resolveFieldData(this.value[i], globalFilterField), this.filters['global'].value, this.filterLocale);\n if (globalMatch) {\n break;\n }\n }\n }\n let matches;\n if (this.filters['global']) {\n matches = localFiltered ? (localFiltered && localMatch && globalMatch) : globalMatch;\n }\n else {\n matches = localFiltered && localMatch;\n }\n if (matches) {\n this.filteredValue.push(this.value[i]);\n }\n }\n if (this.filteredValue.length === this.value.length) {\n this.filteredValue = null;\n }\n if (this.paginator) {\n this.totalRecords = this.filteredValue ? this.filteredValue.length : this.value ? this.value.length : 0;\n }\n }\n }\n this.onFilter.emit({\n filters: this.filters,\n filteredValue: this.filteredValue || this.value\n });\n this.tableService.onValueChange(this.value);\n if (this.isStateful() && !this.restoringFilter) {\n this.saveState();\n }\n if (this.restoringFilter) {\n this.restoringFilter = false;\n }\n this.cd.markForCheck();\n if (this.scrollable) {\n this.resetScrollTop();\n }\n }\n executeLocalFilter(field, rowData, filterMeta) {\n let filterValue = filterMeta.value;\n let filterMatchMode = filterMeta.matchMode || FilterMatchMode.STARTS_WITH;\n let dataFieldValue = ObjectUtils.resolveFieldData(rowData, field);\n let filterConstraint = this.filterService.filters[filterMatchMode];\n return filterConstraint(dataFieldValue, filterValue, this.filterLocale);\n }\n hasFilter() {\n let empty = true;\n for (let prop in this.filters) {\n if (this.filters.hasOwnProperty(prop)) {\n empty = false;\n break;\n }\n }\n return !empty;\n }\n createLazyLoadMetadata() {\n return {\n first: this.first,\n rows: this.rows,\n sortField: this.sortField,\n sortOrder: this.sortOrder,\n filters: this.filters,\n globalFilter: this.filters && this.filters['global'] ? this.filters['global'].value : null,\n multiSortMeta: this.multiSortMeta\n };\n }\n clear() {\n this._sortField = null;\n this._sortOrder = this.defaultSortOrder;\n this._multiSortMeta = null;\n this.tableService.onSort(null);\n if (this.filters['global']) {\n this.filters['global'].value = null;\n }\n this.filteredValue = null;\n this.tableService.onResetChange();\n this.first = 0;\n this.firstChange.emit(this.first);\n if (this.lazy) {\n this.onLazyLoad.emit(this.createLazyLoadMetadata());\n }\n else {\n this.totalRecords = (this._value ? this._value.length : 0);\n }\n }\n reset() {\n this.clear();\n }\n getExportHeader(column) {\n return column[this.exportHeader] || column.header || column.field;\n }\n exportCSV(options) {\n let data;\n let csv = '';\n let columns = this.columns;\n if (options && options.selectionOnly) {\n data = this.selection || [];\n }\n else {\n data = this.filteredValue || this.value;\n if (this.frozenValue) {\n data = data ? [...this.frozenValue, ...data] : this.frozenValue;\n }\n }\n //headers\n for (let i = 0; i < columns.length; i++) {\n let column = columns[i];\n if (column.exportable !== false && column.field) {\n csv += '\"' + this.getExportHeader(column) + '\"';\n if (i < (columns.length - 1)) {\n csv += this.csvSeparator;\n }\n }\n }\n //body\n data.forEach((record, i) => {\n csv += '\\n';\n for (let i = 0; i < columns.length; i++) {\n let column = columns[i];\n if (column.exportable !== false && column.field) {\n let cellData = ObjectUtils.resolveFieldData(record, column.field);\n if (cellData != null) {\n if (this.exportFunction) {\n cellData = this.exportFunction({\n data: cellData,\n field: column.field\n });\n }\n else\n cellData = String(cellData).replace(/\"/g, '\"\"');\n }\n else\n cellData = '';\n csv += '\"' + cellData + '\"';\n if (i < (columns.length - 1)) {\n csv += this.csvSeparator;\n }\n }\n }\n });\n let blob = new Blob([csv], {\n type: 'text/csv;charset=utf-8;'\n });\n let link = document.createElement(\"a\");\n link.style.display = 'none';\n document.body.appendChild(link);\n if (link.download !== undefined) {\n link.setAttribute('href', URL.createObjectURL(blob));\n link.setAttribute('download', this.exportFilename + '.csv');\n link.click();\n }\n else {\n csv = 'data:text/csv;charset=utf-8,' + csv;\n window.open(encodeURI(csv));\n }\n document.body.removeChild(link);\n }\n resetScrollTop() {\n if (this.virtualScroll)\n this.scrollToVirtualIndex(0);\n else\n this.scrollTo({ top: 0 });\n }\n scrollToVirtualIndex(index) {\n if (this.virtualScrollBody) {\n this.virtualScrollBody.scrollToIndex(index);\n }\n }\n onScrollIndexChange(index) {\n if (this.lazy) {\n if (this.virtualScrollTimeout) {\n clearTimeout(this.virtualScrollTimeout);\n }\n this.virtualScrollTimeout = setTimeout(() => {\n let page = Math.floor(index / this.rows);\n let virtualScrollOffset = page === 0 ? 0 : (page - 1) * this.rows;\n let virtualScrollChunkSize = page === 0 ? this.rows * 2 : this.rows * 3;\n if (page !== this.virtualPage) {\n this.virtualPage = page;\n if (this.lazyLoadOnInit || this.virtualScrollInitialized) {\n this.onLazyLoad.emit({\n first: virtualScrollOffset,\n rows: virtualScrollChunkSize,\n sortField: this.sortField,\n sortOrder: this.sortOrder,\n filters: this.filters,\n globalFilter: this.filters && this.filters['global'] ? this.filters['global'].value : null,\n multiSortMeta: this.multiSortMeta\n });\n }\n else {\n this.virtualScrollInitialized = true;\n }\n }\n }, this.virtualScrollDelay);\n }\n }\n scrollTo(options) {\n if (this.virtualScrollBody) {\n this.virtualScrollBody.scrollTo(options);\n }\n else if (this.wrapperViewChild && this.wrapperViewChild.nativeElement) {\n if (this.wrapperViewChild.nativeElement.scrollTo) {\n this.wrapperViewChild.nativeElement.scrollTo(options);\n }\n else {\n this.wrapperViewChild.nativeElement.scrollLeft = options.left;\n this.wrapperViewChild.nativeElement.scrollTop = options.top;\n }\n }\n }\n updateEditingCell(cell, data, field, index) {\n this.editingCell = cell;\n this.editingCellData = data;\n this.editingCellField = field;\n this.editingCellRowIndex = index;\n this.bindDocumentEditListener();\n }\n isEditingCellValid() {\n return (this.editingCell && DomHandler.find(this.editingCell, '.ng-invalid.ng-dirty').length === 0);\n }\n bindDocumentEditListener() {\n if (!this.documentEditListener) {\n this.documentEditListener = (event) => {\n if (this.editingCell && !this.selfClick && this.isEditingCellValid()) {\n DomHandler.removeClass(this.editingCell, 'p-cell-editing');\n this.editingCell = null;\n this.onEditComplete.emit({ field: this.editingCellField, data: this.editingCellData, originalEvent: event, index: this.editingCellRowIndex });\n this.editingCellField = null;\n this.editingCellData = null;\n this.editingCellRowIndex = null;\n this.unbindDocumentEditListener();\n this.cd.markForCheck();\n if (this.overlaySubscription) {\n this.overlaySubscription.unsubscribe();\n }\n }\n this.selfClick = false;\n };\n document.addEventListener('click', this.documentEditListener);\n }\n }\n unbindDocumentEditListener() {\n if (this.documentEditListener) {\n document.removeEventListener('click', this.documentEditListener);\n this.documentEditListener = null;\n }\n }\n initRowEdit(rowData) {\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n this.editingRowKeys[dataKeyValue] = true;\n }\n saveRowEdit(rowData, rowElement) {\n if (DomHandler.find(rowElement, '.ng-invalid.ng-dirty').length === 0) {\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n delete this.editingRowKeys[dataKeyValue];\n }\n }\n cancelRowEdit(rowData) {\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n delete this.editingRowKeys[dataKeyValue];\n }\n toggleRow(rowData, event) {\n if (!this.dataKey) {\n throw new Error('dataKey must be defined to use row expansion');\n }\n let dataKeyValue = String(ObjectUtils.resolveFieldData(rowData, this.dataKey));\n if (this.expandedRowKeys[dataKeyValue] != null) {\n delete this.expandedRowKeys[dataKeyValue];\n this.onRowCollapse.emit({\n originalEvent: event,\n data: rowData\n });\n }\n else {\n if (this.rowExpandMode === 'single') {\n this.expandedRowKeys = {};\n }\n this.expandedRowKeys[dataKeyValue] = true;\n this.onRowExpand.emit({\n originalEvent: event,\n data: rowData\n });\n }\n if (event) {\n event.preventDefault();\n }\n if (this.isStateful()) {\n this.saveState();\n }\n }\n isRowExpanded(rowData) {\n return this.expandedRowKeys[String(ObjectUtils.resolveFieldData(rowData, this.dataKey))] === true;\n }\n isRowEditing(rowData) {\n return this.editingRowKeys[String(ObjectUtils.resolveFieldData(rowData, this.dataKey))] === true;\n }\n isSingleSelectionMode() {\n return this.selectionMode === 'single';\n }\n isMultipleSelectionMode() {\n return this.selectionMode === 'multiple';\n }\n onColumnResizeBegin(event) {\n let containerLeft = DomHandler.getOffset(this.containerViewChild.nativeElement).left;\n this.resizeColumnElement = event.target.parentElement;\n this.columnResizing = true;\n this.lastResizerHelperX = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft);\n this.onColumnResize(event);\n event.preventDefault();\n }\n onColumnResize(event) {\n let containerLeft = DomHandler.getOffset(this.containerViewChild.nativeElement).left;\n DomHandler.addClass(this.containerViewChild.nativeElement, 'p-unselectable-text');\n this.resizeHelperViewChild.nativeElement.style.height = this.containerViewChild.nativeElement.offsetHeight + 'px';\n this.resizeHelperViewChild.nativeElement.style.top = 0 + 'px';\n this.resizeHelperViewChild.nativeElement.style.left = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft) + 'px';\n this.resizeHelperViewChild.nativeElement.style.display = 'block';\n }\n onColumnResizeEnd() {\n let delta = this.resizeHelperViewChild.nativeElement.offsetLeft - this.lastResizerHelperX;\n let columnWidth = this.resizeColumnElement.offsetWidth;\n let newColumnWidth = columnWidth + delta;\n let minWidth = this.resizeColumnElement.style.minWidth || 15;\n if (newColumnWidth >= minWidth) {\n if (this.columnResizeMode === 'fit') {\n let nextColumn = this.resizeColumnElement.nextElementSibling;\n let nextColumnWidth = nextColumn.offsetWidth - delta;\n if (newColumnWidth > 15 && nextColumnWidth > 15) {\n this.resizeTableCells(newColumnWidth, nextColumnWidth);\n }\n }\n else if (this.columnResizeMode === 'expand') {\n let tableWidth = this.tableViewChild.nativeElement.offsetWidth + delta;\n this.tableViewChild.nativeElement.style.width = tableWidth + 'px';\n this.tableViewChild.nativeElement.style.minWidth = tableWidth + 'px';\n this.resizeTableCells(newColumnWidth, null);\n }\n this.onColResize.emit({\n element: this.resizeColumnElement,\n delta: delta\n });\n if (this.isStateful()) {\n this.saveState();\n }\n }\n this.resizeHelperViewChild.nativeElement.style.display = 'none';\n DomHandler.removeClass(this.containerViewChild.nativeElement, 'p-unselectable-text');\n }\n resizeTableCells(newColumnWidth, nextColumnWidth) {\n let colIndex = DomHandler.index(this.resizeColumnElement);\n let widths = [];\n const tableHead = DomHandler.findSingle(this.containerViewChild.nativeElement, '.p-datatable-thead');\n let headers = DomHandler.find(tableHead, 'tr > th');\n headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));\n this.destroyStyleElement();\n this.createStyleElement();\n let innerHTML = '';\n widths.forEach((width, index) => {\n let colWidth = index === colIndex ? newColumnWidth : (nextColumnWidth && index === colIndex + 1) ? nextColumnWidth : width;\n let style = this.scrollable ? `flex: 1 1 ${colWidth}px !important` : `width: ${colWidth}px !important`;\n innerHTML += `\n #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),\n #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),\n #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {\n ${style}\n }\n `;\n });\n this.styleElement.innerHTML = innerHTML;\n }\n onColumnDragStart(event, columnElement) {\n this.reorderIconWidth = DomHandler.getHiddenElementOuterWidth(this.reorderIndicatorUpViewChild.nativeElement);\n this.reorderIconHeight = DomHandler.getHiddenElementOuterHeight(this.reorderIndicatorDownViewChild.nativeElement);\n this.draggedColumn = columnElement;\n event.dataTransfer.setData('text', 'b'); // For firefox\n }\n onColumnDragEnter(event, dropHeader) {\n if (this.reorderableColumns && this.draggedColumn && dropHeader) {\n event.preventDefault();\n let containerOffset = DomHandler.getOffset(this.containerViewChild.nativeElement);\n let dropHeaderOffset = DomHandler.getOffset(dropHeader);\n if (this.draggedColumn != dropHeader) {\n let dragIndex = DomHandler.indexWithinGroup(this.draggedColumn, 'preorderablecolumn');\n let dropIndex = DomHandler.indexWithinGroup(dropHeader, 'preorderablecolumn');\n let targetLeft = dropHeaderOffset.left - containerOffset.left;\n let targetTop = containerOffset.top - dropHeaderOffset.top;\n let columnCenter = dropHeaderOffset.left + dropHeader.offsetWidth / 2;\n this.reorderIndicatorUpViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top - (this.reorderIconHeight - 1) + 'px';\n this.reorderIndicatorDownViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top + dropHeader.offsetHeight + 'px';\n if (event.pageX > columnCenter) {\n this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.dropPosition = 1;\n }\n else {\n this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';\n this.dropPosition = -1;\n }\n if ((dropIndex - dragIndex === 1 && this.dropPosition === -1) || (dropIndex - dragIndex === -1 && this.dropPosition === 1)) {\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'none';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'none';\n }\n else {\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'block';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'block';\n }\n }\n else {\n event.dataTransfer.dropEffect = 'none';\n }\n }\n }\n onColumnDragLeave(event) {\n if (this.reorderableColumns && this.draggedColumn) {\n event.preventDefault();\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'none';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'none';\n }\n }\n onColumnDrop(event, dropColumn) {\n event.preventDefault();\n if (this.draggedColumn) {\n let dragIndex = DomHandler.indexWithinGroup(this.draggedColumn, 'preorderablecolumn');\n let dropIndex = DomHandler.indexWithinGroup(dropColumn, 'preorderablecolumn');\n let allowDrop = (dragIndex != dropIndex);\n if (allowDrop && ((dropIndex - dragIndex == 1 && this.dropPosition === -1) || (dragIndex - dropIndex == 1 && this.dropPosition === 1))) {\n allowDrop = false;\n }\n if (allowDrop && ((dropIndex < dragIndex && this.dropPosition === 1))) {\n dropIndex = dropIndex + 1;\n }\n if (allowDrop && ((dropIndex > dragIndex && this.dropPosition === -1))) {\n dropIndex = dropIndex - 1;\n }\n if (allowDrop) {\n ObjectUtils.reorderArray(this.columns, dragIndex, dropIndex);\n this.onColReorder.emit({\n dragIndex: dragIndex,\n dropIndex: dropIndex,\n columns: this.columns\n });\n if (this.isStateful()) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.saveState();\n });\n });\n }\n }\n this.reorderIndicatorUpViewChild.nativeElement.style.display = 'none';\n this.reorderIndicatorDownViewChild.nativeElement.style.display = 'none';\n this.draggedColumn.draggable = false;\n this.draggedColumn = null;\n this.dropPosition = null;\n }\n }\n onRowDragStart(event, index) {\n this.rowDragging = true;\n this.draggedRowIndex = index;\n event.dataTransfer.setData('text', 'b'); // For firefox\n }\n onRowDragOver(event, index, rowElement) {\n if (this.rowDragging && this.draggedRowIndex !== index) {\n let rowY = DomHandler.getOffset(rowElement).top + DomHandler.getWindowScrollTop();\n let pageY = event.pageY;\n let rowMidY = rowY + DomHandler.getOuterHeight(rowElement) / 2;\n let prevRowElement = rowElement.previousElementSibling;\n if (pageY < rowMidY) {\n DomHandler.removeClass(rowElement, 'p-datatable-dragpoint-bottom');\n this.droppedRowIndex = index;\n if (prevRowElement)\n DomHandler.addClass(prevRowElement, 'p-datatable-dragpoint-bottom');\n else\n DomHandler.addClass(rowElement, 'p-datatable-dragpoint-top');\n }\n else {\n if (prevRowElement)\n DomHandler.removeClass(prevRowElement, 'p-datatable-dragpoint-bottom');\n else\n DomHandler.addClass(rowElement, 'p-datatable-dragpoint-top');\n this.droppedRowIndex = index + 1;\n DomHandler.addClass(rowElement, 'p-datatable-dragpoint-bottom');\n }\n }\n }\n onRowDragLeave(event, rowElement) {\n let prevRowElement = rowElement.previousElementSibling;\n if (prevRowElement) {\n DomHandler.removeClass(prevRowElement, 'p-datatable-dragpoint-bottom');\n }\n DomHandler.removeClass(rowElement, 'p-datatable-dragpoint-bottom');\n DomHandler.removeClass(rowElement, 'p-datatable-dragpoint-top');\n }\n onRowDragEnd(event) {\n this.rowDragging = false;\n this.draggedRowIndex = null;\n this.droppedRowIndex = null;\n }\n onRowDrop(event, rowElement) {\n if (this.droppedRowIndex != null) {\n let dropIndex = (this.draggedRowIndex > this.droppedRowIndex) ? this.droppedRowIndex : (this.droppedRowIndex === 0) ? 0 : this.droppedRowIndex - 1;\n ObjectUtils.reorderArray(this.value, this.draggedRowIndex, dropIndex);\n this.onRowReorder.emit({\n dragIndex: this.draggedRowIndex,\n dropIndex: dropIndex\n });\n }\n //cleanup\n this.onRowDragLeave(event, rowElement);\n this.onRowDragEnd(event);\n }\n isEmpty() {\n let data = this.filteredValue || this.value;\n return data == null || data.length == 0;\n }\n getBlockableElement() {\n return this.el.nativeElement.children[0];\n }\n getStorage() {\n switch (this.stateStorage) {\n case 'local':\n return window.localStorage;\n case 'session':\n return window.sessionStorage;\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n }\n isStateful() {\n return this.stateKey != null;\n }\n saveState() {\n const storage = this.getStorage();\n let state = {};\n if (this.paginator) {\n state.first = this.first;\n state.rows = this.rows;\n }\n if (this.sortField) {\n state.sortField = this.sortField;\n state.sortOrder = this.sortOrder;\n }\n if (this.multiSortMeta) {\n state.multiSortMeta = this.multiSortMeta;\n }\n if (this.hasFilter()) {\n state.filters = this.filters;\n }\n if (this.resizableColumns) {\n this.saveColumnWidths(state);\n }\n if (this.reorderableColumns) {\n this.saveColumnOrder(state);\n }\n if (this.selection) {\n state.selection = this.selection;\n }\n if (Object.keys(this.expandedRowKeys).length) {\n state.expandedRowKeys = this.expandedRowKeys;\n }\n storage.setItem(this.stateKey, JSON.stringify(state));\n this.onStateSave.emit(state);\n }\n clearState() {\n const storage = this.getStorage();\n if (this.stateKey) {\n storage.removeItem(this.stateKey);\n }\n }\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n const dateFormat = /\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/;\n const reviver = function (key, value) {\n if (typeof value === \"string\" && dateFormat.test(value)) {\n return new Date(value);\n }\n return value;\n };\n if (stateString) {\n let state = JSON.parse(stateString, reviver);\n if (this.paginator) {\n if (this.first !== undefined) {\n this.first = state.first;\n this.firstChange.emit(this.first);\n }\n if (this.rows !== undefined) {\n this.rows = state.rows;\n this.rowsChange.emit(this.rows);\n }\n }\n if (state.sortField) {\n this.restoringSort = true;\n this._sortField = state.sortField;\n this._sortOrder = state.sortOrder;\n }\n if (state.multiSortMeta) {\n this.restoringSort = true;\n this._multiSortMeta = state.multiSortMeta;\n }\n if (state.filters) {\n this.restoringFilter = true;\n this.filters = state.filters;\n }\n if (this.resizableColumns) {\n this.columnWidthsState = state.columnWidths;\n this.tableWidthState = state.tableWidth;\n }\n if (state.expandedRowKeys) {\n this.expandedRowKeys = state.expandedRowKeys;\n }\n if (state.selection) {\n Promise.resolve(null).then(() => this.selectionChange.emit(state.selection));\n }\n this.stateRestored = true;\n this.onStateRestore.emit(state);\n }\n }\n saveColumnWidths(state) {\n let widths = [];\n let headers = DomHandler.find(this.containerViewChild.nativeElement, '.p-datatable-thead > tr > th');\n headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));\n state.columnWidths = widths.join(',');\n if (this.columnResizeMode === 'expand') {\n state.tableWidth = DomHandler.getOuterWidth(this.tableViewChild.nativeElement) + 'px';\n }\n }\n restoreColumnWidths() {\n if (this.columnWidthsState) {\n let widths = this.columnWidthsState.split(',');\n if (this.columnResizeMode === 'expand' && this.tableWidthState) {\n this.tableViewChild.nativeElement.style.width = this.tableWidthState;\n this.tableViewChild.nativeElement.style.minWidth = this.tableWidthState;\n this.containerViewChild.nativeElement.style.width = this.tableWidthState;\n }\n if (ObjectUtils.isNotEmpty(widths)) {\n this.createStyleElement();\n let innerHTML = '';\n widths.forEach((width, index) => {\n let style = this.scrollable ? `flex: 1 1 ${width}px !important` : `width: ${width}px !important`;\n innerHTML += `\n #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),\n #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),\n #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {\n ${style}\n }\n `;\n });\n this.styleElement.innerHTML = innerHTML;\n }\n }\n }\n saveColumnOrder(state) {\n if (this.columns) {\n let columnOrder = [];\n this.columns.map(column => {\n columnOrder.push(column.field || column.key);\n });\n state.columnOrder = columnOrder;\n }\n }\n restoreColumnOrder() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n if (stateString) {\n let state = JSON.parse(stateString);\n let columnOrder = state.columnOrder;\n if (columnOrder) {\n let reorderedColumns = [];\n columnOrder.map(key => {\n let col = this.findColumnByKey(key);\n if (col) {\n reorderedColumns.push(col);\n }\n });\n this.columnOrderStateRestored = true;\n this.columns = reorderedColumns;\n }\n }\n }\n findColumnByKey(key) {\n if (this.columns) {\n for (let col of this.columns) {\n if (col.key === key || col.field === key)\n return col;\n else\n continue;\n }\n }\n else {\n return null;\n }\n }\n createStyleElement() {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n document.head.appendChild(this.styleElement);\n }\n getGroupRowsMeta() {\n return { field: this.groupRowsBy, order: this.groupRowsByOrder };\n }\n createResponsiveStyle() {\n if (!this.responsiveStyleElement) {\n this.responsiveStyleElement = document.createElement('style');\n this.responsiveStyleElement.type = 'text/css';\n document.head.appendChild(this.responsiveStyleElement);\n let innerHTML = `\n@media screen and (max-width: ${this.breakpoint}) {\n #${this.id} .p-datatable-thead > tr > th,\n #${this.id} .p-datatable-tfoot > tr > td {\n display: none !important;\n }\n\n #${this.id} .p-datatable-tbody > tr > td {\n display: flex;\n width: 100% !important;\n align-items: center;\n justify-content: space-between;\n }\n\n #${this.id} .p-datatable-tbody > tr > td:not(:last-child) {\n border: 0 none;\n }\n\n #${this.id}.p-datatable-gridlines .p-datatable-tbody > tr > td:last-child {\n border-top: 0;\n border-right: 0;\n border-left: 0;\n }\n\n #${this.id} .p-datatable-tbody > tr > td > .p-column-title {\n display: block;\n }\n}\n`;\n this.responsiveStyleElement.innerHTML = innerHTML;\n }\n }\n destroyResponsiveStyle() {\n if (this.responsiveStyleElement) {\n document.head.removeChild(this.responsiveStyleElement);\n this.responsiveStyleElement = null;\n }\n }\n destroyStyleElement() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n }\n ngOnDestroy() {\n this.unbindDocumentEditListener();\n this.editingCell = null;\n this.initialized = null;\n this.virtualScrollInitialized = null;\n if (this.virtualScrollSubscription) {\n this.virtualScrollSubscription.unsubscribe();\n }\n this.destroyStyleElement();\n this.destroyResponsiveStyle();\n }\n}\nTable.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Table, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i1.FilterService }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nTable.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: Table, selector: \"p-table\", inputs: { frozenColumns: \"frozenColumns\", frozenValue: \"frozenValue\", style: \"style\", styleClass: \"styleClass\", tableStyle: \"tableStyle\", tableStyleClass: \"tableStyleClass\", paginator: \"paginator\", pageLinks: \"pageLinks\", rowsPerPageOptions: \"rowsPerPageOptions\", alwaysShowPaginator: \"alwaysShowPaginator\", paginatorPosition: \"paginatorPosition\", paginatorDropdownAppendTo: \"paginatorDropdownAppendTo\", paginatorDropdownScrollHeight: \"paginatorDropdownScrollHeight\", currentPageReportTemplate: \"currentPageReportTemplate\", showCurrentPageReport: \"showCurrentPageReport\", showJumpToPageDropdown: \"showJumpToPageDropdown\", showJumpToPageInput: \"showJumpToPageInput\", showFirstLastIcon: \"showFirstLastIcon\", showPageLinks: \"showPageLinks\", defaultSortOrder: \"defaultSortOrder\", sortMode: \"sortMode\", resetPageOnSort: \"resetPageOnSort\", selectionMode: \"selectionMode\", selectionPageOnly: \"selectionPageOnly\", contextMenuSelection: \"contextMenuSelection\", contextMenuSelectionMode: \"contextMenuSelectionMode\", dataKey: \"dataKey\", metaKeySelection: \"metaKeySelection\", rowSelectable: \"rowSelectable\", rowTrackBy: \"rowTrackBy\", lazy: \"lazy\", lazyLoadOnInit: \"lazyLoadOnInit\", compareSelectionBy: \"compareSelectionBy\", csvSeparator: \"csvSeparator\", exportFilename: \"exportFilename\", filters: \"filters\", globalFilterFields: \"globalFilterFields\", filterDelay: \"filterDelay\", filterLocale: \"filterLocale\", expandedRowKeys: \"expandedRowKeys\", editingRowKeys: \"editingRowKeys\", rowExpandMode: \"rowExpandMode\", scrollable: \"scrollable\", scrollDirection: \"scrollDirection\", rowGroupMode: \"rowGroupMode\", scrollHeight: \"scrollHeight\", virtualScroll: \"virtualScroll\", virtualScrollDelay: \"virtualScrollDelay\", virtualRowHeight: \"virtualRowHeight\", frozenWidth: \"frozenWidth\", responsive: \"responsive\", contextMenu: \"contextMenu\", resizableColumns: \"resizableColumns\", columnResizeMode: \"columnResizeMode\", reorderableColumns: \"reorderableColumns\", loading: \"loading\", loadingIcon: \"loadingIcon\", showLoader: \"showLoader\", rowHover: \"rowHover\", customSort: \"customSort\", showInitialSortBadge: \"showInitialSortBadge\", autoLayout: \"autoLayout\", exportFunction: \"exportFunction\", exportHeader: \"exportHeader\", stateKey: \"stateKey\", stateStorage: \"stateStorage\", editMode: \"editMode\", groupRowsBy: \"groupRowsBy\", groupRowsByOrder: \"groupRowsByOrder\", minBufferPx: \"minBufferPx\", maxBufferPx: \"maxBufferPx\", responsiveLayout: \"responsiveLayout\", breakpoint: \"breakpoint\", value: \"value\", columns: \"columns\", first: \"first\", rows: \"rows\", totalRecords: \"totalRecords\", sortField: \"sortField\", sortOrder: \"sortOrder\", multiSortMeta: \"multiSortMeta\", selection: \"selection\", selectAll: \"selectAll\" }, outputs: { selectAllChange: \"selectAllChange\", selectionChange: \"selectionChange\", contextMenuSelectionChange: \"contextMenuSelectionChange\", onRowSelect: \"onRowSelect\", onRowUnselect: \"onRowUnselect\", onPage: \"onPage\", onSort: \"onSort\", onFilter: \"onFilter\", onLazyLoad: \"onLazyLoad\", onRowExpand: \"onRowExpand\", onRowCollapse: \"onRowCollapse\", onContextMenuSelect: \"onContextMenuSelect\", onColResize: \"onColResize\", onColReorder: \"onColReorder\", onRowReorder: \"onRowReorder\", onEditInit: \"onEditInit\", onEditComplete: \"onEditComplete\", onEditCancel: \"onEditCancel\", onHeaderCheckboxToggle: \"onHeaderCheckboxToggle\", sortFunction: \"sortFunction\", firstChange: \"firstChange\", rowsChange: \"rowsChange\", onStateSave: \"onStateSave\", onStateRestore: \"onStateRestore\" }, host: { classAttribute: \"p-element\" }, providers: [TableService], queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"containerViewChild\", first: true, predicate: [\"container\"], descendants: true }, { propertyName: \"resizeHelperViewChild\", first: true, predicate: [\"resizeHelper\"], descendants: true }, { propertyName: \"reorderIndicatorUpViewChild\", first: true, predicate: [\"reorderIndicatorUp\"], descendants: true }, { propertyName: \"reorderIndicatorDownViewChild\", first: true, predicate: [\"reorderIndicatorDown\"], descendants: true }, { propertyName: \"wrapperViewChild\", first: true, predicate: [\"wrapper\"], descendants: true }, { propertyName: \"tableViewChild\", first: true, predicate: [\"table\"], descendants: true }, { propertyName: \"tableHeaderViewChild\", first: true, predicate: [\"tableHeader\"], descendants: true }, { propertyName: \"virtualScrollBody\", first: true, predicate: CdkVirtualScrollViewport, descendants: true }], usesOnChanges: true, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n \n\n
    \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n\n \n\n
    \n \n
    \n\n
    \n \n \n
    \n `, isInline: true, styles: [\".p-datatable{position:relative}.p-datatable table{border-collapse:collapse;min-width:100%;table-layout:fixed}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-auto-layout>.p-datatable-wrapper{overflow-x:auto}.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper{overflow-x:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper>table,.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable .p-datatable-wrapper{position:relative;overflow:auto}.p-datatable-scrollable .p-datatable-thead,.p-datatable-scrollable .p-datatable-tbody,.p-datatable-scrollable .p-datatable-tfoot{display:block}.p-datatable-scrollable .p-datatable-thead>tr,.p-datatable-scrollable .p-datatable-tbody>tr,.p-datatable-scrollable .p-datatable-tfoot>tr{display:flex;flex-wrap:nowrap;width:100%}.p-datatable-scrollable .p-datatable-thead>tr>th,.p-datatable-scrollable .p-datatable-tbody>tr>td,.p-datatable-scrollable .p-datatable-tfoot>tr>td{display:flex;flex:1 1 0;align-items:center}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-thead,.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-virtual-scrollable-body>.cdk-virtual-scroll-content-wrapper>.p-datatable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-scrollable-both .p-datatable-thead>tr>th,.p-datatable-scrollable-both .p-datatable-tbody>tr>td,.p-datatable-scrollable-both .p-datatable-tfoot>tr>td,.p-datatable-scrollable-horizontal .p-datatable-thead>tr>th .p-datatable-scrollable-horizontal .p-datatable-tbody>tr>td,.p-datatable-scrollable-horizontal .p-datatable-tfoot>tr>td{flex:0 0 auto}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable .p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable .p-rowgroup-header{position:sticky;z-index:1}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot{display:table;border-collapse:collapse;width:100%;table-layout:fixed}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr{display:table-row}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr>th,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr>td{display:table-cell}.p-datatable-flex-scrollable{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-flex-scrollable .p-datatable-virtual-scrollable-body{flex:1}.p-datatable-resizable>.p-datatable-wrapper{overflow-x:auto}.p-datatable-resizable .p-datatable-thead>tr>th,.p-datatable-resizable .p-datatable-tfoot>tr>td,.p-datatable-resizable .p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable .p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-fit .p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable .p-datatable-tbody>tr>td>.p-column-title{display:none}cdk-virtual-scroll-viewport{outline:0 none}\\n\"], components: [{ type: i0.forwardRef(function () { return i2.Paginator; }), selector: \"p-paginator\", inputs: [\"pageLinkSize\", \"style\", \"styleClass\", \"alwaysShow\", \"templateLeft\", \"templateRight\", \"dropdownAppendTo\", \"dropdownScrollHeight\", \"currentPageReportTemplate\", \"showCurrentPageReport\", \"showFirstLastIcon\", \"totalRecords\", \"rows\", \"rowsPerPageOptions\", \"showJumpToPageDropdown\", \"showJumpToPageInput\", \"showPageLinks\", \"dropdownItemTemplate\", \"first\"], outputs: [\"onPageChange\"] }, { type: i0.forwardRef(function () { return TableBody; }), selector: \"[pTableBody]\", inputs: [\"pTableBody\", \"pTableBodyTemplate\", \"value\", \"frozen\", \"frozenRows\"] }, { type: i0.forwardRef(function () { return i3.CdkVirtualScrollViewport; }), selector: \"cdk-virtual-scroll-viewport\", inputs: [\"orientation\", \"appendOnly\"], outputs: [\"scrolledIndexChange\"] }], directives: [{ type: i0.forwardRef(function () { return i4.NgStyle; }), selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i0.forwardRef(function () { return i4.NgClass; }), selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i0.forwardRef(function () { return i4.NgIf; }), selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i0.forwardRef(function () { return i4.NgTemplateOutlet; }), selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i0.forwardRef(function () { return i3.CdkFixedSizeVirtualScroll; }), selector: \"cdk-virtual-scroll-viewport[itemSize]\", inputs: [\"itemSize\", \"minBufferPx\", \"maxBufferPx\"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: Table, decorators: [{\n type: Component,\n args: [{ selector: 'p-table', template: `\n
    \n
    \n \n
    \n
    \n \n
    \n \n\n
    \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n\n \n\n
    \n \n
    \n\n
    \n \n \n
    \n `, providers: [TableService], changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element'\n }, styles: [\".p-datatable{position:relative}.p-datatable table{border-collapse:collapse;min-width:100%;table-layout:fixed}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-auto-layout>.p-datatable-wrapper{overflow-x:auto}.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper{overflow-x:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper>table,.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable .p-datatable-wrapper{position:relative;overflow:auto}.p-datatable-scrollable .p-datatable-thead,.p-datatable-scrollable .p-datatable-tbody,.p-datatable-scrollable .p-datatable-tfoot{display:block}.p-datatable-scrollable .p-datatable-thead>tr,.p-datatable-scrollable .p-datatable-tbody>tr,.p-datatable-scrollable .p-datatable-tfoot>tr{display:flex;flex-wrap:nowrap;width:100%}.p-datatable-scrollable .p-datatable-thead>tr>th,.p-datatable-scrollable .p-datatable-tbody>tr>td,.p-datatable-scrollable .p-datatable-tfoot>tr>td{display:flex;flex:1 1 0;align-items:center}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-thead,.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-virtual-scrollable-body>.cdk-virtual-scroll-content-wrapper>.p-datatable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-scrollable-both .p-datatable-thead>tr>th,.p-datatable-scrollable-both .p-datatable-tbody>tr>td,.p-datatable-scrollable-both .p-datatable-tfoot>tr>td,.p-datatable-scrollable-horizontal .p-datatable-thead>tr>th .p-datatable-scrollable-horizontal .p-datatable-tbody>tr>td,.p-datatable-scrollable-horizontal .p-datatable-tfoot>tr>td{flex:0 0 auto}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable .p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable .p-rowgroup-header{position:sticky;z-index:1}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot{display:table;border-collapse:collapse;width:100%;table-layout:fixed}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr{display:table-row}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr>th,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr>td{display:table-cell}.p-datatable-flex-scrollable{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-flex-scrollable .p-datatable-virtual-scrollable-body{flex:1}.p-datatable-resizable>.p-datatable-wrapper{overflow-x:auto}.p-datatable-resizable .p-datatable-thead>tr>th,.p-datatable-resizable .p-datatable-tfoot>tr>td,.p-datatable-resizable .p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable .p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-fit .p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable .p-datatable-tbody>tr>td>.p-column-title{display:none}cdk-virtual-scroll-viewport{outline:0 none}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }, { type: i1.OverlayService }]; }, propDecorators: { frozenColumns: [{\n type: Input\n }], frozenValue: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], tableStyle: [{\n type: Input\n }], tableStyleClass: [{\n type: Input\n }], paginator: [{\n type: Input\n }], pageLinks: [{\n type: Input\n }], rowsPerPageOptions: [{\n type: Input\n }], alwaysShowPaginator: [{\n type: Input\n }], paginatorPosition: [{\n type: Input\n }], paginatorDropdownAppendTo: [{\n type: Input\n }], paginatorDropdownScrollHeight: [{\n type: Input\n }], currentPageReportTemplate: [{\n type: Input\n }], showCurrentPageReport: [{\n type: Input\n }], showJumpToPageDropdown: [{\n type: Input\n }], showJumpToPageInput: [{\n type: Input\n }], showFirstLastIcon: [{\n type: Input\n }], showPageLinks: [{\n type: Input\n }], defaultSortOrder: [{\n type: Input\n }], sortMode: [{\n type: Input\n }], resetPageOnSort: [{\n type: Input\n }], selectionMode: [{\n type: Input\n }], selectionPageOnly: [{\n type: Input\n }], selectAllChange: [{\n type: Output\n }], selectionChange: [{\n type: Output\n }], contextMenuSelection: [{\n type: Input\n }], contextMenuSelectionChange: [{\n type: Output\n }], contextMenuSelectionMode: [{\n type: Input\n }], dataKey: [{\n type: Input\n }], metaKeySelection: [{\n type: Input\n }], rowSelectable: [{\n type: Input\n }], rowTrackBy: [{\n type: Input\n }], lazy: [{\n type: Input\n }], lazyLoadOnInit: [{\n type: Input\n }], compareSelectionBy: [{\n type: Input\n }], csvSeparator: [{\n type: Input\n }], exportFilename: [{\n type: Input\n }], filters: [{\n type: Input\n }], globalFilterFields: [{\n type: Input\n }], filterDelay: [{\n type: Input\n }], filterLocale: [{\n type: Input\n }], expandedRowKeys: [{\n type: Input\n }], editingRowKeys: [{\n type: Input\n }], rowExpandMode: [{\n type: Input\n }], scrollable: [{\n type: Input\n }], scrollDirection: [{\n type: Input\n }], rowGroupMode: [{\n type: Input\n }], scrollHeight: [{\n type: Input\n }], virtualScroll: [{\n type: Input\n }], virtualScrollDelay: [{\n type: Input\n }], virtualRowHeight: [{\n type: Input\n }], frozenWidth: [{\n type: Input\n }], responsive: [{\n type: Input\n }], contextMenu: [{\n type: Input\n }], resizableColumns: [{\n type: Input\n }], columnResizeMode: [{\n type: Input\n }], reorderableColumns: [{\n type: Input\n }], loading: [{\n type: Input\n }], loadingIcon: [{\n type: Input\n }], showLoader: [{\n type: Input\n }], rowHover: [{\n type: Input\n }], customSort: [{\n type: Input\n }], showInitialSortBadge: [{\n type: Input\n }], autoLayout: [{\n type: Input\n }], exportFunction: [{\n type: Input\n }], exportHeader: [{\n type: Input\n }], stateKey: [{\n type: Input\n }], stateStorage: [{\n type: Input\n }], editMode: [{\n type: Input\n }], groupRowsBy: [{\n type: Input\n }], groupRowsByOrder: [{\n type: Input\n }], minBufferPx: [{\n type: Input\n }], maxBufferPx: [{\n type: Input\n }], responsiveLayout: [{\n type: Input\n }], breakpoint: [{\n type: Input\n }], onRowSelect: [{\n type: Output\n }], onRowUnselect: [{\n type: Output\n }], onPage: [{\n type: Output\n }], onSort: [{\n type: Output\n }], onFilter: [{\n type: Output\n }], onLazyLoad: [{\n type: Output\n }], onRowExpand: [{\n type: Output\n }], onRowCollapse: [{\n type: Output\n }], onContextMenuSelect: [{\n type: Output\n }], onColResize: [{\n type: Output\n }], onColReorder: [{\n type: Output\n }], onRowReorder: [{\n type: Output\n }], onEditInit: [{\n type: Output\n }], onEditComplete: [{\n type: Output\n }], onEditCancel: [{\n type: Output\n }], onHeaderCheckboxToggle: [{\n type: Output\n }], sortFunction: [{\n type: Output\n }], firstChange: [{\n type: Output\n }], rowsChange: [{\n type: Output\n }], onStateSave: [{\n type: Output\n }], onStateRestore: [{\n type: Output\n }], containerViewChild: [{\n type: ViewChild,\n args: ['container']\n }], resizeHelperViewChild: [{\n type: ViewChild,\n args: ['resizeHelper']\n }], reorderIndicatorUpViewChild: [{\n type: ViewChild,\n args: ['reorderIndicatorUp']\n }], reorderIndicatorDownViewChild: [{\n type: ViewChild,\n args: ['reorderIndicatorDown']\n }], wrapperViewChild: [{\n type: ViewChild,\n args: ['wrapper']\n }], tableViewChild: [{\n type: ViewChild,\n args: ['table']\n }], tableHeaderViewChild: [{\n type: ViewChild,\n args: ['tableHeader']\n }], virtualScrollBody: [{\n type: ViewChild,\n args: [CdkVirtualScrollViewport]\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }], value: [{\n type: Input\n }], columns: [{\n type: Input\n }], first: [{\n type: Input\n }], rows: [{\n type: Input\n }], totalRecords: [{\n type: Input\n }], sortField: [{\n type: Input\n }], sortOrder: [{\n type: Input\n }], multiSortMeta: [{\n type: Input\n }], selection: [{\n type: Input\n }], selectAll: [{\n type: Input\n }] } });\nclass TableBody {\n constructor(dt, tableService, cd, el) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.el = el;\n this.subscription = this.dt.tableService.valueSource$.subscribe(() => {\n if (this.dt.virtualScroll) {\n this.cd.detectChanges();\n }\n });\n }\n get value() {\n return this._value;\n }\n set value(val) {\n this._value = val;\n if (this.frozenRows) {\n this.updateFrozenRowStickyPosition();\n }\n if (this.dt.scrollable && this.dt.rowGroupMode === 'subheader') {\n this.updateFrozenRowGroupHeaderStickyPosition();\n }\n }\n ngAfterViewInit() {\n if (this.frozenRows) {\n this.updateFrozenRowStickyPosition();\n }\n if (this.dt.scrollable && this.dt.rowGroupMode === 'subheader') {\n this.updateFrozenRowGroupHeaderStickyPosition();\n }\n }\n shouldRenderRowGroupHeader(value, rowData, i) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let prevRowData = value[i - 1];\n if (prevRowData) {\n let previousRowFieldData = ObjectUtils.resolveFieldData(prevRowData, this.dt.groupRowsBy);\n return currentRowFieldData !== previousRowFieldData;\n }\n else {\n return true;\n }\n }\n shouldRenderRowGroupFooter(value, rowData, i) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let nextRowData = value[i + 1];\n if (nextRowData) {\n let nextRowFieldData = ObjectUtils.resolveFieldData(nextRowData, this.dt.groupRowsBy);\n return currentRowFieldData !== nextRowFieldData;\n }\n else {\n return true;\n }\n }\n shouldRenderRowspan(value, rowData, i) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let prevRowData = value[i - 1];\n if (prevRowData) {\n let previousRowFieldData = ObjectUtils.resolveFieldData(prevRowData, this.dt.groupRowsBy);\n return currentRowFieldData !== previousRowFieldData;\n }\n else {\n return true;\n }\n }\n calculateRowGroupSize(value, rowData, index) {\n let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);\n let nextRowFieldData = currentRowFieldData;\n let groupRowSpan = 0;\n while (currentRowFieldData === nextRowFieldData) {\n groupRowSpan++;\n let nextRowData = value[++index];\n if (nextRowData) {\n nextRowFieldData = ObjectUtils.resolveFieldData(nextRowData, this.dt.groupRowsBy);\n }\n else {\n break;\n }\n }\n return groupRowSpan === 1 ? null : groupRowSpan;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n updateFrozenRowStickyPosition() {\n this.el.nativeElement.style.top = DomHandler.getOuterHeight(this.el.nativeElement.previousElementSibling) + 'px';\n }\n updateFrozenRowGroupHeaderStickyPosition() {\n if (this.el.nativeElement.previousElementSibling) {\n let tableHeaderHeight = DomHandler.getOuterHeight(this.el.nativeElement.previousElementSibling);\n this.dt.rowGroupHeaderStyleObject.top = tableHeaderHeight + 'px';\n }\n }\n}\nTableBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableBody, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });\nTableBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: TableBody, selector: \"[pTableBody]\", inputs: { columns: [\"pTableBody\", \"columns\"], template: [\"pTableBodyTemplate\", \"template\"], value: \"value\", frozen: \"frozen\", frozenRows: \"frozenRows\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `, isInline: true, directives: [{ type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i3.CdkVirtualForOf, selector: \"[cdkVirtualFor][cdkVirtualForOf]\", inputs: [\"cdkVirtualForOf\", \"cdkVirtualForTrackBy\", \"cdkVirtualForTemplate\", \"cdkVirtualForTemplateCacheSize\"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableBody, decorators: [{\n type: Component,\n args: [{\n selector: '[pTableBody]',\n template: `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `,\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { columns: [{\n type: Input,\n args: [\"pTableBody\"]\n }], template: [{\n type: Input,\n args: [\"pTableBodyTemplate\"]\n }], value: [{\n type: Input\n }], frozen: [{\n type: Input\n }], frozenRows: [{\n type: Input\n }] } });\nclass RowGroupHeader {\n constructor(dt) {\n this.dt = dt;\n }\n get getFrozenRowGroupHeaderStickyPosition() {\n return this.dt.rowGroupHeaderStyleObject ? this.dt.rowGroupHeaderStyleObject.top : '';\n }\n}\nRowGroupHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RowGroupHeader, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Directive });\nRowGroupHeader.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: RowGroupHeader, selector: \"[pRowGroupHeader]\", host: { properties: { \"style.top\": \"getFrozenRowGroupHeaderStickyPosition\" }, classAttribute: \"p-rowgroup-header p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RowGroupHeader, decorators: [{\n type: Directive,\n args: [{\n selector: '[pRowGroupHeader]',\n host: {\n 'class': 'p-rowgroup-header p-element',\n '[style.top]': \"getFrozenRowGroupHeaderStickyPosition\"\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; } });\nclass FrozenColumn {\n constructor(el) {\n this.el = el;\n this.alignFrozen = \"left\";\n this._frozen = true;\n }\n get frozen() {\n return this._frozen;\n }\n set frozen(val) {\n this._frozen = val;\n this.updateStickyPosition();\n }\n ngAfterViewInit() {\n this.updateStickyPosition();\n }\n updateStickyPosition() {\n if (this._frozen) {\n if (this.alignFrozen === 'right') {\n let right = 0;\n let next = this.el.nativeElement.nextElementSibling;\n if (next) {\n right = DomHandler.getOuterWidth(next) + (parseFloat(next.style.right) || 0);\n }\n this.el.nativeElement.style.right = right + 'px';\n }\n else {\n let left = 0;\n let prev = this.el.nativeElement.previousElementSibling;\n if (prev) {\n left = DomHandler.getOuterWidth(prev) + (parseFloat(prev.style.left) || 0);\n }\n this.el.nativeElement.style.left = left + 'px';\n }\n let filterRow = this.el.nativeElement.parentElement.nextElementSibling;\n if (filterRow) {\n let index = DomHandler.index(this.el.nativeElement);\n if (filterRow.children && filterRow.children[index]) {\n filterRow.children[index].style.left = this.el.nativeElement.style.left;\n filterRow.children[index].style.right = this.el.nativeElement.style.right;\n }\n }\n }\n }\n}\nFrozenColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: FrozenColumn, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nFrozenColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: FrozenColumn, selector: \"[pFrozenColumn]\", inputs: { frozen: \"frozen\", alignFrozen: \"alignFrozen\" }, host: { properties: { \"class.p-frozen-column\": \"frozen\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: FrozenColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pFrozenColumn]',\n host: {\n 'class': 'p-element',\n '[class.p-frozen-column]': 'frozen'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { frozen: [{\n type: Input\n }], alignFrozen: [{\n type: Input\n }] } });\nclass SortableColumn {\n constructor(dt) {\n this.dt = dt;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {\n this.updateSortState();\n });\n }\n }\n ngOnInit() {\n if (this.isEnabled()) {\n this.updateSortState();\n }\n }\n updateSortState() {\n this.sorted = this.dt.isSorted(this.field);\n this.sortOrder = this.sorted ? (this.dt.sortOrder === 1 ? 'ascending' : 'descending') : 'none';\n }\n onClick(event) {\n if (this.isEnabled() && !this.isFilterElement(event.target)) {\n this.updateSortState();\n this.dt.sort({\n originalEvent: event,\n field: this.field\n });\n DomHandler.clearSelection();\n }\n }\n onEnterKey(event) {\n this.onClick(event);\n }\n isEnabled() {\n return this.pSortableColumnDisabled !== true;\n }\n isFilterElement(element) {\n return DomHandler.hasClass(element, 'pi-filter-icon') || DomHandler.hasClass(element, 'p-column-filter-menu-button');\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSortableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SortableColumn, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Directive });\nSortableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: SortableColumn, selector: \"[pSortableColumn]\", inputs: { field: [\"pSortableColumn\", \"field\"], pSortableColumnDisabled: \"pSortableColumnDisabled\" }, host: { listeners: { \"click\": \"onClick($event)\", \"keydown.enter\": \"onEnterKey($event)\" }, properties: { \"class.p-sortable-column\": \"isEnabled()\", \"class.p-highlight\": \"sorted\", \"attr.tabindex\": \"isEnabled() ? \\\"0\\\" : null\", \"attr.role\": \"\\\"columnheader\\\"\", \"attr.aria-sort\": \"sortOrder\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SortableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSortableColumn]',\n host: {\n 'class': 'p-element',\n '[class.p-sortable-column]': 'isEnabled()',\n '[class.p-highlight]': 'sorted',\n '[attr.tabindex]': 'isEnabled() ? \"0\" : null',\n '[attr.role]': '\"columnheader\"',\n '[attr.aria-sort]': 'sortOrder'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { field: [{\n type: Input,\n args: [\"pSortableColumn\"]\n }], pSortableColumnDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onEnterKey: [{\n type: HostListener,\n args: ['keydown.enter', ['$event']]\n }] } });\nclass SortIcon {\n constructor(dt, cd) {\n this.dt = dt;\n this.cd = cd;\n this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {\n this.updateSortState();\n });\n }\n ngOnInit() {\n this.updateSortState();\n }\n onClick(event) {\n event.preventDefault();\n }\n updateSortState() {\n if (this.dt.sortMode === 'single') {\n this.sortOrder = this.dt.isSorted(this.field) ? this.dt.sortOrder : 0;\n }\n else if (this.dt.sortMode === 'multiple') {\n let sortMeta = this.dt.getSortMeta(this.field);\n this.sortOrder = sortMeta ? sortMeta.order : 0;\n }\n this.cd.markForCheck();\n }\n getMultiSortMetaIndex() {\n let multiSortMeta = this.dt._multiSortMeta;\n let index = -1;\n if (multiSortMeta && this.dt.sortMode === 'multiple' && (this.dt.showInitialSortBadge || multiSortMeta.length > 1)) {\n for (let i = 0; i < multiSortMeta.length; i++) {\n let meta = multiSortMeta[i];\n if (meta.field === this.field || meta.field === this.field) {\n index = i;\n break;\n }\n }\n }\n return index;\n }\n getBadgeValue() {\n let index = this.getMultiSortMetaIndex();\n return this.dt.groupRowsBy && index > -1 ? index : index + 1;\n }\n isMultiSorted() {\n return this.dt.sortMode === 'multiple' && this.getMultiSortMetaIndex() > -1;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSortIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SortIcon, deps: [{ token: Table }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nSortIcon.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: SortIcon, selector: \"p-sortIcon\", inputs: { field: \"field\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n \n {{getBadgeValue()}}\n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SortIcon, decorators: [{\n type: Component,\n args: [{\n selector: 'p-sortIcon',\n template: `\n \n {{getBadgeValue()}}\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { field: [{\n type: Input\n }] } });\nclass SelectableRow {\n constructor(dt, tableService) {\n this.dt = dt;\n this.tableService = tableService;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.selected = this.dt.isSelected(this.data);\n });\n }\n }\n ngOnInit() {\n if (this.isEnabled()) {\n this.selected = this.dt.isSelected(this.data);\n }\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.handleRowClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n }\n }\n onTouchEnd(event) {\n if (this.isEnabled()) {\n this.dt.handleRowTouchEnd(event);\n }\n }\n onArrowDownKeyDown(event) {\n if (!this.isEnabled()) {\n return;\n }\n const row = event.currentTarget;\n const nextRow = this.findNextSelectableRow(row);\n if (nextRow) {\n nextRow.focus();\n }\n event.preventDefault();\n }\n onArrowUpKeyDown(event) {\n if (!this.isEnabled()) {\n return;\n }\n const row = event.currentTarget;\n const prevRow = this.findPrevSelectableRow(row);\n if (prevRow) {\n prevRow.focus();\n }\n event.preventDefault();\n }\n onEnterKeyDown(event) {\n if (!this.isEnabled()) {\n return;\n }\n this.dt.handleRowClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n }\n onPageDownKeyDown() {\n if (this.dt.virtualScroll) {\n this.dt.virtualScrollBody.elementRef.nativeElement.focus();\n }\n }\n onSpaceKeydown() {\n if (this.dt.virtualScroll && !this.dt.editingCell) {\n this.dt.virtualScrollBody.elementRef.nativeElement.focus();\n }\n }\n findNextSelectableRow(row) {\n let nextRow = row.nextElementSibling;\n if (nextRow) {\n if (DomHandler.hasClass(nextRow, 'p-selectable-row'))\n return nextRow;\n else\n return this.findNextSelectableRow(nextRow);\n }\n else {\n return null;\n }\n }\n findPrevSelectableRow(row) {\n let prevRow = row.previousElementSibling;\n if (prevRow) {\n if (DomHandler.hasClass(prevRow, 'p-selectable-row'))\n return prevRow;\n else\n return this.findPrevSelectableRow(prevRow);\n }\n else {\n return null;\n }\n }\n isEnabled() {\n return this.pSelectableRowDisabled !== true;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSelectableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectableRow, deps: [{ token: Table }, { token: TableService }], target: i0.ɵɵFactoryTarget.Directive });\nSelectableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: SelectableRow, selector: \"[pSelectableRow]\", inputs: { data: [\"pSelectableRow\", \"data\"], index: [\"pSelectableRowIndex\", \"index\"], pSelectableRowDisabled: \"pSelectableRowDisabled\" }, host: { listeners: { \"click\": \"onClick($event)\", \"touchend\": \"onTouchEnd($event)\", \"keydown.arrowdown\": \"onArrowDownKeyDown($event)\", \"keydown.arrowup\": \"onArrowUpKeyDown($event)\", \"keydown.enter\": \"onEnterKeyDown($event)\", \"keydown.shift.enter\": \"onEnterKeyDown($event)\", \"keydown.meta.enter\": \"onEnterKeyDown($event)\", \"keydown.pagedown\": \"onPageDownKeyDown()\", \"keydown.pageup\": \"onPageDownKeyDown()\", \"keydown.home\": \"onPageDownKeyDown()\", \"keydown.end\": \"onPageDownKeyDown()\", \"keydown.space\": \"onSpaceKeydown()\" }, properties: { \"class.p-selectable-row\": \"isEnabled()\", \"class.p-highlight\": \"selected\", \"attr.tabindex\": \"isEnabled() ? 0 : undefined\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSelectableRow]',\n host: {\n 'class': 'p-element',\n '[class.p-selectable-row]': 'isEnabled()',\n '[class.p-highlight]': 'selected',\n '[attr.tabindex]': 'isEnabled() ? 0 : undefined'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pSelectableRow\"]\n }], index: [{\n type: Input,\n args: [\"pSelectableRowIndex\"]\n }], pSelectableRowDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onTouchEnd: [{\n type: HostListener,\n args: ['touchend', ['$event']]\n }], onArrowDownKeyDown: [{\n type: HostListener,\n args: ['keydown.arrowdown', ['$event']]\n }], onArrowUpKeyDown: [{\n type: HostListener,\n args: ['keydown.arrowup', ['$event']]\n }], onEnterKeyDown: [{\n type: HostListener,\n args: ['keydown.enter', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.shift.enter', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.meta.enter', ['$event']]\n }], onPageDownKeyDown: [{\n type: HostListener,\n args: ['keydown.pagedown']\n }, {\n type: HostListener,\n args: ['keydown.pageup']\n }, {\n type: HostListener,\n args: ['keydown.home']\n }, {\n type: HostListener,\n args: ['keydown.end']\n }], onSpaceKeydown: [{\n type: HostListener,\n args: ['keydown.space']\n }] } });\nclass SelectableRowDblClick {\n constructor(dt, tableService) {\n this.dt = dt;\n this.tableService = tableService;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.selected = this.dt.isSelected(this.data);\n });\n }\n }\n ngOnInit() {\n if (this.isEnabled()) {\n this.selected = this.dt.isSelected(this.data);\n }\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.handleRowClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n }\n }\n isEnabled() {\n return this.pSelectableRowDisabled !== true;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nSelectableRowDblClick.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectableRowDblClick, deps: [{ token: Table }, { token: TableService }], target: i0.ɵɵFactoryTarget.Directive });\nSelectableRowDblClick.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: SelectableRowDblClick, selector: \"[pSelectableRowDblClick]\", inputs: { data: [\"pSelectableRowDblClick\", \"data\"], index: [\"pSelectableRowIndex\", \"index\"], pSelectableRowDisabled: \"pSelectableRowDisabled\" }, host: { listeners: { \"dblclick\": \"onClick($event)\" }, properties: { \"class.p-selectable-row\": \"isEnabled()\", \"class.p-highlight\": \"selected\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SelectableRowDblClick, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSelectableRowDblClick]',\n host: {\n 'class': 'p-element',\n '[class.p-selectable-row]': 'isEnabled()',\n '[class.p-highlight]': 'selected'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pSelectableRowDblClick\"]\n }], index: [{\n type: Input,\n args: [\"pSelectableRowIndex\"]\n }], pSelectableRowDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['dblclick', ['$event']]\n }] } });\nclass ContextMenuRow {\n constructor(dt, tableService, el) {\n this.dt = dt;\n this.tableService = tableService;\n this.el = el;\n if (this.isEnabled()) {\n this.subscription = this.dt.tableService.contextMenuSource$.subscribe((data) => {\n this.selected = this.dt.equals(this.data, data);\n });\n }\n }\n onContextMenu(event) {\n if (this.isEnabled()) {\n this.dt.handleRowRightClick({\n originalEvent: event,\n rowData: this.data,\n rowIndex: this.index\n });\n this.el.nativeElement.focus();\n event.preventDefault();\n }\n }\n isEnabled() {\n return this.pContextMenuRowDisabled !== true;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nContextMenuRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ContextMenuRow, deps: [{ token: Table }, { token: TableService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nContextMenuRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ContextMenuRow, selector: \"[pContextMenuRow]\", inputs: { data: [\"pContextMenuRow\", \"data\"], index: [\"pContextMenuRowIndex\", \"index\"], pContextMenuRowDisabled: \"pContextMenuRowDisabled\" }, host: { listeners: { \"contextmenu\": \"onContextMenu($event)\" }, properties: { \"class.p-highlight-contextmenu\": \"selected\", \"attr.tabindex\": \"isEnabled() ? 0 : undefined\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ContextMenuRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pContextMenuRow]',\n host: {\n 'class': 'p-element',\n '[class.p-highlight-contextmenu]': 'selected',\n '[attr.tabindex]': 'isEnabled() ? 0 : undefined'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ElementRef }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pContextMenuRow\"]\n }], index: [{\n type: Input,\n args: [\"pContextMenuRowIndex\"]\n }], pContextMenuRowDisabled: [{\n type: Input\n }], onContextMenu: [{\n type: HostListener,\n args: ['contextmenu', ['$event']]\n }] } });\nclass RowToggler {\n constructor(dt) {\n this.dt = dt;\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.toggleRow(this.data, event);\n event.preventDefault();\n }\n }\n isEnabled() {\n return this.pRowTogglerDisabled !== true;\n }\n}\nRowToggler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RowToggler, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Directive });\nRowToggler.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: RowToggler, selector: \"[pRowToggler]\", inputs: { data: [\"pRowToggler\", \"data\"], pRowTogglerDisabled: \"pRowTogglerDisabled\" }, host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: RowToggler, decorators: [{\n type: Directive,\n args: [{\n selector: '[pRowToggler]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { data: [{\n type: Input,\n args: ['pRowToggler']\n }], pRowTogglerDisabled: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass ResizableColumn {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n DomHandler.addClass(this.el.nativeElement, 'p-resizable-column');\n this.resizer = document.createElement('span');\n this.resizer.className = 'p-column-resizer';\n this.el.nativeElement.appendChild(this.resizer);\n this.zone.runOutsideAngular(() => {\n this.resizerMouseDownListener = this.onMouseDown.bind(this);\n this.resizer.addEventListener('mousedown', this.resizerMouseDownListener);\n });\n }\n }\n bindDocumentEvents() {\n this.zone.runOutsideAngular(() => {\n this.documentMouseMoveListener = this.onDocumentMouseMove.bind(this);\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseUpListener = this.onDocumentMouseUp.bind(this);\n document.addEventListener('mouseup', this.documentMouseUpListener);\n });\n }\n unbindDocumentEvents() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n }\n onMouseDown(event) {\n if (event.which === 1) {\n this.dt.onColumnResizeBegin(event);\n this.bindDocumentEvents();\n }\n }\n onDocumentMouseMove(event) {\n this.dt.onColumnResize(event);\n }\n onDocumentMouseUp(event) {\n this.dt.onColumnResizeEnd();\n this.unbindDocumentEvents();\n }\n isEnabled() {\n return this.pResizableColumnDisabled !== true;\n }\n ngOnDestroy() {\n if (this.resizerMouseDownListener) {\n this.resizer.removeEventListener('mousedown', this.resizerMouseDownListener);\n }\n this.unbindDocumentEvents();\n }\n}\nResizableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ResizableColumn, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nResizableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ResizableColumn, selector: \"[pResizableColumn]\", inputs: { pResizableColumnDisabled: \"pResizableColumnDisabled\" }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ResizableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pResizableColumn]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pResizableColumnDisabled: [{\n type: Input\n }] } });\nclass ReorderableColumn {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n this.bindEvents();\n }\n }\n bindEvents() {\n this.zone.runOutsideAngular(() => {\n this.mouseDownListener = this.onMouseDown.bind(this);\n this.el.nativeElement.addEventListener('mousedown', this.mouseDownListener);\n this.dragStartListener = this.onDragStart.bind(this);\n this.el.nativeElement.addEventListener('dragstart', this.dragStartListener);\n this.dragOverListener = this.onDragEnter.bind(this);\n this.el.nativeElement.addEventListener('dragover', this.dragOverListener);\n this.dragEnterListener = this.onDragEnter.bind(this);\n this.el.nativeElement.addEventListener('dragenter', this.dragEnterListener);\n this.dragLeaveListener = this.onDragLeave.bind(this);\n this.el.nativeElement.addEventListener('dragleave', this.dragLeaveListener);\n });\n }\n unbindEvents() {\n if (this.mouseDownListener) {\n document.removeEventListener('mousedown', this.mouseDownListener);\n this.mouseDownListener = null;\n }\n if (this.dragOverListener) {\n document.removeEventListener('dragover', this.dragOverListener);\n this.dragOverListener = null;\n }\n if (this.dragEnterListener) {\n document.removeEventListener('dragenter', this.dragEnterListener);\n this.dragEnterListener = null;\n }\n if (this.dragEnterListener) {\n document.removeEventListener('dragenter', this.dragEnterListener);\n this.dragEnterListener = null;\n }\n if (this.dragLeaveListener) {\n document.removeEventListener('dragleave', this.dragLeaveListener);\n this.dragLeaveListener = null;\n }\n }\n onMouseDown(event) {\n if (event.target.nodeName === 'INPUT' || event.target.nodeName === 'TEXTAREA' || DomHandler.hasClass(event.target, 'p-column-resizer'))\n this.el.nativeElement.draggable = false;\n else\n this.el.nativeElement.draggable = true;\n }\n onDragStart(event) {\n this.dt.onColumnDragStart(event, this.el.nativeElement);\n }\n onDragOver(event) {\n event.preventDefault();\n }\n onDragEnter(event) {\n this.dt.onColumnDragEnter(event, this.el.nativeElement);\n }\n onDragLeave(event) {\n this.dt.onColumnDragLeave(event);\n }\n onDrop(event) {\n if (this.isEnabled()) {\n this.dt.onColumnDrop(event, this.el.nativeElement);\n }\n }\n isEnabled() {\n return this.pReorderableColumnDisabled !== true;\n }\n ngOnDestroy() {\n this.unbindEvents();\n }\n}\nReorderableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ReorderableColumn, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nReorderableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ReorderableColumn, selector: \"[pReorderableColumn]\", inputs: { pReorderableColumnDisabled: \"pReorderableColumnDisabled\" }, host: { listeners: { \"drop\": \"onDrop($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ReorderableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pReorderableColumn]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pReorderableColumnDisabled: [{\n type: Input\n }], onDrop: [{\n type: HostListener,\n args: ['drop', ['$event']]\n }] } });\nclass EditableColumn {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n DomHandler.addClass(this.el.nativeElement, 'p-editable-column');\n }\n }\n onClick(event) {\n if (this.isEnabled()) {\n this.dt.selfClick = true;\n if (this.dt.editingCell) {\n if (this.dt.editingCell !== this.el.nativeElement) {\n if (!this.dt.isEditingCellValid()) {\n return;\n }\n this.closeEditingCell(true, event);\n this.openCell();\n }\n }\n else {\n this.openCell();\n }\n }\n }\n openCell() {\n this.dt.updateEditingCell(this.el.nativeElement, this.data, this.field, this.rowIndex);\n DomHandler.addClass(this.el.nativeElement, 'p-cell-editing');\n this.dt.onEditInit.emit({ field: this.field, data: this.data, index: this.rowIndex });\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n let focusCellSelector = this.pFocusCellSelector || 'input, textarea, select';\n let focusableElement = DomHandler.findSingle(this.el.nativeElement, focusCellSelector);\n if (focusableElement) {\n focusableElement.focus();\n }\n }, 50);\n });\n this.overlayEventListener = (e) => {\n if (this.el && this.el.nativeElement.contains(e.target)) {\n this.dt.selfClick = true;\n }\n };\n this.dt.overlaySubscription = this.dt.overlayService.clickObservable.subscribe(this.overlayEventListener);\n }\n closeEditingCell(completed, event) {\n if (completed)\n this.dt.onEditComplete.emit({ field: this.dt.editingCellField, data: this.dt.editingCellData, originalEvent: event, index: this.dt.editingCellRowIndex });\n else\n this.dt.onEditCancel.emit({ field: this.dt.editingCellField, data: this.dt.editingCellData, originalEvent: event, index: this.dt.editingCellRowIndex });\n DomHandler.removeClass(this.dt.editingCell, 'p-cell-editing');\n this.dt.editingCell = null;\n this.dt.editingCellData = null;\n this.dt.editingCellField = null;\n this.dt.unbindDocumentEditListener();\n if (this.dt.overlaySubscription) {\n this.dt.overlaySubscription.unsubscribe();\n }\n }\n onEnterKeyDown(event) {\n if (this.isEnabled()) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n event.preventDefault();\n }\n }\n onEscapeKeyDown(event) {\n if (this.isEnabled()) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(false, event);\n }\n event.preventDefault();\n }\n }\n onShiftKeyDown(event) {\n if (this.isEnabled()) {\n if (event.shiftKey)\n this.moveToPreviousCell(event);\n else {\n this.moveToNextCell(event);\n }\n }\n }\n onArrowDown(event) {\n if (this.isEnabled()) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let cellIndex = DomHandler.index(currentCell);\n let targetCell = this.findNextEditableColumnByIndex(currentCell, cellIndex);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n }\n event.preventDefault();\n }\n }\n }\n onArrowUp(event) {\n if (this.isEnabled()) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let cellIndex = DomHandler.index(currentCell);\n let targetCell = this.findPrevEditableColumnByIndex(currentCell, cellIndex);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n }\n event.preventDefault();\n }\n }\n }\n onArrowLeft(event) {\n if (this.isEnabled()) {\n this.moveToPreviousCell(event);\n }\n }\n onArrowRight(event) {\n if (this.isEnabled()) {\n this.moveToNextCell(event);\n }\n }\n findCell(element) {\n if (element) {\n let cell = element;\n while (cell && !DomHandler.hasClass(cell, 'p-cell-editing')) {\n cell = cell.parentElement;\n }\n return cell;\n }\n else {\n return null;\n }\n }\n moveToPreviousCell(event) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let targetCell = this.findPreviousEditableColumn(currentCell);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n event.preventDefault();\n }\n }\n }\n moveToNextCell(event) {\n let currentCell = this.findCell(event.target);\n if (currentCell) {\n let targetCell = this.findNextEditableColumn(currentCell);\n if (targetCell) {\n if (this.dt.isEditingCellValid()) {\n this.closeEditingCell(true, event);\n }\n DomHandler.invokeElementMethod(event.target, 'blur');\n DomHandler.invokeElementMethod(targetCell, 'click');\n event.preventDefault();\n }\n }\n }\n findPreviousEditableColumn(cell) {\n let prevCell = cell.previousElementSibling;\n if (!prevCell) {\n let previousRow = cell.parentElement.previousElementSibling;\n if (previousRow) {\n prevCell = previousRow.lastElementChild;\n }\n }\n if (prevCell) {\n if (DomHandler.hasClass(prevCell, 'p-editable-column'))\n return prevCell;\n else\n return this.findPreviousEditableColumn(prevCell);\n }\n else {\n return null;\n }\n }\n findNextEditableColumn(cell) {\n let nextCell = cell.nextElementSibling;\n if (!nextCell) {\n let nextRow = cell.parentElement.nextElementSibling;\n if (nextRow) {\n nextCell = nextRow.firstElementChild;\n }\n }\n if (nextCell) {\n if (DomHandler.hasClass(nextCell, 'p-editable-column'))\n return nextCell;\n else\n return this.findNextEditableColumn(nextCell);\n }\n else {\n return null;\n }\n }\n findNextEditableColumnByIndex(cell, index) {\n let nextRow = cell.parentElement.nextElementSibling;\n if (nextRow) {\n let nextCell = nextRow.children[index];\n if (nextCell && DomHandler.hasClass(nextCell, 'p-editable-column')) {\n return nextCell;\n }\n return null;\n }\n else {\n return null;\n }\n }\n findPrevEditableColumnByIndex(cell, index) {\n let prevRow = cell.parentElement.previousElementSibling;\n if (prevRow) {\n let prevCell = prevRow.children[index];\n if (prevCell && DomHandler.hasClass(prevCell, 'p-editable-column')) {\n return prevCell;\n }\n return null;\n }\n else {\n return null;\n }\n }\n isEnabled() {\n return this.pEditableColumnDisabled !== true;\n }\n ngOnDestroy() {\n if (this.dt.overlaySubscription) {\n this.dt.overlaySubscription.unsubscribe();\n }\n }\n}\nEditableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: EditableColumn, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nEditableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: EditableColumn, selector: \"[pEditableColumn]\", inputs: { data: [\"pEditableColumn\", \"data\"], field: [\"pEditableColumnField\", \"field\"], rowIndex: [\"pEditableColumnRowIndex\", \"rowIndex\"], pEditableColumnDisabled: \"pEditableColumnDisabled\", pFocusCellSelector: \"pFocusCellSelector\" }, host: { listeners: { \"click\": \"onClick($event)\", \"keydown.enter\": \"onEnterKeyDown($event)\", \"keydown.escape\": \"onEscapeKeyDown($event)\", \"keydown.tab\": \"onShiftKeyDown($event)\", \"keydown.shift.tab\": \"onShiftKeyDown($event)\", \"keydown.meta.tab\": \"onShiftKeyDown($event)\", \"keydown.arrowdown\": \"onArrowDown($event)\", \"keydown.arrowup\": \"onArrowUp($event)\", \"keydown.arrowleft\": \"onArrowLeft($event)\", \"keydown.arrowright\": \"onArrowRight($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: EditableColumn, decorators: [{\n type: Directive,\n args: [{\n selector: '[pEditableColumn]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pEditableColumn\"]\n }], field: [{\n type: Input,\n args: [\"pEditableColumnField\"]\n }], rowIndex: [{\n type: Input,\n args: [\"pEditableColumnRowIndex\"]\n }], pEditableColumnDisabled: [{\n type: Input\n }], pFocusCellSelector: [{\n type: Input\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onEnterKeyDown: [{\n type: HostListener,\n args: ['keydown.enter', ['$event']]\n }], onEscapeKeyDown: [{\n type: HostListener,\n args: ['keydown.escape', ['$event']]\n }], onShiftKeyDown: [{\n type: HostListener,\n args: ['keydown.tab', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.shift.tab', ['$event']]\n }, {\n type: HostListener,\n args: ['keydown.meta.tab', ['$event']]\n }], onArrowDown: [{\n type: HostListener,\n args: ['keydown.arrowdown', ['$event']]\n }], onArrowUp: [{\n type: HostListener,\n args: ['keydown.arrowup', ['$event']]\n }], onArrowLeft: [{\n type: HostListener,\n args: ['keydown.arrowleft', ['$event']]\n }], onArrowRight: [{\n type: HostListener,\n args: ['keydown.arrowright', ['$event']]\n }] } });\nclass EditableRow {\n constructor(el) {\n this.el = el;\n }\n isEnabled() {\n return this.pEditableRowDisabled !== true;\n }\n}\nEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: EditableRow, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: EditableRow, selector: \"[pEditableRow]\", inputs: { data: [\"pEditableRow\", \"data\"], pEditableRowDisabled: \"pEditableRowDisabled\" }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: EditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { data: [{\n type: Input,\n args: [\"pEditableRow\"]\n }], pEditableRowDisabled: [{\n type: Input\n }] } });\nclass InitEditableRow {\n constructor(dt, editableRow) {\n this.dt = dt;\n this.editableRow = editableRow;\n }\n onClick(event) {\n this.dt.initRowEdit(this.editableRow.data);\n event.preventDefault();\n }\n}\nInitEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InitEditableRow, deps: [{ token: Table }, { token: EditableRow }], target: i0.ɵɵFactoryTarget.Directive });\nInitEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: InitEditableRow, selector: \"[pInitEditableRow]\", host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: InitEditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pInitEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass SaveEditableRow {\n constructor(dt, editableRow) {\n this.dt = dt;\n this.editableRow = editableRow;\n }\n onClick(event) {\n this.dt.saveRowEdit(this.editableRow.data, this.editableRow.el.nativeElement);\n event.preventDefault();\n }\n}\nSaveEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SaveEditableRow, deps: [{ token: Table }, { token: EditableRow }], target: i0.ɵɵFactoryTarget.Directive });\nSaveEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: SaveEditableRow, selector: \"[pSaveEditableRow]\", host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: SaveEditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pSaveEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass CancelEditableRow {\n constructor(dt, editableRow) {\n this.dt = dt;\n this.editableRow = editableRow;\n }\n onClick(event) {\n this.dt.cancelRowEdit(this.editableRow.data);\n event.preventDefault();\n }\n}\nCancelEditableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CancelEditableRow, deps: [{ token: Table }, { token: EditableRow }], target: i0.ɵɵFactoryTarget.Directive });\nCancelEditableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: CancelEditableRow, selector: \"[pCancelEditableRow]\", host: { listeners: { \"click\": \"onClick($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CancelEditableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pCancelEditableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\nclass CellEditor {\n constructor(dt, editableColumn, editableRow) {\n this.dt = dt;\n this.editableColumn = editableColumn;\n this.editableRow = editableRow;\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'input':\n this.inputTemplate = item.template;\n break;\n case 'output':\n this.outputTemplate = item.template;\n break;\n }\n });\n }\n get editing() {\n return (this.dt.editingCell && this.editableColumn && this.dt.editingCell === this.editableColumn.el.nativeElement) ||\n (this.editableRow && this.dt.editMode === 'row' && this.dt.isRowEditing(this.editableRow.data));\n }\n}\nCellEditor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CellEditor, deps: [{ token: Table }, { token: EditableColumn, optional: true }, { token: EditableRow, optional: true }], target: i0.ɵɵFactoryTarget.Component });\nCellEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: CellEditor, selector: \"p-cellEditor\", host: { classAttribute: \"p-element\" }, queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], ngImport: i0, template: `\n \n \n \n \n \n \n `, isInline: true, directives: [{ type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: CellEditor, decorators: [{\n type: Component,\n args: [{\n selector: 'p-cellEditor',\n template: `\n \n \n \n \n \n \n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () {\n return [{ type: Table }, { type: EditableColumn, decorators: [{\n type: Optional\n }] }, { type: EditableRow, decorators: [{\n type: Optional\n }] }];\n }, propDecorators: { templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }] } });\nclass TableRadioButton {\n constructor(dt, tableService, cd) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.checked = this.dt.isSelected(this.value);\n this.cd.markForCheck();\n });\n }\n ngOnInit() {\n this.checked = this.dt.isSelected(this.value);\n }\n onClick(event) {\n if (!this.disabled) {\n this.dt.toggleRowWithRadio({\n originalEvent: event,\n rowIndex: this.index\n }, this.value);\n }\n DomHandler.clearSelection();\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nTableRadioButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableRadioButton, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTableRadioButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: TableRadioButton, selector: \"p-tableRadioButton\", inputs: { disabled: \"disabled\", value: \"value\", index: \"index\", inputId: \"inputId\", name: \"name\", ariaLabel: \"ariaLabel\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableRadioButton, decorators: [{\n type: Component,\n args: [{\n selector: 'p-tableRadioButton',\n template: `\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], value: [{\n type: Input\n }], index: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }] } });\nclass TableCheckbox {\n constructor(dt, tableService, cd) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.subscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.checked = this.dt.isSelected(this.value);\n this.cd.markForCheck();\n });\n }\n ngOnInit() {\n this.checked = this.dt.isSelected(this.value);\n }\n onClick(event) {\n if (!this.disabled) {\n this.dt.toggleRowWithCheckbox({\n originalEvent: event,\n rowIndex: this.index\n }, this.value);\n }\n DomHandler.clearSelection();\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\nTableCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableCheckbox, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTableCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: TableCheckbox, selector: \"p-tableCheckbox\", inputs: { disabled: \"disabled\", value: \"value\", index: \"index\", inputId: \"inputId\", name: \"name\", required: \"required\", ariaLabel: \"ariaLabel\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableCheckbox, decorators: [{\n type: Component,\n args: [{\n selector: 'p-tableCheckbox',\n template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], value: [{\n type: Input\n }], index: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], required: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }] } });\nclass TableHeaderCheckbox {\n constructor(dt, tableService, cd) {\n this.dt = dt;\n this.tableService = tableService;\n this.cd = cd;\n this.valueChangeSubscription = this.dt.tableService.valueSource$.subscribe(() => {\n this.checked = this.updateCheckedState();\n });\n this.selectionChangeSubscription = this.dt.tableService.selectionSource$.subscribe(() => {\n this.checked = this.updateCheckedState();\n });\n }\n ngOnInit() {\n this.checked = this.updateCheckedState();\n }\n onClick(event) {\n if (!this.disabled) {\n if (this.dt.value && this.dt.value.length > 0) {\n this.dt.toggleRowsWithCheckbox(event, !this.checked);\n }\n }\n DomHandler.clearSelection();\n }\n onFocus() {\n this.focused = true;\n }\n onBlur() {\n this.focused = false;\n }\n isDisabled() {\n return this.disabled || !this.dt.value || !this.dt.value.length;\n }\n ngOnDestroy() {\n if (this.selectionChangeSubscription) {\n this.selectionChangeSubscription.unsubscribe();\n }\n if (this.valueChangeSubscription) {\n this.valueChangeSubscription.unsubscribe();\n }\n }\n updateCheckedState() {\n this.cd.markForCheck();\n if (this.dt._selectAll !== null) {\n return this.dt._selectAll;\n }\n else {\n const data = this.dt.selectionPageOnly ? this.dt.dataToRender : (this.dt.filteredValue || this.dt.value || []);\n const val = this.dt.frozenValue ? [...this.dt.frozenValue, ...data] : data;\n const selectableVal = this.dt.rowSelectable ? val.filter((data, index) => this.dt.rowSelectable({ data, index })) : val;\n return ObjectUtils.isNotEmpty(selectableVal) && ObjectUtils.isNotEmpty(this.dt.selection) && selectableVal.every(v => this.dt.selection.some(s => this.dt.equals(v, s)));\n }\n }\n}\nTableHeaderCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableHeaderCheckbox, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nTableHeaderCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: TableHeaderCheckbox, selector: \"p-tableHeaderCheckbox\", inputs: { disabled: \"disabled\", inputId: \"inputId\", name: \"name\", ariaLabel: \"ariaLabel\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `, isInline: true, directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableHeaderCheckbox, decorators: [{\n type: Component,\n args: [{\n selector: 'p-tableHeaderCheckbox',\n template: `\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{\n type: Input\n }], inputId: [{\n type: Input\n }], name: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }] } });\nclass ReorderableRowHandle {\n constructor(el) {\n this.el = el;\n }\n ngAfterViewInit() {\n DomHandler.addClass(this.el.nativeElement, 'p-datatable-reorderablerow-handle');\n }\n}\nReorderableRowHandle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ReorderableRowHandle, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nReorderableRowHandle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ReorderableRowHandle, selector: \"[pReorderableRowHandle]\", inputs: { index: [\"pReorderableRowHandle\", \"index\"] }, host: { classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ReorderableRowHandle, decorators: [{\n type: Directive,\n args: [{\n selector: '[pReorderableRowHandle]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { index: [{\n type: Input,\n args: [\"pReorderableRowHandle\"]\n }] } });\nclass ReorderableRow {\n constructor(dt, el, zone) {\n this.dt = dt;\n this.el = el;\n this.zone = zone;\n }\n ngAfterViewInit() {\n if (this.isEnabled()) {\n this.el.nativeElement.droppable = true;\n this.bindEvents();\n }\n }\n bindEvents() {\n this.zone.runOutsideAngular(() => {\n this.mouseDownListener = this.onMouseDown.bind(this);\n this.el.nativeElement.addEventListener('mousedown', this.mouseDownListener);\n this.dragStartListener = this.onDragStart.bind(this);\n this.el.nativeElement.addEventListener('dragstart', this.dragStartListener);\n this.dragEndListener = this.onDragEnd.bind(this);\n this.el.nativeElement.addEventListener('dragend', this.dragEndListener);\n this.dragOverListener = this.onDragOver.bind(this);\n this.el.nativeElement.addEventListener('dragover', this.dragOverListener);\n this.dragLeaveListener = this.onDragLeave.bind(this);\n this.el.nativeElement.addEventListener('dragleave', this.dragLeaveListener);\n });\n }\n unbindEvents() {\n if (this.mouseDownListener) {\n document.removeEventListener('mousedown', this.mouseDownListener);\n this.mouseDownListener = null;\n }\n if (this.dragStartListener) {\n document.removeEventListener('dragstart', this.dragStartListener);\n this.dragStartListener = null;\n }\n if (this.dragEndListener) {\n document.removeEventListener('dragend', this.dragEndListener);\n this.dragEndListener = null;\n }\n if (this.dragOverListener) {\n document.removeEventListener('dragover', this.dragOverListener);\n this.dragOverListener = null;\n }\n if (this.dragLeaveListener) {\n document.removeEventListener('dragleave', this.dragLeaveListener);\n this.dragLeaveListener = null;\n }\n }\n onMouseDown(event) {\n if (DomHandler.hasClass(event.target, 'p-datatable-reorderablerow-handle'))\n this.el.nativeElement.draggable = true;\n else\n this.el.nativeElement.draggable = false;\n }\n onDragStart(event) {\n this.dt.onRowDragStart(event, this.index);\n }\n onDragEnd(event) {\n this.dt.onRowDragEnd(event);\n this.el.nativeElement.draggable = false;\n }\n onDragOver(event) {\n this.dt.onRowDragOver(event, this.index, this.el.nativeElement);\n event.preventDefault();\n }\n onDragLeave(event) {\n this.dt.onRowDragLeave(event, this.el.nativeElement);\n }\n isEnabled() {\n return this.pReorderableRowDisabled !== true;\n }\n onDrop(event) {\n if (this.isEnabled() && this.dt.rowDragging) {\n this.dt.onRowDrop(event, this.el.nativeElement);\n }\n event.preventDefault();\n }\n}\nReorderableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ReorderableRow, deps: [{ token: Table }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nReorderableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ReorderableRow, selector: \"[pReorderableRow]\", inputs: { index: [\"pReorderableRow\", \"index\"], pReorderableRowDisabled: \"pReorderableRowDisabled\" }, host: { listeners: { \"drop\": \"onDrop($event)\" }, classAttribute: \"p-element\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ReorderableRow, decorators: [{\n type: Directive,\n args: [{\n selector: '[pReorderableRow]',\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { index: [{\n type: Input,\n args: [\"pReorderableRow\"]\n }], pReorderableRowDisabled: [{\n type: Input\n }], onDrop: [{\n type: HostListener,\n args: ['drop', ['$event']]\n }] } });\nclass ColumnFilterFormElement {\n constructor(dt) {\n this.dt = dt;\n this.useGrouping = true;\n }\n ngOnInit() {\n this.filterCallback = value => {\n this.filterConstraint.value = value;\n this.dt._filter();\n };\n }\n onModelChange(value) {\n this.filterConstraint.value = value;\n if (this.type === 'boolean' || value === '') {\n this.dt._filter();\n }\n }\n onTextInputEnterKeyDown(event) {\n this.dt._filter();\n event.preventDefault();\n }\n onNumericInputKeyDown(event) {\n if (event.key === 'Enter') {\n this.dt._filter();\n event.preventDefault();\n }\n }\n}\nColumnFilterFormElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ColumnFilterFormElement, deps: [{ token: Table }], target: i0.ɵɵFactoryTarget.Component });\nColumnFilterFormElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ColumnFilterFormElement, selector: \"p-columnFilterFormElement\", inputs: { field: \"field\", type: \"type\", filterConstraint: \"filterConstraint\", filterTemplate: \"filterTemplate\", placeholder: \"placeholder\", minFractionDigits: \"minFractionDigits\", maxFractionDigits: \"maxFractionDigits\", prefix: \"prefix\", suffix: \"suffix\", locale: \"locale\", localeMatcher: \"localeMatcher\", currency: \"currency\", currencyDisplay: \"currencyDisplay\", useGrouping: \"useGrouping\" }, host: { classAttribute: \"p-element\" }, ngImport: i0, template: `\n \n \n \n \n \n \n \n \n \n \n \n `, isInline: true, components: [{ type: i5.InputNumber, selector: \"p-inputNumber\", inputs: [\"showButtons\", \"format\", \"buttonLayout\", \"inputId\", \"styleClass\", \"style\", \"placeholder\", \"size\", \"maxlength\", \"tabindex\", \"title\", \"ariaLabel\", \"ariaRequired\", \"name\", \"required\", \"autocomplete\", \"min\", \"max\", \"incrementButtonClass\", \"decrementButtonClass\", \"incrementButtonIcon\", \"decrementButtonIcon\", \"readonly\", \"step\", \"allowEmpty\", \"locale\", \"localeMatcher\", \"mode\", \"currency\", \"currencyDisplay\", \"useGrouping\", \"minFractionDigits\", \"maxFractionDigits\", \"prefix\", \"suffix\", \"inputStyle\", \"inputStyleClass\", \"disabled\"], outputs: [\"onInput\", \"onFocus\", \"onBlur\", \"onKeyDown\"] }, { type: i6.TriStateCheckbox, selector: \"p-triStateCheckbox\", inputs: [\"disabled\", \"name\", \"ariaLabelledBy\", \"tabindex\", \"inputId\", \"style\", \"styleClass\", \"label\", \"readonly\", \"checkboxTrueIcon\", \"checkboxFalseIcon\"], outputs: [\"onChange\"] }, { type: i7.Calendar, selector: \"p-calendar\", inputs: [\"style\", \"styleClass\", \"inputStyle\", \"inputId\", \"name\", \"inputStyleClass\", \"placeholder\", \"ariaLabelledBy\", \"iconAriaLabel\", \"disabled\", \"dateFormat\", \"multipleSeparator\", \"rangeSeparator\", \"inline\", \"showOtherMonths\", \"selectOtherMonths\", \"showIcon\", \"icon\", \"appendTo\", \"readonlyInput\", \"shortYearCutoff\", \"monthNavigator\", \"yearNavigator\", \"hourFormat\", \"timeOnly\", \"stepHour\", \"stepMinute\", \"stepSecond\", \"showSeconds\", \"required\", \"showOnFocus\", \"showWeek\", \"dataType\", \"selectionMode\", \"maxDateCount\", \"showButtonBar\", \"todayButtonStyleClass\", \"clearButtonStyleClass\", \"autoZIndex\", \"baseZIndex\", \"panelStyleClass\", \"panelStyle\", \"keepInvalid\", \"hideOnDateTimeSelect\", \"touchUI\", \"timeSeparator\", \"focusTrap\", \"showTransitionOptions\", \"hideTransitionOptions\", \"tabindex\", \"view\", \"defaultDate\", \"minDate\", \"maxDate\", \"disabledDates\", \"disabledDays\", \"yearRange\", \"showTime\", \"responsiveOptions\", \"numberOfMonths\", \"firstDayOfWeek\", \"locale\"], outputs: [\"onFocus\", \"onBlur\", \"onClose\", \"onSelect\", \"onInput\", \"onTodayClick\", \"onClearClick\", \"onMonthChange\", \"onYearChange\", \"onClickOutside\", \"onShow\"] }], directives: [{ type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i4.NgSwitch, selector: \"[ngSwitch]\", inputs: [\"ngSwitch\"] }, { type: i4.NgSwitchCase, selector: \"[ngSwitchCase]\", inputs: [\"ngSwitchCase\"] }, { type: i8.InputText, selector: \"[pInputText]\" }, { type: i9.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { type: i9.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ColumnFilterFormElement, decorators: [{\n type: Component,\n args: [{\n selector: 'p-columnFilterFormElement',\n template: `\n \n \n \n \n \n \n \n \n \n \n \n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { field: [{\n type: Input\n }], type: [{\n type: Input\n }], filterConstraint: [{\n type: Input\n }], filterTemplate: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], minFractionDigits: [{\n type: Input\n }], maxFractionDigits: [{\n type: Input\n }], prefix: [{\n type: Input\n }], suffix: [{\n type: Input\n }], locale: [{\n type: Input\n }], localeMatcher: [{\n type: Input\n }], currency: [{\n type: Input\n }], currencyDisplay: [{\n type: Input\n }], useGrouping: [{\n type: Input\n }] } });\nclass ColumnFilter {\n constructor(el, dt, renderer, config, overlayService) {\n this.el = el;\n this.dt = dt;\n this.renderer = renderer;\n this.config = config;\n this.overlayService = overlayService;\n this.type = 'text';\n this.display = 'row';\n this.showMenu = true;\n this.operator = FilterOperator.AND;\n this.showOperator = true;\n this.showClearButton = true;\n this.showApplyButton = true;\n this.showMatchModes = true;\n this.showAddButton = true;\n this.hideOnClear = false;\n this.maxConstraints = 2;\n this.useGrouping = true;\n }\n ngOnInit() {\n if (!this.dt.filters[this.field]) {\n this.initFieldFilterConstraint();\n }\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.generateMatchModeOptions();\n this.generateOperatorOptions();\n });\n this.resetSubscription = this.dt.tableService.resetSource$.subscribe(() => {\n this.initFieldFilterConstraint();\n });\n this.generateMatchModeOptions();\n this.generateOperatorOptions();\n }\n generateMatchModeOptions() {\n var _a;\n this.matchModes = this.matchModeOptions ||\n ((_a = this.config.filterMatchModeOptions[this.type]) === null || _a === void 0 ? void 0 : _a.map(key => {\n return { label: this.config.getTranslation(key), value: key };\n }));\n }\n generateOperatorOptions() {\n this.operatorOptions = [\n { label: this.config.getTranslation(TranslationKeys.MATCH_ALL), value: FilterOperator.AND },\n { label: this.config.getTranslation(TranslationKeys.MATCH_ANY), value: FilterOperator.OR }\n ];\n }\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'filter':\n this.filterTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n default:\n this.filterTemplate = item.template;\n break;\n }\n });\n }\n initFieldFilterConstraint() {\n let defaultMatchMode = this.getDefaultMatchMode();\n this.dt.filters[this.field] = this.display == 'row' ? { value: null, matchMode: defaultMatchMode } : [{ value: null, matchMode: defaultMatchMode, operator: this.operator }];\n }\n onMenuMatchModeChange(value, filterMeta) {\n filterMeta.matchMode = value;\n if (!this.showApplyButton) {\n this.dt._filter();\n }\n }\n onRowMatchModeChange(matchMode) {\n this.dt.filters[this.field].matchMode = matchMode;\n this.dt._filter();\n this.hide();\n }\n onRowMatchModeKeyDown(event) {\n let item = event.target;\n switch (event.key) {\n case 'ArrowDown':\n var nextItem = this.findNextItem(item);\n if (nextItem) {\n item.removeAttribute('tabindex');\n nextItem.tabIndex = '0';\n nextItem.focus();\n }\n event.preventDefault();\n break;\n case 'ArrowUp':\n var prevItem = this.findPrevItem(item);\n if (prevItem) {\n item.removeAttribute('tabindex');\n prevItem.tabIndex = '0';\n prevItem.focus();\n }\n event.preventDefault();\n break;\n }\n }\n onRowClearItemClick() {\n this.clearFilter();\n this.hide();\n }\n isRowMatchModeSelected(matchMode) {\n return this.dt.filters[this.field].matchMode === matchMode;\n }\n addConstraint() {\n this.dt.filters[this.field].push({ value: null, matchMode: this.getDefaultMatchMode(), operator: this.getDefaultOperator() });\n this.dt._filter();\n }\n removeConstraint(filterMeta) {\n this.dt.filters[this.field] = this.dt.filters[this.field].filter(meta => meta !== filterMeta);\n this.dt._filter();\n }\n onOperatorChange(value) {\n this.dt.filters[this.field].forEach(filterMeta => {\n filterMeta.operator = value;\n this.operator = value;\n });\n if (!this.showApplyButton) {\n this.dt._filter();\n }\n }\n toggleMenu() {\n this.overlayVisible = !this.overlayVisible;\n }\n onToggleButtonKeyDown(event) {\n switch (event.key) {\n case 'Escape':\n case 'Tab':\n this.overlayVisible = false;\n break;\n case 'ArrowDown':\n if (this.overlayVisible) {\n let focusable = DomHandler.getFocusableElements(this.overlay);\n if (focusable) {\n focusable[0].focus();\n }\n event.preventDefault();\n }\n else if (event.altKey) {\n this.overlayVisible = true;\n event.preventDefault();\n }\n break;\n }\n }\n onEscape() {\n this.overlayVisible = false;\n this.icon.nativeElement.focus();\n }\n findNextItem(item) {\n let nextItem = item.nextElementSibling;\n if (nextItem)\n return DomHandler.hasClass(nextItem, 'p-column-filter-separator') ? this.findNextItem(nextItem) : nextItem;\n else\n return item.parentElement.firstElementChild;\n }\n findPrevItem(item) {\n let prevItem = item.previousElementSibling;\n if (prevItem)\n return DomHandler.hasClass(prevItem, 'p-column-filter-separator') ? this.findPrevItem(prevItem) : prevItem;\n else\n return item.parentElement.lastElementChild;\n }\n onContentClick() {\n this.selfClick = true;\n }\n onOverlayAnimationStart(event) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n document.body.appendChild(this.overlay);\n ZIndexUtils.set('overlay', this.overlay, this.config.zIndex.overlay);\n DomHandler.absolutePosition(this.overlay, this.icon.nativeElement);\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n this.overlayEventListener = (e) => {\n if (this.overlay && this.overlay.contains(e.target)) {\n this.selfClick = true;\n }\n };\n this.overlaySubscription = this.overlayService.clickObservable.subscribe(this.overlayEventListener);\n break;\n case 'void':\n this.onOverlayHide();\n if (this.overlaySubscription) {\n this.overlaySubscription.unsubscribe();\n }\n break;\n }\n }\n onOverlayAnimationEnd(event) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n getDefaultMatchMode() {\n if (this.matchMode) {\n return this.matchMode;\n }\n else {\n if (this.type === 'text')\n return FilterMatchMode.STARTS_WITH;\n else if (this.type === 'numeric')\n return FilterMatchMode.EQUALS;\n else if (this.type === 'date')\n return FilterMatchMode.DATE_IS;\n else\n return FilterMatchMode.CONTAINS;\n }\n }\n getDefaultOperator() {\n return this.dt.filters ? this.dt.filters[this.field][0].operator : this.operator;\n }\n hasRowFilter() {\n return this.dt.filters[this.field] && !this.dt.isFilterBlank(this.dt.filters[this.field].value);\n }\n get fieldConstraints() {\n return this.dt.filters ? this.dt.filters[this.field] : null;\n }\n get showRemoveIcon() {\n return this.fieldConstraints ? this.fieldConstraints.length > 1 : false;\n }\n get showMenuButton() {\n return this.showMenu && (this.display === 'row' ? this.type !== 'boolean' : true);\n }\n get isShowOperator() {\n return this.showOperator && this.type !== 'boolean';\n }\n get isShowAddConstraint() {\n return this.showAddButton && this.type !== 'boolean' && (this.fieldConstraints && this.fieldConstraints.length < this.maxConstraints);\n }\n get applyButtonLabel() {\n return this.config.getTranslation(TranslationKeys.APPLY);\n }\n get clearButtonLabel() {\n return this.config.getTranslation(TranslationKeys.CLEAR);\n }\n get addRuleButtonLabel() {\n return this.config.getTranslation(TranslationKeys.ADD_RULE);\n }\n get removeRuleButtonLabel() {\n return this.config.getTranslation(TranslationKeys.REMOVE_RULE);\n }\n get noFilterLabel() {\n return this.config.getTranslation(TranslationKeys.NO_FILTER);\n }\n hasFilter() {\n let fieldFilter = this.dt.filters[this.field];\n if (fieldFilter) {\n if (Array.isArray(fieldFilter))\n return !this.dt.isFilterBlank(fieldFilter[0].value);\n else\n return !this.dt.isFilterBlank(fieldFilter.value);\n }\n return false;\n }\n isOutsideClicked(event) {\n return !(this.overlay.isSameNode(event.target) || this.overlay.contains(event.target)\n || this.icon.nativeElement.isSameNode(event.target) || this.icon.nativeElement.contains(event.target)\n || DomHandler.hasClass(event.target, 'p-column-filter-add-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-add-button')\n || DomHandler.hasClass(event.target, 'p-column-filter-remove-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-remove-button'));\n }\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';\n this.documentClickListener = this.renderer.listen(documentTarget, 'mousedown', event => {\n if (this.overlayVisible && !this.selfClick && this.isOutsideClicked(event)) {\n this.hide();\n }\n this.selfClick = false;\n });\n }\n }\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n this.selfClick = false;\n }\n }\n bindDocumentResizeListener() {\n this.documentResizeListener = () => this.hide();\n window.addEventListener('resize', this.documentResizeListener);\n }\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.icon.nativeElement, () => {\n if (this.overlayVisible) {\n this.hide();\n }\n });\n }\n this.scrollHandler.bindScrollListener();\n }\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n hide() {\n this.overlayVisible = false;\n }\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n this.overlay = null;\n }\n clearFilter() {\n this.initFieldFilterConstraint();\n this.dt._filter();\n if (this.hideOnClear)\n this.hide();\n }\n applyFilter() {\n this.dt._filter();\n this.hide();\n }\n ngOnDestroy() {\n if (this.overlay) {\n this.el.nativeElement.appendChild(this.overlay);\n ZIndexUtils.clear(this.overlay);\n this.onOverlayHide();\n }\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n if (this.resetSubscription) {\n this.resetSubscription.unsubscribe();\n }\n if (this.overlaySubscription) {\n this.overlaySubscription.unsubscribe();\n }\n }\n}\nColumnFilter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ColumnFilter, deps: [{ token: i0.ElementRef }, { token: Table }, { token: i0.Renderer2 }, { token: i1.PrimeNGConfig }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });\nColumnFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.2.6\", type: ColumnFilter, selector: \"p-columnFilter\", inputs: { field: \"field\", type: \"type\", display: \"display\", showMenu: \"showMenu\", matchMode: \"matchMode\", operator: \"operator\", showOperator: \"showOperator\", showClearButton: \"showClearButton\", showApplyButton: \"showApplyButton\", showMatchModes: \"showMatchModes\", showAddButton: \"showAddButton\", hideOnClear: \"hideOnClear\", placeholder: \"placeholder\", matchModeOptions: \"matchModeOptions\", maxConstraints: \"maxConstraints\", minFractionDigits: \"minFractionDigits\", maxFractionDigits: \"maxFractionDigits\", prefix: \"prefix\", suffix: \"suffix\", locale: \"locale\", localeMatcher: \"localeMatcher\", currency: \"currency\", currencyDisplay: \"currencyDisplay\", useGrouping: \"useGrouping\" }, host: { classAttribute: \"p-element\" }, queries: [{ propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"icon\", first: true, predicate: [\"icon\"], descendants: true }], ngImport: i0, template: `\n
    \n \n \n \n
    \n \n
      \n
    • {{matchMode.label}}
    • \n
    • \n
    • {{noFilterLabel}}
    • \n
    \n \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n `, isInline: true, components: [{ type: ColumnFilterFormElement, selector: \"p-columnFilterFormElement\", inputs: [\"field\", \"type\", \"filterConstraint\", \"filterTemplate\", \"placeholder\", \"minFractionDigits\", \"maxFractionDigits\", \"prefix\", \"suffix\", \"locale\", \"localeMatcher\", \"currency\", \"currencyDisplay\", \"useGrouping\"] }, { type: i10.Dropdown, selector: \"p-dropdown\", inputs: [\"scrollHeight\", \"filter\", \"name\", \"style\", \"panelStyle\", \"styleClass\", \"panelStyleClass\", \"readonly\", \"required\", \"editable\", \"appendTo\", \"tabindex\", \"placeholder\", \"filterPlaceholder\", \"filterLocale\", \"inputId\", \"selectId\", \"dataKey\", \"filterBy\", \"autofocus\", \"resetFilterOnHide\", \"dropdownIcon\", \"optionLabel\", \"optionValue\", \"optionDisabled\", \"optionGroupLabel\", \"optionGroupChildren\", \"autoDisplayFirst\", \"group\", \"showClear\", \"emptyFilterMessage\", \"emptyMessage\", \"virtualScroll\", \"itemSize\", \"autoZIndex\", \"baseZIndex\", \"showTransitionOptions\", \"hideTransitionOptions\", \"ariaFilterLabel\", \"ariaLabel\", \"ariaLabelledBy\", \"filterMatchMode\", \"maxlength\", \"tooltip\", \"tooltipPosition\", \"tooltipPositionStyle\", \"tooltipStyleClass\", \"autofocusFilter\", \"disabled\", \"options\", \"filterValue\"], outputs: [\"onChange\", \"onFilter\", \"onFocus\", \"onBlur\", \"onClick\", \"onShow\", \"onHide\", \"onClear\"] }], directives: [{ type: i4.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i4.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i4.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i4.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { type: i9.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { type: i9.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { type: i11.ButtonDirective, selector: \"[pButton]\", inputs: [\"iconPos\", \"loadingIcon\", \"label\", \"icon\", \"loading\"] }], animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('.12s cubic-bezier(0, 0, 0.2, 1)')\n ]),\n transition(':leave', [\n animate('.1s linear', style({ opacity: 0 }))\n ])\n ])\n ], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: ColumnFilter, decorators: [{\n type: Component,\n args: [{\n selector: 'p-columnFilter',\n template: `\n
    \n \n \n \n
    \n \n
      \n
    • {{matchMode.label}}
    • \n
    • \n
    • {{noFilterLabel}}
    • \n
    \n \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n `,\n animations: [\n trigger('overlayAnimation', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scaleY(0.8)' }),\n animate('.12s cubic-bezier(0, 0, 0.2, 1)')\n ]),\n transition(':leave', [\n animate('.1s linear', style({ opacity: 0 }))\n ])\n ])\n ],\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Table }, { type: i0.Renderer2 }, { type: i1.PrimeNGConfig }, { type: i1.OverlayService }]; }, propDecorators: { field: [{\n type: Input\n }], type: [{\n type: Input\n }], display: [{\n type: Input\n }], showMenu: [{\n type: Input\n }], matchMode: [{\n type: Input\n }], operator: [{\n type: Input\n }], showOperator: [{\n type: Input\n }], showClearButton: [{\n type: Input\n }], showApplyButton: [{\n type: Input\n }], showMatchModes: [{\n type: Input\n }], showAddButton: [{\n type: Input\n }], hideOnClear: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], matchModeOptions: [{\n type: Input\n }], maxConstraints: [{\n type: Input\n }], minFractionDigits: [{\n type: Input\n }], maxFractionDigits: [{\n type: Input\n }], prefix: [{\n type: Input\n }], suffix: [{\n type: Input\n }], locale: [{\n type: Input\n }], localeMatcher: [{\n type: Input\n }], currency: [{\n type: Input\n }], currencyDisplay: [{\n type: Input\n }], useGrouping: [{\n type: Input\n }], icon: [{\n type: ViewChild,\n args: ['icon']\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }] } });\nclass TableModule {\n}\nTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableModule, declarations: [Table, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, TableBody, SortIcon, TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement], imports: [CommonModule, PaginatorModule, InputTextModule, DropdownModule, ScrollingModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule], exports: [Table, SharedModule, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, SortIcon, TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ScrollingModule, ColumnFilter] });\nTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableModule, imports: [[CommonModule, PaginatorModule, InputTextModule, DropdownModule, ScrollingModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule], SharedModule,\n ScrollingModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.2.6\", ngImport: i0, type: TableModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, PaginatorModule, InputTextModule, DropdownModule, ScrollingModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule],\n exports: [Table, SharedModule, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, SortIcon,\n TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ScrollingModule, ColumnFilter],\n declarations: [Table, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, TableBody, SortIcon,\n TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { CancelEditableRow, CellEditor, ColumnFilter, ColumnFilterFormElement, ContextMenuRow, EditableColumn, EditableRow, FrozenColumn, InitEditableRow, ReorderableColumn, ReorderableRow, ReorderableRowHandle, ResizableColumn, RowGroupHeader, RowToggler, SaveEditableRow, SelectableRow, SelectableRowDblClick, SortIcon, SortableColumn, Table, TableBody, TableCheckbox, TableHeaderCheckbox, TableModule, TableRadioButton, TableService };\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceNamesComponent } from './substance-names.component';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport {ReferencesManagerModule} from '../../references-manager/references-manager.module';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport { TableModule } from 'primeng/table';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceNamesComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ReferencesManagerModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatSortModule,\r\n TableModule,\r\n MatTooltipModule,\r\n MatRadioModule\r\n ],\r\n declarations: [SubstanceNamesComponent,\r\n ]\r\n})\r\nexport class SubstanceNamesModule { }\r\n"],"sourceRoot":"webpack:///","file":"834.e53845467f8174d0.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/8352.48df9d3e9791d578.js b/frontend/src/main/resources/static/8352.48df9d3e9791d578.js deleted file mode 100644 index 07879d1..0000000 --- a/frontend/src/main/resources/static/8352.48df9d3e9791d578.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8352],{48352:function($,T,u){u.r(T),u.d(T,{SubstanceHierarchyModule:function(){return B}});var b=u(48047),Z=u(78069),y=u(36362),M=u(24582),H=u(7318),N=u(2756),P=u(12570),k=u(44250),E=u(38205),d=u(34972),e=u(76442),S=u(65590);function U(r,l){1&r&&e._UZ(0,"mat-icon",19)}function q(r,l){if(1&r&&(e.TgZ(0,"span",20),e._uU(1),e.qZA()),2&r){var a=e.oxw().$implicit;e.xp6(1),e.hij(" ",a.relationship,"")}}var I=function(l,a){return{odd:l,primary:a}},O=function(l){return["/substances",l]},A=function(l){return["/substances",l,"edit"]};function D(r,l){if(1&r){var a=e.EpF();e.TgZ(0,"mat-tree-node",6),e.TgZ(1,"li",7),e.NdJ("click",function(){var s=e.CHM(a).$implicit;return e.oxw(3).activeNode=s}),e._UZ(2,"button",8),e.TgZ(3,"div",9),e.TgZ(4,"div",10),e.TgZ(5,"a",11),e._uU(6),e.qZA(),e.TgZ(7,"a",12),e.TgZ(8,"span",13),e._uU(9,"edit in new tab"),e.qZA(),e.YNc(10,U,1,0,"mat-icon",14),e.qZA(),e.qZA(),e._UZ(11,"div",15),e.TgZ(12,"div",16),e.TgZ(13,"span",17),e._uU(14),e.qZA(),e.YNc(15,q,2,1,"span",18),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=l.$implicit,h=e.oxw(3);e.xp6(1),e.Q6J("ngClass",e.WLB(9,I,"odd"===i.order,h.activeNode===i)),e.xp6(1),e.uIk("aria-label",i.text),e.xp6(3),e.Q6J("ngClass",i.self?"current-record":"")("routerLink",e.VKq(12,O,i.value.refuuid||"")),e.xp6(1),e.hij(" ",i.value.refPname," "),e.xp6(1),e.Q6J("routerLink",e.VKq(14,A,i.value.refuuid||"")),e.xp6(3),e.Q6J("ngIf",h.isAdmin),e.xp6(4),e.Oqu(i.value.approvalID?i.value.approvalID:"PENDING"),e.xp6(1),e.Q6J("ngIf",""!==i.relationship)}}function L(r,l){1&r&&e._UZ(0,"mat-icon",29)}function J(r,l){if(1&r&&(e.TgZ(0,"span",20),e._uU(1),e.qZA()),2&r){var a=e.oxw().$implicit;e.xp6(1),e.hij(" ",a.relationship,"")}}function Q(r,l){if(1&r){var a=e.EpF();e.TgZ(0,"mat-nested-tree-node"),e.TgZ(1,"li",21),e.TgZ(2,"div",7),e.NdJ("click",function(){var s=e.CHM(a).$implicit;return e.oxw(3).activeNode=s})("click",function(){var s=e.CHM(a).$implicit;return e.oxw(3).activeNode=s}),e.TgZ(3,"button",22),e._UZ(4,"mat-icon",23),e.qZA(),e.TgZ(5,"div",24),e.TgZ(6,"div",10),e.TgZ(7,"a",25),e._uU(8),e.qZA(),e.TgZ(9,"a",26),e.YNc(10,L,1,0,"mat-icon",27),e.qZA(),e.qZA(),e.TgZ(11,"div",16),e.TgZ(12,"span",17),e._uU(13),e.qZA(),e.YNc(14,J,2,1,"span",18),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"ul"),e.GkF(16,28),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=l.$implicit,h=e.oxw(3);e.xp6(2),e.Q6J("ngClass",e.WLB(12,I,"odd"===i.order,h.activeNode===i)),e.xp6(1),e.uIk("aria-label","toggle "+i.text),e.xp6(1),e.Q6J("svgIcon",h.treeControl.isExpanded(i)?"chevron_down":"chevron_right"),e.xp6(3),e.Q6J("ngClass",i.self?"current-record":"")("routerLink",e.VKq(15,O,i.value.refuuid||"")),e.xp6(1),e.hij(" ",i.value.refPname," "),e.xp6(1),e.Q6J("routerLink",e.VKq(17,A,i.value.refuuid||"")),e.xp6(1),e.Q6J("ngIf",h.isAdmin),e.xp6(3),e.Oqu(i.value.approvalID||"PENDING"),e.xp6(1),e.Q6J("ngIf",""!==i.relationship),e.xp6(1),e.ekj("hierarchy-tree-invisible",!h.treeControl.isExpanded(i))}}function Y(r,l){if(1&r&&(e.TgZ(0,"mat-tree",3),e.YNc(1,D,16,16,"mat-tree-node",4),e.YNc(2,Q,17,19,"mat-nested-tree-node",5),e.qZA()),2&r){var a=e.oxw(2);e.Q6J("dataSource",a.dataSource)("treeControl",a.treeControl),e.xp6(2),e.Q6J("matTreeNodeDefWhen",a.hasChild)}}function V(r,l){if(1&r&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"div",1),e._uU(3,"Substance Hierarchy"),e.qZA(),e.YNc(4,Y,3,3,"mat-tree",2),e.qZA(),e.qZA()),2&r){var a=e.oxw();e.xp6(4),e.Q6J("ngIf",a.dataSource.data&&a.dataSource.data.length>0)}}var F=function(){var r=function(l){(0,M.Z)(i,l);var a=(0,H.Z)(i);function i(h,t){var o;return(0,Z.Z)(this,i),(o=a.call(this)).substanceService=h,o.authService=t,o.treeControl=new E.VY(function(s){return s.children}),o.dataSource=new d.WX,o.hasChild=function(s,c){return!!c.children&&c.children.length>0},o}return(0,b.Z)(i,[{key:"ngOnInit",value:function(){var t=this;this.uuid=this.substance.uuid,this.name=this.substance._nameHTML,this.selfNode={id:0,type:"ROOT",parent:"#",expandable:!1,value:{refuuid:this.uuid,name:this.name,approvalID:this.approvalID||""},relationship:""},this.substanceService.getHierarchy(this.uuid).subscribe(function(o){t.loadHierarchy(o)},function(o){t.loadHierarchy([t.selfNode])}),this.isAdmin=this.authService.hasAnyRoles("Admin","Updater","SuperUpdater")}},{key:"loadHierarchy",value:function(t){0===t.length&&t.push(this.selfNode);for(var o=0;o1&&(t=this.formatHierarchy(t));var c=this.list_to_tree(t);this.dataSource.data=c,this.activeNode=this.dataSource.data[0]}},{key:"formatHierarchy",value:function(t){for(var o="",s="",c=[],n=t.length-1;n>=0;n--){0===t[n].depth&&(t[n].parent="#");var f=t[n].value;if(t[n].relationship="",f.refuuid===this.uuid&&(t[n].self=!0),!f.approvalID&&f.linkingID&&10===f.linkingID.length&&(t[n].value.approvalID=t[n].value.linkingID),!t[n].value.approvalID){var w=t[n].text.match(/\[(.*?)\]/);w&&(t[n].value.approvalID=w[1])}f.refuuid===o&&s.includes("HAS ACTIVE MOIETY")&&(c.push([t[n+1].id,t[n].id]),t.splice(n+1,1),t[n].relationship+="{ACTIVE MOIETY} "),t[n].type.includes("HAS ACTIVE MOIETY")?t[n].relationship+="{ACTIVE FORM} ":t[n].type.includes("IS SALT/SOLVATE OF")?t[n].relationship+="{SALT/SOLVATE} ":t[n].type.includes("IS SUBCONCEPT OF")?t[n].relationship+="{SUBCONCEPT} ":t[n].type.includes("IS G1SS CONSTITUENT OF")?t[n].relationship+="{G1SS} ":t[n].type.length>8&&(t[n].relationship="")&&(t[n].relationship+=" {"+t[n].type+"} "),t[n].refuuid=t[n].value.refuuid,o=t[n].refuuid,s=t[n].type}t.sort(function(m,v){var _=m.refuuid.toUpperCase(),C=v.refuuid.toUpperCase();return _===C?m.parentv.parent?1:0:_C?1:0});for(var p=t.length-1;p>=0;p--)p!==t.length-1&&t[p].value.refuuid===t[p+1].value.refuuid&&t[p].parent===t[p+1].parent&&(t[p].type.includes("HAS ACTIVE MOIETY")&&t[p+1].type.includes("IS SALT/SOLVATE OF")?(c.push([t[p].id,t[p+1].id]),t.splice(p,1)):t[p+1].type.includes("HAS ACTIVE MOIETY")&&t[p].type.includes("IS SALT/SOLVATE OF")&&(c.push([t[p+1].id,t[p].id]),t.splice(p+1,1)));t.sort(function(m,v){return m.id-v.id});for(var g=t.length-1;g>=0;g--)for(var x=0;x\r\n\r\n
    \r\n
    Substance Hierarchy
    \r\n 0\" [dataSource]=\"dataSource\" [treeControl]=\"treeControl\" class=\"hierarchy-tree\">\r\n \r\n
  • \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n {{node.value.approvalID? node.value.approvalID : 'PENDING'}}\r\n {{node.relationship}}\r\n \r\n
    \r\n
    \r\n
  • \r\n
    \r\n \r\n
  • \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n {{node.value.approvalID || 'PENDING'}}\r\n {{node.relationship}}\r\n
    \r\n
    \r\n
    \r\n
      \r\n \r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\r\nimport { AuthService } from '@gsrs-core/auth';\r\nimport { NestedTreeControl } from '@angular/cdk/tree';\r\nimport { MatTreeNestedDataSource } from '@angular/material/tree';\r\nimport { HierarchyNode } from '@gsrs-core/substances-browse/substance-hierarchy/hierarchy.model';\r\n\r\n@Component({\r\n selector: 'app-substance-hierarchy',\r\n templateUrl: './substance-hierarchy.component.html',\r\n styleUrls: ['./substance-hierarchy.component.scss']\r\n})\r\nexport class SubstanceHierarchyComponent extends SubstanceCardBase implements OnInit {\r\n\r\n constructor(\r\n private substanceService: SubstanceService,\r\n private authService: AuthService\r\n ) {\r\n \r\n super();\r\n }\r\n\r\n uuid: string;\r\n name: string;\r\n approvalID?: string;\r\n treeControl = new NestedTreeControl(node => node.children);\r\n dataSource = new MatTreeNestedDataSource();\r\n selfNode: HierarchyNode;\r\n activeNode: any;\r\n isAdmin: boolean;\r\n hasChild = (_: number, node: any) => !!node.children && node.children.length > 0;\r\n\r\n ngOnInit() {\r\n this.uuid = this.substance.uuid;\r\n this.name = this.substance._nameHTML;\r\n this.selfNode = {\r\n 'id': 0,\r\n 'type': 'ROOT',\r\n 'parent': '#',\r\n 'expandable': false,\r\n 'value': {\r\n 'refuuid': this.uuid,\r\n 'name': this.name,\r\n 'approvalID': this.approvalID || ''\r\n },\r\n 'relationship': ''\r\n };\r\n this.substanceService.getHierarchy(this.uuid).subscribe(resp => {\r\n this.loadHierarchy(resp);\r\n }, error => {\r\n this.loadHierarchy([this.selfNode]);\r\n });\r\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\r\n }\r\n\r\n loadHierarchy(orig: any): void {\r\n\r\n if (orig.length === 0) {\r\n orig.push(this.selfNode);\r\n }\r\n\r\n for (let i = 0; i < orig.length; i++) {\r\n const row: any = orig[i];\r\n if (row.depth === 0) {\r\n row.parent = '#';\r\n }\r\n }\r\n if (orig.length > 1) {\r\n orig = this.formatHierarchy(orig);\r\n }\r\n const temp2 = this.list_to_tree(orig);\r\n this.dataSource.data = temp2;\r\n this.activeNode = this.dataSource.data[0];\r\n }\r\n\r\n formatHierarchy(data: any): HierarchyNode {\r\n let lastID = '';\r\n let lastProp = '';\r\n const parentRemap = [];\r\n\r\n for (let i = (data.length - 1); i >= 0; i--) {\r\n if (data[i].depth === 0) {\r\n data[i].parent = '#';\r\n }\r\n const subref = data[i].value;\r\n data[i].relationship = '';\r\n if (subref.refuuid === this.uuid) {\r\n data[i].self = true;\r\n }\r\n\r\n if (!subref.approvalID && subref.linkingID && subref.linkingID.length === 10) {\r\n data[i].value.approvalID = data[i].value.linkingID;\r\n }\r\n if (!data[i].value.approvalID) {\r\n const matches = data[i].text.match(/\\[(.*?)\\]/);\r\n if (matches) {\r\n data[i].value.approvalID = matches[1];\r\n }\r\n }\r\n // remove children identical to parent with active moiety relationship, format text\r\n if ((subref.refuuid === lastID) && (lastProp.includes('HAS ACTIVE MOIETY'))) {\r\n parentRemap.push([data[i + 1].id, data[i].id]);\r\n data.splice(i + 1, 1);\r\n data[i].relationship += '{ACTIVE MOIETY} ';\r\n }\r\n if (data[i].type.includes('HAS ACTIVE MOIETY')) {\r\n data[i].relationship += '{ACTIVE FORM} ';\r\n } else if (data[i].type.includes('IS SALT/SOLVATE OF')) {\r\n data[i].relationship += '{SALT/SOLVATE} ';\r\n } else if (data[i].type.includes('IS SUBCONCEPT OF')) {\r\n data[i].relationship += '{SUBCONCEPT} ';\r\n } else if (data[i].type.includes('IS G1SS CONSTITUENT OF')) {\r\n data[i].relationship += '{G1SS} ';\r\n } else if ((data[i].type.length > 8 ) && (data[i].relationship = '')) {\r\n data[i].relationship += ' {' + data[i].type + '} ';\r\n }\r\n\r\n\r\n data[i].refuuid = data[i].value.refuuid;\r\n lastID = data[i].refuuid;\r\n lastProp = data[i].type;\r\n }\r\n // further remove self referential relationships with both salt and moiety relationship.\r\n data.sort(function(a, b) {\r\n const textA = a.refuuid.toUpperCase();\r\n const textB = b.refuuid.toUpperCase();\r\n if (textA === textB) {\r\n return (a.parent < b.parent) ? -1 : (a.parent > b.parent) ? 1 : 0;\r\n } else {\r\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;\r\n }\r\n });\r\n\r\n // delete duplicates entries with both active moiety and salt/ solvate relationships.\r\n for (let i = (data.length - 1); i >= 0; i--) {\r\n if (i !== data.length - 1) {\r\n if ((data[i].value.refuuid === data[i + 1].value.refuuid)) {\r\n if ((data[i].parent === data[i + 1].parent)) {\r\n if (data[i].type.includes('HAS ACTIVE MOIETY') && data[i + 1].type.includes('IS SALT/SOLVATE OF')) {\r\n parentRemap.push([data[i].id, data[i + 1].id]);\r\n data.splice(i, 1);\r\n } else if (data[i + 1].type.includes('HAS ACTIVE MOIETY') && data[i].type.includes('IS SALT/SOLVATE OF')) {\r\n parentRemap.push([data[i + 1].id, data[i].id]);\r\n data.splice(i + 1, 1);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n data.sort(function(a, b) {\r\n return a.id - b.id;\r\n });\r\n\r\n for (let i = data.length - 1; i >= 0; i--) {\r\n for (let k = 0; k < parentRemap.length; k++) {\r\n if (data[i].parent === parentRemap[k][0]) {\r\n data[i].parent = parentRemap[k][1];\r\n }\r\n }\r\n }\r\n return data;\r\n }\r\n\r\n list_to_tree(list) {\r\n const map = {}, roots = [];\r\n let node, i;\r\n for (i = 0; i < list.length; i += 1) {\r\n map[list[i].id] = i;\r\n list[i].children = [];\r\n if (i === 0) {\r\n list[i].order = 'primary';\r\n\r\n } else if (i % 2 === 0) {\r\n list[i].order = 'even';\r\n } else {\r\n list[i].order = 'odd';\r\n }\r\n }\r\n for (i = 0; i < list.length; i += 1) {\r\n node = list[i];\r\n if (node.parent !== '#') {\r\n list[map[node.parent]].children.push(node);\r\n } else {\r\n roots.push(node);\r\n }\r\n }\r\n return roots;\r\n }\r\n}\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceHierarchyComponent } from './substance-hierarchy.component';\r\nimport {MatTreeModule} from '@angular/material/tree';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceHierarchyComponent),\r\n MatTreeModule,\r\n MatIconModule\r\n ],\r\n declarations: [SubstanceHierarchyComponent]\r\n})\r\nexport class SubstanceHierarchyModule { }\r\n"],"sourceRoot":"webpack:///","file":"8352.48df9d3e9791d578.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/8352.78fed0e575b4d025.js b/frontend/src/main/resources/static/8352.78fed0e575b4d025.js new file mode 100644 index 0000000..e1013b7 --- /dev/null +++ b/frontend/src/main/resources/static/8352.78fed0e575b4d025.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8352],{48352:function(G,_,p){p.r(_),p.d(_,{SubstanceHierarchyModule:function(){return $}});var b=p(1884),S=p(39117),y=p(36362),H=p(46751),N=p(56101),P=p(2756),k=p(12570),E=p(44250),L=p(38205),d=p(34972),e=p(86613),Z=p(98002),I=p(65590);function D(r,l){1&r&&e._UZ(0,"mat-icon",19)}function J(r,l){if(1&r&&(e.TgZ(0,"span",20),e._uU(1),e.qZA()),2&r){var a=e.oxw().$implicit;e.xp6(1),e.hij(" ",a.relationship,"")}}var O=function(l,a){return{odd:l,primary:a}},A=function(l){return["/substances",l]},M=function(l){return["/substances",l,"edit"]};function U(r,l){if(1&r){var a=e.EpF();e.TgZ(0,"mat-tree-node",6),e.TgZ(1,"li",7),e.NdJ("click",function(){var s=e.CHM(a).$implicit;return e.oxw(3).activeNode=s}),e._UZ(2,"button",8),e.TgZ(3,"div",9),e.TgZ(4,"div",10),e._UZ(5,"a",11),e.TgZ(6,"a",12),e.TgZ(7,"span",13),e._uU(8,"edit in new tab"),e.qZA(),e.YNc(9,D,1,0,"mat-icon",14),e.qZA(),e.qZA(),e._UZ(10,"div",15),e.TgZ(11,"div",16),e.TgZ(12,"span",17),e._uU(13),e.qZA(),e.YNc(14,J,2,1,"span",18),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=l.$implicit,h=e.oxw(3);e.xp6(1),e.Q6J("ngClass",e.WLB(9,O,"odd"===i.order,h.activeNode===i)),e.xp6(1),e.uIk("aria-label",i.text),e.xp6(3),e.Q6J("ngClass",i.self?"current-record":"")("routerLink",e.VKq(12,A,i.value.refuuid||""))("innerHTML",i.value.refPname,e.oJD),e.xp6(1),e.Q6J("routerLink",e.VKq(14,M,i.value.refuuid||"")),e.xp6(3),e.Q6J("ngIf",h.isAdmin),e.xp6(4),e.Oqu(i.value.approvalID?i.value.approvalID:"PENDING"),e.xp6(1),e.Q6J("ngIf",""!==i.relationship)}}function q(r,l){1&r&&e._UZ(0,"mat-icon",29)}function Q(r,l){if(1&r&&(e.TgZ(0,"span",20),e._uU(1),e.qZA()),2&r){var a=e.oxw().$implicit;e.xp6(1),e.hij(" ",a.relationship,"")}}function Y(r,l){if(1&r){var a=e.EpF();e.TgZ(0,"mat-nested-tree-node"),e.TgZ(1,"li",21),e.TgZ(2,"div",7),e.NdJ("click",function(){var s=e.CHM(a).$implicit;return e.oxw(3).activeNode=s})("click",function(){var s=e.CHM(a).$implicit;return e.oxw(3).activeNode=s}),e.TgZ(3,"button",22),e._UZ(4,"mat-icon",23),e.qZA(),e.TgZ(5,"div",24),e.TgZ(6,"div",10),e._UZ(7,"a",25),e.TgZ(8,"a",26),e.YNc(9,q,1,0,"mat-icon",27),e.qZA(),e.qZA(),e.TgZ(10,"div",16),e.TgZ(11,"span",17),e._uU(12),e.qZA(),e.YNc(13,Q,2,1,"span",18),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"ul"),e.GkF(15,28),e.qZA(),e.qZA(),e.qZA()}if(2&r){var i=l.$implicit,h=e.oxw(3);e.xp6(2),e.Q6J("ngClass",e.WLB(12,O,"odd"===i.order,h.activeNode===i)),e.xp6(1),e.uIk("aria-label","toggle "+i.text),e.xp6(1),e.Q6J("svgIcon",h.treeControl.isExpanded(i)?"chevron_down":"chevron_right"),e.xp6(3),e.Q6J("ngClass",i.self?"current-record":"")("routerLink",e.VKq(15,A,i.value.refuuid||""))("innerHTML",i.value.refPname,e.oJD),e.xp6(1),e.Q6J("routerLink",e.VKq(17,M,i.value.refuuid||"")),e.xp6(1),e.Q6J("ngIf",h.isAdmin),e.xp6(3),e.Oqu(i.value.approvalID||"PENDING"),e.xp6(1),e.Q6J("ngIf",""!==i.relationship),e.xp6(1),e.ekj("hierarchy-tree-invisible",!h.treeControl.isExpanded(i))}}function V(r,l){if(1&r&&(e.TgZ(0,"mat-tree",3),e.YNc(1,U,15,16,"mat-tree-node",4),e.YNc(2,Y,16,19,"mat-nested-tree-node",5),e.qZA()),2&r){var a=e.oxw(2);e.Q6J("dataSource",a.dataSource)("treeControl",a.treeControl),e.xp6(2),e.Q6J("matTreeNodeDefWhen",a.hasChild)}}function F(r,l){if(1&r&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"div",1),e._uU(3,"Substance Hierarchy"),e.qZA(),e.YNc(4,V,3,3,"mat-tree",2),e.qZA(),e.qZA()),2&r){var a=e.oxw();e.xp6(4),e.Q6J("ngIf",a.dataSource.data&&a.dataSource.data.length>0)}}var j=function(){var r=function(l){(0,H.Z)(i,l);var a=(0,N.Z)(i);function i(h,t){var o;return(0,S.Z)(this,i),(o=a.call(this)).substanceService=h,o.authService=t,o.treeControl=new L.VY(function(s){return s.children}),o.dataSource=new d.WX,o.hasChild=function(s,c){return!!c.children&&c.children.length>0},o}return(0,b.Z)(i,[{key:"ngOnInit",value:function(){var t=this;this.uuid=this.substance.uuid,this.name=this.substance._nameHTML,this.selfNode={id:0,type:"ROOT",parent:"#",expandable:!1,value:{refuuid:this.uuid,name:this.name,approvalID:this.approvalID||""},relationship:""},this.substanceService.getHierarchy(this.uuid).subscribe(function(o){t.loadHierarchy(o)},function(o){t.loadHierarchy([t.selfNode])}),this.isAdmin=this.authService.hasAnyRoles("Admin","Updater","SuperUpdater")}},{key:"loadHierarchy",value:function(t){0===t.length&&t.push(this.selfNode);for(var o=0;o1&&(t=this.formatHierarchy(t));var c=this.list_to_tree(t);this.dataSource.data=c,this.activeNode=this.dataSource.data[0]}},{key:"formatHierarchy",value:function(t){for(var o="",s="",c=[],n=t.length-1;n>=0;n--){0===t[n].depth&&(t[n].parent="#");var m=t[n].value;if(t[n].relationship="",m.refuuid===this.uuid&&(t[n].self=!0),!m.approvalID&&m.linkingID&&10===m.linkingID.length&&(t[n].value.approvalID=t[n].value.linkingID),!t[n].value.approvalID){var w=t[n].text.match(/\[(.*?)\]/);w&&(t[n].value.approvalID=w[1])}m.refuuid===o&&s.includes("HAS ACTIVE MOIETY")&&(c.push([t[n+1].id,t[n].id]),t.splice(n+1,1),t[n].relationship+="{ACTIVE MOIETY} "),t[n].type.includes("HAS ACTIVE MOIETY")?t[n].relationship+="{ACTIVE FORM} ":t[n].type.includes("IS SALT/SOLVATE OF")?t[n].relationship+="{SALT/SOLVATE} ":t[n].type.includes("IS SUBCONCEPT OF")?t[n].relationship+="{SUBCONCEPT} ":t[n].type.includes("IS G1SS CONSTITUENT OF")?t[n].relationship+="{G1SS} ":t[n].type.length>8&&(t[n].relationship="")&&(t[n].relationship+=" {"+t[n].type+"} "),t[n].refuuid=t[n].value.refuuid,o=t[n].refuuid,s=t[n].type}t.sort(function(f,v){var C=f.refuuid.toUpperCase(),T=v.refuuid.toUpperCase();return C===T?f.parentv.parent?1:0:CT?1:0});for(var u=t.length-1;u>=0;u--)u!==t.length-1&&t[u].value.refuuid===t[u+1].value.refuuid&&t[u].parent===t[u+1].parent&&(t[u].type.includes("HAS ACTIVE MOIETY")&&t[u+1].type.includes("IS SALT/SOLVATE OF")?(c.push([t[u].id,t[u+1].id]),t.splice(u,1)):t[u+1].type.includes("HAS ACTIVE MOIETY")&&t[u].type.includes("IS SALT/SOLVATE OF")&&(c.push([t[u+1].id,t[u].id]),t.splice(u+1,1)));t.sort(function(f,v){return f.id-v.id});for(var g=t.length-1;g>=0;g--)for(var x=0;x\r\n\r\n
    \r\n
    Substance Hierarchy
    \r\n 0\" [dataSource]=\"dataSource\" [treeControl]=\"treeControl\" class=\"hierarchy-tree\">\r\n \r\n
  • \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n {{node.value.approvalID? node.value.approvalID : 'PENDING'}}\r\n {{node.relationship}}\r\n \r\n
    \r\n
    \r\n
  • \r\n
    \r\n \r\n
  • \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {{node.value.approvalID || 'PENDING'}}\r\n {{node.relationship}}\r\n
    \r\n
    \r\n
    \r\n
      \r\n \r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { SubstanceCardBase } from '../substance-card-base';\r\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\r\nimport { AuthService } from '@gsrs-core/auth';\r\nimport { NestedTreeControl } from '@angular/cdk/tree';\r\nimport { MatTreeNestedDataSource } from '@angular/material/tree';\r\nimport { HierarchyNode } from '@gsrs-core/substances-browse/substance-hierarchy/hierarchy.model';\r\n\r\n@Component({\r\n selector: 'app-substance-hierarchy',\r\n templateUrl: './substance-hierarchy.component.html',\r\n styleUrls: ['./substance-hierarchy.component.scss']\r\n})\r\nexport class SubstanceHierarchyComponent extends SubstanceCardBase implements OnInit {\r\n\r\n constructor(\r\n private substanceService: SubstanceService,\r\n private authService: AuthService\r\n ) {\r\n \r\n super();\r\n }\r\n\r\n uuid: string;\r\n name: string;\r\n approvalID?: string;\r\n treeControl = new NestedTreeControl(node => node.children);\r\n dataSource = new MatTreeNestedDataSource();\r\n selfNode: HierarchyNode;\r\n activeNode: any;\r\n isAdmin: boolean;\r\n hasChild = (_: number, node: any) => !!node.children && node.children.length > 0;\r\n\r\n ngOnInit() {\r\n this.uuid = this.substance.uuid;\r\n this.name = this.substance._nameHTML;\r\n this.selfNode = {\r\n 'id': 0,\r\n 'type': 'ROOT',\r\n 'parent': '#',\r\n 'expandable': false,\r\n 'value': {\r\n 'refuuid': this.uuid,\r\n 'name': this.name,\r\n 'approvalID': this.approvalID || ''\r\n },\r\n 'relationship': ''\r\n };\r\n this.substanceService.getHierarchy(this.uuid).subscribe(resp => {\r\n this.loadHierarchy(resp);\r\n }, error => {\r\n this.loadHierarchy([this.selfNode]);\r\n });\r\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\r\n }\r\n\r\n loadHierarchy(orig: any): void {\r\n\r\n if (orig.length === 0) {\r\n orig.push(this.selfNode);\r\n }\r\n\r\n for (let i = 0; i < orig.length; i++) {\r\n const row: any = orig[i];\r\n if (row.depth === 0) {\r\n row.parent = '#';\r\n }\r\n }\r\n if (orig.length > 1) {\r\n orig = this.formatHierarchy(orig);\r\n }\r\n const temp2 = this.list_to_tree(orig);\r\n this.dataSource.data = temp2;\r\n this.activeNode = this.dataSource.data[0];\r\n }\r\n\r\n formatHierarchy(data: any): HierarchyNode {\r\n let lastID = '';\r\n let lastProp = '';\r\n const parentRemap = [];\r\n\r\n for (let i = (data.length - 1); i >= 0; i--) {\r\n if (data[i].depth === 0) {\r\n data[i].parent = '#';\r\n }\r\n const subref = data[i].value;\r\n data[i].relationship = '';\r\n if (subref.refuuid === this.uuid) {\r\n data[i].self = true;\r\n }\r\n\r\n if (!subref.approvalID && subref.linkingID && subref.linkingID.length === 10) {\r\n data[i].value.approvalID = data[i].value.linkingID;\r\n }\r\n if (!data[i].value.approvalID) {\r\n const matches = data[i].text.match(/\\[(.*?)\\]/);\r\n if (matches) {\r\n data[i].value.approvalID = matches[1];\r\n }\r\n }\r\n // remove children identical to parent with active moiety relationship, format text\r\n if ((subref.refuuid === lastID) && (lastProp.includes('HAS ACTIVE MOIETY'))) {\r\n parentRemap.push([data[i + 1].id, data[i].id]);\r\n data.splice(i + 1, 1);\r\n data[i].relationship += '{ACTIVE MOIETY} ';\r\n }\r\n if (data[i].type.includes('HAS ACTIVE MOIETY')) {\r\n data[i].relationship += '{ACTIVE FORM} ';\r\n } else if (data[i].type.includes('IS SALT/SOLVATE OF')) {\r\n data[i].relationship += '{SALT/SOLVATE} ';\r\n } else if (data[i].type.includes('IS SUBCONCEPT OF')) {\r\n data[i].relationship += '{SUBCONCEPT} ';\r\n } else if (data[i].type.includes('IS G1SS CONSTITUENT OF')) {\r\n data[i].relationship += '{G1SS} ';\r\n } else if ((data[i].type.length > 8 ) && (data[i].relationship = '')) {\r\n data[i].relationship += ' {' + data[i].type + '} ';\r\n }\r\n\r\n\r\n data[i].refuuid = data[i].value.refuuid;\r\n lastID = data[i].refuuid;\r\n lastProp = data[i].type;\r\n }\r\n // further remove self referential relationships with both salt and moiety relationship.\r\n data.sort(function(a, b) {\r\n const textA = a.refuuid.toUpperCase();\r\n const textB = b.refuuid.toUpperCase();\r\n if (textA === textB) {\r\n return (a.parent < b.parent) ? -1 : (a.parent > b.parent) ? 1 : 0;\r\n } else {\r\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;\r\n }\r\n });\r\n\r\n // delete duplicates entries with both active moiety and salt/ solvate relationships.\r\n for (let i = (data.length - 1); i >= 0; i--) {\r\n if (i !== data.length - 1) {\r\n if ((data[i].value.refuuid === data[i + 1].value.refuuid)) {\r\n if ((data[i].parent === data[i + 1].parent)) {\r\n if (data[i].type.includes('HAS ACTIVE MOIETY') && data[i + 1].type.includes('IS SALT/SOLVATE OF')) {\r\n parentRemap.push([data[i].id, data[i + 1].id]);\r\n data.splice(i, 1);\r\n } else if (data[i + 1].type.includes('HAS ACTIVE MOIETY') && data[i].type.includes('IS SALT/SOLVATE OF')) {\r\n parentRemap.push([data[i + 1].id, data[i].id]);\r\n data.splice(i + 1, 1);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n data.sort(function(a, b) {\r\n return a.id - b.id;\r\n });\r\n\r\n for (let i = data.length - 1; i >= 0; i--) {\r\n for (let k = 0; k < parentRemap.length; k++) {\r\n if (data[i].parent === parentRemap[k][0]) {\r\n data[i].parent = parentRemap[k][1];\r\n }\r\n }\r\n }\r\n return data;\r\n }\r\n\r\n list_to_tree(list) {\r\n const map = {}, roots = [];\r\n let node, i;\r\n for (i = 0; i < list.length; i += 1) {\r\n map[list[i].id] = i;\r\n list[i].children = [];\r\n if (i === 0) {\r\n list[i].order = 'primary';\r\n\r\n } else if (i % 2 === 0) {\r\n list[i].order = 'even';\r\n } else {\r\n list[i].order = 'odd';\r\n }\r\n }\r\n for (i = 0; i < list.length; i += 1) {\r\n node = list[i];\r\n if (node.parent !== '#') {\r\n list[map[node.parent]].children.push(node);\r\n } else {\r\n roots.push(node);\r\n }\r\n }\r\n return roots;\r\n }\r\n}\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceHierarchyComponent } from './substance-hierarchy.component';\r\nimport {MatTreeModule} from '@angular/material/tree';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceHierarchyComponent),\r\n MatTreeModule,\r\n MatIconModule\r\n ],\r\n declarations: [SubstanceHierarchyComponent]\r\n})\r\nexport class SubstanceHierarchyModule { }\r\n"],"sourceRoot":"webpack:///","file":"8352.78fed0e575b4d025.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/8603.695f3bc2c56c9097.js b/frontend/src/main/resources/static/8603.f912120fe06f7b1b.js similarity index 88% rename from frontend/src/main/resources/static/8603.695f3bc2c56c9097.js rename to frontend/src/main/resources/static/8603.f912120fe06f7b1b.js index d2d11fd..fbdcfb4 100644 --- a/frontend/src/main/resources/static/8603.695f3bc2c56c9097.js +++ b/frontend/src/main/resources/static/8603.f912120fe06f7b1b.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8603],{58603:function(H,m,n){n.r(m),n.d(m,{SubstanceFormChangeReasonModule:function(){return O}});var h=n(48047),l=n(78069),v=n(36362),C=n(24582),g=n(7318),b=n(79223),S=n(33567),a=n(90587),p=n(71989),F=n(98977),s=n(76442),f=n(44770),d=n(43365),R=function(){var t=function(u){(0,C.Z)(r,u);var o=(0,g.Z)(r);function r(i){var e;return(0,l.Z)(this,r),(e=o.call(this)).substanceFormService=i,e.changeReasonControl=new a.NI,e.subscriptions=[],e}return(0,h.Z)(r,[{key:"ngOnInit",value:function(){var e=this;this.menuLabelUpdate.emit("Change Reason"),this.substanceFormService.ready().subscribe(function(){e.setHiddenState()});var M=this.substanceFormService.changeReason.subscribe(function(c){e.changeReasonControl.setValue(c)});this.subscriptions.push(M);var U=this.changeReasonControl.valueChanges.pipe((0,p.b)(1e3),(0,F.x)()).subscribe(function(c){e.substanceFormService.updateChangeReason(c)});this.subscriptions.push(U)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"setHiddenState",value:function(){null==this.substanceFormService.getUuid()&&this.hiddenStateUpdate.emit(!0)}}]),r}(b.o);return t.\u0275fac=function(o){return new(o||t)(s.Y36(S.B))},t.\u0275cmp=s.Xpm({type:t,selectors:[["app-substance-form-change-reason"]],features:[s.qOj],decls:2,vars:1,consts:[["matInput","","placeholder","Change reason","required","",3,"formControl"]],template:function(o,r){1&o&&(s.TgZ(0,"mat-form-field"),s._UZ(1,"input",0),s.qZA()),2&o&&(s.xp6(1),s.Q6J("formControl",r.changeReasonControl))},directives:[f.KE,d.Nt,a.Fj,a.Q7,a.JJ,a.oH],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%}"]}),t}(),y=n(64061),Z=n(7168),O=function(){var t=(0,h.Z)(function u(){(0,l.Z)(this,u)});return t.\u0275fac=function(o){return new(o||t)},t.\u0275mod=s.oAB({type:t}),t.\u0275inj=s.cJS({imports:[[v.ez,y.o.forChild(R),Z.O,f.lN,a.UX,a.u5,d.c]]}),t}()}}]); -//# sourceMappingURL=8603.695f3bc2c56c9097.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8603],{58603:function(H,m,n){n.r(m),n.d(m,{SubstanceFormChangeReasonModule:function(){return O}});var h=n(1884),l=n(39117),v=n(36362),C=n(46751),g=n(56101),b=n(79223),S=n(33567),a=n(90587),p=n(71989),F=n(98977),s=n(86613),f=n(44770),d=n(43365),R=function(){var t=function(u){(0,C.Z)(r,u);var o=(0,g.Z)(r);function r(i){var e;return(0,l.Z)(this,r),(e=o.call(this)).substanceFormService=i,e.changeReasonControl=new a.NI,e.subscriptions=[],e}return(0,h.Z)(r,[{key:"ngOnInit",value:function(){var e=this;this.menuLabelUpdate.emit("Change Reason"),this.substanceFormService.ready().subscribe(function(){e.setHiddenState()});var M=this.substanceFormService.changeReason.subscribe(function(c){e.changeReasonControl.setValue(c)});this.subscriptions.push(M);var U=this.changeReasonControl.valueChanges.pipe((0,p.b)(1e3),(0,F.x)()).subscribe(function(c){e.substanceFormService.updateChangeReason(c)});this.subscriptions.push(U)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(e){e.unsubscribe()})}},{key:"setHiddenState",value:function(){null==this.substanceFormService.getUuid()&&this.hiddenStateUpdate.emit(!0)}}]),r}(b.o);return t.\u0275fac=function(o){return new(o||t)(s.Y36(S.B))},t.\u0275cmp=s.Xpm({type:t,selectors:[["app-substance-form-change-reason"]],features:[s.qOj],decls:2,vars:1,consts:[["matInput","","placeholder","Change reason","required","",3,"formControl"]],template:function(o,r){1&o&&(s.TgZ(0,"mat-form-field"),s._UZ(1,"input",0),s.qZA()),2&o&&(s.xp6(1),s.Q6J("formControl",r.changeReasonControl))},directives:[f.KE,d.Nt,a.Fj,a.Q7,a.JJ,a.oH],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%}"]}),t}(),y=n(64061),Z=n(7168),O=function(){var t=(0,h.Z)(function u(){(0,l.Z)(this,u)});return t.\u0275fac=function(o){return new(o||t)},t.\u0275mod=s.oAB({type:t}),t.\u0275inj=s.cJS({imports:[[v.ez,y.o.forChild(R),Z.O,f.lN,a.UX,a.u5,d.c]]}),t}()}}]); +//# sourceMappingURL=8603.f912120fe06f7b1b.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/8603.695f3bc2c56c9097.js.map b/frontend/src/main/resources/static/8603.f912120fe06f7b1b.js.map similarity index 99% rename from frontend/src/main/resources/static/8603.695f3bc2c56c9097.js.map rename to frontend/src/main/resources/static/8603.f912120fe06f7b1b.js.map index 5630008..94bd82e 100644 --- a/frontend/src/main/resources/static/8603.695f3bc2c56c9097.js.map +++ b/frontend/src/main/resources/static/8603.f912120fe06f7b1b.js.map @@ -1 +1 @@ -{"version":3,"mappings":"wUAaaA,EAAb,eAAaA,EAAb,0CAIE,WACUC,GAA0C,6BAElDC,gBAFQD,uBAJVC,sBAAsB,IAAIC,KAC1BD,gBAAqC,GAGeA,EALtD,uCAUE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,iBAC1BF,KAAKH,qBAAqBM,QAAQC,UAAU,WAC1CN,EAAKO,mBAEP,IAAMC,EAA2BN,KAAKH,qBAAqBU,aAAaH,UAAU,YAChFN,EAAKU,oBAAoBC,SAASF,KAEpCP,KAAKU,cAAcC,KAAKL,GACxB,IAAMM,EAAoBZ,KAAKQ,oBAAoBK,aAAaC,QAC9DC,KAAa,MACbC,UACAZ,UAAU,YACVN,EAAKD,qBAAqBoB,mBAAmBV,KAE/CP,KAAKU,cAAcC,KAAKC,KAzB5B,yBA4BE,WACEZ,KAAKU,cAAcQ,QAAQ,YACzBC,EAAaC,kBA9BnB,4BAkCE,WAGc,MAFCpB,KAAKH,qBAAqBwB,WAGrCrB,KAAKsB,kBAAkBpB,MAAK,OAtClCqB,GAAwDC,kDAA3C5B,GAAkC6B,qCAAlC7B,EAAkC8B,mMCb/CD,0BACIA,mBAEJA,eADIA,6JDWS7B,EAAb,wBEWa+B,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsClC,GACtCmC,IACAC,KACAC,KACAC,KACAC,QAGSR,EAAb","names":["SubstanceFormChangeReasonComponent","substanceFormService","e","FormControl","this","menuLabelUpdate","emit","ready","subscribe","setHiddenState","changeReasonSubscription","changeReason","changeReasonControl","setValue","subscriptions","push","valueSubscription","valueChanges","pipe","debounceTime","distinctUntilChanged","updateChangeReason","forEach","subscription","unsubscribe","getUuid","hiddenStateUpdate","r","SubstanceFormBase","i0","selectors","SubstanceFormChangeReasonModule","h","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatInputModule"],"sources":["./src/app/core/substance-form/substance-form-change-reason/substance-form-change-reason.component.ts","./src/app/core/substance-form/substance-form-change-reason/substance-form-change-reason.component.html","./src/app/core/substance-form/substance-form-change-reason/substance-form-change-reason.module.ts"],"sourcesContent":["import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { FormControl } from '@angular/forms';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-substance-form-change-reason',\n templateUrl: './substance-form-change-reason.component.html',\n styleUrls: ['./substance-form-change-reason.component.scss']\n})\nexport class SubstanceFormChangeReasonComponent extends SubstanceFormBase implements OnInit, OnDestroy {\n changeReasonControl = new FormControl();\n subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService\n ) {\n super();\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Change Reason');\n this.substanceFormService.ready().subscribe(() => {\n this.setHiddenState();\n });\n const changeReasonSubscription = this.substanceFormService.changeReason.subscribe(changeReason => {\n this.changeReasonControl.setValue(changeReason);\n });\n this.subscriptions.push(changeReasonSubscription);\n const valueSubscription = this.changeReasonControl.valueChanges.pipe(\n debounceTime(1000),\n distinctUntilChanged(),\n ).subscribe(changeReason => {\n this.substanceFormService.updateChangeReason(changeReason);\n });\n this.subscriptions.push(valueSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n setHiddenState(): void {\n const uuid = this.substanceFormService.getUuid();\n\n if (uuid == null) {\n this.hiddenStateUpdate.emit(true);\n }\n }\n}\n","\n \n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormChangeReasonComponent } from './substance-form-change-reason.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\n\n\n@NgModule({\n declarations: [\n SubstanceFormChangeReasonComponent\n ],\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormChangeReasonComponent),\n SubstanceFormModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatInputModule\n ]\n})\nexport class SubstanceFormChangeReasonModule { }\n"],"sourceRoot":"webpack:///","file":"8603.695f3bc2c56c9097.js"} \ No newline at end of file +{"version":3,"mappings":"wUAaaA,EAAb,eAAaA,EAAb,0CAIE,WACUC,GAA0C,6BAElDC,gBAFQD,uBAJVC,sBAAsB,IAAIC,KAC1BD,gBAAqC,GAGeA,EALtD,uCAUE,WAAQ,WACNE,KAAKC,gBAAgBC,KAAK,iBAC1BF,KAAKH,qBAAqBM,QAAQC,UAAU,WAC1CN,EAAKO,mBAEP,IAAMC,EAA2BN,KAAKH,qBAAqBU,aAAaH,UAAU,YAChFN,EAAKU,oBAAoBC,SAASF,KAEpCP,KAAKU,cAAcC,KAAKL,GACxB,IAAMM,EAAoBZ,KAAKQ,oBAAoBK,aAAaC,QAC9DC,KAAa,MACbC,UACAZ,UAAU,YACVN,EAAKD,qBAAqBoB,mBAAmBV,KAE/CP,KAAKU,cAAcC,KAAKC,KAzB5B,yBA4BE,WACEZ,KAAKU,cAAcQ,QAAQ,YACzBC,EAAaC,kBA9BnB,4BAkCE,WAGc,MAFCpB,KAAKH,qBAAqBwB,WAGrCrB,KAAKsB,kBAAkBpB,MAAK,OAtClCqB,GAAwDC,kDAA3C5B,GAAkC6B,qCAAlC7B,EAAkC8B,mMCb/CD,0BACIA,mBAEJA,eADIA,6JDWS7B,EAAb,wBEWa+B,EAAb,eAAaA,KAAbC,iFAAaD,4DAVF,CACPE,KACAC,aAAsClC,GACtCmC,IACAC,KACAC,KACAC,KACAC,QAGSR,EAAb","names":["SubstanceFormChangeReasonComponent","substanceFormService","e","FormControl","this","menuLabelUpdate","emit","ready","subscribe","setHiddenState","changeReasonSubscription","changeReason","changeReasonControl","setValue","subscriptions","push","valueSubscription","valueChanges","pipe","debounceTime","distinctUntilChanged","updateChangeReason","forEach","subscription","unsubscribe","getUuid","hiddenStateUpdate","r","SubstanceFormBase","i0","selectors","SubstanceFormChangeReasonModule","h","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatInputModule"],"sources":["./src/app/core/substance-form/substance-form-change-reason/substance-form-change-reason.component.ts","./src/app/core/substance-form/substance-form-change-reason/substance-form-change-reason.component.html","./src/app/core/substance-form/substance-form-change-reason/substance-form-change-reason.module.ts"],"sourcesContent":["import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { SubstanceFormBase } from '../base-classes/substance-form-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { FormControl } from '@angular/forms';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-substance-form-change-reason',\n templateUrl: './substance-form-change-reason.component.html',\n styleUrls: ['./substance-form-change-reason.component.scss']\n})\nexport class SubstanceFormChangeReasonComponent extends SubstanceFormBase implements OnInit, OnDestroy {\n changeReasonControl = new FormControl();\n subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService\n ) {\n super();\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Change Reason');\n this.substanceFormService.ready().subscribe(() => {\n this.setHiddenState();\n });\n const changeReasonSubscription = this.substanceFormService.changeReason.subscribe(changeReason => {\n this.changeReasonControl.setValue(changeReason);\n });\n this.subscriptions.push(changeReasonSubscription);\n const valueSubscription = this.changeReasonControl.valueChanges.pipe(\n debounceTime(1000),\n distinctUntilChanged(),\n ).subscribe(changeReason => {\n this.substanceFormService.updateChangeReason(changeReason);\n });\n this.subscriptions.push(valueSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n setHiddenState(): void {\n const uuid = this.substanceFormService.getUuid();\n\n if (uuid == null) {\n this.hiddenStateUpdate.emit(true);\n }\n }\n}\n","\n \n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormChangeReasonComponent } from './substance-form-change-reason.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\n\n\n@NgModule({\n declarations: [\n SubstanceFormChangeReasonComponent\n ],\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormChangeReasonComponent),\n SubstanceFormModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatInputModule\n ]\n})\nexport class SubstanceFormChangeReasonModule { }\n"],"sourceRoot":"webpack:///","file":"8603.f912120fe06f7b1b.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/8635.0507e8085dda08d5.js b/frontend/src/main/resources/static/8635.0507e8085dda08d5.js deleted file mode 100644 index 2a94a82..0000000 --- a/frontend/src/main/resources/static/8635.0507e8085dda08d5.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8635],{88635:function(Ie,O,s){s.r(O),s.d(O,{SubstanceFormNamesModule:function(){return ke}});var v=s(48047),h=s(78069),u=s(36362),Q=s(24582),P=s(7318),E=s(79550),y=s(33567),z=s(24874),M=s(39756),Y=s(53141),e=s(76442),H=s(78444);function q(t,r){if(1&t&&(e.TgZ(0,"mat-form-field",9),e._UZ(1,"input",10),e.qZA()),2&t){var a=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",a.searchControl)}}function L(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"button",11),e.NdJ("click",function(){return e.CHM(a),e.oxw().collapse()}),e._uU(1),e.qZA()}if(2&t){var n=e.oxw();e.xp6(1),e.hij("",n.expanded?"Collapse":"Expand"," All")}}function B(t,r){1&t&&e._UZ(0,"mat-icon",15)}function $(t,r){1&t&&e._UZ(0,"mat-icon",16)}function j(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"button",12),e.NdJ("click",function(){e.CHM(a);var o=e.oxw();return o.showMore=!o.showMore}),e._uU(1),e.YNc(2,B,1,0,"mat-icon",13),e.YNc(3,$,1,0,"mat-icon",14),e.qZA()}if(2&t){var n=e.oxw();e.xp6(1),e.hij("",n.showMore?"Hide":"More"," "),e.xp6(1),e.Q6J("ngIf",!n.showMore),e.xp6(1),e.Q6J("ngIf",n.showMore)}}function R(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",0),e._UZ(1,"span",2),e.TgZ(2,"mat-checkbox",17),e.NdJ("ngModelChange",function(o){return e.CHM(a),e.oxw().showStd=o}),e._uU(3," Show Standardized Name fields "),e.qZA(),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("ngModel",n.showStd)}}var F=function(){return[5,10,25,100]};function V(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"mat-paginator",18),e.NdJ("page",function(o){e.CHM(a);var m=e.oxw();return m.pageChange(o,m.analyticsEventCategory)}),e.qZA()}if(2&t){var n=e.oxw();e.Q6J("length",n.filtered&&n.filtered.length||0)("pageIndex",n.page)("pageSize",10)("pageSizeOptions",e.DdM(4,F))}}function G(t,r){1&t&&e._UZ(0,"mat-divider",22),2&t&&e.Q6J("inset",!0)}function X(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",19),e.TgZ(1,"app-name-form",20),e.NdJ("priorityUpdate",function(l){return e.CHM(a),e.oxw().priorityUpdated(l)})("nameDeleted",function(l){return e.CHM(a),e.oxw().deleteName(l)}),e.qZA(),e.YNc(2,G,1,1,"mat-divider",21),e.qZA()}if(2&t){var n=r.$implicit,i=r.last,o=r.index,m=e.oxw();e.Q6J("id","substance-name-"+o),e.xp6(1),e.Q6J("name",n)("show",m.expanded)("standardized",m.showStd),e.xp6(1),e.Q6J("ngIf",!i)}}function K(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"mat-paginator",18),e.NdJ("page",function(o){e.CHM(a);var m=e.oxw();return m.pageChange(o,m.analyticsEventCategory)}),e.qZA()}if(2&t){var n=e.oxw();e.Q6J("length",n.filtered&&n.filtered.length||0)("pageIndex",n.page)("pageSize",10)("pageSizeOptions",e.DdM(4,F))}}function W(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",23),e._UZ(1,"span",2),e.TgZ(2,"button",24),e.NdJ("click",function(){return e.CHM(a),e.oxw().addName()}),e._uU(3," Add name "),e._UZ(4,"mat-icon",25),e.qZA(),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("disabled",n.isAlternative)}}var w=function(){var t=function(r){(0,Q.Z)(n,r);var a=(0,P.Z)(n);function n(i,o,m,g,l){var c;return(0,h.Z)(this,n),(c=a.call(this,g)).substanceFormNamesService=i,c.substanceFormService=o,c.scrollToService=m,c.gaService=g,c.configService=l,c.subscriptions=[],c.pageSize=10,c.expanded=!0,c.showStd=!0,c.showMore=!1,c.standardizeButton=!1,c.analyticsEventCategory="substance form names",c}return(0,v.Z)(n,[{key:"ngOnInit",value:function(){var o=this;this.menuLabelUpdate.emit("Names"),this.appId=this.configService.environment.appId,this.standardizeButton=this.configService.configData.showNameStandardizeButton||!1;var m=this.substanceFormService.definition.subscribe(function(l){l.definitionType&&"ALTERNATIVE"===l.definitionType?o.hiddenStateUpdate.emit(!0):(o.canAddItemUpdate.emit(!0),o.hiddenStateUpdate.emit(!1))});this.subscriptions.push(m);var g=this.substanceFormNamesService.substanceNames.subscribe(function(l){o.names=l,o.filtered=l;var c=o.searchControl.valueChanges.subscribe(function(Z){o.filterList(Z,o.names,o.analyticsEventCategory)},function(Z){console.log(Z)});o.subscriptions.push(c),o.page=0,o.pageChange()});this.subscriptions.push(g)}},{key:"ngAfterViewInit",value:function(){}},{key:"collapse",value:function(){this.expanded=!this.expanded}},{key:"standardize",value:function(){}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(o){o.unsubscribe()})}},{key:"addItem",value:function(){this.addName()}},{key:"addName",value:function(){var o=this;this.substanceFormNamesService.addSubstanceName(),setTimeout(function(){o.scrollToService.scrollToElement("substance-name-0","center")})}},{key:"priorityUpdated",value:function(o){this.names.forEach(function(m){m!==o&&(m.displayName=!1)})}},{key:"deleteName",value:function(o){this.substanceFormNamesService.deleteSubstanceName(o)}}]),n}(E.u);return t.\u0275fac=function(a){return new(a||t)(e.Y36(M.w),e.Y36(y.B),e.Y36(H.i),e.Y36(z.$),e.Y36(Y.E))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-substance-form-names-card"]],features:[e.qOj],decls:10,vars:8,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["class","standardize","matTooltip","show / hide additional rows","mat-button","",3,"click",4,"ngIf"],["class","standardize","mat-button","",3,"click",4,"ngIf"],["class","flex-row",4,"ngIf"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","name","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["matTooltip","show / hide additional rows","mat-button","",1,"standardize",3,"click"],["mat-button","",1,"standardize",3,"click"],["class","chevron","svgIcon","chevron_down",4,"ngIf"],["class","chevron","svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",1,"chevron"],["svgIcon","chevron_up",1,"chevron"],["matTooltip","The standardized name value is generated upon submission",1,"checkbox",3,"ngModel","ngModelChange"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"name",3,"id"],[3,"name","show","standardized","priorityUpdate","nameDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"disabled","click"],["svgIcon","add_circle_outline"]],template:function(a,n){1&a&&(e.TgZ(0,"div",0),e.YNc(1,q,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.YNc(3,L,2,1,"button",3),e.YNc(4,j,4,3,"button",4),e.qZA(),e.YNc(5,R,4,1,"div",5),e.YNc(6,V,1,5,"mat-paginator",6),e.YNc(7,X,3,5,"div",7),e.YNc(8,K,1,5,"mat-paginator",6),e.YNc(9,W,5,1,"div",8)),2&a&&(e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>n.pageSize),e.xp6(2),e.Q6J("ngIf",n.names&&n.names.length>0),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>0),e.xp6(1),e.Q6J("ngIf",n.showMore),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>5),e.xp6(1),e.Q6J("ngForOf",n.paged),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>5),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>0))},styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.checkbox[_ngcontent-%COMP%]{line-height:34px}.name[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.name[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.name[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.name[_ngcontent-%COMP%] .mat-expansion-panel, .name[_ngcontent-%COMP%] .mat-table, .name[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),t}(),ee=s(64061),ne=s(7168),S=s(19975),_=s(65590),C=s(87317),te=s(94673),N=s(44770),d=s(90587),A=s(26439),T=s(43365),J=s(42827),ae=s(52149),oe=s(99146),ie=s(95758),re=s(66088);function se(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",21),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",22),e.NdJ("click",function(){return e.CHM(a),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",23),e.qZA(),e.qZA()}}function me(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"a",24),e.NdJ("click",function(){return e.CHM(a),e.oxw().resolve()}),e._uU(1,"resolve"),e.qZA()}}function ce(t,r){1&t&&e._UZ(0,"mat-icon",25)}function le(t,r){1&t&&e._UZ(0,"mat-icon",26)}function de(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",2),e.TgZ(1,"mat-form-field",10),e.TgZ(2,"textarea",27),e.NdJ("ngModelChange",function(o){return e.CHM(a),e.oxw().name.stdName=o})("keypress",function(o){return e.CHM(a),e.oxw().preventNewLine(o)}),e.qZA(),e.qZA(),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("ngModel",n.name.stdName)}}function pe(t,r){if(1&t&&(e.TgZ(0,"div",2),e.TgZ(1,"div",35),e._UZ(2,"app-name-orgs",36,37),e.qZA(),e.qZA()),2&t){var a=e.oxw(2);e.xp6(2),e.Q6J("nameOrgs",a.getNameOrgs(a.name))}}function ge(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",2),e.TgZ(2,"app-tag-selector",28),e.NdJ("tagsUpdate",function(o){return e.CHM(a),e.oxw().updateLanguages(o)}),e.qZA(),e.TgZ(3,"app-tag-selector",29),e.NdJ("tagsUpdate",function(o){return e.CHM(a),e.oxw().updateDomains(o)}),e.qZA(),e.TgZ(4,"app-tag-selector",30),e.NdJ("tagsUpdate",function(o){return e.CHM(a),e.oxw().updateJurisdiction(o)}),e.qZA(),e.qZA(),e.TgZ(5,"div",2),e.TgZ(6,"div",31),e._UZ(7,"app-domain-references",32,33),e.qZA(),e.qZA(),e.YNc(9,pe,4,1,"div",19),e._UZ(10,"app-audit-info",34),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("tags",n.name.languages),e.xp6(1),e.Q6J("tags",n.name.domains),e.xp6(1),e.Q6J("tags",n.name.nameJurisdiction),e.xp6(3),e.Q6J("referencesUuids",n.name.references),e.xp6(2),e.Q6J("ngIf","of"==n.name.type),e.xp6(1),e.Q6J("source",n.name)}}var k=function(){var t=function(){function r(a,n,i,o,m,g){(0,h.Z)(this,r),this.cvService=a,this.utilsService=n,this.dialog=i,this.substanceFormService=o,this.overlayContainerService=m,this.nameFormService=g,this.priorityUpdate=new e.vpe,this.nameDeleted=new e.vpe,this.nameControl=new d.NI(""),this.nameTypeControl=new d.NI(""),this.subscriptions=[],this.substanceType="",this.viewFull=!0,this.showStd=!1}return(0,v.Z)(r,[{key:"ngOnInit",value:function(){var n=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),this.substanceFormService.definition.subscribe(function(o){n.substanceType=o.substanceClass}).unsubscribe()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"show",get:function(){return this.viewFull||null},set:function(n){null!=n&&(this.viewFull=n)}},{key:"standardized",get:function(){return this.showStd},set:function(n){null!=n&&(this.showStd=n)}},{key:"name",get:function(){return this.privateName||{}},set:function(n){null!=n&&(this.privateName=n,(!this.privateName.languages||0===this.privateName.languages.length)&&(this.privateName.languages=["en"]),this.privateName.type||(this.privateName.type="cn"))}},{key:"priorityUpdated",value:function(n){this.privateName.displayName="true"===n.value,this.priorityUpdate.emit(this.privateName)}},{key:"updateAccess",value:function(n){this.privateName.access=n}},{key:"updateLanguages",value:function(n){this.privateName.languages=n}},{key:"updateDomains",value:function(n){this.privateName.domains=n}},{key:"updateJurisdiction",value:function(n){this.privateName.nameJurisdiction=n}},{key:"deleteName",value:function(){var n=this;this.privateName.$$deletedCode=this.utilsService.newUUID(),!this.privateName.name&&!this.privateName.type&&(this.deleteTimer=setTimeout(function(){n.nameDeleted.emit(n.privateName)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateName.$$deletedCode}},{key:"resolve",value:function(){var n=this,i=this.dialog.open(oe.a,{height:"auto",width:"800px",data:{name:this.privateName.name}});this.overlayContainer.style.zIndex="1002",i.afterClosed().subscribe(function(o){n.overlayContainer.style.zIndex=null,null!=o&&""!==o&&n.substanceFormService.resolvedName(o)},function(){})}},{key:"getNameOrgs",value:function(n){return n.nameOrgs||(n.nameOrgs=[]),n.nameOrgs}},{key:"preventNewLine",value:function(n){"Enter"===n.key&&n.preventDefault()}}]),r}();return t.\u0275fac=function(a){return new(a||t)(e.Y36(J.I),e.Y36(ae.F),e.Y36(ie.uw),e.Y36(y.B),e.Y36(re.Xj),e.Y36(M.w))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-name-form"]],inputs:{show:"show",standardized:"standardized",name:"name"},outputs:{priorityUpdate:"priorityUpdate",nameDeleted:"nameDeleted"},decls:24,vars:12,consts:[[1,"name-form-container",3,"ngClass"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete name",3,"click"],["svgIcon","delete_forever"],[1,"radio-container","column-radio"],["name","priorityName","value","true","matTooltip","Display Name",3,"checked","change"],[1,"checkbox-container","column-checkbox"],["matTooltip","Additional Listing Name",3,"ngModel","ngModelChange"],[1,"name"],["matInput","","placeholder","Name","required","","name","name",3,"ngModel","ngModelChange","keypress"],["class","resolve",3,"click",4,"ngIf"],["required","true","key","Name Type Code","title","Type",1,"name-type",3,"model","valueChange"],[3,"access","accessOut"],[1,"chevron"],["mat-icon-button","","matTooltip","Expand / collapse rows",1,"chevron-button",3,"click"],["svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],["class","form-row",4,"ngIf"],[4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"resolve",3,"click"],["svgIcon","chevron_up"],["svgIcon","chevron_down"],["matInput","","placeholder","Standardized Name","matTooltip"," standardized names will be generated upon submission if blank","name","standardizedname",3,"ngModel","ngModelChange","keypress"],["cvDomain","LANGUAGE","placeholder","Languages",1,"tags",3,"tags","tagsUpdate"],["cvDomain","NAME_DOMAIN","placeholder","Domains",1,"domains",3,"tags","tagsUpdate"],["cvDomain","JURISDICTION","placeholder","Jurisdiction",1,"jurisdiction",3,"tags","tagsUpdate"],[1,"references-container"],[3,"referencesUuids"],["references",""],[3,"source"],[1,"nameorgs-container"],[3,"nameOrgs"],["nameOrgs",""]],template:function(a,n){1&a&&(e.TgZ(0,"div",0),e.YNc(1,se,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return n.deleteName()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"mat-radio-button",7),e.NdJ("change",function(o){return n.priorityUpdated(o)}),e._uU(8," DN "),e.qZA(),e.qZA(),e.TgZ(9,"div",8),e.TgZ(10,"mat-checkbox",9),e.NdJ("ngModelChange",function(o){return n.name.preferred=o}),e._uU(11," AL "),e.qZA(),e.qZA(),e.TgZ(12,"mat-form-field",10),e.TgZ(13,"textarea",11),e.NdJ("ngModelChange",function(o){return n.name.name=o})("keypress",function(o){return n.preventNewLine(o)}),e.qZA(),e.qZA(),e.YNc(14,me,2,0,"a",12),e.TgZ(15,"app-cv-input",13),e.NdJ("valueChange",function(o){return n.name.type=o}),e.qZA(),e.TgZ(16,"div"),e.TgZ(17,"app-access-manager",14),e.NdJ("accessOut",function(o){return n.updateAccess(o)}),e.qZA(),e.qZA(),e.TgZ(18,"div",15),e.TgZ(19,"button",16),e.NdJ("click",function(){return n.viewFull=!n.viewFull}),e.YNc(20,ce,1,0,"mat-icon",17),e.YNc(21,le,1,0,"mat-icon",18),e.qZA(),e.qZA(),e.qZA(),e.YNc(22,de,3,1,"div",19),e.YNc(23,ge,11,6,"div",20),e.qZA()),2&a&&(e.Q6J("ngClass",n.viewFull?"name-form-container":"collapse"),e.xp6(1),e.Q6J("ngIf",n.name.$$deletedCode),e.xp6(6),e.Q6J("checked",n.name.displayName),e.xp6(3),e.Q6J("ngModel",n.name.preferred),e.xp6(3),e.Q6J("ngModel",n.name.name),e.xp6(1),e.Q6J("ngIf",n.name.name&&n.name.name.length>0&&"structure"===n.substanceType),e.xp6(1),e.Q6J("model",n.name.type),e.xp6(2),e.Q6J("access",n.name.access),e.xp6(3),e.Q6J("ngIf",n.viewFull),e.xp6(1),e.Q6J("ngIf",!n.viewFull),e.xp6(1),e.Q6J("ngIf",n.showStd&&n.viewFull),e.xp6(1),e.Q6J("ngIf",!n.name.$$deletedCode&&n.viewFull))},styles:[".name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.collapse[_ngcontent-%COMP%]{padding:20px 10px 12px;position:relative}.resolve[_ngcontent-%COMP%]{padding:0 20px 20px 0;color:#4793d1}.chevron[_ngcontent-%COMP%]{width:20px;line-height:67px;color:#0009}.chevron-button[_ngcontent-%COMP%]{width:20px}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-right:15px}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .domains[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .jurisdiction[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.references-container[_ngcontent-%COMP%], .nameorgs-container[_ngcontent-%COMP%]{width:100%}.column-radio[_ngcontent-%COMP%] .mat-radio-label{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.column-radio[_ngcontent-%COMP%] .mat-radio-label-content{padding-left:0;font-size:11px;padding-bottom:4px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:2px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}"]}),t}(),p=s(97217),f=s(16531),x=s(40089),I=s(70178),U=s(91434),ue=s(1130),b=s(61534);function fe(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"button",15),e.NdJ("click",function(i){return e.CHM(a),e.oxw().addNewNameOrg(i)}),e._UZ(1,"mat-icon",16),e.qZA()}}function ve(t,r){1&t&&(e.TgZ(0,"th",17),e._uU(1," Delete "),e.qZA())}function he(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"button",19),e.NdJ("click",function(){var o=e.CHM(a).$implicit;return e.oxw().deleteNameOrg(o)}),e._UZ(2,"mat-icon",20),e.qZA(),e.qZA()}}function _e(t,r){1&t&&(e.TgZ(0,"th",17),e._uU(1," Naming Organization "),e.qZA())}function Ce(t,r){if(1&t&&(e.TgZ(0,"mat-option",24),e._uU(1),e.qZA()),2&t){var a=r.$implicit;e.Q6J("value",a.value),e.xp6(1),e.hij(" ",a.display," ")}}function Ne(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"mat-form-field",21),e.TgZ(2,"mat-select",22),e.NdJ("selectionChange",function(m){var l=e.CHM(a).$implicit;return e.oxw().updateNameOrg(m,l)}),e.YNc(3,Ce,2,2,"mat-option",23),e.qZA(),e.qZA(),e.qZA()}if(2&t){var n=r.$implicit,i=e.oxw();e.xp6(2),e.Q6J("value",n.nameOrg)("placeholder",n.nameOrg?"":"Naming Organization *"),e.xp6(1),e.Q6J("ngForOf",i.nameOrgOptions)}}function xe(t,r){1&t&&(e.TgZ(0,"th",17),e._uU(1," Deprecated "),e.qZA())}function be(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"div",25),e.TgZ(2,"mat-checkbox",26),e.NdJ("change",function(o){var g=e.CHM(a).$implicit;return e.oxw().updateDeprecated(o,g)}),e._uU(3,"Deprecated "),e.qZA(),e.qZA(),e.qZA()}if(2&t){var n=r.$implicit;e.xp6(2),e.Q6J("checked",n.deprecated)}}function Te(t,r){1&t&&e._UZ(0,"tr",27)}function Ze(t,r){1&t&&e._UZ(0,"tr",28)}var Oe=function(r){return{"block-display":r}},ye=function(){var t=function(){function r(a,n){(0,h.Z)(this,r),this.cvService=a,this.element=n,this.nameOrgOptions=[],this.displayedColumns=["delete","nameOrg","deprecated"],this.isExpanded=!1}return(0,v.Z)(r,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"getVocabularies",value:function(){var n=this;this.cvService.getDomainVocabulary("NAME_ORG").subscribe(function(i){n.nameOrgOptions=i.NAME_ORG.list})}},{key:"nameOrgs",get:function(){return this.privateNameOrgs||[]},set:function(n){this.privateNameOrgs=n,this.tableData=new p.by(this.privateNameOrgs)}},{key:"panelOpened",value:function(){this.isExpanded=!0;var n=new Event("focusin",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(n)}},{key:"panelClosed",value:function(){this.isExpanded=!1;var n=new Event("focusout",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(n)}},{key:"updateNameOrg",value:function(n,i){i.nameOrg=n.value}},{key:"updateDeprecated",value:function(n,i){i.deprecated=n.checked}},{key:"addNewNameOrg",value:function(n){n.stopPropagation(),this.privateNameOrgs.unshift({nameOrg:this.nameOrgOptions[0].value}),this.tableData.data=this.privateNameOrgs}},{key:"deleteNameOrg",value:function(n){var i=this.privateNameOrgs.findIndex(function(o){return o===n});i>-1&&(this.privateNameOrgs.splice(i,1),this.tableData.data=this.privateNameOrgs)}}]),r}();return t.\u0275fac=function(a){return new(a||t)(e.Y36(J.I),e.Y36(e.SBq))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-name-orgs"]],inputs:{nameOrgs:"nameOrgs"},decls:22,vars:9,consts:[[1,"name-orgs-content"],[3,"closed","opened"],[1,"name-orgs-header"],[3,"ngClass"],["matTooltip","Expand name orgs",1,"title"],["matBadgeOverlap","false",3,"matBadge","hidden"],["mat-icon-button","","matTooltip","Add name org",3,"click",4,"ngIf"],["mat-table","",3,"dataSource"],["matColumnDef","delete"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","nameOrg"],["matColumnDef","deprecated"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-icon-button","","matTooltip","Add name org",3,"click"],["svgIcon","add_circle_outline"],["mat-header-cell",""],["mat-cell",""],["mat-icon-button","","matTooltip","Delete name org",3,"click"],["svgIcon","delete_forever"],[1,"name-org"],[3,"value","placeholder","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"checkbox-container"],[3,"checked","change"],["mat-header-row",""],["mat-row",""]],template:function(a,n){1&a&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-accordion"),e.TgZ(2,"mat-expansion-panel",1),e.NdJ("closed",function(){return n.panelClosed()})("opened",function(){return n.panelOpened()}),e.TgZ(3,"mat-expansion-panel-header",2),e.TgZ(4,"mat-panel-title",3),e.TgZ(5,"h4",4),e._uU(6," Naming Organizations "),e._UZ(7,"span",5),e.qZA(),e.YNc(8,fe,2,0,"button",6),e.qZA(),e.qZA(),e.TgZ(9,"div"),e.TgZ(10,"table",7),e.ynx(11,8),e.YNc(12,ve,2,0,"th",9),e.YNc(13,he,3,0,"td",10),e.BQk(),e.ynx(14,11),e.YNc(15,_e,2,0,"th",9),e.YNc(16,Ne,4,3,"td",10),e.BQk(),e.ynx(17,12),e.YNc(18,xe,2,0,"th",9),e.YNc(19,be,4,1,"td",10),e.BQk(),e.YNc(20,Te,1,0,"tr",13),e.YNc(21,Ze,1,0,"tr",14),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&a&&(e.xp6(4),e.Q6J("ngClass",e.VKq(7,Oe,!n.isExpanded)),e.xp6(3),e.Q6J("matBadge",n.nameOrgs.length||0)("hidden",n.isExpanded),e.xp6(1),e.Q6J("ngIf",n.isExpanded),e.xp6(2),e.Q6J("dataSource",n.tableData),e.xp6(10),e.Q6J("matHeaderRowDef",n.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",n.displayedColumns))},directives:[f.pp,f.ib,f.yz,f.yK,u.mk,x.gM,I.k,u.O5,C.lW,_.Hw,p.BZ,p.w1,p.fO,p.ge,p.Dz,p.ev,N.KE,U.gD,u.sg,ue.ey,b.oG,p.as,p.XQ,p.nj,p.Gk],styles:[".mat-expansion-panel[_ngcontent-%COMP%]:not([class*=mat-elevation-z]), .mat-expansion-panel[_ngcontent-%COMP%]{box-shadow:none}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0}.name-orgs-header[_ngcontent-%COMP%] .mat-expansion-indicator:after{margin-right:7px}.name-orgs-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:5px;padding:0 7px}.name-orgs-content[_ngcontent-%COMP%] .mat-expansion-panel-body{padding:0}.mat-expansion-panel-header-title.block-display[_ngcontent-%COMP%]{display:block}"]}),t}(),D=s(68390),Me=s(51279),Fe=s(16667),we=s(84577),Se=s(15992),Ae=s(48302),Je=s(14900),ke=function(){var t=(0,v.Z)(function r(){(0,h.Z)(this,r)});return t.\u0275fac=function(a){return new(a||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[u.ez,ee.o.forChild(w),ne.O,S.t,_.Ps,C.ot,te.w,N.lN,d.UX,d.u5,A.TU,T.c,D.Fk,b.p9,f.To,p.p0,I.g,U.LD,x.AV]]}),t}();e.B6R(w,[u.O5,N.KE,T.Nt,d.Fj,d.JJ,d.oH,C.lW,x.gM,_.Hw,b.oG,d.On,A.NW,u.sg,Me.P,k,S.d],[]),e.B6R(k,[u.mk,u.O5,C.lW,x.gM,_.Hw,D.U0,b.oG,d.JJ,d.On,N.KE,T.Nt,d.Fj,d.Q7,Fe.S,we.h,Se.C,Ae.V,ye,Je.n],[])}}]); -//# sourceMappingURL=8635.0507e8085dda08d5.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/8635.0507e8085dda08d5.js.map b/frontend/src/main/resources/static/8635.0507e8085dda08d5.js.map deleted file mode 100644 index e73ae1a..0000000 --- a/frontend/src/main/resources/static/8635.0507e8085dda08d5.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"mappings":"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","names":["i0","ctx_r8","ctx_r16","ctx_r22","ctx_r24","ctx_r25","ctx_r27","SubstanceFormNamesCardComponent","substanceFormNamesService","substanceFormService","scrollToService","gaService","configService","c","analyticsEventCategory","this","menuLabelUpdate","emit","appId","environment","standardizeButton","configData","showNameStandardizeButton","definitionSubscription","definition","subscribe","level","definitionType","o","hiddenStateUpdate","canAddItemUpdate","subscriptions","push","namesSubscription","substanceNames","names","filtered","searchSubscription","searchControl","valueChanges","filterList","value","console","log","error","page","pageChange","expanded","componentDestroyed","forEach","subscription","unsubscribe","addName","addSubstanceName","setTimeout","scrollToElement","updatedName","name","displayName","deleteSubstanceName","n","SubstanceCardBaseFilteredList","selectors","ctx_r6","ctx_r12","ctx_r18","ctx_r19","NameFormComponent","cvService","utilsService","dialog","overlayContainerService","nameFormService","h","EventEmitter","FormControl","overlayContainer","getContainerElement","substanceType","def","substanceClass","viewFull","set","val","showStd","privateName","languages","length","type","event","priorityUpdate","access","domains","jurisdiction","nameJurisdiction","$$deletedCode","newUUID","deleteTimer","nameDeleted","clearTimeout","dialogRef","open","NameResolverDialogComponent","height","width","data","style","zIndex","afterClosed","molfile","resolvedName","nameOrgs","key","preventDefault","r","ctx","ctx_r9","ctx_r17","ctx_r20","NameOrgsComponent","element","getVocabularies","getDomainVocabulary","nameOrgOptions","response","NAME_ORG","list","privateNameOrgs","tableData","MatTableDataSource","isExpanded","Event","bubbles","cancelable","nativeElement","dispatchEvent","nameOrg","deprecated","checked","stopPropagation","unshift","nameOrgIndex","findIndex","privateNameOrg","splice","SubstanceFormNamesModule","v","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","MatRadioModule","MatCheckboxModule","MatExpansionModule","MatTableModule","MatBadgeModule","MatSelectModule","MatTooltipModule","i12","i18"],"sources":["./src/app/core/substance-form/names/substance-form-names-card.component.html","./src/app/core/substance-form/names/substance-form-names-card.component.ts","./src/app/core/substance-form/names/name-form.component.html","./src/app/core/substance-form/names/name-form.component.ts","./src/app/core/substance-form/names/name-orgs.component.html","./src/app/core/substance-form/names/name-orgs.component.ts","./src/app/core/substance-form/names/substance-form-names.module.ts"],"sourcesContent":["
    \n pageSize\">\n \n \n \n\n \n \n\n\n\n\n
    \n
    \n \n \n Show Standardized Name fields\n \n
    \n\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
    \n \n \n
    \n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n
    0\" style = \"display: flex;\">\n \n \n
    \n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceName } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormNamesService } from './substance-form-names.service';\nimport { ConfigService } from '@gsrs-core/config';\n\n@Component({\n selector: 'app-substance-form-names-card',\n templateUrl: './substance-form-names-card.component.html',\n styleUrls: ['./substance-form-names-card.component.scss']\n})\nexport class SubstanceFormNamesCardComponent\n extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n names: Array;\n private subscriptions: Array = [];\n pageSize = 10;\n expanded = true;\n showStd = true;\n showMore = false;\n appId: string;\n standardizeButton = false;\n\n constructor(\n private substanceFormNamesService: SubstanceFormNamesService,\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private configService: ConfigService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form names';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Names');\n this.appId = this.configService.environment.appId;\n this.standardizeButton = this.configService.configData.showNameStandardizeButton || false;\n const definitionSubscription = this.substanceFormService.definition.subscribe( level => {\n if (level.definitionType && level.definitionType === 'ALTERNATIVE') {\n // this.canAddItemUpdate.emit(false);\n this.hiddenStateUpdate.emit(true);\n } else {\n this.canAddItemUpdate.emit(true);\n this.hiddenStateUpdate.emit(false);\n }\n });\n this.subscriptions.push(definitionSubscription);\n const namesSubscription = this.substanceFormNamesService.substanceNames.subscribe(names => {\n\n this.names = names;\n this.filtered = names;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.names, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(namesSubscription);\n }\n\n ngAfterViewInit() {\n\n }\n\n\n collapse() {\n this.expanded = !this.expanded;\n }\n\n standardize(): void {\n // We currently only want the back-end to standardize names\n // this.substanceFormNamesService.standardizeNames();\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addName();\n }\n\n addName(): void {\n this.substanceFormNamesService.addSubstanceName();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-name-0`, 'center');\n });\n }\n\n priorityUpdated(updatedName: SubstanceName): void {\n this.names.forEach(name => {\n if (name !== updatedName) {\n name.displayName = false;\n }\n });\n }\n\n deleteName(name: SubstanceName): void {\n this.substanceFormNamesService.deleteSubstanceName(name);\n }\n\n}\n","
    \n
    \n Deleted \n \n
    \n \n
    \n
    \n \n
    \n
    \n \n DN\n \n
    \n
    \n \n AL\n \n
    \n\n \n \n \n \n 0 && substanceType === 'structure'\"\n (click)=\"resolve()\">resolve\n\n \n \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n \n \n \n \n \n \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    ","import { Component, OnInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { SubstanceName, SubstanceNameOrg } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { MatRadioChange } from '@angular/material/radio';\nimport { UtilsService } from '../../utils/utils.service';\nimport { Subscription } from 'rxjs';\nimport {NameResolverDialogComponent} from '@gsrs-core/name-resolver/name-resolver-dialog.component';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {MatDialog} from '@angular/material/dialog';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport { SubstanceFormNamesService } from '@gsrs-core/substance-form/names/substance-form-names.service';\n\n@Component({\n selector: 'app-name-form',\n templateUrl: './name-form.component.html',\n styleUrls: ['./name-form.component.scss']\n})\nexport class NameFormComponent implements OnInit, OnDestroy {\n private privateName: SubstanceName;\n @Output() priorityUpdate = new EventEmitter();\n @Output() nameDeleted = new EventEmitter();\n nameControl = new FormControl('');\n nameTypeControl = new FormControl('');\n deleteTimer: any;\n private subscriptions: Array = [];\n overlayContainer: HTMLElement;\n substanceType = '';\n viewFull = true;\n showStd = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private utilsService: UtilsService,\n private dialog: MatDialog,\n private substanceFormService: SubstanceFormService,\n private overlayContainerService: OverlayContainer,\n private nameFormService: SubstanceFormNamesService\n ) { }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const definition = this.substanceFormService.definition.subscribe(def => {\n this.substanceType = def.substanceClass;\n });\n definition.unsubscribe();\n\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set show(val: boolean) {\n if (val != null) {\n this.viewFull = val;\n }\n }\n\n get show(): boolean {\n return this.viewFull || null;\n }\n\n @Input()\n set standardized(val: boolean) {\n if (val != null) {\n this.showStd = val;\n }\n }\n\n get standardized(): boolean {\n return this.showStd;\n }\n\n @Input()\n set name(name: SubstanceName) {\n if (name != null) {\n this.privateName = name;\n if (!this.privateName.languages || this.privateName.languages.length === 0) {\n this.privateName.languages = ['en'];\n }\n if (!this.privateName.type) {\n this.privateName.type = 'cn';\n }\n }\n }\n\n get name(): SubstanceName {\n return this.privateName || {};\n }\n\n priorityUpdated(event: MatRadioChange) {\n this.privateName.displayName = (event.value === 'true');\n this.priorityUpdate.emit(this.privateName);\n }\n\n updateAccess(access: Array): void {\n this.privateName.access = access;\n }\n\n updateLanguages(languages: Array): void {\n this.privateName.languages = languages;\n }\n\n updateDomains(domains: Array): void {\n this.privateName.domains = domains;\n }\n\n updateJurisdiction(jurisdiction: Array): void {\n this.privateName.nameJurisdiction = jurisdiction;\n }\n\n deleteName(): void {\n this.privateName.$$deletedCode = this.utilsService.newUUID();\n\n if (!this.privateName.name\n && !this.privateName.type\n ) {\n this.deleteTimer = setTimeout(() => {\n this.nameDeleted.emit(this.privateName);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateName.$$deletedCode;\n }\n\n resolve(): void {\n const dialogRef = this.dialog.open(NameResolverDialogComponent, {\n height: 'auto',\n width: '800px',\n data: {'name': this.privateName.name}\n });\n this.overlayContainer.style.zIndex = '1002';\n dialogRef.afterClosed().subscribe((molfile?: string) => {\n this.overlayContainer.style.zIndex = null;\n if (molfile != null && molfile !== '') {\n this.substanceFormService.resolvedName(molfile);\n }\n }, () => {});\n }\n\n getNameOrgs(name: SubstanceName): Array {\n if (!name.nameOrgs) {\n name.nameOrgs = [];\n }\n return name.nameOrgs as Array;\n }\n\n preventNewLine(event: KeyboardEvent): void {\n if (event.key === 'Enter') {\n event.preventDefault();\n }\n }\n}\n","
    \n \n \n \n \n

    \n Naming Organizations\n \n

    \n \n
    \n
    \n
    \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
    Delete \n \n Naming Organization \n \n \n \n {{nameOrgOption.display}}\n \n \n \n Deprecated \n
    \n Deprecated\n \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, OnInit, Input, ElementRef } from '@angular/core';\nimport { SubstanceNameOrg } from '../../substance/substance.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { MatSelectChange } from '@angular/material/select';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'app-name-orgs',\n templateUrl: './name-orgs.component.html',\n styleUrls: ['./name-orgs.component.scss']\n})\nexport class NameOrgsComponent implements OnInit {\n private privateNameOrgs: Array;\n nameOrgOptions: Array = [];\n displayedColumns: string[] = ['delete', 'nameOrg', 'deprecated'];\n tableData: MatTableDataSource;\n isExpanded = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private element: ElementRef\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('NAME_ORG').subscribe(response => {\n this.nameOrgOptions = response['NAME_ORG'].list;\n });\n }\n\n @Input()\n set nameOrgs(nameOrgs: Array) {\n this.privateNameOrgs = nameOrgs;\n this.tableData = new MatTableDataSource(this.privateNameOrgs);\n }\n\n get nameOrgs(): Array {\n return this.privateNameOrgs || [];\n }\n\n panelOpened(): void {\n this.isExpanded = true;\n const event: Event = new Event('focusin', { bubbles: true, cancelable: true} );\n this.element.nativeElement.dispatchEvent(event);\n }\n\n panelClosed(): void {\n this.isExpanded = false;\n const event: Event = new Event('focusout', { bubbles: true, cancelable: true} );\n this.element.nativeElement.dispatchEvent(event);\n }\n\n updateNameOrg(event: MatSelectChange, nameOrg: SubstanceNameOrg): void {\n nameOrg.nameOrg = event.value;\n }\n\n updateDeprecated(event: MatCheckboxChange, nameOrg: SubstanceNameOrg): void {\n nameOrg.deprecated = event.checked;\n }\n\n addNewNameOrg(event: Event): void {\n event.stopPropagation();\n this.privateNameOrgs.unshift({\n nameOrg: this.nameOrgOptions[0].value\n });\n this.tableData.data = this.privateNameOrgs;\n }\n\n deleteNameOrg(nameOrg: SubstanceNameOrg): void {\n const nameOrgIndex = this.privateNameOrgs.findIndex(privateNameOrg => privateNameOrg === nameOrg);\n if (nameOrgIndex > -1) {\n this.privateNameOrgs.splice(nameOrgIndex, 1);\n this.tableData.data = this.privateNameOrgs;\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormNamesCardComponent } from './substance-form-names-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { NameFormComponent } from './name-form.component';\nimport { NameOrgsComponent } from './name-orgs.component';\nimport {MatRadioModule} from '@angular/material/radio';\nimport {MatCheckboxModule} from '@angular/material/checkbox';\nimport {MatBadgeModule} from '@angular/material/badge';\nimport {MatExpansionModule} from '@angular/material/expansion';\nimport {MatTableModule} from '@angular/material/table';\nimport {MatSelectModule} from '@angular/material/select';\nimport {MatTooltipModule} from '@angular/material/tooltip';\n\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormNamesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n MatRadioModule,\n MatCheckboxModule,\n MatExpansionModule,\n MatTableModule,\n MatBadgeModule,\n MatSelectModule,\n MatTooltipModule\n ],\n declarations: [\n SubstanceFormNamesCardComponent,\n NameFormComponent,\n NameOrgsComponent\n ]\n})\nexport class SubstanceFormNamesModule { }\n"],"sourceRoot":"webpack:///","file":"8635.0507e8085dda08d5.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/8635.d68f18eb6c50f503.js b/frontend/src/main/resources/static/8635.d68f18eb6c50f503.js new file mode 100644 index 0000000..1ed5ef7 --- /dev/null +++ b/frontend/src/main/resources/static/8635.d68f18eb6c50f503.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8635],{88635:function(De,O,s){s.r(O),s.d(O,{SubstanceFormNamesModule:function(){return Ue}});var f=s(1884),h=s(39117),g=s(36362),Q=s(46751),P=s(56101),E=s(79550),y=s(33567),z=s(24874),M=s(39756),Y=s(53141),e=s(86613),H=s(78444);function L(t,r){if(1&t&&(e.TgZ(0,"mat-form-field",9),e._UZ(1,"input",10),e.qZA()),2&t){var a=e.oxw();e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",a.searchControl)}}function q(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"button",11),e.NdJ("click",function(){return e.CHM(a),e.oxw().collapse()}),e._uU(1),e.qZA()}if(2&t){var n=e.oxw();e.xp6(1),e.hij("",n.expanded?"Collapse":"Expand"," All")}}function B(t,r){1&t&&e._UZ(0,"mat-icon",15)}function j(t,r){1&t&&e._UZ(0,"mat-icon",16)}function $(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"button",12),e.NdJ("click",function(){e.CHM(a);var o=e.oxw();return o.showMore=!o.showMore}),e._uU(1),e.YNc(2,B,1,0,"mat-icon",13),e.YNc(3,j,1,0,"mat-icon",14),e.qZA()}if(2&t){var n=e.oxw();e.xp6(1),e.hij("",n.showMore?"Hide":"More"," "),e.xp6(1),e.Q6J("ngIf",!n.showMore),e.xp6(1),e.Q6J("ngIf",n.showMore)}}function R(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",0),e._UZ(1,"span",2),e.TgZ(2,"mat-checkbox",17),e.NdJ("ngModelChange",function(o){return e.CHM(a),e.oxw().showStd=o}),e._uU(3," Show Standardized Name fields "),e.qZA(),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("ngModel",n.showStd)}}var F=function(){return[5,10,25,100]};function V(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"mat-paginator",18),e.NdJ("page",function(o){e.CHM(a);var m=e.oxw();return m.pageChange(o,m.analyticsEventCategory)}),e.qZA()}if(2&t){var n=e.oxw();e.Q6J("length",n.filtered&&n.filtered.length||0)("pageIndex",n.page)("pageSize",10)("pageSizeOptions",e.DdM(4,F))}}function G(t,r){1&t&&e._UZ(0,"mat-divider",22),2&t&&e.Q6J("inset",!0)}function X(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",19),e.TgZ(1,"app-name-form",20),e.NdJ("priorityUpdate",function(l){return e.CHM(a),e.oxw().priorityUpdated(l)})("nameDeleted",function(l){return e.CHM(a),e.oxw().deleteName(l)}),e.qZA(),e.YNc(2,G,1,1,"mat-divider",21),e.qZA()}if(2&t){var n=r.$implicit,i=r.last,o=r.index,m=e.oxw();e.Q6J("id","substance-name-"+o),e.xp6(1),e.Q6J("name",n)("show",m.expanded)("standardized",m.showStd),e.xp6(1),e.Q6J("ngIf",!i)}}function K(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"mat-paginator",18),e.NdJ("page",function(o){e.CHM(a);var m=e.oxw();return m.pageChange(o,m.analyticsEventCategory)}),e.qZA()}if(2&t){var n=e.oxw();e.Q6J("length",n.filtered&&n.filtered.length||0)("pageIndex",n.page)("pageSize",10)("pageSizeOptions",e.DdM(4,F))}}function W(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",23),e._UZ(1,"span",2),e.TgZ(2,"button",24),e.NdJ("click",function(){return e.CHM(a),e.oxw().addName()}),e._uU(3," Add name "),e._UZ(4,"mat-icon",25),e.qZA(),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("disabled",n.isAlternative)}}var w=function(){var t=function(r){(0,Q.Z)(n,r);var a=(0,P.Z)(n);function n(i,o,m,u,l){var c;return(0,h.Z)(this,n),(c=a.call(this,u)).substanceFormNamesService=i,c.substanceFormService=o,c.scrollToService=m,c.gaService=u,c.configService=l,c.subscriptions=[],c.pageSize=10,c.expanded=!0,c.showStd=!0,c.showMore=!1,c.standardizeButton=!1,c.analyticsEventCategory="substance form names",c}return(0,f.Z)(n,[{key:"ngOnInit",value:function(){var o=this;this.menuLabelUpdate.emit("Names"),this.appId=this.configService.environment.appId,this.standardizeButton=this.configService.configData.showNameStandardizeButton||!1;var m=this.substanceFormService.definition.subscribe(function(l){l.definitionType&&"ALTERNATIVE"===l.definitionType?o.hiddenStateUpdate.emit(!0):(o.canAddItemUpdate.emit(!0),o.hiddenStateUpdate.emit(!1))});this.subscriptions.push(m);var u=this.substanceFormNamesService.substanceNames.subscribe(function(l){o.names=l,o.filtered=l;var c=o.searchControl.valueChanges.subscribe(function(Z){o.filterList(Z,o.names,o.analyticsEventCategory)},function(Z){console.log(Z)});o.subscriptions.push(c),o.page=0,o.pageChange()});this.subscriptions.push(u)}},{key:"ngAfterViewInit",value:function(){}},{key:"collapse",value:function(){this.expanded=!this.expanded}},{key:"standardize",value:function(){}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(o){o.unsubscribe()})}},{key:"addItem",value:function(){this.addName()}},{key:"addName",value:function(){var o=this;this.substanceFormNamesService.addSubstanceName(),setTimeout(function(){o.scrollToService.scrollToElement("substance-name-0","center")})}},{key:"priorityUpdated",value:function(o){this.names.forEach(function(m){m!==o&&(m.displayName=!1)})}},{key:"deleteName",value:function(o){this.substanceFormNamesService.deleteSubstanceName(o)}}]),n}(E.u);return t.\u0275fac=function(a){return new(a||t)(e.Y36(M.w),e.Y36(y.B),e.Y36(H.i),e.Y36(z.$),e.Y36(Y.E))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-substance-form-names-card"]],features:[e.qOj],decls:10,vars:8,consts:[[1,"flex-row"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["class","standardize","matTooltip","show / hide additional rows","mat-button","",3,"click",4,"ngIf"],["class","standardize","mat-button","",3,"click",4,"ngIf"],["class","flex-row",4,"ngIf"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","name","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],["style","display: flex;",4,"ngIf"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["matTooltip","show / hide additional rows","mat-button","",1,"standardize",3,"click"],["mat-button","",1,"standardize",3,"click"],["class","chevron","svgIcon","chevron_down",4,"ngIf"],["class","chevron","svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",1,"chevron"],["svgIcon","chevron_up",1,"chevron"],["matTooltip","The standardized name value is generated upon submission",1,"checkbox",3,"ngModel","ngModelChange"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],["appScrollToTarget","",1,"name",3,"id"],[3,"name","show","standardized","priorityUpdate","nameDeleted"],["class","form-divider",3,"inset",4,"ngIf"],[1,"form-divider",3,"inset"],[2,"display","flex"],["mat-button","",3,"disabled","click"],["svgIcon","add_circle_outline"]],template:function(a,n){1&a&&(e.TgZ(0,"div",0),e.YNc(1,L,2,2,"mat-form-field",1),e._UZ(2,"span",2),e.YNc(3,q,2,1,"button",3),e.YNc(4,$,4,3,"button",4),e.qZA(),e.YNc(5,R,4,1,"div",5),e.YNc(6,V,1,5,"mat-paginator",6),e.YNc(7,X,3,5,"div",7),e.YNc(8,K,1,5,"mat-paginator",6),e.YNc(9,W,5,1,"div",8)),2&a&&(e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>n.pageSize),e.xp6(2),e.Q6J("ngIf",n.names&&n.names.length>0),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>0),e.xp6(1),e.Q6J("ngIf",n.showMore),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>5),e.xp6(1),e.Q6J("ngForOf",n.paged),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>5),e.xp6(1),e.Q6J("ngIf",n.names&&n.names.length>0))},styles:[".mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.checkbox[_ngcontent-%COMP%]{line-height:34px}.name[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.name[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.name[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.name[_ngcontent-%COMP%] .mat-expansion-panel, .name[_ngcontent-%COMP%] .mat-table, .name[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}"]}),t}(),ee=s(64061),ne=s(7168),S=s(19975),_=s(65590),C=s(87317),te=s(94673),N=s(44770),d=s(90587),A=s(26439),T=s(43365),J=s(42827),ae=s(52149),oe=s(99146),ie=s(95758),re=s(54244);function se(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",21),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",22),e.NdJ("click",function(){return e.CHM(a),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",23),e.qZA(),e.qZA()}}function me(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"a",24),e.NdJ("click",function(){return e.CHM(a),e.oxw().resolve()}),e._uU(1,"resolve"),e.qZA()}}function ce(t,r){1&t&&e._UZ(0,"mat-icon",25)}function le(t,r){1&t&&e._UZ(0,"mat-icon",26)}function de(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div",2),e.TgZ(1,"mat-form-field",10),e.TgZ(2,"textarea",27),e.NdJ("ngModelChange",function(o){return e.CHM(a),e.oxw().name.stdName=o})("keypress",function(o){return e.CHM(a),e.oxw().preventNewLine(o)}),e.qZA(),e.qZA(),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("ngModel",n.name.stdName)}}function pe(t,r){if(1&t&&(e.TgZ(0,"div",2),e.TgZ(1,"div",35),e._UZ(2,"app-name-orgs",36,37),e.qZA(),e.qZA()),2&t){var a=e.oxw(2);e.xp6(2),e.Q6J("nameOrgs",a.getNameOrgs(a.name))}}function ue(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",2),e.TgZ(2,"app-tag-selector",28),e.NdJ("tagsUpdate",function(o){return e.CHM(a),e.oxw().updateLanguages(o)}),e.qZA(),e.TgZ(3,"app-tag-selector",29),e.NdJ("tagsUpdate",function(o){return e.CHM(a),e.oxw().updateDomains(o)}),e.qZA(),e.TgZ(4,"app-tag-selector",30),e.NdJ("tagsUpdate",function(o){return e.CHM(a),e.oxw().updateJurisdiction(o)}),e.qZA(),e.qZA(),e.TgZ(5,"div",2),e.TgZ(6,"div",31),e._UZ(7,"app-domain-references",32,33),e.qZA(),e.qZA(),e.YNc(9,pe,4,1,"div",19),e._UZ(10,"app-audit-info",34),e.qZA()}if(2&t){var n=e.oxw();e.xp6(2),e.Q6J("tags",n.name.languages),e.xp6(1),e.Q6J("tags",n.name.domains),e.xp6(1),e.Q6J("tags",n.name.nameJurisdiction),e.xp6(3),e.Q6J("referencesUuids",n.name.references),e.xp6(2),e.Q6J("ngIf","of"==n.name.type),e.xp6(1),e.Q6J("source",n.name)}}var k=function(){var t=function(){function r(a,n,i,o,m,u){(0,h.Z)(this,r),this.cvService=a,this.utilsService=n,this.dialog=i,this.substanceFormService=o,this.overlayContainerService=m,this.nameFormService=u,this.priorityUpdate=new e.vpe,this.nameDeleted=new e.vpe,this.nameControl=new d.NI(""),this.nameTypeControl=new d.NI(""),this.subscriptions=[],this.substanceType="",this.viewFull=!0,this.showStd=!1}return(0,f.Z)(r,[{key:"ngOnInit",value:function(){var n=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),this.substanceFormService.definition.subscribe(function(o){n.substanceType=o.substanceClass}).unsubscribe()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(n){n.unsubscribe()})}},{key:"show",get:function(){return this.viewFull||null},set:function(n){null!=n&&(this.viewFull=n)}},{key:"standardized",get:function(){return this.showStd},set:function(n){null!=n&&(this.showStd=n)}},{key:"name",get:function(){return this.privateName||{}},set:function(n){null!=n&&(this.privateName=n,(!this.privateName.languages||0===this.privateName.languages.length)&&(this.privateName.languages=["en"]),this.privateName.type||(this.privateName.type="cn"))}},{key:"priorityUpdated",value:function(n){this.privateName.displayName="true"===n.value,this.priorityUpdate.emit(this.privateName)}},{key:"updateAccess",value:function(n){this.privateName.access=n}},{key:"updateLanguages",value:function(n){this.privateName.languages=n}},{key:"updateDomains",value:function(n){this.privateName.domains=n}},{key:"updateJurisdiction",value:function(n){this.privateName.nameJurisdiction=n}},{key:"deleteName",value:function(){var n=this;this.privateName.$$deletedCode=this.utilsService.newUUID(),!this.privateName.name&&!this.privateName.type&&(this.deleteTimer=setTimeout(function(){n.nameDeleted.emit(n.privateName)},2e3))}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateName.$$deletedCode}},{key:"resolve",value:function(){var n=this,i=this.dialog.open(oe.a,{height:"auto",width:"800px",data:{name:this.privateName.name}});this.overlayContainer.style.zIndex="1002",i.afterClosed().subscribe(function(o){n.overlayContainer.style.zIndex=null,null!=o&&""!==o&&n.substanceFormService.resolvedName(o)},function(){})}},{key:"getNameOrgs",value:function(n){return n.nameOrgs||(n.nameOrgs=[]),n.nameOrgs}},{key:"preventNewLine",value:function(n){"Enter"===n.key&&n.preventDefault()}}]),r}();return t.\u0275fac=function(a){return new(a||t)(e.Y36(J.I),e.Y36(ae.F),e.Y36(ie.uw),e.Y36(y.B),e.Y36(re.Xj),e.Y36(M.w))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-name-form"]],inputs:{show:"show",standardized:"standardized",name:"name"},outputs:{priorityUpdate:"priorityUpdate",nameDeleted:"nameDeleted"},decls:28,vars:28,consts:[[1,"name-form-container",3,"ngClass"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete name",3,"click"],["svgIcon","delete_forever"],[1,"radio-container","column-radio"],["name","priorityName","value","true",3,"checked","matTooltip","change"],[1,"checkbox-container","column-checkbox"],[3,"ngModel","matTooltip","ngModelChange"],[1,"name"],["matInput","","placeholder","Name","required","","name","name",3,"ngModel","ngModelChange","keypress"],["class","resolve",3,"click",4,"ngIf"],["required","true","key","Name Type Code","title","Type",1,"name-type",3,"model","valueChange"],[3,"access","accessOut"],[1,"chevron"],["mat-icon-button","","matTooltip","Expand / collapse rows",1,"chevron-button",3,"click"],["svgIcon","chevron_up",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],["class","form-row",4,"ngIf"],[4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"resolve",3,"click"],["svgIcon","chevron_up"],["svgIcon","chevron_down"],["matInput","","placeholder","Standardized Name","matTooltip"," standardized names will be generated upon submission if blank","name","standardizedname",3,"ngModel","ngModelChange","keypress"],["cvDomain","LANGUAGE","placeholder","Languages",1,"tags",3,"tags","tagsUpdate"],["cvDomain","NAME_DOMAIN","placeholder","Domains",1,"domains",3,"tags","tagsUpdate"],["cvDomain","JURISDICTION","placeholder","Jurisdiction",1,"jurisdiction",3,"tags","tagsUpdate"],[1,"references-container"],[3,"referencesUuids"],["references",""],[3,"source"],[1,"nameorgs-container"],[3,"nameOrgs"],["nameOrgs",""]],template:function(a,n){1&a&&(e.TgZ(0,"div",0),e.YNc(1,se,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return n.deleteName()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"mat-radio-button",7),e.NdJ("change",function(o){return n.priorityUpdated(o)}),e.ALo(8,"elementLabel"),e._uU(9),e.ALo(10,"elementLabel"),e.qZA(),e.qZA(),e.TgZ(11,"div",8),e.TgZ(12,"mat-checkbox",9),e.NdJ("ngModelChange",function(o){return n.name.preferred=o}),e.ALo(13,"elementLabel"),e._uU(14),e.ALo(15,"elementLabel"),e.qZA(),e.qZA(),e.TgZ(16,"mat-form-field",10),e.TgZ(17,"textarea",11),e.NdJ("ngModelChange",function(o){return n.name.name=o})("keypress",function(o){return n.preventNewLine(o)}),e.qZA(),e.qZA(),e.YNc(18,me,2,0,"a",12),e.TgZ(19,"app-cv-input",13),e.NdJ("valueChange",function(o){return n.name.type=o}),e.qZA(),e.TgZ(20,"div"),e.TgZ(21,"app-access-manager",14),e.NdJ("accessOut",function(o){return n.updateAccess(o)}),e.qZA(),e.qZA(),e.TgZ(22,"div",15),e.TgZ(23,"button",16),e.NdJ("click",function(){return n.viewFull=!n.viewFull}),e.YNc(24,ce,1,0,"mat-icon",17),e.YNc(25,le,1,0,"mat-icon",18),e.qZA(),e.qZA(),e.qZA(),e.YNc(26,de,3,1,"div",19),e.YNc(27,ue,11,6,"div",20),e.qZA()),2&a&&(e.Q6J("ngClass",n.viewFull?"name-form-container":"collapse"),e.xp6(1),e.Q6J("ngIf",n.name.$$deletedCode),e.xp6(6),e.s9C("matTooltip",e.xi3(8,16,"displayNameTitle","substance_names_name")),e.Q6J("checked",n.name.displayName),e.xp6(2),e.hij(" ",e.xi3(10,19,"displayNameShortTitle","substance_names_name")," "),e.xp6(3),e.s9C("matTooltip",e.xi3(13,22,"preferredTitle","substance_names_name")),e.Q6J("ngModel",n.name.preferred),e.xp6(2),e.hij(" ",e.xi3(15,25,"preferredShortTitle","substance_names_name")," "),e.xp6(3),e.Q6J("ngModel",n.name.name),e.xp6(1),e.Q6J("ngIf",n.name.name&&n.name.name.length>0&&"structure"===n.substanceType),e.xp6(1),e.Q6J("model",n.name.type),e.xp6(2),e.Q6J("access",n.name.access),e.xp6(3),e.Q6J("ngIf",n.viewFull),e.xp6(1),e.Q6J("ngIf",!n.viewFull),e.xp6(1),e.Q6J("ngIf",n.showStd&&n.viewFull),e.xp6(1),e.Q6J("ngIf",!n.name.$$deletedCode&&n.viewFull))},styles:[".name-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.collapse[_ngcontent-%COMP%]{padding:20px 10px 12px;position:relative}.resolve[_ngcontent-%COMP%]{padding:0 20px 20px 0;color:var(--primary-color)}.chevron[_ngcontent-%COMP%]{width:20px;line-height:67px;color:var(--chevron-color)}.chevron-button[_ngcontent-%COMP%]{width:20px}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-row[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-right:15px}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .domains[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .jurisdiction[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.references-container[_ngcontent-%COMP%], .nameorgs-container[_ngcontent-%COMP%]{width:100%}.column-radio[_ngcontent-%COMP%] .mat-radio-label{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.column-radio[_ngcontent-%COMP%] .mat-radio-label-content{padding-left:0;font-size:11px;padding-bottom:4px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout{-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-inner-container{margin-right:unset;margin-left:unset}.column-checkbox[_ngcontent-%COMP%] .mat-checkbox-layout .mat-checkbox-label{padding-left:0;font-size:11px;padding-bottom:2px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif}"]}),t}(),p=s(97217),v=s(16531),x=s(40089),I=s(70178),U=s(91434),ge=s(1130),b=s(61534);function ve(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"button",15),e.NdJ("click",function(i){return e.CHM(a),e.oxw().addNewNameOrg(i)}),e._UZ(1,"mat-icon",16),e.qZA()}}function fe(t,r){1&t&&(e.TgZ(0,"th",17),e._uU(1," Delete "),e.qZA())}function he(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"button",19),e.NdJ("click",function(){var o=e.CHM(a).$implicit;return e.oxw().deleteNameOrg(o)}),e._UZ(2,"mat-icon",20),e.qZA(),e.qZA()}}function _e(t,r){1&t&&(e.TgZ(0,"th",17),e._uU(1," Naming Organization "),e.qZA())}function Ce(t,r){if(1&t&&(e.TgZ(0,"mat-option",24),e._uU(1),e.qZA()),2&t){var a=r.$implicit;e.Q6J("value",a.value),e.xp6(1),e.hij(" ",a.display," ")}}function Ne(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"mat-form-field",21),e.TgZ(2,"mat-select",22),e.NdJ("selectionChange",function(m){var l=e.CHM(a).$implicit;return e.oxw().updateNameOrg(m,l)}),e.YNc(3,Ce,2,2,"mat-option",23),e.qZA(),e.qZA(),e.qZA()}if(2&t){var n=r.$implicit,i=e.oxw();e.xp6(2),e.Q6J("value",n.nameOrg)("placeholder",n.nameOrg?"":"Naming Organization *"),e.xp6(1),e.Q6J("ngForOf",i.nameOrgOptions)}}function xe(t,r){1&t&&(e.TgZ(0,"th",17),e._uU(1," Deprecated "),e.qZA())}function be(t,r){if(1&t){var a=e.EpF();e.TgZ(0,"td",18),e.TgZ(1,"div",25),e.TgZ(2,"mat-checkbox",26),e.NdJ("change",function(o){var u=e.CHM(a).$implicit;return e.oxw().updateDeprecated(o,u)}),e._uU(3,"Deprecated "),e.qZA(),e.qZA(),e.qZA()}if(2&t){var n=r.$implicit;e.xp6(2),e.Q6J("checked",n.deprecated)}}function Te(t,r){1&t&&e._UZ(0,"tr",27)}function Ze(t,r){1&t&&e._UZ(0,"tr",28)}var Oe=function(r){return{"block-display":r}},ye=function(){var t=function(){function r(a,n){(0,h.Z)(this,r),this.cvService=a,this.element=n,this.nameOrgOptions=[],this.displayedColumns=["delete","nameOrg","deprecated"],this.isExpanded=!1}return(0,f.Z)(r,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"getVocabularies",value:function(){var n=this;this.cvService.getDomainVocabulary("NAME_ORG").subscribe(function(i){n.nameOrgOptions=i.NAME_ORG.list})}},{key:"nameOrgs",get:function(){return this.privateNameOrgs||[]},set:function(n){this.privateNameOrgs=n,this.tableData=new p.by(this.privateNameOrgs)}},{key:"panelOpened",value:function(){this.isExpanded=!0;var n=new Event("focusin",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(n)}},{key:"panelClosed",value:function(){this.isExpanded=!1;var n=new Event("focusout",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(n)}},{key:"updateNameOrg",value:function(n,i){i.nameOrg=n.value}},{key:"updateDeprecated",value:function(n,i){i.deprecated=n.checked}},{key:"addNewNameOrg",value:function(n){n.stopPropagation(),this.privateNameOrgs.unshift({nameOrg:this.nameOrgOptions[0].value}),this.tableData.data=this.privateNameOrgs}},{key:"deleteNameOrg",value:function(n){var i=this.privateNameOrgs.findIndex(function(o){return o===n});i>-1&&(this.privateNameOrgs.splice(i,1),this.tableData.data=this.privateNameOrgs)}}]),r}();return t.\u0275fac=function(a){return new(a||t)(e.Y36(J.I),e.Y36(e.SBq))},t.\u0275cmp=e.Xpm({type:t,selectors:[["app-name-orgs"]],inputs:{nameOrgs:"nameOrgs"},decls:22,vars:9,consts:[[1,"name-orgs-content"],[3,"closed","opened"],[1,"name-orgs-header"],[3,"ngClass"],["matTooltip","Expand name orgs",1,"title"],["matBadgeOverlap","false",3,"matBadge","hidden"],["mat-icon-button","","matTooltip","Add name org",3,"click",4,"ngIf"],["mat-table","",3,"dataSource"],["matColumnDef","delete"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","nameOrg"],["matColumnDef","deprecated"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-icon-button","","matTooltip","Add name org",3,"click"],["svgIcon","add_circle_outline"],["mat-header-cell",""],["mat-cell",""],["mat-icon-button","","matTooltip","Delete name org",3,"click"],["svgIcon","delete_forever"],[1,"name-org"],[3,"value","placeholder","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"checkbox-container"],[3,"checked","change"],["mat-header-row",""],["mat-row",""]],template:function(a,n){1&a&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-accordion"),e.TgZ(2,"mat-expansion-panel",1),e.NdJ("closed",function(){return n.panelClosed()})("opened",function(){return n.panelOpened()}),e.TgZ(3,"mat-expansion-panel-header",2),e.TgZ(4,"mat-panel-title",3),e.TgZ(5,"h4",4),e._uU(6," Naming Organizations "),e._UZ(7,"span",5),e.qZA(),e.YNc(8,ve,2,0,"button",6),e.qZA(),e.qZA(),e.TgZ(9,"div"),e.TgZ(10,"table",7),e.ynx(11,8),e.YNc(12,fe,2,0,"th",9),e.YNc(13,he,3,0,"td",10),e.BQk(),e.ynx(14,11),e.YNc(15,_e,2,0,"th",9),e.YNc(16,Ne,4,3,"td",10),e.BQk(),e.ynx(17,12),e.YNc(18,xe,2,0,"th",9),e.YNc(19,be,4,1,"td",10),e.BQk(),e.YNc(20,Te,1,0,"tr",13),e.YNc(21,Ze,1,0,"tr",14),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&a&&(e.xp6(4),e.Q6J("ngClass",e.VKq(7,Oe,!n.isExpanded)),e.xp6(3),e.Q6J("matBadge",n.nameOrgs.length||0)("hidden",n.isExpanded),e.xp6(1),e.Q6J("ngIf",n.isExpanded),e.xp6(2),e.Q6J("dataSource",n.tableData),e.xp6(10),e.Q6J("matHeaderRowDef",n.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",n.displayedColumns))},directives:[v.pp,v.ib,v.yz,v.yK,g.mk,x.gM,I.k,g.O5,C.lW,_.Hw,p.BZ,p.w1,p.fO,p.ge,p.Dz,p.ev,N.KE,U.gD,g.sg,ge.ey,b.oG,p.as,p.XQ,p.nj,p.Gk],styles:[".mat-expansion-panel[_ngcontent-%COMP%]:not([class*=mat-elevation-z]), .mat-expansion-panel[_ngcontent-%COMP%]{box-shadow:none}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0}.name-orgs-header[_ngcontent-%COMP%] .mat-expansion-indicator:after{margin-right:7px}.name-orgs-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:5px;padding:0 7px}.name-orgs-content[_ngcontent-%COMP%] .mat-expansion-panel-body{padding:0}.mat-expansion-panel-header-title.block-display[_ngcontent-%COMP%]{display:block}"]}),t}(),D=s(68390),Me=s(88547),Fe=s(51279),we=s(16667),Se=s(84577),Ae=s(15992),Je=s(48302),ke=s(14900),Ie=s(13821),Ue=function(){var t=(0,f.Z)(function r(){(0,h.Z)(this,r)});return t.\u0275fac=function(a){return new(a||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[g.ez,ee.o.forChild(w),ne.O,S.t,_.Ps,C.ot,te.w,N.lN,d.UX,d.u5,A.TU,T.c,D.Fk,b.p9,v.To,p.p0,I.g,U.LD,x.AV,Me.J]]}),t}();e.B6R(w,[g.O5,N.KE,T.Nt,d.Fj,d.JJ,d.oH,C.lW,x.gM,_.Hw,b.oG,d.On,A.NW,g.sg,Fe.P,k,S.d],[]),e.B6R(k,[g.mk,g.O5,C.lW,x.gM,_.Hw,D.U0,b.oG,d.JJ,d.On,N.KE,T.Nt,d.Fj,d.Q7,we.S,Se.h,Ae.C,Je.V,ye,ke.n],[Ie.f])}}]); +//# sourceMappingURL=8635.d68f18eb6c50f503.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/8635.d68f18eb6c50f503.js.map b/frontend/src/main/resources/static/8635.d68f18eb6c50f503.js.map new file mode 100644 index 0000000..ceec88b --- /dev/null +++ b/frontend/src/main/resources/static/8635.d68f18eb6c50f503.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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","names":["i0","ctx_r8","ctx_r16","ctx_r22","ctx_r24","ctx_r25","ctx_r27","SubstanceFormNamesCardComponent","substanceFormNamesService","substanceFormService","scrollToService","gaService","configService","c","analyticsEventCategory","this","menuLabelUpdate","emit","appId","environment","standardizeButton","configData","showNameStandardizeButton","definitionSubscription","definition","subscribe","level","definitionType","o","hiddenStateUpdate","canAddItemUpdate","subscriptions","push","namesSubscription","substanceNames","names","filtered","searchSubscription","searchControl","valueChanges","filterList","value","console","log","error","page","pageChange","expanded","componentDestroyed","forEach","subscription","unsubscribe","addName","addSubstanceName","setTimeout","scrollToElement","updatedName","name","displayName","deleteSubstanceName","n","SubstanceCardBaseFilteredList","selectors","ctx_r6","ctx_r12","ctx_r18","ctx_r19","NameFormComponent","cvService","utilsService","dialog","overlayContainerService","nameFormService","h","EventEmitter","FormControl","overlayContainer","getContainerElement","substanceType","def","substanceClass","viewFull","set","val","showStd","privateName","languages","length","type","event","priorityUpdate","access","domains","jurisdiction","nameJurisdiction","$$deletedCode","newUUID","deleteTimer","nameDeleted","clearTimeout","dialogRef","open","NameResolverDialogComponent","height","width","data","style","zIndex","afterClosed","molfile","resolvedName","nameOrgs","key","preventDefault","r","ctx","ctx_r9","ctx_r17","ctx_r20","NameOrgsComponent","element","getVocabularies","getDomainVocabulary","nameOrgOptions","response","NAME_ORG","list","privateNameOrgs","tableData","MatTableDataSource","isExpanded","Event","bubbles","cancelable","nativeElement","dispatchEvent","nameOrg","deprecated","checked","stopPropagation","unshift","nameOrgIndex","findIndex","privateNameOrg","splice","SubstanceFormNamesModule","f","CommonModule","DynamicComponentLoaderModule","SubstanceFormModule","MatDividerModule","MatIconModule","MatButtonModule","ScrollToModule","MatFormFieldModule","ReactiveFormsModule","FormsModule","MatPaginatorModule","MatInputModule","MatRadioModule","MatCheckboxModule","MatExpansionModule","MatTableModule","MatBadgeModule","MatSelectModule","MatTooltipModule","ElementLabelDisplayModule","i12","i18"],"sources":["./src/app/core/substance-form/names/substance-form-names-card.component.html","./src/app/core/substance-form/names/substance-form-names-card.component.ts","./src/app/core/substance-form/names/name-form.component.html","./src/app/core/substance-form/names/name-form.component.ts","./src/app/core/substance-form/names/name-orgs.component.html","./src/app/core/substance-form/names/name-orgs.component.ts","./src/app/core/substance-form/names/substance-form-names.module.ts"],"sourcesContent":["
    \n pageSize\">\n \n \n \n\n \n \n\n\n\n\n
    \n
    \n \n \n Show Standardized Name fields\n \n
    \n\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n
    \n \n \n
    \n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\" [pageSize]=\"10\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n\n
    0\" style = \"display: flex;\">\n \n \n
    \n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../base-classes/substance-form-base-filtered-list';\nimport { SubstanceName } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormNamesService } from './substance-form-names.service';\nimport { ConfigService } from '@gsrs-core/config';\n\n@Component({\n selector: 'app-substance-form-names-card',\n templateUrl: './substance-form-names-card.component.html',\n styleUrls: ['./substance-form-names-card.component.scss']\n})\nexport class SubstanceFormNamesCardComponent\n extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n names: Array;\n private subscriptions: Array = [];\n pageSize = 10;\n expanded = true;\n showStd = true;\n showMore = false;\n appId: string;\n standardizeButton = false;\n\n constructor(\n private substanceFormNamesService: SubstanceFormNamesService,\n private substanceFormService: SubstanceFormService,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService,\n private configService: ConfigService,\n\n ) {\n super(gaService);\n this.analyticsEventCategory = 'substance form names';\n }\n\n ngOnInit() {\n this.menuLabelUpdate.emit('Names');\n this.appId = this.configService.environment.appId;\n this.standardizeButton = this.configService.configData.showNameStandardizeButton || false;\n const definitionSubscription = this.substanceFormService.definition.subscribe( level => {\n if (level.definitionType && level.definitionType === 'ALTERNATIVE') {\n // this.canAddItemUpdate.emit(false);\n this.hiddenStateUpdate.emit(true);\n } else {\n this.canAddItemUpdate.emit(true);\n this.hiddenStateUpdate.emit(false);\n }\n });\n this.subscriptions.push(definitionSubscription);\n const namesSubscription = this.substanceFormNamesService.substanceNames.subscribe(names => {\n\n this.names = names;\n this.filtered = names;\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.names, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(namesSubscription);\n }\n\n ngAfterViewInit() {\n\n }\n\n\n collapse() {\n this.expanded = !this.expanded;\n }\n\n standardize(): void {\n // We currently only want the back-end to standardize names\n // this.substanceFormNamesService.standardizeNames();\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addName();\n }\n\n addName(): void {\n this.substanceFormNamesService.addSubstanceName();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-name-0`, 'center');\n });\n }\n\n priorityUpdated(updatedName: SubstanceName): void {\n this.names.forEach(name => {\n if (name !== updatedName) {\n name.displayName = false;\n }\n });\n }\n\n deleteName(name: SubstanceName): void {\n this.substanceFormNamesService.deleteSubstanceName(name);\n }\n\n}\n","
    \n
    \n Deleted \n \n
    \n \n
    \n
    \n \n
    \n
    \n \n {{ 'displayNameShortTitle' | elementLabel : 'substance_names_name' }}\n \n
    \n
    \n \n {{ 'preferredShortTitle' | elementLabel : 'substance_names_name' }}\n \n
    \n\n \n \n \n \n 0 && substanceType === 'structure'\"\n (click)=\"resolve()\">resolve\n\n \n \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n \n \n \n \n \n \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    ","import { Component, OnInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { SubstanceName, SubstanceNameOrg } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { MatRadioChange } from '@angular/material/radio';\nimport { UtilsService } from '../../utils/utils.service';\nimport { Subscription } from 'rxjs';\nimport {NameResolverDialogComponent} from '@gsrs-core/name-resolver/name-resolver-dialog.component';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {MatDialog} from '@angular/material/dialog';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport { SubstanceFormNamesService } from '@gsrs-core/substance-form/names/substance-form-names.service';\n\n@Component({\n selector: 'app-name-form',\n templateUrl: './name-form.component.html',\n styleUrls: ['./name-form.component.scss']\n})\nexport class NameFormComponent implements OnInit, OnDestroy {\n private privateName: SubstanceName;\n @Output() priorityUpdate = new EventEmitter();\n @Output() nameDeleted = new EventEmitter();\n nameControl = new FormControl('');\n nameTypeControl = new FormControl('');\n deleteTimer: any;\n private subscriptions: Array = [];\n overlayContainer: HTMLElement;\n substanceType = '';\n viewFull = true;\n showStd = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private utilsService: UtilsService,\n private dialog: MatDialog,\n private substanceFormService: SubstanceFormService,\n private overlayContainerService: OverlayContainer,\n private nameFormService: SubstanceFormNamesService\n ) { }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const definition = this.substanceFormService.definition.subscribe(def => {\n this.substanceType = def.substanceClass;\n });\n definition.unsubscribe();\n \n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set show(val: boolean) {\n if (val != null) {\n this.viewFull = val;\n }\n }\n\n get show(): boolean {\n return this.viewFull || null;\n }\n\n @Input()\n set standardized(val: boolean) {\n if (val != null) {\n this.showStd = val;\n }\n }\n\n get standardized(): boolean {\n return this.showStd;\n }\n\n @Input()\n set name(name: SubstanceName) {\n if (name != null) {\n this.privateName = name;\n if (!this.privateName.languages || this.privateName.languages.length === 0) {\n this.privateName.languages = ['en'];\n }\n if (!this.privateName.type) {\n this.privateName.type = 'cn';\n }\n }\n }\n\n get name(): SubstanceName {\n return this.privateName || {};\n }\n\n priorityUpdated(event: MatRadioChange) {\n this.privateName.displayName = (event.value === 'true');\n this.priorityUpdate.emit(this.privateName);\n }\n\n updateAccess(access: Array): void {\n this.privateName.access = access;\n }\n\n updateLanguages(languages: Array): void {\n this.privateName.languages = languages;\n }\n\n updateDomains(domains: Array): void {\n this.privateName.domains = domains;\n }\n\n updateJurisdiction(jurisdiction: Array): void {\n this.privateName.nameJurisdiction = jurisdiction;\n }\n\n deleteName(): void {\n this.privateName.$$deletedCode = this.utilsService.newUUID();\n\n if (!this.privateName.name\n && !this.privateName.type\n ) {\n this.deleteTimer = setTimeout(() => {\n this.nameDeleted.emit(this.privateName);\n }, 2000);\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateName.$$deletedCode;\n }\n\n resolve(): void {\n const dialogRef = this.dialog.open(NameResolverDialogComponent, {\n height: 'auto',\n width: '800px',\n data: {'name': this.privateName.name}\n });\n this.overlayContainer.style.zIndex = '1002';\n dialogRef.afterClosed().subscribe((molfile?: string) => {\n this.overlayContainer.style.zIndex = null;\n if (molfile != null && molfile !== '') {\n this.substanceFormService.resolvedName(molfile);\n }\n }, () => {});\n }\n\n getNameOrgs(name: SubstanceName): Array {\n if (!name.nameOrgs) {\n name.nameOrgs = [];\n }\n return name.nameOrgs as Array;\n }\n\n preventNewLine(event: KeyboardEvent): void {\n if (event.key === 'Enter') {\n event.preventDefault();\n }\n }\n}\n","
    \n \n \n \n \n

    \n Naming Organizations\n \n

    \n \n
    \n
    \n
    \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
    Delete \n \n Naming Organization \n \n \n \n {{nameOrgOption.display}}\n \n \n \n Deprecated \n
    \n Deprecated\n \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, OnInit, Input, ElementRef } from '@angular/core';\nimport { SubstanceNameOrg } from '../../substance/substance.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { MatSelectChange } from '@angular/material/select';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'app-name-orgs',\n templateUrl: './name-orgs.component.html',\n styleUrls: ['./name-orgs.component.scss']\n})\nexport class NameOrgsComponent implements OnInit {\n private privateNameOrgs: Array;\n nameOrgOptions: Array = [];\n displayedColumns: string[] = ['delete', 'nameOrg', 'deprecated'];\n tableData: MatTableDataSource;\n isExpanded = false;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private element: ElementRef\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('NAME_ORG').subscribe(response => {\n this.nameOrgOptions = response['NAME_ORG'].list;\n });\n }\n\n @Input()\n set nameOrgs(nameOrgs: Array) {\n this.privateNameOrgs = nameOrgs;\n this.tableData = new MatTableDataSource(this.privateNameOrgs);\n }\n\n get nameOrgs(): Array {\n return this.privateNameOrgs || [];\n }\n\n panelOpened(): void {\n this.isExpanded = true;\n const event: Event = new Event('focusin', { bubbles: true, cancelable: true} );\n this.element.nativeElement.dispatchEvent(event);\n }\n\n panelClosed(): void {\n this.isExpanded = false;\n const event: Event = new Event('focusout', { bubbles: true, cancelable: true} );\n this.element.nativeElement.dispatchEvent(event);\n }\n\n updateNameOrg(event: MatSelectChange, nameOrg: SubstanceNameOrg): void {\n nameOrg.nameOrg = event.value;\n }\n\n updateDeprecated(event: MatCheckboxChange, nameOrg: SubstanceNameOrg): void {\n nameOrg.deprecated = event.checked;\n }\n\n addNewNameOrg(event: Event): void {\n event.stopPropagation();\n this.privateNameOrgs.unshift({\n nameOrg: this.nameOrgOptions[0].value\n });\n this.tableData.data = this.privateNameOrgs;\n }\n\n deleteNameOrg(nameOrg: SubstanceNameOrg): void {\n const nameOrgIndex = this.privateNameOrgs.findIndex(privateNameOrg => privateNameOrg === nameOrg);\n if (nameOrgIndex > -1) {\n this.privateNameOrgs.splice(nameOrgIndex, 1);\n this.tableData.data = this.privateNameOrgs;\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceFormNamesCardComponent } from './substance-form-names-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { NameFormComponent } from './name-form.component';\nimport { NameOrgsComponent } from './name-orgs.component';\nimport {MatRadioModule} from '@angular/material/radio';\nimport {MatCheckboxModule} from '@angular/material/checkbox';\nimport {MatBadgeModule} from '@angular/material/badge';\nimport {MatExpansionModule} from '@angular/material/expansion';\nimport {MatTableModule} from '@angular/material/table';\nimport {MatSelectModule} from '@angular/material/select';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport { ElementLabelDisplayModule } from '@gsrs-core/utils/element-label-display.module';\n\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormNamesCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n MatRadioModule,\n MatCheckboxModule,\n MatExpansionModule,\n MatTableModule,\n MatBadgeModule,\n MatSelectModule,\n MatTooltipModule,\n ElementLabelDisplayModule\n ],\n declarations: [\n SubstanceFormNamesCardComponent,\n NameFormComponent,\n NameOrgsComponent\n \n ]\n})\nexport class SubstanceFormNamesModule { }\n"],"sourceRoot":"webpack:///","file":"8635.d68f18eb6c50f503.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/9326.892bb96adafff74f.js b/frontend/src/main/resources/static/9326.434de18a44f7d7fd.js similarity index 89% rename from frontend/src/main/resources/static/9326.892bb96adafff74f.js rename to frontend/src/main/resources/static/9326.434de18a44f7d7fd.js index f8d1281..8b4dbbf 100644 --- a/frontend/src/main/resources/static/9326.892bb96adafff74f.js +++ b/frontend/src/main/resources/static/9326.434de18a44f7d7fd.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[9326],{9326:function(U,r,t){t.r(r),t.d(r,{SubstanceSsgParentSubstanceModule:function(){return O}});var S=t(48047),b=t(78069),d=t(36362),g=t(24582),m=t(7318),p=t(2756),h=t(24874),C=t(50253),n=t(76442),l=t(95758),Z=t(66088),y=t(9292),v=t(98002),P=function(c){return["/substances",c]};function I(e,c){if(1&e&&(n.TgZ(0,"div"),n.TgZ(1,"div",1),n.TgZ(2,"div"),n._uU(3),n.qZA(),n._UZ(4,"img",2),n.TgZ(5,"div"),n.TgZ(6,"a",3),n._uU(7),n.qZA(),n.qZA(),n.qZA(),n.qZA()),2&e){var s=n.oxw();n.xp6(3),n.Oqu(s.substance.specifiedSubstanceG3.parentSubstance.linkingID),n.xp6(1),n.Q6J("entityId",s.substance.specifiedSubstanceG3.parentSubstance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,P,s.substance.specifiedSubstanceG3.parentSubstance.refuuid)),n.xp6(1),n.hij(" ",s.substance.specifiedSubstanceG3.parentSubstance.name," ")}}var G=function(){var e=function(c){(0,g.Z)(i,c);var s=(0,m.Z)(i);function i(f,a,o){var u;return(0,b.Z)(this,i),(u=s.call(this)).dialog=f,u.gaService=a,u.overlayContainerService=o,u.parentSubstance={},u.substanceUpdated=new C.x,u.count=0,u}return(0,S.Z)(i,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(o){a.substance=o,null!=a.substance&&null!=a.substance.specifiedSubstanceG3&&a.substance.specifiedSubstanceG3.parentSubstance&&(a.parentSubstance=a.substance.specifiedSubstanceG3.parentSubstance,a.count=1),a.countUpdate.emit(a.count)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}}]),i}(p.B);return e.\u0275fac=function(s){return new(s||e)(n.Y36(l.uw),n.Y36(h.$),n.Y36(Z.Xj))},e.\u0275cmp=n.Xpm({type:e,selectors:[["app-substance-ssg-parent-substance"]],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"thumb-col"],["appSubstanceImage","",1,"structure-image",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(s,i){1&s&&n.YNc(0,I,8,6,"div",0),2&s&&n.Q6J("ngIf",i.substance.specifiedSubstanceG3.parentSubstance)},directives:[d.O5,y.m,v.yS],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),e}(),T=t(64061),A=t(38277),M=t(24054),O=function(){var e=(0,S.Z)(function c(){(0,b.Z)(this,c)});return e.\u0275fac=function(s){return new(s||e)},e.\u0275mod=n.oAB({type:e}),e.\u0275inj=n.cJS({imports:[[d.ez,T.o.forChild(G),A.V,l.Is,v.Bz,M.f]]}),e}()}}]); -//# sourceMappingURL=9326.892bb96adafff74f.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[9326],{9326:function(U,r,t){t.r(r),t.d(r,{SubstanceSsgParentSubstanceModule:function(){return O}});var S=t(1884),b=t(39117),d=t(36362),g=t(46751),m=t(56101),p=t(2756),h=t(24874),C=t(50253),n=t(86613),l=t(95758),Z=t(54244),y=t(9292),v=t(98002),P=function(c){return["/substances",c]};function I(e,c){if(1&e&&(n.TgZ(0,"div"),n.TgZ(1,"div",1),n.TgZ(2,"div"),n._uU(3),n.qZA(),n._UZ(4,"img",2),n.TgZ(5,"div"),n.TgZ(6,"a",3),n._uU(7),n.qZA(),n.qZA(),n.qZA(),n.qZA()),2&e){var s=n.oxw();n.xp6(3),n.Oqu(s.substance.specifiedSubstanceG3.parentSubstance.linkingID),n.xp6(1),n.Q6J("entityId",s.substance.specifiedSubstanceG3.parentSubstance.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(4,P,s.substance.specifiedSubstanceG3.parentSubstance.refuuid)),n.xp6(1),n.hij(" ",s.substance.specifiedSubstanceG3.parentSubstance.name," ")}}var G=function(){var e=function(c){(0,g.Z)(i,c);var s=(0,m.Z)(i);function i(f,a,o){var u;return(0,b.Z)(this,i),(u=s.call(this)).dialog=f,u.gaService=a,u.overlayContainerService=o,u.parentSubstance={},u.substanceUpdated=new C.x,u.count=0,u}return(0,S.Z)(i,[{key:"ngOnInit",value:function(){var a=this;this.substanceUpdated.subscribe(function(o){a.substance=o,null!=a.substance&&null!=a.substance.specifiedSubstanceG3&&a.substance.specifiedSubstanceG3.parentSubstance&&(a.parentSubstance=a.substance.specifiedSubstanceG3.parentSubstance,a.count=1),a.countUpdate.emit(a.count)}),this.overlayContainer=this.overlayContainerService.getContainerElement()}}]),i}(p.B);return e.\u0275fac=function(s){return new(s||e)(n.Y36(l.uw),n.Y36(h.$),n.Y36(Z.Xj))},e.\u0275cmp=n.Xpm({type:e,selectors:[["app-substance-ssg-parent-substance"]],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"],[1,"thumb-col"],["appSubstanceImage","",1,"structure-image",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(s,i){1&s&&n.YNc(0,I,8,6,"div",0),2&s&&n.Q6J("ngIf",i.substance.specifiedSubstanceG3.parentSubstance)},directives:[d.O5,y.m,v.yS],styles:[".name[_ngcontent-%COMP%]{min-width:150px}"]}),e}(),T=t(64061),A=t(38277),M=t(24054),O=function(){var e=(0,S.Z)(function c(){(0,b.Z)(this,c)});return e.\u0275fac=function(s){return new(s||e)},e.\u0275mod=n.oAB({type:e}),e.\u0275inj=n.cJS({imports:[[d.ez,T.o.forChild(G),A.V,l.Is,v.Bz,M.f]]}),e}()}}]); +//# sourceMappingURL=9326.434de18a44f7d7fd.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/9326.892bb96adafff74f.js.map b/frontend/src/main/resources/static/9326.434de18a44f7d7fd.js.map similarity index 98% rename from frontend/src/main/resources/static/9326.892bb96adafff74f.js.map rename to frontend/src/main/resources/static/9326.434de18a44f7d7fd.js.map index 3414b35..3caae2d 100644 --- a/frontend/src/main/resources/static/9326.892bb96adafff74f.js.map +++ b/frontend/src/main/resources/static/9326.434de18a44f7d7fd.js.map @@ -1 +1 @@ -{"version":3,"mappings":"uYAAAA,eACEA,iBACEA,eAAKA,SAA4DA,QACjEA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,QAEFA,4BATSA,2EAC0CA,oFAEnBA,iGACxBA,+ECQD,IAAMC,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,kBAAoC,GACpCA,mBAAmB,IAAIC,IAEvBD,QAAQ,EAK2CA,EATrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA4D,MAAvCD,EAAKC,UAAUC,sBACxCF,EAAKC,UAAUC,qBAAqBC,kBACvCH,EAAKG,gBAAkBH,EAAKC,UAAUC,qBAAqBC,gBAC3DH,EAAKI,MAAQ,GAEfJ,EAAKK,YAAYC,KAAKN,EAAKI,SAE7BP,KAAKU,iBAAmBV,KAAKH,wBAAwBc,0BAxBzDC,GAA0DC,kDAA7CnB,GAAoCD,6DAApCC,EAAoCoB,iPDdjDrB,4BAAMA,kJCcOC,EAAb,oCCQaqB,EAAb,eAAaA,KAAbC,iFAAaD,4DAZF,CACPE,KACAC,aAAsCxB,GACtCyB,IACAC,KACAC,KACAC,QAMSP,EAAb","names":["i0","SubstanceSsgParentSubstanceComponent","dialog","gaService","overlayContainerService","u","Subject","this","substanceUpdated","subscribe","a","substance","specifiedSubstanceG3","parentSubstance","count","countUpdate","emit","overlayContainer","getContainerElement","i","SubstanceCardBase","selectors","SubstanceSsgParentSubstanceModule","S","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.component.html","./src/app/core/substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.component.ts","./src/app/core/substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.module.ts"],"sourcesContent":["
    \n
    \n
    {{substance.specifiedSubstanceG3.parentSubstance.linkingID}}
    \n \n \n
    \n\n
    ","import { Component, OnInit} from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport { SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\nimport { MatDialog} from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subject } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-ssg-parent-substance',\n templateUrl: './substance-ssg-parent-substance.component.html',\n styleUrls: ['./substance-ssg-parent-substance.component.scss']\n})\n\nexport class SubstanceSsgParentSubstanceComponent extends SubstanceCardBase implements OnInit {\n parentSubstance: SubstanceRelated = {};\n substanceUpdated = new Subject();\n private overlayContainer: HTMLElement;\n count = 0;\n\n constructor(\n private dialog: MatDialog,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null && this.substance.specifiedSubstanceG3 != null\n && this.substance.specifiedSubstanceG3.parentSubstance) {\n this.parentSubstance = this.substance.specifiedSubstanceG3.parentSubstance;\n this.count = 1;\n }\n this.countUpdate.emit(this.count);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceSsgParentSubstanceComponent } from './substance-ssg-parent-substance.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReferencesManagerModule } from '../../references-manager/references-manager.module';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { RouterModule } from '@angular/router';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsgParentSubstanceComponent),\n ReferencesManagerModule,\n MatDialogModule,\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceSsgParentSubstanceComponent\n ]\n})\nexport class SubstanceSsgParentSubstanceModule { }\n"],"sourceRoot":"webpack:///","file":"9326.892bb96adafff74f.js"} \ No newline at end of file +{"version":3,"mappings":"uYAAAA,eACEA,iBACEA,eAAKA,SAA4DA,QACjEA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,QAEFA,4BATSA,2EAC0CA,oFAEnBA,iGACxBA,+ECQD,IAAMC,EAAb,eAAaA,EAAb,0CAME,WACUC,EACDC,EACCC,GAAyC,6BAEjDC,gBAJQH,SACDG,cACCA,4BARVA,kBAAoC,GACpCA,mBAAmB,IAAIC,IAEvBD,QAAQ,EAK2CA,EATrD,uCAcE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAA4D,MAAvCD,EAAKC,UAAUC,sBACxCF,EAAKC,UAAUC,qBAAqBC,kBACvCH,EAAKG,gBAAkBH,EAAKC,UAAUC,qBAAqBC,gBAC3DH,EAAKI,MAAQ,GAEfJ,EAAKK,YAAYC,KAAKN,EAAKI,SAE7BP,KAAKU,iBAAmBV,KAAKH,wBAAwBc,0BAxBzDC,GAA0DC,kDAA7CnB,GAAoCD,6DAApCC,EAAoCoB,iPDdjDrB,4BAAMA,kJCcOC,EAAb,oCCQaqB,EAAb,eAAaA,KAAbC,iFAAaD,4DAZF,CACPE,KACAC,aAAsCxB,GACtCyB,IACAC,KACAC,KACAC,QAMSP,EAAb","names":["i0","SubstanceSsgParentSubstanceComponent","dialog","gaService","overlayContainerService","u","Subject","this","substanceUpdated","subscribe","a","substance","specifiedSubstanceG3","parentSubstance","count","countUpdate","emit","overlayContainer","getContainerElement","i","SubstanceCardBase","selectors","SubstanceSsgParentSubstanceModule","S","CommonModule","DynamicComponentLoaderModule","ReferencesManagerModule","MatDialogModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.component.html","./src/app/core/substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.component.ts","./src/app/core/substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.module.ts"],"sourcesContent":["
    \n
    \n
    {{substance.specifiedSubstanceG3.parentSubstance.linkingID}}
    \n \n \n
    \n\n
    ","import { Component, OnInit} from '@angular/core';\nimport { SubstanceCardBase } from '../substance-card-base';\nimport { SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\nimport { MatDialog} from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { Subject } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-ssg-parent-substance',\n templateUrl: './substance-ssg-parent-substance.component.html',\n styleUrls: ['./substance-ssg-parent-substance.component.scss']\n})\n\nexport class SubstanceSsgParentSubstanceComponent extends SubstanceCardBase implements OnInit {\n parentSubstance: SubstanceRelated = {};\n substanceUpdated = new Subject();\n private overlayContainer: HTMLElement;\n count = 0;\n\n constructor(\n private dialog: MatDialog,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer\n ) {\n super();\n }\n\n ngOnInit() {\n this.substanceUpdated.subscribe(substance => {\n this.substance = substance;\n if (this.substance != null && this.substance.specifiedSubstanceG3 != null\n && this.substance.specifiedSubstanceG3.parentSubstance) {\n this.parentSubstance = this.substance.specifiedSubstanceG3.parentSubstance;\n this.count = 1;\n }\n this.countUpdate.emit(this.count);\n });\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceSsgParentSubstanceComponent } from './substance-ssg-parent-substance.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { ReferencesManagerModule } from '../../references-manager/references-manager.module';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { RouterModule } from '@angular/router';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceSsgParentSubstanceComponent),\n ReferencesManagerModule,\n MatDialogModule,\n RouterModule,\n SubstanceImageModule\n ],\n declarations: [\n SubstanceSsgParentSubstanceComponent\n ]\n})\nexport class SubstanceSsgParentSubstanceModule { }\n"],"sourceRoot":"webpack:///","file":"9326.434de18a44f7d7fd.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/941.019a7ca5775e0b1a.js b/frontend/src/main/resources/static/941.fb92fc6f56c4e1ad.js similarity index 83% rename from frontend/src/main/resources/static/941.019a7ca5775e0b1a.js rename to frontend/src/main/resources/static/941.fb92fc6f56c4e1ad.js index c7bd29e..364c82f 100644 --- a/frontend/src/main/resources/static/941.019a7ca5775e0b1a.js +++ b/frontend/src/main/resources/static/941.fb92fc6f56c4e1ad.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[941],{40941:function(X,f,o){o.r(f),o.d(f,{SubstanceMonomersModule:function(){return E}});var d=o(48047),p=o(78069),g=o(36362),C=o(64061),S=o(24582),y=o(7318),b=o(54025),T=o(52149),M=o(24874),A=o(50253),t=o(76442),x=o(44770),v=o(43365),c=o(90587),m=o(97217),U=o(9292),h=o(98002),Z=o(26439);function D(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Material "),t.qZA())}function N(n,e){if(1&n&&(t.TgZ(0,"div",21),t._uU(1),t.qZA()),2&n){var a=t.oxw().$implicit;t.xp6(1),t.Oqu(a.monomerSubstance.linkingID)}}var Q=function(e){return["/substances",e]};function J(n,e){if(1&n&&(t.TgZ(0,"td",16),t.TgZ(1,"div",17),t.YNc(2,N,2,1,"div",18),t._UZ(3,"img",19),t.TgZ(4,"div"),t.TgZ(5,"a",20),t._uU(6),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&n){var a=e.$implicit;t.xp6(2),t.Q6J("ngIf",a.monomerSubstance.linkingID),t.xp6(1),t.Q6J("entityId",a.monomerSubstance.refuuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,Q,a.monomerSubstance.refuuid)),t.xp6(1),t.hij(" ",a.monomerSubstance.refPname," ")}}function Y(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Amount "),t.qZA())}function O(n,e){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=e.$implicit,i=t.oxw();t.xp6(1),t.hij(" ",i.displayAmount(a.amount)," ")}}function I(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Type "),t.qZA())}function j(n,e){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=e.$implicit;t.xp6(1),t.hij(" ",a.type," ")}}function B(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Defining "),t.qZA())}function z(n,e){if(1&n&&(t.TgZ(0,"td",16),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&n){var a=e.$implicit;t.xp6(2),t.hij("",a.defining?"true":"false"," ")}}function L(n,e){1&n&&t._UZ(0,"tr",22)}function $(n,e){1&n&&t._UZ(0,"tr",23)}var F=function(){return[5,10,25,100]},H=function(){var n=function(e){(0,S.Z)(i,e);var a=(0,y.Z)(i);function i(r,s){var u;return(0,p.Z)(this,i),(u=a.call(this,s)).utilsService=r,u.gaService=s,u.displayedColumns=["material","amount","type","defining"],u.substanceUpdated=new A.x,u}return(0,d.Z)(i,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(u){s.substance=u,null!=s.substance&&(s.monomers=s.substance.polymer.monomers,s.countUpdate.emit(s.monomers.length),s.filtered=s.substance.polymer.monomers,s.pageChange(),s.searchControl.valueChanges.subscribe(function(l){s.filterList(l,s.monomers,s.analyticsEventCategory)},function(l){console.log(l)}))})}},{key:"displayAmount",value:function(s){return this.utilsService.displayAmount(s)}}]),i}(b.u);return n.\u0275fac=function(a){return new(a||n)(t.Y36(T.F),t.Y36(M.$))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-monomers"]],features:[t.qOj],decls:21,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","material"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","amount"],["matColumnDef","type"],["matColumnDef","defining"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"],["mat-header-row",""],["mat-row",""]],template:function(a,i){1&a&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"table",5),t.ynx(6,6),t.YNc(7,D,2,0,"th",7),t.YNc(8,J,7,6,"td",8),t.BQk(),t.ynx(9,9),t.YNc(10,Y,2,0,"th",7),t.YNc(11,O,2,1,"td",8),t.BQk(),t.ynx(12,10),t.YNc(13,I,2,0,"th",7),t.YNc(14,j,2,1,"td",8),t.BQk(),t.ynx(15,11),t.YNc(16,B,2,0,"th",7),t.YNc(17,z,3,1,"td",8),t.BQk(),t.YNc(18,L,1,0,"tr",12),t.YNc(19,$,1,0,"tr",13),t.qZA(),t.qZA(),t.TgZ(20,"mat-paginator",14),t.NdJ("page",function(s){return i.pageChange(s,i.analyticsEventCategory)}),t.qZA()),2&a&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",i.searchControl),t.xp6(2),t.Q6J("dataSource",i.paged),t.xp6(13),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns),t.xp6(1),t.Q6J("length",i.filtered&&i.filtered.length||0)("pageSize",5)("pageSizeOptions",t.DdM(8,F)))},directives:[x.KE,v.Nt,c.Fj,c.JJ,c.oH,m.BZ,m.w1,m.fO,m.ge,m.Dz,m.ev,g.O5,U.m,h.yS,m.as,m.XQ,m.nj,m.Gk,Z.NW],styles:[".image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.yesDef[_ngcontent-%COMP%]{color:gray}.noDef[_ngcontent-%COMP%]{font-weight:400}"]}),n}(),R=o(33865),P=o(24054),E=function(){var n=(0,d.Z)(function e(){(0,p.Z)(this,e)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[g.ez,C.o.forChild(H),m.p0,R.HT,Z.TU,v.c,c.UX,c.u5,h.Bz,P.f]]}),n}()}}]); -//# sourceMappingURL=941.019a7ca5775e0b1a.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[941],{40941:function(X,f,o){o.r(f),o.d(f,{SubstanceMonomersModule:function(){return E}});var d=o(1884),p=o(39117),g=o(36362),C=o(64061),S=o(46751),y=o(56101),b=o(54025),T=o(52149),M=o(24874),A=o(50253),t=o(86613),x=o(44770),v=o(43365),r=o(90587),m=o(97217),U=o(9292),h=o(98002),Z=o(26439);function D(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Material "),t.qZA())}function N(n,e){if(1&n&&(t.TgZ(0,"div",21),t._uU(1),t.qZA()),2&n){var a=t.oxw().$implicit;t.xp6(1),t.Oqu(a.monomerSubstance.linkingID)}}var Q=function(e){return["/substances",e]};function J(n,e){if(1&n&&(t.TgZ(0,"td",16),t.TgZ(1,"div",17),t.YNc(2,N,2,1,"div",18),t._UZ(3,"img",19),t.TgZ(4,"div"),t.TgZ(5,"a",20),t._uU(6),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&n){var a=e.$implicit;t.xp6(2),t.Q6J("ngIf",a.monomerSubstance.linkingID),t.xp6(1),t.Q6J("entityId",a.monomerSubstance.refuuid),t.xp6(2),t.Q6J("routerLink",t.VKq(4,Q,a.monomerSubstance.refuuid)),t.xp6(1),t.hij(" ",a.monomerSubstance.refPname," ")}}function Y(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Amount "),t.qZA())}function O(n,e){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=e.$implicit,i=t.oxw();t.xp6(1),t.hij(" ",i.displayAmount(a.amount)," ")}}function I(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Type "),t.qZA())}function j(n,e){if(1&n&&(t.TgZ(0,"td",16),t._uU(1),t.qZA()),2&n){var a=e.$implicit;t.xp6(1),t.hij(" ",a.type," ")}}function B(n,e){1&n&&(t.TgZ(0,"th",15),t._uU(1," Defining "),t.qZA())}function z(n,e){if(1&n&&(t.TgZ(0,"td",16),t.TgZ(1,"span"),t._uU(2),t.qZA(),t.qZA()),2&n){var a=e.$implicit;t.xp6(2),t.hij("",a.defining?"true":"false"," ")}}function L(n,e){1&n&&t._UZ(0,"tr",22)}function $(n,e){1&n&&t._UZ(0,"tr",23)}var F=function(){return[5,10,25,100]},H=function(){var n=function(e){(0,S.Z)(i,e);var a=(0,y.Z)(i);function i(c,s){var u;return(0,p.Z)(this,i),(u=a.call(this,s)).utilsService=c,u.gaService=s,u.displayedColumns=["material","amount","type","defining"],u.substanceUpdated=new A.x,u}return(0,d.Z)(i,[{key:"ngOnInit",value:function(){var s=this;this.substanceUpdated.subscribe(function(u){s.substance=u,null!=s.substance&&(s.monomers=s.substance.polymer.monomers,s.countUpdate.emit(s.monomers.length),s.filtered=s.substance.polymer.monomers,s.pageChange(),s.searchControl.valueChanges.subscribe(function(l){s.filterList(l,s.monomers,s.analyticsEventCategory)},function(l){console.log(l)}))})}},{key:"displayAmount",value:function(s){return this.utilsService.displayAmount(s)}}]),i}(b.u);return n.\u0275fac=function(a){return new(a||n)(t.Y36(T.F),t.Y36(M.$))},n.\u0275cmp=t.Xpm({type:n,selectors:[["app-substance-monomers"]],features:[t.qOj],decls:21,vars:9,consts:[[1,"flex-row"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","material"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","amount"],["matColumnDef","type"],["matColumnDef","defining"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["showFirstLastButtons","true",3,"length","pageSize","pageSizeOptions","page"],["mat-header-cell",""],["mat-cell",""],[1,"thumb-col"],["class","code",4,"ngIf"],["appSubstanceImage","",1,"image-icon",3,"entityId"],[1,"substance-name",3,"routerLink"],[1,"code"],["mat-header-row",""],["mat-row",""]],template:function(a,i){1&a&&(t.TgZ(0,"div",0),t._UZ(1,"span",1),t.TgZ(2,"mat-form-field",2),t._UZ(3,"input",3),t.qZA(),t.qZA(),t.TgZ(4,"div",4),t.TgZ(5,"table",5),t.ynx(6,6),t.YNc(7,D,2,0,"th",7),t.YNc(8,J,7,6,"td",8),t.BQk(),t.ynx(9,9),t.YNc(10,Y,2,0,"th",7),t.YNc(11,O,2,1,"td",8),t.BQk(),t.ynx(12,10),t.YNc(13,I,2,0,"th",7),t.YNc(14,j,2,1,"td",8),t.BQk(),t.ynx(15,11),t.YNc(16,B,2,0,"th",7),t.YNc(17,z,3,1,"td",8),t.BQk(),t.YNc(18,L,1,0,"tr",12),t.YNc(19,$,1,0,"tr",13),t.qZA(),t.qZA(),t.TgZ(20,"mat-paginator",14),t.NdJ("page",function(s){return i.pageChange(s,i.analyticsEventCategory)}),t.qZA()),2&a&&(t.xp6(2),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",i.searchControl),t.xp6(2),t.Q6J("dataSource",i.paged),t.xp6(13),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns),t.xp6(1),t.Q6J("length",i.filtered&&i.filtered.length||0)("pageSize",5)("pageSizeOptions",t.DdM(8,F)))},directives:[x.KE,v.Nt,r.Fj,r.JJ,r.oH,m.BZ,m.w1,m.fO,m.ge,m.Dz,m.ev,g.O5,U.m,h.yS,m.as,m.XQ,m.nj,m.Gk,Z.NW],styles:[".image-icon[_ngcontent-%COMP%]{width:150px;height:auto}.yesDef[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.noDef[_ngcontent-%COMP%]{font-weight:400}"]}),n}(),R=o(33865),P=o(24054),E=function(){var n=(0,d.Z)(function e(){(0,p.Z)(this,e)});return n.\u0275fac=function(a){return new(a||n)},n.\u0275mod=t.oAB({type:n}),n.\u0275inj=t.cJS({imports:[[g.ez,C.o.forChild(H),m.p0,R.HT,Z.TU,v.c,r.UX,r.u5,h.Bz,P.f]]}),n}()}}]); +//# sourceMappingURL=941.fb92fc6f56c4e1ad.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/941.019a7ca5775e0b1a.js.map b/frontend/src/main/resources/static/941.fb92fc6f56c4e1ad.js.map similarity index 98% rename from frontend/src/main/resources/static/941.019a7ca5775e0b1a.js.map rename to frontend/src/main/resources/static/941.fb92fc6f56c4e1ad.js.map index 4f9a81a..a2481b1 100644 --- a/frontend/src/main/resources/static/941.019a7ca5775e0b1a.js.map +++ b/frontend/src/main/resources/static/941.fb92fc6f56c4e1ad.js.map @@ -1 +1 @@ -{"version":3,"mappings":"2YAWMA,iBAAuCA,sBAASA,kCAG5CA,kBAA6DA,SAAsCA,sCAAtCA,kHAFjEA,iBACEA,kBACEA,wBACAA,kBACAA,eACEA,gBACEA,SACFA,QACFA,QACFA,QATFA,gCAEUA,oDACoCA,sDAEdA,mEACxBA,2EAORA,iBAAuCA,oBAAOA,kCAC9CA,iBAAwCA,SAAkCA,0CAAlCA,yEAIxCA,iBAAuCA,kBAAKA,kCAC5CA,iBAAwCA,SAAiBA,gCAAjBA,sDAGxCA,iBAAuCA,sBAASA,kCAChDA,iBAAwCA,gBAAOA,SAAwCA,QAAOA,gCAA/CA,uEAGjDA,sCACAA,uDC1BSC,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACDC,GAAiC,6BAExCC,cAAMD,IAHED,eACDE,cAJTA,mBAA6B,CAAC,WAAY,SAAU,OAAQ,YAC5DA,mBAAmB,IAAIC,IAGmBD,EAN5C,uCAWE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,YACPD,EAAKE,SAAWF,EAAKC,UAAUE,QAAQD,SACvCF,EAAKI,YAAYC,KAAKL,EAAKE,SAASI,QACpCN,EAAKO,SAAWP,EAAKC,UAAUE,QAAQD,SACvCF,EAAKQ,aAELR,EAAKS,cAAcC,aAAaX,UAAU,YACxCC,EAAKW,WAAWC,EAAOZ,EAAKE,SAAUF,EAAKa,yBAC1C,YACDC,QAAQC,IAAIC,UAvBtB,2BA8BE,SAAcC,GACZ,OAAOpB,KAAKJ,aAAayB,cAAcD,OA/B3CE,GAAgDC,kDAAnC5B,GAA0BD,gDAA1BC,EAA0B6B,20BDbvC9B,iBACEA,kBACAA,4BACEA,mBACFA,QACFA,QACAA,iBAEEA,mBAEEA,WACEA,sBACAA,sBAUFA,QAEAA,WACEA,uBACAA,uBACFA,QAEAA,aACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QAEAA,wBACAA,wBACFA,QACFA,QACAA,6BAAsGA,gCAAQ+B,2CAE9G/B,eA1CkBA,qCACuBA,8CAKtBA,qCA8BKA,sDACaA,sDAGtBA,0DAA2C,aAA3CA,CAA2C,gSC7B7CC,EAAb,yBCca+B,EAAb,eAAaA,KAAbC,iFAAaD,4DAdF,CACPE,KACAC,aAAsClC,GACtCmC,KACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,QAISX,EAAb","names":["i0","SubstanceMonomersComponent","utilsService","gaService","u","Subject","this","substanceUpdated","subscribe","s","substance","monomers","polymer","countUpdate","emit","length","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","amt","displayAmount","i","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceMonomersModule","d","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-monomers/substance-monomers.component.html","./src/app/core/substance-details/substance-monomers/substance-monomers.component.ts","./src/app/core/substance-details/substance-monomers/substance-monomers.module.ts"],"sourcesContent":["
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    Material \r\n
    \r\n
    {{monomer.monomerSubstance.linkingID}}
    \r\n \r\n \r\n
    \r\n \r\n\r\n \r\n
    Amount {{displayAmount(monomer.amount)}} Type {{monomer.type}} Defining {{monomer.defining ? 'true' : 'false'}}
    \r\n
    \r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {Monomer, SubstanceDetail} from '../../substance/substance.model';\r\nimport { SafeUrl } from '@angular/platform-browser';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-monomers',\r\n templateUrl: './substance-monomers.component.html',\r\n styleUrls: ['./substance-monomers.component.scss']\r\n})\r\nexport class SubstanceMonomersComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n monomers: Array;\r\n displayedColumns: string[] = ['material', 'amount', 'type', 'defining'];\r\n substanceUpdated = new Subject();\r\n constructor(\r\n private utilsService: UtilsService,\r\n public gaService: GoogleAnalyticsService\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n this.monomers = this.substance.polymer.monomers;\r\n this.countUpdate.emit(this.monomers.length);\r\n this.filtered = this.substance.polymer.monomers;\r\n this.pageChange();\r\n\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.monomers, this.analyticsEventCategory);\r\n }, error => {\r\n console.log(error);\r\n });\r\n }\r\n });\r\n\r\n }\r\n\r\n displayAmount(amt): string {\r\n return this.utilsService.displayAmount(amt);\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceMonomersComponent } from './substance-monomers.component';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMonomersComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceMonomersComponent]\r\n})\r\nexport class SubstanceMonomersModule { }\r\n"],"sourceRoot":"webpack:///","file":"941.019a7ca5775e0b1a.js"} \ No newline at end of file +{"version":3,"mappings":"2YAWMA,iBAAuCA,sBAASA,kCAG5CA,kBAA6DA,SAAsCA,sCAAtCA,kHAFjEA,iBACEA,kBACEA,wBACAA,kBACAA,eACEA,gBACEA,SACFA,QACFA,QACFA,QATFA,gCAEUA,oDACoCA,sDAEdA,mEACxBA,2EAORA,iBAAuCA,oBAAOA,kCAC9CA,iBAAwCA,SAAkCA,0CAAlCA,yEAIxCA,iBAAuCA,kBAAKA,kCAC5CA,iBAAwCA,SAAiBA,gCAAjBA,sDAGxCA,iBAAuCA,sBAASA,kCAChDA,iBAAwCA,gBAAOA,SAAwCA,QAAOA,gCAA/CA,uEAGjDA,sCACAA,uDC1BSC,EAAb,eAAaA,EAAb,0CAIE,WACUC,EACDC,GAAiC,6BAExCC,cAAMD,IAHED,eACDE,cAJTA,mBAA6B,CAAC,WAAY,SAAU,OAAQ,YAC5DA,mBAAmB,IAAIC,IAGmBD,EAN5C,uCAWE,WAAQ,WACNE,KAAKC,iBAAiBC,UAAU,YAC9BC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,YACPD,EAAKE,SAAWF,EAAKC,UAAUE,QAAQD,SACvCF,EAAKI,YAAYC,KAAKL,EAAKE,SAASI,QACpCN,EAAKO,SAAWP,EAAKC,UAAUE,QAAQD,SACvCF,EAAKQ,aAELR,EAAKS,cAAcC,aAAaX,UAAU,YACxCC,EAAKW,WAAWC,EAAOZ,EAAKE,SAAUF,EAAKa,yBAC1C,YACDC,QAAQC,IAAIC,UAvBtB,2BA8BE,SAAcC,GACZ,OAAOpB,KAAKJ,aAAayB,cAAcD,OA/B3CE,GAAgDC,kDAAnC5B,GAA0BD,gDAA1BC,EAA0B6B,20BDbvC9B,iBACEA,kBACAA,4BACEA,mBACFA,QACFA,QACAA,iBAEEA,mBAEEA,WACEA,sBACAA,sBAUFA,QAEAA,WACEA,uBACAA,uBACFA,QAEAA,aACEA,uBACAA,uBACFA,QACAA,aACEA,uBACAA,uBACFA,QAEAA,wBACAA,wBACFA,QACFA,QACAA,6BAAsGA,gCAAQ+B,2CAE9G/B,eA1CkBA,qCACuBA,8CAKtBA,qCA8BKA,sDACaA,sDAGtBA,0DAA2C,aAA3CA,CAA2C,qTC7B7CC,EAAb,yBCca+B,EAAb,eAAaA,KAAbC,iFAAaD,4DAdF,CACPE,KACAC,aAAsClC,GACtCmC,KACAC,KACAC,KACAC,IACAC,KACAC,KACAC,KACAC,QAISX,EAAb","names":["i0","SubstanceMonomersComponent","utilsService","gaService","u","Subject","this","substanceUpdated","subscribe","s","substance","monomers","polymer","countUpdate","emit","length","filtered","pageChange","searchControl","valueChanges","filterList","value","analyticsEventCategory","console","log","error","amt","displayAmount","i","SubstanceCardBaseFilteredList","selectors","ctx","SubstanceMonomersModule","d","CommonModule","DynamicComponentLoaderModule","MatTableModule","CdkTableModule","MatPaginatorModule","MatInputModule","ReactiveFormsModule","FormsModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-monomers/substance-monomers.component.html","./src/app/core/substance-details/substance-monomers/substance-monomers.component.ts","./src/app/core/substance-details/substance-monomers/substance-monomers.module.ts"],"sourcesContent":["
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    Material \r\n
    \r\n
    {{monomer.monomerSubstance.linkingID}}
    \r\n \r\n \r\n
    \r\n \r\n\r\n \r\n
    Amount {{displayAmount(monomer.amount)}} Type {{monomer.type}} Defining {{monomer.defining ? 'true' : 'false'}}
    \r\n
    \r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {Monomer, SubstanceDetail} from '../../substance/substance.model';\r\nimport { SafeUrl } from '@angular/platform-browser';\r\nimport { SubstanceCardBaseFilteredList } from '../substance-card-base-filtered-list';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-monomers',\r\n templateUrl: './substance-monomers.component.html',\r\n styleUrls: ['./substance-monomers.component.scss']\r\n})\r\nexport class SubstanceMonomersComponent extends SubstanceCardBaseFilteredList implements OnInit {\r\n monomers: Array;\r\n displayedColumns: string[] = ['material', 'amount', 'type', 'defining'];\r\n substanceUpdated = new Subject();\r\n constructor(\r\n private utilsService: UtilsService,\r\n public gaService: GoogleAnalyticsService\r\n ) {\r\n super(gaService);\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null) {\r\n this.monomers = this.substance.polymer.monomers;\r\n this.countUpdate.emit(this.monomers.length);\r\n this.filtered = this.substance.polymer.monomers;\r\n this.pageChange();\r\n\r\n this.searchControl.valueChanges.subscribe(value => {\r\n this.filterList(value, this.monomers, this.analyticsEventCategory);\r\n }, error => {\r\n console.log(error);\r\n });\r\n }\r\n });\r\n\r\n }\r\n\r\n displayAmount(amt): string {\r\n return this.utilsService.displayAmount(amt);\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport { SubstanceMonomersComponent } from './substance-monomers.component';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstanceMonomersComponent),\r\n MatTableModule,\r\n CdkTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstanceMonomersComponent]\r\n})\r\nexport class SubstanceMonomersModule { }\r\n"],"sourceRoot":"webpack:///","file":"941.fb92fc6f56c4e1ad.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/9810.baf8fe7eba5e79b0.js b/frontend/src/main/resources/static/9810.951124587cd8a57e.js similarity index 87% rename from frontend/src/main/resources/static/9810.baf8fe7eba5e79b0.js rename to frontend/src/main/resources/static/9810.951124587cd8a57e.js index 971fb42..43e77db 100644 --- a/frontend/src/main/resources/static/9810.baf8fe7eba5e79b0.js +++ b/frontend/src/main/resources/static/9810.951124587cd8a57e.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[9810],{29810:function(E,c,i){i.r(c),i.d(c,{SubstancePrimaryDefinitionModule:function(){return I}});var m=i(48047),f=i(78069),l=i(36362),p=i(64061),b=i(95106),S=i(24582),h=i(7318),g=i(2756),Z=i(50253),n=i(76442),C=i(9292),d=i(98002),P=function(e){return["/substances",e]};function D(t,e){if(1&t&&(n.TgZ(0,"div",1),n._UZ(1,"img",2),n.TgZ(2,"div"),n.TgZ(3,"a",3),n._uU(4),n.qZA(),n.qZA(),n.qZA()),2&t){var a=n.oxw();n.xp6(1),n.Q6J("entityId",a.primary.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(3,P,a.primary.refuuid)),n.xp6(1),n.hij(" ",a.primary.refPname," ")}}var T=function(){var t=function(e){(0,S.Z)(s,e);var a=(0,h.Z)(s);function s(){var o;return(0,f.Z)(this,s),(o=a.call(this)).substanceUpdated=new Z.x,o}return(0,m.Z)(s,[{key:"ngOnInit",value:function(){var r=this;this.substanceUpdated.subscribe(function(U){if(r.substance=U,null!=r.substance&&"ALTERNATIVE"===r.substance.definitionType){var v,u=(0,b.Z)(r.substance.relationships);try{for(u.s();!(v=u.n()).done;){var y=v.value;"SUB_ALTERNATE->SUBSTANCE"===y.type&&(r.primary=y.relatedSubstance)}}catch(B){u.e(B)}finally{u.f()}}})}}]),s}(g.B);return t.\u0275fac=function(a){return new(a||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-primary-definition"]],features:[n.qOj],decls:1,vars:1,consts:[["class","thumb-col",4,"ngIf"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(a,s){1&a&&n.YNc(0,D,5,5,"div",0),2&a&&n.Q6J("ngIf",s.primary)},directives:[l.O5,C.m,d.yS],styles:[""]}),t}(),A=i(24054),I=function(){var t=(0,m.Z)(function e(){(0,f.Z)(this,e)});return t.\u0275fac=function(a){return new(a||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[l.ez,p.o.forChild(T),d.Bz,A.f]]}),t}()}}]); -//# sourceMappingURL=9810.baf8fe7eba5e79b0.js.map \ No newline at end of file +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[9810],{29810:function(E,c,i){i.r(c),i.d(c,{SubstancePrimaryDefinitionModule:function(){return I}});var m=i(1884),f=i(39117),l=i(36362),p=i(64061),b=i(44014),S=i(46751),h=i(56101),g=i(2756),Z=i(50253),n=i(86613),C=i(9292),d=i(98002),P=function(e){return["/substances",e]};function D(t,e){if(1&t&&(n.TgZ(0,"div",1),n._UZ(1,"img",2),n.TgZ(2,"div"),n.TgZ(3,"a",3),n._uU(4),n.qZA(),n.qZA(),n.qZA()),2&t){var a=n.oxw();n.xp6(1),n.Q6J("entityId",a.primary.refuuid),n.xp6(2),n.Q6J("routerLink",n.VKq(3,P,a.primary.refuuid)),n.xp6(1),n.hij(" ",a.primary.refPname," ")}}var T=function(){var t=function(e){(0,S.Z)(s,e);var a=(0,h.Z)(s);function s(){var o;return(0,f.Z)(this,s),(o=a.call(this)).substanceUpdated=new Z.x,o}return(0,m.Z)(s,[{key:"ngOnInit",value:function(){var r=this;this.substanceUpdated.subscribe(function(U){if(r.substance=U,null!=r.substance&&"ALTERNATIVE"===r.substance.definitionType){var v,u=(0,b.Z)(r.substance.relationships);try{for(u.s();!(v=u.n()).done;){var y=v.value;"SUB_ALTERNATE->SUBSTANCE"===y.type&&(r.primary=y.relatedSubstance)}}catch(B){u.e(B)}finally{u.f()}}})}}]),s}(g.B);return t.\u0275fac=function(a){return new(a||t)},t.\u0275cmp=n.Xpm({type:t,selectors:[["app-substance-primary-definition"]],features:[n.qOj],decls:1,vars:1,consts:[["class","thumb-col",4,"ngIf"],[1,"thumb-col"],["appSubstanceImage","","size","400",1,"image-thumb",3,"entityId"],[1,"substance-name",3,"routerLink"]],template:function(a,s){1&a&&n.YNc(0,D,5,5,"div",0),2&a&&n.Q6J("ngIf",s.primary)},directives:[l.O5,C.m,d.yS],styles:[""]}),t}(),A=i(24054),I=function(){var t=(0,m.Z)(function e(){(0,f.Z)(this,e)});return t.\u0275fac=function(a){return new(a||t)},t.\u0275mod=n.oAB({type:t}),t.\u0275inj=n.cJS({imports:[[l.ez,p.o.forChild(T),d.Bz,A.f]]}),t}()}}]); +//# sourceMappingURL=9810.951124587cd8a57e.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/9810.baf8fe7eba5e79b0.js.map b/frontend/src/main/resources/static/9810.951124587cd8a57e.js.map similarity index 98% rename from frontend/src/main/resources/static/9810.baf8fe7eba5e79b0.js.map rename to frontend/src/main/resources/static/9810.951124587cd8a57e.js.map index f7ae7ec..974263a 100644 --- a/frontend/src/main/resources/static/9810.baf8fe7eba5e79b0.js.map +++ b/frontend/src/main/resources/static/9810.951124587cd8a57e.js.map @@ -1 +1 @@ -{"version":3,"mappings":"4XAAAA,iBACEA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,4BAN6CA,6CAEfA,0DACxBA,4CCMC,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CAEEC,gBAJFC,iBAAmB,IAAIC,IAEvBF,EALF,uCAUE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAE9B,GADAC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAuD,gBAAlCD,EAAKC,UAAUC,eAAkC,iBAC3DF,EAAKC,UAAUE,eAD4C,IAC7E,2BAAgD,KAArCC,EAAqCC,QAC7B,6BAAbD,EAAIE,OACNN,EAAKO,QAAUH,EAAII,yBAHsDC,gCAbrFC,GAAyDC,kDAA5CjB,8BAAmCkB,4QDVhDnB,4BAAwBA,kECUXC,EAAb,cCMamB,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCtB,GACtCuB,KACAC,QAISL,EAAb","names":["i0","SubstancePrimaryDefinitionComponent","o","substanceUpdated","Subject","this","subscribe","r","substance","definitionType","relationships","rel","v","type","primary","relatedSubstance","B","s","SubstanceCardBase","selectors","SubstancePrimaryDefinitionModule","m","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-primary-definition/substance-primary-definition.component.html","./src/app/core/substance-details/substance-primary-definition/substance-primary-definition.component.ts","./src/app/core/substance-details/substance-primary-definition/substance-primary-definition.module.ts"],"sourcesContent":["
    \r\n \r\n \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-primary-definition',\r\n templateUrl: './substance-primary-definition.component.html',\r\n styleUrls: ['./substance-primary-definition.component.scss']\r\n})\r\nexport class SubstancePrimaryDefinitionComponent extends SubstanceCardBase implements OnInit {\r\n definition: string;\r\n primary: SubstanceRelated;\r\n substanceUpdated = new Subject();\r\n\r\n constructor(\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.definitionType === 'ALTERNATIVE') {\r\n for (const rel of this.substance.relationships) {\r\n if (rel.type === 'SUB_ALTERNATE->SUBSTANCE') {\r\n this.primary = rel.relatedSubstance;\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {SubstancePrimaryDefinitionComponent} from './substance-primary-definition.component';\r\nimport {RouterModule} from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstancePrimaryDefinitionComponent),\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstancePrimaryDefinitionComponent]\r\n})\r\nexport class SubstancePrimaryDefinitionModule { }\r\n"],"sourceRoot":"webpack:///","file":"9810.baf8fe7eba5e79b0.js"} \ No newline at end of file +{"version":3,"mappings":"4XAAAA,iBACEA,iBACAA,eACEA,eACEA,SACFA,QACFA,QACFA,4BAN6CA,6CAEfA,0DACxBA,4CCMC,IAAMC,EAAb,eAAaA,EAAb,0CAKE,0CAEEC,gBAJFC,iBAAmB,IAAIC,IAEvBF,EALF,uCAUE,WAAQ,WACNG,KAAKF,iBAAiBG,UAAU,YAE9B,GADAC,EAAKC,UAAYA,EACK,MAAlBD,EAAKC,WAAuD,gBAAlCD,EAAKC,UAAUC,eAAkC,iBAC3DF,EAAKC,UAAUE,eAD4C,IAC7E,2BAAgD,KAArCC,EAAqCC,QAC7B,6BAAbD,EAAIE,OACNN,EAAKO,QAAUH,EAAII,yBAHsDC,gCAbrFC,GAAyDC,kDAA5CjB,8BAAmCkB,4QDVhDnB,4BAAwBA,kECUXC,EAAb,cCMamB,EAAb,eAAaA,KAAbC,iFAAaD,4DARF,CACPE,KACAC,aAAsCtB,GACtCuB,KACAC,QAISL,EAAb","names":["i0","SubstancePrimaryDefinitionComponent","o","substanceUpdated","Subject","this","subscribe","r","substance","definitionType","relationships","rel","v","type","primary","relatedSubstance","B","s","SubstanceCardBase","selectors","SubstancePrimaryDefinitionModule","m","CommonModule","DynamicComponentLoaderModule","RouterModule","SubstanceImageModule"],"sources":["./src/app/core/substance-details/substance-primary-definition/substance-primary-definition.component.html","./src/app/core/substance-details/substance-primary-definition/substance-primary-definition.component.ts","./src/app/core/substance-details/substance-primary-definition/substance-primary-definition.module.ts"],"sourcesContent":["
    \r\n \r\n \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\nimport {SubstanceCardBase} from '../substance-card-base';\r\nimport {SubstanceDetail, SubstanceRelated} from '../../substance/substance.model';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-substance-primary-definition',\r\n templateUrl: './substance-primary-definition.component.html',\r\n styleUrls: ['./substance-primary-definition.component.scss']\r\n})\r\nexport class SubstancePrimaryDefinitionComponent extends SubstanceCardBase implements OnInit {\r\n definition: string;\r\n primary: SubstanceRelated;\r\n substanceUpdated = new Subject();\r\n\r\n constructor(\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.substanceUpdated.subscribe(substance => {\r\n this.substance = substance;\r\n if (this.substance != null && this.substance.definitionType === 'ALTERNATIVE') {\r\n for (const rel of this.substance.relationships) {\r\n if (rel.type === 'SUB_ALTERNATE->SUBSTANCE') {\r\n this.primary = rel.relatedSubstance;\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DynamicComponentLoaderModule} from '../../dynamic-component-loader/dynamic-component-loader.module';\r\nimport {SubstancePrimaryDefinitionComponent} from './substance-primary-definition.component';\r\nimport {RouterModule} from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DynamicComponentLoaderModule.forChild(SubstancePrimaryDefinitionComponent),\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [SubstancePrimaryDefinitionComponent]\r\n})\r\nexport class SubstancePrimaryDefinitionModule { }\r\n"],"sourceRoot":"webpack:///","file":"9810.951124587cd8a57e.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/assets/data/config.json b/frontend/src/main/resources/static/assets/data/config.json index 8c59778..67e96f8 100644 --- a/frontend/src/main/resources/static/assets/data/config.json +++ b/frontend/src/main/resources/static/assets/data/config.json @@ -1,6 +1,6 @@ { "apiBaseUrl" : "http://localhost:8081/", - "version": "3.0.2", + "version": "3.0.3", "contactEmail": "admin@admin.com", "displayMatchApplication": "false", "adverseEventShinyHomepageDisplay": "true", @@ -18,8 +18,11 @@ "products": true, "clinicaltrials": true, "adverseevents": true, - "impurities": true - }, + "impurities": true, + "ssg2": false, + "ssg4m": false, + "userRegistration": false + }, "usefulLinks": [ {"title": "GSRSFind Excel tools", "description": "GSRSFind is an add-in for Microsoft Excel that gives a user access to data in GSRS for both search/browse and creation/modification purposes. (Note: write access requires valid credentials!)
    GSRSFind can augment an existing spreadsheet with data from GSRS. For example, you can add chemical structures to a column of names or identifiers.", @@ -433,16 +436,6 @@ } ] }, - { - "card": "substance-relationships-visualization", - "title": "Relationships Visualization", - "filters": [ - { - "filterName": "exists", - "propertyToCheck": "relationships" - } - ] - }, { "card": "substance-relationships", "type": "ACTIVE MOIETY", @@ -790,6 +783,11 @@ "homeContents": "The main goal of ginas is the production of software, called GSRS, to assist agencies in registering and documenting information about substances found in medicines. The Global Ingredient Archival System provides a common identifier for all of the substances used in medicinal products, utilizing a consistent definition of substances globally, including active substances under clinical investigation, consistent with the ISO 11238 standard.", "relationshipsVisualizationUri": "/ginas/app/beta/substanceRelationshipVisualizer/index.html?uuid=", "navItems": [ + { + "display": "Browse Substances", + "path": "browse-substance", + "order": 10 + }, { "component": "applications", "display": "Browse Applications", @@ -838,6 +836,35 @@ } ] }, + { + "display": "Search", + "children": [ + { + "component": "", + "display": "Advanced Search", + "path": "advanced-search", + "order": 180 + }, + { + "component": "", + "display": "Bulk Search", + "path": "bulk-search", + "order": 190 + }, + { + "component": "", + "display": "Structure Search", + "path": "structure-search", + "order": 200 + }, + { + "component": "", + "display": "Sequence Search", + "path": "sequence-search", + "order": 210 + } + ] + }, { "display": "Help", "order": 60, @@ -848,11 +875,22 @@ "order": 10 }, { + "component": "", + "kind": "contact-us", "display": "Email GSRS Support", - "path": "", + "mailToPath": "mailto:%s", + "queryParams": {"subject" : "Support request"}, "order": 30 } ] + }, + { + "component": "", + "kind": "contact-us", + "display": "Contact Us", + "mailToPath": "mailto:%s", + "queryParams": {"subject" : "Support request"}, + "order": 30 } ], "substanceSelectorProperties": [ diff --git a/frontend/src/main/resources/static/common.23632879d4b541ae.js b/frontend/src/main/resources/static/common.23632879d4b541ae.js new file mode 100644 index 0000000..420c318 --- /dev/null +++ b/frontend/src/main/resources/static/common.23632879d4b541ae.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8592],{99146:function(P,A,a){a.d(A,{a:function(){return M}});var D=a(39117),E=a(1884),t=a(95758),r=a(24874),n=a(86613),e=a(30639),d=a(87317),M=function(){var p=function(){function v(f,Z,b){(0,D.Z)(this,v),this.dialogRef=f,this.gaService=Z,this.data=b}return(0,E.Z)(v,[{key:"ngOnInit",value:function(){this.data.name&&(this.name=this.data.name)}},{key:"nameResolved",value:function(Z){this.dialogRef.close(Z)}},{key:"dismissDialog",value:function(){this.gaService.sendEvent("nameResolverDialog","button:close","cancel resolver"),this.dialogRef.close()}}]),v}();return p.\u0275fac=function(f){return new(f||p)(n.Y36(t.so),n.Y36(r.$),n.Y36(t.WI))},p.\u0275cmp=n.Xpm({type:p,selectors:[["app-name-resolver-dialog"]],decls:8,vars:1,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"startingName","structureSelected"],["mat-dialog-actions","",1,"flex-row"],[1,"middle-fill"],["mat-button","",3,"click"]],template:function(f,Z){1&f&&(n.TgZ(0,"h1",0),n._uU(1," Get Structure From Name\n"),n.qZA(),n.TgZ(2,"div",1),n.TgZ(3,"app-name-resolver",2),n.NdJ("structureSelected",function(R){return Z.nameResolved(R)}),n.qZA(),n.qZA(),n.TgZ(4,"div",3),n._UZ(5,"span",4),n.TgZ(6,"button",5),n.NdJ("click",function(){return Z.dismissDialog()}),n._uU(7,"Close"),n.qZA(),n.qZA()),2&f&&(n.xp6(3),n.Q6J("startingName",Z.name))},directives:[e.W,d.lW],styles:[""]}),p}()},11920:function(P,A,a){a.d(A,{V:function(){return E.V}}),a(73430);var E=a(38277)},73430:function(P,A,a){a.d(A,{C:function(){return H}});var D=a(39117),E=a(1884),t=a(12570),r=a(36362),n=a(59295),e=a(86613),d=a(97217),M=a(65590),p=a(40089);function v(o,l){1&o&&(e.TgZ(0,"th",13),e._uU(1," Index "),e.qZA())}function f(o,l){if(1&o&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&o){var i=l.$implicit,C=e.oxw();e.xp6(1),e.hij("",C.getParentIndex(i)," ")}}function Z(o,l){1&o&&(e.TgZ(0,"th",13),e._uU(1," Source Text / Citation "),e.qZA())}function b(o,l){if(1&o&&(e.TgZ(0,"a",17),e._uU(1),e.qZA()),2&o){var i=e.oxw().$implicit;e.Q6J("href",i.url,e.LSH),e.xp6(1),e.Oqu(i.citation)}}function R(o,l){if(1&o&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Oqu(i.citation)}}function I(o,l){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,b,2,2,"a",15),e.YNc(2,R,2,1,"span",16),e.qZA()),2&o){var i=l.$implicit;e.xp6(1),e.Q6J("ngIf",i.url),e.xp6(1),e.Q6J("ngIf",!i.url)}}function S(o,l){1&o&&(e.TgZ(0,"th",13),e._uU(1," Source Type "),e.qZA())}function U(o,l){if(1&o&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&o){var i=l.$implicit;e.xp6(1),e.hij(" ",i.docType," ")}}function N(o,l){1&o&&(e.TgZ(0,"th",13),e._uU(1," Tags "),e.qZA())}function h(o,l){if(1&o&&(e.TgZ(0,"span",20),e._uU(1),e.qZA()),2&o){var i=l.$implicit;e.xp6(1),e.hij(" ",i," ")}}function T(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"a",21),e.NdJ("click",function(){e.CHM(i);var O=e.oxw(3);return O.showmore=!O.showmore}),e._uU(1,"hide"),e.qZA()}}function m(o,l){if(1&o&&(e.TgZ(0,"span"),e.YNc(1,h,2,1,"span",18),e.YNc(2,T,2,0,"a",19),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",i.tags),e.xp6(1),e.Q6J("ngIf",i.tags.length>1)}}function c(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"a",21),e.NdJ("click",function(){e.CHM(i);var O=e.oxw(3);return O.showmore=!O.showmore}),e._uU(1,"more..."),e.qZA()}}function s(o,l){if(1&o&&(e.TgZ(0,"span"),e.TgZ(1,"span",20),e._uU(2),e.qZA(),e.YNc(3,c,2,0,"a",19),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(2),e.hij(" ",i.tags.length>0?i.tags[0]:null,""),e.xp6(1),e.Q6J("ngIf",i.tags.length>1)}}function u(o,l){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,m,3,2,"span",16),e.YNc(2,s,4,2,"span",16),e.qZA()),2&o){var i=l.$implicit,C=e.oxw();e.xp6(1),e.Q6J("ngIf",C.showmore&&i.tags&&i.tags.length>0),e.xp6(1),e.Q6J("ngIf",!C.showmore&&i.tags&&i.tags.length>0)}}function _(o,l){1&o&&(e.TgZ(0,"th",22),e._uU(1," File "),e.qZA())}function g(o,l){if(1&o&&(e.TgZ(0,"a",24),e._UZ(1,"mat-icon",25),e.qZA()),2&o){var i=e.oxw().$implicit;e.Q6J("href",i.uploadedFile,e.LSH)}}function x(o,l){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,g,2,1,"a",23),e.qZA()),2&o){var i=l.$implicit;e.xp6(1),e.Q6J("ngIf",i.uploadedFile)}}function y(o,l){1&o&&(e.TgZ(0,"th",13),e._uU(1," Date Accessed "),e.qZA())}function J(o,l){if(1&o&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&o){var i=l.$implicit,C=e.oxw();e.xp6(1),e.hij(" ",C.convertTimestamp(i.lastEdited)," ")}}function Y(o,l){1&o&&(e.TgZ(0,"th",22),e._uU(1," Access "),e.qZA())}function F(o,l){1&o&&e._UZ(0,"mat-icon",30)}function k(o,l){if(1&o&&(e.TgZ(0,"span",28),e.YNc(1,F,1,0,"mat-icon",29),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",i.access.length)}}function W(o,l){1&o&&e._UZ(0,"mat-icon",33)}function B(o,l){if(1&o&&(e.TgZ(0,"span",31),e.YNc(1,W,1,0,"mat-icon",32),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",0===i.access.length)}}function Q(o,l){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,k,2,1,"span",26),e.YNc(2,B,2,1,"span",27),e.qZA()),2&o){var i=l.$implicit;e.xp6(1),e.Q6J("ngIf",i.access.length),e.xp6(1),e.Q6J("ngIf",!i.access.length)}}function K(o,l){1&o&&e._UZ(0,"tr",34)}function q(o,l){1&o&&e._UZ(0,"tr",35)}var H=function(){var o=function(){function l(i){(0,D.Z)(this,l),this.substanceService=i,this.matchedRef=[],this.showmore=!1,this.displayedColumns=["index","citation","docType","tags","files","lastEdited","access"]}return(0,E.Z)(l,[{key:"ngOnInit",value:function(){var C=this;if(this.substance)this.subRef=this.substance.references;else if(this.subUUID)var O=this.substanceService.getSubstanceDetails(this.subUUID).pipe((0,n.q)(1)).subscribe(function(L){L&&(C.substance=L,C.subRef=C.substance.references),O.unsubscribe()},function(L){O.unsubscribe()});this.subRef&&this.compileReferences()}},{key:"compileReferences",value:function(){var C=this;this.substance.references&&this.substance.references.forEach(function(O){C.references.indexOf(O.uuid)>-1&&C.matchedRef.push(O)})}},{key:"convertTimestamp",value:function(C){return new r.uU("en-US").transform(C,"MMM dd, yyyy")}},{key:"getParentIndex",value:function(C){return this.subRef.indexOf(C)+1}}]),l}();return o.\u0275fac=function(i){return new(i||o)(e.Y36(t.d))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-references-manager"]],inputs:{substance:"substance",subUUID:"subUUID",references:"references"},decls:24,vars:3,consts:[["mat-table","",3,"dataSource"],["matColumnDef","index"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","citation"],["matColumnDef","docType"],["matColumnDef","tags"],["matColumnDef","files"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","lastEdited"],["matColumnDef","access"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["target","_blank","appTrackLinkEvent","","evCategory","substanceOverview",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank","appTrackLinkEvent","","evCategory","substanceOverview",3,"href"],["class","badge",4,"ngFor","ngForOf"],["class","morelink",3,"click",4,"ngIf"],[1,"badge"],[1,"morelink",3,"click"],["mat-header-cell","","mat-sort-header",""],[3,"href",4,"ngIf"],[3,"href"],["color","primary","svgIcon","cloud_download",1,"blue"],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["matTooltip","Public"],["svgIcon","lock_open","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock_open",1,"icon-align","blue-font"],["mat-header-row",""],["mat-row",""]],template:function(i,C){1&i&&(e.TgZ(0,"table",0),e.ynx(1,1),e.YNc(2,v,2,0,"th",2),e.YNc(3,f,2,1,"td",3),e.BQk(),e.ynx(4,4),e.YNc(5,Z,2,0,"th",2),e.YNc(6,I,3,2,"td",3),e.BQk(),e.ynx(7,5),e.YNc(8,S,2,0,"th",2),e.YNc(9,U,2,1,"td",3),e.BQk(),e.ynx(10,6),e.YNc(11,N,2,0,"th",2),e.YNc(12,u,3,2,"td",3),e.BQk(),e.ynx(13,7),e.YNc(14,_,2,0,"th",8),e.YNc(15,x,2,1,"td",3),e.BQk(),e.ynx(16,9),e.YNc(17,y,2,0,"th",2),e.YNc(18,J,2,1,"td",3),e.BQk(),e.ynx(19,10),e.YNc(20,Y,2,0,"th",8),e.YNc(21,Q,3,2,"td",3),e.BQk(),e.YNc(22,K,1,0,"tr",11),e.YNc(23,q,1,0,"tr",12),e.qZA()),2&i&&(e.Q6J("dataSource",C.matchedRef),e.xp6(22),e.Q6J("matHeaderRowDef",C.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",C.displayedColumns))},directives:[d.BZ,d.w1,d.fO,d.ge,d.Dz,d.ev,r.O5,r.sg,M.Hw,p.gM,d.as,d.XQ,d.nj,d.Gk],styles:[".mat-row[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--ref-manager-mat-row-nth-child-color)}.morelink[_ngcontent-%COMP%]{color:var(--link-color);padding-left:10px}"]}),o}()},38277:function(P,A,a){a.d(A,{V:function(){return M}});var D=a(1884),E=a(39117),t=a(36362),r=a(40089),n=a(65590),e=a(97217),d=a(86613),M=function(){var p=(0,D.Z)(function v(){(0,E.Z)(this,v)});return p.\u0275fac=function(f){return new(f||p)},p.\u0275mod=d.oAB({type:p}),p.\u0275inj=d.cJS({imports:[[t.ez,e.p0,n.Ps,r.AV]]}),p}()},27164:function(P,A,a){a.d(A,{O:function(){return d}});var D=a(39117),E=a(1884),t=a(95758),r=a(86613),n=a(33662),e=a(87317),d=function(){var M=function(){function p(v,f){(0,D.Z)(this,p),this.dialogRef=v,this.data=f,this.isNew=Object.keys(f.subsAmount).length<2}return(0,E.Z)(p,[{key:"ngOnInit",value:function(){var f=this;this.subsAmount=this.data.subsAmount,this.data=this.data.subsAmount,this.backup=JSON.parse(JSON.stringify(this.data)),this.dialogRef.beforeClosed().subscribe(function(){return f.dialogRef.close(f.data)})}},{key:"save",value:function(){this.dialogRef.close(this.data)}},{key:"cancel",value:function(){this.data.cancel=!0,this.data=this.backup,this.dialogRef.close(this.data)}}]),p}();return M.\u0275fac=function(v){return new(v||M)(r.Y36(t.so),r.Y36(t.WI))},M.\u0275cmp=r.Xpm({type:M,selectors:[["app-amount-form-dialog"]],decls:12,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"substanceAmount"],["amountForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(v,f){if(1&v&&(r.TgZ(0,"h1",0),r._uU(1),r.qZA(),r.TgZ(2,"div",1),r.TgZ(3,"div"),r._UZ(4,"app-amount-form",2,3),r.TgZ(6,"div",4),r._UZ(7,"span",5),r.TgZ(8,"button",6),r.NdJ("click",function(){return f.cancel()}),r._uU(9,"Cancel"),r.qZA(),r.TgZ(10,"button",7),r.NdJ("click",function(){return f.save()}),r._uU(11," Save "),r.qZA(),r.qZA(),r.qZA(),r.qZA()),2&v){var Z=r.MAs(5);r.xp6(1),r.hij("",f.isNew?"Add":"Edit"," Parameter"),r.xp6(3),r.Q6J("substanceAmount",f.subsAmount),r.xp6(6),r.Q6J("disabled",!Z)}},directives:[t.uh,t.xY,n.f,e.lW],styles:[""]}),M}()},17537:function(P,A,a){a.d(A,{h:function(){return N}});var D=a(39117),E=a(1884),t=a(86613),r=a(42827),n=a(54244),e=a(36362),d=a(90587),M=a(44770),p=a(43365),v=a(91434),f=a(1130),Z=a(14900);function b(h,T){if(1&h&&(t.TgZ(0,"mat-option",20),t._uU(1),t.qZA()),2&h){var m=T.$implicit;t.Q6J("value",m.value),t.xp6(1),t.hij(" ",m.display," ")}}function R(h,T){if(1&h&&(t.TgZ(0,"mat-option",20),t._uU(1),t.qZA()),2&h){var m=T.$implicit;t.Q6J("value",m.value),t.xp6(1),t.hij(" ",m.display," ")}}function I(h,T){if(1&h&&(t.TgZ(0,"mat-option",20),t._uU(1),t.qZA()),2&h){var m=T.$implicit;t.Q6J("value",m.value),t.xp6(1),t.hij(" ",m.display," ")}}function S(h,T){1&h&&t._UZ(0,"div")}function U(h,T){if(1&h){var m=t.EpF();t.TgZ(0,"form",1),t.TgZ(1,"div",2),t.TgZ(2,"mat-form-field",3),t.TgZ(3,"input",4),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.formula=u}),t.qZA(),t.qZA(),t.TgZ(4,"mat-form-field",5),t.TgZ(5,"mat-label"),t._uU(6,"Stereochemistry"),t.qZA(),t.TgZ(7,"mat-select",6),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.stereochemistry=u}),t.YNc(8,b,2,2,"mat-option",7),t.qZA(),t.qZA(),t.TgZ(9,"mat-form-field",8),t.TgZ(10,"mat-label"),t._uU(11,"Optical Activity"),t.qZA(),t.TgZ(12,"mat-select",9),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.opticalActivity=u}),t.YNc(13,R,2,2,"mat-option",7),t.qZA(),t.qZA(),t.TgZ(14,"mat-form-field",10),t.TgZ(15,"mat-label"),t._uU(16,"Additional Stereochemistry"),t.qZA(),t.TgZ(17,"mat-select",11),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.atropisomerism=u}),t.YNc(18,I,2,2,"mat-option",7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(19,"div",2),t.TgZ(20,"div",12),t.TgZ(21,"div",13),t._uU(22," Molecular Weight "),t.qZA(),t.TgZ(23,"div",14),t._uU(24),t.qZA(),t.qZA(),t.TgZ(25,"div",12),t.TgZ(26,"div",13),t._uU(27," Defined Stereocenters "),t.qZA(),t.TgZ(28,"div",14),t._uU(29),t.qZA(),t.qZA(),t.TgZ(30,"div",12),t.TgZ(31,"div",13),t._uU(32," EZ Centers "),t.qZA(),t.TgZ(33,"div",14),t._uU(34),t.qZA(),t.qZA(),t.TgZ(35,"div",12),t.TgZ(36,"div",13),t._uU(37," Structure Charge "),t.qZA(),t.TgZ(38,"div",14),t._uU(39),t.qZA(),t.qZA(),t.YNc(40,S,1,0,"div",15),t.qZA(),t.TgZ(41,"div",2),t.TgZ(42,"div",16),t.TgZ(43,"div",17),t._uU(44,"Stereo Comments"),t.qZA(),t.TgZ(45,"textarea",18),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.stereoComments=u}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(46,"div",2),t._UZ(47,"app-audit-info",19),t.qZA(),t.qZA()}if(2&h){var c=t.oxw();t.xp6(3),t.Q6J("ngModel",c.structure.formula),t.xp6(4),t.Q6J("ngModel",c.structure.stereochemistry),t.xp6(1),t.Q6J("ngForOf",c.stereoChemistryTypeList),t.xp6(4),t.Q6J("ngModel",c.structure.opticalActivity),t.xp6(1),t.Q6J("ngForOf",c.opticalActivityList),t.xp6(4),t.Q6J("ngModel",c.structure.atropisomerism),t.xp6(1),t.Q6J("ngForOf",c.atropisomerismList),t.xp6(6),t.hij(" ",c.structure.mwt," "),t.xp6(5),t.AsE(" ",c.structure.definedStereo," / ",c.structure.stereoCenters," "),t.xp6(5),t.hij(" ",c.structure.ezCenters," "),t.xp6(5),t.hij(" ",c.structure.charge," "),t.xp6(1),t.Q6J("ngIf",!c.hideAccess),t.xp6(5),t.Q6J("ngModel",c.structure.stereoComments),t.xp6(2),t.Q6J("source",c.structure)}}var N=function(){var h=function(){function T(m,c){(0,D.Z)(this,T),this.cvService=m,this.overlayContainerService=c,this.privateStructure={},this.stereoChemistryTypeList=[],this.opticalActivityList=[],this.atropisomerismList=[],this.hideAccess=!0,this.showSettings=!1,this.structureImported=new t.vpe,this.subscriptions=[]}return(0,E.Z)(T,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.optical=this.privateStructure.opticalActivity}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(c){c.unsubscribe()})}},{key:"structure",get:function(){return"NONE"===this.privateStructure.opticalActivity&&!this.inCV(this.opticalActivityList,this.privateStructure.opticalActivity)&&(this.privateStructure.opticalActivity="none"),this.privateStructure},set:function(c){null!=c&&(this.privateStructure=c,"NONE"===this.privateStructure.opticalActivity&&!this.inCV(this.opticalActivityList,this.privateStructure.opticalActivity)&&(this.privateStructure.opticalActivity="none"))}},{key:"getVocabularies",value:function(){var c=this;this.cvService.getDomainVocabulary("STEREOCHEMISTRY_TYPE","OPTICAL_ACTIVITY","ATROPISOMERISM").subscribe(function(s){c.stereoChemistryTypeList=s.STEREOCHEMISTRY_TYPE.list,c.opticalActivityList=s.OPTICAL_ACTIVITY.list,c.atropisomerismList=s.ATROPISOMERISM.list})}},{key:"updateAccess",value:function(c){this.privateStructure.access=c}},{key:"inCV",value:function(c,s){return!c||c.some(function(u){return s===u.value})}}]),T}();return h.\u0275fac=function(m){return new(m||h)(t.Y36(r.I),t.Y36(n.Xj))},h.\u0275cmp=t.Xpm({type:h,selectors:[["app-structure-form"]],inputs:{hideAccess:"hideAccess",showSettings:"showSettings",type:"type",structure:"structure"},outputs:{structureImported:"structureImported"},decls:1,vars:1,consts:[["class","structure-form",4,"ngIf"],[1,"structure-form"],[1,"form-row"],[1,"mol-formula"],["matInput","","placeholder","Molecular Formula","name","formula","required","",3,"ngModel","ngModelChange"],[1,"stereochemistry"],["name","stereochemistry",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[1,"optical-activity"],["name","opticalActivity",3,"ngModel","ngModelChange"],[1,"atropisomerism"],["name","additionalStereochemistry",3,"ngModel","ngModelChange"],[1,"key-value-pair"],[1,"key"],[1,"value"],[4,"ngIf"],[1,"stereo-comments"],[1,"textarea-label"],["placeholder","Enter text here","name","stereoComments",3,"ngModel","ngModelChange"],[3,"source"],[3,"value"]],template:function(m,c){1&m&&t.YNc(0,U,48,15,"form",0),2&m&&t.Q6J("ngIf",c.structure&&"structure"===c.type)},directives:[e.O5,d._Y,d.JL,d.F,M.KE,p.Nt,d.Fj,d.Q7,d.JJ,d.On,M.hX,v.gD,e.sg,f.ey,Z.n],styles:[".structure-form[_ngcontent-%COMP%]{padding:15px 7px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .mol-formula[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .stereochemistry[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .optical-activity[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .atropisomerism[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.polymer-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:4px}.stereo-comments[_ngcontent-%COMP%]{width:100%;padding-top:10px}.settings_container[_ngcontent-%COMP%]{padding-left:7px}.settings_container[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:45px;height:45px}.settings_container[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{width:35px;height:35px}.WARNING[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.ERROR[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.dupe-check[_ngcontent-%COMP%]{margin-bottom:5px}.internal-link[_ngcontent-%COMP%]{color:var(--link-primary-color)}"]}),h}()},22544:function(P,A,a){a.d(A,{h:function(){return c}});var D=a(39117),E=a(1884),t=a(12570),r=a(95758),n=a(86613),e=a(93392),d=a(36362),M=a(87317);function p(s,u){if(1&s&&(n.TgZ(0,"div"),n._uU(1),n.qZA()),2&s){var _=n.oxw();n.xp6(1),n.hij(" Are you sure you'd like to restore version ",_.version,"? ")}}function v(s,u){1&s&&(n.TgZ(0,"div"),n._uU(1," Restoring... "),n.qZA())}function f(s,u){1&s&&(n.TgZ(0,"div"),n._uU(1," Record restored successfullly. Close this dialog to redirect to the new version. "),n.qZA())}function Z(s,u){if(1&s){var _=n.EpF();n.TgZ(0,"div"),n.TgZ(1,"div"),n._uU(2," There was a problem restoring this version. "),n.qZA(),n.TgZ(3,"div"),n._uU(4,"Would you like to see the error details?"),n.qZA(),n.TgZ(5,"a",9),n.NdJ("click",function(){return n.CHM(_),n.oxw().status="error"}),n._uU(6,"Show errors"),n.qZA(),n.qZA()}}function b(s,u){if(1&s&&(n.TgZ(0,"div",13),n._uU(1),n.qZA()),2&s){var _=u.$implicit;n.xp6(1),n.hij(" ",_.message.message?_.message.message:_.message," ")}}function R(s,u){if(1&s&&(n.TgZ(0,"span"),n.YNc(1,b,2,1,"div",12),n.qZA()),2&s){var _=n.oxw(3);n.xp6(1),n.Q6J("ngForOf",_.validationMessages)}}function I(s,u){if(1&s&&(n.TgZ(0,"div"),n.YNc(1,R,2,1,"span",3),n.qZA()),2&s){var _=n.oxw(2);n.xp6(1),n.Q6J("ngIf",_.validationMessages.length>0)}}function S(s,u){if(1&s&&(n.TgZ(0,"div"),n._uU(1),n.qZA()),2&s){var _=n.oxw(2);n.xp6(1),n.hij(" ",_.serverError," ")}}function U(s,u){1&s&&(n.TgZ(0,"div"),n.TgZ(1,"i"),n._uU(2,"No error information returned from the server"),n.qZA(),n.qZA())}function N(s,u){if(1&s&&(n.TgZ(0,"div",10),n.TgZ(1,"div",11),n._uU(2," Error restoring record. Here is some information on the error to share with a system admin / developers. "),n.qZA(),n.YNc(3,I,2,1,"div",3),n.YNc(4,S,2,1,"div",3),n.YNc(5,U,3,0,"div",3),n.qZA()),2&s){var _=n.oxw();n.xp6(3),n.Q6J("ngIf",_.validationMessages),n.xp6(1),n.Q6J("ngIf",_.serverError),n.xp6(1),n.Q6J("ngIf",!_.validationMessages&&!_.serverError)}}function h(s,u){1&s&&(n.TgZ(0,"button",14),n._uU(1,"Cancel"),n.qZA())}function T(s,u){if(1&s){var _=n.EpF();n.TgZ(0,"button",15),n.NdJ("click",function(){return n.CHM(_),n.oxw().accept()}),n._uU(1,"Accept"),n.qZA()}}function m(s,u){if(1&s){var _=n.EpF();n.TgZ(0,"button",15),n.NdJ("click",function(){return n.CHM(_),n.oxw().close()}),n._uU(1,"Close"),n.qZA()}}var c=function(){var s=function(){function u(_,g,x,y){(0,D.Z)(this,u),this.loadingService=_,this.substanceService=g,this.dialogRef=x,this.data=y}return(0,E.Z)(u,[{key:"ngOnInit",value:function(){this.substance=this.data.substance,this.latest=this.data.latest,this.version=this.data.version,this.status="start"}},{key:"close",value:function(){this.dialogRef.close("success")}},{key:"accept",value:function(){var g=this;this.status="running",this.loadingService.setLoading(!0),this.substanceService.getSubstanceDetails(this.substance.uuid,this.version).subscribe(function(x){g.substance.changeReason="reverted to version "+g.version,g.substance.version=g.latest,g.substanceService.saveSubstance(g.substance).subscribe(function(y){g.substance=y,g.status="complete",g.loadingService.setLoading(!1)},function(y){g.status="failed",g.loadingService.setLoading(!1),y&&y.error&&y.error.validationMessages?g.validationMessages=y.error.validationMessages:g.serverError=y})},function(x){g.status="failed",g.loadingService.setLoading(!1),console.log(x)})}}]),u}();return s.\u0275fac=function(_){return new(_||s)(n.Y36(e.b),n.Y36(t.d),n.Y36(r.so),n.Y36(r.WI))},s.\u0275cmp=n.Xpm({type:s,selectors:[["app-substance-history-dialog"]],decls:15,vars:8,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"main-text"],[4,"ngIf"],["class","errors",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose","",4,"ngIf"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"click",4,"ngIf"],[1,"primary-color",3,"click"],[1,"errors"],[1,"error-title"],["class","validation-message",4,"ngFor","ngForOf"],[1,"validation-message"],["mat-flat-button","","color","primary","matDialogClose",""],["mat-flat-button","","color","primary",3,"click"]],template:function(_,g){1&_&&(n.TgZ(0,"div",0),n.TgZ(1,"h3"),n._uU(2,"Version Control"),n.qZA(),n.qZA(),n.TgZ(3,"div",1),n.TgZ(4,"div",2),n.YNc(5,p,2,1,"div",3),n.YNc(6,v,2,0,"div",3),n.YNc(7,f,2,0,"div",3),n.YNc(8,Z,7,0,"div",3),n.qZA(),n.YNc(9,N,6,3,"div",4),n.qZA(),n.TgZ(10,"div",5),n.YNc(11,h,2,0,"button",6),n._UZ(12,"span",7),n.YNc(13,T,2,0,"button",8),n.YNc(14,m,2,0,"button",8),n.qZA()),2&_&&(n.xp6(5),n.Q6J("ngIf","start"===g.status),n.xp6(1),n.Q6J("ngIf","running"===g.status),n.xp6(1),n.Q6J("ngIf","complete"===g.status),n.xp6(1),n.Q6J("ngIf","failed"===g.status),n.xp6(1),n.Q6J("ngIf","error"===g.status),n.xp6(2),n.Q6J("ngIf","complete"!==g.status),n.xp6(2),n.Q6J("ngIf","start"===g.status),n.xp6(1),n.Q6J("ngIf","complete"===g.status))},directives:[r.uh,r.xY,d.O5,d.sg,r.H8,M.lW,r.ZT],styles:[".main-text[_ngcontent-%COMP%]{font-size:18px;display:-ms-flexbox;display:flex;width:100%;margin-bottom:20px;min-height:50px}.validation-message[_ngcontent-%COMP%]{padding-bottom:12px}.primary-color[_ngcontent-%COMP%]{color:var(--link-primary-color)}.error-title[_ngcontent-%COMP%]{padding-bottom:20px}"]}),s}()}}]); +//# sourceMappingURL=common.23632879d4b541ae.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/common.69d9a0004ec88df7.js.map b/frontend/src/main/resources/static/common.23632879d4b541ae.js.map similarity index 97% rename from frontend/src/main/resources/static/common.69d9a0004ec88df7.js.map rename to frontend/src/main/resources/static/common.23632879d4b541ae.js.map index e8acd17..c620971 100644 --- a/frontend/src/main/resources/static/common.69d9a0004ec88df7.js.map +++ b/frontend/src/main/resources/static/common.23632879d4b541ae.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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","names":["NameResolverDialogComponent","dialogRef","gaService","data","this","name","molfile","close","sendEvent","v","i0","MAT_DIALOG_DATA","selectors","ctx","ReferencesManagerComponent","substanceService","D","substance","subRef","references","subUUID","subscription","getSubstanceDetails","pipe","take","subscribe","response","C","unsubscribe","compileReferences","forEach","indexOf","ref","uuid","matchedRef","push","time","DatePipe","transform","c","ReferencesManagerModule","CommonModule","MatTableModule","MatIconModule","MatTooltipModule","AmountFormDialogComponent","isNew","Object","keys","subsAmount","length","backup","JSON","parse","stringify","beforeClosed","f","cancel","p","StructureFormComponent","cvService","overlayContainerService","EventEmitter","getVocabularies","optical","privateStructure","opticalActivity","subscriptions","inCV","opticalActivityList","set","updatedStructure","getDomainVocabulary","l","stereoChemistryTypeList","STEREOCHEMISTRY_TYPE","list","OPTICAL_ACTIVITY","atropisomerismList","ATROPISOMERISM","access","vocab","property","some","r","value","T","ctx_r17","ctx_r19","SubstanceHistoryDialogComponent","loadingService","latest","version","status","setLoading","g","changeReason","saveSubstance","R","error","validationMessages","serverError","console","log","u"],"sources":["./src/app/core/name-resolver/name-resolver-dialog.component.ts","./src/app/core/name-resolver/name-resolver-dialog.component.html","./src/app/core/references-manager/references-manager.component.html","./src/app/core/references-manager/references-manager.component.ts","./src/app/core/references-manager/references-manager.module.ts","./src/app/core/substance-form/amount-form-dialog/amount-form-dialog.component.ts","./src/app/core/substance-form/amount-form-dialog/amount-form-dialog.component.html","./src/app/core/substance-form/structure/structure-form.component.html","./src/app/core/substance-form/structure/structure-form.component.ts","./src/app/core/substance-history-dialog/substance-history-dialog.component.html","./src/app/core/substance-history-dialog/substance-history-dialog.component.ts"],"sourcesContent":["import {Component, Inject, OnInit} from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\n\r\n@Component({\r\n selector: 'app-name-resolver-dialog',\r\n templateUrl: './name-resolver-dialog.component.html',\r\n styleUrls: ['./name-resolver-dialog.component.scss']\r\n})\r\nexport class NameResolverDialogComponent implements OnInit {\r\n name: string;\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n public gaService: GoogleAnalyticsService,\r\n @Inject(MAT_DIALOG_DATA) public data: any\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (this.data.name) {\r\n this.name = this.data.name;\r\n }\r\n }\r\n\r\n nameResolved(molfile: string): void {\r\n this.dialogRef.close(molfile);\r\n }\r\n\r\n dismissDialog(): void {\r\n this.gaService.sendEvent('nameResolverDialog', 'button:close', 'cancel resolver');\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","

    \r\n Get Structure From Name\r\n

    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n","\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    Index {{getParentIndex(ref)}}\r\n Source Text / Citation \r\n {{ref.citation}}\r\n {{ref.citation}}\r\n Source Type {{ref.docType}} Tags \r\n 0)\" > {{tag}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">hide \r\n 0)\" > {{ref.tags.length > 0? ref.tags[0]:null}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">more... \r\n File \r\n \r\n Date Accessed \r\n {{convertTimestamp(ref.lastEdited)}}\r\n Access \r\n \r\n \r\n \r\n \r\n
    \r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceReference} from '../substance/substance.model';\r\nimport {SubstanceService} from '../substance/substance.service';\r\nimport {DatePipe} from '@angular/common';\r\nimport { take } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-references-manager',\r\n templateUrl: './references-manager.component.html',\r\n styleUrls: ['./references-manager.component.scss']\r\n})\r\nexport class ReferencesManagerComponent implements OnInit {\r\n @Input() substance?: SubstanceDetail;\r\n @Input() subUUID?: string;\r\n @Input() references: Array;\r\n subRef: Array;\r\n matchedRef: SubstanceReference[] = [];\r\n showmore = false;\r\n displayedColumns: string[] = ['index', 'citation', 'docType', 'tags', 'files', 'lastEdited', 'access'];\r\n\r\n\r\n constructor(private substanceService: SubstanceService) { }\r\n\r\n ngOnInit() {\r\n if (this.substance) {\r\n this.subRef = this.substance.references;\r\n } else if (this.subUUID) {\r\n const subscription = this.substanceService.getSubstanceDetails(this.subUUID).pipe(take(1)).subscribe(response => {\r\n if (response) {\r\n this.substance = response;\r\n this.subRef = this.substance.references;\r\n }\r\n subscription.unsubscribe();\r\n }, error => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n if (this.subRef) {\r\n this.compileReferences();\r\n }\r\n }\r\n\r\n compileReferences() {\r\n if (this.substance.references) {\r\n this.substance.references.forEach(ref => {\r\n const uuid = ref.uuid;\r\n if (this.references.indexOf(uuid) > -1) {\r\n this.matchedRef.push(ref);\r\n }\r\n });\r\n }\r\n }\r\n\r\n convertTimestamp(time: number) {\r\n const datePipe = new DatePipe('en-US');\r\n return datePipe.transform(time, 'MMM dd, yyyy');\r\n }\r\n\r\n getParentIndex(uuid: SubstanceReference) {\r\n return (this.subRef.indexOf(uuid) + 1) ;\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatTableModule} from '@angular/material/table';\r\n\r\nimport {ReferencesManagerComponent} from './references-manager.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatTableModule,\r\n MatIconModule,\r\n MatTooltipModule\r\n ],\r\n\r\n declarations: [ReferencesManagerComponent],\r\n exports: [ReferencesManagerComponent],\r\n})\r\nexport class ReferencesManagerModule { }\r\n","import {Component, Inject, OnInit} from '@angular/core';\nimport {MAT_DIALOG_DATA, MatDialogRef} from '@angular/material/dialog';\nimport {SubstanceAmount} from '@gsrs-core/substance';\n\n@Component({\n selector: 'app-amount-form-dialog',\n templateUrl: './amount-form-dialog.component.html',\n styleUrls: ['./amount-form-dialog.component.scss']\n})\nexport class AmountFormDialogComponent implements OnInit {\n isNew: boolean;\n subsAmount: SubstanceAmount;\n backup: SubstanceAmount;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.isNew = Object.keys(data.subsAmount).length < 2;\n }\n\n ngOnInit() {\n this.subsAmount = this.data.subsAmount;\n this.data = this.data.subsAmount;\n this.backup = JSON.parse(JSON.stringify(this.data));\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(this.data));\n\n }\n\n save(): void {\n this.dialogRef.close(this.data);\n }\n\n cancel(): void {\n this.data.cancel = true;\n this.data = this.backup;\n this.dialogRef.close(this.data);\n }\n\n}\n","

    {{isNew ? 'Add' : 'Edit'}} Parameter

    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n
    \n","
    \n
    \n \n \n \n\n \n Stereochemistry\n \n \n {{type.display}}\n \n \n \n\n \n Optical Activity\n \n \n {{activity.display}}\n \n \n \n\n \n Additional Stereochemistry\n \n \n {{activity.display}}\n \n \n \n\n
    \n
    \n
    \n
    \n Molecular Weight\n
    \n
    \n {{structure.mwt}}\n
    \n
    \n
    \n
    \n Defined Stereocenters\n
    \n
    \n {{structure.definedStereo}} / {{structure.stereoCenters}}\n
    \n
    \n
    \n
    \n EZ Centers\n
    \n
    \n {{structure.ezCenters}}\n
    \n
    \n
    \n
    \n Structure Charge\n
    \n
    \n {{structure.charge}}\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    Stereo Comments
    \n \n
    \n
    \n
    \n \n
    \n
    ","import {Component, OnInit, Input, Output, EventEmitter, OnDestroy} from '@angular/core';\nimport { SubstanceMoiety, SubstanceStructure } from '@gsrs-core/substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { InterpretStructureResponse } from '../../structure/structure-post-response.model';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport {Subscription} from 'rxjs';\n\n@Component({\n selector: 'app-structure-form',\n templateUrl: './structure-form.component.html',\n styleUrls: ['./structure-form.component.scss']\n})\nexport class StructureFormComponent implements OnInit, OnDestroy {\n private privateStructure: SubstanceStructure | SubstanceMoiety = {};\n stereoChemistryTypeList: Array = [];\n opticalActivityList: Array = [];\n atropisomerismList: Array = [];\n optical: string;\n @Input() hideAccess = true;\n @Input() showSettings = false;\n @Input() type?: string;\n @Output() structureImported = new EventEmitter();\n private subscriptions: Array = [];\n\n\n constructor(\n private cvService: ControlledVocabularyService,\n private overlayContainerService: OverlayContainer\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.optical = this.privateStructure.opticalActivity;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set structure(updatedStructure: SubstanceStructure | SubstanceMoiety) {\n\n\n if (updatedStructure != null) {\n this.privateStructure = updatedStructure;\n if (this.privateStructure.opticalActivity === 'NONE' && !this.inCV(this.opticalActivityList, this.privateStructure.opticalActivity)) {\n this.privateStructure.opticalActivity = 'none';\n }\n }\n }\n\n get structure(): (SubstanceStructure | SubstanceMoiety) {\n if (this.privateStructure.opticalActivity === 'NONE' && !this.inCV(this.opticalActivityList, this.privateStructure.opticalActivity)) {\n this.privateStructure.opticalActivity = 'none';\n }\n return this.privateStructure;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('STEREOCHEMISTRY_TYPE', 'OPTICAL_ACTIVITY', 'ATROPISOMERISM').subscribe(response => {\n this.stereoChemistryTypeList = response['STEREOCHEMISTRY_TYPE'].list;\n this.opticalActivityList = response['OPTICAL_ACTIVITY'].list;\n this.atropisomerismList = response['ATROPISOMERISM'].list;\n });\n }\n\n updateAccess(access: Array): void {\n this.privateStructure.access = access;\n }\n\n\n inCV(vocab: Array, property: string): boolean {\n if (vocab) {\n return vocab.some(r => property === r.value);\n } else {\n return true;\n }\n\n }\n}\n","
    \n

    Version Control

    \n
    \n
    \n
    \n\n \n
    \n Are you sure you'd like to restore version {{version}}?\n
    \n
    \n Restoring...\n
    \n
    \n Record restored successfullly. Close this dialog to redirect to the new version.\n
    \n
    \n
    There was a problem restoring this version.
    \n
    Would you like to see the error details?
    \n Show errors\n\n
    \n
    \n\n
    \n
    \n Error restoring record. Here is some information on the error to share with a system admin / developers.\n\n
    \n
    \n 0\" >\n
    \n {{message.message.message? message.message.message : message.message}}\n
    \n
    \n
    \n\n
    \n {{this.serverError}}\n
    \n
    \n No error information returned from the server\n
    \n
    \n\n
    \n
    \n \n\n \n \n \n \n\n
    ","import { Component, OnInit, Inject } from '@angular/core';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { JsonDialogComponent } from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-history-dialog',\n templateUrl: './substance-history-dialog.component.html',\n styleUrls: ['./substance-history-dialog.component.scss']\n})\nexport class SubstanceHistoryDialogComponent implements OnInit {\n public substance: SubstanceDetail;\n public status: string;\n public latest: string;\n public version: any;\n public validationMessages: Array;\n public serverError: string;\n\n\n constructor(\n private loadingService: LoadingService,\n private substanceService: SubstanceService,\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n\n ) { }\n\n ngOnInit() {\n this.substance = this.data.substance;\n this.latest = this.data.latest;\n this.version = this.data.version;\n this.status = 'start';\n }\n\n close(): void {\n this.dialogRef.close('success');\n\n }\n\n accept() {\n this.status = 'running';\n this.loadingService.setLoading(true);\n this.substanceService.getSubstanceDetails(this.substance.uuid, this.version).subscribe( sub => {\n this.substance.changeReason = 'reverted to version ' + this.version;\n this.substance.version = this.latest;\n this.substanceService.saveSubstance(this.substance).subscribe( response => {\n this.substance = response;\n this.status = 'complete';\n this.loadingService.setLoading(false);\n }, error => {\n this.status = 'failed';\n this.loadingService.setLoading(false);\n if (error && error.error && error.error.validationMessages) {\n this.validationMessages = error.error.validationMessages;\n } else {\n this.serverError = error;\n }\n\n });\n }, error => {\n this.status = 'failed';\n this.loadingService.setLoading(false);\n console.log(error);\n });\n }\n\n }\n\n"],"sourceRoot":"webpack:///","file":"common.69d9a0004ec88df7.js"} \ No newline at end of file +{"version":3,"mappings":"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","names":["NameResolverDialogComponent","dialogRef","gaService","data","this","name","molfile","close","sendEvent","v","i0","MAT_DIALOG_DATA","selectors","ctx","ReferencesManagerComponent","substanceService","D","substance","subRef","references","subUUID","subscription","getSubstanceDetails","pipe","take","subscribe","response","C","unsubscribe","compileReferences","forEach","indexOf","ref","uuid","matchedRef","push","time","DatePipe","transform","l","ReferencesManagerModule","CommonModule","MatTableModule","MatIconModule","MatTooltipModule","AmountFormDialogComponent","isNew","Object","keys","subsAmount","length","backup","JSON","parse","stringify","beforeClosed","f","cancel","p","StructureFormComponent","cvService","overlayContainerService","EventEmitter","getVocabularies","optical","privateStructure","opticalActivity","subscriptions","inCV","opticalActivityList","set","updatedStructure","getDomainVocabulary","c","stereoChemistryTypeList","STEREOCHEMISTRY_TYPE","list","OPTICAL_ACTIVITY","atropisomerismList","ATROPISOMERISM","access","vocab","property","some","r","value","T","ctx_r17","ctx_r19","SubstanceHistoryDialogComponent","loadingService","latest","version","status","setLoading","g","changeReason","saveSubstance","y","error","validationMessages","serverError","console","log","u"],"sources":["./src/app/core/name-resolver/name-resolver-dialog.component.ts","./src/app/core/name-resolver/name-resolver-dialog.component.html","./src/app/core/references-manager/references-manager.component.html","./src/app/core/references-manager/references-manager.component.ts","./src/app/core/references-manager/references-manager.module.ts","./src/app/core/substance-form/amount-form-dialog/amount-form-dialog.component.ts","./src/app/core/substance-form/amount-form-dialog/amount-form-dialog.component.html","./src/app/core/substance-form/structure/structure-form.component.html","./src/app/core/substance-form/structure/structure-form.component.ts","./src/app/core/substance-history-dialog/substance-history-dialog.component.html","./src/app/core/substance-history-dialog/substance-history-dialog.component.ts"],"sourcesContent":["import {Component, Inject, OnInit} from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\n\r\n@Component({\r\n selector: 'app-name-resolver-dialog',\r\n templateUrl: './name-resolver-dialog.component.html',\r\n styleUrls: ['./name-resolver-dialog.component.scss']\r\n})\r\nexport class NameResolverDialogComponent implements OnInit {\r\n name: string;\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n public gaService: GoogleAnalyticsService,\r\n @Inject(MAT_DIALOG_DATA) public data: any\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (this.data.name) {\r\n this.name = this.data.name;\r\n }\r\n }\r\n\r\n nameResolved(molfile: string): void {\r\n this.dialogRef.close(molfile);\r\n }\r\n\r\n dismissDialog(): void {\r\n this.gaService.sendEvent('nameResolverDialog', 'button:close', 'cancel resolver');\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","

    \r\n Get Structure From Name\r\n

    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n","\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    Index {{getParentIndex(ref)}}\r\n Source Text / Citation \r\n {{ref.citation}}\r\n {{ref.citation}}\r\n Source Type {{ref.docType}} Tags \r\n 0)\" > {{tag}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">hide \r\n 0)\" > {{ref.tags.length > 0? ref.tags[0]:null}} 1\" class = \"morelink\" (click) = \"showmore = !showmore\">more... \r\n File \r\n \r\n Date Accessed \r\n {{convertTimestamp(ref.lastEdited)}}\r\n Access \r\n \r\n \r\n \r\n \r\n
    \r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport {SubstanceDetail, SubstanceReference} from '../substance/substance.model';\r\nimport {SubstanceService} from '../substance/substance.service';\r\nimport {DatePipe} from '@angular/common';\r\nimport { take } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-references-manager',\r\n templateUrl: './references-manager.component.html',\r\n styleUrls: ['./references-manager.component.scss']\r\n})\r\nexport class ReferencesManagerComponent implements OnInit {\r\n @Input() substance?: SubstanceDetail;\r\n @Input() subUUID?: string;\r\n @Input() references: Array;\r\n subRef: Array;\r\n matchedRef: SubstanceReference[] = [];\r\n showmore = false;\r\n displayedColumns: string[] = ['index', 'citation', 'docType', 'tags', 'files', 'lastEdited', 'access'];\r\n\r\n\r\n constructor(private substanceService: SubstanceService) { }\r\n\r\n ngOnInit() {\r\n if (this.substance) {\r\n this.subRef = this.substance.references;\r\n } else if (this.subUUID) {\r\n const subscription = this.substanceService.getSubstanceDetails(this.subUUID).pipe(take(1)).subscribe(response => {\r\n if (response) {\r\n this.substance = response;\r\n this.subRef = this.substance.references;\r\n }\r\n subscription.unsubscribe();\r\n }, error => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n if (this.subRef) {\r\n this.compileReferences();\r\n }\r\n }\r\n\r\n compileReferences() {\r\n if (this.substance.references) {\r\n this.substance.references.forEach(ref => {\r\n const uuid = ref.uuid;\r\n if (this.references.indexOf(uuid) > -1) {\r\n this.matchedRef.push(ref);\r\n }\r\n });\r\n }\r\n }\r\n\r\n convertTimestamp(time: number) {\r\n const datePipe = new DatePipe('en-US');\r\n return datePipe.transform(time, 'MMM dd, yyyy');\r\n }\r\n\r\n getParentIndex(uuid: SubstanceReference) {\r\n return (this.subRef.indexOf(uuid) + 1) ;\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatTableModule} from '@angular/material/table';\r\n\r\nimport {ReferencesManagerComponent} from './references-manager.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatTableModule,\r\n MatIconModule,\r\n MatTooltipModule\r\n ],\r\n\r\n declarations: [ReferencesManagerComponent],\r\n exports: [ReferencesManagerComponent],\r\n})\r\nexport class ReferencesManagerModule { }\r\n","import {Component, Inject, OnInit} from '@angular/core';\nimport {MAT_DIALOG_DATA, MatDialogRef} from '@angular/material/dialog';\nimport {SubstanceAmount} from '@gsrs-core/substance';\n\n@Component({\n selector: 'app-amount-form-dialog',\n templateUrl: './amount-form-dialog.component.html',\n styleUrls: ['./amount-form-dialog.component.scss']\n})\nexport class AmountFormDialogComponent implements OnInit {\n isNew: boolean;\n subsAmount: SubstanceAmount;\n backup: SubstanceAmount;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.isNew = Object.keys(data.subsAmount).length < 2;\n }\n\n ngOnInit() {\n this.subsAmount = this.data.subsAmount;\n this.data = this.data.subsAmount;\n this.backup = JSON.parse(JSON.stringify(this.data));\n this.dialogRef.beforeClosed().subscribe(() => this.dialogRef.close(this.data));\n\n }\n\n save(): void {\n this.dialogRef.close(this.data);\n }\n\n cancel(): void {\n this.data.cancel = true;\n this.data = this.backup;\n this.dialogRef.close(this.data);\n }\n\n}\n","

    {{isNew ? 'Add' : 'Edit'}} Parameter

    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n
    \n","
    \n
    \n \n \n \n\n \n Stereochemistry\n \n \n {{type.display}}\n \n \n \n\n \n Optical Activity\n \n \n {{activity.display}}\n \n \n \n\n \n Additional Stereochemistry\n \n \n {{activity.display}}\n \n \n \n\n
    \n
    \n
    \n
    \n Molecular Weight\n
    \n
    \n {{structure.mwt}}\n
    \n
    \n
    \n
    \n Defined Stereocenters\n
    \n
    \n {{structure.definedStereo}} / {{structure.stereoCenters}}\n
    \n
    \n
    \n
    \n EZ Centers\n
    \n
    \n {{structure.ezCenters}}\n
    \n
    \n
    \n
    \n Structure Charge\n
    \n
    \n {{structure.charge}}\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    Stereo Comments
    \n \n
    \n
    \n
    \n \n
    \n
    ","import {Component, OnInit, Input, Output, EventEmitter, OnDestroy} from '@angular/core';\nimport { SubstanceMoiety, SubstanceStructure } from '@gsrs-core/substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { InterpretStructureResponse } from '../../structure/structure-post-response.model';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport {Subscription} from 'rxjs';\n\n@Component({\n selector: 'app-structure-form',\n templateUrl: './structure-form.component.html',\n styleUrls: ['./structure-form.component.scss']\n})\nexport class StructureFormComponent implements OnInit, OnDestroy {\n private privateStructure: SubstanceStructure | SubstanceMoiety = {};\n stereoChemistryTypeList: Array = [];\n opticalActivityList: Array = [];\n atropisomerismList: Array = [];\n optical: string;\n @Input() hideAccess = true;\n @Input() showSettings = false;\n @Input() type?: string;\n @Output() structureImported = new EventEmitter();\n private subscriptions: Array = [];\n\n\n constructor(\n private cvService: ControlledVocabularyService,\n private overlayContainerService: OverlayContainer\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.optical = this.privateStructure.opticalActivity;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set structure(updatedStructure: SubstanceStructure | SubstanceMoiety) {\n\n\n if (updatedStructure != null) {\n this.privateStructure = updatedStructure;\n if (this.privateStructure.opticalActivity === 'NONE' && !this.inCV(this.opticalActivityList, this.privateStructure.opticalActivity)) {\n this.privateStructure.opticalActivity = 'none';\n }\n }\n }\n\n get structure(): (SubstanceStructure | SubstanceMoiety) {\n if (this.privateStructure.opticalActivity === 'NONE' && !this.inCV(this.opticalActivityList, this.privateStructure.opticalActivity)) {\n this.privateStructure.opticalActivity = 'none';\n }\n return this.privateStructure;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('STEREOCHEMISTRY_TYPE', 'OPTICAL_ACTIVITY', 'ATROPISOMERISM').subscribe(response => {\n this.stereoChemistryTypeList = response['STEREOCHEMISTRY_TYPE'].list;\n this.opticalActivityList = response['OPTICAL_ACTIVITY'].list;\n this.atropisomerismList = response['ATROPISOMERISM'].list;\n });\n }\n\n updateAccess(access: Array): void {\n this.privateStructure.access = access;\n }\n\n\n inCV(vocab: Array, property: string): boolean {\n if (vocab) {\n return vocab.some(r => property === r.value);\n } else {\n return true;\n }\n\n }\n}\n","
    \n

    Version Control

    \n
    \n
    \n
    \n\n \n
    \n Are you sure you'd like to restore version {{version}}?\n
    \n
    \n Restoring...\n
    \n
    \n Record restored successfullly. Close this dialog to redirect to the new version.\n
    \n
    \n
    There was a problem restoring this version.
    \n
    Would you like to see the error details?
    \n Show errors\n\n
    \n
    \n\n
    \n
    \n Error restoring record. Here is some information on the error to share with a system admin / developers.\n\n
    \n
    \n 0\" >\n
    \n {{message.message.message? message.message.message : message.message}}\n
    \n
    \n
    \n\n
    \n {{this.serverError}}\n
    \n
    \n No error information returned from the server\n
    \n
    \n\n
    \n
    \n \n\n \n \n \n \n\n
    ","import { Component, OnInit, Inject } from '@angular/core';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { JsonDialogComponent } from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'app-substance-history-dialog',\n templateUrl: './substance-history-dialog.component.html',\n styleUrls: ['./substance-history-dialog.component.scss']\n})\nexport class SubstanceHistoryDialogComponent implements OnInit {\n public substance: SubstanceDetail;\n public status: string;\n public latest: string;\n public version: any;\n public validationMessages: Array;\n public serverError: string;\n\n\n constructor(\n private loadingService: LoadingService,\n private substanceService: SubstanceService,\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n\n ) { }\n\n ngOnInit() {\n this.substance = this.data.substance;\n this.latest = this.data.latest;\n this.version = this.data.version;\n this.status = 'start';\n }\n\n close(): void {\n this.dialogRef.close('success');\n\n }\n\n accept() {\n this.status = 'running';\n this.loadingService.setLoading(true);\n this.substanceService.getSubstanceDetails(this.substance.uuid, this.version).subscribe( sub => {\n this.substance.changeReason = 'reverted to version ' + this.version;\n this.substance.version = this.latest;\n this.substanceService.saveSubstance(this.substance).subscribe( response => {\n this.substance = response;\n this.status = 'complete';\n this.loadingService.setLoading(false);\n }, error => {\n this.status = 'failed';\n this.loadingService.setLoading(false);\n if (error && error.error && error.error.validationMessages) {\n this.validationMessages = error.error.validationMessages;\n } else {\n this.serverError = error;\n }\n\n });\n }, error => {\n this.status = 'failed';\n this.loadingService.setLoading(false);\n console.log(error);\n });\n }\n\n }\n\n"],"sourceRoot":"webpack:///","file":"common.23632879d4b541ae.js"} \ No newline at end of file diff --git a/frontend/src/main/resources/static/common.69d9a0004ec88df7.js b/frontend/src/main/resources/static/common.69d9a0004ec88df7.js deleted file mode 100644 index d78379c..0000000 --- a/frontend/src/main/resources/static/common.69d9a0004ec88df7.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[8592],{99146:function(b,A,a){a.d(A,{a:function(){return M}});var D=a(78069),E=a(48047),t=a(95758),r=a(24874),n=a(76442),e=a(10837),d=a(87317),M=function(){var p=function(){function v(f,Z,y){(0,D.Z)(this,v),this.dialogRef=f,this.gaService=Z,this.data=y}return(0,E.Z)(v,[{key:"ngOnInit",value:function(){this.data.name&&(this.name=this.data.name)}},{key:"nameResolved",value:function(Z){this.dialogRef.close(Z)}},{key:"dismissDialog",value:function(){this.gaService.sendEvent("nameResolverDialog","button:close","cancel resolver"),this.dialogRef.close()}}]),v}();return p.\u0275fac=function(f){return new(f||p)(n.Y36(t.so),n.Y36(r.$),n.Y36(t.WI))},p.\u0275cmp=n.Xpm({type:p,selectors:[["app-name-resolver-dialog"]],decls:8,vars:1,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"startingName","structureSelected"],["mat-dialog-actions","",1,"flex-row"],[1,"middle-fill"],["mat-button","",3,"click"]],template:function(f,Z){1&f&&(n.TgZ(0,"h1",0),n._uU(1," Get Structure From Name\n"),n.qZA(),n.TgZ(2,"div",1),n.TgZ(3,"app-name-resolver",2),n.NdJ("structureSelected",function(P){return Z.nameResolved(P)}),n.qZA(),n.qZA(),n.TgZ(4,"div",3),n._UZ(5,"span",4),n.TgZ(6,"button",5),n.NdJ("click",function(){return Z.dismissDialog()}),n._uU(7,"Close"),n.qZA(),n.qZA()),2&f&&(n.xp6(3),n.Q6J("startingName",Z.name))},directives:[e.W,d.lW],styles:[""]}),p}()},11920:function(b,A,a){a.d(A,{V:function(){return E.V}}),a(73430);var E=a(38277)},73430:function(b,A,a){a.d(A,{C:function(){return H}});var D=a(78069),E=a(48047),t=a(12570),r=a(36362),n=a(59295),e=a(76442),d=a(97217),M=a(65590),p=a(40089);function v(o,c){1&o&&(e.TgZ(0,"th",13),e._uU(1," Index "),e.qZA())}function f(o,c){if(1&o&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&o){var i=c.$implicit,C=e.oxw();e.xp6(1),e.hij("",C.getParentIndex(i)," ")}}function Z(o,c){1&o&&(e.TgZ(0,"th",13),e._uU(1," Source Text / Citation "),e.qZA())}function y(o,c){if(1&o&&(e.TgZ(0,"a",17),e._uU(1),e.qZA()),2&o){var i=e.oxw().$implicit;e.Q6J("href",i.url,e.LSH),e.xp6(1),e.Oqu(i.citation)}}function P(o,c){if(1&o&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Oqu(i.citation)}}function I(o,c){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,y,2,2,"a",15),e.YNc(2,P,2,1,"span",16),e.qZA()),2&o){var i=c.$implicit;e.xp6(1),e.Q6J("ngIf",i.url),e.xp6(1),e.Q6J("ngIf",!i.url)}}function S(o,c){1&o&&(e.TgZ(0,"th",13),e._uU(1," Source Type "),e.qZA())}function U(o,c){if(1&o&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&o){var i=c.$implicit;e.xp6(1),e.hij(" ",i.docType," ")}}function N(o,c){1&o&&(e.TgZ(0,"th",13),e._uU(1," Tags "),e.qZA())}function h(o,c){if(1&o&&(e.TgZ(0,"span",20),e._uU(1),e.qZA()),2&o){var i=c.$implicit;e.xp6(1),e.hij(" ",i," ")}}function T(o,c){if(1&o){var i=e.EpF();e.TgZ(0,"a",21),e.NdJ("click",function(){e.CHM(i);var O=e.oxw(3);return O.showmore=!O.showmore}),e._uU(1,"hide"),e.qZA()}}function m(o,c){if(1&o&&(e.TgZ(0,"span"),e.YNc(1,h,2,1,"span",18),e.YNc(2,T,2,0,"a",19),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",i.tags),e.xp6(1),e.Q6J("ngIf",i.tags.length>1)}}function l(o,c){if(1&o){var i=e.EpF();e.TgZ(0,"a",21),e.NdJ("click",function(){e.CHM(i);var O=e.oxw(3);return O.showmore=!O.showmore}),e._uU(1,"more..."),e.qZA()}}function s(o,c){if(1&o&&(e.TgZ(0,"span"),e.TgZ(1,"span",20),e._uU(2),e.qZA(),e.YNc(3,l,2,0,"a",19),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(2),e.hij(" ",i.tags.length>0?i.tags[0]:null,""),e.xp6(1),e.Q6J("ngIf",i.tags.length>1)}}function u(o,c){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,m,3,2,"span",16),e.YNc(2,s,4,2,"span",16),e.qZA()),2&o){var i=c.$implicit,C=e.oxw();e.xp6(1),e.Q6J("ngIf",C.showmore&&i.tags&&i.tags.length>0),e.xp6(1),e.Q6J("ngIf",!C.showmore&&i.tags&&i.tags.length>0)}}function _(o,c){1&o&&(e.TgZ(0,"th",22),e._uU(1," File "),e.qZA())}function g(o,c){if(1&o&&(e.TgZ(0,"a",24),e._UZ(1,"mat-icon",25),e.qZA()),2&o){var i=e.oxw().$implicit;e.Q6J("href",i.uploadedFile,e.LSH)}}function x(o,c){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,g,2,1,"a",23),e.qZA()),2&o){var i=c.$implicit;e.xp6(1),e.Q6J("ngIf",i.uploadedFile)}}function R(o,c){1&o&&(e.TgZ(0,"th",13),e._uU(1," Date Accessed "),e.qZA())}function J(o,c){if(1&o&&(e.TgZ(0,"td",14),e._uU(1),e.qZA()),2&o){var i=c.$implicit,C=e.oxw();e.xp6(1),e.hij(" ",C.convertTimestamp(i.lastEdited)," ")}}function Y(o,c){1&o&&(e.TgZ(0,"th",22),e._uU(1," Access "),e.qZA())}function F(o,c){1&o&&e._UZ(0,"mat-icon",30)}function W(o,c){if(1&o&&(e.TgZ(0,"span",28),e.YNc(1,F,1,0,"mat-icon",29),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",i.access.length)}}function B(o,c){1&o&&e._UZ(0,"mat-icon",33)}function Q(o,c){if(1&o&&(e.TgZ(0,"span",31),e.YNc(1,B,1,0,"mat-icon",32),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",0===i.access.length)}}function K(o,c){if(1&o&&(e.TgZ(0,"td",14),e.YNc(1,W,2,1,"span",26),e.YNc(2,Q,2,1,"span",27),e.qZA()),2&o){var i=c.$implicit;e.xp6(1),e.Q6J("ngIf",i.access.length),e.xp6(1),e.Q6J("ngIf",!i.access.length)}}function k(o,c){1&o&&e._UZ(0,"tr",34)}function q(o,c){1&o&&e._UZ(0,"tr",35)}var H=function(){var o=function(){function c(i){(0,D.Z)(this,c),this.substanceService=i,this.matchedRef=[],this.showmore=!1,this.displayedColumns=["index","citation","docType","tags","files","lastEdited","access"]}return(0,E.Z)(c,[{key:"ngOnInit",value:function(){var C=this;if(this.substance)this.subRef=this.substance.references;else if(this.subUUID)var O=this.substanceService.getSubstanceDetails(this.subUUID).pipe((0,n.q)(1)).subscribe(function(L){L&&(C.substance=L,C.subRef=C.substance.references),O.unsubscribe()},function(L){O.unsubscribe()});this.subRef&&this.compileReferences()}},{key:"compileReferences",value:function(){var C=this;this.substance.references&&this.substance.references.forEach(function(O){C.references.indexOf(O.uuid)>-1&&C.matchedRef.push(O)})}},{key:"convertTimestamp",value:function(C){return new r.uU("en-US").transform(C,"MMM dd, yyyy")}},{key:"getParentIndex",value:function(C){return this.subRef.indexOf(C)+1}}]),c}();return o.\u0275fac=function(i){return new(i||o)(e.Y36(t.d))},o.\u0275cmp=e.Xpm({type:o,selectors:[["app-references-manager"]],inputs:{substance:"substance",subUUID:"subUUID",references:"references"},decls:24,vars:3,consts:[["mat-table","",3,"dataSource"],["matColumnDef","index"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","citation"],["matColumnDef","docType"],["matColumnDef","tags"],["matColumnDef","files"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","lastEdited"],["matColumnDef","access"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["target","_blank","appTrackLinkEvent","","evCategory","substanceOverview",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank","appTrackLinkEvent","","evCategory","substanceOverview",3,"href"],["class","badge",4,"ngFor","ngForOf"],["class","morelink",3,"click",4,"ngIf"],[1,"badge"],[1,"morelink",3,"click"],["mat-header-cell","","mat-sort-header",""],[3,"href",4,"ngIf"],[3,"href"],["color","primary","svgIcon","cloud_download",1,"blue"],["matTooltip","Not Public",4,"ngIf"],["matTooltip","Public",4,"ngIf"],["matTooltip","Not Public"],["svgIcon","lock","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock",1,"icon-align","blue-font"],["matTooltip","Public"],["svgIcon","lock_open","class","icon-align blue-font",4,"ngIf"],["svgIcon","lock_open",1,"icon-align","blue-font"],["mat-header-row",""],["mat-row",""]],template:function(i,C){1&i&&(e.TgZ(0,"table",0),e.ynx(1,1),e.YNc(2,v,2,0,"th",2),e.YNc(3,f,2,1,"td",3),e.BQk(),e.ynx(4,4),e.YNc(5,Z,2,0,"th",2),e.YNc(6,I,3,2,"td",3),e.BQk(),e.ynx(7,5),e.YNc(8,S,2,0,"th",2),e.YNc(9,U,2,1,"td",3),e.BQk(),e.ynx(10,6),e.YNc(11,N,2,0,"th",2),e.YNc(12,u,3,2,"td",3),e.BQk(),e.ynx(13,7),e.YNc(14,_,2,0,"th",8),e.YNc(15,x,2,1,"td",3),e.BQk(),e.ynx(16,9),e.YNc(17,R,2,0,"th",2),e.YNc(18,J,2,1,"td",3),e.BQk(),e.ynx(19,10),e.YNc(20,Y,2,0,"th",8),e.YNc(21,K,3,2,"td",3),e.BQk(),e.YNc(22,k,1,0,"tr",11),e.YNc(23,q,1,0,"tr",12),e.qZA()),2&i&&(e.Q6J("dataSource",C.matchedRef),e.xp6(22),e.Q6J("matHeaderRowDef",C.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",C.displayedColumns))},directives:[d.BZ,d.w1,d.fO,d.ge,d.Dz,d.ev,r.O5,r.sg,M.Hw,p.gM,d.as,d.XQ,d.nj,d.Gk],styles:[".mat-row[_ngcontent-%COMP%]:nth-child(odd){background-color:#f9f9f9}.morelink[_ngcontent-%COMP%]{color:#1565c0;padding-left:10px}"]}),o}()},38277:function(b,A,a){a.d(A,{V:function(){return M}});var D=a(48047),E=a(78069),t=a(36362),r=a(40089),n=a(65590),e=a(97217),d=a(76442),M=function(){var p=(0,D.Z)(function v(){(0,E.Z)(this,v)});return p.\u0275fac=function(f){return new(f||p)},p.\u0275mod=d.oAB({type:p}),p.\u0275inj=d.cJS({imports:[[t.ez,e.p0,n.Ps,r.AV]]}),p}()},27164:function(b,A,a){a.d(A,{O:function(){return d}});var D=a(78069),E=a(48047),t=a(95758),r=a(76442),n=a(33662),e=a(87317),d=function(){var M=function(){function p(v,f){(0,D.Z)(this,p),this.dialogRef=v,this.data=f,this.isNew=Object.keys(f.subsAmount).length<2}return(0,E.Z)(p,[{key:"ngOnInit",value:function(){var f=this;this.subsAmount=this.data.subsAmount,this.data=this.data.subsAmount,this.backup=JSON.parse(JSON.stringify(this.data)),this.dialogRef.beforeClosed().subscribe(function(){return f.dialogRef.close(f.data)})}},{key:"save",value:function(){this.dialogRef.close(this.data)}},{key:"cancel",value:function(){this.data.cancel=!0,this.data=this.backup,this.dialogRef.close(this.data)}}]),p}();return M.\u0275fac=function(v){return new(v||M)(r.Y36(t.so),r.Y36(t.WI))},M.\u0275cmp=r.Xpm({type:M,selectors:[["app-amount-form-dialog"]],decls:12,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"substanceAmount"],["amountForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(v,f){if(1&v&&(r.TgZ(0,"h1",0),r._uU(1),r.qZA(),r.TgZ(2,"div",1),r.TgZ(3,"div"),r._UZ(4,"app-amount-form",2,3),r.TgZ(6,"div",4),r._UZ(7,"span",5),r.TgZ(8,"button",6),r.NdJ("click",function(){return f.cancel()}),r._uU(9,"Cancel"),r.qZA(),r.TgZ(10,"button",7),r.NdJ("click",function(){return f.save()}),r._uU(11," Save "),r.qZA(),r.qZA(),r.qZA(),r.qZA()),2&v){var Z=r.MAs(5);r.xp6(1),r.hij("",f.isNew?"Add":"Edit"," Parameter"),r.xp6(3),r.Q6J("substanceAmount",f.subsAmount),r.xp6(6),r.Q6J("disabled",!Z)}},directives:[t.uh,t.xY,n.f,e.lW],styles:[""]}),M}()},17537:function(b,A,a){a.d(A,{h:function(){return N}});var D=a(78069),E=a(48047),t=a(76442),r=a(42827),n=a(66088),e=a(36362),d=a(90587),M=a(44770),p=a(43365),v=a(91434),f=a(1130),Z=a(14900);function y(h,T){if(1&h&&(t.TgZ(0,"mat-option",20),t._uU(1),t.qZA()),2&h){var m=T.$implicit;t.Q6J("value",m.value),t.xp6(1),t.hij(" ",m.display," ")}}function P(h,T){if(1&h&&(t.TgZ(0,"mat-option",20),t._uU(1),t.qZA()),2&h){var m=T.$implicit;t.Q6J("value",m.value),t.xp6(1),t.hij(" ",m.display," ")}}function I(h,T){if(1&h&&(t.TgZ(0,"mat-option",20),t._uU(1),t.qZA()),2&h){var m=T.$implicit;t.Q6J("value",m.value),t.xp6(1),t.hij(" ",m.display," ")}}function S(h,T){1&h&&t._UZ(0,"div")}function U(h,T){if(1&h){var m=t.EpF();t.TgZ(0,"form",1),t.TgZ(1,"div",2),t.TgZ(2,"mat-form-field",3),t.TgZ(3,"input",4),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.formula=u}),t.qZA(),t.qZA(),t.TgZ(4,"mat-form-field",5),t.TgZ(5,"mat-label"),t._uU(6,"Stereochemistry"),t.qZA(),t.TgZ(7,"mat-select",6),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.stereochemistry=u}),t.YNc(8,y,2,2,"mat-option",7),t.qZA(),t.qZA(),t.TgZ(9,"mat-form-field",8),t.TgZ(10,"mat-label"),t._uU(11,"Optical Activity"),t.qZA(),t.TgZ(12,"mat-select",9),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.opticalActivity=u}),t.YNc(13,P,2,2,"mat-option",7),t.qZA(),t.qZA(),t.TgZ(14,"mat-form-field",10),t.TgZ(15,"mat-label"),t._uU(16,"Additional Stereochemistry"),t.qZA(),t.TgZ(17,"mat-select",11),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.atropisomerism=u}),t.YNc(18,I,2,2,"mat-option",7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(19,"div",2),t.TgZ(20,"div",12),t.TgZ(21,"div",13),t._uU(22," Molecular Weight "),t.qZA(),t.TgZ(23,"div",14),t._uU(24),t.qZA(),t.qZA(),t.TgZ(25,"div",12),t.TgZ(26,"div",13),t._uU(27," Defined Stereocenters "),t.qZA(),t.TgZ(28,"div",14),t._uU(29),t.qZA(),t.qZA(),t.TgZ(30,"div",12),t.TgZ(31,"div",13),t._uU(32," EZ Centers "),t.qZA(),t.TgZ(33,"div",14),t._uU(34),t.qZA(),t.qZA(),t.TgZ(35,"div",12),t.TgZ(36,"div",13),t._uU(37," Structure Charge "),t.qZA(),t.TgZ(38,"div",14),t._uU(39),t.qZA(),t.qZA(),t.YNc(40,S,1,0,"div",15),t.qZA(),t.TgZ(41,"div",2),t.TgZ(42,"div",16),t.TgZ(43,"div",17),t._uU(44,"Stereo Comments"),t.qZA(),t.TgZ(45,"textarea",18),t.NdJ("ngModelChange",function(u){return t.CHM(m),t.oxw().structure.stereoComments=u}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(46,"div",2),t._UZ(47,"app-audit-info",19),t.qZA(),t.qZA()}if(2&h){var l=t.oxw();t.xp6(3),t.Q6J("ngModel",l.structure.formula),t.xp6(4),t.Q6J("ngModel",l.structure.stereochemistry),t.xp6(1),t.Q6J("ngForOf",l.stereoChemistryTypeList),t.xp6(4),t.Q6J("ngModel",l.structure.opticalActivity),t.xp6(1),t.Q6J("ngForOf",l.opticalActivityList),t.xp6(4),t.Q6J("ngModel",l.structure.atropisomerism),t.xp6(1),t.Q6J("ngForOf",l.atropisomerismList),t.xp6(6),t.hij(" ",l.structure.mwt," "),t.xp6(5),t.AsE(" ",l.structure.definedStereo," / ",l.structure.stereoCenters," "),t.xp6(5),t.hij(" ",l.structure.ezCenters," "),t.xp6(5),t.hij(" ",l.structure.charge," "),t.xp6(1),t.Q6J("ngIf",!l.hideAccess),t.xp6(5),t.Q6J("ngModel",l.structure.stereoComments),t.xp6(2),t.Q6J("source",l.structure)}}var N=function(){var h=function(){function T(m,l){(0,D.Z)(this,T),this.cvService=m,this.overlayContainerService=l,this.privateStructure={},this.stereoChemistryTypeList=[],this.opticalActivityList=[],this.atropisomerismList=[],this.hideAccess=!0,this.showSettings=!1,this.structureImported=new t.vpe,this.subscriptions=[]}return(0,E.Z)(T,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.optical=this.privateStructure.opticalActivity}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(l){l.unsubscribe()})}},{key:"structure",get:function(){return"NONE"===this.privateStructure.opticalActivity&&!this.inCV(this.opticalActivityList,this.privateStructure.opticalActivity)&&(this.privateStructure.opticalActivity="none"),this.privateStructure},set:function(l){null!=l&&(this.privateStructure=l,"NONE"===this.privateStructure.opticalActivity&&!this.inCV(this.opticalActivityList,this.privateStructure.opticalActivity)&&(this.privateStructure.opticalActivity="none"))}},{key:"getVocabularies",value:function(){var l=this;this.cvService.getDomainVocabulary("STEREOCHEMISTRY_TYPE","OPTICAL_ACTIVITY","ATROPISOMERISM").subscribe(function(s){l.stereoChemistryTypeList=s.STEREOCHEMISTRY_TYPE.list,l.opticalActivityList=s.OPTICAL_ACTIVITY.list,l.atropisomerismList=s.ATROPISOMERISM.list})}},{key:"updateAccess",value:function(l){this.privateStructure.access=l}},{key:"inCV",value:function(l,s){return!l||l.some(function(u){return s===u.value})}}]),T}();return h.\u0275fac=function(m){return new(m||h)(t.Y36(r.I),t.Y36(n.Xj))},h.\u0275cmp=t.Xpm({type:h,selectors:[["app-structure-form"]],inputs:{hideAccess:"hideAccess",showSettings:"showSettings",type:"type",structure:"structure"},outputs:{structureImported:"structureImported"},decls:1,vars:1,consts:[["class","structure-form",4,"ngIf"],[1,"structure-form"],[1,"form-row"],[1,"mol-formula"],["matInput","","placeholder","Molecular Formula","name","formula","required","",3,"ngModel","ngModelChange"],[1,"stereochemistry"],["name","stereochemistry",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[1,"optical-activity"],["name","opticalActivity",3,"ngModel","ngModelChange"],[1,"atropisomerism"],["name","additionalStereochemistry",3,"ngModel","ngModelChange"],[1,"key-value-pair"],[1,"key"],[1,"value"],[4,"ngIf"],[1,"stereo-comments"],[1,"textarea-label"],["placeholder","Enter text here","name","stereoComments",3,"ngModel","ngModelChange"],[3,"source"],[3,"value"]],template:function(m,l){1&m&&t.YNc(0,U,48,15,"form",0),2&m&&t.Q6J("ngIf",l.structure&&"structure"===l.type)},directives:[e.O5,d._Y,d.JL,d.F,M.KE,p.Nt,d.Fj,d.Q7,d.JJ,d.On,M.hX,v.gD,e.sg,f.ey,Z.n],styles:[".structure-form[_ngcontent-%COMP%]{padding:15px 7px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .mol-formula[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .stereochemistry[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .optical-activity[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .atropisomerism[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.polymer-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:4px}.stereo-comments[_ngcontent-%COMP%]{width:100%;padding-top:10px}.settings_container[_ngcontent-%COMP%]{padding-left:7px}.settings_container[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:45px;height:45px}.settings_container[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{width:35px;height:35px}.WARNING[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.ERROR[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.dupe-check[_ngcontent-%COMP%]{margin-bottom:5px}.internal-link[_ngcontent-%COMP%]{color:#448aff}"]}),h}()},22544:function(b,A,a){a.d(A,{h:function(){return l}});var D=a(78069),E=a(48047),t=a(12570),r=a(95758),n=a(76442),e=a(83448),d=a(36362),M=a(87317);function p(s,u){if(1&s&&(n.TgZ(0,"div"),n._uU(1),n.qZA()),2&s){var _=n.oxw();n.xp6(1),n.hij(" Are you sure you'd like to restore version ",_.version,"? ")}}function v(s,u){1&s&&(n.TgZ(0,"div"),n._uU(1," Restoring... "),n.qZA())}function f(s,u){1&s&&(n.TgZ(0,"div"),n._uU(1," Record restored successfullly. Close this dialog to redirect to the new version. "),n.qZA())}function Z(s,u){if(1&s){var _=n.EpF();n.TgZ(0,"div"),n.TgZ(1,"div"),n._uU(2," There was a problem restoring this version. "),n.qZA(),n.TgZ(3,"div"),n._uU(4,"Would you like to see the error details?"),n.qZA(),n.TgZ(5,"a",9),n.NdJ("click",function(){return n.CHM(_),n.oxw().status="error"}),n._uU(6,"Show errors"),n.qZA(),n.qZA()}}function y(s,u){if(1&s&&(n.TgZ(0,"div",13),n._uU(1),n.qZA()),2&s){var _=u.$implicit;n.xp6(1),n.hij(" ",_.message.message?_.message.message:_.message," ")}}function P(s,u){if(1&s&&(n.TgZ(0,"span"),n.YNc(1,y,2,1,"div",12),n.qZA()),2&s){var _=n.oxw(3);n.xp6(1),n.Q6J("ngForOf",_.validationMessages)}}function I(s,u){if(1&s&&(n.TgZ(0,"div"),n.YNc(1,P,2,1,"span",3),n.qZA()),2&s){var _=n.oxw(2);n.xp6(1),n.Q6J("ngIf",_.validationMessages.length>0)}}function S(s,u){if(1&s&&(n.TgZ(0,"div"),n._uU(1),n.qZA()),2&s){var _=n.oxw(2);n.xp6(1),n.hij(" ",_.serverError," ")}}function U(s,u){1&s&&(n.TgZ(0,"div"),n.TgZ(1,"i"),n._uU(2,"No error information returned from the server"),n.qZA(),n.qZA())}function N(s,u){if(1&s&&(n.TgZ(0,"div",10),n.TgZ(1,"div",11),n._uU(2," Error restoring record. Here is some information on the error to share with a system admin / developers. "),n.qZA(),n.YNc(3,I,2,1,"div",3),n.YNc(4,S,2,1,"div",3),n.YNc(5,U,3,0,"div",3),n.qZA()),2&s){var _=n.oxw();n.xp6(3),n.Q6J("ngIf",_.validationMessages),n.xp6(1),n.Q6J("ngIf",_.serverError),n.xp6(1),n.Q6J("ngIf",!_.validationMessages&&!_.serverError)}}function h(s,u){1&s&&(n.TgZ(0,"button",14),n._uU(1,"Cancel"),n.qZA())}function T(s,u){if(1&s){var _=n.EpF();n.TgZ(0,"button",15),n.NdJ("click",function(){return n.CHM(_),n.oxw().accept()}),n._uU(1,"Accept"),n.qZA()}}function m(s,u){if(1&s){var _=n.EpF();n.TgZ(0,"button",15),n.NdJ("click",function(){return n.CHM(_),n.oxw().close()}),n._uU(1,"Close"),n.qZA()}}var l=function(){var s=function(){function u(_,g,x,R){(0,D.Z)(this,u),this.loadingService=_,this.substanceService=g,this.dialogRef=x,this.data=R}return(0,E.Z)(u,[{key:"ngOnInit",value:function(){this.substance=this.data.substance,this.latest=this.data.latest,this.version=this.data.version,this.status="start"}},{key:"close",value:function(){this.dialogRef.close("success")}},{key:"accept",value:function(){var g=this;this.status="running",this.loadingService.setLoading(!0),this.substanceService.getSubstanceDetails(this.substance.uuid,this.version).subscribe(function(x){g.substance.changeReason="reverted to version "+g.version,g.substance.version=g.latest,g.substanceService.saveSubstance(g.substance).subscribe(function(R){g.substance=R,g.status="complete",g.loadingService.setLoading(!1)},function(R){g.status="failed",g.loadingService.setLoading(!1),R&&R.error&&R.error.validationMessages?g.validationMessages=R.error.validationMessages:g.serverError=R})},function(x){g.status="failed",g.loadingService.setLoading(!1),console.log(x)})}}]),u}();return s.\u0275fac=function(_){return new(_||s)(n.Y36(e.b),n.Y36(t.d),n.Y36(r.so),n.Y36(r.WI))},s.\u0275cmp=n.Xpm({type:s,selectors:[["app-substance-history-dialog"]],decls:15,vars:8,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"main-text"],[4,"ngIf"],["class","errors",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose","",4,"ngIf"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"click",4,"ngIf"],[1,"primary-color",3,"click"],[1,"errors"],[1,"error-title"],["class","validation-message",4,"ngFor","ngForOf"],[1,"validation-message"],["mat-flat-button","","color","primary","matDialogClose",""],["mat-flat-button","","color","primary",3,"click"]],template:function(_,g){1&_&&(n.TgZ(0,"div",0),n.TgZ(1,"h3"),n._uU(2,"Version Control"),n.qZA(),n.qZA(),n.TgZ(3,"div",1),n.TgZ(4,"div",2),n.YNc(5,p,2,1,"div",3),n.YNc(6,v,2,0,"div",3),n.YNc(7,f,2,0,"div",3),n.YNc(8,Z,7,0,"div",3),n.qZA(),n.YNc(9,N,6,3,"div",4),n.qZA(),n.TgZ(10,"div",5),n.YNc(11,h,2,0,"button",6),n._UZ(12,"span",7),n.YNc(13,T,2,0,"button",8),n.YNc(14,m,2,0,"button",8),n.qZA()),2&_&&(n.xp6(5),n.Q6J("ngIf","start"===g.status),n.xp6(1),n.Q6J("ngIf","running"===g.status),n.xp6(1),n.Q6J("ngIf","complete"===g.status),n.xp6(1),n.Q6J("ngIf","failed"===g.status),n.xp6(1),n.Q6J("ngIf","error"===g.status),n.xp6(2),n.Q6J("ngIf","complete"!==g.status),n.xp6(2),n.Q6J("ngIf","start"===g.status),n.xp6(1),n.Q6J("ngIf","complete"===g.status))},directives:[r.uh,r.xY,d.O5,d.sg,r.H8,M.lW,r.ZT],styles:[".main-text[_ngcontent-%COMP%]{font-size:18px;display:-ms-flexbox;display:flex;width:100%;margin-bottom:20px;min-height:50px}.validation-message[_ngcontent-%COMP%]{padding-bottom:12px}.primary-color[_ngcontent-%COMP%]{color:#448aff}.error-title[_ngcontent-%COMP%]{padding-bottom:20px}"]}),s}()}}]); -//# sourceMappingURL=common.69d9a0004ec88df7.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/index.html b/frontend/src/main/resources/static/index.html index 8a2417f..2dede48 100644 --- a/frontend/src/main/resources/static/index.html +++ b/frontend/src/main/resources/static/index.html @@ -1,6 +1,6 @@ - + - + GSRS @@ -23,11 +23,12 @@ - + + - + \ No newline at end of file diff --git a/frontend/src/main/resources/static/main.5b82d623a407e527.js b/frontend/src/main/resources/static/main.5b82d623a407e527.js deleted file mode 100644 index e56252c..0000000 --- a/frontend/src/main/resources/static/main.5b82d623a407e527.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[179],{79356:function(dt,K,n){"use strict";n.d(K,{_:function(){return ue}});var P=n(78069),t=n(48047),e=n(92938),d=n(18291),s=n(76442),h=n(95758),f=n(69093),T=n(83448),B=n(66088);function I(R,r){1&R&&(s.TgZ(0,"div",11),s.TgZ(1,"h4",12),s._uU(2,"Add Fragment to CV"),s.qZA(),s.qZA())}function v(R,r){1&R&&(s.TgZ(0,"div",11),s.TgZ(1,"h4",13),s._uU(2,"Fragment Structure Wizard"),s.qZA(),s.qZA())}function j(R,r){if(1&R&&(s.TgZ(0,"div"),s._UZ(1,"img",25),s.qZA()),2&R){var z=s.oxw(2);s.xp6(1),s.Q6J("src",z.privateTerm.simpleSrc,s.LSH)}}function Q(R,r){if(1&R&&(s.TgZ(0,"div"),s._UZ(1,"img",25),s.qZA()),2&R){var z=s.oxw(2);s.xp6(1),s.Q6J("src",z.privateTerm.fragmentSrc,s.LSH)}}function J(R,r){if(1&R){var z=s.EpF();s.TgZ(0,"div",4),s.TgZ(1,"mat-form-field",14),s.TgZ(2,"input",15),s.NdJ("ngModelChange",function(X){return s.CHM(z),s.oxw().privateTerm.value=X}),s.qZA(),s.qZA(),s.TgZ(3,"mat-form-field",16),s.TgZ(4,"input",17),s.NdJ("ngModelChange",function(X){return s.CHM(z),s.oxw().privateTerm.display=X}),s.qZA(),s.qZA(),s.TgZ(5,"mat-form-field",18),s.TgZ(6,"input",19),s.NdJ("ngModelChange",function(X){return s.CHM(z),s.oxw().privateTerm.description=X}),s.qZA(),s.qZA(),s.TgZ(7,"div",20),s.TgZ(8,"div"),s.TgZ(9,"mat-form-field",21),s.TgZ(10,"input",22),s.NdJ("ngModelChange",function(X){return s.CHM(z),s.oxw().privateTerm.simplifiedStructure=X})("input",function(){s.CHM(z);var X=s.oxw();return X.checkImg(X.term)}),s.qZA(),s.qZA(),s.qZA(),s.YNc(11,j,2,1,"div",23),s.qZA(),s.TgZ(12,"div",20),s.TgZ(13,"div"),s.TgZ(14,"mat-form-field",21),s.TgZ(15,"input",24),s.NdJ("ngModelChange",function(X){return s.CHM(z),s.oxw().privateTerm.fragmentStructure=X})("input",function(){s.CHM(z);var X=s.oxw();return X.checkImg(X.term)}),s.qZA(),s.qZA(),s.qZA(),s.YNc(16,Q,2,1,"div",23),s.qZA(),s.qZA()}if(2&R){var Y=s.oxw();s.xp6(2),s.Q6J("ngModel",Y.privateTerm.value),s.xp6(2),s.Q6J("ngModel",Y.privateTerm.display),s.xp6(2),s.Q6J("ngModel",Y.privateTerm.description),s.xp6(4),s.Q6J("ngModel",Y.privateTerm.simplifiedStructure),s.xp6(1),s.Q6J("ngIf",Y.privateTerm.simpleSrc),s.xp6(4),s.Q6J("ngModel",Y.privateTerm.fragmentStructure),s.xp6(1),s.Q6J("ngIf",Y.privateTerm.fragmentSrc)}}function Z(R,r){if(1&R){var z=s.EpF();s.TgZ(0,"div"),s.TgZ(1,"button",6),s.NdJ("click",function(){var ne=s.CHM(z).$implicit;return s.oxw(2).fragmentType(ne.domain)}),s._uU(2),s.qZA(),s.qZA()}if(2&R){var Y=r.$implicit;s.xp6(2),s.Oqu(Y.domain)}}function A(R,r){if(1&R&&(s.TgZ(0,"div",4),s.YNc(1,Z,3,1,"div",8),s.qZA()),2&R){var z=s.oxw();s.xp6(1),s.Q6J("ngForOf",z.domains)}}function N(R,r){if(1&R){var z=s.EpF();s.TgZ(0,"div"),s.TgZ(1,"a",26),s.NdJ("click",function(){var ne=s.CHM(z).$implicit;return s.oxw().setTermStructure(ne.value)}),s._UZ(2,"img",25),s.qZA(),s.qZA()}if(2&R){var Y=r.$implicit;s.xp6(2),s.s9C("src",Y.url,s.LSH)}}function E(R,r){1&R&&(s.TgZ(0,"div",27),s.TgZ(1,"div"),s._uU(2,"Click on a form to set the fragment term structure"),s.qZA(),s.qZA())}function k(R,r){1&R&&(s.TgZ(0,"div",27),s.TgZ(1,"div"),s._uU(2,'Set Connection points using "*" atoms in the periodic table element selector.'),s.qZA(),s.qZA())}function q(R,r){if(1&R&&(s.TgZ(0,"div",35),s.TgZ(1,"span"),s._uU(2),s.qZA(),s._uU(3),s.qZA()),2&R){var z=r.$implicit;s.xp6(1),s.Gre("",z.messageType," type"),s.xp6(1),s.hij("",z.messageType," :"),s.xp6(1),s.Oqu(z.message)}}function ce(R,r){if(1&R&&(s.TgZ(0,"div",33),s.TgZ(1,"div"),s.TgZ(2,"b"),s._uU(3,"CV not valid:"),s.qZA(),s.qZA(),s.YNc(4,q,4,5,"div",34),s.qZA()),2&R){var z=s.oxw(2);s.xp6(4),s.Q6J("ngForOf",z.validationMessages)}}function ie(R,r){if(1&R){var z=s.EpF();s.TgZ(0,"div",28),s.YNc(1,ce,5,1,"div",29),s.TgZ(2,"div",30),s.TgZ(3,"div",31),s._uU(4),s.qZA(),s._UZ(5,"span",5),s.TgZ(6,"button",6),s.NdJ("click",function(){return s.CHM(z),s.oxw().close()}),s._uU(7,"Cancel"),s.qZA(),s.TgZ(8,"button",32),s.NdJ("click",function(){return s.CHM(z),s.oxw().save()}),s._uU(9," Save "),s.qZA(),s.qZA(),s.qZA()}if(2&R){var Y=s.oxw();s.xp6(1),s.Q6J("ngIf",Y.validationMessages.length>0),s.xp6(3),s.Oqu(Y.message),s.xp6(4),s.Q6J("disabled",!Y.privateTerm.fragmentStructure||!Y.privateTerm.description||""===Y.privateTerm.value)}}function H(R,r){if(1&R){var z=s.EpF();s.TgZ(0,"div",28),s.TgZ(1,"div",30),s.TgZ(2,"div",31),s._uU(3),s.qZA(),s._UZ(4,"span",5),s.TgZ(5,"button",6),s.NdJ("click",function(){return s.CHM(z),s.oxw().close()}),s._uU(6,"Cancel"),s.qZA(),s.qZA(),s.qZA()}if(2&R){var Y=s.oxw();s.xp6(3),s.Oqu(Y.message)}}var V=function(r){return{height:r}},ue=function(){var R=function(){function r(z,Y,se,X,ne,ve){(0,P.Z)(this,r),this.CVService=z,this.loadingService=Y,this.structureService=se,this.dialogRef=X,this.overlayContainerService=ne,this.data=ve,this.termUpdated=new s.vpe,this.forms=[],this.term2={value:"",display:""},this.privateTerm={value:"",display:""},this.asDialog=!1,this.validationMessages=[],this.vocabulary=ve.vocabulary,this.vocab=ve.vocabulary.domain,this.privateTerm.value=ve.term,this.privateTerm.display=ve.term,this.asDialog=!0,this.adminPanel=ve.adminPanel}return(0,t.Z)(r,[{key:"term",set:function(Y){null!=Y&&(this.privateTerm=Y)}},{key:"standardized",get:function(){return this.privateTerm}},{key:"close",value:function(){this.dialogRef.close()}},{key:"save",value:function(){var Y=this,se=!1;if(this.vocabulary.terms.forEach(function(ne){ne.value===Y.privateTerm.value&&(se=!0)}),se)this.message="Term already exists",setTimeout(function(){Y.message=""},1e3);else{var X=JSON.parse(JSON.stringify(this.privateTerm));delete X.simpleSrc,delete X.fragmentSrc,this.vocabulary.terms.push(X),this.CVService.validateVocab(this.vocabulary).subscribe(function(ne){ne&&ne.valid?Y.CVService.addVocabTerm(Y.vocabulary).subscribe(function(ve){ve.terms&&ve.terms.length===Y.vocabulary.terms.length&&(Y.message="Term "+Y.privateTerm.value+" Added to "+Y.vocabulary.domain,setTimeout(function(){Y.dialogRef.close(Y.privateTerm)},3e3))},function(ve){Y.vocabulary.terms.pop();var Re="Server Error";ve.error&&ve.error.message?Re+=" - "+ve.error.message:ve.message&&(Re+=" - "+ve.message),Y.message=Re}):(ne.validationMessages&&ne.validationMessages.forEach(function(ve){Y.validationMessages.push(ve)}),Y.vocabulary.terms.pop())},function(ne){console.log(ne),Y.vocabulary.terms.pop();var ve="Validation Error";ne.error&&ne.error.message?ve+=" - "+ne.error.message:ne.message&&(ve+=" - "+ne.message),Y.message=ve})}}},{key:"ngOnInit",value:function(){this.privateTerm.simplifiedStructure&&(this.privateTerm.simpleSrc=this.CVService.getStructureUrl(this.privateTerm.simplifiedStructure)),this.privateTerm.fragmentStructure&&(this.privateTerm.fragmentSrc=this.CVService.getStructureUrl(this.privateTerm.fragmentStructure)),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"molvecUpdate",value:function(Y){this.editor.setMolecule(Y)}},{key:"editorOnLoad",value:function(Y){var se=this;if(this.loadingService.setLoading(!1),this.editor=Y,this.privateTerm.value&&this.privateTerm.value.fragmentStructure){var X=this.privateTerm.value.fragmentStructure.substring(0,this.privateTerm.value.fragmentStructure.indexOf(" "));this.structureService.interpretStructure(X).subscribe(function(ne){if(ne.structure&&ne.structure.molfile){var ve=ne.structure.molfile;ve=ve.replace(/ A /g," * "),se.editor.setMolecule(ve)}})}setTimeout(function(){se.overlayContainer.style.zIndex="1003",se.overlayContainer.style.zIndex="10003"})}},{key:"getCombination",value:function(Y,se){for(var X=Y,ne=[],ve=0;ve1;Y--)se*=Y;return se}},{key:"forEachCombination",value:function(Y,se){for(var X=0;X1;_t--)wt*=_t;return wt}function Ie(_t,wt){for(var qt=_t,Lt=[],Rt=0;Rt<_t.length;Rt++){var it=wt%qt.length;Lt.push(qt[it]);for(var Qe=[],ot=0;ot0&&Y.adminPanel),s.xp6(1),s.Q6J("ngIf",(!Y.forms||Y.forms.length<=0)&&Y.adminPanel),s.xp6(1),s.Q6J("ngIf",(!Y.vocab||Y.asDialog)&&!Y.adminPanel),s.xp6(1),s.Q6J("ngIf",Y.adminPanel))},styles:[".editor-container[_ngcontent-%COMP%]{width:920px;min-height:380px;margin:auto}.cell[_ngcontent-%COMP%]{margin-right:5px}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;width:100%}.two[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.action-button-container[_ngcontent-%COMP%]{width:50%;margin:20px auto auto}}@media (max-width: 970px){.structure-editor-actions-container[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.editor-container[_ngcontent-%COMP%], .search-actions[_ngcontent-%COMP%]{min-width:633px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%], .jsdraw[_ngcontent-%COMP%] .search-actions[_ngcontent-%COMP%]{min-width:710px}}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row} table{z-index:20000!important}.structure-img[_ngcontent-%COMP%]{margin-top:-20px;margin-bottom:-20px}.validation[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%}.message[_ngcontent-%COMP%]{padding-top:5px;padding-left:15px}.ERROR[_ngcontent-%COMP%]{background-color:red;color:#a94442;background-color:#f2dede;padding:4px 5px;margin-right:5px;border-radius:5px}.WARNING[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3;padding:4px 5px;margin-right:5px;border-radius:5px}.INFO[_ngcontent-%COMP%]{color:#000;background-color:#d3d3d3;padding:4px 5px;margin-right:5px;border-radius:5px}"]}),R}()},88951:function(dt,K,n){"use strict";n.d(K,{e:function(){return v}});var P=n(95106),t=n(78069),e=n(48047),p=n(76442),d=n(92507),s=n(50253),h=n(83336),f=n(59295),T=n(50635),B=n(28784),I=n(36362),v=function(){var j=function(){function Q(J,Z,A){var N=this;(0,t.Z)(this,Q),this.configService=J,this.http=Z,this.platformId=A,this._authUpdate=new s.x,this.isLoading=!0,this.fetchAuth().pipe((0,f.q)(1)).subscribe(function(E){N._auth=E&&null!=E.computedToken?E:null,N._authUpdate.next(N._auth),N.isLoading=!1},function(E){N._authUpdate.next(null),N.isLoading=!1})}return(0,e.Z)(Q,[{key:"auth",get:function(){return this._auth}},{key:"checkAuth",value:function(){var Z="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(Z,"whoami"))}},{key:"login",value:function(Z,A){var N=this,E={headers:{"auth-username":Z,"auth-password":A}},k="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(k,"whoami"),E).pipe((0,T.U)(function(q){return q&&q.computedToken?(N._auth=q,(0,I.NF)(N.platformId)&&sessionStorage.setItem("authToken",q.computedToken)):N._auth=null,N._authUpdate.next(N._auth),N._auth}))}},{key:"getAuth",value:function(){var Z=this;return new h.y(function(A){null!=Z._auth?A.next(Z._auth):Z.isLoading||(Z.isLoading=!0,Z.fetchAuth().pipe((0,f.q)(1)).subscribe(function(N){Z._auth=N&&null!=N.computedToken?N:null,A.next(Z._auth),Z._authUpdate.next(Z._auth),Z.isLoading=!1},function(N){Z.logout(),Z.isLoading=!1})),Z._authUpdate.subscribe(function(N){A.next(N)},function(N){A.next(null)})})}},{key:"logout",value:function(){var Z=this;if((0,I.NF)(this.platformId)){sessionStorage.removeItem("authToken");var E,A=document.cookie.split(";"),N=(0,P.Z)(A);try{for(N.s();!(E=N.n()).done;){var k=E.value,q=k.indexOf("="),ce=q>-1?k.substr(0,q):k;document.cookie=ce+"=;expires=Thu, 01 Jan 1970 00:00:00 GMT"}}catch(H){N.e(H)}finally{N.f()}}var ie="".concat(this.configService.configData.apiBaseUrl,"logout");this.http.get(ie).subscribe(function(){Z._auth=null,Z._authUpdate.next(null)},function(H){Z._auth=null,Z._authUpdate.next(null)})}},{key:"getUser",value:function(){return this._auth&&this._auth.identifier?this._auth.identifier:""}},{key:"hasRoles",value:function(){for(var Z=arguments.length,A=new Array(Z),N=0;N-1)return!0}}catch(H){k.e(H)}finally{k.f()}return!1}},{key:"hasAnyRolesAsync",value:function(){for(var Z=this,A=arguments.length,N=new Array(A),E=0;E-1){var Q=j.apiBaseUrl.split("/");j.apiUrlDomain="".concat(Q[0],"//").concat(Q[2])}else j.apiUrlDomain="";null==j.googleAnalyticsId&&null!=B.googleAnalyticsId&&(j.googleAnalyticsId=B.googleAnalyticsId),null==j.version&&null!=B.version&&(j.version=B.version),null==j.contactEmail&&null!=B.contactEmail&&(j.contactEmail=B.contactEmail);var J=e.slice();if(j.navItems&&j.navItems.length){var Z=j.navItems.filter(function(A){if(null!=A.children&&A.children.length>0){for(var N=!0,E=0;E0&&ue.push(E.fetchVocabulariesFromServer.apply(E,V)),ue.length>0)var r=(0,T.D)(ue).subscribe(function(z){z.forEach(function(Y){H=Object.assign(H,Y)}),R.next(H),R.complete(),r.unsubscribe()},function(z){R.error(z),R.complete(),r.unsubscribe()});else R.next(H),R.complete()})}},{key:"getStructure",value:function(E){return this.http.get(this.baseUrl+"render?structure="+E+"&size=150&standardize=true")}},{key:"getStructureUrl",value:function(E){return E=E.replace(/[;]/g,"%3B").replace(/[#]/g,"%23").replace(/[+]/g,"%2B").replace(/[|]/g,"%7C"),this.baseUrl+"render?structure="+E+"&size=150&standardize=true"}},{key:"getStructureUrlFragment",value:function(E){return E=E.replace(/%/g,"%25").replace(/#/g,"%23").replace(/[;]/g,"%3B").replace(/[+]/g,"%2B"),this.baseUrl+"render?structure="+E+"&size=150&standardize=true"}},{key:"search",value:function(E,k){var q=this;return new f.y(function(ce){var ie=q.getDomainVocabulary(E).subscribe(function(H){var V=H[E].list.filter(function(R){return R.value.toLowerCase().indexOf(k.toLowerCase())>-1}),ue=[];null!=V&&V.length&&(ue=V.sort(function(R,r){return Rr?1:0})),ce.next(ue),ie.unsubscribe()})})}},{key:"fetchFullVocabulary",value:function(E){var k="".concat(this.apiBaseUrl,"vocabularies/search"),q=new d.LE;q=q.append("top","100000");var ce="";return this.vocabularyLoadingIndicators[E]=!0,null==this.vocabularySubject[E]&&(this.vocabularySubject[E]=new h.x),ce+="root_domain:".concat(E),q=q.append("q",ce),this.http.get(k,{params:q})}},{key:"validateVocab",value:function(E){var k="".concat(this.apiBaseUrl,"vocabularies/@validate");return this.http.post(k,E)}},{key:"addVocabTerm",value:function(E){var k="".concat(this.apiBaseUrl,"vocabularies");return this.http.put(k,E)}},{key:"getFragmentCV",value:function(){var E="".concat(this.apiBaseUrl,"vocabularies/search?facet=ix.Class/ix.ginas.models.v1.FragmentControlledVocabulary");return this.http.get(E)}},{key:"fetchVocabulariesFromServer",value:function(){var E=this,k="".concat(this.apiBaseUrl,"vocabularies/search"),q=new d.LE;q=q.append("top","100000");for(var ce=arguments.length,ie=new Array(ce),H=0;H0&&(R+=" OR "),R+="root_domain:".concat(Y)});var z={params:q=q.append("q",R)};return this.http.get(k,z).pipe((0,I.U)(function(Y){return Y.content&&Y.content.length?(Y.content.forEach(function(se){var X={};se.terms&&se.terms.length&&(X[se.domain]||(X[se.domain]={dictionary:{}}),X[se.domain].list=se.terms.sort(function(ne,ve){var Re=ne.display&&ne.display.toUpperCase()||ne.value&&ne.value.toUpperCase()||"",Ie=ve.display&&ve.display.toUpperCase()||ve.value&&ve.value.toUpperCase()||"";return ReIe?1:0}),se.terms.forEach(function(ne){X[se.domain].dictionary[ne.value]=ne})),null!=E.vocabularySubject[se.domain]&&(E.vocabularySubject[se.domain].next(X),E.vocabularySubject[se.domain].complete(),E.vocabularySubject[se.domain]=null,r[se.domain]=X[se.domain],E.vocabularyDictionary[se.domain]=r[se.domain],E.vocabularyLoadingIndicators[se.domain]=!1),ue.splice(ue.indexOf(se.domain),1)}),ue&&ue.length&&ue.forEach(function(se){var X={};X[se]={dictionary:{},list:[]},E.vocabularySubject[se].next(X),E.vocabularySubject[se].complete(),E.vocabularySubject[se]=null})):V.forEach(function(se,X){var ne={};ne[se]={dictionary:{},list:[]},E.vocabularySubject[se].next(ne),E.vocabularySubject[se].complete(),E.vocabularyLoadingIndicators[se]=!1}),r}))}}]),A}(s.q);return Q.\u0275fac=function(Z){return new(Z||Q)(v.LFG(d.eN),v.LFG(B.E))},Q.\u0275prov=v.Yz7({token:Q,factory:Q.\u0275fac,providedIn:"root"}),Q}()},18291:function(dt,K,n){"use strict";n.d(K,{I:function(){return P.I}});var P=n(42827)},64061:function(dt,K,n){"use strict";n.d(K,{o:function(){return h}});var P=n(78069),t=n(48047),e=n(76442),p=n(98002),d=n(49143),s=n(88828),h=function(){var f=function(){function T(){(0,P.Z)(this,T)}return(0,t.Z)(T,null,[{key:"forRoot",value:function(){var I=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],v=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return{ngModule:T,providers:[d.U,{provide:p.Z6,useValue:I,multi:!0},{provide:s.Mr,useValue:I,multi:!0},{provide:s.NE,useValue:v,multi:!0}]}}},{key:"forModule",value:function(I){return{ngModule:T,providers:[{provide:e.deG,useValue:I,multi:!0},{provide:p.Z6,useValue:I,multi:!0},{provide:s.fC,useValue:I}]}}},{key:"forChild",value:function(I){return{ngModule:T,providers:[{provide:e.deG,useValue:I,multi:!0},{provide:p.Z6,useValue:[],multi:!0},{provide:s.x7,useValue:I}]}}}]),T}();return f.\u0275fac=function(B){return new(B||f)},f.\u0275mod=e.oAB({type:f}),f.\u0275inj=e.cJS({}),f}()},49143:function(dt,K,n){"use strict";n.d(K,{U:function(){return B}});var P=n(78069),t=n(48047),e=n(76442),p=n(25474),d=n(83336),s=n(72957),h=n(10745),f=n(49525),T=n(88828),B=function(){var I=function(){function v(j,Q,J){(0,P.Z)(this,v),this.manifests=j,this.injector=Q,this.compiler=J}return(0,t.Z)(v,[{key:"getComponentFactory",value:function(Q,J){var Z=this,N=this.manifests.reduce(function(k,q){return k.concat(q)},[]).find(function(k){return k.componentId===Q});if(!N)return(0,p._)('DynamicComponentLoader: Unknown componentId "'.concat(Q,'"'));var E=N.loadChildren;if(!E)throw new Error("".concat(Q," unknown!"));return this._wrapIntoObservable(E()).pipe((0,f.z)(function(k){return Z.loadFactory(k,Q,J)}))}},{key:"loadFactory",value:function(Q,J,Z){var A=this,N=(0,e.hM9)(Q,Z||this.injector),E=N.injector.get(T.x7,null);if(!E){var k=N.injector.get(T.fC,null);if(!k)throw new Error("DynamicComponentLoader: Dynamic module for"+' componentId "'.concat(J,'" does not contain')+" DYNAMIC_COMPONENT or DYNAMIC_MODULE as a provider.");if(k.componentId!==J)throw new Error("DynamicComponentLoader: Dynamic module for"+"".concat(J," does not match manifest."));var q=k.loadChildren;if(!q)throw new Error("".concat(J," unknown!"));return this._wrapIntoObservable(q()).pipe((0,f.z)(function(ce){var ie;return ie=A.compiler instanceof e.Sil?ce:A.compiler.compileModuleSync(ce),A.loadFactory(ie,J,Z)})).toPromise()}return Promise.resolve(N.componentFactoryResolver.resolveComponentFactory(E))}},{key:"_wrapIntoObservable",value:function(Q){return Q instanceof d.y?Q:Q instanceof Promise?(0,s.D)(Q):(0,h.of)(Q)}}]),v}();return I.\u0275fac=function(j){return new(j||I)(e.LFG(T.Mr),e.LFG(e.zs3),e.LFG(e.Sil))},I.\u0275prov=e.Yz7({token:I,factory:I.\u0275fac}),I}()},88828:function(dt,K,n){"use strict";n.d(K,{x7:function(){return t},fC:function(){return e},Mr:function(){return p},NE:function(){return d}});var P=n(76442),t=new P.OlP("DYNAMIC_COMPONENT"),e=new P.OlP("DYNAMIC_MODULE"),p=new P.OlP("LAZY_LOADED_COMPONENT_MANIFESTS"),d=new P.OlP("DYNAMIC_COMPONENT_MANIFESTS")},75143:function(dt,K,n){"use strict";n.d(K,{o0:function(){return P.o},NE:function(){return e.NE}});var P=n(64061),e=(n(49143),n(88828))},45723:function(dt,K,n){"use strict";n.d(K,{F:function(){return d}});var P=n(48047),t=n(78069),e=n(36362),p=n(76442),d=function(){var s=(0,P.Z)(function h(){(0,t.Z)(this,h)});return s.\u0275fac=function(f){return new(f||s)},s.\u0275mod=p.oAB({type:s}),s.\u0275inj=p.cJS({imports:[[e.ez]]}),s}()},90813:function(dt,K,n){"use strict";n.d(K,{Y:function(){return d}});var P=n(78069),t=n(48047),e=n(92507),p=n(76442),d=function(){var s=function(){function h(f){(0,P.Z)(this,h),this.configService=f}return(0,t.Z)(h,[{key:"transform",value:function(T,B){var I="UNII";if(this.configService.configData&&this.configService.configData.approvalCodeName&&(I=this.configService.configData.approvalCodeName),B){if("types"===B)return"structurallyDiverse"===T?"Structurally Diverse":"nucleicAcid"===T?"Nucleic Acid":"specifiedSubstanceG1"===T?"Group 1 Specified Substance":"specifiedSubstanceG3"===T?"Group 3 Specified Substance":T.charAt(0).toUpperCase()+T.slice(1);if("status"===B){if("approved"===T)return"Validated ("+I+")";if("non-approved"===T)return"non-Validated"}}return"substancestereochemistry"===T.toLowerCase()?"Stereochemistry":"root_lastEdited"===T?"Last Edited Date":"root_approved"===T?"Last Validated Date":"root_created"===T?"Created Date":"Approved By"===T?"Validated By":"root_lastEditedBy"===T?"Last Edited By":"Substance Class"===T?"Substance Type":"GInAS Tag"===T?"Source Tag":"GInAS Domain"===T?"Domain":T.trim()}}]),h}();return s.\u0275fac=function(f){return new(f||s)(p.Y36(e.E,16))},s.\u0275pipe=p.Yjl({name:"facetDisplay",type:s,pure:!0}),s}()},60670:function(dt,K,n){"use strict";n.d(K,{n:function(){return f}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),f=function(B){(0,d.Z)(v,B);var I=(0,s.Z)(v);function v(j){return(0,P.Z)(this,v),I.call(this,j)}return(0,t.Z)(v,[{key:"appendFacetParams",value:function(Q,J){var Z=new v({fromString:(0,e.Z)((0,p.Z)(v.prototype),"toString",this).call(this),encoder:new T}),A=!1;return null!=Q&&Object.keys(Q).forEach(function(E){null!=Q[E]&&Object.keys(Q[E].params).forEach(function(q){null!=Q[E].params[q]&&("Deprecated"===q&&!0!==Q[E].params[q]?A=!0:Z=Z.append("facet","".concat(Q[E].params[q]?Q[E].isAllMatch?"^":"":"!").concat(E.replace(/\//g,"$$$"),"/").concat(q.replace(/\//g,"$$$"))))})}),J||A||(Z=Z.append("facet","Deprecated/Not Deprecated")),Z}},{key:"append",value:function(Q,J){return new v({fromString:(0,e.Z)((0,p.Z)(v.prototype),"append",this).call(this,Q,J).toString(),encoder:new T})}},{key:"appendDictionary",value:function(Q){var J=new v({fromString:(0,e.Z)((0,p.Z)(v.prototype),"toString",this).call(this),encoder:new T});if(null!=Q){var Z=Object.keys(Q);null!=Z&&Z.length&&Z.forEach(function(A){null!=Q[A]&&""!==Q[A]&&(J=J.append(A,Q[A].toString()))})}return J}}]),v}(n(28784).LE),T=function(){function B(){(0,P.Z)(this,B)}return(0,t.Z)(B,[{key:"encodeKey",value:function(v){return encodeURIComponent(v)}},{key:"encodeValue",value:function(v){return encodeURIComponent(v)}},{key:"decodeKey",value:function(v){return decodeURIComponent(v)}},{key:"decodeValue",value:function(v){return decodeURIComponent(v)}}]),B}()},89068:function(dt,K,n){"use strict";n.d(K,{R:function(){return qe}});var P=n(95106),t=n(78069),e=n(48047),p=n(76442),d=n(50253),s=n(63169),h=n(59295),f=n(71989),T=n(98977),B=n(32673),I=n(98589),v=n(44250),j=n(53141),Q=n(40104),J=(0,e.Z)(function je(Nt,Ft,bt,St){(0,t.Z)(this,je),this.type=Nt,this.bool=Ft,this.val=bt,this.removeFacet=St}),Z=n(98002),A=n(36362),N=n(61534),E=n(90587),k=n(16531),q=n(44770),ce=n(43365),ie=n(87317),H=n(65590),V=n(60833),ue=n(90813),R=n(89633);function r(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"mat-checkbox",4),p.NdJ("change",function(){return p.CHM(Ft),p.oxw().toggleDeprecated()}),p._uU(1,"Show Deprecated Records"),p.qZA()}if(2&je){var bt=p.oxw();p.Q6J("ngModel",bt.showDeprecated)}}function z(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"input",17),p.NdJ("ngModelChange",function(ut){p.CHM(Ft);var yt=p.oxw(4).$implicit;return p.oxw().searchText[yt.name].value=ut})("ngModelChange",function(ut){p.CHM(Ft);var yt=p.oxw(4),be=yt.index,we=yt.$implicit;return p.oxw().filterFacets(be,ut,we.name)}),p.qZA()}if(2&je){var bt=p.oxw(4).$implicit,St=p.oxw();p.MGl("placeholder","Search ",bt.name,""),p.Q6J("ngModel",St.searchText[bt.name].value)}}function Y(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"input",18),p.NdJ("ngModelChange",function(ut){p.CHM(Ft);var yt=p.oxw(4).$implicit;return p.oxw().searchText[yt.name].value=ut})("ngModelChange",function(ut){p.CHM(Ft);var yt=p.oxw(4),be=yt.index,we=yt.$implicit;return p.oxw().filterFacets(be,ut,we.name)}),p.qZA()}if(2&je){var bt=p.oxw(4).$implicit,St=p.oxw();p.Q6J("ngModel",St.searchText[bt.name].value)}}function se(je,Nt){if(1&je&&(p.TgZ(0,"mat-form-field"),p.YNc(1,z,1,2,"input",15),p.YNc(2,Y,1,1,"input",16),p.qZA()),2&je){var Ft=p.oxw(3).$implicit;p.xp6(1),p.Q6J("ngIf","Approved By"!==Ft.name),p.xp6(1),p.Q6J("ngIf","Approved By"===Ft.name)}}function X(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"div",12),p.YNc(1,se,3,2,"mat-form-field",6),p.TgZ(2,"button",13),p.NdJ("click",function(){p.CHM(Ft);var ut=p.oxw(2),yt=ut.index,be=ut.$implicit;return p.oxw().clearFacetSearch(yt,be.name)}),p._UZ(3,"mat-icon",14),p.qZA(),p.qZA()}if(2&je){var bt=p.oxw(2).$implicit,St=p.oxw();p.xp6(1),p.Q6J("ngIf",St.searchText[bt.name])}}function ne(je,Nt){1&je&&p._UZ(0,"mat-progress-bar",19)}function ve(je,Nt){if(1&je&&(p.TgZ(0,"div"),p.YNc(1,X,4,1,"div",10),p.YNc(2,ne,1,0,"mat-progress-bar",11),p.qZA()),2&je){var Ft=p.oxw().$implicit,bt=p.oxw();p.xp6(1),p.Q6J("ngIf",Ft.enhanced),p.xp6(1),p.Q6J("ngIf",bt.searchText[Ft.name]&&bt.searchText[Ft.name].isLoading)}}function Re(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"mat-checkbox",27),p.NdJ("change",function(yt){p.CHM(Ft);var be=p.oxw().$implicit,we=p.oxw().$implicit;return p.oxw().updateFacetSelection(yt,we.name,be.label,!1)}),p.qZA()}if(2&je){var bt=p.oxw().$implicit,St=p.oxw().$implicit,Pt=p.oxw();p.Q6J("checked",Pt.facetParams[St.name]&&!1===Pt.facetParams[St.name].params[bt.label])}}function Ie(je,Nt){if(1&je&&(p.TgZ(0,"span"),p._uU(1),p.qZA()),2&je){var Ft=p.oxw().$implicit;p.xp6(1),p.hij(" ",Ft.label," ")}}function Ee(je,Nt){if(1&je&&(p.TgZ(0,"span"),p._uU(1),p.ALo(2,"facetDisplay"),p.qZA()),2&je){var Ft=p.oxw().$implicit;p.xp6(1),p.hij(" ",p.xi3(2,1,Ft.label,"types")," ")}}function ge(je,Nt){if(1&je&&(p.TgZ(0,"span"),p._uU(1),p.ALo(2,"facetDisplay"),p.qZA()),2&je){var Ft=p.oxw().$implicit;p.xp6(1),p.hij(" ",p.xi3(2,1,Ft.label,"status")," ")}}function _t(je,Nt){if(1&je&&(p.TgZ(0,"span"),p._uU(1),p.ALo(2,"async"),p.ALo(3,"codeSystemDisplay"),p.qZA()),2&je){var Ft=p.oxw().$implicit;p.xp6(1),p.hij(" ",p.lcZ(2,1,p.lcZ(3,3,Ft.label))," ")}}function wt(je,Nt){if(1&je){var Ft=p.EpF();p.ynx(0),p.TgZ(1,"div",20),p.TgZ(2,"div",21),p.TgZ(3,"mat-checkbox",22),p.NdJ("change",function(yt){var we=p.CHM(Ft).$implicit,_e=p.oxw().$implicit;return p.oxw().updateFacetSelection(yt,_e.name,we.label,!0)}),p.qZA(),p.YNc(4,Re,1,1,"mat-checkbox",23),p.qZA(),p.TgZ(5,"div",24),p.YNc(6,Ie,2,1,"span",6),p.YNc(7,Ee,3,4,"span",6),p.YNc(8,ge,3,4,"span",6),p.YNc(9,_t,4,5,"span",6),p.qZA(),p._UZ(10,"div",25),p.TgZ(11,"div",26),p._uU(12),p.qZA(),p.qZA(),p.BQk()}if(2&je){var bt=Nt.$implicit,St=p.oxw().$implicit,Pt=p.oxw();p.xp6(3),p.Q6J("checked",Pt.facetParams[St.name]&&!0===Pt.facetParams[St.name].params[bt.label]),p.xp6(1),p.Q6J("ngIf",St.$showAdvanced),p.xp6(2),p.Q6J("ngIf","Substance Class"!==St.name&&"Record Status"!==St.name&&"Code System"!==St.name),p.xp6(1),p.Q6J("ngIf","Substance Class"===St.name),p.xp6(1),p.Q6J("ngIf","Record Status"===St.name),p.xp6(1),p.Q6J("ngIf","Code System"===St.name),p.xp6(3),p.hij(" ",bt.count," ")}}var qt=function(Nt){return{"show-more":!0,disabled:Nt}};function Lt(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"a",29),p.NdJ("click",function(){p.CHM(Ft);var ut=p.oxw(2),yt=ut.index,be=ut.$implicit;return p.oxw().moreFacets(yt,be)}),p._uU(1),p.qZA()}if(2&je){var bt=p.oxw(2).$implicit,St=p.oxw();p.Q6J("ngClass",p.VKq(2,qt,bt.$isLoading)),p.xp6(1),p.hij(" More...",St.searchText[bt.name]&&St.searchText[bt.name].value||""," ")}}function Rt(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"a",29),p.NdJ("click",function(){p.CHM(Ft);var ut=p.oxw(2).index;return p.oxw().lessFacets(ut)}),p._uU(1),p.qZA()}if(2&je){var bt=p.oxw(2).$implicit,St=p.oxw();p.Q6J("ngClass",p.VKq(2,qt,bt.$isLoading)),p.xp6(1),p.hij(" Show Less ",St.searchText[bt.name]&&St.searchText[bt.name].value||""," ")}}function it(je,Nt){if(1&je&&(p.TgZ(0,"span"),p.YNc(1,Lt,2,4,"a",28),p.YNc(2,Rt,2,4,"a",28),p.qZA()),2&je){var Ft=p.oxw().$implicit;p.xp6(1),p.Q6J("ngIf",!Ft.$total||Ft.$total>Ft.values.length),p.xp6(1),p.Q6J("ngIf",Ft.values.length>10)}}function Qe(je,Nt){1&je&&(p.TgZ(0,"span"),p._uU(1,"hide "),p.qZA())}function ot(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"div",30),p.TgZ(1,"a",31),p.NdJ("click",function(){p.CHM(Ft);var Pt=p.oxw().$implicit;return Pt.$showAdvanced=!Pt.$showAdvanced}),p.YNc(2,Qe,2,0,"span",6),p._uU(3,"advanced options "),p.qZA(),p.qZA()}if(2&je){var bt=p.oxw().$implicit;p.xp6(2),p.Q6J("ngIf",bt.$showAdvanced)}}function tt(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"mat-checkbox",37),p.NdJ("ngModelChange",function(ut){p.CHM(Ft);var yt=p.oxw(2).$implicit;return p.oxw().facetParams[yt.name].isAllMatch=ut})("change",function(){p.CHM(Ft);var ut=p.oxw(2).$implicit;return p.oxw().updateAllMatch(ut.name)}),p._uU(1," All Match "),p.qZA()}if(2&je){var bt=p.oxw(2).$implicit,St=p.oxw();p.Q6J("ngModel",St.facetParams[bt.name].isAllMatch)}}function xe(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"button",38),p.NdJ("click",function(){p.CHM(Ft);var Pt=p.oxw(2).$implicit;return p.oxw().clearFacetSelection(Pt.name)}),p._uU(1," Clear "),p.qZA()}if(2&je){var bt=p.oxw(3);p.Q6J("disabled",bt.isLoading)}}function $e(je,Nt){if(1&je){var Ft=p.EpF();p.TgZ(0,"button",39),p.NdJ("click",function(){p.CHM(Ft);var Pt=p.oxw(2).$implicit;return p.oxw().applyFacetsFilter(Pt.name)}),p._uU(1," Apply "),p.qZA()}if(2&je){var bt=p.oxw(3);p.Q6J("disabled",bt.isLoading)}}function Ge(je,Nt){if(1&je&&(p.TgZ(0,"div",32),p.YNc(1,tt,2,1,"mat-checkbox",33),p.TgZ(2,"div",34),p.YNc(3,xe,2,1,"button",35),p.YNc(4,$e,2,1,"button",36),p.qZA(),p.qZA()),2&je){var Ft=p.oxw().$implicit,bt=p.oxw();p.xp6(1),p.Q6J("ngIf",bt.facetParams[Ft.name]&&bt.facetParams[Ft.name].showAllMatchOption),p.xp6(2),p.Q6J("ngIf",bt.facetParams[Ft.name]&&bt.facetParams[Ft.name].hasSelections),p.xp6(1),p.Q6J("ngIf",bt.facetParams[Ft.name]&&bt.facetParams[Ft.name].isUpdated)}}var ct=function(Nt){return{col:Nt}},Xe=function(Nt){return{"panel-height":Nt}};function Te(je,Nt){if(1&je&&(p.TgZ(0,"mat-expansion-panel",5),p.TgZ(1,"mat-expansion-panel-header"),p.TgZ(2,"mat-panel-title"),p._uU(3),p.ALo(4,"facetDisplay"),p.qZA(),p.qZA(),p.TgZ(5,"div",1),p.YNc(6,ve,3,2,"div",6),p.YNc(7,wt,13,7,"ng-container",7),p.TgZ(8,"div"),p.YNc(9,it,3,2,"span",6),p.qZA(),p.YNc(10,ot,4,1,"div",8),p.YNc(11,Ge,5,3,"div",9),p.qZA(),p.qZA()),2&je){var Ft=Nt.$implicit,bt=p.oxw();p.Q6J("ngClass",p.VKq(11,ct,"advancedsearch"===bt.calledFrom))("expanded",!0===bt.panelExpanded||bt.facetParams&&bt.facetParams[Ft.name]),p.xp6(3),p.hij(" ",p.lcZ(4,9,Ft.name)," "),p.xp6(2),p.Q6J("ngClass",p.VKq(13,Xe,"advancedsearch"===bt.calledFrom)),p.xp6(1),p.Q6J("ngIf",bt.includeFacetSearch),p.xp6(1),p.Q6J("ngForOf",Ft.values),p.xp6(2),p.Q6J("ngIf",Ft.values&&Ft.values.length>=10&&(!bt.searchText[Ft.name]||""===bt.searchText[Ft.name].value)&&Ft.enhanced),p.xp6(1),p.Q6J("ngIf",Ft.enhanced),p.xp6(1),p.Q6J("ngIf",null!==bt.facetParams[Ft.name])}}var vt=function(Nt){return{"panel-height-scroll":Nt}},qe=function(){var je=function(){function Nt(Ft,bt,St,Pt,ut,yt,be,we,_e){(0,t.Z)(this,Nt),this.activatedRoute=Ft,this.utilsService=bt,this.facetsService=St,this.authService=Pt,this.configService=ut,this.gaService=yt,this.router=be,this.location=we,this.facetManagerService=_e,this.facetsParamsUpdated=new p.vpe,this.facetsLoaded=new p.vpe,this.includeFacetSearch=!1,this.calledFrom="default",this.panelExpanded=!1,this.displayFacets=[],this.searchText={},this.toggle=[],this.showDeprecated=!1,this.loggedIn=!1,this.hideDeprecatedCheckbox=!1,this.previousState=[],this.previousFacets=[],this._facetDisplayType="default",this.facetSearchChanged=new d.x,this.subscriptions=[],this.privateFacetParams={},this.facetBuilder={},this.facets=[],this.environment=ut.environment}return(0,e.Z)(Nt,[{key:"onPopState",value:function(bt){var St=this;setTimeout(function(){St.router.url===St.previousState[0]&&("/browse-substance"===St.router.url?St.privateFacetParams={}:(St.privateFacetParams=St.previousFacets[0],St.facetBuilder={}),St.ngOnInit())},50)}},{key:"rawFacets",set:function(bt){this.privateRawFacets=bt||[],this.populateFacets()}},{key:"configName",set:function(bt){this.facetsConfig=this.configService.configData.facets&&this.configService.configData.facets[bt]||{},this._configName=bt,this.hideDeprecatedCheckbox="applications"===bt||"clinicaltrialsus"===bt||"products"===bt||"adverseeventpt"===bt||"adverseeventdme"===bt||"adverseeventcvm"===bt,this.populateFacets()}},{key:"facetDisplayType",set:function(bt){this._facetDisplayType=bt,this.populateFacets()}},{key:"facetViewCategorySelected",set:function(bt){this._facetViewCategorySelected=bt,this.populateFacets()}},{key:"facetNameText",set:function(bt){this._facetNameText=bt,this.populateFacets()}},{key:"ngOnInit",value:function(){var bt=this;this.facetString=this.activatedRoute.snapshot.queryParams.facets||"","true"===(this.activatedRoute.snapshot.queryParams.showDeprecated||"false")&&(this.showDeprecated=!0),this.facetsFromParams(),this.setDisplayFacets(),this.facetsParamsUpdated.emit({facetParam:this.privateFacetParams,displayFacets:this.displayFacets,deprecated:this.showDeprecated});var Pt=this.facetManagerService.clearSelectionsEvent.subscribe(function(){bt.clearFacetSelection()});this.subscriptions.push(Pt),this.authService.getAuth().pipe((0,h.q)(1)).subscribe(function(ut){ut&&(bt.loggedIn=!0)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(bt){bt.unsubscribe()})}},{key:"ngAfterViewInit",value:function(){var bt=this;if(this.includeFacetSearch){var St=this.facetSearchChanged.pipe((0,f.b)(500),(0,T.x)(),(0,B.w)(function(Pt){return bt.facetsService.getFacetsHandler(bt.facets[Pt.index],Pt.query).pipe((0,h.q)(1))})).subscribe(function(Pt){bt.activeSearchedFaced.values=bt.activeSearchedFaced.values.filter(function(ut){var _e,yt=!0,be=!1,we=(0,P.Z)(Pt.content);try{for(we.s();!(_e=we.n()).done;)if(_e.value.label===ut.label){be=!0;break}}catch(Ae){we.e(Ae)}finally{we.f()}return!be&&null!=bt.privateFacetParams[bt.activeSearchedFaced.name]&&(!0===bt.privateFacetParams[bt.activeSearchedFaced.name].params[ut.label]||!1===bt.privateFacetParams[bt.activeSearchedFaced.name].params[ut.label])&&(yt=!1),!yt}),bt.activeSearchedFaced.values=bt.activeSearchedFaced.values.concat(Pt.content),bt.searchText[bt.activeSearchedFaced.name].isLoading=!1},function(Pt){bt.searchText[bt.activeSearchedFaced.name].isLoading=!1});this.subscriptions.push(St)}}},{key:"facetsFromParams",value:function(){if(""!==this.facetString){var Pt,bt=this.escapedSplit(this.facetString,","),St=(0,P.Z)(bt);try{for(St.s();!(Pt=St.n()).done;){var _n,yt=this.escapedSplit(Pt.value,"*"),be=yt[0],we=this.escapedSplit(yt[1],"+"),_e={},$=!1,Ae=!1,ft=!1,gt=0,Bt=(0,P.Z)(we);try{for(Bt.s();!(_n=Bt.n()).done;){var Tn=this.escapedSplit(_n.value,".");Tn[0]=this.decodeValue(decodeURIComponent(Tn[0])),"is_all_match"===Tn[0]?Ae=!0:"true"===Tn[1]?(_e[Tn[0]]=!0,$=!0,gt++):"false"===Tn[1]&&(_e[Tn[0]]=!1,$=!0,ft=!0)}}catch(Un){Bt.e(Un)}finally{Bt.f()}if(!0===$){this.facetBuilder[be]={params:_e,hasSelections:!0,isAllMatch:Ae},!ft&>>1&&(this.facetBuilder[be].showAllMatchOption=!0);var On=JSON.stringify(_e),Jn=this.utilsService.hashCode(On,this.facetBuilder[be].isAllMatch.toString(),this.showDeprecated.toString());this.facetBuilder[be].currentStateHash=Jn}}}catch(Un){St.e(Un)}finally{St.f()}this.privateFacetParams=this.facetBuilder,this.previousFacets.push(JSON.parse(JSON.stringify(this.privateFacetParams)))}}},{key:"toggleDeprecated",value:function(){var bt=this;this.showDeprecated=!this.showDeprecated,setTimeout(function(){bt.populateUrlQueryParameters(bt.showDeprecated),bt.facetsParamsUpdated.emit({facetParam:bt.privateFacetParams,displayFacets:bt.displayFacets,deprecated:bt.showDeprecated})})}},{key:"populateFacets",value:function(){var bt=this;this.privateRawFacets&&this.facetsConfig&&(null!=this.facetsAuthSubscription&&(this.facetsAuthSubscription.unsubscribe(),this.facetsAuthSubscription=null),this.facetsAuthSubscription=this.authService.getAuth().subscribe(function(St){var Pt=bt.privateRawFacets.slice(),ut=[];bt.showAudit=bt.authService.hasRoles("admin");var yt=Object.keys(bt.facetsConfig)||[];if(bt._facetDisplayType)if("default"===bt._facetDisplayType)yt.forEach(function(we){bt.facetsConfig[we].length&&("default"===we||bt.authService.hasRoles(we))&&bt.facetsConfig[we].forEach(function(_e){for(var $=0;$0&&(Ae=!1,Pt[$].name.toLowerCase().indexOf(bt._facetNameText.toLowerCase().trim())>-1&&(Ae=!0)),!0===Ae&&null!=Pt[$].values&&Pt[$].values.length){for(var ft=!1,gt=0;gt0&&(gt=!1,Pt[ft].name.toLowerCase().indexOf(bt._facetNameText.toLowerCase().trim())>-1&&(gt=!0)),!0===gt&&null!=Pt[ft].values&&Pt[ft].values.length){for(var Bt=!1,_n=0;_n0&&ut.unshift(ut.splice(_e,1)[0])}),bt.facets=ut,bt.facetsLoaded.emit(bt.facets.length),bt.cleanFacets(),bt.setDisplayFacets()}))}},{key:"cleanFacets",value:function(){var bt=this;if(null!=this.privateFacetParams){var St=Object.keys(this.privateFacetParams);St&&St.length>0&&St.forEach(function(Pt){bt.privateFacetParams[Pt]&&(Object.keys(bt.privateFacetParams[Pt].params).length<1||!1===bt.privateFacetParams[Pt].hasSelections)&&(bt.privateFacetParams[Pt]=void 0)})}}},{key:"setDisplayFacets",value:function(){var bt=this;null!=this.privateFacetParams&&(this.displayFacets=[],Object.keys(this.privateFacetParams).forEach(function(St){bt.privateFacetParams[St]&&bt.privateFacetParams[St].params&&Object.keys(bt.privateFacetParams[St].params).forEach(function(Pt){if(void 0!==bt.privateFacetParams[St].params[Pt]){var ut=new J(St,bt.privateFacetParams[St].params[Pt],Pt,function(yt,be,we){bt.removeFacet(yt,be,we)});bt.displayFacets.push(ut)}})}))}},{key:"populateUrlQueryParameters",value:function(bt){for(var ut,St={queryParams:{}},Pt=[],yt=0,be=Object.keys(this.privateFacetParams);yt ").concat(Pt),be=bt.checked?1:0;if(this.gaService.sendEvent("substancesFiltering","check:facet-".concat(ut?"include":"exclude"),yt,be),null==this.privateFacetParams[St]){this.privateFacetParams[St]={params:{},isAllMatch:!1},_e=JSON.stringify(this.privateFacetParams[St].params),$=this.privateFacetParams[St].isAllMatch.toString();var Ae=this.utilsService.hashCode(_e,$);this.privateFacetParams[St].currentStateHash=Ae}this.privateFacetParams[St].params[Pt]=ut?bt.checked||void 0:!0!==bt.checked&&void 0;for(var ft=!1,gt=!1,Bt=0,_n=Object.keys(this.privateFacetParams[St].params),wn=0;wn<_n.length;wn++)null!=this.privateFacetParams[St].params[_n[wn]]&&(ft=!0,!1===this.privateFacetParams[St].params[_n[wn]]?gt=!0:Bt++);this.privateFacetParams[St].hasSelections=ft,!gt&&Bt>1?this.privateFacetParams[St].showAllMatchOption=!0:(this.privateFacetParams[St].showAllMatchOption=!1,this.privateFacetParams[St].isAllMatch=!1),_e=JSON.stringify(this.privateFacetParams[St].params),$=this.privateFacetParams[St].isAllMatch.toString();var Tn=this.utilsService.hashCode(_e,$);this.privateFacetParams[St].isUpdated=Tn!==this.privateFacetParams[St].currentStateHash,this.calledFrom&&"advancedsearch"===this.calledFrom&&(this.setDisplayFacets(),this.facetsParamsUpdated.emit({facetParam:this.privateFacetParams,displayFacets:this.displayFacets,deprecated:this.showDeprecated}))}},{key:"updateAllMatch",value:function(bt){var St=this.environment.isAnalyticsPrivate?"facet":"".concat(bt);this.gaService.sendEvent("substancesFiltering","check:facet-all_match",St,this.privateFacetParams[bt].isAllMatch?1:0);var ut=JSON.stringify(this.privateFacetParams[bt].params),yt=this.privateFacetParams[bt].isAllMatch.toString(),be=this.utilsService.hashCode(ut,yt);this.privateFacetParams[bt].isUpdated=be!==this.privateFacetParams[bt].currentStateHash}},{key:"clearFacetSelection",value:function(bt){var St=this,Pt=this.environment.isAnalyticsPrivate?"facet":"facet: ".concat(bt),ut=0,yt=null!=bt?[bt]:Object.keys(this.privateFacetParams);null!=yt&&yt.length&&yt.forEach(function(we){if(null!=St.privateFacetParams[we]&&null!=St.privateFacetParams[we].params&&(Object.keys(St.privateFacetParams[we].params).forEach(function(gt){ut++,St.privateFacetParams[we].params[gt]=void 0}),St.privateFacetParams[we].isAllMatch=!1,St.privateFacetParams[we].showAllMatchOption=!1,St.privateFacetParams[we].hasSelections=!1,null!=bt)){var $=JSON.stringify(St.privateFacetParams[bt].params),Ae=St.privateFacetParams[bt].isAllMatch.toString(),ft=St.utilsService.hashCode($,Ae);St.privateFacetParams[bt].isUpdated=ft!==St.privateFacetParams[bt].currentStateHash}});var be={queryParams:{facets:""}};setTimeout(function(){var we=St.router.createUrlTree([],{queryParams:be.queryParams,queryParamsHandling:"merge",preserveFragment:!0});St.location.go(we.toString())}),this.gaService.sendEvent("substancesFiltering","button:clear-facet",Pt,ut)}},{key:"moreFacets",value:function(bt,St){var Pt=this;this.facets[bt].$isLoading=!0,null==St.$next&&(St.$next=St._self.replace("fskip=0","fskip=10")),this.facetManagerService.getFacetsHandler(this.facets[bt],"",St.$next).pipe((0,h.q)(1)).subscribe(function(ut){Pt.facets[bt].$next=ut.nextPageUri,Pt.facets[bt].$previous=ut.previousPageUri,Pt.facets[bt].values=Pt.facets[bt].values.concat(ut.content),Pt.facets[bt].$fetched=Pt.facets[bt].values,Pt.facets[bt].$total=ut.ftotal,Pt.facets[bt].$isLoading=!1},function(ut){Pt.facets[bt].$isLoading=!1})}},{key:"lessFacets",value:function(bt){var St=this;this.facets[bt].$isLoading=!0,this.facetManagerService.getFacetsHandler(this.facets[bt],null,null).pipe((0,h.q)(1)).subscribe(function(ut){St.facets[bt].values=ut.content,St.facets[bt].$fetched=ut.content,St.facets[bt].$next=ut.nextPageUri,St.facets[bt].$previous=ut.previousPageUri,St.facets[bt].$isLoading=!1},function(ut){St.facets[bt].$isLoading=!1})}},{key:"filterFacets",value:function(bt,St,Pt){this.searchText[Pt].isLoading=!0,this.activeSearchedFaced=this.facets[bt],this.facetSearchChanged.next({index:bt,query:St})}},{key:"clearFacetSearch",value:function(bt,St){this.searchText[St].value="",this.filterFacets(bt,"",St)}},{key:"facetParams",get:function(){return this.privateFacetParams}}]),Nt}();return je.\u0275fac=function(Ft){return new(Ft||je)(p.Y36(Z.gz),p.Y36(s.FW),p.Y36(I.b),p.Y36(v.e),p.Y36(j.E),p.Y36(Q.$),p.Y36(Z.F0),p.Y36(A.Ye),p.Y36(I.b))},je.\u0275cmp=p.Xpm({type:je,selectors:[["app-facets-manager"]],hostBindings:function(Ft,bt){1&Ft&&p.NdJ("popstate",function(Pt){return bt.onPopState(Pt)},!1,p.Jf7)},inputs:{includeFacetSearch:"includeFacetSearch",calledFrom:"calledFrom",panelExpanded:"panelExpanded",rawFacets:"rawFacets",configName:"configName",facetDisplayType:"facetDisplayType",facetViewCategorySelected:"facetViewCategorySelected",facetNameText:"facetNameText"},outputs:{facetsParamsUpdated:"facetsParamsUpdated",facetsLoaded:"facetsLoaded"},decls:4,vars:5,consts:[["class","deprecated",3,"ngModel","change",4,"ngIf"],[3,"ngClass"],["multi","true"],[3,"ngClass","expanded",4,"ngFor","ngForOf"],[1,"deprecated",3,"ngModel","change"],[3,"ngClass","expanded"],[4,"ngIf"],[4,"ngFor","ngForOf"],["class","facet-advanced-options-link",4,"ngIf"],["class","facet-actions",4,"ngIf"],["class","facet-search-container",4,"ngIf"],["class","facet-search-loading","mode","indeterminate",4,"ngIf"],[1,"facet-search-container"],["mat-icon-button","","color","black",3,"click"],["svgIcon","close"],["matInput","","class","search","type","text",3,"ngModel","placeholder","ngModelChange",4,"ngIf"],["matInput","","class","search","type","text","placeholder","Search Validated By",3,"ngModel","ngModelChange",4,"ngIf"],["matInput","","type","text",1,"search",3,"ngModel","placeholder","ngModelChange"],["matInput","","type","text","placeholder","Search Validated By",1,"search",3,"ngModel","ngModelChange"],["mode","indeterminate",1,"facet-search-loading"],[1,"facet-value"],[1,"facet-value-checkbox"],["matTooltip","Include",1,"include",3,"checked","change"],["class","exclude","matTooltip","Exclude",3,"checked","change",4,"ngIf"],[1,"facet-value-label"],[1,"middle-fill"],[1,"facet-value-count"],["matTooltip","Exclude",1,"exclude",3,"checked","change"],[3,"ngClass","click",4,"ngIf"],[3,"ngClass","click"],[1,"facet-advanced-options-link"],[3,"click"],[1,"facet-actions"],[3,"ngModel","ngModelChange","change",4,"ngIf"],[1,"pull-right"],["mat-flat-button","",3,"disabled","click",4,"ngIf"],["class","apply-button","mat-flat-button","","color","primary",3,"disabled","click",4,"ngIf"],[3,"ngModel","ngModelChange","change"],["mat-flat-button","",3,"disabled","click"],["mat-flat-button","","color","primary",1,"apply-button",3,"disabled","click"]],template:function(Ft,bt){1&Ft&&(p.YNc(0,r,2,1,"mat-checkbox",0),p.TgZ(1,"div",1),p.TgZ(2,"mat-accordion",2),p.YNc(3,Te,12,15,"mat-expansion-panel",3),p.qZA(),p.qZA()),2&Ft&&(p.Q6J("ngIf",bt.loggedIn&&!bt.hideDeprecatedCheckbox),p.xp6(1),p.Q6J("ngClass",p.VKq(3,vt,"advancedsearch"===bt.calledFrom)),p.xp6(2),p.Q6J("ngForOf",bt.facets))},directives:[A.O5,N.oG,E.JJ,E.On,A.mk,k.pp,A.sg,k.ib,k.yz,k.yK,q.KE,ce.Nt,E.Fj,ie.lW,H.Hw,V.pW],pipes:[ue.Y,A.Ov,R.q],styles:[".facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:#404040;white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#80cbc4} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#26a69a}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#ef9a9a} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ef5350}.show-more[_ngcontent-%COMP%]{color:#448aff}.show-more[_ngcontent-%COMP%]:hover{text-decoration:underline}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.deprecated[_ngcontent-%COMP%]{font-size:14px;margin-left:25px;color:#000000b3;margin-bottom:15px}.deprecated[_ngcontent-%COMP%] .mat-checkbox-inner-container{height:14px;width:14px}.deprecated[_ngcontent-%COMP%] .mat-checkbox-layout{margin-bottom:10px}"]}),je}()},35756:function(dt,K,n){"use strict";n.d(K,{O:function(){return Q}});var P=n(48047),t=n(78069),e=n(36362),p=n(16531),d=n(65590),s=n(61534),h=n(87317),f=n(43365),T=n(60833),B=n(44770),I=n(90587),v=n(2711),j=n(76442),Q=function(){var J=(0,P.Z)(function Z(){(0,t.Z)(this,Z)});return J.\u0275fac=function(A){return new(A||J)},J.\u0275mod=j.oAB({type:J}),J.\u0275inj=j.cJS({imports:[[e.ez,p.To,B.lN,f.c,s.p9,I.u5,d.Ps,T.Cv,h.ot,v.v]]}),J}()},98589:function(dt,K,n){"use strict";n.d(K,{b:function(){return I}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(50253),s=n(69264),h=n(53141),f=n(63169),T=n(76442),B=n(28784),I=function(){var v=function(j){(0,e.Z)(J,j);var Q=(0,p.Z)(J);function J(Z,A,N){var E;return(0,P.Z)(this,J),(E=Q.call(this,A)).http=Z,E.configService=A,E.utilsService=N,E.clearSelectionsSubject=new d.x,E}return(0,t.Z)(J,[{key:"registerGetFacetsHandler",value:function(A){this.getFacetsHandler=A}},{key:"unregisterFacetSearchHandler",value:function(){this.getFacetsHandler=null}},{key:"clearSelectionsEvent",get:function(){return this.clearSelectionsSubject.asObservable()}},{key:"clearSelections",value:function(){this.clearSelectionsSubject.next()}}]),J}(s.q);return v.\u0275fac=function(Q){return new(Q||v)(T.LFG(B.eN),T.LFG(h.E),T.LFG(f.FW))},v.\u0275prov=T.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}()},52489:function(dt,K,n){"use strict";n.d(K,{On:function(){return P.O},bH:function(){return t.b},nq:function(){return e.n}});var P=n(35756),t=n(98589),e=n(60670)},24874:function(dt,K,n){"use strict";n.d(K,{$:function(){return s}});var P=n(78069),t=n(48047),e=n(76442),p=n(36362),d=n(92507),s=function(){var h=function(){function f(T,B){(0,P.Z)(this,f),this.configService=T,this.platformId=B,this.isActive=!1,this.environment=T.environment,(0,p.NF)(this.platformId)&&T.configData&&T.configData.googleAnalyticsId&&(this.googleAnanlyticsId=T.configData.googleAnalyticsId,this.init())}return(0,t.Z)(f,[{key:"init",value:function(){var B;this.analyticsObjectKey=B=Math.random().toString(36).replace("0.",""),window.GoogleAnalyticsObject=this.analyticsObjectKey,window[this.analyticsObjectKey]=window[this.analyticsObjectKey]||function(){(window[B].q=window[B]&&window[B].q||[]).push(arguments)},window[this.analyticsObjectKey].l=+new Date,this.isActive=!0,window[this.analyticsObjectKey]("create",this.googleAnanlyticsId,{cookieName:"gsrsCookie"}),window[this.analyticsObjectKey]("set","screenResolution","".concat(window.screen.availWidth,"x").concat(window.screen.availHeight)),window[this.analyticsObjectKey]("set","hostname",window.location.hostname),this.environment.isAnalyticsPrivate&&(window[this.analyticsObjectKey]("set","allowAdFeatures",!1),window[this.analyticsObjectKey]("set","anonymizeIp",!0),window[this.analyticsObjectKey]("set","referrer","https://none.com"),window[this.analyticsObjectKey]("set","location","https://none.com")),this.isActive=!0;var I=document.createElement("script");I.src="https://www.google-analytics.com/analytics.js",I.type="text/javascript",I.async=!0,document.getElementsByTagName("head")[0].appendChild(I)}},{key:"onGlobalError",value:function(B){var I="message: ".concat(B.message," | filenname: ").concat(B.filename," | lineno: ").concat(B.lineno," | colno: ").concat(B.colno);this.sendException(I)}},{key:"sendPageView",value:function(B,I){if(this.isActive){null==I&&null!=B&&(I="/".concat(B.replace(/ /g,"-").toLowerCase()));var v={hitType:"pageview",title:B,page:I,viewportSize:"".concat(window.innerHeight,"x").concat(window.innerWidth)};window[this.analyticsObjectKey]("send",v)}}},{key:"sendEvent",value:function(B,I,v,j){if(this.isActive){var Q={hitType:"event",eventCategory:B,eventAction:I,eventLabel:v,eventValue:j,viewportSize:"".concat(window.innerHeight,"x").concat(window.innerWidth)};window[this.analyticsObjectKey]("send",Q)}}},{key:"sendException",value:function(B){var I=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.isActive){var v={hitType:"exception",exDescription:B,exFatal:I,viewportSize:"".concat(window.innerHeight,"x").concat(window.innerWidth)};window[this.analyticsObjectKey]("send",v)}}}]),f}();return h.\u0275fac=function(T){return new(T||h)(e.LFG(d.E),e.LFG(e.Lbi))},h.\u0275prov=e.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"}),h}()},40104:function(dt,K,n){"use strict";n.d(K,{$:function(){return t.$}}),n(46261);var t=n(24874)},46261:function(dt,K,n){"use strict";n.d(K,{z:function(){return s}});var P=n(78069),t=n(48047),e=n(24874),p=n(92507),d=n(76442),s=function(){var h=function(){function f(T,B){(0,P.Z)(this,f),this.gaService=T,this.configService=B,this.evCategory="Undefined",this.evAction="click-link",this.environment=this.configService.environment}return(0,t.Z)(f,[{key:"onClick",value:function(B){this.environment.isAnalyticsPrivate?this.evLabel="link":!this.evLabel&&B.href&&(this.evLabel=B.href),this.gaService.sendEvent(this.evCategory,this.evAction,this.evLabel,this.evValue)}}]),f}();return h.\u0275fac=function(T){return new(T||h)(d.Y36(e.$),d.Y36(p.E))},h.\u0275dir=d.lG2({type:h,selectors:[["","appTrackLinkEvent",""]],hostBindings:function(T,B){1&T&&d.NdJ("click",function(v){return B.onClick(v.target)})},inputs:{evCategory:"evCategory",evAction:"evAction",evLabel:"evLabel",evValue:"evValue"}}),h}()},62128:function(dt,K,n){"use strict";n.d(K,{J:function(){return e},k:function(){return p}});var P=n(56908),e=["text","datetime","number","select"],p={string:{"ANY of the following words in any order or position":{commandInputs:[{type:"text",constructQuery:function(s,h,f,T,B){var I=s.split(" "),v=I.map(function(j){return T+j}).join(" OR ");I.length>1&&(v="(".concat(v,")")),v="".concat(h).concat(v),B.emit({condition:h,queryableProperty:f,command:"ANY of the following words in any order or position",commandInputValues:[s],query:v})}}]},"the following exact phrase, which must match completely (no partial words)":{commandInputs:[{type:"text",constructQuery:function(s,h,f,T,B){var I=s.trim()&&"".concat(h).concat(T,'"^').concat(s.trim(),'$"')||"";B.emit({condition:h,queryableProperty:f,command:"the following exact phrase, which must match completely (no partial words)",commandInputValues:[s],query:I})}}]},"Exact Match":{commandInputs:[{type:"text",example:"Example: aspirin sodium",constructQuery:function(s,h,f,T,B){s&&(s=s.replace(/['"]+/g,""));var I=s.trim()&&"".concat(h).concat(T,'"^').concat(s.trim(),'$"')||"";B.emit({condition:h,queryableProperty:f,command:"Exact Match",commandInputValues:[s],query:I})}}]},"ALL of the following words in any order or position":{commandInputs:[{type:"text",constructQuery:function(s,h,f,T,B){var I=s.split(" "),v=I.map(function(j){return T+j}).join(" AND ");I.length>1&&(v="(".concat(v,")")),v="".concat(h).concat(v),B.emit({condition:h,queryableProperty:f,command:"ALL of the following words in any order or position",commandInputValues:[s],query:v})}}]},Contains:{commandInputs:[{type:"text",example:"Example: sodium",constructQuery:function(s,h,f,T,B){s&&(s=(s=(s=(s=(s=(s=(s=(s=(s=s.replace(/['"]+/g,"")).replace(/[ ]AND[ ]/g," \\\\AND ")).replace(/[ ]OR[ ]/g," \\\\OR ")).replace(/[ ]NOT[ ]/g," \\\\NOT ")).replace(/^NOT[ ]/g,"\\\\NOT ")).replace(/[-]+/g," ")).replace(/[.]+/g,"")).replace(/[()]+/g," ").trim()).replace(/[,][ ]/g," "));var I=s.trim()&&"".concat(h).concat(T,'"*').concat(s.trim(),'*"')||"";B.emit({condition:h,queryableProperty:f,command:"Contains",commandInputValues:[s],query:I})}}]},"Starts With":{commandInputs:[{type:"text",example:"Example: aspir",constructQuery:function(s,h,f,T,B){s&&(s=s.replace(/['"]+/g,""));var I=s.trim()&&"".concat(h).concat(T,'"^').concat(s.trim(),'*"')||"";B.emit({condition:h,queryableProperty:f,command:"Starts With",commandInputValues:[s],query:I})}}]},"Ends With":{commandInputs:[{type:"text",constructQuery:function(s,h,f,T,B){var I=s.trim()&&"".concat(h).concat(T,'"*').concat(s.trim(),'$"')||"";B.emit({condition:h,queryableProperty:f,command:"Ends With",commandInputValues:[s],query:I})}}]},"Manual Query Entry":{commandInputs:[{type:"text",example:"Example: aspirin sodium",constructQuery:function(s,h,f,T,B){var I=s.trim();B.emit({condition:h,queryableProperty:f,command:"Manual Query Entry",commandInputValues:[s],query:I})}}]},"a value that starts with with the word(s)":{commandInputs:[{type:"text",constructQuery:function(s,h,f,T,B){var I=s.trim()&&"".concat(h).concat(T,'"^').concat(s.trim(),'"')||"";B.emit({condition:h,queryableProperty:f,command:"a value that starts with with the word(s)",commandInputValues:[s],query:I})}}]},"a WORD that ends with":{commandInputs:[{type:"text",constructQuery:function(s,h,f,T,B){var I=s.trim()&&"".concat(h).concat(T,"*").concat(s.trim())||"";B.emit({condition:h,queryableProperty:f,command:"a WORD that ends with",commandInputValues:[s],query:I})}}]},"a value that ends with the word(s)":{commandInputs:[{type:"text",constructQuery:function(s,h,f,T,B){var I=s.trim()&&"".concat(h).concat(T,'"').concat(s.trim(),'$"')||"";B.emit({condition:h,queryableProperty:f,command:"a value that ends with the word(s)",commandInputValues:[s],query:I})}}]},"values that are not empty":{constructQuery:function(s,h,f,T,B){var I="".concat(h).concat(T,"*");B.emit({condition:h,queryableProperty:f,command:"values that are not empty",commandInputValues:[s],query:I})}},"the following exact default values":{commandInputs:[{type:"select",constructQuery:function(s,h,f,T,B){var I=s.trim()&&"".concat(h).concat(T,'"^').concat(s.trim(),'$"')||"";B.emit({condition:h,queryableProperty:f,command:"the following exact default values",commandInputValues:[s],query:I})}}]}},timestamp:{on:{commandInputs:[{type:"datetime",constructQuery:function(s,h,f,T,B){var I="";if(null!=s){var v=P(s).set({hour:0,minute:0,second:0,millisecond:0}).utc().valueOf(),j=P(s).set({hour:23,minute:59,second:59,millisecond:999}).utc().valueOf();I="".concat(h).concat(T,"[").concat(v," TO ").concat(j,"]")}B.emit({condition:h,queryableProperty:f,command:"on",commandInputValues:[s],query:I})}}]},before:{commandInputs:[{type:"datetime",constructQuery:function(s,h,f,T,B){var I="";if(null!=s){var v=P(s).set({hour:23,minute:59,second:59,millisecond:999}).utc().valueOf();I="".concat(h).concat(T,"[-10E50 TO ").concat(v,"]")}B.emit({condition:h,queryableProperty:f,command:"before",commandInputValues:[s],query:I})}}]},after:{commandInputs:[{type:"datetime",constructQuery:function(s,h,f,T,B){var I="";if(null!=s){var v=P(s).set({hour:0,minute:0,second:0,millisecond:0}).utc().valueOf();I="".concat(h).concat(T,"[").concat(v," TO 10E50]")}B.emit({condition:h,queryableProperty:f,command:"after",commandInputValues:[s],query:I})}}]},between:{commandInputs:[{type:"datetime",constructQuery:function(s,h,f,T,B,I,v){var j="";if(null!=s){var Q=P(s).set({hour:0,minute:0,second:0,millisecond:0}).utc().valueOf();I[0]="".concat(h).concat(T,"[").concat(Q," TO "),j=I.join("")}B.emit({condition:h,queryableProperty:f,command:"between",commandInputValues:[s,v&&v[1]||null],query:j,queryParts:I})}},{type:"datetime",constructQuery:function(s,h,f,T,B,I,v){var j="";if(null!=s){var Q=P(s).set({hour:23,minute:59,second:59,millisecond:999}).utc().valueOf();I[1]="".concat(Q,"]"),j=I.join("")}B.emit({condition:h,queryableProperty:f,command:"between",commandInputValues:[v&&v[0]||null,s],query:j,queryParts:I})}}]}},boolean:{true:{constructQuery:function(s,h,f,T,B){var I="".concat(h).concat(T,'"^').concat(s,'$"');B.emit({condition:h,queryableProperty:f,command:"true",query:I})}},false:{constructQuery:function(s,h,f,T,B){var I="".concat(h).concat(T,'"^').concat(s,'$"');B.emit({condition:h,queryableProperty:f,command:"false",query:I})}}},number:{"exact number":{commandInputs:[{type:"number",constructQuery:function(s,h,f,T,B){var I=null!=s&&""!==s&&"".concat(h).concat(T).concat(s)||"";B.emit({condition:h,queryableProperty:f,command:"exact number",commandInputValues:[s],query:I})}}]},"number that begins with":{commandInputs:[{type:"number",constructQuery:function(s,h,f,T,B){var I=null!=s&&""!==s&&"".concat(h).concat(T,"[").concat(s," TO 10E50]")||"";B.emit({condition:h,queryableProperty:f,command:"number that begins with",commandInputValues:[s],query:I})}}]},"number that ends with":{commandInputs:[{type:"number",constructQuery:function(s,h,f,T,B){var I=null!=s&&""!==s&&"".concat(h).concat(T,"[-10E50 TO ").concat(s,"]")||"";B.emit({condition:h,queryableProperty:f,command:"number that ends with",commandInputValues:[s],query:I})}}]},between:{commandInputs:[{type:"number",constructQuery:function(s,h,f,T,B,I,v){I[0]=null!=s&&""!==s&&"".concat(h).concat(T,"[").concat(s," TO ")||"";var j=I[0]&&I[1]&&I.join("")||"";B.emit({condition:h,queryableProperty:f,command:"between",commandInputValues:[s,v&&v[1]||null],query:j,queryParts:I})}},{type:"number",constructQuery:function(s,h,f,T,B,I,v){I[1]=null!=s&&""!==s&&"".concat(s,"]")||"";var j=I[0]&&I[1]&&I.join("")||"";B.emit({condition:h,queryableProperty:f,command:"between",commandInputValues:[v&&v[0]||null,s],query:j,queryParts:I})}}]},"values that are not empty":{constructQuery:function(s,h,f,T,B){var I="".concat(h).concat(T,"*");B.emit({condition:h,queryableProperty:f,command:"values that are not empty",commandInputValues:[s],query:I})}}}}},65838:function(dt,K,n){"use strict";n.d(K,{I:function(){return h}});var P=n(48047),t=n(78069),e=n(36362),p=n(60833),d=n(74742),s=n(76442),h=function(){var f=(0,P.Z)(function T(){(0,t.Z)(this,T)});return f.\u0275fac=function(B){return new(B||f)},f.\u0275mod=s.oAB({type:f}),f.\u0275inj=s.cJS({imports:[[e.ez,p.Cv,d.Cq]]}),f}()},83448:function(dt,K,n){"use strict";n.d(K,{b:function(){return f}});var P=n(78069),t=n(48047),e=n(50253),p=n(24476),d=n(76442),s=function(){var T=function(){function B(){(0,P.Z)(this,B)}return(0,t.Z)(B,[{key:"ngOnInit",value:function(){}}]),B}();return T.\u0275fac=function(I){return new(I||T)},T.\u0275cmp=d.Xpm({type:T,selectors:[["app-loading-overlay"]],decls:1,vars:0,template:function(I,v){1&I&&d._UZ(0,"div")},styles:[""]}),T}(),h=n(66088),f=function(){var T=function(){function B(I,v){(0,P.Z)(this,B),this.overlayService=I,this.overlayContainerService=v,this.isLoading=!1,this.loadingEventSubject=new e.x,this.numProcesses=0,this.isOverlayAttached=!1,this.overlayRef=this.overlayService.create({hasBackdrop:!0,backdropClass:"loading-overlay-backdrop",positionStrategy:this.overlayService.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlayService.scrollStrategies.reposition()}),this.loadingPortal=new p.C5(s),this.overlayContainer=this.overlayContainerService.getContainerElement()}return(0,t.Z)(B,[{key:"setLoading",value:function(v){v?this.numProcesses++:this.numProcesses--,this.isLoading=this.numProcesses>0,this.numProcesses<0&&(this.numProcesses=0),this.isLoading?this.setOverlay():this.removeOverlay(),this.loadingEventSubject.next(this.isLoading)}},{key:"resetLoading",value:function(){this.isLoading=!1,this.numProcesses=0,this.loadingEventSubject.next(this.isLoading)}},{key:"loadingEvent",get:function(){return this.loadingEventSubject.asObservable()}},{key:"setOverlay",value:function(){this.isOverlayAttached||(this.isOverlayAttached=!0,this.overlayRef.attach(this.loadingPortal),this.overlayContainer.style.zIndex="1002")}},{key:"removeOverlay",value:function(){this.isOverlayAttached=!1,this.overlayRef.detach(),this.overlayContainer.style.zIndex=null}}]),B}();return T.\u0275fac=function(I){return new(I||T)(d.LFG(h.aV),d.LFG(h.Xj))},T.\u0275prov=d.Yz7({token:T,factory:T.\u0275fac,providedIn:"root"}),T}()},76775:function(dt,K,n){"use strict";n.d(K,{a:function(){return d}});var P=n(78069),t=n(48047),e=n(50253),p=n(76442),d=function(){var s=function(){function h(){(0,P.Z)(this,h),this.notificationEvent=new e.x}return(0,t.Z)(h,[{key:"setNotification",value:function(T){this.notificationEvent.next(T)}}]),h}();return s.\u0275fac=function(f){return new(f||s)},s.\u0275prov=p.Yz7({token:s,factory:s.\u0275fac}),s}()},88325:function(dt,K,n){"use strict";n.d(K,{k:function(){return P}});var P=function(){return(t=P||(P={}))[t.default=1]="default",t[t.success=2]="success",t[t.error=3]="error",P;var t}()},10837:function(dt,K,n){"use strict";n.d(K,{W:function(){return ce}});var P=n(32090),t=n(78069),e=n(48047),p=n(76442),d=n(90587),s=n(91640),h=n(12570),f=n(9552),T=n(83448),B=n(44770),I=n(43365),v=n(87317),j=n(65590),Q=n(36362),J=n(9292),Z=n(98002);function A(ie,H){if(1&ie){var V=p.EpF();p.TgZ(0,"div",8),p._UZ(1,"img",9),p._UZ(2,"br"),p._uU(3),p._UZ(4,"br"),p._UZ(5,"br"),p.TgZ(6,"button",10),p.NdJ("click",function(){var Y=p.CHM(V).$implicit;return p.oxw().applyStructure(Y.value.molfile)}),p._uU(7,"Apply Structure"),p.qZA(),p._uU(8),p.qZA()}if(2&ie){var ue=H.$implicit,R=p.oxw();p.xp6(1),p.Q6J("entityId",ue.value.id),p.xp6(2),p.hij(" ",ue.source,""),p.xp6(5),p.hij(" ",R.errorMessage," ")}}function N(ie,H){if(1&ie){var V=p.EpF();p.TgZ(0,"button",10),p.NdJ("click",function(){p.CHM(V);var R=p.oxw().$implicit;return p.oxw(2).applyStructure(R.structure.molfile)}),p._uU(1,"Apply Structure"),p.qZA()}}var E=function(H){return["/substances",H]};function k(ie,H){if(1&ie&&(p.TgZ(0,"div",8),p._UZ(1,"img",9),p._UZ(2,"br"),p._uU(3," GSRS Record"),p._UZ(4,"br"),p._uU(5),p._UZ(6,"br"),p.YNc(7,N,2,0,"button",11),p._UZ(8,"br"),p.TgZ(9,"button",12),p._uU(10,"view"),p.qZA(),p.qZA()),2&ie){var V=H.$implicit;p.xp6(1),p.Q6J("entityId",V.uuid),p.xp6(4),p.hij(" ",V._name," "),p.xp6(2),p.Q6J("ngIf",V.structure),p.xp6(2),p.Q6J("routerLink",p.VKq(4,E,V.uuid))}}function q(ie,H){if(1&ie&&(p.ynx(0),p.YNc(1,k,11,6,"div",6),p.BQk()),2&ie){var V=p.oxw();p.xp6(1),p.Q6J("ngForOf",V.matchedNames.content)}}var ce=function(){var ie=function(){function H(V,ue,R){(0,t.Z)(this,H),this.loadingService=V,this.substanceService=ue,this.structureService=R,this.resolverControl=new d.NI,this.structureSelected=new p.vpe}return(0,e.Z)(H,[{key:"ngOnInit",value:function(){var ue=this;this.startingName&&(this.resolverControl.setValue(this.startingName),setTimeout(function(){ue.resolveName(ue.startingName)}))}},{key:"resolveNameKey",value:function(ue){13===ue.keyCode&&this.resolveName(this.resolverControl.value)}},{key:"resolveName",value:function(ue){var R=this;this.errorMessage="",this.resolvedNames=[],this.matchedNames=null,this.loadingService.setLoading(!0);var r=ue.replace('"',""),z='root_names_name:"^'.concat(r,'$" OR root_approvalID:"^').concat(r,'$" OR root_codes_BDNUM:"^').concat(r,'$"');(0,s.D)([this.substanceService.getQuickSubstancesSummaries(z),this.structureService.resolveName(ue)]).subscribe(function(Y){var se=(0,P.Z)(Y,2),X=se[0],ne=se[1];R.loadingService.setLoading(!1),R.resolvedNames=ne,R.matchedNames=X,0===R.matchedNames.content.length&&0===R.resolvedNames.length&&(R.errorMessage="no results found for '"+ue+"'")},function(Y){R.errorMessage="there was a problem returning your query",R.loadingService.setLoading(!1)})}},{key:"applyStructure",value:function(ue){this.structureSelected.emit(ue)}}]),H}();return ie.\u0275fac=function(V){return new(V||ie)(p.Y36(T.b),p.Y36(h.d),p.Y36(f.D))},ie.\u0275cmp=p.Xpm({type:ie,selectors:[["app-name-resolver"]],inputs:{startingName:"startingName"},outputs:{structureSelected:"structureSelected"},decls:10,vars:4,consts:[[1,"search"],[1,""],["type","text","placeholder","Search","aria-label","Resolve Name","matInput","",1,"search",3,"formControl","keydown"],["mat-button","","matSuffix","","mat-icon-button","","aria-label","Resolve Name Search Button",3,"click"],["svgIcon","search",1,"resolver-search-icon"],[1,"result-container"],["class","name-result",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"name-result"],["appSubstanceImage","",3,"entityId"],["mat-raised-button","","color","primary",1,"name-result-button",3,"click"],["mat-raised-button","","color","primary","class","name-result-button",3,"click",4,"ngIf"],["mat-raised-button","","color","primary",1,"name-result-button",3,"routerLink"]],template:function(V,ue){1&V&&(p.TgZ(0,"div"),p.TgZ(1,"div",0),p.TgZ(2,"mat-form-field",1),p.TgZ(3,"input",2),p.NdJ("keydown",function(r){return ue.resolveNameKey(r)}),p.qZA(),p.TgZ(4,"button",3),p.NdJ("click",function(){return ue.resolveName(ue.resolverControl.value)}),p._UZ(5,"mat-icon",4),p.qZA(),p.qZA(),p.qZA(),p.TgZ(6,"div",5),p._uU(7),p.YNc(8,A,9,3,"div",6),p.YNc(9,q,2,1,"ng-container",7),p.qZA(),p.qZA()),2&V&&(p.xp6(3),p.Q6J("formControl",ue.resolverControl),p.xp6(4),p.hij(" ",ue.errorMessage," "),p.xp6(1),p.Q6J("ngForOf",ue.resolvedNames),p.xp6(1),p.Q6J("ngIf",ue.matchedNames))},directives:[B.KE,I.Nt,d.Fj,d.JJ,d.oH,v.lW,B.R9,j.Hw,Q.sg,J.m,Q.O5,Z.rH],styles:[".resolver-search-icon[_ngcontent-%COMP%]{font-size:20px!important}.result-container[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;display:-ms-flexbox;display:flex;justify-content:space-evenly}.name-result[_ngcontent-%COMP%]{max-width:300px;text-align:center;-ms-flex-line-pack:center;align-content:center}.name-result-button[_ngcontent-%COMP%]{margin:5px}.mat-form-field[_ngcontent-%COMP%]{width:500px;max-width:100%}.search[_ngcontent-%COMP%] .mat-form-field-infix{border-top-width:1px!important;border-bottom-width:1px!important}"]}),ie}()},96769:function(dt,K,n){"use strict";n.d(K,{O:function(){return v}});var P=n(48047),t=n(78069),e=n(36362),p=n(90587),d=n(43365),s=n(87317),h=n(65590),f=n(98002),T=n(65838),B=n(24054),I=n(76442),v=function(){var j=(0,P.Z)(function Q(){(0,t.Z)(this,Q)});return j.\u0275fac=function(J){return new(J||j)},j.\u0275mod=I.oAB({type:j}),j.\u0275inj=I.cJS({imports:[[e.ez,p.UX,p.u5,d.c,s.ot,h.Ps,f.Bz,T.I,B.f]]}),j}()},51279:function(dt,K,n){"use strict";n.d(K,{P:function(){return d}});var P=n(78069),t=n(48047),e=n(76442),p=n(78444),d=function(){var s=function(){function h(f,T){(0,P.Z)(this,h),this.elementRef=f,this.scrollToService=T}return(0,t.Z)(h,[{key:"ngAfterViewInit",value:function(){null!=this.elementRef.nativeElement.id&&this.scrollToService.registerTargetElement(this.elementRef.nativeElement)}},{key:"ngOnDestroy",value:function(){this.scrollToService.unregisterTargetElement(this.elementRef.nativeElement)}}]),h}();return s.\u0275fac=function(f){return new(f||s)(e.Y36(e.SBq),e.Y36(p.i))},s.\u0275dir=e.lG2({type:s,selectors:[["","appScrollToTarget",""]]}),s}()},94673:function(dt,K,n){"use strict";n.d(K,{w:function(){return d}});var P=n(48047),t=n(78069),e=n(36362),p=n(76442),d=function(){var s=(0,P.Z)(function h(){(0,t.Z)(this,h)});return s.\u0275fac=function(f){return new(f||s)},s.\u0275mod=p.oAB({type:s}),s.\u0275inj=p.cJS({imports:[[e.ez]]}),s}()},78444:function(dt,K,n){"use strict";n.d(K,{i:function(){return s}});var P=n(78069),t=n(48047),e=n(50253),p=function(){function h(f,T,B){var I=this;(0,P.Z)(this,h),this.vAlign=T,this.registrationTerminatedSubject=new e.x,this.registrationTerminated=this.registrationTerminatedSubject.asObservable(),this.scrollToEventHandler=function(){null!=I.targetElement&&(I.targetElement.scrollIntoView({behavior:"smooth",block:I.vAlign}),setTimeout(function(){I.targetElement.classList.add("blink_me"),setTimeout(function(){I.targetElement.classList.remove("blink_me")},400)},500))},this.triggerElement=f,null!=B&&this.registerEventHandler(B)}return(0,t.Z)(h,[{key:"registerEventHandler",value:function(T){this.targetElement=T,this.triggerElement.addEventListener("click",this.scrollToEventHandler)}},{key:"unregister",value:function(){this.triggerElement.removeEventListener("click",this.scrollToEventHandler),this.registrationTerminatedSubject.next(0)}},{key:"inactivateRegistration",value:function(){this.triggerElement.removeEventListener("click",this.scrollToEventHandler)}}]),h}(),d=n(76442),s=function(){var h=function(){function f(){(0,P.Z)(this,f),this.triggerElementsDictionary={},this.targetElements=[]}return(0,t.Z)(f,[{key:"registerTriggerElement",value:function(B,I,v){var j=this,Q=this.targetElements.find(function(Z){return Z.id===B}),J=new p(I,v,Q);return null==this.triggerElementsDictionary[B]&&(this.triggerElementsDictionary[B]=[]),this.triggerElementsDictionary[B].push(J),J.registrationTerminated.subscribe(function(){var Z=j.triggerElementsDictionary[B].findIndex(function(A){return A.triggerElement.isEqualNode(J.triggerElement)});Z>-1&&j.triggerElementsDictionary[B].splice(Z,1)}),J}},{key:"registerTargetElement",value:function(B){this.targetElements.push(B),null!=this.triggerElementsDictionary[B.id]&&this.triggerElementsDictionary[B.id].forEach(function(I){I.registerEventHandler(B)})}},{key:"unregisterTargetElement",value:function(B){null!=this.triggerElementsDictionary[B.id]&&this.triggerElementsDictionary[B.id].forEach(function(v){v.inactivateRegistration()});var I=this.targetElements.findIndex(function(v){return v.id===B.id});I>-1&&this.targetElements.splice(I,1)}},{key:"scrollToElement",value:function(B){var I=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"start",v=this.targetElements.find(function(j){return j.id===B});null!=v&&(v.scrollIntoView({behavior:"smooth",block:I}),setTimeout(function(){v.classList.add("blink_me"),setTimeout(function(){v.classList.remove("blink_me")},400)},500))}}]),f}();return h.\u0275fac=function(T){return new(T||h)},h.\u0275prov=d.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"}),h}()},82835:function(dt,K,n){"use strict";n.d(K,{K:function(){return ie}});var P=n(78069),t=n(48047),e=n(76442),p=n(36362),d=n(86170),s=n(83336),h=function(){function H(V,ue){(0,P.Z)(this,H),this.ketcher=V,this.jsdraw=ue}return(0,t.Z)(H,[{key:"getMolfile",value:function(){if(null!=this.ketcher)return this.ketcher.getMolfile();if(null!=this.jsdraw){var ue=this.getMCharge(),R=this.jsdraw.getMolfile();if((R=R.replace(/0.0000[ ]D[ ][ ][ ]/g,"0.0000 H ")).indexOf("M CHG")<0&&null!==ue)for(var r=R.split("\n"),z=r.length-1;z>=3;z--)if("M END"===r[z]){var Y=r[z];r[z]=ue,r[z+1]=Y,R=r.join("\n");break}return this.clean(R)}return null}},{key:"getSmiles",value:function(){return null!=this.ketcher?this.ketcher.getSmiles():null!=this.jsdraw?this.jsdraw.getSmiles():void 0}},{key:"clean",value:function(ue){if((ue=ue.replace(/M[ ]*SMT.*mul.*/g,"@").replace(/\n/g,"|_|").replace(/[@][|][_][|]/g,"").replace(/[|][_][|]/g,"\n")).indexOf("M STY")>=0){var R=ue.split("\n"),r=0,z={};Array.from(R).filter(function(Y){return Y.indexOf("M SMT")>=0}).map(function(Y){return Y.substring(0,10)}).map(function(Y){z[Y]&&r++,z[Y]=1}),r>0&&(ue=ue.replace(/@/g,"!#!").replace(/STY/g,"@").replace(/(M[ ][ ]@[ ][ ]1)([ ]*[0-9]*)([^@]*)SMT([ ]*[0-9]*)/g,"$1$2$3SMT$2").replace(/@/g,"STY").replace(/!#!/g,"@"))}return ue}},{key:"setMolecule",value:function(ue){null!=this.ketcher?this.ketcher.setMolecule(ue):null!=this.jsdraw&&(this.jsdraw.pushundo(),this.jsdraw.options.data=ue,this.jsdraw.setMolfile(ue))}},{key:"structureUpdated",value:function(){var ue=this;return new s.y(function(R){null!=ue.jsdraw?ue.jsdraw.options.ondatachange=function(){var r=ue.getMolfile();R.next(r)}:R.next("")})}},{key:"getMCharge",value:function(){var ue=this;if(null!=this.jsdraw){var R=this.jsdraw.getXml(),r=1,Y=(new DOMParser).parseFromString(R,"text/xml"),se=Array.from(Y.getElementsByTagName("a")).filter(function(X){return X.hasAttribute("i")}).map(function(X){X.getAttribute("i");var ve=Number(X.getAttribute("c"));void 0===ve&&(ve=0);var Re={i:r++,c:ve-0,toString:function(){return ue.leftPad(Re.i+"",4)+ue.leftPad(Re.c+"",4)}};return Re}).filter(function(X){return 0!==X.c});if(se.length>0)return se.reduce(function(X,ne,ve){return ve%8==0?[].concat((0,d.Z)(X),[[ne]]):[].concat((0,d.Z)(X.slice(0,-1)),[[].concat((0,d.Z)(X.slice(-1)[0]),[ne])])},[]).map(function(X){return"M CHG"+ue.leftPad(X.length+"",3)+X.map(function(ne){return ne.toString()}).join("")})}return null}},{key:"rep",value:function(ue,R){for(var r="",z=0;zinput._scil_dropdown::-ms-clear {display: none;}'===Y){var se=document.createElement("style");se.innerHTML="input._scil_dropdown::-ms-clear {display: none;}",document.getElementsByTagName("head")[0].appendChild(se)}else R(Y)};for(var r=0;r1e5&&(R=r.canvasCopy.toDataURL("image/jpeg",1e5/R.length)),r.context.clearRect(0,0,r.canvasCopy.width,r.canvasCopy.height);z.height>700||z.width>900;)z.height=.9*z.height,z.width=.9*z.width;r.canvasCopy.width=z.width,r.canvasCopy.height=z.height,r.context.drawImage(z,0,0,z.width,z.height),r.sendToMolvec(R)})})}}},{key:"catchPaste",value:function(R){for(var r=this,z={},se=R.clipboardData.items,X=0;X0),e.xp6(1),e.Q6J("hidden",!R.canvasToggle),e.xp6(1),e.Q6J("ngIf",""!==R.canvasMessage),e.xp6(1),e.Q6J("height",R.height)("width",R.width)}},directives:[v,p.mk,p.O5,j.XZ,Q.wL,J.lW,Z.p6,A.Hw,Z.VK,Z.OP],styles:["#structure_canvas[_ngcontent-%COMP%]{margin:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;text-align:center}.below-editor-container[_ngcontent-%COMP%]{margin-top:10px;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.molvec-message[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.options[_ngcontent-%COMP%]{margin-right:10px}#canvas-container[_ngcontent-%COMP%]{width:100%;text-align:center}.canvas-message[_ngcontent-%COMP%]{font-weight:700;color:red}.canvas-label[_ngcontent-%COMP%]{padding-top:5px}.toggle[_ngcontent-%COMP%]{margin-left:10px;font-weight:700}.z-index[_ngcontent-%COMP%]{z-index:9999!important}.high[_ngcontent-%COMP%]{z-index:0!important}.higher[_ngcontent-%COMP%]{z-index:9988!important}"]}),H}()},56473:function(dt,K,n){"use strict";n.d(K,{h:function(){return N}});var P=n(48047),t=n(78069),e=n(36362),p=n(90587),d=n(3380),s=n(36513),h=n(65831),f=n(44770),T=n(43365),B=n(87317),I=n(65590),v=n(95758),j=n(60833),Q=n(60756),J=n(91434),Z=n(82796),A=n(76442),N=function(){var E=(0,P.Z)(function k(){(0,t.Z)(this,k)});return E.\u0275fac=function(q){return new(q||E)},E.\u0275mod=A.oAB({type:E}),E.\u0275inj=A.cJS({imports:[[e.ez,f.lN,T.c,J.LD,B.ot,I.Ps,v.Is,j.Cv,Z.Tx,p.UX,d.QW,s.Pt,h.x,Q.J]]}),E}()},69093:function(dt,K,n){"use strict";n.d(K,{oV:function(){return P.o},Nt:function(){return t.N},De:function(){return e.D}});var P=n(56540),t=n(84705),e=n(9552)},45592:function(dt,K,n){"use strict";n.d(K,{g:function(){return B}});var P=n(78069),t=n(48047),e=n(95758),p=n(76442),d=n(36362),s=n(12379),h=n(87317);function f(I,v){if(1&I&&(p.TgZ(0,"mat-tab",11),p._UZ(1,"textarea",9),p.qZA()),2&I){var j=p.oxw(2);p.xp6(1),p.Q6J("value",j.data.smiles)}}function T(I,v){if(1&I){var j=p.EpF();p.TgZ(0,"mat-tab-group",7),p.NdJ("selectedIndexChange",function(Z){return p.CHM(j),p.oxw().selectedIndexChange(Z)}),p.TgZ(1,"mat-tab",8),p._UZ(2,"textarea",9),p.qZA(),p.YNc(3,f,2,1,"mat-tab",10),p.qZA()}if(2&I){var Q=p.oxw();p.xp6(2),p.Q6J("value",Q.data.molfile),p.xp6(1),p.Q6J("ngIf",!Q.data.type||"polymer"!==Q.data.type)}}var B=function(){var I=function(){function v(j,Q){(0,P.Z)(this,v),this.dialogRef=j,this.data=Q,this.selectedIndex=0,this.downloadFunctions=[function(Z,A,N){if(null!=Z.molfile){var E=new Blob([Z.molfile],{type:"chemical/x-mdl-molfile"});A.download="substance_structure.mol",N(E,A)}},function(Z,A,N){if(null!=Z.smiles){var E=new Blob([Z.smiles],{type:"text/plain"});A.download="substance_smiles.smi",N(E,A)}}],this.anchorElement=document.createElement("a")}return(0,t.Z)(v,[{key:"ngOnInit",value:function(){}},{key:"selectedIndexChange",value:function(Q){this.selectedIndex=Q}},{key:"download",value:function(){this.downloadFunctions[this.selectedIndex](this.data,this.anchorElement,this.downloadFile)}},{key:"downloadFile",value:function(Q,J){J.href=window.URL.createObjectURL(Q),J.click()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}}]),v}();return I.\u0275fac=function(j){return new(j||I)(p.Y36(e.so),p.Y36(e.WI))},I.\u0275cmp=p.Xpm({type:I,selectors:[["app-structure-export"]],decls:10,vars:1,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"selectedIndexChange",4,"ngIf"],["mat-dialog-actions","",1,"export-actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-flat-button","","color","primary",3,"click"],[3,"selectedIndexChange"],["label","Molfile"],[3,"value"],["label","Smiles",4,"ngIf"],["label","Smiles"]],template:function(j,Q){1&j&&(p.TgZ(0,"h2",0),p._uU(1," Export\n"),p.qZA(),p.TgZ(2,"div",1),p.YNc(3,T,4,2,"mat-tab-group",2),p.qZA(),p.TgZ(4,"div",3),p._UZ(5,"span",4),p.TgZ(6,"button",5),p.NdJ("click",function(){return Q.dismissDialog()}),p._uU(7," Close "),p.qZA(),p.TgZ(8,"button",6),p.NdJ("click",function(){return Q.download()}),p._uU(9," Download "),p.qZA(),p.qZA()),2&j&&(p.xp6(3),p.Q6J("ngIf",Q.data))},directives:[d.O5,s.SP,s.uX,h.lW],styles:["h2[_ngcontent-%COMP%]{margin-top:0}textarea[_ngcontent-%COMP%]{margin-top:20px;height:50vh}.export-actions[_ngcontent-%COMP%]{padding-top:15px;display:-ms-flexbox;display:flex}"]}),I}()},56540:function(dt,K,n){"use strict";n.d(K,{o:function(){return R}});var P=n(95106),t=n(78069),e=n(48047),p=n(52149),d=n(95758),s=n(9552),h=n(76442),f=n(87317),T=n(65590),B=n(36362),I=n(98002),v=n(9292),j=n(12379),Q=function(z){return["/substances",z]};function J(r,z){if(1&r&&(h.TgZ(0,"div"),h.TgZ(1,"a",12),h.TgZ(2,"span",13),h._uU(3),h.qZA(),h.qZA(),h.qZA()),2&r){var Y=h.oxw(2);h.xp6(1),h.Q6J("routerLink",h.VKq(2,Q,Y.uuid)),h.xp6(2),h.Oqu(Y.approvalID)}}function Z(r,z){if(1&r&&h._uU(0),2&r){var Y=h.oxw(2);h.hij(" ",Y.approvalID," ")}}function A(r,z){if(1&r&&(h.TgZ(0,"div",9),h.YNc(1,J,4,4,"div",10),h.YNc(2,Z,1,1,"ng-template",null,11,h.W1O),h.qZA()),2&r){var Y=h.MAs(3),se=h.oxw();h.xp6(1),h.Q6J("ngIf",null!==se.uuid)("ngIfElse",Y)}}function N(r,z){if(1&r&&h._UZ(0,"img",14),2&r){var Y=h.oxw();h.Q6J("entityId",Y.structure)}}function E(r,z){if(1&r&&(h.TgZ(0,"div"),h.TgZ(1,"a",12),h.TgZ(2,"span",13),h._uU(3),h.qZA(),h.qZA(),h._uU(4,"\xa0 "),h.TgZ(5,"a",12),h.TgZ(6,"span",13),h._uU(7,"(view record)"),h.qZA(),h.qZA(),h.qZA()),2&r){var Y=h.oxw(2);h.xp6(1),h.Q6J("routerLink",h.VKq(3,Q,Y.uuid)),h.xp6(2),h.Oqu(Y.displayName),h.xp6(2),h.Q6J("routerLink",h.VKq(5,Q,Y.uuid))}}function k(r,z){if(1&r&&h._uU(0),2&r){var Y=h.oxw(2);h.hij(" ",Y.displayName," ")}}function q(r,z){if(1&r&&(h.TgZ(0,"div",15),h.YNc(1,E,8,7,"div",10),h.YNc(2,k,1,1,"ng-template",null,16,h.W1O),h.qZA()),2&r){var Y=h.MAs(3),se=h.oxw();h.xp6(1),h.Q6J("ngIf",null!==se.uuid)("ngIfElse",Y)}}function ce(r,z){if(1&r&&(h.TgZ(0,"li"),h._uU(1),h.qZA()),2&r){var Y=z.$implicit;h.xp6(1),h.hij(" ",Y," ")}}function ie(r,z){if(1&r&&(h.TgZ(0,"mat-tab",20),h.TgZ(1,"ul"),h.YNc(2,ce,2,1,"li",21),h.qZA(),h.qZA()),2&r){var Y=h.oxw(2);h.xp6(2),h.Q6J("ngForOf",Y.names)}}function H(r,z){if(1&r&&(h.TgZ(0,"mat-tab",22),h.TgZ(1,"textarea",23),h._uU(2),h.qZA(),h.qZA()),2&r){var Y=h.oxw(2);h.xp6(2),h.Oqu(Y.smiles)}}function V(r,z){if(1&r&&(h.TgZ(0,"mat-tab",24),h.TgZ(1,"textarea",25),h._uU(2),h.qZA(),h.TgZ(3,"textarea",26),h._uU(4),h.qZA(),h.qZA()),2&r){var Y=h.oxw(2);h.xp6(2),h.Oqu(Y.inchi),h.xp6(2),h.Oqu(Y.inchiKey)}}function ue(r,z){if(1&r&&(h.TgZ(0,"mat-tab-group"),h.YNc(1,ie,3,1,"mat-tab",17),h.YNc(2,H,3,1,"mat-tab",18),h.YNc(3,V,5,2,"mat-tab",19),h.qZA()),2&r){var Y=h.oxw();h.xp6(1),h.Q6J("ngIf",Y.names&&Y.names.length>0),h.xp6(1),h.Q6J("ngIf",Y.smiles),h.xp6(1),h.Q6J("ngIf",Y.inchi||Y.inchiKey)}}var R=function(){var r=function(){function z(Y,se,X,ne){(0,t.Z)(this,z),this.utilsService=Y,this.structureService=se,this.dialogRef=X,this.data=ne,this.names=[]}return(0,e.Z)(z,[{key:"ngOnInit",value:function(){var se=this;if(this.structure=this.data&&this.data.structure?this.data.structure:null,this.data.smiles&&(this.smiles=this.data.smiles,this.structureService.getOtherInchi(this.data.uuid).subscribe(function(Re){se.inchi=Re}),this.structureService.getInchi(this.data.uuid).subscribe(function(Re){se.inchiKey=Re})),this.data&&this.data.names&&this.data.names.length){var ne,X=(0,P.Z)(this.data.names);try{for(X.s();!(ne=X.n()).done;){var ve=ne.value;"sys"===ve.type&&this.names.push(ve.name)}}catch(Re){X.e(Re)}finally{X.f()}}this.data&&this.data.approvalID&&(this.approvalID=this.data.approvalID),this.data&&this.data.uuid&&(this.uuid=this.data.uuid),this.data&&this.data.displayName&&(this.displayName=this.data.displayName)}},{key:"dismissDialog",value:function(){this.dialogRef.close()}}]),z}();return r.\u0275fac=function(Y){return new(Y||r)(h.Y36(p.F),h.Y36(s.D),h.Y36(d.so),h.Y36(d.WI))},r.\u0275cmp=h.Xpm({type:r,selectors:[["app-structure-image-modal"]],decls:9,vars:4,consts:[["mat-dialog-content",""],[1,"structure-image-content"],["mat-mini-fab","",3,"click"],["svgIcon","close"],["class","approval",4,"ngIf"],[2,"height","500px","min-height","501px","width","500px","min-width","501px","margin","auto"],["appSubstanceImage","","size","500","stereo","true",3,"entityId",4,"ngIf"],["class","displayname",4,"ngIf"],[4,"ngIf"],[1,"approval"],[4,"ngIf","ngIfElse"],["noUuid",""],["target","_blank",3,"routerLink"],[1,"viewrecord"],["appSubstanceImage","","size","500","stereo","true",3,"entityId"],[1,"displayname"],["noDisplayUuid",""],["label","Systematic Names",4,"ngIf"],["label","SMILES",4,"ngIf"],["label","InChi",4,"ngIf"],["label","Systematic Names"],[4,"ngFor","ngForOf"],["label","SMILES"],["cdkTextareaAutosize","","id","smiles","readonly","",2,"height","45px"],["label","InChi"],["cdkTextareaAutosize","","id","inchi","readonly","",2,"height","45px"],["cdkTextareaAutosize","","id","inchiKey","readonly","",2,"height","45px"]],template:function(Y,se){1&Y&&(h.TgZ(0,"div",0),h.TgZ(1,"div",1),h.TgZ(2,"button",2),h.NdJ("click",function(){return se.dismissDialog()}),h._UZ(3,"mat-icon",3),h.qZA(),h.YNc(4,A,4,2,"div",4),h.TgZ(5,"div",5),h.YNc(6,N,1,1,"img",6),h.qZA(),h.YNc(7,q,4,2,"div",7),h.YNc(8,ue,4,3,"mat-tab-group",8),h.qZA(),h.qZA()),2&Y&&(h.xp6(4),h.Q6J("ngIf",se.approvalID),h.xp6(2),h.Q6J("ngIf",se.structure),h.xp6(1),h.Q6J("ngIf",se.displayName),h.xp6(1),h.Q6J("ngIf",se.smiles||se.names&&se.names.length>0||se.inchi||se.inchiKey))},directives:[f.lW,T.Hw,B.O5,I.yS,v.m,j.SP,j.uX,B.sg],styles:[".structure-image-panel .mat-dialog-container{padding:5px;position:relative;overflow:hidden} .structure-image-panel .mat-dialog-content{margin:0;padding:0;max-height:100%} .structure-image-panel .mat-tab-body-content{padding-left:10px;padding-right:10px}img[_ngcontent-%COMP%]{width:100%;height:auto}.structure-image-content[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{max-width:500px;margin:auto}mat-dialog-container[_ngcontent-%COMP%] div[mat-dialog-content][_ngcontent-%COMP%]{overflow:auto;height:100%}.mat-mini-fab[_ngcontent-%COMP%]{position:absolute;right:17px;top:8px;background-color:#f2f2f2d9;color:#404040;width:35px;height:35px}.mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0}.approval[_ngcontent-%COMP%]{position:relative;top:30px;width:80%;margin:0 auto;text-align:center}.displayname[_ngcontent-%COMP%]{width:80%;position:relative;margin:0 auto;text-align:center}.viewrecord[_ngcontent-%COMP%]{color:#448aff;font-weight:700;font-size:20px}"]}),r}()},84705:function(dt,K,n){"use strict";n.d(K,{N:function(){return Z}});var P=n(78069),t=n(48047),e=n(95758),p=n(90587),d=n(24874),s=n(9552),h=n(76442),f=n(36362),T=n(60833),B=n(87317),I=n(65831);function v(A,N){1&A&&h._UZ(0,"mat-progress-bar",12)}var j=function(N){return["message-container",N]};function Q(A,N){if(1&A&&(h.TgZ(0,"div",13),h._uU(1),h.qZA()),2&A){var E=h.oxw();h.Q6J("ngClass",h.VKq(2,j,E.messageClass)),h.xp6(1),h.hij(" ",E.message,"\n")}}var J=function(N){return{"has-message":N}},Z=function(){var A=function(){function N(E,k,q,ce){(0,P.Z)(this,N),this.dialogRef=E,this.data=k,this.gaService=q,this.structureService=ce,this.isLoading=!1,this.importTextControl=new p.NI,this.messageClass="error"}return(0,t.Z)(N,[{key:"ngOnInit",value:function(){}},{key:"importStructure",value:function(){var k=this;this.message=null,this.importTextControl.value?(this.isLoading=!0,this.structureService.interpretStructure(this.importTextControl.value).subscribe(function(q){k.isLoading=!1,q&&q.structure&&q.structure.molfile?(k.gaService.sendEvent("structureImport","button:import","file imported"),k.dialogRef.close(q)):(k.messageClass="error",k.message="You need to enter a valid molfile or smiles",k.gaService.sendException("wrong structure data imported"))},function(q){k.isLoading=!1,k.messageClass="error",k.message="There was an error importing your structure. Please refresh and try again.",k.gaService.sendException("postSubstanceStructure error")})):(this.messageClass="error",this.message="You have not entered anything to import",this.gaService.sendException("no structure data entered for import"))}},{key:"fileBrowse",value:function(){this.gaService.sendEvent("structureImport","button:browse-file","browse file")}},{key:"fileSelected",value:function(k){var q=this;if(this.gaService.sendEvent("structureImport","file-selected","file selected"),k){var ce=new FileReader;ce.onload=function(){q.importTextControl.setValue(ce.result)},ce.readAsText(k)}}},{key:"dismissDialog",value:function(){this.gaService.sendEvent("structureImport","button:close","no file imported"),this.dialogRef.close()}}]),N}();return A.\u0275fac=function(E){return new(E||A)(h.Y36(e.so),h.Y36(e.WI),h.Y36(d.$),h.Y36(s.D))},A.\u0275cmp=h.Xpm({type:A,selectors:[["app-structure-import"]],decls:17,vars:6,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"directions"],[1,"text-area-container"],[3,"formControl","ngClass"],["color","accent","mode","indeterminate",4,"ngIf"],[3,"ngClass",4,"ngIf"],["mat-dialog-actions","",1,"import-actions"],["mat-button","","ncatsFileSelect","",3,"selectedFile","click"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",1,"import-button",3,"click"],["color","accent","mode","indeterminate"],[3,"ngClass"]],template:function(E,k){1&E&&(h.TgZ(0,"h2",0),h._uU(1," Import Structure\n"),h.qZA(),h.TgZ(2,"div",1),h.TgZ(3,"div",2),h._uU(4,"Enter molfile or smiles:"),h.qZA(),h.TgZ(5,"div",3),h._UZ(6,"textarea",4),h.qZA(),h.qZA(),h.YNc(7,v,1,0,"mat-progress-bar",5),h.YNc(8,Q,2,4,"div",6),h.TgZ(9,"div",7),h.TgZ(10,"button",8),h.NdJ("selectedFile",function(ce){return k.fileSelected(ce)})("click",function(){return k.fileBrowse()}),h._uU(11,"Browse"),h.qZA(),h._UZ(12,"span",9),h.TgZ(13,"button",10),h.NdJ("click",function(){return k.dismissDialog()}),h._uU(14,"Close"),h.qZA(),h.TgZ(15,"button",11),h.NdJ("click",function(){return k.importStructure()}),h._uU(16,"Import"),h.qZA(),h.qZA()),2&E&&(h.xp6(6),h.Q6J("formControl",k.importTextControl)("ngClass",h.VKq(4,J,k.message)),h.xp6(1),h.Q6J("ngIf",k.isLoading),h.xp6(1),h.Q6J("ngIf",k.message))},directives:[p.Fj,p.JJ,p.oH,f.mk,f.O5,T.pW,B.lW,I.C],styles:["h2[_ngcontent-%COMP%]{margin-top:0}.directions[_ngcontent-%COMP%]{margin-bottom:5px}textarea[_ngcontent-%COMP%]{box-sizing:border-box;width:100%;height:50vh;border:solid 1px #b3b3b3;border-radius:2px;padding:5px;margin:0}textarea.has-message[_ngcontent-%COMP%]{border-bottom-left-radius:0;border-bottom-right-radius:0}.import-actions[_ngcontent-%COMP%]{padding-top:10px}.message-container[_ngcontent-%COMP%]{padding:5px 0;text-align:center;border-bottom-left-radius:2px;border-bottom-right-radius:2px}.message-container.default[_ngcontent-%COMP%]{background-color:#448aff66;color:#595959}.message-container.success[_ngcontent-%COMP%]{background-color:#a7ffeb66;color:#595959}.message-container.error[_ngcontent-%COMP%]{background-color:#e5737366;color:#595959}"]}),A}()},60756:function(dt,K,n){"use strict";n.d(K,{J:function(){return j}});var P=n(48047),t=n(78069),e=n(36362),p=n(60833),d=n(65590),s=n(12379),h=n(87317),f=n(24054),T=n(90587),B=n(98002),I=n(65831),v=n(76442),j=function(){var Q=(0,P.Z)(function J(){(0,t.Z)(this,J)});return Q.\u0275fac=function(Z){return new(Z||Q)},Q.\u0275mod=v.oAB({type:Q}),Q.\u0275inj=v.cJS({imports:[[e.ez,d.Ps,s.Nh,f.f,T.u5,T.UX,p.Cv,h.ot,B.Bz,I.x]]}),Q}()},9552:function(dt,K,n){"use strict";n.d(K,{D:function(){return h}});var P=n(78069),t=n(48047),e=n(92507),p=n(28784),d=n(76442),s=n(50318),h=function(){var f=function(){function T(B,I,v){(0,P.Z)(this,T),this.sanitizer=B,this.configService=I,this.http=v}return(0,t.Z)(T,[{key:"getSafeStructureImgUrl",value:function(I){var v=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150,j="".concat(this.configService.configData.apiBaseUrl,"img/").concat(I,".svg?size=").concat(v.toString());return this.sanitizer.bypassSecurityTrustUrl(j)}},{key:"getMolfile",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"img/").concat(I,".mol");return this.http.get(v,{responseType:"text"})}},{key:"downloadMolfile",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"img/").concat(I,".mol");return this.http.get(v,{responseType:"blob"})}},{key:"getInchi",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances(").concat(I,")/$structure!$inchikey()");return this.http.get(v,{responseType:"text"})}},{key:"getSDFile",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"api/v1/export/").concat(I,".SDFile");return this.http.get(v,{responseType:"text"})}},{key:"getOtherInchi",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances(").concat(I,")/$structure!$inchi()");return this.http.get(v,{responseType:"text"})}},{key:"resolveName",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"resolve?name=").concat(encodeURIComponent(I));return this.http.get(v)}},{key:"formatFormula",value:function(I){if(null==I.formula)return"";var v=I.formula.replace(/([a-zA-Z])([0-9]+)/g,"$1$2");if(null!=I.charge&&0!==I.charge&&!v.includes(".")){var j=I.charge.toString();console.log(j);var Q="+";I.charge<0&&(j=j.substring(1),Q="-",console.log(j)),"1"===j&&(j=""),v=v+""+j+Q+"",console.log(v)}return v}},{key:"getName",value:function(I){var v=new p.LE,j="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/search"),Q=I.replace('"',"");return v=v.append("q",'root_names_name:"^'+Q+'$" OR root_approvalID:"^'+Q+'$" OR root_codes_BDNUM:"^'+Q+'$"'),this.http.get(j,{params:v})}},{key:"interpretStructure",value:function(I,v,j){var Q="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/interpretStructure?mode=").concat(v||"","&standardize=").concat(j||"");return this.http.post(Q,I)}},{key:"molvec",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/ocrStructure");return this.http.post(v,I)}},{key:"duplicateCheck",value:function(I){var v="".concat(this.configService.configData.apiBaseUrl,"register/duplicateCheck");return this.http.post(v,I)}}]),T}();return f.\u0275fac=function(B){return new(B||f)(d.LFG(s.H7),d.LFG(e.E),d.LFG(p.eN))},f.\u0275prov=d.Yz7({token:f,factory:f.\u0275fac,providedIn:"root"}),f}()},68756:function(dt,K,n){"use strict";n.d(K,{uJ:function(){return P.u},Sg:function(){return p.S}});var P=n(54025),p=(n(30207),n(26120),n(72869));n(21866),n(63206)},54025:function(dt,K,n){"use strict";n.d(K,{u:function(){return f}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(2756),s=n(90587),h=n(93666),f=function(T){(0,e.Z)(I,T);var B=(0,p.Z)(I);function I(v){var j;return(0,P.Z)(this,I),(j=B.call(this)).gaService=v,j.page=0,j.pageSize=5,j.searchControl=new s.NI,j}return(0,t.Z)(I,[{key:"pageChange",value:function(j,Q){var J,Z;null!=j&&(this.pageSize!==j.pageSize?(J="select:page-size",Z=j.pageSize):this.page!==j.pageIndex&&(J="icon-button:page-number",Z=j.pageIndex+1),this.gaService.sendEvent(Q,J,"pager",Z),this.page=j.pageIndex,this.pageSize=j.pageSize),this.paged=[];for(var A=this.page*this.pageSize,N=A;N2&&void 0!==arguments[2]?arguments[2]:"substance card";null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){J.gaService.sendEvent(Z,"search",!h.N.isAnalyticsPrivate&&j||"input value"),J.filtered=[],Q.forEach(function(N){JSON.stringify(N).toLowerCase().indexOf(j.toLowerCase())>-1&&J.filtered.push(N)}),clearTimeout(J.searchTimer),J.searchTimer=null,J.page=0,J.pageChange()},700)}}]),I}(d.B)},2756:function(dt,K,n){"use strict";n.d(K,{B:function(){return p}});var P=n(48047),t=n(78069),e=n(76442),p=function(){var d=(0,P.Z)(function s(){(0,t.Z)(this,s),this.countUpdate=new e.vpe});return d.\u0275fac=function(h){return new(h||d)},d.\u0275prov=e.Yz7({token:d,factory:d.\u0275fac}),d}()},30207:function(dt,K,n){"use strict";n.d(K,{v:function(){return t}});var t=new(n(76442).OlP)("SUBSTANCE_CARDS_FILTERS")},26120:function(dt,K,n){"use strict";function P(j,Q){if(null==Q)return null;if(!(Q.indexOf(".")>-1))return j[Q];for(var J=Q.split("."),Z=j,A=J.length-1,N=0;N0&&(Z=!0)}),J.next(Z),J.complete()})}},{name:"countFilter",filter:function f(j,Q){return new t.y(function(J){var Z=!1,A=null!=Q.countMinimum?Q.countMinimum:1,N=null!=Q.countMaximum?Q.countMaximum:9999999;if(null!=Q.propertyToCheck){var E=P(j,Q.propertyToCheck);null!=E&&"[object Array]"===Object.prototype.toString.call(E)&&E.length&&E.length>=A&&E.length<=N&&(Z=!0)}J.next(Z),J.complete()})}},{name:"substanceCodes",filter:function T(j,Q){return new t.y(function(J){var Z=!1;if(j.codes&&j.codes.length>0)for(var A=0;A0)for(var A=function(q){var ce=j.relationships[q].type,ie=ce&&ce.trim()||"";if(Q.value instanceof Array){var H=!1;if(Q.value.forEach(function(V){ie.toLowerCase().indexOf(V.toLowerCase())>-1&&(H=!0)}),!H)return Z=!0,"break"}else if(ie.toLowerCase().indexOf(Q.value.toLowerCase())>-1)return Z=!0,"break"},N=0;N0?(0,h.D)(J.filters).subscribe(function(A){var N=!0;A.forEach(function(E){E||(N=!1)}),Z.next(N),Z.complete()}):(Z.next(!0),Z.complete())})}}]),j}(),T=n(88951),B=n(76442),I=n(28784),v=function(){var j=function(){function Q(J,Z,A,N){(0,P.Z)(this,Q),this.configService=J,this.filters=Z,this.http=A,this.auth=N}return(0,t.Z)(Q,[{key:"getSubstanceDetailsPropertiesAsync",value:function(Z){var A=this;return new s.y(function(N){var E=A.filters.reduce(function(q,ce){return q.concat(ce)},[]),k=A.configService.configData.substanceDetailsCards;null!=k&&k.length&&k.forEach(function(q,ce){var H=new p(q.title||q.type||"",null,q.card,q.type,null!=q.order?q.order:ce);q.filters&&q.filters.length?new f(Z,q.filters,E,A.http,A.auth).resolve().subscribe(function(ue){N.next(ue?H:null)}):N.next(H)})})}}]),Q}();return j.\u0275fac=function(J){return new(J||j)(B.LFG(e.E),B.LFG(d.v),B.LFG(I.eN),B.LFG(T.e))},j.\u0275prov=B.Yz7({token:j,factory:j.\u0275fac}),j}()},63206:function(dt,K,n){"use strict";n.d(K,{n:function(){return se}});var P=n(78069),t=n(48047),e=n(76442),p=n(12570),d=n(88325),s=n(49143),h=n(21866),f=n(52149),T=n(24874),B=n(93666),I=n(50253),v=n(98002),j=n(83448),Q=n(76775),J=n(50318),Z=n(7216),A=n(26131),N=n(36362),E=n(78444),k=function(){var X=function(){function ne(ve,Re){(0,P.Z)(this,ne),this.elementRef=ve,this.scrollToService=Re,this.vAlign="center"}return(0,t.Z)(ne,[{key:"ngAfterViewInit",value:function(){null!=this.scrollToElementId?this.registerTriggerElement():console.error("You need to enter a value for scrollToElementId")}},{key:"ngOnDestroy",value:function(){this.triggerElementRegistration.unregister()}},{key:"registerTriggerElement",value:function(){this.triggerElementRegistration=this.scrollToService.registerTriggerElement(this.scrollToElementId,this.elementRef.nativeElement,this.vAlign)}}]),ne}();return X.\u0275fac=function(ve){return new(ve||X)(e.Y36(e.SBq),e.Y36(E.i))},X.\u0275dir=e.lG2({type:X,selectors:[["","appScrollToTrigger",""]],inputs:{scrollToElementId:"scrollToElementId",vAlign:"vAlign"}}),X}(),q=n(65590),ce=n(16531),ie=n(51279),H=["matSideNavInstance"],V=["dynamicComponent"];function ue(X,ne){if(1&X&&(e.TgZ(0,"span",13),e._uU(1),e.qZA()),2&X){var ve=e.oxw().$implicit;e.xp6(1),e.Oqu(ve.count)}}function R(X,ne){if(1&X){var ve=e.EpF();e.TgZ(0,"a",8),e.NdJ("click",function(){var ge=e.CHM(ve).$implicit;return e.oxw().handleSidenavClick(ge.title)}),e.TgZ(1,"span",9),e._uU(2),e.qZA(),e.YNc(3,ue,2,1,"span",10),e._UZ(4,"span",11),e._UZ(5,"mat-icon",12),e.qZA()}if(2&X){var Re=ne.$implicit;e.Q6J("scrollToElementId",Re.dynamicComponentId+(Re.type?Re.type:"")),e.xp6(2),e.Oqu(Re.title),e.xp6(1),e.Q6J("ngIf",null!=Re.count)}}function r(X,ne){if(1&X&&(e.TgZ(0,"div",20),e._uU(1),e.qZA()),2&X){var ve=e.oxw(2);e.xp6(1),e.Oqu(ve.substance.approvalID)}}function z(X,ne){if(1&X&&(e.TgZ(0,"mat-expansion-panel",21),e.TgZ(1,"mat-expansion-panel-header"),e.TgZ(2,"mat-panel-title"),e.TgZ(3,"h2"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e._UZ(5,"div",null,22),e.qZA()),2&X){var ve=ne.$implicit;e.Q6J("id",ve.dynamicComponentId+(ve.type?ve.type:"")),e.xp6(4),e.Oqu(ve.title)}}function Y(X,ne){if(1&X&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._UZ(2,"h1",16),e._UZ(3,"span",11),e.YNc(4,r,2,1,"div",17),e.qZA(),e.TgZ(5,"mat-accordion",18),e.YNc(6,z,7,2,"mat-expansion-panel",19),e.qZA(),e.qZA()),2&X){var ve=e.oxw();e.xp6(2),e.Q6J("innerHTML",ve.substance._nameHTML?ve.substance._nameHTML:ve.substance._name,e.oJD),e.xp6(2),e.Q6J("ngIf",ve.substance.approvalID),e.xp6(2),e.Q6J("ngForOf",ve.substanceDetailsProperties)}}var se=function(){var X=function(){function ne(ve,Re,Ie,Ee,ge,_t,wt,qt,Lt,Rt,it,Qe){var ot=this;(0,P.Z)(this,ne),this.activatedRoute=ve,this.substanceService=Re,this.loadingService=Ie,this.mainNotificationService=Ee,this.router=ge,this.route=_t,this.dynamicComponentLoader=wt,this.substanceCardsService=qt,this.utilsService=Lt,this.gaService=Rt,this.activeRoute=it,this.titleService=Qe,this.substanceDetailsProperties=[],this.hasBackdrop=!1,this.substanceUpdated=new I.x,this.processResponsiveness=function(){window&&(window.innerWidth<1100?(ot.matSideNav.close(),ot.hasBackdrop=!0):(ot.matSideNav.open(),ot.hasBackdrop=!1))}}return(0,t.Z)(ne,[{key:"ngOnInit",value:function(){var Re=this;this.gaService.sendPageView("Substance Details"),this.id=this.activatedRoute.snapshot.params.id,this.version=this.activatedRoute.snapshot.params.version,this.loadingService.setLoading(!0),this.checkVersion().subscribe(function(Ie){Re.latestVersion=Ie,Re.activeRoute.params.subscribe(function(Ee){Re.id=Ee.id,Re.version=Ee.version,Re.version&&Number(Re.latestVersion)>Number(Re.version)?Re.getSubstanceDetails(Re.id,Re.version.toString()):Re.getSubstanceDetails(Re.id)})},function(Ie){Re.gaService.sendException("checkVersionCall: error from API call"),Re.loadingService.setLoading(!1),Re.handleSubstanceRetrivalError()})}},{key:"ngAfterViewInit",value:function(){var Re=this;this.dynamicComponents.changes.subscribe(function(){Re.dynamicComponents.forEach(function(Ie,Ee){var ge=Re.substanceDetailsProperties[Ee];ge.isLoaded||(ge.isLoaded=!0,Re.dynamicComponentLoader.getComponentFactory(ge.dynamicComponentId).subscribe(function(_t){var wt=Ie.createComponent(_t);wt.instance.countUpdate.subscribe(function(qt){ge.updateCount(qt)}),wt.instance.substance=Re.substance,wt.instance.substanceUpdated=Re.substanceUpdated.asObservable(),wt.instance.title=ge.title,wt.instance.analyticsEventCategory=!B.N.isAnalyticsPrivate&&Re.utilsService.toCamelCase("substance ".concat(ge.title))||"substanceCard",null!=ge.type&&(wt.instance.type=ge.type),wt.changeDetectorRef.detectChanges(),Re.substanceUpdated.next(Re.substance)}))})}),this.matSideNav.openedStart.subscribe(function(){Re.utilsService.handleMatSidenavOpen(1100)}),this.matSideNav.closedStart.subscribe(function(){Re.utilsService.handleMatSidenavClose()}),setTimeout(function(){Re.processResponsiveness()})}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"ngOnDestroy",value:function(){}},{key:"checkVersion",value:function(){return this.substanceService.checkVersion(this.id)}},{key:"getSubstanceDetails",value:function(Re,Ie){var Ee=this;this.substanceService.getSubstanceDetails(Re,Ie).subscribe(function(ge){ge?(Ee.titleService.setTitle(ge._name),Ee.substance=ge,Ee.substanceUpdated.next(ge),Ee.substanceCardsService.getSubstanceDetailsPropertiesAsync(Ee.substance).subscribe(function(_t){null!=_t&&Ee.insertSubstanceProperty(_t)}),Ee.substanceService.getMixtureParent(Re).subscribe(function(_t){_t&&_t.content&&_t.content.length>0&&(Ee.substance.$$mixtureParents=_t.content,Ee.substanceCardsService.getSubstanceDetailsPropertiesAsync(Ee.substance).subscribe(function(wt){null!=wt&&Ee.insertSubstanceProperty(wt)}))}),Ee.substanceService.getConstituentParent(Re).subscribe(function(_t){_t&&_t.content&&_t.content.length>0&&(Ee.substance.$$constituentParents=_t.content,Ee.substanceCardsService.getSubstanceDetailsPropertiesAsync(Ee.substance).subscribe(function(wt){null!=wt&&Ee.insertSubstanceProperty(wt)}))})):Ee.handleSubstanceRetrivalError(),Ee.loadingService.setLoading(!1)},function(ge){Ee.gaService.sendException("getSubstanceDetails: error from API call"),Ee.loadingService.setLoading(!1),Ee.handleSubstanceRetrivalError()})}},{key:"insertSubstanceProperty",value:function(Re,Ie,Ee){var ge=this.substanceDetailsProperties.length,_t=null!=Ie?Ie:0,wt=null!=Ee?Ee:ge-1,qt=_t+Math.floor((wt-_t)/2);if(0!==ge){if(Re.order>this.substanceDetailsProperties[wt].order)this.substanceDetailsProperties.splice(wt+1,0,Re);else if(Re.order=wt)){if(Re.orderthis.substanceDetailsProperties[qt].order)return void this.insertSubstanceProperty(Re,qt+1,wt);this.substanceDetailsProperties.forEach(function(Lt){"identifiers"===Lt.title&&(Lt.title="Codes - Identifiers"),"classification"===Lt.title&&(Lt.title="Codes - Classification")})}}else this.substanceDetailsProperties.push(Re)}},{key:"handleSubstanceRetrivalError",value:function(){var Re=this;this.mainNotificationService.setNotification({message:"The web address above is incorrect or the substance you're trying to see doesn't exist. We're forwarding you to Browse Substances",type:d.k.error,milisecondsToShow:5e3}),setTimeout(function(){var Ee={queryParams:{}};Ee.queryParams.search=Re.id||null,Re.router.navigate(["/browse-substance"],Ee)},5e3)}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substanceNav","button:sidenav","open"),this.matSideNav.open()}},{key:"handleSidenavClick",value:function(Re){this.gaService.sendEvent("substanceNav","link:nav-to",B.N.isAnalyticsPrivate?"substance card":Re),window&&window.innerWidth<1100&&(this.matSideNav.close(),this.hasBackdrop=!0)}}]),ne}();return X.\u0275fac=function(ve){return new(ve||X)(e.Y36(v.gz),e.Y36(p.d),e.Y36(j.b),e.Y36(Q.a),e.Y36(v.F0),e.Y36(v.gz),e.Y36(s.U),e.Y36(h.W),e.Y36(f.F),e.Y36(T.$),e.Y36(v.gz),e.Y36(J.Dx))},X.\u0275cmp=e.Xpm({type:X,selectors:[["app-substance-details"]],viewQuery:function(ve,Re){var Ie;1&ve&&(e.Gf(H,7),e.Gf(V,5,e.s_b)),2&ve&&(e.iGM(Ie=e.CRH())&&(Re.matSideNav=Ie.first),e.iGM(Ie=e.CRH())&&(Re.dynamicComponents=Ie))},hostBindings:function(ve,Re){1&ve&&e.NdJ("resize",function(Ee){return Re.onResize(Ee)},!1,e.Jf7)},decls:10,vars:4,consts:[[3,"hasBackdrop"],["mode","side","opened","",1,"white-background",3,"disableClose"],["matSideNavInstance",""],["mat-list-item","","tabindex","0","role","link","appScrollToTrigger","","vAlign","start",3,"scrollToElementId","click",4,"ngFor","ngForOf"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],[1,"side-nav-content"],["class","substance-details",4,"ngIf"],["mat-list-item","","tabindex","0","role","link","appScrollToTrigger","","vAlign","start",3,"scrollToElementId","click"],[1,"capitalized"],["class","chip",4,"ngIf"],[1,"middle-fill"],["svgIcon","chevron_right",1,"nav-chevron"],[1,"chip"],[1,"substance-details"],[1,"title-container"],[1,"substance-title",3,"innerHTML"],["class","approvalID",4,"ngIf"],["multi","true"],["expanded","true","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],[1,"approvalID"],["expanded","true","appScrollToTarget","",3,"id"],["dynamicComponent",""]],template:function(ve,Re){1&ve&&(e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"mat-nav-list"),e.YNc(4,R,6,3,"a",3),e.qZA(),e.qZA(),e.TgZ(5,"mat-sidenav-content"),e.TgZ(6,"button",4),e.NdJ("click",function(){return Re.openSideNav()}),e._UZ(7,"mat-icon",5),e.qZA(),e.TgZ(8,"div",6),e.YNc(9,Y,7,3,"div",7),e.qZA(),e.qZA(),e.qZA()),2&ve&&(e.Q6J("hasBackdrop",Re.hasBackdrop),e.xp6(1),e.Q6J("disableClose",!0),e.xp6(3),e.Q6J("ngForOf",Re.substanceDetailsProperties),e.xp6(5),e.Q6J("ngIf",Re.substance))},directives:[Z.TM,Z.JX,A.Hk,N.sg,A.Tg,k,N.O5,q.Hw,Z.Rh,ce.pp,ce.ib,ie.P,ce.yz,ce.yK],styles:[".side-nav-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}.substance-details[_ngcontent-%COMP%]{width:100%;max-width:928px;box-sizing:border-box}.title-container[_ngcontent-%COMP%]{padding:0 20px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.title-card[_ngcontent-%COMP%]{padding-top:15px;padding-bottom:15px;margin-bottom:10px}.white-background[_ngcontent-%COMP%]{background-color:#fff}.substance-title[_ngcontent-%COMP%]{display:inline-block}.approvalID[_ngcontent-%COMP%]{font-size:20px;color:#c7254e;font-weight:500}.chip[_ngcontent-%COMP%]{display:inline-block;background-color:#e0e0e0;border-radius:50%;padding:0 5px;margin-left:15px}mat-panel-title[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{text-transform:capitalize} .nav-chevron svg{height:24px;width:24px}@media (max-width: 1100px){.title-container[_ngcontent-%COMP%]{padding-left:25px}}@media (max-width: 500px){.title-container[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{word-break:break-all}}@media (max-width: 603px){ .mat-paginator-range-label{margin-left:10px;margin-right:10px}}"]}),X}()},84577:function(dt,K,n){"use strict";n.d(K,{h:function(){return J}});var P=n(78069),t=n(48047),e=n(76442),p=n(42827),d=n(90587),s=n(87317),h=n(82796),f=n(40089),T=n(36362),B=n(65590),I=n(61534);function v(Z,A){1&Z&&e._UZ(0,"mat-icon",8)}function j(Z,A){1&Z&&e._UZ(0,"mat-icon",9)}function Q(Z,A){if(1&Z){var N=e.EpF();e.TgZ(0,"div",10),e.NdJ("click",function(q){return q.stopPropagation()}),e.TgZ(1,"mat-checkbox",11),e.NdJ("change",function(q){var ie=e.CHM(N).$implicit;return e.oxw().updateAccess(q,ie)}),e._uU(2),e.qZA(),e.qZA()}if(2&Z){var E=A.$implicit;e.xp6(1),e.Q6J("formControlName",E.value),e.xp6(1),e.hij(" ",E.display," ")}}var J=function(){var Z=function(){function A(N,E){(0,P.Z)(this,A),this.cvService=N,this.element=E,this.privateAccess=[],this.accessOut=new e.vpe,this.accessFormGroup=new d.cw({})}return(0,t.Z)(A,[{key:"ngOnInit",value:function(){}},{key:"ngAfterViewInit",value:function(){}},{key:"access",get:function(){return this.privateAccess},set:function(E){null!=E?(this.privateAccess=E,this.getVocabularies()):(this.privateAccess=[],this.getVocabularies())}},{key:"getVocabularies",value:function(){var E=this;this.cvService.getDomainVocabulary("ACCESS_GROUP").subscribe(function(k){var q=k.ACCESS_GROUP.list;E.createAccessFromGroup(q),E.accessOptions=q,E.crosscheckAccesses()})}},{key:"createAccessFromGroup",value:function(){var E=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],k={};E.forEach(function(q){k[q.value]=new d.NI}),this.accessFormGroup=new d.cw(k)}},{key:"crosscheckAccesses",value:function(){var E=this;this.tooltipMessage="Access is set to: ",this.privateAccess.length>0?(this.privateAccess.forEach(function(k){for(var q=0;q1&&(this.tooltipMessage+=", "),this.tooltipMessage+=k.display;else{var q=this.privateAccess.indexOf(k.value);q>-1&&this.privateAccess.splice(q,1),this.tooltipMessage=this.tooltipMessage.replace(k.display,"").replace(": , ",": ").replace(", ,",",").replace(/,$/,"").replace(/(, )$/,""),0===this.privateAccess.length&&(this.tooltipMessage+="public")}this.accessOut.emit(this.privateAccess)}},{key:"menuOpened",value:function(){var E=new Event("focusin",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(E)}},{key:"menuClosed",value:function(){var E=new Event("focusout",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(E)}}]),A}();return Z.\u0275fac=function(N){return new(N||Z)(e.Y36(p.I),e.Y36(e.SBq))},Z.\u0275cmp=e.Xpm({type:Z,selectors:[["app-access-manager"]],inputs:{label:"label",access:"access"},outputs:{accessOut:"accessOut"},decls:10,vars:7,consts:[[1,"menu-container"],["mat-button","",3,"matMenuTriggerFor","matTooltip","menuOpened","menuClosed"],["svgIcon","lock",4,"ngIf"],["svgIcon","lock_open",4,"ngIf"],["xPosition","before"],["accessMenu","matMenu"],[3,"formGroup"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["svgIcon","lock"],["svgIcon","lock_open"],["mat-menu-item","",3,"click"],[3,"formControlName","change"]],template:function(N,E){if(1&N&&(e.TgZ(0,"div",0),e.TgZ(1,"button",1),e.NdJ("menuOpened",function(){return E.menuOpened()})("menuClosed",function(){return E.menuClosed()}),e.YNc(2,v,1,0,"mat-icon",2),e.YNc(3,j,1,0,"mat-icon",3),e.TgZ(4,"span"),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-menu",4,5),e.TgZ(8,"form",6),e.YNc(9,Q,3,2,"div",7),e.qZA(),e.qZA(),e.qZA()),2&N){var k=e.MAs(7);e.xp6(1),e.Q6J("matMenuTriggerFor",k)("matTooltip",E.tooltipMessage),e.xp6(1),e.Q6J("ngIf",E.access.length),e.xp6(1),e.Q6J("ngIf",!E.access.length),e.xp6(2),e.Oqu(E.label?E.label:"Access"),e.xp6(3),e.Q6J("formGroup",E.accessFormGroup),e.xp6(1),e.Q6J("ngForOf",E.accessOptions)}},directives:[s.lW,h.p6,f.gM,T.O5,B.Hw,h.VK,d._Y,d.JL,d.sg,T.sg,h.OP,I.oG,d.JJ,d.u],styles:[".menu-container[_ngcontent-%COMP%]{padding-bottom:14px}"]}),Z}()},457:function(dt,K,n){"use strict";n.d(K,{O:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(33567),f=n(68785),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,Z.substance.modifications||(Z.substance.modifications={}),Z.substance.modifications.agentModifications||(Z.substance.modifications.agentModifications=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.modifications.agentModifications)});this.subscriptions.push(A)}},{key:"substanceAgentModifications",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceAgentModification",value:function(){this.substance.modifications.agentModifications.unshift({}),this.propertyEmitter.next(this.substance.modifications.agentModifications)}},{key:"deleteSubstanceAgentModification",value:function(Z){var A=this.substance.modifications.agentModifications.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.modifications.agentModifications.splice(A,1),this.propertyEmitter.next(this.substance.modifications.agentModifications))}}]),Q}(f.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(h.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},33662:function(dt,K,n){"use strict";n.d(K,{f:function(){return E}});var P=n(78069),t=n(48047),e=n(42827),p=n(90587),d=n(76442),s=n(84577),h=n(36362),f=n(44770),T=n(91434),B=n(1130),I=n(43365);function v(k,q){if(1&k&&(d.TgZ(0,"mat-option",8),d._uU(1),d.qZA()),2&k){var ce=q.$implicit;d.Q6J("value",ce.value),d.xp6(1),d.hij(" ",ce.display," ")}}function j(k,q){if(1&k&&(d.TgZ(0,"mat-option",8),d._uU(1),d.qZA()),2&k){var ce=d.oxw(2);d.s9C("value",ce.privateSubstanceAmount.type),d.xp6(1),d.hij("",ce.privateSubstanceAmount.type," (not in CV)")}}function Q(k,q){if(1&k){var ce=d.EpF();d.TgZ(0,"div",27),d.TgZ(1,"input",28),d.NdJ("focusout",function(H){return d.CHM(ce),d.oxw(2).updateType(H.target)}),d.qZA(),d.qZA()}}function J(k,q){if(1&k&&(d.TgZ(0,"mat-option",8),d._uU(1),d.qZA()),2&k){var ce=q.$implicit;d.Q6J("value",ce.value),d.xp6(1),d.hij(" ",ce.display," ")}}function Z(k,q){if(1&k&&(d.TgZ(0,"mat-option",8),d._uU(1),d.qZA()),2&k){var ce=d.oxw(2);d.s9C("value",ce.privateSubstanceAmount.units),d.xp6(1),d.hij("",ce.privateSubstanceAmount.units," (not in CV)")}}function A(k,q){if(1&k){var ce=d.EpF();d.TgZ(0,"div",27),d.TgZ(1,"input",28),d.NdJ("focusout",function(H){return d.CHM(ce),d.oxw(2).updateUnits(H.target)}),d.qZA(),d.qZA()}}function N(k,q){if(1&k&&(d.TgZ(0,"form",3),d.TgZ(1,"div",4),d.TgZ(2,"div",5),d.TgZ(3,"div"),d.TgZ(4,"mat-form-field",6),d.TgZ(5,"mat-label"),d._uU(6,"Type *"),d.qZA(),d.TgZ(7,"mat-select",7),d.TgZ(8,"mat-option",8),d.TgZ(9,"span",9),d._uU(10,"Clear selection"),d.qZA(),d.qZA(),d.YNc(11,v,2,2,"mat-option",10),d.YNc(12,j,2,2,"mat-option",11),d.TgZ(13,"mat-option",12),d._uU(14,"Other (New Value)"),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.YNc(15,Q,2,0,"div",13),d.qZA(),d.TgZ(16,"mat-form-field",14),d._UZ(17,"input",15),d.qZA(),d.TgZ(18,"mat-form-field",16),d._UZ(19,"input",17),d.qZA(),d.TgZ(20,"mat-form-field",18),d._UZ(21,"input",19),d.qZA(),d.qZA(),d.TgZ(22,"div",4),d.TgZ(23,"mat-form-field",20),d._UZ(24,"input",21),d.qZA(),d.TgZ(25,"mat-form-field",22),d._UZ(26,"input",23),d.qZA(),d.TgZ(27,"div",5),d.TgZ(28,"div"),d.TgZ(29,"mat-form-field",24),d.TgZ(30,"mat-label"),d._uU(31,"Units"),d.qZA(),d.TgZ(32,"mat-select",7),d.TgZ(33,"mat-option",8),d.TgZ(34,"span",9),d._uU(35,"Clear selection"),d.qZA(),d.qZA(),d.YNc(36,J,2,2,"mat-option",10),d.YNc(37,Z,2,2,"mat-option",11),d.TgZ(38,"mat-option",12),d._uU(39,"Other (New Value)"),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.YNc(40,A,2,0,"div",13),d.qZA(),d.TgZ(41,"mat-form-field",25),d._UZ(42,"input",26),d.qZA(),d.qZA(),d.qZA()),2&k){var ce=d.oxw();d.xp6(7),d.Q6J("formControl",ce.typeControl),d.xp6(1),d.Q6J("value",null),d.xp6(3),d.Q6J("ngForOf",ce.amountTypeList),d.xp6(1),d.Q6J("ngIf",ce.privateSubstanceAmount.type&&!ce.inCV(ce.amountTypeList,ce.privateSubstanceAmount.type)&&""!==ce.privateSubstanceAmount.type),d.xp6(3),d.Q6J("ngIf","other"===ce.privateSubstanceAmount.type),d.xp6(2),d.Q6J("formControl",ce.averageControl),d.xp6(2),d.Q6J("formControl",ce.lowControl),d.xp6(2),d.Q6J("formControl",ce.highControl),d.xp6(3),d.Q6J("formControl",ce.lowLimitControl),d.xp6(2),d.Q6J("formControl",ce.highLimitControl),d.xp6(6),d.Q6J("formControl",ce.unitsControl),d.xp6(1),d.Q6J("value",null),d.xp6(3),d.Q6J("ngForOf",ce.amountUnitList),d.xp6(1),d.Q6J("ngIf",ce.privateSubstanceAmount.units&&!ce.inCV(ce.amountUnitList,ce.privateSubstanceAmount.units)&&""!==ce.privateSubstanceAmount.units),d.xp6(3),d.Q6J("ngIf","other"===ce.privateSubstanceAmount.units),d.xp6(2),d.Q6J("formControl",ce.nonNumericValueControl)}}var E=function(){var k=function(){function q(ce){(0,P.Z)(this,q),this.cvService=ce,this.amountTypeList=[],this.amountUnitList=[],this.typeControl=new p.NI("",p.kI.required),this.averageControl=new p.NI(""),this.lowControl=new p.NI(""),this.highControl=new p.NI(""),this.lowLimitControl=new p.NI(""),this.highLimitControl=new p.NI(""),this.unitsControl=new p.NI(""),this.nonNumericValueControl=new p.NI("")}return(0,t.Z)(q,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"substanceAmount",get:function(){return this.privateSubstanceAmount},set:function(ie){var H=this;null!=ie&&(this.privateSubstanceAmount=ie,this.typeControl.setValue(this.privateSubstanceAmount.type),this.typeControl.valueChanges.subscribe(function(V){H.privateSubstanceAmount.type=V}),this.averageControl.setValue(this.privateSubstanceAmount.average),this.averageControl.valueChanges.subscribe(function(V){null===V||1===V.length&&V.match(/[a-z]/i)?H.averageControl.setValue(""):V.match(/^[0-9,.]*$/)||H.averageControl.setValue(""),H.privateSubstanceAmount.average=V}),this.lowControl.setValue(this.privateSubstanceAmount.low),this.lowControl.valueChanges.subscribe(function(V){null===V||1===V.length&&V.match(/[a-z]/i)?H.lowControl.setValue(""):V.match(/^[0-9,.]*$/)||H.lowControl.setValue(""),H.privateSubstanceAmount.low=V}),this.highControl.setValue(this.privateSubstanceAmount.high),this.highControl.valueChanges.subscribe(function(V){null===V||1===V.length&&V.match(/[a-z]/i)?H.highControl.setValue(""):V.match(/^[0-9,.]*$/)||H.highControl.setValue(""),H.privateSubstanceAmount.high=V}),this.lowLimitControl.setValue(this.privateSubstanceAmount.lowLimit),this.lowLimitControl.valueChanges.subscribe(function(V){null===V||1===V.length&&V.match(/[a-z]/i)?H.lowLimitControl.setValue(""):V.match(/^[0-9,.]*$/)||H.lowLimitControl.setValue(""),H.privateSubstanceAmount.lowLimit=V}),this.highLimitControl.setValue(this.privateSubstanceAmount.highLimit),this.highLimitControl.valueChanges.subscribe(function(V){null===V||1===V.length&&V.match(/[a-z]/i)?H.highLimitControl.setValue(""):V.match(/^[0-9,.]*$/)||H.highLimitControl.setValue(""),H.privateSubstanceAmount.highLimit=V}),this.unitsControl.setValue(this.privateSubstanceAmount.units),this.unitsControl.valueChanges.subscribe(function(V){H.privateSubstanceAmount.units=V}),this.nonNumericValueControl.setValue(this.privateSubstanceAmount.nonNumericValue),this.nonNumericValueControl.valueChanges.subscribe(function(V){H.privateSubstanceAmount.nonNumericValue=V}))}},{key:"updateAccess",value:function(ie){this.privateSubstanceAmount.access=ie,this.substanceAmount.access=ie}},{key:"updateType",value:function(ie){var H=this;setTimeout(function(){H.typeControl.setValue(ie.value)}),this.privateSubstanceAmount.type=ie.value}},{key:"updateUnits",value:function(ie){var H=this;setTimeout(function(){H.unitsControl.setValue(ie.value)}),this.privateSubstanceAmount.units=ie.value}},{key:"getVocabularies",value:function(){var ie=this;this.cvService.getDomainVocabulary("AMOUNT_TYPE","AMOUNT_UNIT").subscribe(function(H){ie.amountTypeList=H.AMOUNT_TYPE.list,ie.amountUnitList=H.AMOUNT_UNIT.list})}},{key:"inCV",value:function(ie,H){return ie.some(function(V){return H===V.value})}}]),q}();return k.\u0275fac=function(ce){return new(ce||k)(d.Y36(e.I))},k.\u0275cmp=d.Xpm({type:k,selectors:[["app-amount-form"]],inputs:{substanceAmount:"substanceAmount"},decls:3,vars:2,consts:[[1,"access"],[1,"right",3,"access","accessOut"],["class","amount-form",4,"ngIf"],[1,"amount-form"],[1,"form-row"],[1,"other-container"],[1,"amount-type"],[3,"formControl"],[3,"value"],[1,"deselect"],[3,"value",4,"ngFor","ngForOf"],[3,"value",4,"ngIf"],["value","other"],["class","custom",4,"ngIf"],[1,"amount-average"],["type","text","matInput","","placeholder","Average",3,"formControl"],[1,"low"],["type","text","matInput","","placeholder","Low",3,"formControl"],[1,"high"],["type","text","matInput","","placeholder","High",3,"formControl"],[1,"low-limit"],["type","text","matInput","","placeholder","Low Limit",3,"formControl"],[1,"high-limit"],["type","text","matInput","","placeholder","High Limit",3,"formControl"],[1,"amount-units"],[1,"non-numeric-value"],["matInput","","placeholder","Non-numeric Value",3,"formControl"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"]],template:function(ce,ie){1&ce&&(d.TgZ(0,"div",0),d.TgZ(1,"app-access-manager",1),d.NdJ("accessOut",function(V){return ie.updateAccess(V)}),d.qZA(),d.qZA(),d.YNc(2,N,43,16,"form",2)),2&ce&&(d.xp6(1),d.Q6J("access",ie.substanceAmount.access),d.xp6(1),d.Q6J("ngIf",ie.substanceAmount))},directives:[s.h,h.O5,p._Y,p.JL,p.F,f.KE,f.hX,T.gD,p.JJ,p.oH,B.ey,h.sg,I.Nt,p.Fj],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .amount-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount-average[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low-limit[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high-limit[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount-units[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .non-numeric-value[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .amount-type[_ngcontent-%COMP%]{width:125px}.form-row[_ngcontent-%COMP%] .amount-units[_ngcontent-%COMP%]{width:110px}.form-row[_ngcontent-%COMP%] .amount-average[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low-limit[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high-limit[_ngcontent-%COMP%]{width:70px}.form-row[_ngcontent-%COMP%] .non-numeric-value[_ngcontent-%COMP%]{width:90px}.form-row[_ngcontent-%COMP%] .jurisdiction[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.risen[_ngcontent-%COMP%]{margin-top:-15px}.deselect[_ngcontent-%COMP%]{color:#00000080}.other-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.custom[_ngcontent-%COMP%]{border-bottom:1px solid rgba(0,0,0,.35)}.amount-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.right[_ngcontent-%COMP%]{float:right}"]}),k}()},14900:function(dt,K,n){"use strict";n.d(K,{n:function(){return I}});var P=n(78069),t=n(48047),e=n(76442),p=n(36362);function d(v,j){if(1&v&&(e.TgZ(0,"div",5),e.TgZ(1,"b",6),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.qZA()),2&v){var Q=e.oxw(2);e.xp6(3),e.hij(" ",Q.source.createdBy," ")}}function s(v,j){if(1&v&&(e.TgZ(0,"div",7),e.TgZ(1,"b",6),e._uU(2,"on"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.qZA()),2&v){var Q=e.oxw(2);e.xp6(3),e.hij(" ",e.xi3(4,1,Q.source.created,"medium"),"")}}function h(v,j){1&v&&(e.TgZ(0,"div",8),e.TgZ(1,"b"),e._uU(2,"-"),e.qZA(),e.qZA())}function f(v,j){if(1&v&&(e.TgZ(0,"div",5),e.TgZ(1,"b",6),e._uU(2,"Last Edited By"),e.qZA(),e._uU(3),e.qZA()),2&v){var Q=e.oxw(2);e.xp6(3),e.hij(": ",Q.source.lastEditedBy," ")}}function T(v,j){if(1&v&&(e.TgZ(0,"div",7),e.TgZ(1,"b",6),e._uU(2,"on"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.qZA()),2&v){var Q=e.oxw(2);e.xp6(3),e.hij(" ",e.xi3(4,1,Q.source.lastEdited,"medium"),"")}}function B(v,j){if(1&v&&(e.TgZ(0,"div",1),e.YNc(1,d,4,1,"div",2),e.YNc(2,s,5,4,"div",3),e.YNc(3,h,3,0,"div",4),e.YNc(4,f,4,1,"div",2),e.YNc(5,T,5,4,"div",3),e.qZA()),2&v){var Q=e.oxw();e.xp6(1),e.Q6J("ngIf",Q.source.createdBy),e.xp6(1),e.Q6J("ngIf",Q.source.created),e.xp6(1),e.Q6J("ngIf",Q.source.created&&Q.source.lastEdited),e.xp6(1),e.Q6J("ngIf",Q.source.lastEditedBy),e.xp6(1),e.Q6J("ngIf",Q.source.lastEdited)}}var I=function(){var v=function(){function j(){(0,P.Z)(this,j)}return(0,t.Z)(j,[{key:"ngOnInit",value:function(){}}]),j}();return v.\u0275fac=function(Q){return new(Q||v)},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-audit-info"]],inputs:{source:"source"},decls:1,vars:1,consts:[["class","audit-container",4,"ngIf"],[1,"audit-container"],["class","name",4,"ngIf"],["class","date",4,"ngIf"],["class","spacer",4,"ngIf"],[1,"name"],[1,"static"],[1,"date"],[1,"spacer"]],template:function(Q,J){1&Q&&e.YNc(0,B,6,5,"div",0),2&Q&&e.Q6J("ngIf",J.source)},directives:[p.O5],pipes:[p.uU],styles:[".audit-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;padding-left:15px;font-family:Roboto,Helvetica Neue,sans-serif;padding-top:10px;padding-bottom:2px}.spacer[_ngcontent-%COMP%]{padding-left:5px;padding-right:10px}.static[_ngcontent-%COMP%]{padding-right:3px}.name[_ngcontent-%COMP%], .date[_ngcontent-%COMP%]{padding-right:5px}"]}),v}()},79550:function(dt,K,n){"use strict";n.d(K,{u:function(){return f}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(79223),s=n(90587),h=n(93666),f=function(T){(0,e.Z)(I,T);var B=(0,p.Z)(I);function I(v){var j;return(0,P.Z)(this,I),(j=B.call(this)).gaService=v,j.page=0,j.pageSize=5,j.searchControl=new s.NI,j}return(0,t.Z)(I,[{key:"pageChange",value:function(j,Q){var J,Z;null!=j&&(this.pageSize!==j.pageSize?(J="select:page-size",Z=j.pageSize):this.page!==j.pageIndex&&(J="icon-button:page-number",Z=j.pageIndex+1),this.gaService.sendEvent(Q,J,"pager",Z),this.page=j.pageIndex,this.pageSize=j.pageSize),this.paged=[];for(var A=this.page*this.pageSize,N=A;N2&&void 0!==arguments[2]?arguments[2]:"substance card";null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){J.gaService.sendEvent(Z,"search",!h.N.isAnalyticsPrivate&&j||"input value"),J.filtered=[],Q.forEach(function(N){JSON.stringify(N).toLowerCase().indexOf(j.toLowerCase())>-1&&J.filtered.push(N)}),clearTimeout(J.searchTimer),J.searchTimer=null,J.page=0,J.pageChange()},700)}}]),I}(d.o)},79223:function(dt,K,n){"use strict";n.d(K,{o:function(){return p}});var P=n(48047),t=n(78069),e=n(76442),p=function(){var d=(0,P.Z)(function s(){(0,t.Z)(this,s),this.menuLabelUpdate=new e.vpe,this.hiddenStateUpdate=new e.vpe,this.canAddItemUpdate=new e.vpe,this.componentDestroyed=new e.vpe});return d.\u0275fac=function(h){return new(h||d)},d.\u0275prov=e.Yz7({token:d,factory:d.\u0275fac}),d}()},68785:function(dt,K,n){"use strict";n.d(K,{E:function(){return p}});var P=n(78069),t=n(48047),e=n(26067),p=function(){function d(s){var h=this;(0,P.Z)(this,d),this.substanceFormService=s,this.subscriptions=[],this.propertyEmitter=new e.t,this.substanceFormService.substanceFormAction.subscribe(function(f){setTimeout(function(){"load"===f?h.initSubtanceForm():h.unloadSubstance()})})}return(0,t.Z)(d,[{key:"initSubtanceForm",value:function(){}},{key:"unloadSubstance",value:function(){this.subscriptions.forEach(function(h){h.unsubscribe()}),this.subscriptions=[],this.propertyEmitter.complete(),this.propertyEmitter=new e.t}}]),d}()},66794:function(dt,K,n){"use strict";n.d(K,{y:function(){return h}});var P=n(78069),t=n(48047),e=n(88951),p=n(83336),d=n(76442),s=n(98002),h=function(){var f=function(){function T(B,I){(0,P.Z)(this,T),this.router=B,this.authService=I}return(0,t.Z)(T,[{key:"canActivate",value:function(I,v){var j=this;return new p.y(function(Q){j.authService.getAuth().subscribe(function(J){J?j.authService.hasAnyRolesAsync("Updater","SuperUpdater").subscribe(function(A){A?(Q.next(!0),Q.complete()):(Q.next(j.router.parseUrl("/browse-substance")),Q.complete())}):(Q.next(j.router.createUrlTree(["/login"],{queryParams:{path:v.url}})),Q.complete())})})}}]),T}();return f.\u0275fac=function(B){return new(B||f)(d.LFG(s.F0),d.LFG(e.e))},f.\u0275prov=d.Yz7({token:f,factory:f.\u0275fac}),f}()},44646:function(dt,K,n){"use strict";n.d(K,{R:function(){return h}});var P=n(78069),t=n(48047),e=n(88951),p=n(83336),d=n(76442),s=n(98002),h=function(){var f=function(){function T(B,I){(0,P.Z)(this,T),this.router=B,this.authService=I}return(0,t.Z)(T,[{key:"canActivate",value:function(I,v){var j=this;return new p.y(function(Q){j.authService.getAuth().subscribe(function(J){J?j.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry").subscribe(function(A){A?(Q.next(!0),Q.complete()):(Q.next(j.router.parseUrl("/browse-substance")),Q.complete())}):(Q.next(j.router.createUrlTree(["/login"],{queryParams:{path:v.url}})),Q.complete())})})}}]),T}();return f.\u0275fac=function(B){return new(B||f)(d.LFG(s.F0),d.LFG(e.e))},f.\u0275prov=d.Yz7({token:f,factory:f.\u0275fac}),f}()},66452:function(dt,K,n){"use strict";n.d(K,{W:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(33567),f=n(68785),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,null==Z.substance.codes&&(Z.substance.codes=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.codes)});this.subscriptions.push(A)}},{key:"substanceCodes",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceCode",value:function(){this.substance.codes.unshift({references:[],access:[]}),this.propertyEmitter.next(this.substance.codes)}},{key:"deleteSubstanceCode",value:function(Z){var A=this.substance.codes.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.codes.splice(A,1),this.propertyEmitter.next(this.substance.codes))}}]),Q}(f.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(h.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},26984:function(dt,K,n){"use strict";n.d(K,{D:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(33567),f=n(68785),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,null==Z.substance.specifiedSubstance.constituents&&(Z.substance.specifiedSubstance.constituents=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.specifiedSubstance.constituents)});this.subscriptions.push(A)}},{key:"substanceConstituents",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceConstituent",value:function(){this.substance.specifiedSubstance.constituents.unshift({references:[],access:["protected"]}),this.propertyEmitter.next(this.substance.specifiedSubstance.constituents)}},{key:"deleteSubstanceConstituent",value:function(Z){var A=this.substance.specifiedSubstance.constituents.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.specifiedSubstance.constituents.splice(A,1),this.propertyEmitter.next(this.substance.specifiedSubstance.constituents))}}]),Q}(f.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(h.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},12142:function(dt,K,n){"use strict";n.d(K,{i:function(){return J}});var P=n(78069),t=n(48047),e=n(95758),p=n(18291),d=n(63169),s=n(76442),h=n(36362),f=n(44770),T=n(43365),B=n(90587),I=n(87317);function v(Z,A){1&Z&&(s.TgZ(0,"div",3),s._uU(1,"true "),s._UZ(2,"app-fragment-wizard"),s.qZA())}function j(Z,A){if(1&Z&&(s.TgZ(0,"div",18),s.TgZ(1,"span"),s._uU(2),s.qZA(),s._uU(3),s.qZA()),2&Z){var N=A.$implicit;s.xp6(1),s.Gre("",N.messageType," type"),s.xp6(1),s.hij("",N.messageType," :"),s.xp6(1),s.Oqu(N.message)}}function Q(Z,A){if(1&Z&&(s.TgZ(0,"div",16),s.TgZ(1,"div"),s.TgZ(2,"b"),s._uU(3,"CV not valid:"),s.qZA(),s.qZA(),s.YNc(4,j,4,5,"div",17),s.qZA()),2&Z){var N=s.oxw();s.xp6(4),s.Q6J("ngForOf",N.validationMessages)}}var J=function(){var Z=function(){function A(N,E,k,q){(0,P.Z)(this,A),this.cvService=N,this.utilsService=E,this.dialogRef=k,this.data=q,this.term={value:"",display:""},this.validationMessages=[],this.vocabulary=q.vocabulary,this.term.value=q.term,this.term.display=q.term}return(0,t.Z)(A,[{key:"ngOnInit",value:function(){}},{key:"submit",value:function(){var E=this,k=!1;this.message="",this.validationMessages=[],this.vocabulary.terms.forEach(function(q){q.value===E.term.value&&(k=!0)}),k?(this.message="Term already exists",setTimeout(function(){E.message=""},3e3)):(this.vocabulary.terms.push(this.term),this.cvService.validateVocab(this.vocabulary).subscribe(function(q){q&&q.valid?E.cvService.addVocabTerm(E.vocabulary).subscribe(function(ce){ce.terms&&ce.terms.length===E.vocabulary.terms.length&&(E.message="Term "+E.term.value+" Added to "+E.vocabulary.domain,setTimeout(function(){E.dialogRef.close(E.term)},3e3))},function(ce){console.log(ce),E.vocabulary.terms.pop();var ie="Server Error";ce.error&&ce.error.message?ie+=" - "+ce.error.message:ce.message&&(ie+=" - "+ce.message),E.message=ie}):(q.validationMessages&&q.validationMessages.forEach(function(ce){E.validationMessages.push(ce)}),E.vocabulary.terms.pop())},function(q){console.log(q),E.vocabulary.terms.pop();var ce="Validation Error";q.error&&q.error.message?ce+=" - "+q.error.message:q.message&&(ce+=" - "+q.message),E.message=ce}))}},{key:"updateStructure",value:function(E){this.term=E}},{key:"cancel",value:function(){this.dialogRef.close()}}]),A}();return Z.\u0275fac=function(N){return new(N||Z)(s.Y36(p.I),s.Y36(d.FW),s.Y36(e.so),s.Y36(e.WI))},Z.\u0275cmp=s.Xpm({type:Z,selectors:[["app-cv-dialog"]],decls:23,vars:8,consts:[["mat-dialog-title",""],["mat-dialog-content",""],["class","form-row",4,"ngIf"],[1,"form-row"],[1,"value"],["matInput","","placeholder","Value","required","","name","value",3,"ngModel","ngModelChange"],[1,"display"],["matInput","","placeholder","display","required","","name","display",3,"ngModel","ngModelChange"],[1,"description"],["matInput","","placeholder","description","required","","name","description",3,"ngModel","ngModelChange"],[1,"message-field"],["class","validation",4,"ngIf"],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"],[1,"validation"],["class","message",4,"ngFor","ngForOf"],[1,"message"]],template:function(N,E){1&N&&(s.TgZ(0,"h1",0),s._uU(1),s.qZA(),s.TgZ(2,"div",1),s.TgZ(3,"div"),s.YNc(4,v,3,0,"div",2),s.TgZ(5,"div",3),s.TgZ(6,"mat-form-field",4),s.TgZ(7,"input",5),s.NdJ("ngModelChange",function(q){return E.term.value=q}),s.qZA(),s.qZA(),s.TgZ(8,"mat-form-field",6),s.TgZ(9,"input",7),s.NdJ("ngModelChange",function(q){return E.term.display=q}),s.qZA(),s.qZA(),s.TgZ(10,"mat-form-field",8),s.TgZ(11,"input",9),s.NdJ("ngModelChange",function(q){return E.term.description=q}),s.qZA(),s.qZA(),s.qZA(),s._UZ(12,"br"),s._UZ(13,"br"),s.TgZ(14,"div",10),s._uU(15),s.qZA(),s.YNc(16,Q,5,1,"div",11),s.TgZ(17,"div",12),s._UZ(18,"span",13),s.TgZ(19,"button",14),s.NdJ("click",function(){return E.cancel()}),s._uU(20,"Cancel"),s.qZA(),s.TgZ(21,"button",15),s.NdJ("click",function(){return E.submit()}),s._uU(22," Save "),s.qZA(),s.qZA(),s.qZA(),s.qZA()),2&N&&(s.xp6(1),s.hij("Add Term to CV - ",E.vocabulary.domain,""),s.xp6(3),s.Q6J("ngIf","NUCLEIC_ACID_LINKAGE"===E.vocabulary.domain||"NUCLEIC_ACID_SUGAR"===E.vocabulary.domain),s.xp6(3),s.Q6J("ngModel",E.term.value),s.xp6(2),s.Q6J("ngModel",E.term.display),s.xp6(2),s.Q6J("ngModel",E.term.description),s.xp6(4),s.Oqu(E.message),s.xp6(1),s.Q6J("ngIf",E.validationMessages.length>0),s.xp6(5),s.Q6J("disabled",!E.term.description||""===E.term.value))},directives:[e.uh,e.xY,h.O5,f.KE,T.Nt,B.Fj,B.Q7,B.JJ,B.On,h.sg,I.lW],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .display[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.value[_ngcontent-%COMP%], .display[_ngcontent-%COMP%]{max-width:23%}.description[_ngcontent-%COMP%]{max-width:50%}.validation[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%}.message[_ngcontent-%COMP%]{padding-top:5px;padding-left:15px}.ERROR[_ngcontent-%COMP%]{background-color:red;color:#a94442;background-color:#f2dede;padding:4px 5px;margin-right:5px;border-radius:5px}.WARNING[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3;padding:4px 5px;margin-right:5px;border-radius:5px}.INFO[_ngcontent-%COMP%]{color:#000;background-color:#d3d3d3;padding:4px 5px;margin-right:5px;border-radius:5px}"]}),Z}()},16667:function(dt,K,n){"use strict";n.d(K,{S:function(){return V}});var P=n(78069),t=n(48047),e=n(76442),p=n(18291),d=n(63169),s=n(12142),h=n(78573),f=n(44250),T=n(79356),B=n(95758),I=n(66088),v=n(44770),j=n(36362),Q=n(91434),J=n(90587),Z=n(1130),A=n(87317),N=n(40089),E=n(43365);function k(ue,R){1&ue&&(e.TgZ(0,"mat-option",8),e.TgZ(1,"span",9),e._uU(2,"Clear selection"),e.qZA(),e.qZA()),2&ue&&e.Q6J("value",null)}function q(ue,R){if(1&ue&&(e.TgZ(0,"mat-option",8),e._uU(1),e.qZA()),2&ue){var r=R.$implicit;e.Q6J("value",r.value),e.xp6(1),e.hij(" ",r.display," ")}}function ce(ue,R){if(1&ue&&(e.TgZ(0,"mat-option",8),e._uU(1),e.qZA()),2&ue){var r=e.oxw();e.s9C("value",r.privateMod),e.xp6(1),e.hij("",r.privateMod," (not in CV)")}}function ie(ue,R){if(1&ue){var r=e.EpF();e.TgZ(0,"a",10),e.NdJ("click",function(){return e.CHM(r),e.oxw().addToVocab()}),e._uU(1," add "),e.qZA()}}function H(ue,R){if(1&ue){var r=e.EpF();e.TgZ(0,"div",11),e.TgZ(1,"input",12),e.NdJ("focusout",function(Y){return e.CHM(r),e.oxw().updateOrigin(Y.target)}),e.qZA(),e.qZA()}}var V=function(){var ue=function(){function R(r,z,Y,se,X,ne){(0,P.Z)(this,R),this.cvService=r,this.dialog=z,this.utilsService=Y,this.overlayContainerService=se,this.dictionaryService=X,this.authService=ne,this.valueChange=new e.vpe,this.vocabName="",this.subscriptions=[]}return(0,t.Z)(R,[{key:"ngOnInit",value:function(){var z=this;if(this.vocabulary)this.vocabulary=this.addOtherOption(this.vocabulary,this.privateMod);else if(this.key){this.dictionary=this.dictionaryService.getDictionaryRow(this.key),this.title||(this.title=this.dictionary.fieldName),this.vocabName=this.dictionary.CVDomain;var Y=this.cvService.getDomainVocabulary(this.vocabName).subscribe(function(X){z.vocabulary=X[z.vocabName].list});this.subscriptions.push(Y)}else{this.vocabulary=[],this.vocabName=this.domain;var se=this.cvService.getDomainVocabulary(this.vocabName).subscribe(function(X){z.vocabulary=X[z.vocabName].list});this.subscriptions.push(se)}this.overlayContainer=this.overlayContainerService.getContainerElement(),this.isAdmin=this.authService.hasRoles("admin")}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(z){z.unsubscribe()})}},{key:"model",get:function(){return this.privateMod},set:function(z){this.privateMod=z}},{key:"select",value:function(z){this.privateMod=z,this.valueChange.emit(this.privateMod)}},{key:"addOtherOption",value:function(z,Y){return z&&z.some(function(se){return Y===se.value}),z}},{key:"inCV",value:function(z,Y){return!z||z.some(function(se){return Y===se.value})}},{key:"addToVocab",value:function(){var z=this,Y=this.cvService.fetchFullVocabulary(this.vocabName).subscribe(function(se){se.content&&se.content.length>0&&z.openDialog(se.content[0],z.privateMod)});this.subscriptions.push(Y)}},{key:"updateOrigin",value:function(z){z&&""!==z.value&&(this.privateMod=z.value,this.valueChange.emit(this.privateMod))}},{key:"openDialog",value:function(z,Y){var se=this,X=window.pageYOffset;if(window.scroll({top:0,left:0,behavior:"auto"}),"NUCLEIC_ACID_LINKAGE"===z.domain||"NUCLEIC_ACID_SUGAR"===z.domain){this.overlayContainer.style.zIndex="1005";var ne=this.dialog.open(T._,{data:{vocabulary:z,term:Y},width:"1040px",height:"85%"});this.overlayContainer.style.zIndex="1005";var ve=ne.afterClosed().subscribe(function(Ee){window.scroll({top:X,left:0,behavior:"auto"}),se.overlayContainer.style.zIndex=null,Ee&&(se.privateMod=Ee.display,se.vocabulary.push(Ee),se.valueChange.emit(se.privateMod))});this.subscriptions.push(ve)}else{var Ie=this.dialog.open(s.i,{data:{vocabulary:z,term:Y},width:"1040px"}).afterClosed().subscribe(function(Ee){window.scroll({top:X,left:0,behavior:"auto"}),Ee&&(se.privateMod=Ee.display,se.vocabulary.push(Ee),se.valueChange.emit(se.privateMod))});this.subscriptions.push(Ie)}}}]),R}();return ue.\u0275fac=function(r){return new(r||ue)(e.Y36(p.I),e.Y36(B.uw),e.Y36(d.FW),e.Y36(I.Xj),e.Y36(h.e),e.Y36(f.e))},ue.\u0275cmp=e.Xpm({type:ue,selectors:[["app-cv-input"]],inputs:{vocabulary:"vocabulary",title:"title",domain:"domain",key:"key",required:"required",disable:"disable",model:"model"},outputs:{valueChange:"valueChange"},decls:12,vars:10,consts:[[1,"flex-row"],[1,"cv-field",3,"ngClass"],["name","term",3,"ngModel","disabled","ngModelChange"],[3,"value",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],["value","other"],["class","add-term","mat-icon-button","","matTooltip","add term to Controlled Vocabulary",3,"click",4,"ngIf"],["class","custom",4,"ngIf"],[3,"value"],[1,"deselect"],["mat-icon-button","","matTooltip","add term to Controlled Vocabulary",1,"add-term",3,"click"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"]],template:function(r,z){1&r&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-form-field",1),e.TgZ(2,"mat-label"),e._uU(3),e.qZA(),e.TgZ(4,"mat-select",2),e.NdJ("ngModelChange",function(se){return z.privateMod=se})("ngModelChange",function(se){return z.select(se)}),e.YNc(5,k,3,1,"mat-option",3),e.YNc(6,q,2,2,"mat-option",4),e.YNc(7,ce,2,2,"mat-option",3),e.TgZ(8,"mat-option",5),e._uU(9,"Other (New Value)"),e.qZA(),e.qZA(),e.qZA(),e.YNc(10,ie,2,0,"a",6),e.qZA(),e.YNc(11,H,2,0,"div",7)),2&r&&(e.xp6(1),e.Q6J("ngClass","other"===z.privateMod?"risen":""),e.xp6(2),e.AsE("",z.title," ",z.required?" *":"",""),e.xp6(1),e.Q6J("ngModel",z.privateMod)("disabled",z.disable),e.xp6(1),e.Q6J("ngIf",z.privateMod),e.xp6(1),e.Q6J("ngForOf",z.vocabulary),e.xp6(1),e.Q6J("ngIf",z.privateMod&&!z.inCV(z.vocabulary,z.privateMod)&&""!==z.privateMod),e.xp6(3),e.Q6J("ngIf",z.privateMod&&!z.inCV(z.vocabulary,z.privateMod)&&"other"!==z.privateMod&&z.isAdmin),e.xp6(1),e.Q6J("ngIf","other"===z.privateMod))},directives:[v.KE,j.mk,v.hX,Q.gD,J.JJ,J.On,j.O5,Z.ey,j.sg,A.zs,N.gM,E.Nt],styles:[".risen[_ngcontent-%COMP%]{margin-top:-15px}.custom[_ngcontent-%COMP%]{padding-bottom:10px;padding-top:10px;border-bottom:1px solid rgba(0,0,0,.45)}.deselect[_ngcontent-%COMP%]{color:#00000080}.add-term[_ngcontent-%COMP%]{margin-left:-7px;margin-bottom:-10px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-align:end;align-items:flex-end}.value[_ngcontent-%COMP%], .display[_ngcontent-%COMP%], .description[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.cv-field[_ngcontent-%COMP%]{width:100%}.add-term[_ngcontent-%COMP%]{color:#229fdd;font-style:italic}"]}),ue}()},35354:function(dt,K,n){"use strict";n.d(K,{n:function(){return I}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(26067),B=n(76442),I=function(){var v=function(j){(0,d.Z)(J,j);var Q=(0,s.Z)(J);function J(Z){var A;return(0,P.Z)(this,J),(A=Q.call(this,Z)).substanceFormService=Z,A.substanceCysteineEmitter=new T.t,A}return(0,t.Z)(J,[{key:"initSubtanceForm",value:function(){var A=this;(0,e.Z)((0,p.Z)(J.prototype),"initSubtanceForm",this).call(this);var N=this.substanceFormService.substance.subscribe(function(E){if(A.substance=E,A.substance.protein){null==A.substance.protein.disulfideLinks&&(A.substance.protein.disulfideLinks=[]),A.substanceFormService.resetState(),A.propertyEmitter.next(A.substance.protein.disulfideLinks);for(var k=[],q=0;q0)for(var ie=0;ie-1&&(this.substance.protein.disulfideLinks.splice(N,1),this.emitDisulfideLinkUpdate())}},{key:"deleteAllDisulfideLinks",value:function(){this.substance.protein.disulfideLinks=[],this.emitDisulfideLinkUpdate()}},{key:"emitDisulfideLinkUpdate",value:function(){this.substanceFormService.recalculateAllSites("disulfide"),this.propertyEmitter.next(this.substance.protein.disulfideLinks),this.substanceFormService.recalculateCysteine()}},{key:"substanceCysteineSites",get:function(){return this.substanceCysteineEmitter.asObservable()}},{key:"updateCysteine",value:function(A){this.emitDisulfideLinkUpdate()}}]),J}(h.E);return v.\u0275fac=function(Q){return new(Q||v)(B.LFG(f.B))},v.\u0275prov=B.Yz7({token:v,factory:v.\u0275fac}),v}()},93979:function(dt,K,n){"use strict";n.d(K,{x:function(){return P}});var P={chemical:["substance-form-definition","substance-form-names","substance-form-structure","substance-form-moieties","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],protein:["substance-form-definition","substance-form-names","substance-form-protein-details","substance-form-subunits","substance-form-other-links","substance-form-disulfide-links","substance-form-glycosylation","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],nucleicAcid:["substance-form-definition","substance-form-names","nucleic-acid-details-form","substance-form-subunits","substance-form-links","substance-form-sugars","substance-form-physical-modifications","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-codes-card","substance-form-relationships","substance-form-properties","substance-form-notes","substance-form-references","substance-form-change-reason"],mixture:["substance-form-definition","substance-form-names","substance-form-mixture-details","substance-form-mixture-components","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],structurallyDiverse:["substance-form-definition","substance-form-names","substance-form-structurally-diverse-source","substance-form-structurally-diverse-organism","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],concept:["substance-form-definition","substance-form-names","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],specifiedSubstanceG1:["substance-form-definition","substance-form-names","substance-form-constituents","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],polymer:["substance-form-definition","substance-form-names","substance-form-polymer-classification","substance-form-monomers","substance-form-structure","substance-form-structural-units","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],specifiedSubstanceG3:["substance-form-definition","substance-form-names","substance-form-ssg-parent-substance","substance-form-ssg-definition","substance-form-ssg-grade","substance-form-codes-card","substance-form-notes","substance-form-references"],specifiedSubstanceG4m:["substance-form-ssg-parent-substance","substance-form-ssg4m-process"]}},12671:function(dt,K,n){"use strict";n.d(K,{w:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(E){Z.substance=E,Z.substance.protein&&(null==Z.substance.protein.glycosylation&&(Z.substance.protein.glycosylation={}),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.protein.glycosylation))});this.subscriptions.push(A);var N=this.substanceFormService.glycosylationUpdated().subscribe(function(E){Z.propertyEmitter.next(E)});this.subscriptions.push(N)}},{key:"substanceGlycosylation",get:function(){return this.propertyEmitter.asObservable()}},{key:"emitGlycosylationUpdate",value:function(){this.substanceFormService.recalculateAllSites("glycosylation"),this.propertyEmitter.next(this.substance.protein.glycosylation)}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},21109:function(dt,K,n){"use strict";n.d(K,{e:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(33567),f=n(68785),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(E){Z.substance=E,Z.substance.nucleicAcid&&(null==Z.substance.nucleicAcid.linkages&&(Z.substance.nucleicAcid.linkages=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.nucleicAcid.linkages))});this.subscriptions.push(A);var N=this.substanceFormService.linksUpdated().subscribe(function(E){Z.propertyEmitter.next(E)});this.subscriptions.push(N)}},{key:"substanceLinks",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceLink",value:function(){this.substance.nucleicAcid.linkages.unshift({sites:[]}),this.propertyEmitter.next(this.substance.nucleicAcid.linkages)}},{key:"deleteSubstanceLink",value:function(Z){var A=this.substance.nucleicAcid.linkages.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.nucleicAcid.linkages.splice(A,1),this.propertyEmitter.next(this.substance.nucleicAcid.linkages))}},{key:"emitLinkUpdate",value:function(){this.propertyEmitter.next(this.substance.nucleicAcid.linkages)}}]),Q}(f.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(h.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},87625:function(dt,K,n){"use strict";n.d(K,{b:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,null!=Z.substance.mixture&&(null==Z.substance.mixture.components&&(Z.substance.mixture.components=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.mixture.components))});this.subscriptions.push(A)}},{key:"substanceMixtureComponents",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceMixtureComponent",value:function(){this.substance.mixture.components.unshift({}),this.propertyEmitter.next(this.substance.mixture.components)}},{key:"deleteSubstanceMixtureComponent",value:function(Z){var A=this.substance.mixture.components.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.mixture.components.splice(A,1),this.propertyEmitter.next(this.substance.mixture.components))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},21584:function(dt,K,n){"use strict";n.d(K,{C:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,Z.substance.polymer&&(null==Z.substance.polymer.monomers&&(Z.substance.polymer.monomers=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.polymer.monomers))});this.subscriptions.push(A)}},{key:"substanceMonomers",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceMonomer",value:function(){this.substance.polymer.monomers.unshift({}),this.propertyEmitter.next(this.substance.polymer.monomers)}},{key:"deleteSubstanceMonomer",value:function(Z){var A=this.substance.polymer.monomers.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.polymer.monomers.splice(A,1),this.propertyEmitter.next(this.substance.polymer.monomers))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},39756:function(dt,K,n){"use strict";n.d(K,{w:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(33567),f=n(68785),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"ngOnDestroy",value:function(){}},{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(E){Z.substance=E,null==Z.substance.names&&(Z.substance.names=[]),E.names.sort(function(k,q){return k.displayName?-1:q.displayName?1:k.nameq.name?1:0}),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.names)});this.subscriptions.push(A);var N=this.substanceFormService.namesUpdated().subscribe(function(E){Z.propertyEmitter.next(E)});this.subscriptions.push(N)}},{key:"substanceNames",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceName",value:function(){this.substance.names.unshift({references:[],access:[]}),this.propertyEmitter.next(this.substance.names)}},{key:"deleteSubstanceName",value:function(Z){var A=this.substance.names.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.names.splice(A,1),this.propertyEmitter.next(this.substance.names))}},{key:"standardizeNames",value:function(){for(var Z=/[^ -~\t\n\r]/g,A="\u2032;';\u201b;';\u2018;';\u2019;';\u03b1;.ALPHA.;\u03b2;.BETA.;\u03b3;.GAMMA.;\u03b4;.DELTA.;\u03b5;.EPSILON.;\u03b6;.ZETA.;\u03b7;.ETA.;\u03b8;.THETA.;\u03b9;.IOTA.;\u03ba;.KAPPA.;\u03bb;.LAMBDA.;\u03bc;.MU.;\u03bd;.NU.;\u03be;.XI.;\u03bf;.OMICRON.;\u03c0;.PI.;\u03c1;.RHO.;\u03c2;.SIGMA.;\u03c3;.SIGMA.;\u03c4;.TAU.;\u03c5;.UPSILON.;\u03c6;.PHI.;\u03c7;.CHI.;\u03c8;.PSI.;\u03c9;.OMEGA.;\u0391;.ALPHA.;\u0392;.BETA.;\u0393;.GAMMA.;\u0394;.DELTA.;\u0395;.EPSILON.;\u0396;.ZETA.;\u0397;.ETA.;\u0398;.THETA.;\u0399;.IOTA.;\u039a;.KAPPA.;\u039b;.LAMBDA.;\u039c;.MU.;\u039d;.NU.;\u039e;.XI.;\u039f;.OMICRON.;\u03a0;.PI.;\u03a1;.RHO.;\u03a3;.SIGMA.;\u03a4;.TAU.;\u03a5;.UPSILON.;\u03a6;.PHI.;\u03a7;.CHI.;\u03a8;.PSI.;\u03a9;.OMEGA.;\u2192;->;\xb1;+/-;\u2190;<-;\xb2;2;\xb3;3;\xb9;1;\u2070;0;\u2071;1;\u2072;2;\u2073;3;\u2074;4;\u2075;5;\u2076;6;\u2077;7;\u2078;8;\u2079;9;\u207a;+;\u207b;-;\u2080;0;\u2081;1;\u2082;2;\u2083;3;\u2084;4;\u2085;5;\u2086;6;\u2087;7;\u2088;8;\u2089;9;\u208a;+;\u208b;-;-;-;\u058a;-;\u05be;-;\u1400;-;\u1806;-;\u2011;-;\u2012;-;\u2013;-;\u2014;-;\u2015;-;\u2e17;-;\u2e1a;-;\u2e3a;-;\u2e3b;-;\u2e40;-;\u301c;-;\u3030;-;\u30a0;-;\ufe31;-;\ufe32;-;\ufe58;-;\ufe63;-;\uff0d;-;\u10ead;-;\u2010;-;\u2122;-;".split(";"),N={},E=0;E-1&&(this.substance.notes.splice(A,1),this.propertyEmitter.next(this.substance.notes))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},71896:function(dt,K,n){"use strict";n.d(K,{X:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(E){Z.substance=E,Z.substance.protein&&(null==Z.substance.protein.otherLinks&&(Z.substance.protein.otherLinks=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.protein.otherLinks))});this.subscriptions.push(A);var N=this.substanceFormService.otherLinksUpdated().subscribe(function(E){Z.propertyEmitter.next(E)});this.subscriptions.push(N)}},{key:"substanceOtherLinks",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceOtherLink",value:function(){this.substance.protein.otherLinks.unshift({references:[],access:[]}),this.propertyEmitter.next(this.substance.protein.otherLinks)}},{key:"deleteSubstanceOtherLink",value:function(Z){var A=this.substance.protein.otherLinks.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.protein.otherLinks.splice(A,1),this.propertyEmitter.next(this.substance.protein.otherLinks))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},16830:function(dt,K,n){"use strict";n.d(K,{q:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,Z.substance.modifications||(Z.substance.modifications={}),Z.substance.modifications.physicalModifications||(Z.substance.modifications.physicalModifications=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.modifications.physicalModifications)});this.subscriptions.push(A)}},{key:"substancePhysicalModifications",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstancePhysicalModification",value:function(){this.substance.modifications.physicalModifications.unshift({}),this.propertyEmitter.next(this.substance.modifications.physicalModifications)}},{key:"deleteSubstancePhysicalModification",value:function(Z){var A=this.substance.modifications.physicalModifications.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.modifications.physicalModifications.splice(A,1),this.propertyEmitter.next(this.substance.modifications.physicalModifications))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},88194:function(dt,K,n){"use strict";n.d(K,{D:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,Z.substance.polymer&&(null==Z.substance.polymer.classification&&(Z.substance.polymer.classification={}),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.polymer.classification))});this.subscriptions.push(A)}},{key:"substancePolymerClassification",get:function(){return this.propertyEmitter.asObservable()}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},39233:function(dt,K,n){"use strict";n.d(K,{S:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,null==Z.substance.properties&&(Z.substance.properties=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.properties)});this.subscriptions.push(A)}},{key:"substanceProperties",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceProperty",value:function(){this.substance.properties.unshift({value:{},references:[],access:[]}),this.propertyEmitter.next(this.substance.properties)}},{key:"addSubstancePropertyFromFeature",value:function(Z){var A="NUCLEIC ACID FEATURE";"protein"===this.substance.substanceClass&&(A="PROTEIN FEATURE"),this.substance.properties.unshift({value:{nonNumericValue:Z.siteRange,type:"Site Range"},propertyType:A,name:Z.name,references:[],access:[]}),this.substanceFormService.recalculateAllSites("features"),this.propertyEmitter.next(this.substance.properties)}},{key:"deleteSubstanceProperty",value:function(Z){var A=this.substance.properties.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.properties.splice(A,1),this.propertyEmitter.next(this.substance.properties))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},56569:function(dt,K,n){"use strict";n.d(K,{M:function(){return A}});var P=n(78069),t=n(48047),e=n(95758),p=n(76442),d=n(36362),s=n(42827),h=n(44770),f=n(43365),T=n(90587),B=n(91434),I=n(1130),v=n(33662);function j(N,E){if(1&N&&(p.TgZ(0,"mat-option",10),p._uU(1),p.qZA()),2&N){var k=E.$implicit;p.Q6J("value",k.value),p.xp6(1),p.hij(" ",k.display," ")}}var Q=function(){var N=function(){function E(k){(0,P.Z)(this,E),this.cvService=k,this.propertyTypeList=[]}return(0,t.Z)(E,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"parameter",get:function(){return this.privateParameter},set:function(q){this.privateParameter=q}},{key:"getVocabularies",value:function(){var q=this;this.cvService.getDomainVocabulary("PROPERTY_TYPE").subscribe(function(ce){q.propertyTypeList=ce.PROPERTY_TYPE.list})}},{key:"isValid",get:function(){return null!=this.privateParameter.name&&""!==this.privateParameter.name&&null!=this.privateParameter.type&&""!==this.privateParameter.type}}]),E}();return N.\u0275fac=function(k){return new(k||N)(p.Y36(s.I))},N.\u0275cmp=p.Xpm({type:N,selectors:[["app-property-parameter-form"]],inputs:{parameter:"parameter"},decls:13,vars:4,consts:[[1,"parameter-form-container"],[1,"form-row"],[1,"name"],["matInput","","placeholder","Name","required","","name","name",3,"ngModel","ngModelChange"],[1,"type"],["name","type",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[1,"amount-form-container"],[1,"amount-title"],[3,"substanceAmount"],[3,"value"]],template:function(k,q){1&k&&(p.TgZ(0,"div",0),p.TgZ(1,"div",1),p.TgZ(2,"mat-form-field",2),p.TgZ(3,"input",3),p.NdJ("ngModelChange",function(ie){return q.parameter.name=ie}),p.qZA(),p.qZA(),p.TgZ(4,"mat-form-field",4),p.TgZ(5,"mat-label"),p._uU(6,"Type"),p.qZA(),p.TgZ(7,"mat-select",5),p.NdJ("ngModelChange",function(ie){return q.parameter.type=ie}),p.YNc(8,j,2,2,"mat-option",6),p.qZA(),p.qZA(),p.qZA(),p.TgZ(9,"div",7),p.TgZ(10,"div",8),p._uU(11,"Amount"),p.qZA(),p._UZ(12,"app-amount-form",9),p.qZA(),p.qZA()),2&k&&(p.xp6(3),p.Q6J("ngModel",q.parameter.name),p.xp6(4),p.Q6J("ngModel",q.parameter.type),p.xp6(1),p.Q6J("ngForOf",q.propertyTypeList),p.xp6(4),p.Q6J("substanceAmount",q.parameter.value))},directives:[h.KE,f.Nt,T.Fj,T.Q7,T.JJ,T.On,h.hX,B.gD,d.sg,I.ey,v.f],styles:[".parameter-form-container[_ngcontent-%COMP%]{padding:30px 0 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;margin-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}"]}),N}(),J=n(87317);function Z(N,E){if(1&N){var k=p.EpF();p.TgZ(0,"div"),p._UZ(1,"app-property-parameter-form",3,4),p.TgZ(3,"div",5),p._UZ(4,"span",6),p.TgZ(5,"button",7),p.NdJ("click",function(){return p.CHM(k),p.oxw().cancel()}),p._uU(6,"Cancel"),p.qZA(),p.TgZ(7,"button",8),p.NdJ("click",function(){return p.CHM(k),p.oxw().save()}),p._uU(8," Save "),p.qZA(),p.qZA(),p.qZA()}if(2&N){var q=p.MAs(2),ce=p.oxw();p.xp6(1),p.Q6J("parameter",ce.subsParameter),p.xp6(6),p.Q6J("disabled",!q||!q.isValid)}}var A=function(){var N=function(){function E(k,q){(0,P.Z)(this,E),this.dialogRef=k,this.subsParameter=q,this.isNew=Object.keys(q).length<2}return(0,t.Z)(E,[{key:"ngOnInit",value:function(){}},{key:"save",value:function(){this.dialogRef.close(this.subsParameter)}},{key:"cancel",value:function(){this.dialogRef.close()}}]),E}();return N.\u0275fac=function(k){return new(k||N)(p.Y36(e.so),p.Y36(e.WI))},N.\u0275cmp=p.Xpm({type:N,selectors:[["app-property-parameter-dialog"]],decls:4,vars:2,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[4,"ngIf"],[3,"parameter"],["parameterForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(k,q){1&k&&(p.TgZ(0,"h1",0),p._uU(1),p.qZA(),p.TgZ(2,"div",1),p.YNc(3,Z,9,2,"div",2),p.qZA()),2&k&&(p.xp6(1),p.hij("",q.isNew?"Add":"Edit"," Parameter"),p.xp6(2),p.Q6J("ngIf",q.subsParameter))},directives:[e.uh,e.xY,d.O5,Q,J.lW],styles:[".actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}"]}),N}()},98827:function(dt,K,n){"use strict";n.d(K,{U:function(){return k}});var P=n(78069),t=n(48047),e=n(32685),p=n(24936),d=n(59295),s=n(76442),h=n(87317),f=n(82796),T=n(65590),B=n(36362),I=n(61534);function v(q,ce){if(1&q){var ie=s.EpF();s.TgZ(0,"div",4),s.NdJ("click",function(ue){return ue.stopPropagation()}),s.TgZ(1,"mat-checkbox",8),s.NdJ("change",function(ue){s.CHM(ie);var R=s.oxw(2);return R.updateAppliedOtion(ue,R.domainsWithReferences.definition.domain)}),s._uU(2),s.qZA(),s.qZA()}if(2&q){var H=s.oxw(2);s.xp6(1),s.Q6J("checked",H.domainsWithReferences.definition.domain.checked),s.xp6(1),s.hij(" ",H.domainsWithReferences.definition.subClass," ")}}function j(q,ce){if(1&q){var ie=s.EpF();s.TgZ(0,"mat-checkbox",8),s.NdJ("change",function(r){s.CHM(ie);var z=s.oxw().$implicit;return s.oxw(4).updateAppliedOtion(r,z)}),s._uU(1),s.ALo(2,"slice"),s.qZA()}if(2&q){var H=s.oxw().$implicit,V=s.oxw(2).$implicit,ue=s.oxw(2);s.Q6J("checked",H.checked),s.xp6(1),s.hij(" ",H[ue.domainsWithReferences[V].displayKey].length>50?s.Dn7(2,2,H[ue.domainsWithReferences[V].displayKey],0,50)+"...":H[ue.domainsWithReferences[V].displayKey]," ")}}function Q(q,ce){if(1&q){var ie=s.EpF();s.TgZ(0,"mat-checkbox",8),s.NdJ("change",function(ue){s.CHM(ie);var R=s.oxw().$implicit;return s.oxw(4).updateAppliedOtion(ue,R)}),s._uU(1),s.ALo(2,"slice"),s.qZA()}if(2&q){var H=s.oxw().$implicit;s.Q6J("checked",H.checked),s.xp6(1),s.hij(" ",H.relatedSubstance.name.length>40?s.Dn7(2,2,H.relatedSubstance.name,0,40)+"...":H.relatedSubstance.name," ")}}function J(q,ce){if(1&q){var ie=s.EpF();s.TgZ(0,"mat-checkbox",8),s.NdJ("change",function(ue){s.CHM(ie);var R=s.oxw().$implicit;return s.oxw(4).updateAppliedOtion(ue,R)}),s._uU(1),s.ALo(2,"slice"),s.qZA()}if(2&q){var H=s.oxw().$implicit;s.Q6J("checked",H.checked),s.xp6(1),s.hij(" ",H.substance.name.length>40?s.Dn7(2,2,H.substance.name,0,40)+"...":H.substance.name," ")}}function Z(q,ce){if(1&q&&(s.TgZ(0,"div",4),s.NdJ("click",function(V){return V.stopPropagation()}),s.YNc(1,j,3,6,"mat-checkbox",12),s.YNc(2,Q,3,6,"mat-checkbox",12),s.YNc(3,J,3,6,"mat-checkbox",12),s.qZA()),2&q){var ie=s.oxw(2).$implicit;s.xp6(1),s.Q6J("ngIf","relationships"!==ie&&"constituents"!==ie),s.xp6(1),s.Q6J("ngIf","relationships"===ie),s.xp6(1),s.Q6J("ngIf","constituents"===ie)}}function A(q,ce){if(1&q){var ie=s.EpF();s.TgZ(0,"div"),s.TgZ(1,"button",9),s._uU(2),s.qZA(),s.TgZ(3,"mat-menu",null,10),s.TgZ(5,"button",4),s.NdJ("click",function(){s.CHM(ie);var r=s.oxw().$implicit;return s.oxw(2).applyToAllDomain(r)}),s.TgZ(6,"span"),s._uU(7),s.qZA(),s.qZA(),s.TgZ(8,"button",4),s.NdJ("click",function(){s.CHM(ie);var r=s.oxw().$implicit;return s.oxw(2).applyToAllDomainWithoutRef(r)}),s.TgZ(9,"span"),s._uU(10),s.qZA(),s.qZA(),s.YNc(11,Z,4,3,"div",11),s.qZA(),s.qZA()}if(2&q){var H=s.MAs(4),V=s.oxw().$implicit,ue=s.oxw(2);s.xp6(1),s.Q6J("matMenuTriggerFor",H),s.xp6(1),s.hij(" ",V," "),s.xp6(5),s.hij("All ",V,""),s.xp6(3),s.hij("All ",V," without references"),s.xp6(1),s.Q6J("ngForOf",ue.domainsWithReferences[V].domains)}}function N(q,ce){if(1&q&&(s.ynx(0),s.YNc(1,A,12,5,"div",5),s.BQk()),2&q){var ie=ce.$implicit,H=s.oxw(2);s.xp6(1),s.Q6J("ngIf",H.domainsWithReferences[ie]&&H.domainsWithReferences[ie].domains&&H.domainsWithReferences[ie].domains.length)}}function E(q,ce){if(1&q&&(s.TgZ(0,"div"),s.YNc(1,v,3,2,"div",6),s.YNc(2,N,2,1,"ng-container",7),s.qZA()),2&q){var ie=s.oxw();s.xp6(1),s.Q6J("ngIf",ie.domainsWithReferences.definition),s.xp6(1),s.Q6J("ngForOf",ie.domainKeys)}}var k=function(){var q=function(){function ce(ie){(0,P.Z)(this,ce),this.substanceFormReferencesService=ie,this.domainKeys=e.Q,this.subscriptions=[],this.open=!1}return(0,t.Z)(ce,[{key:"ngOnInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(H){H.unsubscribe()})}},{key:"setOpen",value:function(){var H=this;this.open=!0;var V=this.substanceFormReferencesService.domainsWithReferences.pipe((0,d.q)(1)).subscribe(function(ue){H.domainsWithReferences=ue,H.setChecked()});this.subscriptions.push(V)}},{key:"subReferenceUuid",set:function(H){this.privateSubReferenceUuid=H}},{key:"applyToAll",value:function(){var H=this;this.applyReference(this.domainsWithReferences.definition.domain),this.domainKeys.forEach(function(V){H.domainsWithReferences[V]&&H.domainsWithReferences[V].domains.forEach(function(ue){H.applyReference(ue)})}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"applyToAllWithoutRef",value:function(){var H=this;(null==this.domainsWithReferences.definition.domain.references||0===this.domainsWithReferences.definition.domain.references.length)&&this.applyReference(this.domainsWithReferences.definition.domain),this.domainKeys.forEach(function(V){H.domainsWithReferences[V]&&H.domainsWithReferences[V].domains&&H.domainsWithReferences[V].domains.length&&H.domainsWithReferences[V].domains.forEach(function(ue){(!ue.references||0===ue.references.length)&&H.applyReference(ue)})}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"applyToAllDomain",value:function(H){var V=this;this.domainsWithReferences[H].domains.forEach(function(ue){V.applyReference(ue)}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"close",value:function(){this.domainsWithReferences=null,this.open=!1,this.subscriptions.forEach(function(H){H.unsubscribe()})}},{key:"setChecked",value:function(){var H=this;this.domainsWithReferences.definition&&this.domainsWithReferences.definition.domain&&(this.domainsWithReferences.definition.domain.checked=this.domainsWithReferences.definition.domain.references&&this.domainsWithReferences.definition.domain.references.indexOf(this.privateSubReferenceUuid)>-1),this.domainKeys.forEach(function(V){H.domainsWithReferences[V]&&H.domainsWithReferences[V].domains&&H.domainsWithReferences[V].domains.forEach(function(ue){ue.checked=ue.references&&ue.references.indexOf(H.privateSubReferenceUuid)>-1})})}},{key:"applyToAllDomainWithoutRef",value:function(H){var V=this;this.domainsWithReferences[H]&&this.domainsWithReferences[H].domains&&this.domainsWithReferences[H].domains.length&&this.domainsWithReferences[H].domains.forEach(function(ue){(!ue.references||0===ue.references.length)&&V.applyReference(ue)}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"updateAppliedOtion",value:function(H,V){H.checked?this.applyReference(V):this.removeReference(V),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"applyReference",value:function(H){H.references||(H.references=[]),-1===H.references.indexOf(this.privateSubReferenceUuid)&&H.references.push(this.privateSubReferenceUuid)}},{key:"removeReference",value:function(H){H.references&&H.references.length&&H.references.indexOf(this.privateSubReferenceUuid)>-1&&H.references.splice(this.privateSubReferenceUuid,1)}},{key:"getDomainDisplay",value:function(H,V){var ue=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return String.prototype.split.call(V,/[,[\].]+?/).filter(Boolean).reduce(function(R,r){return Object.hasOwnProperty.call(R,r)?R[r]:ue},H)}},{key:"isApplied",value:function(H){return H&&H.references&&H.references.indexOf(this.privateSubReferenceUuid)>-1}}]),ce}();return q.\u0275fac=function(ie){return new(ie||q)(s.Y36(p.v))},q.\u0275cmp=s.Xpm({type:q,selectors:[["app-apply-reference"]],inputs:{subReferenceUuid:"subReferenceUuid"},decls:14,vars:2,consts:[["mat-button","",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","menu"],["xPosition","before",1,"applied-menu-container"],["appliedOptionsMenu","matMenu"],["mat-menu-item","",3,"click"],[4,"ngIf"],["mat-menu-item","",3,"click",4,"ngIf"],[4,"ngFor","ngForOf"],[3,"checked","change"],["mat-menu-item","",3,"matMenuTriggerFor"],["optionsMenu","matMenu"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],[3,"checked","change",4,"ngIf"]],template:function(ie,H){if(1&ie&&(s.TgZ(0,"button",0),s.NdJ("menuOpened",function(){return H.setOpen()})("menuClosed",function(){return H.close()}),s.TgZ(1,"span"),s._uU(2,"Apply to"),s.qZA(),s._uU(3,"\xa0 "),s._UZ(4,"mat-icon",1),s.qZA(),s.TgZ(5,"mat-menu",2,3),s.TgZ(7,"button",4),s.NdJ("click",function(){return H.applyToAll()}),s.TgZ(8,"span"),s._uU(9,"All"),s.qZA(),s.qZA(),s.TgZ(10,"button",4),s.NdJ("click",function(){return H.applyToAllWithoutRef()}),s.TgZ(11,"span"),s._uU(12,"All without references"),s.qZA(),s.qZA(),s.YNc(13,E,3,2,"div",5),s.qZA()),2&ie){var V=s.MAs(6);s.Q6J("matMenuTriggerFor",V),s.xp6(13),s.Q6J("ngIf",H.domainsWithReferences)}},directives:[h.lW,f.p6,T.Hw,f.VK,f.OP,B.O5,I.oG,B.sg],pipes:[B.OU],styles:[".mat-menu-item{height:auto} .mat-checkbox-layout{white-space:normal}"]}),q}()},32685:function(dt,K,n){"use strict";n.d(K,{Q:function(){return P},v:function(){return t}});var P=["names","codes","relationships","notes","properties","constituents"],t={names:"name",codes:"code",relationships:"relatedSubstance.name",notes:"note",properties:"name",constituents:"substance.name"}},53349:function(dt,K,n){"use strict";n.d(K,{s:function(){return Y}});var P=n(78069),t=n(48047),e=n(76442),p=n(12570),d=n(44250),s=n(36362),h=n(74742),f=n(97217),T=n(64316);function B(se,X){1&se&&e._UZ(0,"mat-progress-spinner",3)}function I(se,X){1&se&&(e.TgZ(0,"th",15),e._uU(1," Use "),e.qZA())}function v(se,X){if(1&se){var ne=e.EpF();e.TgZ(0,"td",16),e.TgZ(1,"a",17),e.NdJ("click",function(){var Ie=e.CHM(ne).$implicit;return e.oxw(3).selectReference(Ie)}),e._uU(2,"select"),e.qZA(),e.qZA()}}function j(se,X){1&se&&(e.TgZ(0,"th",15),e._uU(1," Citation "),e.qZA())}function Q(se,X){if(1&se&&(e.TgZ(0,"a",19),e._uU(1),e.qZA()),2&se){var ne=e.oxw().$implicit;e.Q6J("href",ne.url,e.LSH),e.xp6(1),e.hij("",ne.citation," ")}}function J(se,X){if(1&se&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&se){var ne=e.oxw().$implicit;e.xp6(1),e.hij(" ",ne.citation," ")}}function Z(se,X){if(1&se&&(e.TgZ(0,"td",16),e.YNc(1,Q,2,2,"a",18),e.YNc(2,J,2,1,"span",2),e.qZA()),2&se){var ne=X.$implicit;e.xp6(1),e.Q6J("ngIf",ne.url),e.xp6(1),e.Q6J("ngIf",!ne.url)}}function A(se,X){1&se&&(e.TgZ(0,"th",15),e._uU(1," Type "),e.qZA())}function N(se,X){if(1&se&&(e.TgZ(0,"td",16),e._uU(1),e.qZA()),2&se){var ne=X.$implicit;e.xp6(1),e.hij(" ",ne.docType," ")}}function E(se,X){1&se&&(e.TgZ(0,"th",15),e._uU(1," Tags "),e.qZA())}function k(se,X){1&se&&(e.TgZ(0,"span"),e._uU(1,",\xa0"),e.qZA())}function q(se,X){if(1&se&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,k,2,0,"span",2),e.qZA()),2&se){var ne=X.$implicit,ve=X.last;e.xp6(1),e.Oqu(ne),e.xp6(1),e.Q6J("ngIf",!ve)}}function ce(se,X){if(1&se&&(e.TgZ(0,"td",16),e.YNc(1,q,3,2,"span",20),e.qZA()),2&se){var ne=X.$implicit;e.xp6(1),e.Q6J("ngForOf",ne.tags)}}function ie(se,X){1&se&&(e.TgZ(0,"th",15),e._uU(1," Date Accessed "),e.qZA())}function H(se,X){if(1&se&&(e.TgZ(0,"td",16),e._uU(1),e.ALo(2,"date"),e.qZA()),2&se){var ne=X.$implicit;e.xp6(1),e.hij(" ",e.xi3(2,1,ne.lastEdited,"short")," ")}}function V(se,X){1&se&&e._UZ(0,"tr",21)}function ue(se,X){1&se&&e._UZ(0,"tr",22)}function R(se,X){if(1&se&&(e.TgZ(0,"div"),e.TgZ(1,"span",4),e._uU(2," Select a recently submitted reference to populate the form"),e.qZA(),e.TgZ(3,"table",5),e.ynx(4,6),e.YNc(5,I,2,0,"th",7),e.YNc(6,v,3,0,"td",8),e.BQk(),e.ynx(7,9),e.YNc(8,j,2,0,"th",7),e.YNc(9,Z,3,2,"td",8),e.BQk(),e.ynx(10,10),e.YNc(11,A,2,0,"th",7),e.YNc(12,N,2,1,"td",8),e.BQk(),e.ynx(13,11),e.YNc(14,E,2,0,"th",7),e.YNc(15,ce,2,1,"td",8),e.BQk(),e.ynx(16,12),e.YNc(17,ie,2,0,"th",7),e.YNc(18,H,3,4,"td",8),e.BQk(),e.YNc(19,V,1,0,"tr",13),e.YNc(20,ue,1,0,"tr",14),e.qZA(),e.qZA()),2&se){var ne=e.oxw(2);e.xp6(3),e.Q6J("dataSource",ne.oldReferences),e.xp6(16),e.Q6J("matHeaderRowDef",ne.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",ne.displayedColumns)}}function r(se,X){1&se&&(e.TgZ(0,"div"),e.TgZ(1,"i"),e._uU(2,"No previous references found for this user"),e.qZA(),e.qZA())}function z(se,X){if(1&se&&(e.TgZ(0,"div"),e.YNc(1,R,21,3,"div",2),e.YNc(2,r,3,0,"div",2),e.qZA()),2&se){var ne=e.oxw();e.xp6(1),e.Q6J("ngIf",ne.oldReferences.length>0),e.xp6(1),e.Q6J("ngIf",0===ne.oldReferences.length)}}var Y=function(){var se=function(){function X(ne,ve){(0,P.Z)(this,X),this.substanceService=ne,this.authService=ve,this.loading=!0,this.oldReferences=[],this.displayedColumns=["use","citation","type","tags","dateAcessed"],this.selectedReference=new e.vpe}return(0,t.Z)(X,[{key:"ngOnInit",value:function(){var ve=this;this.user=this.authService.getUser(),this.substanceService.getSubstanceReferences(1,this.user).subscribe(function(Re){ve.refCount=Re.total?Re.total:0,ve.getPreviousReferences()})}},{key:"getPreviousReferences",value:function(){var ve=this;this.substanceService.getSubstanceReferences(12,this.user).subscribe(function(Ie){if(Ie.count&&Ie.content){for(var Ee=Ie.content.length-1;Ee>=0&&!(ve.user===Ie.content[Ee].lastEditedBy&&Ie.content[Ee].docType&&Ie.content[Ee].citation&&"VALIDATION_MESSAGE"!==Ie.content[Ee].docType&&"SYSTEM"!==Ie.content[Ee].docType&&"BATCH_IMPORT"!==Ie.content[Ee].docType&&"VALIDATION_MESSAGE"!==Ie.content[Ee].docType&&(ve.oldReferences.push(Ie.content[Ee]),ve.oldReferences.length>=12));Ee--);ve.loading=!1}else ve.loading=!1})}},{key:"selectReference",value:function(ve){this.selectedReference.emit(ve)}}]),X}();return se.\u0275fac=function(ne){return new(ne||se)(e.Y36(p.d),e.Y36(d.e))},se.\u0275cmp=e.Xpm({type:se,selectors:[["app-previous-references"]],outputs:{selectedReference:"selectedReference"},decls:3,vars:2,consts:[[1,"spinner-container"],["mode","indeterminate","class","spinner",4,"ngIf"],[4,"ngIf"],["mode","indeterminate",1,"spinner"],[1,"explain"],["mat-table","","matSort","",3,"dataSource"],["matColumnDef","use"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","citation"],["matColumnDef","type"],["matColumnDef","tags"],["matColumnDef","dateAcessed"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","","class","narrow-row",4,"matRowDef","matRowDefColumns"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],[1,"reuse-button",3,"click"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row","",1,"narrow-row"]],template:function(ne,ve){1&ne&&(e.TgZ(0,"div",0),e.YNc(1,B,1,0,"mat-progress-spinner",1),e.qZA(),e.YNc(2,z,3,2,"div",2)),2&ne&&(e.xp6(1),e.Q6J("ngIf",ve.loading),e.xp6(1),e.Q6J("ngIf",!ve.loading))},directives:[s.O5,h.Ou,f.BZ,T.YE,f.w1,f.fO,f.ge,T.nU,f.Dz,f.ev,s.sg,f.as,f.XQ,f.nj,f.Gk],pipes:[s.uU],styles:[".reuse-button[_ngcontent-%COMP%]{color:#4793d1!important}.narrow-row[_ngcontent-%COMP%]{height:36px}.spinner[_ngcontent-%COMP%]{margin:auto}.spinner-container[_ngcontent-%COMP%]{width:100%}.explain[_ngcontent-%COMP%]{margin-left:30px;font-style:italic;font-size:14px}"]}),se}()},95465:function(dt,K,n){"use strict";n.d(K,{b:function(){return H}});var P=n(78069),t=n(48047),e=n(76442),p=n(42827),d=n(52149),s=n(33567),h=n(24936),f=n(95758),T=n(53349),B=n(87317),I=function(){var V=function(){function ue(R){(0,P.Z)(this,ue),this.dialogRef=R}return(0,t.Z)(ue,[{key:"ngOnInit",value:function(){}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"fillReference",value:function(r){this.dialogRef.close(r)}}]),ue}();return V.\u0275fac=function(R){return new(R||V)(e.Y36(f.so))},V.\u0275cmp=e.Xpm({type:V,selectors:[["app-previous-references-dialog"]],decls:9,vars:0,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"selectedReference"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-button","",3,"click"]],template:function(R,r){1&R&&(e.TgZ(0,"div",0),e.TgZ(1,"h1"),e._uU(2,"Select Previously Used Reference"),e.qZA(),e.qZA(),e.TgZ(3,"div",1),e.TgZ(4,"app-previous-references",2),e.NdJ("selectedReference",function(Y){return r.fillReference(Y)}),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e._UZ(6,"span",4),e.TgZ(7,"button",5),e.NdJ("click",function(){return r.cancel()}),e._uU(8,"Cancel"),e.qZA(),e.qZA())},directives:[f.uh,f.xY,T.s,f.H8,B.lW],styles:[""]}),V}(),v=n(66088);function j(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div",12),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",13),e.NdJ("click",function(){return e.CHM(R),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",14),e.qZA(),e.qZA()}}function Q(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",22),e.NdJ("click",function(){return e.CHM(R),e.oxw(2).deleteReference()}),e.TgZ(2,"span"),e._uU(3,"Delete"),e.qZA(),e._uU(4,"\xa0 "),e._UZ(5,"mat-icon",23),e.qZA(),e.qZA()}}function J(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",24),e.NdJ("selectedFile",function(z){return e.CHM(R),e.oxw(2).fileSelected(z)}),e.TgZ(2,"span"),e._uU(3,"Upload Document"),e.qZA(),e._uU(4,"\xa0 "),e._UZ(5,"mat-icon",25),e.qZA(),e.qZA()}}function Z(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",26),e._uU(2," Attachment "),e._UZ(3,"mat-icon",27),e.qZA(),e.TgZ(4,"mat-menu",null,28),e.TgZ(6,"a",29),e.NdJ("click",function(){e.CHM(R);var Y=e.oxw(2);return Y.downloadDocument(Y.reference.uploadedFile)}),e._uU(7,"Download"),e.qZA(),e.TgZ(8,"button",30),e.NdJ("selectedFile",function(Y){return e.CHM(R),e.oxw(2).fileSelected(Y)}),e._uU(9,"Replace"),e.qZA(),e.TgZ(10,"button",29),e.NdJ("click",function(){return e.CHM(R),e.oxw(2).reference.uploadedFile=null}),e._uU(11,"Delete"),e.qZA(),e.qZA(),e.qZA()}if(2&V){var r=e.MAs(5);e.xp6(1),e.Q6J("matMenuTriggerFor",r)}}function A(V,ue){if(1&V&&(e.TgZ(0,"div",31),e.TgZ(1,"div",32),e._UZ(2,"mat-progress-spinner",33),e.qZA(),e.TgZ(3,"span"),e._uU(4,"Uploading"),e.qZA(),e.qZA()),2&V){var R=e.oxw(2);e.xp6(2),e.Q6J("color",R.primary)}}function N(V,ue){1&V&&(e.TgZ(0,"div",31),e._uU(1," Error: There was a problem uploading this document "),e.qZA())}function E(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",34),e.NdJ("click",function(){e.CHM(R);var Y=e.oxw(2);return Y.showPrev=!Y.showPrev}),e.TgZ(2,"span"),e._uU(3),e.qZA(),e._uU(4,"\xa0 "),e.qZA(),e.qZA()}if(2&V){var r=e.oxw(2);e.xp6(3),e.hij("",r.showPrev?"Hide":"Use"," Previous Substance Reference")}}function k(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",34),e.NdJ("click",function(){return e.CHM(R),e.oxw(2).openPreviousDialog()}),e.TgZ(2,"span"),e._uU(3),e.qZA(),e._uU(4,"\xa0 "),e.qZA(),e.qZA()}if(2&V){var r=e.oxw(2);e.xp6(3),e.hij("",r.showPrev?"Hide":"Use"," Previous Substance Reference")}}function q(V,ue){if(1&V&&(e.TgZ(0,"div"),e._UZ(1,"app-apply-reference",35),e.qZA()),2&V){var R=e.oxw(2);e.xp6(1),e.Q6J("subReferenceUuid",R.reference.uuid)}}function ce(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",2),e.TgZ(2,"mat-form-field",15),e.TgZ(3,"input",16),e.NdJ("ngModelChange",function(Y){return e.CHM(R),e.oxw().reference.url=Y}),e.qZA(),e.qZA(),e.TgZ(4,"mat-form-field"),e.TgZ(5,"input",17),e.NdJ("ngModelChange",function(Y){return e.CHM(R),e.oxw().reference.id=Y}),e.qZA(),e.qZA(),e.TgZ(6,"app-tag-selector",18),e.NdJ("tagsUpdate",function(Y){return e.CHM(R),e.oxw().updateTags(Y)}),e.qZA(),e.qZA(),e.TgZ(7,"div",19),e.YNc(8,Q,6,0,"div",9),e.YNc(9,J,6,0,"div",9),e.YNc(10,Z,12,1,"div",9),e.YNc(11,A,5,1,"div",20),e.YNc(12,N,2,0,"div",20),e.YNc(13,E,5,1,"div",9),e.YNc(14,k,5,1,"div",9),e._UZ(15,"span",21),e.YNc(16,q,2,1,"div",9),e.qZA(),e.qZA()}if(2&V){var r=e.oxw();e.xp6(3),e.Q6J("ngModel",r.reference.url),e.xp6(2),e.Q6J("ngModel",r.reference.id),e.xp6(1),e.Q6J("tags",r.reference.tags),e.xp6(2),e.Q6J("ngIf",r.reference.uuid&&!r.hideDelete),e.xp6(1),e.Q6J("ngIf",!r.reference.uploadedFile),e.xp6(1),e.Q6J("ngIf",r.reference.uploadedFile),e.xp6(1),e.Q6J("ngIf",!0===r.loading),e.xp6(1),e.Q6J("ngIf",!1===r.loading&&!0===r.error),e.xp6(1),e.Q6J("ngIf",!r.reference.uuid),e.xp6(1),e.Q6J("ngIf",r.reference.uuid&&!r.reference.docType&&!r.reference.citation),e.xp6(2),e.Q6J("ngIf",r.reference.uuid)}}function ie(V,ue){if(1&V){var R=e.EpF();e.TgZ(0,"div",2),e.TgZ(1,"app-previous-references",36),e.NdJ("selectedReference",function(z){return e.CHM(R),e.oxw().fillReference(z)}),e.qZA(),e.qZA()}}var H=function(){var V=function(){function ue(R,r,z,Y,se,X){(0,P.Z)(this,ue),this.cvService=R,this.utilsService=r,this.substanceFormReferencesService=z,this.dialog=Y,this.overlayContainerService=se,this.substanceFormService=X,this.referenceDeleted=new e.vpe,this.hideDelete=!1,this.showPrev=!1,this.loading=!1,this.error=!1,this.subscriptions=[]}return(0,t.Z)(ue,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"updateAccess",value:function(r){this.reference.access=r}},{key:"updateTags",value:function(r){this.reference.tags=r}},{key:"isValid",get:function(){return!(!this.reference.docType||!this.reference.citation)}},{key:"deleteReference",value:function(){var r=this;this.reference.$$deletedCode=this.utilsService.newUUID(),this.reference.docType||this.reference.citation||this.reference.uploadedFile?this.substanceFormReferencesService.emitReferencesUpdate():this.deleteTimer=setTimeout(function(){r.referenceDeleted.emit(r.reference)},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.reference.$$deletedCode,this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"fileSelected",value:function(r){var z=this;this.error=!1,null!=r&&(this.loading=!0,this.utilsService.uploadFile(r).subscribe(function(Y){z.reference.uploadedFile=Y,z.loading=!1},function(Y){z.loading=!1,z.error=!0}))}},{key:"openPreviousDialog",value:function(){var r=this,z=this.dialog.open(I,{data:{},width:"990px"});this.overlayContainer.style.zIndex="1002";var Y=z.afterClosed().subscribe(function(se){r.overlayContainer.style.zIndex=null,se&&se.citation&&""!==se.citation&&se.docType&&""!==se.docType&&r.fillReference(se)});this.subscriptions.push(Y)}},{key:"fillReference",value:function(r){this.showPrev=!1,this.reference.access=r.access,this.reference.citation=r.citation,this.reference.deprecated=r.deprecated,this.reference.docType=r.docType,this.reference.publicDomain=r.publicDomain,this.reference.tags=r.tags,this.reference.uploadedFile=r.uploadedFile,this.reference.url=r.url||null,this.reference.id=r.id||null}},{key:"downloadDocument",value:function(r){this.substanceFormService.bypassUpdateCheck(),window.open(r)}}]),ue}();return V.\u0275fac=function(R){return new(R||V)(e.Y36(p.I),e.Y36(d.F),e.Y36(h.v),e.Y36(f.uw),e.Y36(v.Xj),e.Y36(s.B))},V.\u0275cmp=e.Xpm({type:V,selectors:[["app-reference-form"]],inputs:{reference:"reference",hideDelete:"hideDelete"},outputs:{referenceDeleted:"referenceDeleted"},decls:15,vars:8,consts:[[1,"reference-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],["required","true","domain","DOCUMENT_TYPE","title","Source Type","name","docType",1,"source-type",3,"model","valueChange"],[1,"citation"],["matInput","","placeholder","Source Text/Citation","required","","name","citation",3,"ngModel","ngModelChange"],[1,"checkbox-container"],["name","publicDomain",3,"ngModel","ngModelChange"],[3,"access","accessOut"],[4,"ngIf"],["class","form-row ",4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"url"],["matInput","","placeholder","URL","name","refUrl",3,"ngModel","ngModelChange"],["matInput","","placeholder","Source Id","name","refId",3,"ngModel","ngModelChange"],["cvDomain","DOCUMENT_COLLECTION",1,"tags",3,"tags","tagsUpdate"],[1,"form-row","form-actions"],["class","loading-container",4,"ngIf"],[1,"middle-fill"],["mat-button","",3,"click"],["svgIcon","delete_forever"],["mat-button","","ncatsFileSelect","",3,"selectedFile"],["svgIcon","cloud_upload"],["mat-button","",3,"matMenuTriggerFor"],["svgIcon","attachment"],["documentMenu","matMenu"],["mat-menu-item","",3,"click"],["mat-menu-item","","ncatsFileSelect","",3,"selectedFile"],[1,"loading-container"],[1,"spinner-container"],["mode","indeterminate",1,"progress-spinner","spinner",3,"color"],["mat-button","","matTooltip","use a previously submitted reference",3,"click"],[3,"subReferenceUuid"],[1,"previous-ref",3,"selectedReference"]],template:function(R,r){1&R&&(e.TgZ(0,"div",0),e.YNc(1,j,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"app-cv-input",3),e.NdJ("valueChange",function(Y){return r.reference.docType=Y}),e.qZA(),e.TgZ(4,"mat-form-field",4),e.TgZ(5,"input",5),e.NdJ("ngModelChange",function(Y){return r.reference.citation=Y}),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"mat-checkbox",7),e.NdJ("ngModelChange",function(Y){return r.reference.publicDomain=Y}),e._uU(8," Public Domain "),e.qZA(),e.qZA(),e.TgZ(9,"div"),e.TgZ(10,"app-access-manager",8),e.NdJ("accessOut",function(Y){return r.updateAccess(Y)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(11,ce,17,11,"div",9),e.YNc(12,ie,2,0,"div",10),e.TgZ(13,"div",2),e._UZ(14,"app-audit-info",11),e.qZA(),e.qZA()),2&R&&(e.xp6(1),e.Q6J("ngIf",r.reference.$$deletedCode),e.xp6(2),e.Q6J("model",r.reference.docType),e.xp6(2),e.Q6J("ngModel",r.reference.citation),e.xp6(2),e.Q6J("ngModel",r.reference.publicDomain),e.xp6(3),e.Q6J("access",r.reference.access),e.xp6(1),e.Q6J("ngIf",!r.reference.$$deletedCode),e.xp6(1),e.Q6J("ngIf",r.showPrev),e.xp6(2),e.Q6J("source",r.reference))},styles:[".reference-form-container[_ngcontent-%COMP%]{padding:30px 0 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.source-type[_ngcontent-%COMP%], .citation[_ngcontent-%COMP%], .url[_ngcontent-%COMP%]{width:30%}.tags[_ngcontent-%COMP%]{width:40%}.previous-ref[_ngcontent-%COMP%]{margin:auto;width:90%}.spinner[_ngcontent-%COMP%]{height:20px;width:20px}.loading-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;height:26px}.spinner-container[_ngcontent-%COMP%]{height:20px;width:20px;margin-right:5px}.progress-spinner[_ngcontent-%COMP%]{margin:auto}.mat-progress-spinner[_ngcontent-%COMP%]{height:20px!important;width:20px!important}.mat-progress-spinner[_ngcontent-%COMP%] svg{height:20px!important;width:20px!important}.mat-progress-spinner[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:20px!important;width:20px!important}"]}),V}()},24936:function(dt,K,n){"use strict";n.d(K,{v:function(){return j}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(32685),f=n(26067),T=n(68785),B=n(33567),I=n(63169),v=n(76442),j=function(){var Q=function(J){(0,d.Z)(A,J);var Z=(0,s.Z)(A);function A(N,E){var k;return(0,P.Z)(this,A),(k=Z.call(this,N)).substanceFormService=N,k.utilsService=E,k.domainsWithReferencesEmitter=new f.t,k}return(0,t.Z)(A,[{key:"initSubtanceForm",value:function(){var E=this;(0,e.Z)((0,p.Z)(A.prototype),"initSubtanceForm",this).call(this);var k=this.substanceFormService.substance.subscribe(function(q){E.privateDomainsWithReferences=null,E.substance=q,null==E.substance.references&&(E.substance.references=[]),E.substanceFormService.resetState(),E.propertyEmitter.next(E.substance.references),E.domainsWithReferencesEmitter.next(E.getDomainReferences())});this.subscriptions.push(k)}},{key:"unloadSubstance",value:function(){(0,e.Z)((0,p.Z)(A.prototype),"unloadSubstance",this).call(this),this.domainsWithReferencesEmitter.complete(),this.domainsWithReferencesEmitter=new f.t}},{key:"substanceReferences",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceReference",value:function(E){return E.uuid=this.utilsService.newUUID(),null==this.substance.references&&(this.substance.references=[]),this.substance.references.unshift(E),this.propertyEmitter.next(this.substance.references),E}},{key:"domainsWithReferences",get:function(){return this.domainsWithReferencesEmitter.asObservable()}},{key:"getDomainReferences",value:function(){var E=this,k=this.substance.substanceClass;"chemical"===this.substance.substanceClass?k="structure":"specifiedSubstanceG1"===this.substance.substanceClass&&(k="specifiedSubstance");var q={uuid:this.substance[k].uuid,references:this.substance[k].references};return this.privateDomainsWithReferences={definition:{subClass:this.substance.substanceClass,domain:q}},"specifiedSubstance"===k&&(this.privateDomainsWithReferences={definition:{subClass:this.substance.substanceClass,domain:q}}),this.privateDomainsWithReferences={definition:{subClass:this.substance.substanceClass,domain:this.substance[k]}},h.Q.forEach(function(ce){if("constituents"!==ce)E.privateDomainsWithReferences[ce]={listDisplay:ce,displayKey:h.v[ce],domains:E.substance[ce]||[]};else{var ie=[];"specifiedSubstance"===k&&E.substance.specifiedSubstance&&E.substance.specifiedSubstance.constituents&&(ie=E.substance.specifiedSubstance.constituents),E.privateDomainsWithReferences[ce]={listDisplay:"constituents",displayKey:"constituent",domains:ie}}}),this.privateDomainsWithReferences}},{key:"deleteSubstanceReference",value:function(E){var k=this.substance.references.findIndex(function(q){return E.$$deletedCode===q.$$deletedCode});k>-1&&(this.substance.references.splice(k,1),this.propertyEmitter.next(this.substance.references))}},{key:"emitReferencesUpdate",value:function(){this.propertyEmitter.next(this.substance.references)}}]),A}(T.E);return Q.\u0275fac=function(Z){return new(Z||Q)(v.LFG(B.B),v.LFG(I.FW))},Q.\u0275prov=v.Yz7({token:Q,factory:Q.\u0275fac}),Q}()},96238:function(dt,K,n){"use strict";n.d(K,{F:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,null==Z.substance.relationships&&(Z.substance.relationships=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.relationships)});this.subscriptions.push(A)}},{key:"substanceRelationships",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceRelationship",value:function(){this.substance.relationships.unshift({relatedSubstance:{},amount:{},references:[],access:[]}),this.propertyEmitter.next(this.substance.relationships)}},{key:"deleteSubstanceRelationship",value:function(Z){var A=this.substance.relationships.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.relationships.splice(A,1),this.propertyEmitter.next(this.substance.relationships))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},5118:function(dt,K,n){"use strict";n.d(K,{T:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,Z.substance.modifications||(Z.substance.modifications={}),Z.substance.modifications.structuralModifications||(Z.substance.modifications.structuralModifications=[]),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.modifications.structuralModifications)});this.subscriptions.push(A)}},{key:"substanceStructuralModifications",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceStructuralModification",value:function(){this.substance.modifications||(this.substance.modifications={}),this.substance.modifications.structuralModifications||(this.substance.modifications.structuralModifications=[]),this.substance.modifications.structuralModifications.unshift({references:[],sites:[],access:[]}),this.propertyEmitter.next(this.substance.modifications.structuralModifications)}},{key:"deleteSubstanceStructuralModification",value:function(Z){var A=this.substance.modifications.structuralModifications.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.modifications.structuralModifications.splice(A,1),this.propertyEmitter.next(this.substance.modifications.structuralModifications))}}]),Q}(h.E);return I.\u0275fac=function(j){return new(j||I)(T.LFG(f.B))},I.\u0275prov=T.Yz7({token:I,factory:I.\u0275fac}),I}()},34470:function(dt,K,n){"use strict";n.d(K,{Z:function(){return B}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(68785),f=n(33567),T=n(76442),B=function(){var I=function(v){(0,d.Z)(Q,v);var j=(0,s.Z)(Q);function Q(J){var Z;return(0,P.Z)(this,Q),(Z=j.call(this,J)).substanceFormService=J,Z}return(0,t.Z)(Q,[{key:"initSubtanceForm",value:function(){var Z=this;(0,e.Z)((0,p.Z)(Q.prototype),"initSubtanceForm",this).call(this);var A=this.substanceFormService.substance.subscribe(function(N){Z.substance=N,null!=Z.substance.polymer&&(null==Z.substance.polymer.structuralUnits?Z.substance.polymer.structuralUnits=[]:Z.setSRUConnectivityDisplay(Z.substance.polymer.structuralUnits),Z.substanceFormService.resetState(),Z.propertyEmitter.next(Z.substance.polymer.structuralUnits))});this.subscriptions.push(A)}},{key:"substanceSRUs",get:function(){return this.propertyEmitter.asObservable()}},{key:"deleteSubstanceSRU",value:function(Z){var A=this.substance.polymer.structuralUnits.findIndex(function(N){return Z.$$deletedCode===N.$$deletedCode});A>-1&&(this.substance.polymer.structuralUnits.splice(A,1),this.propertyEmitter.next(this.substance.polymer.structuralUnits))}},{key:"updateSRUs",value:function(Z){this.setSRUConnectivityDisplay(Z),this.substance.polymer.structuralUnits=Z,this.propertyEmitter.next(this.substance.polymer.structuralUnits)}},{key:"setSRUConnectivityDisplay",value:function(Z){var A=this.getAttachmentMapUnits(Z);for(var N in Z){var E=this.sruConnectivityToDisplay(Z[N].attachmentMap,A);Z[N]._displayConnectivity=E}}},{key:"getAttachmentMapUnits",value:function(Z){var A={};for(var N in Z){var E=Z[N].label;for(var k in E||(E="{"+N+"}"),Z[N].attachmentMap)Z[N].attachmentMap.hasOwnProperty(k)&&(A[k]=E)}return A}},{key:"sruConnectivityToDisplay",value:function(Z,A){var N="";for(var E in Z)if(Z.hasOwnProperty(E)){var k=A[E]+"_"+E;for(var q in Z[E])N+=k+"-"+A[Z[E][q]]+"_"+Z[E][q]+";\n"}if(""!==N)return N}},{key:"sruDisplayToConnectivity",value:function(Z){if(!Z)return{};for(var A=[],N=Z.split(";"),E=/^\s*[A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)[-][A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)\s*$/g,k={},q=0;q-1){ie.molfile=q[V].molfile;var ue=k.computedMoieties.find(function(z){return z.hash===ie.hash});null!=ue&&q[V].count!==ue.count&&(ie.count=q[V].count,ie.countAmount=q[V].countAmount);var R=ce.findIndex(function(z){return z.hash===ie.hash}),r=q.findIndex(function(z){return z.hash===ie.hash});ce.splice(R,1),q.splice(r,1)}}),q.length>0&&q.forEach(function(ie){var H=k.deletedMoieties.findIndex(function(R){return R.hash===ie.hash});if(H>-1){var V=k.deletedMoieties.splice(H,1)[0];V.molfile=ie.molfile;var ue=k.computedMoieties.find(function(R){return R.hash===V.hash});null!=ue&&ie.count!==ue.count&&(V.count=ie.count,V.countAmount=ie.countAmount),k.substance.moieties.push(V)}else ie.uuid="",k.substance.moieties&&k.substance.moieties.push(ie)}),ce.length>0&&ce.forEach(function(ie){var H=k.substance.moieties.findIndex(function(ue){return ue.hash===ie.hash});if(H>-1){var V=k.substance.moieties.splice(H,1)[0];k.deletedMoieties.push(V)}}),this.computedMoieties=E,this.substanceMoietiesEmitter.next(this.substance.moieties)}},{key:"substanceDisplayStructure",get:function(){return this.substanceIdealizedStructureEmitter.asObservable()}}]),A}(h.E);return Q.\u0275fac=function(Z){return new(Z||Q)(v.LFG(f.B),v.LFG(B.De))},Q.\u0275prov=v.Yz7({token:Q,factory:Q.\u0275fac}),Q}()},7168:function(dt,K,n){"use strict";n.d(K,{O:function(){return _e}});var P=n(78069),t=n(48047),e=n(36362),p=n(84577),d=n(90587),s=n(44770),h=n(82796),f=n(61534),T=n(87317),B=n(65590),I=n(40089),v=n(12379),j=n(19975),Q=n(91434),J=n(43365),Z=n(15992),A=n(81196),N=n(43188),E=n(94673),k=n(95465),q=n(95758),ce=n(97217),ie=n(16531),H=n(70178),V=n(68390),ue=n(45723),R=n(63200),r=n(98827),z=n(26131),Y=n(65831),se=n(16667),X=n(1427),ne=n(31959),ve=n(49241),Re=n(14900),Ie=n(98002),Ee=n(24054),ge=n(60833),_t=n(66794),wt=n(44646),qt=n(33567),Lt=n(27336),Rt=n(35354),it=n(12671),Qe=n(39233),ot=n(24936),tt=n(34470),xe=n(88619),$e=n(39756),Ge=n(21109),ct=n(66452),Xe=n(457),Te=n(26984),vt=n(87625),qe=n(21584),je=n(35663),Nt=n(71896),Ft=n(16830),bt=n(88194),St=n(96238),Pt=n(5118),ut=n(53349),yt=n(74742),be=n(64316),we=n(76442),_e=function(){var $=function(){function Ae(){(0,P.Z)(this,Ae)}return(0,t.Z)(Ae,null,[{key:"forRoot",value:function(){return{ngModule:Ae,providers:[qt.B,_t.y,wt.R,Lt.p,Rt.n,it.w,Qe.S,ot.v,tt.Z,xe.r,$e.w,Ge.e,ct.W,Xe.O,Te.D,vt.b,qe.C,je.k,Nt.X,Ft.q,bt.D,St.F,Pt.T]}}}]),Ae}();return $.\u0275fac=function(ft){return new(ft||$)},$.\u0275mod=we.oAB({type:$}),$.\u0275inj=we.cJS({imports:[[e.ez,d.UX,d.u5,s.lN,h.Tx,f.p9,T.ot,B.Ps,I.AV,v.Nh,j.t,Q.LD,J.c,A.Hi,N.Bb,E.w,q.Is,ce.p0,ie.To,H.g,V.Fk,ue.F,R.U,z.ie,Y.x,ne.vV,ve.s,Ie.Bz,Ee.f,ge.Cv,yt.Cq,be.JX]]}),$}();we.B6R(k.b,[e.O5,T.lW,I.gM,B.Hw,se.S,s.KE,J.Nt,d.Fj,d.Q7,d.JJ,d.On,f.oG,p.h,Z.C,Y.C,h.p6,h.VK,h.OP,yt.Ou,r.U,ut.s,Re.n],[]),we.B6R(X.I,[e.O5,T.lW,I.gM,B.Hw,se.S,Re.n],[])},33567:function(dt,K,n){"use strict";n.d(K,{B:function(){return j}});var P=n(78069),t=n(48047),e=n(26067),p=n(50253),d=n(83336),s=n(12570),h=n(52149),f=n(69093),T=n(92938),I=n(59295),v=n(76442),j=function(){var Q=function(){function J(Z,A,N){(0,P.Z)(this,J),this.substanceService=Z,this.utilsService=A,this.structureService=N,this.substanceDisulfideLinksEmitter=new e.t,this.substanceGlycosylationEmitter=new e.t,this.substanceLinksEmitter=new e.t,this.substanceNamesEmitter=new e.t,this.substanceOtherLinksEmitter=new e.t,this.substanceStructuralModificationsEmitter=new e.t,this.substanceCysteineEmitter=new e.t,this.substanceFormActionEmitter=new e.t,this.definitionEmitter=new p.x,this.substanceSubunitsEmitter=new p.x,this.substanceSugarsEmitter=new p.x,this.substanceNucleicAcidEmitter=new p.x,this.allSitesEmitter=new p.x,this.displaySequencesEmitter=new p.x,this.substanceChangeReasonEmitter=new p.x,this.nameResolver=new p.x,this.resolvedMol=this.nameResolver.asObservable(),this._bypassUpdateCheck=!1,this.substanceEmitter=new e.t}return(0,t.Z)(J,[{key:"ngOnDestroy",value:function(){this.unloadSubstance()}},{key:"loadSubstance",value:function(){var A=this,N=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"chemical",E=arguments.length>1?arguments[1]:void 0,k=arguments.length>2?arguments[2]:void 0,q=arguments.length>3?arguments[3]:void 0;return this.method=k||null,q&&(this.privateSubstance=E,this.substanceEmitter.next(E),this.namesUpdated()),this.substanceEmitter.subscribe(function(ce){}),new d.y(function(ce){null!=E?(A.privateSubstance=E,N=A.privateSubstance.substanceClass):(A.privateSubstance="chemical"===N||"structure"===N?{substanceClass:"chemical",references:[],names:[],structure:{molfile:"\n\n\n 0 0 0 0 0 0 999 V2000\nM END"},codes:[],relationships:[],properties:[]}:"protein"===N?{substanceClass:"protein",references:[],names:[],protein:{proteinType:""},codes:[],relationships:[],properties:[]}:"nucleicAcid"===N?{substanceClass:"nucleicAcid",references:[],names:[],nucleicAcid:{},codes:[],relationships:[],properties:[]}:"mixture"===N?{substanceClass:"mixture",references:[],names:[],mixture:{},codes:[],relationships:[],properties:[]}:"structurallyDiverse"===N?{substanceClass:"structurallyDiverse",references:[],names:[],structurallyDiverse:{part:["whole"],$$diverseType:"whole"},codes:[],relationships:[],properties:[]}:"specifiedSubstance"===N||"specifiedSubstanceG1"===N?{substanceClass:"specifiedSubstanceG1",references:[],names:[],specifiedSubstance:{constituents:[],references:[]},codes:[],relationships:[],properties:[]}:"specifiedSubstanceG3"===N?{substanceClass:N,references:[],names:[],specifiedSubstanceG3:{parentSubstance:{},definition:{references:[]},grade:{references:[]}},codes:[],properties:[]}:"specifiedSubstanceG4m"===N?{substanceClass:N,specifiedSubstanceG4m:{parentSubstance:{},process:[]}}:"polymer"===N?{substanceClass:N,references:[],names:[],polymer:{idealizedStructure:{},monomers:[]},codes:[],moieties:[],relationships:[],properties:[]}:{substanceClass:N,references:[],names:[],codes:[]},"specifiedSubstanceG4m"!==N&&(A.privateSubstance.access=["protected"],A.privateSubstance.definitionLevel="COMPLETE",A.privateSubstance.definitionType="PRIMARY")),A.subClass=A.privateSubstance.substanceClass,"chemical"===A.subClass?A.subClass="structure":"specifiedSubstanceG1"===A.subClass&&(A.subClass="specifiedSubstance"),null==A.privateSubstance[A.subClass]&&(A.privateSubstance[A.subClass]={}),A.initForm(),A.substanceEmitter.next(A.privateSubstance),ce.next(),ce.complete()})}},{key:"substanceFormAction",get:function(){return this.substanceFormActionEmitter.asObservable()}},{key:"initForm",value:function(){this.substanceFormActionEmitter.next("load")}},{key:"substance",get:function(){return this.substanceEmitter.asObservable()}},{key:"resetState",value:function(){var A=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(A)}},{key:"unloadSubstance",value:function(){this.allSitesArr=null,this.displaySequences=null,this.substanceEmitter.complete(),this.substanceDisulfideLinksEmitter.complete(),this.substanceGlycosylationEmitter.complete(),this.substanceLinksEmitter.complete(),this.substanceNamesEmitter.complete(),this.substanceOtherLinksEmitter.complete(),this.substanceStructuralModificationsEmitter.complete(),this.substanceCysteineEmitter.complete(),this.substanceEmitter=new e.t,this.substanceDisulfideLinksEmitter=new e.t,this.substanceGlycosylationEmitter=new e.t,this.substanceLinksEmitter=new e.t,this.substanceLinksEmitter=new e.t,this.substanceOtherLinksEmitter=new e.t,this.substanceStructuralModificationsEmitter=new e.t,this.substanceCysteineEmitter=new e.t,this.substanceFormActionEmitter.next("unload")}},{key:"ready",value:function(){var A=this;return new d.y(function(N){A.substanceEmitter.pipe((0,I.q)(1)).subscribe(function(E){N.next(),N.complete()})})}},{key:"setDefinitionFromDefRef",value:function(A){this.privateSubstance.structurallyDiverse?this.privateSubstance.structurallyDiverse.access=A:this.privateSubstance.protein?this.privateSubstance.protein.access=A:this.privateSubstance.structure?this.privateSubstance.structure.access=A:this.privateSubstance.mixture?this.privateSubstance.mixture.access=A:this.privateSubstance.polymer?this.privateSubstance.polymer.access=A:this.privateSubstance.nucleicAcid?this.privateSubstance.nucleicAcid.access=A:this.privateSubstance.specifiedSubstance&&(this.privateSubstance.specifiedSubstance.access=A),this.substanceEmitter.next(this.privateSubstance)}},{key:"getDefinitionForDefRef",value:function(){return this.privateSubstance.structurallyDiverse?this.privateSubstance.structurallyDiverse.access:this.privateSubstance.protein?this.privateSubstance.protein.access:this.privateSubstance.structure?this.privateSubstance.structure.access:this.privateSubstance.mixture?this.privateSubstance.mixture.access:this.privateSubstance.polymer?this.privateSubstance.polymer.access:this.privateSubstance.nucleicAcid?this.privateSubstance.nucleicAcid.access:this.privateSubstance.specifiedSubstance?this.privateSubstance.specifiedSubstance.access:void this.definitionEmitter.next(this.getDefinition())}},{key:"changeApproval",value:function(){var A=prompt("Enter new ApprovalID:");if(A){var N=this.privateSubstance.approvalID;this.privateSubstance.approvalID=A,alert('Approval ID changed from"'+N+'" to "'+A+'". Submit changes to save'),this.definitionEmitter.next(this.getDefinition())}}},{key:"switchType",value:function(A,N){var E={protein:["protein","modifications","properties"],chemical:["structure","moieties","modifications","properties"],structurallyDiverse:["structurallyDiverse","modifications","properties"],polymer:["polymer","modifications","properties"],nucleicAcid:["nucleicAcid","modifications","properties"],mixture:["mixture","modifications","properties"],specifiedSubstanceG1:[]};return E[N]&&E[N].forEach(function(k){A[k]&&delete A[k]}),A.substanceClass=N,"chemical"===N?A.structure={}:"protein"===N?A.protein={proteinType:""}:"nucleicAcid"===N?A.nucleicAcid={}:"mixture"===N?A.mixture={}:"structurallyDiverse"===N?A.structurallyDiverse={part:["whole"],$$diverseType:"whole"}:"specifiedSubstanceG1"===N?A.specifiedSubstance={}:"polymer"===N&&(A.polymer={idealizedStructure:{},monomers:[]}),alert("Substance type switched. Submit changes to save"),A}},{key:"setDefinitionPrivate",value:function(){this.privateSubstance.structurallyDiverse?this.setPrivate(this.privateSubstance.structurallyDiverse):this.privateSubstance.protein?this.setPrivate(this.privateSubstance.protein):this.privateSubstance.structure?this.setPrivate(this.privateSubstance.structure):this.privateSubstance.mixture?this.setPrivate(this.privateSubstance.mixture):this.privateSubstance.polymer?this.setPrivate(this.privateSubstance.polymer):this.privateSubstance.nucleicAcid?this.setPrivate(this.privateSubstance.nucleicAcid):this.privateSubstance.specifiedSubstance&&this.setPrivate(this.privateSubstance.specifiedSubstance)}},{key:"setPrivate",value:function(A){A.access=["protected"],alert("Substance definition now set to protected, please submit to save change")}},{key:"setDefinitionPublic",value:function(){this.privateSubstance.structurallyDiverse?this.setPublic(this.privateSubstance.structurallyDiverse):this.privateSubstance.protein?this.setPublic(this.privateSubstance.protein):this.privateSubstance.structure?this.setPublic(this.privateSubstance.structure):this.privateSubstance.mixture?this.setPublic(this.privateSubstance.mixture):this.privateSubstance.polymer?this.setPublic(this.privateSubstance.polymer):this.privateSubstance.nucleicAcid?this.setPublic(this.privateSubstance.nucleicAcid):this.privateSubstance.specifiedSubstance&&this.setPublic(this.privateSubstance.specifiedSubstance)}},{key:"conceptNonApproved",value:function(){"concept"===this.privateSubstance.substanceClass?(this.privateSubstance.status="non-approved",alert('Concept status set to "non approved", please submit to save changes')):alert("Can only change status of concept records")}},{key:"unapproveRecord",value:function(){var A=this.privateSubstance.approvalID;this.privateSubstance.approvalID=null,this.privateSubstance.status=null,this.privateSubstance.approved=null,this.privateSubstance.approvedBy=null,alert("Removed approvalID '"+A+"'. Submit record to save.")}},{key:"setPublic",value:function(A){A.access=[],alert("Substance definition set to be PUBLIC, please submit to save change")}},{key:"isSubstanceUpdated",get:function(){var A=JSON.stringify(this.privateSubstance);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.substanceStateHash!==this.utilsService.hashCode(A)}},{key:"autoSave",value:function(){var A=JSON.stringify(this.privateSubstance);return this.previousHash?!(this.previousHash===this.utilsService.hashCode(A)||(this.previousHash=this.utilsService.hashCode(A),0)):(this.previousHash=this.utilsService.hashCode(A),!1)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"definition",get:function(){var A=this;return new d.y(function(N){A.ready().subscribe(function(){var E=A.getDefinition();N.next(E),A.definitionEmitter.subscribe(function(k){N.next(k)})})})}},{key:"updateDefinition",value:function(A){this.privateSubstance.definitionLevel=A.definitionLevel,this.privateSubstance.deprecated=A.deprecated,this.privateSubstance.access=A.access,this.privateSubstance.created=A.created,this.privateSubstance.createdBy=A.createdBy,this.privateSubstance.lastEdited=A.lastEdited,this.privateSubstance.lastEditedBy=A.lastEditedBy,A.status&&(this.privateSubstance.status=A.status),A.approvalID&&(this.privateSubstance.approvalID=A.approvalID),this.privateSubstance[A.substanceClass]?this.privateSubstance[A.substanceClass].references=A.references:this.privateSubstance[A.substanceClass]={references:A.references},this.privateSubstance.definitionType!==A.definitionType&&"ALTERNATIVE"===A.definitionType&&(this.privateSubstance.names=[],this.privateSubstance.codes=[],this.substanceNamesEmitter.next(this.privateSubstance.names)),this.privateSubstance.definitionType=A.definitionType,this.definitionEmitter.next(this.getDefinition())}},{key:"getJson",value:function(){return this.privateSubstance}},{key:"getUuid",value:function(){return this.privateSubstance.uuid}},{key:"getClass",value:function(){return this.privateSubstance.substanceClass}},{key:"changeStatus",value:function(A){this.privateSubstance.status=A,alert("Status changed to "+A)}},{key:"getDefinition",value:function(){if(!this.privateSubstance[this.subClass]){this.privateSubstance[this.subClass]={references:[]};var A=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(A)}if(!this.privateSubstance[this.subClass].references){this.privateSubstance[this.subClass].references=[];var N=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(N)}if(!this.privateSubstance.tags){this.privateSubstance.tags=[];var E=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(E)}var k={uuid:this.privateSubstance[this.subClass].uuid||this.privateSubstance[this.subClass].id,substanceClass:this.subClass,definitionType:this.privateSubstance.definitionType,definitionLevel:this.privateSubstance.definitionLevel,deprecated:this.privateSubstance.deprecated,references:this.privateSubstance[this.subClass].references,access:this.privateSubstance.access,relationships:this.privateSubstance.relationships,created:this.privateSubstance.created,createdBy:this.privateSubstance.createdBy,lastEdited:this.privateSubstance.lastEdited,lastEditedBy:this.privateSubstance.lastEditedBy,_name:this.privateSubstance._name,tags:this.privateSubstance.tags};return this.privateSubstance.status&&(k.status=this.privateSubstance.status),this.privateSubstance.approvalID&&(k.approvalID=this.privateSubstance.approvalID),k}},{key:"allSites",get:function(){var A=this;return new d.y(function(N){A.allSitesArr||(A.allSitesArr=A.getAllSites()),N.next(A.allSitesArr),A.allSitesEmitter.subscribe(function(E){N.next(A.allSitesArr)})})}},{key:"emitAllsitesUpdate",value:function(){this.allSitesEmitter.next(this.getAllSites())}},{key:"getAllSites",value:function(){var A=[];if("protein"===this.privateSubstance.substanceClass&&(this.privateSubstance.protein.disulfideLinks&&this.privateSubstance.protein.disulfideLinks.forEach(function(E){E.sites&&E.sites.forEach(function(k){k.subunitIndex&&k.residueIndex&&A.push({residue:k.residueIndex,subunit:k.subunitIndex,type:"disulfide"})})}),this.privateSubstance.protein.otherLinks&&this.privateSubstance.protein.otherLinks.forEach(function(E){E.sites&&E.sites.forEach(function(k){k.subunitIndex&&k.residueIndex&&A.push({residue:k.residueIndex,subunit:k.subunitIndex,type:"other"})})}),this.privateSubstance.protein.glycosylation)){var N=this.privateSubstance.protein.glycosylation;N.CGlycosylationSites&&N.CGlycosylationSites.forEach(function(E){A.push({residue:E.residueIndex,subunit:E.subunitIndex,type:"C-Glycosylation"})}),N.NGlycosylationSites&&N.NGlycosylationSites.forEach(function(E){A.push({residue:E.residueIndex,subunit:E.subunitIndex,type:"N-Glycosylation"})}),N.OGlycosylationSites&&N.OGlycosylationSites.forEach(function(E){E.subunitIndex&&E.residueIndex&&A.push({residue:E.residueIndex,subunit:E.subunitIndex,type:"O-Glycosylation"})})}return this.privateSubstance.modifications.structuralModifications&&this.privateSubstance.modifications.structuralModifications.forEach(function(E){E.sites&&E.sites.forEach(function(k){k.subunitIndex&&k.residueIndex&&A.push({residue:k.residueIndex,subunit:k.subunitIndex,type:"modification"})})}),this.privateSubstance.properties&&this.privateSubstance.properties.forEach(function(E){"PROTEIN FEATURE"!==E.propertyType&&"NUCLEIC ACID FEATURE"!==E.propertyType||E.value.nonNumericValue.split(";").forEach(function(q){for(var ce=q.split("-"),ie=Number(ce[0].split("_")[0]),H=Number(ce[0].split("_")[1]);H<=Number(ce[1].split("_")[1]);H++){var V={residue:Number(H),subunit:ie,type:"feature"};A.push(V)}})}),A}},{key:"recalculateAllSites",value:function(A){var N=this.getAllSites();N!==this.allSitesArr&&(this.allSitesArr=N,this.allSitesEmitter.next(this.allSitesArr))}},{key:"resolvedName",value:function(A){this.nameResolver.next(A)}},{key:"updateNucleicAcidDetails",value:function(A){this.privateSubstance.nucleicAcid.nucleicAcidType=A.nucleicAcidType,this.privateSubstance.nucleicAcid.nucleicAcidSubType=A.nucleicAcidSubType,this.privateSubstance.nucleicAcid.sequenceOrigin=A.sequenceOrigin,this.privateSubstance.nucleicAcid.sequenceType=A.sequenceType}},{key:"substanceNucleicAcid",get:function(){var A=this;return new d.y(function(N){A.ready().subscribe(function(E){null==A.privateSubstance.nucleicAcid&&(A.privateSubstance.nucleicAcid={nucleicAcidType:""}),N.next(A.privateSubstance.nucleicAcid),A.substanceNucleicAcidEmitter.subscribe(function(k){N.next(A.privateSubstance.nucleicAcid)})})})}},{key:"namesUpdated",value:function(){return this.substanceNamesEmitter.asObservable()}},{key:"substanceSubunits",get:function(){var A=this;return new d.y(function(N){A.ready().subscribe(function(){if("protein"===A.privateSubstance.substanceClass){if(!A.privateSubstance.protein.subunits){A.privateSubstance.protein.subunits=[];var E=JSON.stringify(A.privateSubstance);A.substanceStateHash=A.utilsService.hashCode(E)}N.next(A.privateSubstance.protein.subunits),A.substanceSubunitsEmitter.subscribe(function(q){N.next(A.privateSubstance.protein.subunits)})}else{if(!A.privateSubstance.nucleicAcid.subunits){A.privateSubstance.nucleicAcid.subunits=[];var k=JSON.stringify(A.privateSubstance);A.substanceStateHash=A.utilsService.hashCode(k)}N.next(A.privateSubstance.nucleicAcid.subunits),A.substanceSubunitsEmitter.subscribe(function(q){N.next(A.privateSubstance.nucleicAcid.subunits)})}})})}},{key:"subunitDisplaySequences",get:function(){var A=this;return new d.y(function(N){A.ready().subscribe(function(){A.displaySequences||(A.displaySequences=A.createSubunitDisplay()),N.next(A.displaySequences),A.displaySequencesEmitter.subscribe(function(E){A.displaySequences=E,N.next(A.displaySequences)})})})}},{key:"addSubstanceSubunit",value:function(){if("protein"===this.privateSubstance.substanceClass)this.privateSubstance.protein.subunits.push({references:[],access:[],sequence:"",subunitIndex:this.privateSubstance.protein.subunits.length+1}),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);else{var E=this.privateSubstance.nucleicAcid.subunits.length||0;this.privateSubstance.nucleicAcid.subunits.push({references:[],access:[],sequence:"",subunitIndex:E+=1}),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.emitSugarUpdate(),this.emitLinkUpdate()}}},{key:"deleteSubstanceSubunit",value:function(A){"protein"===this.privateSubstance.substanceClass?this.privateSubstance.protein.subunits.findIndex(function(k){return A.subunitIndex===k.subunitIndex})>-1&&(this.rearrangeSubunitIndexes("protein",A.subunitIndex),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits)):this.privateSubstance.nucleicAcid.subunits.findIndex(function(k){return A.subunitIndex===k.subunitIndex})>-1&&(this.rearrangeNAIndexes("nucleicAdid",A.subunitIndex),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.emitSugarUpdate(),this.emitLinkUpdate())}},{key:"rearrangeNAIndexes",value:function(A,N){var E=this.privateSubstance.nucleicAcid.subunits.findIndex(function(k){return N===k.subunitIndex});this.privateSubstance.nucleicAcid.subunits.splice(E,1),this.privateSubstance.nucleicAcid.subunits.length>E-1&&(this.privateSubstance.nucleicAcid.subunits.forEach(function(k){k.subunitIndex>N&&(k.subunitIndex=k.subunitIndex-1)}),this.privateSubstance.nucleicAcid.sugars&&(this.privateSubstance.nucleicAcid.sugars.forEach(function(k){k.sites&&(k.sites=k.sites.filter(function(q){return q.subunitIndex!==N}),k.sites.forEach(function(q){q.subunitIndex&&q.subunitIndex>N&&(q.subunitIndex=q.subunitIndex-1)}))}),this.emitSugarUpdate()),this.privateSubstance.nucleicAcid.linkages&&(this.privateSubstance.nucleicAcid.linkages.forEach(function(k){k.sites&&(k.sites=k.sites.filter(function(q){return q.subunitIndex!==N}),k.sites.forEach(function(q){q.subunitIndex&&q.subunitIndex>N&&(q.subunitIndex=q.subunitIndex-1)}))}),this.emitSugarUpdate()))}},{key:"rearrangeSubunitIndexes",value:function(A,N){var E=this.privateSubstance.protein.subunits.findIndex(function(q){return N===q.subunitIndex});if(this.privateSubstance.protein.subunits.splice(E,1),this.privateSubstance.protein.subunits.length>E-1){if(this.privateSubstance.protein.subunits.forEach(function(q){q.subunitIndex>N&&(q.subunitIndex=q.subunitIndex-1)}),this.privateSubstance.protein.disulfideLinks&&(this.privateSubstance.protein.disulfideLinks.forEach(function(q){q.sites&&q.sites.forEach(function(ce){ce.subunitIndex===N&&(ce={}),ce.subunitIndex&&ce.subunitIndex>N&&(ce.subunitIndex=ce.subunitIndex-1)})}),this.emitDisulfideLinkUpdate()),this.privateSubstance.protein.otherLinks&&(this.privateSubstance.protein.otherLinks.forEach(function(q){q.sites&&(q.sites=q.sites.filter(function(ce){return ce.subunitIndex!==N}),q.sites.forEach(function(ce){ce.subunitIndex&&ce.subunitIndex>N&&(ce.subunitIndex=ce.subunitIndex-1)}))}),this.emitOtherLinkUpdate()),this.privateSubstance.protein.glycosylation){var k=this.privateSubstance.protein.glycosylation;k.CGlycosylationSites&&(k.CGlycosylationSites=k.CGlycosylationSites.filter(function(q){return q.subunitIndex!==N}),k.CGlycosylationSites.forEach(function(q){q.subunitIndex&&q.subunitIndex>N&&(q.subunitIndex=q.subunitIndex-1)})),k.NGlycosylationSites&&(k.NGlycosylationSites=k.NGlycosylationSites.filter(function(q){return q.subunitIndex!==N}),k.NGlycosylationSites.forEach(function(q){q.subunitIndex&&q.subunitIndex>N&&(q.subunitIndex=q.subunitIndex-1)})),k.OGlycosylationSites&&(k.OGlycosylationSites=k.OGlycosylationSites.filter(function(q){return q.subunitIndex!==N}),k.OGlycosylationSites.forEach(function(q){q.subunitIndex&&q.subunitIndex>N&&(q.subunitIndex=q.subunitIndex-1)})),this.emitGlycosylationUpdate()}this.privateSubstance.modifications.structuralModifications&&(this.privateSubstance.modifications.structuralModifications.forEach(function(q){q.sites&&(q.sites=q.sites.filter(function(ce){return ce.subunitIndex!==N}),q.sites.forEach(function(ce){ce.subunitIndex&&ce.subunitIndex>N&&(ce.subunitIndex=ce.subunitIndex-1)}))}),this.emitStructuralModificationsUpdate()),this.privateSubstance.properties&&this.privateSubstance.properties.forEach(function(q){"PROTEIN FEATURE"!==q.propertyType&&"NUCLEIC ACID FEATURE"!==q.propertyType||q.value.nonNumericValue.split(";").forEach(function(ie){})})}}},{key:"emitSubunitUpdate",value:function(){"protein"===this.privateSubstance.substanceClass?(this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits),this.displaySequencesEmitter.next(this.createSubunitDisplay())):(this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.emitSugarUpdate(),this.emitLinkUpdate())}},{key:"otherLinksUpdated",value:function(){return this.substanceOtherLinksEmitter.asObservable()}},{key:"emitOtherLinkUpdate",value:function(){this.recalculateAllSites("other"),this.substanceOtherLinksEmitter.next(this.privateSubstance.protein.otherLinks)}},{key:"copyDisulfideLinks",value:function(A,N){for(var E=JSON.parse(JSON.stringify(this.privateSubstance.protein.disulfideLinks)),q=[],ce=0;ce0)for(var k=0;k-1&&(this.privateSubstance.nucleicAcid.sugars.splice(N,1),this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars))}},{key:"emitSugarUpdate",value:function(){this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars)}},{key:"changeReason",get:function(){var A=this;return new d.y(function(N){A.ready().subscribe(function(){N.next(A.privateSubstance.changeReason),A.substanceChangeReasonEmitter.subscribe(function(E){N.next(A.privateSubstance.changeReason)})})})}},{key:"updateChangeReason",value:function(A){this.privateSubstance.changeReason=A,this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason)}},{key:"validateSubstance",value:function(){var A=this;return new d.y(function(N){var E=A.cleanSubstance();A.substanceService.validateSubstance(E).subscribe(function(k){if(k.validationMessages){for(var q=0;q0)for(var E=this.privateSubstance.protein.disulfideLinks.length;E>=0;E--)this.privateSubstance.protein.disulfideLinks[E]&&this.privateSubstance.protein.disulfideLinks[E].sites&&this.privateSubstance.protein.disulfideLinks[E].sites[0]&&this.privateSubstance.protein.disulfideLinks[E].sites[1]&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[E].sites[0]).length&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[E].sites[1]).length&&this.privateSubstance.protein.disulfideLinks.splice(E,1);var k=JSON.stringify(this.privateSubstance),q=JSON.parse(k),ie=this.cleanObject(q).deletedUuids;return ie.length>0&&(k=JSON.stringify(q),ie.forEach(function(H){k=k.replace(new RegExp('"'.concat(H,'"'),"g"),"")}),k=(k=(k=k.replace(/,[,]+/g,",")).replace(/\[,/g,"[")).replace(/,\]/g,"]"),q=JSON.parse(k)),q}},{key:"cleanObject",value:function(A){var N=this,E=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if("[object Object]"===Object.prototype.toString.call(A)){var k=null!=A.$$deletedCode;return k?null!=A.uuid&&E.push(A.uuid):(delete A.$$deletedCode,Object.keys(A).forEach(function(q){"[object Array]"===Object.prototype.toString.call(A[q])?A[q]=A[q].filter(function(ce){return!N.cleanObject(ce,E).isDeleted}):"[object Object]"===Object.prototype.toString.call(A[q])&&N.cleanObject(A[q],E)})),{deletedUuids:E,isDeleted:k}}if("[object Array]"!==Object.prototype.toString.call(A))return{deletedUuids:E,isDeleted:!1};A.forEach(function(q){N.cleanObject(q,E)})}},{key:"getMethod",value:function(){return this.method}},{key:"structureDuplicateCheck",value:function(){var A=this;return new d.y(function(N){A.structureService.duplicateCheck(A.privateSubstance).subscribe(function(E){N.next(E),N.complete()})})}},{key:"getUNII",value:function(){return this.privateSubstance._approvalIDDisplay}},{key:"approveSubstance",value:function(){var A=this;return new d.y(function(N){var E={isSuccessfull:!0};A.substanceService.approveSubstance(A.privateSubstance.uuid).subscribe(function(k){A.privateSubstance=k,E.uuid=k.uuid,A.definitionEmitter.next(A.getDefinition()),"protein"===A.privateSubstance.substanceClass?A.substanceSubunitsEmitter.next(A.privateSubstance.protein.subunits):"nucleicAcid"===A.privateSubstance.substanceClass?(A.substanceSugarsEmitter.next(A.privateSubstance.nucleicAcid.sugars),A.substanceSubunitsEmitter.next(A.privateSubstance.nucleicAcid.subunits)):"mixture"===A.privateSubstance.substanceClass&&A.substanceSubunitsEmitter.next(A.privateSubstance.mixture.components),A.substanceChangeReasonEmitter.next(A.privateSubstance.changeReason),A.resetState(),A.substanceEmitter.next(A.privateSubstance),N.next(E),N.complete()},function(k){E.isSuccessfull=!1,k&&k.error&&k.error.validationMessages?E.validationMessages=k.error.validationMessages:E.serverError=k,N.error(E),N.complete()})})}},{key:"saveSubstance",value:function(){var A=this;return new d.y(function(N){var E={isSuccessfull:!0};null!=A.privateSubstance.structure&&!A.privateSubstance.structure.uuid&&(A.privateSubstance.structure.id=A.utilsService.newUUID(),A.privateSubstance.structure.uuid=A.privateSubstance.structure.id),null!=A.privateSubstance.moieties&&A.privateSubstance.moieties.length&&A.privateSubstance.moieties.forEach(function(q){q.uuid||(q.id=A.utilsService.newUUID(),q.uuid=q.id)});var k=A.cleanSubstance();A.substanceService.saveSubstance(k,A.method).subscribe(function(q){A.privateSubstance=q,E.uuid=q.uuid,A.definitionEmitter.next(A.getDefinition()),"protein"===A.privateSubstance.substanceClass?A.substanceSubunitsEmitter.next(A.privateSubstance.protein.subunits):"nucleicAcid"===A.privateSubstance.substanceClass?(A.substanceSugarsEmitter.next(A.privateSubstance.nucleicAcid.sugars),A.substanceSubunitsEmitter.next(A.privateSubstance.nucleicAcid.subunits)):"mixture"===A.privateSubstance.substanceClass&&A.substanceSubunitsEmitter.next(A.privateSubstance.mixture.components),A.substanceChangeReasonEmitter.next(A.privateSubstance.changeReason),A.substanceService.getSubstanceDetails(E.uuid).subscribe(function(ce){A.privateSubstance=ce,A.resetState(),A.substanceEmitter.next(A.privateSubstance),N.next(E),N.complete()},function(ce){N.next(E),N.complete()})},function(q){E.isSuccessfull=!1,q&&q.error&&q.error.validationMessages?E.validationMessages=q.error.validationMessages:E.serverError=q,N.error(E),N.complete()})})}},{key:"siteDisplayToSite",value:function(A){var N=A.split("_");if(null===A.match(/^[0-9][0-9]*_[0-9][0-9]*$/g))throw new Error('"'+A+'" is not a valid shorthand for a site. Must be of form "{subunit}_{residue}"');return{subunitIndex:N[0]-0,residueIndex:N[1]-0}}},{key:"importSubstance",value:function(A,N){this.privateSubstance=A,this.method=N&&"update"===N?null:"import",this.definitionEmitter.next(this.getDefinition()),"protein"===this.privateSubstance.substanceClass?this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits):"nucleicAcid"===this.privateSubstance.substanceClass?(this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits)):"mixture"===this.privateSubstance.substanceClass&&this.substanceSubunitsEmitter.next(this.privateSubstance.mixture.components),this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason),this.resetState(),this.substanceEmitter.next(this.privateSubstance)}},{key:"stringToSites",value:function(A){if(!(A=A.replace(/ /g,"")))return[];var N=A.split(";"),E=[];for(var k in N){var q=N[k];if(""!==q){var ce=q.split("-");if(ce.length>1){var ie=this.siteDisplayToSite(ce[0]),H=this.siteDisplayToSite(ce[1]);if(ie.subunitIndex!==H.subunitIndex)throw new Error('"'+ce+'" is not a valid shorthand for a site range. Must be between the same subunits.');if(H.residueIndex<=ie.residueIndex)throw new Error('"'+ce+'" is not a valid shorthand for a site range. Second residue index must be greater than first.');E.push(ie);for(var V=ie.residueIndex+1;V0&&(ce+=0!==k?N+"_"+k+"-"+N+"_"+E:N+"_"+E),ce}},{key:"createSubunitDisplay",value:function(){var A=[];A="protein"===this.privateSubstance.substanceClass?this.privateSubstance.protein.subunits:this.privateSubstance.nucleicAcid.subunits;performance.now();var E=[],k=1;return A.forEach(function(ie){var H=[],V=[];if(null!=ie.sequence&&ie.sequence.length>0)for(var ue=0;ue=ie.sequence.length?(V.push([ue,ie.sequence.length]),(ue+10)%50!=0&&H.push(V)):V.push([ue,ue+10]),(ue+10)%50==0&&(H.push(V),V=[]);for(var R={subunitIndex:k,subunits:[],subsections:H,subgroups:V},r=0,z=ie.sequence&&ie.sequence.length||0;r0),d.xp6(1),d.Q6J("ngIf",!Xe.disulfideArray||0===Xe.disulfideArray.length)}}function ge(Ge,ct){if(1&Ge){var Xe=d.EpF();d.TgZ(0,"div",28),d.TgZ(1,"mat-form-field",29),d.TgZ(2,"mat-label"),d._uU(3,"Select link type to add"),d.qZA(),d.TgZ(4,"mat-select",30),d.NdJ("valueChange",function(vt){return d.CHM(Xe),d.oxw().switchType(vt)}),d.TgZ(5,"mat-option",31),d.TgZ(6,"span"),d._uU(7,"Other Link"),d.qZA(),d.qZA(),d.TgZ(8,"mat-option",32),d.TgZ(9,"span"),d._uU(10,"C-Glycosylation Sites"),d.qZA(),d.qZA(),d.TgZ(11,"mat-option",33),d.TgZ(12,"span"),d._uU(13,"N-Glycosylation Sites"),d.qZA(),d.qZA(),d.TgZ(14,"mat-option",34),d.TgZ(15,"span"),d._uU(16,"O-Glycosylation Sites"),d.qZA(),d.qZA(),d.TgZ(17,"mat-option",35),d.TgZ(18,"span"),d._uU(19,"Disulfide Link"),d.qZA(),d.qZA(),d.TgZ(20,"mat-option",36),d.TgZ(21,"span"),d._uU(22,"Structural Modification"),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.qZA()}}function _t(Ge,ct){1&Ge&&(d.TgZ(0,"div",37),d._uU(1," Key: "),d._UZ(2,"br"),d.TgZ(3,"div",38),d.TgZ(4,"div",39),d._UZ(5,"div",40),d._uU(6,"C-Glycosylation"),d.qZA(),d.TgZ(7,"div",39),d._UZ(8,"div",41),d._uU(9,"Other Link"),d.qZA(),d.qZA(),d.TgZ(10,"div",38),d.TgZ(11,"div",39),d._UZ(12,"div",42),d._uU(13,"O-Glycosylation"),d.qZA(),d.TgZ(14,"div",39),d._UZ(15,"div",43),d._uU(16,"Modification"),d.qZA(),d.qZA(),d.TgZ(17,"div",38),d.TgZ(18,"div",39),d._UZ(19,"div",44),d._uU(20,"N-Glycosylation"),d.qZA(),d.TgZ(21,"div",39),d._UZ(22,"div",45),d._uU(23,"Disulfide Link"),d.qZA(),d.qZA(),d.TgZ(24,"div",38),d.TgZ(25,"div",39),d._UZ(26,"div",46),d._uU(27,"Feature"),d.qZA(),d.TgZ(28,"div",39),d._UZ(29,"div",47),d._uU(30,"currently selected"),d.qZA(),d.qZA(),d.qZA())}function wt(Ge,ct){if(1&Ge){var Xe=d.EpF();d.TgZ(0,"span",58),d.TgZ(1,"a",59),d.NdJ("click",function(bt){var Pt=d.CHM(Xe).$implicit,ut=d.oxw(3).$implicit;return d.oxw(2).toggleSite(ut.subunitIndex,Pt.unitIndex,Pt.unitValue,bt)}),d._uU(2),d.qZA(),d.qZA()}if(2&Ge){var Te=ct.$implicit,vt=d.oxw().last,qe=d.oxw().last,je=d.oxw().$implicit,Nt=d.oxw(2);d.Q6J("ngClass",qe&&vt?"last-units":""),d.xp6(1),d.s9C("matTooltip",Nt.getTooltipMessage(je.subunitIndex,Te.unitIndex,Te.unitValue,Te.class||"").join("\n")),d.Q6J("id",je.subunitIndex+"_"+Te.unitIndex)("ngClass",Te.class)("@errorFlash",void 0),d.xp6(1),d.Oqu(Te.unitValue)}}function qt(Ge,ct){if(1&Ge&&(d.TgZ(0,"div",54),d.TgZ(1,"div",55),d._uU(2),d.qZA(),d.TgZ(3,"div",56),d.YNc(4,wt,3,6,"span",57),d.qZA(),d.qZA()),2&Ge){var Xe=ct.$implicit,Te=ct.last,vt=d.oxw().last,qe=d.oxw().$implicit;d.Q6J("ngClass",vt&&Te?"last-section":""),d.xp6(2),d.Oqu(Xe[1]),d.xp6(2),d.Q6J("ngForOf",qe.subunits.slice(Xe[0],Xe[1]))}}function Lt(Ge,ct){if(1&Ge&&(d.TgZ(0,"div",52),d.YNc(1,qt,5,3,"div",53),d.qZA()),2&Ge){var Xe=ct.$implicit;d.xp6(1),d.Q6J("ngForOf",Xe)}}function Rt(Ge,ct){if(1&Ge&&(d.TgZ(0,"div",49),d.TgZ(1,"h4"),d._uU(2),d.qZA(),d.TgZ(3,"div",50),d.YNc(4,Lt,2,1,"div",51),d.qZA(),d.qZA()),2&Ge){var Xe=ct.$implicit;d.xp6(2),d.hij("Subunit ",Xe.subunitIndex,""),d.xp6(2),d.Q6J("ngForOf",Xe.subsections)}}function it(Ge,ct){if(1&Ge&&(d.TgZ(0,"span"),d.YNc(1,Rt,5,2,"div",48),d.qZA()),2&Ge){var Xe=d.oxw();d.xp6(1),d.Q6J("ngForOf",Xe.subunitSequences)}}function Qe(Ge,ct){if(1&Ge&&(d.TgZ(0,"div"),d._uU(1," Total sequence length of "),d.TgZ(2,"b"),d._uU(3),d.qZA(),d._uU(4," is too long to display. Please enter sites manually "),d.qZA()),2&Ge){var Xe=d.oxw();d.xp6(3),d.Oqu(Xe.siteTotal)}}var ot=function(){var Ge=function(){function ct(Xe,Te,vt,qe,je){(0,P.Z)(this,ct),this.substanceFormService=Xe,this.substanceFormLinksService=Te,this.gaService=vt,this.cvService=qe,this.render=je,this.sitesUpdate=new d.vpe,this.featureUpdate=new d.vpe,this.disulfidesUpdate=new d.vpe,this.cardTypeUpdate=new d.vpe,this.privateFeature={name:"",siteRange:""},this.sites=[],this.allSites=[],this.vocabulary={},this.subscriptions=[],this.newFeature=[],this.subunitSequences=[],this.currentState="initial",this.newFeatureArray=[],this.valid=!0,this.disulfideArray=[],this.showStyle=!0}return(0,t.Z)(ct,[{key:"feature",get:function(){return this.privateFeature},set:function(Te){this.privateFeature=Te}},{key:"ngOnInit",value:function(){var Te=this;this.substanceFormService.definition.subscribe(function(qe){Te.substanceType=qe.substanceClass}).unsubscribe(),this.getVocabularies(),this.link&&this.link.length>0?(this.sites=this.link,this.allSites=[],this.updateDisplay(),this.sitesUpdate.emit(this.sites)):this.link=[],this.feature&&this.convertFeature(),this.selectState="first",this.startingCard=this.card}},{key:"ngAfterViewInit",value:function(){var Te=this;this.siteTotal=0,this.link.length&&0!==this.link.length?1===this.link.length?this.selectState="last":2===this.link.length&&(this.selectState="finished"):this.selectState="first",setTimeout(function(){var vt=Te.substanceFormService.subunitDisplaySequences.subscribe(function(Ft){Te.subunitSequences=Ft,Te.subunitSequences.forEach(function(bt){Te.siteTotal=Te.siteTotal+bt.subunits.length,"disulfide"===Te.card&&bt.subunits.forEach(function(St){St.class="C"!==St.unitValue?"unavailable":"cys"}),Te.showStyle=!(Te.siteTotal>5e3)}),Te.feature&&Te.convertFeature()});Te.subscriptions.push(vt);var qe=Te.substanceFormService.allSites.subscribe(function(Ft){Te.allSites=Te.allSites.concat(Ft)});if(Te.subscriptions.push(qe),"link"===Te.card){var je=Te.substanceFormLinksService.substanceLinks.subscribe(function(Ft){Ft.forEach(function(bt){bt.sites&&bt.sites.forEach(function(St){Te.allSites.push({residue:St.residueIndex,subunit:St.subunitIndex,type:"other"})})})});Te.subscriptions.push(je)}else if("sugar"===Te.card){var Nt=Te.substanceFormService.substanceSugars.subscribe(function(Ft){Ft.forEach(function(bt){bt.sites&&bt.sites.forEach(function(St){Te.allSites.push({residue:St.residueIndex,subunit:St.subunitIndex,type:"other"})})})});Te.subscriptions.push(Nt)}setTimeout(function(){Te.addStyle()},100)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Te){Te.unsubscribe()})}},{key:"emitUpdate",value:function(Te){this.privateFeature||(this.privateFeature={name:this.featureName,siteRange:""}),this.featureUpdate.emit(this.privateFeature),this.privateFeature.name=this.featureName}},{key:"getVocabularies",value:function(){var Te=this;this.cvService.getDomainVocabulary("AMINO_ACID_RESIDUE").subscribe(function(vt){Te.vocabulary=vt.AMINO_ACID_RESIDUE.dictionary},function(vt){})}},{key:"switchType",value:function(Te){var vt=Te;this.card=vt,this.sites=[],this.features=[],this.sitesDisplay="",this.selectState="first",this.cardTypeUpdate.emit(vt),this.addStyle()}},{key:"getTooltipMessage",value:function(Te,vt,qe,je){var Nt=void 0===this.vocabulary[qe]?"UNDEFINED":this.vocabulary[qe].display,Ft=[],bt={modification:"Structural Modification",other:"Other Link","C-Glycosylation":"C-Glycosylation","N-Glycosylation":"N-Glycosylation","O-Glycosylation":"O-Glycosylation",feature:this.substanceType.toUpperCase()+" Feature",disulfide:"Disulfide Link"};return Ft.push("".concat(Te," - ").concat(vt,": ").concat(qe.toUpperCase()," (").concat(Nt,")")),je.split(" ").forEach(function(Pt){Ft.push(bt[Pt]||"")}),Ft}},{key:"updateDisplay",value:function(){this.sites=this.sites.sort(function(Te,vt){return Te.subUnitIndex>vt.subunitIndex?1:Te.subunitIndexvt.residueIndex?1:Te.residueIndex0?(this.sites[0]=vt[0]?vt[0]:{},this.sites[1]=vt[1]?vt[1]:{},this.valid=!0,this.sitesDisplay=Te,this.addStyle()):this.valid=!1:(this.sites=vt,this.addStyle(),this.sitesUpdate.emit(this.sites))),this.valid=!0,this.sitesDisplay=Te}catch(qe){console.log(qe),this.valid=!1}}},{key:"removeFeature",value:function(){this.newFeature[1]?(this.addFeature(this.newFeature,!0),this.addStyle(),this.selectState="first"):this.newFeature[0]&&(this.subunitSequences[this.newFeature[0].subunitIndex-1].subunits[this.newFeature[0].residueIndex-1].class=""),this.newFeature=[]}},{key:"addFeature",value:function(Te,vt){if(Te[0].subunitIndex===Te[1].subunitIndex){var qe=Te[0].subunitIndex,je=Te[0].residueIndex,Nt=Te[1].residueIndex;Te[0].residueIndex>Te[1].residueIndex&&(je=Te[1].residueIndex,Nt=Te[0].residueIndex);for(var Ft=je;Ft<=Nt;Ft++)this.subunitSequences[qe-1].subunits[Ft-1].class=vt?"":"chosen"}}},{key:"deleteFeature",value:function(Te){for(var vt=Te[0].residueIndex;vt<=Te[1].residueIndex;vt++)this.subunitSequences[Te[0].subunitIndex-1].subunits[vt-1].class="";this.newFeatureArray=this.newFeatureArray.filter(function(qe){return Te[0]!==qe[0]&&Te[1]!==qe[1]})}},{key:"pushFeature",value:function(){2===this.newFeature.length&&(this.newFeatureArray.push(this.newFeature),this.newFeature=[],this.selectState="first")}},{key:"drawFeature",value:function(Te){for(var vt=Te.siteRange.split("-"),qe=Number(vt[0].split("_")[1]),je=Number(vt[1].split("_")[1]),Nt=Number(vt[0].split("_")[0]),Ft=qe;Ft<=je;Ft++)this.subunitSequences[Nt-1].subunits[Ft-1].class="feature"}},{key:"toggleFeatureSite",value:function(Te,vt,qe,je){var Nt={subunitIndex:Te,residueIndex:vt};if("first"===this.selectState)this.newFeature[0]=Nt,this.render.addClass(je.target,"chosen"),this.selectState="last";else if("last"===this.selectState)if(this.newFeature[0].subunitIndex===Nt.subunitIndex&&this.newFeature[0].residueIndex===Nt.residueIndex)this.selectState="first",this.render.removeClass(je.target,"chosen");else{this.newFeature[1]=Nt,this.addFeature(this.newFeature),this.selectState="finished";var Ft="";this.newFeatureArray.forEach(function(St){Ft=Ft+(St[0].subunitIndex+"_")+St[0].residueIndex+"-"+St[1].subunitIndex+"_"+St[1].residueIndex+";"}),this.privateFeature={name:this.featureName||"",siteRange:Ft=Ft+(this.newFeature[0].subunitIndex+"_")+this.newFeature[0].residueIndex+"-"+this.newFeature[1].subunitIndex+"_"+this.newFeature[1].residueIndex},this.featureUpdate.emit(this.privateFeature)}else if("finished"===this.selectState){this.pushFeature(),this.newFeature[0]=Nt,this.render.addClass(je.target,"chosen"),this.selectState="last";var bt="";this.newFeatureArray.forEach(function(St){bt=bt+(St[0].subunitIndex+"_")+St[0].residueIndex+"-"+St[1].subunitIndex+"_"+St[1].residueIndex}),this.privateFeature={name:this.featureName||"",siteRange:bt},this.featureUpdate.emit(this.privateFeature)}}},{key:"convertFeature",value:function(){var Te=this;this.newFeatureArray=[],this.feature.siteRange.split(";").forEach(function(qe){var je=qe.split("-"),Nt=Number(je[0].split("_")[1]),Ft=Number(je[1].split("_")[1]),bt=Number(je[0].split("_")[0]),St=[{subunitIndex:bt,residueIndex:Nt},{subunitIndex:bt,residueIndex:Ft}];Te.newFeatureArray.push(St),Te.addFeature(St)}),this.newFeature=[],this.featureName=this.feature.name,this.selectState="first"}}]),ct}();return Ge.\u0275fac=function(Xe){return new(Xe||Ge)(d.Y36(f.B),d.Y36(v.e),d.Y36(T.$),d.Y36(B.I),d.Y36(d.Qsj))},Ge.\u0275cmp=d.Xpm({type:Ge,selectors:[["app-subunit-selector"]],inputs:{card:"card",link:"link",feature:"feature"},outputs:{sitesUpdate:"sitesUpdate",featureUpdate:"featureUpdate",disulfidesUpdate:"disulfidesUpdate",cardTypeUpdate:"cardTypeUpdate"},decls:10,vars:7,consts:[[1,"form-header"],[1,"form-input"],[4,"ngIf"],["class","card-selector",4,"ngIf"],["class","key-row",4,"ngIf"],["class","disulfide-form",3,"ngClass",4,"ngIf"],[1,"sites-input",3,"ngModel","ngClass","ngModelChange"],[1,"disulfide-form",3,"ngClass"],[1,"sites-input","disulfide-display",3,"ngModel","ngModelChange"],[1,"clear-button"],["mat-icon-button","","matTooltip","Clear Selection",3,"click"],["svgIcon","clear"],[1,"cysteine-message"],[1,"form-row-feature"],[1,"name-type","mat-form-field"],["matInput","","placeholder","Name","name","name",1,"sites-input",3,"ngModel","ngModelChange","change"],[1,"key-value-pair"],[1,"key"],[1,"value"],["class","link-cont",4,"ngFor","ngForOf"],[1,"bold"],["mat-icon-button","","matTooltip","Clear Current Selection",3,"click"],[1,"form-row-2"],[1,"feature-step"],[1,"link-cont"],["matTooltip","Delete sequence section",1,"featlink",3,"click"],["class","note",4,"ngIf"],[1,"note"],[1,"card-selector"],[1,"top-padding"],["name","food",3,"valueChange"],["value","other","disabled",""],["value","CGlycosylation"],["value","NGlycosylation"],["value","OGlycosylation"],["value","disulfide"],["value","modification","disabled",""],[1,"key-row"],[1,"key-container"],[1,"key-label"],[1,"C-Glycosylation","key-color"],[1,"other","key-color"],[1,"O-Glycosylation","key-color"],[1,"modification","key-color"],[1,"N-Glycosylation","key-color"],[1,"disulfide","key-color"],[1,"feature","key-color"],[1,"chosen","key-color"],["class","subunit-sequence",4,"ngFor","ngForOf"],[1,"subunit-sequence"],[1,"responsive"],["class","sequence-section-group",4,"ngFor","ngForOf"],[1,"sequence-section-group"],["class","sequence-section",3,"ngClass",4,"ngFor","ngForOf"],[1,"sequence-section",3,"ngClass"],[1,"section-number"],[1,"section-units-container"],["class","section-unit",3,"ngClass",4,"ngFor","ngForOf"],[1,"section-unit",3,"ngClass"],["matTooltipClass","unit-tooltip",1,"selectedSite","siteref",3,"id","ngClass","matTooltip","click"]],template:function(Xe,Te){1&Xe&&(d.TgZ(0,"div",0),d.TgZ(1,"div",1),d.YNc(2,ie,4,2,"div",2),d.YNc(3,se,23,8,"div",2),d.YNc(4,Ee,10,5,"div",2),d.YNc(5,ge,23,0,"div",3),d.qZA(),d.YNc(6,_t,31,0,"div",4),d.qZA(),d.TgZ(7,"mat-dialog-content"),d.YNc(8,it,2,1,"span",2),d.YNc(9,Qe,5,1,"div",2),d.qZA()),2&Xe&&(d.xp6(2),d.Q6J("ngIf","feature"!==Te.card&&"multi-disulfide"!==Te.card),d.xp6(1),d.Q6J("ngIf","feature"==Te.card),d.xp6(1),d.Q6J("ngIf","multi-disulfide"===Te.card),d.xp6(1),d.Q6J("ngIf","any"===Te.startingCard),d.xp6(1),d.Q6J("ngIf","protein"===Te.substanceType),d.xp6(2),d.Q6J("ngIf",Te.showStyle),d.xp6(1),d.Q6J("ngIf",!Te.showStyle))},directives:[s.O5,j.Fj,j.JJ,j.On,s.mk,Q.lW,J.gM,Z.Hw,A.KE,A.hX,N.Nt,s.sg,E.gD,k.ey,e.xY],styles:[".details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:block;box-sizing:border-box}.form-fields[_ngcontent-%COMP%]{position:-webkit-sticky;position:sticky;top:0px}.sites-input[_ngcontent-%COMP%]{width:70%}.show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.top-padding[_ngcontent-%COMP%]{padding-top:10px}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block;box-sizing:border-box}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;padding:0 10px;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.filters-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.subunit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-header[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-header[_ngcontent-%COMP%] .form-input[_ngcontent-%COMP%]{width:75%}.form-header[_ngcontent-%COMP%] .key-row[_ngcontent-%COMP%]{width:25%}.key-row[_ngcontent-%COMP%]{-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:end;align-items:flex-end;width:100%}.key-row[_ngcontent-%COMP%] .key-container[_ngcontent-%COMP%]{width:250px;-ms-flex-align:end;align-items:flex-end;display:-ms-flexbox;display:flex;font-size:13px}.key-row[_ngcontent-%COMP%] .key-container[_ngcontent-%COMP%] .key-label[_ngcontent-%COMP%]{width:125px;display:-ms-flexbox;display:flex;padding-bottom:5px}.unit-tooltip[_ngcontent-%COMP%], .mat-tooltip[_ngcontent-%COMP%]{white-space:pre-line!important}.key-color[_ngcontent-%COMP%]{width:15px;height:18px;padding-right:5px}.disulfide[_ngcontent-%COMP%]{color:#fff;background-color:#cca300}.other[_ngcontent-%COMP%]{color:#fff;background-color:#483d8b}.glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#608000}.N-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#06c}.C-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:gray}.O-Glycosylation[_ngcontent-%COMP%]{color:#fff;background-color:#f66}.feature[_ngcontent-%COMP%]{border-top:1px solid magenta;border-bottom:1px solid magenta}.modification[_ngcontent-%COMP%]{color:#fff;background-color:#006400}.chosen[_ngcontent-%COMP%]{color:#000!important;background-color:#40e0d0!important}.new-disulfide[_ngcontent-%COMP%]{color:#000!important;background-color:#87cefa!important}.selectedSite[_ngcontent-%COMP%]{padding-left:1px;padding-right:1px}.feature-step[_ngcontent-%COMP%]{width:50%;font-size:15px}.feature-display[_ngcontent-%COMP%]{width:30%}.name-type[_ngcontent-%COMP%]{width:40%;padding-right:50px}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-item-align:start;align-self:flex-start;width:50%}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:#0000008a;font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif;width:55px}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15px}.key-value-pair[_ngcontent-%COMP%] .bold[_ngcontent-%COMP%]{font-weight:700}.siteref[_ngcontent-%COMP%]{display:block;width:15.5px!important;text-align:center}.featlink[_ngcontent-%COMP%]{padding-right:7px;color:#4793d1}.featlink[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{font-weight:700}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row-feature[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start}.form-row-feature[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row-feature[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row-feature[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row-feature[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row-feature[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row-feature[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.clear-button[_ngcontent-%COMP%]{width:40px}.disulfide-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start}.disulfide-display[_ngcontent-%COMP%]{width:100px}.cys[_ngcontent-%COMP%]{color:#000;font-weight:500}.unavailable[_ngcontent-%COMP%]{color:#d3d3d3!important}.invalid_blink[_ngcontent-%COMP%]{-webkit-animation:blinker .5s linear 1;animation:blinker .5s linear 1}@-webkit-keyframes blinker{50%{opacity:0}}@keyframes blinker{50%{opacity:0}}.invalid[_ngcontent-%COMP%]{border:solid red;color:red}.valid[_ngcontent-%COMP%]{color:#000}.invalid-cysteine[_ngcontent-%COMP%]{color:red}.last-section[_ngcontent-%COMP%]{-ms-flex-preferred-size:0!important;flex-basis:0!important}.note[_ngcontent-%COMP%]{padding-top:10px;padding-left:15px;font-size:14px}"],data:{animation:[(0,I.X$)("errorFlash",[(0,I.SB)("initial",(0,I.oB)({backgroundColor:"white"})),(0,I.SB)("final",(0,I.oB)({backgroundColor:"pink"})),(0,I.eR)("initial=>final",(0,I.jt)("1000ms")),(0,I.eR)("final=>initial",(0,I.jt)("500ms"))])]}}),Ge}();function tt(Ge,ct){1&Ge&&(d.TgZ(0,"h1",5),d._uU(1,"Select Sites"),d.qZA())}function xe(Ge,ct){1&Ge&&(d.TgZ(0,"h1",5),d._uU(1,"Add / Modify Feature"),d.qZA())}var $e=function(){var Ge=function(){function ct(Xe){var Te=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,P.Z)(this,ct),this.dialogRef=Xe,this.data=Te,this.warning="",Xe.disableClose=!0}return(0,t.Z)(ct,[{key:"ngOnInit",value:function(){var Te=this;this.dialogRef.backdropClick().subscribe(function(vt){"feature"===Te.data.card?Te.feature&&Te.feature.name&&""!==Te.feature.name&&Te.feature.siteRange?Te.dialogRef.close(Te.feature):Te.invalidFeatureConfirm():Te.dialogRef.close("multi-disulfide"===Te.data.card?Te.disulfides:Te.data.links)})}},{key:"invalidFeatureConfirm",value:function(){confirm("Feature is missing information and will not be saved. Close the dialog anyway?")&&this.dialogRef.close()}},{key:"ngAfterViewInit",value:function(){"feature"===this.data.card?this.backup=this.feature&&this.feature.name&&""!==this.feature.name&&this.feature.siteRange?JSON.parse(JSON.stringify(this.feature)):{}:"multi-disulfide"===this.data.card?this.backup=(0,p.cloneDeep)(this.disulfides):(Object.assign([],this.data.links),this.backup=(0,p.cloneDeep)(this.data.links))}},{key:"save",value:function(){"feature"===this.data.card?this.feature&&this.feature.name&&""!==this.feature.name?this.feature.siteRange?this.dialogRef.close(this.feature):this.warning="Select site Range(s) before saving":this.warning="Enter a feature name before saving":this.dialogRef.close("multi-disulfide"===this.data.card?this.disulfides:"any"===this.data.card?this.data:this.data.links)}},{key:"cancel",value:function(){this.dialogRef.close(this.backup)}},{key:"updateSites",value:function(Te){this.data.links=Te}},{key:"updateFeature",value:function(Te){this.feature=Te,this.data.sentFeature=Te}},{key:"updateDisulfides",value:function(Te){this.disulfides=Te}},{key:"updateCardType",value:function(Te){this.data.siteType=Te}}]),ct}();return Ge.\u0275fac=function(Xe){return new(Xe||Ge)(d.Y36(e.so),d.Y36(e.WI))},Ge.\u0275cmp=d.Xpm({type:Ge,selectors:[["app-subunit-selector-dialog"]],decls:11,vars:6,consts:[["mat-dialog-title","",4,"ngIf"],[3,"card","link","feature","disulfidesUpdate","sitesUpdate","featureUpdate","cardTypeUpdate"],[1,"actions"],["mat-button","",3,"click"],[1,"warning"],["mat-dialog-title",""]],template:function(Xe,Te){1&Xe&&(d.YNc(0,tt,2,0,"h1",0),d.YNc(1,xe,2,0,"h1",0),d.TgZ(2,"app-subunit-selector",1),d.NdJ("disulfidesUpdate",function(qe){return Te.updateDisulfides(qe)})("sitesUpdate",function(qe){return Te.updateSites(qe)})("featureUpdate",function(qe){return Te.updateFeature(qe)})("cardTypeUpdate",function(qe){return Te.updateCardType(qe)}),d.qZA(),d.TgZ(3,"mat-dialog-actions"),d.TgZ(4,"div",2),d.TgZ(5,"button",3),d.NdJ("click",function(){return Te.cancel()}),d._uU(6,"Cancel"),d.qZA(),d.TgZ(7,"button",3),d.NdJ("click",function(){return Te.save()}),d._uU(8," Save "),d.qZA(),d.qZA(),d.TgZ(9,"div",4),d._uU(10),d.qZA(),d.qZA()),2&Xe&&(d.Q6J("ngIf","feature"!==Te.data.card),d.xp6(1),d.Q6J("ngIf","feature"===Te.data.card),d.xp6(1),d.Q6J("card",Te.data.card)("link",Te.data.link)("feature",Te.data.feature?Te.data.feature:null),d.xp6(8),d.Oqu(Te.warning))},directives:[s.O5,e.uh,ot,e.H8,Q.lW],styles:[""]}),Ge}()},1427:function(dt,K,n){"use strict";n.d(K,{I:function(){return Q}});var P=n(78069),t=n(48047),e=n(76442),d=(n(27299),n(18291)),s=n(63169),h=n(33567),f=n(39401),T=n(59295),B=n(95758),I=n(66088);function v(J,Z){if(1&J){var A=e.EpF();e.TgZ(0,"div",16),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",17),e.NdJ("click",function(){return e.CHM(A),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",18),e.qZA(),e.qZA()}}function j(J,Z){if(1&J&&(e.TgZ(0,"div"),e._UZ(1,"img",19),e.qZA()),2&J){var A=e.oxw();e.xp6(1),e.Q6J("src",A.structure,e.LSH)}}var Q=function(){var J=function(){function Z(A,N,E,k,q){(0,P.Z)(this,Z),this.cvService=A,this.dialog=N,this.utilsService=E,this.overlayContainerService=k,this.substanceFormService=q,this.sugarDeleted=new e.vpe,this.structure=null,this.subscriptions=[]}return(0,t.Z)(Z,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay()}},{key:"ngAfterViewInit",value:function(){this.updateDisplay()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(N){N.unsubscribe()})}},{key:"sugar",get:function(){return this.updateDisplay(),this.privateSugar},set:function(N){this.privateSugar=N}},{key:"addRemainingSites",value:function(){this.privateSugar.sites=this.privateSugar.sites?this.privateSugar.sites.concat(this.remaining):this.remaining,this.updateDisplay(),this.substanceFormService.emitSugarUpdate()}},{key:"getStructure",value:function(){var N=this;this.smiles=this.vocabulary[this.privateSugar.sugar],this.smiles&&this.smiles.fragmentStructure?this.structure=this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure):this.cvService.getDomainVocabulary("NUCLEIC_ACID_SUGAR").pipe((0,T.q)(1)).subscribe(function(E){var q=!1;E.NUCLEIC_ACID_SUGAR.list.forEach(function(ce){ce.value===N.privateSugar.sugar&&(N.smiles=ce,q=!0,N.structure=N.cvService.getStructureUrlFragment(N.smiles.fragmentStructure))}),q||(N.structure=null)})}},{key:"updateDisplay",value:function(N){N?this.siteDisplay=this.substanceFormService.siteString(N.sites):this.privateSugar&&(this.siteDisplay=this.substanceFormService.siteString(this.privateSugar.sites))}},{key:"deleteLink",value:function(){var N=this;this.privateSugar.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){N.sugarDeleted.emit(N.sugar),N.substanceFormService.emitSugarUpdate()},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateSugar.$$deletedCode}},{key:"getVocabularies",value:function(){var N=this,E=this.cvService.getDomainVocabulary("NUCLEIC_ACID_SUGAR").subscribe(function(k){N.sugarTypes=k.NUCLEIC_ACID_SUGAR.list,N.vocabulary=k.NUCLEIC_ACID_SUGAR.dictionary,N.smiles=N.vocabulary[N.privateSugar.sugar],N.getStructure()});this.subscriptions.push(E)}},{key:"updateSugar",value:function(N){this.privateSugar.sugar=N,this.getStructure()}},{key:"openDialog",value:function(){var N=this,E=this.dialog.open(f.r,{data:{card:"sugar",link:this.privateSugar.sites},width:"1040px"});this.overlayContainer.style.zIndex="1002";var k=E.afterClosed().subscribe(function(q){N.overlayContainer.style.zIndex=null,q&&(N.privateSugar.sites=q),N.updateDisplay(),N.substanceFormService.emitSugarUpdate()});this.subscriptions.push(k)}}]),Z}();return J.\u0275fac=function(A){return new(A||J)(e.Y36(d.I),e.Y36(B.uw),e.Y36(s.FW),e.Y36(I.Xj),e.Y36(h.B))},J.\u0275cmp=e.Xpm({type:J,selectors:[["app-sugar-form"]],inputs:{remaining:"remaining",sugar:"sugar"},outputs:{sugarDeleted:"sugarDeleted"},decls:19,vars:8,consts:[[1,"sugar-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[4,"ngIf"],[1,"type"],["domain","NUCLEIC_ACID_SUGAR","title","Sugar",3,"model","valueChange"],[1,"addRemaining"],["mat-flat-button","","mat-primary","",3,"matTooltip","disabled","click"],[1,"links"],[1,"label"],["mat-icon-button","","matTooltip","Select sites from display",3,"click"],["svgIcon","edit"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"structure-image",3,"src"]],template:function(A,N){1&A&&(e.TgZ(0,"div",0),e.YNc(1,v,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return N.deleteLink()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.YNc(6,j,2,1,"div",6),e.TgZ(7,"div",7),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(k){return N.updateSugar(k)}),e.qZA(),e.qZA(),e.TgZ(9,"div",9),e.TgZ(10,"button",10),e.NdJ("click",function(){return N.addRemainingSites()}),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",11),e.TgZ(13,"div",12),e._uU(14,"Sites"),e.qZA(),e._uU(15),e.TgZ(16,"button",13),e.NdJ("click",function(){return N.openDialog()}),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.qZA(),e._UZ(18,"app-audit-info",15),e.qZA()),2&A&&(e.xp6(1),e.Q6J("ngIf",N.sugar.$$deletedCode),e.xp6(5),e.Q6J("ngIf",N.structure),e.xp6(2),e.Q6J("model",N.sugar.sugar),e.xp6(2),e.MGl("matTooltip","Add remaining ",N.remaining.length," sites"),e.Q6J("disabled",0===N.remaining.length),e.xp6(1),e.hij(" Add remaining ",N.remaining.length," sites "),e.xp6(4),e.hij(" ",N.siteDisplay," "),e.xp6(3),e.Q6J("source",N.sugar))},styles:[".sugar-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%;margin-right:5px}.form-row[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{width:40%}.form-row[_ngcontent-%COMP%] .addRemaining[_ngcontent-%COMP%]{width:20%}.selectedSite[_ngcontent-%COMP%]{padding-left:2px;padding-right:2px}.structure-image[_ngcontent-%COMP%]{margin-bottom:-20px;margin-left:-10px}"]}),J}()},15992:function(dt,K,n){"use strict";n.d(K,{C:function(){return ie}});var P=n(78069),t=n(48047),e=n(76442),p=n(42827),d=n(90587),s=n(44874),h=n(50635),f=n(75939),T=n(44250),B=n(12142),I=n(95758),v=n(66088),j=n(44770),Q=n(81196),J=n(36362),Z=n(65590),A=n(43188),N=n(1130),E=["tagInput"],k=["tagsAuto"];function q(H,V){if(1&H){var ue=e.EpF();e.TgZ(0,"mat-chip",8),e.NdJ("removed",function(){var se=e.CHM(ue).$implicit;return e.oxw().remove(se)}),e._uU(1),e._UZ(2,"mat-icon",9),e.qZA()}if(2&H){var R=V.$implicit,r=e.oxw();e.xp6(1),e.hij(" ",r.optionsDictionary[R]&&r.optionsDictionary[R].display||R," ")}}function ce(H,V){if(1&H&&(e.TgZ(0,"mat-option",10),e._uU(1),e.qZA()),2&H){var ue=V.$implicit;e.Q6J("value",ue.value),e.xp6(1),e.hij(" ",ue.display," ")}}var ie=function(){var H=function(){function V(ue,R,r,z){(0,P.Z)(this,V),this.cvService=ue,this.dialog=R,this.overlayContainerService=r,this.authService=z,this.tagsUpdate=new e.vpe,this.placeholder="Tags",this.privateTags=[],this.tagControl=new d.NI,this.separatorKeysCodes=[f.K5,f.OC],this.optionsDictionary={}}return(0,t.Z)(V,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement(),this.isAdmin=this.authService.hasRoles("admin")}},{key:"ngAfterViewInit",value:function(){var R=this;setTimeout(function(){R.cvService.getDomainVocabulary(R.cvDomain).subscribe(function(r){R.allOptions=r[R.cvDomain].list,R.cvOptions=r[R.cvDomain].list;var z=!1;R.allOptions.forEach(function(se){"other"===se.display.toLowerCase()&&(z=!0)}),!1===z&&R.allOptions.push({display:"Other",value:"Other",filter:" = ",selected:!1}),R.optionsDictionary=r[R.cvDomain].dictionary,R.filteredOptions=R.tagControl.valueChanges.pipe((0,s.O)(null),(0,h.U)(function(se){return se?R._filter(se):R.allOptions.filter(function(X){return-1===R.privateTags.indexOf(X.value)})}))})})}},{key:"tags",get:function(){return this.privateTags},set:function(R){this.privateTags=R||[]}},{key:"clearTagsInput",value:function(){var R=this;setTimeout(function(){R.tagInput.nativeElement.value="",R.matAutocomplete.isOpen||R.tagControl.setValue(null)})}},{key:"remove",value:function(R){var r=this.privateTags.indexOf(R);r>-1&&this.privateTags.splice(r,1),this.tagsUpdate.emit(this.privateTags)}},{key:"selected",value:function(R){this.privateTags.push(R.option.value),this.tagsUpdate.emit(this.privateTags),this.clearTagsInput()}},{key:"inCV",value:function(R,r){return!R||R.some(function(z){return r===z.value})}},{key:"tagAdded",value:function(R){var r=this;if((R.value||"").trim()){var z=R.value.trim();this.privateTags.push(z),this.tagsUpdate.emit(this.privateTags),this.isAdmin&&!this.inCV(this.allOptions,z)&&!this.disableCV&&confirm("Add new option to the CV?")&&this.cvService.fetchFullVocabulary(this.cvDomain).subscribe(function(se){se.content&&se.content.length>0&&r.openDialog(se.content[0],z)}),this.clearTagsInput()}R.input&&(R.input.value="")}},{key:"_filter",value:function(R){var r=this,z=R.toLowerCase();return this.allOptions.filter(function(Y){return-1===r.privateTags.indexOf(Y.value)&&Y.display.toLowerCase().indexOf(z)>-1})}},{key:"openDialog",value:function(R,r){var z=this,Y=this.dialog.open(B.i,{data:{vocabulary:R,term:r},width:"1040px"});this.overlayContainer.style.zIndex="1002",Y.afterClosed().subscribe(function(X){z.overlayContainer.style.zIndex=null})}}]),V}();return H.\u0275fac=function(ue){return new(ue||H)(e.Y36(p.I),e.Y36(I.uw),e.Y36(v.Xj),e.Y36(T.e))},H.\u0275cmp=e.Xpm({type:H,selectors:[["app-tag-selector"]],viewQuery:function(ue,R){var r;1&ue&&(e.Gf(E,7),e.Gf(k,7)),2&ue&&(e.iGM(r=e.CRH())&&(R.tagInput=r.first),e.iGM(r=e.CRH())&&(R.matAutocomplete=r.first))},inputs:{cvDomain:"cvDomain",placeholder:"placeholder",disableCV:"disableCV",tags:"tags"},outputs:{tagsUpdate:"tagsUpdate"},decls:12,vars:10,consts:[["chipList",""],["removable","true",3,"removed",4,"ngFor","ngForOf"],["matChipInputAddOnBlur","false",3,"placeholder","formControl","matAutocomplete","matChipInputFor","matChipInputSeparatorKeyCodes","matChipInputTokenEnd","blur"],["tagInput",""],[3,"optionSelected","closed"],["tagsAuto","matAutocomplete"],[3,"value",4,"ngFor","ngForOf"],["disabled","true",3,"value"],["removable","true",3,"removed"],["matChipRemove","","svgIcon","cancel"],[3,"value"]],template:function(ue,R){if(1&ue&&(e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-chip-list",null,0),e.YNc(3,q,3,1,"mat-chip",1),e.TgZ(4,"input",2,3),e.NdJ("matChipInputTokenEnd",function(se){return R.tagAdded(se)})("blur",function(){return R.clearTagsInput()}),e.qZA(),e.qZA(),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(se){return R.selected(se)})("closed",function(){return R.clearTagsInput()}),e.YNc(8,ce,2,2,"mat-option",6),e.ALo(9,"async"),e.TgZ(10,"mat-option",7),e._uU(11," Press enter to add custom value "),e.qZA(),e.qZA(),e.qZA()),2&ue){var r=e.MAs(2),z=e.MAs(7);e.xp6(3),e.Q6J("ngForOf",R.tags),e.xp6(1),e.Q6J("placeholder",R.placeholder)("formControl",R.tagControl)("matAutocomplete",z)("matChipInputFor",r)("matChipInputSeparatorKeyCodes",R.separatorKeysCodes),e.xp6(4),e.Q6J("ngForOf",e.lcZ(9,8,R.filteredOptions)),e.xp6(2),e.Q6J("value",null)}},directives:[j.KE,Q.qn,J.sg,Q.HS,Z.Hw,Q.qH,d.Fj,A.ZL,Q.oH,d.JJ,d.oH,A.XC,N.ey],pipes:[J.Ov],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%}"]}),H}()},24459:function(dt,K,n){"use strict";n.d(K,{Q:function(){return ce}});var P=n(78069),t=n(48047),e=n(76442),p=n(12570),d=n(53141),s=n(43785),h=n(36362),f=n(87317),T=n(40089),B=n(65590),I=n(98002),v=n(9292),j=function(H){return{hidden:H}};function Q(ie,H){if(1&ie){var V=e.EpF();e.TgZ(0,"div",5),e.TgZ(1,"button",6),e.NdJ("click",function(){return e.CHM(V),e.oxw().revertEdit()}),e._UZ(2,"mat-icon",7),e.qZA(),e.qZA()}if(2&ie){var ue=e.oxw();e.xp6(2),e.Q6J("ngClass",e.VKq(1,j,ue.selectedSubstance))}}var J=function(H){return["/substances",H]};function Z(ie,H){if(1&ie&&(e.TgZ(0,"a",18),e._UZ(1,"mat-icon",19),e.qZA()),2&ie){var V=e.oxw(3);e.Q6J("routerLink",e.VKq(1,J,V.selectedSubstance.uuid))}}function A(ie,H){if(1&ie){var V=e.EpF();e.TgZ(0,"div",12),e.TgZ(1,"button",13),e.NdJ("click",function(){return e.CHM(V),e.oxw(2).editSelectedSubstance()}),e._UZ(2,"mat-icon",14),e.qZA(),e.YNc(3,Z,2,3,"a",15),e.TgZ(4,"button",16),e.NdJ("click",function(){return e.CHM(V),e.oxw(2).delete()}),e._UZ(5,"mat-icon",17),e.qZA(),e.qZA()}if(2&ie){var ue=e.oxw(2);e.xp6(3),e.Q6J("ngIf",ue.selectedSubstance.uuid)}}function N(ie,H){if(1&ie&&e._UZ(0,"img",20),2&ie){var V=e.oxw(2);e.Q6J("entityId",V.selectedSubstance.uuid)}}function E(ie,H){1&ie&&(e.TgZ(0,"span",21),e._UZ(1,"br"),e._uU(2,"NOT IN DATABASE"),e.qZA())}function k(ie,H){if(1&ie){var V=e.EpF();e.TgZ(0,"div",8),e.NdJ("mouseenter",function(){return e.CHM(V),e.oxw().showOptions=!0})("mouseleave",function(){return e.CHM(V),e.oxw().showOptions=!1}),e.YNc(1,A,6,1,"div",9),e.TgZ(2,"div",10),e._uU(3),e.qZA(),e.YNc(4,N,1,1,"img",11),e.TgZ(5,"div"),e._uU(6),e.YNc(7,E,3,0,"span",4),e.qZA(),e.qZA()}if(2&ie){var ue=e.oxw();e.xp6(1),e.Q6J("ngIf",ue.showOptions),e.xp6(2),e.Oqu(ue.header),e.xp6(1),e.Q6J("ngIf",ue.selectedSubstance.uuid&&!ue.hideImage),e.xp6(2),e.hij(" ",ue.selectedSubstance._name," "),e.xp6(1),e.Q6J("ngIf","Not in database"===ue.errorMessage)}}function q(ie,H){1&ie&&(e.TgZ(0,"span",21),e._UZ(1,"br"),e._uU(2,"NO SUBSTANCES FOUND"),e.qZA())}var ce=function(){var ie=function(){function H(V,ue){(0,P.Z)(this,H),this.substanceService=V,this.configService=ue,this.selectionUpdated=new e.vpe,this.placeholder="Search",this.hintMessage="",this.header="Substance",this.substanceSelectorProperties=null}return(0,t.Z)(H,[{key:"ngOnInit",value:function(){this.hideImage||(this.hideImage=!1),null!=this.configService.configData.substanceSelectorProperties?this.substanceSelectorProperties=this.configService.configData.substanceSelectorProperties:console.log("The config value for substanceSelectorProperties is null.")}},{key:"subuuid",set:function(ue){var R=this;ue&&this.substanceService.getSubstanceSummary(ue).subscribe(function(r){R.selectedSubstance=r},function(r){R.selectedSubstance=R.name&&""!==R.name?{_name:R.name}:{_name:""},R.errorMessage="Not in database"})}},{key:"processSubstanceSearch",value:function(){var ue=this,R=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",r=R.replace('"',""),z=this.substanceSelectorProperties.map(function(Y){return"".concat(Y,':"^').concat(r,'$"')}).join(" OR ");this.substanceService.getQuickSubstancesSummaries(z,!0).subscribe(function(Y){Y.content&&Y.content.length?(ue.selectedSubstance=Y.content[0],ue.selectionUpdated.emit(ue.selectedSubstance),ue.errorMessage=""):ue.errorMessage="No substances found"})}},{key:"editSelectedSubstance",value:function(){this.previousSubstance=JSON.parse(JSON.stringify(this.selectedSubstance)),this.selectedSubstance=null,this.selectionUpdated.emit(this.selectedSubstance)}},{key:"revertEdit",value:function(){this.selectedSubstance=JSON.parse(JSON.stringify(this.previousSubstance)),this.selectionUpdated.emit(this.selectedSubstance)}},{key:"delete",value:function(){this.selectedSubstance=null,this.selectionUpdated.emit(null)}}]),H}();return ie.\u0275fac=function(V){return new(V||ie)(e.Y36(p.d),e.Y36(d.E))},ie.\u0275cmp=e.Xpm({type:ie,selectors:[["app-substance-selector"]],inputs:{eventCategory:"eventCategory",placeholder:"placeholder",hintMessage:"hintMessage",header:"header",name:"name",hideImage:"hideImage",subuuid:"subuuid"},outputs:{selectionUpdated:"selectionUpdated"},decls:5,vars:8,consts:[[1,"substance-selector-container"],["source","form-search",3,"ngClass","eventCategory","placeholder","searchPerformed"],["class","undo",4,"ngIf"],["class","selected-substance",3,"mouseenter","mouseleave",4,"ngIf"],["class","code",4,"ngIf"],[1,"undo"],["mat-icon-button","","matTooltip","revert to previously selected",1,"undo",3,"click"],["aria-label","Revert substance edit","svgIcon","undo",3,"ngClass"],[1,"selected-substance",3,"mouseenter","mouseleave"],["class","selected-substance-options",4,"ngIf"],[1,"section-header"],["class","related-image","appSubstanceImage","",3,"entityId",4,"ngIf"],[1,"selected-substance-options"],["mat-mini-fab","",3,"click"],["aria-label","Edit Selected Substance","svgIcon","edit","matTooltip","change selection"],["mat-mini-fab","","target","_blank",3,"routerLink",4,"ngIf"],["mat-mini-fab","","matTooltip","delete",1,"undo",3,"click"],["aria-label","delete selection","svgIcon","cancel"],["mat-mini-fab","","target","_blank",3,"routerLink"],["aria-label","Open in new tab","svgIcon","open_in_new","matTooltip","view details in a new tab"],["appSubstanceImage","",1,"related-image",3,"entityId"],[1,"code"]],template:function(V,ue){1&V&&(e.TgZ(0,"div",0),e.TgZ(1,"app-substance-text-search",1),e.NdJ("searchPerformed",function(r){return ue.processSubstanceSearch(r)}),e.qZA(),e.YNc(2,Q,3,3,"div",2),e.YNc(3,k,8,5,"div",3),e.YNc(4,q,3,0,"span",4),e.qZA()),2&V&&(e.xp6(1),e.Q6J("ngClass",e.VKq(6,j,ue.selectedSubstance))("eventCategory",ue.eventCategory)("placeholder",ue.placeholder),e.xp6(1),e.Q6J("ngIf",ue.previousSubstance),e.xp6(1),e.Q6J("ngIf",ue.selectedSubstance),e.xp6(1),e.Q6J("ngIf","No substances found"===ue.errorMessage))},directives:[s.e,h.mk,h.O5,f.lW,T.gM,B.Hw,f.zs,I.yS,v.m],styles:[".selected-substance-container[_ngcontent-%COMP%]{max-width:100%;width:100%}.selected-substance[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:center;position:relative}.selected-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block;max-width:200px}.undo[_ngcontent-%COMP%]{float:right;margin-top:-5px}.selected-substance-options[_ngcontent-%COMP%]{position:absolute;right:5px;top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]{background-color:#f2f2f2d9;color:#404040;width:35px;height:35px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0}.hidden[_ngcontent-%COMP%]{display:none!important}"]}),ie}()},63200:function(dt,K,n){"use strict";n.d(K,{U:function(){return I}});var P=n(48047),t=n(78069),e=n(36362),p=n(84844),d=n(65590),s=n(87317),h=n(98002),f=n(24054),T=n(40089),B=n(76442),I=function(){var v=(0,P.Z)(function j(){(0,t.Z)(this,j)});return v.\u0275fac=function(Q){return new(Q||v)},v.\u0275mod=B.oAB({type:v}),v.\u0275inj=B.cJS({imports:[[e.ez,p.d,d.Ps,s.ot,T.AV,h.Bz,f.f]]}),v}()},89965:function(dt,K,n){"use strict";n.r(K),n.d(K,{SubstanceSsg4mProcessModule:function(){return Wn}});var P=n(48047),t=n(78069),e=n(36362),p=n(64061),d=n(7168),s=n(19975),h=n(65590),f=n(87317),T=n(40089),B=n(70178),I=n(94673),v=n(44770),j=n(90587),Q=n(26439),J=n(43365),Z=n(61534),A=n(12379),N=n(36730),E=n(9597),k=n(24582),q=n(7318),ce=n(24874),ie=n(79550),H=n(33567),V=n(4089),ue=n(20265),R=n(34929),r=n(76442),z=n(68785),Y=function(st){(0,k.Z)(ze,st);var $t=(0,q.Z)(ze);function ze(Se){var ae;return(0,t.Z)(this,ze),(ae=$t.call(this,Se)).substanceFormService=Se,ae}return(0,P.Z)(ze,[{key:"initSubtanceForm",value:function(){var ae=this;(0,V.Z)((0,ue.Z)(ze.prototype),"initSubtanceForm",this).call(this);var de=this.substanceFormService.substance.subscribe(function(ye){ae.substance=ye,ae.substance.specifiedSubstanceG4m||(ae.substance.specifiedSubstanceG4m={}),ae.substance.specifiedSubstanceG4m.process||(ae.substance.specifiedSubstanceG4m.process=[{sites:[]}]),ae.substance.specifiedSubstanceG4m.process||(ae.substance.specifiedSubstanceG4m.process=[{sites:[]}]),ae.substanceFormService.resetState(),ae.propertyEmitter.next(ae.substance.specifiedSubstanceG4m.process)});this.subscriptions.push(de)}},{key:"specifiedSubstanceG4mSite",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSite",value:function(ae){this.substance.specifiedSubstanceG4m.process[ae].sites.push({siteName:"",stages:[]}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[ae].sites)}},{key:"deleteSite",value:function(ae){}}]),ze}(z.E);Y.\u0275fac=function($t){return new($t||Y)(r.LFG(H.B))},Y.\u0275prov=r.Yz7({token:Y,factory:Y.\u0275fac,providedIn:"root"}),Y=(0,R.gn)([(0,r.GSi)(),(0,R.w6)("design:paramtypes",[H.B])],Y);var se=function(st){(0,k.Z)(ze,st);var $t=(0,q.Z)(ze);function ze(Se,ae){var de;return(0,t.Z)(this,ze),(de=$t.call(this,Se)).substanceFormService=Se,de.substanceFormSsg4mSitesService=ae,de}return(0,P.Z)(ze,[{key:"initSubtanceForm",value:function(){var ae=this;(0,V.Z)((0,ue.Z)(ze.prototype),"initSubtanceForm",this).call(this);var de=this.substanceFormService.substance.subscribe(function(ye){ae.substance=ye,ae.substance.specifiedSubstanceG4m||(ae.substance.specifiedSubstanceG4m={}),ae.substance.specifiedSubstanceG4m.process||(ae.substance.specifiedSubstanceG4m.process=[]),ae.substanceFormService.resetState(),ae.propertyEmitter.next(ae.substance.specifiedSubstanceG4m.process)});this.subscriptions.push(de)}},{key:"specifiedSubstanceG4mProcess",get:function(){return this.propertyEmitter.asObservable()}},{key:"addProcess",value:function(){var de=this.substance.specifiedSubstanceG4m.process.push({processName:"Process ",sites:[]});this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process),this.substanceFormSsg4mSitesService.addSite(de-1)}},{key:"deleteProcess",value:function(ae,de){de>-1&&(this.substance.specifiedSubstanceG4m.process.splice(de,1),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process))}},{key:"addSite",value:function(ae){}}]),ze}(z.E);se.\u0275fac=function($t){return new($t||se)(r.LFG(H.B),r.LFG(Y))},se.\u0275prov=r.Yz7({token:se,factory:se.\u0275fac,providedIn:"root"}),se=(0,R.gn)([(0,r.GSi)(),(0,R.w6)("design:paramtypes",[H.B,Y])],se);var X=n(92507),ne=n(69093),ve=n(95758),Re=n(50318),Ie=n(53141),Ee=n(66088),ge=n(9292),_t=n(98002);function wt(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",2),r.TgZ(1,"mat-checkbox",3),r.NdJ("change",function(de){return r.CHM(ze),r.oxw().updateShowSubstanceRole(de)}),r._uU(2," Show Substance Role "),r.qZA(),r._uU(3," \xa0\xa0\xa0 "),r.TgZ(4,"mat-checkbox",3),r.NdJ("change",function(de){return r.CHM(ze),r.oxw().updateShowCriticalParameter(de)}),r._uU(5," Show Critical Parameter "),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("checked",Se.showSubstanceRole),r.xp6(3),r.Q6J("checked",Se.showCriticalParameter)}}function qt(st,$t){1&st&&(r.TgZ(0,"div",28),r.TgZ(1,"b"),r._uU(2,"+"),r.qZA(),r.qZA())}function Lt(st,$t){if(1&st&&(r.TgZ(0,"span"),r._UZ(1,"br"),r._uU(2),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(2),r.hij(" Material Display Name:",ze.verbatimName," ")}}function Rt(st,$t){if(1&st&&(r.TgZ(0,"span"),r._UZ(1,"br"),r.TgZ(2,"b"),r._uU(3),r.qZA(),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(3),r.hij("(",ze.substanceRole,")")}}var it=function($t){return["/substances",$t]};function Qe(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div"),r.YNc(1,qt,3,0,"div",24),r.TgZ(2,"a",25),r.NdJ("click",function(){r.CHM(ze);var Dt=r.oxw().$implicit;return r.oxw(7).openImageModal(Dt.substanceName.refuuid,Dt.substanceName.approvalID,Dt.substanceName.refPname)}),r._UZ(3,"img",26),r.qZA(),r.TgZ(4,"div"),r.TgZ(5,"a",27),r._uU(6),r.qZA(),r.YNc(7,Lt,3,1,"span",5),r.YNc(8,Rt,4,1,"span",5),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw(),ae=Se.index,de=Se.$implicit,ye=r.oxw(2).$implicit,Be=r.oxw(5);r.xp6(1),r.Q6J("ngIf",ye.startingMaterials.length>1&&0!=ae),r.xp6(2),r.Q6J("entityId",de.substanceName.refuuid),r.xp6(2),r.Q6J("routerLink",r.VKq(6,it,de.substanceName.refuuid)),r.xp6(1),r.hij(" ",de.substanceName.refPname,""),r.xp6(1),r.Q6J("ngIf",de.verbatimName),r.xp6(1),r.Q6J("ngIf",Be.showSubstanceRole)}}function ot(st,$t){if(1&st&&(r.TgZ(0,"div",23),r.YNc(1,Qe,9,8,"div",5),r.qZA()),2&st){var ze=$t.$implicit;r.xp6(1),r.Q6J("ngIf",ze.substanceName)}}function tt(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1," \xa0"),r.TgZ(2,"b"),r._uU(3),r.qZA(),r.qZA()),2&st){var ze=r.oxw(4).$implicit;r.xp6(3),r.hij("(",ze.substanceRole,")")}}function xe(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div"),r.TgZ(1,"div",29),r.TgZ(2,"div",30),r.TgZ(3,"button",31),r.NdJ("click",function(){r.CHM(ze);var ye=r.oxw(3).$implicit;return r.oxw(7).openImageModal(ye.substanceName.refuuid,ye.substanceName.approvalID,ye.substanceName.refPname)}),r.TgZ(4,"mat-icon"),r._uU(5,"remove_red_eye"),r.qZA(),r.qZA(),r.qZA(),r.TgZ(6,"div"),r.TgZ(7,"a",27),r.TgZ(8,"b"),r._uU(9),r.qZA(),r.qZA(),r.YNc(10,tt,4,1,"span",5),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw(3).$implicit,ae=r.oxw(7);r.xp6(7),r.Q6J("routerLink",r.VKq(3,it,Se.substanceName.refuuid)),r.xp6(2),r.Oqu(Se.substanceName.refPname),r.xp6(1),r.Q6J("ngIf",ae.showSubstanceRole)}}function $e(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,xe,11,5,"div",5),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(1),r.Q6J("ngIf","Solvent"!==ze.substanceRole)}}function Ge(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,$e,2,1,"div",5),r.qZA()),2&st){var ze=r.oxw().$implicit;r.xp6(1),r.Q6J("ngIf",ze.substanceRole)}}function ct(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,Ge,2,1,"div",5),r.qZA()),2&st){var ze=$t.$implicit;r.xp6(1),r.Q6J("ngIf",ze.substanceName)}}function Xe(st,$t){if(1&st&&(r.TgZ(0,"div",32),r._UZ(1,"img",33),r.qZA()),2&st){var ze=r.oxw(7);r.xp6(1),r.s9C("src",ze.imageLoc,r.LSH)}}function Te(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1," \xa0"),r.TgZ(2,"b"),r._uU(3),r.qZA(),r.qZA()),2&st){var ze=r.oxw(4).$implicit;r.xp6(3),r.hij("(",ze.substanceRole,")")}}function vt(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div"),r.TgZ(1,"div",29),r.TgZ(2,"div",30),r.TgZ(3,"button",31),r.NdJ("click",function(){r.CHM(ze);var ye=r.oxw(3).$implicit;return r.oxw(7).openImageModal(ye.substanceName.refuuid,ye.substanceName.approvalID,ye.substanceName.refPname)}),r.TgZ(4,"mat-icon"),r._uU(5,"remove_red_eye"),r.qZA(),r.qZA(),r.qZA(),r.TgZ(6,"div"),r.TgZ(7,"a",27),r.TgZ(8,"b"),r._uU(9),r.qZA(),r.qZA(),r.YNc(10,Te,4,1,"span",5),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw(3).$implicit,ae=r.oxw(7);r.xp6(7),r.Q6J("routerLink",r.VKq(3,it,Se.substanceName.refuuid)),r.xp6(2),r.Oqu(Se.substanceName.refPname),r.xp6(1),r.Q6J("ngIf",ae.showSubstanceRole)}}function qe(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,vt,11,5,"div",5),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(1),r.Q6J("ngIf","Solvent"===ze.substanceRole)}}function je(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,qe,2,1,"div",5),r.qZA()),2&st){var ze=r.oxw().$implicit;r.xp6(1),r.Q6J("ngIf",ze.substanceRole)}}function Nt(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,je,2,1,"div",5),r.qZA()),2&st){var ze=$t.$implicit;r.xp6(1),r.Q6J("ngIf",ze.substanceName)}}function Ft(st,$t){if(1&st&&(r.TgZ(0,"div"),r.TgZ(1,"b"),r._uU(2),r.qZA(),r.qZA()),2&st){var ze=r.oxw(2).$implicit,Se=r.oxw(7);r.xp6(2),r.Oqu(Se.displayAmount(ze.value,ze.name))}}function bt(st,$t){if(1&st&&(r.TgZ(0,"span"),r.YNc(1,Ft,3,1,"div",5),r.qZA()),2&st){var ze=r.oxw().$implicit;r.xp6(1),r.Q6J("ngIf",ze.value)}}function St(st,$t){if(1&st&&(r.TgZ(0,"div",34),r.YNc(1,bt,2,1,"span",5),r.qZA()),2&st){var ze=r.oxw(7);r.xp6(1),r.Q6J("ngIf",ze.showCriticalParameter)}}function Pt(st,$t){1&st&&(r.TgZ(0,"div",37),r.TgZ(1,"b"),r._uU(2,"+"),r.qZA(),r.qZA())}function ut(st,$t){if(1&st&&(r.TgZ(0,"span"),r._UZ(1,"br"),r._uU(2),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(2),r.hij(" Material Display Name:",ze.verbatimName," ")}}function yt(st,$t){if(1&st&&(r.TgZ(0,"span"),r._UZ(1,"br"),r.TgZ(2,"b"),r._uU(3),r.qZA(),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(3),r.hij("(",ze.substanceRole,")")}}function be(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div"),r.YNc(1,Pt,3,0,"div",36),r.TgZ(2,"a",25),r.NdJ("click",function(){r.CHM(ze);var Dt=r.oxw().$implicit;return r.oxw(7).openImageModal(Dt.substanceName.refuuid,Dt.substanceName.approvalID,Dt.substanceName.refPname)}),r._UZ(3,"img",26),r.qZA(),r.TgZ(4,"div"),r.TgZ(5,"a",27),r._uU(6),r.qZA(),r.YNc(7,ut,3,1,"span",5),r.YNc(8,yt,4,1,"span",5),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw(),ae=Se.index,de=Se.$implicit,ye=r.oxw(2).$implicit,Be=r.oxw(5);r.xp6(1),r.Q6J("ngIf",ye.resultingMaterials.length>1&&0!=ae),r.xp6(2),r.Q6J("entityId",de.substanceName.refuuid),r.xp6(2),r.Q6J("routerLink",r.VKq(6,it,de.substanceName.refuuid)),r.xp6(1),r.hij(" ",de.substanceName.refPname," "),r.xp6(1),r.Q6J("ngIf",de.verbatimName),r.xp6(1),r.Q6J("ngIf",Be.showSubstanceRole)}}function we(st,$t){if(1&st&&(r.TgZ(0,"div",35),r.YNc(1,be,9,8,"div",5),r.qZA()),2&st){var ze=$t.$implicit;r.xp6(1),r.Q6J("ngIf",ze.substanceName)}}function _e(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div"),r.TgZ(1,"div",11),r.TgZ(2,"div",12),r.TgZ(3,"b"),r.TgZ(4,"u"),r._uU(5),r.qZA(),r.qZA(),r.qZA(),r.TgZ(6,"div"),r.TgZ(7,"button",13),r.NdJ("click",function(){return r.CHM(ze),r.oxw(6).editInForm()}),r._UZ(8,"mat-icon",14),r._uU(9,"Edit in Form "),r.qZA(),r.qZA(),r.qZA(),r.TgZ(10,"table",15),r.TgZ(11,"tr",16),r.TgZ(12,"td",17),r.YNc(13,ot,2,1,"div",18),r.qZA(),r.TgZ(14,"td",19),r.YNc(15,ct,2,1,"div",8),r.YNc(16,Xe,2,1,"div",20),r.YNc(17,Nt,2,1,"div",8),r.YNc(18,St,2,1,"div",21),r.qZA(),r.TgZ(19,"td",17),r.YNc(20,we,2,1,"div",22),r.qZA(),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw(),ae=Se.index,de=Se.$implicit;r.xp6(5),r.hij("Step ",ae+1,""),r.xp6(8),r.Q6J("ngForOf",de.startingMaterials),r.xp6(2),r.Q6J("ngForOf",de.processingMaterials),r.xp6(1),r.Q6J("ngIf",de.processingMaterials.length>0),r.xp6(1),r.Q6J("ngForOf",de.processingMaterials),r.xp6(1),r.Q6J("ngForOf",de.criticalParameters),r.xp6(2),r.Q6J("ngForOf",de.resultingMaterials)}}function $(st,$t){if(1&st&&(r.TgZ(0,"div",10),r.YNc(1,_e,21,7,"div",5),r.qZA()),2&st){var ze=$t.index,Se=r.oxw(5);r.xp6(1),r.Q6J("ngIf",-1===Se.showStageIndex||Se.showStageIndex>-1&&Se.showStageIndex===ze)}}function Ae(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,$,2,1,"div",9),r.qZA()),2&st){var ze=r.oxw().$implicit;r.xp6(1),r.Q6J("ngForOf",ze.stages)}}function ft(st,$t){if(1&st&&(r.TgZ(0,"div"),r.YNc(1,Ae,2,1,"div",5),r.qZA()),2&st){var ze=$t.index,Se=r.oxw(3);r.xp6(1),r.Q6J("ngIf",-1===Se.showSiteIndex||Se.showSiteIndex>-1&&Se.showSiteIndex===ze)}}function gt(st,$t){if(1&st&&(r.TgZ(0,"div"),r.TgZ(1,"fieldset",6),r.TgZ(2,"legend",6),r._uU(3,"Process \xa0"),r.TgZ(4,"b"),r.TgZ(5,"span",7),r._uU(6),r.qZA(),r.qZA(),r.qZA(),r.YNc(7,ft,2,1,"div",8),r.qZA(),r.qZA()),2&st){var ze=r.oxw(),Se=ze.index,ae=ze.$implicit;r.xp6(6),r.Oqu(Se+1),r.xp6(1),r.Q6J("ngForOf",ae.sites)}}function Bt(st,$t){if(1&st&&(r.TgZ(0,"div",4),r.YNc(1,gt,8,2,"div",5),r.qZA()),2&st){var ze=$t.index,Se=r.oxw();r.xp6(1),r.Q6J("ngIf",-1===Se.showProcessIndex||Se.showProcessIndex>-1&&Se.showProcessIndex===ze)}}var _n=function(){var st=function(){function $t(ze,Se,ae,de){(0,t.Z)(this,$t),this.configService=ze,this.substanceFormSsg4mProcessService=Se,this.overlayContainerService=ae,this.dialog=de,this.tabSelectedIndexOut=new r.vpe,this.showProcessIndex=-1,this.showSiteIndex=-1,this.showStageIndex=-1,this.showSubstanceRole=!0,this.showCriticalParameter=!1,this.subscriptions=[]}return(0,P.Z)($t,[{key:"ngOnInit",value:function(){var Se=this,ae=this.substanceFormSsg4mProcessService.specifiedSubstanceG4mProcess.subscribe(function(de){Se.processList=de});this.subscriptions.push(ae),this.environment=this.configService.environment,this.imageLoc="".concat(this.environment.baseHref||"","assets/images/home/arrow.png"),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"openImageModal",value:function(Se,ae,de){var ye=this,nt=this.dialog.open(ne.oV,{height:"96%",width:"650px",panelClass:"structure-image-panel",data:{structure:Se,uuid:Se,approvalID:ae,displayName:de}});this.overlayContainer.style.zIndex="1001";var Dt=nt.afterClosed().subscribe(function(){ye.overlayContainer.style.zIndex="1001",Dt.unsubscribe()},function(){ye.overlayContainer.style.zIndex="1001",Dt.unsubscribe()})}},{key:"displayAmount",value:function(Se,ae){return this.displayAmountCompose(Se,ae)}},{key:"editInForm",value:function(){this.tabSelectedIndexOut.emit(0)}},{key:"updateShowSubstanceRole",value:function(Se){this.showSubstanceRole=Se.checked}},{key:"updateShowCriticalParameter",value:function(Se){this.showCriticalParameter=Se.checked}},{key:"displayAmountCompose",value:function(Se,ae){function de(cn){return cn?"object"==typeof cn?cn.display?cn.display:cn.value?cn.value:null:cn:null}var ye="";if(Se&&"object"==typeof Se){if(Se){var Be=!1,nt=de(Se.units);nt||(nt="");var Dt=de(ae);Dt&&(ye+=Dt+":\n"),(Se.average||Se.high||Se.low)&&(Se.average&&(ye+=Se.average,Se.units&&(ye+=" "+nt,Be=!0)),(Se.high||Se.low)&&(ye+=" [",Se.high&&!Se.low?ye+="<"+Se.high:!Se.high&&Se.low?ye+=">"+Se.low:Se.high&&Se.low&&(ye+=Se.low+" to "+Se.high),ye+="] ",Be||Se.units&&(ye+=" "+nt,Be=!0)),ye+=" (average) "),(Se.highLimit||Se.lowLimit)&&(ye+="\n["),Se.highLimit&&!Se.lowLimit?ye+="<"+Se.highLimit:!Se.highLimit&&Se.lowLimit?ye+=">"+Se.lowLimit:Se.highLimit&&Se.lowLimit&&(ye+=Se.lowLimit+" to "+Se.highLimit),(Se.highLimit||Se.lowLimit)&&(ye+="] ",Be||Se.units&&(ye+=" "+nt,Be=!0),ye+=" (limits)")}Se.nonNumericValue&&(ye+=" "+Se.nonNumericValue)}return ye}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(Ie.E),r.Y36(se),r.Y36(Ee.Xj),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-scheme-view"]],inputs:{showProcessIndex:"showProcessIndex",showSiteIndex:"showSiteIndex",showStageIndex:"showStageIndex"},outputs:{tabSelectedIndexOut:"tabSelectedIndexOut"},decls:3,vars:2,consts:[["class","paddingleft350px",4,"ngIf"],["class","margintop10px",4,"ngFor","ngForOf"],[1,"paddingleft350px"],[3,"checked","change"],[1,"margintop10px"],[4,"ngIf"],[1,"border"],[1,"colorgreen","font17px"],[4,"ngFor","ngForOf"],["class","margintop10px marginbottom30px",4,"ngFor","ngForOf"],[1,"margintop10px","marginbottom30px"],[1,"divflexspace"],[1,"paddingtop15px","font16px"],["mat-raised-button","","color","primary","matTooltip","Edit In Form",3,"click"],["svgIcon","edit"],[1,"width100percent","bordergray"],[1,"paddingbottom10px"],[1,"width33percent","textaligncenter"],["class","paddingleft10px marginbottom10px",4,"ngFor","ngForOf"],[1,"width33percent"],["class","paddingleft20px",4,"ngIf"],["class","paddingleft25px paddingtop10px bo",4,"ngFor","ngForOf"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"paddingleft10px","marginbottom10px"],["class","paddingtop15px font30px",4,"ngIf"],[1,"zoom",3,"click"],["appSubstanceImage","",3,"entityId"],["target","_blank",3,"routerLink"],[1,"paddingtop15px","font30px"],[1,"divflex"],[1,"margintopneg10px"],["mat-button","",3,"click"],[1,"paddingleft20px"],[3,"src"],[1,"paddingleft25px","paddingtop10px","bo"],[1,"marginbottom10px"],["class","paddingtop15px font25px",4,"ngIf"],[1,"paddingtop15px","font25px"]],template:function(ze,Se){1&ze&&(r.YNc(0,wt,6,2,"div",0),r.YNc(1,Bt,2,1,"div",1),r._UZ(2,"br")),2&ze&&(r.Q6J("ngIf",-1==Se.showProcessIndex),r.xp6(1),r.Q6J("ngForOf",Se.processList))},directives:[e.O5,Z.oG,e.sg,f.lW,h.Hw,ge.m,_t.yS],styles:[".divflexspace[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.paddingleft10px[_ngcontent-%COMP%]{padding-left:10px}.paddingleft20px[_ngcontent-%COMP%]{padding-left:20px}.paddingleft25px[_ngcontent-%COMP%]{padding-left:25px}.paddingleft350px[_ngcontent-%COMP%]{padding-left:350px}.paddingtop10px[_ngcontent-%COMP%]{padding-top:10px}.paddingtop15px[_ngcontent-%COMP%]{padding-top:15px}.paddingbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font30px[_ngcontent-%COMP%]{font-size:30px}.width100percent[_ngcontent-%COMP%]{width:100%}.width33percent[_ngcontent-%COMP%]{width:33%}.textaligncenter[_ngcontent-%COMP%]{text-align:center}fieldset.border[_ngcontent-%COMP%]{border:solid 2px #1b0fb8!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0;box-shadow:2px 2px 3px 1px #6e686ea3}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#174793;font-family:Verdana;font-weight:700;margin-bottom:10px}.structure-img-big[_ngcontent-%COMP%]{width:100%;height:auto}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}"]}),st}(),wn=function(){var st=function(){function $t(ze,Se,ae){(0,t.Z)(this,$t),this.sanitizer=ze,this.dialogRef=Se,this.data=ae}return(0,P.Z)($t,[{key:"ngOnInit",value:function(){this.data.processIndex>=-1&&this.data.siteIndex>=-1&&this.data.stageIndex>=-1&&(this.showProcessIndex=this.data.processIndex,this.showSiteIndex=this.data.siteIndex,this.showStageIndex=this.data.stageIndex)}},{key:"close",value:function(){this.dialogRef.close()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}},{key:"tabSelectedIndexOutChange",value:function(Se){this.tabSelectedIndex=Se,this.dialogRef.close(Se)}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(Re.H7),r.Y36(ve.so),r.Y36(ve.WI))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-step-view-dialog"]],decls:8,vars:3,consts:[["mat-dialog-content",""],[1,"structure-image-content"],["mat-mini-fab","",3,"click"],["svgIcon","close"],[3,"showProcessIndex","showSiteIndex","showStageIndex","tabSelectedIndexOut"]],template:function(ze,Se){1&ze&&(r.TgZ(0,"div",0),r.TgZ(1,"div",1),r.TgZ(2,"button",2),r.NdJ("click",function(){return Se.dismissDialog()}),r._UZ(3,"mat-icon",3),r.qZA(),r._UZ(4,"br"),r._UZ(5,"br"),r._UZ(6,"br"),r.TgZ(7,"app-ssg4m-scheme-view",4),r.NdJ("tabSelectedIndexOut",function(de){return Se.tabSelectedIndexOutChange(de)}),r.qZA(),r.qZA(),r.qZA()),2&ze&&(r.xp6(7),r.Q6J("showProcessIndex",Se.showProcessIndex)("showSiteIndex",Se.showSiteIndex)("showStageIndex",Se.showStageIndex))},directives:[f.lW,h.Hw,_n],styles:[".divflexspace[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.paddingleft10px[_ngcontent-%COMP%]{padding-left:10px}.paddingleft20px[_ngcontent-%COMP%]{padding-left:20px}.paddingleft25px[_ngcontent-%COMP%]{padding-left:25px}.paddingleft350px[_ngcontent-%COMP%]{padding-left:350px}.paddingtop10px[_ngcontent-%COMP%]{padding-top:10px}.paddingtop15px[_ngcontent-%COMP%]{padding-top:15px}.paddingbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font30px[_ngcontent-%COMP%]{font-size:30px}.width100percent[_ngcontent-%COMP%]{width:100%}.width33percent[_ngcontent-%COMP%]{width:33%}.textaligncenter[_ngcontent-%COMP%]{text-align:center}fieldset.border[_ngcontent-%COMP%]{border:solid 2px #1b0fb8!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0;box-shadow:2px 2px 3px 1px #6e686ea3}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#174793;font-family:Verdana;font-weight:700;margin-bottom:10px}.structure-img-big[_ngcontent-%COMP%]{width:100%;height:auto}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.mat-dialog-container[_ngcontent-%COMP%]{padding:5px;position:relative}.close-button[_ngcontent-%COMP%]{position:relative;top:0;right:0;padding:5px;line-height:14px;min-width:auto}.mat-dialog-content[_ngcontent-%COMP%]{margin:0;padding:0;max-height:100%}.mat-tab-body-content[_ngcontent-%COMP%]{padding-left:10px;padding-right:10px}.mat-mini-fab[_ngcontent-%COMP%]{position:absolute;right:17px;top:8px;background-color:#f2f2f2d9;color:#404040;width:35px;height:35px}.mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0} .structure-image-panel .mat-dialog-container{padding:5px;position:relative} .structure-image-panel .mat-dialog-content{margin:0;padding:0;max-height:100%} .structure-image-panel .mat-tab-body-content{padding-left:10px;padding-right:10px}"]}),st}(),Tn=n(78444),On=n(40104),Jn=n(42827),Un=n(26477),si=n(16667),fi=function(){var st=function($t){(0,k.Z)(Se,$t);var ze=(0,q.Z)(Se);function Se(ae){var de;return(0,t.Z)(this,Se),(de=ze.call(this,ae)).substanceFormService=ae,de}return(0,P.Z)(Se,[{key:"initSubtanceForm",value:function(){var de=this;(0,V.Z)((0,ue.Z)(Se.prototype),"initSubtanceForm",this).call(this);var ye=this.substanceFormService.substance.subscribe(function(Be){de.substance=Be,de.substance.specifiedSubstanceG4m||(de.substance.specifiedSubstanceG4m={}),de.substance.specifiedSubstanceG4m.process||(de.substance.specifiedSubstanceG4m.process=[{sites:[]}]),de.substanceFormService.resetState(),de.propertyEmitter.next(de.substance.specifiedSubstanceG4m.process)});this.subscriptions.push(ye)}},{key:"specifiedSubstanceG4mStage",get:function(){return this.propertyEmitter.asObservable()}},{key:"addStage",value:function(de,ye){this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages.push({stageNumber:"",criticalParameters:[],startingMaterials:[],processingMaterials:[],resultingMaterials:[]}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages);var nt=this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages.length-2;nt>=0&&this.copyResultingToStarting(de,ye,nt,this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[nt].resultingMaterials.length-1)}},{key:"addCriticalParameter",value:function(de,ye,Be){this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].criticalParameters.push({value:{}}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].criticalParameters)}},{key:"addStartingMaterials",value:function(de,ye,Be){this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].startingMaterials.push({substanceRole:"Starting Material"}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].startingMaterials)}},{key:"addProcessingMaterials",value:function(de,ye,Be){this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].processingMaterials.push({substanceRole:"Solvent"}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].processingMaterials)}},{key:"addResultingMaterials",value:function(de,ye,Be){this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].resultingMaterials.push({substanceRole:"Intermediate"}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].resultingMaterials)}},{key:"copyResultingToStarting",value:function(de,ye,Be,nt){var Dt=!1,cn="";if(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].resultingMaterials.length>0){var Ti=this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].resultingMaterials[nt].substanceName;Ti&&(cn=Ti.refuuid);var Pa=this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be+1];null!=Pa&&(0==Pa.startingMaterials.length?this.copyToStartingFields(de,ye,Be,nt):(Pa.startingMaterials.forEach(function(to){if(to){var Ua=to.substanceName;Ua&&cn===Ua.refuuid&&(Dt=!0,alert("This Substance "+Ua.name+" already exists in the Starting Material in the next Stage"))}}),!1===Dt&&this.copyToStartingFields(de,ye,Be,nt))),Pa||(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages.push({stageNumber:"",criticalParameters:[],startingMaterials:[],processingMaterials:[],resultingMaterials:[]}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages),this.copyToStartingFields(de,ye,Be,nt))}}},{key:"copyToStartingFields",value:function(de,ye,Be,nt){var Dt=this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be].resultingMaterials[nt],cn=Dt.substanceName;this.addStartingMaterials(de,ye,Be+1);var kn=this.substance.specifiedSubstanceG4m.process[de].sites[ye].stages[Be+1],Ti=kn.startingMaterials[kn.startingMaterials.length-1];Ti.substanceName=cn,Ti.verbatimName=Dt.verbatimName,Ti.substanceRole="Intermediate",Ti.comments=Dt.comments}}]),Se}(z.E);return st.\u0275fac=function(ze){return new(ze||st)(r.LFG(H.B))},st.\u0275prov=r.Yz7({token:st,factory:st.\u0275fac,providedIn:"root"}),st}(),rn=n(24459);function sn(st,$t){1&st&&(r.TgZ(0,"div"),r._UZ(1,"hr"),r.qZA())}function jt(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",16),r._uU(1," Deleted\xa0 "),r.TgZ(2,"button",17),r.NdJ("click",function(){return r.CHM(ze),r.oxw().undoDelete()}),r._UZ(3,"mat-icon",18),r.qZA(),r.qZA()}}function Ue(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",19),r.TgZ(1,"app-substance-selector",20),r.NdJ("selectionUpdated",function(de){return r.CHM(ze),r.oxw().relatedSubstanceUpdated(de)}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("subuuid",Se.relatedSubstanceUuid)}}function et(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",11),r.TgZ(1,"input",21),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().startingMaterial.verbatimName=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.startingMaterial.verbatimName)}}function De(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",22),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().updateSubstanceRole(de)}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.startingMaterial.substanceRole)}}function Ze(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",7),r.TgZ(1,"div",3),r._uU(2,"\xa0"),r.qZA(),r.TgZ(3,"mat-form-field",23),r.TgZ(4,"textarea",24),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().startingMaterial.comments=de}),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(4),r.Q6J("ngModel",Se.startingMaterial.comments)}}var Je=function(){return["/substances/register/chemical"]},Ve=function(){return["/structure-search"]},pt=function(){var st=function(){function $t(ze,Se,ae){(0,t.Z)(this,$t),this.substanceFormService=ze,this.configService=Se,this.dialog=ae,this.configSettingsDisplay={},this.subscriptions=[]}return(0,P.Z)($t,[{key:"startingMaterial",get:function(){return this.privateStartingMaterial},set:function(Se){this.privateStartingMaterial=Se}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(Se){this.privateProcessIndex=Se}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(Se){this.privateSiteIndex=Se}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(Se){this.privateStageIndex=Se}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(Se){this.privateShowAdvancedSettings=Se,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var Se=this,ae=this.substanceFormService.substance.subscribe(function(ye){Se.substance=ye});this.subscriptions.push(ae),this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials[this.startingMaterialIndex].substanceName&&(this.relatedSubstanceUuid=this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials[this.startingMaterialIndex].substanceName.refuuid)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"getConfigSettings",value:function(){var Se=this,de=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.startingMaterial;Object.keys(de).forEach(function(ye){null!=de[ye]&&("simple"===de[ye]?Se.configSettingsDisplay[ye]=!0:"advanced"===de[ye]?Se.configSettingsDisplay[ye]=!0===Se.privateShowAdvancedSettings:"removed"===de[ye]&&(Se.configSettingsDisplay[ye]=!1))})}},{key:"updateSubstanceRole",value:function(Se){this.privateStartingMaterial.substanceRole=Se}},{key:"relatedSubstanceUpdated",value:function(Se){null!=Se&&(this.privateStartingMaterial.substanceName={refPname:Se._name,name:Se._name,refuuid:Se.uuid,substanceClass:"reference",approvalID:Se.approvalID})}},{key:"confirmDeleteStartingMaterial",value:function(){var Se=this;this.dialog.open(Un.$,{data:{message:"Are you sure you want to delele Starting Material "+(this.startingMaterialIndex+1)+" for Stage "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(de){de&&!0===de&&Se.deleteStartingMaterial()})}},{key:"deleteStartingMaterial",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials.splice(this.startingMaterialIndex,1)}},{key:"copyResultingToStarting",value:function(Se,ae,de){}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(H.B),r.Y36(X.E),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-starting-materials-form"]],inputs:{startingMaterialIndex:"startingMaterialIndex",startingMaterial:"startingMaterial",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:21,vars:11,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","col related-substance",4,"ngIf"],["class","col",4,"ngIf"],["class","col","domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",3,"model","valueChange",4,"ngIf"],[1,"col"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","Substance Name",3,"subuuid","selectionUpdated"],["matInput","","placeholder","Material Display Name","name","startingMaterial.verbatimName",3,"ngModel","ngModelChange"],["domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",1,"col",3,"model","valueChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","startingMaterial.comments","rows","1",3,"ngModel","ngModelChange"]],template:function(ze,Se){1&ze&&(r.YNc(0,sn,2,0,"div",0),r.TgZ(1,"div",1),r.YNc(2,jt,4,0,"div",2),r.TgZ(3,"div",3),r.TgZ(4,"div",4),r.TgZ(5,"button",5),r.NdJ("click",function(){return Se.confirmDeleteStartingMaterial()}),r._UZ(6,"mat-icon",6),r.qZA(),r.qZA(),r.qZA(),r.TgZ(7,"div",7),r.YNc(8,Ue,2,1,"div",8),r.YNc(9,et,2,1,"mat-form-field",9),r.YNc(10,De,1,1,"app-cv-input",10),r.qZA(),r.TgZ(11,"div",7),r.TgZ(12,"div",11),r.TgZ(13,"a",12),r.TgZ(14,"span",13),r._uU(15,"Register New"),r.qZA(),r.qZA(),r._uU(16," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),r.TgZ(17,"a",14),r.TgZ(18,"span",13),r._uU(19,"Search By Structure"),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.YNc(20,Ze,5,1,"div",15),r.qZA()),2&ze&&(r.Q6J("ngIf",Se.startingMaterialIndex>0),r.xp6(2),r.Q6J("ngIf",Se.startingMaterial.$$deletedCode),r.xp6(3),r.MGl("matTooltip","Delete Starting Material ",Se.startingMaterialIndex+1,""),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.substanceName||void 0===Se.configSettingsDisplay.substanceName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.verbatimName||void 0===Se.configSettingsDisplay.verbatimName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.substanceRole||void 0===Se.configSettingsDisplay.substanceRole&&!0),r.xp6(3),r.Q6J("routerLink",r.DdM(9,Je)),r.xp6(4),r.Q6J("routerLink",r.DdM(10,Ve)),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.comments||void 0===Se.configSettingsDisplay.comments&&Se.showAdvancedSettings))},directives:[e.O5,f.lW,T.gM,h.Hw,rn.Q,v.KE,J.Nt,j.Fj,j.JJ,j.On,si.S,_t.yS],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.margintopneg30px[_ngcontent-%COMP%]{margin-top:-30px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft45px[_ngcontent-%COMP%]{margin-left:45px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.padleftneg10[_ngcontent-%COMP%]{padding-left:-10px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}"]}),st}();function kt(st,$t){1&st&&(r.TgZ(0,"div"),r._UZ(1,"hr"),r.qZA())}function en(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",16),r._uU(1," Deleted\xa0 "),r.TgZ(2,"button",17),r.NdJ("click",function(){return r.CHM(ze),r.oxw().undoDelete()}),r._UZ(3,"mat-icon",18),r.qZA(),r.qZA()}}function Zn(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",19),r.TgZ(1,"app-substance-selector",20),r.NdJ("selectionUpdated",function(de){return r.CHM(ze),r.oxw().relatedSubstanceUpdated(de)}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("subuuid",Se.relatedSubstanceUuid)}}function zt(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",11),r.TgZ(1,"input",21),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().processingMaterial.verbatimName=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.processingMaterial.verbatimName)}}function un(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",22),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().updateSubstanceRole(de)}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.processingMaterial.substanceRole)}}function tn(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",23),r.TgZ(1,"div",3),r._uU(2,"\xa0"),r.qZA(),r.TgZ(3,"mat-form-field",24),r.TgZ(4,"textarea",25),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().processingMaterial.comments=de}),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(4),r.Q6J("ngModel",Se.processingMaterial.comments)}}var ln=function(){return["/substances/register/chemical"]},gn=function(){return["/structure-search"]},An=function(){var st=function(){function $t(ze,Se,ae){(0,t.Z)(this,$t),this.substanceFormService=ze,this.configService=Se,this.dialog=ae,this.configSettingsDisplay={},this.subscriptions=[]}return(0,P.Z)($t,[{key:"processingMaterial",get:function(){return this.privateProcessingMaterial},set:function(Se){this.privateProcessingMaterial=Se}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(Se){this.privateProcessIndex=Se}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(Se){this.privateSiteIndex=Se}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(Se){this.privateStageIndex=Se}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(Se){this.privateShowAdvancedSettings=Se,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var Se=this,ae=this.substanceFormService.substance.subscribe(function(ye){Se.substance=ye});this.subscriptions.push(ae),this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials[this.processingMaterialIndex].substanceName&&(this.relatedSubstanceUuid=this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials[this.processingMaterialIndex].substanceName.refuuid)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"getConfigSettings",value:function(){var Se=this,de=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.processingMaterial;Object.keys(de).forEach(function(ye){null!=de[ye]&&("simple"===de[ye]?Se.configSettingsDisplay[ye]=!0:"advanced"===de[ye]?Se.configSettingsDisplay[ye]=!0===Se.privateShowAdvancedSettings:"removed"===de[ye]&&(Se.configSettingsDisplay[ye]=!1))})}},{key:"updateSubstanceRole",value:function(Se){this.privateProcessingMaterial.substanceRole=Se}},{key:"relatedSubstanceUpdated",value:function(Se){null!=Se&&(this.privateProcessingMaterial.substanceName={refPname:Se._name,name:Se._name,refuuid:Se.uuid,substanceClass:"reference",approvalID:Se.approvalID})}},{key:"confirmDeleteProcessingMaterial",value:function(){var Se=this;this.dialog.open(Un.$,{data:{message:"Are you sure you want to delele Processing Material "+(this.processingMaterialIndex+1)+" for Stage "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(de){de&&!0===de&&Se.deleteProcessingMaterial()})}},{key:"deleteProcessingMaterial",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials.splice(this.processingMaterialIndex,1)}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(H.B),r.Y36(X.E),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-processing-materials-form"]],inputs:{processingMaterialIndex:"processingMaterialIndex",processingMaterial:"processingMaterial",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:21,vars:11,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","col related-substance",4,"ngIf"],["class","col",4,"ngIf"],["class","col","domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",3,"model","valueChange",4,"ngIf"],[1,"col"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"],["class","form-row margintop10px",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","Substance Name",3,"subuuid","selectionUpdated"],["matInput","","placeholder","Material Display Name","name","processingMaterial.verbatimName",3,"ngModel","ngModelChange"],["domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",1,"col",3,"model","valueChange"],[1,"form-row","margintop10px"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","processingMaterial.comments","rows","1",3,"ngModel","ngModelChange"]],template:function(ze,Se){1&ze&&(r.YNc(0,kt,2,0,"div",0),r.TgZ(1,"div",1),r.YNc(2,en,4,0,"div",2),r.TgZ(3,"div",3),r.TgZ(4,"div",4),r.TgZ(5,"button",5),r.NdJ("click",function(){return Se.confirmDeleteProcessingMaterial()}),r._UZ(6,"mat-icon",6),r.qZA(),r.qZA(),r.qZA(),r.TgZ(7,"div",7),r.YNc(8,Zn,2,1,"div",8),r.YNc(9,zt,2,1,"mat-form-field",9),r.YNc(10,un,1,1,"app-cv-input",10),r.qZA(),r.TgZ(11,"div",7),r.TgZ(12,"div",11),r.TgZ(13,"a",12),r.TgZ(14,"span",13),r._uU(15,"Register New"),r.qZA(),r.qZA(),r._uU(16," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),r.TgZ(17,"a",14),r.TgZ(18,"span",13),r._uU(19,"Search By Structure"),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.YNc(20,tn,5,1,"div",15),r.qZA()),2&ze&&(r.Q6J("ngIf",Se.processingMaterialIndex>0),r.xp6(2),r.Q6J("ngIf",Se.processingMaterial.$$deletedCode),r.xp6(3),r.MGl("matTooltip","Delete Processing Material ",Se.processingMaterialIndex+1,""),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.substanceName||void 0===Se.configSettingsDisplay.substanceName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.verbatimName||void 0===Se.configSettingsDisplay.verbatimName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.substanceRole||void 0===Se.configSettingsDisplay.substanceRole&&!0),r.xp6(3),r.Q6J("routerLink",r.DdM(9,ln)),r.xp6(4),r.Q6J("routerLink",r.DdM(10,gn)),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.comments||void 0===Se.configSettingsDisplay.comments&&Se.showAdvancedSettings))},directives:[e.O5,f.lW,T.gM,h.Hw,rn.Q,v.KE,J.Nt,j.Fj,j.JJ,j.On,si.S,_t.yS],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.marginleft45px[_ngcontent-%COMP%]{margin-left:45px}.padleftneg10[_ngcontent-%COMP%]{padding-left:-10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}"]}),st}();function Nn(st,$t){1&st&&(r.TgZ(0,"div"),r._UZ(1,"hr"),r.qZA())}function ai(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",18),r._uU(1," Deleted\xa0 "),r.TgZ(2,"button",19),r.NdJ("click",function(){return r.CHM(ze),r.oxw().undoDelete()}),r._UZ(3,"mat-icon",20),r.qZA(),r.qZA()}}function gi(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",21),r.TgZ(1,"app-substance-selector",22),r.NdJ("selectionUpdated",function(de){return r.CHM(ze),r.oxw().relatedSubstanceUpdated(de)}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("subuuid",Se.relatedSubstanceUuid)}}function Si(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",13),r.TgZ(1,"input",23),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().resultingMaterial.verbatimName=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.resultingMaterial.verbatimName)}}function Bi(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",24),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().updateSubstanceRole(de)}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.resultingMaterial.substanceRole)}}function Oa(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",9),r.TgZ(1,"div",3),r._uU(2,"\xa0"),r.qZA(),r.TgZ(3,"mat-form-field",25),r.TgZ(4,"textarea",26),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().resultingMaterial.comments=de}),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(4),r.Q6J("ngModel",Se.resultingMaterial.comments)}}var Ea=function(){return["/substances/register/chemical"]},ea=function(){return["/structure-search"]},ja=function(){var st=function(){function $t(ze,Se,ae,de){(0,t.Z)(this,$t),this.substanceFormService=ze,this.substanceFormSsg4mStagesService=Se,this.configService=ae,this.dialog=de,this.configSettingsDisplay={},this.subscriptions=[]}return(0,P.Z)($t,[{key:"resultingMaterial",get:function(){return this.privateResultingMaterial},set:function(Se){this.privateResultingMaterial=Se}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(Se){this.privateProcessIndex=Se}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(Se){this.privateSiteIndex=Se}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(Se){this.privateStageIndex=Se}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(Se){this.privateShowAdvancedSettings=Se,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var Se=this,ae=this.substanceFormService.substance.subscribe(function(ye){Se.substance=ye});this.subscriptions.push(ae),this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex].substanceName&&(this.relatedSubstanceUuid=this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex].substanceName.refuuid)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"getConfigSettings",value:function(){var Se=this,de=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.resultingMaterial;Object.keys(de).forEach(function(ye){null!=de[ye]&&("simple"===de[ye]?Se.configSettingsDisplay[ye]=!0:"advanced"===de[ye]?Se.configSettingsDisplay[ye]=!0===Se.privateShowAdvancedSettings:"removed"===de[ye]&&(Se.configSettingsDisplay[ye]=!1))})}},{key:"updateSubstanceRole",value:function(Se){this.privateResultingMaterial.substanceRole=Se}},{key:"relatedSubstanceUpdated",value:function(Se){null!=Se&&(this.privateResultingMaterial.substanceName={refPname:Se._name,name:Se._name,refuuid:Se.uuid,substanceClass:"reference",approvalID:Se.approvalID})}},{key:"confirmDeleteResultingMaterial",value:function(){var Se=this;this.dialog.open(Un.$,{data:{message:"Are you sure you want to delele Resulting Material "+(this.resultingMaterialIndex+1)+" for Stage "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(de){de&&!0===de&&Se.deleteResultingMaterial()})}},{key:"deleteResultingMaterial",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials.splice(this.resultingMaterialIndex,1)}},{key:"copyResultingToStarting",value:function(){this.substanceFormSsg4mStagesService.copyResultingToStarting(this.processIndex,this.siteIndex,this.stageIndex,this.resultingMaterialIndex)}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(H.B),r.Y36(fi),r.Y36(X.E),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-resulting-materials-form"]],inputs:{resultingMaterialIndex:"resultingMaterialIndex",resultingMaterial:"resultingMaterial",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:23,vars:11,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","","matTooltip"," Copy this Resulting Material to Starting Material in next Step",3,"click"],["svgIcon","file_copy"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","col related-substance",4,"ngIf"],["class","col",4,"ngIf"],["class","col","domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",3,"model","valueChange",4,"ngIf"],[1,"col"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","Substance Name",3,"subuuid","selectionUpdated"],["matInput","","placeholder","Material Display Name","name","resultingMaterial.verbatimName",3,"ngModel","ngModelChange"],["domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",1,"col",3,"model","valueChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","resultingMaterial.comments","rows","1",3,"ngModel","ngModelChange"]],template:function(ze,Se){1&ze&&(r.YNc(0,Nn,2,0,"div",0),r.TgZ(1,"div",1),r.YNc(2,ai,4,0,"div",2),r.TgZ(3,"div",3),r.TgZ(4,"div",4),r.TgZ(5,"button",5),r.NdJ("click",function(){return Se.copyResultingToStarting()}),r._UZ(6,"mat-icon",6),r.qZA(),r.TgZ(7,"button",7),r.NdJ("click",function(){return Se.confirmDeleteResultingMaterial()}),r._UZ(8,"mat-icon",8),r.qZA(),r.qZA(),r.qZA(),r.TgZ(9,"div",9),r.YNc(10,gi,2,1,"div",10),r.YNc(11,Si,2,1,"mat-form-field",11),r.YNc(12,Bi,1,1,"app-cv-input",12),r.qZA(),r.TgZ(13,"div",9),r.TgZ(14,"div",13),r.TgZ(15,"a",14),r.TgZ(16,"span",15),r._uU(17,"Register New"),r.qZA(),r.qZA(),r._uU(18," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),r.TgZ(19,"a",16),r.TgZ(20,"span",15),r._uU(21,"Search By Structure"),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.YNc(22,Oa,5,1,"div",17),r.qZA()),2&ze&&(r.Q6J("ngIf",Se.resultingMaterialIndex>0),r.xp6(2),r.Q6J("ngIf",Se.resultingMaterial.$$deletedCode),r.xp6(5),r.MGl("matTooltip","Delete Resulting Material ",Se.resultingMaterialIndex+1,""),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.substanceName||void 0===Se.configSettingsDisplay.substanceName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.verbatimName||void 0===Se.configSettingsDisplay.verbatimName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.substanceRole||void 0===Se.configSettingsDisplay.substanceRole&&!0),r.xp6(3),r.Q6J("routerLink",r.DdM(9,Ea)),r.xp6(4),r.Q6J("routerLink",r.DdM(10,ea)),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.comments||void 0===Se.configSettingsDisplay.comments&&Se.showAdvancedSettings))},directives:[e.O5,f.lW,T.gM,h.Hw,rn.Q,v.KE,J.Nt,j.Fj,j.JJ,j.On,si.S,_t.yS],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 0 8px}.form-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintopneg50px[_ngcontent-%COMP%]{margin-top:-50px}.marginleft45px[_ngcontent-%COMP%]{margin-left:45px}.marginleft30px[_ngcontent-%COMP%]{margin-left:30px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}"]}),st}(),tr=n(39233),da=n(56569),Na=n(91434),ta=n(1130);function fn(st,$t){1&st&&(r.TgZ(0,"div"),r._UZ(1,"hr"),r.qZA())}function yn(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",20),r._uU(1," Deleted\xa0 "),r.TgZ(2,"button",21),r.NdJ("click",function(){return r.CHM(ze),r.oxw().undoDelete()}),r._UZ(3,"mat-icon",22),r.qZA(),r.qZA()}}function Ct(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",23),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().updatePropertyName(de)}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.criticalParameter.name)}}function Pe(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",24),r._UZ(1,"input",25),r.qZA()),2&st){var ze=r.oxw();r.xp6(1),r.Q6J("formControl",ze.averageControl)}}function It(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",26),r._UZ(1,"input",27),r.qZA()),2&st){var ze=r.oxw();r.xp6(1),r.Q6J("formControl",ze.lowLimitControl)}}function Jt(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",28),r._UZ(1,"input",29),r.qZA()),2&st){var ze=r.oxw();r.xp6(1),r.Q6J("formControl",ze.highLimitControl)}}function vn(st,$t){if(1&st&&(r.TgZ(0,"mat-option",32),r._uU(1),r.qZA()),2&st){var ze=$t.$implicit;r.Q6J("value",ze.value),r.xp6(1),r.hij(" ",ze.display," ")}}function Vn(st,$t){if(1&st&&(r.TgZ(0,"mat-option",32),r._uU(1),r.qZA()),2&st){var ze=r.oxw(2);r.s9C("value",ze.privateSubstanceAmount.units),r.xp6(1),r.hij("",ze.privateSubstanceAmount.units," (not in CV)")}}function ui(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",30),r.TgZ(1,"mat-label"),r._uU(2,"Units"),r.qZA(),r.TgZ(3,"mat-select",31),r.TgZ(4,"mat-option",32),r.TgZ(5,"span",33),r._uU(6,"Clear selection"),r.qZA(),r.qZA(),r.YNc(7,vn,2,2,"mat-option",34),r.YNc(8,Vn,2,2,"mat-option",35),r.TgZ(9,"mat-option",36),r._uU(10,"Other (New Value)"),r.qZA(),r.qZA(),r.qZA()),2&st){var ze=r.oxw();r.xp6(3),r.Q6J("formControl",ze.unitsControl),r.xp6(1),r.Q6J("value",null),r.xp6(3),r.Q6J("ngForOf",ze.amountUnitList),r.xp6(1),r.Q6J("ngIf",ze.privateSubstanceAmount.units&&!ze.inCV(ze.amountUnitList,ze.privateSubstanceAmount.units)&&""!==ze.privateSubstanceAmount.units)}}function ki(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",37),r.TgZ(1,"input",38),r.NdJ("focusout",function(ae){return r.CHM(ze),r.oxw().updateUnits(ae.target)}),r.qZA(),r.qZA()}}function Ii(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",39),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().criticalParameter.propertyType=de}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.criticalParameter.propertyType)}}function ri(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",40),r.TgZ(1,"app-substance-selector",41),r.NdJ("selectionUpdated",function(de){return r.CHM(ze),r.oxw().relatedSubstanceUpdated(de)}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("subuuid",Se.relatedSubstanceUuid)}}function Ci(st,$t){if(1&st&&(r.TgZ(0,"mat-option",32),r._uU(1),r.qZA()),2&st){var ze=$t.$implicit;r.Q6J("value",ze.value),r.xp6(1),r.hij(" ",ze.display," ")}}function Wi(st,$t){if(1&st&&(r.TgZ(0,"mat-option",32),r._uU(1),r.qZA()),2&st){var ze=r.oxw(2);r.s9C("value",ze.privateSubstanceAmount.type),r.xp6(1),r.hij("",ze.privateSubstanceAmount.type," (not in CV)")}}function xa(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",42),r.TgZ(1,"mat-label"),r._uU(2,"Amount Type"),r.qZA(),r.TgZ(3,"mat-select",31),r.TgZ(4,"mat-option",32),r.TgZ(5,"span",33),r._uU(6,"Clear selection"),r.qZA(),r.qZA(),r.YNc(7,Ci,2,2,"mat-option",34),r.YNc(8,Wi,2,2,"mat-option",35),r.TgZ(9,"mat-option",36),r._uU(10,"Other (New Value)"),r.qZA(),r.qZA(),r.qZA()),2&st){var ze=r.oxw();r.xp6(3),r.Q6J("formControl",ze.typeControl),r.xp6(1),r.Q6J("value",null),r.xp6(3),r.Q6J("ngForOf",ze.amountTypeList),r.xp6(1),r.Q6J("ngIf",ze.privateSubstanceAmount.type&&!ze.inCV(ze.amountTypeList,ze.privateSubstanceAmount.type)&&""!==ze.privateSubstanceAmount.type)}}function oa(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",37),r.TgZ(1,"input",38),r.NdJ("focusout",function(ae){return r.CHM(ze),r.oxw().updateType(ae.target)}),r.qZA(),r.qZA()}}function Yi(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",43),r._UZ(1,"input",44),r.qZA()),2&st){var ze=r.oxw();r.xp6(1),r.Q6J("formControl",ze.lowControl)}}function sa(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",45),r._UZ(1,"input",46),r.qZA()),2&st){var ze=r.oxw();r.xp6(1),r.Q6J("formControl",ze.highControl)}}function Fi(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",47),r._UZ(1,"input",48),r.qZA()),2&st){var ze=r.oxw();r.xp6(1),r.Q6J("formControl",ze.nonNumericValueControl)}}function va(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(1),r.AsE(" \xa0- \xa0 ",ze.value.average," \xa0 ",ze.value.units," ")}}function Za(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," \xa0 - "),r.qZA())}function Qt(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," > "),r.qZA())}function Ot(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," < "),r.qZA())}function Xt(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&st){var ze=r.oxw(3).$implicit;r.xp6(1),r.hij(" ",ze.value.low," ")}}function Dn(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," \xa0to\xa0 "),r.qZA())}function Hn(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&st){var ze=r.oxw(3).$implicit;r.xp6(1),r.hij(" ",ze.value.high," ")}}function Gn(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&st){var ze=r.oxw(3).$implicit;r.xp6(1),r.hij(" \xa0 ",ze.value.units," \xa0 (average) ")}}function vi(st,$t){if(1&st&&(r.TgZ(0,"span"),r.YNc(1,Za,2,0,"span",0),r._uU(2," \xa0 [ "),r.YNc(3,Qt,2,0,"span",0),r.YNc(4,Ot,2,0,"span",0),r.YNc(5,Xt,2,1,"span",0),r.YNc(6,Dn,2,0,"span",0),r.YNc(7,Hn,2,1,"span",0),r._uU(8," ] "),r.YNc(9,Gn,2,1,"span",0),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(1),r.Q6J("ngIf",null==ze.value.average||""==ze.value.average),r.xp6(2),r.Q6J("ngIf",null==ze.value.high||""==ze.value.high),r.xp6(1),r.Q6J("ngIf",null==ze.value.low||""==ze.value.low),r.xp6(1),r.Q6J("ngIf",null!=ze.value.low&&""!=ze.value.low),r.xp6(1),r.Q6J("ngIf",null!=ze.value.low&&""!=ze.value.low&&null!=ze.value.high&&""!=ze.value.high),r.xp6(1),r.Q6J("ngIf",null!=ze.value.high&&""!=ze.value.high),r.xp6(2),r.Q6J("ngIf",null==ze.value.average||""==ze.value.average)}}function Vi(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," \xa0 (average) "),r.qZA())}function Zi(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," > "),r.qZA())}function Ai(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," < "),r.qZA())}function Ja(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&st){var ze=r.oxw(3).$implicit;r.xp6(1),r.hij(" ",ze.value.lowLimit," ")}}function ao(st,$t){1&st&&(r.TgZ(0,"span"),r._uU(1," \xa0to\xa0 "),r.qZA())}function za(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&st){var ze=r.oxw(3).$implicit;r.xp6(1),r.hij(" ",ze.value.highLimit," ")}}function fr(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1," \xa0- \xa0 [ "),r.YNc(2,Zi,2,0,"span",0),r.YNc(3,Ai,2,0,"span",0),r.YNc(4,Ja,2,1,"span",0),r.YNc(5,ao,2,0,"span",0),r.YNc(6,za,2,1,"span",0),r._uU(7," ] \xa0(limits) "),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(2),r.Q6J("ngIf",null==ze.value.highLimit||""==ze.value.highLimit),r.xp6(1),r.Q6J("ngIf",null==ze.value.lowLimit||""==ze.value.lowLimit),r.xp6(1),r.Q6J("ngIf",null!=ze.value.lowLimit&&""!=ze.value.lowLimit),r.xp6(1),r.Q6J("ngIf",null!=ze.value.lowLimit&&""!=ze.value.lowLimit&&null!=ze.value.highLimit&&""!=ze.value.highLimit),r.xp6(1),r.Q6J("ngIf",null!=ze.value.highLimit&&""!=ze.value.highLimit)}}function Or(st,$t){if(1&st&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&st){var ze=r.oxw(2).$implicit;r.xp6(1),r.hij(" \xa0-\xa0 ",ze.value.nonNumericValue," ")}}function Pr(st,$t){if(1&st&&(r.TgZ(0,"span"),r.TgZ(1,"span"),r._uU(2),r.qZA(),r.YNc(3,va,2,2,"span",0),r.YNc(4,vi,10,7,"span",0),r.YNc(5,Vi,2,0,"span",0),r.YNc(6,fr,8,5,"span",0),r.YNc(7,Or,2,1,"span",0),r.qZA()),2&st){var ze=r.oxw().$implicit;r.xp6(2),r.hij(" \xa0 ",ze.value.type," "),r.xp6(1),r.Q6J("ngIf",null!=ze.value.average&&""!=ze.value.average),r.xp6(1),r.Q6J("ngIf",null!=ze.value.low&&""!=ze.value.low||null!=ze.value.high&&""!=ze.value.high),r.xp6(1),r.Q6J("ngIf",null!=ze.value.average&&""!=ze.value.average),r.xp6(1),r.Q6J("ngIf",null!=ze.value.lowLimit&&""!=ze.value.lowLimit||null!=ze.value.highLimit&&""!=ze.value.highLimit),r.xp6(1),r.Q6J("ngIf",ze.value.nonNumericValue)}}function Dr(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",53),r.TgZ(1,"button",54),r.NdJ("click",function(){var ye=r.CHM(ze).index;return r.oxw(3).deleteParameter(ye)}),r._UZ(2,"mat-icon",5),r.qZA(),r.TgZ(3,"span"),r._uU(4),r.qZA(),r.YNc(5,Pr,8,6,"span",0),r.TgZ(6,"button",55),r.NdJ("click",function(){var ye=r.CHM(ze).$implicit;return r.oxw(3).openPropertyParameter(ye)}),r._UZ(7,"mat-icon",56),r.qZA(),r.qZA()}if(2&st){var Se=$t.$implicit;r.xp6(4),r.Oqu(Se.name),r.xp6(1),r.Q6J("ngIf",null!=Se.value)}}function Ga(st,$t){if(1&st&&(r.TgZ(0,"mat-list"),r.YNc(1,Dr,8,2,"div",52),r.qZA()),2&st){var ze=r.oxw(2);r.xp6(1),r.Q6J("ngForOf",ze.criticalParameter.parameters)}}function Rr(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",49),r.TgZ(1,"div"),r.TgZ(2,"h4"),r._uU(3," Parameters "),r.TgZ(4,"button",50),r.NdJ("click",function(){return r.CHM(ze),r.oxw().openPropertyParameter()}),r._UZ(5,"mat-icon",51),r.qZA(),r.qZA(),r.YNc(6,Ga,2,1,"mat-list",0),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(6),r.Q6J("ngIf",Se.criticalParameter.parameters)}}var Qo=function(){var st=function(){function $t(ze,Se,ae,de,ye,Be){(0,t.Z)(this,$t),this.substanceFormService=ze,this.substanceFormPropertiesService=Se,this.cvService=ae,this.configService=de,this.overlayContainerService=ye,this.dialog=Be,this.configSettingsDisplay={},this.subscriptions=[],this.amountTypeList=[],this.amountUnitList=[],this.typeControl=new j.NI(""),this.averageControl=new j.NI(""),this.lowControl=new j.NI(""),this.highControl=new j.NI(""),this.lowLimitControl=new j.NI(""),this.highLimitControl=new j.NI(""),this.unitsControl=new j.NI(""),this.nonNumericValueControl=new j.NI("")}return(0,P.Z)($t,[{key:"criticalParameter",get:function(){return this.privateCriticalParameter},set:function(Se){this.privateCriticalParameter=Se}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(Se){this.privateProcessIndex=Se}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(Se){this.privateSiteIndex=Se}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(Se){this.privateStageIndex=Se}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(Se){this.privateShowAdvancedSettings=Se,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var Se=this,ae=this.substanceFormService.substance.subscribe(function(de){Se.substance=de});this.subscriptions.push(ae),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.criticalParameter.value||(this.criticalParameter.value={}),this.privateSubstanceAmount=this.criticalParameter.value,this.setSubstanceAmount(),this.getVocabularies()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"getConfigSettings",value:function(){var Se=this,de=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.criteriaParameter;Object.keys(de).forEach(function(ye){null!=de[ye]&&("simple"===de[ye]?Se.configSettingsDisplay[ye]=!0:"advanced"===de[ye]?Se.configSettingsDisplay[ye]=!0===Se.privateShowAdvancedSettings:"removed"===de[ye]&&(Se.configSettingsDisplay[ye]=!1))})}},{key:"confirmDeleteCriticalParameter",value:function(){var Se=this;this.dialog.open(Un.$,{data:{message:"Are you sure you want to delele Critical Parameter "+(this.criticalParameterIndex+1)+" for Stage "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(de){de&&!0===de&&Se.deleteCriticalParameter()})}},{key:"deleteCriticalParameter",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].criticalParameters.splice(this.criticalParameterIndex,1)}},{key:"relatedSubstanceUpdated",value:function(Se){}},{key:"openPropertyParameter",value:function(Se){var de,ae=this;null==Se&&(de=!0,Se={value:{}});var ye=JSON.stringify(Se),Be=this.dialog.open(da.M,{data:JSON.parse(ye),width:"1200px"});this.overlayContainer.style.zIndex="1002",Be.afterClosed().subscribe(function(nt){ae.overlayContainer.style.zIndex=null,null!=nt&&(null==ae.criticalParameter.parameters&&(ae.criticalParameter.parameters=[]),de?ae.criticalParameter.parameters.unshift(nt):Object.keys(nt).forEach(function(Dt){Se[Dt]=nt[Dt]}))})}},{key:"deleteParameter",value:function(Se){this.criticalParameter.parameters.splice(Se,1)}},{key:"setSubstanceAmount",value:function(){var Se=this;this.typeControl.setValue(this.privateSubstanceAmount.type),this.typeControl.valueChanges.subscribe(function(ae){Se.privateSubstanceAmount.type=ae}),this.averageControl.setValue(this.privateSubstanceAmount.average),this.averageControl.valueChanges.subscribe(function(ae){(null===ae||1===ae.length&&ae.match(/[a-z]/i))&&Se.averageControl.setValue(""),Se.privateSubstanceAmount.average=ae}),this.lowControl.setValue(this.privateSubstanceAmount.low),this.lowControl.valueChanges.subscribe(function(ae){(null===ae||1===ae.length&&ae.match(/[a-z]/i))&&Se.lowControl.setValue(""),Se.privateSubstanceAmount.low=ae}),this.highControl.setValue(this.privateSubstanceAmount.high),this.highControl.valueChanges.subscribe(function(ae){(null===ae||1===ae.length&&ae.match(/[a-z]/i))&&Se.highControl.setValue(""),Se.privateSubstanceAmount.high=ae}),this.lowLimitControl.setValue(this.privateSubstanceAmount.lowLimit),this.lowLimitControl.valueChanges.subscribe(function(ae){(null===ae||1===ae.length&&ae.match(/[a-z]/i))&&Se.lowLimitControl.setValue(""),Se.privateSubstanceAmount.lowLimit=ae}),this.highLimitControl.setValue(this.privateSubstanceAmount.highLimit),this.highLimitControl.valueChanges.subscribe(function(ae){(null===ae||1===ae.length&&ae.match(/[a-z]/i))&&Se.highLimitControl.setValue(""),Se.privateSubstanceAmount.highLimit=ae}),this.unitsControl.setValue(this.privateSubstanceAmount.units),this.unitsControl.valueChanges.subscribe(function(ae){Se.privateSubstanceAmount.units=ae}),this.nonNumericValueControl.setValue(this.privateSubstanceAmount.nonNumericValue),this.nonNumericValueControl.valueChanges.subscribe(function(ae){Se.privateSubstanceAmount.nonNumericValue=ae})}},{key:"substanceAmount",get:function(){return this.privateSubstanceAmount}},{key:"updateAccess",value:function(Se){this.privateSubstanceAmount.access=Se,this.substanceAmount.access=Se}},{key:"updateType",value:function(Se){var ae=this;setTimeout(function(){ae.typeControl.setValue(Se.value)}),this.privateSubstanceAmount.type=Se.value}},{key:"updateUnits",value:function(Se){var ae=this;setTimeout(function(){ae.unitsControl.setValue(Se.value)}),this.privateSubstanceAmount.units=Se.value}},{key:"updatePropertyName",value:function(Se){var ae=this;this.criticalParameter.propertyType=Se,Se&&"Temperature"===Se&&setTimeout(function(){ae.unitsControl.setValue("\xb0C")})}},{key:"getVocabularies",value:function(){var Se=this;this.cvService.getDomainVocabulary("AMOUNT_TYPE","AMOUNT_UNIT").subscribe(function(ae){Se.amountTypeList=ae.AMOUNT_TYPE.list,Se.amountUnitList=ae.AMOUNT_UNIT.list})}},{key:"inCV",value:function(Se,ae){return Se.some(function(de){return ae===de.value})}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(H.B),r.Y36(tr.S),r.Y36(Jn.I),r.Y36(X.E),r.Y36(Ee.Xj),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-critical-parameter-form"]],inputs:{criticalParameterIndex:"criticalParameterIndex",criticalParameter:"criticalParameter",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:24,vars:17,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","width180px padright20px","domain","SSG_CRITICAL_PROPERTY_NAME","required","true","title","Property Name",3,"model","valueChange",4,"ngIf"],["class","amount-average col-5-1",4,"ngIf"],["class","low-limit col-5-1",4,"ngIf"],["class","high-limit col-5-1",4,"ngIf"],["class","amount-units width130px",4,"ngIf"],["class","custom",4,"ngIf"],["class","col-3-1","domain","PROPERTY_TYPE","required","true","title","Property Type",3,"model","valueChange",4,"ngIf"],["class","col-3-1 related-substance",4,"ngIf"],["class","col-3-1",4,"ngIf"],["class","low col-3-1",4,"ngIf"],["class","high col-3-1",4,"ngIf"],["class","non-numeric-value col-3-1",4,"ngIf"],["class","form-row padleft15px",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],["domain","SSG_CRITICAL_PROPERTY_NAME","required","true","title","Property Name",1,"width180px","padright20px",3,"model","valueChange"],[1,"amount-average","col-5-1"],["type","number","matInput","","placeholder","Average",3,"formControl"],[1,"low-limit","col-5-1"],["type","number","matInput","","placeholder","Low Limit",3,"formControl"],[1,"high-limit","col-5-1"],["type","number","matInput","","placeholder","High Limit",3,"formControl"],[1,"amount-units","width130px"],[3,"formControl"],[3,"value"],[1,"deselect"],[3,"value",4,"ngFor","ngForOf"],[3,"value",4,"ngIf"],["value","other"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"],["domain","PROPERTY_TYPE","required","true","title","Property Type",1,"col-3-1",3,"model","valueChange"],[1,"col-3-1","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Referenced Substance","header","Reference Substance",3,"subuuid","selectionUpdated"],[1,"col-3-1"],[1,"low","col-3-1"],["type","number","matInput","","placeholder","Low",3,"formControl"],[1,"high","col-3-1"],["type","number","matInput","","placeholder","High",3,"formControl"],[1,"non-numeric-value","col-3-1"],["matInput","","placeholder","Non-numeric Value",3,"formControl"],[1,"form-row","padleft15px"],["mat-icon-button","","matTooltip","Add parameter",3,"click"],["svgIcon","add_circle_outline"],["mat-list-item","",4,"ngFor","ngForOf"],["mat-list-item",""],["mat-icon-button","",1,"parameter-delete-icon",3,"click"],["mat-icon-button","",1,"parameter-icon",3,"click"],["svgIcon","edit"]],template:function(ze,Se){1&ze&&(r.YNc(0,fn,2,0,"div",0),r.TgZ(1,"div",1),r.YNc(2,yn,4,0,"div",2),r.TgZ(3,"div",3),r.TgZ(4,"div",3),r.TgZ(5,"button",4),r.NdJ("click",function(){return Se.confirmDeleteCriticalParameter()}),r._UZ(6,"mat-icon",5),r.qZA(),r.qZA(),r.qZA(),r.TgZ(7,"div",6),r.YNc(8,Ct,1,1,"app-cv-input",7),r.YNc(9,Pe,2,1,"mat-form-field",8),r.YNc(10,It,2,1,"mat-form-field",9),r.YNc(11,Jt,2,1,"mat-form-field",10),r.YNc(12,ui,11,4,"mat-form-field",11),r.YNc(13,ki,2,0,"div",12),r.qZA(),r.TgZ(14,"div",6),r.YNc(15,Ii,1,1,"app-cv-input",13),r.YNc(16,ri,2,1,"div",14),r.YNc(17,xa,11,4,"mat-form-field",15),r.YNc(18,oa,2,0,"div",12),r.qZA(),r.TgZ(19,"div",6),r.YNc(20,Yi,2,1,"mat-form-field",16),r.YNc(21,sa,2,1,"mat-form-field",17),r.YNc(22,Fi,2,1,"mat-form-field",18),r.qZA(),r.YNc(23,Rr,7,1,"div",19),r.qZA()),2&ze&&(r.Q6J("ngIf",Se.criticalParameterIndex>0),r.xp6(2),r.Q6J("ngIf",Se.criticalParameter.$$deletedCode),r.xp6(3),r.MGl("matTooltip","Delete Critical Parameter ",Se.criticalParameterIndex+1,""),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.propertyName||void 0===Se.configSettingsDisplay.propertyName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.average||void 0===Se.configSettingsDisplay.average&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.lowLimit||void 0===Se.configSettingsDisplay.lowLimit&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.highLimit||void 0===Se.configSettingsDisplay.highLimit&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.units||void 0===Se.configSettingsDisplay.units&&!0),r.xp6(1),r.Q6J("ngIf","other"===Se.privateSubstanceAmount.units),r.xp6(2),r.Q6J("ngIf",Se.configSettingsDisplay.propertyType||void 0===Se.configSettingsDisplay.propertyType&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.referencedSubstance||void 0===Se.configSettingsDisplay.referencedSubstance&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.amountType||void 0===Se.configSettingsDisplay.amountType&&!0),r.xp6(1),r.Q6J("ngIf","other"===Se.privateSubstanceAmount.type),r.xp6(2),r.Q6J("ngIf",Se.configSettingsDisplay.low||void 0===Se.configSettingsDisplay.low&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.high||void 0===Se.configSettingsDisplay.high&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.nonNumericValue||void 0===Se.configSettingsDisplay.nonNumericValue&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.parameters||void 0===Se.configSettingsDisplay.parameters&&!0))},directives:[e.O5,f.lW,T.gM,h.Hw,si.S,v.KE,j.wV,J.Nt,j.Fj,j.JJ,j.oH,v.hX,Na.gD,ta.ey,e.sg,rn.Q],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col-5-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.width130px[_ngcontent-%COMP%]{width:130px}.width180px[_ngcontent-%COMP%]{width:180px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.padleftneg10[_ngcontent-%COMP%]{padding-left:-10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}fieldset.border[_ngcontent-%COMP%]{border:solid 1px #218814!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0;box-shadow:2px 2px 3px 1px #6e686ea3}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#16997d;font-family:Verdana;font-weight:700;margin-bottom:10px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}"]}),st}();function fo(st,$t){1&st&&(r.TgZ(0,"div"),r._UZ(1,"hr"),r.qZA())}function eo(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",19),r._uU(1," Deleted\xa0 "),r.TgZ(2,"button",20),r.NdJ("click",function(){return r.CHM(ze),r.oxw().undoDelete()}),r._UZ(3,"mat-icon",21),r.qZA(),r.qZA()}}function Wo(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",22),r.TgZ(1,"input",23),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().stage.stageNumber=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.MGl("placeholder","",Se.configTitleStage," Number"),r.Q6J("ngModel",Se.stage.stageNumber)}}function ya(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",24),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().stage.stageType=de}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.stage.stageType)}}function pa(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",25),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().stage.stageRole=de}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.stage.stageRole)}}function Ur(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",22),r.TgZ(1,"input",26),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().stage.equipment=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.stage.equipment)}}function yr(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",7),r.TgZ(1,"mat-form-field",27),r.TgZ(2,"textarea",28),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().stage.stageComments=de}),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(2),r.Q6J("ngModel",Se.stage.stageComments)}}function mo(st,$t){if(1&st&&(r.TgZ(0,"div",29),r._UZ(1,"app-ssg4m-starting-materials-form",30),r.qZA()),2&st){var ze=$t.$implicit,Se=$t.index,ae=r.oxw();r.xp6(1),r.Q6J("startingMaterial",ze)("processIndex",ae.processIndex)("siteIndex",ae.siteIndex)("stageIndex",ae.stageIndex)("startingMaterialIndex",Se)("showAdvancedSettings",ae.showAdvancedSettings)}}function mr(st,$t){if(1&st&&(r.TgZ(0,"div",29),r._UZ(1,"app-ssg4m-processing-materials-form",31),r.qZA()),2&st){var ze=$t.$implicit,Se=$t.index,ae=r.oxw();r.xp6(1),r.Q6J("processingMaterial",ze)("processIndex",ae.processIndex)("siteIndex",ae.siteIndex)("stageIndex",ae.stageIndex)("processingMaterialIndex",Se)("showAdvancedSettings",ae.showAdvancedSettings)}}function ro(st,$t){if(1&st&&(r.TgZ(0,"div",29),r._UZ(1,"app-ssg4m-resulting-materials-form",32),r.qZA()),2&st){var ze=$t.$implicit,Se=$t.index,ae=r.oxw();r.xp6(1),r.Q6J("resultingMaterial",ze)("processIndex",ae.processIndex)("siteIndex",ae.siteIndex)("stageIndex",ae.stageIndex)("resultingMaterialIndex",Se)("showAdvancedSettings",ae.showAdvancedSettings)}}function zo(st,$t){if(1&st&&(r.TgZ(0,"div",29),r._UZ(1,"app-ssg4m-critical-parameter-form",33),r.qZA()),2&st){var ze=$t.$implicit,Se=$t.index,ae=r.oxw();r.xp6(1),r.Q6J("criticalParameter",ze)("processIndex",ae.processIndex)("siteIndex",ae.siteIndex)("stageIndex",ae.stageIndex)("criticalParameterIndex",Se)("showAdvancedSettings",ae.showAdvancedSettings)}}var ho=function(){var st=function(){function $t(ze,Se,ae,de,ye,Be,nt){(0,t.Z)(this,$t),this.substanceFormSsg4mStagesService=ze,this.substanceFormService=Se,this.gaService=ae,this.overlayContainerService=de,this.scrollToService=ye,this.configService=Be,this.dialog=nt,this.configSettingsDisplay={},this.subscriptions=[]}return(0,P.Z)($t,[{key:"stage",get:function(){return this.privateStage},set:function(Se){this.privateStage=Se}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(Se){this.privateProcessIndex=Se}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(Se){this.privateSiteIndex=Se}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(Se){this.privateStageIndex=Se,this.privateStage.stageNumber=String(this.privateStageIndex+1)}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(Se){this.privateShowAdvancedSettings=Se,this.getConfigSettings()}},{key:"tabSelectedView",get:function(){return this.privateTabSelectedView},set:function(Se){this.privateTabSelectedView=Se}},{key:"ngOnInit",value:function(){var Se=this,ae=this.substanceFormService.substance.subscribe(function(de){Se.substance=de});this.subscriptions.push(ae),this.configSsg4Form=this.configService.configData&&this.configService.configData.ssg4Form||null,this.configTitleStage="Stage",this.configTitleProcessingMaterials="Processing Materials",this.configSsg4Form&&(this.configTitleStage=this.configSsg4Form.titles.stage||null,this.configTitleStage||(this.configTitleStage="Stage"),this.configTitleProcessingMaterials=this.configSsg4Form.titles.processingMaterials||null,this.configTitleProcessingMaterials||(this.configTitleProcessingMaterials="Processing Materials"))}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"getConfigSettings",value:function(){var Se=this,de=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.stage;Object.keys(de).forEach(function(ye){null!=de[ye]&&("simple"===de[ye]?Se.configSettingsDisplay[ye]=!0:"advanced"===de[ye]?Se.configSettingsDisplay[ye]=!0===Se.privateShowAdvancedSettings:"removed"===de[ye]&&(Se.configSettingsDisplay[ye]=!1))})}},{key:"addCriticalParameter",value:function(Se,ae,de){var ye=this;this.substanceFormSsg4mStagesService.addCriticalParameter(Se,ae,de),setTimeout(function(){ye.scrollToService.scrollToElement("substance-process-site-stage-criticalParam-0","center")})}},{key:"addStartingMaterial",value:function(Se,ae,de){var ye=this;this.substanceFormSsg4mStagesService.addStartingMaterials(Se,ae,de),setTimeout(function(){ye.scrollToService.scrollToElement("substance-process-site-stage-startMat-0","center")})}},{key:"addProcessingMaterial",value:function(Se,ae,de){var ye=this;this.substanceFormSsg4mStagesService.addProcessingMaterials(Se,ae,de),setTimeout(function(){ye.scrollToService.scrollToElement("substance-process-site-stage-processMat-0","center")})}},{key:"addResultingMaterial",value:function(Se,ae,de){var ye=this;this.substanceFormSsg4mStagesService.addResultingMaterials(Se,ae,de),setTimeout(function(){ye.scrollToService.scrollToElement("substance-process-site-stage-resultMat-0","center")})}},{key:"confirmDeleteStage",value:function(){var Se=this;this.dialog.open(Un.$,{data:{message:"Are you sure you want to delele Stage "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(de){de&&!0===de&&Se.deleteStage()})}},{key:"deleteStage",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages.splice(this.stageIndex,1)}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(fi),r.Y36(H.B),r.Y36(ce.$),r.Y36(Ee.Xj),r.Y36(Tn.i),r.Y36(X.E),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-stages-form"]],inputs:{stage:"stage",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings",tabSelectedView:"tabSelectedView"},decls:67,vars:18,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","col-4-1",4,"ngIf"],["class","col-4-1","domain","SSG_STAGE_TYPE","title","Stage Type","name","stageType",3,"model","valueChange",4,"ngIf"],["class","col-4-1","domain","SSG_STAGE_ROLE","title","Stage Role","name","stageRole",3,"model","valueChange",4,"ngIf"],["class","form-row",4,"ngIf"],[1,"border"],["matBadgeOverlap","false",3,"matBadge"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"divflex"],[1,"middle-fill"],["mat-stroked-button","","color","primary",1,"button-add",3,"click"],["svgIcon","add_circle_outline"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col-4-1"],["matInput","","name","stage.stageNumber",3,"placeholder","ngModel","ngModelChange"],["domain","SSG_STAGE_TYPE","title","Stage Type","name","stageType",1,"col-4-1",3,"model","valueChange"],["domain","SSG_STAGE_ROLE","title","Stage Role","name","stageRole",1,"col-4-1",3,"model","valueChange"],["matInput","","placeholder","Equipment","name","stage.equipment",3,"ngModel","ngModelChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","stage.stageComments","rows","1",3,"ngModel","ngModelChange"],[1,"marginbottom10px"],[3,"startingMaterial","processIndex","siteIndex","stageIndex","startingMaterialIndex","showAdvancedSettings"],[3,"processingMaterial","processIndex","siteIndex","stageIndex","processingMaterialIndex","showAdvancedSettings"],[3,"resultingMaterial","processIndex","siteIndex","stageIndex","resultingMaterialIndex","showAdvancedSettings"],[3,"criticalParameter","processIndex","siteIndex","stageIndex","criticalParameterIndex","showAdvancedSettings"]],template:function(ze,Se){1&ze&&(r.YNc(0,fo,2,0,"div",0),r.TgZ(1,"div"),r.TgZ(2,"div",1),r.YNc(3,eo,4,0,"div",2),r.TgZ(4,"div",3),r.TgZ(5,"div",4),r.TgZ(6,"button",5),r.NdJ("click",function(){return Se.confirmDeleteStage()}),r._UZ(7,"mat-icon",6),r.qZA(),r.qZA(),r.qZA(),r.TgZ(8,"div",7),r.YNc(9,Wo,2,2,"mat-form-field",8),r.YNc(10,ya,1,1,"app-cv-input",9),r.YNc(11,pa,1,1,"app-cv-input",10),r.YNc(12,Ur,2,1,"mat-form-field",8),r.qZA(),r.YNc(13,yr,3,1,"div",11),r.TgZ(14,"div",3),r.TgZ(15,"fieldset",12),r.TgZ(16,"legend",12),r.TgZ(17,"span",13),r.TgZ(18,"span",3),r.TgZ(19,"b"),r._uU(20,"Starting Materials"),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.YNc(21,mo,2,6,"div",14),r.TgZ(22,"div",15),r._UZ(23,"span",16),r.TgZ(24,"button",17),r.NdJ("click",function(){return Se.addStartingMaterial(Se.processIndex,Se.siteIndex,Se.stageIndex)}),r._UZ(25,"mat-icon",18),r._uU(26,"Add Starting Material "),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.TgZ(27,"div",3),r.TgZ(28,"fieldset",12),r.TgZ(29,"legend",12),r.TgZ(30,"span",13),r.TgZ(31,"span",3),r.TgZ(32,"b"),r._uU(33),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.YNc(34,mr,2,6,"div",14),r.TgZ(35,"div",15),r._UZ(36,"span",16),r.TgZ(37,"button",17),r.NdJ("click",function(){return Se.addProcessingMaterial(Se.processIndex,Se.siteIndex,Se.stageIndex)}),r._UZ(38,"mat-icon",18),r._uU(39),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.TgZ(40,"div",3),r.TgZ(41,"fieldset",12),r.TgZ(42,"legend",12),r.TgZ(43,"span",13),r.TgZ(44,"span",3),r.TgZ(45,"b"),r._uU(46,"Resulting Materials"),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.YNc(47,ro,2,6,"div",14),r.TgZ(48,"div",15),r._UZ(49,"span",16),r.TgZ(50,"button",17),r.NdJ("click",function(){return Se.addResultingMaterial(Se.processIndex,Se.siteIndex,Se.stageIndex)}),r._UZ(51,"mat-icon",18),r._uU(52,"Add Resulting Material "),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.TgZ(53,"div",3),r.TgZ(54,"fieldset",12),r.TgZ(55,"legend",12),r.TgZ(56,"b"),r._uU(57,"Process Controls"),r.qZA(),r._uU(58,"\xa0 "),r._UZ(59,"span",13),r.qZA(),r.YNc(60,zo,2,6,"div",14),r.TgZ(61,"div",15),r._UZ(62,"span",16),r.TgZ(63,"button",17),r.NdJ("click",function(){return Se.addCriticalParameter(Se.processIndex,Se.siteIndex,Se.stageIndex)}),r._UZ(64,"mat-icon",18),r._uU(65,"Add Process Control "),r.qZA(),r.qZA(),r.qZA(),r._UZ(66,"br"),r.qZA(),r.qZA(),r.qZA()),2&ze&&(r.Q6J("ngIf",Se.privateStageIndex>0),r.xp6(3),r.Q6J("ngIf",Se.stage.$$deletedCode),r.xp6(3),r.MGl("matTooltip","Delete Stage ",Se.privateStageIndex+1,""),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.stageNumber||void 0===Se.configSettingsDisplay.stageNumber&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.stageType||void 0===Se.configSettingsDisplay.stageType&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.stageRole||void 0===Se.configSettingsDisplay.stageRole&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.stageEquipment||void 0===Se.configSettingsDisplay.stageEquipment&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.stageComments||void 0===Se.configSettingsDisplay.stageComments&&Se.showAdvancedSettings),r.xp6(4),r.s9C("matBadge",Se.stage.startingMaterials.length),r.xp6(4),r.Q6J("ngForOf",Se.stage.startingMaterials),r.xp6(9),r.s9C("matBadge",Se.stage.processingMaterials.length),r.xp6(3),r.Oqu(Se.configTitleProcessingMaterials),r.xp6(1),r.Q6J("ngForOf",Se.stage.processingMaterials),r.xp6(5),r.hij("Add ",Se.configTitleProcessingMaterials," "),r.xp6(4),r.s9C("matBadge",Se.stage.resultingMaterials.length),r.xp6(4),r.Q6J("ngForOf",Se.stage.resultingMaterials),r.xp6(12),r.s9C("matBadge",Se.stage.criticalParameters.length),r.xp6(1),r.Q6J("ngForOf",Se.stage.criticalParameters))},directives:[e.O5,f.lW,T.gM,h.Hw,v.KE,J.Nt,j.Fj,j.JJ,j.On,si.S,B.k,e.sg,pt,An,ja,Qo],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:10px}.references-container[_ngcontent-%COMP%]{width:100%}.materialborder[_ngcontent-%COMP%]{padding-top:10px;margin-top:15px;border:2px solid #b6afaf}.materialtitle[_ngcontent-%COMP%]{font-size:18px;padding-left:10px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderorange[_ngcontent-%COMP%]{border:1px solid orangered}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.colorgreen[_ngcontent-%COMP%]{color:green}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:25px;margin-right:25px;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 1px #218814!important;padding:0 10px 10px;border-bottom:none;border-radius:3px;margin-top:30px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}"]}),st}();function _o(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",18),r.TgZ(1,"input",19),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().site.siteName=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.site.siteName)}}function Ta(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",20),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().site.siteIdType=de}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.site.siteIdType)}}function wr(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",18),r.TgZ(1,"input",21),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().site.siteId=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.site.siteId)}}function ia(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",18),r.TgZ(1,"input",22),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().site.siteAddress=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.site.siteAddress)}}function Aa(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",18),r.TgZ(1,"input",23),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().site.gpsSiteLocation=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.site.gpsSiteLocation)}}function Ra(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",24),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().site.siteClearance=de}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.site.siteClearance)}}function Ma(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",25),r.TgZ(1,"textarea",26),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().site.siteComments=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.site.siteComments)}}function oo(st,$t){if(1&st&&(r.TgZ(0,"span"),r.TgZ(1,"b"),r.TgZ(2,"span",27),r._uU(3),r.qZA(),r.qZA(),r._uU(4," \xa0\xa0 "),r.qZA()),2&st){var ze=r.oxw();r.xp6(3),r.Oqu(ze.site.stages.length)}}function ko(st,$t){if(1&st&&(r.TgZ(0,"div",28),r._UZ(1,"app-ssg4m-stages-form",29),r.qZA()),2&st){var ze=$t.$implicit,Se=$t.index,ae=r.oxw();r.xp6(1),r.Q6J("stage",ze)("processIndex",ae.processIndex)("siteIndex",ae.siteIndex)("stageIndex",Se)("showAdvancedSettings",ae.showAdvancedSettings)("tabSelectedView",ae.tabSelectedView)}}var br=function(){var st=function(){function $t(ze,Se,ae,de,ye,Be,nt,Dt){(0,t.Z)(this,$t),this.substanceFormSsg4mSitesService=ze,this.substanceFormSsg4mStagesService=Se,this.substanceFormService=ae,this.gaService=de,this.overlayContainerService=ye,this.scrollToService=Be,this.configService=nt,this.dialog=Dt,this.tabSelectedIndexOut=new r.vpe,this.configSettingsDisplay={},this.subscriptions=[]}return(0,P.Z)($t,[{key:"site",get:function(){return this.privateSite},set:function(Se){this.privateSite=Se}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(Se){this.privateProcessIndex=Se}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(Se){this.privateSiteIndex=Se,this.privateSite.siteName="Site "+(this.privateSiteIndex+1)}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(Se){this.privateShowAdvancedSettings=Se,this.getConfigSettings()}},{key:"tabSelectedView",get:function(){return this.privateTabSelectedView},set:function(Se){this.privateTabSelectedView=Se}},{key:"ngOnInit",value:function(){var de,Se=this,ae=this.substanceFormService.substance.subscribe(function(ye){Se.substance=ye});this.subscriptions.push(ae),de=this.configService.configData&&this.configService.configData.ssg4Form||null,this.configTitleStage="Stage",de&&(this.configTitleStage=de.titles.stage||null,this.configTitleStage||(this.configTitleStage="Stage"))}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"getConfigSettings",value:function(){var Se=this,de=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.site;Object.keys(de).forEach(function(ye){null!=de[ye]&&("simple"===de[ye]?Se.configSettingsDisplay[ye]=!0:"advanced"===de[ye]?Se.configSettingsDisplay[ye]=!0===Se.privateShowAdvancedSettings:"removed"===de[ye]&&(Se.configSettingsDisplay[ye]=!1))})}},{key:"addStage",value:function(Se,ae){var de=this;this.substanceFormSsg4mStagesService.addStage(Se,ae),setTimeout(function(){de.scrollToService.scrollToElement("stage-0","center")})}},{key:"confirmDeleteSite",value:function(){var Se=this;this.dialog.open(Un.$,{data:{message:"Are you sure you want to delele Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(de){de&&!0===de&&Se.deleteSite()})}},{key:"deleteSite",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites.splice(this.siteIndex,1)}},{key:"showSchemePreview",value:function(){this.tabSelectedIndexOut.emit(1)}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(Y),r.Y36(fi),r.Y36(H.B),r.Y36(ce.$),r.Y36(Ee.Xj),r.Y36(Tn.i),r.Y36(X.E),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-sites"]],inputs:{site:"site",processIndex:"processIndex",siteIndex:"siteIndex",showAdvancedSettings:"showAdvancedSettings",tabSelectedView:"tabSelectedView"},outputs:{tabSelectedIndexOut:"tabSelectedIndexOut"},decls:28,vars:12,consts:[[1,"form-container"],[1,""],[1,"button-delete"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","col-3-1",4,"ngIf"],["class","col-3-1","domain","SSG_SITE_ID_TYPE","title","Site ID Type","name","siteIdType",3,"model","valueChange",4,"ngIf"],["class","col-3-1","domain","SSG_SITE_CLEARANCE","title","Site Clearance","name","siteClearance",3,"model","valueChange",4,"ngIf"],["class","col-1-1",4,"ngIf"],[1,"border"],[4,"ngIf"],["mat-button","",1,"buttonstyle",3,"click"],["class","margintop10px marginbottom30px",4,"ngFor","ngForOf"],[1,"divflex"],[1,"middle-fill"],["mat-stroked-button","","color","primary",1,"button-add",3,"click"],["svgIcon","add_circle_outline"],[1,"col-3-1"],["matInput","","placeholder","Site Name","name","site.siteName",3,"ngModel","ngModelChange"],["domain","SSG_SITE_ID_TYPE","title","Site ID Type","name","siteIdType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Site ID","name","site.siteId",3,"ngModel","ngModelChange"],["matInput","","placeholder","Site Address","name","site.siteAddress",3,"ngModel","ngModelChange"],["matInput","","placeholder","GPS Site Location","name","site.gpsSiteLocation",3,"ngModel","ngModelChange"],["domain","SSG_SITE_CLEARANCE","title","Site Clearance","name","siteClearance",1,"col-3-1",3,"model","valueChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","site.siteComments","rows","1",3,"ngModel","ngModelChange"],[1,"colorgreen","font17px"],[1,"margintop10px","marginbottom30px"],[3,"stage","processIndex","siteIndex","stageIndex","showAdvancedSettings","tabSelectedView"]],template:function(ze,Se){1&ze&&(r.TgZ(0,"div",0),r.TgZ(1,"div",1),r.TgZ(2,"div",2),r.TgZ(3,"button",3),r.NdJ("click",function(){return Se.confirmDeleteSite()}),r._UZ(4,"mat-icon",4),r.qZA(),r.qZA(),r.qZA(),r.TgZ(5,"div",5),r.YNc(6,_o,2,1,"mat-form-field",6),r.YNc(7,Ta,1,1,"app-cv-input",7),r.YNc(8,wr,2,1,"mat-form-field",6),r.qZA(),r.TgZ(9,"div",5),r.YNc(10,ia,2,1,"mat-form-field",6),r.YNc(11,Aa,2,1,"mat-form-field",6),r.YNc(12,Ra,1,1,"app-cv-input",8),r.qZA(),r.TgZ(13,"div",5),r.YNc(14,Ma,2,1,"mat-form-field",9),r.qZA(),r.TgZ(15,"div"),r.TgZ(16,"fieldset",10),r.TgZ(17,"legend",10),r._uU(18),r.YNc(19,oo,5,1,"span",11),r.TgZ(20,"button",12),r.NdJ("click",function(){return Se.showSchemePreview()}),r._uU(21," Step View "),r.qZA(),r.qZA(),r.YNc(22,ko,2,6,"div",13),r.TgZ(23,"div",14),r._UZ(24,"span",15),r.TgZ(25,"button",16),r.NdJ("click",function(){return Se.addStage(Se.processIndex,Se.siteIndex)}),r._UZ(26,"mat-icon",17),r._uU(27),r.qZA(),r.qZA(),r.qZA(),r.qZA(),r.qZA()),2&ze&&(r.xp6(3),r.MGl("matTooltip","Delete Site ",Se.siteIndex+1,""),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.siteName||void 0===Se.configSettingsDisplay.siteName&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.siteIdType||void 0===Se.configSettingsDisplay.siteIdType&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.siteId||void 0===Se.configSettingsDisplay.siteId&&Se.showAdvancedSettings),r.xp6(2),r.Q6J("ngIf",Se.configSettingsDisplay.siteAddress||void 0===Se.configSettingsDisplay.siteAddress&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.gpsSiteLocation||void 0===Se.configSettingsDisplay.gpsSiteLocation&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.siteClearance||void 0===Se.configSettingsDisplay.siteClearance&&Se.showAdvancedSettings),r.xp6(2),r.Q6J("ngIf",Se.configSettingsDisplay.siteComments||void 0===Se.configSettingsDisplay.siteComments&&Se.showAdvancedSettings),r.xp6(4),r.hij("",Se.configTitleStage,"\xa0 "),r.xp6(1),r.Q6J("ngIf",Se.site.stages.length>0),r.xp6(3),r.Q6J("ngForOf",Se.site.stages),r.xp6(5),r.hij("Add ",Se.configTitleStage," "))},directives:[f.lW,T.gM,h.Hw,e.O5,v.KE,J.Nt,j.Fj,j.JJ,j.On,si.S,e.sg,ho],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;margin-bottom:10px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted orangered;color:#333;overflow:visible;text-align:center;height:5px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.buttonstyle[_ngcontent-%COMP%]{border:2px solid #4148a7;background-color:#f1f1fa}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.marginbottom30px[_ngcontent-%COMP%]{margin-bottom:30px}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:25px;margin-right:25px;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 2px #3caa09!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px;text-align:center}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}"]}),st}();function Er(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",9),r._uU(1," Deleted\xa0 "),r.TgZ(2,"button",10),r.NdJ("click",function(){return r.CHM(ze),r.oxw().undoDelete()}),r._UZ(3,"mat-icon",11),r.qZA(),r.qZA()}}function Tt(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",12),r.TgZ(1,"input",13),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().process.processName=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.process.processName)}}function Ke(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",14),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().process.processRole=de}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.process.processRole)}}function oe(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"app-cv-input",15),r.NdJ("valueChange",function(de){return r.CHM(ze),r.oxw().process.processType=de}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("model",Se.process.processType)}}function Ce(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",16),r.TgZ(1,"input",17),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().process.processDescription=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.process.processDescription)}}function at(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-form-field",16),r.TgZ(1,"textarea",18),r.NdJ("ngModelChange",function(de){return r.CHM(ze),r.oxw().process.processComments=de}),r.qZA(),r.qZA()}if(2&st){var Se=r.oxw();r.xp6(1),r.Q6J("ngModel",Se.process.processComments)}}function ee(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",24),r._UZ(1,"span",25),r.TgZ(2,"button",26),r.NdJ("click",function(){return r.CHM(ze),r.oxw(2).addSite()}),r._UZ(3,"mat-icon",27),r._uU(4,"Add Site "),r.qZA(),r.qZA()}}function me(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",19),r.TgZ(1,"fieldset",20),r.TgZ(2,"legend",20),r._uU(3,"Site \xa0"),r.TgZ(4,"b"),r.TgZ(5,"span",21),r._uU(6),r.qZA(),r.qZA(),r.qZA(),r.TgZ(7,"app-ssg4m-sites",22),r.NdJ("tabSelectedIndexOut",function(Be){return r.CHM(ze),r.oxw().tabSelectedIndexOutChange(Be)}),r.qZA(),r.YNc(8,ee,5,0,"div",23),r.qZA(),r.qZA()}if(2&st){var Se=$t.$implicit,ae=$t.index,de=r.oxw();r.xp6(6),r.AsE("",ae+1," of ",de.process.sites.length,""),r.xp6(1),r.Q6J("site",Se)("processIndex",de.processIndex)("siteIndex",ae)("showAdvancedSettings",de.showAdvancedSettings)("tabSelectedView",de.tabSelectedView),r.xp6(1),r.Q6J("ngIf",de.showAdvancedSettings)}}var Ne=function(){var st=function(){function $t(ze,Se,ae,de,ye,Be,nt,Dt,cn){(0,t.Z)(this,$t),this.substanceFormSsg4mProcessService=ze,this.substanceFormSsg4mSitesService=Se,this.substanceFormService=ae,this.configService=de,this.gaService=ye,this.cvService=Be,this.overlayContainerService=nt,this.scrollToService=Dt,this.dialog=cn,this.tabSelectedIndexOut=new r.vpe,this.configSettingsDisplay={},this.subscriptions=[]}return(0,P.Z)($t,[{key:"ngAfterViewInit",value:function(){}},{key:"process",get:function(){return this.privateProcess},set:function(Se){this.privateProcess=Se}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(Se){this.privateProcessIndex=Se,this.privateProcess.processName="Process "+(this.processIndex+1)}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(Se){this.privateShowAdvancedSettings=Se,this.getConfigSettings()}},{key:"tabSelectedView",get:function(){return this.privateTabSelectedView},set:function(Se){this.privateTabSelectedView=Se}},{key:"ngOnInit",value:function(){var Se=this;this.overlayContainer=this.overlayContainerService.getContainerElement();var ae=this.substanceFormService.substance.subscribe(function(de){Se.substance=de});this.subscriptions.push(ae)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Se){Se.unsubscribe()})}},{key:"getConfigSettings",value:function(){var Se=this,de=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.process;Object.keys(de).forEach(function(ye){null!=de[ye]&&("simple"===de[ye]?Se.configSettingsDisplay[ye]=!0:"advanced"===de[ye]?Se.configSettingsDisplay[ye]=!0===Se.privateShowAdvancedSettings:"removed"===de[ye]&&(Se.configSettingsDisplay[ye]=!1))})}},{key:"updateAccess",value:function(){}},{key:"addSite",value:function(){var Se=this;this.substanceFormSsg4mSitesService.addSite(this.processIndex),setTimeout(function(){Se.scrollToService.scrollToElement("substance-process-site-0","center")})}},{key:"confirmDeleteProcess",value:function(){var Se=this;this.dialog.open(Un.$,{data:{message:"Are you sure you want to delele Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(de){de&&!0===de&&Se.deleteProcess()})}},{key:"deleteProcess",value:function(){this.substanceFormSsg4mProcessService.deleteProcess(this.privateProcess,this.processIndex)}},{key:"tabSelectedIndexOutChange",value:function(Se){this.tabSelectedIndexOut.emit(Se)}}]),$t}();return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(se),r.Y36(Y),r.Y36(H.B),r.Y36(Ie.E),r.Y36(On.$),r.Y36(Jn.I),r.Y36(Ee.Xj),r.Y36(Tn.i),r.Y36(ve.uw))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-ssg4m-process-form"]],inputs:{process:"process",processIndex:"processIndex",showAdvancedSettings:"showAdvancedSettings",tabSelectedView:"tabSelectedView"},outputs:{tabSelectedIndexOut:"tabSelectedIndexOut"},decls:13,vars:7,consts:[[1,"process-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],["class","col-3-1",4,"ngIf"],["class","col-3-1","domain","SSG_PROCESS_ROLE","title","Process Role","name","processRole",3,"model","valueChange",4,"ngIf"],["class","col-3-1","domain","SSG_PROCESS_TYPE","title","Process Type","name","processType",3,"model","valueChange",4,"ngIf"],[1,""],["class","col-2-1",4,"ngIf"],["class","margintop10px marginbottom20px",4,"ngFor","ngForOf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col-3-1"],["matInput","","placeholder","Process Name","name","process.processName",3,"ngModel","ngModelChange"],["domain","SSG_PROCESS_ROLE","title","Process Role","name","processRole",1,"col-3-1",3,"model","valueChange"],["domain","SSG_PROCESS_TYPE","title","Process Type","name","processType",1,"col-3-1",3,"model","valueChange"],[1,"col-2-1"],["matInput","","placeholder","Process Description","name","process.processDescription",3,"ngModel","ngModelChange"],["matInput","","placeholder","Comments","name","process.processComments","rows","1",3,"ngModel","ngModelChange"],[1,"margintop10px","marginbottom20px"],[1,"border"],[1,"font17px"],[3,"site","processIndex","siteIndex","showAdvancedSettings","tabSelectedView","tabSelectedIndexOut"],["class","divflex",4,"ngIf"],[1,"divflex"],[1,"middle-fill"],["mat-stroked-button","","color","primary",1,"button-add",3,"click"],["svgIcon","add_circle_outline"]],template:function(ze,Se){1&ze&&(r.TgZ(0,"div"),r.TgZ(1,"div",0),r.YNc(2,Er,4,0,"div",1),r.TgZ(3,"div",2),r.YNc(4,Tt,2,1,"mat-form-field",3),r.YNc(5,Ke,1,1,"app-cv-input",4),r.YNc(6,oe,1,1,"app-cv-input",5),r.qZA(),r.TgZ(7,"div",6),r.TgZ(8,"div",2),r.YNc(9,Ce,2,1,"mat-form-field",7),r.YNc(10,at,2,1,"mat-form-field",7),r.qZA(),r.qZA(),r.TgZ(11,"div"),r.YNc(12,me,9,8,"div",8),r.qZA(),r.qZA(),r.qZA()),2&ze&&(r.xp6(2),r.Q6J("ngIf",Se.process.$$deletedCode),r.xp6(2),r.Q6J("ngIf",Se.configSettingsDisplay.processName||void 0===Se.configSettingsDisplay.processName&&!0),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.processRole||void 0===Se.configSettingsDisplay.processRole&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.processType||void 0===Se.configSettingsDisplay.processType&&Se.showAdvancedSettings),r.xp6(3),r.Q6J("ngIf",Se.configSettingsDisplay.processDescription||void 0===Se.configSettingsDisplay.processDescription&&Se.showAdvancedSettings),r.xp6(1),r.Q6J("ngIf",Se.configSettingsDisplay.processComments||void 0===Se.configSettingsDisplay.processComments&&Se.showAdvancedSettings),r.xp6(2),r.Q6J("ngForOf",Se.process.sites))},directives:[e.O5,f.lW,T.gM,h.Hw,v.KE,J.Nt,j.Fj,j.JJ,j.On,si.S,e.sg,br],styles:[".process-form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted green;color:#333;overflow:visible;text-align:center;height:5px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderorange[_ngcontent-%COMP%]{border:1px solid orangered}.fontsize17px[_ngcontent-%COMP%]{font-size:17px}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.marginbottom20px[_ngcontent-%COMP%]{margin-bottom:10px}.colorgreen[_ngcontent-%COMP%]{color:green}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:-45px;margin-right:25px;color:red;background-color:#fff;border:1px solid red}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-65px;color:red}fieldset.border[_ngcontent-%COMP%]{border:solid 1px #218814!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px}"]}),st}();function Ye(st,$t){if(1&st&&(r.TgZ(0,"mat-form-field",13),r._UZ(1,"input",14),r.qZA()),2&st){var ze=r.oxw();r.Q6J("floatLabel","never"),r.xp6(1),r.Q6J("formControl",ze.searchControl)}}var ht=function(){return[5,10,25,100]};function At(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-paginator",15),r.NdJ("page",function(de){r.CHM(ze);var ye=r.oxw();return ye.pageChange(de,ye.analyticsEventCategory)}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("length",Se.filtered&&Se.filtered.length||0)("pageIndex",Se.page)("pageSize",5)("pageSizeOptions",r.DdM(4,ht))}}function on(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"div",16),r.TgZ(1,"fieldset",17),r.TgZ(2,"legend",17),r._uU(3,"Process \xa0"),r.TgZ(4,"b"),r.TgZ(5,"span",18),r._uU(6),r.qZA(),r.qZA(),r.qZA(),r.TgZ(7,"app-ssg4m-process-form",19),r.NdJ("processDeleted",function(Be){return r.CHM(ze),r.oxw().deleteProcess(Be)})("tabSelectedIndexOut",function(Be){return r.CHM(ze),r.oxw().tabSelectedIndexOutChange(Be)}),r.qZA(),r.TgZ(8,"div",20),r._UZ(9,"span",6),r.TgZ(10,"button",21),r.NdJ("click",function(){return r.CHM(ze),r.oxw().addProcess()}),r._UZ(11,"mat-icon",22),r._uU(12,"Add Process "),r.qZA(),r.qZA(),r.qZA(),r.qZA()}if(2&st){var Se=$t.$implicit,ae=$t.index,de=r.oxw();r.xp6(6),r.AsE("",ae+1," of ",de.paged.length,""),r.xp6(1),r.Q6J("process",Se)("processIndex",ae)("showAdvancedSettings",de.showAdvancedSettings)("tabSelectedView",de.tabSelectedView)}}function Pn(st,$t){if(1&st){var ze=r.EpF();r.TgZ(0,"mat-paginator",15),r.NdJ("page",function(de){r.CHM(ze);var ye=r.oxw();return ye.pageChange(de,ye.analyticsEventCategory)}),r.qZA()}if(2&st){var Se=r.oxw();r.Q6J("length",Se.filtered&&Se.filtered.length||0)("pageIndex",Se.page)("pageSize",5)("pageSizeOptions",r.DdM(4,ht))}}var Yn=function(){var st=function($t){(0,k.Z)(Se,$t);var ze=(0,q.Z)(Se);function Se(ae,de,ye,Be,nt,Dt,cn,kn){var ni;return(0,t.Z)(this,Se),(ni=ze.call(this,kn)).substanceFormSsg4mProcessService=ae,ni.substanceFormSsg4mSitesService=de,ni.substanceFormService=ye,ni.configService=Be,ni.overlayContainerService=nt,ni.dialog=Dt,ni.scrollToService=cn,ni.gaService=kn,ni.subscriptions=[],ni.showAdvancedSettings=!1,ni.tabSelectedView="Form View",ni.tabSelectedIndex=0,ni}return(0,P.Z)(Se,[{key:"ngOnInit",value:function(){var de=this;this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Process"),this.overlayContainer=this.overlayContainerService.getContainerElement();var ye=!1;setInterval(function(){if(window.schemeUtil&&!ye){ye=!0,window.schemeUtil.debug=!1;var Be="".concat(de.configService.configData&&de.configService.configData.apiBaseUrl||"/","api/v1/");window.schemeUtil.apiBaseURL=Be,window.schemeUtil.onClickReaction=function(nt){var kn=nt.siteIndex;void 0===kn&&(kn=0),de.showStepViewDialog(nt.processIndex,kn,nt.stepIndex)},window.schemeUtil.onClickMaterial=function(nt){de.openImageModal(nt.refuuid,nt.name,nt.bottomText)}}},100)}},{key:"ngAfterViewInit",value:function(){var de=this,ye=this.substanceFormSsg4mProcessService.specifiedSubstanceG4mProcess.subscribe(function(Be){de.process=Be,de.filtered=Be,de.page=0,de.pageChange()});this.subscriptions.push(ye)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(de){de.unsubscribe()})}},{key:"addItem",value:function(){this.addProcess()}},{key:"openImageModal",value:function(de,ye,Be){var nt=this,cn=this.dialog.open(ne.oV,{height:"96%",width:"650px",panelClass:"structure-image-panel",data:{structure:de,uuid:de,approvalID:ye,displayName:Be}});this.overlayContainer.style.zIndex="1002";var kn=cn.afterClosed().subscribe(function(){nt.overlayContainer.style.zIndex=null,kn.unsubscribe()},function(){nt.overlayContainer.style.zIndex=null,kn.unsubscribe()})}},{key:"addProcess",value:function(){var de=this;this.substanceFormSsg4mProcessService.addProcess(),setTimeout(function(){de.scrollToService.scrollToElement("substance-process-0","center")})}},{key:"deleteProcess",value:function(de){}},{key:"updateProcess",value:function(de){}},{key:"updateAdvancedSettings",value:function(de){this.showAdvancedSettings=de.checked}},{key:"tabSelected",value:function(de){if(de){var Be=de.tab.textLabel;null!=Be&&(this.tabSelectedView=Be);var nt=JSON.stringify(this.substanceFormService.cleanSubstance());window.schemeUtil.renderScheme(window.schemeUtil.makeDisplayGraph(JSON.parse(nt)),"#scheme-viz-view")}}},{key:"onSelectedIndexChange",value:function(de){this.tabSelectedIndex=de;var ye=JSON.stringify(this.substanceFormService.cleanSubstance());window.schemeUtil.renderScheme(window.schemeUtil.makeDisplayGraph(JSON.parse(ye)),"#scheme-viz-view")}},{key:"tabSelectedIndexOutChange",value:function(de){this.tabSelectedIndex=de}},{key:"showStepViewDialog",value:function(de,ye,Be){var nt=this,cn=this.dialog.open(wn,{width:"90%",height:"80%",panelClass:"structure-image-panel",data:{processIndex:de,siteIndex:ye,stageIndex:Be}});this.overlayContainer.style.zIndex="1002";var kn=-1,ni=cn.afterClosed().subscribe(function(Ti){nt.overlayContainer.style.zIndex=null,kn=Ti,ni.unsubscribe(),kn>-1&&(nt.tabSelectedIndex=kn),nt.overlayContainer.style.zIndex=null,ni.unsubscribe()})}}]),Se}(ie.u);return st.\u0275fac=function(ze){return new(ze||st)(r.Y36(se),r.Y36(Y),r.Y36(H.B),r.Y36(X.E),r.Y36(Ee.Xj),r.Y36(ve.uw),r.Y36(Tn.i),r.Y36(ce.$))},st.\u0275cmp=r.Xpm({type:st,selectors:[["app-substance-form-ssg4m-process-card"]],features:[r.qOj],decls:18,vars:6,consts:[["dynamicHeight","",3,"selectedIndex","selectedTabChange","selectedIndexChange"],["label","Form View"],[1,"flex-row"],[1,"paddingleft800px"],[3,"checked","change"],["class","search",3,"floatLabel",4,"ngIf"],[1,"middle-fill"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","process",4,"ngFor","ngForOf"],["label","Step View"],[3,"tabSelectedIndexOut"],["label","Scheme View"],["id","scheme-viz-view"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],[1,"process"],[1,"border"],[1,"colorgreen","font17px"],[3,"process","processIndex","showAdvancedSettings","tabSelectedView","processDeleted","tabSelectedIndexOut"],[1,"divflex"],["mat-stroked-button","","color","primary",1,"button-add",3,"click"],["svgIcon","add_circle_outline"]],template:function(ze,Se){1&ze&&(r.TgZ(0,"mat-tab-group",0),r.NdJ("selectedTabChange",function(de){return Se.tabSelected(de)})("selectedIndexChange",function(de){return Se.onSelectedIndexChange(de)}),r.TgZ(1,"mat-tab",1),r.TgZ(2,"div",2),r.TgZ(3,"div",3),r.TgZ(4,"mat-checkbox",4),r.NdJ("change",function(de){return Se.updateAdvancedSettings(de)}),r._uU(5," Show Advanced Settings "),r.qZA(),r.qZA(),r.YNc(6,Ye,2,2,"mat-form-field",5),r._UZ(7,"span",6),r.qZA(),r.YNc(8,At,1,5,"mat-paginator",7),r.YNc(9,on,13,6,"div",8),r.YNc(10,Pn,1,5,"mat-paginator",7),r.qZA(),r.TgZ(11,"mat-tab",9),r.TgZ(12,"app-ssg4m-scheme-view",10),r.NdJ("tabSelectedIndexOut",function(de){return Se.tabSelectedIndexOutChange(de)}),r.qZA(),r.qZA(),r.TgZ(13,"mat-tab",11),r._UZ(14,"br"),r._UZ(15,"br"),r._uU(16," \xa0\xa0\xa0 "),r._UZ(17,"div",12),r.qZA(),r.qZA()),2&ze&&(r.Q6J("selectedIndex",Se.tabSelectedIndex),r.xp6(4),r.Q6J("checked",Se.showAdvancedSettings),r.xp6(2),r.Q6J("ngIf",Se.process&&Se.process.length>Se.pageSize),r.xp6(2),r.Q6J("ngIf",Se.process&&Se.process.length>5),r.xp6(1),r.Q6J("ngForOf",Se.paged),r.xp6(1),r.Q6J("ngIf",Se.process&&Se.process.length>5))},directives:[A.SP,A.uX,Z.oG,e.O5,v.KE,J.Nt,j.Fj,j.JJ,j.oH,Q.NW,e.sg,Ne,f.lW,h.Hw,_n],styles:[".bordergray[_ngcontent-%COMP%]{border:1px border gray}.mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:#00000080}.process[_ngcontent-%COMP%]{margin-bottom:50px}.process[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.process[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#448aff26}.process[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:#80808026}.process[_ngcontent-%COMP%] .mat-expansion-panel, .process[_ngcontent-%COMP%] .mat-table, .process[_ngcontent-%COMP%] textarea{background-color:transparent}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.paddingleft800px[_ngcontent-%COMP%]{padding-left:800px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:25px;margin-right:25px;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 2px #1b0fb8!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px}[_nghost-%COMP%] .mat-tab-list .mat-tab-label{color:#000;background-color:#f7f1f1;border-right:1px solid #b6b1b1}[_nghost-%COMP%] .mat-tab-header{border-bottom:2px solid #434694}[_nghost-%COMP%] .mat-tab-list .mat-tab-labels .mat-tab-label-active{color:#000;font-weight:700;background-color:#fff}[_nghost-%COMP%] .mat-ink-bar{background-color:#3c19d6!important;background-color:var(--primary-color, #3c19d6)!important;height:3px}fieldset.border.minimize[_ngcontent-%COMP%]{border:none!important;padding:0!important;box-shadow:none!important;margin-top:0!important}"]}),st}(),Wn=function(){var st=(0,P.Z)(function $t(){(0,t.Z)(this,$t)});return st.\u0275fac=function(ze){return new(ze||st)},st.\u0275mod=r.oAB({type:st}),st.\u0275inj=r.cJS({imports:[[e.ez,p.o.forChild(Yn),d.O,s.t,h.Ps,T.AV,f.ot,B.g,I.w,Q.TU,J.c,Z.p9,v.lN,j.UX,j.u5,A.Nh,N.B,E.L]]}),st}()},9597:function(dt,K,n){"use strict";n.d(K,{L:function(){return j}});var P=n(48047),t=n(78069),e=n(36362),p=n(98002),d=n(61534),s=n(87317),h=n(65590),f=n(26131),T=n(94673),B=n(7168),I=n(24054),v=n(76442),j=function(){var Q=(0,P.Z)(function J(){(0,t.Z)(this,J)});return Q.\u0275fac=function(Z){return new(Z||Q)},Q.\u0275mod=v.oAB({type:Q}),Q.\u0275inj=v.cJS({imports:[[e.ez,p.Bz,d.p9,s.ot,h.Ps,f.ie,T.w,B.O,I.f]]}),Q}()},36730:function(dt,K,n){"use strict";n.d(K,{B:function(){return A}});var P=n(48047),t=n(78069),e=n(36362),p=n(44770),d=n(90587),s=n(26439),h=n(43365),f=n(19975),T=n(65590),B=n(40089),I=n(87317),v=n(70178),j=n(94673),Q=n(7168),J=n(95089),Z=n(76442),A=function(){var N=(0,P.Z)(function E(){(0,t.Z)(this,E)});return N.\u0275fac=function(k){return new(k||N)},N.\u0275mod=Z.oAB({type:N}),N.\u0275inj=Z.cJS({imports:[[e.ez,Q.O,f.t,T.Ps,B.AV,I.ot,j.w,p.lN,d.UX,d.u5,s.TU,h.c,v.g,J.O]]}),N}()},95089:function(dt,K,n){"use strict";n.d(K,{O:function(){return wt}});var P=n(78069),t=n(48047),e=n(36362),p=n(98002),d=n(90587),s=n(44770),h=n(91434),f=n(43365),T=n(61534),B=n(68390),I=n(87317),v=n(31959),j=n(65590),Q=n(40089),J=n(82796),Z=n(12379),A=n(19975),N=n(81196),E=n(43188),k=n(95758),q=n(97217),ce=n(26131),ie=n(16531),H=n(70178),V=n(74742),ue=n(60833),R=n(49241),r=n(65831),z=n(94673),Y=n(45723),se=n(7168),X=n(63200),ne=n(24054),ve=n(76442),Re=function(){var qt=(0,t.Z)(function Lt(){(0,P.Z)(this,Lt)});return qt.\u0275fac=function(Rt){return new(Rt||qt)},qt.\u0275mod=ve.oAB({type:qt}),qt.\u0275inj=ve.cJS({imports:[[d.UX,s.lN,d.u5,f.c,I.ot,j.Ps,Q.AV,se.O,h.LD,X.U,e.ez]]}),qt}(),Ie=n(80346),Ee=function(){var qt=(0,t.Z)(function Lt(){(0,P.Z)(this,Lt)});return qt.\u0275fac=function(Rt){return new(Rt||qt)},qt.\u0275mod=ve.oAB({type:qt}),qt.\u0275inj=ve.cJS({imports:[[e.ez,d.UX,d.u5,s.lN,J.Tx,T.p9,I.ot,j.Ps,Q.AV,Z.Nh,A.t,h.LD,f.c,N.Hi,E.Bb,z.w,k.Is,q.p0,ie.To,H.g,B.Fk,Y.F,X.U,ce.ie,r.x,v.vV,R.s,p.Bz,ue.Cv,V.Cq,ne.f,X.U,se.O]]}),qt}(),ge=function(){var qt=(0,t.Z)(function Lt(){(0,P.Z)(this,Lt)});return qt.\u0275fac=function(Rt){return new(Rt||qt)},qt.\u0275mod=ve.oAB({type:qt}),qt.\u0275inj=ve.cJS({imports:[[e.ez,d.UX,d.u5,s.lN,J.Tx,T.p9,I.ot,j.Ps,Q.AV,Z.Nh,A.t,h.LD,f.c,N.Hi,E.Bb,z.w,k.Is,q.p0,ie.To,H.g,B.Fk,Y.F,X.U,ce.ie,r.x,v.vV,R.s,p.Bz,ue.Cv,V.Cq,ne.f,X.U,se.O]]}),qt}(),_t=n(9597),wt=function(){var qt=function(){function Lt(){(0,P.Z)(this,Lt)}return(0,t.Z)(Lt,null,[{key:"forRoot",value:function(){return{ngModule:Lt,providers:[]}}}]),Lt}();return qt.\u0275fac=function(Rt){return new(Rt||qt)},qt.\u0275mod=ve.oAB({type:qt}),qt.\u0275inj=ve.cJS({imports:[[e.ez,d.UX,d.u5,s.lN,J.Tx,T.p9,I.ot,j.Ps,Q.AV,Z.Nh,A.t,h.LD,f.c,N.Hi,E.Bb,z.w,k.Is,q.p0,ie.To,H.g,B.Fk,Y.F,X.U,ce.ie,r.x,v.vV,R.s,p.Bz,ne.f,ue.Cv,V.Cq,se.O,Re,Ie._,Ee,ge,_t.L]]}),qt}()},80346:function(dt,K,n){"use strict";n.d(K,{_:function(){return Re}});var P=n(48047),t=n(78069),e=n(36362),p=n(98002),d=n(90587),s=n(44770),h=n(91434),f=n(43365),T=n(61534),B=n(68390),I=n(87317),v=n(31959),j=n(65590),Q=n(40089),J=n(82796),Z=n(12379),A=n(19975),N=n(81196),E=n(43188),k=n(95758),q=n(97217),ce=n(26131),ie=n(16531),H=n(70178),V=n(74742),ue=n(60833),R=n(49241),r=n(65831),z=n(94673),Y=n(45723),se=n(63200),X=n(24054),ne=n(7168),ve=n(76442),Re=function(){var Ie=(0,P.Z)(function Ee(){(0,t.Z)(this,Ee)});return Ie.\u0275fac=function(ge){return new(ge||Ie)},Ie.\u0275mod=ve.oAB({type:Ie}),Ie.\u0275inj=ve.cJS({imports:[[e.ez,d.UX,d.u5,s.lN,J.Tx,T.p9,I.ot,j.Ps,Q.AV,Z.Nh,A.t,h.LD,f.c,N.Hi,E.Bb,z.w,k.Is,q.p0,ie.To,H.g,B.Fk,Y.F,se.U,ce.ie,r.x,v.vV,R.s,p.Bz,ue.Cv,V.Cq,X.f,se.U,ne.O]]}),Ie}()},43785:function(dt,K,n){"use strict";n.d(K,{e:function(){return H}});var P=n(78069),t=n(48047),e=n(76442),p=n(90587),d=n(59295),s=n(71989),h=n(98977),f=n(32673),T=n(52149),B=n(24874),I=n(53141),v=n(18291),j=n(44770),Q=n(36362),J=n(43365),Z=n(43188),A=n(1130),N=n(87317),E=n(65590);function k(V,ue){if(1&V&&(e.TgZ(0,"mat-hint"),e._uU(1),e.qZA()),2&V){var R=e.oxw();e.xp6(1),e.Oqu(R.hintMessage)}}function q(V,ue){if(1&V&&(e.TgZ(0,"mat-error"),e._uU(1),e.qZA()),2&V){var R=e.oxw();e.xp6(1),e.Oqu(R.errorMessage)}}function ce(V,ue){if(1&V&&(e.TgZ(0,"mat-option",16),e.TgZ(1,"div",17),e._uU(2),e.qZA(),e.qZA()),2&V){var R=ue.$implicit,r=e.oxw(2);e.Q6J("value",R.key),e.xp6(1),e.Q6J("innerHTML",r.highlight(R.key),e.oJD),e.xp6(1),e.Oqu(R.key)}}function ie(V,ue){if(1&V&&(e.TgZ(0,"div"),e.TgZ(1,"div",13),e.TgZ(2,"span",14),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e.YNc(5,ce,3,3,"mat-option",15),e.qZA()),2&V){var R=ue.$implicit,r=e.oxw();e.xp6(4),e.Oqu(R.display),e.xp6(1),e.Q6J("ngForOf",r.substanceSuggestionsGroup[R.value])}}var H=function(){var V=function(){function ue(R,r,z,Y,se){(0,P.Z)(this,ue),this.utilsService=R,this.element=r,this.gaService=z,this.configService=Y,this.cvService=se,this.searchControl=new p.NI,this.matOpen=!0,this.searchPerformed=new e.vpe,this.searchValueOut=new e.vpe,this.placeholder="Search",this.hintMessage="",this.privateErrorMessage="",this.opened=new e.vpe,this.closed=new e.vpe,this.CasDisplay="CAS"}return(0,t.Z)(ue,[{key:"ngOnInit",value:function(){var r=this;this.cvService.getDomainVocabulary("CODE_SYSTEM").pipe((0,d.q)(1)).subscribe(function(z){var Y;Y=z.CODE_SYSTEM.dictionary,r.codeSystemVocab=z.CODE_SYSTEM.dictionary,Y.CAS&&(r.CasDisplay=Y.CAS.display)}),this.searchControl.valueChanges.pipe((0,s.b)(500),(0,h.x)(),(0,f.w)(function(z){return r.query=z,r.searchValueOut.emit(r.query),r.gaService.sendEvent(r.eventCategory||"substanceTextSearch","search:enter-term",!r.configService.environment.isAnalyticsPrivate&&z||"search term"),r.utilsService.getStructureSearchSuggestions(z.toUpperCase())})).subscribe(function(z){r.substanceSuggestionsGroup=z;var Y=["Standardized_Name","Display_Name","CAS","Name","Approval_ID"];r.configService&&r.configService.configData&&r.configService.configData.typeaheadFields&&(Y=r.configService.configData.typeaheadFields),r.suggestionsFields=Object.keys(r.substanceSuggestionsGroup).filter(function(se){return Y.indexOf(se)>-1}),r.suggestionsFields.sort(function(se,X){return"Display_Name"===se?-1:"Display_Name"===X?1:0}),r.suggestionsFields.forEach(function(se,X){r.suggestionsFields[X]="Approval_ID"===se?r.configService&&r.configService.configData&&r.configService.configData.approvalCodeName?{value:"Approval_ID",display:r.configService.configData.approvalCodeName}:{value:"Approval_ID",display:"UNII"}:"Standardized_Name"===se?{value:"Standardized_Name",display:"Standardized Name"}:"Display_Name"===se?{value:"Display_Name",display:"Preferred Term"}:"CAS"===se?{value:"CAS",display:r.CasDisplay}:r.codeSystemVocab[se]?{value:se,display:r.codeSystemVocab[se].display}:{value:se,display:se}}),null!=r.suggestionsFields&&r.suggestionsFields.length>0&&(r.matOpen=!0,r.opened.emit())},function(z){r.gaService.sendException("search suggestion error from API call"),console.log(z)})}},{key:"searchValue",set:function(r){this.searchControl.setValue(r)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(r){this.searchControl.markAsTouched(),this.searchControl.setErrors(r?{error:!0}:null),this.privateErrorMessage=r}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(r){var z=this.eventCategory||"substanceTextSearch";this.gaService.sendEvent(z,"select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&r.option.value||"auto-complete option");var se=r.option.value;"topSearch"===z&&(se=this.topSearchClean(se)),this.searchPerformed.emit(se)}},{key:"highlight",value:function(r){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=r,this.testElem.scrollWidth>this.testElem.offsetWidth))){var z=r.toUpperCase().indexOf(this.query.toUpperCase());r="..."+r.substring(z-15,r.length)}var Y=this.query.replace(/(?=[() \[\]])/g,"\\");return r.replace(new RegExp(Y,"gi"),function(se){return""+se+""})}return r}},{key:"processSubstanceSearch",value:function(){var r=this.searchControl.value,z=this.eventCategory||"substanceTextSearch";this.gaService.sendEvent(z,"search:submit",!this.configService.environment.isAnalyticsPrivate&&r||"search term option"),"topSearch"===z&&(r=this.topSearchClean(r)),this.searchPerformed.emit(r)}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var r=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){r.source?(r.searchContainerElement.classList.remove("active-"+r.source),r.searchContainerElement.classList.remove("deactivate-search")):(r.searchContainerElement.classList.remove("active-search"),r.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(r){if(r&&r.length>0){r=r.trim();var z=this.utilsService.looksLikeComplexSearchTerm(r);r.indexOf('"')<0&&!z?r='"'+r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':z||r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]"),this.searchControl.setValue(r)}return r}}]),ue}();return V.\u0275fac=function(R){return new(R||V)(e.Y36(T.F),e.Y36(e.SBq),e.Y36(B.$),e.Y36(I.E),e.Y36(v.I))},V.\u0275cmp=e.Xpm({type:V,selectors:[["app-substance-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:16,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search substances","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],["mat-icon-button","",1,"close-button",3,"click"],["svgIcon","close"],["mat-icon-button","",1,"activate-search-button",3,"click"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"suggestion-styling",3,"innerHTML"]],template:function(R,r){if(1&R&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return r.focused()}),e.qZA(),e.YNc(4,k,2,1,"mat-hint",3),e.YNc(5,q,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(se){return r.substanceSearchOptionSelected(se)})("closed",function(){return r.autoCompleteClosed()}),e.YNc(8,ie,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return r.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.TgZ(12,"button",10),e.NdJ("click",function(){return r.deactivateSearch()}),e._UZ(13,"mat-icon",11),e.qZA(),e.TgZ(14,"button",12),e.NdJ("click",function(){return r.activateSearch()}),e._UZ(15,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&R){var z=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",r.source),e.xp6(1),e.Q6J("placeholder",r.placeholder)("formControl",r.searchControl)("matAutocomplete",z),e.xp6(1),e.Q6J("ngIf",r.hintMessage),e.xp6(1),e.Q6J("ngIf",r.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",r.suggestionsFields),e.xp6(2),e.Q6J("disabled",r.searchControl.invalid)}},directives:[p._Y,p.JL,p.F,j.KE,Q.mk,J.Nt,p.Fj,Z.ZL,p.JJ,p.oH,Q.O5,j.bx,j.TO,Z.XC,Q.sg,A.ey,N.lW,E.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:#fff;overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:#448aff;color:#fff}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 990px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 990px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:#4793d1;overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:#fff;overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-webkit-animation-name:reduceWidth;animation-name:reduceWidth;-webkit-animation-duration:.3s;animation-duration:.3s}}@-webkit-keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes expandWidth{0%{width:0}to{width:100%}}@-webkit-keyframes reduceWidth{0%{width:100%}to{width:0}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),V}()},84844:function(dt,K,n){"use strict";n.d(K,{d:function(){return I}});var P=n(48047),t=n(78069),e=n(36362),p=n(65590),d=n(43188),s=n(90587),h=n(44770),f=n(43365),T=n(87317),B=n(76442),I=function(){var v=(0,P.Z)(function j(){(0,t.Z)(this,j)});return v.\u0275fac=function(Q){return new(Q||v)},v.\u0275mod=B.oAB({type:v}),v.\u0275inj=B.cJS({imports:[[e.ez,p.Ps,d.Bb,s.UX,s.u5,h.lN,f.c,T.ot]]}),v}()},27299:function(dt,K,n){"use strict";n.d(K,{d:function(){return P.d}});var P=n(12570)},9292:function(dt,K,n){"use strict";n.d(K,{m:function(){return d}});var P=n(78069),t=n(48047),e=n(52149),p=n(76442),d=function(){var s=function(){function h(f,T){(0,P.Z)(this,h),this.el=f,this.utilsService=T,this.privateStereo=!1,this.isAfterViewInit=!1,this.imageElement=this.el.nativeElement}return(0,t.Z)(h,[{key:"ngAfterViewInit",value:function(){this.isAfterViewInit=!0,this.setImageSrc()}},{key:"version",set:function(T){T!==this.privateVersion&&(this.privateVersion=T,this.setImageSrc())}},{key:"entityId",set:function(T){T!==this.privateEntityId&&(this.privateEntityId=T,this.setImageSrc())}},{key:"size",set:function(T){T!==this.privateSize&&(this.privateSize=T,this.setImageSrc())}},{key:"stereo",set:function(T){T!==this.privateStereo&&(this.privateStereo=T,this.setImageSrc())}},{key:"atomMaps",set:function(T){T!==this.privateAtomMaps&&(this.privateAtomMaps=T,this.setImageSrc())}},{key:"setImageSrc",value:function(){if(this.isAfterViewInit){if(this.privateVersion){var T=this.utilsService.getStructureImgUrl(this.privateEntityId,this.privateSize,this.privateStereo,this.privateAtomMaps,this.privateVersion);this.imageElement.src=T}else{var B=this.utilsService.getStructureImgUrl(this.privateEntityId,this.privateSize,this.privateStereo,this.privateAtomMaps);this.imageElement.src=B}this.imageElement.alt="structure image"}}}]),h}();return s.\u0275fac=function(f){return new(f||s)(p.Y36(p.SBq),p.Y36(e.F))},s.\u0275dir=p.lG2({type:s,selectors:[["","appSubstanceImage",""]],inputs:{version:"version",entityId:"entityId",size:"size",stereo:"stereo",atomMaps:"atomMaps"}}),s}()},24054:function(dt,K,n){"use strict";n.d(K,{f:function(){return d}});var P=n(48047),t=n(78069),e=n(36362),p=n(76442),d=function(){var s=(0,P.Z)(function h(){(0,t.Z)(this,h)});return s.\u0275fac=function(f){return new(f||s)},s.\u0275mod=p.oAB({type:s}),s.\u0275inj=p.cJS({imports:[[e.ez]]}),s}()},12570:function(dt,K,n){"use strict";n.d(K,{d:function(){return N}});var P=n(24582),t=n(7318),e=n(78069),p=n(48047),d=n(28784),s=n(50253),h=n(83336),f=n(92507),T=n(69264),B=n(60670),I=n(52149),v=n(32673),j=n(53158),Q=n(50635),J=n(76442),Z=n(50318),A=function(){function E(){(0,e.Z)(this,E)}return(0,p.Z)(E,[{key:"encodeKey",value:function(q){return encodeURIComponent(q)}},{key:"encodeValue",value:function(q){return encodeURIComponent(q)}},{key:"decodeKey",value:function(q){return decodeURIComponent(q)}},{key:"decodeValue",value:function(q){return decodeURIComponent(q)}}]),E}(),N=function(){var E=function(k){(0,P.Z)(ce,k);var q=(0,t.Z)(ce);function ce(ie,H,V,ue){var R;return(0,e.Z)(this,ce),(R=q.call(this,H)).http=ie,R.configService=H,R.sanitizer=V,R.utilsService=ue,R.searchKeys={},R.showDeprecated=!1,R.resultEmitter=new s.x,R.showImagePopup=new s.x,R.imagePopupUnit=new s.x,R}return(0,p.Z)(ce,[{key:"searchResults",get:function(){var H=this;return new h.y(function(V){H.searchResult||(H.searchResult={etag:"",uuids:[],total:0}),V.next(H.searchResult),H.resultEmitter.subscribe(function(ue){V.next(H.searchResult)})})}},{key:"setResult",value:function(H,V,ue){var R=[];V&&V.length>0&&V.forEach(function(r){R.push(r.uuid)}),this.searchResult={etag:H,uuids:R,total:ue},this.resultEmitter.next(this.searchResult)}},{key:"getSubstancesSummaries",value:function(){var H=this,V=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.showDeprecated=!!V.deprecated,new h.y(function(ue){null!=V.structureSearchTerm&&""!==V.structureSearchTerm?H.searchSubstanceStructures(V.structureSearchTerm,V.searchTerm,V.cutoff,V.type,V.pageSize,V.facets,V.order,V.skip).subscribe(function(R){ue.next(R)},function(R){ue.error(R)},function(){ue.complete()}):null!=V.sequenceSearchKey&&""!==V.sequenceSearchKey||null!=V.sequenceSearchTerm&&""!==V.sequenceSearchTerm?H.searchSubstanceSequences(V.sequenceSearchTerm,V.sequenceSearchKey,V.searchTerm,V.cutoff,V.type,V.seqType,V.pageSize,V.facets,V.order,V.skip).subscribe(function(R){ue.next(R)},function(R){ue.error(R)},function(){ue.complete()}):H.searchSubstances(V.searchTerm,V.pageSize,V.facets,V.order,V.skip).subscribe(function(R){ue.next(R)},function(R){ue.error(R)},function(){ue.complete()})})}},{key:"searchSubstances",value:function(H){var V=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,ue=arguments.length>2?arguments[2]:void 0,R=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,z=new B.n({encoder:new A}),Y=this.apiBaseUrl;Y+="substances/search",null!=H&&""!==H&&(z=z.append("q",H)),z=(z=z.appendFacetParams(ue,this.showDeprecated)).appendDictionary({top:V&&V.toString(),skip:r&&r.toString()}),null!=R&&""!==R&&(z=z.append("order",R));var se={params:z=z.append("fdim","10")};return this.http.get(Y,se)}},{key:"searchSubstanceStructures",value:function(H,V,ue){var R=this,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"substructure",z=arguments.length>4&&void 0!==arguments[4]?arguments[4]:10,Y=arguments.length>5?arguments[5]:void 0,se=arguments.length>6?arguments[6]:void 0,X=arguments.length>7&&void 0!==arguments[7]?arguments[7]:0,ne=arguments.length>8&&void 0!==arguments[8]&&arguments[8];return new h.y(function(ve){var Ee,Re=new B.n({encoder:new A}),Ie=R.apiBaseUrl;Ee=R.utilsService.hashCode(H,r,ue),r&&("flex"===r||"exact"===r)&&(ne=!0),!ne&&R.searchKeys[Ee]?(Ie+="status(".concat(R.searchKeys[Ee],")/results"),Re=(Re=Re.appendFacetParams(Y,R.showDeprecated)).appendDictionary(V.length>0?{top:z.toString(),skip:X.toString(),q:V.toString()}:{top:z.toString(),skip:X.toString()}),null!=se&&""!==se&&(Re=Re.append("order",se))):(Re=Re.append("q",H),r&&(Re=Re.append("type",r),"similarity"===r&&(Re=Re.append("cutoff",(ue=ue||0).toString()))),ne&&(V&&(Re=Re.append("qText",V)),Re=(Re=(Re=Re.append("sync",ne.toString())).appendFacetParams(Y,R.showDeprecated)).appendDictionary({top:z.toString(),skip:X.toString()}),null!=se&&""!==se&&(Re=Re.append("order",se))),Ie+="substances/structureSearch");var ge={params:Re};R.http.get(Ie,ge).subscribe(function(_t){if(_t.results){var wt=_t.key;R.searchKeys[Ee]=wt,R.processAsyncSearchResults(V,Ie,_t,ve,wt,ge,z,Y,X)}else ve.next(_t),ve.complete()},function(_t){ve.error(_t),ve.complete()})})}},{key:"searchSubstanceSequences",value:function(H,V,ue){var R=this,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5,z=arguments.length>4?arguments[4]:void 0,Y=arguments.length>5?arguments[5]:void 0,se=arguments.length>6&&void 0!==arguments[6]?arguments[6]:10,X=arguments.length>7?arguments[7]:void 0,ne=arguments.length>8?arguments[8]:void 0,ve=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0,Re=!(arguments.length>10&&void 0!==arguments[10])||arguments[10];return new h.y(function(Ie){var _t,Ee=new B.n({encoder:new A}),ge=R.apiBaseUrl;_t=R.utilsService.hashCode(H,r,z,Y),V&&V.length>30||!Re&&R.searchKeys[_t]?(ge+="status(".concat(!Re&&R.searchKeys[_t]?R.searchKeys[_t]:V,")"),Ee=(Ee=Ee.appendFacetParams(X,R.showDeprecated)).appendDictionary({top:se.toString(),skip:ve.toString()}),null!=ne&&""!==ne&&(Ee=Ee.append("order",ne))):(Ee=Ee.appendDictionary({q:H,type:z,cutoff:r.toString(),seqType:Y}),Re&&(Ee=Ee.append("sync",Re.toString())),ge+="substances/sequenceSearch");var wt={params:Ee};R.http.get(ge,wt).subscribe(function(qt){if(qt.results){var Lt=qt.key;R.searchKeys[_t]=Lt,R.processAsyncSearchResults(ue,ge,qt,Ie,Lt,wt,se,X,ve)}else Ie.next(qt),Ie.complete()},function(qt){Ie.error(qt),Ie.complete()})})}},{key:"processAsyncSearchResults",value:function(H,V,ue,R,r,z,Y,se,X,ne){var ve=this;this.getAsyncSearchResults(H,r,Y,se,X,ne).subscribe(function(Re){R.next(Re),ue.finished?R.complete():ve.http.get(V,z).subscribe(function(Ie){setTimeout(function(){ve.processAsyncSearchResults(H,V,Ie,R,r,z,Y,se,X,ne)})},function(Ie){R.error(Ie),R.complete()})},function(Re){R.error(Re),R.complete()})}},{key:"getAsyncSearchResults",value:function(H,V,ue,R,r,z){var Y="".concat(this.apiBaseUrl,"status(").concat(V,")/results"),se=new B.n({encoder:new A});return se=se.appendFacetParams(R,this.showDeprecated),Math.random().toString(36).replace("0.",""),se=(se=se.appendFacetParams({facet:{isAllMatch:!1,params:{cache:!1}}},this.showDeprecated)).appendDictionary({top:ue.toString(),skip:r.toString(),view:z||""}),null!=H&&""!==H&&(se=se.append("q",H)),this.http.get(Y,{params:se})}},{key:"getQuickSubstancesSummaries",value:function(H,V,ue){var R=new B.n({encoder:new A}),r=this.apiBaseUrl+"substances/";return H&&(R=R.append("q",H)),(null!=H||!0===V)&&(r+="search"),null!=ue&&(R=R.appendFacetParams(ue,this.showDeprecated)),this.http.get(r,{params:R})}},{key:"searchSingleFacet",value:function(H,V){return this.http.get(this.apiBaseUrl+"substances/search?facet="+H+"/"+V)}},{key:"searchSingleFacetSimpleCount",value:function(H,V){return this.http.get(this.apiBaseUrl+"substances/search?facet="+H+"/"+V+"&simpleSearchOnly=true&fdim=0&top=1&view=key")}},{key:"searchFromString",value:function(H){return this.http.get(this.apiBaseUrl+"substances/search?"+H)}},{key:"getRecordCount",value:function(){return this.http.get(this.apiBaseUrl+"substances/@count")}},{key:"getFasta",value:function(H){var V="".concat(this.configService.configData.apiBaseUrl,"export/").concat(H,".fas");return this.http.get(V,{responseType:"blob"})}},{key:"getSubstanceSummary",value:function(H){var V="".concat(this.apiBaseUrl,"substances(").concat(H,")");return this.http.get(V)}},{key:"getEdits",value:function(H){var V="".concat(this.apiBaseUrl,"substances(").concat(H,")/@edits");return this.http.get(V,{withCredentials:!0})}},{key:"getSubstanceDetails",value:function(H,V){var ue=this,R="".concat(this.apiBaseUrl,"substances(").concat(H,")"),r=new d.LE,z={params:r=r.append("view","internal")};if(V){var Y="".concat(this.apiBaseUrl,"substances(").concat(H,")/@edits");return this.http.get(Y,{withCredentials:!0}).pipe((0,v.w)(function(se){return se=se.filter(function(X){return X.version===V}),ue.http.get(se[0].oldValue,z)}))}return this.http.get(R,z)}},{key:"getSubstanceNames",value:function(H){var V="".concat(this.apiBaseUrl,"substances(").concat(H,")/names");return this.http.get(V)}},{key:"getSubstanceCodes",value:function(H){var V="".concat(this.apiBaseUrl,"substances(").concat(H,")/codes");return this.http.get(V)}},{key:"getSubstanceRelationships",value:function(H){var V="".concat(this.apiBaseUrl,"substances(").concat(H,")/relationships");return this.http.get(V)}},{key:"checkVersion",value:function(H){var V="".concat(this.apiBaseUrl,"substances(").concat(H,")/version");return this.http.get(V)}},{key:"getSafeIconImgUrl",value:function(H,V){var ue="".concat(this.configService.configData.apiBaseUrl,"assets/ginas/images/noimage.svg"),R=H.substanceClass;if("chemical"===R&&H.structure.id){var r=H.structure.id;ue="".concat(this.configService.configData.apiBaseUrl,"img/").concat(r,".svg")}else if("polymer"===R&&H.polymer.displayStructure.id){var z=H.polymer.displayStructure.id;ue="".concat(this.configService.configData.apiBaseUrl,"img/").concat(z,".svg")}else ue="assets/images/".concat(R,".svg");return null!=V&&(ue+="?size=".concat(V.toString())),this.sanitizer.bypassSecurityTrustUrl(ue)}},{key:"getIconFromUuid",value:function(H){var V="".concat(this.configService.configData.apiBaseUrl,"img/").concat(H,".svg");return this.sanitizer.bypassSecurityTrustUrl(V)}},{key:"saveSubstance",value:function(H,V){var ue="".concat(this.apiBaseUrl,"substances?view=internal"),R=H.uuid?"PUT":"POST";return V&&"import"===V&&(R="POST"),this.http.request(R,ue,{body:H})}},{key:"validateSubstance",value:function(H){var V="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/@validate");return this.http.post(V,H)}},{key:"getHierarchy",value:function(H){var V="".concat(this.apiBaseUrl,"substances(").concat(H,")/@hierarchy");return this.http.get(V)}},{key:"approveSubstance",value:function(H){var V="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances(").concat(H,")/@approve");return this.http.get(V)}},{key:"oldSiteRedirect",value:function(H,V){var ue=this.baseUrl+"substance/"+V;return"edit"===H&&(ue+="/edit"),ue}},{key:"getSequenceByID",value:function(H,V,ue){var R="".concat(this.apiBaseUrl,"substances(").concat(H,")/").concat(ue,"/subunits(uuid:").concat(V,")");return this.http.get(R)}},{key:"getSubstanceSequenceResults",value:function(H){var V=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.5,ue=arguments.length>2?arguments[2]:void 0,R=arguments.length>3?arguments[3]:void 0,r=new B.n,z=this.apiBaseUrl+"substances/sequenceSearch";return r=r.appendDictionary({q:H,type:ue,cutoff:V.toString(),seqType:R}),this.http.post(z,r)}},{key:"oldLinkFix",value:function(H){if(H&&H.length>10){var V=H.split("/");return"substances/"+V[V.length-1]}return H}},{key:"getPrimaryCode",value:function(H,V){var ue=this,R="".concat(this.apiBaseUrl,"substances(").concat(H.refuuid,")/codes(codeSystem:")+V+")(type:PRIMARY)($0)/code",r="".concat(this.apiBaseUrl,"substances(").concat(H.refPname,")/codes(codeSystem:")+V+")(type:PRIMARY)($0)/code";return this.http.get(R).pipe((0,j.K)(function(z){return ue.http.get(r)}))}},{key:"getPrimaryConfigCode",value:function(H){return this.getPrimaryCode(H,this.configService.configData&&this.configService.configData.primaryCode?this.configService.configData.primaryCode:"BDNUM")}},{key:"getBDNUM",value:function(H){var V=this,ue="".concat(this.apiBaseUrl,"substances(").concat(H.refuuid,")/codes(codeSystem:BDNUM)(type:PRIMARY)($0)/code"),R="".concat(this.apiBaseUrl,"substances(").concat(H.refPname,")/codes(codeSystem:BDNUM)(type:PRIMARY)($0)/code");return this.http.get(ue).pipe((0,j.K)(function(r){return V.http.get(R)}))}},{key:"getSubstanceFacets",value:function(H,V,ue){var R;return R=V?"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/search/@facets?wait=false&kind=ix.ginas.models.v1.Substance&skip=0&fdim=200&sideway=true&field=").concat(H.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(V):null!=ue?ue:H._self,this.http.get(R)}},{key:"getSubstanceReferences",value:function(){var H=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,V=arguments.length>1?arguments[1]:void 0,ue="".concat(this.configService.configData.apiBaseUrl,"api/v1/references/search?top=").concat(H,'&order=$lastEdited&q=root_lastEditedBy:"').concat(V,'" AND NOT (root_docType:SYSTEM) AND NOT (root_docType:BDNUM)');return this.http.get(ue)}},{key:"hasInxightLink",value:function(H){var V="https://drugs.ncats.io/api/v1/substances/search?q=root_approvalID:".concat(H,"&fdim=1");return this.http.jsonp(V,"callback")}},{key:"getExportOptions",value:function(H,V){V||(V="substances");var ue="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat(V,"/export/").concat(H);return this.http.get(ue)}},{key:"getTags",value:function(){var H="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/search/@facets?kind=ix.ginas.models.v1.Substance&fdim=999999&sideway=true&field=GInAS+Tag");return this.http.get(H).pipe((0,Q.U)(function(V){return V.content.map(function(ue){return ue.label}).sort()}))}},{key:"getMixtureParent",value:function(H){var V="".concat(this.configService.configData.apiBaseUrl,'api/v1/substances/search?q=root_mixture_components_substance_refuuid:"').concat(H,'"');return this.http.get(V)}},{key:"getConstituentParent",value:function(H){var V="".concat(this.configService.configData.apiBaseUrl,'api/v1/substances/search?q=root_specifiedSubstance_constituents_substance_refuuid:"').concat(H,'"');return this.http.get(V)}}]),ce}(T.q);return E.\u0275fac=function(q){return new(q||E)(J.LFG(d.eN),J.LFG(f.E),J.LFG(Z.H7),J.LFG(I.F))},E.\u0275prov=J.Yz7({token:E,factory:E.\u0275fac,providedIn:"root"}),E}()},35096:function(dt,K,n){"use strict";n.d(K,{L:function(){return I}});var P=n(78069),t=n(48047),e=n(56908),d=n(95758),s=n(76442),h=n(44770),f=n(43365),T=n(90587),B=n(87317),I=function(){var v=function(){function j(Q,J){(0,P.Z)(this,j),this.dialogRef=Q,this.data=J}return(0,t.Z)(j,[{key:"ngOnInit",value:function(){var J=new Date;this.name=this.data.type&&null!==this.data.type&&""!==this.data.type?this.data.type+"-"+e(J).format("DD-MM-YYYY_H-mm-ss"):"export-"+e(J).format("DD-MM-YYYY_H-mm-ss"),this.extension=this.data.extension}},{key:"save",value:function(){this.dialogRef.close(this.name)}},{key:"cancel",value:function(){this.dialogRef.close()}}]),j}();return v.\u0275fac=function(Q){return new(Q||v)(s.Y36(d.so),s.Y36(d.WI))},v.\u0275cmp=s.Xpm({type:v,selectors:[["app-export-dialog"]],decls:16,vars:2,consts:[["matDialogTitle",""],[1,"padding"],[1,"dialog-row"],[1,"name-form"],["matInput","","type","text","placeholder","Filename",1,"name-field",3,"ngModel","ngModelChange"],[1,"format"],["align","end"],["mat-flat-button","","color","primary",3,"click"],[1,"middle-fill"]],template:function(Q,J){1&Q&&(s.TgZ(0,"h2",0),s._uU(1,"Enter a Filename"),s.qZA(),s.TgZ(2,"div",1),s._uU(3," Preparing download. Please enter a file name. "),s.qZA(),s.TgZ(4,"div",2),s.TgZ(5,"div"),s.TgZ(6,"mat-form-field",3),s.TgZ(7,"input",4),s.NdJ("ngModelChange",function(A){return J.name=A}),s.qZA(),s.qZA(),s.qZA(),s.TgZ(8,"div",5),s._uU(9),s.qZA(),s.qZA(),s.TgZ(10,"mat-dialog-actions",6),s.TgZ(11,"button",7),s.NdJ("click",function(){return J.cancel()}),s._uU(12,"Cancel"),s.qZA(),s._UZ(13,"span",8),s.TgZ(14,"button",7),s.NdJ("click",function(){return J.save()}),s._uU(15,"Save"),s.qZA(),s.qZA()),2&Q&&(s.xp6(7),s.Q6J("ngModel",J.name),s.xp6(2),s.hij(".",J.extension,""))},directives:[d.uh,h.KE,f.Nt,T.Fj,T.JJ,T.On,d.H8,B.lW],styles:[".dialog-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.name-form[_ngcontent-%COMP%]{width:400px}.format[_ngcontent-%COMP%]{margin-left:10px}.padding[_ngcontent-%COMP%]{margin-bottom:15px;padding-bottom:5px}"]}),v}()},2711:function(dt,K,n){"use strict";n.d(K,{v:function(){return p}});var P=n(48047),t=n(78069),e=n(76442),p=function(){var d=(0,P.Z)(function s(){(0,t.Z)(this,s)});return d.\u0275fac=function(h){return new(h||d)},d.\u0275mod=e.oAB({type:d}),d.\u0275inj=e.cJS({imports:[[]]}),d}()},89633:function(dt,K,n){"use strict";n.d(K,{q:function(){return s}});var P=n(78069),t=n(48047),e=n(18291),p=n(50635),d=n(76442),s=function(){var h=function(){function f(T){(0,P.Z)(this,f),this.cvService=T}return(0,t.Z)(f,[{key:"transform",value:function(B,I){return this.cvService.getDomainVocabulary("CODE_SYSTEM").pipe((0,p.U)(function(v){var j;return(j=v.CODE_SYSTEM.dictionary)[B]?j[B].display:B}))}}]),f}();return h.\u0275fac=function(T){return new(T||h)(d.Y36(e.I,16))},h.\u0275pipe=d.Yjl({name:"codeSystemDisplay",type:h,pure:!0}),h}()},78573:function(dt,K,n){"use strict";n.d(K,{e:function(){return d}});var P=n(78069),t=n(48047),e={"Code UUID":{fieldName:"Uuid",fieldPath:"/codes/?/uuid",finalField:"uuid",lucenePath:"root_codes_uuid",CVDomain:"",displayName:"Code UUID",dataType:"string",luceneQueryable:!1},"Mixture Component Substance UUID":{fieldName:"Uuid",fieldPath:"/mixture/components/?/substance/uuid",finalField:"uuid",lucenePath:"root_mixture_components_substance_uuid",CVDomain:"",displayName:"Mixture Component Substance UUID",dataType:"string",luceneQueryable:!1},"Mixture Component UUID":{fieldName:"Uuid",fieldPath:"/mixture/components/?/uuid",finalField:"uuid",lucenePath:"root_mixture_components_uuid",CVDomain:"",displayName:"Mixture Component UUID",dataType:"string",luceneQueryable:!1},"Mixture Parent Substance UUID":{fieldName:"Uuid",fieldPath:"/mixture/parentSubstance/uuid",finalField:"uuid",lucenePath:"root_mixture_parentSubstance_uuid",CVDomain:"",displayName:"Mixture Parent Substance UUID",dataType:"string",luceneQueryable:!1},"Mixture UUID":{fieldName:"Uuid",fieldPath:"/mixture/uuid",finalField:"uuid",lucenePath:"root_mixture_uuid",CVDomain:"",displayName:"Mixture UUID",dataType:"string",luceneQueryable:!1},"Agent Substance UUID":{fieldName:"Uuid",fieldPath:"/modifications/agentModifications/?/agentSubstance/uuid",finalField:"uuid",lucenePath:"root_modifications_agentModifications_agentSubstance_uuid",CVDomain:"",displayName:"Agent Substance UUID",dataType:"string",luceneQueryable:!1},"Agent Modification Amount UUID":{fieldName:"Uuid",fieldPath:"/modifications/agentModifications/?/amount/uuid",finalField:"uuid",lucenePath:"root_modifications_agentModifications_amount_uuid",CVDomain:"",displayName:"Agent Modification Amount UUID",dataType:"string",luceneQueryable:!1},"Agent Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/agentModifications/?/uuid",finalField:"uuid",lucenePath:"root_modifications_agentModifications_uuid",CVDomain:"",displayName:"Agent Modification UUID",dataType:"string",luceneQueryable:!1},"Physical Modification Amount UUID":{fieldName:"Uuid",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/uuid",finalField:"uuid",lucenePath:"root_modifications_physicalModifications_parameters_amount_uuid",CVDomain:"",displayName:"Physical Modification Amount UUID",dataType:"string",luceneQueryable:!1},"Physical Modification Parameter UUID":{fieldName:"Uuid",fieldPath:"/modifications/physicalModifications/?/parameters/?/uuid",finalField:"uuid",lucenePath:"root_modifications_physicalModifications_parameters_uuid",CVDomain:"",displayName:"Physical Modification Parameter UUID",dataType:"string",luceneQueryable:!1},"Physical Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/physicalModifications/?/uuid",finalField:"uuid",lucenePath:"root_modifications_physicalModifications_uuid",CVDomain:"",displayName:"Physical Modification UUID",dataType:"string",luceneQueryable:!1},"Structural Modification Extent Amount UUID":{fieldName:"Uuid",fieldPath:"/modifications/structuralModifications/?/extentAmount/uuid",finalField:"uuid",lucenePath:"root_modifications_structuralModifications_extentAmount_uuid",CVDomain:"",displayName:"Structural Modification Extent Amount UUID",dataType:"string",luceneQueryable:!1},"Molecular Fragment UUID":{fieldName:"Uuid",fieldPath:"/modifications/structuralModifications/?/molecularFragment/uuid",finalField:"uuid",lucenePath:"root_modifications_structuralModifications_molecularFragment_uuid",CVDomain:"",displayName:"Molecular Fragment UUID",dataType:"string",luceneQueryable:!1},"Structural Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/structuralModifications/?/uuid",finalField:"uuid",lucenePath:"root_modifications_structuralModifications_uuid",CVDomain:"",displayName:"Structural Modification UUID",dataType:"string",luceneQueryable:!1},"Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/uuid",finalField:"uuid",lucenePath:"root_modifications_uuid",CVDomain:"",displayName:"Modification UUID",dataType:"string",luceneQueryable:!1},"Count Amount Average":{fieldName:"Average",fieldPath:"/moieties/?/countAmount/average",finalField:"average",lucenePath:"root_moieties_countAmount_average",CVDomain:"",displayName:"Count Amount Average",dataType:"number",luceneQueryable:!1},"Count Amount Created":{fieldName:"Created",fieldPath:"/moieties/?/countAmount/created",finalField:"created",lucenePath:"root_moieties_countAmount_created",CVDomain:"",displayName:"Count Amount Created",dataType:"number",luceneQueryable:!1},"Count Amount Created By":{fieldName:"Created By",fieldPath:"/moieties/?/countAmount/createdBy",finalField:"createdBy",lucenePath:"root_moieties_countAmount_createdBy",CVDomain:"",displayName:"Count Amount Created By",dataType:"string",luceneQueryable:!1},"Count Amount High":{fieldName:"High",fieldPath:"/moieties/?/countAmount/high",finalField:"high",lucenePath:"root_moieties_countAmount_high",CVDomain:"",displayName:"Count Amount High",dataType:"number",luceneQueryable:!1},"Count Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/moieties/?/countAmount/lastEdited",finalField:"lastEdited",lucenePath:"root_moieties_countAmount_lastEdited",CVDomain:"",displayName:"Count Amount Last Edited",dataType:"number",luceneQueryable:!1},"Count Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/moieties/?/countAmount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_moieties_countAmount_lastEditedBy",CVDomain:"",displayName:"Count Amount Last Edited By",dataType:"string",luceneQueryable:!1},"Count Amount Low":{fieldName:"Low",fieldPath:"/moieties/?/countAmount/low",finalField:"low",lucenePath:"root_moieties_countAmount_low",CVDomain:"",displayName:"Count Amount Low",dataType:"number",luceneQueryable:!1},"Count Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/moieties/?/countAmount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_moieties_countAmount_nonNumericValue",CVDomain:"",displayName:"Count Amount Non-Numeric Value",dataType:"string",luceneQueryable:!1},"Count Amount Type":{fieldName:"Type",fieldPath:"/moieties/?/countAmount/type",finalField:"type",lucenePath:"root_moieties_countAmount_type",CVDomain:"AMOUNT_TYPE",displayName:"Count Amount Type",dataType:"string",luceneQueryable:!1},"Count Amount Units":{fieldName:"Units",fieldPath:"/moieties/?/countAmount/units",finalField:"units",lucenePath:"root_moieties_countAmount_units",CVDomain:"AMOUNT_UNIT",displayName:"Count Amount Units",dataType:"string",luceneQueryable:!1},"Count Amount UUID":{fieldName:"Uuid",fieldPath:"/moieties/?/countAmount/uuid",finalField:"uuid",lucenePath:"root_moieties_countAmount_uuid",CVDomain:"",displayName:"Count Amount UUID",dataType:"string",luceneQueryable:!1},"Moiety UUID":{fieldName:"Uuid",fieldPath:"/moieties/?/uuid",finalField:"uuid",lucenePath:"root_moieties_uuid",CVDomain:"",displayName:"Moiety UUID",dataType:"string",luceneQueryable:!1},"Naming Organization UUID":{fieldName:"Uuid",fieldPath:"/names/?/nameOrgs/?/uuid",finalField:"uuid",lucenePath:"root_names_nameOrgs_uuid",CVDomain:"",displayName:"Naming Organization UUID",dataType:"string",luceneQueryable:!1},"Name UUID":{fieldName:"Uuid",fieldPath:"/names/?/uuid",finalField:"uuid",lucenePath:"root_names_uuid",CVDomain:"",displayName:"Name UUID",dataType:"string",luceneQueryable:!1},"Polymer Classification UUID":{fieldName:"Uuid",fieldPath:"/notes/?/uuid",finalField:"uuid",lucenePath:"root_notes_uuid",CVDomain:"",displayName:"Polymer Classification UUID",dataType:"string",luceneQueryable:!1},"Linkage Created":{fieldName:"Created",fieldPath:"/nucleicAcid/linkages/?/created",finalField:"created",lucenePath:"root_nucleicAcid_linkages_created",CVDomain:"",displayName:"Linkage Created",dataType:"number",luceneQueryable:!1},"Linkage Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/linkages/?/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_linkages_createdBy",CVDomain:"",displayName:"Linkage Created By",dataType:"string",luceneQueryable:!1},"Linkage Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/linkages/?/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_linkages_lastEdited",CVDomain:"",displayName:"Linkage Last Edited",dataType:"number",luceneQueryable:!1},"Linkage Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/linkages/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_linkages_lastEditedBy",CVDomain:"",displayName:"Linkage Last Edited By",dataType:"string",luceneQueryable:!1},"Linkage Linkage":{fieldName:"Linkage",fieldPath:"/nucleicAcid/linkages/?/linkage",finalField:"linkage",lucenePath:"root_nucleicAcid_linkages_linkage",CVDomain:"NUCLEIC_ACID_LINKAGE",displayName:"Linkage Linkage",dataType:"string",luceneQueryable:!1},"Linkage UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/linkages/?/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_linkages_uuid",CVDomain:"",displayName:"Linkage UUID",dataType:"string",luceneQueryable:!1},"Nucleic Acid Sub Type":{fieldName:"Nucleic Acid Sub Type",fieldPath:"/nucleicAcid/nucleicAcidSubType",finalField:"nucleicAcidSubType",lucenePath:"root_nucleicAcid_nucleicAcidSubType",CVDomain:"NUCLEIC_ACID_SUBTYPE",displayName:"Nucleic Acid Sub Type",dataType:"string",luceneQueryable:!1},"Nucleic Acid Type":{fieldName:"Nucleic Acid Type",fieldPath:"/nucleicAcid/nucleicAcidType",finalField:"nucleicAcidType",lucenePath:"root_nucleicAcid_nucleicAcidType",CVDomain:"NUCLEIC_ACID_TYPE",displayName:"Nucleic Acid Type",dataType:"string",luceneQueryable:!1},"Nucleic Acid Sequence Origin":{fieldName:"Sequence Origin",fieldPath:"/nucleicAcid/sequenceOrigin",finalField:"sequenceOrigin",lucenePath:"root_nucleicAcid_sequenceOrigin",CVDomain:"NUCLEIC_ACID_SEQUENCE_ORIGIN",displayName:"Nucleic Acid Sequence Origin",dataType:"string",luceneQueryable:!1},"Nucleic Acid Sequence Type":{fieldName:"Sequence Type",fieldPath:"/nucleicAcid/sequenceType",finalField:"sequenceType",lucenePath:"root_nucleicAcid_sequenceType",CVDomain:"SEQUENCE_TYPE",displayName:"Nucleic Acid Sequence Type",dataType:"string",luceneQueryable:!1},"Nucleic Acid Subunit UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/subunits/?/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_subunits_uuid",CVDomain:"",displayName:"Nucleic Acid Subunit UUID",dataType:"string",luceneQueryable:!1},"Sugar Created":{fieldName:"Created",fieldPath:"/nucleicAcid/sugars/?/created",finalField:"created",lucenePath:"root_nucleicAcid_sugars_created",CVDomain:"",displayName:"Sugar Created",dataType:"number",luceneQueryable:!1},"Sugar Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/sugars/?/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_sugars_createdBy",CVDomain:"",displayName:"Sugar Created By",dataType:"string",luceneQueryable:!1},"Sugar Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/sugars/?/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_sugars_lastEdited",CVDomain:"",displayName:"Sugar Last Edited",dataType:"number",luceneQueryable:!1},"Sugar Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/sugars/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_sugars_lastEditedBy",CVDomain:"",displayName:"Sugar Last Edited By",dataType:"string",luceneQueryable:!1},"Sugar Sugar":{fieldName:"Sugar",fieldPath:"/nucleicAcid/sugars/?/sugar",finalField:"sugar",lucenePath:"root_nucleicAcid_sugars_sugar",CVDomain:"",displayName:"Sugar Sugar",dataType:"string",luceneQueryable:!1},"Sugar UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/sugars/?/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_sugars_uuid",CVDomain:"",displayName:"Sugar UUID",dataType:"string",luceneQueryable:!1},"Nucleic Acid UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_uuid",CVDomain:"",displayName:"Nucleic Acid UUID",dataType:"string",luceneQueryable:!1},"Polymer Parent Substance UUID":{fieldName:"Uuid",fieldPath:"/polymer/classification/parentSubstance/uuid",finalField:"uuid",lucenePath:"root_polymer_classification_parentSubstance_uuid",CVDomain:"",displayName:"Polymer Parent Substance UUID",dataType:"string",luceneQueryable:!1},"Display Structure UUID":{fieldName:"Uuid",fieldPath:"/polymer/classification/uuid",finalField:"uuid",lucenePath:"root_polymer_classification_uuid",CVDomain:"",displayName:"Display Structure UUID",dataType:"string",luceneQueryable:!1},"Monomer Amount UUID":{fieldName:"Uuid",fieldPath:"/polymer/monomers/?/amount/uuid",finalField:"uuid",lucenePath:"root_polymer_monomers_amount_uuid",CVDomain:"",displayName:"Monomer Amount UUID",dataType:"string",luceneQueryable:!1},"Monomer Substance UUID":{fieldName:"Uuid",fieldPath:"/polymer/monomers/?/monomerSubstance/uuid",finalField:"uuid",lucenePath:"root_polymer_monomers_monomerSubstance_uuid",CVDomain:"",displayName:"Monomer Substance UUID",dataType:"string",luceneQueryable:!1},"Monomer UUID":{fieldName:"Uuid",fieldPath:"/polymer/monomers/?/uuid",finalField:"uuid",lucenePath:"root_polymer_monomers_uuid",CVDomain:"",displayName:"Monomer UUID",dataType:"string",luceneQueryable:!1},"SRU Amount UUID":{fieldName:"Uuid",fieldPath:"/polymer/structuralUnits/?/amount/uuid",finalField:"uuid",lucenePath:"root_polymer_structuralUnits_amount_uuid",CVDomain:"",displayName:"SRU Amount UUID",dataType:"string",luceneQueryable:!1},"Polymer UUID":{fieldName:"Uuid",fieldPath:"/polymer/uuid",finalField:"uuid",lucenePath:"root_polymer_uuid",CVDomain:"",displayName:"Polymer UUID",dataType:"string",luceneQueryable:!1},"Parameter Created":{fieldName:"Created",fieldPath:"/properties/?/parameters/?/created",finalField:"created",lucenePath:"root_properties_parameters_created",CVDomain:"",displayName:"Parameter Created",dataType:"number",luceneQueryable:!1},"Parameter Created By":{fieldName:"Created By",fieldPath:"/properties/?/parameters/?/createdBy",finalField:"createdBy",lucenePath:"root_properties_parameters_createdBy",CVDomain:"",displayName:"Parameter Created By",dataType:"string",luceneQueryable:!1},"Parameter Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/parameters/?/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_parameters_lastEdited",CVDomain:"",displayName:"Parameter Last Edited",dataType:"number",luceneQueryable:!1},"Parameter Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/parameters/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_parameters_lastEditedBy",CVDomain:"",displayName:"Parameter Last Edited By",dataType:"string",luceneQueryable:!1},"Parameter Type":{fieldName:"Type",fieldPath:"/properties/?/parameters/?/type",finalField:"type",lucenePath:"root_properties_parameters_type",CVDomain:"",displayName:"Parameter Type",dataType:"string",luceneQueryable:!1},"Parameter UUID":{fieldName:"Uuid",fieldPath:"/properties/?/parameters/?/uuid",finalField:"uuid",lucenePath:"root_properties_parameters_uuid",CVDomain:"",displayName:"Parameter UUID",dataType:"string",luceneQueryable:!1},"Parameter Value Average":{fieldName:"Average",fieldPath:"/properties/?/parameters/?/value/average",finalField:"average",lucenePath:"root_properties_parameters_value_average",CVDomain:"",displayName:"Parameter Value Average",dataType:"number",luceneQueryable:!1},"Parameter Value Created":{fieldName:"Created",fieldPath:"/properties/?/parameters/?/value/created",finalField:"created",lucenePath:"root_properties_parameters_value_created",CVDomain:"",displayName:"Parameter Value Created",dataType:"number",luceneQueryable:!1},"Parameter Value Created By":{fieldName:"Created By",fieldPath:"/properties/?/parameters/?/value/createdBy",finalField:"createdBy",lucenePath:"root_properties_parameters_value_createdBy",CVDomain:"",displayName:"Parameter Value Created By",dataType:"string",luceneQueryable:!1},"Parameter Value High":{fieldName:"High",fieldPath:"/properties/?/parameters/?/value/high",finalField:"high",lucenePath:"root_properties_parameters_value_high",CVDomain:"",displayName:"Parameter Value High",dataType:"number",luceneQueryable:!1},"Parameter Value Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/parameters/?/value/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_parameters_value_lastEdited",CVDomain:"",displayName:"Parameter Value Last Edited",dataType:"number",luceneQueryable:!1},"Parameter Value Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/parameters/?/value/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_parameters_value_lastEditedBy",CVDomain:"",displayName:"Parameter Value Last Edited By",dataType:"string",luceneQueryable:!1},"Parameter Value Low":{fieldName:"Low",fieldPath:"/properties/?/parameters/?/value/low",finalField:"low",lucenePath:"root_properties_parameters_value_low",CVDomain:"",displayName:"Parameter Value Low",dataType:"number",luceneQueryable:!1},"Parameter Value Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/properties/?/parameters/?/value/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_properties_parameters_value_nonNumericValue",CVDomain:"",displayName:"Parameter Value Non-Numeric Value",dataType:"string",luceneQueryable:!1},"Parameter Value Type":{fieldName:"Type",fieldPath:"/properties/?/parameters/?/value/type",finalField:"type",lucenePath:"root_properties_parameters_value_type",CVDomain:"AMOUNT_TYPE",displayName:"Parameter Value Type",dataType:"string",luceneQueryable:!1},"Parameter Value Units":{fieldName:"Units",fieldPath:"/properties/?/parameters/?/value/units",finalField:"units",lucenePath:"root_properties_parameters_value_units",CVDomain:"AMOUNT_UNIT",displayName:"Parameter Value Units",dataType:"string",luceneQueryable:!1},"Parameter Value UUID":{fieldName:"Uuid",fieldPath:"/properties/?/parameters/?/value/uuid",finalField:"uuid",lucenePath:"root_properties_parameters_value_uuid",CVDomain:"",displayName:"Parameter Value UUID",dataType:"string",luceneQueryable:!1},"Property Type":{fieldName:"Value type",fieldPath:"/properties/?/type",finalField:"type",lucenePath:"root_properties_type",CVDomain:"",displayName:"Property Type",dataType:"string",luceneQueryable:!1},"Property UUID":{fieldName:"Uuid",fieldPath:"/properties/?/uuid",finalField:"uuid",lucenePath:"root_properties_uuid",CVDomain:"",displayName:"Property UUID",dataType:"string",luceneQueryable:!1},"Value Average":{fieldName:"Average",fieldPath:"/properties/?/value/average",finalField:"average",lucenePath:"root_properties_value_average",CVDomain:"",displayName:"Value Average",dataType:"number",luceneQueryable:!1},"Value Created":{fieldName:"Created",fieldPath:"/properties/?/value/created",finalField:"created",lucenePath:"root_properties_value_created",CVDomain:"",displayName:"Value Created",dataType:"number",luceneQueryable:!1},"Value Created By":{fieldName:"Created By",fieldPath:"/properties/?/value/createdBy",finalField:"createdBy",lucenePath:"root_properties_value_createdBy",CVDomain:"",displayName:"Value Created By",dataType:"string",luceneQueryable:!1},"Value High":{fieldName:"High",fieldPath:"/properties/?/value/high",finalField:"high",lucenePath:"root_properties_value_high",CVDomain:"",displayName:"Value High",dataType:"number",luceneQueryable:!1},"Value High Limit":{fieldName:"High Limit",fieldPath:"/properties/?/value/highLimit",finalField:"highLimit",lucenePath:"root_properties_value_highLimit",CVDomain:"",displayName:"Value High Limit",dataType:"number",luceneQueryable:!1},"Value Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/value/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_value_lastEdited",CVDomain:"",displayName:"Value Last Edited",dataType:"number",luceneQueryable:!1},"Value Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/value/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_value_lastEditedBy",CVDomain:"",displayName:"Value Last Edited By",dataType:"string",luceneQueryable:!1},"Value Low":{fieldName:"Low",fieldPath:"/properties/?/value/low",finalField:"low",lucenePath:"root_properties_value_low",CVDomain:"",displayName:"Value Low",dataType:"number",luceneQueryable:!1},"Value Low Limit":{fieldName:"Low Limit",fieldPath:"/properties/?/value/lowLimit",finalField:"lowLimit",lucenePath:"root_properties_value_lowLimit",CVDomain:"",displayName:"Value Low Limit",dataType:"number",luceneQueryable:!1},"Value Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/properties/?/value/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_properties_value_nonNumericValue",CVDomain:"",displayName:"Value Non-Numeric Value",dataType:"string",luceneQueryable:!1},"Value Type":{fieldName:"Type",fieldPath:"/properties/?/value/type",finalField:"type",lucenePath:"root_properties_value_type",CVDomain:"AMOUNT_TYPE",displayName:"Value Type",dataType:"string",luceneQueryable:!1},"Value Units":{fieldName:"Units",fieldPath:"/properties/?/value/units",finalField:"units",lucenePath:"root_properties_value_units",CVDomain:"AMOUNT_UNIT",displayName:"Value Units",dataType:"string",luceneQueryable:!1},"Value UUID":{fieldName:"Uuid",fieldPath:"/properties/?/value/uuid",finalField:"uuid",lucenePath:"root_properties_value_uuid",CVDomain:"",displayName:"Value UUID",dataType:"string",luceneQueryable:!1},"Protein Glycosylation UUID":{fieldName:"Uuid",fieldPath:"/protein/glycosylation/uuid",finalField:"uuid",lucenePath:"root_protein_glycosylation_uuid",CVDomain:"",displayName:"Protein Glycosylation UUID",dataType:"string",luceneQueryable:!1},"Other Link UUID":{fieldName:"Uuid",fieldPath:"/protein/otherLinks/?/uuid",finalField:"uuid",lucenePath:"root_protein_otherLinks_uuid",CVDomain:"",displayName:"Other Link UUID",dataType:"string",luceneQueryable:!1},"Protein Subunit UUID":{fieldName:"Uuid",fieldPath:"/protein/subunits/?/uuid",finalField:"uuid",lucenePath:"root_protein_subunits_uuid",CVDomain:"",displayName:"Protein Subunit UUID",dataType:"string",luceneQueryable:!1},"Protein UUID":{fieldName:"Uuid",fieldPath:"/protein/uuid",finalField:"uuid",lucenePath:"root_protein_uuid",CVDomain:"",displayName:"Protein UUID",dataType:"string",luceneQueryable:!1},"Reference UUID":{fieldName:"Uuid",fieldPath:"/references/?/uuid",finalField:"uuid",lucenePath:"root_references_uuid",CVDomain:"",displayName:"Reference UUID",dataType:"string",luceneQueryable:!1},"Relationship Amount UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/amount/uuid",finalField:"uuid",lucenePath:"root_relationships_amount_uuid",CVDomain:"",displayName:"Relationship Amount UUID",dataType:"string",luceneQueryable:!1},"Mediator Substance UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/mediatorSubstance/uuid",finalField:"uuid",lucenePath:"root_relationships_mediatorSubstance_uuid",CVDomain:"",displayName:"Mediator Substance UUID",dataType:"string",luceneQueryable:!1},"Related Substance UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/relatedSubstance/uuid",finalField:"uuid",lucenePath:"root_relationships_relatedSubstance_uuid",CVDomain:"",displayName:"Related Substance UUID",dataType:"string",luceneQueryable:!1},"Relationship UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/uuid",finalField:"uuid",lucenePath:"root_relationships_uuid",CVDomain:"",displayName:"Relationship UUID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (m) UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_uuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) UUID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (p) UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_uuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) UUID",dataType:"boolean",luceneQueryable:!1},"St. Div. Hybrid Parent UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/parentSubstance/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_parentSubstance_uuid",CVDomain:"",displayName:"St. Div. Hybrid Parent UUID",dataType:"string",luceneQueryable:!1},"Structurally Diverse UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_uuid",CVDomain:"",displayName:"Structurally Diverse UUID",dataType:"array ",luceneQueryable:!1},"Record Uuid":{fieldName:"Uuid",fieldPath:"/uuid",finalField:"uuid",lucenePath:"root_uuid",CVDomain:"",displayName:"Record Uuid",dataType:"boolean",luceneQueryable:!1},"Mixture Component Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/mixture/components/?/substance/linkingID",finalField:"linkingID",lucenePath:"root_mixture_components_substance_linkingID",CVDomain:"",displayName:"Mixture Component Substance Linking ID",dataType:"string",luceneQueryable:!1},"Mixture Component Substance Name":{fieldName:"Name",fieldPath:"/mixture/components/?/substance/name",finalField:"name",lucenePath:"root_mixture_components_substance_name",CVDomain:"",displayName:"Mixture Component Substance Name",dataType:"string",luceneQueryable:!1},"Mixture Parent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/mixture/parentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_mixture_parentSubstance_linkingID",CVDomain:"",displayName:"Mixture Parent Substance Linking ID",dataType:"string",luceneQueryable:!1},"Mixture Parent Substance Name":{fieldName:"Name",fieldPath:"/mixture/parentSubstance/name",finalField:"name",lucenePath:"root_mixture_parentSubstance_name",CVDomain:"",displayName:"Mixture Parent Substance Name",dataType:"string",luceneQueryable:!1},"Agent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/modifications/agentModifications/?/agentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_modifications_agentModifications_agentSubstance_linkingID",CVDomain:"",displayName:"Agent Substance Linking ID",dataType:"string",luceneQueryable:!1},"Agent Substance Name":{fieldName:"Name",fieldPath:"/modifications/agentModifications/?/agentSubstance/name",finalField:"name",lucenePath:"root_modifications_agentModifications_agentSubstance_name",CVDomain:"",displayName:"Agent Substance Name",dataType:"string",luceneQueryable:!1},"Molecular Fragment Linking ID":{fieldName:"Linking Id",fieldPath:"/modifications/structuralModifications/?/molecularFragment/linkingID",finalField:"linkingID",lucenePath:"root_modifications_structuralModifications_molecularFragment_linkingID",CVDomain:"",displayName:"Molecular Fragment Linking ID",dataType:"string",luceneQueryable:!1},"Molecular Fragment Name":{fieldName:"Name",fieldPath:"/modifications/structuralModifications/?/molecularFragment/name",finalField:"name",lucenePath:"root_modifications_structuralModifications_molecularFragment_name",CVDomain:"",displayName:"Molecular Fragment Name",dataType:"string",luceneQueryable:!1},"Moiety Hash":{fieldName:"Hash",fieldPath:"/moieties/?/hash",finalField:"hash",lucenePath:"root_moieties_hash",CVDomain:"",displayName:"Moiety Hash",dataType:"string",luceneQueryable:!1},"Moiety ID":{fieldName:"Id",fieldPath:"/moieties/?/id",finalField:"id",lucenePath:"root_moieties_id",CVDomain:"",displayName:"Moiety ID",dataType:"string",luceneQueryable:!1},"Linkage Sites Shorthand":{fieldName:"Sites Shorthand",fieldPath:"/nucleicAcid/linkages/?/sitesShorthand",finalField:"sitesShorthand",lucenePath:"root_nucleicAcid_linkages_sitesShorthand",CVDomain:"",displayName:"Linkage Sites Shorthand",dataType:"string",luceneQueryable:!1},"Nucleic Acid Subunit Length":{fieldName:"Length",fieldPath:"/nucleicAcid/subunits/?/length",finalField:"length",lucenePath:"root_nucleicAcid_subunits_length",CVDomain:"",displayName:"Nucleic Acid Subunit Length",dataType:"number",luceneQueryable:!1},"Sugar Sites Shorthand":{fieldName:"Sites Shorthand",fieldPath:"/nucleicAcid/sugars/?/sitesShorthand",finalField:"sitesShorthand",lucenePath:"root_nucleicAcid_sugars_sitesShorthand",CVDomain:"",displayName:"Sugar Sites Shorthand",dataType:"string",luceneQueryable:!1},"Polymer Parent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/polymer/classification/parentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_polymer_classification_parentSubstance_linkingID",CVDomain:"",displayName:"Polymer Parent Substance Linking ID",dataType:"string",luceneQueryable:!1},"Polymer Parent Substance Name":{fieldName:"Name",fieldPath:"/polymer/classification/parentSubstance/name",finalField:"name",lucenePath:"root_polymer_classification_parentSubstance_name",CVDomain:"",displayName:"Polymer Parent Substance Name",dataType:"string",luceneQueryable:!1},"Display Structure ID":{fieldName:"Id",fieldPath:"/polymer/displayStructure/id",finalField:"id",lucenePath:"root_polymer_displayStructure_id",CVDomain:"",displayName:"Display Structure ID",dataType:"string",luceneQueryable:!1},"Idealized Structure ID":{fieldName:"Id",fieldPath:"/polymer/idealizedStructure/id",finalField:"id",lucenePath:"root_polymer_idealizedStructure_id",CVDomain:"",displayName:"Idealized Structure ID",dataType:"string",luceneQueryable:!1},"Monomer Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/polymer/monomers/?/monomerSubstance/linkingID",finalField:"linkingID",lucenePath:"root_polymer_monomers_monomerSubstance_linkingID",CVDomain:"",displayName:"Monomer Substance Linking ID",dataType:"string",luceneQueryable:!1},"Monomer Substance Original Name":{fieldName:"Name",fieldPath:"/polymer/monomers/?/monomerSubstance/name",finalField:"name",lucenePath:"root_polymer_monomers_monomerSubstance_name",CVDomain:"",displayName:"Monomer Substance Original Name",dataType:"string",luceneQueryable:!1},"Parameter Name":{fieldName:"Name",fieldPath:"/properties/?/parameters/?/name",finalField:"name",lucenePath:"root_properties_parameters_name",CVDomain:"",displayName:"Parameter Name",dataType:"string",luceneQueryable:!1},"Disulfide Link Sites Shorthand":{fieldName:"Sites Shorthand",fieldPath:"/protein/disulfideLinks/?/sitesShorthand",finalField:"sitesShorthand",lucenePath:"root_protein_disulfideLinks_sitesShorthand",CVDomain:"",displayName:"Disulfide Link Sites Shorthand",dataType:"string",luceneQueryable:!1},"Protein Subunit Length":{fieldName:"Length",fieldPath:"/protein/subunits/?/length",finalField:"length",lucenePath:"root_protein_subunits_length",CVDomain:"",displayName:"Protein Subunit Length",dataType:"number",luceneQueryable:!1},"Mediator Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/relationships/?/mediatorSubstance/linkingID",finalField:"linkingID",lucenePath:"root_relationships_mediatorSubstance_linkingID",CVDomain:"",displayName:"Mediator Substance Linking ID",dataType:"string",luceneQueryable:!1},"Mediator Substance Name":{fieldName:"Name",fieldPath:"/relationships/?/mediatorSubstance/name",finalField:"name",lucenePath:"root_relationships_mediatorSubstance_name",CVDomain:"",displayName:"Mediator Substance Name",dataType:"string",luceneQueryable:!1},"Related Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/relationships/?/relatedSubstance/linkingID",finalField:"linkingID",lucenePath:"root_relationships_relatedSubstance_linkingID",CVDomain:"",displayName:"Related Substance Linking ID",dataType:"string",luceneQueryable:!1},"Related Substance Original Name":{fieldName:"Name",fieldPath:"/relationships/?/relatedSubstance/name",finalField:"name",lucenePath:"root_relationships_relatedSubstance_name",CVDomain:"",displayName:"Related Substance Original Name",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (m) Linking ID":{fieldName:"Linking Id",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/linkingID",finalField:"linkingID",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_linkingID",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Linking ID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (m) Name":{fieldName:"Name",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/name",finalField:"name",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_name",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Name",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (p) Linking ID":{fieldName:"Linking Id",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/linkingID",finalField:"linkingID",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_linkingID",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Linking ID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (p) Name":{fieldName:"Name",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/name",finalField:"name",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_name",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Name",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent Linking ID":{fieldName:"Linking Id",fieldPath:"/structurallyDiverse/parentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_structurallyDiverse_parentSubstance_linkingID",CVDomain:"",displayName:"St. Div. Hybrid Parent Linking ID",dataType:"number",luceneQueryable:!1},"St. Div. Hybrid Parent Name":{fieldName:"Name",fieldPath:"/structurallyDiverse/parentSubstance/name",finalField:"name",lucenePath:"root_structurallyDiverse_parentSubstance_name",CVDomain:"",displayName:"St. Div. Hybrid Parent Name",dataType:"string",luceneQueryable:!1},"Structure Hash":{fieldName:"Hash",fieldPath:"/structure/hash",finalField:"hash",lucenePath:"root_structure_hash",CVDomain:"",displayName:"Structure Hash",dataType:"string",luceneQueryable:!1},"Structure ID":{fieldName:"Id",fieldPath:"/structure/id",finalField:"id",lucenePath:"root_structure_id",CVDomain:"",displayName:"Structure ID",dataType:"string",luceneQueryable:!1},"Record Codes":{fieldName:"Codes",fieldPath:"/codes",finalField:"codes",lucenePath:"",CVDomain:"",displayName:"Record Codes",dataType:"array ",luceneQueryable:!1},"Code References":{fieldName:"References",fieldPath:"/codes/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Code References",dataType:"array ",luceneQueryable:!1},Mixture:{fieldName:"Mixture",fieldPath:"/mixture",finalField:"mixture",lucenePath:"",CVDomain:"",displayName:"Mixture",dataType:"object ",luceneQueryable:!1},"Mixture Components":{fieldName:"Components",fieldPath:"/mixture/components",finalField:"components",lucenePath:"",CVDomain:"",displayName:"Mixture Components",dataType:"array ",luceneQueryable:!1},"Mixture Component References":{fieldName:"References",fieldPath:"/mixture/components/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture Component References",dataType:"array ",luceneQueryable:!1},"Mixture Component Substance":{fieldName:"Substance",fieldPath:"/mixture/components/?/substance",finalField:"substance",lucenePath:"",CVDomain:"",displayName:"Mixture Component Substance",dataType:"object ",luceneQueryable:!1},"Mixture Component Substance References":{fieldName:"References",fieldPath:"/mixture/components/?/substance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture Component Substance References",dataType:"array ",luceneQueryable:!1},"Mixture Parent Substance":{fieldName:"Parent Substance",fieldPath:"/mixture/parentSubstance",finalField:"parentSubstance",lucenePath:"",CVDomain:"",displayName:"Mixture Parent Substance",dataType:"object ",luceneQueryable:!1},"Mixture Parent Substance References":{fieldName:"References",fieldPath:"/mixture/parentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture Parent Substance References",dataType:"array ",luceneQueryable:!1},"Mixture References":{fieldName:"References",fieldPath:"/mixture/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture References",dataType:"array ",luceneQueryable:!1},Modifications:{fieldName:"Modifications",fieldPath:"/modifications",finalField:"modifications",lucenePath:"",CVDomain:"",displayName:"Modifications",dataType:"object ",luceneQueryable:!1},"Agent Modifications":{fieldName:"Agent Modifications",fieldPath:"/modifications/agentModifications",finalField:"agentModifications",lucenePath:"",CVDomain:"",displayName:"Agent Modifications",dataType:"array ",luceneQueryable:!1},"Agent Modification Agent Substance":{fieldName:"Agent Substance",fieldPath:"/modifications/agentModifications/?/agentSubstance",finalField:"agentSubstance",lucenePath:"",CVDomain:"",displayName:"Agent Modification Agent Substance",dataType:"object ",luceneQueryable:!1},"Agent Substance References":{fieldName:"References",fieldPath:"/modifications/agentModifications/?/agentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Agent Substance References",dataType:"array ",luceneQueryable:!1},"Agent Modification Amount":{fieldName:"Amount",fieldPath:"/modifications/agentModifications/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Agent Modification Amount",dataType:"object ",luceneQueryable:!1},"Agent Modification Amount References":{fieldName:"References",fieldPath:"/modifications/agentModifications/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Agent Modification Amount References",dataType:"array ",luceneQueryable:!1},"Agent Modification References":{fieldName:"References",fieldPath:"/modifications/agentModifications/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Agent Modification References",dataType:"array ",luceneQueryable:!1},"Physical Modifications":{fieldName:"Physical Modifications",fieldPath:"/modifications/physicalModifications",finalField:"physicalModifications",lucenePath:"",CVDomain:"",displayName:"Physical Modifications",dataType:"array ",luceneQueryable:!1},"Physical Modification Parameters":{fieldName:"Parameters",fieldPath:"/modifications/physicalModifications/?/parameters",finalField:"parameters",lucenePath:"",CVDomain:"PHYSICAL_PARAMETERS",displayName:"Physical Modification Parameters",dataType:"array ",luceneQueryable:!1},"Physical Modification Parameter Amount":{fieldName:"Amount",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Physical Modification Parameter Amount",dataType:"object ",luceneQueryable:!1},"Physical Modification Amount References":{fieldName:"References",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Physical Modification Amount References",dataType:"array ",luceneQueryable:!1},"Physical Modification Parameter References":{fieldName:"References",fieldPath:"/modifications/physicalModifications/?/parameters/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Physical Modification Parameter References",dataType:"array ",luceneQueryable:!1},"Physical Modification References":{fieldName:"References",fieldPath:"/modifications/physicalModifications/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Physical Modification References",dataType:"array ",luceneQueryable:!1},"Modification References":{fieldName:"References",fieldPath:"/modifications/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Modification References",dataType:"array ",luceneQueryable:!1},"Structural Modifications":{fieldName:"Structural Modifications",fieldPath:"/modifications/structuralModifications",finalField:"structuralModifications",lucenePath:"",CVDomain:"",displayName:"Structural Modifications",dataType:"array ",luceneQueryable:!1},"Structural Modification Extent Amount":{fieldName:"Extent Amount",fieldPath:"/modifications/structuralModifications/?/extentAmount",finalField:"extentAmount",lucenePath:"",CVDomain:"",displayName:"Structural Modification Extent Amount",dataType:"object ",luceneQueryable:!1},"Structural Modification Extent Amount References":{fieldName:"References",fieldPath:"/modifications/structuralModifications/?/extentAmount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structural Modification Extent Amount References",dataType:"array ",luceneQueryable:!1},"Structural Modification Molecular Fragment":{fieldName:"Molecular Fragment",fieldPath:"/modifications/structuralModifications/?/molecularFragment",finalField:"molecularFragment",lucenePath:"",CVDomain:"",displayName:"Structural Modification Molecular Fragment",dataType:"object ",luceneQueryable:!1},"Molecular Fragment References":{fieldName:"References",fieldPath:"/modifications/structuralModifications/?/molecularFragment/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Molecular Fragment References",dataType:"array ",luceneQueryable:!1},"Structural Modification References":{fieldName:"References",fieldPath:"/modifications/structuralModifications/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structural Modification References",dataType:"array ",luceneQueryable:!1},"Structural Modification Sites":{fieldName:"Sites",fieldPath:"/modifications/structuralModifications/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Structural Modification Sites",dataType:"array ",luceneQueryable:!1},"Structural Modification Site Residue Index":{fieldName:"Residue Index",fieldPath:"/modifications/structuralModifications/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Structural Modification Site Residue Index",dataType:"number",luceneQueryable:!1},"Structural Modification Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/modifications/structuralModifications/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Structural Modification Site Subunit Index",dataType:"number",luceneQueryable:!1},"Record Moieties":{fieldName:"Moieties",fieldPath:"/moieties",finalField:"moieties",lucenePath:"",CVDomain:"",displayName:"Record Moieties",dataType:"array ",luceneQueryable:!1},"Moiety Count Amount":{fieldName:"Count Amount",fieldPath:"/moieties/?/countAmount",finalField:"countAmount",lucenePath:"",CVDomain:"",displayName:"Moiety Count Amount",dataType:"object ",luceneQueryable:!1},"Count Amount References":{fieldName:"References",fieldPath:"/moieties/?/countAmount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Count Amount References",dataType:"array ",luceneQueryable:!1},"Moiety Molfile":{fieldName:"Molfile",fieldPath:"/moieties/?/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Moiety Molfile",dataType:"string",luceneQueryable:!1},"Moiety References":{fieldName:"References",fieldPath:"/moieties/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Moiety References",dataType:"array ",luceneQueryable:!1},"Moiety Smiles":{fieldName:"Smiles",fieldPath:"/moieties/?/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Moiety Smiles",dataType:"string",luceneQueryable:!1},"Record Names":{fieldName:"Names",fieldPath:"/names",finalField:"names",lucenePath:"",CVDomain:"",displayName:"Record Names",dataType:"array ",luceneQueryable:!1},"Name Nameorgs":{fieldName:"Naming Organizations",fieldPath:"/names/?/nameOrgs",finalField:"nameOrgs",lucenePath:"",CVDomain:"",displayName:"Name Nameorgs",dataType:"array ",luceneQueryable:!1},"Naming Organization References":{fieldName:"References",fieldPath:"/names/?/nameOrgs/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Naming Organization References",dataType:"array ",luceneQueryable:!1},"Name References":{fieldName:"References",fieldPath:"/names/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Name References",dataType:"array ",luceneQueryable:!1},"Record Notes":{fieldName:"Notes",fieldPath:"/notes",finalField:"notes",lucenePath:"",CVDomain:"",displayName:"Record Notes",dataType:"array ",luceneQueryable:!1},"Note References":{fieldName:"References",fieldPath:"/notes/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Note References",dataType:"array ",luceneQueryable:!1},"Record Nucleic Acid":{fieldName:"Nucleicacid",fieldPath:"/nucleicAcid",finalField:"nucleicAcid",lucenePath:"",CVDomain:"",displayName:"Record Nucleic Acid",dataType:"object ",luceneQueryable:!1},"Nucleic Acid Linkages":{fieldName:"Linkages",fieldPath:"/nucleicAcid/linkages",finalField:"linkages",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid Linkages",dataType:"array ",luceneQueryable:!1},"Linkage References":{fieldName:"References",fieldPath:"/nucleicAcid/linkages/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Linkage References",dataType:"array ",luceneQueryable:!1},"Linkage Sites":{fieldName:"Sites",fieldPath:"/nucleicAcid/linkages/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Linkage Sites",dataType:"array ",luceneQueryable:!1},"Linkage Site Residue Index":{fieldName:"Residue Index",fieldPath:"/nucleicAcid/linkages/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Linkage Site Residue Index",dataType:"number",luceneQueryable:!1},"Linkage Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/nucleicAcid/linkages/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Linkage Site Subunit Index",dataType:"number",luceneQueryable:!1},"Nucleic Acid References":{fieldName:"References",fieldPath:"/nucleicAcid/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid References",dataType:"array ",luceneQueryable:!1},"Nucleic Acid Subunits":{fieldName:"Subunits",fieldPath:"/nucleicAcid/subunits",finalField:"subunits",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid Subunits",dataType:"array ",luceneQueryable:!1},"Nucleic Acid Subunit References":{fieldName:"References",fieldPath:"/nucleicAcid/subunits/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid Subunit References",dataType:"array ",luceneQueryable:!1},"Nucleic Acid Sugars":{fieldName:"Sugars",fieldPath:"/nucleicAcid/sugars",finalField:"sugars",lucenePath:"",CVDomain:"NUCLEIC_ACID_SUGAR",displayName:"Nucleic Acid Sugars",dataType:"array ",luceneQueryable:!1},"Sugar References":{fieldName:"References",fieldPath:"/nucleicAcid/sugars/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Sugar References",dataType:"array ",luceneQueryable:!1},"Sugar Sites":{fieldName:"Sites",fieldPath:"/nucleicAcid/sugars/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Sugar Sites",dataType:"array ",luceneQueryable:!1},"Sugar Site Residue Index":{fieldName:"Residue Index",fieldPath:"/nucleicAcid/sugars/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Sugar Site Residue Index",dataType:"number",luceneQueryable:!1},"Sugar Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/nucleicAcid/sugars/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Sugar Site Subunit Index",dataType:"number",luceneQueryable:!1},"Record Polymer":{fieldName:"Polymer",fieldPath:"/polymer",finalField:"polymer",lucenePath:"",CVDomain:"",displayName:"Record Polymer",dataType:"object ",luceneQueryable:!1},"Polymer Classification":{fieldName:"Classification",fieldPath:"/polymer/classification",finalField:"classification",lucenePath:"",CVDomain:"",displayName:"Polymer Classification",dataType:"object ",luceneQueryable:!1},"Polymer Classification Parent Substance":{fieldName:"Parent Substance",fieldPath:"/polymer/classification/parentSubstance",finalField:"parentSubstance",lucenePath:"",CVDomain:"",displayName:"Polymer Classification Parent Substance",dataType:"object ",luceneQueryable:!1},"Polymer Parent Substance References":{fieldName:"References",fieldPath:"/polymer/classification/parentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Polymer Parent Substance References",dataType:"array ",luceneQueryable:!1},"Polymer Classification References":{fieldName:"References",fieldPath:"/polymer/classification/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Polymer Classification References",dataType:"array ",luceneQueryable:!1},"Polymer Display Structure":{fieldName:"Display Structure",fieldPath:"/polymer/displayStructure",finalField:"displayStructure",lucenePath:"",CVDomain:"",displayName:"Polymer Display Structure",dataType:"object ",luceneQueryable:!1},"Display Structure Molfile":{fieldName:"Molfile",fieldPath:"/polymer/displayStructure/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Display Structure Molfile",dataType:"string",luceneQueryable:!1},"Display Structure References":{fieldName:"References",fieldPath:"/polymer/displayStructure/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Display Structure References",dataType:"array ",luceneQueryable:!1},"Display Structure Smiles":{fieldName:"Smiles",fieldPath:"/polymer/displayStructure/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Display Structure Smiles",dataType:"string",luceneQueryable:!1},"Polymer Idealized Structure":{fieldName:"Idealized Structure",fieldPath:"/polymer/idealizedStructure",finalField:"idealizedStructure",lucenePath:"",CVDomain:"",displayName:"Polymer Idealized Structure",dataType:"object ",luceneQueryable:!1},"Idealized Structure Molfile":{fieldName:"Molfile",fieldPath:"/polymer/idealizedStructure/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Idealized Structure Molfile",dataType:"string",luceneQueryable:!1},"Idealized Structure References":{fieldName:"References",fieldPath:"/polymer/idealizedStructure/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Idealized Structure References",dataType:"array ",luceneQueryable:!1},"Idealized Structure Smiles":{fieldName:"Smiles",fieldPath:"/polymer/idealizedStructure/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Idealized Structure Smiles",dataType:"string",luceneQueryable:!1},"Polymer Monomers":{fieldName:"Monomers",fieldPath:"/polymer/monomers",finalField:"monomers",lucenePath:"",CVDomain:"",displayName:"Polymer Monomers",dataType:"array ",luceneQueryable:!1},"Monomer Amount":{fieldName:"Amount",fieldPath:"/polymer/monomers/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Monomer Amount",dataType:"object ",luceneQueryable:!1},"Monomer Amount References":{fieldName:"References",fieldPath:"/polymer/monomers/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Monomer Amount References",dataType:"array ",luceneQueryable:!1},"Monomer Monomer Substance":{fieldName:"Monomer Substance",fieldPath:"/polymer/monomers/?/monomerSubstance",finalField:"monomerSubstance",lucenePath:"",CVDomain:"",displayName:"Monomer Monomer Substance",dataType:"object ",luceneQueryable:!1},"Monomer Substance References":{fieldName:"References",fieldPath:"/polymer/monomers/?/monomerSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Monomer Substance References",dataType:"array ",luceneQueryable:!1},"Monomer References":{fieldName:"References",fieldPath:"/polymer/monomers/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Monomer References",dataType:"array ",luceneQueryable:!1},"Polymer References":{fieldName:"References",fieldPath:"/polymer/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Polymer References",dataType:"array ",luceneQueryable:!1},"SRU Structuralunits":{fieldName:"Structural Units",fieldPath:"/polymer/structuralUnits",finalField:"structuralUnits",lucenePath:"",CVDomain:"",displayName:"SRU Structuralunits",dataType:"array ",luceneQueryable:!1},"SRU Amount References":{fieldName:"References",fieldPath:"/polymer/structuralUnits/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"SRU Amount References",dataType:"array ",luceneQueryable:!1},"SRU Amount Attachment Map":{fieldName:"Attachment Map",fieldPath:"/polymer/structuralUnits/?/attchmentMap",finalField:"attachmentMap",lucenePath:"",CVDomain:"",displayName:"SRU Amount Attachment Map",dataType:"object ",luceneQueryable:!1},"Record Properties":{fieldName:"Properties",fieldPath:"/properties",finalField:"properties",lucenePath:"",CVDomain:"",displayName:"Record Properties",dataType:"array ",luceneQueryable:!1},"Parameter References":{fieldName:"References",fieldPath:"/properties/?/parameters/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Parameter References",dataType:"array ",luceneQueryable:!1},"Parameter Value":{fieldName:"Value",fieldPath:"/properties/?/parameters/?/value",finalField:"value",lucenePath:"",CVDomain:"",displayName:"Parameter Value",dataType:"object ",luceneQueryable:!1},"Parameter Value References":{fieldName:"References",fieldPath:"/properties/?/parameters/?/value/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Parameter Value References",dataType:"array ",luceneQueryable:!1},"Property References":{fieldName:"References",fieldPath:"/properties/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Property References",dataType:"array ",luceneQueryable:!1},"Value References":{fieldName:"References",fieldPath:"/properties/?/value/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Value References",dataType:"array ",luceneQueryable:!1},"Record Protein":{fieldName:"Protein",fieldPath:"/protein",finalField:"protein",lucenePath:"",CVDomain:"",displayName:"Record Protein",dataType:"object ",luceneQueryable:!1},"Protein Disulfide Links":{fieldName:"Disulfide Links",fieldPath:"/protein/disulfideLinks",finalField:"disulfideLinks",lucenePath:"",CVDomain:"",displayName:"Protein Disulfide Links",dataType:"array ",luceneQueryable:!1},"Disulfide Link Sites":{fieldName:"Sites",fieldPath:"/protein/disulfideLinks/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Disulfide Link Sites",dataType:"array ",luceneQueryable:!1},"Disulfide Link Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/disulfideLinks/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Disulfide Link Site Residue Index",dataType:"number",luceneQueryable:!1},"Disulfide Link Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/disulfideLinks/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Disulfide Link Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation":{fieldName:"Glycosylation",fieldPath:"/protein/glycosylation",finalField:"glycosylation",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation",dataType:"object ",luceneQueryable:!1},"Protein Glycosylation C Glycosylation Sites":{fieldName:"C Glycosylation Sites",fieldPath:"/protein/glycosylation/CGlycosylationSites",finalField:"CGlycosylationSites",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation C Glycosylation Sites",dataType:"array ",luceneQueryable:!1},"C Glycosylation Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/glycosylation/CGlycosylationSites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"C Glycosylation Site Residue Index",dataType:"number",luceneQueryable:!1},"C Glycosylation Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/glycosylation/CGlycosylationSites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"C Glycosylation Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation N Glycosylation Sites":{fieldName:"N-Glycosylation Sites",fieldPath:"/protein/glycosylation/NGlycosylationSites",finalField:"NGlycosylationSites",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation N Glycosylation Sites",dataType:"array ",luceneQueryable:!1},"N Glycosylation Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/glycosylation/NGlycosylationSites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"N Glycosylation Site Residue Index",dataType:"number",luceneQueryable:!1},"N Glycosylation Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/glycosylation/NGlycosylationSites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"N Glycosylation Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation O Glycosylation Sites":{fieldName:"O-Glycosylation Sites",fieldPath:"/protein/glycosylation/OGlycosylationSites",finalField:"OGlycosylationSites",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation O Glycosylation Sites",dataType:"array ",luceneQueryable:!1},"O Glycosylation Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/glycosylation/OGlycosylationSites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"O Glycosylation Site Residue Index",dataType:"number",luceneQueryable:!1},"O Glycosylation Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/glycosylation/OGlycosylationSites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"O Glycosylation Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation References":{fieldName:"References",fieldPath:"/protein/glycosylation/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation References",dataType:"array ",luceneQueryable:!1},"Protein Otherlinks":{fieldName:"Other Links",fieldPath:"/protein/otherLinks",finalField:"otherLinks",lucenePath:"",CVDomain:"",displayName:"Protein Otherlinks",dataType:"array ",luceneQueryable:!1},"Other Link References":{fieldName:"References",fieldPath:"/protein/otherLinks/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Other Link References",dataType:"array ",luceneQueryable:!1},"Other Link Sites":{fieldName:"Sites",fieldPath:"/protein/otherLinks/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Other Link Sites",dataType:"array ",luceneQueryable:!1},"Other Link Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/otherLinks/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Other Link Site Residue Index",dataType:"number",luceneQueryable:!1},"Other Link Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/otherLinks/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Other Link Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein References":{fieldName:"References",fieldPath:"/protein/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Protein References",dataType:"array ",luceneQueryable:!1},"Protein Subunits":{fieldName:"Subunits",fieldPath:"/protein/subunits",finalField:"subunits",lucenePath:"",CVDomain:"",displayName:"Protein Subunits",dataType:"array ",luceneQueryable:!1},"Protein Subunit References":{fieldName:"References",fieldPath:"/protein/subunits/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Protein Subunit References",dataType:"array ",luceneQueryable:!1},"Record References":{fieldName:"References",fieldPath:"/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Record References",dataType:"array ",luceneQueryable:!1},"Record Relationships":{fieldName:"Relationships",fieldPath:"/relationships",finalField:"relationships",lucenePath:"",CVDomain:"",displayName:"Record Relationships",dataType:"array ",luceneQueryable:!1},"Relationship Amount":{fieldName:"Amount",fieldPath:"/relationships/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Relationship Amount",dataType:"object ",luceneQueryable:!1},"Relationship Amount References":{fieldName:"References",fieldPath:"/relationships/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Relationship Amount References",dataType:"array ",luceneQueryable:!1},"Relationship Mediator Substance":{fieldName:"Mediator Substance",fieldPath:"/relationships/?/mediatorSubstance",finalField:"mediatorSubstance",lucenePath:"",CVDomain:"",displayName:"Relationship Mediator Substance",dataType:"object ",luceneQueryable:!1},"Mediator Substance References":{fieldName:"References",fieldPath:"/relationships/?/mediatorSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mediator Substance References",dataType:"array ",luceneQueryable:!1},"Relationship References":{fieldName:"References",fieldPath:"/relationships/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Relationship References",dataType:"array ",luceneQueryable:!1},"Relationship Related Substance":{fieldName:"Related Substance",fieldPath:"/relationships/?/relatedSubstance",finalField:"relatedSubstance",lucenePath:"",CVDomain:"",displayName:"Relationship Related Substance",dataType:"object ",luceneQueryable:!1},"Related Substance References":{fieldName:"References",fieldPath:"/relationships/?/relatedSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Related Substance References",dataType:"array ",luceneQueryable:!1},"Record Structurally Diverse":{fieldName:"Structurally Diverse",fieldPath:"/structurallyDiverse",finalField:"structurallyDiverse",lucenePath:"",CVDomain:"",displayName:"Record Structurally Diverse",dataType:"array ",luceneQueryable:!1},"Structurally Diverse Hybrid Species Maternal Organism":{fieldName:"Hybrid Species Maternal Organism",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism",finalField:"hybridSpeciesMaternalOrganism",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse Hybrid Species Maternal Organism",dataType:"number",luceneQueryable:!1},"St. Div. Hybrid Parent (m) References":{fieldName:"References",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) References",dataType:"string",luceneQueryable:!1},"Structurally Diverse Hybrid Species Paternal Organism":{fieldName:"Hybrid Species Paternal Organism",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism",finalField:"hybridSpeciesPaternalOrganism",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse Hybrid Species Paternal Organism",dataType:"number",luceneQueryable:!1},"St. Div. Hybrid Parent (p) References":{fieldName:"References",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) References",dataType:"string",luceneQueryable:!1},"Structurally Diverse Parent Substance":{fieldName:"Parent Substance",fieldPath:"/structurallyDiverse/parentSubstance",finalField:"parentSubstance",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse Parent Substance",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent References":{fieldName:"References",fieldPath:"/structurallyDiverse/parentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"St. Div. Hybrid Parent References",dataType:"boolean",luceneQueryable:!1},"Structurally Diverse References":{fieldName:"References",fieldPath:"/structurallyDiverse/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse References",dataType:"string",luceneQueryable:!1},"Record Structure":{fieldName:"Structure",fieldPath:"/structure",finalField:"structure",lucenePath:"",CVDomain:"",displayName:"Record Structure",dataType:"string",luceneQueryable:!1},"Structure Molfile":{fieldName:"Molfile",fieldPath:"/structure/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Structure Molfile",dataType:"string",luceneQueryable:!1},"Structure References":{fieldName:"References",fieldPath:"/structure/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structure References",dataType:"string",luceneQueryable:!1},"Structure Smiles":{fieldName:"Smiles",fieldPath:"/structure/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Structure Smiles",dataType:"string",luceneQueryable:!1},SpecifiedSubstance:{fieldName:"Specified Substance",fieldPath:"/specifiedSubstance",finalField:"",lucenePath:"",CVDomain:"",displayName:"SpecifiedSubstance",dataType:"string",luceneQueryable:!1},"SpecifiedSubstance Access":{fieldName:"Access",fieldPath:"/specifiedSubstance/access",finalField:"access",lucenePath:"root_specifiedSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"SpecifiedSubstance Access",dataType:"string",luceneQueryable:!1},"SpecifiedSubstance References":{fieldName:"References",fieldPath:"/specifiedSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"SpecifiedSubstance References",dataType:"string",luceneQueryable:!1},"SpecifiedSubstance UUID":{fieldName:"Uuid",fieldPath:"/specifiedSubstance/uuid",finalField:"uuid",lucenePath:"root_specifiedSubstance_uuid",CVDomain:"",displayName:"SpecifiedSubstance UUID",dataType:"array ",luceneQueryable:!1},Constituent:{fieldName:"Constituents",fieldPath:"/specifiedSubstance/constituents",finalField:"",lucenePath:"root_specifiedSubstance_constituent",CVDomain:"",displayName:"Constituent",dataType:"string",luceneQueryable:!1},"Constituent Substance":{fieldName:"Substance",fieldPath:"/specifiedSubstance/constituents/?/substance",finalField:"parentSubstance",lucenePath:"root_specifiedSubstance_constituents_substance",CVDomain:"",displayName:"Constituent Substance",dataType:"string",luceneQueryable:!1},"Constituent Substance Access":{fieldName:"Access",fieldPath:"/specifiedSubstance/constituents/?/substance/access",finalField:"access",lucenePath:"root_specifiedSubstance_constituents_substance_access",CVDomain:"ACCESS_GROUP",displayName:"Constituent Substance Access",dataType:"string",luceneQueryable:!1},"Constituent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/specifiedSubstance/constituents/?/substance/linkingID",finalField:"linkingID",lucenePath:"root_specifiedSubstance_constituents_substance_linkingID",CVDomain:"",displayName:"Constituent Substance Linking ID",dataType:"number",luceneQueryable:!1},"Constituent Substance Name":{fieldName:"Name",fieldPath:"/specifiedSubstance/constituents/?/substance/name",finalField:"name",lucenePath:"root_specifiedSubstance_constituents_substance_name",CVDomain:"",displayName:"Constituent Substance Name",dataType:"number",luceneQueryable:!1},"Constituent Substance References":{fieldName:"References",fieldPath:"/specifiedSubstance/constituents/?/substance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Constituent Substance References",dataType:"string",luceneQueryable:!1},"Constituent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/specifiedSubstance/constituents/?/substance/substanceClass",finalField:"substanceClass",lucenePath:"root_specifiedSubstance_constituents_substance_substanceClass",CVDomain:"",displayName:"Constituent Substance Substance Class",dataType:"string",luceneQueryable:!1},"Constituent Amount":{fieldName:"Amount",fieldPath:"/specifiedSubstance/constituents/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Constituent Amount",dataType:"string",luceneQueryable:!1},"Constituent Amount Access":{fieldName:"Access",fieldPath:"/specifiedSubstance/constituents/?/amount/access",finalField:"access",lucenePath:"root_specifiedSubstance_constituents_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Constituent Amount Access",dataType:"string",luceneQueryable:!1},"Constituent Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/specifiedSubstance/constituents/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_specifiedSubstance_constituents_amount_deprecated",CVDomain:"",displayName:"Constituent Amount Deprecated",dataType:"string",luceneQueryable:!1},"Constituent Amount References":{fieldName:"References",fieldPath:"/specifiedSubstance/constituents/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Constituent Amount References",dataType:"string",luceneQueryable:!1},"Constituent Amount UUID":{fieldName:"Uuid",fieldPath:"/specifiedSubstance/constituents/?/amount/uuid",finalField:"uuid",lucenePath:"root_specifiedSubstance_constituents_amount_uuid",CVDomain:"",displayName:"Constituent Amount UUID",dataType:"string",luceneQueryable:!1},"Moiety Atropisomerism":{fieldName:"Atropisomerism",fieldPath:"/moieties/?/atropisomerism",finalField:"atropisomerism",lucenePath:"root_moieties_structure_atropisomerism",CVDomain:"ATROPISOMERISM",displayName:"Moiety Atropisomerism",dataType:"string",luceneQueryable:!1},"Moiety Charge":{fieldName:"Charge",fieldPath:"/moieties/?/charge",finalField:"charge",lucenePath:"root_moieties_structure_charge",CVDomain:"",displayName:"Moiety Charge",dataType:"number",luceneQueryable:!1},"Moiety Count":{fieldName:"Count",fieldPath:"/moieties/?/count",finalField:"count",lucenePath:"root_moieties_structure_count",CVDomain:"",displayName:"Moiety Count",dataType:"number",luceneQueryable:!1},"Moiety Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/moieties/?/definedStereo",finalField:"definedStereo",lucenePath:"root_moieties_structure_definedStereo",CVDomain:"",displayName:"Moiety Defined Stereo",dataType:"number",luceneQueryable:!1},"Moiety Digest":{fieldName:"Digest",fieldPath:"/moieties/?/digest",finalField:"digest",lucenePath:"root_moieties_structure_digest",CVDomain:"",displayName:"Moiety Digest",dataType:"string",luceneQueryable:!1},"Moiety Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/moieties/?/ezCenters",finalField:"ezCenters",lucenePath:"root_moieties_structure_ezCenters",CVDomain:"",displayName:"Moiety Ez Centers",dataType:"number",luceneQueryable:!1},"Moiety Formula":{fieldName:"Formula",fieldPath:"/moieties/?/formula",finalField:"formula",lucenePath:"root_moieties_structure_formula",CVDomain:"",displayName:"Moiety Formula",dataType:"string",luceneQueryable:!1},"Moiety Mwt":{fieldName:"Molecular Weight",fieldPath:"/moieties/?/mwt",finalField:"mwt",lucenePath:"root_moieties_structure_mwt",CVDomain:"",displayName:"Moiety Mwt",dataType:"number",luceneQueryable:!1},"Moiety Optical Activity":{fieldName:"Optical Activity",fieldPath:"/moieties/?/opticalActivity",finalField:"opticalActivity",lucenePath:"root_moieties_structure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Moiety Optical Activity",dataType:"string",luceneQueryable:!1},"Moiety Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/moieties/?/stereoCenters",finalField:"stereoCenters",lucenePath:"root_moieties_structure_stereoCenters",CVDomain:"",displayName:"Moiety Stereo Centers",dataType:"number",luceneQueryable:!1},"Moiety Stereo Comments":{fieldName:"Stereo Comments",fieldPath:"/moieties/?/stereoComments",finalField:"stereoComments",lucenePath:"root_moieties_structure_stereoComments",CVDomain:"",displayName:"Moiety Stereo Comments",dataType:"string",luceneQueryable:!1},"Name Domains":{fieldName:"Domains",fieldPath:"/names/?/domains",finalField:"domains",lucenePath:"root_names_domains_term",CVDomain:"NAME_DOMAIN",displayName:"Name Domains",dataType:"array ",luceneQueryable:!1},"Name Languages":{fieldName:"Languages",fieldPath:"/names/?/languages",finalField:"languages",lucenePath:"root_names_languages_term",CVDomain:"LANGUAGE",displayName:"Name Languages",dataType:"array ",luceneQueryable:!1},"Name Name Jurisdiction":{fieldName:"Naming Jurisdictions",fieldPath:"/names/?/nameJurisdiction",finalField:"nameJurisdiction",lucenePath:"root_names_nameJurisdiction_term",CVDomain:"JURISDICTION",displayName:"Name Name Jurisdiction",dataType:"array ",luceneQueryable:!1},"Polymer Classification Polymer Subclass":{fieldName:"Polymer Subclass",fieldPath:"/polymer/classification/polymerSubclass",finalField:"polymerSubclass",lucenePath:"root_polymer_classification_polymerSubclass_term",CVDomain:"POLYMER_SUBCLASS",displayName:"Polymer Classification Polymer Subclass",dataType:"array ",luceneQueryable:!1},"Reference Tags":{fieldName:"Tags",fieldPath:"/references/?/tags",finalField:"tags",lucenePath:"root_references_tags_term",CVDomain:"DOCUMENT_COLLECTION",displayName:"Reference Tags",dataType:"array ",luceneQueryable:!1},"Structurally Diverse Part":{fieldName:"Part",fieldPath:"/structurallyDiverse/part",finalField:"part",lucenePath:"root_structurallyDiverse_part_term",CVDomain:"PART",displayName:"Structurally Diverse Part",dataType:"array ",luceneQueryable:!1},"Record Tags":{fieldName:"Tags",fieldPath:"/tags",finalField:"tags",lucenePath:"root_tags_term",CVDomain:"",displayName:"Record Tags",dataType:"string",luceneQueryable:!1},"Record Access":{fieldName:"Access",fieldPath:"/access",finalField:"access",lucenePath:"root_access",CVDomain:"ACCESS_GROUP",displayName:"Record Access",dataType:"array ",luceneQueryable:!0},"Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/approvalID",finalField:"approvalID",lucenePath:"root_approvalID",CVDomain:"",displayName:"Approval ID",dataType:"string",luceneQueryable:!0},"Record Approved By":{fieldName:"Approved By",fieldPath:"/approvedBy",finalField:"approvedBy",lucenePath:"root_approvedBy",CVDomain:"",displayName:"Record Approved By",dataType:"string",luceneQueryable:!0},"Record Change Reason":{fieldName:"Change Reason",fieldPath:"/changeReason",finalField:"changeReason",lucenePath:"root_changeReason",CVDomain:"",displayName:"Record Change Reason",dataType:"string",luceneQueryable:!0},"Code Access":{fieldName:"Access",fieldPath:"/codes/?/access",finalField:"access",lucenePath:"root_codes_access",CVDomain:"ACCESS_GROUP",displayName:"Code Access",dataType:"array ",luceneQueryable:!0},"Code Literal":{fieldName:"Code",fieldPath:"/codes/?/code",finalField:"code",lucenePath:"root_codes_code",CVDomain:"",displayName:"Code Literal",dataType:"string",luceneQueryable:!0},"Code System":{fieldName:"Code System",fieldPath:"/codes/?/codeSystem",finalField:"codeSystem",lucenePath:"root_codes_codeSystem",CVDomain:"CODE_SYSTEM",displayName:"Code System",dataType:"string",luceneQueryable:!0},"Code Comments":{fieldName:"Comments",fieldPath:"/codes/?/comments",finalField:"comments",lucenePath:"root_codes_comments",CVDomain:"",displayName:"Code Comments",dataType:"string",luceneQueryable:!0},"Code Created":{fieldName:"Created",fieldPath:"/codes/?/created",finalField:"created",lucenePath:"root_codes_created",CVDomain:"",displayName:"Code Created",dataType:"number",luceneQueryable:!0},"Code Created By":{fieldName:"Created By",fieldPath:"/codes/?/createdBy",finalField:"createdBy",lucenePath:"root_codes_createdBy",CVDomain:"",displayName:"Code Created By",dataType:"string",luceneQueryable:!0},"Code Deprecated":{fieldName:"Deprecated",fieldPath:"/codes/?/deprecated",finalField:"deprecated",lucenePath:"root_codes_deprecated",CVDomain:"",displayName:"Code Deprecated",dataType:"boolean",luceneQueryable:!0},"Code Last Edited":{fieldName:"Last Edited",fieldPath:"/codes/?/lastEdited",finalField:"lastEdited",lucenePath:"root_codes_lastEdited",CVDomain:"",displayName:"Code Last Edited",dataType:"number",luceneQueryable:!0},"Code Last Edited By":{fieldName:"Last Edited By",fieldPath:"/codes/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_codes_lastEditedBy",CVDomain:"",displayName:"Code Last Edited By",dataType:"string",luceneQueryable:!0},"Code Type":{fieldName:"Code Type",fieldPath:"/codes/?/type",finalField:"type",lucenePath:"root_codes_type",CVDomain:"CODE_TYPE",displayName:"Code Type",dataType:"string",luceneQueryable:!0},"Code URL":{fieldName:"Url",fieldPath:"/codes/?/url",finalField:"url",lucenePath:"root_codes_url",CVDomain:"",displayName:"Code URL",dataType:"string",luceneQueryable:!0},"Record Created":{fieldName:"Created",fieldPath:"/created",finalField:"created",lucenePath:"root_created",CVDomain:"",displayName:"Record Created",dataType:"number",luceneQueryable:!0},"Record Created By":{fieldName:"Created By",fieldPath:"/createdBy",finalField:"createdBy",lucenePath:"root_createdBy",CVDomain:"",displayName:"Record Created By",dataType:"string",luceneQueryable:!0},"Record Definition Level":{fieldName:"Definition Level",fieldPath:"/definitionLevel",finalField:"definitionLevel",lucenePath:"root_definitionLevel",CVDomain:"",displayName:"Record Definition Level",dataType:"string",luceneQueryable:!0},"Record Definition Type":{fieldName:"Definition Type",fieldPath:"/definitionType",finalField:"definitionType",lucenePath:"root_definitionType",CVDomain:"",displayName:"Record Definition Type",dataType:"string",luceneQueryable:!0},"Record Deprecated":{fieldName:"Deprecated",fieldPath:"/deprecated",finalField:"deprecated",lucenePath:"root_deprecated",CVDomain:"",displayName:"Record Deprecated",dataType:"boolean",luceneQueryable:!0},"Record Last Edited":{fieldName:"Last Edited",fieldPath:"/lastEdited",finalField:"lastEdited",lucenePath:"root_lastEdited",CVDomain:"",displayName:"Record Last Edited",dataType:"number",luceneQueryable:!0},"Record Last Edited By":{fieldName:"Last Edited By",fieldPath:"/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_lastEditedBy",CVDomain:"",displayName:"Record Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Access":{fieldName:"Access",fieldPath:"/mixture/access",finalField:"access",lucenePath:"root_mixture_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Access",dataType:"array ",luceneQueryable:!0},"Mixture Component Access":{fieldName:"Access",fieldPath:"/mixture/components/?/access",finalField:"access",lucenePath:"root_mixture_components_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Component Access",dataType:"array ",luceneQueryable:!0},"Mixture Component Created":{fieldName:"Created",fieldPath:"/mixture/components/?/created",finalField:"created",lucenePath:"root_mixture_components_created",CVDomain:"",displayName:"Mixture Component Created",dataType:"number",luceneQueryable:!0},"Mixture Component Created By":{fieldName:"Created By",fieldPath:"/mixture/components/?/createdBy",finalField:"createdBy",lucenePath:"root_mixture_components_createdBy",CVDomain:"",displayName:"Mixture Component Created By",dataType:"string",luceneQueryable:!0},"Mixture Component Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/components/?/deprecated",finalField:"deprecated",lucenePath:"root_mixture_components_deprecated",CVDomain:"",displayName:"Mixture Component Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Component Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/components/?/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_components_lastEdited",CVDomain:"",displayName:"Mixture Component Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Component Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/components/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_components_lastEditedBy",CVDomain:"",displayName:"Mixture Component Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Access":{fieldName:"Access",fieldPath:"/mixture/components/?/substance/access",finalField:"access",lucenePath:"root_mixture_components_substance_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Component Substance Access",dataType:"array ",luceneQueryable:!0},"Mixture Component ApprovalID":{fieldName:"Approval ID (UNII)",fieldPath:"/mixture/components/?/substance/approvalID",finalField:"approvalID",lucenePath:"root_mixture_components_substance_approvalID",CVDomain:"",displayName:"Mixture Component ApprovalID",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Created":{fieldName:"Created",fieldPath:"/mixture/components/?/substance/created",finalField:"created",lucenePath:"root_mixture_components_substance_created",CVDomain:"",displayName:"Mixture Component Substance Created",dataType:"number",luceneQueryable:!0},"Mixture Component Substance Created By":{fieldName:"Created By",fieldPath:"/mixture/components/?/substance/createdBy",finalField:"createdBy",lucenePath:"root_mixture_components_substance_createdBy",CVDomain:"",displayName:"Mixture Component Substance Created By",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/components/?/substance/deprecated",finalField:"deprecated",lucenePath:"root_mixture_components_substance_deprecated",CVDomain:"",displayName:"Mixture Component Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Component Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/components/?/substance/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_components_substance_lastEdited",CVDomain:"",displayName:"Mixture Component Substance Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Component Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/components/?/substance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_components_substance_lastEditedBy",CVDomain:"",displayName:"Mixture Component Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Component Name":{fieldName:"Ref Pname",fieldPath:"/mixture/components/?/substance/refPname",finalField:"refPname",lucenePath:"root_mixture_components_substance_refPname",CVDomain:"",displayName:"Mixture Component Name",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/mixture/components/?/substance/refuuid",finalField:"refuuid",lucenePath:"root_mixture_components_substance_refuuid",CVDomain:"",displayName:"Mixture Component Substance Refuuid",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/mixture/components/?/substance/substanceClass",finalField:"substanceClass",lucenePath:"root_mixture_components_substance_substanceClass",CVDomain:"",displayName:"Mixture Component Substance Substance Class",dataType:"string",luceneQueryable:!0},"Mixture Component Type":{fieldName:"Type",fieldPath:"/mixture/components/?/type",finalField:"type",lucenePath:"root_mixture_components_type",CVDomain:"MIXTURE_TYPE",displayName:"Mixture Component Type",dataType:"string",luceneQueryable:!0},"Mixture Created":{fieldName:"Created",fieldPath:"/mixture/created",finalField:"created",lucenePath:"root_mixture_created",CVDomain:"",displayName:"Mixture Created",dataType:"number",luceneQueryable:!0},"Mixture Created By":{fieldName:"Created By",fieldPath:"/mixture/createdBy",finalField:"createdBy",lucenePath:"root_mixture_createdBy",CVDomain:"",displayName:"Mixture Created By",dataType:"string",luceneQueryable:!0},"Mixture Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/deprecated",finalField:"deprecated",lucenePath:"root_mixture_deprecated",CVDomain:"",displayName:"Mixture Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_lastEdited",CVDomain:"",displayName:"Mixture Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_lastEditedBy",CVDomain:"",displayName:"Mixture Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Access":{fieldName:"Access",fieldPath:"/mixture/parentSubstance/access",finalField:"access",lucenePath:"root_mixture_parentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Parent Substance Access",dataType:"array ",luceneQueryable:!0},"Mixture Parent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/mixture/parentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_mixture_parentSubstance_approvalID",CVDomain:"",displayName:"Mixture Parent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Created":{fieldName:"Created",fieldPath:"/mixture/parentSubstance/created",finalField:"created",lucenePath:"root_mixture_parentSubstance_created",CVDomain:"",displayName:"Mixture Parent Substance Created",dataType:"number",luceneQueryable:!0},"Mixture Parent Substance Created By":{fieldName:"Created By",fieldPath:"/mixture/parentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_mixture_parentSubstance_createdBy",CVDomain:"",displayName:"Mixture Parent Substance Created By",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/parentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_mixture_parentSubstance_deprecated",CVDomain:"",displayName:"Mixture Parent Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Parent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/parentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_parentSubstance_lastEdited",CVDomain:"",displayName:"Mixture Parent Substance Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Parent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/parentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_parentSubstance_lastEditedBy",CVDomain:"",displayName:"Mixture Parent Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/mixture/parentSubstance/refPname",finalField:"refPname",lucenePath:"root_mixture_parentSubstance_refPname",CVDomain:"",displayName:"Mixture Parent Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/mixture/parentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_mixture_parentSubstance_refuuid",CVDomain:"",displayName:"Mixture Parent Substance Refuuid",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/mixture/parentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_mixture_parentSubstance_substanceClass",CVDomain:"",displayName:"Mixture Parent Substance Substance Class",dataType:"string",luceneQueryable:!0},"Modification Access":{fieldName:"Access",fieldPath:"/modifications/access",finalField:"access",lucenePath:"root_modifications_access",CVDomain:"ACCESS_GROUP",displayName:"Modification Access",dataType:"array ",luceneQueryable:!0},"Agent Modification Access":{fieldName:"Access",fieldPath:"/modifications/agentModifications/?/access",finalField:"access",lucenePath:"root_modifications_agentModifications_access",CVDomain:"ACCESS_GROUP",displayName:"Agent Modification Access",dataType:"array ",luceneQueryable:!0},"Agent Modification Agent Modification Process":{fieldName:"Agent Modification Process",fieldPath:"/modifications/agentModifications/?/agentModificationProcess",finalField:"agentModificationProcess",lucenePath:"root_modifications_agentModifications_agentModificationProcess",CVDomain:"AGENT_MODIFICATION_PROCESS",displayName:"Agent Modification Agent Modification Process",dataType:"string",luceneQueryable:!0},"Agent Modification Agent Modification Role":{fieldName:"Agent Modification Role",fieldPath:"/modifications/agentModifications/?/agentModificationRole",finalField:"agentModificationRole",lucenePath:"root_modifications_agentModifications_agentModificationRole",CVDomain:"ROLE",displayName:"Agent Modification Agent Modification Role",dataType:"string",luceneQueryable:!0},"Agent Modification Agent Modification Type":{fieldName:"Agent Modification Type",fieldPath:"/modifications/agentModifications/?/agentModificationType",finalField:"agentModificationType",lucenePath:"root_modifications_agentModifications_agentModificationType",CVDomain:"AGENT_MODIFICATION_TYPE",displayName:"Agent Modification Agent Modification Type",dataType:"string",luceneQueryable:!0},"Agent Substance Access":{fieldName:"Access",fieldPath:"/modifications/agentModifications/?/agentSubstance/access",finalField:"access",lucenePath:"root_modifications_agentModifications_agentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Agent Substance Access",dataType:"array ",luceneQueryable:!0},"Agent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/modifications/agentModifications/?/agentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_modifications_agentModifications_agentSubstance_approvalID",CVDomain:"",displayName:"Agent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Agent Substance Created":{fieldName:"Created",fieldPath:"/modifications/agentModifications/?/agentSubstance/created",finalField:"created",lucenePath:"root_modifications_agentModifications_agentSubstance_created",CVDomain:"",displayName:"Agent Substance Created",dataType:"number",luceneQueryable:!0},"Agent Substance Created By":{fieldName:"Created By",fieldPath:"/modifications/agentModifications/?/agentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_modifications_agentModifications_agentSubstance_createdBy",CVDomain:"",displayName:"Agent Substance Created By",dataType:"string",luceneQueryable:!0},"Agent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/agentModifications/?/agentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_modifications_agentModifications_agentSubstance_deprecated",CVDomain:"",displayName:"Agent Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Agent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/agentModifications/?/agentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_agentModifications_agentSubstance_lastEdited",CVDomain:"",displayName:"Agent Substance Last Edited",dataType:"number",luceneQueryable:!0},"Agent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/agentModifications/?/agentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_agentModifications_agentSubstance_lastEditedBy",CVDomain:"",displayName:"Agent Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Agent Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/modifications/agentModifications/?/agentSubstance/refPname",finalField:"refPname",lucenePath:"root_modifications_agentModifications_agentSubstance_refPname",CVDomain:"",displayName:"Agent Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Agent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/modifications/agentModifications/?/agentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_modifications_agentModifications_agentSubstance_refuuid",CVDomain:"",displayName:"Agent Substance Refuuid",dataType:"string",luceneQueryable:!0},"Agent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/modifications/agentModifications/?/agentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_modifications_agentModifications_agentSubstance_substanceClass",CVDomain:"",displayName:"Agent Substance Substance Class",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Access":{fieldName:"Access",fieldPath:"/modifications/agentModifications/?/amount/access",finalField:"access",lucenePath:"root_modifications_agentModifications_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Agent Modification Amount Access",dataType:"array ",luceneQueryable:!0},"Agent Modification Amount Average":{fieldName:"Average",fieldPath:"/modifications/agentModifications/?/amount/average",finalField:"average",lucenePath:"root_modifications_agentModifications_amount_average",CVDomain:"",displayName:"Agent Modification Amount Average",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Created":{fieldName:"Created",fieldPath:"/modifications/agentModifications/?/amount/created",finalField:"created",lucenePath:"root_modifications_agentModifications_amount_created",CVDomain:"",displayName:"Agent Modification Amount Created",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Created By":{fieldName:"Created By",fieldPath:"/modifications/agentModifications/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_modifications_agentModifications_amount_createdBy",CVDomain:"",displayName:"Agent Modification Amount Created By",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/agentModifications/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_modifications_agentModifications_amount_deprecated",CVDomain:"",displayName:"Agent Modification Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Agent Modification Amount High":{fieldName:"High",fieldPath:"/modifications/agentModifications/?/amount/high",finalField:"high",lucenePath:"root_modifications_agentModifications_amount_high",CVDomain:"",displayName:"Agent Modification Amount High",dataType:"number",luceneQueryable:!0},"Agent Modification Amount High Limit":{fieldName:"High Limit",fieldPath:"/modifications/agentModifications/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_modifications_agentModifications_amount_highLimit",CVDomain:"",displayName:"Agent Modification Amount High Limit",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/agentModifications/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_agentModifications_amount_lastEdited",CVDomain:"",displayName:"Agent Modification Amount Last Edited",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/agentModifications/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_agentModifications_amount_lastEditedBy",CVDomain:"",displayName:"Agent Modification Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Low":{fieldName:"Low",fieldPath:"/modifications/agentModifications/?/amount/low",finalField:"low",lucenePath:"root_modifications_agentModifications_amount_low",CVDomain:"",displayName:"Agent Modification Amount Low",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/modifications/agentModifications/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_modifications_agentModifications_amount_lowLimit",CVDomain:"",displayName:"Agent Modification Amount Low Limit",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/modifications/agentModifications/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_modifications_agentModifications_amount_nonNumericValue",CVDomain:"",displayName:"Agent Modification Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Type":{fieldName:"Type",fieldPath:"/modifications/agentModifications/?/amount/type",finalField:"type",lucenePath:"root_modifications_agentModifications_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Agent Modification Amount Type",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Units":{fieldName:"Units",fieldPath:"/modifications/agentModifications/?/amount/units",finalField:"units",lucenePath:"root_modifications_agentModifications_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Agent Modification Amount Units",dataType:"string",luceneQueryable:!0},"Agent Modification Created":{fieldName:"Created",fieldPath:"/modifications/agentModifications/?/created",finalField:"created",lucenePath:"root_modifications_agentModifications_created",CVDomain:"",displayName:"Agent Modification Created",dataType:"number",luceneQueryable:!0},"Agent Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/agentModifications/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_agentModifications_createdBy",CVDomain:"",displayName:"Agent Modification Created By",dataType:"string",luceneQueryable:!0},"Agent Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/agentModifications/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_agentModifications_deprecated",CVDomain:"",displayName:"Agent Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Agent Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/agentModifications/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_agentModifications_lastEdited",CVDomain:"",displayName:"Agent Modification Last Edited",dataType:"number",luceneQueryable:!0},"Agent Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/agentModifications/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_agentModifications_lastEditedBy",CVDomain:"",displayName:"Agent Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Agent Modification Modification Group":{fieldName:"Modification Group",fieldPath:"/modifications/agentModifications/?/modificationGroup",finalField:"modificationGroup",lucenePath:"root_modifications_agentModifications_modificationGroup",CVDomain:"",displayName:"Agent Modification Modification Group",dataType:"string",luceneQueryable:!0},"Modification Created":{fieldName:"Created",fieldPath:"/modifications/created",finalField:"created",lucenePath:"root_modifications_created",CVDomain:"",displayName:"Modification Created",dataType:"number",luceneQueryable:!0},"Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/createdBy",finalField:"createdBy",lucenePath:"root_modifications_createdBy",CVDomain:"",displayName:"Modification Created By",dataType:"string",luceneQueryable:!0},"Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/deprecated",finalField:"deprecated",lucenePath:"root_modifications_deprecated",CVDomain:"",displayName:"Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_lastEdited",CVDomain:"",displayName:"Modification Last Edited",dataType:"number",luceneQueryable:!0},"Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_lastEditedBy",CVDomain:"",displayName:"Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Access":{fieldName:"Access",fieldPath:"/modifications/physicalModifications/?/access",finalField:"access",lucenePath:"root_modifications_physicalModifications_access",CVDomain:"ACCESS_GROUP",displayName:"Physical Modification Access",dataType:"array ",luceneQueryable:!0},"Physical Modification Created":{fieldName:"Created",fieldPath:"/modifications/physicalModifications/?/created",finalField:"created",lucenePath:"root_modifications_physicalModifications_created",CVDomain:"",displayName:"Physical Modification Created",dataType:"number",luceneQueryable:!0},"Physical Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/physicalModifications/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_physicalModifications_createdBy",CVDomain:"",displayName:"Physical Modification Created By",dataType:"string",luceneQueryable:!0},"Physical Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/physicalModifications/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_physicalModifications_deprecated",CVDomain:"",displayName:"Physical Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Physical Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/physicalModifications/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_physicalModifications_lastEdited",CVDomain:"",displayName:"Physical Modification Last Edited",dataType:"number",luceneQueryable:!0},"Physical Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/physicalModifications/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_physicalModifications_lastEditedBy",CVDomain:"",displayName:"Physical Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Modification Group":{fieldName:"Modification Group",fieldPath:"/modifications/physicalModifications/?/modificationGroup",finalField:"modificationGroup",lucenePath:"root_modifications_physicalModifications_modificationGroup",CVDomain:"",displayName:"Physical Modification Modification Group",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Access":{fieldName:"Access",fieldPath:"/modifications/physicalModifications/?/parameters/?/access",finalField:"access",lucenePath:"root_modifications_physicalModifications_parameters_access",CVDomain:"ACCESS_GROUP",displayName:"Physical Modification Parameter Access",dataType:"array ",luceneQueryable:!0},"Physical Modification Amount Access":{fieldName:"Access",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/access",finalField:"access",lucenePath:"root_modifications_physicalModifications_parameters_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Physical Modification Amount Access",dataType:"array ",luceneQueryable:!0},"Physical Modification Amount Average":{fieldName:"Average",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/average",finalField:"average",lucenePath:"root_modifications_physicalModifications_parameters_amount_average",CVDomain:"",displayName:"Physical Modification Amount Average",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Created":{fieldName:"Created",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/created",finalField:"created",lucenePath:"root_modifications_physicalModifications_parameters_amount_created",CVDomain:"",displayName:"Physical Modification Amount Created",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Created By":{fieldName:"Created By",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_modifications_physicalModifications_parameters_amount_createdBy",CVDomain:"",displayName:"Physical Modification Amount Created By",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_modifications_physicalModifications_parameters_amount_deprecated",CVDomain:"",displayName:"Physical Modification Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Physical Modification Amount High Limit":{fieldName:"High Limit",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_modifications_physicalModifications_parameters_amount_highLimit",CVDomain:"",displayName:"Physical Modification Amount High Limit",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_physicalModifications_parameters_amount_lastEdited",CVDomain:"",displayName:"Physical Modification Amount Last Edited",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_physicalModifications_parameters_amount_lastEditedBy",CVDomain:"",displayName:"Physical Modification Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_modifications_physicalModifications_parameters_amount_lowLimit",CVDomain:"",displayName:"Physical Modification Amount Low Limit",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_modifications_physicalModifications_parameters_amount_nonNumericValue",CVDomain:"",displayName:"Physical Modification Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Type":{fieldName:"Type",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/type",finalField:"type",lucenePath:"root_modifications_physicalModifications_parameters_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Physical Modification Amount Type",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Units":{fieldName:"Units",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/units",finalField:"units",lucenePath:"root_modifications_physicalModifications_parameters_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Physical Modification Amount Units",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Created":{fieldName:"Created",fieldPath:"/modifications/physicalModifications/?/parameters/?/created",finalField:"created",lucenePath:"root_modifications_physicalModifications_parameters_created",CVDomain:"",displayName:"Physical Modification Parameter Created",dataType:"number",luceneQueryable:!0},"Physical Modification Parameter Created By":{fieldName:"Created By",fieldPath:"/modifications/physicalModifications/?/parameters/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_physicalModifications_parameters_createdBy",CVDomain:"",displayName:"Physical Modification Parameter Created By",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/physicalModifications/?/parameters/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_physicalModifications_parameters_deprecated",CVDomain:"",displayName:"Physical Modification Parameter Deprecated",dataType:"boolean",luceneQueryable:!0},"Physical Modification Parameter Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/physicalModifications/?/parameters/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_physicalModifications_parameters_lastEdited",CVDomain:"",displayName:"Physical Modification Parameter Last Edited",dataType:"number",luceneQueryable:!0},"Physical Modification Parameter Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/physicalModifications/?/parameters/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_physicalModifications_parameters_lastEditedBy",CVDomain:"",displayName:"Physical Modification Parameter Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Parameter Name":{fieldName:"Parameter Name",fieldPath:"/modifications/physicalModifications/?/parameters/?/parameterName",finalField:"parameterName",lucenePath:"root_modifications_physicalModifications_parameters_parameterName",CVDomain:"",displayName:"Physical Modification Parameter Parameter Name",dataType:"string",luceneQueryable:!0},"Physical Modification Physical Modification Role":{fieldName:"Physicalmodificationrole",fieldPath:"/modifications/physicalModifications/?/physicalModificationRole",finalField:"physicalModificationRole",lucenePath:"root_modifications_physicalModifications_physicalModificationRole",CVDomain:"PHYSICAL_MODIFICATION_ROLE",displayName:"Physical Modification Physical Modification Role",dataType:"string",luceneQueryable:!0},"Structural Modification Access":{fieldName:"Access",fieldPath:"/modifications/structuralModifications/?/access",finalField:"access",lucenePath:"root_modifications_structuralModifications_access",CVDomain:"ACCESS_GROUP",displayName:"Structural Modification Access",dataType:"array ",luceneQueryable:!0},"Structural Modification Created":{fieldName:"Created",fieldPath:"/modifications/structuralModifications/?/created",finalField:"created",lucenePath:"root_modifications_structuralModifications_created",CVDomain:"",displayName:"Structural Modification Created",dataType:"number",luceneQueryable:!0},"Structural Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/structuralModifications/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_structuralModifications_createdBy",CVDomain:"",displayName:"Structural Modification Created By",dataType:"string",luceneQueryable:!0},"Structural Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/structuralModifications/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_structuralModifications_deprecated",CVDomain:"",displayName:"Structural Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Structural Modification Extent":{fieldName:"Extent",fieldPath:"/modifications/structuralModifications/?/extent",finalField:"extent",lucenePath:"root_modifications_structuralModifications_extent",CVDomain:"EXTENT_TYPE",displayName:"Structural Modification Extent",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Access":{fieldName:"Access",fieldPath:"/modifications/structuralModifications/?/extentAmount/access",finalField:"access",lucenePath:"root_modifications_structuralModifications_extentAmount_access",CVDomain:"ACCESS_GROUP",displayName:"Structural Modification Extent Amount Access",dataType:"array ",luceneQueryable:!0},"Structural Modification Extent Amount Average":{fieldName:"Average",fieldPath:"/modifications/structuralModifications/?/extentAmount/average",finalField:"average",lucenePath:"root_modifications_structuralModifications_extentAmount_average",CVDomain:"",displayName:"Structural Modification Extent Amount Average",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Created":{fieldName:"Created",fieldPath:"/modifications/structuralModifications/?/extentAmount/created",finalField:"created",lucenePath:"root_modifications_structuralModifications_extentAmount_created",CVDomain:"",displayName:"Structural Modification Extent Amount Created",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Created By":{fieldName:"Created By",fieldPath:"/modifications/structuralModifications/?/extentAmount/createdBy",finalField:"createdBy",lucenePath:"root_modifications_structuralModifications_extentAmount_createdBy",CVDomain:"",displayName:"Structural Modification Extent Amount Created By",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/structuralModifications/?/extentAmount/deprecated",finalField:"deprecated",lucenePath:"root_modifications_structuralModifications_extentAmount_deprecated",CVDomain:"",displayName:"Structural Modification Extent Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Structural Modification Extent Amount High":{fieldName:"High",fieldPath:"/modifications/structuralModifications/?/extentAmount/high",finalField:"high",lucenePath:"root_modifications_structuralModifications_extentAmount_high",CVDomain:"",displayName:"Structural Modification Extent Amount High",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount High Limit":{fieldName:"High Limit",fieldPath:"/modifications/structuralModifications/?/extentAmount/highLimit",finalField:"highLimit",lucenePath:"root_modifications_structuralModifications_extentAmount_highLimit",CVDomain:"",displayName:"Structural Modification Extent Amount High Limit",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/structuralModifications/?/extentAmount/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_structuralModifications_extentAmount_lastEdited",CVDomain:"",displayName:"Structural Modification Extent Amount Last Edited",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/structuralModifications/?/extentAmount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_structuralModifications_extentAmount_lastEditedBy",CVDomain:"",displayName:"Structural Modification Extent Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Low":{fieldName:"Low",fieldPath:"/modifications/structuralModifications/?/extentAmount/low",finalField:"low",lucenePath:"root_modifications_structuralModifications_extentAmount_low",CVDomain:"",displayName:"Structural Modification Extent Amount Low",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/modifications/structuralModifications/?/extentAmount/lowLimit",finalField:"lowLimit",lucenePath:"root_modifications_structuralModifications_extentAmount_lowLimit",CVDomain:"",displayName:"Structural Modification Extent Amount Low Limit",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/modifications/structuralModifications/?/extentAmount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_modifications_structuralModifications_extentAmount_nonNumericValue",CVDomain:"",displayName:"Structural Modification Extent Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Type":{fieldName:"Type",fieldPath:"/modifications/structuralModifications/?/extentAmount/type",finalField:"type",lucenePath:"root_modifications_structuralModifications_extentAmount_type",CVDomain:"AMOUNT_TYPE",displayName:"Structural Modification Extent Amount Type",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Units":{fieldName:"Units",fieldPath:"/modifications/structuralModifications/?/extentAmount/units",finalField:"units",lucenePath:"root_modifications_structuralModifications_extentAmount_units",CVDomain:"AMOUNT_UNIT",displayName:"Structural Modification Extent Amount Units",dataType:"string",luceneQueryable:!0},"Structural Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/structuralModifications/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_structuralModifications_lastEdited",CVDomain:"",displayName:"Structural Modification Last Edited",dataType:"number",luceneQueryable:!0},"Structural Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/structuralModifications/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_structuralModifications_lastEditedBy",CVDomain:"",displayName:"Structural Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Structural Modification Locationtype":{fieldName:"Location Type",fieldPath:"/modifications/structuralModifications/?/locationType",finalField:"locationType",lucenePath:"root_modifications_structuralModifications_locationType",CVDomain:"LOCATION_TYPE",displayName:"Structural Modification Locationtype",dataType:"string",luceneQueryable:!0},"Structural Modification Modification Group":{fieldName:"Modification Group",fieldPath:"/modifications/structuralModifications/?/modificationGroup",finalField:"modificationGroup",lucenePath:"root_modifications_structuralModifications_modificationGroup",CVDomain:"",displayName:"Structural Modification Modification Group",dataType:"string",luceneQueryable:!0},"Molecular Fragment Access":{fieldName:"Access",fieldPath:"/modifications/structuralModifications/?/molecularFragment/access",finalField:"access",lucenePath:"root_modifications_structuralModifications_molecularFragment_access",CVDomain:"ACCESS_GROUP",displayName:"Molecular Fragment Access",dataType:"array ",luceneQueryable:!0},"Molecular Fragment Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/modifications/structuralModifications/?/molecularFragment/approvalID",finalField:"approvalID",lucenePath:"root_modifications_structuralModifications_molecularFragment_approvalID",CVDomain:"",displayName:"Molecular Fragment Approval ID",dataType:"string",luceneQueryable:!0},"Molecular Fragment Created":{fieldName:"Created",fieldPath:"/modifications/structuralModifications/?/molecularFragment/created",finalField:"created",lucenePath:"root_modifications_structuralModifications_molecularFragment_created",CVDomain:"",displayName:"Molecular Fragment Created",dataType:"number",luceneQueryable:!0},"Molecular Fragment Created By":{fieldName:"Created By",fieldPath:"/modifications/structuralModifications/?/molecularFragment/createdBy",finalField:"createdBy",lucenePath:"root_modifications_structuralModifications_molecularFragment_createdBy",CVDomain:"",displayName:"Molecular Fragment Created By",dataType:"string",luceneQueryable:!0},"Molecular Fragment Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/structuralModifications/?/molecularFragment/deprecated",finalField:"deprecated",lucenePath:"root_modifications_structuralModifications_molecularFragment_deprecated",CVDomain:"",displayName:"Molecular Fragment Deprecated",dataType:"boolean",luceneQueryable:!0},"Molecular Fragment Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/structuralModifications/?/molecularFragment/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_structuralModifications_molecularFragment_lastEdited",CVDomain:"",displayName:"Molecular Fragment Last Edited",dataType:"number",luceneQueryable:!0},"Molecular Fragment Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/structuralModifications/?/molecularFragment/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_structuralModifications_molecularFragment_lastEditedBy",CVDomain:"",displayName:"Molecular Fragment Last Edited By",dataType:"string",luceneQueryable:!0},"Molecular Fragment Preferred Name":{fieldName:"Ref Pname",fieldPath:"/modifications/structuralModifications/?/molecularFragment/refPname",finalField:"refPname",lucenePath:"root_modifications_structuralModifications_molecularFragment_refPname",CVDomain:"",displayName:"Molecular Fragment Preferred Name",dataType:"string",luceneQueryable:!0},"Molecular Fragment Refuuid":{fieldName:"Refuuid",fieldPath:"/modifications/structuralModifications/?/molecularFragment/refuuid",finalField:"refuuid",lucenePath:"root_modifications_structuralModifications_molecularFragment_refuuid",CVDomain:"",displayName:"Molecular Fragment Refuuid",dataType:"string",luceneQueryable:!0},"Molecular Fragment Substance Class":{fieldName:"Substance Class",fieldPath:"/modifications/structuralModifications/?/molecularFragment/substanceClass",finalField:"substanceClass",lucenePath:"root_modifications_structuralModifications_molecularFragment_substanceClass",CVDomain:"",displayName:"Molecular Fragment Substance Class",dataType:"string",luceneQueryable:!0},"Structural Modification Residuemodified":{fieldName:"Residue Modified",fieldPath:"/modifications/structuralModifications/?/residueModified",finalField:"residueModified",lucenePath:"root_modifications_structuralModifications_residueModified",CVDomain:"",displayName:"Structural Modification Residuemodified",dataType:"string",luceneQueryable:!0},"Structural Modification Structural Modification Type":{fieldName:"Structural Modification Type",fieldPath:"/modifications/structuralModifications/?/structuralModificationType",finalField:"structuralModificationType",lucenePath:"root_modifications_structuralModifications_structuralModificationType",CVDomain:"STRUCTURAL_MODIFICATION_TYPE",displayName:"Structural Modification Structural Modification Type",dataType:"string",luceneQueryable:!0},"Moiety Access":{fieldName:"Access",fieldPath:"/moieties/?/access",finalField:"access",lucenePath:"root_moieties_access",CVDomain:"ACCESS_GROUP",displayName:"Moiety Access",dataType:"array ",luceneQueryable:!0},"Count Amount Access":{fieldName:"Access",fieldPath:"/moieties/?/countAmount/access",finalField:"access",lucenePath:"root_moieties_countAmount_access",CVDomain:"ACCESS_GROUP",displayName:"Count Amount Access",dataType:"array ",luceneQueryable:!0},"Count Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/moieties/?/countAmount/deprecated",finalField:"deprecated",lucenePath:"root_moieties_countAmount_deprecated",CVDomain:"",displayName:"Count Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Moiety Created":{fieldName:"Created",fieldPath:"/moieties/?/created",finalField:"created",lucenePath:"root_moieties_created",CVDomain:"",displayName:"Moiety Created",dataType:"number",luceneQueryable:!0},"Moiety Created By":{fieldName:"Created By",fieldPath:"/moieties/?/createdBy",finalField:"createdBy",lucenePath:"root_moieties_createdBy",CVDomain:"",displayName:"Moiety Created By",dataType:"string",luceneQueryable:!0},"Moiety Deprecated":{fieldName:"Deprecated",fieldPath:"/moieties/?/deprecated",finalField:"deprecated",lucenePath:"root_moieties_deprecated",CVDomain:"",displayName:"Moiety Deprecated",dataType:"boolean",luceneQueryable:!0},"Moiety Last Edited":{fieldName:"Last Edited",fieldPath:"/moieties/?/lastEdited",finalField:"lastEdited",lucenePath:"root_moieties_lastEdited",CVDomain:"",displayName:"Moiety Last Edited",dataType:"number",luceneQueryable:!0},"Moiety Last Edited By":{fieldName:"Last Edited By",fieldPath:"/moieties/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_moieties_lastEditedBy",CVDomain:"",displayName:"Moiety Last Edited By",dataType:"string",luceneQueryable:!0},"Moiety Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/moieties/?/stereochemistry",finalField:"stereochemistry",lucenePath:"root_moieties_stereochemistry",CVDomain:"STEREOCHEMISTRY_TYPE",displayName:"Moiety Stereochemistry",dataType:"string",luceneQueryable:!0},"Name Access":{fieldName:"Access",fieldPath:"/names/?/access",finalField:"access",lucenePath:"root_names_access",CVDomain:"ACCESS_GROUP",displayName:"Name Access",dataType:"array ",luceneQueryable:!0},"Name Created":{fieldName:"Created",fieldPath:"/names/?/created",finalField:"created",lucenePath:"root_names_created",CVDomain:"",displayName:"Name Created",dataType:"number",luceneQueryable:!0},"Name Created By":{fieldName:"Created By",fieldPath:"/names/?/createdBy",finalField:"createdBy",lucenePath:"root_names_createdBy",CVDomain:"",displayName:"Name Created By",dataType:"string",luceneQueryable:!0},"Name Deprecated":{fieldName:"Deprecated",fieldPath:"/names/?/deprecated",finalField:"deprecated",lucenePath:"root_names_deprecated",CVDomain:"",displayName:"Name Deprecated",dataType:"boolean",luceneQueryable:!0},"Name Display Name":{fieldName:"Display Name",fieldPath:"/names/?/displayName",finalField:"displayName",lucenePath:"root_names_displayName",CVDomain:"",displayName:"Name Display Name",dataType:"boolean",luceneQueryable:!0},"Name Last Edited":{fieldName:"Last Edited",fieldPath:"/names/?/lastEdited",finalField:"lastEdited",lucenePath:"root_names_lastEdited",CVDomain:"",displayName:"Name Last Edited",dataType:"number",luceneQueryable:!0},"Name Last Edited By":{fieldName:"Last Edited By",fieldPath:"/names/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_names_lastEditedBy",CVDomain:"",displayName:"Name Last Edited By",dataType:"string",luceneQueryable:!0},"Any Name":{fieldName:"Name",fieldPath:"/names/?/name",finalField:"name",lucenePath:"root_names_name",CVDomain:"",displayName:"Any Name",dataType:"string",luceneQueryable:!0},"Naming Organization Access":{fieldName:"Access",fieldPath:"/names/?/nameOrgs/?/access",finalField:"access",lucenePath:"root_names_nameOrgs_access",CVDomain:"ACCESS_GROUP",displayName:"Naming Organization Access",dataType:"array ",luceneQueryable:!0},"Naming Organization Created":{fieldName:"Created",fieldPath:"/names/?/nameOrgs/?/created",finalField:"created",lucenePath:"root_names_nameOrgs_created",CVDomain:"",displayName:"Naming Organization Created",dataType:"number",luceneQueryable:!0},"Naming Organization Created By":{fieldName:"Created By",fieldPath:"/names/?/nameOrgs/?/createdBy",finalField:"createdBy",lucenePath:"root_names_nameOrgs_createdBy",CVDomain:"",displayName:"Naming Organization Created By",dataType:"string",luceneQueryable:!0},"Naming Organization Deprecated":{fieldName:"Deprecated",fieldPath:"/names/?/nameOrgs/?/deprecated",finalField:"deprecated",lucenePath:"root_names_nameOrgs_deprecated",CVDomain:"",displayName:"Naming Organization Deprecated",dataType:"boolean",luceneQueryable:!0},"Naming Organization Deprecated Date":{fieldName:"Deprecated Date",fieldPath:"/names/?/nameOrgs/?/deprecatedDate",finalField:"deprecatedDate",lucenePath:"root_names_nameOrgs_deprecatedDate",CVDomain:"",displayName:"Naming Organization Deprecated Date",dataType:"number",luceneQueryable:!0},"Naming Organization Last Edited":{fieldName:"Last Edited",fieldPath:"/names/?/nameOrgs/?/lastEdited",finalField:"lastEdited",lucenePath:"root_names_nameOrgs_lastEdited",CVDomain:"",displayName:"Naming Organization Last Edited",dataType:"number",luceneQueryable:!0},"Naming Organization Last Edited By":{fieldName:"Last Edited By",fieldPath:"/names/?/nameOrgs/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_names_nameOrgs_lastEditedBy",CVDomain:"",displayName:"Naming Organization Last Edited By",dataType:"string",luceneQueryable:!0},"Naming Organization":{fieldName:"Name Org",fieldPath:"/names/?/nameOrgs/?/nameOrg",finalField:"nameOrg",lucenePath:"root_names_nameOrgs_nameOrg",CVDomain:"NAME_ORG",displayName:"Naming Organization",dataType:"string",luceneQueryable:!0},"Name Preferred":{fieldName:"Preferred Status",fieldPath:"/names/?/preferred",finalField:"preferred",lucenePath:"root_names_preferred",CVDomain:"",displayName:"Name Preferred",dataType:"boolean",luceneQueryable:!0},"Name Type Code":{fieldName:"Type",fieldPath:"/names/?/type",finalField:"type",lucenePath:"root_names_type",CVDomain:"NAME_TYPE",displayName:"Name Type Code",dataType:"string",luceneQueryable:!0},"Note Access":{fieldName:"Access",fieldPath:"/notes/?/access",finalField:"access",lucenePath:"root_notes_access",CVDomain:"ACCESS_GROUP",displayName:"Note Access",dataType:"array ",luceneQueryable:!0},"Note Created":{fieldName:"Created",fieldPath:"/notes/?/created",finalField:"created",lucenePath:"root_notes_created",CVDomain:"",displayName:"Note Created",dataType:"number",luceneQueryable:!0},"Note Created By":{fieldName:"Created By",fieldPath:"/notes/?/createdBy",finalField:"createdBy",lucenePath:"root_notes_createdBy",CVDomain:"",displayName:"Note Created By",dataType:"string",luceneQueryable:!0},"Note Deprecated":{fieldName:"Deprecated",fieldPath:"/notes/?/deprecated",finalField:"deprecated",lucenePath:"root_notes_deprecated",CVDomain:"",displayName:"Note Deprecated",dataType:"boolean",luceneQueryable:!0},"Note Last Edited":{fieldName:"Last Edited",fieldPath:"/notes/?/lastEdited",finalField:"lastEdited",lucenePath:"root_notes_lastEdited",CVDomain:"",displayName:"Note Last Edited",dataType:"number",luceneQueryable:!0},"Note Last Edited By":{fieldName:"Last Edited By",fieldPath:"/notes/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_notes_lastEditedBy",CVDomain:"",displayName:"Note Last Edited By",dataType:"string",luceneQueryable:!0},Note:{fieldName:"Notes",fieldPath:"/notes/?/note",finalField:"note",lucenePath:"root_notes_note",CVDomain:"",displayName:"Note",dataType:"string",luceneQueryable:!0},"Nucleic Acid Access":{fieldName:"Access",fieldPath:"/nucleicAcid/access",finalField:"access",lucenePath:"root_nucleicAcid_access",CVDomain:"ACCESS_GROUP",displayName:"Nucleic Acid Access",dataType:"array ",luceneQueryable:!0},"Nucleic Acid Created":{fieldName:"Created",fieldPath:"/nucleicAcid/created",finalField:"created",lucenePath:"root_nucleicAcid_created",CVDomain:"",displayName:"Nucleic Acid Created",dataType:"number",luceneQueryable:!0},"Nucleic Acid Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_createdBy",CVDomain:"",displayName:"Nucleic Acid Created By",dataType:"string",luceneQueryable:!0},"Nucleic Acid Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_deprecated",CVDomain:"",displayName:"Nucleic Acid Deprecated",dataType:"boolean",luceneQueryable:!0},"Nucleic Acid Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_lastEdited",CVDomain:"",displayName:"Nucleic Acid Last Edited",dataType:"number",luceneQueryable:!0},"Nucleic Acid Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_lastEditedBy",CVDomain:"",displayName:"Nucleic Acid Last Edited By",dataType:"string",luceneQueryable:!0},"Linkage Access":{fieldName:"Access",fieldPath:"/nucleicAcid/linkages/?/access",finalField:"access",lucenePath:"root_nucleicAcid_linkages_access",CVDomain:"ACCESS_GROUP",displayName:"Linkage Access",dataType:"array ",luceneQueryable:!0},"Linkage Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/linkages/?/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_linkages_deprecated",CVDomain:"",displayName:"Linkage Deprecated",dataType:"boolean",luceneQueryable:!0},"Nucleic Acid Subunit Access":{fieldName:"Access",fieldPath:"/nucleicAcid/subunits/?/access",finalField:"access",lucenePath:"root_nucleicAcid_subunits_access",CVDomain:"ACCESS_GROUP",displayName:"Nucleic Acid Subunit Access",dataType:"array ",luceneQueryable:!0},"Nucleic Acid Subunit Created":{fieldName:"Created",fieldPath:"/nucleicAcid/subunits/?/created",finalField:"created",lucenePath:"root_nucleicAcid_subunits_created",CVDomain:"",displayName:"Nucleic Acid Subunit Created",dataType:"number",luceneQueryable:!0},"Nucleic Acid Subunit Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/subunits/?/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_subunits_createdBy",CVDomain:"",displayName:"Nucleic Acid Subunit Created By",dataType:"string",luceneQueryable:!0},"Nucleic Acid Subunit Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/subunits/?/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_subunits_deprecated",CVDomain:"",displayName:"Nucleic Acid Subunit Deprecated",dataType:"boolean",luceneQueryable:!0},"Nucleic Acid Subunit Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/subunits/?/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_subunits_lastEdited",CVDomain:"",displayName:"Nucleic Acid Subunit Last Edited",dataType:"number",luceneQueryable:!0},"Nucleic Acid Subunit Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/subunits/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_subunits_lastEditedBy",CVDomain:"",displayName:"Nucleic Acid Subunit Last Edited By",dataType:"string",luceneQueryable:!0},"Nucleic Acid Subunit Sequence":{fieldName:"Sequence",fieldPath:"/nucleicAcid/subunits/?/sequence",finalField:"sequence",lucenePath:"root_nucleicAcid_subunits_sequence",CVDomain:"",displayName:"Nucleic Acid Subunit Sequence",dataType:"string",luceneQueryable:!0},"Nucleic Acid Subunit Subunit Index":{fieldName:"Subunit Index",fieldPath:"/nucleicAcid/subunits/?/subunitIndex",finalField:"subunitIndex",lucenePath:"root_nucleicAcid_subunits_subunitIndex",CVDomain:"",displayName:"Nucleic Acid Subunit Subunit Index",dataType:"number",luceneQueryable:!0},"Sugar Access":{fieldName:"Access",fieldPath:"/nucleicAcid/sugars/?/access",finalField:"access",lucenePath:"root_nucleicAcid_sugars_access",CVDomain:"ACCESS_GROUP",displayName:"Sugar Access",dataType:"array ",luceneQueryable:!0},"Sugar Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/sugars/?/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_sugars_deprecated",CVDomain:"",displayName:"Sugar Deprecated",dataType:"boolean",luceneQueryable:!0},"Polymer Access":{fieldName:"Access",fieldPath:"/polymer/access",finalField:"access",lucenePath:"root_polymer_access",CVDomain:"ACCESS_GROUP",displayName:"Polymer Access",dataType:"array ",luceneQueryable:!0},"Polymer Classification Access":{fieldName:"Access",fieldPath:"/polymer/classification/access",finalField:"access",lucenePath:"root_polymer_classification_access",CVDomain:"ACCESS_GROUP",displayName:"Polymer Classification Access",dataType:"array ",luceneQueryable:!0},"Polymer Classification Created":{fieldName:"Created",fieldPath:"/polymer/classification/created",finalField:"created",lucenePath:"root_polymer_classification_created",CVDomain:"",displayName:"Polymer Classification Created",dataType:"number",luceneQueryable:!0},"Polymer Classification Created By":{fieldName:"Created By",fieldPath:"/polymer/classification/createdBy",finalField:"createdBy",lucenePath:"root_polymer_classification_createdBy",CVDomain:"",displayName:"Polymer Classification Created By",dataType:"string",luceneQueryable:!0},"Polymer Classification Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/classification/deprecated",finalField:"deprecated",lucenePath:"root_polymer_classification_deprecated",CVDomain:"",displayName:"Polymer Classification Deprecated",dataType:"boolean",luceneQueryable:!0},"Polymer Classification Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/classification/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_classification_lastEdited",CVDomain:"",displayName:"Polymer Classification Last Edited",dataType:"number",luceneQueryable:!0},"Polymer Classification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/classification/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_classification_lastEditedBy",CVDomain:"",displayName:"Polymer Classification Last Edited By",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Access":{fieldName:"Access",fieldPath:"/polymer/classification/parentSubstance/access",finalField:"access",lucenePath:"root_polymer_classification_parentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Polymer Parent Substance Access",dataType:"array ",luceneQueryable:!0},"Polymer Parent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/polymer/classification/parentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_polymer_classification_parentSubstance_approvalID",CVDomain:"",displayName:"Polymer Parent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Created":{fieldName:"Created",fieldPath:"/polymer/classification/parentSubstance/created",finalField:"created",lucenePath:"root_polymer_classification_parentSubstance_created",CVDomain:"",displayName:"Polymer Parent Substance Created",dataType:"number",luceneQueryable:!0},"Polymer Parent Substance Created By":{fieldName:"Created By",fieldPath:"/polymer/classification/parentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_polymer_classification_parentSubstance_createdBy",CVDomain:"",displayName:"Polymer Parent Substance Created By",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/classification/parentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_polymer_classification_parentSubstance_deprecated",CVDomain:"",displayName:"Polymer Parent Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Polymer Parent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/classification/parentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_classification_parentSubstance_lastEdited",CVDomain:"",displayName:"Polymer Parent Substance Last Edited",dataType:"number",luceneQueryable:!0},"Polymer Parent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/classification/parentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_classification_parentSubstance_lastEditedBy",CVDomain:"",displayName:"Polymer Parent Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/polymer/classification/parentSubstance/refPname",finalField:"refPname",lucenePath:"root_polymer_classification_parentSubstance_refPname",CVDomain:"",displayName:"Polymer Parent Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/polymer/classification/parentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_polymer_classification_parentSubstance_refuuid",CVDomain:"",displayName:"Polymer Parent Substance Refuuid",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/polymer/classification/parentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_polymer_classification_parentSubstance_substanceClass",CVDomain:"",displayName:"Polymer Parent Substance Substance Class",dataType:"string",luceneQueryable:!0},"Polymer Class":{fieldName:"Polymer Class",fieldPath:"/polymer/classification/polymerClass",finalField:"polymerClass",lucenePath:"root_polymer_classification_polymerClass",CVDomain:"POLYMER_CLASS",displayName:"Polymer Class",dataType:"string",luceneQueryable:!0},"Polymer Geometry":{fieldName:"Polymer Geometry",fieldPath:"/polymer/classification/polymerGeometry",finalField:"polymerGeometry",lucenePath:"root_polymer_classification_polymerGeometry",CVDomain:"POLYMER_GEOMETRY",displayName:"Polymer Geometry",dataType:"string",luceneQueryable:!0},"Polymer Classification Source Type":{fieldName:"Sourcetype",fieldPath:"/polymer/classification/sourceType",finalField:"sourceType",lucenePath:"root_polymer_classification_sourceType",CVDomain:"POLYMER_SOURCE_TYPE",displayName:"Polymer Classification Source Type",dataType:"string",luceneQueryable:!0},"Polymer Created":{fieldName:"Created",fieldPath:"/polymer/created",finalField:"created",lucenePath:"root_polymer_created",CVDomain:"",displayName:"Polymer Created",dataType:"number",luceneQueryable:!0},"Polymer Created By":{fieldName:"Created By",fieldPath:"/polymer/createdBy",finalField:"createdBy",lucenePath:"root_polymer_createdBy",CVDomain:"",displayName:"Polymer Created By",dataType:"string",luceneQueryable:!0},"Polymer Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/deprecated",finalField:"deprecated",lucenePath:"root_polymer_deprecated",CVDomain:"",displayName:"Polymer Deprecated",dataType:"boolean",luceneQueryable:!0},"Display Structure Access":{fieldName:"Access",fieldPath:"/polymer/displayStructure/access",finalField:"access",lucenePath:"root_polymer_displayStructure_access",CVDomain:"ACCESS_GROUP",displayName:"Display Structure Access",dataType:"array ",luceneQueryable:!0},"Display Structure Charge":{fieldName:"Charge",fieldPath:"/polymer/displayStructure/charge",finalField:"charge",lucenePath:"root_polymer_displayStructure_charge",CVDomain:"",displayName:"Display Structure Charge",dataType:"number",luceneQueryable:!0},"Display Structure Count":{fieldName:"Count",fieldPath:"/polymer/displayStructure/count",finalField:"count",lucenePath:"root_polymer_displayStructure_count",CVDomain:"",displayName:"Display Structure Count",dataType:"number",luceneQueryable:!0},"Display Structure Created":{fieldName:"Created",fieldPath:"/polymer/displayStructure/created",finalField:"created",lucenePath:"root_polymer_displayStructure_created",CVDomain:"",displayName:"Display Structure Created",dataType:"number",luceneQueryable:!0},"Display Structure Created By":{fieldName:"Created By",fieldPath:"/polymer/displayStructure/createdBy",finalField:"createdBy",lucenePath:"root_polymer_displayStructure_createdBy",CVDomain:"",displayName:"Display Structure Created By",dataType:"string",luceneQueryable:!0},"Display Structure Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/polymer/displayStructure/definedStereo",finalField:"definedStereo",lucenePath:"root_polymer_displayStructure_definedStereo",CVDomain:"",displayName:"Display Structure Defined Stereo",dataType:"number",luceneQueryable:!0},"Display Structure Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/displayStructure/deprecated",finalField:"deprecated",lucenePath:"root_polymer_displayStructure_deprecated",CVDomain:"",displayName:"Display Structure Deprecated",dataType:"boolean",luceneQueryable:!0},"Display Structure Digest":{fieldName:"Digest",fieldPath:"/polymer/displayStructure/digest",finalField:"digest",lucenePath:"root_polymer_displayStructure_digest",CVDomain:"",displayName:"Display Structure Digest",dataType:"string",luceneQueryable:!0},"Display Structure Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/polymer/displayStructure/ezCenters",finalField:"ezCenters",lucenePath:"root_polymer_displayStructure_ezCenters",CVDomain:"",displayName:"Display Structure Ez Centers",dataType:"number",luceneQueryable:!0},"Display Structure Formula":{fieldName:"Formula",fieldPath:"/polymer/displayStructure/formula",finalField:"formula",lucenePath:"root_polymer_displayStructure_formula",CVDomain:"",displayName:"Display Structure Formula",dataType:"string",luceneQueryable:!0},"Display Structure Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/displayStructure/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_displayStructure_lastEdited",CVDomain:"",displayName:"Display Structure Last Edited",dataType:"number",luceneQueryable:!0},"Display Structure Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/displayStructure/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_displayStructure_lastEditedBy",CVDomain:"",displayName:"Display Structure Last Edited By",dataType:"string",luceneQueryable:!0},"Display Structure Mwt":{fieldName:"Molecular Weight",fieldPath:"/polymer/displayStructure/mwt",finalField:"mwt",lucenePath:"root_polymer_displayStructure_mwt",CVDomain:"",displayName:"Display Structure Mwt",dataType:"number",luceneQueryable:!0},"Display Structure Optical Activity":{fieldName:"Optical Activity",fieldPath:"/polymer/displayStructure/opticalActivity",finalField:"opticalActivity",lucenePath:"root_polymer_displayStructure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Display Structure Optical Activity",dataType:"string",luceneQueryable:!0},"Display Structure Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/polymer/displayStructure/stereoCenters",finalField:"stereoCenters",lucenePath:"root_polymer_displayStructure_stereoCenters",CVDomain:"",displayName:"Display Structure Stereo Centers",dataType:"number",luceneQueryable:!0},"Display Structure Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/polymer/displayStructure/stereochemistry",finalField:"stereochemistry",lucenePath:"root_polymer_displayStructure_stereochemistry",CVDomain:"",displayName:"Display Structure Stereochemistry",dataType:"string",luceneQueryable:!0},"Idealized Structure Access":{fieldName:"Access",fieldPath:"/polymer/idealizedStructure/access",finalField:"access",lucenePath:"root_polymer_idealizedStructure_access",CVDomain:"ACCESS_GROUP",displayName:"Idealized Structure Access",dataType:"array ",luceneQueryable:!0},"Idealized Structure Charge":{fieldName:"Charge",fieldPath:"/polymer/idealizedStructure/charge",finalField:"charge",lucenePath:"root_polymer_idealizedStructure_charge",CVDomain:"",displayName:"Idealized Structure Charge",dataType:"number",luceneQueryable:!0},"Idealized Structure Count":{fieldName:"Count",fieldPath:"/polymer/idealizedStructure/count",finalField:"count",lucenePath:"root_polymer_idealizedStructure_count",CVDomain:"",displayName:"Idealized Structure Count",dataType:"number",luceneQueryable:!0},"Idealized Structure Created":{fieldName:"Created",fieldPath:"/polymer/idealizedStructure/created",finalField:"created",lucenePath:"root_polymer_idealizedStructure_created",CVDomain:"",displayName:"Idealized Structure Created",dataType:"number",luceneQueryable:!0},"Idealized Structure Created By":{fieldName:"Created By",fieldPath:"/polymer/idealizedStructure/createdBy",finalField:"createdBy",lucenePath:"root_polymer_idealizedStructure_createdBy",CVDomain:"",displayName:"Idealized Structure Created By",dataType:"string",luceneQueryable:!0},"Idealized Structure Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/polymer/idealizedStructure/definedStereo",finalField:"definedStereo",lucenePath:"root_polymer_idealizedStructure_definedStereo",CVDomain:"",displayName:"Idealized Structure Defined Stereo",dataType:"number",luceneQueryable:!0},"Idealized Structure Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/idealizedStructure/deprecated",finalField:"deprecated",lucenePath:"root_polymer_idealizedStructure_deprecated",CVDomain:"",displayName:"Idealized Structure Deprecated",dataType:"boolean",luceneQueryable:!0},"Idealized Structure Digest":{fieldName:"Digest",fieldPath:"/polymer/idealizedStructure/digest",finalField:"digest",lucenePath:"root_polymer_idealizedStructure_digest",CVDomain:"",displayName:"Idealized Structure Digest",dataType:"string",luceneQueryable:!0},"Idealized Structure Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/polymer/idealizedStructure/ezCenters",finalField:"ezCenters",lucenePath:"root_polymer_idealizedStructure_ezCenters",CVDomain:"",displayName:"Idealized Structure Ez Centers",dataType:"number",luceneQueryable:!0},"Idealized Structure Formula":{fieldName:"Formula",fieldPath:"/polymer/idealizedStructure/formula",finalField:"formula",lucenePath:"root_polymer_idealizedStructure_formula",CVDomain:"",displayName:"Idealized Structure Formula",dataType:"string",luceneQueryable:!0},"Idealized Structure Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/idealizedStructure/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_idealizedStructure_lastEdited",CVDomain:"",displayName:"Idealized Structure Last Edited",dataType:"number",luceneQueryable:!0},"Idealized Structure Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/idealizedStructure/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_idealizedStructure_lastEditedBy",CVDomain:"",displayName:"Idealized Structure Last Edited By",dataType:"string",luceneQueryable:!0},"Idealized Structure Mwt":{fieldName:"Molecular Weight",fieldPath:"/polymer/idealizedStructure/mwt",finalField:"mwt",lucenePath:"root_polymer_idealizedStructure_mwt",CVDomain:"",displayName:"Idealized Structure Mwt",dataType:"number",luceneQueryable:!0},"Idealized Structure Optical Activity":{fieldName:"Optical Activity",fieldPath:"/polymer/idealizedStructure/opticalActivity",finalField:"opticalActivity",lucenePath:"root_polymer_idealizedStructure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Idealized Structure Optical Activity",dataType:"string",luceneQueryable:!0},"Idealized Structure Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/polymer/idealizedStructure/stereoCenters",finalField:"stereoCenters",lucenePath:"root_polymer_idealizedStructure_stereoCenters",CVDomain:"",displayName:"Idealized Structure Stereo Centers",dataType:"number",luceneQueryable:!0},"Idealized Structure Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/polymer/idealizedStructure/stereochemistry",finalField:"stereochemistry",lucenePath:"root_polymer_idealizedStructure_stereochemistry",CVDomain:"",displayName:"Idealized Structure Stereochemistry",dataType:"string",luceneQueryable:!0},"Polymer Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_lastEdited",CVDomain:"",displayName:"Polymer Last Edited",dataType:"number",luceneQueryable:!0},"Polymer Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_lastEditedBy",CVDomain:"",displayName:"Polymer Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Access":{fieldName:"Access",fieldPath:"/polymer/monomers/?/access",finalField:"access",lucenePath:"root_polymer_monomers_access",CVDomain:"ACCESS_GROUP",displayName:"Monomer Access",dataType:"array ",luceneQueryable:!0},"Monomer Amount Access":{fieldName:"Access",fieldPath:"/polymer/monomers/?/amount/access",finalField:"access",lucenePath:"root_polymer_monomers_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Monomer Amount Access",dataType:"array ",luceneQueryable:!0},"Monomer Amount Average":{fieldName:"Average",fieldPath:"/polymer/monomers/?/amount/average",finalField:"average",lucenePath:"root_polymer_monomers_amount_average",CVDomain:"",displayName:"Monomer Amount Average",dataType:"number",luceneQueryable:!0},"Monomer Amount Created":{fieldName:"Created",fieldPath:"/polymer/monomers/?/amount/created",finalField:"created",lucenePath:"root_polymer_monomers_amount_created",CVDomain:"",displayName:"Monomer Amount Created",dataType:"number",luceneQueryable:!0},"Monomer Amount Created By":{fieldName:"Created By",fieldPath:"/polymer/monomers/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_polymer_monomers_amount_createdBy",CVDomain:"",displayName:"Monomer Amount Created By",dataType:"string",luceneQueryable:!0},"Monomer Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/monomers/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_polymer_monomers_amount_deprecated",CVDomain:"",displayName:"Monomer Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Monomer Amount High":{fieldName:"High",fieldPath:"/polymer/monomers/?/amount/high",finalField:"high",lucenePath:"root_polymer_monomers_amount_high",CVDomain:"",displayName:"Monomer Amount High",dataType:"number",luceneQueryable:!0},"Monomer Amount High Limit":{fieldName:"High Limit",fieldPath:"/polymer/monomers/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_polymer_monomers_amount_highLimit",CVDomain:"",displayName:"Monomer Amount High Limit",dataType:"number",luceneQueryable:!0},"Monomer Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/monomers/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_monomers_amount_lastEdited",CVDomain:"",displayName:"Monomer Amount Last Edited",dataType:"number",luceneQueryable:!0},"Monomer Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/monomers/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_monomers_amount_lastEditedBy",CVDomain:"",displayName:"Monomer Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Amount Low":{fieldName:"Low",fieldPath:"/polymer/monomers/?/amount/low",finalField:"low",lucenePath:"root_polymer_monomers_amount_low",CVDomain:"",displayName:"Monomer Amount Low",dataType:"number",luceneQueryable:!0},"Monomer Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/polymer/monomers/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_polymer_monomers_amount_lowLimit",CVDomain:"",displayName:"Monomer Amount Low Limit",dataType:"number",luceneQueryable:!0},"Monomer Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/polymer/monomers/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_polymer_monomers_amount_nonNumericValue",CVDomain:"",displayName:"Monomer Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Monomer Amount Type":{fieldName:"Type",fieldPath:"/polymer/monomers/?/amount/type",finalField:"type",lucenePath:"root_polymer_monomers_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Monomer Amount Type",dataType:"string",luceneQueryable:!0},"Monomer Amount Units":{fieldName:"Units",fieldPath:"/polymer/monomers/?/amount/units",finalField:"units",lucenePath:"root_polymer_monomers_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Monomer Amount Units",dataType:"string",luceneQueryable:!0},"Monomer Created":{fieldName:"Created",fieldPath:"/polymer/monomers/?/created",finalField:"created",lucenePath:"root_polymer_monomers_created",CVDomain:"",displayName:"Monomer Created",dataType:"number",luceneQueryable:!0},"Monomer Created By":{fieldName:"Created By",fieldPath:"/polymer/monomers/?/createdBy",finalField:"createdBy",lucenePath:"root_polymer_monomers_createdBy",CVDomain:"",displayName:"Monomer Created By",dataType:"string",luceneQueryable:!0},"Monomer Defining":{fieldName:"Defining",fieldPath:"/polymer/monomers/?/defining",finalField:"defining",lucenePath:"root_polymer_monomers_defining",CVDomain:"",displayName:"Monomer Defining",dataType:"boolean",luceneQueryable:!0},"Monomer Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/monomers/?/deprecated",finalField:"deprecated",lucenePath:"root_polymer_monomers_deprecated",CVDomain:"",displayName:"Monomer Deprecated",dataType:"boolean",luceneQueryable:!0},"Monomer Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/monomers/?/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_monomers_lastEdited",CVDomain:"",displayName:"Monomer Last Edited",dataType:"number",luceneQueryable:!0},"Monomer Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/monomers/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_monomers_lastEditedBy",CVDomain:"",displayName:"Monomer Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Substance Access":{fieldName:"Access",fieldPath:"/polymer/monomers/?/monomerSubstance/access",finalField:"access",lucenePath:"root_polymer_monomers_monomerSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Monomer Substance Access",dataType:"array ",luceneQueryable:!0},"Monomer Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/polymer/monomers/?/monomerSubstance/approvalID",finalField:"approvalID",lucenePath:"root_polymer_monomers_monomerSubstance_approvalID",CVDomain:"",displayName:"Monomer Approval ID",dataType:"string",luceneQueryable:!0},"Monomer Substance Created":{fieldName:"Created",fieldPath:"/polymer/monomers/?/monomerSubstance/created",finalField:"created",lucenePath:"root_polymer_monomers_monomerSubstance_created",CVDomain:"",displayName:"Monomer Substance Created",dataType:"number",luceneQueryable:!0},"Monomer Substance Created By":{fieldName:"Created By",fieldPath:"/polymer/monomers/?/monomerSubstance/createdBy",finalField:"createdBy",lucenePath:"root_polymer_monomers_monomerSubstance_createdBy",CVDomain:"",displayName:"Monomer Substance Created By",dataType:"string",luceneQueryable:!0},"Monomer Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/monomers/?/monomerSubstance/deprecated",finalField:"deprecated",lucenePath:"root_polymer_monomers_monomerSubstance_deprecated",CVDomain:"",displayName:"Monomer Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Monomer Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/monomers/?/monomerSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_monomers_monomerSubstance_lastEdited",CVDomain:"",displayName:"Monomer Substance Last Edited",dataType:"number",luceneQueryable:!0},"Monomer Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/monomers/?/monomerSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_monomers_monomerSubstance_lastEditedBy",CVDomain:"",displayName:"Monomer Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Substance Name":{fieldName:"Ref Pname",fieldPath:"/polymer/monomers/?/monomerSubstance/refPname",finalField:"refPname",lucenePath:"root_polymer_monomers_monomerSubstance_refPname",CVDomain:"",displayName:"Monomer Substance Name",dataType:"string",luceneQueryable:!0},"Monomer Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/polymer/monomers/?/monomerSubstance/refuuid",finalField:"refuuid",lucenePath:"root_polymer_monomers_monomerSubstance_refuuid",CVDomain:"",displayName:"Monomer Substance Refuuid",dataType:"string",luceneQueryable:!0},"Monomer Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/polymer/monomers/?/monomerSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_polymer_monomers_monomerSubstance_substanceClass",CVDomain:"",displayName:"Monomer Substance Substance Class",dataType:"string",luceneQueryable:!0},"Monomer Type":{fieldName:"Type",fieldPath:"/polymer/monomers/?/type",finalField:"type",lucenePath:"root_polymer_monomers_type",CVDomain:"MONOMER_TYPE",displayName:"Monomer Type",dataType:"string",luceneQueryable:!0},"SRU Access":{fieldName:"Access",fieldPath:"/polymer/structuralUnits/?/access",finalField:"access",lucenePath:"root_polymer_structuralUnits_access",CVDomain:"ACCESS_GROUP",displayName:"SRU Access",dataType:"array ",luceneQueryable:!0},"SRU Amount Access":{fieldName:"Access",fieldPath:"/polymer/structuralUnits/?/amount/access",finalField:"access",lucenePath:"root_polymer_structuralUnits_amount_access",CVDomain:"ACCESS_GROUP",displayName:"SRU Amount Access",dataType:"array ",luceneQueryable:!0},"SRU Amount Average":{fieldName:"Average",fieldPath:"/polymer/structuralUnits/?/amount/average",finalField:"average",lucenePath:"root_polymer_structuralUnits_amount_average",CVDomain:"",displayName:"SRU Amount Average",dataType:"number",luceneQueryable:!0},"SRU Amount Created":{fieldName:"Created",fieldPath:"/polymer/structuralUnits/?/amount/created",finalField:"created",lucenePath:"root_polymer_structuralUnits_amount_created",CVDomain:"",displayName:"SRU Amount Created",dataType:"number",luceneQueryable:!0},"SRU Amount Created By":{fieldName:"Created By",fieldPath:"/polymer/structuralUnits/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_polymer_structuralUnits_amount_createdBy",CVDomain:"",displayName:"SRU Amount Created By",dataType:"string",luceneQueryable:!0},"SRU Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/structuralUnits/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_polymer_structuralUnits_amount_deprecated",CVDomain:"",displayName:"SRU Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"SRU Amount High":{fieldName:"High",fieldPath:"/polymer/structuralUnits/?/amount/high",finalField:"high",lucenePath:"root_polymer_structuralUnits_amount_high",CVDomain:"",displayName:"SRU Amount High",dataType:"number",luceneQueryable:!0},"SRU Amount High Limit":{fieldName:"High Limit",fieldPath:"/polymer/structuralUnits/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_polymer_structuralUnits_amount_highLimit",CVDomain:"",displayName:"SRU Amount High Limit",dataType:"number",luceneQueryable:!0},"SRU Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/structuralUnits/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_structuralUnits_amount_lastEdited",CVDomain:"",displayName:"SRU Amount Last Edited",dataType:"number",luceneQueryable:!0},"SRU Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/structuralUnits/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_structuralUnits_amount_lastEditedBy",CVDomain:"",displayName:"SRU Amount Last Edited By",dataType:"string",luceneQueryable:!0},"SRU Amount Low":{fieldName:"Low",fieldPath:"/polymer/structuralUnits/?/amount/low",finalField:"low",lucenePath:"root_polymer_structuralUnits_amount_low",CVDomain:"",displayName:"SRU Amount Low",dataType:"number",luceneQueryable:!0},"SRU Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/polymer/structuralUnits/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_polymer_structuralUnits_amount_lowLimit",CVDomain:"",displayName:"SRU Amount Low Limit",dataType:"number",luceneQueryable:!0},"SRU Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/polymer/structuralUnits/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_polymer_structuralUnits_amount_nonNumericValue",CVDomain:"",displayName:"SRU Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"SRU Amount Type":{fieldName:"Type",fieldPath:"/polymer/structuralUnits/?/amount/type",finalField:"type",lucenePath:"root_polymer_structuralUnits_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"SRU Amount Type",dataType:"string",luceneQueryable:!0},"SRU Amount Units":{fieldName:"Units",fieldPath:"/polymer/structuralUnits/?/amount/units",finalField:"units",lucenePath:"root_polymer_structuralUnits_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"SRU Amount Units",dataType:"string",luceneQueryable:!0},"SRU Attachment Count":{fieldName:"Attachment Count",fieldPath:"/polymer/structuralUnits/?/attachmentCount",finalField:"attachmentCount",lucenePath:"root_polymer_structuralUnits_attachmentCount",CVDomain:"",displayName:"SRU Attachment Count",dataType:"number",luceneQueryable:!0},"SRU Created":{fieldName:"Created",fieldPath:"/polymer/structuralUnits/?/created",finalField:"created",lucenePath:"root_polymer_structuralUnits_created",CVDomain:"",displayName:"SRU Created",dataType:"number",luceneQueryable:!0},"SRU Created By":{fieldName:"Created By",fieldPath:"/polymer/structuralUnits/?/createdBy",finalField:"createdBy",lucenePath:"root_polymer_structuralUnits_createdBy",CVDomain:"",displayName:"SRU Created By",dataType:"string",luceneQueryable:!0},"SRU Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/structuralUnits/?/deprecated",finalField:"deprecated",lucenePath:"root_polymer_structuralUnits_deprecated",CVDomain:"",displayName:"SRU Deprecated",dataType:"boolean",luceneQueryable:!0},"SRU Label":{fieldName:"Label",fieldPath:"/polymer/structuralUnits/?/label",finalField:"label",lucenePath:"root_polymer_structuralUnits_label",CVDomain:"",displayName:"SRU Label",dataType:"string",luceneQueryable:!0},"SRU Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/structuralUnits/?/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_structuralUnits_lastEdited",CVDomain:"",displayName:"SRU Last Edited",dataType:"number",luceneQueryable:!0},"SRU Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/structuralUnits/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_structuralUnits_lastEditedBy",CVDomain:"",displayName:"SRU Last Edited By",dataType:"string",luceneQueryable:!0},"SRU Structure":{fieldName:"structure",fieldPath:"/polymer/structuralUnits/?/structure",finalField:"structure",lucenePath:"root_polymer_structuralUnits_structure",CVDomain:"",displayName:"SRU Structure",dataType:"string",luceneQueryable:!0},"SRU Type":{fieldName:"Type",fieldPath:"/polymer/structuralUnits/?/type",finalField:"type",lucenePath:"root_polymer_structuralUnits_type",CVDomain:"POLYMER_SRU_TYPE",displayName:"SRU Type",dataType:"string",luceneQueryable:!0},"Property Access":{fieldName:"Access",fieldPath:"/properties/?/access",finalField:"access",lucenePath:"root_properties_access",CVDomain:"ACCESS_GROUP",displayName:"Property Access",dataType:"array ",luceneQueryable:!0},"Property Created":{fieldName:"Created",fieldPath:"/properties/?/created",finalField:"created",lucenePath:"root_properties_created",CVDomain:"",displayName:"Property Created",dataType:"number",luceneQueryable:!0},"Property Created By":{fieldName:"Created By",fieldPath:"/properties/?/createdBy",finalField:"createdBy",lucenePath:"root_properties_createdBy",CVDomain:"",displayName:"Property Created By",dataType:"string",luceneQueryable:!0},"Property Defining":{fieldName:"Defining",fieldPath:"/properties/?/defining",finalField:"defining",lucenePath:"root_properties_defining",CVDomain:"",displayName:"Property Defining",dataType:"boolean",luceneQueryable:!0},"Property Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/deprecated",finalField:"deprecated",lucenePath:"root_properties_deprecated",CVDomain:"",displayName:"Property Deprecated",dataType:"boolean",luceneQueryable:!0},"Property Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_lastEdited",CVDomain:"",displayName:"Property Last Edited",dataType:"number",luceneQueryable:!0},"Property Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_lastEditedBy",CVDomain:"",displayName:"Property Last Edited By",dataType:"string",luceneQueryable:!0},"Property Name":{fieldName:"Property Name",fieldPath:"/properties/?/name",finalField:"name",lucenePath:"root_properties_name",CVDomain:"PROPERTY_NAME",displayName:"Property Name",dataType:"string",luceneQueryable:!0},"Property Parameters":{fieldName:"Property Parameters",fieldPath:"/properties/?/parameters",finalField:"parameters",lucenePath:"root_properties_parameters",CVDomain:"",displayName:"Property Parameters",dataType:"array ",luceneQueryable:!0},"Parameter Access":{fieldName:"Access",fieldPath:"/properties/?/parameters/?/access",finalField:"access",lucenePath:"root_properties_parameters_access",CVDomain:"ACCESS_GROUP",displayName:"Parameter Access",dataType:"array ",luceneQueryable:!0},"Parameter Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/parameters/?/deprecated",finalField:"deprecated",lucenePath:"root_properties_parameters_deprecated",CVDomain:"",displayName:"Parameter Deprecated",dataType:"boolean",luceneQueryable:!0},"Parameter Value Access":{fieldName:"Access",fieldPath:"/properties/?/parameters/?/value/access",finalField:"access",lucenePath:"root_properties_parameters_value_access",CVDomain:"ACCESS_GROUP",displayName:"Parameter Value Access",dataType:"array ",luceneQueryable:!0},"Parameter Value Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/parameters/?/value/deprecated",finalField:"deprecated",lucenePath:"root_properties_parameters_value_deprecated",CVDomain:"",displayName:"Parameter Value Deprecated",dataType:"boolean",luceneQueryable:!0},"Property Property Type":{fieldName:"Property Type",fieldPath:"/properties/?/propertyType",finalField:"propertyType",lucenePath:"root_properties_propertyType",CVDomain:"PROPERTY_TYPE",displayName:"Property Property Type",dataType:"string",luceneQueryable:!0},"Property Value":{fieldName:"Property Value",fieldPath:"/properties/?/value",finalField:"value",lucenePath:"root_properties_value",CVDomain:"",displayName:"Property Value",dataType:"object ",luceneQueryable:!0},"Value Access":{fieldName:"Access",fieldPath:"/properties/?/value/access",finalField:"access",lucenePath:"root_properties_value_access",CVDomain:"ACCESS_GROUP",displayName:"Value Access",dataType:"array ",luceneQueryable:!0},"Value Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/value/deprecated",finalField:"deprecated",lucenePath:"root_properties_value_deprecated",CVDomain:"",displayName:"Value Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Access":{fieldName:"Access",fieldPath:"/protein/access",finalField:"access",lucenePath:"root_protein_access",CVDomain:"ACCESS_GROUP",displayName:"Protein Access",dataType:"array ",luceneQueryable:!0},"Protein Created":{fieldName:"Created",fieldPath:"/protein/created",finalField:"created",lucenePath:"root_protein_created",CVDomain:"",displayName:"Protein Created",dataType:"number",luceneQueryable:!0},"Protein Created By":{fieldName:"Created By",fieldPath:"/protein/createdBy",finalField:"createdBy",lucenePath:"root_protein_createdBy",CVDomain:"",displayName:"Protein Created By",dataType:"string",luceneQueryable:!0},"Protein Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/deprecated",finalField:"deprecated",lucenePath:"root_protein_deprecated",CVDomain:"",displayName:"Protein Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Glycosylation Access":{fieldName:"Access",fieldPath:"/protein/glycosylation/access",finalField:"access",lucenePath:"root_protein_glycosylation_access",CVDomain:"ACCESS_GROUP",displayName:"Protein Glycosylation Access",dataType:"array ",luceneQueryable:!0},"Protein Glycosylation Created":{fieldName:"Created",fieldPath:"/protein/glycosylation/created",finalField:"created",lucenePath:"root_protein_glycosylation_created",CVDomain:"",displayName:"Protein Glycosylation Created",dataType:"number",luceneQueryable:!0},"Protein Glycosylation Created By":{fieldName:"Created By",fieldPath:"/protein/glycosylation/createdBy",finalField:"createdBy",lucenePath:"root_protein_glycosylation_createdBy",CVDomain:"",displayName:"Protein Glycosylation Created By",dataType:"string",luceneQueryable:!0},"Protein Glycosylation Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/glycosylation/deprecated",finalField:"deprecated",lucenePath:"root_protein_glycosylation_deprecated",CVDomain:"",displayName:"Protein Glycosylation Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Glycosylation Type":{fieldName:"Glycosylation Type",fieldPath:"/protein/glycosylation/glycosylationType",finalField:"glycosylationType",lucenePath:"root_protein_glycosylation_glycosylationType",CVDomain:"GLYCOSYLATION_TYPE",displayName:"Protein Glycosylation Type",dataType:"string",luceneQueryable:!0},"Protein Glycosylation Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/glycosylation/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_glycosylation_lastEdited",CVDomain:"",displayName:"Protein Glycosylation Last Edited",dataType:"number",luceneQueryable:!0},"Protein Glycosylation Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/glycosylation/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_glycosylation_lastEditedBy",CVDomain:"",displayName:"Protein Glycosylation Last Edited By",dataType:"string",luceneQueryable:!0},"Protein Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_lastEdited",CVDomain:"",displayName:"Protein Last Edited",dataType:"number",luceneQueryable:!0},"Protein Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_lastEditedBy",CVDomain:"",displayName:"Protein Last Edited By",dataType:"string",luceneQueryable:!0},"Other Link Access":{fieldName:"Access",fieldPath:"/protein/otherLinks/?/access",finalField:"access",lucenePath:"root_protein_otherLinks_access",CVDomain:"ACCESS_GROUP",displayName:"Other Link Access",dataType:"array ",luceneQueryable:!0},"Other Link Created":{fieldName:"Created",fieldPath:"/protein/otherLinks/?/created",finalField:"created",lucenePath:"root_protein_otherLinks_created",CVDomain:"",displayName:"Other Link Created",dataType:"number",luceneQueryable:!0},"Other Link Created By":{fieldName:"Created By",fieldPath:"/protein/otherLinks/?/createdBy",finalField:"createdBy",lucenePath:"root_protein_otherLinks_createdBy",CVDomain:"",displayName:"Other Link Created By",dataType:"string",luceneQueryable:!0},"Other Link Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/otherLinks/?/deprecated",finalField:"deprecated",lucenePath:"root_protein_otherLinks_deprecated",CVDomain:"",displayName:"Other Link Deprecated",dataType:"boolean",luceneQueryable:!0},"Other Link Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/otherLinks/?/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_otherLinks_lastEdited",CVDomain:"",displayName:"Other Link Last Edited",dataType:"number",luceneQueryable:!0},"Other Link Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/otherLinks/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_otherLinks_lastEditedBy",CVDomain:"",displayName:"Other Link Last Edited By",dataType:"string",luceneQueryable:!0},"Other Link Linkagetype":{fieldName:"Linkage Type",fieldPath:"/protein/otherLinks/?/linkageType",finalField:"linkageType",lucenePath:"root_protein_otherLinks_linkageType",CVDomain:"OTHER_LINKAGE_TYPE",displayName:"Other Link Linkagetype",dataType:"string",luceneQueryable:!0},"Protein Protein Subtype":{fieldName:"Protein Sub Type",fieldPath:"/protein/proteinSubType",finalField:"proteinSubType",lucenePath:"root_protein_proteinSubType",CVDomain:"PROTEIN_SUBTYPE",displayName:"Protein Protein Subtype",dataType:"string",luceneQueryable:!0},"Protein Proteintype":{fieldName:"Protein Type",fieldPath:"/protein/proteinType",finalField:"proteinType",lucenePath:"root_protein_proteinType",CVDomain:"PROTEIN_TYPE",displayName:"Protein Proteintype",dataType:"string",luceneQueryable:!0},"Protein Sequence Origin":{fieldName:"Sequence Origin",fieldPath:"/protein/sequenceOrigin",finalField:"sequenceOrigin",lucenePath:"root_protein_sequenceOrigin",CVDomain:"SEQUENCE_ORIGIN",displayName:"Protein Sequence Origin",dataType:"string",luceneQueryable:!0},"Protein Sequence Type":{fieldName:"Sequence Type",fieldPath:"/protein/sequenceType",finalField:"sequenceType",lucenePath:"root_protein_sequenceType",CVDomain:"SEQUENCE_TYPE",displayName:"Protein Sequence Type",dataType:"string",luceneQueryable:!0},"Protein Subunit Access":{fieldName:"Access",fieldPath:"/protein/subunits/?/access",finalField:"access",lucenePath:"root_protein_subunits_access",CVDomain:"ACCESS_GROUP",displayName:"Protein Subunit Access",dataType:"array ",luceneQueryable:!0},"Protein Subunit Created":{fieldName:"Created",fieldPath:"/protein/subunits/?/created",finalField:"created",lucenePath:"root_protein_subunits_created",CVDomain:"",displayName:"Protein Subunit Created",dataType:"number",luceneQueryable:!0},"Protein Subunit Created By":{fieldName:"Created By",fieldPath:"/protein/subunits/?/createdBy",finalField:"createdBy",lucenePath:"root_protein_subunits_createdBy",CVDomain:"",displayName:"Protein Subunit Created By",dataType:"string",luceneQueryable:!0},"Protein Subunit Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/subunits/?/deprecated",finalField:"deprecated",lucenePath:"root_protein_subunits_deprecated",CVDomain:"",displayName:"Protein Subunit Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Subunit Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/subunits/?/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_subunits_lastEdited",CVDomain:"",displayName:"Protein Subunit Last Edited",dataType:"number",luceneQueryable:!0},"Protein Subunit Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/subunits/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_subunits_lastEditedBy",CVDomain:"",displayName:"Protein Subunit Last Edited By",dataType:"string",luceneQueryable:!0},"Protein Sequence":{fieldName:"Sequence",fieldPath:"/protein/subunits/?/sequence",finalField:"sequence",lucenePath:"root_protein_subunits_sequence",CVDomain:"",displayName:"Protein Sequence",dataType:"string",luceneQueryable:!0},"Protein Subunit Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/subunits/?/subunitIndex",finalField:"subunitIndex",lucenePath:"root_protein_subunits_subunitIndex",CVDomain:"",displayName:"Protein Subunit Subunit Index",dataType:"number",luceneQueryable:!0},"Reference Access":{fieldName:"Access",fieldPath:"/references/?/access",finalField:"access",lucenePath:"root_references_access",CVDomain:"ACCESS_GROUP",displayName:"Reference Access",dataType:"array ",luceneQueryable:!0},"Reference Text / Citation":{fieldName:"CITATION",fieldPath:"/references/?/citation",finalField:"citation",lucenePath:"root_references_citation",CVDomain:"",displayName:"Reference Text / Citation",dataType:"string",luceneQueryable:!0},"Reference Created":{fieldName:"Created",fieldPath:"/references/?/created",finalField:"created",lucenePath:"root_references_created",CVDomain:"",displayName:"Reference Created",dataType:"number",luceneQueryable:!0},"Reference Created By":{fieldName:"Created By",fieldPath:"/references/?/createdBy",finalField:"createdBy",lucenePath:"root_references_createdBy",CVDomain:"",displayName:"Reference Created By",dataType:"string",luceneQueryable:!0},"Reference Deprecated":{fieldName:"Deprecated",fieldPath:"/references/?/deprecated",finalField:"deprecated",lucenePath:"root_references_deprecated",CVDomain:"",displayName:"Reference Deprecated",dataType:"boolean",luceneQueryable:!0},"Reference Type":{fieldName:"Doc Type",fieldPath:"/references/?/docType",finalField:"docType",lucenePath:"root_references_docType",CVDomain:"DOCUMENT_TYPE",displayName:"Reference Type",dataType:"string",luceneQueryable:!0},"Reference Document Date":{fieldName:"Document Date",fieldPath:"/references/?/documentDate",finalField:"documentDate",lucenePath:"root_references_documentDate",CVDomain:"",displayName:"Reference Document Date",dataType:"number",luceneQueryable:!0},"Reference ID":{fieldName:"Id",fieldPath:"/references/?/id",finalField:"id",lucenePath:"root_references_id",CVDomain:"",displayName:"Reference ID",dataType:"string",luceneQueryable:!0},"Reference Last Edited":{fieldName:"Last Edited",fieldPath:"/references/?/lastEdited",finalField:"lastEdited",lucenePath:"root_references_lastEdited",CVDomain:"",displayName:"Reference Last Edited",dataType:"number",luceneQueryable:!0},"Reference Last Edited By":{fieldName:"Last Edited By",fieldPath:"/references/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_references_lastEditedBy",CVDomain:"",displayName:"Reference Last Edited By",dataType:"string",luceneQueryable:!0},"Reference Public Domain":{fieldName:"Public Domain",fieldPath:"/references/?/publicDomain",finalField:"publicDomain",lucenePath:"root_references_publicDomain",CVDomain:"",displayName:"Reference Public Domain",dataType:"boolean",luceneQueryable:!0},"Reference Uploaded File":{fieldName:"Uploaded File",fieldPath:"/references/?/uploadedFile",finalField:"uploadedFile",lucenePath:"root_references_uploadedFile",CVDomain:"",displayName:"Reference Uploaded File",dataType:"string",luceneQueryable:!0},"Reference URL":{fieldName:"Url",fieldPath:"/references/?/url",finalField:"url",lucenePath:"root_references_url",CVDomain:"",displayName:"Reference URL",dataType:"string",luceneQueryable:!0},"Relationship Access":{fieldName:"Access",fieldPath:"/relationships/?/access",finalField:"access",lucenePath:"root_relationships_access",CVDomain:"ACCESS_GROUP",displayName:"Relationship Access",dataType:"array ",luceneQueryable:!0},"Relationship Amount Access":{fieldName:"Access",fieldPath:"/relationships/?/amount/access",finalField:"access",lucenePath:"root_relationships_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Relationship Amount Access",dataType:"array ",luceneQueryable:!0},"Relationship Amount Average":{fieldName:"Average",fieldPath:"/relationships/?/amount/average",finalField:"average",lucenePath:"root_relationships_amount_average",CVDomain:"",displayName:"Relationship Amount Average",dataType:"number",luceneQueryable:!0},"Relationship Amount Created":{fieldName:"Created",fieldPath:"/relationships/?/amount/created",finalField:"created",lucenePath:"root_relationships_amount_created",CVDomain:"",displayName:"Relationship Amount Created",dataType:"number",luceneQueryable:!0},"Relationship Amount Created By":{fieldName:"Created By",fieldPath:"/relationships/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_relationships_amount_createdBy",CVDomain:"",displayName:"Relationship Amount Created By",dataType:"string",luceneQueryable:!0},"Relationship Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_relationships_amount_deprecated",CVDomain:"",displayName:"Relationship Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Relationship Amount High":{fieldName:"High",fieldPath:"/relationships/?/amount/high",finalField:"high",lucenePath:"root_relationships_amount_high",CVDomain:"",displayName:"Relationship Amount High",dataType:"number",luceneQueryable:!0},"Relationship Amount High Limit":{fieldName:"High Limit",fieldPath:"/relationships/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_relationships_amount_highLimit",CVDomain:"",displayName:"Relationship Amount High Limit",dataType:"number",luceneQueryable:!0},"Relationship Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_amount_lastEdited",CVDomain:"",displayName:"Relationship Amount Last Edited",dataType:"number",luceneQueryable:!0},"Relationship Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_amount_lastEditedBy",CVDomain:"",displayName:"Relationship Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Relationship Amount Low":{fieldName:"Low",fieldPath:"/relationships/?/amount/low",finalField:"low",lucenePath:"root_relationships_amount_low",CVDomain:"",displayName:"Relationship Amount Low",dataType:"number",luceneQueryable:!0},"Relationship Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/relationships/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_relationships_amount_lowLimit",CVDomain:"",displayName:"Relationship Amount Low Limit",dataType:"number",luceneQueryable:!0},"Relationship Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/relationships/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_relationships_amount_nonNumericValue",CVDomain:"",displayName:"Relationship Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Relationship Amount Type":{fieldName:"Type",fieldPath:"/relationships/?/amount/type",finalField:"type",lucenePath:"root_relationships_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Relationship Amount Type",dataType:"string",luceneQueryable:!0},"Relationship Amount Units":{fieldName:"Units",fieldPath:"/relationships/?/amount/units",finalField:"units",lucenePath:"root_relationships_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Relationship Amount Units",dataType:"string",luceneQueryable:!0},"Relationship Comments":{fieldName:"Comments",fieldPath:"/relationships/?/comments",finalField:"comments",lucenePath:"root_relationships_comments",CVDomain:"",displayName:"Relationship Comments",dataType:"string",luceneQueryable:!0},"Relationship Created":{fieldName:"Created",fieldPath:"/relationships/?/created",finalField:"created",lucenePath:"root_relationships_created",CVDomain:"",displayName:"Relationship Created",dataType:"number",luceneQueryable:!0},"Relationship Created By":{fieldName:"Created By",fieldPath:"/relationships/?/createdBy",finalField:"createdBy",lucenePath:"root_relationships_createdBy",CVDomain:"",displayName:"Relationship Created By",dataType:"string",luceneQueryable:!0},"Relationship Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/deprecated",finalField:"deprecated",lucenePath:"root_relationships_deprecated",CVDomain:"",displayName:"Relationship Deprecated",dataType:"boolean",luceneQueryable:!0},"Relationship Interaction Type":{fieldName:"Interaction Type",fieldPath:"/relationships/?/interactionType",finalField:"interactionType",lucenePath:"root_relationships_interactionType",CVDomain:"INTERACTION_TYPE",displayName:"Relationship Interaction Type",dataType:"string",luceneQueryable:!0},"Relationship Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_lastEdited",CVDomain:"",displayName:"Relationship Last Edited",dataType:"number",luceneQueryable:!0},"Relationship Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_lastEditedBy",CVDomain:"",displayName:"Relationship Last Edited By",dataType:"string",luceneQueryable:!0},"Mediator Substance Access":{fieldName:"Access",fieldPath:"/relationships/?/mediatorSubstance/access",finalField:"access",lucenePath:"root_relationships_mediatorSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Mediator Substance Access",dataType:"array ",luceneQueryable:!0},"Mediator Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/relationships/?/mediatorSubstance/approvalID",finalField:"approvalID",lucenePath:"root_relationships_mediatorSubstance_approvalID",CVDomain:"",displayName:"Mediator Substance Approval ID",dataType:"string",luceneQueryable:!0},"Mediator Substance Created":{fieldName:"Created",fieldPath:"/relationships/?/mediatorSubstance/created",finalField:"created",lucenePath:"root_relationships_mediatorSubstance_created",CVDomain:"",displayName:"Mediator Substance Created",dataType:"number",luceneQueryable:!0},"Mediator Substance Created By":{fieldName:"Created By",fieldPath:"/relationships/?/mediatorSubstance/createdBy",finalField:"createdBy",lucenePath:"root_relationships_mediatorSubstance_createdBy",CVDomain:"",displayName:"Mediator Substance Created By",dataType:"string",luceneQueryable:!0},"Mediator Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/mediatorSubstance/deprecated",finalField:"deprecated",lucenePath:"root_relationships_mediatorSubstance_deprecated",CVDomain:"",displayName:"Mediator Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Mediator Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/mediatorSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_mediatorSubstance_lastEdited",CVDomain:"",displayName:"Mediator Substance Last Edited",dataType:"number",luceneQueryable:!0},"Mediator Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/mediatorSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_mediatorSubstance_lastEditedBy",CVDomain:"",displayName:"Mediator Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Mediator Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/relationships/?/mediatorSubstance/refPname",finalField:"refPname",lucenePath:"root_relationships_mediatorSubstance_refPname",CVDomain:"",displayName:"Mediator Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Mediator Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/relationships/?/mediatorSubstance/refuuid",finalField:"refuuid",lucenePath:"root_relationships_mediatorSubstance_refuuid",CVDomain:"",displayName:"Mediator Substance Refuuid",dataType:"string",luceneQueryable:!0},"Mediator Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/relationships/?/mediatorSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_relationships_mediatorSubstance_substanceClass",CVDomain:"",displayName:"Mediator Substance Substance Class",dataType:"string",luceneQueryable:!0},"Relationship Originator UUID":{fieldName:"Originator UUID",fieldPath:"/relationships/?/originatorUuid",finalField:"originatorUuid",lucenePath:"root_relationships_originatorUuid",CVDomain:"",displayName:"Relationship Originator UUID",dataType:"string",luceneQueryable:!0},"Relationship Qualification":{fieldName:"Qualification",fieldPath:"/relationships/?/qualification",finalField:"qualification",lucenePath:"root_relationships_qualification",CVDomain:"QUALIFICATION",displayName:"Relationship Qualification",dataType:"string",luceneQueryable:!0},"Related Substance Access":{fieldName:"Access",fieldPath:"/relationships/?/relatedSubstance/access",finalField:"access",lucenePath:"root_relationships_relatedSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Related Substance Access",dataType:"array ",luceneQueryable:!0},"Related Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/relationships/?/relatedSubstance/approvalID",finalField:"approvalID",lucenePath:"root_relationships_relatedSubstance_approvalID",CVDomain:"",displayName:"Related Substance Approval ID",dataType:"string",luceneQueryable:!0},"Related Substance Created":{fieldName:"Created",fieldPath:"/relationships/?/relatedSubstance/created",finalField:"created",lucenePath:"root_relationships_relatedSubstance_created",CVDomain:"",displayName:"Related Substance Created",dataType:"number",luceneQueryable:!0},"Related Substance Created By":{fieldName:"Created By",fieldPath:"/relationships/?/relatedSubstance/createdBy",finalField:"createdBy",lucenePath:"root_relationships_relatedSubstance_createdBy",CVDomain:"",displayName:"Related Substance Created By",dataType:"string",luceneQueryable:!0},"Related Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/relatedSubstance/deprecated",finalField:"deprecated",lucenePath:"root_relationships_relatedSubstance_deprecated",CVDomain:"",displayName:"Related Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Related Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/relatedSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_relatedSubstance_lastEdited",CVDomain:"",displayName:"Related Substance Last Edited",dataType:"number",luceneQueryable:!0},"Related Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/relatedSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_relatedSubstance_lastEditedBy",CVDomain:"",displayName:"Related Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Related Substance Name":{fieldName:"Ref Pname",fieldPath:"/relationships/?/relatedSubstance/refPname",finalField:"refPname",lucenePath:"root_relationships_relatedSubstance_refPname",CVDomain:"",displayName:"Related Substance Name",dataType:"string",luceneQueryable:!0},"Related Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/relationships/?/relatedSubstance/refuuid",finalField:"refuuid",lucenePath:"root_relationships_relatedSubstance_refuuid",CVDomain:"",displayName:"Related Substance Refuuid",dataType:"string",luceneQueryable:!0},"Related Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/relationships/?/relatedSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_relationships_relatedSubstance_substanceClass",CVDomain:"",displayName:"Related Substance Substance Class",dataType:"string",luceneQueryable:!0},"Relationship Type":{fieldName:"Type",fieldPath:"/relationships/?/type",finalField:"type",lucenePath:"root_relationships_type",CVDomain:"RELATIONSHIP_TYPE",displayName:"Relationship Type",dataType:"string",luceneQueryable:!0},"Record Status":{fieldName:"Status",fieldPath:"/status",finalField:"status",lucenePath:"root_status",CVDomain:"",displayName:"Record Status",dataType:"object ",luceneQueryable:!0},"Structurally Diverse Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/access",finalField:"access",lucenePath:"root_structurallyDiverse_access",CVDomain:"ACCESS_GROUP",displayName:"Structurally Diverse Access",dataType:"array ",luceneQueryable:!0},"Structurally Diverse Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/created",finalField:"created",lucenePath:"root_structurallyDiverse_created",CVDomain:"",displayName:"Structurally Diverse Created",dataType:"object ",luceneQueryable:!0},"Structurally Diverse Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_createdBy",CVDomain:"",displayName:"Structurally Diverse Created By",dataType:"array ",luceneQueryable:!0},"Structurally Diverse Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_deprecated",CVDomain:"",displayName:"Structurally Diverse Deprecated",dataType:"number",luceneQueryable:!0},"Structurally Diverse Developmental Stage":{fieldName:"Developmental Stage",fieldPath:"/structurallyDiverse/developmentalStage",finalField:"developmentalStage",lucenePath:"root_structurallyDiverse_developmentalStage",CVDomain:"DEVELOPMENTAL_STAGE",displayName:"Structurally Diverse Developmental Stage",dataType:"number",luceneQueryable:!0},"Structurally Diverse Fraction Material Type":{fieldName:"Fraction Material Type",fieldPath:"/structurallyDiverse/fractionMaterialType",finalField:"fractionMaterialType",lucenePath:"root_structurallyDiverse_fractionMaterialType",CVDomain:"FRACTION_MATERIAL_TYPE",displayName:"Structurally Diverse Fraction Material Type",dataType:"string",luceneQueryable:!0},"Structurally Diverse Fraction Name":{fieldName:"Fraction Name",fieldPath:"/structurallyDiverse/fractionName",finalField:"fractionName",lucenePath:"root_structurallyDiverse_fractionName",CVDomain:"",displayName:"Structurally Diverse Fraction Name",dataType:"boolean",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/access",finalField:"access",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_access",CVDomain:"ACCESS_GROUP",displayName:"St. Div. Hybrid Parent (m) Access",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/approvalID",finalField:"approvalID",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_approvalID",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Approval ID",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/created",finalField:"created",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_created",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Created",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_createdBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Created By",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_deprecated",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Deprecated",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_lastEdited",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Last Edited",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_lastEditedBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Last Edited By",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Substance Name":{fieldName:"Ref Pname",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/refPname",finalField:"refPname",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_refPname",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Substance Name",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Refuuid":{fieldName:"Refuuid",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/refuuid",finalField:"refuuid",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_refuuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Refuuid",dataType:"object ",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Substance Class":{fieldName:"Substance Class",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/substanceClass",finalField:"substanceClass",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_substanceClass",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Substance Class",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/access",finalField:"access",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_access",CVDomain:"ACCESS_GROUP",displayName:"St. Div. Hybrid Parent (p) Access",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/approvalID",finalField:"approvalID",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_approvalID",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Approval ID",dataType:"boolean",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/created",finalField:"created",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_created",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Created",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_createdBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Created By",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_deprecated",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Deprecated",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_lastEdited",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Last Edited",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_lastEditedBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Last Edited By",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Substance Name":{fieldName:"Ref Pname",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/refPname",finalField:"refPname",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_refPname",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Substance Name",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Refuuid":{fieldName:"Refuuid",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/refuuid",finalField:"refuuid",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_refuuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Refuuid",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Substance Class":{fieldName:"Substance Class",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/substanceClass",finalField:"substanceClass",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_substanceClass",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Substance Class",dataType:"string",luceneQueryable:!0},"Structurally Diverse Infraspecific Name":{fieldName:"Infra Specific Name",fieldPath:"/structurallyDiverse/infraSpecificName",finalField:"infraSpecificName",lucenePath:"root_structurallyDiverse_infraSpecificName",CVDomain:"",displayName:"Structurally Diverse Infraspecific Name",dataType:"number",luceneQueryable:!0},"Structurally Diverse Infraspecific type":{fieldName:"Infra Specific Type",fieldPath:"/structurallyDiverse/infraSpecificType",finalField:"infraSpecificType",lucenePath:"root_structurallyDiverse_infraSpecificType",CVDomain:"INFRA_SPECIFIC_TYPE",displayName:"Structurally Diverse Infraspecific type",dataType:"string",luceneQueryable:!0},"Structurally Diverse Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_lastEdited",CVDomain:"",displayName:"Structurally Diverse Last Edited",dataType:"array ",luceneQueryable:!0},"Structurally Diverse Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_lastEditedBy",CVDomain:"",displayName:"Structurally Diverse Last Edited By",dataType:"string",luceneQueryable:!0},"Organism Author":{fieldName:"Author",fieldPath:"/structurallyDiverse/organismAuthor",finalField:"organismAuthor",lucenePath:"root_structurallyDiverse_organismAuthor",CVDomain:"",displayName:"Organism Author",dataType:"string",luceneQueryable:!0},"Organism Family":{fieldName:"Family",fieldPath:"/structurallyDiverse/organismFamily",finalField:"organismFamily",lucenePath:"root_structurallyDiverse_organismFamily",CVDomain:"",displayName:"Organism Family",dataType:"object ",luceneQueryable:!0},"Organism Genus":{fieldName:"Genus",fieldPath:"/structurallyDiverse/organismGenus",finalField:"organismGenus",lucenePath:"root_structurallyDiverse_organismGenus",CVDomain:"",displayName:"Organism Genus",dataType:"array ",luceneQueryable:!0},"Organism Species":{fieldName:"Species",fieldPath:"/structurallyDiverse/organismSpecies",finalField:"organismSpecies",lucenePath:"root_structurallyDiverse_organismSpecies",CVDomain:"",displayName:"Organism Species",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/parentSubstance/access",finalField:"access",lucenePath:"root_structurallyDiverse_parentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"St. Div. Hybrid Parent Access",dataType:"boolean",luceneQueryable:!0},"St. Div. Parent Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/structurallyDiverse/parentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_structurallyDiverse_parentSubstance_approvalID",CVDomain:"",displayName:"St. Div. Parent Approval ID",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/parentSubstance/created",finalField:"created",lucenePath:"root_structurallyDiverse_parentSubstance_created",CVDomain:"",displayName:"St. Div. Hybrid Parent Created",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/parentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_parentSubstance_createdBy",CVDomain:"",displayName:"St. Div. Hybrid Parent Created By",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/parentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_parentSubstance_deprecated",CVDomain:"",displayName:"St. Div. Hybrid Parent Deprecated",dataType:"object ",luceneQueryable:!0},"St. Div. Hybrid Parent Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/parentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_parentSubstance_lastEdited",CVDomain:"",displayName:"St. Div. Hybrid Parent Last Edited",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/parentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_parentSubstance_lastEditedBy",CVDomain:"",displayName:"St. Div. Hybrid Parent Last Edited By",dataType:"string",luceneQueryable:!0},"St. Div. Parent Substance Name":{fieldName:"Ref Pname",fieldPath:"/structurallyDiverse/parentSubstance/refPname",finalField:"refPname",lucenePath:"root_structurallyDiverse_parentSubstance_refPname",CVDomain:"",displayName:"St. Div. Parent Substance Name",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent Refuuid":{fieldName:"Refuuid",fieldPath:"/structurallyDiverse/parentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_structurallyDiverse_parentSubstance_refuuid",CVDomain:"",displayName:"St. Div. Hybrid Parent Refuuid",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Substance Class":{fieldName:"Substance Class",fieldPath:"/structurallyDiverse/parentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_structurallyDiverse_parentSubstance_substanceClass",CVDomain:"",displayName:"St. Div. Hybrid Parent Substance Class",dataType:"string",luceneQueryable:!0},"Structurally Diverse Partlocation":{fieldName:"Part Location",fieldPath:"/structurallyDiverse/partLocation",finalField:"partLocation",lucenePath:"root_structurallyDiverse_partLocation",CVDomain:"PART_LOCATION",displayName:"Structurally Diverse Partlocation",dataType:"string",luceneQueryable:!0},"Source Material Class":{fieldName:"Material Class",fieldPath:"/structurallyDiverse/sourceMaterialClass",finalField:"sourceMaterialClass",lucenePath:"root_structurallyDiverse_sourceMaterialClass",CVDomain:"SOURCE_MATERIAL_CLASS",displayName:"Source Material Class",dataType:"string",luceneQueryable:!0},"Source Material Source Material State":{fieldName:"Source Material State",fieldPath:"/structurallyDiverse/sourceMaterialState",finalField:"sourceMaterialState",lucenePath:"root_structurallyDiverse_sourceMaterialState",CVDomain:"SOURCE_MATERIAL_STATE",displayName:"Source Material Source Material State",dataType:"string",luceneQueryable:!0},"Source Material Type":{fieldName:"Material Type",fieldPath:"/structurallyDiverse/sourceMaterialType",finalField:"sourceMaterialType",lucenePath:"root_structurallyDiverse_sourceMaterialType",CVDomain:"SOURCE_MATERIAL_TYPE",displayName:"Source Material Type",dataType:"object ",luceneQueryable:!0},"Structure Access":{fieldName:"Access",fieldPath:"/structure/access",finalField:"access",lucenePath:"root_structure_access",CVDomain:"ACCESS_GROUP",displayName:"Structure Access",dataType:"number",luceneQueryable:!0},"Structure Has Atropisomerism":{fieldName:"Atropisomerism",fieldPath:"/structure/atropisomerism",finalField:"atropisomerism",lucenePath:"root_structure_atropisomerism",CVDomain:"ATROPISOMERISM",displayName:"Structure Has Atropisomerism",dataType:"string",luceneQueryable:!0},"Structure Charge":{fieldName:"Charge",fieldPath:"/structure/charge",finalField:"charge",lucenePath:"root_structure_charge",CVDomain:"",displayName:"Structure Charge",dataType:"boolean",luceneQueryable:!0},"Structure Count":{fieldName:"Count",fieldPath:"/structure/count",finalField:"count",lucenePath:"root_structure_count",CVDomain:"",displayName:"Structure Count",dataType:"number",luceneQueryable:!0},"Structure Created":{fieldName:"Created",fieldPath:"/structure/created",finalField:"created",lucenePath:"root_structure_created",CVDomain:"",displayName:"Structure Created",dataType:"string",luceneQueryable:!0},"Structure Created By":{fieldName:"Created By",fieldPath:"/structure/createdBy",finalField:"createdBy",lucenePath:"root_structure_createdBy",CVDomain:"",displayName:"Structure Created By",dataType:"string",luceneQueryable:!0},"Structure Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/structure/definedStereo",finalField:"definedStereo",lucenePath:"root_structure_definedStereo",CVDomain:"",displayName:"Structure Defined Stereo",dataType:"string",luceneQueryable:!0},"Structure Deprecated":{fieldName:"Deprecated",fieldPath:"/structure/deprecated",finalField:"deprecated",lucenePath:"root_structure_deprecated",CVDomain:"",displayName:"Structure Deprecated",dataType:"array ",luceneQueryable:!0},"Structure Digest":{fieldName:"Digest",fieldPath:"/structure/digest",finalField:"digest",lucenePath:"root_structure_digest",CVDomain:"",displayName:"Structure Digest",dataType:"string",luceneQueryable:!0},"Structure Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/structure/ezCenters",finalField:"ezCenters",lucenePath:"root_structure_ezCenters",CVDomain:"",displayName:"Structure Ez Centers",dataType:"string",luceneQueryable:!0},"Mol Formua":{fieldName:"Molecular Formula",fieldPath:"/structure/formula",finalField:"formula",lucenePath:"root_structure_formula",CVDomain:"",displayName:"Mol Formua",dataType:"string",luceneQueryable:!0},"Structure Last Edited":{fieldName:"Last Edited",fieldPath:"/structure/lastEdited",finalField:"lastEdited",lucenePath:"root_structure_lastEdited",CVDomain:"",displayName:"Structure Last Edited",dataType:"string",luceneQueryable:!0},"Structure Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structure/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structure_lastEditedBy",CVDomain:"",displayName:"Structure Last Edited By",dataType:"number",luceneQueryable:!0},"Structure Mwt":{fieldName:"Molecular Weight",fieldPath:"/structure/mwt",finalField:"mwt",lucenePath:"root_structure_mwt",CVDomain:"",displayName:"Structure Mwt",dataType:"string",luceneQueryable:!0},"Structure Optical Activity":{fieldName:"Optical Activity",fieldPath:"/structure/opticalActivity",finalField:"opticalActivity",lucenePath:"root_structure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Structure Optical Activity",dataType:"string",luceneQueryable:!0},"Structure Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/structure/stereoCenters",finalField:"stereoCenters",lucenePath:"root_structure_stereoCenters",CVDomain:"",displayName:"Structure Stereo Centers",dataType:"object ",luceneQueryable:!0},"Structure Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/structure/stereochemistry",finalField:"stereochemistry",lucenePath:"root_structure_stereoChemistry",CVDomain:"STEREOCHEMISTRY_TYPE",displayName:"Structure Stereochemistry",dataType:"array ",luceneQueryable:!0},"Structure Stereo Comments":{fieldName:"Stereocomments",fieldPath:"/structure/stereoComments",finalField:"stereoComments",lucenePath:"root_structure_stereoComments",CVDomain:"",displayName:"Structure Stereo Comments",dataType:"string",luceneQueryable:!0},"Substance Class":{fieldName:"Substance Type",fieldPath:"/substanceClass",finalField:"substanceClass",lucenePath:"root_substanceClass",CVDomain:"SUBSTANCE_CLASS",displayName:"Substance Class",dataType:"number",luceneQueryable:!0},"Record Version":{fieldName:"Version",fieldPath:"/version",finalField:"version",lucenePath:"root_version",CVDomain:"",displayName:"Record Version",dataType:"number",luceneQueryable:!0},"SpecifiedSubstance Created":{fieldName:"Created",fieldPath:"/specifiedSubstance/created",finalField:"created",lucenePath:"root_specifiedSubstance_created",CVDomain:"",displayName:"SpecifiedSubstance Created",dataType:"string",luceneQueryable:!0},"SpecifiedSubstance Created By":{fieldName:"Created By",fieldPath:"/specifiedSubstance/createdBy",finalField:"createdBy",lucenePath:"root_specifiedSubstance_createdBy",CVDomain:"",displayName:"SpecifiedSubstance Created By",dataType:"array ",luceneQueryable:!0},"SpecifiedSubstance Deprecated":{fieldName:"Deprecated",fieldPath:"/specifiedSubstance/deprecated",finalField:"deprecated",lucenePath:"root_specifiedSubstance_deprecated",CVDomain:"",displayName:"SpecifiedSubstance Deprecated",dataType:"string",luceneQueryable:!0},"SpecifiedSubstance Last Edited":{fieldName:"Last Edited",fieldPath:"/specifiedSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_specifiedSubstance_lastEdited",CVDomain:"",displayName:"SpecifiedSubstance Last Edited",dataType:"string",luceneQueryable:!0},"SpecifiedSubstance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/specifiedSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_specifiedSubstance_lastEditedBy",CVDomain:"",displayName:"SpecifiedSubstance Last Edited By",dataType:"string",luceneQueryable:!0},"Constituent Role":{fieldName:"Role",fieldPath:"/specifiedSubstance/constituents/?/role",finalField:"",lucenePath:"root_specifiedSubstance_constituents_role",CVDomain:"CONSTITUENT_ROLE",displayName:"Constituent Role",dataType:"array ",luceneQueryable:!0},"Constituent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/specifiedSubstance/constituents/?/substance/approvalID",finalField:"approvalID",lucenePath:"root_specifiedSubstance_constituents_substance_approvalID",CVDomain:"",displayName:"Constituent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Constituent Substance Created":{fieldName:"Created",fieldPath:"/specifiedSubstance/constituents/?/substance/created",finalField:"created",lucenePath:"root_specifiedSubstance_constituents_substance_created",CVDomain:"",displayName:"Constituent Substance Created",dataType:"string",luceneQueryable:!0},"Constituent Substance Created By":{fieldName:"Created By",fieldPath:"/specifiedSubstance/constituents/?/substance/createdBy",finalField:"createdBy",lucenePath:"root_specifiedSubstance_constituents_substance_createdBy",CVDomain:"",displayName:"Constituent Substance Created By",dataType:"object ",luceneQueryable:!0},"Constituent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/specifiedSubstance/constituents/?/substance/deprecated",finalField:"deprecated",lucenePath:"root_specifiedSubstance_constituents_substance_deprecated",CVDomain:"",displayName:"Constituent Substance Deprecated",dataType:"array ",luceneQueryable:!0},"Constituent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/specifiedSubstance/constituents/?/substance/lastEdited",finalField:"lastEdited",lucenePath:"root_specifiedSubstance_constituents_substance_lastEdited",CVDomain:"",displayName:"Constituent Substance Last Edited",dataType:"string",luceneQueryable:!0},"Constituent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/specifiedSubstance/constituents/?/substance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_specifiedSubstance_constituents_substance_lastEditedBy",CVDomain:"",displayName:"Constituent Substance Last Edited By",dataType:"number",luceneQueryable:!0},"Constituent Substance Substance Name":{fieldName:"Ref Pname",fieldPath:"/specifiedSubstance/constituents/?/substance/refPname",finalField:"refPname",lucenePath:"root_specifiedSubstance_constituents_substance_refPname",CVDomain:"",displayName:"Constituent Substance Substance Name",dataType:"number",luceneQueryable:!0},"Constituent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/specifiedSubstance/constituents/?/substance/refuuid",finalField:"refuuid",lucenePath:"root_specifiedSubstance_constituents_substance_refuuid",CVDomain:"",displayName:"Constituent Substance Refuuid",dataType:"boolean",luceneQueryable:!0},"Constituent Substance UUID":{fieldName:"Uuid",fieldPath:"/specifiedSubstance/constituents/?/substance/uuid",finalField:"uuid",lucenePath:"root_specifiedSubstance_constituents_substance_uuid",CVDomain:"",displayName:"Constituent Substance UUID",dataType:"number",luceneQueryable:!0},"Constituent Amount Average":{fieldName:"Average",fieldPath:"/specifiedSubstance/constituents/?/amount/average",finalField:"average",lucenePath:"root_specifiedSubstance_constituents_amount_average",CVDomain:"",displayName:"Constituent Amount Average",dataType:"string",luceneQueryable:!0},"Constituent Amount Created":{fieldName:"Created",fieldPath:"/specifiedSubstance/constituents/?/amount/created",finalField:"created",lucenePath:"root_specifiedSubstance_constituents_amount_created",CVDomain:"",displayName:"Constituent Amount Created",dataType:"number",luceneQueryable:!0},"Constituent Amount Created By":{fieldName:"Created By",fieldPath:"/specifiedSubstance/constituents/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_specifiedSubstance_constituents_amount_createdBy",CVDomain:"",displayName:"Constituent Amount Created By",dataType:"string",luceneQueryable:!0},"Constituent Amount High":{fieldName:"High",fieldPath:"/specifiedSubstance/constituents/?/amount/high",finalField:"high",lucenePath:"root_specifiedSubstance_constituents_amount_high",CVDomain:"",displayName:"Constituent Amount High",dataType:"number",luceneQueryable:!0},"Constituent Amount High Limit":{fieldName:"High Limit",fieldPath:"/specifiedSubstance/constituents/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_specifiedSubstance_constituents_amount_highLimit",CVDomain:"",displayName:"Constituent Amount High Limit",dataType:"string",luceneQueryable:!0},"Constituent Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/specifiedSubstance/constituents/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_specifiedSubstance_constituents_amount_lastEdited",CVDomain:"",displayName:"Constituent Amount Last Edited",dataType:"array ",luceneQueryable:!0},"Constituent Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/specifiedSubstance/constituents/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_specifiedSubstance_constituents_amount_lastEditedBy",CVDomain:"",displayName:"Constituent Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Constituent Amount Low":{fieldName:"Low",fieldPath:"/specifiedSubstance/constituents/?/amount/low",finalField:"low",lucenePath:"root_specifiedSubstance_constituents_amount_low",CVDomain:"",displayName:"Constituent Amount Low",dataType:"number",luceneQueryable:!0},"Constituent Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/specifiedSubstance/constituents/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_specifiedSubstance_constituents_amount_lowLimit",CVDomain:"",displayName:"Constituent Amount Low Limit",dataType:"string",luceneQueryable:!0},"Constituent Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/specifiedSubstance/constituents/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_specifiedSubstance_constituents_amount_nonNumericValue",CVDomain:"",displayName:"Constituent Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Constituent Amount Type":{fieldName:"Type",fieldPath:"/specifiedSubstance/constituents/?/amount/type",finalField:"type",lucenePath:"root_specifiedSubstance_constituents_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Constituent Amount Type",dataType:"array ",luceneQueryable:!0},"Constituent Amount Units":{fieldName:"Units",fieldPath:"/specifiedSubstance/constituents/?/amount/units",finalField:"units",lucenePath:"root_specifiedSubstance_constituents_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Constituent Amount Units",dataType:"string",luceneQueryable:!0}},p=n(76442),d=function(){var s=function(){function h(){(0,P.Z)(this,h),this.dataDictionary=e}return(0,t.Z)(h,[{key:"getDictionaryRow",value:function(T){return this.dataDictionary[T]}},{key:"getDictionaryField",value:function(T,B){return this.dataDictionary[T][B]}},{key:"getCVDomainRows",value:function(){var T=this,B=[];return Object.keys(this.dataDictionary).forEach(function(I){var v=T.dataDictionary[I].CVDomain;""!==v&&(B[v]&&B[v].length>0?B[v].push(I):B[v]=[I])}),B}}]),h}();return s.\u0275fac=function(f){return new(f||s)},s.\u0275prov=p.Yz7({token:s,factory:s.\u0275fac,providedIn:"root"}),s}()},63169:function(dt,K,n){"use strict";n.d(K,{FW:function(){return t.F}}),n(86698);var t=n(52149)},86698:function(dt,K,n){"use strict";n.d(K,{J:function(){return P}});var P=[{value:"default",display:"Relevance"},{value:"^Display Name",display:"Display Name, A-Z"},{value:"$Display Name",display:"Display Name, Z-A"},{value:"^Reference Count",display:"Least References"},{value:"$Reference Count",display:"Most References"},{value:"^root_lastEdited",display:"Oldest Change"},{value:"$root_lastEdited",display:"Newest Change"},{value:"$root_structure_mwt",display:"Highest Molecular Weight"},{value:"^root_structure_mwt",display:"Lowest Molecular Weight"}]},52149:function(dt,K,n){"use strict";n.d(K,{F:function(){return f}});var P=n(78069),t=n(48047),e=n(92507),p=n(50635),d=n(76442),s=n(28784),h=n(50318),f=function(){var T=function(){function B(I,v,j){(0,P.Z)(this,B),this.http=I,this.configService=v,this.sanitizer=j}return(0,t.Z)(B,[{key:"getStructureSearchSuggestions",value:function(v){var j="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get(j+"suggest?q="+v)}},{key:"getSafeStructureImgUrl",value:function(v){var j=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150,Q=arguments.length>2?arguments[2]:void 0;Q||(Q=!1);var J="".concat(this.configService.configData.apiBaseUrl,"img/").concat(v,".svg?size=").concat(j.toString(),"&stereo=").concat(Q);return this.sanitizer.bypassSecurityTrustUrl(J)}},{key:"getStructureImgUrl",value:function(v){var j=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150,Q=arguments.length>2?arguments[2]:void 0,J=arguments.length>3?arguments[3]:void 0,Z=arguments.length>4?arguments[4]:void 0;Q||(Q=!1);var A=this.configService.configData.apiBaseUrl,N=Math.random().toString(36).replace("0.",""),E="".concat(A,"img/").concat(v,".svg?size=").concat(j.toString(),"&stereo=").concat(Q,"&cache-control=").concat(N);return null!=J&&(E="".concat(E,"&context=").concat(J.toString())),null!=Z&&(E="".concat(E,"&version=").concat(Z)),E}},{key:"handleMatSidenavOpen",value:function(v){null==v||window&&window.innerWidth0&&void 0!==arguments[0]?arguments[0]:"";return v.replace(/\s(.)/g,function(j){return j.toUpperCase()}).replace(/\s/g,"").replace(/^(.)/,function(j){return j.toLowerCase()})}},{key:"newUUID",value:function(v){return v?(v^16*Math.random()>>v/4).toString(16):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,this.newUUID)}},{key:"getObjectValue",value:function(v,j){var Q=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;String.prototype.split.call(j,/[,[\].]+?/).filter(Boolean).reduce(function(J,Z){return Object.hasOwnProperty.call(J,Z)?J[Z]:Q},v)}},{key:"uploadFile",value:function(v){var j=new FormData;return j.append("file-name",v),j.append("file-type",v.type),this.http.post("".concat(this.configService.configData.apiBaseUrl,"upload"),j).pipe((0,p.U)(function(Q){return Q&&Q.url||""}))}},{key:"sruDisplayToConnectivity",value:function(v){if(!v)return{};for(var j=[],Q=v.split(";"),J=/^\s*[A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)[-][A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)\s*$/g,Z={$errors:[]},A=0;A0&&(Z.$errors=j),Z}},{key:"displayAmount",value:function(v){function j(N){return N?"object"==typeof N?N.display?N.display:N.value?N.value:null:N:null}var Q="";if(v&&"object"==typeof v){if(v){var J=!1,Z=j(v.units);Z||(Z="");var A=j(v.type);A&&(Q+=A+"\n"),(v.average||v.high||v.low)&&(v.average&&(Q+=v.average,v.units&&(Q+=" "+Z,J=!0)),(v.high||v.low)&&(Q+=" [",v.high&&!v.low?Q+="<"+v.high:!v.high&&v.low?Q+=">"+v.low:v.high&&v.low&&(Q+=v.low+" to "+v.high),Q+="] ",J||v.units&&(Q+=" "+Z,J=!0)),Q+=" (average) "),(v.highLimit||v.lowLimit)&&(Q+="\n["),v.highLimit&&!v.lowLimit?Q+="<"+v.highLimit:!v.highLimit&&v.lowLimit?Q+=">"+v.lowLimit:v.highLimit&&v.lowLimit&&(Q+=v.lowLimit+" to "+v.highLimit),(v.highLimit||v.lowLimit)&&(Q+="] ",J||v.units&&(Q+=" "+Z,J=!0),Q+=" (limits)")}v.nonNumericValue&&(Q+=" "+v.nonNumericValue)}return Q}},{key:"compare",value:function(v,j,Q){return(v-1||v.indexOf(" OR ")>-1)}},{key:"looksLikeComplexSearchTermOrContainsStrings",value:function(v,j){return!!this.looksLikeComplexSearchTerm||(j.forEach(function(Q){if(v.indexOf(Q.valueOf())>-1)return!0}),!1)}},{key:"makeBeginsWithSearchTerm",value:function(v,j){var Q=j.replace(/(^"|"$)/g,"");return v+':"^'+(Q=Q.replace(/(^^)/g,""))+'"'}}]),B}();return T.\u0275fac=function(I){return new(I||T)(d.LFG(s.eN),d.LFG(e.E),d.LFG(h.H7))},T.\u0275prov=d.Yz7({token:T,factory:T.\u0275fac,providedIn:"root"}),T}()},34009:function(dt,K,n){"use strict";n.d(K,{l:function(){return P}});var P=[{value:"default",display:"Relevance",displayedColumns:"default",direction:"asc"},{value:"^root_adverseEvent",display:"Adverse Events, Ascending",displayedColumns:"adverseEvent",direction:"asc"},{value:"$root_adverseEvent",display:"Adverse Events, Descending",displayedColumns:"adverseEvent",direction:"desc"},{value:"^root_species",display:"Species, Ascending",displayedColumns:"species",direction:"asc"},{value:"$root_species",display:"Species, Descending",displayedColumns:"species",direction:"desc"},{value:"^root_aeCount",display:"Adverse Event Count, Ascending",displayedColumns:"adverseEventCount",direction:"asc"},{value:"$root_aeCount",display:"Adverse Event Count, Descending",displayedColumns:"adverseEventCount",direction:"desc"},{value:"^root_routeOfAdmin",display:"Route of Admin, Ascending",displayedColumns:"routeOfAdmin",direction:"asc"},{value:"$root_routeOfAdmin",display:"Route of Admin, Descending",displayedColumns:"routeOfAdmin",direction:"desc"},{value:"^root_name",display:"Ingredient, Ascending",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_name",display:"Ingredient Name, Descending",displayedColumns:"ingredientName",direction:"desc"}]},52395:function(dt,K,n){"use strict";n.d(K,{O:function(){return P}});var P=[{value:"default",display:"Relevance",displayedColumns:"default",direction:"asc"},{value:"^root_dmeReactions",display:"Dme Reactions, Ascending",displayedColumns:"dmeReactions",direction:"asc"},{value:"$root_dmeReactions",display:"Dme Reactions, Descending",displayedColumns:"dmeReactions",direction:"desc"},{value:"^root_ptTermMeddra",display:"PT Term Meddra, Ascending",displayedColumns:"ptTermMeddra",direction:"asc"},{value:"$root_ptTermMeddra",display:"PT Term Meddra, Descending",displayedColumns:"ptTermMeddra",direction:"desc"},{value:"^root_caseCount",display:"Case Count, Ascending",displayedColumns:"caseCount",direction:"asc"},{value:"$root_caseCount",display:"Case Count, Descending",displayedColumns:"caseCount",direction:"desc"},{value:"^root_dmeCount",display:"Dme Count, Ascending",displayedColumns:"dmeCount",direction:"asc"},{value:"$root_dmeCount",display:"Dme Count, Descending",displayedColumns:"dmeCount",direction:"desc"},{value:"$root_dmeCountPercent",display:"Dme Count Percent, Descending",displayedColumns:"dmeCountPercent",direction:"desc"},{value:"^root_dmeCountPercent",display:"Dme Count Percent, Ascending",displayedColumns:"dmeCountPercent",direction:"asc"},{value:"^root_weightedAvgPrr",display:"Weighted Avg Prr, Ascending",displayedColumns:"weightedAvgPrr",direction:"asc"},{value:"$root_weightedAvgPrr",display:"Weighted Avg Prr, Descending",displayedColumns:"weightedAvgPrr",direction:"desc"},{value:"^root_name",display:"Ingredient, Ascending",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_name",display:"Ingredient Name, Descending",displayedColumns:"ingredientName",direction:"desc"}]},98969:function(dt,K,n){"use strict";n.d(K,{g:function(){return P}});var P=[{value:"default",display:"Relevance",displayedColumns:"default",direction:"asc"},{value:"^root_ptTerm",display:"PT Term, Ascending",displayedColumns:"ptTerm",direction:"asc"},{value:"$root_ptTerm",display:"PT Term, Descending",displayedColumns:"ptTerm",direction:"desc"},{value:"^root_primSoc",display:"Prim SOC, Ascending",displayedColumns:"primSoc",direction:"asc"},{value:"$root_primSoc",display:"Prim SOC, Descending",displayedColumns:"primSoc",direction:"desc"},{value:"^root_caseCount",display:"Case Count, Ascending",displayedColumns:"caseCount",direction:"asc"},{value:"$root_caseCount",display:"Case Count, Descending",displayedColumns:"caseCount",direction:"desc"},{value:"^root_ptCount",display:"PT Count, Ascending",displayedColumns:"ptCount",direction:"asc"},{value:"$root_ptCount",display:"PT Count, Descending",displayedColumns:"ptCount",direction:"desc"},{value:"^root_prr",display:"PRR, Ascending",displayedColumns:"prr",direction:"asc"},{value:"$root_prr",display:"PRR, Descending",displayedColumns:"prr",direction:"desc"},{value:"^root_name",display:"Ingredient, Ascending",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_name",display:"Ingredient Name, Descending",displayedColumns:"ingredientName",direction:"desc"}]},43461:function(dt,K,n){"use strict";n.d(K,{a:function(){return I}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(50635),s=n(69264),h=n(53141),f=n(52489),T=n(76442),B=n(28784),I=function(){var v=function(j){(0,e.Z)(J,j);var Q=(0,p.Z)(J);function J(Z,A){var N;return(0,P.Z)(this,J),(N=Q.call(this,A)).http=Z,N.configService=A,N.totalRecords=0,N.apiBaseUrlWithEntityPtContext=N.configService.configData.apiBaseUrl+"api/v1/adverseeventpt/",N.apiBaseUrlWithEntityDmeContext=N.configService.configData.apiBaseUrl+"api/v1/adverseeventdme/",N.apiBaseUrlWithEntityCvmContext=N.configService.configData.apiBaseUrl+"api/v1/adverseeventcvm/",N}return(0,t.Z)(J,[{key:"getAdverseEventPt",value:function(A){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,E=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,k=arguments.length>3?arguments[3]:void 0,q=arguments.length>4?arguments[4]:void 0,ie=new f.nq;ie=(ie=ie.append("skip",N.toString())).append("top",E.toString()),null!==k&&""!==k&&(ie=ie.append("q",k)),ie=ie.appendFacetParams(q),null!=A&&""!==A&&(ie=ie.append("order",A));var H=this.apiBaseUrlWithEntityPtContext+"search",V={params:ie};return this.http.get(H,V)}},{key:"getAdverseEventDme",value:function(A){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,E=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,k=arguments.length>3?arguments[3]:void 0,q=arguments.length>4?arguments[4]:void 0,ie=new f.nq;ie=(ie=ie.append("skip",N.toString())).append("top",E.toString()),null!==k&&""!==k&&(ie=ie.append("q",k)),ie=ie.appendFacetParams(q),null!=A&&""!==A&&(ie=ie.append("order",A));var H=this.apiBaseUrlWithEntityDmeContext+"search",V={params:ie};return this.http.get(H,V)}},{key:"getAdverseEventCvm",value:function(A){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,E=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,k=arguments.length>3?arguments[3]:void 0,q=arguments.length>4?arguments[4]:void 0,ie=new f.nq;ie=(ie=ie.append("skip",N.toString())).append("top",E.toString()),null!==k&&""!==k&&(ie=ie.append("q",k)),ie=ie.appendFacetParams(q),null!=A&&""!==A&&(ie=ie.append("order",A));var H=this.apiBaseUrlWithEntityCvmContext+"search",V={params:ie};return this.http.get(H,V)}},{key:"getAdverseEventPtFacets",value:function(A,N,E){var k;return k=N?"".concat(this.configService.configData.apiBaseUrl,"api/v1/adverseeventpt/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventpt.models.AdverseEventPt&skip=0&fdim=200&sideway=true&field=").concat(A.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(N):null!=E?E:A._self,this.http.get(k)}},{key:"getAdverseEventDmeFacets",value:function(A,N,E){var k;return k=N?"".concat(this.configService.configData.apiBaseUrl,"api/v1/adverseeventdme/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventdme.models.AdverseEventDme&skip=0&fdim=200&sideway=true&field=").concat(A.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(N):null!=E?E:A._self,this.http.get(k)}},{key:"getAdverseEventCvmFacets",value:function(A,N,E){var k;return k=N?"".concat(this.configService.configData.apiBaseUrl,"api/v1/adverseeventcvm/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventcvm.models.AdverseEventCvm&skip=0&fdim=200&sideway=true&field=").concat(A.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(N):null!=E?E:A._self,this.http.get(k)}},{key:"exportBrowseApplicationsUrl",value:function(){var E=arguments.length>2?arguments[2]:void 0,k=arguments.length>3?arguments[3]:void 0,q=new f.nq;q=q.append("page","1"),null!==E&&""!==E&&(q=q.append("q",E)),q=q.appendFacetParams(k);var ce=this.baseUrl+"exportApplications?"+q;return ce}},{key:"getAdverseEventSearchSuggestions",value:function(A,N){return N&&"adverseEventPtSearch"===N?this.http.get(this.apiBaseUrlWithEntityPtContext+"suggest?q="+A):N&&"adverseEventDmeSearch"===N?this.http.get(this.apiBaseUrlWithEntityDmeContext+"suggest?q="+A):N&&"adverseEventCvmSearch"===N?this.http.get(this.apiBaseUrlWithEntityCvmContext+"suggest?q="+A):null}},{key:"getSubstanceAdverseEventPt",value:function(A,N,E,k,q){var ce=this;return this.http.get(this.baseUrl+"adverseEventPtListByBdnum?bdnum="+A+"&page="+(N+1)+"&pageSize="+E+"&orderBy="+k+"&ascDescDir="+q).pipe((0,d.U)(function(H){return ce.totalRecords=H.totalRecords,H.data}))}},{key:"getSubstanceAdverseEventPtAdv",value:function(A,N,E,k,q){var ce=this;return this.http.get(this.baseUrl+"advSearchResult?searchCategory=adversept&searchBy=bdnum&matchType=IN&q="+A+"&disp=d&dispFrom=detail&start=0&length="+E+"&order[0][column]="+k+"&order[0][dir]="+q).pipe((0,d.U)(function(r){return ce.totalRecords=r.recordsTotal,r.data}))}},{key:"getSubstanceAdverseEventDme",value:function(A,N,E){var k=this;return this.http.get(this.baseUrl+"adverseEventDmeListByBdnum?bdnum="+A+"&page="+(N+1)+"&pageSize="+E).pipe((0,d.U)(function(ce){return k.totalRecords=ce.totalRecords,ce.data}))}},{key:"getSubstanceAdverseEventCvm",value:function(A,N,E){var k=this;return this.http.get(this.baseUrl+"adverseEventCvmListByBdnum?bdnum="+A+"&page="+(N+1)+"&pageSize="+E).pipe((0,d.U)(function(ce){return k.totalRecords=ce.totalRecords,ce.data}))}},{key:"getFaersDashboardRecordByName",value:function(A){return this.http.get(this.apiBaseUrlWithEntityPtContext+"faersdashboard/"+A).pipe((0,d.U)(function(E){return E}))}},{key:"getApiExportUrlPt",value:function(A,N){return this.apiBaseUrlWithEntityPtContext+"export/"+A+"/"+N}},{key:"getApiExportUrlDme",value:function(A,N){return this.apiBaseUrlWithEntityDmeContext+"export/"+A+"/"+N}},{key:"getApiExportUrlCvm",value:function(A,N){return this.apiBaseUrlWithEntityCvmContext+"export/"+A+"/"+N}},{key:"getAdverseEventPtListExportUrl",value:function(A){return this.baseUrl+"adverseEventPtListExport?bdnum="+A}},{key:"getAdverseEventDmeListExportUrl",value:function(A){return this.baseUrl+"adverseEventDmeListExport?bdnum="+A}},{key:"getAdverseEventCvmListExportUrl",value:function(A){return this.baseUrl+"adverseEventCvmListExport?bdnum="+A}}]),J}(s.q);return v.\u0275fac=function(Q){return new(Q||v)(T.LFG(B.eN),T.LFG(h.E))},v.\u0275prov=T.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}()},63322:function(dt,K,n){"use strict";n.d(K,{I:function(){return Q}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(28784),s=n(83336),h=n(32673),f=n(50635),T=n(69264),B=n(53141),I=n(52149),v=n(52489),j=n(76442),Q=function(){var J=function(Z){(0,e.Z)(N,Z);var A=(0,p.Z)(N);function N(E,k,q){var ce;return(0,P.Z)(this,N),(ce=A.call(this,k)).http=E,ce.configService=k,ce.utilsService=q,ce._bypassUpdateCheck=!1,ce.totalRecords=0,ce.apiBaseUrlWithApplicationEntityUrl=ce.configService.configData.apiBaseUrl+"api/v1/applications/",ce.apiBaseUrlWithApplicationAllEntityUrl=ce.configService.configData.apiBaseUrl+"api/v1/applicationsall/",ce.apiBaseUrlWithApplicationDarrtsEntityUrl=ce.configService.configData.apiBaseUrl+"api/v1/applicationsdarrts/",ce.APPALL_SEARCH_SUBSTANCE_KEY="root_applicationProductList_applicationIngredientList_substanceKey:",ce}return(0,t.Z)(N,[{key:"getApplications",value:function(k){var q=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,ce=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,ie=arguments.length>3?arguments[3]:void 0,H=arguments.length>4?arguments[4]:void 0,V=new v.nq;V=(V=V.append("skip",q.toString())).append("top",ce.toString()),null!==ie&&""!==ie&&(V=V.append("q",ie)),V=V.appendFacetParams(H),null!=k&&""!==k&&(V=V.append("order",k));var ue=this.apiBaseUrlWithApplicationEntityUrl+"search",R={params:V};return this.http.get(ue,R)}},{key:"getApplicationFacets",value:function(k,q,ce){var ie;return ie=q?"".concat(this.configService.configData.apiBaseUrl,"api/v1/applications/search/@facets?wait=false&kind=gov.hhs.gsrs.application.application.models.Application&skip=0&fdim=200&sideway=true&field=").concat(k.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(q):null!=ce?ce:k._self,this.http.get(ie)}},{key:"filterFacets",value:function(k,q){var ce=this.apiBaseUrlWithApplicationEntityUrl+"search/@facets?wait=false&kind=gov.hhs.gsrs.application.application.models.Application&skip=0&fdim=200&sideway=true&field=".concat(q,"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(k);return this.http.get(ce)}},{key:"retrieveFacetValues",value:function(k){return this.http.get(k._self)}},{key:"retrieveNextFacetValues",value:function(k){var q=this,ce=k._self;return k.$next?this.http.get(k.$next):this.http.get(ce).pipe((0,h.w)(function(ie){return ie?q.http.get(ie.nextPageUri):"nada"}))}},{key:"getApiExportUrl",value:function(k,q){return this.apiBaseUrlWithApplicationEntityUrl+"export/"+k+"/"+q}},{key:"getApplicationSearchSuggestions",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"suggest?q="+k)}},{key:"getApplicationAll",value:function(k){var q=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,ce=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,ie=arguments.length>3?arguments[3]:void 0,H=arguments.length>4?arguments[4]:void 0,V=new v.nq;V=(V=V.append("skip",q.toString())).append("top",ce.toString()),null!==ie&&""!==ie&&(V=V.append("q",ie)),V=V.appendFacetParams(H),null!=k&&""!==k&&(V=V.append("order",k));var ue=this.apiBaseUrlWithApplicationAllEntityUrl+"search",R={params:V};return this.http.get(ue,R)}},{key:"exportBrowseApplicationsUrl",value:function(){var ce=arguments.length>2?arguments[2]:void 0,ie=arguments.length>3?arguments[3]:void 0,H=new v.nq;H=H.append("page","1"),null!==ce&&""!==ce&&(H=H.append("q",ce)),H=H.appendFacetParams(ie);var V=this.baseUrl+"exportApplications?"+H;return V}},{key:"getAppAllApiExportUrl",value:function(k,q){return this.apiBaseUrlWithApplicationAllEntityUrl+"export/"+k+"/"+q}},{key:"getApplicationCenterList",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationAllEntityUrl+"distcenter/"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getApplicationBySubstanceKeyCenter",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"search?q=root_applicationProductList_applicationIngredientList_substanceKey:"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getSubstanceApplications",value:function(k,q,ce,ie,H){var V=this;return this.http.get(this.baseUrl+"applicationListByBdnum?bdnum="+k+"¢er="+q+"&fromTable="+ce+"&page="+(ie+1)+"&pageSize="+H).pipe((0,f.U)(function(r){return V.totalRecords=r.totalRecords,r.data}))}},{key:"searchApplicationBySubstanceKey",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"search?q="+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getApplicationById",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getApplicationHistory",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"applicationhistory/"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getProductTechnicalEffect",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"prodtechnicaleffect/"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getProductEffected",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"prodeffected/"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getClinicalTrialApplication",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"appclinicaltrial/"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getApplicationDarrtsDetails",value:function(k,q){return this.http.get(this.apiBaseUrlWithApplicationDarrtsEntityUrl+(k+q)).pipe((0,f.U)(function(H){return H}))}},{key:"getSubstanceParentConcept",value:function(k){return this.http.get(this.apiBaseUrlWithApplicationDarrtsEntityUrl+"substanceparentconcept/"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getApplicationCenterByBdnum",value:function(k){return this.http.get(this.baseUrl+"getApplicationCenterByBdnum2?bdnum="+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getSubstanceRelationship",value:function(k){return this.http.get(this.baseUrl+"getRelationshipBySubstanceId?substanceId="+k).pipe((0,f.U)(function(ce){return ce.data}))}},{key:"isApplicationUpdated",get:function(){var k=JSON.stringify(this.application);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.applicationStateHash!==this.utilsService.hashCode(k)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"loadApplication",value:function(k){null!=k?(this.application=k,this.application.applicationIndicationList.length<1&&this.application.applicationIndicationList.unshift({})):this.application={applicationIndicationList:[{}],applicationProductList:[{applicationProductNameList:[{}],applicationIngredientList:[{}]}]}}},{key:"saveApplication",value:function(){var k=this.apiBaseUrlWithApplicationEntityUrl,ce={params:new d.LE,type:"JSON",headers:{"Content-type":"application/json"}};return null!=this.application&&this.application.id?this.http.put(k,this.application,ce):this.http.post(k,this.application,ce)}},{key:"validateApplication",value:function(){var k=this;return new s.y(function(q){k.validateApp().subscribe(function(ce){q.next(ce),q.complete()},function(ce){q.error(),q.complete()})})}},{key:"validateApp",value:function(){return this.http.post(this.apiBaseUrlWithApplicationEntityUrl+"@validate",this.application)}},{key:"deleteApplication",value:function(){var k=this.apiBaseUrlWithApplicationEntityUrl+this.application.id;return new d.LE,this.http.delete(k,{})}},{key:"addNewIndication",value:function(){this.application.applicationIndicationList.unshift({})}},{key:"deleteIndication",value:function(k){this.application.applicationIndicationList.splice(k,1)}},{key:"addNewProduct",value:function(){this.application.applicationProductList.unshift({applicationProductNameList:[{}],applicationIngredientList:[{}]})}},{key:"addNewProductName",value:function(k){this.application.applicationProductList[k].applicationProductNameList.unshift({})}},{key:"deleteProduct",value:function(k){this.application.applicationProductList.splice(k,1)}},{key:"deleteProductName",value:function(k,q){this.application.applicationProductList[k].applicationProductNameList.splice(q,1)}},{key:"copyProduct",value:function(k){var q=JSON.parse(JSON.stringify(k));q.reviewedBy=null,q.reviewDate=null,this.application.applicationProductList.unshift(q)}},{key:"reviewProduct",value:function(k){}},{key:"addNewIngredient",value:function(k){this.application.applicationProductList[k].applicationIngredientList.unshift({})}},{key:"deleteIngredient",value:function(k,q){this.application.applicationProductList[k].applicationIngredientList.splice(q,1)}},{key:"copyIngredient",value:function(k,q){var ce=JSON.parse(JSON.stringify(k));ce.reviewedBy=null,ce.reviewDate=null,this.application.applicationProductList[q].applicationIngredientList.unshift(ce)}},{key:"reviewIngredient",value:function(k,q){}},{key:"getJson",value:function(){return this.application}},{key:"getUpdateApplicationUrl",value:function(){return this.baseUrl+"updateApplication?applicationId="}},{key:"getApplicationListExportUrl",value:function(k){return this.baseUrl+"applicationListExport?bdnum="+k}}]),N}(T.q);return J.\u0275fac=function(A){return new(A||J)(j.LFG(d.eN),j.LFG(B.E),j.LFG(I.F))},J.\u0275prov=j.Yz7({token:J,factory:J.\u0275fac,providedIn:"root"}),J}()},69638:function(dt,K,n){"use strict";n.d(K,{m:function(){return j}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(28784),s=n(83336),h=n(53141),f=n(69264),T=n(50635),B=n(32673),I=n(52489),v=n(76442),j=function(){var Q=function(J){(0,e.Z)(A,J);var Z=(0,p.Z)(A);function A(N,E){var k;return(0,P.Z)(this,A),(k=Z.call(this,E)).http=N,k.configService=E,k.totalRecords=0,k}return(0,t.Z)(A,[{key:"getClinicalTrials",value:function(){var E=this,k=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new s.y(function(q){E.searchClinicalTrials(k.searchTerm,k.pageSize,k.facets,k.order,k.skip,k.type).subscribe(function(ce){q.next(ce)},function(ce){q.error(ce)},function(){q.complete()})})}},{key:"searchClinicalTrials",value:function(E){var k=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,q=arguments.length>2?arguments[2]:void 0,ce=arguments.length>3?arguments[3]:void 0,ie=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,H=arguments.length>5?arguments[5]:void 0,V=new I.nq,ue=this.apiBaseUrl;ue+="clinicaltrialsus/search",E||(E=""),null!==E&&""!==E&&(V=V.append("q",null!==H&&""!==H?"trialNumber"===H?'root_trialNumber:"^'+E+'$"':"substanceKey"===H?'root_clinicalTrialUSDrug_substanceKey:"^'+E+'$"':"title"===H?'root_title:"'+E+'"':E:E)),V=(V=V.appendFacetParams(q)).appendDictionary({top:k&&k.toString(),skip:ie&&ie.toString()}),null!==ce&&""!==ce&&(V=V.append("order",ce));var R={params:V=V.append("fdim","10")};return this.http.get(ue,R)}},{key:"deleteClinicalTrial",value:function(E){var k="".concat(this.apiBaseUrl,"clinicaltrialsus/").concat(E),q=new d.LE;return this.http.delete(k,{params:q})}},{key:"getClinicalTrial",value:function(E){var k=this.apiBaseUrl+"clinicaltrialsus/".concat(E),q=new d.LE;return this.http.get(k,{params:q})}},{key:"getSubstanceDetailsFromName",value:function(E){var k=this.apiBaseUrl+'substances/search?q=root_names_name:"%5E'+encodeURIComponent(E)+'$"&fdim=1';return new d.LE,this.http.get(k)}},{key:"getSubstanceDetailsFromSubstanceKey",value:function(E){var k=this.apiBaseUrl+"substances("+encodeURIComponent(E)+")",q=new d.LE;return q=q.append("view","full"),this.http.get(k,{params:q})}},{key:"addClinicalTrial",value:function(E){var k=this.apiBaseUrl+"clinicaltrialsus",q=new d.LE;return this.http.post(k,E,{params:q,type:"JSON",headers:{"Content-type":"application/json"}})}},{key:"updateClinicalTrial",value:function(E){var k=this.apiBaseUrl+"clinicaltrialsus",q=new d.LE;return this.http.put(k,E,{params:q,headers:{"Content-type":"application/json"}})}},{key:"getSubstanceClinicalTrialsEurope",value:function(E,k,q){var ce=this;return this.http.get(this.baseUrl+'api/v1/clinicaltrialseurope/search?q=root_clinicalTrialEuropeProductList_clinicalTrialEuropeDrugList_substanceKey:"^'+E+'$"&top='+q+"&skip="+k*q).pipe((0,T.U)(function(V){return ce.totalRecords=V.total,console.log(JSON.stringify(V)),V}))}},{key:"getClinicalTrialDetails",value:function(E,k){var q=this.apiBaseUrl+"clinicaltrialsus/".concat(E);return this.http.get(q).pipe((0,T.U)(function(ce){return ce}))}},{key:"getClinicalTrialsFacets",value:function(E,k,q){var ce;return ce=k?"".concat(this.configService.configData.apiBaseUrl,"api/v1/clinicaltrialsus/search/@facets?wait=false&kind=ix.ct.models.ClinicalTrial&skip=0&fdim=200&sideway=true&field=").concat(E.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(k):null!=q?q:E._self,this.http.get(ce)}},{key:"filterFacets",value:function(E,k){var q="".concat(this.configService.configData.apiBaseUrl,"api/v1/clinicaltrialsus/search/@facets?wait=false&kind=ix.ct.models.ClinicalTrial&skip=0&fdim=200&sideway=true&field=").concat(k,"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(E);return this.http.get(q)}},{key:"retrieveFacetValues",value:function(E){return this.http.get(E._self)}},{key:"retrieveNextFacetValues",value:function(E){var k=this,q=E._self;return E.$next?this.http.get(E.$next):this.http.get(q).pipe((0,B.w)(function(ce){return ce?k.http.get(ce.nextPageUri):"nada"}))}},{key:"getApiExportUrl",value:function(E,k){return this.apiBaseUrl+"clinicaltrialsus/"+"export/".concat(E,"/").concat(k)}},{key:"getApiEuropeExportUrl",value:function(E,k){return this.apiBaseUrl+"clinicaltrialseurope/"+"export/".concat(E,"/").concat(k)}},{key:"getClinicalTrialListExportUrl",value:function(E){return this.baseUrl+"clinicalTrialListExport?bdnum="+E}},{key:"getClinicalTrialEuropeListExportUrl",value:function(E){return this.baseUrl+"clinicalTrialEuropeListExport?bdnum="+E}},{key:"getUpdateApplicationUrl",value:function(){return this.baseUrl+"updateApplication?applicationId="}}]),A}(f.q);return Q.\u0275fac=function(Z){return new(Z||Q)(v.LFG(d.eN),v.LFG(h.E))},Q.\u0275prov=v.Yz7({token:Q,factory:Q.\u0275fac}),Q}()},26477:function(dt,K,n){"use strict";n.d(K,{$:function(){return I}});var P=n(78069),t=n(48047),e=n(95758),p=n(76442),d=n(50318),s=n(98002),h=n(36362),f=n(87317);function T(v,j){1&v&&(p.TgZ(0,"div"),p.TgZ(1,"button",4),p._uU(2,"Home"),p.qZA(),p.qZA())}function B(v,j){1&v&&(p.TgZ(0,"button",4),p._uU(1,"No"),p.qZA(),p.TgZ(2,"button",5),p._uU(3,"Yes"),p.qZA()),2&v&&(p.xp6(2),p.Q6J("mat-dialog-close",!0))}var I=function(){var v=function(){function j(Q,J,Z,A){(0,P.Z)(this,j),this.sanitizer=Q,this.data=J,this.activatedRoute=Z,this.router=A}return(0,t.Z)(j,[{key:"ngOnInit",value:function(){}}]),j}();return v.\u0275fac=function(Q){return new(Q||v)(p.Y36(d.H7),p.Y36(e.WI),p.Y36(s.gz),p.Y36(s.F0))},v.\u0275cmp=p.Xpm({type:v,selectors:[["app-confirm-dialog"]],decls:6,vars:3,consts:[["mat-dialog-content",""],["mat-dialog-actions",""],[4,"ngIf","ngIfElse"],["noType",""],["mat-button","","mat-dialog-close",""],["mat-button","","cdkFocusInitial","",3,"mat-dialog-close"]],template:function(Q,J){if(1&Q&&(p.TgZ(0,"div",0),p._uU(1),p.qZA(),p.TgZ(2,"div",1),p.YNc(3,T,3,0,"div",2),p.YNc(4,B,4,1,"ng-template",null,3,p.W1O),p.qZA()),2&Q){var Z=p.MAs(5);p.xp6(1),p.hij(" ",J.data.message,"\n"),p.xp6(2),p.Q6J("ngIf",null!==J.data.type&&"home"===J.data.type)("ngIfElse",Z)}},directives:[e.xY,e.H8,h.O5,f.lW,e.ZT],styles:[".raw[_ngcontent-%COMP%]{width:100%;min-height:200px}.formatted[_ngcontent-%COMP%]{width:100%}.raw-text[_ngcontent-%COMP%]{min-height:400px}.actions[_ngcontent-%COMP%]{padding-bottom:10px}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}"]}),v}()},76078:function(dt,K,n){"use strict";n.d(K,{y:function(){return cv}});var P=n(78069),t=n(48047),e=n(76442),p=n(36362),d=n(98002),s=n(11961),h=n(16531),f=n(40089),T=n(87317),B=n(12379),I=n(65590),v=n(97217),j=n(74742),Q=n(70178),J=n(61534),Z=n(75143),A=n(48968),N=n(92507),E=n(63322),k=function(D){return["/substances",D]};function q(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"div",7),e.TgZ(2,"div"),e.TgZ(3,"a",8),e._UZ(4,"div",9),e.qZA(),e.qZA(),e.TgZ(5,"div"),e._UZ(6,"mat-icon",10),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("routerLink",e.VKq(2,k,l.substanceId)),e.xp6(1),e.s9C("innerHTML",l.searchCount.appCountConcat,e.oJD)}}function ce(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(3);e.hij(" ",l.searchCount.appCountConcat," ")}}function ie(m,D){if(1&m&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Application Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,q,7,4,"span",5),e.YNc(5,ce,1,1,"ng-template",null,6,e.W1O),e.qZA(),e.qZA()),2&m){var l=e.MAs(6),a=e.oxw(2);e.xp6(4),e.Q6J("ngIf","0"!=a.searchCount.appCountConcat)("ngIfElse",l)}}function H(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"div",7),e.TgZ(2,"div"),e.TgZ(3,"a",12),e._UZ(4,"div",9),e.qZA(),e.qZA(),e.TgZ(5,"div"),e._UZ(6,"mat-icon",13),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("routerLink",e.VKq(2,k,l.substanceId)),e.xp6(1),e.s9C("innerHTML",l.searchCount.prodCountConcat,e.oJD)}}function V(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(3);e.hij(" ",l.searchCount.prodCountConcat," ")}}function ue(m,D){if(1&m&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Product Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,H,7,4,"span",5),e.YNc(5,V,1,1,"ng-template",null,11,e.W1O),e.qZA(),e.qZA()),2&m){var l=e.MAs(6),a=e.oxw(2);e.xp6(4),e.Q6J("ngIf","0"!=a.searchCount.prodCountConcat)("ngIfElse",l)}}function R(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",15),e.TgZ(2,"span"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"mat-icon",13),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Q6J("routerLink",e.VKq(2,k,l.substanceId)),e.xp6(2),e.Oqu(l.searchCount.clinicalCount)}}function r(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(3);e.hij(" ",l.searchCount.clinicalCount," ")}}function z(m,D){if(1&m&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Clinical Trial Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,R,5,4,"span",5),e.YNc(5,r,1,1,"ng-template",null,14,e.W1O),e.qZA(),e.qZA()),2&m){var l=e.MAs(6),a=e.oxw(2);e.xp6(4),e.Q6J("ngIf",a.searchCount.clinicalCount>0)("ngIfElse",l)}}function Y(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",17),e.TgZ(2,"span"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"mat-icon",13),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Q6J("routerLink",e.VKq(2,k,l.substanceId)),e.xp6(2),e.Oqu(l.searchCount.adverseEventCount)}}function se(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(3);e.hij(" ",l.searchCount.adverseEventCount," ")}}function X(m,D){if(1&m&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Adverse Event Case Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,Y,5,4,"span",5),e.YNc(5,se,1,1,"ng-template",null,16,e.W1O),e.qZA(),e.qZA()),2&m){var l=e.MAs(6),a=e.oxw(2);e.xp6(4),e.Q6J("ngIf",a.searchCount.adverseEventCount>0)("ngIfElse",l)}}function ne(m,D){if(1&m&&(e.TgZ(0,"div",2),e.YNc(1,ie,7,2,"div",3),e.YNc(2,ue,7,2,"div",3),e.YNc(3,z,7,2,"div",3),e.YNc(4,X,7,2,"div",3),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.applications),e.xp6(1),e.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.products),e.xp6(1),e.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.clinicaltrials),e.xp6(1),e.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.adverseevents)}}function ve(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",7),e.TgZ(1,"div"),e._UZ(2,"br"),e.TgZ(3,"button",18),e.NdJ("click",function(){e.CHM(l);var O=e.oxw();return O.launchApplicationMatchingList(O.substanceId)}),e._uU(4," Matching Application Names\xa0 "),e.qZA(),e.qZA(),e._UZ(5,"br"),e.qZA()}if(2&m){var a=e.oxw();e.xp6(3),e.s9C("matBadge",a.appMatchListCount)}}var Re=function(){var m=function(){function D(l,a,x,O,W){(0,P.Z)(this,D),this.applicationService=l,this.generalService=a,this.activatedRoute=x,this.router=O,this.configService=W,this.appMatchListCount=0,this.fullFacetField="",this.total=0,this.pageSize=0,this.isShowMatchList="false",this.displayMatchApplicationConfig=!1,this.appCountConcat="0"}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.substanceId=this.substance.uuid,this.loadedComponents=this.configService.configData&&this.configService.configData.loadedComponents||null,this.loadedComponents&&this.loadedComponents.applications&&(this.getSearchCount(),this.getAppIngredMatchListCount())}},{key:"getSubstanceKey",value:function(){var a=this;this.substance&&this.substance.codes.length>0&&this.substance.codes.forEach(function(x){x.codeSystem&&"BDNUM"===x.codeSystem&&x.type&&"PRIMARY"===x.type&&(a.substanceKey=x.code)})}},{key:"getSearchCount",value:function(){var a=this;this.generalService.getSearchCount(this.substance.uuid).subscribe(function(x){x&&(a.searchCount=x)})}},{key:"getAppIngredMatchListCount",value:function(){this.isShowMatchList=sessionStorage.getItem("matchAppCheckBoxValueSess"),null!==this.isShowMatchList&&"true"===this.isShowMatchList&&this.getSubstanceNames(this.substance.uuid)}},{key:"getSubstanceNames",value:function(a){var x=this;a&&this.generalService.getSubstanceNamesBySubstanceUuid(a).subscribe(function(O){x.substanceNames=O,x.substanceNames.forEach(function(W,Le){W&&W.name&&(Le>0&&(x.fullFacetField=x.fullFacetField+" OR "),x.fullFacetField=x.fullFacetField+'root_applicationProductList_applicationProductNameList_productName:"'+W.name+'"')}),x.getApplicationIngredientMatchList()})}},{key:"getApplicationIngredientMatchList",value:function(){var a=this;this.applicationService.getApplications(null,0,200,this.fullFacetField,{"Has Ingredients":{params:{"Has No Ingredient":!0},isAllMatch:!1}}).subscribe(function(W){a.appMatchListCount=W.count})}},{key:"getApplicationBySubstanceKeyCenter",value:function(){var a=this;this.pageSize=5e3,this.privateSearch=this.applicationService.APPALL_SEARCH_SUBSTANCE_KEY+this.substanceKey;var O=this.applicationService.getApplicationAll("default",5e3,this.pageSize,this.privateSearch,this.privateFacetParams).subscribe(function(W){a.appCountConcat=W.total.toString()},function(W){console.log("error")},function(){O.unsubscribe()})}},{key:"launchApplicationMatchingList",value:function(a){this.router.navigate(["/sub-app-match-list",a])}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(E.I),e.Y36(A.m),e.Y36(d.gz),e.Y36(d.F0),e.Y36(N.E))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-substance-counts"]],decls:2,vars:2,consts:[["class","counts-container",4,"ngIf"],["class","divflex",4,"ngIf"],[1,"counts-container"],["class","counts-column",4,"ngIf"],[1,"counts-column"],[4,"ngIf","ngIfElse"],["noRecordApp",""],[1,"divflex"],["target","_blank","title","View Application Records (opens in new window)",3,"routerLink"],[3,"innerHTML"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon","margintopneg10"],["noRecordProd",""],["target","_blank","title","View Product Records (opens in new window)",3,"routerLink"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],["noRecordClinical",""],["target","_blank","title","View Clinical Trial Records (opens in new window)",3,"routerLink"],["noRecordAdverse",""],["target","_blank","title","View Adverse Event Records (opens in new window)",3,"routerLink"],["matBadgeColor","accent",1,"button-style",3,"matBadge","click"]],template:function(l,a){1&l&&(e.YNc(0,ne,5,4,"div",0),e.YNc(1,ve,6,1,"div",1)),2&l&&(e.Q6J("ngIf",a.searchCount&&a.loadedComponents),e.xp6(1),e.Q6J("ngIf","true"===a.isShowMatchList&&a.appMatchListCount>0&&a.loadedComponents&&a.loadedComponents.applications))},directives:[p.O5,d.yS,I.Hw,f.gM,Q.k],styles:[".counts-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;margin-top:15px;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%}.counts-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:5px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.floatleft[_ngcontent-%COMP%]{float:left}.margintopneg10[_ngcontent-%COMP%]{margin-top:-10px}.padtop10[_ngcontent-%COMP%]{padding-top:10p}.colorred[_ngcontent-%COMP%]{color:red}.button-style[_ngcontent-%COMP%]{background-color:#1654dac0;color:#fff;text-decoration:none;vertical-align:middle;font-weight:600;text-align:center;line-height:25px}"]}),m}(),Ie=n(88951),Ee=n(59295),ge=n(12570),_t=n(35096),wt=n(83448),qt=n(95758);function Lt(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-checkbox",6),e.NdJ("change",function(O){return e.CHM(l),e.oxw(3).setDisplayAppToMatchSession(O.checked)}),e.TgZ(2,"span",7),e.TgZ(3,"b"),e._uU(4,"Display Match Application Names"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(3);e.xp6(1),e.Q6J("checked",a.displayMatchAppCheckBoxValue)}}function Rt(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Lt,5,1,"div",2),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!0===l.displayMatchApplicationConfig)}}function it(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"button",9),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).export("app")}),e._UZ(2,"mat-icon",10),e._uU(3," Applications "),e.qZA(),e.qZA()}}function Qe(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"button",11),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).export("prod")}),e._UZ(2,"mat-icon",10),e._uU(3," Products "),e.qZA(),e.qZA()}}function ot(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",12),e.TgZ(1,"button",13),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).export("clinicaltrialsus")}),e._UZ(2,"mat-icon",10),e._uU(3," Clinical Trials US "),e.qZA(),e.qZA()}}function tt(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",12),e.TgZ(1,"button",14),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).export("clinicaltrialseurope")}),e._UZ(2,"mat-icon",10),e._uU(3," Clinical Trials EU "),e.qZA(),e.qZA()}}function xe(m,D){1&m&&(e.TgZ(0,"div",15),e.TgZ(1,"mat-icon",16),e._uU(2,"help "),e.qZA(),e.qZA())}function $e(m,D){if(1&m&&(e.TgZ(0,"div",1),e.YNc(1,Rt,2,1,"div",2),e.YNc(2,it,4,0,"div",3),e.YNc(3,Qe,4,0,"div",3),e.YNc(4,ot,4,0,"div",4),e.YNc(5,tt,4,0,"div",4),e.YNc(6,xe,3,0,"div",5),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.isAdmin&&l.loadedComponents&&l.loadedComponents.applications),e.xp6(1),e.Q6J("ngIf",l.isAdmin&&l.loadedComponents&&l.loadedComponents.applications&&l.additionalExportOptions.indexOf("appxlsx")>-1),e.xp6(1),e.Q6J("ngIf",l.isAdmin&&l.loadedComponents&&l.loadedComponents.products&&l.additionalExportOptions.indexOf("prodxlsx")>-1),e.xp6(1),e.Q6J("ngIf",l.isAdmin&&l.loadedComponents&&l.loadedComponents.clinicaltrials&&l.additionalExportOptions.indexOf("ctusxlsx")>-1),e.xp6(1),e.Q6J("ngIf",l.isAdmin&&l.loadedComponents&&l.loadedComponents.clinicaltrials&&l.additionalExportOptions.indexOf("cteuxlsx")>-1),e.xp6(1),e.Q6J("ngIf",l.isAdmin&&l.hasAdditionalDownloads&&(l.loadedComponents.applications||l.loadedComponents.products))}}var ct=[{componentId:"fda-substance-product",path:"fda-substance-product",loadChildren:function(){return n.e(4371).then(n.bind(n,34371)).then(function(D){return D.SubstanceProductsModule})}}],Xe=[{component:function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht){(0,P.Z)(this,D),this.generalService=l,this.configService=a,this.authService=x,this.substanceService=O,this.router=W,this.activatedRoute=Le,this.loadingService=rt,this.dialog=Ht,this.subscriptions=[],this.isAdmin=!1,this.privateExport=!1,this.displayMatchApplicationConfig=!1,this.displayMatchAppCheckBoxValue=!1,this.etag="",this.paramUrl="",this.totalSubstance=0,this.hasAdditionalDownloads=!1,this.additionalExportOptions=[]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,Ee.q)(1)).subscribe(function(O){a.isAdmin=O,!0===a.isAdmin&&a.isDisplayAppToMatchConfig()}),this.loadedComponents=this.configService.configData&&this.configService.configData.loadedComponents||null;var x=this.substanceService.searchResults.subscribe(function(O){O&&(a.etag=O.etag,a.totalSubstance=O.total,a.getExportOptions())});this.subscriptions.push(x)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()})}},{key:"isDisplayAppToMatchConfig",value:function(){if(this.configService.configData&&null!==this.configService.configData.displayMatchApplication&&(this.displayMatchApplicationConfig=JSON.parse(this.configService.configData.displayMatchApplication),!0===this.displayMatchApplicationConfig)){var a=sessionStorage.getItem("matchAppCheckBoxValueSess");null===a?sessionStorage.setItem("matchAppCheckBoxValueSess","false"):this.displayMatchAppCheckBoxValue=JSON.parse(a)}}},{key:"setDisplayAppToMatchSession",value:function(a){sessionStorage.setItem("matchAppCheckBoxValueSess",a),this.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},this.router.onSameUrlNavigation="reload",this.router.navigate(["/browse-substance"])}},{key:"export",value:function(a){var x=this;if(this.etag){var O="xlsx",W=this.getApiExportUrl(this.etag,O,a);if(!0===this.isAdmin){var Le="";null!=a&&("app"===a?Le="browseSubstanceApplication":"prod"===a?Le="browseSubstanceProduct":"clinicaltrialsus"===a?Le="browseSubstanceClinicalTrial-US":"clinicaltrialseurope"===a&&(Le="browseSubstanceClinicalTrial-EU")),this.dialog.open(_t.L,{height:"215x",width:"550px",data:{extension:O,type:Le}}).afterClosed().subscribe(function(Ht){Ht&&""!==Ht&&(x.loadingService.setLoading(!0),x.authService.startUserDownload(W,x.privateExport,Ht+"."+O).subscribe(function(ei){x.loadingService.setLoading(!1),x.router.navigate(["/user-downloads/",ei.id])},function(ei){return x.loadingService.setLoading(!1)}))})}}}},{key:"getApiExportUrl",value:function(a,x,O){return this.generalService.getApiExportUrlBrowseSubstance(a,x,O)}},{key:"getExportOptions",value:function(){var a=this;this.substanceService.getExportOptions(this.etag).subscribe(function(x){a.exportOptions=x,a.exportOptions&&a.exportOptions.forEach(function(O){O.extension&&("appxlsx"===O.extension||"prodxlsx"===O.extension||"ctusxlsx"===O.extension||"cteuxlsx"===O.extension)&&(a.hasAdditionalDownloads=!0,a.additionalExportOptions.push(O.extension))})})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(A.m),e.Y36(N.E),e.Y36(Ie.e),e.Y36(ge.d),e.Y36(d.F0),e.Y36(d.gz),e.Y36(wt.b),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-show-application-toggle"]],decls:1,vars:1,consts:[["class","divflex",4,"ngIf"],[1,"divflex"],[4,"ngIf"],["class","padleft10px divheight",4,"ngIf"],["class","padleft10px",4,"ngIf"],["class","padleft10px padtop10px",4,"ngIf"],[3,"checked","change"],[1,"font14px"],[1,"padleft10px","divheight"],["matTooltip","Export All Applications for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["matTooltip","Export All Products for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],[1,"padleft10px"],["matTooltip","Export All Clinical Trials US for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["matTooltip","Export All Clinical Trials Europe for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],[1,"padleft10px","padtop10px"],["matTooltip","It may take some time to download. After the download process starts, you can move away\n from the download process page and continue with your work. Go to 'User Downloads' menu in Profile to get the downloaded file.",1,"colorgreen"]],template:function(l,a){1&l&&e.YNc(0,$e,7,6,"div",0),2&l&&e.Q6J("ngIf",a.loadedComponents)},directives:[p.O5,J.oG,T.lW,f.gM,I.Hw],styles:[".divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.divheight[_ngcontent-%COMP%]{height:50px}.colororange[_ngcontent-%COMP%]{color:orange}.font14px[_ngcontent-%COMP%]{font-size:14px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.export-button[_ngcontent-%COMP%]{border-radius:4px;margin-top:5px}.outer-div[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.font11px[_ngcontent-%COMP%]{font-size:11px}.padleft260px[_ngcontent-%COMP%]{padding-left:260px}.colorgray[_ngcontent-%COMP%]{color:gray}.colorgreen[_ngcontent-%COMP%]{color:green}#parent[_ngcontent-%COMP%] #popup[_ngcontent-%COMP%]{display:none}#parent[_ngcontent-%COMP%]:hover #popup[_ngcontent-%COMP%]{display:block}"]}),m}(),componentType:"browseHeader"}],Te=[{component:Re,componentType:"summary"}],vt=n(68756),qe=n(66088),je=n(90587),Nt=n(19946),Ft=n(7216),bt=n(43188),St=n(44770),Pt=n(43365),ut=n(81196),yt=n(64316),be=n(26439),we=n(91434),_e=n(61859),$=n(26131),Ae=n(82796),ft=n(31959),gt=n(43672),Bt=n(5818),_n=n(1130),wn=n(52489),Tn=n(88325),On=n(53141),Jn=n(24874),Un=n(93666),si=[{value:"default",display:"Relevance"},{value:"^root_appType",display:"Application Type, Ascending",displayedColumns:"appType",direction:"asc"},{value:"$root_appType",display:"Application Type, Descending",displayedColumns:"appType",direction:"desc"},{value:"^root_appNumber",display:"Application Number, Ascending",displayedColumns:"appNumber",direction:"asc"},{value:"$root_appNumber",display:"Application Number, Descending",displayedColumns:"appNumber",direction:"desc"},{value:"^root_center",display:"Center, A-Z",displayedColumns:"center",direction:"asc"},{value:"$root_center",display:"Center, Z-A",displayedColumns:"center",direction:"desc"},{value:"^root_provenace",display:"Provenance, A-Z",displayedColumns:"provenance",direction:"asc"},{value:"$root_provenance",display:"Provenance, Z-A",displayedColumns:"provenance",direction:"desc"},{value:"^root_status",display:"Status, A-Z",displayedColumns:"applicationStatus",direction:"asc"},{value:"$root_status",display:"Status, Z-A",displayedColumns:"applicationStatus",direction:"desc"},{value:"^root_sponsorName",display:"Sponsor Name, A-Z",displayedColumns:"sponsorName",direction:"asc"},{value:"$root_sponsorName",display:"Sponsor Name, Z-A",displayedColumns:"sponsorName",direction:"desc"},{value:"^root_applicationProductList_applicationProductNameList_productName",display:"Product Name, A-Z",displayedColumns:"productName",direction:"asc"},{value:"$root_applicationProductList_applicationProductNameList_productName",display:"Product Name, Z-A",displayedColumns:"productName",direction:"desc"},{value:"^root_Ingredient Name",display:"Ingredient Name, A-Z",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_Ingredient Name",display:"Ingredient Name, Z-A",displayedColumns:"ingredientName",direction:"desc"},{value:"^root_creationDate",display:"Oldest Creation"},{value:"$root_creationDate",display:"Newest Creation"},{value:"^root_lastModifiedDate",display:"Oldest Change"},{value:"$root_lastModifiedDate",display:"Newest Change"}],fi=n(52149),rn=n(69093),sn=n(50318),jt=n(76775),Ue=n(89068),et=n(71989),De=n(98977),Ze=n(32673),Je=n(18291);function Ve(m,D){if(1&m&&(e.TgZ(0,"mat-hint"),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Oqu(l.hintMessage)}}function pt(m,D){if(1&m&&(e.TgZ(0,"mat-error"),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Oqu(l.errorMessage)}}function kt(m,D){if(1&m&&(e.TgZ(0,"mat-option",13),e.TgZ(1,"div",14),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=e.oxw(2);e.Q6J("value",l.key),e.xp6(1),e.Q6J("innerHTML",a.highlight(l.key),e.oJD),e.xp6(1),e.Oqu(l.key)}}function en(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",10),e.TgZ(2,"span",11),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e.YNc(5,kt,3,3,"mat-option",12),e.qZA()),2&m){var l=D.$implicit,a=e.oxw();e.xp6(4),e.Oqu(l.display),e.xp6(1),e.Q6J("ngForOf",a.substanceSuggestionsGroup[l.value])}}var Zn=function(){var m=function(){function D(l,a,x,O,W){(0,P.Z)(this,D),this.applicationService=l,this.element=a,this.gaService=x,this.configService=O,this.cvService=W,this.searchControl=new je.NI,this.matOpen=!0,this.searchPerformed=new e.vpe,this.searchValueOut=new e.vpe,this.placeholder="Search",this.hintMessage="",this.privateErrorMessage="",this.opened=new e.vpe,this.closed=new e.vpe,this.CasDisplay="CAS"}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.searchControl.valueChanges.pipe((0,et.b)(500),(0,De.x)(),(0,Ze.w)(function(x){return a.query=x,a.searchValueOut.emit(a.query),a.gaService.sendEvent(a.eventCategory||"substanceTextSearch","search:enter-term",!a.configService.environment.isAnalyticsPrivate&&x||"search term"),a.applicationService.getApplicationSearchSuggestions(x.toUpperCase())})).subscribe(function(x){a.substanceSuggestionsGroup=x;var O=["root_applicationID","Application_Type","Product_Name","Sponsor_Name","Title","Ingredient_Name","Division_Class_Division","Indication"];a.suggestionsFields=Object.keys(a.substanceSuggestionsGroup).filter(function(W){return O.indexOf(W)>-1}),a.suggestionsFields.forEach(function(W,Le){a.suggestionsFields[Le]="root_applicationID"===W?{value:"root_applicationID",display:"Application Type Number"}:"Application_Type"===W?{value:"Application_Type",display:"Application Type"}:"Product_Name"===W?{value:"Product_Name",display:"Product Name"}:"Sponsor_Name"===W?{value:"Sponsor_Name",display:"Sponsor Name"}:"Ingredient_Name"===W?{value:"Ingredient_Name",display:"Ingredient Name"}:{value:W,display:W}}),null!=a.suggestionsFields&&a.suggestionsFields.length>0&&(a.matOpen=!0,a.opened.emit())},function(x){a.gaService.sendException("search suggestion error from API call"),console.log(x)})}},{key:"searchValue",set:function(a){this.searchControl.setValue(a)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(a){this.searchControl.markAsTouched(),this.searchControl.setErrors(a?{error:!0}:null),this.privateErrorMessage=a}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(a){this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&a.option.value||"auto-complete option");var W=a.option.value;W=this.topSearchClean(W),this.searchPerformed.emit(W)}},{key:"processSubstanceSearch",value:function(){var a=this.searchControl.value;this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","search:submit",!this.configService.environment.isAnalyticsPrivate&&a||"search term option"),a=this.topSearchClean(a),this.searchPerformed.emit(a)}},{key:"highlight",value:function(a){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=a,this.testElem.scrollWidth>this.testElem.offsetWidth))){var x=a.toUpperCase().indexOf(this.query.toUpperCase());a="..."+a.substring(x-15,a.length)}var O=this.query.replace(/(?=[() ])/g,"\\");return a.replace(new RegExp(O,"gi"),function(W){return""+W+""})}return a}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var a=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){a.source?(a.searchContainerElement.classList.remove("active-"+a.source),a.searchContainerElement.classList.remove("deactivate-search")):(a.searchContainerElement.classList.remove("active-search"),a.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(a){return a&&a.length>0&&((a=a.trim()).indexOf('"')<0&&a.indexOf("*")<0&&a.indexOf(":")<0&&a.indexOf(" AND ")<0&&a.indexOf(" OR ")<0?a='"'+a.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':a.indexOf(":")<0&&(a=a.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")),this.searchControl.setValue(a)),a}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(E.I),e.Y36(e.SBq),e.Y36(Jn.$),e.Y36(On.E),e.Y36(Je.I))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-application-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:12,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"suggestion-styling",3,"innerHTML"]],template:function(l,a){if(1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return a.focused()}),e.qZA(),e.YNc(4,Ve,2,1,"mat-hint",3),e.YNc(5,pt,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(W){return a.substanceSearchOptionSelected(W)})("closed",function(){return a.autoCompleteClosed()}),e.YNc(8,en,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return a.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&l){var x=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",a.source),e.xp6(1),e.Q6J("placeholder",a.placeholder)("formControl",a.searchControl)("matAutocomplete",x),e.xp6(1),e.Q6J("ngIf",a.hintMessage),e.xp6(1),e.Q6J("ngIf",a.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",a.suggestionsFields),e.xp6(2),e.Q6J("disabled",a.searchControl.invalid)}},directives:[je._Y,je.JL,je.F,St.KE,p.mk,Pt.Nt,je.Fj,bt.ZL,je.JJ,je.oH,p.O5,St.bx,St.TO,bt.XC,p.sg,_n.ey,T.lW,I.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:#fff;overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:#448aff;color:#fff}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 750px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 1024px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:#4793d1;overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:#fff;overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-webkit-animation-name:reduceWidth;animation-name:reduceWidth;-webkit-animation-duration:.3s;animation-duration:.3s}}@-webkit-keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes expandWidth{0%{width:0}to{width:100%}}@-webkit-keyframes reduceWidth{0%{width:100%}to{width:0}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),m}();function zt(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",64),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",65),e.qZA()}}function un(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",70),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return e.oxw(4).restricSearh(W.luceneQuery)}),e.TgZ(1,"div",71),e._uU(2),e.qZA(),e.TgZ(3,"div",72),e._uU(4),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(2),e.hij(" ",a.displayField," "),e.xp6(2),e.hij(" ",a.count," ")}}function tn(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",68),e._uU(2),e.qZA(),e.YNc(3,un,5,2,"button",69),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==l?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",a.narrowSearchSuggestions[l])}}function ln(m,D){if(1&m&&(e.TgZ(0,"div",66),e.YNc(1,tn,4,2,"div",67),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l&&("WORD"===l||"FULL"===l))}}function gn(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",52),e.TgZ(1,"div",53),e.TgZ(2,"div",54),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",55),e.NdJ("menuOpened",function(){return e.CHM(l),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(l),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",56),e.qZA(),e.TgZ(11,"button",57),e.NdJ("click",function(){return e.CHM(l),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,zt,2,0,"button",58),e.TgZ(15,"mat-menu",59,60),e.YNc(17,ln,2,1,"div",61),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",53),e.TgZ(19,"div",62),e._uU(20," For more options use the "),e.TgZ(21,"a",63),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(16),x=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",a),e.xp6(3),e.hij("\xa0 ",x.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",x.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",x.matchTypes)}}function An(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",64),e.NdJ("click",function(){return e.CHM(l),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",65),e.qZA()}}function Nn(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",77),e.TgZ(1,"div"),e.TgZ(2,"span",78),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",79),e.YNc(8,An,2,0,"button",58),e.TgZ(9,"button",64),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",80),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(6),e.Oqu(a.searchTerm),e.xp6(2),e.Q6J("ngIf",a.isSearchEditable)}}function ai(m,D){1&m&&e._UZ(0,"mat-icon",87)}function gi(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",77),e.TgZ(1,"div",81),e.TgZ(2,"span",82),e.YNc(3,ai,1,0,"mat-icon",83),e._uU(4),e.qZA(),e.TgZ(5,"span",84),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",79),e.TgZ(8,"button",85),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return W.removeFacet(W.type,W.bool,W.val)}),e._UZ(9,"mat-icon",86),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(3),e.Q6J("ngIf",!a.bool),e.xp6(1),e.hij(" ",a.type,": "),e.xp6(2),e.hij(" ",a.val," ")}}function Si(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",88),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function Bi(m,D){if(1&m&&(e.TgZ(0,"div",73),e.YNc(1,Nn,11,2,"div",74),e.YNc(2,gi,10,3,"div",75),e.YNc(3,Si,3,0,"button",76),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.searchTerm),e.xp6(1),e.Q6J("ngForOf",l.displayFacets),e.xp6(1),e.Q6J("ngIf",l.displayFacets&&l.displayFacets.length>0||l.searchTerm)}}function Oa(m,D){if(1&m&&(e.TgZ(0,"mat-option",89),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l.value),e.xp6(1),e.hij(" ",l.display," ")}}function Ea(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",90),e.TgZ(1,"button",91),e.NdJ("click",function(){return e.CHM(l),e.oxw().export()}),e._UZ(2,"mat-icon",92),e._uU(3," Export "),e.qZA(),e.qZA()}}function ea(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Application Type "),e.qZA())}var ja=function(D){return["/application",D,"edit"]};function tr(m,D){if(1&m&&(e.TgZ(0,"a",98),e._UZ(1,"mat-icon",65),e.qZA()),2&m){var l=e.oxw().$implicit;e.Q6J("routerLink",e.VKq(1,ja,l.id))}}var da=function(D){return["/application",D]};function Na(m,D){if(1&m&&(e.TgZ(0,"td",94),e.TgZ(1,"div",95),e.TgZ(2,"a",96),e._uU(3),e.qZA(),e._uU(4,"\xa0\xa0 "),e.YNc(5,tr,2,3,"a",97),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=e.oxw();e.xp6(2),e.Q6J("routerLink",e.VKq(3,da,l.id)),e.xp6(1),e.hij(" ",l.appType," "),e.xp6(2),e.Q6J("ngIf",a.isAdmin)}}function ta(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Application Number "),e.qZA())}function fn(m,D){if(1&m&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.appNumber," ")}}function yn(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Center "),e.qZA())}function Ct(m,D){if(1&m&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.center," ")}}function Pe(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Provenance "),e.qZA())}function It(m,D){if(1&m&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.provenance," ")}}function Jt(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Application Status "),e.qZA())}function vn(m,D){if(1&m&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.status," ")}}function Vn(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Product Name "),e.qZA())}function ui(m,D){if(1&m&&(e.TgZ(0,"div",103),e.TgZ(1,"li"),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.hij(" ",l.productName," ")}}function ki(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,ui,3,1,"div",102),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngForOf",l.applicationProductNameList)}}function Ii(m,D){if(1&m&&(e.TgZ(0,"td",99),e.TgZ(1,"ol",100),e.YNc(2,ki,2,1,"div",101),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Q6J("ngForOf",l.applicationProductList)}}function ri(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Ingredient Name (Active Ingredient) "),e.qZA())}var Ci=function(D){return["/substances",D]};function Wi(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"li"),e.TgZ(2,"a",105),e._uU(3),e.qZA(),e.TgZ(4,"button",106),e.NdJ("click",function(O){e.CHM(l);var W=e.oxw(3).$implicit;return e.oxw(4).openImageModal(O,W._substanceUuid)}),e.TgZ(5,"mat-icon"),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,Ci,a._substanceUuid)),e.xp6(1),e.hij(" ",a._ingredientName," ")}}function xa(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Wi,7,4,"div",67),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf","ACTIVE INGREDIENT"===l.ingredientType||"Active Ingredient"===l.ingredientType)}}function oa(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,xa,2,1,"div",67),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",l.ingredientType)}}function Yi(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,oa,2,1,"div",67),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l._ingredientName)}}function sa(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Yi,2,1,"div",101),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngForOf",l.applicationIngredientList)}}function Fi(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,sa,2,1,"div",101),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",l.applicationProductList)}}function va(m,D){if(1&m&&(e.TgZ(0,"td",99),e.TgZ(1,"ol",100),e.YNc(2,Fi,2,1,"div",104),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=e.oxw();e.xp6(2),e.Q6J("ngIf",l.applicationProductList.length>0)("ngIfElse",a.noRecordProdName)}}function Za(m,D){1&m&&(e.TgZ(0,"th",93),e._uU(1," Sponsor Name "),e.qZA())}function Qt(m,D){if(1&m&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.sponsorName," ")}}function Ot(m,D){1&m&&e._UZ(0,"tr",107)}function Xt(m,D){1&m&&e._UZ(0,"tr",108)}function Dn(m,D){if(1&m&&(e.TgZ(0,"a",131),e._UZ(1,"mat-icon",65),e.qZA()),2&m){var l=e.oxw().$implicit;e.Q6J("routerLink",e.VKq(1,ja,l.id))}}function Hn(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1," \u25aa "),e.TgZ(2,"span",135),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"span",136),e._uU(6," (Deprecated) "),e.qZA(),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(4),e.Oqu(l.productName)}}function Gn(m,D){if(1&m&&(e._uU(0," \u25aa "),e.TgZ(1,"span",137),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(3),e.Oqu(l.productName)}}function vi(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Hn,7,1,"div",104),e.YNc(2,Gn,4,1,"ng-template",null,134,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",a.deprecated&&"Y"==a.deprecated)("ngIfElse",l)}}function Vi(m,D){1&m&&e._uU(0," (No Product Name) ")}function Zi(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,vi,4,2,"div",104),e.YNc(2,Vi,1,0,"ng-template",null,133,e.W1O),e.qZA()),2&m){var l=D.$implicit,a=e.MAs(3);e.xp6(1),e.Q6J("ngIf",l.productName)("ngIfElse",a)}}function Ai(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Zi,4,2,"div",101),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",l.applicationProductNameList)}}function Ja(m,D){1&m&&e._uU(0," (No Product Name) ")}function ao(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",144),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(3).$implicit;e.xp6(2),e.hij("(",l.ingredientType,")")}}function za(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(3).$implicit;e.hij(" (",l.ingredientType,") ")}}function fr(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,ao,3,1,"div",104),e.YNc(2,za,1,1,"ng-template",null,143,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf","Active Ingredient"===a.ingredientType)("ngIfElse",l)}}function Or(m,D){if(1&m&&(e.TgZ(0,"div",145),e.TgZ(1,"a",105),e._uU(2),e.qZA(),e.TgZ(3,"span",146),e._uU(4,"\xa0(Active Moiety)"),e.qZA(),e._UZ(5,"br"),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Ci,l.activeMoietyUnii)),e.xp6(1),e.Oqu(l.activeMoietyName)}}function Pr(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",146),e._uU(3,"\xa0(Active Moiety)"),e.qZA(),e._UZ(4,"br"),e.qZA()),2&m){var l=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",l.activeMoietyName," ")}}function Dr(m,D){if(1&m&&e.YNc(0,Pr,5,1,"div",67),2&m){var l=e.oxw(2).$implicit;e.Q6J("ngIf",l.activeMoietyName)}}function Ga(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",139),e.TgZ(2,"span",140),e._uU(3,"\u2666"),e.qZA(),e.TgZ(4,"a",105),e._uU(5),e.qZA(),e.TgZ(6,"button",106),e.NdJ("click",function(W){e.CHM(l);var Le=e.oxw().$implicit;return e.oxw(5).openImageModal(W,Le._substanceUuid)}),e.TgZ(7,"mat-icon"),e._uU(8,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.YNc(9,fr,4,2,"div",67),e.YNc(10,Or,6,4,"div",141),e.YNc(11,Dr,1,1,"ng-template",null,142,e.W1O),e.qZA()}if(2&m){var a=e.MAs(12),x=e.oxw().$implicit;e.xp6(4),e.Q6J("routerLink",e.VKq(5,Ci,x._substanceUuid)),e.xp6(1),e.hij(" ",x._ingredientName," "),e.xp6(4),e.Q6J("ngIf",x.ingredientType),e.xp6(1),e.Q6J("ngIf",x.activeMoietyUnii)("ngIfElse",a)}}function Rr(m,D){1&m&&e._uU(0," (No Ingredient Name) ")}function Qo(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",103),e.TgZ(2,"div",120),e._uU(3),e.qZA(),e.TgZ(4,"div",121),e.YNc(5,Ga,13,7,"div",104),e.YNc(6,Rr,1,0,"ng-template",null,138,e.W1O),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.MAs(7);e.xp6(3),e.hij(" Ingredient Name: ",a+1,": "),e.xp6(2),e.Q6J("ngIf",l.substanceKey)("ngIfElse",x)}}function fo(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",103),e.TgZ(2,"div",120),e._uU(3),e.qZA(),e.TgZ(4,"div",121),e.YNc(5,Ai,2,1,"div",104),e.YNc(6,Ja,1,0,"ng-template",null,132,e.W1O),e.qZA(),e.qZA(),e.YNc(8,Qo,8,3,"div",101),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.MAs(7);e.xp6(3),e.hij(" Product Name ",a+1,": "),e.xp6(2),e.Q6J("ngIf",l.applicationProductNameList.length>0)("ngIfElse",x),e.xp6(3),e.Q6J("ngForOf",l.applicationIngredientList)}}function eo(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,fo,9,4,"div",101),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",l.applicationProductList)}}function Wo(m,D){1&m&&(e.TgZ(0,"div",103),e.TgZ(1,"div",120),e._uU(2," Product Name 1: "),e.qZA(),e.TgZ(3,"div",121),e._uU(4," (No Product Name) "),e.qZA(),e.qZA(),e.TgZ(5,"div",103),e.TgZ(6,"div",120),e._uU(7," Ingredient Name 1: "),e.qZA(),e.TgZ(8,"div",121),e._uU(9," (No Ingredient Name) "),e.qZA(),e.qZA())}function ya(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"span",147),e._uU(2,"Clinical Trials: "),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.s9C("matBadge",l._clinicalTrialList.length)}}function pa(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",148),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+l.nctNumber,e.LSH),e.xp6(1),e.Oqu(l.nctNumber)}}function Ur(m,D){if(1&m&&(e.TgZ(0,"div",139),e._uU(1," \u2022\xa0 "),e.YNc(2,pa,3,2,"span",67),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Q6J("ngIf",l.nctNumber)}}function yr(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" \u2022\xa0",l.indication," ")}}function mo(m,D){if(1&m&&(e.TgZ(0,"div",139),e.YNc(1,yr,2,1,"span",67),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l.indication)}}function mr(m,D){if(1&m&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"a",110),e._uU(4),e.qZA(),e._uU(5," \xa0\xa0\xa0 "),e.YNc(6,Dn,2,3,"a",111),e.qZA(),e.TgZ(7,"div"),e.TgZ(8,"span",112),e._uU(9,"Center:\xa0"),e.TgZ(10,"span",113),e._uU(11),e.qZA(),e.qZA(),e._uU(12," \xa0\xa0\xa0 \xa0\xa0\xa0 "),e.TgZ(13,"span",114),e._uU(14,"Provenance:\xa0"),e.TgZ(15,"span",115),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.TgZ(17,"div"),e.TgZ(18,"a",116),e._uU(19),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"mat-card-content"),e.TgZ(21,"div",103),e.TgZ(22,"div",117),e.TgZ(23,"div",103),e.TgZ(24,"div",118),e.YNc(25,eo,2,1,"div",104),e.YNc(26,Wo,10,0,"ng-template",null,119,e.W1O),e.qZA(),e.qZA(),e.TgZ(28,"div",103),e.TgZ(29,"div",120),e._uU(30," Title: "),e.qZA(),e.TgZ(31,"div",121),e._uU(32),e.qZA(),e.qZA(),e.TgZ(33,"div",103),e.TgZ(34,"div",120),e._uU(35," Sponsor Name: "),e.qZA(),e.TgZ(36,"div",121),e._uU(37),e.qZA(),e.qZA(),e.TgZ(38,"div",103),e.TgZ(39,"div",122),e.TgZ(40,"div",123),e._uU(41," Status Date: "),e.qZA(),e.TgZ(42,"div",124),e._uU(43),e.qZA(),e.qZA(),e.TgZ(44,"div",122),e.TgZ(45,"div",125),e.YNc(46,ya,3,1,"span",67),e.qZA(),e.TgZ(47,"div",126),e._uU(48," \xa0 "),e.YNc(49,Ur,3,1,"div",127),e.qZA(),e.qZA(),e.qZA(),e.TgZ(50,"div",103),e.TgZ(51,"div",122),e.TgZ(52,"div",123),e._uU(53," Submit Date: "),e.qZA(),e.TgZ(54,"div",124),e._uU(55),e.qZA(),e.qZA(),e.TgZ(56,"div",122),e.TgZ(57,"div",125),e._uU(58," Indications:\xa0 "),e.qZA(),e.TgZ(59,"div",126),e.YNc(60,mo,2,1,"div",127),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(61,"div",128),e.TgZ(62,"span"),e.TgZ(63,"div",103),e.TgZ(64,"div",129),e._uU(65," Create By: "),e.qZA(),e.TgZ(66,"div",130),e._uU(67),e.qZA(),e.qZA(),e.TgZ(68,"div",103),e.TgZ(69,"div",129),e._uU(70," Create Date: "),e.qZA(),e.TgZ(71,"div",130),e._uU(72),e.ALo(73,"date"),e.qZA(),e.qZA(),e.TgZ(74,"div",103),e.TgZ(75,"div",129),e._uU(76," Edited By: "),e.qZA(),e.TgZ(77,"div",130),e._uU(78),e.qZA(),e.qZA(),e.TgZ(79,"div",103),e.TgZ(80,"div",129),e._uU(81," Edit Date: "),e.qZA(),e.TgZ(82,"div",130),e._uU(83),e.ALo(84,"date"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=e.MAs(27),x=e.oxw(2);e.xp6(3),e.Q6J("routerLink",e.VKq(27,da,l.id)),e.xp6(1),e.AsE(" ",l.appType,"\xa0",l.appNumber," "),e.xp6(2),e.Q6J("ngIf",x.isAdmin),e.xp6(5),e.Oqu(l.center),e.xp6(5),e.Oqu(l.provenance),e.xp6(2),e.Q6J("routerLink",e.VKq(29,da,l.id)),e.xp6(1),e.hij(" Status: ",l.status," "),e.xp6(6),e.Q6J("ngIf",l.applicationProductList.length>0)("ngIfElse",a),e.xp6(7),e.hij(" ",l.title," "),e.xp6(5),e.hij(" ",l.sponsorName," "),e.xp6(6),e.hij(" \xa0",l.statusDate," "),e.xp6(3),e.Q6J("ngIf",l._clinicalTrialList),e.xp6(3),e.Q6J("ngForOf",l._clinicalTrialList),e.xp6(6),e.hij(" \xa0",l.submitDate," "),e.xp6(5),e.Q6J("ngForOf",l.applicationIndicationList),e.xp6(7),e.hij(" ",l.createdBy," "),e.xp6(5),e.hij(" ",e.xi3(73,21,l.creationDate,"MM/dd/yyyy h:mm a")," "),e.xp6(6),e.hij(" ",l.modifiedBy," "),e.xp6(5),e.hij(" ",e.xi3(84,24,l.lastModifiedDate,"MM/dd/yyyy h:mm a")," ")}}function ro(m,D){if(1&m&&(e.TgZ(0,"div",109),e.YNc(1,mr,85,31,"mat-card",101),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngForOf",l.applications)}}function zo(m,D){}var ho=function(){return[5,10,50,100]},_o=function(D){return{"bad-page":D}},Ta=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar,ls,Xr,Zo){(0,P.Z)(this,D),this.applicationService=l,this.generalService=a,this.activatedRoute=x,this.location=O,this.locationStrategy=W,this.router=Le,this.sanitizer=rt,this.gaService=Ht,this.configService=In,this.loadingService=ei,this.notificationService=_i,this.authService=Mi,this.overlayContainerService=qi,this.facetManagerService=Ar,this.utilsService=ls,this.dialog=Xr,this.titleService=Zo,this.view="cards",this.sortValues=si,this.isLoading=!0,this.isError=!1,this.isLoggedIn=!1,this.dataSource=[],this.hasBackdrop=!1,this.isComponentInit=!1,this.privateExport=!1,this.disableExport=!1,this.etag="",this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.isSearchEditable=!1,this.invalidPage=!1,this.ascDescDir="desc",this.displayedColumns=["appType","appNumber","center","provenance","applicationStatus","productName","sponsorName","ingredientName"],this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[]}return(0,t.Z)(D,[{key:"onPopState",value:function(a){var x=this;setTimeout(function(){x.router.url===x.previousState[0]&&x.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var a=this;this.facetManagerService.registerGetFacetsHandler(this.applicationService.getApplicationFacets),this.gaService.sendPageView("Browse Applications"),this.titleService.setTitle("A:Browse Applications"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"root_appNumber",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var O=this.authService.getAuth().subscribe(function(Le){Le&&(a.isLoggedIn=!0),a.isAdmin=a.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(O);var W=this.activatedRoute.queryParamMap.subscribe(function(Le){a.searchValue=Le.get("search")});this.subscriptions.push(W),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchApplications()}},{key:"searchApplications",value:function(){var a=this;this.loadingService.setLoading(!0);var O=this.applicationService.getApplications(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(W){a.isError=!1,a.applications=W.content,a.dataSource=a.applications,a.totalApplications=W.total,a.etag=W.etag,a.lastPage=W.total%a.pageSize==0?W.total/a.pageSize:Math.floor(W.total/a.pageSize+1),W.facets&&W.facets.length>0&&(a.rawFacets=W.facets),a.narrowSearchSuggestions={},a.matchTypes=[],a.narrowSearchSuggestionsCount=0,W.narrowSearchSuggestions&&W.narrowSearchSuggestions.length&&W.narrowSearchSuggestions.forEach(function(Le){null==a.narrowSearchSuggestions[Le.matchType]&&(a.narrowSearchSuggestions[Le.matchType]=[],"WORD"===Le.matchType?a.matchTypes.unshift(Le.matchType):a.matchTypes.push(Le.matchType)),a.narrowSearchSuggestions[Le.matchType].push(Le),a.narrowSearchSuggestionsCount++}),a.matchTypes.sort(),a.getSubstanceBySubstanceKey(),a.getClinicalTrialApplication()},function(W){console.log("error");var Le={message:"There was an error trying to retrieve Applications. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(Le)},function(){O.unsubscribe(),a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchApplications()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("applicationFiltering","icon-button:clear-search",Un.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchApplications()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(a){a.removeFacet(a.type,a.bool,a.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var a={queryParams:{}};a.queryParams.searchTerm=this.privateSearchTerm,a.queryParams.pageSize=this.pageSize,a.queryParams.pageIndex=this.pageIndex,a.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var x=this.router.createUrlTree([],{queryParams:a.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(x.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(a){var x=this;if(a.active){var O=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(W){W.displayedColumns&&W.direction&&x.displayedColumns[O]===W.displayedColumns&&x.ascDescDir===W.direction&&(x.order=W.value)}),this.searchApplications()}}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substancesFiltering","button:sidenav","open")}},{key:"updateView",value:function(a){this.view=a.value}},{key:"changePage",value:function(a){var x,O;this.pageSize!==a.pageSize?(x="select:page-size",O=a.pageSize):this.pageIndex!==a.pageIndex&&(x="icon-button:page-number",O=a.pageIndex+1),this.gaService.sendEvent("applicationsContent",x,"pager",O),this.pageSize=a.pageSize,this.pageIndex=a.pageIndex,this.populateUrlQueryParameters(),this.searchApplications()}},{key:"customPage",value:function(a){if(this.validatePageInput(a)){this.invalidPage=!1;var x=Number(a.target.value)-1;this.pageIndex=x,this.gaService.sendEvent("applicationsContent","select:page-number","pager",x),this.populateUrlQueryParameters(),this.searchApplications()}}},{key:"validatePageInput",value:function(a){if(a&&a.target){var x=Number(a.target.value);if(!isNaN(Number(x))&&Number.isInteger(x)&&x<=this.lastPage&&x>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(a){this.pageIndex=0,this.privateFacetParams=a.facetParam,this.displayFacets=a.displayFacets,this.isFacetsParamsInit?this.searchApplications():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(a){}},{key:"editAdvancedSearch",value:function(){var a=Un.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("Application Filtering","icon-button:edit-advanced-search",a);var x={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],x)}},{key:"getSubstanceBySubstanceKey",value:function(){var a=this;this.applications.forEach(function(x,O){x.applicationProductList.forEach(function(W,Le){W.applicationProductNameList.sort(function(rt,Ht){return new Date(Ht.creationDate)-new Date(rt.creationDate)}),W.applicationIngredientList.forEach(function(rt,Ht){if(null!=rt.substanceKey){var In=a.generalService.getSubstanceByAnyId(rt.substanceKey).subscribe(function(ei){ei&&rt.substanceKey&&a.generalService.getSubstanceByAnyId(rt.substanceKey).subscribe(function(_i){_i&&(rt._substanceUuid=_i.uuid,rt._ingredientName=_i._name)})});a.subscriptions.push(In)}})})})}},{key:"restricSearh",value:function(a){this.privateSearchTerm=a,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchApplications()}},{key:"export",value:function(){var a=this;if(this.etag){var x="xlsx",O=this.getApiExportUrl(this.etag,x);this.dialog.open(_t.L,{height:"215x",width:"550px",data:{extension:x,type:"BrowseApplications"}}).afterClosed().subscribe(function(Le){Le&&""!==Le&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(O,a.privateExport,Le+"."+x).subscribe(function(Ht){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",Ht.id])},function(Ht){a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,x){return this.applicationService.getApiExportUrl(a,x)}},{key:"updateApplicationUrl",get:function(){return this.applicationService.getUpdateApplicationUrl()}},{key:"getClinicalTrialApplication",value:function(){var a=this;this.applications.forEach(function(x,O){var W=a.applicationService.getClinicalTrialApplication(x.id).subscribe(function(Le){x._clinicalTrialList=[],x._clinicalTrialList=Le});a.subscriptions.push(W)})}},{key:"openImageModal",value:function(a,x){var O=this,Le=this.dialog.open(rn.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:x,uuid:x}});this.overlayContainer.style.zIndex="1002";var rt=Le.afterClosed().subscribe(function(){O.overlayContainer.style.zIndex=null,rt.unsubscribe()},function(){O.overlayContainer.style.zIndex=null,rt.unsubscribe()})}},{key:"processSubstanceSearch",value:function(a){this.privateSearchTerm=a,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(E.I),e.Y36(A.m),e.Y36(d.gz),e.Y36(p.Ye),e.Y36(p.S$),e.Y36(d.F0),e.Y36(sn.H7),e.Y36(Jn.$),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Ie.e),e.Y36(qe.Xj),e.Y36(wn.bH),e.Y36(fi.F),e.Y36(qt.uw),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-applications-browse"]],hostBindings:function(l,a){1&l&&e.NdJ("popstate",function(O){return a.onPopState(O)},!1,e.Jf7)},decls:87,vars:42,consts:[["mode","side","opened",""],["configName","applications","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],[1,"sort"],[3,"ngModel","selectionChange","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","applicationSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],[1,"responsive"],["mat-table","","matSort","","matSortActive","appNumber","matSortDirection","asc","matSortDisableClear","",1,"font12px",3,"dataSource","matSortChange"],["matColumnDef","appType"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","appNumber"],["matColumnDef","center"],["matColumnDef","provenance"],["matColumnDef","applicationStatus"],["matColumnDef","productName"],["valign","top","mat-cell","",4,"matCellDef"],["matColumnDef","ingredientName"],["matColumnDef","sponsorName"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],[1,"full-paginator-right"],[1,"page-selector-right"],["noRecordApplication",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[3,"value"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],[1,"width120px"],["target","_blank","alt","View Application Record","matTooltip","View Application Record",1,"substance-name",3,"routerLink"],["target","_blank","matTooltip","Edit Application Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit Application Record",3,"routerLink"],["valign","top","mat-cell",""],[1,"olstyle"],[4,"ngFor","ngForOf"],["class","row",4,"ngFor","ngForOf"],[1,"row"],[4,"ngIf","ngIfElse"],["target","_blank",3,"routerLink"],["mat-button","",1,"structure-parameters",3,"click"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],["target","_blank",1,"substance-name",3,"routerLink"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink",4,"ngIf"],[1,"center"],[1,"colorlightpurple"],[1,"center","colordarkblue"],[1,"colordarkblue"],["target","_blank",1,"approval-id",3,"routerLink"],[1,"width70percent"],[1,"width100percent"],["noRecordProdName",""],[1,"row-property-key-4"],[1,"row-property-value-4"],[1,"row-property"],[1,"row-property-key-3"],[1,"row-property-value-3"],[1,"row-property-key"],[1,"row-property-value"],["class","",4,"ngFor","ngForOf"],[1,"width30percent"],[1,"row-property-key-5"],[1,"row-property-value-5"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink"],["noProdNameList",""],["noProd",""],["noDeprecated",""],[1,"colorgray"],[1,"font10px"],[1,"font14px","colorlightblue"],["noIngred",""],[1,""],[1,"colorred"],["class","padtop5px",4,"ngIf","ngIfElse"],["noActiveUnii",""],["otherIngredType",""],[1,"colorgreen"],[1,"padtop5px"],[1,"font10px","colorgray"],["matBadgeOverlap","false",3,"matBadge"],["target","_blank","title","see clinicaltrials.gov",3,"href"]],template:function(l,a){if(1&l){var x=e.EpF();e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e.TgZ(3,"mat-sidenav-container"),e.TgZ(4,"mat-sidenav",0),e.TgZ(5,"app-facets-manager",1),e.NdJ("facetsParamsUpdated",function(rt){return a.facetsParamsUpdated(rt)})("facetsLoaded",function(rt){return a.facetsLoaded(rt)}),e.qZA(),e.qZA(),e.TgZ(6,"mat-sidenav-content"),e.TgZ(7,"div",2),e.TgZ(8,"button",3),e.NdJ("click",function(){return a.openSideNav()}),e._UZ(9,"mat-icon",4),e.qZA(),e.YNc(10,gn,23,4,"div",5),e.YNc(11,Bi,4,3,"ng-template",null,6,e.W1O),e.TgZ(13,"div",7),e.TgZ(14,"div",8),e.TgZ(15,"span",9),e._uU(16,"Browse Applications"),e.qZA(),e.qZA(),e.TgZ(17,"mat-button-toggle-group",10),e.NdJ("change",function(rt){return a.updateView(rt)}),e.TgZ(18,"mat-button-toggle",11),e._UZ(19,"mat-icon",12),e.qZA(),e.TgZ(20,"mat-button-toggle",13),e._UZ(21,"mat-icon",14),e.qZA(),e.qZA(),e.TgZ(22,"mat-form-field",15),e.TgZ(23,"mat-label"),e._uU(24,"Sort By"),e.qZA(),e.TgZ(25,"mat-select",16),e.NdJ("selectionChange",function(){return a.searchApplications()})("ngModelChange",function(rt){return a.order=rt}),e.YNc(26,Oa,2,2,"mat-option",17),e.qZA(),e.qZA(),e.YNc(27,Ea,4,0,"div",18),e._UZ(28,"div",19),e.TgZ(29,"div",20),e.TgZ(30,"mat-paginator",21,22),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(32,"div",23),e.TgZ(33,"span",24),e._uU(34,"Page: "),e.qZA(),e.TgZ(35,"mat-form-field",25),e.TgZ(36,"input",26,27),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(37).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(38,"span",24),e._uU(39),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(40,"div",28),e.TgZ(41,"app-application-text-search",29),e.NdJ("searchPerformed",function(rt){return a.processSubstanceSearch(rt)}),e.qZA(),e.qZA(),e.TgZ(42,"div",30),e.TgZ(43,"div",31),e.TgZ(44,"div",32),e.TgZ(45,"table",33),e.NdJ("matSortChange",function(rt){return a.sortData(rt)}),e.ynx(46,34),e.YNc(47,ea,2,0,"th",35),e.YNc(48,Na,6,5,"td",36),e.BQk(),e.ynx(49,37),e.YNc(50,ta,2,0,"th",35),e.YNc(51,fn,2,1,"td",36),e.BQk(),e.ynx(52,38),e.YNc(53,yn,2,0,"th",35),e.YNc(54,Ct,2,1,"td",36),e.BQk(),e.ynx(55,39),e.YNc(56,Pe,2,0,"th",35),e.YNc(57,It,2,1,"td",36),e.BQk(),e.ynx(58,40),e.YNc(59,Jt,2,0,"th",35),e.YNc(60,vn,2,1,"td",36),e.BQk(),e.ynx(61,41),e.YNc(62,Vn,2,0,"th",35),e.YNc(63,Ii,3,1,"td",42),e.BQk(),e.ynx(64,43),e.YNc(65,ri,2,0,"th",35),e.YNc(66,va,3,2,"td",42),e.BQk(),e.ynx(67,44),e.YNc(68,Za,2,0,"th",35),e.YNc(69,Qt,2,1,"td",36),e.BQk(),e.YNc(70,Ot,1,0,"tr",45),e.YNc(71,Xt,1,0,"tr",46),e.qZA(),e.qZA(),e.qZA(),e.YNc(72,ro,2,1,"div",47),e.qZA(),e.TgZ(73,"div",48),e.TgZ(74,"div",49),e.TgZ(75,"mat-paginator",21,22),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(77,"div",50),e.TgZ(78,"span",24),e._uU(79,"Page: "),e.qZA(),e.TgZ(80,"mat-form-field",25),e.TgZ(81,"input",26,27),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(37).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(83,"span",24),e._uU(84),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(85,zo,0,0,"ng-template",null,51,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&l){var O=e.MAs(12),W=e.MAs(86);e.xp6(5),e.Q6J("rawFacets",a.rawFacets),e.xp6(5),e.Q6J("ngIf",a.matchTypes&&a.matchTypes.length>0)("ngIfElse",O),e.xp6(7),e.Q6J("value",a.view),e.xp6(8),e.Q6J("ngModel",a.order),e.xp6(1),e.Q6J("ngForOf",a.sortValues),e.xp6(1),e.Q6J("ngIf",a.isAdmin),e.xp6(3),e.Q6J("length",a.totalApplications)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(32,ho))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(33,_o,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(35,_o,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,""),e.xp6(2),e.Q6J("searchValue",a.searchValue),e.xp6(1),e.Q6J("ngClass",a.view),e.xp6(3),e.Q6J("dataSource",a.applications),e.xp6(25),e.Q6J("matHeaderRowDef",a.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",a.displayedColumns),e.xp6(1),e.Q6J("ngIf",a.applications&&a.applications.length)("ngIfElse",W),e.xp6(3),e.Q6J("length",a.totalApplications)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(37,ho))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(38,_o,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(40,_o,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,"")}},directives:[Ft.TM,Ft.JX,Ue.R,Ft.Rh,I.Hw,p.O5,T.lW,Ae.p6,Ae.VK,p.sg,Ae.OP,d.yS,ft.A9,ft.Yi,f.gM,St.KE,St.hX,we.gD,je.JJ,je.On,_n.ey,be.NW,p.mk,Pt.Nt,Zn,v.BZ,yt.YE,v.w1,v.fO,v.ge,yt.nU,v.Dz,v.ev,v.as,v.XQ,v.nj,v.Gk,s.a8,s.n5,s.dn,Q.k],pipes:[p.uU],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#80cbc4} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#26a69a}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#ef9a9a} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ef5350}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.full-paginator-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;max-width:700px}.page-selector-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center;max-width:200px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.displaynone[_ngcontent-%COMP%]{display:none}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#000;border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid gray}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid gray}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.cards[_ngcontent-%COMP%] .controls-container[_ngcontent-%COMP%]{max-width:928px}.cards[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:#c7254e}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:#00f;display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:#404040;white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.structure-style[_ngcontent-%COMP%]{border:1px solid gray;width:500px;height:500px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.structure-parameters[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin:0;padding:0 0 0 5px}.structure-parameters[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{width:20px}.title[_ngcontent-%COMP%]{color:#27288a;font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorgreen[_ngcontent-%COMP%]{color:green}.colororange[_ngcontent-%COMP%]{color:orange}.colorlightpurple[_ngcontent-%COMP%]{color:#7a0abbe0}.colorlightblue[_ngcontent-%COMP%]{color:#1945bd}.colordarkblue[_ngcontent-%COMP%]{color:#4e4e44}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid #f8cf88}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #bbc2a4}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.margintopneg20px[_ngcontent-%COMP%]{margin-top:-20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:#fff;border:1px solid #CCC;background:#60615e;box-shadow:0 0 5px -1px #0003;vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid blue}.width120px[_ngcontent-%COMP%]{width:120px}.width200px[_ngcontent-%COMP%]{width:200px}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.structure-image[_ngcontent-%COMP%]{width:100%;height:30px;padding:0}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.search-suggestions-container[_ngcontent-%COMP%]{width:500px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),m}(),wr=n(4089),ia=n(20265),Aa=n(24582),Ra=n(7318),Ma=n(40104),oo=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In){(0,P.Z)(this,D),this.applicationService=l,this.generalService=a,this.activatedRoute=x,this.loadingService=O,this.mainNotificationService=W,this.router=Le,this.gaService=rt,this.utilsService=Ht,this.titleService=In,this.isAdmin=!1,this.message="",this.subscriptions=[]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.loadingService.setLoading(!0),this.id?!0===this.isNumber(this.id)?this.getApplicationDetails():this.message="The application Id in url should be a number":null!=this.appType&&null!=this.appNumber||this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getApplicationDetails",value:function(){var a=this,x=this.applicationService.getApplicationById(this.id).subscribe(function(O){if(a.application=O,Object.keys(a.application).length>0){a.titleService.setTitle("Application "+a.application.appType+" "+a.application.appNumber),a.getSubstanceBySubstanceKey();var W=a.applicationService.getApplicationHistory(a.id).subscribe(function(In){a.application.applicationHistoryList=[],a.application.applicationHistoryList=In});a.subscriptions.push(W);var Le=a.applicationService.getProductTechnicalEffect(a.id).subscribe(function(In){a.application.productTechEffectList=[],a.application.productTechEffectList=In});a.subscriptions.push(Le);var rt=a.applicationService.getProductEffected(a.id).subscribe(function(In){a.application.productEffectedList=[],a.application.productEffectedList=In});a.subscriptions.push(rt);var Ht=a.applicationService.getClinicalTrialApplication(a.id).subscribe(function(In){a.application.clinicalTrialList=[],a.application.clinicalTrialList=In});a.subscriptions.push(Ht)}},function(O){});this.subscriptions.push(x)}},{key:"getSubstanceBySubstanceKey",value:function(){var a=this;null!=this.application&&this.application.applicationProductList.forEach(function(x){null!=x&&x.applicationIngredientList.forEach(function(O){if(null!=O){if(O.substanceKey){var W=a.generalService.getSubstanceByAnyId(O.substanceKey).subscribe(function(rt){rt&&(O._substanceUuid=rt.uuid,O._ingredientName=rt._name)});a.subscriptions.push(W)}if(O.basisOfStrengthSubstanceKey){var Le=a.generalService.getSubstanceByAnyId(O.basisOfStrengthSubstanceKey).subscribe(function(rt){rt&&(O._basisOfStrengthSubstanceUuid=rt.uuid,O._basisOfStrengthIngredientName=rt._name)});a.subscriptions.push(Le)}}})})}},{key:"isNumber",value:function(a){if(a){var x=Number(a);return!isNaN(x)}return!1}},{key:"handleSubstanceRetrivalError",value:function(){this.loadingService.setLoading(!1),this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:Tn.k.error,milisecondsToShow:4e3}),setTimeout(function(){},5e3)}},{key:"getSafeStructureImgUrl",value:function(a){var x=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(a,x,!0)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(E.I),e.Y36(A.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-application-details-base"]],decls:0,vars:0,template:function(l,a){},styles:[""]}),m}();function ko(m,D){if(1&m&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&m){var l=e.oxw();e.xp6(5),e.hij(" ",l.message,"\n")}}var br=function(D){return["/application",D,"edit"]};function Er(m,D){if(1&m&&(e.TgZ(0,"a",20),e._UZ(1,"mat-icon",21),e.qZA()),2&m){var l=e.oxw(2);e.Q6J("routerLink",e.VKq(1,br,l.application.id))}}function Tt(m,D){1&m&&e._UZ(0,"mat-icon",22)}function Ke(m,D){if(1&m&&(e.TgZ(0,"div",23),e.TgZ(1,"span",24),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.TgZ(4,"span",24),e._uU(5,"Create Date:"),e.qZA(),e._uU(6),e.ALo(7,"date"),e.TgZ(8,"span",24),e._uU(9,"Modified By:"),e.qZA(),e._uU(10),e.TgZ(11,"span",24),e._uU(12,"Modify Date:"),e.qZA(),e._uU(13),e.ALo(14,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(3),e.hij(" ",l.application.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(7,4,l.application.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",l.application.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(14,7,l.application.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function oe(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e._UZ(2,"br"),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" \u2022\xa0",l.indication," ")}}function Ce(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,oe,3,1,"span",1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l.indication)}}function at(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.TgZ(4,"a",30),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"td"),e.TgZ(7,"a",31),e._uU(8),e.qZA(),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+l.trialNumber,e.LSH),e.xp6(1),e.Oqu(l.trialNumber),e.xp6(2),e.Q6J("href",l.url,e.LSH),e.xp6(1),e.Oqu(l.url),e.xp6(2),e.hij(" ",l.title," ")}}function ee(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"table",25),e.TgZ(2,"thead"),e.TgZ(3,"tr",26),e.TgZ(4,"th",27),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",28),e._uU(7,"NCT Number"),e.qZA(),e.TgZ(8,"th",29),e._uU(9,"Clinical Trials Gov Website"),e.qZA(),e.TgZ(10,"th",29),e._uU(11,"Title"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,at,11,6,"tr",17),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(13),e.Q6J("ngForOf",l.application.clinicalTrialList)}}function me(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.ALo(9,"date"),e.qZA(),e.TgZ(10,"td"),e._uU(11),e.ALo(12,"date"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Oqu(l.productName),e.xp6(2),e.Oqu(l.sponsorName),e.xp6(2),e.Oqu(l.status),e.xp6(2),e.Oqu(e.xi3(9,5,l.statusDate,"MM/dd/yyyy")),e.xp6(3),e.Oqu(e.xi3(12,8,l.createDate,"MM/dd/yyyy"))}}function Ne(m,D){if(1&m&&(e.TgZ(0,"div",32),e._UZ(1,"br"),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",33),e.TgZ(4,"span",34),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-card-content"),e.TgZ(7,"table",25),e.TgZ(8,"thead"),e.TgZ(9,"tr",26),e.TgZ(10,"th",35),e._uU(11,"Product Name"),e.qZA(),e.TgZ(12,"th",36),e._uU(13,"Sponsor Name"),e.qZA(),e.TgZ(14,"th",36),e._uU(15,"Status"),e.qZA(),e.TgZ(16,"th",36),e._uU(17,"Status Date"),e.qZA(),e.TgZ(18,"th",29),e._uU(19,"Create Date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"tbody"),e.YNc(21,me,13,11,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(5),e.hij("Application History (",l.application.applicationHistoryList.length,")"),e.xp6(16),e.Q6J("ngForOf",l.application.applicationHistoryList)}}function Ye(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Oqu(l.technicalEffect)}}function ht(m,D){if(1&m&&(e.TgZ(0,"div",32),e._UZ(1,"br"),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",33),e.TgZ(4,"span",34),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-card-content"),e.TgZ(7,"table",25),e.TgZ(8,"thead"),e.TgZ(9,"tr",37),e.TgZ(10,"th"),e._uU(11,"Technical Effect"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,Ye,3,1,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(5),e.hij("Technical Effect (",l.application.productTechEffectList.length,")"),e.xp6(8),e.Q6J("ngForOf",l.application.productTechEffectList)}}function At(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Oqu(l.effectedProduct)}}function on(m,D){if(1&m&&(e.TgZ(0,"div",32),e._UZ(1,"br"),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",33),e.TgZ(4,"span",34),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-card-content"),e.TgZ(7,"table",25),e.TgZ(8,"thead"),e.TgZ(9,"tr",37),e.TgZ(10,"th"),e._uU(11,"Effected Product"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,At,3,1,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(5),e.hij("Effected Product (",l.application.productEffectedList.length,")"),e.xp6(8),e.Q6J("ngForOf",l.application.productEffectedList)}}function Pn(m,D){if(1&m&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"div",11),e._uU(3," Product Name: "),e.qZA(),e.TgZ(4,"div",12),e.TgZ(5,"span",42),e._uU(6),e.qZA(),e.qZA(),e.qZA(),e.TgZ(7,"div",10),e.TgZ(8,"div",11),e._uU(9," Product Name Type: "),e.qZA(),e.TgZ(10,"div",12),e._uU(11),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(6),e.Oqu(l.productName),e.xp6(5),e.hij(" ",l.productNameType," ")}}function Yn(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Pn,12,2,"div",41),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",l.applicationProductNameList)}}function Wn(m,D){1&m&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"div",11),e._uU(3," Product Name: "),e.qZA(),e._UZ(4,"div",12),e.qZA(),e.TgZ(5,"div",10),e.TgZ(6,"div",11),e._uU(7," Product Name Type: "),e.qZA(),e._UZ(8,"div",12),e.qZA(),e.qZA())}var st=function(D){return["/substances",D]};function $t(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",43),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,st,l._substanceUuid)),e.xp6(1),e.Oqu(l._ingredientName)}}function ze(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",43),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,st,l._basisOfStrengthSubstanceUuid)),e.xp6(1),e.Oqu(l._basisOfStrengthIngredientName)}}function Se(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,$t,3,4,"div",1),e.qZA(),e.TgZ(5,"td"),e.YNc(6,ze,3,4,"div",1),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.TgZ(23,"td"),e._uU(24),e.qZA(),e.TgZ(25,"td"),e._uU(26),e.ALo(27,"date"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Oqu(l.applicantIngredName),e.xp6(2),e.Q6J("ngIf",l._substanceUuid),e.xp6(2),e.Q6J("ngIf",l._basisOfStrengthSubstanceUuid),e.xp6(2),e.Oqu(l.ingredientType),e.xp6(2),e.Oqu(l.average),e.xp6(2),e.Oqu(l.low),e.xp6(2),e.Oqu(l.high),e.xp6(2),e.Oqu(l.lowLimit),e.xp6(2),e.Oqu(l.highLimit),e.xp6(2),e.Oqu(l.unit),e.xp6(2),e.Oqu(l.nonNumericValue),e.xp6(2),e.Oqu(l.grade),e.xp6(2),e.AsE("",l.reviewedBy,"\xa0\xa0",e.xi3(27,14,l.reviewDate,"MM/dd/yyyy hh:mm:ss a"),"")}}function ae(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",33),e._uU(2),e.qZA(),e.YNc(3,Yn,2,1,"div",38),e.YNc(4,Wn,9,0,"ng-template",null,39,e.W1O),e.TgZ(6,"div",9),e.TgZ(7,"div",10),e.TgZ(8,"div",11),e._uU(9," Dosage Form: "),e.qZA(),e.TgZ(10,"div",12),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",10),e.TgZ(13,"div",11),e._uU(14," Route of Administration: "),e.qZA(),e.TgZ(15,"div",12),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.TgZ(17,"div",9),e.TgZ(18,"div",10),e.TgZ(19,"div",11),e._uU(20," Amount: "),e.qZA(),e.TgZ(21,"div",12),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",10),e.TgZ(24,"div",11),e._uU(25," Unit of Presentation: "),e.qZA(),e.TgZ(26,"div",12),e._uU(27),e.qZA(),e.qZA(),e.qZA(),e.TgZ(28,"div",9),e.TgZ(29,"div",10),e.TgZ(30,"div",11),e._uU(31," Unit: "),e.qZA(),e.TgZ(32,"div",12),e._uU(33),e.qZA(),e.qZA(),e.TgZ(34,"div",10),e.TgZ(35,"div",11),e._uU(36," Reviewed By: "),e.qZA(),e.TgZ(37,"div",12),e._uU(38),e.ALo(39,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(40,"mat-card",40),e.TgZ(41,"mat-card-title",33),e.TgZ(42,"span",34),e._uU(43),e.qZA(),e.qZA(),e.TgZ(44,"mat-card-content"),e.TgZ(45,"table",25),e.TgZ(46,"thead"),e.TgZ(47,"tr",26),e.TgZ(48,"th"),e._uU(49,"Applicant Ingredient Name"),e.qZA(),e.TgZ(50,"th"),e._uU(51,"Ingredient Name"),e.qZA(),e.TgZ(52,"th"),e._uU(53,"Basis Of Strength"),e.qZA(),e.TgZ(54,"th"),e._uU(55,"Ingredient Type"),e.qZA(),e.TgZ(56,"th"),e._uU(57,"Average"),e.qZA(),e.TgZ(58,"th"),e._uU(59,"Low"),e.qZA(),e.TgZ(60,"th"),e._uU(61,"High"),e.qZA(),e.TgZ(62,"th"),e._uU(63,"Low Limit"),e.qZA(),e.TgZ(64,"th"),e._uU(65,"High Limit"),e.qZA(),e.TgZ(66,"th"),e._uU(67,"Unit"),e.qZA(),e.TgZ(68,"th"),e._uU(69,"Non Numeric Value"),e.qZA(),e.TgZ(70,"th"),e._uU(71,"Grade"),e.qZA(),e.TgZ(72,"th"),e._uU(73,"Reviewed By"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(74,"tbody"),e.YNc(75,Se,28,17,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(76,"br"),e._UZ(77,"br"),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.MAs(5);e.xp6(2),e.hij(" Product ",a+1," "),e.xp6(1),e.Q6J("ngIf",l.applicationProductNameList.length>0)("ngIfElse",x),e.xp6(8),e.hij(" ",l.dosageForm," "),e.xp6(5),e.hij(" ",l.routeAdmin," "),e.xp6(6),e.hij(" ",l.amount," "),e.xp6(5),e.hij(" ",l.unitPresentation," "),e.xp6(6),e.hij(" ",l.unit," "),e.xp6(5),e.AsE(" ",l.reviewedBy,"\xa0",e.xi3(39,12,l.reviewDate,"MM/dd/yyyy hh:mm:ss a")," "),e.xp6(5),e.hij("Substances in Application (",l.applicationIngredientList.length,")"),e.xp6(32),e.Q6J("ngForOf",l.applicationIngredientList)}}function de(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e.TgZ(4,"div",5),e.TgZ(5,"div"),e._uU(6," Application Details \xa0\xa0\xa0 "),e.YNc(7,Er,2,3,"a",6),e.TgZ(8,"span"),e.YNc(9,Tt,1,0,"mat-icon",7),e.qZA(),e.qZA(),e.YNc(10,Ke,15,10,"div",8),e.qZA(),e.qZA(),e.TgZ(11,"mat-card-content"),e.TgZ(12,"div",9),e.TgZ(13,"div",10),e.TgZ(14,"div",11),e._uU(15," Application Type and Number: "),e.qZA(),e.TgZ(16,"div",12),e.TgZ(17,"span",13),e.TgZ(18,"b"),e._uU(19),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"div",10),e.TgZ(21,"div",11),e._uU(22," Center: "),e.qZA(),e.TgZ(23,"div",12),e._uU(24),e.qZA(),e.qZA(),e.qZA(),e.TgZ(25,"div",9),e.TgZ(26,"div",10),e.TgZ(27,"div",11),e._uU(28," Sponsor Name: "),e.qZA(),e.TgZ(29,"div",12),e._uU(30),e.qZA(),e.qZA(),e.TgZ(31,"div",10),e.TgZ(32,"div",11),e._uU(33," Non Proprietary Name: "),e.qZA(),e.TgZ(34,"div",12),e._uU(35),e.qZA(),e.qZA(),e.qZA(),e.TgZ(36,"div",9),e.TgZ(37,"div",10),e.TgZ(38,"div",11),e._uU(39," Title: "),e.qZA(),e.TgZ(40,"div",12),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",10),e.TgZ(43,"div",11),e._uU(44," External Title: "),e.qZA(),e.TgZ(45,"div",12),e._uU(46),e.qZA(),e.qZA(),e.qZA(),e.TgZ(47,"div",9),e.TgZ(48,"div",10),e.TgZ(49,"div",11),e._uU(50," Application Sub Type: "),e.qZA(),e.TgZ(51,"div",12),e._uU(52),e.qZA(),e.qZA(),e.TgZ(53,"div",10),e.TgZ(54,"div",11),e._uU(55," Division Class Desc: "),e.qZA(),e.TgZ(56,"div",12),e._uU(57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(58,"div",9),e.TgZ(59,"div",10),e.TgZ(60,"div",11),e._uU(61," Application Status: "),e.qZA(),e.TgZ(62,"div",12),e._uU(63),e.qZA(),e.qZA(),e.TgZ(64,"div",10),e.TgZ(65,"div",11),e._uU(66," Submit Date: "),e.qZA(),e.TgZ(67,"div",12),e._uU(68),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"div",9),e.TgZ(70,"div",10),e.TgZ(71,"div",11),e._uU(72," Provenance: "),e.qZA(),e.TgZ(73,"div",12),e._uU(74),e.qZA(),e.qZA(),e.TgZ(75,"div",10),e.TgZ(76,"div",11),e._uU(77," Status Date: "),e.qZA(),e.TgZ(78,"div",12),e._uU(79),e.qZA(),e.qZA(),e.qZA(),e.TgZ(80,"div",9),e.TgZ(81,"div",10),e.TgZ(82,"div",11),e._uU(83," Public Domain: "),e.qZA(),e.TgZ(84,"div",12),e._uU(85),e.qZA(),e.qZA(),e.qZA(),e.TgZ(86,"div",9),e.TgZ(87,"div",14),e.TgZ(88,"div",15),e._uU(89," Indications: "),e.qZA(),e.TgZ(90,"div",16),e.YNc(91,Ce,2,1,"div",17),e.qZA(),e.qZA(),e.qZA(),e.TgZ(92,"div",9),e.TgZ(93,"div",14),e.TgZ(94,"div",15),e._uU(95," Clinical Trials: "),e.qZA(),e.TgZ(96,"div",16),e.YNc(97,ee,14,1,"div",1),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(98,Ne,22,2,"div",18),e.YNc(99,ht,14,2,"div",18),e.YNc(100,on,14,2,"div",18),e._UZ(101,"br"),e.TgZ(102,"div",19),e.TgZ(103,"mat-card",4),e.TgZ(104,"mat-card-content"),e.YNc(105,ae,78,15,"div",17),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(7),e.Q6J("ngIf",l.isAdmin),e.xp6(2),e.Q6J("ngIf",l.isAdmin),e.xp6(1),e.Q6J("ngIf",l.isAdmin),e.xp6(9),e.AsE("",l.application.appType,"\xa0",l.application.appNumber,""),e.xp6(5),e.hij(" ",l.application.center," "),e.xp6(6),e.hij(" ",l.application.sponsorName," "),e.xp6(5),e.hij(" ",l.application.nonProprietaryName," "),e.xp6(6),e.hij(" ",l.application.title," "),e.xp6(5),e.hij(" ",l.application.externalTitle," "),e.xp6(6),e.hij(" ",l.application.appSubType," "),e.xp6(5),e.hij(" ",l.application.divisionClassDesc," "),e.xp6(6),e.hij(" ",l.application.status," "),e.xp6(5),e.hij(" ",l.application.submitDate," "),e.xp6(6),e.hij(" ",l.application.provenance," "),e.xp6(5),e.hij(" ",l.application.statusDate," "),e.xp6(6),e.hij(" ",l.application.publicDomain," "),e.xp6(6),e.Q6J("ngForOf",l.application.applicationIndicationList),e.xp6(6),e.Q6J("ngIf",l.application.clinicalTrialList.length>0),e.xp6(1),e.Q6J("ngIf",l.application.applicationHistoryList.length>0),e.xp6(1),e.Q6J("ngIf",l.application.productTechEffectList.length>0),e.xp6(1),e.Q6J("ngIf",l.application.productEffectedList.length>0),e.xp6(5),e.Q6J("ngForOf",l.application.applicationProductList)}}var ye=function(){var m=function(D){(0,Aa.Z)(a,D);var l=(0,Ra.Z)(a);function a(x,O,W,Le,rt,Ht,In,ei,_i,Mi){var qi;return(0,P.Z)(this,a),(qi=l.call(this,x,O,W,Le,rt,Ht,In,ei,Mi)).generalService=O,qi.activatedRoute=W,qi.authService=_i,qi}return(0,t.Z)(a,[{key:"ngOnInit",value:function(){var O=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(W){O.isAdmin=W}),this.id=this.activatedRoute.snapshot.params.id,this.appType=this.activatedRoute.snapshot.params.appType,this.appNumber=this.activatedRoute.snapshot.params.appNumber,(0,wr.Z)((0,ia.Z)(a.prototype),"ngOnInit",this).call(this)}}]),a}(oo);return m.\u0275fac=function(l){return new(l||m)(e.Y36(E.I),e.Y36(A.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(Ie.e),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-application-details"]],features:[e.qOj],decls:6,vars:2,consts:[["class","colororange padtop50px padleft50px",4,"ngIf"],[4,"ngIf"],[1,"colororange","padtop50px","padleft50px"],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"divflexrow"],["target","_blank","matTooltip","Edit GSRS Application Record (opens in new window)",3,"routerLink",4,"ngIf"],["class","small-icon","svgIcon","open_in_new","matTooltip","opens in new window",4,"ngIf"],["class","width650px textalignright font11px",4,"ngIf"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"colorblue","font18px","fontbold"],[1,"row-property-2"],[1,"row-property-key-2"],[1,"row-property-value-2"],[4,"ngFor","ngForOf"],["class","",4,"ngIf"],[1,"details-container"],["target","_blank","matTooltip","Edit GSRS Application Record (opens in new window)",3,"routerLink"],["svgIcon","edit"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],[1,"width650px","textalignright","font11px"],[1,"colorgray"],[1,"blueTable"],["height","30px","valign","top"],["width","50px"],["width","60px"],["width","100px"],["target","_blank","title","see clinicaltrials.gov",3,"href"],["target","_blank","matTooltip","View Clinical Trial US Record",3,"href"],[1,""],[1,"title2"],[1,"title3"],["width","200px"],["width","150px"],["height","30px"],[4,"ngIf","ngIfElse"],["noRecordProdName",""],[1,"bordergray","margintop10px"],["class","row",4,"ngFor","ngForOf"],[1,"colororange","font14px","fontbold"],["target","_blank",3,"routerLink"]],template:function(l,a){1&l&&(e.YNc(0,ko,6,1,"div",0),e.YNc(1,de,106,23,"div",1),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._UZ(5,"br")),2&l&&(e.Q6J("ngIf",a.message),e.xp6(1),e.Q6J("ngIf",a.application&&a.application.id))},directives:[p.O5,s.a8,s.n5,d.yS,f.gM,I.Hw,s.dn,p.sg],pipes:[p.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;width:100%;max-width:100%}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px rgba(0,0,0,.12)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:7px;font-size:12px;font-weight:500}.row-property-value[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:20%;max-width:20%;padding:6px;font-size:12px;font-weight:500}.row-property-value-2[_ngcontent-%COMP%]{min-width:80%;max-width:80%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:#0857d6;padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px;font-weight:500;padding-bottom:5px}.title3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:14px;color:navy}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft30px[_ngcontent-%COMP%]{padding-left:30px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font18px[_ngcontent-%COMP%]{font-size:18px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:gray}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:#e55913}.colorblue[_ngcontent-%COMP%]{color:#0857d6}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.width650px[_ngcontent-%COMP%]{width:650px;max-width:650px}.textalignright[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid #1C6EA4;background-color:#f7f7f7;width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid #AAAAAA;padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:#DAE9F5}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:#e8ebe1;border-bottom:1px solid #444444}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:#1a1a1a;border-left:1px solid #D0E4F5}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#fff;background:#D0E4F5;border-top:2px solid #444444}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:#1C6EA4;color:#fff;padding:2px 8px;border-radius:5px}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:0}.margintopneg10[_ngcontent-%COMP%]{margin-top:-10px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid red}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px rgba(0,0,0,.12)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}}"]}),m}(),Be=n(9292);function nt(m,D){if(1&m&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&m){var l=e.oxw();e.xp6(5),e.hij(" ",l.message,"\n")}}function Dt(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e._UZ(2,"br"),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" \u2022\xa0",l.indication," ")}}var cn=function(D){return["/substances",D]};function kn(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,cn,l._substanceUuid)),e.xp6(1),e.Oqu(l._ingredientname)}}function ni(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(2).$implicit;e.hij(" ",l._ingredientname," ")}}function Ti(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,kn,3,4,"div",20),e.YNc(2,ni,1,1,"ng-template",null,21,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",a._substanceUuid)("ngIfElse",l)}}function Pa(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"img",23),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",l._substanceUuid)}}function ra(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e.YNc(8,Ti,4,2,"div",1),e.qZA(),e.TgZ(9,"td"),e.YNc(10,Pa,2,1,"div",1),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Oqu(l.productNo),e.xp6(2),e.Oqu(l.partNo),e.xp6(2),e.Q6J("ngIf",l._ingredientname),e.xp6(2),e.Q6J("ngIf",l._substanceUuid),e.xp6(2),e.Oqu(l.substanceKey),e.xp6(2),e.Oqu(l._approvalID),e.xp6(2),e.Oqu(l.activity),e.xp6(2),e.Oqu(l.potency),e.xp6(2),e.Oqu(l._parentSubstanceKey),e.xp6(2),e.Oqu(l._parentDisplayTerm)}}function to(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e._uU(4," Application Details\xa0"),e.TgZ(5,"span",5),e._uU(6,"(Darrts)"),e.qZA(),e.qZA(),e.TgZ(7,"mat-card-content"),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e._uU(11," Product Name: "),e.qZA(),e.TgZ(12,"div",9),e.TgZ(13,"span",10),e._uU(14),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"div",7),e.TgZ(16,"div",8),e._uU(17," Application Type Number: "),e.qZA(),e.TgZ(18,"div",9),e.TgZ(19,"span",11),e.TgZ(20,"b"),e._uU(21),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(22,"div",6),e.TgZ(23,"div",7),e.TgZ(24,"div",8),e._uU(25," Sponsor Name: "),e.qZA(),e.TgZ(26,"div",9),e._uU(27),e.qZA(),e.qZA(),e.TgZ(28,"div",7),e.TgZ(29,"div",8),e._uU(30," Dosage Form Desc: "),e.qZA(),e.TgZ(31,"div",9),e._uU(32),e.qZA(),e.qZA(),e.qZA(),e.TgZ(33,"div",6),e.TgZ(34,"div",7),e.TgZ(35,"div",8),e._uU(36," Application Status: "),e.qZA(),e.TgZ(37,"div",9),e._uU(38),e.qZA(),e.qZA(),e.TgZ(39,"div",7),e.TgZ(40,"div",8),e._uU(41," Status Date: "),e.qZA(),e.TgZ(42,"div",9),e._uU(43),e.ALo(44,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(45,"div",6),e.TgZ(46,"div",7),e.TgZ(47,"div",8),e._uU(48," Division Class Number: "),e.qZA(),e.TgZ(49,"div",9),e._uU(50),e.qZA(),e.qZA(),e.TgZ(51,"div",7),e.TgZ(52,"div",8),e._uU(53," Division Class Desc: "),e.qZA(),e.TgZ(54,"div",9),e._uU(55),e.qZA(),e.qZA(),e.qZA(),e.TgZ(56,"div",6),e.TgZ(57,"div",7),e.TgZ(58,"div",8),e._uU(59," Application Sub Type Desc: "),e.qZA(),e.TgZ(60,"div",9),e._uU(61),e.qZA(),e.qZA(),e.TgZ(62,"div",7),e.TgZ(63,"div",8),e._uU(64," Route of Administration: "),e.qZA(),e.TgZ(65,"div",9),e._uU(66),e.qZA(),e.qZA(),e.qZA(),e.TgZ(67,"div",6),e.TgZ(68,"div",12),e.TgZ(69,"div",13),e._uU(70," Indication: "),e.qZA(),e.TgZ(71,"div",14),e.YNc(72,Dt,3,1,"div",15),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(73,"div",16),e.TgZ(74,"mat-card",4),e.TgZ(75,"mat-card-title",17),e._uU(76),e.qZA(),e.TgZ(77,"mat-card-content"),e.TgZ(78,"table",18),e.TgZ(79,"thead"),e.TgZ(80,"tr",19),e.TgZ(81,"th"),e._uU(82,"#"),e.qZA(),e.TgZ(83,"th"),e._uU(84,"Product No"),e.qZA(),e.TgZ(85,"th"),e._uU(86,"Part No"),e.qZA(),e.TgZ(87,"th"),e._uU(88,"Substance Name"),e.qZA(),e.TgZ(89,"th"),e._uU(90,"Structure"),e.qZA(),e.TgZ(91,"th"),e._uU(92,"Substance Key"),e.qZA(),e.TgZ(93,"th"),e._uU(94,"Unii"),e.qZA(),e.TgZ(95,"th"),e._uU(96,"Activity"),e.qZA(),e.TgZ(97,"th"),e._uU(98,"Potency"),e.qZA(),e.TgZ(99,"th"),e._uU(100,"Parent Bdnum"),e.qZA(),e.TgZ(101,"th"),e._uU(102,"Parent Substance Name"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(103,"tbody"),e.YNc(104,ra,23,11,"tr",15),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(14),e.Oqu(l.application.productName),e.xp6(7),e.AsE("",l.application.appType,"\xa0",l.application.appNumber,""),e.xp6(6),e.hij(" ",l.application.sponsorName," "),e.xp6(5),e.hij(" ",l.application.dosageFormDesc," "),e.xp6(6),e.hij(" ",l.application.status," "),e.xp6(5),e.hij(" ",e.xi3(44,14,l.application.statusDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",l.application.divisionClass," "),e.xp6(5),e.hij(" ",l.application.divisionClassDesc," "),e.xp6(6),e.hij(" ",l.application.appSubTypeDesc," "),e.xp6(5),e.hij(" ",l.application.routeOfAdmin," "),e.xp6(6),e.Q6J("ngForOf",l.application.indicationList),e.xp6(4),e.hij(" Substances in Application (",l.application.ingredientList.length,") "),e.xp6(28),e.Q6J("ngForOf",l.application.ingredientList)}}function Ua(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,to,105,17,"div",1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.application.appType&&l.application.appNumber)}}var la=function(){var m=function(D){(0,Aa.Z)(a,D);var l=(0,Ra.Z)(a);function a(x,O,W,Le,rt,Ht,In,ei,_i){var Mi;return(0,P.Z)(this,a),(Mi=l.call(this,x,O,W,Le,rt,Ht,In,ei,_i)).applicationService=x,Mi.generalService=O,Mi}return(0,t.Z)(a,[{key:"ngOnInit",value:function(){this.appType=this.activatedRoute.snapshot.params.appType,this.appNumber=this.activatedRoute.snapshot.params.appNumber,this.loadingService.setLoading(!0),null!=this.appType&&null!=this.appNumber?this.getApplicationDarrtsDetails():this.handleSubstanceRetrivalError()}},{key:"getApplicationDarrtsDetails",value:function(){var O=this,W=this.applicationService.getApplicationDarrtsDetails(this.appType,this.appNumber).subscribe(function(Le){O.application=Le,Le&&(O.titleService.setTitle("Application "+O.application.appType+" "+O.application.appNumber),O.getSubstanceBySubstanceKey()),O.loadingService.setLoading(!1)},function(Le){O.message="No Application (Darrts) record found",O.loadingService.setLoading(!1)});this.subscriptions.push(W)}},{key:"getSubstanceBySubstanceKey",value:function(){var O=this;null!=this.application&&this.application.ingredientList.forEach(function(W){if(null!=W&&W.substanceKey){var Le=O.generalService.getSubstanceByAnyId(W.substanceKey).subscribe(function(Ht){Ht&&(W._substanceUuid=Ht.uuid,W._ingredientname=Ht._name,W._approvalID=Ht._approvalIDDisplay)});O.subscriptions.push(Le);var rt=O.applicationService.getSubstanceParentConcept(W.substanceKey).subscribe(function(Ht){Ht&&(W._parentSubstanceKey=Ht.parentSubstanceKey,W._parentDisplayTerm=Ht.parentDisplayTerm)});O.subscriptions.push(rt)}})}}]),a}(oo);return m.\u0275fac=function(l){return new(l||m)(e.Y36(E.I),e.Y36(A.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-application-darrts-details"]],features:[e.qOj],decls:2,vars:2,consts:[["class","colororange padtop50px padleft50px",4,"ngIf"],[4,"ngIf"],[1,"colororange","padtop50px","padleft50px"],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"font10px","colorgray"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"colororange","font14px","fontbold"],[1,"colorblue","font16px","fontbold"],[1,"row-property-2"],[1,"row-property-key-2"],[1,"row-property-value-2"],[4,"ngFor","ngForOf"],[1,"details-container"],[1,"title2"],[1,"blueTable"],["height","30px","valign","top"],[4,"ngIf","ngIfElse"],["noSubUuid",""],["target","_blank",3,"routerLink"],["appSubstanceImage","",1,"structure-img",3,"entityId"]],template:function(l,a){1&l&&(e.YNc(0,nt,6,1,"div",0),e.YNc(1,Ua,2,1,"div",1)),2&l&&(e.Q6J("ngIf",a.message),e.xp6(1),e.Q6J("ngIf",a.application))},directives:[p.O5,s.a8,s.n5,s.dn,p.sg,d.yS,Be.m],pipes:[p.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-top:20px}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px rgba(0,0,0,.12)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-size:12px;font-weight:500}.row-property-value[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:17%;max-width:17%;padding:6px;font-size:12px;font-weight:500}.row-property-value-2[_ngcontent-%COMP%]{min-width:83%;max-width:83%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:#0857d6;padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:gray}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:#e55913}.colorblue[_ngcontent-%COMP%]{color:#0857d6}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid #1C6EA4;background-color:#f2f2f2;width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid #AAAAAA;padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:#f5faee}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:#e8ebe1;border-bottom:1px solid #444444}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:#1a1a1a;border-left:1px solid #D0E4F5;padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#fff;background:#D0E4F5;border-top:2px solid #444444}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:#1C6EA4;color:#fff;padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid red}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px rgba(0,0,0,.12)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}}"]}),m}(),ka=n(42827),Qa=n(49241);function go(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",10),e.NdJ("click",function(){e.CHM(l);var O=e.oxw();return O.expand=!O.expand}),e._uU(1),e.qZA()}if(2&m){var a=e.oxw();e.xp6(1),e.Oqu(a.expand?"collapse":"expand")}}function Ni(m,D){if(1&m&&(e.TgZ(0,"div",11),e._UZ(1,"ngx-json-viewer",12),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("json",l.json)("expanded",l.expand)}}function Rl(m,D){if(1&m&&(e.TgZ(0,"div",13),e.TgZ(1,"textarea",14),e._uU(2),e.ALo(3,"json"),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(2),e.Oqu(e.lcZ(3,1,l.json))}}var Ts=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.sanitizer=l,this.data=a,this.expand=!0,this.raw=!1}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.json=this.data;var a=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.json)));this.downloadJsonHref=a}},{key:"close",value:function(){this.dialogRef.close()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(sn.H7),e.Y36(qt.WI))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-json-fda-dialog"]],decls:19,vars:6,consts:[["mat-dialog-title",""],["mat-flat-button","","color","primary",3,"click"],["mat-flat-button","",3,"click",4,"ngIf"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"href","download"],["mat-dialog-content",""],["class","formatted",4,"ngIf"],["class","raw",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","mat-dialog-close",""],["mat-flat-button","",3,"click"],[1,"formatted"],[3,"json","expanded"],[1,"raw"],[1,"raw-text"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"h1"),e._uU(2,"JSON Object structure"),e.qZA(),e.TgZ(3,"div"),e.TgZ(4,"button",1),e.NdJ("click",function(){return a.raw=!a.raw}),e._uU(5),e.qZA(),e._uU(6,"\xa0 "),e.YNc(7,go,2,1,"button",2),e._UZ(8,"span",3),e.TgZ(9,"a",4),e.TgZ(10,"span"),e._uU(11,"Export JSON"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"div",5),e.YNc(13,Ni,2,2,"div",6),e.YNc(14,Rl,4,3,"div",7),e.qZA(),e.TgZ(15,"div",8),e.TgZ(16,"button",9),e._uU(17,"Close"),e.qZA(),e._UZ(18,"span",3),e.qZA()),2&l&&(e.xp6(5),e.Oqu(a.raw?"Show Object":"Show Raw"),e.xp6(2),e.Q6J("ngIf",!a.raw),e.xp6(2),e.MGl("download","",a.json.appType,".json"),e.Q6J("href",a.downloadJsonHref,e.LSH),e.xp6(4),e.Q6J("ngIf",!a.raw),e.xp6(1),e.Q6J("ngIf",a.raw))},directives:[qt.uh,T.lW,p.O5,T.zs,qt.xY,Qa.Y,qt.H8,qt.ZT],pipes:[p.Ts],styles:[".raw[_ngcontent-%COMP%]{width:100%;min-height:200px}.formatted[_ngcontent-%COMP%]{width:100%}.raw-text[_ngcontent-%COMP%]{min-height:400px}.actions[_ngcontent-%COMP%]{padding-bottom:10px}"]}),m}(),$i=n(26477);function us(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",14),e.NdJ("click",function(){return e.CHM(l),e.oxw().toggleValidation()}),e._uU(1),e._UZ(2,"mat-icon",15),e.qZA()}if(2&m){var a=e.oxw();e.Q6J("disabled",a.isLoading),e.xp6(1),e.hij(" ",a.showSubmissionMessages?"Hide":"Show"," messages "),e.xp6(1),e.Q6J("svgIcon",a.showSubmissionMessages?"chevron_up":"chevron_down")}}function Io(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",20),e.NdJ("click",function(){return e.CHM(l),e.oxw(3).confirmDeleteApplication()}),e._uU(2," Delete "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.qZA()}}var ds=function(){return["/browse-applications"]},ps=function(){return["/application/register"]};function Qn(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"button",16),e._uU(2," Browse Application "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.TgZ(4,"button",17),e._uU(5," Register New Application "),e.qZA(),e._uU(6,"\xa0\xa0\xa0 "),e.TgZ(7,"a",18),e._UZ(8,"mat-icon",19),e._uU(9," View Application"),e.qZA(),e._uU(10," \xa0\xa0\xa0 "),e.YNc(11,Io,4,0,"span",5),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("routerLink",e.DdM(4,ds)),e.xp6(3),e.Q6J("routerLink",e.DdM(5,ps)),e.xp6(3),e.MGl("routerLink","/application/",l.application.id,""),e.xp6(4),e.Q6J("ngIf",l.isAdmin)}}function Xi(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,Qn,12,6,"span",5),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.application.id)}}function Qr(m,D){if(1&m&&(e.TgZ(0,"div",21),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.submissionMessage," ")}}function qa(m,D){1&m&&(e.TgZ(0,"div",21),e._uU(1," Please correct or dismiss the following errors and submit again: "),e.qZA())}function bi(m,D){if(1&m&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.TgZ(2,"a",30),e._uU(3),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Q6J("href",l.href,e.LSH),e.xp6(1),e.Oqu(l.text)}}function Oi(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",31),e.NdJ("click",function(){e.CHM(l);var x=e.oxw().index;return e.oxw(3).dismissValidationMessage(x)}),e._UZ(1,"mat-icon",32),e.qZA()}}function Pi(m,D){if(1&m&&(e.TgZ(0,"div",25),e.TgZ(1,"div",26),e._uU(2),e.qZA(),e.TgZ(3,"div",27),e._uU(4),e.YNc(5,bi,4,2,"span",28),e.qZA(),e.YNc(6,Oi,2,0,"button",29),e.qZA()),2&m){var l=D.$implicit,a=e.oxw(3);e.xp6(1),e.Q6J("ngClass","ERROR"==l.messageType?"error-message":"warning-message"),e.xp6(1),e.hij(" ",l.messageType,""),e.xp6(2),e.Oqu(l.message),e.xp6(1),e.Q6J("ngForOf",l.links),e.xp6(1),e.Q6J("ngIf","ERROR"!=l.messageType&&!a.approving)}}function fa(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,qa,2,0,"div",9),e.YNc(2,Pi,7,5,"div",24),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!l.serverError&&!l.approving),e.xp6(1),e.Q6J("ngForOf",l.validationMessages)}}function nr(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.YNc(1,fa,3,2,"span",5),e.TgZ(2,"div",22),e._UZ(3,"span",4),e.TgZ(4,"button",23),e.NdJ("click",function(){return e.CHM(l),e.oxw().submit()}),e._uU(5),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(1),e.Q6J("ngIf",a.validationMessages.length>0),e.xp6(3),e.Q6J("disabled",a.isLoading||!1===a.validationResult),e.xp6(1),e.hij("",a.validationMessages&&a.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function vo(m,D){1&m&&(e.TgZ(0,"span",42),e._uU(1," Provenance: DARRTS (some fields are non-editable) "),e.qZA())}function As(m,D){if(1&m&&(e.TgZ(0,"div",38),e.TgZ(1,"div",39),e.YNc(2,vo,2,0,"span",40),e.qZA(),e._UZ(3,"br"),e.TgZ(4,"div"),e.TgZ(5,"span",41),e._uU(6,"Created By:"),e.qZA(),e._uU(7),e.TgZ(8,"span",41),e._uU(9,"Create Date:"),e.qZA(),e._uU(10),e.ALo(11,"date"),e.TgZ(12,"span",41),e._uU(13,"Modified By:"),e.qZA(),e._uU(14),e.TgZ(15,"span",41),e._uU(16,"Modify Date:"),e.qZA(),e._uU(17),e.ALo(18,"date"),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(2),e.Q6J("ngIf",l.isDisableData),e.xp6(5),e.hij(" ",l.application.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(11,5,l.application.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",l.application.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(18,8,l.application.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Go(m,D){if(1&m&&(e.TgZ(0,"mat-hint"),e.TgZ(1,"span",63),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(2),e.Oqu(l.submitDateMessage)}}function fs(m,D){if(1&m&&(e.TgZ(0,"mat-hint"),e.TgZ(1,"span",63),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(2),e.Oqu(l.statusDateMessage)}}function ma(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",69),e.NdJ("click",function(){return e.CHM(l),e.oxw(4).addNewIndication()}),e._UZ(1,"mat-icon",70),e.qZA()}}function Br(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",57),e.TgZ(2,"mat-form-field",64),e.TgZ(3,"input",65),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.indication=Le}),e.qZA(),e.qZA(),e.TgZ(4,"span",66),e.YNc(5,ma,2,0,"button",67),e.qZA(),e.TgZ(6,"button",68),e.NdJ("click",function(){var Le=e.CHM(l),rt=Le.index,Ht=Le.$implicit;return e.oxw(3).confirmDeleteIndication(rt,Ht.indication)}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever "),e.qZA(),e.qZA(),e._UZ(9,"br"),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw(3);e.xp6(3),e.Q6J("ngModel",a.indication),e.xp6(2),e.Q6J("ngIf",0==x),e.xp6(1),e.Q6J("disabled",1==O.application.applicationIndicationList.length),e.xp6(1),e.ekj("disabled",1==O.application.applicationIndicationList.length)}}function Ps(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-card",43),e.TgZ(1,"mat-card-content"),e.TgZ(2,"div",44),e.TgZ(3,"app-cv-input",45),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).application.center=O}),e.qZA(),e.TgZ(4,"app-cv-input",46),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).application.appType=O}),e.qZA(),e.TgZ(5,"mat-form-field",47),e.TgZ(6,"input",48),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.appNumber=O}),e.qZA(),e.qZA(),e.TgZ(7,"app-cv-input",49),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).application.status=O}),e.qZA(),e.TgZ(8,"mat-form-field",47),e.TgZ(9,"input",50),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.submitDate=O})("change",function(){return e.CHM(l),e.oxw(2).validateSubmitDate()}),e.qZA(),e.YNc(10,Go,3,1,"mat-hint",5),e.qZA(),e.TgZ(11,"mat-form-field",47),e.TgZ(12,"input",51),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.statusDate=O})("change",function(){return e.CHM(l),e.oxw(2).validateStatusDate()}),e.qZA(),e.YNc(13,fs,3,1,"mat-hint",5),e.qZA(),e.qZA(),e.TgZ(14,"div",44),e.TgZ(15,"app-cv-input",52),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).application.appSubType=O}),e.qZA(),e.TgZ(16,"mat-form-field",53),e.TgZ(17,"input",54),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.divisionClassDesc=O}),e.qZA(),e.qZA(),e.TgZ(18,"app-cv-input",55),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).application.publicDomain=O}),e.qZA(),e.TgZ(19,"mat-form-field",47),e.TgZ(20,"input",56),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.nonProprietaryName=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",57),e.TgZ(22,"mat-form-field",58),e.TgZ(23,"input",59),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.sponsorName=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(24,"div",57),e.TgZ(25,"mat-form-field",58),e.TgZ(26,"input",60),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.externalTitle=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(27,"div",57),e.TgZ(28,"mat-form-field",58),e.TgZ(29,"input",61),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).application.title=O}),e.qZA(),e.qZA(),e.qZA(),e.YNc(30,Br,10,5,"div",28),e.TgZ(31,"app-application-product-form",62),e.NdJ("ingredientMessageOut",function(O){return e.CHM(l),e.oxw(2).ingredientMessageOutChange(O)})("basisOfStrengthMessageOut",function(O){return e.CHM(l),e.oxw(2).basisOfStrengthMessageOutChange(O)}),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(3),e.Q6J("disable",a.isDisableData)("model",a.application.center),e.xp6(1),e.Q6J("disable",a.isDisableData)("model",a.application.appType),e.xp6(2),e.Q6J("disabled",a.isDisableData)("ngModel",a.application.appNumber),e.xp6(1),e.Q6J("disable",a.isDisableData)("model",a.application.status),e.xp6(2),e.Q6J("disabled",a.isDisableData)("ngModel",a.application.submitDate),e.xp6(1),e.Q6J("ngIf",a.submitDateMessage),e.xp6(2),e.Q6J("disabled",a.isDisableData)("ngModel",a.application.statusDate),e.xp6(1),e.Q6J("ngIf",a.statusDateMessage),e.xp6(2),e.Q6J("disable",a.isDisableData)("model",a.application.appSubType),e.xp6(2),e.Q6J("disabled",a.isDisableData)("ngModel",a.application.divisionClassDesc),e.xp6(1),e.Q6J("model",a.application.publicDomain),e.xp6(2),e.Q6J("ngModel",a.application.nonProprietaryName),e.xp6(3),e.Q6J("disabled",a.isDisableData)("ngModel",a.application.sponsorName),e.xp6(3),e.Q6J("disabled",a.isDisableData)("ngModel",a.application.externalTitle),e.xp6(3),e.Q6J("ngModel",a.application.title),e.xp6(1),e.Q6J("ngForOf",a.application.applicationIndicationList),e.xp6(1),e.Q6J("application",a.application)}}function Sn(m,D){if(1&m&&(e.TgZ(0,"div",33),e.TgZ(1,"div",34),e.TgZ(2,"div",35),e._uU(3),e.qZA(),e.YNc(4,As,19,11,"div",36),e.qZA(),e.YNc(5,Ps,32,27,"mat-card",37),e._UZ(6,"br"),e._UZ(7,"br"),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.hij(" ",l.title," "),e.xp6(1),e.Q6J("ngIf",l.application.id),e.xp6(1),e.Q6J("ngIf",l.application)}}var Rn=function(){return["/home"]},Fn=function(D,l){return{"submission-messages":!0,collapsed:D,expanded:l}},mi=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar){(0,P.Z)(this,D),this.applicationService=l,this.generalService=a,this.authService=x,this.loadingService=O,this.mainNotificationService=W,this.gaService=Le,this.utilsService=rt,this.cvService=Ht,this.activatedRoute=In,this.router=ei,this.overlayContainerService=_i,this.dialog=Mi,this.fb=qi,this.titleService=Ar,this.isLoading=!0,this.showSubmissionMessages=!1,this.validationMessages=[],this.validationResult=!1,this.subscriptions=[],this.isDisableData=!1,this.username=null,this.title=null,this.submitDateMessage="",this.statusDateMessage="",this.isAdmin=!1}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.isAdmin=this.authService.hasRoles("admin"),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.username=this.authService.getUser();var x=this.activatedRoute.params.subscribe(function(O){if(O.id){var W=O.id;a.title="Update Application",W!==a.id&&(a.id=W,a.gaService.sendPageView("Application Edit"),a.getApplicationDetails())}else a.title="Register New Application",setTimeout(function(){a.gaService.sendPageView("Application Register"),a.titleService.setTitle("Register Application"),a.applicationService.loadApplication(),a.application=a.applicationService.application,a.loadingService.setLoading(!1),a.isLoading=!1})},function(O){a.loadingService.setLoading(!1)});this.subscriptions.push(x)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getApplicationDetails",value:function(a){var x=this;this.applicationService.getApplicationById(this.id).subscribe(function(O){O?(x.applicationService.loadApplication(O),x.application=x.applicationService.application,x.application&&(x.titleService.setTitle("Edit Application "+x.application.appType+" "+x.application.appNumber),x.application.provenance&&"darrts"===x.application.provenance.toLowerCase()&&(x.isDisableData=!0))):x.handleApplicationRetrivalError(),x.loadingService.setLoading(!1),x.isLoading=!1},function(O){x.gaService.sendException("getApplicationDetails: error from API call"),x.loadingService.setLoading(!1),x.isLoading=!1,x.handleApplicationRetrivalError()})}},{key:"validate",value:function(a){var x=this;this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.validateClient(),0===this.validationMessages.length&&this.applicationService.validateApplication().pipe((0,Ee.q)(1)).subscribe(function(O){x.submissionMessage=null,x.validationMessages=O.validationMessages.filter(function(W){return"ERROR"===W.messageType.toUpperCase()||"WARNING"===W.messageType.toUpperCase()}),x.validationResult=O.valid,x.showSubmissionMessages=!0,x.loadingService.setLoading(!1),x.isLoading=!1,0===x.validationMessages.length&&!0===x.validationResult&&(x.submissionMessage="Application is Valid. Would you like to submit?")},function(O){x.addServerError(O),x.loadingService.setLoading(!1),x.isLoading=!1})}},{key:"setValidationMessage",value:function(a){var x={};x.message=a,x.messageType="ERROR",this.validationMessages.push(x),this.validationResult=!1}},{key:"validateClient",value:function(){var a=this;this.submissionMessage=null,this.validationMessages=[],this.validationResult=!0,(null==this.application.center||null!=this.application.center&&this.application.center.length<1)&&this.setValidationMessage("Center is required"),(null==this.application.appType||null!=this.application.appType&&this.application.appType.length<1)&&this.setValidationMessage("Application Type is required"),(null==this.application.appNumber||null!=this.application.appNumber&&this.application.appNumber.length<1)&&this.setValidationMessage("Application Number is required"),null!==this.submitDateMessage&&this.submitDateMessage.length>0&&this.setValidationMessage(this.submitDateMessage),null!==this.statusDateMessage&&this.statusDateMessage.length>0&&this.setValidationMessage(this.statusDateMessage),null!=this.application&&this.application.applicationProductList.forEach(function(x){null!=x&&(x.amount&&!1===a.isNumber(x.amount)&&a.setValidationMessage("Amount must be a number"),x.applicationIngredientList.forEach(function(O){null!=O&&(O.average&&!1===a.isNumber(O.average)&&a.setValidationMessage("Average must be a number"),O.low&&!1===a.isNumber(O.low)&&a.setValidationMessage("Low must be a number"),O.high&&!1===a.isNumber(O.high)&&a.setValidationMessage("High must be a number"),O.lowLimit&&!1===a.isNumber(O.lowLimit)&&a.setValidationMessage("Low Limit must be a number"),O.highLimit&&!1===a.isNumber(O.highLimit)&&a.setValidationMessage("High Limit must be a number"),O.$$ingredientNameValidation&&a.setValidationMessage(O.$$ingredientNameValidation),O.$$basisOfStrengthValidation&&a.setValidationMessage(O.$$basisOfStrengthValidation))}))}),this.validationMessages.length>0&&(this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1)}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"addServerError",value:function(a){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var x={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};a&&a.error&&a.error.message?x.message="Server Error "+(a.status+": "||0)+a.error.message:a&&a.error&&"string"==typeof a.error?x.message="Server Error "+(a.status+": "||0)+a.error:a&&a.message&&(x.message="Server Error "+(a.status+": "||0)+a.message),this.validationMessages=[x],this.showSubmissionMessages=!0}},{key:"submit",value:function(){var a=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.application=this.cleanApplication(),this.application&&(this.application.id||null==this.application.provenance&&(this.application.provenance="GSRS")),this.applicationService.saveApplication().subscribe(function(x){a.loadingService.setLoading(!1),a.isLoading=!1,a.validationMessages=null,a.submissionMessage="Application was saved successfully!",a.showSubmissionMessages=!0,a.validationResult=!1,setTimeout(function(){if(a.showSubmissionMessages=!1,a.submissionMessage="",x.id){a.applicationService.bypassUpdateCheck();var O=x.id;a.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},a.router.onSameUrlNavigation="reload",a.router.navigate(["/application",O,"edit"])}},4e3)},function(x){a.loadingService.setLoading(!1)})}},{key:"handleApplicationRetrivalError",value:function(){var a=this;this.mainNotificationService.setNotification({message:"The application you're trying to edit doesn't exist.",type:Tn.k.error,milisecondsToShow:4e3}),setTimeout(function(){a.router.navigate(["/application/register"]),a.applicationService.loadApplication()},5e3)}},{key:"getVocabularies",value:function(){}},{key:"confirmDeleteApplication",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete this Application?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteApplication()})}},{key:"deleteApplication",value:function(){var a=this;this.applicationService.deleteApplication().subscribe(function(x){a.applicationService.bypassUpdateCheck(),a.displayMessageAfterDeleteApp()},function(x){console.log(x)})}},{key:"displayMessageAfterDeleteApp",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"This application record was deleted successfully",type:"home"}}).afterClosed().subscribe(function(O){a.router.navigate(["/home"])})}},{key:"cleanApplication",value:function(){var a=JSON.stringify(this.application),x=JSON.parse(a);return x.applicationProductList.forEach(function(O){null!=O&&O.applicationIngredientList.forEach(function(W){null!=W&&((W.$$ingredientNameValidation||""===W.$$ingredientNameValidation)&&delete W.$$ingredientNameValidation,(W.$$basisOfStrengthValidation||""===W.$$basisOfStrengthValidation)&&delete W.$$basisOfStrengthValidation)})}),x}},{key:"showJSON",value:function(){var a=this.cleanApplication(),O=this.dialog.open(Ts,{width:"90%",height:"90%",data:a}).afterClosed().subscribe(function(W){});this.subscriptions.push(O)}},{key:"addNewIndication",value:function(){this.applicationService.addNewIndication()}},{key:"confirmDeleteIndication",value:function(a,x){var O=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Indication ("+(a+1)+")?"}}).afterClosed().subscribe(function(Le){Le&&!0===Le&&O.deleteIndication(a)})}},{key:"deleteIndication",value:function(a){this.applicationService.deleteIndication(a)}},{key:"validateSubmitDate",value:function(){this.submitDateMessage="",!1===this.validateDate(this.application.submitDate)?this.submitDateMessage="Submit Date is invalid":!1===this.validateSubmitDateWithStatusDate(this.application.submitDate,this.application.statusDate)&&(this.submitDateMessage="Submit Date should be earlier than Status Date;")}},{key:"validateStatusDate",value:function(){this.statusDateMessage="";var a=this.validateDate(this.application.statusDate);!1===a?this.statusDateMessage="Status Date is invalid":!1===(a=this.validateFutureDate(this.application.statusDate))?this.statusDateMessage="Status Date should not be a future date":!1===(a=this.validateSubmitDateWithStatusDate(this.application.submitDate,this.application.statusDate))&&(this.submitDateMessage="Submit Date should be earlier than Status Date;")}},{key:"validateFutureDate",value:function(a){var x=!0,W=(new Date).setHours(0,0,0);return null!==a&&a.length>0&&(a.length>=8||a.length<=10)&&new Date(a).setHours(0,0,0)>W&&(x=!1),x}},{key:"validateSubmitDateWithStatusDate",value:function(a,x){var O=!0;return a&&x&&new Date(a).setHours(0,0,0)>new Date(x).setHours(0,0,0)&&(O=!1),O}},{key:"validateDate",value:function(a){var x=!0;if(null!==a&&a.length>0){if(a.length<8||a.length>10)return!1;var O=a.split("/");if(3!==O.length||O[0].length<1||O[0].length>2||O[1].length<1||O[1].length>2||4!==O[2].length)return!1;if(3===O.length)for(var Le=0;Le0),e.xp6(2),e.Q6J("ngIf",a.application),e.xp6(5),e.Q6J("routerLink",e.DdM(7,Rn)),e.xp6(2),e.Q6J("ngClass",e.WLB(8,Fn,!a.showSubmissionMessages,a.showSubmissionMessages)),e.xp6(1),e.Q6J("ngIf",a.submissionMessage),e.xp6(1),e.Q6J("ngIf",a.validationMessages),e.xp6(4),e.Q6J("ngIf",a.application))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%], .col-1[_ngcontent-%COMP%]{width:calc((100% - 150px) / 6);margin-right:30px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1200px;min-width:1200px;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:start;justify-content:flex-start}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}"]}),m}();function Li(m,D){if(1&m&&(e.TgZ(0,"span",23),e._uU(1),e.ALo(2,"date"),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.AsE("Reviewed By:",l.reviewedBy,"\xa0",e.xi3(2,2,l.reviewDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function zi(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",31),e.NdJ("click",function(){e.CHM(l);var x=e.oxw(2).index;return e.oxw().addNewProductName(x)}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function Ba(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",24),e.TgZ(2,"mat-form-field",25),e.TgZ(3,"input",26),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.productName=Le}),e.qZA(),e.qZA(),e.TgZ(4,"app-cv-input",27),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.productNameType=Le}),e.qZA(),e._uU(5," \xa0\xa0 "),e.TgZ(6,"span",28),e.YNc(7,zi,3,0,"button",29),e.qZA(),e.TgZ(8,"button",30),e.NdJ("click",function(){var rt=e.CHM(l).index,Ht=e.oxw().index;return e.oxw().confirmDeleteProductName(Ht,rt)}),e.TgZ(9,"mat-icon"),e._uU(10,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw().$implicit;e.xp6(3),e.Q6J("ngModel",a.productName),e.xp6(1),e.Q6J("model",a.productNameType),e.xp6(3),e.Q6J("ngIf",0==x),e.xp6(1),e.Q6J("disabled",1==O.applicationProductNameList.length),e.xp6(1),e.ekj("disabled",1==O.applicationProductNameList.length)}}function Da(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"app-ingredient-form",32),e.NdJ("ingredientMessageOut",function(Ht){return e.CHM(l),e.oxw(2).ingredientMessageOutChange(Ht)})("basisOfStrengthMessageOut",function(Ht){return e.CHM(l),e.oxw(2).basisOfStrengthMessageOutChange(Ht)}),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw(),W=O.index,Le=O.$implicit;e.xp6(1),e.Q6J("ingredient",a)("prodIndex",W)("ingredIndex",x)("totalIngredient",Le.applicationIngredientList.length)}}var tl=function(){return{color:"green"}},Ul=function(){return[]};function Wr(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",6),e.TgZ(2,"button",7),e.NdJ("click",function(){var rt=e.CHM(l).index;return e.oxw().confirmDeleteProduct(rt)}),e.TgZ(3,"mat-icon"),e._uU(4,"delete_forever"),e.qZA(),e.qZA(),e._uU(5," \xa0\xa0 "),e.TgZ(6,"button",8),e.NdJ("click",function(){var rt=e.CHM(l).$implicit;return e.oxw().copyProduct(rt)}),e.TgZ(7,"mat-icon"),e._uU(8,"file_copy"),e.qZA(),e.qZA(),e._uU(9," \xa0\xa0 "),e.TgZ(10,"button",8),e.NdJ("click",function(){var rt=e.CHM(l).index;return e.oxw().confirmReviewProduct(rt)}),e.TgZ(11,"mat-icon"),e._uU(12,"check_circle"),e.qZA(),e.qZA(),e.YNc(13,Li,3,5,"span",9),e.qZA(),e.TgZ(14,"fieldset",10),e.TgZ(15,"legend",10),e._uU(16,"Product Details\xa0"),e.TgZ(17,"b"),e.TgZ(18,"span",11),e._uU(19),e.qZA(),e.qZA(),e.qZA(),e.YNc(20,Ba,11,6,"div",5),e.TgZ(21,"div",12),e.TgZ(22,"app-cv-input",13),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.dosageForm=Le}),e.qZA(),e.TgZ(23,"div",14),e.TgZ(24,"app-tag-selector",15),e.NdJ("tagsUpdate",function(Le){var Ht=e.CHM(l).index;return e.oxw().updateRouteAdmin(Le,Ht)}),e.qZA(),e.qZA(),e.TgZ(25,"app-cv-input",16),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.unitPresentation=Le}),e.qZA(),e.TgZ(26,"mat-form-field",17),e.TgZ(27,"input",18),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.amount=Le}),e.qZA(),e.qZA(),e.TgZ(28,"app-cv-input",19),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.unit=Le}),e.qZA(),e.qZA(),e._UZ(29,"br"),e._UZ(30,"hr"),e._UZ(31,"br"),e.TgZ(32,"span",20),e.TgZ(33,"span",21),e._uU(34,"INGREDIENT"),e.qZA(),e.qZA(),e._UZ(35,"span",0),e._uU(36," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(37,"button",22),e.NdJ("click",function(){var rt=e.CHM(l).index;return e.oxw().addNewIngredient(rt)}),e._UZ(38,"mat-icon",4),e._uU(39,"Add Ingredient "),e.qZA(),e.YNc(40,Da,2,4,"div",5),e.qZA(),e._UZ(41,"br"),e._UZ(42,"br"),e._UZ(43,"br"),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw();e.xp6(2),e.MGl("matTooltip","Delete Product Details ",x+1,""),e.Q6J("ngStyle",e.DdM(19,tl))("disabled",1==O.application.applicationProductList.length),e.xp6(1),e.ekj("disabled",1==O.application.applicationProductList.length),e.xp6(3),e.MGl("matTooltip","Copy Product Details ",x+1," to a New Product"),e.Q6J("ngStyle",e.DdM(20,tl)),e.xp6(4),e.MGl("matTooltip","Click to Confirm Product Details ",x+1," has been Reviewed"),e.Q6J("ngStyle",e.DdM(21,tl)),e.xp6(3),e.Q6J("ngIf",a.reviewDate),e.xp6(6),e.Oqu(x+1),e.xp6(1),e.Q6J("ngForOf",a.applicationProductNameList),e.xp6(2),e.Q6J("model",a.dosageForm),e.xp6(2),e.Q6J("tags",a.routeAdmin?a.routeAdmin.split(","):e.DdM(22,Ul)),e.xp6(1),e.Q6J("model",a.unitPresentation),e.xp6(2),e.Q6J("ngModel",a.amount),e.xp6(1),e.Q6J("model",a.unit),e.xp6(4),e.s9C("matBadge",a.applicationIngredientList.length),e.xp6(8),e.Q6J("ngForOf",a.applicationIngredientList)}}var nl=function(){var m=function(){function D(l,a,x,O,W){(0,P.Z)(this,D),this.applicationService=l,this.cvService=a,this.authService=x,this.generalService=O,this.dialog=W,this.reviewProductMessage=[],this.productMessage="",this.username=null}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.username=this.authService.getUser()}},{key:"addNewProduct",value:function(){this.applicationService.addNewProduct()}},{key:"addNewProductName",value:function(a){this.applicationService.addNewProductName(a)}},{key:"confirmDeleteProduct",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Product Details "+(a+1)+" data?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteProduct(a)})}},{key:"deleteProduct",value:function(a){this.applicationService.deleteProduct(a)}},{key:"confirmDeleteProductName",value:function(a,x){var O=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Product Name "+(x+1)+" ?"}}).afterClosed().subscribe(function(Le){Le&&!0===Le&&O.deleteProductName(a,x)})}},{key:"deleteProductName",value:function(a,x){this.applicationService.deleteProductName(a,x)}},{key:"copyProduct",value:function(a){this.applicationService.copyProduct(a)}},{key:"confirmReviewProduct",value:function(a){var x=this;this.application.applicationProductList[a].reviewDate?this.dialog.open($i.$,{data:{message:"Are you sure you want to overwrite Reviewed By and Review Date?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.reviewProduct(a)}):this.reviewProduct(a)}},{key:"reviewProduct",value:function(a){var x=this.generalService.getCurrentDate();this.application.applicationProductList[a].reviewDate=x,this.application.applicationProductList[a].reviewedBy=this.username}},{key:"addNewIngredient",value:function(a){this.applicationService.addNewIngredient(a)}},{key:"updateRouteAdmin",value:function(a,x){this.application.applicationProductList[x].routeAdmin=a.toString()}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(E.I),e.Y36(ka.I),e.Y36(Ie.e),e.Y36(A.m),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-application-product-form"]],inputs:{application:"application"},decls:15,vars:2,consts:[[1,""],[1,"titlegreen"],["matBadgeOverlap","false",3,"matBadge"],["mat-raised-button","","color","primary","matTooltip","Add New Product",3,"click"],["svgIcon","add_circle_outline"],[4,"ngFor","ngForOf"],[1,"marginbottomminus17px","padleft250px"],["mat-icon-button","",3,"ngStyle","disabled","matTooltip","click"],["mat-icon-button","",3,"ngStyle","matTooltip","click"],["class","colorgray font12px",4,"ngIf"],[1,"border"],[1,"colorgreen","font17px"],[1,"form-row"],["domain","DOSAGE_FORM","title","Dosage Form","name","dosageForm",1,"col-1",3,"model","valueChange"],[1,"col-1","marginright30px"],["cvDomain","PROD_ROUTE_OF_ADMIN","placeholder","Route of Administration",1,"tags",3,"tags","tagsUpdate"],["domain","PROD_UNIT_PRESENTATION","title","Unit Of Presentation","name","unitPresentation",1,"col-1",3,"model","valueChange"],[1,"col-1"],["matInput","","placeholder","Amount","name","amount",3,"ngModel","ngModelChange"],["domain","APPLICATION_UNIT","title","Unit","name","unit",1,"col-1",3,"model","valueChange"],["matBadgeColor","warn","matBadgeOverlap","false",3,"matBadge"],[1,"titleorange"],["mat-raised-button","","color","primary","matTooltip","Add New Ingredient",3,"click"],[1,"colorgray","font12px"],[1,"form-row-prodname"],[1,"prodNameField"],["matInput","","placeholder","Product Name","name","productName",3,"ngModel","ngModelChange"],["domain","PROD_PRODUCT_NAME_TYPE","title","Product Name Type","name","productNameType",1,"col-1-nomargin",3,"model","valueChange"],[1,"width40px","displayinlineblock"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Name",3,"disabled","click"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click"],[3,"ingredient","prodIndex","ingredIndex","totalIngredient","ingredientMessageOut","basisOfStrengthMessageOut"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e._UZ(1,"br"),e._UZ(2,"hr"),e._UZ(3,"br"),e._UZ(4,"span",1),e.TgZ(5,"span",2),e.TgZ(6,"span",1),e._uU(7,"PRODUCT"),e.qZA(),e.qZA(),e._uU(8," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(9,"button",3),e.NdJ("click",function(){return a.addNewProduct()}),e._UZ(10,"mat-icon",4),e._uU(11,"Add Product "),e.qZA(),e._UZ(12,"br"),e._UZ(13,"br"),e.YNc(14,Wr,44,23,"div",5),e.qZA()),2&l&&(e.xp6(5),e.s9C("matBadge",a.application.applicationProductList.length),e.xp6(9),e.Q6J("ngForOf",a.application.applicationProductList))},styles:[".details-container[_ngcontent-%COMP%]{width:100%}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%]{width:calc((100% - 120px)/5);margin-right:30px}.form-row[_ngcontent-%COMP%] .col-1-nomargin[_ngcontent-%COMP%]{width:calc((100% - 120px)/5);margin-right:0}.form-row-prodname[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.prodNameField[_ngcontent-%COMP%]{width:calc((100% - 100px)*.8);margin-right:30px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.font12px[_ngcontent-%COMP%]{font-size:12px}.font17px[_ngcontent-%COMP%]{font-size:17px}.colorgreen[_ngcontent-%COMP%]{color:green}.colorred[_ngcontent-%COMP%]{color:red}.colorgray[_ngcontent-%COMP%]{color:gray}.titlegreen[_ngcontent-%COMP%]{color:green;font-size:17px;font-weight:500}.titleorange[_ngcontent-%COMP%]{color:#ff4500;font-size:17px;font-weight:500}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.marginright30px[_ngcontent-%COMP%]{margin-right:30px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintopminus25[_ngcontent-%COMP%]{margin-top:-5px}.marginbottomminus17px[_ngcontent-%COMP%]{margin-bottom:-17px}.padleft250px[_ngcontent-%COMP%]{padding-left:250px}.pad10px[_ngcontent-%COMP%]{padding:10px}.padbottom0px[_ngcontent-%COMP%]{padding:0}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted green;color:#333;overflow:visible;text-align:center;height:5px}fieldset.border[_ngcontent-%COMP%]{border:solid 1px green!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0;box-shadow:3px 4px 5px 1px #6e686ea3}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:13px;color:#174793;font-family:Verdana;font-weight:700;margin-bottom:10px}.formfieldwidth[_ngcontent-%COMP%]{width:160px!important}.formfield2columnwidth[_ngcontent-%COMP%]{width:370px!important}.formfield3columnwidth[_ngcontent-%COMP%]{width:540px!important}.formfieldfullpagewidth[_ngcontent-%COMP%]{width:900px}.width40px[_ngcontent-%COMP%]{width:40px}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}"]}),m}();function Bl(m,D){if(1&m&&(e.TgZ(0,"span",28),e._uU(1),e.ALo(2,"date"),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.AsE("Reviewed By:\xa0",l.ingredient.reviewedBy,"\xa0",e.xi3(2,2,l.ingredient.reviewDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function ir(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"span",30),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.TgZ(5,"span",30),e._uU(6,"Modified By:"),e.qZA(),e._uU(7),e.ALo(8,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(3),e.AsE(" ",l.ingredient.createdBy,"\xa0\xa0\xa0 ",e.xi3(4,4,l.ingredient.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.AsE(" ",l.ingredient.modifiedBy,"\xa0\xa0\xa0 ",e.xi3(8,7,l.ingredient.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function il(m,D){if(1&m&&(e.TgZ(0,"span",29),e.YNc(1,ir,9,10,"span",15),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.ingredient.id)}}function ms(m,D){if(1&m&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.ingredientNameMessage," ")}}function ba(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",34),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l," ")}}function Ds(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,ba,4,1,"div",33),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.Oqu(l.ingredientName),e.xp6(2),e.Q6J("ngForOf",l.ingredientNameActiveMoiety)}}function ws(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",35),e._uU(2),e.qZA(),e.TgZ(3,"span",34),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",36),e.NdJ("click",function(){e.CHM(l);var O=e.oxw();return O.confirmDeleteIngredientName(O.ingredIndex)}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(2),e.Oqu(a.ingredient.substanceKey),e.xp6(2),e.hij(" (",a.ingredient.substanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Ingredient Name ",a.ingredIndex+1,"")}}function Yl(m,D){if(1&m&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.basisOfStrengthMessage," ")}}function Yr(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",34),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l," ")}}function Ko(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,Yr,4,1,"div",33),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.Oqu(l.basisOfStrengthIngredientName),e.xp6(2),e.Q6J("ngForOf",l.basisOfStrengthActiveMoiety)}}function Ka(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",35),e._uU(2),e.qZA(),e.TgZ(3,"span",34),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",36),e.NdJ("click",function(){e.CHM(l);var O=e.oxw();return O.confirmDeleteBasisOfStrength(O.ingredIndex)}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(2),e.Oqu(a.ingredient.basisOfStrengthSubstanceKey),e.xp6(2),e.hij(" (",a.ingredient.basisOfStrengthSubstanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Basis of Strength ",a.ingredIndex+1,"")}}var hs=function(){return{color:"orangered"}},Lo=function(){var m=function(){function D(l,a,x,O,W,Le){(0,P.Z)(this,D),this.authService=l,this.configService=a,this.cvService=x,this.applicationService=O,this.generalService=W,this.dialog=Le,this.ingredientNameMessage="",this.basisOfStrengthMessage="",this.ingredientNameActiveMoiety=new Array,this.basisOfStrengthActiveMoiety=new Array,this.username=null,this.subscriptions=[]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;setTimeout(function(){a.username=a.authService.getUser(),a.ingredientNameBdnumOld=a.ingredient.substanceKey,a.basisofStrengthBdnumOld=a.ingredient.basisOfStrengthSubstanceKey,a.substanceKeyTypeConfig=a.generalService.getSubstanceKeyType(),a.substanceKeyTypeConfig||alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add "Ingredient Name" and "Basis of Strength" into the database.'),a.getSubstanceBySubstanceKey()},600)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"addNewIngredient",value:function(a){this.applicationService.addNewIngredient(a)}},{key:"confirmDeleteIngredient",value:function(a,x){var O=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Ingredient Details "+(x+1)+"?"}}).afterClosed().subscribe(function(Le){Le&&!0===Le&&O.deleteIngredient(a,x)})}},{key:"deleteIngredient",value:function(a,x){this.applicationService.deleteIngredient(a,x)}},{key:"copyIngredient",value:function(a,x){this.applicationService.copyIngredient(a,x)}},{key:"confirmReviewIngredient",value:function(){var a=this;this.ingredient.reviewDate?this.dialog.open($i.$,{data:{message:"Are you sure you want to overwrite Reviewed By and Review Date?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.reviewIngredient()}):this.reviewIngredient()}},{key:"reviewIngredient",value:function(){var a=this.generalService.getCurrentDate();this.ingredient.reviewDate=a,this.ingredient.reviewedBy=this.username}},{key:"confirmDeleteIngredientName",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Ingredient Name "+(a+1)+"?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteIngredientName()})}},{key:"deleteIngredientName",value:function(){this.ingredientNameMessage="",null!=this.ingredient.id&&null!=this.ingredientNameBdnumOld&&(this.ingredientNameMessage="Click Validate and Submit button to delete "+this.ingredientName),this.ingredientNameSubstanceUuid=null,this.ingredientName=null,this.ingredient.substanceKey=null,this.ingredient.substanceKeyType=null}},{key:"confirmDeleteBasisOfStrength",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Basis of Strength "+(a+1)+"?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteBasisOfStrength()})}},{key:"deleteBasisOfStrength",value:function(){this.basisOfStrengthMessage="",null!=this.ingredient.id&&null!=this.basisofStrengthBdnumOld&&(this.basisOfStrengthMessage="Click Validate and Submit button to delete "+this.basisOfStrengthIngredientName),this.basisOfStrengthSubstanceUuid=null,this.basisOfStrengthIngredientName=null,this.ingredient.basisOfStrengthSubstanceKey=null,this.ingredient.basisOfStrengthSubstanceKeyType=null}},{key:"getSubstanceCode",value:function(a,x){var O=this,W=this.generalService.getSubstanceCodesBySubstanceUuid(a).subscribe(function(Le){if(Le)for(var rt=Le,Ht=0;Ht0)for(var Le=0;Le0&&void 0!==arguments[0]?arguments[0]:"";this.searchValue=x;var O=x.replace('"',""),W=this.substanceSelectorProperties.map(function(Le){return"".concat(Le,':"^').concat(O,'$"')}).join(" OR ");this.substanceService.getQuickSubstancesSummaries(W,!0).subscribe(function(Le){a.loadingStructure=!0,Le.content&&Le.content.length?(a.selectedSubstance=Le.content[0],a.selectionUpdated.emit(a.selectedSubstance),a.errorMessage=""):a.showMessage.emit("No substances found for "+a.searchValue),a.loadingStructure=!1})}},{key:"editSelectedSubstance",value:function(){this.selectedSubstance=null,this.selectionUpdated.emit(this.selectedSubstance)}},{key:"searchValueOutChange",value:function(a){this.searchValueOut.emit(a)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(ge.d),e.Y36(On.E))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-substance-search-selector"]],inputs:{eventCategory:"eventCategory",placeholder:"placeholder",hintMessage:"hintMessage",header:"header",name:"name",subuuid:"subuuid"},outputs:{selectionUpdated:"selectionUpdated",showMessage:"showMessage",searchValueOut:"searchValueOut"},decls:3,vars:7,consts:[[1,"substance-selector-container"],[3,"searchValue","ngClass","eventCategory","placeholder","searchPerformed","searchValueOut"],["class","selected-substance",3,"mouseenter","mouseleave",4,"ngIf"],[1,"selected-substance",3,"mouseenter","mouseleave"],["class","selected-substance-options",4,"ngIf"],[1,"section-header"],["class","related-image","appSubstanceImage","",3,"entityId",4,"ngIf"],["strokeWidth","3","mode","indeterminate",3,"diameter",4,"ngIf"],["class","code",4,"ngIf"],[1,"selected-substance-options"],["mat-mini-fab","",3,"click"],["aria-label","Edit Selected Substance","svgIcon","edit"],["mat-mini-fab","","target","_blank",3,"routerLink",4,"ngIf"],["mat-mini-fab","","target","_blank",3,"routerLink"],["aria-label","Open in new tab","svgIcon","open_in_new"],["appSubstanceImage","",1,"related-image",3,"entityId"],["strokeWidth","3","mode","indeterminate",3,"diameter"],[1,"code"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"app-substance-text-search",1),e.NdJ("searchPerformed",function(O){return a.processSubstanceSearch(O)})("searchValueOut",function(O){return a.searchValueOutChange(O)}),e.qZA(),e.YNc(2,pe,9,5,"div",2),e.qZA()),2&l&&(e.xp6(1),e.Q6J("searchValue",a.searchValue)("ngClass",e.VKq(5,Me,a.selectedSubstance))("eventCategory",a.eventCategory)("placeholder",a.placeholder),e.xp6(1),e.Q6J("ngIf",a.selectedSubstance))},directives:[gs.e,p.mk,p.O5,T.lW,I.Hw,T.zs,d.yS,Be.m,j.Ou],styles:[".selected-substance-container[_ngcontent-%COMP%]{max-width:100%;width:100%}.selected-substance[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:center;position:relative}.selected-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block;max-width:200px}.selected-substance-options[_ngcontent-%COMP%]{position:absolute;right:5px;top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]{background-color:#f2f2f2d9;color:#404040;width:35px;height:35px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0}.hidden[_ngcontent-%COMP%]{display:none!important}.mat-progress-spinner[_ngcontent-%COMP%] circle[_ngcontent-%COMP%], .mat-spinner[_ngcontent-%COMP%] circle[_ngcontent-%COMP%]{stroke:#3fb53f}"]}),m}(),xt=[{path:"browse-applications",component:Ta,canActivate:[Xo]},{path:"application/register",component:mi,canActivate:[Xo,al],canDeactivate:[Zs]},{path:"application/:id/edit",component:mi,canActivate:[Xo,bo],canDeactivate:[Zs]},{path:"application/:id",component:ye,canActivate:[Xo]},{path:"application/:appType/:appNumber",component:ye,canActivate:[Xo]},{path:"application-darrts/:appType/:appNumber",component:la,canActivate:[Xo]}],Ut=function(){var m=function(){function D(l){(0,P.Z)(this,D),xt.forEach(function(a){l.config[0].children.push(a)})}return(0,t.Z)(D,null,[{key:"forRoot",value:function(){return{ngModule:D,providers:[E.I,al,bo,Xo,Zs]}}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0))},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({providers:[al,bo,Xo],imports:[[p.ez,d.Bz.forChild(xt),Nt.g0,Ft.SJ,s.QW,bt.Bb,St.lN,Pt.c,T.ot,I.Ps,ut.Hi,Q.g,h.To,J.p9,v.p0,yt.JX,be.TU,we.LD,_e.KP,qt.Is,$.ie,Ae.Tx,ft.vV,f.AV,B.Nh,gt._r,Bt.FA,_n.XK,je.u5,je.UX,qe.U8,_s.Cv,Cl.f,Fo,wn.On,Ml,Os,$o.O,Es]]}),m}();e.B6R(mi,[T.lW,p.O5,I.Hw,f.gM,d.rH,T.zs,d.yS,p.mk,p.sg,s.a8,s.dn,Cr.S,St.KE,Pt.Nt,je.Fj,je.Q7,je.JJ,je.On,St.bx,nl],[p.uU]),e.B6R(nl,[Q.k,T.lW,f.gM,I.Hw,p.sg,p.PC,p.O5,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Cr.S,Co.C,Lo],[p.uU]),e.B6R(Lo,[T.lW,p.PC,f.gM,I.Hw,p.O5,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Fe,p.sg,Cr.S],[p.uU]);var dn=function(){var m=(0,t.Z)(function D(){(0,P.Z)(this,D)});return m.\u0275fac=function(l){return new(l||m)},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({imports:[[p.ez,d.Bz,v.p0,s.QW,T.ot,I.Ps,f.AV]]}),m}(),Mn=n(42154),hn=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In){(0,P.Z)(this,D),this.productService=l,this.generalService=a,this.activatedRoute=x,this.loadingService=O,this.mainNotificationService=W,this.router=Le,this.gaService=rt,this.utilsService=Ht,this.titleService=In,this.message="",this.isAdmin=!1,this.subscriptions=[]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.loadingService.setLoading(!0),this.productId=this.activatedRoute.snapshot.params.id,this.src=this.activatedRoute.snapshot.params.src,null!=this.productId?this.getProduct():this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"ngAfterViewInit",value:function(){}},{key:"getProduct",value:function(){var a=this,x=this.productService.getProduct(this.productId).subscribe(function(O){if(O&&(a.product=O,Object.keys(a.product).length>0)){var W="";a.product.productCodeList.forEach(function(Le,rt){null!=Le&&Le.productCode&&(rt>0&&(W=W.concat("|")),W=W.concat(Le.productCode))}),a.titleService.setTitle("Product "+W),a.getSubstanceBySubstanceKey()}},function(O){a.message="No Product record found"});this.subscriptions.push(x)}},{key:"getSubstanceBySubstanceKey",value:function(){var a=this;null!=this.product&&this.product.productComponentList.forEach(function(x){null!=x&&x.productLotList.forEach(function(O){null!=O&&O.productIngredientList.forEach(function(W){if(null!=W){if(W.substanceKey){var Le=a.generalService.getSubstanceByAnyId(W.substanceKey).subscribe(function(Ht){Ht&&(W._substanceUuid=Ht.uuid,W._ingredientName=Ht._name)});a.subscriptions.push(Le)}if(W.basisOfStrengthSubstanceKey){var rt=a.generalService.getSubstanceByAnyId(W.basisOfStrengthSubstanceKey).subscribe(function(Ht){Ht&&(W._basisOfStrengthSubstanceUuid=Ht.uuid,W._basisOfStrengthIngredientName=Ht._name)});a.subscriptions.push(rt)}}})})})}},{key:"handleSubstanceRetrivalError",value:function(){var a=this;this.loadingService.setLoading(!1),this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:Tn.k.error,milisecondsToShow:4e3}),setTimeout(function(){a.router.navigate(["/browse-substance"])},5e3)}},{key:"getSafeStructureImgUrl",value:function(a){var x=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(a,x,!0)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(Mn.M),e.Y36(A.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-product-details-base"]],decls:0,vars:0,template:function(l,a){},styles:[""]}),m}();function $n(m,D){if(1&m&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&m){var l=e.oxw();e.xp6(5),e.hij(" ",l.message,"\n")}}var hi=function(D){return["/product",D,"edit"]};function Ji(m,D){if(1&m&&(e.TgZ(0,"a",19),e._UZ(1,"mat-icon",20),e.qZA()),2&m){var l=e.oxw(2);e.Q6J("routerLink",e.VKq(1,hi,l.product.id))}}function Ca(m,D){1&m&&e._UZ(0,"mat-icon",21)}function Ya(m,D){if(1&m&&(e.TgZ(0,"div",22),e.TgZ(1,"span",23),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.TgZ(4,"span",23),e._uU(5,"Create Date:"),e.qZA(),e._uU(6),e.ALo(7,"date"),e.TgZ(8,"span",23),e._uU(9,"Modified By:"),e.qZA(),e._uU(10),e.TgZ(11,"span",23),e._uU(12,"Modify Date:"),e.qZA(),e._uU(13),e.ALo(14,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(3),e.hij(" ",l.product.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(7,4,l.product.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",l.product.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(14,7,l.product.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function $a(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"b"),e._uU(2,"Term:"),e.qZA(),e._uU(3),e.TgZ(4,"b"),e._uU(5,"Term Part:"),e.qZA(),e._uU(6),e._UZ(7,"br"),e._UZ(8,"br"),e.qZA()),2&m){var l=D.$implicit;e.xp6(3),e.hij("\xa0",l.productTerm," "),e.xp6(3),e.hij("\xa0\xa0",l.productTermPart,"")}}function Mr(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e.TgZ(2,"span",24),e._uU(3),e.qZA(),e.qZA(),e.TgZ(4,"td"),e._uU(5),e.qZA(),e.TgZ(6,"td"),e.YNc(7,$a,9,2,"div",11),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(3),e.Oqu(l.productName),e.xp6(2),e.Oqu(l.productNameType),e.xp6(2),e.Q6J("ngForOf",l.productTermAndTermPartList)}}function qr(m,D){1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td",25),e._uU(2," No Product Name Available "),e.qZA(),e.qZA())}function no(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",26),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e._uU(5),e._UZ(6,"br"),e.qZA()),2&m){var l=D.$implicit;e.xp6(3),e.Oqu(l.productCode),e.xp6(2),e.hij(" ",l.productCodeType,"")}}function so(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Oqu(l.companyName),e.xp6(2),e.Oqu(l.companyAddress),e.xp6(2),e.Oqu(l.companyCity),e.xp6(2),e.Oqu(l.companyState),e.xp6(2),e.Oqu(l.companyZip),e.xp6(2),e.hij("",l.companyCountry," "),e.xp6(2),e.Oqu(l.companyCode),e.xp6(2),e.Oqu(l.companyCodeType),e.xp6(2),e.Oqu(l.companyRole)}}var hr=function(D){return["/substances",D]};function Va(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",37),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,hr,l._substanceUuid)),e.xp6(1),e.Oqu(l._ingredientName)}}function Vt(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",37),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,hr,l._basisOfStrengthSubstanceUuid)),e.xp6(1),e.Oqu(l._basisOfStrengthIngredientName)}}function Mo(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e.YNc(2,Va,3,4,"div",1),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Vt,3,4,"div",1),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.TgZ(23,"td"),e._uU(24),e.qZA(),e.TgZ(25,"td"),e._uU(26),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Q6J("ngIf",l._substanceUuid),e.xp6(2),e.Q6J("ngIf",l._basisOfStrengthSubstanceUuid),e.xp6(2),e.Oqu(l.ingredientType),e.xp6(2),e.Oqu(l.ingredientLocation),e.xp6(2),e.Oqu(l.average),e.xp6(2),e.Oqu(l.low),e.xp6(2),e.Oqu(l.high),e.xp6(2),e.Oqu(l.unit),e.xp6(2),e.Oqu(l.manufacturer),e.xp6(2),e.Oqu(l.ingredLotNo),e.xp6(2),e.Oqu(l.grade),e.xp6(2),e.Oqu(l.releaseCharacteristic),e.xp6(2),e.Oqu(l.notes)}}function ks(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",17),e.TgZ(2,"span",34),e._uU(3),e.qZA(),e.qZA(),e.TgZ(4,"div",12),e.TgZ(5,"div",13),e.TgZ(6,"div",14),e._uU(7," Lot Number: "),e.qZA(),e.TgZ(8,"div",15),e._uU(9),e.qZA(),e.qZA(),e.TgZ(10,"div",13),e.TgZ(11,"div",14),e._uU(12," Lot Size: "),e.qZA(),e.TgZ(13,"div",15),e._uU(14),e.qZA(),e.qZA(),e.TgZ(15,"div",13),e.TgZ(16,"div",14),e._uU(17," Expiry Date: "),e.qZA(),e.TgZ(18,"div",15),e._uU(19),e.qZA(),e.qZA(),e.TgZ(20,"div",13),e.TgZ(21,"div",14),e._uU(22," Manufacture Date: "),e.qZA(),e.TgZ(23,"div",15),e._uU(24),e.qZA(),e.qZA(),e.qZA(),e.TgZ(25,"mat-card",4),e.TgZ(26,"mat-card-title",17),e.TgZ(27,"span",35),e._uU(28),e.qZA(),e.qZA(),e.TgZ(29,"mat-card-content"),e.TgZ(30,"div",36),e.TgZ(31,"table",9),e.TgZ(32,"thead"),e.TgZ(33,"tr",10),e.TgZ(34,"th"),e._uU(35,"Ingredient Name"),e.qZA(),e.TgZ(36,"th"),e._uU(37,"Basis Of Strength"),e.qZA(),e.TgZ(38,"th"),e._uU(39,"Ingredient Type"),e.qZA(),e.TgZ(40,"th"),e._uU(41,"Ingredient Location"),e.qZA(),e.TgZ(42,"th"),e._uU(43,"Average"),e.qZA(),e.TgZ(44,"th"),e._uU(45,"Low"),e.qZA(),e.TgZ(46,"th"),e._uU(47,"High"),e.qZA(),e.TgZ(48,"th"),e._uU(49,"Unit"),e.qZA(),e.TgZ(50,"th"),e._uU(51,"Manufacture"),e.qZA(),e.TgZ(52,"th"),e._uU(53,"Lot No"),e.qZA(),e.TgZ(54,"th"),e._uU(55,"Grade"),e.qZA(),e.TgZ(56,"th"),e._uU(57,"Release Characteristics"),e.qZA(),e.TgZ(58,"th"),e._uU(59,"Notes"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(60,"tbody"),e.YNc(61,Mo,27,13,"tr",11),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(62,"br"),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(3),e.hij("Lot ",a+1,""),e.xp6(6),e.hij(" ",l.lotNo," "),e.xp6(5),e.hij(" ",l.lotSize," "),e.xp6(5),e.hij(" ",l.expiryDate," "),e.xp6(5),e.hij(" ",l.manufactureDate," "),e.xp6(4),e.hij(" Core/Internal Active Ingredients (",l.productIngredientList.length,") "),e.xp6(33),e.Q6J("ngForOf",l.productIngredientList)}}function Zr(m,D){if(1&m&&(e.TgZ(0,"mat-tab",27),e.TgZ(1,"mat-card"),e.TgZ(2,"mat-card-content"),e.TgZ(3,"div",28),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"div",12),e.TgZ(7,"div",13),e.TgZ(8,"div",29),e._uU(9," Dosage Form: "),e.qZA(),e.TgZ(10,"div",30),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",31),e.TgZ(13,"div",32),e._uU(14," Amount: "),e.qZA(),e.TgZ(15,"div",33),e._uU(16),e.qZA(),e.qZA(),e.TgZ(17,"div",31),e.TgZ(18,"div",32),e._uU(19," Unit: "),e.qZA(),e.TgZ(20,"div",33),e._uU(21),e.qZA(),e.qZA(),e.qZA(),e.TgZ(22,"div",12),e.TgZ(23,"div",31),e.TgZ(24,"div",32),e._uU(25," Code: "),e.qZA(),e.TgZ(26,"div",33),e._uU(27),e.qZA(),e.qZA(),e.TgZ(28,"div",31),e.TgZ(29,"div",32),e._uU(30," Code Type: "),e.qZA(),e.TgZ(31,"div",33),e._uU(32),e.qZA(),e.qZA(),e.TgZ(33,"div",31),e.TgZ(34,"div",32),e._uU(35," Size: "),e.qZA(),e.TgZ(36,"div",33),e._uU(37),e.qZA(),e.qZA(),e.TgZ(38,"div",31),e.TgZ(39,"div",32),e._uU(40," Imprint Text: "),e.qZA(),e.TgZ(41,"div",33),e._uU(42),e.qZA(),e.qZA(),e.qZA(),e.TgZ(43,"div",12),e.TgZ(44,"div",31),e.TgZ(45,"div",32),e._uU(46," Color Name: "),e.qZA(),e.TgZ(47,"div",33),e._uU(48),e.qZA(),e.qZA(),e.TgZ(49,"div",31),e.TgZ(50,"div",32),e._uU(51," Flavor Name: "),e.qZA(),e.TgZ(52,"div",33),e._uU(53),e.qZA(),e.qZA(),e.TgZ(54,"div",31),e.TgZ(55,"div",32),e._uU(56," Shape Name: "),e.qZA(),e.TgZ(57,"div",33),e._uU(58),e.qZA(),e.qZA(),e.TgZ(59,"div",31),e.TgZ(60,"div",32),e._uU(61," Number of Fragments: "),e.qZA(),e.TgZ(62,"div",33),e._uU(63),e.qZA(),e.qZA(),e.qZA(),e.TgZ(64,"mat-card",4),e.TgZ(65,"mat-card-content"),e.YNc(66,ks,63,7,"div",11),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.MGl("label","Manufacture item ",a+1,""),e.xp6(4),e.hij(" Manufacture Item ",a+1," "),e.xp6(7),e.hij(" ",l.dosageForm," "),e.xp6(5),e.hij(" ",l.amount," "),e.xp6(5),e.hij(" ",l.unit," "),e.xp6(6),e.hij(" ",l.manufactureCode," "),e.xp6(5),e.hij(" ",l.manufactureCodeType," "),e.xp6(5),e.hij(" ",l.charSize," "),e.xp6(5),e.hij(" ",l.charImprintText," "),e.xp6(6),e.hij(" ",l.charColor," "),e.xp6(5),e.hij(" ",l.charFlavor," "),e.xp6(5),e.hij(" ",l.charShape," "),e.xp6(5),e.hij(" ",l.charNumFragments," "),e.xp6(3),e.Q6J("ngForOf",l.productLotList)}}function ha(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e.TgZ(4,"div",5),e.TgZ(5,"div"),e._uU(6," Product Details \xa0\xa0\xa0\xa0 "),e.YNc(7,Ji,2,3,"a",6),e.TgZ(8,"span"),e.YNc(9,Ca,1,0,"mat-icon",7),e.qZA(),e.qZA(),e.YNc(10,Ya,15,10,"div",8),e.qZA(),e.qZA(),e.TgZ(11,"mat-card-content"),e.TgZ(12,"table",9),e.TgZ(13,"thead"),e.TgZ(14,"tr",10),e.TgZ(15,"th"),e._uU(16,"Full Product Name"),e.qZA(),e.TgZ(17,"th"),e._uU(18,"Product Type"),e.qZA(),e.TgZ(19,"th"),e._uU(20,"Term and Term Part"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"tbody"),e.YNc(22,Mr,8,3,"tr",11),e.YNc(23,qr,3,0,"tr",1),e.qZA(),e.qZA(),e._UZ(24,"br"),e.TgZ(25,"div",12),e.TgZ(26,"div",13),e.TgZ(27,"div",14),e._uU(28," Non Proprietary Name/INN/USAN Name/Generic Name: "),e.qZA(),e.TgZ(29,"div",15),e._uU(30),e.qZA(),e.qZA(),e.TgZ(31,"div",13),e.TgZ(32,"div",14),e._uU(33," Proprietary Name/Invented Name: "),e.qZA(),e.TgZ(34,"div",15),e._uU(35),e.qZA(),e.qZA(),e.qZA(),e.TgZ(36,"div",12),e.TgZ(37,"div",13),e.TgZ(38,"div",14),e._uU(39," Dosage Form/Pharmacedical Dosage Form: "),e.qZA(),e.TgZ(40,"div",15),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",13),e.TgZ(43,"div",14),e._uU(44," Compose Product Name: "),e.qZA(),e.TgZ(45,"div",15),e._uU(46),e.qZA(),e.qZA(),e.qZA(),e.TgZ(47,"div",12),e.TgZ(48,"div",13),e.TgZ(49,"div",14),e._uU(50," Release Characteristic: "),e.qZA(),e.TgZ(51,"div",15),e._uU(52),e.qZA(),e.qZA(),e.TgZ(53,"div",13),e.TgZ(54,"div",14),e._uU(55," Strength Characteristic: "),e.qZA(),e.TgZ(56,"div",15),e._uU(57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(58,"div",12),e.TgZ(59,"div",13),e.TgZ(60,"div",14),e._uU(61," Country Code: "),e.qZA(),e.TgZ(62,"div",15),e._uU(63),e.qZA(),e.qZA(),e.TgZ(64,"div",13),e.TgZ(65,"div",14),e._uU(66," Language: "),e.qZA(),e.TgZ(67,"div",15),e._uU(68),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"div",12),e.TgZ(70,"div",13),e.TgZ(71,"div",14),e._uU(72," Product Type: "),e.qZA(),e.TgZ(73,"div",15),e._uU(74),e.qZA(),e.qZA(),e.TgZ(75,"div",13),e.TgZ(76,"div",14),e._uU(77," Public Domain: "),e.qZA(),e.TgZ(78,"div",15),e._uU(79),e.qZA(),e.qZA(),e.qZA(),e.TgZ(80,"div",12),e.TgZ(81,"div",13),e.TgZ(82,"div",14),e._uU(83," Source Type: "),e.qZA(),e.TgZ(84,"div",15),e._uU(85),e.qZA(),e.qZA(),e.TgZ(86,"div",13),e.TgZ(87,"div",14),e._uU(88," Source "),e.qZA(),e.TgZ(89,"div",15),e._uU(90),e.qZA(),e.qZA(),e.qZA(),e.TgZ(91,"div",12),e.TgZ(92,"div",13),e.TgZ(93,"div",14),e._uU(94," Unit of Presentation: "),e.qZA(),e.TgZ(95,"div",15),e._uU(96),e.qZA(),e.qZA(),e.TgZ(97,"div",13),e.TgZ(98,"div",14),e._uU(99," Route of Administration: "),e.qZA(),e.TgZ(100,"div",15),e._uU(101),e.qZA(),e.qZA(),e.qZA(),e.TgZ(102,"div",12),e.TgZ(103,"div",13),e.TgZ(104,"div",14),e._uU(105," Status: "),e.qZA(),e.TgZ(106,"div",15),e._uU(107),e.qZA(),e.qZA(),e.TgZ(108,"div",13),e.TgZ(109,"div",14),e._uU(110," Application Type Number: "),e.qZA(),e.TgZ(111,"div",15),e._uU(112),e.qZA(),e.qZA(),e.qZA(),e.TgZ(113,"div",12),e.TgZ(114,"div",13),e.TgZ(115,"div",14),e._uU(116," Product ID/Code:"),e._UZ(117,"br"),e._uU(118," Product Type: "),e.qZA(),e.TgZ(119,"div",15),e.YNc(120,no,7,2,"div",11),e.qZA(),e.qZA(),e.TgZ(121,"div",13),e.TgZ(122,"div",14),e._uU(123," Provenance: "),e.qZA(),e.TgZ(124,"div",15),e._uU(125),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(126,"div",16),e.TgZ(127,"mat-card",4),e.TgZ(128,"mat-card-title",17),e._uU(129),e.qZA(),e.TgZ(130,"mat-card-content"),e.TgZ(131,"table",9),e.TgZ(132,"thead"),e.TgZ(133,"tr"),e.TgZ(134,"th"),e._uU(135,"#"),e.qZA(),e.TgZ(136,"th"),e._uU(137,"Company Name"),e.qZA(),e.TgZ(138,"th"),e._uU(139,"Company Address"),e.qZA(),e.TgZ(140,"th"),e._uU(141,"City"),e.qZA(),e.TgZ(142,"th"),e._uU(143,"State"),e.qZA(),e.TgZ(144,"th"),e._uU(145,"Zip"),e.qZA(),e.TgZ(146,"th"),e._uU(147,"Company Country"),e.qZA(),e.TgZ(148,"th"),e._uU(149,"Company Code"),e.qZA(),e.TgZ(150,"th"),e._uU(151,"Company Code Type"),e.qZA(),e.TgZ(152,"th"),e._uU(153,"Company Role"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(154,"tbody"),e.YNc(155,so,21,10,"tr",11),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(156,"br"),e._UZ(157,"br"),e.TgZ(158,"mat-card",4),e.TgZ(159,"mat-card-content",4),e.TgZ(160,"mat-tab-group"),e.YNc(161,Zr,67,14,"mat-tab",18),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(7),e.Q6J("ngIf",l.isAdmin),e.xp6(2),e.Q6J("ngIf",l.isAdmin),e.xp6(1),e.Q6J("ngIf",l.product.id),e.xp6(12),e.Q6J("ngForOf",l.product.productNameList),e.xp6(1),e.Q6J("ngIf",l.product.productNameList.length<1),e.xp6(7),e.hij(" ",l.product.nonProprietaryName," "),e.xp6(5),e.hij(" ",l.product.proprietaryName," "),e.xp6(6),e.hij(" ",l.product.pharmacedicalDosageForm," "),e.xp6(5),e.hij(" ",l.product.composeProductName," "),e.xp6(6),e.hij(" ",l.product.releaseCharacteristic," "),e.xp6(5),e.hij(" ",l.product.strengthCharacteristic," "),e.xp6(6),e.hij(" ",l.product.countryCode," "),e.xp6(5),e.hij(" ",l.product.language," "),e.xp6(6),e.hij(" ",l.product.productType," "),e.xp6(5),e.hij(" ",l.product.publicDomain," "),e.xp6(6),e.hij(" ",l.product.sourceType," "),e.xp6(5),e.hij(" ",l.product.source," "),e.xp6(6),e.hij(" ",l.product.unitPresentation," "),e.xp6(5),e.hij(" ",l.product.routeAdmin," "),e.xp6(6),e.hij(" ",l.product.status," "),e.xp6(5),e.AsE(" ",l.product.appType,"\xa0",l.product.appNumber," "),e.xp6(8),e.Q6J("ngForOf",l.product.productCodeList),e.xp6(5),e.hij(" ",l.product.provenance," "),e.xp6(4),e.hij(" Company (",l.product.productCompanyList.length,") "),e.xp6(26),e.Q6J("ngForOf",l.product.productCompanyList),e.xp6(6),e.Q6J("ngForOf",l.product.productComponentList)}}var id=function(){var m=function(D){(0,Aa.Z)(a,D);var l=(0,Ra.Z)(a);function a(x,O,W,Le,rt,Ht,In,ei,_i,Mi){var qi;return(0,P.Z)(this,a),(qi=l.call(this,x,O,W,Le,rt,Ht,In,ei,Mi)).productService=x,qi.authService=_i,qi}return(0,t.Z)(a,[{key:"ngOnInit",value:function(){var O=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(W){O.isAdmin=W}),(0,wr.Z)((0,ia.Z)(a.prototype),"ngOnInit",this).call(this)}},{key:"ngAfterViewInit",value:function(){}}]),a}(hn);return m.\u0275fac=function(l){return new(l||m)(e.Y36(Mn.M),e.Y36(A.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(Ie.e),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-product-details"]],features:[e.qOj],decls:5,vars:2,consts:[["class","colororange padtop50px padleft50px",4,"ngIf"],[4,"ngIf"],[1,"colororange","padtop50px","padleft50px"],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"divflexrow"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink",4,"ngIf"],["class","small-icon","svgIcon","open_in_new","matTooltip","opens in new window",4,"ngIf"],["class","width60percent textalignright font11px",4,"ngIf"],[1,"blueTable"],["height","30px"],[4,"ngFor","ngForOf"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"details-container","margintop30px"],[1,"title2"],[3,"label",4,"ngFor","ngForOf"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink"],["svgIcon","edit"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],[1,"width60percent","textalignright","font11px"],[1,"colorgray"],[1,"colororange","font16px","fontbold"],["colspan","3"],[1,"font14px"],[3,"label"],[1,"title2","colorblue"],[1,"row-property-key-2"],[1,"row-property-value-2"],[1,"row-property-4"],[1,"row-property-key-4"],[1,"row-property-value-4"],[1,"colorgreen"],[1,"title3","colororange"],[1,"div-scroll"],["target","_blank",3,"routerLink"]],template:function(l,a){1&l&&(e.YNc(0,$n,6,1,"div",0),e.YNc(1,ha,162,27,"div",1),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br")),2&l&&(e.Q6J("ngIf",a.message),e.xp6(1),e.Q6J("ngIf",a.product&&a.product.id))},directives:[p.O5,s.a8,s.n5,d.yS,f.gM,I.Hw,s.dn,p.sg,B.SP,B.uX],pipes:[p.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;width:100%;max-width:100%}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.div-scroll[_ngcontent-%COMP%]{width:100%;overflow-x:scroll}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px rgba(0,0,0,.12)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:7px;font-size:12px;font-weight:600}.row-property-value[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:20%;max-width:20%;padding:6px;font-size:12px;font-weight:600}.row-property-value-2[_ngcontent-%COMP%]{min-width:80%;max-width:80%;padding:6px;font-size:12px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:25%}.row-property-key-4[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:6px;font-size:12px;font-weight:600}.row-property-value-4[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:#0857d6;padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.marginbottom80px[_ngcontent-%COMP%]{margin-bottom:80px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font20px[_ngcontent-%COMP%]{font-size:20px}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colorgray[_ngcontent-%COMP%]{color:gray}.colorblue[_ngcontent-%COMP%]{color:#00f}.colorgreen[_ngcontent-%COMP%]{color:green}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.colororange[_ngcontent-%COMP%]{color:#e55913}.width45percent[_ngcontent-%COMP%]{width:45%}.width60percent[_ngcontent-%COMP%]{width:60%;max-width:60%}.width650px[_ngcontent-%COMP%]{width:650px;max-width:650px}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.textalignright[_ngcontent-%COMP%]{text-align:right}.backgroundblue[_ngcontent-%COMP%]{background-color:#00f}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid #1C6EA4;background-color:#f2f2f2;width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid #AAAAAA;padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:#f5faee}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:#e8ebe1;border-bottom:1px solid #444444}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:#1a1a1a;border-left:1px solid #D0E4F5;padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#fff;background:#D0E4F5;border-top:2px solid #444444}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:#1C6EA4;color:#fff;padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid red}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px rgba(0,0,0,.12)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}}"]}),m}();function Vl(m,D){if(1&m&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&m){var l=e.oxw();e.xp6(5),e.hij(" ",l.message,"\n")}}function sl(m,D){if(1&m&&(e.ynx(0),e.TgZ(1,"a",14),e._uU(2),e.qZA(),e._uU(3," \xa0\xa0 "),e.TgZ(4,"a",14),e._UZ(5,"img",15),e.qZA(),e.BQk()),2&m){var l=e.oxw(2);e.xp6(1),e.s9C("href",l.dailyMedUrl,e.LSH),e.xp6(1),e.hij(" ",l.product.productNDC," "),e.xp6(2),e.s9C("href",l.dailyMedUrl,e.LSH),e.xp6(1),e.Q6J("src",l.iconSrcPath,e.LSH)}}function xl(m,D){1&m&&(e.TgZ(0,"span"),e._uU(1,"|"),e.qZA())}function Mu(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,xl,2,0,"span",1),e._uU(2),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(1),e.Q6J("ngIf",a>0),e.xp6(1),e.hij("",l.routeName," ")}}function xu(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Mu,3,2,"div",16),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",l.product.prodRouteElistList)}}function Hl(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Oqu(l.firmName),e.xp6(2),e.Oqu(l.dunsNumber),e.xp6(2),e.Oqu(l.feiNumber),e.xp6(2),e.Oqu(l.address),e.xp6(2),e.Oqu(l.city),e.xp6(2),e.Oqu(l.state),e.xp6(2),e.Oqu(l.zip),e.xp6(2),e.Oqu(l.country),e.xp6(2),e.Oqu(l.countryCode)}}function Su(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",11),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",12),e._uU(4," Product Labeler Details "),e.qZA(),e.TgZ(5,"mat-card-content"),e.TgZ(6,"table",17),e.TgZ(7,"thead"),e.TgZ(8,"tr"),e.TgZ(9,"th"),e._uU(10,"Firm Name"),e.qZA(),e.TgZ(11,"th"),e._uU(12,"DUNS Number"),e.qZA(),e.TgZ(13,"th"),e._uU(14,"FEI Number"),e.qZA(),e.TgZ(15,"th"),e._uU(16,"Address"),e.qZA(),e.TgZ(17,"th"),e._uU(18,"City"),e.qZA(),e.TgZ(19,"th"),e._uU(20,"State"),e.qZA(),e.TgZ(21,"th"),e._uU(22,"Zip"),e.qZA(),e.TgZ(23,"th"),e._uU(24,"Country"),e.qZA(),e.TgZ(25,"th"),e._uU(26,"Country Code"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(27,"tbody"),e.YNc(28,Hl,19,9,"tr",16),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(28),e.Q6J("ngForOf",l.product.prodEstablishmentElistList)}}var yc=function(D){return["/substances",D]};function No(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,yc,l._substanceUuid)),e.xp6(1),e.Oqu(l.name)}}function jl(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(2).$implicit;e.hij(" ",l.name," ")}}function Jl(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,No,3,4,"div",20),e.YNc(2,jl,1,1,"ng-template",null,21,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",a._substanceUuid)("ngIfElse",l)}}function Sl(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"img",23),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",l._substanceUuid)}}function Tu(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" in ",l.originalDenominatorNumber," ")}}function Wc(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.originalDenominatorUnit," ")}}function lo(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Jl,4,2,"div",1),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td",19),e.YNc(8,Sl,2,1,"div",1),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.YNc(13,Tu,2,1,"span",1),e.YNc(14,Wc,2,1,"span",1),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Q6J("ngIf",l.name),e.xp6(2),e.hij("",l.activeMoietyName," "),e.xp6(2),e.Q6J("ngIf",l._substanceUuid),e.xp6(2),e.Oqu(l.unii),e.xp6(2),e.AsE(" ",l.originalNumeratorNumber," ",l.originalNumeratorUnit," "),e.xp6(1),e.Q6J("ngIf",l.originalDenominatorNumber),e.xp6(1),e.Q6J("ngIf",l.originalDenominatorUnit&&"1"!==l.originalDenominatorUnit)}}function vs(m,D){if(1&m&&(e.TgZ(0,"mat-card-content"),e.TgZ(1,"table",18),e.TgZ(2,"thead"),e.TgZ(3,"tr"),e.TgZ(4,"th"),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th"),e._uU(7,"Name"),e.qZA(),e.TgZ(8,"th"),e._uU(9,"Active Moiety Name"),e.qZA(),e.TgZ(10,"th"),e._uU(11,"Structure"),e.qZA(),e.TgZ(12,"th"),e._uU(13,"Unii"),e.qZA(),e.TgZ(14,"th"),e._uU(15,"Strength Number (Unit)"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"tbody"),e.YNc(17,lo,15,9,"tr",16),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(17),e.Q6J("ngForOf",l.product.prodActiveElistList)}}function Au(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,yc,l._substanceUuid)),e.xp6(1),e.Oqu(l.name)}}function lr(m,D){if(1&m&&e._uU(0),2&m){var l=e.oxw(2).$implicit;e.hij(" ",l.name," ")}}function ad(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Au,3,4,"div",20),e.YNc(2,lr,1,1,"ng-template",null,24,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",a._substanceUuid)("ngIfElse",l)}}function hp(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,ad,4,2,"div",1),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Q6J("ngIf",l.name),e.xp6(2),e.Oqu(l.unii),e.xp6(2),e.AsE("",l.strengthNumber," ",l.strengthNumeratorUnit,"")}}function ci(m,D){if(1&m&&(e.TgZ(0,"mat-card-content"),e.TgZ(1,"table",18),e.TgZ(2,"thead"),e.TgZ(3,"tr"),e.TgZ(4,"th"),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th"),e._uU(7,"Name"),e.qZA(),e.TgZ(8,"th"),e._uU(9,"Unii"),e.qZA(),e.TgZ(10,"th"),e._uU(11,"Strength Number (Unit)"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,hp,9,5,"tr",16),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(13),e.Q6J("ngForOf",l.product.prodInactiveElistList)}}function _p(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e._uU(4," Product Details\xa0"),e.TgZ(5,"span",5),e._uU(6,"(SPL)"),e.qZA(),e.qZA(),e.TgZ(7,"mat-card-content"),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e._uU(11," Product NDC: "),e.qZA(),e.TgZ(12,"div",9),e.YNc(13,sl,6,4,"ng-container",1),e.qZA(),e.qZA(),e.TgZ(14,"div",7),e.TgZ(15,"div",8),e._uU(16," Application Number: "),e.qZA(),e.TgZ(17,"div",9),e._uU(18),e.qZA(),e.qZA(),e.qZA(),e.TgZ(19,"div",6),e.TgZ(20,"div",7),e.TgZ(21,"div",8),e._uU(22," Product Name: "),e.qZA(),e.TgZ(23,"div",9),e.TgZ(24,"span",10),e._uU(25),e.qZA(),e.qZA(),e.qZA(),e.TgZ(26,"div",7),e.TgZ(27,"div",8),e._uU(28," Product Type: "),e.qZA(),e.TgZ(29,"div",9),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",6),e.TgZ(32,"div",7),e.TgZ(33,"div",8),e._uU(34," Non Proprietary Name: "),e.qZA(),e.TgZ(35,"div",9),e._uU(36),e.qZA(),e.qZA(),e.TgZ(37,"div",7),e.TgZ(38,"div",8),e._uU(39," Proprietary Name Suffix: "),e.qZA(),e.TgZ(40,"div",9),e._uU(41),e.qZA(),e.qZA(),e.qZA(),e.TgZ(42,"div",6),e.TgZ(43,"div",7),e.TgZ(44,"div",8),e._uU(45," Labeler Name: "),e.qZA(),e.TgZ(46,"div",9),e._uU(47),e.qZA(),e.qZA(),e.TgZ(48,"div",7),e.TgZ(49,"div",8),e._uU(50," Dosage Form Name: "),e.qZA(),e.TgZ(51,"div",9),e._uU(52),e.qZA(),e.qZA(),e.qZA(),e.TgZ(53,"div",6),e.TgZ(54,"div",7),e.TgZ(55,"div",8),e._uU(56," Marketing Status: "),e.qZA(),e.TgZ(57,"div",9),e._uU(58),e.qZA(),e.qZA(),e.TgZ(59,"div",7),e.TgZ(60,"div",8),e._uU(61," Marketing Category Code: "),e.qZA(),e.TgZ(62,"div",9),e._uU(63),e.qZA(),e.qZA(),e.qZA(),e.TgZ(64,"div",6),e.TgZ(65,"div",7),e.TgZ(66,"div",8),e._uU(67," Marketing Category Name: "),e.qZA(),e.TgZ(68,"div",9),e._uU(69),e.qZA(),e.qZA(),e.TgZ(70,"div",7),e.TgZ(71,"div",8),e._uU(72," Start Marketing Date: "),e.qZA(),e.TgZ(73,"div",9),e._uU(74),e.ALo(75,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(76,"div",6),e.TgZ(77,"div",7),e.TgZ(78,"div",8),e._uU(79," Route Name: "),e.qZA(),e.TgZ(80,"div",9),e.YNc(81,xu,2,1,"div",1),e.qZA(),e.qZA(),e.TgZ(82,"div",7),e.TgZ(83,"div",8),e._uU(84," End Marketing Date: "),e.qZA(),e.TgZ(85,"div",9),e._uU(86),e.ALo(87,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(88,"div",6),e.TgZ(89,"div",7),e.TgZ(90,"div",8),e._uU(91," Color: "),e.qZA(),e.TgZ(92,"div",9),e._uU(93),e.qZA(),e.qZA(),e.TgZ(94,"div",7),e.TgZ(95,"div",8),e._uU(96," Flavor: "),e.qZA(),e.TgZ(97,"div",9),e._uU(98),e.qZA(),e.qZA(),e.qZA(),e.TgZ(99,"div",6),e.TgZ(100,"div",7),e.TgZ(101,"div",8),e._uU(102," Shape: "),e.qZA(),e.TgZ(103,"div",9),e._uU(104),e.qZA(),e.qZA(),e.TgZ(105,"div",7),e.TgZ(106,"div",8),e._uU(107," Imprint Text: "),e.qZA(),e.TgZ(108,"div",9),e._uU(109),e.qZA(),e.qZA(),e.qZA(),e.TgZ(110,"div",6),e.TgZ(111,"div",7),e.TgZ(112,"div",8),e._uU(113," Size (mm): "),e.qZA(),e.TgZ(114,"div",9),e._uU(115),e.qZA(),e.qZA(),e.TgZ(116,"div",7),e.TgZ(117,"div",8),e._uU(118," Number of Fragments: "),e.qZA(),e.TgZ(119,"div",9),e._uU(120),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(121,Su,29,1,"div",1),e.TgZ(122,"div",11),e.TgZ(123,"mat-card",4),e.TgZ(124,"mat-card-title",12),e._uU(125),e.qZA(),e.YNc(126,vs,18,1,"mat-card-content",1),e.qZA(),e.qZA(),e.TgZ(127,"div",11),e.TgZ(128,"mat-card",13),e.TgZ(129,"mat-card-title",12),e._uU(130),e.qZA(),e.YNc(131,ci,14,1,"mat-card-content",1),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(13),e.Q6J("ngIf",null!==l.product.productNDC),e.xp6(5),e.hij(" ",l.product.applicationNumber," "),e.xp6(7),e.Oqu(l.product.productName),e.xp6(5),e.hij(" ",l.product.productTypeName," "),e.xp6(6),e.hij(" ",l.product.nonProprietaryName," "),e.xp6(5),e.hij(" ",l.product.proprietaryNameSuffix," "),e.xp6(6),e.hij(" ",l.product.labelerName," "),e.xp6(5),e.hij(" ",l.product.dosageFormName," "),e.xp6(6),e.hij(" ",l.product.marketingStatus," "),e.xp6(5),e.hij(" ",l.product.marketingCategoryCode," "),e.xp6(6),e.hij(" ",l.product.marketingCategoryName," "),e.xp6(5),e.hij(" ",e.xi3(75,25,l.product.startMarketingDate,"MM/dd/yyyy")," "),e.xp6(7),e.Q6J("ngIf",l.product.prodRouteElistList.length>0),e.xp6(5),e.hij(" ",e.xi3(87,28,l.product.endMarketingDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",l.product.prodCharElist.colorName," "),e.xp6(5),e.hij(" ",l.product.prodCharElist.flavorName," "),e.xp6(6),e.hij(" ",l.product.prodCharElist.shapeName," "),e.xp6(5),e.hij(" ",l.product.prodCharElist.imprintText," "),e.xp6(6),e.hij(" ",l.product.prodCharElist.sizeMm," "),e.xp6(5),e.hij(" ",l.product.prodCharElist.numberOfFragments," "),e.xp6(1),e.Q6J("ngIf",l.product.prodEstablishmentElistList.length>0),e.xp6(4),e.hij(" Active Ingredient (",l.product.prodActiveElistList.length,") "),e.xp6(1),e.Q6J("ngIf",l.product.prodActiveElistList.length>0),e.xp6(4),e.hij(" Inactive Ingredient\xa0(",l.product.prodInactiveElistList.length,") "),e.xp6(1),e.Q6J("ngIf",l.product.prodInactiveElistList.length>0)}}var gp=function(){var m=function(D){(0,Aa.Z)(a,D);var l=(0,Ra.Z)(a);function a(x,O,W,Le,rt,Ht,In,ei,_i,Mi){var qi;return(0,P.Z)(this,a),(qi=l.call(this,x,O,W,Le,rt,Ht,In,ei,Mi)).configService=_i,qi.dailyMedUrl="",qi.showSpinner=!1,qi}return(0,t.Z)(a,[{key:"ngOnInit",value:function(){this.productId=this.activatedRoute.snapshot.params.id,this.getProduct(),this.iconSrcPath="".concat(this.configService.environment.baseHref||"","assets/icons/fda/icon_dailymed.png")}},{key:"ngAfterViewInit",value:function(){}},{key:"getProduct",value:function(){var O=this;this.loadingService.setLoading(!0),this.productService.getProductElist(this.productId).subscribe(function(W){O.product=W,W&&(O.titleService.setTitle("Product "+O.product.productNDC),O.getSubstanceByApprovalID(),O.dailyMedUrl="https://dailymed.nlm.nih.gov/dailymed/search.cfm?labeltype=all&query="+O.product.productNDC)},function(W){O.message="No Product record found"}),this.loadingService.setLoading(!1)}},{key:"getSubstanceByApprovalID",value:function(){var O=this;null!=this.product&&(this.product.prodActiveElistList.length>0&&(this.product.prodActiveElistList.sort(function(W,Le){return W.name0&&(this.product.prodInactiveElistList.sort(function(W,Le){return W.name0),e.xp6(3),e.Q6J("disabled",a.isLoading||!1===a.validationResult),e.xp6(1),e.hij("",a.validationMessages&&a.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function zc(m,D){if(1&m&&(e.TgZ(0,"div",38),e._UZ(1,"br"),e.TgZ(2,"div",38),e.TgZ(3,"span",39),e._uU(4,"Created By:"),e.qZA(),e._uU(5),e.TgZ(6,"span",39),e._uU(7,"Create Date:"),e.qZA(),e._uU(8),e.ALo(9,"date"),e.TgZ(10,"span",39),e._uU(11,"Modified By:"),e.qZA(),e._uU(12),e.TgZ(13,"span",39),e._uU(14,"Modify Date:"),e.qZA(),e._uU(15),e.ALo(16,"date"),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(5),e.hij(" ",l.product.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(9,4,l.product.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",l.product.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(16,7,l.product.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Pu(m,D){1&m&&e._UZ(0,"hr")}function Is(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",78),e.NdJ("click",function(){return e.CHM(l),e.oxw(4).addNewProductName()}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function Gc(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",79),e.TgZ(1,"div",49),e.TgZ(2,"mat-form-field",44),e.TgZ(3,"input",80),e.NdJ("ngModelChange",function(O){return e.CHM(l).$implicit.productTerm=O}),e.qZA(),e.qZA(),e.TgZ(4,"app-cv-input",81),e.NdJ("valueChange",function(O){return e.CHM(l).$implicit.productTermPart=O}),e.qZA(),e.TgZ(5,"span",73),e._uU(6," \xa0 "),e.qZA(),e.TgZ(7,"button",82),e.NdJ("click",function(){var W=e.CHM(l).index,Le=e.oxw().index;return e.oxw(3).confirmDeleteTermAndTermPart(Le,W)}),e.TgZ(8,"mat-icon"),e._uU(9,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(3),e.Q6J("ngModel",a.productTerm),e.xp6(1),e.Q6J("model",a.productTermPart)}}function ul(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",70),e.YNc(1,Pu,1,0,"hr",5),e.TgZ(2,"div",49),e.TgZ(3,"mat-form-field",44),e.TgZ(4,"input",71),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.productName=Le}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",72),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.productNameType=Le}),e.qZA(),e.TgZ(6,"span",73),e.YNc(7,Is,3,0,"button",74),e.qZA(),e.TgZ(8,"button",75),e.NdJ("click",function(){var rt=e.CHM(l).index;return e.oxw(3).confirmDeleteProductName(rt)}),e.TgZ(9,"mat-icon"),e._uU(10,"delete_forever"),e.qZA(),e.qZA(),e.TgZ(11,"button",76),e.NdJ("click",function(){var rt=e.CHM(l).index;return e.oxw(3).addNewTermAndTermPart(rt)}),e._uU(12," Add Term and Term Part "),e.qZA(),e.qZA(),e.YNc(13,Gc,10,2,"div",77),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw(3);e.xp6(1),e.Q6J("ngIf",x>0),e.xp6(3),e.Q6J("ngModel",a.productName),e.xp6(1),e.Q6J("model",a.productNameType),e.xp6(2),e.Q6J("ngIf",0==x),e.xp6(1),e.Q6J("disabled",1==O.product.productNameList.length),e.xp6(1),e.ekj("disabled",1==O.product.productNameList.length),e.xp6(4),e.Q6J("ngForOf",a.productTermAndTermPartList)}}function So(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",90),e.NdJ("click",function(){return e.CHM(l),e.oxw(4).addNewProductCode()}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function To(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",70),e.TgZ(1,"div",83),e.TgZ(2,"div",49),e.TgZ(3,"mat-form-field",84),e.TgZ(4,"input",85),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.productCode=Le}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",86),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.productCodeType=Le}),e.qZA(),e.qZA(),e.TgZ(6,"span",87),e.YNc(7,So,3,0,"button",88),e.qZA(),e.TgZ(8,"button",89),e.NdJ("click",function(){var rt=e.CHM(l).index;return e.oxw(3).confirmDeleteProductCode(rt)}),e.TgZ(9,"mat-icon"),e._uU(10,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw(3);e.xp6(4),e.Q6J("ngModel",a.productCode),e.xp6(1),e.Q6J("model",a.productCodeType),e.xp6(2),e.Q6J("ngIf",0==x),e.xp6(1),e.Q6J("disabled",1==O.product.productCodeList.length),e.xp6(1),e.ekj("disabled",1==O.product.productCodeList.length)}}function Uo(m,D){1&m&&e._UZ(0,"hr")}function Tl(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",104),e.NdJ("click",function(){return e.CHM(l),e.oxw(4).addNewProductCompany()}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function Cc(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",70),e.YNc(1,Uo,1,0,"hr",5),e.TgZ(2,"div",49),e.TgZ(3,"mat-form-field",91),e.TgZ(4,"input",92),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.companyName=Le}),e.qZA(),e.qZA(),e.TgZ(5,"mat-form-field",91),e.TgZ(6,"input",93),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.companyAddress=Le}),e.qZA(),e.qZA(),e.TgZ(7,"mat-form-field",91),e.TgZ(8,"input",94),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.companyCity=Le}),e.qZA(),e.qZA(),e.TgZ(9,"mat-form-field",91),e.TgZ(10,"input",95),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.companyState=Le}),e.qZA(),e.qZA(),e.TgZ(11,"mat-form-field",91),e.TgZ(12,"input",96),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.companyZip=Le}),e.qZA(),e.qZA(),e.TgZ(13,"app-cv-input",97),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.companyCountry=Le}),e.qZA(),e.qZA(),e.TgZ(14,"div",83),e.TgZ(15,"div",49),e.TgZ(16,"app-cv-input",98),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.companyRole=Le}),e.qZA(),e.TgZ(17,"mat-form-field",99),e.TgZ(18,"input",100),e.NdJ("ngModelChange",function(Le){return e.CHM(l).$implicit.companyCode=Le}),e.qZA(),e.qZA(),e.TgZ(19,"app-cv-input",101),e.NdJ("valueChange",function(Le){return e.CHM(l).$implicit.companyCodeType=Le}),e.qZA(),e.qZA(),e.TgZ(20,"span",87),e.YNc(21,Tl,3,0,"button",102),e.qZA(),e.TgZ(22,"button",103),e.NdJ("click",function(){var rt=e.CHM(l).index;return e.oxw(3).confirmDeleteProductCompany(rt)}),e.TgZ(23,"mat-icon"),e._uU(24,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw(3);e.xp6(1),e.Q6J("ngIf",x>0),e.xp6(3),e.Q6J("ngModel",a.companyName),e.xp6(2),e.Q6J("ngModel",a.companyAddress),e.xp6(2),e.Q6J("ngModel",a.companyCity),e.xp6(2),e.Q6J("ngModel",a.companyState),e.xp6(2),e.Q6J("ngModel",a.companyZip),e.xp6(1),e.Q6J("model",a.companyCountry),e.xp6(3),e.Q6J("model",a.companyRole),e.xp6(2),e.Q6J("ngModel",a.companyCode),e.xp6(1),e.Q6J("model",a.companyCodeType),e.xp6(2),e.Q6J("ngIf",0==x),e.xp6(1),e.Q6J("disabled",1==O.product.productCompanyList.length),e.xp6(1),e.ekj("disabled",1==O.product.productCompanyList.length)}}function ys(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",70),e.TgZ(1,"app-product-component-form",105),e.NdJ("expiryDateMessageOut",function(Le){return e.CHM(l),e.oxw(3).expiryDateMessageOutChange(Le)})("manufactureDateMessageOut",function(Le){return e.CHM(l),e.oxw(3).manufactureDateMessageOutChange(Le)}),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw(3);e.xp6(1),e.Q6J("productComponent",a)("totalComponent",O.product.productComponentList.length)("prodComponentIndex",x)}}function Du(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-card",40),e.TgZ(1,"mat-card-content"),e.TgZ(2,"div",41),e.YNc(3,ul,14,8,"div",42),e.qZA(),e._UZ(4,"br"),e.TgZ(5,"div"),e.TgZ(6,"div",43),e.TgZ(7,"mat-form-field",44),e.TgZ(8,"input",45),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).product.nonProprietaryName=O}),e.qZA(),e.qZA(),e.TgZ(9,"mat-form-field",46),e.TgZ(10,"input",47),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).product.proprietaryName=O}),e.qZA(),e.qZA(),e.TgZ(11,"mat-form-field",46),e.TgZ(12,"input",48),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).product.composeProductName=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(13,"div",49),e.TgZ(14,"app-cv-input",50),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.pharmacedicalDosageForm=O}),e.qZA(),e.TgZ(15,"app-cv-input",51),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.releaseCharacteristic=O}),e.qZA(),e.TgZ(16,"mat-form-field",46),e.TgZ(17,"input",52),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).product.strengthCharacteristic=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",49),e.TgZ(19,"app-cv-input",53),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.status=O}),e.qZA(),e.TgZ(20,"app-cv-input",54),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.routeAdmin=O}),e.qZA(),e.TgZ(21,"app-cv-input",55),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.unitPresentation=O}),e.qZA(),e.TgZ(22,"app-cv-input",56),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.publicDomain=O}),e.qZA(),e.qZA(),e.TgZ(23,"div",49),e.TgZ(24,"mat-form-field",46),e.TgZ(25,"input",57),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).product.appNumber=O}),e.qZA(),e.qZA(),e.TgZ(26,"app-cv-input",58),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.appType=O}),e.qZA(),e.TgZ(27,"mat-form-field",46),e.TgZ(28,"input",59),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).product.source=O}),e.qZA(),e.qZA(),e.TgZ(29,"app-cv-input",60),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.sourceType=O}),e.qZA(),e.qZA(),e.TgZ(30,"div",49),e.TgZ(31,"app-cv-input",61),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.productType=O}),e.qZA(),e.TgZ(32,"app-cv-input",62),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.provenance=O}),e.qZA(),e.TgZ(33,"app-cv-input",63),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.countryCode=O}),e.qZA(),e.TgZ(34,"app-cv-input",64),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).product.language=O}),e.qZA(),e.qZA(),e.YNc(35,To,11,6,"div",42),e.TgZ(36,"div",65),e.YNc(37,Cc,25,14,"div",42),e.qZA(),e.TgZ(38,"div",33),e._UZ(39,"br"),e._UZ(40,"hr"),e._UZ(41,"br"),e.TgZ(42,"span",66),e.TgZ(43,"span",67),e._uU(44,"MANUFACTURE ITEM "),e.qZA(),e.qZA(),e._uU(45," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(46,"button",68),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).addNewProductComponent()}),e._UZ(47,"mat-icon",69),e._uU(48,"Add Manufacture Item "),e.qZA(),e._UZ(49,"br"),e._UZ(50,"br"),e.YNc(51,ys,2,3,"div",42),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(3),e.Q6J("ngForOf",a.product.productNameList),e.xp6(5),e.Q6J("ngModel",a.product.nonProprietaryName),e.xp6(2),e.Q6J("ngModel",a.product.proprietaryName),e.xp6(2),e.Q6J("ngModel",a.product.composeProductName),e.xp6(2),e.Q6J("model",a.product.pharmacedicalDosageForm),e.xp6(1),e.Q6J("model",a.product.releaseCharacteristic),e.xp6(2),e.Q6J("ngModel",a.product.strengthCharacteristic),e.xp6(2),e.Q6J("model",a.product.status),e.xp6(1),e.Q6J("model",a.product.routeAdmin),e.xp6(1),e.Q6J("model",a.product.unitPresentation),e.xp6(1),e.Q6J("model",a.product.publicDomain),e.xp6(3),e.Q6J("ngModel",a.product.appNumber),e.xp6(1),e.Q6J("model",a.product.appType),e.xp6(2),e.Q6J("ngModel",a.product.source),e.xp6(1),e.Q6J("model",a.product.sourceType),e.xp6(2),e.Q6J("model",a.product.productType),e.xp6(1),e.Q6J("model",a.product.provenance),e.xp6(1),e.Q6J("model",a.product.countryCode),e.xp6(1),e.Q6J("model",a.product.language),e.xp6(1),e.Q6J("ngForOf",a.product.productCodeList),e.xp6(2),e.Q6J("ngForOf",a.product.productCompanyList),e.xp6(5),e.s9C("matBadge",a.product.productComponentList.length),e.xp6(9),e.Q6J("ngForOf",a.product.productComponentList)}}function ld(m,D){if(1&m&&(e.TgZ(0,"div",33),e.TgZ(1,"div",34),e.TgZ(2,"div",35),e._uU(3),e.qZA(),e.YNc(4,zc,17,10,"div",36),e.qZA(),e.YNc(5,Du,52,23,"mat-card",37),e._UZ(6,"br"),e._UZ(7,"br"),e._UZ(8,"br"),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.hij(" ",l.title," "),e.xp6(1),e.Q6J("ngIf",l.product.id),e.xp6(1),e.Q6J("ngIf",l.product)}}var Mc=function(){return["/home"]},cd=function(D,l){return{"submission-messages":!0,collapsed:D,expanded:l}},xc=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi){(0,P.Z)(this,D),this.productService=l,this.authService=a,this.loadingService=x,this.mainNotificationService=O,this.gaService=W,this.utilsService=Le,this.cvService=rt,this.activatedRoute=Ht,this.router=In,this.overlayContainerService=ei,this.dialog=_i,this.titleService=Mi,this.isLoading=!0,this.showSubmissionMessages=!1,this.validationMessages=[],this.validationResult=!1,this.subscriptions=[],this.isDisableData=!1,this.username=null,this.title=null,this.isAdmin=!1,this.expiryDateMessage="",this.manufactureDateMessage="",this.viewProductUrl="",this.message=""}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.isAdmin=this.authService.hasRoles("admin"),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.username=this.authService.getUser();var x=this.activatedRoute.params.subscribe(function(O){if(O.id){var W=O.id;a.title="Update Product",W!==a.id&&(a.id=W,a.gaService.sendPageView("Product Edit"),a.getProductDetails())}else a.title="Register New Product",setTimeout(function(){a.gaService.sendPageView("Product Register"),a.titleService.setTitle("Register Product"),a.productService.loadProduct(),a.product=a.productService.product,a.loadingService.setLoading(!1),a.isLoading=!1})});this.subscriptions.push(x)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getProductDetails",value:function(a){var x=this;if(null!=this.id){var O=this.id.toString();this.productService.getProduct(O).subscribe(function(W){if(W){x.productService.loadProduct(W),x.product=x.productService.product,0==x.product.productCodeList.length&&(x.product.productCodeList=[{}]);var Le="";if(x.product.productCodeList.length>0){var Ht,rt=(0,xo.Z)(x.product.productCodeList);try{for(rt.s();!(Ht=rt.n()).done;){var In=Ht.value;if(In&&In.productCode){Le=In.productCode;break}}}catch(ei){rt.e(ei)}finally{rt.f()}}x.titleService.setTitle("Edit Product "+Le)}else x.handleProductRetrivalError();x.loadingService.setLoading(!1),x.isLoading=!1},function(W){x.message="No Product Record found for Id "+x.id,x.gaService.sendException("getProductDetails: error from API call"),x.loadingService.setLoading(!1),x.isLoading=!1,x.handleProductRetrivalError()})}}},{key:"validate",value:function(a){var x=this;this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.validateClient(),0===this.validationMessages.length&&(this.showSubmissionMessages=!1,this.productService.validateProduct().pipe((0,Ee.q)(1)).subscribe(function(O){x.submissionMessage=null,x.validationMessages=O.validationMessages.filter(function(W){return"ERROR"===W.messageType.toUpperCase()||"WARNING"===W.messageType.toUpperCase()}),x.validationResult=O.valid,x.showSubmissionMessages=!0,x.loadingService.setLoading(!1),x.isLoading=!1,0===x.validationMessages.length&&!0===O.valid&&(x.submissionMessage="Product is Valid. Would you like to submit?")},function(O){x.addServerError(O),x.loadingService.setLoading(!1),x.isLoading=!1}))}},{key:"setValidationMessage",value:function(a){var x={};x.message=a,x.messageType="ERROR",this.validationMessages.push(x),this.validationResult=!1}},{key:"validateClient",value:function(){var a=this;this.submissionMessage=null,this.validationMessages=[],this.validationResult=!0,null!==this.expiryDateMessage&&this.expiryDateMessage.length>0&&this.setValidationMessage(this.expiryDateMessage),null!==this.manufactureDateMessage&&this.manufactureDateMessage.length>0&&this.setValidationMessage(this.manufactureDateMessage),null!=this.product&&this.product.productComponentList.forEach(function(x){null!=x&&x.productLotList.forEach(function(O){null!=O&&O.productIngredientList.forEach(function(W){null!=W&&(W.average&&!1===a.isNumber(W.average)&&a.setValidationMessage("Average must be a number"),W.low&&!1===a.isNumber(W.low)&&a.setValidationMessage("Low must be a number"),W.high&&!1===a.isNumber(W.high)&&a.setValidationMessage("High must be a number"),W.$$ingredientNameValidation&&a.setValidationMessage(W.$$ingredientNameValidation),W.$$basisOfStrengthValidation&&a.setValidationMessage(W.$$basisOfStrengthValidation))})})}),this.validationMessages.length>0&&(this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1)}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"addServerError",value:function(a){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var x={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};a&&a.error&&a.error.message?x.message="Server Error "+(a.status+": "||0)+a.error.message:a&&a.error&&"string"==typeof a.error?x.message="Server Error "+(a.status+": "||0)+a.error:a&&a.message&&(x.message="Server Error "+(a.status+": "||0)+a.message),this.validationMessages=[x],this.showSubmissionMessages=!0}},{key:"submit",value:function(){var a=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.product=this.cleanProduct(),this.productService.saveProduct().subscribe(function(x){a.loadingService.setLoading(!1),a.isLoading=!1,a.validationMessages=null,a.submissionMessage="Product was saved successfully!",a.showSubmissionMessages=!0,a.validationResult=!1,setTimeout(function(){if(a.showSubmissionMessages=!1,a.submissionMessage="",x.id){a.productService.bypassUpdateCheck();var O=x.id;a.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},a.router.onSameUrlNavigation="reload",a.router.navigate(["/product",O,"edit"])}},4e3)})}},{key:"handleProductRetrivalError",value:function(){var a=this;this.mainNotificationService.setNotification({message:"The product you're trying to edit doesn't exist.",type:Tn.k.error,milisecondsToShow:4e3}),setTimeout(function(){a.router.navigate(["/product/register"]),a.productService.loadProduct()},5e3)}},{key:"cleanProduct",value:function(){var a=JSON.stringify(this.product),x=JSON.parse(a);return x.productComponentList.forEach(function(O){null!=O&&O.productLotList.forEach(function(W){null!=W&&W.productIngredientList.forEach(function(Le){null!=Le&&((Le.$$ingredientNameValidation||""===Le.$$ingredientNameValidation)&&delete Le.$$ingredientNameValidation,(Le.$$basisOfStrengthValidation||""===Le.$$basisOfStrengthValidation)&&delete Le.$$basisOfStrengthValidation)})})}),x}},{key:"showJSON",value:function(){var x=this.dialog.open(Ts,{width:"90%",height:"90%",data:this.product}).afterClosed().subscribe(function(O){});this.subscriptions.push(x)}},{key:"confirmDeleteProduct",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete this Product?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteProduct(a)})}},{key:"deleteProduct",value:function(a){var x=this;this.productService.deleteProduct(a).subscribe(function(O){x.productService.bypassUpdateCheck(),x.displayMessageAfterDeleteProd()},function(O){console.log(O)})}},{key:"displayMessageAfterDeleteProd",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"This product record was deleted successfully",type:"home"}}).afterClosed().subscribe(function(O){a.router.navigate(["/home"])})}},{key:"addNewProductName",value:function(){this.productService.addNewProductName()}},{key:"confirmDeleteProductName",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Product Name "+(a+1)+" ?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteProductName(a)})}},{key:"deleteProductName",value:function(a){this.productService.deleteProductName(a)}},{key:"addNewTermAndTermPart",value:function(a){this.productService.addNewTermAndTermPart(a)}},{key:"confirmDeleteTermAndTermPart",value:function(a,x){var O=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Term and Term Part "+(x+1)+" ?"}}).afterClosed().subscribe(function(Le){Le&&!0===Le&&O.deleteTermAndTermPart(a,x)})}},{key:"deleteTermAndTermPart",value:function(a,x){this.productService.deleteTermAndTermPart(a,x)}},{key:"addNewProductCode",value:function(){this.productService.addNewProductCode()}},{key:"confirmDeleteProductCode",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Product Code "+(a+1)+" ?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteProductCode(a)})}},{key:"deleteProductCode",value:function(a){this.productService.deleteProductCode(a)}},{key:"addNewProductCompany",value:function(){this.productService.addNewProductCompany()}},{key:"confirmDeleteProductCompany",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Product Company "+(a+1)+" ?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteProductCompany(a)})}},{key:"deleteProductCompany",value:function(a){this.productService.deleteProductCompany(a)}},{key:"addNewProductComponent",value:function(){this.productService.addNewProductComponent()}},{key:"expiryDateMessageOutChange",value:function(a){this.expiryDateMessage=a}},{key:"manufactureDateMessageOutChange",value:function(a){this.manufactureDateMessage=a}},{key:"isNumber",value:function(a){if(a){var x=Number(a);return!isNaN(x)}return!1}},{key:"getViewProductUrl",value:function(){return this.productService.getViewProductUrl(this.id)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(Mn.M),e.Y36(Ie.e),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(ka.I),e.Y36(d.gz),e.Y36(d.F0),e.Y36(qe.Xj),e.Y36(qt.uw),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-product-form"]],decls:21,vars:11,consts:[[1,"top-fixed"],[1,"actions-container"],["mat-flat-button","","color","primary",3,"click"],["mat-flat-button","","class","hide-show-messages",3,"disabled","click",4,"ngIf"],[1,"middle-fill"],[4,"ngIf"],["mat-flat-button","","color","warn",3,"click"],["mat-flat-button","","color","primary","matTooltip","Close this window",3,"routerLink"],[3,"ngClass"],["class","submission-message",4,"ngIf"],[1,"form-content-container","mat-form-field-style"],[1,"scrollable-container"],[1,"cards-container"],["class","",4,"ngIf"],["mat-flat-button","",1,"hide-show-messages",3,"disabled","click"],[3,"svgIcon"],["mat-flat-button","","color","primary","matTooltip","Browse Product",3,"routerLink"],["mat-flat-button","","color","primary","matTooltip","Register a New Product",3,"routerLink"],["mat-flat-button","","color","primary","target","_blank","matTooltip","Opens in a new window",3,"routerLink"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],["mat-flat-button","","color","primary","matTooltip","Delete this Product",3,"click"],[1,"submission-message"],[1,"dismiss-container"],["mat-flat-button","","color","primary",3,"disabled","click"],["class","validation-message",4,"ngFor","ngForOf"],[1,"validation-message"],[1,"message-type",3,"ngClass"],[1,"message"],[4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Dismiss",3,"click",4,"ngIf"],["target","_blank",3,"href"],["mat-icon-button","","matTooltip","Dismiss",3,"click"],["svgIcon","cancel"],[1,""],[1,"title_box"],[1,"title"],["class","font11px",4,"ngIf"],["class","bordergray",4,"ngIf"],[1,"font11px"],[1,"colorgray"],[1,"bordergray"],[1,"borderlightgray","marginleftneg10px","marginrightneg10px","padleft10px","padright10px"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"row"],[1,"col-2"],["matInput","","placeholder","Non Proprietary Name/INN/USAN Name/Generic Name","name","nonProprietaryName",3,"ngModel","ngModelChange"],[1,"col-1"],["matInput","","placeholder","Proprietary Name/Invented Name","name","proprietaryName",3,"ngModel","ngModelChange"],["matInput","","placeholder","Compose Product Name","name","composeProductName",3,"ngModel","ngModelChange"],[1,"form-row"],["domain","PROD_PHARMACEDICAL_DOSAGE_FORM","title","Dosage Form/Pharmacedical Dosage Form","name","pharmacedicalDosageForm",1,"col-2",3,"model","valueChange"],["domain","PROD_RELEASE_CHARACTERISTIC","title","Release Characteristic","name","releaseCharacteristic",1,"col-1",3,"model","valueChange"],["matInput","","placeholder","Strength Characteristic","name","strengthCharacteristic",3,"ngModel","ngModelChange"],["domain","PROD_STATUS","title","Status","name","status",1,"col-1",3,"model","valueChange"],["domain","PROD_ROUTE_OF_ADMIN","title","Route of Administration","name","routeAdmin",1,"col-1",3,"model","valueChange"],["domain","PROD_UNIT_PRESENTATION","title","Unit of Presentation","name","unitPresentation",1,"col-1",3,"model","valueChange"],["domain","PUBLIC_DOMAIN","title","Public Domain","name","publicDomain",1,"col-1",3,"model","valueChange"],["matInput","","placeholder","Application Number","name","source",3,"ngModel","ngModelChange"],["domain","APPLICATION_TYPE","title","Application Type","name","appType",1,"col-1",3,"model","valueChange"],["matInput","","placeholder","Source","name","source",3,"ngModel","ngModelChange"],["domain","PROD_SOURCE_TYPE","title","Source Type","name","sourceType",1,"col-1",3,"model","valueChange"],["domain","PROD_PRODUCT_TYPE","title","Product Type","name","productType",1,"col-1",3,"model","valueChange"],["domain","PROD_PROVENANCE","title","Provenance","name","provenance",1,"col-1",3,"model","valueChange"],["domain","PROD_COUNTRY_CODE","title","Country Code","name","countryCode",1,"col-1",3,"model","valueChange"],["domain","LANGUAGE","title","Language","name","language",1,"col-1",3,"model","valueChange"],[1,"bordergray","marginleftneg10px","marginrightneg10px","padleft10px","padright10px"],["matBadgeOverlap","false",3,"matBadge"],[1,"titlegreen"],["mat-raised-button","","color","primary","matTooltip","Add New Manufacture",3,"click"],["svgIcon","add_circle_outline"],[1,"marginbottom10px"],["matInput","","placeholder","Product Name","name","productName",3,"ngModel","ngModelChange"],["domain","PROD_PRODUCT_NAME_TYPE","title","Product Name Type","name","productNameType",1,"col-1",3,"model","valueChange"],[1,"width40px","displayinlineblock","marginleftneg5px"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Name",3,"disabled","click"],[1,"buttontermpart",3,"click"],["class","bkcolorlightblue",4,"ngFor","ngForOf"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click"],[1,"bkcolorlightblue"],["matInput","","placeholder","Term","name","productTerm",3,"ngModel","ngModelChange"],["domain","PROD_TERM_PART","title","Product Term Part","name","productTermPart",1,"col-1",3,"model","valueChange"],["mat-icon-button","","color","primary","matTooltip","Delete Product Term and Term Part",3,"click"],[1,"divflexrow"],[1,"col-4-5"],["matInput","","placeholder","Product Code","name","productCode",3,"ngModel","ngModelChange"],["domain","PROD_PRODUCT_CODE_TYPE","title","Product Code Type","name","productCodeType",1,"col-1-5",3,"model","valueChange"],[1,"width40px","displayinlineblock"],["mat-icon-button","","color","primary","matTooltip","Add New Product Code",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Code",3,"disabled","click"],["mat-icon-button","","color","primary","matTooltip","Add New Product Code",3,"click"],[1,"col-6-1"],["matInput","","placeholder","Company Name","name","companyName",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company Address","name","companyAddress",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company City","name","companyCity",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company State","name","companyState",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company Zip","name","companyZip",3,"ngModel","ngModelChange"],["domain","PROD_COUNTRY_CODE","title","Company Country","name","companyCountry",1,"col-6-1",3,"model","valueChange"],["domain","PROD_COMPANY_ROLE","title","Company Role","name","companyRole",1,"col-6-2",3,"model","valueChange"],[1,"col-6-2"],["matInput","","placeholder","Company Code","name","companyCode",3,"ngModel","ngModelChange"],["domain","PROD_COMPANY_CODE_TYPE","title","Company Code Type","name","companyCodeType",1,"col-6-2",3,"model","valueChange"],["mat-icon-button","","color","primary","matTooltip","Add New Company",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Company",3,"disabled","click"],["mat-icon-button","","color","primary","matTooltip","Add New Company",3,"click"],[3,"productComponent","totalComponent","prodComponentIndex","expiryDateMessageOut","manufactureDateMessageOut"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"button",2),e.NdJ("click",function(){return a.showJSON()}),e._uU(3,"Show JSON"),e.qZA(),e.YNc(4,Ia,3,3,"button",3),e._UZ(5,"span",4),e.YNc(6,Ql,2,1,"span",5),e._uU(7," \xa0 "),e.TgZ(8,"button",6),e.NdJ("click",function(){return a.validate()}),e._uU(9,"Validate and Submit"),e.qZA(),e._uU(10," \xa0\xa0\xa0\xa0\xa0 "),e.TgZ(11,"button",7),e._uU(12,"Close"),e.qZA(),e.qZA(),e.TgZ(13,"div",8),e.YNc(14,od,2,1,"div",9),e.YNc(15,lc,6,3,"div",5),e.qZA(),e.qZA(),e.TgZ(16,"div",10),e.TgZ(17,"div",11),e.TgZ(18,"div",12),e.YNc(19,ld,9,3,"div",13),e.qZA(),e.qZA(),e._UZ(20,"br"),e.qZA()),2&l&&(e.xp6(4),e.Q6J("ngIf",a.validationMessages&&a.validationMessages.length>0),e.xp6(2),e.Q6J("ngIf",a.product),e.xp6(5),e.Q6J("routerLink",e.DdM(7,Mc)),e.xp6(2),e.Q6J("ngClass",e.WLB(8,cd,!a.showSubmissionMessages,a.showSubmissionMessages)),e.xp6(1),e.Q6J("ngIf",a.submissionMessage),e.xp6(1),e.Q6J("ngIf",a.validationMessages),e.xp6(4),e.Q6J("ngIf",a.product))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.titlegreen[_ngcontent-%COMP%]{color:green;font-size:17px;font-weight:500}.titleorange[_ngcontent-%COMP%]{color:#ff4500;font-size:17px;font-weight:500}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-2[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.form-row[_ngcontent-%COMP%] .col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-1-5[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-5[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-4-5[_ngcontent-%COMP%]{width:calc((100% - 5px)*.8);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-4-5[_ngcontent-%COMP%]:last-child{margin-right:0}.row[_ngcontent-%COMP%]{width:100%}.col-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1-5[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-1-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-5[_ngcontent-%COMP%]{width:calc((100% - 5px)*.8);margin-right:20px}.col-4-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-2[_ngcontent-%COMP%]{width:calc((100% - 10px) / 3);margin-right:20px}.col-6-2[_ngcontent-%COMP%]:last-child{margin-right:0}.validate-button[_ngcontent-%COMP%]{margin-left:15px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1200px;min-width:1200px;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.buttontermpart[_ngcontent-%COMP%]{height:35px!important;margin-top:10px}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:start;justify-content:flex-start}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.marginright5px[_ngcontent-%COMP%]{margin-right:5px}.marginright10px[_ngcontent-%COMP%]{margin-right:10px}.marginright20px[_ngcontent-%COMP%]{margin-right:20px}.marginright30px[_ngcontent-%COMP%]{margin-right:30px}.marginright35px[_ngcontent-%COMP%]{margin-right:35px}.marginright60px[_ngcontent-%COMP%]{margin-right:60px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.marginrightneg10px[_ngcontent-%COMP%]{margin-right:-10px}.marginleftneg5px[_ngcontent-%COMP%]{margin-left:-5px}.marginleftneg10px[_ngcontent-%COMP%]{margin-left:-10px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padright5px[_ngcontent-%COMP%]{padding-right:5px}.padright10px[_ngcontent-%COMP%]{padding-right:10px}.padleft5px[_ngcontent-%COMP%]{padding-left:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleftnegleft10[_ngcontent-%COMP%]{padding-left:-10px}.colorgray[_ngcontent-%COMP%]{color:gray}.width95percent[_ngcontent-%COMP%]{width:95%}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width550px[_ngcontent-%COMP%]{width:550px}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #c5c7c9}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.bkcolorlightblue[_ngcontent-%COMP%]{background-color:#efeff0}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted green;color:#333;overflow:visible;text-align:center;height:5px}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-infix[_ngcontent-%COMP%], .mat-form-field-style[_ngcontent-%COMP%] .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important;font-size:14px}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.boxshadow[_ngcontent-%COMP%]{box-shadow:2px 4px 12px #918c91}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:0}"]}),m}();function kr(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",25),e.TgZ(1,"app-product-lot-form",26),e.NdJ("expiryDateMessageOut",function(Le){return e.CHM(l),e.oxw().expiryDateMessageOutChange(Le)})("manufactureDateMessageOut",function(Le){return e.CHM(l),e.oxw().manufactureDateMessageOutChange(Le)}),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=e.oxw();e.xp6(1),e.Q6J("productLot",a)("totalLot",O.productComponent.productLotList.length)("prodLotIndex",x)("prodComponentIndex",O.prodComponentIndex)}}var Ls=function(){return{color:"green"}},Fs=function(){var m=function(){function D(l,a,x,O){(0,P.Z)(this,D),this.productService=l,this.cvService=a,this.authService=x,this.dialog=O,this.expiryDateMessageOut=new e.vpe,this.manufactureDateMessageOut=new e.vpe,this.productMessage="",this.username=null,this.expiryDateMessage="",this.manufactureDateMessage=""}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.username=this.authService.getUser()}},{key:"confirmDeleteComponent",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Manufacture Item Details "+(a+1)+" data?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteProductComponent(a)})}},{key:"deleteProductComponent",value:function(a){this.productService.deleteProductComponent(a)}},{key:"addNewProductLot",value:function(a){this.productService.addNewProductLot(a)}},{key:"copyProductComponent",value:function(){this.productService.copyProductComponent(this.productComponent)}},{key:"expiryDateMessageOutChange",value:function(a){this.expiryDateMessage=a,this.expiryDateMessageOut.emit(this.expiryDateMessage)}},{key:"manufactureDateMessageOutChange",value:function(a){this.manufactureDateMessage=a,this.manufactureDateMessageOut.emit(this.manufactureDateMessage)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(Mn.M),e.Y36(ka.I),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-product-component-form"]],inputs:{productComponent:"productComponent",totalComponent:"totalComponent",prodComponentIndex:"prodComponentIndex"},outputs:{expiryDateMessageOut:"expiryDateMessageOut",manufactureDateMessageOut:"manufactureDateMessageOut"},decls:47,vars:23,consts:[[1,"marginbottomminus17px","padleft250px"],["mat-icon-button","",3,"ngStyle","disabled","matTooltip","click"],["mat-icon-button","",3,"ngStyle","matTooltip","click"],[1,"border"],[1,"colorgreen","font17px"],[1,"form-row","margintop10px"],["domain","DOSAGE_FORM","title","Dosage Form","name","dosageForm",1,"col-2-4",3,"model","valueChange"],["domain","PROD_CHARACTER_COLOR","title","Color Name","name","charColor",1,"col-1-4",3,"model","valueChange"],["domain","PROD_CHARACTER_FLAVOR","title","Flavor Name","name","charFlavor",1,"col-1-4",3,"model","valueChange"],[1,"form-row"],[1,"col-1-4"],["matInput","","placeholder","Amount","name","amount",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-1-4",3,"model","valueChange"],["matInput","","placeholder","Manufacture Code","name","manufactureCode",3,"ngModel","ngModelChange"],["domain","PROD_MANUFACTURE_CODE_TYPE","title","Manufacture Code Type","name","manufactureCodeType",1,"col-1-4",3,"model","valueChange"],["domain","PROD_CHARACTER_SHAPE","title","Shape Name","name","charShape",1,"col-1-4",3,"model","valueChange"],["domain","PROD_CHARACTER_FRAGMENTS","title","Scoring","name","charNumFragments",1,"col-1-4",3,"model","valueChange"],["matInput","","placeholder","Size","name","charSize",3,"ngModel","ngModelChange"],["matInput","","placeholder","Imprint Text","name","charImprintText",3,"ngModel","ngModelChange"],[1,""],["matBadgeOverlap","false",3,"matBadge"],[1,"titlebrown"],["mat-raised-button","","color","primary","matTooltip","Add New Lot",3,"click"],["svgIcon","add_circle_outline"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"marginbottom10px"],[3,"productLot","totalLot","prodLotIndex","prodComponentIndex","expiryDateMessageOut","manufactureDateMessageOut"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"button",1),e.NdJ("click",function(){return a.confirmDeleteComponent(a.prodComponentIndex)}),e.TgZ(2,"mat-icon"),e._uU(3,"delete_forever"),e.qZA(),e.qZA(),e._uU(4," \xa0\xa0 "),e.TgZ(5,"button",2),e.NdJ("click",function(){return a.copyProductComponent()}),e.TgZ(6,"mat-icon"),e._uU(7,"file_copy"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(8,"fieldset",3),e.TgZ(9,"legend",3),e._uU(10,"Manufacture Item Details\xa0"),e.TgZ(11,"b"),e.TgZ(12,"span",4),e._uU(13),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div",5),e.TgZ(15,"app-cv-input",6),e.NdJ("valueChange",function(O){return a.productComponent.dosageForm=O}),e.qZA(),e.TgZ(16,"app-cv-input",7),e.NdJ("valueChange",function(O){return a.productComponent.charColor=O}),e.qZA(),e.TgZ(17,"app-cv-input",8),e.NdJ("valueChange",function(O){return a.productComponent.charFlavor=O}),e.qZA(),e.qZA(),e.TgZ(18,"div",9),e.TgZ(19,"mat-form-field",10),e.TgZ(20,"input",11),e.NdJ("ngModelChange",function(O){return a.productComponent.amount=O}),e.qZA(),e.qZA(),e.TgZ(21,"app-cv-input",12),e.NdJ("valueChange",function(O){return a.productComponent.unit=O}),e.qZA(),e.TgZ(22,"mat-form-field",10),e.TgZ(23,"input",13),e.NdJ("ngModelChange",function(O){return a.productComponent.manufactureCode=O}),e.qZA(),e.qZA(),e.TgZ(24,"app-cv-input",14),e.NdJ("valueChange",function(O){return a.productComponent.manufactureCodeType=O}),e.qZA(),e.qZA(),e.TgZ(25,"div",9),e.TgZ(26,"app-cv-input",15),e.NdJ("valueChange",function(O){return a.productComponent.charShape=O}),e.qZA(),e.TgZ(27,"app-cv-input",16),e.NdJ("valueChange",function(O){return a.productComponent.charNumFragments=O}),e.qZA(),e.TgZ(28,"mat-form-field",10),e.TgZ(29,"input",17),e.NdJ("ngModelChange",function(O){return a.productComponent.charSize=O}),e.qZA(),e.qZA(),e.TgZ(30,"mat-form-field",10),e.TgZ(31,"input",18),e.NdJ("ngModelChange",function(O){return a.productComponent.charImprintText=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(32,"div",19),e._UZ(33,"br"),e._UZ(34,"hr"),e._UZ(35,"br"),e.TgZ(36,"span",20),e.TgZ(37,"span",21),e._uU(38,"LOT "),e.qZA(),e.qZA(),e._uU(39," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(40,"button",22),e.NdJ("click",function(){return a.addNewProductLot(a.prodComponentIndex)}),e._UZ(41,"mat-icon",23),e._uU(42,"Add Lot "),e.qZA(),e._UZ(43,"br"),e.YNc(44,kr,2,4,"div",24),e.qZA(),e.qZA(),e._UZ(45,"br"),e._UZ(46,"br")),2&l&&(e.xp6(1),e.MGl("matTooltip","Delete Component Details ",a.prodComponentIndex+1,""),e.Q6J("ngStyle",e.DdM(21,Ls))("disabled",1==a.totalComponent),e.xp6(1),e.ekj("disabled",1==a.totalComponent),e.xp6(3),e.MGl("matTooltip","Copy Manufacture Item Details ",a.prodComponentIndex+1," to New Manufacture Item"),e.Q6J("ngStyle",e.DdM(22,Ls)),e.xp6(8),e.Oqu(a.prodComponentIndex+1),e.xp6(2),e.Q6J("model",a.productComponent.dosageForm),e.xp6(1),e.Q6J("model",a.productComponent.charColor),e.xp6(1),e.Q6J("model",a.productComponent.charFlavor),e.xp6(3),e.Q6J("ngModel",a.productComponent.amount),e.xp6(1),e.Q6J("model",a.productComponent.unit),e.xp6(2),e.Q6J("ngModel",a.productComponent.manufactureCode),e.xp6(1),e.Q6J("model",a.productComponent.manufactureCodeType),e.xp6(2),e.Q6J("model",a.productComponent.charShape),e.xp6(1),e.Q6J("model",a.productComponent.charNumFragments),e.xp6(2),e.Q6J("ngModel",a.productComponent.charSize),e.xp6(2),e.Q6J("ngModel",a.productComponent.charImprintText),e.xp6(5),e.s9C("matBadge",a.productComponent.productLotList.length),e.xp6(8),e.Q6J("ngForOf",a.productComponent.productLotList))},styles:[".details-container[_ngcontent-%COMP%]{width:100%}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1-4[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-4[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-2-4[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-4[_ngcontent-%COMP%]:last-child{margin-right:0}.row[_ngcontent-%COMP%]{width:100%}.col-1-4[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.col-1-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2-4[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.col-2-4[_ngcontent-%COMP%]:last-child{margin-right:0}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.pad10px[_ngcontent-%COMP%]{padding:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font17px[_ngcontent-%COMP%]{font-size:17px}.colorgreen[_ngcontent-%COMP%]{color:green}.colorred[_ngcontent-%COMP%]{color:red}.colorgray[_ngcontent-%COMP%]{color:gray}.titlegreen[_ngcontent-%COMP%]{color:green;font-size:17px;font-weight:500}.titleorange[_ngcontent-%COMP%]{color:#ff4500;font-size:17px;font-weight:500}.titlebrown[_ngcontent-%COMP%]{color:#7a2d11;font-size:17px;font-weight:500}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintopminus25[_ngcontent-%COMP%]{margin-top:-5px}.marginbottomminus17px[_ngcontent-%COMP%]{margin-bottom:-17px}.padleft250px[_ngcontent-%COMP%]{padding-left:250px}.padbottom0px[_ngcontent-%COMP%]{padding:0}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted green;color:#333;overflow:visible;text-align:center;height:5px}fieldset.border[_ngcontent-%COMP%]{border:solid 1px green!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:13px;color:#174793;font-family:Verdana;font-weight:700;margin-bottom:10px}.formfieldwidth[_ngcontent-%COMP%]{width:160px!important}.formfield2columnwidth[_ngcontent-%COMP%]{width:370px!important}.formfield3columnwidth[_ngcontent-%COMP%]{width:540px!important}.formfieldfullpagewidth[_ngcontent-%COMP%]{width:900px}.width40px[_ngcontent-%COMP%]{width:40px}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.prodNameField[_ngcontent-%COMP%]{width:calc((100% - 100px)*.8);margin-right:30px}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}"]}),m}(),zr=["checkBox"];function Al(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"span",30),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.TgZ(5,"span",30),e._uU(6,"Modified By:"),e.qZA(),e._uU(7),e.ALo(8,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(3),e.AsE(" ",l.ingredient.createdBy,"\xa0\xa0\xa0 ",e.xi3(4,4,l.ingredient.createDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.AsE(" ",l.ingredient.modifiedBy,"\xa0\xa0\xa0 ",e.xi3(8,7,l.ingredient.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Ns(m,D){if(1&m&&(e.TgZ(0,"span",29),e.YNc(1,Al,9,10,"span",12),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.ingredient.id)}}function es(m,D){if(1&m&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.ingredientNameMessage," ")}}function wu(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",33),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l," ")}}function Gr(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,wu,4,1,"div",15),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.Oqu(l.ingredientName),e.xp6(2),e.Q6J("ngForOf",l.ingredientNameActiveMoiety)}}function Kc(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",34),e._uU(2),e.qZA(),e.TgZ(3,"span",33),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",35),e.NdJ("click",function(){return e.CHM(l),e.oxw().confirmDeleteIngredientName()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(2),e.Oqu(a.ingredient.substanceKey),e.xp6(2),e.hij(" (",a.ingredient.substanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Ingredient Name ",a.prodIngredientIndex+1,"")}}function Ou(m,D){if(1&m&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.basisOfStrengthMessage," ")}}function ud(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",33),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l," ")}}function Ao(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,ud,4,1,"div",15),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.Oqu(l.basisOfStrengthIngredientName),e.xp6(2),e.Q6J("ngForOf",l.basisOfStrengthActiveMoiety)}}function Rs(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",34),e._uU(2),e.qZA(),e.TgZ(3,"span",33),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",35),e.NdJ("click",function(){return e.CHM(l),e.oxw().confirmDeleteBasisOfStrength()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(2),e.Oqu(a.ingredient.basisOfStrengthSubstanceKey),e.xp6(2),e.hij(" (",a.ingredient.basisOfStrengthSubstanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Basis of Strength ",a.prodIngredientIndex+1,"")}}function dd(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"mat-checkbox",36,37),e.NdJ("ngModelChange",function(O){return e.CHM(l).$implicit.checked=O})("change",function(){var W=e.CHM(l).$implicit,Le=e.MAs(2);return e.oxw().setSelectedIngredientLocation(W,Le)}),e._uU(3),e.qZA(),e._uU(4," \xa0 "),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(1),e.Q6J("value",a.value)("ngModel",a.checked),e.xp6(2),e.hij(" ",a.value," ")}}var ar=function(){return{color:"orangered"}},Sc=function(){var m=function(){function D(l,a,x,O,W,Le){(0,P.Z)(this,D),this.generalService=l,this.productService=a,this.cvService=x,this.authService=O,this.configService=W,this.dialog=Le,this.username=null,this.ingredientNameMessage="",this.basisOfStrengthMessage="",this.ingredientNameActiveMoiety=new Array,this.basisOfStrengthActiveMoiety=new Array,this.selectedIngredientLocation=new Array,this.substanceKeyTypeConfig="",this.subscriptions=[],this.locationList=[{value:"Whole",checked:!1},{value:"Core",checked:!1},{value:"Coating",checked:!1},{value:"Other",checked:!1}]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;setTimeout(function(){a.loadIngredientLocation(),a.username=a.authService.getUser(),a.substanceKeyOld=a.ingredient.substanceKey,a.basisofStrengthSubstanceKeyOld=a.ingredient.basisOfStrengthSubstanceKey,a.substanceKeyTypeConfig=a.generalService.getSubstanceKeyType(),a.substanceKeyTypeConfig||alert("There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add Ingredient Name"),a.getSubstanceBySubstanceKey()},600)}},{key:"loadIngredientLocation",value:function(){if(this.ingredient.ingredientLocation&&this.ingredient.ingredientLocation.length>0)for(var a=this.ingredient.ingredientLocation.split(","),x=0;x0&&(O=W.join(","),this.ingredient.ingredientLocation=O)}},{key:"confirmDeleteProductIngredient",value:function(a,x,O){var W=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Product Ingredient Details "+(O+1)+" data?"}}).afterClosed().subscribe(function(rt){rt&&!0===rt&&W.deleteProductIngredient(a,x,O)})}},{key:"deleteProductIngredient",value:function(a,x,O){this.productService.deleteProductIngredient(a,x,O)}},{key:"copyProductIngredient",value:function(){this.productService.copyProductIngredient(this.ingredient,this.prodComponentIndex,this.prodLotIndex)}},{key:"confirmDeleteIngredientName",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Ingredient Name "+(this.prodIngredientIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteIngredientName()})}},{key:"deleteIngredientName",value:function(){this.ingredientNameMessage="",null!=this.ingredient.id&&null!=this.substanceKeyOld&&(this.ingredientNameMessage="Click Validate and Submit button to delete "+this.ingredientName),this.substanceUuid=null,this.ingredientName=null,this.ingredient.substanceKey=null,this.ingredient.substanceKeyType=null}},{key:"confirmDeleteBasisOfStrength",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Basis of Strength "+(this.prodIngredientIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteBasisOfStrength()})}},{key:"deleteBasisOfStrength",value:function(){this.basisOfStrengthMessage="",null!=this.ingredient.id&&null!=this.basisofStrengthSubstanceKeyOld&&(this.basisOfStrengthMessage="Click Validate and Submit button to delete "+this.basisOfStrengthIngredientName),this.basisOfStrengthSubstanceUuid=null,this.basisOfStrengthIngredientName=null,this.ingredient.basisOfStrengthSubstanceKey=null,this.ingredient.basisOfStrengthSubstanceKeyType=null}},{key:"getSubstanceCode",value:function(a,x){var O=this,W=this.generalService.getSubstanceCodesBySubstanceUuid(a).subscribe(function(Le){if(Le)for(var rt=Le,Ht=0;Ht0)for(var Le=0;Le0){if(a.length<8||a.length>10)return!1;var O=a.split("/");if(3!==O.length||O[0].length<1||O[0].length>2||O[1].length<1||O[1].length>2||4!==O[2].length)return!1;if(3===O.length)for(var Le=0;Le-1}),a.suggestionsFields.forEach(function(W,Le){a.suggestionsFields[Le]="Active_Moiety"===W?{value:"Active_Moiety",display:"Active Moiety"}:"Dosage_Form_Name"===W?{value:"Dosage_Form_Name",display:"Dosage Form Name"}:"Marketing_Category_Name"===W?{value:"Marketing_Category_Name",display:"Marketing Category Name"}:"Ingredient_Name"===W?{value:"Ingredient_Name",display:"Ingredient Name"}:"Ingredient_Approval_ID"===W?{value:"Ingredient_Approval_ID",display:"Ingredient Approval ID"}:"Product_Name"===W?{value:"Product_Name",display:"Product Name"}:"Ingredient_Type"===W?{value:"Ingredient_Type",display:"Ingredient Type"}:"Company_Country"===W?{value:"Company_Country",display:"Company Country"}:"Route_of_Admin"===W?{value:"Route_of_Admin",display:"Route of Administration"}:"Labeler_Name"===W?{value:"Labeler_Name",display:"Labeler Name"}:"Application_Type_Number"===W?{value:"Application_Type_Number",display:"Application Type Number"}:"Ingredient_Name"===W?{value:"Ingredient_Name",display:"Ingredient Name"}:"Nonproprietary_Name"===W?{value:"Nonproprietary_Name",display:"Nonproprietary Name"}:"Product_Type"===W?{value:"Product_Type",display:"Product Type"}:{value:W,display:W}}),null!=a.suggestionsFields&&a.suggestionsFields.length>0&&(a.matOpen=!0,a.opened.emit())},function(x){a.gaService.sendException("search suggestion error from API call"),console.log(x)})}},{key:"searchValue",set:function(a){this.searchControl.setValue(a)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(a){this.searchControl.markAsTouched(),this.searchControl.setErrors(a?{error:!0}:null),this.privateErrorMessage=a}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(a){this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&a.option.value||"auto-complete option");var W=a.option.value;W=this.topSearchClean(W),this.searchPerformed.emit(W)}},{key:"highlight",value:function(a){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=a,this.testElem.scrollWidth>this.testElem.offsetWidth))){var x=a.toUpperCase().indexOf(this.query.toUpperCase());a="..."+a.substring(x-15,a.length)}var O=this.query.replace(/(?=[() ])/g,"\\");return a.replace(new RegExp(O,"gi"),function(W){return""+W+""})}return a}},{key:"processSubstanceSearch",value:function(){var a=this.searchControl.value;this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","search:submit",!this.configService.environment.isAnalyticsPrivate&&a||"search term option"),a=this.topSearchClean(a),this.searchPerformed.emit(a)}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var a=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){a.source?(a.searchContainerElement.classList.remove("active-"+a.source),a.searchContainerElement.classList.remove("deactivate-search")):(a.searchContainerElement.classList.remove("active-search"),a.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(a){return a&&a.length>0&&((a=a.trim()).indexOf('"')<0&&a.indexOf("*")<0&&a.indexOf(":")<0&&a.indexOf(" AND ")<0&&a.indexOf(" OR ")<0?a='"'+a.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':a.indexOf(":")<0&&(a=a.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")),this.searchControl.setValue(a)),a}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(Mn.M),e.Y36(e.SBq),e.Y36(Jn.$),e.Y36(On.E),e.Y36(Je.I))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-product-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:16,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],["mat-icon-button","",1,"close-button",3,"click"],["svgIcon","close"],["mat-icon-button","",1,"activate-search-button",3,"click"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"suggestion-styling",3,"innerHTML"]],template:function(l,a){if(1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return a.focused()}),e.qZA(),e.YNc(4,le,2,1,"mat-hint",3),e.YNc(5,We,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(W){return a.substanceSearchOptionSelected(W)})("closed",function(){return a.autoCompleteClosed()}),e.YNc(8,Yt,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return a.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.TgZ(12,"button",10),e.NdJ("click",function(){return a.deactivateSearch()}),e._UZ(13,"mat-icon",11),e.qZA(),e.TgZ(14,"button",12),e.NdJ("click",function(){return a.activateSearch()}),e._UZ(15,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&l){var x=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",a.source),e.xp6(1),e.Q6J("placeholder",a.placeholder)("formControl",a.searchControl)("matAutocomplete",x),e.xp6(1),e.Q6J("ngIf",a.hintMessage),e.xp6(1),e.Q6J("ngIf",a.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",a.suggestionsFields),e.xp6(2),e.Q6J("disabled",a.searchControl.invalid)}},directives:[je._Y,je.JL,je.F,St.KE,p.mk,Pt.Nt,je.Fj,bt.ZL,je.JJ,je.oH,p.O5,St.bx,St.TO,bt.XC,p.sg,_n.ey,T.lW,I.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:#fff;overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:#448aff;color:#fff}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 750px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 1024px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:#4793d1;overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:#fff;overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-webkit-animation-name:reduceWidth;animation-name:reduceWidth;-webkit-animation-duration:.3s;animation-duration:.3s}}@-webkit-keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes expandWidth{0%{width:0}to{width:100%}}@-webkit-keyframes reduceWidth{0%{width:100%}to{width:0}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),m}();function qn(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",60),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",61),e.qZA()}}function Di(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",66),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return e.oxw(4).restricSearh(W.luceneQuery)}),e.TgZ(1,"div",67),e._uU(2),e.qZA(),e.TgZ(3,"div",68),e._uU(4),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(2),e.hij(" ",a.displayField," "),e.xp6(2),e.hij(" ",a.count," ")}}function ca(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",64),e._uU(2),e.qZA(),e.YNc(3,Di,5,2,"button",65),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==l?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",a.narrowSearchSuggestions[l])}}function Ha(m,D){if(1&m&&(e.TgZ(0,"div",62),e.YNc(1,ca,4,2,"div",63),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l&&("WORD"===l||"FULL"===l))}}function co(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",48),e.TgZ(1,"div",49),e.TgZ(2,"div",50),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",51),e.NdJ("menuOpened",function(){return e.CHM(l),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(l),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",52),e.qZA(),e.TgZ(11,"button",53),e.NdJ("click",function(){return e.CHM(l),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,qn,2,0,"button",54),e.TgZ(15,"mat-menu",55,56),e.YNc(17,Ha,2,1,"div",57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",49),e.TgZ(19,"div",58),e._uU(20," For more options use the "),e.TgZ(21,"a",59),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(16),x=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",a),e.xp6(3),e.hij("\xa0 ",x.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",x.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",x.matchTypes)}}function Vr(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",60),e.NdJ("click",function(){return e.CHM(l),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",61),e.qZA()}}function Bo(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",73),e.TgZ(1,"div"),e.TgZ(2,"span",74),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",75),e.YNc(8,Vr,2,0,"button",54),e.TgZ(9,"button",60),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",76),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(6),e.Oqu(a.searchTerm),e.xp6(2),e.Q6J("ngIf",a.isSearchEditable)}}function vp(m,D){1&m&&e._UZ(0,"mat-icon",83)}function pm(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",73),e.TgZ(1,"div",77),e.TgZ(2,"span",78),e.YNc(3,vp,1,0,"mat-icon",79),e._uU(4),e.qZA(),e.TgZ(5,"span",80),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",75),e.TgZ(8,"button",81),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return W.removeFacet(W.type,W.bool,W.val)}),e._UZ(9,"mat-icon",82),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(3),e.Q6J("ngIf",!a.bool),e.xp6(1),e.hij(" ",a.type,": "),e.xp6(2),e.hij(" ",a.val," ")}}function yp(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",84),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function bp(m,D){if(1&m&&(e.TgZ(0,"div",69),e.YNc(1,Bo,11,2,"div",70),e.YNc(2,pm,10,3,"div",71),e.YNc(3,yp,3,0,"button",72),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.searchTerm),e.xp6(1),e.Q6J("ngForOf",l.displayFacets),e.xp6(1),e.Q6J("ngIf",l.displayFacets&&l.displayFacets.length>0||l.searchTerm)}}function kh(m,D){if(1&m&&(e.TgZ(0,"mat-option",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l.value),e.xp6(1),e.hij(" ",l.display," ")}}function fd(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",86),e.TgZ(1,"button",87),e.NdJ("click",function(){return e.CHM(l),e.oxw().export()}),e._UZ(2,"mat-icon",88),e._uU(3," Export "),e.qZA(),e.qZA()}}function Cp(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Product ID "),e.qZA())}function md(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Oqu(l.productNDC)}}function Eu(m,D){1&m&&e._uU(0,"(NO ID)")}function Xc(m,D){if(1&m&&(e.ynx(0),e.TgZ(1,"a",96),e._UZ(2,"img",97),e.qZA(),e._UZ(3,"mat-icon",98),e.BQk()),2&m){var l=e.oxw(2).$implicit,a=e.oxw();e.xp6(1),e.hYB("href","",a.dailyMedUrl,"",l.productNDC,"",e.LSH),e.xp6(1),e.Q6J("src",a.iconSrcPath,e.LSH)}}var Gi=function(D){return["/product-elist",D]};function Mp(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"div",91),e.TgZ(2,"a",92),e.YNc(3,md,2,1,"span",93),e.YNc(4,Eu,1,0,"ng-template",null,94,e.W1O),e.qZA(),e.qZA(),e.TgZ(6,"div",95),e.YNc(7,Xc,4,3,"ng-container",63),e.qZA(),e.qZA()),2&m){var l=e.MAs(5),a=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,Gi,a.productId)),e.xp6(1),e.Q6J("ngIf",a.productNDC)("ngIfElse",l),e.xp6(4),e.Q6J("ngIf",null!==a.productNDC)}}function fm(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Oqu(l.productNDC)}}function Zu(m,D){1&m&&e._uU(0,"(NO ID)")}var Ac=function(D){return["/product",D,"edit"]};function hd(m,D){if(1&m&&(e.TgZ(0,"a",102),e._UZ(1,"mat-icon",61),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.Q6J("routerLink",e.VKq(1,Ac,l.productId))}}var _d=function(D){return["/product",D]};function ns(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",99),e.YNc(2,fm,2,1,"span",93),e.YNc(3,Zu,1,0,"ng-template",null,100,e.W1O),e.qZA(),e._uU(5," \xa0\xa0 "),e.YNc(6,hd,2,3,"a",101),e.qZA()),2&m){var l=e.MAs(4),a=e.oxw().$implicit,x=e.oxw();e.xp6(1),e.Q6J("routerLink",e.VKq(4,_d,a.productId)),e.xp6(1),e.Q6J("ngIf",a.productNDC)("ngIfElse",l),e.xp6(4),e.Q6J("ngIf",x.isAdmin)}}function xp(m,D){if(1&m&&(e.TgZ(0,"td",90),e.YNc(1,Mp,8,6,"span",63),e.YNc(2,ns,7,6,"span",63),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf","SPL"===l.fromtable),e.xp6(1),e.Q6J("ngIf","GSRS"===l.fromtable)}}function dl(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Product Name "),e.qZA())}function bs(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.productName," ")}}function gd(m,D){if(1&m&&(e.TgZ(0,"td",103),e.YNc(1,bs,2,1,"div",104),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngForOf",l.productNameAllList)}}function vd(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Ingredient Name (Active Ingredient) "),e.qZA())}var io=function(D){return["/substances",D]};function zl(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"li"),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.TgZ(4,"button",108),e.NdJ("click",function(O){e.CHM(l);var W=e.oxw(3).$implicit;return e.oxw(2).openImageModal(O,W.substanceUuid)}),e.TgZ(5,"mat-icon",109),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,io,a.substanceUuid)),e.xp6(1),e.hij("",a.substanceName," ")}}function Us(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,zl,7,4,"div",63),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf","ACTIVE INGREDIENT"===l.ingredientType||"Active Ingredient"===l.ingredientType)}}function cc(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Us,2,1,"div",63),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",l.ingredientType)}}function Pc(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,cc,2,1,"div",63),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l.substanceName)}}function rr(m,D){if(1&m&&(e.TgZ(0,"td",105),e.TgZ(1,"ol",106),e.YNc(2,Pc,2,1,"div",104),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Q6J("ngForOf",l.productIngredientAllList)}}function ku(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Labeler Name "),e.qZA())}function Sp(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.labelerName," ")}}function yd(m,D){if(1&m&&(e.TgZ(0,"td",103),e._uU(1),e.YNc(2,Sp,2,1,"div",104),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.labelerName," "),e.xp6(1),e.Q6J("ngForOf",l.productCompanyAllList)}}function bd(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Country "),e.qZA())}function Dl(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.countryWithoutCode," ")}}function Tp(m,D){if(1&m&&(e.TgZ(0,"td",103),e.YNc(1,Dl,2,1,"div",104),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngForOf",l.productCompanyAllList)}}function Gl(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Status "),e.qZA())}function Ap(m,D){if(1&m&&(e.TgZ(0,"td",103),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.status," ")}}function Pp(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Product Type "),e.qZA())}function Dp(m,D){if(1&m&&(e.TgZ(0,"td",103),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.productType," ")}}function mm(m,D){1&m&&(e.TgZ(0,"th",89),e._uU(1," Application Number "),e.qZA())}function Dc(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",111),e.TgZ(2,"span",112),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw();e.xp6(1),e.s9C("href",a.getAppTypeNumberUrl(l.appType,l.appNumber),e.LSH),e.xp6(2),e.Oqu(l.appTypeNumber)}}function eu(m,D){if(1&m&&(e.TgZ(0,"span",112),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.appTypeNumber," ")}}function Bs(m,D){if(1&m&&(e.TgZ(0,"td",103),e.YNc(1,Dc,4,2,"span",93),e.YNc(2,eu,2,1,"ng-template",null,110,e.W1O),e.qZA()),2&m){var l=D.$implicit,a=e.MAs(3);e.xp6(1),e.Q6J("ngIf",l.appType&&l.appNumber)("ngIfElse",a)}}function wc(m,D){1&m&&e._UZ(0,"tr",113)}function wp(m,D){1&m&&e._UZ(0,"tr",114)}function Cd(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Oqu(l.productNDC)}}function Md(m,D){1&m&&e._uU(0,"(NO ID)")}function Yo(m,D){if(1&m&&(e.ynx(0),e._uU(1," \xa0\xa0 "),e.TgZ(2,"a",96),e._UZ(3,"img",97),e.qZA(),e._UZ(4,"mat-icon",125),e.BQk()),2&m){var l=e.oxw(2).$implicit,a=e.oxw(2);e.xp6(2),e.hYB("href","",a.dailyMedUrl,"",l.productNDC,"",e.LSH),e.xp6(1),e.Q6J("src",a.iconSrcPath,e.LSH)}}function pl(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",124),e.YNc(2,Cd,2,1,"span",93),e.YNc(3,Md,1,0,"ng-template",null,94,e.W1O),e.qZA(),e.YNc(5,Yo,5,3,"ng-container",63),e.qZA()),2&m){var l=e.MAs(4),a=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(4,Gi,a.productId)),e.xp6(1),e.Q6J("ngIf",a.productNDC)("ngIfElse",l),e.xp6(3),e.Q6J("ngIf",null!==a.productNDC)}}function hm(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Oqu(l.productNDC)}}function xd(m,D){1&m&&e._uU(0,"(NO ID)")}function Oc(m,D){if(1&m&&(e.TgZ(0,"a",127),e._UZ(1,"mat-icon",61),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.Q6J("routerLink",e.VKq(1,Ac,l.productId))}}function Kl(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",124),e.YNc(2,hm,2,1,"span",93),e.YNc(3,xd,1,0,"ng-template",null,100,e.W1O),e.qZA(),e.YNc(5,Oc,2,3,"a",126),e.qZA()),2&m){var l=e.MAs(4),a=e.oxw().$implicit,x=e.oxw(2);e.xp6(1),e.Q6J("routerLink",e.VKq(4,_d,a.productId)),e.xp6(1),e.Q6J("ngIf",a.productNDC)("ngIfElse",l),e.xp6(3),e.Q6J("ngIf",x.isAdmin)}}function Op(m,D){1&m&&(e.TgZ(0,"span"),e._uU(1,"|"),e.qZA())}function Ep(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,Op,2,0,"span",63),e._uU(2),e.qZA()),2&m){var l=e.oxw(),a=l.index,x=l.$implicit;e.xp6(1),e.Q6J("ngIf",a>0),e.xp6(1),e.hij(" ",x.countryWithoutCode," ")}}function Zp(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,Ep,3,2,"span",63),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l.countryWithoutCode)}}function kp(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",111),e.TgZ(2,"span",112),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw(2);e.xp6(1),e.s9C("href",a.getAppTypeNumberUrl(l.appType,l.appNumber),e.LSH),e.xp6(2),e.Oqu(l.appTypeNumber)}}function Ec(m,D){if(1&m&&(e.TgZ(0,"span",112),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.appTypeNumber," ")}}function tu(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",128),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(3),e.Oqu(l.productName)}}function _m(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij("\xa0(",l.labelerDuns,")")}}function Sd(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.YNc(2,_m,2,1,"span",63),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.labelerName," "),e.xp6(1),e.Q6J("ngIf",l.labelerDuns)}}function nu(m,D){1&m&&(e.TgZ(0,"span"),e._uU(1,","),e.qZA())}function iu(m,D){1&m&&(e.TgZ(0,"span"),e._uU(1,","),e.qZA())}function Iu(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.YNc(2,nu,2,0,"span",63),e._uU(3),e.YNc(4,iu,2,0,"span",63),e._uU(5),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.city," "),e.xp6(1),e.Q6J("ngIf",l.state),e.xp6(1),e.hij(" ",l.state," "),e.xp6(1),e.Q6J("ngIf",l.countryWithoutCode),e.xp6(1),e.hij(" ",l.countryWithoutCode," ")}}function Lu(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.dosageFormName," ")}}function cr(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Lu,2,1,"span",63),e.qZA()),2&m){var l=D.index;e.xp6(1),e.Q6J("ngIf",0==l)}}function au(m,D){if(1&m&&(e.TgZ(0,"div",119),e.TgZ(1,"div",120),e.TgZ(2,"div",121),e._uU(3," Create By: "),e.qZA(),e.TgZ(4,"div",122),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"div",120),e.TgZ(7,"div",121),e._uU(8," Edited By: "),e.qZA(),e.TgZ(9,"div",122),e._uU(10),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(5),e.hij(" ",l.createdBy," "),e.xp6(5),e.hij(" ",l.modifiedBy," ")}}function Td(m,D){if(1&m&&(e.TgZ(0,"div",119),e.TgZ(1,"div",120),e.TgZ(2,"div",121),e._uU(3," Create Date: "),e.qZA(),e.TgZ(4,"div",122),e._uU(5),e.ALo(6,"date"),e.qZA(),e.qZA(),e.TgZ(7,"div",120),e.TgZ(8,"div",121),e._uU(9," Edit Date: "),e.qZA(),e.TgZ(10,"div",122),e._uU(11),e.ALo(12,"date"),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(5),e.hij(" ",e.xi3(6,2,l.creationDate,"MM/dd/yyyy hh:mm:ss a")," "),e.xp6(6),e.hij(" ",e.xi3(12,5,l.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Fu(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"li"),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.TgZ(4,"button",108),e.NdJ("click",function(O){e.CHM(l);var W=e.oxw(3).$implicit;return e.oxw(3).openImageModal(O,W.substanceUuid)}),e.TgZ(5,"mat-icon",109),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,io,a.substanceUuid)),e.xp6(1),e.hij("",a.substanceName," ")}}function uc(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,Fu,7,4,"span",63),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf",l.substanceName)}}function Nu(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,uc,2,1,"span",93),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw(3);e.xp6(1),e.Q6J("ngIf","Active Ingredient"===l.ingredientType)("ngIfElse",a.otherIngredType)}}function ru(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Nu,2,2,"span",63),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l.ingredientType)}}function ou(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"li",130),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.TgZ(4,"button",108),e.NdJ("click",function(O){e.CHM(l);var W=e.oxw(3).$implicit;return e.oxw(3).openImageModal(O,W.substanceUuid)}),e.TgZ(5,"mat-icon",109),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,io,a.substanceUuid)),e.xp6(1),e.hij("",a.substanceName," ")}}function su(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"span",131),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(3).$implicit;e.xp6(2),e.hij("(",l.ingredientType,") ")}}function wl(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,ou,7,4,"div",63),e.YNc(2,su,3,1,"div",63),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf",l.substanceName),e.xp6(1),e.Q6J("ngIf","Active Ingredient"!==l.ingredientType&&"Inactive Ingredient"!==l.ingredientType)}}function gm(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,wl,3,2,"div",63),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf","Active Ingredient"!==l.ingredientType)}}function vm(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"li",130),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,io,l.substanceUuid)),e.xp6(1),e.hij("",l.substanceName," ")}}function lu(m,D){if(1&m&&e.YNc(0,vm,4,4,"div",63),2&m){var l=e.oxw().$implicit;e.Q6J("ngIf",l.substanceName)}}function is(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,gm,2,1,"div",93),e.YNc(2,lu,1,1,"ng-template",null,129,e.W1O),e.qZA()),2&m){var l=D.$implicit,a=e.MAs(3);e.xp6(1),e.Q6J("ngIf",l.ingredientType)("ngIfElse",a)}}function Ad(m,D){if(1&m&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",116),e._uU(4,"Product ID:"),e.qZA(),e._uU(5,"\xa0 "),e.YNc(6,pl,6,6,"span",63),e._uU(7," \xa0\xa0\xa0 "),e.YNc(8,Kl,6,6,"span",63),e.qZA(),e.TgZ(9,"div",117),e.TgZ(10,"span",116),e._uU(11,"Company Country:"),e.qZA(),e.TgZ(12,"span",118),e._uU(13,"\xa0 "),e.YNc(14,Zp,2,1,"span",104),e.qZA(),e.qZA(),e.TgZ(15,"div"),e.TgZ(16,"span",116),e._uU(17,"Application:"),e.qZA(),e._uU(18,"\xa0 "),e.YNc(19,kp,4,2,"span",93),e.YNc(20,Ec,2,1,"ng-template",null,110,e.W1O),e.qZA(),e.qZA(),e.TgZ(22,"mat-card-content"),e.TgZ(23,"div",119),e.TgZ(24,"div",120),e.TgZ(25,"div",121),e._uU(26," Product Name: "),e.qZA(),e.TgZ(27,"div",122),e.YNc(28,tu,4,1,"div",104),e.qZA(),e.qZA(),e.TgZ(29,"div",120),e.TgZ(30,"div",121),e._uU(31," Product Type: "),e.qZA(),e.TgZ(32,"div",122),e._uU(33),e.qZA(),e.qZA(),e.qZA(),e.TgZ(34,"div",119),e.TgZ(35,"div",120),e.TgZ(36,"div",121),e._uU(37," Nonproprietary Name: "),e.qZA(),e.TgZ(38,"div",122),e._uU(39),e.qZA(),e.qZA(),e.TgZ(40,"div",120),e.TgZ(41,"div",121),e._uU(42," Route of Admin: "),e.qZA(),e.TgZ(43,"div",122),e._uU(44),e.qZA(),e.qZA(),e.qZA(),e.TgZ(45,"div",119),e.TgZ(46,"div",120),e.TgZ(47,"div",121),e._uU(48," Labeler Name (DUNS): "),e.qZA(),e.TgZ(49,"div",122),e.YNc(50,Sd,3,2,"div",104),e.qZA(),e.qZA(),e.TgZ(51,"div",120),e.TgZ(52,"div",121),e._uU(53," City, State, Country: "),e.qZA(),e.TgZ(54,"div",122),e.YNc(55,Iu,6,5,"div",104),e.qZA(),e.qZA(),e.qZA(),e.TgZ(56,"div",119),e.TgZ(57,"div",120),e.TgZ(58,"div",121),e._uU(59," Dosage Form: "),e.qZA(),e.TgZ(60,"div",122),e.YNc(61,cr,2,1,"div",104),e.qZA(),e.qZA(),e.TgZ(62,"div",120),e.TgZ(63,"div",121),e._uU(64," Status: "),e.qZA(),e.TgZ(65,"div",122),e._uU(66),e.qZA(),e.qZA(),e.qZA(),e.YNc(67,au,11,2,"div",123),e.YNc(68,Td,13,8,"div",123),e.TgZ(69,"div",119),e.TgZ(70,"div",120),e.TgZ(71,"div",121),e._uU(72," Substance Name (Active): "),e.qZA(),e.TgZ(73,"div",122),e.TgZ(74,"ol",106),e.YNc(75,ru,2,1,"div",104),e.qZA(),e.qZA(),e.qZA(),e.TgZ(76,"div",120),e.TgZ(77,"div",121),e._uU(78," Substance Name (Inactive): "),e.qZA(),e.TgZ(79,"div",122),e.TgZ(80,"ol",106),e.YNc(81,is,4,2,"div",104),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=e.MAs(21),x=e.oxw(2);e.xp6(6),e.Q6J("ngIf","SPL"===l.fromtable),e.xp6(2),e.Q6J("ngIf","GSRS"===l.fromtable),e.xp6(6),e.Q6J("ngForOf",l.productCompanyAllList),e.xp6(5),e.Q6J("ngIf",l.appType&&l.appNumber)("ngIfElse",a),e.xp6(9),e.Q6J("ngForOf",l.productNameAllList),e.xp6(5),e.hij(" ",l.productType," "),e.xp6(6),e.hij(" ",l.nonProprietaryName," "),e.xp6(5),e.hij(" ",l.routeName," "),e.xp6(6),e.Q6J("ngForOf",l.productCompanyAllList),e.xp6(5),e.Q6J("ngForOf",l.productCompanyAllList),e.xp6(6),e.Q6J("ngForOf",l.productIngredientAllList),e.xp6(5),e.hij(" ",l.status," "),e.xp6(1),e.Q6J("ngIf",x.isAdmin),e.xp6(1),e.Q6J("ngIf",x.isAdmin),e.xp6(7),e.Q6J("ngForOf",l.productIngredientAllList),e.xp6(6),e.Q6J("ngForOf",l.productIngredientAllList)}}function Ip(m,D){if(1&m&&(e.TgZ(0,"div",115),e.YNc(1,Ad,82,17,"mat-card",104),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngForOf",l.products)}}function fl(m,D){}var Hr=function(){return[5,10,50,100]},ml=function(D){return{"bad-page":D}},cu=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar,ls,Xr){(0,P.Z)(this,D),this.productService=l,this.authService=a,this.facetManagerService=x,this.configService=O,this.loadingService=W,this.notificationService=Le,this.gaService=rt,this.overlayContainerService=Ht,this.activatedRoute=In,this.router=ei,this.location=_i,this.locationStrategy=Mi,this.sanitizer=qi,this.utilsService=Ar,this.dialog=ls,this.titleService=Xr,this.view="cards",this.sortValues=F,this.hasBackdrop=!1,this.isLoading=!0,this.isError=!1,this.dataSource=[],this.isComponentInit=!1,this.privateExport=!1,this.disableExport=!1,this.isLoggedIn=!1,this.isAdmin=!1,this.etag="",this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.isSearchEditable=!1,this.invalidPage=!1,this.iconSrcPath="",this.dailyMedUrl="",this.ascDescDir="desc",this.displayedColumns=["productNDC","productName","ingredientName","labelerName","country","status","productNameType","applicationNumber"],this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[]}return(0,t.Z)(D,[{key:"onPopState",value:function(a){var x=this;setTimeout(function(){x.router.url===x.previousState[0]&&x.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var a=this;this.facetManagerService.registerGetFacetsHandler(this.productService.getProductFacets),this.gaService.sendPageView("Browse Products"),this.titleService.setTitle("P:Browse Products"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"default",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var O=this.authService.getAuth().subscribe(function(W){W&&(a.isLoggedIn=!0),a.isAdmin=a.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(O),this.iconSrcPath="".concat(this.configService.environment.baseHref||"","assets/icons/fda/icon_dailymed.png"),this.dailyMedUrl="https://dailymed.nlm.nih.gov/dailymed/search.cfm?labeltype=all&query=",this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchProducts()}},{key:"searchProducts",value:function(){var a=this;this.loadingService.setLoading(!0);var O=this.productService.getProducts(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(W){a.isError=!1,a.products=W.content,a.dataSource=a.products,a.totalProducts=W.total,a.etag=W.etag,a.lastPage=W.total%a.pageSize==0?W.total/a.pageSize:Math.floor(W.total/a.pageSize+1),W.facets&&W.facets.length>0&&(a.rawFacets=W.facets),a.narrowSearchSuggestions={},a.matchTypes=[],a.narrowSearchSuggestionsCount=0,W.narrowSearchSuggestions&&W.narrowSearchSuggestions.length&&W.narrowSearchSuggestions.forEach(function(Le){null==a.narrowSearchSuggestions[Le.matchType]&&(a.narrowSearchSuggestions[Le.matchType]=[],"WORD"===Le.matchType?a.matchTypes.unshift(Le.matchType):a.matchTypes.push(Le.matchType)),a.narrowSearchSuggestions[Le.matchType].push(Le),a.narrowSearchSuggestionsCount++}),a.matchTypes.sort(),a.separateAppTypeNumber()},function(W){console.log("error");var Le={message:"There was an error trying to retrieve Products. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(Le)},function(){O.unsubscribe(),a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchProducts()}},{key:"resetSearch",value:function(){this.pageSize=10,this.pageIndex=0,this.privateSearchTerm="",this.searchProducts()}},{key:"customPage",value:function(a){if(this.validatePageInput(a)){this.invalidPage=!1;var x=Number(a.target.value)-1;this.pageIndex=x,this.gaService.sendEvent("productsContent","select:page-number","pager",x),this.populateUrlQueryParameters(),this.searchProducts()}}},{key:"validatePageInput",value:function(a){if(a&&a.target){var x=Number(a.target.value);if(!isNaN(Number(x))&&Number.isInteger(x)&&x<=this.lastPage&&x>0)return!0}return!1}},{key:"editAdvancedSearch",value:function(){var a=Un.N.isAnalyticsPrivate?"Browse Product search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("Application Filtering","icon-button:edit-advanced-search",a),this.router.navigate(["/advanced-search"],{queryParams:{"g-search-hash":this.searchTermHash}})}},{key:"facetsParamsUpdated",value:function(a){this.pageIndex=0,this.privateFacetParams=a.facetParam,this.displayFacets=a.displayFacets,this.isFacetsParamsInit?this.searchProducts():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(a){}},{key:"sortData",value:function(a){var x=this;if(a.active){var O=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(W){W.displayedColumns&&W.direction&&x.displayedColumns[O]===W.displayedColumns&&x.ascDescDir===W.direction&&(x.order=W.value)}),this.searchProducts()}}},{key:"updateView",value:function(a){this.view=a.value}},{key:"changePage",value:function(a){var x,O;this.pageSize!==a.pageSize?(x="select:page-size",O=a.pageSize):this.pageIndex!==a.pageIndex&&(x="icon-button:page-number",O=a.pageIndex+1),this.gaService.sendEvent("productsContent",x,"pager",O),this.pageSize=a.pageSize,this.pageIndex=a.pageIndex,this.populateUrlQueryParameters(),this.searchProducts()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("productFiltering","icon-button:clear-search",Un.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchProducts()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(a){a.removeFacet(a.type,a.bool,a.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var a={queryParams:{}};a.queryParams.searchTerm=this.privateSearchTerm,a.queryParams.pageSize=this.pageSize,a.queryParams.pageIndex=this.pageIndex,a.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var x=this.router.createUrlTree([],{queryParams:a.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(x.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"facetParams",get:function(){return this.privateFacetParams}},{key:"restricSearh",value:function(a){this.privateSearchTerm=a,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchProducts()}},{key:"export",value:function(){var a=this;if(this.etag){var x="xlsx",O=this.getApiExportUrl(this.etag,x);""!==this.authService.getUser()&&this.dialog.open(_t.L,{height:"215x",width:"550px",data:{extension:x,type:"BrowseProducts"}}).afterClosed().subscribe(function(Le){Le&&""!==Le&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(O,a.privateExport,Le+"."+x).subscribe(function(Ht){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",Ht.id])},function(Ht){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,x){return this.productService.getApiExportUrl(a,x)}},{key:"separateAppTypeNumber",value:function(){var a=this;this.products&&this.products.forEach(function(x,O){if(x.appTypeNumber){var In,W="",Le="",rt=!1,Ht=(0,xo.Z)(x.appTypeNumber);try{for(Ht.s();!(In=Ht.n()).done;){var ei=In.value;ei&&(!0===a.isNumber(ei)?(rt=!0,x.appNumber=Le+=ei):!1===rt&&(x.appType=W+=ei))}}catch(_i){Ht.e(_i)}finally{Ht.f()}}})}},{key:"isNumber",value:function(a){if(a){var x=Number(a);return!isNaN(x)}return!1}},{key:"openImageModal",value:function(a,x){var O=this,Le=this.dialog.open(rn.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:x,uuid:x}});this.overlayContainer.style.zIndex="1002";var rt=Le.afterClosed().subscribe(function(){O.overlayContainer.style.zIndex=null,rt.unsubscribe()},function(){O.overlayContainer.style.zIndex=null,rt.unsubscribe()})}},{key:"getAppTypeNumberUrl",value:function(a,x){return'browse-applications?search=root_appType:"^'+a+'$" AND root_appNumber:"^'+x+'$"'}},{key:"processSubstanceSearch",value:function(a){this.privateSearchTerm=a,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(Mn.M),e.Y36(Ie.e),e.Y36(wn.bH),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Jn.$),e.Y36(qe.Xj),e.Y36(d.gz),e.Y36(d.F0),e.Y36(p.Ye),e.Y36(p.S$),e.Y36(sn.H7),e.Y36(fi.F),e.Y36(qt.uw),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-products-browse"]],hostBindings:function(l,a){1&l&&e.NdJ("popstate",function(O){return a.onPopState(O)},!1,e.Jf7)},decls:85,vars:42,consts:[["mode","side","opened",""],["configName","products","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],[1,"sort"],[3,"ngModel","selectionChange","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","productSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],[1,"responsive"],["mat-table","","matSort","","matSortDisableClear","",1,"font12px",3,"dataSource","matSortChange"],["matColumnDef","productNDC"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["class","width120px","mat-cell","",4,"matCellDef"],["matColumnDef","productName"],["mat-cell","",4,"matCellDef"],["matColumnDef","ingredientName"],["valign","top","mat-cell","",4,"matCellDef"],["matColumnDef","labelerName"],["matColumnDef","country"],["matColumnDef","status"],["matColumnDef","productNameType"],["matColumnDef","applicationNumber"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],["noRecordProduct",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[3,"value"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell","",1,"width120px"],[1,"padtop7px"],["target","_blank","alt","View SPL Product Record","title","View SPL Product Record",1,"substance-name",3,"routerLink"],[4,"ngIf","ngIfElse"],["noProdNDC",""],[1,"padtop15px","padbottom7px"],["target","_blank","alt","Go to DailyMed website","title","Go to DailyMed website",3,"href"],[3,"src"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],["target","_blank","alt","View Product Record",1,"substance-name",3,"routerLink"],["noProdNDCSRS",""],["target","_blank","matTooltip","Edit Product Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit Product Record",3,"routerLink"],["mat-cell",""],[4,"ngFor","ngForOf"],["valign","top","mat-cell",""],[1,"olstyle"],["target","_blank",3,"routerLink"],["mat-button","",1,"structure-parameters",3,"click"],[2,"padding","0px","margin","0px"],["noAppType",""],["target","_blank",3,"href"],[1,"approval-id"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[1,"font13px"],[1,"center"],[1,"colororange","font17px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],["class","row",4,"ngIf"],["target","_blank",1,"substance-name",3,"routerLink"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon","margintop20px"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink"],[1,"colorlightblue","font14px"],["noIngredType",""],[1,""],[1,"colorgreen"]],template:function(l,a){if(1&l){var x=e.EpF();e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e.TgZ(3,"mat-sidenav-container"),e.TgZ(4,"mat-sidenav",0),e.TgZ(5,"app-facets-manager",1),e.NdJ("facetsParamsUpdated",function(rt){return a.facetsParamsUpdated(rt)})("facetsLoaded",function(rt){return a.facetsLoaded(rt)}),e.qZA(),e.qZA(),e.TgZ(6,"mat-sidenav-content"),e.TgZ(7,"div",2),e.YNc(8,co,23,4,"div",3),e.YNc(9,bp,4,3,"ng-template",null,4,e.W1O),e.TgZ(11,"div",5),e.TgZ(12,"div",6),e.TgZ(13,"span",7),e._uU(14,"Browse Products"),e.qZA(),e.qZA(),e.TgZ(15,"mat-button-toggle-group",8),e.NdJ("change",function(rt){return a.updateView(rt)}),e.TgZ(16,"mat-button-toggle",9),e._UZ(17,"mat-icon",10),e.qZA(),e.TgZ(18,"mat-button-toggle",11),e._UZ(19,"mat-icon",12),e.qZA(),e.qZA(),e.TgZ(20,"mat-form-field",13),e.TgZ(21,"mat-label"),e._uU(22,"Sort By"),e.qZA(),e.TgZ(23,"mat-select",14),e.NdJ("selectionChange",function(){return a.searchProducts()})("ngModelChange",function(rt){return a.order=rt}),e.YNc(24,kh,2,2,"mat-option",15),e.qZA(),e.qZA(),e.YNc(25,fd,4,0,"div",16),e._UZ(26,"div",17),e.TgZ(27,"div",18),e.TgZ(28,"mat-paginator",19,20),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(30,"div",21),e.TgZ(31,"span",22),e._uU(32,"Page: "),e.qZA(),e.TgZ(33,"mat-form-field",23),e.TgZ(34,"input",24,25),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(35).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(36,"span",22),e._uU(37),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(38,"div",26),e.TgZ(39,"app-product-text-search",27),e.NdJ("searchPerformed",function(rt){return a.processSubstanceSearch(rt)}),e.qZA(),e.qZA(),e.TgZ(40,"div",28),e.TgZ(41,"div",29),e.TgZ(42,"div",30),e.TgZ(43,"table",31),e.NdJ("matSortChange",function(rt){return a.sortData(rt)}),e.ynx(44,32),e.YNc(45,Cp,2,0,"th",33),e.YNc(46,xp,3,2,"td",34),e.BQk(),e.ynx(47,35),e.YNc(48,dl,2,0,"th",33),e.YNc(49,gd,2,1,"td",36),e.BQk(),e.ynx(50,37),e.YNc(51,vd,2,0,"th",33),e.YNc(52,rr,3,1,"td",38),e.BQk(),e.ynx(53,39),e.YNc(54,ku,2,0,"th",33),e.YNc(55,yd,3,2,"td",36),e.BQk(),e.ynx(56,40),e.YNc(57,bd,2,0,"th",33),e.YNc(58,Tp,2,1,"td",36),e.BQk(),e.ynx(59,41),e.YNc(60,Gl,2,0,"th",33),e.YNc(61,Ap,2,1,"td",36),e.BQk(),e.ynx(62,42),e.YNc(63,Pp,2,0,"th",33),e.YNc(64,Dp,2,1,"td",36),e.BQk(),e.ynx(65,43),e.YNc(66,mm,2,0,"th",33),e.YNc(67,Bs,4,2,"td",36),e.BQk(),e.YNc(68,wc,1,0,"tr",44),e.YNc(69,wp,1,0,"tr",45),e.qZA(),e.qZA(),e.qZA(),e.YNc(70,Ip,2,1,"div",46),e.qZA(),e.TgZ(71,"div",5),e.TgZ(72,"div",18),e.TgZ(73,"mat-paginator",19,20),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(75,"div",21),e.TgZ(76,"span",22),e._uU(77,"Page: "),e.qZA(),e.TgZ(78,"mat-form-field",23),e.TgZ(79,"input",24,25),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(35).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(81,"span",22),e._uU(82),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(83,fl,0,0,"ng-template",null,47,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&l){var O=e.MAs(10),W=e.MAs(84);e.xp6(5),e.Q6J("rawFacets",a.rawFacets),e.xp6(3),e.Q6J("ngIf",a.matchTypes&&a.matchTypes.length>0)("ngIfElse",O),e.xp6(7),e.Q6J("value",a.view),e.xp6(8),e.Q6J("ngModel",a.order),e.xp6(1),e.Q6J("ngForOf",a.sortValues),e.xp6(1),e.Q6J("ngIf",a.isAdmin),e.xp6(3),e.Q6J("length",a.totalProducts)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(32,Hr))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(33,ml,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(35,ml,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,""),e.xp6(2),e.Q6J("searchValue",a.searchValue),e.xp6(1),e.Q6J("ngClass",a.view),e.xp6(3),e.Q6J("dataSource",a.products),e.xp6(25),e.Q6J("matHeaderRowDef",a.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",a.displayedColumns),e.xp6(1),e.Q6J("ngIf",a.products&&a.products.length)("ngIfElse",W),e.xp6(3),e.Q6J("length",a.totalProducts)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(37,Hr))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(38,ml,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(40,ml,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,"")}},directives:[Ft.TM,Ft.JX,Ue.R,Ft.Rh,p.O5,T.lW,Ae.p6,I.Hw,Ae.VK,p.sg,Ae.OP,d.yS,ft.A9,ft.Yi,f.gM,St.KE,St.hX,we.gD,je.JJ,je.On,_n.ey,be.NW,p.mk,Pt.Nt,Cn,v.BZ,yt.YE,v.w1,v.fO,v.ge,yt.nU,v.Dz,v.ev,v.as,v.XQ,v.nj,v.Gk,s.a8,s.n5,s.dn],pipes:[p.uU],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#80cbc4} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#26a69a}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#ef9a9a} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ef5350}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#000;border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid gray}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid gray}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:#c7254e}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:#00f;display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:#404040;white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:38%;max-width:38%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:62%;max-width:62%;padding:5px;font-size:13px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%], .font11px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorgreen[_ngcontent-%COMP%]{color:#097921}.colororange[_ngcontent-%COMP%]{color:orange}.colorlightblue[_ngcontent-%COMP%]{color:#1945bd}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid #f8cf88}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #bbc2a4}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.padtop7px[_ngcontent-%COMP%]{padding-top:7px}.padtop15px[_ngcontent-%COMP%]{padding-top:15px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padbottom7px[_ngcontent-%COMP%]{padding-bottom:7px}.width120px[_ngcontent-%COMP%]{width:120px}.width40[_ngcontent-%COMP%]{width:40%}.width30[_ngcontent-%COMP%]{width:30%}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.totalstyle[_ngcontent-%COMP%]{display:inline-block;color:#fff;border:1px solid #CCC;background:#60615e;box-shadow:0 0 5px -1px #0003;vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid blue}.olstyle[_ngcontent-%COMP%]{padding-left:0;margin-top:0}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:5px}.margintopneg10[_ngcontent-%COMP%]{margin-top:-10px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),m}(),Zc=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.router=l,this.authService=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){O.authService.getAuth().pipe((0,Ee.q)(1)).subscribe(function(Le){Le?O.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry").pipe((0,Ee.q)(1)).subscribe(function(Ht){Ht?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/browse-products")),W.complete())}):(W.next(O.router.createUrlTree(["/login"],{queryParams:{path:x.url}})),W.complete())})})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0),e.LFG(Ie.e))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac}),m}(),$l=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.router=l,this.authService=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){O.authService.getAuth().pipe((0,Ee.q)(1)).subscribe(function(Le){Le?O.authService.hasAnyRolesAsync("Updater","SuperUpdater").pipe((0,Ee.q)(1)).subscribe(function(Ht){Ht?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/browse-products")),W.complete())}):(W.next(O.router.createUrlTree(["/login"],{queryParams:{path:x.url}})),W.complete())})})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0),e.LFG(Ie.e))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac}),m}(),Ri=function(){var m=function(){function D(l){(0,P.Z)(this,D),this.productService=l}return(0,t.Z)(D,[{key:"canDeactivate",value:function(a){return!this.productService.isProductUpdated||!!confirm("You have unsaved changes! If you leave, your changes will be lost.")}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(Mn.M))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac,providedIn:"root"}),m}(),hl=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.configService=l,this.router=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){var Le=O.configService.configData.loadedComponents||null;Le&&Le.products?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/home")),W.complete())})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(On.E),e.LFG(d.F0))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac,providedIn:"root"}),m}(),uu=[{path:"browse-products",component:cu,canActivate:[hl]},{path:"product/register",component:xc,canActivate:[hl,Zc],canDeactivate:[Ri]},{path:"product/:id/edit",component:xc,canActivate:[hl,$l],canDeactivate:[Ri]},{path:"product/:id",component:id,canActivate:[hl]},{path:"product-elist/:id",component:gp,canActivate:[hl]}],dc=function(){var m=function(){function D(l){(0,P.Z)(this,D),uu.forEach(function(a){l.config[0].children.push(a)})}return(0,t.Z)(D,null,[{key:"forRoot",value:function(){return{ngModule:D,providers:[Mn.M,Zc,$l,Ri,hl]}}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0))},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({providers:[Zc,$l,hl],imports:[[p.ez,d.Bz.forChild(uu),Nt.g0,Ft.SJ,s.QW,bt.Bb,St.lN,Pt.c,T.ot,I.Ps,ut.Hi,Q.g,h.To,J.p9,v.p0,yt.JX,be.TU,we.LD,_e.KP,qt.Is,$.ie,Ae.Tx,ft.vV,f.AV,B.Nh,gt._r,j.Cq,je.u5,je.UX,qe.U8,Cl.f,Fo,$o.O,wn.On,_a]]}),m}();e.B6R(xc,[T.lW,p.O5,I.Hw,f.gM,d.rH,T.zs,d.yS,p.mk,p.sg,s.a8,s.dn,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Cr.S,Q.k,Fs],[p.uU]),e.B6R(Fs,[T.lW,p.PC,f.gM,I.Hw,Cr.S,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Q.k,p.sg,Tc],[]),e.B6R(Sc,[T.lW,p.PC,f.gM,I.Hw,p.O5,Fe,p.sg,Cr.S,J.oG,je.JJ,je.On,St.KE,Pt.Nt,je.Fj],[p.uU]);var _l=n(69638),kc=n(92938),Lp=["matSideNavInstance"];function ur(m,D){if(1&m&&(e.TgZ(0,"mat-option",27),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l.value),e.xp6(1),e.hij(" ",l.title," ")}}function ym(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",28),e.NdJ("click",function(){return e.CHM(l),e.oxw().toggleShowHelp()}),e._uU(2,"?"),e.qZA(),e.qZA()}}function bm(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-card",29),e.TgZ(1,"div"),e._UZ(2,"span",30),e.TgZ(3,"button",31),e.NdJ("click",function(){return e.CHM(l),e.oxw().toggleShowHelp()}),e._UZ(4,"mat-icon",32),e.qZA(),e.qZA(),e.TgZ(5,"div"),e.TgZ(6,"p"),e.TgZ(7,"strong"),e._uU(8,"All"),e.qZA(),e._uU(9," - search in all indexed fields; wild cards work (e.g health*)."),e.qZA(),e.TgZ(10,"p"),e.TgZ(11,"strong"),e._uU(12,"Title"),e.qZA(),e._uU(13," - search for full words contained in the title field."),e.qZA(),e.TgZ(14,"p"),e.TgZ(15,"strong"),e._uU(16,"Trial Number"),e.qZA(),e._uU(17," - search for Trial Number exactly."),e.qZA(),e.TgZ(18,"p"),e.TgZ(19,"strong"),e._uU(20,"Substance Key"),e.qZA(),e._uU(21," - search for Substance Key exactly."),e.qZA(),e.qZA(),e.qZA()}}function Ru(m,D){1&m&&e._UZ(0,"th",33)}var Cm=function(D){return["/edit-clinical-trial",D]},Fp=function(){return{}};function du(m,D){if(1&m&&(e.TgZ(0,"td",34),e.TgZ(1,"a",35),e._uU(2,"Edit"),e.qZA(),e._uU(3,"\xa0"),e.TgZ(4,"a",36),e._uU(5,"+"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(3,Cm,l.trialNumber))("queryParams",e.DdM(5,Fp)),e.xp6(3),e.Q6J("href","edit-clinical-trial/"+l.trialNumber,e.LSH)}}function Mm(m,D){1&m&&(e.TgZ(0,"th",33),e._uU(1,"Trial Number"),e.qZA())}function xm(m,D){if(1&m&&(e.TgZ(0,"td",34),e.TgZ(1,"a",37),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+l.trialNumber,e.LSH),e.xp6(1),e.Oqu(l.trialNumber)}}function Ol(m,D){1&m&&(e.TgZ(0,"th",33),e._uU(1,"Title"),e.qZA())}function Po(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" (",l.clinicalTrialUSDrug.length,") ")}}function Pd(m,D){if(1&m&&(e.TgZ(0,"td",34),e._uU(1),e.YNc(2,Po,2,1,"span",12),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.title," "),e.xp6(1),e.Q6J("ngIf",l.clinicalTrialUSDrug)}}function Np(m,D){1&m&&(e.TgZ(0,"th",33),e._uU(1,"Last Updated"),e.qZA())}function Dd(m,D){if(1&m&&(e.TgZ(0,"td",34),e._uU(1),e.ALo(2,"date"),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij("",e.Dn7(2,1,l.lastUpdated,"MM/dd/yyyy","UTC")," ")}}function Sm(m,D){1&m&&e._UZ(0,"th",33)}function Ic(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"td",38),e.TgZ(1,"span",39),e.NdJ("click",function(){var O=e.CHM(l).index;return e.oxw().deleteClinicalTrial(O)}),e._uU(2,"Del"),e.qZA(),e.qZA()}}function pu(m,D){1&m&&e._UZ(0,"tr",40)}function wd(m,D){1&m&&e._UZ(0,"tr",41)}var Od=function(D){return{collapsed:D}},Ed=function(){return[5,10,50,100]},Rp=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi){var qi=this;(0,P.Z)(this,D),this.activatedRoute=l,this.clinicalTrialService=a,this.configService=x,this.loadingService=O,this.notificationService=W,this.utilsService=Le,this.router=rt,this.authService=Ht,this.overlayContainerService=In,this.location=ei,this.facetManagerService=_i,this.gaService=Mi,this.lodash=kc,this.privateSearchTerm="",this.privateSearchType="all",this.showHelp=!1,this.isLoading=!0,this.isError=!1,this.searchTypes=[],this.hasBackdrop=!1,this.searchText=[],this.toggle=[],this.subscriptions=[],this.dataSource=new v.by([]),this.showExactMatches=!1,this.isComponentInit=!1,this.displayFacets=[],this.isFacetsParamsInit=!1,this.isCollapsed=!0,this.isSearchEditable=!1,this.processResponsiveness=function(){window&&(window.innerWidth<1100?(qi.matSideNav.close(),qi.isCollapsed=!0,qi.hasBackdrop=!0):(qi.matSideNav.open(),qi.hasBackdrop=!1))}}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.facetManagerService.registerGetFacetsHandler(this.clinicalTrialService.getClinicalTrialsFacets),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.searchTerm||"",this.privateSearchType=this.activatedRoute.snapshot.queryParams.type||"all",this.privateSearchCutoff=Number(this.activatedRoute.snapshot.queryParams.cutoff)||0,this.order=this.activatedRoute.snapshot.queryParams.order||"$trialNumber",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.authService.getAuth().subscribe(function(O){a.isAdmin=a.authService.hasAnyRoles("Updater","SuperUpdater"),a.displayedColumns=a.isAdmin?["edit","trialNumber","title","lastUpdated","delete"]:["edit","trialNumber","title","lastUpdated"]}),this.searchTypes=[{title:"All",value:"all"},{title:"Title",value:"title"},{title:"Trial Number",value:"trialNumber"},{title:"Substance Key",value:"substanceKey"}],this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){var a=this,x=this.matSideNav.openedStart.subscribe(function(){a.utilsService.handleMatSidenavOpen(1100)});this.subscriptions.push(x);var O=this.matSideNav.closedStart.subscribe(function(){a.utilsService.handleMatSidenavClose()});this.subscriptions.push(O)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchClinicalTrials()}},{key:"changePage",value:function(a){this.pageSize=a.pageSize,this.pageIndex=a.pageIndex,this.populateUrlQueryParameters(),this.searchClinicalTrials()}},{key:"facetsParamsUpdated",value:function(a){this.pageIndex=0,this.privateFacetParams=a.facetParam,this.privateFacetParams=a.facetParam,this.isFacetsParamsInit?this.searchClinicalTrials():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(a){a>0?this.processResponsiveness():this.matSideNav.close()}},{key:"searchClinicalTrials",value:function(){var a=this,x=this.utilsService.hashCode(this.privateSearchTerm,this.privateSearchCutoff,this.privateSearchType,this.pageSize,this.order,this.privateFacetParams,this.pageIndex*this.pageSize);if(null===this.argsHash||this.argsHash!==x){this.isLoading=!0,this.loadingService.setLoading(!0),this.argsHash=x;var W=this.clinicalTrialService.getClinicalTrials({searchTerm:this.privateSearchTerm,cutoff:this.privateSearchCutoff,type:this.privateSearchType,order:this.order,pageSize:this.pageSize,facets:this.privateFacetParams,skip:this.pageIndex*this.pageSize}).subscribe(function(Le){a.isError=!1,a.clinicalTrials=Le.content,a.totalClinicalTrials=Le.total,a.dataSource.data=a.clinicalTrials,Le.facets&&Le.facets.length>0&&(a.rawFacets=Le.facets)},function(){var Le={message:"There was an error trying to retrieve ClinicalTrials. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(Le)},function(){W.unsubscribe(),a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.privateSearchTerm.trim(),this.populateUrlQueryParameters(),this.searchClinicalTrials()}},{key:"deleteClinicalTrial",value:function(a){var x=this;void 0!==this.clinicalTrials[a]&&kc.has(this.clinicalTrials[a],"trialNumber")?!confirm("Are you sure to delete "+this.clinicalTrials[a].trialNumber+"?")||(this.loadingService.setLoading(!0),this.clinicalTrialService.deleteClinicalTrial(this.clinicalTrials[a].trialNumber).subscribe(function(){x.isError=!1;var O=x.clinicalTrials.splice(a,1);x.dataSource.data=x.clinicalTrials;var W={message:"You deleted the clinical trial record for:"+O[0].trialNumber,type:Tn.k.success,milisecondsToShow:6e3};x.isError=!1,x.isLoading=!1,x.loadingService.setLoading(x.isLoading),x.notificationService.setNotification(W)},function(){var O={message:"There was an error trying to delete a clinical trial.",type:Tn.k.error,milisecondsToShow:6e3};x.isError=!0,x.isLoading=!1,x.loadingService.setLoading(x.isLoading),x.notificationService.setNotification(O)},function(){x.isLoading=!1,x.loadingService.setLoading(x.isLoading)})):alert("A trial number is required.")}},{key:"populateUrlQueryParameters",value:function(){var a={queryParams:{}};a.queryParams.searchTerm=this.privateSearchTerm,a.queryParams.cutoff=this.privateSearchCutoff,a.queryParams.type=this.privateSearchType,a.queryParams.order=this.order,a.queryParams.pageSize=this.pageSize,a.queryParams.pageIndex=this.pageIndex,a.queryParams.skip=this.pageIndex*this.pageSize;var x=this.router.createUrlTree([],{queryParams:a.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(x.toString())}},{key:"clearSearch",value:function(){this.privateSearchTerm="",this.pageIndex=0,this.populateUrlQueryParameters(),this.searchClinicalTrials()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(a){a.removeFacet(a.type,a.bool,a.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"searchTerm",get:function(){return this.privateSearchTerm},set:function(a){this.privateSearchTerm=a}},{key:"searchType",get:function(){return this.privateSearchType},set:function(a){this.privateSearchType=a}},{key:"openSideNav",value:function(){this.matSideNav.open()}},{key:"showAllRecords",value:function(){this.showExactMatches=!1,this.processResponsiveness()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"toggleShowHelp",value:function(){this.showHelp=!this.showHelp}},{key:"editAdvancedSearch",value:function(){var a={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],a)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(d.gz),e.Y36(_l.m),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(fi.F),e.Y36(d.F0),e.Y36(Ie.e),e.Y36(qe.Xj),e.Y36(p.Ye),e.Y36(wn.bH),e.Y36(Jn.$))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-clinical-trials-browse"]],viewQuery:function(l,a){var x;1&l&&e.Gf(Lp,7),2&l&&e.iGM(x=e.CRH())&&(a.matSideNav=x.first)},hostBindings:function(l,a){1&l&&e.NdJ("resize",function(O){return a.onResize(O)},!1,e.Jf7)},decls:45,vars:24,consts:[[3,"hasBackdrop","ngClass"],["mode","side","opened","false",3,"disableClose"],["matSideNavInstance",""],["configName","clinicaltrialsus","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"example-container","mat-elevation-z8","clinical-trials-browse-wrapper"],[1,"filter-form","clinical-trials-browse-filter-form"],[1,"clinical-trials-browse-filter-form-searchTerm"],["matInput","","placeholder","Search Term","name","searchTerm",3,"ngModel","ngModelChange","keyup.enter"],[1,"clinical-trials-browse-filter-form-searchType"],["name","searchType",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Search Clinical Trials",1,"clinical-trials-browse-filter-form-button-open",3,"click"],[4,"ngIf"],["class","clinical-trials-browse-show-help",4,"ngIf"],[3,"length","pageIndex","pageSize","pageSizeOptions","page"],["paginator",""],["mat-table","",1,"mat-elevation-z8",3,"dataSource"],["matColumnDef","edit"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","trialNumber"],["matColumnDef","title"],["matColumnDef","lastUpdated"],["matColumnDef","delete"],["mat-cell","","class","clinical-trials-browse-button-cell",4,"matCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[3,"value"],["mat-icon-button","","aria-label","Show Help",3,"click"],[1,"clinical-trials-browse-show-help"],[1,"middle-fill"],["mat-icon-button","",1,"clinical-trials-browse-filter-form-help-button-close",3,"click"],["svgIcon","close"],["mat-header-cell",""],["mat-cell",""],["title","Edit in this tab",1,"clinical-trials-browse-edit1",3,"routerLink","queryParams"],["target","_blank","title","Edit in new tab",1,"clinical-trials-browse-edit2",3,"href"],["target","_blank","title","see clinicaltrials.gov",3,"href"],["mat-cell","",1,"clinical-trials-browse-button-cell"],["aria-label","Del",1,"clinical-trials-browse-del",3,"click"],["mat-header-row",""],["mat-row",""]],template:function(l,a){1&l&&(e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(O){return a.facetsParamsUpdated(O)})("facetsLoaded",function(O){return a.facetsLoaded(O)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.TgZ(6,"h3"),e._uU(7,"Browse Clinical Trials"),e.qZA(),e.TgZ(8,"div"),e.TgZ(9,"form",5),e.TgZ(10,"mat-form-field",6),e.TgZ(11,"input",7),e.NdJ("ngModelChange",function(O){return a.searchTerm=O})("keyup.enter",function(){return a.setSearchTermValue()}),e.qZA(),e.qZA(),e.TgZ(12,"mat-form-field",8),e.TgZ(13,"mat-label"),e._uU(14,"Type"),e.qZA(),e.TgZ(15,"mat-select",9),e.NdJ("ngModelChange",function(O){return a.searchType=O}),e.YNc(16,ur,2,2,"mat-option",10),e.qZA(),e.qZA(),e.TgZ(17,"button",11),e.NdJ("click",function(){return a.setSearchTermValue()}),e._uU(18,"Go"),e.qZA(),e.YNc(19,ym,3,0,"span",12),e.qZA(),e.YNc(20,bm,22,0,"mat-card",13),e.qZA(),e.TgZ(21,"div"),e.TgZ(22,"mat-paginator",14,15),e.NdJ("page",function(O){return a.changePage(O)}),e.qZA(),e.qZA(),e.TgZ(24,"table",16),e.ynx(25,17),e.YNc(26,Ru,1,0,"th",18),e.YNc(27,du,6,6,"td",19),e.BQk(),e.ynx(28,20),e.YNc(29,Mm,2,0,"th",18),e.YNc(30,xm,3,2,"td",19),e.BQk(),e.ynx(31,21),e.YNc(32,Ol,2,0,"th",18),e.YNc(33,Pd,3,2,"td",19),e.BQk(),e.ynx(34,22),e.YNc(35,Np,2,0,"th",18),e.YNc(36,Dd,3,5,"td",19),e.BQk(),e.ynx(37,23),e.YNc(38,Sm,1,0,"th",18),e.YNc(39,Ic,3,0,"td",24),e.BQk(),e.YNc(40,pu,1,0,"tr",25),e.YNc(41,wd,1,0,"tr",26),e.qZA(),e.TgZ(42,"div"),e.TgZ(43,"mat-paginator",14,15),e.NdJ("page",function(O){return a.changePage(O)}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&l&&(e.Q6J("hasBackdrop",a.hasBackdrop)("ngClass",e.VKq(20,Od,a.showExactMatches)),e.xp6(1),e.Q6J("disableClose",!0),e.xp6(2),e.Q6J("rawFacets",a.rawFacets),e.xp6(8),e.Q6J("ngModel",a.searchTerm),e.xp6(4),e.Q6J("ngModel",a.searchType),e.xp6(1),e.Q6J("ngForOf",a.searchTypes),e.xp6(3),e.Q6J("ngIf",!a.showHelp),e.xp6(1),e.Q6J("ngIf",a.showHelp),e.xp6(2),e.Q6J("length",a.totalClinicalTrials)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(22,Ed)),e.xp6(2),e.Q6J("dataSource",a.dataSource),e.xp6(16),e.Q6J("matHeaderRowDef",a.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",a.displayedColumns),e.xp6(2),e.Q6J("length",a.totalClinicalTrials)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(23,Ed)))},directives:[Ft.TM,p.mk,Ft.JX,Ue.R,Ft.Rh,je._Y,je.JL,je.F,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,St.hX,we.gD,p.sg,_n.ey,T.lW,St.R9,p.O5,s.a8,I.Hw,be.NW,v.BZ,v.w1,v.fO,v.ge,v.Dz,v.ev,d.yS,v.as,v.XQ,v.nj,v.Gk],pipes:[p.uU],styles:[".clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{text-decoration:none}.clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{padding-left:.5em;padding-right:.5em}.clinical-trials-browse-del[_ngcontent-%COMP%]{color:red;cursor:pointer}.clinical-trials-browse-wrapper[_ngcontent-%COMP%]{padding:10px;margin:60px 30px 30px}.clinical-trials-browse-filter-form[_ngcontent-%COMP%], .clinical-trials-browse-filter-form-button[_ngcontent-%COMP%]{margin-right:10px}.clinical-trials-browse-filter-form-help-button-open[_ngcontent-%COMP%]{margin:10px}.clinical-trials-browse-filter-form-searchTerm[_ngcontent-%COMP%], .clinical-trials-browse-filter-form-searchType[_ngcontent-%COMP%]{margin-right:10px}.clinical-trials-browse-show-help[_ngcontent-%COMP%]{max-width:600px;float:left;clear:both;display:-ms-flexbox;display:flex}table[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;text-align:left;padding:.5em}.clinical-trials-browse-button-cell[_ngcontent-%COMP%]{padding:0}.clinical-trials-browse-button-cell[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%] mat-button-base[_ngcontent-%COMP%]{position:relative;top:15px}.clinical-trials-browse-button-cell[_ngcontent-%COMP%] .mat-button-wrapper[_ngcontent-%COMP%]{color:red}.clinical-trials-browse-wrapper[_ngcontent-%COMP%] mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0;border:none;overflow:visible;display:block;cursor:pointer}.clinical-trials-browse-wrapper[_ngcontent-%COMP%] .mat-expansion-panel-header[aria-disabled=true][_ngcontent-%COMP%], .clinical-trials-browse-wrapper[_ngcontent-%COMP%] .mat-expansion-panel-header[aria-disabled=false][_ngcontent-%COMP%]{color:#000}.clinical-trials-browse-wrapper[_ngcontent-%COMP%] mat-expansion-panel.clinical-trials-browse-peak-substances-expansion-panel[_ngcontent-%COMP%]{border:none;box-shadow:none}.clinical-trials-browse-substance-peak[_ngcontent-%COMP%]{overflow:auto;max-width:600px;margin-top:5px;clear:both}.clinical-trials-browse-substance-peak[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{white-space:nowrap}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px;border:5px solid magenta}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap;border:5px solid yellow}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid gray}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid gray}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}"]}),m}(),Xl=n(50635),gl=n(49525),Zd=n(91640),Uu=n(63169);function Up(m,D){if(1&m&&(e.TgZ(0,"mat-option",7),e.TgZ(1,"div"),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l.key),e.xp6(2),e.Oqu(l.key)}}function Bp(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Up,3,2,"mat-option",6),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngForOf",l.suggestions)}}function Ys(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",8),e.NdJ("click",function(){return e.CHM(l),e.oxw().processSubstanceNameSearch()}),e._UZ(2,"mat-icon",9),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(1),e.Q6J("disabled",a.searchControl.invalid)}}var pc=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.utilsService=l,this.router=a,this.miniSearchOutput=new e.vpe,this.searchControl=new je.NI,this.mainPathSegment="",this.showIcon=!1,this.suggestions=[]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.searchControl.valueChanges.pipe((0,et.b)(500),(0,De.x)(),(0,Ze.w)(function(x){return a.utilsService.getStructureSearchSuggestions(x)})).subscribe(function(x){a.substanceSuggestionsGroup=x,a.suggestionsFields=Object.keys(a.substanceSuggestionsGroup),a.suggestions=x.Name},function(x){}),this.mainPathSegment=this.getMainPathSegmentFromUrl(this.router.routerState.snapshot.url.substring(1)),this.router.events.subscribe(function(x){x instanceof d.m2&&(a.mainPathSegment=a.getMainPathSegmentFromUrl(x.url.substring(1)))})}},{key:"ngAfterViewInit",value:function(){var a=this;this.searchControl.setValue(this.myInitialSearch),this.trigger.panelClosingActions.subscribe(function(x){a.miniSearchOutput.emit({value:a.searchControl.value,myIndex:a.myIndex})})}},{key:"getMainPathSegmentFromUrl",value:function(a){return a.split("?")[0].split("/")[0]}},{key:"substanceSearchOptionSelected",value:function(a){this.miniSearchOutput.emit({value:a.option.value,myIndex:this.myIndex})}},{key:"processSubstanceNameSearch",value:function(){}},{key:"navigateToSearchResults",value:function(a){this.router.navigate(["/browse-substance"],{queryParams:a?{search_term:a}:null})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(Uu.FW),e.Y36(d.F0))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-mini-search"]],viewQuery:function(l,a){var x;1&l&&e.Gf(bt.ZL,7),2&l&&e.iGM(x=e.CRH())&&(a.trigger=x.first)},inputs:{myIndex:"myIndex",myInitialSearch:"myInitialSearch"},outputs:{miniSearchOutput:"miniSearchOutput"},decls:7,vars:5,consts:[[1,"search-form-field","space-right-small",3,"floatLabel"],["type","text","placeholder","Search","aria-label","Search substances","matInput","",1,"search",3,"formControl","matAutocomplete"],[3,"optionSelected"],["auto","matAutocomplete"],[4,"ngFor","ngForOf"],[4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"]],template:function(l,a){if(1&l&&(e.TgZ(0,"form"),e.TgZ(1,"mat-form-field",0),e._UZ(2,"input",1),e.TgZ(3,"mat-autocomplete",2,3),e.NdJ("optionSelected",function(W){return a.substanceSearchOptionSelected(W)}),e.YNc(5,Bp,2,1,"div",4),e.qZA(),e.qZA(),e.YNc(6,Ys,3,1,"span",5),e.qZA()),2&l){var x=e.MAs(4);e.xp6(1),e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",a.searchControl)("matAutocomplete",x),e.xp6(3),e.Q6J("ngForOf",a.suggestionsFields),e.xp6(1),e.Q6J("ngIf",a.showIcon)}},directives:[je._Y,je.JL,je.F,St.KE,Pt.Nt,je.Fj,bt.ZL,je.JJ,je.oH,bt.XC,p.sg,_n.ey,p.O5,T.lW,I.Hw],styles:[".logo[_ngcontent-%COMP%]{height:35px;margin-right:20px}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%;width:auto}.nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%]{padding:0 5px}.nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]{font-size:16px;color:#e6e6e6;padding-bottom:7px;transition:all .15s linear;text-decoration:none;outline:none}.nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]:hover, .nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%] > a.active[_ngcontent-%COMP%]{color:#fff;cursor:pointer;padding-bottom:5px;border-bottom:2px solid white;text-decoration:none}.search-form-field[_ngcontent-%COMP%]{width:300px}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.search-form-field[_ngcontent-%COMP%] .mat-form-field-label{font-size:16px;top:1em}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:#666;overflow:hidden}"]}),m}(),Lc=function(){return["/browse-clinical-trials"]};function Yp(m,D){1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Clinical Trial with not found for editing."),e.qZA(),e.TgZ(3,"p"),e._uU(4,"Go to "),e.TgZ(5,"a",2),e._uU(6,"browse"),e.qZA(),e.qZA(),e.qZA()),2&m&&(e.xp6(5),e.Q6J("routerLink",e.DdM(1,Lc)))}function kd(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw(4);e.xp6(1),e.Oqu(l.clinicalTrial.title)}}function ec(m,D){if(1&m&&(e.TgZ(0,"p"),e.TgZ(1,"a",21),e._uU(2),e.qZA(),e._uU(3," \xa0"),e.YNc(4,kd,2,1,"span",1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+l.clinicalTrial.trialNumber,e.LSH),e.xp6(1),e.Oqu(l.clinicalTrial.trialNumber),e.xp6(2),e.Q6J("ngIf",l.clinicalTrial.title)}}function Fc(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,ec,5,3,"p",1),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.trialNumber)}}function qs(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span"),e.TgZ(2,"mat-checkbox",22),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).clinicalTrial.gsrsMatchingComplete=O}),e.TgZ(3,"label"),e._uU(4,"Matching Complete"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(2),e.Q6J("disabled",!a.isAdmin)("value",a.clinicalTrial.gsrsMatchingComplete)("ngModel",a.clinicalTrial.gsrsMatchingComplete)}}function El(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.hij(" (",l.clinicalTrial.clinicalTrialUSDrug.length,")")}}function Id(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",23),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).addRow()}),e._uU(2,"Add"),e.qZA(),e.TgZ(3,"button",24),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).updateClinicalTrial()}),e._uU(4,"Update CT"),e.qZA(),e.qZA()}}function Ld(m,D){1&m&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"ID"),e.qZA())}function Ih(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-cell"),e.TgZ(1,"mat-form-field",25),e.TgZ(2,"input",26),e.NdJ("ngModelChange",function(O){return e.CHM(l).$implicit.id=O}),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(2),e.Q6J("value",a.id)("ngModel",a.id)}}function Nc(m,D){1&m&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Name"),e.qZA())}function Fd(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.name," ")}}function qp(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"app-mini-search",27),e.NdJ("miniSearchOutput",function(Le){return e.CHM(l),e.oxw(3).reportMiniSearchOutput(Le)}),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(),x=a.index,O=a.$implicit;e.xp6(1),e.Q6J("myIndex",x)("myInitialSearch",O&&O.name)}}function Tm(m,D){if(1&m&&(e.TgZ(0,"mat-cell"),e.YNc(1,Fd,2,1,"span",1),e.YNc(2,qp,2,2,"span",1),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!l.isAdmin),e.xp6(1),e.Q6J("ngIf",l.isAdmin)}}function Nd(m,D){1&m&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Substance Key"),e.qZA())}function Am(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.substanceKey," ")}}function Pm(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"mat-form-field",25),e.TgZ(2,"input",28),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw().$implicit.substanceKey=O}),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw().$implicit;e.xp6(2),e.Q6J("value",a.substanceKey)("ngModel",a.substanceKey)}}function Dm(m,D){if(1&m&&(e.TgZ(0,"mat-cell"),e.YNc(1,Am,2,1,"span",1),e.YNc(2,Pm,3,2,"span",1),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!l.isAdmin),e.xp6(1),e.Q6J("ngIf",l.isAdmin)}}function wm(m,D){1&m&&(e.TgZ(0,"mat-header-cell"),e._uU(1," Protected Match "),e.qZA())}function Om(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.protectedMatch," ")}}function Vp(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-cell"),e.YNc(1,Om,2,1,"span",1),e.TgZ(2,"span"),e.TgZ(3,"mat-checkbox",29),e.NdJ("ngModelChange",function(W){return e.CHM(l).$implicit.protectedMatch=W}),e.TgZ(4,"label"),e.TgZ(5,"mat-icon",30),e._uU(6,"lock"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!x.isAdmin),e.xp6(2),e.Q6J("disabled",!x.isAdmin)("value",a.protectedMatch)("ngModel",a.protectedMatch)}}function Rd(m,D){1&m&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Org. Substance Key"),e.qZA())}function Bu(m,D){if(1&m&&(e.TgZ(0,"mat-cell"),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.orgSubstanceKey," ")}}function Hp(m,D){1&m&&e._UZ(0,"mat-header-cell")}var Ud=function(D){return["/substances",D]};function Em(m,D){if(1&m&&(e.TgZ(0,"mat-cell"),e.TgZ(1,"a",31),e._uU(2,"link"),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(1,Ud,l.substanceKey))}}function jp(m,D){1&m&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Delete"),e.qZA())}function Jp(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-cell"),e.TgZ(1,"button",32),e.NdJ("click",function(){var O=e.CHM(l).index;return e.oxw(2).removeRow(O)}),e._uU(2,"Del"),e.qZA(),e.qZA()}}function Qp(m,D){1&m&&e._UZ(0,"mat-header-row")}function fc(m,D){1&m&&e._UZ(0,"mat-row")}function Wp(m,D){1&m&&e._UZ(0,"div")}function zp(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",21),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+l.clinicalTrial.trialNumber,e.LSH),e.xp6(1),e.Oqu(l.clinicalTrial.trialNumber)}}function Zm(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",33),e._uU(2,"XML"),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+l.clinicalTrial.trialNumber+"?displayxml=true",e.LSH)}}function Do(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"a",34),e._uU(2,"History"),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/history/"+l.clinicalTrial.trialNumber,e.LSH)}}function km(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Oqu(l.clinicalTrial.title)}}function Gp(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function Kp(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e.TgZ(2,"span",17),e._uU(3,"Intervention"),e.qZA(),e._uU(4,":"),e.qZA(),e.YNc(5,Gp,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(5),e.Q6J("ngForOf",l.clinicalTrial.intervention.split("|"))}}function Bd(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("Recruitment: ",l.clinicalTrial.recruitment,"")}}function Yd(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function $p(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Conditions:"),e.qZA(),e.YNc(3,Yd,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.conditions.split("|"))}}function Yu(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function qu(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Sponsors:"),e.qZA(),e.YNc(3,Yu,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.sponsor.split("|"))}}function Vu(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function qd(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Locations:"),e.qZA(),e.YNc(3,Vu,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.locations.split("|"))}}function Xp(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function Vd(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Sponsor:"),e.qZA(),e.YNc(3,Xp,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.fundedBys.split("|"))}}function fu(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function Im(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Phases:"),e.qZA(),e.YNc(3,fu,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.phases.split("|"))}}function ef(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function Lm(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Study Types:"),e.qZA(),e.YNc(3,ef,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.studyTypes.split("|"))}}function Fm(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function tf(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Age Groups:"),e.qZA(),e.YNc(3,Fm,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.ageGroups.split("|"))}}function Hd(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("Gender: ",l.clinicalTrial.gender,"")}}function nf(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("Allocation: ",l.clinicalTrial.allocation,"")}}function Lh(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("Study Results: ",l.clinicalTrial.studyResults,"")}}function af(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("Enrollment: ",l.clinicalTrial.enrollment,"")}}function Nm(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function rf(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Other Ids:"),e.qZA(),e.YNc(3,Nm,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.otherIds.split("|"))}}function Rm(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("Acronym: ",l.clinicalTrial.acronym,"")}}function Um(m,D){if(1&m&&(e.TgZ(0,"div",36),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Oqu(l)}}function Vs(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Outcome Measures:"),e.qZA(),e.YNc(3,Um,2,1,"div",35),e.qZA()),2&m){var l=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",l.clinicalTrial.outcomeMeasures.split("|"))}}function Bm(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1,"Url: "),e.TgZ(2,"a",21),e._uU(3),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(2),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+l.clinicalTrial.trialNumber,e.LSH),e.xp6(1),e.Oqu(l.clinicalTrial.url)}}function mu(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.YNc(2,km,2,1,"p",1),e.YNc(3,Kp,6,1,"div",1),e.YNc(4,Bd,2,1,"p",1),e.YNc(5,$p,4,1,"div",1),e.YNc(6,qu,4,1,"div",1),e.YNc(7,qd,4,1,"div",1),e.YNc(8,Vd,4,1,"div",1),e.YNc(9,Im,4,1,"div",1),e.YNc(10,Lm,4,1,"div",1),e.YNc(11,tf,4,1,"div",1),e.YNc(12,Hd,2,1,"p",1),e.YNc(13,nf,2,1,"p",1),e.YNc(14,Lh,2,1,"p",1),e.YNc(15,af,2,1,"p",1),e.YNc(16,rf,4,1,"div",1),e.YNc(17,Rm,2,1,"p",1),e.YNc(18,Vs,4,1,"div",1),e.YNc(19,Bm,4,2,"p",1),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(2),e.Q6J("ngIf",l.clinicalTrial.title),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.intervention),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.recruitment),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.conditions),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.sponsor),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.locations),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.fundedBys),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.phases),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.studyTypes),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.ageGroups),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.gender),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.allocation),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.studyResults),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.enrollment),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.otherIds),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.acronym),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.outcomeMeasures),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.trialNumber)}}function jd(m,D){if(1&m&&(e.TgZ(0,"div",39),e._uU(1),e.ALo(2,"date"),e.TgZ(3,"span",40),e._uU(4,"ct.gov"),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("",e.Dn7(2,1,l.clinicalTrial.lastUpdated,"MM/dd/yyyy","UTC")," ")}}function of(m,D){if(1&m&&(e.TgZ(0,"div",41),e._uU(1),e.ALo(2,"date"),e.TgZ(3,"span",40),e._uU(4,"gsrs"),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.hij("",e.Dn7(2,1,l.clinicalTrial.gsrsUpdated,"MM/dd/yyyy","UTC")," ")}}function Ym(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Updated:"),e.qZA(),e.YNc(3,jd,5,5,"div",37),e.YNc(4,of,5,5,"div",38),e.qZA()),2&m){var l=e.oxw(2);e.xp6(3),e.Q6J("ngIf",l.clinicalTrial.lastUpdated),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.gsrsUpdated)}}function Jd(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.hij("First Received: ",e.Dn7(2,1,l.clinicalTrial.firstReceived,"MM/dd/yyyy","UTC"),"")}}function sf(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.hij("Study Start Date: ",e.Dn7(2,1,l.clinicalTrial.startDate,"MM/dd/yyyy","UTC"),"")}}function lf(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.hij("Last Verified: ",l.clinicalTrial.lastVerified,"")}}function qm(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.hij("Primary Completion Date: ",e.Dn7(2,1,l.clinicalTrial.primaryCompletionDate,"MM/dd/yyyy","UTC"),"")}}function Vm(m,D){if(1&m&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.hij("Study Completion Date: ",e.Dn7(2,1,l.clinicalTrial.completionDate,"MM/dd/yyyy","UTC"),"")}}function na(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2,"\xa0"),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.ALo(5,"json"),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(4),e.hij("clinicalTrial: ",e.lcZ(5,1,l.clinicalTrial),"")}}function cf(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2,"\xa0"),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.ALo(5,"json"),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(4),e.hij("datasource.data: ",e.lcZ(5,1,l.dataSource.data),"")}}function Qd(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2,"\xa0"),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(4),e.hij("miniSearchOutputReported: ",l.miniSearchOutputReported,"")}}function Wd(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",42),e._uU(2),e.qZA(),e.YNc(3,na,6,3,"div",1),e.YNc(4,cf,6,3,"div",1),e.YNc(5,Qd,5,1,"div",1),e.qZA()),2&m){var l=e.oxw(2);e.xp6(2),e.hij("isAdmin: ",l.isAdmin,""),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial),e.xp6(1),e.Q6J("ngIf",l.dataSource.data),e.xp6(1),e.Q6J("ngIf",l.miniSearchOutputReported)}}function mc(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Fc,2,1,"div",1),e.YNc(2,qs,5,3,"div",1),e.TgZ(3,"h3"),e._uU(4,"Substances in Clinical Trial "),e.YNc(5,El,2,1,"span",1),e.qZA(),e.YNc(6,Id,5,0,"div",1),e.TgZ(7,"mat-table",3,4),e.ynx(9,5),e.YNc(10,Ld,2,0,"mat-header-cell",6),e.YNc(11,Ih,3,2,"mat-cell",7),e.BQk(),e.ynx(12,8),e.YNc(13,Nc,2,0,"mat-header-cell",6),e.YNc(14,Tm,3,2,"mat-cell",7),e.BQk(),e.ynx(15,9),e.YNc(16,Nd,2,0,"mat-header-cell",6),e.YNc(17,Dm,3,2,"mat-cell",7),e.BQk(),e.ynx(18,10),e.YNc(19,wm,2,0,"mat-header-cell",6),e.YNc(20,Vp,7,4,"mat-cell",7),e.BQk(),e.ynx(21,11),e.YNc(22,Rd,2,0,"mat-header-cell",6),e.YNc(23,Bu,2,1,"mat-cell",7),e.BQk(),e.ynx(24,12),e.YNc(25,Hp,1,0,"mat-header-cell",6),e.YNc(26,Em,3,3,"mat-cell",7),e.BQk(),e.ynx(27,13),e.YNc(28,jp,2,0,"mat-header-cell",6),e.YNc(29,Jp,3,0,"mat-cell",7),e.BQk(),e.YNc(30,Qp,1,0,"mat-header-row",14),e.YNc(31,fc,1,0,"mat-row",15),e.qZA(),e.YNc(32,Wp,1,0,"div",1),e.TgZ(33,"div",16),e.TgZ(34,"span",17),e._uU(35,"Trial Details"),e.qZA(),e._uU(36,"\xa0 "),e.YNc(37,zp,3,2,"span",1),e._uU(38,"\xa0 "),e.YNc(39,Zm,3,1,"span",1),e._uU(40,"\xa0 "),e.YNc(41,Do,3,1,"span",1),e._uU(42,"\xa0 "),e.qZA(),e.TgZ(43,"div",18),e.TgZ(44,"div",19),e.YNc(45,mu,20,18,"div",1),e.qZA(),e.TgZ(46,"div",20),e.YNc(47,Ym,5,2,"div",1),e.YNc(48,Jd,3,5,"p",1),e.YNc(49,sf,3,5,"p",1),e.YNc(50,lf,2,1,"p",1),e.YNc(51,qm,3,5,"p",1),e.YNc(52,Vm,3,5,"p",1),e.qZA(),e.qZA(),e.TgZ(53,"div"),e.TgZ(54,"p"),e._uU(55,"Go to "),e.TgZ(56,"a",2),e._uU(57,"browse"),e.qZA(),e.qZA(),e.qZA(),e.YNc(58,Wd,6,4,"div",1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.clinicalTrial),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial),e.xp6(3),e.Q6J("ngIf",l.clinicalTrial&&l.clinicalTrial.clinicalTrialUSDrug),e.xp6(1),e.Q6J("ngIf",l.isAdmin),e.xp6(1),e.Q6J("dataSource",l.dataSource),e.xp6(23),e.Q6J("matHeaderRowDef",l.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",l.displayedColumns),e.xp6(1),e.Q6J("ngIf",l.isAdmin),e.xp6(5),e.Q6J("ngIf",l.clinicalTrial.trialNumber),e.xp6(2),e.Q6J("ngIf",l.clinicalTrial.trialNumber),e.xp6(2),e.Q6J("ngIf",l.clinicalTrial.trialNumber),e.xp6(4),e.Q6J("ngIf",l.clinicalTrial),e.xp6(2),e.Q6J("ngIf",l.clinicalTrial.lastUpdated||l.clinicalTrial.lastUpdated),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.firstReceived),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.startDate),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.lastVerified),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.primaryCompletionDate),e.xp6(1),e.Q6J("ngIf",l.clinicalTrial.completionDate),e.xp6(4),e.Q6J("routerLink",e.DdM(20,Lc)),e.xp6(2),e.Q6J("ngIf",l.isTesting)}}var Cs=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht){(0,P.Z)(this,D),this.activatedRoute=l,this.clinicalTrialService=a,this.sanitizer=x,this.configService=O,this.loadingService=W,this.notificationService=Le,this.authService=rt,this.router=Ht,this.defaultSubstanceKeyType="UUID",this.agencySubstanceKeyType="UUID",this.isTesting=!1,this.dataSource=new v.by([]),this.bulkInputValue="",this.isLoading=!0,this.isError=!1,this.model={},this.miniSearchOutputReported="",this.subscriptions=[]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(x){a.isAdmin=x,a.displayedColumns=a.isAdmin?["id","name","substanceKey","protectedMatch","orgSubstanceKey","link","delete"]:["name","substanceKey","protectedMatch","orgSubstanceKey","link"]}),this.pageSize=10,this.pageIndex=0,this.activatedRoute.paramMap.subscribe(function(x){a._trialNumber=x.get("trialNumber"),a.getClinicalTrial()})}},{key:"ngAfterViewInit",value:function(){}},{key:"reportMiniSearchOutput",value:function(a){var x=this;this.clinicalTrialService.getSubstanceDetailsFromName(a.value).pipe((0,Xl.U)(function(O){return O.content[0]}),(0,Ze.w)(function(O){return x.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(O.uuid)})).subscribe(function(O){null===O?(x.dataSource.data[a.myIndex].substanceKey=null,x.dataSource.data[a.myIndex].orgSubstanceKey=null):(x.dataSource.data[a.myIndex].name=a.value,void 0!==O&&(x.dataSource.data[a.myIndex].substanceKey=O.uuid,x.dataSource.data[a.myIndex].orgSubstanceKey=x.getOrgSubstanceKeyFromSubstance(O)))},function(){x.dataSource.data[a.myIndex].substanceKey=null}),this.dataSource.data=this.dataSource.data}},{key:"reportMiniSearchOutput_OLD",value:function(a){var x=this;this.clinicalTrialService.getSubstanceDetailsFromName(a.value).subscribe(function(O){null===O||null===O.content||void 0===O.content[0]?(x.dataSource.data[a.myIndex].substanceKey=null,x.dataSource.data[a.myIndex].orgSubstanceKey=null):(x.dataSource.data[a.myIndex].name=a.value,void 0!==O.content[0]&&(x.dataSource.data[a.myIndex].substanceKey=O.content[0].uuid))},function(){x.dataSource.data[a.myIndex].substanceKey=null}),this.dataSource.data=this.dataSource.data}},{key:"addRow",value:function(){this.dataSource.data.push({id:"",name:"",substanceKey:"",substanceKeyType:this.defaultSubstanceKeyType}),this.dataSource.data=this.dataSource.data}},{key:"removeRow",value:function(a){this.dataSource.data.splice(a,1),this.dataSource.data=this.dataSource.data}},{key:"applyFilter",value:function(a){a=(a=a.trim()).toLowerCase(),this.dataSource.filter=a}},{key:"getClinicalTrial",value:function(){var a=this;this.loadingService.setLoading(!0),this.dataSource.data=[];var x=this.clinicalTrialService.getClinicalTrial(this._trialNumber),O=[],Le=(0,Zd.D)(x).pipe((0,Xl.U)(function(rt){var Ht=rt[0];return a.isError=!1,null!==Ht.clinicalTrialUSDrug&&Ht.clinicalTrialUSDrug.forEach(function(In){a.dataSource.data.push({id:In.id,substanceKey:In.substanceKey,substanceKeyType:In.substanceKeyType,name:"",protectedMatch:In.protectedMatch}),O.push(a.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(In.substanceKey))}),a.clinicalTrial=Ht,O}),(0,gl.z)(function(rt){return(0,Zd.D)(rt).pipe((0,Xl.U)(function(Ht){var In={};Ht.forEach(function(_i){In[_i.uuid]={substanceKey:_i.uuid,orgSubstanceKey:a.getOrgSubstanceKeyFromSubstance(_i),name:_i._name}}),a.dataSource.data.forEach(function(_i){In[_i.substanceKey]&&(_i.name=In[_i.substanceKey].name,_i.orgSubstanceKey=In[_i.substanceKey].orgSubstanceKey,console.log("element.orgSubstanceKey: "+_i.orgSubstanceKey))});var ei=kc.cloneDeep(a.dataSource.data);a.dataSource.data=ei}))})).subscribe(function(){},function(){var rt={message:"There was an error trying to retrieve clinical trial. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(rt)},function(){a.isLoading=!1,a.loadingService.setLoading(a.isLoading)});this.subscriptions.push(Le)}},{key:"getOrgSubstanceKeyFromSubstance",value:function(a){var x=null;if(a.codes&&null!==a.codes&&a.codes.length>0){var W,O=(0,xo.Z)(a.codes);try{for(O.s();!(W=O.n()).done;){var Le=W.value;if(Le.codeSystem&&"BDNUM"===Le.codeSystem&&Le.type&&"PRIMARY"===Le.type){console.log("bdnum: "+Le.code),x=Le.code;break}}}catch(rt){O.e(rt)}finally{O.f()}}return x}},{key:"getClinicalTrialOLD2",value:function(){var a=this;this.loadingService.setLoading(!0),this.dataSource.data=[],console.log("XXXX ab"+this._trialNumber),this.clinicalTrialService.getClinicalTrial(this._trialNumber).subscribe(function(O){if(a.isError=!1,console.log("XXXX ac"+O),null!==O.clinicalTrialUSDrug){var W=[];O.clinicalTrialUSDrug.forEach(function(rt){a.dataSource.data.push({id:rt.id,substanceKey:rt.substanceKey,substanceKeyType:rt.substanceKeyType,name:null,protectedMatch:rt.protectedMatch}),W.push(a.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(rt.substanceKey))}),(0,Zd.D)(W).subscribe({next:function(Ht){var In={};Ht.forEach(function(ei){In[ei.uuid]={substanceKey:ei.uuid,name:ei._name}}),console.log("complements: "),console.log(In),a.dataSource.data.forEach(function(ei){console.log("sk: "),console.log(ei.substanceKey),console.log("name: "),console.log(In[ei.substanceKey].name),ei.name=In[ei.substanceKey].name})},complete:function(){return console.log("This is how it ends!")}}),a.clinicalTrial=O,a.dataSource.data=a.dataSource.data,console.log("this.dataSource.data"),console.log(a.dataSource.data)}},function(){var O={message:"There was an error trying to retrieve clinical trial. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(O)},function(){a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"getClinicalTrialOLD1",value:function(){var a=this;this.loadingService.setLoading(!0),this.dataSource.data=[],console.log("XXXX ab"+this._trialNumber),this.clinicalTrialService.getClinicalTrial(this._trialNumber).subscribe(function(O){a.isError=!1,console.log("XXXX ac"+O),null!==O.clinicalTrialUSDrug&&(O.clinicalTrialUSDrug.forEach(function(W){var Le=null;a.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(W.substanceKey).subscribe(function(Ht){Le=Ht._name,console.log("substanceName: "+Le)}),a.dataSource.data.push({id:W.id,substanceKey:W.substanceKey,substanceKeyType:W.substanceKeyType,name:Le,protectedMatch:W.protectedMatch})}),a.clinicalTrial=O,a.dataSource.data=a.dataSource.data,console.log("this.dataSource.data"),console.log(a.dataSource.data))},function(){var O={message:"There was an error trying to retrieve clinical trial. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(O)},function(){a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"updateClinicalTrial",value:function(){var a=this;this.loadingService.setLoading(!0);var x=kc.cloneDeep(this.clinicalTrial),O=[];this.dataSource.data.forEach(function(W){var Le={};Le.id=W.id,Le.trialNumber=W.trialNumber,Le.substanceKey=W.substanceKey,Le.substanceKeyType=W.substanceKeyType,Le.protectedMatch=W.protectedMatch,O.push(Le)}),x.clinicalTrialUSDrug=O,this.clinicalTrialService.updateClinicalTrial(x).subscribe(function(W){a.getClinicalTrial();var rt={message:"Success",type:Tn.k.success,milisecondsToShow:6e3};a.isError=!1,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(rt)},function(W){var Le="There was an error trying to update clinical trial.";null!=W.error.errors&&W.error.errors.forEach(function(Ht){Ht&&(Le=Le+" "+Ht)}),null!=W.error.validationMessages&&W.error.validationMessages.forEach(function(Ht){null!==Ht.message&&(Le=Le+" "+Ht.message)});var rt={message:Le,type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(rt)},function(){a.isLoading=!1,a.loadingService.setLoading(a.isLoading)}).add(function(){console.log("Inside empty add method.")})}},{key:"copyInputMessage",value:function(a){a.select(),document.execCommand("copy")}},{key:"substancesToClipboard1a",value:function(){var a=[];this.dataSource.data.forEach(function(x){a.push(x.substanceKey)}),this.copyTextAreaToClipBoard(a.join("\n"))}},{key:"substancesToClipboard1b",value:function(){var a=[];this.dataSource.data.forEach(function(x){a.push(x.substanceKey)}),this.copyTextAreaToClipBoard(a.join("; "))}},{key:"substancesToClipboard2a",value:function(){var a=[];this.dataSource.data.forEach(function(x){a.push(x.name+"\t"+x.substanceKey)}),this.copyTextAreaToClipBoard(a.join("\n"))}},{key:"substancesToClipboard2b",value:function(){var a=[],x=[];this.dataSource.data.forEach(function(O){a.push(O.name),x.push(O.substanceKey)}),this.copyTextAreaToClipBoard(a.join("; ")+"\t"+x.join("; "))}},{key:"substancesToClipboard3a",value:function(){var a=this,x=[];this.dataSource.data.forEach(function(O){x.push(a._trialNumber+"\t"+O.name+"\t"+O.substanceKey)}),this.copyTextAreaToClipBoard(x.join("\n"))}},{key:"substancesToClipboard3b",value:function(){var a=[],x=[];this.dataSource.data.forEach(function(O){a.push(O.name),x.push(O.substanceKey)}),this.copyTextAreaToClipBoard(this._trialNumber+"\t"+a.join("; ")+"\t"+x.join("; "))}},{key:"copyTextAreaToClipBoard",value:function(a){var x=a.replace(/<\/?[^>]+(>|$)/g,""),O=document.createElement("TEXTAREA");O.value=x,document.body.appendChild(O),O.select(),document.execCommand("copy"),document.body.removeChild(O)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(d.gz),e.Y36(_l.m),e.Y36(sn.H7),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Ie.e),e.Y36(d.F0))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-clinical-trial-edit"]],viewQuery:function(l,a){var x;1&l&&e.Gf(v.BZ,5),2&l&&e.iGM(x=e.CRH())&&(a.table=x.first)},decls:3,vars:2,consts:[[1,"example-container","mat-elevation-z8","clinical-trial-edit-page"],[4,"ngIf"],["title","Go to browse",3,"routerLink"],[3,"dataSource"],["table",""],["matColumnDef","id",1,"id-container"],[4,"matHeaderCellDef"],[4,"matCellDef"],["matColumnDef","name"],["matColumnDef","substanceKey"],["matColumnDef","protectedMatch"],["matColumnDef","orgSubstanceKey"],["matColumnDef","link"],["matColumnDef","delete"],[4,"matHeaderRowDef"],[4,"matRowDef","matRowDefColumns"],[1,"trial-detailsheader"],[1,"emphasize"],[1,"container"],[1,"trial-detailsone"],[1,"trial-detailstwo"],["target","_blank","title","see clinicaltrials.gov",3,"href"],[1,"match-complete-checkbox",3,"disabled","value","ngModel","ngModelChange"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Add",3,"click"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Update Clinical Trial",3,"click"],["floatLabel","never"],["disabled","","matInput","","placeholder","id",3,"value","ngModel","ngModelChange"],[3,"myIndex","myInitialSearch","miniSearchOutput"],["matInput","","placeholder","substanceKey",3,"value","ngModel","ngModelChange"],[1,"protected-match-checkbox",3,"disabled","value","ngModel","ngModelChange"],["role","img","aria-hidden","true",1,"mat-icon","material-icons","protected-match-icon"],["target","_blank",3,"routerLink"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Del",3,"click"],["target","_blank","title","see XML from clinicaltrials.gov",3,"href"],["target","_blank","title","see history on clinicaltrials.gov",3,"href"],["class","indent-list",4,"ngFor","ngForOf"],[1,"indent-list"],["class","indent-list","title","Last updated by CT.gov",4,"ngIf"],["class","indent-list","title","Last updated on gsrs",4,"ngIf"],["title","Last updated by CT.gov",1,"indent-list"],[1,"small-text"],["title","Last updated on gsrs",1,"indent-list"],[1,"top-spacer"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.YNc(1,Yp,7,2,"div",1),e.YNc(2,mc,59,21,"div",1),e.qZA()),2&l&&(e.xp6(1),e.Q6J("ngIf",!a.clinicalTrial),e.xp6(1),e.Q6J("ngIf",a.clinicalTrial))},directives:[p.O5,d.yS,J.oG,je.JJ,je.On,T.lW,St.R9,v.BZ,v.w1,v.fO,v.ge,v.Dz,v.ev,St.KE,Pt.Nt,je.Fj,pc,I.Hw,v.as,v.XQ,v.nj,v.Gk,p.sg],pipes:[p.uU,p.Ts],styles:[".example-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:300px}.example-header[_ngcontent-%COMP%]{min-height:64px;padding:8px 24px 0}.mat-form-field[_ngcontent-%COMP%]{font-size:14px;width:100%}.mat-table[_ngcontent-%COMP%]{overflow:auto;max-height:750px;margin-bottom:1em}mat-header-cell[_ngcontent-%COMP%], mat-cell[_ngcontent-%COMP%]{margin:.1em .2em}button[_ngcontent-%COMP%]{margin-right:1em}.clinical-trial-edit-page[_ngcontent-%COMP%]{padding:10px;margin:60px 30px 30px}.indent-list[_ngcontent-%COMP%]{margin-left:2em}.top-spacer[_ngcontent-%COMP%]{margin-top:50px}.id-container[_ngcontent-%COMP%]{width:30px}.protected-match-checkbox[_ngcontent-%COMP%]{margin-left:15px}.protected-match-icon[_ngcontent-%COMP%]{color:gray}.match-complete-checkbox[_ngcontent-%COMP%]{margin-left:15px}.small-text[_ngcontent-%COMP%]{font-size:80%}.emphasize[_ngcontent-%COMP%]{font-weight:700}.trial-detailsheader[_ngcontent-%COMP%]{margin-top:2em;margin-bottom:1em}.trial-detailsone[_ngcontent-%COMP%]{border:1px solid rgba(0,0,0,.12);padding:0 1em 1em .5em;float:left;overflow:auto;max-height:300px;max-width:500px;margin-right:1em}.container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.trial-detailstwo[_ngcontent-%COMP%]{border:1px solid rgba(0,0,0,.12);padding:0 1em 1em .5em;float:left;overflow:auto;max-height:300px;max-width:400px;margin-right:1em}.copy-button[_ngcontent-%COMP%]{padding:.2em}"]}),m}();function uf(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Add/Update a Clinical Trial from JSON"),e.qZA(),e.TgZ(3,"form",2),e.TgZ(4,"mat-form-field",3),e.TgZ(5,"textarea",4),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw().json=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(6,"button",5),e.NdJ("click",function(){return e.CHM(l),e.oxw().addClinicalTrial()}),e._uU(7,"Add CT"),e.qZA(),e.TgZ(8,"button",6),e.NdJ("click",function(){return e.CHM(l),e.oxw().updateClinicalTrial()}),e._uU(9,"Update CT"),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(5),e.Q6J("ngModel",a.json)}}function Hm(m,D){1&m&&(e.TgZ(0,"div"),e._uU(1," You must have permission to add/update a Clinical Trial. "),e.qZA())}var zd=function(){var m=function(){function D(l,a,x,O,W,Le){(0,P.Z)(this,D),this.clinicalTrialService=l,this.sanitizer=a,this.configService=x,this.loadingService=O,this.notificationService=W,this.authService=Le,this.isTesting=!1,this.isLoading=!0,this.isError=!1,this.json=""}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(x){a.canEdit=x})}},{key:"addClinicalTrial",value:function(){var a=this;this.loadingService.setLoading(!0),this.clinicalTrialService.addClinicalTrial(this.json).subscribe(function(x){a.isError=!1;var O={message:"You added a clinical trial record.",type:Tn.k.success,milisecondsToShow:6e3};a.isError=!1,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(O)},function(x){var O={message:"There was an error trying to add a clinical trial.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(O)},function(){a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"updateClinicalTrial",value:function(){var a=this;this.loadingService.setLoading(!0),this.clinicalTrialService.updateClinicalTrial(this.json).subscribe(function(x){a.isError=!1;var O={message:"You updated a clinical trial record.",type:Tn.k.success,milisecondsToShow:6e3};a.isError=!1,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(O)},function(x){var O={message:"There was an error trying to update a clinical trial.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(O)},function(){a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(_l.m),e.Y36(sn.H7),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Ie.e))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-clinical-add"]],decls:3,vars:2,consts:[[1,"wrapper-container","example-container","mat-elevation-z8"],[4,"ngIf"],[1,"json-add-form"],[1,"json-add-form-field"],["matInput","","placeholder","JSON","name","json",3,"ngModel","ngModelChange"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Add Clinical Trial",1,"clinical-trial-action-button",3,"click"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Update Clinical Trial",1,"clinical-trial-action-button",3,"click"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.YNc(1,uf,10,1,"div",1),e.YNc(2,Hm,2,0,"div",1),e.qZA()),2&l&&(e.xp6(1),e.Q6J("ngIf",a.canEdit),e.xp6(1),e.Q6J("ngIf",!a.canEdit))},directives:[p.O5,je._Y,je.JL,je.F,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,T.lW,St.R9],styles:[".wrapper-container[_ngcontent-%COMP%]{padding:10px;margin:60px 30px 30px}.json-add-form-field[_ngcontent-%COMP%]{width:100%;min-height:40px}.clinical-trial-action-button[_ngcontent-%COMP%]{margin-right:10px}"]}),m}(),vl=function(){var m=function(){function D(l,a,x,O,W,Le,rt){(0,P.Z)(this,D),this.clinicalTrialService=l,this.activatedRoute=a,this.loadingService=x,this.mainNotificationService=O,this.router=W,this.gaService=Le,this.utilsService=rt}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.trialNumber=this.activatedRoute.snapshot.params.trialNumber,null!=this.trialNumber?this.getClinicalTrialDetails():this.handleSubstanceRetrivalError()}},{key:"getClinicalTrialDetails",value:function(){var a=this;this.clinicalTrialService.getClinicalTrialDetails(this.trialNumber,this.src).subscribe(function(x){a.clinicalTrial=x},function(x){a.handleSubstanceRetrivalError()})}},{key:"handleSubstanceRetrivalError",value:function(){var a=this;this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:Tn.k.error,milisecondsToShow:4e3}),setTimeout(function(){a.router.navigate(["/browse-substance"])},5e3)}},{key:"getSafeStructureImgUrl",value:function(a){var x=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(a,x,!0)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(_l.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-clinical-trial-details-base"]],decls:0,vars:0,template:function(l,a){},styles:[""]}),m}(),Gd=function(D){return["/edit-clinical-trial",D]},df=function(){return{}};function Kd(m,D){if(1&m&&(e.TgZ(0,"a",24),e._UZ(1,"mat-icon",25),e.qZA()),2&m){var l=e.oxw(3);e.Q6J("routerLink",e.VKq(2,Gd,l.clinicalTrial.trialNumber))("queryParams",e.DdM(4,df))}}function Fh(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(1),e.AsE(" ",a+1,".",l," ")}}function hc(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Fh,2,2,"div",26),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Q6J("ngForOf",l.clinicalTrial.locationList)}}function jm(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Oqu(l.appType),e.xp6(2),e.Oqu(l.appNumber),e.xp6(2),e.Oqu(l.center),e.xp6(2),e.Oqu(l.decision),e.xp6(2),e.Oqu(l.decisionDate)}}function Hu(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"table",27),e.TgZ(2,"thead"),e.TgZ(3,"tr",28),e.TgZ(4,"th",29),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",30),e._uU(7,"Application Type"),e.qZA(),e.TgZ(8,"th",30),e._uU(9,"Application Number"),e.qZA(),e.TgZ(10,"th",31),e._uU(11,"Center"),e.qZA(),e.TgZ(12,"th",30),e._uU(13,"Decision"),e.qZA(),e.TgZ(14,"th",30),e._uU(15,"Decision Date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"tbody"),e.YNc(17,jm,13,6,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(17),e.Q6J("ngForOf",l.clinicalTrial.clinicalTrialApplicationList)}}function ju(m,D){1&m&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Application Data for this Clinical Trial "),e.qZA())}var pf=function(D){return["/substances",D]};function $d(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",32),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,pf,l.substanceUuid)),e.xp6(1),e.Oqu(l.substanceDisplayName)}}function Xd(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"img",33),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",l.substanceUuid)}}function Jm(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,$d,3,4,"div",0),e.qZA(),e.TgZ(5,"td"),e.YNc(6,Xd,2,1,"div",0),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Q6J("ngIf",l.substanceUuid),e.xp6(2),e.Q6J("ngIf",l.substanceUuid)}}function ff(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"table",27),e.TgZ(2,"thead"),e.TgZ(3,"tr",28),e.TgZ(4,"th",29),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",30),e._uU(7,"Substance Name"),e.qZA(),e.TgZ(8,"th",30),e._uU(9,"Structure"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(10,"tbody"),e.YNc(11,Jm,7,3,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(3);e.xp6(11),e.Q6J("ngForOf",l.clinicalTrial.clinicalTrialUSDrug)}}function Qm(m,D){1&m&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Substance Data for this Clinical Trial "),e.qZA())}function Wm(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"div",4),e.TgZ(3,"div",5),e._UZ(4,"img",6),e._uU(5," \xa0"),e.TgZ(6,"b"),e._uU(7,"Clinical Trial US Details"),e.qZA(),e._uU(8," \xa0\xa0\xa0\xa0 "),e.YNc(9,Kd,2,5,"a",7),e.qZA(),e.TgZ(10,"div",8),e.TgZ(11,"div",9),e._uU(12," Trial Number: "),e.qZA(),e.TgZ(13,"div",10),e.TgZ(14,"a",11),e.TgZ(15,"span",12),e._uU(16),e.qZA(),e.qZA(),e._uU(17," \xa0\xa0\xa0 "),e.qZA(),e.qZA(),e.TgZ(18,"div",8),e.TgZ(19,"div",9),e._uU(20," Title: "),e.qZA(),e.TgZ(21,"div",10),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",8),e.TgZ(24,"div",9),e._uU(25," Sponsor Name: "),e.qZA(),e.TgZ(26,"div",10),e._uU(27),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(28,"div",13),e.TgZ(29,"div",14),e.TgZ(30,"mat-tab-group"),e.TgZ(31,"mat-tab",15),e.TgZ(32,"div",13),e.TgZ(33,"mat-card"),e.TgZ(34,"div",16),e._uU(35,"Clinical Trial US"),e.qZA(),e.TgZ(36,"mat-card-content"),e.TgZ(37,"div",8),e.TgZ(38,"div",17),e.TgZ(39,"div",18),e._uU(40," Trial Number: "),e.qZA(),e.TgZ(41,"div",19),e.TgZ(42,"a",11),e.TgZ(43,"span",12),e._uU(44),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(45,"div",17),e.TgZ(46,"div",18),e._uU(47," Recruitment: "),e.qZA(),e.TgZ(48,"div",19),e._uU(49),e.qZA(),e.qZA(),e.qZA(),e.TgZ(50,"div",8),e.TgZ(51,"div",17),e.TgZ(52,"div",18),e._uU(53," Title: "),e.qZA(),e.TgZ(54,"div",19),e._uU(55),e.qZA(),e.qZA(),e.TgZ(56,"div",17),e.TgZ(57,"div",18),e._uU(58," Conditions: "),e.qZA(),e.TgZ(59,"div",19),e._uU(60),e.qZA(),e.qZA(),e.qZA(),e.TgZ(61,"div",8),e.TgZ(62,"div",17),e.TgZ(63,"div",18),e._uU(64," Sponsor Name: "),e.qZA(),e.TgZ(65,"div",19),e._uU(66),e.qZA(),e.qZA(),e.TgZ(67,"div",17),e.TgZ(68,"div",18),e._uU(69," Intervention: "),e.qZA(),e.TgZ(70,"div",19),e._uU(71),e.qZA(),e.qZA(),e.qZA(),e.TgZ(72,"div",8),e.TgZ(73,"div",17),e.TgZ(74,"div",18),e._uU(75," Funded Bys: "),e.qZA(),e.TgZ(76,"div",19),e._uU(77),e.qZA(),e.qZA(),e.TgZ(78,"div",17),e.TgZ(79,"div",18),e._uU(80," Phases: "),e.qZA(),e.TgZ(81,"div",19),e._uU(82),e.qZA(),e.qZA(),e.qZA(),e.TgZ(83,"div",8),e.TgZ(84,"div",17),e.TgZ(85,"div",18),e._uU(86," Study Types: "),e.qZA(),e.TgZ(87,"div",19),e._uU(88),e.qZA(),e.qZA(),e.TgZ(89,"div",17),e.TgZ(90,"div",18),e._uU(91," Age Groups: "),e.qZA(),e.TgZ(92,"div",19),e._uU(93),e.qZA(),e.qZA(),e.qZA(),e.TgZ(94,"div",8),e.TgZ(95,"div",17),e.TgZ(96,"div",18),e._uU(97," Study Designs: "),e.qZA(),e.TgZ(98,"div",19),e._uU(99),e.qZA(),e.qZA(),e.TgZ(100,"div",17),e.TgZ(101,"div",18),e._uU(102," Gender: "),e.qZA(),e.TgZ(103,"div",19),e._uU(104),e.qZA(),e.qZA(),e.qZA(),e.TgZ(105,"div",8),e.TgZ(106,"div",17),e.TgZ(107,"div",18),e._uU(108," Study Results: "),e.qZA(),e.TgZ(109,"div",19),e._uU(110),e.qZA(),e.qZA(),e.TgZ(111,"div",17),e.TgZ(112,"div",18),e._uU(113," Enrollment: "),e.qZA(),e.TgZ(114,"div",19),e._uU(115),e.qZA(),e.qZA(),e.qZA(),e.TgZ(116,"div",8),e.TgZ(117,"div",17),e.TgZ(118,"div",18),e._uU(119," Other Ids: "),e.qZA(),e.TgZ(120,"div",19),e._uU(121),e.qZA(),e.qZA(),e.TgZ(122,"div",17),e.TgZ(123,"div",18),e._uU(124," Acronym: "),e.qZA(),e.TgZ(125,"div",19),e._uU(126),e.qZA(),e.qZA(),e.qZA(),e.TgZ(127,"div",8),e.TgZ(128,"div",17),e.TgZ(129,"div",18),e._uU(130," Study Start Date: "),e.qZA(),e.TgZ(131,"div",19),e._uU(132),e.ALo(133,"date"),e.qZA(),e.qZA(),e.TgZ(134,"div",17),e.TgZ(135,"div",18),e._uU(136," Last Verified: "),e.qZA(),e.TgZ(137,"div",19),e._uU(138),e.ALo(139,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(140,"div",8),e.TgZ(141,"div",17),e.TgZ(142,"div",18),e._uU(143," Study Completion Date: "),e.qZA(),e.TgZ(144,"div",19),e._uU(145),e.ALo(146,"date"),e.qZA(),e.qZA(),e.TgZ(147,"div",17),e.TgZ(148,"div",18),e._uU(149," Primary Completion Date: "),e.qZA(),e.TgZ(150,"div",19),e._uU(151),e.ALo(152,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(153,"div",8),e.TgZ(154,"div",17),e.TgZ(155,"div",18),e._uU(156," First Received: "),e.qZA(),e.TgZ(157,"div",19),e._uU(158),e.ALo(159,"date"),e.qZA(),e.qZA(),e.TgZ(160,"div",17),e.TgZ(161,"div",18),e._uU(162," Last Updated: "),e.qZA(),e.TgZ(163,"div",19),e._uU(164),e.ALo(165,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(166,"div",8),e.TgZ(167,"div",17),e.TgZ(168,"div",18),e._uU(169," Website Url: "),e.qZA(),e.TgZ(170,"div",19),e.TgZ(171,"a",11),e._uU(172),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(173,"div",8),e.TgZ(174,"div",20),e.TgZ(175,"div",9),e._uU(176," Outcome Measures: "),e.qZA(),e.TgZ(177,"div",10),e._uU(178),e.qZA(),e.qZA(),e.qZA(),e.TgZ(179,"div",8),e.TgZ(180,"div",20),e.TgZ(181,"div",9),e._uU(182," Locations: "),e.qZA(),e.TgZ(183,"div",10),e.YNc(184,hc,2,1,"div",0),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(185,"mat-tab",21),e.TgZ(186,"div",13),e.TgZ(187,"mat-card"),e.TgZ(188,"div",16),e._uU(189,"Applications in Clinical Trial "),e.qZA(),e.TgZ(190,"mat-card-content"),e.YNc(191,Hu,18,1,"div",1),e.YNc(192,ju,3,0,"ng-template",null,22,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(194,"mat-tab",21),e.TgZ(195,"div",13),e.TgZ(196,"mat-card"),e.TgZ(197,"div",16),e._uU(198,"Substances in Clinical Trial "),e.qZA(),e.TgZ(199,"mat-card-content"),e.YNc(200,ff,12,1,"div",1),e.YNc(201,Qm,3,0,"ng-template",null,23,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.MAs(193),a=e.MAs(202),x=e.oxw(2);e.xp6(4),e.Q6J("src",x.flagIconSrcPath,e.LSH),e.xp6(5),e.Q6J("ngIf",x.isAdmin),e.xp6(5),e.s9C("href",x.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(x.clinicalTrial.trialNumber),e.xp6(6),e.hij(" ",x.clinicalTrial.title," "),e.xp6(5),e.hij(" ",x.clinicalTrial.sponsor," "),e.xp6(15),e.s9C("href",x.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(x.clinicalTrial.trialNumber),e.xp6(5),e.hij(" ",x.clinicalTrial.recruitment," "),e.xp6(6),e.hij(" ",x.clinicalTrial.title," "),e.xp6(5),e.hij(" ",x.clinicalTrial.conditions," "),e.xp6(6),e.hij(" ",x.clinicalTrial.sponsor," "),e.xp6(5),e.hij(" ",x.clinicalTrial.intervention," "),e.xp6(6),e.hij(" ",x.clinicalTrial.fundedBys," "),e.xp6(5),e.hij(" ",x.clinicalTrial.phases," "),e.xp6(6),e.hij(" ",x.clinicalTrial.studyTypes," "),e.xp6(5),e.hij(" ",x.clinicalTrial.ageGroups," "),e.xp6(6),e.hij(" ",x.clinicalTrial.studyDesigns," "),e.xp6(5),e.hij(" ",x.clinicalTrial.gender," "),e.xp6(6),e.hij(" ",x.clinicalTrial.studyResults," "),e.xp6(5),e.hij(" ",x.clinicalTrial.enrollment," "),e.xp6(6),e.hij(" ",x.clinicalTrial.otherIds," "),e.xp6(5),e.hij(" ",x.clinicalTrial.acronym," "),e.xp6(6),e.hij(" ",e.xi3(133,39,x.clinicalTrial.startDate,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",e.xi3(139,42,x.clinicalTrial.lastVerified,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",e.xi3(146,45,x.clinicalTrial.completionDate,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",e.xi3(152,48,x.clinicalTrial.primaryCompletionDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",e.xi3(159,51,x.clinicalTrial.firstReceived,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",e.xi3(165,54,x.clinicalTrial.lastUpdated,"MM/dd/yyyy")," "),e.xp6(7),e.s9C("href",x.clinicalTrial.url,e.LSH),e.xp6(1),e.Oqu(x.clinicalTrial.url),e.xp6(6),e.hij(" ",x.clinicalTrial.outcomeMeasures," "),e.xp6(6),e.Q6J("ngIf",x.clinicalTrial.locationList.length>0),e.xp6(1),e.MGl("label","Application (",x.clinicalTrial.clinicalTrialApplicationList.length,")"),e.xp6(6),e.Q6J("ngIf",x.clinicalTrial.clinicalTrialApplicationList.length>0)("ngIfElse",l),e.xp6(3),e.MGl("label","Substance (",x.clinicalTrial.clinicalTrialUSDrug.length,")"),e.xp6(6),e.Q6J("ngIf",x.clinicalTrial.clinicalTrialUSDrug.length>0)("ngIfElse",a)}}function zm(m,D){if(1&m&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e.TgZ(4,"div",34),e._uU(5),e.qZA()),2&m){var l=e.oxw(2);e.xp6(5),e.hij("No Clinical Trial record found for ",l.trialNumber,"")}}function mf(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Wm,203,57,"div",1),e.YNc(2,zm,6,1,"ng-template",null,2,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw();e.xp6(1),e.Q6J("ngIf",a.clinicalTrial.trialNumber)("ngIfElse",l)}}var ep=function(){var m=function(D){(0,Aa.Z)(a,D);var l=(0,Ra.Z)(a);function a(x,O,W,Le,rt,Ht,In,ei,_i){var Mi;return(0,P.Z)(this,a),(Mi=l.call(this,x,O,W,Le,rt,Ht,In)).authService=ei,Mi.configService=_i,Mi.isAdmin=!1,Mi}return(0,t.Z)(a,[{key:"ngOnInit",value:function(){var O=this;(0,wr.Z)((0,ia.Z)(a.prototype),"ngOnInit",this).call(this),this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,Ee.q)(1)).subscribe(function(W){O.isAdmin=W}),this.flagIconSrcPath="".concat(this.configService.environment.baseHref||"","assets/icons/fda/united-states.svg")}}]),a}(vl);return m.\u0275fac=function(l){return new(l||m)(e.Y36(_l.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(Ie.e),e.Y36(On.E))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-clinical-trial-details"]],features:[e.qOj],decls:5,vars:1,consts:[[4,"ngIf"],[4,"ngIf","ngIfElse"],["noRecord",""],[1,"details-container","margintop90px"],[1,"details-box"],[1,"font20px","box"],["width","25px","height","30px",3,"src"],["target","_blank","title","Edit Clinical Trial US Record",3,"routerLink","queryParams",4,"ngIf"],[1,"row"],[1,"row-property-key-2"],[1,"row-property-value-2"],["target","_blank",3,"href"],[1,"font14px","fontbold","colororange"],[1,"details-container"],[1,"mat-card","bordergray"],["label","Clinical Trial US"],[1,"title"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"row-property-2"],[3,"label"],["noRecordApp",""],["noRecordSub",""],["target","_blank","title","Edit Clinical Trial US Record",3,"routerLink","queryParams"],["svgIcon","edit"],[4,"ngFor","ngForOf"],["width","98%",1,"bordergray","blueTable","padleft20px"],["valign","top"],["width","60px"],["width","200px"],["width","300px"],["target","_blank",3,"routerLink"],["appSubstanceImage","","size","150",1,"structure-img",3,"entityId"],[1,"colororange","padtop50px","padleft50px"]],template:function(l,a){1&l&&(e.YNc(0,mf,4,2,"div",0),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br")),2&l&&e.Q6J("ngIf",a.clinicalTrial)},directives:[p.O5,d.yS,I.Hw,B.SP,B.uX,s.a8,s.dn,p.sg,Be.m],pipes:[p.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px rgba(0,0,0,.12)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-size:12px;font-weight:600}.row-property-value[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:17.5%;max-width:17.5%;padding:6px;font-size:12px;font-weight:600}.row-property-value-2[_ngcontent-%COMP%]{min-width:82.5%;max-width:82.5%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:#0857d6;padding-right:5px;text-align:top;margin-bottom:9px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:gray}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:#e55913}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid #1C6EA4;background-color:#f2f2f2;width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid #AAAAAA;padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:#f5faee}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:#e8ebe1;border-bottom:1px solid #444444}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:#1a1a1a;border-left:1px solid #D0E4F5;padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#fff;background:#D0E4F5;border-top:2px solid #444444}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:#1C6EA4;color:#fff;padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid red}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px rgba(0,0,0,.12)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}}"]}),m}();function Gm(m,D){if(1&m&&(e.TgZ(0,"div",16),e.TgZ(1,"div",17),e.TgZ(2,"div",18),e._UZ(3,"img",19),e._uU(4," \xa0"),e.TgZ(5,"b"),e._uU(6,"Clinical Trial Europe Details"),e.qZA(),e.qZA(),e.TgZ(7,"div",5),e.TgZ(8,"div",20),e._uU(9," Eudract Number: "),e.qZA(),e.TgZ(10,"div",21),e.TgZ(11,"a",9),e.TgZ(12,"span",10),e._uU(13),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div",5),e.TgZ(15,"div",20),e._uU(16," Title: "),e.qZA(),e.TgZ(17,"div",21),e._uU(18),e.qZA(),e.qZA(),e.TgZ(19,"div",5),e.TgZ(20,"div",20),e._uU(21," Sponsor Name: "),e.qZA(),e.TgZ(22,"div",21),e._uU(23),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.Q6J("src",l.flagIconSrcPath,e.LSH),e.xp6(8),e.s9C("href",l.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(l.clinicalTrial.eudractNumber),e.xp6(5),e.hij(" ",l.clinicalTrial.title," "),e.xp6(5),e.hij(" ",l.clinicalTrial.sponsorName," ")}}function Nh(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._UZ(8,"div",27),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Oqu(l.productName),e.xp6(2),e.Oqu(l.tradeName),e.xp6(2),e.Q6J("innerHTML",l.prodIngredName,e.oJD),e.xp6(2),e.Oqu(l.impRoutesAdmin),e.xp6(2),e.Oqu(l.pharmaceuticalForm),e.xp6(2),e.Oqu(l.impSection),e.xp6(2),e.Oqu(l.impRole)}}function hf(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"table",22),e.TgZ(2,"thead"),e.TgZ(3,"tr",23),e.TgZ(4,"th",24),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",25),e._uU(7,"Product Name"),e.qZA(),e.TgZ(8,"th",25),e._uU(9,"Trade Name"),e.qZA(),e.TgZ(10,"th",25),e._uU(11,"Substances"),e.qZA(),e.TgZ(12,"th",25),e._uU(13,"IMP Route of Administration"),e.qZA(),e.TgZ(14,"th",25),e._uU(15,"Pharmaceutical Form"),e.qZA(),e.TgZ(16,"th",25),e._uU(17,"IMP Sections"),e.qZA(),e.TgZ(18,"th",25),e._uU(19,"IMP Role"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"tbody"),e.YNc(21,Nh,17,8,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(21),e.Q6J("ngForOf",l.clinicalTrial.clinicalTrialEuropeProductList)}}function _f(m,D){1&m&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Product and Substance Data for this Clinical Trial "),e.qZA())}function Km(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Oqu(l.medicalCondInvesigated),e.xp6(2),e.Oqu(l.medicalCondInvesigatedEz),e.xp6(2),e.Oqu(l.medicalCondTherapyArea)}}function tp(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"table",22),e.TgZ(2,"thead"),e.TgZ(3,"tr",23),e.TgZ(4,"th",24),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",25),e._uU(7,"Medical Condition Investigated"),e.qZA(),e.TgZ(8,"th",25),e._uU(9,"Medical Condition Investigated EZ"),e.qZA(),e.TgZ(10,"th",25),e._uU(11,"Medical Condition Therapy Area"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,Km,9,4,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(13),e.Q6J("ngForOf",l.clinicalTrial.clinicalTrialEuropeMedicalList)}}function Rh(m,D){1&m&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Medical Data for this Clinical Trial "),e.qZA())}function Uh(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Oqu(l.meddraVersion),e.xp6(2),e.Oqu(l.meddraClassCode),e.xp6(2),e.Oqu(l.meddraTerm),e.xp6(2),e.Oqu(l.meddraSystemOrganClass)}}function Bh(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"table",28),e.TgZ(2,"thead"),e.TgZ(3,"tr",23),e.TgZ(4,"th",24),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",25),e._uU(7,"Meddra Version"),e.qZA(),e.TgZ(8,"th",25),e._uU(9,"Meddra Class Code"),e.qZA(),e.TgZ(10,"th",25),e._uU(11,"Meddra Term"),e.qZA(),e.TgZ(12,"th",25),e._uU(13,"Meddra System Organ Class"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"tbody"),e.YNc(15,Uh,11,5,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(15),e.Q6J("ngForOf",l.clinicalTrial.clinicalTrialEuropeMeddraList)}}function Yh(m,D){1&m&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Meddra Data for this Clinical Trial "),e.qZA())}var qh=function(){var m=function(D){(0,Aa.Z)(a,D);var l=(0,Ra.Z)(a);function a(x,O,W,Le,rt,Ht,In,ei){var _i;return(0,P.Z)(this,a),(_i=l.call(this,x,O,W,Le,rt,Ht,In)).configService=ei,_i.environment=ei.environment,_i}return(0,t.Z)(a,[{key:"ngOnInit",value:function(){(0,wr.Z)((0,ia.Z)(a.prototype),"ngOnInit",this).call(this),this.flagIconSrcPath="".concat(this.environment.baseHref||"","assets/icons/fda/european-union.svg")}}]),a}(vl);return m.\u0275fac=function(l){return new(l||m)(e.Y36(_l.m),e.Y36(d.gz),e.Y36(wt.b),e.Y36(jt.a),e.Y36(d.F0),e.Y36(Ma.$),e.Y36(fi.F),e.Y36(On.E))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-clinical-trial-europe-details"]],features:[e.qOj],decls:123,vars:35,consts:[["class","details-container margintop90px",4,"ngIf"],[1,"details-container"],[1,"mat-card","bordergray"],["label","Clinical Trial Europe"],[1,"title"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],["target","_blank",3,"href"],[1,"font14px","fontbold","colororange"],[3,"label"],[4,"ngIf","ngIfElse"],["noRecordProd",""],["noRecordMed",""],["noRecordMeddra",""],[1,"details-container","margintop90px"],[1,"details-box"],[1,"font20px","box"],["width","25px","height","30px",3,"src"],[1,"row-property-key-2"],[1,"row-property-value-2"],["width","98%",1,"bordergray","blueTable","padleft20px"],["valign","top"],["width","60px"],["width","200px"],[4,"ngFor","ngForOf"],[3,"innerHTML"],["width","98%",1,"bordergray","blueTable"]],template:function(l,a){if(1&l&&(e.YNc(0,Gm,24,5,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"mat-tab-group"),e.TgZ(4,"mat-tab",3),e.TgZ(5,"div",1),e.TgZ(6,"mat-card"),e.TgZ(7,"div",4),e._uU(8,"Clinical Trial Europe"),e.qZA(),e.TgZ(9,"mat-card-content"),e.TgZ(10,"div",5),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e._uU(13," Eudract Number: "),e.qZA(),e.TgZ(14,"div",8),e.TgZ(15,"a",9),e.TgZ(16,"span",10),e._uU(17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",6),e.TgZ(19,"div",7),e._uU(20," Trial Status: "),e.qZA(),e.TgZ(21,"div",8),e._uU(22),e.qZA(),e.qZA(),e.qZA(),e.TgZ(23,"div",5),e.TgZ(24,"div",6),e.TgZ(25,"div",7),e._uU(26," Title: "),e.qZA(),e.TgZ(27,"div",8),e._uU(28),e.qZA(),e.qZA(),e.TgZ(29,"div",6),e.TgZ(30,"div",7),e._uU(31," Trial Results: "),e.qZA(),e.TgZ(32,"div",8),e._uU(33),e.qZA(),e.qZA(),e.qZA(),e.TgZ(34,"div",5),e.TgZ(35,"div",6),e.TgZ(36,"div",7),e._uU(37," Sponsor Name: "),e.qZA(),e.TgZ(38,"div",8),e._uU(39),e.qZA(),e.qZA(),e.TgZ(40,"div",6),e.TgZ(41,"div",7),e._uU(42," Date First Entered DB: "),e.qZA(),e.TgZ(43,"div",8),e._uU(44),e.ALo(45,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(46,"div",5),e.TgZ(47,"div",6),e.TgZ(48,"div",7),e._uU(49," National Competent Authority: "),e.qZA(),e.TgZ(50,"div",8),e._uU(51),e.qZA(),e.qZA(),e.TgZ(52,"div",6),e.TgZ(53,"div",7),e._uU(54," National Competent Authority Decision: "),e.qZA(),e.TgZ(55,"div",8),e._uU(56),e.qZA(),e.qZA(),e.qZA(),e.TgZ(57,"div",5),e.TgZ(58,"div",6),e.TgZ(59,"div",7),e._uU(60," Date Competent Authority Decision: "),e.qZA(),e.TgZ(61,"div",8),e._uU(62),e.ALo(63,"date"),e.qZA(),e.qZA(),e.TgZ(64,"div",6),e.TgZ(65,"div",7),e._uU(66," Ethics Competent Opinion Approved: "),e.qZA(),e.TgZ(67,"div",8),e._uU(68),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"div",5),e.TgZ(70,"div",6),e.TgZ(71,"div",7),e._uU(72," Ethics Competent Opinion Reason: "),e.qZA(),e.TgZ(73,"div",8),e._uU(74),e.qZA(),e.qZA(),e.TgZ(75,"div",6),e.TgZ(76,"div",7),e._uU(77," Date Ethics Competent Opinion Reason: "),e.qZA(),e.TgZ(78,"div",8),e._uU(79),e.ALo(80,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(81,"div",5),e.TgZ(82,"div",6),e.TgZ(83,"div",7),e._uU(84," Country: "),e.qZA(),e.TgZ(85,"div",8),e._uU(86),e.qZA(),e.qZA(),e.TgZ(87,"div",6),e.TgZ(88,"div",7),e._uU(89," Website Url: "),e.qZA(),e.TgZ(90,"div",8),e.TgZ(91,"a",9),e._uU(92),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(93,"mat-tab",11),e.TgZ(94,"div",1),e.TgZ(95,"mat-card"),e.TgZ(96,"div",4),e._uU(97,"Products in Clinical Trial"),e.qZA(),e.TgZ(98,"mat-card-content"),e.YNc(99,hf,22,1,"div",12),e.YNc(100,_f,3,0,"ng-template",null,13,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(102,"mat-tab",11),e.TgZ(103,"div",1),e.TgZ(104,"mat-card"),e.TgZ(105,"div",4),e._uU(106,"Medical Conditions in Clinical Trial"),e.qZA(),e.TgZ(107,"mat-card-content"),e.YNc(108,tp,14,1,"div",12),e.YNc(109,Rh,3,0,"ng-template",null,14,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(111,"mat-tab",11),e.TgZ(112,"div",1),e.TgZ(113,"mat-card"),e.TgZ(114,"div",4),e._uU(115,"Meddra in Clinical Trial"),e.qZA(),e.TgZ(116,"mat-card-content"),e.YNc(117,Bh,16,1,"div",12),e.YNc(118,Yh,3,0,"ng-template",null,15,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(120,"br"),e._UZ(121,"br"),e._UZ(122,"br")),2&l){var x=e.MAs(101),O=e.MAs(110),W=e.MAs(119);e.Q6J("ngIf",a.clinicalTrial),e.xp6(15),e.s9C("href",a.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(a.clinicalTrial.eudractNumber),e.xp6(5),e.hij(" ",a.clinicalTrial.trialStatus," "),e.xp6(6),e.hij(" ",a.clinicalTrial.title," "),e.xp6(5),e.hij(" ",a.clinicalTrial.trialResults," "),e.xp6(6),e.hij(" ",a.clinicalTrial.sponsorName," "),e.xp6(5),e.hij(" ",e.xi3(45,26,a.clinicalTrial.dateFirstEnteredDb,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",a.clinicalTrial.nationalCompetentAuthority," "),e.xp6(5),e.hij(" ",a.clinicalTrial.competentAuthorityDecision," "),e.xp6(6),e.hij(" ",e.xi3(63,29,a.clinicalTrial.competentAuthorityDecisionDate,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",a.clinicalTrial.ethicsComOpinionApp," "),e.xp6(6),e.hij(" ",a.clinicalTrial.ethicsComOpinionReason," "),e.xp6(5),e.hij(" ",e.xi3(80,32,a.clinicalTrial.ethicsComOpinionDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",a.clinicalTrial.country," "),e.xp6(5),e.s9C("href",a.clinicalTrial.url,e.LSH),e.xp6(1),e.Oqu(a.clinicalTrial.url),e.xp6(1),e.MGl("label","Product (",a.clinicalTrial.clinicalTrialEuropeProductList.length,")"),e.xp6(6),e.Q6J("ngIf",a.clinicalTrial.clinicalTrialEuropeProductList.length>0)("ngIfElse",x),e.xp6(3),e.MGl("label","Medical (",a.clinicalTrial.clinicalTrialEuropeMedicalList.length,")"),e.xp6(6),e.Q6J("ngIf",a.clinicalTrial.clinicalTrialEuropeMedicalList.length>0)("ngIfElse",O),e.xp6(3),e.MGl("label","Meddra (",a.clinicalTrial.clinicalTrialEuropeMeddraList.length,")"),e.xp6(6),e.Q6J("ngIf",a.clinicalTrial.clinicalTrialEuropeMeddraList.length>0)("ngIfElse",W)}},directives:[p.O5,B.SP,B.uX,s.a8,s.dn,p.sg],pipes:[p.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px rgba(0,0,0,.12)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:50%;max-width:50%;padding:7px;font-size:12px;font-weight:500}.row-property-value[_ngcontent-%COMP%]{min-width:50%;max-width:50%;padding:7px;font-size:12px}.row-property-key-2[_ngcontent-%COMP%]{min-width:13%;max-width:13%;padding:6px;font-size:12px;font-weight:500}.row-property-value-2[_ngcontent-%COMP%]{min-width:87%;max-width:87%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:#0857d6;padding-right:5px;text-align:top;margin-bottom:9px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:gray}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:#e55913}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid #1C6EA4;background-color:#f2f2f2;width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid #AAAAAA;padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:#f5faee}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:#e8ebe1;border-bottom:1px solid #444444}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:#1a1a1a;border-left:1px solid #D0E4F5;padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#fff;background:#D0E4F5;border-top:2px solid #444444}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:#1C6EA4;color:#fff;padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid red}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px rgba(0,0,0,.12)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}}"]}),m}(),Zl=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.configService=l,this.router=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){var Le=O.configService.configData.loadedComponents||null;Le&&Le.clinicaltrials?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/home")),W.complete())})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(On.E),e.LFG(d.F0))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac,providedIn:"root"}),m}(),$m=[{path:"browse-clinical-trials",component:Rp,canActivate:[Zl]},{path:"edit-clinical-trial/:trialNumber",component:Cs,canActivate:[Zl]},{path:"add-clinical-trial",component:zd,canActivate:[Zl]},{path:"clinical-trial/:trialNumber",component:ep,canActivate:[Zl]},{path:"clinicalTrialEuropeDetails/:trialNumber/:src",component:qh,canActivate:[Zl]}],Xm=function(){var m=function(){function D(l){(0,P.Z)(this,D),$m.forEach(function(a){l.config[0].children.push(a)})}return(0,t.Z)(D,null,[{key:"forRoot",value:function(){return{ngModule:D,providers:[_l.m,Zl]}}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0))},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({providers:[Zl],imports:[[v.p0,St.lN,Pt.c,bt.Bb,I.Ps,T.ot,be.TU,Ft.SJ,h.To,s.QW,B.Nh,je.UX,je.u5,J.p9,we.LD,p.ez,d.Bz.forChild($m),_s.Cv,Cl.f,wn.On,Ae.Tx]]}),m}(),eh=function(){var m=(0,t.Z)(function D(){(0,P.Z)(this,D)});return m.\u0275fac=function(l){return new(l||m)},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({imports:[[p.ez]]}),m}(),gf=function(){var m=(0,t.Z)(function D(){(0,P.Z)(this,D)});return m.\u0275fac=function(l){return new(l||m)},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({imports:[[p.ez,T.ot]]}),m}();function kl(m,D){1&m&&(e.TgZ(0,"span"),e._uU(1," \xa0"),e.TgZ(2,"b"),e._uU(3,"(Preferred Term)"),e.qZA(),e.qZA())}function Ju(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"li"),e._uU(2),e.YNc(3,kl,4,0,"span",21),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.hij("",l.name," "),e.xp6(1),e.Q6J("ngIf",!0===l.displayName)}}function vf(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Num "),e.qZA())}function np(m,D){if(1&m&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&m){var l=D.index;e.xp6(1),e.hij(" ",l+1," ")}}function ip(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Action "),e.qZA())}var yf=function(D){return["/application",D,"edit"]},ap=function(D){return["/application",D]};function Qu(m,D){if(1&m&&(e.TgZ(0,"td",23),e.TgZ(1,"div",24),e.TgZ(2,"div",25),e.TgZ(3,"a",26),e._UZ(4,"mat-icon",27),e.qZA(),e.qZA(),e.TgZ(5,"div",28),e.TgZ(6,"a",29),e.TgZ(7,"mat-icon"),e._uU(8,"article"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(3),e.Q6J("routerLink",e.VKq(2,yf,l.id)),e.xp6(3),e.Q6J("routerLink",e.VKq(4,ap,l.id))}}function Hs(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Application Type "),e.qZA())}function bf(m,D){if(1&m&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.appType," ")}}function th(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Application Number "),e.qZA())}function hu(m,D){if(1&m&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.appNumber," ")}}function Cf(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Application Status "),e.qZA())}function rp(m,D){if(1&m&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.status," ")}}function nh(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Application Sub Type "),e.qZA())}function ih(m,D){if(1&m&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.appSubType," ")}}function _u(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Product Name "),e.qZA())}function Rc(m,D){if(1&m&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.productName," ")}}function op(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Application Bdnum "),e.qZA())}function Uc(m,D){if(1&m&&(e.TgZ(0,"span",32),e.TgZ(1,"b"),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(2),e.Oqu(l.bdnum)}}function gu(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.hij(" ",l.bdnum," ")}}function Bc(m,D){if(1&m&&(e.TgZ(0,"td",30),e.YNc(1,Uc,3,1,"span",31),e.YNc(2,gu,2,1,"span",21),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf","(No Bdnum)"!==l.bdnum),e.xp6(1),e.Q6J("ngIf","(No Bdnum)"===l.bdnum)}}function ah(m,D){1&m&&(e.TgZ(0,"th",22),e._uU(1," Substance Ingredient Names and Product Name - Exact Match "),e.qZA())}function Mf(m,D){if(1&m&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.exactMatchName," ")}}function xf(m,D){1&m&&e._UZ(0,"tr",33)}function as(m,D){1&m&&e._UZ(0,"tr",34)}var sp=function(){var m=function(){function D(l,a,x,O,W,Le,rt){(0,P.Z)(this,D),this.generalService=l,this.applicationService=a,this.activatedRoute=x,this.router=O,this.loadingService=W,this.utilsService=Le,this.authService=rt,this.isAdmin=!1,this.displayedColumns=["Num","Action","Application Type","Application Number","Status","Application Sub Type","Product Name","Application Substance Key","Exact Match"],this.dataSource=null,this.updated="false",this.autoUpdateSavedSuccess=!1,this.subscriptions=[],this.substanceApplicationMatchList=[],this.preferredTerm="",this.fullFacetField="",this.total=0}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.loadingService.setLoading(!0),this.authService.hasRolesAsync("Admin").subscribe(function(x){a.isAdmin=x}),this.id=this.activatedRoute.snapshot.params.id,this.id&&this.getSubstanceNames(this.id),this.loadingService.setLoading(!1)}},{key:"ngAfterViewInit",value:function(){}},{key:"getSubstanceNames",value:function(a){var x=this;this.generalService.getSubstanceNamesBySubstanceUuid(a).subscribe(function(O){x.substanceNames=O,x.substanceNames.forEach(function(W,Le){!0===W.displayName&&(x.preferredTerm=W.name),W&&W.name&&(Le>0&&(x.fullFacetField=x.fullFacetField+" OR "),x.fullFacetField=x.fullFacetField+'root_applicationProductList_applicationProductNameList_productName:"'+W.name+'"')}),x.getApplicationIngredientMatchList()})}},{key:"getApplicationIngredientMatchList",value:function(){var a=this;this.applicationService.getApplications(null,0,200,this.fullFacetField,{"Has Ingredients":{params:{"Has No Ingredient":!0},isAllMatch:!1}}).subscribe(function(W){a.applications=W.content,a.total=W.count,a.applications.length>0&&(a.applications.forEach(function(Le,rt){if(Le){var Ht={};Ht.id=Le.id,Ht.appType=Le.appType,Ht.appNumber=Le.appNumber,Ht.status=Le.status,Ht.appSubType=Le.appSubType;var In="",Mi="";Le.applicationProductList.forEach(function(Ar,ls){var Xr="";Ar.applicationProductNameList.forEach(function(Zo,cm){Zo&&(cm>0&&(In+=" || "),In+=Zo.productName,a.substanceNames.forEach(function(wh,uv){wh&&wh.name&&Zo.productName&&wh.name===Zo.productName.trim()&&(Mi=wh.name,a.generalService.getSubstanceCodesBySubstanceUuid(a.id).subscribe(function(kg){if(kg)for(var Oh=kg,um=0;um0&&(Xr+="|"),Xr+=Zo.substanceKey):Xr+="(No Substance Key)"}),Ht.productName=In,Ht.exactMatchName=Mi,Ht.bdnum=Xr}),a.substanceApplicationMatchList.push(Ht)}}),a.dataSource=a.substanceApplicationMatchList)})}},{key:"autoUpdateApp",value:function(a,x,O){var W=this;this.loadingService.setLoading(!0),this.dataSource[a].autoUpdateMessage="Saving....Please wait.",this.dataSource[a].isDisableButton=!0,this.applicationService.getApplicationById(x).subscribe(function(Le){Le&&(W.application=Le,W.application&&W.application.applicationProductList.forEach(function(rt,Ht){rt.applicationIngredientList.forEach(function(In,ei){In.substanceKey||(In.substanceKey=O,In.basisOfStrengthSubstanceKeyType=W.generalService.getSubstanceKeyType(),In.basisOfStrengthSubstanceKey=O,In.basisOfStrengthSubstanceKeyType=W.generalService.getSubstanceKeyType(),In.ingredientType="Active Ingredient",In.applicantIngredName=W.preferredTerm,W.applicationService.application=W.application,W.applicationService.saveApplication().subscribe(function(_i){alert("The Auto Update saved the application record successfully"),W.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},W.router.onSameUrlNavigation="reload",W.router.navigate(["/sub-app-match-list",W.id])}))})}))}),this.loadingService.setLoading(!1)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(A.m),e.Y36(E.I),e.Y36(d.gz),e.Y36(d.F0),e.Y36(wt.b),e.Y36(fi.F),e.Y36(Ie.e))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-substance-application-match-list"]],decls:62,vars:5,consts:[[1,"bordergray","width1140px"],[1,"padtop20px"],[4,"ngFor","ngForOf"],[1,"colorgreen","font18px"],[1,"font16px"],[1,"font18px","colorred"],[1,"font12px","bordergray",3,"dataSource"],["matColumnDef","Num"],["mat-header-cell","","class","headerstyle",4,"matHeaderCellDef"],["mat-cell","","class","cellstyle",4,"matCellDef"],["matColumnDef","Action"],["matColumnDef","Application Type"],["matColumnDef","Application Number"],["matColumnDef","Status"],["matColumnDef","Application Sub Type"],["matColumnDef","Product Name"],["matColumnDef","Application Substance Key"],["mat-cell","","class","cellstyle backgroundyellow",4,"matCellDef"],["matColumnDef","Exact Match"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[4,"ngIf"],["mat-header-cell","",1,"headerstyle"],["mat-cell","",1,"cellstyle"],[1,"divflex","padtop5px"],[1,"padleft15px"],["target","_blank","matTooltip","Edit Application Record",3,"routerLink"],["svgIcon","edit"],[1,"padleft10px"],["target","_blank","matTooltip","View Application Record",3,"routerLink"],["mat-cell","",1,"cellstyle","backgroundyellow"],["class","colorpurple",4,"ngIf"],[1,"colorpurple"],["mat-header-row",""],["mat-row",""]],template:function(l,a){1&l&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e.TgZ(5,"mat-card",0),e.TgZ(6,"mat-card-title"),e._uU(7,"Substance Application Matching Lists"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",1),e.TgZ(10,"h3"),e._uU(11,"Substance Ingredient Names:"),e.qZA(),e.TgZ(12,"ol"),e.YNc(13,Ju,4,2,"div",2),e.qZA(),e._UZ(14,"br"),e._UZ(15,"br"),e.TgZ(16,"div",3),e.TgZ(17,"b"),e._uU(18,"Applications Lists that contain Substance Ingredient Names in Product Names or Reference IND:"),e.qZA(),e.qZA(),e._UZ(19,"br"),e._UZ(20,"br"),e.TgZ(21,"span",4),e.TgZ(22,"b"),e._uU(23,"Total Applications Found: "),e.qZA(),e.TgZ(24,"span",5),e.TgZ(25,"b"),e._uU(26),e.qZA(),e.qZA(),e.qZA(),e._UZ(27,"br"),e._UZ(28,"br"),e.TgZ(29,"mat-table",6),e.ynx(30,7),e.YNc(31,vf,2,0,"th",8),e.YNc(32,np,2,1,"td",9),e.BQk(),e.ynx(33,10),e.YNc(34,ip,2,0,"th",8),e.YNc(35,Qu,9,6,"td",9),e.BQk(),e.ynx(36,11),e.YNc(37,Hs,2,0,"th",8),e.YNc(38,bf,2,1,"td",9),e.BQk(),e.ynx(39,12),e.YNc(40,th,2,0,"th",8),e.YNc(41,hu,2,1,"td",9),e.BQk(),e.ynx(42,13),e.YNc(43,Cf,2,0,"th",8),e.YNc(44,rp,2,1,"td",9),e.BQk(),e.ynx(45,14),e.YNc(46,nh,2,0,"th",8),e.YNc(47,ih,2,1,"td",9),e.BQk(),e.ynx(48,15),e.YNc(49,_u,2,0,"th",8),e.YNc(50,Rc,2,1,"td",9),e.BQk(),e.ynx(51,16),e.YNc(52,op,2,0,"th",8),e.YNc(53,Bc,3,2,"td",17),e.BQk(),e.ynx(54,18),e.YNc(55,ah,2,0,"th",8),e.YNc(56,Mf,2,1,"td",9),e.BQk(),e.YNc(57,xf,1,0,"tr",19),e.YNc(58,as,1,0,"tr",20),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(59,"br"),e._UZ(60,"br"),e._UZ(61,"br")),2&l&&(e.xp6(13),e.Q6J("ngForOf",a.substanceNames),e.xp6(13),e.Oqu(a.total),e.xp6(3),e.Q6J("dataSource",a.dataSource),e.xp6(28),e.Q6J("matHeaderRowDef",a.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",a.displayedColumns))},directives:[s.a8,s.n5,s.dn,p.sg,p.O5,v.BZ,v.w1,v.fO,v.ge,v.Dz,v.ev,d.yS,f.gM,I.Hw,v.as,v.XQ,v.nj,v.Gk],styles:[".width1140px[_ngcontent-%COMP%]{width:1140px;max-width:1140px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font18px[_ngcontent-%COMP%]{font-size:18px}.colorred[_ngcontent-%COMP%]{color:red}.colorgreen[_ngcontent-%COMP%]{color:green}.colorpurple[_ngcontent-%COMP%]{color:purple}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.padtop20px[_ngcontent-%COMP%]{padding-top:20px}.padleft5px[_ngcontent-%COMP%]{padding-left:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padleft30px[_ngcontent-%COMP%]{padding-left:20px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padbottom7px[_ngcontent-%COMP%]{padding-bottom:7px}.headerstyle[_ngcontent-%COMP%]{font-size:13px;vertical-align:top;color:#241983;padding-left:3px;background-color:#ececec;border-bottom:1px solid gray;border-right:1px solid gray}.cellstyle[_ngcontent-%COMP%]{vertical-align:top;text-align:top;padding-left:3px;padding-top:3px;border-right:1px solid gray}.backgroundyellow[_ngcontent-%COMP%]{background-color:#ffff9eb4}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}"]}),m}(),Sf=[{name:"fdaSample",filter:function yl(m,D,l){return new sr.y(function(a){a.next(!0),a.complete()})}},{name:"products",filter:function aa(m,D,l){return new sr.y(function(a){l.get("/assets/data/gsrs-products-test.json").subscribe(function(x){a.next(!(!x||!x.length)),a.complete()})})}}],Tf=n(44250),qo=function(){var m=function(){function D(l,a,x){(0,P.Z)(this,D),this.platformId=l,this.authService=a,this.utilsService=x,(0,p.NF)(this.platformId)&&(this.iframe=document.createElement("IFRAME"),this.iframe.title="page refresher",this.iframe.name="refresher",this.iframe.style.height="0",this.iframe.style.opacity="0",this.iframe.src="/assets/refresh/refresh.html",document.body.appendChild(this.iframe),window.location.pathname.indexOf("/ginas/app/beta/")>-1&&(this.baseHref="/ginas/app/beta/"))}return(0,t.Z)(D,[{key:"init",value:function(){var a=this;this.authService.getAuth().subscribe(function(x){null!=x&&null==a.refreshInterval?(clearInterval(a.refreshInterval),a.refreshInterval=setInterval(function(){a.iframe.src="".concat(a.baseHref||"","assets/refresh/refresh.html?key=").concat(a.utilsService.newUUID())},12e4)):(clearInterval(a.refreshInterval),a.refreshInterval=null)})}},{key:"ngOnDestroy",value:function(){clearInterval(this.refreshInterval),this.refreshInterval=null}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(e.Lbi),e.LFG(Tf.e),e.LFG(Uu.FW))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac}),m}(),Sr=function(){var m=function(){function D(){(0,P.Z)(this,D)}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.loadJiraScript(),this.initCollectorDialog()}},{key:"ngAfterViewInit",value:function(){}},{key:"loadJiraScript",value:function(){var x=document.createElement("script");x.src="https://cnigsllc.atlassian.net/s/d41d8cd98f00b204e9800998ecf8427e-T/-nh6v6l/b/0/a44af77267a987a660377e5c46e0fb64/_/download/batch/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector.js?locale=en-US&collectorId=558f42b6",x.type="text/javascript",x.async=!0,document.getElementsByTagName("head")[0].appendChild(x)}},{key:"initCollectorDialog",value:function(){var x=document.createElement("script");x.type="text/javascript",x.innerHTML='window.ATL_JQ_PAGE_PROPS = {"triggerFunction": function (showCollectorDialog) {window.showCollectorDialog = showCollectorDialog}};',x.async=!0,document.getElementsByTagName("head")[0].appendChild(x)}},{key:"createTicket",value:function(){window.showCollectorDialog()}}]),D}();return m.\u0275fac=function(l){return new(l||m)},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-jira-submit-ticket"]],decls:4,vars:0,consts:[[1,"padleft40px","padtop110px","colorblue"],["mat-flat-button","","color","primary",3,"click"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e._uU(1,"Submit a Helpdesk Ticket (JIRA)\xa0\n"),e.TgZ(2,"button",1),e.NdJ("click",function(){return a.createTicket()}),e._uU(3,"Create ticket"),e.qZA(),e.qZA())},directives:[T.lW],styles:[".colorblue[_ngcontent-%COMP%]{color:#00f}.padleft40px[_ngcontent-%COMP%]{padding-left:40px}.padtop110px[_ngcontent-%COMP%]{padding-top:110px}"]}),m}(),Af=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.generalService=l,this.sanitizer=a}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.getUserManual()}},{key:"getUserManual",value:function(){var a=this;this.generalService.getManualFile().subscribe(function(x){var O=x.headers.get("Content-Disposition").split(";")[1].split("filename")[1].split("=")[1].trim();null==O&&(O="FDA_GSRS_User_Manual.pdf"),a.downloadFile(x.body,O)})}},{key:"downloadFile",value:function(a,x){var W=[];W.push(a);var Le=document.createElement("a");Le.href=window.URL.createObjectURL(new Blob(W,{type:"application/x-download"})),Le.setAttribute("download",x),document.body.appendChild(Le),Le.click(),this.message="The User Manual has been downloaded to your local download directory"}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(A.m),e.Y36(sn.H7))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-user-manual"]],decls:2,vars:1,consts:[[1,"padleft40px","padtop110px","colorblue"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e._uU(1),e.qZA()),2&l&&(e.xp6(1),e.hij("\n",a.message,"\n"))},styles:[".colorblue[_ngcontent-%COMP%]{color:#00f}.padleft40px[_ngcontent-%COMP%]{padding-left:40px}.padtop110px[_ngcontent-%COMP%]{padding-top:110px}"]}),m}(),tc=n(63200),js=n(91781),rh=n(56908),Yc=n(16639);function rs(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",18),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).toggleValidation()}),e._uU(1),e._UZ(2,"mat-icon",19),e.qZA()}if(2&m){var a=e.oxw(2);e.Q6J("disabled",a.isLoading),e.xp6(1),e.hij(" ",a.showSubmissionMessages?"Hide":"Show"," messages "),e.xp6(1),e.Q6J("svgIcon",a.showSubmissionMessages?"chevron_up":"chevron_down")}}function oh(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",23),e.NdJ("click",function(){return e.CHM(l),e.oxw(4).confirmDeleteImpurities()}),e._uU(2," Delete "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.qZA()}}var lp=function(){return["/impurities/register"]},Vh=function(D){return["/impurities",D]};function nc(m,D){if(1&m&&(e.TgZ(0,"span"),e.TgZ(1,"button",20),e._uU(2," Register New Impurities "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.TgZ(4,"a",21),e._UZ(5,"mat-icon",22),e._uU(6," View Impurities "),e.qZA(),e._uU(7,"\xa0\xa0\xa0 "),e.YNc(8,oh,4,0,"span",0),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Q6J("routerLink",e.DdM(3,lp)),e.xp6(3),e.Q6J("routerLink",e.VKq(4,Vh,l.impurities.id)),e.xp6(4),e.Q6J("ngIf",l.isAdmin)}}function cp(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,nc,9,6,"span",0),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.Q6J("ngIf",l.impurities.id)}}function up(m,D){if(1&m&&(e.TgZ(0,"div",24),e._uU(1),e.qZA()),2&m){var l=e.oxw(2);e.xp6(1),e.hij(" ",l.submissionMessage," ")}}function gr(m,D){1&m&&(e.TgZ(0,"div",24),e._uU(1," Please correct or dismiss the following errors and submit again: "),e.qZA())}function dr(m,D){if(1&m&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.TgZ(2,"a",33),e._uU(3),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(2),e.Q6J("href",l.href,e.LSH),e.xp6(1),e.Oqu(l.text)}}function dp(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",34),e.NdJ("click",function(){e.CHM(l);var x=e.oxw().index;return e.oxw(4).dismissValidationMessage(x)}),e._UZ(1,"mat-icon",35),e.qZA()}}function sh(m,D){if(1&m&&(e.TgZ(0,"div",28),e.TgZ(1,"div",29),e._uU(2),e.qZA(),e.TgZ(3,"div",30),e._uU(4),e.YNc(5,dr,4,2,"span",31),e.qZA(),e.YNc(6,dp,2,0,"button",32),e.qZA()),2&m){var l=D.$implicit,a=e.oxw(4);e.xp6(1),e.Q6J("ngClass","ERROR"==l.messageType?"error-message":"warning-message"),e.xp6(1),e.hij(" ",l.messageType,""),e.xp6(2),e.Oqu(l.message),e.xp6(1),e.Q6J("ngForOf",l.links),e.xp6(1),e.Q6J("ngIf","ERROR"!=l.messageType&&!a.approving)}}function lh(m,D){if(1&m&&(e.TgZ(0,"span"),e.YNc(1,gr,2,0,"div",9),e.YNc(2,sh,7,5,"div",27),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Q6J("ngIf",!l.serverError&&!l.approving),e.xp6(1),e.Q6J("ngForOf",l.validationMessages)}}function Pf(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.YNc(1,lh,3,2,"span",0),e.TgZ(2,"div",25),e._UZ(3,"span",5),e.TgZ(4,"button",26),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).submit()}),e._uU(5),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(1),e.Q6J("ngIf",a.validationMessages.length>0),e.xp6(3),e.Q6J("disabled",a.isLoading||!1===a.validationResult),e.xp6(1),e.hij("",a.validationMessages&&a.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function Df(m,D){if(1&m&&(e.TgZ(0,"div",36),e._UZ(1,"br"),e.TgZ(2,"div",36),e.TgZ(3,"span",37),e._uU(4,"Created By:"),e.qZA(),e._uU(5),e.TgZ(6,"span",37),e._uU(7,"Create Date:"),e.qZA(),e._uU(8),e.ALo(9,"date"),e.TgZ(10,"span",37),e._uU(11,"Modified By:"),e.qZA(),e._uU(12),e.TgZ(13,"span",37),e._uU(14,"Modify Date:"),e.qZA(),e._uU(15),e.ALo(16,"date"),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(5),e.hij(" ",l.impurities.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(9,4,l.impurities.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",l.impurities.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(16,7,l.impurities.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function ch(m,D){if(1&m&&(e.TgZ(0,"div",64),e._UZ(1,"app-impurities-substance-form",65),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(1),e.Q6J("impuritiesSubstance",l)("impuritiesSubstanceIndex",a)}}function wf(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-card",38),e.TgZ(1,"mat-card-content"),e.TgZ(2,"div",39),e.TgZ(3,"app-cv-input",40),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).impurities.sourceType=O}),e.qZA(),e.TgZ(4,"app-cv-input",41),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).impurities.source=O}),e.qZA(),e.TgZ(5,"mat-form-field",42),e.TgZ(6,"input",43),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).impurities.sourceId=O}),e.qZA(),e.qZA(),e.TgZ(7,"app-cv-input",44),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).impurities.type=O}),e.qZA(),e.TgZ(8,"mat-form-field",42),e.TgZ(9,"input",45),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).impurities.productId=O}),e.qZA(),e.qZA(),e.TgZ(10,"app-cv-input",46),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).impurities.specType=O}),e.qZA(),e.qZA(),e.TgZ(11,"div",39),e.TgZ(12,"mat-form-field",47),e.TgZ(13,"input",48),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).impurities.submitterName=O}),e.qZA(),e.qZA(),e.TgZ(14,"mat-form-field",47),e.TgZ(15,"input",49),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).impurities.productSubstanceName=O}),e.qZA(),e.qZA(),e.TgZ(16,"app-cv-input",50),e.NdJ("valueChange",function(O){return e.CHM(l),e.oxw(2).impurities.dateType=O}),e.qZA(),e.TgZ(17,"mat-form-field",42),e.TgZ(18,"input",51,52),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw(2).updateDateTypeDate(O)}),e.ALo(20,"date"),e.qZA(),e.qZA(),e.qZA(),e._UZ(21,"br"),e.TgZ(22,"mat-expansion-panel",53),e.TgZ(23,"mat-expansion-panel-header",13),e.TgZ(24,"mat-panel-title",54),e.TgZ(25,"div",55),e.TgZ(26,"div",56),e.TgZ(27,"span",57),e.TgZ(28,"b"),e._uU(29,"Substance"),e.qZA(),e.qZA(),e._uU(30,"\xa0 "),e.qZA(),e._UZ(31,"div",58),e.qZA(),e.qZA(),e.TgZ(32,"mat-panel-description",59),e.TgZ(33,"div"),e.TgZ(34,"button",60),e.NdJ("click",function(O){return e.CHM(l),e.oxw(2).addNewImpuritiesSubstance(O)}),e._UZ(35,"mat-icon",61),e._uU(36,"Add Substance "),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(37,ch,2,2,"div",62),e.qZA(),e._UZ(38,"br"),e.TgZ(39,"mat-expansion-panel",53),e.TgZ(40,"mat-expansion-panel-header",13),e.TgZ(41,"mat-panel-title"),e.TgZ(42,"div",57),e.TgZ(43,"b"),e._uU(44,"Total Impurities"),e.qZA(),e.qZA(),e.qZA(),e._UZ(45,"mat-panel-description",59),e.qZA(),e._UZ(46,"app-impurities-total-form",63),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(3),e.Q6J("model",a.impurities.sourceType),e.xp6(1),e.Q6J("model",a.impurities.source),e.xp6(2),e.Q6J("ngModel",a.impurities.sourceId),e.xp6(1),e.Q6J("model",a.impurities.type),e.xp6(2),e.Q6J("ngModel",a.impurities.productId),e.xp6(1),e.Q6J("model",a.impurities.specType),e.xp6(3),e.Q6J("ngModel",a.impurities.submitterName),e.xp6(2),e.Q6J("ngModel",a.impurities.productSubstanceName),e.xp6(1),e.Q6J("model",a.impurities.dateType),e.xp6(2),e.Q6J("ngModel",e.xi3(20,15,a.impurities.dateTypeDate,"yyyy-MM-dd")),e.xp6(4),e.Q6J("expanded",a.panelExpanded),e.xp6(9),e.s9C("matBadge",a.impurities.impuritiesSubstanceList.length),e.xp6(6),e.Q6J("ngForOf",a.impurities.impuritiesSubstanceList),e.xp6(2),e.Q6J("expanded",!0),e.xp6(7),e.Q6J("impuritiesTotal",a.impurities.impuritiesTotal)}}var Of=function(){return["/home"]},vu=function(D,l){return{"submission-messages":!0,collapsed:D,expanded:l}};function Wu(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"button",3),e.NdJ("click",function(){return e.CHM(l),e.oxw().showJSON()}),e._uU(4,"Show JSON"),e.qZA(),e.YNc(5,rs,3,3,"button",4),e._UZ(6,"span",5),e.YNc(7,cp,2,1,"span",0),e._uU(8," \xa0 "),e.TgZ(9,"button",6),e.NdJ("click",function(){return e.CHM(l),e.oxw().validate()}),e._uU(10,"Validate and Submit"),e.qZA(),e._uU(11," \xa0\xa0\xa0\xa0\xa0 "),e.TgZ(12,"button",7),e._uU(13,"Close"),e.qZA(),e.qZA(),e.TgZ(14,"div",8),e.YNc(15,up,2,1,"div",9),e.YNc(16,Pf,6,3,"div",0),e.qZA(),e.qZA(),e.TgZ(17,"div",10),e.TgZ(18,"div",11),e.TgZ(19,"div",12),e.TgZ(20,"div",13),e.TgZ(21,"div",14),e.TgZ(22,"div",15),e._uU(23),e.qZA(),e.YNc(24,Df,17,10,"div",16),e.qZA(),e.YNc(25,wf,47,18,"mat-card",17),e._UZ(26,"br"),e._UZ(27,"br"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(5),e.Q6J("ngIf",a.validationMessages&&a.validationMessages.length>0),e.xp6(2),e.Q6J("ngIf",a.impurities),e.xp6(5),e.Q6J("routerLink",e.DdM(9,Of)),e.xp6(2),e.Q6J("ngClass",e.WLB(10,vu,!a.showSubmissionMessages,a.showSubmissionMessages)),e.xp6(1),e.Q6J("ngIf",a.submissionMessage),e.xp6(1),e.Q6J("ngIf",a.validationMessages),e.xp6(7),e.hij(" ",a.title," "),e.xp6(1),e.Q6J("ngIf",a.impurities.id),e.xp6(1),e.Q6J("ngIf",a.impurities)}}var zu=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar){(0,P.Z)(this,D),this.impuritiesService=l,this.substanceService=a,this.authService=x,this.loadingService=O,this.mainNotificationService=W,this.gaService=Le,this.utilsService=rt,this.cvService=Ht,this.activatedRoute=In,this.router=ei,this.overlayContainerService=_i,this.dialog=Mi,this.fb=qi,this.titleService=Ar,this.isLoading=!0,this.showSubmissionMessages=!1,this.validationMessages=[],this.validationResult=!1,this.subscriptions=[],this.subName="Substance Name *",this.substanceId=null,this.isDisableData=!1,this.username=null,this.title=null,this.submitDateMessage="",this.statusDateMessage="",this.isAdmin=!1,this.subRelationship=[],this.substanceNameHintMessage="",this.panelExpanded=!0}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this,x=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(W){a.isAdmin=W});this.subscriptions.push(x),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.username=this.authService.getUser();var O=this.activatedRoute.params.subscribe(function(W){if(W.id){var Le=W.id;a.title="Update Impurity",Le!==a.id&&(a.id=Le,a.gaService.sendPageView("Impurity Edit"),a.titleService.setTitle("Update Impurities"),a.getImpurities())}else a.title="Register Impurities",a.id=a.activatedRoute.snapshot.queryParams.copy||null,a.id?(a.getImpurities("copy"),a.gaService.sendPageView("Impurities Register")):setTimeout(function(){a.gaService.sendPageView("Impurities Register"),a.titleService.setTitle("Register Impurities"),a.impuritiesService.loadImpurities(),a.impurities=a.impuritiesService.impurities,a.loadingService.setLoading(!1),a.isLoading=!1})});this.subscriptions.push(O)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"getImpurities",value:function(a){var x=this;if(null!=this.id){var O=this.id.toString(),W=this.impuritiesService.getImpurities(O).subscribe(function(Le){Le?(a&&"copy"===a&&x.scrub(Le),x.impuritiesService.loadImpurities(Le),x.impurities=x.impuritiesService.impurities):x.handleProductRetrivalError(),x.loadingService.setLoading(!1),x.isLoading=!1},function(Le){x.gaService.sendException("getImpurities: error from API call"),x.loadingService.setLoading(!1),x.isLoading=!1,x.handleProductRetrivalError()});this.subscriptions.push(W)}}},{key:"validate",value:function(){this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.validateClient(),0===this.validationMessages.length&&(this.submissionMessage=null,this.validationResult=!0,this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1,0===this.validationMessages.length&&!0===this.validationResult&&(this.submissionMessage="Impurities is Valid. Would you like to submit?"))}},{key:"setValidationMessage",value:function(a){var x={};x.message=a,x.messageType="ERROR",this.validationMessages.push(x),this.validationResult=!1}},{key:"validateClient",value:function(){var a=this;this.validationMessages=[],this.validationResult=!0,0===this.impurities.impuritiesSubstanceList.length&&this.setValidationMessage("Substance Name is required"),null!=this.impurities&&this.impurities.impuritiesSubstanceList.forEach(function(x,O){null!=x&&null==x.substanceUuid&&a.setValidationMessage("Substance Name ("+(O+1)+") is required")}),this.validationMessages.length>0&&(this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1)}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"addServerError",value:function(a){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var x={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};a&&a.error&&a.error.message?x.message="Server Error "+(a.status+": "||0)+a.error.message:a&&a.error&&"string"==typeof a.error?x.message="Server Error "+(a.status+": "||0)+a.error:a&&a.message&&(x.message="Server Error "+(a.status+": "||0)+a.message),this.validationMessages=[x],this.showSubmissionMessages=!0}},{key:"handleProductRetrivalError",value:function(){var a=this;this.mainNotificationService.setNotification({message:"The impurities you're trying to edit doesn't exist.",type:Tn.k.error,milisecondsToShow:4e3}),setTimeout(function(){a.router.navigate(["/impurities/register"]),a.impuritiesService.loadImpurities()},5e3)}},{key:"submit",value:function(){var a=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.impuritiesService.saveImpurities().subscribe(function(x){a.loadingService.setLoading(!1),a.isLoading=!1,a.validationMessages=null,a.submissionMessage="Impurities was saved successfully!",a.showSubmissionMessages=!0,a.validationResult=!1,setTimeout(function(){if(a.showSubmissionMessages=!1,a.submissionMessage="",x.id){a.impuritiesService.bypassUpdateCheck();var O=x.id;a.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},a.router.onSameUrlNavigation="reload",a.router.navigate(["/impurities",O])}},4e3)})}},{key:"confirmDeleteImpurities",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete this Impurities?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteImpurities()})}},{key:"deleteImpurities",value:function(){var a=this;this.impuritiesService.deleteImpurities().subscribe(function(x){a.impuritiesService.bypassUpdateCheck(),a.displayMessageAfterDeleteImpurities()},function(x){console.log(x)})}},{key:"displayMessageAfterDeleteImpurities",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"This impurities record was deleted successfully",type:"home"}}).afterClosed().subscribe(function(O){a.router.navigate(["/home"])})}},{key:"showJSON",value:function(){var x=this.dialog.open(Ts,{width:"90%",height:"90%",data:this.impurities}).afterClosed().subscribe(function(O){});this.subscriptions.push(x)}},{key:"addNewImpuritiesSubstance",value:function(a){a.stopPropagation(),this.impuritiesService.addNewImpuritiesSubstance()}},{key:"addNewImpuritiesTotal",value:function(){this.impuritiesService.addNewImpuritiesTotal()}},{key:"scrub",value:function(a){for(var x=a,O=Yc.json.search(x,"//*[id]"),W=0;W {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.mat-expansion-indicator[_ngcontent-%COMP%]{pointer-events:visiblefill!important}.panel-style[_ngcontent-%COMP%] .mat-panel-title[_ngcontent-%COMP%]{width:300px;min-width:300px;max-width:300px}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.borderbottom[_ngcontent-%COMP%]{border-bottom:1px solid gainsboro}"]}),m}();function Ef(m,D){if(1&m&&(e.TgZ(0,"div",29),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.impuritiesDetails.relatedSubstanceUnii," ")}}function os(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",30),e.TgZ(1,"div",31),e.TgZ(2,"app-cv-input",32),e.NdJ("valueChange",function(W){return e.CHM(l).$implicit.identityCriteriaType=W}),e.qZA(),e.TgZ(3,"mat-form-field",17),e.TgZ(4,"input",33),e.NdJ("ngModelChange",function(W){return e.CHM(l).$implicit.amountValue=W}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",23),e.NdJ("valueChange",function(W){return e.CHM(l).$implicit.unit=W}),e.qZA(),e.TgZ(6,"div",34),e.TgZ(7,"button",4),e.NdJ("click",function(){var Le=e.CHM(l).index,rt=e.oxw();return rt.confirmDeleteIdentityCriteria(rt.impuritiesDetailsIndex,Le)}),e.TgZ(8,"mat-icon"),e._uU(9,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index;e.xp6(2),e.Q6J("model",a.identityCriteriaType),e.xp6(2),e.Q6J("ngModel",a.amountValue),e.xp6(1),e.Q6J("model",a.unit),e.xp6(2),e.MGl("matTooltip","Delete Identity Criteria ",x+1,"")}}var wo=function(){return["/substances/register/chemical"]},qc=function(){return["/structure-search"]},Zf=function(){var m=function(){function D(l,a,x,O){(0,P.Z)(this,D),this.impuritiesService=l,this.loadingService=a,this.authService=x,this.dialog=O,this.subRelationship=[],this.isLoading=!1}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"relatedSubstanceUpdated",value:function(a){null!=a&&(this.impuritiesDetails.relatedSubstanceUuid=a.uuid,this.impuritiesDetails.relatedSubstanceUnii=a.approvalID)}},{key:"addNewImpurities",value:function(){this.impuritiesService.addNewImpuritiesDetails(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,{identityCriteriaList:[]})}},{key:"addNewIdentityCriteria",value:function(){this.impuritiesDetails.identityCriteriaList.unshift({})}},{key:"confirmDeleteImpuritiesDetails",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Impurities "+(this.impuritiesDetailsIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteImpuritiesDetails()})}},{key:"deleteImpuritiesDetails",value:function(){this.impuritiesService.deleteImpuritiesDetails(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesDetailsIndex)}},{key:"confirmDeleteIdentityCriteria",value:function(a,x){var O=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Identity Criteria "+(x+1)+"?"}}).afterClosed().subscribe(function(Le){Le&&!0===Le&&O.deleteIdentityCriteria(x)})}},{key:"deleteIdentityCriteria",value:function(a){this.impuritiesService.deleteIdentityCriteria(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesDetailsIndex,a)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(js.q),e.Y36(wt.b),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-details-form"]],inputs:{impuritiesDetails:"impuritiesDetails",impuritiesDetailsIndex:"impuritiesDetailsIndex",impuritiesTestIndex:"impuritiesTestIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex",relatedSubstanceUuid:"relatedSubstanceUuid"},decls:42,vars:16,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft105px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"margintop20px","bordergray"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Related Substance","header","Related Substance",1,"textaligncenter",3,"hideImage","subuuid","selectionUpdated"],["class","textaligncenter font11px colororange",4,"ngIf"],[1,"divflex"],[1,"col","marginleft50px"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Source Impurity Name","name","sourceImpurityName",3,"ngModel","ngModelChange"],["domain","IMPURITIES_IMPURITY_TYPE","title","Impurity Type","name","impurityType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],[1,"flex-container","margintop10px","marginleftneg7px"],[1,"width25percent","width160px","padbottom10px","marginright10px"],["mat-raised-button","","color","primary","matTooltip","Add Identity Criteria",3,"click"],[1,"width75percent"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"textaligncenter","font11px","colororange"],[1,"marginbottom10px"],[1,"form-row","padleft7px"],["domain","IMPURITIES_IDENTITY_CRITERIA_TYPE","title","Identity Criteria Type","name","identityCriteriaType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Amount Value","name","amountValue",3,"ngModel","ngModelChange"],[1,"col-3-1","marginleftneg40px",2,"margin-left","-40px"]],template:function(l,a){1&l&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return a.confirmDeleteImpuritiesDetails()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e.TgZ(13,"app-substance-selector",8),e.NdJ("selectionUpdated",function(O){return a.relatedSubstanceUpdated(O)}),e.qZA(),e.YNc(14,Ef,2,1,"div",9),e.TgZ(15,"div",10),e.TgZ(16,"div",11),e.TgZ(17,"a",12),e.TgZ(18,"span",13),e._uU(19,"Register New"),e.qZA(),e.qZA(),e._uU(20," \xa0\xa0\xa0\xa0\xa0 "),e.TgZ(21,"a",14),e.TgZ(22,"span",13),e._uU(23,"Search By Structure"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(24,"div",15),e.TgZ(25,"div",16),e.TgZ(26,"mat-form-field",17),e.TgZ(27,"input",18),e.NdJ("ngModelChange",function(O){return a.impuritiesDetails.sourceImpurityName=O}),e.qZA(),e.qZA(),e.TgZ(28,"app-cv-input",19),e.NdJ("valueChange",function(O){return a.impuritiesDetails.impurityType=O}),e.qZA(),e.TgZ(29,"mat-form-field",17),e.TgZ(30,"textarea",20),e.NdJ("ngModelChange",function(O){return a.impuritiesDetails.comments=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",16),e.TgZ(32,"app-cv-input",21),e.NdJ("valueChange",function(O){return a.impuritiesDetails.limitType=O}),e.qZA(),e.TgZ(33,"mat-form-field",17),e.TgZ(34,"input",22),e.NdJ("ngModelChange",function(O){return a.impuritiesDetails.limitValue=O}),e.qZA(),e.qZA(),e.TgZ(35,"app-cv-input",23),e.NdJ("valueChange",function(O){return a.impuritiesDetails.unit=O}),e.qZA(),e.qZA(),e.TgZ(36,"div",24),e.TgZ(37,"div",25),e.TgZ(38,"button",26),e.NdJ("click",function(){return a.addNewIdentityCriteria()}),e._uU(39," Add Identity Criteria "),e.qZA(),e.qZA(),e.TgZ(40,"div",27),e.YNc(41,os,10,4,"div",28),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&l&&(e.xp6(4),e.hij("Impurities\xa0",a.impuritiesDetailsIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Impurities ",a.impuritiesDetailsIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",a.impuritiesDetails.relatedSubstanceUuid),e.xp6(1),e.Q6J("ngIf",a.impuritiesDetails.relatedSubstanceUnii),e.xp6(3),e.Q6J("routerLink",e.DdM(14,wo)),e.xp6(4),e.Q6J("routerLink",e.DdM(15,qc)),e.xp6(6),e.Q6J("ngModel",a.impuritiesDetails.sourceImpurityName),e.xp6(1),e.Q6J("model",a.impuritiesDetails.impurityType),e.xp6(2),e.Q6J("ngModel",a.impuritiesDetails.comments),e.xp6(2),e.Q6J("model",a.impuritiesDetails.limitType),e.xp6(2),e.Q6J("ngModel",a.impuritiesDetails.limitValue),e.xp6(1),e.Q6J("model",a.impuritiesDetails.unit),e.xp6(6),e.Q6J("ngForOf",a.impuritiesDetails.identityCriteriaList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-2[_ngcontent-%COMP%]{width:calc((100% - 15px) / 1.5);margin-right:0}.col-3-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:10px}.col-4-1-short[_ngcontent-%COMP%]{width:calc((100% - 240px)/4 - 5px);margin-right:30px}.col-4-1-short[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.marginright10px[_ngcontent-%COMP%]{margin-right:10px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft105px[_ngcontent-%COMP%]{padding-left:105px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid blue;padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width160px[_ngcontent-%COMP%]{width:160px;min-width:160px;max-width:160px}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorblue[_ngcontent-%COMP%]{color:#00f}colororange[_ngcontent-%COMP%]{color:#9e3813}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.tabStyle[_ngcontent-%COMP%]{width:180px;height:30px;border:1px solid gray;background:#e9f3d9;background-image:linear-gradient(to bottom,#fff,#b2b2b2);-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:#0857d6;padding-top:5px;padding-right:5px;text-align:center} .related-substance img{max-width:125px!important;margin:auto}"]}),m}(),Hh=function(D){return["/impurities",D,"edit"]};function kf(m,D){if(1&m&&(e.TgZ(0,"a",20),e._UZ(1,"mat-icon",21),e.qZA()),2&m){var l=e.oxw(3);e.Q6J("routerLink",e.VKq(1,Hh,l.impurities.id))}}var uh=function(){return["/impurities/register"]},dh=function(D){return{copy:D}};function If(m,D){if(1&m&&(e.TgZ(0,"a",22),e._UZ(1,"mat-icon",23),e.qZA()),2&m){var l=e.oxw(3);e.Q6J("routerLink",e.DdM(2,uh))("queryParams",e.VKq(3,dh,l.impurities.id))}}function Js(m,D){1&m&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e.qZA())}function ua(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(2),e.Oqu(l.approvalID)}}function Lf(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"img",33),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",l.substanceUuid)}}function Kr(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(2),e.Oqu(l.relatedSubstanceUnii)}}var _c=function(D){return["/substances",D]};function ph(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"a",27),e._uU(3),e.qZA(),e.qZA(),e.YNc(4,Kr,3,1,"div",0),e._UZ(5,"img",37),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,_c,l.relatedSubstanceUuid)),e.xp6(1),e.Oqu(l.substanceName),e.xp6(1),e.Q6J("ngIf",l.relatedSubstanceUnii),e.xp6(1),e.Q6J("entityId",l.relatedSubstanceUuid)}}function La(m,D){1&m&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.qZA())}function jr(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,La,2,0,"span",0),e.TgZ(2,"b"),e._uU(3,"Criteria Type:"),e.qZA(),e._uU(4),e._UZ(5,"br"),e.TgZ(6,"b"),e._uU(7,"Amount Value:"),e.qZA(),e._uU(8),e._UZ(9,"br"),e.TgZ(10,"b"),e._uU(11,"Unit:"),e.qZA(),e._uU(12),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(1),e.Q6J("ngIf",a>0),e.xp6(3),e.hij("\xa0",l.identityCriteriaType,""),e.xp6(4),e.hij("\xa0",l.amountValue,""),e.xp6(4),e.hij("\xa0",l.unit," ")}}function bl(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td",36),e.YNc(4,ph,6,6,"div",0),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e.YNc(18,jr,13,4,"div",29),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Q6J("ngIf",l.relatedSubstanceUuid),e.xp6(2),e.Oqu(l.sourceImpurityName),e.xp6(2),e.Oqu(l.impurityType),e.xp6(2),e.Oqu(l.limitType),e.xp6(2),e.Oqu(l.limitValue),e.xp6(2),e.Oqu(l.unit),e.xp6(2),e.Oqu(l.comments),e.xp6(2),e.Q6J("ngForOf",l.identityCriteriaList)}}function Gu(m,D){1&m&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.qZA())}function fh(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Gu,2,0,"span",0),e.TgZ(2,"b"),e._uU(3,"Criteria Type:"),e.qZA(),e._uU(4),e._UZ(5,"br"),e.TgZ(6,"b"),e._uU(7,"Amount Value:"),e.qZA(),e._uU(8),e._UZ(9,"br"),e.TgZ(10,"b"),e._uU(11,"Unit:"),e.qZA(),e._uU(12),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(1),e.Q6J("ngIf",a>0),e.xp6(3),e.hij("\xa0",l.identityCriteriaType,""),e.xp6(4),e.hij("\xa0",l.amountValue,""),e.xp6(4),e.hij("\xa0",l.unit," ")}}function pp(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e.YNc(16,fh,13,4,"div",29),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Oqu(l.impurityType),e.xp6(2),e.Oqu(l.testType),e.xp6(2),e.Oqu(l.limitType),e.xp6(2),e.Oqu(l.limitValue),e.xp6(2),e.Oqu(l.unit),e.xp6(2),e.Oqu(l.comments),e.xp6(2),e.Q6J("ngForOf",l.identityCriteriaList)}}function jh(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"fieldset",34),e.TgZ(2,"legend",34),e._uU(3),e.TgZ(4,"span",35),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"div",10),e.TgZ(7,"div",11),e.TgZ(8,"div",12),e._uU(9," Test: "),e.qZA(),e.TgZ(10,"div",13),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",11),e.TgZ(13,"div",12),e._uU(14," Test Type: "),e.qZA(),e.TgZ(15,"div",13),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.TgZ(17,"div",10),e.TgZ(18,"div",11),e.TgZ(19,"div",12),e._uU(20," Test Description: "),e.qZA(),e.TgZ(21,"div",13),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",11),e.TgZ(24,"div",12),e._uU(25," Comments: "),e.qZA(),e.TgZ(26,"div",13),e._uU(27),e.qZA(),e.qZA(),e.qZA(),e.TgZ(28,"div",30),e.TgZ(29,"mat-card",4),e.TgZ(30,"mat-card-title",16),e._uU(31),e.qZA(),e.TgZ(32,"mat-card-content"),e.TgZ(33,"table",31),e.TgZ(34,"thead"),e.TgZ(35,"tr"),e.TgZ(36,"th"),e._uU(37,"#"),e.qZA(),e.TgZ(38,"th",32),e._uU(39,"Related Substance"),e.qZA(),e.TgZ(40,"th"),e._uU(41,"Source Impurity Name"),e.qZA(),e.TgZ(42,"th"),e._uU(43,"Impurity Type"),e.qZA(),e.TgZ(44,"th"),e._uU(45,"Limit Type"),e.qZA(),e.TgZ(46,"th"),e._uU(47,"Limit Value"),e.qZA(),e.TgZ(48,"th"),e._uU(49,"Unit"),e.qZA(),e.TgZ(50,"th"),e._uU(51,"Comments"),e.qZA(),e.TgZ(52,"th"),e._uU(53,"Identity Criteria"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(54,"tbody"),e.YNc(55,bl,19,9,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(56,"div",30),e.TgZ(57,"mat-card",4),e.TgZ(58,"mat-card-title",16),e._uU(59),e.qZA(),e.TgZ(60,"mat-card-content"),e.TgZ(61,"table",31),e.TgZ(62,"thead"),e.TgZ(63,"tr"),e.TgZ(64,"th"),e._uU(65,"#"),e.qZA(),e.TgZ(66,"th"),e._uU(67,"Impurity Type"),e.qZA(),e.TgZ(68,"th"),e._uU(69,"Test Type"),e.qZA(),e.TgZ(70,"th"),e._uU(71,"Limit Type"),e.qZA(),e.TgZ(72,"th"),e._uU(73,"Limit Value"),e.qZA(),e.TgZ(74,"th"),e._uU(75,"Unit"),e.qZA(),e.TgZ(76,"th"),e._uU(77,"Comments"),e.qZA(),e.TgZ(78,"th"),e._uU(79,"Identity Criteria"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(80,"tbody"),e.YNc(81,pp,17,8,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(82,"br"),e._UZ(83,"br"),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.oxw().$implicit;e.xp6(3),e.AsE(" Test ",a+1," of ",x.impuritiesTestList.length," "),e.xp6(2),e.hij("(",x.substanceName,")"),e.xp6(6),e.hij(" ",l.test," "),e.xp6(5),e.hij(" ",l.testType," "),e.xp6(6),e.hij(" ",l.testDescription," "),e.xp6(5),e.hij(" ",l.comments," "),e.xp6(4),e.hij(" Impurities (",l.impuritiesDetailsList.length,") "),e.xp6(24),e.Q6J("ngForOf",l.impuritiesDetailsList),e.xp6(4),e.hij(" Unspecified Impurities (",l.impuritiesUnspecifiedList.length,") "),e.xp6(22),e.Q6J("ngForOf",l.impuritiesUnspecifiedList)}}function mh(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(2),e.Oqu(l.relatedSubstanceUnii)}}function Ff(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"a",27),e._uU(3),e.qZA(),e.qZA(),e.YNc(4,mh,3,1,"div",0),e._UZ(5,"img",37),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,_c,l.relatedSubstanceUuid)),e.xp6(1),e.Oqu(l.substanceName),e.xp6(1),e.Q6J("ngIf",l.relatedSubstanceUnii),e.xp6(1),e.Q6J("entityId",l.relatedSubstanceUuid)}}function Nf(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td",36),e.YNc(4,Ff,6,6,"div",0),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Q6J("ngIf",l.relatedSubstanceUuid),e.xp6(2),e.Oqu(l.pharmaceuticalLimit),e.xp6(2),e.Oqu(l.testType),e.xp6(2),e.Oqu(l.limitType),e.xp6(2),e.Oqu(l.limitValue),e.xp6(2),e.Oqu(l.unit),e.xp6(2),e.Oqu(l.comments)}}function Rf(m,D){if(1&m&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&m){var l=e.oxw(2).$implicit;e.xp6(2),e.Oqu(l.relatedSubstanceUnii)}}function Uf(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"a",27),e._uU(3),e.qZA(),e.qZA(),e.YNc(4,Rf,3,1,"div",0),e._UZ(5,"img",37),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,_c,l.relatedSubstanceUuid)),e.xp6(1),e.Oqu(l.substanceName),e.xp6(1),e.Q6J("ngIf",l.relatedSubstanceUnii),e.xp6(1),e.Q6J("entityId",l.relatedSubstanceUuid)}}function Bf(m,D){if(1&m&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td",36),e.YNc(4,Uf,6,6,"div",0),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index;e.xp6(2),e.Oqu(a+1),e.xp6(2),e.Q6J("ngIf",l.relatedSubstanceUuid),e.xp6(2),e.Oqu(l.testType),e.xp6(2),e.Oqu(l.limitType),e.xp6(2),e.Oqu(l.limitValue),e.xp6(2),e.Oqu(l.unit),e.xp6(2),e.Oqu(l.comments)}}function Il(m,D){if(1&m&&(e.TgZ(0,"div",24),e.YNc(1,Js,4,0,"div",0),e.TgZ(2,"div",25),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",4),e.TgZ(6,"mat-card"),e.TgZ(7,"mat-card-content"),e.TgZ(8,"div",26),e.TgZ(9,"div",11),e.TgZ(10,"div",12),e._uU(11," Substance Name: "),e.qZA(),e.TgZ(12,"div",13),e.TgZ(13,"div"),e.TgZ(14,"a",27),e.TgZ(15,"span",28),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.YNc(17,ua,3,1,"div",0),e.YNc(18,Lf,2,1,"div",0),e.qZA(),e.qZA(),e.TgZ(19,"div",11),e.TgZ(20,"div",12),e._uU(21," Assay Low:"),e._UZ(22,"br"),e._UZ(23,"br"),e._uU(24," Assay High:"),e._UZ(25,"br"),e._UZ(26,"br"),e._uU(27," Unit:"),e._UZ(28,"br"),e._UZ(29,"br"),e._uU(30," Comments:"),e._UZ(31,"br"),e.qZA(),e.TgZ(32,"div",13),e._uU(33),e._UZ(34,"br"),e._UZ(35,"br"),e._uU(36),e._UZ(37,"br"),e._UZ(38,"br"),e._uU(39),e._UZ(40,"br"),e._UZ(41,"br"),e._uU(42),e._UZ(43,"br"),e.qZA(),e.qZA(),e.qZA(),e.YNc(44,jh,84,11,"div",29),e.TgZ(45,"div",30),e.TgZ(46,"mat-card",4),e.TgZ(47,"mat-card-title",16),e._uU(48),e.qZA(),e.TgZ(49,"mat-card-content"),e.TgZ(50,"table",31),e.TgZ(51,"thead"),e.TgZ(52,"tr"),e.TgZ(53,"th"),e._uU(54,"#"),e.qZA(),e.TgZ(55,"th",32),e._uU(56,"Related Substance"),e.qZA(),e.TgZ(57,"th"),e._uU(58,"Pharmaceutical Limit"),e.qZA(),e.TgZ(59,"th"),e._uU(60,"Test Type"),e.qZA(),e.TgZ(61,"th"),e._uU(62,"Limit Type"),e.qZA(),e.TgZ(63,"th"),e._uU(64,"Limit Value"),e.qZA(),e.TgZ(65,"th"),e._uU(66,"Unit"),e.qZA(),e.TgZ(67,"th"),e._uU(68,"Comments"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"tbody"),e.YNc(70,Nf,17,8,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(71,"div",30),e.TgZ(72,"mat-card",4),e.TgZ(73,"mat-card-title",16),e._uU(74),e.qZA(),e.TgZ(75,"mat-card-content"),e.TgZ(76,"table",31),e.TgZ(77,"thead"),e.TgZ(78,"tr"),e.TgZ(79,"th"),e._uU(80,"#"),e.qZA(),e.TgZ(81,"th",32),e._uU(82,"Related Substance"),e.qZA(),e.TgZ(83,"th"),e._uU(84,"Test Type"),e.qZA(),e.TgZ(85,"th"),e._uU(86,"Limit Type"),e.qZA(),e.TgZ(87,"th"),e._uU(88,"Limit Value"),e.qZA(),e.TgZ(89,"th"),e._uU(90,"Unit"),e.qZA(),e.TgZ(91,"th"),e._uU(92,"Comments"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(93,"tbody"),e.YNc(94,Bf,15,7,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.oxw(3);e.xp6(1),e.Q6J("ngIf",a>0),e.xp6(3),e.AsE("",a+1," of ",x.impurities.impuritiesSubstanceList.length,".\xa0Impurity Substance"),e.xp6(10),e.Q6J("routerLink",e.VKq(16,_c,l.substanceUuid)),e.xp6(2),e.Oqu(l.substanceName),e.xp6(1),e.Q6J("ngIf",l.approvalID),e.xp6(1),e.Q6J("ngIf",l.substanceUuid),e.xp6(15),e.hij(" ",l.low,""),e.xp6(3),e.hij(" ",l.high,""),e.xp6(3),e.hij(" ",l.unit,""),e.xp6(3),e.hij(" ",l.comments,""),e.xp6(2),e.Q6J("ngForOf",l.impuritiesTestList),e.xp6(4),e.hij(" Residual Solvents Impurities (",l.impuritiesResidualSolventsList.length,") "),e.xp6(22),e.Q6J("ngForOf",l.impuritiesResidualSolventsList),e.xp6(4),e.hij(" Inorganic Impurities (",l.impuritiesInorganicList.length,") "),e.xp6(20),e.Q6J("ngForOf",l.impuritiesInorganicList)}}function Ku(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e.TgZ(4,"div",5),e._uU(5," Impurities Details\xa0\xa0\xa0\xa0 "),e.YNc(6,kf,2,3,"a",6),e.YNc(7,If,2,5,"a",7),e.qZA(),e.TgZ(8,"div",8),e.TgZ(9,"span",9),e._uU(10,"Created By:"),e.qZA(),e._uU(11),e.TgZ(12,"span",9),e._uU(13,"Create Date:"),e.qZA(),e._uU(14),e.ALo(15,"date"),e.TgZ(16,"span",9),e._uU(17,"Modified By:"),e.qZA(),e._uU(18),e.TgZ(19,"span",9),e._uU(20,"Modify Date:"),e.qZA(),e._uU(21),e.ALo(22,"date"),e.qZA(),e.qZA(),e.TgZ(23,"mat-card-content"),e._UZ(24,"br"),e.TgZ(25,"div",10),e.TgZ(26,"div",11),e.TgZ(27,"div",12),e._uU(28," Source Type: "),e.qZA(),e.TgZ(29,"div",13),e._uU(30),e.qZA(),e.qZA(),e.TgZ(31,"div",11),e.TgZ(32,"div",12),e._uU(33," Source: "),e.qZA(),e.TgZ(34,"div",13),e._uU(35),e.qZA(),e.qZA(),e.qZA(),e.TgZ(36,"div",10),e.TgZ(37,"div",11),e.TgZ(38,"div",12),e._uU(39," Source ID: "),e.qZA(),e.TgZ(40,"div",13),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",11),e.TgZ(43,"div",12),e._uU(44," Type: "),e.qZA(),e.TgZ(45,"div",13),e._uU(46),e.qZA(),e.qZA(),e.qZA(),e.TgZ(47,"div",10),e.TgZ(48,"div",11),e.TgZ(49,"div",12),e._uU(50," Spec Type: "),e.qZA(),e.TgZ(51,"div",13),e._uU(52),e.qZA(),e.qZA(),e.TgZ(53,"div",11),e.TgZ(54,"div",12),e._uU(55," Product ID: "),e.qZA(),e.TgZ(56,"div",13),e._uU(57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(58,"div",10),e.TgZ(59,"div",11),e.TgZ(60,"div",12),e._uU(61," Date Type: "),e.qZA(),e.TgZ(62,"div",13),e._uU(63),e.qZA(),e.qZA(),e.TgZ(64,"div",11),e.TgZ(65,"div",12),e._uU(66," Date Type Date: "),e.qZA(),e.TgZ(67,"div",13),e._uU(68),e.ALo(69,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(70,"div",10),e.TgZ(71,"div",11),e.TgZ(72,"div",12),e._uU(73," Product/Substance Name: "),e.qZA(),e.TgZ(74,"div",13),e._uU(75),e.qZA(),e.qZA(),e.TgZ(76,"div",11),e.TgZ(77,"div",12),e._uU(78," Submitter Name: "),e.qZA(),e.TgZ(79,"div",13),e._uU(80),e.qZA(),e.qZA(),e.qZA(),e.YNc(81,Il,95,18,"div",14),e.TgZ(82,"div",15),e.TgZ(83,"mat-card",4),e.TgZ(84,"mat-card-title",16),e._uU(85," Total Impurities "),e.qZA(),e.TgZ(86,"mat-card-content"),e.TgZ(87,"div",10),e.TgZ(88,"div",11),e.TgZ(89,"div",12),e._uU(90," Test Type: "),e.qZA(),e.TgZ(91,"div",13),e._uU(92),e.qZA(),e.qZA(),e.TgZ(93,"div",11),e.TgZ(94,"div",12),e._uU(95," Limit Value: "),e.qZA(),e.TgZ(96,"div",13),e._uU(97),e.qZA(),e.qZA(),e.qZA(),e.TgZ(98,"div",10),e.TgZ(99,"div",11),e.TgZ(100,"div",12),e._uU(101," Amount Value: "),e.qZA(),e.TgZ(102,"div",13),e._uU(103),e.qZA(),e.qZA(),e.TgZ(104,"div",11),e.TgZ(105,"div",12),e._uU(106," Limit Type: "),e.qZA(),e.TgZ(107,"div",13),e._uU(108),e.qZA(),e.qZA(),e.qZA(),e.TgZ(109,"div",10),e.TgZ(110,"div",17),e.TgZ(111,"div",18),e._uU(112," Comments: "),e.qZA(),e.TgZ(113,"div",19),e._uU(114),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(6),e.Q6J("ngIf",l.isAdmin),e.xp6(1),e.Q6J("ngIf",l.isAdmin),e.xp6(4),e.hij(" ",l.impurities.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij("",e.xi3(15,22,l.impurities.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",l.impurities.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(22,25,l.impurities.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," "),e.xp6(9),e.hij(" ",l.impurities.sourceType," "),e.xp6(5),e.hij(" ",l.impurities.source," "),e.xp6(6),e.hij(" ",l.impurities.sourceId," "),e.xp6(5),e.hij(" ",l.impurities.type," "),e.xp6(6),e.hij(" ",l.impurities.specType," "),e.xp6(5),e.hij(" ",l.impurities.productId," "),e.xp6(6),e.hij(" ",l.impurities.dateType," "),e.xp6(5),e.hij(" ",e.xi3(69,28,l.impurities.dateTypeDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",l.impurities.productSubstanceName," "),e.xp6(5),e.hij(" ",l.impurities.submitterName," "),e.xp6(1),e.Q6J("ngForOf",l.impurities.impuritiesSubstanceList),e.xp6(11),e.hij(" ",l.impurities.impuritiesTotal.testType," "),e.xp6(5),e.hij(" ",l.impurities.impuritiesTotal.limitValue," "),e.xp6(6),e.hij(" ",l.impurities.impuritiesTotal.amountValue," "),e.xp6(5),e.hij(" ",l.impurities.impuritiesTotal.limitType," "),e.xp6(6),e.hij(" ",l.impurities.impuritiesTotal.comments," ")}}function hh(m,D){1&m&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e.TgZ(4,"div",38),e._uU(5,"There is no Impurities Data found."),e.qZA())}function _h(m,D){if(1&m&&(e.TgZ(0,"div"),e.YNc(1,Ku,115,31,"div",1),e.YNc(2,hh,6,0,"ng-template",null,2,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw();e.xp6(1),e.Q6J("ngIf",a.impurities.id)("ngIfElse",l)}}var Yf=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei){(0,P.Z)(this,D),this.activatedRoute=l,this.router=a,this.authService=x,this.utilsService=O,this.loadingService=W,this.gaService=Le,this.mainNotificationService=rt,this.impuritiesService=Ht,this.generalService=In,this.titleService=ei,this.substanceName="",this.isAdmin=!1,this.message="",this.subscriptions=[]}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.loadingService.setLoading(!0);var x=this.authService.hasAnyRolesAsync("admin","updater","superUpdater").subscribe(function(O){a.isAdmin=O});this.subscriptions.push(x),this.id=this.activatedRoute.snapshot.params.id,null!=this.id?this.getImpurities():this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()})}},{key:"getImpurities",value:function(){var a=this,x=this.impuritiesService.getImpurities(this.id).subscribe(function(O){a.impurities=O,Object.keys(a.impurities).length>0&&(a.titleService.setTitle("Impurities Details"),a.impurities.impuritiesSubstanceList.forEach(function(W,Le){if(W.substanceUuid){var rt=a.generalService.getSubstanceBySubstanceUuid(W.substanceUuid).subscribe(function(Ht){Ht&&(W.substanceName=Ht._name,W.approvalID=Ht.approvalID)});a.subscriptions.push(rt)}}),a.impurities.impuritiesSubstanceList.forEach(function(W){W.impuritiesTestList.forEach(function(Le){Le.impuritiesDetailsList.forEach(function(rt){if(rt.relatedSubstanceUuid){var Ht=a.generalService.getSubstanceBySubstanceUuid(rt.relatedSubstanceUuid).subscribe(function(In){In&&(rt.substanceName=In._name,rt.relatedSubstanceUnii=In.approvalID)});a.subscriptions.push(Ht)}})})}),a.impurities.impuritiesSubstanceList.forEach(function(W){W.impuritiesResidualSolventsList.forEach(function(Le){if(Le.relatedSubstanceUuid){var rt=a.generalService.getSubstanceBySubstanceUuid(Le.relatedSubstanceUuid).subscribe(function(Ht){Ht&&(Le.substanceName=Ht._name,Le.relatedSubstanceUnii=Ht.approvalID)});a.subscriptions.push(rt)}})}),a.impurities.impuritiesSubstanceList.forEach(function(W){W.impuritiesInorganicList.forEach(function(Le){if(Le.relatedSubstanceUuid){var rt=a.impuritiesService.getSubstanceDetailsBySubstanceId(Le.relatedSubstanceUuid).subscribe(function(Ht){Ht&&(Le.substanceName=Ht.name,Le.relatedSubstanceUnii=Ht.unii)});a.subscriptions.push(rt)}})}))},function(O){a.handleSubstanceRetrivalError()});this.subscriptions.push(x)}},{key:"getSubstancePreferredName",value:function(a){var O=this.generalService.getSubstanceBySubstanceUuid(a).subscribe(function(W){});this.subscriptions.push(O)}},{key:"handleSubstanceRetrivalError",value:function(){var a=this;this.loadingService.setLoading(!1),this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:Tn.k.error,milisecondsToShow:4e3}),setTimeout(function(){a.router.navigate(["/browse-substance"])},5e3)}},{key:"getSafeStructureImgUrl",value:function(a){var x=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(a,x,!0)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(d.gz),e.Y36(d.F0),e.Y36(Ie.e),e.Y36(fi.F),e.Y36(wt.b),e.Y36(Ma.$),e.Y36(jt.a),e.Y36(js.q),e.Y36(A.m),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-details"]],decls:6,vars:1,consts:[[4,"ngIf"],[4,"ngIf","ngIfElse"],["noRecord",""],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"width300px"],["target","_blank","matTooltip","Edit GSRS Impurities Record",3,"routerLink",4,"ngIf"],["mat-icon-button","","matTooltip","copy Impurities to new registration form",3,"routerLink","queryParams",4,"ngIf"],[1,"width60percent","font11px"],[1,"colorgray"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],["class","margintop30px marginbottom30px",4,"ngFor","ngForOf"],[1,"details-container"],[1,"title2"],[1,"row-property-2"],[1,"row-property-key-2"],[1,"row-property-value-2"],["target","_blank","matTooltip","Edit GSRS Impurities Record",3,"routerLink"],["svgIcon","edit"],["mat-icon-button","","matTooltip","copy Impurities to new registration form",3,"routerLink","queryParams"],["svgIcon","file_copy"],[1,"margintop30px","marginbottom30px"],[1,"headerstyle","title2","padleft20px"],[1,"row-without-border"],["target","_blank",3,"routerLink"],[1,"colororange","font16px","fontbold"],[4,"ngFor","ngForOf"],[1,"details-container","margintop30px"],[1,"blueTable"],[1,"width200px"],["appSubstanceImage","",1,"structure-img",3,"entityId"],[1,"border"],[1,"font11px"],[1,"textaligncenter","width200px"],["appSubstanceImage","",1,"structure-image",3,"entityId"],[1,"colororange","padtop50px","padleft50px"]],template:function(l,a){1&l&&(e._UZ(0,"br"),e.YNc(1,_h,4,2,"div",0),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._UZ(5,"br")),2&l&&(e.xp6(1),e.Q6J("ngIf",a.impurities))},directives:[p.O5,s.a8,s.n5,d.yS,f.gM,I.Hw,T.zs,s.dn,p.sg,Be.m],pipes:[p.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flexgrow[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;min-height:60%}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px rgba(0,0,0,.12)}.row-without-border[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:7px;font-size:12px;font-weight:600}.row-property-value[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:20%;max-width:20%;padding:6px;font-size:12px;font-weight:600}.row-property-value-2[_ngcontent-%COMP%]{min-width:80%;max-width:80%;padding:6px;font-size:12px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:25%}.row-property-key-4[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:6px;font-size:12px;font-weight:600}.row-property-value-4[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:#0857d6;padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px;color:#0857d6}.headerstyle[_ngcontent-%COMP%]{border:1px solid gray;height:30px;background-color:#f0edd2}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.marginbottom30px[_ngcontent-%COMP%]{margin-bottom:30px}.marginbottom80px[_ngcontent-%COMP%]{margin-bottom:80px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font20px[_ngcontent-%COMP%]{font-size:20px}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colorgray[_ngcontent-%COMP%]{color:gray}.colororange[_ngcontent-%COMP%]{color:#e55913}.colorblue[_ngcontent-%COMP%]{color:#00f}.colorgreen[_ngcontent-%COMP%]{color:green}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderorange[_ngcontent-%COMP%]{border:1px solid orangered}.colororange[_ngcontent-%COMP%]{color:#e55913}.width40px[_ngcontent-%COMP%]{width:40px;max-width:40px}.width120px[_ngcontent-%COMP%]{width:120px;max-width:120px}.width200px[_ngcontent-%COMP%]{width:200px;max-width:200px}.width300px[_ngcontent-%COMP%]{width:300px;max-width:300px}.width45percent[_ngcontent-%COMP%]{width:45%}.width50percent[_ngcontent-%COMP%]{width:50%}.width60percent[_ngcontent-%COMP%]{width:60%;max-width:60%}.textalignleft[_ngcontent-%COMP%]{text-align:left}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.backgroundblue[_ngcontent-%COMP%]{background-color:#00f}fieldset.border[_ngcontent-%COMP%]{border:solid 2px #ac3f3f!important;padding:0 10px 10px;border-bottom:none}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:14px;color:#700819;font-family:Verdana;font-weight:700;padding:10px;margin-bottom:0;border:2px solid orangered;background-color:#eff8ff}fieldset.border2[_ngcontent-%COMP%]{border:solid 1px #e0e0e0!important;padding:3px 10px 8px;border-bottom:none}legend.border2[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:10px;color:#174793;font-family:Verdana;font-weight:700;margin-bottom:0}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid #1C6EA4;background-color:#faf9f6;width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid #b3b1b1;padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:#f1f0f0}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:#ebece8;border-bottom:1px solid #444444}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:#1a1a1a;border-left:1px solid #D0E4F5;padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#fff;background:#D0E4F5;border-top:2px solid #444444}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:#1C6EA4;color:#fff;padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid red}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px rgba(0,0,0,.12)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px rgba(0,0,0,.12)}}"]}),m}();function fp(m,D){1&m&&(e.TgZ(0,"span"),e._UZ(1,"hr"),e._UZ(2,"br"),e.qZA())}function $u(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",18),e.TgZ(1,"div",19),e.TgZ(2,"app-cv-input",20),e.NdJ("valueChange",function(W){return e.CHM(l).$implicit.identityCriteriaType=W}),e.qZA(),e.TgZ(3,"mat-form-field",21),e.TgZ(4,"input",22),e.NdJ("ngModelChange",function(W){return e.CHM(l).$implicit.amountValue=W}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",23),e.NdJ("valueChange",function(W){return e.CHM(l).$implicit.unit=W}),e.qZA(),e.TgZ(6,"div",21),e.TgZ(7,"button",11),e.NdJ("click",function(){var Le=e.CHM(l).index;return e.oxw().confirmDeleteIdentityCriteria(Le)}),e.TgZ(8,"mat-icon"),e._uU(9,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index;e.xp6(2),e.Q6J("model",a.identityCriteriaType),e.xp6(2),e.Q6J("ngModel",a.amountValue),e.xp6(1),e.Q6J("model",a.unit),e.xp6(2),e.MGl("matTooltip","Delete Identity Criteria ",x+1,"")}}var Xu=function(){var m=function(){function D(l,a,x,O){(0,P.Z)(this,D),this.impuritiesService=l,this.loadingService=a,this.authService=x,this.dialog=O,this.subRelationship=[],this.isLoading=!1}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"confirmDeleteImpuritiesUnspecified",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delele Unspecified Impurities "+(this.impuritiesUnspecifiedIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteImpuritiesUnspecified()})}},{key:"deleteImpuritiesUnspecified",value:function(){this.impuritiesService.deleteImpuritiesUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesUnspecifiedIndex)}},{key:"addNewIdentityCriteria",value:function(){this.impuritiesService.addNewIdentityCriteriaUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesUnspecifiedIndex)}},{key:"confirmDeleteIdentityCriteria",value:function(a){var x=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delele Identity Critieria "+(a+1)+"?"}}).afterClosed().subscribe(function(W){W&&!0===W&&x.deleteIdentityCriteria(a)})}},{key:"deleteIdentityCriteria",value:function(a){this.impuritiesService.deleteIdentityCriteriaUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesUnspecifiedIndex,a)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(js.q),e.Y36(wt.b),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-unspecified-form"]],inputs:{impuritiesUnspecified:"impuritiesUnspecified",impuritiesUnspecifiedIndex:"impuritiesUnspecifiedIndex",impuritiesTestIndex:"impuritiesTestIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:22,vars:9,consts:[[4,"ngIf"],[1,"marginleftneg7px"],[1,"form-row"],["domain","IMPURITIES_IMPURITY_TYPE","title","Impurity Type","name","impurityType",1,"col-6-1",3,"model","valueChange"],["domain","IMPURITIES_TEST_TYPE","title","Test Type","name","testType",1,"col-6-1",3,"model","valueChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-6-1",3,"model","valueChange"],[1,"col-6-1"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-6-1",3,"model","valueChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],[1,"marginleftneg7px",2,"margin-left","-40px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"flex-container","margintop10px","marginleftneg7px"],[1,"width25percent","padbottom10px"],["mat-raised-button","","color","primary","matTooltip","Add Identity Criteria",3,"click"],["svgIcon","add_circle_outline"],[1,"width75percent"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"marginbottom10px"],[1,"form-row","padleft7px"],["domain","IMPURITIES_IDENTITY_CRITERIA_TYPE","title","Identity Criteria Type","name","identityCriteriaType",1,"col-3-1",3,"model","valueChange"],[1,"col-3-1"],["matInput","","placeholder","Amount Value","name","amountValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-4-1",3,"model","valueChange"]],template:function(l,a){1&l&&(e.YNc(0,fp,3,0,"span",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"app-cv-input",3),e.NdJ("valueChange",function(O){return a.impuritiesUnspecified.impurityType=O}),e.qZA(),e.TgZ(4,"app-cv-input",4),e.NdJ("valueChange",function(O){return a.impuritiesUnspecified.testType=O}),e.qZA(),e.TgZ(5,"app-cv-input",5),e.NdJ("valueChange",function(O){return a.impuritiesUnspecified.limitType=O}),e.qZA(),e.TgZ(6,"mat-form-field",6),e.TgZ(7,"input",7),e.NdJ("ngModelChange",function(O){return a.impuritiesUnspecified.limitValue=O}),e.qZA(),e.qZA(),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(O){return a.impuritiesUnspecified.unit=O}),e.qZA(),e.TgZ(9,"mat-form-field",6),e.TgZ(10,"textarea",9),e.NdJ("ngModelChange",function(O){return a.impuritiesUnspecified.comments=O}),e.qZA(),e.qZA(),e.TgZ(11,"div",10),e.TgZ(12,"button",11),e.NdJ("click",function(){return a.confirmDeleteImpuritiesUnspecified()}),e.TgZ(13,"mat-icon"),e._uU(14,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"div",12),e.TgZ(16,"div",13),e.TgZ(17,"button",14),e.NdJ("click",function(){return a.addNewIdentityCriteria()}),e._UZ(18,"mat-icon",15),e._uU(19,"Add Identity Criteria "),e.qZA(),e.qZA(),e.TgZ(20,"div",16),e.YNc(21,$u,10,4,"div",17),e.qZA(),e.qZA(),e.qZA()),2&l&&(e.Q6J("ngIf",a.impuritiesUnspecifiedIndex>0),e.xp6(3),e.Q6J("model",a.impuritiesUnspecified.impurityType),e.xp6(1),e.Q6J("model",a.impuritiesUnspecified.testType),e.xp6(1),e.Q6J("model",a.impuritiesUnspecified.limitType),e.xp6(2),e.Q6J("ngModel",a.impuritiesUnspecified.limitValue),e.xp6(1),e.Q6J("model",a.impuritiesUnspecified.unit),e.xp6(2),e.Q6J("ngModel",a.impuritiesUnspecified.comments),e.xp6(2),e.MGl("matTooltip","Delete Unspecified Impurities ",a.impuritiesUnspecifiedIndex+1,""),e.xp6(9),e.Q6J("ngForOf",a.impuritiesUnspecified.identityCriteriaList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 150px) / 6);margin-right:30px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 100px)/5);margin-right:25px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid blue;padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorblue[_ngcontent-%COMP%]{color:#00f}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both} .related-substance img{max-width:125px!important;margin:auto}"]}),m}(),Vc=function(){var m=function(){function D(l,a,x,O){(0,P.Z)(this,D),this.impuritiesService=l,this.loadingService=a,this.authService=x,this.dialog=O}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"addNewImpuritiesTotal",value:function(){this.impuritiesService.addNewImpuritiesTotal()}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(js.q),e.Y36(wt.b),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-total-form"]],inputs:{impuritiesTotal:"impuritiesTotal",impuritiesTotalIndex:"impuritiesTotalIndex"},decls:10,vars:5,consts:[[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Test Type","name","testType",3,"ngModel","ngModelChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-5-1",3,"model","valueChange"],[1,"col-5-1"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["matInput","","placeholder","Amount Value","name","amountValue",3,"ngModel","ngModelChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-form-field",1),e.TgZ(2,"input",2),e.NdJ("ngModelChange",function(O){return a.impuritiesTotal.testType=O}),e.qZA(),e.qZA(),e.TgZ(3,"app-cv-input",3),e.NdJ("valueChange",function(O){return a.impuritiesTotal.limitType=O}),e.qZA(),e.TgZ(4,"mat-form-field",4),e.TgZ(5,"input",5),e.NdJ("ngModelChange",function(O){return a.impuritiesTotal.limitValue=O}),e.qZA(),e.qZA(),e.TgZ(6,"mat-form-field",4),e.TgZ(7,"input",6),e.NdJ("ngModelChange",function(O){return a.impuritiesTotal.amountValue=O}),e.qZA(),e.qZA(),e.TgZ(8,"mat-form-field",4),e.TgZ(9,"textarea",7),e.NdJ("ngModelChange",function(O){return a.impuritiesTotal.comments=O}),e.qZA(),e.qZA(),e.qZA()),2&l&&(e.xp6(2),e.Q6J("ngModel",a.impuritiesTotal.testType),e.xp6(1),e.Q6J("model",a.impuritiesTotal.limitType),e.xp6(2),e.Q6J("ngModel",a.impuritiesTotal.limitValue),e.xp6(2),e.Q6J("ngModel",a.impuritiesTotal.amountValue),e.xp6(2),e.Q6J("ngModel",a.impuritiesTotal.comments))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 100px)/5);margin-right:25px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6[_ngcontent-%COMP%]{width:100%}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid blue;padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorblue[_ngcontent-%COMP%]{color:#00f}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both} .related-substance img{max-width:125px!important;margin:auto}"]}),m}();function gh(m,D){if(1&m&&(e.TgZ(0,"div",19),e._UZ(1,"app-impurities-details-form",20),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.oxw();e.xp6(1),e.Q6J("impuritiesDetails",l)("impuritiesSubstanceIndex",x.impuritiesSubstanceIndex)("impuritiesDetailsIndex",a)("impuritiesTestIndex",x.impuritiesTestIndex)("relatedSubstanceUuid",l.relatedSubstanceUuid)}}function Ir(m,D){if(1&m&&(e.TgZ(0,"div",19),e._UZ(1,"app-impurities-unspecified-form",21),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.oxw();e.xp6(1),e.Q6J("impuritiesUnspecified",l)("impuritiesUnspecifiedIndex",a)("impuritiesTestIndex",x.impuritiesTestIndex)("impuritiesSubstanceIndex",x.impuritiesSubstanceIndex)}}var uo=function(){var m=function(){function D(l,a,x,O){(0,P.Z)(this,D),this.impuritiesService=l,this.loadingService=a,this.authService=x,this.dialog=O}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"addNewImpuritiesDetails",value:function(){this.createNewImpurities(null)}},{key:"createNewImpurities",value:function(a){var x={identityCriteriaList:[]};x.relatedSubstanceUuid=a,this.impuritiesTest.impuritiesDetailsList.unshift(x)}},{key:"addNewImpuritiesUnspecified",value:function(){this.impuritiesService.addNewImpuritiesUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex)}},{key:"confirmDeleteImpuritiesTest",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delele Test "+(this.impuritiesTestIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteImpuritiesTest()})}},{key:"deleteImpuritiesTest",value:function(){this.impuritiesService.deleteImpuritiesTest(this.impuritiesSubstanceIndex,this.impuritiesTestIndex)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(js.q),e.Y36(wt.b),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-test-form"]],inputs:{impuritiesTest:"impuritiesTest",impuritiesTestIndex:"impuritiesTestIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:44,vars:10,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft185px","margintopneg10px"],["mat-icon-button","","color","primary",1,"marginleft20px",3,"matTooltip","click"],[1,"borderblue"],[1,"form-row"],[1,"col-2-1"],["matInput","","placeholder","Test","name","test",3,"ngModel","ngModelChange"],["domain","IMPURITIES_TEST_TYPE","title","Test Type","name","testType",1,"col-2-1",3,"model","valueChange"],["matInput","","placeholder","Test Description","name","testDescription",3,"ngModel","ngModelChange"],["matInput","","placeholder","Comments","name","comments",3,"ngModel","ngModelChange"],[1,"divflex","margintop10px"],[1,"titleblue"],["matBadgeColor","accent","matBadgeSize","medium","matBadgeOverlap","false",3,"matBadge"],["mat-raised-button","","color","primary","matTooltip","Add New Impurities",3,"click"],["svgIcon","add_circle_outline"],["class","marginbottom10px",4,"ngFor","ngForOf"],["mat-raised-button","","color","primary","matTooltip","Add New Unspecified Impurities",3,"click"],[1,"marginbottom10px"],[3,"impuritiesDetails","impuritiesSubstanceIndex","impuritiesDetailsIndex","impuritiesTestIndex","relatedSubstanceUuid"],[3,"impuritiesUnspecified","impuritiesUnspecifiedIndex","impuritiesTestIndex","impuritiesSubstanceIndex"]],template:function(l,a){1&l&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return a.confirmDeleteImpuritiesTest()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"mat-form-field",7),e.TgZ(13,"input",8),e.NdJ("ngModelChange",function(O){return a.impuritiesTest.test=O}),e.qZA(),e.qZA(),e.TgZ(14,"app-cv-input",9),e.NdJ("valueChange",function(O){return a.impuritiesTest.testType=O}),e.qZA(),e.qZA(),e.TgZ(15,"div",6),e.TgZ(16,"mat-form-field",7),e.TgZ(17,"textarea",10),e.NdJ("ngModelChange",function(O){return a.impuritiesTest.testDescription=O}),e.qZA(),e.qZA(),e.TgZ(18,"mat-form-field",7),e.TgZ(19,"textarea",11),e.NdJ("ngModelChange",function(O){return a.impuritiesTest.comments=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"div",12),e.TgZ(21,"div",13),e.TgZ(22,"span",14),e.TgZ(23,"span",13),e.TgZ(24,"b"),e._uU(25,"Impurities"),e.qZA(),e.qZA(),e.qZA(),e._uU(26," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(27,"button",15),e.NdJ("click",function(){return a.addNewImpuritiesDetails()}),e._UZ(28,"mat-icon",16),e._uU(29,"Add Impurities "),e.qZA(),e.qZA(),e.qZA(),e.YNc(30,gh,2,5,"div",17),e._UZ(31,"br"),e._UZ(32,"br"),e.TgZ(33,"span",14),e.TgZ(34,"span",13),e.TgZ(35,"b"),e._uU(36,"Unspecified Impurities"),e.qZA(),e.qZA(),e.qZA(),e._uU(37," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(38,"button",18),e.NdJ("click",function(){return a.addNewImpuritiesUnspecified()}),e._UZ(39,"mat-icon",16),e._uU(40,"Add Unspecified Impurities "),e.qZA(),e._UZ(41,"br"),e.YNc(42,Ir,2,4,"div",17),e.qZA(),e.qZA(),e._UZ(43,"br")),2&l&&(e.xp6(4),e.hij("Test \xa0",a.impuritiesTestIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Test ",a.impuritiesTestIndex+1,""),e.xp6(7),e.Q6J("ngModel",a.impuritiesTest.test),e.xp6(1),e.Q6J("model",a.impuritiesTest.testType),e.xp6(3),e.Q6J("ngModel",a.impuritiesTest.testDescription),e.xp6(2),e.Q6J("ngModel",a.impuritiesTest.comments),e.xp6(3),e.s9C("matBadge",a.impuritiesTest.impuritiesDetailsList.length),e.xp6(8),e.Q6J("ngForOf",a.impuritiesTest.impuritiesDetailsList),e.xp6(3),e.s9C("matBadge",a.impuritiesTest.impuritiesUnspecifiedList.length),e.xp6(9),e.Q6J("ngForOf",a.impuritiesTest.impuritiesUnspecifiedList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.titleblue[_ngcontent-%COMP%]{font-size:18px;font-weight:700px;font-family:Arial,Helvetica,sans-serif;color:#00f}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.col-2-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 120px)/5);margin-right:30px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop50px[_ngcontent-%COMP%]{margin-top:50px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft185px[_ngcontent-%COMP%]{padding-left:185px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderblue[_ngcontent-%COMP%]{border:2px solid #4665c2}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid blue;padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorblue[_ngcontent-%COMP%]{color:#00f}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both} .related-substance img{max-width:125px!important;margin:auto}.tabStyle[_ngcontent-%COMP%]{width:120px;height:30px;border:1px solid gray;background:#cde3fd;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:#0857d6;padding-left:30px;padding-top:5px;padding-right:5px}"]}),m}();function qf(m,D){if(1&m&&(e.TgZ(0,"div",35),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.impuritiesSubstance.approvalID," ")}}function Vf(m,D){if(1&m&&(e.TgZ(0,"div",36),e.TgZ(1,"span",37),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(2),e.hij(" ",l.errorMessage," ")}}function vh(m,D){if(1&m&&(e.TgZ(0,"div",38),e._UZ(1,"app-impurities-test-form",39),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.oxw();e.xp6(1),e.Q6J("impuritiesTest",l)("impuritiesTestIndex",a)("impuritiesSubstanceIndex",x.impuritiesSubstanceIndex)}}function Hc(m,D){if(1&m&&(e.TgZ(0,"div",38),e._UZ(1,"app-impurities-residual-solvents-form",40),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.oxw();e.xp6(1),e.Q6J("impuritiesResidualSolvents",l)("impuritiesResidualIndex",a)("impuritiesSubstanceIndex",x.impuritiesSubstanceIndex)}}function Hf(m,D){if(1&m&&(e.TgZ(0,"div",38),e._UZ(1,"app-impurities-inorganic-form",41),e.qZA()),2&m){var l=D.$implicit,a=D.index,x=e.oxw();e.xp6(1),e.Q6J("impuritiesInorganic",l)("impuritiesInorganicIndex",a)("impuritiesSubstanceIndex",x.impuritiesSubstanceIndex)}}var jf=function(){return["/substances/register/chemical"]},Jf=function(){return["/structure-search"]},ic=function(){var m=function(){function D(l,a,x,O,W){(0,P.Z)(this,D),this.impuritiesService=l,this.generalService=a,this.loadingService=x,this.authService=O,this.dialog=W,this.isLoading=!0,this.subscriptions=[],this.existingImpurities=[],this.substanceNameHintMessage=""}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"relatedSubstanceUpdated",value:function(a){null!=a&&(this.impuritiesSubstance.substanceUuid=a.uuid,this.impuritiesSubstance.approvalID=a.approvalID)}},{key:"getExistingImpuritiesFromSubstance",value:function(a){var x=this;a.stopPropagation(),this.isLoading=!0,this.loadingService.setLoading(!0),this.errorMessage="Getting Existing Impurities...";var O=this.impuritiesSubstance.substanceUuid;if(O){var W=this.impuritiesService.getRelationshipImpurity(O).subscribe(function(Le){if(Le){var rt=Le;Object.keys(rt).length>0?(x.existingImpurities=rt.filter(function(Ht,In){return rt.findIndex(function(ei){return ei.relationshipUuid===Ht.relationshipUuid})===In}),x.loadExistingImpurities()):x.errorMessage="No Impurities found"}});this.subscriptions.push(W)}else this.errorMessage="Please select a Substance Name";this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"loadExistingImpurities",value:function(){var a=this;this.errorMessage="Found "+this.existingImpurities.length+" Existing Impurities",this.impuritiesService.addNewTest(this.impuritiesSubstanceIndex),this.existingImpurities.forEach(function(x){var O={identityCriteriaList:[]};O.relatedSubstanceUuid=x.relationshipUuid,O.relatedSubstanceUnii=x.relationshipUnii,a.impuritiesService.addNewImpuritiesDetails(a.impuritiesSubstanceIndex,0,O)})}},{key:"createNewImpurities",value:function(a){}},{key:"addNewImpuritiesSubstance",value:function(){this.impuritiesService.addNewImpuritiesSubstance()}},{key:"getSubstancePreferredName",value:function(a){var x=this,O=this.generalService.getSubstanceBySubstanceUuid(a).subscribe(function(W){W&&(x.searchValue=W._name)});this.subscriptions.push(O)}},{key:"addNewTest",value:function(a){a.stopPropagation(),this.impuritiesService.addNewTest(this.impuritiesSubstanceIndex)}},{key:"addNewImpuritiesResidualSolvents",value:function(a){a.stopPropagation(),this.impuritiesService.addNewImpuritiesResidualSolvents(this.impuritiesSubstanceIndex)}},{key:"addNewImpuritiesInorganic",value:function(a){a.stopPropagation(),this.impuritiesService.addNewImpuritiesInorganic(this.impuritiesSubstanceIndex)}},{key:"confirmDeleteImpuritiesSubstance",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delele Substance Name "+(this.impuritiesSubstanceIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteImpuritiesSubstance()})}},{key:"deleteImpuritiesSubstance",value:function(){this.impuritiesService.deleteImpuritiesSubstance(this.impuritiesSubstanceIndex)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(js.q),e.Y36(A.m),e.Y36(wt.b),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-substance-form"]],inputs:{impuritiesSubstance:"impuritiesSubstance",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:88,vars:23,consts:[[1,"divflex","margintop10px","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft185px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"borderyellow"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter","marginright30px"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Substance Name","header","Substance Name",1,"textaligncenter",3,"hideImage","subuuid","selectionUpdated"],["class","textaligncenter font11px",4,"ngIf"],[1,"divflex"],[1,"col","marginleft50px"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Assay Low","name","low",3,"ngModel","ngModelChange"],["matInput","","placeholder","Assay High","name","high",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],[1,"col-6-6",2,"width","100%"],["matInput","","placeholder","Comments","name","comments",3,"ngModel","ngModelChange"],[1,"panel-style","bordergray",3,"expanded"],[1,"margintop5px"],[1,"titleblue"],["matBadgeColor","warn","matBadgeSize","medium","matBadgeOverlap","false","matBadgePosition","top",1,"margintop15px","custom-badge",3,"matBadge"],["mat-raised-button","","color","primary","matTooltip","Add New Test",3,"click"],["svgIcon","add_circle_outline"],[1,"width200px","marginleft30px"],["mat-raised-button","","color","primary","matTooltip","Get Impurities for Substance",3,"click"],["class","",4,"ngIf"],["class","marginbottom10px",4,"ngFor","ngForOf"],["mat-raised-button","","color","primary","matTooltip","Add New Residual Solvent",3,"click"],["mat-raised-button","","color","primary","matTooltip","Add New Inorganic",3,"click"],[1,"textaligncenter","font11px"],[1,""],[1,"colorred","font13px"],[1,"marginbottom10px"],[3,"impuritiesTest","impuritiesTestIndex","impuritiesSubstanceIndex"],[3,"impuritiesResidualSolvents","impuritiesResidualIndex","impuritiesSubstanceIndex"],[3,"impuritiesInorganic","impuritiesInorganicIndex","impuritiesSubstanceIndex"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e._uU(3),e.qZA(),e.qZA(),e.TgZ(4,"div",3),e.TgZ(5,"button",4),e.NdJ("click",function(){return a.confirmDeleteImpuritiesSubstance()}),e.TgZ(6,"mat-icon"),e._uU(7,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(8,"mat-card",5),e.TgZ(9,"mat-card-content"),e.TgZ(10,"div",6),e.TgZ(11,"div",7),e.TgZ(12,"app-substance-selector",8),e.NdJ("selectionUpdated",function(O){return a.relatedSubstanceUpdated(O)}),e.qZA(),e.YNc(13,qf,2,1,"div",9),e.TgZ(14,"div",10),e.TgZ(15,"div",11),e.TgZ(16,"a",12),e.TgZ(17,"span",13),e._uU(18,"Register New"),e.qZA(),e.qZA(),e._uU(19," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(20,"a",14),e.TgZ(21,"span",13),e._uU(22,"Search By Structure"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(23,"div",15),e.TgZ(24,"div",16),e.TgZ(25,"mat-form-field",17),e.TgZ(26,"input",18),e.NdJ("ngModelChange",function(O){return a.impuritiesSubstance.low=O}),e.qZA(),e.qZA(),e.TgZ(27,"mat-form-field",17),e.TgZ(28,"input",19),e.NdJ("ngModelChange",function(O){return a.impuritiesSubstance.high=O}),e.qZA(),e.qZA(),e.TgZ(29,"app-cv-input",20),e.NdJ("valueChange",function(O){return a.impuritiesSubstance.unit=O}),e.qZA(),e.qZA(),e.TgZ(30,"div",16),e.TgZ(31,"mat-form-field",21),e.TgZ(32,"textarea",22),e.NdJ("ngModelChange",function(O){return a.impuritiesSubstance.comments=O}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(33,"br"),e.TgZ(34,"mat-expansion-panel",23),e.TgZ(35,"mat-expansion-panel-header"),e.TgZ(36,"mat-panel-title"),e.TgZ(37,"div",10),e.TgZ(38,"div",24),e.TgZ(39,"span",25),e.TgZ(40,"b"),e._uU(41,"Test"),e.qZA(),e.qZA(),e._uU(42,"\xa0 "),e.qZA(),e._UZ(43,"div",26),e.qZA(),e.qZA(),e.TgZ(44,"mat-panel-description"),e.TgZ(45,"div"),e.TgZ(46,"button",27),e.NdJ("click",function(O){return a.addNewTest(O)}),e._UZ(47,"mat-icon",28),e._uU(48,"Add Test "),e.qZA(),e.qZA(),e.TgZ(49,"div",29),e.TgZ(50,"button",30),e.NdJ("click",function(O){return a.getExistingImpuritiesFromSubstance(O)}),e._uU(51," Get Existing Impurities from Substance "),e.qZA(),e.YNc(52,Vf,3,1,"div",31),e.qZA(),e.qZA(),e.qZA(),e.YNc(53,vh,2,3,"div",32),e.qZA(),e._UZ(54,"br"),e.TgZ(55,"mat-expansion-panel",23),e.TgZ(56,"mat-expansion-panel-header"),e.TgZ(57,"mat-panel-title"),e.TgZ(58,"div",10),e.TgZ(59,"div",24),e.TgZ(60,"span",25),e.TgZ(61,"b"),e._uU(62,"Residual Solvents"),e.qZA(),e.qZA(),e._uU(63,"\xa0 "),e.qZA(),e._UZ(64,"div",26),e.qZA(),e.qZA(),e.TgZ(65,"mat-panel-description"),e.TgZ(66,"button",33),e.NdJ("click",function(O){return a.addNewImpuritiesResidualSolvents(O)}),e._UZ(67,"mat-icon",28),e._uU(68,"Add Residual Solvents "),e.qZA(),e.qZA(),e.qZA(),e.YNc(69,Hc,2,3,"div",32),e.qZA(),e._UZ(70,"br"),e.TgZ(71,"mat-expansion-panel",23),e.TgZ(72,"mat-expansion-panel-header"),e.TgZ(73,"mat-panel-title"),e.TgZ(74,"div",10),e.TgZ(75,"div",24),e.TgZ(76,"span",25),e.TgZ(77,"b"),e._uU(78,"Inorganic Impurities"),e.qZA(),e.qZA(),e._uU(79,"\xa0 "),e.qZA(),e._UZ(80,"div",26),e.qZA(),e.qZA(),e.TgZ(81,"mat-panel-description"),e.TgZ(82,"button",34),e.NdJ("click",function(O){return a.addNewImpuritiesInorganic(O)}),e._UZ(83,"mat-icon",28),e._uU(84,"Add Inorganic Impurities "),e.qZA(),e.qZA(),e.qZA(),e.YNc(85,Hf,2,3,"div",32),e.qZA(),e.qZA(),e.qZA(),e._UZ(86,"br"),e._UZ(87,"br")),2&l&&(e.xp6(3),e.hij("Substance \xa0",a.impuritiesSubstanceIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Substance ",a.impuritiesSubstanceIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",a.impuritiesSubstance.substanceUuid),e.xp6(1),e.Q6J("ngIf",a.impuritiesSubstance.approvalID),e.xp6(3),e.Q6J("routerLink",e.DdM(21,jf)),e.xp6(4),e.Q6J("routerLink",e.DdM(22,Jf)),e.xp6(6),e.Q6J("ngModel",a.impuritiesSubstance.low),e.xp6(2),e.Q6J("ngModel",a.impuritiesSubstance.high),e.xp6(1),e.Q6J("model",a.impuritiesSubstance.unit),e.xp6(3),e.Q6J("ngModel",a.impuritiesSubstance.comments),e.xp6(2),e.Q6J("expanded",!0),e.xp6(9),e.s9C("matBadge",a.impuritiesSubstance.impuritiesTestList.length),e.xp6(9),e.Q6J("ngIf",a.errorMessage),e.xp6(1),e.Q6J("ngForOf",a.impuritiesSubstance.impuritiesTestList),e.xp6(2),e.Q6J("expanded",!0),e.xp6(9),e.s9C("matBadge",a.impuritiesSubstance.impuritiesResidualSolventsList.length),e.xp6(5),e.Q6J("ngForOf",a.impuritiesSubstance.impuritiesResidualSolventsList),e.xp6(2),e.Q6J("expanded",!0),e.xp6(9),e.s9C("matBadge",a.impuritiesSubstance.impuritiesInorganicList.length),e.xp6(5),e.Q6J("ngForOf",a.impuritiesSubstance.impuritiesInorganicList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.titleblue[_ngcontent-%COMP%]{font-size:18px;font-weight:700px;font-family:Arial,Helvetica,sans-serif;color:#00f;padding-top:10px}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-2[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-6-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-6-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-6-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6-6[_ngcontent-%COMP%]{width:100%}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:start;justify-content:flex-start}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop5px[_ngcontent-%COMP%]{margin-top:5px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop15px[_ngcontent-%COMP%]{margin-top:15px}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.margintop12px[_ngcontent-%COMP%]{margin-top:12px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft25px[_ngcontent-%COMP%]{margin-left:25px}.marginleft30px[_ngcontent-%COMP%]{margin-left:30px}.marginright30px[_ngcontent-%COMP%]{margin-right:30px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft185px[_ngcontent-%COMP%]{padding-left:185px}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #e0e0e0}.borderyellow[_ngcontent-%COMP%]{border:1px solid #e7c502}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.borderstructure[_ngcontent-%COMP%]{border:1px solid #e7e7e7;box-shadow:2px 2px #eee;margin-right:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width200px[_ngcontent-%COMP%]{width:200px}.width25percent[_ngcontent-%COMP%]{width:25%}.width32percent[_ngcontent-%COMP%]{width:32%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.font11px[_ngcontent-%COMP%]{font-size:11px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.textalignleft[_ngcontent-%COMP%]{text-align:left}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}hr[_ngcontent-%COMP%]{border:none;border-top:3px solid green;color:#333;overflow:visible;text-align:center;height:5px}.tabStyle[_ngcontent-%COMP%]{width:200px;height:30px;border:1px solid gray;background:#fcf8eb}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.borderbottom[_ngcontent-%COMP%]{border-bottom:1px solid gainsboro}.tabStyle[_ngcontent-%COMP%]{width:170px;height:30px;border:1px solid gray;background:#eee2b9;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:#0857d6;padding-left:30px;padding-top:5px;padding-right:5px}.panel-style[_ngcontent-%COMP%] mat-panel-title[_ngcontent-%COMP%]{width:300px;min-width:300px;max-width:300px}.custom-badge[_ngcontent-%COMP%] .mat-badge-content[_ngcontent-%COMP%]{background:#ac8d04;color:#fff}.custom-badge[_ngcontent-%COMP%] .mat-badge-medium[_ngcontent-%COMP%] .mat-badge-above[_ngcontent-%COMP%] .mat-badge-top[_ngcontent-%COMP%] .mat-badge-content[_ngcontent-%COMP%]{top:unset;right:unset}"]}),m}();function Qf(m,D){if(1&m&&(e.TgZ(0,"div",24),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.impuritiesResidualSolvents.relatedSubstanceUnii," ")}}var Wf=function(){return["/substances/register/chemical"]},zf=function(){return["/structure-search"]},ac=function(){var m=function(){function D(l,a,x,O){(0,P.Z)(this,D),this.impuritiesService=l,this.loadingService=a,this.authService=x,this.dialog=O}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"confirmDeleteImpuritiesResidualSolvents",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Residual Solvents "+(this.impuritiesResidualIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteImpuritiesResidualSolvents()})}},{key:"deleteImpuritiesResidualSolvents",value:function(){this.impuritiesService.deleteImpuritiesResidualSolvents(this.impuritiesSubstanceIndex,this.impuritiesResidualIndex)}},{key:"relatedSubstanceUpdated",value:function(a){null!=a&&(this.impuritiesResidualSolvents.relatedSubstanceUuid=a.uuid,this.impuritiesResidualSolvents.relatedSubstanceUnii=a.approvalID)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(js.q),e.Y36(wt.b),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-residual-solvents-form"]],inputs:{impuritiesResidualSolvents:"impuritiesResidualSolvents",impuritiesResidualIndex:"impuritiesResidualIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:37,vars:15,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft105px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"margintop20px","bordergray"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Related Substance","header","Related Substance",1,"textaligncenter",3,"hideImage","subuuid","selectionUpdated"],["class","textaligncenter font11px",4,"ngIf"],[1,"divflex"],[1,"col","marginleft50px"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Pharmaceutical Limit","name","pharmaceuticalLimit",3,"ngModel","ngModelChange"],["matInput","","placeholder","Test Type","name","testType",3,"ngModel","ngModelChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],[1,"textaligncenter","font11px"]],template:function(l,a){1&l&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return a.confirmDeleteImpuritiesResidualSolvents()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e.TgZ(13,"app-substance-selector",8),e.NdJ("selectionUpdated",function(O){return a.relatedSubstanceUpdated(O)}),e.qZA(),e.YNc(14,Qf,2,1,"div",9),e.TgZ(15,"div",10),e.TgZ(16,"div",11),e.TgZ(17,"a",12),e.TgZ(18,"span",13),e._uU(19,"Register New"),e.qZA(),e.qZA(),e._uU(20," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(21,"a",14),e.TgZ(22,"span",13),e._uU(23,"Search By Structure"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(24,"div",15),e.TgZ(25,"div",16),e.TgZ(26,"mat-form-field",17),e.TgZ(27,"input",18),e.NdJ("ngModelChange",function(O){return a.impuritiesResidualSolvents.pharmaceuticalLimit=O}),e.qZA(),e.qZA(),e.TgZ(28,"mat-form-field",17),e.TgZ(29,"input",19),e.NdJ("ngModelChange",function(O){return a.impuritiesResidualSolvents.testType=O}),e.qZA(),e.qZA(),e.TgZ(30,"app-cv-input",20),e.NdJ("valueChange",function(O){return a.impuritiesResidualSolvents.limitType=O}),e.qZA(),e.qZA(),e.TgZ(31,"div",16),e.TgZ(32,"mat-form-field",17),e.TgZ(33,"input",21),e.NdJ("ngModelChange",function(O){return a.impuritiesResidualSolvents.limitValue=O}),e.qZA(),e.qZA(),e.TgZ(34,"app-cv-input",22),e.NdJ("valueChange",function(O){return a.impuritiesResidualSolvents.unit=O}),e.qZA(),e.TgZ(35,"mat-form-field",17),e.TgZ(36,"textarea",23),e.NdJ("ngModelChange",function(O){return a.impuritiesResidualSolvents.comments=O}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&l&&(e.xp6(4),e.hij("Residual Solvents\xa0",a.impuritiesResidualIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Impurities Residual Solvents ",a.impuritiesResidualIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",a.impuritiesResidualSolvents.relatedSubstanceUuid),e.xp6(1),e.Q6J("ngIf",a.impuritiesResidualSolvents.relatedSubstanceUnii),e.xp6(3),e.Q6J("routerLink",e.DdM(13,Wf)),e.xp6(4),e.Q6J("routerLink",e.DdM(14,zf)),e.xp6(6),e.Q6J("ngModel",a.impuritiesResidualSolvents.pharmaceuticalLimit),e.xp6(2),e.Q6J("ngModel",a.impuritiesResidualSolvents.testType),e.xp6(1),e.Q6J("model",a.impuritiesResidualSolvents.limitType),e.xp6(3),e.Q6J("ngModel",a.impuritiesResidualSolvents.limitValue),e.xp6(1),e.Q6J("model",a.impuritiesResidualSolvents.unit),e.xp6(2),e.Q6J("ngModel",a.impuritiesResidualSolvents.comments))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:10px}.col-4-1-short[_ngcontent-%COMP%]{width:calc((100% - 240px)/4 - 5px);margin-right:30px}.col-4-1-short[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padleft105px[_ngcontent-%COMP%]{padding-left:105px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid blue;padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.height30px[_ngcontent-%COMP%]{height:30px}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorblue[_ngcontent-%COMP%]{color:#00f}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.tabStyle[_ngcontent-%COMP%]{width:200px;height:30px;border:1px solid gray;background:#e9f3d9;background-image:linear-gradient(to bottom,#fff,#b2b2b2);-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:#0857d6;padding-left:20px;padding-top:5px;padding-right:5px} .related-substance img{max-width:125px!important;margin:auto}"]}),m}();function Gf(m,D){if(1&m&&(e.TgZ(0,"div",24),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.hij(" ",l.impuritiesInorganic.relatedSubstanceUnii," ")}}var Kf=function(){return["/substances/register/chemical"]},yh=function(){return["/structure-search"]},$f=function(){var m=function(){function D(l,a,x,O){(0,P.Z)(this,D),this.impuritiesService=l,this.loadingService=a,this.authService=x,this.dialog=O}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"relatedSubstanceUpdated",value:function(a){null!=a&&(this.impuritiesInorganic.relatedSubstanceUuid=a.uuid,this.impuritiesInorganic.relatedSubstanceUnii=a.approvalID)}},{key:"confirmDeleteImpuritiesInorganic",value:function(){var a=this;this.dialog.open($i.$,{data:{message:"Are you sure you want to delete Inorganic Impurities"+(this.impuritiesInorganicIndex+1)+"?"}}).afterClosed().subscribe(function(O){O&&!0===O&&a.deleteImpuritiesInorganic()})}},{key:"deleteImpuritiesInorganic",value:function(){this.impuritiesService.deleteImpuritiesInorganic(this.impuritiesSubstanceIndex,this.impuritiesInorganicIndex)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(js.q),e.Y36(wt.b),e.Y36(Ie.e),e.Y36(qt.uw))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-impurities-inorganic-form"]],inputs:{impuritiesInorganic:"impuritiesInorganic",impuritiesInorganicIndex:"impuritiesInorganicIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:34,vars:14,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft105px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"bordergray"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Related Substance","header","Related Substance",1,"textaligncenter",3,"hideImage","subuuid","selectionUpdated"],["class","textaligncenter font11px",4,"ngIf"],[1,"divflex"],[1,"col","marginleft50px"],["target","_blank","matTooltip","Register New Substance",3,"routerLink"],[1,"font11px"],["target","_blank","matTooltip","Structure Search",3,"routerLink"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],["domain","IMPURITIES_TEST_TYPE","title","Test Type","name","testType",1,"col-3-1",3,"model","valueChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-3-1",3,"model","valueChange"],[1,"col-3-1"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],[1,"col-3-2"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],[1,"textaligncenter","font11px"]],template:function(l,a){1&l&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return a.confirmDeleteImpuritiesInorganic()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e.TgZ(13,"app-substance-selector",8),e.NdJ("selectionUpdated",function(O){return a.relatedSubstanceUpdated(O)}),e.qZA(),e.YNc(14,Gf,2,1,"div",9),e.TgZ(15,"div",10),e.TgZ(16,"div",11),e.TgZ(17,"a",12),e.TgZ(18,"span",13),e._uU(19,"Register New"),e.qZA(),e.qZA(),e._uU(20," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(21,"a",14),e.TgZ(22,"span",13),e._uU(23,"Search By Structure"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(24,"div",15),e.TgZ(25,"div",16),e.TgZ(26,"app-cv-input",17),e.NdJ("valueChange",function(O){return a.impuritiesInorganic.testType=O}),e.qZA(),e.TgZ(27,"app-cv-input",18),e.NdJ("valueChange",function(O){return a.impuritiesInorganic.limitType=O}),e.qZA(),e.TgZ(28,"mat-form-field",19),e.TgZ(29,"input",20),e.NdJ("ngModelChange",function(O){return a.impuritiesInorganic.limitValue=O}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(30,"div",16),e.TgZ(31,"app-cv-input",21),e.NdJ("valueChange",function(O){return a.impuritiesInorganic.unit=O}),e.qZA(),e.TgZ(32,"mat-form-field",22),e.TgZ(33,"textarea",23),e.NdJ("ngModelChange",function(O){return a.impuritiesInorganic.comments=O}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&l&&(e.xp6(4),e.hij("Inorganic\xa0",a.impuritiesInorganicIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Impurities Inorganic ",a.impuritiesInorganicIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",a.impuritiesInorganic.relatedSubstanceUuid),e.xp6(1),e.Q6J("ngIf",a.impuritiesInorganic.relatedSubstanceUnii),e.xp6(3),e.Q6J("routerLink",e.DdM(12,Kf)),e.xp6(4),e.Q6J("routerLink",e.DdM(13,yh)),e.xp6(5),e.Q6J("model",a.impuritiesInorganic.testType),e.xp6(1),e.Q6J("model",a.impuritiesInorganic.limitType),e.xp6(2),e.Q6J("ngModel",a.impuritiesInorganic.limitValue),e.xp6(2),e.Q6J("model",a.impuritiesInorganic.unit),e.xp6(2),e.Q6J("ngModel",a.impuritiesInorganic.comments))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-2[_ngcontent-%COMP%]{width:calc((100% - 15px) / 1.5);margin-right:0}.col-3-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:10px}.col-4-1-short[_ngcontent-%COMP%]{width:calc((100% - 240px)/4 - 5px);margin-right:30px}.col-4-1-short[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleft200px[_ngcontent-%COMP%]{margin-left:200px}marginbottom20px[_ngcontent-%COMP%]{margin-bottom:20px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft105px[_ngcontent-%COMP%]{padding-left:105px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padbottom5px[_ngcontent-%COMP%]{padding-bottom:5px}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergreen[_ngcontent-%COMP%]{border:1px solid green}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid blue;padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.height30px[_ngcontent-%COMP%]{height:30px}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorblue[_ngcontent-%COMP%]{color:#00f}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:red}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:#00f}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:#7f7f85!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:#4444da!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:#46746a!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,black 0,rgba(0,0,0,.42) 10%,#c2c7cc 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:red!important}.errortext[_ngcontent-%COMP%]{color:red;font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.tabStyle[_ngcontent-%COMP%]{width:200px;height:30px;border:1px solid gray;background:#e9f3d9;background-image:linear-gradient(to bottom,#fff,#b2b2b2);-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:#0857d6;padding-top:5px;padding-right:5px;text-align:center} .related-substance img{max-width:125px!important;margin:auto}"]}),m}(),Vo=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.router=l,this.authService=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){O.authService.getAuth().pipe((0,Ee.q)(1)).subscribe(function(Le){Le?O.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry").pipe((0,Ee.q)(1)).subscribe(function(Ht){Ht?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/home")),W.complete())}):(W.next(O.router.createUrlTree(["/login"],{queryParams:{path:x.url}})),W.complete())})})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0),e.LFG(Ie.e))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac}),m}(),rc=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.router=l,this.authService=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){O.authService.getAuth().pipe((0,Ee.q)(1)).subscribe(function(Le){Le?O.authService.hasAnyRolesAsync("Updater","SuperUpdater").pipe((0,Ee.q)(1)).subscribe(function(Ht){Ht?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/home")),W.complete())}):(W.next(O.router.createUrlTree(["/login"],{queryParams:{path:x.url}})),W.complete())})})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0),e.LFG(Ie.e))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac}),m}(),ed=function(){var m=function(){function D(l){(0,P.Z)(this,D),this.impuritiesService=l}return(0,t.Z)(D,[{key:"canDeactivate",value:function(a){return!this.impuritiesService.isImpuritiesUpdated||!!confirm("You have unsaved changes! If you leave, your changes will be lost.")}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(js.q))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac,providedIn:"root"}),m}(),yu=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.configService=l,this.router=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){var Le=O.configService.configData.loadedComponents||null;Le&&Le.impurities?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/home")),W.complete())})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(On.E),e.LFG(d.F0))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac,providedIn:"root"}),m}(),jc=n(24459),Xf=[{path:"impurities/register",component:zu,canActivate:[yu,Vo],canDeactivate:[ed]},{path:"impurities/:id/edit",component:zu,canActivate:[yu,rc],canDeactivate:[ed]},{path:"impurities/:id",component:Yf,canActivate:[yu]}],bh=function(){var m=function(){function D(l){(0,P.Z)(this,D),Xf.forEach(function(a){l.config[0].children.push(a)})}return(0,t.Z)(D,null,[{key:"forRoot",value:function(){return{ngModule:D,providers:[Vo,rc,ed,yu]}}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0))},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({providers:[Vo,rc,ed,yu],imports:[[d.Bz.forChild(Xf),p.ez,je.UX,je.u5,Pt.c,St.lN,s.QW,T.ot,f.AV,I.Ps,Q.g,h.To,$o.O,yo.d,Fo,tc.U,Cl.f]]}),m}();e.B6R(zu,[p.O5,T.lW,I.Hw,f.gM,d.rH,T.zs,d.yS,p.mk,p.sg,s.a8,s.dn,Cr.S,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,h.ib,h.yz,h.yK,Q.k,h.u4,ic,Vc],[p.uU]),e.B6R(Zf,[T.lW,f.gM,I.Hw,s.a8,s.dn,jc.Q,p.O5,d.yS,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Cr.S,p.sg],[]),e.B6R(Xu,[p.O5,Cr.S,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,T.lW,f.gM,I.Hw,p.sg],[]),e.B6R(Vc,[St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Cr.S],[]),e.B6R(uo,[T.lW,f.gM,I.Hw,s.a8,s.dn,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Cr.S,Q.k,p.sg,Zf,Xu],[]),e.B6R(ic,[T.lW,f.gM,I.Hw,s.a8,s.dn,jc.Q,p.O5,d.yS,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Cr.S,h.ib,h.yz,h.yK,Q.k,h.u4,p.sg,uo,ac,$f],[]),e.B6R(ac,[T.lW,f.gM,I.Hw,s.a8,s.dn,jc.Q,p.O5,d.yS,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,Cr.S],[]),e.B6R($f,[T.lW,f.gM,I.Hw,s.a8,s.dn,jc.Q,p.O5,d.yS,Cr.S,St.KE,Pt.Nt,je.Fj,je.JJ,je.On],[]);var em=n(69264),bu=n(28784),tm=function(){var m=function(D){(0,Aa.Z)(a,D);var l=(0,Ra.Z)(a);function a(x,O){var W;return(0,P.Z)(this,a),(W=l.call(this,O)).http=x,W.configService=O,W.apiBaseUrlWithSubstanceEntityUrl=W.configService.configData.apiBaseUrl||"api/v1/substances/",W.apiBaseUrlWithApplicationEntityUrl=W.configService.configData.apiBaseUrl+"api/v1/applications/",W.apiBaseUrlWithApplicationAllEntityUrl=W.configService.configData.apiBaseUrl+"api/v1/applicationsall/",W.apiBaseUrlWithApplicationDarrtsEntityUrl=W.configService.configData.apiBaseUrl+"api/v1/applicationsdarrts/",W.apiBaseUrlWithProductEntityUrl=W.configService.configData.apiBaseUrl+"api/v1/products/",W.apiBaseUrlWithProductBrowseEntityUrl=W.configService.configData.apiBaseUrl+"api/v1/productsall/",W.apiBaseUrlWithProductElistEntityUrl=W.configService.configData.apiBaseUrl+"api/v1/productselist/",W.apiBaseUrlWithClinicalTrialEntityUrl=W.configService.configData.apiBaseUrl+"api/v1/clinicaltrialsus/",W.apiBaseUrlWithEntityPtContext=W.configService.configData.apiBaseUrl+"api/v1/adverseeventpt/",W.apiBaseUrlWithEntityDmeContext=W.configService.configData.apiBaseUrl+"api/v1/adverseeventdme/",W.apiBaseUrlWithEntityCvmContext=W.configService.configData.apiBaseUrl+"api/v1/adverseeventcvm/",W}return(0,t.Z)(a,[{key:"getBaseHref",value:function(){return this.configService.environment.baseHref}},{key:"getSubstanceCount",value:function(){var O="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/@count");return this.http.get(O)}},{key:"getApplicationCount",value:function(){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"@count")}},{key:"getProductCount",value:function(){return this.http.get(this.apiBaseUrlWithProductBrowseEntityUrl+"@count")}},{key:"getClinicalTrialCount",value:function(){return this.http.get(this.apiBaseUrlWithClinicalTrialEntityUrl+"@count")}},{key:"getSubstances",value:function(){var O=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Le=arguments.length>2?arguments[2]:void 0,rt=arguments.length>3?arguments[3]:void 0,Ht=new wn.nq;Ht=(Ht=(Ht=Ht.append("skip",O.toString())).append("top","1")).append("view","key"),null!==Le&&""!==Le&&(Ht=Ht.append("q",Le)),Ht=Ht.appendFacetParams(rt);var In="".concat(this.apiBaseUrl,"substances/search"),ei={params:Ht};return this.http.get(In,ei)}},{key:"getApplications",value:function(){var O=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Le=arguments.length>2?arguments[2]:void 0,rt=arguments.length>3?arguments[3]:void 0,Ht=new wn.nq;Ht=(Ht=(Ht=Ht.append("skip",O.toString())).append("top","1")).append("view","key"),null!==Le&&""!==Le&&(Ht=Ht.append("q",Le)),Ht=Ht.appendFacetParams(rt);var In=this.apiBaseUrlWithApplicationEntityUrl+"search",ei={params:Ht};return this.http.get(In,ei)}},{key:"getProducts",value:function(){var O=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Le=arguments.length>2?arguments[2]:void 0,rt=arguments.length>3?arguments[3]:void 0,Ht=new wn.nq;Ht=(Ht=(Ht=Ht.append("skip",O.toString())).append("top","1")).append("view","key"),null!==Le&&""!==Le&&(Ht=Ht.append("q",Le)),Ht=Ht.appendFacetParams(rt);var In=this.apiBaseUrlWithProductBrowseEntityUrl+"search",ei={params:Ht};return this.http.get(In,ei)}},{key:"getClinicalTrials",value:function(){var O=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Le=arguments.length>2?arguments[2]:void 0,rt=arguments.length>3?arguments[3]:void 0,Ht=new wn.nq;Ht=(Ht=(Ht=Ht.append("skip",O.toString())).append("top","1")).append("view","key"),null!==Le&&""!==Le&&(Ht=Ht.append("q",Le)),Ht=Ht.appendFacetParams(rt);var In=this.apiBaseUrlWithClinicalTrialEntityUrl+"search",ei={params:Ht};return this.http.get(In,ei)}},{key:"getTypeAheadSearchText",value:function(O,W,Le){var rt,Ht;return O&&("Substance"===O&&(Ht="".concat(this.configService.configData.apiBaseUrl,"api/v1/")),"Application"===O&&(Ht=this.apiBaseUrlWithApplicationEntityUrl),"Product"===O&&(Ht=this.apiBaseUrlWithProductBrowseEntityUrl),"Clinical Trial"===O&&(Ht=this.apiBaseUrlWithClinicalTrialEntityUrl),"Adverse Event"===O&&W&&("Ingredient_Name"===W&&(Ht="".concat(this.configService.configData.apiBaseUrl,"api/v1/"),W="Name"),"PT_Term"===W&&(Ht=this.apiBaseUrlWithEntityPtContext),"Prim_SOC"===W&&(Ht=this.apiBaseUrlWithEntityPtContext),"DME_Reactions"===W&&(Ht=this.apiBaseUrlWithEntityDmeContext),"PTTerm_Meddra"===W&&(Ht=this.apiBaseUrlWithEntityDmeContext),"Adverse_Event"===W&&(Ht=this.apiBaseUrlWithEntityCvmContext),"Species"===W&&(Ht=this.apiBaseUrlWithEntityCvmContext)),rt=Ht+"suggest/"+W+"?q="+Le),this.http.get(rt)}}]),a}(em.q);return m.\u0275fac=function(l){return new(l||m)(e.LFG(bu.eN),e.LFG(On.E))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac,providedIn:"root"}),m}(),nm=n(45592),Jh=n(84705),Ch=n(9552),gc=n(43461),Mh=["structure_canvas"],Qh=["contentContainer"];function Wh(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1,"Substance"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(4),e.hij(" (",l.substanceCount,") ")}}function mp(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1,"Application"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(4),e.hij(" (",l.applicationCount,") ")}}function xh(m,D){1&m&&(e.TgZ(0,"mat-tab",22),e.YNc(1,mp,5,1,"ng-template",10),e.qZA())}function im(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1,"Product"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(4),e.hij(" (",l.productCount,") ")}}function am(m,D){1&m&&(e.TgZ(0,"mat-tab",23),e.YNc(1,im,5,1,"ng-template",10),e.qZA())}function zh(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&m){var l=e.oxw(2);e.xp6(4),e.lnq(" PT (",l.adverseEventPtCount,") \xa0 DME (",l.adverseEventDmeCount,") \xa0 CVM (",l.adverseEventCvmCount,") ")}}function Qs(m,D){1&m&&(e.TgZ(0,"mat-tab",24),e.YNc(1,zh,5,3,"ng-template",10),e._UZ(2,"br"),e.qZA())}function y_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",32),e.NdJ("click",function(){e.CHM(l);var x=e.oxw().index;return e.oxw().removeQueryStatement(x)}),e._UZ(1,"mat-icon",33),e.qZA()}}function Gh(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",34),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).addQueryStatement()}),e._UZ(1,"mat-icon",35),e.qZA()}}function rm(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",25),e.TgZ(1,"div",26),e.TgZ(2,"app-advanced-query-statement",27),e.NdJ("queryUpdated",function(Ht){var ei=e.CHM(l).index;return e.oxw().queryUpdated(Ht,ei)})("processSearchOut",function(){return e.CHM(l),e.oxw().processSearchOut()}),e.qZA(),e.qZA(),e.TgZ(3,"div",28),e.TgZ(4,"div",29),e.YNc(5,y_,2,0,"button",30),e.qZA(),e.TgZ(6,"div",29),e.YNc(7,Gh,2,0,"button",31),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit,x=D.index,O=D.first,W=D.last,Le=e.oxw();e.xp6(2),e.Q6J("category",Le.category)("queryStatementHash",a.queryHash)("index",x)("queryableDictionary",Le.queryableSubstanceDict)("queryableOptions",Le.displayProperties)("queryableOptionsCommon",Le.displayPropertiesCommon),e.xp6(3),e.Q6J("ngIf",!O||Le.queryStatements.length>1),e.xp6(2),e.Q6J("ngIf",W)}}function Sh(m,D){1&m&&(e.TgZ(0,"div",36),e._uU(1," Query "),e.qZA())}function b(m,D){if(1&m&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(2),e.hij(" ",l.queryDisplay," ")}}function L(m,D){if(1&m&&(e.TgZ(0,"mat-option",50),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l),e.xp6(1),e.hij(" ",l," ")}}function g(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field"),e.TgZ(2,"mat-label"),e._uU(3,"Facet View:"),e.qZA(),e.TgZ(4,"mat-select",48),e.NdJ("selectionChange",function(O){return e.CHM(l),e.oxw(2).facetViewChange(O)}),e.YNc(5,L,2,2,"mat-option",49),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(4),e.Q6J("formControl",a.facetViewControl),e.xp6(1),e.Q6J("ngForOf",a.facetViewCategory)}}function u(m,D){1&m&&(e.TgZ(0,"div",51),e._UZ(1,"mat-progress-spinner",52),e.qZA())}function M(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-expansion-panel",39),e.TgZ(1,"mat-expansion-panel-header"),e.TgZ(2,"mat-panel-title"),e.TgZ(3,"div",40),e.TgZ(4,"b"),e._uU(5,"Filter by "),e.TgZ(6,"span",41),e._uU(7),e.qZA(),e._uU(8),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"div",1),e.TgZ(10,"div"),e.TgZ(11,"mat-form-field"),e.TgZ(12,"input",42),e.NdJ("ngModelChange",function(O){return e.CHM(l),e.oxw().facetNameText=O}),e.qZA(),e.qZA(),e.qZA(),e.YNc(13,g,6,2,"div",43),e.TgZ(14,"div",44),e.TgZ(15,"button",45),e.NdJ("click",function(){return e.CHM(l),e.oxw().togglePanelExpand()}),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e._UZ(17,"br"),e.YNc(18,u,2,0,"div",46),e._uU(19,"x "),e.TgZ(20,"div"),e.TgZ(21,"app-facets-manager",47),e.NdJ("facetsParamsUpdated",function(O){return e.CHM(l),e.oxw().facetsParamsUpdated(O)})("facetsLoaded",function(O){return e.CHM(l),e.oxw().facetsLoaded(O)}),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.Q6J("expanded",!1),e.xp6(7),e.hij(" ",a.category,""),e.xp6(1),e.hij(" Facets(",a.numFacetsLoaded,")"),e.xp6(4),e.Q6J("ngModel",a.facetNameText),e.xp6(1),e.Q6J("ngIf","Substance"===a.category),e.xp6(3),e.hij("",a.panelExpanded?"Collapse":"Expand"," All"),e.xp6(2),e.Q6J("ngIf",a.showSpinner),e.xp6(3),e.Q6J("rawFacets",a.rawFacets)("configName",a.facetKey)("facetViewCategorySelected",a.facetViewCategorySelected)("facetDisplayType",a.facetDisplayType)("panelExpanded",a.panelExpanded)("facetNameText",a.facetNameText)}}function U(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",76),e.TgZ(1,"div"),e._uU(2,"Similarity cutoff (tanimoto)"),e.qZA(),e.TgZ(3,"mat-slider",77),e.NdJ("input",function(O){return e.CHM(l),e.oxw(2).searchCutoffChanged(O)}),e.qZA(),e.TgZ(4,"div"),e._uU(5),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(3),e.Q6J("value",a.similarityCutoff),e.xp6(2),e.Oqu(a.similarityCutoff)}}function re(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",53),e.TgZ(1,"mat-expansion-panel",54),e.TgZ(2,"mat-expansion-panel-header",55),e.TgZ(3,"mat-panel-title",56),e._uU(4," AND Search Structure "),e.qZA(),e._UZ(5,"mat-panel-description",57),e.qZA(),e.TgZ(6,"div",58,59),e.TgZ(8,"mat-card"),e.TgZ(9,"div",60),e.TgZ(10,"div",61),e.TgZ(11,"app-structure-editor",62),e.NdJ("editorOnLoad",function(O){return e.CHM(l),e.oxw().editorOnLoad(O)})("loadedMolfile",function(O){return e.CHM(l),e.oxw().molvecUpdate(O)}),e.qZA(),e.qZA(),e.TgZ(12,"div",63),e.TgZ(13,"div",64),e.TgZ(14,"mat-form-field",65),e.TgZ(15,"mat-select",66),e.NdJ("selectionChange",function(O){return e.CHM(l),e.oxw().searchTypeSelected(O)}),e.TgZ(16,"mat-option",67),e._uU(17," Substructure "),e.qZA(),e.TgZ(18,"mat-option",68),e._uU(19," Similarity "),e.qZA(),e.TgZ(20,"mat-option",69),e._uU(21," Exact "),e.qZA(),e.TgZ(22,"mat-option",70),e._uU(23," Flex "),e.qZA(),e.qZA(),e.qZA(),e.YNc(24,U,6,2,"div",71),e.qZA(),e.TgZ(25,"div",72),e.TgZ(26,"button",73),e.NdJ("click",function(){return e.CHM(l),e.oxw().openStructureImportDialog()}),e._uU(27,"Import"),e.qZA(),e.qZA(),e.TgZ(28,"div",72),e.TgZ(29,"button",74),e.NdJ("click",function(){return e.CHM(l),e.oxw().openStructureExportDialog()}),e._uU(30,"Export"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div"),e.TgZ(32,"h4"),e._uU(33," Get Structure From Name "),e.qZA(),e.TgZ(34,"app-name-resolver",75),e.NdJ("structureSelected",function(O){return e.CHM(l),e.oxw().nameResolved(O)}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(1),e.Q6J("expanded",!0),e.xp6(14),e.Q6J("formControl",a.searchTypeControl),e.xp6(9),e.Q6J("ngIf",a.showSimilarityCutoff)}}var lt=function(){return["/structure-search"]},Wt=function(){return["/sequence-search"]},nn=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar,ls,Xr,Zo,cm){(0,P.Z)(this,D),this.http=l,this.router=a,this.activatedRoute=x,this.loadingService=O,this.advancedSearchService=W,this.adverseEventService=Le,this.configService=rt,this.utilitiesService=Ht,this.substanceService=In,this.applicationService=ei,this.productService=_i,this.clinicalTrialService=Mi,this.facetManagerService=qi,this.gaService=Ar,this.titleService=ls,this.location=Xr,this.dialog=Zo,this.structureService=cm,this.advancedSearchFacetDisplay=!1,this.queryStatements=[],this.facetViewControl=new je.NI,this.height=0,this.width=0,this.canvasToggle=!0,this.canvasMessage="",this.tempClass="",this.categoryOptions=["Substance","Application","Product","Clinical Trial","Adverse Event"],this.tabSelectedIndex=0,this.category="Substance",this.tabClicked=!1,this.jsdrawScriptUrls=["".concat(Un.N.baseHref||"","assets/dojo/dojo.js"),"".concat(Un.N.baseHref||"","assets/jsdraw/Scilligence.JSDraw2.Pro.js"),"".concat(Un.N.baseHref||"","assets/jsdraw/Scilligence.JSDraw2.Resources.js"),"".concat(Un.N.baseHref||"","assets/jsdraw/JSDraw.extensions.js")],this.showSpinner=!1,this.subscriptions=[],this.panelExpanded=!1,this.numFacetsLoaded=0,this.facetKey="substances",this.rawFacets=[],this.rawFacetsSubstance=[],this.rawFacetsApplication=[],this.rawFacetsProduct=[],this.rawFacetsClinicalTrial=[],this.rawFacetsAdverseEventPt=[],this.rawFacetsAdverseEventDme=[],this.rawFacetsAdverseEventCvm=[],this.displayFacets=[],this.facetViewCategorySelected="Default",this.facetViewCategory=[],this.substanceFacetsQuickSearch=[],this.applicationFacetsQuickSearch=[],this.productFacetsQuickSearch=[],this.clinicalTrialFacetsQuickSearch=[],this.navigationExtrasFacet={queryParams:{}},this.queryFacet="",this.queryDisplay="",this.facetNameText="",this.facetDisplayType="all",this.substanceFacetsDisplay=["Record Status","Substance Class","Relationships","GInAS Tag"],this.applicationFacetsDisplay=["Center","Application Type","Application Status","Provenance (GSRS)"],this.productFacetsDisplay=["Provenance","Company Country","Product Type","Dosage Form Name"],this.clinicalTrialFacetsDisplay=["Intervention Type","Age Groups","Conditions","Study Types"],this.applicationFacetValue=[],this.substanceCount="0",this.applicationCount="0",this.productCount="0",this.clinicalTrialCount="0",this.adverseEventPtCount="0",this.adverseEventDmeCount="0",this.adverseEventCvmCount="0",this.showSimilarityCutoff=!1,this.searchTypeControl=new je.NI,this.searchType="substructure",this._searchtype="substructure"}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.loadingService.setLoading(!0),this.showSpinner=!0,this.loadedComponents=this.configService.configData.loadedComponents||null,this.advancedSearchFacetDisplay=this.configService.configData.advancedSearchFacetDisplay||!1,this.titleService.setTitle("Advanced Search");var x=Number(this.activatedRoute.snapshot.queryParams["g-search-hash"])||null;if(x){var O=localStorage.getItem(x.toString());if(null!=O&&(this.queryStatementHashes=JSON.parse(O),null!=this.queryStatementHashes[0])){var W=localStorage.getItem(this.queryStatementHashes[0].toString());null!=W&&(this.category=W,this.categoryOptions.forEach(function(Le,rt){null!=Le&&Le===W&&(a.tabSelectedIndex=rt)}),this.queryStatementHashes.splice(0,1))}}this.getBrowseSubstanceDetails(),this.loadedComponents&&(this.loadedComponents.applications&&this.getBrowseApplicationDetails(),this.loadedComponents.products&&this.getBrowseProductDetails(),this.loadedComponents.adverseevents&&(this.getBrowseAdverseEventPtDetails(),this.getBrowseAdverseEventDmeDetails(),this.getBrowseAdverseEventCvmDetails())),this.loadFileName(),this.loadFacetViewFromConfig(),this.showSpinner=!1,this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadFacetViewFromConfig",value:function(){var a=this;this.facetViewControl.setValue(this.facetViewCategorySelected),(this.configService.configData.facets&&this.configService.configData.facets.substances||{}).facetView.forEach(function(O){a.facetViewCategory.push(O.category)}),this.facetViewCategory.push("All")}},{key:"getBrowseSubstanceDetails",value:function(){var a=this,x=this.advancedSearchService.getSubstances(0,10,null,this.privateFacetParams).subscribe(function(O){a.substances=O.content,a.substanceCount=(0,p.uf)(Number(O.total),"en-US","1.0-0"),O.facets&&O.facets.length>0&&(a.rawFacetsSubstance=O.facets,a.rawFacets=O.facets)});this.subscriptions.push(x)}},{key:"getBrowseApplicationDetails",value:function(){var a=this,x=this.advancedSearchService.getApplications(0,10,null,this.privateFacetParams).subscribe(function(O){a.applications=O.content,a.applicationCount=(0,p.uf)(Number(O.total),"en-US","1.0-0"),O.facets&&O.facets.length>0&&(a.rawFacetsApplication=O.facets)});this.subscriptions.push(x)}},{key:"getBrowseProductDetails",value:function(){var a=this,x=this.advancedSearchService.getProducts(0,10,null,this.privateFacetParams).subscribe(function(O){a.products=O.content,a.productCount=(0,p.uf)(Number(O.total),"en-US","1.0-0"),O.facets&&O.facets.length>0&&(a.rawFacetsProduct=O.facets)});this.subscriptions.push(x)}},{key:"getBrowseClinicalTrialDetails",value:function(){var a=this,x=this.advancedSearchService.getClinicalTrials(0,10,null,this.privateFacetParams).subscribe(function(O){a.clinicalTrials=O.content,a.clinicalTrialCount=(0,p.uf)(Number(O.total),"en-US","1.0-0"),O.facets&&O.facets.length>0&&(a.rawFacetsClinicalTrial=O.facets)});this.subscriptions.push(x)}},{key:"getBrowseAdverseEventPtDetails",value:function(){var a=this,x=this.adverseEventService.getAdverseEventPt(null,0,10,null,this.privateFacetParams).subscribe(function(O){a.adverseEventPt=O.content,a.adverseEventPtCount=(0,p.uf)(Number(O.total),"en-US","1.0-0"),O.facets&&O.facets.length>0&&(a.rawFacetsAdverseEventPt=O.facets)});this.subscriptions.push(x)}},{key:"getBrowseAdverseEventDmeDetails",value:function(){var a=this,x=this.adverseEventService.getAdverseEventDme(null,0,10,null,this.privateFacetParams).subscribe(function(O){a.adverseEventDme=O.content,a.adverseEventDmeCount=(0,p.uf)(Number(O.total),"en-US","1.0-0"),O.facets&&O.facets.length>0&&(a.rawFacetsAdverseEventDme=O.facets)});this.subscriptions.push(x)}},{key:"getBrowseAdverseEventCvmDetails",value:function(){var a=this,x=this.adverseEventService.getAdverseEventCvm(null,0,10,null,this.privateFacetParams).subscribe(function(O){a.adverseEventCvm=O.content,a.adverseEventCvmCount=(0,p.uf)(Number(O.total),"en-US","1.0-0"),O.facets&&O.facets.length>0&&(a.rawFacetsAdverseEventCvm=O.facets)});this.subscriptions.push(x)}},{key:"tabSelectedUpdated",value:function(a){a&&(this.category=a.tab.textLabel,this.category&&(this.tabClicked=!0,this.loadFileName()))}},{key:"loadFileName",value:function(){this.category&&(this.query="",this.facetDisplayType="default",this.facetManagerService.clearSelections(),this.facetManagerService.unregisterFacetSearchHandler(),"Substance"===this.category?(this.dictionaryFileName="substance_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.substanceService.getSubstanceFacets),this.rawFacets=this.rawFacetsSubstance,this.facetKey="substances",this.facetDisplayType="facetView"):"Application"===this.category?(this.dictionaryFileName="application_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.applicationService.getApplicationFacets),this.rawFacets=this.rawFacetsApplication,this.facetKey="applications"):"Product"===this.category?(this.dictionaryFileName="productall_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.productService.getProductFacets),this.rawFacets=this.rawFacetsProduct,this.facetKey="products"):"Clinical Trial"===this.category?(this.dictionaryFileName="ctus_dictionary.json",this.facetKey="ctclinicaltrial"):"Adverse Event"===this.category&&(this.dictionaryFileName="adverseevent_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets),this.rawFacets=this.rawFacetsAdverseEventPt,this.facetKey="adverseeventpt")),this.getSearchField()}},{key:"getSearchField",value:function(){var a=this;this.http.get("".concat(this.configService.environment.baseHref,"assets/data/")+this.dictionaryFileName).subscribe(function(x){x.All={lucenePath:"",description:"All substance fields",type:"string",cvDomain:""},a.queryableSubstanceDict=x;var O=["All"],W=["All","Manual Query Entry"];Object.keys(a.queryableSubstanceDict).forEach(function(Le){O.push(Le),null!=a.queryableSubstanceDict[Le].priority&&W.push(Le)}),a.displayProperties=O,a.displayPropertiesCommon=W,null!=a.queryStatementHashes&&!1===a.tabClicked&&a.queryStatementHashes.forEach(function(Le){a.queryStatements.push({queryHash:Le})}),0===a.queryStatements.length&&a.queryStatements.push({})})}},{key:"queryUpdated",value:function(a,x){var O=this;setTimeout(function(){Object.keys(a).forEach(function(W){O.queryStatements[x][W]=a[W]}),O.query="",O.query=O.queryStatements.map(function(W){return W.query}).join(" ").trim(),O.facetQueryConstruct()})}},{key:"addQueryStatement",value:function(){this.queryStatements.push({condition:"",queryableProperty:"All",command:""})}},{key:"removeQueryStatement",value:function(a){this.queryStatements.splice(a,1),this.query=this.queryStatements.map(function(x){return x.query}).join(" "),this.queryDisplay=this.query+this.queryFacet}},{key:"togglePanelExpand",value:function(){this.showSpinner=!0,this.panelExpanded=!this.panelExpanded,this.showSpinner=!1}},{key:"facetsLoaded",value:function(a){this.numFacetsLoaded=a}},{key:"facetViewChange",value:function(a){this.facetViewCategorySelected=a.value}},{key:"clearSearch",value:function(){}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(a){a.removeFacet(a.type,a.bool,a.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"facetQueryConstruct",value:function(){var a=this;this.queryFacet="",this.displayFacets.forEach(function(x,O){x&&(a.queryFacet=(a.query&&0===O?" AND ":"")+a.queryFacet+(a.queryFacet?" AND ":"")+x.type+":"+x.val)}),this.queryDisplay=this.query+this.queryFacet}},{key:"facetsParamsUpdated",value:function(a){this.privateFacetParams=a.facetParam,this.displayFacets=a.displayFacets,this.populateUrlQueryParameters(),this.facetQueryConstruct();for(var x=!1,O=0,W=Object.keys(this.privateFacetParams);O0)){x=!1;break}x=!0}!0===x&&(this.setFacetLocationUrl(),this.processSearch())}},{key:"encodeValue",value:function(a){var x=a.replace("!","!@");return(x=(x=(x=x.replace(/[.]/g,"!.")).replace(/[\+]/g,"!+")).replace(/[,]/g,"!,")).replace(/[\*]/g,"!*")}},{key:"populateUrlQueryParameters",value:function(a){for(var O,x=[],W=0,Le=Object.keys(this.privateFacetParams);W0){this.query?"Clinical Trial"===this.category?rt.queryParams.searchTerm=this.query:(rt.queryParams.search=this.query,rt.queryParams["g-search-hash"]=W.toString()):Object.keys(this.privateFacetParams).length>0&&(rt.queryParams.facets=this.navigationExtrasFacet.queryParams.facets);var Ht={queryParams:{"g-search-hash":W.toString()}};if(window.history.pushState({},"Advanced Search","/advanced-search?g-search-hash="+Ht.queryParams["g-search-hash"]),"Substance"===this.category){var In=this.editor.getMolfile();In&&In.length>72?this.structureService.interpretStructure(In).subscribe(function(ei){var qi=ei.structure.id,Ar=ei.structure.smiles;rt.queryParams.structure_search=qi||null,rt.queryParams.type=a.searchType||null,Ht.queryParams.structure=qi,Ht.queryParams.type=a.searchType||null,"similarity"===a.searchType&&(rt.queryParams.cutoff=a.similarityCutoff||0,Ht.queryParams.cutoff=a.similarityCutoff||0),null!=Ar&&(rt.queryParams.smiles=Ar),window.history.pushState({},"Structure Search","/structure-search?structure="+Ht.queryParams.structure+"&type="+Ht.queryParams.type+"&cutoff="+Ht.queryParams.cutoff),a.router.navigate(["/browse-substance"],rt)},function(){}):this.router.navigate(["/browse-substance"],rt)}else this.router.navigate("Application"===this.category?["/browse-applications"]:"Product"===this.category?["/browse-products"]:"Clinical Trial"===this.category?["/browse-clinical-trials"]:"Adverse Event"===this.category?["/browse-adverse-events"]:["/browse-substance"],rt)}else alert("Please select any criteria to search")}},{key:"processSearchOut",value:function(){this.processSearch()}},{key:"editorOnLoad",value:function(a){var x=this;this.loadingService.setLoading(!1),this.editor=a,setTimeout(function(){x.activatedRoute.queryParamMap.subscribe(function(O){O.has("structure")&&x.structureService.getMolfile(O.get("structure")).subscribe(function(W){x.editor.setMolecule(W)}),O.has("type")&&(x.searchType=O.get("type")),"similarity"===x.searchType&&(x.showSimilarityCutoff=!0,x.similarityCutoff=O.has("cutoff")&&Number(O.get("cutoff"))||.8),x.searchTypeControl.setValue(x.searchType)})})}},{key:"searchTypeSelected",value:function(a){this.searchType=a.value,this.gaService.sendEvent("structureSearch","select:search-type",this.searchType),"similarity"===this.searchType?(this.showSimilarityCutoff=!0,this.similarityCutoff=.8):this.showSimilarityCutoff=!1}},{key:"molvecUpdate",value:function(a){this.editor.setMolecule(a)}},{key:"openStructureImportDialog",value:function(){var a=this;this.gaService.sendEvent("structureSearch","button:import","import structure"),this.dialog.open(Jh.N,{height:"auto",width:"650px",data:{}}).afterClosed().subscribe(function(O){O&&O.structure&&O.structure.molfile&&a.editor.setMolecule(O.structure.molfile)},function(){a.overlayContainer.style.zIndex=null})}},{key:"openStructureExportDialog",value:function(){var a=this;this.gaService.sendEvent("structureSearch","button:export","export structure");var x=this.dialog.open(nm.g,{height:"auto",width:"650px",data:{molfile:this.editor.getMolfile(),smiles:this.editor.getSmiles()}});this.overlayContainer.style.zIndex="1002",x.afterClosed().subscribe(function(){a.overlayContainer.style.zIndex=null},function(){a.overlayContainer.style.zIndex=null})}},{key:"searchCutoffChanged",value:function(a){this.similarityCutoff=a.value,this.gaService.sendEvent("structureSearch","slider","similarity-cutoff",this.similarityCutoff)}},{key:"_editor",get:function(){return this.editor}},{key:"_searchType",get:function(){return this.searchType}},{key:"nameResolved",value:function(a){this.editor.setMolecule(a)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(bu.eN),e.Y36(d.F0),e.Y36(d.gz),e.Y36(wt.b),e.Y36(tm),e.Y36(gc.a),e.Y36(On.E),e.Y36(Uu.FW),e.Y36(ge.d),e.Y36(E.I),e.Y36(Mn.M),e.Y36(_l.m),e.Y36(wn.bH),e.Y36(Jn.$),e.Y36(sn.Dx),e.Y36(p.Ye),e.Y36(qt.uw),e.Y36(Ch.D))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-advanced-search"]],viewQuery:function(l,a){var x;1&l&&(e.Gf(Mh,5),e.Gf(Qh,7)),2&l&&(e.iGM(x=e.CRH())&&(a.myCanvas=x.first),e.iGM(x=e.CRH())&&(a.contentContainer=x.first))},decls:40,vars:13,consts:[[1,"div-center","margintop50px"],[1,"div-flex"],[1,"title"],[1,"margintop30px","marginleft200px"],[3,"routerLink"],[1,"font12px"],[1,"search-button"],["mat-flat-button","","color","primary",3,"click"],[1,"tab-style","margintop30px",3,"selectedIndex","selectedTabChange"],["label","Substance"],["mat-tab-label",""],["label","Application",4,"ngIf"],["label","Product",4,"ngIf"],["label","Adverse Event",4,"ngIf"],[1,"builder-container"],["class","builder-row",4,"ngFor","ngForOf"],["class","titlequery",4,"ngIf"],["class","query-container",4,"ngIf"],["class","margintop10px width100percent",3,"expanded",4,"ngIf"],[1,"width100percent"],["class","panel-style",4,"ngIf"],[3,"keyup.enter"],["label","Application"],["label","Product"],["label","Adverse Event"],[1,"builder-row"],[1,"query-statement-container"],[3,"category","queryStatementHash","index","queryableDictionary","queryableOptions","queryableOptionsCommon","queryUpdated","processSearchOut"],[1,"actions-container"],[1,"button-container"],["mat-icon-button","","aria-label","remove query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","add query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","remove query statement",3,"click"],["svgIcon","remove_circle_outline"],["mat-icon-button","","aria-label","add query statement",3,"click"],["svgIcon","add_circle_outline"],[1,"titlequery"],[1,"query-container"],[1,"query-value"],[1,"margintop10px","width100percent",3,"expanded"],[1,"colorgray"],[1,"colororange"],["matInput","","placeholder","Search Facet Name","name","facetNameText",3,"ngModel","ngModelChange"],[4,"ngIf"],[1,"align-right"],["mat-flat-button","",1,"bordergray",3,"click"],["class","spinnerstyle",4,"ngIf"],["includeFacetSearch","true","calledFrom","advancedsearch",3,"rawFacets","configName","facetViewCategorySelected","facetDisplayType","panelExpanded","facetNameText","facetsParamsUpdated","facetsLoaded"],[3,"formControl","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],[1,"panel-style"],[1,"panel-style","width100percent",3,"expanded"],[1,""],[1,"margintop12px"],[1,"marginleft25px"],[1,"search-content-container"],["contentContainer",""],[1,"structure-editor-actions-container"],[1,"editor-container"],[3,"editorOnLoad","loadedMolfile"],[1,"search-actions"],[1,"two"],[1,"search-type-select"],["placeholder","Search type","value","substructure",3,"formControl","selectionChange"],["value","substructure"],["value","similarity"],["value","exact"],["value","flex"],["class","similarity-cutoff",4,"ngIf"],[1,"action-button-container","one"],["name","export","mat-raised-button","","color","primary",1,"import-button",3,"click"],["name","import","mat-raised-button","","color","primary",1,"export-button",3,"click"],[3,"structureSelected"],[1,"similarity-cutoff"],["min",".40","max","1","step","0.01",3,"value","input"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"h2",2),e._uU(3," Advanced Search "),e.qZA(),e.TgZ(4,"div",3),e.TgZ(5,"a",4),e.TgZ(6,"span",5),e._uU(7,"Structure Search"),e.qZA(),e.qZA(),e._uU(8," \xa0\xa0\xa0\xa0 "),e.TgZ(9,"a",4),e.TgZ(10,"span",5),e._uU(11,"Sequence Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"div",6),e.TgZ(13,"div"),e.TgZ(14,"button",7),e.NdJ("click",function(){return a.processSearch()}),e._uU(15,"Search"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"mat-tab-group",8),e.NdJ("selectedTabChange",function(O){return a.tabSelectedUpdated(O)}),e.TgZ(17,"mat-tab",9),e.YNc(18,Wh,5,1,"ng-template",10),e.qZA(),e.YNc(19,xh,2,0,"mat-tab",11),e.YNc(20,am,2,0,"mat-tab",12),e.YNc(21,Qs,3,0,"mat-tab",13),e.qZA(),e.TgZ(22,"mat-card"),e._UZ(23,"mat-card-title"),e.TgZ(24,"mat-card-content"),e.TgZ(25,"div",14),e.YNc(26,rm,8,8,"div",15),e.qZA(),e.YNc(27,Sh,2,0,"div",16),e.YNc(28,b,3,1,"div",17),e.qZA(),e.qZA(),e.YNc(29,M,22,13,"mat-expansion-panel",18),e.TgZ(30,"div",19),e.YNc(31,re,35,3,"div",20),e.qZA(),e.TgZ(32,"div",6),e.TgZ(33,"div"),e.TgZ(34,"button",7),e.NdJ("click",function(){return a.processSearch()}),e._uU(35,"Search"),e.qZA(),e.qZA(),e.TgZ(36,"div",21),e.NdJ("keyup.enter",function(){return a.processSearch()}),e.qZA(),e.qZA(),e.qZA(),e._UZ(37,"br"),e._UZ(38,"br"),e._UZ(39,"br")),2&l&&(e.xp6(5),e.Q6J("routerLink",e.DdM(11,lt)),e.xp6(4),e.Q6J("routerLink",e.DdM(12,Wt)),e.xp6(7),e.Q6J("selectedIndex",a.tabSelectedIndex),e.xp6(3),e.Q6J("ngIf",a.loadedComponents&&a.loadedComponents.applications),e.xp6(1),e.Q6J("ngIf",a.loadedComponents&&a.loadedComponents.products),e.xp6(1),e.Q6J("ngIf",a.loadedComponents&&a.loadedComponents.adverseevents),e.xp6(5),e.Q6J("ngForOf",a.queryStatements),e.xp6(1),e.Q6J("ngIf",a.queryDisplay),e.xp6(1),e.Q6J("ngIf",a.queryDisplay),e.xp6(1),e.Q6J("ngIf",a.advancedSearchFacetDisplay),e.xp6(2),e.Q6J("ngIf","Substance"===a.category))},styles:[".div-center[_ngcontent-%COMP%]{min-width:1200px;max-width:1200px;margin:auto}.div-flex[_ngcontent-%COMP%]{max-width:1200px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.div-flex-right[_ngcontent-%COMP%]{max-width:1200px;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:0 5px;border:1px solid #b1aeae;margin-left:150px;margin-right:150px}.mat-card[_ngcontent-%COMP%]{margin-top:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:1250px;width:100%}.builder-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.header-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;margin-top:10px;padding-top:7px;padding-bottom:10px;font-size:14px;font-weight:600;height:30px}.header-row[_ngcontent-%COMP%] .condition-column[_ngcontent-%COMP%]{width:100px}.header-row[_ngcontent-%COMP%] .queryable-property-column[_ngcontent-%COMP%]{width:400px}.header-row[_ngcontent-%COMP%] .command-column[_ngcontent-%COMP%]{width:190px}.header-row[_ngcontent-%COMP%] .query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-left:10px}.builder-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;padding-bottom:5px}.query-statement-container[_ngcontent-%COMP%]{width:94%;max-width:94%}.query-value[_ngcontent-%COMP%]{padding:10px 15px;background-color:#ececec;border:solid 1px #DBDBDB;border-radius:2px;min-height:40px}.actions-container[_ngcontent-%COMP%]{width:6%;display:-ms-flexbox;display:flex}.actions-container[_ngcontent-%COMP%] .button-container[_ngcontent-%COMP%]{width:35px}.mat-card-actions[_ngcontent-%COMP%]{padding-top:10px 10px 0 10px}.query-builder-actions[_ngcontent-%COMP%]{margin:10px 0 15px}.title[_ngcontent-%COMP%]{margin-top:30px;margin-bottom:0;padding-left:10px}.titletab[_ngcontent-%COMP%]{font-size:14px;color:#2222af;padding:10px 0 5px 10px}.titlequery[_ngcontent-%COMP%]{font-size:20px;font-weight:700;color:#2222af;padding:10px 0 5px 10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.colormaroon[_ngcontent-%COMP%]{color:#975757}.colororange[_ngcontent-%COMP%]{color:#cf9d3f}.colorblack[_ngcontent-%COMP%]{color:#000}.colorgray[_ngcontent-%COMP%]{color:#5a4444}.colorwhite[_ngcontent-%COMP%]{color:#fff}.margintopneg80px[_ngcontent-%COMP%]{margin-top:-80px}.marginneg10px[_ngcontent-%COMP%]{margin-left:-10px}.margintop5px[_ngcontent-%COMP%]{margin-top:5px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintop50px[_ngcontent-%COMP%]{margin-top:50px}.margintop70px[_ngcontent-%COMP%]{margin-top:70px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft125px[_ngcontent-%COMP%]{margin-left:125px}.marginleft200px[_ngcontent-%COMP%]{margin-left:200px}.marginright15px[_ngcontent-%COMP%]{margin-right:15px}.marginright10px[_ngcontent-%COMP%]{margin-right:10px}.marginright20px[_ngcontent-%COMP%]{margin-right:20px}.marginright25px[_ngcontent-%COMP%]{margin-right:25px}.marginbottom5px[_ngcontent-%COMP%]{margin-bottom:5px}.padtop10px[_ngcontent-%COMP%]{padding-top:50px}.width5percent[_ngcontent-%COMP%]{width:5%;min-width:5%;max-width:5%}.width10percent[_ngcontent-%COMP%]{width:10%;min-width:10%;max-width:10%}.width12percent[_ngcontent-%COMP%]{width:12%;min-width:12%;max-width:12%}.width15percent[_ngcontent-%COMP%]{width:15%;min-width:15%;max-width:15%}.width25percent[_ngcontent-%COMP%]{width:25%;min-width:25%;max-width:25%}.width27percent[_ngcontent-%COMP%]{width:27%;min-width:27%;max-width:27%}.width30percent[_ngcontent-%COMP%]{width:30%;min-width:30%;max-width:30%}.width33percent[_ngcontent-%COMP%]{width:33%;min-width:33%;max-width:33%}.width88percent[_ngcontent-%COMP%]{width:88%;min-width:88%;max-width:88%}.width100percent[_ngcontent-%COMP%]{width:100%;min-width:100%;max-width:100%}.height25px[_ngcontent-%COMP%]{height:25px}.text-align[_ngcontent-%COMP%]{text-align:right}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderbottomdash[_ngcontent-%COMP%]{border-bottom-style:dotted;border-bottom-color:#f3f0f0}.clearboth[_ngcontent-%COMP%]{clear:both}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:56px;right:0;background:rgba(150,148,148,.15);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}.mat-tab-label[_ngcontent-%COMP%]{background:#e7e7e7;color:#9b2727;min-width:60px!important}[_nghost-%COMP%] .mat-tab-label-active{color:#000;font-weight:700;background-color:#d4d6da}[_nghost-%COMP%] .mat-ink-bar{background-color:#f0960f!important;background-color:var(--primary-color, #f0960f)!important;height:2px}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;border-left:none;padding-top:10px;padding-left:0;margin-left:0}.search-actions[_ngcontent-%COMP%] .one[_ngcontent-%COMP%]{-ms-flex-order:1;order:1}.search-actions[_ngcontent-%COMP%] .export-button[_ngcontent-%COMP%]{margin-left:7px}.search-actions[_ngcontent-%COMP%] .two[_ngcontent-%COMP%]{-ms-flex-order:2;order:2;margin-left:auto;display:-ms-flexbox;display:flex;padding-right:10px}.search-actions[_ngcontent-%COMP%] .two[_ngcontent-%COMP%] .similarity-cutoff[_ngcontent-%COMP%]{margin:1px 0 0}.search-actions[_ngcontent-%COMP%] .three[_ngcontent-%COMP%]{-ms-flex-order:3;order:3}.action-button-container[_ngcontent-%COMP%]{width:auto;margin-top:0;-ms-flex-item-align:start;align-self:flex-start}.action-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:auto;border:1px solid green}}.tab-style[_ngcontent-%COMP%]{position:relative;z-index:1}.search-button[_ngcontent-%COMP%]{position:relative;top:30px;z-index:2;width:85px;float:right} .row{display:-ms-flexbox;display:flex;-ms-flex-align:space-between;align-items:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:125px;width:100%} .mat-expansion-panel{margin-right:40px} .col{float:left;width:30%;padding-right:5px;margin-right:70px;margin-left:50px} .col:nth-child(n){margin-right:22px} .col:nth-child(3n+1){clear:left} .panel-height{height:500px;overflow:auto;padding-right:5px} .panel-height-scroll{height:800px;overflow-y:scroll}panel-style[_ngcontent-%COMP%]{min-width:100%;max-width:100%;margin-top:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:1250px}.search-content-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:0 5px}.structure-editor-actions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.editor-container[_ngcontent-%COMP%]{width:920px;min-height:460px}.ketcher[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{height:460px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{min-height:330px}.search-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;padding-left:15px;margin-left:10px;border-left:1px solid #b3b3b3}.search-actions[_ngcontent-%COMP%] .mat-slider-horizontal[_ngcontent-%COMP%]{width:100%}.similarity-cutoff[_ngcontent-%COMP%]{margin-top:20px;margin-bottom:20px;text-align:center}.action-button-container[_ngcontent-%COMP%]{margin-top:20px;-ms-flex-item-align:end;align-self:flex-end;width:100%}.action-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;width:100%}.two[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.action-button-container[_ngcontent-%COMP%]{width:50%;margin:20px auto auto}}@media (max-width: 970px){.structure-editor-actions-container[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.editor-container[_ngcontent-%COMP%], .search-actions[_ngcontent-%COMP%]{min-width:633px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%], .jsdraw[_ngcontent-%COMP%] .search-actions[_ngcontent-%COMP%]{min-width:710px}}"]}),m}(),bn=n(62128);function Bn(m,D){if(1&m&&(e.TgZ(0,"mat-option",12),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l),e.xp6(1),e.hij(" ",l," ")}}function Xn(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-label"),e._uU(2,"Condition"),e.qZA(),e.TgZ(3,"mat-select",6),e.NdJ("openedChange",function(O){return e.CHM(l),e.oxw().openedChange(O)}),e.YNc(4,Bn,2,2,"mat-option",7),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(3),e.Q6J("formControl",a.conditionControl),e.xp6(1),e.Q6J("ngForOf",a.conditionOptions)}}function oi(m,D){if(1&m&&(e.TgZ(0,"mat-option",15),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l)("matTooltip",l),e.xp6(1),e.hij(" ",l," ")}}function pi(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-label"),e._uU(2,"Search in Fields"),e.qZA(),e.TgZ(3,"mat-select",6),e.NdJ("openedChange",function(O){return e.CHM(l),e.oxw().openedChange(O)}),e.YNc(4,oi,2,3,"mat-option",13),e.qZA(),e._UZ(5,"span",14),e.TgZ(6,"mat-hint",8),e.TgZ(7,"a",9),e.NdJ("click",function(){return e.CHM(l),e.oxw().showAllFields()}),e._uU(8,"Show all fields"),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw();e.xp6(3),e.Q6J("formControl",a.queryablePropertiesControl),e.xp6(1),e.Q6J("ngForOf",a.queryableOptionsCommon)}}function ii(m,D){if(1&m&&(e.TgZ(0,"mat-option",15),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l)("matTooltip",l),e.xp6(1),e.hij(" ",l," ")}}function Ui(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"input",17),e.NdJ("blur",function(){return e.CHM(l),e.oxw().queryablePropertiesAutocompleteBlurred()}),e.qZA(),e.TgZ(3,"a",18),e.NdJ("click",function(){return e.CHM(l),e.oxw().clearSelectedQueryableProperty()}),e._UZ(4,"mat-icon",19),e.qZA(),e.TgZ(5,"mat-hint",8),e.TgZ(6,"a",20),e.NdJ("click",function(){return e.CHM(l),e.oxw().showCommonFields()}),e._uU(7,"Show common fields"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(8,"mat-autocomplete",21,22),e.NdJ("optionSelected",function(W){return e.CHM(l),e.oxw().queryablePropertySelected(W.option.value)})("opened",function(){return e.CHM(l),e.oxw().increaseOverlayZindex()})("closed",function(){return e.CHM(l),e.oxw().queryablePropertiesAutocompleteClosed()}),e.YNc(10,ii,2,3,"mat-option",13),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(9),x=e.oxw();e.xp6(2),e.Q6J("formControl",x.queryablePropertiesAutocompleteControl)("matAutocomplete",a),e.xp6(8),e.Q6J("ngForOf",x.queryableOptionsAll)}}function Qi(m,D){if(1&m&&(e.TgZ(0,"mat-option",12),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l),e.xp6(1),e.hij(" ",l," ")}}function Lr(m,D){if(1&m&&(e.TgZ(0,"mat-option",12),e.TgZ(1,"div",28),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=e.oxw(3);e.Q6J("value",l.key),e.xp6(1),e.Q6J("innerHTML",a.highlight(l.key),e.oJD),e.xp6(1),e.Oqu(l.key)}}function Tr(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",24),e.TgZ(2,"input",25),e.NdJ("focus",function(){return e.CHM(l),e.oxw(2).focused()})("keyup.enter",function(){return e.CHM(l),e.oxw(2).processSearch()})("keyup",function(W){e.CHM(l);var Le=e.oxw().$implicit,rt=e.oxw();return Le.constructQuery(W.target.value.trim(),rt.selectedCondition,rt.selectedQueryableProperty,rt.selectedLucenePath,rt.queryUpdated,rt.queryParts,rt.commandInputValueDict[Le.type])}),e.qZA(),e.TgZ(3,"mat-autocomplete",26,27),e.NdJ("optionSelected",function(W){return e.CHM(l),e.oxw(2).searchOptionSelected(W)})("closed",function(){return e.CHM(l),e.oxw(2).autoCompleteClosed()}),e.YNc(5,Lr,3,3,"mat-option",7),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(4),x=e.oxw(2);e.xp6(1),e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",x.searchControl)("matAutocomplete",a),e.xp6(3),e.Q6J("ngForOf",x.substanceSuggestionsGroup)}}function Xa(m,D){1&m&&(e.TgZ(0,"mat-error"),e._uU(1,"Required"),e.qZA())}function $r(m,D){if(1&m&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&m){var l=e.oxw(3);e.xp6(1),e.Oqu(l.commandOptionsExample)}}function er(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"input",29),e.NdJ("ngModelChange",function(rt){e.CHM(l);var Ht=e.oxw(),In=Ht.$implicit,ei=Ht.index;return e.oxw().commandInputValueDict[In.type][ei]=rt})("keyup.enter",function(){return e.CHM(l),e.oxw(2).processSearch()})("keyup",function(rt){e.CHM(l);var Ht=e.oxw().$implicit,In=e.oxw();return Ht.constructQuery(rt.target.value.trim(),In.selectedCondition,In.selectedQueryableProperty,In.selectedLucenePath,In.queryUpdated,In.queryParts,In.commandInputValueDict[Ht.type])}),e.qZA(),e.YNc(3,Xa,2,0,"mat-error",2),e.TgZ(4,"mat-hint",8),e.YNc(5,$r,2,1,"span",2),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(),x=a.$implicit,O=a.index,W=e.oxw();e.xp6(2),e.Q6J("type",x.type)("name","input_"+O)("ngModel",W.commandInputValueDict[x.type][O]),e.xp6(1),e.Q6J("ngIf",!W.commandInputValueDict[x.type][O]),e.xp6(2),e.Q6J("ngIf",W.commandOptionsExample)}}function or(m,D){1&m&&(e.TgZ(0,"mat-error"),e._uU(1,"Required"),e.qZA())}function Ho(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"input",30),e.NdJ("ngModelChange",function(Ht){e.CHM(l);var In=e.oxw(),ei=In.$implicit,_i=In.index;return e.oxw().commandInputValueDict[ei.type][_i]=Ht})("keyup.enter",function(){return e.CHM(l),e.oxw(2).processSearch()})("dateChange",function(Ht){e.CHM(l);var In=e.oxw().$implicit,ei=e.oxw();return In.constructQuery(Ht.value,ei.selectedCondition,ei.selectedQueryableProperty,ei.selectedLucenePath,ei.queryUpdated,ei.queryParts,ei.commandInputValueDict[In.type])})("dateInput",function(Ht){e.CHM(l);var In=e.oxw().$implicit,ei=e.oxw();return In.constructQuery(Ht.value,ei.selectedCondition,ei.selectedQueryableProperty,ei.selectedLucenePath,ei.queryUpdated,ei.queryParts,ei.commandInputValueDict[In.type])}),e.qZA(),e.YNc(3,or,2,0,"mat-error",2),e._UZ(4,"mat-datepicker-toggle",31),e.TgZ(5,"mat-datepicker",32,33),e.NdJ("opened",function(){return e.CHM(l),e.oxw(2).increaseOverlayZindex()})("closed",function(){return e.CHM(l),e.oxw(2).decreaseOverlayZindex()}),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(6),x=e.oxw(),O=x.$implicit,W=x.index,Le=e.oxw();e.xp6(2),e.Q6J("ngModel",Le.commandInputValueDict[O.type][W])("matDatepicker",a),e.xp6(1),e.Q6J("ngIf",!Le.commandInputValueDict[O.type][W]),e.xp6(1),e.Q6J("for",a)}}function pr(m,D){if(1&m&&(e.TgZ(0,"mat-option",15),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.Q6J("value",l.value)("matTooltip",l.display),e.xp6(1),e.hij(" ",l.display," ")}}function Ws(m,D){1&m&&(e.TgZ(0,"mat-error"),e._uU(1,"Required"),e.qZA())}function jo(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"mat-select",34),e.NdJ("ngModelChange",function(rt){e.CHM(l);var Ht=e.oxw(),In=Ht.$implicit,ei=Ht.index;return e.oxw().commandInputValueDict[In.type][ei]=rt})("openedChange",function(rt){return e.CHM(l),e.oxw(2).openedChange(rt)})("selectionChange",function(rt){e.CHM(l);var Ht=e.oxw().$implicit,In=e.oxw();return Ht.constructQuery(rt.value,In.selectedCondition,In.selectedQueryableProperty,In.selectedLucenePath,In.queryUpdated,In.queryParts,In.commandInputValueDict[Ht.type])})("keyup.enter",function(){return e.CHM(l),e.oxw(2).processSearch()}),e.YNc(3,pr,2,3,"mat-option",13),e.qZA(),e.YNc(4,Ws,2,0,"mat-error",2),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(),x=a.$implicit,O=a.index,W=e.oxw();e.xp6(2),e.Q6J("ngModel",W.commandInputValueDict[x.type][O]),e.xp6(1),e.Q6J("ngForOf",W.cvOptions),e.xp6(1),e.Q6J("ngIf",!W.commandInputValueDict[x.type][O])}}function Ms(m,D){if(1&m&&(e.TgZ(0,"div",23),e.YNc(1,Tr,6,4,"div",2),e.YNc(2,er,6,5,"div",2),e.YNc(3,Ho,7,4,"div",2),e.YNc(4,jo,5,3,"div",2),e.qZA()),2&m){var l=D.$implicit,a=e.oxw();e.xp6(1),e.Q6J("ngIf",a.selectedQueryableSuggest),e.xp6(1),e.Q6J("ngIf",!a.selectedQueryableSuggest&&("text"==l.type||"boolean"==l.type||"number"==l.type)),e.xp6(1),e.Q6J("ngIf","datetime"==l.type),e.xp6(1),e.Q6J("ngIf","select"==l.type)}}var xs=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi){(0,P.Z)(this,D),this.overlayContainerService=l,this.cvService=a,this.http=x,this.router=O,this.configService=W,this.utilitiesService=Le,this.substanceService=rt,this.applicationService=Ht,this.productService=In,this.clinicalTrialService=ei,this.facetManagerService=_i,this.activatedRoute=Mi,this.advancedSearchService=qi,this.queryStatements=[],this.query="",this._index=0,this.queryUpdated=new e.vpe,this.processSearchOut=new e.vpe,this.queryablePropertiesControl=new je.NI,this.queryablePropertiesAutocompleteControl=new je.NI,this.subscriptions=[],this.conditionOptions=["AND","OR","NOT"],this.conditionControl=new je.NI,this.categoryControl=new je.NI,this.commandControl=new je.NI,this.searchFieldControl=new je.NI,this.selectedCondition="",this.isShowAllCommandOptions=!1,this.queryParts=[],this.typeCommandOptions=bn.k,this.commandInputValueDict={},this.isShowCommonFields=!0,this.advancedQueryStatements=[],this.searchControl=new je.NI,this.suggestions=[],this.matOpen=!0,this.searchPerformed=new e.vpe,this.opened=new e.vpe,this.closed=new e.vpe,this.typeAheadUpdatedOut=new e.vpe}return(0,t.Z)(D,[{key:"category",set:function(a){this.categoryinput=a}},{key:"queryableDictionary",set:function(a){null!=a&&(this._queryableDictionary=a)}},{key:"queryableOptions",set:function(a){this.allOptions=a,this.queryableOptionsAll=a}},{key:"index",get:function(){return this._index},set:function(a){null!=a&&(this._index=a,0===this._index&&this.commandInputs&&(this.selectedCondition="",this.refreshQuery()))}},{key:"ngOnInit",value:function(){var a=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),bn.J.forEach(function(Mi){a.commandInputValueDict[Mi]=[]});var x=this.queryablePropertiesControl.valueChanges.subscribe(function(Mi){a.queryablePropertySelected(Mi)});this.subscriptions.push(x);var O=this.queryablePropertiesAutocompleteControl.valueChanges.subscribe(function(Mi){a.queryableOptionsAll=a.allOptions.filter(function(qi){return qi.toLowerCase().indexOf(Mi.toLowerCase())>-1})});this.subscriptions.push(O);var rt,W=this.commandControl.valueChanges.subscribe(function(Mi){a.setCommand(Mi)});if(this.subscriptions.push(W),this._index>0){this.conditionControl.setValue("AND"),this.selectedCondition="AND ";var Le=this.conditionControl.valueChanges.subscribe(function(Mi){a.selectedCondition="".concat(Mi," "),a.refreshQuery()});this.subscriptions.push(Le)}if(this.queryStatementHash){var Ht=localStorage.getItem(this.queryStatementHash.toString());Ht&&(rt=JSON.parse(Ht))}if(null!=rt){var _i=bn.k[this._queryableDictionary[rt.queryableProperty]?this._queryableDictionary[rt.queryableProperty].type:"string"][rt.command];_i.commandInputs&&(this.commandInputValueDict[_i.commandInputs[0].type]=rt.commandInputValues),this.queryParts=rt.queryParts,this.conditionControl.setValue(rt.condition.trim(),{emitEvent:!1}),this.selectedCondition=rt.condition,rt.queryableProperty&&this._queryableDictionary[rt.queryableProperty]&&(this.selectedQueryableSuggest=this._queryableDictionary[rt.queryableProperty].suggest),this.isShowCommonFields=this.queryableOptionsCommon.indexOf(rt.queryableProperty)>-1,this.queryableOptionsCommon.indexOf(rt.queryableProperty)>-1?(this.isShowCommonFields=!0,this.queryablePropertiesControl.setValue(rt.queryableProperty,{emitEvent:!1})):(this.isShowCommonFields=!1,this.queryablePropertiesAutocompleteControl.setValue(rt.queryableProperty,{emitEvent:!1})),this.processQueriablePropertyChange(rt.queryableProperty),this.commandControl.setValue(rt.command),rt.commandInputValues&&this.searchControl.setValue(rt.commandInputValues)}else this.queryablePropertiesControl.setValue("All");this.searchControl.valueChanges.pipe((0,et.b)(500),(0,De.x)(),(0,Ze.w)(function(Mi){return a.query=Mi,a.advancedSearchService.getTypeAheadSearchText(a.categoryinput,a.selectedQueryableSuggest,Mi)})).subscribe(function(Mi){a.substanceSuggestionsGroup=Mi,a.suggestionsFields=Object.keys(a.substanceSuggestionsGroup)},function(Mi){console.log(Mi)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a.unsubscribe()})}},{key:"queryablePropertySelected",value:function(a){this.processQueriablePropertyChange(a),this._queryableDictionary[a]&&(this.selectedQueryableSuggest=this._queryableDictionary[a].suggest,this.commandControl.setValue(this._queryableDictionary[a].cvDomain||"string"!==this._queryableDictionary[a].type?this.commandOptions[0]:"Contains"))}},{key:"processQueriablePropertyChange",value:function(a){var x=this,O="string";this.selectedQueryablePropertyType="string",this.selectedQueryableProperty=a,this._queryableDictionary[a]&&(this._queryableDictionary[a].cvDomain&&this.setCvOptions(this._queryableDictionary[a].cvDomain),this.selectedLucenePath=this._queryableDictionary[a].lucenePath,this.selectedLucenePath&&(this.selectedLucenePath=this.selectedLucenePath.replace(" ","\\ "),this.selectedLucenePath&&(this.selectedLucenePath=this.selectedLucenePath+":")),this.selectedQueryablePropertyType=this._queryableDictionary[a].type,O=this._queryableDictionary[a].type),this.commandOptions=Object.keys(this.typeCommandOptions[O]).filter(function(W){var Le=!1;return!1===x.isShowAllCommandOptions?Le=!!("Contains"===W||"Exact Match"===W||"Starts With"===W||"Ends With"===W||"Manual Query Entry"===W||x._queryableDictionary[a]&&x._queryableDictionary[a].cvDomain&&"the following exact default values"===W||"timestamp"===x.selectedQueryablePropertyType||"number"===x.selectedQueryablePropertyType):x._queryableDictionary[a]&&(x._queryableDictionary[a].cvDomain||"the following exact default values"!==W)&&(Le=!0),Le}).sort(function(W,Le){return"the following exact default values"===W?-1:"the following exact default values"===Le?1:W.toLowerCase()Le.toLowerCase()?1:0})}},{key:"setCvOptions",value:function(a){var x=this;this.cvService.getDomainVocabulary(a).subscribe(function(O){x.cvOptions=O[a].list})}},{key:"refreshQuery",value:function(){var a=this;this.commandInputs&&this.commandInputs.length>0&&(this.commandOptionsExample=this.commandInputs[0].example),this.queryParts=[],this.commandInputs.forEach(function(x,O){a.commandInputValueDict[x.type]&&null!=a.commandInputValueDict[x.type][O]?x.constructQuery(a.commandInputValueDict[x.type][O],a.selectedCondition,a.selectedQueryableProperty,a.selectedLucenePath,a.queryUpdated,a.queryParts):a.queryUpdated.emit({condition:a.selectedCondition,queryableProperty:a.selectedQueryableProperty,command:a.selectedCommandOption,commandInputValues:[],query:""})})}},{key:"queryablePropertiesAutocompleteClosed",value:function(){this.decreaseOverlayZindex();var a=this.queryablePropertiesAutocompleteControl.value;if(a)for(var x=0;x-1?this.queryablePropertiesControl.setValue(this.selectedQueryableProperty):this.queryablePropertiesControl.setValue("All")}},{key:"showAllCommandOptions",value:function(){this.isShowAllCommandOptions=!this.isShowAllCommandOptions,this.processQueriablePropertyChange(this.selectedQueryableProperty)}},{key:"setCommand",value:function(a){this.selectedCommandOption=a;var x=this.typeCommandOptions[this.selectedQueryablePropertyType][a];x.commandInputs?(this.commandInputs=x.commandInputs,this.refreshQuery()):x.constructQuery&&(this.commandInputs=[],x.constructQuery(a.trim(),this.selectedCondition,this.selectedQueryableProperty,this.selectedLucenePath,this.queryUpdated,this.queryParts))}},{key:"processSubstanceSearch",value:function(a){this.navigateToSearchResults(a)}},{key:"navigateToSearchResults",value:function(a){this.router.navigate(["/browse-substance"],{queryParams:a?{search:a}:null})}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"openedChange",value:function(a){a?this.increaseOverlayZindex():this.decreaseOverlayZindex()}},{key:"searchOptionSelected",value:function(a){var x=this,W=a.option.value;this.searchPerformed.emit(W),W&&(this.queryParts=[],this.commandInputs.forEach(function(Le,rt){Le.constructQuery(W,x.selectedCondition,x.selectedQueryableProperty,x.selectedLucenePath,x.queryUpdated,x.queryParts)}))}},{key:"highlight",value:function(a){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=a,this.testElem.scrollWidth>this.testElem.offsetWidth))){var x=a.toUpperCase().indexOf(this.query.toUpperCase());a="..."+a.substring(x-15,a.length)}var O=this.query.replace(/(?=[() ])/g,"\\");return a.replace(new RegExp(O,"gi"),function(W){return""+W+""})}return a}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"processSearch",value:function(){this.processSearchOut.emit()}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(qe.Xj),e.Y36(Je.I),e.Y36(bu.eN),e.Y36(d.F0),e.Y36(On.E),e.Y36(Uu.FW),e.Y36(ge.d),e.Y36(E.I),e.Y36(Mn.M),e.Y36(_l.m),e.Y36(wn.bH),e.Y36(d.gz),e.Y36(tm))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-advanced-query-statement"]],inputs:{queryStatementHash:"queryStatementHash",queryableOptionsCommon:"queryableOptionsCommon",category:"category",queryableDictionary:"queryableDictionary",queryableOptions:"queryableOptions",index:"index"},outputs:{queryUpdated:"queryUpdated",processSearchOut:"processSearchOut",searchPerformed:"searchPerformed",opened:"opened",closed:"closed",typeAheadUpdatedOut:"typeAheadUpdatedOut"},decls:17,vars:8,consts:[[1,"query-statement-container"],[1,"condition-column"],[4,"ngIf"],[1,"queryable-property-column"],[1,"command-column"],[3,"matTooltip"],[3,"formControl","openedChange"],[3,"value",4,"ngFor","ngForOf"],[1,"action-hint"],["tabindex","0","role","link",3,"click"],[1,"query-column"],["class","query-input",4,"ngFor","ngForOf"],[3,"value"],[3,"value","matTooltip",4,"ngFor","ngForOf"],[1,"middle-fill"],[3,"value","matTooltip"],["floatLabel","never"],["type","text","matInput","","placeholder","Search for desired field",3,"formControl","matAutocomplete","blur"],["matSuffix","","matTooltip","Clear input and show all options",3,"click"],["svgIcon","clear"],[3,"click"],[3,"optionSelected","opened","closed"],["queryablePropertyOptions","matAutocomplete"],[1,"query-input"],[1,"search-form-field","space-right-small",3,"floatLabel"],["type","text","placeholder","Enter Search Value (Type Ahead) *","aria-label","Search Text","matInput","",1,"search",3,"formControl","matAutocomplete","focus","keyup.enter","keyup"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["searchAuto","matAutocomplete"],[1,"suggestion-styling",3,"innerHTML"],["matInput","","required","","placeholder","Enter search value",3,"type","name","ngModel","ngModelChange","keyup.enter","keyup"],["matInput","","required","","placeholder","m/d/yyyy",3,"ngModel","matDatepicker","ngModelChange","keyup.enter","dateChange","dateInput"],["matSuffix","",3,"for"],[3,"opened","closed"],["queryDatepicker",""],["required","","placeholder","Select default option",3,"ngModel","ngModelChange","openedChange","selectionChange","keyup.enter"]],template:function(l,a){1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.YNc(2,Xn,5,2,"mat-form-field",2),e.qZA(),e.TgZ(3,"div",3),e.YNc(4,pi,9,2,"mat-form-field",2),e.YNc(5,Ui,11,3,"div",2),e.qZA(),e.TgZ(6,"div",4),e.TgZ(7,"mat-form-field",5),e.TgZ(8,"mat-label"),e._uU(9,"For"),e.qZA(),e.TgZ(10,"mat-select",6),e.NdJ("openedChange",function(O){return a.openedChange(O)}),e.YNc(11,Qi,2,2,"mat-option",7),e.qZA(),e.TgZ(12,"mat-hint",8),e.TgZ(13,"a",9),e.NdJ("click",function(){return a.showAllCommandOptions()}),e._uU(14),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"div",10),e.YNc(16,Ms,5,4,"div",11),e.qZA(),e.qZA()),2&l&&(e.xp6(2),e.Q6J("ngIf",a.index>0),e.xp6(2),e.Q6J("ngIf",a.isShowCommonFields),e.xp6(1),e.Q6J("ngIf",!a.isShowCommonFields),e.xp6(2),e.Q6J("matTooltip",a.selectedCommandOption),e.xp6(3),e.Q6J("formControl",a.commandControl),e.xp6(1),e.Q6J("ngForOf",a.commandOptions),e.xp6(3),e.Oqu(a.isShowAllCommandOptions?"Hide Some Options":"Show More Options"),e.xp6(2),e.Q6J("ngForOf",a.commandInputs))},directives:[p.O5,St.KE,St.hX,we.gD,je.JJ,je.oH,p.sg,_n.ey,f.gM,St.bx,Pt.Nt,je.Fj,bt.ZL,St.R9,I.Hw,bt.XC,je.Q7,je.On,St.TO,Bt.hl,Bt.nW,Bt.Mq],styles:[".query-statement-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.condition-column[_ngcontent-%COMP%]{width:100px;max-width:100px;min-width:100px;padding-right:20px;padding-top:1px}.mat-form-field[_ngcontent-%COMP%]{width:100%;max-width:100%}.mat-form-field[_ngcontent-%COMP%] .mat-form-field-infix{width:100%}.queryable-property-column[_ngcontent-%COMP%]{width:350px;min-width:350px;max-width:350px;padding-right:20px}.command-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-right:10px;padding-top:1px;width:250px;max-width:250px;min-width:250px}.query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;display:-ms-flexbox;display:flex}.query-input[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding:0 10px}.mat-hint.action-hint[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;font-size:12px}.mat-hint.action-hint[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#448aff}.mat-hint.action-hint[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{color:gray;font-size:12px}.mat-hint.action-hint[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:#000}.mat-error[_ngcontent-%COMP%]{color:red}.marginright20px[_ngcontent-%COMP%]{margin-right:20px}.marginright25px[_ngcontent-%COMP%]{margin-right:25px}.width5percent[_ngcontent-%COMP%]{width:5%;min-width:5%;max-width:5%}.width10percent[_ngcontent-%COMP%]{width:10%;min-width:10%;max-width:10%}.width15percent[_ngcontent-%COMP%]{width:15%;min-width:15%;max-width:15%}.width25percent[_ngcontent-%COMP%]{width:25%;min-width:25%;max-width:25%}.width27percent[_ngcontent-%COMP%]{width:27%;min-width:27%;max-width:27%}.width30percent[_ngcontent-%COMP%]{width:30%;min-width:30%;max-width:30%}.width33percent[_ngcontent-%COMP%]{width:33%;min-width:33%;max-width:33%}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}"]}),m}(),vr=n(56473),zs=n(96769),Gs=n(60756),Ks=n(82835),$s=n(10837),Fr=[{path:"advanced-search",component:nn}],Jo=function(){var m=function(){function D(l){(0,P.Z)(this,D),Fr.forEach(function(a){l.config[0].children.push(a)})}return(0,t.Z)(D,null,[{key:"forRoot",value:function(){return{ngModule:D,providers:[tm]}}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0))},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({imports:[[p.ez,d.Bz.forChild(Fr),Nt.g0,Ft.SJ,s.QW,bt.Bb,St.lN,Pt.c,T.ot,I.Ps,ut.Hi,Q.g,h.To,J.p9,v.p0,be.TU,we.LD,_e.KP,qt.Is,$.ie,Ae.Tx,ft.vV,f.AV,B.Nh,gt._r,j.Cq,Bt.FA,je.u5,je.UX,qe.U8,Fo,$o.O,wn.On,vr.h,zs.O,Gs.J]]}),m}();e.B6R(nn,[d.yS,T.lW,B.SP,B.uX,B.uD,p.O5,s.a8,s.n5,s.dn,p.sg,xs,I.Hw,h.ib,h.yz,h.yK,St.KE,Pt.Nt,je.Fj,je.JJ,je.On,St.hX,we.gD,je.oH,_n.ey,j.Ou,Ue.R,h.u4,Ks.K,_e.pH,$s.W],[]);var Kh=function(){var m=(0,t.Z)(function D(){(0,P.Z)(this,D)});return m.\u0275fac=function(l){return new(l||m)},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({imports:[[p.ez,I.Ps,bt.Bb,je.UX,je.u5,St.lN,Pt.c,T.ot]]}),m}(),$h=n(98969);function Xh(m,D){if(1&m&&(e.TgZ(0,"mat-hint"),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Oqu(l.hintMessage)}}function e_(m,D){if(1&m&&(e.TgZ(0,"mat-error"),e._uU(1),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Oqu(l.errorMessage)}}function t_(m,D){if(1&m&&(e.TgZ(0,"mat-option",13),e.TgZ(1,"div",14),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit,a=e.oxw(2);e.Q6J("value",l.key),e.xp6(1),e.Q6J("innerHTML",a.highlight(l.key),e.oJD),e.xp6(1),e.Oqu(l.key)}}function n_(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",10),e.TgZ(2,"span",11),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e.YNc(5,t_,3,3,"mat-option",12),e.qZA()),2&m){var l=D.$implicit,a=e.oxw();e.xp6(4),e.Oqu(l.display),e.xp6(1),e.Q6J("ngForOf",a.substanceSuggestionsGroup[l.value])}}var om=function(){var m=function(){function D(l,a,x,O,W){(0,P.Z)(this,D),this.adverseEventService=l,this.element=a,this.gaService=x,this.configService=O,this.cvService=W,this.searchControl=new je.NI,this.matOpen=!0,this.searchPerformed=new e.vpe,this.searchValueOut=new e.vpe,this.placeholder="Search",this.hintMessage="",this.privateErrorMessage="",this.opened=new e.vpe,this.closed=new e.vpe,this.CasDisplay="CAS"}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){var a=this;this.searchControl.valueChanges.pipe((0,et.b)(500),(0,De.x)(),(0,Ze.w)(function(x){return a.query=x,a.searchValueOut.emit(a.query),a.gaService.sendEvent(a.eventCategory||"substanceTextSearch","search:enter-term",!a.configService.environment.isAnalyticsPrivate&&x||"search term"),a.adverseEventService.getAdverseEventSearchSuggestions(x.toUpperCase(),a.eventCategory)})).subscribe(function(x){a.substanceSuggestionsGroup=x;var O=[];a.eventCategory&&"adverseEventPtSearch"===a.eventCategory?O=["PT_Term","Prim_SOC","Ingredient_Name","ATC_Level_1","ATC_Level_2","ATC_Level_3","ATC_Level_4"]:a.eventCategory&&"adverseEventDmeSearch"===a.eventCategory?O=["DME_Reactions","PTTerm_Meddra","Ingredient_Name","ATC_Level_1","ATC_Level_2","ATC_Level_3","ATC_Level_4"]:a.eventCategory&&"adverseEventCvmSearch"===a.eventCategory&&(O=["Adverse_Event","Route_of_Administration","Ingredient_Name","Species","ATC_Level_1","ATC_Level_2","ATC_Level_3","ATC_Level_4"]),a.suggestionsFields=Object.keys(a.substanceSuggestionsGroup).filter(function(W){return O.indexOf(W)>-1}),a.suggestionsFields.forEach(function(W,Le){a.suggestionsFields[Le]="DME_Reactions"===W?{value:"DME_Reactions",display:"DME Reactions"}:"PTTerm_Meddra"===W?{value:"PTTerm_Meddra",display:"PTTerm Meddra"}:"PT_Term"===W?{value:"PT_Term",display:"PT Term"}:"Adverse_Event"===W?{value:"Adverse_Event",display:"Adverse Event"}:"Prim_SOC"===W?{value:"Prim_SOC",display:"Prim SOC"}:"Route_of_Administration"===W?{value:"Route_of_Administration",display:"Route of Administration"}:"Species"===W?{value:"Species",display:"Species"}:"Ingredient_Name"===W?{value:"Ingredient_Name",display:"Ingredient Name"}:"ATC_Level_1"===W?{value:"ATC_Level_1",display:"ATC Level 1"}:"ATC_Level_2"===W?{value:"ATC_Level_2",display:"ATC Level 2"}:"ATC_Level_3"===W?{value:"ATC_Level_3",display:"ATC Level 3"}:"ATC_Level_4"===W?{value:"ATC_Level_4",display:"ATC Level 4"}:{value:W,display:W}}),null!=a.suggestionsFields&&a.suggestionsFields.length>0&&(a.matOpen=!0,a.opened.emit())},function(x){a.gaService.sendException("search suggestion error from API call"),console.log(x)})}},{key:"searchValue",set:function(a){this.searchControl.setValue(a)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(a){this.searchControl.markAsTouched(),this.searchControl.setErrors(a?{error:!0}:null),this.privateErrorMessage=a}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(a){this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&a.option.value||"auto-complete option");var W=a.option.value;W=this.topSearchClean(W),this.searchPerformed.emit(W)}},{key:"highlight",value:function(a){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=a,this.testElem.scrollWidth>this.testElem.offsetWidth))){var x=a.toUpperCase().indexOf(this.query.toUpperCase());a="..."+a.substring(x-15,a.length)}var O=this.query.replace(/(?=[() ])/g,"\\");return a.replace(new RegExp(O,"gi"),function(W){return""+W+""})}return a}},{key:"processSubstanceSearch",value:function(){var a=this.searchControl.value;this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","search:submit",!this.configService.environment.isAnalyticsPrivate&&a||"search term option"),a=this.topSearchClean(a),this.searchPerformed.emit(a)}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var a=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){a.source?(a.searchContainerElement.classList.remove("active-"+a.source),a.searchContainerElement.classList.remove("deactivate-search")):(a.searchContainerElement.classList.remove("active-search"),a.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(a){return a&&a.length>0&&((a=a.trim()).indexOf('"')<0&&a.indexOf("*")<0&&a.indexOf(":")<0&&a.indexOf(" AND ")<0&&a.indexOf(" OR ")<0?a='"'+a.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':a.indexOf(":")<0&&(a=a.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")),this.searchControl.setValue(a)),a}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(gc.a),e.Y36(e.SBq),e.Y36(Jn.$),e.Y36(On.E),e.Y36(Je.I))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-adverse-event-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:12,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"suggestion-styling",3,"innerHTML"]],template:function(l,a){if(1&l&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return a.focused()}),e.qZA(),e.YNc(4,Xh,2,1,"mat-hint",3),e.YNc(5,e_,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(W){return a.substanceSearchOptionSelected(W)})("closed",function(){return a.autoCompleteClosed()}),e.YNc(8,n_,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return a.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&l){var x=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",a.source),e.xp6(1),e.Q6J("placeholder",a.placeholder)("formControl",a.searchControl)("matAutocomplete",x),e.xp6(1),e.Q6J("ngIf",a.hintMessage),e.xp6(1),e.Q6J("ngIf",a.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",a.suggestionsFields),e.xp6(2),e.Q6J("disabled",a.searchControl.invalid)}},directives:[je._Y,je.JL,je.F,St.KE,p.mk,Pt.Nt,je.Fj,bt.ZL,je.JJ,je.oH,p.O5,St.bx,St.TO,bt.XC,p.sg,_n.ey,T.lW,I.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:#fff;overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:#448aff;color:#fff}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 750px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 1024px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:#4793d1;overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:#fff;overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;-webkit-animation-name:expandWidth;animation-name:expandWidth;-webkit-animation-duration:.3s;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-webkit-animation-name:reduceWidth;animation-name:reduceWidth;-webkit-animation-duration:.3s;animation-duration:.3s}}@-webkit-keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes expandWidth{0%{width:0}to{width:100%}}@-webkit-keyframes reduceWidth{0%{width:100%}to{width:0}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),m}();function i_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function b_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",62),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return e.oxw(4).restricSearh(W.luceneQuery)}),e.TgZ(1,"div",63),e._uU(2),e.qZA(),e.TgZ(3,"div",64),e._uU(4),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(2),e.hij(" ",a.displayField," "),e.xp6(2),e.hij(" ",a.count," ")}}function a_(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",60),e._uU(2),e.qZA(),e.YNc(3,b_,5,2,"button",61),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==l?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",a.narrowSearchSuggestions[l])}}function C_(m,D){if(1&m&&(e.TgZ(0,"div",58),e.YNc(1,a_,4,2,"div",59),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l&&("WORD"===l||"FULL"===l))}}function r_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",44),e.TgZ(1,"div",45),e.TgZ(2,"div",46),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",47),e.NdJ("menuOpened",function(){return e.CHM(l),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(l),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",48),e.qZA(),e.TgZ(11,"button",49),e.NdJ("click",function(){return e.CHM(l),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,i_,2,0,"button",50),e.TgZ(15,"mat-menu",51,52),e.YNc(17,C_,2,1,"div",53),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",45),e.TgZ(19,"div",54),e._uU(20," For more options use the "),e.TgZ(21,"a",55),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(16),x=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",a),e.xp6(3),e.hij("\xa0 ",x.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",x.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",x.matchTypes)}}function o_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(l),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function M_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div"),e.TgZ(2,"span",70),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.YNc(8,o_,2,0,"button",50),e.TgZ(9,"button",56),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",72),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(6),e.Oqu(a.searchTerm),e.xp6(2),e.Q6J("ngIf",a.isSearchEditable)}}function x_(m,D){1&m&&e._UZ(0,"mat-icon",79)}function s_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div",73),e.TgZ(2,"span",74),e.YNc(3,x_,1,0,"mat-icon",75),e._uU(4),e.qZA(),e.TgZ(5,"span",76),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.TgZ(8,"button",77),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return W.removeFacet(W.type,W.bool,W.val)}),e._UZ(9,"mat-icon",78),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(3),e.Q6J("ngIf",!a.bool),e.xp6(1),e.hij(" ",a.type,": "),e.xp6(2),e.hij(" ",a.val," ")}}function S_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",80),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function l_(m,D){if(1&m&&(e.TgZ(0,"div",65),e.YNc(1,M_,11,2,"div",66),e.YNc(2,s_,10,3,"div",67),e.YNc(3,S_,3,0,"button",68),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.searchTerm),e.xp6(1),e.Q6J("ngForOf",l.displayFacets),e.xp6(1),e.Q6J("ngIf",l.displayFacets&&l.displayFacets.length>0||l.searchTerm)}}function T_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",81),e.TgZ(1,"button",82),e.NdJ("click",function(){return e.CHM(l),e.oxw().export()}),e._UZ(2,"mat-icon",83),e._uU(3," Export "),e.qZA(),e.qZA()}}function A_(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," PT Term "),e.qZA())}var y=function(){return["/browse-adverse-events"]},S=function(D){return{search:D}};function te(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",86),e._uU(2),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.DdM(3,y))("queryParams",e.VKq(4,S,'"^'+l.ptTerm+'$"')),e.xp6(1),e.hij(" ",l.ptTerm," ")}}function He(m,D){if(1&m&&(e.TgZ(0,"td",85),e.YNc(1,te,3,6,"div",59),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l.ptTerm)}}function Et(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Prim SOC "),e.qZA())}function Gt(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.primSoc," ")}}function pn(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Ingredient Name "),e.qZA())}var xn=function(D){return["/substances",D]};function En(m,D){if(1&m&&(e.TgZ(0,"td",85),e.TgZ(1,"a",87),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,xn,l.substanceId)),e.xp6(1),e.hij(" ",l.name," ")}}function zn(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Case Count "),e.qZA())}function ti(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.caseCount,"")}}function li(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," PT Count "),e.qZA())}function yi(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"a",90),e.ALo(2,"titlecase"),e.ALo(3,"titlecase"),e._UZ(4,"div",91),e.qZA(),e.TgZ(5,"span",92),e._uU(6,"FAERS Public Dashboard"),e.qZA(),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw();e.xp6(1),e.FAE("href","",a.FAERSDashboardAdverseEventUrl,"",a.getDecodeURL(e.lcZ(2,5,l.ptTerm)),"",a.FAERSDashboardReactionGroup,"",a.getDecodeURL(e.lcZ(3,7,l.primSoc)),"",e.LSH),e.xp6(3),e.Q6J("innerHTML",l.ptCount,e.oJD)}}function Ei(m,D){if(1&m&&e._UZ(0,"div",91),2&m){var l=e.oxw().$implicit;e.Q6J("innerHTML",l.ptCount,e.oJD)}}function Hi(m,D){if(1&m&&(e.TgZ(0,"td",85),e.YNc(1,yi,7,9,"div",88),e.YNc(2,Ei,1,1,"ng-template",null,89,e.W1O),e.qZA()),2&m){var l=e.MAs(3),a=e.oxw();e.xp6(1),e.Q6J("ngIf",a.FAERSDashboardAdverseEventUrl)("ngIfElse",l)}}function ga(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," PRR "),e.qZA())}function ji(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.ALo(2,"number"),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",e.xi3(2,1,l.prr,".2-2")," ")}}function Sa(m,D){1&m&&e._UZ(0,"tr",93)}function Fa(m,D){1&m&&e._UZ(0,"tr",94)}function Oo(m,D){if(1&m&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",97),e._uU(4,"Adverse Event:"),e.qZA(),e._uU(5),e.qZA(),e._UZ(6,"div"),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",98),e.TgZ(10,"div",99),e.TgZ(11,"div",100),e._uU(12," Ingredient Name: "),e.qZA(),e.TgZ(13,"div",101),e.TgZ(14,"a",87),e._uU(15),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"div",99),e.TgZ(17,"div",100),e._uU(18," Substance Key: "),e.qZA(),e.TgZ(19,"div",101),e._uU(20),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",98),e.TgZ(22,"div",99),e.TgZ(23,"div",100),e._uU(24," Prim SOC: "),e.qZA(),e.TgZ(25,"div",101),e._uU(26),e.qZA(),e.qZA(),e.TgZ(27,"div",99),e.TgZ(28,"div",100),e._uU(29," PRR: "),e.qZA(),e.TgZ(30,"div",101),e._uU(31),e.ALo(32,"number"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(33,"div",98),e.TgZ(34,"div",99),e.TgZ(35,"div",100),e._uU(36," Case Count: "),e.qZA(),e.TgZ(37,"div",101),e._uU(38),e.qZA(),e.qZA(),e.TgZ(39,"div",99),e.TgZ(40,"div",100),e._uU(41," SOC Count: "),e.qZA(),e.TgZ(42,"div",101),e._uU(43),e.qZA(),e.qZA(),e.qZA(),e.TgZ(44,"div",98),e.TgZ(45,"div",99),e.TgZ(46,"div",100),e._uU(47," PT Count: "),e.qZA(),e.TgZ(48,"div",101),e._uU(49),e.qZA(),e.qZA(),e.TgZ(50,"div",99),e.TgZ(51,"div",100),e._uU(52," SOC Count Percent: "),e.qZA(),e.TgZ(53,"div",101),e._uU(54),e.qZA(),e.qZA(),e.qZA(),e.TgZ(55,"div",98),e.TgZ(56,"div",99),e.TgZ(57,"div",100),e._uU(58," PT Count Percent: "),e.qZA(),e.TgZ(59,"div",101),e._uU(60),e.qZA(),e.qZA(),e.TgZ(61,"div",99),e.TgZ(62,"div",100),e._uU(63," PT Count Total Vs Drug: "),e.qZA(),e.TgZ(64,"div",101),e._uU(65),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(5),e.hij("\xa0 ",l.ptTerm," "),e.xp6(9),e.Q6J("routerLink",e.VKq(15,xn,l.substanceId)),e.xp6(1),e.Oqu(l.name),e.xp6(5),e.hij(" ",l.substanceKey," "),e.xp6(6),e.hij(" ",l.primSoc," "),e.xp6(5),e.hij(" ",e.xi3(32,12,l.prr,".2-2")," "),e.xp6(7),e.hij(" ",l.caseCount," "),e.xp6(5),e.hij(" ",l.socCount," "),e.xp6(6),e.hij(" ",l.ptCount," "),e.xp6(5),e.hij(" ",l.socCountPercent," "),e.xp6(6),e.hij(" ",l.ptCountPercent," "),e.xp6(5),e.hij(" ",l.ptCountTotalVsDrug," ")}}function ss(m,D){if(1&m&&(e.TgZ(0,"div",95),e.YNc(1,Oo,66,17,"mat-card",96),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngForOf",l.adverseEventPtList)}}function Xs(m,D){}var Nr=function(){return[5,10,50,100]},el=function(D){return{"bad-page":D}},Ll=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar,ls,Xr,Zo){(0,P.Z)(this,D),this.adverseEventService=l,this.generalService=a,this.activatedRoute=x,this.location=O,this.locationStrategy=W,this.router=Le,this.sanitizer=rt,this.gaService=Ht,this.configService=In,this.loadingService=ei,this.notificationService=_i,this.authService=Mi,this.overlayContainerService=qi,this.facetManagerService=Ar,this.utilsService=ls,this.dialog=Xr,this.titleService=Zo,this.countAdverseEventPtOut=new e.vpe,this.isLoggedIn=!1,this.isLoading=!0,this.isError=!1,this.invalidPage=!1,this.isComponentInit=!1,this.privateExport=!1,this.isSearchEditable=!1,this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.ascDescDir="desc",this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[],this.view="table",this.order="$root_ptCount",this.etag="",this.totalAdverseEventPt=0,this.sortValues=$h.g,this.displayedColumns=["ptTerm","primSoc","ingredientName","caseCount","ptCount","prr"]}return(0,t.Z)(D,[{key:"onPopState",value:function(a){var x=this;setTimeout(function(){x.router.url===x.previousState[0]&&x.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var a=this;this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets),this.titleService.setTitle("AE:Browse Adverse Events"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"$root_ptCount",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var O=this.authService.getAuth().subscribe(function(W){W&&(a.isLoggedIn=!0),a.isAdmin=a.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(O),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchAdverseEventPt()}},{key:"searchAdverseEventPt",value:function(){var a=this;this.loadingService.setLoading(!0);var O=this.adverseEventService.getAdverseEventPt(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(W){a.isError=!1,a.adverseEventPtList=W.content,a.totalAdverseEventPt=W.total,a.countAdverseEventPtOut.emit(W.total),a.etag=W.etag,a.lastPage=W.total%a.pageSize==0?W.total/a.pageSize:Math.floor(W.total/a.pageSize+1),W.facets&&W.facets.length>0&&(a.rawFacets=W.facets),a.narrowSearchSuggestions={},a.matchTypes=[],a.narrowSearchSuggestionsCount=0,W.narrowSearchSuggestions&&W.narrowSearchSuggestions.length&&W.narrowSearchSuggestions.forEach(function(Le){null==a.narrowSearchSuggestions[Le.matchType]&&(a.narrowSearchSuggestions[Le.matchType]=[],"WORD"===Le.matchType?a.matchTypes.unshift(Le.matchType):a.matchTypes.push(Le.matchType)),a.narrowSearchSuggestions[Le.matchType].push(Le),a.narrowSearchSuggestionsCount++}),a.matchTypes.sort()},function(W){console.log("error");var Le={message:"There was an error trying to retrieve Adverse Event PT. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(Le)},function(){O.unsubscribe(),a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"setPageEvent",value:function(a){null!=a&&(this.pageIndex=a.pageIndex,this.pageSize=a.pageSize)}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchAdverseEventPt()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("adverseEventFiltering","icon-button:clear-search",Un.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchAdverseEventPt()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(a){a.removeFacet(a.type,a.bool,a.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var a={queryParams:{}};a.queryParams.searchTerm=this.privateSearchTerm,a.queryParams.pageSize=this.pageSize,a.queryParams.pageIndex=this.pageIndex,a.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var x=this.router.createUrlTree([],{queryParams:a.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(x.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(a){var x=this;if(a.active){var O=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(W){W.displayedColumns&&W.direction&&x.displayedColumns[O]===W.displayedColumns&&x.ascDescDir===W.direction&&(x.order=W.value)}),this.searchAdverseEventPt()}}},{key:"updateView",value:function(a){this.view=a.value}},{key:"changePage",value:function(a){var x,O;this.pageSize!==a.pageSize?(x="select:page-size",O=a.pageSize):this.pageIndex!==a.pageIndex&&(x="icon-button:page-number",O=a.pageIndex+1),this.gaService.sendEvent("applicationsContent",x,"pager",O),this.pageSize=a.pageSize,this.pageIndex=a.pageIndex,this.populateUrlQueryParameters(),this.searchAdverseEventPt()}},{key:"customPage",value:function(a){if(this.validatePageInput(a)){this.invalidPage=!1;var x=Number(a.target.value)-1;this.pageIndex=x,this.gaService.sendEvent("adverseEventPtContent","select:page-number","pager",x),this.populateUrlQueryParameters(),this.searchAdverseEventPt()}}},{key:"validatePageInput",value:function(a){if(a&&a.target){var x=Number(a.target.value);if(!isNaN(Number(x))&&Number.isInteger(x)&&x<=this.lastPage&&x>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(a){this.pageIndex=0,this.privateFacetParams=a.facetParam,this.displayFacets=a.displayFacets,this.isFacetsParamsInit?this.searchAdverseEventPt():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(a){}},{key:"editAdvancedSearch",value:function(){var a=Un.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("AdverseEventPt Filtering","icon-button:edit-advanced-search",a);var x={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],x)}},{key:"restricSearh",value:function(a){this.privateSearchTerm=a,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchAdverseEventPt()}},{key:"export",value:function(){var a=this;if(this.etag){var x="xlsx",O=this.getApiExportUrl(this.etag,x);""!==this.authService.getUser()&&this.dialog.open(_t.L,{height:"215x",width:"550px",data:{extension:x,type:"browseAdverseEventPt"}}).afterClosed().subscribe(function(Le){Le&&""!==Le&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(O,a.privateExport,Le+"."+x).subscribe(function(Ht){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",Ht.id])},function(Ht){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,x){return this.adverseEventService.getApiExportUrlPt(a,x)}},{key:"processSubstanceSearch",value:function(a){this.privateSearchTerm=a,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(gc.a),e.Y36(A.m),e.Y36(d.gz),e.Y36(p.Ye),e.Y36(p.S$),e.Y36(d.F0),e.Y36(sn.H7),e.Y36(Jn.$),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Ie.e),e.Y36(qe.Xj),e.Y36(wn.bH),e.Y36(fi.F),e.Y36(qt.uw),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-adverse-events-pt-browse"]],hostBindings:function(l,a){1&l&&e.NdJ("popstate",function(O){return a.onPopState(O)},!1,e.Jf7)},outputs:{countAdverseEventPtOut:"countAdverseEventPtOut"},decls:72,vars:40,consts:[["autosize","true",1,"margintop90px","sidenav-container-size"],["mode","side","opened",""],["pt",""],["configName","adverseeventpt","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","adverseEventPtSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],[1,"responsive"],["mat-table","","matSort","","matSortActive","ptCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","ptTerm"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","primSoc"],["matColumnDef","ingredientName"],["matColumnDef","caseCount"],["matColumnDef","ptCount"],["matColumnDef","prr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],["noRecordAdverseEventPt",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink","queryParams"],["target","_blank",3,"routerLink"],[4,"ngIf","ngIfElse"],["noFaersLink",""],["target","_blank","title","FAERS Public Dashboard",3,"href"],[3,"innerHTML"],[1,"colorgray","font10px"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[4,"ngFor","ngForOf"],[1,"font13px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"]],template:function(l,a){if(1&l){var x=e.EpF();e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(rt){return a.facetsParamsUpdated(rt)})("facetsLoaded",function(rt){return a.facetsLoaded(rt)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.YNc(6,r_,23,4,"div",5),e.YNc(7,l_,4,3,"ng-template",null,6,e.W1O),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e.TgZ(11,"span",9),e._uU(12,"Browse Adverse Event PT"),e.qZA(),e.qZA(),e.TgZ(13,"mat-button-toggle-group",10),e.NdJ("change",function(rt){return a.updateView(rt)}),e.TgZ(14,"mat-button-toggle",11),e._UZ(15,"mat-icon",12),e.qZA(),e.TgZ(16,"mat-button-toggle",13),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(18,T_,4,0,"div",15),e._UZ(19,"div",16),e.TgZ(20,"div",17),e.TgZ(21,"mat-paginator",18,19),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(23,"div",20),e.TgZ(24,"span",21),e._uU(25,"Page: "),e.qZA(),e.TgZ(26,"mat-form-field",22),e.TgZ(27,"input",23,24),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(28).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(29,"span",21),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",25),e.TgZ(32,"app-adverse-event-text-search",26),e.NdJ("searchPerformed",function(rt){return a.processSubstanceSearch(rt)}),e.qZA(),e.qZA(),e.TgZ(33,"div",27),e.TgZ(34,"div",28),e.TgZ(35,"div",29),e.TgZ(36,"table",30),e.NdJ("matSortChange",function(rt){return a.sortData(rt)}),e.ynx(37,31),e.YNc(38,A_,2,0,"th",32),e.YNc(39,He,2,1,"td",33),e.BQk(),e.ynx(40,34),e.YNc(41,Et,2,0,"th",32),e.YNc(42,Gt,2,1,"td",33),e.BQk(),e.ynx(43,35),e.YNc(44,pn,2,0,"th",32),e.YNc(45,En,3,4,"td",33),e.BQk(),e.ynx(46,36),e.YNc(47,zn,2,0,"th",32),e.YNc(48,ti,2,1,"td",33),e.BQk(),e.ynx(49,37),e.YNc(50,li,2,0,"th",32),e.YNc(51,Hi,4,2,"td",33),e.BQk(),e.ynx(52,38),e.YNc(53,ga,2,0,"th",32),e.YNc(54,ji,3,4,"td",33),e.BQk(),e.YNc(55,Sa,1,0,"tr",39),e.YNc(56,Fa,1,0,"tr",40),e.qZA(),e.qZA(),e.qZA(),e.YNc(57,ss,2,1,"div",41),e.qZA(),e.TgZ(58,"div",42),e.TgZ(59,"div",17),e.TgZ(60,"mat-paginator",18,19),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(62,"div",20),e.TgZ(63,"span",21),e._uU(64,"Page: "),e.qZA(),e.TgZ(65,"mat-form-field",22),e.TgZ(66,"input",23,24),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(28).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(68,"span",21),e._uU(69),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(70,Xs,0,0,"ng-template",null,43,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&l){var O=e.MAs(8),W=e.MAs(71);e.xp6(3),e.Q6J("rawFacets",a.rawFacets),e.xp6(3),e.Q6J("ngIf",a.matchTypes&&a.matchTypes.length>0)("ngIfElse",O),e.xp6(7),e.Q6J("value",a.view),e.xp6(5),e.Q6J("ngIf",a.isAdmin),e.xp6(3),e.Q6J("length",a.totalAdverseEventPt)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(30,Nr))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(31,el,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(33,el,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,""),e.xp6(2),e.Q6J("searchValue",a.searchValue),e.xp6(1),e.Q6J("ngClass",a.view),e.xp6(3),e.Q6J("dataSource",a.adverseEventPtList),e.xp6(19),e.Q6J("matHeaderRowDef",a.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",a.displayedColumns),e.xp6(1),e.Q6J("ngIf",a.adverseEventPtList&&a.adverseEventPtList.length>0)("ngIfElse",W),e.xp6(3),e.Q6J("length",a.totalAdverseEventPt)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(35,Nr))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(36,el,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(38,el,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,"")}},directives:[Ft.TM,Ft.JX,Ue.R,Ft.Rh,p.O5,T.lW,Ae.p6,I.Hw,Ae.VK,p.sg,Ae.OP,d.yS,ft.A9,ft.Yi,f.gM,be.NW,St.KE,p.mk,Pt.Nt,om,v.BZ,yt.YE,v.w1,v.fO,v.ge,yt.nU,v.Dz,v.ev,v.as,v.XQ,v.nj,v.Gk,s.a8,s.n5,s.dn],pipes:[p.rS,p.JJ],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#80cbc4} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#26a69a}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#ef9a9a} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ef5350}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#000;border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid gray}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid gray}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:#c7254e}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:#00f;display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:#404040;white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.title[_ngcontent-%COMP%]{color:#27288a;font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorgreen[_ngcontent-%COMP%]{color:green}.colororange[_ngcontent-%COMP%]{color:orange}.colorlightblue[_ngcontent-%COMP%]{color:#1945bd}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid #f8cf88}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #bbc2a4}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:#fff;border:1px solid #CCC;background:#60615e;box-shadow:0 0 5px -1px #0003;vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid blue}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.sidenav-container-size[_ngcontent-%COMP%]{width:100%}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),m}(),Th=n(52395);function Wg(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function ig(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",62),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return e.oxw(4).restricSearh(W.luceneQuery)}),e.TgZ(1,"div",63),e._uU(2),e.qZA(),e.TgZ(3,"div",64),e._uU(4),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(2),e.hij(" ",a.displayField," "),e.xp6(2),e.hij(" ",a.count," ")}}function ag(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",60),e._uU(2),e.qZA(),e.YNc(3,ig,5,2,"button",61),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==l?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",a.narrowSearchSuggestions[l])}}function P_(m,D){if(1&m&&(e.TgZ(0,"div",58),e.YNc(1,ag,4,2,"div",59),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l&&("WORD"===l||"FULL"===l))}}function jv(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",44),e.TgZ(1,"div",45),e.TgZ(2,"div",46),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",47),e.NdJ("menuOpened",function(){return e.CHM(l),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(l),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",48),e.qZA(),e.TgZ(11,"button",49),e.NdJ("click",function(){return e.CHM(l),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,Wg,2,0,"button",50),e.TgZ(15,"mat-menu",51,52),e.YNc(17,P_,2,1,"div",53),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",45),e.TgZ(19,"div",54),e._uU(20," For more options use the "),e.TgZ(21,"a",55),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(16),x=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",a),e.xp6(3),e.hij("\xa0 ",x.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",x.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",x.matchTypes)}}function Jv(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(l),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function Qv(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div"),e.TgZ(2,"span",70),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.YNc(8,Jv,2,0,"button",50),e.TgZ(9,"button",56),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",72),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(6),e.Oqu(a.searchTerm),e.xp6(2),e.Q6J("ngIf",a.isSearchEditable)}}function Wv(m,D){1&m&&e._UZ(0,"mat-icon",79)}function Ah(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div",73),e.TgZ(2,"span",74),e.YNc(3,Wv,1,0,"mat-icon",75),e._uU(4),e.qZA(),e.TgZ(5,"span",76),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.TgZ(8,"button",77),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return W.removeFacet(W.type,W.bool,W.val)}),e._UZ(9,"mat-icon",78),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(3),e.Q6J("ngIf",!a.bool),e.xp6(1),e.hij(" ",a.type,": "),e.xp6(2),e.hij(" ",a.val," ")}}function rg(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",80),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function D_(m,D){if(1&m&&(e.TgZ(0,"div",65),e.YNc(1,Qv,11,2,"div",66),e.YNc(2,Ah,10,3,"div",67),e.YNc(3,rg,3,0,"button",68),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.searchTerm),e.xp6(1),e.Q6J("ngForOf",l.displayFacets),e.xp6(1),e.Q6J("ngIf",l.displayFacets&&l.displayFacets.length>0||l.searchTerm)}}function w_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",81),e.TgZ(1,"button",82),e.NdJ("click",function(){return e.CHM(l),e.oxw().export()}),e._UZ(2,"mat-icon",83),e._uU(3," Export "),e.qZA(),e.qZA()}}function zg(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," DME Reactions "),e.qZA())}function O_(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.dmeReactions," ")}}function E_(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," PT Term Meddra "),e.qZA())}function og(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.ptTermMeddra," ")}}function zv(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Ingredient Name "),e.qZA())}var sg=function(D){return["/substances",D]};function Z_(m,D){if(1&m&&(e.TgZ(0,"td",85),e.TgZ(1,"a",86),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,sg,l.substanceId)),e.xp6(1),e.hij(" ",l.name," ")}}function k_(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Case Count "),e.qZA())}function lg(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.caseCount," ")}}function cg(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Dme Count "),e.qZA())}function I_(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.dmeCount," ")}}function ug(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Dme Count Percent "),e.qZA())}function dg(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.dmeCountPercent," ")}}function L_(m,D){1&m&&(e.TgZ(0,"th",84),e._uU(1," Weighted Average PRR"),e.qZA())}function F_(m,D){if(1&m&&(e.TgZ(0,"td",85),e._uU(1),e.ALo(2,"number"),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",e.xi3(2,1,l.weightedAvgPrr,".2-2")," ")}}function Gg(m,D){1&m&&e._UZ(0,"tr",87)}function pg(m,D){1&m&&e._UZ(0,"tr",88)}function fg(m,D){if(1&m&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",91),e._uU(4,"DME Reactions:"),e.qZA(),e._uU(5),e.qZA(),e._UZ(6,"div"),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",92),e.TgZ(10,"div",93),e.TgZ(11,"div",94),e._uU(12," Ingredient Name: "),e.qZA(),e.TgZ(13,"div",95),e.TgZ(14,"a",86),e._uU(15),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"div",93),e.TgZ(17,"div",94),e._uU(18," Substance Key: "),e.qZA(),e.TgZ(19,"div",95),e._uU(20),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",92),e.TgZ(22,"div",93),e.TgZ(23,"div",94),e._uU(24," PTTerm Meddra: "),e.qZA(),e.TgZ(25,"div",95),e._uU(26),e.qZA(),e.qZA(),e.TgZ(27,"div",93),e.TgZ(28,"div",94),e._uU(29," Case Count: "),e.qZA(),e.TgZ(30,"div",95),e._uU(31),e.qZA(),e.qZA(),e.qZA(),e.TgZ(32,"div",92),e.TgZ(33,"div",93),e.TgZ(34,"div",94),e._uU(35," DME Count: "),e.qZA(),e.TgZ(36,"div",95),e._uU(37),e.qZA(),e.qZA(),e.TgZ(38,"div",93),e.TgZ(39,"div",94),e._uU(40," DME Count Percent: "),e.qZA(),e.TgZ(41,"div",95),e._uU(42),e.qZA(),e.qZA(),e.qZA(),e.TgZ(43,"div",92),e.TgZ(44,"div",93),e.TgZ(45,"div",94),e._uU(46," Weighted Average PRR: "),e.qZA(),e.TgZ(47,"div",95),e._uU(48),e.ALo(49,"number"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(5),e.hij("\xa0 ",l.dmeReactions," "),e.xp6(9),e.Q6J("routerLink",e.VKq(12,sg,l.substanceId)),e.xp6(1),e.Oqu(l.name),e.xp6(5),e.hij(" ",l.substanceKey," "),e.xp6(6),e.hij(" ",l.ptTermMeddra," "),e.xp6(5),e.hij(" ",l.caseCount," "),e.xp6(6),e.hij(" ",l.dmeCount," "),e.xp6(5),e.hij(" ",l.dmeCountPercent," "),e.xp6(6),e.hij(" ",e.xi3(49,9,l.weightedAvgPrr,".2-2")," ")}}function N_(m,D){if(1&m&&(e.TgZ(0,"div",89),e.YNc(1,fg,50,14,"mat-card",90),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngForOf",l.adverseEventDme)}}function mg(m,D){}var hg=function(){return[5,10,50,100]},Ph=function(D){return{"bad-page":D}},c_=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar,ls,Xr,Zo){(0,P.Z)(this,D),this.adverseEventService=l,this.generalService=a,this.activatedRoute=x,this.location=O,this.locationStrategy=W,this.router=Le,this.sanitizer=rt,this.gaService=Ht,this.configService=In,this.loadingService=ei,this.notificationService=_i,this.authService=Mi,this.overlayContainerService=qi,this.facetManagerService=Ar,this.utilsService=ls,this.dialog=Xr,this.titleService=Zo,this.countAdverseEventDmeOut=new e.vpe,this.isLoggedIn=!1,this.isLoading=!0,this.isError=!1,this.invalidPage=!1,this.isComponentInit=!1,this.privateExport=!1,this.isSearchEditable=!1,this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.ascDescDir="desc",this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[],this.view="table",this.order="$root_dmeCount",this.etag="",this.totalAdverseEventDme=0,this.sortValues=Th.O,this.displayedColumns=["dmeReactions","ptTermMeddra","ingredientName","caseCount","dmeCount","dmeCountPercent","weightedAvgPrr"]}return(0,t.Z)(D,[{key:"onPopState",value:function(a){var x=this;setTimeout(function(){x.router.url===x.previousState[0]&&x.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var a=this;this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventDmeFacets),this.titleService.setTitle("AE:Browse Adverse Events"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"$root_dmeCount",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var O=this.authService.getAuth().subscribe(function(W){W&&(a.isLoggedIn=!0),a.isAdmin=a.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(O),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchAdverseEventDme()}},{key:"searchAdverseEventDme",value:function(){var a=this;this.loadingService.setLoading(!0);var O=this.adverseEventService.getAdverseEventDme(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(W){a.isError=!1,a.adverseEventDme=W.content,a.totalAdverseEventDme=W.total,a.countAdverseEventDmeOut.emit(W.total),a.etag=W.etag,a.lastPage=W.total%a.pageSize==0?W.total/a.pageSize:Math.floor(W.total/a.pageSize+1),W.facets&&W.facets.length>0&&(a.rawFacets=W.facets),a.narrowSearchSuggestions={},a.matchTypes=[],a.narrowSearchSuggestionsCount=0,W.narrowSearchSuggestions&&W.narrowSearchSuggestions.length&&W.narrowSearchSuggestions.forEach(function(Le){null==a.narrowSearchSuggestions[Le.matchType]&&(a.narrowSearchSuggestions[Le.matchType]=[],"WORD"===Le.matchType?a.matchTypes.unshift(Le.matchType):a.matchTypes.push(Le.matchType)),a.narrowSearchSuggestions[Le.matchType].push(Le),a.narrowSearchSuggestionsCount++}),a.matchTypes.sort()},function(W){console.log("error");var Le={message:"There was an error trying to retrieve Adverse Event DME. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(Le)},function(){O.unsubscribe(),a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchAdverseEventDme()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("adverseEventFiltering","icon-button:clear-search",Un.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchAdverseEventDme()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(a){a.removeFacet(a.type,a.bool,a.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var a={queryParams:{}};a.queryParams.searchTerm=this.privateSearchTerm,a.queryParams.pageSize=this.pageSize,a.queryParams.pageIndex=this.pageIndex,a.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var x=this.router.createUrlTree([],{queryParams:a.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(x.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(a){var x=this;if(a.active){var O=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(W){W.displayedColumns&&W.direction&&x.displayedColumns[O]===W.displayedColumns&&x.ascDescDir===W.direction&&(x.order=W.value)}),this.searchAdverseEventDme()}}},{key:"updateView",value:function(a){this.view=a.value}},{key:"changePage",value:function(a){var x,O;this.pageSize!==a.pageSize?(x="select:page-size",O=a.pageSize):this.pageIndex!==a.pageIndex&&(x="icon-button:page-number",O=a.pageIndex+1),this.gaService.sendEvent("applicationsContent",x,"pager",O),this.pageSize=a.pageSize,this.pageIndex=a.pageIndex,this.populateUrlQueryParameters(),this.searchAdverseEventDme()}},{key:"customPage",value:function(a){if(this.validatePageInput(a)){this.invalidPage=!1;var x=Number(a.target.value)-1;this.pageIndex=x,this.gaService.sendEvent("adverseEventPtContent","select:page-number","pager",x),this.populateUrlQueryParameters(),this.searchAdverseEventDme()}}},{key:"validatePageInput",value:function(a){if(a&&a.target){var x=Number(a.target.value);if(!isNaN(Number(x))&&Number.isInteger(x)&&x<=this.lastPage&&x>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(a){this.pageIndex=0,this.privateFacetParams=a.facetParam,this.displayFacets=a.displayFacets,this.isFacetsParamsInit?this.searchAdverseEventDme():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(a){}},{key:"editAdvancedSearch",value:function(){var a=Un.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("AdverseEventPt Filtering","icon-button:edit-advanced-search",a);var x={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],x)}},{key:"getSubstanceBySubstanceKey",value:function(){}},{key:"restricSearh",value:function(a){this.privateSearchTerm=a,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchAdverseEventDme()}},{key:"export",value:function(){var a=this;if(this.etag){var x="xlsx",O=this.getApiExportUrl(this.etag,x);this.dialog.open(_t.L,{height:"215x",width:"550px",data:{extension:x,type:"browseAdverseEventDme"}}).afterClosed().subscribe(function(Le){Le&&""!==Le&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(O,a.privateExport,Le+"."+x).subscribe(function(Ht){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",Ht.id])},function(Ht){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,x){return this.adverseEventService.getApiExportUrlDme(a,x)}},{key:"processSubstanceSearch",value:function(a){this.privateSearchTerm=a,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(gc.a),e.Y36(A.m),e.Y36(d.gz),e.Y36(p.Ye),e.Y36(p.S$),e.Y36(d.F0),e.Y36(sn.H7),e.Y36(Jn.$),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Ie.e),e.Y36(qe.Xj),e.Y36(wn.bH),e.Y36(fi.F),e.Y36(qt.uw),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-adverse-events-dme-browse"]],hostBindings:function(l,a){1&l&&e.NdJ("popstate",function(O){return a.onPopState(O)},!1,e.Jf7)},outputs:{countAdverseEventDmeOut:"countAdverseEventDmeOut"},decls:74,vars:40,consts:[["autosize","true",1,"margintop90px","sidenav-container-size"],["mode","side","opened",""],["dme",""],["configName","adverseeventdme","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","adverseEventDmeSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],["mat-table","","matSort","","matSortActive","dmeCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","dmeReactions"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","ptTermMeddra"],["matColumnDef","ingredientName"],["matColumnDef","caseCount"],["matColumnDef","dmeCount"],["matColumnDef","dmeCountPercent"],["matColumnDef","weightedAvgPrr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],["noRecordAdverseEvent",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[4,"ngFor","ngForOf"],[1,"font13px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"]],template:function(l,a){if(1&l){var x=e.EpF();e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(rt){return a.facetsParamsUpdated(rt)})("facetsLoaded",function(rt){return a.facetsLoaded(rt)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.YNc(6,jv,23,4,"div",5),e.YNc(7,D_,4,3,"ng-template",null,6,e.W1O),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e.TgZ(11,"span",9),e._uU(12,"Browse Adverse Event DME"),e.qZA(),e.qZA(),e.TgZ(13,"mat-button-toggle-group",10),e.NdJ("change",function(rt){return a.updateView(rt)}),e.TgZ(14,"mat-button-toggle",11),e._UZ(15,"mat-icon",12),e.qZA(),e.TgZ(16,"mat-button-toggle",13),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(18,w_,4,0,"div",15),e._UZ(19,"div",16),e.TgZ(20,"div",17),e.TgZ(21,"mat-paginator",18,19),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(23,"div",20),e.TgZ(24,"span",21),e._uU(25,"Page: "),e.qZA(),e.TgZ(26,"mat-form-field",22),e.TgZ(27,"input",23,24),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(28).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(29,"span",21),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",25),e.TgZ(32,"app-adverse-event-text-search",26),e.NdJ("searchPerformed",function(rt){return a.processSubstanceSearch(rt)}),e.qZA(),e.qZA(),e.TgZ(33,"div",27),e.TgZ(34,"div",28),e.TgZ(35,"table",29),e.NdJ("matSortChange",function(rt){return a.sortData(rt)}),e.ynx(36,30),e.YNc(37,zg,2,0,"th",31),e.YNc(38,O_,2,1,"td",32),e.BQk(),e.ynx(39,33),e.YNc(40,E_,2,0,"th",31),e.YNc(41,og,2,1,"td",32),e.BQk(),e.ynx(42,34),e.YNc(43,zv,2,0,"th",31),e.YNc(44,Z_,3,4,"td",32),e.BQk(),e.ynx(45,35),e.YNc(46,k_,2,0,"th",31),e.YNc(47,lg,2,1,"td",32),e.BQk(),e.ynx(48,36),e.YNc(49,cg,2,0,"th",31),e.YNc(50,I_,2,1,"td",32),e.BQk(),e.ynx(51,37),e.YNc(52,ug,2,0,"th",31),e.YNc(53,dg,2,1,"td",32),e.BQk(),e.ynx(54,38),e.YNc(55,L_,2,0,"th",31),e.YNc(56,F_,3,4,"td",32),e.BQk(),e.YNc(57,Gg,1,0,"tr",39),e.YNc(58,pg,1,0,"tr",40),e.qZA(),e.qZA(),e.YNc(59,N_,2,1,"div",41),e.qZA(),e.TgZ(60,"div",42),e.TgZ(61,"div",17),e.TgZ(62,"mat-paginator",18,19),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(64,"div",20),e.TgZ(65,"span",21),e._uU(66,"Page: "),e.qZA(),e.TgZ(67,"mat-form-field",22),e.TgZ(68,"input",23,24),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(28).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(70,"span",21),e._uU(71),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(72,mg,0,0,"ng-template",null,43,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&l){var O=e.MAs(8),W=e.MAs(73);e.xp6(3),e.Q6J("rawFacets",a.rawFacets),e.xp6(3),e.Q6J("ngIf",a.matchTypes&&a.matchTypes.length>0)("ngIfElse",O),e.xp6(7),e.Q6J("value",a.view),e.xp6(5),e.Q6J("ngIf",a.isAdmin),e.xp6(3),e.Q6J("length",a.totalAdverseEventDme)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(30,hg))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(31,Ph,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(33,Ph,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,""),e.xp6(2),e.Q6J("searchValue",a.searchValue),e.xp6(1),e.Q6J("ngClass",a.view),e.xp6(2),e.Q6J("dataSource",a.adverseEventDme),e.xp6(22),e.Q6J("matHeaderRowDef",a.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",a.displayedColumns),e.xp6(1),e.Q6J("ngIf",a.adverseEventDme&&a.adverseEventDme.length)("ngIfElse",W),e.xp6(3),e.Q6J("length",a.totalAdverseEventDme)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(35,hg))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(36,Ph,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(38,Ph,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,"")}},directives:[Ft.TM,Ft.JX,Ue.R,Ft.Rh,p.O5,T.lW,Ae.p6,I.Hw,Ae.VK,p.sg,Ae.OP,d.yS,ft.A9,ft.Yi,f.gM,be.NW,St.KE,p.mk,Pt.Nt,om,v.BZ,yt.YE,v.w1,v.fO,v.ge,yt.nU,v.Dz,v.ev,v.as,v.XQ,v.nj,v.Gk,s.a8,s.n5,s.dn],pipes:[p.JJ],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#80cbc4} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#26a69a}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#ef9a9a} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ef5350}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#000;border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid gray}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid gray}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:#c7254e}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:#00f;display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:#404040;white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.title[_ngcontent-%COMP%]{color:#27288a;font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorgreen[_ngcontent-%COMP%]{color:green}.colororange[_ngcontent-%COMP%]{color:orange}.colorlightblue[_ngcontent-%COMP%]{color:#1945bd}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid #f8cf88}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #bbc2a4}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:#fff;border:1px solid #CCC;background:#60615e;box-shadow:0 0 5px -1px #0003;vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid blue}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.sidenav-container-size[_ngcontent-%COMP%]{width:100%}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),m}(),R_=n(34009);function u_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",54),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",55),e.qZA()}}function U_(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",60),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return e.oxw(4).restricSearh(W.luceneQuery)}),e.TgZ(1,"div",61),e._uU(2),e.qZA(),e.TgZ(3,"div",62),e._uU(4),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(2),e.hij(" ",a.displayField," "),e.xp6(2),e.hij(" ",a.count," ")}}function _g(m,D){if(1&m&&(e.TgZ(0,"div"),e.TgZ(1,"div",58),e._uU(2),e.qZA(),e.YNc(3,U_,5,2,"button",59),e.qZA()),2&m){var l=e.oxw().$implicit,a=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==l?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",a.narrowSearchSuggestions[l])}}function B_(m,D){if(1&m&&(e.TgZ(0,"div",56),e.YNc(1,_g,4,2,"div",57),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("ngIf",l&&("WORD"===l||"FULL"===l))}}function gg(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",42),e.TgZ(1,"div",43),e.TgZ(2,"div",44),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",45),e.NdJ("menuOpened",function(){return e.CHM(l),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(l),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",46),e.qZA(),e.TgZ(11,"button",47),e.NdJ("click",function(){return e.CHM(l),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,u_,2,0,"button",48),e.TgZ(15,"mat-menu",49,50),e.YNc(17,B_,2,1,"div",51),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",43),e.TgZ(19,"div",52),e._uU(20," For more options use the "),e.TgZ(21,"a",53),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.MAs(16),x=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",a),e.xp6(3),e.hij("\xa0 ",x.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",x.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",x.matchTypes)}}function vg(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",54),e.NdJ("click",function(){return e.CHM(l),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",55),e.qZA()}}function yg(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",67),e.TgZ(1,"div"),e.TgZ(2,"span",68),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",69),e.YNc(8,vg,2,0,"button",48),e.TgZ(9,"button",54),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",70),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=e.oxw(2);e.xp6(6),e.Oqu(a.searchTerm),e.xp6(2),e.Q6J("ngIf",a.isSearchEditable)}}function bg(m,D){1&m&&e._UZ(0,"mat-icon",77)}function Cg(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",67),e.TgZ(1,"div",71),e.TgZ(2,"span",72),e.YNc(3,bg,1,0,"mat-icon",73),e._uU(4),e.qZA(),e.TgZ(5,"span",74),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",69),e.TgZ(8,"button",75),e.NdJ("click",function(){var W=e.CHM(l).$implicit;return W.removeFacet(W.type,W.bool,W.val)}),e._UZ(9,"mat-icon",76),e.qZA(),e.qZA(),e.qZA()}if(2&m){var a=D.$implicit;e.xp6(3),e.Q6J("ngIf",!a.bool),e.xp6(1),e.hij(" ",a.type,": "),e.xp6(2),e.hij(" ",a.val," ")}}function Gv(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"button",78),e.NdJ("click",function(){return e.CHM(l),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function Kg(m,D){if(1&m&&(e.TgZ(0,"div",63),e.YNc(1,yg,11,2,"div",64),e.YNc(2,Cg,10,3,"div",65),e.YNc(3,Gv,3,0,"button",66),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngIf",l.searchTerm),e.xp6(1),e.Q6J("ngForOf",l.displayFacets),e.xp6(1),e.Q6J("ngIf",l.displayFacets&&l.displayFacets.length>0||l.searchTerm)}}function $g(m,D){if(1&m){var l=e.EpF();e.TgZ(0,"div",79),e.TgZ(1,"button",80),e.NdJ("click",function(){return e.CHM(l),e.oxw().export()}),e._UZ(2,"mat-icon",81),e._uU(3," Export "),e.qZA(),e.qZA()}}function Mg(m,D){1&m&&(e.TgZ(0,"th",82),e._uU(1," Adverse Event "),e.qZA())}function Xg(m,D){if(1&m&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.adverseEvent," ")}}function Eo(m,D){1&m&&(e.TgZ(0,"th",82),e._uU(1," Species "),e.qZA())}function xg(m,D){if(1&m&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.species," ")}}function ev(m,D){1&m&&(e.TgZ(0,"th",82),e._uU(1," Ingredient Name "),e.qZA())}var Sg=function(D){return["/substances",D]};function Tg(m,D){if(1&m&&(e.TgZ(0,"td",83),e.TgZ(1,"a",84),e._uU(2),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Sg,l.substanceId)),e.xp6(1),e.hij(" ",l.name," ")}}function tv(m,D){1&m&&(e.TgZ(0,"th",82),e._uU(1," Adverse Event Count "),e.qZA())}function Ag(m,D){if(1&m&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.aeCount," ")}}function Pg(m,D){1&m&&(e.TgZ(0,"th",82),e._uU(1," Route of Administration "),e.qZA())}function sm(m,D){if(1&m&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&m){var l=D.$implicit;e.xp6(1),e.hij(" ",l.routeOfAdmin," ")}}function nv(m,D){1&m&&e._UZ(0,"tr",85)}function iv(m,D){1&m&&e._UZ(0,"tr",86)}function Dg(m,D){if(1&m&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",89),e._uU(4,"Adverse Event:"),e.qZA(),e._uU(5),e.qZA(),e._UZ(6,"div"),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",90),e.TgZ(10,"div",91),e.TgZ(11,"div",92),e._uU(12," Ingredient Name: "),e.qZA(),e.TgZ(13,"div",93),e.TgZ(14,"a",84),e._uU(15),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"div",91),e.TgZ(17,"div",92),e._uU(18," Substance Key: "),e.qZA(),e.TgZ(19,"div",93),e._uU(20),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",90),e.TgZ(22,"div",91),e.TgZ(23,"div",92),e._uU(24," Species: "),e.qZA(),e.TgZ(25,"div",93),e._uU(26),e.qZA(),e.qZA(),e.TgZ(27,"div",91),e.TgZ(28,"div",92),e._uU(29," Route of Administration: "),e.qZA(),e.TgZ(30,"div",93),e._uU(31),e.qZA(),e.qZA(),e.qZA(),e.TgZ(32,"div",90),e.TgZ(33,"div",91),e.TgZ(34,"div",92),e._uU(35," Adverse Event Count: "),e.qZA(),e.TgZ(36,"div",93),e._uU(37),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&m){var l=D.$implicit;e.xp6(5),e.hij("\xa0 ",l.adverseEvent," "),e.xp6(9),e.Q6J("routerLink",e.VKq(7,Sg,l.substanceId)),e.xp6(1),e.Oqu(l.name),e.xp6(5),e.hij(" ",l.substanceKey," "),e.xp6(6),e.hij(" ",l.species," "),e.xp6(5),e.hij(" ",l.name," "),e.xp6(6),e.hij(" ",l.aeCount," ")}}function av(m,D){if(1&m&&(e.TgZ(0,"div",87),e.YNc(1,Dg,38,9,"mat-card",88),e.qZA()),2&m){var l=e.oxw();e.xp6(1),e.Q6J("ngForOf",l.adverseEventCvm)}}function wg(m,D){}var rv=function(){return[5,10,50,100]},lm=function(D){return{"bad-page":D}},Dh=function(){var m=function(){function D(l,a,x,O,W,Le,rt,Ht,In,ei,_i,Mi,qi,Ar,ls,Xr,Zo){(0,P.Z)(this,D),this.adverseEventService=l,this.generalService=a,this.activatedRoute=x,this.location=O,this.locationStrategy=W,this.router=Le,this.sanitizer=rt,this.gaService=Ht,this.configService=In,this.loadingService=ei,this.notificationService=_i,this.authService=Mi,this.overlayContainerService=qi,this.facetManagerService=Ar,this.utilsService=ls,this.dialog=Xr,this.titleService=Zo,this.countAdverseEventCvmOut=new e.vpe,this.isLoggedIn=!1,this.isLoading=!0,this.isError=!1,this.invalidPage=!1,this.isComponentInit=!1,this.privateExport=!1,this.isSearchEditable=!1,this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.ascDescDir="desc",this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[],this.view="table",this.order="$root_aeCount",this.etag="",this.totalAdverseEventCvm=0,this.sortValues=R_.l,this.displayedColumns=["adverseEvent","species","ingredientName","adverseEventCount","routeOfAdmin"]}return(0,t.Z)(D,[{key:"onPopState",value:function(a){var x=this;setTimeout(function(){x.router.url===x.previousState[0]&&x.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var a=this;this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventCvmFacets),this.titleService.setTitle("AE:Browse Adverse Events"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"$root_aeCount",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var O=this.authService.getAuth().subscribe(function(W){W&&(a.isLoggedIn=!0),a.isAdmin=a.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(O),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(a){a&&a.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchAdverseEventCvm()}},{key:"searchAdverseEventCvm",value:function(){var a=this;this.loadingService.setLoading(!0);var O=this.adverseEventService.getAdverseEventCvm(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(W){a.isError=!1,a.adverseEventCvm=W.content,a.totalAdverseEventCvm=W.total,a.countAdverseEventCvmOut.emit(W.total),a.etag=W.etag,a.lastPage=W.total%a.pageSize==0?W.total/a.pageSize:Math.floor(W.total/a.pageSize+1),W.facets&&W.facets.length>0&&(a.rawFacets=W.facets),a.narrowSearchSuggestions={},a.matchTypes=[],a.narrowSearchSuggestionsCount=0,W.narrowSearchSuggestions&&W.narrowSearchSuggestions.length&&W.narrowSearchSuggestions.forEach(function(Le){null==a.narrowSearchSuggestions[Le.matchType]&&(a.narrowSearchSuggestions[Le.matchType]=[],"WORD"===Le.matchType?a.matchTypes.unshift(Le.matchType):a.matchTypes.push(Le.matchType)),a.narrowSearchSuggestions[Le.matchType].push(Le),a.narrowSearchSuggestionsCount++}),a.matchTypes.sort()},function(W){console.log("error");var Le={message:"There was an error trying to retrieve Adverse Event CVM. Please refresh and try again.",type:Tn.k.error,milisecondsToShow:6e3};a.isError=!0,a.isLoading=!1,a.loadingService.setLoading(a.isLoading),a.notificationService.setNotification(Le)},function(){O.unsubscribe(),a.isLoading=!1,a.loadingService.setLoading(a.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchAdverseEventCvm()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("adverseEventFiltering","icon-button:clear-search",Un.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(a){a.removeFacet(a.type,a.bool,a.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var a={queryParams:{}};a.queryParams.searchTerm=this.privateSearchTerm,a.queryParams.pageSize=this.pageSize,a.queryParams.pageIndex=this.pageIndex,a.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var x=this.router.createUrlTree([],{queryParams:a.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(x.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(a){var x=this;if(a.active){var O=this.displayedColumns.indexOf(a.active).toString();this.ascDescDir=a.direction,this.sortValues.forEach(function(W){W.displayedColumns&&W.direction&&x.displayedColumns[O]===W.displayedColumns&&x.ascDescDir===W.direction&&(x.order=W.value)}),this.searchAdverseEventCvm()}}},{key:"updateView",value:function(a){this.view=a.value}},{key:"changePage",value:function(a){var x,O;this.pageSize!==a.pageSize?(x="select:page-size",O=a.pageSize):this.pageIndex!==a.pageIndex&&(x="icon-button:page-number",O=a.pageIndex+1),this.gaService.sendEvent("applicationsContent",x,"pager",O),this.pageSize=a.pageSize,this.pageIndex=a.pageIndex,this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}},{key:"customPage",value:function(a){if(this.validatePageInput(a)){this.invalidPage=!1;var x=Number(a.target.value)-1;this.pageIndex=x,this.gaService.sendEvent("adverseEventPtContent","select:page-number","pager",x),this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}}},{key:"validatePageInput",value:function(a){if(a&&a.target){var x=Number(a.target.value);if(!isNaN(Number(x))&&Number.isInteger(x)&&x<=this.lastPage&&x>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(a){this.pageIndex=0,this.privateFacetParams=a.facetParam,this.displayFacets=a.displayFacets,this.isFacetsParamsInit?this.searchAdverseEventCvm():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(a){}},{key:"editAdvancedSearch",value:function(){var a=Un.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("AdverseEventPt Filtering","icon-button:edit-advanced-search",a);var x={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],x)}},{key:"getSubstanceBySubstanceKey",value:function(){}},{key:"restricSearh",value:function(a){this.privateSearchTerm=a,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}},{key:"export",value:function(){var a=this;if(this.etag){var x="xlsx",O=this.getApiExportUrl(this.etag,x);this.dialog.open(_t.L,{height:"215x",width:"550px",data:{extension:x,type:"browseAdverseEventCvm"}}).afterClosed().subscribe(function(Le){Le&&""!==Le&&(a.loadingService.setLoading(!0),a.authService.startUserDownload(O,a.privateExport,Le+"."+x).subscribe(function(Ht){a.loadingService.setLoading(!1),a.router.navigate(["/user-downloads/",Ht.id])},function(Ht){return a.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(a,x){return this.adverseEventService.getApiExportUrlCvm(a,x)}},{key:"processSubstanceSearch",value:function(a){this.privateSearchTerm=a,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(gc.a),e.Y36(A.m),e.Y36(d.gz),e.Y36(p.Ye),e.Y36(p.S$),e.Y36(d.F0),e.Y36(sn.H7),e.Y36(Jn.$),e.Y36(On.E),e.Y36(wt.b),e.Y36(jt.a),e.Y36(Ie.e),e.Y36(qe.Xj),e.Y36(wn.bH),e.Y36(fi.F),e.Y36(qt.uw),e.Y36(sn.Dx))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-adverse-events-cvm-browse"]],hostBindings:function(l,a){1&l&&e.NdJ("popstate",function(O){return a.onPopState(O)},!1,e.Jf7)},outputs:{countAdverseEventCvmOut:"countAdverseEventCvmOut"},decls:68,vars:40,consts:[["autosize","true",1,"margintop90px","sidenav-container-size"],["mode","side","opened",""],["cvm",""],["configName","adverseeventcvm","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","adverseEventCvmSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],["mat-table","","matSort","","matSortActive","adverseEventCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","adverseEvent"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","species"],["matColumnDef","ingredientName"],["matColumnDef","adverseEventCount"],["matColumnDef","routeOfAdmin"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],["noRecordAdverseEvent",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[4,"ngFor","ngForOf"],[1,"font13px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"]],template:function(l,a){if(1&l){var x=e.EpF();e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(rt){return a.facetsParamsUpdated(rt)})("facetsLoaded",function(rt){return a.facetsLoaded(rt)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.YNc(6,gg,23,4,"div",5),e.YNc(7,Kg,4,3,"ng-template",null,6,e.W1O),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e.TgZ(11,"span",9),e._uU(12,"Browse Adverse Event CVM"),e.qZA(),e.qZA(),e.TgZ(13,"mat-button-toggle-group",10),e.NdJ("change",function(rt){return a.updateView(rt)}),e.TgZ(14,"mat-button-toggle",11),e._UZ(15,"mat-icon",12),e.qZA(),e.TgZ(16,"mat-button-toggle",13),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(18,$g,4,0,"div",15),e._UZ(19,"div",16),e.TgZ(20,"div",17),e.TgZ(21,"mat-paginator",18,19),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(23,"div",20),e.TgZ(24,"span",21),e._uU(25,"Page: "),e.qZA(),e.TgZ(26,"mat-form-field",22),e.TgZ(27,"input",23,24),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(28).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(29,"span",21),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",25),e.TgZ(32,"app-adverse-event-text-search",26),e.NdJ("searchPerformed",function(rt){return a.processSubstanceSearch(rt)}),e.qZA(),e.qZA(),e.TgZ(33,"div",27),e.TgZ(34,"div",28),e.TgZ(35,"table",29),e.NdJ("matSortChange",function(rt){return a.sortData(rt)}),e.ynx(36,30),e.YNc(37,Mg,2,0,"th",31),e.YNc(38,Xg,2,1,"td",32),e.BQk(),e.ynx(39,33),e.YNc(40,Eo,2,0,"th",31),e.YNc(41,xg,2,1,"td",32),e.BQk(),e.ynx(42,34),e.YNc(43,ev,2,0,"th",31),e.YNc(44,Tg,3,4,"td",32),e.BQk(),e.ynx(45,35),e.YNc(46,tv,2,0,"th",31),e.YNc(47,Ag,2,1,"td",32),e.BQk(),e.ynx(48,36),e.YNc(49,Pg,2,0,"th",31),e.YNc(50,sm,2,1,"td",32),e.BQk(),e.YNc(51,nv,1,0,"tr",37),e.YNc(52,iv,1,0,"tr",38),e.qZA(),e.qZA(),e.YNc(53,av,2,1,"div",39),e.qZA(),e.TgZ(54,"div",40),e.TgZ(55,"div",17),e.TgZ(56,"mat-paginator",18,19),e.NdJ("page",function(rt){return a.changePage(rt)}),e.qZA(),e.TgZ(58,"div",20),e.TgZ(59,"span",21),e._uU(60,"Page: "),e.qZA(),e.TgZ(61,"mat-form-field",22),e.TgZ(62,"input",23,24),e.NdJ("keydown.enter",function(rt){return a.customPage(rt)})("input",function(rt){return a.invalidPage=!a.validatePageInput(rt)})("focusout",function(){return e.CHM(x),e.MAs(28).value=a.pageIndex+1,a.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(64,"span",21),e._uU(65),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(66,wg,0,0,"ng-template",null,41,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&l){var O=e.MAs(8),W=e.MAs(67);e.xp6(3),e.Q6J("rawFacets",a.rawFacets),e.xp6(3),e.Q6J("ngIf",a.matchTypes&&a.matchTypes.length>0)("ngIfElse",O),e.xp6(7),e.Q6J("value",a.view),e.xp6(5),e.Q6J("ngIf",a.isAdmin),e.xp6(3),e.Q6J("length",a.totalAdverseEventCvm)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(30,rv))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(31,lm,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(33,lm,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,""),e.xp6(2),e.Q6J("searchValue",a.searchValue),e.xp6(1),e.Q6J("ngClass",a.view),e.xp6(2),e.Q6J("dataSource",a.adverseEventCvm),e.xp6(16),e.Q6J("matHeaderRowDef",a.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",a.displayedColumns),e.xp6(1),e.Q6J("ngIf",a.adverseEventCvm&&a.adverseEventCvm.length)("ngIfElse",W),e.xp6(3),e.Q6J("length",a.totalAdverseEventCvm)("pageIndex",a.pageIndex)("pageSize",a.pageSize)("pageSizeOptions",e.DdM(35,rv))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(36,lm,a.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(38,lm,a.invalidPage))("value",a.pageIndex+1),e.xp6(3),e.hij(" of ",a.lastPage,"")}},directives:[Ft.TM,Ft.JX,Ue.R,Ft.Rh,p.O5,T.lW,Ae.p6,I.Hw,Ae.VK,p.sg,Ae.OP,d.yS,ft.A9,ft.Yi,f.gM,be.NW,St.KE,p.mk,Pt.Nt,om,v.BZ,yt.YE,v.w1,v.fO,v.ge,yt.nU,v.Dz,v.ev,v.as,v.XQ,v.nj,v.Gk,s.a8,s.n5,s.dn],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#80cbc4} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#26a69a}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#ef9a9a} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ef5350}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#000;border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid gray}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid gray}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:#c7254e}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:#00f;display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:#404040;white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.title[_ngcontent-%COMP%]{color:#27288a;font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:gray}.colorred[_ngcontent-%COMP%]{color:red}.colorgreen[_ngcontent-%COMP%]{color:green}.colororange[_ngcontent-%COMP%]{color:orange}.colorlightblue[_ngcontent-%COMP%]{color:#1945bd}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid #f8cf88}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #bbc2a4}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:#fff;border:1px solid #CCC;background:#60615e;box-shadow:0 0 5px -1px #0003;vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid blue}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.sidenav-container-size[_ngcontent-%COMP%]{width:100%}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),m}();function Jc(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event PT "),e.TgZ(2,"div",8),e._uU(3),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.hij(" (",l.adverseEventPtCount,") ")}}function ov(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event DME "),e.TgZ(2,"div",8),e._uU(3),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.hij(" (",l.adverseEventDmeCount,") ")}}function Og(m,D){if(1&m&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event CVM "),e.TgZ(2,"div",8),e._uU(3),e.qZA(),e.qZA()),2&m){var l=e.oxw();e.xp6(3),e.hij(" (",l.adverseEventCvmCount,") ")}}var oc=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.adverseEventService=l,this.facetManagerService=a,this.adverseEventPtCount=0,this.adverseEventDmeCount=0,this.adverseEventCvmCount=0,this.tabSelectedIndex=0,this.category="Adverse Event PT"}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets)}},{key:"ngAfterViewInit",value:function(){this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets)}},{key:"tabSelectedUpdated",value:function(a){a&&(this.category=a.tab.textLabel,this.setFacetsforTabs())}},{key:"setFacetsforTabs",value:function(){this.category&&("Adverse Event PT"===this.category&&this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets),"Adverse Event DME"===this.category&&this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventDmeFacets),"Adverse Event CVM"===this.category&&this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventCvmFacets))}},{key:"getAdverseEventPtCount",value:function(a){this.adverseEventPtCount=a,this.adverseEventPtCount>0&&(this.tabSelectedIndex=0)}},{key:"getAdverseEventDmeCount",value:function(a){this.adverseEventDmeCount=a,0==this.adverseEventPtCount&&0==this.adverseEventCvmCount&&this.adverseEventDmeCount>0&&(this.tabSelectedIndex=1)}},{key:"getAdverseEventCvmCount",value:function(a){this.adverseEventCvmCount=a,0==this.adverseEventPtCount&&0==this.adverseEventDmeCount&&this.adverseEventCvmCount>0&&(this.tabSelectedIndex=2)}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.Y36(gc.a),e.Y36(wn.bH))},m.\u0275cmp=e.Xpm({type:m,selectors:[["app-adverse-events-browse"]],decls:15,vars:1,consts:[[3,"selectedIndex","selectedIndexChange","selectedTabChange"],["label","Adverse Event PT"],["mat-tab-label",""],[3,"countAdverseEventPtOut"],["label","Adverse Event DME"],[3,"countAdverseEventDmeOut"],["label","Adverse Event CVM"],[3,"countAdverseEventCvmOut"],[1,"font12px"]],template:function(l,a){1&l&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e.TgZ(5,"mat-tab-group",0),e.NdJ("selectedIndexChange",function(O){return a.tabSelectedIndex=O})("selectedTabChange",function(O){return a.tabSelectedUpdated(O)}),e.TgZ(6,"mat-tab",1),e.YNc(7,Jc,4,1,"ng-template",2),e.TgZ(8,"app-adverse-events-pt-browse",3),e.NdJ("countAdverseEventPtOut",function(O){return a.getAdverseEventPtCount(O)}),e.qZA(),e.qZA(),e.TgZ(9,"mat-tab",4),e.YNc(10,ov,4,1,"ng-template",2),e.TgZ(11,"app-adverse-events-dme-browse",5),e.NdJ("countAdverseEventDmeOut",function(O){return a.getAdverseEventDmeCount(O)}),e.qZA(),e.qZA(),e.TgZ(12,"mat-tab",6),e.YNc(13,Og,4,1,"ng-template",2),e.TgZ(14,"app-adverse-events-cvm-browse",7),e.NdJ("countAdverseEventCvmOut",function(O){return a.getAdverseEventCvmCount(O)}),e.qZA(),e.qZA(),e.qZA()),2&l&&(e.xp6(5),e.Q6J("selectedIndex",a.tabSelectedIndex))},styles:[""]}),m}(),Ss=function(){var m=function(){function D(l,a){(0,P.Z)(this,D),this.configService=l,this.router=a}return(0,t.Z)(D,[{key:"canActivate",value:function(a,x){var O=this;return new sr.y(function(W){var Le=O.configService.configData.loadedComponents||null;Le&&Le.adverseevents?(W.next(!0),W.complete()):(W.next(O.router.parseUrl("/home")),W.complete())})}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(On.E),e.LFG(d.F0))},m.\u0275prov=e.Yz7({token:m,factory:m.\u0275fac,providedIn:"root"}),m}(),sc=[{path:"browse-adverse-events",component:oc,canActivate:[Ss]},{path:"adverse-event-pt-browse",component:Ll,canActivate:[Ss]},{path:"adverse-event-dme-browse",component:c_,canActivate:[Ss]},{path:"adverse-event-cvm-browse",component:Dh,canActivate:[Ss]}],Eg=function(){var m=function(){function D(l){(0,P.Z)(this,D),sc.forEach(function(a){l.config[0].children.push(a)})}return(0,t.Z)(D,null,[{key:"forRoot",value:function(){return{ngModule:D,providers:[gc.a,Ss]}}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0))},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({providers:[Ss],imports:[[p.ez,d.Bz.forChild(sc),Nt.g0,Ft.SJ,s.QW,bt.Bb,St.lN,Pt.c,T.ot,I.Ps,ut.Hi,Q.g,h.To,J.p9,v.p0,yt.JX,be.TU,we.LD,_e.KP,qt.Is,$.ie,Ae.Tx,ft.vV,f.AV,B.Nh,gt._r,je.u5,je.UX,qe.U8,Fo,$o.O,wn.On,Kh]]}),m}();e.B6R(oc,[B.SP,B.uX,B.uD,Ll,c_,Dh],[]),e.B6R(oc,[B.SP,B.uX,B.uD,Ll,c_,Dh],[]),n(64061),n(72869);var Zg=[{path:"browse-clinical-trial",component:Rp},{path:"sub-app-match-list/:id",component:sp},{path:"user-manual",component:Af},{path:"jira-submit",component:Sr}];function lv(m){return function(){m.init()}}var cv=function(){var m=function(){function D(l){(0,P.Z)(this,D),Zg.forEach(function(a){l.config[0].children.push(a)})}return(0,t.Z)(D,null,[{key:"forRoot",value:function(){return{ngModule:D,providers:[Mn.M,A.m]}}}]),D}();return m.\u0275fac=function(l){return new(l||m)(e.LFG(d.F0))},m.\u0275mod=e.oAB({type:m}),m.\u0275inj=e.cJS({providers:[qo,{provide:e.ip1,useFactory:lv,deps:[qo],multi:!0}],imports:[[p.ez,d.Bz.forChild(Zg),Z.o0.forRoot(ct,Te),Z.o0.forRoot(ct,Xe),vt.Sg.forRoot(Sf),Xm.forRoot(),Ut,dc,bh,Jo,Eg,dn,eh,gf,s.QW,T.ot,I.Ps,f.AV,B.Nh,h.To,j.Cq,v.p0,Q.g,J.p9]]}),m}()},91781:function(dt,K,n){"use strict";n.d(K,{q:function(){return j}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(28784),s=n(83336),h=n(50635),f=n(53141),T=n(69264),B=n(52149),I=n(52489),v=n(76442),j=function(){var Q=function(J){(0,e.Z)(A,J);var Z=(0,p.Z)(A);function A(N,E,k){var q;return(0,P.Z)(this,A),(q=Z.call(this,E)).http=N,q.configService=E,q.utilsService=k,q._bypassUpdateCheck=!1,q.apiBaseUrlWithEntityContext=q.configService.configData.apiBaseUrl+"api/v1/impurities/",q}return(0,t.Z)(A,[{key:"isImpuritiesUpdated",get:function(){var E=JSON.stringify(this.impurities);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.impuritiesStateHash!==this.utilsService.hashCode(E)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"getImpuritiesBySubstanceUuid",value:function(E){return this.http.get(this.apiBaseUrlWithEntityContext+'search?q=root_impuritiesSubstanceList_substanceUuid:"'+E+'" OR root_impuritiesSubstanceList_impuritiesTestList_impuritiesDetailsList_relatedSubstanceUuid:"'+E+'"').pipe((0,h.U)(function(ce){return ce}))}},{key:"getImpuritiesByTestImpuritiesDetails",value:function(E){return this.http.get(this.apiBaseUrlWithEntityContext+'search?root_impuritiesSubstanceList_impuritiesTestList_impuritiesDetailsList_relatedSubstanceUuid:"'+E+'"').pipe((0,h.U)(function(q){return q}))}},{key:"searchImpurities",value:function(){var E=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,k=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,q=arguments.length>2?arguments[2]:void 0,ce=arguments.length>3?arguments[3]:void 0,ie=new I.nq;ie=(ie=ie.append("skip",E.toString())).append("top",k.toString()),null!==q&&""!==q&&(ie=ie.append("q",q)),ie=ie.appendFacetParams(ce);var H=this.apiBaseUrlWithEntityContext+"search",V={params:ie};return this.http.get(H,V)}},{key:"getApiExportUrl",value:function(E,k){return this.apiBaseUrlWithEntityContext+"export/"+E+"/"+k}},{key:"loadImpurities",value:function(E){this.impurities=null!=E?E:{impuritiesSubstanceList:[],impuritiesTotal:{}}}},{key:"getImpurities",value:function(E){var k=this.apiBaseUrlWithEntityContext+"".concat(E);return this.http.get(k).pipe((0,h.U)(function(q){return q}))}},{key:"saveImpurities",value:function(){var E=this.apiBaseUrl+"impurities",q={params:new d.LE,type:"JSON",headers:{"Content-type":"application/json"}};return null!=this.impurities&&this.impurities.id?this.http.put(E,this.impurities,q):this.http.post(E,this.impurities,q)}},{key:"validateImpurities",value:function(){var E=this;return new s.y(function(k){E.validateImpur().subscribe(function(q){k.next(q),k.complete()},function(q){k.error(),k.complete()})})}},{key:"validateImpur",value:function(){var E="".concat(this.configService.configData.apiBaseUrl,"api/v1/impurities/@validate");return this.http.post(E,this.impurities)}},{key:"getJson",value:function(){return this.impurities}},{key:"addNewImpuritiesSubstance",value:function(){this.impurities.impuritiesSubstanceList.unshift({impuritiesTestList:[],impuritiesResidualSolventsList:[],impuritiesInorganicList:[]})}},{key:"addNewTest",value:function(E){this.impurities.impuritiesSubstanceList[E].impuritiesTestList.unshift({impuritiesDetailsList:[],impuritiesUnspecifiedList:[]})}},{key:"addNewImpuritiesDetails",value:function(E,k,q){this.impurities.impuritiesSubstanceList[E].impuritiesTestList[k].impuritiesDetailsList.unshift(q)}},{key:"addNewImpuritiesUnspecified",value:function(E,k){this.impurities.impuritiesSubstanceList[E].impuritiesTestList[k].impuritiesUnspecifiedList.unshift({identityCriteriaList:[]})}},{key:"addNewIdentityCriteriaUnspecified",value:function(E,k,q){this.impurities.impuritiesSubstanceList[E].impuritiesTestList[k].impuritiesUnspecifiedList[q].identityCriteriaList.unshift({})}},{key:"addNewImpuritiesResidualSolvents",value:function(E){this.impurities.impuritiesSubstanceList[E].impuritiesResidualSolventsList.unshift({})}},{key:"addNewImpuritiesInorganic",value:function(E){this.impurities.impuritiesSubstanceList[E].impuritiesInorganicList.unshift({})}},{key:"addNewImpuritiesTotal",value:function(){}},{key:"deleteImpurities",value:function(){var E=this.apiBaseUrlWithEntityContext+this.impurities.id,k=new d.LE;return this.http.delete(E,{params:k})}},{key:"deleteImpuritiesSubstance",value:function(E){this.impurities.impuritiesSubstanceList.splice(E,1)}},{key:"deleteImpuritiesTest",value:function(E,k){this.impurities.impuritiesSubstanceList[E].impuritiesTestList.splice(k,1)}},{key:"deleteImpuritiesDetails",value:function(E,k,q){this.impurities.impuritiesSubstanceList[E].impuritiesTestList[k].impuritiesDetailsList.splice(q,1)}},{key:"deleteIdentityCriteria",value:function(E,k,q,ce){this.impurities.impuritiesSubstanceList[E].impuritiesTestList[k].impuritiesDetailsList[q].identityCriteriaList.splice(ce,1)}},{key:"deleteImpuritiesUnspecified",value:function(E,k,q){this.impurities.impuritiesSubstanceList[E].impuritiesTestList[k].impuritiesUnspecifiedList.splice(q,1)}},{key:"deleteIdentityCriteriaUnspecified",value:function(E,k,q,ce){this.impurities.impuritiesSubstanceList[E].impuritiesTestList[k].impuritiesUnspecifiedList[q].identityCriteriaList.splice(ce,1)}},{key:"deleteImpuritiesResidualSolvents",value:function(E,k){this.impurities.impuritiesSubstanceList[E].impuritiesResidualSolventsList.splice(k,1)}},{key:"deleteImpuritiesInorganic",value:function(E,k){this.impurities.impuritiesSubstanceList[E].impuritiesInorganicList.splice(k,1)}},{key:"getSubstanceImpurities",value:function(E,k,q){var ce=this;return this.http.get(this.baseUrl+"impuritiesListBySubstanceUuid?substanceUuid="+E+"&page="+(k+1)+"&pageSize="+q).pipe((0,h.U)(function(V){return ce.totalRecords=V.totalRecords,V.data}))}},{key:"getRelationshipImpurity",value:function(E){return this.http.get(this.apiBaseUrlWithEntityContext+"subRelationship/"+E).pipe((0,h.U)(function(q){return q}))}},{key:"getSubstanceDetailsBySubstanceId",value:function(E){return this.http.get(this.baseUrl+"getSubstanceDetailsBySubstanceId?substanceId="+E).pipe((0,h.U)(function(q){return q}))}},{key:"getImpuritiesListExportUrl",value:function(E){return this.baseUrl+"impuritiesListExport?substanceId="+E}}]),A}(T.q);return Q.\u0275fac=function(Z){return new(Z||Q)(v.LFG(d.eN),v.LFG(f.E),v.LFG(B.F))},Q.\u0275prov=v.Yz7({token:Q,factory:Q.\u0275fac,providedIn:"root"}),Q}()},42154:function(dt,K,n){"use strict";n.d(K,{M:function(){return Q}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(28784),s=n(83336),h=n(32673),f=n(50635),T=n(53141),B=n(69264),I=n(52149),v=n(52489),j=n(76442),Q=function(){var J=function(Z){(0,e.Z)(N,Z);var A=(0,p.Z)(N);function N(E,k,q){var ce;return(0,P.Z)(this,N),(ce=A.call(this,k)).http=E,ce.configService=k,ce.utilsService=q,ce._bypassUpdateCheck=!1,ce.totalRecords=0,ce.apiBaseUrlWithProductEntityUrl=ce.configService.configData.apiBaseUrl+"api/v1/products/",ce.apiBaseUrlWithProductBrowseEntityUrl=ce.configService.configData.apiBaseUrl+"api/v1/productsall/",ce.apiBaseUrlWithProductElistEntityUrl=ce.configService.configData.apiBaseUrl+"api/v1/productselist/",ce}return(0,t.Z)(N,[{key:"getProducts",value:function(k){var q=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,ce=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,ie=arguments.length>3?arguments[3]:void 0,H=arguments.length>4?arguments[4]:void 0,V=new v.nq;V=(V=V.append("skip",q.toString())).append("top",ce.toString()),null!==ie&&""!==ie&&(V=V.append("q",ie)),V=V.appendFacetParams(H),null!=k&&""!==k&&(V=V.append("order",k));var ue=this.apiBaseUrlWithProductBrowseEntityUrl+"search",R={params:V};return this.http.get(ue,R)}},{key:"getProductFacets",value:function(k,q,ce){var ie;return ie=q?"".concat(this.configService.configData.apiBaseUrl,"api/v1/productsall/search/@facets?wait=false&kind=gov.hhs.gsrs.products.productall.models.ProductMainAll&skip=0&fdim=200&sideway=true&field=").concat(k.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(q):null!=ce?ce:k._self,this.http.get(ie)}},{key:"filterFacets",value:function(k,q){var ce=this.apiBaseUrlWithProductBrowseEntityUrl+"search/@facets?wait=false&kind=gov.hhs.gsrs.products.productall.models.ProductMainAll&skip=0&fdim=200&sideway=true&field=".concat(q,"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(k);return this.http.get(ce)}},{key:"retrieveFacetValues",value:function(k){return this.http.get(k._self)}},{key:"retrieveNextFacetValues",value:function(k){var q=this,ce=k._self;return k.$next?this.http.get(k.$next):this.http.get(ce).pipe((0,h.w)(function(ie){return ie?q.http.get(ie.nextPageUri):"nada"}))}},{key:"getApiExportUrl",value:function(k,q){return this.apiBaseUrlWithProductBrowseEntityUrl+"export/".concat(k,"/").concat(q)}},{key:"getProductSearchSuggestions",value:function(k){return this.http.get(this.apiBaseUrlWithProductBrowseEntityUrl+"suggest?q="+k)}},{key:"getProductProvenanceList",value:function(k){return this.http.get(this.apiBaseUrlWithProductBrowseEntityUrl+"distprovenance/"+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getProductElist",value:function(k){return this.http.get(this.apiBaseUrlWithProductElistEntityUrl+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"isProductUpdated",get:function(){var k=JSON.stringify(this.product);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.productStateHash!==this.utilsService.hashCode(k)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"getProduct",value:function(k){return this.http.get(this.apiBaseUrlWithProductEntityUrl+k).pipe((0,f.U)(function(ce){return ce}))}},{key:"getViewProductUrl",value:function(k){return this.apiBaseUrlWithProductEntityUrl+k}},{key:"loadProduct",value:function(k){this.product=null!=k?k:{productNameList:[{}],productCodeList:[{}],productCompanyList:[{}],productComponentList:[{productLotList:[{productIngredientList:[{}]}]}]}}},{key:"saveProduct",value:function(){var k=this.apiBaseUrlWithProductEntityUrl,ce={params:new d.LE,type:"JSON",headers:{"Content-type":"application/json"}};return null!=this.product&&this.product.id?this.http.put(k,this.product,ce):this.http.post(k,this.product,ce)}},{key:"validateProduct",value:function(){var k=this;return new s.y(function(q){k.validateProd().subscribe(function(ce){q.next(ce),q.complete()},function(ce){q.error(),q.complete()})})}},{key:"validateProd",value:function(){return this.http.post(this.apiBaseUrlWithProductEntityUrl+"@validate",this.product)}},{key:"deleteProduct",value:function(k){return this.http.delete(this.apiBaseUrlWithProductEntityUrl+k,{})}},{key:"addNewProductName",value:function(){this.product.productNameList.unshift({productTermAndTermPartList:[]})}},{key:"deleteProductName",value:function(k){this.product.productNameList.splice(k,1)}},{key:"addNewTermAndTermPart",value:function(k){null==this.product.productNameList[k].productTermAndTermPartList&&(this.product.productNameList[k].productTermAndTermPartList=[]),this.product.productNameList[k].productTermAndTermPartList.unshift({})}},{key:"deleteTermAndTermPart",value:function(k,q){this.product.productNameList[k].productTermAndTermPartList.splice(q,1)}},{key:"addNewProductCode",value:function(){this.product.productCodeList.unshift({})}},{key:"deleteProductCode",value:function(k){this.product.productCodeList.splice(k,1)}},{key:"addNewProductCompany",value:function(){this.product.productCompanyList.unshift({})}},{key:"deleteProductCompany",value:function(k){this.product.productCompanyList.splice(k,1)}},{key:"addNewProductComponent",value:function(){this.product.productComponentList.unshift({productLotList:[{productIngredientList:[{}]}]})}},{key:"deleteProductComponent",value:function(k){this.product.productComponentList.splice(k,1)}},{key:"addNewProductLot",value:function(k){this.product.productComponentList[k].productLotList.unshift({productIngredientList:[{}]})}},{key:"deleteProductLot",value:function(k,q){this.product.productComponentList[k].productLotList.splice(q,1)}},{key:"addNewProductIngredient",value:function(k,q){this.product.productComponentList[k].productLotList[q].productIngredientList.unshift({})}},{key:"deleteProductIngredient",value:function(k,q,ce){this.product.productComponentList[k].productLotList[q].productIngredientList.splice(ce,1)}},{key:"copyProductComponent",value:function(k){var q=JSON.parse(JSON.stringify(k));this.product.productComponentList.unshift(q)}},{key:"copyProductLot",value:function(k,q){var ce=JSON.parse(JSON.stringify(k));this.product.productComponentList[q].productLotList.unshift(ce)}},{key:"copyProductIngredient",value:function(k,q,ce){var ie=JSON.parse(JSON.stringify(k));this.product.productComponentList[q].productLotList[ce].productIngredientList.unshift(ie)}}]),N}(B.q);return J.\u0275fac=function(A){return new(A||J)(j.LFG(d.eN),j.LFG(T.E),j.LFG(I.F))},J.\u0275prov=j.Yz7({token:J,factory:J.\u0275fac}),J}()},48968:function(dt,K,n){"use strict";n.d(K,{m:function(){return I}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(53141),s=n(69264),h=n(50635),f=n(52489),T=n(76442),B=n(28784),I=function(){var v=function(j){(0,e.Z)(J,j);var Q=(0,p.Z)(J);function J(Z,A){var N;return(0,P.Z)(this,J),(N=Q.call(this,A)).http=Z,N.configService=A,N.apiBaseUrlWithApplicationEntityUrl=N.configService.configData.apiBaseUrl+"api/v1/applications/",N}return(0,t.Z)(J,[{key:"getSubstanceBySubstanceUuid",value:function(A){return this.http.get(this.apiBaseUrl+"substances("+A+")").pipe((0,h.U)(function(E){return E}))}},{key:"getSubstanceCodesBySubstanceUuid",value:function(A){return this.http.get(this.apiBaseUrl+"substances("+A+")/codes").pipe((0,h.U)(function(E){return E}))}},{key:"getSubstanceNamesBySubstanceUuid",value:function(A){return this.http.get(this.apiBaseUrl+"substances("+A+")/names")}},{key:"getSubstanceByAnyId",value:function(A){return this.http.get(this.apiBaseUrl+"substances("+A+")").pipe((0,h.U)(function(E){return E}))}},{key:"getSubstanceRelationships",value:function(A){var N="".concat(this.apiBaseUrl,"substances(").concat(A,")/relationships");return this.http.get(N)}},{key:"getSearchCount",value:function(A){var N="".concat(this.configService.configData.apiBaseUrl,"api/v1/searchcounts/")+A;return this.http.get(N).pipe((0,h.U)(function(E){return E}))}},{key:"searchApplicationByAppTypeNumber",value:function(A,N){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+'search?skip=0&top=10&q=root_appType:"^'+A+'" AND root_appNumber:"*'+N+'*"').pipe((0,h.U)(function(k){return k}))}},{key:"getAppIngredtMatchListSearchResult",value:function(A){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,E=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,k=arguments.length>3?arguments[3]:void 0,q=arguments.length>4?arguments[4]:void 0,ce=new f.nq;ce=(ce=ce.append("skip",N.toString())).append("top",E.toString()),null!==k&&""!==k&&(ce=ce.append("q",k)),ce=ce.appendFacetParams(q);var ie=this.apiBaseUrl+"application/search",H={params:ce};return this.http.get(ie,H)}},{key:"createAppIngredMatchSearchCritieria",value:function(A){var N="";return this.getSubstanceNamesBySubstanceUuid(A).subscribe(function(E){E&&E.forEach(function(q,ce){q&&q.name&&(ce>0&&(N+=" OR "),N=N+'root_applicationProductList_applicationProductNameList_productName:"'+q.name+'"')})}),N}},{key:"getApplicationIngredientMatchList",value:function(A){return null}},{key:"appIngredMatchListAutoUpdateSave",value:function(A,N){return this.http.get(this.baseUrl+"appIngredMatchListAutoUpdateSaveJson?applicationId="+A+"&bdnum="+N).pipe((0,h.U)(function(k){return k}))}},{key:"getApiExportUrlBrowseSubstance",value:function(A,N,E){if(E){if("app"===E)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(A,"/appxlsx");if("prod"===E)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(A,"/prodxlsx");if("clinicaltrialsus"===E)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(A,"/ctusxlsx");if("clinicaltrialseurope"===E)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(A,"/cteuxlsx")}return""}},{key:"getApiExportUrl",value:function(A,N){return"".concat(this.configService.configData.apiBaseUrl,"api/v1/applicationssrs/export/").concat(A,"/").concat(N)}},{key:"getEtagDetails",value:function(A,N,E){return this.http.get(this.baseUrl+"getEtagDetails?etagId="+A+"&filename="+N+"&source="+E).pipe((0,h.U)(function(q){return q}))}},{key:"getManualFile",value:function(){return this.http.get(this.baseUrl+"manual",{headers:{Accept:"application/json","Content-Type":"application/json"},responseType:"blob",observe:"response"}).pipe((0,h.U)(function(N){return N}))}},{key:"getManualUrl",value:function(){return this.baseUrl+"manual"}},{key:"getSubstanceKeyType",value:function(){var A=null;return this.configService.configData&&this.configService.configData.substance&&(A=(this.configService.configData&&this.configService.configData.substance).linking.keyType.default),A}},{key:"getCurrentDate",value:function(){return new Date}}]),J}(s.q);return v.\u0275fac=function(Q){return new(Q||v)(T.LFG(B.eN),T.LFG(d.E))},v.\u0275prov=T.Yz7({token:v,factory:v.\u0275fac}),v}()},93666:function(dt,K,n){"use strict";n.d(K,{X:function(){return t.y},N:function(){return e}});var t=n(76078),e={apiBaseUrl:"https://ginas.ncats.nih.gov/ginas/app/",baseHref:"",clasicBaseHref:"",production:!1,appId:"gsrs",structureEditor:"jsdraw",googleAnalyticsId:"",version:"2.3.4",isAnalyticsPrivate:!1,contactEmail:"ginas@mail.nih.gov"};e.apiBaseUrl="/ginas/app/",e.production=!0,e.baseHref="/ginas/app/beta/",e.clasicBaseHref="/ginas/app/",e.appId="fda",e.isAnalyticsPrivate=!0},53051:function(dt,K,n){"use strict";var P=n(50318),t=n(76442),e=n(48047),p=n(78069),d=n(28784),s=n(90587),h=n(98002),f=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.router=g}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.router.navigate(["/home"])}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.F0))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-page-not-found"]],decls:1,vars:0,template:function(g,u){1&g&&t._UZ(0,"div")},encapsulation:2}),b}(),T=n(88951),B=n(92507),I=n(43672),v=n(87317),j=n(65590),Q=function(){return["/browse-substance"]},J=function(L){return{search:L}},Z=function(){var b=function(){function L(g,u,M){(0,p.Z)(this,L),this.data=g,this.bottomSheetRef=u,this.activatedRoute=M,this.searchTerm=g.searchTerm}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){}},{key:"dismiss",value:function(){this.bottomSheetRef.dismiss()}},{key:"googleSearchUrl",get:function(){return"http://www.google.com/search?q=".concat(encodeURIComponent(this.searchTerm))}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(I.OG),t.Y36(I.oL),t.Y36(h.gz))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-highlighted-search-action"]],decls:21,vars:12,consts:[[1,"bottom-sheet-title"],[1,"middle-fill"],["mat-icon-button","",3,"click"],["svgIcon","close"],[1,"bottom-sheet-search-term"],[1,"bottom-sheet-actions"],["mat-button","",3,"routerLink","queryParams","click"],["svgIcon","search"],["mat-button","","target","_blank",3,"routerLink","queryParams","click"],["svgIcon","open_in_new"],["mat-button","","target","_blank",3,"href","click"]],template:function(g,u){1&g&&(t.TgZ(0,"div"),t.TgZ(1,"div",0),t.TgZ(2,"span"),t._uU(3,"Search for:"),t.qZA(),t._UZ(4,"span",1),t.TgZ(5,"button",2),t.NdJ("click",function(){return u.dismiss()}),t._UZ(6,"mat-icon",3),t.qZA(),t.qZA(),t.TgZ(7,"div",4),t._uU(8),t.qZA(),t.TgZ(9,"div",5),t.TgZ(10,"a",6),t.NdJ("click",function(){return u.dismiss()}),t._uU(11," In here "),t._UZ(12,"mat-icon",7),t.qZA(),t._UZ(13,"span",1),t.TgZ(14,"a",8),t.NdJ("click",function(){return u.dismiss()}),t._uU(15," In different tab "),t._UZ(16,"mat-icon",9),t.qZA(),t._UZ(17,"span",1),t.TgZ(18,"a",10),t.NdJ("click",function(){return u.dismiss()}),t._uU(19," In Google "),t._UZ(20,"mat-icon",9),t.qZA(),t.qZA(),t.qZA()),2&g&&(t.xp6(8),t.hij(' "',u.searchTerm,'" '),t.xp6(2),t.Q6J("routerLink",t.DdM(6,Q))("queryParams",t.VKq(7,J,u.searchTerm)),t.xp6(4),t.Q6J("routerLink",t.DdM(9,Q))("queryParams",t.VKq(10,J,u.searchTerm)),t.xp6(4),t.Q6J("href",u.googleSearchUrl,t.LSH))},directives:[v.lW,j.Hw,v.zs,h.yS],styles:[".bottom-sheet-title[_ngcontent-%COMP%]{font-weight:500;margin-bottom:10px;display:-ms-flexbox;display:flex}.bottom-sheet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;margin-top:7px}"]}),b}(),A=n(83336),N=n(24582),E=n(7318),k=n(69264),q=n(25474),ce=n(41944),ie=n(93945),H=n(89173),V=n(85524),ue=n(54987),r=n(53158),z=function(){var b=function(L){(0,N.Z)(u,L);var g=(0,E.Z)(u);function u(M,U){var re;return(0,p.Z)(this,u),(re=g.call(this,U)).http=M,re.configService=U,re}return(0,e.Z)(u,[{key:"fetchJobs",value:function(){var U="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(U,"scheduledjobs"))}},{key:"fetchJob",value:function(U){var re="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(re,"scheduledjobs(").concat(U,")"))}},{key:"runJob",value:function(U){return this.http.get(U).pipe(function R(){var b=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,g=b&&"object"==typeof b?b:{count:b},u=g.count,M=void 0===u?1/0:u,U=g.delay,re=g.resetOnSuccess,lt=void 0!==re&&re;return M<=0?H.y:(0,ce.e)(function(Wt,nn){var Bn,bn=0;!function oi(){var pi=!1;Bn=Wt.subscribe((0,ie.x)(nn,function(ii){lt&&(bn=0),nn.next(ii)},void 0,function(ii){if(bn++0&&(this.file=u.target.files[0],this.filename=this.file.name,this.readFile())}},{key:"openInput",value:function(){document.getElementById("fileInput").click()}},{key:"fetchDrafts",value:function(){this.values=[];for(var u=Object.keys(localStorage),M=u.length;M--;)if(u[M].startsWith("gsrs-draft-")){var U=JSON.parse(localStorage.getItem(u[M]));U.key=u[M],U.fromNow=Re(U.date).fromNow(),this.values.push(U)}this.filtered=this.values.sort(function(re,lt){return lt.date-re.date}),this.filterToggle(this.json&&this.json.uuid?"substance":"register")}},{key:"saveDraft",value:function(){this.json=this.substanceFormService.cleanSubstance();var u=(new Date).getTime(),M="gsrs-draft-"+u,U=this.json.uuid?this.json.uuid:"register",re=this.json.substanceClass,lt=null;this.json.names.forEach(function(nn){nn.displayName&&(lt=nn.name)}),!lt&&this.json.names.length>0&&(lt=this.json.names[0].name),localStorage.setItem(M,JSON.stringify({uuid:U,date:u,type:re,name:lt,substance:this.json}))}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(X.B),t.Y36(ne.so),t.Y36(ve.FW),t.Y36(P.H7),t.Y36(h.F0),t.Y36(ne.WI))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-substance-drafts"]],decls:29,vars:8,consts:[["mat-dialog-header",""],[1,"form-row","head"],[1,"title"],[1,"middle-fill"],["mat-icon-button","","matTooltip","Close Dialog","mat-dialog-close",""],["svgIcon","clear"],["mat-table","","matSort","",3,"dataSource","matSortChange",4,"ngIf"],["class","form-row","style","padding:50px;font-size:17px",4,"ngIf"],["mat-dialog-actions",""],[1,"form-row"],["class","checkbox","style","padding:10px;",4,"ngIf"],[1,"checkbox",2,"padding","10px"],["matTooltip","selected",3,"ngModel","change"],["mat-flat-button","","color","primary","matTooltip","Save a copy of all local drafts to a file",2,"margin-right","10px",3,"href","download"],[1,"file-row"],["matTooltip","choose a local file of draft backups",1,"mat-raised-button","mat-primary",2,"margin-right","10px",3,"click"],[1,"file-name",3,"ngClass"],["id","fileInput","hidden","","type","file","name","file1","accept",".json",3,"change"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","delete"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","type"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","name"],["matColumnDef","date"],["matColumnDef","uuid"],["matColumnDef","load"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-icon-button","","matTooltip","Delete draft",3,"click"],["svgIcon","delete_forever"],["mat-header-cell","","mat-sort-header",""],["style","margin-left:8px",4,"ngIf"],[2,"margin-left","8px"],["mat-button","",3,"click"],["mat-header-row",""],["mat-row",""],[1,"form-row",2,"padding","50px","font-size","17px"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"div",2),t._uU(3,"Saved Drafts"),t.qZA(),t._UZ(4,"span",3),t.TgZ(5,"button",4),t._UZ(6,"mat-icon",5),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"mat-dialog-content"),t.YNc(8,je,21,3,"table",6),t.YNc(9,Nt,2,0,"div",7),t.qZA(),t.TgZ(10,"div",8),t.TgZ(11,"div",9),t.YNc(12,Ft,3,1,"div",10),t.TgZ(13,"div",11),t.TgZ(14,"mat-checkbox",12),t.NdJ("change",function(){return u.filterToggle("register")}),t._uU(15," Show only new registrations "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(16,"div",9),t.TgZ(17,"a",13),t.TgZ(18,"span"),t._uU(19,"Save Backup"),t.qZA(),t.qZA(),t.TgZ(20,"div",14),t.TgZ(21,"button",15),t.NdJ("click",function(){return u.openInput()}),t._uU(22,"Load A Backup"),t.qZA(),t.TgZ(23,"div",16),t._uU(24),t.qZA(),t.TgZ(25,"input",17),t.NdJ("change",function(U){return u.onFileSelect(U)}),t.qZA(),t.qZA(),t._UZ(26,"span",3),t.TgZ(27,"button",18),t._uU(28,"Close"),t.qZA(),t.qZA(),t.qZA()),2&g&&(t.xp6(8),t.Q6J("ngIf",u.filtered.length>0),t.xp6(1),t.Q6J("ngIf",0==u.filtered.length),t.xp6(3),t.Q6J("ngIf",u.data.uuid),t.xp6(2),t.Q6J("ngModel",u.onlyRegister),t.xp6(3),t.MGl("download","",u.fileName,".json"),t.Q6J("href",u.downloadJsonHref,t.LSH),t.xp6(6),t.Q6J("ngClass",u.filename?"test":"italics"),t.xp6(1),t.Oqu(u.filename?u.filename:"no file chosen"))},directives:[v.lW,Ie.gM,ne.ZT,j.Hw,ne.xY,Ee.O5,ge.BZ,_t.YE,ge.w1,ge.fO,ge.ge,ge.Dz,ge.ev,_t.nU,ge.as,ge.XQ,ge.nj,ge.Gk,ne.H8,wt.oG,s.JJ,s.On,v.zs,Ee.mk],pipes:[Ee.uU],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row}.title[_ngcontent-%COMP%]{font-size:1.17em;font-weight:700;padding-top:15px}.head[_ngcontent-%COMP%]{padding-bottom:15px}.italics[_ngcontent-%COMP%]{font-style:italic;color:#00000080}.file-row[_ngcontent-%COMP%]{width:40%;height:40px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}"]}),b}(),St=n(74742),Pt=n(44770),ut=n(43365);function yt(b,L){if(1&b&&(t.TgZ(0,"div",9),t.TgZ(1,"div",10),t._uU(2,"Email: "),t.qZA(),t.TgZ(3,"div",11),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.user.user.email)}}function be(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&b){var g=L.$implicit,u=L.last;t.xp6(1),t.AsE(" ",g,"",u?"":", "," ")}}function we(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&b){var g=L.$implicit,u=L.last;t.xp6(1),t.AsE(" ",g.name,"",u?"":", "," ")}}function _e(b,L){1&b&&(t.TgZ(0,"div",15),t._UZ(1,"mat-progress-spinner",18),t.qZA())}function $(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"div"),t.TgZ(2,"mat-form-field"),t.TgZ(3,"input",19),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(3).oldPassword=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-form-field"),t.TgZ(6,"input",20),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(3).newPassword=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"div"),t.TgZ(8,"mat-form-field"),t.TgZ(9,"input",21),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(3).newPasswordConfirm=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(10,"div"),t.TgZ(11,"button",22),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).validatePassword()}),t._uU(12,"Submit Change"),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(3);t.xp6(3),t.Q6J("disabled",u.loading)("ngModel",u.oldPassword),t.xp6(3),t.Q6J("disabled",u.loading)("ngModel",u.newPassword),t.xp6(3),t.Q6J("disabled",u.loading)("ngModel",u.newPasswordConfirm),t.xp6(2),t.Q6J("disabled",u.loading)}}function Ae(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",15),t.TgZ(1,"div",16),t.TgZ(2,"button",17),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(2);return U.changePassword=!U.changePassword}),t._uU(3),t.qZA(),t.YNc(4,_e,2,0,"div",13),t.qZA(),t.YNc(5,$,13,7,"span",2),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(2),t.Q6J("disabled",u.loading),t.xp6(1),t.hij(" ",u.changePassword?"Cancel":"Change Password"," "),t.xp6(1),t.Q6J("ngIf",u.loading),t.xp6(1),t.Q6J("ngIf",!0===u.changePassword)}}function ft(b,L){if(1&b&&(t.TgZ(0,"div",23),t._uU(1),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.hij(" ",g.message," ")}}function gt(b,L){if(1&b&&(t.TgZ(0,"mat-dialog-content"),t.TgZ(1,"div",6),t.TgZ(2,"div",7),t.YNc(3,yt,5,1,"div",8),t.TgZ(4,"div",9),t.TgZ(5,"div",10),t._uU(6," Roles: "),t.qZA(),t.TgZ(7,"div",11),t.YNc(8,be,2,2,"span",12),t.qZA(),t.qZA(),t.TgZ(9,"div",9),t.TgZ(10,"div",10),t._uU(11," Groups: "),t.qZA(),t.TgZ(12,"div",11),t.YNc(13,we,2,2,"span",12),t.qZA(),t.qZA(),t.qZA(),t.YNc(14,Ae,6,4,"div",13),t.qZA(),t.YNc(15,ft,2,1,"div",14),t.qZA()),2&b){var g=t.oxw();t.xp6(3),t.Q6J("ngIf",g.user.user.email&&""!==g.user.user.email),t.xp6(5),t.Q6J("ngForOf",g.user.roles),t.xp6(5),t.Q6J("ngForOf",g.user.groups),t.xp6(1),t.Q6J("ngIf",!g.newUser),t.xp6(1),t.Q6J("ngIf",g.changePassword)}}var Bt=function(){var b=function(){function L(g,u,M,U,re){(0,p.Z)(this,L),this.authService=g,this.adminService=u,this.router=M,this.dialogRef=U,this.dialog=re,this.newPassword="",this.oldPassword="",this.newPasswordConfirm="",this.changePassword=!1,this.message="",this.loading=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.authService.getAuth().pipe((0,Y.q)(1)).subscribe(function(M){u.user=M})}},{key:"viewDownloads",value:function(){var u=this;this.router.navigate(["/user-downloads"]),setTimeout(function(){u.dialogRef.close()},400)}},{key:"validatePassword",value:function(){var u=this;this.newPassword!==this.newPasswordConfirm?(this.message="Error: passwords do not match",this.newPassword="",this.newPasswordConfirm=""):this.newPassword===this.oldPassword?this.message="Error: no change in password detected":(this.loading=!0,this.adminService.changeMyPassword(this.oldPassword,this.newPassword,this.user.id).pipe((0,Y.q)(1)).subscribe(function(M){u.message="Password updated successfully!",u.loading=!1,u.newPassword="",u.newPasswordConfirm="",u.oldPassword="",u.changePassword=!1},function(M){u.loading=!1,M.error&&(0,se.isString)(M.error)?u.message="Error - "+M.error:(u.newPassword="",u.newPasswordConfirm="",u.changePassword=!u.changePassword,u.message="Error: unknown error")}))}},{key:"viewDrafts",value:function(){this.dialog.open(bt,{maxHeight:"85%",width:"70%",data:{profile:!0}}).afterClosed().subscribe(function(M){})}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(T.e),t.Y36(z),t.Y36(h.F0),t.Y36(ne.so),t.Y36(ne.uw))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-user-profile"]],decls:14,vars:5,consts:[["mat-dialog-title",""],[1,"username"],[4,"ngIf"],["mat-button","",3,"disabled","click"],[1,"middle-fill"],["mat-button","","mat-dialog-close","",3,"disabled"],[1,"user-container"],[1,"left-side"],["class","label-value",4,"ngIf"],[1,"label-value"],[1,"label"],[1,"value"],[4,"ngFor","ngForOf"],["class","password-column",4,"ngIf"],["class","message",4,"ngIf"],[1,"password-column"],[1,"spinner-container"],["mat-button","",1,"mat-flat-button",3,"disabled","click"],["color","primary","mode","indeterminate","diameter","30",1,"spinner"],["matInput","","type","password","placeholder","old password","required","","name","Password",3,"disabled","ngModel","ngModelChange"],["matInput","","type","password","placeholder","new password","required","","name","Password",3,"disabled","ngModel","ngModelChange"],["matInput","","type","password","placeholder","confirm new password","required","","name","Password",3,"disabled","ngModel","ngModelChange"],["mat-button","",1,"mat-primary","mat-flat-button",3,"disabled","click"],[1,"message"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"h2"),t._uU(2,"User Profile"),t.qZA(),t.TgZ(3,"div",1),t._uU(4),t.qZA(),t.qZA(),t.YNc(5,gt,16,5,"mat-dialog-content",2),t.TgZ(6,"mat-dialog-actions"),t.TgZ(7,"button",3),t.NdJ("click",function(){return u.viewDownloads()}),t._uU(8," View Downloads "),t.qZA(),t.TgZ(9,"button",3),t.NdJ("click",function(){return u.viewDrafts()}),t._uU(10," View Edit Drafts "),t.qZA(),t._UZ(11,"span",4),t.TgZ(12,"button",5),t._uU(13,"Close"),t.qZA(),t.qZA()),2&g&&(t.xp6(4),t.hij(" ",u.user.user.username," "),t.xp6(1),t.Q6J("ngIf",u.user),t.xp6(2),t.Q6J("disabled",u.loading),t.xp6(2),t.Q6J("disabled",u.loading),t.xp6(3),t.Q6J("disabled",u.loading))},directives:[ne.uh,Ee.O5,ne.xY,Ee.sg,v.lW,St.Ou,Pt.KE,ut.Nt,s.Fj,s.Q7,s.JJ,s.On,ne.H8,ne.ZT],styles:[".user-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}mat-card[_ngcontent-%COMP%]{margin:auto}.username[_ngcontent-%COMP%]{font-size:20px;margin:5px;font-weight:500}.left-side[_ngcontent-%COMP%]{width:70%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.label-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;margin:7px}.label-value[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{min-width:100px;font-weight:500}.message[_ngcontent-%COMP%]{text-align:center}.password-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.spinner-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}"]}),b}();function _n(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._uU(2,"Or paste JSON here:"),t.qZA(),t.TgZ(3,"textarea",15),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw().pastedJSON=U})("ngModelChange",function(){return t.CHM(g),t.oxw().checkLoaded()}),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(3),t.Q6J("ngModel",u.pastedJSON)}}var wn=function(){var b=function(){function L(g,u){(0,p.Z)(this,L),this.router=g,this.dialogRef=u,this.message="",this.loaded=!1,this.uploaded=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){}},{key:"uploadFile",value:function(u){var M=this;if(1!==u.target.files.length)this.message="No file selected",this.loaded=!1;else{this.filename=u.target.files[0].name;var re=new FileReader;re.onloadend=function(lt){var Wt=re.result.toString();M.jsonValid(Wt)?JSON.parse(Wt).substanceClass?(M.loaded=!0,M.record=Wt,M.message=""):(M.message="Error: Invalid JSON format",M.loaded=!1):(M.message="Error: Invalid file format",M.loaded=!1)},re.readAsText(u.target.files[0]),this.uploaded=!0}}},{key:"useFile",value:function(){!this.uploaded&&this.pastedJSON&&(JSON.parse(this.pastedJSON).substanceClass?(this.loaded=!0,this.record=this.pastedJSON,this.message=""):(this.message="Error: Invalid JSON format",this.loaded=!1)),this.dialogRef.close(this.record)}},{key:"checkLoaded",value:function(){this.loaded=!0;try{JSON.parse(this.pastedJSON),this.message=""}catch(u){this.message="Error: Invalid JSON format in pasted string",this.loaded=!1}}},{key:"openInput",value:function(){document.getElementById("fileInput").click()}},{key:"jsonValid",value:function(u){try{JSON.parse(u)}catch(M){return!1}return!0}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.F0),t.Y36(ne.so))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-substance-edit-import-dialog"]],decls:22,vars:5,consts:[["mat-dialog-title","",1,"mat-dialog-title","class"],["mat-dialog-content","",1,"mat-dialog-content"],[1,"info"],[1,"full-row"],["mat-raised-button","",3,"click"],[1,"file-name",3,"ngClass"],["id","fileInput","hidden","","type","file","name","file1","accept",".json",3,"change"],["class","full-row-col","style","margin-top:10px;",4,"ngIf"],[1,"message"],["mat-dialog-actions","",1,"mat-dialog-actions"],["mat-flat-button","","color","primary","matDialogClose",""],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"disabled","click"],[1,"full-row-col",2,"margin-top","10px"],[2,"width","100%"],["cdkAutosizeMinRows","5",2,"min-height","100px",3,"ngModel","ngModelChange"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"h3"),t._uU(2,"Substance Import"),t.qZA(),t.qZA(),t.TgZ(3,"div",1),t.TgZ(4,"div",2),t._uU(5," Select a .json file to import into a new edit form. "),t.qZA(),t.TgZ(6,"div",3),t.TgZ(7,"div"),t.TgZ(8,"button",4),t.NdJ("click",function(){return u.openInput()}),t._uU(9,"Select File to Import"),t.qZA(),t.qZA(),t.TgZ(10,"div",5),t._uU(11),t.qZA(),t.TgZ(12,"input",6),t.NdJ("change",function(U){return u.uploadFile(U)}),t.qZA(),t.qZA(),t.YNc(13,_n,4,1,"div",7),t.TgZ(14,"div",8),t._uU(15),t.qZA(),t.qZA(),t.TgZ(16,"div",9),t.TgZ(17,"button",10),t._uU(18,"Cancel"),t.qZA(),t._UZ(19,"span",11),t.TgZ(20,"button",12),t.NdJ("click",function(){return u.useFile()}),t._uU(21,"Import"),t.qZA(),t.qZA()),2&g&&(t.xp6(10),t.Q6J("ngClass",u.filename?"test":"italics"),t.xp6(1),t.Oqu(u.filename?u.filename:"no file chosen"),t.xp6(2),t.Q6J("ngIf",!u.record),t.xp6(2),t.hij(" ",u.message," "),t.xp6(5),t.Q6J("disabled",!u.loaded))},directives:[ne.uh,ne.xY,v.lW,Ee.mk,Ee.O5,s.Fj,s.JJ,s.On,ne.H8,ne.ZT],styles:[".message[_ngcontent-%COMP%]{padding:20px}.info[_ngcontent-%COMP%]{padding:20px 20px 30px}.file-import[_ngcontent-%COMP%], .file-row[_ngcontent-%COMP%]{width:100%}.italics[_ngcontent-%COMP%]{font-style:italic;color:#00000080}.file-name[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;margin-left:15px;margin-top:auto;margin-bottom:auto;font-size:15px;color:#000c}.full-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;padding:15px}.full-row-col[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:start;justify-content:flex-start;padding:15px}"]}),b}(),Tn=n(66088),On=n(83448),Jn=n(84844),Un=n(50253),si=function(){var b=function(){function L(){(0,p.Z)(this,L),this.registeredSearchComponents={}}return(0,e.Z)(L,[{key:"registerSearchComponent",value:function(u){this.registeredSearchComponents[u]=new Un.x}},{key:"setSearchComponentValueEvent",value:function(u){return this.registeredSearchComponents[u].asObservable()}},{key:"unregisterSearchComponent",value:function(u){this.registeredSearchComponents[u].complete(),this.registeredSearchComponents[u]=null}},{key:"setSearchValue",value:function(u){var M=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";this.registeredSearchComponents[u]&&this.registeredSearchComponents[u].next(M)}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac,providedIn:Jn.d}),b}(),fi=function(){var b=function(){function L(){(0,p.Z)(this,L),this.wildcardText=new Un.x,this.topSearchBox=new Un.x,this.wildCardObservable=this.wildcardText.asObservable(),this.topSearchObservable=this.topSearchBox.asObservable()}return(0,e.Z)(L,[{key:"getWildCardText",value:function(u){this.wildcardText.next(u)}},{key:"getTopSearchBoxText",value:function(u){this.topSearchBox.next(u)}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac,providedIn:"root"}),b}(),rn=n(19946),sn=n(82796),jt=n(19975),Ue=n(43785),et=n(88325),De=n(76775),Ze=["notification"],Je=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.notificationService=g,this.subscriptions=[]}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.appNotification.nativeElement.classList.add("hidden");var M=this.notificationService.notificationEvent.subscribe(function(U){u.setNotification(U)});this.subscriptions.push(M)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(u){u.unsubscribe()}),clearTimeout(this.notificationTimer)}},{key:"setNotification",value:function(u){var M=this;this.notifcationType=u.type||et.k.default,this.notificationMessage=u.message,this.appNotification.nativeElement.classList.remove("hidden"),this.appNotification.nativeElement.classList.add(et.k[this.notifcationType]),this.appNotification.nativeElement.classList.add("showing"),this.notificationTimer=setTimeout(function(){M.removeNotification(u.type),M.notificationTimer=null},u.milisecondsToShow||5e3)}},{key:"removeNotification",value:function(u){null!=this.notificationTimer&&clearTimeout(this.notificationTimer),this.appNotification.nativeElement.classList.remove("showing"),this.appNotification.nativeElement.classList.add("hidden"),this.appNotification.nativeElement.classList.remove(et.k[this.notifcationType])}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(De.a))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-main-notification"]],viewQuery:function(g,u){var M;1&g&&t.Gf(Ze,7),2&g&&t.iGM(M=t.CRH())&&(u.appNotification=M.first)},decls:3,vars:1,consts:[[1,"main-notification","hidden"],["notification",""]],template:function(g,u){1&g&&(t.TgZ(0,"div",0,1),t._uU(2),t.qZA()),2&g&&(t.xp6(2),t.hij(" ",u.notificationMessage,"\n"))},styles:[".main-notification[_ngcontent-%COMP%]{width:100%;text-align:center;position:fixed;z-index:100;transition:all .2s ease;overflow:hidden;box-sizing:border-box;padding:10px;font-weight:500;top:64px}.main-notification.hidden[_ngcontent-%COMP%]{height:0;padding:0}.main-notification.showing[_ngcontent-%COMP%]{height:auto;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024}.main-notification.default[_ngcontent-%COMP%]{background-color:#448aff;color:#fff}.main-notification.success[_ngcontent-%COMP%]{background-color:#a7ffeb;color:#262626}.main-notification.error[_ngcontent-%COMP%]{background-color:#e57373;color:#000}"]}),b}(),Ve=n(60833);function pt(b,L){1&b&&t._UZ(0,"mat-progress-bar",2)}function kt(b,L){1&b&&t._UZ(0,"mat-progress-spinner",3)}var en=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.loadingService=g,this.isLoading=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.subscription=this.loadingService.loadingEvent.subscribe(function(M){u.isLoading=M})}},{key:"ngOnDestroy",value:function(){this.subscription.unsubscribe()}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(On.b))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-loading"]],decls:2,vars:2,consts:[["mode","buffer",4,"ngIf"],["mode","indeterminate",4,"ngIf"],["mode","buffer"],["mode","indeterminate"]],template:function(g,u){1&g&&(t.YNc(0,pt,1,0,"mat-progress-bar",0),t.YNc(1,kt,1,0,"mat-progress-spinner",1)),2&g&&(t.Q6J("ngIf",u.isLoading),t.xp6(1),t.Q6J("ngIf",u.isLoading))},directives:[Ee.O5,Ve.pW,St.Ou],styles:[".mat-progress-bar[_ngcontent-%COMP%]{z-index:1003;position:fixed;top:0;left:0;right:0}.mat-progress-spinner[_ngcontent-%COMP%]{z-index:1003;position:fixed;top:50%;left:calc(50% - 25px)}"]}),b}();function Zn(b,L){if(1&b&&(t.TgZ(0,"span",33),t._uU(1),t.qZA()),2&b){var g=t.oxw(2);t.Q6J("matTooltip",g.versionTooltipMessage),t.xp6(1),t.hij("Ver. ",g.version,"")}}var zt=function(L){return[L]};function un(b,L){if(1&b&&(t.TgZ(0,"a",13),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,zt,"/"+g.path)),t.xp6(1),t.hij(" ",g.display," ")}}function tn(b,L){if(1&b&&(t.TgZ(0,"a",36),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("href",g.externalPath,t.LSH),t.xp6(1),t.hij(" ",g.display," ")}}var ln=function(){return{}};function gn(b,L){if(1&b&&(t.TgZ(0,"a",42),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(3,zt,"/"+g.path))("queryParams",g.params||t.DdM(5,ln)),t.xp6(1),t.hij(" ",g.display," ")}}function An(b,L){if(1&b&&(t.TgZ(0,"a",16),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("href",t.VKq(2,zt,g.href),t.LSH),t.xp6(1),t.hij(" ",g.display," ")}}function Nn(b,L){if(1&b&&(t.TgZ(0,"a",16),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit,u=t.oxw(4);t.Q6J("href","mailto:"+u.contactEmail+"?Subject=Support request",t.LSH),t.xp6(1),t.hij(" ",g.display," ")}}function ai(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,gn,2,6,"a",40),t.YNc(2,An,2,4,"a",41),t.YNc(3,Nn,2,2,"a",41),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("ngIf",g.path),t.xp6(1),t.Q6J("ngIf",g.href),t.xp6(1),t.Q6J("ngIf","Email GSRS Support"===g.display)}}function gi(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",23),t.NdJ("click",function(){return t.CHM(g),t.oxw(4).importDialog()}),t._uU(1," Import Substance "),t.qZA()}}function Si(b,L){if(1&b&&(t.ynx(0),t.TgZ(1,"a",37),t._uU(2),t.qZA(),t.TgZ(3,"mat-menu",null,38),t.YNc(5,ai,4,3,"div",14),t.YNc(6,gi,2,0,"a",39),t.qZA(),t.BQk()),2&b){var g=t.MAs(4),u=t.oxw().$implicit;t.xp6(1),t.Q6J("matMenuTriggerFor",g),t.xp6(1),t.hij(" ",u.display," "),t.xp6(3),t.Q6J("ngForOf",u.children),t.xp6(1),t.Q6J("ngIf","Register"===u.display)}}function Bi(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,un,2,4,"a",34),t.YNc(2,tn,2,2,"a",35),t.YNc(3,Si,7,4,"ng-container",18),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("ngIf",g.path),t.xp6(1),t.Q6J("ngIf",g.externalPath),t.xp6(1),t.Q6J("ngIf",g.children)}}function Oa(b,L){1&b&&(t.TgZ(0,"a",43),t._uU(1," Admin Panel "),t.qZA())}function Ea(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",46),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).increaseMenuZindex()}),t.TgZ(1,"span",9),t._uU(2,"Browse Other"),t.qZA(),t._UZ(3,"mat-icon",47),t.qZA()}if(2&b){t.oxw();var u=t.MAs(3);t.Q6J("matMenuTriggerFor",u)}}function ea(b,L){1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",48),t._uU(2," Browse Applications "),t.qZA(),t._UZ(3,"mat-divider"),t.qZA())}function ja(b,L){1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",49),t._uU(2," Browse Products "),t.qZA(),t._UZ(3,"mat-divider"),t.qZA())}function tr(b,L){1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",50),t._uU(2," Browse Clinical Trials "),t.qZA(),t._UZ(3,"mat-divider"),t.qZA())}function da(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",36),t._uU(3," Browse Adverse Events "),t.qZA(),t.qZA()),2&b){var g=t.oxw(4);t.xp6(2),t.Q6J("href",g.adverseEventShinyHomepageURL,t.LSH)}}function Na(b,L){if(1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",51),t._uU(2," Browse Adverse Events "),t.qZA(),t.YNc(3,da,4,1,"div",18),t.qZA()),2&b){var g=t.oxw(3);t.xp6(3),t.Q6J("ngIf",!0===g.adverseEventShinyHomepageDisplay)}}function ta(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.YNc(1,Ea,4,1,"button",44),t.TgZ(2,"mat-menu",21,45),t.NdJ("closed",function(){return t.CHM(g),t.oxw(2).removeZindex()}),t.YNc(4,ea,4,0,"span",18),t.YNc(5,ja,4,0,"span",18),t.YNc(6,tr,4,0,"span",18),t.YNc(7,Na,4,1,"span",18),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(1),t.Q6J("ngIf",u.loadedComponents),t.xp6(3),t.Q6J("ngIf",u.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",u.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",u.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",u.loadedComponents.adverseevents)}}function fn(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",52),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).increaseMenuZindex()}),t.TgZ(1,"span",9),t._uU(2,"Register"),t.qZA(),t._UZ(3,"mat-icon",47),t.qZA()}if(2&b){t.oxw();var u=t.MAs(29);t.Q6J("matMenuTriggerFor",u)}}function yn(b,L){if(1&b&&(t.TgZ(0,"a",13),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,zt,"/"+g.path)),t.xp6(1),t.hij(" ",g.display," ")}}function Ct(b,L){if(1&b&&(t.TgZ(0,"a",36),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("href",g.externalPath,t.LSH),t.xp6(1),t.hij(" ",g.display," ")}}function Pe(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,yn,2,4,"a",34),t.YNc(2,Ct,2,2,"a",35),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("ngIf",g.path),t.xp6(1),t.Q6J("ngIf",g.externalPath)}}function It(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",53),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).routeToLogin()}),t._uU(1," Login "),t.qZA()}}function Jt(b,L){if(1&b&&(t.TgZ(0,"span",60),t._uU(1),t.qZA()),2&b){var g=t.oxw(3);t.s9C("matTooltip",g.auth.identifier),t.xp6(1),t.Oqu(g.auth.identifier)}}function vn(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",54),t.TgZ(1,"button",55),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).increaseMenuZindex()}),t._UZ(2,"mat-icon",56),t.qZA(),t.TgZ(3,"button",57),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).increaseMenuZindex()}),t._UZ(4,"mat-icon",58),t.qZA(),t._UZ(5,"br"),t.YNc(6,Jt,2,2,"span",59),t.qZA()}if(2&b){t.oxw();var u=t.MAs(40),M=t.oxw();t.xp6(1),t.Q6J("matMenuTriggerFor",u),t.xp6(2),t.Q6J("matMenuTriggerFor",u),t.xp6(3),t.Q6J("ngIf",M.auth&&M.auth.identifier)}}function Vn(b,L){1&b&&(t.TgZ(0,"a",61),t.TgZ(1,"span"),t._uU(2,"Admin Panel"),t.qZA(),t.qZA())}var ui=function(){return["/registrars"]};function ki(b,L){1&b&&(t.TgZ(0,"a",62),t.TgZ(1,"span"),t._uU(2,"Registrars"),t.qZA(),t.qZA()),2&b&&t.Q6J("routerLink",t.DdM(1,ui))}function Ii(b,L){1&b&&(t.TgZ(0,"a",65),t.TgZ(1,"span",9),t._uU(2,"Registrars"),t.qZA(),t.qZA()),2&b&&t.Q6J("routerLink",t.DdM(1,ui))}function ri(b,L){if(1&b&&(t.TgZ(0,"div",63),t.YNc(1,Ii,3,2,"a",64),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",g.canRegister)}}var Ci=function(){return["/advanced-search"]},Wi=function(){return["/browse-substance"]};function xa(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-toolbar",1),t.TgZ(1,"div",2),t.TgZ(2,"span",3),t.TgZ(3,"a",4),t._UZ(4,"img",5),t.qZA(),t.qZA(),t.YNc(5,Zn,2,2,"span",6),t.qZA(),t.TgZ(6,"span",7),t.TgZ(7,"button",8),t.NdJ("click",function(){return t.CHM(g),t.oxw().increaseMenuZindex()}),t.TgZ(8,"span",9),t._uU(9,"Menu \xa0"),t.qZA(),t._UZ(10,"mat-icon",10),t.qZA(),t.TgZ(11,"mat-menu",11,12),t.NdJ("closed",function(){return t.CHM(g),t.oxw().removeZindex()}),t.TgZ(13,"a",13),t._uU(14," Advanced Search "),t.qZA(),t.YNc(15,Bi,4,3,"div",14),t.YNc(16,Oa,2,0,"a",15),t.TgZ(17,"a",16),t._uU(18," Contact Us "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(19,"div"),t.TgZ(20,"button",17),t._uU(21,"Browse Substances"),t.qZA(),t.qZA(),t.YNc(22,ta,8,5,"div",18),t.TgZ(23,"div"),t.YNc(24,fn,4,1,"button",19),t.TgZ(25,"button",20),t._uU(26,"Advanced Search"),t.qZA(),t.qZA(),t.TgZ(27,"div"),t.TgZ(28,"mat-menu",21,22),t.NdJ("closed",function(){return t.CHM(g),t.oxw().removeZindex()}),t.YNc(30,Pe,3,2,"div",14),t.TgZ(31,"div"),t.TgZ(32,"a",23),t.NdJ("click",function(){return t.CHM(g),t.oxw().importDialog()}),t._uU(33," Import Substance "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t._UZ(34,"span",24),t.TgZ(35,"app-substance-text-search",25),t.NdJ("searchPerformed",function(re){return t.CHM(g),t.oxw().processSubstanceSearch(re)})("opened",function(){return t.CHM(g),t.oxw().increaseMenuZindex()})("closed",function(){return t.CHM(g),t.oxw().removeZindex()}),t.qZA(),t.TgZ(36,"div"),t.YNc(37,It,2,0,"button",26),t.YNc(38,vn,7,3,"div",27),t.TgZ(39,"mat-menu",21,28),t.NdJ("closed",function(){return t.CHM(g),t.oxw().removeZindex()}),t.TgZ(41,"a",23),t.NdJ("click",function(){return t.CHM(g),t.oxw().openProfile()}),t.TgZ(42,"span"),t._uU(43,"Profile"),t.qZA(),t.qZA(),t.TgZ(44,"a",29),t.TgZ(45,"span"),t._uU(46,"User Downloads"),t.qZA(),t.qZA(),t.TgZ(47,"a",23),t.NdJ("click",function(){return t.CHM(g),t.oxw().viewDrafts()}),t.TgZ(48,"span"),t._uU(49,"Saved Edit Drafts"),t.qZA(),t.qZA(),t.YNc(50,Vn,3,0,"a",30),t.YNc(51,ki,3,2,"a",31),t.TgZ(52,"button",23),t.NdJ("click",function(){return t.CHM(g),t.oxw().logout()}),t.TgZ(53,"span"),t._uU(54,"Logout"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.YNc(55,ri,2,1,"div",32),t.qZA()}if(2&b){var u=t.MAs(12),M=t.oxw();t.xp6(4),t.Q6J("src",M.logoSrcPath,t.LSH),t.xp6(1),t.Q6J("ngIf",M.version&&""!==M.version),t.xp6(2),t.Q6J("matMenuTriggerFor",u),t.xp6(6),t.Q6J("routerLink",t.DdM(18,Ci)),t.xp6(2),t.Q6J("ngForOf",M.navItems),t.xp6(1),t.Q6J("ngIf",M.isAdmin),t.xp6(1),t.Q6J("href","mailto:"+M.contactEmail,t.LSH),t.xp6(3),t.Q6J("routerLink",t.DdM(19,Wi)),t.xp6(2),t.Q6J("ngIf",M.loadedComponents),t.xp6(2),t.Q6J("ngIf",M.canRegister),t.xp6(1),t.Q6J("routerLink",t.DdM(20,Ci)),t.xp6(5),t.Q6J("ngForOf",M.registerNav),t.xp6(5),t.Q6J("searchValue",M.searchValue),t.xp6(2),t.Q6J("ngIf",!M.auth&&"login"!==M.mainPathSegment),t.xp6(1),t.Q6J("ngIf",M.auth),t.xp6(12),t.Q6J("ngIf",M.isAdmin),t.xp6(1),t.Q6J("ngIf",M.canRegister),t.xp6(4),t.Q6J("ngIf",M.auth&&M.auth.identifier)}}var oa=function(){var b=function(){function L(g,u,M,U,re,lt,Wt,nn,bn,Bn,Xn){var oi=this;(0,p.Z)(this,L),this.router=g,this.authService=u,this.configService=M,this.activatedRoute=U,this.overlayContainerService=re,this.loadingService=lt,this.bottomSheet=Wt,this.dialog=nn,this.substanceTextSearchService=bn,this.utilsService=Bn,this.wildCardService=Xn,this.mainPathSegment="",this.isAdmin=!1,this.versionTooltipMessage="",this.canRegister=!1,this.adverseEventShinyHomepageDisplay=!1,this.subscriptions=[],this.classicLinkQueryParams={},this.showHeaderBar="true",this.classicLinkPath=this.configService.environment.clasicBaseHref,this.classicLinkQueryParamsString="",this.contactEmail=this.configService.configData.contactEmail,this.clasicBaseHref=this.configService.environment.clasicBaseHref,this.navItems=this.configService.configData.navItems,this.wildCardService.wildCardObservable.subscribe(function(pi){oi.wildCardText=pi})}return(0,e.Z)(L,[{key:"onKeyUp",value:function(u){var U,M="",nn=document.activeElement;if(null!=nn){var bn=nn?nn.tagName.toLowerCase():null;"textarea"===bn||"input"===bn&&/^(?:text|search|password|tel|url)$/i.test(nn.type)&&"number"==typeof nn.selectionStart?M=nn.value.slice(nn.selectionStart,nn.selectionEnd):window.getSelection&&((U=window.getSelection()).rangeCount>0&&U.getRangeAt(0),M=U.toString()),clearTimeout(this.bottomSheetOpenTimer),M&&M!==this.selectedText&&(this.selectedText=M)}}},{key:"ngOnInit",value:function(){var u=this;this.showHeaderBar=this.activatedRoute.snapshot.queryParams.header||"true",this.loadedComponents=this.configService.configData.loadedComponents||null;var M=!1;this.loadedComponents&&((this.loadedComponents.applications||this.loadedComponents.clinicaltrials||this.loadedComponents.adverseevents||this.loadedComponents.impurities||this.loadedComponents.products)&&(M=!0),M||(this.loadedComponents=null));var U=this.authService.hasRolesAsync("Admin").subscribe(function(ii){u.isAdmin=ii});this.subscriptions.push(U);var re=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater","DataEntry","SuperDataEntry").subscribe(function(ii){u.canRegister=ii});if(this.subscriptions.push(re),this.baseDomain=this.configService.configData.apiUrlDomain,this.utilsService.getBuildInfo().pipe((0,Y.q)(1)).subscribe(function(ii){u.version=u.configService.configData.version||ii.version,u.versionTooltipMessage="V".concat(u.version),u.versionTooltipMessage+=" built on ".concat(Re(ii.buildTime).utc().format("ddd MMM D YYYY HH:mm:SS z"))}),this.navItems.forEach(function(ii){"Register"===ii.display&&(u.registerNav=ii.children)}),this.loadedComponents)for(var lt=this.navItems.length-1;lt>=0;lt--){if(this.navItems[lt].children)for(var Wt=this.navItems[lt].children.length-1;Wt>=0;Wt--)this.navItems[lt].children[Wt].component&&(this.loadedComponents[this.navItems[lt].children[Wt].component]||this.navItems[lt].children.splice(Wt,1));this.navItems[lt].component&&(this.loadedComponents[this.navItems[lt].component]||this.navItems.splice(lt,1))}this.overlayContainer=this.overlayContainerService.getContainerElement();var nn=this.router.routerState.snapshot.url.split("?")[0];this.setClassicLinkPath(nn.substring(1)),this.activatedRoute.snapshot.queryParamMap.has("search")&&(this.searchValue=this.activatedRoute.snapshot.queryParamMap.get("search"),this.setClassicLinkQueryParams(this.activatedRoute.snapshot.queryParamMap));var bn=this.activatedRoute.queryParamMap.subscribe(function(ii){u.searchValue=ii.get("search"),u.setClassicLinkQueryParams(ii)});this.subscriptions.push(bn);var Bn=this.authService.checkAuth().subscribe(function(ii){},function(ii){403===ii.status&&"/login"!==u.router.url.split("?")[0]&&"/unauthorized"!==u.router.url.split("?")[0]&&(u.loadingService.setLoading(!1),u.router.navigate(["/unauthorized"]))});this.subscriptions.push(Bn);var Xn=this.authService.getAuth().subscribe(function(ii){u.auth=ii},function(ii){});this.subscriptions.push(Xn),this.environment=this.configService.environment,this.appId=this.environment.appId,this.logoSrcPath="".concat(this.environment.baseHref||"","assets/images/gsrs-logo.svg");var oi=this.router.events.subscribe(function(ii){ii instanceof h.Av&&(u.mainPathSegment=u.getMainPathSegmentFromUrl(ii.url.substring(1)),nn=ii.url.split("?")[0],u.setClassicLinkPath(nn.substring(1))),ii instanceof h.OD&&(u.classicLinkQueryParams={},u.loadingService.resetLoading())});this.subscriptions.push(oi),this.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},this.mainPathSegment=this.getMainPathSegmentFromUrl(this.router.routerState.snapshot.url.substring(1)),this.substanceTextSearchService.registerSearchComponent("main-substance-search");var pi=this.substanceTextSearchService.setSearchComponentValueEvent("main-substance-search").subscribe(function(ii){u.searchValue=ii});this.subscriptions.push(pi)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(u){u.unsubscribe()}),clearTimeout(this.bottomSheetOpenTimer),clearTimeout(this.bottomSheetCloseTimer)}},{key:"getMainPathSegmentFromUrl",value:function(u){return u.split("?")[0].split("/")[0]}},{key:"routeToLogin",value:function(){this.router.navigate(["/login"],{queryParams:{path:this.router.url}})}},{key:"processSubstanceSearch",value:function(u){this.wildCardService.getTopSearchBoxText(u),this.navigateToSearchResults(u)}},{key:"navigateToSearchResults",value:function(u){this.router.navigate(["/browse-substance"],{queryParams:u?{search:u}:null})}},{key:"increaseMenuZindex",value:function(){this.overlayContainer.style.zIndex="1001"}},{key:"removeZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"openSearchBottomSheet",value:function(u){var M=this;return new A.y(function(U){if(u){clearTimeout(M.bottomSheetCloseTimer),null!=M.bottomSheetRef&&(M.bottomSheetRef.dismiss(),M.bottomSheetRef=null),M.bottomSheetRef=M.bottomSheet.open(Z,{data:{searchTerm:u},hasBackdrop:!1,closeOnNavigation:!0});var re=M.bottomSheetRef.afterOpened().subscribe(function(){U.next(),re.unsubscribe()});M.bottomSheetCloseTimer=setTimeout(function(){null!=M.bottomSheetRef&&(M.bottomSheetRef.dismiss(),M.bottomSheetRef=null,U.complete())},5e3);var lt=M.bottomSheetRef.afterDismissed().subscribe(function(){clearTimeout(M.bottomSheetCloseTimer),M.bottomSheetRef=null,U.complete(),lt.unsubscribe()})}else U.error(),U.complete()})}},{key:"setClassicLinkPath",value:function(u){var M=this,U=this.clasicBaseHref,lt=u.split("/"),Wt="";lt.forEach(function(nn,bn){bn<2?Wt+="/".concat(nn):M.setClassicLinkQueryParams(null,{kind:nn})}),this.classicLinkPath="".concat(U).concat({"/home":"","/browse-substance":"substances","/structure-search":"structure","/sequence-search":"sequence","/substances/register":"wizard","/admin":"admin"}[Wt]||"")}},{key:"setClassicLinkQueryParams",value:function(u,M){var U=this;if(null!=u){var re={};re.q=u.get("search")||u.get("structure_search")||u.get("sequence_search")||u.get("structure"),u.get("sequence_search")?(re.type="sequence",re.identity=u.get("cutoff"),re.identityType=u.get("type")):(u.get("structure_search")||u.get("structure"))&&(re.cutoff=u.get("cutoff"),re.type=u.get("type")),re.id=u.get("sequence"),re.seqType=u.get("seq_type"),Object.keys(re).forEach(function(Wt){null!=re[Wt]&&(U.classicLinkQueryParams[Wt]=re[Wt])})}null!=M&&Object.keys(M).forEach(function(Wt){U.classicLinkQueryParams[Wt]=M[Wt]});var lt="";Object.keys(this.classicLinkQueryParams).forEach(function(Wt,nn){lt+="".concat(nn?"&":"?").concat(Wt,"=").concat(U.classicLinkQueryParams[Wt])}),this.classicLinkQueryParamsString=lt}},{key:"openProfile",value:function(){var u=this,M=this.dialog.open(Bt,{data:{},width:"800px"});this.overlayContainer.style.zIndex="1002",M.afterClosed().pipe((0,Y.q)(1)).subscribe(function(re){u.overlayContainer.style.zIndex=null})}},{key:"importDialog",value:function(){var u=this,M=this.dialog.open(wn,{width:"650px",autoFocus:!1});this.overlayContainer.style.zIndex="1002",M.afterClosed().pipe((0,Y.q)(1)).subscribe(function(re){re&&(u.overlayContainer.style.zIndex=null,u.router.onSameUrlNavigation="reload",u.router.navigateByUrl("/substances/register?action=import",{state:{record:re}}))})}},{key:"logout",value:function(){var u=this;this.authService.logout(),setTimeout(function(){u.router.navigate(["/home"])},1200)}},{key:"viewDrafts",value:function(){var u=this,M=this.dialog.open(bt,{maxHeight:"85%",width:"70%",data:{view:"user"}});this.overlayContainer.style.zIndex="1002",M.afterClosed().subscribe(function(U){u.overlayContainer.style.zIndex=null,U&&(u.loadingService.setLoading(!0),U.uuid&&"register"!=U.uuid?u.router.navigateByUrl("/substances/"+U.uuid+"/edit?action=import&source=draft",{state:{record:U.substance}}):setTimeout(function(){u.router.onSameUrlNavigation="reload",u.router.navigateByUrl("/substances/register/"+U.substance.substanceClass+"?action=import",{state:{record:U.substance}})},500))})}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.F0),t.Y36(T.e),t.Y36(B.E),t.Y36(h.gz),t.Y36(Tn.Xj),t.Y36(On.b),t.Y36(I.ch),t.Y36(ne.uw),t.Y36(si),t.Y36(ve.FW),t.Y36(fi))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-base"]],hostBindings:function(g,u){1&g&&t.NdJ("mouseup",function(U){return u.onKeyUp(U)},!1,t.evT)("keyup",function(U){return u.onKeyUp(U)},!1,t.evT)},decls:4,vars:1,consts:[["class","mat-elevation-z3","color","primary",4,"ngIf"],["color","primary",1,"mat-elevation-z3"],[1,"logo-container"],[1,"logo"],["routerLink","/home","aria-label","home"],["alt","gsrs-logo",3,"src"],["class","version","matTooltipPosition","below",3,"matTooltip",4,"ngIf"],[1,"nav-small"],["mat-button","","mat-primary-button","","aria-label","main menu",1,"top-button",2,"color","white","padding-top","10px","padding-bottom","10px",3,"matMenuTriggerFor","click"],[2,"font-size","16px"],["svgIcon","menu"],[1,"reg-a",3,"closed"],["nav","matMenu"],["mat-menu-item","",3,"routerLink"],[4,"ngFor","ngForOf"],["mat-menu-item","","routerLink","/admin",4,"ngIf"],["mat-menu-item","",3,"href"],["mat-button","","mat-primary-button","","aria-label","browse substances",1,"menu-button","extra-item",2,"font-size","16px","color","white","padding-right","10px","margin-right","15px","padding-top","10px","padding-bottom","10px",3,"routerLink"],[4,"ngIf"],["class","top-button extra-item","mat-button","","mat-primary-button","","style","color:white;font-size:16px;padding-top:10px; padding-bottom:10px;","aria-label","main menu",3,"matMenuTriggerFor","click",4,"ngIf"],["mat-button","","mat-primary-button","","aria-label","advanced search",1,"menu-button","extra-item",2,"font-size","16px","color","white","padding-right","10px","margin-right","15px","padding-top","10px","padding-bottom","10px",3,"routerLink"],[3,"closed"],["reg","matMenu"],["mat-menu-item","",3,"click"],[1,"middle-fill"],["placeholder","Search Substances","eventCategory","topSearch",1,"top-search",3,"searchValue","searchPerformed","opened","closed"],["mat-button","","class","login-link",3,"click",4,"ngIf"],["class","logged-in",4,"ngIf"],["accountMenu","matMenu"],["mat-menu-item","","routerLink","/user-downloads"],["routerLink","/admin","mat-menu-item","",4,"ngIf"],["class","add-at-low-res","mat-menu-item","",3,"routerLink",4,"ngIf"],["class","classic-view-container",4,"ngIf"],["matTooltipPosition","below",1,"version",3,"matTooltip"],["mat-menu-item","",3,"routerLink",4,"ngIf"],["mat-menu-item","","target","_blank",3,"href",4,"ngIf"],["mat-menu-item","","target","_blank",3,"href"],["mat-menu-item","",3,"matMenuTriggerFor"],["childrenMenu","matMenu"],["mat-menu-item","",3,"click",4,"ngIf"],["mat-menu-item","",3,"routerLink","queryParams",4,"ngIf"],["mat-menu-item","",3,"href",4,"ngIf"],["mat-menu-item","",3,"routerLink","queryParams"],["mat-menu-item","","routerLink","/admin"],["class","top-button extra-browse","mat-button","","mat-primary-button","","style","color:white;font-size:16px;padding-top:10px; padding-bottom:10px;","aria-label","main menu",3,"matMenuTriggerFor","click",4,"ngIf"],["browse","matMenu"],["mat-button","","mat-primary-button","","aria-label","main menu",1,"top-button","extra-browse",2,"color","white","font-size","16px","padding-top","10px","padding-bottom","10px",3,"matMenuTriggerFor","click"],["svgIcon","chevron_down"],["mat-menu-item","","routerLink","/browse-applications"],["mat-menu-item","","routerLink","/browse-products"],["mat-menu-item","","routerLink","/browse-clinical-trials"],["mat-menu-item","","routerLink","/browse-adverse-events"],["mat-button","","mat-primary-button","","aria-label","main menu",1,"top-button","extra-item",2,"color","white","font-size","16px","padding-top","10px","padding-bottom","10px",3,"matMenuTriggerFor","click"],["mat-button","",1,"login-link",3,"click"],[1,"logged-in"],["aria-label","User Account","mat-icon-button","",1,"user-button","main-button",3,"matMenuTriggerFor","click"],["svgIcon","account_circle",1,"user-icon"],["aria-label","User Account dropdown","mat-icon-button","",1,"user-button","arrow-button","test-class",3,"matMenuTriggerFor","click"],["svgIcon","chevron_down",1,"user-icon","icon-two"],["class","user",3,"matTooltip",4,"ngIf"],[1,"user",3,"matTooltip"],["routerLink","/admin","mat-menu-item",""],["mat-menu-item","",1,"add-at-low-res",3,"routerLink"],[1,"classic-view-container"],["class","top-button hide-at-low-res","mat-button","","mat-primary-button","","style","color:white;font-size:16px;padding-top:10px; padding-bottom:10px;",3,"routerLink",4,"ngIf"],["mat-button","","mat-primary-button","",1,"top-button","hide-at-low-res",2,"color","white","font-size","16px","padding-top","10px","padding-bottom","10px",3,"routerLink"]],template:function(g,u){1&g&&(t.YNc(0,xa,56,21,"mat-toolbar",0),t._UZ(1,"app-main-notification"),t._UZ(2,"app-loading"),t._UZ(3,"router-outlet")),2&g&&t.Q6J("ngIf","true"===u.showHeaderBar)},directives:[Ee.O5,rn.Ye,h.yS,Ie.gM,v.lW,sn.p6,j.Hw,sn.VK,sn.OP,Ee.sg,h.rH,jt.d,Ue.e,v.zs,Je,en,h.lC],styles:[".version{color:#182c4d;font-size:10pt;line-height:10px;text-align:right;padding-top:4px;margin-right:-5px;margin-bottom:-4px}.logo-container{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-width:160px;margin-right:20px}.tooltiptest{z-index:9999!important;background:#b71c1c}.user{font-size:12px}.arrow-button{margin-left:-13px!important;height:25px!important;width:25px!important}.top-button{padding-top:10px;padding-bottom:10px}.user-button{margin-bottom:-5px}.user-button ::ng-deep mat-icon{height:30px;width:30px;margin-bottom:-10px}.user-button ::ng-deep svg{height:30px;width:30px;margin-bottom:-10px}.user-button mat-icon{height:30px;width:30px;margin-bottom:-10px}.user-button svg{height:30px;width:30px;margin-bottom:-10px}.icon-two{height:24px!important;margin-left:4px;width:24px!important}.icon-two svg{height:25px!important;width:25px!important}:host ::ng-deep .mat-icon{height:30px!important;width:30px!important;margin-bottom:-10px!important}.mat-icon .user-icon{height:30px;width:30px;margin-bottom:-10px}.logged-in{margin:auto;text-align:center;max-width:90px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.logged-in .mat-icon,.logged-in user-icon{height:30px;width:30px;margin-bottom:-10px;line-height:unset}.logged-in ::ng-deep svg{height:30px;width:30px;margin-bottom:-10px}.mat-toolbar{position:fixed;top:0;z-index:1001}.logo{height:35px;margin-right:20px}.logo img{height:100%;width:auto}.nav-big .nav-item{padding:0 5px}.nav-big .nav-item>a{font-size:16px;color:#e6e6e6;padding-bottom:7px;transition:all .15s linear;text-decoration:none;outline:none}.nav-big .nav-item>a:hover,.nav-big .nav-item>a.active{color:#fff;cursor:pointer;padding-bottom:5px;border-bottom:2px solid white;text-decoration:none}.nav-small{padding-right:10px}.nav-small .mat-icon-button{width:50px;height:50px}.nav-small .mat-icon{width:40px;height:40px}.login-link{color:#fff;font-size:16px;text-decoration:none}.top-search{-ms-flex-positive:1;flex-grow:1;max-width:600px}.top-search ::ng-deep .mat-form-field .mat-form-field-label{font-size:16px;top:1.98125em}::ng-deep .transparent-background{background-color:transparent}.classic-view-container{padding-left:15px}.classic-view-container ::ng-deep .mat-raised-button{color:#296ca3}@media (min-width: 990px){.top-search{min-width:500px}.menu-button :hover{background-color:#4793d1!important}}.extra-item{display:inline-block}@media (max-width: 1500px){.extra-browse{display:none!important}}@media (max-width: 1350px){.extra-item{display:none!important}}@media (max-width: 1610px){.add-at-low-res{display:inline!important}.hide-at-low-res{display:none!important}}@media (min-width: 1610px){.add-at-low-res{display:none!important}.hide-at-low-res{display:inline-block}}@media (max-width: 1650px){.extra-item-2{display:none!important}}\n"],encapsulation:2}),b}(),Yi=n(24874),sa=n(53141),Fi=n(44250),va=n(27299),Za=n(7216),Qt=n(11961),Ot=n(16531),Xt=n(26131),Dn=["matSideNavInstance"];function Hn(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",80),t._UZ(3,"mat-icon",13),t._uU(4," Browse Applications "),t.qZA(),t.qZA())}function Gn(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",81),t._UZ(3,"mat-icon",13),t._uU(4," Browse Products "),t.qZA(),t.qZA())}function vi(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",82),t._UZ(3,"mat-icon",13),t._uU(4," Browse Clinical Trials "),t.qZA(),t.qZA())}function Vi(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",83),t._UZ(3,"mat-icon",13),t._uU(4," Browse Adverse Events "),t.qZA(),t._uU(5,"Other "),t.qZA())}function Zi(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",84),t._UZ(3,"mat-icon",13),t._uU(4," Browse Adverse Events "),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(2),t.Q6J("href",g.adverseEventShinyHomepageURL,t.LSH)}}function Ai(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Vi,6,0,"span",79),t._uU(2,"Other "),t.YNc(3,Zi,5,1,"div",79),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!g.adverseEventShinyHomepageDisplay),t.xp6(2),t.Q6J("ngIf",!0===g.adverseEventShOtherinyHomepageDisplay)}}function Ja(b,L){if(1&b&&(t.TgZ(0,"mat-expansion-panel",10),t.TgZ(1,"mat-expansion-panel-header"),t.TgZ(2,"mat-panel-title",11),t._uU(3," Other "),t.qZA(),t.qZA(),t.TgZ(4,"mat-nav-list"),t.TgZ(5,"span"),t.YNc(6,Hn,5,0,"span",79),t.YNc(7,Gn,5,0,"span",79),t.YNc(8,vi,5,0,"span",79),t.YNc(9,Ai,4,2,"span",79),t.qZA(),t.qZA(),t.GkF(10),t.qZA()),2&b){var g=t.oxw();t.Q6J("expanded",!1),t.xp6(6),t.Q6J("ngIf",g.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",g.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",g.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",g.loadedComponents.adverseevents)}}function ao(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",86),t._UZ(3,"mat-icon",22),t._uU(4," Product "),t.qZA(),t.qZA())}function za(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",87),t._UZ(3,"mat-icon",22),t._uU(4," Application "),t.qZA(),t.qZA())}function fr(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",88),t._UZ(3,"mat-icon",22),t._uU(4," Impurities "),t.qZA(),t.qZA())}function Or(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,ao,5,0,"span",79),t.YNc(2,za,5,0,"span",79),t.YNc(3,fr,5,0,"span",79),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",g.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",g.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",g.loadedComponents.impurities)}}function Pr(b,L){if(1&b&&(t.TgZ(0,"mat-expansion-panel",10),t.TgZ(1,"mat-expansion-panel-header"),t.TgZ(2,"mat-panel-title",11),t._uU(3," Register Other "),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-nav-list",85),t.YNc(6,Or,4,3,"span",79),t.qZA(),t.qZA(),t.GkF(7),t.qZA()),2&b){var g=t.oxw();t.Q6J("expanded",!1),t.xp6(6),t.Q6J("ngIf",g.loadedComponents)}}function Dr(b,L){if(1&b&&(t.TgZ(0,"mat-card",89),t._UZ(1,"div",90),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("innerHTML",g.bannerMessage,t.oJD)}}function Ga(b,L){1&b&&(t.TgZ(0,"div",47),t.TgZ(1,"a",91),t._uU(2,"Browse Applications"),t.qZA(),t.qZA())}function Rr(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",92),t.NdJ("click",function(){var re=t.CHM(g).$implicit;return t.oxw().routeToCustom(re)}),t.TgZ(1,"span",93),t.TgZ(2,"div",94),t._uU(3),t.qZA(),t.TgZ(4,"div",95),t._uU(5),t.ALo(6,"number"),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(3),t.hij(" ",u.display," "),t.xp6(2),t.hij(" ",t.Dn7(6,2,u.total,"1.0","en-US")," ")}}function Qo(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card",96),t.TgZ(1,"h3",65),t.TgZ(2,"a",71),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(),re=t.MAs(148);return U.openModal(re)}),t._uU(3,"GSRSFind Excel tools "),t._UZ(4,"mat-icon",97),t.qZA(),t.qZA(),t.TgZ(5,"div",67),t._UZ(6,"img",98),t.qZA(),t.TgZ(7,"div",69),t._uU(8," GSRSFind is an add-in for Microsoft Excel that gives a user access to data in GSRS for both search/browse and creation/modification purposes. (Note: write access requires valid credentials!) GSRSFind can augment an existing spreadsheet with data from GSRS. For example, you can add chemical structures to a column of names or identifiers. "),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(6),t.MGl("src","",u.imageLoc,"xlsx.png",t.LSH)}}function fo(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card",96),t.TgZ(1,"h3",65),t.TgZ(2,"a",71),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(),re=t.MAs(148);return U.openModal(re)}),t._uU(3),t.qZA(),t.qZA(),t.TgZ(4,"div",67),t._UZ(5,"img",99),t.qZA(),t._UZ(6,"div",100),t.qZA()}if(2&b){var u=t.oxw();t.xp6(3),t.Oqu(u.excelCard.title?u.excelCard.title:"no tile"),t.xp6(2),t.hYB("src","",u.imageLoc,"",u.excelCard.imageFile,"",t.LSH),t.xp6(1),t.Q6J("innerHtml",u.excelCard.description,t.oJD)}}function eo(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card",64),t.TgZ(1,"h3",65),t.TgZ(2,"a",71),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(),re=t.MAs(154);return U.openModal(re)}),t._uU(3,"GSRS User Guide"),t.qZA(),t.qZA(),t.TgZ(4,"div",67),t._UZ(5,"img",101),t.qZA(),t._UZ(6,"div",100),t.qZA()}if(2&b){var u=t.oxw();t.xp6(5),t.hYB("src","",u.imageLoc,"",u.guideCard.imageFile,"",t.LSH),t.xp6(1),t.Q6J("innerHtml",u.guideCard.description,t.oJD)}}function Wo(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card",64),t.TgZ(1,"h3",65),t.TgZ(2,"a",71),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(),re=t.MAs(154);return U.openModal(re)}),t._uU(3,"GSRS User Guide"),t.qZA(),t.qZA(),t.TgZ(4,"div",67),t._UZ(5,"img",102),t.qZA(),t.TgZ(6,"div",69),t._uU(7," The GSRS user guide is comprehensive set of instructions for searching and registering new substances of all types in GSRS. "),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(5),t.MGl("src","",u.imageLoc,"guide.png",t.LSH)}}function ya(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card",70),t.TgZ(1,"h3",65),t.TgZ(2,"a",71),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(),re=t.MAs(152);return U.openModal(re)}),t._uU(3,"GSRS Data Dictionary"),t.qZA(),t.qZA(),t.TgZ(4,"div",67),t._UZ(5,"img",103),t.qZA(),t._UZ(6,"div",100),t.qZA()}if(2&b){var u=t.oxw();t.xp6(5),t.hYB("src","",u.imageLoc,"",u.dictionaryCard.imageFile,"",t.LSH),t.xp6(1),t.Q6J("innerHtml",u.dictionaryCard.description,t.oJD)}}function pa(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card",70),t.TgZ(1,"h3",65),t.TgZ(2,"a",104),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(),re=t.MAs(152);return U.openModal(re)}),t._uU(3,"GSRS Data Dictionary"),t.qZA(),t.qZA(),t.TgZ(4,"div",67),t._UZ(5,"img",105),t.qZA(),t.TgZ(6,"div",69),t._uU(7," The GSRS Data Dictionary is a comprehensive spreadsheet of all properties of the substance object used by GSRS. You will find descriptions, relative paths, data types, and more for every property present in the GSRS substance model. "),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(5),t.MGl("src","",u.imageLoc,"dictionary.png",t.LSH)}}function Ur(b,L){if(1&b&&(t.TgZ(0,"div",106),t.TgZ(1,"a",107),t._uU(2),t.qZA(),t.qZA(),t.TgZ(3,"div",108),t._UZ(4,"span",109),t.TgZ(5,"button",110),t._uU(6,"Close"),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.s9C("href",g.excelCard.href,t.LSH),t.xp6(1),t.Oqu(g.excelCard.templateDescription)}}function yr(b,L){1&b&&(t.TgZ(0,"div",106),t.TgZ(1,"a",111),t._uU(2,"Click to download GSRS JSON schema.json"),t.qZA(),t.qZA(),t.TgZ(3,"div",108),t._UZ(4,"span",109),t.TgZ(5,"button",110),t._uU(6,"Close"),t.qZA(),t.qZA())}function mo(b,L){if(1&b&&(t.TgZ(0,"div",106),t.TgZ(1,"a",107),t._uU(2),t.qZA(),t.qZA(),t.TgZ(3,"div",108),t._UZ(4,"span",109),t.TgZ(5,"button",110),t._uU(6,"Close"),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.s9C("href",g.dictionaryCard.href,t.LSH),t.xp6(1),t.Oqu(g.dictionaryCard?g.dictionaryCard.templateDescription:"click to download GSRS Data Dictionary.xlsx")}}function mr(b,L){if(1&b&&(t.TgZ(0,"div",106),t.TgZ(1,"a",107),t._uU(2),t.qZA(),t.qZA(),t.TgZ(3,"div",108),t._UZ(4,"span",109),t.TgZ(5,"button",110),t._uU(6,"Close"),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.s9C("href",g.guideCard.href,t.LSH),t.xp6(1),t.Oqu(g.guideCard?g.guideCard.templateDescription:"click to download GSRS User Guide.docx")}}var ro=function(){var b=function(){function L(g,u,M,U,re,lt,Wt,nn){var bn=this;(0,p.Z)(this,L),this.gaService=g,this.configService=u,this.authService=M,this.substanceService=U,this.router=re,this.dialog=lt,this.overlayContainerService=Wt,this.utilsService=nn,this.isAuthenticated=!1,this.isClosedWelcomeMessage=!0,this.isCollapsed=!0,this.hasBackdrop=!1,this.adverseEventShinyHomepageDisplay=!1,this.processResponsiveness=function(){setTimeout(function(){window&&(window.innerWidth<1100?(bn.matSideNav.close(),bn.isCollapsed=!0,bn.hasBackdrop=!0):(bn.matSideNav.open(),bn.hasBackdrop=!1))})},this.contactEmail=this.configService.configData.contactEmail,this.clasicBaseHref=this.configService.environment.clasicBaseHref}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.environment=this.configService.environment,this.application="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_application.png"),this.browseAll="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_browseall.png"),this.chemicon="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_registersubstance.png"),this.appId=this.configService.environment.appId,this.bannerMessage=this.configService.configData.bannerMessage||null,this.loadedComponents=this.configService.configData.loadedComponents||null,this.configService.configData.usefulLinks&&this.configService.configData.usefulLinks.forEach(function(U){"GSRSFind Excel tools"===U.title&&(u.excelCard=U),"GSRS User Guide"===U.title&&(u.guideCard=U),"GSRS Data Dictionary"===U.title&&(u.dictionaryCard=U)});var M=!1;this.loadedComponents&&((this.loadedComponents.applications||this.loadedComponents.clinicaltrials||this.loadedComponents.adverseevents||this.loadedComponents.impurities||this.loadedComponents.products)&&(M=!0),M||(this.loadedComponents=null)),this.imageLoc="".concat(this.environment.baseHref||"","assets/images/home/"),this.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry","Admin").subscribe(function(U){u.isAuthenticated=U}),this.gaService.sendPageView("Home"),this.baseDomain=this.configService.configData.apiUrlDomain,this.customLinks=this.configService.configData.homeDynamicLinks||[],this.customLinks.forEach(function(U){U.total=0,"".concat(U.facetName,":").concat(U.facetValue),u.substanceService.searchSingleFacetSimpleCount(U.facetName,U.facetValue).pipe((0,Y.q)(1)).subscribe(function(lt){U.total=lt?Number(lt.total):0})}),this.substanceService.getRecordCount().subscribe(function(U){u.total=U}),this.isClosedWelcomeMessage=!1,this.getAdverseEventShinyConfig(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var u=this;this.processResponsiveness(),this.matSideNav.openedStart.subscribe(function(){u.utilsService.handleMatSidenavOpen(1100)}),this.matSideNav.closedStart.subscribe(function(){u.utilsService.handleMatSidenavClose()})}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substancesFiltering","button:sidenav","open"),this.matSideNav.open()}},{key:"routeToCustom",value:function(u){this.router.navigate(["/browse-substance"],{queryParams:{facets:u.facetName+"*"+u.facetValue+".true"}})}},{key:"closeWelcomeMessage",value:function(){this.isClosedWelcomeMessage=!0,localStorage.setItem("isClosedWelcomeMessage",this.isClosedWelcomeMessage.toString())}},{key:"browseSubstances",value:function(){this.router.navigate(["/browse-substance"])}},{key:"openModal",value:function(u){var M=this,U=this.dialog.open(u,{height:"200px",width:"400px"});this.overlayContainer.style.zIndex="1002",U.afterClosed().subscribe(function(re){M.overlayContainer.style.zIndex=null})}},{key:"increaseMenuZindex",value:function(){this.overlayContainer.style.zIndex="1001"}},{key:"removeZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"processSubstanceSearch",value:function(u){this.navigateToSearchResults(u)}},{key:"navigateToSearchResults",value:function(u){this.router.navigate(["/browse-substance"],{queryParams:u?{search:u}:null})}},{key:"getAdverseEventShinyConfig",value:function(){this.configService.configData&&(this.configService.configData.adverseEventShinyHomepageDisplay&&null!==this.configService.configData.adverseEventShinyHomepageDisplay&&(this.adverseEventShinyHomepageDisplay=JSON.parse(this.configService.configData.adverseEventShinyHomepageDisplay)),this.configService.configData.adverseEventShinyHomepageURL&&null!==this.configService.configData.adverseEventShinyHomepageURL&&(this.adverseEventShinyHomepageURL=this.configService.configData.adverseEventShinyHomepageURL))}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(Yi.$),t.Y36(sa.E),t.Y36(Fi.e),t.Y36(va.d),t.Y36(h.F0),t.Y36(ne.uw),t.Y36(Tn.Xj),t.Y36(ve.FW))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-home"]],viewQuery:function(g,u){var M;1&g&&t.Gf(Dn,7),2&g&&t.iGM(M=t.CRH())&&(u.matSideNav=M.first)},hostBindings:function(g,u){1&g&&t.NdJ("resize",function(U){return u.onResize(U)},!1,t.Jf7)},decls:155,vars:30,consts:[[1,"main-container"],[3,"hasBackdrop"],["mode","side","opened","true",3,"disableClose"],["matSideNavInstance",""],[1,"side-bar"],[1,"register-main"],[1,"left-search"],[1,"side-header",2,"margin-bottom","10px"],[1,"quick-links"],["multi","true"],[3,"expanded"],[1,"panel-header"],["mat-list-item","","routerLink","/browse-substance"],["matListIcon","","svgIcon","glasses"],["mat-list-item","","routerLink","/structure-search"],["matListIcon","","svgIcon","search"],["mat-list-item","","routerLink","/sequence-search"],["mat-list-item","","routerLink","/advanced-search"],["matListIcon","","svgIcon","youtube"],[3,"expanded",4,"ngIf"],[1,"main-list"],["mat-list-item","","routerLink","/substances/register/chemical"],["matListIcon","","svgIcon","outline-description"],["mat-list-item","","routerLink","/substances/register/protein"],["mat-list-item","","routerLink","/substances/register/polymer"],["mat-list-item","","routerLink","/substances/register/nucleicAcid"],["mat-list-item","","routerLink","/substances/register/structurallyDiverse"],["mat-list-item","","routerLink","/substances/register/concept"],["mat-list-item","","routerLink","/substances/register/mixture"],["mat-list-item","","routerLink","/substances/register/specifiedSubstanceG1"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],[1,"side-nav-content",3,"ngClass"],["class","welcome-banner home-card",4,"ngIf"],[1,"home-card",3,"ngClass"],[1,"flex-row","image-row"],[1,"image-container"],["alt","first display image",1,"display-image",3,"src"],["alt","second display image",1,"display-image",3,"src"],["alt","third display image",1,"display-image",3,"src"],["alt","fourth display image",1,"display-image",3,"src"],[1,"row"],[1,"home"],[2,"padding-left","15px"],[1,"flex-row",2,"padding","5px"],["placeholder","Search Substances","styling","homePage","eventCategory","topSearch",1,"main-search",3,"searchValue","searchPerformed","opened","closed"],[1,"flex-row","even",2,"margin-bottom","25px"],[1,"button-container"],["mat-raised-button","","routerLink","/browse-substance",1,"big-button"],["class","button-container",4,"ngIf"],["mat-raised-button","","routerLink","/structure-search",1,"big-button"],["mat-raised-button","","routerLink","/sequence-search",1,"big-button"],[1,"divide-test"],[1,"flex-row",2,"padding-bottom","10px"],[1,"data"],[1,"flex-row","test",2,"padding-bottom","10px"],["class","custom-wrap",3,"click",4,"ngFor","ngForOf"],[2,"padding-left","15px","padding-top","10px"],[1,"home-card"],[1,"home",2,"padding-top","15px"],[1,"row3"],["class","temprow left-link","id","resource1",4,"ngIf"],["class","temprow right-link","id","resource2",4,"ngIf"],["class","temprow left-link","id","resource2",4,"ngIf"],["id","resource2",1,"temprow","right-link"],[1,"resource-link"],["target","_blank","href","https://gsrs.ncats.nih.gov/#/api#chemical%20search",1,"mat-raised-button","mat-button","mat-primary","mat-primary-button","trial-button"],[1,"img-container"],["alt","GSRS API image",1,"test",3,"src"],[1,"resource-desc"],["id","resource2",1,"temprow","left-link"],["tabindex","0","role","link",1,"mat-raised-button","mat-button","mat-primary","mat-primary-button","trial-button",3,"click"],["alt","GSRS JSON image",1,"test",3,"src"],["target","_blank","href","https://www.fda.gov/industry/fda-resources-data-standards/substance-identification",1,"mat-raised-button","mat-button","mat-primary","mat-primary-button","trial-button"],["alt","GSRS ISO image",1,"test",3,"src"],["excel",""],["schema",""],["dictionary",""],["guide",""],[4,"ngIf"],["mat-list-item","","routerLink","/browse-applications"],["mat-list-item","","routerLink","/browse-products"],["mat-list-item","","routerLink","/browse-clinical-trials"],["mat-list-item","","routerLink","/browse-adverse-events"],["mat-list-item","","target","_blank",3,"href"],[1,"other-list"],["mat-list-item","","routerLink","/product/register"],["mat-list-item","","routerLink","/application/register"],["mat-list-item","","routerLink","/impurities/register"],[1,"welcome-banner","home-card"],[1,"banner-main",3,"innerHTML"],["mat-raised-button","","routerLink","/browse-applications",1,"big-button"],[1,"custom-wrap",3,"click"],[1,"entry"],[1,"label"],[1,"value"],["id","resource1",1,"temprow","left-link"],["svgIcon","get_app"],["alt","GSRS excel image",1,"test",3,"src"],["alt","GSRS excel card",1,"test",3,"src"],[1,"resource-desc",3,"innerHtml"],["alt","GSRS guide card image",1,"test",3,"src"],["alt","GSRS guide card",1,"test",3,"src"],["alt","GSRS dictionary card image",1,"test",3,"src"],[1,"mat-raised-button","mat-button","mat-primary","mat-primary-button","trial-button",3,"click"],["alt","GSRS dictionary card",1,"test",3,"src"],["mat-dialog-content","",1,"button-modal"],[1,"modal-button",3,"href"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["href","https://gsrs.ncats.nih.gov/downloads/GSRS_schema_2_0_0.json",1,"modal-button"]],template:function(g,u){if(1&g){var M=t.EpF();t.TgZ(0,"div",0),t.TgZ(1,"mat-sidenav-container",1),t.TgZ(2,"mat-sidenav",2,3),t.TgZ(4,"div",4),t.TgZ(5,"div",5),t.TgZ(6,"mat-card-content",6),t.TgZ(7,"mat-card",7),t.TgZ(8,"h2",8),t._uU(9,"Quick Links"),t.qZA(),t.qZA(),t.TgZ(10,"mat-accordion",9),t.TgZ(11,"mat-expansion-panel",10),t.TgZ(12,"mat-expansion-panel-header"),t.TgZ(13,"mat-panel-title",11),t._uU(14," Substances "),t.qZA(),t.qZA(),t.TgZ(15,"mat-nav-list"),t.TgZ(16,"a",12),t._UZ(17,"mat-icon",13),t._uU(18," Browse Substances "),t.qZA(),t._UZ(19,"mat-divider"),t.TgZ(20,"a",14),t._UZ(21,"mat-icon",15),t._uU(22," Structure Search "),t.qZA(),t._UZ(23,"mat-divider"),t.TgZ(24,"a",16),t._UZ(25,"mat-icon",15),t._uU(26," Sequence Search "),t.qZA(),t._UZ(27,"mat-divider"),t.TgZ(28,"a",17),t._UZ(29,"mat-icon",18),t._uU(30," Advanced Search "),t.qZA(),t.qZA(),t.qZA(),t.YNc(31,Ja,11,5,"mat-expansion-panel",19),t.TgZ(32,"mat-expansion-panel",10),t.TgZ(33,"mat-expansion-panel-header"),t.TgZ(34,"mat-panel-title",11),t._uU(35," Register "),t.qZA(),t.qZA(),t.TgZ(36,"mat-nav-list",20),t.TgZ(37,"a",21),t._UZ(38,"mat-icon",22),t._uU(39," Chemical "),t.qZA(),t._UZ(40,"mat-divider"),t.TgZ(41,"a",23),t._UZ(42,"mat-icon",22),t._uU(43," Protein "),t.qZA(),t._UZ(44,"mat-divider"),t.TgZ(45,"a",24),t._UZ(46,"mat-icon",22),t._uU(47," Polymer "),t.qZA(),t._UZ(48,"mat-divider"),t.TgZ(49,"a",25),t._UZ(50,"mat-icon",22),t._uU(51," Nucleic Acid "),t.qZA(),t._UZ(52,"mat-divider"),t.TgZ(53,"a",26),t._UZ(54,"mat-icon",22),t._uU(55," Structurally Diverse "),t.qZA(),t._UZ(56,"mat-divider"),t.TgZ(57,"a",27),t._UZ(58,"mat-icon",22),t._uU(59," Concept "),t.qZA(),t._UZ(60,"mat-divider"),t.TgZ(61,"a",28),t._UZ(62,"mat-icon",22),t._uU(63," Mixture "),t.qZA(),t._UZ(64,"mat-divider"),t.TgZ(65,"a",29),t._UZ(66,"mat-icon",22),t._uU(67," Specified Substance Group 1 "),t.qZA(),t.qZA(),t.GkF(68),t.qZA(),t.YNc(69,Pr,8,2,"mat-expansion-panel",19),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(70,"mat-sidenav-content"),t.TgZ(71,"button",30),t.NdJ("click",function(){return u.openSideNav()}),t._UZ(72,"mat-icon",31),t.qZA(),t.TgZ(73,"div",32),t.YNc(74,Dr,2,1,"mat-card",33),t.TgZ(75,"mat-card",34),t.TgZ(76,"div",35),t.TgZ(77,"div",36),t._UZ(78,"img",37),t.qZA(),t.TgZ(79,"div",36),t._UZ(80,"img",38),t.qZA(),t.TgZ(81,"div",36),t._UZ(82,"img",39),t.qZA(),t.TgZ(83,"div",36),t._UZ(84,"img",40),t.qZA(),t.qZA(),t.TgZ(85,"div",41),t.TgZ(86,"h1",42),t._uU(87,"Global Substance Registration System - GSRS"),t.qZA(),t.TgZ(88,"div",43),t._uU(89," GSRS has been developed to assist regulators in managing substance information. It was designed to facilitate global monitoring of human and animal medicinal, food, tobacco, and cosmetic products. GSRS provides unique substance identifiers consistent with the ISO 11238 standard. FDA\u2019s GSRS specifically generates the Unique Ingredient Identifiers (UNIIs) used in electronic listing and other regulatory activities. "),t.qZA(),t.qZA(),t.TgZ(90,"div",44),t.TgZ(91,"app-substance-text-search",45),t.NdJ("searchPerformed",function(re){return u.processSubstanceSearch(re)})("opened",function(){return u.increaseMenuZindex()})("closed",function(){return u.removeZindex()}),t.qZA(),t.qZA(),t.TgZ(92,"div",46),t.TgZ(93,"div",47),t.TgZ(94,"a",48),t._uU(95,"Browse Substances"),t.qZA(),t.qZA(),t.YNc(96,Ga,3,0,"div",49),t.TgZ(97,"div",47),t.TgZ(98,"a",50),t._uU(99,"Structure Search"),t.qZA(),t.qZA(),t.TgZ(100,"div",47),t.TgZ(101,"a",51),t._uU(102,"Sequence Search"),t.qZA(),t.qZA(),t.qZA(),t._UZ(103,"mat-divider",52),t.TgZ(104,"div",53),t.TgZ(105,"div",54),t._uU(106),t.ALo(107,"number"),t.qZA(),t.qZA(),t.TgZ(108,"div",55),t.YNc(109,Rr,7,6,"div",56),t.qZA(),t._UZ(110,"div",57),t.qZA(),t.TgZ(111,"mat-card",58),t.TgZ(112,"h2",59),t._uU(113,"Helpful Resources"),t.qZA(),t.qZA(),t.TgZ(114,"div",60),t.YNc(115,Qo,9,1,"mat-card",61),t.YNc(116,fo,7,4,"mat-card",61),t.YNc(117,eo,7,3,"mat-card",62),t.YNc(118,Wo,8,1,"mat-card",62),t.qZA(),t.TgZ(119,"div",60),t.YNc(120,ya,7,3,"mat-card",63),t.YNc(121,pa,8,1,"mat-card",63),t.TgZ(122,"mat-card",64),t.TgZ(123,"h3",65),t.TgZ(124,"a",66),t._uU(125,"GSRS API Documentation"),t.qZA(),t.qZA(),t.TgZ(126,"div",67),t._UZ(127,"img",68),t.qZA(),t.TgZ(128,"div",69),t._uU(129," Swagger documentation of the GSRS API calls with working examples and implementation notes. "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(130,"div",60),t.TgZ(131,"mat-card",70),t.TgZ(132,"h3",65),t.TgZ(133,"a",71),t.NdJ("click",function(){t.CHM(M);var re=t.MAs(150);return u.openModal(re)}),t._uU(134,"GSRS JSON schema"),t.qZA(),t.qZA(),t.TgZ(135,"div",67),t._UZ(136,"img",72),t.qZA(),t.TgZ(137,"div",69),t._uU(138," This file contains a JSON formatted schema used by GSRS for recording substances to help visualize the substance object described by the GSRS Data Dictionary. "),t.qZA(),t.qZA(),t.TgZ(139,"mat-card",64),t.TgZ(140,"h3",65),t.TgZ(141,"a",73),t._uU(142,"ISO 11238 Standard"),t.qZA(),t.qZA(),t.TgZ(143,"div",67),t._UZ(144,"img",74),t.qZA(),t.TgZ(145,"div",69),t._uU(146," ISO 11238 is the standard that all substance data used by GSRS conforms to. ISO 11238 Substance Identification (SubID) provides an information model to define and identify substances within medicinal products or substances used for medicinal purposes. "),t.qZA(),t.qZA(),t.qZA(),t.YNc(147,Ur,7,2,"ng-template",null,75,t.W1O),t.YNc(149,yr,7,0,"ng-template",null,76,t.W1O),t.YNc(151,mo,7,2,"ng-template",null,77,t.W1O),t.YNc(153,mr,7,2,"ng-template",null,78,t.W1O),t.qZA(),t.qZA(),t.qZA(),t.qZA()}2&g&&(t.xp6(1),t.Q6J("hasBackdrop",u.hasBackdrop),t.xp6(1),t.Q6J("disableClose",!u.isCollapsed),t.xp6(9),t.Q6J("expanded",!0),t.xp6(20),t.Q6J("ngIf",u.loadedComponents),t.xp6(1),t.Q6J("expanded",!0),t.xp6(37),t.Q6J("ngIf",u.loadedComponents),t.xp6(4),t.Q6J("ngClass",u.isClosedWelcomeMessage?"topMargin":""),t.xp6(1),t.Q6J("ngIf",u.bannerMessage&&""!==u.bannerMessage),t.xp6(1),t.Q6J("ngClass",""),t.xp6(3),t.MGl("src","",u.imageLoc,"pills1.png",t.LSH),t.xp6(2),t.MGl("src","",u.imageLoc,"chemistry2.png",t.LSH),t.xp6(2),t.MGl("src","",u.imageLoc,"hydrangea.png",t.LSH),t.xp6(2),t.MGl("src","",u.imageLoc,"dna.png",t.LSH),t.xp6(7),t.Q6J("searchValue",u.searchValue),t.xp6(5),t.Q6J("ngIf",u.loadedComponents&&u.loadedComponents.applications),t.xp6(10),t.hij(" Total substances: ",t.Dn7(107,26,u.total,"1.0","en-US")," "),t.xp6(3),t.Q6J("ngForOf",u.customLinks),t.xp6(6),t.Q6J("ngIf",!u.excelCard),t.xp6(1),t.Q6J("ngIf",u.excelCard),t.xp6(1),t.Q6J("ngIf",u.guideCard),t.xp6(1),t.Q6J("ngIf",!u.guideCard),t.xp6(2),t.Q6J("ngIf",u.dictionaryCard),t.xp6(1),t.Q6J("ngIf",!u.dictionaryCard),t.xp6(6),t.MGl("src","",u.imageLoc,"API.png",t.LSH),t.xp6(9),t.MGl("src","",u.imageLoc,"json.png",t.LSH),t.xp6(8),t.MGl("src","",u.imageLoc,"iso2.png",t.LSH))},directives:[Za.TM,Za.JX,Qt.dn,Qt.a8,Ot.pp,Ot.ib,Ot.yz,Ot.yK,Xt.Hk,Xt.Tg,h.yS,j.Hw,Xt.Nh,jt.d,Ee.O5,Za.Rh,Ee.mk,Ue.e,v.zs,Ee.sg,ne.xY,ne.H8,ne.ZT],pipes:[Ee.JJ],styles:[".middle-content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-top:20px}.button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin-top:15px}.search-section[_ngcontent-%COMP%]{margin:0 20px;width:300px}.register-section[_ngcontent-%COMP%]{margin:0 20px 0 10px;width:auto}.register-header[_ngcontent-%COMP%]{font-size:16px;font-weight:400}.register-card-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.register-card-content[_ngcontent-%COMP%] .register-other[_ngcontent-%COMP%]{margin-top:10px;margin-left:20px}.register-card-content[_ngcontent-%COMP%] .register-main[_ngcontent-%COMP%]{margin-top:10px;margin-right:20px;min-width:275px;margin-left:10px}.register-card-content[_ngcontent-%COMP%] .register-main[_ngcontent-%COMP%] .main-list[_ngcontent-%COMP%], .register-card-content[_ngcontent-%COMP%] .register-main[_ngcontent-%COMP%] .other-list[_ngcontent-%COMP%]{padding-top:0}.old-icon[_ngcontent-%COMP%]{height:28px;width:30px;padding-right:7px;margin-bottom:-5px}.divider-vertical[_ngcontent-%COMP%]{margin-top:25px}.image-row[_ngcontent-%COMP%]{-ms-flex-pack:space-evenly;justify-content:space-evenly;max-width:1200px;margin:auto}.display-image[_ngcontent-%COMP%]{max-height:225px;max-width:281px;height:100%;width:100%}.image-container[_ngcontent-%COMP%]{width:24%}.quick-links[_ngcontent-%COMP%]{color:#4793d1;font-weight:550;margin-left:30%;font-size:23px}.resource-row[_ngcontent-%COMP%]{margin-left:15px;margin-right:15px}.temprow[_ngcontent-%COMP%]{width:45%;margin-top:0;margin-bottom:0}.test[_ngcontent-%COMP%]{margin:auto auto 15px;width:100%}.row3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;margin:15px auto auto;max-width:1220px}.shrunken-icon[_ngcontent-%COMP%]{width:20px;padding-left:5px}.mat-list-base[_ngcontent-%COMP%] .mat-list-item.mat-list-item-with-avatar[_ngcontent-%COMP%]{height:52px}.right-link[_ngcontent-%COMP%]{margin-left:10px}.left-link[_ngcontent-%COMP%]{margin-right:10px}.button-modal[_ngcontent-%COMP%]{-ms-flex-pack:center;justify-content:center;-ms-flex-line-pack:center;align-content:center;height:115px;padding-top:50px}.modal-button[_ngcontent-%COMP%]{font-size:18px;color:#4793d1}.trial-button[_ngcontent-%COMP%]{color:#fff;font-size:18px}.closed-welcome-padding[_ngcontent-%COMP%]{height:60px!important;width:100%}.mat-list-base[_ngcontent-%COMP%]{position:relative;padding-top:0}.resource-link[_ngcontent-%COMP%]{color:#4793d1!important;font-weight:550;margin-top:5px}.resource-desc[_ngcontent-%COMP%]{padding-left:15px;padding-bottom:10px}.panel-header[_ngcontent-%COMP%]{font-size:18px;font-weight:550px}.subtest[_ngcontent-%COMP%]{position:relative!important;padding:2px}a.mat-list-item[_ngcontent-%COMP%]{color:#1565c0}.mat-list-base[_ngcontent-%COMP%] .mat-list-item[_ngcontent-%COMP%] .mat-list-icon[_ngcontent-%COMP%]{color:#000000de}.big-button[_ngcontent-%COMP%]{font-size:19px!important;color:#fff!important;background-color:#4793d1!important;padding:3px 14px!important}.button-container[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto;margin-top:15px}.button-container[_ngcontent-%COMP%] .big-button[_ngcontent-%COMP%]{font-size:19px!important;color:#fff!important;background-color:#4793d1!important;padding:3px 14px!important}.banner-main[_ngcontent-%COMP%]{width:calc(100% - 50px)}.topMargin[_ngcontent-%COMP%]{margin-top:75px!important}.welcome-banner[_ngcontent-%COMP%]{margin-top:0;width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.welcome-banner[_ngcontent-%COMP%] .close-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;color:#296ca3}mat-list-item[_ngcontent-%COMP%]{height:52px}.home-card[_ngcontent-%COMP%]{margin-bottom:15px}.padding[_ngcontent-%COMP%]{padding-bottom:5px;margin-left:61px;width:90%!important}.home[_ngcontent-%COMP%]{font-weight:500;font-size:27px;color:#4793d1}.spaced[_ngcontent-%COMP%]{padding:5px}.main-search[_ngcontent-%COMP%]{margin-left:10%;margin-right:10%;max-width:100%;min-width:80%}.row[_ngcontent-%COMP%]{line-height:24px;padding-bottom:10px;padding-top:10px}.flex-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row}.flex-row[_ngcontent-%COMP%] .equal-width[_ngcontent-%COMP%]{-ms-flex:1 0 0px;flex:1 0 0}.label[_ngcontent-%COMP%]{min-width:200px;margin-left:70px}.value[_ngcontent-%COMP%]{min-width:50px}.data[_ngcontent-%COMP%]{margin:auto;font-weight:550;font-size:20px;padding:10px 10px 15px}.main-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.main-page[_ngcontent-%COMP%]{margin:auto}.side-bar[_ngcontent-%COMP%]{width:325px;margin-top:0;padding:0}.divide-test[_ngcontent-%COMP%]{padding:4px;position:relative!important}.test[_ngcontent-%COMP%]{-ms-flex-pack:space-evenly;justify-content:space-evenly;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.custom-wrap[_ngcontent-%COMP%]:hover{text-decoration:underline;background-color:#5e91ba33;cursor:pointer}.custom-wrap[_ngcontent-%COMP%]{width:33%}@media (max-width: 1000px){.custom-wrap[_ngcontent-%COMP%]{width:50%}}@media (max-width: 700px){.label[_ngcontent-%COMP%]{margin-left:5px;min-width:160px}}.entry[_ngcontent-%COMP%]{color:#1565c0;display:-ms-flexbox;display:flex;padding:5px;margin:auto}.entry[_ngcontent-%COMP%]:hover{text-decoration:underline;background-color:#5e91ba33;cursor:pointer}.entry[_ngcontent-%COMP%]:hover div[_ngcontent-%COMP%]{text-decoration:underline}.half-column[_ngcontent-%COMP%]{width:28%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:18px}.half-column[_ngcontent-%COMP%] color[_ngcontent-%COMP%]{color:#1565c0}.even[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;-ms-flex-positive:1;flex-grow:1;-ms-flex-wrap:wrap;flex-wrap:wrap}.third[_ngcontent-%COMP%]{width:33%;margin-bottom:20px}.img-responsive[_ngcontent-%COMP%]{height:170px}.para[_ngcontent-%COMP%]{margin-top:10px;margin-bottom:10px}.mat-sidenav[_ngcontent-%COMP%]{width:365px}mat-sidenav[_ngcontent-%COMP%]{width:365px} .mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.dynamic-container[_ngcontent-%COMP%]{width:100%;min-height:5px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:1220px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto}.cards[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:red}.table-view-name[_ngcontent-%COMP%]{color:#448aff}.tile-title[_ngcontent-%COMP%]{height:19px} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container-2[_ngcontent-%COMP%]{margin-bottom:10px}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.exact-matches-container[_ngcontent-%COMP%]{margin-top:80px}.exact-match-control[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-line-pack:center;align-content:center;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;margin-bottom:20px}.exact-match-control[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-top:15px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:0px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#000;border-radius:4px}.menu-checkbox[_ngcontent-%COMP%]:hover{background-color:#fff}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.disable-export[_ngcontent-%COMP%]{pointer-events:none;opacity:.5}.button-link-img[_ngcontent-%COMP%]{line-height:40px;color:#000}"]}),b}();function zo(b,L){1&b&&(t.O4$(),t.kcU(),t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",28),t._UZ(3,"mat-icon",29),t._uU(4," Structure Search "),t.qZA(),t._UZ(5,"mat-divider"),t.TgZ(6,"a",30),t._UZ(7,"mat-icon",29),t._uU(8," Sequence Search "),t.qZA(),t._UZ(9,"mat-divider"),t.TgZ(10,"a",31),t._UZ(11,"mat-icon",32),t._uU(12," Advanced Search "),t.qZA(),t.qZA())}function ho(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",34),t._UZ(3,"mat-icon",6),t._uU(4," Browse Applications "),t.qZA(),t.qZA())}function _o(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",35),t._UZ(3,"mat-icon",6),t._uU(4," Browse Products "),t.qZA(),t.qZA())}function Ta(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",36),t._UZ(3,"mat-icon",6),t._uU(4," Browse Clinical Trials "),t.qZA(),t.qZA())}function wr(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",37),t._UZ(3,"mat-icon",6),t._uU(4," Browse Adverse Events "),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(2),t.Q6J("href",g.adverseEventShinyHomepageURL,t.LSH)}}function ia(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,wr,5,1,"div",9),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!0===g.adverseEventShinyHomepageDisplay)}}function Aa(b,L){if(1&b&&(t.O4$(),t.kcU(),t.TgZ(0,"span"),t.YNc(1,ho,5,0,"span",9),t.YNc(2,_o,5,0,"span",9),t.YNc(3,Ta,5,0,"span",9),t.YNc(4,ia,2,1,"span",9),t._UZ(5,"mat-divider"),t.TgZ(6,"a",28),t._UZ(7,"mat-icon",29),t._uU(8," Structure Search "),t.qZA(),t._UZ(9,"mat-divider"),t.TgZ(10,"a",30),t._UZ(11,"mat-icon",29),t._uU(12," Sequence Search "),t.qZA(),t._UZ(13,"mat-divider"),t.TgZ(14,"a",31),t._UZ(15,"mat-icon",32),t._uU(16," Advanced Search "),t._UZ(17,"mat-icon",33),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",g.loadedComponents&&g.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",g.loadedComponents&&g.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",g.loadedComponents&&g.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",g.loadedComponents&&g.loadedComponents.adverseevents)}}function Ra(b,L){1&b&&(t.TgZ(0,"span"),t._uU(1," (Login to Register)"),t.qZA())}function Ma(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",38),t._UZ(3,"mat-icon",15),t._uU(4," Product "),t.qZA(),t.qZA())}function oo(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",39),t._UZ(3,"mat-icon",15),t._uU(4," Application "),t.qZA(),t.qZA())}function ko(b,L){1&b&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",40),t._UZ(3,"mat-icon",15),t._uU(4," Impurities "),t.qZA(),t.qZA())}function br(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Ma,5,0,"span",9),t.YNc(2,oo,5,0,"span",9),t.YNc(3,ko,5,0,"span",9),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",g.loadedComponents&&g.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",g.loadedComponents&&g.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",g.loadedComponents&&g.loadedComponents.impurities)}}function Er(b,L){1&b&&t._UZ(0,"mat-divider")}var Tt=function(){return["/browse-substance"]},Ke=function(L){return{facets:L}};function oe(b,L){if(1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",41),t.TgZ(2,"div",42),t.TgZ(3,"div",43),t._uU(4),t.qZA(),t.TgZ(5,"div",44),t._uU(6),t.ALo(7,"number"),t.qZA(),t.qZA(),t.qZA(),t.YNc(8,Er,1,0,"mat-divider",9),t.qZA()),2&b){var g=L.$implicit,u=L.last,M=L.index;t.xp6(1),t.Q6J("routerLink",t.DdM(9,Tt))("queryParams",t.VKq(10,Ke,g.queryParams)),t.xp6(3),t.hij(" ",g.display," "),t.xp6(2),t.hij(" ",g.total?g.total:t.Dn7(7,5,0,"1.0","en-US")," "),t.xp6(2),t.Q6J("ngIf",!u||M<13)}}function Ce(b,L){1&b&&t._UZ(0,"mat-divider",45),2&b&&t.Q6J("vertical",!0)}function at(b,L){1&b&&t._UZ(0,"mat-divider")}function ee(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"a",46),t.NdJ("click",function(){var lt=t.CHM(g).$implicit;return t.oxw().routeToCustom(lt)}),t.TgZ(2,"div",42),t.TgZ(3,"div",43),t._uU(4),t.qZA(),t.TgZ(5,"div",44),t._uU(6),t.ALo(7,"number"),t.qZA(),t.qZA(),t.qZA(),t.YNc(8,at,1,0,"mat-divider",9),t.qZA()}if(2&b){var u=L.$implicit,M=L.last;t.xp6(1),t.Q6J("routerLink",t.DdM(9,Tt))("queryParams",t.VKq(10,Ke,u.queryParams)),t.xp6(3),t.hij(" ",u.display," "),t.xp6(2),t.hij(" ",u.total?u.total:t.Dn7(7,5,0,"1.0","en-US")," "),t.xp6(2),t.Q6J("ngIf",!M)}}var me=function(){var b=function(){function L(g,u,M,U,re){(0,p.Z)(this,L),this.gaService=g,this.configService=u,this.authService=M,this.substanceService=U,this.router=re,this.isAuthenticated=!1,this.isClosedWelcomeMessage=!0,this.adverseEventShinyHomepageDisplay=!1,this.contactEmail=this.configService.configData.contactEmail,this.clasicBaseHref=this.configService.environment.clasicBaseHref}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.environment=this.configService.environment,this.application="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_application.png"),this.browseAll="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_browseall.png"),this.chemicon="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_registersubstance.png"),this.loadedComponents=this.configService.configData.loadedComponents||null,this.appId=this.configService.environment.appId,this.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry","Admin").subscribe(function(M){u.isAuthenticated=M}),this.gaService.sendPageView("Home"),this.baseDomain=this.configService.configData.apiUrlDomain,this.customLinks1=this.configService.configData.registrarDynamicLinks,this.customLinks2=this.configService.configData.registrarDynamicLinks2,this.customLinks1.forEach(function(M){for(var U="",re=0;re0}}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.selfNode={id:0,type:"ROOT",parent:"#",expandable:!1,value:{refuuid:this.uuid,name:this.name,approvalID:this.approvalID||""},relationship:""},this.substanceService.getHierarchy(this.uuid).subscribe(function(M){u.loadHierarchy(M)},function(M){u.loadHierarchy([u.selfNode])}),this.isAdmin=this.authService.hasAnyRoles("Admin","Updater","SuperUpdater")}},{key:"loadHierarchy",value:function(u){0===u.length&&u.push(this.selfNode);for(var M=0;M1&&(u=this.formatHierarchy(u));var re=this.list_to_tree(u);this.dataSource.data=re,this.activeNode=this.dataSource.data[0]}},{key:"formatHierarchy",value:function(u){for(var M="",U="",re=[],lt=u.length-1;lt>=0;lt--){0===u[lt].depth&&(u[lt].parent="#");var Wt=u[lt].value;if(u[lt].relationship="",Wt.refuuid===this.uuid&&(u[lt].self=!0),!Wt.approvalID&&Wt.linkingID&&10===Wt.linkingID.length&&(u[lt].value.approvalID=u[lt].value.linkingID),!u[lt].value.approvalID){var nn=u[lt].text.match(/\[(.*?)\]/);nn&&(u[lt].value.approvalID=nn[1])}Wt.refuuid===M&&U.includes("HAS ACTIVE MOIETY")&&(re.push([u[lt+1].id,u[lt].id]),u.splice(lt+1,1),u[lt].relationship+="{ACTIVE MOIETY} "),u[lt].type.includes("HAS ACTIVE MOIETY")?u[lt].relationship+="{ACTIVE FORM} ":u[lt].type.includes("IS SALT/SOLVATE OF")?u[lt].relationship+="{SALT/SOLVATE} ":u[lt].type.includes("IS SUBCONCEPT OF")?u[lt].relationship+="{SUBCONCEPT} ":u[lt].type.includes("IS G1SS CONSTITUENT OF")?u[lt].relationship+="{G1SS} ":u[lt].type.length>8&&(u[lt].relationship="")&&(u[lt].relationship+=" {"+u[lt].type+"} "),u[lt].refuuid=u[lt].value.refuuid,M=u[lt].refuuid,U=u[lt].type}u.sort(function(oi,pi){var ii=oi.refuuid.toUpperCase(),Ui=pi.refuuid.toUpperCase();return ii===Ui?oi.parentpi.parent?1:0:iiUi?1:0});for(var bn=u.length-1;bn>=0;bn--)bn!==u.length-1&&u[bn].value.refuuid===u[bn+1].value.refuuid&&u[bn].parent===u[bn+1].parent&&(u[bn].type.includes("HAS ACTIVE MOIETY")&&u[bn+1].type.includes("IS SALT/SOLVATE OF")?(re.push([u[bn].id,u[bn+1].id]),u.splice(bn,1)):u[bn+1].type.includes("HAS ACTIVE MOIETY")&&u[bn].type.includes("IS SALT/SOLVATE OF")&&(re.push([u[bn+1].id,u[bn].id]),u.splice(bn+1,1)));u.sort(function(oi,pi){return oi.id-pi.id});for(var Bn=u.length-1;Bn>=0;Bn--)for(var Xn=0;Xn0))},directives:[Ee.O5,Qa.gi,Qa.fQ,Qa.uo,Qa.eu,Ee.mk,v.lW,h.yS,Ie.gM,j.Hw,Qa.GZ,Qa.Ar],styles:[".mat-tree-node[_ngcontent-%COMP%]{min-height:30px!important}.hierarchy-tree-invisible[_ngcontent-%COMP%]{display:none}.hierarchy-tree[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .hierarchy-tree[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-top:0;margin-bottom:0;list-style-type:none}.spacer[_ngcontent-%COMP%]{width:50%}.approval[_ngcontent-%COMP%]{color:maroon;-ms-flex:0 0 100%;flex:0 0 100%}.end[_ngcontent-%COMP%]{white-space:nowrap;max-width:250px;-ms-flex:0 0 100%;flex:0 0 100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow:hidden;font-style:italic;text-overflow:ellipsis}.hierarchy-link[_ngcontent-%COMP%]{white-space:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-button[_ngcontent-%COMP%]{height:30px!important;line-height:30px!important}.right-container[_ngcontent-%COMP%]{max-width:250px;text-align:right;white-space:nowrap;-ms-flex-wrap:wrap;flex-wrap:wrap;display:-ms-flexbox;display:flex;padding-right:10px;margin:4px;vertical-align:top;-ms-flex-pack:right;justify-content:right}.title[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;max-width:calc(100% - 300px)}.tree-label[_ngcontent-%COMP%]{padding-bottom:10px;font-weight:700}.filler[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto;vertical-align:center;height:2px;margin-top:auto;margin-bottom:auto;margin-left:50px;padding-left:20px}.filler-line[_ngcontent-%COMP%]{height:2px;width:100%}.no-border[_ngcontent-%COMP%]{border-top:0px}.primary[_ngcontent-%COMP%]{background-color:#cee8fb!important}.hierarchy-link[_ngcontent-%COMP%]{color:#448aff;font-style:unset;max-lines:2}.odd[_ngcontent-%COMP%]{background-color:#0000000d}.node-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:calc(100% - 35px);-ms-flex-pack:justify;justify-content:space-between}.hierarchy-edit[_ngcontent-%COMP%]{height:20px;margin-left:15px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.current-record[_ngcontent-%COMP%]{font-weight:700}"]}),b}(),Qr=n(90813),qa=function(){var b=function(){function L(){(0,p.Z)(this,L)}return(0,e.Z)(L,[{key:"transform",value:function(u){return(u=u.slice().sort(function(M,U){var re=-1;return M.displayName?re=-1:(!0===U.displayName||!0===U.preferred&&!0!==M.displayName||!U.displayName&&!M.displayName&&M.name>U.name)&&(re=1),re})).slice(0,4)}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275pipe=t.Yjl({name:"namesDisplayOrder",type:b,pure:!0}),b}(),bi=function(){var b=function(){function L(){(0,p.Z)(this,L)}return(0,e.Z)(L,[{key:"transform",value:function(u,M){return u&&u.length&&u.length>M?u.slice(0,M):u}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275pipe=t.Yjl({name:"take",type:b,pure:!0}),b}(),Oi=n(89633),Pi=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.configService=g}return(0,e.Z)(L,[{key:"transform",value:function(u,M){return"approved"===u?this.configService.configData&&this.configService.configData.approvalCodeName?"Validated ("+this.configService.configData.approvalCodeName+")":"Validated (UNII)":u}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(sa.E,16))},b.\u0275pipe=t.Yjl({name:"statusDisplay",type:b,pure:!0}),b}();function fa(b,L){1&b&&t._UZ(0,"mat-icon",36)}function nr(b,L){if(1&b&&(t.TgZ(0,"div",38),t.TgZ(1,"mat-chip-list",39),t.TgZ(2,"mat-chip",40),t._uU(3),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(3),t.Oqu(g.substance.structure.stereochemistry)}}function vo(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,nr,4,1,"div",37),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",g.substance.structure.stereochemistry)}}function As(b,L){if(1&b&&(t.TgZ(0,"div"),t.TgZ(1,"div",38),t.TgZ(2,"mat-chip-list",39),t.TgZ(3,"mat-chip",40),t._uU(4),t.ALo(5,"uppercase"),t.ALo(6,"facetDisplay"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(4),t.hij("",t.lcZ(5,1,t.xi3(6,3,g.substance.substanceClass,"types"))," ")}}function Go(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"a",41),t.NdJ("click",function(){t.CHM(g);var U=t.oxw();return U.openImageModal(U.substance)}),t._UZ(2,"img",42),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(2),t.Q6J("entityId",u.substance.uuid)("atomMaps",u.substance._matchContext&&u.substance._matchContext.atomMaps||null)}}function fs(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"img",42),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("entityId",g.substance.uuid)("atomMaps",g.substance._matchContext&&g.substance._matchContext.atomMaps||null)}}function ma(b,L){if(1&b&&(t.TgZ(0,"div"),t.TgZ(1,"span",43),t._uU(2,"similarity:"),t.qZA(),t.TgZ(3,"span",44),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(4),t.Oqu(g.substance._matchContext.similarity.toFixed(3))}}function Br(b,L){if(1&b&&(t.TgZ(0,"div",45),t._uU(1),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.hij(" ",g.substance.definitionLevel," DEFINITION ")}}function Ps(b,L){if(1&b&&(t.TgZ(0,"button",46),t._UZ(1,"mat-icon",47),t.qZA()),2&b){t.oxw();var g=t.MAs(39);t.Q6J("matMenuTriggerFor",g)}}var Sn=function(){return["/advanced-search"]},Rn=function(L){return{structure:L}};function Fn(b,L){if(1&b&&(t.TgZ(0,"a",48),t._UZ(1,"mat-icon",49),t.qZA()),2&b){var g=t.oxw();t.Q6J("routerLink",t.DdM(2,Sn))("queryParams",t.VKq(3,Rn,g.substance.structure.id))}}var mi=function(L){return["/substances",L,"edit"]};function Li(b,L){if(1&b&&(t.TgZ(0,"a",50),t._UZ(1,"mat-icon",51),t.qZA()),2&b){var g=t.oxw();t.Q6J("routerLink",t.VKq(1,mi,g.substance.uuid))}}function zi(b,L){if(1&b&&(t.TgZ(0,"button",52),t._UZ(1,"mat-icon",53),t.qZA()),2&b){t.oxw();var g=t.MAs(46);t.Q6J("matMenuTriggerFor",g)}}function Ba(b,L){if(1&b&&(t.TgZ(0,"button",54),t._UZ(1,"mat-icon",47),t.qZA()),2&b){t.oxw();var g=t.MAs(27);t.Q6J("matMenuTriggerFor",g)}}var Da=function(){return["/sequence-search"]},tl=function(L,g,u){return{substance:L,subunit:g,seq_type:u}};function Ul(b,L){if(1&b&&(t.TgZ(0,"a",55),t._uU(1),t.qZA()),2&b){var g=L.$implicit,u=t.oxw();t.Q6J("routerLink",t.DdM(4,Da))("queryParams",t.kEZ(5,tl,u.substance.uuid,g.uuid,u.substance.substanceClass)),t.xp6(1),t.AsE(" subunit ",g.subunitIndex," (",g.sequence&&g.sequence.length||0,") similarity search ")}}function Wr(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",20),t.NdJ("click",function(){return t.CHM(g),t.oxw().openMolModal()}),t.TgZ(1,"span"),t._uU(2,"Show Molfile"),t.qZA(),t.qZA()}}function nl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",20),t.NdJ("click",function(){t.CHM(g);var M=t.oxw();return M.getMol(M.substance.uuid,(M.substance.approvalID?M.substance.approvalID.toString():M.substance.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function Bl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",20),t.NdJ("click",function(){t.CHM(g);var M=t.oxw();return M.getMol(M.substance.uuid,(M.substance.approvalID?M.substance.approvalID.toString():M.substance.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function ir(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",20),t.NdJ("click",function(){t.CHM(g);var M=t.oxw();return M.getFasta(M.substance.uuid,(M.substance.approvalID?M.substance.approvalID.toString():M.substance.uuid.toString())+".fas")}),t.TgZ(1,"span"),t._uU(2,"Download Fasta"),t.qZA(),t.qZA()}}var il=function(){return["/structure-search"]};function ms(b,L){if(1&b&&(t.TgZ(0,"a",55),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.Q6J("routerLink",t.DdM(2,il))("queryParams",t.VKq(3,Rn,g.substance.structure.id))}}function ba(b,L){if(1&b&&(t.TgZ(0,"a",55),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.Q6J("routerLink",t.DdM(2,il))("queryParams",t.VKq(3,Rn,g.substance.polymer.displayStructure.id))}}function Ds(b,L){if(1&b&&(t.TgZ(0,"a",55),t.TgZ(1,"span"),t._uU(2,"Advanced Structure"),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.Q6J("routerLink",t.DdM(2,Sn))("queryParams",t.VKq(3,Rn,g.substance.structure.id))}}function ws(b,L){1&b&&(t.TgZ(0,"span",65),t._UZ(1,"mat-icon",66),t.qZA())}function Yl(b,L){if(1&b&&(t.TgZ(0,"div",62),t._UZ(1,"span",63),t.YNc(2,ws,2,0,"span",64),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("innerHTML",g._nameHTML?g._nameHTML:g.name,t.oJD),t.xp6(1),t.Q6J("ngIf",1==g.displayName)}}function Yr(b,L){1&b&&(t.TgZ(0,"span",65),t._UZ(1,"mat-icon",66),t.qZA())}function Ko(b,L){1&b&&(t.TgZ(0,"span",68),t._UZ(1,"mat-icon",69),t.qZA())}function Ka(b,L){if(1&b&&(t.TgZ(0,"div",62),t._UZ(1,"span",63),t.YNc(2,Yr,2,0,"span",64),t.YNc(3,Ko,2,0,"span",67),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("innerHTML",g._nameHTML?g._nameHTML:g.name,t.oJD),t.xp6(1),t.Q6J("ngIf",1==g.displayName),t.xp6(1),t.Q6J("ngIf",1==g.preferred)}}function hs(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",56),t.TgZ(1,"div",57),t._uU(2,"Names:"),t.qZA(),t.TgZ(3,"div",58),t.YNc(4,Yl,3,2,"div",59),t.ALo(5,"namesDisplayOrder"),t.TgZ(6,"div",60),t.NdJ("click",function(){return t.CHM(g),t.oxw().showMoreLessNames()}),t._uU(7),t.qZA(),t.qZA(),t.TgZ(8,"div",58),t.YNc(9,Ka,4,3,"div",59),t.TgZ(10,"div",61),t.NdJ("click",function(){return t.CHM(g),t.oxw().showMoreLessNames()}),t._uU(11,"Less"),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(3),t.Q6J("hidden",!u.showLessNames),t.xp6(1),t.Q6J("ngForOf",t.lcZ(5,6,u.names)),t.xp6(2),t.Q6J("hidden",!u.moreThanNumberCount(u.names,5)),t.xp6(1),t.hij("See ",u.names.length-4," More"),t.xp6(1),t.Q6J("hidden",u.showLessNames),t.xp6(1),t.Q6J("ngForOf",u.names)}}function Lo(b,L){if(1&b&&(t.TgZ(0,"span",79),t._uU(1),t.qZA()),2&b){var g=t.oxw(3).$implicit;t.xp6(1),t.hij("[",g.type,"]")}}function _s(b,L){if(1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",76),t.TgZ(2,"span",77),t._uU(3,"view site in new tab"),t.qZA(),t._uU(4),t.YNc(5,Lo,2,1,"span",78),t.qZA(),t.qZA()),2&b){var g=t.oxw(2).$implicit,u=t.oxw().$implicit,M=t.oxw(2);t.xp6(1),t.MGl("aria-label","view site for ",g.code.trim()," in new tab"),t.Q6J("href",g.url,t.LSH),t.xp6(3),t.hij("",g.code.trim()," "),t.xp6(1),t.Q6J("ngIf",M.codeSystems[u].length>1&&"PRIMARY"!==g.type)}}function Cl(b,L){if(1&b&&(t.TgZ(0,"span",79),t._uU(1),t.qZA()),2&b){var g=t.oxw(3).$implicit;t.xp6(1),t.hij("[",g.type,"]")}}function yo(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.YNc(2,Cl,2,1,"span",78),t.qZA()),2&b){var g=t.oxw(2).$implicit,u=t.oxw().$implicit,M=t.oxw(2);t.xp6(1),t.hij("",g.code.trim()," "),t.xp6(1),t.Q6J("ngIf",M.codeSystems[u].length>1&&"PRIMARY"!==g.type)}}function Fo(b,L){1&b&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function Ml(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,_s,6,4,"span",6),t.YNc(2,yo,3,2,"span",6),t.YNc(3,Fo,2,0,"span",6),t.qZA()),2&b){var g=t.oxw(),u=g.$implicit,M=g.last;t.xp6(1),t.Q6J("ngIf",u.url),t.xp6(1),t.Q6J("ngIf",!u.url),t.xp6(1),t.Q6J("ngIf",!M)}}function Os(b,L){if(1&b&&(t.TgZ(0,"span",75),t.YNc(1,Ml,4,3,"span",6),t.qZA()),2&b){var g=L.index,u=t.oxw().$implicit,M=t.oxw(2);t.xp6(1),t.Q6J("ngIf",g<5||M.showAll[u]&&!0===M.showAll[u])}}function $o(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"a",80),t.NdJ("click",function(){t.CHM(g);var re=t.oxw().$implicit,lt=t.oxw(2);return lt.showAll[re]=!lt.showAll[re]||!0!==lt.showAll[re]}),t._uU(2),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit,M=t.oxw(2);t.xp6(2),t.Oqu(M.showAll[u]?"Show Less":"Show More")}}function Es(b,L){if(1&b&&(t.TgZ(0,"div",72),t.TgZ(1,"div",73),t.TgZ(2,"span",57),t._uU(3),t.ALo(4,"async"),t.ALo(5,"codeSystemDisplay"),t.qZA(),t._uU(6,":\xa0 "),t.YNc(7,Os,2,1,"span",74),t.YNc(8,$o,3,1,"span",6),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(2);t.xp6(3),t.hij("",t.lcZ(4,3,t.lcZ(5,5,g))," "),t.xp6(4),t.Q6J("ngForOf",u.codeSystems[g]),t.xp6(1),t.Q6J("ngIf",u.codeSystems[g].length>4)}}function sr(b,L){if(1&b&&(t.TgZ(0,"span",79),t._uU(1),t.qZA()),2&b){var g=t.oxw(3).$implicit;t.xp6(1),t.hij("[",g.type,"]")}}function al(b,L){if(1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",81),t.TgZ(2,"span",77),t._uU(3,"view site in new tab"),t.qZA(),t._uU(4),t.YNc(5,sr,2,1,"span",78),t.qZA(),t.qZA()),2&b){var g=t.oxw(2).$implicit,u=t.oxw().$implicit,M=t.oxw(2);t.xp6(1),t.Q6J("href",g.url,t.LSH),t.xp6(3),t.hij("",g.code.trim()," "),t.xp6(1),t.Q6J("ngIf",M.codeSystems[u].length>1&&"PRIMARY"!==g.type)}}function bo(b,L){if(1&b&&(t.TgZ(0,"span",79),t._uU(1),t.qZA()),2&b){var g=t.oxw(3).$implicit;t.xp6(1),t.hij("[",g.type,"]")}}function Zs(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.YNc(2,bo,2,1,"span",78),t.qZA()),2&b){var g=t.oxw(2).$implicit,u=t.oxw().$implicit,M=t.oxw(2);t.xp6(1),t.hij("",g.code.trim()," "),t.xp6(1),t.Q6J("ngIf",M.codeSystems[u].length>1&&"PRIMARY"!==g.type)}}function Xo(b,L){1&b&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function Cr(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,al,6,3,"span",6),t.YNc(2,Zs,3,2,"span",6),t.YNc(3,Xo,2,0,"span",6),t.qZA()),2&b){var g=t.oxw(),u=g.$implicit,M=g.last;t.xp6(1),t.Q6J("ngIf",u.url),t.xp6(1),t.Q6J("ngIf",!u.url),t.xp6(1),t.Q6J("ngIf",!M)}}function Co(b,L){if(1&b&&(t.TgZ(0,"span",75),t.YNc(1,Cr,4,3,"span",6),t.qZA()),2&b){var g=L.index,u=t.oxw().$implicit,M=t.oxw(2);t.xp6(1),t.Q6J("ngIf",g<5||M.showAll[u]&&!0===M.showAll[u])}}function gs(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"a",80),t.NdJ("click",function(){t.CHM(g);var re=t.oxw().$implicit,lt=t.oxw(2);return lt.showAll[re]=!lt.showAll[re]||!0!==lt.showAll[re]}),t._uU(2),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit,M=t.oxw(2);t.xp6(2),t.Oqu(M.showAll[u]?"Show Less":"Show More")}}function rl(b,L){if(1&b&&(t.TgZ(0,"div",72),t.TgZ(1,"div",73),t.TgZ(2,"span",57),t._uU(3),t.ALo(4,"async"),t.ALo(5,"codeSystemDisplay"),t.qZA(),t._uU(6,":\xa0 "),t.YNc(7,Co,2,1,"span",74),t.YNc(8,gs,3,1,"span",6),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(2);t.xp6(3),t.hij("",t.lcZ(4,3,t.lcZ(5,5,g))," "),t.xp6(4),t.Q6J("ngForOf",u.codeSystems[g]),t.xp6(1),t.Q6J("ngIf",u.codeSystems[g].length>4)}}function ol(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",70),t.TgZ(1,"div",57),t._uU(2,"Codes:"),t.qZA(),t.TgZ(3,"div",58),t.YNc(4,Es,9,7,"div",71),t.ALo(5,"take"),t.TgZ(6,"div",60),t.NdJ("click",function(){return t.CHM(g),t.oxw().showMoreLessCodes()}),t._uU(7),t.qZA(),t.qZA(),t.TgZ(8,"div",58),t.YNc(9,rl,9,7,"div",71),t.TgZ(10,"div",61),t.NdJ("click",function(){return t.CHM(g),t.oxw().showMoreLessCodes()}),t._uU(11,"Less"),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(3),t.Q6J("hidden",!u.showLessCodes),t.xp6(1),t.Q6J("ngForOf",t.xi3(5,6,u.codeSystemNames,5)),t.xp6(2),t.Q6J("hidden",!u.moreThanNumberCount(u.codeSystemNames,6)),t.xp6(1),t.hij("See ",u.codeSystemNames.length-5," More"),t.xp6(1),t.Q6J("hidden",u.showLessCodes),t.xp6(1),t.Q6J("ngForOf",u.codeSystemNames)}}function Qc(b,L){if(1&b&&(t.TgZ(0,"div",82),t.TgZ(1,"div",57),t._uU(2,"Relationships:"),t.qZA(),t.TgZ(3,"div",75),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(4),t.hij(" ",g.substance._relationships.count," ")}}function ql(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Components:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",75),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(5),t.Oqu(g.substance.mixture.components.length)}}function he(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Constituents:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",75),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(5),t.Oqu(g.substance.specifiedSubstance.constituents.length)}}function ke(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Subunits:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",75),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(5),t.Oqu(g.substance.nucleicAcid.subunits.length)}}function pe(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Mol. Weight:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",75),t._uU(5),t.ALo(6,"number"),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(5),t.Oqu(t.xi3(6,1,g.substance.structure.mwt,g.rounding))}}function Me(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Formula:"),t.qZA(),t.TgZ(3,"div"),t._UZ(4,"span",84),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(4),t.Q6J("innerHTML",g.substance.structure.formula,t.oJD)}}function Fe(b,L){1&b&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function xt(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.YNc(2,Fe,2,0,"span",6),t.qZA()),2&b){var g=L.$implicit,u=L.last;t.xp6(1),t.hij(" ",g," "),t.xp6(1),t.Q6J("ngIf",!u)}}function Ut(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Part:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",85),t.YNc(5,xt,3,2,"span",86),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(5),t.Q6J("ngForOf",g.substance.structurallyDiverse.part)}}function dn(b,L){if(1&b&&(t.TgZ(0,"div",87),t.TgZ(1,"a",88),t._uU(2," Inxight Drugs "),t._UZ(3,"mat-icon",89),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q2q("aria-label","open ",g.inxightUrl," in new tab"),t.Q6J("href",g.inxightUrl,t.LSH)}}function Mn(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Validated By: "),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",75),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(5),t.hij(" ",g.substance.approvedBy," ")}}function hn(b,L){if(1&b&&(t.TgZ(0,"div",83),t.TgZ(1,"div",57),t._uU(2,"Validated Date: "),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",75),t._uU(5),t.ALo(6,"date"),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(5),t.hij(" ",t.xi3(6,1,g.substance.approved,"short")," ")}}function $n(b,L){if(1&b&&(t.TgZ(0,"div"),t.TgZ(1,"div",83),t.TgZ(2,"div",57),t._uU(3,"Created: "),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"span",75),t._uU(6),t.ALo(7,"date"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",83),t.TgZ(9,"div",57),t._uU(10,"Created By: "),t.qZA(),t.TgZ(11,"div"),t.TgZ(12,"span",75),t._uU(13),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"div",83),t.TgZ(15,"div",57),t._uU(16,"Status: "),t.qZA(),t.TgZ(17,"div"),t.TgZ(18,"span",75),t._uU(19),t.ALo(20,"statusDisplay"),t.qZA(),t.qZA(),t.qZA(),t.YNc(21,Mn,6,1,"div",31),t.YNc(22,hn,7,4,"div",31),t.TgZ(23,"div",83),t.TgZ(24,"div",57),t._uU(25,"Last Modified: "),t.qZA(),t.TgZ(26,"div"),t.TgZ(27,"span",75),t._uU(28),t.ALo(29,"date"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(30,"div",83),t.TgZ(31,"div",57),t._uU(32,"Last Modified By: "),t.qZA(),t.TgZ(33,"div"),t.TgZ(34,"span",75),t._uU(35),t.qZA(),t.qZA(),t.qZA(),t.TgZ(36,"div",83),t.TgZ(37,"div",57),t._uU(38,"Version: "),t.qZA(),t.TgZ(39,"div"),t.TgZ(40,"span",75),t._uU(41),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(6),t.hij(" ",t.xi3(7,8,g.substance.created,"shortDate")," "),t.xp6(7),t.hij(" ",g.substance.createdBy," "),t.xp6(6),t.hij(" ",t.lcZ(20,11,g.substance.status)," "),t.xp6(2),t.Q6J("ngIf","approved"===g.substance.status),t.xp6(1),t.Q6J("ngIf",g.substance.approved),t.xp6(6),t.hij(" ",t.xi3(29,13,g.substance.lastEdited,"shortDate")," "),t.xp6(7),t.hij(" ",g.substance.lastEditedBy," "),t.xp6(6),t.hij(" ",g.substance.version," ")}}function hi(b,L){1&b&&t._UZ(0,"app-sequence-alignment",91),2&b&&t.Q6J("alignmentArray",L.$implicit)}function Ji(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,hi,1,1,"app-sequence-alignment",90),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngForOf",g.alignments)}}function Ca(b,L){}var Ya=function(L){return["/substances",L]},$a=function(L){return["/substances/register",L]},Mr=function(L){return{copy:L}},qr=function(L){return{copy:L,copyType:"definition"}},no=function(){var b=function(){function L(g,u,M,U,re,lt,Wt,nn,bn,Bn,Xn){(0,p.Z)(this,L),this.utilsService=g,this.gaService=u,this.authService=M,this.substanceService=U,this.structureService=re,this.componentFactoryResolver=lt,this.router=Wt,this.overlayContainerService=nn,this.dialog=bn,this.configService=Bn,this.dynamicContentItems=Xn,this.openImage=new t.vpe,this.isAdmin=!1,this.canCreate=!1,this.inxightLink=!1,this.rounding="1.0-2",this.showAll=[],this.allPrimary=[],this.showLessNames=!0,this.showLessCodes=!0}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),this.authService.hasAnyRolesAsync("Updater","SuperUpdater","Approver","admin").pipe((0,Y.q)(1)).subscribe(function(M){M&&(u.isAdmin=M)}),this.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry","admin").pipe((0,Y.q)(1)).subscribe(function(M){M&&(u.canCreate=M)}),this.substance.protein&&(this.subunits=this.substance.protein.subunits,this.getAlignments()),this.substance.nucleicAcid&&(this.subunits=this.substance.nucleicAcid.subunits,this.getAlignments()),this.substance.structure&&this.substance.structure.formula&&(this.substance.structure.formula=this.structureService.formatFormula(this.substance.structure)),this.substance.approvalID?this.substanceService.hasInxightLink(this.substance.approvalID).subscribe(function(M){M.total&&M.total>0&&(u.inxightLink=!0,u.inxightUrl="https://drugs.ncats.io/drug/"+u.substance.approvalID)},function(M){}):this.getApprovalID(),this.configService.configData&&this.configService.configData.molWeightRounding&&(this.rounding="1.0-"+this.configService.configData.molWeightRounding)}},{key:"getApprovalID",value:function(){this.substance.approvalID||this.substance._approvalIDDisplay&&10===this.substance._approvalIDDisplay.length&&this.substance._approvalIDDisplay.indexOf(" ")<0&&(this.substance.approvalID=this.substance._approvalIDDisplay)}},{key:"substance",get:function(){return this.privateSubstance},set:function(u){null!=u&&(this.privateSubstance=u,this.loadDynamicContent())}},{key:"codeSystems",get:function(){return this.privateCodeSystems},set:function(u){u&&this.codeSystemNames&&(this.privateCodeSystems=u,this.formatCodeSystems())}},{key:"formatCodeSystems",value:function(){var u=this;this.codeSystemNames.forEach(function(M){var U=[];u.allPrimary[M]="true",u.codeSystems[M].forEach(function(re){"PRIMARY"===re.type?U.unshift(re):(u.allPrimary[M]="false",U.push(re))}),u.codeSystems[M]=U})}},{key:"openImageModal",value:function(){this.substance.names=this.names,this.openImage.emit(this.substance)}},{key:"editForm",value:function(){this.router.navigate(["/substances/"+this.substance.uuid+"/edit"])}},{key:"getFasta",value:function(u,M){var U=this;this.substanceService.getFasta(u).subscribe(function(re){U.downloadFile(re,M)})}},{key:"getMol",value:function(u,M){var U=this;this.structureService.downloadMolfile(u).subscribe(function(re){U.downloadFile(re,M)})}},{key:"downloadFile",value:function(u,M){var U=u.type,re=[];re.push(u);var lt=document.createElement("a");lt.href=window.URL.createObjectURL(new Blob(re,{type:U})),lt.setAttribute("download",M),document.body.appendChild(lt),lt.click()}},{key:"loadDynamicContent",value:function(){var u=this,M=this.dynamicContentContainer.viewContainerRef;M.clear(),this.configService.configData&&this.configService.configData.loadedComponents&&this.dynamicContentItems.reduce(function(re,lt){return re.concat(lt)},[]).filter(function(re){return"summary"===re.componentType}).forEach(function(re){var lt=u.componentFactoryResolver.resolveComponentFactory(re.component);M.createComponent(lt).instance.substance=u.privateSubstance})}},{key:"downloadJson",value:function(){var u=this;this.substanceService.getSubstanceDetails(this.substance.uuid).pipe((0,Y.q)(1)).subscribe(function(M){u.downloadFile(JSON.stringify(M),u.substance.uuid+".json")})}},{key:"getAlignments",value:function(){var u=this;this.substance._matchContext&&this.substance._matchContext.alignments&&(this.alignments=this.substance._matchContext.alignments,this.alignments.forEach(function(M){u.subunits.forEach(function(U){U.uuid===M.id&&(M.subunitIndex=U.subunitIndex)})}))}},{key:"openMolModal",value:function(){var u=this,M=this.dialog.open(Ti,{minWidth:"40%",maxWidth:"90%",height:"90%",data:{uuid:this.substance.uuid,approval:this.substance.approvalID}});this.overlayContainer.style.zIndex="1002",M.afterClosed().subscribe(function(U){u.overlayContainer.style.zIndex=null})}},{key:"moreThanNumberCount",value:function(u,M){return!(u.length0),t.xp6(3),t.hij(" ",u.substance.approvalID," "),t.xp6(4),t.Q6J("ngIf",u.substance.structure),t.xp6(1),t.Q6J("ngIf",!u.substance.structure),t.xp6(2),t.Q6J("ngIf",u.substance.structure||u.substance.polymer),t.xp6(1),t.Q6J("ngIf",!u.substance.structure&&!u.substance.polymer),t.xp6(1),t.Q6J("ngIf",u.substance._matchContext&&u.substance._matchContext.similarity),t.xp6(1),t.Q6J("ngIf",u.substance.definitionLevel&&"COMPLETE"!==u.substance.definitionLevel),t.xp6(2),t.Q6J("matMenuTriggerFor",M),t.xp6(2),t.Q6J("ngIf",u.substance.structure||u.substance.polymer),t.xp6(1),t.Q6J("ngIf",u.substance.structure),t.xp6(1),t.Q6J("ngIf",u.isAdmin),t.xp6(1),t.Q6J("ngIf",u.canCreate),t.xp6(1),t.Q6J("ngIf",u.subunits),t.xp6(3),t.Q6J("ngForOf",u.subunits),t.xp6(6),t.Q6J("ngIf",u.substance.structure||u.substance.polymer),t.xp6(1),t.Q6J("ngIf",u.substance.structure),t.xp6(1),t.Q6J("ngIf",u.substance.polymer),t.xp6(1),t.Q6J("ngIf",u.substance.protein||u.substance.nucleicAcid),t.xp6(3),t.Q6J("ngIf",u.substance.structure),t.xp6(1),t.Q6J("ngIf",u.substance.polymer),t.xp6(3),t.Q6J("ngIf",u.substance.structure),t.xp6(3),t.Q6J("routerLink",t.VKq(45,$a,u.substance.substanceClass))("queryParams",t.VKq(47,Mr,u.substance.uuid)),t.xp6(3),t.Q6J("routerLink",t.VKq(49,$a,u.substance.substanceClass))("queryParams",t.VKq(51,qr,u.substance.uuid)),t.xp6(4),t.Q6J("ngIf",u.names&&u.names.length),t.xp6(1),t.Q6J("ngIf",u.codeSystems),t.xp6(1),t.Q6J("ngIf",u.substance._relationships&&null!=u.substance._relationships.count),t.xp6(1),t.Q6J("ngIf",u.substance.mixture&&u.substance.mixture.components&&u.substance.mixture.components.length),t.xp6(1),t.Q6J("ngIf",u.substance.specifiedSubstance&&u.substance.specifiedSubstance.constituents),t.xp6(1),t.Q6J("ngIf",u.substance.nucleicAcid&&u.substance.nucleicAcid.subunits),t.xp6(1),t.Q6J("ngIf",null==u.substance.structure?null:u.substance.structure.mwt),t.xp6(1),t.Q6J("ngIf",null==u.substance.structure?null:u.substance.structure.formula),t.xp6(1),t.Q6J("ngIf",null==u.substance.structurallyDiverse?null:u.substance.structurallyDiverse.part),t.xp6(2),t.Q6J("ngIf",u.inxightLink),t.xp6(1),t.Q6J("ngIf",u.showAudit),t.xp6(1),t.Q6J("ngIf",u.alignments),t.xp6(2),t.Q6J("uuid",u.substance.uuid)("name",u.substance._name)("approvalID",u.substance.approvalID)}},directives:[Qt.a8,Qt.n5,h.yS,Ie.gM,Ee.O5,j.Hw,Qt.dn,Pa.qn,Pa.HS,ra.m,v.lW,sn.p6,v.zs,sn.VK,Ee.sg,sn.OP,to.z,la,Xi,cn],pipes:[Ee.gd,Qr.Y,qa,bi,Ee.Ov,Oi.q,Ee.JJ,Ee.uU,Pi],styles:[".mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.button-wrapper[_ngcontent-%COMP%]{max-width:170px}.show-more[_ngcontent-%COMP%]{text-decoration:underline;color:#448aff;cursor:pointer}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.moreLink[_ngcontent-%COMP%]{color:#448aff;font-weight:600;padding-left:10px;font-size:15px}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval[_ngcontent-%COMP%]{font-size:16px;color:#c7254e}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}}.definition[_ngcontent-%COMP%]{padding:7px 0}.similarity[_ngcontent-%COMP%]{padding-left:10px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:#c7254e}.similarity-label[_ngcontent-%COMP%]{font-style:italic}.inxight-container[_ngcontent-%COMP%]{text-align:right;padding-bottom:15px}.small-icon[_ngcontent-%COMP%]{height:20px;width:20px;padding-bottom:5px;vertical-align:middle}"]}),b}(),so=["matSideNavInstance"];function hr(b,L){if(1&b&&(t.TgZ(0,"mat-option",17),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.Q6J("value",g),t.xp6(1),t.hij(" ",g," ")}}function Va(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-form-field",14),t.TgZ(1,"mat-label"),t._uU(2,"Facet View:"),t.qZA(),t.TgZ(3,"mat-select",15),t.NdJ("openedChange",function(U){return t.CHM(g),t.oxw().openedFacetViewChange(U)})("selectionChange",function(U){return t.CHM(g),t.oxw().facetViewChange(U)}),t.YNc(4,hr,2,2,"mat-option",16),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(3),t.Q6J("formControl",u.facetViewControl),t.xp6(1),t.Q6J("ngForOf",u.facetViewCategory)}}function Vt(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t._uU(1," Your search did not return any results. Please try modifying it or "),t.TgZ(2,"a",22),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).clearFilters()}),t._uU(3,"click here"),t.qZA(),t._uU(4," to clear all your search criteria. "),t.qZA()}}function Mo(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1," Your search did not return any results within the default fields. However, this query has some results if you restrict your search to specific fields below. "),t.qZA())}function ks(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).editAdvancedSearch()}),t._UZ(1,"mat-icon",29),t.qZA()}}function Zr(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"div"),t.TgZ(2,"span",24),t._uU(3,"Search Query:"),t.qZA(),t._uU(4,"\xa0 "),t.TgZ(5,"span"),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div",25),t.YNc(8,ks,2,0,"button",26),t.TgZ(9,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).clearSearch()}),t._UZ(10,"mat-icon",28),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(6),t.Oqu(u.searchTerm),t.xp6(2),t.Q6J("ngIf",u.isSearchEditable)}}function ha(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&b){var g=t.oxw(3);t.xp6(1),t.hij(" \xa0\u2265 ",g.searchCutoff," ")}}function id(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"div"),t.TgZ(2,"span",24),t._uU(3),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",30),t._UZ(6,"input",31),t.TgZ(7,"button",27),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(2);return U.copySmiles(U.smiles)}),t._UZ(8,"mat-icon",32),t.qZA(),t.YNc(9,ha,2,1,"span",19),t.qZA(),t.qZA(),t.TgZ(10,"div",25),t.TgZ(11,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).editStructureSearch()}),t._UZ(12,"mat-icon",33),t.qZA(),t.TgZ(13,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).clearStructureSearch()}),t._UZ(14,"mat-icon",28),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(3),t.hij("",u.structureSearchTerm&&u.searchType," Query:"),t.xp6(3),t.Q6J("value",u.smiles),t.xp6(3),t.Q6J("ngIf",u.searchType&&"similarity"==u.searchType)}}function Vl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"div"),t.TgZ(2,"span",24),t._uU(3,"Sequence Query:"),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",30),t.TgZ(6,"span"),t._uU(7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",25),t.TgZ(9,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).editSequenceSearh()}),t._UZ(10,"mat-icon",33),t.qZA(),t.TgZ(11,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).clearSequenceSearch()}),t._UZ(12,"mat-icon",28),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(7),t.Oqu(u.getSequenceDisplay(u.sequenceSearchTerm))}}function sl(b,L){if(1&b&&(t.TgZ(0,"div",18),t.YNc(1,Vt,5,0,"div",19),t.YNc(2,Mo,2,0,"div",19),t.TgZ(3,"div",20),t.YNc(4,Zr,11,2,"div",21),t.YNc(5,id,15,3,"div",21),t.YNc(6,Vl,13,1,"div",21),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",!g.matchTypes||0===g.matchTypes.length),t.xp6(1),t.Q6J("ngIf",g.matchTypes&&g.matchTypes.length>0),t.xp6(2),t.Q6J("ngIf",g.searchTerm),t.xp6(1),t.Q6J("ngIf",g.smiles),t.xp6(1),t.Q6J("ngIf",g.sequenceSearchTerm)}}function xl(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1,"Other Match"),t.qZA())}function Mu(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1,"Exact Match"),t.qZA())}function xu(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1,"Contains Match"),t.qZA())}function Hl(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1,"Contains Match"),t.qZA())}function Su(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1,"Contains Match"),t.qZA())}function yc(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1,"No Match"),t.qZA())}function No(b,L){1&b&&(t.TgZ(0,"div"),t._uU(1,"Unknown Match"),t.qZA())}function jl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",52),t.NdJ("click",function(){var re=t.CHM(g).$implicit;return t.oxw(4).restricSearh(re.luceneQuery)}),t.TgZ(1,"div",53),t._uU(2),t.qZA(),t.TgZ(3,"div",54),t._uU(4),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(2),t.hij(" ",u.displayField," "),t.xp6(2),t.hij(" ",u.count," ")}}function Jl(b,L){if(1&b&&(t.TgZ(0,"div"),t.TgZ(1,"div",48),t.YNc(2,xl,2,0,"div",49),t.YNc(3,Mu,2,0,"div",49),t.YNc(4,xu,2,0,"div",49),t.YNc(5,Hl,2,0,"div",49),t.YNc(6,Su,2,0,"div",49),t.YNc(7,yc,2,0,"div",49),t.YNc(8,No,2,0,"div",50),t.qZA(),t.YNc(9,jl,5,2,"button",51),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngSwitch",g),t.xp6(1),t.Q6J("ngSwitchCase","ADDITIONAL"),t.xp6(1),t.Q6J("ngSwitchCase","FULL"),t.xp6(1),t.Q6J("ngSwitchCase","CONTAINS"),t.xp6(1),t.Q6J("ngSwitchCase","WORD"),t.xp6(1),t.Q6J("ngSwitchCase","WORD_STARTS_WITH"),t.xp6(1),t.Q6J("ngSwitchCase","NO_MATCH"),t.xp6(2),t.Q6J("ngForOf",u.narrowSearchSuggestions[g])}}function Sl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",37),t.TgZ(1,"div",38),t.TgZ(2,"div",39),t.TgZ(3,"div"),t._uU(4," Would you like to restrict this search to a field? "),t.qZA(),t._uU(5,"\xa0 "),t.TgZ(6,"button",40),t.NdJ("menuOpened",function(){return t.CHM(g),t.oxw(2).increaseOverlayZindex()})("menuClosed",function(){return t.CHM(g),t.oxw(2).decreaseOverlayZindex()}),t.TgZ(7,"span"),t._uU(8,"Fields "),t.qZA(),t._uU(9),t._UZ(10,"mat-icon",41),t.qZA(),t.TgZ(11,"button",42),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).clearFilters()}),t.TgZ(12,"span"),t._uU(13,"RESET"),t.qZA(),t.qZA(),t.TgZ(14,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).editAdvancedSearch()}),t._UZ(15,"mat-icon",29),t.qZA(),t.TgZ(16,"mat-menu",43,44),t.YNc(18,Jl,10,8,"div",45),t.qZA(),t.qZA(),t.qZA(),t.TgZ(19,"div",38),t.TgZ(20,"div",46),t._uU(21," For more options use the "),t.TgZ(22,"a",47),t._uU(23," Advanced Search"),t.qZA(),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.MAs(17),M=t.oxw(2);t.xp6(6),t.Q6J("matMenuTriggerFor",u),t.xp6(3),t.hij("\xa0 ",M.narrowSearchSuggestionsCount," "),t.xp6(9),t.Q6J("ngForOf",M.sortMatchTypes(M.matchTypes))}}function Tu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",59),t.TgZ(1,"div"),t.TgZ(2,"span",24),t._uU(3,"Search Query:"),t.qZA(),t._uU(4,"\xa0 "),t.TgZ(5,"span"),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div",25),t.TgZ(8,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).editAdvancedSearch()}),t._UZ(9,"mat-icon",60),t.qZA(),t.TgZ(10,"button",61),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).clearSearch()}),t._UZ(11,"mat-icon",62),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(3);t.xp6(6),t.Oqu(u.searchTerm)}}function Wc(b,L){1&b&&t._UZ(0,"mat-icon",69)}function lo(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",59),t.TgZ(1,"div",63),t.TgZ(2,"span",64),t.YNc(3,Wc,1,0,"mat-icon",65),t._uU(4),t.qZA(),t.TgZ(5,"span",66),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div",25),t.TgZ(8,"button",67),t.NdJ("click",function(){var re=t.CHM(g).$implicit;return re.removeFacet(re.type,re.bool,re.val)}),t._UZ(9,"mat-icon",68),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(3),t.Q6J("ngIf",!u.bool),t.xp6(1),t.hij(" ",u.type,": "),t.xp6(2),t.hij(" ",u.val," ")}}function vs(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",70),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).clearFilters()}),t.TgZ(1,"span"),t._uU(2,"RESET"),t.qZA(),t.qZA()}}function Au(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&b){var g=t.oxw(4);t.xp6(1),t.hij(" \xa0\u2265 ",g.searchCutoff," ")}}function lr(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(4).editAdvancedSearch()}),t._UZ(1,"mat-icon",72),t.qZA()}}function ad(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(4).editStructureSearch()}),t._UZ(1,"mat-icon",73),t.qZA()}}function hp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"div"),t.TgZ(2,"span",24),t._uU(3),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",30),t._UZ(6,"input",31),t.TgZ(7,"button",27),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(3);return U.copySmiles(U.smiles)}),t._UZ(8,"mat-icon",71),t.qZA(),t.YNc(9,Au,2,1,"span",19),t.qZA(),t.qZA(),t.TgZ(10,"div",25),t.YNc(11,lr,2,0,"button",26),t.YNc(12,ad,2,0,"button",26),t.TgZ(13,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).clearStructureSearch()}),t._UZ(14,"mat-icon",28),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(3);t.xp6(3),t.hij("",u.structureSearchTerm&&u.searchType," Query:"),t.xp6(3),t.Q6J("value",u.smiles),t.xp6(3),t.Q6J("ngIf",u.searchType&&"similarity"==u.searchType),t.xp6(2),t.Q6J("ngIf",u.isSearchEditable),t.xp6(1),t.Q6J("ngIf",!u.isSearchEditable)}}function ci(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"div"),t.TgZ(2,"span",24),t._uU(3,"Sequence Query:"),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",30),t.TgZ(6,"span"),t._uU(7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",25),t.TgZ(9,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).editSequenceSearh()}),t._UZ(10,"mat-icon",33),t.qZA(),t.TgZ(11,"button",27),t.NdJ("click",function(){return t.CHM(g),t.oxw(3).clearSequenceSearch()}),t._UZ(12,"mat-icon",28),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(3);t.xp6(7),t.Oqu(u.getSequenceDisplay(u.sequenceSearchTerm))}}function _p(b,L){if(1&b&&(t.TgZ(0,"div",55),t.YNc(1,Tu,12,1,"div",56),t.YNc(2,lo,10,3,"div",57),t.YNc(3,vs,3,0,"button",58),t.YNc(4,hp,15,5,"div",21),t.YNc(5,ci,13,1,"div",21),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",g.searchTerm),t.xp6(1),t.Q6J("ngForOf",g.displayFacets),t.xp6(1),t.Q6J("ngIf",g.displayFacets&&g.displayFacets.length>0),t.xp6(1),t.Q6J("ngIf",g.smiles),t.xp6(1),t.Q6J("ngIf",g.sequenceSearchTerm)}}function gp(b,L){if(1&b&&(t.TgZ(0,"mat-option",17),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.Q6J("value",g.value),t.xp6(1),t.hij(" ",g.display," ")}}function xo(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",52),t.NdJ("click",function(){var re=t.CHM(g).$implicit;return t.oxw(3).export(re.link.url,re.extension)}),t._uU(1),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(1),t.hij(" ",u.displayname," ")}}function Ia(b,L){if(1&b&&(t.TgZ(0,"button",132),t._UZ(1,"mat-icon",133),t._uU(2," Export "),t.qZA()),2&b){t.oxw();var g=t.MAs(33);t.Q6J("matMenuTriggerFor",g)}}function ll(b,L){}function rd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"app-substance-summary-card",134),t.NdJ("openImage",function(re){return t.CHM(g),t.oxw(3).openImageModal(re)}),t.qZA()}if(2&b){var u=L.$implicit,M=t.oxw(3);t.Q6J("substance",u)("showAudit",M.showAudit)("names",M.names[u.uuid])("codeSystemNames",M.codes[u.uuid]&&M.codes[u.uuid].codeSystemNames)("codeSystems",M.codes[u.uuid]&&M.codes[u.uuid].codeSystems)}}function _r(b,L){1&b&&(t.TgZ(0,"th",135),t._uU(1," Name "),t.qZA())}var bc=function(L){return["/substances",L]};function Ql(b,L){if(1&b&&(t.TgZ(0,"td",136),t.TgZ(1,"a",137),t._UZ(2,"span",138),t.qZA(),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(2,bc,g.uuid)),t.xp6(1),t.Q6J("innerHTML",g._nameHTML?g._nameHTML:g._name,t.oJD)}}function od(b,L){1&b&&(t.TgZ(0,"th",135),t._uU(1," Approval ID "),t.qZA())}function sd(b,L){if(1&b&&(t.TgZ(0,"td",136),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Oqu(g.approvalID)}}function Ro(b,L){1&b&&(t.TgZ(0,"th",135),t._uU(1," Names "),t.qZA())}function xr(b,L){1&b&&(t.TgZ(0,"span"),t._uU(1,"; "),t.qZA())}function Wl(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"span",138),t.YNc(2,xr,2,0,"span",19),t.qZA()),2&b){var g=L.$implicit,u=L.last;t.xp6(1),t.Q6J("innerHTML",g._nameHTML?g._nameHTML:g.name,t.oJD),t.xp6(1),t.Q6J("ngIf",!u)}}function cl(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Wl,3,2,"div",45),t.ALo(2,"take"),t.qZA()),2&b){var g=t.oxw().$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",t.xi3(2,1,u.names[g.uuid],4))}}function lc(b,L){if(1&b&&(t.TgZ(0,"td",136),t.YNc(1,cl,3,4,"span",19),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngIf",u.names[g.uuid]&&u.names[g.uuid].length)}}function zc(b,L){1&b&&(t.TgZ(0,"th",135),t._uU(1," Codes "),t.qZA())}function Pu(b,L){if(1&b&&(t.TgZ(0,"span"),t.TgZ(1,"a",139),t._uU(2),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.xp6(1),t.Q6J("href",g.url,t.LSH),t.xp6(1),t.hij(" ",g.code.trim()," ")}}function Is(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.xp6(1),t.Oqu(g.code.trim())}}function Gc(b,L){1&b&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function ul(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Pu,3,2,"span",19),t.YNc(2,Is,2,1,"span",19),t.YNc(3,Gc,2,0,"span",19),t.qZA()),2&b){var g=L.$implicit,u=L.last;t.xp6(1),t.Q6J("ngIf",g.url),t.xp6(1),t.Q6J("ngIf",!g.url),t.xp6(1),t.Q6J("ngIf",!u)}}function So(b,L){if(1&b&&(t.TgZ(0,"span"),t.TgZ(1,"div"),t.TgZ(2,"strong"),t._uU(3),t.qZA(),t._uU(4,":\xa0 "),t.YNc(5,ul,4,3,"span",45),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(2).$implicit,M=t.oxw(3);t.xp6(3),t.Oqu(g),t.xp6(2),t.Q6J("ngForOf",M.codes[u.uuid].codeSystems[g])}}function To(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,So,6,2,"span",45),t.ALo(2,"take"),t.qZA()),2&b){var g=t.oxw().$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",t.xi3(2,1,u.sortCodeSystems(u.codes[g.uuid].codeSystemNames),5))}}function Uo(b,L){if(1&b&&(t.TgZ(0,"td",136),t.YNc(1,To,3,4,"span",19),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngIf",u.codes[g.uuid]&&u.codes[g.uuid].codeSystems)}}function Tl(b,L){1&b&&(t.TgZ(0,"th",135),t._uU(1," Actions "),t.qZA())}function Cc(b,L){if(1&b&&(t.TgZ(0,"button",140),t._UZ(1,"mat-icon",105),t.qZA()),2&b){t.oxw();var g=t.MAs(13);t.Q6J("matMenuTriggerFor",g)}}var ys=function(L){return["/substances",L,"edit"]};function Du(b,L){if(1&b&&(t.TgZ(0,"a",149),t._UZ(1,"mat-icon",33),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(1,ys,g.uuid))}}function ld(b,L){if(1&b&&(t.TgZ(0,"button",140),t._UZ(1,"mat-icon",150),t.qZA()),2&b){t.oxw();var g=t.MAs(17);t.Q6J("matMenuTriggerFor",g)}}function Mc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",52),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2).$implicit;return t.oxw(3).getMol(M.uuid,(M.approvalID?M.approvalID.toString():M.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function cd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",52),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2).$implicit;return t.oxw(3).getMol(M.uuid,(M.approvalID?M.approvalID.toString():M.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function xc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",52),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2).$implicit;return t.oxw(3).getFasta(M.uuid,(M.approvalID?M.approvalID.toString():M.uuid.toString())+".fas")}),t.TgZ(1,"span"),t._uU(2,"Download Fasta"),t.qZA(),t.qZA()}}function kr(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Mc,3,0,"a",151),t.YNc(2,cd,3,0,"a",151),t.YNc(3,xc,3,0,"a",151),t.qZA()),2&b){var g=t.oxw().$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngIf",g.structure),t.xp6(1),t.Q6J("ngIf",g.polymer),t.xp6(1),t.Q6J("ngIf",(g.protein||g.nucleicAcid)&&!u.showAudit)}}var Ls=function(){return["/structure-search"]},Fs=function(L){return{structure:L}};function zr(b,L){if(1&b&&(t.TgZ(0,"a",152),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Ls))("queryParams",t.VKq(3,Fs,g.structure.id))}}function Al(b,L){if(1&b&&(t.TgZ(0,"a",152),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Ls))("queryParams",t.VKq(3,Fs,g.polymer.displayStructure.id))}}var Ns=function(L){return["/substances/register",L]},es=function(L){return{copy:L}};function wu(b,L){if(1&b&&(t.TgZ(0,"a",153),t.TgZ(1,"span"),t._uU(2,"Copy Substance to New Form"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,Ns,g.substanceClass))("queryParams",t.VKq(4,es,g.uuid))}}var Gr=function(L){return{copy:L,copyType:"definition"}};function Kc(b,L){if(1&b&&(t.TgZ(0,"a",154),t.TgZ(1,"span"),t._uU(2,"Copy Definition to New Form"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,Ns,g.substanceClass))("queryParams",t.VKq(4,Gr,g.uuid))}}function Ou(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"td",136),t.TgZ(1,"button",140),t._UZ(2,"mat-icon",133),t.qZA(),t.YNc(3,Cc,2,1,"button",141),t.YNc(4,Du,2,3,"a",142),t.YNc(5,ld,2,1,"button",141),t.TgZ(6,"mat-menu",null,143),t.TgZ(8,"a",52),t.NdJ("click",function(){var Wt=t.CHM(g).$implicit;return t.oxw(3).downloadJson(Wt.uuid)}),t.TgZ(9,"span"),t._uU(10,"Download JSON"),t.qZA(),t.qZA(),t.YNc(11,kr,4,3,"span",19),t.qZA(),t.TgZ(12,"mat-menu",null,144),t.YNc(14,zr,3,5,"a",145),t.YNc(15,Al,3,5,"a",145),t.qZA(),t.TgZ(16,"mat-menu",null,146),t.YNc(18,wu,3,6,"a",147),t.YNc(19,Kc,3,6,"a",148),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit,M=t.MAs(7),U=t.oxw(3);t.xp6(1),t.Q6J("matMenuTriggerFor",M),t.xp6(2),t.Q6J("ngIf",u.structure||u.polymer),t.xp6(1),t.Q6J("ngIf",U.isAdmin),t.xp6(1),t.Q6J("ngIf",U.isAdmin),t.xp6(6),t.Q6J("ngIf",u.structure||(u.protein||u.nucleicAcid)&&!U.showAudit||u.polymer),t.xp6(3),t.Q6J("ngIf",u.structure),t.xp6(1),t.Q6J("ngIf",u.polymer),t.xp6(3),t.Q6J("ngIf",U.isAdmin),t.xp6(1),t.Q6J("ngIf",U.isAdmin)}}function ud(b,L){1&b&&t._UZ(0,"tr",155)}function Ao(b,L){1&b&&t._UZ(0,"tr",156)}function Rs(b,L){if(1&b&&(t.TgZ(0,"div",168),t.TgZ(1,"mat-chip-list",169),t.TgZ(2,"mat-chip",170),t._uU(3),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2).$implicit;t.xp6(3),t.Oqu(g.structure.stereochemistry)}}function dd(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,Rs,4,1,"div",167),t.qZA()),2&b){var g=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",g.structure.stereochemistry)}}function ar(b,L){if(1&b&&(t.TgZ(0,"div"),t.TgZ(1,"div",168),t.TgZ(2,"mat-chip-list",169),t.TgZ(3,"mat-chip",170),t._uU(4),t.ALo(5,"uppercase"),t.ALo(6,"facetDisplay"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.xp6(4),t.Oqu(t.lcZ(5,1,t.xi3(6,3,g.substanceClass,"types")))}}function Sc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"a",171),t.NdJ("click",function(){t.CHM(g);var U=t.oxw().$implicit;return t.oxw(3).openImageModal(U)}),t._UZ(2,"img",172),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit;t.xp6(2),t.Q6J("entityId",u.uuid)("atomMaps",u._matchContext&&u._matchContext.atomMaps||null)}}function pd(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"img",173),t.qZA()),2&b){var g=t.oxw().$implicit;t.xp6(1),t.Q6J("entityId",g.uuid)("atomMaps",g._matchContext&&g._matchContext.atomMaps||null)}}function $c(b,L){if(1&b&&(t.TgZ(0,"div"),t.TgZ(1,"span",174),t._uU(2,"similarity:"),t.qZA(),t.TgZ(3,"span",175),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.xp6(4),t.Oqu(g._matchContext.similarity.toFixed(3))}}function ts(b,L){1&b&&t._UZ(0,"mat-icon",176)}function Pl(b,L){if(1&b&&(t.TgZ(0,"button",140),t._UZ(1,"mat-icon",178),t.qZA()),2&b){t.oxw(2);var g=t.MAs(30);t.Q6J("matMenuTriggerFor",g)}}function Tc(b,L){if(1&b&&(t.TgZ(0,"a",179),t._UZ(1,"mat-icon",33),t.qZA()),2&b){var g=t.oxw(2).$implicit;t.Q6J("routerLink",t.VKq(1,ys,g.uuid))}}function _a(b,L){if(1&b&&(t.TgZ(0,"button",140),t._UZ(1,"mat-icon",150),t.qZA()),2&b){t.oxw(2);var g=t.MAs(34);t.Q6J("matMenuTriggerFor",g)}}function F(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Pl,2,1,"button",141),t.YNc(2,Tc,2,3,"a",177),t.YNc(3,_a,2,1,"button",141),t.qZA()),2&b){var g=t.oxw().$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngIf",g.structure||g.polymer),t.xp6(1),t.Q6J("ngIf",u.isAdmin),t.xp6(1),t.Q6J("ngIf",u.isAdmin)}}function le(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",52),t.NdJ("click",function(){t.CHM(g);var M=t.oxw().$implicit;return t.oxw(3).getMol(M.uuid,(M.approvalID?M.approvalID.toString():M.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function We(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",52),t.NdJ("click",function(){t.CHM(g);var M=t.oxw().$implicit;return t.oxw(3).getMol(M.uuid,(M.approvalID?M.approvalID.toString():M.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function Mt(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",52),t.NdJ("click",function(){t.CHM(g);var M=t.oxw().$implicit;return t.oxw(3).getFasta(M.uuid,(M.approvalID?M.approvalID.toString():M.uuid.toString())+".fas")}),t.TgZ(1,"span"),t._uU(2,"Download Fasta"),t.qZA(),t.qZA()}}function Yt(b,L){if(1&b&&(t.TgZ(0,"a",152),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Ls))("queryParams",t.VKq(3,Fs,g.structure.id))}}function Cn(b,L){if(1&b&&(t.TgZ(0,"a",152),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Ls))("queryParams",t.VKq(3,Fs,g.polymer.displayStructure.id))}}function qn(b,L){if(1&b&&(t.TgZ(0,"a",153),t.TgZ(1,"span"),t._uU(2,"Copy Substance to New Form"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,Ns,g.substanceClass))("queryParams",t.VKq(4,es,g.uuid))}}function Di(b,L){if(1&b&&(t.TgZ(0,"a",154),t.TgZ(1,"span"),t._uU(2,"Copy Definition to New Form"),t.qZA(),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,Ns,g.substanceClass))("queryParams",t.VKq(4,Gr,g.uuid))}}function ca(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card",157),t.TgZ(1,"mat-card-title"),t.TgZ(2,"div",158),t.TgZ(3,"a",159),t._uU(4),t.qZA(),t.qZA(),t.qZA(),t.TgZ(5,"mat-card-content"),t.TgZ(6,"div",160),t.TgZ(7,"div",161),t.YNc(8,dd,2,1,"div",19),t.YNc(9,ar,7,6,"div",19),t.TgZ(10,"div",162),t.YNc(11,Sc,3,2,"div",19),t.YNc(12,pd,2,2,"div",19),t.qZA(),t.YNc(13,$c,5,1,"div",19),t.TgZ(14,"div",163),t._UZ(15,"a",164),t.YNc(16,ts,1,0,"mat-icon",165),t.qZA(),t.TgZ(17,"div",166),t.TgZ(18,"button",140),t._UZ(19,"mat-icon",133),t.qZA(),t.YNc(20,F,4,3,"span",19),t.qZA(),t.qZA(),t.TgZ(21,"mat-menu",null,143),t.TgZ(23,"a",52),t.NdJ("click",function(){var Wt=t.CHM(g).$implicit;return t.oxw(3).downloadJson(Wt.uuid)}),t.TgZ(24,"span"),t._uU(25,"Download JSON"),t.qZA(),t.qZA(),t.YNc(26,le,3,0,"a",151),t.YNc(27,We,3,0,"a",151),t.YNc(28,Mt,3,0,"a",151),t.qZA(),t.TgZ(29,"mat-menu",null,144),t.YNc(31,Yt,3,5,"a",145),t.YNc(32,Cn,3,5,"a",145),t.qZA(),t.TgZ(33,"mat-menu",null,146),t.YNc(35,qn,3,6,"a",147),t.YNc(36,Di,3,6,"a",148),t.qZA(),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit,M=t.MAs(22),U=t.oxw(3);t.xp6(4),t.hij(" ",u.approvalID," "),t.xp6(4),t.Q6J("ngIf",u.structure),t.xp6(1),t.Q6J("ngIf",!u.structure),t.xp6(2),t.Q6J("ngIf",u.structure||u.polymer),t.xp6(1),t.Q6J("ngIf",!u.structure&&!u.polymer),t.xp6(1),t.Q6J("ngIf",u._matchContext&&u._matchContext.similarity),t.xp6(2),t.Q6J("innerHTML",u._nameHTML?u._nameHTML:u._name,t.oJD)("routerLink",t.VKq(19,bc,u.uuid))("matTooltip",u._name),t.xp6(1),t.Q6J("ngIf",u.access&&u.access.length>0),t.xp6(2),t.Q6J("matMenuTriggerFor",M),t.xp6(2),t.Q6J("ngIf",u.structure||(u.protein||u.nucleicAcid)&&!U.showAudit||u.polymer),t.xp6(6),t.Q6J("ngIf",u.structure),t.xp6(1),t.Q6J("ngIf",u.polymer),t.xp6(1),t.Q6J("ngIf",(u.protein||u.nucleicAcid)&&!U.showAudit),t.xp6(3),t.Q6J("ngIf",u.structure),t.xp6(1),t.Q6J("ngIf",u.polymer),t.xp6(3),t.Q6J("ngIf",U.isAdmin),t.xp6(1),t.Q6J("ngIf",U.isAdmin)}}var Ha=function(){return[5,10,50,100]},co=function(L){return{"bad-page":L}};function Vr(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div"),t.TgZ(2,"div",74),t.TgZ(3,"p",75),t._uU(4,"Results below are an incomplete preview"),t.qZA(),t.TgZ(5,"div",76),t.TgZ(6,"div",77),t._UZ(7,"mat-spinner",78),t.qZA(),t.TgZ(8,"p",79),t._uU(9),t.qZA(),t.TgZ(10,"button",80),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).clickToRefreshPreview()}),t._uU(11,"Refresh Preview"),t.qZA(),t.TgZ(12,"button",81),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).clickToCancel()}),t._uU(13,"Cancel"),t.qZA(),t.qZA(),t.TgZ(14,"p",82),t._uU(15,"Page will auto-reload when search is complete"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(16,"div",83),t.TgZ(17,"div",84),t.TgZ(18,"span",85),t._uU(19,"Browse Substances"),t.qZA(),t.qZA(),t.TgZ(20,"mat-button-toggle-group",86),t.NdJ("change",function(U){return t.CHM(g),t.oxw(2).updateView(U)}),t.TgZ(21,"mat-button-toggle",87),t._UZ(22,"mat-icon",88),t.qZA(),t.TgZ(23,"mat-button-toggle",89),t._UZ(24,"mat-icon",90),t.qZA(),t.TgZ(25,"mat-button-toggle",91),t._UZ(26,"mat-icon",92),t.qZA(),t.qZA(),t.TgZ(27,"mat-form-field",93),t.TgZ(28,"mat-label"),t._uU(29,"Sort By"),t.qZA(),t.TgZ(30,"mat-select",94),t.NdJ("selectionChange",function(){return t.CHM(g),t.oxw(2).searchSubstances()})("openedChange",function(U){return t.CHM(g),t.oxw(2).openedSortSubstances(U)})("ngModelChange",function(U){return t.CHM(g),t.oxw(2).order=U}),t.YNc(31,gp,2,2,"mat-option",16),t.qZA(),t.qZA(),t.TgZ(32,"mat-menu",null,95),t.YNc(34,xo,2,1,"a",51),t.TgZ(35,"mat-checkbox",96),t.NdJ("click",function(U){t.CHM(g);var re=t.oxw(2);return re.privateExport=!re.privateExport,U.stopPropagation()}),t._uU(36," Include Private Data "),t.qZA(),t.qZA(),t.TgZ(37,"div",97),t.YNc(38,Ia,3,1,"button",98),t.qZA(),t._UZ(39,"div",99),t.qZA(),t.TgZ(40,"div",100),t.TgZ(41,"div",101),t.TgZ(42,"mat-form-field",102),t.TgZ(43,"input",103),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(2).wildCardText=U})("change",function(){return t.CHM(g),t.oxw(2).saveWildCardText()})("keyup.enter",function(){return t.CHM(g),t.oxw(2).wildCardSearch()}),t.qZA(),t.qZA(),t.TgZ(44,"button",104),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).wildCardSearch()}),t._UZ(45,"mat-icon",105),t.qZA(),t.qZA(),t._UZ(46,"span",106),t.TgZ(47,"mat-paginator",107,108),t.NdJ("page",function(U){return t.CHM(g),t.oxw(2).changePage(U)}),t.qZA(),t.TgZ(49,"div",109),t.TgZ(50,"span",110),t._uU(51,"Page: "),t.qZA(),t.TgZ(52,"mat-form-field",111),t.TgZ(53,"input",112,113),t.NdJ("keydown.enter",function(U){return t.CHM(g),t.oxw(2).customPage(U)})("input",function(U){t.CHM(g);var re=t.oxw(2);return re.invalidPage=!re.validatePageInput(U)})("focusout",function(){t.CHM(g);var U=t.MAs(54),re=t.oxw(2);return U.value=re.pageIndex+1,re.invalidPage=!1}),t.qZA(),t.qZA(),t.TgZ(55,"span",110),t._uU(56),t.qZA(),t.qZA(),t.qZA(),t.YNc(57,ll,0,0,"ng-template",114),t._UZ(58,"div",115),t.TgZ(59,"div",9),t.TgZ(60,"div",12),t.YNc(61,rd,1,5,"app-substance-summary-card",13),t.qZA(),t.TgZ(62,"div",116),t.TgZ(63,"div",117),t.TgZ(64,"table",118),t.ynx(65,119),t.YNc(66,_r,2,0,"th",120),t.YNc(67,Ql,3,4,"td",121),t.BQk(),t.ynx(68,122),t.YNc(69,od,2,0,"th",120),t.YNc(70,sd,2,1,"td",121),t.BQk(),t.ynx(71,123),t.YNc(72,Ro,2,0,"th",120),t.YNc(73,lc,2,1,"td",121),t.BQk(),t.ynx(74,124),t.YNc(75,zc,2,0,"th",120),t.YNc(76,Uo,2,1,"td",121),t.BQk(),t.ynx(77,125),t.YNc(78,Tl,2,0,"th",120),t.YNc(79,Ou,20,9,"td",121),t.BQk(),t.YNc(80,ud,1,0,"tr",126),t.YNc(81,Ao,1,0,"tr",127),t.qZA(),t.qZA(),t.qZA(),t.TgZ(82,"div",128),t.YNc(83,ca,37,21,"mat-card",129),t.qZA(),t.qZA(),t.TgZ(84,"div",130),t.TgZ(85,"div"),t.TgZ(86,"mat-paginator",131,108),t.NdJ("page",function(U){return t.CHM(g),t.oxw(2).changePage(U)}),t.qZA(),t.qZA(),t.TgZ(88,"div",109),t.TgZ(89,"span",110),t._uU(90,"Page: "),t.qZA(),t.TgZ(91,"mat-form-field",111),t.TgZ(92,"input",112,113),t.NdJ("keydown.enter",function(U){return t.CHM(g),t.oxw(2).customPage(U)})("input",function(U){t.CHM(g);var re=t.oxw(2);return re.invalidPage=!re.validatePageInput(U)})("focusout",function(){t.CHM(g);var U=t.MAs(54),re=t.oxw(2);return U.value=re.pageIndex+1,re.invalidPage=!1}),t.qZA(),t.qZA(),t.TgZ(94,"span",110),t._uU(95),t.qZA(),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(7),t.Q6J("diameter",15),t.xp6(2),t.hij("searching... ",u.totalSubstances," matches"),t.xp6(11),t.Q6J("value",u.view),t.xp6(10),t.Q6J("ngModel",u.order),t.xp6(1),t.Q6J("ngForOf",u.sortValues),t.xp6(3),t.Q6J("ngForOf",u.exportOptions),t.xp6(4),t.Q6J("ngIf",u.exportOptions&&u.exportOptions.length>0&&u.isLoggedIn),t.xp6(4),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("ngModel",u.wildCardText),t.xp6(4),t.Q6J("length",u.totalSubstances)("pageIndex",u.pageIndex)("pageSize",u.pageSize)("pageSizeOptions",t.DdM(32,Ha))("showFirstLastButtons",!0),t.xp6(5),t.Q6J("ngClass",t.VKq(33,co,u.invalidPage)),t.xp6(1),t.Q6J("ngClass",t.VKq(35,co,u.invalidPage))("value",u.pageIndex+1),t.xp6(3),t.hij(" of ",u.lastPage,""),t.xp6(3),t.Q6J("ngClass",u.view),t.xp6(2),t.Q6J("ngForOf",u.substances),t.xp6(3),t.Q6J("dataSource",u.substances),t.xp6(16),t.Q6J("matHeaderRowDef",u.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",u.displayedColumns),t.xp6(2),t.Q6J("ngForOf",u.substances),t.xp6(3),t.Q6J("length",u.totalSubstances)("pageIndex",u.pageIndex)("pageSize",u.pageSize)("pageSizeOptions",t.DdM(37,Ha)),t.xp6(5),t.Q6J("ngClass",t.VKq(38,co,u.invalidPage)),t.xp6(1),t.Q6J("ngClass",t.VKq(40,co,u.invalidPage))("value",u.pageIndex+1),t.xp6(3),t.hij(" of ",u.lastPage,"")}}function Bo(b,L){if(1&b&&(t.TgZ(0,"div",34),t.YNc(1,Sl,24,3,"div",35),t.YNc(2,_p,6,5,"ng-template",null,36,t.W1O),t.YNc(4,Vr,96,42,"div",19),t.qZA()),2&b){var g=t.MAs(3),u=t.oxw();t.xp6(1),t.Q6J("ngIf",u.matchTypes&&u.matchTypes.length>0)("ngIfElse",g),t.xp6(3),t.Q6J("ngIf",u.substances&&u.substances.length)}}function vp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"app-substance-summary-card",134),t.NdJ("openImage",function(re){return t.CHM(g),t.oxw().openImageModal(re)}),t.qZA()}if(2&b){var u=L.$implicit,M=t.oxw();t.Q6J("substance",u)("showAudit",M.showAudit)("names",M.names[u.uuid])("codeSystemNames",M.codes[u.uuid]&&M.codes[u.uuid].codeSystemNames)("codeSystems",M.codes[u.uuid]&&M.codes[u.uuid].codeSystems)}}var pm=function(L){return{collapsed:L}},yp=function(L){return{hidden:L,"exact-matches-container":!0}},bp=function(){var b=function(){function L(g,u,M,U,re,lt,Wt,nn,bn,Bn,Xn,oi,pi,ii,Ui,Qi,Lr,Tr,Xa,$r,er){var or=this;(0,p.Z)(this,L),this.activatedRoute=g,this.substanceService=u,this.configService=M,this.emitService=U,this.loadingService=re,this.notificationService=lt,this.utilsService=Wt,this.router=nn,this.dialog=bn,this.gaService=Bn,this.authService=Xn,this.structureService=oi,this.overlayContainerService=pi,this.location=ii,this.facetManagerService=Ui,this.componentFactoryResolver=Qi,this.substanceTextSearchService=Lr,this.title=Tr,this.cvService=Xa,this.wildCardService=$r,this.dynamicContentItems=er,this.invalidPage=!1,this.isLoading=!0,this.privateExport=!1,this.disableExport=!1,this.isError=!1,this.isRefresher=!1,this.hasBackdrop=!1,this.view="cards",this.displayedColumns=["name","approvalID","names","codes","actions"],this.sortValues=Pn.J,this.subscriptions=[],this.isAdmin=!1,this.isLoggedIn=!1,this.showExactMatches=!1,this.names={},this.codes={},this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.isComponentInit=!1,this.displayFacets=[],this.isFacetsParamsInit=!1,this.isCollapsed=!0,this.isSearchEditable=!1,this.showDeprecated=!1,this.previousState=[],this.facetViewCategorySelected="Default",this.facetDisplayType="facetView",this.facetViewCategory=[],this.facetViewControl=new s.NI,this.processResponsiveness=function(){setTimeout(function(){window&&(window.innerWidth<1100?(or.matSideNav.close(),or.isCollapsed=!0,or.hasBackdrop=!0):(or.matSideNav.open(),or.hasBackdrop=!1))})}}return(0,e.Z)(L,[{key:"onPopState",value:function(u){var M=this;setTimeout(function(){M.router.url===M.previousState[0]&&M.ngOnInit()},50)}},{key:"saveWildCardText",value:function(){this.wildCardService.getWildCardText(this.wildCardText)}},{key:"wildCardSearch",value:function(){this.wildCardService.getWildCardText(this.wildCardText),this.setUpPrivateSearchTerm(),this.searchSubstances()}},{key:"ngOnInit",value:function(){var u=this;this.facetManagerService.registerGetFacetsHandler(this.substanceService.getSubstanceFacets),this.gaService.sendPageView("Browse Substances"),this.cvService.getDomainVocabulary("CODE_SYSTEM").pipe((0,Y.q)(1)).subscribe(function(re){u.codeSystem=re.CODE_SYSTEM.dictionary}),this.title.setTitle("Browse Substances"),this.pageSize=10,this.pageIndex=0,this.setUpPrivateSearchTerm(),this.privateStructureSearchTerm=this.activatedRoute.snapshot.queryParams.structure_search||"",this.privateSequenceSearchTerm=this.activatedRoute.snapshot.queryParams.sequence_search||"",this.privateSequenceSearchKey=this.activatedRoute.snapshot.queryParams.sequence_key||"",this.privateSearchType=this.activatedRoute.snapshot.queryParams.type||"",this.activatedRoute.snapshot.queryParams.sequence_key&&this.activatedRoute.snapshot.queryParams.sequence_key.length>9&&(this.sequenceID=this.activatedRoute.snapshot.queryParams.source_id,this.privateSequenceSearchTerm=JSON.parse(sessionStorage.getItem("gsrs_search_sequence_"+this.sequenceID))),this.privateSearchCutoff=Number(this.activatedRoute.snapshot.queryParams.cutoff)||0,this.privateSearchSeqType=this.activatedRoute.snapshot.queryParams.seq_type||"",this.smiles=this.activatedRoute.snapshot.queryParams.smiles||"",this.order=this.activatedRoute.snapshot.queryParams.order||"$root_lastEdited",this.view=this.activatedRoute.snapshot.queryParams.view||"cards",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10;var M=this.activatedRoute.snapshot.queryParams.showDeprecated;this.searchHashFromAdvanced=this.activatedRoute.snapshot.queryParams["g-search-hash"],this.pageSize>500&&(this.pageSize=500),this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var U=this.authService.getAuth().subscribe(function(re){re?u.isLoggedIn=!0:u.showDeprecated=!1,u.isAdmin=u.authService.hasAnyRoles("Updater","SuperUpdater"),u.showAudit=u.authService.hasRoles("admin")});M&&"true"===M&&this.showAudit&&(this.showDeprecated=!0),this.subscriptions.push(U),this.isComponentInit=!0,this.loadComponent(),this.loadFacetViewFromConfig()}},{key:"setUpPrivateSearchTerm",value:function(){this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.wildCardText&&this.wildCardText.length>0&&(this.privateSearchTerm+=this.privateSearchTerm.length>0?' AND "'+this.wildCardText+'"':'"'+this.wildCardText+'"'),this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()))}},{key:"ngAfterViewInit",value:function(){var u=this,M=this.matSideNav.openedStart.subscribe(function(){u.utilsService.handleMatSidenavOpen(1100)});this.subscriptions.push(M);var U=this.matSideNav.closedStart.subscribe(function(){u.utilsService.handleMatSidenavClose()});this.subscriptions.push(U);var re=this.dynamicContentContainer.changes.subscribe(function(lt){var Wt=u.dynamicContentContainer.toArray(),nn=u.dynamicContentItems.reduce(function(Bn,Xn){return Bn.concat(Xn)},[]).filter(function(Bn){return"browseHeader"===Bn.componentType});if(null!=Wt[0]){var bn=Wt[0].viewContainerRef;bn.clear(),nn.forEach(function(Bn){var Xn=u.componentFactoryResolver.resolveComponentFactory(Bn.component);bn.createComponent(Xn).instance.test="testing"})}});this.subscriptions.push(re)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(u){u.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"loadComponent",value:function(){(this.isFacetsParamsInit&&this.isComponentInit||this.isRefresher)&&this.searchSubstances()}},{key:"clipboard",value:function(u){document.addEventListener("copy",function(M){M.clipboardData.setData("text/plain",u),M.preventDefault(),document.removeEventListener("copy",null)}),document.execCommand("copy")}},{key:"changePage",value:function(u){var M,U;this.pageSize!==u.pageSize?(M="select:page-size",U=u.pageSize):this.pageIndex!==u.pageIndex&&(M="icon-button:page-number",U=u.pageIndex+1),this.gaService.sendEvent("substancesContent",M,"pager",U),this.pageSize=u.pageSize,this.pageIndex=u.pageIndex,this.populateUrlQueryParameters(),this.searchSubstances()}},{key:"customPage",value:function(u){if(this.validatePageInput(u)){this.invalidPage=!1;var M=Number(u.target.value)-1;this.pageIndex=M,this.gaService.sendEvent("substancesContent","select:page-number","pager",M),this.populateUrlQueryParameters(),this.searchSubstances()}}},{key:"validatePageInput",value:function(u){if(u&&u.target){var M=Number(u.target.value);if(!isNaN(Number(M))&&Number.isInteger(M)&&M<=this.lastPage&&M>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(u){this.pageIndex=0,this.showDeprecated=!(!u.deprecated||!0!==u.deprecated),this.privateFacetParams=u.facetParam,this.displayFacets=u.displayFacets.filter(function(M){return!("Deprecated"===M.type&&!1===M.bool)}),this.isFacetsParamsInit?this.searchSubstances():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetViewChange",value:function(u){this.facetViewCategorySelected=u.value}},{key:"openedSortSubstances",value:function(u){this.overlayContainer.style.zIndex=u?"1002":"1000"}},{key:"openedFacetViewChange",value:function(u){this.overlayContainer.style.zIndex=u?"1002":"1000"}},{key:"loadFacetViewFromConfig",value:function(){var u=this;this.facetViewControl.setValue(this.facetViewCategorySelected),(this.configService.configData.facets&&this.configService.configData.facets.substances||{}).facetView.forEach(function(U){u.facetViewCategory.push(U.category)}),this.facetViewCategory.push("All")}},{key:"facetsLoaded",value:function(u){u>0?this.processResponsiveness():this.matSideNav.close()}},{key:"searchSubstances",value:function(){var u=this;this.disableExport=!1;var M=this.utilsService.hashCode(this.privateSearchTerm,this.privateStructureSearchTerm,this.privateSequenceSearchTerm,this.privateSearchCutoff,this.privateSearchType,this.privateSearchSeqType,this.pageSize,this.order,this.privateFacetParams,this.pageIndex*this.pageSize,this.showDeprecated);if(null==this.argsHash||this.argsHash!==M){this.isLoading=!0,this.loadingService.setLoading(!0),this.argsHash=M;var re=this.substanceService.getSubstancesSummaries({searchTerm:this.privateSearchTerm,structureSearchTerm:this.privateStructureSearchTerm,sequenceSearchTerm:this.privateSequenceSearchTerm,cutoff:this.privateSearchCutoff,type:this.privateSearchType,seqType:this.privateSearchSeqType,order:this.order,pageSize:this.pageSize,facets:this.privateFacetParams,skip:this.pageIndex*this.pageSize,sequenceSearchKey:this.privateSequenceSearchKey,deprecated:this.showDeprecated}).subscribe(function(lt){if(u.isError=!1,u.totalSubstances=lt.total,u.lastPage=lt.total%u.pageSize==0?lt.total/u.pageSize:Math.floor(lt.total/u.pageSize+1),lt.exactMatches&<.exactMatches.length>0&&0===lt.skip&&(!lt.sideway||lt.sideway.length<2)&&(u.exactMatchSubstances=lt.exactMatches,u.showExactMatches=!0),u.substances=lt.content,u.totalSubstances=lt.total,lt.facets&<.facets.length>0&&(u.rawFacets=lt.facets),u.narrowSearchSuggestions={},u.matchTypes=[],u.narrowSearchSuggestionsCount=0,lt.narrowSearchSuggestions&<.narrowSearchSuggestions.length&&(lt.narrowSearchSuggestions.forEach(function(bn){u.codeSystem&&u.codeSystem[bn.displayField]&&(bn.displayField=u.codeSystem[bn.displayField].display),null==u.narrowSearchSuggestions[bn.matchType]&&(u.narrowSearchSuggestions[bn.matchType]=[],"WORD"===bn.matchType?u.matchTypes.unshift(bn.matchType):u.matchTypes.push(bn.matchType)),u.narrowSearchSuggestions[bn.matchType].push(bn),u.narrowSearchSuggestionsCount++}),u.privateSearchTerm&&!u.utilsService.looksLikeComplexSearchTerm(u.privateSearchTerm))){var Wt=u.utilsService.makeBeginsWithSearchTerm("root_names_name",u.privateSearchTerm.toString()),nn={matchType:"ADDITIONAL",count:0,displayField:"Any Name Begins With",luceneField:"root_names_name",luceneQuery:Wt};u.substanceService.searchSubstances(Wt).subscribe(function(bn){(null==bn?void 0:bn.total)&&bn.total>0&&(nn.count=bn.total,null==u.narrowSearchSuggestions[nn.matchType]&&(u.narrowSearchSuggestions[nn.matchType]=[],"WORD"===nn.matchType?u.matchTypes.unshift(nn.matchType):u.matchTypes.push(nn.matchType)),u.narrowSearchSuggestions[nn.matchType].push(nn),u.narrowSearchSuggestionsCount++)})}u.substanceService.getExportOptions(lt.etag).subscribe(function(bn){u.exportOptions=bn.filter(function(Bn){return!(Bn.extension&&("appxlsx"===Bn.extension||"prodxlsx"===Bn.extension||"ctusxlsx"===Bn.extension||"cteuxlsx"===Bn.extension))})}),u.substanceService.setResult(lt.etag,lt.content,lt.total)},function(lt){u.gaService.sendException("getSubstancesDetails: error from API cal");var Wt={message:"There was an error trying to retrieve substances. Please refresh and try again.",type:et.k.error,milisecondsToShow:6e3};u.isError=!0,u.isLoading=!1,u.loadingService.setLoading(u.isLoading),u.notificationService.setNotification(Wt)},function(){re.unsubscribe(),u.exactMatchSubstances&&u.exactMatchSubstances.length>0&&u.exactMatchSubstances.forEach(function(lt){u.setSubstanceNames(lt.uuid),u.setSubstanceCodes(lt.uuid)}),u.substances.forEach(function(lt){u.setSubstanceNames(lt.uuid),u.setSubstanceCodes(lt.uuid)}),u.isLoading=!1,u.loadingService.setLoading(u.isLoading)})}}},{key:"sortMatchTypes",value:function(u){return Ye.sortBy(u)}},{key:"searchTermOkforBeginsWithSearch",value:function(){return this.privateSearchTerm&&!this.utilsService.looksLikeComplexSearchTerm(this.privateSearchTerm)}},{key:"restricSearh",value:function(u){this.privateSearchTerm=u,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchSubstances(),this.substanceTextSearchService.setSearchValue("main-substance-search",this.privateSearchTerm)}},{key:"export",value:function(u,M){var U=this;if(""!==this.authService.getUser()){var re=this.dialog.open(st.L,{height:"215x",width:"550px",data:{extension:M}});this.overlayContainer.style.zIndex="1002",re.afterClosed().subscribe(function(Wt){U.overlayContainer.style.zIndex=null,Wt&&""!==Wt&&(U.loadingService.setLoading(!0),U.authService.startUserDownload(u,U.privateExport,Wt+"."+M).subscribe(function(bn){U.loadingService.setLoading(!1),U.loadingService.setLoading(!1),U.router.navigate(["/user-downloads/",bn.id])},function(bn){return U.loadingService.setLoading(!1)}))})}else this.disableExport=!0}},{key:"setSubstanceNames",value:function(u){var M=this;this.loadingService.setLoading(!0),this.substanceService.getSubstanceNames(u).pipe((0,Y.q)(1)).subscribe(function(U){M.names[u]=U,M.loadingService.setLoading(!1)},function(U){M.loadingService.setLoading(!1)})}},{key:"setSubstanceCodes",value:function(u){var M=this;this.loadingService.setLoading(!0),this.substanceService.getSubstanceCodes(u).pipe((0,Y.q)(1)).subscribe(function(U){U&&U.length>0&&(M.codes[u]={codeSystemNames:[],codeSystems:{}},U.forEach(function(re){M.codes[u].codeSystems[re.codeSystem]?M.codes[u].codeSystems[re.codeSystem].push(re):(M.codes[u].codeSystems[re.codeSystem]=[re],M.codes[u].codeSystemNames.push(re.codeSystem))}),M.codes[u].codeSystemNames=M.sortCodeSystems(M.codes[u].codeSystemNames),M.codes[u].codeSystemNames.forEach(function(re){M.codes[u].codeSystems[re]=M.codes[u].codeSystems[re].sort(function(lt,Wt){return"PRIMARY"===lt.type&&"PRIMARY"!==Wt.type?1:"PRIMARY"!==lt.type&&"PRIMARY"===Wt.type?-1:0})})),M.loadingService.setLoading(!1)},function(U){M.loadingService.setLoading(!1)})}},{key:"populateUrlQueryParameters",value:function(){var u={queryParams:{}};u.queryParams.search=this.privateSearchTerm,u.queryParams.structure_search=this.privateStructureSearchTerm,u.queryParams.sequence_search=this.privateSequenceSearchTerm,u.queryParams.cutoff=this.privateSearchCutoff,u.queryParams.type=this.privateSearchType,u.queryParams.seq_type=this.privateSearchSeqType,u.queryParams.smiles=this.smiles,u.queryParams.order=this.order,u.queryParams.pageSize=this.pageSize,u.queryParams.pageIndex=this.pageIndex,u.queryParams.skip=this.pageIndex*this.pageSize,u.queryParams.view=this.view,this.previousState.push(this.router.url);var M=this.router.createUrlTree([],{queryParams:u.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(M.toString())}},{key:"editAdvancedSearch",value:function(){var u=on.N.isAnalyticsPrivate?"advanced search term":"".concat(this.privateSearchTerm);if(this.gaService.sendEvent("substancesFiltering","icon-button:edit-advanced-search",u),!this.searchHashFromAdvanced){var M=[];M[0]=this.privateSearchTerm;var U=[],re={condition:"",queryableProperty:"Manual Query Entry",command:"Manual Query Entry",commandInputValues:M,query:this.privateSearchTerm},lt=this.utilsService.hashCode("Substance");localStorage.setItem(lt.toString(),"Substance"),U.push(lt);var Wt=JSON.stringify(re),nn=this.utilsService.hashCode(Wt);localStorage.setItem(nn.toString(),Wt),U.push(nn);var bn=JSON.stringify(U);localStorage.setItem(this.searchTermHash.toString(),bn)}var Bn={queryParams:{"g-search-hash":this.searchTermHash}};Bn.queryParams.structure=this.privateStructureSearchTerm||null,Bn.queryParams.type=this.privateSearchType||null,"similarity"===this.privateSearchType&&(Bn.queryParams.cutoff=this.privateSearchCutoff||0),this.router.navigate(["/advanced-search"],Bn)}},{key:"editStructureSearch",value:function(){var u=on.N.isAnalyticsPrivate?"structure search term":"".concat(this.privateStructureSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff);this.gaService.sendEvent("substancesFiltering","icon-button:edit-structure-search",u);var M={queryParams:{}};M.queryParams.structure=this.privateStructureSearchTerm||null,M.queryParams.type=this.privateSearchType||null,"similarity"===this.privateSearchType&&(M.queryParams.cutoff=this.privateSearchCutoff||0),this.router.navigate(["/structure-search"],M)}},{key:"clearStructureSearch",value:function(){var u=on.N.isAnalyticsPrivate?"structure search term":"".concat(this.privateStructureSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff);this.gaService.sendEvent("substancesFiltering","icon-button:clear-structure-search",u),this.privateStructureSearchTerm="",this.privateSearchType="",this.privateSearchCutoff=0,this.smiles="",this.pageIndex=0,this.populateUrlQueryParameters(),this.searchSubstances()}},{key:"editSequenceSearh",value:function(){var u=on.N.isAnalyticsPrivate?"sequence search term":"".concat(this.privateSequenceSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff,"-").concat(this.privateSearchSeqType);this.gaService.sendEvent("substancesFiltering","icon-button:edit-sequence-search",u);var M={queryParams:{}};M.queryParams.type=this.privateSearchType||null,M.queryParams.cutoff=this.privateSearchCutoff||0,M.queryParams.seq_type=this.privateSearchSeqType||null,sessionStorage.setItem("gsrs_edit_sequence_"+this.sequenceID,JSON.stringify(this.privateSequenceSearchTerm)),M.queryParams.source="edit",M.queryParams.source_id=this.sequenceID,this.router.navigate(["/sequence-search"],M)}},{key:"clearSequenceSearch",value:function(){var u=on.N.isAnalyticsPrivate?"sequence search term":"".concat(this.privateSequenceSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff,"-").concat(this.privateSearchSeqType);this.gaService.sendEvent("substancesFiltering","icon-button:clear-sequence-search",u),this.privateSequenceSearchTerm="",this.privateSequenceSearchKey="",this.privateSearchType="",this.privateSearchCutoff=0,this.privateSearchSeqType="",this.pageIndex=0,this.populateUrlQueryParameters(),this.searchSubstances()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("substancesFiltering","icon-button:clear-search",on.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.wildCardText="",this.searchTermHash=null,this.pageIndex=0,this.populateUrlQueryParameters(),this.substanceTextSearchService.setSearchValue("main-substance-search"),this.searchSubstances()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(u){u.removeFacet(u.type,u.bool,u.val)}),null!=this.privateStructureSearchTerm&&""!==this.privateStructureSearchTerm?this.clearStructureSearch():null!=this.privateSequenceSearchTerm&&""!==this.privateSequenceSearchTerm||null!=this.privateSequenceSearchKey&&""!==this.privateSequenceSearchKey?this.clearSequenceSearch():this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"clickToRefreshPreview",value:function(){this.emitService.setRefresh(!0),this.isRefresher=!0,this.loadComponent()}},{key:"clickToCancel",value:function(){this.emitService.setCancel(!0)}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"structureSearchTerm",get:function(){return this.privateStructureSearchTerm}},{key:"sequenceSearchTerm",get:function(){return this.privateSequenceSearchTerm}},{key:"searchType",get:function(){return this.privateSearchType}},{key:"searchCutoff",get:function(){return this.privateSearchCutoff}},{key:"searchSeqType",get:function(){return this.privateSearchSeqType}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substancesFiltering","button:sidenav","open"),this.matSideNav.open()}},{key:"updateView",value:function(u){this.gaService.sendEvent("substancesContent","button:view-update",u.value),this.view=u.value}},{key:"getSequenceDisplay",value:function(u){return null!=u?u.length<16?u:"".concat(u.substr(0,15),"..."):""}},{key:"openImageModal",value:function(u){var M=this;this.gaService.sendEvent("substancesContent","link:structure-zoom",on.N.isAnalyticsPrivate?"substance":u._name);var lt=this.dialog.open(At.o,{width:"650px",panelClass:"structure-image-panel",data:"chemical"===u.substanceClass?{structure:u.uuid,smiles:u.structure.smiles,uuid:u.uuid,names:this.names[u.uuid]}:{structure:u.uuid,names:this.names[u.uuid]}});this.overlayContainer.style.zIndex="1002";var Wt=lt.afterClosed().subscribe(function(){M.overlayContainer.style.zIndex=null,Wt.unsubscribe()},function(){M.overlayContainer.style.zIndex=null,Wt.unsubscribe()})}},{key:"getMol",value:function(u,M){var U=this,re=this.structureService.downloadMolfile(u).subscribe(function(lt){U.downloadFile(lt,M),re.unsubscribe()},function(lt){re.unsubscribe()})}},{key:"getFasta",value:function(u,M){var U=this,re=this.substanceService.getFasta(u).subscribe(function(lt){U.downloadFile(lt,M),re.unsubscribe()},function(lt){re.unsubscribe()})}},{key:"downloadFile",value:function(u,M){var U=u.type,re=[];re.push(u);var lt=document.createElement("a");lt.href=window.URL.createObjectURL(new Blob(re,{type:U})),lt.setAttribute("download",M),document.body.appendChild(lt),lt.click()}},{key:"sortCodeSystems",value:function(u){if(this.configService.configData&&this.configService.configData.codeSystemOrder&&this.configService.configData.codeSystemOrder.length>0)for(var M=this.configService.configData.codeSystemOrder,U=M.length-1;U>=0;U--)for(var re=0;re<=u.length;re++)if(M[U]===u[re]){var lt=u.splice(re,1);u.unshift(lt[0]);break}return u}},{key:"showAllRecords",value:function(){this.showExactMatches=!1,this.processResponsiveness()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"downloadJson",value:function(u){var M=this;this.substanceService.getSubstanceDetails(u).pipe((0,Y.q)(1)).subscribe(function(U){M.downloadFile(JSON.stringify(U),u+".json")})}},{key:"copySmiles",value:function(u){var M=document.createElement("textarea");M.style.position="fixed",M.style.left="0",M.style.top="0",M.style.opacity="0",M.value=u,document.body.appendChild(M),M.focus(),M.select(),document.execCommand("copy"),document.body.removeChild(M)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.gz),t.Y36(Ne.d),t.Y36(B.E),t.Y36(ae),t.Y36(On.b),t.Y36(De.a),t.Y36(ht.F),t.Y36(h.F0),t.Y36(ne.uw),t.Y36(Yi.$),t.Y36(T.e),t.Y36(Yn.De),t.Y36(Tn.Xj),t.Y36(Ee.Ye),t.Y36(Wn.bH),t.Y36(t._Vd),t.Y36(si),t.Y36(P.Dx),t.Y36(Se.I),t.Y36(fi),t.Y36(ze.NE))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-substances-browse"]],viewQuery:function(g,u){var M;1&g&&(t.Gf(so,7),t.Gf($t,5)),2&g&&(t.iGM(M=t.CRH())&&(u.matSideNav=M.first),t.iGM(M=t.CRH())&&(u.dynamicContentContainer=M))},hostBindings:function(g,u){1&g&&t.NdJ("popstate",function(U){return u.onPopState(U)},!1,t.Jf7)("resize",function(U){return u.onResize(U)},!1,t.Jf7)},decls:18,vars:16,consts:[[3,"hasBackdrop","ngClass"],["mode","side","opened","false",3,"disableClose"],["matSideNavInstance",""],["style","margin-left: 30px;","id","facetView","class","facetView",4,"ngIf"],["configName","substances","includeFacetSearch","true",3,"rawFacets","facetViewCategorySelected","facetDisplayType","facetsParamsUpdated","facetsLoaded"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],["class","no-results",4,"ngIf"],["class","side-nav-content",4,"ngIf"],[3,"ngClass"],[1,"exact-match-control"],["mat-raised-button","","color","primary",3,"click"],[1,"substance-cards"],[3,"substance","showAudit","names","codeSystemNames","codeSystems","openImage",4,"ngFor","ngForOf"],["id","facetView",1,"facetView",2,"margin-left","30px"],[3,"formControl","openedChange","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"no-results"],[4,"ngIf"],[1,"search-parameters","center"],["class","mat-elevation-z2",4,"ngIf"],[1,"link",3,"click"],[1,"mat-elevation-z2"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","delete_forever"],["svgIcon","edit","tooltip","Go to Advanced Search"],[1,"no-break"],["readonly","",1,"smiles-input",3,"value"],["svgIcon","paste","matTooltip","Copy Smiles to clipboard"],["svgIcon","edit"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],[4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search","title","Go to Advanced Search",2,"padding-left","6px"],[1,"match-type",3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],["svgIcon","edit","matTooltip","Go to Advanced Search"],["mat-icon-button","","color","primary",2,"width","25px",3,"click"],["svgIcon","delete_forever","matTooltip","Delete search"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],["svgIcon","outline-file_copy","matTooltip","Copy Smiles to clipboard"],["svgIcon","edit","matTooltip","Go back to Advanced Search"],["svgIcon","edit","matTooltip","Transfer Structure to Structure Search"],[1,"sub-search-div"],[1,"sub-search-text","red-text"],[1,"sub-search-text-div"],[1,"search-spinner"],[3,"diameter"],[1,"sub-search-text","match-txt"],[1,"sub-search-ref-btn",3,"click"],[1,"sub-search-cancel-btn",3,"click"],[1,"sub-search-text","orange-text"],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["aria-label","Table View","value","table","matTooltip","Table View"],["svgIcon","list"],["aria-label","Full View","value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["aria-label","Tile View","value","tiles"],["svgIcon","view_module","matTooltip","Tile View"],[1,"sort"],[3,"ngModel","selectionChange","openedChange","ngModelChange"],["exportMenu","matMenu"],[1,"menu-checkbox","mat-menu-item",3,"click"],[1,"export"],["matTooltip","Export Search Results","mat-button","","class","mat-button export-button mat-raised-button",3,"matMenuTriggerFor",4,"ngIf"],[1,"break"],[1,"full-paginator"],[1,"wildcard-div"],[1,"search",3,"floatLabel"],["matInput","","type","text","autocomplete","off","placeholder","Search Within Results",3,"ngModel","ngModelChange","change","keyup.enter"],["aria-label","Search Within Results","mat-icon-button","",3,"click"],["svgIcon","search"],[1,"middle-fill"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter","aria-label","Page Index",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],["appBrowseHeaderDynamicSection",""],[1,"dynamic","container"],[1,"substance-table"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","name"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","approvalID"],["matColumnDef","names"],["matColumnDef","codes"],["matColumnDef","actions"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[1,"substance-tiles"],["class","tile",4,"ngFor","ngForOf"],[1,"full-paginator",2,"justify-content","flex-end"],[3,"length","pageIndex","pageSize","pageSizeOptions","page"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"matMenuTriggerFor"],["svgIcon","get_app"],[3,"substance","showAudit","names","codeSystemNames","codeSystems","openImage"],["mat-header-cell",""],["mat-cell",""],[1,"table-view-name",3,"routerLink"],[3,"innerHTML"],["target","_blank","appTrackLinkEvent","","evCategory","substancesContent","evAction","link:code",1,"ext-link",3,"href"],["mat-icon-button","",3,"matMenuTriggerFor"],["mat-icon-button","",3,"matMenuTriggerFor",4,"ngIf"],["mat-menu-item","","matTooltip","edit record",3,"routerLink",4,"ngIf"],["downloadMenu","matMenu"],["searchMenu","matMenu"],["mat-menu-item","",3,"routerLink","queryParams",4,"ngIf"],["editMenu","matMenu"],["mat-menu-item","","matTooltip","copy substance to new registration form",3,"routerLink","queryParams",4,"ngIf"],["mat-menu-item","","matTooltip","copy definition to new registration form",3,"routerLink","queryParams",4,"ngIf"],["mat-menu-item","","matTooltip","edit record",3,"routerLink"],["svgIcon","file_copy"],["mat-menu-item","",3,"click",4,"ngIf"],["mat-menu-item","",3,"routerLink","queryParams"],["mat-menu-item","","matTooltip","copy substance to new registration form",3,"routerLink","queryParams"],["mat-menu-item","","matTooltip","copy definition to new registration form",3,"routerLink","queryParams"],["mat-header-row",""],["mat-row",""],[1,"tile"],[1,"tile-title"],[1,"approval-id"],[1,"substance-content"],[1,"structure-container"],[1,"image-thumbnail"],[1,"tile-name"],[1,"substance-name","table-view-name",3,"innerHTML","routerLink","matTooltip"],["svgIcon","lock","class","lock-icon",4,"ngIf"],[1,"tile-button-container"],["class","mat-chip-list-container-2",4,"ngIf"],[1,"mat-chip-list-container-2"],["selectable","false","multiple","false"],["color","primary","selected",""],[1,"zoom",3,"click"],["appSubstanceImage","",3,"entityId","atomMaps"],["appSubstanceImage","","size","175",1,"image-other",3,"entityId","atomMaps"],[1,"simlarity-label"],[1,"similarity"],["svgIcon","lock",1,"lock-icon"],["class","mat-icon-button","aria-label","edit substance","mat-icon-button","","matTooltip","edit record",3,"routerLink",4,"ngIf"],["svgIcon","search",1,"button-link-img"],["aria-label","edit substance","mat-icon-button","","matTooltip","edit record",1,"mat-icon-button",3,"routerLink"]],template:function(g,u){1&g&&(t.TgZ(0,"mat-sidenav-container",0),t.TgZ(1,"mat-sidenav",1,2),t.YNc(3,Va,5,2,"mat-form-field",3),t.TgZ(4,"app-facets-manager",4),t.NdJ("facetsParamsUpdated",function(U){return u.facetsParamsUpdated(U)})("facetsLoaded",function(U){return u.facetsLoaded(U)}),t.qZA(),t.qZA(),t.TgZ(5,"mat-sidenav-content"),t.TgZ(6,"button",5),t.NdJ("click",function(){return u.openSideNav()}),t._UZ(7,"mat-icon",6),t.qZA(),t.YNc(8,sl,7,5,"div",7),t.YNc(9,Bo,5,3,"div",8),t.qZA(),t.qZA(),t.TgZ(10,"div",9),t.TgZ(11,"div",10),t.TgZ(12,"div"),t._uU(13),t.qZA(),t.TgZ(14,"button",11),t.NdJ("click",function(){return u.showAllRecords()}),t._uU(15," Show All Records Matching Search "),t.qZA(),t.qZA(),t.TgZ(16,"div",12),t.YNc(17,vp,1,5,"app-substance-summary-card",13),t.qZA(),t.qZA()),2&g&&(t.Q6J("hasBackdrop",u.hasBackdrop)("ngClass",t.VKq(12,pm,u.showExactMatches)),t.xp6(1),t.Q6J("disableClose",!u.isCollapsed),t.xp6(2),t.Q6J("ngIf",u.isAdmin),t.xp6(1),t.Q6J("rawFacets",u.rawFacets)("facetViewCategorySelected",u.facetViewCategorySelected)("facetDisplayType",u.facetDisplayType),t.xp6(4),t.Q6J("ngIf",!(u.isLoading||u.isError||u.substances&&0!==u.substances.length)),t.xp6(1),t.Q6J("ngIf",u.substances&&u.substances.length||u.matchTypes&&u.matchTypes.length>0),t.xp6(1),t.Q6J("ngClass",t.VKq(14,yp,!u.showExactMatches)),t.xp6(3),t.hij(" There is one exact (name, standardized name or code) match for ",u.searchTerm," "),t.xp6(4),t.Q6J("ngForOf",u.exactMatchSubstances))},directives:[Za.TM,Ee.mk,Za.JX,Ee.O5,Pt.KE,Pt.hX,de.gD,s.JJ,s.oH,Ee.sg,ye.ey,Be.R,Za.Rh,j.Hw,v.lW,Ie.gM,sn.p6,sn.VK,Ee.RF,Ee.n9,Ee.ED,sn.OP,h.yS,St.$g,nt.A9,nt.Yi,s.On,wt.oG,ut.Nt,s.Fj,Dt.NW,$t,no,ge.BZ,ge.w1,ge.fO,ge.ge,ge.Dz,ge.ev,to.z,ge.as,ge.XQ,ge.nj,ge.Gk,Qt.a8,Qt.n5,Qt.dn,Pa.qn,Pa.HS,ra.m,v.zs],pipes:[bi,Ee.gd,Qr.Y],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.dynamic-container[_ngcontent-%COMP%]{width:100%;min-height:5px} .facetView>*{z-index:1002!important}.smiles-input[_ngcontent-%COMP%]{max-width:350px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.wildcard-div[_ngcontent-%COMP%]{margin:10px 30px;width:20%;display:-ms-inline-flexbox;display:inline-flex}.wildcard[_ngcontent-%COMP%]{width:100%;height:50%;background:transparent;border-top-style:hidden;border-right-style:hidden;border-left-style:hidden;border-bottom-style:groove;border-color:#fafafa}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:#fff;font-size:14px}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto}.cards[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:red}.table-view-name[_ngcontent-%COMP%]{color:#448aff}.tile-title[_ngcontent-%COMP%]{height:19px} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container-2[_ngcontent-%COMP%]{margin-bottom:10px}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%]{height:350px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.tile-name[_ngcontent-%COMP%] svg{margin-bottom:-10px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.exact-matches-container[_ngcontent-%COMP%]{margin-top:80px}.exact-match-control[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-line-pack:center;align-content:center;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;margin-bottom:20px}.exact-match-control[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-top:15px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:0px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#000;border-radius:4px}.similarity[_ngcontent-%COMP%]{padding-left:10px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:#c7254e}.similarity-label[_ngcontent-%COMP%]{font-style:italic}.menu-checkbox[_ngcontent-%COMP%]:hover{background-color:#fff}@media (max-width: 1750px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;-webkit-text-decoration-style:unset;text-decoration-style:unset}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.mat-elevation-z2[_ngcontent-%COMP%]{background-color:#fff}.more-content[_ngcontent-%COMP%]{width:45%}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.disable-export[_ngcontent-%COMP%]{pointer-events:none;opacity:.5}.button-link-img[_ngcontent-%COMP%]{line-height:40px;color:#000}.red-text[_ngcontent-%COMP%]{color:red;font-style:italic}.orange-text[_ngcontent-%COMP%]{color:orange;font-style:italic}.sub-search-div[_ngcontent-%COMP%]{display:none}.sub-search-ref-btn[_ngcontent-%COMP%]{padding:10px;margin:0 5px;background-color:#fff;box-shadow:2px 2px #d3d3d3;border:.4px solid white;border-radius:5px}.sub-search-cancel-btn[_ngcontent-%COMP%]{padding:10px;color:#fff;background-color:red;box-shadow:2px 2px #d3d3d3;border:.4px solid red;border-radius:5px}.sub-search-text[_ngcontent-%COMP%]{text-align:center}.match-txt[_ngcontent-%COMP%]{display:inline;padding:0 5px}.sub-search-text-div[_ngcontent-%COMP%]{text-align:center}.search-spinner[_ngcontent-%COMP%]{width:15px;height:15px;display:inline-table;margin:auto}.search-spinner[_ngcontent-%COMP%] .mat-progress-spinner circle, .mat-spinner[_ngcontent-%COMP%] circle[_ngcontent-%COMP%]{stroke:gray;width:10px!important;height:10px!important;display:inline}.cdk-overlay-backdrop[_ngcontent-%COMP%], .cdk-global-overlay-wrapper[_ngcontent-%COMP%]{display:none!important}"]}),b}(),kh=n(84705),fd=n(9552),Cp=n(45592),md=["contentContainer"];function Eu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div"),t.TgZ(2,"button",23),t.NdJ("click",function(){return t.CHM(g),t.oxw().standardize("ADD_HYDROGENS")}),t._uU(3,"Add Explicit Hydrogens"),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"button",23),t.NdJ("click",function(){return t.CHM(g),t.oxw().standardize("STEREO_FLATTEN")}),t._uU(6,"Remove Stereochemistry Bonds"),t.qZA(),t.qZA(),t.qZA()}}function Xc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",24),t.TgZ(1,"div"),t._uU(2,"Similarity cutoff (tanimoto)"),t.qZA(),t.TgZ(3,"mat-slider",25),t.NdJ("input",function(U){return t.CHM(g),t.oxw().searchCutoffChanged(U)}),t.qZA(),t.TgZ(4,"div"),t._uU(5),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(3),t.Q6J("value",u.similarityCutoff),t.xp6(2),t.Oqu(u.similarityCutoff)}}var Gi=function(){var b=function(){function L(g,u,M,U,re,lt,Wt,nn,bn){(0,p.Z)(this,L),this.router=g,this.dialog=u,this.loadingService=M,this.structureService=U,this.activatedRoute=re,this.renderer=lt,this.gaService=Wt,this.overlayContainerService=nn,this.titleService=bn,this.showSimilarityCutoff=!1,this.searchTypeControl=new s.NI,this.searchType="substructure",this._searchtype="substructure"}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.gaService.sendPageView("Structure Search"),this.titleService.setTitle("Structure Search"),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){this.renderer.addClass(this.contentContainer.nativeElement,on.N.structureEditor)}},{key:"ngOnDestroy",value:function(){}},{key:"molvecUpdate",value:function(u){this.editor.setMolecule(u)}},{key:"editorOnLoad",value:function(u){var M=this;this.loadingService.setLoading(!1),this.editor=u,setTimeout(function(){M.activatedRoute.queryParamMap.subscribe(function(U){U.has("structure")&&M.structureService.getMolfile(U.get("structure")).subscribe(function(re){M.editor.setMolecule(re)}),U.has("type")&&(M.searchType=U.get("type"),M._searchtype=U.get("type")),"similarity"===M.searchType&&(M.showSimilarityCutoff=!0,M.similarityCutoff=U.has("cutoff")&&Number(U.get("cutoff"))||.8),M.searchTypeControl.setValue(M.searchType)})})}},{key:"search",value:function(){var u=this,M=this.editor.getMolfile();this.structureService.interpretStructure(M).subscribe(function(U){u.gaService.sendEvent("structureSearch","button:search",!on.N.isAnalyticsPrivate&&U.structure.smiles||"structure search term"),u.navigateToBrowseSubstance(U.structure.id,U.structure.smiles)},function(){})}},{key:"standardize",value:function(u){var M=this,U=this.editor.getMolfile();this.structureService.interpretStructure(U,"",u).subscribe(function(re){re&&re.structure&&re.structure.molfile&&M.editor.setMolecule(re.structure.molfile)},function(){})}},{key:"navigateToBrowseSubstance",value:function(u,M){var U={queryParams:{}},re={queryParams:{}};U.queryParams.structure_search=u||null,U.queryParams.type=this.searchType||null,re.queryParams.structure=u,re.queryParams.type=this.searchType||null,"similarity"===this.searchType&&(U.queryParams.cutoff=this.similarityCutoff||0,re.queryParams.cutoff=this.similarityCutoff||0),null!=M&&(U.queryParams.smiles=M),window.history.pushState({},"Structure Search","/structure-search?structure="+re.queryParams.structure+"&type="+re.queryParams.type+"&cutoff="+re.queryParams.cutoff),this.router.navigate(["/browse-substance"],U)}},{key:"searchTypeSelected",value:function(u){this.searchType=u.value,this._searchtype=u.value,this.gaService.sendEvent("structureSearch","select:search-type",this.searchType),"similarity"===this.searchType?(this.showSimilarityCutoff=!0,this.similarityCutoff=.8):this.showSimilarityCutoff=!1}},{key:"openStructureImportDialog",value:function(){var u=this;this.gaService.sendEvent("structureSearch","button:import","import structure");var M=this.dialog.open(kh.N,{height:"auto",width:"650px",data:{}});this.overlayContainer.style.zIndex="1002",M.afterClosed().subscribe(function(U){u.overlayContainer.style.zIndex=null,U&&U.structure&&U.structure.molfile&&u.editor.setMolecule(U.structure.molfile)},function(){u.overlayContainer.style.zIndex=null})}},{key:"openStructureExportDialog",value:function(){var u=this;this.gaService.sendEvent("structureSearch","button:export","export structure");var M=this.dialog.open(Cp.g,{height:"auto",width:"650px",data:{molfile:this.editor.getMolfile(),smiles:this.editor.getSmiles()}});this.overlayContainer.style.zIndex="1002",M.afterClosed().subscribe(function(){u.overlayContainer.style.zIndex=null},function(){u.overlayContainer.style.zIndex=null})}},{key:"searchCutoffChanged",value:function(u){this.similarityCutoff=u.value,this.gaService.sendEvent("structureSearch","slider","similarity-cutoff",this.similarityCutoff)}},{key:"_editor",get:function(){return this.editor}},{key:"_searchType",get:function(){return this.searchType}},{key:"nameResolved",value:function(u){this.editor.setMolecule(u)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.F0),t.Y36(ne.uw),t.Y36(On.b),t.Y36(fd.D),t.Y36(h.gz),t.Y36(t.Qsj),t.Y36(Yi.$),t.Y36(Tn.Xj),t.Y36(P.Dx))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-structure-search"]],viewQuery:function(g,u){var M;1&g&&t.Gf(md,7),2&g&&t.iGM(M=t.CRH())&&(u.contentContainer=M.first)},decls:36,vars:3,consts:[[1,"search-content-container"],["contentContainer",""],[2,"font-weight","500"],[1,"structure-editor-actions-container"],[1,"editor-container"],[3,"editorOnLoad","loadedMolfile"],[1,"search-actions"],[1,"two"],[1,"search-type-select"],["placeholder","Search type","value","substructure",3,"formControl","selectionChange"],["value","substructure"],["value","similarity"],["value","exact"],["value","flex"],[4,"ngIf"],["class","similarity-cutoff",4,"ngIf"],[1,"action-button-container"],[1,"action-button-container","three"],["name","search","mat-raised-button","","color","primary",1,"search-button",2,"font-size","18px",3,"click"],[1,"action-button-container","one"],["name","export","mat-raised-button","","color","primary",1,"import-button",3,"click"],["name","import","mat-raised-button","","color","primary",1,"export-button",3,"click"],[3,"structureSelected"],["mat-button","","mat-flat-button","",3,"click"],[1,"similarity-cutoff"],["min",".40","max","1","step","0.01",3,"value","input"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0,1),t.TgZ(2,"mat-card"),t.TgZ(3,"h2",2),t._uU(4,"Structure Search"),t.qZA(),t.TgZ(5,"div",3),t.TgZ(6,"div",4),t.TgZ(7,"app-structure-editor",5),t.NdJ("editorOnLoad",function(U){return u.editorOnLoad(U)})("loadedMolfile",function(U){return u.molvecUpdate(U)}),t.qZA(),t.qZA(),t.TgZ(8,"div",6),t.TgZ(9,"div",7),t.TgZ(10,"mat-form-field",8),t.TgZ(11,"mat-select",9),t.NdJ("selectionChange",function(U){return u.searchTypeSelected(U)}),t.TgZ(12,"mat-option",10),t._uU(13," Substructure "),t.qZA(),t.TgZ(14,"mat-option",11),t._uU(15," Similarity "),t.qZA(),t.TgZ(16,"mat-option",12),t._uU(17," Exact "),t.qZA(),t.TgZ(18,"mat-option",13),t._uU(19," Flex "),t.qZA(),t.qZA(),t.qZA(),t.YNc(20,Eu,7,0,"div",14),t.YNc(21,Xc,6,2,"div",15),t.qZA(),t.TgZ(22,"div",16),t.TgZ(23,"div",17),t.TgZ(24,"button",18),t.NdJ("click",function(){return u.search()}),t._uU(25,"Search"),t.qZA(),t.qZA(),t.TgZ(26,"div",19),t.TgZ(27,"button",20),t.NdJ("click",function(){return u.openStructureImportDialog()}),t._uU(28,"Import"),t.qZA(),t.qZA(),t.TgZ(29,"div",19),t.TgZ(30,"button",21),t.NdJ("click",function(){return u.openStructureExportDialog()}),t._uU(31,"Export"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(32,"div"),t.TgZ(33,"h4"),t._uU(34," Get Structure From Name "),t.qZA(),t.TgZ(35,"app-name-resolver",22),t.NdJ("structureSelected",function(U){return u.nameResolved(U)}),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g&&(t.xp6(11),t.Q6J("formControl",u.searchTypeControl),t.xp6(9),t.Q6J("ngIf","substructure"===u._searchtype),t.xp6(1),t.Q6J("ngIf",u.showSimilarityCutoff))},styles:[".search-content-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.clean-button[_ngcontent-%COMP%]{margin-top:-15px}.mat-card[_ngcontent-%COMP%]{margin-top:15px;box-sizing:border-box;max-width:1170px}.structure-editor-actions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.editor-container[_ngcontent-%COMP%]{width:920px;min-height:460px}.ketcher[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{height:460px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{min-height:330px}.search-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;padding-left:15px;margin-left:10px;border-left:1px solid #b3b3b3}.search-actions[_ngcontent-%COMP%] .mat-slider-horizontal[_ngcontent-%COMP%]{width:100%}.similarity-cutoff[_ngcontent-%COMP%]{margin-top:20px;margin-bottom:20px;text-align:center}.action-button-container[_ngcontent-%COMP%]{margin-top:20px;-ms-flex-item-align:end;align-self:flex-end;width:100%}.action-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;width:100%}.two[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.action-button-container[_ngcontent-%COMP%]{width:50%;margin:20px auto auto}}@media (max-width: 970px){.structure-editor-actions-container[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.editor-container[_ngcontent-%COMP%], .search-actions[_ngcontent-%COMP%]{min-width:633px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%], .jsdraw[_ngcontent-%COMP%] .search-actions[_ngcontent-%COMP%]{min-width:710px}}"]}),b}(),Mp=n(63206),fm=n(71989);function Zu(b,L){1&b&&(t.TgZ(0,"mat-error"),t._uU(1," Only values between 0 and 1 are allowed "),t.qZA())}function Ac(b,L){1&b&&(t.TgZ(0,"mat-error"),t._uU(1," This is required "),t.qZA())}function hd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",20),t.NdJ("click",function(){return t.CHM(g),t.oxw().sequenceSearchForm.controls.sequence.setValue("")}),t._uU(1," Clear "),t.qZA()}}function _d(b,L){if(1&b&&(t.TgZ(0,"div",21),t._uU(1),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.hij(" ",g.errorMessage," ")}}var ns=function(){var b=function(){function L(g,u,M,U,re,lt){var Wt=this;(0,p.Z)(this,L),this.router=g,this.activatedRoute=u,this.substanceService=M,this.gaService=U,this.loadingService=re,this.titleService=lt,this.sequenceSearchForm=new s.cw({cutoff:new s.NI(.9,[s.kI.min(0),s.kI.max(1),s.kI.required]),type:new s.NI("GLOBAL",s.kI.required),sequenceType:new s.NI("protein",s.kI.required),sequence:new s.NI("",s.kI.required)}),this.errorMessage="",this.activatedRoute.queryParamMap.subscribe(function(nn){nn.has("source")&&"edit"===nn.get("source")?(Wt.id=nn.get("source_id"),Wt.sequenceSearchForm.controls.sequence.setValue(JSON.parse(sessionStorage.getItem("gsrs_edit_sequence_"+Wt.id)))):nn.has("sequence")&&Wt.sequenceSearchForm.controls.sequence.setValue(nn.get("sequence")),nn.has("type")&&Wt.sequenceSearchForm.controls.type.setValue(nn.get("type")),nn.has("cutoff")&&Wt.sequenceSearchForm.controls.cutoff.setValue(nn.get("cutoff")),nn.has("seq_type")&&("nucleicacid"===nn.get("seq_type").toLowerCase()?Wt.sequenceSearchForm.controls.sequenceType.setValue("nucleicAcid"):Wt.sequenceSearchForm.controls.sequenceType.setValue("protein")),nn.has("subunit")&&nn.has("substance")&&nn.has("seq_type")&&Wt.getSequence(nn.get("substance"),nn.get("subunit"),nn.get("seq_type"))})}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.titleService.setTitle("Sequence Search"),this.gaService.sendPageView("Sequence Search"),this.sequenceSearchForm.controls.cutoff.valueChanges.pipe((0,fm.b)(1e3)).subscribe(function(M){u.gaService.sendEvent("sequenceSearch","input:cutoff","search identity",M)}),this.sequenceSearchForm.controls.type.valueChanges.subscribe(function(M){u.gaService.sendEvent("sequenceSearch","select:cutoff-type",!on.N.isAnalyticsPrivate&&M||"cutoff type")}),this.sequenceSearchForm.controls.sequenceType.valueChanges.subscribe(function(M){u.gaService.sendEvent("sequenceSearch","select:sequence-type",!on.N.isAnalyticsPrivate&&M||"cutoff type")})}},{key:"ngOnDestroy",value:function(){}},{key:"search",value:function(){this.sequenceSearchForm.valid?(this.gaService.sendEvent("sequenceSearch","button:search","sequence"),this.navigateToBrowseSubstance()):this.gaService.sendException("tried invalid sequence search")}},{key:"cleanSequence",value:function(u){var M=["G","T","U","N","A","C","X"];"PROTEIN"===u.toUpperCase()&&(M=["A","C","D","E","F","G","H","I","K","L","M","N","P","Q","R","S","T","V","W","X","Y"]),this.sequenceSearchForm.controls.sequence.setValue(this.filterbychr(this.sequenceSearchForm.controls.sequence.value,M))}},{key:"getSequence",value:function(u,M,U){var re=this;U=U.charAt(0).toLowerCase()+U.slice(1),this.substanceService.getSequenceByID(u,M,U).subscribe(function(lt){lt&<.length>0&<[0].sequence&&re.sequenceSearchForm.controls.sequence.setValue(lt[0].sequence)})}},{key:"filterbychr",value:function(u,M){var U=u.toString().split(""),re=[];return U.forEach(function(lt,Wt,nn){M.indexOf(lt.toUpperCase())>=0&&re.push(lt)}),re.join("")}},{key:"makeRandom",value:function(){for(var u="",M="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890",U=0;U<6;U++)u+=M.charAt(Math.floor(Math.random()*M.length));return u}},{key:"navigateToBrowseSubstance",value:function(){var u=this;this.errorMessage="",this.loadingService.setLoading(!0),this.id||(this.id=this.makeRandom()),sessionStorage.setItem("gsrs_search_sequence_"+this.id,JSON.stringify(this.sequenceSearchForm.value.sequence));var M={queryParams:{}};M.queryParams.type="sequence",M.queryParams.cutoff=this.sequenceSearchForm.value.cutoff,M.queryParams.type=this.sequenceSearchForm.value.type,M.queryParams.seq_type=this.sequenceSearchForm.value.sequenceType,M.queryParams.source_id=this.id,this.substanceService.getSubstanceSequenceResults(this.sequenceSearchForm.value.sequence,this.sequenceSearchForm.value.cutoff,this.sequenceSearchForm.value.type,this.sequenceSearchForm.value.sequenceType).subscribe(function(U){u.loadingService.setLoading(!1),U.key?(M.queryParams.sequence_key=U.key,u.router.navigate(["/browse-substance"],M)):u.errorMessage="There was a problem processing your sequence search request"},function(U){console.log(U),u.errorMessage=u.sequenceSearchForm.value.sequence>5e4?"Cannot process searches for sequences with more than 50,000 sites":"There was a problem processing your sequence search request",u.loadingService.setLoading(!1)})}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.F0),t.Y36(h.gz),t.Y36(va.d),t.Y36(Yi.$),t.Y36(On.b),t.Y36(P.Dx))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-sequence-search"]],decls:34,vars:6,consts:[[1,"content-container"],[3,"formGroup"],[1,"parameters"],["matInput","","placeholder","Search Identity","formControlName","cutoff"],[4,"ngIf"],["placeholder","Cutoff Type","formControlName","type"],["value","SUB"],["value","GLOBAL"],["placeholder","Sequence Type","formControlName","sequenceType"],["value","protein"],["value","nucleicAcid"],[1,"sequence-body"],["formControlName","sequence"],[1,"actions"],["mat-raised-button","","color","primary",1,"padding-right",3,"disabled","click"],["mat-button","",3,"click",4,"ngIf"],[1,"align-right"],[1,"blue-font",3,"click"],["svgIcon","spellcheck"],["class","error-message",4,"ngIf"],["mat-button","",3,"click"],[1,"error-message"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"mat-card"),t.TgZ(2,"mat-card-title"),t._uU(3," Sequence Search "),t.qZA(),t.TgZ(4,"mat-card-content"),t.TgZ(5,"form",1),t.TgZ(6,"div",2),t.TgZ(7,"mat-form-field"),t._UZ(8,"input",3),t.YNc(9,Zu,2,0,"mat-error",4),t.YNc(10,Ac,2,0,"mat-error",4),t.qZA(),t.TgZ(11,"mat-form-field"),t.TgZ(12,"mat-select",5),t.TgZ(13,"mat-option",6),t._uU(14," Contains Alignment Match "),t.qZA(),t.TgZ(15,"mat-option",7),t._uU(16," Global Alignment Match "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(17,"mat-form-field"),t.TgZ(18,"mat-select",8),t.TgZ(19,"mat-option",9),t._uU(20," Protein "),t.qZA(),t.TgZ(21,"mat-option",10),t._uU(22," Nucleic Acid "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(23,"div",11),t._UZ(24,"textarea",12),t.qZA(),t.TgZ(25,"div",13),t.TgZ(26,"button",14),t.NdJ("click",function(){return u.search()}),t._uU(27," Search "),t.qZA(),t.YNc(28,hd,2,0,"button",15),t.TgZ(29,"div",16),t.TgZ(30,"a",17),t.NdJ("click",function(){return u.cleanSequence(u.sequenceSearchForm.controls.sequenceType.value)}),t._UZ(31,"mat-icon",18),t._uU(32," clean sequence"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.YNc(33,_d,2,1,"div",19),t.qZA(),t.qZA(),t.qZA()),2&g&&(t.xp6(5),t.Q6J("formGroup",u.sequenceSearchForm),t.xp6(4),t.Q6J("ngIf",u.sequenceSearchForm.controls.cutoff.hasError("min")||u.sequenceSearchForm.controls.cutoff.hasError("max")),t.xp6(1),t.Q6J("ngIf",u.sequenceSearchForm.controls.cutoff.hasError("required")),t.xp6(16),t.Q6J("disabled",u.sequenceSearchForm.invalid),t.xp6(2),t.Q6J("ngIf",u.sequenceSearchForm.value.sequence),t.xp6(5),t.Q6J("ngIf",u.errorMessage&&""!==u.errorMessage))},directives:[Qt.a8,Qt.n5,Qt.dn,s._Y,s.JL,s.sg,Pt.KE,ut.Nt,s.Fj,s.JJ,s.u,Ee.O5,Pt.TO,de.gD,ye.ey,v.lW,j.Hw],styles:[".content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.mat-card[_ngcontent-%COMP%]{margin-top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:750px;width:100%}.parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:space-evenly;justify-content:space-evenly;-ms-flex-line-pack:stretch;align-content:stretch}.parameters[_ngcontent-%COMP%] .mat-error[_ngcontent-%COMP%]{display:block;background-color:#fff;padding:0 2px}.sequence-body[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{box-sizing:border-box;width:100%;height:300px;border:solid 1px rgba(0,0,0,.42);border-radius:3px;padding:10px}.actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-top:10px}.actions[_ngcontent-%COMP%] .align-right[_ngcontent-%COMP%]{margin-left:auto}.actions[_ngcontent-%COMP%] .padding-right[_ngcontent-%COMP%]{padding-right:10px}.error-message[_ngcontent-%COMP%]{text-align:center;font-size:16px;color:red}"]}),b}();function xp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-card"),t.TgZ(1,"mat-card-title"),t._uU(2," Login "),t.qZA(),t.TgZ(3,"mat-card-content"),t.TgZ(4,"form",2),t.TgZ(5,"mat-form-field"),t._UZ(6,"input",3),t.qZA(),t.TgZ(7,"mat-form-field"),t._UZ(8,"input",4),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"mat-card-actions"),t.TgZ(10,"button",5),t.NdJ("click",function(){return t.CHM(g),t.oxw().login()}),t._uU(11,"Login"),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(4),t.Q6J("formGroup",u.loginForm),t.xp6(6),t.Q6J("disabled",u.loginForm.invalid||u.isLoading)}}var dl=function(){var b=function(){function L(g,u,M,U,re){(0,p.Z)(this,L),this.authService=g,this.router=u,this.loadingService=M,this.mainNotificationService=U,this.activatedRoute=re,this.isLoaded=!1,this.isLoading=!0,this.loginForm=new s.cw({username:new s.NI("",s.kI.required),password:new s.NI("",s.kI.required)}),this.subscriptions=[]}return(0,e.Z)(L,[{key:"onKeyup",value:function(u){u.code&&"enter"===u.code.toLowerCase()&&this.login()}},{key:"ngOnInit",value:function(){var u=this;this.loadingService.setLoading(!0);var M=this.authService.getAuth().subscribe(function(U){if(u.loadingService.setLoading(!1),U){var re=u.activatedRoute.snapshot.queryParamMap.get("path")||"/browse-substance";u.router.navigate([re])}else u.isLoaded=!0,u.isLoading=!1},function(U){u.loadingService.setLoading(!1),u.isLoaded=!0,u.isLoading=!1});this.subscriptions.push(M)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(u){u.unsubscribe()})}},{key:"login",value:function(){var u=this;if(this.loginForm.valid){this.loadingService.setLoading(!0),this.isLoading=!0;var re=this.authService.login(this.loginForm.controls.username.value,this.loginForm.controls.password.value).subscribe(function(lt){if(re.unsubscribe(),u.loadingService.setLoading(!1),lt){var Wt=u.activatedRoute.snapshot.queryParamMap.get("path")||"/browse-substance";u.router.navigate([Wt])}else u.isLoading=!1},function(lt){re.unsubscribe(),u.mainNotificationService.setNotification({message:"There was an error logging you in. Please check your credentials and try again.",type:et.k.error}),u.loadingService.setLoading(!1),u.isLoaded=!0,u.isLoading=!1})}}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(T.e),t.Y36(h.F0),t.Y36(On.b),t.Y36(De.a),t.Y36(h.gz))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-login"]],hostBindings:function(g,u){1&g&&t.NdJ("keyup",function(U){return u.onKeyup(U)})},decls:2,vars:1,consts:[[1,"login-container"],[4,"ngIf"],[1,"login-form",3,"formGroup"],["matInput","","placeholder","Username","formControlName","username","autofocus",""],["type","password","matInput","","placeholder","Password","formControlName","password"],["color","primary","mat-flat-button","",3,"disabled","click"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.YNc(1,xp,12,2,"mat-card",1),t.qZA()),2&g&&(t.xp6(1),t.Q6J("ngIf",u.isLoaded))},directives:[Ee.O5,Qt.a8,Qt.n5,Qt.dn,s._Y,s.JL,s.sg,Pt.KE,ut.Nt,s.Fj,s.JJ,s.u,Qt.hq,v.lW],styles:[".login-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:86px 20px 20px}.mat-card[_ngcontent-%COMP%]{max-width:400px;width:100%;box-sizing:border-box}.login-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;padding-top:20px}.mat-card-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}"]}),b}(),bs=n(93979),gd=n(49143),vd=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.isHidden=!1,this.canAddItem=!1,this.addItemEmitter=new t.vpe,this.dynamicComponentName=g}return(0,e.Z)(L,[{key:"addItem",value:function(){this.addItemEmitter.emit()}}]),L}();return b.\u0275fac=function(g){t.$Z()},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac}),b}(),io=n(49241);function zl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",11),t.NdJ("click",function(){t.CHM(g);var U=t.oxw();return U.expand=!U.expand}),t._uU(1),t.qZA()}if(2&b){var u=t.oxw();t.xp6(1),t.Oqu(u.expand?"collapse":"expand")}}function Us(b,L){if(1&b&&(t.TgZ(0,"div",12),t._UZ(1,"ngx-json-viewer",13),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("json",g.json)("expanded",g.expand)}}function cc(b,L){if(1&b&&(t.TgZ(0,"div",14),t.TgZ(1,"textarea",15),t._uU(2),t.ALo(3,"json"),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(2),t.Oqu(t.lcZ(3,1,g.json))}}var Pc=function(){var b=function(){function L(g,u,M){(0,p.Z)(this,L),this.substanceFormService=g,this.sanitizer=u,this.data=M,this.expand=!0,this.raw=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.json=this.substanceFormService.cleanSubstance();var u=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.json)));this.downloadJsonHref=u}},{key:"dismissDialog",value:function(){this.dialogRef.close()}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(X.B),t.Y36(P.H7),t.Y36(ne.WI))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-json-dialog"]],decls:19,vars:6,consts:[["mat-dialog-title",""],[1,"flex-row","actions"],["mat-flat-button","","color","primary",3,"click"],["mat-flat-button","",3,"click",4,"ngIf"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"href","download"],["mat-dialog-content",""],["class","formatted",4,"ngIf"],["class","raw",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose",""],["mat-flat-button","",3,"click"],[1,"formatted"],[3,"json","expanded"],[1,"raw"],[1,"raw-text"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"h1"),t._uU(2,"JSON Object structure"),t.qZA(),t.TgZ(3,"div",1),t.TgZ(4,"button",2),t.NdJ("click",function(){return u.raw=!u.raw}),t._uU(5),t.qZA(),t._uU(6,"\xa0 "),t.YNc(7,zl,2,1,"button",3),t._UZ(8,"span",4),t.TgZ(9,"a",5),t.TgZ(10,"span"),t._uU(11,"Export JSON"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(12,"div",6),t.YNc(13,Us,2,2,"div",7),t.YNc(14,cc,4,3,"div",8),t.qZA(),t.TgZ(15,"div",9),t.TgZ(16,"button",10),t._uU(17,"Close"),t.qZA(),t._UZ(18,"span",4),t.qZA()),2&g&&(t.xp6(5),t.Oqu(u.raw?"Show Object":"Show Raw"),t.xp6(2),t.Q6J("ngIf",!u.raw),t.xp6(2),t.MGl("download","",u.json.uuid?u.json.uuid.toString():u.json.substanceClass,".json"),t.Q6J("href",u.downloadJsonHref,t.LSH),t.xp6(4),t.Q6J("ngIf",!u.raw),t.xp6(1),t.Q6J("ngIf",u.raw))},directives:[ne.uh,v.lW,Ee.O5,v.zs,ne.xY,io.Y,ne.H8,ne.ZT],pipes:[Ee.Ts],styles:[".raw[_ngcontent-%COMP%]{width:100%;min-height:200px}.formatted[_ngcontent-%COMP%]{width:100%}.raw-text[_ngcontent-%COMP%]{min-height:400px}.actions[_ngcontent-%COMP%]{padding-bottom:10px}"]}),b}(),rr=n(16639),ku=function(){var b=function(){function L(g,u){(0,p.Z)(this,L),this.dialogRef=g,this.data=u}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){}},{key:"dismissDialog",value:function(u){this.dialogRef.close(u)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(ne.so),t.Y36(ne.WI))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-submit-success-dialog"]],decls:11,vars:0,consts:[["mat-dialog-title",""],["mat-dialog-content",""],["mat-dialog-actions","",1,"flex-row"],["mat-flat-button","","color","primary",3,"click"]],template:function(g,u){1&g&&(t.TgZ(0,"h1",0),t._uU(1," Success\n"),t.qZA(),t.TgZ(2,"div",1),t._uU(3," Update was performed.\n"),t.qZA(),t.TgZ(4,"div",2),t.TgZ(5,"button",3),t.NdJ("click",function(){return u.dismissDialog("continue")}),t._uU(6,"Continue Editing"),t.qZA(),t.TgZ(7,"button",3),t.NdJ("click",function(){return u.dismissDialog("browse")}),t._uU(8,"Go to Browse"),t.qZA(),t.TgZ(9,"button",3),t.NdJ("click",function(){return u.dismissDialog("view")}),t._uU(10,"View Substance"),t.qZA(),t.qZA())},directives:[ne.uh,ne.xY,ne.H8,v.lW],styles:[""]}),b}();function Sp(b,L){1&b&&t._UZ(0,"mat-progress-bar",10)}function yd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"button",13),t.NdJ("click",function(){var re=t.CHM(g).$implicit;return t.oxw(2).mergeTheRecord(re.refuuid)}),t._uU(2),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(2),t.AsE(" [",u.$$bdnum,"]",u.refPname," ")}}function bd(b,L){if(1&b&&(t.TgZ(0,"div",11),t.YNc(1,yd,3,2,"div",12),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngForOf",g.subconcepts)}}function Dl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",11),t.TgZ(1,"button",13),t.NdJ("click",function(){return t.CHM(g),t.oxw().mergeConcept()}),t._uU(2," Confirm Deprecate old record"),t.qZA(),t.qZA()}}var Tp=function(){var b=function(){function L(g,u,M,U){(0,p.Z)(this,L),this.substanceFormService=g,this.substanceService=u,this.sanitizer=M,this.data=U,this.subconcepts=[],this.text="searching for subconcepts...",this.addmergebutton=!1,this.showButtons=!0,this.showDepricate=!1,this.merge=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.getSubconcepts()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}},{key:"getSubconcepts",value:function(){var u=this;this.loading=!0,this.substanceService.getSubstanceDetails(this.data.uuid).pipe((0,Y.q)(1)).subscribe(function(M){u.copy=M,u.subconcepts=Ye.chain(M.relationships).filter(function(U){return"SUB_CONCEPT->SUBSTANCE"===U.type}).map(function(U){return U.relatedSubstance}).map(function(U){return u.substanceService.getBDNUM(U).subscribe(function(re){U.$$bdnum=re}),U}).value(),u.loading=!1,u.text=u.subconcepts&&u.subconcepts.length>0?"Select a Concept to Merge":"No sub-concepts were found for this record"}),this.loading=!0}},{key:"mergeTheRecord",value:function(u){var M=this;function U(re){return Ye.chain(re.codes).filter(function(lt){return"BDNUM"===lt.codeSystem}).filter(function(lt){return"PRIMARY"===lt.type}).map(function(lt){return lt.code}).value()[0]}this.loading=!0,this.substanceService.getSubstanceDetails(u).subscribe(function(re){M.loading=!1,M.showButtons=!1,M.concept=re;var lt=M.scrub(re),Wt=M.copy,nn=U(re),bn=U(Wt);function Bn(ii,Ui){Ui.map(function(Qi){return ii.push(Qi)})}M.mapName=nn+" MAPS TO "+bn+" "+Wt._name,M.loading=!1,M.text="merging names, codes, notes, relationships and references from:"+nn+" with this record.";var Xn={uuid:M.guid(),docType:"BDNUM",citation:"Imported during merging with record:["+nn+"].",id:nn,publicDomain:!1,tags:["RECORD_MERGE"],access:["protected"]},oi=Ye.chain(Wt.relationships).filter(function(ii){return ii.relatedSubstance.refuuid===u}).value();oi.length>0&&(oi[0].relatedSubstance.refPname=M.mapName),lt.relationships=Ye.chain(lt.relationships).filter(function(ii){return"SUBSTANCE->SUB_CONCEPT"!==ii.type}).value(),lt.references.push(Xn);for(var pi=0;piSUB_CONCEPT"===re.type}).value(),M.deprecated=!0,M.access||(M.access=[]),M.access.push("protected"),M.changeReason="Migrated data into:"+this.oldBdnum,this.loading=!1,this.text="Deprecating...",this.substanceService.saveSubstance(M).subscribe(function(re){u.loading=!1,u.text="Old record deprecated, please save this record to complete the merge.",u.subconcepts=void 0,u.addmergebutton=!1},function(re){u.loading=!1,u.text="There was a problem deprecating the old record. Refresh the page to undo the changes to the parent record."})}},{key:"scrub",value:function(u,M){function U(){function vr(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return vr()+vr()+"-"+vr()+"-"+vr()+"-"+vr()+"-"+vr()+vr()+vr()}for(var re=JSON.parse(JSON.stringify(u)),lt=rr.json.search(re,"//*[uuid]"),Wt={},nn=0;nnSUB_ALTERNATE"===u.type)return u}).map(function(u){return u.relatedSubstance}),this.text=this.currentAlts.length>0?"Select a substance to switch":"No alternate definitions were found for this record"}},{key:"tempPrimeChange",value:function(u){var M=this;confirm("This process involves multiple updates to both records and may take several minutes.\nIf the switch fails at any stage, follow the instructions that appear to restore both records. \n\n Click 'OK' to proceed.")?(this.loadingService.setLoading(!0),this.loading=!0,this.text="Starting step 1",this.showButtons=!1,console.log("Temporarily changing primary type"),this.substanceService.getSubstanceDetails(this.sub.uuid).subscribe(function(U){if(M.oldPrime=Ye.cloneDeep(U),M.fieldGetter[M.oldPrime.substanceClass]){M.fieldGetter[M.sub.substanceClass].forEach(function(lt){M.oldPrime[lt]&&delete M.oldPrime[lt]}),console.log("setting primary to temporary substance type");var re={uuid:M.uuidNew,docType:"FDA_SRS",citation:"Generated to switch definition type",publicDomain:!0,tags:["RECORD_MERGE","PUBLIC DOMAIN RELEASE"],access:[]};"structurallyDiverse"!==M.oldPrime.substanceClass?(M.oldPrime.substanceClass="structurallyDiverse",M.oldPrime.structurallyDiverse={uuid:M.utilsService.newUUID(),created:1567806115158,createdBy:"definitionSwitcher",lastEdited:1567806115158,lastEditedBy:"definitionSwitcher",sourceMaterialClass:"Temporary class for definition switch",sourceMaterialType:"Temporary class for definition switch",part:["WHOLE"],references:[M.uuidNew]}):(M.oldPrime.substanceClass="chemical",M.oldPrime.structure={opticalActivity:"none",access:[],molfile:"\n JSDraw209061916362D\n\n 6 6 0 0 0 0 999 V2000\n 28.8600 -9.2560 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 28.8600 -6.1360 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 1 2 1 0 0 0 0\n 2 3 1 0 0 0 0\n 3 4 1 0 0 0 0\n 1 5 1 0 0 0 0\n 5 6 1 0 0 0 0\n 4 6 1 0 0 0 0\nM END",deprecated:!1,digest:"4b4cb19b839f6eb23b836addbaa87729a9632a35",smiles:"[He]1[He][He][He][He][He]1",formula:"He6",stereoCenters:0,definedStereo:0,ezCenters:0,charge:0,mwt:24.015612,count:1,hash:"3ZYHCH786T4L",stereochemistry:"ACHIRAL",id:M.newstructureid,references:[M.uuidNew]}),M.oldPrime.references.push(re),M.test1=rr.json.search(M.oldPrime,"//*[references]"),M.substanceService.getSubstanceDetails(u).subscribe(function(lt){M.test2=rr.json.search(lt,"//*[references]"),M.oldAlt=Ye.cloneDeep(lt),M.fieldGetter[M.oldAlt.substanceClass]?M.updateRecord(M.oldPrime,M.oldAlt.substanceClass===M.sub.substanceClass?function(){M.AltNewType(M.oldAlt)}:function(){M.AltNewDef(M.oldAlt)},1):M.text="The selected alternative is incompatible with the definition switch function"})}else M.text="The selected alternative is incompatible with the definition switch function"})):this.showButtons=!0}},{key:"AltNewType",value:function(u){var M=this;this.didStep5=!0,this.text="Step 1 complete. Running step 2a...",this.substanceService.getSubstanceDetails(this.oldAlt.uuid).subscribe(function(U){u=Ye.cloneDeep(U);var re=Ye.cloneDeep(U);M.fieldGetter[re.substanceClass].forEach(function(Wt){u[Wt]&&delete u[Wt]}),"structurallyDiverse"===re.substanceClass?(console.log("deleting "+re.substanceClass+" adding temporary chemical"),re.substanceClass="chemical",re.structure={opticalActivity:"none",access:[],molfile:"\n JSDraw209061916362D\n\n 6 6 0 0 0 0 999 V2000\n 28.8600 -9.2560 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 28.8600 -6.1360 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 1 2 1 0 0 0 0\n 2 3 1 0 0 0 0\n 3 4 1 0 0 0 0\n 1 5 1 0 0 0 0\n 5 6 1 0 0 0 0\n 4 6 1 0 0 0 0\nM END",id:M.structureid,references:[M.structureuuid]}):(console.log("deleting "+re.substanceClass+" adding temporary structurallyDiverse"),re.substanceClass="structurallyDiverse",re.structurallyDiverse={uuid:M.utilsService.newUUID(),created:1567806115158,createdBy:"definitionSwitcher",lastEdited:1567806115158,lastEditedBy:"definitionSwitcher",deprecated:!1,sourceMaterialClass:"Temporary class for definition switch",sourceMaterialType:"Temporary class for definition switch",part:["WHOLE"],references:[M.structureuuid]}),re.references.push({uuid:M.structureuuid,docType:"FDA_SRS",citation:"Generated to switch definition type",publicDomain:!0,tags:["RECORD_MERGE","PUBLIC DOMAIN RELEASE"],access:[]}),M.updateRecord(re,function(){M.AltNewDef(M.oldAlt)},"2b")})}},{key:"AltNewDef",value:function(u){var M=this;this.text=!0===this.didStep5?"Step 2a complete. Running step 2b...":"Step 1 complete. Running step 2...",this.substanceService.getSubstanceDetails(this.oldAlt.uuid).subscribe(function(U){u=Ye.cloneDeep(U),M.fieldGetter[u.substanceClass].forEach(function(ii){u[ii]&&delete u[ii]}),M.fieldGetter[M.sub.substanceClass].forEach(function(ii){M.sub[ii]&&(u[ii]=M.sub[ii])}),u.substanceClass=M.sub.substanceClass;var re=rr.json.search(u,"//*[references]");re.forEach(function(ii){});for(var lt=re.filter(function(ii){return!!M.isObject(ii)}),Wt=[],nn=0;nnThere was a problem changing the primary definition. No changes were made to either record":2===u&&!1===this.didStep5||"2b"===u?'

    There was a problem changing the substance definition.


    To Restore the records:
    ':'

    There was a problem updating the new definition.


    To Restore the records:
    • Go to the earliest alternative details history and restore version '+this.altversion+'
      If that version is not available, go to the current version substance history card and select a previous version to restore
    • Go to the earliest primary version and restore version '+this.primeVersion+'
      If that version is not available, go to the
      current version and select a previous version to restore '}},{key:"getJson",value:function(){return this.substanceFormService.getJson()}},{key:"_typeof2",value:function(u){return this._typeof2="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(U){return typeof U}:function(U){return U&&"function"==typeof Symbol&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":typeof U},this._typeof2(u)}},{key:"_typeof",value:function(u){this._typeof="function"==typeof Symbol&&"symbol"===this._typeof2(Symbol.iterator)?function(U){return this._typeof2(U)}:function(U){return U&&"function"==typeof Symbol&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":this._typeof2(U)}}},{key:"isObject",value:function(u){return!!u&&u.constructor===Object}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(X.B),t.Y36(va.d),t.Y36(P.H7),t.Y36(On.b),t.Y36(ve.FW),t.Y36(ne.WI))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-definition-switch-dialog"]],decls:15,vars:5,consts:[[1,"dialog"],["mat-dialog-title",""],["mat-dialog-content","",1,"dialog-content"],[1,"message",3,"innerHTML"],[1,"dialog-body"],["class","code",4,"ngIf"],["class","substances-container",4,"ngIf"],[1,"spinner-container"],["class","top-bar","color","primary","mode","indeterminate",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose","",3,"disabled"],[1,"middle-fill"],[1,"code"],[1,"substances-container"],["class","button-content",4,"ngFor","ngForOf"],[1,"button-content"],["mat-button","",1,"mat-flat-button",3,"click"],[1,"text-center","thumb-col"],["appSubstanceImage","",1,"struc-thumb","img-responsive","subref",3,"entityId"],[1,"label"],["target","_blank",3,"routerLink"],["mat","","svgIcon","open_in_new",1,"new-icon"],["color","primary","mode","indeterminate",1,"top-bar"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"h1"),t._uU(3,"Switch Alternative and Primary Definitions"),t.qZA(),t.qZA(),t.TgZ(4,"div",2),t._UZ(5,"div",3),t.TgZ(6,"div",4),t.YNc(7,Gl,2,1,"div",5),t.YNc(8,Dp,2,1,"div",6),t.qZA(),t.TgZ(9,"div",7),t.YNc(10,mm,1,0,"mat-progress-bar",8),t.qZA(),t.qZA(),t.TgZ(11,"div",9),t.TgZ(12,"button",10),t._uU(13,"Close"),t.qZA(),t._UZ(14,"span",11),t.qZA(),t.qZA()),2&g&&(t.xp6(5),t.Q6J("innerHTML",u.text,t.oJD),t.xp6(2),t.Q6J("ngIf",""!==u.error),t.xp6(1),t.Q6J("ngIf",u.currentAlts&&u.currentAlts.length>0&&u.showButtons),t.xp6(2),t.Q6J("ngIf",!0===u.loading),t.xp6(2),t.Q6J("disabled",!0===u.loading))},directives:[ne.uh,ne.xY,Ee.O5,Ee.sg,v.lW,ra.m,h.yS,j.Hw,Ve.pW,ne.H8,ne.ZT],styles:[".thumb-col[_ngcontent-%COMP%]{height:175px;width:175px;margin:auto}.dialog-content[_ngcontent-%COMP%]{padding-top:20px;min-height:250px}.dialog-body[_ngcontent-%COMP%]{min-height:150px}.spinner-container[_ngcontent-%COMP%]{height:20px;width:100%;margin-top:auto;-ms-flex-line-pack:center;align-content:center}.substances-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:distribute;justify-content:space-around;margin-bottom:auto}.substance-button[_ngcontent-%COMP%]{margin:10px 5px 10px 10px;padding:0}.img-text[_ngcontent-%COMP%]{max-width:200px}.button-content[_ngcontent-%COMP%]{background-color:#fff;padding:5px;width:210px;display:inline-block;float:none;text-align:center}.label[_ngcontent-%COMP%]{width:100%}.new-icon[_ngcontent-%COMP%]{height:18px;width:18px}"]}),b}(),eu=n(79356),Bs=["dynamicComponent"],wc=["expansionPanel"];function wp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",24),t.NdJ("click",function(){return t.CHM(g),t.oxw().toggleValidation()}),t._uU(1),t._UZ(2,"mat-icon",25),t.qZA()}if(2&b){var u=t.oxw();t.Q6J("disabled",u.isLoading),t.xp6(1),t.hij(" ",u.showSubmissionMessages?"Hide":"Show"," messages "),t.xp6(1),t.Q6J("svgIcon",u.showSubmissionMessages?"chevron_up":"chevron_down")}}function Cd(b,L){if(1&b&&(t.ynx(0),t.TgZ(1,"mat-option",31),t._uU(2," Change Substance Class "),t.qZA(),t.TgZ(3,"mat-option",32),t._uU(4," Change Status to approved "),t.qZA(),t.TgZ(5,"mat-option",33),t._uU(6," Change Status to pending "),t.qZA(),t.TgZ(7,"mat-option",34),t._uU(8," Set Definition to private "),t.qZA(),t.TgZ(9,"mat-option",35),t._uU(10," Set Definition to public "),t.qZA(),t.TgZ(11,"mat-option",36),t._uU(12," Un-approve record (Remove approval ID) "),t.qZA(),t.TgZ(13,"mat-option",37),t._uU(14," Change Approval ID "),t.qZA(),t.TgZ(15,"mat-option",38),t._uU(16," Set concept status to non-approved "),t.qZA(),t.TgZ(17,"mat-option",39),t._uU(18," Merge subconcept "),t.qZA(),t.TgZ(19,"mat-option",40),t._uU(20," Switch primary and alt definitions "),t.qZA(),t.BQk()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("disabled",!g.id),t.xp6(2),t.Q6J("disabled","approved"===g.status),t.xp6(2),t.Q6J("disabled","pending"===g.status),t.xp6(8),t.Q6J("disabled",!g.id||"pending"===g.status||"concept"===g.substanceClass&&"non-approved record"===g.UNII),t.xp6(2),t.Q6J("disabled","concept"!=g.substanceClass)}}function Md(b,L){if(1&b&&(t.ynx(0),t.TgZ(1,"mat-option",41),t._uU(2," Predict N-Glycosylation Sites "),t.qZA(),t.TgZ(3,"mat-option",42),t._uU(4," Predict disulfide links by monoclonal antibody type "),t.qZA(),t.TgZ(5,"mat-option",43),t._uU(6," Register a Fragment "),t.qZA(),t.BQk()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("disabled","protein"!==g.substanceClass),t.xp6(2),t.Q6J("disabled","protein"!=g.substanceClass),t.xp6(2),t.Q6J("disabled","protein"!=g.substanceClass&&"nucleicAcid"!=g.substanceClass)}}function Yo(b,L){1&b&&(t.TgZ(0,"div",44),t._uU(1,"Saved Drafts"),t.qZA(),t.TgZ(2,"div",45),t.TgZ(3,"div",46),t.TgZ(4,"div",47),t._UZ(5,"mat-icon",48),t.qZA(),t.TgZ(6,"div",47),t.TgZ(7,"a"),t._uU(8,"d706be08-4015-4fa2-80e6-567cf7e2e23f"),t.qZA(),t.qZA(),t.TgZ(9,"div",47),t._uU(10,"April 1, 2022 08:05"),t.qZA(),t.TgZ(11,"div",47),t.TgZ(12,"button",49),t._uU(13,"Load Draft"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"div",46),t.TgZ(15,"div",47),t._UZ(16,"mat-icon",48),t.qZA(),t.TgZ(17,"div",47),t.TgZ(18,"a"),t._uU(19,"d706be08-4015-4fa2-80e6-567cf7e2e23f"),t.qZA(),t.qZA(),t.TgZ(20,"div",47),t._uU(21,"April 1, 2022 08:00"),t.qZA(),t.TgZ(22,"div",47),t.TgZ(23,"button",49),t._uU(24,"Load Draft"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(25,"div",46),t.TgZ(26,"div",47),t._UZ(27,"mat-icon",48),t.qZA(),t.TgZ(28,"div",47),t._uU(29,"register = protein"),t.qZA(),t.TgZ(30,"div",47),t._uU(31,"April 1, 2022 08:00"),t.qZA(),t.TgZ(32,"div",47),t.TgZ(33,"button",49),t._uU(34,"Load Draft"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(35,"div",50),t._UZ(36,"span",13),t.TgZ(37,"button",51),t._uU(38,"Close"),t.qZA(),t.qZA())}function pl(b,L){if(1&b&&(t.TgZ(0,"mat-option",55),t._uU(1),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.Q6J("value",g)("disabled",g===u.substanceClass),t.xp6(1),t.hij(" ",g," ")}}function hm(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",52),t.TgZ(1,"mat-form-field"),t.TgZ(2,"mat-label"),t._uU(3,"New Class"),t.qZA(),t.TgZ(4,"mat-select",53),t.NdJ("selectionChange",function(U){return t.CHM(g),t.oxw(2).changeClass(U)})("openedChange",function(U){return t.CHM(g),t.oxw(2).openedChange(U)}),t.YNc(5,pl,2,3,"mat-option",54),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(5),t.Q6J("ngForOf",u.classes)}}function xd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div",27),t.TgZ(2,"mat-form-field"),t.TgZ(3,"mat-label"),t._uU(4,"Advanced Features"),t.qZA(),t.TgZ(5,"mat-select",28),t.NdJ("openedChange",function(U){return t.CHM(g),t.oxw().openedChange(U)})("selectionChange",function(U){return t.CHM(g),t.oxw().useFeature(U)}),t.YNc(6,Cd,21,5,"ng-container",18),t.YNc(7,Md,7,3,"ng-container",18),t.qZA(),t.qZA(),t.qZA(),t.YNc(8,Yo,39,0,"ng-template",null,29,t.W1O),t.YNc(10,hm,6,1,"div",30),t.qZA()}if(2&b){var u=t.oxw();t.xp6(5),t.Q6J("ngModel",u.feature),t.xp6(1),t.Q6J("ngIf",!0===u.isAdmin),t.xp6(1),t.Q6J("ngIf",!0===u.isAdmin||!0===u.isUpdater),t.xp6(3),t.Q6J("ngIf","changeClass"===u.feature)}}function Oc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",56),t.NdJ("click",function(){return t.CHM(g),t.oxw().validate("approval")}),t._uU(1,"Approve"),t.qZA()}if(2&b){var u=t.oxw();t.Q6J("disabled",!u.canApprove||u.approving)}}function Kl(b,L){if(1&b&&(t.TgZ(0,"div",57),t._uU(1),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.hij(" ",g.submissionMessage," ")}}function Op(b,L){1&b&&(t.TgZ(0,"div",57),t._uU(1," Please correct or dismiss the following errors and submit again: "),t.qZA())}function Ep(b,L){if(1&b&&(t.TgZ(0,"span"),t._UZ(1,"br"),t.TgZ(2,"a",69),t._uU(3),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(4);t.xp6(2),t.Q6J("href",u.fixLink(g.href),t.LSH),t.xp6(1),t.Oqu(g.text)}}function Zp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",70),t.NdJ("click",function(){t.CHM(g);var M=t.oxw().index;return t.oxw(3).dismissValidationMessage(M)}),t._UZ(1,"mat-icon",71),t.qZA()}}function kp(b,L){if(1&b&&(t.TgZ(0,"div",62),t.TgZ(1,"span",63),t.TgZ(2,"div",64),t._uU(3),t.qZA(),t.TgZ(4,"div",65),t._uU(5),t.YNc(6,Ep,4,2,"span",66),t.qZA(),t.qZA(),t.TgZ(7,"span",67),t.YNc(8,Zp,2,0,"button",68),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.xp6(2),t.Q6J("ngClass","ERROR"==g.messageType?"error-message":"warning-message"),t.xp6(1),t.hij(" ",g.messageType,""),t.xp6(2),t.Oqu(g.message),t.xp6(1),t.Q6J("ngForOf",g.links),t.xp6(2),t.Q6J("ngIf","ERROR"!=g.messageType&&!u.approving)}}function Ec(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Op,2,0,"div",17),t.YNc(2,kp,9,5,"div",61),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!g.serverError&&!g.approving),t.xp6(1),t.Q6J("ngForOf",g.validationMessages)}}function tu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",72),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).submit()}),t._uU(1),t.qZA()}if(2&b){var u=t.oxw(2);t.Q6J("disabled",u.isLoading||!1===u.validationResult),t.xp6(1),t.hij("",u.validationMessages&&u.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function _m(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",73),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).showSubmissionMessages=!1}),t._uU(1," Cancel"),t.qZA()}}function Sd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",72),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).approve()}),t._uU(1," Confirm Approval"),t.qZA()}if(2&b){var u=t.oxw(2);t.Q6J("disabled",u.isLoading||!u.canApprove)}}function nu(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,Ec,3,2,"span",18),t.TgZ(2,"div",58),t._UZ(3,"span",13),t.YNc(4,tu,2,2,"button",59),t.YNc(5,_m,2,0,"button",60),t.YNc(6,Sd,2,1,"button",59),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",g.validationMessages.length>0),t.xp6(3),t.Q6J("ngIf",!g.approving),t.xp6(1),t.Q6J("ngIf",!g.approving),t.xp6(1),t.Q6J("ngIf",g.approving)}}function iu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"button",77),t.NdJ("click",function(U){return t.CHM(g),t.oxw().$implicit.addItem(),U.stopPropagation()}),t._uU(2),t._UZ(3,"mat-icon",78),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit;t.xp6(1),t.MGl("id","Add new ",u.menuLabel,""),t.MGl("matTooltip","Add new ",u.menuLabel,""),t.xp6(1),t.hij(" Add ",u.menuLabel," ")}}var Iu=function(L){return{hidden:L}};function Lu(b,L){if(1&b&&(t.TgZ(0,"mat-expansion-panel",74,75),t.TgZ(2,"mat-expansion-panel-header"),t.TgZ(3,"mat-panel-title"),t.TgZ(4,"h2"),t._uU(5),t.qZA(),t._UZ(6,"div",13),t.YNc(7,iu,4,3,"div",18),t.qZA(),t.qZA(),t._UZ(8,"div",null,76),t.qZA()),2&b){var g=L.$implicit,u=t.oxw();t.Q6J("expanded",u.expandedComponents.indexOf(g.dynamicComponentName)>-1)("id",g.dynamicComponentName)("ngClass",t.VKq(5,Iu,g.isHidden)),t.xp6(5),t.Oqu(g.menuLabel),t.xp6(2),t.Q6J("ngIf",g.canAddItem)}}var cr=function(L){return{hide:L}},au=function(L,g){return{"submission-messages":!0,collapsed:L,expanded:g}},Td=function(){var b=function(){function L(g,u,M,U,re,lt,Wt,nn,bn,Bn,Xn,oi,pi,ii){var Ui=this;(0,p.Z)(this,L),this.activatedRoute=g,this.substanceService=u,this.loadingService=M,this.mainNotificationService=U,this.router=re,this.dynamicComponentLoader=lt,this.gaService=Wt,this.substanceFormService=nn,this.overlayContainerService=bn,this.configService=Bn,this.dialog=Xn,this.authService=oi,this.titleService=pi,this.utilsService=ii,this.isLoading=!0,this.formSections=[],this.expandedComponents=["substance-form-definition","substance-form-structure","substance-form-moieties","substance-form-references"],this.showSubmissionMessages=!1,this.validationResult=!1,this.subscriptions=[],this.draftCount=0,this.autoSaveWait=6e4,this.classes=["concept","protein","chemical","structurallyDiverse","polymer","nucleicAcid","mixture","specifiedSubstanceG1","specifiedSubstanceG2","specifiedSubstanceG3"],this.imported=!1,this.forceChange=!1,this.sameSubstance=!1,this.approvalType="lastEditedBy",this.substanceService.showImagePopup.subscribe(function(Qi){Ui.hidePopup=Qi}),this.substanceService.imagePopupUnit.subscribe(function(Qi){Ui.unit=Qi})}return(0,e.Z)(L,[{key:"showHidePopup",value:function(){this.hidePopup=!this.hidePopup,this.substanceService.showImagePopup.next(this.hidePopup)}},{key:"autoSave",value:function(){var u=this;setTimeout(function(){u.substanceFormService.autoSave()&&u.saveDraft(!0),u.autoSave()},this.autoSaveWait)}},{key:"openModal",value:function(u){var M=this,U=this.dialog.open(u,{height:"200px",width:"400px"});this.overlayContainer.style.zIndex="1002",U.afterClosed().subscribe(function(re){M.overlayContainer.style.zIndex=null})}},{key:"showDrafts",value:function(){var u=this,M=this.dialog.open(bt,{maxHeight:"85%",width:"70%",data:{uuid:this.id}});this.overlayContainer.style.zIndex="1002",M.afterClosed().subscribe(function(U){if(u.overlayContainer.style.zIndex=null,U){u.loadingService.setLoading(!0);var re=U.substance;u.id&&re.uuid&&u.id===re.uuid?(u.substanceFormService.importSubstance(re,"update"),u.submissionMessage=null,u.validationMessages=[],u.showSubmissionMessages=!1,setTimeout(function(){u.loadingService.setLoading(!1),u.isLoading=!1,u.overlayContainer.style.zIndex=null},1e3)):U.uuid&&"register"!=U.uuid?u.router.navigateByUrl("/substances/"+U.uuid+"/edit?action=import&source=draft",{state:{record:U.substance}}):setTimeout(function(){u.overlayContainer.style.zIndex=null,u.router.onSameUrlNavigation="reload",u.loadingService.setLoading(!1),u.router.onSameUrlNavigation="reload",u.router.navigateByUrl("/substances/register/"+U.substance.substanceClass+"?action=import",{state:{record:U.substance}})},1e3)}var Wt=Object.keys(localStorage),nn=Wt.length;for(u.draftCount=0,u.drafts=[];nn--;)if(Wt[nn].startsWith("gsrs-draft-")){var bn=JSON.parse(localStorage.getItem(Wt[nn]));bn.key=Wt[nn],(u.id&&bn.uuid===u.id||!u.id&&bn.type===u.activatedRoute.snapshot.params.type&&"register"===bn.uuid)&&u.draftCount++,u.drafts.push(bn)}})}},{key:"importDialog",value:function(){var u=this,M=this.dialog.open(wn,{width:"650px",autoFocus:!1});this.overlayContainer.style.zIndex="1002",M.afterClosed().pipe((0,Y.q)(1)).subscribe(function(re){if(re){u.loadingService.setLoading(!0);var lt=JSON.parse(re);u.id&<.uuid&&u.id===lt.uuid?(u.substanceFormService.importSubstance(lt,"update"),u.submissionMessage=null,u.validationMessages=[],u.showSubmissionMessages=!1,setTimeout(function(){u.loadingService.setLoading(!1),u.isLoading=!1,u.overlayContainer.style.zIndex=null},1e3)):setTimeout(function(){u.overlayContainer.style.zIndex=null,u.router.onSameUrlNavigation="reload",u.loadingService.setLoading(!1),u.router.navigateByUrl("/substances/register?action=import",{state:{record:re}})},1e3)}})}},{key:"test",value:function(){this.router.navigated=!1,this.router.navigate([this.router.url])}},{key:"ngOnInit",value:function(){var u=this;this.loadingService.setLoading(!0),this.configService.configData&&this.configService.configData.approvalType&&(this.approvalType=this.configService.configData.approvalType),this.configService.configData&&this.configService.configData.autoSaveWait&&(this.autoSaveWait=this.configService.configData.autoSaveWait),this.isAdmin=this.authService.hasRoles("admin"),this.isUpdater=this.authService.hasAnyRoles("Updater","SuperUpdater"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.imported=!1;var M=this.activatedRoute.params.subscribe(function(lt){var Wt=u.activatedRoute.snapshot.queryParams.action||null;if(lt.id)if(Wt&&"import"===Wt&&window.history.state){var nn=window.history.state;u.imported=!0,u.getDetailsFromImport(nn.record)}else{var bn=lt.id;if(bn!==u.id){u.id=bn,u.gaService.sendPageView("Substance Edit");var Bn=u.activatedRoute.snapshot.queryParamMap.get("switch")||null;Bn?u.getSubstanceDetails(Bn):u.getSubstanceDetails()}}else if(Wt&&"import"===Wt&&window.history.state){var Xn=window.history.state;u.imported=!0,u.getDetailsFromImport(Xn.record),u.gaService.sendPageView("Substance Register")}else u.copy=u.activatedRoute.snapshot.queryParams.copy||null,u.copy?(u.getPartialSubstanceDetails(u.copy,u.activatedRoute.snapshot.queryParams.copyType||null),u.gaService.sendPageView("Substance Register")):setTimeout(function(){u.gaService.sendPageView("Substance Register"),u.subClass=u.activatedRoute.snapshot.params.type||"chemical",u.substanceClass=u.subClass,u.titleService.setTitle("Register - "+u.subClass),u.substanceFormService.loadSubstance(u.subClass).pipe((0,Y.q)(1)).subscribe(function(){u.setFormSections(bs.x[u.subClass]),u.loadingService.setLoading(!1),u.isLoading=!1})})});this.subscriptions.push(M);var U=this.router.events.subscribe(function(lt){lt instanceof h.OD&&u.substanceFormService.unloadSubstance()});this.subscriptions.push(U),this.approving=!1;var re=this.substanceFormService.definition.subscribe(function(lt){u.definition=lt,setTimeout(function(){u.canApprove=u.canBeApproved()})});this.subscriptions.push(re),this.authService.getAuth().pipe((0,Y.q)(1)).subscribe(function(lt){u.user=lt.identifier,setTimeout(function(){u.canApprove=u.canBeApproved()})})}},{key:"getDrafts",value:function(){var u=Object.keys(localStorage),M=u.length;this.drafts=[];for(var U=0;M--;)if(u[M].startsWith("gsrs-draft-")){var re=JSON.parse(localStorage.getItem(u[M]));re.key=u[M],(this.id&&re.uuid===this.id||!this.id&&re.type===this.activatedRoute.snapshot.params.type&&"register"===re.uuid)&&U++,this.drafts.push(re)}this.draftCount=U}},{key:"ngAfterViewInit",value:function(){var u=this;this.getDrafts();var M=this.dynamicComponents.changes.subscribe(function(){var U=u.formSections.length,re=0;if(!u.forceChange){u.loadingService.setLoading(!0);var lt=new Date;u.dynamicComponents.forEach(function(Wt,nn){u.dynamicComponentLoader.getComponentFactory(u.formSections[nn].dynamicComponentName).subscribe(function(bn){u.loadingService.setLoading(!0),u.formSections[nn].dynamicComponentRef=Wt.createComponent(bn),u.formSections[nn].matExpansionPanel=u.matExpansionPanels.find(function(oi,pi){return nn===pi}),u.formSections[nn].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,Y.q)(1)).subscribe(function(oi){u.formSections[nn].menuLabel=oi});var Bn=u.formSections[nn].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(oi){u.formSections[nn].isHidden=oi});u.subscriptions.push(Bn),u.formSections[nn].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,Y.q)(1)).subscribe(function(oi){if(u.formSections[nn].canAddItem=oi,oi){var pi=u.formSections[nn].addItemEmitter.subscribe(function(){u.formSections[nn].matExpansionPanel.open(),u.formSections[nn].dynamicComponentRef.instance.addItem()});u.formSections[nn].dynamicComponentRef.instance.componentDestroyed.pipe((0,Y.q)(1)).subscribe(function(){pi.unsubscribe()})}}),u.formSections[nn].dynamicComponentRef.changeDetectorRef.detectChanges(),++re>=U?u.loadingService.setLoading(!1):(new Date).getTime()-lt.getTime()>12e3&&confirm("There was a network error while fetching files, would you like to refresh?")&&window.location.reload(),setTimeout(function(){u.loadingService.setLoading(!1),u.UNII=u.substanceFormService.getUNII()},5)})})}M.unsubscribe(),setTimeout(function(){u.autoSave()},1e4)})}},{key:"openedChange",value:function(u){this.overlayContainer.style.zIndex=u?"1002":"1000"}},{key:"useFeature",value:function(u){this.feature=u.value,"glyco"===this.feature?this.glyco():"disulfide"===this.feature&&this.disulfide(),"concept"===this.feature&&this.concept(),"unapprove"===this.feature&&(confirm("Are you sure you'd like to remove the approvalID?")&&this.substanceFormService.unapproveRecord(),this.feature=void 0),"setPrivate"===this.feature&&(this.substanceFormService.setDefinitionPrivate(),this.feature=void 0),"setPublic"===this.feature&&(this.substanceFormService.setDefinitionPublic(),this.feature=void 0),"approved"===this.feature&&(this.substanceFormService.changeStatus("approved"),this.feature=void 0),"pending"===this.feature&&(this.substanceFormService.changeStatus("pending"),this.feature=void 0),"merge"===this.feature&&(this.mergeConcept(),this.feature=void 0),"switch"===this.feature&&(this.definitionSwitch(),this.feature=void 0),"changeApproval"===this.feature&&this.substanceFormService.changeApproval(),"fragment"===this.feature&&this.openFragmentDialog()}},{key:"openFragmentDialog",value:function(){var u=this.dialog.open(eu._,{width:"70%",height:"70%"});this.overlayContainer.style.zIndex="50";var M=u.afterClosed().pipe((0,Y.q)(1)).subscribe(function(U){});this.subscriptions.push(M)}},{key:"changeClass",value:function(u){this.router.navigate(["/substances",this.id,"edit"],{queryParams:{switch:u.value}}),this.feature=void 0}},{key:"changeStatus",value:function(u){this.substanceFormService.changeStatus(u),this.feature=void 0}},{key:"concept",value:function(){this.substanceFormService.conceptNonApproved(),this.feature=void 0}},{key:"glyco",value:function(){this.substanceFormService.predictSites(),this.feature=void 0}},{key:"disulfide",value:function(){this.substanceFormService.disulfideLinks(),this.feature=void 0}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(u){u.unsubscribe()})}},{key:"canBeApproved",value:function(){var u=this.activatedRoute.snapshot.queryParams.action||null;if(u&&"import"===u)return!1;if("createdBy"===this.approvalType){if(this.definition&&this.definition.createdBy&&this.user){var M=this.definition.createdBy;return!(!M||"approved"===this.definition.status||M===this.user)}return!1}if(this.definition&&this.definition.lastEditedBy&&this.user){var U=this.definition.lastEditedBy;return!(!U||"approved"===this.definition.status||U===this.user)}}},{key:"showJSON",value:function(){var u=this.dialog.open(Pc,{width:"90%"});this.overlayContainer.style.zIndex="1002";var M=u.afterClosed().pipe((0,Y.q)(1)).subscribe(function(U){});this.subscriptions.push(M)}},{key:"getSubstanceDetails",value:function(u){var M=this;this.substanceService.getSubstanceDetails(this.id).pipe((0,Y.q)(1)).subscribe(function(U){U._name&&M.titleService.setTitle("Edit - "+U._name),U?(M.definitionType=U.definitionType,u&&(U=M.substanceFormService.switchType(U,u)),M.substanceClass=U.substanceClass,M.status=U.status,M.substanceFormService.loadSubstance(U.substanceClass,U).pipe((0,Y.q)(1)).subscribe(function(){M.setFormSections(bs.x[U.substanceClass])})):M.handleSubstanceRetrivalError(),M.loadingService.setLoading(!1),M.isLoading=!1},function(U){M.gaService.sendException("getSubstanceDetails: error from API call"),M.loadingService.setLoading(!1),M.isLoading=!1,M.handleSubstanceRetrivalError()})}},{key:"jsonValid",value:function(u){try{JSON.parse(u)}catch(M){return!1}return!0}},{key:"getDetailsFromImport",value:function(u,M){var U=this;if(this.jsonValid(u)||(u=JSON.stringify(u)),u&&this.jsonValid(u)){var re=JSON.parse(u);this.definitionType=re.definitionType,this.substanceClass=re.substanceClass,this.status=re.status,this.substanceFormService.loadSubstance(re.substanceClass,re,"import").pipe((0,Y.q)(1)).subscribe(function(){U.setFormSections(bs.x[re.substanceClass]),setTimeout(function(){U.forceChange=!0,U.dynamicComponents.forEach(function(lt,Wt){U.dynamicComponentLoader.getComponentFactory(U.formSections[Wt].dynamicComponentName).subscribe(function(nn){U.formSections[Wt].dynamicComponentRef=lt.createComponent(nn),U.formSections[Wt].matExpansionPanel=U.matExpansionPanels.find(function(Bn,Xn){return Wt===Xn}),U.formSections[Wt].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,Y.q)(1)).subscribe(function(Bn){U.formSections[Wt].menuLabel=Bn});var bn=U.formSections[Wt].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(Bn){U.formSections[Wt].isHidden=Bn});U.subscriptions.push(bn),U.formSections[Wt].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,Y.q)(1)).subscribe(function(Bn){if(U.formSections[Wt].canAddItem=Bn,Bn){var Xn=U.formSections[Wt].addItemEmitter.subscribe(function(){U.formSections[Wt].matExpansionPanel.open(),U.formSections[Wt].dynamicComponentRef.instance.addItem()});U.formSections[Wt].dynamicComponentRef.instance.componentDestroyed.pipe((0,Y.q)(1)).subscribe(function(){Xn.unsubscribe()})}}),U.formSections[Wt].dynamicComponentRef.changeDetectorRef.detectChanges()})}),U.canApprove=!1})},function(lt){U.loadingService.setLoading(!1)})}else this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1);this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"getPartialSubstanceDetails",value:function(u,M){var U=this;this.substanceService.getSubstanceDetails(u).pipe((0,Y.q)(1)).subscribe(function(re){re?(U.substanceClass=re.substanceClass,U.status=re.status,delete re.uuid,re._name&&delete re._name,U.scrub(re,M),U.substanceFormService.loadSubstance(re.substanceClass,re).pipe((0,Y.q)(1)).subscribe(function(){U.setFormSections(bs.x[re.substanceClass]),U.loadingService.setLoading(!1),U.isLoading=!1})):U.handleSubstanceRetrivalError()},function(re){U.gaService.sendException("getSubstanceDetails: error from API call"),U.loadingService.setLoading(!1),U.isLoading=!1,U.handleSubstanceRetrivalError()})}},{key:"setFormSections",value:function(){var u=this,M=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.formSections=[],M.forEach(function(U){var re=new vd(U);u.formSections.push(re)})}},{key:"handleSubstanceRetrivalError",value:function(){var u=this;this.mainNotificationService.setNotification({message:"The substance you're trying to edit doesn't exist.",type:et.k.error,milisecondsToShow:4e3}),setTimeout(function(){u.router.navigate(["/substances/register"]),u.substanceFormService.loadSubstance(u.subClass).pipe((0,Y.q)(1)).subscribe(function(){u.setFormSections(bs.x.chemical),u.loadingService.setLoading(!1),u.isLoading=!1})},5e3)}},{key:"validate",value:function(u){var M=this;this.approving=!(!u||"approval"!==u),this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.substanceFormService.validateSubstance().pipe((0,Y.q)(1)).subscribe(function(U){M.submissionMessage=null,M.validationMessages=U.validationMessages.filter(function(re){return"ERROR"===re.messageType.toUpperCase()||"WARNING"===re.messageType.toUpperCase()}),M.validationResult=U.valid,M.showSubmissionMessages=!0,M.loadingService.setLoading(!1),M.isLoading=!1,0===M.validationMessages.length&&!0===U.valid&&(M.submissionMessage="Substance is Valid. Would you like to submit?"),u&&"approval"===u&&(M.submissionMessage="Are you sure you'd like to approve this substance?")},function(U){M.addServerError(U),M.loadingService.setLoading(!1),M.isLoading=!1})}},{key:"approve",value:function(){var u=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.substanceFormService.approveSubstance().pipe((0,Y.q)(1)).subscribe(function(M){u.loadingService.setLoading(!1),u.isLoading=!1,u.validationMessages=null,u.openSuccessDialog("approve"),u.submissionMessage="Substance was approved successfully",u.showSubmissionMessages=!0,u.validationResult=!1},function(M){u.showSubmissionMessages=!0,u.loadingService.setLoading(!1),u.isLoading=!1,u.submissionMessage="Substance Could not be approved",u.addServerError(M.serverError),setTimeout(function(){u.showSubmissionMessages=!1,u.submissionMessage=null},1e4)})}},{key:"submit",value:function(){var u=this;this.isLoading=!0,this.approving=!1,this.loadingService.setLoading(!0),this.substanceFormService.saveSubstance().pipe((0,Y.q)(1)).subscribe(function(M){u.loadingService.setLoading(!1),u.isLoading=!1,u.validationMessages=null,u.showSubmissionMessages=!1,u.submissionMessage="",u.id||(u.id=M.uuid),u.openSuccessDialog()},function(M){u.showSubmissionMessages=!0,u.loadingService.setLoading(!1),u.isLoading=!1,u.submissionMessage=null,M.validationMessages&&M.validationMessages.length?(u.validationResult=M.isSuccessfull,u.validationMessages=M.validationMessages.filter(function(U){return"ERROR"===U.messageType.toUpperCase()||"WARNING"===U.messageType.toUpperCase()}),u.showSubmissionMessages=!0):(u.submissionMessage="There was a problem with your submission",u.addServerError(M.serverError),setTimeout(function(){u.showSubmissionMessages=!1,u.submissionMessage=null},8e3))})}},{key:"dismissValidationMessage",value:function(u){this.validationMessages.splice(u,1),0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"addServerError",value:function(u){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var M={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};u&&u.error&&u.error.message?M.message="Server Error "+(u.status+": "||0)+u.error.message:u&&u.error&&"string"==typeof u.error?M.message="Server Error "+(u.status+": "||0)+u.error:u&&u.message&&(M.message="Server Error "+(u.status+": "||0)+u.message),this.validationMessages=[M],this.showSubmissionMessages=!0}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"dismissAllValidationMessages",value:function(){for(var u=this.validationMessages.length-1;u>=0;u--)"ERROR"!==this.validationMessages[u].messageType&&this.validationMessages.splice(u,1);0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"unloadNotification",value:function(u){this.substanceFormService.isSubstanceUpdated&&(u.returnValue=!0)}},{key:"scrub",value:function(u,M){function U(){function Jo(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return Jo()+Jo()+"-"+Jo()+"-"+Jo()+"-"+Jo()+"-"+Jo()+Jo()+Jo()}for(var re=u,lt=rr.json.search(re,"//*[id]"),Wt={},nn=0;nn0&&(Wt=M.names[0].name),u){this.getDrafts(),this.drafts.filter(function(Qi){return Qi.auto});var Xn=null,oi=null,pi=null;this.drafts.forEach(function(Qi){Qi.auto&&("gsrs-draft-auto1"===Qi.file&&(Xn=Qi),"gsrs-draft-auto2"===Qi.file&&(oi=Qi),"gsrs-draft-auto3"===Qi.file&&(pi=Qi))});var ii="gsrs-draft-auto";Xn?oi?pi?ii=Xn.date0),t.xp6(1),t.Q6J("ngIf",!0===u.isAdmin||!0===u.isUpdater),t.xp6(4),t.Q6J("ngIf",u.definition&&"concept"!==u.definition.substanceClass&&!u.definition.approvalID&&!u.imported&&"ALTERNATIVE"!==u.definitionType),t.xp6(1),t.Q6J("ngClass",t.WLB(15,au,!u.showSubmissionMessages,u.showSubmissionMessages)),t.xp6(1),t.Q6J("ngIf",u.submissionMessage),t.xp6(1),t.Q6J("ngIf",u.validationMessages),t.xp6(5),t.Q6J("ngForOf",u.formSections))},directives:[Ee.mk,ra.m,v.lW,Ee.O5,j.Hw,Pt.KE,Pt.hX,de.gD,s.JJ,s.On,ye.ey,ne.xY,ne.H8,ne.ZT,Ee.sg,Ie.gM,Ot.pp,Ot.ib,Ot.yz,Ot.yK],styles:["#overlay[_ngcontent-%COMP%]{position:fixed;display:block;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:2;cursor:pointer}.hide[_ngcontent-%COMP%]{display:none!important}.center-screen[_ngcontent-%COMP%]{z-index:2;position:fixed;background-color:#fff;width:50%;height:50%;top:50%;left:50%;margin-right:-50%;-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.center-screen[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{transition-duration:4s;margin:0 auto;display:block}.center-screen[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover{-ms-transform:scale(1.7);transform:scale(1.7);-webkit-transform:scale(1.7);-moz-transform:scale(1.7);z-index:0}.image-popped-up[_ngcontent-%COMP%]{width:100%;height:100%;padding:10px}.close-out[_ngcontent-%COMP%]{padding:10px;float:right;font-weight:500;cursor:pointer}.top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.cdk-overlay-pane[_ngcontent-%COMP%]{z-index:1005}mat-select-panel[_ngcontent-%COMP%]{z-index:1005}.admin-functions[_ngcontent-%COMP%], .changeClass[_ngcontent-%COMP%]{margin:-10px 5px -15px 30px;color:#4793d1}.admin-functions[_ngcontent-%COMP%] .mat-form-field-wrapper, .changeClass[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-bottom:20px!important} .mat-form-field-wrapper{padding-bottom:5px}.advanced-features[_ngcontent-%COMP%]{z-index:2000!important;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-left:10px} .cdk-overlay-pane{margin-top:20px!important}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:121px}.actions-container[_ngcontent-%COMP%]{max-width:1128px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.mat-accordion[_ngcontent-%COMP%]{width:100%;max-width:1020px;box-sizing:border-box}.hidden[_ngcontent-%COMP%]{display:none!important}.validation-body[_ngcontent-%COMP%]{max-width:95%;display:-ms-flexbox;display:flex;max-width:960px;word-break:break-word}.validation-dismiss[_ngcontent-%COMP%]{width:5%}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px;height:40px;min-width:95px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.validate-button[_ngcontent-%COMP%]{margin-left:15px}.mat-expansion-panel-header-title[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.internal-link[_ngcontent-%COMP%]{color:#448aff}.import-button[_ngcontent-%COMP%]{margin-left:15px}.json-button[_ngcontent-%COMP%]{margin-left:30px}.draft-button[_ngcontent-%COMP%]{margin-left:15px}.chip[_ngcontent-%COMP%]{background-color:#fff;border-radius:50%;padding:3px 5px;margin-left:5px;color:#1565c0;height:33px}"]}),b}(),Fu=n(66794),uc=n(44646),Nu=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.substanceFormService=g}return(0,e.Z)(L,[{key:"canDeactivate",value:function(u){return!this.substanceFormService.isSubstanceUpdated||!!confirm("You have unsaved changes! If you leave, your changes will be lost.")}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.LFG(X.B))},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac,providedIn:"root"}),b}(),ru=n(62128),ou=n(43188),su=n(5818);function wl(b,L){if(1&b&&(t.TgZ(0,"mat-option",10),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.Q6J("value",g),t.xp6(1),t.hij(" ",g," ")}}function gm(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-form-field"),t.TgZ(1,"mat-select",6),t.NdJ("openedChange",function(U){return t.CHM(g),t.oxw().openedChange(U)}),t.YNc(2,wl,2,2,"mat-option",7),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(1),t.Q6J("formControl",u.conditionControl),t.xp6(1),t.Q6J("ngForOf",u.conditionOptions)}}function vm(b,L){if(1&b&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.Q6J("value",g)("matTooltip",g),t.xp6(1),t.hij(" ",g," ")}}function lu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"mat-form-field"),t.TgZ(1,"mat-select",6),t.NdJ("openedChange",function(U){return t.CHM(g),t.oxw().openedChange(U)}),t.YNc(2,vm,2,3,"mat-option",11),t.qZA(),t._UZ(3,"span",12),t.TgZ(4,"mat-hint",13),t.TgZ(5,"a",14),t.NdJ("click",function(){return t.CHM(g),t.oxw().showAllFields()}),t._uU(6,"Show all fields"),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(1),t.Q6J("formControl",u.queryablePropertiesControl),t.xp6(1),t.Q6J("ngForOf",u.queryableOptionsCommon)}}function is(b,L){if(1&b&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.Q6J("value",g)("matTooltip",g),t.xp6(1),t.hij(" ",g," ")}}function Ad(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"input",17),t.NdJ("blur",function(){return t.CHM(g),t.oxw().queryablePropertiesAutocompleteBlurred()}),t.qZA(),t.TgZ(3,"a",18),t.NdJ("click",function(){return t.CHM(g),t.oxw().clearSelectedQueryableProperty()}),t._UZ(4,"mat-icon",19),t.qZA(),t.TgZ(5,"mat-hint",13),t.TgZ(6,"a",14),t.NdJ("click",function(){return t.CHM(g),t.oxw().showCommonFields()}),t._uU(7,"Show common fields"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"mat-autocomplete",20,21),t.NdJ("optionSelected",function(re){return t.CHM(g),t.oxw().queryablePropertySelected(re.option.value)})("opened",function(){return t.CHM(g),t.oxw().increaseOverlayZindex()})("closed",function(){return t.CHM(g),t.oxw().queryablePropertiesAutocompleteClosed()}),t.YNc(10,is,2,3,"mat-option",11),t.qZA(),t.qZA()}if(2&b){var u=t.MAs(9),M=t.oxw();t.xp6(2),t.Q6J("formControl",M.queryablePropertiesAutocompleteControl)("matAutocomplete",u),t.xp6(8),t.Q6J("ngForOf",M.queryableOptionsAll)}}function Ip(b,L){if(1&b&&(t.TgZ(0,"mat-option",10),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.Q6J("value",g),t.xp6(1),t.hij(" ",g," ")}}function fl(b,L){1&b&&(t.TgZ(0,"mat-error"),t._uU(1,"Required"),t.qZA())}function Hr(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"input",23),t.NdJ("ngModelChange",function(Wt){t.CHM(g);var nn=t.oxw(),bn=nn.$implicit,Bn=nn.index;return t.oxw().commandInputValueDict[bn.type][Bn]=Wt})("keyup",function(Wt){t.CHM(g);var nn=t.oxw().$implicit,bn=t.oxw();return nn.constructQuery(Wt.target.value.trim(),bn.selectedCondition,bn.selectedQueryableProperty,bn.selectedLucenePath,bn.queryUpdated,bn.queryParts,bn.commandInputValueDict[nn.type])}),t.qZA(),t.YNc(3,fl,2,0,"mat-error",2),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(),M=u.$implicit,U=u.index,re=t.oxw();t.xp6(2),t.Q6J("type",M.type)("name","input_"+U)("ngModel",re.commandInputValueDict[M.type][U]),t.xp6(1),t.Q6J("ngIf",!re.commandInputValueDict[M.type][U])}}function ml(b,L){1&b&&(t.TgZ(0,"mat-error"),t._uU(1,"Required"),t.qZA())}function cu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"input",24),t.NdJ("ngModelChange",function(nn){t.CHM(g);var bn=t.oxw(),Bn=bn.$implicit,Xn=bn.index;return t.oxw().commandInputValueDict[Bn.type][Xn]=nn})("dateChange",function(nn){t.CHM(g);var bn=t.oxw().$implicit,Bn=t.oxw();return bn.constructQuery(nn.value,Bn.selectedCondition,Bn.selectedQueryableProperty,Bn.selectedLucenePath,Bn.queryUpdated,Bn.queryParts,Bn.commandInputValueDict[bn.type])})("dateInput",function(nn){t.CHM(g);var bn=t.oxw().$implicit,Bn=t.oxw();return bn.constructQuery(nn.value,Bn.selectedCondition,Bn.selectedQueryableProperty,Bn.selectedLucenePath,Bn.queryUpdated,Bn.queryParts,Bn.commandInputValueDict[bn.type])}),t.qZA(),t.YNc(3,ml,2,0,"mat-error",2),t._UZ(4,"mat-datepicker-toggle",25),t.TgZ(5,"mat-datepicker",26,27),t.NdJ("opened",function(){return t.CHM(g),t.oxw(2).increaseOverlayZindex()})("closed",function(){return t.CHM(g),t.oxw(2).decreaseOverlayZindex()}),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.MAs(6),M=t.oxw(),U=M.$implicit,re=M.index,lt=t.oxw();t.xp6(2),t.Q6J("ngModel",lt.commandInputValueDict[U.type][re])("matDatepicker",u),t.xp6(1),t.Q6J("ngIf",!lt.commandInputValueDict[U.type][re]),t.xp6(1),t.Q6J("for",u)}}function Zc(b,L){if(1&b&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.Q6J("value",g.value)("matTooltip",g.display),t.xp6(1),t.hij(" ",g.display," ")}}function $l(b,L){1&b&&(t.TgZ(0,"mat-error"),t._uU(1,"Required"),t.qZA())}function Ri(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"mat-select",28),t.NdJ("ngModelChange",function(Wt){t.CHM(g);var nn=t.oxw(),bn=nn.$implicit,Bn=nn.index;return t.oxw().commandInputValueDict[bn.type][Bn]=Wt})("openedChange",function(Wt){return t.CHM(g),t.oxw(2).openedChange(Wt)})("selectionChange",function(Wt){t.CHM(g);var nn=t.oxw().$implicit,bn=t.oxw();return nn.constructQuery(Wt.value,bn.selectedCondition,bn.selectedQueryableProperty,bn.selectedLucenePath,bn.queryUpdated,bn.queryParts,bn.commandInputValueDict[nn.type])}),t.YNc(3,Zc,2,3,"mat-option",11),t.qZA(),t.YNc(4,$l,2,0,"mat-error",2),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(),M=u.$implicit,U=u.index,re=t.oxw();t.xp6(2),t.Q6J("ngModel",re.commandInputValueDict[M.type][U]),t.xp6(1),t.Q6J("ngForOf",re.cvOptions),t.xp6(1),t.Q6J("ngIf",!re.commandInputValueDict[M.type][U])}}function hl(b,L){if(1&b&&(t.TgZ(0,"div",22),t.YNc(1,Hr,4,4,"div",2),t.YNc(2,cu,7,4,"div",2),t.YNc(3,Ri,5,3,"div",2),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("ngIf","text"==g.type||"boolean"==g.type||"number"==g.type),t.xp6(1),t.Q6J("ngIf","datetime"==g.type),t.xp6(1),t.Q6J("ngIf","select"==g.type)}}var uu=function(){var b=function(){function L(g,u){(0,p.Z)(this,L),this.overlayContainerService=g,this.cvService=u,this._index=0,this.queryUpdated=new t.vpe,this.queryablePropertiesControl=new s.NI,this.queryablePropertiesAutocompleteControl=new s.NI,this.commandControl=new s.NI,this.subscriptions=[],this.conditionOptions=["AND","OR","NOT"],this.conditionControl=new s.NI,this.selectedCondition="",this.queryParts=[],this.typeCommandOptions=ru.k,this.commandInputValueDict={},this.isShowCommonFields=!0}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),ru.J.forEach(function(oi){u.commandInputValueDict[oi]=[]});var M=this.queryablePropertiesControl.valueChanges.subscribe(function(oi){u.queryablePropertySelected(oi)});this.subscriptions.push(M);var U=this.queryablePropertiesAutocompleteControl.valueChanges.subscribe(function(oi){u.queryableOptionsAll=u.allOptions.filter(function(pi){return pi.toLowerCase().indexOf(oi.toLowerCase())>-1})});this.subscriptions.push(U);var Wt,re=this.commandControl.valueChanges.subscribe(function(oi){u.setCommand(oi)});if(this.subscriptions.push(re),this._index>0){this.conditionControl.setValue("AND"),this.selectedCondition="AND ";var lt=this.conditionControl.valueChanges.subscribe(function(oi){u.selectedCondition="".concat(oi," "),u.refreshQuery()});this.subscriptions.push(lt)}if(this.queryStatementHash){var nn=localStorage.getItem(this.queryStatementHash.toString());nn&&(Wt=JSON.parse(nn))}if(null!=Wt){var Xn=ru.k[this._queryableDictionary[Wt.queryableProperty].type][Wt.command];Xn.commandInputs&&(this.commandInputValueDict[Xn.commandInputs[0].type]=Wt.commandInputValues),this.queryParts=Wt.queryParts,this.conditionControl.setValue(Wt.condition.trim(),{emitEvent:!1}),this.selectedCondition=Wt.condition,this.isShowCommonFields=this.queryableOptionsCommon.indexOf(Wt.queryableProperty)>-1,this.queryableOptionsCommon.indexOf(Wt.queryableProperty)>-1?(this.isShowCommonFields=!0,this.queryablePropertiesControl.setValue(Wt.queryableProperty,{emitEvent:!1})):(this.isShowCommonFields=!1,this.queryablePropertiesAutocompleteControl.setValue(Wt.queryableProperty,{emitEvent:!1})),this.processQueriablePropertyChange(Wt.queryableProperty),this.commandControl.setValue(Wt.command)}else this.queryablePropertiesControl.setValue("All")}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(u){u.unsubscribe()})}},{key:"queryableDictionary",set:function(u){null!=u&&(this._queryableDictionary=u)}},{key:"index",get:function(){return this._index},set:function(u){null!=u&&(this._index=u,0===this._index&&this.commandInputs&&(this.selectedCondition="",this.refreshQuery()))}},{key:"queryableOptions",set:function(u){this.allOptions=u,this.queryableOptionsAll=u}},{key:"setCommand",value:function(u){this.selectedCommandOption=u;var M=this.typeCommandOptions[this.selectedQueryablePropertyType][u];M.commandInputs?(this.commandInputs=M.commandInputs,this.refreshQuery()):M.constructQuery&&(this.commandInputs=[],M.constructQuery(u.trim(),this.selectedCondition,this.selectedQueryableProperty,this.selectedLucenePath,this.queryUpdated,this.queryParts))}},{key:"queryablePropertySelected",value:function(u){this.processQueriablePropertyChange(u),this.commandControl.setValue(this._queryableDictionary[u].cvDomain||"string"!==this._queryableDictionary[u].type?this.commandOptions[0]:"ALL of the following words in any order or position")}},{key:"processQueriablePropertyChange",value:function(u){this.selectedQueryableProperty=u,this._queryableDictionary[u].cvDomain&&this.setCvOptions(this._queryableDictionary[u].cvDomain),this.selectedLucenePath=this._queryableDictionary[u].lucenePath,this.selectedLucenePath&&(this.selectedLucenePath=this.selectedLucenePath+":"),this.selectedQueryablePropertyType=this._queryableDictionary[u].type}},{key:"setCvOptions",value:function(u){var M=this;this.cvService.getDomainVocabulary(u).subscribe(function(U){M.cvOptions=U[u].list})}},{key:"refreshQuery",value:function(){var u=this;this.queryParts=[],this.commandInputs.forEach(function(M,U){u.commandInputValueDict[M.type]&&null!=u.commandInputValueDict[M.type][U]?M.constructQuery(u.commandInputValueDict[M.type][U],u.selectedCondition,u.selectedQueryableProperty,u.selectedLucenePath,u.queryUpdated,u.queryParts):u.queryUpdated.emit({condition:u.selectedCondition,queryableProperty:u.selectedQueryableProperty,command:u.selectedCommandOption,commandInputValues:[],query:""})})}},{key:"queryablePropertiesAutocompleteClosed",value:function(){this.decreaseOverlayZindex();var u=this.queryablePropertiesAutocompleteControl.value;if(u)for(var M=0;M-1?this.queryablePropertiesControl.setValue(this.selectedQueryableProperty):this.queryablePropertiesControl.setValue("All")}},{key:"openedChange",value:function(u){u?this.increaseOverlayZindex():this.decreaseOverlayZindex()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(Tn.Xj),t.Y36(Se.I))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-query-statement"]],inputs:{queryStatementHash:"queryStatementHash",queryableOptionsCommon:"queryableOptionsCommon",queryableDictionary:"queryableDictionary",index:"index",queryableOptions:"queryableOptions"},outputs:{queryUpdated:"queryUpdated"},decls:12,vars:7,consts:[[1,"query-statement-container"],[1,"condition-column"],[4,"ngIf"],[1,"queryable-property-column"],[1,"command-column"],[3,"matTooltip"],[3,"formControl","openedChange"],[3,"value",4,"ngFor","ngForOf"],[1,"query-column"],["class","query-input",4,"ngFor","ngForOf"],[3,"value"],[3,"value","matTooltip",4,"ngFor","ngForOf"],[1,"middle-fill"],[1,"action-hint"],[3,"click"],[3,"value","matTooltip"],["floatLabel","never"],["type","text","matInput","","placeholder","Search for desired field",3,"formControl","matAutocomplete","blur"],["matSuffix","","matTooltip","Clear input and show all options",3,"click"],["svgIcon","clear"],[3,"optionSelected","opened","closed"],["queryablePropertyOptions","matAutocomplete"],[1,"query-input"],["matInput","","required","","placeholder","Enter search value",3,"type","name","ngModel","ngModelChange","keyup"],["matInput","","required","","placeholder","m/d/yyyy",3,"ngModel","matDatepicker","ngModelChange","dateChange","dateInput"],["matSuffix","",3,"for"],[3,"opened","closed"],["queryDatepicker",""],["required","","placeholder","Select default option",3,"ngModel","ngModelChange","openedChange","selectionChange"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.YNc(2,gm,3,2,"mat-form-field",2),t.qZA(),t.TgZ(3,"div",3),t.YNc(4,lu,7,2,"mat-form-field",2),t.YNc(5,Ad,11,3,"div",2),t.qZA(),t.TgZ(6,"div",4),t.TgZ(7,"mat-form-field",5),t.TgZ(8,"mat-select",6),t.NdJ("openedChange",function(U){return u.openedChange(U)}),t.YNc(9,Ip,2,2,"mat-option",7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(10,"div",8),t.YNc(11,hl,4,3,"div",9),t.qZA(),t.qZA()),2&g&&(t.xp6(2),t.Q6J("ngIf",u.index>0),t.xp6(2),t.Q6J("ngIf",u.isShowCommonFields),t.xp6(1),t.Q6J("ngIf",!u.isShowCommonFields),t.xp6(2),t.Q6J("matTooltip",u.selectedCommandOption),t.xp6(1),t.Q6J("formControl",u.commandControl),t.xp6(1),t.Q6J("ngForOf",u.commandOptions),t.xp6(2),t.Q6J("ngForOf",u.commandInputs))},directives:[Ee.O5,Pt.KE,de.gD,s.JJ,s.oH,Ee.sg,ye.ey,Ie.gM,Pt.bx,ut.Nt,s.Fj,ou.ZL,Pt.R9,j.Hw,ou.XC,s.Q7,s.On,Pt.TO,su.hl,su.nW,su.Mq],styles:[".query-statement-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.condition-column[_ngcontent-%COMP%]{width:100px;max-width:100px;min-width:100px;padding-right:20px;padding-top:1px}.mat-form-field[_ngcontent-%COMP%]{width:100%;max-width:100%}.mat-form-field[_ngcontent-%COMP%] .mat-form-field-infix{width:100%}.queryable-property-column[_ngcontent-%COMP%]{width:400px;min-width:400px;max-width:400px;padding-right:20px}.command-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-right:10px;padding-top:1px;width:190px;max-width:190px;min-width:190px}.query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;display:-ms-flexbox;display:flex}.query-input[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding:0 10px}.mat-hint.action-hint[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.mat-hint.action-hint[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#448aff}.mat-error[_ngcontent-%COMP%]{color:red}"]}),b}();function dc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",19),t.NdJ("click",function(){t.CHM(g);var M=t.oxw().index;return t.oxw().removeQueryStatement(M)}),t._UZ(1,"mat-icon",20),t.qZA()}}function _l(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",21),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).addQueryStatement()}),t._UZ(1,"mat-icon",22),t.qZA()}}function kc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",12),t.TgZ(1,"div",13),t.TgZ(2,"app-query-statement",14),t.NdJ("queryUpdated",function(nn){var Bn=t.CHM(g).index;return t.oxw().queryUpdated(nn,Bn)}),t.qZA(),t.qZA(),t.TgZ(3,"div",15),t.TgZ(4,"div",16),t.YNc(5,dc,2,0,"button",17),t.qZA(),t.TgZ(6,"div",16),t.YNc(7,_l,2,0,"button",18),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit,M=L.index,U=L.first,re=L.last,lt=t.oxw();t.xp6(2),t.Q6J("queryStatementHash",u.queryHash)("index",M)("queryableDictionary",lt.queryableSubstanceDict)("queryableOptions",lt.displayProperties)("queryableOptionsCommon",lt.displayPropertiesCommon),t.xp6(3),t.Q6J("ngIf",!U||lt.queryStatements.length>1),t.xp6(2),t.Q6J("ngIf",re)}}var Lp=function(){var b=function(){function L(g,u,M,U,re,lt){(0,p.Z)(this,L),this.http=g,this.router=u,this.configService=M,this.utilitiesService=U,this.activatedRoute=re,this.titleService=lt,this.queryStatements=[],this.query=""}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.titleService.setTitle("Guided Search");var U,M=Number(this.activatedRoute.snapshot.queryParams["g-search-hash"])||null;if(M){var re=localStorage.getItem(M.toString());null!=re&&(U=JSON.parse(re))}this.http.get("".concat(this.configService.environment.baseHref,"assets/data/substance_dictionary.json")).subscribe(function(lt){lt.All={lucenePath:"text",description:"All substance fields",type:"string",cvDomain:""},u.queryableSubstanceDict=lt;var Wt=["All"],nn=["All"];Object.keys(u.queryableSubstanceDict).forEach(function(bn){Wt.push(bn),null!=u.queryableSubstanceDict[bn].priority&&nn.push(bn)}),u.displayProperties=Wt,u.displayPropertiesCommon=nn,null!=U?U.forEach(function(bn){u.queryStatements.push({queryHash:bn})}):u.queryStatements.push({})})}},{key:"queryUpdated",value:function(u,M){var U=this;setTimeout(function(){Object.keys(u).forEach(function(re){U.queryStatements[M][re]=u[re]}),U.query="",U.query=U.queryStatements.map(function(re){return re.query}).join(" ").trim()})}},{key:"addQueryStatement",value:function(){this.queryStatements.push({condition:"",queryableProperty:"All",command:""})}},{key:"removeQueryStatement",value:function(u){this.queryStatements.splice(u,1),this.query=this.queryStatements.map(function(M){return M.query}).join(" ")}},{key:"processSearch",value:function(){var u=this,M=[];this.queryStatements.forEach(function(nn){var bn=JSON.stringify(nn),Bn=u.utilitiesService.hashCode(bn);localStorage.setItem(Bn.toString(),bn),M.push(Bn)});var U=this.utilitiesService.hashCode(this.query),re=JSON.stringify(M);localStorage.setItem(U.toString(),re);var lt={queryParams:this.query?{search:this.query}:null},Wt_queryParams_g_search_hash=U.toString();window.history.pushState({},"Guided Search","/guided-search?g-search-hash="+Wt_queryParams_g_search_hash),this.router.navigate(["/browse-substance"],lt)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(d.eN),t.Y36(h.F0),t.Y36(sa.E),t.Y36(ve.FW),t.Y36(h.gz),t.Y36(P.Dx))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-guided-search"]],decls:25,vars:3,consts:[[1,"content-container"],[1,"builder-container"],[1,"header-row"],[1,"condition-column"],[1,"queryable-property-column"],[1,"command-column"],[1,"query-column"],["class","builder-row",4,"ngFor","ngForOf"],[1,"query-builder-actions"],["mat-flat-button","","color","primary",3,"disabled","click"],[1,"query-container"],[1,"query-value"],[1,"builder-row"],[1,"query-statement-container"],[3,"queryStatementHash","index","queryableDictionary","queryableOptions","queryableOptionsCommon","queryUpdated"],[1,"actions-container"],[1,"button-container"],["mat-icon-button","","aria-label","remove query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","add query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","remove query statement",3,"click"],["svgIcon","remove_circle_outline"],["mat-icon-button","","aria-label","add query statement",3,"click"],["svgIcon","add_circle_outline"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"mat-card"),t.TgZ(2,"mat-card-title"),t._uU(3," Guided Search "),t.qZA(),t.TgZ(4,"mat-card-content"),t.TgZ(5,"h2"),t._uU(6," Builder "),t.qZA(),t.TgZ(7,"div",1),t.TgZ(8,"div",2),t._UZ(9,"div",3),t.TgZ(10,"div",4),t._uU(11," Search In Fields "),t.qZA(),t.TgZ(12,"div",5),t._uU(13," For "),t.qZA(),t.TgZ(14,"div",6),t._uU(15," Query "),t.qZA(),t.qZA(),t.YNc(16,kc,8,7,"div",7),t.qZA(),t.TgZ(17,"div",8),t.TgZ(18,"button",9),t.NdJ("click",function(){return u.processSearch()}),t._uU(19,"Search"),t.qZA(),t.qZA(),t.TgZ(20,"h2"),t._uU(21," Query "),t.qZA(),t.TgZ(22,"div",10),t.TgZ(23,"div",11),t._uU(24),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g&&(t.xp6(16),t.Q6J("ngForOf",u.queryStatements),t.xp6(2),t.Q6J("disabled",!u.query),t.xp6(6),t.hij(" ",u.query," "))},directives:[Qt.a8,Qt.n5,Qt.dn,Ee.sg,uu,Ee.O5,v.lW,j.Hw],styles:[".mat-card-title[_ngcontent-%COMP%]{margin-bottom:20px}.content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.mat-card[_ngcontent-%COMP%]{margin-top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:1200px;width:100%}.builder-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.header-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:10px;font-size:20px;font-weight:400}.header-row[_ngcontent-%COMP%] .condition-column[_ngcontent-%COMP%]{width:100px}.header-row[_ngcontent-%COMP%] .queryable-property-column[_ngcontent-%COMP%]{width:400px}.header-row[_ngcontent-%COMP%] .command-column[_ngcontent-%COMP%]{width:190px}.header-row[_ngcontent-%COMP%] .query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-left:10px}.builder-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;padding-bottom:10px}.query-statement-container[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.query-container[_ngcontent-%COMP%]{padding:15px}.query-value[_ngcontent-%COMP%]{padding:10px 15px;background-color:#ececec;border:solid 1px #DBDBDB;border-radius:2px;min-height:69px}.actions-container[_ngcontent-%COMP%]{width:80px;display:-ms-flexbox;display:flex}.actions-container[_ngcontent-%COMP%] .button-container[_ngcontent-%COMP%]{width:40px}.mat-card-actions[_ngcontent-%COMP%]{padding-top:10px 10px 0 10px}.query-builder-actions[_ngcontent-%COMP%]{margin:10px 0 15px}"]}),b}(),ur=n(12379);function ym(b,L){1&b&&(t.TgZ(0,"th",18),t._uU(1," Database "),t.qZA())}function bm(b,L){if(1&b&&(t.TgZ(0,"td",19),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",g.database," ")}}function Ru(b,L){1&b&&(t.TgZ(0,"th",18),t._uU(1," Driver "),t.qZA())}function Cm(b,L){if(1&b&&(t.TgZ(0,"td",19),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",g.driver," ")}}function Fp(b,L){1&b&&(t.TgZ(0,"th",18),t._uU(1," Product "),t.qZA())}function du(b,L){if(1&b&&(t.TgZ(0,"td",19),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",g.product," ")}}function Mm(b,L){1&b&&(t.TgZ(0,"th",18),t._uU(1," Latency "),t.qZA())}function xm(b,L){if(1&b&&(t.TgZ(0,"td",19),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",g.latency," ms")}}function Ol(b,L){1&b&&(t.TgZ(0,"th",18),t._uU(1," Connected "),t.qZA())}function Po(b,L){if(1&b&&(t.TgZ(0,"td",19),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",g.connected," ")}}function Pd(b,L){1&b&&t._UZ(0,"tr",20)}function Np(b,L){1&b&&t._UZ(0,"tr",21)}function Dd(b,L){if(1&b&&(t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"mat-card"),t.TgZ(3,"mat-card-title"),t._uU(4," Runtime Environment"),t.qZA(),t.TgZ(5,"div",3),t.TgZ(6,"div",4),t._uU(7,"Epoch"),t.qZA(),t.TgZ(8,"div",5),t._uU(9),t.ALo(10,"date"),t.qZA(),t.qZA(),t.TgZ(11,"div",3),t.TgZ(12,"div",4),t._uU(13,"Uptime"),t.qZA(),t.TgZ(14,"div",5),t._uU(15),t.qZA(),t.qZA(),t.TgZ(16,"div",3),t.TgZ(17,"div",4),t._uU(18,"Server"),t.qZA(),t.TgZ(19,"div",5),t._uU(20),t.qZA(),t.qZA(),t.TgZ(21,"div",3),t.TgZ(22,"div",4),t._uU(23,"Available Processors"),t.qZA(),t.TgZ(24,"div",5),t._uU(25),t.qZA(),t.qZA(),t.TgZ(26,"div",3),t.TgZ(27,"div",4),t._uU(28,"Free Memory"),t.qZA(),t.TgZ(29,"div",5),t._uU(30),t.ALo(31,"number"),t.qZA(),t.qZA(),t.TgZ(32,"div",3),t.TgZ(33,"div",4),t._uU(34,"Total Memory"),t.qZA(),t.TgZ(35,"div",5),t._uU(36),t.ALo(37,"number"),t.qZA(),t.qZA(),t.TgZ(38,"div",3),t.TgZ(39,"div",4),t._uU(40,"Max Memory"),t.qZA(),t.TgZ(41,"div",5),t._uU(42),t.ALo(43,"number"),t.qZA(),t.qZA(),t.TgZ(44,"div",3),t.TgZ(45,"div",4),t._uU(46,"JRE Version"),t.qZA(),t.TgZ(47,"div",5),t._uU(48),t.qZA(),t.qZA(),t.TgZ(49,"div",3),t.TgZ(50,"div",4),t._uU(51,"Number of Threads"),t.qZA(),t.TgZ(52,"div",5),t._uU(53),t.qZA(),t.qZA(),t.TgZ(54,"div",3),t.TgZ(55,"div",4),t._uU(56,"Number of Running Threads"),t.qZA(),t.TgZ(57,"div",5),t._uU(58),t.qZA(),t.qZA(),t.TgZ(59,"div",3),t._UZ(60,"div",4),t._UZ(61,"div",5),t.qZA(),t.qZA(),t.qZA(),t.TgZ(62,"div",2),t.TgZ(63,"mat-card"),t.TgZ(64,"mat-card-title"),t._uU(65," Cache Configuration"),t.qZA(),t.TgZ(66,"div",3),t.TgZ(67,"div",4),t._uU(68,"Max Cache Elements"),t.qZA(),t.TgZ(69,"div",5),t._uU(70),t.qZA(),t.qZA(),t.TgZ(71,"div",3),t.TgZ(72,"div",4),t._uU(73,"Max Evictable Cache Elements"),t.qZA(),t.TgZ(74,"div",5),t._uU(75),t.qZA(),t.qZA(),t.TgZ(76,"div",3),t.TgZ(77,"div",4),t._uU(78,"Time to Live (seconds)"),t.qZA(),t.TgZ(79,"div",5),t._uU(80),t.qZA(),t.qZA(),t.TgZ(81,"div",3),t.TgZ(82,"div",4),t._uU(83,"Time to Idle (seconds)"),t.qZA(),t.TgZ(84,"div",5),t._uU(85),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(86,"div",6),t.TgZ(87,"mat-card"),t.TgZ(88,"mat-card-title"),t._uU(89,"Database Information"),t.qZA(),t.TgZ(90,"div",7),t.TgZ(91,"table",8),t.ynx(92,9),t.YNc(93,ym,2,0,"th",10),t.YNc(94,bm,2,1,"td",11),t.BQk(),t.ynx(95,12),t.YNc(96,Ru,2,0,"th",10),t.YNc(97,Cm,2,1,"td",11),t.BQk(),t.ynx(98,13),t.YNc(99,Fp,2,0,"th",10),t.YNc(100,du,2,1,"td",11),t.BQk(),t.ynx(101,14),t.YNc(102,Mm,2,0,"th",10),t.YNc(103,xm,2,1,"td",11),t.BQk(),t.ynx(104,15),t.YNc(105,Ol,2,0,"th",10),t.YNc(106,Po,2,1,"td",11),t.BQk(),t.YNc(107,Pd,1,0,"tr",16),t.YNc(108,Np,1,0,"tr",17),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(9),t.Oqu(t.xi3(10,17,g.health.epoch,"medium")),t.xp6(6),t.Oqu(g.runtime),t.xp6(5),t.Oqu(g.health.hostname),t.xp6(5),t.Oqu(g.health.runtime.availableProcessors),t.xp6(5),t.hij("",t.xi3(31,20,g.health.runtime.freeMemory/1048576,"1.1-1")," Mb"),t.xp6(6),t.hij("",t.xi3(37,23,g.health.runtime.totalMemory/1048576,"1.1-1")," Mb"),t.xp6(6),t.hij("",t.xi3(43,26,g.health.runtime.maxMemory/1048576,"1.1-1")," Mb"),t.xp6(6),t.Oqu(g.health.javaVersion),t.xp6(5),t.Oqu(g.health.threads),t.xp6(5),t.Oqu(g.health.runningThreads),t.xp6(12),t.Oqu(g.health.cacheInfo.maxCacheElements),t.xp6(5),t.Oqu(g.health.cacheInfo.maxNotEvictableCacheElements),t.xp6(5),t.Oqu(g.health.cacheInfo.timeToLive),t.xp6(5),t.Oqu(g.health.cacheInfo.timeToIdle),t.xp6(6),t.Q6J("dataSource",g.health.databaseInformation),t.xp6(16),t.Q6J("matHeaderRowDef",g.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",g.displayedColumns)}}var Sm=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.adminService=g,this.displayedColumns=["database","driver","product","latency","connected"],this.runtime=""}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.sub=this.adminService.getEnvironmentHealth().subscribe(function(M){u.health=M,u.setStart()})}},{key:"setStart",value:function(){if(this.health.epoch){var u=new Date,M=Re.duration(u.getTime()-0-this.health.epoch),U="";0!==M.years()&&(U+=M.years()+(M.years()>1?" years, ":" year, ")),0!==M.months()&&(U+=M.months()+(M.months()>1?" months, ":" month, ")),0!==M.days()&&(U+=M.days()+(M.days()>1?" days, ":" day, ")),0!==M.hours()&&(U+=M.hours()+(M.hours()>1?" hrs, ":" hr, ")),0!==M.minutes()&&(U+=M.minutes()+(M.minutes()," min, ")),0!==M.seconds()?U+=M.seconds()+(M.seconds()," sec"):""===U&&(U=u.getTime()-0-this.health.epoch+" ms"),this.runtime=U}}},{key:"ngOnDestroy",value:function(){this.sub.unsubscribe()}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(z))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-cache-summary"]],decls:1,vars:1,consts:[["class","cache-container",4,"ngIf"],[1,"cache-container"],[1,"data-column"],[1,"cache-data"],[1,"name"],[1,"value"],[1,"database-table-container"],[1,"database-table"],["mat-table","",3,"dataSource"],["matColumnDef","database"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","driver"],["matColumnDef","product"],["matColumnDef","latency"],["matColumnDef","connected"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(g,u){1&g&&t.YNc(0,Dd,109,29,"div",0),2&g&&t.Q6J("ngIf",u.health)},directives:[Ee.O5,Qt.a8,Qt.n5,ge.BZ,ge.w1,ge.fO,ge.ge,ge.Dz,ge.ev,ge.as,ge.XQ,ge.nj,ge.Gk],pipes:[Ee.uU,Ee.JJ],styles:[".cache-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding:5px}.cache-data[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid rgba(128,128,128,.15)}.cache-data[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{font-weight:700;min-width:100px;width:45%}.cache-data[_ngcontent-%COMP%]:nth-child(even){background-color:#448aff12}.data-column[_ngcontent-%COMP%]{width:40%}.cache-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:justify;align-content:space-between}.cache-container[_ngcontent-%COMP%] .data-column[_ngcontent-%COMP%]{width:45%;min-width:400px;padding:7px}.database-table-container[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;margin-top:20px}.database-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%]:nth-child(odd){background-color:#448aff12}.fake-card[_ngcontent-%COMP%]{border-radius:4px;box-shadow:#0003 0 2px 1px -1px,#00000024 0 1px 1px,#0000001f 0 1px 3px;box-sizing:border-box;color:#000000de}"]}),b}(),Ic=n(95106);function pu(b,L){1&b&&(t.TgZ(0,"h1"),t._uU(1," Add User "),t.qZA())}function wd(b,L){1&b&&(t.TgZ(0,"h1"),t._uU(1," Edit User "),t.qZA())}function Od(b,L){if(1&b&&(t.TgZ(0,"div",5),t.YNc(1,pu,2,0,"h1",6),t.YNc(2,wd,2,0,"h1",6),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",g.newUser),t.xp6(1),t.Q6J("ngIf",!g.newUser)}}function Ed(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"div"),t.TgZ(2,"mat-form-field"),t.TgZ(3,"input",28),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(4).newPassword=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-form-field"),t.TgZ(6,"input",29),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(4).newPasswordConfirm=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"div"),t.TgZ(8,"button",30),t.NdJ("click",function(){return t.CHM(g),t.oxw(4).validatePassword()}),t._uU(9,"Submit Change"),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(4);t.xp6(3),t.Q6J("ngModel",u.newPassword),t.xp6(3),t.Q6J("ngModel",u.newPasswordConfirm)}}function Rp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div"),t.TgZ(2,"button",27),t.NdJ("click",function(){t.CHM(g);var U=t.oxw(3);return U.changePassword=!U.changePassword}),t._uU(3),t.qZA(),t.qZA(),t.YNc(4,Ed,10,2,"span",6),t.qZA()}if(2&b){var u=t.oxw(3);t.xp6(3),t.hij(" ",u.changePassword?"Cancel":"Change Password"," "),t.xp6(1),t.Q6J("ngIf",!0===u.changePassword)}}function Xl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div"),t.TgZ(2,"mat-form-field"),t.TgZ(3,"input",28),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(3).newPassword=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-form-field"),t.TgZ(6,"input",29),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(3).newPasswordConfirm=U}),t.qZA(),t.qZA(),t.qZA(),t._UZ(7,"div"),t.qZA()}if(2&b){var u=t.oxw(3);t.xp6(3),t.Q6J("ngModel",u.newPassword),t.xp6(3),t.Q6J("ngModel",u.newPasswordConfirm)}}function gl(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",31),t.TgZ(1,"mat-checkbox",16),t.NdJ("ngModelChange",function(U){return t.CHM(g).$implicit.hasGroup=U}),t.TgZ(2,"div",32),t._uU(3),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(1),t.Q6J("ngModel",u.hasGroup),t.xp6(2),t.hij(" ",u.name," ")}}function Zd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-checkbox",16),t.NdJ("ngModelChange",function(U){return t.CHM(g).$implicit.hasRole=U}),t._uU(2),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(1),t.Q6J("ngModel",u.hasRole),t.xp6(1),t.hij(" ",u.name," ")}}function Uu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",8),t.TgZ(2,"div",10),t.TgZ(3,"mat-form-field",11),t.TgZ(4,"mat-label"),t._uU(5,"User Name"),t.qZA(),t.TgZ(6,"input",12),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(2).user.user.username=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"div",13),t.TgZ(8,"mat-form-field",11),t.TgZ(9,"mat-label"),t._uU(10,"Email"),t.qZA(),t.TgZ(11,"input",14),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(2).user.user.email=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(12,"div",15),t.TgZ(13,"mat-checkbox",16),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(2).user.active=U}),t._uU(14," active "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(15,"div",8),t.YNc(16,Rp,5,2,"div",17),t.YNc(17,Xl,8,2,"div",17),t.qZA(),t.TgZ(18,"div",8),t.TgZ(19,"div",18),t.TgZ(20,"span",19),t._uU(21,"Groups"),t.qZA(),t.YNc(22,gl,4,2,"div",20),t.TgZ(23,"mat-form-field",21),t.TgZ(24,"input",22),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw(2).newGroup=U}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(25,"div",23),t.TgZ(26,"span",24),t._uU(27,"Roles"),t.qZA(),t.YNc(28,Zd,3,2,"div",25),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(6),t.Q6J("ngModel",u.user.user.username),t.xp6(5),t.Q6J("ngModel",u.user.user.email),t.xp6(2),t.Q6J("ngModel",u.user.active),t.xp6(3),t.Q6J("ngIf",!u.newUser),t.xp6(1),t.Q6J("ngIf",u.newUser),t.xp6(5),t.Q6J("ngForOf",u.groups),t.xp6(2),t.Q6J("ngModel",u.newGroup),t.xp6(4),t.Q6J("ngForOf",u.roles)}}function Up(b,L){if(1&b&&(t.TgZ(0,"div",33),t._UZ(1,"mat-progress-spinner",34),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("color",g.primary)}}function Bp(b,L){if(1&b&&(t.TgZ(0,"div",7),t.YNc(1,Uu,29,8,"div",6),t.TgZ(2,"div",8),t.YNc(3,Up,2,1,"div",9),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",!1===g.loading),t.xp6(2),t.Q6J("ngIf",!0===g.loading)}}function Ys(b,L){if(1&b&&(t.TgZ(0,"div",35),t.TgZ(1,"div",36),t._uU(2),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(2),t.hij(" User successfully ",g.newUser?"added":"edited","!")}}function pc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",41),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).saveChanges()}),t._uU(1,"Save"),t.qZA()}if(2&b){var u=t.oxw(2);t.Q6J("disabled",!u.user||!u.user.user||!u.user.user.username||""===u.user.user.username)}}function Lc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",41),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).addUser()}),t._uU(1,"Add"),t.qZA()}if(2&b){var u=t.oxw(2);t.Q6J("disabled",!u.user||!u.user.user||!u.user.user.username||""===u.user.user.username)}}function Yp(b,L){if(1&b&&(t.TgZ(0,"div",37),t.TgZ(1,"button",38),t._uU(2,"Cancel"),t.qZA(),t._UZ(3,"span",39),t.YNc(4,pc,2,1,"button",40),t.YNc(5,Lc,2,1,"button",40),t.qZA()),2&b){var g=t.oxw();t.xp6(4),t.Q6J("ngIf",!g.newUser),t.xp6(1),t.Q6J("ngIf",g.newUser)}}function kd(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",37),t._UZ(1,"span",39),t.TgZ(2,"button",42),t.NdJ("click",function(){return t.CHM(g),t.oxw().succesClose()}),t._uU(3,"Close"),t.qZA(),t.qZA()}}var ec=function(L){return{"error-msg":L}},Fc=function(){var b=function(){function L(g,u,M,U){(0,p.Z)(this,L),this.adminService=g,this.dialogRef=u,this.authService=M,this.data=U,this.newUser=!1,this.changePassword=!1,this.loading=!0,this.newGroup="",this.submitted=!1,this.isError=!1,this.roles=[{name:"Query",hasRole:!1},{name:"DataEntry",hasRole:!1},{name:"SuperDataEntry",hasRole:!1},{name:"Updater",hasRole:!1},{name:"SuperUpdate",hasRole:!1},{name:"Approver",hasRole:!1},{name:"Admin",hasRole:!1}],this.user=U.user,this.userID=U.userID,this.submitted=U.submission,this.userLoggedIn=this.authService.getUser()}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.user?(this.checkRoles(),this.originalName=this.user.username,this.loading=!1,this.newUser=!1,this.userHasAdminRole=this.checkIfUserHasAdminRole(this.user.roles),this.adminService.getGroups().pipe((0,Y.q)(1)).subscribe(function(M){u.groups=[],M.forEach(function(U){var re={name:U,hasGroup:!1};u.user.groups.forEach(function(lt){lt.name===U&&(re.hasGroup=!0)}),u.groups.push(re)})})):this.userID?this.adminService.getUserByID(this.userID).pipe((0,Y.q)(1)).subscribe(function(M){u.user=M,u.checkRoles(),u.originalName=M.user.username,u.loading=!1,u.newUser=!1,u.userHasAdminRole=u.checkIfUserHasAdminRole(u.user.roles),u.adminService.getGroups().pipe((0,Y.q)(1)).subscribe(function(U){u.groups=[],U.forEach(function(re){var lt={name:re,hasGroup:!1};u.user.groups.forEach(function(Wt){Wt.name===re&&(lt.hasGroup=!0)}),u.groups.push(lt)})})}):(this.newUser=!0,this.userHasAdminRole=!1,this.user={groups:[],roles:[],user:{}},this.user.active=!0,this.loading=!1,this.adminService.getGroups().pipe((0,Y.q)(1)).subscribe(function(M){u.groups=[],M.forEach(function(U){u.groups.push({name:U,hasGroup:!1})})}))}},{key:"checkRoles",value:function(){var u=this;this.roles.forEach(function(M){u.user.roles.forEach(function(U){U===M.name&&(M.hasRole=!0)})})}},{key:"checkIfUserHasAdminRole",value:function(u){var M=!1;return u.forEach(function(U){"admin"===U.toLowerCase()&&(M=!0)}),M}},{key:"checkGroups",value:function(){var u=this;this.groups.forEach(function(M){u.user.groups.forEach(function(U){U.name===M.name&&(M.hasGroup=!0)})})}},{key:"saveChanges",value:function(){if(this.changePassword&&""!==this.newPassword)this.isError=!0,this.message="Cancel or submit new password to save other changes";else{this.isError=!1;var u=[];this.roles.forEach(function(re){re.hasRole&&u.push(re.name)});var M=[];this.groups.forEach(function(re){re.hasGroup&&M.push(re.name)}),this.newGroup&&""!==this.newGroup&&M.push(this.newGroup);var U={username:this.user.user.username,isAdmin:this.user.user.admin,isActive:this.user.active,email:this.user.user.email||null,roles:u,groups:M};this.userLoggedIn===this.user.user.username?(this.userHasAdminRole===this.checkIfUserHasAdminRole(u)&&this.user.active||confirm("Setting your own account as inactive or removing admin role are significant changes. ARE YOU SURE YOU WANT TO PROCEED?"))&&this.editUser(U):this.editUser(U)}}},{key:"editUser",value:function(u){var M=this;this.adminService.editUser(u,this.userID).pipe((0,Y.q)(1)).subscribe(function(U){U&&U.user?(M.isError=!1,M.successfulChange(U)):(M.isError=!0,M.message="Unable to edit user")},function(U){M.isError=!0,M.message="Unable to edit user",U.error&&(M.isError=!0,M.message=U)})}},{key:"addUser",value:function(){var u=this;if(this.isError=!1,this.newPassword===this.newPasswordConfirm){var M=[];this.roles.forEach(function(lt){lt.hasRole&&M.push(lt.name)});var U=[];this.groups.forEach(function(lt){lt.hasGroup&&U.push(lt.name)}),this.newGroup&&""!==this.newGroup&&U.push(this.newGroup),this.adminService.addUser({username:this.user.user.username,isAdmin:this.user.user.admin,isActive:this.user.active,email:this.user.user.email||null,roles:M,groups:U,password:this.newPassword}).pipe((0,Y.q)(1)).subscribe(function(lt){u.message="",lt&<.user&&u.successfulChange(lt)},function(lt){lt.error&&(u.isError=!0,u.message="ERROR: ",u.message+=void 0===lt.error.message?"This user either already exists or there was a server problem updating the record":lt.error.message.split(":")[1]),u.adminService.getUserByName(u.user.user.username).pipe((0,Y.q)(1)).subscribe(function(nn){u.message+=nn.active?". This user is active.":". This user is NOT active."},function(nn){})})}else this.isError=!0,this.message="passwords do not match"}},{key:"successfulChange",value:function(u){var M=this;this.response=u,this.submitted=!0,setTimeout(function(){M.dialogRef.close(M.response)},3e5)}},{key:"succesClose",value:function(){this.dialogRef.close(this.response)}},{key:"validatePassword",value:function(){var u=this;this.newPassword!==this.newPasswordConfirm?(this.isError=!0,this.message="Error: passwords do not match",this.newPassword="",this.newPasswordConfirm=""):(this.isError=!1,this.authService.getUser===this.user.identifier?this.adminService.changeMyPassword("",this.newPassword,this.user.id).pipe((0,Y.q)(1)).subscribe(function(M){u.isError=!1,u.changePassword=!u.changePassword,u.message="Password updated successfully"},function(M){M.error?(u.isError=!0,u.message="Error - "+M.error):(u.isError=!0,u.newPassword="",u.newPasswordConfirm="",u.changePassword=!u.changePassword,u.message="Error:unknown server error")}):this.adminService.changePassword(this.newPassword,this.user.id).pipe((0,Y.q)(1)).subscribe(function(M){u.changePassword=!u.changePassword,u.isError=!1,u.message="Password updated successfully"},function(M){M.error?(u.isError=!0,u.message="Error: "+M.error):(u.isError=!0,u.newPassword="",u.newPasswordConfirm="",u.changePassword=!u.changePassword,u.message="Error: unknown server error")}))}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(z),t.Y36(ne.so),t.Y36(Fi.e),t.Y36(ne.WI))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-user-edit-dialog"]],decls:7,vars:9,consts:[[1,"message",3,"ngClass"],["mat-dialog-title","","class","title",4,"ngIf"],["mat-dialog-content","",4,"ngIf"],["class","submitted-container",4,"ngIf"],["mat-dialog-actions","",4,"ngIf"],["mat-dialog-title","",1,"title"],[4,"ngIf"],["mat-dialog-content",""],[1,"form-row"],["class","loading-container",4,"ngIf"],[1,"username"],[1,"user-field"],["matInput","","placeholder","user name","required","","name","name",3,"ngModel","ngModelChange"],[1,"email"],["matInput","","placeholder","email","name","Email",3,"ngModel","ngModelChange"],[1,"active"],[3,"ngModel","ngModelChange"],["class","password-column",4,"ngIf"],[1,"groups-group"],[1,"mat-header-cell","box-label"],["class","group-checkbox",4,"ngFor","ngForOf"],[1,"group-field"],["matInput","","placeholder","new group",1,"group-input",3,"ngModel","ngModelChange"],[1,"roles-group","box-label"],[1,"mat-header-cell"],[4,"ngFor","ngForOf"],[1,"password-column"],["mat-button","",1,"mat-flat-button",3,"click"],["matInput","","type","password","placeholder","new password","required","","name","Password",3,"ngModel","ngModelChange"],["matInput","","type","password","placeholder","confirm new password","required","","name","Password",3,"ngModel","ngModelChange"],["mat-button","",1,"mat-primary","mat-flat-button",3,"click"],[1,"group-checkbox"],[1,"group-name"],[1,"loading-container"],["mode","indeterminate",1,"spinner",3,"color"],[1,"submitted-container"],[1,"submit-message"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose",""],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"disabled","click",4,"ngIf"],["mat-flat-button","","color","primary",3,"disabled","click"],["mat-flat-button","","color","primary",3,"click"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t._uU(1),t.qZA(),t.YNc(2,Od,3,2,"div",1),t.YNc(3,Bp,4,2,"div",2),t.YNc(4,Ys,3,1,"div",3),t.YNc(5,Yp,6,2,"div",4),t.YNc(6,kd,4,0,"div",4)),2&g&&(t.Q6J("ngClass",t.VKq(7,ec,u.isError)),t.xp6(1),t.Oqu(u.message),t.xp6(1),t.Q6J("ngIf",!u.submitted),t.xp6(1),t.Q6J("ngIf",u.user&&u.user.user&&!u.submitted),t.xp6(1),t.Q6J("ngIf",u.submitted),t.xp6(1),t.Q6J("ngIf",!u.submitted),t.xp6(1),t.Q6J("ngIf",u.submitted))},directives:[Ee.mk,Ee.O5,ne.uh,ne.xY,Pt.KE,Pt.hX,ut.Nt,s.Fj,s.Q7,s.JJ,s.On,wt.oG,v.lW,Ee.sg,St.Ou,ne.H8,ne.ZT],styles:[".user-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.password-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.loading-container[_ngcontent-%COMP%]{height:200px;margin:auto}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row;margin-bottom:15px}.form-row[_ngcontent-%COMP%] .username[_ngcontent-%COMP%]{width:35%}.form-row[_ngcontent-%COMP%] .email[_ngcontent-%COMP%]{width:45%}.form-row[_ngcontent-%COMP%] .active[_ngcontent-%COMP%]{width:20%}.user-field[_ngcontent-%COMP%]{width:90%}.groups-group[_ngcontent-%COMP%]{width:70%}.roles-group[_ngcontent-%COMP%]{width:30%}.group-field[_ngcontent-%COMP%]{width:90%;margin-top:5px} .mat-dialog-content{padding:10px 24px!important}.message[_ngcontent-%COMP%]{margin:auto;text-align:center;padding:10px}.error-msg[_ngcontent-%COMP%]{background:red;color:#fff;border:1px solid black}.box-label[_ngcontent-%COMP%]{padding-bottom:10px} .mat-dialog-container{height:unset!important;max-height:90%} .mat-checkbox-label{word-break:break-word!important;white-space:normal!important;white-space:initial!important}.group-checkbox[_ngcontent-%COMP%]{padding-bottom:4px}.submitted-container[_ngcontent-%COMP%]{height:200px;vertical-align:middle;text-align:center;display:-ms-flexbox;display:flex}.submit-message[_ngcontent-%COMP%]{margin:auto;font-size:20px}"]}),b}();function qs(b,L){if(1&b&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._UZ(2,"mat-progress-spinner",15),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(2),t.Q6J("color",g.primary)}}function El(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"th",29),t.TgZ(1,"input",30),t.NdJ("change",function(){return t.CHM(g),t.oxw(2).selectUnselectAll()}),t.qZA(),t._uU(2," (Un)Select All"),t.qZA()}}function Id(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"td",31),t.TgZ(1,"input",32),t.NdJ("change",function(){var lt=t.CHM(g).$implicit;return t.oxw(2).checkListToggle(lt.user.username)}),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit,M=t.oxw(2);t.xp6(1),t.Q6J("checked",M.isInCheckList(u.user.username))}}function Ld(b,L){1&b&&(t.TgZ(0,"th",33),t._uU(1," User Name"),t.qZA())}function Ih(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"td",31),t.TgZ(1,"a",34),t.NdJ("click",function(){var U=t.CHM(g),re=U.$implicit,lt=U.index;return t.oxw(2).editUser(re.id,lt)}),t._UZ(2,"mat-icon",35),t._uU(3),t.qZA(),t.qZA()}if(2&b){var u=L.$implicit;t.xp6(3),t.hij(" ",u.user.username," ")}}function Nc(b,L){1&b&&(t.TgZ(0,"th",33),t._uU(1," Email"),t.qZA())}function Fd(b,L){if(1&b&&(t.TgZ(0,"td",31),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",g.user.email," ")}}function qp(b,L){1&b&&(t.TgZ(0,"th",33),t._uU(1," Created"),t.qZA())}function Tm(b,L){if(1&b&&(t.TgZ(0,"td",31),t._uU(1),t.ALo(2,"date"),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,g.user.created,"medium")," ")}}function Nd(b,L){1&b&&(t.TgZ(0,"th",33),t._uU(1," Modified"),t.qZA())}function Am(b,L){if(1&b&&(t.TgZ(0,"td",31),t._uU(1),t.ALo(2,"date"),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,g.modified,"medium")," ")}}function Pm(b,L){1&b&&(t.TgZ(0,"th",33),t._uU(1,"Active/ Set Inactive"),t.qZA())}function Dm(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"a",37),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(),U=M.$implicit,re=M.index;return t.oxw(2).deleteUser(U.user.username,re)}),t._UZ(1,"mat-icon",38),t.qZA()}}function wm(b,L){if(1&b&&(t.TgZ(0,"td",31),t._uU(1),t.YNc(2,Dm,2,0,"a",36),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij(" ",g.active?"active":"inactive"," "),t.xp6(1),t.Q6J("ngIf",g.active)}}function Om(b,L){1&b&&t._UZ(0,"tr",39)}function Vp(b,L){1&b&&t._UZ(0,"tr",40)}var Rd=function(){return[5,10,25,100,250,1e3,1e4]};function Bu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",13),t.TgZ(1,"table",16),t.NdJ("matSortChange",function(U){return t.CHM(g),t.oxw().sortData(U)}),t.ynx(2,17),t.YNc(3,El,3,0,"th",18),t.YNc(4,Id,2,1,"td",19),t.BQk(),t.ynx(5,20),t.YNc(6,Ld,2,0,"th",21),t.YNc(7,Ih,4,1,"td",19),t.BQk(),t.ynx(8,22),t.YNc(9,Nc,2,0,"th",21),t.YNc(10,Fd,2,1,"td",19),t.BQk(),t.ynx(11,23),t.YNc(12,qp,2,0,"th",21),t.YNc(13,Tm,3,4,"td",19),t.BQk(),t.ynx(14,24),t.YNc(15,Nd,2,0,"th",21),t.YNc(16,Am,3,4,"td",19),t.BQk(),t.ynx(17,25),t.YNc(18,Pm,2,0,"th",21),t.YNc(19,wm,3,2,"td",19),t.BQk(),t.YNc(20,Om,1,0,"tr",26),t.YNc(21,Vp,1,0,"tr",27),t.qZA(),t.TgZ(22,"div"),t.TgZ(23,"mat-paginator",28),t.NdJ("page",function(U){return t.CHM(g),t.oxw().pageChange(U)}),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(1),t.Q6J("dataSource",u.paged),t.xp6(19),t.Q6J("matHeaderRowDef",u.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",u.displayedColumns),t.xp6(2),t.Q6J("length",u.filtered.data&&u.filtered.data.length||0)("pageSize",1e4)("pageSizeOptions",t.DdM(6,Rd))}}var Hp=function(){var b=function(){function L(g,u,M,U,re){(0,p.Z)(this,L),this.dialog=g,this.overlayContainerService=u,this.adminService=M,this.utilsService=U,this.authService=re,this.filtered=new ge.by,this.searchControl=new s.NI,this.loading=!1,this.showAll=!1,this.showInactive=!1,this.displayedColumns=["checkbox","name","email","created","modified","active"],this.page=0,this.pageSize=1e4,this.users=[],this.checkedList=[],this.showHideActions=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.filtered.paginator=this.paginator,this.overlayContainer=this.overlayContainerService.getContainerElement(),this.showAllUsers(),this.pageChange(),this.searchControl.valueChanges.subscribe(function(M){u.filterList(M,u.users)},function(M){})}},{key:"toggleActions",value:function(){this.showHideActions=!this.showHideActions}},{key:"selectUnselectAll",value:function(){if(this.checkedList.length===this.paged.length)this.checkedList=[];else{this.checkedList=[];var M,u=(0,Ic.Z)(this.paged);try{for(u.s();!(M=u.n()).done;)this.checkedList.push(M.value.user.username)}catch(re){u.e(re)}finally{u.f()}}}},{key:"isInCheckList",value:function(u){var re,M=!1,U=(0,Ic.Z)(this.checkedList);try{for(U.s();!(re=U.n()).done;)re.value===u&&(M=!0)}catch(Wt){U.e(Wt)}finally{U.f()}return M}},{key:"getPagedIndex",value:function(u){var M=0;return this.paged.forEach(function(U,re){U.user.username===u&&(M=re)}),M}},{key:"markSelected",value:function(u){var M="";"inactive"===u&&(M=". If the user is inactive that user won't be able to log in until they've been reactivated"),confirm("Please confirm you would like to set the selected accounts to "+u+M+". \n NOTE: Selecting up to 50 at a time may take some time and so is not adviseable.")&&"inactive"===u&&this.setSelectedToInactive()}},{key:"setSelectedToInactive",value:function(){var M,u=(0,Ic.Z)(this.checkedList);try{for(u.s();!(M=u.n()).done;){var U=M.value,re=this.getPagedIndex(U);this.deleteUsers(U,re)}}catch(lt){u.e(lt)}finally{u.f()}}},{key:"checkListToggle",value:function(u){var M=this;this.checkedList.includes(u)?this.checkedList.forEach(function(U,re){U===u&&M.checkedList.splice(re,1)}):this.checkedList.push(u)}},{key:"showAllUsers",value:function(){var u=this;this.loading=!0,this.showAll=!0,this.adminService.getAllUsers().subscribe(function(M){u.users=M,u.filtered.data=M,u.showInactiveUsers(),u.loading=!1}),this.pageChange()}},{key:"showInactiveUsers",value:function(){if(this.showInactive=!this.showInactive,this.showInactive){var u=[];this.users.forEach(function(M){M.active&&u.push(M)}),this.filtered.data=u}else this.filtered.data=this.users;this.searchControl.value&&""!==this.searchControl.value&&this.searchFields(this.searchControl.value),this.pageChange()}},{key:"editUser",value:function(u,M){var U=this,re=this.dialog.open(Fc,{data:{userID:u,submission:!1},width:"800px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",re.afterClosed().subscribe(function(Wt){if(U.overlayContainer.style.zIndex=null,Wt){U.updateLocalData(Wt,M,u,null);var nn=U.filtered.data;nn[M]=Wt,U.filtered.data=nn,U.pageChange()}})}},{key:"updateLocalData",value:function(u,M,U,re){var lt=this.users.findIndex(function(bn){return bn.id===u.id});if(this.users[lt]=u,M){var nn=this.filtered.data;nn[M]=u,this.filtered.data=nn}this.pageChange()}},{key:"deleteUser",value:function(u,M){var U=this;confirm("Are you sure you want to set this user to inactive? If the user is inactive that user won't be able to log in until they've been reactivated.")&&this.adminService.deleteUser(u).subscribe(function(re){var lt=U.dialog.open(Fc,{data:{userID:re.id,submission:!0},width:"800px",autoFocus:!1,disableClose:!0});U.overlayContainer.style.zIndex="1002",lt.afterClosed().subscribe(function(nn){if(U.overlayContainer.style.zIndex=null,re){U.updateLocalData(re,M,null,u);var bn=U.filtered.data;bn[M]=re,U.filtered.data=bn,U.pageChange()}})})}},{key:"deleteUsers",value:function(u,M){var U=this;this.adminService.deleteUser(u).subscribe(function(re){var lt=U.dialog.open(Fc,{data:{userID:re.id,submission:!0},width:"800px",autoFocus:!1,disableClose:!0});U.overlayContainer.style.zIndex="1002",lt.afterClosed().subscribe(function(nn){if(U.overlayContainer.style.zIndex=null,re){U.updateLocalData(re,M,null,u);var bn=U.filtered.data;bn[M]=re,U.filtered.data=bn}})})}},{key:"addUser",value:function(){var u=this,M=this.dialog.open(Fc,{data:{type:"add",submission:!1},width:"800px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",M.afterClosed().subscribe(function(re){u.overlayContainer.style.zIndex=null,re&&(u.users.push(re),u.sortData(u.lastSort),u.searchControl.setValue(""))})}},{key:"sortData",value:function(u){var M=this;this.lastSort=u;var U=this.users.slice();if(this.showInactive&&(U=[],this.users.forEach(function(re){re.active&&U.push(re)})),!u.active||""===u.direction)return this.filtered.data=U,void this.pageChange();this.filtered.data=U.sort(function(re,lt){var Wt="asc"===u.direction;switch(u.active){case"name":return M.utilsService.compare(re.user.username?re.user.username.toUpperCase():"",lt.user.username?lt.user.username.toUpperCase():"",Wt);case"active":return M.utilsService.compare(re.active,lt.active,!Wt);case"email":return M.utilsService.compare(re.user.email||"",lt.user.email||"",Wt);case"modified":return M.utilsService.compare(re.modified,lt.modified,Wt);case"created":return M.utilsService.compare(re.created,lt.created,Wt)}}),this.pageChange()}},{key:"filterList",value:function(u,M){var U=this;null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){U.searchFields(u),clearTimeout(U.searchTimer),U.pageChange(),U.searchTimer=null},700)}},{key:"searchFields",value:function(u){var M=this,U=[];this.users.forEach(function(re){M.showInactive?re.active&&U.push(re):U.push(re)}),this.filtered.data=[],U.forEach(function(re){if(re.user){var lt=re.user.username?re.user.username.toUpperCase():null,Wt=re.user.email?re.user.email.toUpperCase():null;(null!==lt&<.indexOf(u.toUpperCase())>-1||null!==Wt&&Wt.indexOf(u.toUpperCase())>-1)&&M.filtered.data.push(re)}})}},{key:"pageChange",value:function(u){null!=u&&(this.page=u.pageIndex,this.pageSize=u.pageSize),this.paged=[];for(var M=this.page*this.pageSize,U=M;U0){var M=u.target.files[0];this.filename=M.name,this.uploadForm.get("file").setValue(M)}}},{key:"openInput",value:function(){document.getElementById("fileInput").click()}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(s.qu),t.Y36(z),t.Y36(h.F0),t.Y36(h.gz),t.Y36(On.b))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-data-management"]],decls:33,vars:8,consts:[[1,"file-select-container"],[3,"formGroup"],[1,"full-row"],[1,"file-row"],["mat-raised-button","",3,"click"],[1,"file-name",3,"ngClass"],["id","fileInput","hidden","","type","file","name","file1","accept",".gsrs, .ginas, .txt.gz",3,"change"],[1,"options-row"],["placeholder","File Type","name","fileType","formControlName","fileType",3,"ngModel","ngModelChange"],["value","JSON","selected",""],["value","SD-default","disabled",""],["value","SD","disabled",""],["name","audit",3,"checked","change"],[1,"full-row","bottom"],[1,"middle-fill"],["type","submit",1,"mat-button","mat-primary","mat-flat-button",3,"disabled","click"],[1,"loading-spinner"],["mode","indeterminate","diameter","44",3,"color",4,"ngIf"],["mode","indeterminate","diameter","44",3,"color"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"form",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"div"),t.TgZ(5,"button",4),t.NdJ("click",function(){return u.openInput()}),t._uU(6,"Select File to Upload"),t.qZA(),t.qZA(),t.TgZ(7,"div",5),t._uU(8),t.qZA(),t.TgZ(9,"input",6),t.NdJ("change",function(U){return u.onFileSelect(U)}),t.qZA(),t.qZA(),t.TgZ(10,"div",7),t.TgZ(11,"div"),t.TgZ(12,"mat-form-field"),t.TgZ(13,"mat-select",8),t.NdJ("ngModelChange",function(U){return u.fileType=U}),t.TgZ(14,"mat-option",9),t._uU(15," GSRS Dump File "),t.qZA(),t.TgZ(16,"mat-option",10),t._uU(17," SD File "),t.qZA(),t.TgZ(18,"mat-option",11),t._uU(19," SD File (custom) "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(20,"div"),t.TgZ(21,"mat-checkbox",12),t.NdJ("change",function(){return u.audit=!u.audit}),t._uU(22," Preserve Audit Information "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(23,"div",13),t._UZ(24,"span",14),t.TgZ(25,"div"),t.TgZ(26,"i"),t._uU(27),t.qZA(),t.qZA(),t.TgZ(28,"button",15),t.NdJ("click",function(){return u.onSubmit()}),t._uU(29,"Upload"),t.qZA(),t.TgZ(30,"div",16),t.YNc(31,Ud,1,1,"mat-progress-spinner",17),t.qZA(),t.qZA(),t.qZA(),t._UZ(32,"div"),t.qZA()),2&g&&(t.xp6(1),t.Q6J("formGroup",u.uploadForm),t.xp6(6),t.Q6J("ngClass",u.filename?"test":"italics"),t.xp6(1),t.Oqu(u.filename?u.filename:"no file chosen"),t.xp6(5),t.Q6J("ngModel",u.fileType),t.xp6(8),t.Q6J("checked",u.audit),t.xp6(6),t.Oqu(u.message),t.xp6(1),t.Q6J("disabled",u.processing||!u.filename),t.xp6(3),t.Q6J("ngIf",u.processing))},directives:[s._Y,s.JL,s.sg,v.lW,Ee.mk,Pt.KE,de.gD,s.JJ,s.u,ye.ey,wt.oG,Ee.O5,St.Ou],styles:[".italics[_ngcontent-%COMP%]{font-style:italic;color:#00000080}.file-name[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;margin-left:15px;margin-top:auto;margin-bottom:auto}.full-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;padding:10px}.load-progress[_ngcontent-%COMP%]{height:17px;margin-bottom:5px;font-size:12px;color:#000;-webkit-text-fill-color:white;-webkit-text-stroke-width:1px;-webkit-text-stroke-color:black}.load-fail[_ngcontent-%COMP%]{margin-top:-22px}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:#ad1a1a;z-index:1}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:#ad1a1a}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.loading-spinner[_ngcontent-%COMP%]{width:70px}.loading-spinner[_ngcontent-%COMP%] mat-progress-spinner[_ngcontent-%COMP%]{margin:auto}.load-fail-old[_ngcontent-%COMP%]{-ms-transform:rotate(180deg);transform:rotate(180deg);margin-top:-22px}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:#ad1a1a;z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:#ad1a1a;z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.load-success[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.progress-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.progress-container[_ngcontent-%COMP%] .load-progress[_ngcontent-%COMP%]{width:100%}.progress-container[_ngcontent-%COMP%] .bar-label[_ngcontent-%COMP%]{font-size:14px}.spinner-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%]{width:33%;-ms-flex-direction:column;flex-direction:column}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:50px}.count-label[_ngcontent-%COMP%]{margin-top:auto;margin-bottom:auto}.loader-container[_ngcontent-%COMP%]{width:70%;margin:10px}.lower-body[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.stat-container[_ngcontent-%COMP%]{width:30%;margin:10px;min-width:250px}.label-value[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:10px}.label-value[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{width:50%;min-width:125px;font-weight:500}.label-value[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{width:50%}.example-section[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;height:60px}.mirror[_ngcontent-%COMP%]{margin-top:-105px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror[_ngcontent-%COMP%] circle{stroke:#ad1a1a}.mirror[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:#d4d4d4}.mirror-test[_ngcontent-%COMP%]{margin-left:-125px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror-test[_ngcontent-%COMP%] circle{stroke:#ad1a1a}.mirror-test[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:#d4d4d4}.overlap[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.deleted[_ngcontent-%COMP%]{margin:auto;padding:10px;color:gray;font-style:italics;font-size:18px}.label-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:left;justify-content:left}.label-row[_ngcontent-%COMP%] .count-row-label[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto}.count-cont[_ngcontent-%COMP%]{text-align:center;color:#fff;margin-top:-22px;font-weight:700;z-index:5;font-size:15px}.file-row[_ngcontent-%COMP%]{width:75%;height:40px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.options-row[_ngcontent-%COMP%]{width:25%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.bottom[_ngcontent-%COMP%]{padding-top:50px}"]}),b}(),jp=n(78444),Jp=["scroller"];function Qp(b,L){1&b&&(t.TgZ(0,"div",23),t._UZ(1,"hr",24),t.qZA())}function fc(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"app-fragment-wizard",25),t.NdJ("termUpdated",function(){t.CHM(g);var re=t.oxw(),lt=re.$implicit,Wt=re.index;return t.oxw().updateStructure(lt,Wt)}),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit,M=t.oxw();t.xp6(1),t.Q6J("vocab",M.vocabulary.domain)("term",u)}}function Wp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",18),t.TgZ(1,"button",6),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(),U=M.$implicit,re=M.index;return t.oxw().editTerms(U,re)}),t._uU(2,"Edit Structure"),t.qZA(),t.qZA()}}function zp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"mat-form-field",13),t.TgZ(2,"input",27),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw().$implicit.regex=U}),t.qZA(),t.qZA(),t.TgZ(3,"mat-form-field",13),t.TgZ(4,"input",28),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw().$implicit.systemCategory=U}),t.qZA(),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit;t.xp6(2),t.Q6J("ngModel",u.regex),t.xp6(2),t.Q6J("ngModel",u.systemCategory)}}function Zm(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"img",33),t.qZA()),2&b){var g=t.oxw(2).$implicit;t.xp6(1),t.Q6J("src",g.simpleSrc,t.LSH)}}function Do(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"img",33),t.qZA()),2&b){var g=t.oxw(2).$implicit;t.xp6(1),t.Q6J("src",g.fragmentSrc,t.LSH)}}function km(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div",29),t.TgZ(2,"div"),t.TgZ(3,"mat-form-field",13),t.TgZ(4,"input",30),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw().$implicit.simplifiedStructure=U})("input",function(){t.CHM(g);var U=t.oxw().$implicit,re=t.oxw();return re.checkImg(U,re.event)}),t.qZA(),t.qZA(),t.qZA(),t.YNc(5,Zm,2,1,"div",31),t.qZA(),t.TgZ(6,"div",29),t.TgZ(7,"div"),t.TgZ(8,"mat-form-field",13),t.TgZ(9,"input",32),t.NdJ("ngModelChange",function(U){return t.CHM(g),t.oxw().$implicit.fragmentStructure=U})("input",function(){t.CHM(g);var U=t.oxw().$implicit,re=t.oxw();return re.checkImg(U,re.event)}),t.qZA(),t.qZA(),t.qZA(),t.YNc(10,Do,2,1,"div",31),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit;t.xp6(4),t.Q6J("ngModel",u.simplifiedStructure),t.xp6(1),t.Q6J("ngIf",u.simpleSrc),t.xp6(4),t.Q6J("ngModel",u.fragmentStructure),t.xp6(1),t.Q6J("ngIf",u.fragmentSrc)}}function Gp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.YNc(1,Qp,2,0,"div",8),t.YNc(2,fc,2,2,"ng-template",null,9,t.W1O),t.TgZ(4,"div",10),t.TgZ(5,"button",11),t.NdJ("click",function(){var nn=t.CHM(g).index;return t.oxw().deleteTerm(nn)}),t._UZ(6,"mat-icon",12),t.qZA(),t.TgZ(7,"mat-form-field",13),t.TgZ(8,"input",14),t.NdJ("ngModelChange",function(Wt){return t.CHM(g).$implicit.display=Wt}),t.qZA(),t.qZA(),t.TgZ(9,"mat-form-field",13),t.TgZ(10,"input",15),t.NdJ("ngModelChange",function(Wt){return t.CHM(g).$implicit.value=Wt}),t.qZA(),t.qZA(),t.TgZ(11,"mat-form-field",13),t.TgZ(12,"input",16),t.NdJ("ngModelChange",function(Wt){return t.CHM(g).$implicit.description=Wt}),t.qZA(),t.qZA(),t.TgZ(13,"mat-form-field",13),t.TgZ(14,"input",17),t.NdJ("ngModelChange",function(Wt){return t.CHM(g).$implicit.origin=Wt}),t.qZA(),t.qZA(),t.TgZ(15,"div",18),t.TgZ(16,"mat-checkbox",19),t.NdJ("ngModelChange",function(Wt){return t.CHM(g).$implicit.hidden=Wt}),t._uU(17," Hidden "),t.qZA(),t.qZA(),t.TgZ(18,"div",18),t.TgZ(19,"mat-checkbox",20),t.NdJ("ngModelChange",function(Wt){return t.CHM(g).$implicit.selected=Wt}),t._uU(20," Selected "),t.qZA(),t.qZA(),t.YNc(21,Wp,3,0,"div",21),t.qZA(),t.YNc(22,zp,5,2,"div",22),t.YNc(23,km,11,4,"div",22),t.qZA()}if(2&b){var u=L.$implicit,M=L.index,U=L.last,re=t.oxw();t.xp6(1),t.Q6J("ngIf",re.toggled[M]&&"ix.ginas.models.v1.FragmentControlledVocabulary"===re.vocabulary.vocabularyTermType),t.xp6(3),t.Q6J("id",U?"latest-term":null),t.xp6(4),t.Q6J("ngModel",u.display),t.xp6(2),t.Q6J("ngModel",u.value),t.xp6(2),t.Q6J("ngModel",u.description),t.xp6(2),t.Q6J("ngModel",u.origin),t.xp6(2),t.Q6J("ngModel",u.hidden),t.xp6(3),t.Q6J("ngModel",u.selected),t.xp6(2),t.Q6J("ngIf","ix.ginas.models.v1.FragmentControlledVocabulary"===re.vocabulary.vocabularyTermType),t.xp6(1),t.Q6J("ngIf","ix.ginas.models.v1.CodeSystemControlledVocabulary"===re.vocabulary.vocabularyTermType),t.xp6(1),t.Q6J("ngIf","ix.ginas.models.v1.FragmentControlledVocabulary"===re.vocabulary.vocabularyTermType)}}function Kp(b,L){if(1&b&&(t.TgZ(0,"div",36),t.TgZ(1,"span"),t._uU(2),t.qZA(),t._uU(3),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Gre("",g.messageType," type"),t.xp6(1),t.hij("",g.messageType," :"),t.xp6(1),t.Oqu(g.message)}}function Bd(b,L){if(1&b&&(t.TgZ(0,"div",34),t.TgZ(1,"div"),t.TgZ(2,"b"),t._uU(3,"CV not valid:"),t.qZA(),t.qZA(),t.YNc(4,Kp,4,5,"div",35),t.qZA()),2&b){var g=t.oxw();t.xp6(4),t.Q6J("ngForOf",g.validationMessages)}}var Yd=function(){var b=function(){function L(g,u,M,U,re,lt){(0,p.Z)(this,L),this.cvService=g,this.dialogRef=u,this.scrollToService=M,this.dialog=U,this.overlayContainerService=re,this.data=lt,this.validationMessages=[],this.loading=!0,this.toggled=[],this.vocabulary=lt.vocabulary,this.terms=lt.vocabulary.terms.sort(function(Wt,nn){var bn=Wt.value?Wt.value.toUpperCase():"",Bn=nn.value?nn.value.toUpperCase():"";return bnBn?1:0})}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.loading=!1,this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var u=this;"ix.ginas.models.v1.FragmentControlledVocabulary"===this.vocabulary.vocabularyTermType&&this.terms.forEach(function(M){M.simplifiedStructure&&(M.simpleSrc=u.cvService.getStructureUrl(M.simplifiedStructure)),M.fragmentStructure&&(M.fragmentSrc=u.cvService.getStructureUrl(M.fragmentStructure))})}},{key:"updateStructure",value:function(u,M){this.terms[M]=u}},{key:"getStructure",value:function(u){this.cvService.getStructure(u).subscribe(function(M){return M})}},{key:"editTerms",value:function(u,M){var U=this,re=window.pageYOffset,Wt=this.dialog.open(eu._,{width:"70%",height:"85%",data:{vocabulary:this.vocabulary,domain:this.vocabulary.domain,term:u,adminPanel:!0}});this.overlayContainer.style.zIndex="1003",setTimeout(function(){},3e3),Wt.afterClosed().subscribe(function(bn){window.scroll({top:re,left:0,behavior:"auto"}),bn&&(U.terms[M].simplifiedStructure=bn,U.terms[M].fragmentStructure=bn,U.terms[M].fragmentSrc=U.cvService.getStructureUrl(bn),U.terms[M].simpleSrc=U.cvService.getStructureUrl(bn))})}},{key:"checkImg",value:function(u,M){u.fragmentSrc=this.cvService.getStructureUrl(u.fragmentStructure),u.simpleSrc=this.cvService.getStructureUrl(u.simplifiedStructure)}},{key:"submit",value:function(){var u=this;this.vocabulary.terms=this.terms,this.validationMessages=[],this.cvService.validateVocab(this.vocabulary).subscribe(function(M){M&&M.valid?u.cvService.addVocabTerm(u.vocabulary).subscribe(function(U){u.loading=!1,U.terms&&U.terms.length===u.vocabulary.terms.length&&(alert("vocabulary updated"),setTimeout(function(){u.dialogRef.close(U)},200))},function(U){var re="Invalid Vocabulary";U.error&&U.error.message?re+="\n\n"+U.error.message:U.message&&(re+="\n\n"+U.message),alert(re),u.loading=!1}):M&&M.validationMessages&&M.validationMessages.forEach(function(U){u.validationMessages.push(U)})},function(M){var U="Invalid Vocabulary";M.error&&M.error.message?U+="\n\n"+M.error.message:M.message&&(U+="\n\n"+M.message),alert(U),u.loading=!1}),this.loading=!1}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"addTerm",value:function(){var u=this;this.terms.push({}),setTimeout(function(){try{u.myScrollContainer.nativeElement.scrollTop=u.myScrollContainer.nativeElement.scrollHeight}catch(M){}},100)}},{key:"deleteTerm",value:function(u){this.terms.splice(u,1)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(Se.I),t.Y36(ne.so),t.Y36(jp.i),t.Y36(ne.uw),t.Y36(Tn.Xj),t.Y36(ne.WI))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-cv-term-dialog"]],viewQuery:function(g,u){var M;1&g&&t.Gf(Jp,5),2&g&&t.iGM(M=t.CRH())&&(u.myScrollContainer=M.first)},decls:15,vars:3,consts:[["mat-dialog-title","",1,"title"],["mat-dialog-content","",1,"content-fix"],["scroller",""],[4,"ngFor","ngForOf"],["mat-dialog-actions","",1,"actions"],["class","validation",4,"ngIf"],["mat-button","",3,"click"],[1,"middle-fill"],["class","form-row",4,"ngIf"],["index",""],[1,"form-row",3,"id"],["mat-icon-button","",1,"delete-icon",3,"click"],["svgIcon","delete_forever"],[1,"group"],["matInput","","placeholder","Display","required","","name","display",3,"ngModel","ngModelChange"],["matInput","","placeholder","Value","required","","name","value",3,"ngModel","ngModelChange"],["matInput","","placeholder","Description","name","Description",3,"ngModel","ngModelChange"],["matInput","","placeholder","Origin","name","origin",3,"ngModel","ngModelChange"],[1,"checkbox"],["matTooltip","hidden",3,"ngModel","ngModelChange"],["matTooltip","selected",3,"ngModel","ngModelChange"],["class","checkbox",4,"ngIf"],["class","form-row double-row",4,"ngIf"],[1,"form-row"],[2,"width","100%"],[2,"margin","auto",3,"vocab","term","termUpdated"],[1,"form-row","double-row"],["matInput","","placeholder","Format Regex","name","Regex",3,"ngModel","ngModelChange"],["matInput","","placeholder","System Category","name","systemCategory",3,"ngModel","ngModelChange"],[1,"str-column"],["matInput","","placeholder","Simplified Structure","name","simplifiedStructure",3,"ngModel","ngModelChange","input"],[4,"ngIf"],["matInput","","placeholder","Fragment Structure","name","fragmentStructure",3,"ngModel","ngModelChange","input"],[3,"src"],[1,"validation"],["class","message",4,"ngFor","ngForOf"],[1,"message"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"h1"),t._uU(2),t.qZA(),t.qZA(),t.TgZ(3,"div",1,2),t.YNc(5,Gp,24,11,"div",3),t.qZA(),t.TgZ(6,"div",4),t.YNc(7,Bd,5,1,"div",5),t.TgZ(8,"button",6),t.NdJ("click",function(){return u.addTerm()}),t._uU(9,"Add term"),t.qZA(),t._UZ(10,"span",7),t.TgZ(11,"button",6),t.NdJ("click",function(){return u.cancel()}),t._uU(12,"Cancel"),t.qZA(),t.TgZ(13,"button",6),t.NdJ("click",function(){return u.submit()}),t._uU(14," Save "),t.qZA(),t.qZA()),2&g&&(t.xp6(2),t.hij(" Add Term to CV - ",u.vocabulary.domain," "),t.xp6(3),t.Q6J("ngForOf",u.terms),t.xp6(2),t.Q6J("ngIf",u.validationMessages.length>0))},directives:[ne.uh,ne.xY,Ee.sg,Ee.O5,eu._,v.lW,j.Hw,Pt.KE,ut.Nt,s.Fj,s.Q7,s.JJ,s.On,wt.oG,Ie.gM,ne.H8],styles:[".form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.double-row[_ngcontent-%COMP%]{-ms-flex-pack:space-evenly;justify-content:space-evenly}.validation[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;margin-bottom:5px}.ERROR[_ngcontent-%COMP%]{background-color:red;color:#a94442;background-color:#f2dede;padding:4px 5px;margin-right:5px;border-radius:5px}.WARNING[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3;padding:4px 5px;margin-right:5px;border-radius:5px}.INFO[_ngcontent-%COMP%]{color:#000;background-color:#d3d3d3;padding:4px 5px;margin-right:5px;border-radius:5px}.message[_ngcontent-%COMP%]{padding-top:5px;padding-left:15px}.content-fix[_ngcontent-%COMP%]{min-height:250px;padding:15px 20px}.src-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:50%}.actions[_ngcontent-%COMP%]{height:75px}.title[_ngcontent-%COMP%]{height:42px}.loading-container[_ngcontent-%COMP%]{max-height:calc(100% - 150px);min-height:250px;width:100%;-ms-flex-line-pack:center;align-content:center} .mat-dialog-container{height:unset!important;max-height:90%}.delete-icon[_ngcontent-%COMP%]{margin-bottom:20px}"]}),b}(),$p=n(78573);function Yu(b,L){1&b&&(t.TgZ(0,"th",22),t._uU(1," Domain "),t.qZA())}function qu(b,L){if(1&b&&(t.TgZ(0,"td",23),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Oqu(g.domain)}}function Vu(b,L){1&b&&(t.TgZ(0,"th",24),t._uU(1," Substance Fields "),t.qZA())}function qd(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&b){var g=L.$implicit,u=L.index,M=L.last,U=t.oxw().index,re=t.oxw(3);t.xp6(1),t.lnq(" ",re.toggle[U]||u<2?g+" ":""," ",(re.toggle[U]||u<1)&&!M?", ":""," ",re.toggle[U]||1!==u||M?"":"..."," ")}}function Xp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"span",28),t.TgZ(1,"a",29),t.NdJ("click",function(){t.CHM(g);var re=t.oxw().index,lt=t.oxw(3);return lt.toggle[re]=!lt.toggle[re]}),t._uU(2),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().index,M=t.oxw(3);t.xp6(2),t.hij("",M.toggle[u]?"hide":"show all"," ")}}function Vd(b,L){if(1&b&&(t.TgZ(0,"td",23),t.TgZ(1,"span",25),t.TgZ(2,"span"),t.YNc(3,qd,2,3,"span",26),t.qZA(),t.YNc(4,Xp,3,1,"span",27),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.xp6(3),t.Q6J("ngForOf",u.dictionary[g.domain]),t.xp6(1),t.Q6J("ngIf",u.dictionary[g.domain]&&u.dictionary[g.domain].length>2)}}function fu(b,L){1&b&&(t.TgZ(0,"th",24),t._uU(1," Vocabulary Term Type "),t.qZA())}function Im(b,L){if(1&b&&(t.TgZ(0,"td",23),t._uU(1),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.xp6(1),t.hij("",u.getVocabType(g.vocabularyTermType)," ")}}function ef(b,L){1&b&&(t.TgZ(0,"th",24),t._uU(1," Count "),t.qZA())}function Lm(b,L){if(1&b&&(t.TgZ(0,"td",23),t._uU(1),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.hij("",g.terms.length," ")}}function Fm(b,L){1&b&&(t.TgZ(0,"th",30),t._uU(1," Edit "),t.qZA())}function tf(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"td",23),t.TgZ(1,"div",31),t.TgZ(2,"button",32),t.NdJ("click",function(){var U=t.CHM(g).$implicit,re=t.oxw(3);return re.editTerms(U,re.index)}),t._uU(3,"edit"),t.qZA(),t.qZA(),t.qZA()}}function Hd(b,L){1&b&&t._UZ(0,"tr",33)}function nf(b,L){1&b&&t._UZ(0,"tr",34)}function Lh(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",9),t.TgZ(1,"table",10),t.NdJ("matSortChange",function(U){return t.CHM(g),t.oxw(2).sortData(U)}),t.ynx(2,11),t.YNc(3,Yu,2,0,"th",12),t.YNc(4,qu,2,1,"td",13),t.BQk(),t.ynx(5,14),t.YNc(6,Vu,2,0,"th",15),t.YNc(7,Vd,5,2,"td",13),t.BQk(),t.ynx(8,16),t.YNc(9,fu,2,0,"th",15),t.YNc(10,Im,2,1,"td",13),t.BQk(),t.ynx(11,17),t.YNc(12,ef,2,0,"th",15),t.YNc(13,Lm,2,1,"td",13),t.BQk(),t.ynx(14,18),t.YNc(15,Fm,2,0,"th",19),t.YNc(16,tf,4,0,"td",13),t.BQk(),t.YNc(17,Hd,1,0,"tr",20),t.YNc(18,nf,1,0,"tr",21),t.qZA(),t.qZA()}if(2&b){var u=t.oxw(2);t.xp6(1),t.Q6J("dataSource",u.filtered),t.xp6(16),t.Q6J("matHeaderRowDef",u.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",u.displayedColumns)}}function af(b,L){if(1&b&&(t.TgZ(0,"div",2),t.TgZ(1,"div",3),t.TgZ(2,"a",4),t._uU(3," Download CV as JSON"),t.qZA(),t._UZ(4,"span",5),t.TgZ(5,"mat-form-field",6),t._UZ(6,"input",7),t.qZA(),t.qZA(),t.YNc(7,Lh,19,3,"div",8),t.qZA()),2&b){var g=t.oxw();t.xp6(2),t.Q6J("href",g.downloadHref,t.LSH),t.xp6(3),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",g.searchControl),t.xp6(1),t.Q6J("ngIf",!1===g.loading)}}function Nm(b,L){if(1&b&&(t.TgZ(0,"div",35),t._UZ(1,"mat-progress-spinner",36),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("color",g.primary)}}var rf=function(){var b=function(){function L(g,u,M,U,re,lt){(0,p.Z)(this,L),this.cvService=g,this.dialog=u,this.overlayContainerService=M,this.utilsService=U,this.sanitizer=re,this.dictionaryService=lt,this.vocabularies=[],this.displayedColumns=["domain","type","path","terms","edit"],this.vocabType=[],this.searchControl=new s.NI,this.toggle=[]}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.getVocab(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"getVocab",value:function(){var u=this;this.loading=!0,this.cvService.getVocabularies(null,1e3).subscribe(function(M){u.loading=!1,u.dictionary=u.dictionaryService.getCVDomainRows(),u.vocabularies=M.content,u.filtered=u.vocabularies,u.vocabularies.forEach(function(U){"VOCAB_TYPE"===U.domain&&(u.vocabType=U.terms),u.searchControl.valueChanges.subscribe(function(re){u.filterList(re,u.vocabularies)},function(re){u.loading=!1,alert("The controlled vocabulary has failed to load from the server"+(re&&re.message?"with the following message \n\n"+re.message:""))})}),u.downloadHref=u.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(u.vocabularies))),u.sortData({active:"domain",direction:"asc"})})}},{key:"getVocabType",value:function(u){return this.vocabType.forEach(function(M){M.value===u&&(u=M.display)}),u}},{key:"getPath",value:function(u){return this.dictionary[u]?this.dictionary[u]:""}},{key:"editTerms",value:function(u,M){var U=this,re=window.pageYOffset;window.scroll({top:0,left:0,behavior:"auto"});var lt=this.dialog.open(Yd,{data:{vocabulary:u},width:"1200px"});this.overlayContainer.style.zIndex="1002",lt.afterClosed().subscribe(function(nn){window.scroll({top:re,left:0,behavior:"auto"}),U.overlayContainer.style.zIndex=null,nn&&U.getVocab()})}},{key:"sortData",value:function(u){var M=this,U=this.vocabularies.slice();this.filtered=u.active&&""!==u.direction?U.sort(function(re,lt){return M.utilsService.compare(re[u.active],lt[u.active],"asc"===u.direction)}):U}},{key:"download",value:function(){var u=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.vocabularies)));this.downloadHref=u}},{key:"filterList",value:function(u,M){var U=this;null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){U.filtered=[],M.forEach(function(re){re.domain.indexOf(u.toUpperCase())>-1&&U.filtered.push(re)}),clearTimeout(U.searchTimer),U.searchTimer=null},700)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(Se.I),t.Y36(ne.uw),t.Y36(Tn.Xj),t.Y36(ve.FW),t.Y36(P.H7),t.Y36($p.e))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-cv-management"]],decls:2,vars:2,consts:[["class","management-container",4,"ngIf"],["class","loading-container",4,"ngIf"],[1,"management-container"],[1,"flex-row"],["download","full-CV.json",1,"mat-button","mat-primary","mat-flat-button","button-fix",3,"href"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["class","responsive",4,"ngIf"],[1,"responsive"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","domain"],["mat-header-cell","","mat-sort-header","","start","asc",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","path"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","type"],["matColumnDef","terms"],["matColumnDef","edit"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell","","mat-sort-header","","start","asc"],["mat-cell",""],["mat-header-cell","","mat-sort-header",""],[1,"inline"],[4,"ngFor","ngForOf"],["class","show-button",4,"ngIf"],[1,"show-button"],[3,"click"],["mat-header-cell",""],[1,"edit"],[1,"mat-button","mat-flat-button",3,"click"],["mat-header-row",""],["mat-row",""],[1,"loading-container"],["mode","indeterminate",1,"spinner",3,"color"]],template:function(g,u){1&g&&(t.YNc(0,af,8,4,"div",0),t.YNc(1,Nm,2,1,"div",1)),2&g&&(t.Q6J("ngIf",!1===u.loading),t.xp6(1),t.Q6J("ngIf",!0===u.loading))},directives:[Ee.O5,Pt.KE,ut.Nt,s.Fj,s.JJ,s.oH,ge.BZ,_t.YE,ge.w1,ge.fO,ge.ge,_t.nU,ge.Dz,ge.ev,Ee.sg,ge.as,ge.XQ,ge.nj,ge.Gk,St.Ou],styles:[".vocab-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-line-pack:distribute;align-content:space-around;padding:10px}.vocab-row[_ngcontent-%COMP%] .domain[_ngcontent-%COMP%], .vocab-row[_ngcontent-%COMP%] .count[_ngcontent-%COMP%], .vocab-row[_ngcontent-%COMP%] .editable[_ngcontent-%COMP%], .vocab-row[_ngcontent-%COMP%] .edit[_ngcontent-%COMP%]{width:20%}.search[_ngcontent-%COMP%]{width:400px;max-width:100%;margin-right:20px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.management-container[_ngcontent-%COMP%]{min-width:900px;max-width:1500px}.button-fix[_ngcontent-%COMP%]{height:46px;line-height:46px} .cdk-overlay-pane{max-height:90%} .mat-dialog-container{height:unset!important;max-height:90%}.mat-dialog-content[_ngcontent-%COMP%]{max-height:95%}.loading-container[_ngcontent-%COMP%]{height:90%;width:100%;-ms-flex-line-pack:center;align-content:center;padding:50px}.spinner[_ngcontent-%COMP%]{margin:auto}.show-button[_ngcontent-%COMP%]{padding-left:10px;color:#1565c0;font-size:14px}"]}),b}(),Rm=n(49382),Um=n.n(Rm),lf=new t.OlP("NGX_MOMENT_OPTIONS"),hc=Re,jm=function(){var b=function(){function L(g,u){(0,p.Z)(this,L),this.cdRef=g,this.ngZone=u}return(0,e.Z)(L,[{key:"format",value:function(u){return u.from(hc(),this.lastOmitSuffix)}},{key:"transform",value:function(u,M,U){return this.hasChanged(u,M)?(this.lastTime=this.getTime(u),this.lastValue=u,this.lastOmitSuffix=M,this.lastLocale=this.getLocale(u),this.formatFn=U||this.format.bind(this),this.removeTimer(),this.createTimer(),this.lastText=this.formatFn(hc(u))):this.createTimer(),this.lastText}},{key:"ngOnDestroy",value:function(){this.removeTimer()}},{key:"createTimer",value:function(){var u=this;if(!this.currentTimer){var M=hc(this.lastValue),U=1e3*this.getSecondsUntilUpdate(M);this.currentTimer=this.ngZone.runOutsideAngular(function(){return"undefined"!=typeof window?window.setTimeout(function(){u.lastText=u.formatFn(hc(u.lastValue)),u.currentTimer=null,u.ngZone.run(function(){return u.cdRef.markForCheck()})},U):null})}}},{key:"removeTimer",value:function(){this.currentTimer&&(window.clearTimeout(this.currentTimer),this.currentTimer=null)}},{key:"getSecondsUntilUpdate",value:function(u){var M=Math.abs(hc().diff(u,"minute"));return M<1?1:M<60?30:M<180?300:3600}},{key:"hasChanged",value:function(u,M){return this.getTime(u)!==this.lastTime||this.getLocale(u)!==this.lastLocale||M!==this.lastOmitSuffix}},{key:"getTime",value:function(u){return(0,Re.isDate)(u)?u.getTime():(0,Re.isMoment)(u)?u.valueOf():hc(u).valueOf()}},{key:"getLocale",value:function(u){return(0,Re.isMoment)(u)?u.locale():(0,Re.locale)()}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(t.sBO,16),t.Y36(t.R0b,16))},b.\u0275pipe=t.Yjl({name:"amTimeAgo",type:b,pure:!1}),b}(),$d=function(){var b=function(){function L(){(0,p.Z)(this,L)}return(0,e.Z)(L,null,[{key:"forRoot",value:function(u){return{ngModule:L,providers:[{provide:lf,useValue:Object.assign({},u)}]}}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({}),b}();function Xd(b,L){1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-progress-spinner",19),t.TgZ(2,"div"),t._uU(3,"Running task ... "),t.qZA(),t.qZA())}function Jm(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",20),t.TgZ(2,"div"),t.TgZ(3,"div",21),t._uU(4,"Next Run Time"),t.qZA(),t.TgZ(5,"i"),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(6),t.Oqu(g.momentTime(g.job.nextRun))}}function ff(b,L){if(1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",22),t.TgZ(2,"div"),t.TgZ(3,"div",21),t.TgZ(4,"i"),t._uU(5,"Schedule Disabled"),t.qZA(),t.qZA(),t.TgZ(6,"i"),t.TgZ(7,"s"),t._uU(8),t.ALo(9,"amTimeAgo"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(8),t.Oqu(t.lcZ(9,1,g.job.nextRun))}}function Qm(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,Jm,7,1,"div",4),t.YNc(2,ff,10,3,"div",4),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",g.job.enabled),t.xp6(1),t.Q6J("ngIf",!g.job.enabled)}}function Wm(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",23),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2);return M.execute(M.job)}),t._uU(1," (execute now) "),t.qZA()}}function zm(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",24),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2);return M.cancel(M.job)}),t._uU(1," (click to cancel) "),t.qZA()}}function mf(b,L){if(1&b&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Description:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.job.description)}}function ep(b,L){if(1&b&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Cron Schedule:"),t.qZA(),t.TgZ(3,"div",13),t.TgZ(4,"div"),t.TgZ(5,"code"),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div"),t.TgZ(8,"i"),t._uU(9),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(6),t.Oqu(g.job.cronSchedule),t.xp6(3),t.hij(" (",g.cronTime(g.job.cronSchedule),") ")}}function Gm(b,L){if(1&b&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Number of times run:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.job.numberOfRuns)}}function Nh(b,L){if(1&b&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Last Execution Duration:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.job.lastDurationHuman)}}function hf(b,L){if(1&b&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Message:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.job.taskDetails.message)}}function _f(b,L){if(1&b&&(t.TgZ(0,"div",25),t.TgZ(1,"span",26),t._uU(2,"Last started: "),t.qZA(),t.TgZ(3,"span",27),t._uU(4),t.ALo(5,"amTimeAgo"),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(3),t.s9C("matTooltip",g.formatDate(g.job.lastStarted)),t.xp6(1),t.Oqu(t.lcZ(5,2,g.job.lastStarted))}}function Km(b,L){if(1&b&&(t.TgZ(0,"div",25),t.TgZ(1,"span",26),t._uU(2,"Last ended: "),t.qZA(),t.TgZ(3,"span",27),t._uU(4),t.ALo(5,"amTimeAgo"),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(3),t.s9C("matTooltip",g.formatDate(g.job.lastFinished)),t.xp6(1),t.Oqu(t.lcZ(5,2,g.job.lastFinished))}}function tp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"button",24),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2);return M.enable(M.job)}),t._uU(2," (click to enable task) "),t.qZA(),t.qZA()}}function Rh(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"button",24),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2);return M.disable(M.job)}),t._uU(2," (click to disable task) "),t.qZA(),t.qZA()}}function Uh(b,L){if(1&b&&(t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"div",3),t.YNc(3,Xd,4,0,"div",4),t.YNc(4,Qm,3,2,"div",4),t.qZA(),t.TgZ(5,"div",5),t.YNc(6,Wm,2,0,"button",6),t.YNc(7,zm,2,0,"button",7),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.YNc(10,mf,5,1,"div",10),t.TgZ(11,"div",11),t.TgZ(12,"div",12),t._uU(13,"Enabled:"),t.qZA(),t.TgZ(14,"div",13),t._uU(15),t.qZA(),t.qZA(),t.YNc(16,ep,10,2,"div",10),t.YNc(17,Gm,5,1,"div",14),t.YNc(18,Nh,5,1,"div",10),t.YNc(19,hf,5,1,"div",10),t.qZA(),t.qZA(),t.TgZ(20,"div",15),t.TgZ(21,"div",16),t.YNc(22,_f,6,4,"div",17),t.YNc(23,Km,6,4,"div",17),t.qZA(),t.YNc(24,tp,3,0,"div",18),t.YNc(25,Rh,3,0,"div",18),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(3),t.Q6J("ngIf",g.job.running||g.quickLoad),t.xp6(1),t.Q6J("ngIf",!g.job.running&&!g.quickLoad),t.xp6(2),t.Q6J("ngIf",!g.job.running&&!g.quickLoad),t.xp6(1),t.Q6J("ngIf",g.job.running||g.quickLoad),t.xp6(3),t.Q6J("ngIf",g.job.description),t.xp6(5),t.Oqu(g.job.enabled),t.xp6(1),t.Q6J("ngIf",g.job.cronSchedule),t.xp6(1),t.Q6J("ngIf",g.job.numberOfRuns),t.xp6(1),t.Q6J("ngIf",g.job.lastDurationHuman),t.xp6(1),t.Q6J("ngIf",g.job.taskDetails),t.xp6(3),t.Q6J("ngIf",g.job.lastStarted),t.xp6(1),t.Q6J("ngIf",g.job.lastFinished),t.xp6(1),t.Q6J("ngIf",!g.job.enabled),t.xp6(1),t.Q6J("ngIf",g.job.enabled)}}var Bh=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.adminService=g,this.quickLoad=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.monitor=this.pollIn,this.refresh(!0)}},{key:"ngOnDestroy",value:function(){this.monitor=!1,this.refresh(!1),this.stopMonitor()}},{key:"momentTime",value:function(u){return Re(u).fromNow()}},{key:"cronTime",value:function(u){return Um().toString(u)}},{key:"refresh",value:function(u){var M=this;this.adminService.fetchJob(this.job.id).pipe((0,Y.q)(1)).subscribe(function(U){if(M.job=U,!M.job.running&&M.job.lastFinished){var re=Re.duration(M.job.lastFinished-M.job.lastStarted),lt="";0!==re.years()&&(lt+=re.years()+(re.years()>1?" years, ":" year, ")),0!==re.months()&&(lt+=re.months()+(re.months()>1?" months, ":" month, ")),0!==re.days()&&(lt+=re.days()+(re.days()>1?" days, ":" day, ")),0!==re.hours()&&(lt+=re.hours()+(re.hours()>1?" hrs, ":" hr, ")),0!==re.minutes()&&(lt+=re.minutes()+(re.minutes()," min, ")),0!==re.seconds()?lt+=re.seconds()+(re.seconds()," sec"):""===lt&&(lt=M.job.lastFinished-M.job.lastStarted+" ms"),M.job.lastDurationHuman=lt}M.quickLoad=!1,M.monitor&&u&&(M.mess="Polling ... "+U.status,M.job.running?setTimeout(function(){M.refresh(!0)},Math.min(M.untilNextRun(),200)):setTimeout(function(){M.refresh(!0)},Math.min(M.untilNextRun(),1e4)))},function(U){M.monitor=!1,console.log(U)})}},{key:"untilNextRun",value:function(){var u=new Date;return this.job.nextRun-(u.getTime()-0)}},{key:"stopMonitor",value:function(){this.monitor=!1}},{key:"disable",value:function(u){var M=this;this.adminService.runJob(u["@disable"]).pipe((0,Y.q)(1)).subscribe(function(U){M.refresh()})}},{key:"enable",value:function(u){var M=this;this.adminService.runJob(u["@enable"]).pipe((0,Y.q)(1)).subscribe(function(U){M.refresh()})}},{key:"execute",value:function(u){var M=this;this.quickLoad=!0,this.adminService.runJob(u["@execute"]).pipe((0,Y.q)(1)).subscribe(function(U){M.refresh(!0)},function(U){setTimeout(function(){M.refresh()})})}},{key:"cancel",value:function(u){var M=this;this.adminService.runJob(u["@cancel"]).pipe((0,Y.q)(1)).subscribe(function(U){M.refresh()})}},{key:"formatDate",value:function(u){return new Date(u)+""}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(z))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-scheduled-job"]],inputs:{job:"job",pollIn:"pollIn"},decls:1,vars:1,consts:[["class","panel panel-default sub-list","class","form-row job-container",4,"ngIf"],[1,"form-row","job-container"],[1,"side-bar","text-center"],[1,"job-settings"],[4,"ngIf"],[1,"bottom-button"],["class","mat-flat-button mat-primary","color","primary","mat-button","",3,"click",4,"ngIf"],["mat-button","","class","mat-flat-button mat-primary","color","primary",3,"click",4,"ngIf"],[1,"main-bar"],[1,"main-container"],["class","table-row",4,"ngIf"],[1,"table-row"],[1,"label","table-label"],[1,"table-value"],["class","table-row ",4,"ngIf"],[1,"end-bar"],[1,"job-dates"],["class","table-row time-row",4,"ngIf"],["class","bottom-button",4,"ngIf"],["color","primary","mode","indeterminate",1,"spinner"],["svgIcon","alarm-on",1,"spinner"],[1,"label"],["svgIcon","cancel",1,"spinner"],["color","primary","mat-button","",1,"mat-flat-button","mat-primary",3,"click"],["mat-button","","color","primary",1,"mat-flat-button","mat-primary",3,"click"],[1,"table-row","time-row"],[1,"time-label"],[1,"time-field",3,"matTooltip"]],template:function(g,u){1&g&&t.YNc(0,Uh,26,14,"div",0),2&g&&t.Q6J("ngIf",u.job)},directives:[Ee.O5,St.Ou,j.Hw,v.lW,Ie.gM],pipes:[jm],styles:[".form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.form-row[_ngcontent-%COMP%] .side-bar[_ngcontent-%COMP%]{width:30%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%] .end-bar[_ngcontent-%COMP%]{width:20%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%] .main-bar[_ngcontent-%COMP%]{width:50%}.job-container[_ngcontent-%COMP%]{padding:10px;margin:10px}.job-dates[_ngcontent-%COMP%]{width:100%;-ms-flex-positive:1;flex-grow:1;min-height:70px}.spinner[_ngcontent-%COMP%]{height:100px;width:100px;margin:auto}.label[_ngcontent-%COMP%]{font-weight:700}.table-label[_ngcontent-%COMP%]{min-width:110px;max-width:150px;margin-right:20px}.table-value[_ngcontent-%COMP%]{width:calc(100% - 170px);word-wrap:break-word}.table-row[_ngcontent-%COMP%]{margin-bottom:15px;width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-line-pack:initial;align-content:initial}.bottom-button[_ngcontent-%COMP%]{margin:auto}.job-settings[_ngcontent-%COMP%]{width:100%;-ms-flex-positive:1;flex-grow:1}.time-field[_ngcontent-%COMP%]{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;padding-left:29px;padding-top:5px}.time-field[_ngcontent-%COMP%], .time-label[_ngcontent-%COMP%]{width:100%}.time-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}"]}),b}();function Yh(b,L){if(1&b&&(t.TgZ(0,"mat-card",4),t._UZ(1,"app-scheduled-job",5),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("job",g)}}function qh(b,L){1&b&&(t.TgZ(0,"mat-card",6),t.TgZ(1,"h3"),t._uU(2,"No scheduled tasks"),t.qZA(),t.qZA())}function Zl(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,Yh,2,1,"mat-card",2),t.YNc(2,qh,3,0,"mat-card",3),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngForOf",g.jobs),t.xp6(1),t.Q6J("ngIf",!g.jobs.length)}}function $m(b,L){if(1&b&&(t.TgZ(0,"div",7),t._UZ(1,"mat-progress-spinner",8),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("color",g.primary)}}var Xm=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.adminService=g,this.jobs=[]}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.loading=!0,setTimeout(function(){u.adminService.fetchJobs().pipe((0,Y.q)(1)).subscribe(function(M){u.loading=!1,u.jobs=M.content})},1e3)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(z))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-scheduled-jobs"]],decls:2,vars:2,consts:[[4,"ngIf"],["class","loading-container",4,"ngIf"],["class","form-row",4,"ngFor","ngForOf"],["class","no-jobs",4,"ngIf"],[1,"form-row"],["pollIn","true",3,"job"],[1,"no-jobs"],[1,"loading-container"],["mode","indeterminate",1,"progress-spinner",3,"color"]],template:function(g,u){1&g&&(t.YNc(0,Zl,3,2,"div",0),t.YNc(1,$m,2,1,"div",1)),2&g&&(t.Q6J("ngIf",!1===u.loading),t.xp6(1),t.Q6J("ngIf",!0===u.loading))},directives:[Ee.O5,Ee.sg,Qt.a8,Bh,St.Ou],styles:[".form-row[_ngcontent-%COMP%]{width:100%;margin-top:20px}.job-container[_ngcontent-%COMP%]{padding:10px;margin:20px;border:1px solid rgba(0,0,0,.1)}.spinner[_ngcontent-%COMP%]{height:40px;width:40px}.loading-container[_ngcontent-%COMP%]{height:90%;width:100%;-ms-flex-line-pack:center;align-content:center;padding:50px}.progress-spinner[_ngcontent-%COMP%]{margin:auto}"]}),b}();function eh(b,L){if(1&b&&(t.TgZ(0,"a",9),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.Q6J("href",g.hasLink,t.LSH),t.xp6(1),t.hij(" ",g.text," ")}}function gf(b,L){if(1&b&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&b){var g=t.oxw().$implicit;t.xp6(1),t.hij(" ",g.text," ")}}function kl(b,L){if(1&b&&(t.TgZ(0,"mat-tree-node",5),t._UZ(1,"button",6),t.YNc(2,eh,2,2,"a",7),t.YNc(3,gf,2,1,"span",8),t.qZA()),2&b){var g=L.$implicit;t.xp6(2),t.Q6J("ngIf",g.hasLink),t.xp6(1),t.Q6J("ngIf",!g.hasLink)}}function Ju(b,L){if(1&b&&(t.TgZ(0,"mat-tree-node",5),t.TgZ(1,"button",10),t.TgZ(2,"mat-icon",11),t._uU(3),t.qZA(),t.qZA(),t._uU(4),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(2);t.xp6(1),t.uIk("aria-label","toggle "+g.name),t.xp6(2),t.hij(" ",u.treeControl.isExpanded(g)?"expand_more":"chevron_right"," "),t.xp6(1),t.hij(" ",g.name," ")}}function vf(b,L){if(1&b&&(t.TgZ(0,"mat-tree",2),t.YNc(1,kl,4,2,"mat-tree-node",3),t.YNc(2,Ju,5,3,"mat-tree-node",4),t.qZA()),2&b){var g=t.oxw();t.Q6J("dataSource",g.dataSource)("treeControl",g.treeControl),t.xp6(2),t.Q6J("matTreeNodeDefWhen",g.hasChild)}}var np=function(){var b=function(){function L(g,u){(0,p.Z)(this,L),this.adminService=g,this.loadingService=u,this._transformer=function(M,U){return{expandable:!!M.children&&M.children.length>0,name:M.id,text:M.text,level:U,hasLink:M.hasLink}},this.treeControl=new ka.C2(function(M){return M.level},function(M){return M.expandable}),this.treeFlattener=new Qa.JZ(this._transformer,function(M){return M.level},function(M){return M.expandable},function(M){return M.children}),this.dataSource=new Qa.kc(this.treeControl,this.treeFlattener),this.hasChild=function(M,U){return U.expandable}}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.loadingService.setLoading(!0),this.adminService.getFiles().pipe((0,Y.q)(1)).subscribe(function(M){var re,U=(0,Ic.Z)(M);try{for(U.s();!(re=U.n()).done;){var lt=re.value;!1===lt.isDir&&(lt.hasLink=u.adminService.getDownloadLink(lt.id))}}catch(nn){U.e(nn)}finally{U.f()}var Wt=u.listToTree(M);u.dataSource.data=Wt,u.loadingService.setLoading(!1)},function(M){return u.loadingService.setLoading(!1)})}},{key:"listToTree",value:function(u){var re,nn,M={},U=[],lt=0,Wt=(0,Ic.Z)(u);try{for(Wt.s();!(nn=Wt.n()).done;){var bn=nn.value;M[bn.id]=lt,lt++,bn.children=[],bn.order=1===lt?"primary":lt%2==0?"even":"odd"}}catch(pi){Wt.e(pi)}finally{Wt.f()}var Xn,Bn=(0,Ic.Z)(u);try{for(Bn.s();!(Xn=Bn.n()).done;)"#"!==(re=Xn.value).parent?u[M[re.parent]].children.push(re):U.push(re)}catch(pi){Bn.e(pi)}finally{Bn.f()}return U}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(z),t.Y36(On.b))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-all-files"]],decls:3,vars:1,consts:[[1,"description"],[3,"dataSource","treeControl",4,"ngIf"],[3,"dataSource","treeControl"],["class","file-node","matTreeNodePadding","",4,"matTreeNodeDef"],["class","file-node","matTreeNodePadding","",4,"matTreeNodeDef","matTreeNodeDefWhen"],["matTreeNodePadding","",1,"file-node"],["mat-icon-button","","disabled",""],["class","log-link","target","_blank","matTooltip","click to download",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank","matTooltip","click to download",1,"log-link",3,"href"],["mat-icon-button","","matTreeNodeToggle",""],[1,"mat-icon-rtl-mirror"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t._uU(1,"Click the chevrons to expand / collapse a folder. Click on a log file to download"),t.qZA(),t.YNc(2,vf,3,3,"mat-tree",1)),2&g&&(t.xp6(2),t.Q6J("ngIf",u.dataSource))},directives:[Ee.O5,Qa.gi,Qa.fQ,Qa.uo,Qa.ah,v.lW,Ie.gM,Qa.eu,j.Hw],styles:[".file-node[_ngcontent-%COMP%]{height:30px;min-height:30px}.log-link[_ngcontent-%COMP%]{color:#1565c0;text-decoration:none}.description[_ngcontent-%COMP%]{margin-bottom:20px}"]}),b}();function ip(b,L){1&b&&t._uU(0," Server Status ")}function yf(b,L){1&b&&t._uU(0," User Management ")}function ap(b,L){1&b&&(t.TgZ(0,"h2",4),t._uU(1,"User Management"),t.qZA(),t.TgZ(2,"mat-card",5),t._UZ(3,"app-user-management",6),t.qZA())}function Qu(b,L){1&b&&t._uU(0," Data Management ")}function Hs(b,L){1&b&&t._uU(0," CV Management ")}function bf(b,L){1&b&&t._uU(0," Scheduled Jobs ")}function th(b,L){1&b&&(t.TgZ(0,"h2",4),t._uU(1,"Scheduled Jobs"),t.qZA(),t.TgZ(2,"div",5),t._UZ(3,"app-scheduled-jobs"),t.qZA())}function hu(b,L){1&b&&t._uU(0," All Files ")}function Cf(b,L){1&b&&(t.TgZ(0,"h2",4),t._uU(1,"All Files"),t.qZA(),t.TgZ(2,"mat-card",5),t._UZ(3,"app-all-files",6),t.qZA())}var rp=function(){var b=function(){function L(g,u,M){(0,p.Z)(this,L),this.activatedRoute=g,this.router=u,this.location=M}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.activatedRoute.params.subscribe(function(U){switch(u.current=U.function,u.current){case"cache":default:u.activeTab=0;break;case"user":u.activeTab=1;break;case"data":u.activeTab=2;break;case"cv":u.activeTab=3;break;case"jobs":u.activeTab=4;break;case"files":u.activeTab=5}})}},{key:"onTabChanged",value:function(u){var M="cache";switch(u.index){case 0:break;case 1:M="user";break;case 2:M="data";break;case 3:M="cv";break;case 4:M="jobs";break;case 5:M="files"}"jobs"!==this.current?(this.current=M,this.router.navigate(["/admin/"+M])):(this.current=M,this.activeTab=0,this.router.navigate(["/admin/"+M]))}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.gz),t.Y36(h.F0),t.Y36(Ee.Ye))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-admin"]],decls:30,vars:1,consts:[[1,"admin-container"],[1,"page-container"],[1,"tab-group",3,"selectedIndex","selectedTabChange"],["mat-tab-label",""],[1,"tab-label"],[1,"app-container"],[1,"full-width"],["matTabContent",""]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"mat-tab-group",2),t.NdJ("selectedTabChange",function(U){return u.onTabChanged(U)}),t.TgZ(3,"mat-tab"),t.YNc(4,ip,1,0,"ng-template",3),t.TgZ(5,"h2",4),t._uU(6,"Server Status"),t.qZA(),t.TgZ(7,"div",5),t._UZ(8,"app-cache-summary",6),t.qZA(),t.qZA(),t.TgZ(9,"mat-tab"),t.YNc(10,yf,1,0,"ng-template",3),t.YNc(11,ap,4,0,"ng-template",7),t.qZA(),t.TgZ(12,"mat-tab"),t.YNc(13,Qu,1,0,"ng-template",3),t.TgZ(14,"h2",4),t._uU(15,"Data Import"),t.qZA(),t.TgZ(16,"mat-card",5),t._UZ(17,"app-data-management",6),t.qZA(),t.qZA(),t.TgZ(18,"mat-tab"),t.YNc(19,Hs,1,0,"ng-template",3),t.TgZ(20,"h2",4),t._uU(21,"Controlled Vocabulary Edit"),t.qZA(),t.TgZ(22,"mat-card",5),t._UZ(23,"app-cv-management",6),t.qZA(),t.qZA(),t.TgZ(24,"mat-tab"),t.YNc(25,bf,1,0,"ng-template",3),t.YNc(26,th,4,0,"ng-template",7),t.qZA(),t.TgZ(27,"mat-tab"),t.YNc(28,hu,1,0,"ng-template",3),t.YNc(29,Cf,4,0,"ng-template",7),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g&&(t.xp6(2),t.Q6J("selectedIndex",u.activeTab))},directives:[ur.SP,ur.uX,ur.uD,Sm,ur.Vc,Qt.a8,Hp,Em,rf,Xm,np],styles:[".admin-container[_ngcontent-%COMP%]{padding-top:65px;width:100%}.page-container[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.app-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin:15px auto 10px;max-width:1500px;min-width:1000px}.full-width[_ngcontent-%COMP%]{width:100%}.tab-label[_ngcontent-%COMP%]{margin-left:75px} .mat-tab-label{font-size:18px!important}.admin-header[_ngcontent-%COMP%]{font-size:18px;font-weight:400}"]}),b}(),nh=function(){var b=function(){function L(){(0,p.Z)(this,L)}return(0,e.Z)(L,[{key:"transform",value:function(u,M){return decodeURIComponent(u)}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275pipe=t.Yjl({name:"decodeUri",type:b,pure:!0}),b}(),ih=function(){var b=function(){function L(){(0,p.Z)(this,L)}return(0,e.Z)(L,[{key:"transform",value:function(u){if(isNaN(parseFloat(String(u))))return u.toString();for(var U=0;u>=1024&&U<5;)u/=1024,U++;return u.toFixed(2)+[" B"," KB"," MB"," GB"," TB"," PB"][U]}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275pipe=t.Yjl({name:"fileSize",type:b,pure:!0}),b}();function _u(b,L){1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-progress-spinner",23),t.TgZ(2,"div"),t._uU(3,"Running task ... "),t.qZA(),t.qZA())}function Rc(b,L){1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",24),t.TgZ(2,"div"),t.TgZ(3,"div",25),t.TgZ(4,"i"),t._uU(5,"Download Cancelled"),t.qZA(),t.qZA(),t.qZA(),t.qZA())}function op(b,L){1&b&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",26),t.TgZ(2,"div"),t.TgZ(3,"div",25),t.TgZ(4,"i"),t._uU(5,"Export complete"),t.qZA(),t.qZA(),t.qZA(),t.qZA())}function Uc(b,L){if(1&b&&(t.TgZ(0,"a",27),t._UZ(1,"mat-icon",28),t._uU(2," Download "),t.qZA()),2&b){var g=t.oxw(2);t.Q6J("href",g.download.downloadUrl.url,t.LSH)}}function gu(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",29),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).cancel()}),t._uU(1," (click to cancel) "),t.qZA()}}function Bc(b,L){if(1&b&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"Records Processed So Far:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.download.numRecords)}}function ah(b,L){if(1&b&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"Records Processed:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.download.numRecords)}}var Mf=function(){return["/browse-substance"]};function xf(b,L){if(1&b&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&b){var g=t.oxw(3);t.Q6J("routerLink",t.DdM(2,Mf))("queryParams",g.parameters)}}var as=function(){return["/browse-products"]};function sp(b,L){if(1&b&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&b){var g=t.oxw(3);t.Q6J("routerLink",t.DdM(2,as))("queryParams",g.parameters)}}var Sf=function(){return["/browse-applications"]};function yl(b,L){if(1&b&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&b){var g=t.oxw(3);t.Q6J("routerLink",t.DdM(2,Sf))("queryParams",g.parameters)}}var aa=function(){return["/browse-adverse-events"]};function Tf(b,L){if(1&b&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&b){var g=t.oxw(3);t.Q6J("routerLink",t.DdM(2,aa))("queryParams",g.parameters)}}function qo(b,L){if(1&b&&(t.TgZ(0,"div",39),t.TgZ(1,"div",40),t._uU(2,"Search: "),t.qZA(),t.TgZ(3,"div",41),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(4),t.Oqu(g.parameters.search)}}function Sr(b,L){if(1&b&&(t.TgZ(0,"span"),t.TgZ(1,"div",39),t.TgZ(2,"div",40),t._uU(3),t.qZA(),t.TgZ(4,"div",41),t._uU(5),t.ALo(6,"decodeUri"),t.qZA(),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw().$implicit;t.xp6(3),t.hij("",u.facet,": "),t.xp6(2),t.Oqu(t.lcZ(6,2,g))}}function Af(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Sr,7,4,"span",36),t.qZA()),2&b){var g=L.$implicit;t.xp6(1),t.Q6J("ngForOf",g.values)}}function tc(b,L){if(1&b&&(t.TgZ(0,"div",39),t.TgZ(1,"div",40),t._uU(2,"Sort By: "),t.qZA(),t.TgZ(3,"div",41),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(4),t.Oqu(g.displayOrder)}}function js(b,L){if(1&b&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t.YNc(2,xf,4,3,"a",33),t.YNc(3,sp,4,3,"a",33),t.YNc(4,yl,4,3,"a",33),t.YNc(5,Tf,4,3,"a",33),t.qZA(),t.TgZ(6,"div",34),t.YNc(7,qo,5,1,"div",35),t.YNc(8,Af,2,1,"span",36),t.YNc(9,tc,5,1,"div",35),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(2),t.Q6J("ngIf","browse"===g.type),t.xp6(1),t.Q6J("ngIf","product"===g.type),t.xp6(1),t.Q6J("ngIf","application"===g.type),t.xp6(1),t.Q6J("ngIf","adverseevent"===g.type),t.xp6(2),t.Q6J("ngIf",g.parameters.search),t.xp6(1),t.Q6J("ngForOf",g.facetArray),t.xp6(1),t.Q6J("ngIf",g.parameters.order)}}function rh(b,L){if(1&b&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"Size:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.ALo(5,"fileSize"),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(t.lcZ(5,1,g.download.size))}}function Yc(b,L){if(1&b&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"SHA-1:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(4),t.Oqu(g.download.sha1)}}function rs(b,L){if(1&b&&(t.TgZ(0,"div",42),t.ALo(1,"date"),t.TgZ(2,"span",6),t._uU(3,"Started: "),t.qZA(),t.TgZ(4,"span",43),t._uU(5),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.s9C("matTooltip",t.xi3(1,2,g.download.started,"long")),t.xp6(5),t.Oqu(g.download.startedHuman)}}function oh(b,L){if(1&b&&(t.TgZ(0,"div",42),t.ALo(1,"date"),t.TgZ(2,"span",6),t._uU(3,"Ended: "),t.qZA(),t.TgZ(4,"span",43),t._uU(5),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.s9C("matTooltip",t.xi3(1,2,g.download.finished,"long")),t.xp6(5),t.Oqu(g.download.finishedHuman)}}function lp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div",12),t.TgZ(1,"button",29),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).deleteDownload()}),t._UZ(2,"mat-icon",44),t._uU(3," Delete "),t.qZA(),t.qZA()}}function Vh(b,L){1&b&&(t.TgZ(0,"div",45),t._uU(1," The download is preparing on the server. This dialog can be closed and the file downloaded by clicking on 'user downloads' in the user icon menu\n"),t.qZA())}function nc(b,L){if(1&b&&(t.TgZ(0,"div",2),t.TgZ(1,"div",3),t.TgZ(2,"div",4),t._uU(3),t.qZA(),t.TgZ(4,"div",5),t.TgZ(5,"span",6),t._uU(6,"Status: "),t.qZA(),t.TgZ(7,"span",7),t._uU(8),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"div",8),t.TgZ(10,"div",9),t.TgZ(11,"div",10),t.YNc(12,_u,4,0,"div",11),t.YNc(13,Rc,6,0,"div",11),t.YNc(14,op,6,0,"div",11),t.qZA(),t.TgZ(15,"div",12),t.YNc(16,Uc,3,1,"a",13),t.YNc(17,gu,2,0,"button",14),t.qZA(),t.qZA(),t.TgZ(18,"div",15),t.TgZ(19,"div",16),t.YNc(20,Bc,5,1,"div",17),t.YNc(21,ah,5,1,"div",17),t.YNc(22,js,10,7,"div",17),t.YNc(23,rh,6,3,"div",17),t.YNc(24,Yc,5,1,"div",17),t.qZA(),t.qZA(),t.TgZ(25,"div",18),t.TgZ(26,"div",19),t.YNc(27,rs,6,5,"div",20),t.YNc(28,oh,6,5,"div",20),t.qZA(),t.YNc(29,lp,4,0,"div",21),t.qZA(),t.qZA(),t.YNc(30,Vh,2,0,"div",22),t.qZA()),2&b){var g=t.oxw();t.xp6(3),t.Oqu(g.download.displayFilename),t.xp6(5),t.Oqu(g.download.status),t.xp6(4),t.Q6J("ngIf","RUNNING"===g.download.status||"PREPARING"===g.download.status),t.xp6(1),t.Q6J("ngIf","CANCELLED"===g.download.status),t.xp6(1),t.Q6J("ngIf","COMPLETE"===g.download.status),t.xp6(2),t.Q6J("ngIf",g.download.complete),t.xp6(1),t.Q6J("ngIf","RUNNING"===g.download.status),t.xp6(3),t.Q6J("ngIf",null!==g.download.numRecords&&"RUNNING"===g.download.status),t.xp6(1),t.Q6J("ngIf",null!==g.download.numRecords&&"RUNNING"!==g.download.status&&"PREPARING"!==g.download.status),t.xp6(1),t.Q6J("ngIf",g.browseLink),t.xp6(1),t.Q6J("ngIf",g.download.size),t.xp6(1),t.Q6J("ngIf",g.download.sha1),t.xp6(3),t.Q6J("ngIf",g.download.started),t.xp6(1),t.Q6J("ngIf",g.download.finished),t.xp6(1),t.Q6J("ngIf",!g.download.enabled),t.xp6(1),t.Q6J("ngIf",!g.download.complete)}}function cp(b,L){1&b&&(t.TgZ(0,"div",8),t.TgZ(1,"div",46),t._uU(2," Deleted Download "),t.qZA(),t.qZA())}function up(b,L){1&b&&(t.TgZ(0,"div",8),t.TgZ(1,"div",46),t._uU(2," Download not found "),t.qZA(),t.qZA())}var gr=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.authService=g,this.deletedEmitter=new t.vpe,this.deleted=!1,this.browseLink=!1,this.parameters={},this.facetArray=[],this.killed=!1}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){this.refresh()}},{key:"refresh",value:function(u){var M=this;u||this.authService.getUpdateStatus(this.id).pipe((0,Y.q)(1)).subscribe(function(U){M.download=U,U.originalQuery&&M.processQuery(U.originalQuery),M.exists=!0,M.download.started&&(M.download.startedHuman=Re(M.download.started).fromNow()),M.download.finished&&(M.download.finishedHuman=Re(M.download.finished).fromNow()),("RUNNING"===M.download.status||"PREPARING"===M.download.status||"INITIALIZED"===M.download.status)&&(M.killed||setTimeout(function(){M.refresh()},1400))},function(U){M.exists=!1})}},{key:"ngOnDestroy",value:function(){this.killed=!0,this.exists=!1,this.refresh(!0)}},{key:"cancel",value:function(){var u=this;this.authService.changeDownload(this.download.cancelUrl.url).pipe((0,Y.q)(1)).subscribe(function(M){u.refresh()})}},{key:"downloadExport",value:function(){var u=this;this.authService.changeDownload(this.download.downloadUrl).pipe((0,Y.q)(1)).subscribe(function(M){u.refresh()})}},{key:"deleteDownload",value:function(){var u=this;this.authService.deleteDownload(this.download.removeUrl.url).pipe((0,Y.q)(1)).subscribe(function(M){u.deleted=!0})}},{key:"processQuery",value:function(u){var M=this;if(u.indexOf("status(")<0){this.browseLink=!0,this.type=u.indexOf("v1/productsall")>0?"product":u.indexOf("v1/applications")>0||u.indexOf("v1/applicationsall")>0?"application":u.indexOf("v1/adverseeventpt")>0||u.indexOf("v1/adverseeventdme")>0||u.indexOf("v1/adverseeventcvm")>0?"adverseevent":"browse",u=u.split("?")[1];var U=new URLSearchParams(u);if(this.facetArray=[],U.getAll("facet").forEach(function(Bn){var Xn=Bn.split("/"),oi="true";Xn[0].indexOf("!")>-1&&(oi="false",Xn[0]=Xn[0].slice(1,Xn[0].length));var pi=!1;Xn[1]=encodeURIComponent(Xn[1]);var ii=Xn[1]+"."+oi;M.facetArray.forEach(function(Ui){Ui.facet===Xn[0]&&(Ui.valueString=Ui.valueString+"+"+ii,Ui.values.push("false"===oi?"NOT "+Xn[1]:Xn[1]),pi=!0)}),!1===pi&&M.facetArray.push({facet:Xn[0],valueString:ii,values:["false"===oi?"NOT "+Xn[1]:Xn[1]]})}),U.has("q")&&(this.parameters.search=U.get("q")),U.has("order")){this.parameters.order=U.get("order");var lt=U.get("order");"$"===lt.charAt(0)&&(lt=(lt=lt.slice(1,lt.length)).replace("root_","")+" - descending"),"^"===lt.charAt(0)&&(lt=(lt=lt.slice(1,lt.length)).replace("root_","")+" - ascending"),this.displayOrder=lt}if(this.facetArray.length>0){for(var Wt="",nn=0;nn0),t.xp6(1),t.Q6J("ngIf",g.loadJob.statistics.recordsExtractedFailed>0)}}function vu(b,L){if(1&b&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&b){var g=t.oxw(4);t.Udp("width",g.stats.processedPass,"%"),t.xp6(2),t.Oqu(g.loadJob.statistics.recordsProcessedSuccess)}}function Wu(b,L){if(1&b&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&b){var g=t.oxw(4);t.Udp("width",g.stats.processedFail-g.stats.processedPass,"%"),t.xp6(2),t.Oqu(g.loadJob.statistics.recordsProcessedFailed)}}function zu(b,L){if(1&b&&(t.TgZ(0,"div",10),t.TgZ(1,"div",11),t._uU(2,"Processed Records"),t.qZA(),t._UZ(3,"mat-progress-bar",28),t._UZ(4,"mat-progress-bar",31),t.TgZ(5,"div",13),t.YNc(6,vu,3,3,"div",30),t.YNc(7,Wu,3,3,"div",30),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(3),t.Q6J("color",g.accent)("value",g.stats.processedPass),t.xp6(1),t.Q6J("value",g.stats.processedFail),t.xp6(2),t.Q6J("ngIf",g.loadJob.statistics.recordsProcessedSuccess>0),t.xp6(1),t.Q6J("ngIf",g.loadJob.statistics.recordsProcessedFailed>0)}}function Ef(b,L){if(1&b&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&b){var g=t.oxw(4);t.Udp("width",g.stats.persistPass,"%"),t.xp6(2),t.Oqu(g.loadJob.statistics.recordsPersistedSuccess)}}function os(b,L){if(1&b&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&b){var g=t.oxw(4);t.Udp("width",g.stats.persistFail-g.stats.persistPass,"%"),t.xp6(2),t.Oqu(g.loadJob.statistics.recordsPersistedFailed)}}function wo(b,L){if(1&b&&(t.TgZ(0,"div",10),t.TgZ(1,"div",11),t._uU(2,"Persisted Records"),t.qZA(),t._UZ(3,"mat-progress-bar",28),t._UZ(4,"mat-progress-bar",31),t.TgZ(5,"div",13),t.YNc(6,Ef,3,3,"div",30),t.YNc(7,os,3,3,"div",30),t.qZA(),t.qZA()),2&b){var g=t.oxw(3);t.xp6(3),t.Q6J("color",g.accent)("value",g.stats.persistPass),t.xp6(1),t.Q6J("value",g.stats.persistFail),t.xp6(2),t.Q6J("ngIf",g.loadJob.statistics.recordsPersistedSuccess>0),t.xp6(1),t.Q6J("ngIf",g.loadJob.statistics.recordsPersistedFailed>0)}}function qc(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,Of,8,6,"div",27),t.YNc(2,zu,8,5,"div",27),t.YNc(3,wo,8,5,"div",27),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",g.stats.extractPass&&g.stats.extractPass>=0||g.stats.extractFail&&g.stats.extractFail>=0),t.xp6(1),t.Q6J("ngIf",g.stats.processedFail&&g.stats.processedFail>=0||g.stats.processedPass&&g.stats.processedPass>=0),t.xp6(1),t.Q6J("ngIf",g.stats.persistPass&&g.stats.persistPass>=0||g.stats.persistFail&&g.stats.persistFail>=0)}}function Zf(b,L){if(1&b&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2," Time started: "),t.qZA(),t.TgZ(3,"div",32),t.ALo(4,"date"),t.TgZ(5,"code"),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(3),t.s9C("matTooltip",t.xi3(4,2,g.loadJob.start,"medium")),t.xp6(3),t.hij(" ",g.startedHuman,"")}}function Hh(b,L){if(1&b&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2," Time Finished:"),t.qZA(),t.TgZ(3,"div",32),t.ALo(4,"date"),t.TgZ(5,"code"),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(3),t.s9C("matTooltip",t.xi3(4,2,g.loadJob.stop,"medium")),t.xp6(3),t.hij(" ",g.finishedHuman,"")}}function kf(b,L){if(1&b&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2," Estimated time left: "),t.qZA(),t.TgZ(3,"div",21),t.TgZ(4,"code"),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(5),t.Oqu(g.humanTimeLeft)}}function uh(b,L){if(1&b&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2,"Estimated total time: "),t.qZA(),t.TgZ(3,"div",21),t.TgZ(4,"code"),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&b){var g=t.oxw(2);t.xp6(5),t.Oqu(g.humanTimeEstimate)}}function dh(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).refresh()}),t._uU(1,"Update"),t.qZA()}if(2&b){var u=t.oxw(2);t.Q6J("disabled",u.loadJob.stop)}}function If(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",22),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).monitor=!1}),t._uU(1,"Stop Updating"),t.qZA()}}function Js(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",22),t.NdJ("click",function(){t.CHM(g);var M=t.oxw(2);return M.monitor=!0,M.refresh()}),t._uU(1,"Resume Auto Updates"),t.qZA()}}function ua(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",3),t.TgZ(2,"div",4),t._uU(3),t.qZA(),t._UZ(4,"span",5),t.TgZ(5,"div",6),t._uU(6),t.YNc(7,Df,2,1,"div",7),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.TgZ(10,"div",10),t.TgZ(11,"div",11),t._uU(12,"Progress"),t.qZA(),t.TgZ(13,"div"),t._UZ(14,"mat-progress-bar",12),t.TgZ(15,"div",13),t.TgZ(16,"div",14),t.TgZ(17,"span",15),t._uU(18),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(19,"button",16),t.NdJ("click",function(){t.CHM(g);var U=t.oxw();return U.hide=!U.hide}),t._uU(20),t.qZA(),t.YNc(21,qc,4,3,"div",2),t.qZA(),t.TgZ(22,"div",17),t.YNc(23,Zf,7,5,"div",18),t.YNc(24,Hh,7,5,"div",18),t.TgZ(25,"div",19),t.TgZ(26,"div",20),t._uU(27,"Total time running:"),t.qZA(),t.TgZ(28,"div",21),t.TgZ(29,"code"),t._uU(30),t.qZA(),t.qZA(),t.qZA(),t.TgZ(31,"div",19),t.TgZ(32,"div",20),t._uU(33,"Average Records per second:"),t.qZA(),t.TgZ(34,"div",21),t.TgZ(35,"code"),t._uU(36),t.ALo(37,"number"),t.qZA(),t.qZA(),t.qZA(),t.YNc(38,kf,6,1,"div",18),t.YNc(39,uh,6,1,"div",18),t.qZA(),t.qZA(),t.TgZ(40,"div",3),t.TgZ(41,"button",22),t.NdJ("click",function(){return t.CHM(g),t.oxw().clearJob()}),t._uU(42,"New Data Import"),t.qZA(),t._UZ(43,"span",5),t.TgZ(44,"span",23),t.YNc(45,dh,2,1,"button",24),t.qZA(),t.YNc(46,If,2,0,"button",25),t.YNc(47,Js,2,0,"button",25),t.qZA(),t.qZA()}if(2&b){var u=t.oxw();t.xp6(3),t.hij("Importing ",u.loadJob.name,""),t.xp6(3),t.hij("Status: ",u.loadJob.status,""),t.xp6(1),t.Q6J("ngIf","RUNNING"===u.loadJob.status),t.xp6(7),t.Q6J("value",u.dynamic/u.max*100),t.xp6(2),t.Udp("width",u.dynamic/u.max*100,"%"),t.xp6(2),t.AsE("",u.dynamic," / ",u.max,""),t.xp6(2),t.hij("",u.hide?"show":"hide"," details"),t.xp6(1),t.Q6J("ngIf",!u.hide),t.xp6(2),t.Q6J("ngIf",u.loadJob.start),t.xp6(1),t.Q6J("ngIf",u.loadJob.stop),t.xp6(6),t.Oqu(u.humanTimeTotal),t.xp6(6),t.Oqu(t.lcZ(37,20,u.averagePersistRate)),t.xp6(2),t.Q6J("ngIf",!u.loadJob.stop),t.xp6(1),t.Q6J("ngIf",!u.loadJob.stop),t.xp6(5),t.s9C("matTooltip",u.loadJob.stop?"The upload is no longer in progress":""),t.xp6(1),t.Q6J("ngIf",!u.monitor),t.xp6(1),t.Q6J("ngIf",u.monitor),t.xp6(1),t.Q6J("ngIf",!u.monitor&&!u.loadJob.stop)}}var Lf=function(){var b=function(){function L(g,u,M){(0,p.Z)(this,L),this.activeRoute=g,this.adminService=u,this.router=M,this.dynamic=0,this.max=0,this.monitor=!0,this.stats={},this.hide=!1,this.ellipses="."}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.activeRoute.params.subscribe(function(M){u.jobId=M.id,u.adminService.queryLoad(u.jobId).pipe((0,Y.q)(1)).subscribe(function(U){U.statistics&&U.statistics.totalRecords&&U.statistics.totalRecords.count&&(u.max=U.statistics.totalRecords.count),u.loadJob=U,u.stats.extractFail=0,u.stats.extractPass=0,u.stats.persistFail=0,u.stats.persistPass=0,u.stats.processedFail=0,u.stats.processedPass=0,u.humanizeFields(U),u.mixResultDisplay(U),u.changeEllipses(),u.refresh(!0)})})}},{key:"ngOnDestroy",value:function(){this.refresh(!1)}},{key:"mixResultDisplay",value:function(u){this.stats.extractFail=(u.statistics.recordsExtractedFailed+u.statistics.recordsExtractedSuccess)/this.max*100,this.stats.extractPass=u.statistics.recordsExtractedSuccess/this.max*100,this.stats.persistFail=(u.statistics.recordsPersistedFailed+u.statistics.recordsPersistedSuccess)/this.max*100,this.stats.persistPass=u.statistics.recordsPersistedSuccess/this.max*100,this.stats.processedFail=(u.statistics.recordsProcessedFailed+u.statistics.recordsProcessedSuccess)/this.max*100,this.stats.processedPass=u.statistics.recordsProcessedSuccess/this.max*100}},{key:"clearJob",value:function(){this.router.navigate(["/admin"],{queryParams:{function:"data"}})}},{key:"refresh",value:function(){var u=this,M=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.adminService.queryLoad(this.loadJob.id).pipe((0,Y.q)(1)).subscribe(function(U){u.loadJob=U,U.statistics.totalRecords&&U.statistics.totalRecords.count&&(u.max=U.statistics.totalRecords.count),u.humanizeFields(U),u.mixResultDisplay(U),"COMPLETE"!==U.status&&M?setTimeout(function(){u.monitor&&u.refresh()}):u.monitor=!1},function(U){u.message="invalid Job ID",u.jobId=null})}},{key:"humanizeFields",value:function(u){this.dynamic=u.statistics.recordsPersistedSuccess+u.statistics.recordsPersistedFailed+u.statistics.recordsProcessedFailed+u.statistics.recordsExtractedFailed;var M=u.stop||null,U=Re.duration(u.statistics.estimatedTimeLeft,"milliseconds");this.humanTimeLeft=U.humanize(),M?this.averagePersistRate=1e3*u.statistics.recordsPersistedSuccess/(M-u.start):(this.averagePersistRate=1e3/u.statistics.averageTimeToPersist,M=(new Date).getTime()),this.humanTimeTotal=Re.duration(M-u.start,"milliseconds").humanize(),this.humanTimeEstimate=Re.duration(M-u.start+u.statistics.estimatedTimeLeft,"milliseconds").humanize(),u.start&&(this.startedHuman=Re(u.start).fromNow()),u.stop&&(this.finishedHuman=Re(u.stop).fromNow())}},{key:"toFullHumanTime",value:function(u){var M="0";return u.years()>0&&(M+=u.years()+" years "),(u.months()>0||""!==M)&&(M+=u.months()+" months "),(u.days()>0||""!==M)&&(M+=u.days()+" days "),(u.hours()>0||""!==M)&&(M+=u.hours()+" hours "),(u.minutes()>0||""!==M)&&(M+=u.minutes()+" minutes "),(u.seconds()>0||""!==M)&&(M+=u.seconds()+" seconds"),M}},{key:"changeEllipses",value:function(){var u=this;if(this.loadJob&&"RUNNING"===this.loadJob.status){switch(this.ellipses){case".":this.ellipses="..";break;case"..":this.ellipses="...";break;default:this.ellipses="."}setTimeout(function(){u.changeEllipses()},1e3)}else this.ellipses=""}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(h.gz),t.Y36(z),t.Y36(h.F0))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-monitor"]],decls:5,vars:1,consts:[[1,"monitor-container"],[1,"monitor-header"],[4,"ngIf"],[1,"full-row"],[1,"job-title"],[1,"middle-fill"],[1,"large-val"],["class","ellipses",4,"ngIf"],[1,"lower-body"],[1,"loader-container"],[1,"progress-container"],[1,"bar-label"],["color","accent","mode","determinate",1,"load-progress",3,"value"],[1,"label-row"],[1,"count-cont"],[1,"count-row-label"],["mat-button","",1,"hide-button",3,"click"],[1,"stat-container"],["class","label-value",4,"ngIf"],[1,"label-value"],[1,"label"],[1,"value"],["mat-button","",3,"click"],[3,"matTooltip"],["mat-button","",3,"disabled","click",4,"ngIf"],["mat-button","",3,"click",4,"ngIf"],[1,"ellipses"],["class","progress-container",4,"ngIf"],["mode","determinate",1,"load-progress","load-success",3,"color","value"],["mode","determinate",1,"load-progress","load-fail",3,"color","value"],["class","count-cont",3,"width",4,"ngIf"],["mode","determinate",1,"load-progress","load-fail",3,"value"],[1,"value",3,"matTooltip"],["mat-button","",3,"disabled","click"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"h2",1),t._uU(2,"Upload Monitor"),t.qZA(),t.TgZ(3,"mat-card"),t.YNc(4,ua,48,22,"div",2),t.qZA(),t.qZA()),2&g&&(t.xp6(4),t.Q6J("ngIf",u.loadJob))},directives:[Qt.a8,Ee.O5,Ve.pW,v.lW,Ie.gM],pipes:[Ee.uU,Ee.JJ],styles:[".italics[_ngcontent-%COMP%]{font-style:italic;color:#00000080}.file-name[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;margin-left:15px;margin-top:auto;margin-bottom:auto}.full-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;padding:10px}.monitor-container[_ngcontent-%COMP%]{margin-top:90px}.job-title[_ngcontent-%COMP%]{font-size:20px}.load-progress[_ngcontent-%COMP%]{height:17px;margin-bottom:5px;font-size:12px;color:#000;-webkit-text-fill-color:white;-webkit-text-stroke-width:1px;-webkit-text-stroke-color:black}.load-fail[_ngcontent-%COMP%]{margin-top:-22px}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:#ad1a1a;z-index:1}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:#ad1a1a}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.loading-spinner[_ngcontent-%COMP%]{width:70px;margin:auto}.load-fail-old[_ngcontent-%COMP%]{-ms-transform:rotate(180deg);transform:rotate(180deg);margin-top:-22px}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:#ad1a1a;z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:#ad1a1a;z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.load-success[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:rgba(0,0,0,.01)}.progress-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:12px}.progress-container[_ngcontent-%COMP%] .load-progress[_ngcontent-%COMP%]{width:100%}.progress-container[_ngcontent-%COMP%] .bar-label[_ngcontent-%COMP%]{font-size:14px;padding-bottom:3px}.spinner-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%]{width:33%;-ms-flex-direction:column;flex-direction:column}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:50px}.count-label[_ngcontent-%COMP%]{margin-top:auto;margin-bottom:auto}.loader-container[_ngcontent-%COMP%]{width:70%;margin:10px}.lower-body[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.stat-container[_ngcontent-%COMP%]{width:30%;margin:10px;min-width:250px}.label-value[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:10px}.label-value[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{width:50%;min-width:125px;font-weight:500}.label-value[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{width:50%}.example-section[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;height:60px}.mirror[_ngcontent-%COMP%]{margin-top:-105px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror[_ngcontent-%COMP%] circle{stroke:#ad1a1a}.mirror[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:#d4d4d4}.mirror-test[_ngcontent-%COMP%]{margin-left:-125px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror-test[_ngcontent-%COMP%] circle{stroke:#ad1a1a}.mirror-test[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:#d4d4d4}.large-val[_ngcontent-%COMP%]{font-size:19px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.ellipses[_ngcontent-%COMP%]{width:20px}.overlap[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.deleted[_ngcontent-%COMP%]{margin:auto;padding:10px;color:gray;font-style:italics;font-size:18px}.label-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:left;justify-content:left}.label-row[_ngcontent-%COMP%] .count-row-label[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto;text-shadow:1px 0 0 #000,0 -1px 0 #000,0 1px 0 #000,-1px 0 0 #000;white-space:nowrap}.hide-button[_ngcontent-%COMP%]{margin:10px}.count-cont[_ngcontent-%COMP%]{text-align:center;color:#fff;margin-top:-22px;font-weight:500;z-index:5;font-size:15px;white-space:nowrap}.file-row[_ngcontent-%COMP%]{width:75%;height:40px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.options-row[_ngcontent-%COMP%]{width:25%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.bottom[_ngcontent-%COMP%]{padding-top:50px}.monitor-header[_ngcontent-%COMP%]{margin-left:100px}"]}),b}(),Kr=function(){var b=function(){function L(g,u){(0,p.Z)(this,L),this.router=g,this.authService=u}return(0,e.Z)(L,[{key:"canActivate",value:function(u,M){var U=this;return new A.y(function(re){U.authService.getAuth().subscribe(function(lt){lt?U.authService.hasAnyRolesAsync("Admin").subscribe(function(nn){nn?(re.next(!0),re.complete()):(re.next(U.router.parseUrl("/home")),re.complete())}):(re.next(U.router.createUrlTree(["/login"],{queryParams:{path:M.url}})),re.complete())})})}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.LFG(h.F0),t.LFG(T.e))},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac}),b}();function _c(b,L){if(1&b&&(t.TgZ(0,"span",3),t._uU(1,"or send an email to "),t.TgZ(2,"a",4),t._uU(3),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(2),t.MGl("href","mailto:",g.email,"",t.LSH),t.xp6(1),t.Oqu(g.email)}}var ph=function(){var b=function(){function L(g,u,M){(0,p.Z)(this,L),this.configService=g,this.authService=u,this.router=M}return(0,e.Z)(L,[{key:"ngOnInit",value:function(){var u=this;this.configService.configData&&this.configService.configData.contactEmail&&(this.email=this.configService.configData.contactEmail),this.authService.getAuth().pipe((0,Y.q)(1)).subscribe(function(M){M&&M.active&&u.router.navigate(["/home"])})}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.Y36(sa.E),t.Y36(Fi.e),t.Y36(h.F0))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-unauthorized"]],decls:6,vars:1,consts:[[1,"main-container"],[1,"form-row"],["style","padding-right:5px",4,"ngIf"],[2,"padding-right","5px"],[3,"href"]],template:function(g,u){1&g&&(t.TgZ(0,"div",0),t.TgZ(1,"mat-card"),t.TgZ(2,"div",1),t._uU(3," You are not authorized to see this resource. Please contact an administrator "),t.YNc(4,_c,4,2,"span",2),t._uU(5," to be granted access. "),t.qZA(),t.qZA(),t.qZA()),2&g&&(t.xp6(4),t.Q6J("ngIf",u.email))},directives:[Qt.a8,Ee.O5],styles:[".main-container[_ngcontent-%COMP%]{margin-top:100px}.form-row[_ngcontent-%COMP%]{width:100%;-ms-flex-direction:row;flex-direction:row;padding:25px;font-size:26px;line-height:46px;text-align:center}.form-row[_ngcontent-%COMP%] .equal-width[_ngcontent-%COMP%]{-ms-flex:1 0 0px;flex:1 0 0}"]}),b}(),La=n(34929),jr=n(26067),bl=function(){function b(L,g,u){(0,p.Z)(this,b),this.substanceService=L,this.utilsService=g,this.structureService=u,this.substanceDisulfideLinksEmitter=new jr.t,this.substanceGlycosylationEmitter=new jr.t,this.substanceLinksEmitter=new jr.t,this.substanceNamesEmitter=new jr.t,this.substanceOtherLinksEmitter=new jr.t,this.substanceStructuralModificationsEmitter=new jr.t,this.substanceCysteineEmitter=new jr.t,this.substanceFormActionEmitter=new jr.t,this.definitionEmitter=new Un.x,this.substanceSubunitsEmitter=new Un.x,this.substanceSugarsEmitter=new Un.x,this.substanceNucleicAcidEmitter=new Un.x,this.displaySequencesEmitter=new Un.x,this.substanceChangeReasonEmitter=new Un.x,this.nameResolver=new Un.x,this.resolvedMol=this.nameResolver.asObservable(),this._bypassUpdateCheck=!1,this.substanceEmitter=new jr.t}return(0,e.Z)(b,[{key:"ngOnDestroy",value:function(){this.unloadSubstance()}},{key:"loadSubstance",value:function(){var g=this,u=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"chemical",M=arguments.length>1?arguments[1]:void 0,U=arguments.length>2?arguments[2]:void 0,re=arguments.length>3?arguments[3]:void 0;return this.method=U||null,re&&(this.privateSubstance=M,this.substanceEmitter.next(M)),new A.y(function(lt){null!=M?(g.privateSubstance=M,u=g.privateSubstance.substanceClass):g.privateSubstance="chemical"===u||"structure"===u?{substanceClass:"chemical",references:[],names:[],structure:{molfile:"\n\n\n 0 0 0 0 0 0 999 V2000\nM END"},codes:[],relationships:[],properties:[]}:"protein"===u?{substanceClass:"protein",references:[],names:[],protein:{proteinType:""},codes:[],relationships:[],properties:[]}:"nucleicAcid"===u?{substanceClass:"nucleicAcid",references:[],names:[],nucleicAcid:{},codes:[],relationships:[],properties:[]}:"mixture"===u?{substanceClass:"mixture",references:[],names:[],mixture:{},codes:[],relationships:[],properties:[]}:"structurallyDiverse"===u?{substanceClass:"structurallyDiverse",references:[],names:[],structurallyDiverse:{part:["whole"],$$diverseType:"whole"},codes:[],relationships:[],properties:[]}:"specifiedSubstance"===u||"specifiedSubstanceG1"===u?{substanceClass:"specifiedSubstanceG1",references:[],names:[],specifiedSubstance:{constituents:[],references:[]},codes:[],relationships:[],properties:[]}:"specifiedSubstanceG3"===u?{substanceClass:u,references:[],names:[],specifiedSubstanceG3:{parentSubstance:{},definition:{references:[]},grade:{references:[]}},codes:[],properties:[]}:"polymer"===u?{substanceClass:u,references:[],names:[],polymer:{idealizedStructure:{},monomers:[]},codes:[],moieties:[],relationships:[],properties:[]}:"specifiedSubstanceG4m"===u?{substanceClass:u,specifiedSubstanceG4m:{parentSubstance:{},process:[]}}:{substanceClass:u,references:[],names:[],codes:[]},g.subClass=g.privateSubstance.substanceClass,"chemical"===g.subClass?g.subClass="structure":"specifiedSubstanceG1"===g.subClass&&(g.subClass="specifiedSubstance"),null==g.privateSubstance[g.subClass]&&(g.privateSubstance[g.subClass]={}),g.initForm(),g.substanceEmitter.next(g.privateSubstance),lt.next(),lt.complete()})}},{key:"substanceFormAction",get:function(){return this.substanceFormActionEmitter.asObservable()}},{key:"initForm",value:function(){this.substanceFormActionEmitter.next("load")}},{key:"substance",get:function(){return this.substanceEmitter.asObservable()}},{key:"resetState",value:function(){var g=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(g)}},{key:"unloadSubstance",value:function(){this.displaySequences=null,this.substanceEmitter.complete(),this.substanceDisulfideLinksEmitter.complete(),this.substanceGlycosylationEmitter.complete(),this.substanceLinksEmitter.complete(),this.substanceNamesEmitter.complete(),this.substanceOtherLinksEmitter.complete(),this.substanceStructuralModificationsEmitter.complete(),this.substanceCysteineEmitter.complete(),this.substanceEmitter=new jr.t,this.substanceDisulfideLinksEmitter=new jr.t,this.substanceGlycosylationEmitter=new jr.t,this.substanceLinksEmitter=new jr.t,this.substanceLinksEmitter=new jr.t,this.substanceOtherLinksEmitter=new jr.t,this.substanceStructuralModificationsEmitter=new jr.t,this.substanceCysteineEmitter=new jr.t,this.substanceFormActionEmitter.next("unload")}},{key:"ready",value:function(){var g=this;return new A.y(function(u){g.substanceEmitter.pipe((0,Y.q)(1)).subscribe(function(M){u.next(),u.complete()})})}},{key:"isSubstanceUpdated",get:function(){var g=JSON.stringify(this.privateSubstance);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.substanceStateHash!==this.utilsService.hashCode(g)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"saveSubstance",value:function(){var g=this;return new A.y(function(u){var M={isSuccessfull:!0};null!=g.privateSubstance.structure&&!g.privateSubstance.structure.uuid&&(g.privateSubstance.structure.id=g.utilsService.newUUID(),g.privateSubstance.structure.uuid=g.privateSubstance.structure.id),null!=g.privateSubstance.moieties&&g.privateSubstance.moieties.length&&g.privateSubstance.moieties.forEach(function(re){re.uuid||(re.id=g.utilsService.newUUID(),re.uuid=re.id)});var U=g.cleanSubstance();g.substanceService.saveSubstance(U,g.method).subscribe(function(re){g.privateSubstance=re,M.uuid=re.uuid,"protein"===g.privateSubstance.substanceClass?g.substanceSubunitsEmitter.next(g.privateSubstance.protein.subunits):"nucleicAcid"===g.privateSubstance.substanceClass?(g.substanceSugarsEmitter.next(g.privateSubstance.nucleicAcid.sugars),g.substanceSubunitsEmitter.next(g.privateSubstance.nucleicAcid.subunits)):"mixture"===g.privateSubstance.substanceClass&&g.substanceSubunitsEmitter.next(g.privateSubstance.mixture.components),g.substanceChangeReasonEmitter.next(g.privateSubstance.changeReason),g.substanceService.getSubstanceDetails(M.uuid).subscribe(function(lt){g.privateSubstance=lt,g.resetState(),g.substanceEmitter.next(g.privateSubstance),u.next(M),u.complete()},function(lt){u.next(M),u.complete()})},function(re){M.isSuccessfull=!1,re&&re.error&&re.error.validationMessages?M.validationMessages=re.error.validationMessages:M.serverError=re,u.error(M),u.complete()})})}},{key:"cleanSubstance",value:function(){var g=this;if(this.privateSubstance.structurallyDiverse&&(this.privateSubstance.structurallyDiverse.$$diverseType&&delete this.privateSubstance.structurallyDiverse.$$diverseType,this.privateSubstance.structurallyDiverse.$$storedPart&&delete this.privateSubstance.structurallyDiverse.$$storedPart,["organismFamily","organismGenus","organismSpecies","organismAuthor","infraSpecificName","infraSpecificType","fractionMaterialType","fractionName","developmentalStage"].forEach(function(nn){g.privateSubstance.structurallyDiverse[nn]&&null!==g.privateSubstance.structurallyDiverse[nn]&&""!==g.privateSubstance.structurallyDiverse[nn]&&(g.privateSubstance.structurallyDiverse[nn]=g.privateSubstance.structurallyDiverse[nn].trim())})),this.privateSubstance.structure&&(this.privateSubstance.structure.properties&&delete this.privateSubstance.structure.properties,this.privateSubstance.structure.links&&delete this.privateSubstance.structure.links),this.privateSubstance.polymer&&this.privateSubstance.polymer.displayStructure&&(this.privateSubstance.polymer.displayStructure.properties&&delete this.privateSubstance.polymer.displayStructure.properties,this.privateSubstance.polymer.displayStructure.links&&delete this.privateSubstance.polymer.displayStructure.links),this.privateSubstance.polymer&&this.privateSubstance.polymer.idealizedStructure&&(this.privateSubstance.polymer.idealizedStructure.properties&&delete this.privateSubstance.polymer.idealizedStructure.properties,this.privateSubstance.polymer.idealizedStructure.links&&delete this.privateSubstance.polymer.idealizedStructure.links),this.privateSubstance.moieties&&this.privateSubstance.moieties.forEach(function(nn){nn.properties&&delete nn.properties,nn.links&&delete nn.links}),this.privateSubstance.protein&&this.privateSubstance.protein.disulfideLinks&&this.privateSubstance.protein.disulfideLinks.length>0)for(var M=this.privateSubstance.protein.disulfideLinks.length;M>=0;M--)this.privateSubstance.protein.disulfideLinks[M]&&this.privateSubstance.protein.disulfideLinks[M].sites&&this.privateSubstance.protein.disulfideLinks[M].sites[0]&&this.privateSubstance.protein.disulfideLinks[M].sites[1]&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[M].sites[0]).length&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[M].sites[1]).length&&this.privateSubstance.protein.disulfideLinks.splice(M,1);var U=JSON.stringify(this.privateSubstance),re=JSON.parse(U),Wt=this.cleanObject(re).deletedUuids;return Wt.length>0&&(U=JSON.stringify(re),Wt.forEach(function(nn){U=U.replace(new RegExp('"'.concat(nn,'"'),"g"),"")}),U=(U=(U=U.replace(/,[,]+/g,",")).replace(/\[,/g,"[")).replace(/,\]/g,"]"),re=JSON.parse(U)),re}},{key:"cleanObject",value:function(g){var u=this,M=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if("[object Object]"===Object.prototype.toString.call(g)){var U=null!=g.$$deletedCode;return U?null!=g.uuid&&M.push(g.uuid):(delete g.$$deletedCode,Object.keys(g).forEach(function(re){"[object Array]"===Object.prototype.toString.call(g[re])?g[re]=g[re].filter(function(lt){return!u.cleanObject(lt,M).isDeleted}):"[object Object]"===Object.prototype.toString.call(g[re])&&u.cleanObject(g[re],M)})),{deletedUuids:M,isDeleted:U}}if("[object Array]"!==Object.prototype.toString.call(g))return{deletedUuids:M,isDeleted:!1};g.forEach(function(re){u.cleanObject(re,M)})}}]),b}();bl.\u0275fac=function(L){return new(L||bl)(t.LFG(Ne.d),t.LFG(ht.F),t.LFG(Yn.De))},bl.\u0275prov=t.Yz7({token:bl,factory:bl.\u0275fac,providedIn:"root"}),bl=(0,La.gn)([(0,t.GSi)(),(0,La.w6)("design:paramtypes",[Ne.d,ht.F,Yn.De])],bl);var Gu=["dynamicComponent"],fh=["expansionPanel"];function pp(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",19),t.NdJ("click",function(){return t.CHM(g),t.oxw().toggleValidation()}),t._uU(1),t._UZ(2,"mat-icon",20),t.qZA()}if(2&b){var u=t.oxw();t.Q6J("disabled",u.isLoading),t.xp6(1),t.hij(" ",u.showSubmissionMessages?"Hide":"Show"," messages "),t.xp6(1),t.Q6J("svgIcon",u.showSubmissionMessages?"chevron_up":"chevron_down")}}function jh(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",21),t.NdJ("click",function(){return t.CHM(g),t.oxw().validate("approval")}),t._uU(1,"Approve"),t.qZA()}if(2&b){var u=t.oxw();t.Q6J("disabled",!u.canApprove||u.approving)}}function mh(b,L){if(1&b&&(t.TgZ(0,"div",22),t._uU(1),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.hij(" ",g.submissionMessage," ")}}function Ff(b,L){1&b&&(t.TgZ(0,"div",22),t._uU(1," Please correct or dismiss the following errors and submit again: "),t.qZA())}function Nf(b,L){if(1&b&&(t.TgZ(0,"span"),t._UZ(1,"br"),t.TgZ(2,"a",32),t._uU(3),t.qZA(),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(4);t.xp6(2),t.Q6J("href",u.fixLink(g.href),t.LSH),t.xp6(1),t.Oqu(g.text)}}function Rf(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(){t.CHM(g);var M=t.oxw().index;return t.oxw(3).dismissValidationMessage(M)}),t._UZ(1,"mat-icon",34),t.qZA()}}function Uf(b,L){if(1&b&&(t.TgZ(0,"div",27),t.TgZ(1,"div",28),t._uU(2),t.qZA(),t.TgZ(3,"div",29),t._uU(4),t.YNc(5,Nf,4,2,"span",30),t.qZA(),t.YNc(6,Rf,2,0,"button",31),t.qZA()),2&b){var g=L.$implicit,u=t.oxw(3);t.xp6(1),t.Q6J("ngClass","ERROR"==g.messageType?"error-message":"warning-message"),t.xp6(1),t.hij(" ",g.messageType,""),t.xp6(2),t.Oqu(g.message),t.xp6(1),t.Q6J("ngForOf",g.links),t.xp6(1),t.Q6J("ngIf","ERROR"!=g.messageType&&!u.approving)}}function Bf(b,L){if(1&b&&(t.TgZ(0,"span"),t.YNc(1,Ff,2,0,"div",10),t.YNc(2,Uf,7,5,"div",26),t.qZA()),2&b){var g=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!g.serverError&&!g.approving),t.xp6(1),t.Q6J("ngForOf",g.validationMessages)}}function Il(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",35),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).submit()}),t._uU(1),t.qZA()}if(2&b){var u=t.oxw(2);t.Q6J("disabled",u.isLoading||!1===u.validationResult),t.xp6(1),t.hij("",u.validationMessages&&u.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function Ku(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",36),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).showSubmissionMessages=!1}),t._uU(1," Cancel"),t.qZA()}}function hh(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"button",35),t.NdJ("click",function(){return t.CHM(g),t.oxw(2).approve()}),t._uU(1," Confirm Approval"),t.qZA()}if(2&b){var u=t.oxw(2);t.Q6J("disabled",u.isLoading||!u.canApprove)}}function _h(b,L){if(1&b&&(t.TgZ(0,"div"),t.YNc(1,Bf,3,2,"span",11),t.TgZ(2,"div",23),t._UZ(3,"span",6),t.YNc(4,Il,2,2,"button",24),t.YNc(5,Ku,2,0,"button",25),t.YNc(6,hh,2,1,"button",24),t.qZA(),t.qZA()),2&b){var g=t.oxw();t.xp6(1),t.Q6J("ngIf",g.validationMessages.length>0),t.xp6(3),t.Q6J("ngIf",!g.approving),t.xp6(1),t.Q6J("ngIf",!g.approving),t.xp6(1),t.Q6J("ngIf",g.approving)}}function Yf(b,L){if(1&b){var g=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"button",40),t.NdJ("click",function(U){return t.CHM(g),t.oxw().$implicit.addItem(),U.stopPropagation()}),t._uU(2),t._UZ(3,"mat-icon",41),t.qZA(),t.qZA()}if(2&b){var u=t.oxw().$implicit;t.xp6(1),t.MGl("id","Add new ",u.menuLabel,""),t.MGl("matTooltip","Add new ",u.menuLabel,""),t.xp6(1),t.hij(" Add ",u.menuLabel," ")}}var fp=function(L){return{hidden:L}};function $u(b,L){if(1&b&&(t.TgZ(0,"mat-expansion-panel",37,38),t.TgZ(2,"mat-expansion-panel-header"),t.TgZ(3,"mat-panel-title"),t.TgZ(4,"h2"),t._uU(5),t.qZA(),t._UZ(6,"div",6),t.YNc(7,Yf,4,3,"div",11),t.qZA(),t.qZA(),t._UZ(8,"div",null,39),t.qZA()),2&b){var g=L.$implicit,u=t.oxw();t.Q6J("expanded",u.expandedComponents.indexOf(g.dynamicComponentName)>-1)("id",g.dynamicComponentName)("ngClass",t.VKq(5,fp,g.isHidden)),t.xp6(5),t.Oqu(g.menuLabel),t.xp6(2),t.Q6J("ngIf",g.canAddItem)}}var Xu=function(L){return{"top-fixed-top":L}},Vc=function(L,g){return{"submission-messages":!0,collapsed:L,expanded:g}},gh=function(L){return{"form-header-title-top":L}},Ir=function(){var b=function(){function L(g,u,M,U,re,lt,Wt,nn,bn,Bn,Xn,oi,pi,ii){(0,p.Z)(this,L),this.activatedRoute=g,this.substanceService=u,this.loadingService=M,this.mainNotificationService=U,this.router=re,this.dynamicComponentLoader=lt,this.gaService=Wt,this.substanceSsg4mService=nn,this.substanceFormService=bn,this.overlayContainerService=Bn,this.dialog=Xn,this.authService=oi,this.titleService=pi,this.sanitizer=ii,this.isLoading=!0,this.formSections=[],this.expandedComponents=["substance-form-definition","substance-form-structure","substance-form-moieties"],this.showSubmissionMessages=!1,this.validationResult=!1,this.subscriptions=[],this.classes=["concept","protein","chemical","structurallyDiverse","polymer","nucleicAcid","mixture","specifiedSubstanceG1","specifiedSubstanceG2","specifiedSubstanceG3","specifiedSubstanceG4m"],this.imported=!1,this.forceChange=!1,this.sameSubstance=!1,this.showHeaderBar="true",this.jsLibScriptUrls=["".concat(on.N.baseHref||"","assets/pathway/cola.min.js"),"".concat(on.N.baseHref||"","assets/pathway/d3v4.js"),"".concat(on.N.baseHref||"","assets/pathway/pathwayviz.js")]}return(0,e.Z)(L,[{key:"importDialog",value:function(){var u=this,M=this.dialog.open(wn,{width:"650px",autoFocus:!1});this.overlayContainer.style.zIndex="1002",M.afterClosed().pipe((0,Y.q)(1)).subscribe(function(re){re&&(u.loadingService.setLoading(!0),u.overlayContainer.style.zIndex=null,setTimeout(function(){u.router.onSameUrlNavigation="reload",u.loadingService.setLoading(!1),u.router.navigateByUrl("/substances-ssg4m/register?action=import&header="+u.showHeaderBar,{state:{record:re}})},1e3))})}},{key:"test",value:function(){this.router.navigated=!1,this.router.navigate([this.router.url])}},{key:"ngOnInit",value:function(){var u=this;this.showHeaderBar=this.activatedRoute.snapshot.queryParams.header||"true",this.loadingService.setLoading(!0),this.isAdmin=this.authService.hasRoles("admin"),this.isUpdater=this.authService.hasAnyRoles("Updater","SuperUpdater"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.imported=!1;var M=this.activatedRoute.params.subscribe(function(Wt){if(Wt.id){var nn=Wt.id;if(nn!==u.id){u.id=nn,u.gaService.sendPageView("Substance Edit");var bn=u.activatedRoute.snapshot.queryParamMap.get("switch")||null;bn?u.getSubstanceDetails(bn):u.getSubstanceDetails()}}else{var Bn=u.activatedRoute.snapshot.queryParams.action||null;if(Bn&&"import"===Bn&&window.history.state){var Xn=window.history.state;u.imported=!0,u.getDetailsFromImport(Xn.record),u.gaService.sendPageView("Substance Register")}else u.copy=u.activatedRoute.snapshot.queryParams.copy||null,u.copy?(u.getPartialSubstanceDetails(u.copy,u.activatedRoute.snapshot.queryParams.copyType||null),u.gaService.sendPageView("Substance Register")):setTimeout(function(){u.gaService.sendPageView("Substance Register"),u.subClass=u.activatedRoute.snapshot.params.type||"specifiedSubstanceG4m",u.substanceClass=u.subClass,u.titleService.setTitle("Register - Specified Substance Group 4 Manufacturing"),u.substanceFormService.loadSubstance(u.subClass).pipe((0,Y.q)(1)).subscribe(function(){u.setFormSections(bs.x[u.subClass]),u.loadingService.setLoading(!1),u.isLoading=!1})})}});this.subscriptions.push(M);var U=this.router.events.subscribe(function(Wt){Wt instanceof h.OD&&u.substanceSsg4mService.unloadSubstance()});if(this.subscriptions.push(U),this.approving=!1,this.authService.getAuth().pipe((0,Y.q)(1)).subscribe(function(Wt){u.user=Wt.identifier,setTimeout(function(){u.canApprove=u.canBeApproved()})}),!window.schemeUtil)for(var re=0;re=U?u.loadingService.setLoading(!1):(new Date).getTime()-lt.getTime()>12e3&&confirm("There was a network error while fetching files, would you like to refresh?")&&window.location.reload(),setTimeout(function(){u.loadingService.setLoading(!1)},5)})})}M.unsubscribe()})}},{key:"openedChange",value:function(u){this.overlayContainer.style.zIndex=u?"1002":"1000"}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(u){u.unsubscribe()})}},{key:"canBeApproved",value:function(){var u=this.activatedRoute.snapshot.queryParams.action||null;if(u&&"import"===u)return!1;if(this.definition&&this.definition.lastEditedBy&&this.user){var M=this.definition.lastEditedBy;return!(!M||"approved"===this.definition.status||M===this.user)}return!1}},{key:"showJSON",value:function(){var u=this.dialog.open(Pc,{width:"90%"});this.overlayContainer.style.zIndex="1002";var M=u.afterClosed().pipe((0,Y.q)(1)).subscribe(function(U){});this.subscriptions.push(M)}},{key:"saveJSON",value:function(){this.json=this.substanceFormService.cleanSubstance();var u=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.json)));this.downloadJsonHref=u;var M=new Date;this.jsonFileName="SSG4m_"+Re(M).format("MMM-DD-YYYY_H-mm-ss")}},{key:"getSubstanceDetails",value:function(u){var M=this;this.substanceService.getSubstanceDetails(this.id).pipe((0,Y.q)(1)).subscribe(function(U){U._name&&M.titleService.setTitle("Edit - "+U._name),U?(M.definitionType=U.definitionType,M.substanceClass=U.substanceClass,M.status=U.status,M.substanceSsg4mService.loadSubstance(U.substanceClass,U).pipe((0,Y.q)(1)).subscribe(function(){M.setFormSections(bs.x[U.substanceClass])})):M.handleSubstanceRetrivalError(),M.loadingService.setLoading(!1),M.isLoading=!1},function(U){M.gaService.sendException("getSubstanceDetails: error from API call"),M.loadingService.setLoading(!1),M.isLoading=!1,M.handleSubstanceRetrivalError()})}},{key:"jsonValid",value:function(u){try{JSON.parse(u)}catch(M){return!1}return!0}},{key:"getDetailsFromImport",value:function(u,M){var U=this;if(u&&this.jsonValid(u)){var re=JSON.parse(u);this.definitionType=re.definitionType,this.substanceClass=re.substanceClass,this.status=re.status,this.substanceFormService.loadSubstance(re.substanceClass,re,"import").pipe((0,Y.q)(1)).subscribe(function(){U.setFormSections(bs.x[re.substanceClass]),setTimeout(function(){U.forceChange=!0,U.dynamicComponents.forEach(function(lt,Wt){U.dynamicComponentLoader.getComponentFactory(U.formSections[Wt].dynamicComponentName).subscribe(function(nn){U.formSections[Wt].dynamicComponentRef=lt.createComponent(nn),U.formSections[Wt].matExpansionPanel=U.matExpansionPanels.find(function(Bn,Xn){return Wt===Xn}),U.formSections[Wt].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,Y.q)(1)).subscribe(function(Bn){U.formSections[Wt].menuLabel=Bn});var bn=U.formSections[Wt].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(Bn){U.formSections[Wt].isHidden=Bn});U.subscriptions.push(bn),U.formSections[Wt].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,Y.q)(1)).subscribe(function(Bn){if(U.formSections[Wt].canAddItem=Bn,Bn){var Xn=U.formSections[Wt].addItemEmitter.subscribe(function(){U.formSections[Wt].matExpansionPanel.open(),U.formSections[Wt].dynamicComponentRef.instance.addItem()});U.formSections[Wt].dynamicComponentRef.instance.componentDestroyed.pipe((0,Y.q)(1)).subscribe(function(){Xn.unsubscribe()})}}),U.formSections[Wt].dynamicComponentRef.changeDetectorRef.detectChanges()})}),U.canApprove=!1})},function(lt){U.loadingService.setLoading(!1)})}else this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1);this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"getPartialSubstanceDetails",value:function(u,M){var U=this;this.substanceService.getSubstanceDetails(u).pipe((0,Y.q)(1)).subscribe(function(re){re?(U.substanceClass=re.substanceClass,U.status=re.status,delete re.uuid,re._name&&delete re._name,U.scrub(re,M),U.substanceSsg4mService.loadSubstance(re.substanceClass,re).pipe((0,Y.q)(1)).subscribe(function(){U.setFormSections(bs.x[re.substanceClass]),U.loadingService.setLoading(!1),U.isLoading=!1})):U.handleSubstanceRetrivalError()},function(re){U.gaService.sendException("getSubstanceDetails: error from API call"),U.loadingService.setLoading(!1),U.isLoading=!1,U.handleSubstanceRetrivalError()})}},{key:"setFormSections",value:function(){var u=this,M=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.formSections=[],M.forEach(function(U){var re=new vd(U);u.formSections.push(re)})}},{key:"handleSubstanceRetrivalError",value:function(){var u=this;this.mainNotificationService.setNotification({message:"The substance you're trying to edit doesn't exist.",type:et.k.error,milisecondsToShow:4e3}),setTimeout(function(){u.router.navigate(["/substances/register"]),u.substanceSsg4mService.loadSubstance(u.subClass).pipe((0,Y.q)(1)).subscribe(function(){u.setFormSections(bs.x.chemical),u.loadingService.setLoading(!1),u.isLoading=!1})},5e3)}},{key:"validate",value:function(u){this.approving=!(!u||"approval"!==u),this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0)}},{key:"validateSubstance",value:function(){var u=this;return new A.y(function(M){var U=null;u.substanceService.validateSubstance(U).subscribe(function(re){if(re.validationMessages){for(var lt=0;lt=0;u--)"ERROR"!==this.validationMessages[u].messageType&&this.validationMessages.splice(u,1);0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"unloadNotification",value:function(u){this.substanceSsg4mService.isSubstanceUpdated&&(u.returnValue=!0)}},{key:"scrub",value:function(u,M){function U(){function Fr(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return Fr()+Fr()+"-"+Fr()+"-"+Fr()+"-"+Fr()+"-"+Fr()+Fr()+Fr()}for(var re=u,lt=rr.json.search(re,"//*[id]"),Wt={},nn=0;nn0),t.xp6(4),t.Q6J("ngIf",u.definition&&"concept"!==u.definition.substanceClass&&!u.definition.approvalID&&!u.imported&&"ALTERNATIVE"!==u.definitionType),t.xp6(1),t.Q6J("ngClass",t.WLB(13,Vc,!u.showSubmissionMessages,u.showSubmissionMessages)),t.xp6(1),t.Q6J("ngIf",u.submissionMessage),t.xp6(1),t.Q6J("ngIf",u.validationMessages),t.xp6(1),t.Q6J("ngClass",t.VKq(16,gh,"true"===u.showHeaderBar)),t.xp6(3),t.hij("",u.uuid&&!u.imported?"Editing ":"Registering New "," - Specified Substance Group 4 Manufacturing "),t.xp6(5),t.Q6J("ngForOf",u.formSections))},directives:[Ee.mk,v.lW,v.zs,Ee.O5,j.Hw,Ee.sg,Ie.gM,Ot.pp,Ot.ib,Ot.yz,Ot.yK],styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.top-fixed-top[_ngcontent-%COMP%]{top:64px}.cdk-overlay-pane[_ngcontent-%COMP%]{z-index:1005}mat-select-panel[_ngcontent-%COMP%]{z-index:1005}.admin-functions[_ngcontent-%COMP%], .changeClass[_ngcontent-%COMP%]{margin:-10px 5px -15px 30px;color:#4793d1}.admin-functions[_ngcontent-%COMP%] .mat-form-field-wrapper, .changeClass[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-bottom:20px!important} .mat-form-field-wrapper{padding-bottom:5px}.advanced-features[_ngcontent-%COMP%]{z-index:2000!important;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-left:10px} .cdk-overlay-pane{margin-top:20px!important}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;margin-top:-100;padding-top:0}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.mat-accordion[_ngcontent-%COMP%]{width:100%;max-width:1020px;box-sizing:border-box}.hidden[_ngcontent-%COMP%]{display:none!important}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.validate-button[_ngcontent-%COMP%]{margin-left:15px}.mat-expansion-panel-header-title[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.internal-link[_ngcontent-%COMP%]{color:#448aff}.import-button[_ngcontent-%COMP%]{margin-left:15px}.substance-form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.form-header-title[_ngcontent-%COMP%]{max-width:1028px;width:100%;padding:10px;display:-ms-flexbox;display:flex;margin:0 auto}.form-header[_ngcontent-%COMP%]{font-weight:500;font-size:28px}.sub-header[_ngcontent-%COMP%]{font-weight:400;padding-right:5px}.form-header-title-top[_ngcontent-%COMP%]{padding-top:150px}.bordergray[_ngcontent-%COMP%]{border:1px solid green}.fontbold[_ngcontent-%COMP%]{font-weight:700}.colorbluefda[_ngcontent-%COMP%]{color:#007cba}app-substance-form-ssg4m-process-card[_ngcontent-%COMP%] button[color=primary][_ngcontent-%COMP%]{float:right}"]}),b}(),qf=[{path:"",children:[{path:"",component:ro},{path:"home",component:ro},{path:"unauthorized",component:ph},{path:"browse-substance",component:bp},{path:"registrars",component:me},{path:"substances/register",component:Td,canActivate:[uc.R],canDeactivate:[Nu]},{path:"substances/register/:type",component:Td,canActivate:[uc.R],canDeactivate:[Nu]},{path:"substances/:id",component:Mp.n},{path:"substances/:id/v/:version",component:Mp.n},{path:"structure-search",component:Gi},{path:"guided-search",component:Lp},{path:"sequence-search",component:ns},{path:"login",component:dl},{path:"substances/:id/edit",component:Td,canActivate:[Fu.y],canDeactivate:[Nu]},{path:"admin",component:rp,canActivate:[Kr]},{path:"admin/:function",component:rp,canActivate:[Kr]},{path:"monitor/:id",component:Lf,canActivate:[Kr]},{path:"profile",component:Bt},{path:"user-downloads",component:Pf},{path:"user-downloads/:id",component:Pf},{path:"substances-ssg4m/register",component:Ir}],component:oa},{path:"**",component:f}],Vf=function(){var b=(0,e.Z)(function L(){(0,p.Z)(this,L)});return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({imports:[[h.Bz.forRoot(qf)],h.Bz]}),b}(),vh=function(){var b=(0,e.Z)(function L(g,u,M,U,re){(0,p.Z)(this,L),this.title=M,this.router=U,this.googleAnalyticsService=re,U.events.subscribe(function(lt){M.setTitle("GSRS")}),g.addSvgIcon("chevron_right",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-chevron_right-24px.svg")),g.addSvgIcon("search",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-search-24px.svg")),g.addSvgIcon("subdirectory_arrow_right",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-subdirectory_arrow_right-24px.svg")),g.addSvgIcon("list",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-list-24px.svg")),g.addSvgIcon("view_stream",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-view_stream-24px.svg")),g.addSvgIcon("menu",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-menu-24px.svg")),g.addSvgIcon("close",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-close-24px.svg")),g.addSvgIcon("delete_forever",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-delete_forever-24px.svg")),g.addSvgIcon("edit",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-edit-24px.svg")),g.addSvgIcon("zoom_in",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-zoom_in-24px.svg")),g.addSvgIcon("chevron_down",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-keyboard_arrow_down-24px.svg")),g.addSvgIcon("chevron_up",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-keyboard_arrow_up-24px.svg")),g.addSvgIcon("drop_down",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-arrow_drop_down-24px.svg")),g.addSvgIcon("drop_up",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-arrow_drop_up-24px.svg")),g.addSvgIcon("done",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-done-24px.svg")),g.addSvgIcon("link",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-link-24px.svg")),g.addSvgIcon("get_app",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-get_app-24px.svg")),g.addSvgIcon("account_circle",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-account_circle-24px.svg")),g.addSvgIcon("find_replace",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-find_replace-24px.svg")),g.addSvgIcon("not_interested",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-not_interested-24px.svg")),g.addSvgIcon("spellcheck",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-spellcheck-24px.svg")),g.addSvgIcon("view_module",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-view_module-24px.svg")),g.addSvgIcon("lock_open",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-lock_open-24px.svg")),g.addSvgIcon("lock",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-lock-24px.svg")),g.addSvgIcon("open_in_new",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-open_in_new-24px.svg")),g.addSvgIcon("cancel",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-cancel-24px.svg")),g.addSvgIcon("add_circle_outline",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-add_circle_outline-24px.svg")),g.addSvgIcon("remove_circle_outline",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-remove_circle_outline-24px.svg")),g.addSvgIcon("arrow_downward",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-arrow_downward-24px.svg")),g.addSvgIcon("cloud_upload",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-cloud_upload-24px.svg")),g.addSvgIcon("cloud_download",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-cloud_download-24px.svg")),g.addSvgIcon("attachment",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-attachment-24px.svg")),g.addSvgIcon("undo",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-undo-24px.svg")),g.addSvgIcon("move_to_inbox",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-move_to_inbox-24px.svg")),g.addSvgIcon("clear",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-clear-24px.svg")),g.addSvgIcon("settings_applications",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-settings_applications-24px.svg")),g.addSvgIcon("file_copy",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-file_copy-24px.svg")),g.addSvgIcon("outline-file_copy",u.bypassSecurityTrustResourceUrl("assets/icons/outline-file_copy-24px.svg")),g.addSvgIcon("outline-description",u.bypassSecurityTrustResourceUrl("assets/icons/outline-description-24px.svg")),g.addSvgIcon("local-pharmacy",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-local_pharmacy-24px.svg")),g.addSvgIcon("insert-chart",u.bypassSecurityTrustResourceUrl("assets/icons/outline-insert_chart-24px.svg")),g.addSvgIcon("youtube",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-youtube_searched_for-24px.svg")),g.addSvgIcon("find-in-page",u.bypassSecurityTrustResourceUrl("assets/icons/outline-find_in_page-24px.svg")),g.addSvgIcon("note",u.bypassSecurityTrustResourceUrl("assets/icons/outline-note-24px.svg")),g.addSvgIcon("pageview",u.bypassSecurityTrustResourceUrl("assets/icons/outline-pageview-24px.svg")),g.addSvgIcon("brush",u.bypassSecurityTrustResourceUrl("assets/icons/outline-brush-24px.svg")),g.addSvgIcon("alarm-on",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-alarm_on-24px.svg")),g.addSvgIcon("view-list",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-view_list-24px.svg")),g.addSvgIcon("glasses",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-glasses-24px.svg")),g.addSvgIcon("paste",u.bypassSecurityTrustResourceUrl("assets/icons/baseline-paste-24px.svg"))});return b.\u0275fac=function(g){return new(g||b)(t.Y36(j.jv),t.Y36(P.H7),t.Y36(P.Dx),t.Y36(h.F0),t.Y36(Yi.$))},b.\u0275cmp=t.Xpm({type:b,selectors:[["app-root"]],decls:1,vars:0,template:function(g,u){1&g&&t._UZ(0,"router-outlet")},directives:[h.lC],styles:[""]}),b}(),Hc=n(57481),Hf=n(70178),jf=n(61859);function Jf(b){return function(){return b.load(on.N)}}var ic=n(65838),Qf=function(){var b=(0,e.Z)(function L(){(0,p.Z)(this,L)});return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({providers:[De.a],imports:[[Ee.ez]]}),b}(),Wf=n(56473),zf=n(65831),ac=n(64061),Gf=[{componentId:"structure-details",path:"structure-details",loadChildren:function(){return Promise.all([n.e(8592),n.e(4333)]).then(n.bind(n,94333)).then(function(L){return L.StructureDetailsModule})}},{componentId:"substance-audit-info",path:"substance-audit-info",loadChildren:function(){return n.e(6607).then(n.bind(n,76607)).then(function(L){return L.SubstanceAuditInfoModule})}},{componentId:"substance-codes",path:"substance-codes",loadChildren:function(){return Promise.all([n.e(8592),n.e(275)]).then(n.bind(n,60275)).then(function(L){return L.SubstanceCodesModule})}},{componentId:"substance-subunits",path:"substance-subunits",loadChildren:function(){return n.e(7398).then(n.bind(n,87398)).then(function(L){return L.SubstanceSubunitsModule})}},{componentId:"substance-moieties",path:"substance-moieties",loadChildren:function(){return n.e(1282).then(n.bind(n,61282)).then(function(L){return L.SubstanceMoietiesModule})}},{componentId:"substance-names",path:"substance-names",loadChildren:function(){return Promise.all([n.e(8592),n.e(834)]).then(n.bind(n,90834)).then(function(L){return L.SubstanceNamesModule})}},{componentId:"substance-notes",path:"substance-notes",loadChildren:function(){return Promise.all([n.e(8592),n.e(4869)]).then(n.bind(n,84869)).then(function(L){return L.SubstanceNotesModule})}},{componentId:"substance-overview",path:"substance-overview",loadChildren:function(){return Promise.all([n.e(8592),n.e(4028)]).then(n.bind(n,94028)).then(function(L){return L.SubstanceOverviewModule})}},{componentId:"substance-references",path:"substance-references",loadChildren:function(){return n.e(1899).then(n.bind(n,11899)).then(function(L){return L.SubstanceReferencesModule})}},{componentId:"substance-relationships-visualization",path:"substance-relationships-visualization",loadChildren:function(){return n.e(7081).then(n.bind(n,57081)).then(function(L){return L.SubstanceRelationshipsVisualizationModule})}},{componentId:"substance-relationships",path:"substance-relationships",loadChildren:function(){return Promise.all([n.e(8592),n.e(2686)]).then(n.bind(n,12686)).then(function(L){return L.SubstanceRelationshipsModule})}},{componentId:"substance-concept-definition",path:"substance-concept-definition",loadChildren:function(){return n.e(6597).then(n.bind(n,66597)).then(function(L){return L.SubstanceConceptDefinitionModule})}},{componentId:"substance-polymer-structure",path:"substance-polymer-structure",loadChildren:function(){return n.e(7440).then(n.bind(n,27440)).then(function(L){return L.SubstancePolymerStructureModule})}},{componentId:"substance-monomers",path:"substance-monomers",loadChildren:function(){return n.e(941).then(n.bind(n,40941)).then(function(L){return L.SubstanceMonomersModule})}},{componentId:"substance-structural-units",path:"substance-structural-units",loadChildren:function(){return n.e(5913).then(n.bind(n,45913)).then(function(L){return L.SubstanceStructuralUnitsModule})}},{componentId:"substance-mixture-components",path:"substance-mixture-components",loadChildren:function(){return n.e(5965).then(n.bind(n,65965)).then(function(L){return L.SubstanceMixtureComponentsModule})}},{componentId:"substance-modifications",path:"substance-modifications",loadChildren:function(){return n.e(2505).then(n.bind(n,92505)).then(function(L){return L.SubstanceModificationsModule})}},{componentId:"substance-disulfide-links",path:"substance-disulfide-links",loadChildren:function(){return n.e(5223).then(n.bind(n,75223)).then(function(L){return L.SubstanceDisulfideLinksModule})}},{componentId:"substance-other-links",path:"substance-other-links",loadChildren:function(){return n.e(1555).then(n.bind(n,41555)).then(function(L){return L.SubstanceOtherLinksModule})}},{componentId:"substance-glycosylation",path:"substance-glycosylation",loadChildren:function(){return n.e(4123).then(n.bind(n,44123)).then(function(L){return L.SubstanceGlycosylationModule})}},{componentId:"substance-na-sugars",path:"substance-na-sugars",loadChildren:function(){return n.e(6710).then(n.bind(n,36710)).then(function(L){return L.SubstanceNaSugarsModule})}},{componentId:"substance-na-linkages",path:"substance-na-linkages",loadChildren:function(){return n.e(5718).then(n.bind(n,95718)).then(function(L){return L.SubstanceNaLinkagesModule})}},{componentId:"substance-properties",path:"substance-properties",loadChildren:function(){return Promise.all([n.e(8592),n.e(1105)]).then(n.bind(n,51105)).then(function(L){return L.SubstancePropertiesModule})}},{componentId:"substance-constituents",path:"substance-constituents",loadChildren:function(){return Promise.all([n.e(8592),n.e(7022)]).then(n.bind(n,87022)).then(function(L){return L.SubstanceConstituentsModule})}},{componentId:"substance-primary-definition",path:"substance-primary-definition",loadChildren:function(){return n.e(9810).then(n.bind(n,29810)).then(function(L){return L.SubstancePrimaryDefinitionModule})}},{componentId:"substance-alternative-definition",path:"substance-alternative-definition",loadChildren:function(){return n.e(4662).then(n.bind(n,24662)).then(function(L){return L.SubstanceAlternativeDefinitionModule})}},{componentId:"substance-variant-concepts",path:"substance-variant-concepts",loadChildren:function(){return n.e(5331).then(n.bind(n,35331)).then(function(L){return L.SubstanceVariantConceptsModule})}},{componentId:"substance-mixture-source",path:"substance-mixture-source",loadChildren:function(){return n.e(2212).then(n.bind(n,42212)).then(function(L){return L.SubstanceMixtureSourceModule})}},{componentId:"substance-mixture-parent",path:"substance-mixture-parent",loadChildren:function(){return n.e(4690).then(n.bind(n,14690)).then(function(L){return L.SubstanceMixtureParentModule})}},{componentId:"substance-hierarchy",path:"substance-hierarchy",loadChildren:function(){return n.e(8352).then(n.bind(n,48352)).then(function(L){return L.SubstanceHierarchyModule})}},{componentId:"substance-history",path:"substance-history",loadChildren:function(){return Promise.all([n.e(8592),n.e(7010)]).then(n.bind(n,87010)).then(function(L){return L.SubstanceHistoryModule})}},{componentId:"substance-ssg-parent-substance",path:"substance-ssg-parent-substance",loadChildren:function(){return Promise.all([n.e(8592),n.e(9326)]).then(n.bind(n,9326)).then(function(L){return L.SubstanceSsgParentSubstanceModule})}},{componentId:"substance-ssg1-parent",path:"substance-ssg1-parent",loadChildren:function(){return Promise.all([n.e(8592),n.e(2552)]).then(n.bind(n,42552)).then(function(L){return L.SubstanceSsg1ParentModule})}},{componentId:"substance-ssg-grade",path:"substance-ssg-grade",loadChildren:function(){return Promise.all([n.e(8592),n.e(5783)]).then(n.bind(n,55783)).then(function(L){return L.SubstanceSsgGradeModule})}},{componentId:"substance-ssg-definition",path:"substance-ssg-definition",loadChildren:function(){return Promise.all([n.e(8592),n.e(2560)]).then(n.bind(n,32560)).then(function(L){return L.SubstanceSsgDefinitionModule})}},{componentId:"substance-form-definition",path:"substance-form-definition",loadChildren:function(){return Promise.all([n.e(8302),n.e(6558)]).then(n.bind(n,16558)).then(function(L){return L.SubstanceFormDefinitionModule})}},{componentId:"substance-form-references",path:"substance-form-references",loadChildren:function(){return n.e(5353).then(n.bind(n,55353)).then(function(L){return L.SubstanceFormReferencesModule})}},{componentId:"substance-form-names",path:"substance-form-names",loadChildren:function(){return Promise.all([n.e(8302),n.e(8592),n.e(8635)]).then(n.bind(n,88635)).then(function(L){return L.SubstanceFormNamesModule})}},{componentId:"substance-form-structure",path:"substance-form-structure",loadChildren:function(){return Promise.all([n.e(8592),n.e(7333)]).then(n.bind(n,27333)).then(function(L){return L.SubstanceFormStructureModule})}},{componentId:"substance-form-moieties",path:"substance-form-moieties",loadChildren:function(){return Promise.all([n.e(8592),n.e(3155)]).then(n.bind(n,53155)).then(function(L){return L.SubstanceFormMoietiesModule})}},{componentId:"substance-form-codes-card",path:"substance-form-codes-card",loadChildren:function(){return Promise.all([n.e(8302),n.e(328)]).then(n.bind(n,70328)).then(function(L){return L.SubstanceFormCodesModule})}},{componentId:"substance-form-relationships",path:"substance-form-relationships",loadChildren:function(){return Promise.all([n.e(8302),n.e(1704)]).then(n.bind(n,51704)).then(function(L){return L.SubstanceFormRelationshipsModule})}},{componentId:"substance-form-notes",path:"substance-form-notes",loadChildren:function(){return Promise.all([n.e(8302),n.e(6131)]).then(n.bind(n,65992)).then(function(L){return L.SubstanceFormNotesModule})}},{componentId:"substance-form-properties",path:"substance-form-properties",loadChildren:function(){return Promise.all([n.e(8302),n.e(6102)]).then(n.bind(n,36102)).then(function(L){return L.SubstanceFormPropertiesModule})}},{componentId:"substance-form-subunits",path:"substance-form-subunits",loadChildren:function(){return n.e(4874).then(n.bind(n,54874)).then(function(L){return L.SubstanceFormSubunitsModule})}},{componentId:"substance-form-other-links",path:"substance-form-other-links",loadChildren:function(){return n.e(5846).then(n.bind(n,65846)).then(function(L){return L.SubstanceFormOtherLinksModule})}},{componentId:"substance-form-disulfide-links",path:"substance-form-disulfide-links",loadChildren:function(){return n.e(5171).then(n.bind(n,35171)).then(function(L){return L.SubstanceFormDisulfideLinksModule})}},{componentId:"substance-form-glycosylation",path:"substance-form-glycosylation",loadChildren:function(){return n.e(7405).then(n.bind(n,77405)).then(function(L){return L.SubstanceFormGlycosylationModule})}},{componentId:"substance-form-structural-modifications",path:"substance-form-structural-modifications",loadChildren:function(){return Promise.all([n.e(8592),n.e(4243)]).then(n.bind(n,14243)).then(function(L){return L.SubstanceFormStructuralModificationsModule})}},{componentId:"substance-form-agent-modifications-card",path:"substance-form-agent-modifications-card",loadChildren:function(){return Promise.all([n.e(8592),n.e(6684)]).then(n.bind(n,66684)).then(function(L){return L.SubstanceFormAgentModificationsModule})}},{componentId:"substance-form-physical-modifications",path:"substance-form-physical-modifications",loadChildren:function(){return n.e(221).then(n.bind(n,20221)).then(function(L){return L.SubstanceFormPhysicalModificationsModule})}},{componentId:"substance-form-protein-details",path:"substance-form-protein-details",loadChildren:function(){return Promise.all([n.e(3311),n.e(1935)]).then(n.bind(n,51935)).then(function(L){return L.SubstanceFormProteinDetailsModule})}},{componentId:"nucleic-acid-details-form",path:"nucleic-acid-details-form",loadChildren:function(){return Promise.all([n.e(3311),n.e(6599)]).then(n.bind(n,86599)).then(function(L){return L.NucleicAcidDetailsFormModule})}},{componentId:"substance-form-links",path:"substance-form-links",loadChildren:function(){return n.e(3127).then(n.bind(n,93127)).then(function(L){return L.SubstanceFormLinksModule})}},{componentId:"substance-form-sugars",path:"substance-form-sugars",loadChildren:function(){return n.e(7441).then(n.bind(n,57441)).then(function(L){return L.SubstanceFormSugarsModule})}},{componentId:"substance-form-mixture-details",path:"substance-form-mixture-details",loadChildren:function(){return Promise.all([n.e(3311),n.e(1605)]).then(n.bind(n,91605)).then(function(L){return L.SubstanceFormMixtureDetailsModule})}},{componentId:"substance-form-mixture-components",path:"substance-form-mixture-components",loadChildren:function(){return n.e(4394).then(n.bind(n,64394)).then(function(L){return L.SubstanceFormMixtureComponentsModule})}},{componentId:"substance-form-structurally-diverse-source",path:"substance-form-structurally-diverse-source",loadChildren:function(){return Promise.all([n.e(3311),n.e(4952)]).then(n.bind(n,14952)).then(function(L){return L.SubstanceFormStructurallyDiverseSourceModule})}},{componentId:"substance-form-structurally-diverse-organism",path:"substance-form-structurally-diverse-organism",loadChildren:function(){return Promise.all([n.e(3311),n.e(2809)]).then(n.bind(n,22809)).then(function(L){return L.SubstanceFormStructurallyDiverseOrganismModule})}},{componentId:"substance-form-constituents",path:"substance-form-constituents",loadChildren:function(){return Promise.all([n.e(8302),n.e(8592),n.e(2817)]).then(n.bind(n,32817)).then(function(L){return L.SubstanceFormConstituentsModule})}},{componentId:"substance-form-polymer-classification",path:"substance-form-polymer-classification",loadChildren:function(){return n.e(5850).then(n.bind(n,45850)).then(function(L){return L.SubstanceFormPolymerClassificationModule})}},{componentId:"substance-form-monomers",path:"substance-form-monomers",loadChildren:function(){return Promise.all([n.e(8592),n.e(4501)]).then(n.bind(n,24501)).then(function(L){return L.SubstanceFormMonomersModule})}},{componentId:"substance-form-structural-units",path:"substance-form-structural-units",loadChildren:function(){return Promise.all([n.e(8592),n.e(1089)]).then(n.bind(n,31089)).then(function(L){return L.SubstanceFormStructuralUnitsModule})}},{componentId:"substance-form-change-reason",path:"substance-form-change-reason",loadChildren:function(){return n.e(8603).then(n.bind(n,58603)).then(function(L){return L.SubstanceFormChangeReasonModule})}},{componentId:"substance-form-ssg-parent-substance",path:"ssg-parent-substance-form",loadChildren:function(){return n.e(6620).then(n.bind(n,46620)).then(function(L){return L.SsgParentSubstanceFormModule})}},{componentId:"substance-form-ssg-grade",path:"ssg-grade-form",loadChildren:function(){return Promise.all([n.e(8302),n.e(1368)]).then(n.bind(n,81368)).then(function(L){return L.SsgGradeFormModule})}},{componentId:"substance-form-ssg-definition",path:"ssg-definition-form",loadChildren:function(){return Promise.all([n.e(8302),n.e(4300)]).then(n.bind(n,24300)).then(function(L){return L.SsgDefinitionFormModule})}},{componentId:"substance-form-ssg4m-process",path:"ssg4m-process-form",loadChildren:function(){return Promise.resolve().then(n.bind(n,89965)).then(function(L){return L.SubstanceSsg4mProcessModule})}}],Kf=n(94673),yh=n(72869),$f=n(26120),Vo=function(){var b=(0,e.Z)(function L(){(0,p.Z)(this,L)});return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({imports:[[Ee.ez,s.UX,s.u5,Qt.QW,Pt.lN,ut.c,v.ot,Ie.AV,Hc.PW,j.Ps,ne.Is,h.Bz,St.Cq]]}),b}(),rc=function(){var b=function(){function L(g){(0,p.Z)(this,L),this.platformId=g}return(0,e.Z)(L,[{key:"intercept",value:function(u,M){if((0,Ee.NF)(this.platformId)){var U=sessionStorage.getItem("authToken");U&&(u=u.clone({headers:u.headers.set("auth-token",U)}))}return M.handle(u)}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.LFG(t.Lbi))},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac}),b}(),ed=n(7168),yu=n(96769),jc=n(24054),Xf=n(60756),bh=n(82835),em=function(){var b=(0,e.Z)(function L(){(0,p.Z)(this,L)});return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({providers:[Kr],imports:[[Ee.ez,s.UX,s.u5,Qt.QW,ge.p0,Pt.lN,ut.c,ur.Nh,Ie.AV,Hc.PW,Qa.dp,St.Cq,Ve.Cv,v.ot,wt.p9,de.LD,_t.JX,Ie.AV,St.Cq,ne.Is,$d,Dt.TU,j.Ps,Wf.h]]}),b}();t.B6R(eu._,[Ee.O5,ne.uh,Pt.KE,ut.Nt,s.Fj,s.Q7,s.JJ,s.On,bh.K,v.lW,Ee.sg,Ee.PC,ne.H8],[]);var bu=n(35756),tm=function(){var b=(0,e.Z)(function L(){(0,p.Z)(this,L)});return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({imports:[[Ee.ez,Qt.QW,ou.Bb,ut.c,s.u5,s.UX,de.LD,Ie.AV,v.ot,j.Ps,su.FA,h.Bz]]}),b}(),nm=function(){var b=function(){function L(g,u){(0,p.Z)(this,L),this.router=g,this.authService=u}return(0,e.Z)(L,[{key:"canActivate",value:function(u,M){var U=this;return new A.y(function(re){U.authService.getAuth().subscribe(function(lt){lt?U.authService.hasAnyRolesAsync("Admin").subscribe(function(nn){nn?(re.next(!0),re.complete()):(re.next(U.router.parseUrl("/admin")),re.complete())}):(re.next(U.router.createUrlTree(["/login"],{queryParams:{path:M.url}})),re.complete())})})}}]),L}();return b.\u0275fac=function(g){return new(g||b)(t.LFG(h.F0),t.LFG(T.e))},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac}),b}(),Jh=n(2711),Ch=function(){var b=function(){function L(){(0,p.Z)(this,L)}return(0,e.Z)(L,[{key:"handleError",value:function(u){/Loading chunk/.test(u.message)||console.error(u)}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275prov=t.Yz7({token:b,factory:b.\u0275fac}),b}(),gc=n(68390),Mh=n(45723),Qh=n(63200),Wh=n(9597),mp=function(){var b=(0,e.Z)(function L(){(0,p.Z)(this,L)});return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({imports:[[Ee.ez,v.ot,j.Ps,Wh.L]]}),b}(),xh=function(){var b=function(){function L(){(0,p.Z)(this,L)}return(0,e.Z)(L,null,[{key:"forRoot",value:function(){return{ngModule:L,providers:[]}}}]),L}();return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b}),b.\u0275inj=t.cJS({imports:[[Ee.ez,s.UX,s.u5,Pt.lN,sn.Tx,wt.p9,v.ot,j.Ps,Ie.AV,ur.Nh,jt.t,de.LD,ut.c,Pa.Hi,ou.Bb,Kf.w,ne.Is,ge.p0,Ot.To,Hf.g,gc.Fk,Mh.F,Qh.U,Xt.ie,zf.x,nt.vV,io.s,h.Bz,jc.f,Ve.Cv,St.Cq,mp]]}),b}(),im=n(89965),am=n(36730),zh=n(95089),Qs=n(80346),Gh=(n(76078),n(10837)),rm=function(){var b=(0,e.Z)(function L(){(0,p.Z)(this,L)});return b.\u0275fac=function(g){return new(g||b)},b.\u0275mod=t.oAB({type:b,bootstrap:[vh]}),b.\u0275inj=t.cJS({providers:[{provide:t.qLn,useClass:Ch},nm,B.E,{provide:t.ip1,useFactory:Jf,deps:[B.E],multi:!0},{provide:d.TP,useClass:rc,multi:!0}],imports:[[P.b2.withServerTransition({appId:"gsrs"}),Vf,Hc.PW,rn.g0,Za.SJ,Qt.QW,d.JF,ou.Bb,s.UX,s.u5,Pt.lN,ut.c,v.ot,j.Ps,d.JF,d.Ed,Pa.Hi,Hf.g,Ot.To,wt.p9,ic.I,Qf,ge.p0,Dt.TU,de.LD,jf.KP,ne.Is,Wf.h,zf.x,Xt.ie,ac.o.forRoot(Gf),Kf.w,on.X.forRoot(),sn.Tx,nt.vV,Ie.AV,ur.Nh,Jn.d,yh.S.forRoot($f.MB),Vo,ed.O.forRoot(),Tn.U8,yu.O,I._r,Ve.Cv,jc.f,Xf.J,Qa.dp,bu.O,tm,ye.XK,em,bu.O,Jh.v,xh,im.SubstanceSsg4mProcessModule,am.B,St.Cq,zh.O,Qs._]]}),b}();t.B6R(Gi,[Qt.a8,bh.K,Pt.KE,de.gD,s.JJ,s.oH,ye.ey,Ee.O5,v.lW,jf.pH,Gh.W],[]),n(15977),on.N.production&&(0,t.G48)(),P.q6().bootstrapModule(rm).catch(function(b){return console.log(b)})},4263:function(dt,K,n){"use strict";var P=n(79903),t=n(3855),e=t(P("String.prototype.indexOf"));dt.exports=function(d,s){var h=P(d,!!s);return"function"==typeof h&&e(d,".prototype.")>-1?t(h):h}},3855:function(dt,K,n){"use strict";var P=n(20224),t=n(79903),e=t("%Function.prototype.apply%"),p=t("%Function.prototype.call%"),d=t("%Reflect.apply%",!0)||P.call(p,e),s=t("%Object.getOwnPropertyDescriptor%",!0),h=t("%Object.defineProperty%",!0),f=t("%Math.max%");if(h)try{h({},"a",{value:1})}catch(B){h=null}dt.exports=function(I){var v=d(P,p,arguments);if(s&&h){var j=s(v,"length");j.configurable&&h(v,"length",{value:1+f(0,I.length-(arguments.length-1))})}return v};var T=function(){return d(P,e,arguments)};h?h(dt.exports,"apply",{value:T}):dt.exports.apply=T},49382:function(dt){"undefined"!=typeof self&&self,dt.exports=function(K){var n={};function P(t){if(n[t])return n[t].exports;var e=n[t]={i:t,l:!1,exports:{}};return K[t].call(e.exports,e,e.exports,P),e.l=!0,e.exports}return P.m=K,P.c=n,P.d=function(t,e,p){P.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:p})},P.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},P.t=function(t,e){if(1&e&&(t=P(t)),8&e||4&e&&"object"==typeof t&&t&&t.__esModule)return t;var p=Object.create(null);if(P.r(p),Object.defineProperty(p,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var d in t)P.d(p,d,function(s){return t[s]}.bind(null,d));return p},P.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return P.d(e,"a",e),e},P.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},P.p="",P(P.s=4)}([function(K,n,P){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=P(1),e=P(2),p=function(){function d(s,h){this.expression=s,this.options=h,this.expressionParts=new Array(5),d.locales[h.locale]?this.i18n=d.locales[h.locale]:(console.warn("Locale '"+h.locale+"' could not be found; falling back to 'en'."),this.i18n=d.locales.en),void 0===h.use24HourTimeFormat&&(h.use24HourTimeFormat=this.i18n.use24HourTimeFormatByDefault())}return d.toString=function(s,h){var f=void 0===h?{}:h,T=f.throwExceptionOnParseError,I=f.verbose,j=f.dayOfWeekStartIndexZero,Z=f.locale;return new d(s,{throwExceptionOnParseError:void 0===T||T,verbose:void 0!==I&&I,dayOfWeekStartIndexZero:void 0===j||j,use24HourTimeFormat:f.use24HourTimeFormat,locale:void 0===Z?"en":Z}).getFullDescription()},d.initialize=function(s){d.specialCharacters=["/","-",",","*"],s.load(d.locales)},d.prototype.getFullDescription=function(){var s="";try{var h=new e.CronParser(this.expression,this.options.dayOfWeekStartIndexZero);this.expressionParts=h.parse();var f=this.getTimeOfDayDescription(),T=this.getDayOfMonthDescription(),B=this.getMonthDescription(),I=this.getDayOfWeekDescription(),v=this.getYearDescription();s=(s=this.transformVerbosity(s+=f+T+I+B+v,this.options.verbose)).charAt(0).toLocaleUpperCase()+s.substr(1)}catch(j){if(this.options.throwExceptionOnParseError)throw""+j;s=this.i18n.anErrorOccuredWhenGeneratingTheExpressionD()}return s},d.prototype.getTimeOfDayDescription=function(){var s=this.expressionParts[0],h=this.expressionParts[1],f=this.expressionParts[2],T="";if(t.StringUtilities.containsAny(h,d.specialCharacters)||t.StringUtilities.containsAny(f,d.specialCharacters)||t.StringUtilities.containsAny(s,d.specialCharacters))if(s||!(h.indexOf("-")>-1)||h.indexOf(",")>-1||h.indexOf("/")>-1||t.StringUtilities.containsAny(f,d.specialCharacters))if(!s&&f.indexOf(",")>-1&&-1==f.indexOf("-")&&-1==f.indexOf("/")&&!t.StringUtilities.containsAny(h,d.specialCharacters)){var I=f.split(",");T+=this.i18n.at();for(var v=0;v0&&Q.length>0&&(T+=", "),(T+=Q).length>0&&J.length>0&&(T+=", "),T+=J}else{var B=h.split("-");T+=t.StringUtilities.format(this.i18n.everyMinuteBetweenX0AndX1(),this.formatTime(f,B[0],""),this.formatTime(f,B[1],""))}else T+=this.i18n.atSpace()+this.formatTime(f,h,s);return T},d.prototype.getSecondsDescription=function(){var s=this;return this.getSegmentDescription(this.expressionParts[0],this.i18n.everySecond(),function(f){return f},function(f){return t.StringUtilities.format(s.i18n.everyX0Seconds(),f)},function(f){return s.i18n.secondsX0ThroughX1PastTheMinute()},function(f){return"0"==f?"":parseInt(f)<20?s.i18n.atX0SecondsPastTheMinute():s.i18n.atX0SecondsPastTheMinuteGt20()||s.i18n.atX0SecondsPastTheMinute()})},d.prototype.getMinutesDescription=function(){var s=this,h=this.expressionParts[0],f=this.expressionParts[2];return this.getSegmentDescription(this.expressionParts[1],this.i18n.everyMinute(),function(B){return B},function(B){return t.StringUtilities.format(s.i18n.everyX0Minutes(),B)},function(B){return s.i18n.minutesX0ThroughX1PastTheHour()},function(B){try{return"0"==B&&-1==f.indexOf("/")&&""==h?s.i18n.everyHour():parseInt(B)<20?s.i18n.atX0MinutesPastTheHour():s.i18n.atX0MinutesPastTheHourGt20()||s.i18n.atX0MinutesPastTheHour()}catch(I){return s.i18n.atX0MinutesPastTheHour()}})},d.prototype.getHoursDescription=function(){var s=this;return this.getSegmentDescription(this.expressionParts[2],this.i18n.everyHour(),function(T){return s.formatTime(T,"0","")},function(T){return t.StringUtilities.format(s.i18n.everyX0Hours(),T)},function(T){return s.i18n.betweenX0AndX1()},function(T){return s.i18n.atX0()})},d.prototype.getDayOfWeekDescription=function(){var s=this,h=this.i18n.daysOfTheWeek();return"*"==this.expressionParts[5]?"":this.getSegmentDescription(this.expressionParts[5],this.i18n.commaEveryDay(),function(T){var B=T;return T.indexOf("#")>-1?B=T.substr(0,T.indexOf("#")):T.indexOf("L")>-1&&(B=B.replace("L","")),h[parseInt(B)]},function(T){return 1==parseInt(T)?"":t.StringUtilities.format(s.i18n.commaEveryX0DaysOfTheWeek(),T)},function(T){return s.i18n.commaX0ThroughX1()},function(T){var B=null;if(T.indexOf("#")>-1){var v=null;switch(T.substring(T.indexOf("#")+1)){case"1":v=s.i18n.first();break;case"2":v=s.i18n.second();break;case"3":v=s.i18n.third();break;case"4":v=s.i18n.fourth();break;case"5":v=s.i18n.fifth()}B=s.i18n.commaOnThe()+v+s.i18n.spaceX0OfTheMonth()}else B=T.indexOf("L")>-1?s.i18n.commaOnTheLastX0OfTheMonth():"*"!=s.expressionParts[3]?s.i18n.commaAndOnX0():s.i18n.commaOnlyOnX0();return B})},d.prototype.getMonthDescription=function(){var s=this,h=this.i18n.monthsOfTheYear();return this.getSegmentDescription(this.expressionParts[4],"",function(T){return h[parseInt(T)-1]},function(T){return 1==parseInt(T)?"":t.StringUtilities.format(s.i18n.commaEveryX0Months(),T)},function(T){return s.i18n.commaMonthX0ThroughMonthX1()||s.i18n.commaX0ThroughX1()},function(T){return s.i18n.commaOnlyInMonthX0?s.i18n.commaOnlyInMonthX0():s.i18n.commaOnlyInX0()})},d.prototype.getDayOfMonthDescription=function(){var s=this,h=null,f=this.expressionParts[3];switch(f){case"L":h=this.i18n.commaOnTheLastDayOfTheMonth();break;case"WL":case"LW":h=this.i18n.commaOnTheLastWeekdayOfTheMonth();break;default:var T=f.match(/(\d{1,2}W)|(W\d{1,2})/);if(T){var B=parseInt(T[0].replace("W","")),I=1==B?this.i18n.firstWeekday():t.StringUtilities.format(this.i18n.weekdayNearestDayX0(),B.toString());h=t.StringUtilities.format(this.i18n.commaOnTheX0OfTheMonth(),I);break}var v=f.match(/L-(\d{1,2})/);if(v){var j=v[1];h=t.StringUtilities.format(this.i18n.commaDaysBeforeTheLastDayOfTheMonth(),j);break}if("*"==f&&"*"!=this.expressionParts[5])return"";h=this.getSegmentDescription(f,this.i18n.commaEveryDay(),function(Q){return"L"==Q?s.i18n.lastDay():s.i18n.dayX0?t.StringUtilities.format(s.i18n.dayX0(),Q):Q},function(Q){return"1"==Q?s.i18n.commaEveryDay():s.i18n.commaEveryX0Days()},function(Q){return s.i18n.commaBetweenDayX0AndX1OfTheMonth()},function(Q){return s.i18n.commaOnDayX0OfTheMonth()})}return h},d.prototype.getYearDescription=function(){var s=this;return this.getSegmentDescription(this.expressionParts[6],"",function(f){return/^\d+$/.test(f)?new Date(parseInt(f),1).getFullYear().toString():f},function(f){return t.StringUtilities.format(s.i18n.commaEveryX0Years(),f)},function(f){return s.i18n.commaYearX0ThroughYearX1()||s.i18n.commaX0ThroughX1()},function(f){return s.i18n.commaOnlyInYearX0?s.i18n.commaOnlyInYearX0():s.i18n.commaOnlyInX0()})},d.prototype.getSegmentDescription=function(s,h,f,T,B,I){var v=this,j=null;if(s)if("*"===s)j=h;else if(t.StringUtilities.containsAny(s,["/","-",","]))if(s.indexOf("/")>-1){var Q=s.split("/");if(j=t.StringUtilities.format(T(Q[1]),Q[1]),Q[0].indexOf("-")>-1)0!=(J=this.generateBetweenSegmentDescription(Q[0],B,f)).indexOf(", ")&&(j+=", "),j+=J;else if(!t.StringUtilities.containsAny(Q[0],["*",","])){var Z=t.StringUtilities.format(I(Q[0]),f(Q[0]));Z=Z.replace(", ",""),j+=t.StringUtilities.format(this.i18n.commaStartingX0(),Z)}}else if(s.indexOf(",")>-1){Q=s.split(",");for(var A="",N=0;N0&&Q.length>2&&(A+=",",N0&&Q.length>1&&(N==Q.length-1||2==Q.length)&&(A+=this.i18n.spaceAnd()+" "),Q[N].indexOf("-")>-1){var J;A+=J=(J=this.generateBetweenSegmentDescription(Q[N],function(q){return v.i18n.commaX0ThroughX1()},f)).replace(", ","")}else A+=f(Q[N]);j=t.StringUtilities.format(I(s),A)}else s.indexOf("-")>-1&&(j=this.generateBetweenSegmentDescription(s,B,f));else j=t.StringUtilities.format(I(s),f(s));else j="";return j},d.prototype.generateBetweenSegmentDescription=function(s,h,f){var T="",B=s.split("-"),I=f(B[0]),v=f(B[1]);v=v.replace(":00",":59");var j=h(s);return T+t.StringUtilities.format(j,I,v)},d.prototype.formatTime=function(s,h,f){var T=parseInt(s),B="",I=!1;this.options.use24HourTimeFormat||(B=(I=this.i18n.setPeriodBeforeTime&&this.i18n.setPeriodBeforeTime())?this.getPeriod(T)+" ":" "+this.getPeriod(T),T>12&&(T-=12),0===T&&(T=12));var v=h,j="";return f&&(j=":"+("00"+f).substring(f.length)),""+(I?B:"")+("00"+T.toString()).substring(T.toString().length)+":"+("00"+v.toString()).substring(v.toString().length)+j+(I?"":B)},d.prototype.transformVerbosity=function(s,h){return h||(s=(s=(s=(s=s.replace(new RegExp(", "+this.i18n.everyMinute(),"g"),"")).replace(new RegExp(", "+this.i18n.everyHour(),"g"),"")).replace(new RegExp(this.i18n.commaEveryDay(),"g"),"")).replace(/\, ?$/,"")),s},d.prototype.getPeriod=function(s){return s>=12?this.i18n.pm&&this.i18n.pm()||"PM":this.i18n.am&&this.i18n.am()||"AM"},d.locales={},d}();n.ExpressionDescriptor=p},function(K,n,P){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=function(){function e(){}return e.format=function(p){for(var d=[],s=1;s-1})},e}();n.StringUtilities=t},function(K,n,P){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=function(){function e(p,d){void 0===d&&(d=!0),this.expression=p,this.dayOfWeekStartIndexZero=d}return e.prototype.parse=function(){var p=this.extractParts(this.expression);return this.normalize(p),this.validate(p),p},e.prototype.extractParts=function(p){if(!this.expression)throw new Error("Expression is empty");var d=p.trim().split(/[ ]+/);if(d.length<5)throw new Error("Expression has only "+d.length+" part"+(1==d.length?"":"s")+". At least 5 parts are required.");if(5==d.length)d.unshift(""),d.push("");else if(6==d.length)/\d{4}$/.test(d[5])?d.unshift(""):d.push("");else if(d.length>7)throw new Error("Expression has "+d.length+" parts; too many!");return d},e.prototype.normalize=function(p){var d=this;if(p[3]=p[3].replace("?","*"),p[5]=p[5].replace("?","*"),p[2]=p[2].replace("?","*"),0==p[0].indexOf("0/")&&(p[0]=p[0].replace("0/","*/")),0==p[1].indexOf("0/")&&(p[1]=p[1].replace("0/","*/")),0==p[2].indexOf("0/")&&(p[2]=p[2].replace("0/","*/")),0==p[3].indexOf("1/")&&(p[3]=p[3].replace("1/","*/")),0==p[4].indexOf("1/")&&(p[4]=p[4].replace("1/","*/")),0==p[5].indexOf("1/")&&(p[5]=p[5].replace("1/","*/")),0==p[6].indexOf("1/")&&(p[6]=p[6].replace("1/","*/")),p[5]=p[5].replace(/(^\d)|([^#/\s]\d)/g,function(j){var Q=j.replace(/\D/,""),J=Q;return d.dayOfWeekStartIndexZero?"7"==Q&&(J="0"):J=(parseInt(Q)-1).toString(),j.replace(Q,J)}),"L"==p[5]&&(p[5]="6"),"?"==p[3]&&(p[3]="*"),p[3].indexOf("W")>-1&&(p[3].indexOf(",")>-1||p[3].indexOf("-")>-1))throw new Error("The 'W' character can be specified only when the day-of-month is a single day, not a range or list of days.");var s={SUN:0,MON:1,TUE:2,WED:3,THU:4,FRI:5,SAT:6};for(var h in s)p[5]=p[5].replace(new RegExp(h,"gi"),s[h].toString());var f={JAN:1,FEB:2,MAR:3,APR:4,MAY:5,JUN:6,JUL:7,AUG:8,SEP:9,OCT:10,NOV:11,DEC:12};for(var T in f)p[4]=p[4].replace(new RegExp(T,"gi"),f[T].toString());"0"==p[0]&&(p[0]=""),!/\*|\-|\,|\//.test(p[2])&&(/\*|\//.test(p[1])||/\*|\//.test(p[0]))&&(p[2]+="-"+p[2]);for(var B=0;B-1&&!/^\*|\-|\,/.test(p[B])){var I=null;switch(B){case 4:I="12";break;case 5:I="6";break;case 6:I="9999";break;default:I=null}if(null!=I){var v=p[B].split("/");p[B]=v[0]+"-"+I+"/"+v[1]}}},e.prototype.validate=function(p){this.assertNoInvalidCharacters("DOW",p[5]),this.assertNoInvalidCharacters("DOM",p[3])},e.prototype.assertNoInvalidCharacters=function(p,d){var s=d.match(/[A-KM-VX-Z]+/gi);if(s&&s.length)throw new Error(p+" part contains invalid values: '"+s.toString()+"'")},e}();n.CronParser=t},function(K,n,P){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=function(){function e(){}return e.prototype.atX0SecondsPastTheMinuteGt20=function(){return null},e.prototype.atX0MinutesPastTheHourGt20=function(){return null},e.prototype.commaMonthX0ThroughMonthX1=function(){return null},e.prototype.commaYearX0ThroughYearX1=function(){return null},e.prototype.use24HourTimeFormatByDefault=function(){return!1},e.prototype.anErrorOccuredWhenGeneratingTheExpressionD=function(){return"An error occured when generating the expression description. Check the cron expression syntax."},e.prototype.everyMinute=function(){return"every minute"},e.prototype.everyHour=function(){return"every hour"},e.prototype.atSpace=function(){return"At "},e.prototype.everyMinuteBetweenX0AndX1=function(){return"Every minute between %s and %s"},e.prototype.at=function(){return"At"},e.prototype.spaceAnd=function(){return" and"},e.prototype.everySecond=function(){return"every second"},e.prototype.everyX0Seconds=function(){return"every %s seconds"},e.prototype.secondsX0ThroughX1PastTheMinute=function(){return"seconds %s through %s past the minute"},e.prototype.atX0SecondsPastTheMinute=function(){return"at %s seconds past the minute"},e.prototype.everyX0Minutes=function(){return"every %s minutes"},e.prototype.minutesX0ThroughX1PastTheHour=function(){return"minutes %s through %s past the hour"},e.prototype.atX0MinutesPastTheHour=function(){return"at %s minutes past the hour"},e.prototype.everyX0Hours=function(){return"every %s hours"},e.prototype.betweenX0AndX1=function(){return"between %s and %s"},e.prototype.atX0=function(){return"at %s"},e.prototype.commaEveryDay=function(){return", every day"},e.prototype.commaEveryX0DaysOfTheWeek=function(){return", every %s days of the week"},e.prototype.commaX0ThroughX1=function(){return", %s through %s"},e.prototype.first=function(){return"first"},e.prototype.second=function(){return"second"},e.prototype.third=function(){return"third"},e.prototype.fourth=function(){return"fourth"},e.prototype.fifth=function(){return"fifth"},e.prototype.commaOnThe=function(){return", on the "},e.prototype.spaceX0OfTheMonth=function(){return" %s of the month"},e.prototype.lastDay=function(){return"the last day"},e.prototype.commaOnTheLastX0OfTheMonth=function(){return", on the last %s of the month"},e.prototype.commaOnlyOnX0=function(){return", only on %s"},e.prototype.commaAndOnX0=function(){return", and on %s"},e.prototype.commaEveryX0Months=function(){return", every %s months"},e.prototype.commaOnlyInX0=function(){return", only in %s"},e.prototype.commaOnTheLastDayOfTheMonth=function(){return", on the last day of the month"},e.prototype.commaOnTheLastWeekdayOfTheMonth=function(){return", on the last weekday of the month"},e.prototype.commaDaysBeforeTheLastDayOfTheMonth=function(){return", %s days before the last day of the month"},e.prototype.firstWeekday=function(){return"first weekday"},e.prototype.weekdayNearestDayX0=function(){return"weekday nearest day %s"},e.prototype.commaOnTheX0OfTheMonth=function(){return", on the %s of the month"},e.prototype.commaEveryX0Days=function(){return", every %s days"},e.prototype.commaBetweenDayX0AndX1OfTheMonth=function(){return", between day %s and %s of the month"},e.prototype.commaOnDayX0OfTheMonth=function(){return", on day %s of the month"},e.prototype.commaEveryHour=function(){return", every hour"},e.prototype.commaEveryX0Years=function(){return", every %s years"},e.prototype.commaStartingX0=function(){return", starting %s"},e.prototype.daysOfTheWeek=function(){return["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},e.prototype.monthsOfTheYear=function(){return["January","February","March","April","May","June","July","August","September","October","November","December"]},e}();n.en=t},function(K,n,P){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=P(0),e=P(5);t.ExpressionDescriptor.initialize(new e.enLocaleLoader),n.default=t.ExpressionDescriptor,n.toString=t.ExpressionDescriptor.toString},function(K,n,P){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=P(3),e=function(){function p(){}return p.prototype.load=function(d){d.en=new t.en},p}();n.enLocaleLoader=e}])},16639:function(module,__unused_webpack_exports,__webpack_require__){if(module=__webpack_require__.nmd(module),function(window,module){"use strict";var defiant={is_ie:/(msie|trident)/i.test(navigator.userAgent),is_safari:/safari/i.test(navigator.userAgent),env:"production",xml_decl:'',namespace:'xmlns:d="defiant-namespace"',tabsize:4,snapshots:{},renderXml:function(K,n){var P=new window.XSLTProcessor,t=document.createElement("span"),e='//xsl:template[@name="'+K+'"]',p=this.node.selectSingleNode(this.xsl_template,e);return(p=this.node.selectSingleNode(this.xsl_template,e)).setAttribute("match","/"),P.importStylesheet(this.xsl_template),t.appendChild(P.transformToFragment(n,document)),p.removeAttribute("match"),t.innerHTML},render:function(K,n){var P,t,e,p,d=new window.XSLTProcessor,s=document.createElement("span"),h={match:"/"};switch(typeof K){case"object":this.extend(h,K),h.data||(h.data=n);break;case"string":h.template=K,h.data=n;break;default:throw"error"}if(h.data=h.data.nodeType?h.data:defiant.json.toXML(h.data),P='//xsl:template[@name="'+h.template+'"]',this.xsl_template||this.gatherTemplates(),h.sorter&&(p=this.node.selectSingleNode(this.xsl_template,P+"//xsl:for-each//xsl:sort"))&&(h.sorter.order&&p.setAttribute("order",h.sorter.order),h.sorter.select&&p.setAttribute("select",h.sorter.select),p.setAttribute("data-type",h.sorter.type||"text")),(e=this.node.selectSingleNode(this.xsl_template,P)).setAttribute("match",h.match),d.importStylesheet(this.xsl_template),s.appendChild(d.transformToFragment(h.data,document)),e.removeAttribute("match"),this.is_safari)for(var f=0,T=(t=s.getElementsByTagName("script")).length;f"+n.replace(/defiant:(\w+)/g,"$1")+"")},registerTemplate:function(K){this.xsl_template=this.xmlFromString('"+K.replace(/defiant:(\w+)/g,"$1")+"")},getSnapshot:function(K,n){return this.json.toXML(K,n||!0)},createSnapshot:function(K,n){var P=this,t="snapshot_"+Date.now();this.json.toXML(K,function(e){P.snapshots[t]=e,n(t)})},getFacets:function(K,n){var P,t,e,p,d,s,h=K.constructor===String&&"snapshot_"===K.slice(0,9)?this.snapshots[K].doc:defiant.json.toXML(K),f=h.cloneNode(!0),T={},B={},I=0;for(s in function j(Q){var J=Q.childNodes.length;switch(Q.nodeType){case 1:J>=I&&(I=J,t=Q);case 9:Q.childNodes.map(function(Z){return j(Z)})}}(h),t.childNodes.map(function(j){B[j.nodeName]||(B[j.nodeName]=1),B[j.nodeName]++}),I=0,B)I<=B[s]&&(I=B[s],d=s);return this.createFacetTemplate(n),p=defiant.node.selectSingleNode(f,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]'),defiant.node.selectNodes(f,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]/'+d).map(function(j){return j.parentNode.removeChild(j)}),e=defiant.node.selectNodes(h,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]/'+d),P=e.length-1,e.map(function(j,Q){if(p.appendChild(j.cloneNode(!0)),Q%50==49||Q===P){var J=defiant.render("facets",f).replace(/\n|\t/g,"").replace(/"": 0,?/g,"").replace(/,\}/g,"}"),Z=JSON.parse(J);T=defiant.concatFacet(Z,T),defiant.node.selectNodes(f,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]/'+d).map(function(A){return A.parentNode.removeChild(A)})}}),T},createFacetTemplate:function(K){var n,P,t=[],e=[];for(P in K)t.push(''),e.push('"'+P+'": {"": '+',}'.replace(/\n|\t/g,""));n=t.join("")+'{'+e.join(",")+"}",this.registerTemplate(n)},xmlFromString:function(K){var n;return null===(K=K.replace(/>\s{1,}<")).trim().match(/<\?xml/)&&(K=this.xml_decl+K),"ActiveXObject"in window?((n=new ActiveXObject("Msxml2.DOMDocument")).loadXML(K),n.setProperty("SelectionNamespaces",this.namespace),-1===K.indexOf("xsl:stylesheet")&&n.setProperty("SelectionLanguage","XPath")):n=(new DOMParser).parseFromString(K,"text/xml"),n},concatFacet:function(K,n){for(var P in n)K[P]&&"object"==typeof n[P]?this.concatFacet(K[P],n[P]):K[P]=(K[P]||0)+n[P];return K},extend:function(K,n){for(var P in n)K[P]&&"object"==typeof n[P]?this.extend(K[P],n[P]):K[P]=n[P];return K},node:{selectNodes:function(K,n){if(K.evaluate){for(var P=K.createNSResolver(K.documentElement),t=K.evaluate(n,K,P,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),e=[],p=0,d=t.snapshotLength;p0?P[0]:null}return K.selectSingleNode(n)},prettyPrint:function(K){var n,P=defiant,t=P.tabsize,e=P.xml_decl.toLowerCase();n=P.is_ie?K.xml:(new XMLSerializer).serializeToString(K),"development"!==P.env&&(n=n.replace(/ \w+\:d=".*?"| d\:\w+=".*?"/g,""));for(var p,d,s=n.trim().replace(/(>)\s*(<)(\/*)/g,"$1\n$2$3").split("\n"),h=-1,f=0,T=s.length;f/g),d=null!==s[f].match(/<\/[\w\:]+>/g),null!==s[f].match(/<.*?\/>/g)&&(p=d=!0),p&&h++,s[f]=String().fill(h,"\t")+s[f],p&&d&&h--,!p&&d&&h--);return s.join("\n").replace(/\t/g,String().fill(t," "))},toJSON:function(K,n){var t=9===K.nodeType?K.documentElement:K,e=function d(s){var h,f,T,B,I,v,j,Q,J,Z,A={},N=window;switch(s.nodeType){case 1:for("Array"===(I=s.getAttribute("d:constr"))?A=[]:"String"===I&&""===s.textContent&&(A=""),Q=0,J=(h=s.attributes).length;Q/,rx_constructor:/<(.+?)( d:contr=".*?")>/,rx_namespace:/ xmlns\:d="defiant\-namespace"/,rx_data:/(<.+?>)(.*?)(<\/d:data>)/i,rx_function:/function (\w+)/i,namespace:'xmlns:d="defiant-namespace"',to_xml_str:function(K){return{str:this.hash_to_xml(null,K),map:this.map}},hash_to_xml:function(K,n,P){var t,e,p,d,s,h,f,T,B,I=n.constructor===Array,v=this,j=[],Q=[],J=function(A,N){if(null!==(e=N[A])&&void 0!==e&&"NaN"!==e.toString()||(e=null),d="@"===A.slice(0,1),(s=P?K:A)==+s&&N.constructor!==Object&&(s="d:item"),null===e?(h=null,f=!1):f=(h=e.constructor).toString().match(v.rx_function)[1],d)Q.push(s.slice(1)+'="'+v.escape_xml(e)+'"'),"String"!==f&&Q.push("d:"+s.slice(1)+'="'+f+'"');else if(null===e)j.push(v.scalar_to_xml(s,e));else switch(h){case Function:throw"JSON data should not contain functions. Please check your structure.";case Object:j.push(v.hash_to_xml(s,e));break;case Array:if(A===s){if(p=e.constructor===Array)for(T=e.length;T--;)null!==e[T]&&e[T]&&e[T].constructor!==Array||(p=!0),p||e[T].constructor!==Object||(p=!0);j.push(v.scalar_to_xml(s,e,p));break}case String:if("string"==typeof e&&(e=e.toString().replace(/\&/g,"&").replace(/\r|\n/g," ")),"#text"===s){v.map.push(N),Q.push('d:mi="'+v.map.length+'"'),Q.push('d:constr="'+f+'"'),j.push(v.escape_xml(e));break}case Number:case Boolean:if("#text"===s&&"String"!==f){v.map.push(N),Q.push('d:mi="'+v.map.length+'"'),Q.push('d:constr="'+f+'"'),j.push(v.escape_xml(e));break}j.push(v.scalar_to_xml(s,e))}};if(n.constructor===Array)for(T=0,B=n.length;T"+j.join("")+"":"/>"))},scalar_to_xml:function(K,n,P){var t,e,p,d="";if(null===K.match(this.rx_validate_name)&&(d+=' d:name="'+K+'"',K="d:name",P=!1),null!==n&&"NaN"!==n.toString()||(n=null),null===n)return"<"+K+' d:constr="null"/>';if(1===n.length&&n.constructor===Array&&!n[0])return"<"+K+' d:constr="null" d:type="ArrayItem"/>';if(1===n.length&&n[0].constructor===Object){var s=(t=this.hash_to_xml(!1,n[0])).match(this.rx_node),h=t.match(this.rx_constructor);return"<"+K+(s=null!==s?s[2].replace(this.rx_namespace,"").replace(/>/,"").replace(/"\/$/,'"'):"")+" "+(h=null!==h?h[2]:"")+' d:type="ArrayItem">'+(t=null!==(t=t.match(this.rx_data))?t[2]:"")+""}return 0===n.length&&n.constructor===Array?"<"+K+' d:constr="Array"/>':P?this.hash_to_xml(K,n,!0):(p=(e=n.constructor).toString().match(this.rx_function)[1],t=e===Array?this.hash_to_xml("d:item",n,!0):this.escape_xml(n),d+=' d:constr="'+p+'"',this.map.push(n),d+=' d:mi="'+this.map.length+'"',"#text"===K?this.escape_xml(n):"<"+K+d+">"+t+"")},escape_xml:function(K){return String(K).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/ /g," ")}},toXML:function(K,n){var P,t,e=defiant.json.interpreter;switch(typeof n){case"function":return void defiant.compiled.to_xml_str(K,function(p){n({doc:defiant.xmlFromString(p.str),src:K,map:p.map})});case"boolean":return P=e.to_xml_str.call(e,K),{doc:defiant.xmlFromString(P.str),src:K,map:P.map};default:return P=e.to_xml_str.call(e,K),t=defiant.xmlFromString(P.str),this.search.map=P.map,t}},search:function(K,n,P){K.constructor===String&&"snapshot_"===K.slice(0,9)&&defiant.snapshots[K]&&(K=defiant.snapshots[K]);var t,e,p=defiant.json,d=K.doc&&K.doc.nodeType,s=d?K.doc:p.toXML(K),h=d?K.map:p.search.map,f=d?K.src:K,T=defiant.node[P?"selectSingleNode":"selectNodes"](s,n.xTransform()),B=[];for(P&&(T=[T]),e=T.length;e--;)switch(T[e].nodeType){case 2:case 3:B.unshift(T[e].nodeValue);break;default:t=+T[e].getAttribute("d:mi"),B.unshift(h[t-1])}return"development"===defiant.env&&(B.trace=p.matchTrace(f,B,T)),B},matchTrace:function(K,n,P){var t=[],e=0,p=window,d=defiant.node.toJSON,s=function(T){return JSON.stringify(T,null,"\t").replace(/\t/g,"")},h=s(K);return P.map(function(f,T){var B,I,v,j,Q,J,Z,A=0;switch(f.nodeType){case 2:B=P[T].ownerElement?P[T].ownerElement.getAttribute("d:"+P[T].nodeName):"String",j=p[B](n[T]),J=h.indexOf(Q='"@'+P[T].nodeName+'": '+j,e);break;case 3:B=P[T].parentNode.getAttribute("d:constr"),j=p[B](n[T]),J=h.indexOf(Q='"'+P[T].parentNode.nodeName+'": '+("Number"===Q?j:'"'+j+'"'),e);break;default:B=f.getAttribute("d:constr"),["String","Number"].indexOf(B)>-1?(I=d(P[T].parentNode),v=s(I),j=p[B](n[T]),Q='"'+P[T].nodeName+'": '+("Number"===B?j:'"'+j+'"'),J=h.indexOf(v,e)+v.indexOf(Q)):(Q=s(n[T]),J=h.indexOf(Q),A=Q.split("\n").length-1)}e=J+1,Z=h.slice(0,J).split("\n").length,t.push([Z,A])}),t}}},x10={id:1,work_handler:function(K){var n=Array.prototype.slice.call(K.data,2),P=K.data[0],t=K.data[1],e=tree[P].apply(tree,n);e.map=JSON.parse(JSON.stringify(e.map)),postMessage([t,P,e])},setup:function(K){var n=window.URL||window.webkitURL,P="var tree = {"+this.parse(K).join(",")+"};",t=new Blob([P+'self.addEventListener("message", '+this.work_handler.toString()+", false);"],{type:"text/javascript"}),e=new Worker(n.createObjectURL(t));return e.onmessage=function(p){var d=Array.prototype.slice.call(p.data,2),s=p.data[0],h=p.data[1];x10.observer.emit("x10:"+h+s,d),x10.observer.off("x10:"+h+s)},e},call_handler:function(K,n){return function(){var P=Array.prototype.slice.call(arguments,0,-1),t=arguments[arguments.length-1],e=x10.id++;P.unshift(e),P.unshift(K),x10.observer.on("x10:"+K+e,function(p){t(p.detail[0])}),n.postMessage(P)}},compile:function(K){var n,P=this.setup("function"==typeof K?{func:K}:K),t={};if("function"==typeof K)return t.func=this.call_handler("func",P),t.func;for(n in K)t[n]=this.call_handler(n,P);return t},parse:function(K,n){var P,t,e,p=[];for(P in K)if(null!==(e=K[P]))if(void 0!==e){switch(e.constructor){case Date:t="new Date("+e.valueOf()+")";break;case Object:t="{"+this.parse(e).join(",")+"}";break;case Array:t="["+this.parse(e,!0).join(",")+"]";break;case String:t='"'+e.replace(/"/g,'\\"')+'"';break;case RegExp:case Function:t=e.toString();break;default:t=e}p.push(n?t:P+":"+t)}else p.push(P+":undefined");else p.push(P+":null");return p},observer:(stack={},{on:function(K,n){stack[K]||(stack[K]=[]),stack[K].unshift(n)},off:function(K,n){if(stack[K]){var P=stack[K].indexOf(n);stack[K].splice(P,1)}},emit:function(K,n){if(stack[K])for(var P={type:K,detail:n,isCanceled:!1,cancelBubble:function(){this.isCanceled=!0}},t=stack[K].length;t--;){if(P.isCanceled)return;stack[K][t](P)}}})},stack;String.prototype.fill||(String.prototype.fill=function(dt,K){var n=this;for(K=K||" ";n.length1&&"boolean"!=typeof r)throw new p('"allowMissing" argument must be a boolean');var z=H(R),Y=z.length>0?z[0]:"",se=V("%"+Y+"%",r),X=se.name,ne=se.value,ve=!1,Re=se.alias;Re&&(Y=Re[0],E(z,N([0,1],Re)));for(var Ie=1,Ee=!0;Ie=z.length){var qt=s(ne,ge);ne=(Ee=!!qt)&&"get"in qt&&!("originalValue"in qt.get)?qt.get:ne[ge]}else Ee=A(ne,ge),ne=ne[ge];Ee&&!ve&&(j[X]=ne)}}return ne}},15977:function(dt,K,n){var P;!function(t,e,p,d){"use strict";var Z,s=["","webkit","Moz","MS","ms","o"],h=e.createElement("div"),T=Math.round,B=Math.abs,I=Date.now;function v(Qt,Ot,Xt){return setTimeout(k(Qt,Xt),Ot)}function j(Qt,Ot,Xt){return!!Array.isArray(Qt)&&(Q(Qt,Xt[Ot],Xt),!0)}function Q(Qt,Ot,Xt){var Dn;if(Qt)if(Qt.forEach)Qt.forEach(Ot,Xt);else if(Qt.length!==d)for(Dn=0;Dn\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",vi=t.console&&(t.console.warn||t.console.log);return vi&&vi.call(t.console,Dn,Gn),Qt.apply(this,arguments)}}Z="function"!=typeof Object.assign?function(Ot){if(Ot===d||null===Ot)throw new TypeError("Cannot convert undefined or null to object");for(var Xt=Object(Ot),Dn=1;Dn-1}function R(Qt){return Qt.trim().split(/\s+/g)}function r(Qt,Ot,Xt){if(Qt.indexOf&&!Xt)return Qt.indexOf(Ot);for(var Dn=0;DnAi[Ot]}):Dn.sort()),Dn}function se(Qt,Ot){for(var Xt,Dn,Hn=Ot[0].toUpperCase()+Ot.slice(1),Gn=0;Gn1&&!Xt.firstMultiple?Xt.firstMultiple=be(Ot):1===Hn&&(Xt.firstMultiple=!1);var Gn=Xt.firstInput,vi=Xt.firstMultiple,Vi=vi?vi.center:Gn.center,Zi=Ot.center=we(Dn);Ot.timeStamp=I(),Ot.deltaTime=Ot.timeStamp-Gn.timeStamp,Ot.angle=ft(Vi,Zi),Ot.distance=Ae(Vi,Zi),function ut(Qt,Ot){var Xt=Ot.center,Dn=Qt.offsetDelta||{},Hn=Qt.prevDelta||{},Gn=Qt.prevInput||{};(1===Ot.eventType||4===Gn.eventType)&&(Hn=Qt.prevDelta={x:Gn.deltaX||0,y:Gn.deltaY||0},Dn=Qt.offsetDelta={x:Xt.x,y:Xt.y}),Ot.deltaX=Hn.x+(Xt.x-Dn.x),Ot.deltaY=Hn.y+(Xt.y-Dn.y)}(Xt,Ot),Ot.offsetDirection=$(Ot.deltaX,Ot.deltaY);var Ai=_e(Ot.deltaTime,Ot.deltaX,Ot.deltaY);Ot.overallVelocityX=Ai.x,Ot.overallVelocityY=Ai.y,Ot.overallVelocity=B(Ai.x)>B(Ai.y)?Ai.x:Ai.y,Ot.scale=vi?function Bt(Qt,Ot){return Ae(Ot[0],Ot[1],Nt)/Ae(Qt[0],Qt[1],Nt)}(vi.pointers,Dn):1,Ot.rotation=vi?function gt(Qt,Ot){return ft(Ot[1],Ot[0],Nt)+ft(Qt[1],Qt[0],Nt)}(vi.pointers,Dn):0,Ot.maxPointers=Xt.prevInput?Ot.pointers.length>Xt.prevInput.maxPointers?Ot.pointers.length:Xt.prevInput.maxPointers:Ot.pointers.length,function yt(Qt,Ot){var Hn,Gn,vi,Vi,Xt=Qt.lastInterval||Ot,Dn=Ot.timeStamp-Xt.timeStamp;if(8!=Ot.eventType&&(Dn>25||Xt.velocity===d)){var Zi=Ot.deltaX-Xt.deltaX,Ai=Ot.deltaY-Xt.deltaY,Ja=_e(Dn,Zi,Ai);Gn=Ja.x,vi=Ja.y,Hn=B(Ja.x)>B(Ja.y)?Ja.x:Ja.y,Vi=$(Zi,Ai),Qt.lastInterval=Ot}else Hn=Xt.velocity,Gn=Xt.velocityX,vi=Xt.velocityY,Vi=Xt.direction;Ot.velocity=Hn,Ot.velocityX=Gn,Ot.velocityY=vi,Ot.direction=Vi}(Xt,Ot);var Ja=Qt.element;V(Ot.srcEvent.target,Ja)&&(Ja=Ot.srcEvent.target),Ot.target=Ja}(Qt,Xt),Qt.emit("hammer.input",Xt),Qt.recognize(Xt),Qt.session.prevInput=Xt}function be(Qt){for(var Ot=[],Xt=0;Xt=B(Ot)?Qt<0?2:4:Ot<0?8:16}function Ae(Qt,Ot,Xt){Xt||(Xt=je);var Dn=Ot[Xt[0]]-Qt[Xt[0]],Hn=Ot[Xt[1]]-Qt[Xt[1]];return Math.sqrt(Dn*Dn+Hn*Hn)}function ft(Qt,Ot,Xt){return Xt||(Xt=je),180*Math.atan2(Ot[Xt[1]]-Qt[Xt[1]],Ot[Xt[0]]-Qt[Xt[0]])/Math.PI}Ft.prototype={handler:function(){},init:function(){this.evEl&&ie(this.element,this.evEl,this.domHandler),this.evTarget&&ie(this.target,this.evTarget,this.domHandler),this.evWin&&ie(ve(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&H(this.element,this.evEl,this.domHandler),this.evTarget&&H(this.target,this.evTarget,this.domHandler),this.evWin&&H(ve(this.element),this.evWin,this.domHandler)}};var _n={mousedown:1,mousemove:2,mouseup:4},wn="mousedown",Tn="mousemove mouseup";function On(){this.evEl=wn,this.evWin=Tn,this.pressed=!1,Ft.apply(this,arguments)}E(On,Ft,{handler:function(Ot){var Xt=_n[Ot.type];1&Xt&&0===Ot.button&&(this.pressed=!0),2&Xt&&1!==Ot.which&&(Xt=4),this.pressed&&(4&Xt&&(this.pressed=!1),this.callback(this.manager,Xt,{pointers:[Ot],changedPointers:[Ot],pointerType:qt,srcEvent:Ot}))}});var Jn={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},Un={2:_t,3:"pen",4:qt,5:"kinect"},si="pointerdown",fi="pointermove pointerup pointercancel";function rn(){this.evEl=si,this.evWin=fi,Ft.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(si="MSPointerDown",fi="MSPointerMove MSPointerUp MSPointerCancel"),E(rn,Ft,{handler:function(Ot){var Xt=this.store,Dn=!1,Hn=Ot.type.toLowerCase().replace("ms",""),Gn=Jn[Hn],vi=Un[Ot.pointerType]||Ot.pointerType,Vi=vi==_t,Zi=r(Xt,Ot.pointerId,"pointerId");1&Gn&&(0===Ot.button||Vi)?Zi<0&&(Xt.push(Ot),Zi=Xt.length-1):12&Gn&&(Dn=!0),!(Zi<0)&&(Xt[Zi]=Ot,this.callback(this.manager,Gn,{pointers:Xt,changedPointers:[Ot],pointerType:vi,srcEvent:Ot}),Dn&&Xt.splice(Zi,1))}});var sn={touchstart:1,touchmove:2,touchend:4,touchcancel:8},jt="touchstart",Ue="touchstart touchmove touchend touchcancel";function et(){this.evTarget=jt,this.evWin=Ue,this.started=!1,Ft.apply(this,arguments)}function De(Qt,Ot){var Xt=z(Qt.touches),Dn=z(Qt.changedTouches);return 12&Ot&&(Xt=Y(Xt.concat(Dn),"identifier",!0)),[Xt,Dn]}E(et,Ft,{handler:function(Ot){var Xt=sn[Ot.type];if(1===Xt&&(this.started=!0),this.started){var Dn=De.call(this,Ot,Xt);12&Xt&&Dn[0].length-Dn[1].length==0&&(this.started=!1),this.callback(this.manager,Xt,{pointers:Dn[0],changedPointers:Dn[1],pointerType:_t,srcEvent:Ot})}}});var Ze={touchstart:1,touchmove:2,touchend:4,touchcancel:8},Je="touchstart touchmove touchend touchcancel";function Ve(){this.evTarget=Je,this.targetIds={},Ft.apply(this,arguments)}function pt(Qt,Ot){var Xt=z(Qt.touches),Dn=this.targetIds;if(3&Ot&&1===Xt.length)return Dn[Xt[0].identifier]=!0,[Xt,Xt];var Hn,Gn,vi=z(Qt.changedTouches),Vi=[],Zi=this.target;if(Gn=Xt.filter(function(Ai){return V(Ai.target,Zi)}),1===Ot)for(Hn=0;Hn-1&&Dn.splice(vi,1)},2500)}}function tn(Qt){for(var Ot=Qt.srcEvent.clientX,Xt=Qt.srcEvent.clientY,Dn=0;Dn-1&&this.requireFail.splice(Xt,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(Ot){return!!this.simultaneous[Ot.id]},emit:function(Ot){var Xt=this,Dn=this.state;function Hn(Gn){Xt.manager.emit(Gn,Ot)}Dn<8&&Hn(Xt.options.event+It(Dn)),Hn(Xt.options.event),Ot.additionalEvent&&Hn(Ot.additionalEvent),Dn>=8&&Hn(Xt.options.event+It(Dn))},tryEmit:function(Ot){if(this.canEmit())return this.emit(Ot);this.state=32},canEmit:function(){for(var Ot=0;OtXt.threshold&&Gn&Xt.direction},attrTest:function(Ot){return Vn.prototype.attrTest.call(this,Ot)&&(2&this.state||!(2&this.state)&&this.directionTest(Ot))},emit:function(Ot){this.pX=Ot.deltaX,this.pY=Ot.deltaY;var Xt=Jt(Ot.direction);Xt&&(Ot.additionalEvent=this.options.event+Xt),this._super.emit.call(this,Ot)}}),E(ki,Vn,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[gi]},attrTest:function(Ot){return this._super.attrTest.call(this,Ot)&&(Math.abs(Ot.scale-1)>this.options.threshold||2&this.state)},emit:function(Ot){1!==Ot.scale&&(Ot.additionalEvent=this.options.event+(Ot.scale<1?"in":"out")),this._super.emit.call(this,Ot)}}),E(Ii,Pe,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(Ot){var Xt=this.options,Dn=Ot.pointers.length===Xt.pointers,Hn=Ot.distanceXt.time;if(this._input=Ot,!Hn||!Dn||12&Ot.eventType&&!Gn)this.reset();else if(1&Ot.eventType)this.reset(),this._timer=v(function(){this.state=8,this.tryEmit()},Xt.time,this);else if(4&Ot.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(Ot){8===this.state&&(Ot&&4&Ot.eventType?this.manager.emit(this.options.event+"up",Ot):(this._input.timeStamp=I(),this.manager.emit(this.options.event,this._input)))}}),E(ri,Vn,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[gi]},attrTest:function(Ot){return this._super.attrTest.call(this,Ot)&&(Math.abs(Ot.rotation)>this.options.threshold||2&this.state)}}),E(Ci,Vn,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return ui.prototype.getTouchAction.call(this)},attrTest:function(Ot){var Dn,Xt=this.options.direction;return 30&Xt?Dn=Ot.overallVelocity:6&Xt?Dn=Ot.overallVelocityX:24&Xt&&(Dn=Ot.overallVelocityY),this._super.attrTest.call(this,Ot)&&Xt&Ot.offsetDirection&&Ot.distance>this.options.threshold&&Ot.maxPointers==this.options.pointers&&B(Dn)>this.options.velocity&&4&Ot.eventType},emit:function(Ot){var Xt=Jt(Ot.offsetDirection);Xt&&this.manager.emit(this.options.event+Xt,Ot),this.manager.emit(this.options.event,Ot)}}),E(Wi,Pe,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[ai]},process:function(Ot){var Xt=this.options,Dn=Ot.pointers.length===Xt.pointers,Hn=Ot.distance=0&&"[object Array]"!==n.call(d)&&"[object Function]"===n.call(d.callee)},e=function(){return P(arguments)}();P.isLegacyArguments=t,dt.exports=e?P:t},17494:function(dt,K,n){"use strict";var h,P=Object.prototype.toString,t=Function.prototype.toString,e=/^\s*(?:function)?\*/,p=n(13261)(),d=Object.getPrototypeOf;dt.exports=function(T){if("function"!=typeof T)return!1;if(e.test(t.call(T)))return!0;if(!p)return"[object GeneratorFunction]"===P.call(T);if(!d)return!1;if(void 0===h){var I=function(){if(!p)return!1;try{return Function("return function*() {}")()}catch(T){}}();h=!!I&&d(I)}return d(T)===h}},37673:function(dt,K,n){"use strict";var P=n(63445),t=n(35271),e=n(4263),p=e("Object.prototype.toString"),d=n(13261)(),s="undefined"==typeof globalThis?global:globalThis,h=t(),f=e("Array.prototype.indexOf",!0)||function(J,Z){for(var A=0;A-1}return!!I&&function(J){var Z=!1;return P(B,function(A,N){if(!Z)try{Z=A.call(J)===N}catch(E){}}),Z}(J)}},92938:function(dt,K,n){var P;dt=n.nmd(dt),function(){var t,s="Expected a function",f="__lodash_hash_undefined__",B="__lodash_placeholder__",q=32,ne=1/0,ve=9007199254740991,Ee=4294967295,wt=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",q],["partialRight",64],["rearg",256]],qt="[object Arguments]",Lt="[object Array]",it="[object Boolean]",Qe="[object Date]",tt="[object Error]",xe="[object Function]",$e="[object GeneratorFunction]",Ge="[object Map]",ct="[object Number]",Te="[object Object]",vt="[object Promise]",je="[object RegExp]",Nt="[object Set]",Ft="[object String]",bt="[object Symbol]",Pt="[object WeakMap]",yt="[object ArrayBuffer]",be="[object DataView]",we="[object Float32Array]",_e="[object Float64Array]",$="[object Int8Array]",Ae="[object Int16Array]",ft="[object Int32Array]",gt="[object Uint8Array]",Bt="[object Uint8ClampedArray]",_n="[object Uint16Array]",wn="[object Uint32Array]",Tn=/\b__p \+= '';/g,On=/\b(__p \+=) '' \+/g,Jn=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Un=/&(?:amp|lt|gt|quot|#39);/g,si=/[&<>"']/g,fi=RegExp(Un.source),rn=RegExp(si.source),sn=/<%-([\s\S]+?)%>/g,jt=/<%([\s\S]+?)%>/g,Ue=/<%=([\s\S]+?)%>/g,et=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,De=/^\w*$/,Ze=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Je=/[\\^$.*+?()[\]{}|]/g,Ve=RegExp(Je.source),pt=/^\s+/,kt=/\s/,en=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Zn=/\{\n\/\* \[wrapped with (.+)\] \*/,zt=/,? & /,un=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,tn=/[()=,{}\[\]\/\s]/,ln=/\\(\\)?/g,gn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,An=/\w*$/,Nn=/^[-+]0x[0-9a-f]+$/i,ai=/^0b[01]+$/i,gi=/^\[object .+?Constructor\]$/,Si=/^0o[0-7]+$/i,Bi=/^(?:0|[1-9]\d*)$/,Oa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Ea=/($^)/,ea=/['\n\r\u2028\u2029\\]/g,ja="\\ud800-\\udfff",ta="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",fn="\\u2700-\\u27bf",yn="a-z\\xdf-\\xf6\\xf8-\\xff",vn="A-Z\\xc0-\\xd6\\xd8-\\xde",Vn="\\ufe0e\\ufe0f",ui="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ii="["+ja+"]",ri="["+ui+"]",Ci="["+ta+"]",Wi="\\d+",xa="["+fn+"]",oa="["+yn+"]",Yi="[^"+ja+ui+Wi+fn+yn+vn+"]",sa="\\ud83c[\\udffb-\\udfff]",va="[^"+ja+"]",Za="(?:\\ud83c[\\udde6-\\uddff]){2}",Qt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ot="["+vn+"]",Dn="(?:"+oa+"|"+Yi+")",Hn="(?:"+Ot+"|"+Yi+")",Gn="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",vi="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Vi="(?:"+Ci+"|"+sa+")?",Zi="["+Vn+"]?",za=Zi+Vi+"(?:\\u200d(?:"+[va,Za,Qt].join("|")+")"+Zi+Vi+")*",fr="(?:"+[xa,Za,Qt].join("|")+")"+za,Or="(?:"+[va+Ci+"?",Ci,Za,Qt,Ii].join("|")+")",Pr=RegExp("['\u2019]","g"),Dr=RegExp(Ci,"g"),Ga=RegExp(sa+"(?="+sa+")|"+Or+za,"g"),Rr=RegExp([Ot+"?"+oa+"+"+Gn+"(?="+[ri,Ot,"$"].join("|")+")",Hn+"+"+vi+"(?="+[ri,Ot+Dn,"$"].join("|")+")",Ot+"?"+Dn+"+"+Gn,Ot+"+"+vi,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Wi,fr].join("|"),"g"),Qo=RegExp("[\\u200d"+ja+ta+Vn+"]"),fo=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,eo=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Wo=-1,ya={};ya[we]=ya[_e]=ya[$]=ya[Ae]=ya[ft]=ya[gt]=ya[Bt]=ya[_n]=ya[wn]=!0,ya[qt]=ya[Lt]=ya[yt]=ya[it]=ya[be]=ya[Qe]=ya[tt]=ya[xe]=ya[Ge]=ya[ct]=ya[Te]=ya[je]=ya[Nt]=ya[Ft]=ya[Pt]=!1;var pa={};pa[qt]=pa[Lt]=pa[yt]=pa[be]=pa[it]=pa[Qe]=pa[we]=pa[_e]=pa[$]=pa[Ae]=pa[ft]=pa[Ge]=pa[ct]=pa[Te]=pa[je]=pa[Nt]=pa[Ft]=pa[bt]=pa[gt]=pa[Bt]=pa[_n]=pa[wn]=!0,pa[tt]=pa[xe]=pa[Pt]=!1;var mr={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ro=parseFloat,zo=parseInt,ho="object"==typeof global&&global&&global.Object===Object&&global,_o="object"==typeof self&&self&&self.Object===Object&&self,Ta=ho||_o||Function("return this")(),wr=K&&!K.nodeType&&K,ia=wr&&dt&&!dt.nodeType&&dt,Aa=ia&&ia.exports===wr,Ra=Aa&&ho.process,Ma=function(){try{return ia&&ia.require&&ia.require("util").types||Ra&&Ra.binding&&Ra.binding("util")}catch(Rn){}}(),oo=Ma&&Ma.isArrayBuffer,ko=Ma&&Ma.isDate,br=Ma&&Ma.isMap,Er=Ma&&Ma.isRegExp,Tt=Ma&&Ma.isSet,Ke=Ma&&Ma.isTypedArray;function oe(Sn,Rn,Fn){switch(Fn.length){case 0:return Sn.call(Rn);case 1:return Sn.call(Rn,Fn[0]);case 2:return Sn.call(Rn,Fn[0],Fn[1]);case 3:return Sn.call(Rn,Fn[0],Fn[1],Fn[2])}return Sn.apply(Rn,Fn)}function Ce(Sn,Rn,Fn,mi){for(var Li=-1,zi=null==Sn?0:Sn.length;++Li-1}function ht(Sn,Rn,Fn){for(var mi=-1,Li=null==Sn?0:Sn.length;++mi-1;);return Fn}function go(Sn,Rn){for(var Fn=Sn.length;Fn--&&de(Rn,Sn[Fn],0)>-1;);return Fn}function Ni(Sn,Rn){for(var Fn=Sn.length,mi=0;Fn--;)Sn[Fn]===Rn&&++mi;return mi}var Rl=cn({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),Ts=cn({"&":"&","<":"<",">":">",'"':""","'":"'"});function $i(Sn){return"\\"+mr[Sn]}function Io(Sn){return Qo.test(Sn)}function Qn(Sn){var Rn=-1,Fn=Array(Sn.size);return Sn.forEach(function(mi,Li){Fn[++Rn]=[Li,mi]}),Fn}function Xi(Sn,Rn){return function(Fn){return Sn(Rn(Fn))}}function Qr(Sn,Rn){for(var Fn=-1,mi=Sn.length,Li=0,zi=[];++Fn",""":'"',"'":"'"}),Ps=function Sn(Rn){var y,Fn=(Rn=null==Rn?Ta:Ps.defaults(Ta.Object(),Rn,Ps.pick(Ta,eo))).Array,mi=Rn.Date,Li=Rn.Error,zi=Rn.Function,Ba=Rn.Math,Da=Rn.Object,tl=Rn.RegExp,Ul=Rn.String,Wr=Rn.TypeError,nl=Fn.prototype,ir=Da.prototype,il=Rn["__core-js_shared__"],ms=zi.prototype.toString,ba=ir.hasOwnProperty,Ds=0,ws=(y=/[^.]+$/.exec(il&&il.keys&&il.keys.IE_PROTO||""))?"Symbol(src)_1."+y:"",Yl=ir.toString,Yr=ms.call(Da),Ko=Ta._,Ka=tl("^"+ms.call(ba).replace(Je,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),hs=Aa?Rn.Buffer:t,Lo=Rn.Symbol,_s=Rn.Uint8Array,Cl=hs?hs.allocUnsafe:t,yo=Xi(Da.getPrototypeOf,Da),Fo=Da.create,Ml=ir.propertyIsEnumerable,Os=nl.splice,$o=Lo?Lo.isConcatSpreadable:t,Es=Lo?Lo.iterator:t,sr=Lo?Lo.toStringTag:t,al=function(){try{var y=dc(Da,"defineProperty");return y({},"",{}),y}catch(S){}}(),bo=Rn.clearTimeout!==Ta.clearTimeout&&Rn.clearTimeout,Zs=mi&&mi.now!==Ta.Date.now&&mi.now,Xo=Rn.setTimeout!==Ta.setTimeout&&Rn.setTimeout,Cr=Ba.ceil,Co=Ba.floor,gs=Da.getOwnPropertySymbols,rl=hs?hs.isBuffer:t,ol=Rn.isFinite,Qc=nl.join,ql=Xi(Da.keys,Da),he=Ba.max,ke=Ba.min,pe=mi.now,Me=Rn.parseInt,Fe=Ba.random,xt=nl.reverse,Ut=dc(Rn,"DataView"),dn=dc(Rn,"Map"),Mn=dc(Rn,"Promise"),hn=dc(Rn,"Set"),$n=dc(Rn,"WeakMap"),hi=dc(Da,"create"),Ji=$n&&new $n,Ca={},Ya=El(Ut),$a=El(dn),Mr=El(Mn),qr=El(hn),no=El($n),so=Lo?Lo.prototype:t,hr=so?so.valueOf:t,Va=so?so.toString:t;function Vt(y){if(dr(y)&&!aa(y)&&!(y instanceof ha)){if(y instanceof Zr)return y;if(ba.call(y,"__wrapped__"))return Ld(y)}return new Zr(y)}var Mo=function(){function y(){}return function(S){if(!gr(S))return{};if(Fo)return Fo(S);y.prototype=S;var te=new y;return y.prototype=t,te}}();function ks(){}function Zr(y,S){this.__wrapped__=y,this.__actions__=[],this.__chain__=!!S,this.__index__=0,this.__values__=t}function ha(y){this.__wrapped__=y,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=Ee,this.__views__=[]}function xl(y){var S=-1,te=null==y?0:y.length;for(this.clear();++S=S?y:S)),y}function So(y,S,te,He,Et,Gt){var pn,xn=1&S,En=2&S,zn=4&S;if(te&&(pn=Et?te(y,He,Et,Gt):te(y)),pn!==t)return pn;if(!gr(y))return y;var ti=aa(y);if(ti){if(pn=function Cm(y){var S=y.length,te=new y.constructor(S);return S&&"string"==typeof y[0]&&ba.call(y,"index")&&(te.index=y.index,te.input=y.input),te}(y),!xn)return Yo(y,pn)}else{var li=ur(y),yi=li==xe||li==$e;if(tc(y))return Pp(y,xn);if(li==Te||li==qt||yi&&!Et){if(pn=En||yi?{}:Fp(y),!xn)return En?function xd(y,S){return pl(y,Lp(y),S)}(y,function Pu(y,S){return y&&pl(S,uo(S),y)}(pn,y)):function hm(y,S){return pl(y,kc(y),S)}(y,zc(pn,y))}else{if(!pa[li])return Et?y:{};pn=function du(y,S,te){var He=y.constructor;switch(S){case yt:return Dp(y);case it:case Qe:return new He(+y);case be:return function mm(y,S){var te=S?Dp(y.buffer):y.buffer;return new y.constructor(te,y.byteOffset,y.byteLength)}(y,te);case we:case _e:case $:case Ae:case ft:case gt:case Bt:case _n:case wn:return Bs(y,te);case Ge:return new He;case ct:case Ft:return new He(y);case je:return function Dc(y){var S=new y.constructor(y.source,An.exec(y));return S.lastIndex=y.lastIndex,S}(y);case Nt:return new He;case bt:return function eu(y){return hr?Da(hr.call(y)):{}}(y)}}(y,li,xn)}}Gt||(Gt=new xo);var Ei=Gt.get(y);if(Ei)return Ei;Gt.set(y,pn),Ef(y)?y.forEach(function(ji){pn.add(So(ji,S,te,ji,y,Gt))}):dp(y)&&y.forEach(function(ji,Sa){pn.set(Sa,So(ji,S,te,Sa,y,Gt))});var ga=ti?t:(zn?En?ml:Hr:En?uo:Ir)(y);return at(ga||y,function(ji,Sa){ga&&(ji=y[Sa=ji]),Wl(pn,Sa,So(ji,S,te,Sa,y,Gt))}),pn}function Uo(y,S,te){var He=te.length;if(null==y)return!He;for(y=Da(y);He--;){var Et=te[He],pn=y[Et];if(pn===t&&!(Et in y)||!(0,S[Et])(pn))return!1}return!0}function Tl(y,S,te){if("function"!=typeof y)throw new Wr(s);return pc(function(){y.apply(t,te)},S)}function Cc(y,S,te,He){var Et=-1,Gt=Ye,pn=!0,xn=y.length,En=[],zn=S.length;if(!xn)return En;te&&(S=At(S,Ua(te))),He?(Gt=ht,pn=!1):S.length>=200&&(Gt=ka,pn=!1,S=new ci(S));e:for(;++Et-1},No.prototype.set=function Wc(y,S){var te=this.__data__,He=cl(te,y);return He<0?(++this.size,te.push([y,S])):te[He][1]=S,this},lo.prototype.clear=function vs(){this.size=0,this.__data__={hash:new xl,map:new(dn||No),string:new xl}},lo.prototype.delete=function Au(y){var S=hl(this,y).delete(y);return this.size-=S?1:0,S},lo.prototype.get=function lr(y){return hl(this,y).get(y)},lo.prototype.has=function ad(y){return hl(this,y).has(y)},lo.prototype.set=function hp(y,S){var te=hl(this,y),He=te.size;return te.set(y,S),this.size+=te.size==He?0:1,this},ci.prototype.add=ci.prototype.push=function _p(y){return this.__data__.set(y,f),this},ci.prototype.has=function gp(y){return this.__data__.has(y)},xo.prototype.clear=function Ia(){this.__data__=new No,this.size=0},xo.prototype.delete=function ll(y){var S=this.__data__,te=S.delete(y);return this.size=S.size,te},xo.prototype.get=function rd(y){return this.__data__.get(y)},xo.prototype.has=function _r(y){return this.__data__.has(y)},xo.prototype.set=function bc(y,S){var te=this.__data__;if(te instanceof No){var He=te.__data__;if(!dn||He.length<199)return He.push([y,S]),this.size=++te.size,this;te=this.__data__=new lo(He)}return te.set(y,S),this.size=te.size,this};var ys=Op(zr),Du=Op(Al,!0);function ld(y,S){var te=!0;return ys(y,function(He,Et,Gt){return te=!!S(He,Et,Gt)}),te}function Mc(y,S,te){for(var He=-1,Et=y.length;++He0&&te(xn)?S>1?kr(xn,S-1,te,He,Et):on(Et,xn):He||(Et[Et.length]=xn)}return Et}var Ls=Ep(),Fs=Ep(!0);function zr(y,S){return y&&Ls(y,S,Ir)}function Al(y,S){return y&&Fs(y,S,Ir)}function Ns(y,S){return Ne(S,function(te){return nc(y[te])})}function es(y,S){for(var te=0,He=(S=Dl(S,y)).length;null!=y&&teS}function Ou(y,S){return null!=y&&ba.call(y,S)}function ud(y,S){return null!=y&&S in Da(y)}function Rs(y,S,te){for(var He=te?ht:Ye,Et=y[0].length,Gt=y.length,pn=Gt,xn=Fn(Gt),En=1/0,zn=[];pn--;){var ti=y[pn];pn&&S&&(ti=At(ti,Ua(S))),En=ke(ti.length,En),xn[pn]=!te&&(S||Et>=120&&ti.length>=120)?new ci(pn&&ti):t}ti=y[0];var li=-1,yi=xn[0];e:for(;++li=xn?En:En*("desc"==te[He]?-1:1)}return y.index-S.index}(Gt,pn,te)})}function bp(y,S,te){for(var He=-1,Et=S.length,Gt={};++He-1;)xn!==y&&Os.call(xn,En,1),Os.call(y,En,1);return y}function Cp(y,S){for(var te=y?S.length:0,He=te-1;te--;){var Et=S[te];if(te==He||Et!==Gt){var Gt=Et;Ol(Et)?Os.call(y,Et,1):Us(y,Et)}}return y}function md(y,S){return y+Co(Fe()*(S-y+1))}function Xc(y,S){var te="";if(!y||S<1||S>ve)return te;do{S%2&&(te+=y),(S=Co(S/2))&&(y+=y)}while(S);return te}function Gi(y,S){return Lc(Zd(y,S,Qi),y+"")}function Mp(y){return od(rc(y))}function fm(y,S){var te=rc(y);return ec(te,ul(S,0,te.length))}function Zu(y,S,te,He){if(!gr(y))return y;for(var Et=-1,Gt=(S=Dl(S,y)).length,pn=Gt-1,xn=y;null!=xn&&++EtEt?0:Et+S),(te=te>Et?Et:te)<0&&(te+=Et),Et=S>te?0:te-S>>>0,S>>>=0;for(var Gt=Fn(Et);++He>>1,pn=y[Gt];null!==pn&&!wo(pn)&&(te?pn<=S:pn=200){var zn=S?null:ou(y);if(zn)return qa(zn);pn=!1,Et=ka,En=new ci}else En=S?[]:xn;e:for(;++He=He?y:ns(y,S,te)}var Ap=bo||function(y){return Ta.clearTimeout(y)};function Pp(y,S){if(S)return y.slice();var te=y.length,He=Cl?Cl(te):new y.constructor(te);return y.copy(He),He}function Dp(y){var S=new y.constructor(y.byteLength);return new _s(S).set(new _s(y)),S}function Bs(y,S){var te=S?Dp(y.buffer):y.buffer;return new y.constructor(te,y.byteOffset,y.length)}function wc(y,S){if(y!==S){var te=y!==t,He=null===y,Et=y==y,Gt=wo(y),pn=S!==t,xn=null===S,En=S==S,zn=wo(S);if(!xn&&!zn&&!Gt&&y>S||Gt&&pn&&En&&!xn&&!zn||He&&pn&&En||!te&&En||!Et)return 1;if(!He&&!Gt&&!zn&&y1?te[Et-1]:t,pn=Et>2?te[2]:t;for(Gt=y.length>3&&"function"==typeof Gt?(Et--,Gt):t,pn&&Po(te[0],te[1],pn)&&(Gt=Et<3?t:Gt,Et=1),S=Da(S);++He-1?Et[Gt?S[pn]:pn]:t}}function nu(y){return fl(function(S){var te=S.length,He=te,Et=Zr.prototype.thru;for(y&&S.reverse();He--;){var Gt=S[He];if("function"!=typeof Gt)throw new Wr(s);if(Et&&!pn&&"wrapper"==Zc(Gt))var pn=new Zr([],!0)}for(He=pn?He:te;++He1&&Fa.reverse(),ti&&Enxn))return!1;var zn=Gt.get(y),ti=Gt.get(S);if(zn&&ti)return zn==S&&ti==y;var li=-1,yi=!0,Ei=2&te?new ci:t;for(Gt.set(y,S),Gt.set(S,y);++li-1&&y%1==0&&y1?"& ":"")+S[He],S=S.join(te>2?", ":" "),y.replace(en,"{\n/* [wrapped with "+S+"] */\n")}(He,function Id(y,S){return at(wt,function(te){var He="_."+te[0];S&te[1]&&!Ye(y,He)&&y.push(He)}),y.sort()}(function bm(y){var S=y.match(Zn);return S?S[1].split(zt):[]}(He),te)))}function kd(y){var S=0,te=0;return function(){var He=pe(),Et=16-(He-te);if(te=He,Et>0){if(++S>=800)return arguments[0]}else S=0;return y.apply(t,arguments)}}function ec(y,S){var te=-1,He=y.length,Et=He-1;for(S=S===t?He:S;++te1?y[S-1]:t;return te="function"==typeof te?(y.pop(),te):t,of(y,te)});function Qd(y){var S=Vt(y);return S.__chain__=!0,S}function mc(y,S){return S(y)}var Cs=fl(function(y){var S=y.length,te=S?y[0]:0,He=this.__wrapped__,Et=function(pn){return Gc(pn,y)};return!(S>1||this.__actions__.length)&&He instanceof ha&&Ol(te)?((He=He.slice(te,+te+(S?1:0))).__actions__.push({func:mc,args:[Et],thisArg:t}),new Zr(He,this.__chain__).thru(function(Gt){return S&&!Gt.length&&Gt.push(t),Gt})):this.thru(Et)}),Fh=Oc(function(y,S,te){ba.call(y,te)?++y[te]:Is(y,te,1)}),Hu=Sd(Vp),ju=Sd(Rd);function Jm(y,S){return(aa(y)?at:ys)(y,Ri(S,3))}function ff(y,S){return(aa(y)?ee:Du)(y,Ri(S,3))}var Qm=Oc(function(y,S,te){ba.call(y,te)?y[te].push(S):Is(y,te,[S])}),zm=Gi(function(y,S,te){var He=-1,Et="function"==typeof S,Gt=qo(y)?Fn(y.length):[];return ys(y,function(pn){Gt[++He]=Et?oe(S,pn,te):ar(pn,S,te)}),Gt}),mf=Oc(function(y,S,te){Is(y,te,S)});function ep(y,S){return(aa(y)?At:ca)(y,Ri(S,3))}var Nh=Oc(function(y,S,te){y[te?0:1].push(S)},function(){return[[],[]]}),qh=Gi(function(y,S){if(null==y)return[];var te=S.length;return te>1&&Po(y,S[0],S[1])?S=[]:te>2&&Po(S[0],S[1],S[2])&&(S=[S[0]]),pm(y,kr(S,1),[])}),Zl=Zs||function(){return Ta.Date.now()};function Xm(y,S,te){return S=te?t:S,wl(y,128,t,t,t,t,S=y&&null==S?y.length:S)}function eh(y,S){var te;if("function"!=typeof S)throw new Wr(s);return y=ua(y),function(){return--y>0&&(te=S.apply(this,arguments)),y<=1&&(S=t),te}}var gf=Gi(function(y,S,te){var He=1;if(te.length){var Et=Qr(te,$l(gf));He|=q}return wl(y,He,S,te,Et)}),kl=Gi(function(y,S,te){var He=3;if(te.length){var Et=Qr(te,$l(kl));He|=q}return wl(S,He,y,te,Et)});function np(y,S,te){var He,Et,Gt,pn,xn,En,zn=0,ti=!1,li=!1,yi=!0;if("function"!=typeof y)throw new Wr(s);function Ei(Nr){var el=He,Ll=Et;return He=Et=t,zn=Nr,pn=y.apply(Ll,el)}function Hi(Nr){return zn=Nr,xn=pc(Sa,S),ti?Ei(Nr):pn}function ji(Nr){var el=Nr-En;return En===t||el>=S||el<0||li&&Nr-zn>=Gt}function Sa(){var Nr=Zl();if(ji(Nr))return Fa(Nr);xn=pc(Sa,function ga(Nr){var Th=S-(Nr-En);return li?ke(Th,Gt-(Nr-zn)):Th}(Nr))}function Fa(Nr){return xn=t,yi&&He?Ei(Nr):(He=Et=t,pn)}function Xs(){var Nr=Zl(),el=ji(Nr);if(He=arguments,Et=this,En=Nr,el){if(xn===t)return Hi(En);if(li)return Ap(xn),xn=pc(Sa,S),Ei(En)}return xn===t&&(xn=pc(Sa,S)),pn}return S=Kr(S)||0,gr(te)&&(ti=!!te.leading,Gt=(li="maxWait"in te)?he(Kr(te.maxWait)||0,S):Gt,yi="trailing"in te?!!te.trailing:yi),Xs.cancel=function Oo(){xn!==t&&Ap(xn),zn=0,He=En=Et=xn=t},Xs.flush=function ss(){return xn===t?pn:Fa(Zl())},Xs}var ip=Gi(function(y,S){return Tl(y,1,S)}),yf=Gi(function(y,S,te){return Tl(y,Kr(S)||0,te)});function Qu(y,S){if("function"!=typeof y||null!=S&&"function"!=typeof S)throw new Wr(s);var te=function He(){var Et=arguments,Gt=S?S.apply(this,Et):Et[0],pn=He.cache;if(pn.has(Gt))return pn.get(Gt);var xn=y.apply(this,Et);return He.cache=pn.set(Gt,xn)||pn,xn};return te.cache=new(Qu.Cache||lo),te}function Hs(y){if("function"!=typeof y)throw new Wr(s);return function(){var S=arguments;switch(S.length){case 0:return!y.call(this);case 1:return!y.call(this,S[0]);case 2:return!y.call(this,S[0],S[1]);case 3:return!y.call(this,S[0],S[1],S[2])}return!y.apply(this,S)}}Qu.Cache=lo;var th=Tp(function(y,S){var te=(S=1==S.length&&aa(S[0])?At(S[0],Ua(Ri())):At(kr(S,1),Ua(Ri()))).length;return Gi(function(He){for(var Et=-1,Gt=ke(He.length,te);++Et=S}),yl=Sc(function(){return arguments}())?Sc:function(y){return dr(y)&&ba.call(y,"callee")&&!Ml.call(y,"callee")},aa=Fn.isArray,Tf=oo?Ua(oo):function pd(y){return dr(y)&&Gr(y)==yt};function qo(y){return null!=y&&up(y.length)&&!nc(y)}function Sr(y){return dr(y)&&qo(y)}var tc=rl||Fr,js=ko?Ua(ko):function $c(y){return dr(y)&&Gr(y)==Qe};function lp(y){if(!dr(y))return!1;var S=Gr(y);return S==tt||"[object DOMException]"==S||"string"==typeof y.message&&"string"==typeof y.name&&!vu(y)}function nc(y){if(!gr(y))return!1;var S=Gr(y);return S==xe||S==$e||"[object AsyncFunction]"==S||"[object Proxy]"==S}function cp(y){return"number"==typeof y&&y==ua(y)}function up(y){return"number"==typeof y&&y>-1&&y%1==0&&y<=ve}function gr(y){var S=typeof y;return null!=y&&("object"==S||"function"==S)}function dr(y){return null!=y&&"object"==typeof y}var dp=br?Ua(br):function Tc(y){return dr(y)&&ur(y)==Ge};function Of(y){return"number"==typeof y||dr(y)&&Gr(y)==ct}function vu(y){if(!dr(y)||Gr(y)!=Te)return!1;var S=yo(y);if(null===S)return!0;var te=ba.call(S,"constructor")&&S.constructor;return"function"==typeof te&&te instanceof te&&ms.call(te)==Yr}var Wu=Er?Ua(Er):function le(y){return dr(y)&&Gr(y)==je},Ef=Tt?Ua(Tt):function We(y){return dr(y)&&ur(y)==Nt};function os(y){return"string"==typeof y||!aa(y)&&dr(y)&&Gr(y)==Ft}function wo(y){return"symbol"==typeof y||dr(y)&&Gr(y)==bt}var qc=Ke?Ua(Ke):function Mt(y){return dr(y)&&up(y.length)&&!!ya[Gr(y)]},uh=uc(Di),dh=uc(function(y,S){return y<=S});function If(y){if(!y)return[];if(qo(y))return os(y)?nr(y):Yo(y);if(Es&&y[Es])return function ps(Sn){for(var Rn,Fn=[];!(Rn=Sn.next()).done;)Fn.push(Rn.value);return Fn}(y[Es]());var S=ur(y);return(S==Ge?Qn:S==Nt?qa:rc)(y)}function Js(y){return y?(y=Kr(y))===ne||y===-ne?17976931348623157e292*(y<0?-1:1):y==y?y:0:0===y?y:0}function ua(y){var S=Js(y),te=S%1;return S==S?te?S-te:S:0}function Lf(y){return y?ul(ua(y),0,Ee):0}function Kr(y){if("number"==typeof y)return y;if(wo(y))return NaN;if(gr(y)){var S="function"==typeof y.valueOf?y.valueOf():y;y=gr(S)?S+"":S}if("string"!=typeof y)return 0===y?y:+y;y=to(y);var te=ai.test(y);return te||Si.test(y)?zo(y.slice(2),te?2:8):Nn.test(y)?NaN:+y}function _c(y){return pl(y,uo(y))}function La(y){return null==y?"":io(y)}var jr=Kl(function(y,S){if(pu(S)||qo(S))pl(S,Ir(S),y);else for(var te in S)ba.call(S,te)&&Wl(y,te,S[te])}),bl=Kl(function(y,S){pl(S,uo(S),y)}),Gu=Kl(function(y,S,te,He){pl(S,uo(S),y,He)}),fh=Kl(function(y,S,te,He){pl(S,Ir(S),y,He)}),pp=fl(Gc),mh=Gi(function(y,S){y=Da(y);var te=-1,He=S.length,Et=He>2?S[2]:t;for(Et&&Po(S[0],S[1],Et)&&(He=1);++te1),Gt}),pl(y,ml(y),te),He&&(te=So(te,7,lu));for(var Et=S.length;Et--;)Us(te,S[Et]);return te}),Jf=fl(function(y,S){return null==y?{}:function yp(y,S){return bp(y,S,function(te,He){return $u(y,He)})}(y,S)});function ic(y,S){if(null==y)return{};var te=At(ml(y),function(He){return[He]});return S=Ri(S),bp(y,te,function(He,Et){return S(He,Et[0])})}var ac=su(Ir),Gf=su(uo);function rc(y){return null==y?[]:la(y,Ir(y))}var bh=Ec(function(y,S,te){return S=S.toLowerCase(),y+(te?em(S):S)});function em(y){return lt(La(y).toLowerCase())}function bu(y){return(y=La(y))&&y.replace(Oa,Rl).replace(Dr,"")}var Ch=Ec(function(y,S,te){return y+(te?"-":"")+S.toLowerCase()}),gc=Ec(function(y,S,te){return y+(te?" ":"")+S.toLowerCase()}),Mh=kp("toLowerCase"),zh=Ec(function(y,S,te){return y+(te?"_":"")+S.toLowerCase()}),y_=Ec(function(y,S,te){return y+(te?" ":"")+lt(S)}),re=Ec(function(y,S,te){return y+(te?" ":"")+S.toUpperCase()}),lt=kp("toUpperCase");function Wt(y,S,te){return y=La(y),(S=te?t:S)===t?function ds(Sn){return fo.test(Sn)}(y)?function ma(Sn){return Sn.match(Rr)||[]}(y):function ze(Sn){return Sn.match(un)||[]}(y):y.match(S)||[]}var nn=Gi(function(y,S){try{return oe(y,t,S)}catch(te){return lp(te)?te:new Li(te)}}),bn=fl(function(y,S){return at(S,function(te){te=qs(te),Is(y,te,gf(y[te],y))}),y});function oi(y){return function(){return y}}var ii=nu(),Ui=nu(!0);function Qi(y){return y}function Lr(y){return Yt("function"==typeof y?y:So(y,1))}var $r=Gi(function(y,S){return function(te){return ar(te,y,S)}}),er=Gi(function(y,S){return function(te){return ar(y,te,S)}});function or(y,S,te){var He=Ir(S),Et=Ns(S,He);null==te&&(!gr(S)||!Et.length&&He.length)&&(te=S,S=y,y=this,Et=Ns(S,Ir(S)));var Gt=!(gr(te)&&"chain"in te&&!te.chain),pn=nc(y);return at(Et,function(xn){var En=S[xn];y[xn]=En,pn&&(y.prototype[xn]=function(){var zn=this.__chain__;if(Gt||zn){var ti=y(this.__wrapped__),li=ti.__actions__=Yo(this.__actions__);return li.push({func:En,args:arguments,thisArg:y}),ti.__chain__=zn,ti}return En.apply(y,on([this.value()],arguments))})}),y}function pr(){}var jo=cr(At),Ms=cr(me),xs=cr(Wn);function vr(y){return Pd(y)?Dt(qs(y)):function kh(y){return function(S){return es(S,y)}}(y)}var Gs=Fu(),Ks=Fu(!0);function $s(){return[]}function Fr(){return!1}var n_=Lu(function(y,S){return y+S},0),om=ru("ceil"),i_=Lu(function(y,S){return y/S},1),b_=ru("floor"),s_=Lu(function(y,S){return y*S},1),S_=ru("round"),l_=Lu(function(y,S){return y-S},0);return Vt.after=function $m(y,S){if("function"!=typeof S)throw new Wr(s);return y=ua(y),function(){if(--y<1)return S.apply(this,arguments)}},Vt.ary=Xm,Vt.assign=jr,Vt.assignIn=bl,Vt.assignInWith=Gu,Vt.assignWith=fh,Vt.at=pp,Vt.before=eh,Vt.bind=gf,Vt.bindAll=bn,Vt.bindKey=kl,Vt.castArray=function Uc(){if(!arguments.length)return[];var y=arguments[0];return aa(y)?y:[y]},Vt.chain=Qd,Vt.chunk=function Ih(y,S,te){S=(te?Po(y,S,te):S===t)?1:he(ua(S),0);var He=null==y?0:y.length;if(!He||S<1)return[];for(var Et=0,Gt=0,pn=Fn(Cr(He/S));EtEt?0:Et+te),(He=He===t||He>Et?Et:ua(He))<0&&(He+=Et),He=te>He?0:Lf(He);te>>0)?(y=La(y))&&("string"==typeof S||null!=S&&!Wu(S))&&!(S=io(S))&&Io(y)?Gl(nr(y),0,te):y.split(S,te):[]},Vt.spread=function ih(y,S){if("function"!=typeof y)throw new Wr(s);return S=null==S?0:he(ua(S),0),Gi(function(te){var He=te[S],Et=Gl(te,0,S);return He&&on(Et,He),oe(y,this,Et)})},Vt.tail=function Hd(y){var S=null==y?0:y.length;return S?ns(y,1,S):[]},Vt.take=function nf(y,S,te){return y&&y.length?ns(y,0,(S=te||S===t?1:ua(S))<0?0:S):[]},Vt.takeRight=function Lh(y,S,te){var He=null==y?0:y.length;return He?ns(y,(S=He-(S=te||S===t?1:ua(S)))<0?0:S,He):[]},Vt.takeRightWhile=function af(y,S){return y&&y.length?Pc(y,Ri(S,3),!1,!0):[]},Vt.takeWhile=function Nm(y,S){return y&&y.length?Pc(y,Ri(S,3)):[]},Vt.tap=function Wd(y,S){return S(y),y},Vt.throttle=function _u(y,S,te){var He=!0,Et=!0;if("function"!=typeof y)throw new Wr(s);return gr(te)&&(He="leading"in te?!!te.leading:He,Et="trailing"in te?!!te.trailing:Et),np(y,S,{leading:He,maxWait:S,trailing:Et})},Vt.thru=mc,Vt.toArray=If,Vt.toPairs=ac,Vt.toPairsIn=Gf,Vt.toPath=function e_(y){return aa(y)?At(y,qs):wo(y)?[y]:Yo(Fc(La(y)))},Vt.toPlainObject=_c,Vt.transform=function Kf(y,S,te){var He=aa(y),Et=He||tc(y)||qc(y);if(S=Ri(S,4),null==te){var Gt=y&&y.constructor;te=Et?He?new Gt:[]:gr(y)&&nc(Gt)?Mo(yo(y)):{}}return(Et?at:zr)(y,function(pn,xn,En){return S(te,pn,xn,En)}),te},Vt.unary=function Rc(y){return Xm(y,1)},Vt.union=rf,Vt.unionBy=Rm,Vt.unionWith=Um,Vt.uniq=function Vs(y){return y&&y.length?zl(y):[]},Vt.uniqBy=function Bm(y,S){return y&&y.length?zl(y,Ri(S,2)):[]},Vt.uniqWith=function mu(y,S){return S="function"==typeof S?S:t,y&&y.length?zl(y,t,S):[]},Vt.unset=function yh(y,S){return null==y||Us(y,S)},Vt.unzip=jd,Vt.unzipWith=of,Vt.update=function $f(y,S,te){return null==y?y:cc(y,S,bd(te))},Vt.updateWith=function Vo(y,S,te,He){return He="function"==typeof He?He:t,null==y?y:cc(y,S,bd(te),He)},Vt.values=rc,Vt.valuesIn=function ed(y){return null==y?[]:la(y,uo(y))},Vt.without=Ym,Vt.words=Wt,Vt.wrap=function op(y,S){return hu(bd(S),y)},Vt.xor=Jd,Vt.xorBy=sf,Vt.xorWith=lf,Vt.zip=qm,Vt.zipObject=function Vm(y,S){return Sp(y||[],S||[],Wl)},Vt.zipObjectDeep=function na(y,S){return Sp(y||[],S||[],Zu)},Vt.zipWith=cf,Vt.entries=ac,Vt.entriesIn=Gf,Vt.extend=bl,Vt.extendWith=Gu,or(Vt,Vt),Vt.add=n_,Vt.attempt=nn,Vt.camelCase=bh,Vt.capitalize=em,Vt.ceil=om,Vt.clamp=function yu(y,S,te){return te===t&&(te=S,S=t),te!==t&&(te=(te=Kr(te))==te?te:0),S!==t&&(S=(S=Kr(S))==S?S:0),ul(Kr(y),S,te)},Vt.clone=function gu(y){return So(y,4)},Vt.cloneDeep=function ah(y){return So(y,5)},Vt.cloneDeepWith=function Mf(y,S){return So(y,5,S="function"==typeof S?S:t)},Vt.cloneWith=function Bc(y,S){return So(y,4,S="function"==typeof S?S:t)},Vt.conformsTo=function xf(y,S){return null==S||Uo(y,S,Ir(S))},Vt.deburr=bu,Vt.defaultTo=function pi(y,S){return null==y||y!=y?S:y},Vt.divide=i_,Vt.endsWith=function tm(y,S,te){y=La(y),S=io(S);var He=y.length,Et=te=te===t?He:ul(ua(te),0,He);return(te-=S.length)>=0&&y.slice(te,Et)==S},Vt.eq=as,Vt.escape=function nm(y){return(y=La(y))&&rn.test(y)?y.replace(si,Ts):y},Vt.escapeRegExp=function Jh(y){return(y=La(y))&&Ve.test(y)?y.replace(Je,"\\$&"):y},Vt.every=function hc(y,S,te){var He=aa(y)?me:ld;return te&&Po(y,S,te)&&(S=t),He(y,Ri(S,3))},Vt.find=Hu,Vt.findIndex=Vp,Vt.findKey=function Nf(y,S){return Se(y,Ri(S,3),zr)},Vt.findLast=ju,Vt.findLastIndex=Rd,Vt.findLastKey=function Rf(y,S){return Se(y,Ri(S,3),Al)},Vt.floor=b_,Vt.forEach=Jm,Vt.forEachRight=ff,Vt.forIn=function Uf(y,S){return null==y?y:Ls(y,Ri(S,3),uo)},Vt.forInRight=function Bf(y,S){return null==y?y:Fs(y,Ri(S,3),uo)},Vt.forOwn=function Il(y,S){return y&&zr(y,Ri(S,3))},Vt.forOwnRight=function Ku(y,S){return y&&Al(y,Ri(S,3))},Vt.get=Yf,Vt.gt=sp,Vt.gte=Sf,Vt.has=function fp(y,S){return null!=y&&Ru(y,S,Ou)},Vt.hasIn=$u,Vt.head=jp,Vt.identity=Qi,Vt.includes=function Wm(y,S,te,He){y=qo(y)?y:rc(y),te=te&&!He?ua(te):0;var Et=y.length;return te<0&&(te=he(Et+te,0)),os(y)?te<=Et&&y.indexOf(S,te)>-1:!!Et&&de(y,S,te)>-1},Vt.indexOf=function Jp(y,S,te){var He=null==y?0:y.length;if(!He)return-1;var Et=null==te?0:ua(te);return Et<0&&(Et=he(He+Et,0)),de(y,S,Et)},Vt.inRange=function jc(y,S,te){return S=Js(S),te===t?(te=S,S=0):te=Js(te),function Ao(y,S,te){return y>=ke(S,te)&&y=-ve&&y<=ve},Vt.isSet=Ef,Vt.isString=os,Vt.isSymbol=wo,Vt.isTypedArray=qc,Vt.isUndefined=function Zf(y){return y===t},Vt.isWeakMap=function Hh(y){return dr(y)&&ur(y)==Pt},Vt.isWeakSet=function kf(y){return dr(y)&&"[object WeakSet]"==Gr(y)},Vt.join=function Zm(y,S){return null==y?"":Qc.call(y,S)},Vt.kebabCase=Ch,Vt.last=Do,Vt.lastIndexOf=function km(y,S,te){var He=null==y?0:y.length;if(!He)return-1;var Et=He;return te!==t&&(Et=(Et=ua(te))<0?he(He+Et,0):ke(Et,He-1)),S==S?function Pi(Sn,Rn,Fn){for(var mi=Fn+1;mi--;)if(Sn[mi]===Rn)return mi;return mi}(y,S,Et):ae(y,Be,Et,!0)},Vt.lowerCase=gc,Vt.lowerFirst=Mh,Vt.lt=uh,Vt.lte=dh,Vt.max=function a_(y){return y&&y.length?Mc(y,Qi,Kc):t},Vt.maxBy=function C_(y,S){return y&&y.length?Mc(y,Ri(S,2),Kc):t},Vt.mean=function r_(y){return nt(y,Qi)},Vt.meanBy=function o_(y,S){return nt(y,Ri(S,2))},Vt.min=function M_(y){return y&&y.length?Mc(y,Qi,Di):t},Vt.minBy=function x_(y,S){return y&&y.length?Mc(y,Ri(S,2),Di):t},Vt.stubArray=$s,Vt.stubFalse=Fr,Vt.stubObject=function Jo(){return{}},Vt.stubString=function Kh(){return""},Vt.stubTrue=function $h(){return!0},Vt.multiply=s_,Vt.nth=function Gp(y,S){return y&&y.length?vp(y,ua(S)):t},Vt.noConflict=function Ho(){return Ta._===this&&(Ta._=Ko),this},Vt.noop=pr,Vt.now=Zl,Vt.pad=function Qh(y,S,te){y=La(y);var He=(S=ua(S))?fa(y):0;if(!S||He>=S)return y;var Et=(S-He)/2;return au(Co(Et),te)+y+au(Cr(Et),te)},Vt.padEnd=function Wh(y,S,te){y=La(y);var He=(S=ua(S))?fa(y):0;return S&&HeS){var He=y;y=S,S=He}if(te||y%1||S%1){var Et=Fe();return ke(y+Et*(S-y+ro("1e-"+((Et+"").length-1))),S)}return md(y,S)},Vt.reduce=function hf(y,S,te){var He=aa(y)?Pn:kn,Et=arguments.length<3;return He(y,Ri(S,4),te,Et,ys)},Vt.reduceRight=function _f(y,S,te){var He=aa(y)?Yn:kn,Et=arguments.length<3;return He(y,Ri(S,4),te,Et,Du)},Vt.repeat=function im(y,S,te){return S=(te?Po(y,S,te):S===t)?1:ua(S),Xc(La(y),S)},Vt.replace=function am(){var y=arguments,S=La(y[0]);return y.length<3?S:S.replace(y[1],y[2])},Vt.result=function Qf(y,S,te){var He=-1,Et=(S=Dl(S,y)).length;for(Et||(Et=1,y=t);++Heve)return[];var te=Ee,He=ke(y,Ee);S=Ri(S),y-=Ee;for(var Et=Pa(He,S);++te=Gt)return y;var xn=te-fa(He);if(xn<1)return He;var En=pn?Gl(pn,0,xn).join(""):y.slice(0,xn);if(Et===t)return En+He;if(pn&&(xn+=En.length-xn),Wu(Et)){if(y.slice(xn).search(Et)){var zn,ti=En;for(Et.global||(Et=tl(Et.source,La(An.exec(Et))+"g")),Et.lastIndex=0;zn=Et.exec(ti);)var li=zn.index;En=En.slice(0,li===t?xn:li)}}else if(y.indexOf(io(Et),xn)!=xn){var yi=En.lastIndexOf(Et);yi>-1&&(En=En.slice(0,yi))}return En+He},Vt.unescape=function U(y){return(y=La(y))&&fi.test(y)?y.replace(Un,As):y},Vt.uniqueId=function t_(y){var S=++Ds;return La(y)+S},Vt.upperCase=re,Vt.upperFirst=lt,Vt.each=Jm,Vt.eachRight=ff,Vt.first=jp,or(Vt,function(){var y={};return zr(Vt,function(S,te){ba.call(Vt.prototype,te)||(y[te]=S)}),y}(),{chain:!1}),Vt.VERSION="4.17.21",at(["bind","bindKey","curry","curryRight","partial","partialRight"],function(y){Vt[y].placeholder=Vt}),at(["drop","take"],function(y,S){ha.prototype[y]=function(te){te=te===t?1:he(ua(te),0);var He=this.__filtered__&&!S?new ha(this):this.clone();return He.__filtered__?He.__takeCount__=ke(te,He.__takeCount__):He.__views__.push({size:ke(te,Ee),type:y+(He.__dir__<0?"Right":"")}),He},ha.prototype[y+"Right"]=function(te){return this.reverse()[y](te).reverse()}}),at(["filter","map","takeWhile"],function(y,S){var te=S+1,He=1==te||3==te;ha.prototype[y]=function(Et){var Gt=this.clone();return Gt.__iteratees__.push({iteratee:Ri(Et,3),type:te}),Gt.__filtered__=Gt.__filtered__||He,Gt}}),at(["head","last"],function(y,S){var te="take"+(S?"Right":"");ha.prototype[y]=function(){return this[te](1).value()[0]}}),at(["initial","tail"],function(y,S){var te="drop"+(S?"":"Right");ha.prototype[y]=function(){return this.__filtered__?new ha(this):this[te](1)}}),ha.prototype.compact=function(){return this.filter(Qi)},ha.prototype.find=function(y){return this.filter(y).head()},ha.prototype.findLast=function(y){return this.reverse().find(y)},ha.prototype.invokeMap=Gi(function(y,S){return"function"==typeof y?new ha(this):this.map(function(te){return ar(te,y,S)})}),ha.prototype.reject=function(y){return this.filter(Hs(Ri(y)))},ha.prototype.slice=function(y,S){y=ua(y);var te=this;return te.__filtered__&&(y>0||S<0)?new ha(te):(y<0?te=te.takeRight(-y):y&&(te=te.drop(y)),S!==t&&(te=(S=ua(S))<0?te.dropRight(-S):te.take(S-y)),te)},ha.prototype.takeRightWhile=function(y){return this.reverse().takeWhile(y).reverse()},ha.prototype.toArray=function(){return this.take(Ee)},zr(ha.prototype,function(y,S){var te=/^(?:filter|find|map|reject)|While$/.test(S),He=/^(?:head|last)$/.test(S),Et=Vt[He?"take"+("last"==S?"Right":""):S],Gt=He||/^find/.test(S);!Et||(Vt.prototype[S]=function(){var pn=this.__wrapped__,xn=He?[1]:arguments,En=pn instanceof ha,zn=xn[0],ti=En||aa(pn),li=function(Fa){var Oo=Et.apply(Vt,on([Fa],xn));return He&&yi?Oo[0]:Oo};ti&&te&&"function"==typeof zn&&1!=zn.length&&(En=ti=!1);var yi=this.__chain__,Ei=!!this.__actions__.length,Hi=Gt&&!yi,ga=En&&!Ei;if(!Gt&&ti){pn=ga?pn:new ha(this);var ji=y.apply(pn,xn);return ji.__actions__.push({func:mc,args:[li],thisArg:t}),new Zr(ji,yi)}return Hi&&ga?y.apply(this,xn):(ji=this.thru(li),Hi?He?ji.value()[0]:ji.value():ji)})}),at(["pop","push","shift","sort","splice","unshift"],function(y){var S=nl[y],te=/^(?:push|sort|unshift)$/.test(y)?"tap":"thru",He=/^(?:pop|shift)$/.test(y);Vt.prototype[y]=function(){var Et=arguments;if(He&&!this.__chain__){var Gt=this.value();return S.apply(aa(Gt)?Gt:[],Et)}return this[te](function(pn){return S.apply(aa(pn)?pn:[],Et)})}}),zr(ha.prototype,function(y,S){var te=Vt[S];if(te){var He=te.name+"";ba.call(Ca,He)||(Ca[He]=[]),Ca[He].push({name:S,func:te})}}),Ca[iu(t,2).name]=[{name:"wrapper",func:t}],ha.prototype.clone=function id(){var y=new ha(this.__wrapped__);return y.__actions__=Yo(this.__actions__),y.__dir__=this.__dir__,y.__filtered__=this.__filtered__,y.__iteratees__=Yo(this.__iteratees__),y.__takeCount__=this.__takeCount__,y.__views__=Yo(this.__views__),y},ha.prototype.reverse=function Vl(){if(this.__filtered__){var y=new ha(this);y.__dir__=-1,y.__filtered__=!0}else(y=this.clone()).__dir__*=-1;return y},ha.prototype.value=function sl(){var y=this.__wrapped__.value(),S=this.__dir__,te=aa(y),He=S<0,Et=te?y.length:0,Gt=function ym(y,S,te){for(var He=-1,Et=te.length;++He=this.__values__.length;return{done:y,value:y?t:this.__values__[this.__index__++]}},Vt.prototype.plant=function Gd(y){for(var S,te=this;te instanceof ks;){var He=Ld(te);He.__index__=0,He.__values__=t,S?Et.__wrapped__=He:S=He;var Et=He;te=te.__wrapped__}return Et.__wrapped__=y,S},Vt.prototype.reverse=function df(){var y=this.__wrapped__;if(y instanceof ha){var S=y;return this.__actions__.length&&(S=new ha(this)),(S=S.reverse()).__actions__.push({func:mc,args:[Vu],thisArg:t}),new Zr(S,this.__chain__)}return this.thru(Vu)},Vt.prototype.toJSON=Vt.prototype.valueOf=Vt.prototype.value=function Kd(){return rr(this.__wrapped__,this.__actions__)},Vt.prototype.first=Vt.prototype.head,Es&&(Vt.prototype[Es]=function vl(){return this}),Vt}();Ta._=Ps,(P=function(){return Ps}.call(K,n,K,dt))!==t&&(dt.exports=P)}.call(this)},58685:function(dt,K,n){!function(P){"use strict";P.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(p){return/^nm$/i.test(p)},meridiem:function(p,d,s){return p<12?s?"vm":"VM":s?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[M\xf4re om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(p){return p+(1===p||8===p||p>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},4312:function(dt,K,n){!function(P){"use strict";var t=function(f){return 0===f?0:1===f?1:2===f?2:f%100>=3&&f%100<=10?3:f%100>=11?4:5},e={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},p=function(f){return function(T,B,I,v){var j=t(T),Q=e[f][t(T)];return 2===j&&(Q=Q[B?0:1]),Q.replace(/%d/i,T)}},d=["\u062c\u0627\u0646\u0641\u064a","\u0641\u064a\u0641\u0631\u064a","\u0645\u0627\u0631\u0633","\u0623\u0641\u0631\u064a\u0644","\u0645\u0627\u064a","\u062c\u0648\u0627\u0646","\u062c\u0648\u064a\u0644\u064a\u0629","\u0623\u0648\u062a","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];P.defineLocale("ar-dz",{months:d,monthsShort:d,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(f){return"\u0645"===f},meridiem:function(f,T,B){return f<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:p("s"),ss:p("s"),m:p("m"),mm:p("m"),h:p("h"),hh:p("h"),d:p("d"),dd:p("d"),M:p("M"),MM:p("M"),y:p("y"),yy:p("y")},postformat:function(f){return f.replace(/,/g,"\u060c")},week:{dow:0,doy:4}})}(n(56908))},32614:function(dt,K,n){!function(P){"use strict";P.defineLocale("ar-kw",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062a\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062a\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:0,doy:12}})}(n(56908))},18630:function(dt,K,n){!function(P){"use strict";var t={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},e=function(T){return 0===T?0:1===T?1:2===T?2:T%100>=3&&T%100<=10?3:T%100>=11?4:5},p={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},d=function(T){return function(B,I,v,j){var Q=e(B),J=p[T][e(B)];return 2===Q&&(J=J[I?0:1]),J.replace(/%d/i,B)}},s=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];P.defineLocale("ar-ly",{months:s,monthsShort:s,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(T){return"\u0645"===T},meridiem:function(T,B,I){return T<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:d("s"),ss:d("s"),m:d("m"),mm:d("m"),h:d("h"),hh:d("h"),d:d("d"),dd:d("d"),M:d("M"),MM:d("M"),y:d("y"),yy:d("y")},preparse:function(T){return T.replace(/\u060c/g,",")},postformat:function(T){return T.replace(/\d/g,function(B){return t[B]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}})}(n(56908))},28674:function(dt,K,n){!function(P){"use strict";P.defineLocale("ar-ma",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:6,doy:12}})}(n(56908))},49032:function(dt,K,n){!function(P){"use strict";var t={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},e={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"};P.defineLocale("ar-sa",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(s){return"\u0645"===s},meridiem:function(s,h,f){return s<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},preparse:function(s){return s.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(h){return e[h]}).replace(/\u060c/g,",")},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]}).replace(/,/g,"\u060c")},week:{dow:0,doy:6}})}(n(56908))},24730:function(dt,K,n){!function(P){"use strict";P.defineLocale("ar-tn",{months:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:1,doy:4}})}(n(56908))},254:function(dt,K,n){!function(P){"use strict";var t={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},e={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},p=function(B){return 0===B?0:1===B?1:2===B?2:B%100>=3&&B%100<=10?3:B%100>=11?4:5},d={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},s=function(B){return function(I,v,j,Q){var J=p(I),Z=d[B][p(I)];return 2===J&&(Z=Z[v?0:1]),Z.replace(/%d/i,I)}},h=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];P.defineLocale("ar",{months:h,monthsShort:h,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(B){return"\u0645"===B},meridiem:function(B,I,v){return B<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:s("s"),ss:s("s"),m:s("m"),mm:s("m"),h:s("h"),hh:s("h"),d:s("d"),dd:s("d"),M:s("M"),MM:s("M"),y:s("y"),yy:s("y")},preparse:function(B){return B.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(I){return e[I]}).replace(/\u060c/g,",")},postformat:function(B){return B.replace(/\d/g,function(I){return t[I]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}})}(n(56908))},53052:function(dt,K,n){!function(P){"use strict";var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-\xfcnc\xfc",4:"-\xfcnc\xfc",100:"-\xfcnc\xfc",6:"-nc\u0131",9:"-uncu",10:"-uncu",30:"-uncu",60:"-\u0131nc\u0131",90:"-\u0131nc\u0131"};P.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ert\u0259si_\xc7\u0259r\u015f\u0259nb\u0259 ax\u015fam\u0131_\xc7\u0259r\u015f\u0259nb\u0259_C\xfcm\u0259 ax\u015fam\u0131_C\xfcm\u0259_\u015e\u0259nb\u0259".split("_"),weekdaysShort:"Baz_BzE_\xc7Ax_\xc7\u0259r_CAx_C\xfcm_\u015e\u0259n".split("_"),weekdaysMin:"Bz_BE_\xc7A_\xc7\u0259_CA_C\xfc_\u015e\u0259".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[g\u0259l\u0259n h\u0259ft\u0259] dddd [saat] LT",lastDay:"[d\xfcn\u0259n] LT",lastWeek:"[ke\xe7\u0259n h\u0259ft\u0259] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \u0259vv\u0259l",s:"birne\xe7\u0259 saniy\u0259",ss:"%d saniy\u0259",m:"bir d\u0259qiq\u0259",mm:"%d d\u0259qiq\u0259",h:"bir saat",hh:"%d saat",d:"bir g\xfcn",dd:"%d g\xfcn",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gec\u0259|s\u0259h\u0259r|g\xfcnd\xfcz|ax\u015fam/,isPM:function(d){return/^(g\xfcnd\xfcz|ax\u015fam)$/.test(d)},meridiem:function(d,s,h){return d<4?"gec\u0259":d<12?"s\u0259h\u0259r":d<17?"g\xfcnd\xfcz":"ax\u015fam"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0131nc\u0131|inci|nci|\xfcnc\xfc|nc\u0131|uncu)/,ordinal:function(d){if(0===d)return d+"-\u0131nc\u0131";var s=d%10;return d+(t[s]||t[d%100-s]||t[d>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},60150:function(dt,K,n){!function(P){"use strict";function e(d,s,h){return"m"===h?s?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443":"h"===h?s?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443":d+" "+function t(d,s){var h=d.split("_");return s%10==1&&s%100!=11?h[0]:s%10>=2&&s%10<=4&&(s%100<10||s%100>=20)?h[1]:h[2]}({ss:s?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434",mm:s?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d",hh:s?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d",dd:"\u0434\u0437\u0435\u043d\u044c_\u0434\u043d\u0456_\u0434\u0437\u0451\u043d",MM:"\u043c\u0435\u0441\u044f\u0446_\u043c\u0435\u0441\u044f\u0446\u044b_\u043c\u0435\u0441\u044f\u0446\u0430\u045e",yy:"\u0433\u043e\u0434_\u0433\u0430\u0434\u044b_\u0433\u0430\u0434\u043e\u045e"}[h],+d)}P.defineLocale("be",{months:{format:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044f_\u043b\u044e\u0442\u0430\u0433\u0430_\u0441\u0430\u043a\u0430\u0432\u0456\u043a\u0430_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a\u0430_\u0442\u0440\u0430\u045e\u043d\u044f_\u0447\u044d\u0440\u0432\u0435\u043d\u044f_\u043b\u0456\u043f\u0435\u043d\u044f_\u0436\u043d\u0456\u045e\u043d\u044f_\u0432\u0435\u0440\u0430\u0441\u043d\u044f_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a\u0430_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434\u0430_\u0441\u043d\u0435\u0436\u043d\u044f".split("_"),standalone:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c_\u043b\u044e\u0442\u044b_\u0441\u0430\u043a\u0430\u0432\u0456\u043a_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a_\u0442\u0440\u0430\u0432\u0435\u043d\u044c_\u0447\u044d\u0440\u0432\u0435\u043d\u044c_\u043b\u0456\u043f\u0435\u043d\u044c_\u0436\u043d\u0456\u0432\u0435\u043d\u044c_\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434_\u0441\u043d\u0435\u0436\u0430\u043d\u044c".split("_")},monthsShort:"\u0441\u0442\u0443\u0434_\u043b\u044e\u0442_\u0441\u0430\u043a_\u043a\u0440\u0430\u0441_\u0442\u0440\u0430\u0432_\u0447\u044d\u0440\u0432_\u043b\u0456\u043f_\u0436\u043d\u0456\u0432_\u0432\u0435\u0440_\u043a\u0430\u0441\u0442_\u043b\u0456\u0441\u0442_\u0441\u043d\u0435\u0436".split("_"),weekdays:{format:"\u043d\u044f\u0434\u0437\u0435\u043b\u044e_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0443_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0443_\u0441\u0443\u0431\u043e\u0442\u0443".split("_"),standalone:"\u043d\u044f\u0434\u0437\u0435\u043b\u044f_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0430_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0430_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),isFormat:/\[ ?[\u0423\u0443\u045e] ?(?:\u043c\u0456\u043d\u0443\u043b\u0443\u044e|\u043d\u0430\u0441\u0442\u0443\u043f\u043d\u0443\u044e)? ?\] ?dddd/},weekdaysShort:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., HH:mm",LLLL:"dddd, D MMMM YYYY \u0433., HH:mm"},calendar:{sameDay:"[\u0421\u0451\u043d\u043d\u044f \u045e] LT",nextDay:"[\u0417\u0430\u045e\u0442\u0440\u0430 \u045e] LT",lastDay:"[\u0423\u0447\u043e\u0440\u0430 \u045e] LT",nextWeek:function(){return"[\u0423] dddd [\u045e] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u0443\u044e] dddd [\u045e] LT";case 1:case 2:case 4:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u044b] dddd [\u045e] LT"}},sameElse:"L"},relativeTime:{future:"\u043f\u0440\u0430\u0437 %s",past:"%s \u0442\u0430\u043c\u0443",s:"\u043d\u0435\u043a\u0430\u043b\u044c\u043a\u0456 \u0441\u0435\u043a\u0443\u043d\u0434",m:e,mm:e,h:e,hh:e,d:"\u0434\u0437\u0435\u043d\u044c",dd:e,M:"\u043c\u0435\u0441\u044f\u0446",MM:e,y:"\u0433\u043e\u0434",yy:e},meridiemParse:/\u043d\u043e\u0447\u044b|\u0440\u0430\u043d\u0456\u0446\u044b|\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430/,isPM:function(s){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430)$/.test(s)},meridiem:function(s,h,f){return s<4?"\u043d\u043e\u0447\u044b":s<12?"\u0440\u0430\u043d\u0456\u0446\u044b":s<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u0430\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0456|\u044b|\u0433\u0430)/,ordinal:function(s,h){switch(h){case"M":case"d":case"DDD":case"w":case"W":return s%10!=2&&s%10!=3||s%100==12||s%100==13?s+"-\u044b":s+"-\u0456";case"D":return s+"-\u0433\u0430";default:return s}},week:{dow:1,doy:7}})}(n(56908))},63069:function(dt,K,n){!function(P){"use strict";P.defineLocale("bg",{months:"\u044f\u043d\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438_\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438_\u043d\u043e\u0435\u043c\u0432\u0440\u0438_\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438".split("_"),monthsShort:"\u044f\u043d\u0443_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433_\u0441\u0435\u043f_\u043e\u043a\u0442_\u043d\u043e\u0435_\u0434\u0435\u043a".split("_"),weekdays:"\u043d\u0435\u0434\u0435\u043b\u044f_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u044f\u0434\u0430_\u0447\u0435\u0442\u0432\u044a\u0440\u0442\u044a\u043a_\u043f\u0435\u0442\u044a\u043a_\u0441\u044a\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434_\u043f\u043e\u043d_\u0432\u0442\u043e_\u0441\u0440\u044f_\u0447\u0435\u0442_\u043f\u0435\u0442_\u0441\u044a\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u043d\u0435\u0441 \u0432] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432] LT",nextWeek:"dddd [\u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[\u041c\u0438\u043d\u0430\u043b\u0430\u0442\u0430] dddd [\u0432] LT";case 1:case 2:case 4:case 5:return"[\u041c\u0438\u043d\u0430\u043b\u0438\u044f] dddd [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0441\u043b\u0435\u0434 %s",past:"\u043f\u0440\u0435\u0434\u0438 %s",s:"\u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434\u0438",m:"\u043c\u0438\u043d\u0443\u0442\u0430",mm:"%d \u043c\u0438\u043d\u0443\u0442\u0438",h:"\u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0434\u0435\u043d",dd:"%d \u0434\u0435\u043d\u0430",M:"\u043c\u0435\u0441\u0435\u0446",MM:"%d \u043c\u0435\u0441\u0435\u0446\u0430",y:"\u0433\u043e\u0434\u0438\u043d\u0430",yy:"%d \u0433\u043e\u0434\u0438\u043d\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0435\u0432|\u0435\u043d|\u0442\u0438|\u0432\u0438|\u0440\u0438|\u043c\u0438)/,ordinal:function(p){var d=p%10,s=p%100;return 0===p?p+"-\u0435\u0432":0===s?p+"-\u0435\u043d":s>10&&s<20?p+"-\u0442\u0438":1===d?p+"-\u0432\u0438":2===d?p+"-\u0440\u0438":7===d||8===d?p+"-\u043c\u0438":p+"-\u0442\u0438"},week:{dow:1,doy:7}})}(n(56908))},13466:function(dt,K,n){!function(P){"use strict";P.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_M\u025bkalo_Zuw\u025bnkalo_Zuluyekalo_Utikalo_S\u025btanburukalo_\u0254kut\u0254burukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_M\u025b_Zuw_Zul_Uti_S\u025bt_\u0254ku_Now_Des".split("_"),weekdays:"Kari_Nt\u025bn\u025bn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Nt\u025b_Tar_Ara_Ala_Jum_Sib".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm"},calendar:{sameDay:"[Bi l\u025br\u025b] LT",nextDay:"[Sini l\u025br\u025b] LT",nextWeek:"dddd [don l\u025br\u025b] LT",lastDay:"[Kunu l\u025br\u025b] LT",lastWeek:"dddd [t\u025bm\u025bnen l\u025br\u025b] LT",sameElse:"L"},relativeTime:{future:"%s k\u0254n\u0254",past:"a b\u025b %s b\u0254",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"l\u025br\u025b kelen",hh:"l\u025br\u025b %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}})}(n(56908))},18516:function(dt,K,n){!function(P){"use strict";var t={1:"\u09e7",2:"\u09e8",3:"\u09e9",4:"\u09ea",5:"\u09eb",6:"\u09ec",7:"\u09ed",8:"\u09ee",9:"\u09ef",0:"\u09e6"},e={"\u09e7":"1","\u09e8":"2","\u09e9":"3","\u09ea":"4","\u09eb":"5","\u09ec":"6","\u09ed":"7","\u09ee":"8","\u09ef":"9","\u09e6":"0"};P.defineLocale("bn",{months:"\u099c\u09be\u09a8\u09c1\u09df\u09be\u09b0\u09bf_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09df\u09be\u09b0\u09bf_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0_\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0_\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0_\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0".split("_"),monthsShort:"\u099c\u09be\u09a8\u09c1_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f_\u0985\u0995\u09cd\u099f\u09cb_\u09a8\u09ad\u09c7_\u09a1\u09bf\u09b8\u09c7".split("_"),weekdays:"\u09b0\u09ac\u09bf\u09ac\u09be\u09b0_\u09b8\u09cb\u09ae\u09ac\u09be\u09b0_\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0_\u09ac\u09c1\u09a7\u09ac\u09be\u09b0_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0_\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0_\u09b6\u09a8\u09bf\u09ac\u09be\u09b0".split("_"),weekdaysShort:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),weekdaysMin:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),longDateFormat:{LT:"A h:mm \u09b8\u09ae\u09df",LTS:"A h:mm:ss \u09b8\u09ae\u09df",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u09b8\u09ae\u09df",LLLL:"dddd, D MMMM YYYY, A h:mm \u09b8\u09ae\u09df"},calendar:{sameDay:"[\u0986\u099c] LT",nextDay:"[\u0986\u0997\u09be\u09ae\u09c0\u0995\u09be\u09b2] LT",nextWeek:"dddd, LT",lastDay:"[\u0997\u09a4\u0995\u09be\u09b2] LT",lastWeek:"[\u0997\u09a4] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u09aa\u09b0\u09c7",past:"%s \u0986\u0997\u09c7",s:"\u0995\u09df\u09c7\u0995 \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",ss:"%d \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",m:"\u098f\u0995 \u09ae\u09bf\u09a8\u09bf\u099f",mm:"%d \u09ae\u09bf\u09a8\u09bf\u099f",h:"\u098f\u0995 \u0998\u09a8\u09cd\u099f\u09be",hh:"%d \u0998\u09a8\u09cd\u099f\u09be",d:"\u098f\u0995 \u09a6\u09bf\u09a8",dd:"%d \u09a6\u09bf\u09a8",M:"\u098f\u0995 \u09ae\u09be\u09b8",MM:"%d \u09ae\u09be\u09b8",y:"\u098f\u0995 \u09ac\u099b\u09b0",yy:"%d \u09ac\u099b\u09b0"},preparse:function(s){return s.replace(/[\u09e7\u09e8\u09e9\u09ea\u09eb\u09ec\u09ed\u09ee\u09ef\u09e6]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u09b0\u09be\u09a4|\u09b8\u0995\u09be\u09b2|\u09a6\u09c1\u09aa\u09c1\u09b0|\u09ac\u09bf\u0995\u09be\u09b2|\u09b0\u09be\u09a4/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u09b0\u09be\u09a4"===h&&s>=4||"\u09a6\u09c1\u09aa\u09c1\u09b0"===h&&s<5||"\u09ac\u09bf\u0995\u09be\u09b2"===h?s+12:s},meridiem:function(s,h,f){return s<4?"\u09b0\u09be\u09a4":s<10?"\u09b8\u0995\u09be\u09b2":s<17?"\u09a6\u09c1\u09aa\u09c1\u09b0":s<20?"\u09ac\u09bf\u0995\u09be\u09b2":"\u09b0\u09be\u09a4"},week:{dow:0,doy:6}})}(n(56908))},26273:function(dt,K,n){!function(P){"use strict";var t={1:"\u0f21",2:"\u0f22",3:"\u0f23",4:"\u0f24",5:"\u0f25",6:"\u0f26",7:"\u0f27",8:"\u0f28",9:"\u0f29",0:"\u0f20"},e={"\u0f21":"1","\u0f22":"2","\u0f23":"3","\u0f24":"4","\u0f25":"5","\u0f26":"6","\u0f27":"7","\u0f28":"8","\u0f29":"9","\u0f20":"0"};P.defineLocale("bo",{months:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f66\u0f74\u0f58\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54".split("_"),monthsShort:"\u0f5f\u0fb3\u0f0b1_\u0f5f\u0fb3\u0f0b2_\u0f5f\u0fb3\u0f0b3_\u0f5f\u0fb3\u0f0b4_\u0f5f\u0fb3\u0f0b5_\u0f5f\u0fb3\u0f0b6_\u0f5f\u0fb3\u0f0b7_\u0f5f\u0fb3\u0f0b8_\u0f5f\u0fb3\u0f0b9_\u0f5f\u0fb3\u0f0b10_\u0f5f\u0fb3\u0f0b11_\u0f5f\u0fb3\u0f0b12".split("_"),monthsShortRegex:/^(\u0f5f\u0fb3\u0f0b\d{1,2})/,monthsParseExact:!0,weekdays:"\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysShort:"\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysMin:"\u0f49\u0f72_\u0f5f\u0fb3_\u0f58\u0f72\u0f42_\u0f63\u0fb7\u0f42_\u0f55\u0f74\u0f62_\u0f66\u0f44\u0f66_\u0f66\u0fa4\u0f7a\u0f53".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0f51\u0f72\u0f0b\u0f62\u0f72\u0f44] LT",nextDay:"[\u0f66\u0f44\u0f0b\u0f49\u0f72\u0f53] LT",nextWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f62\u0f97\u0f7a\u0f66\u0f0b\u0f58], LT",lastDay:"[\u0f41\u0f0b\u0f66\u0f44] LT",lastWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f58\u0f50\u0f60\u0f0b\u0f58] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0f63\u0f0b",past:"%s \u0f66\u0f94\u0f53\u0f0b\u0f63",s:"\u0f63\u0f58\u0f0b\u0f66\u0f44",ss:"%d \u0f66\u0f90\u0f62\u0f0b\u0f46\u0f0d",m:"\u0f66\u0f90\u0f62\u0f0b\u0f58\u0f0b\u0f42\u0f45\u0f72\u0f42",mm:"%d \u0f66\u0f90\u0f62\u0f0b\u0f58",h:"\u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51\u0f0b\u0f42\u0f45\u0f72\u0f42",hh:"%d \u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51",d:"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f45\u0f72\u0f42",dd:"%d \u0f49\u0f72\u0f53\u0f0b",M:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f45\u0f72\u0f42",MM:"%d \u0f5f\u0fb3\u0f0b\u0f56",y:"\u0f63\u0f7c\u0f0b\u0f42\u0f45\u0f72\u0f42",yy:"%d \u0f63\u0f7c"},preparse:function(s){return s.replace(/[\u0f21\u0f22\u0f23\u0f24\u0f25\u0f26\u0f27\u0f28\u0f29\u0f20]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c|\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66|\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44|\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42|\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"===h&&s>=4||"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44"===h&&s<5||"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42"===h?s+12:s},meridiem:function(s,h,f){return s<4?"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c":s<10?"\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66":s<17?"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44":s<20?"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42":"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"},week:{dow:0,doy:6}})}(n(56908))},9588:function(dt,K,n){!function(P){"use strict";function t(J,Z,A){return J+" "+function d(J,Z){return 2===Z?function s(J){var Z={m:"v",b:"v",d:"z"};return void 0===Z[J.charAt(0)]?J:Z[J.charAt(0)]+J.substring(1)}(J):J}({mm:"munutenn",MM:"miz",dd:"devezh"}[A],J)}function p(J){return J>9?p(J%10):J}var h=[/^gen/i,/^c[\u02bc\']hwe/i,/^meu/i,/^ebr/i,/^mae/i,/^(mez|eve)/i,/^gou/i,/^eos/i,/^gwe/i,/^her/i,/^du/i,/^ker/i],f=/^(genver|c[\u02bc\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[\u02bc\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,j=[/^Su/i,/^Lu/i,/^Me([^r]|$)/i,/^Mer/i,/^Ya/i,/^Gw/i,/^Sa/i];P.defineLocale("br",{months:"Genver_C\u02bchwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C\u02bchwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc\u02bcher_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParse:j,fullWeekdaysParse:[/^sul/i,/^lun/i,/^meurzh/i,/^merc[\u02bc\']her/i,/^yaou/i,/^gwener/i,/^sadorn/i],shortWeekdaysParse:[/^Sul/i,/^Lun/i,/^Meu/i,/^Mer/i,/^Yao/i,/^Gwe/i,/^Sad/i],minWeekdaysParse:j,monthsRegex:f,monthsShortRegex:f,monthsStrictRegex:/^(genver|c[\u02bc\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,monthsShortStrictRegex:/^(gen|c[\u02bc\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,monthsParse:h,longMonthsParse:h,shortMonthsParse:h,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY HH:mm",LLLL:"dddd, D [a viz] MMMM YYYY HH:mm"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc\u02bchoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec\u02bch da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s \u02bczo",s:"un nebeud segondenno\xf9",ss:"%d eilenn",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:function e(J){switch(p(J)){case 1:case 3:case 4:case 5:case 9:return J+" bloaz";default:return J+" vloaz"}}},dayOfMonthOrdinalParse:/\d{1,2}(a\xf1|vet)/,ordinal:function(Z){return Z+(1===Z?"a\xf1":"vet")},week:{dow:1,doy:4},meridiemParse:/a.m.|g.m./,isPM:function(Z){return"g.m."===Z},meridiem:function(Z,A,N){return Z<12?"a.m.":"g.m."}})}(n(56908))},19815:function(dt,K,n){!function(P){"use strict";function t(p,d,s){var h=p+" ";switch(s){case"ss":return h+(1===p?"sekunda":2===p||3===p||4===p?"sekunde":"sekundi");case"m":return d?"jedna minuta":"jedne minute";case"mm":return h+(1===p?"minuta":2===p||3===p||4===p?"minute":"minuta");case"h":return d?"jedan sat":"jednog sata";case"hh":return h+(1===p?"sat":2===p||3===p||4===p?"sata":"sati");case"dd":return h+(1===p?"dan":"dana");case"MM":return h+(1===p?"mjesec":2===p||3===p||4===p?"mjeseca":"mjeseci");case"yy":return h+(1===p?"godina":2===p||3===p||4===p?"godine":"godina")}}P.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010der u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[pro\u0161lu] dddd [u] LT";case 6:return"[pro\u0161le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[pro\u0161li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},83331:function(dt,K,n){!function(P){"use strict";P.defineLocale("ca",{months:{standalone:"gener_febrer_mar\xe7_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de mar\xe7_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._mar\xe7_abr._maig_juny_jul._ag._set._oct._nov._des.".split("_"),monthsParseExact:!0,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[dem\xe0 a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"d'aqu\xed %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|\xe8|a)/,ordinal:function(p,d){var s=1===p?"r":2===p?"n":3===p?"r":4===p?"t":"\xe8";return("w"===d||"W"===d)&&(s="a"),p+s},week:{dow:1,doy:4}})}(n(56908))},21320:function(dt,K,n){!function(P){"use strict";var t="leden_\xfanor_b\u0159ezen_duben_kv\u011bten_\u010derven_\u010dervenec_srpen_z\xe1\u0159\xed_\u0159\xedjen_listopad_prosinec".split("_"),e="led_\xfano_b\u0159e_dub_kv\u011b_\u010dvn_\u010dvc_srp_z\xe1\u0159_\u0159\xedj_lis_pro".split("_"),p=[/^led/i,/^\xfano/i,/^b\u0159e/i,/^dub/i,/^kv\u011b/i,/^(\u010dvn|\u010derven$|\u010dervna)/i,/^(\u010dvc|\u010dervenec|\u010dervence)/i,/^srp/i,/^z\xe1\u0159/i,/^\u0159\xedj/i,/^lis/i,/^pro/i],d=/^(leden|\xfanor|b\u0159ezen|duben|kv\u011bten|\u010dervenec|\u010dervence|\u010derven|\u010dervna|srpen|z\xe1\u0159\xed|\u0159\xedjen|listopad|prosinec|led|\xfano|b\u0159e|dub|kv\u011b|\u010dvn|\u010dvc|srp|z\xe1\u0159|\u0159\xedj|lis|pro)/i;function s(T){return T>1&&T<5&&1!=~~(T/10)}function h(T,B,I,v){var j=T+" ";switch(I){case"s":return B||v?"p\xe1r sekund":"p\xe1r sekundami";case"ss":return B||v?j+(s(T)?"sekundy":"sekund"):j+"sekundami";case"m":return B?"minuta":v?"minutu":"minutou";case"mm":return B||v?j+(s(T)?"minuty":"minut"):j+"minutami";case"h":return B?"hodina":v?"hodinu":"hodinou";case"hh":return B||v?j+(s(T)?"hodiny":"hodin"):j+"hodinami";case"d":return B||v?"den":"dnem";case"dd":return B||v?j+(s(T)?"dny":"dn\xed"):j+"dny";case"M":return B||v?"m\u011bs\xedc":"m\u011bs\xedcem";case"MM":return B||v?j+(s(T)?"m\u011bs\xedce":"m\u011bs\xedc\u016f"):j+"m\u011bs\xedci";case"y":return B||v?"rok":"rokem";case"yy":return B||v?j+(s(T)?"roky":"let"):j+"lety"}}P.defineLocale("cs",{months:t,monthsShort:e,monthsRegex:d,monthsShortRegex:d,monthsStrictRegex:/^(leden|ledna|\xfanora|\xfanor|b\u0159ezen|b\u0159ezna|duben|dubna|kv\u011bten|kv\u011btna|\u010dervenec|\u010dervence|\u010derven|\u010dervna|srpen|srpna|z\xe1\u0159\xed|\u0159\xedjen|\u0159\xedjna|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|\xfano|b\u0159e|dub|kv\u011b|\u010dvn|\u010dvc|srp|z\xe1\u0159|\u0159\xedj|lis|pro)/i,monthsParse:p,longMonthsParse:p,shortMonthsParse:p,weekdays:"ned\u011ble_pond\u011bl\xed_\xfater\xfd_st\u0159eda_\u010dtvrtek_p\xe1tek_sobota".split("_"),weekdaysShort:"ne_po_\xfat_st_\u010dt_p\xe1_so".split("_"),weekdaysMin:"ne_po_\xfat_st_\u010dt_p\xe1_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[z\xedtra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v ned\u011bli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve st\u0159edu v] LT";case 4:return"[ve \u010dtvrtek v] LT";case 5:return"[v p\xe1tek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[v\u010dera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou ned\u011bli v] LT";case 1:case 2:return"[minul\xe9] dddd [v] LT";case 3:return"[minulou st\u0159edu v] LT";case 4:case 5:return"[minul\xfd] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"p\u0159ed %s",s:h,ss:h,m:h,mm:h,h:h,hh:h,d:h,dd:h,M:h,MM:h,y:h,yy:h},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},72219:function(dt,K,n){!function(P){"use strict";P.defineLocale("cv",{months:"\u043a\u04d1\u0440\u043b\u0430\u0447_\u043d\u0430\u0440\u04d1\u0441_\u043f\u0443\u0448_\u0430\u043a\u0430_\u043c\u0430\u0439_\u04ab\u04d7\u0440\u0442\u043c\u0435_\u0443\u0442\u04d1_\u04ab\u0443\u0440\u043b\u0430_\u0430\u0432\u04d1\u043d_\u044e\u043f\u0430_\u0447\u04f3\u043a_\u0440\u0430\u0448\u0442\u0430\u0432".split("_"),monthsShort:"\u043a\u04d1\u0440_\u043d\u0430\u0440_\u043f\u0443\u0448_\u0430\u043a\u0430_\u043c\u0430\u0439_\u04ab\u04d7\u0440_\u0443\u0442\u04d1_\u04ab\u0443\u0440_\u0430\u0432\u043d_\u044e\u043f\u0430_\u0447\u04f3\u043a_\u0440\u0430\u0448".split("_"),weekdays:"\u0432\u044b\u0440\u0441\u0430\u0440\u043d\u0438\u043a\u0443\u043d_\u0442\u0443\u043d\u0442\u0438\u043a\u0443\u043d_\u044b\u0442\u043b\u0430\u0440\u0438\u043a\u0443\u043d_\u044e\u043d\u043a\u0443\u043d_\u043a\u04d7\u04ab\u043d\u0435\u0440\u043d\u0438\u043a\u0443\u043d_\u044d\u0440\u043d\u0435\u043a\u0443\u043d_\u0448\u04d1\u043c\u0430\u0442\u043a\u0443\u043d".split("_"),weekdaysShort:"\u0432\u044b\u0440_\u0442\u0443\u043d_\u044b\u0442\u043b_\u044e\u043d_\u043a\u04d7\u04ab_\u044d\u0440\u043d_\u0448\u04d1\u043c".split("_"),weekdaysMin:"\u0432\u0440_\u0442\u043d_\u044b\u0442_\u044e\u043d_\u043a\u04ab_\u044d\u0440_\u0448\u043c".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7]",LLL:"YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7], HH:mm",LLLL:"dddd, YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7], HH:mm"},calendar:{sameDay:"[\u041f\u0430\u044f\u043d] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",nextDay:"[\u042b\u0440\u0430\u043d] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",lastDay:"[\u04d6\u043d\u0435\u0440] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",nextWeek:"[\u04aa\u0438\u0442\u0435\u0441] dddd LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",lastWeek:"[\u0418\u0440\u0442\u043d\u04d7] dddd LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",sameElse:"L"},relativeTime:{future:function(p){return p+(/\u0441\u0435\u0445\u0435\u0442$/i.exec(p)?"\u0440\u0435\u043d":/\u04ab\u0443\u043b$/i.exec(p)?"\u0442\u0430\u043d":"\u0440\u0430\u043d")},past:"%s \u043a\u0430\u044f\u043b\u043b\u0430",s:"\u043f\u04d7\u0440-\u0438\u043a \u04ab\u0435\u043a\u043a\u0443\u043d\u0442",ss:"%d \u04ab\u0435\u043a\u043a\u0443\u043d\u0442",m:"\u043f\u04d7\u0440 \u043c\u0438\u043d\u0443\u0442",mm:"%d \u043c\u0438\u043d\u0443\u0442",h:"\u043f\u04d7\u0440 \u0441\u0435\u0445\u0435\u0442",hh:"%d \u0441\u0435\u0445\u0435\u0442",d:"\u043f\u04d7\u0440 \u043a\u0443\u043d",dd:"%d \u043a\u0443\u043d",M:"\u043f\u04d7\u0440 \u0443\u0439\u04d1\u0445",MM:"%d \u0443\u0439\u04d1\u0445",y:"\u043f\u04d7\u0440 \u04ab\u0443\u043b",yy:"%d \u04ab\u0443\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-\u043c\u04d7\u0448/,ordinal:"%d-\u043c\u04d7\u0448",week:{dow:1,doy:7}})}(n(56908))},68266:function(dt,K,n){!function(P){"use strict";P.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn \xf4l",s:"ychydig eiliadau",ss:"%d eiliad",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},dayOfMonthOrdinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(p){var s="";return p>20?s=40===p||50===p||60===p||80===p||100===p?"fed":"ain":p>0&&(s=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][p]),p+s},week:{dow:1,doy:4}})}(n(56908))},66427:function(dt,K,n){!function(P){"use strict";P.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xf8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xf8rdag".split("_"),weekdaysShort:"s\xf8n_man_tir_ons_tor_fre_l\xf8r".split("_"),weekdaysMin:"s\xf8_ma_ti_on_to_fr_l\xf8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"p\xe5 dddd [kl.] LT",lastDay:"[i g\xe5r kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"f\xe5 sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en m\xe5ned",MM:"%d m\xe5neder",y:"et \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},52871:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){var f={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[p+" Tage",p+" Tagen"],M:["ein Monat","einem Monat"],MM:[p+" Monate",p+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[p+" Jahre",p+" Jahren"]};return d?f[s][0]:f[s][1]}P.defineLocale("de-at",{months:"J\xe4nner_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"J\xe4n._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},12994:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){var f={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[p+" Tage",p+" Tagen"],M:["ein Monat","einem Monat"],MM:[p+" Monate",p+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[p+" Jahre",p+" Jahren"]};return d?f[s][0]:f[s][1]}P.defineLocale("de-ch",{months:"Januar_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},67435:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){var f={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[p+" Tage",p+" Tagen"],M:["ein Monat","einem Monat"],MM:[p+" Monate",p+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[p+" Jahre",p+" Jahren"]};return d?f[s][0]:f[s][1]}P.defineLocale("de",{months:"Januar_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},82357:function(dt,K,n){!function(P){"use strict";var t=["\u0796\u07ac\u0782\u07aa\u0787\u07a6\u0783\u07a9","\u078a\u07ac\u0784\u07b0\u0783\u07aa\u0787\u07a6\u0783\u07a9","\u0789\u07a7\u0783\u07a8\u0797\u07aa","\u0787\u07ad\u0795\u07b0\u0783\u07a9\u078d\u07aa","\u0789\u07ad","\u0796\u07ab\u0782\u07b0","\u0796\u07aa\u078d\u07a6\u0787\u07a8","\u0787\u07af\u078e\u07a6\u0790\u07b0\u0793\u07aa","\u0790\u07ac\u0795\u07b0\u0793\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa","\u0787\u07ae\u0786\u07b0\u0793\u07af\u0784\u07a6\u0783\u07aa","\u0782\u07ae\u0788\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa","\u0791\u07a8\u0790\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa"],e=["\u0787\u07a7\u078b\u07a8\u0787\u07b0\u078c\u07a6","\u0780\u07af\u0789\u07a6","\u0787\u07a6\u0782\u07b0\u078e\u07a7\u0783\u07a6","\u0784\u07aa\u078b\u07a6","\u0784\u07aa\u0783\u07a7\u0790\u07b0\u078a\u07a6\u078c\u07a8","\u0780\u07aa\u0786\u07aa\u0783\u07aa","\u0780\u07ae\u0782\u07a8\u0780\u07a8\u0783\u07aa"];P.defineLocale("dv",{months:t,monthsShort:t,weekdays:e,weekdaysShort:e,weekdaysMin:"\u0787\u07a7\u078b\u07a8_\u0780\u07af\u0789\u07a6_\u0787\u07a6\u0782\u07b0_\u0784\u07aa\u078b\u07a6_\u0784\u07aa\u0783\u07a7_\u0780\u07aa\u0786\u07aa_\u0780\u07ae\u0782\u07a8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0789\u0786|\u0789\u078a/,isPM:function(s){return"\u0789\u078a"===s},meridiem:function(s,h,f){return s<12?"\u0789\u0786":"\u0789\u078a"},calendar:{sameDay:"[\u0789\u07a8\u0787\u07a6\u078b\u07aa] LT",nextDay:"[\u0789\u07a7\u078b\u07a6\u0789\u07a7] LT",nextWeek:"dddd LT",lastDay:"[\u0787\u07a8\u0787\u07b0\u0794\u07ac] LT",lastWeek:"[\u078a\u07a7\u0787\u07a8\u078c\u07aa\u0788\u07a8] dddd LT",sameElse:"L"},relativeTime:{future:"\u078c\u07ac\u0783\u07ad\u078e\u07a6\u0787\u07a8 %s",past:"\u0786\u07aa\u0783\u07a8\u0782\u07b0 %s",s:"\u0790\u07a8\u0786\u07aa\u0782\u07b0\u078c\u07aa\u0786\u07ae\u0785\u07ac\u0787\u07b0",ss:"d% \u0790\u07a8\u0786\u07aa\u0782\u07b0\u078c\u07aa",m:"\u0789\u07a8\u0782\u07a8\u0793\u07ac\u0787\u07b0",mm:"\u0789\u07a8\u0782\u07a8\u0793\u07aa %d",h:"\u078e\u07a6\u0791\u07a8\u0787\u07a8\u0783\u07ac\u0787\u07b0",hh:"\u078e\u07a6\u0791\u07a8\u0787\u07a8\u0783\u07aa %d",d:"\u078b\u07aa\u0788\u07a6\u0780\u07ac\u0787\u07b0",dd:"\u078b\u07aa\u0788\u07a6\u0790\u07b0 %d",M:"\u0789\u07a6\u0780\u07ac\u0787\u07b0",MM:"\u0789\u07a6\u0790\u07b0 %d",y:"\u0787\u07a6\u0780\u07a6\u0783\u07ac\u0787\u07b0",yy:"\u0787\u07a6\u0780\u07a6\u0783\u07aa %d"},preparse:function(s){return s.replace(/\u060c/g,",")},postformat:function(s){return s.replace(/,/g,"\u060c")},week:{dow:7,doy:12}})}(n(56908))},95649:function(dt,K,n){!function(P){"use strict";P.defineLocale("el",{monthsNominativeEl:"\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2_\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2_\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2_\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2_\u039c\u03ac\u03b9\u03bf\u03c2_\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2_\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2_\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2_\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2_\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2_\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2_\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2".split("_"),monthsGenitiveEl:"\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5_\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5_\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5_\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5_\u039c\u03b1\u0390\u03bf\u03c5_\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5_\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5_\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5_\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5_\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5_\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5_\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5".split("_"),months:function(d,s){return d?"string"==typeof s&&/D/.test(s.substring(0,s.indexOf("MMMM")))?this._monthsGenitiveEl[d.month()]:this._monthsNominativeEl[d.month()]:this._monthsNominativeEl},monthsShort:"\u0399\u03b1\u03bd_\u03a6\u03b5\u03b2_\u039c\u03b1\u03c1_\u0391\u03c0\u03c1_\u039c\u03b1\u03ca_\u0399\u03bf\u03c5\u03bd_\u0399\u03bf\u03c5\u03bb_\u0391\u03c5\u03b3_\u03a3\u03b5\u03c0_\u039f\u03ba\u03c4_\u039d\u03bf\u03b5_\u0394\u03b5\u03ba".split("_"),weekdays:"\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae_\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1_\u03a4\u03c1\u03af\u03c4\u03b7_\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7_\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7_\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae_\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf".split("_"),weekdaysShort:"\u039a\u03c5\u03c1_\u0394\u03b5\u03c5_\u03a4\u03c1\u03b9_\u03a4\u03b5\u03c4_\u03a0\u03b5\u03bc_\u03a0\u03b1\u03c1_\u03a3\u03b1\u03b2".split("_"),weekdaysMin:"\u039a\u03c5_\u0394\u03b5_\u03a4\u03c1_\u03a4\u03b5_\u03a0\u03b5_\u03a0\u03b1_\u03a3\u03b1".split("_"),meridiem:function(d,s,h){return d>11?h?"\u03bc\u03bc":"\u039c\u039c":h?"\u03c0\u03bc":"\u03a0\u039c"},isPM:function(d){return"\u03bc"===(d+"").toLowerCase()[0]},meridiemParse:/[\u03a0\u039c]\.?\u039c?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[\u03a3\u03ae\u03bc\u03b5\u03c1\u03b1 {}] LT",nextDay:"[\u0391\u03cd\u03c1\u03b9\u03bf {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[\u03a7\u03b8\u03b5\u03c2 {}] LT",lastWeek:function(){return 6===this.day()?"[\u03c4\u03bf \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf] dddd [{}] LT":"[\u03c4\u03b7\u03bd \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03b7] dddd [{}] LT"},sameElse:"L"},calendar:function(d,s){var h=this._calendarEl[d],f=s&&s.hours();return function t(p){return"undefined"!=typeof Function&&p instanceof Function||"[object Function]"===Object.prototype.toString.call(p)}(h)&&(h=h.apply(s)),h.replace("{}",f%12==1?"\u03c3\u03c4\u03b7":"\u03c3\u03c4\u03b9\u03c2")},relativeTime:{future:"\u03c3\u03b5 %s",past:"%s \u03c0\u03c1\u03b9\u03bd",s:"\u03bb\u03af\u03b3\u03b1 \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03cc\u03bb\u03b5\u03c0\u03c4\u03b1",ss:"%d \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03cc\u03bb\u03b5\u03c0\u03c4\u03b1",m:"\u03ad\u03bd\u03b1 \u03bb\u03b5\u03c0\u03c4\u03cc",mm:"%d \u03bb\u03b5\u03c0\u03c4\u03ac",h:"\u03bc\u03af\u03b1 \u03ce\u03c1\u03b1",hh:"%d \u03ce\u03c1\u03b5\u03c2",d:"\u03bc\u03af\u03b1 \u03bc\u03ad\u03c1\u03b1",dd:"%d \u03bc\u03ad\u03c1\u03b5\u03c2",M:"\u03ad\u03bd\u03b1\u03c2 \u03bc\u03ae\u03bd\u03b1\u03c2",MM:"%d \u03bc\u03ae\u03bd\u03b5\u03c2",y:"\u03ad\u03bd\u03b1\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2",yy:"%d \u03c7\u03c1\u03cc\u03bd\u03b9\u03b1"},dayOfMonthOrdinalParse:/\d{1,2}\u03b7/,ordinal:"%d\u03b7",week:{dow:1,doy:4}})}(n(56908))},59961:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:0,doy:4}})}(n(56908))},19878:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")}})}(n(56908))},3924:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},70864:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},91579:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")}})}(n(56908))},30940:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-in",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:0,doy:6}})}(n(56908))},16181:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},44301:function(dt,K,n){!function(P){"use strict";P.defineLocale("en-sg",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},85291:function(dt,K,n){!function(P){"use strict";P.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_a\u016dgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mart_apr_maj_jun_jul_a\u016dg_sept_okt_nov_dec".split("_"),weekdays:"diman\u0109o_lundo_mardo_merkredo_\u0135a\u016ddo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_\u0135a\u016d_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_\u0135a_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"[la] D[-an de] MMMM, YYYY",LLL:"[la] D[-an de] MMMM, YYYY HH:mm",LLLL:"dddd[n], [la] D[-an de] MMMM, YYYY HH:mm",llll:"ddd, [la] D[-an de] MMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(p){return"p"===p.charAt(0).toLowerCase()},meridiem:function(p,d,s){return p>11?s?"p.t.m.":"P.T.M.":s?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodia\u016d je] LT",nextDay:"[Morga\u016d je] LT",nextWeek:"dddd[n je] LT",lastDay:"[Hiera\u016d je] LT",lastWeek:"[pasintan] dddd[n je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"anta\u016d %s",s:"kelkaj sekundoj",ss:"%d sekundoj",m:"unu minuto",mm:"%d minutoj",h:"unu horo",hh:"%d horoj",d:"unu tago",dd:"%d tagoj",M:"unu monato",MM:"%d monatoj",y:"unu jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}})}(n(56908))},53764:function(dt,K,n){!function(P){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),e="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),p=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],d=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;P.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(f,T){return f?/-MMM-/.test(T)?e[f.month()]:t[f.month()]:t},monthsRegex:d,monthsShortRegex:d,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:p,longMonthsParse:p,shortMonthsParse:p,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},63425:function(dt,K,n){!function(P){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),e="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),p=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],d=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;P.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(f,T){return f?/-MMM-/.test(T)?e[f.month()]:t[f.month()]:t},monthsRegex:d,monthsShortRegex:d,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:p,longMonthsParse:p,shortMonthsParse:p,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:0,doy:6}})}(n(56908))},54529:function(dt,K,n){!function(P){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),e="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),p=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],d=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;P.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(f,T){return f?/-MMM-/.test(T)?e[f.month()]:t[f.month()]:t},monthsRegex:d,monthsShortRegex:d,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:p,longMonthsParse:p,shortMonthsParse:p,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4},invalidDate:"Fecha invalida"})}(n(56908))},35203:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){var f={s:["m\xf5ne sekundi","m\xf5ni sekund","paar sekundit"],ss:[p+"sekundi",p+"sekundit"],m:["\xfche minuti","\xfcks minut"],mm:[p+" minuti",p+" minutit"],h:["\xfche tunni","tund aega","\xfcks tund"],hh:[p+" tunni",p+" tundi"],d:["\xfche p\xe4eva","\xfcks p\xe4ev"],M:["kuu aja","kuu aega","\xfcks kuu"],MM:[p+" kuu",p+" kuud"],y:["\xfche aasta","aasta","\xfcks aasta"],yy:[p+" aasta",p+" aastat"]};return d?f[s][2]?f[s][2]:f[s][1]:h?f[s][0]:f[s][1]}P.defineLocale("et",{months:"jaanuar_veebruar_m\xe4rts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_m\xe4rts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"p\xfchap\xe4ev_esmasp\xe4ev_teisip\xe4ev_kolmap\xe4ev_neljap\xe4ev_reede_laup\xe4ev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[T\xe4na,] LT",nextDay:"[Homme,] LT",nextWeek:"[J\xe4rgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s p\xe4rast",past:"%s tagasi",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:"%d p\xe4eva",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},70678:function(dt,K,n){!function(P){"use strict";P.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},83483:function(dt,K,n){!function(P){"use strict";var t={1:"\u06f1",2:"\u06f2",3:"\u06f3",4:"\u06f4",5:"\u06f5",6:"\u06f6",7:"\u06f7",8:"\u06f8",9:"\u06f9",0:"\u06f0"},e={"\u06f1":"1","\u06f2":"2","\u06f3":"3","\u06f4":"4","\u06f5":"5","\u06f6":"6","\u06f7":"7","\u06f8":"8","\u06f9":"9","\u06f0":"0"};P.defineLocale("fa",{months:"\u0698\u0627\u0646\u0648\u06cc\u0647_\u0641\u0648\u0631\u06cc\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06cc\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06cc\u0647_\u0627\u0648\u062a_\u0633\u067e\u062a\u0627\u0645\u0628\u0631_\u0627\u06a9\u062a\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062f\u0633\u0627\u0645\u0628\u0631".split("_"),monthsShort:"\u0698\u0627\u0646\u0648\u06cc\u0647_\u0641\u0648\u0631\u06cc\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06cc\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06cc\u0647_\u0627\u0648\u062a_\u0633\u067e\u062a\u0627\u0645\u0628\u0631_\u0627\u06a9\u062a\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062f\u0633\u0627\u0645\u0628\u0631".split("_"),weekdays:"\u06cc\u06a9\u200c\u0634\u0646\u0628\u0647_\u062f\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200c\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067e\u0646\u062c\u200c\u0634\u0646\u0628\u0647_\u062c\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysShort:"\u06cc\u06a9\u200c\u0634\u0646\u0628\u0647_\u062f\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200c\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067e\u0646\u062c\u200c\u0634\u0646\u0628\u0647_\u062c\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysMin:"\u06cc_\u062f_\u0633_\u0686_\u067e_\u062c_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u0642\u0628\u0644 \u0627\u0632 \u0638\u0647\u0631|\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631/,isPM:function(s){return/\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631/.test(s)},meridiem:function(s,h,f){return s<12?"\u0642\u0628\u0644 \u0627\u0632 \u0638\u0647\u0631":"\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631"},calendar:{sameDay:"[\u0627\u0645\u0631\u0648\u0632 \u0633\u0627\u0639\u062a] LT",nextDay:"[\u0641\u0631\u062f\u0627 \u0633\u0627\u0639\u062a] LT",nextWeek:"dddd [\u0633\u0627\u0639\u062a] LT",lastDay:"[\u062f\u06cc\u0631\u0648\u0632 \u0633\u0627\u0639\u062a] LT",lastWeek:"dddd [\u067e\u06cc\u0634] [\u0633\u0627\u0639\u062a] LT",sameElse:"L"},relativeTime:{future:"\u062f\u0631 %s",past:"%s \u067e\u06cc\u0634",s:"\u0686\u0646\u062f \u062b\u0627\u0646\u06cc\u0647",ss:"%d \u062b\u0627\u0646\u06cc\u0647",m:"\u06cc\u06a9 \u062f\u0642\u06cc\u0642\u0647",mm:"%d \u062f\u0642\u06cc\u0642\u0647",h:"\u06cc\u06a9 \u0633\u0627\u0639\u062a",hh:"%d \u0633\u0627\u0639\u062a",d:"\u06cc\u06a9 \u0631\u0648\u0632",dd:"%d \u0631\u0648\u0632",M:"\u06cc\u06a9 \u0645\u0627\u0647",MM:"%d \u0645\u0627\u0647",y:"\u06cc\u06a9 \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(s){return s.replace(/[\u06f0-\u06f9]/g,function(h){return e[h]}).replace(/\u060c/g,",")},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]}).replace(/,/g,"\u060c")},dayOfMonthOrdinalParse:/\d{1,2}\u0645/,ordinal:"%d\u0645",week:{dow:6,doy:12}})}(n(56908))},96262:function(dt,K,n){!function(P){"use strict";var t="nolla yksi kaksi kolme nelj\xe4 viisi kuusi seitsem\xe4n kahdeksan yhdeks\xe4n".split(" "),e=["nolla","yhden","kahden","kolmen","nelj\xe4n","viiden","kuuden",t[7],t[8],t[9]];function p(h,f,T,B){var I="";switch(T){case"s":return B?"muutaman sekunnin":"muutama sekunti";case"ss":return B?"sekunnin":"sekuntia";case"m":return B?"minuutin":"minuutti";case"mm":I=B?"minuutin":"minuuttia";break;case"h":return B?"tunnin":"tunti";case"hh":I=B?"tunnin":"tuntia";break;case"d":return B?"p\xe4iv\xe4n":"p\xe4iv\xe4";case"dd":I=B?"p\xe4iv\xe4n":"p\xe4iv\xe4\xe4";break;case"M":return B?"kuukauden":"kuukausi";case"MM":I=B?"kuukauden":"kuukautta";break;case"y":return B?"vuoden":"vuosi";case"yy":I=B?"vuoden":"vuotta"}return function d(h,f){return h<10?f?e[h]:t[h]:h}(h,B)+" "+I}P.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kes\xe4kuu_hein\xe4kuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kes\xe4_hein\xe4_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[t\xe4n\xe4\xe4n] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s p\xe4\xe4st\xe4",past:"%s sitten",s:p,ss:p,m:p,mm:p,h:p,hh:p,d:p,dd:p,M:p,MM:p,y:p,yy:p},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},52521:function(dt,K,n){!function(P){"use strict";P.defineLocale("fil",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(p){return p},week:{dow:1,doy:4}})}(n(56908))},34555:function(dt,K,n){!function(P){"use strict";P.defineLocale("fo",{months:"januar_februar_mars_apr\xedl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_m\xe1nadagur_t\xfdsdagur_mikudagur_h\xf3sdagur_fr\xedggjadagur_leygardagur".split("_"),weekdaysShort:"sun_m\xe1n_t\xfds_mik_h\xf3s_fr\xed_ley".split("_"),weekdaysMin:"su_m\xe1_t\xfd_mi_h\xf3_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[\xcd dag kl.] LT",nextDay:"[\xcd morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[\xcd gj\xe1r kl.] LT",lastWeek:"[s\xed\xf0stu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s s\xed\xf0ani",s:"f\xe1 sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein t\xedmi",hh:"%d t\xedmar",d:"ein dagur",dd:"%d dagar",M:"ein m\xe1na\xf0ur",MM:"%d m\xe1na\xf0ir",y:"eitt \xe1r",yy:"%d \xe1r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},88239:function(dt,K,n){!function(P){"use strict";P.defineLocale("fr-ca",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(p,d){switch(d){default:case"M":case"Q":case"D":case"DDD":case"d":return p+(1===p?"er":"e");case"w":case"W":return p+(1===p?"re":"e")}}})}(n(56908))},21702:function(dt,K,n){!function(P){"use strict";P.defineLocale("fr-ch",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(p,d){switch(d){default:case"M":case"Q":case"D":case"DDD":case"d":return p+(1===p?"er":"e");case"w":case"W":return p+(1===p?"re":"e")}},week:{dow:1,doy:4}})}(n(56908))},63131:function(dt,K,n){!function(P){"use strict";P.defineLocale("fr",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal:function(p,d){switch(d){case"D":return p+(1===p?"er":"");default:case"M":case"Q":case"DDD":case"d":return p+(1===p?"er":"e");case"w":case"W":return p+(1===p?"re":"e")}},week:{dow:1,doy:4}})}(n(56908))},267:function(dt,K,n){!function(P){"use strict";var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),e="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");P.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(s,h){return s?/-MMM-/.test(h)?e[s.month()]:t[s.month()]:t},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[\xf4fr\xfbne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien min\xfat",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(s){return s+(1===s||8===s||s>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},23821:function(dt,K,n){!function(P){"use strict";P.defineLocale("ga",{months:["Ean\xe1ir","Feabhra","M\xe1rta","Aibre\xe1n","Bealtaine","Meitheamh","I\xfail","L\xfanasa","Me\xe1n F\xf3mhair","Deireadh F\xf3mhair","Samhain","Nollaig"],monthsShort:["Ean","Feabh","M\xe1rt","Aib","Beal","Meith","I\xfail","L\xfan","M.F.","D.F.","Samh","Noll"],monthsParseExact:!0,weekdays:["D\xe9 Domhnaigh","D\xe9 Luain","D\xe9 M\xe1irt","D\xe9 C\xe9adaoin","D\xe9ardaoin","D\xe9 hAoine","D\xe9 Sathairn"],weekdaysShort:["Domh","Luan","M\xe1irt","C\xe9ad","D\xe9ar","Aoine","Sath"],weekdaysMin:["Do","Lu","M\xe1","C\xe9","D\xe9","A","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Am\xe1rach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inn\xe9 ag] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s \xf3 shin",s:"c\xfapla soicind",ss:"%d soicind",m:"n\xf3im\xe9ad",mm:"%d n\xf3im\xe9ad",h:"uair an chloig",hh:"%d uair an chloig",d:"l\xe1",dd:"%d l\xe1",M:"m\xed",MM:"%d m\xedonna",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(T){return T+(1===T?"d":T%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n(56908))},71753:function(dt,K,n){!function(P){"use strict";P.defineLocale("gd",{months:["Am Faoilleach","An Gearran","Am M\xe0rt","An Giblean","An C\xe8itean","An t-\xd2gmhios","An t-Iuchar","An L\xf9nastal","An t-Sultain","An D\xe0mhair","An t-Samhain","An D\xf9bhlachd"],monthsShort:["Faoi","Gear","M\xe0rt","Gibl","C\xe8it","\xd2gmh","Iuch","L\xf9n","Sult","D\xe0mh","Samh","D\xf9bh"],monthsParseExact:!0,weekdays:["Did\xf2mhnaich","Diluain","Dim\xe0irt","Diciadain","Diardaoin","Dihaoine","Disathairne"],weekdaysShort:["Did","Dil","Dim","Dic","Dia","Dih","Dis"],weekdaysMin:["D\xf2","Lu","M\xe0","Ci","Ar","Ha","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-m\xe0ireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-d\xe8 aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",ss:"%d diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"m\xecos",MM:"%d m\xecosan",y:"bliadhna",yy:"%d bliadhna"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(T){return T+(1===T?"d":T%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n(56908))},4074:function(dt,K,n){!function(P){"use strict";P.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xu\xf1o_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xu\xf1._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_m\xe9rcores_xoves_venres_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._m\xe9r._xov._ven._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_m\xe9_xo_ve_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"\xe1s":"\xe1")+"] LT"},nextDay:function(){return"[ma\xf1\xe1 "+(1!==this.hours()?"\xe1s":"\xe1")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"\xe1s":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"\xe1":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"\xe1s":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(p){return 0===p.indexOf("un")?"n"+p:"en "+p},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},92762:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){var f={s:["\u0925\u094b\u0921\u092f\u093e \u0938\u0945\u0915\u0902\u0921\u093e\u0902\u0928\u0940","\u0925\u094b\u0921\u0947 \u0938\u0945\u0915\u0902\u0921"],ss:[p+" \u0938\u0945\u0915\u0902\u0921\u093e\u0902\u0928\u0940",p+" \u0938\u0945\u0915\u0902\u0921"],m:["\u090f\u0915\u093e \u092e\u093f\u0923\u091f\u093e\u0928","\u090f\u0915 \u092e\u093f\u0928\u0942\u091f"],mm:[p+" \u092e\u093f\u0923\u091f\u093e\u0902\u0928\u0940",p+" \u092e\u093f\u0923\u091f\u093e\u0902"],h:["\u090f\u0915\u093e \u0935\u0930\u093e\u0928","\u090f\u0915 \u0935\u0930"],hh:[p+" \u0935\u0930\u093e\u0902\u0928\u0940",p+" \u0935\u0930\u093e\u0902"],d:["\u090f\u0915\u093e \u0926\u093f\u0938\u093e\u0928","\u090f\u0915 \u0926\u0940\u0938"],dd:[p+" \u0926\u093f\u0938\u093e\u0902\u0928\u0940",p+" \u0926\u0940\u0938"],M:["\u090f\u0915\u093e \u092e\u094d\u0939\u092f\u0928\u094d\u092f\u093e\u0928","\u090f\u0915 \u092e\u094d\u0939\u092f\u0928\u094b"],MM:[p+" \u092e\u094d\u0939\u092f\u0928\u094d\u092f\u093e\u0928\u0940",p+" \u092e\u094d\u0939\u092f\u0928\u0947"],y:["\u090f\u0915\u093e \u0935\u0930\u094d\u0938\u093e\u0928","\u090f\u0915 \u0935\u0930\u094d\u0938"],yy:[p+" \u0935\u0930\u094d\u0938\u093e\u0902\u0928\u0940",p+" \u0935\u0930\u094d\u0938\u093e\u0902"]};return h?f[s][0]:f[s][1]}P.defineLocale("gom-deva",{months:{standalone:"\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u090f\u092a\u094d\u0930\u0940\u0932_\u092e\u0947_\u091c\u0942\u0928_\u091c\u0941\u0932\u092f_\u0911\u0917\u0938\u094d\u091f_\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930_\u0911\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930_\u0921\u093f\u0938\u0947\u0902\u092c\u0930".split("_"),format:"\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940\u091a\u094d\u092f\u093e_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940\u091a\u094d\u092f\u093e_\u092e\u093e\u0930\u094d\u091a\u093e\u091a\u094d\u092f\u093e_\u090f\u092a\u094d\u0930\u0940\u0932\u093e\u091a\u094d\u092f\u093e_\u092e\u0947\u092f\u093e\u091a\u094d\u092f\u093e_\u091c\u0942\u0928\u093e\u091a\u094d\u092f\u093e_\u091c\u0941\u0932\u092f\u093e\u091a\u094d\u092f\u093e_\u0911\u0917\u0938\u094d\u091f\u093e\u091a\u094d\u092f\u093e_\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930\u093e\u091a\u094d\u092f\u093e_\u0911\u0915\u094d\u091f\u094b\u092c\u0930\u093e\u091a\u094d\u092f\u093e_\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930\u093e\u091a\u094d\u092f\u093e_\u0921\u093f\u0938\u0947\u0902\u092c\u0930\u093e\u091a\u094d\u092f\u093e".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"\u091c\u093e\u0928\u0947._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a_\u090f\u092a\u094d\u0930\u0940._\u092e\u0947_\u091c\u0942\u0928_\u091c\u0941\u0932._\u0911\u0917._\u0938\u092a\u094d\u091f\u0947\u0902._\u0911\u0915\u094d\u091f\u094b._\u0928\u094b\u0935\u094d\u0939\u0947\u0902._\u0921\u093f\u0938\u0947\u0902.".split("_"),monthsParseExact:!0,weekdays:"\u0906\u092f\u0924\u093e\u0930_\u0938\u094b\u092e\u093e\u0930_\u092e\u0902\u0917\u0933\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u092c\u093f\u0930\u0947\u0938\u094d\u0924\u093e\u0930_\u0938\u0941\u0915\u094d\u0930\u093e\u0930_\u0936\u0947\u0928\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0906\u092f\u0924._\u0938\u094b\u092e._\u092e\u0902\u0917\u0933._\u092c\u0941\u0927._\u092c\u094d\u0930\u0947\u0938\u094d\u0924._\u0938\u0941\u0915\u094d\u0930._\u0936\u0947\u0928.".split("_"),weekdaysMin:"\u0906_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u092c\u094d\u0930\u0947_\u0938\u0941_\u0936\u0947".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]",LTS:"A h:mm:ss [\u0935\u093e\u091c\u0924\u093e\u0902]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]",llll:"ddd, D MMM YYYY, A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]"},calendar:{sameDay:"[\u0906\u092f\u091c] LT",nextDay:"[\u092b\u093e\u0932\u094d\u092f\u093e\u0902] LT",nextWeek:"[\u092b\u0941\u0921\u0932\u094b] dddd[,] LT",lastDay:"[\u0915\u093e\u0932] LT",lastWeek:"[\u092b\u093e\u091f\u0932\u094b] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s \u0906\u0926\u0940\u0902",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(\u0935\u0947\u0930)/,ordinal:function(d,s){return"D"===s?d+"\u0935\u0947\u0930":d},week:{dow:1,doy:4},meridiemParse:/\u0930\u093e\u0924\u0940|\u0938\u0915\u093e\u0933\u0940\u0902|\u0926\u0928\u092a\u093e\u0930\u093e\u0902|\u0938\u093e\u0902\u091c\u0947/,meridiemHour:function(d,s){return 12===d&&(d=0),"\u0930\u093e\u0924\u0940"===s?d<4?d:d+12:"\u0938\u0915\u093e\u0933\u0940\u0902"===s?d:"\u0926\u0928\u092a\u093e\u0930\u093e\u0902"===s?d>12?d:d+12:"\u0938\u093e\u0902\u091c\u0947"===s?d+12:void 0},meridiem:function(d,s,h){return d<4?"\u0930\u093e\u0924\u0940":d<12?"\u0938\u0915\u093e\u0933\u0940\u0902":d<16?"\u0926\u0928\u092a\u093e\u0930\u093e\u0902":d<20?"\u0938\u093e\u0902\u091c\u0947":"\u0930\u093e\u0924\u0940"}})}(n(56908))},5969:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){var f={s:["thoddea sekondamni","thodde sekond"],ss:[p+" sekondamni",p+" sekond"],m:["eka mintan","ek minut"],mm:[p+" mintamni",p+" mintam"],h:["eka voran","ek vor"],hh:[p+" voramni",p+" voram"],d:["eka disan","ek dis"],dd:[p+" disamni",p+" dis"],M:["eka mhoinean","ek mhoino"],MM:[p+" mhoineamni",p+" mhoine"],y:["eka vorsan","ek voros"],yy:[p+" vorsamni",p+" vorsam"]};return h?f[s][0]:f[s][1]}P.defineLocale("gom-latn",{months:{standalone:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),format:"Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Fuddlo] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fattlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(d,s){return"D"===s?d+"er":d},week:{dow:1,doy:4},meridiemParse:/rati|sokallim|donparam|sanje/,meridiemHour:function(d,s){return 12===d&&(d=0),"rati"===s?d<4?d:d+12:"sokallim"===s?d:"donparam"===s?d>12?d:d+12:"sanje"===s?d+12:void 0},meridiem:function(d,s,h){return d<4?"rati":d<12?"sokallim":d<16?"donparam":d<20?"sanje":"rati"}})}(n(56908))},82809:function(dt,K,n){!function(P){"use strict";var t={1:"\u0ae7",2:"\u0ae8",3:"\u0ae9",4:"\u0aea",5:"\u0aeb",6:"\u0aec",7:"\u0aed",8:"\u0aee",9:"\u0aef",0:"\u0ae6"},e={"\u0ae7":"1","\u0ae8":"2","\u0ae9":"3","\u0aea":"4","\u0aeb":"5","\u0aec":"6","\u0aed":"7","\u0aee":"8","\u0aef":"9","\u0ae6":"0"};P.defineLocale("gu",{months:"\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1\u0a86\u0ab0\u0ac0_\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1\u0a86\u0ab0\u0ac0_\u0aae\u0abe\u0ab0\u0acd\u0a9a_\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2_\u0aae\u0ac7_\u0a9c\u0ac2\u0aa8_\u0a9c\u0ac1\u0ab2\u0abe\u0a88_\u0a91\u0a97\u0ab8\u0acd\u0a9f_\u0ab8\u0aaa\u0acd\u0a9f\u0ac7\u0aae\u0acd\u0aac\u0ab0_\u0a91\u0a95\u0acd\u0a9f\u0acd\u0aac\u0ab0_\u0aa8\u0ab5\u0ac7\u0aae\u0acd\u0aac\u0ab0_\u0aa1\u0abf\u0ab8\u0ac7\u0aae\u0acd\u0aac\u0ab0".split("_"),monthsShort:"\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1._\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1._\u0aae\u0abe\u0ab0\u0acd\u0a9a_\u0a8f\u0aaa\u0acd\u0ab0\u0abf._\u0aae\u0ac7_\u0a9c\u0ac2\u0aa8_\u0a9c\u0ac1\u0ab2\u0abe._\u0a91\u0a97._\u0ab8\u0aaa\u0acd\u0a9f\u0ac7._\u0a91\u0a95\u0acd\u0a9f\u0acd._\u0aa8\u0ab5\u0ac7._\u0aa1\u0abf\u0ab8\u0ac7.".split("_"),monthsParseExact:!0,weekdays:"\u0ab0\u0ab5\u0abf\u0ab5\u0abe\u0ab0_\u0ab8\u0acb\u0aae\u0ab5\u0abe\u0ab0_\u0aae\u0a82\u0a97\u0ab3\u0ab5\u0abe\u0ab0_\u0aac\u0ac1\u0aa7\u0acd\u0ab5\u0abe\u0ab0_\u0a97\u0ac1\u0ab0\u0ac1\u0ab5\u0abe\u0ab0_\u0ab6\u0ac1\u0a95\u0acd\u0ab0\u0ab5\u0abe\u0ab0_\u0ab6\u0aa8\u0abf\u0ab5\u0abe\u0ab0".split("_"),weekdaysShort:"\u0ab0\u0ab5\u0abf_\u0ab8\u0acb\u0aae_\u0aae\u0a82\u0a97\u0ab3_\u0aac\u0ac1\u0aa7\u0acd_\u0a97\u0ac1\u0ab0\u0ac1_\u0ab6\u0ac1\u0a95\u0acd\u0ab0_\u0ab6\u0aa8\u0abf".split("_"),weekdaysMin:"\u0ab0_\u0ab8\u0acb_\u0aae\u0a82_\u0aac\u0ac1_\u0a97\u0ac1_\u0ab6\u0ac1_\u0ab6".split("_"),longDateFormat:{LT:"A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",LTS:"A h:mm:ss \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",LLLL:"dddd, D MMMM YYYY, A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7"},calendar:{sameDay:"[\u0a86\u0a9c] LT",nextDay:"[\u0a95\u0abe\u0ab2\u0ac7] LT",nextWeek:"dddd, LT",lastDay:"[\u0a97\u0a87\u0a95\u0abe\u0ab2\u0ac7] LT",lastWeek:"[\u0aaa\u0abe\u0a9b\u0ab2\u0abe] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0aae\u0abe",past:"%s \u0aaa\u0ac7\u0ab9\u0ab2\u0abe",s:"\u0a85\u0aae\u0ac1\u0a95 \u0aaa\u0ab3\u0acb",ss:"%d \u0ab8\u0ac7\u0a95\u0a82\u0aa1",m:"\u0a8f\u0a95 \u0aae\u0abf\u0aa8\u0abf\u0a9f",mm:"%d \u0aae\u0abf\u0aa8\u0abf\u0a9f",h:"\u0a8f\u0a95 \u0a95\u0ab2\u0abe\u0a95",hh:"%d \u0a95\u0ab2\u0abe\u0a95",d:"\u0a8f\u0a95 \u0aa6\u0abf\u0ab5\u0ab8",dd:"%d \u0aa6\u0abf\u0ab5\u0ab8",M:"\u0a8f\u0a95 \u0aae\u0ab9\u0abf\u0aa8\u0acb",MM:"%d \u0aae\u0ab9\u0abf\u0aa8\u0acb",y:"\u0a8f\u0a95 \u0ab5\u0ab0\u0acd\u0ab7",yy:"%d \u0ab5\u0ab0\u0acd\u0ab7"},preparse:function(s){return s.replace(/[\u0ae7\u0ae8\u0ae9\u0aea\u0aeb\u0aec\u0aed\u0aee\u0aef\u0ae6]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0ab0\u0abe\u0aa4|\u0aac\u0aaa\u0acb\u0ab0|\u0ab8\u0ab5\u0abe\u0ab0|\u0ab8\u0abe\u0a82\u0a9c/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u0ab0\u0abe\u0aa4"===h?s<4?s:s+12:"\u0ab8\u0ab5\u0abe\u0ab0"===h?s:"\u0aac\u0aaa\u0acb\u0ab0"===h?s>=10?s:s+12:"\u0ab8\u0abe\u0a82\u0a9c"===h?s+12:void 0},meridiem:function(s,h,f){return s<4?"\u0ab0\u0abe\u0aa4":s<10?"\u0ab8\u0ab5\u0abe\u0ab0":s<17?"\u0aac\u0aaa\u0acb\u0ab0":s<20?"\u0ab8\u0abe\u0a82\u0a9c":"\u0ab0\u0abe\u0aa4"},week:{dow:0,doy:6}})}(n(56908))},45402:function(dt,K,n){!function(P){"use strict";P.defineLocale("he",{months:"\u05d9\u05e0\u05d5\u05d0\u05e8_\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8_\u05de\u05e8\u05e5_\u05d0\u05e4\u05e8\u05d9\u05dc_\u05de\u05d0\u05d9_\u05d9\u05d5\u05e0\u05d9_\u05d9\u05d5\u05dc\u05d9_\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8_\u05e1\u05e4\u05d8\u05de\u05d1\u05e8_\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8_\u05e0\u05d5\u05d1\u05de\u05d1\u05e8_\u05d3\u05e6\u05de\u05d1\u05e8".split("_"),monthsShort:"\u05d9\u05e0\u05d5\u05f3_\u05e4\u05d1\u05e8\u05f3_\u05de\u05e8\u05e5_\u05d0\u05e4\u05e8\u05f3_\u05de\u05d0\u05d9_\u05d9\u05d5\u05e0\u05d9_\u05d9\u05d5\u05dc\u05d9_\u05d0\u05d5\u05d2\u05f3_\u05e1\u05e4\u05d8\u05f3_\u05d0\u05d5\u05e7\u05f3_\u05e0\u05d5\u05d1\u05f3_\u05d3\u05e6\u05de\u05f3".split("_"),weekdays:"\u05e8\u05d0\u05e9\u05d5\u05df_\u05e9\u05e0\u05d9_\u05e9\u05dc\u05d9\u05e9\u05d9_\u05e8\u05d1\u05d9\u05e2\u05d9_\u05d7\u05de\u05d9\u05e9\u05d9_\u05e9\u05d9\u05e9\u05d9_\u05e9\u05d1\u05ea".split("_"),weekdaysShort:"\u05d0\u05f3_\u05d1\u05f3_\u05d2\u05f3_\u05d3\u05f3_\u05d4\u05f3_\u05d5\u05f3_\u05e9\u05f3".split("_"),weekdaysMin:"\u05d0_\u05d1_\u05d2_\u05d3_\u05d4_\u05d5_\u05e9".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [\u05d1]MMMM YYYY",LLL:"D [\u05d1]MMMM YYYY HH:mm",LLLL:"dddd, D [\u05d1]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[\u05d4\u05d9\u05d5\u05dd \u05d1\u05be]LT",nextDay:"[\u05de\u05d7\u05e8 \u05d1\u05be]LT",nextWeek:"dddd [\u05d1\u05e9\u05e2\u05d4] LT",lastDay:"[\u05d0\u05ea\u05de\u05d5\u05dc \u05d1\u05be]LT",lastWeek:"[\u05d1\u05d9\u05d5\u05dd] dddd [\u05d4\u05d0\u05d7\u05e8\u05d5\u05df \u05d1\u05e9\u05e2\u05d4] LT",sameElse:"L"},relativeTime:{future:"\u05d1\u05e2\u05d5\u05d3 %s",past:"\u05dc\u05e4\u05e0\u05d9 %s",s:"\u05de\u05e1\u05e4\u05e8 \u05e9\u05e0\u05d9\u05d5\u05ea",ss:"%d \u05e9\u05e0\u05d9\u05d5\u05ea",m:"\u05d3\u05e7\u05d4",mm:"%d \u05d3\u05e7\u05d5\u05ea",h:"\u05e9\u05e2\u05d4",hh:function(p){return 2===p?"\u05e9\u05e2\u05ea\u05d9\u05d9\u05dd":p+" \u05e9\u05e2\u05d5\u05ea"},d:"\u05d9\u05d5\u05dd",dd:function(p){return 2===p?"\u05d9\u05d5\u05de\u05d9\u05d9\u05dd":p+" \u05d9\u05de\u05d9\u05dd"},M:"\u05d7\u05d5\u05d3\u05e9",MM:function(p){return 2===p?"\u05d7\u05d5\u05d3\u05e9\u05d9\u05d9\u05dd":p+" \u05d7\u05d5\u05d3\u05e9\u05d9\u05dd"},y:"\u05e9\u05e0\u05d4",yy:function(p){return 2===p?"\u05e9\u05e0\u05ea\u05d9\u05d9\u05dd":p%10==0&&10!==p?p+" \u05e9\u05e0\u05d4":p+" \u05e9\u05e0\u05d9\u05dd"}},meridiemParse:/\u05d0\u05d7\u05d4"\u05e6|\u05dc\u05e4\u05e0\u05d4"\u05e6|\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05dc\u05e4\u05e0\u05d5\u05ea \u05d1\u05d5\u05e7\u05e8|\u05d1\u05d1\u05d5\u05e7\u05e8|\u05d1\u05e2\u05e8\u05d1/i,isPM:function(p){return/^(\u05d0\u05d7\u05d4"\u05e6|\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05d1\u05e2\u05e8\u05d1)$/.test(p)},meridiem:function(p,d,s){return p<5?"\u05dc\u05e4\u05e0\u05d5\u05ea \u05d1\u05d5\u05e7\u05e8":p<10?"\u05d1\u05d1\u05d5\u05e7\u05e8":p<12?s?'\u05dc\u05e4\u05e0\u05d4"\u05e6':"\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd":p<18?s?'\u05d0\u05d7\u05d4"\u05e6':"\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd":"\u05d1\u05e2\u05e8\u05d1"}})}(n(56908))},315:function(dt,K,n){!function(P){"use strict";var t={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},e={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};P.defineLocale("hi",{months:"\u091c\u0928\u0935\u0930\u0940_\u092b\u093c\u0930\u0935\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u0948\u0932_\u092e\u0908_\u091c\u0942\u0928_\u091c\u0941\u0932\u093e\u0908_\u0905\u0917\u0938\u094d\u0924_\u0938\u093f\u0924\u092e\u094d\u092c\u0930_\u0905\u0915\u094d\u091f\u0942\u092c\u0930_\u0928\u0935\u092e\u094d\u092c\u0930_\u0926\u093f\u0938\u092e\u094d\u092c\u0930".split("_"),monthsShort:"\u091c\u0928._\u092b\u093c\u0930._\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u0948._\u092e\u0908_\u091c\u0942\u0928_\u091c\u0941\u0932._\u0905\u0917._\u0938\u093f\u0924._\u0905\u0915\u094d\u091f\u0942._\u0928\u0935._\u0926\u093f\u0938.".split("_"),monthsParseExact:!0,weekdays:"\u0930\u0935\u093f\u0935\u093e\u0930_\u0938\u094b\u092e\u0935\u093e\u0930_\u092e\u0902\u0917\u0932\u0935\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u0917\u0941\u0930\u0942\u0935\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930_\u0936\u0928\u093f\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093f_\u0938\u094b\u092e_\u092e\u0902\u0917\u0932_\u092c\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094d\u0930_\u0936\u0928\u093f".split("_"),weekdaysMin:"\u0930_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u092c\u091c\u0947",LTS:"A h:mm:ss \u092c\u091c\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u092c\u091c\u0947",LLLL:"dddd, D MMMM YYYY, A h:mm \u092c\u091c\u0947"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u0915\u0932] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u0932] LT",lastWeek:"[\u092a\u093f\u091b\u0932\u0947] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u092e\u0947\u0902",past:"%s \u092a\u0939\u0932\u0947",s:"\u0915\u0941\u091b \u0939\u0940 \u0915\u094d\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0902\u0921",m:"\u090f\u0915 \u092e\u093f\u0928\u091f",mm:"%d \u092e\u093f\u0928\u091f",h:"\u090f\u0915 \u0918\u0902\u091f\u093e",hh:"%d \u0918\u0902\u091f\u0947",d:"\u090f\u0915 \u0926\u093f\u0928",dd:"%d \u0926\u093f\u0928",M:"\u090f\u0915 \u092e\u0939\u0940\u0928\u0947",MM:"%d \u092e\u0939\u0940\u0928\u0947",y:"\u090f\u0915 \u0935\u0930\u094d\u0937",yy:"%d \u0935\u0930\u094d\u0937"},preparse:function(s){return s.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0930\u093e\u0924|\u0938\u0941\u092c\u0939|\u0926\u094b\u092a\u0939\u0930|\u0936\u093e\u092e/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u0930\u093e\u0924"===h?s<4?s:s+12:"\u0938\u0941\u092c\u0939"===h?s:"\u0926\u094b\u092a\u0939\u0930"===h?s>=10?s:s+12:"\u0936\u093e\u092e"===h?s+12:void 0},meridiem:function(s,h,f){return s<4?"\u0930\u093e\u0924":s<10?"\u0938\u0941\u092c\u0939":s<17?"\u0926\u094b\u092a\u0939\u0930":s<20?"\u0936\u093e\u092e":"\u0930\u093e\u0924"},week:{dow:0,doy:6}})}(n(56908))},10410:function(dt,K,n){!function(P){"use strict";function t(p,d,s){var h=p+" ";switch(s){case"ss":return h+(1===p?"sekunda":2===p||3===p||4===p?"sekunde":"sekundi");case"m":return d?"jedna minuta":"jedne minute";case"mm":return h+(1===p?"minuta":2===p||3===p||4===p?"minute":"minuta");case"h":return d?"jedan sat":"jednog sata";case"hh":return h+(1===p?"sat":2===p||3===p||4===p?"sata":"sati");case"dd":return h+(1===p?"dan":"dana");case"MM":return h+(1===p?"mjesec":2===p||3===p||4===p?"mjeseca":"mjeseci");case"yy":return h+(1===p?"godina":2===p||3===p||4===p?"godine":"godina")}}P.defineLocale("hr",{months:{format:"sije\u010dnja_velja\u010de_o\u017eujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"sije\u010danj_velja\u010da_o\u017eujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._o\u017eu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"Do MMMM YYYY",LLL:"Do MMMM YYYY H:mm",LLLL:"dddd, Do MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010der u] LT",lastWeek:function(){switch(this.day()){case 0:return"[pro\u0161lu] [nedjelju] [u] LT";case 3:return"[pro\u0161lu] [srijedu] [u] LT";case 6:return"[pro\u0161le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[pro\u0161li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},38288:function(dt,K,n){!function(P){"use strict";var t="vas\xe1rnap h\xe9tf\u0151n kedden szerd\xe1n cs\xfct\xf6rt\xf6k\xf6n p\xe9nteken szombaton".split(" ");function e(s,h,f,T){var B=s;switch(f){case"s":return T||h?"n\xe9h\xe1ny m\xe1sodperc":"n\xe9h\xe1ny m\xe1sodperce";case"ss":return B+(T||h)?" m\xe1sodperc":" m\xe1sodperce";case"m":return"egy"+(T||h?" perc":" perce");case"mm":return B+(T||h?" perc":" perce");case"h":return"egy"+(T||h?" \xf3ra":" \xf3r\xe1ja");case"hh":return B+(T||h?" \xf3ra":" \xf3r\xe1ja");case"d":return"egy"+(T||h?" nap":" napja");case"dd":return B+(T||h?" nap":" napja");case"M":return"egy"+(T||h?" h\xf3nap":" h\xf3napja");case"MM":return B+(T||h?" h\xf3nap":" h\xf3napja");case"y":return"egy"+(T||h?" \xe9v":" \xe9ve");case"yy":return B+(T||h?" \xe9v":" \xe9ve")}return""}function p(s){return(s?"":"[m\xfalt] ")+"["+t[this.day()]+"] LT[-kor]"}P.defineLocale("hu",{months:"janu\xe1r_febru\xe1r_m\xe1rcius_\xe1prilis_m\xe1jus_j\xfanius_j\xfalius_augusztus_szeptember_okt\xf3ber_november_december".split("_"),monthsShort:"jan_feb_m\xe1rc_\xe1pr_m\xe1j_j\xfan_j\xfal_aug_szept_okt_nov_dec".split("_"),weekdays:"vas\xe1rnap_h\xe9tf\u0151_kedd_szerda_cs\xfct\xf6rt\xf6k_p\xe9ntek_szombat".split("_"),weekdaysShort:"vas_h\xe9t_kedd_sze_cs\xfct_p\xe9n_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(h){return"u"===h.charAt(1).toLowerCase()},meridiem:function(h,f,T){return h<12?!0===T?"de":"DE":!0===T?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return p.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return p.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s m\xfalva",past:"%s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},67928:function(dt,K,n){!function(P){"use strict";P.defineLocale("hy-am",{months:{format:"\u0570\u0578\u0582\u0576\u057e\u0561\u0580\u056b_\u0583\u0565\u057f\u0580\u057e\u0561\u0580\u056b_\u0574\u0561\u0580\u057f\u056b_\u0561\u057a\u0580\u056b\u056c\u056b_\u0574\u0561\u0575\u056b\u057d\u056b_\u0570\u0578\u0582\u0576\u056b\u057d\u056b_\u0570\u0578\u0582\u056c\u056b\u057d\u056b_\u0585\u0563\u0578\u057d\u057f\u0578\u057d\u056b_\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580\u056b_\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b_\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580\u056b_\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b".split("_"),standalone:"\u0570\u0578\u0582\u0576\u057e\u0561\u0580_\u0583\u0565\u057f\u0580\u057e\u0561\u0580_\u0574\u0561\u0580\u057f_\u0561\u057a\u0580\u056b\u056c_\u0574\u0561\u0575\u056b\u057d_\u0570\u0578\u0582\u0576\u056b\u057d_\u0570\u0578\u0582\u056c\u056b\u057d_\u0585\u0563\u0578\u057d\u057f\u0578\u057d_\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580_\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580_\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580_\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580".split("_")},monthsShort:"\u0570\u0576\u057e_\u0583\u057f\u0580_\u0574\u0580\u057f_\u0561\u057a\u0580_\u0574\u0575\u057d_\u0570\u0576\u057d_\u0570\u056c\u057d_\u0585\u0563\u057d_\u057d\u057a\u057f_\u0570\u056f\u057f_\u0576\u0574\u0562_\u0564\u056f\u057f".split("_"),weekdays:"\u056f\u056b\u0580\u0561\u056f\u056b_\u0565\u0580\u056f\u0578\u0582\u0577\u0561\u0562\u0569\u056b_\u0565\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b_\u0579\u0578\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b_\u0570\u056b\u0576\u0563\u0577\u0561\u0562\u0569\u056b_\u0578\u0582\u0580\u0562\u0561\u0569_\u0577\u0561\u0562\u0561\u0569".split("_"),weekdaysShort:"\u056f\u0580\u056f_\u0565\u0580\u056f_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),weekdaysMin:"\u056f\u0580\u056f_\u0565\u0580\u056f_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0569.",LLL:"D MMMM YYYY \u0569., HH:mm",LLLL:"dddd, D MMMM YYYY \u0569., HH:mm"},calendar:{sameDay:"[\u0561\u0575\u057d\u0585\u0580] LT",nextDay:"[\u057e\u0561\u0572\u0568] LT",lastDay:"[\u0565\u0580\u0565\u056f] LT",nextWeek:function(){return"dddd [\u0585\u0580\u0568 \u056a\u0561\u0574\u0568] LT"},lastWeek:function(){return"[\u0561\u0576\u0581\u0561\u056e] dddd [\u0585\u0580\u0568 \u056a\u0561\u0574\u0568] LT"},sameElse:"L"},relativeTime:{future:"%s \u0570\u0565\u057f\u0578",past:"%s \u0561\u057c\u0561\u057b",s:"\u0574\u056b \u0584\u0561\u0576\u056b \u057e\u0561\u0575\u0580\u056f\u0575\u0561\u0576",ss:"%d \u057e\u0561\u0575\u0580\u056f\u0575\u0561\u0576",m:"\u0580\u0578\u057a\u0565",mm:"%d \u0580\u0578\u057a\u0565",h:"\u056a\u0561\u0574",hh:"%d \u056a\u0561\u0574",d:"\u0585\u0580",dd:"%d \u0585\u0580",M:"\u0561\u0574\u056b\u057d",MM:"%d \u0561\u0574\u056b\u057d",y:"\u057f\u0561\u0580\u056b",yy:"%d \u057f\u0561\u0580\u056b"},meridiemParse:/\u0563\u056b\u0577\u0565\u0580\u057e\u0561|\u0561\u057c\u0561\u057e\u0578\u057f\u057e\u0561|\u0581\u0565\u0580\u0565\u056f\u057e\u0561|\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576/,isPM:function(p){return/^(\u0581\u0565\u0580\u0565\u056f\u057e\u0561|\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576)$/.test(p)},meridiem:function(p){return p<4?"\u0563\u056b\u0577\u0565\u0580\u057e\u0561":p<12?"\u0561\u057c\u0561\u057e\u0578\u057f\u057e\u0561":p<17?"\u0581\u0565\u0580\u0565\u056f\u057e\u0561":"\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(\u056b\u0576|\u0580\u0564)/,ordinal:function(p,d){switch(d){case"DDD":case"w":case"W":case"DDDo":return 1===p?p+"-\u056b\u0576":p+"-\u0580\u0564";default:return p}},week:{dow:1,doy:7}})}(n(56908))},71334:function(dt,K,n){!function(P){"use strict";P.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(p,d){return 12===p&&(p=0),"pagi"===d?p:"siang"===d?p>=11?p:p+12:"sore"===d||"malam"===d?p+12:void 0},meridiem:function(p,d,s){return p<11?"pagi":p<15?"siang":p<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:0,doy:6}})}(n(56908))},86959:function(dt,K,n){!function(P){"use strict";function t(d){return d%100==11||d%10!=1}function e(d,s,h,f){var T=d+" ";switch(h){case"s":return s||f?"nokkrar sek\xfandur":"nokkrum sek\xfandum";case"ss":return t(d)?T+(s||f?"sek\xfandur":"sek\xfandum"):T+"sek\xfanda";case"m":return s?"m\xedn\xfata":"m\xedn\xfatu";case"mm":return t(d)?T+(s||f?"m\xedn\xfatur":"m\xedn\xfatum"):s?T+"m\xedn\xfata":T+"m\xedn\xfatu";case"hh":return t(d)?T+(s||f?"klukkustundir":"klukkustundum"):T+"klukkustund";case"d":return s?"dagur":f?"dag":"degi";case"dd":return t(d)?s?T+"dagar":T+(f?"daga":"d\xf6gum"):s?T+"dagur":T+(f?"dag":"degi");case"M":return s?"m\xe1nu\xf0ur":f?"m\xe1nu\xf0":"m\xe1nu\xf0i";case"MM":return t(d)?s?T+"m\xe1nu\xf0ir":T+(f?"m\xe1nu\xf0i":"m\xe1nu\xf0um"):s?T+"m\xe1nu\xf0ur":T+(f?"m\xe1nu\xf0":"m\xe1nu\xf0i");case"y":return s||f?"\xe1r":"\xe1ri";case"yy":return t(d)?T+(s||f?"\xe1r":"\xe1rum"):T+(s||f?"\xe1r":"\xe1ri")}}P.defineLocale("is",{months:"jan\xfaar_febr\xfaar_mars_apr\xedl_ma\xed_j\xfan\xed_j\xfal\xed_\xe1g\xfast_september_okt\xf3ber_n\xf3vember_desember".split("_"),monthsShort:"jan_feb_mar_apr_ma\xed_j\xfan_j\xfal_\xe1g\xfa_sep_okt_n\xf3v_des".split("_"),weekdays:"sunnudagur_m\xe1nudagur_\xferi\xf0judagur_mi\xf0vikudagur_fimmtudagur_f\xf6studagur_laugardagur".split("_"),weekdaysShort:"sun_m\xe1n_\xferi_mi\xf0_fim_f\xf6s_lau".split("_"),weekdaysMin:"Su_M\xe1_\xder_Mi_Fi_F\xf6_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[\xed dag kl.] LT",nextDay:"[\xe1 morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[\xed g\xe6r kl.] LT",lastWeek:"[s\xed\xf0asta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s s\xed\xf0an",s:e,ss:e,m:e,mm:e,h:"klukkustund",hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},51124:function(dt,K,n){!function(P){"use strict";P.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xec_marted\xec_mercoled\xec_gioved\xec_venerd\xec_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){return 0===this.day()?"[la scorsa] dddd [alle] LT":"[lo scorso] dddd [alle] LT"},sameElse:"L"},relativeTime:{future:function(p){return(/^[0-9].+$/.test(p)?"tra":"in")+" "+p},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},34864:function(dt,K,n){!function(P){"use strict";P.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xec_marted\xec_mercoled\xec_gioved\xec_venerd\xec_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:function(){return"[Oggi a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextDay:function(){return"[Domani a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextWeek:function(){return"dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastDay:function(){return"[Ieri a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastWeek:function(){return 0===this.day()?"[La scorsa] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT":"[Lo scorso] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},sameElse:"L"},relativeTime:{future:function(p){return(/^[0-9].+$/.test(p)?"tra":"in")+" "+p},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},36141:function(dt,K,n){!function(P){"use strict";P.defineLocale("ja",{eras:[{since:"2019-05-01",offset:1,name:"\u4ee4\u548c",narrow:"\u32ff",abbr:"R"},{since:"1989-01-08",until:"2019-04-30",offset:1,name:"\u5e73\u6210",narrow:"\u337b",abbr:"H"},{since:"1926-12-25",until:"1989-01-07",offset:1,name:"\u662d\u548c",narrow:"\u337c",abbr:"S"},{since:"1912-07-30",until:"1926-12-24",offset:1,name:"\u5927\u6b63",narrow:"\u337d",abbr:"T"},{since:"1873-01-01",until:"1912-07-29",offset:6,name:"\u660e\u6cbb",narrow:"\u337e",abbr:"M"},{since:"0001-01-01",until:"1873-12-31",offset:1,name:"\u897f\u66a6",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"\u7d00\u5143\u524d",narrow:"BC",abbr:"BC"}],eraYearOrdinalRegex:/(\u5143|\d+)\u5e74/,eraYearOrdinalParse:function(p,d){return"\u5143"===d[1]?1:parseInt(d[1]||p,10)},months:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u65e5\u66dc\u65e5_\u6708\u66dc\u65e5_\u706b\u66dc\u65e5_\u6c34\u66dc\u65e5_\u6728\u66dc\u65e5_\u91d1\u66dc\u65e5_\u571f\u66dc\u65e5".split("_"),weekdaysShort:"\u65e5_\u6708_\u706b_\u6c34_\u6728_\u91d1_\u571f".split("_"),weekdaysMin:"\u65e5_\u6708_\u706b_\u6c34_\u6728_\u91d1_\u571f".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5(ddd) HH:mm"},meridiemParse:/\u5348\u524d|\u5348\u5f8c/i,isPM:function(p){return"\u5348\u5f8c"===p},meridiem:function(p,d,s){return p<12?"\u5348\u524d":"\u5348\u5f8c"},calendar:{sameDay:"[\u4eca\u65e5] LT",nextDay:"[\u660e\u65e5] LT",nextWeek:function(p){return p.week()!==this.week()?"[\u6765\u9031]dddd LT":"dddd LT"},lastDay:"[\u6628\u65e5] LT",lastWeek:function(p){return this.week()!==p.week()?"[\u5148\u9031]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}\u65e5/,ordinal:function(p,d){switch(d){case"y":return 1===p?"\u5143\u5e74":p+"\u5e74";case"d":case"D":case"DDD":return p+"\u65e5";default:return p}},relativeTime:{future:"%s\u5f8c",past:"%s\u524d",s:"\u6570\u79d2",ss:"%d\u79d2",m:"1\u5206",mm:"%d\u5206",h:"1\u6642\u9593",hh:"%d\u6642\u9593",d:"1\u65e5",dd:"%d\u65e5",M:"1\u30f6\u6708",MM:"%d\u30f6\u6708",y:"1\u5e74",yy:"%d\u5e74"}})}(n(56908))},29187:function(dt,K,n){!function(P){"use strict";P.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(p,d){return 12===p&&(p=0),"enjing"===d?p:"siyang"===d?p>=11?p:p+12:"sonten"===d||"ndalu"===d?p+12:void 0},meridiem:function(p,d,s){return p<11?"enjing":p<15?"siyang":p<19?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",ss:"%d detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}})}(n(56908))},42136:function(dt,K,n){!function(P){"use strict";P.defineLocale("ka",{months:"\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8_\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8_\u10db\u10d0\u10e0\u10e2\u10d8_\u10d0\u10de\u10e0\u10d8\u10da\u10d8_\u10db\u10d0\u10d8\u10e1\u10d8_\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8_\u10d8\u10d5\u10da\u10d8\u10e1\u10d8_\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd_\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8_\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8_\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8_\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8".split("_"),monthsShort:"\u10d8\u10d0\u10dc_\u10d7\u10d4\u10d1_\u10db\u10d0\u10e0_\u10d0\u10de\u10e0_\u10db\u10d0\u10d8_\u10d8\u10d5\u10dc_\u10d8\u10d5\u10da_\u10d0\u10d2\u10d5_\u10e1\u10d4\u10e5_\u10dd\u10e5\u10e2_\u10dc\u10dd\u10d4_\u10d3\u10d4\u10d9".split("_"),weekdays:{standalone:"\u10d9\u10d5\u10d8\u10e0\u10d0_\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10d8_\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8".split("_"),format:"\u10d9\u10d5\u10d8\u10e0\u10d0\u10e1_\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10e1_\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1".split("_"),isFormat:/(\u10ec\u10d8\u10dc\u10d0|\u10e8\u10d4\u10db\u10d3\u10d4\u10d2)/},weekdaysShort:"\u10d9\u10d5\u10d8_\u10dd\u10e0\u10e8_\u10e1\u10d0\u10db_\u10dd\u10d7\u10ee_\u10ee\u10e3\u10d7_\u10de\u10d0\u10e0_\u10e8\u10d0\u10d1".split("_"),weekdaysMin:"\u10d9\u10d5_\u10dd\u10e0_\u10e1\u10d0_\u10dd\u10d7_\u10ee\u10e3_\u10de\u10d0_\u10e8\u10d0".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u10d3\u10e6\u10d4\u10e1] LT[-\u10d6\u10d4]",nextDay:"[\u10ee\u10d5\u10d0\u10da] LT[-\u10d6\u10d4]",lastDay:"[\u10d2\u10e3\u10e8\u10d8\u10dc] LT[-\u10d6\u10d4]",nextWeek:"[\u10e8\u10d4\u10db\u10d3\u10d4\u10d2] dddd LT[-\u10d6\u10d4]",lastWeek:"[\u10ec\u10d8\u10dc\u10d0] dddd LT-\u10d6\u10d4",sameElse:"L"},relativeTime:{future:function(p){return p.replace(/(\u10ec\u10d0\u10db|\u10ec\u10e3\u10d7|\u10e1\u10d0\u10d0\u10d7|\u10ec\u10d4\u10da|\u10d3\u10e6|\u10d7\u10d5)(\u10d8|\u10d4)/,function(d,s,h){return"\u10d8"===h?s+"\u10e8\u10d8":s+h+"\u10e8\u10d8"})},past:function(p){return/(\u10ec\u10d0\u10db\u10d8|\u10ec\u10e3\u10d7\u10d8|\u10e1\u10d0\u10d0\u10d7\u10d8|\u10d3\u10e6\u10d4|\u10d7\u10d5\u10d4)/.test(p)?p.replace(/(\u10d8|\u10d4)$/,"\u10d8\u10e1 \u10ec\u10d8\u10dc"):/\u10ec\u10d4\u10da\u10d8/.test(p)?p.replace(/\u10ec\u10d4\u10da\u10d8$/,"\u10ec\u10da\u10d8\u10e1 \u10ec\u10d8\u10dc"):p},s:"\u10e0\u10d0\u10db\u10d3\u10d4\u10dc\u10d8\u10db\u10d4 \u10ec\u10d0\u10db\u10d8",ss:"%d \u10ec\u10d0\u10db\u10d8",m:"\u10ec\u10e3\u10d7\u10d8",mm:"%d \u10ec\u10e3\u10d7\u10d8",h:"\u10e1\u10d0\u10d0\u10d7\u10d8",hh:"%d \u10e1\u10d0\u10d0\u10d7\u10d8",d:"\u10d3\u10e6\u10d4",dd:"%d \u10d3\u10e6\u10d4",M:"\u10d7\u10d5\u10d4",MM:"%d \u10d7\u10d5\u10d4",y:"\u10ec\u10d4\u10da\u10d8",yy:"%d \u10ec\u10d4\u10da\u10d8"},dayOfMonthOrdinalParse:/0|1-\u10da\u10d8|\u10db\u10d4-\d{1,2}|\d{1,2}-\u10d4/,ordinal:function(p){return 0===p?p:1===p?p+"-\u10da\u10d8":p<20||p<=100&&p%20==0||p%100==0?"\u10db\u10d4-"+p:p+"-\u10d4"},week:{dow:1,doy:7}})}(n(56908))},94332:function(dt,K,n){!function(P){"use strict";var t={0:"-\u0448\u0456",1:"-\u0448\u0456",2:"-\u0448\u0456",3:"-\u0448\u0456",4:"-\u0448\u0456",5:"-\u0448\u0456",6:"-\u0448\u044b",7:"-\u0448\u0456",8:"-\u0448\u0456",9:"-\u0448\u044b",10:"-\u0448\u044b",20:"-\u0448\u044b",30:"-\u0448\u044b",40:"-\u0448\u044b",50:"-\u0448\u0456",60:"-\u0448\u044b",70:"-\u0448\u0456",80:"-\u0448\u0456",90:"-\u0448\u044b",100:"-\u0448\u0456"};P.defineLocale("kk",{months:"\u049b\u0430\u04a3\u0442\u0430\u0440_\u0430\u049b\u043f\u0430\u043d_\u043d\u0430\u0443\u0440\u044b\u0437_\u0441\u04d9\u0443\u0456\u0440_\u043c\u0430\u043c\u044b\u0440_\u043c\u0430\u0443\u0441\u044b\u043c_\u0448\u0456\u043b\u0434\u0435_\u0442\u0430\u043c\u044b\u0437_\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a_\u049b\u0430\u0437\u0430\u043d_\u049b\u0430\u0440\u0430\u0448\u0430_\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d".split("_"),monthsShort:"\u049b\u0430\u04a3_\u0430\u049b\u043f_\u043d\u0430\u0443_\u0441\u04d9\u0443_\u043c\u0430\u043c_\u043c\u0430\u0443_\u0448\u0456\u043b_\u0442\u0430\u043c_\u049b\u044b\u0440_\u049b\u0430\u0437_\u049b\u0430\u0440_\u0436\u0435\u043b".split("_"),weekdays:"\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456_\u0434\u04af\u0439\u0441\u0435\u043d\u0431\u0456_\u0441\u0435\u0439\u0441\u0435\u043d\u0431\u0456_\u0441\u04d9\u0440\u0441\u0435\u043d\u0431\u0456_\u0431\u0435\u0439\u0441\u0435\u043d\u0431\u0456_\u0436\u04b1\u043c\u0430_\u0441\u0435\u043d\u0431\u0456".split("_"),weekdaysShort:"\u0436\u0435\u043a_\u0434\u04af\u0439_\u0441\u0435\u0439_\u0441\u04d9\u0440_\u0431\u0435\u0439_\u0436\u04b1\u043c_\u0441\u0435\u043d".split("_"),weekdaysMin:"\u0436\u043a_\u0434\u0439_\u0441\u0439_\u0441\u0440_\u0431\u0439_\u0436\u043c_\u0441\u043d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04af\u0433\u0456\u043d \u0441\u0430\u0493\u0430\u0442] LT",nextDay:"[\u0415\u0440\u0442\u0435\u04a3 \u0441\u0430\u0493\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0493\u0430\u0442] LT",lastDay:"[\u041a\u0435\u0448\u0435 \u0441\u0430\u0493\u0430\u0442] LT",lastWeek:"[\u04e8\u0442\u043a\u0435\u043d \u0430\u043f\u0442\u0430\u043d\u044b\u04a3] dddd [\u0441\u0430\u0493\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0456\u0448\u0456\u043d\u0434\u0435",past:"%s \u0431\u04b1\u0440\u044b\u043d",s:"\u0431\u0456\u0440\u043d\u0435\u0448\u0435 \u0441\u0435\u043a\u0443\u043d\u0434",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434",m:"\u0431\u0456\u0440 \u043c\u0438\u043d\u0443\u0442",mm:"%d \u043c\u0438\u043d\u0443\u0442",h:"\u0431\u0456\u0440 \u0441\u0430\u0493\u0430\u0442",hh:"%d \u0441\u0430\u0493\u0430\u0442",d:"\u0431\u0456\u0440 \u043a\u04af\u043d",dd:"%d \u043a\u04af\u043d",M:"\u0431\u0456\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0456\u0440 \u0436\u044b\u043b",yy:"%d \u0436\u044b\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0448\u0456|\u0448\u044b)/,ordinal:function(d){return d+(t[d]||t[d%10]||t[d>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},18607:function(dt,K,n){!function(P){"use strict";var t={1:"\u17e1",2:"\u17e2",3:"\u17e3",4:"\u17e4",5:"\u17e5",6:"\u17e6",7:"\u17e7",8:"\u17e8",9:"\u17e9",0:"\u17e0"},e={"\u17e1":"1","\u17e2":"2","\u17e3":"3","\u17e4":"4","\u17e5":"5","\u17e6":"6","\u17e7":"7","\u17e8":"8","\u17e9":"9","\u17e0":"0"};P.defineLocale("km",{months:"\u1798\u1780\u179a\u17b6_\u1780\u17bb\u1798\u17d2\u1797\u17c8_\u1798\u17b8\u1793\u17b6_\u1798\u17c1\u179f\u17b6_\u17a7\u179f\u1797\u17b6_\u1798\u17b7\u1790\u17bb\u1793\u17b6_\u1780\u1780\u17d2\u1780\u178a\u17b6_\u179f\u17b8\u17a0\u17b6_\u1780\u1789\u17d2\u1789\u17b6_\u178f\u17bb\u179b\u17b6_\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6_\u1792\u17d2\u1793\u17bc".split("_"),monthsShort:"\u1798\u1780\u179a\u17b6_\u1780\u17bb\u1798\u17d2\u1797\u17c8_\u1798\u17b8\u1793\u17b6_\u1798\u17c1\u179f\u17b6_\u17a7\u179f\u1797\u17b6_\u1798\u17b7\u1790\u17bb\u1793\u17b6_\u1780\u1780\u17d2\u1780\u178a\u17b6_\u179f\u17b8\u17a0\u17b6_\u1780\u1789\u17d2\u1789\u17b6_\u178f\u17bb\u179b\u17b6_\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6_\u1792\u17d2\u1793\u17bc".split("_"),weekdays:"\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799_\u1785\u17d0\u1793\u17d2\u1791_\u17a2\u1784\u17d2\u1782\u17b6\u179a_\u1796\u17bb\u1792_\u1796\u17d2\u179a\u17a0\u179f\u17d2\u1794\u178f\u17b7\u17cd_\u179f\u17bb\u1780\u17d2\u179a_\u179f\u17c5\u179a\u17cd".split("_"),weekdaysShort:"\u17a2\u17b6_\u1785_\u17a2_\u1796_\u1796\u17d2\u179a_\u179f\u17bb_\u179f".split("_"),weekdaysMin:"\u17a2\u17b6_\u1785_\u17a2_\u1796_\u1796\u17d2\u179a_\u179f\u17bb_\u179f".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u1796\u17d2\u179a\u17b9\u1780|\u179b\u17d2\u1784\u17b6\u1785/,isPM:function(s){return"\u179b\u17d2\u1784\u17b6\u1785"===s},meridiem:function(s,h,f){return s<12?"\u1796\u17d2\u179a\u17b9\u1780":"\u179b\u17d2\u1784\u17b6\u1785"},calendar:{sameDay:"[\u1790\u17d2\u1784\u17c3\u1793\u17c1\u17c7 \u1798\u17c9\u17c4\u1784] LT",nextDay:"[\u179f\u17d2\u17a2\u17c2\u1780 \u1798\u17c9\u17c4\u1784] LT",nextWeek:"dddd [\u1798\u17c9\u17c4\u1784] LT",lastDay:"[\u1798\u17d2\u179f\u17b7\u179b\u1798\u17b7\u1789 \u1798\u17c9\u17c4\u1784] LT",lastWeek:"dddd [\u179f\u1794\u17d2\u178f\u17b6\u17a0\u17cd\u1798\u17bb\u1793] [\u1798\u17c9\u17c4\u1784] LT",sameElse:"L"},relativeTime:{future:"%s\u1791\u17c0\u178f",past:"%s\u1798\u17bb\u1793",s:"\u1794\u17c9\u17bb\u1793\u17d2\u1798\u17b6\u1793\u179c\u17b7\u1793\u17b6\u1791\u17b8",ss:"%d \u179c\u17b7\u1793\u17b6\u1791\u17b8",m:"\u1798\u17bd\u1799\u1793\u17b6\u1791\u17b8",mm:"%d \u1793\u17b6\u1791\u17b8",h:"\u1798\u17bd\u1799\u1798\u17c9\u17c4\u1784",hh:"%d \u1798\u17c9\u17c4\u1784",d:"\u1798\u17bd\u1799\u1790\u17d2\u1784\u17c3",dd:"%d \u1790\u17d2\u1784\u17c3",M:"\u1798\u17bd\u1799\u1781\u17c2",MM:"%d \u1781\u17c2",y:"\u1798\u17bd\u1799\u1786\u17d2\u1793\u17b6\u17c6",yy:"%d \u1786\u17d2\u1793\u17b6\u17c6"},dayOfMonthOrdinalParse:/\u1791\u17b8\d{1,2}/,ordinal:"\u1791\u17b8%d",preparse:function(s){return s.replace(/[\u17e1\u17e2\u17e3\u17e4\u17e5\u17e6\u17e7\u17e8\u17e9\u17e0]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},week:{dow:1,doy:4}})}(n(56908))},84305:function(dt,K,n){!function(P){"use strict";var t={1:"\u0ce7",2:"\u0ce8",3:"\u0ce9",4:"\u0cea",5:"\u0ceb",6:"\u0cec",7:"\u0ced",8:"\u0cee",9:"\u0cef",0:"\u0ce6"},e={"\u0ce7":"1","\u0ce8":"2","\u0ce9":"3","\u0cea":"4","\u0ceb":"5","\u0cec":"6","\u0ced":"7","\u0cee":"8","\u0cef":"9","\u0ce6":"0"};P.defineLocale("kn",{months:"\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf_\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf_\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd_\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd_\u0cae\u0cc6\u0cd5_\u0c9c\u0cc2\u0ca8\u0ccd_\u0c9c\u0cc1\u0cb2\u0cc6\u0cd6_\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd_\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd_\u0c85\u0c95\u0ccd\u0c9f\u0cc6\u0cc2\u0cd5\u0cac\u0cb0\u0ccd_\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd_\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd".split("_"),monthsShort:"\u0c9c\u0ca8_\u0cab\u0cc6\u0cac\u0ccd\u0cb0_\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd_\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd_\u0cae\u0cc6\u0cd5_\u0c9c\u0cc2\u0ca8\u0ccd_\u0c9c\u0cc1\u0cb2\u0cc6\u0cd6_\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd_\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82_\u0c85\u0c95\u0ccd\u0c9f\u0cc6\u0cc2\u0cd5_\u0ca8\u0cb5\u0cc6\u0c82_\u0ca1\u0cbf\u0cb8\u0cc6\u0c82".split("_"),monthsParseExact:!0,weekdays:"\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0_\u0cb8\u0cc6\u0cc2\u0cd5\u0cae\u0cb5\u0cbe\u0cb0_\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0_\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0_\u0c97\u0cc1\u0cb0\u0cc1\u0cb5\u0cbe\u0cb0_\u0cb6\u0cc1\u0c95\u0ccd\u0cb0\u0cb5\u0cbe\u0cb0_\u0cb6\u0ca8\u0cbf\u0cb5\u0cbe\u0cb0".split("_"),weekdaysShort:"\u0cad\u0cbe\u0ca8\u0cc1_\u0cb8\u0cc6\u0cc2\u0cd5\u0cae_\u0cae\u0c82\u0c97\u0cb3_\u0cac\u0cc1\u0ca7_\u0c97\u0cc1\u0cb0\u0cc1_\u0cb6\u0cc1\u0c95\u0ccd\u0cb0_\u0cb6\u0ca8\u0cbf".split("_"),weekdaysMin:"\u0cad\u0cbe_\u0cb8\u0cc6\u0cc2\u0cd5_\u0cae\u0c82_\u0cac\u0cc1_\u0c97\u0cc1_\u0cb6\u0cc1_\u0cb6".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0c87\u0c82\u0ca6\u0cc1] LT",nextDay:"[\u0ca8\u0cbe\u0cb3\u0cc6] LT",nextWeek:"dddd, LT",lastDay:"[\u0ca8\u0cbf\u0ca8\u0ccd\u0ca8\u0cc6] LT",lastWeek:"[\u0c95\u0cc6\u0cc2\u0ca8\u0cc6\u0caf] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0ca8\u0c82\u0ca4\u0cb0",past:"%s \u0cb9\u0cbf\u0c82\u0ca6\u0cc6",s:"\u0c95\u0cc6\u0cb2\u0cb5\u0cc1 \u0c95\u0ccd\u0cb7\u0ca3\u0c97\u0cb3\u0cc1",ss:"%d \u0cb8\u0cc6\u0c95\u0cc6\u0c82\u0ca1\u0cc1\u0c97\u0cb3\u0cc1",m:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca8\u0cbf\u0cae\u0cbf\u0cb7",mm:"%d \u0ca8\u0cbf\u0cae\u0cbf\u0cb7",h:"\u0c92\u0c82\u0ca6\u0cc1 \u0c97\u0c82\u0c9f\u0cc6",hh:"%d \u0c97\u0c82\u0c9f\u0cc6",d:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca6\u0cbf\u0ca8",dd:"%d \u0ca6\u0cbf\u0ca8",M:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1",MM:"%d \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1",y:"\u0c92\u0c82\u0ca6\u0cc1 \u0cb5\u0cb0\u0ccd\u0cb7",yy:"%d \u0cb5\u0cb0\u0ccd\u0cb7"},preparse:function(s){return s.replace(/[\u0ce7\u0ce8\u0ce9\u0cea\u0ceb\u0cec\u0ced\u0cee\u0cef\u0ce6]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf|\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6|\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8|\u0cb8\u0c82\u0c9c\u0cc6/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf"===h?s<4?s:s+12:"\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6"===h?s:"\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8"===h?s>=10?s:s+12:"\u0cb8\u0c82\u0c9c\u0cc6"===h?s+12:void 0},meridiem:function(s,h,f){return s<4?"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf":s<10?"\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6":s<17?"\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8":s<20?"\u0cb8\u0c82\u0c9c\u0cc6":"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf"},dayOfMonthOrdinalParse:/\d{1,2}(\u0ca8\u0cc6\u0cd5)/,ordinal:function(s){return s+"\u0ca8\u0cc6\u0cd5"},week:{dow:0,doy:6}})}(n(56908))},70234:function(dt,K,n){!function(P){"use strict";P.defineLocale("ko",{months:"1\uc6d4_2\uc6d4_3\uc6d4_4\uc6d4_5\uc6d4_6\uc6d4_7\uc6d4_8\uc6d4_9\uc6d4_10\uc6d4_11\uc6d4_12\uc6d4".split("_"),monthsShort:"1\uc6d4_2\uc6d4_3\uc6d4_4\uc6d4_5\uc6d4_6\uc6d4_7\uc6d4_8\uc6d4_9\uc6d4_10\uc6d4_11\uc6d4_12\uc6d4".split("_"),weekdays:"\uc77c\uc694\uc77c_\uc6d4\uc694\uc77c_\ud654\uc694\uc77c_\uc218\uc694\uc77c_\ubaa9\uc694\uc77c_\uae08\uc694\uc77c_\ud1a0\uc694\uc77c".split("_"),weekdaysShort:"\uc77c_\uc6d4_\ud654_\uc218_\ubaa9_\uae08_\ud1a0".split("_"),weekdaysMin:"\uc77c_\uc6d4_\ud654_\uc218_\ubaa9_\uae08_\ud1a0".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY\ub144 MMMM D\uc77c",LLL:"YYYY\ub144 MMMM D\uc77c A h:mm",LLLL:"YYYY\ub144 MMMM D\uc77c dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY\ub144 MMMM D\uc77c",lll:"YYYY\ub144 MMMM D\uc77c A h:mm",llll:"YYYY\ub144 MMMM D\uc77c dddd A h:mm"},calendar:{sameDay:"\uc624\ub298 LT",nextDay:"\ub0b4\uc77c LT",nextWeek:"dddd LT",lastDay:"\uc5b4\uc81c LT",lastWeek:"\uc9c0\ub09c\uc8fc dddd LT",sameElse:"L"},relativeTime:{future:"%s \ud6c4",past:"%s \uc804",s:"\uba87 \ucd08",ss:"%d\ucd08",m:"1\ubd84",mm:"%d\ubd84",h:"\ud55c \uc2dc\uac04",hh:"%d\uc2dc\uac04",d:"\ud558\ub8e8",dd:"%d\uc77c",M:"\ud55c \ub2ec",MM:"%d\ub2ec",y:"\uc77c \ub144",yy:"%d\ub144"},dayOfMonthOrdinalParse:/\d{1,2}(\uc77c|\uc6d4|\uc8fc)/,ordinal:function(p,d){switch(d){case"d":case"D":case"DDD":return p+"\uc77c";case"M":return p+"\uc6d4";case"w":case"W":return p+"\uc8fc";default:return p}},meridiemParse:/\uc624\uc804|\uc624\ud6c4/,isPM:function(p){return"\uc624\ud6c4"===p},meridiem:function(p,d,s){return p<12?"\uc624\uc804":"\uc624\ud6c4"}})}(n(56908))},16003:function(dt,K,n){!function(P){"use strict";var t={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},e={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},p=["\u06a9\u0627\u0646\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645","\u0634\u0648\u0628\u0627\u062a","\u0626\u0627\u0632\u0627\u0631","\u0646\u06cc\u0633\u0627\u0646","\u0626\u0627\u06cc\u0627\u0631","\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646","\u062a\u06d5\u0645\u0645\u0648\u0632","\u0626\u0627\u0628","\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644","\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u0643\u06d5\u0645","\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645","\u0643\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"];P.defineLocale("ku",{months:p,monthsShort:p,weekdays:"\u06cc\u0647\u200c\u0643\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u062f\u0648\u0648\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0633\u06ce\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0686\u0648\u0627\u0631\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u067e\u06ce\u0646\u062c\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0647\u0647\u200c\u06cc\u0646\u06cc_\u0634\u0647\u200c\u0645\u0645\u0647\u200c".split("_"),weekdaysShort:"\u06cc\u0647\u200c\u0643\u0634\u0647\u200c\u0645_\u062f\u0648\u0648\u0634\u0647\u200c\u0645_\u0633\u06ce\u0634\u0647\u200c\u0645_\u0686\u0648\u0627\u0631\u0634\u0647\u200c\u0645_\u067e\u06ce\u0646\u062c\u0634\u0647\u200c\u0645_\u0647\u0647\u200c\u06cc\u0646\u06cc_\u0634\u0647\u200c\u0645\u0645\u0647\u200c".split("_"),weekdaysMin:"\u06cc_\u062f_\u0633_\u0686_\u067e_\u0647_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u0626\u06ce\u0648\u0627\u0631\u0647\u200c|\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc/,isPM:function(h){return/\u0626\u06ce\u0648\u0627\u0631\u0647\u200c/.test(h)},meridiem:function(h,f,T){return h<12?"\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc":"\u0626\u06ce\u0648\u0627\u0631\u0647\u200c"},calendar:{sameDay:"[\u0626\u0647\u200c\u0645\u0631\u06c6 \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",nextDay:"[\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",nextWeek:"dddd [\u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",lastDay:"[\u062f\u0648\u06ce\u0646\u06ce \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",lastWeek:"dddd [\u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",sameElse:"L"},relativeTime:{future:"\u0644\u0647\u200c %s",past:"%s",s:"\u0686\u0647\u200c\u0646\u062f \u0686\u0631\u0643\u0647\u200c\u06cc\u0647\u200c\u0643",ss:"\u0686\u0631\u0643\u0647\u200c %d",m:"\u06cc\u0647\u200c\u0643 \u062e\u0648\u0644\u0647\u200c\u0643",mm:"%d \u062e\u0648\u0644\u0647\u200c\u0643",h:"\u06cc\u0647\u200c\u0643 \u0643\u0627\u062a\u0698\u0645\u06ce\u0631",hh:"%d \u0643\u0627\u062a\u0698\u0645\u06ce\u0631",d:"\u06cc\u0647\u200c\u0643 \u0695\u06c6\u0698",dd:"%d \u0695\u06c6\u0698",M:"\u06cc\u0647\u200c\u0643 \u0645\u0627\u0646\u06af",MM:"%d \u0645\u0627\u0646\u06af",y:"\u06cc\u0647\u200c\u0643 \u0633\u0627\u06b5",yy:"%d \u0633\u0627\u06b5"},preparse:function(h){return h.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(f){return e[f]}).replace(/\u060c/g,",")},postformat:function(h){return h.replace(/\d/g,function(f){return t[f]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}})}(n(56908))},75061:function(dt,K,n){!function(P){"use strict";var t={0:"-\u0447\u04af",1:"-\u0447\u0438",2:"-\u0447\u0438",3:"-\u0447\u04af",4:"-\u0447\u04af",5:"-\u0447\u0438",6:"-\u0447\u044b",7:"-\u0447\u0438",8:"-\u0447\u0438",9:"-\u0447\u0443",10:"-\u0447\u0443",20:"-\u0447\u044b",30:"-\u0447\u0443",40:"-\u0447\u044b",50:"-\u0447\u04af",60:"-\u0447\u044b",70:"-\u0447\u0438",80:"-\u0447\u0438",90:"-\u0447\u0443",100:"-\u0447\u04af"};P.defineLocale("ky",{months:"\u044f\u043d\u0432\u0430\u0440\u044c_\u0444\u0435\u0432\u0440\u0430\u043b\u044c_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b\u044c_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c_\u043e\u043a\u0442\u044f\u0431\u0440\u044c_\u043d\u043e\u044f\u0431\u0440\u044c_\u0434\u0435\u043a\u0430\u0431\u0440\u044c".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u0416\u0435\u043a\u0448\u0435\u043c\u0431\u0438_\u0414\u04af\u0439\u0448\u04e9\u043c\u0431\u04af_\u0428\u0435\u0439\u0448\u0435\u043c\u0431\u0438_\u0428\u0430\u0440\u0448\u0435\u043c\u0431\u0438_\u0411\u0435\u0439\u0448\u0435\u043c\u0431\u0438_\u0416\u0443\u043c\u0430_\u0418\u0448\u0435\u043c\u0431\u0438".split("_"),weekdaysShort:"\u0416\u0435\u043a_\u0414\u04af\u0439_\u0428\u0435\u0439_\u0428\u0430\u0440_\u0411\u0435\u0439_\u0416\u0443\u043c_\u0418\u0448\u0435".split("_"),weekdaysMin:"\u0416\u043a_\u0414\u0439_\u0428\u0439_\u0428\u0440_\u0411\u0439_\u0416\u043c_\u0418\u0448".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04af\u0433\u04af\u043d \u0441\u0430\u0430\u0442] LT",nextDay:"[\u042d\u0440\u0442\u0435\u04a3 \u0441\u0430\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0430\u0442] LT",lastDay:"[\u041a\u0435\u0447\u044d\u044d \u0441\u0430\u0430\u0442] LT",lastWeek:"[\u04e8\u0442\u043a\u04e9\u043d \u0430\u043f\u0442\u0430\u043d\u044b\u043d] dddd [\u043a\u04af\u043d\u04af] [\u0441\u0430\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0438\u0447\u0438\u043d\u0434\u0435",past:"%s \u043c\u0443\u0440\u0443\u043d",s:"\u0431\u0438\u0440\u043d\u0435\u0447\u0435 \u0441\u0435\u043a\u0443\u043d\u0434",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434",m:"\u0431\u0438\u0440 \u043c\u04af\u043d\u04e9\u0442",mm:"%d \u043c\u04af\u043d\u04e9\u0442",h:"\u0431\u0438\u0440 \u0441\u0430\u0430\u0442",hh:"%d \u0441\u0430\u0430\u0442",d:"\u0431\u0438\u0440 \u043a\u04af\u043d",dd:"%d \u043a\u04af\u043d",M:"\u0431\u0438\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0438\u0440 \u0436\u044b\u043b",yy:"%d \u0436\u044b\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0447\u0438|\u0447\u044b|\u0447\u04af|\u0447\u0443)/,ordinal:function(d){return d+(t[d]||t[d%10]||t[d>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},32786:function(dt,K,n){!function(P){"use strict";function t(h,f,T,B){var I={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return f?I[T][0]:I[T][1]}function d(h){if(h=parseInt(h,10),isNaN(h))return!1;if(h<0)return!0;if(h<10)return 4<=h&&h<=7;if(h<100){var f=h%10;return d(0===f?h/10:f)}if(h<1e4){for(;h>=10;)h/=10;return d(h)}return d(h/=1e3)}P.defineLocale("lb",{months:"Januar_Februar_M\xe4erz_Abr\xebll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_M\xe9indeg_D\xebnschdeg_M\xebttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._M\xe9._D\xeb._M\xeb._Do._Fr._Sa.".split("_"),weekdaysMin:"So_M\xe9_D\xeb_M\xeb_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[G\xebschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:function e(h){return d(h.substr(0,h.indexOf(" ")))?"a "+h:"an "+h},past:function p(h){return d(h.substr(0,h.indexOf(" ")))?"viru "+h:"virun "+h},s:"e puer Sekonnen",ss:"%d Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d M\xe9int",y:t,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},66183:function(dt,K,n){!function(P){"use strict";P.defineLocale("lo",{months:"\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99_\u0e81\u0eb8\u0ea1\u0e9e\u0eb2_\u0ea1\u0eb5\u0e99\u0eb2_\u0ec0\u0ea1\u0eaa\u0eb2_\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2_\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2_\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94_\u0eaa\u0eb4\u0e87\u0eab\u0eb2_\u0e81\u0eb1\u0e99\u0e8d\u0eb2_\u0e95\u0eb8\u0ea5\u0eb2_\u0e9e\u0eb0\u0e88\u0eb4\u0e81_\u0e97\u0eb1\u0e99\u0ea7\u0eb2".split("_"),monthsShort:"\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99_\u0e81\u0eb8\u0ea1\u0e9e\u0eb2_\u0ea1\u0eb5\u0e99\u0eb2_\u0ec0\u0ea1\u0eaa\u0eb2_\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2_\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2_\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94_\u0eaa\u0eb4\u0e87\u0eab\u0eb2_\u0e81\u0eb1\u0e99\u0e8d\u0eb2_\u0e95\u0eb8\u0ea5\u0eb2_\u0e9e\u0eb0\u0e88\u0eb4\u0e81_\u0e97\u0eb1\u0e99\u0ea7\u0eb2".split("_"),weekdays:"\u0ead\u0eb2\u0e97\u0eb4\u0e94_\u0e88\u0eb1\u0e99_\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99_\u0e9e\u0eb8\u0e94_\u0e9e\u0eb0\u0eab\u0eb1\u0e94_\u0eaa\u0eb8\u0e81_\u0ec0\u0eaa\u0ebb\u0eb2".split("_"),weekdaysShort:"\u0e97\u0eb4\u0e94_\u0e88\u0eb1\u0e99_\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99_\u0e9e\u0eb8\u0e94_\u0e9e\u0eb0\u0eab\u0eb1\u0e94_\u0eaa\u0eb8\u0e81_\u0ec0\u0eaa\u0ebb\u0eb2".split("_"),weekdaysMin:"\u0e97_\u0e88_\u0ead\u0e84_\u0e9e_\u0e9e\u0eab_\u0eaa\u0e81_\u0eaa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"\u0ea7\u0eb1\u0e99dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0e95\u0ead\u0e99\u0ec0\u0e8a\u0ebb\u0ec9\u0eb2|\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87/,isPM:function(p){return"\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87"===p},meridiem:function(p,d,s){return p<12?"\u0e95\u0ead\u0e99\u0ec0\u0e8a\u0ebb\u0ec9\u0eb2":"\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87"},calendar:{sameDay:"[\u0ea1\u0eb7\u0ec9\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",nextDay:"[\u0ea1\u0eb7\u0ec9\u0ead\u0eb7\u0ec8\u0e99\u0ec0\u0ea7\u0ea5\u0eb2] LT",nextWeek:"[\u0ea7\u0eb1\u0e99]dddd[\u0edc\u0ec9\u0eb2\u0ec0\u0ea7\u0ea5\u0eb2] LT",lastDay:"[\u0ea1\u0eb7\u0ec9\u0ea7\u0eb2\u0e99\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",lastWeek:"[\u0ea7\u0eb1\u0e99]dddd[\u0ec1\u0ea5\u0ec9\u0ea7\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",sameElse:"L"},relativeTime:{future:"\u0ead\u0eb5\u0e81 %s",past:"%s\u0e9c\u0ec8\u0eb2\u0e99\u0ea1\u0eb2",s:"\u0e9a\u0ecd\u0ec8\u0ec0\u0e97\u0ebb\u0ec8\u0eb2\u0ec3\u0e94\u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5",ss:"%d \u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5",m:"1 \u0e99\u0eb2\u0e97\u0eb5",mm:"%d \u0e99\u0eb2\u0e97\u0eb5",h:"1 \u0e8a\u0ebb\u0ec8\u0ea7\u0ec2\u0ea1\u0e87",hh:"%d \u0e8a\u0ebb\u0ec8\u0ea7\u0ec2\u0ea1\u0e87",d:"1 \u0ea1\u0eb7\u0ec9",dd:"%d \u0ea1\u0eb7\u0ec9",M:"1 \u0ec0\u0e94\u0eb7\u0ead\u0e99",MM:"%d \u0ec0\u0e94\u0eb7\u0ead\u0e99",y:"1 \u0e9b\u0eb5",yy:"%d \u0e9b\u0eb5"},dayOfMonthOrdinalParse:/(\u0e97\u0eb5\u0ec8)\d{1,2}/,ordinal:function(p){return"\u0e97\u0eb5\u0ec8"+p}})}(n(56908))},50029:function(dt,K,n){!function(P){"use strict";var t={ss:"sekund\u0117_sekund\u017ei\u0173_sekundes",m:"minut\u0117_minut\u0117s_minut\u0119",mm:"minut\u0117s_minu\u010di\u0173_minutes",h:"valanda_valandos_valand\u0105",hh:"valandos_valand\u0173_valandas",d:"diena_dienos_dien\u0105",dd:"dienos_dien\u0173_dienas",M:"m\u0117nuo_m\u0117nesio_m\u0117nes\u012f",MM:"m\u0117nesiai_m\u0117nesi\u0173_m\u0117nesius",y:"metai_met\u0173_metus",yy:"metai_met\u0173_metus"};function p(T,B,I,v){return B?s(I)[0]:v?s(I)[1]:s(I)[2]}function d(T){return T%10==0||T>10&&T<20}function s(T){return t[T].split("_")}function h(T,B,I,v){var j=T+" ";return 1===T?j+p(0,B,I[0],v):B?j+(d(T)?s(I)[1]:s(I)[0]):v?j+s(I)[1]:j+(d(T)?s(I)[1]:s(I)[2])}P.defineLocale("lt",{months:{format:"sausio_vasario_kovo_baland\u017eio_gegu\u017e\u0117s_bir\u017eelio_liepos_rugpj\u016b\u010dio_rugs\u0117jo_spalio_lapkri\u010dio_gruod\u017eio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegu\u017e\u0117_bir\u017eelis_liepa_rugpj\u016btis_rugs\u0117jis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadien\u012f_pirmadien\u012f_antradien\u012f_tre\u010diadien\u012f_ketvirtadien\u012f_penktadien\u012f_\u0161e\u0161tadien\u012f".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_tre\u010diadienis_ketvirtadienis_penktadienis_\u0161e\u0161tadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_\u0160e\u0161".split("_"),weekdaysMin:"S_P_A_T_K_Pn_\u0160".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[\u0160iandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Pra\u0117jus\u012f] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prie\u0161 %s",s:function e(T,B,I,v){return B?"kelios sekund\u0117s":v?"keli\u0173 sekund\u017ei\u0173":"kelias sekundes"},ss:h,m:p,mm:h,h:p,hh:h,d:p,dd:h,M:p,MM:h,y:p,yy:h},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(B){return B+"-oji"},week:{dow:1,doy:4}})}(n(56908))},24169:function(dt,K,n){!function(P){"use strict";var t={ss:"sekundes_sekund\u0113m_sekunde_sekundes".split("_"),m:"min\u016btes_min\u016bt\u0113m_min\u016bte_min\u016btes".split("_"),mm:"min\u016btes_min\u016bt\u0113m_min\u016bte_min\u016btes".split("_"),h:"stundas_stund\u0101m_stunda_stundas".split("_"),hh:"stundas_stund\u0101m_stunda_stundas".split("_"),d:"dienas_dien\u0101m_diena_dienas".split("_"),dd:"dienas_dien\u0101m_diena_dienas".split("_"),M:"m\u0113ne\u0161a_m\u0113ne\u0161iem_m\u0113nesis_m\u0113ne\u0161i".split("_"),MM:"m\u0113ne\u0161a_m\u0113ne\u0161iem_m\u0113nesis_m\u0113ne\u0161i".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function e(f,T,B){return B?T%10==1&&T%100!=11?f[2]:f[3]:T%10==1&&T%100!=11?f[0]:f[1]}function p(f,T,B){return f+" "+e(t[B],f,T)}function d(f,T,B){return e(t[B],f,T)}P.defineLocale("lv",{months:"janv\u0101ris_febru\u0101ris_marts_apr\u012blis_maijs_j\u016bnijs_j\u016blijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_j\u016bn_j\u016bl_aug_sep_okt_nov_dec".split("_"),weekdays:"sv\u0113tdiena_pirmdiena_otrdiena_tre\u0161diena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[\u0160odien pulksten] LT",nextDay:"[R\u012bt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pag\u0101ju\u0161\u0101] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"p\u0113c %s",past:"pirms %s",s:function s(f,T){return T?"da\u017eas sekundes":"da\u017e\u0101m sekund\u0113m"},ss:p,m:d,mm:p,h:d,hh:p,d:d,dd:p,M:d,MM:p,y:d,yy:p},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},68577:function(dt,K,n){!function(P){"use strict";var t={words:{ss:["sekund","sekunda","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(d,s){return 1===d?s[0]:d>=2&&d<=4?s[1]:s[2]},translate:function(d,s,h){var f=t.words[h];return 1===h.length?s?f[0]:f[1]:d+" "+t.correctGrammaticalCase(d,f)}};P.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010de u] LT",lastWeek:function(){return["[pro\u0161le] [nedjelje] [u] LT","[pro\u0161log] [ponedjeljka] [u] LT","[pro\u0161log] [utorka] [u] LT","[pro\u0161le] [srijede] [u] LT","[pro\u0161log] [\u010detvrtka] [u] LT","[pro\u0161log] [petka] [u] LT","[pro\u0161le] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},68177:function(dt,K,n){!function(P){"use strict";P.defineLocale("mi",{months:"Kohi-t\u0101te_Hui-tanguru_Pout\u016b-te-rangi_Paenga-wh\u0101wh\u0101_Haratua_Pipiri_H\u014dngoingoi_Here-turi-k\u014dk\u0101_Mahuru_Whiringa-\u0101-nuku_Whiringa-\u0101-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_H\u014dngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"R\u0101tapu_Mane_T\u016brei_Wenerei_T\u0101ite_Paraire_H\u0101tarei".split("_"),weekdaysShort:"Ta_Ma_T\u016b_We_T\u0101i_Pa_H\u0101".split("_"),weekdaysMin:"Ta_Ma_T\u016b_We_T\u0101i_Pa_H\u0101".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te h\u0113kona ruarua",ss:"%d h\u0113kona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},50337:function(dt,K,n){!function(P){"use strict";P.defineLocale("mk",{months:"\u0458\u0430\u043d\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0458_\u0458\u0443\u043d\u0438_\u0458\u0443\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438_\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438_\u043d\u043e\u0435\u043c\u0432\u0440\u0438_\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438".split("_"),monthsShort:"\u0458\u0430\u043d_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433_\u0441\u0435\u043f_\u043e\u043a\u0442_\u043d\u043e\u0435_\u0434\u0435\u043a".split("_"),weekdays:"\u043d\u0435\u0434\u0435\u043b\u0430_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0440\u0442\u043e\u043a_\u043f\u0435\u0442\u043e\u043a_\u0441\u0430\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434_\u043f\u043e\u043d_\u0432\u0442\u043e_\u0441\u0440\u0435_\u0447\u0435\u0442_\u043f\u0435\u0442_\u0441\u0430\u0431".split("_"),weekdaysMin:"\u043de_\u043fo_\u0432\u0442_\u0441\u0440_\u0447\u0435_\u043f\u0435_\u0441a".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u0435\u043d\u0435\u0441 \u0432\u043e] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432\u043e] LT",nextWeek:"[\u0412\u043e] dddd [\u0432\u043e] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432\u043e] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[\u0418\u0437\u043c\u0438\u043d\u0430\u0442\u0430\u0442\u0430] dddd [\u0432\u043e] LT";case 1:case 2:case 4:case 5:return"[\u0418\u0437\u043c\u0438\u043d\u0430\u0442\u0438\u043e\u0442] dddd [\u0432\u043e] LT"}},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"\u043f\u0440\u0435\u0434 %s",s:"\u043d\u0435\u043a\u043e\u043b\u043a\u0443 \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434\u0438",m:"\u0435\u0434\u043d\u0430 \u043c\u0438\u043d\u0443\u0442\u0430",mm:"%d \u043c\u0438\u043d\u0443\u0442\u0438",h:"\u0435\u0434\u0435\u043d \u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0435\u0434\u0435\u043d \u0434\u0435\u043d",dd:"%d \u0434\u0435\u043d\u0430",M:"\u0435\u0434\u0435\u043d \u043c\u0435\u0441\u0435\u0446",MM:"%d \u043c\u0435\u0441\u0435\u0446\u0438",y:"\u0435\u0434\u043d\u0430 \u0433\u043e\u0434\u0438\u043d\u0430",yy:"%d \u0433\u043e\u0434\u0438\u043d\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0435\u0432|\u0435\u043d|\u0442\u0438|\u0432\u0438|\u0440\u0438|\u043c\u0438)/,ordinal:function(p){var d=p%10,s=p%100;return 0===p?p+"-\u0435\u0432":0===s?p+"-\u0435\u043d":s>10&&s<20?p+"-\u0442\u0438":1===d?p+"-\u0432\u0438":2===d?p+"-\u0440\u0438":7===d||8===d?p+"-\u043c\u0438":p+"-\u0442\u0438"},week:{dow:1,doy:7}})}(n(56908))},65260:function(dt,K,n){!function(P){"use strict";P.defineLocale("ml",{months:"\u0d1c\u0d28\u0d41\u0d35\u0d30\u0d3f_\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41\u0d35\u0d30\u0d3f_\u0d2e\u0d3e\u0d7c\u0d1a\u0d4d\u0d1a\u0d4d_\u0d0f\u0d2a\u0d4d\u0d30\u0d3f\u0d7d_\u0d2e\u0d47\u0d2f\u0d4d_\u0d1c\u0d42\u0d7a_\u0d1c\u0d42\u0d32\u0d48_\u0d13\u0d17\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d_\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02\u0d2c\u0d7c_\u0d12\u0d15\u0d4d\u0d1f\u0d4b\u0d2c\u0d7c_\u0d28\u0d35\u0d02\u0d2c\u0d7c_\u0d21\u0d3f\u0d38\u0d02\u0d2c\u0d7c".split("_"),monthsShort:"\u0d1c\u0d28\u0d41._\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41._\u0d2e\u0d3e\u0d7c._\u0d0f\u0d2a\u0d4d\u0d30\u0d3f._\u0d2e\u0d47\u0d2f\u0d4d_\u0d1c\u0d42\u0d7a_\u0d1c\u0d42\u0d32\u0d48._\u0d13\u0d17._\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31._\u0d12\u0d15\u0d4d\u0d1f\u0d4b._\u0d28\u0d35\u0d02._\u0d21\u0d3f\u0d38\u0d02.".split("_"),monthsParseExact:!0,weekdays:"\u0d1e\u0d3e\u0d2f\u0d31\u0d3e\u0d34\u0d4d\u0d1a_\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d33\u0d3e\u0d34\u0d4d\u0d1a_\u0d1a\u0d4a\u0d35\u0d4d\u0d35\u0d3e\u0d34\u0d4d\u0d1a_\u0d2c\u0d41\u0d27\u0d28\u0d3e\u0d34\u0d4d\u0d1a_\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d3e\u0d34\u0d4d\u0d1a_\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u0d1a_\u0d36\u0d28\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u0d1a".split("_"),weekdaysShort:"\u0d1e\u0d3e\u0d2f\u0d7c_\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d7e_\u0d1a\u0d4a\u0d35\u0d4d\u0d35_\u0d2c\u0d41\u0d27\u0d7b_\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d02_\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f_\u0d36\u0d28\u0d3f".split("_"),weekdaysMin:"\u0d1e\u0d3e_\u0d24\u0d3f_\u0d1a\u0d4a_\u0d2c\u0d41_\u0d35\u0d4d\u0d2f\u0d3e_\u0d35\u0d46_\u0d36".split("_"),longDateFormat:{LT:"A h:mm -\u0d28\u0d41",LTS:"A h:mm:ss -\u0d28\u0d41",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -\u0d28\u0d41",LLLL:"dddd, D MMMM YYYY, A h:mm -\u0d28\u0d41"},calendar:{sameDay:"[\u0d07\u0d28\u0d4d\u0d28\u0d4d] LT",nextDay:"[\u0d28\u0d3e\u0d33\u0d46] LT",nextWeek:"dddd, LT",lastDay:"[\u0d07\u0d28\u0d4d\u0d28\u0d32\u0d46] LT",lastWeek:"[\u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d",past:"%s \u0d2e\u0d41\u0d7b\u0d2a\u0d4d",s:"\u0d05\u0d7d\u0d2a \u0d28\u0d3f\u0d2e\u0d3f\u0d37\u0d19\u0d4d\u0d19\u0d7e",ss:"%d \u0d38\u0d46\u0d15\u0d4d\u0d15\u0d7b\u0d21\u0d4d",m:"\u0d12\u0d30\u0d41 \u0d2e\u0d3f\u0d28\u0d3f\u0d31\u0d4d\u0d31\u0d4d",mm:"%d \u0d2e\u0d3f\u0d28\u0d3f\u0d31\u0d4d\u0d31\u0d4d",h:"\u0d12\u0d30\u0d41 \u0d2e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d42\u0d7c",hh:"%d \u0d2e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d42\u0d7c",d:"\u0d12\u0d30\u0d41 \u0d26\u0d3f\u0d35\u0d38\u0d02",dd:"%d \u0d26\u0d3f\u0d35\u0d38\u0d02",M:"\u0d12\u0d30\u0d41 \u0d2e\u0d3e\u0d38\u0d02",MM:"%d \u0d2e\u0d3e\u0d38\u0d02",y:"\u0d12\u0d30\u0d41 \u0d35\u0d7c\u0d37\u0d02",yy:"%d \u0d35\u0d7c\u0d37\u0d02"},meridiemParse:/\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f|\u0d30\u0d3e\u0d35\u0d3f\u0d32\u0d46|\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d|\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02|\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f/i,meridiemHour:function(p,d){return 12===p&&(p=0),"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f"===d&&p>=4||"\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d"===d||"\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02"===d?p+12:p},meridiem:function(p,d,s){return p<4?"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f":p<12?"\u0d30\u0d3e\u0d35\u0d3f\u0d32\u0d46":p<17?"\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d":p<20?"\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02":"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f"}})}(n(56908))},52325:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){switch(s){case"s":return d?"\u0445\u044d\u0434\u0445\u044d\u043d \u0441\u0435\u043a\u0443\u043d\u0434":"\u0445\u044d\u0434\u0445\u044d\u043d \u0441\u0435\u043a\u0443\u043d\u0434\u044b\u043d";case"ss":return p+(d?" \u0441\u0435\u043a\u0443\u043d\u0434":" \u0441\u0435\u043a\u0443\u043d\u0434\u044b\u043d");case"m":case"mm":return p+(d?" \u043c\u0438\u043d\u0443\u0442":" \u043c\u0438\u043d\u0443\u0442\u044b\u043d");case"h":case"hh":return p+(d?" \u0446\u0430\u0433":" \u0446\u0430\u0433\u0438\u0439\u043d");case"d":case"dd":return p+(d?" \u04e9\u0434\u04e9\u0440":" \u04e9\u0434\u0440\u0438\u0439\u043d");case"M":case"MM":return p+(d?" \u0441\u0430\u0440":" \u0441\u0430\u0440\u044b\u043d");case"y":case"yy":return p+(d?" \u0436\u0438\u043b":" \u0436\u0438\u043b\u0438\u0439\u043d");default:return p}}P.defineLocale("mn",{months:"\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u043e\u043b\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440".split("_"),monthsShort:"1 \u0441\u0430\u0440_2 \u0441\u0430\u0440_3 \u0441\u0430\u0440_4 \u0441\u0430\u0440_5 \u0441\u0430\u0440_6 \u0441\u0430\u0440_7 \u0441\u0430\u0440_8 \u0441\u0430\u0440_9 \u0441\u0430\u0440_10 \u0441\u0430\u0440_11 \u0441\u0430\u0440_12 \u0441\u0430\u0440".split("_"),monthsParseExact:!0,weekdays:"\u041d\u044f\u043c_\u0414\u0430\u0432\u0430\u0430_\u041c\u044f\u0433\u043c\u0430\u0440_\u041b\u0445\u0430\u0433\u0432\u0430_\u041f\u04af\u0440\u044d\u0432_\u0411\u0430\u0430\u0441\u0430\u043d_\u0411\u044f\u043c\u0431\u0430".split("_"),weekdaysShort:"\u041d\u044f\u043c_\u0414\u0430\u0432_\u041c\u044f\u0433_\u041b\u0445\u0430_\u041f\u04af\u0440_\u0411\u0430\u0430_\u0411\u044f\u043c".split("_"),weekdaysMin:"\u041d\u044f_\u0414\u0430_\u041c\u044f_\u041b\u0445_\u041f\u04af_\u0411\u0430_\u0411\u044f".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY \u043e\u043d\u044b MMMM\u044b\u043d D",LLL:"YYYY \u043e\u043d\u044b MMMM\u044b\u043d D HH:mm",LLLL:"dddd, YYYY \u043e\u043d\u044b MMMM\u044b\u043d D HH:mm"},meridiemParse:/\u04ae\u04e8|\u04ae\u0425/i,isPM:function(d){return"\u04ae\u0425"===d},meridiem:function(d,s,h){return d<12?"\u04ae\u04e8":"\u04ae\u0425"},calendar:{sameDay:"[\u04e8\u043d\u04e9\u04e9\u0434\u04e9\u0440] LT",nextDay:"[\u041c\u0430\u0440\u0433\u0430\u0430\u0448] LT",nextWeek:"[\u0418\u0440\u044d\u0445] dddd LT",lastDay:"[\u04e8\u0447\u0438\u0433\u0434\u04e9\u0440] LT",lastWeek:"[\u04e8\u043d\u0433\u04e9\u0440\u0441\u04e9\u043d] dddd LT",sameElse:"L"},relativeTime:{future:"%s \u0434\u0430\u0440\u0430\u0430",past:"%s \u04e9\u043c\u043d\u04e9",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2} \u04e9\u0434\u04e9\u0440/,ordinal:function(d,s){switch(s){case"d":case"D":case"DDD":return d+" \u04e9\u0434\u04e9\u0440";default:return d}}})}(n(56908))},14695:function(dt,K,n){!function(P){"use strict";var t={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},e={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};function p(s,h,f,T){var B="";if(h)switch(f){case"s":B="\u0915\u093e\u0939\u0940 \u0938\u0947\u0915\u0902\u0926";break;case"ss":B="%d \u0938\u0947\u0915\u0902\u0926";break;case"m":B="\u090f\u0915 \u092e\u093f\u0928\u093f\u091f";break;case"mm":B="%d \u092e\u093f\u0928\u093f\u091f\u0947";break;case"h":B="\u090f\u0915 \u0924\u093e\u0938";break;case"hh":B="%d \u0924\u093e\u0938";break;case"d":B="\u090f\u0915 \u0926\u093f\u0935\u0938";break;case"dd":B="%d \u0926\u093f\u0935\u0938";break;case"M":B="\u090f\u0915 \u092e\u0939\u093f\u0928\u093e";break;case"MM":B="%d \u092e\u0939\u093f\u0928\u0947";break;case"y":B="\u090f\u0915 \u0935\u0930\u094d\u0937";break;case"yy":B="%d \u0935\u0930\u094d\u0937\u0947"}else switch(f){case"s":B="\u0915\u093e\u0939\u0940 \u0938\u0947\u0915\u0902\u0926\u093e\u0902";break;case"ss":B="%d \u0938\u0947\u0915\u0902\u0926\u093e\u0902";break;case"m":B="\u090f\u0915\u093e \u092e\u093f\u0928\u093f\u091f\u093e";break;case"mm":B="%d \u092e\u093f\u0928\u093f\u091f\u093e\u0902";break;case"h":B="\u090f\u0915\u093e \u0924\u093e\u0938\u093e";break;case"hh":B="%d \u0924\u093e\u0938\u093e\u0902";break;case"d":B="\u090f\u0915\u093e \u0926\u093f\u0935\u0938\u093e";break;case"dd":B="%d \u0926\u093f\u0935\u0938\u093e\u0902";break;case"M":B="\u090f\u0915\u093e \u092e\u0939\u093f\u0928\u094d\u092f\u093e";break;case"MM":B="%d \u092e\u0939\u093f\u0928\u094d\u092f\u093e\u0902";break;case"y":B="\u090f\u0915\u093e \u0935\u0930\u094d\u0937\u093e";break;case"yy":B="%d \u0935\u0930\u094d\u0937\u093e\u0902"}return B.replace(/%d/i,s)}P.defineLocale("mr",{months:"\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u090f\u092a\u094d\u0930\u093f\u0932_\u092e\u0947_\u091c\u0942\u0928_\u091c\u0941\u0932\u0948_\u0911\u0917\u0938\u094d\u091f_\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930_\u0911\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930_\u0921\u093f\u0938\u0947\u0902\u092c\u0930".split("_"),monthsShort:"\u091c\u093e\u0928\u0947._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a._\u090f\u092a\u094d\u0930\u093f._\u092e\u0947._\u091c\u0942\u0928._\u091c\u0941\u0932\u0948._\u0911\u0917._\u0938\u092a\u094d\u091f\u0947\u0902._\u0911\u0915\u094d\u091f\u094b._\u0928\u094b\u0935\u094d\u0939\u0947\u0902._\u0921\u093f\u0938\u0947\u0902.".split("_"),monthsParseExact:!0,weekdays:"\u0930\u0935\u093f\u0935\u093e\u0930_\u0938\u094b\u092e\u0935\u093e\u0930_\u092e\u0902\u0917\u0933\u0935\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u0917\u0941\u0930\u0942\u0935\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930_\u0936\u0928\u093f\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093f_\u0938\u094b\u092e_\u092e\u0902\u0917\u0933_\u092c\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094d\u0930_\u0936\u0928\u093f".split("_"),weekdaysMin:"\u0930_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u0935\u093e\u091c\u0924\u093e",LTS:"A h:mm:ss \u0935\u093e\u091c\u0924\u093e",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0935\u093e\u091c\u0924\u093e",LLLL:"dddd, D MMMM YYYY, A h:mm \u0935\u093e\u091c\u0924\u093e"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u0909\u0926\u094d\u092f\u093e] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u093e\u0932] LT",lastWeek:"[\u092e\u093e\u0917\u0940\u0932] dddd, LT",sameElse:"L"},relativeTime:{future:"%s\u092e\u0927\u094d\u092f\u0947",past:"%s\u092a\u0942\u0930\u094d\u0935\u0940",s:p,ss:p,m:p,mm:p,h:p,hh:p,d:p,dd:p,M:p,MM:p,y:p,yy:p},preparse:function(h){return h.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(f){return e[f]})},postformat:function(h){return h.replace(/\d/g,function(f){return t[f]})},meridiemParse:/\u092a\u0939\u093e\u091f\u0947|\u0938\u0915\u093e\u0933\u0940|\u0926\u0941\u092a\u093e\u0930\u0940|\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940|\u0930\u093e\u0924\u094d\u0930\u0940/,meridiemHour:function(h,f){return 12===h&&(h=0),"\u092a\u0939\u093e\u091f\u0947"===f||"\u0938\u0915\u093e\u0933\u0940"===f?h:"\u0926\u0941\u092a\u093e\u0930\u0940"===f||"\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940"===f||"\u0930\u093e\u0924\u094d\u0930\u0940"===f?h>=12?h:h+12:void 0},meridiem:function(h,f,T){return h>=0&&h<6?"\u092a\u0939\u093e\u091f\u0947":h<12?"\u0938\u0915\u093e\u0933\u0940":h<17?"\u0926\u0941\u092a\u093e\u0930\u0940":h<20?"\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940":"\u0930\u093e\u0924\u094d\u0930\u0940"},week:{dow:0,doy:6}})}(n(56908))},37151:function(dt,K,n){!function(P){"use strict";P.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(p,d){return 12===p&&(p=0),"pagi"===d?p:"tengahari"===d?p>=11?p:p+12:"petang"===d||"malam"===d?p+12:void 0},meridiem:function(p,d,s){return p<11?"pagi":p<15?"tengahari":p<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n(56908))},75334:function(dt,K,n){!function(P){"use strict";P.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(p,d){return 12===p&&(p=0),"pagi"===d?p:"tengahari"===d?p>=11?p:p+12:"petang"===d||"malam"===d?p+12:void 0},meridiem:function(p,d,s){return p<11?"pagi":p<15?"tengahari":p<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n(56908))},63570:function(dt,K,n){!function(P){"use strict";P.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_\u0120unju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Di\u010bembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_\u0120un_Lul_Aww_Set_Ott_Nov_Di\u010b".split("_"),weekdays:"Il-\u0126add_It-Tnejn_It-Tlieta_L-Erbg\u0127a_Il-\u0126amis_Il-\u0120img\u0127a_Is-Sibt".split("_"),weekdaysShort:"\u0126ad_Tne_Tli_Erb_\u0126am_\u0120im_Sib".split("_"),weekdaysMin:"\u0126a_Tn_Tl_Er_\u0126a_\u0120i_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[G\u0127ada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-biera\u0127 fil-]LT",lastWeek:"dddd [li g\u0127adda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f\u2019 %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"sieg\u0127a",hh:"%d sieg\u0127at",d:"\u0121urnata",dd:"%d \u0121ranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},97963:function(dt,K,n){!function(P){"use strict";var t={1:"\u1041",2:"\u1042",3:"\u1043",4:"\u1044",5:"\u1045",6:"\u1046",7:"\u1047",8:"\u1048",9:"\u1049",0:"\u1040"},e={"\u1041":"1","\u1042":"2","\u1043":"3","\u1044":"4","\u1045":"5","\u1046":"6","\u1047":"7","\u1048":"8","\u1049":"9","\u1040":"0"};P.defineLocale("my",{months:"\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e_\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e_\u1019\u1010\u103a_\u1027\u1015\u103c\u102e_\u1019\u1031_\u1007\u103d\u1014\u103a_\u1007\u1030\u101c\u102d\u102f\u1004\u103a_\u101e\u103c\u1002\u102f\u1010\u103a_\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c_\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c_\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c_\u1012\u102e\u1007\u1004\u103a\u1018\u102c".split("_"),monthsShort:"\u1007\u1014\u103a_\u1016\u1031_\u1019\u1010\u103a_\u1015\u103c\u102e_\u1019\u1031_\u1007\u103d\u1014\u103a_\u101c\u102d\u102f\u1004\u103a_\u101e\u103c_\u1005\u1000\u103a_\u1021\u1031\u102c\u1000\u103a_\u1014\u102d\u102f_\u1012\u102e".split("_"),weekdays:"\u1010\u1014\u1004\u103a\u1039\u1002\u1014\u103d\u1031_\u1010\u1014\u1004\u103a\u1039\u101c\u102c_\u1021\u1004\u103a\u1039\u1002\u102b_\u1017\u102f\u1012\u1039\u1013\u101f\u1030\u1038_\u1000\u103c\u102c\u101e\u1015\u1010\u1031\u1038_\u101e\u1031\u102c\u1000\u103c\u102c_\u1005\u1014\u1031".split("_"),weekdaysShort:"\u1014\u103d\u1031_\u101c\u102c_\u1002\u102b_\u101f\u1030\u1038_\u1000\u103c\u102c_\u101e\u1031\u102c_\u1014\u1031".split("_"),weekdaysMin:"\u1014\u103d\u1031_\u101c\u102c_\u1002\u102b_\u101f\u1030\u1038_\u1000\u103c\u102c_\u101e\u1031\u102c_\u1014\u1031".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u101a\u1014\u1031.] LT [\u1019\u103e\u102c]",nextDay:"[\u1019\u1014\u1000\u103a\u1016\u103c\u1014\u103a] LT [\u1019\u103e\u102c]",nextWeek:"dddd LT [\u1019\u103e\u102c]",lastDay:"[\u1019\u1014\u1031.\u1000] LT [\u1019\u103e\u102c]",lastWeek:"[\u1015\u103c\u102e\u1038\u1001\u1032\u1037\u101e\u1031\u102c] dddd LT [\u1019\u103e\u102c]",sameElse:"L"},relativeTime:{future:"\u101c\u102c\u1019\u100a\u103a\u1037 %s \u1019\u103e\u102c",past:"\u101c\u103d\u1014\u103a\u1001\u1032\u1037\u101e\u1031\u102c %s \u1000",s:"\u1005\u1000\u1039\u1000\u1014\u103a.\u1021\u1014\u100a\u103a\u1038\u1004\u101a\u103a",ss:"%d \u1005\u1000\u1039\u1000\u1014\u1037\u103a",m:"\u1010\u1005\u103a\u1019\u102d\u1014\u1005\u103a",mm:"%d \u1019\u102d\u1014\u1005\u103a",h:"\u1010\u1005\u103a\u1014\u102c\u101b\u102e",hh:"%d \u1014\u102c\u101b\u102e",d:"\u1010\u1005\u103a\u101b\u1000\u103a",dd:"%d \u101b\u1000\u103a",M:"\u1010\u1005\u103a\u101c",MM:"%d \u101c",y:"\u1010\u1005\u103a\u1014\u103e\u1005\u103a",yy:"%d \u1014\u103e\u1005\u103a"},preparse:function(s){return s.replace(/[\u1041\u1042\u1043\u1044\u1045\u1046\u1047\u1048\u1049\u1040]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},week:{dow:1,doy:4}})}(n(56908))},88028:function(dt,K,n){!function(P){"use strict";P.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"s\xf8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xf8rdag".split("_"),weekdaysShort:"s\xf8._ma._ti._on._to._fr._l\xf8.".split("_"),weekdaysMin:"s\xf8_ma_ti_on_to_fr_l\xf8".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i g\xe5r kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en m\xe5ned",MM:"%d m\xe5neder",y:"ett \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},86638:function(dt,K,n){!function(P){"use strict";var t={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},e={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};P.defineLocale("ne",{months:"\u091c\u0928\u0935\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u093f\u0932_\u092e\u0908_\u091c\u0941\u0928_\u091c\u0941\u0932\u093e\u0908_\u0905\u0917\u0937\u094d\u091f_\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930_\u0905\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930_\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930".split("_"),monthsShort:"\u091c\u0928._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u093f._\u092e\u0908_\u091c\u0941\u0928_\u091c\u0941\u0932\u093e\u0908._\u0905\u0917._\u0938\u0947\u092a\u094d\u091f._\u0905\u0915\u094d\u091f\u094b._\u0928\u094b\u092d\u0947._\u0921\u093f\u0938\u0947.".split("_"),monthsParseExact:!0,weekdays:"\u0906\u0907\u0924\u092c\u093e\u0930_\u0938\u094b\u092e\u092c\u093e\u0930_\u092e\u0919\u094d\u0917\u0932\u092c\u093e\u0930_\u092c\u0941\u0927\u092c\u093e\u0930_\u092c\u093f\u0939\u093f\u092c\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u092c\u093e\u0930_\u0936\u0928\u093f\u092c\u093e\u0930".split("_"),weekdaysShort:"\u0906\u0907\u0924._\u0938\u094b\u092e._\u092e\u0919\u094d\u0917\u0932._\u092c\u0941\u0927._\u092c\u093f\u0939\u093f._\u0936\u0941\u0915\u094d\u0930._\u0936\u0928\u093f.".split("_"),weekdaysMin:"\u0906._\u0938\u094b._\u092e\u0902._\u092c\u0941._\u092c\u093f._\u0936\u0941._\u0936.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A\u0915\u094b h:mm \u092c\u091c\u0947",LTS:"A\u0915\u094b h:mm:ss \u092c\u091c\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A\u0915\u094b h:mm \u092c\u091c\u0947",LLLL:"dddd, D MMMM YYYY, A\u0915\u094b h:mm \u092c\u091c\u0947"},preparse:function(s){return s.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0930\u093e\u0924\u093f|\u092c\u093f\u0939\u093e\u0928|\u0926\u093f\u0909\u0901\u0938\u094b|\u0938\u093e\u0901\u091d/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u0930\u093e\u0924\u093f"===h?s<4?s:s+12:"\u092c\u093f\u0939\u093e\u0928"===h?s:"\u0926\u093f\u0909\u0901\u0938\u094b"===h?s>=10?s:s+12:"\u0938\u093e\u0901\u091d"===h?s+12:void 0},meridiem:function(s,h,f){return s<3?"\u0930\u093e\u0924\u093f":s<12?"\u092c\u093f\u0939\u093e\u0928":s<16?"\u0926\u093f\u0909\u0901\u0938\u094b":s<20?"\u0938\u093e\u0901\u091d":"\u0930\u093e\u0924\u093f"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u092d\u094b\u0932\u093f] LT",nextWeek:"[\u0906\u0909\u0901\u0926\u094b] dddd[,] LT",lastDay:"[\u0939\u093f\u091c\u094b] LT",lastWeek:"[\u0917\u090f\u0915\u094b] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s\u092e\u093e",past:"%s \u0905\u0917\u093e\u0921\u093f",s:"\u0915\u0947\u0939\u0940 \u0915\u094d\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0947\u0923\u094d\u0921",m:"\u090f\u0915 \u092e\u093f\u0928\u0947\u091f",mm:"%d \u092e\u093f\u0928\u0947\u091f",h:"\u090f\u0915 \u0918\u0923\u094d\u091f\u093e",hh:"%d \u0918\u0923\u094d\u091f\u093e",d:"\u090f\u0915 \u0926\u093f\u0928",dd:"%d \u0926\u093f\u0928",M:"\u090f\u0915 \u092e\u0939\u093f\u0928\u093e",MM:"%d \u092e\u0939\u093f\u0928\u093e",y:"\u090f\u0915 \u092c\u0930\u094d\u0937",yy:"%d \u092c\u0930\u094d\u0937"},week:{dow:0,doy:6}})}(n(56908))},66782:function(dt,K,n){!function(P){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),e="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),p=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],d=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;P.defineLocale("nl-be",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(f,T){return f?/-MMM-/.test(T)?e[f.month()]:t[f.month()]:t},monthsRegex:d,monthsShortRegex:d,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:p,longMonthsParse:p,shortMonthsParse:p,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xe9\xe9n minuut",mm:"%d minuten",h:"\xe9\xe9n uur",hh:"%d uur",d:"\xe9\xe9n dag",dd:"%d dagen",M:"\xe9\xe9n maand",MM:"%d maanden",y:"\xe9\xe9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(f){return f+(1===f||8===f||f>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},50302:function(dt,K,n){!function(P){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),e="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),p=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],d=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;P.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(f,T){return f?/-MMM-/.test(T)?e[f.month()]:t[f.month()]:t},monthsRegex:d,monthsShortRegex:d,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:p,longMonthsParse:p,shortMonthsParse:p,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xe9\xe9n minuut",mm:"%d minuten",h:"\xe9\xe9n uur",hh:"%d uur",d:"\xe9\xe9n dag",dd:"%d dagen",M:"\xe9\xe9n maand",MM:"%d maanden",y:"\xe9\xe9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(f){return f+(1===f||8===f||f>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},33501:function(dt,K,n){!function(P){"use strict";P.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"sundag_m\xe5ndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"su._m\xe5._ty._on._to._fr._lau.".split("_"),weekdaysMin:"su_m\xe5_ty_on_to_fr_la".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I g\xe5r klokka] LT",lastWeek:"[F\xf8reg\xe5ande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s sidan",s:"nokre sekund",ss:"%d sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein m\xe5nad",MM:"%d m\xe5nader",y:"eit \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},50563:function(dt,K,n){!function(P){"use strict";P.defineLocale("oc-lnc",{months:{standalone:"geni\xe8r_febri\xe8r_mar\xe7_abril_mai_junh_julhet_agost_setembre_oct\xf2bre_novembre_decembre".split("_"),format:"de geni\xe8r_de febri\xe8r_de mar\xe7_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'oct\xf2bre_de novembre_de decembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._mar\xe7_abr._mai_junh_julh._ago._set._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"dimenge_diluns_dimars_dim\xe8cres_dij\xf2us_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dm._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dm_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:"[u\xe8i a] LT",nextDay:"[deman a] LT",nextWeek:"dddd [a] LT",lastDay:"[i\xe8r a] LT",lastWeek:"dddd [passat a] LT",sameElse:"L"},relativeTime:{future:"d'aqu\xed %s",past:"fa %s",s:"unas segondas",ss:"%d segondas",m:"una minuta",mm:"%d minutas",h:"una ora",hh:"%d oras",d:"un jorn",dd:"%d jorns",M:"un mes",MM:"%d meses",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|\xe8|a)/,ordinal:function(p,d){var s=1===p?"r":2===p?"n":3===p?"r":4===p?"t":"\xe8";return("w"===d||"W"===d)&&(s="a"),p+s},week:{dow:1,doy:4}})}(n(56908))},50869:function(dt,K,n){!function(P){"use strict";var t={1:"\u0a67",2:"\u0a68",3:"\u0a69",4:"\u0a6a",5:"\u0a6b",6:"\u0a6c",7:"\u0a6d",8:"\u0a6e",9:"\u0a6f",0:"\u0a66"},e={"\u0a67":"1","\u0a68":"2","\u0a69":"3","\u0a6a":"4","\u0a6b":"5","\u0a6c":"6","\u0a6d":"7","\u0a6e":"8","\u0a6f":"9","\u0a66":"0"};P.defineLocale("pa-in",{months:"\u0a1c\u0a28\u0a35\u0a30\u0a40_\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40_\u0a2e\u0a3e\u0a30\u0a1a_\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32_\u0a2e\u0a08_\u0a1c\u0a42\u0a28_\u0a1c\u0a41\u0a32\u0a3e\u0a08_\u0a05\u0a17\u0a38\u0a24_\u0a38\u0a24\u0a70\u0a2c\u0a30_\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30_\u0a28\u0a35\u0a70\u0a2c\u0a30_\u0a26\u0a38\u0a70\u0a2c\u0a30".split("_"),monthsShort:"\u0a1c\u0a28\u0a35\u0a30\u0a40_\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40_\u0a2e\u0a3e\u0a30\u0a1a_\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32_\u0a2e\u0a08_\u0a1c\u0a42\u0a28_\u0a1c\u0a41\u0a32\u0a3e\u0a08_\u0a05\u0a17\u0a38\u0a24_\u0a38\u0a24\u0a70\u0a2c\u0a30_\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30_\u0a28\u0a35\u0a70\u0a2c\u0a30_\u0a26\u0a38\u0a70\u0a2c\u0a30".split("_"),weekdays:"\u0a10\u0a24\u0a35\u0a3e\u0a30_\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30_\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30_\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30_\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30_\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30_\u0a38\u0a3c\u0a28\u0a40\u0a1a\u0a30\u0a35\u0a3e\u0a30".split("_"),weekdaysShort:"\u0a10\u0a24_\u0a38\u0a4b\u0a2e_\u0a2e\u0a70\u0a17\u0a32_\u0a2c\u0a41\u0a27_\u0a35\u0a40\u0a30_\u0a38\u0a3c\u0a41\u0a15\u0a30_\u0a38\u0a3c\u0a28\u0a40".split("_"),weekdaysMin:"\u0a10\u0a24_\u0a38\u0a4b\u0a2e_\u0a2e\u0a70\u0a17\u0a32_\u0a2c\u0a41\u0a27_\u0a35\u0a40\u0a30_\u0a38\u0a3c\u0a41\u0a15\u0a30_\u0a38\u0a3c\u0a28\u0a40".split("_"),longDateFormat:{LT:"A h:mm \u0a35\u0a1c\u0a47",LTS:"A h:mm:ss \u0a35\u0a1c\u0a47",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0a35\u0a1c\u0a47",LLLL:"dddd, D MMMM YYYY, A h:mm \u0a35\u0a1c\u0a47"},calendar:{sameDay:"[\u0a05\u0a1c] LT",nextDay:"[\u0a15\u0a32] LT",nextWeek:"[\u0a05\u0a17\u0a32\u0a3e] dddd, LT",lastDay:"[\u0a15\u0a32] LT",lastWeek:"[\u0a2a\u0a3f\u0a1b\u0a32\u0a47] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0a35\u0a3f\u0a71\u0a1a",past:"%s \u0a2a\u0a3f\u0a1b\u0a32\u0a47",s:"\u0a15\u0a41\u0a1d \u0a38\u0a15\u0a3f\u0a70\u0a1f",ss:"%d \u0a38\u0a15\u0a3f\u0a70\u0a1f",m:"\u0a07\u0a15 \u0a2e\u0a3f\u0a70\u0a1f",mm:"%d \u0a2e\u0a3f\u0a70\u0a1f",h:"\u0a07\u0a71\u0a15 \u0a18\u0a70\u0a1f\u0a3e",hh:"%d \u0a18\u0a70\u0a1f\u0a47",d:"\u0a07\u0a71\u0a15 \u0a26\u0a3f\u0a28",dd:"%d \u0a26\u0a3f\u0a28",M:"\u0a07\u0a71\u0a15 \u0a2e\u0a39\u0a40\u0a28\u0a3e",MM:"%d \u0a2e\u0a39\u0a40\u0a28\u0a47",y:"\u0a07\u0a71\u0a15 \u0a38\u0a3e\u0a32",yy:"%d \u0a38\u0a3e\u0a32"},preparse:function(s){return s.replace(/[\u0a67\u0a68\u0a69\u0a6a\u0a6b\u0a6c\u0a6d\u0a6e\u0a6f\u0a66]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0a30\u0a3e\u0a24|\u0a38\u0a35\u0a47\u0a30|\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30|\u0a38\u0a3c\u0a3e\u0a2e/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u0a30\u0a3e\u0a24"===h?s<4?s:s+12:"\u0a38\u0a35\u0a47\u0a30"===h?s:"\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30"===h?s>=10?s:s+12:"\u0a38\u0a3c\u0a3e\u0a2e"===h?s+12:void 0},meridiem:function(s,h,f){return s<4?"\u0a30\u0a3e\u0a24":s<10?"\u0a38\u0a35\u0a47\u0a30":s<17?"\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30":s<20?"\u0a38\u0a3c\u0a3e\u0a2e":"\u0a30\u0a3e\u0a24"},week:{dow:0,doy:6}})}(n(56908))},65302:function(dt,K,n){!function(P){"use strict";var t="stycze\u0144_luty_marzec_kwiecie\u0144_maj_czerwiec_lipiec_sierpie\u0144_wrzesie\u0144_pa\u017adziernik_listopad_grudzie\u0144".split("_"),e="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrze\u015bnia_pa\u017adziernika_listopada_grudnia".split("_");function p(h){return h%10<5&&h%10>1&&~~(h/10)%10!=1}function d(h,f,T){var B=h+" ";switch(T){case"ss":return B+(p(h)?"sekundy":"sekund");case"m":return f?"minuta":"minut\u0119";case"mm":return B+(p(h)?"minuty":"minut");case"h":return f?"godzina":"godzin\u0119";case"hh":return B+(p(h)?"godziny":"godzin");case"MM":return B+(p(h)?"miesi\u0105ce":"miesi\u0119cy");case"yy":return B+(p(h)?"lata":"lat")}}P.defineLocale("pl",{months:function(f,T){return f?""===T?"("+e[f.month()]+"|"+t[f.month()]+")":/D MMMM/.test(T)?e[f.month()]:t[f.month()]:t},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_pa\u017a_lis_gru".split("_"),weekdays:"niedziela_poniedzia\u0142ek_wtorek_\u015broda_czwartek_pi\u0105tek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_\u015br_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_\u015ar_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dzi\u015b o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedziel\u0119 o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W \u015brod\u0119 o] LT";case 6:return"[W sobot\u0119 o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zesz\u0142\u0105 niedziel\u0119 o] LT";case 3:return"[W zesz\u0142\u0105 \u015brod\u0119 o] LT";case 6:return"[W zesz\u0142\u0105 sobot\u0119 o] LT";default:return"[W zesz\u0142y] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:d,m:d,mm:d,h:d,hh:d,d:"1 dzie\u0144",dd:"%d dni",M:"miesi\u0105c",MM:d,y:"rok",yy:d},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},74884:function(dt,K,n){!function(P){"use strict";P.defineLocale("pt-br",{months:"janeiro_fevereiro_mar\xe7o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_ter\xe7a-feira_quarta-feira_quinta-feira_sexta-feira_s\xe1bado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_s\xe1b".split("_"),weekdaysMin:"do_2\xaa_3\xaa_4\xaa_5\xaa_6\xaa_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xe0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xe0s] HH:mm"},calendar:{sameDay:"[Hoje \xe0s] LT",nextDay:"[Amanh\xe3 \xe0s] LT",nextWeek:"dddd [\xe0s] LT",lastDay:"[Ontem \xe0s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[\xdaltimo] dddd [\xe0s] LT":"[\xdaltima] dddd [\xe0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"h\xe1 %s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xeas",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba"})}(n(56908))},49687:function(dt,K,n){!function(P){"use strict";P.defineLocale("pt",{months:"janeiro_fevereiro_mar\xe7o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"Domingo_Segunda-feira_Ter\xe7a-feira_Quarta-feira_Quinta-feira_Sexta-feira_S\xe1bado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_S\xe1b".split("_"),weekdaysMin:"Do_2\xaa_3\xaa_4\xaa_5\xaa_6\xaa_S\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje \xe0s] LT",nextDay:"[Amanh\xe3 \xe0s] LT",nextWeek:"dddd [\xe0s] LT",lastDay:"[Ontem \xe0s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[\xdaltimo] dddd [\xe0s] LT":"[\xdaltima] dddd [\xe0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"h\xe1 %s",s:"segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xeas",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},79107:function(dt,K,n){!function(P){"use strict";function t(p,d,s){var f=" ";return(p%100>=20||p>=100&&p%100==0)&&(f=" de "),p+f+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"}[s]}P.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminic\u0103_luni_mar\u021bi_miercuri_joi_vineri_s\xe2mb\u0103t\u0103".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_S\xe2m".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_S\xe2".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[m\xe2ine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s \xeen urm\u0103",s:"c\xe2teva secunde",ss:t,m:"un minut",mm:t,h:"o or\u0103",hh:t,d:"o zi",dd:t,M:"o lun\u0103",MM:t,y:"un an",yy:t},week:{dow:1,doy:7}})}(n(56908))},33627:function(dt,K,n){!function(P){"use strict";function e(s,h,f){return"m"===f?h?"\u043c\u0438\u043d\u0443\u0442\u0430":"\u043c\u0438\u043d\u0443\u0442\u0443":s+" "+function t(s,h){var f=s.split("_");return h%10==1&&h%100!=11?f[0]:h%10>=2&&h%10<=4&&(h%100<10||h%100>=20)?f[1]:f[2]}({ss:h?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434",mm:h?"\u043c\u0438\u043d\u0443\u0442\u0430_\u043c\u0438\u043d\u0443\u0442\u044b_\u043c\u0438\u043d\u0443\u0442":"\u043c\u0438\u043d\u0443\u0442\u0443_\u043c\u0438\u043d\u0443\u0442\u044b_\u043c\u0438\u043d\u0443\u0442",hh:"\u0447\u0430\u0441_\u0447\u0430\u0441\u0430_\u0447\u0430\u0441\u043e\u0432",dd:"\u0434\u0435\u043d\u044c_\u0434\u043d\u044f_\u0434\u043d\u0435\u0439",MM:"\u043c\u0435\u0441\u044f\u0446_\u043c\u0435\u0441\u044f\u0446\u0430_\u043c\u0435\u0441\u044f\u0446\u0435\u0432",yy:"\u0433\u043e\u0434_\u0433\u043e\u0434\u0430_\u043b\u0435\u0442"}[f],+s)}var p=[/^\u044f\u043d\u0432/i,/^\u0444\u0435\u0432/i,/^\u043c\u0430\u0440/i,/^\u0430\u043f\u0440/i,/^\u043c\u0430[\u0439\u044f]/i,/^\u0438\u044e\u043d/i,/^\u0438\u044e\u043b/i,/^\u0430\u0432\u0433/i,/^\u0441\u0435\u043d/i,/^\u043e\u043a\u0442/i,/^\u043d\u043e\u044f/i,/^\u0434\u0435\u043a/i];P.defineLocale("ru",{months:{format:"\u044f\u043d\u0432\u0430\u0440\u044f_\u0444\u0435\u0432\u0440\u0430\u043b\u044f_\u043c\u0430\u0440\u0442\u0430_\u0430\u043f\u0440\u0435\u043b\u044f_\u043c\u0430\u044f_\u0438\u044e\u043d\u044f_\u0438\u044e\u043b\u044f_\u0430\u0432\u0433\u0443\u0441\u0442\u0430_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f_\u043e\u043a\u0442\u044f\u0431\u0440\u044f_\u043d\u043e\u044f\u0431\u0440\u044f_\u0434\u0435\u043a\u0430\u0431\u0440\u044f".split("_"),standalone:"\u044f\u043d\u0432\u0430\u0440\u044c_\u0444\u0435\u0432\u0440\u0430\u043b\u044c_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b\u044c_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c_\u043e\u043a\u0442\u044f\u0431\u0440\u044c_\u043d\u043e\u044f\u0431\u0440\u044c_\u0434\u0435\u043a\u0430\u0431\u0440\u044c".split("_")},monthsShort:{format:"\u044f\u043d\u0432._\u0444\u0435\u0432\u0440._\u043c\u0430\u0440._\u0430\u043f\u0440._\u043c\u0430\u044f_\u0438\u044e\u043d\u044f_\u0438\u044e\u043b\u044f_\u0430\u0432\u0433._\u0441\u0435\u043d\u0442._\u043e\u043a\u0442._\u043d\u043e\u044f\u0431._\u0434\u0435\u043a.".split("_"),standalone:"\u044f\u043d\u0432._\u0444\u0435\u0432\u0440._\u043c\u0430\u0440\u0442_\u0430\u043f\u0440._\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433._\u0441\u0435\u043d\u0442._\u043e\u043a\u0442._\u043d\u043e\u044f\u0431._\u0434\u0435\u043a.".split("_")},weekdays:{standalone:"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043f\u044f\u0442\u043d\u0438\u0446\u0430_\u0441\u0443\u0431\u0431\u043e\u0442\u0430".split("_"),format:"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043f\u044f\u0442\u043d\u0438\u0446\u0443_\u0441\u0443\u0431\u0431\u043e\u0442\u0443".split("_"),isFormat:/\[ ?[\u0412\u0432] ?(?:\u043f\u0440\u043e\u0448\u043b\u0443\u044e|\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e|\u044d\u0442\u0443)? ?] ?dddd/},weekdaysShort:"\u0432\u0441_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u0432\u0441_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),monthsParse:p,longMonthsParse:p,shortMonthsParse:p,monthsRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044c\u044f]|\u044f\u043d\u0432\.?|\u0444\u0435\u0432\u0440\u0430\u043b[\u044c\u044f]|\u0444\u0435\u0432\u0440?\.?|\u043c\u0430\u0440\u0442\u0430?|\u043c\u0430\u0440\.?|\u0430\u043f\u0440\u0435\u043b[\u044c\u044f]|\u0430\u043f\u0440\.?|\u043c\u0430[\u0439\u044f]|\u0438\u044e\u043d[\u044c\u044f]|\u0438\u044e\u043d\.?|\u0438\u044e\u043b[\u044c\u044f]|\u0438\u044e\u043b\.?|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0430\u0432\u0433\.?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044c\u044f]|\u0441\u0435\u043d\u0442?\.?|\u043e\u043a\u0442\u044f\u0431\u0440[\u044c\u044f]|\u043e\u043a\u0442\.?|\u043d\u043e\u044f\u0431\u0440[\u044c\u044f]|\u043d\u043e\u044f\u0431?\.?|\u0434\u0435\u043a\u0430\u0431\u0440[\u044c\u044f]|\u0434\u0435\u043a\.?)/i,monthsShortRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044c\u044f]|\u044f\u043d\u0432\.?|\u0444\u0435\u0432\u0440\u0430\u043b[\u044c\u044f]|\u0444\u0435\u0432\u0440?\.?|\u043c\u0430\u0440\u0442\u0430?|\u043c\u0430\u0440\.?|\u0430\u043f\u0440\u0435\u043b[\u044c\u044f]|\u0430\u043f\u0440\.?|\u043c\u0430[\u0439\u044f]|\u0438\u044e\u043d[\u044c\u044f]|\u0438\u044e\u043d\.?|\u0438\u044e\u043b[\u044c\u044f]|\u0438\u044e\u043b\.?|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0430\u0432\u0433\.?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044c\u044f]|\u0441\u0435\u043d\u0442?\.?|\u043e\u043a\u0442\u044f\u0431\u0440[\u044c\u044f]|\u043e\u043a\u0442\.?|\u043d\u043e\u044f\u0431\u0440[\u044c\u044f]|\u043d\u043e\u044f\u0431?\.?|\u0434\u0435\u043a\u0430\u0431\u0440[\u044c\u044f]|\u0434\u0435\u043a\.?)/i,monthsStrictRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044f\u044c]|\u0444\u0435\u0432\u0440\u0430\u043b[\u044f\u044c]|\u043c\u0430\u0440\u0442\u0430?|\u0430\u043f\u0440\u0435\u043b[\u044f\u044c]|\u043c\u0430[\u044f\u0439]|\u0438\u044e\u043d[\u044f\u044c]|\u0438\u044e\u043b[\u044f\u044c]|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044f\u044c]|\u043e\u043a\u0442\u044f\u0431\u0440[\u044f\u044c]|\u043d\u043e\u044f\u0431\u0440[\u044f\u044c]|\u0434\u0435\u043a\u0430\u0431\u0440[\u044f\u044c])/i,monthsShortStrictRegex:/^(\u044f\u043d\u0432\.|\u0444\u0435\u0432\u0440?\.|\u043c\u0430\u0440[\u0442.]|\u0430\u043f\u0440\.|\u043c\u0430[\u044f\u0439]|\u0438\u044e\u043d[\u044c\u044f.]|\u0438\u044e\u043b[\u044c\u044f.]|\u0430\u0432\u0433\.|\u0441\u0435\u043d\u0442?\.|\u043e\u043a\u0442\.|\u043d\u043e\u044f\u0431?\.|\u0434\u0435\u043a\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., H:mm",LLLL:"dddd, D MMMM YYYY \u0433., H:mm"},calendar:{sameDay:"[\u0421\u0435\u0433\u043e\u0434\u043d\u044f, \u0432] LT",nextDay:"[\u0417\u0430\u0432\u0442\u0440\u0430, \u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430, \u0432] LT",nextWeek:function(h){if(h.week()===this.week())return 2===this.day()?"[\u0412\u043e] dddd, [\u0432] LT":"[\u0412] dddd, [\u0432] LT";switch(this.day()){case 0:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435] dddd, [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439] dddd, [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e] dddd, [\u0432] LT"}},lastWeek:function(h){if(h.week()===this.week())return 2===this.day()?"[\u0412\u043e] dddd, [\u0432] LT":"[\u0412] dddd, [\u0432] LT";switch(this.day()){case 0:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0435] dddd, [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u044b\u0439] dddd, [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u0443\u044e] dddd, [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0447\u0435\u0440\u0435\u0437 %s",past:"%s \u043d\u0430\u0437\u0430\u0434",s:"\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434",ss:e,m:e,mm:e,h:"\u0447\u0430\u0441",hh:e,d:"\u0434\u0435\u043d\u044c",dd:e,M:"\u043c\u0435\u0441\u044f\u0446",MM:e,y:"\u0433\u043e\u0434",yy:e},meridiemParse:/\u043d\u043e\u0447\u0438|\u0443\u0442\u0440\u0430|\u0434\u043d\u044f|\u0432\u0435\u0447\u0435\u0440\u0430/i,isPM:function(h){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u0435\u0440\u0430)$/.test(h)},meridiem:function(h,f,T){return h<4?"\u043d\u043e\u0447\u0438":h<12?"\u0443\u0442\u0440\u0430":h<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u0435\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0439|\u0433\u043e|\u044f)/,ordinal:function(h,f){switch(f){case"M":case"d":case"DDD":return h+"-\u0439";case"D":return h+"-\u0433\u043e";case"w":case"W":return h+"-\u044f";default:return h}},week:{dow:1,doy:4}})}(n(56908))},30355:function(dt,K,n){!function(P){"use strict";var t=["\u062c\u0646\u0648\u0631\u064a","\u0641\u064a\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u064a\u0644","\u0645\u0626\u064a","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0621\u0650","\u0622\u06af\u0633\u067d","\u0633\u064a\u067e\u067d\u0645\u0628\u0631","\u0622\u06aa\u067d\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u068a\u0633\u0645\u0628\u0631"],e=["\u0622\u0686\u0631","\u0633\u0648\u0645\u0631","\u0627\u06b1\u0627\u0631\u0648","\u0627\u0631\u0628\u0639","\u062e\u0645\u064a\u0633","\u062c\u0645\u0639","\u0687\u0646\u0687\u0631"];P.defineLocale("sd",{months:t,monthsShort:t,weekdays:e,weekdaysShort:e,weekdaysMin:e,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd\u060c D MMMM YYYY HH:mm"},meridiemParse:/\u0635\u0628\u062d|\u0634\u0627\u0645/,isPM:function(s){return"\u0634\u0627\u0645"===s},meridiem:function(s,h,f){return s<12?"\u0635\u0628\u062d":"\u0634\u0627\u0645"},calendar:{sameDay:"[\u0627\u0684] LT",nextDay:"[\u0633\u0680\u0627\u06bb\u064a] LT",nextWeek:"dddd [\u0627\u06b3\u064a\u0646 \u0647\u0641\u062a\u064a \u062a\u064a] LT",lastDay:"[\u06aa\u0627\u0644\u0647\u0647] LT",lastWeek:"[\u06af\u0632\u0631\u064a\u0644 \u0647\u0641\u062a\u064a] dddd [\u062a\u064a] LT",sameElse:"L"},relativeTime:{future:"%s \u067e\u0648\u0621",past:"%s \u0627\u06b3",s:"\u0686\u0646\u062f \u0633\u064a\u06aa\u0646\u068a",ss:"%d \u0633\u064a\u06aa\u0646\u068a",m:"\u0647\u06aa \u0645\u0646\u067d",mm:"%d \u0645\u0646\u067d",h:"\u0647\u06aa \u06aa\u0644\u0627\u06aa",hh:"%d \u06aa\u0644\u0627\u06aa",d:"\u0647\u06aa \u068f\u064a\u0646\u0647\u0646",dd:"%d \u068f\u064a\u0646\u0647\u0646",M:"\u0647\u06aa \u0645\u0647\u064a\u0646\u0648",MM:"%d \u0645\u0647\u064a\u0646\u0627",y:"\u0647\u06aa \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(s){return s.replace(/\u060c/g,",")},postformat:function(s){return s.replace(/,/g,"\u060c")},week:{dow:1,doy:4}})}(n(56908))},83427:function(dt,K,n){!function(P){"use strict";P.defineLocale("se",{months:"o\u0111\u0111ajagem\xe1nnu_guovvam\xe1nnu_njuk\u010dam\xe1nnu_cuo\u014bom\xe1nnu_miessem\xe1nnu_geassem\xe1nnu_suoidnem\xe1nnu_borgem\xe1nnu_\u010dak\u010dam\xe1nnu_golggotm\xe1nnu_sk\xe1bmam\xe1nnu_juovlam\xe1nnu".split("_"),monthsShort:"o\u0111\u0111j_guov_njuk_cuo_mies_geas_suoi_borg_\u010dak\u010d_golg_sk\xe1b_juov".split("_"),weekdays:"sotnabeaivi_vuoss\xe1rga_ma\u014b\u014beb\xe1rga_gaskavahkku_duorastat_bearjadat_l\xe1vvardat".split("_"),weekdaysShort:"sotn_vuos_ma\u014b_gask_duor_bear_l\xe1v".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s gea\u017ees",past:"ma\u014bit %s",s:"moadde sekunddat",ss:"%d sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta m\xe1nnu",MM:"%d m\xe1nut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},11848:function(dt,K,n){!function(P){"use strict";P.defineLocale("si",{months:"\u0da2\u0db1\u0dc0\u0dcf\u0dbb\u0dd2_\u0db4\u0dd9\u0db6\u0dbb\u0dc0\u0dcf\u0dbb\u0dd2_\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4_\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca_\u0db8\u0dd0\u0dba\u0dd2_\u0da2\u0dd6\u0db1\u0dd2_\u0da2\u0dd6\u0dbd\u0dd2_\u0d85\u0d9c\u0ddd\u0dc3\u0dca\u0dad\u0dd4_\u0dc3\u0dd0\u0db4\u0dca\u0dad\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca_\u0d94\u0d9a\u0dca\u0dad\u0ddd\u0db6\u0dbb\u0dca_\u0db1\u0ddc\u0dc0\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca_\u0daf\u0dd9\u0dc3\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca".split("_"),monthsShort:"\u0da2\u0db1_\u0db4\u0dd9\u0db6_\u0db8\u0dcf\u0dbb\u0dca_\u0d85\u0db4\u0dca_\u0db8\u0dd0\u0dba\u0dd2_\u0da2\u0dd6\u0db1\u0dd2_\u0da2\u0dd6\u0dbd\u0dd2_\u0d85\u0d9c\u0ddd_\u0dc3\u0dd0\u0db4\u0dca_\u0d94\u0d9a\u0dca_\u0db1\u0ddc\u0dc0\u0dd0_\u0daf\u0dd9\u0dc3\u0dd0".split("_"),weekdays:"\u0d89\u0dbb\u0dd2\u0daf\u0dcf_\u0dc3\u0db3\u0dd4\u0daf\u0dcf_\u0d85\u0d9f\u0dc4\u0dbb\u0dd4\u0dc0\u0dcf\u0daf\u0dcf_\u0db6\u0daf\u0dcf\u0daf\u0dcf_\u0db6\u0dca\u200d\u0dbb\u0dc4\u0dc3\u0dca\u0db4\u0dad\u0dd2\u0db1\u0dca\u0daf\u0dcf_\u0dc3\u0dd2\u0d9a\u0dd4\u0dbb\u0dcf\u0daf\u0dcf_\u0dc3\u0dd9\u0db1\u0dc3\u0dd4\u0dbb\u0dcf\u0daf\u0dcf".split("_"),weekdaysShort:"\u0d89\u0dbb\u0dd2_\u0dc3\u0db3\u0dd4_\u0d85\u0d9f_\u0db6\u0daf\u0dcf_\u0db6\u0dca\u200d\u0dbb\u0dc4_\u0dc3\u0dd2\u0d9a\u0dd4_\u0dc3\u0dd9\u0db1".split("_"),weekdaysMin:"\u0d89_\u0dc3_\u0d85_\u0db6_\u0db6\u0dca\u200d\u0dbb_\u0dc3\u0dd2_\u0dc3\u0dd9".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [\u0dc0\u0dd0\u0db1\u0dd2] dddd, a h:mm:ss"},calendar:{sameDay:"[\u0d85\u0daf] LT[\u0da7]",nextDay:"[\u0dc4\u0dd9\u0da7] LT[\u0da7]",nextWeek:"dddd LT[\u0da7]",lastDay:"[\u0d8a\u0dba\u0dda] LT[\u0da7]",lastWeek:"[\u0db4\u0dc3\u0dd4\u0d9c\u0dd2\u0dba] dddd LT[\u0da7]",sameElse:"L"},relativeTime:{future:"%s\u0d9a\u0dd2\u0db1\u0dca",past:"%s\u0d9a\u0da7 \u0db4\u0dd9\u0dbb",s:"\u0dad\u0dad\u0dca\u0db4\u0dbb \u0d9a\u0dd2\u0dc4\u0dd2\u0db4\u0dba",ss:"\u0dad\u0dad\u0dca\u0db4\u0dbb %d",m:"\u0db8\u0dd2\u0db1\u0dd2\u0dad\u0dca\u0dad\u0dd4\u0dc0",mm:"\u0db8\u0dd2\u0db1\u0dd2\u0dad\u0dca\u0dad\u0dd4 %d",h:"\u0db4\u0dd0\u0dba",hh:"\u0db4\u0dd0\u0dba %d",d:"\u0daf\u0dd2\u0db1\u0dba",dd:"\u0daf\u0dd2\u0db1 %d",M:"\u0db8\u0dcf\u0dc3\u0dba",MM:"\u0db8\u0dcf\u0dc3 %d",y:"\u0dc0\u0dc3\u0dbb",yy:"\u0dc0\u0dc3\u0dbb %d"},dayOfMonthOrdinalParse:/\d{1,2} \u0dc0\u0dd0\u0db1\u0dd2/,ordinal:function(p){return p+" \u0dc0\u0dd0\u0db1\u0dd2"},meridiemParse:/\u0db4\u0dd9\u0dbb \u0dc0\u0dbb\u0dd4|\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4|\u0db4\u0dd9.\u0dc0|\u0db4.\u0dc0./,isPM:function(p){return"\u0db4.\u0dc0."===p||"\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4"===p},meridiem:function(p,d,s){return p>11?s?"\u0db4.\u0dc0.":"\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4":s?"\u0db4\u0dd9.\u0dc0.":"\u0db4\u0dd9\u0dbb \u0dc0\u0dbb\u0dd4"}})}(n(56908))},54590:function(dt,K,n){!function(P){"use strict";var t="janu\xe1r_febru\xe1r_marec_apr\xedl_m\xe1j_j\xfan_j\xfal_august_september_okt\xf3ber_november_december".split("_"),e="jan_feb_mar_apr_m\xe1j_j\xfan_j\xfal_aug_sep_okt_nov_dec".split("_");function p(h){return h>1&&h<5}function d(h,f,T,B){var I=h+" ";switch(T){case"s":return f||B?"p\xe1r sek\xfand":"p\xe1r sekundami";case"ss":return f||B?I+(p(h)?"sekundy":"sek\xfand"):I+"sekundami";case"m":return f?"min\xfata":B?"min\xfatu":"min\xfatou";case"mm":return f||B?I+(p(h)?"min\xfaty":"min\xfat"):I+"min\xfatami";case"h":return f?"hodina":B?"hodinu":"hodinou";case"hh":return f||B?I+(p(h)?"hodiny":"hod\xedn"):I+"hodinami";case"d":return f||B?"de\u0148":"d\u0148om";case"dd":return f||B?I+(p(h)?"dni":"dn\xed"):I+"d\u0148ami";case"M":return f||B?"mesiac":"mesiacom";case"MM":return f||B?I+(p(h)?"mesiace":"mesiacov"):I+"mesiacmi";case"y":return f||B?"rok":"rokom";case"yy":return f||B?I+(p(h)?"roky":"rokov"):I+"rokmi"}}P.defineLocale("sk",{months:t,monthsShort:e,weekdays:"nede\u013ea_pondelok_utorok_streda_\u0161tvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_\u0161t_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_\u0161t_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nede\u013eu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo \u0161tvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[v\u010dera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minul\xfa nede\u013eu o] LT";case 1:case 2:case 4:case 5:return"[minul\xfd] dddd [o] LT";case 3:return"[minul\xfa stredu o] LT";case 6:return"[minul\xfa sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:d,ss:d,m:d,mm:d,h:d,hh:d,d:d,dd:d,M:d,MM:d,y:d,yy:d},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},20184:function(dt,K,n){!function(P){"use strict";function t(p,d,s,h){var f=p+" ";switch(s){case"s":return d||h?"nekaj sekund":"nekaj sekundami";case"ss":return f+(1===p?d?"sekundo":"sekundi":2===p?d||h?"sekundi":"sekundah":p<5?d||h?"sekunde":"sekundah":"sekund");case"m":return d?"ena minuta":"eno minuto";case"mm":return f+(1===p?d?"minuta":"minuto":2===p?d||h?"minuti":"minutama":p<5?d||h?"minute":"minutami":d||h?"minut":"minutami");case"h":return d?"ena ura":"eno uro";case"hh":return f+(1===p?d?"ura":"uro":2===p?d||h?"uri":"urama":p<5?d||h?"ure":"urami":d||h?"ur":"urami");case"d":return d||h?"en dan":"enim dnem";case"dd":return f+(1===p?d||h?"dan":"dnem":2===p?d||h?"dni":"dnevoma":d||h?"dni":"dnevi");case"M":return d||h?"en mesec":"enim mesecem";case"MM":return f+(1===p?d||h?"mesec":"mesecem":2===p?d||h?"meseca":"mesecema":p<5?d||h?"mesece":"meseci":d||h?"mesecev":"meseci");case"y":return d||h?"eno leto":"enim letom";case"yy":return f+(1===p?d||h?"leto":"letom":2===p?d||h?"leti":"letoma":p<5?d||h?"leta":"leti":d||h?"let":"leti")}}P.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_\u010detrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._\u010det._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_\u010de_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[v\u010deraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prej\u0161njo] [nedeljo] [ob] LT";case 3:return"[prej\u0161njo] [sredo] [ob] LT";case 6:return"[prej\u0161njo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prej\u0161nji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"\u010dez %s",past:"pred %s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},56361:function(dt,K,n){!function(P){"use strict";P.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_N\xebntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_N\xebn_Dhj".split("_"),weekdays:"E Diel_E H\xebn\xeb_E Mart\xeb_E M\xebrkur\xeb_E Enjte_E Premte_E Shtun\xeb".split("_"),weekdaysShort:"Die_H\xebn_Mar_M\xebr_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_M\xeb_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(p){return"M"===p.charAt(0)},meridiem:function(p,d,s){return p<12?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot n\xeb] LT",nextDay:"[Nes\xebr n\xeb] LT",nextWeek:"dddd [n\xeb] LT",lastDay:"[Dje n\xeb] LT",lastWeek:"dddd [e kaluar n\xeb] LT",sameElse:"L"},relativeTime:{future:"n\xeb %s",past:"%s m\xeb par\xeb",s:"disa sekonda",ss:"%d sekonda",m:"nj\xeb minut\xeb",mm:"%d minuta",h:"nj\xeb or\xeb",hh:"%d or\xeb",d:"nj\xeb dit\xeb",dd:"%d dit\xeb",M:"nj\xeb muaj",MM:"%d muaj",y:"nj\xeb vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},81287:function(dt,K,n){!function(P){"use strict";var t={words:{ss:["\u0441\u0435\u043a\u0443\u043d\u0434\u0430","\u0441\u0435\u043a\u0443\u043d\u0434\u0435","\u0441\u0435\u043a\u0443\u043d\u0434\u0438"],m:["\u0458\u0435\u0434\u0430\u043d \u043c\u0438\u043d\u0443\u0442","\u0458\u0435\u0434\u043d\u0435 \u043c\u0438\u043d\u0443\u0442\u0435"],mm:["\u043c\u0438\u043d\u0443\u0442","\u043c\u0438\u043d\u0443\u0442\u0435","\u043c\u0438\u043d\u0443\u0442\u0430"],h:["\u0458\u0435\u0434\u0430\u043d \u0441\u0430\u0442","\u0458\u0435\u0434\u043d\u043e\u0433 \u0441\u0430\u0442\u0430"],hh:["\u0441\u0430\u0442","\u0441\u0430\u0442\u0430","\u0441\u0430\u0442\u0438"],dd:["\u0434\u0430\u043d","\u0434\u0430\u043d\u0430","\u0434\u0430\u043d\u0430"],MM:["\u043c\u0435\u0441\u0435\u0446","\u043c\u0435\u0441\u0435\u0446\u0430","\u043c\u0435\u0441\u0435\u0446\u0438"],yy:["\u0433\u043e\u0434\u0438\u043d\u0430","\u0433\u043e\u0434\u0438\u043d\u0435","\u0433\u043e\u0434\u0438\u043d\u0430"]},correctGrammaticalCase:function(d,s){return 1===d?s[0]:d>=2&&d<=4?s[1]:s[2]},translate:function(d,s,h){var f=t.words[h];return 1===h.length?s?f[0]:f[1]:d+" "+t.correctGrammaticalCase(d,f)}};P.defineLocale("sr-cyrl",{months:"\u0458\u0430\u043d\u0443\u0430\u0440_\u0444\u0435\u0431\u0440\u0443\u0430\u0440_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440_\u043e\u043a\u0442\u043e\u0431\u0430\u0440_\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440_\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440".split("_"),monthsShort:"\u0458\u0430\u043d._\u0444\u0435\u0431._\u043c\u0430\u0440._\u0430\u043f\u0440._\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433._\u0441\u0435\u043f._\u043e\u043a\u0442._\u043d\u043e\u0432._\u0434\u0435\u0446.".split("_"),monthsParseExact:!0,weekdays:"\u043d\u0435\u0434\u0435\u0459\u0430_\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u0430\u043a_\u0443\u0442\u043e\u0440\u0430\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0440\u0442\u0430\u043a_\u043f\u0435\u0442\u0430\u043a_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434._\u043f\u043e\u043d._\u0443\u0442\u043e._\u0441\u0440\u0435._\u0447\u0435\u0442._\u043f\u0435\u0442._\u0441\u0443\u0431.".split("_"),weekdaysMin:"\u043d\u0435_\u043f\u043e_\u0443\u0442_\u0441\u0440_\u0447\u0435_\u043f\u0435_\u0441\u0443".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[\u0434\u0430\u043d\u0430\u0441 \u0443] LT",nextDay:"[\u0441\u0443\u0442\u0440\u0430 \u0443] LT",nextWeek:function(){switch(this.day()){case 0:return"[\u0443] [\u043d\u0435\u0434\u0435\u0459\u0443] [\u0443] LT";case 3:return"[\u0443] [\u0441\u0440\u0435\u0434\u0443] [\u0443] LT";case 6:return"[\u0443] [\u0441\u0443\u0431\u043e\u0442\u0443] [\u0443] LT";case 1:case 2:case 4:case 5:return"[\u0443] dddd [\u0443] LT"}},lastDay:"[\u0458\u0443\u0447\u0435 \u0443] LT",lastWeek:function(){return["[\u043f\u0440\u043e\u0448\u043b\u0435] [\u043d\u0435\u0434\u0435\u0459\u0435] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u0443\u0442\u043e\u0440\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u0435] [\u0441\u0440\u0435\u0434\u0435] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u0447\u0435\u0442\u0432\u0440\u0442\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u043f\u0435\u0442\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u0435] [\u0441\u0443\u0431\u043e\u0442\u0435] [\u0443] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"\u043f\u0440\u0435 %s",s:"\u043d\u0435\u043a\u043e\u043b\u0438\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"\u0434\u0430\u043d",dd:t.translate,M:"\u043c\u0435\u0441\u0435\u0446",MM:t.translate,y:"\u0433\u043e\u0434\u0438\u043d\u0443",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},78965:function(dt,K,n){!function(P){"use strict";var t={words:{ss:["sekunda","sekunde","sekundi"],m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(d,s){return 1===d?s[0]:d>=2&&d<=4?s[1]:s[2]},translate:function(d,s,h){var f=t.words[h];return 1===h.length?s?f[0]:f[1]:d+" "+t.correctGrammaticalCase(d,f)}};P.defineLocale("sr",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljak_utorak_sreda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010de u] LT",lastWeek:function(){return["[pro\u0161le] [nedelje] [u] LT","[pro\u0161log] [ponedeljka] [u] LT","[pro\u0161log] [utorka] [u] LT","[pro\u0161le] [srede] [u] LT","[pro\u0161log] [\u010detvrtka] [u] LT","[pro\u0161log] [petka] [u] LT","[pro\u0161le] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},25456:function(dt,K,n){!function(P){"use strict";P.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(p,d,s){return p<11?"ekuseni":p<15?"emini":p<19?"entsambama":"ebusuku"},meridiemHour:function(p,d){return 12===p&&(p=0),"ekuseni"===d?p:"emini"===d?p>=11?p:p+12:"entsambama"===d||"ebusuku"===d?0===p?0:p+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}})}(n(56908))},70451:function(dt,K,n){!function(P){"use strict";P.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xf6ndag_m\xe5ndag_tisdag_onsdag_torsdag_fredag_l\xf6rdag".split("_"),weekdaysShort:"s\xf6n_m\xe5n_tis_ons_tor_fre_l\xf6r".split("_"),weekdaysMin:"s\xf6_m\xe5_ti_on_to_fr_l\xf6".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Ig\xe5r] LT",nextWeek:"[P\xe5] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"f\xf6r %s sedan",s:"n\xe5gra sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en m\xe5nad",MM:"%d m\xe5nader",y:"ett \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}(\:e|\:a)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?":e":1===d||2===d?":a":":e")},week:{dow:1,doy:4}})}(n(56908))},77558:function(dt,K,n){!function(P){"use strict";P.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"siku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}})}(n(56908))},51356:function(dt,K,n){!function(P){"use strict";var t={1:"\u0be7",2:"\u0be8",3:"\u0be9",4:"\u0bea",5:"\u0beb",6:"\u0bec",7:"\u0bed",8:"\u0bee",9:"\u0bef",0:"\u0be6"},e={"\u0be7":"1","\u0be8":"2","\u0be9":"3","\u0bea":"4","\u0beb":"5","\u0bec":"6","\u0bed":"7","\u0bee":"8","\u0bef":"9","\u0be6":"0"};P.defineLocale("ta",{months:"\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf_\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf_\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd_\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd_\u0bae\u0bc7_\u0b9c\u0bc2\u0ba9\u0bcd_\u0b9c\u0bc2\u0bb2\u0bc8_\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd_\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bc6\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b85\u0b95\u0bcd\u0b9f\u0bc7\u0bbe\u0baa\u0bb0\u0bcd_\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd".split("_"),monthsShort:"\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf_\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf_\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd_\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd_\u0bae\u0bc7_\u0b9c\u0bc2\u0ba9\u0bcd_\u0b9c\u0bc2\u0bb2\u0bc8_\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd_\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bc6\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b85\u0b95\u0bcd\u0b9f\u0bc7\u0bbe\u0baa\u0bb0\u0bcd_\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd".split("_"),weekdays:"\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bcd\u0bb1\u0bc1\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0b9f\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0baa\u0bc1\u0ba4\u0ba9\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0b9a\u0ba9\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8".split("_"),weekdaysShort:"\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bc1_\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0bb3\u0bcd_\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd_\u0baa\u0bc1\u0ba4\u0ba9\u0bcd_\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0ba9\u0bcd_\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf_\u0b9a\u0ba9\u0bbf".split("_"),weekdaysMin:"\u0b9e\u0bbe_\u0ba4\u0bbf_\u0b9a\u0bc6_\u0baa\u0bc1_\u0bb5\u0bbf_\u0bb5\u0bc6_\u0b9a".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[\u0b87\u0ba9\u0bcd\u0bb1\u0bc1] LT",nextDay:"[\u0ba8\u0bbe\u0bb3\u0bc8] LT",nextWeek:"dddd, LT",lastDay:"[\u0ba8\u0bc7\u0bb1\u0bcd\u0bb1\u0bc1] LT",lastWeek:"[\u0b95\u0b9f\u0ba8\u0bcd\u0ba4 \u0bb5\u0bbe\u0bb0\u0bae\u0bcd] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0b87\u0bb2\u0bcd",past:"%s \u0bae\u0bc1\u0ba9\u0bcd",s:"\u0b92\u0bb0\u0bc1 \u0b9a\u0bbf\u0bb2 \u0bb5\u0bbf\u0ba8\u0bbe\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",ss:"%d \u0bb5\u0bbf\u0ba8\u0bbe\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",m:"\u0b92\u0bb0\u0bc1 \u0ba8\u0bbf\u0bae\u0bbf\u0b9f\u0bae\u0bcd",mm:"%d \u0ba8\u0bbf\u0bae\u0bbf\u0b9f\u0b99\u0bcd\u0b95\u0bb3\u0bcd",h:"\u0b92\u0bb0\u0bc1 \u0bae\u0ba3\u0bbf \u0ba8\u0bc7\u0bb0\u0bae\u0bcd",hh:"%d \u0bae\u0ba3\u0bbf \u0ba8\u0bc7\u0bb0\u0bae\u0bcd",d:"\u0b92\u0bb0\u0bc1 \u0ba8\u0bbe\u0bb3\u0bcd",dd:"%d \u0ba8\u0bbe\u0b9f\u0bcd\u0b95\u0bb3\u0bcd",M:"\u0b92\u0bb0\u0bc1 \u0bae\u0bbe\u0ba4\u0bae\u0bcd",MM:"%d \u0bae\u0bbe\u0ba4\u0b99\u0bcd\u0b95\u0bb3\u0bcd",y:"\u0b92\u0bb0\u0bc1 \u0bb5\u0bb0\u0bc1\u0b9f\u0bae\u0bcd",yy:"%d \u0b86\u0ba3\u0bcd\u0b9f\u0bc1\u0b95\u0bb3\u0bcd"},dayOfMonthOrdinalParse:/\d{1,2}\u0bb5\u0ba4\u0bc1/,ordinal:function(s){return s+"\u0bb5\u0ba4\u0bc1"},preparse:function(s){return s.replace(/[\u0be7\u0be8\u0be9\u0bea\u0beb\u0bec\u0bed\u0bee\u0bef\u0be6]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0baf\u0bbe\u0bae\u0bae\u0bcd|\u0bb5\u0bc8\u0b95\u0bb1\u0bc8|\u0b95\u0bbe\u0bb2\u0bc8|\u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd|\u0b8e\u0bb1\u0bcd\u0baa\u0bbe\u0b9f\u0bc1|\u0bae\u0bbe\u0bb2\u0bc8/,meridiem:function(s,h,f){return s<2?" \u0baf\u0bbe\u0bae\u0bae\u0bcd":s<6?" \u0bb5\u0bc8\u0b95\u0bb1\u0bc8":s<10?" \u0b95\u0bbe\u0bb2\u0bc8":s<14?" \u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd":s<18?" \u0b8e\u0bb1\u0bcd\u0baa\u0bbe\u0b9f\u0bc1":s<22?" \u0bae\u0bbe\u0bb2\u0bc8":" \u0baf\u0bbe\u0bae\u0bae\u0bcd"},meridiemHour:function(s,h){return 12===s&&(s=0),"\u0baf\u0bbe\u0bae\u0bae\u0bcd"===h?s<2?s:s+12:"\u0bb5\u0bc8\u0b95\u0bb1\u0bc8"===h||"\u0b95\u0bbe\u0bb2\u0bc8"===h||"\u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd"===h&&s>=10?s:s+12},week:{dow:0,doy:6}})}(n(56908))},73693:function(dt,K,n){!function(P){"use strict";P.defineLocale("te",{months:"\u0c1c\u0c28\u0c35\u0c30\u0c3f_\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f_\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f_\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d_\u0c2e\u0c47_\u0c1c\u0c42\u0c28\u0c4d_\u0c1c\u0c41\u0c32\u0c48_\u0c06\u0c17\u0c38\u0c4d\u0c1f\u0c41_\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02\u0c2c\u0c30\u0c4d_\u0c05\u0c15\u0c4d\u0c1f\u0c4b\u0c2c\u0c30\u0c4d_\u0c28\u0c35\u0c02\u0c2c\u0c30\u0c4d_\u0c21\u0c3f\u0c38\u0c46\u0c02\u0c2c\u0c30\u0c4d".split("_"),monthsShort:"\u0c1c\u0c28._\u0c2b\u0c3f\u0c2c\u0c4d\u0c30._\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f_\u0c0f\u0c2a\u0c4d\u0c30\u0c3f._\u0c2e\u0c47_\u0c1c\u0c42\u0c28\u0c4d_\u0c1c\u0c41\u0c32\u0c48_\u0c06\u0c17._\u0c38\u0c46\u0c2a\u0c4d._\u0c05\u0c15\u0c4d\u0c1f\u0c4b._\u0c28\u0c35._\u0c21\u0c3f\u0c38\u0c46.".split("_"),monthsParseExact:!0,weekdays:"\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02_\u0c38\u0c4b\u0c2e\u0c35\u0c3e\u0c30\u0c02_\u0c2e\u0c02\u0c17\u0c33\u0c35\u0c3e\u0c30\u0c02_\u0c2c\u0c41\u0c27\u0c35\u0c3e\u0c30\u0c02_\u0c17\u0c41\u0c30\u0c41\u0c35\u0c3e\u0c30\u0c02_\u0c36\u0c41\u0c15\u0c4d\u0c30\u0c35\u0c3e\u0c30\u0c02_\u0c36\u0c28\u0c3f\u0c35\u0c3e\u0c30\u0c02".split("_"),weekdaysShort:"\u0c06\u0c26\u0c3f_\u0c38\u0c4b\u0c2e_\u0c2e\u0c02\u0c17\u0c33_\u0c2c\u0c41\u0c27_\u0c17\u0c41\u0c30\u0c41_\u0c36\u0c41\u0c15\u0c4d\u0c30_\u0c36\u0c28\u0c3f".split("_"),weekdaysMin:"\u0c06_\u0c38\u0c4b_\u0c2e\u0c02_\u0c2c\u0c41_\u0c17\u0c41_\u0c36\u0c41_\u0c36".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0c28\u0c47\u0c21\u0c41] LT",nextDay:"[\u0c30\u0c47\u0c2a\u0c41] LT",nextWeek:"dddd, LT",lastDay:"[\u0c28\u0c3f\u0c28\u0c4d\u0c28] LT",lastWeek:"[\u0c17\u0c24] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0c32\u0c4b",past:"%s \u0c15\u0c4d\u0c30\u0c3f\u0c24\u0c02",s:"\u0c15\u0c4a\u0c28\u0c4d\u0c28\u0c3f \u0c15\u0c4d\u0c37\u0c23\u0c3e\u0c32\u0c41",ss:"%d \u0c38\u0c46\u0c15\u0c28\u0c4d\u0c32\u0c41",m:"\u0c12\u0c15 \u0c28\u0c3f\u0c2e\u0c3f\u0c37\u0c02",mm:"%d \u0c28\u0c3f\u0c2e\u0c3f\u0c37\u0c3e\u0c32\u0c41",h:"\u0c12\u0c15 \u0c17\u0c02\u0c1f",hh:"%d \u0c17\u0c02\u0c1f\u0c32\u0c41",d:"\u0c12\u0c15 \u0c30\u0c4b\u0c1c\u0c41",dd:"%d \u0c30\u0c4b\u0c1c\u0c41\u0c32\u0c41",M:"\u0c12\u0c15 \u0c28\u0c46\u0c32",MM:"%d \u0c28\u0c46\u0c32\u0c32\u0c41",y:"\u0c12\u0c15 \u0c38\u0c02\u0c35\u0c24\u0c4d\u0c38\u0c30\u0c02",yy:"%d \u0c38\u0c02\u0c35\u0c24\u0c4d\u0c38\u0c30\u0c3e\u0c32\u0c41"},dayOfMonthOrdinalParse:/\d{1,2}\u0c35/,ordinal:"%d\u0c35",meridiemParse:/\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f|\u0c09\u0c26\u0c2f\u0c02|\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02|\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02/,meridiemHour:function(p,d){return 12===p&&(p=0),"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f"===d?p<4?p:p+12:"\u0c09\u0c26\u0c2f\u0c02"===d?p:"\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02"===d?p>=10?p:p+12:"\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02"===d?p+12:void 0},meridiem:function(p,d,s){return p<4?"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f":p<10?"\u0c09\u0c26\u0c2f\u0c02":p<17?"\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02":p<20?"\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02":"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f"},week:{dow:0,doy:6}})}(n(56908))},21243:function(dt,K,n){!function(P){"use strict";P.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Ju\xf1u_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"segundu balun",ss:"segundu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},42500:function(dt,K,n){!function(P){"use strict";var t={0:"-\u0443\u043c",1:"-\u0443\u043c",2:"-\u044e\u043c",3:"-\u044e\u043c",4:"-\u0443\u043c",5:"-\u0443\u043c",6:"-\u0443\u043c",7:"-\u0443\u043c",8:"-\u0443\u043c",9:"-\u0443\u043c",10:"-\u0443\u043c",12:"-\u0443\u043c",13:"-\u0443\u043c",20:"-\u0443\u043c",30:"-\u044e\u043c",40:"-\u0443\u043c",50:"-\u0443\u043c",60:"-\u0443\u043c",70:"-\u0443\u043c",80:"-\u0443\u043c",90:"-\u0443\u043c",100:"-\u0443\u043c"};P.defineLocale("tg",{months:"\u044f\u043d\u0432\u0430\u0440_\u0444\u0435\u0432\u0440\u0430\u043b_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440_\u043e\u043a\u0442\u044f\u0431\u0440_\u043d\u043e\u044f\u0431\u0440_\u0434\u0435\u043a\u0430\u0431\u0440".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u044f\u043a\u0448\u0430\u043d\u0431\u0435_\u0434\u0443\u0448\u0430\u043d\u0431\u0435_\u0441\u0435\u0448\u0430\u043d\u0431\u0435_\u0447\u043e\u0440\u0448\u0430\u043d\u0431\u0435_\u043f\u0430\u043d\u04b7\u0448\u0430\u043d\u0431\u0435_\u04b7\u0443\u043c\u044a\u0430_\u0448\u0430\u043d\u0431\u0435".split("_"),weekdaysShort:"\u044f\u0448\u0431_\u0434\u0448\u0431_\u0441\u0448\u0431_\u0447\u0448\u0431_\u043f\u0448\u0431_\u04b7\u0443\u043c_\u0448\u043d\u0431".split("_"),weekdaysMin:"\u044f\u0448_\u0434\u0448_\u0441\u0448_\u0447\u0448_\u043f\u0448_\u04b7\u043c_\u0448\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0418\u043c\u0440\u04ef\u0437 \u0441\u043e\u0430\u0442\u0438] LT",nextDay:"[\u041f\u0430\u0433\u043e\u04b3 \u0441\u043e\u0430\u0442\u0438] LT",lastDay:"[\u0414\u0438\u0440\u04ef\u0437 \u0441\u043e\u0430\u0442\u0438] LT",nextWeek:"dddd[\u0438] [\u04b3\u0430\u0444\u0442\u0430\u0438 \u043e\u044f\u043d\u0434\u0430 \u0441\u043e\u0430\u0442\u0438] LT",lastWeek:"dddd[\u0438] [\u04b3\u0430\u0444\u0442\u0430\u0438 \u0433\u0443\u0437\u0430\u0448\u0442\u0430 \u0441\u043e\u0430\u0442\u0438] LT",sameElse:"L"},relativeTime:{future:"\u0431\u0430\u044a\u0434\u0438 %s",past:"%s \u043f\u0435\u0448",s:"\u044f\u043a\u0447\u0430\u043d\u0434 \u0441\u043e\u043d\u0438\u044f",m:"\u044f\u043a \u0434\u0430\u049b\u0438\u049b\u0430",mm:"%d \u0434\u0430\u049b\u0438\u049b\u0430",h:"\u044f\u043a \u0441\u043e\u0430\u0442",hh:"%d \u0441\u043e\u0430\u0442",d:"\u044f\u043a \u0440\u04ef\u0437",dd:"%d \u0440\u04ef\u0437",M:"\u044f\u043a \u043c\u043e\u04b3",MM:"%d \u043c\u043e\u04b3",y:"\u044f\u043a \u0441\u043e\u043b",yy:"%d \u0441\u043e\u043b"},meridiemParse:/\u0448\u0430\u0431|\u0441\u0443\u0431\u04b3|\u0440\u04ef\u0437|\u0431\u0435\u0433\u043e\u04b3/,meridiemHour:function(d,s){return 12===d&&(d=0),"\u0448\u0430\u0431"===s?d<4?d:d+12:"\u0441\u0443\u0431\u04b3"===s?d:"\u0440\u04ef\u0437"===s?d>=11?d:d+12:"\u0431\u0435\u0433\u043e\u04b3"===s?d+12:void 0},meridiem:function(d,s,h){return d<4?"\u0448\u0430\u0431":d<11?"\u0441\u0443\u0431\u04b3":d<16?"\u0440\u04ef\u0437":d<19?"\u0431\u0435\u0433\u043e\u04b3":"\u0448\u0430\u0431"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0443\u043c|\u044e\u043c)/,ordinal:function(d){return d+(t[d]||t[d%10]||t[d>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},55768:function(dt,K,n){!function(P){"use strict";P.defineLocale("th",{months:"\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21_\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c_\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21_\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19_\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21_\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19_\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21_\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21_\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19_\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21_\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19_\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21".split("_"),monthsShort:"\u0e21.\u0e04._\u0e01.\u0e1e._\u0e21\u0e35.\u0e04._\u0e40\u0e21.\u0e22._\u0e1e.\u0e04._\u0e21\u0e34.\u0e22._\u0e01.\u0e04._\u0e2a.\u0e04._\u0e01.\u0e22._\u0e15.\u0e04._\u0e1e.\u0e22._\u0e18.\u0e04.".split("_"),monthsParseExact:!0,weekdays:"\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c_\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c_\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23_\u0e1e\u0e38\u0e18_\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35_\u0e28\u0e38\u0e01\u0e23\u0e4c_\u0e40\u0e2a\u0e32\u0e23\u0e4c".split("_"),weekdaysShort:"\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c_\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c_\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23_\u0e1e\u0e38\u0e18_\u0e1e\u0e24\u0e2b\u0e31\u0e2a_\u0e28\u0e38\u0e01\u0e23\u0e4c_\u0e40\u0e2a\u0e32\u0e23\u0e4c".split("_"),weekdaysMin:"\u0e2d\u0e32._\u0e08._\u0e2d._\u0e1e._\u0e1e\u0e24._\u0e28._\u0e2a.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0e40\u0e27\u0e25\u0e32 H:mm",LLLL:"\u0e27\u0e31\u0e19dddd\u0e17\u0e35\u0e48 D MMMM YYYY \u0e40\u0e27\u0e25\u0e32 H:mm"},meridiemParse:/\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07|\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07/,isPM:function(p){return"\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"===p},meridiem:function(p,d,s){return p<12?"\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07":"\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"},calendar:{sameDay:"[\u0e27\u0e31\u0e19\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",nextDay:"[\u0e1e\u0e23\u0e38\u0e48\u0e07\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",nextWeek:"dddd[\u0e2b\u0e19\u0e49\u0e32 \u0e40\u0e27\u0e25\u0e32] LT",lastDay:"[\u0e40\u0e21\u0e37\u0e48\u0e2d\u0e27\u0e32\u0e19\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",lastWeek:"[\u0e27\u0e31\u0e19]dddd[\u0e17\u0e35\u0e48\u0e41\u0e25\u0e49\u0e27 \u0e40\u0e27\u0e25\u0e32] LT",sameElse:"L"},relativeTime:{future:"\u0e2d\u0e35\u0e01 %s",past:"%s\u0e17\u0e35\u0e48\u0e41\u0e25\u0e49\u0e27",s:"\u0e44\u0e21\u0e48\u0e01\u0e35\u0e48\u0e27\u0e34\u0e19\u0e32\u0e17\u0e35",ss:"%d \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35",m:"1 \u0e19\u0e32\u0e17\u0e35",mm:"%d \u0e19\u0e32\u0e17\u0e35",h:"1 \u0e0a\u0e31\u0e48\u0e27\u0e42\u0e21\u0e07",hh:"%d \u0e0a\u0e31\u0e48\u0e27\u0e42\u0e21\u0e07",d:"1 \u0e27\u0e31\u0e19",dd:"%d \u0e27\u0e31\u0e19",M:"1 \u0e40\u0e14\u0e37\u0e2d\u0e19",MM:"%d \u0e40\u0e14\u0e37\u0e2d\u0e19",y:"1 \u0e1b\u0e35",yy:"%d \u0e1b\u0e35"}})}(n(56908))},35780:function(dt,K,n){!function(P){"use strict";P.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(p){return p},week:{dow:1,doy:4}})}(n(56908))},29590:function(dt,K,n){!function(P){"use strict";var t="pagh_wa\u2019_cha\u2019_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function d(f,T,B,I){var v=function s(f){var T=Math.floor(f%1e3/100),B=Math.floor(f%100/10),I=f%10,v="";return T>0&&(v+=t[T]+"vatlh"),B>0&&(v+=(""!==v?" ":"")+t[B]+"maH"),I>0&&(v+=(""!==v?" ":"")+t[I]),""===v?"pagh":v}(f);switch(B){case"ss":return v+" lup";case"mm":return v+" tup";case"hh":return v+" rep";case"dd":return v+" jaj";case"MM":return v+" jar";case"yy":return v+" DIS"}}P.defineLocale("tlh",{months:"tera\u2019 jar wa\u2019_tera\u2019 jar cha\u2019_tera\u2019 jar wej_tera\u2019 jar loS_tera\u2019 jar vagh_tera\u2019 jar jav_tera\u2019 jar Soch_tera\u2019 jar chorgh_tera\u2019 jar Hut_tera\u2019 jar wa\u2019maH_tera\u2019 jar wa\u2019maH wa\u2019_tera\u2019 jar wa\u2019maH cha\u2019".split("_"),monthsShort:"jar wa\u2019_jar cha\u2019_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa\u2019maH_jar wa\u2019maH wa\u2019_jar wa\u2019maH cha\u2019".split("_"),monthsParseExact:!0,weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa\u2019leS] LT",nextWeek:"LLL",lastDay:"[wa\u2019Hu\u2019] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:function e(f){var T=f;return-1!==f.indexOf("jaj")?T.slice(0,-3)+"leS":-1!==f.indexOf("jar")?T.slice(0,-3)+"waQ":-1!==f.indexOf("DIS")?T.slice(0,-3)+"nem":T+" pIq"},past:function p(f){var T=f;return-1!==f.indexOf("jaj")?T.slice(0,-3)+"Hu\u2019":-1!==f.indexOf("jar")?T.slice(0,-3)+"wen":-1!==f.indexOf("DIS")?T.slice(0,-3)+"ben":T+" ret"},s:"puS lup",ss:d,m:"wa\u2019 tup",mm:d,h:"wa\u2019 rep",hh:d,d:"wa\u2019 jaj",dd:d,M:"wa\u2019 jar",MM:d,y:"wa\u2019 DIS",yy:d},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},33807:function(dt,K,n){!function(P){"use strict";var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'\xfcnc\xfc",4:"'\xfcnc\xfc",100:"'\xfcnc\xfc",6:"'nc\u0131",9:"'uncu",10:"'uncu",30:"'uncu",60:"'\u0131nc\u0131",90:"'\u0131nc\u0131"};P.defineLocale("tr",{months:"Ocak_\u015eubat_Mart_Nisan_May\u0131s_Haziran_Temmuz_A\u011fustos_Eyl\xfcl_Ekim_Kas\u0131m_Aral\u0131k".split("_"),monthsShort:"Oca_\u015eub_Mar_Nis_May_Haz_Tem_A\u011fu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Sal\u0131_\xc7ar\u015famba_Per\u015fembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_\xc7ar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_\xc7a_Pe_Cu_Ct".split("_"),meridiem:function(d,s,h){return d<12?h?"\xf6\xf6":"\xd6\xd6":h?"\xf6s":"\xd6S"},meridiemParse:/\xf6\xf6|\xd6\xd6|\xf6s|\xd6S/,isPM:function(d){return"\xf6s"===d||"\xd6S"===d},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn saat] LT",nextDay:"[yar\u0131n saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[d\xfcn] LT",lastWeek:"[ge\xe7en] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \xf6nce",s:"birka\xe7 saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir g\xfcn",dd:"%d g\xfcn",M:"bir ay",MM:"%d ay",y:"bir y\u0131l",yy:"%d y\u0131l"},ordinal:function(d,s){switch(s){case"d":case"D":case"Do":case"DD":return d;default:if(0===d)return d+"'\u0131nc\u0131";var h=d%10;return d+(t[h]||t[d%100-h]||t[d>=100?100:null])}},week:{dow:1,doy:7}})}(n(56908))},93857:function(dt,K,n){!function(P){"use strict";function e(p,d,s,h){var f={s:["viensas secunds","'iensas secunds"],ss:[p+" secunds",p+" secunds"],m:["'n m\xedut","'iens m\xedut"],mm:[p+" m\xeduts",p+" m\xeduts"],h:["'n \xfeora","'iensa \xfeora"],hh:[p+" \xfeoras",p+" \xfeoras"],d:["'n ziua","'iensa ziua"],dd:[p+" ziuas",p+" ziuas"],M:["'n mes","'iens mes"],MM:[p+" mesen",p+" mesen"],y:["'n ar","'iens ar"],yy:[p+" ars",p+" ars"]};return h||d?f[s][0]:f[s][1]}P.defineLocale("tzl",{months:"Januar_Fevraglh_Mar\xe7_Avr\xefu_Mai_G\xfcn_Julia_Guscht_Setemvar_Listop\xe4ts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_G\xfcn_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"S\xfaladi_L\xfane\xe7i_Maitzi_M\xe1rcuri_Xh\xfaadi_Vi\xe9ner\xe7i_S\xe1turi".split("_"),weekdaysShort:"S\xfal_L\xfan_Mai_M\xe1r_Xh\xfa_Vi\xe9_S\xe1t".split("_"),weekdaysMin:"S\xfa_L\xfa_Ma_M\xe1_Xh_Vi_S\xe1".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiemParse:/d\'o|d\'a/i,isPM:function(d){return"d'o"===d.toLowerCase()},meridiem:function(d,s,h){return d>11?h?"d'o":"D'O":h?"d'a":"D'A"},calendar:{sameDay:"[oxhi \xe0] LT",nextDay:"[dem\xe0 \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[ieiri \xe0] LT",lastWeek:"[s\xfcr el] dddd [lasteu \xe0] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},8806:function(dt,K,n){!function(P){"use strict";P.defineLocale("tzm-latn",{months:"innayr_br\u02e4ayr\u02e4_mar\u02e4s\u02e4_ibrir_mayyw_ywnyw_ywlywz_\u0263w\u0161t_\u0161wtanbir_kt\u02e4wbr\u02e4_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_br\u02e4ayr\u02e4_mar\u02e4s\u02e4_ibrir_mayyw_ywnyw_ywlywz_\u0263w\u0161t_\u0161wtanbir_kt\u02e4wbr\u02e4_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",ss:"%d imik",m:"minu\u1e0d",mm:"%d minu\u1e0d",h:"sa\u025ba",hh:"%d tassa\u025bin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}(n(56908))},60654:function(dt,K,n){!function(P){"use strict";P.defineLocale("tzm",{months:"\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54_\u2d31\u2d55\u2d30\u2d62\u2d55_\u2d4e\u2d30\u2d55\u2d5a_\u2d49\u2d31\u2d54\u2d49\u2d54_\u2d4e\u2d30\u2d62\u2d62\u2d53_\u2d62\u2d53\u2d4f\u2d62\u2d53_\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63_\u2d56\u2d53\u2d5b\u2d5c_\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d3d\u2d5f\u2d53\u2d31\u2d55_\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d37\u2d53\u2d4a\u2d4f\u2d31\u2d49\u2d54".split("_"),monthsShort:"\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54_\u2d31\u2d55\u2d30\u2d62\u2d55_\u2d4e\u2d30\u2d55\u2d5a_\u2d49\u2d31\u2d54\u2d49\u2d54_\u2d4e\u2d30\u2d62\u2d62\u2d53_\u2d62\u2d53\u2d4f\u2d62\u2d53_\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63_\u2d56\u2d53\u2d5b\u2d5c_\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d3d\u2d5f\u2d53\u2d31\u2d55_\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d37\u2d53\u2d4a\u2d4f\u2d31\u2d49\u2d54".split("_"),weekdays:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),weekdaysShort:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),weekdaysMin:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u2d30\u2d59\u2d37\u2d45 \u2d34] LT",nextDay:"[\u2d30\u2d59\u2d3d\u2d30 \u2d34] LT",nextWeek:"dddd [\u2d34] LT",lastDay:"[\u2d30\u2d5a\u2d30\u2d4f\u2d5c \u2d34] LT",lastWeek:"dddd [\u2d34] LT",sameElse:"L"},relativeTime:{future:"\u2d37\u2d30\u2d37\u2d45 \u2d59 \u2d62\u2d30\u2d4f %s",past:"\u2d62\u2d30\u2d4f %s",s:"\u2d49\u2d4e\u2d49\u2d3d",ss:"%d \u2d49\u2d4e\u2d49\u2d3d",m:"\u2d4e\u2d49\u2d4f\u2d53\u2d3a",mm:"%d \u2d4e\u2d49\u2d4f\u2d53\u2d3a",h:"\u2d59\u2d30\u2d44\u2d30",hh:"%d \u2d5c\u2d30\u2d59\u2d59\u2d30\u2d44\u2d49\u2d4f",d:"\u2d30\u2d59\u2d59",dd:"%d o\u2d59\u2d59\u2d30\u2d4f",M:"\u2d30\u2d62o\u2d53\u2d54",MM:"%d \u2d49\u2d62\u2d62\u2d49\u2d54\u2d4f",y:"\u2d30\u2d59\u2d33\u2d30\u2d59",yy:"%d \u2d49\u2d59\u2d33\u2d30\u2d59\u2d4f"},week:{dow:6,doy:12}})}(n(56908))},30845:function(dt,K,n){!function(P){"use strict";P.defineLocale("ug-cn",{months:"\u064a\u0627\u0646\u06cb\u0627\u0631_\u0641\u06d0\u06cb\u0631\u0627\u0644_\u0645\u0627\u0631\u062a_\u0626\u0627\u067e\u0631\u06d0\u0644_\u0645\u0627\u064a_\u0626\u0649\u064a\u06c7\u0646_\u0626\u0649\u064a\u06c7\u0644_\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a_\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631_\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631_\u0646\u0648\u064a\u0627\u0628\u0649\u0631_\u062f\u06d0\u0643\u0627\u0628\u0649\u0631".split("_"),monthsShort:"\u064a\u0627\u0646\u06cb\u0627\u0631_\u0641\u06d0\u06cb\u0631\u0627\u0644_\u0645\u0627\u0631\u062a_\u0626\u0627\u067e\u0631\u06d0\u0644_\u0645\u0627\u064a_\u0626\u0649\u064a\u06c7\u0646_\u0626\u0649\u064a\u06c7\u0644_\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a_\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631_\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631_\u0646\u0648\u064a\u0627\u0628\u0649\u0631_\u062f\u06d0\u0643\u0627\u0628\u0649\u0631".split("_"),weekdays:"\u064a\u06d5\u0643\u0634\u06d5\u0646\u0628\u06d5_\u062f\u06c8\u0634\u06d5\u0646\u0628\u06d5_\u0633\u06d5\u064a\u0634\u06d5\u0646\u0628\u06d5_\u0686\u0627\u0631\u0634\u06d5\u0646\u0628\u06d5_\u067e\u06d5\u064a\u0634\u06d5\u0646\u0628\u06d5_\u062c\u06c8\u0645\u06d5_\u0634\u06d5\u0646\u0628\u06d5".split("_"),weekdaysShort:"\u064a\u06d5_\u062f\u06c8_\u0633\u06d5_\u0686\u0627_\u067e\u06d5_\u062c\u06c8_\u0634\u06d5".split("_"),weekdaysMin:"\u064a\u06d5_\u062f\u06c8_\u0633\u06d5_\u0686\u0627_\u067e\u06d5_\u062c\u06c8_\u0634\u06d5".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649",LLL:"YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649\u060c HH:mm",LLLL:"dddd\u060c YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649\u060c HH:mm"},meridiemParse:/\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5|\u0633\u06d5\u06be\u06d5\u0631|\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646|\u0686\u06c8\u0634|\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646|\u0643\u06d5\u0686/,meridiemHour:function(p,d){return 12===p&&(p=0),"\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5"===d||"\u0633\u06d5\u06be\u06d5\u0631"===d||"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646"===d?p:"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646"===d||"\u0643\u06d5\u0686"===d?p+12:p>=11?p:p+12},meridiem:function(p,d,s){var h=100*p+d;return h<600?"\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5":h<900?"\u0633\u06d5\u06be\u06d5\u0631":h<1130?"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646":h<1230?"\u0686\u06c8\u0634":h<1800?"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646":"\u0643\u06d5\u0686"},calendar:{sameDay:"[\u0628\u06c8\u06af\u06c8\u0646 \u0633\u0627\u0626\u06d5\u062a] LT",nextDay:"[\u0626\u06d5\u062a\u06d5 \u0633\u0627\u0626\u06d5\u062a] LT",nextWeek:"[\u0643\u06d0\u0644\u06d5\u0631\u0643\u0649] dddd [\u0633\u0627\u0626\u06d5\u062a] LT",lastDay:"[\u062a\u06c6\u0646\u06c8\u06af\u06c8\u0646] LT",lastWeek:"[\u0626\u0627\u0644\u062f\u0649\u0646\u0642\u0649] dddd [\u0633\u0627\u0626\u06d5\u062a] LT",sameElse:"L"},relativeTime:{future:"%s \u0643\u06d0\u064a\u0649\u0646",past:"%s \u0628\u06c7\u0631\u06c7\u0646",s:"\u0646\u06d5\u0686\u0686\u06d5 \u0633\u06d0\u0643\u0648\u0646\u062a",ss:"%d \u0633\u06d0\u0643\u0648\u0646\u062a",m:"\u0628\u0649\u0631 \u0645\u0649\u0646\u06c7\u062a",mm:"%d \u0645\u0649\u0646\u06c7\u062a",h:"\u0628\u0649\u0631 \u0633\u0627\u0626\u06d5\u062a",hh:"%d \u0633\u0627\u0626\u06d5\u062a",d:"\u0628\u0649\u0631 \u0643\u06c8\u0646",dd:"%d \u0643\u06c8\u0646",M:"\u0628\u0649\u0631 \u0626\u0627\u064a",MM:"%d \u0626\u0627\u064a",y:"\u0628\u0649\u0631 \u064a\u0649\u0644",yy:"%d \u064a\u0649\u0644"},dayOfMonthOrdinalParse:/\d{1,2}(-\u0643\u06c8\u0646\u0649|-\u0626\u0627\u064a|-\u06be\u06d5\u067e\u062a\u06d5)/,ordinal:function(p,d){switch(d){case"d":case"D":case"DDD":return p+"-\u0643\u06c8\u0646\u0649";case"w":case"W":return p+"-\u06be\u06d5\u067e\u062a\u06d5";default:return p}},preparse:function(p){return p.replace(/\u060c/g,",")},postformat:function(p){return p.replace(/,/g,"\u060c")},week:{dow:1,doy:7}})}(n(56908))},19232:function(dt,K,n){!function(P){"use strict";function e(h,f,T){return"m"===T?f?"\u0445\u0432\u0438\u043b\u0438\u043d\u0430":"\u0445\u0432\u0438\u043b\u0438\u043d\u0443":"h"===T?f?"\u0433\u043e\u0434\u0438\u043d\u0430":"\u0433\u043e\u0434\u0438\u043d\u0443":h+" "+function t(h,f){var T=h.split("_");return f%10==1&&f%100!=11?T[0]:f%10>=2&&f%10<=4&&(f%100<10||f%100>=20)?T[1]:T[2]}({ss:f?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u0438_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u0438_\u0441\u0435\u043a\u0443\u043d\u0434",mm:f?"\u0445\u0432\u0438\u043b\u0438\u043d\u0430_\u0445\u0432\u0438\u043b\u0438\u043d\u0438_\u0445\u0432\u0438\u043b\u0438\u043d":"\u0445\u0432\u0438\u043b\u0438\u043d\u0443_\u0445\u0432\u0438\u043b\u0438\u043d\u0438_\u0445\u0432\u0438\u043b\u0438\u043d",hh:f?"\u0433\u043e\u0434\u0438\u043d\u0430_\u0433\u043e\u0434\u0438\u043d\u0438_\u0433\u043e\u0434\u0438\u043d":"\u0433\u043e\u0434\u0438\u043d\u0443_\u0433\u043e\u0434\u0438\u043d\u0438_\u0433\u043e\u0434\u0438\u043d",dd:"\u0434\u0435\u043d\u044c_\u0434\u043d\u0456_\u0434\u043d\u0456\u0432",MM:"\u043c\u0456\u0441\u044f\u0446\u044c_\u043c\u0456\u0441\u044f\u0446\u0456_\u043c\u0456\u0441\u044f\u0446\u0456\u0432",yy:"\u0440\u0456\u043a_\u0440\u043e\u043a\u0438_\u0440\u043e\u043a\u0456\u0432"}[T],+h)}function d(h){return function(){return h+"\u043e"+(11===this.hours()?"\u0431":"")+"] LT"}}P.defineLocale("uk",{months:{format:"\u0441\u0456\u0447\u043d\u044f_\u043b\u044e\u0442\u043e\u0433\u043e_\u0431\u0435\u0440\u0435\u0437\u043d\u044f_\u043a\u0432\u0456\u0442\u043d\u044f_\u0442\u0440\u0430\u0432\u043d\u044f_\u0447\u0435\u0440\u0432\u043d\u044f_\u043b\u0438\u043f\u043d\u044f_\u0441\u0435\u0440\u043f\u043d\u044f_\u0432\u0435\u0440\u0435\u0441\u043d\u044f_\u0436\u043e\u0432\u0442\u043d\u044f_\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434\u0430_\u0433\u0440\u0443\u0434\u043d\u044f".split("_"),standalone:"\u0441\u0456\u0447\u0435\u043d\u044c_\u043b\u044e\u0442\u0438\u0439_\u0431\u0435\u0440\u0435\u0437\u0435\u043d\u044c_\u043a\u0432\u0456\u0442\u0435\u043d\u044c_\u0442\u0440\u0430\u0432\u0435\u043d\u044c_\u0447\u0435\u0440\u0432\u0435\u043d\u044c_\u043b\u0438\u043f\u0435\u043d\u044c_\u0441\u0435\u0440\u043f\u0435\u043d\u044c_\u0432\u0435\u0440\u0435\u0441\u0435\u043d\u044c_\u0436\u043e\u0432\u0442\u0435\u043d\u044c_\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434_\u0433\u0440\u0443\u0434\u0435\u043d\u044c".split("_")},monthsShort:"\u0441\u0456\u0447_\u043b\u044e\u0442_\u0431\u0435\u0440_\u043a\u0432\u0456\u0442_\u0442\u0440\u0430\u0432_\u0447\u0435\u0440\u0432_\u043b\u0438\u043f_\u0441\u0435\u0440\u043f_\u0432\u0435\u0440_\u0436\u043e\u0432\u0442_\u043b\u0438\u0441\u0442_\u0433\u0440\u0443\u0434".split("_"),weekdays:function p(h,f){var T={nominative:"\u043d\u0435\u0434\u0456\u043b\u044f_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a_\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a_\u0441\u0435\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u044f_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),accusative:"\u043d\u0435\u0434\u0456\u043b\u044e_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a_\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a_\u0441\u0435\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u044e_\u0441\u0443\u0431\u043e\u0442\u0443".split("_"),genitive:"\u043d\u0435\u0434\u0456\u043b\u0456_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043a\u0430_\u0432\u0456\u0432\u0442\u043e\u0440\u043a\u0430_\u0441\u0435\u0440\u0435\u0434\u0438_\u0447\u0435\u0442\u0432\u0435\u0440\u0433\u0430_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u0456_\u0441\u0443\u0431\u043e\u0442\u0438".split("_")};return!0===h?T.nominative.slice(1,7).concat(T.nominative.slice(0,1)):h?T[/(\[[\u0412\u0432\u0423\u0443]\]) ?dddd/.test(f)?"accusative":/\[?(?:\u043c\u0438\u043d\u0443\u043b\u043e\u0457|\u043d\u0430\u0441\u0442\u0443\u043f\u043d\u043e\u0457)? ?\] ?dddd/.test(f)?"genitive":"nominative"][h.day()]:T.nominative},weekdaysShort:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0440.",LLL:"D MMMM YYYY \u0440., HH:mm",LLLL:"dddd, D MMMM YYYY \u0440., HH:mm"},calendar:{sameDay:d("[\u0421\u044c\u043e\u0433\u043e\u0434\u043d\u0456 "),nextDay:d("[\u0417\u0430\u0432\u0442\u0440\u0430 "),lastDay:d("[\u0412\u0447\u043e\u0440\u0430 "),nextWeek:d("[\u0423] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return d("[\u041c\u0438\u043d\u0443\u043b\u043e\u0457] dddd [").call(this);case 1:case 2:case 4:return d("[\u041c\u0438\u043d\u0443\u043b\u043e\u0433\u043e] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"%s \u0442\u043e\u043c\u0443",s:"\u0434\u0435\u043a\u0456\u043b\u044c\u043a\u0430 \u0441\u0435\u043a\u0443\u043d\u0434",ss:e,m:e,mm:e,h:"\u0433\u043e\u0434\u0438\u043d\u0443",hh:e,d:"\u0434\u0435\u043d\u044c",dd:e,M:"\u043c\u0456\u0441\u044f\u0446\u044c",MM:e,y:"\u0440\u0456\u043a",yy:e},meridiemParse:/\u043d\u043e\u0447\u0456|\u0440\u0430\u043d\u043a\u0443|\u0434\u043d\u044f|\u0432\u0435\u0447\u043e\u0440\u0430/,isPM:function(f){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u043e\u0440\u0430)$/.test(f)},meridiem:function(f,T,B){return f<4?"\u043d\u043e\u0447\u0456":f<12?"\u0440\u0430\u043d\u043a\u0443":f<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u043e\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0439|\u0433\u043e)/,ordinal:function(f,T){switch(T){case"M":case"d":case"DDD":case"w":case"W":return f+"-\u0439";case"D":return f+"-\u0433\u043e";default:return f}},week:{dow:1,doy:7}})}(n(56908))},47052:function(dt,K,n){!function(P){"use strict";var t=["\u062c\u0646\u0648\u0631\u06cc","\u0641\u0631\u0648\u0631\u06cc","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u0626\u06cc","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0626\u06cc","\u0627\u06af\u0633\u062a","\u0633\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"],e=["\u0627\u062a\u0648\u0627\u0631","\u067e\u06cc\u0631","\u0645\u0646\u06af\u0644","\u0628\u062f\u06be","\u062c\u0645\u0639\u0631\u0627\u062a","\u062c\u0645\u0639\u06c1","\u06c1\u0641\u062a\u06c1"];P.defineLocale("ur",{months:t,monthsShort:t,weekdays:e,weekdaysShort:e,weekdaysMin:e,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd\u060c D MMMM YYYY HH:mm"},meridiemParse:/\u0635\u0628\u062d|\u0634\u0627\u0645/,isPM:function(s){return"\u0634\u0627\u0645"===s},meridiem:function(s,h,f){return s<12?"\u0635\u0628\u062d":"\u0634\u0627\u0645"},calendar:{sameDay:"[\u0622\u062c \u0628\u0648\u0642\u062a] LT",nextDay:"[\u06a9\u0644 \u0628\u0648\u0642\u062a] LT",nextWeek:"dddd [\u0628\u0648\u0642\u062a] LT",lastDay:"[\u06af\u0630\u0634\u062a\u06c1 \u0631\u0648\u0632 \u0628\u0648\u0642\u062a] LT",lastWeek:"[\u06af\u0630\u0634\u062a\u06c1] dddd [\u0628\u0648\u0642\u062a] LT",sameElse:"L"},relativeTime:{future:"%s \u0628\u0639\u062f",past:"%s \u0642\u0628\u0644",s:"\u0686\u0646\u062f \u0633\u06cc\u06a9\u0646\u0688",ss:"%d \u0633\u06cc\u06a9\u0646\u0688",m:"\u0627\u06cc\u06a9 \u0645\u0646\u0679",mm:"%d \u0645\u0646\u0679",h:"\u0627\u06cc\u06a9 \u06af\u06be\u0646\u0679\u06c1",hh:"%d \u06af\u06be\u0646\u0679\u06d2",d:"\u0627\u06cc\u06a9 \u062f\u0646",dd:"%d \u062f\u0646",M:"\u0627\u06cc\u06a9 \u0645\u0627\u06c1",MM:"%d \u0645\u0627\u06c1",y:"\u0627\u06cc\u06a9 \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(s){return s.replace(/\u060c/g,",")},postformat:function(s){return s.replace(/,/g,"\u060c")},week:{dow:1,doy:4}})}(n(56908))},32233:function(dt,K,n){!function(P){"use strict";P.defineLocale("uz-latn",{months:"Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr".split("_"),monthsShort:"Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek".split("_"),weekdays:"Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba".split("_"),weekdaysShort:"Yak_Dush_Sesh_Chor_Pay_Jum_Shan".split("_"),weekdaysMin:"Ya_Du_Se_Cho_Pa_Ju_Sha".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Bugun soat] LT [da]",nextDay:"[Ertaga] LT [da]",nextWeek:"dddd [kuni soat] LT [da]",lastDay:"[Kecha soat] LT [da]",lastWeek:"[O'tgan] dddd [kuni soat] LT [da]",sameElse:"L"},relativeTime:{future:"Yaqin %s ichida",past:"Bir necha %s oldin",s:"soniya",ss:"%d soniya",m:"bir daqiqa",mm:"%d daqiqa",h:"bir soat",hh:"%d soat",d:"bir kun",dd:"%d kun",M:"bir oy",MM:"%d oy",y:"bir yil",yy:"%d yil"},week:{dow:1,doy:7}})}(n(56908))},77967:function(dt,K,n){!function(P){"use strict";P.defineLocale("uz",{months:"\u044f\u043d\u0432\u0430\u0440_\u0444\u0435\u0432\u0440\u0430\u043b_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440_\u043e\u043a\u0442\u044f\u0431\u0440_\u043d\u043e\u044f\u0431\u0440_\u0434\u0435\u043a\u0430\u0431\u0440".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u042f\u043a\u0448\u0430\u043d\u0431\u0430_\u0414\u0443\u0448\u0430\u043d\u0431\u0430_\u0421\u0435\u0448\u0430\u043d\u0431\u0430_\u0427\u043e\u0440\u0448\u0430\u043d\u0431\u0430_\u041f\u0430\u0439\u0448\u0430\u043d\u0431\u0430_\u0416\u0443\u043c\u0430_\u0428\u0430\u043d\u0431\u0430".split("_"),weekdaysShort:"\u042f\u043a\u0448_\u0414\u0443\u0448_\u0421\u0435\u0448_\u0427\u043e\u0440_\u041f\u0430\u0439_\u0416\u0443\u043c_\u0428\u0430\u043d".split("_"),weekdaysMin:"\u042f\u043a_\u0414\u0443_\u0421\u0435_\u0427\u043e_\u041f\u0430_\u0416\u0443_\u0428\u0430".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[\u0411\u0443\u0433\u0443\u043d \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",nextDay:"[\u042d\u0440\u0442\u0430\u0433\u0430] LT [\u0434\u0430]",nextWeek:"dddd [\u043a\u0443\u043d\u0438 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",lastDay:"[\u041a\u0435\u0447\u0430 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",lastWeek:"[\u0423\u0442\u0433\u0430\u043d] dddd [\u043a\u0443\u043d\u0438 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",sameElse:"L"},relativeTime:{future:"\u042f\u043a\u0438\u043d %s \u0438\u0447\u0438\u0434\u0430",past:"\u0411\u0438\u0440 \u043d\u0435\u0447\u0430 %s \u043e\u043b\u0434\u0438\u043d",s:"\u0444\u0443\u0440\u0441\u0430\u0442",ss:"%d \u0444\u0443\u0440\u0441\u0430\u0442",m:"\u0431\u0438\u0440 \u0434\u0430\u043a\u0438\u043a\u0430",mm:"%d \u0434\u0430\u043a\u0438\u043a\u0430",h:"\u0431\u0438\u0440 \u0441\u043e\u0430\u0442",hh:"%d \u0441\u043e\u0430\u0442",d:"\u0431\u0438\u0440 \u043a\u0443\u043d",dd:"%d \u043a\u0443\u043d",M:"\u0431\u0438\u0440 \u043e\u0439",MM:"%d \u043e\u0439",y:"\u0431\u0438\u0440 \u0439\u0438\u043b",yy:"%d \u0439\u0438\u043b"},week:{dow:1,doy:7}})}(n(56908))},98615:function(dt,K,n){!function(P){"use strict";P.defineLocale("vi",{months:"th\xe1ng 1_th\xe1ng 2_th\xe1ng 3_th\xe1ng 4_th\xe1ng 5_th\xe1ng 6_th\xe1ng 7_th\xe1ng 8_th\xe1ng 9_th\xe1ng 10_th\xe1ng 11_th\xe1ng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"ch\u1ee7 nh\u1eadt_th\u1ee9 hai_th\u1ee9 ba_th\u1ee9 t\u01b0_th\u1ee9 n\u0103m_th\u1ee9 s\xe1u_th\u1ee9 b\u1ea3y".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(p){return/^ch$/i.test(p)},meridiem:function(p,d,s){return p<12?s?"sa":"SA":s?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [n\u0103m] YYYY",LLL:"D MMMM [n\u0103m] YYYY HH:mm",LLLL:"dddd, D MMMM [n\u0103m] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[H\xf4m nay l\xfac] LT",nextDay:"[Ng\xe0y mai l\xfac] LT",nextWeek:"dddd [tu\u1ea7n t\u1edbi l\xfac] LT",lastDay:"[H\xf4m qua l\xfac] LT",lastWeek:"dddd [tu\u1ea7n tr\u01b0\u1edbc l\xfac] LT",sameElse:"L"},relativeTime:{future:"%s t\u1edbi",past:"%s tr\u01b0\u1edbc",s:"v\xe0i gi\xe2y",ss:"%d gi\xe2y",m:"m\u1ed9t ph\xfat",mm:"%d ph\xfat",h:"m\u1ed9t gi\u1edd",hh:"%d gi\u1edd",d:"m\u1ed9t ng\xe0y",dd:"%d ng\xe0y",M:"m\u1ed9t th\xe1ng",MM:"%d th\xe1ng",y:"m\u1ed9t n\u0103m",yy:"%d n\u0103m"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(p){return p},week:{dow:1,doy:4}})}(n(56908))},12320:function(dt,K,n){!function(P){"use strict";P.defineLocale("x-pseudo",{months:"J~\xe1\xf1\xfa\xe1~r\xfd_F~\xe9br\xfa~\xe1r\xfd_~M\xe1rc~h_\xc1p~r\xedl_~M\xe1\xfd_~J\xfa\xf1\xe9~_J\xfal~\xfd_\xc1\xfa~g\xfast~_S\xe9p~t\xe9mb~\xe9r_\xd3~ct\xf3b~\xe9r_\xd1~\xf3v\xe9m~b\xe9r_~D\xe9c\xe9~mb\xe9r".split("_"),monthsShort:"J~\xe1\xf1_~F\xe9b_~M\xe1r_~\xc1pr_~M\xe1\xfd_~J\xfa\xf1_~J\xfal_~\xc1\xfag_~S\xe9p_~\xd3ct_~\xd1\xf3v_~D\xe9c".split("_"),monthsParseExact:!0,weekdays:"S~\xfa\xf1d\xe1~\xfd_M\xf3~\xf1d\xe1\xfd~_T\xfa\xe9~sd\xe1\xfd~_W\xe9d~\xf1\xe9sd~\xe1\xfd_T~h\xfars~d\xe1\xfd_~Fr\xedd~\xe1\xfd_S~\xe1t\xfar~d\xe1\xfd".split("_"),weekdaysShort:"S~\xfa\xf1_~M\xf3\xf1_~T\xfa\xe9_~W\xe9d_~Th\xfa_~Fr\xed_~S\xe1t".split("_"),weekdaysMin:"S~\xfa_M\xf3~_T\xfa_~W\xe9_T~h_Fr~_S\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[T~\xf3d\xe1~\xfd \xe1t] LT",nextDay:"[T~\xf3m\xf3~rr\xf3~w \xe1t] LT",nextWeek:"dddd [\xe1t] LT",lastDay:"[\xdd~\xe9st~\xe9rd\xe1~\xfd \xe1t] LT",lastWeek:"[L~\xe1st] dddd [\xe1t] LT",sameElse:"L"},relativeTime:{future:"\xed~\xf1 %s",past:"%s \xe1~g\xf3",s:"\xe1 ~f\xe9w ~s\xe9c\xf3~\xf1ds",ss:"%d s~\xe9c\xf3\xf1~ds",m:"\xe1 ~m\xed\xf1~\xfat\xe9",mm:"%d m~\xed\xf1\xfa~t\xe9s",h:"\xe1~\xf1 h\xf3~\xfar",hh:"%d h~\xf3\xfars",d:"\xe1 ~d\xe1\xfd",dd:"%d d~\xe1\xfds",M:"\xe1 ~m\xf3\xf1~th",MM:"%d m~\xf3\xf1t~hs",y:"\xe1 ~\xfd\xe9\xe1r",yy:"%d \xfd~\xe9\xe1rs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(p){var d=p%10;return p+(1==~~(p%100/10)?"th":1===d?"st":2===d?"nd":3===d?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},31313:function(dt,K,n){!function(P){"use strict";P.defineLocale("yo",{months:"S\u1eb9\u0301r\u1eb9\u0301_E\u0300re\u0300le\u0300_\u1eb8r\u1eb9\u0300na\u0300_I\u0300gbe\u0301_E\u0300bibi_O\u0300ku\u0300du_Ag\u1eb9mo_O\u0300gu\u0301n_Owewe_\u1ecc\u0300wa\u0300ra\u0300_Be\u0301lu\u0301_\u1ecc\u0300p\u1eb9\u0300\u0300".split("_"),monthsShort:"S\u1eb9\u0301r_E\u0300rl_\u1eb8rn_I\u0300gb_E\u0300bi_O\u0300ku\u0300_Ag\u1eb9_O\u0300gu\u0301_Owe_\u1ecc\u0300wa\u0300_Be\u0301l_\u1ecc\u0300p\u1eb9\u0300\u0300".split("_"),weekdays:"A\u0300i\u0300ku\u0301_Aje\u0301_I\u0300s\u1eb9\u0301gun_\u1eccj\u1ecd\u0301ru\u0301_\u1eccj\u1ecd\u0301b\u1ecd_\u1eb8ti\u0300_A\u0300ba\u0301m\u1eb9\u0301ta".split("_"),weekdaysShort:"A\u0300i\u0300k_Aje\u0301_I\u0300s\u1eb9\u0301_\u1eccjr_\u1eccjb_\u1eb8ti\u0300_A\u0300ba\u0301".split("_"),weekdaysMin:"A\u0300i\u0300_Aj_I\u0300s_\u1eccr_\u1eccb_\u1eb8t_A\u0300b".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[O\u0300ni\u0300 ni] LT",nextDay:"[\u1ecc\u0300la ni] LT",nextWeek:"dddd [\u1eccs\u1eb9\u0300 to\u0301n'b\u1ecd] [ni] LT",lastDay:"[A\u0300na ni] LT",lastWeek:"dddd [\u1eccs\u1eb9\u0300 to\u0301l\u1ecd\u0301] [ni] LT",sameElse:"L"},relativeTime:{future:"ni\u0301 %s",past:"%s k\u1ecdja\u0301",s:"i\u0300s\u1eb9ju\u0301 aaya\u0301 die",ss:"aaya\u0301 %d",m:"i\u0300s\u1eb9ju\u0301 kan",mm:"i\u0300s\u1eb9ju\u0301 %d",h:"wa\u0301kati kan",hh:"wa\u0301kati %d",d:"\u1ecdj\u1ecd\u0301 kan",dd:"\u1ecdj\u1ecd\u0301 %d",M:"osu\u0300 kan",MM:"osu\u0300 %d",y:"\u1ecddu\u0301n kan",yy:"\u1ecddu\u0301n %d"},dayOfMonthOrdinalParse:/\u1ecdj\u1ecd\u0301\s\d{1,2}/,ordinal:"\u1ecdj\u1ecd\u0301 %d",week:{dow:1,doy:4}})}(n(56908))},64490:function(dt,K,n){!function(P){"use strict";P.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u5468\u65e5_\u5468\u4e00_\u5468\u4e8c_\u5468\u4e09_\u5468\u56db_\u5468\u4e94_\u5468\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5Ah\u70b9mm\u5206",LLLL:"YYYY\u5e74M\u6708D\u65e5ddddAh\u70b9mm\u5206",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(p,d){return 12===p&&(p=0),"\u51cc\u6668"===d||"\u65e9\u4e0a"===d||"\u4e0a\u5348"===d?p:"\u4e0b\u5348"===d||"\u665a\u4e0a"===d?p+12:p>=11?p:p+12},meridiem:function(p,d,s){var h=100*p+d;return h<600?"\u51cc\u6668":h<900?"\u65e9\u4e0a":h<1130?"\u4e0a\u5348":h<1230?"\u4e2d\u5348":h<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929]LT",nextDay:"[\u660e\u5929]LT",nextWeek:function(p){return p.week()!==this.week()?"[\u4e0b]dddLT":"[\u672c]dddLT"},lastDay:"[\u6628\u5929]LT",lastWeek:function(p){return this.week()!==p.week()?"[\u4e0a]dddLT":"[\u672c]dddLT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u5468)/,ordinal:function(p,d){switch(d){case"d":case"D":case"DDD":return p+"\u65e5";case"M":return p+"\u6708";case"w":case"W":return p+"\u5468";default:return p}},relativeTime:{future:"%s\u540e",past:"%s\u524d",s:"\u51e0\u79d2",ss:"%d \u79d2",m:"1 \u5206\u949f",mm:"%d \u5206\u949f",h:"1 \u5c0f\u65f6",hh:"%d \u5c0f\u65f6",d:"1 \u5929",dd:"%d \u5929",M:"1 \u4e2a\u6708",MM:"%d \u4e2a\u6708",y:"1 \u5e74",yy:"%d \u5e74"},week:{dow:1,doy:4}})}(n(56908))},55910:function(dt,K,n){!function(P){"use strict";P.defineLocale("zh-hk",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(p,d){return 12===p&&(p=0),"\u51cc\u6668"===d||"\u65e9\u4e0a"===d||"\u4e0a\u5348"===d?p:"\u4e2d\u5348"===d?p>=11?p:p+12:"\u4e0b\u5348"===d||"\u665a\u4e0a"===d?p+12:void 0},meridiem:function(p,d,s){var h=100*p+d;return h<600?"\u51cc\u6668":h<900?"\u65e9\u4e0a":h<1200?"\u4e0a\u5348":1200===h?"\u4e2d\u5348":h<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929]LT",nextDay:"[\u660e\u5929]LT",nextWeek:"[\u4e0b]ddddLT",lastDay:"[\u6628\u5929]LT",lastWeek:"[\u4e0a]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(p,d){switch(d){case"d":case"D":case"DDD":return p+"\u65e5";case"M":return p+"\u6708";case"w":case"W":return p+"\u9031";default:return p}},relativeTime:{future:"%s\u5f8c",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}})}(n(56908))},98262:function(dt,K,n){!function(P){"use strict";P.defineLocale("zh-mo",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"D/M/YYYY",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(p,d){return 12===p&&(p=0),"\u51cc\u6668"===d||"\u65e9\u4e0a"===d||"\u4e0a\u5348"===d?p:"\u4e2d\u5348"===d?p>=11?p:p+12:"\u4e0b\u5348"===d||"\u665a\u4e0a"===d?p+12:void 0},meridiem:function(p,d,s){var h=100*p+d;return h<600?"\u51cc\u6668":h<900?"\u65e9\u4e0a":h<1130?"\u4e0a\u5348":h<1230?"\u4e2d\u5348":h<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929] LT",nextDay:"[\u660e\u5929] LT",nextWeek:"[\u4e0b]dddd LT",lastDay:"[\u6628\u5929] LT",lastWeek:"[\u4e0a]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(p,d){switch(d){case"d":case"D":case"DDD":return p+"\u65e5";case"M":return p+"\u6708";case"w":case"W":return p+"\u9031";default:return p}},relativeTime:{future:"%s\u5167",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}})}(n(56908))},44223:function(dt,K,n){!function(P){"use strict";P.defineLocale("zh-tw",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(p,d){return 12===p&&(p=0),"\u51cc\u6668"===d||"\u65e9\u4e0a"===d||"\u4e0a\u5348"===d?p:"\u4e2d\u5348"===d?p>=11?p:p+12:"\u4e0b\u5348"===d||"\u665a\u4e0a"===d?p+12:void 0},meridiem:function(p,d,s){var h=100*p+d;return h<600?"\u51cc\u6668":h<900?"\u65e9\u4e0a":h<1130?"\u4e0a\u5348":h<1230?"\u4e2d\u5348":h<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929] LT",nextDay:"[\u660e\u5929] LT",nextWeek:"[\u4e0b]dddd LT",lastDay:"[\u6628\u5929] LT",lastWeek:"[\u4e0a]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(p,d){switch(d){case"d":case"D":case"DDD":return p+"\u65e5";case"M":return p+"\u6708";case"w":case"W":return p+"\u9031";default:return p}},relativeTime:{future:"%s\u5f8c",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}})}(n(56908))},56908:function(dt,K,n){(dt=n.nmd(dt)).exports=function(){"use strict";var P,Z;function t(){return P.apply(null,arguments)}function p(F){return F instanceof Array||"[object Array]"===Object.prototype.toString.call(F)}function d(F){return null!=F&&"[object Object]"===Object.prototype.toString.call(F)}function s(F,le){return Object.prototype.hasOwnProperty.call(F,le)}function h(F){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(F).length;var le;for(le in F)if(s(F,le))return!1;return!0}function f(F){return void 0===F}function T(F){return"number"==typeof F||"[object Number]"===Object.prototype.toString.call(F)}function B(F){return F instanceof Date||"[object Date]"===Object.prototype.toString.call(F)}function I(F,le){var Mt,We=[];for(Mt=0;Mt>>0;for(Yt=0;Yt0)for(We=0;We=0?We?"+":"":"-")+Math.pow(10,Math.max(0,le-Mt.length)).toString().substr(1)+Mt}var Ie=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Ee=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,ge={},_t={};function wt(F,le,We,Mt){var Yt=Mt;"string"==typeof Mt&&(Yt=function(){return this[Mt]()}),F&&(_t[F]=Yt),le&&(_t[le[0]]=function(){return Re(Yt.apply(this,arguments),le[1],le[2])}),We&&(_t[We]=function(){return this.localeData().ordinal(Yt.apply(this,arguments),F)})}function qt(F){return F.match(/\[[\s\S]/)?F.replace(/^\[|\]$/g,""):F.replace(/\\/g,"")}function Rt(F,le){return F.isValid()?(le=it(le,F.localeData()),ge[le]=ge[le]||function Lt(F){var We,Mt,le=F.match(Ie);for(We=0,Mt=le.length;We=0&&Ee.test(F);)F=F.replace(Ee,Mt),Ee.lastIndex=0,We-=1;return F}var qe={};function je(F,le){var We=F.toLowerCase();qe[We]=qe[We+"s"]=qe[le]=F}function Nt(F){return"string"==typeof F?qe[F]||qe[F.toLowerCase()]:void 0}function Ft(F){var We,Mt,le={};for(Mt in F)s(F,Mt)&&(We=Nt(Mt))&&(le[We]=F[Mt]);return le}var bt={};function St(F,le){bt[F]=le}function ut(F){return F%4==0&&F%100!=0||F%400==0}function yt(F){return F<0?Math.ceil(F)||0:Math.floor(F)}function be(F){var le=+F,We=0;return 0!==le&&isFinite(le)&&(We=yt(le)),We}function we(F,le){return function(We){return null!=We?($(this,F,We),t.updateOffset(this,le),this):_e(this,F)}}function _e(F,le){return F.isValid()?F._d["get"+(F._isUTC?"UTC":"")+le]():NaN}function $(F,le,We){F.isValid()&&!isNaN(We)&&("FullYear"===le&&ut(F.year())&&1===F.month()&&29===F.date()?(We=be(We),F._d["set"+(F._isUTC?"UTC":"")+le](We,F.month(),ja(We,F.month()))):F._d["set"+(F._isUTC?"UTC":"")+le](We))}var Je,gt=/\d/,Bt=/\d\d/,_n=/\d{3}/,wn=/\d{4}/,Tn=/[+-]?\d{6}/,On=/\d\d?/,Jn=/\d\d\d\d?/,Un=/\d\d\d\d\d\d?/,si=/\d{1,3}/,fi=/\d{1,4}/,rn=/[+-]?\d{1,6}/,sn=/\d+/,jt=/[+-]?\d+/,Ue=/Z|[+-]\d\d:?\d\d/gi,et=/Z|[+-]\d\d(?::?\d\d)?/gi,Ze=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i;function Ve(F,le,We){Je[F]=r(le)?le:function(Mt,Yt){return Mt&&We?We:le}}function pt(F,le){return s(Je,F)?Je[F](le._strict,le._locale):new RegExp(function kt(F){return en(F.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(le,We,Mt,Yt,Cn){return We||Mt||Yt||Cn}))}(F))}function en(F){return F.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}Je={};var Zn={};function zt(F,le){var We,Mt=le;for("string"==typeof F&&(F=[F]),T(le)&&(Mt=function(Cn,qn){qn[le]=be(Cn)}),We=0;We68?1900:2e3)};var Ci=we("FullYear",!0);function xa(F,le,We,Mt,Yt,Cn,qn){var Di;return F<100&&F>=0?(Di=new Date(F+400,le,We,Mt,Yt,Cn,qn),isFinite(Di.getFullYear())&&Di.setFullYear(F)):Di=new Date(F,le,We,Mt,Yt,Cn,qn),Di}function oa(F){var le,We;return F<100&&F>=0?((We=Array.prototype.slice.call(arguments))[0]=F+400,le=new Date(Date.UTC.apply(null,We)),isFinite(le.getUTCFullYear())&&le.setUTCFullYear(F)):le=new Date(Date.UTC.apply(null,arguments)),le}function Yi(F,le,We){var Mt=7+le-We;return-(7+oa(F,0,Mt).getUTCDay()-le)%7+Mt-1}function sa(F,le,We,Mt,Yt){var ca,Ha,Di=1+7*(le-1)+(7+We-Mt)%7+Yi(F,Mt,Yt);return Di<=0?Ha=ri(ca=F-1)+Di:Di>ri(F)?(ca=F+1,Ha=Di-ri(F)):(ca=F,Ha=Di),{year:ca,dayOfYear:Ha}}function Fi(F,le,We){var Cn,qn,Mt=Yi(F.year(),le,We),Yt=Math.floor((F.dayOfYear()-Mt-1)/7)+1;return Yt<1?Cn=Yt+va(qn=F.year()-1,le,We):Yt>va(F.year(),le,We)?(Cn=Yt-va(F.year(),le,We),qn=F.year()+1):(qn=F.year(),Cn=Yt),{week:Cn,year:qn}}function va(F,le,We){var Mt=Yi(F,le,We),Yt=Yi(F+1,le,We);return(ri(F)-Mt+Yt)/7}wt("w",["ww",2],"wo","week"),wt("W",["WW",2],"Wo","isoWeek"),je("week","w"),je("isoWeek","W"),St("week",5),St("isoWeek",5),Ve("w",On),Ve("ww",On,Bt),Ve("W",On),Ve("WW",On,Bt),un(["w","ww","W","WW"],function(F,le,We,Mt){le[Mt.substr(0,1)]=be(F)});function Vi(F,le){return F.slice(le,7).concat(F.slice(0,le))}wt("d",0,"do","day"),wt("dd",0,0,function(F){return this.localeData().weekdaysMin(this,F)}),wt("ddd",0,0,function(F){return this.localeData().weekdaysShort(this,F)}),wt("dddd",0,0,function(F){return this.localeData().weekdays(this,F)}),wt("e",0,0,"weekday"),wt("E",0,0,"isoWeekday"),je("day","d"),je("weekday","e"),je("isoWeekday","E"),St("day",11),St("weekday",11),St("isoWeekday",11),Ve("d",On),Ve("e",On),Ve("E",On),Ve("dd",function(F,le){return le.weekdaysMinRegex(F)}),Ve("ddd",function(F,le){return le.weekdaysShortRegex(F)}),Ve("dddd",function(F,le){return le.weekdaysRegex(F)}),un(["dd","ddd","dddd"],function(F,le,We,Mt){var Yt=We._locale.weekdaysParse(F,Mt,We._strict);null!=Yt?le.d=Yt:J(We).invalidWeekday=F}),un(["d","e","E"],function(F,le,We,Mt){le[Mt]=be(F)});var Zi="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Ai="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Ja="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),ao=Ze,za=Ze,fr=Ze;function Ga(F,le,We){var Mt,Yt,Cn,qn=F.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],Mt=0;Mt<7;++Mt)Cn=j([2e3,1]).day(Mt),this._minWeekdaysParse[Mt]=this.weekdaysMin(Cn,"").toLocaleLowerCase(),this._shortWeekdaysParse[Mt]=this.weekdaysShort(Cn,"").toLocaleLowerCase(),this._weekdaysParse[Mt]=this.weekdays(Cn,"").toLocaleLowerCase();return We?"dddd"===le?-1!==(Yt=ea.call(this._weekdaysParse,qn))?Yt:null:"ddd"===le?-1!==(Yt=ea.call(this._shortWeekdaysParse,qn))?Yt:null:-1!==(Yt=ea.call(this._minWeekdaysParse,qn))?Yt:null:"dddd"===le?-1!==(Yt=ea.call(this._weekdaysParse,qn))||-1!==(Yt=ea.call(this._shortWeekdaysParse,qn))||-1!==(Yt=ea.call(this._minWeekdaysParse,qn))?Yt:null:"ddd"===le?-1!==(Yt=ea.call(this._shortWeekdaysParse,qn))||-1!==(Yt=ea.call(this._weekdaysParse,qn))||-1!==(Yt=ea.call(this._minWeekdaysParse,qn))?Yt:null:-1!==(Yt=ea.call(this._minWeekdaysParse,qn))||-1!==(Yt=ea.call(this._weekdaysParse,qn))||-1!==(Yt=ea.call(this._shortWeekdaysParse,qn))?Yt:null}function Ur(){function F(co,Vr){return Vr.length-co.length}var Cn,qn,Di,ca,Ha,le=[],We=[],Mt=[],Yt=[];for(Cn=0;Cn<7;Cn++)qn=j([2e3,1]).day(Cn),Di=en(this.weekdaysMin(qn,"")),ca=en(this.weekdaysShort(qn,"")),Ha=en(this.weekdays(qn,"")),le.push(Di),We.push(ca),Mt.push(Ha),Yt.push(Di),Yt.push(ca),Yt.push(Ha);le.sort(F),We.sort(F),Mt.sort(F),Yt.sort(F),this._weekdaysRegex=new RegExp("^("+Yt.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+Mt.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+We.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+le.join("|")+")","i")}function yr(){return this.hours()%12||12}function mr(F,le){wt(F,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),le)})}function ro(F,le){return le._meridiemParse}wt("H",["HH",2],0,"hour"),wt("h",["hh",2],0,yr),wt("k",["kk",2],0,function mo(){return this.hours()||24}),wt("hmm",0,0,function(){return""+yr.apply(this)+Re(this.minutes(),2)}),wt("hmmss",0,0,function(){return""+yr.apply(this)+Re(this.minutes(),2)+Re(this.seconds(),2)}),wt("Hmm",0,0,function(){return""+this.hours()+Re(this.minutes(),2)}),wt("Hmmss",0,0,function(){return""+this.hours()+Re(this.minutes(),2)+Re(this.seconds(),2)}),mr("a",!0),mr("A",!1),je("hour","h"),St("hour",13),Ve("a",ro),Ve("A",ro),Ve("H",On),Ve("h",On),Ve("k",On),Ve("HH",On,Bt),Ve("hh",On,Bt),Ve("kk",On,Bt),Ve("hmm",Jn),Ve("hmmss",Un),Ve("Hmm",Jn),Ve("Hmmss",Un),zt(["H","HH"],3),zt(["k","kk"],function(F,le,We){var Mt=be(F);le[3]=24===Mt?0:Mt}),zt(["a","A"],function(F,le,We){We._isPm=We._locale.isPM(F),We._meridiem=F}),zt(["h","hh"],function(F,le,We){le[3]=be(F),J(We).bigHour=!0}),zt("hmm",function(F,le,We){var Mt=F.length-2;le[3]=be(F.substr(0,Mt)),le[4]=be(F.substr(Mt)),J(We).bigHour=!0}),zt("hmmss",function(F,le,We){var Mt=F.length-4,Yt=F.length-2;le[3]=be(F.substr(0,Mt)),le[4]=be(F.substr(Mt,2)),le[5]=be(F.substr(Yt)),J(We).bigHour=!0}),zt("Hmm",function(F,le,We){var Mt=F.length-2;le[3]=be(F.substr(0,Mt)),le[4]=be(F.substr(Mt))}),zt("Hmmss",function(F,le,We){var Mt=F.length-4,Yt=F.length-2;le[3]=be(F.substr(0,Mt)),le[4]=be(F.substr(Mt,2)),le[5]=be(F.substr(Yt))});var _o=we("Hours",!0);var Ra,wr={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:tr,monthsShort:da,week:{dow:0,doy:6},weekdays:Zi,weekdaysMin:Ja,weekdaysShort:Ai,meridiemParse:/[ap]\.?m?\.?/i},ia={},Aa={};function Ma(F,le){var We,Mt=Math.min(F.length,le.length);for(We=0;We0;){if(Yt=br(Cn.slice(0,We).join("-")))return Yt;if(Mt&&Mt.length>=We&&Ma(Cn,Mt)>=We-1)break;We--}le++}return Ra}(F)}function at(F){var le,We=F._a;return We&&-2===J(F).overflow&&(le=We[1]<0||We[1]>11?1:We[2]<1||We[2]>ja(We[0],We[1])?2:We[3]<0||We[3]>24||24===We[3]&&(0!==We[4]||0!==We[5]||0!==We[6])?3:We[4]<0||We[4]>59?4:We[5]<0||We[5]>59?5:We[6]<0||We[6]>999?6:-1,J(F)._overflowDayOfYear&&(le<0||le>2)&&(le=2),J(F)._overflowWeeks&&-1===le&&(le=7),J(F)._overflowWeekday&&-1===le&&(le=8),J(F).overflow=le),F}var ee=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,me=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Ne=/Z|[+-]\d\d(?::?\d\d)?/,Ye=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],ht=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],At=/^\/?Date\((-?\d+)/i,on=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Pn={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Yn(F){var le,We,Cn,qn,Di,ca,Mt=F._i,Yt=ee.exec(Mt)||me.exec(Mt);if(Yt){for(J(F).iso=!0,le=0,We=Ye.length;le7)&&(ca=!0)):(Cn=F._locale._week.dow,qn=F._locale._week.doy,Ha=Fi(la(),Cn,qn),We=ye(le.gg,F._a[0],Ha.year),Mt=ye(le.w,Ha.week),null!=le.d?((Yt=le.d)<0||Yt>6)&&(ca=!0):null!=le.e?(Yt=le.e+Cn,(le.e<0||le.e>6)&&(ca=!0)):Yt=Cn),Mt<1||Mt>va(We,Cn,qn)?J(F)._overflowWeeks=!0:null!=ca?J(F)._overflowWeekday=!0:(Di=sa(We,Mt,Yt,Cn,qn),F._a[0]=Di.year,F._dayOfYear=Di.dayOfYear)}(F),null!=F._dayOfYear&&(qn=ye(F._a[0],Yt[0]),(F._dayOfYear>ri(qn)||0===F._dayOfYear)&&(J(F)._overflowDayOfYear=!0),We=oa(qn,0,F._dayOfYear),F._a[1]=We.getUTCMonth(),F._a[2]=We.getUTCDate()),le=0;le<3&&null==F._a[le];++le)F._a[le]=Mt[le]=Yt[le];for(;le<7;le++)F._a[le]=Mt[le]=null==F._a[le]?2===le?1:0:F._a[le];24===F._a[3]&&0===F._a[4]&&0===F._a[5]&&0===F._a[6]&&(F._nextDay=!0,F._a[3]=0),F._d=(F._useUTC?oa:xa).apply(null,Mt),Cn=F._useUTC?F._d.getUTCDay():F._d.getDay(),null!=F._tzm&&F._d.setUTCMinutes(F._d.getUTCMinutes()-F._tzm),F._nextDay&&(F._a[3]=24),F._w&&void 0!==F._w.d&&F._w.d!==Cn&&(J(F).weekdayMismatch=!0)}}function cn(F){if(F._f!==t.ISO_8601)if(F._f!==t.RFC_2822){F._a=[],J(F).empty=!0;var We,Mt,Yt,Cn,qn,Ha,le=""+F._i,Di=le.length,ca=0;for(Yt=it(F._f,F._locale).match(Ie)||[],We=0;We0&&J(F).unusedInput.push(qn),le=le.slice(le.indexOf(Mt)+Mt.length),ca+=Mt.length),_t[Cn]?(Mt?J(F).empty=!1:J(F).unusedTokens.push(Cn),tn(Cn,Mt,F)):F._strict&&!Mt&&J(F).unusedTokens.push(Cn);J(F).charsLeftOver=Di-ca,le.length>0&&J(F).unusedInput.push(le),F._a[3]<=12&&!0===J(F).bigHour&&F._a[3]>0&&(J(F).bigHour=void 0),J(F).parsedDateParts=F._a.slice(0),J(F).meridiem=F._meridiem,F._a[3]=function kn(F,le,We){var Mt;return null==We?le:null!=F.meridiemHour?F.meridiemHour(le,We):(null!=F.isPM&&((Mt=F.isPM(We))&&le<12&&(le+=12),!Mt&&12===le&&(le=0)),le)}(F._locale,F._a[3],F._meridiem),null!==(Ha=J(F).era)&&(F._a[0]=F._locale.erasConvertYear(Ha,F._a[0])),nt(F),at(F)}else ae(F);else Yn(F)}function ra(F){var le=F._i,We=F._f;return F._locale=F._locale||oe(F._l),null===le||void 0===We&&""===le?N({nullInput:!0}):("string"==typeof le&&(F._i=le=F._locale.preparse(le)),ie(le)?new ce(at(le)):(B(le)?F._d=le:p(We)?function ni(F){var le,We,Mt,Yt,Cn,qn,Di=!1;if(0===F._f.length)return J(F).invalidFormat=!0,void(F._d=new Date(NaN));for(Yt=0;Ytthis?this:F:N()});function go(F,le){var We,Mt;if(1===le.length&&p(le[0])&&(le=le[0]),!le.length)return la();for(We=le[0],Mt=1;Mt=0?new Date(F+400,le,We)-Qc:new Date(F,le,We).valueOf()}function ke(F,le,We){return F<100&&F>=0?Date.UTC(F+400,le,We)-Qc:Date.UTC(F,le,We)}function ks(F,le){return le.erasAbbrRegex(F)}function Vl(){var Yt,Cn,F=[],le=[],We=[],Mt=[],qn=this.eras();for(Yt=0,Cn=qn.length;Yt(Cn=va(F,Mt,Yt))&&(le=Cn),jl.call(this,F,le,We,Mt,Yt))}function jl(F,le,We,Mt,Yt){var Cn=sa(F,le,We,Mt,Yt),qn=oa(Cn.year,0,Cn.dayOfYear);return this.year(qn.getUTCFullYear()),this.month(qn.getUTCMonth()),this.date(qn.getUTCDate()),this}wt("N",0,0,"eraAbbr"),wt("NN",0,0,"eraAbbr"),wt("NNN",0,0,"eraAbbr"),wt("NNNN",0,0,"eraName"),wt("NNNNN",0,0,"eraNarrow"),wt("y",["y",1],"yo","eraYear"),wt("y",["yy",2],0,"eraYear"),wt("y",["yyy",3],0,"eraYear"),wt("y",["yyyy",4],0,"eraYear"),Ve("N",ks),Ve("NN",ks),Ve("NNN",ks),Ve("NNNN",function Zr(F,le){return le.erasNameRegex(F)}),Ve("NNNNN",function ha(F,le){return le.erasNarrowRegex(F)}),zt(["N","NN","NNN","NNNN","NNNNN"],function(F,le,We,Mt){var Yt=We._locale.erasParse(F,Mt,We._strict);Yt?J(We).era=Yt:J(We).invalidEra=F}),Ve("y",sn),Ve("yy",sn),Ve("yyy",sn),Ve("yyyy",sn),Ve("yo",function id(F,le){return le._eraYearOrdinalRegex||sn}),zt(["y","yy","yyy","yyyy"],0),zt(["yo"],function(F,le,We,Mt){var Yt;We._locale._eraYearOrdinalRegex&&(Yt=F.match(We._locale._eraYearOrdinalRegex)),le[0]=We._locale.eraYearOrdinalParse?We._locale.eraYearOrdinalParse(F,Yt):parseInt(F,10)}),wt(0,["gg",2],0,function(){return this.weekYear()%100}),wt(0,["GG",2],0,function(){return this.isoWeekYear()%100}),sl("gggg","weekYear"),sl("ggggg","weekYear"),sl("GGGG","isoWeekYear"),sl("GGGGG","isoWeekYear"),je("weekYear","gg"),je("isoWeekYear","GG"),St("weekYear",1),St("isoWeekYear",1),Ve("G",jt),Ve("g",jt),Ve("GG",On,Bt),Ve("gg",On,Bt),Ve("GGGG",fi,wn),Ve("gggg",fi,wn),Ve("GGGGG",rn,Tn),Ve("ggggg",rn,Tn),un(["gggg","ggggg","GGGG","GGGGG"],function(F,le,We,Mt){le[Mt.substr(0,2)]=be(F)}),un(["gg","GG"],function(F,le,We,Mt){le[Mt]=t.parseTwoDigitYear(F)}),wt("Q",0,"Qo","quarter"),je("quarter","Q"),St("quarter",7),Ve("Q",gt),zt("Q",function(F,le){le[1]=3*(be(F)-1)}),wt("D",["DD",2],"Do","date"),je("date","D"),St("date",9),Ve("D",On),Ve("DD",On,Bt),Ve("Do",function(F,le){return F?le._dayOfMonthOrdinalParse||le._ordinalParse:le._dayOfMonthOrdinalParseLenient}),zt(["D","DD"],2),zt("Do",function(F,le){le[2]=be(F.match(On)[0])});var Sl=we("Date",!0);wt("DDD",["DDDD",3],"DDDo","dayOfYear"),je("dayOfYear","DDD"),St("dayOfYear",4),Ve("DDD",si),Ve("DDDD",_n),zt(["DDD","DDDD"],function(F,le,We){We._dayOfYear=be(F)}),wt("m",["mm",2],0,"minute"),je("minute","m"),St("minute",14),Ve("m",On),Ve("mm",On,Bt),zt(["m","mm"],4);var Wc=we("Minutes",!1);wt("s",["ss",2],0,"second"),je("second","s"),St("second",15),Ve("s",On),Ve("ss",On,Bt),zt(["s","ss"],5);var vs,Au,lo=we("Seconds",!1);for(wt("S",0,0,function(){return~~(this.millisecond()/100)}),wt(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),wt(0,["SSS",3],0,"millisecond"),wt(0,["SSSS",4],0,function(){return 10*this.millisecond()}),wt(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),wt(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),wt(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),wt(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),wt(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),je("millisecond","ms"),St("millisecond",16),Ve("S",si,gt),Ve("SS",si,Bt),Ve("SSS",si,_n),vs="SSSS";vs.length<=9;vs+="S")Ve(vs,sn);function lr(F,le){le[6]=be(1e3*("0."+F))}for(vs="S";vs.length<=9;vs+="S")zt(vs,lr);Au=we("Milliseconds",!1),wt("z",0,0,"zoneAbbr"),wt("zz",0,0,"zoneName");var ci=ce.prototype;function xo(F){return F}ci.add=nl,ci.calendar=function Yl(F,le){1===arguments.length&&(il(arguments[0])?(F=arguments[0],le=void 0):Ds(arguments[0])&&(le=arguments[0],F=void 0));var We=F||la(),Mt=Pi(We,this).startOf("day"),Yt=t.calendarFormat(this,Mt)||"sameElse",Cn=le&&(r(le[Yt])?le[Yt].call(this,We):le[Yt]);return this.format(Cn||this.localeData().calendar(Yt,this,la(We)))},ci.clone=function Yr(){return new ce(this)},ci.diff=function yo(F,le,We){var Mt,Yt,Cn;if(!this.isValid())return NaN;if(!(Mt=Pi(F,this)).isValid())return NaN;switch(Yt=6e4*(Mt.utcOffset()-this.utcOffset()),le=Nt(le)){case"year":Cn=Fo(this,Mt)/12;break;case"month":Cn=Fo(this,Mt);break;case"quarter":Cn=Fo(this,Mt)/3;break;case"second":Cn=(this-Mt)/1e3;break;case"minute":Cn=(this-Mt)/6e4;break;case"hour":Cn=(this-Mt)/36e5;break;case"day":Cn=(this-Mt-Yt)/864e5;break;case"week":Cn=(this-Mt-Yt)/6048e5;break;default:Cn=this-Mt}return We?Cn:yt(Cn)},ci.endOf=function Me(F){var le,We;if(void 0===(F=Nt(F))||"millisecond"===F||!this.isValid())return this;switch(We=this._isUTC?ke:he,F){case"year":le=We(this.year()+1,0,1)-1;break;case"quarter":le=We(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":le=We(this.year(),this.month()+1,1)-1;break;case"week":le=We(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":le=We(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":le=We(this.year(),this.month(),this.date()+1)-1;break;case"hour":le=this._d.valueOf(),le+=ol-ql(le+(this._isUTC?0:this.utcOffset()*rl),ol)-1;break;case"minute":le=this._d.valueOf(),le+=rl-ql(le,rl)-1;break;case"second":le=this._d.valueOf(),le+=1e3-ql(le,1e3)-1}return this._d.setTime(le),t.updateOffset(this,!0),this},ci.format=function Es(F){F||(F=this.isUtc()?t.defaultFormatUtc:t.defaultFormat);var le=Rt(this,F);return this.localeData().postformat(le)},ci.from=function sr(F,le){return this.isValid()&&(ie(F)&&F.isValid()||la(F).isValid())?zi({to:this,from:F}).locale(this.locale()).humanize(!le):this.localeData().invalidDate()},ci.fromNow=function al(F){return this.from(la(),F)},ci.to=function bo(F,le){return this.isValid()&&(ie(F)&&F.isValid()||la(F).isValid())?zi({from:this,to:F}).locale(this.locale()).humanize(!le):this.localeData().invalidDate()},ci.toNow=function Zs(F){return this.to(la(),F)},ci.get=function Ae(F){return r(this[F=Nt(F)])?this[F]():this},ci.invalidAt=function Ji(){return J(this).overflow},ci.isAfter=function Ko(F,le){var We=ie(F)?F:la(F);return!(!this.isValid()||!We.isValid())&&("millisecond"===(le=Nt(le)||"millisecond")?this.valueOf()>We.valueOf():We.valueOf()9999?Rt(We,le?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):r(Date.prototype.toISOString)?le?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",Rt(We,"Z")):Rt(We,le?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},ci.inspect=function $o(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var We,Mt,F="moment",le="";return this.isLocal()||(F=0===this.utcOffset()?"moment.utc":"moment.parseZone",le="Z"),We="["+F+'("]',Mt=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",this.format(We+Mt+"-MM-DD[T]HH:mm:ss.SSS"+le+'[")]')},"undefined"!=typeof Symbol&&null!=Symbol.for&&(ci[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),ci.toJSON=function hn(){return this.isValid()?this.toISOString():null},ci.toString=function Ml(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},ci.unix=function xt(){return Math.floor(this.valueOf()/1e3)},ci.valueOf=function Fe(){return this._d.valueOf()-6e4*(this._offset||0)},ci.creationData=function Ca(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},ci.eraName=function qr(){var F,le,We,Mt=this.localeData().eras();for(F=0,le=Mt.length;Fthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},ci.isLocal=function Sn(){return!!this.isValid()&&!this._isUTC},ci.isUtcOffset=function Rn(){return!!this.isValid()&&this._isUTC},ci.isUtc=Fn,ci.isUTC=Fn,ci.zoneAbbr=function ad(){return this._isUTC?"UTC":""},ci.zoneName=function hp(){return this._isUTC?"Coordinated Universal Time":""},ci.dates=V("dates accessor is deprecated. Use date instead.",Sl),ci.months=V("months accessor is deprecated. Use month instead",vn),ci.years=V("years accessor is deprecated. Use year instead",Ci),ci.zone=V("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function vo(F,le){return null!=F?("string"!=typeof F&&(F=-F),this.utcOffset(F,le),this):-this.utcOffset()}),ci.isDSTShifted=V("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function Ps(){if(!f(this._isDSTShifted))return this._isDSTShifted;var le,F={};return q(F,this),(F=ra(F))._a?(le=F._isUTC?j(F._a):la(F._a),this._isDSTShifted=this.isValid()&&function Qr(F,le,We){var qn,Mt=Math.min(F.length,le.length),Yt=Math.abs(F.length-le.length),Cn=0;for(qn=0;qn0):this._isDSTShifted=!1,this._isDSTShifted});var Ia=se.prototype;function ll(F,le,We,Mt){var Yt=oe(),Cn=j().set(Mt,le);return Yt[We](Cn,F)}function rd(F,le,We){if(T(F)&&(le=F,F=void 0),F=F||"",null!=le)return ll(F,le,We,"month");var Mt,Yt=[];for(Mt=0;Mt<12;Mt++)Yt[Mt]=ll(F,Mt,We,"month");return Yt}function _r(F,le,We,Mt){"boolean"==typeof F?(T(le)&&(We=le,le=void 0),le=le||""):(We=le=F,F=!1,T(le)&&(We=le,le=void 0),le=le||"");var qn,Yt=oe(),Cn=F?Yt._week.dow:0,Di=[];if(null!=We)return ll(le,(We+Cn)%7,Mt,"day");for(qn=0;qn<7;qn++)Di[qn]=ll(le,(qn+Cn)%7,Mt,"day");return Di}Ia.calendar=function ve(F,le,We){var Mt=this._calendar[F]||this._calendar.sameElse;return r(Mt)?Mt.call(le,We):Mt},Ia.longDateFormat=function ot(F){var le=this._longDateFormat[F],We=this._longDateFormat[F.toUpperCase()];return le||!We?le:(this._longDateFormat[F]=We.match(Ie).map(function(Mt){return"MMMM"===Mt||"MM"===Mt||"DD"===Mt||"dddd"===Mt?Mt.slice(1):Mt}).join(""),this._longDateFormat[F])},Ia.invalidDate=function xe(){return this._invalidDate},Ia.ordinal=function ct(F){return this._ordinal.replace("%d",F)},Ia.preparse=xo,Ia.postformat=xo,Ia.relativeTime=function Te(F,le,We,Mt){var Yt=this._relativeTime[We];return r(Yt)?Yt(F,le,We,Mt):Yt.replace(/%d/i,F)},Ia.pastFuture=function vt(F,le){var We=this._relativeTime[F>0?"future":"past"];return r(We)?We(le):We.replace(/%s/i,le)},Ia.set=function z(F){var le,We;for(We in F)s(F,We)&&(r(le=F[We])?this[We]=le:this["_"+We]=le);this._config=F,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},Ia.eras=function Ya(F,le){var We,Mt,Yt,Cn=this._eras||oe("en")._eras;for(We=0,Mt=Cn.length;We=0)return Cn[Mt]},Ia.erasConvertYear=function Mr(F,le){var We=F.since<=F.until?1:-1;return void 0===le?t(F.since).year():t(F.since).year()+(le-F.offset)*We},Ia.erasAbbrRegex=function Vt(F){return s(this,"_erasAbbrRegex")||Vl.call(this),F?this._erasAbbrRegex:this._erasRegex},Ia.erasNameRegex=function Va(F){return s(this,"_erasNameRegex")||Vl.call(this),F?this._erasNameRegex:this._erasRegex},Ia.erasNarrowRegex=function Mo(F){return s(this,"_erasNarrowRegex")||Vl.call(this),F?this._erasNarrowRegex:this._erasRegex},Ia.months=function yn(F,le){return F?p(this._months)?this._months[F.month()]:this._months[(this._months.isFormat||Na).test(le)?"format":"standalone"][F.month()]:p(this._months)?this._months:this._months.standalone},Ia.monthsShort=function Ct(F,le){return F?p(this._monthsShort)?this._monthsShort[F.month()]:this._monthsShort[Na.test(le)?"format":"standalone"][F.month()]:p(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},Ia.monthsParse=function It(F,le,We){var Mt,Yt,Cn;if(this._monthsParseExact)return Pe.call(this,F,le,We);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),Mt=0;Mt<12;Mt++){if(Yt=j([2e3,Mt]),We&&!this._longMonthsParse[Mt]&&(this._longMonthsParse[Mt]=new RegExp("^"+this.months(Yt,"").replace(".","")+"$","i"),this._shortMonthsParse[Mt]=new RegExp("^"+this.monthsShort(Yt,"").replace(".","")+"$","i")),!We&&!this._monthsParse[Mt]&&(Cn="^"+this.months(Yt,"")+"|^"+this.monthsShort(Yt,""),this._monthsParse[Mt]=new RegExp(Cn.replace(".",""),"i")),We&&"MMMM"===le&&this._longMonthsParse[Mt].test(F))return Mt;if(We&&"MMM"===le&&this._shortMonthsParse[Mt].test(F))return Mt;if(!We&&this._monthsParse[Mt].test(F))return Mt}},Ia.monthsRegex=function ki(F){return this._monthsParseExact?(s(this,"_monthsRegex")||Ii.call(this),F?this._monthsStrictRegex:this._monthsRegex):(s(this,"_monthsRegex")||(this._monthsRegex=fn),this._monthsStrictRegex&&F?this._monthsStrictRegex:this._monthsRegex)},Ia.monthsShortRegex=function ui(F){return this._monthsParseExact?(s(this,"_monthsRegex")||Ii.call(this),F?this._monthsShortStrictRegex:this._monthsShortRegex):(s(this,"_monthsShortRegex")||(this._monthsShortRegex=ta),this._monthsShortStrictRegex&&F?this._monthsShortStrictRegex:this._monthsShortRegex)},Ia.week=function Za(F){return Fi(F,this._week.dow,this._week.doy).week},Ia.firstDayOfYear=function Xt(){return this._week.doy},Ia.firstDayOfWeek=function Ot(){return this._week.dow},Ia.weekdays=function Or(F,le){var We=p(this._weekdays)?this._weekdays:this._weekdays[F&&!0!==F&&this._weekdays.isFormat.test(le)?"format":"standalone"];return!0===F?Vi(We,this._week.dow):F?We[F.day()]:We},Ia.weekdaysMin=function Dr(F){return!0===F?Vi(this._weekdaysMin,this._week.dow):F?this._weekdaysMin[F.day()]:this._weekdaysMin},Ia.weekdaysShort=function Pr(F){return!0===F?Vi(this._weekdaysShort,this._week.dow):F?this._weekdaysShort[F.day()]:this._weekdaysShort},Ia.weekdaysParse=function Rr(F,le,We){var Mt,Yt,Cn;if(this._weekdaysParseExact)return Ga.call(this,F,le,We);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),Mt=0;Mt<7;Mt++){if(Yt=j([2e3,1]).day(Mt),We&&!this._fullWeekdaysParse[Mt]&&(this._fullWeekdaysParse[Mt]=new RegExp("^"+this.weekdays(Yt,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[Mt]=new RegExp("^"+this.weekdaysShort(Yt,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[Mt]=new RegExp("^"+this.weekdaysMin(Yt,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[Mt]||(Cn="^"+this.weekdays(Yt,"")+"|^"+this.weekdaysShort(Yt,"")+"|^"+this.weekdaysMin(Yt,""),this._weekdaysParse[Mt]=new RegExp(Cn.replace(".",""),"i")),We&&"dddd"===le&&this._fullWeekdaysParse[Mt].test(F))return Mt;if(We&&"ddd"===le&&this._shortWeekdaysParse[Mt].test(F))return Mt;if(We&&"dd"===le&&this._minWeekdaysParse[Mt].test(F))return Mt;if(!We&&this._weekdaysParse[Mt].test(F))return Mt}},Ia.weekdaysRegex=function Wo(F){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Ur.call(this),F?this._weekdaysStrictRegex:this._weekdaysRegex):(s(this,"_weekdaysRegex")||(this._weekdaysRegex=ao),this._weekdaysStrictRegex&&F?this._weekdaysStrictRegex:this._weekdaysRegex)},Ia.weekdaysShortRegex=function ya(F){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Ur.call(this),F?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(s(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=za),this._weekdaysShortStrictRegex&&F?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},Ia.weekdaysMinRegex=function pa(F){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Ur.call(this),F?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(s(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=fr),this._weekdaysMinStrictRegex&&F?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},Ia.isPM=function zo(F){return"p"===(F+"").toLowerCase().charAt(0)},Ia.meridiem=function Ta(F,le,We){return F>11?We?"pm":"PM":We?"am":"AM"},Er("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(le){var We=le%10;return le+(1===be(le%100/10)?"th":1===We?"st":2===We?"nd":3===We?"rd":"th")}}),t.lang=V("moment.lang is deprecated. Use moment.locale instead.",Er),t.langData=V("moment.langData is deprecated. Use moment.localeData instead.",oe);var xr=Math.abs;function cl(F,le,We,Mt){var Yt=zi(le,We);return F._milliseconds+=Mt*Yt._milliseconds,F._days+=Mt*Yt._days,F._months+=Mt*Yt._months,F._bubble()}function Pu(F){return F<0?Math.floor(F):Math.ceil(F)}function Gc(F){return 4800*F/146097}function ul(F){return 146097*F/4800}function Uo(F){return function(){return this.as(F)}}var Tl=Uo("ms"),Cc=Uo("s"),ys=Uo("m"),Du=Uo("h"),ld=Uo("d"),Mc=Uo("w"),cd=Uo("M"),xc=Uo("Q"),kr=Uo("y");function zr(F){return function(){return this.isValid()?this._data[F]:NaN}}var Al=zr("milliseconds"),Ns=zr("seconds"),es=zr("minutes"),wu=zr("hours"),Gr=zr("days"),Kc=zr("months"),Ou=zr("years");var Ao=Math.round,Rs={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function dd(F,le,We,Mt,Yt){return Yt.relativeTime(le||1,!!We,F,Mt)}var ts=Math.abs;function Pl(F){return(F>0)-(F<0)||+F}function Tc(){if(!this.isValid())return this.localeData().invalidDate();var Mt,Yt,Cn,qn,ca,Ha,co,Vr,F=ts(this._milliseconds)/1e3,le=ts(this._days),We=ts(this._months),Di=this.asSeconds();return Di?(Mt=yt(F/60),Yt=yt(Mt/60),F%=60,Mt%=60,Cn=yt(We/12),We%=12,qn=F?F.toFixed(3).replace(/\.?0+$/,""):"",ca=Di<0?"-":"",Ha=Pl(this._months)!==Pl(Di)?"-":"",co=Pl(this._days)!==Pl(Di)?"-":"",Vr=Pl(this._milliseconds)!==Pl(Di)?"-":"",ca+"P"+(Cn?Ha+Cn+"Y":"")+(We?Ha+We+"M":"")+(le?co+le+"D":"")+(Yt||Mt||F?"T":"")+(Yt?Vr+Yt+"H":"")+(Mt?Vr+Mt+"M":"")+(F?Vr+qn+"S":"")):"P0D"}var _a=ps.prototype;return _a.isValid=function Io(){return this._isValid},_a.abs=function Wl(){var F=this._data;return this._milliseconds=xr(this._milliseconds),this._days=xr(this._days),this._months=xr(this._months),F.milliseconds=xr(F.milliseconds),F.seconds=xr(F.seconds),F.minutes=xr(F.minutes),F.hours=xr(F.hours),F.months=xr(F.months),F.years=xr(F.years),this},_a.add=function lc(F,le){return cl(this,F,le,1)},_a.subtract=function zc(F,le){return cl(this,F,le,-1)},_a.as=function So(F){if(!this.isValid())return NaN;var le,We,Mt=this._milliseconds;if("month"===(F=Nt(F))||"quarter"===F||"year"===F)switch(le=this._days+Mt/864e5,We=this._months+Gc(le),F){case"month":return We;case"quarter":return We/3;case"year":return We/12}else switch(le=this._days+Math.round(ul(this._months)),F){case"week":return le/7+Mt/6048e5;case"day":return le+Mt/864e5;case"hour":return 24*le+Mt/36e5;case"minute":return 1440*le+Mt/6e4;case"second":return 86400*le+Mt/1e3;case"millisecond":return Math.floor(864e5*le)+Mt;default:throw new Error("Unknown unit "+F)}},_a.asMilliseconds=Tl,_a.asSeconds=Cc,_a.asMinutes=ys,_a.asHours=Du,_a.asDays=ld,_a.asWeeks=Mc,_a.asMonths=cd,_a.asQuarters=xc,_a.asYears=kr,_a.valueOf=function To(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*be(this._months/12):NaN},_a._bubble=function Is(){var Yt,Cn,qn,Di,ca,F=this._milliseconds,le=this._days,We=this._months,Mt=this._data;return F>=0&&le>=0&&We>=0||F<=0&&le<=0&&We<=0||(F+=864e5*Pu(ul(We)+le),le=0,We=0),Mt.milliseconds=F%1e3,Yt=yt(F/1e3),Mt.seconds=Yt%60,Cn=yt(Yt/60),Mt.minutes=Cn%60,qn=yt(Cn/60),Mt.hours=qn%24,le+=yt(qn/24),We+=ca=yt(Gc(le)),le-=Pu(ul(ca)),Di=yt(We/12),We%=12,Mt.days=le,Mt.months=We,Mt.years=Di,this},_a.clone=function Ls(){return zi(this)},_a.get=function Fs(F){return F=Nt(F),this.isValid()?this[F+"s"]():NaN},_a.milliseconds=Al,_a.seconds=Ns,_a.minutes=es,_a.hours=wu,_a.days=Gr,_a.weeks=function ud(){return yt(this.days()/7)},_a.months=Kc,_a.years=Ou,_a.humanize=function $c(F,le){if(!this.isValid())return this.localeData().invalidDate();var Yt,Cn,We=!1,Mt=Rs;return"object"==typeof F&&(le=F,F=!1),"boolean"==typeof F&&(We=F),"object"==typeof le&&(Mt=Object.assign({},Rs,le),null!=le.s&&null==le.ss&&(Mt.ss=le.s-1)),Cn=function ar(F,le,We,Mt){var Yt=zi(F).abs(),Cn=Ao(Yt.as("s")),qn=Ao(Yt.as("m")),Di=Ao(Yt.as("h")),ca=Ao(Yt.as("d")),Ha=Ao(Yt.as("M")),co=Ao(Yt.as("w")),Vr=Ao(Yt.as("y")),Bo=Cn<=We.ss&&["s",Cn]||Cn0,Bo[4]=Mt,dd.apply(null,Bo)}(this,!We,Mt,Yt=this.localeData()),We&&(Cn=Yt.pastFuture(+this,Cn)),Yt.postformat(Cn)},_a.toISOString=Tc,_a.toString=Tc,_a.toJSON=Tc,_a.locale=Xo,_a.localeData=Co,_a.toIsoString=V("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Tc),_a.lang=Cr,wt("X",0,0,"unix"),wt("x",0,0,"valueOf"),Ve("x",jt),Ve("X",/[+-]?\d+(\.\d{1,3})?/),zt("X",function(F,le,We){We._d=new Date(1e3*parseFloat(F))}),zt("x",function(F,le,We){We._d=new Date(be(F))}),t.version="2.26.0",function e(F){P=F}(la),t.fn=ci,t.min=function Ni(){return go("isBefore",[].slice.call(arguments,0))},t.max=function Rl(){return go("isAfter",[].slice.call(arguments,0))},t.now=function(){return Date.now?Date.now():+new Date},t.utc=j,t.unix=function _p(F){return la(1e3*F)},t.months=function bc(F,le){return rd(F,le,"months")},t.isDate=B,t.locale=Er,t.invalid=N,t.duration=zi,t.isMoment=ie,t.weekdays=function od(F,le,We){return _r(F,le,We,"weekdays")},t.parseZone=function gp(){return la.apply(null,arguments).parseZone()},t.localeData=oe,t.isDuration=Qn,t.monthsShort=function Ql(F,le){return rd(F,le,"monthsShort")},t.weekdaysMin=function Ro(F,le,We){return _r(F,le,We,"weekdaysMin")},t.defineLocale=Tt,t.updateLocale=function Ke(F,le){if(null!=le){var We,Mt,Yt=wr;null!=ia[F]&&null!=ia[F].parentLocale?ia[F].set(Y(ia[F]._config,le)):(null!=(Mt=br(F))&&(Yt=Mt._config),le=Y(Yt,le),null==Mt&&(le.abbr=F),(We=new se(le)).parentLocale=ia[F],ia[F]=We),Er(F)}else null!=ia[F]&&(null!=ia[F].parentLocale?(ia[F]=ia[F].parentLocale,F===Er()&&Er(F)):null!=ia[F]&&delete ia[F]);return ia[F]},t.locales=function Ce(){return X(ia)},t.weekdaysShort=function sd(F,le,We){return _r(F,le,We,"weekdaysShort")},t.normalizeUnits=Nt,t.relativeTimeRounding=function Sc(F){return void 0===F?Ao:"function"==typeof F&&(Ao=F,!0)},t.relativeTimeThreshold=function pd(F,le){return void 0!==Rs[F]&&(void 0===le?Rs[F]:(Rs[F]=le,"s"===F&&(Rs.ss=le-1),!0))},t.calendarFormat=function ws(F,le){var We=F.diff(le,"days",!0);return We<-6?"sameElse":We<-1?"lastWeek":We<0?"lastDay":We<1?"sameDay":We<2?"nextDay":We<7?"nextWeek":"sameElse"},t.prototype=ci,t.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},t}()},49241:function(dt,K,n){"use strict";n.d(K,{s:function(){return v},Y:function(){return I}});var P=n(78069),t=n(48047),e=n(36362),p=n(76442);function d(j,Q){1&j&&p._UZ(0,"div",9)}function s(j,Q){if(1&j&&(p.TgZ(0,"span",10),p._uU(1),p.qZA()),2&j){var J=p.oxw().$implicit;p.xp6(1),p.Oqu(J.description)}}function h(j,Q){if(1&j&&(p.TgZ(0,"section",11),p._UZ(1,"ngx-json-viewer",12),p.qZA()),2&j){var J=p.oxw().$implicit,Z=p.oxw();p.xp6(1),p.Q6J("json",J.value)("expanded",Z.expanded)}}var f=function(Q){return["segment",Q]},T=function(Q,J){return{"segment-main":!0,expandable:Q,expanded:J}};function B(j,Q){if(1&j){var J=p.EpF();p.TgZ(0,"section",2),p.TgZ(1,"section",3),p.NdJ("click",function(){var k=p.CHM(J).$implicit;return p.oxw().toggle(k)}),p.YNc(2,d,1,0,"div",4),p.TgZ(3,"span",5),p._uU(4),p.qZA(),p.TgZ(5,"span",6),p._uU(6,": "),p.qZA(),p.YNc(7,s,2,1,"span",7),p.qZA(),p.YNc(8,h,2,2,"section",8),p.qZA()}if(2&j){var Z=Q.$implicit,A=p.oxw();p.Q6J("ngClass",p.VKq(6,f,"segment-type-"+Z.type)),p.xp6(1),p.Q6J("ngClass",p.WLB(8,T,A.isExpandable(Z),Z.expanded)),p.xp6(1),p.Q6J("ngIf",A.isExpandable(Z)),p.xp6(2),p.Oqu(Z.key),p.xp6(3),p.Q6J("ngIf",!Z.expanded||!A.isExpandable(Z)),p.xp6(1),p.Q6J("ngIf",Z.expanded&&A.isExpandable(Z))}}var I=function(){var j=function(){function Q(){(0,P.Z)(this,Q),this.expanded=!0,this.cleanOnChange=!0,this.segments=[]}return(0,t.Z)(Q,[{key:"ngOnChanges",value:function(){var Z=this;this.cleanOnChange&&(this.segments=[]),"object"==typeof this.json?Object.keys(this.json).forEach(function(A){Z.segments.push(Z.parseKeyValue(A,Z.json[A]))}):this.segments.push(this.parseKeyValue("(".concat(typeof this.json,")"),this.json))}},{key:"isExpandable",value:function(Z){return"object"===Z.type||"array"===Z.type}},{key:"toggle",value:function(Z){this.isExpandable(Z)&&(Z.expanded=!Z.expanded)}},{key:"parseKeyValue",value:function(Z,A){var N={key:Z,value:A,type:void 0,description:""+A,expanded:this.expanded};switch(typeof N.value){case"number":N.type="number";break;case"boolean":N.type="boolean";break;case"function":N.type="function";break;case"string":N.type="string",N.description='"'+N.value+'"';break;case"undefined":N.type="undefined",N.description="undefined";break;case"object":null===N.value?(N.type="null",N.description="null"):Array.isArray(N.value)?(N.type="array",N.description="Array["+N.value.length+"] "+JSON.stringify(N.value)):N.value instanceof Date?N.type="date":(N.type="object",N.description="Object "+JSON.stringify(N.value))}return N}}]),Q}();return j.\u0275fac=function(J){return new(J||j)},j.\u0275cmp=p.Xpm({type:j,selectors:[["ngx-json-viewer"]],inputs:{expanded:"expanded",cleanOnChange:"cleanOnChange",json:"json"},features:[p.TTD],decls:2,vars:1,consts:[[1,"ngx-json-viewer"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass"],[3,"ngClass","click"],["class","toggler",4,"ngIf"],[1,"segment-key"],[1,"segment-separator"],["class","segment-value",4,"ngIf"],["class","children",4,"ngIf"],[1,"toggler"],[1,"segment-value"],[1,"children"],[3,"json","expanded"]],template:function(J,Z){1&J&&(p.TgZ(0,"section",0),p.YNc(1,B,9,11,"section",1),p.qZA()),2&J&&(p.xp6(1),p.Q6J("ngForOf",Z.segments))},directives:[e.sg,e.mk,e.O5,j],styles:['@charset "UTF-8";\n .ngx-json-viewer[_ngcontent-%COMP%] {\n font-family: monospace;\n font-size: 1em;\n width: 100%;\n height: 100%;\n overflow: hidden;\n position: relative; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] {\n padding: 2px;\n margin: 1px 1px 1px 12px; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] {\n word-wrap: break-word; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .toggler[_ngcontent-%COMP%] {\n position: absolute;\n margin-left: -14px;\n margin-top: 3px;\n font-size: .8em;\n line-height: 1.2em;\n vertical-align: middle;\n color: #787878; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .toggler[_ngcontent-%COMP%]::after {\n display: inline-block;\n content: "\u25ba";\n -webkit-transition: -webkit-transform 0.1s ease-in;\n transition: -webkit-transform 0.1s ease-in;\n transition: transform 0.1s ease-in;\n transition: transform 0.1s ease-in, -webkit-transform 0.1s ease-in; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .segment-key[_ngcontent-%COMP%] {\n color: #4E187C; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .segment-separator[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .segment-value[_ngcontent-%COMP%] {\n color: #000; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .children[_ngcontent-%COMP%] {\n margin-left: 12px; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-string[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #FF6B6B; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-number[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #009688; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-boolean[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #b938a4; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-date[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #05668D; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-array[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-object[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-function[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-null[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #fff; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-undefined[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #fff; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-null[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n background-color: red; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-undefined[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-key[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-undefined[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n background-color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-object[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%], .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-array[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] {\n white-space: nowrap; }\n .ngx-json-viewer[_ngcontent-%COMP%] .expanded[_ngcontent-%COMP%] > .toggler[_ngcontent-%COMP%]::after {\n -webkit-transform: rotate(90deg);\n transform: rotate(90deg); }\n .ngx-json-viewer[_ngcontent-%COMP%] .expandable[_ngcontent-%COMP%], .ngx-json-viewer[_ngcontent-%COMP%] .expandable[_ngcontent-%COMP%] > .toggler[_ngcontent-%COMP%] {\n cursor: pointer; }']}),j}(),v=function(){var j=(0,t.Z)(function Q(){(0,P.Z)(this,Q)});return j.\u0275fac=function(J){return new(J||j)},j.\u0275mod=p.oAB({type:j}),j.\u0275inj=p.cJS({imports:[[e.ez]]}),j}()},54346:function(dt){var K=function(n){"use strict";var e,P=Object.prototype,t=P.hasOwnProperty,p="function"==typeof Symbol?Symbol:{},d=p.iterator||"@@iterator",s=p.asyncIterator||"@@asyncIterator",h=p.toStringTag||"@@toStringTag";function f(X,ne,ve){return Object.defineProperty(X,ne,{value:ve,enumerable:!0,configurable:!0,writable:!0}),X[ne]}try{f({},"")}catch(X){f=function(ve,Re,Ie){return ve[Re]=Ie}}function T(X,ne,ve,Re){var Ee=Object.create((ne&&ne.prototype instanceof Z?ne:Z).prototype),ge=new z(Re||[]);return Ee._invoke=function V(X,ne,ve){var Re=I;return function(Ee,ge){if(Re===j)throw new Error("Generator is already running");if(Re===Q){if("throw"===Ee)throw ge;return se()}for(ve.method=Ee,ve.arg=ge;;){var _t=ve.delegate;if(_t){var wt=ue(_t,ve);if(wt){if(wt===J)continue;return wt}}if("next"===ve.method)ve.sent=ve._sent=ve.arg;else if("throw"===ve.method){if(Re===I)throw Re=Q,ve.arg;ve.dispatchException(ve.arg)}else"return"===ve.method&&ve.abrupt("return",ve.arg);Re=j;var qt=B(X,ne,ve);if("normal"===qt.type){if(Re=ve.done?Q:v,qt.arg===J)continue;return{value:qt.arg,done:ve.done}}"throw"===qt.type&&(Re=Q,ve.method="throw",ve.arg=qt.arg)}}}(X,ve,ge),Ee}function B(X,ne,ve){try{return{type:"normal",arg:X.call(ne,ve)}}catch(Re){return{type:"throw",arg:Re}}}n.wrap=T;var I="suspendedStart",v="suspendedYield",j="executing",Q="completed",J={};function Z(){}function A(){}function N(){}var E={};f(E,d,function(){return this});var k=Object.getPrototypeOf,q=k&&k(k(Y([])));q&&q!==P&&t.call(q,d)&&(E=q);var ce=N.prototype=Z.prototype=Object.create(E);function ie(X){["next","throw","return"].forEach(function(ne){f(X,ne,function(ve){return this._invoke(ne,ve)})})}function H(X,ne){function ve(Ee,ge,_t,wt){var qt=B(X[Ee],X,ge);if("throw"!==qt.type){var Lt=qt.arg,Rt=Lt.value;return Rt&&"object"==typeof Rt&&t.call(Rt,"__await")?ne.resolve(Rt.__await).then(function(it){ve("next",it,_t,wt)},function(it){ve("throw",it,_t,wt)}):ne.resolve(Rt).then(function(it){Lt.value=it,_t(Lt)},function(it){return ve("throw",it,_t,wt)})}wt(qt.arg)}var Re;this._invoke=function Ie(Ee,ge){function _t(){return new ne(function(wt,qt){ve(Ee,ge,wt,qt)})}return Re=Re?Re.then(_t,_t):_t()}}function ue(X,ne){var ve=X.iterator[ne.method];if(ve===e){if(ne.delegate=null,"throw"===ne.method){if(X.iterator.return&&(ne.method="return",ne.arg=e,ue(X,ne),"throw"===ne.method))return J;ne.method="throw",ne.arg=new TypeError("The iterator does not provide a 'throw' method")}return J}var Re=B(ve,X.iterator,ne.arg);if("throw"===Re.type)return ne.method="throw",ne.arg=Re.arg,ne.delegate=null,J;var Ie=Re.arg;return Ie?Ie.done?(ne[X.resultName]=Ie.value,ne.next=X.nextLoc,"return"!==ne.method&&(ne.method="next",ne.arg=e),ne.delegate=null,J):Ie:(ne.method="throw",ne.arg=new TypeError("iterator result is not an object"),ne.delegate=null,J)}function R(X){var ne={tryLoc:X[0]};1 in X&&(ne.catchLoc=X[1]),2 in X&&(ne.finallyLoc=X[2],ne.afterLoc=X[3]),this.tryEntries.push(ne)}function r(X){var ne=X.completion||{};ne.type="normal",delete ne.arg,X.completion=ne}function z(X){this.tryEntries=[{tryLoc:"root"}],X.forEach(R,this),this.reset(!0)}function Y(X){if(X){var ne=X[d];if(ne)return ne.call(X);if("function"==typeof X.next)return X;if(!isNaN(X.length)){var ve=-1,Re=function Ie(){for(;++ve=0;--Ie){var Ee=this.tryEntries[Ie],ge=Ee.completion;if("root"===Ee.tryLoc)return Re("end");if(Ee.tryLoc<=this.prev){var _t=t.call(Ee,"catchLoc"),wt=t.call(Ee,"finallyLoc");if(_t&&wt){if(this.prev=0;--Re){var Ie=this.tryEntries[Re];if(Ie.tryLoc<=this.prev&&t.call(Ie,"finallyLoc")&&this.prev=0;--ve){var Re=this.tryEntries[ve];if(Re.finallyLoc===ne)return this.complete(Re.completion,Re.afterLoc),r(Re),J}},catch:function(ne){for(var ve=this.tryEntries.length-1;ve>=0;--ve){var Re=this.tryEntries[ve];if(Re.tryLoc===ne){var Ie=Re.completion;if("throw"===Ie.type){var Ee=Ie.arg;r(Re)}return Ee}}throw new Error("illegal catch attempt")},delegateYield:function(ne,ve,Re){return this.delegate={iterator:Y(ne),resultName:ve,nextLoc:Re},"next"===this.method&&(this.arg=e),J}},n}(dt.exports);try{regeneratorRuntime=K}catch(n){"object"==typeof globalThis?globalThis.regeneratorRuntime=K:Function("r","regeneratorRuntime = r")(K)}},76317:function(dt,K,n){"use strict";n.d(K,{X:function(){return f}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),f=function(T){(0,d.Z)(I,T);var B=(0,s.Z)(I);function I(v){var j;return(0,P.Z)(this,I),(j=B.call(this))._value=v,j}return(0,t.Z)(I,[{key:"value",get:function(){return this.getValue()}},{key:"_subscribe",value:function(j){var Q=(0,e.Z)((0,p.Z)(I.prototype),"_subscribe",this).call(this,j);return!Q.closed&&j.next(this._value),Q}},{key:"getValue",value:function(){var J=this._value;if(this.hasError)throw this.thrownError;return this._throwIfClosed(),J}},{key:"next",value:function(j){(0,e.Z)((0,p.Z)(I.prototype),"next",this).call(this,this._value=j)}}]),I}(n(50253).x)},83336:function(dt,K,n){"use strict";n.d(K,{y:function(){return v}});var P=n(78069),t=n(48047),e=n(5463),p=n(17714),d=n(24585),s=n(89173);function f(Z){return 0===Z.length?s.y:1===Z.length?Z[0]:function(N){return Z.reduce(function(E,k){return k(E)},N)}}var T=n(99057),B=n(92971),I=n(12309),v=function(){var Z=function(){function A(N){(0,P.Z)(this,A),N&&(this._subscribe=N)}return(0,t.Z)(A,[{key:"lift",value:function(E){var k=new A;return k.source=this,k.operator=E,k}},{key:"subscribe",value:function(E,k,q){var ce=this,ie=function J(Z){return Z&&Z instanceof e.Lv||function Q(Z){return Z&&(0,B.m)(Z.next)&&(0,B.m)(Z.error)&&(0,B.m)(Z.complete)}(Z)&&(0,p.Nn)(Z)}(E)?E:new e.Hp(E,k,q);return(0,I.x)(function(){var H=ce.operator,V=ce.source;ie.add(H?H.call(ie,V):V?ce._subscribe(ie):ce._trySubscribe(ie))}),ie}},{key:"_trySubscribe",value:function(E){try{return this._subscribe(E)}catch(k){E.error(k)}}},{key:"forEach",value:function(E,k){var q=this;return new(k=j(k))(function(ce,ie){var H=new e.Hp({next:function(ue){try{E(ue)}catch(R){ie(R),H.unsubscribe()}},error:ie,complete:ce});q.subscribe(H)})}},{key:"_subscribe",value:function(E){var k;return null===(k=this.source)||void 0===k?void 0:k.subscribe(E)}},{key:d.L,value:function(){return this}},{key:"pipe",value:function(){for(var E=arguments.length,k=new Array(E),q=0;q0&&void 0!==arguments[0]?arguments[0]:1/0,J=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1/0,Z=arguments.length>2&&void 0!==arguments[2]?arguments[2]:f.l;return(0,P.Z)(this,v),(j=I.call(this))._bufferSize=Q,j._windowTime=J,j._timestampProvider=Z,j._buffer=[],j._infiniteTimeWindow=!0,j._infiniteTimeWindow=J===1/0,j._bufferSize=Math.max(1,Q),j._windowTime=Math.max(1,J),j}return(0,t.Z)(v,[{key:"next",value:function(Q){var Z=this._buffer,A=this._infiniteTimeWindow,N=this._timestampProvider,E=this._windowTime;this.isStopped||(Z.push(Q),!A&&Z.push(N.now()+E)),this._trimBuffer(),(0,e.Z)((0,p.Z)(v.prototype),"next",this).call(this,Q)}},{key:"_subscribe",value:function(Q){this._throwIfClosed(),this._trimBuffer();for(var J=this._innerSubscribe(Q),Z=this._infiniteTimeWindow,N=this._buffer.slice(),E=0;E0}},{key:"_trySubscribe",value:function(q){return this._throwIfClosed(),(0,p.Z)((0,d.Z)(E.prototype),"_trySubscribe",this).call(this,q)}},{key:"_subscribe",value:function(q){return this._throwIfClosed(),this._checkFinalizedStatuses(q),this._innerSubscribe(q)}},{key:"_innerSubscribe",value:function(q){var H=this.observers;return this.hasError||this.isStopped?T.Lc:(H.push(q),new T.w0(function(){return(0,v.P)(H,q)}))}},{key:"_checkFinalizedStatuses",value:function(q){var H=this.isStopped;this.hasError?q.error(this.thrownError):H&&q.complete()}},{key:"asObservable",value:function(){var q=new f.y;return q.source=this,q}}]),E}(f.y);return Z.create=function(A,N){return new J(A,N)},Z}(),J=function(Z){(0,s.Z)(N,Z);var A=(0,h.Z)(N);function N(E,k){var q;return(0,t.Z)(this,N),(q=A.call(this)).destination=E,q.source=k,q}return(0,e.Z)(N,[{key:"next",value:function(k){var q,ce;null===(ce=null===(q=this.destination)||void 0===q?void 0:q.next)||void 0===ce||ce.call(q,k)}},{key:"error",value:function(k){var q,ce;null===(ce=null===(q=this.destination)||void 0===q?void 0:q.error)||void 0===ce||ce.call(q,k)}},{key:"complete",value:function(){var k,q;null===(q=null===(k=this.destination)||void 0===k?void 0:k.complete)||void 0===q||q.call(k)}},{key:"_subscribe",value:function(k){var q,ce;return null!==(ce=null===(q=this.source)||void 0===q?void 0:q.subscribe(k))&&void 0!==ce?ce:T.Lc}}]),N}(Q)},5463:function(dt,K,n){"use strict";n.d(K,{Hp:function(){return ie},Lv:function(){return E}});var P=n(78069),t=n(48047),e=n(35488),p=n(4089),d=n(20265),s=n(24582),h=n(7318),f=n(92971),T=n(17714),B=n(99057),I=n(84709),v=n(99635),j=Z("C",void 0,void 0);function Z(r,z,Y){return{kind:r,value:z,error:Y}}var A=n(93542),N=n(12309),E=function(r){(0,s.Z)(Y,r);var z=(0,h.Z)(Y);function Y(se){var X;return(0,P.Z)(this,Y),(X=z.call(this)).isStopped=!1,se?(X.destination=se,(0,T.Nn)(se)&&se.add((0,e.Z)(X))):X.destination=R,X}return(0,t.Z)(Y,[{key:"next",value:function(X){this.isStopped?ue(function J(r){return Z("N",r,void 0)}(X),this):this._next(X)}},{key:"error",value:function(X){this.isStopped?ue(function Q(r){return Z("E",void 0,r)}(X),this):(this.isStopped=!0,this._error(X))}},{key:"complete",value:function(){this.isStopped?ue(j,this):(this.isStopped=!0,this._complete())}},{key:"unsubscribe",value:function(){this.closed||(this.isStopped=!0,(0,p.Z)((0,d.Z)(Y.prototype),"unsubscribe",this).call(this),this.destination=null)}},{key:"_next",value:function(X){this.destination.next(X)}},{key:"_error",value:function(X){try{this.destination.error(X)}finally{this.unsubscribe()}}},{key:"_complete",value:function(){try{this.destination.complete()}finally{this.unsubscribe()}}}],[{key:"create",value:function(X,ne,ve){return new ie(X,ne,ve)}}]),Y}(T.w0),k=Function.prototype.bind;function q(r,z){return k.call(r,z)}var ce=function(){function r(z){(0,P.Z)(this,r),this.partialObserver=z}return(0,t.Z)(r,[{key:"next",value:function(Y){var se=this.partialObserver;if(se.next)try{se.next(Y)}catch(X){H(X)}}},{key:"error",value:function(Y){var se=this.partialObserver;if(se.error)try{se.error(Y)}catch(X){H(X)}else H(Y)}},{key:"complete",value:function(){var Y=this.partialObserver;if(Y.complete)try{Y.complete()}catch(se){H(se)}}}]),r}(),ie=function(r){(0,s.Z)(Y,r);var z=(0,h.Z)(Y);function Y(se,X,ne){var ve,Re,Ie;return(0,P.Z)(this,Y),ve=z.call(this),(0,f.m)(se)||!se?Re={next:null!=se?se:void 0,error:null!=X?X:void 0,complete:null!=ne?ne:void 0}:(0,e.Z)(ve)&&B.v.useDeprecatedNextContext?((Ie=Object.create(se)).unsubscribe=function(){return ve.unsubscribe()},Re={next:se.next&&q(se.next,Ie),error:se.error&&q(se.error,Ie),complete:se.complete&&q(se.complete,Ie)}):Re=se,ve.destination=new ce(Re),ve}return(0,t.Z)(Y)}(E);function H(r){B.v.useDeprecatedSynchronousErrorHandling?(0,N.O)(r):(0,I.h)(r)}function ue(r,z){var Y=B.v.onStoppedNotification;Y&&A.z.setTimeout(function(){return Y(r,z)})}var R={closed:!0,next:v.Z,error:function V(r){throw r},complete:v.Z}},17714:function(dt,K,n){"use strict";n.d(K,{Lc:function(){return B},w0:function(){return T},Nn:function(){return I}});var j,P=n(86170),t=n(95106),e=n(78069),p=n(48047),d=n(92971),h=(0,n(27543).d)(function(j){return function(J){j(this),this.message=J?"".concat(J.length," errors occurred during unsubscription:\n").concat(J.map(function(Z,A){return"".concat(A+1,") ").concat(Z.toString())}).join("\n ")):"",this.name="UnsubscriptionError",this.errors=J}}),f=n(39663),T=function(){function j(Q){(0,e.Z)(this,j),this.initialTeardown=Q,this.closed=!1,this._parentage=null,this._teardowns=null}return(0,p.Z)(j,[{key:"unsubscribe",value:function(){var J;if(!this.closed){this.closed=!0;var Z=this._parentage;if(Z)if(this._parentage=null,Array.isArray(Z)){var N,A=(0,t.Z)(Z);try{for(A.s();!(N=A.n()).done;)N.value.remove(this)}catch(V){A.e(V)}finally{A.f()}}else Z.remove(this);var k=this.initialTeardown;if((0,d.m)(k))try{k()}catch(V){J=V instanceof h?V.errors:[V]}var q=this._teardowns;if(q){this._teardowns=null;var ie,ce=(0,t.Z)(q);try{for(ce.s();!(ie=ce.n()).done;){var H=ie.value;try{v(H)}catch(V){J=null!=J?J:[],V instanceof h?J=[].concat((0,P.Z)(J),(0,P.Z)(V.errors)):J.push(V)}}}catch(V){ce.e(V)}finally{ce.f()}}if(J)throw new h(J)}}},{key:"add",value:function(J){var Z;if(J&&J!==this)if(this.closed)v(J);else{if(J instanceof j){if(J.closed||J._hasParent(this))return;J._addParent(this)}(this._teardowns=null!==(Z=this._teardowns)&&void 0!==Z?Z:[]).push(J)}}},{key:"_hasParent",value:function(J){var Z=this._parentage;return Z===J||Array.isArray(Z)&&Z.includes(J)}},{key:"_addParent",value:function(J){var Z=this._parentage;this._parentage=Array.isArray(Z)?(Z.push(J),Z):Z?[Z,J]:J}},{key:"_removeParent",value:function(J){var Z=this._parentage;Z===J?this._parentage=null:Array.isArray(Z)&&(0,f.P)(Z,J)}},{key:"remove",value:function(J){var Z=this._teardowns;Z&&(0,f.P)(Z,J),J instanceof j&&J._removeParent(this)}}]),j}();T.EMPTY=((j=new T).closed=!0,j);var B=T.EMPTY;function I(j){return j instanceof T||j&&"closed"in j&&(0,d.m)(j.remove)&&(0,d.m)(j.add)&&(0,d.m)(j.unsubscribe)}function v(j){(0,d.m)(j)?j():j.unsubscribe()}},99057:function(dt,K,n){"use strict";n.d(K,{v:function(){return P}});var P={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},26562:function(dt,K,n){"use strict";n.d(K,{a:function(){return B}});var P=n(83336),t=n(45756),e=n(72957),p=n(89173),d=n(58385),s=n(10420),h=n(11054),f=n(93945),T=n(1817);function B(){for(var j=arguments.length,Q=new Array(j),J=0;J2&&void 0!==arguments[2]?arguments[2]:p.y;return function(Z){v(Q,function(){for(var A=j.length,N=new Array(A),E=A,k=A,q=function(H){v(Q,function(){var V=(0,e.D)(j[H],Q),ue=!1;V.subscribe((0,f.x)(Z,function(R){N[H]=R,ue||(ue=!0,k--),k||Z.next(J(N.slice()))},function(){--E||Z.complete()}))},Z)},ce=0;ce1&&void 0!==arguments[1]?arguments[1]:0;return(0,e.e)(function(R,r){R.subscribe((0,p.x)(r,function(z){return(0,t.f)(r,V,function(){return r.next(z)},ue)},function(){return(0,t.f)(r,V,function(){return r.complete()},ue)},function(z){return(0,t.f)(r,V,function(){return r.error(z)},ue)}))})}function s(V){var ue=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return(0,e.e)(function(R,r){r.add(V.schedule(function(){return R.subscribe(r)},ue))})}var T=n(83336),I=n(67321),v=n(92971);function Q(V,ue){if(!V)throw new Error("Iterable cannot be null");return new T.y(function(R){(0,t.f)(R,ue,function(){var r=V[Symbol.asyncIterator]();(0,t.f)(R,ue,function(){r.next().then(function(z){z.done?R.complete():R.next(z.value)})},0,!0)})})}var J=n(21331),Z=n(79548),A=n(99806),N=n(23433),E=n(80470),k=n(27785),q=n(20181);function H(V,ue){return ue?function ie(V,ue){if(null!=V){if((0,J.c)(V))return function h(V,ue){return(0,P.Xf)(V).pipe(s(ue),d(ue))}(V,ue);if((0,A.z)(V))return function B(V,ue){return new T.y(function(R){var r=0;return ue.schedule(function(){r===V.length?R.complete():(R.next(V[r++]),R.closed||this.schedule())})})}(V,ue);if((0,Z.t)(V))return function f(V,ue){return(0,P.Xf)(V).pipe(s(ue),d(ue))}(V,ue);if((0,E.D)(V))return Q(V,ue);if((0,N.T)(V))return function j(V,ue){return new T.y(function(R){var r;return(0,t.f)(R,ue,function(){r=V[I.h](),(0,t.f)(R,ue,function(){var z,Y;try{var se=r.next();z=se.value,Y=se.done}catch(X){return void R.error(X)}Y?R.complete():R.next(z)},0,!0)}),function(){return(0,v.m)(null==r?void 0:r.return)&&r.return()}})}(V,ue);if((0,q.L)(V))return function ce(V,ue){return Q((0,q.Q)(V),ue)}(V,ue)}throw(0,k.z)(V)}(V,ue):(0,P.Xf)(V)}},23280:function(dt,K,n){"use strict";n.d(K,{R:function(){return I}});var P=n(32090),t=n(54987),e=n(83336),p=n(49525),d=n(99806),s=n(92971),h=n(58385),f=["addListener","removeListener"],T=["addEventListener","removeEventListener"],B=["on","off"];function I(Z,A,N,E){if((0,s.m)(N)&&(E=N,N=void 0),E)return I(Z,A,N).pipe((0,h.Z)(E));var k=function J(Z){return(0,s.m)(Z.addEventListener)&&(0,s.m)(Z.removeEventListener)}(Z)?T.map(function(H){return function(V){return Z[H](A,V,N)}}):function j(Z){return(0,s.m)(Z.addListener)&&(0,s.m)(Z.removeListener)}(Z)?f.map(v(Z,A)):function Q(Z){return(0,s.m)(Z.on)&&(0,s.m)(Z.off)}(Z)?B.map(v(Z,A)):[],q=(0,P.Z)(k,2),ce=q[0],ie=q[1];if(!ce&&(0,d.z)(Z))return(0,p.z)(function(H){return I(H,A,N)})((0,t.Xf)(Z));if(!ce)throw new TypeError("Invalid event target");return new e.y(function(H){var V=function(){for(var R=arguments.length,r=new Array(R),z=0;z0&&void 0!==arguments[0]?arguments[0]:0,h=arguments.length>1?arguments[1]:void 0,f=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.P,T=-1;return null!=h&&((0,e.K)(h)?f=h:T=h),new P.y(function(B){var I=p(s)?+s-f.now():s;I<0&&(I=0);var v=0;return f.schedule(function(){B.closed||(B.next(v++),0<=T?this.schedule(void 0,T):B.complete())},I)})}},93945:function(dt,K,n){"use strict";n.d(K,{x:function(){return T}});var P=n(78069),t=n(48047),e=n(35488),p=n(24582),d=n(7318),s=n(4089),h=n(20265);function T(I,v,j,Q,J){return new B(I,v,j,Q,J)}var B=function(I){(0,p.Z)(j,I);var v=(0,d.Z)(j);function j(Q,J,Z,A,N,E){var k,q,ce,ie;return(0,P.Z)(this,j),(ie=v.call(this,Q)).onFinalize=N,ie.shouldUnsubscribe=E,ie._next=J?function(H){try{J(H)}catch(V){Q.error(V)}}:(0,s.Z)((k=(0,e.Z)(ie),(0,h.Z)(j.prototype)),"_next",k),ie._error=A?function(H){try{A(H)}catch(V){Q.error(V)}finally{this.unsubscribe()}}:(0,s.Z)((q=(0,e.Z)(ie),(0,h.Z)(j.prototype)),"_error",q),ie._complete=Z?function(){try{Z()}catch(H){Q.error(H)}finally{this.unsubscribe()}}:(0,s.Z)((ce=(0,e.Z)(ie),(0,h.Z)(j.prototype)),"_complete",ce),ie}return(0,t.Z)(j,[{key:"unsubscribe",value:function(){var J;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var Z=this.closed;(0,s.Z)((0,h.Z)(j.prototype),"unsubscribe",this).call(this),!Z&&(null===(J=this.onFinalize)||void 0===J||J.call(this))}}}]),j}(n(5463).Lv)},89211:function(dt,K,n){"use strict";n.d(K,{e:function(){return h}});var P=n(96936),t=n(41944),e=n(54987),p=n(93945);function d(f){return(0,t.e)(function(T,B){var I=!1,v=null,j=null,Q=!1,J=function(){if(null==j||j.unsubscribe(),j=null,I){I=!1;var N=v;v=null,B.next(N)}Q&&B.complete()},Z=function(){j=null,Q&&B.complete()};T.subscribe((0,p.x)(B,function(A){I=!0,v=A,j||(0,e.Xf)(f(A)).subscribe(j=(0,p.x)(B,J,Z))},function(){Q=!0,(!I||!j||j.closed)&&B.complete()}))})}var s=n(85524);function h(f){var T=arguments.length>1&&void 0!==arguments[1]?arguments[1]:P.z;return d(function(){return(0,s.H)(f,T)})}},53158:function(dt,K,n){"use strict";n.d(K,{K:function(){return p}});var P=n(54987),t=n(93945),e=n(41944);function p(d){return(0,e.e)(function(s,h){var B,f=null,T=!1;f=s.subscribe((0,t.x)(h,void 0,void 0,function(I){B=(0,P.Xf)(d(I,p(d)(s))),f?(f.unsubscribe(),f=null,B.subscribe(h)):T=!0})),T&&(f.unsubscribe(),f=null,B.subscribe(h))})}},63853:function(dt,K,n){"use strict";n.d(K,{b:function(){return e}});var P=n(49525),t=n(92971);function e(p,d){return(0,t.m)(d)?(0,P.z)(p,d,1):(0,P.z)(p,1)}},71989:function(dt,K,n){"use strict";n.d(K,{b:function(){return p}});var P=n(96936),t=n(41944),e=n(93945);function p(d){var s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:P.z;return(0,t.e)(function(h,f){var T=null,B=null,I=null,v=function(){if(T){T.unsubscribe(),T=null;var J=B;B=null,f.next(J)}};function j(){var Q=I+d,J=s.now();if(J1&&void 0!==arguments[1]?arguments[1]:P.z,J=(0,I.H)(j,Q);return B(function(){return J})}},98977:function(dt,K,n){"use strict";n.d(K,{x:function(){return p}});var P=n(89173),t=n(41944),e=n(93945);function p(s){var h=arguments.length>1&&void 0!==arguments[1]?arguments[1]:P.y;return s=null!=s?s:d,(0,t.e)(function(f,T){var B,I=!0;f.subscribe((0,e.x)(T,function(v){var j=h(v);(I||!s(B,j))&&(I=!1,B=j,T.next(v))}))})}function d(s,h){return s===h}},60116:function(dt,K,n){"use strict";n.d(K,{h:function(){return e}});var P=n(41944),t=n(93945);function e(p,d){return(0,P.e)(function(s,h){var f=0;s.subscribe((0,t.x)(h,function(T){return p.call(d,T,f++)&&h.next(T)}))})}},32313:function(dt,K,n){"use strict";n.d(K,{x:function(){return t}});var P=n(41944);function t(e){return(0,P.e)(function(p,d){try{p.subscribe(d)}finally{d.add(e)}})}},50635:function(dt,K,n){"use strict";n.d(K,{U:function(){return e}});var P=n(41944),t=n(93945);function e(p,d){return(0,P.e)(function(s,h){var f=0;s.subscribe((0,t.x)(h,function(T){h.next(p.call(d,T,f++))}))})}},73:function(dt,K,n){"use strict";n.d(K,{h:function(){return t}});var P=n(50635);function t(e){return(0,P.U)(function(){return e})}},1308:function(dt,K,n){"use strict";n.d(K,{J:function(){return e}});var P=n(49525),t=n(89173);function e(){var p=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0;return(0,P.z)(t.y,p)}},49525:function(dt,K,n){"use strict";n.d(K,{z:function(){return f}});var P=n(50635),t=n(54987),e=n(41944),p=n(1817),d=n(93945);function s(T,B,I,v,j,Q,J,Z){var A=[],N=0,E=0,k=!1,q=function(){k&&!A.length&&!N&&B.complete()},ce=function(V){return N2&&void 0!==arguments[2]?arguments[2]:1/0;return(0,h.m)(B)?f(function(v,j){return(0,P.U)(function(Q,J){return B(v,Q,j,J)})((0,t.Xf)(T(v,j)))},I):("number"==typeof B&&(I=B),(0,e.e)(function(v,j){return s(v,j,T,I)}))}},81203:function(dt,K,n){"use strict";n.d(K,{B:function(){return s}});var P=n(72957),t=n(59295),e=n(50253),p=n(5463),d=n(41944);function s(){var f=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},T=f.connector,B=void 0===T?function(){return new e.x}:T,I=f.resetOnError,v=void 0===I||I,j=f.resetOnComplete,Q=void 0===j||j,J=f.resetOnRefCountZero,Z=void 0===J||J;return function(A){var N=null,E=null,k=null,q=0,ce=!1,ie=!1,H=function(){null==E||E.unsubscribe(),E=null},V=function(){H(),N=k=null,ce=ie=!1},ue=function(){var r=N;V(),null==r||r.unsubscribe()};return(0,d.e)(function(R,r){q++,!ie&&!ce&&H();var z=k=null!=k?k:B();r.add(function(){0==--q&&!ie&&!ce&&(E=h(ue,Z))}),z.subscribe(r),N||(N=new p.Hp({next:function(se){return z.next(se)},error:function(se){ie=!0,H(),E=h(V,v,se),z.error(se)},complete:function(){ce=!0,H(),E=h(V,Q),z.complete()}}),(0,P.D)(R).subscribe(N))})(A)}}function h(f,T){if(!0===T)return f(),null;if(!1===T)return null;for(var B=arguments.length,I=new Array(B>2?B-2:0),v=2;v1&&void 0!==arguments[1]?arguments[1]:0;if(this.closed)return this;this.state=Z;var N=this.id,E=this.scheduler;return null!=N&&(this.id=this.recycleAsyncId(E,N,A)),this.pending=!0,this.delay=A,this.id=this.id||this.requestAsyncId(E,this.id,A),this}},{key:"requestAsyncId",value:function(Z,A){var N=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return T.setInterval(Z.flush.bind(Z,this),N)}},{key:"recycleAsyncId",value:function(Z,A){var N=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!=N&&this.delay===N&&!1===this.pending)return A;T.clearInterval(A)}},{key:"execute",value:function(Z,A){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var N=this._execute(Z,A);if(N)return N;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}},{key:"_execute",value:function(Z,A){var E,N=!1;try{this.work(Z)}catch(k){N=!0,E=k||new Error("Scheduled action threw falsy error")}if(N)return this.unsubscribe(),E}},{key:"unsubscribe",value:function(){if(!this.closed){var Z=this.id,A=this.scheduler,N=A.actions;this.work=this.state=this.scheduler=null,this.pending=!1,(0,B.P)(N,this),null!=Z&&(this.id=this.recycleAsyncId(A,Z,null)),this.delay=null,(0,e.Z)((0,p.Z)(Q.prototype),"unsubscribe",this).call(this)}}}]),Q}(f)},41010:function(dt,K,n){"use strict";n.d(K,{v:function(){return h}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(67654),s=function(){function f(T){var B=arguments.length>1&&void 0!==arguments[1]?arguments[1]:f.now;(0,P.Z)(this,f),this.schedulerActionCtor=T,this.now=B}return(0,t.Z)(f,[{key:"schedule",value:function(B){var I=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,v=arguments.length>2?arguments[2]:void 0;return new this.schedulerActionCtor(this,B).schedule(v,I)}}]),f}();s.now=d.l.now;var h=function(f){(0,e.Z)(B,f);var T=(0,p.Z)(B);function B(I){var v,j=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.now;return(0,P.Z)(this,B),(v=T.call(this,I,j)).actions=[],v._active=!1,v._scheduled=void 0,v}return(0,t.Z)(B,[{key:"flush",value:function(v){var j=this.actions;if(this._active)j.push(v);else{var Q;this._active=!0;do{if(Q=v.execute(v.state,v.delay))break}while(v=j.shift());if(this._active=!1,Q){for(;v=j.shift();)v.unsubscribe();throw Q}}}}]),B}(s)},83888:function(dt,K,n){"use strict";n.d(K,{E:function(){return k}});var T,P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(75417),f=1,B={};function I(ce){return ce in B&&(delete B[ce],!0)}var Q=function(ie){var H=f++;return B[H]=!0,T||(T=Promise.resolve()),T.then(function(){return I(H)&&ie()}),H},J=function(ie){I(ie)},Z={setImmediate:function(){var ie=Z.delegate;return((null==ie?void 0:ie.setImmediate)||Q).apply(void 0,arguments)},clearImmediate:function(ie){var H=Z.delegate;return((null==H?void 0:H.clearImmediate)||J)(ie)},delegate:void 0},A=function(ce){(0,d.Z)(H,ce);var ie=(0,s.Z)(H);function H(V,ue){var R;return(0,P.Z)(this,H),(R=ie.call(this,V,ue)).scheduler=V,R.work=ue,R}return(0,t.Z)(H,[{key:"requestAsyncId",value:function(ue,R){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==r&&r>0?(0,e.Z)((0,p.Z)(H.prototype),"requestAsyncId",this).call(this,ue,R,r):(ue.actions.push(this),ue._scheduled||(ue._scheduled=Z.setImmediate(ue.flush.bind(ue,void 0))))}},{key:"recycleAsyncId",value:function(ue,R){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!=r&&r>0||null==r&&this.delay>0)return(0,e.Z)((0,p.Z)(H.prototype),"recycleAsyncId",this).call(this,ue,R,r);ue.actions.some(function(z){return z.id===R})||(Z.clearImmediate(R),ue._scheduled=void 0)}}]),H}(h.o),E=function(ce){(0,d.Z)(H,ce);var ie=(0,s.Z)(H);function H(){return(0,P.Z)(this,H),ie.apply(this,arguments)}return(0,t.Z)(H,[{key:"flush",value:function(ue){this._active=!0;var R=this._scheduled;this._scheduled=void 0;var z,r=this.actions;ue=ue||r.shift();do{if(z=ue.execute(ue.state,ue.delay))break}while((ue=r[0])&&ue.id===R&&r.shift());if(this._active=!1,z){for(;(ue=r[0])&&ue.id===R&&r.shift();)ue.unsubscribe();throw z}}}]),H}(n(41010).v),k=new E(A)},96936:function(dt,K,n){"use strict";n.d(K,{z:function(){return e},P:function(){return p}});var P=n(75417),e=new(n(41010).v)(P.o),p=e},67654:function(dt,K,n){"use strict";n.d(K,{l:function(){return P}});var P={now:function(){return(P.delegate||Date).now()},delegate:void 0}},93542:function(dt,K,n){"use strict";n.d(K,{z:function(){return P}});var P={setTimeout:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}(function(){var t=P.delegate;return((null==t?void 0:t.setTimeout)||setTimeout).apply(void 0,arguments)}),clearTimeout:function(t){function e(p){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}(function(t){var e=P.delegate;return((null==e?void 0:e.clearTimeout)||clearTimeout)(t)}),delegate:void 0}},67321:function(dt,K,n){"use strict";n.d(K,{h:function(){return t}});var t=function P(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}()},24585:function(dt,K,n){"use strict";n.d(K,{L:function(){return P}});var P="function"==typeof Symbol&&Symbol.observable||"@@observable"},10420:function(dt,K,n){"use strict";n.d(K,{jO:function(){return p},yG:function(){return d},_6:function(){return s}});var P=n(92971),t=n(59867);function e(h){return h[h.length-1]}function p(h){return(0,P.m)(e(h))?h.pop():void 0}function d(h){return(0,t.K)(e(h))?h.pop():void 0}function s(h,f){return"number"==typeof e(h)?h.pop():f}},45756:function(dt,K,n){"use strict";n.d(K,{D:function(){return d}});var P=Array.isArray,t=Object.getPrototypeOf,e=Object.prototype,p=Object.keys;function d(h){if(1===h.length){var f=h[0];if(P(f))return{args:f,keys:null};if(function s(h){return h&&"object"==typeof h&&t(h)===e}(f)){var T=p(f);return{args:T.map(function(B){return f[B]}),keys:T}}}return{args:h,keys:null}}},39663:function(dt,K,n){"use strict";function P(t,e){if(t){var p=t.indexOf(e);0<=p&&t.splice(p,1)}}n.d(K,{P:function(){return P}})},27543:function(dt,K,n){"use strict";function P(t){var p=t(function(s){Error.call(s),s.stack=(new Error).stack});return p.prototype=Object.create(Error.prototype),p.prototype.constructor=p,p}n.d(K,{d:function(){return P}})},11054:function(dt,K,n){"use strict";function P(t,e){return t.reduce(function(p,d,s){return p[d]=e[s],p},{})}n.d(K,{n:function(){return P}})},12309:function(dt,K,n){"use strict";n.d(K,{x:function(){return e},O:function(){return p}});var P=n(99057),t=null;function e(d){if(P.v.useDeprecatedSynchronousErrorHandling){var s=!t;if(s&&(t={errorThrown:!1,error:null}),d(),s){var h=t;if(t=null,h.errorThrown)throw h.error}}else d()}function p(d){P.v.useDeprecatedSynchronousErrorHandling&&t&&(t.errorThrown=!0,t.error=d)}},1817:function(dt,K,n){"use strict";function P(t,e,p){var d=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],h=e.schedule(function(){p(),s?t.add(this.schedule(null,d)):this.unsubscribe()},d);if(t.add(h),!s)return h}n.d(K,{f:function(){return P}})},89173:function(dt,K,n){"use strict";function P(t){return t}n.d(K,{y:function(){return P}})},99806:function(dt,K,n){"use strict";n.d(K,{z:function(){return P}});var P=function(e){return e&&"number"==typeof e.length&&"function"!=typeof e}},80470:function(dt,K,n){"use strict";n.d(K,{D:function(){return t}});var P=n(92971);function t(e){return Symbol.asyncIterator&&(0,P.m)(null==e?void 0:e[Symbol.asyncIterator])}},92971:function(dt,K,n){"use strict";function P(t){return"function"==typeof t}n.d(K,{m:function(){return P}})},21331:function(dt,K,n){"use strict";n.d(K,{c:function(){return e}});var P=n(24585),t=n(92971);function e(p){return(0,t.m)(p[P.L])}},23433:function(dt,K,n){"use strict";n.d(K,{T:function(){return e}});var P=n(67321),t=n(92971);function e(p){return(0,t.m)(null==p?void 0:p[P.h])}},14437:function(dt,K,n){"use strict";n.d(K,{b:function(){return e}});var P=n(83336),t=n(92971);function e(p){return!!p&&(p instanceof P.y||(0,t.m)(p.lift)&&(0,t.m)(p.subscribe))}},79548:function(dt,K,n){"use strict";n.d(K,{t:function(){return t}});var P=n(92971);function t(e){return(0,P.m)(null==e?void 0:e.then)}},20181:function(dt,K,n){"use strict";n.d(K,{Q:function(){return d},L:function(){return s}});var P=n(69016),t=n.n(P),e=n(49126),p=n(92971);function d(h){return(0,e.FC)(this,arguments,t().mark(function f(){var T,B,I;return t().wrap(function(Q){for(;;)switch(Q.prev=Q.next){case 0:T=h.getReader(),Q.prev=1;case 2:return Q.next=5,(0,e.qq)(T.read());case 5:if(I=(B=Q.sent).value,!B.done){Q.next=12;break}return Q.next=11,(0,e.qq)(void 0);case 11:return Q.abrupt("return",Q.sent);case 12:return Q.next=14,(0,e.qq)(I);case 14:return Q.next=16,Q.sent;case 16:Q.next=2;break;case 18:return Q.prev=18,T.releaseLock(),Q.finish(18);case 21:case"end":return Q.stop()}},f,null,[[1,,18,21]])}))}function s(h){return(0,p.m)(null==h?void 0:h.getReader)}},59867:function(dt,K,n){"use strict";n.d(K,{K:function(){return t}});var P=n(92971);function t(e){return e&&(0,P.m)(e.schedule)}},41944:function(dt,K,n){"use strict";n.d(K,{A:function(){return t},e:function(){return e}});var P=n(92971);function t(p){return(0,P.m)(null==p?void 0:p.lift)}function e(p){return function(d){if(t(d))return d.lift(function(s){try{return p(s,this)}catch(h){this.error(h)}});throw new TypeError("Unable to lift unknown Observable type")}}},58385:function(dt,K,n){"use strict";n.d(K,{Z:function(){return d}});var P=n(86170),t=n(50635),e=Array.isArray;function d(s){return(0,t.U)(function(h){return function p(s,h){return e(h)?s.apply(void 0,(0,P.Z)(h)):s(h)}(s,h)})}},99635:function(dt,K,n){"use strict";function P(){}n.d(K,{Z:function(){return P}})},84709:function(dt,K,n){"use strict";n.d(K,{h:function(){return e}});var P=n(99057),t=n(93542);function e(p){t.z.setTimeout(function(){var d=P.v.onUnhandledError;if(!d)throw p;d(p)})}},27785:function(dt,K,n){"use strict";function P(t){return new TypeError("You provided ".concat(null!==t&&"object"==typeof t?"an invalid object":"'".concat(t,"'")," where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable."))}n.d(K,{z:function(){return P}})},65068:function(dt){dt.exports=function(n){return n&&"object"==typeof n&&"function"==typeof n.copy&&"function"==typeof n.fill&&"function"==typeof n.readUInt8}},54815:function(dt,K,n){"use strict";var P=n(9102),t=n(17494),e=n(75709),p=n(37673);function d(qe){return qe.call.bind(qe)}var s="undefined"!=typeof BigInt,h="undefined"!=typeof Symbol,f=d(Object.prototype.toString),T=d(Number.prototype.valueOf),B=d(String.prototype.valueOf),I=d(Boolean.prototype.valueOf);if(s)var v=d(BigInt.prototype.valueOf);if(h)var j=d(Symbol.prototype.valueOf);function Q(qe,je){if("object"!=typeof qe)return!1;try{return je(qe),!0}catch(Nt){return!1}}function r(qe){return"[object Map]"===f(qe)}function Y(qe){return"[object Set]"===f(qe)}function X(qe){return"[object WeakMap]"===f(qe)}function ve(qe){return"[object WeakSet]"===f(qe)}function Ie(qe){return"[object ArrayBuffer]"===f(qe)}function Ee(qe){return"undefined"!=typeof ArrayBuffer&&(Ie.working?Ie(qe):qe instanceof ArrayBuffer)}function ge(qe){return"[object DataView]"===f(qe)}function _t(qe){return"undefined"!=typeof DataView&&(ge.working?ge(qe):qe instanceof DataView)}K.isArgumentsObject=P,K.isGeneratorFunction=t,K.isTypedArray=p,K.isPromise=function J(qe){return"undefined"!=typeof Promise&&qe instanceof Promise||null!==qe&&"object"==typeof qe&&"function"==typeof qe.then&&"function"==typeof qe.catch},K.isArrayBufferView=function Z(qe){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(qe):p(qe)||_t(qe)},K.isUint8Array=function A(qe){return"Uint8Array"===e(qe)},K.isUint8ClampedArray=function N(qe){return"Uint8ClampedArray"===e(qe)},K.isUint16Array=function E(qe){return"Uint16Array"===e(qe)},K.isUint32Array=function k(qe){return"Uint32Array"===e(qe)},K.isInt8Array=function q(qe){return"Int8Array"===e(qe)},K.isInt16Array=function ce(qe){return"Int16Array"===e(qe)},K.isInt32Array=function ie(qe){return"Int32Array"===e(qe)},K.isFloat32Array=function H(qe){return"Float32Array"===e(qe)},K.isFloat64Array=function V(qe){return"Float64Array"===e(qe)},K.isBigInt64Array=function ue(qe){return"BigInt64Array"===e(qe)},K.isBigUint64Array=function R(qe){return"BigUint64Array"===e(qe)},r.working="undefined"!=typeof Map&&r(new Map),K.isMap=function z(qe){return"undefined"!=typeof Map&&(r.working?r(qe):qe instanceof Map)},Y.working="undefined"!=typeof Set&&Y(new Set),K.isSet=function se(qe){return"undefined"!=typeof Set&&(Y.working?Y(qe):qe instanceof Set)},X.working="undefined"!=typeof WeakMap&&X(new WeakMap),K.isWeakMap=function ne(qe){return"undefined"!=typeof WeakMap&&(X.working?X(qe):qe instanceof WeakMap)},ve.working="undefined"!=typeof WeakSet&&ve(new WeakSet),K.isWeakSet=function Re(qe){return ve(qe)},Ie.working="undefined"!=typeof ArrayBuffer&&Ie(new ArrayBuffer),K.isArrayBuffer=Ee,ge.working="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView&&ge(new DataView(new ArrayBuffer(1),0,1)),K.isDataView=_t;var wt="undefined"!=typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function qt(qe){return"[object SharedArrayBuffer]"===f(qe)}function Lt(qe){return void 0!==wt&&(void 0===qt.working&&(qt.working=qt(new wt)),qt.working?qt(qe):qe instanceof wt)}function xe(qe){return Q(qe,T)}function $e(qe){return Q(qe,B)}function Ge(qe){return Q(qe,I)}function ct(qe){return s&&Q(qe,v)}function Xe(qe){return h&&Q(qe,j)}K.isSharedArrayBuffer=Lt,K.isAsyncFunction=function Rt(qe){return"[object AsyncFunction]"===f(qe)},K.isMapIterator=function it(qe){return"[object Map Iterator]"===f(qe)},K.isSetIterator=function Qe(qe){return"[object Set Iterator]"===f(qe)},K.isGeneratorObject=function ot(qe){return"[object Generator]"===f(qe)},K.isWebAssemblyCompiledModule=function tt(qe){return"[object WebAssembly.Module]"===f(qe)},K.isNumberObject=xe,K.isStringObject=$e,K.isBooleanObject=Ge,K.isBigIntObject=ct,K.isSymbolObject=Xe,K.isBoxedPrimitive=function Te(qe){return xe(qe)||$e(qe)||Ge(qe)||ct(qe)||Xe(qe)},K.isAnyArrayBuffer=function vt(qe){return"undefined"!=typeof Uint8Array&&(Ee(qe)||Lt(qe))},["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(qe){Object.defineProperty(K,qe,{enumerable:!1,value:function(){throw new Error(qe+" is not supported in userland")}})})},50074:function(dt,K,n){var P=Object.getOwnPropertyDescriptors||function(_t){for(var wt=Object.keys(_t),qt={},Lt=0;Lt=Lt)return Qe;switch(Qe){case"%s":return String(qt[wt++]);case"%d":return Number(qt[wt++]);case"%j":try{return JSON.stringify(qt[wt++])}catch(ot){return"[Circular]"}default:return Qe}}),it=qt[wt];wt=3&&(wt.depth=arguments[2]),arguments.length>=4&&(wt.colors=arguments[3]),A(_t)?wt.showHidden=_t:_t&&K._extend(wt,_t),ie(wt.showHidden)&&(wt.showHidden=!1),ie(wt.depth)&&(wt.depth=2),ie(wt.colors)&&(wt.colors=!1),ie(wt.customInspect)&&(wt.customInspect=!0),wt.colors&&(wt.stylize=h),B(wt,ge,wt.depth)}function h(ge,_t){var wt=s.styles[_t];return wt?"\x1b["+s.colors[wt][0]+"m"+ge+"\x1b["+s.colors[wt][1]+"m":ge}function f(ge,_t){return ge}function B(ge,_t,wt){if(ge.customInspect&&_t&&r(_t.inspect)&&_t.inspect!==K.inspect&&(!_t.constructor||_t.constructor.prototype!==_t)){var qt=_t.inspect(wt,ge);return q(qt)||(qt=B(ge,qt,wt)),qt}var Lt=function I(ge,_t){if(ie(_t))return ge.stylize("undefined","undefined");if(q(_t)){var wt="'"+JSON.stringify(_t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return ge.stylize(wt,"string")}return k(_t)?ge.stylize(""+_t,"number"):A(_t)?ge.stylize(""+_t,"boolean"):N(_t)?ge.stylize("null","null"):void 0}(ge,_t);if(Lt)return Lt;var Rt=Object.keys(_t),it=function T(ge){var _t={};return ge.forEach(function(wt,qt){_t[wt]=!0}),_t}(Rt);if(ge.showHidden&&(Rt=Object.getOwnPropertyNames(_t)),R(_t)&&(Rt.indexOf("message")>=0||Rt.indexOf("description")>=0))return v(_t);if(0===Rt.length){if(r(_t))return ge.stylize("[Function"+(_t.name?": "+_t.name:"")+"]","special");if(H(_t))return ge.stylize(RegExp.prototype.toString.call(_t),"regexp");if(ue(_t))return ge.stylize(Date.prototype.toString.call(_t),"date");if(R(_t))return v(_t)}var Ge,ot="",tt=!1,xe=["{","}"];return Z(_t)&&(tt=!0,xe=["[","]"]),r(_t)&&(ot=" [Function"+(_t.name?": "+_t.name:"")+"]"),H(_t)&&(ot=" "+RegExp.prototype.toString.call(_t)),ue(_t)&&(ot=" "+Date.prototype.toUTCString.call(_t)),R(_t)&&(ot=" "+v(_t)),0!==Rt.length||tt&&0!=_t.length?wt<0?H(_t)?ge.stylize(RegExp.prototype.toString.call(_t),"regexp"):ge.stylize("[Object]","special"):(ge.seen.push(_t),Ge=tt?function j(ge,_t,wt,qt,Lt){for(var Rt=[],it=0,Qe=_t.length;it60?wt[0]+(""===_t?"":_t+"\n ")+" "+ge.join(",\n ")+" "+wt[1]:wt[0]+_t+" "+ge.join(", ")+" "+wt[1]}(Ge,ot,xe)):xe[0]+ot+xe[1]}function v(ge){return"["+Error.prototype.toString.call(ge)+"]"}function Q(ge,_t,wt,qt,Lt,Rt){var it,Qe,ot;if((ot=Object.getOwnPropertyDescriptor(_t,Lt)||{value:_t[Lt]}).get?Qe=ge.stylize(ot.set?"[Getter/Setter]":"[Getter]","special"):ot.set&&(Qe=ge.stylize("[Setter]","special")),ve(qt,Lt)||(it="["+Lt+"]"),Qe||(ge.seen.indexOf(ot.value)<0?(Qe=N(wt)?B(ge,ot.value,null):B(ge,ot.value,wt-1)).indexOf("\n")>-1&&(Qe=Rt?Qe.split("\n").map(function(tt){return" "+tt}).join("\n").substr(2):"\n"+Qe.split("\n").map(function(tt){return" "+tt}).join("\n")):Qe=ge.stylize("[Circular]","special")),ie(it)){if(Rt&&Lt.match(/^\d+$/))return Qe;(it=JSON.stringify(""+Lt)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(it=it.substr(1,it.length-2),it=ge.stylize(it,"name")):(it=it.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),it=ge.stylize(it,"string"))}return it+": "+Qe}function Z(ge){return Array.isArray(ge)}function A(ge){return"boolean"==typeof ge}function N(ge){return null===ge}function k(ge){return"number"==typeof ge}function q(ge){return"string"==typeof ge}function ie(ge){return void 0===ge}function H(ge){return V(ge)&&"[object RegExp]"===Y(ge)}function V(ge){return"object"==typeof ge&&null!==ge}function ue(ge){return V(ge)&&"[object Date]"===Y(ge)}function R(ge){return V(ge)&&("[object Error]"===Y(ge)||ge instanceof Error)}function r(ge){return"function"==typeof ge}function Y(ge){return Object.prototype.toString.call(ge)}function se(ge){return ge<10?"0"+ge.toString(10):ge.toString(10)}K.debuglog=function(ge){if(ge=ge.toUpperCase(),!e[ge])if(p.test(ge)){var _t=process.pid;e[ge]=function(){var wt=K.format.apply(K,arguments);console.error("%s %d: %s",ge,_t,wt)}}else e[ge]=function(){};return e[ge]},K.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},K.types=n(54815),K.isArray=Z,K.isBoolean=A,K.isNull=N,K.isNullOrUndefined=function E(ge){return null==ge},K.isNumber=k,K.isString=q,K.isSymbol=function ce(ge){return"symbol"==typeof ge},K.isUndefined=ie,K.isRegExp=H,K.types.isRegExp=H,K.isObject=V,K.isDate=ue,K.types.isDate=ue,K.isError=R,K.types.isNativeError=R,K.isFunction=r,K.isPrimitive=function z(ge){return null===ge||"boolean"==typeof ge||"number"==typeof ge||"string"==typeof ge||"symbol"==typeof ge||void 0===ge},K.isBuffer=n(65068);var X=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function ne(){var ge=new Date,_t=[se(ge.getHours()),se(ge.getMinutes()),se(ge.getSeconds())].join(":");return[ge.getDate(),X[ge.getMonth()],_t].join(" ")}function ve(ge,_t){return Object.prototype.hasOwnProperty.call(ge,_t)}K.log=function(){console.log("%s - %s",ne(),K.format.apply(K,arguments))},K.inherits=n(55035),K._extend=function(ge,_t){if(!_t||!V(_t))return ge;for(var wt=Object.keys(_t),qt=wt.length;qt--;)ge[wt[qt]]=_t[wt[qt]];return ge};var Re="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function Ie(ge,_t){if(!ge){var wt=new Error("Promise was rejected with a falsy value");wt.reason=ge,ge=wt}return _t(ge)}K.promisify=function(_t){if("function"!=typeof _t)throw new TypeError('The "original" argument must be of type Function');if(Re&&_t[Re]){var wt;if("function"!=typeof(wt=_t[Re]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(wt,Re,{value:wt,enumerable:!1,writable:!1,configurable:!0}),wt}function wt(){for(var qt,Lt,Rt=new Promise(function(ot,tt){qt=ot,Lt=tt}),it=[],Qe=0;Qe1||ve(_t,wt)})})}function ve(_t,wt){try{!function Re(_t){_t.value instanceof A?Promise.resolve(_t.value.v).then(Ie,Ee):ge(X[0][2],_t)}(Y[_t](wt))}catch(qt){ge(X[0][3],qt)}}function Ie(_t){ve("next",_t)}function Ee(_t){ve("throw",_t)}function ge(_t,wt){_t(wt),X.shift(),X.length&&ve(X[0][0],X[0][1])}}function k(R){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var z,r=R[Symbol.asyncIterator];return r?r.call(R):(R=function v(R){var r="function"==typeof Symbol&&Symbol.iterator,z=r&&R[r],Y=0;if(z)return z.call(R);if(R&&"number"==typeof R.length)return{next:function(){return R&&Y>=R.length&&(R=void 0),{value:R&&R[Y++],done:!R}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}(R),z={},Y("next"),Y("throw"),Y("return"),z[Symbol.asyncIterator]=function(){return this},z);function Y(X){z[X]=R[X]&&function(ne){return new Promise(function(ve,Re){!function se(X,ne,ve,Re){Promise.resolve(Re).then(function(Ie){X({value:Ie,done:ve})},ne)}(ve,Re,(ne=R[X](ne)).done,ne.value)})}}}n.d(K,{mG:function(){return f},qq:function(){return A},FC:function(){return N},KL:function(){return k}})},34929:function(dt,K,n){"use strict";function d(R,r,z,Y){var ne,se=arguments.length,X=se<3?r:null===Y?Y=Object.getOwnPropertyDescriptor(r,z):Y;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)X=Reflect.decorate(R,r,z,Y);else for(var ve=R.length-1;ve>=0;ve--)(ne=R[ve])&&(X=(se<3?ne(X):se>3?ne(r,z,X):ne(r,z))||X);return se>3&&X&&Object.defineProperty(r,z,X),X}function h(R,r){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(R,r)}n.d(K,{gn:function(){return d},w6:function(){return h}})},35271:function(dt){"use strict";var K=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],n="undefined"==typeof globalThis?global:globalThis;dt.exports=function(){for(var t=[],e=0;e0&&T.selectedFile.emit(v.target.files[v.target.files.length-1]),v.preventDefault()},document.body.appendChild(this.fileInputElement);var B=this.fileInputElement;this.el.nativeElement.addEventListener("click",function(){B.click()})}}]),h}();return s.\u0275fac=function(f){return new(f||s)(e.Y36(e.SBq))},s.\u0275dir=e.lG2({type:s,selectors:[["","ncatsFileSelect",""]],inputs:{accept:"accept"},outputs:{selectedFile:"selectedFile"}}),s}(),d=function(){var s=(0,t.Z)(function h(){(0,P.Z)(this,h)});return s.\u0275fac=function(f){return new(f||s)},s.\u0275mod=e.oAB({type:s}),s.\u0275inj=e.cJS({imports:[[]]}),s}()},36513:function(dt,K,n){"use strict";n.d(K,{wL:function(){return s},Pt:function(){return h}});var P=n(48047),t=n(78069),e=n(76442),p=n(36362),s=function(){var f=function(){function T(B){(0,t.Z)(this,T),this.platformId=B,this.jsDrawOnLoad=new e.vpe,this.randomId=Math.random().toString(36).replace("0.","")}return(0,P.Z)(T,[{key:"ngAfterViewInit",value:function(){this.loadEditor()}},{key:"loadEditor",value:function(){var I=this,v=0;(0,p.NF)(this.platformId)&&(window.JSDraw&&window.dojo&&window.scil&&window.scil.Utils&&window.scil.Utils._loadedAdditions?window.dojo.ready(function(){I.jsdraw=new window.JSDraw(I.randomId),I.jsDrawOnLoad.emit(I.jsdraw),window.afterSketcherMade&&window.afterSketcherMade()}):v<5e3&&(v++,setTimeout(function(){I.loadEditor()},10)))}}]),T}();return f.\u0275fac=function(B){return new(B||f)(e.Y36(e.Lbi))},f.\u0275cmp=e.Xpm({type:f,selectors:[["ncats-jsdraw-wrapper"]],outputs:{jsDrawOnLoad:"jsDrawOnLoad"},decls:1,vars:1,consts:[["dataformat","molfile",3,"id"]],template:function(B,I){1&B&&e._UZ(0,"div",0),2&B&&e.Q6J("id",I.randomId)},encapsulation:2}),f}(),h=function(){var f=(0,P.Z)(function T(){(0,t.Z)(this,T)});return f.\u0275fac=function(B){return new(B||f)},f.\u0275mod=e.oAB({type:f}),f.\u0275inj=e.cJS({imports:[[]]}),f}()},3380:function(dt,K,n){"use strict";n.d(K,{XZ:function(){return h},QW:function(){return f}});var P=n(48047),t=n(78069),e=n(76442),p=n(50318),s=["ketcherFrame"],h=function(){var T=function(){function B(I){(0,t.Z)(this,B),this.sanitizer=I,this.ketcherOnLoad=new e.vpe}return(0,P.Z)(B,[{key:"ngOnInit",value:function(){var v=this;this.safeKetcherFilePath=this.sanitizer.bypassSecurityTrustResourceUrl(this.ketcherFilePath),this.ketcherFrame.nativeElement.onload=function(){v.ketcherOnLoad.emit(v.ketcherFrame.nativeElement.contentWindow.ketcher)}}}]),B}();return T.\u0275fac=function(I){return new(I||T)(e.Y36(p.H7))},T.\u0275cmp=e.Xpm({type:T,selectors:[["ncats-ketcher-wrapper"]],viewQuery:function(I,v){var j;1&I&&e.Gf(s,7),2&I&&e.iGM(j=e.CRH())&&(v.ketcherFrame=j.first)},inputs:{ketcherFilePath:"ketcherFilePath"},outputs:{ketcherOnLoad:"ketcherOnLoad"},decls:2,vars:1,consts:[["id","ketcher-frame","scrolling","no",3,"src"],["ketcherFrame",""]],template:function(I,v){1&I&&e._UZ(0,"iframe",0,1),2&I&&e.Q6J("src",v.safeKetcherFilePath,e.uOi)},styles:["iframe[_ngcontent-%COMP%]{width:100%;height:100%;border:none}"]}),T}(),f=function(){var T=(0,P.Z)(function B(){(0,t.Z)(this,B)});return T.\u0275fac=function(I){return new(I||T)},T.\u0275mod=e.oAB({type:T}),T.\u0275inj=e.cJS({imports:[[]]}),T}()},31631:function(dt,K,n){"use strict";n.d(K,{l3:function(){return d},_j:function(){return e},LC:function(){return p},ZN:function(){return k},jt:function(){return h},pV:function(){return J},F4:function(){return v},IO:function(){return A},vP:function(){return T},SB:function(){return I},oB:function(){return B},eR:function(){return j},X$:function(){return s},ZE:function(){return q},k1:function(){return ce}});var P=n(48047),t=n(78069),e=(0,P.Z)(function ie(){(0,t.Z)(this,ie)}),p=(0,P.Z)(function ie(){(0,t.Z)(this,ie)}),d="*";function s(ie,H){return{type:7,name:ie,definitions:H,options:{}}}function h(ie){var H=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:4,styles:H,timings:ie}}function T(ie){var H=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:2,steps:ie,options:H}}function B(ie){return{type:6,styles:ie,offset:null}}function I(ie,H,V){return{type:0,name:ie,styles:H,options:V}}function v(ie){return{type:5,steps:ie}}function j(ie,H){var V=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:1,expr:ie,animation:H,options:V}}function J(){var ie=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return{type:9,options:ie}}function A(ie,H){var V=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:11,selector:ie,animation:H,options:V}}function E(ie){Promise.resolve(null).then(ie)}var k=function(){function ie(){var H=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,V=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;(0,t.Z)(this,ie),this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=H+V}return(0,P.Z)(ie,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(V){return V()}),this._onDoneFns=[])}},{key:"onStart",value:function(V){this._onStartFns.push(V)}},{key:"onDone",value:function(V){this._onDoneFns.push(V)}},{key:"onDestroy",value:function(V){this._onDestroyFns.push(V)}},{key:"hasStarted",value:function(){return this._started}},{key:"init",value:function(){}},{key:"play",value:function(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}},{key:"triggerMicrotask",value:function(){var V=this;E(function(){return V._onFinish()})}},{key:"_onStart",value:function(){this._onStartFns.forEach(function(V){return V()}),this._onStartFns=[]}},{key:"pause",value:function(){}},{key:"restart",value:function(){}},{key:"finish",value:function(){this._onFinish()}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(function(V){return V()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this._started=!1}},{key:"setPosition",value:function(V){this._position=this.totalTime?V*this.totalTime:1}},{key:"getPosition",value:function(){return this.totalTime?this._position/this.totalTime:1}},{key:"triggerCallback",value:function(V){var ue="start"==V?this._onStartFns:this._onDoneFns;ue.forEach(function(R){return R()}),ue.length=0}}]),ie}(),q=function(){function ie(H){var V=this;(0,t.Z)(this,ie),this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=H;var ue=0,R=0,r=0,z=this.players.length;0==z?E(function(){return V._onFinish()}):this.players.forEach(function(Y){Y.onDone(function(){++ue==z&&V._onFinish()}),Y.onDestroy(function(){++R==z&&V._onDestroy()}),Y.onStart(function(){++r==z&&V._onStart()})}),this.totalTime=this.players.reduce(function(Y,se){return Math.max(Y,se.totalTime)},0)}return(0,P.Z)(ie,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(V){return V()}),this._onDoneFns=[])}},{key:"init",value:function(){this.players.forEach(function(V){return V.init()})}},{key:"onStart",value:function(V){this._onStartFns.push(V)}},{key:"_onStart",value:function(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(function(V){return V()}),this._onStartFns=[])}},{key:"onDone",value:function(V){this._onDoneFns.push(V)}},{key:"onDestroy",value:function(V){this._onDestroyFns.push(V)}},{key:"hasStarted",value:function(){return this._started}},{key:"play",value:function(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(function(V){return V.play()})}},{key:"pause",value:function(){this.players.forEach(function(V){return V.pause()})}},{key:"restart",value:function(){this.players.forEach(function(V){return V.restart()})}},{key:"finish",value:function(){this._onFinish(),this.players.forEach(function(V){return V.finish()})}},{key:"destroy",value:function(){this._onDestroy()}},{key:"_onDestroy",value:function(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(function(V){return V.destroy()}),this._onDestroyFns.forEach(function(V){return V()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this.players.forEach(function(V){return V.reset()}),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"setPosition",value:function(V){var ue=V*this.totalTime;this.players.forEach(function(R){var r=R.totalTime?Math.min(1,ue/R.totalTime):1;R.setPosition(r)})}},{key:"getPosition",value:function(){var V=this.players.reduce(function(ue,R){return null===ue||R.totalTime>ue.totalTime?R:ue},null);return null!=V?V.getPosition():0}},{key:"beforeDestroy",value:function(){this.players.forEach(function(V){V.beforeDestroy&&V.beforeDestroy()})}},{key:"triggerCallback",value:function(V){var ue="start"==V?this._onStartFns:this._onDoneFns;ue.forEach(function(R){return R()}),ue.length=0}}]),ie}(),ce="!"},84128:function(dt,K,n){"use strict";n.d(K,{rt:function(){return jt},s1:function(){return ge},$s:function(){return ve},Qr:function(){return wn},kH:function(){return Un},mK:function(){return je},Em:function(){return _t},tE:function(){return Jn},qV:function(){return qe},qm:function(){return sn},ic:function(){return qt},Kd:function(){return _n},X6:function(){return ut},yG:function(){return yt}});var P=n(32090),t=n(4089),e=n(20265),p=n(24582),d=n(7318),s=n(78069),h=n(48047),f=n(36362),T=n(76442),B=n(14390),I=n(50253),v=n(17714),j=n(76317),Q=n(10745),J=n(75939),Z=n(19337),A=n(71989),N=n(60116),E=n(50635),k=n(59295),q=n(87260),ce=n(98977),ie=n(68951),H=n(76484),V=n(35837);function z(Ue,et){return(Ue.getAttribute(et)||"").match(/\S+/g)||[]}var se="cdk-describedby-message",X="cdk-describedby-host",ne=0,ve=function(){var Ue=function(){function et(De,Ze){(0,s.Z)(this,et),this._platform=Ze,this._messageRegistry=new Map,this._messagesContainer=null,this._id="".concat(ne++),this._document=De}return(0,h.Z)(et,[{key:"describe",value:function(Ze,Je,Ve){if(this._canBeDescribed(Ze,Je)){var pt=Re(Je,Ve);"string"!=typeof Je?(Ie(Je),this._messageRegistry.set(pt,{messageElement:Je,referenceCount:0})):this._messageRegistry.has(pt)||this._createMessageElement(Je,Ve),this._isElementDescribedByMessage(Ze,pt)||this._addMessageReference(Ze,pt)}}},{key:"removeDescription",value:function(Ze,Je,Ve){var pt;if(Je&&this._isElementNode(Ze)){var kt=Re(Je,Ve);if(this._isElementDescribedByMessage(Ze,kt)&&this._removeMessageReference(Ze,kt),"string"==typeof Je){var en=this._messageRegistry.get(kt);en&&0===en.referenceCount&&this._deleteMessageElement(kt)}0===(null===(pt=this._messagesContainer)||void 0===pt?void 0:pt.childNodes.length)&&(this._messagesContainer.remove(),this._messagesContainer=null)}}},{key:"ngOnDestroy",value:function(){for(var Ze,Je=this._document.querySelectorAll("[".concat(X,'="').concat(this._id,'"]')),Ve=0;Ve-1&&Ve!==De._activeItemIndex&&(De._activeItemIndex=Ve)}})}return(0,h.Z)(Ue,[{key:"skipPredicate",value:function(De){return this._skipPredicateFn=De,this}},{key:"withWrap",value:function(){var De=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._wrap=De,this}},{key:"withVerticalOrientation",value:function(){var De=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._vertical=De,this}},{key:"withHorizontalOrientation",value:function(De){return this._horizontal=De,this}},{key:"withAllowedModifierKeys",value:function(De){return this._allowedModifierKeys=De,this}},{key:"withTypeAhead",value:function(){var De=this,Ze=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200;return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe((0,Z.b)(function(Je){return De._pressedLetters.push(Je)}),(0,A.b)(Ze),(0,N.h)(function(){return De._pressedLetters.length>0}),(0,E.U)(function(){return De._pressedLetters.join("")})).subscribe(function(Je){for(var Ve=De._getItemsArray(),pt=1;pt0&&void 0!==arguments[0])||arguments[0];return this._homeAndEnd=De,this}},{key:"setActiveItem",value:function(De){var Ze=this._activeItem;this.updateActiveItem(De),this._activeItem!==Ze&&this.change.next(this._activeItemIndex)}},{key:"onKeydown",value:function(De){var Ze=this,Je=De.keyCode,pt=["altKey","ctrlKey","metaKey","shiftKey"].every(function(kt){return!De[kt]||Ze._allowedModifierKeys.indexOf(kt)>-1});switch(Je){case J.Mf:return void this.tabOut.next();case J.JH:if(this._vertical&&pt){this.setNextItemActive();break}return;case J.LH:if(this._vertical&&pt){this.setPreviousItemActive();break}return;case J.SV:if(this._horizontal&&pt){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case J.oh:if(this._horizontal&&pt){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case J.Sd:if(this._homeAndEnd&&pt){this.setFirstItemActive();break}return;case J.uR:if(this._homeAndEnd&&pt){this.setLastItemActive();break}return;default:return void((pt||(0,J.Vb)(De,"shiftKey"))&&(De.key&&1===De.key.length?this._letterKeyStream.next(De.key.toLocaleUpperCase()):(Je>=J.A&&Je<=J.Z||Je>=J.xE&&Je<=J.aO)&&this._letterKeyStream.next(String.fromCharCode(Je))))}this._pressedLetters=[],De.preventDefault()}},{key:"activeItemIndex",get:function(){return this._activeItemIndex}},{key:"activeItem",get:function(){return this._activeItem}},{key:"isTyping",value:function(){return this._pressedLetters.length>0}},{key:"setFirstItemActive",value:function(){this._setActiveItemByIndex(0,1)}},{key:"setLastItemActive",value:function(){this._setActiveItemByIndex(this._items.length-1,-1)}},{key:"setNextItemActive",value:function(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}},{key:"setPreviousItemActive",value:function(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}},{key:"updateActiveItem",value:function(De){var Ze=this._getItemsArray(),Je="number"==typeof De?De:Ze.indexOf(De),Ve=Ze[Je];this._activeItem=null==Ve?null:Ve,this._activeItemIndex=Je}},{key:"_setActiveItemByDelta",value:function(De){this._wrap?this._setActiveInWrapMode(De):this._setActiveInDefaultMode(De)}},{key:"_setActiveInWrapMode",value:function(De){for(var Ze=this._getItemsArray(),Je=1;Je<=Ze.length;Je++){var Ve=(this._activeItemIndex+De*Je+Ze.length)%Ze.length;if(!this._skipPredicateFn(Ze[Ve]))return void this.setActiveItem(Ve)}}},{key:"_setActiveInDefaultMode",value:function(De){this._setActiveItemByIndex(this._activeItemIndex+De,De)}},{key:"_setActiveItemByIndex",value:function(De,Ze){var Je=this._getItemsArray();if(Je[De]){for(;this._skipPredicateFn(Je[De]);)if(!Je[De+=Ze])return;this.setActiveItem(De)}}},{key:"_getItemsArray",value:function(){return this._items instanceof T.n_E?this._items.toArray():this._items}}]),Ue}(),ge=function(Ue){(0,p.Z)(De,Ue);var et=(0,d.Z)(De);function De(){return(0,s.Z)(this,De),et.apply(this,arguments)}return(0,h.Z)(De,[{key:"setActiveItem",value:function(Je){this.activeItem&&this.activeItem.setInactiveStyles(),(0,t.Z)((0,e.Z)(De.prototype),"setActiveItem",this).call(this,Je),this.activeItem&&this.activeItem.setActiveStyles()}}]),De}(Ee),_t=function(Ue){(0,p.Z)(De,Ue);var et=(0,d.Z)(De);function De(){var Ze;return(0,s.Z)(this,De),(Ze=et.apply(this,arguments))._origin="program",Ze}return(0,h.Z)(De,[{key:"setFocusOrigin",value:function(Je){return this._origin=Je,this}},{key:"setActiveItem",value:function(Je){(0,t.Z)((0,e.Z)(De.prototype),"setActiveItem",this).call(this,Je),this.activeItem&&this.activeItem.focus(this._origin)}}]),De}(Ee),qt=function(){var Ue=function(){function et(De){(0,s.Z)(this,et),this._platform=De}return(0,h.Z)(et,[{key:"isDisabled",value:function(Ze){return Ze.hasAttribute("disabled")}},{key:"isVisible",value:function(Ze){return function Rt(Ue){return!!(Ue.offsetWidth||Ue.offsetHeight||"function"==typeof Ue.getClientRects&&Ue.getClientRects().length)}(Ze)&&"visible"===getComputedStyle(Ze).visibility}},{key:"isTabbable",value:function(Ze){if(!this._platform.isBrowser)return!1;var Je=function Lt(Ue){try{return Ue.frameElement}catch(et){return null}}(function Te(Ue){return Ue.ownerDocument&&Ue.ownerDocument.defaultView||window}(Ze));if(Je&&(-1===Ge(Je)||!this.isVisible(Je)))return!1;var Ve=Ze.nodeName.toLowerCase(),pt=Ge(Ze);return Ze.hasAttribute("contenteditable")?-1!==pt:!("iframe"===Ve||"object"===Ve||this._platform.WEBKIT&&this._platform.IOS&&!function ct(Ue){var et=Ue.nodeName.toLowerCase(),De="input"===et&&Ue.type;return"text"===De||"password"===De||"select"===et||"textarea"===et}(Ze))&&("audio"===Ve?!!Ze.hasAttribute("controls")&&-1!==pt:"video"===Ve?-1!==pt&&(null!==pt||this._platform.FIREFOX||Ze.hasAttribute("controls")):Ze.tabIndex>=0)}},{key:"isFocusable",value:function(Ze,Je){return function Xe(Ue){return!function Qe(Ue){return function tt(Ue){return"input"==Ue.nodeName.toLowerCase()}(Ue)&&"hidden"==Ue.type}(Ue)&&(function it(Ue){var et=Ue.nodeName.toLowerCase();return"input"===et||"select"===et||"button"===et||"textarea"===et}(Ue)||function ot(Ue){return function xe(Ue){return"a"==Ue.nodeName.toLowerCase()}(Ue)&&Ue.hasAttribute("href")}(Ue)||Ue.hasAttribute("contenteditable")||$e(Ue))}(Ze)&&!this.isDisabled(Ze)&&((null==Je?void 0:Je.ignoreVisibility)||this.isVisible(Ze))}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(T.LFG(B.t4))},Ue.\u0275prov=T.Yz7({token:Ue,factory:Ue.\u0275fac,providedIn:"root"}),Ue}();function $e(Ue){if(!Ue.hasAttribute("tabindex")||void 0===Ue.tabIndex)return!1;var et=Ue.getAttribute("tabindex");return!(!et||isNaN(parseInt(et,10)))}function Ge(Ue){if(!$e(Ue))return null;var et=parseInt(Ue.getAttribute("tabindex")||"",10);return isNaN(et)?-1:et}var vt=function(){function Ue(et,De,Ze,Je){var Ve=this,pt=arguments.length>4&&void 0!==arguments[4]&&arguments[4];(0,s.Z)(this,Ue),this._element=et,this._checker=De,this._ngZone=Ze,this._document=Je,this._hasAttached=!1,this.startAnchorListener=function(){return Ve.focusLastTabbableElement()},this.endAnchorListener=function(){return Ve.focusFirstTabbableElement()},this._enabled=!0,pt||this.attachAnchors()}return(0,h.Z)(Ue,[{key:"enabled",get:function(){return this._enabled},set:function(De){this._enabled=De,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(De,this._startAnchor),this._toggleAnchorTabIndex(De,this._endAnchor))}},{key:"destroy",value:function(){var De=this._startAnchor,Ze=this._endAnchor;De&&(De.removeEventListener("focus",this.startAnchorListener),De.remove()),Ze&&(Ze.removeEventListener("focus",this.endAnchorListener),Ze.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}},{key:"attachAnchors",value:function(){var De=this;return!!this._hasAttached||(this._ngZone.runOutsideAngular(function(){De._startAnchor||(De._startAnchor=De._createAnchor(),De._startAnchor.addEventListener("focus",De.startAnchorListener)),De._endAnchor||(De._endAnchor=De._createAnchor(),De._endAnchor.addEventListener("focus",De.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}},{key:"focusInitialElementWhenReady",value:function(De){var Ze=this;return new Promise(function(Je){Ze._executeOnStable(function(){return Je(Ze.focusInitialElement(De))})})}},{key:"focusFirstTabbableElementWhenReady",value:function(De){var Ze=this;return new Promise(function(Je){Ze._executeOnStable(function(){return Je(Ze.focusFirstTabbableElement(De))})})}},{key:"focusLastTabbableElementWhenReady",value:function(De){var Ze=this;return new Promise(function(Je){Ze._executeOnStable(function(){return Je(Ze.focusLastTabbableElement(De))})})}},{key:"_getRegionBoundary",value:function(De){var Ze=this._element.querySelectorAll("[cdk-focus-region-".concat(De,"], ")+"[cdkFocusRegion".concat(De,"], ")+"[cdk-focus-".concat(De,"]"));return"start"==De?Ze.length?Ze[0]:this._getFirstTabbableElement(this._element):Ze.length?Ze[Ze.length-1]:this._getLastTabbableElement(this._element)}},{key:"focusInitialElement",value:function(De){var Ze=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(Ze){if(!this._checker.isFocusable(Ze)){var Je=this._getFirstTabbableElement(Ze);return null==Je||Je.focus(De),!!Je}return Ze.focus(De),!0}return this.focusFirstTabbableElement(De)}},{key:"focusFirstTabbableElement",value:function(De){var Ze=this._getRegionBoundary("start");return Ze&&Ze.focus(De),!!Ze}},{key:"focusLastTabbableElement",value:function(De){var Ze=this._getRegionBoundary("end");return Ze&&Ze.focus(De),!!Ze}},{key:"hasAttached",value:function(){return this._hasAttached}},{key:"_getFirstTabbableElement",value:function(De){if(this._checker.isFocusable(De)&&this._checker.isTabbable(De))return De;for(var Ze=De.children,Je=0;Je=0;Je--){var Ve=Ze[Je].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(Ze[Je]):null;if(Ve)return Ve}return null}},{key:"_createAnchor",value:function(){var De=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,De),De.classList.add("cdk-visually-hidden"),De.classList.add("cdk-focus-trap-anchor"),De.setAttribute("aria-hidden","true"),De}},{key:"_toggleAnchorTabIndex",value:function(De,Ze){De?Ze.setAttribute("tabindex","0"):Ze.removeAttribute("tabindex")}},{key:"toggleAnchors",value:function(De){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(De,this._startAnchor),this._toggleAnchorTabIndex(De,this._endAnchor))}},{key:"_executeOnStable",value:function(De){this._ngZone.isStable?De():this._ngZone.onStable.pipe((0,k.q)(1)).subscribe(De)}}]),Ue}(),qe=function(){var Ue=function(){function et(De,Ze,Je){(0,s.Z)(this,et),this._checker=De,this._ngZone=Ze,this._document=Je}return(0,h.Z)(et,[{key:"create",value:function(Ze){var Je=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new vt(Ze,this._checker,this._ngZone,this._document,Je)}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(T.LFG(qt),T.LFG(T.R0b),T.LFG(f.K0))},Ue.\u0275prov=T.Yz7({token:Ue,factory:Ue.\u0275fac,providedIn:"root"}),Ue}(),je=function(){var Ue=function(){function et(De,Ze,Je){(0,s.Z)(this,et),this._elementRef=De,this._focusTrapFactory=Ze,this._previouslyFocusedElement=null,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}return(0,h.Z)(et,[{key:"enabled",get:function(){return this.focusTrap.enabled},set:function(Ze){this.focusTrap.enabled=(0,H.Ig)(Ze)}},{key:"autoCapture",get:function(){return this._autoCapture},set:function(Ze){this._autoCapture=(0,H.Ig)(Ze)}},{key:"ngOnDestroy",value:function(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}},{key:"ngAfterContentInit",value:function(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}},{key:"ngDoCheck",value:function(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}},{key:"ngOnChanges",value:function(Ze){var Je=Ze.autoCapture;Je&&!Je.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}},{key:"_captureFocus",value:function(){this._previouslyFocusedElement=(0,B.ht)(),this.focusTrap.focusInitialElementWhenReady()}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(T.Y36(T.SBq),T.Y36(qe),T.Y36(f.K0))},Ue.\u0275dir=T.lG2({type:Ue,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:["cdkTrapFocus","enabled"],autoCapture:["cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["cdkTrapFocus"],features:[T.TTD]}),Ue}();function ut(Ue){return 0===Ue.buttons||0===Ue.offsetX&&0===Ue.offsetY}function yt(Ue){var et=Ue.touches&&Ue.touches[0]||Ue.changedTouches&&Ue.changedTouches[0];return!(!et||-1!==et.identifier||null!=et.radiusX&&1!==et.radiusX||null!=et.radiusY&&1!==et.radiusY)}var be=new T.OlP("cdk-input-modality-detector-options"),we={ignoreKeys:[J.zL,J.jx,J.b2,J.MW,J.JU]},$=(0,B.i$)({passive:!0,capture:!0}),Ae=function(){var Ue=function(){function et(De,Ze,Je,Ve){var pt=this;(0,s.Z)(this,et),this._platform=De,this._mostRecentTarget=null,this._modality=new j.X(null),this._lastTouchMs=0,this._onKeydown=function(kt){var en,Zn;(null===(Zn=null===(en=pt._options)||void 0===en?void 0:en.ignoreKeys)||void 0===Zn?void 0:Zn.some(function(zt){return zt===kt.keyCode}))||(pt._modality.next("keyboard"),pt._mostRecentTarget=(0,B.sA)(kt))},this._onMousedown=function(kt){Date.now()-pt._lastTouchMs<650||(pt._modality.next(ut(kt)?"keyboard":"mouse"),pt._mostRecentTarget=(0,B.sA)(kt))},this._onTouchstart=function(kt){yt(kt)?pt._modality.next("keyboard"):(pt._lastTouchMs=Date.now(),pt._modality.next("touch"),pt._mostRecentTarget=(0,B.sA)(kt))},this._options=Object.assign(Object.assign({},we),Ve),this.modalityDetected=this._modality.pipe((0,q.T)(1)),this.modalityChanged=this.modalityDetected.pipe((0,ce.x)()),De.isBrowser&&Ze.runOutsideAngular(function(){Je.addEventListener("keydown",pt._onKeydown,$),Je.addEventListener("mousedown",pt._onMousedown,$),Je.addEventListener("touchstart",pt._onTouchstart,$)})}return(0,h.Z)(et,[{key:"mostRecentModality",get:function(){return this._modality.value}},{key:"ngOnDestroy",value:function(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,$),document.removeEventListener("mousedown",this._onMousedown,$),document.removeEventListener("touchstart",this._onTouchstart,$))}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(T.LFG(B.t4),T.LFG(T.R0b),T.LFG(f.K0),T.LFG(be,8))},Ue.\u0275prov=T.Yz7({token:Ue,factory:Ue.\u0275fac,providedIn:"root"}),Ue}(),ft=new T.OlP("liveAnnouncerElement",{providedIn:"root",factory:function gt(){return null}}),Bt=new T.OlP("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),_n=function(){var Ue=function(){function et(De,Ze,Je,Ve){(0,s.Z)(this,et),this._ngZone=Ze,this._defaultOptions=Ve,this._document=Je,this._liveElement=De||this._createLiveElement()}return(0,h.Z)(et,[{key:"announce",value:function(Ze){for(var pt,kt,Je=this,Ve=this._defaultOptions,en=arguments.length,Zn=new Array(en>1?en-1:0),zt=1;zt1&&void 0!==arguments[1]&&arguments[1],Ve=(0,H.fI)(Ze);if(!this._platform.isBrowser||1!==Ve.nodeType)return(0,Q.of)(null);var pt=(0,B.kV)(Ve)||this._getDocument(),kt=this._elementInfo.get(Ve);if(kt)return Je&&(kt.checkChildren=!0),kt.subject;var en={checkChildren:Je,subject:new I.x,rootNode:pt};return this._elementInfo.set(Ve,en),this._registerGlobalListeners(en),en.subject}},{key:"stopMonitoring",value:function(Ze){var Je=(0,H.fI)(Ze),Ve=this._elementInfo.get(Je);Ve&&(Ve.subject.complete(),this._setClasses(Je),this._elementInfo.delete(Je),this._removeGlobalListeners(Ve))}},{key:"focusVia",value:function(Ze,Je,Ve){var pt=this,kt=(0,H.fI)(Ze);kt===this._getDocument().activeElement?this._getClosestElementsInfo(kt).forEach(function(Zn){var zt=(0,P.Z)(Zn,2);return pt._originChanged(zt[0],Je,zt[1])}):(this._setOrigin(Je),"function"==typeof kt.focus&&kt.focus(Ve))}},{key:"ngOnDestroy",value:function(){var Ze=this;this._elementInfo.forEach(function(Je,Ve){return Ze.stopMonitoring(Ve)})}},{key:"_getDocument",value:function(){return this._document||document}},{key:"_getWindow",value:function(){return this._getDocument().defaultView||window}},{key:"_getFocusOrigin",value:function(Ze){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(Ze)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}},{key:"_shouldBeAttributedToTouch",value:function(Ze){return 1===this._detectionMode||!!(null==Ze?void 0:Ze.contains(this._inputModalityDetector._mostRecentTarget))}},{key:"_setClasses",value:function(Ze,Je){Ze.classList.toggle("cdk-focused",!!Je),Ze.classList.toggle("cdk-touch-focused","touch"===Je),Ze.classList.toggle("cdk-keyboard-focused","keyboard"===Je),Ze.classList.toggle("cdk-mouse-focused","mouse"===Je),Ze.classList.toggle("cdk-program-focused","program"===Je)}},{key:"_setOrigin",value:function(Ze){var Je=this,Ve=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._ngZone.runOutsideAngular(function(){Je._origin=Ze,Je._originFromTouchInteraction="touch"===Ze&&Ve,0===Je._detectionMode&&(clearTimeout(Je._originTimeoutId),Je._originTimeoutId=setTimeout(function(){return Je._origin=null},Je._originFromTouchInteraction?650:1))})}},{key:"_onFocus",value:function(Ze,Je){var Ve=this._elementInfo.get(Je),pt=(0,B.sA)(Ze);!Ve||!Ve.checkChildren&&Je!==pt||this._originChanged(Je,this._getFocusOrigin(pt),Ve)}},{key:"_onBlur",value:function(Ze,Je){var Ve=this._elementInfo.get(Je);!Ve||Ve.checkChildren&&Ze.relatedTarget instanceof Node&&Je.contains(Ze.relatedTarget)||(this._setClasses(Je),this._emitOrigin(Ve.subject,null))}},{key:"_emitOrigin",value:function(Ze,Je){this._ngZone.run(function(){return Ze.next(Je)})}},{key:"_registerGlobalListeners",value:function(Ze){var Je=this;if(this._platform.isBrowser){var Ve=Ze.rootNode,pt=this._rootNodeFocusListenerCount.get(Ve)||0;pt||this._ngZone.runOutsideAngular(function(){Ve.addEventListener("focus",Je._rootNodeFocusAndBlurListener,On),Ve.addEventListener("blur",Je._rootNodeFocusAndBlurListener,On)}),this._rootNodeFocusListenerCount.set(Ve,pt+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(function(){Je._getWindow().addEventListener("focus",Je._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe((0,ie.R)(this._stopInputModalityDetector)).subscribe(function(kt){Je._setOrigin(kt,!0)}))}}},{key:"_removeGlobalListeners",value:function(Ze){var Je=Ze.rootNode;if(this._rootNodeFocusListenerCount.has(Je)){var Ve=this._rootNodeFocusListenerCount.get(Je);Ve>1?this._rootNodeFocusListenerCount.set(Je,Ve-1):(Je.removeEventListener("focus",this._rootNodeFocusAndBlurListener,On),Je.removeEventListener("blur",this._rootNodeFocusAndBlurListener,On),this._rootNodeFocusListenerCount.delete(Je))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}},{key:"_originChanged",value:function(Ze,Je,Ve){this._setClasses(Ze,Je),this._emitOrigin(Ve.subject,Je),this._lastFocusOrigin=Je}},{key:"_getClosestElementsInfo",value:function(Ze){var Je=[];return this._elementInfo.forEach(function(Ve,pt){(pt===Ze||Ve.checkChildren&&pt.contains(Ze))&&Je.push([pt,Ve])}),Je}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(T.LFG(T.R0b),T.LFG(B.t4),T.LFG(Ae),T.LFG(f.K0,8),T.LFG(Tn,8))},Ue.\u0275prov=T.Yz7({token:Ue,factory:Ue.\u0275fac,providedIn:"root"}),Ue}(),Un=function(){var Ue=function(){function et(De,Ze){(0,s.Z)(this,et),this._elementRef=De,this._focusMonitor=Ze,this.cdkFocusChange=new T.vpe}return(0,h.Z)(et,[{key:"ngAfterViewInit",value:function(){var Ze=this,Je=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(Je,1===Je.nodeType&&Je.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(function(Ve){return Ze.cdkFocusChange.emit(Ve)})}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(T.Y36(T.SBq),T.Y36(Jn))},Ue.\u0275dir=T.lG2({type:Ue,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"}}),Ue}(),si="cdk-high-contrast-black-on-white",fi="cdk-high-contrast-white-on-black",rn="cdk-high-contrast-active",sn=function(){var Ue=function(){function et(De,Ze){(0,s.Z)(this,et),this._platform=De,this._document=Ze}return(0,h.Z)(et,[{key:"getHighContrastMode",value:function(){if(!this._platform.isBrowser)return 0;var Ze=this._document.createElement("div");Ze.style.backgroundColor="rgb(1,2,3)",Ze.style.position="absolute",this._document.body.appendChild(Ze);var Je=this._document.defaultView||window,Ve=Je&&Je.getComputedStyle?Je.getComputedStyle(Ze):null,pt=(Ve&&Ve.backgroundColor||"").replace(/ /g,"");switch(Ze.remove(),pt){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}},{key:"_applyBodyHighContrastModeCssClasses",value:function(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){var Ze=this._document.body.classList;Ze.remove(rn),Ze.remove(si),Ze.remove(fi),this._hasCheckedHighContrastMode=!0;var Je=this.getHighContrastMode();1===Je?(Ze.add(rn),Ze.add(si)):2===Je&&(Ze.add(rn),Ze.add(fi))}}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(T.LFG(B.t4),T.LFG(f.K0))},Ue.\u0275prov=T.Yz7({token:Ue,factory:Ue.\u0275fac,providedIn:"root"}),Ue}(),jt=function(){var Ue=(0,h.Z)(function et(De){(0,s.Z)(this,et),De._applyBodyHighContrastModeCssClasses()});return Ue.\u0275fac=function(De){return new(De||Ue)(T.LFG(sn))},Ue.\u0275mod=T.oAB({type:Ue}),Ue.\u0275inj=T.cJS({imports:[[B.ud,V.Q8]]}),Ue}()},51588:function(dt,K,n){"use strict";n.d(K,{vT:function(){return I},Is:function(){return T}});var P=n(78069),t=n(48047),e=n(76442),p=n(36362),d=new e.OlP("cdk-dir-doc",{providedIn:"root",factory:function s(){return(0,e.f3M)(p.K0)}}),h=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i,T=function(){var v=function(){function j(Q){(0,P.Z)(this,j),this.value="ltr",this.change=new e.vpe,Q&&(this.value=function f(v){var j=(null==v?void 0:v.toLowerCase())||"";return"auto"===j&&"undefined"!=typeof navigator&&(null==navigator?void 0:navigator.language)?h.test(navigator.language)?"rtl":"ltr":"rtl"===j?"rtl":"ltr"}((Q.body?Q.body.dir:null)||(Q.documentElement?Q.documentElement.dir:null)||"ltr"))}return(0,t.Z)(j,[{key:"ngOnDestroy",value:function(){this.change.complete()}}]),j}();return v.\u0275fac=function(Q){return new(Q||v)(e.LFG(d,8))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),I=function(){var v=(0,t.Z)(function j(){(0,P.Z)(this,j)});return v.\u0275fac=function(Q){return new(Q||v)},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({}),v}()},76484:function(dt,K,n){"use strict";n.d(K,{t6:function(){return d},Eq:function(){return s},Ig:function(){return e},HM:function(){return h},fI:function(){return f},su:function(){return p},du:function(){return T}});var P=n(95106),t=n(76442);function e(B){return null!=B&&"false"!=="".concat(B)}function p(B){var I=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return d(B)?Number(B):I}function d(B){return!isNaN(parseFloat(B))&&!isNaN(Number(B))}function s(B){return Array.isArray(B)?B:[B]}function h(B){return null==B?"":"string"==typeof B?B:"".concat(B,"px")}function f(B){return B instanceof t.SBq?B.nativeElement:B}function T(B){var I=arguments.length>1&&void 0!==arguments[1]?arguments[1]:/\s+/,v=[];if(null!=B){var J,j=Array.isArray(B)?B:"".concat(B).split(I),Q=(0,P.Z)(j);try{for(Q.s();!(J=Q.n()).done;){var Z=J.value,A="".concat(Z).trim();A&&v.push(A)}}catch(N){Q.e(N)}finally{Q.f()}}return v}},89502:function(dt,K,n){"use strict";n.d(K,{P3:function(){return v},o2:function(){return B},Ov:function(){return J},A8:function(){return A},yy:function(){return j},eX:function(){return Q},k:function(){return N},Z9:function(){return I}});var P=n(95106),t=n(24582),e=n(7318),p=n(48047),d=n(78069),s=n(14437),h=n(10745),f=n(50253),T=n(76442),B=(0,p.Z)(function E(){(0,d.Z)(this,E)});function I(E){return E&&"function"==typeof E.connect}var v=function(E){(0,t.Z)(q,E);var k=(0,e.Z)(q);function q(ce){var ie;return(0,d.Z)(this,q),(ie=k.call(this))._data=ce,ie}return(0,p.Z)(q,[{key:"connect",value:function(){return(0,s.b)(this._data)?this._data:(0,h.of)(this._data)}},{key:"disconnect",value:function(){}}]),q}(B),j=function(){function E(){(0,d.Z)(this,E)}return(0,p.Z)(E,[{key:"applyChanges",value:function(q,ce,ie,H,V){q.forEachOperation(function(ue,R,r){var z,Y;if(null==ue.previousIndex){var se=ie(ue,R,r);z=ce.createEmbeddedView(se.templateRef,se.context,se.index),Y=1}else null==r?(ce.remove(R),Y=3):(z=ce.get(R),ce.move(z,r),Y=2);V&&V({context:null==z?void 0:z.context,operation:Y,record:ue})})}},{key:"detach",value:function(){}}]),E}(),Q=function(){function E(){(0,d.Z)(this,E),this.viewCacheSize=20,this._viewCache=[]}return(0,p.Z)(E,[{key:"applyChanges",value:function(q,ce,ie,H,V){var ue=this;q.forEachOperation(function(R,r,z){var Y,se;null==R.previousIndex?se=(Y=ue._insertView(function(){return ie(R,r,z)},z,ce,H(R)))?1:0:null==z?(ue._detachAndCacheView(r,ce),se=3):(Y=ue._moveView(r,z,ce,H(R)),se=2),V&&V({context:null==Y?void 0:Y.context,operation:se,record:R})})}},{key:"detach",value:function(){var ce,q=(0,P.Z)(this._viewCache);try{for(q.s();!(ce=q.n()).done;)ce.value.destroy()}catch(H){q.e(H)}finally{q.f()}this._viewCache=[]}},{key:"_insertView",value:function(q,ce,ie,H){var V=this._insertViewFromCache(ce,ie);if(!V){var ue=q();return ie.createEmbeddedView(ue.templateRef,ue.context,ue.index)}V.context.$implicit=H}},{key:"_detachAndCacheView",value:function(q,ce){var ie=ce.detach(q);this._maybeCacheView(ie,ce)}},{key:"_moveView",value:function(q,ce,ie,H){var V=ie.get(q);return ie.move(V,ce),V.context.$implicit=H,V}},{key:"_maybeCacheView",value:function(q,ce){if(this._viewCache.length0&&void 0!==arguments[0]&&arguments[0],ce=arguments.length>1?arguments[1]:void 0,ie=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];(0,d.Z)(this,E),this._multiple=q,this._emitChanges=ie,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new f.x,ce&&ce.length&&(q?ce.forEach(function(H){return k._markSelected(H)}):this._markSelected(ce[0]),this._selectedToEmit.length=0)}return(0,p.Z)(E,[{key:"selected",get:function(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}},{key:"select",value:function(){for(var q=this,ce=arguments.length,ie=new Array(ce),H=0;H1?Ii-1:0),Ci=1;Cift.height||Ae.scrollWidth>ft.width}}]),we}(),z=function(){function we(_e,$,Ae,ft){var gt=this;(0,f.Z)(this,we),this._scrollDispatcher=_e,this._ngZone=$,this._viewportRuler=Ae,this._config=ft,this._scrollSubscription=null,this._detach=function(){gt.disable(),gt._overlayRef.hasAttached()&>._ngZone.run(function(){return gt._overlayRef.detach()})}}return(0,T.Z)(we,[{key:"attach",value:function($){this._overlayRef=$}},{key:"enable",value:function(){var $=this;if(!this._scrollSubscription){var Ae=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=Ae.subscribe(function(){var ft=$._viewportRuler.getViewportScrollPosition().top;Math.abs(ft-$._initialScrollPosition)>$._config.threshold?$._detach():$._overlayRef.updatePosition()})):this._scrollSubscription=Ae.subscribe(this._detach)}}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),we}(),Y=function(){function we(){(0,f.Z)(this,we)}return(0,T.Z)(we,[{key:"enable",value:function(){}},{key:"disable",value:function(){}},{key:"attach",value:function(){}}]),we}();function se(we,_e){return _e.some(function($){return we.bottom<$.top||we.top>$.bottom||we.right<$.left||we.left>$.right})}function X(we,_e){return _e.some(function($){return we.top<$.top||we.bottom>$.bottom||we.left<$.left||we.right>$.right})}var ne=function(){function we(_e,$,Ae,ft){(0,f.Z)(this,we),this._scrollDispatcher=_e,this._viewportRuler=$,this._ngZone=Ae,this._config=ft,this._scrollSubscription=null}return(0,T.Z)(we,[{key:"attach",value:function($){this._overlayRef=$}},{key:"enable",value:function(){var $=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if($._overlayRef.updatePosition(),$._config&&$._config.autoClose){var ft=$._overlayRef.overlayElement.getBoundingClientRect(),gt=$._viewportRuler.getViewportSize(),Bt=gt.width,_n=gt.height;se(ft,[{width:Bt,height:_n,bottom:_n,right:Bt,top:0,left:0}])&&($.disable(),$._ngZone.run(function(){return $._overlayRef.detach()}))}}))}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),we}(),ve=function(){var we=(0,T.Z)(function _e($,Ae,ft,gt){var Bt=this;(0,f.Z)(this,_e),this._scrollDispatcher=$,this._viewportRuler=Ae,this._ngZone=ft,this.noop=function(){return new Y},this.close=function(_n){return new z(Bt._scrollDispatcher,Bt._ngZone,Bt._viewportRuler,_n)},this.block=function(){return new R(Bt._viewportRuler,Bt._document)},this.reposition=function(_n){return new ne(Bt._scrollDispatcher,Bt._viewportRuler,Bt._ngZone,_n)},this._document=gt});return we.\u0275fac=function($){return new($||we)(v.LFG(B.mF),v.LFG(B.rL),v.LFG(v.R0b),v.LFG(I.K0))},we.\u0275prov=v.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"}),we}(),Re=(0,T.Z)(function we(_e){if((0,f.Z)(this,we),this.scrollStrategy=new Y,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,_e)for(var Ae=0,ft=Object.keys(_e);Aern&&(rn=et,fi=Ue)}}catch(De){sn.e(De)}finally{sn.f()}return this._isPushed=!1,void this._applyPosition(fi.position,fi.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(_n.position,_n.originPoint);this._applyPosition(_n.position,_n.originPoint)}}},{key:"detach",value:function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}},{key:"dispose",value:function(){this._isDisposed||(this._boundingBox&&ot(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Rt),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}},{key:"reapplyLastPosition",value:function(){if(!this._isDisposed&&this._platform.isBrowser){var $=this._lastPosition;if($){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();var Ae=this._getOriginPoint(this._originRect,this._containerRect,$);this._applyPosition($,Ae)}else this.apply()}}},{key:"withScrollableContainers",value:function($){return this._scrollables=$,this}},{key:"withPositions",value:function($){return this._preferredPositions=$,-1===$.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}},{key:"withViewportMargin",value:function($){return this._viewportMargin=$,this}},{key:"withFlexibleDimensions",value:function(){var $=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._hasFlexibleDimensions=$,this}},{key:"withGrowAfterOpen",value:function(){var $=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._growAfterOpen=$,this}},{key:"withPush",value:function(){var $=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._canPush=$,this}},{key:"withLockedPosition",value:function(){var $=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._positionLocked=$,this}},{key:"setOrigin",value:function($){return this._origin=$,this}},{key:"withDefaultOffsetX",value:function($){return this._offsetX=$,this}},{key:"withDefaultOffsetY",value:function($){return this._offsetY=$,this}},{key:"withTransformOriginOn",value:function($){return this._transformOriginSelector=$,this}},{key:"_getOriginPoint",value:function($,Ae,ft){var gt,wn;if("center"==ft.originX)gt=$.left+$.width/2;else{var Bt=this._isRtl()?$.right:$.left,_n=this._isRtl()?$.left:$.right;gt="start"==ft.originX?Bt:_n}return Ae.left<0&&(gt-=Ae.left),wn="center"==ft.originY?$.top+$.height/2:"top"==ft.originY?$.top:$.bottom,Ae.top<0&&(wn-=Ae.top),{x:gt,y:wn}}},{key:"_getOverlayPoint",value:function($,Ae,ft){var gt;return gt="center"==ft.overlayX?-Ae.width/2:"start"===ft.overlayX?this._isRtl()?-Ae.width:0:this._isRtl()?0:-Ae.width,{x:$.x+gt,y:$.y+("center"==ft.overlayY?-Ae.height/2:"top"==ft.overlayY?0:-Ae.height)}}},{key:"_getOverlayFit",value:function($,Ae,ft,gt){var Bt=xe(Ae),_n=$.x,wn=$.y,Tn=this._getOffset(gt,"x"),On=this._getOffset(gt,"y");Tn&&(_n+=Tn),On&&(wn+=On);var si=0-wn,fi=wn+Bt.height-ft.height,rn=this._subtractOverflows(Bt.width,0-_n,_n+Bt.width-ft.width),sn=this._subtractOverflows(Bt.height,si,fi),jt=rn*sn;return{visibleArea:jt,isCompletelyWithinViewport:Bt.width*Bt.height===jt,fitsInViewportVertically:sn===Bt.height,fitsInViewportHorizontally:rn==Bt.width}}},{key:"_canFitWithFlexibleDimensions",value:function($,Ae,ft){if(this._hasFlexibleDimensions){var gt=ft.bottom-Ae.y,Bt=ft.right-Ae.x,_n=tt(this._overlayRef.getConfig().minHeight),wn=tt(this._overlayRef.getConfig().minWidth);return($.fitsInViewportVertically||null!=_n&&_n<=gt)&&($.fitsInViewportHorizontally||null!=wn&&wn<=Bt)}return!1}},{key:"_pushOverlayOnScreen",value:function($,Ae,ft){if(this._previousPushAmount&&this._positionLocked)return{x:$.x+this._previousPushAmount.x,y:$.y+this._previousPushAmount.y};var Jn,Un,gt=xe(Ae),Bt=this._viewportRect,_n=Math.max($.x+gt.width-Bt.width,0),wn=Math.max($.y+gt.height-Bt.height,0),Tn=Math.max(Bt.top-ft.top-$.y,0),On=Math.max(Bt.left-ft.left-$.x,0);return this._previousPushAmount={x:Jn=gt.width<=Bt.width?On||-_n:$.xOn&&!this._isInitialRender&&!this._growAfterOpen&&(_n=$.y-On/2)}if("end"===Ae.overlayX&&!gt||"start"===Ae.overlayX&>)rn=ft.width-$.x+this._viewportMargin,si=$.x-this._viewportMargin;else if("start"===Ae.overlayX&&!gt||"end"===Ae.overlayX&>)fi=$.x,si=ft.right-$.x;else{var sn=Math.min(ft.right-$.x+ft.left,$.x),jt=this._lastBoundingBoxSize.width;fi=$.x-sn,(si=2*sn)>jt&&!this._isInitialRender&&!this._growAfterOpen&&(fi=$.x-jt/2)}return{top:_n,left:fi,bottom:wn,right:rn,width:si,height:Bt}}},{key:"_setBoundingBoxStyles",value:function($,Ae){var ft=this._calculateBoundingBoxRect($,Ae);!this._isInitialRender&&!this._growAfterOpen&&(ft.height=Math.min(ft.height,this._lastBoundingBoxSize.height),ft.width=Math.min(ft.width,this._lastBoundingBoxSize.width));var gt={};if(this._hasExactPosition())gt.top=gt.left="0",gt.bottom=gt.right=gt.maxHeight=gt.maxWidth="",gt.width=gt.height="100%";else{var Bt=this._overlayRef.getConfig().maxHeight,_n=this._overlayRef.getConfig().maxWidth;gt.height=(0,j.HM)(ft.height),gt.top=(0,j.HM)(ft.top),gt.bottom=(0,j.HM)(ft.bottom),gt.width=(0,j.HM)(ft.width),gt.left=(0,j.HM)(ft.left),gt.right=(0,j.HM)(ft.right),gt.alignItems="center"===Ae.overlayX?"center":"end"===Ae.overlayX?"flex-end":"flex-start",gt.justifyContent="center"===Ae.overlayY?"center":"bottom"===Ae.overlayY?"flex-end":"flex-start",Bt&&(gt.maxHeight=(0,j.HM)(Bt)),_n&&(gt.maxWidth=(0,j.HM)(_n))}this._lastBoundingBoxSize=ft,ot(this._boundingBox.style,gt)}},{key:"_resetBoundingBoxStyles",value:function(){ot(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}},{key:"_resetOverlayElementStyles",value:function(){ot(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}},{key:"_setOverlayElementStyles",value:function($,Ae){var ft={},gt=this._hasExactPosition(),Bt=this._hasFlexibleDimensions,_n=this._overlayRef.getConfig();if(gt){var wn=this._viewportRuler.getViewportScrollPosition();ot(ft,this._getExactOverlayY(Ae,$,wn)),ot(ft,this._getExactOverlayX(Ae,$,wn))}else ft.position="static";var Tn="",On=this._getOffset(Ae,"x"),Jn=this._getOffset(Ae,"y");On&&(Tn+="translateX(".concat(On,"px) ")),Jn&&(Tn+="translateY(".concat(Jn,"px)")),ft.transform=Tn.trim(),_n.maxHeight&&(gt?ft.maxHeight=(0,j.HM)(_n.maxHeight):Bt&&(ft.maxHeight="")),_n.maxWidth&&(gt?ft.maxWidth=(0,j.HM)(_n.maxWidth):Bt&&(ft.maxWidth="")),ot(this._pane.style,ft)}},{key:"_getExactOverlayY",value:function($,Ae,ft){var gt={top:"",bottom:""},Bt=this._getOverlayPoint(Ae,this._overlayRect,$);return this._isPushed&&(Bt=this._pushOverlayOnScreen(Bt,this._overlayRect,ft)),"bottom"===$.overlayY?gt.bottom="".concat(this._document.documentElement.clientHeight-(Bt.y+this._overlayRect.height),"px"):gt.top=(0,j.HM)(Bt.y),gt}},{key:"_getExactOverlayX",value:function($,Ae,ft){var gt={left:"",right:""},Bt=this._getOverlayPoint(Ae,this._overlayRect,$);return this._isPushed&&(Bt=this._pushOverlayOnScreen(Bt,this._overlayRect,ft)),"right"==(this._isRtl()?"end"===$.overlayX?"left":"right":"end"===$.overlayX?"right":"left")?gt.right="".concat(this._document.documentElement.clientWidth-(Bt.x+this._overlayRect.width),"px"):gt.left=(0,j.HM)(Bt.x),gt}},{key:"_getScrollVisibility",value:function(){var $=this._getOriginRect(),Ae=this._pane.getBoundingClientRect(),ft=this._scrollables.map(function(gt){return gt.getElementRef().nativeElement.getBoundingClientRect()});return{isOriginClipped:X($,ft),isOriginOutsideView:se($,ft),isOverlayClipped:X(Ae,ft),isOverlayOutsideView:se(Ae,ft)}}},{key:"_subtractOverflows",value:function($){for(var Ae=arguments.length,ft=new Array(Ae>1?Ae-1:0),gt=1;gt0&&void 0!==arguments[0]?arguments[0]:"";return this._bottomOffset="",this._topOffset=$,this._alignItems="flex-start",this}},{key:"left",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._rightOffset="",this._leftOffset=$,this._justifyContent="flex-start",this}},{key:"bottom",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._topOffset="",this._bottomOffset=$,this._alignItems="flex-end",this}},{key:"right",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._leftOffset="",this._rightOffset=$,this._justifyContent="flex-end",this}},{key:"width",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({width:$}):this._width=$,this}},{key:"height",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({height:$}):this._height=$,this}},{key:"centerHorizontally",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.left($),this._justifyContent="center",this}},{key:"centerVertically",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.top($),this._alignItems="center",this}},{key:"apply",value:function(){if(this._overlayRef&&this._overlayRef.hasAttached()){var $=this._overlayRef.overlayElement.style,Ae=this._overlayRef.hostElement.style,ft=this._overlayRef.getConfig(),gt=ft.width,Bt=ft.height,_n=ft.maxWidth,wn=ft.maxHeight,Tn=!("100%"!==gt&&"100vw"!==gt||_n&&"100%"!==_n&&"100vw"!==_n),On=!("100%"!==Bt&&"100vh"!==Bt||wn&&"100%"!==wn&&"100vh"!==wn);$.position=this._cssPosition,$.marginLeft=Tn?"0":this._leftOffset,$.marginTop=On?"0":this._topOffset,$.marginBottom=this._bottomOffset,$.marginRight=this._rightOffset,Tn?Ae.justifyContent="flex-start":"center"===this._justifyContent?Ae.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?Ae.justifyContent="flex-end":"flex-end"===this._justifyContent&&(Ae.justifyContent="flex-start"):Ae.justifyContent=this._justifyContent,Ae.alignItems=On?"flex-start":this._alignItems}}},{key:"dispose",value:function(){if(!this._isDisposed&&this._overlayRef){var $=this._overlayRef.overlayElement.style,Ae=this._overlayRef.hostElement,ft=Ae.style;Ae.classList.remove($e),ft.justifyContent=ft.alignItems=$.marginTop=$.marginBottom=$.marginLeft=$.marginRight=$.position="",this._overlayRef=null,this._isDisposed=!0}}}]),we}(),ct=function(){var we=function(){function _e($,Ae,ft,gt){(0,f.Z)(this,_e),this._viewportRuler=$,this._document=Ae,this._platform=ft,this._overlayContainer=gt}return(0,T.Z)(_e,[{key:"global",value:function(){return new Ge}},{key:"flexibleConnectedTo",value:function(Ae){return new Qe(Ae,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}]),_e}();return we.\u0275fac=function($){return new($||we)(v.LFG(B.rL),v.LFG(I.K0),v.LFG(Q.t4),v.LFG(Lt))},we.\u0275prov=v.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"}),we}(),Xe=function(){var we=function(){function _e($){(0,f.Z)(this,_e),this._attachedOverlays=[],this._document=$}return(0,T.Z)(_e,[{key:"ngOnDestroy",value:function(){this.detach()}},{key:"add",value:function(Ae){this.remove(Ae),this._attachedOverlays.push(Ae)}},{key:"remove",value:function(Ae){var ft=this._attachedOverlays.indexOf(Ae);ft>-1&&this._attachedOverlays.splice(ft,1),0===this._attachedOverlays.length&&this.detach()}}]),_e}();return we.\u0275fac=function($){return new($||we)(v.LFG(I.K0))},we.\u0275prov=v.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"}),we}(),Te=function(){var we=function(_e){(0,e.Z)(Ae,_e);var $=(0,p.Z)(Ae);function Ae(ft){var gt;return(0,f.Z)(this,Ae),(gt=$.call(this,ft))._keydownListener=function(Bt){for(var _n=gt._attachedOverlays,wn=_n.length-1;wn>-1;wn--)if(_n[wn]._keydownEvents.observers.length>0){_n[wn]._keydownEvents.next(Bt);break}},gt}return(0,T.Z)(Ae,[{key:"add",value:function(gt){(0,P.Z)((0,t.Z)(Ae.prototype),"add",this).call(this,gt),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}},{key:"detach",value:function(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}]),Ae}(Xe);return we.\u0275fac=function($){return new($||we)(v.LFG(I.K0))},we.\u0275prov=v.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"}),we}(),vt=function(){var we=function(_e){(0,e.Z)(Ae,_e);var $=(0,p.Z)(Ae);function Ae(ft,gt){var Bt;return(0,f.Z)(this,Ae),(Bt=$.call(this,ft))._platform=gt,Bt._cursorStyleIsSet=!1,Bt._pointerDownListener=function(_n){Bt._pointerDownEventTarget=(0,Q.sA)(_n)},Bt._clickListener=function(_n){var wn=(0,Q.sA)(_n),Tn="click"===_n.type&&Bt._pointerDownEventTarget?Bt._pointerDownEventTarget:wn;Bt._pointerDownEventTarget=null;for(var On=Bt._attachedOverlays.slice(),Jn=On.length-1;Jn>-1;Jn--){var Un=On[Jn];if(!(Un._outsidePointerEvents.observers.length<1)&&Un.hasAttached()){if(Un.overlayElement.contains(wn)||Un.overlayElement.contains(Tn))break;Un._outsidePointerEvents.next(_n)}}},Bt}return(0,T.Z)(Ae,[{key:"add",value:function(gt){if((0,P.Z)((0,t.Z)(Ae.prototype),"add",this).call(this,gt),!this._isAttached){var Bt=this._document.body;Bt.addEventListener("pointerdown",this._pointerDownListener,!0),Bt.addEventListener("click",this._clickListener,!0),Bt.addEventListener("auxclick",this._clickListener,!0),Bt.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=Bt.style.cursor,Bt.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}},{key:"detach",value:function(){if(this._isAttached){var gt=this._document.body;gt.removeEventListener("pointerdown",this._pointerDownListener,!0),gt.removeEventListener("click",this._clickListener,!0),gt.removeEventListener("auxclick",this._clickListener,!0),gt.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(gt.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}]),Ae}(Xe);return we.\u0275fac=function($){return new($||we)(v.LFG(I.K0),v.LFG(Q.t4))},we.\u0275prov=v.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"}),we}(),qe=0,je=function(){var we=function(){function _e($,Ae,ft,gt,Bt,_n,wn,Tn,On,Jn,Un){(0,f.Z)(this,_e),this.scrollStrategies=$,this._overlayContainer=Ae,this._componentFactoryResolver=ft,this._positionBuilder=gt,this._keyboardDispatcher=Bt,this._injector=_n,this._ngZone=wn,this._document=Tn,this._directionality=On,this._location=Jn,this._outsideClickDispatcher=Un}return(0,T.Z)(_e,[{key:"create",value:function(Ae){var ft=this._createHostElement(),gt=this._createPaneElement(ft),Bt=this._createPortalOutlet(gt),_n=new Re(Ae);return _n.direction=_n.direction||this._directionality.value,new qt(Bt,ft,gt,_n,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}},{key:"position",value:function(){return this._positionBuilder}},{key:"_createPaneElement",value:function(Ae){var ft=this._document.createElement("div");return ft.id="cdk-overlay-".concat(qe++),ft.classList.add("cdk-overlay-pane"),Ae.appendChild(ft),ft}},{key:"_createHostElement",value:function(){var Ae=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(Ae),Ae}},{key:"_createPortalOutlet",value:function(Ae){return this._appRef||(this._appRef=this._injector.get(v.z2F)),new Z.u0(Ae,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}]),_e}();return we.\u0275fac=function($){return new($||we)(v.LFG(ve),v.LFG(Lt),v.LFG(v._Vd),v.LFG(ct),v.LFG(Te),v.LFG(v.zs3),v.LFG(v.R0b),v.LFG(I.K0),v.LFG(J.Is),v.LFG(I.Ye),v.LFG(vt))},we.\u0275prov=v.Yz7({token:we,factory:we.\u0275fac}),we}(),Nt=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Ft=new v.OlP("cdk-connected-overlay-scroll-strategy"),bt=function(){var we=(0,T.Z)(function _e($){(0,f.Z)(this,_e),this.elementRef=$});return we.\u0275fac=function($){return new($||we)(v.Y36(v.SBq))},we.\u0275dir=v.lG2({type:we,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),we}(),St=function(){var we=function(){function _e($,Ae,ft,gt,Bt){(0,f.Z)(this,_e),this._overlay=$,this._dir=Bt,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=N.w0.EMPTY,this._attachSubscription=N.w0.EMPTY,this._detachSubscription=N.w0.EMPTY,this._positionSubscription=N.w0.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new v.vpe,this.positionChange=new v.vpe,this.attach=new v.vpe,this.detach=new v.vpe,this.overlayKeydown=new v.vpe,this.overlayOutsideClick=new v.vpe,this._templatePortal=new Z.UE(Ae,ft),this._scrollStrategyFactory=gt,this.scrollStrategy=this._scrollStrategyFactory()}return(0,T.Z)(_e,[{key:"offsetX",get:function(){return this._offsetX},set:function(Ae){this._offsetX=Ae,this._position&&this._updatePositionStrategy(this._position)}},{key:"offsetY",get:function(){return this._offsetY},set:function(Ae){this._offsetY=Ae,this._position&&this._updatePositionStrategy(this._position)}},{key:"hasBackdrop",get:function(){return this._hasBackdrop},set:function(Ae){this._hasBackdrop=(0,j.Ig)(Ae)}},{key:"lockPosition",get:function(){return this._lockPosition},set:function(Ae){this._lockPosition=(0,j.Ig)(Ae)}},{key:"flexibleDimensions",get:function(){return this._flexibleDimensions},set:function(Ae){this._flexibleDimensions=(0,j.Ig)(Ae)}},{key:"growAfterOpen",get:function(){return this._growAfterOpen},set:function(Ae){this._growAfterOpen=(0,j.Ig)(Ae)}},{key:"push",get:function(){return this._push},set:function(Ae){this._push=(0,j.Ig)(Ae)}},{key:"overlayRef",get:function(){return this._overlayRef}},{key:"dir",get:function(){return this._dir?this._dir.value:"ltr"}},{key:"ngOnDestroy",value:function(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}},{key:"ngOnChanges",value:function(Ae){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),Ae.origin&&this.open&&this._position.apply()),Ae.open&&(this.open?this._attachOverlay():this._detachOverlay())}},{key:"_createOverlay",value:function(){var Ae=this;(!this.positions||!this.positions.length)&&(this.positions=Nt);var ft=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=ft.attachments().subscribe(function(){return Ae.attach.emit()}),this._detachSubscription=ft.detachments().subscribe(function(){return Ae.detach.emit()}),ft.keydownEvents().subscribe(function(gt){Ae.overlayKeydown.next(gt),gt.keyCode===V.hY&&!Ae.disableClose&&!(0,V.Vb)(gt)&&(gt.preventDefault(),Ae._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(function(gt){Ae.overlayOutsideClick.next(gt)})}},{key:"_buildConfig",value:function(){var Ae=this._position=this.positionStrategy||this._createPositionStrategy(),ft=new Re({direction:this._dir,positionStrategy:Ae,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(ft.width=this.width),(this.height||0===this.height)&&(ft.height=this.height),(this.minWidth||0===this.minWidth)&&(ft.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(ft.minHeight=this.minHeight),this.backdropClass&&(ft.backdropClass=this.backdropClass),this.panelClass&&(ft.panelClass=this.panelClass),ft}},{key:"_updatePositionStrategy",value:function(Ae){var ft=this,gt=this.positions.map(function(Bt){return{originX:Bt.originX,originY:Bt.originY,overlayX:Bt.overlayX,overlayY:Bt.overlayY,offsetX:Bt.offsetX||ft.offsetX,offsetY:Bt.offsetY||ft.offsetY,panelClass:Bt.panelClass||void 0}});return Ae.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(gt).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}},{key:"_createPositionStrategy",value:function(){var Ae=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(Ae),Ae}},{key:"_getFlexibleConnectedPositionStrategyOrigin",value:function(){return this.origin instanceof bt?this.origin.elementRef:this.origin}},{key:"_attachOverlay",value:function(){var Ae=this;this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(function(ft){Ae.backdropClick.emit(ft)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(function ce(we){var _e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,k.e)(function($,Ae){var ft=0;$.subscribe((0,q.x)(Ae,function(gt){var Bt=we(gt,ft++);(Bt||_e)&&Ae.next(gt),!Bt&&Ae.complete()}))})}(function(){return Ae.positionChange.observers.length>0})).subscribe(function(ft){Ae.positionChange.emit(ft),0===Ae.positionChange.observers.length&&Ae._positionSubscription.unsubscribe()}))}},{key:"_detachOverlay",value:function(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}]),_e}();return we.\u0275fac=function($){return new($||we)(v.Y36(je),v.Y36(v.Rgc),v.Y36(v.s_b),v.Y36(Ft),v.Y36(J.Is,8))},we.\u0275dir=v.lG2({type:we,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[v.TTD]}),we}(),ut={provide:Ft,deps:[je],useFactory:function Pt(we){return function(){return we.scrollStrategies.reposition()}}},yt=function(){var we=(0,T.Z)(function _e(){(0,f.Z)(this,_e)});return we.\u0275fac=function($){return new($||we)},we.\u0275mod=v.oAB({type:we}),we.\u0275inj=v.cJS({providers:[je,ut],imports:[[J.vT,Z.eL,B.Cl],B.Cl]}),we}()},14390:function(dt,K,n){"use strict";n.d(K,{t4:function(){return s},ud:function(){return h},sA:function(){return ce},ht:function(){return q},kV:function(){return k},Oy:function(){return ie},_i:function(){return A},qK:function(){return B},i$:function(){return j},Mq:function(){return Z}});var d,P=n(48047),t=n(78069),e=n(76442),p=n(36362);try{d="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(H){d=!1}var f,I,Q,J,N,s=function(){var H=(0,P.Z)(function V(ue){(0,t.Z)(this,V),this._platformId=ue,this.isBrowser=this._platformId?(0,p.NF)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!d)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT});return H.\u0275fac=function(ue){return new(ue||H)(e.LFG(e.Lbi))},H.\u0275prov=e.Yz7({token:H,factory:H.\u0275fac,providedIn:"root"}),H}(),h=function(){var H=(0,P.Z)(function V(){(0,t.Z)(this,V)});return H.\u0275fac=function(ue){return new(ue||H)},H.\u0275mod=e.oAB({type:H}),H.\u0275inj=e.cJS({}),H}(),T=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function B(){if(f)return f;if("object"!=typeof document||!document)return f=new Set(T);var H=document.createElement("input");return f=new Set(T.filter(function(V){return H.setAttribute("type",V),H.type===V}))}function j(H){return function v(){if(null==I&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return I=!0}}))}finally{I=I||!1}return I}()?H:!!H.capture}function Z(){if(null==J){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return J=!1;if("scrollBehavior"in document.documentElement.style)J=!0;else{var H=Element.prototype.scrollTo;J=!!H&&!/\{\s*\[native code\]\s*\}/.test(H.toString())}}return J}function A(){if("object"!=typeof document||!document)return 0;if(null==Q){var H=document.createElement("div"),V=H.style;H.dir="rtl",V.width="1px",V.overflow="auto",V.visibility="hidden",V.pointerEvents="none",V.position="absolute";var ue=document.createElement("div"),R=ue.style;R.width="2px",R.height="1px",H.appendChild(ue),document.body.appendChild(H),Q=0,0===H.scrollLeft&&(H.scrollLeft=1,Q=0===H.scrollLeft?1:2),H.remove()}return Q}function k(H){if(function E(){if(null==N){var H="undefined"!=typeof document?document.head:null;N=!(!H||!H.createShadowRoot&&!H.attachShadow)}return N}()){var V=H.getRootNode?H.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&V instanceof ShadowRoot)return V}return null}function q(){for(var H="undefined"!=typeof document&&document?document.activeElement:null;H&&H.shadowRoot;){var V=H.shadowRoot.activeElement;if(V===H)break;H=V}return H}function ce(H){return H.composedPath?H.composedPath()[0]:H.target}function ie(){return"undefined"!=typeof __karma__&&!!__karma__||"undefined"!=typeof jasmine&&!!jasmine||"undefined"!=typeof jest&&!!jest||"undefined"!=typeof Mocha&&!!Mocha}},24476:function(dt,K,n){"use strict";n.d(K,{en:function(){return k},ig:function(){return H},Pl:function(){return ue},C5:function(){return A},u0:function(){return ce},eL:function(){return r},UE:function(){return N}});var P=n(35488),t=n(4089),e=n(20265),p=n(24582),d=n(7318),s=n(78069),h=n(48047),f=n(76442),T=n(36362),Z=function(){function Y(){(0,s.Z)(this,Y)}return(0,h.Z)(Y,[{key:"attach",value:function(X){return this._attachedHost=X,X.attach(this)}},{key:"detach",value:function(){var X=this._attachedHost;null!=X&&(this._attachedHost=null,X.detach())}},{key:"isAttached",get:function(){return null!=this._attachedHost}},{key:"setAttachedHost",value:function(X){this._attachedHost=X}}]),Y}(),A=function(Y){(0,p.Z)(X,Y);var se=(0,d.Z)(X);function X(ne,ve,Re,Ie){var Ee;return(0,s.Z)(this,X),(Ee=se.call(this)).component=ne,Ee.viewContainerRef=ve,Ee.injector=Re,Ee.componentFactoryResolver=Ie,Ee}return(0,h.Z)(X)}(Z),N=function(Y){(0,p.Z)(X,Y);var se=(0,d.Z)(X);function X(ne,ve,Re){var Ie;return(0,s.Z)(this,X),(Ie=se.call(this)).templateRef=ne,Ie.viewContainerRef=ve,Ie.context=Re,Ie}return(0,h.Z)(X,[{key:"origin",get:function(){return this.templateRef.elementRef}},{key:"attach",value:function(ve){var Re=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.context;return this.context=Re,(0,t.Z)((0,e.Z)(X.prototype),"attach",this).call(this,ve)}},{key:"detach",value:function(){return this.context=void 0,(0,t.Z)((0,e.Z)(X.prototype),"detach",this).call(this)}}]),X}(Z),E=function(Y){(0,p.Z)(X,Y);var se=(0,d.Z)(X);function X(ne){var ve;return(0,s.Z)(this,X),(ve=se.call(this)).element=ne instanceof f.SBq?ne.nativeElement:ne,ve}return(0,h.Z)(X)}(Z),k=function(){function Y(){(0,s.Z)(this,Y),this._isDisposed=!1,this.attachDomPortal=null}return(0,h.Z)(Y,[{key:"hasAttached",value:function(){return!!this._attachedPortal}},{key:"attach",value:function(X){return X instanceof A?(this._attachedPortal=X,this.attachComponentPortal(X)):X instanceof N?(this._attachedPortal=X,this.attachTemplatePortal(X)):this.attachDomPortal&&X instanceof E?(this._attachedPortal=X,this.attachDomPortal(X)):void 0}},{key:"detach",value:function(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}},{key:"dispose",value:function(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}},{key:"setDisposeFn",value:function(X){this._disposeFn=X}},{key:"_invokeDisposeFn",value:function(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}]),Y}(),ce=function(Y){(0,p.Z)(X,Y);var se=(0,d.Z)(X);function X(ne,ve,Re,Ie,Ee){var ge,_t;return(0,s.Z)(this,X),(_t=se.call(this)).outletElement=ne,_t._componentFactoryResolver=ve,_t._appRef=Re,_t._defaultInjector=Ie,_t.attachDomPortal=function(wt){var qt=wt.element,Lt=_t._document.createComment("dom-portal");qt.parentNode.insertBefore(Lt,qt),_t.outletElement.appendChild(qt),_t._attachedPortal=wt,(0,t.Z)((ge=(0,P.Z)(_t),(0,e.Z)(X.prototype)),"setDisposeFn",ge).call(ge,function(){Lt.parentNode&&Lt.parentNode.replaceChild(qt,Lt)})},_t._document=Ee,_t}return(0,h.Z)(X,[{key:"attachComponentPortal",value:function(ve){var ge,Re=this,Ee=(ve.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(ve.component);return ve.viewContainerRef?(ge=ve.viewContainerRef.createComponent(Ee,ve.viewContainerRef.length,ve.injector||ve.viewContainerRef.injector),this.setDisposeFn(function(){return ge.destroy()})):(ge=Ee.create(ve.injector||this._defaultInjector),this._appRef.attachView(ge.hostView),this.setDisposeFn(function(){Re._appRef.detachView(ge.hostView),ge.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(ge)),this._attachedPortal=ve,ge}},{key:"attachTemplatePortal",value:function(ve){var Re=this,Ie=ve.viewContainerRef,Ee=Ie.createEmbeddedView(ve.templateRef,ve.context);return Ee.rootNodes.forEach(function(ge){return Re.outletElement.appendChild(ge)}),Ee.detectChanges(),this.setDisposeFn(function(){var ge=Ie.indexOf(Ee);-1!==ge&&Ie.remove(ge)}),this._attachedPortal=ve,Ee}},{key:"dispose",value:function(){(0,t.Z)((0,e.Z)(X.prototype),"dispose",this).call(this),this.outletElement.remove()}},{key:"_getComponentRootNode",value:function(ve){return ve.hostView.rootNodes[0]}}]),X}(k),H=function(){var Y=function(se){(0,p.Z)(ne,se);var X=(0,d.Z)(ne);function ne(ve,Re){return(0,s.Z)(this,ne),X.call(this,ve,Re)}return(0,h.Z)(ne)}(N);return Y.\u0275fac=function(X){return new(X||Y)(f.Y36(f.Rgc),f.Y36(f.s_b))},Y.\u0275dir=f.lG2({type:Y,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[f.qOj]}),Y}(),ue=function(){var Y=function(se){(0,p.Z)(ne,se);var X=(0,d.Z)(ne);function ne(ve,Re,Ie){var Ee,ge;return(0,s.Z)(this,ne),(ge=X.call(this))._componentFactoryResolver=ve,ge._viewContainerRef=Re,ge._isInitialized=!1,ge.attached=new f.vpe,ge.attachDomPortal=function(_t){var wt=_t.element,qt=ge._document.createComment("dom-portal");_t.setAttachedHost((0,P.Z)(ge)),wt.parentNode.insertBefore(qt,wt),ge._getRootNode().appendChild(wt),ge._attachedPortal=_t,(0,t.Z)((Ee=(0,P.Z)(ge),(0,e.Z)(ne.prototype)),"setDisposeFn",Ee).call(Ee,function(){qt.parentNode&&qt.parentNode.replaceChild(wt,qt)})},ge._document=Ie,ge}return(0,h.Z)(ne,[{key:"portal",get:function(){return this._attachedPortal},set:function(Re){this.hasAttached()&&!Re&&!this._isInitialized||(this.hasAttached()&&(0,t.Z)((0,e.Z)(ne.prototype),"detach",this).call(this),Re&&(0,t.Z)((0,e.Z)(ne.prototype),"attach",this).call(this,Re),this._attachedPortal=Re||null)}},{key:"attachedRef",get:function(){return this._attachedRef}},{key:"ngOnInit",value:function(){this._isInitialized=!0}},{key:"ngOnDestroy",value:function(){(0,t.Z)((0,e.Z)(ne.prototype),"dispose",this).call(this),this._attachedPortal=null,this._attachedRef=null}},{key:"attachComponentPortal",value:function(Re){Re.setAttachedHost(this);var Ie=null!=Re.viewContainerRef?Re.viewContainerRef:this._viewContainerRef,ge=(Re.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(Re.component),_t=Ie.createComponent(ge,Ie.length,Re.injector||Ie.injector);return Ie!==this._viewContainerRef&&this._getRootNode().appendChild(_t.hostView.rootNodes[0]),(0,t.Z)((0,e.Z)(ne.prototype),"setDisposeFn",this).call(this,function(){return _t.destroy()}),this._attachedPortal=Re,this._attachedRef=_t,this.attached.emit(_t),_t}},{key:"attachTemplatePortal",value:function(Re){var Ie=this;Re.setAttachedHost(this);var Ee=this._viewContainerRef.createEmbeddedView(Re.templateRef,Re.context);return(0,t.Z)((0,e.Z)(ne.prototype),"setDisposeFn",this).call(this,function(){return Ie._viewContainerRef.clear()}),this._attachedPortal=Re,this._attachedRef=Ee,this.attached.emit(Ee),Ee}},{key:"_getRootNode",value:function(){var Re=this._viewContainerRef.element.nativeElement;return Re.nodeType===Re.ELEMENT_NODE?Re:Re.parentNode}}]),ne}(k);return Y.\u0275fac=function(X){return new(X||Y)(f.Y36(f._Vd),f.Y36(f.s_b),f.Y36(T.K0))},Y.\u0275dir=f.lG2({type:Y,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[f.qOj]}),Y}(),r=function(){var Y=(0,h.Z)(function se(){(0,s.Z)(this,se)});return Y.\u0275fac=function(X){return new(X||Y)},Y.\u0275mod=f.oAB({type:Y}),Y.\u0275inj=f.cJS({}),Y}()},24426:function(dt,K,n){"use strict";n.d(K,{xd:function(){return ot},PQ:function(){return $e},ZD:function(){return Nt},x0:function(){return je},N7:function(){return vt},mF:function(){return xe},Cl:function(){return Ft},rL:function(){return ct}});var P=n(32090),t=n(95106),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(78069),f=n(48047),T=n(76484),B=n(76442),I=n(75417),v=n(17714),j={schedule:function(St){var Pt=requestAnimationFrame,ut=cancelAnimationFrame,yt=j.delegate;yt&&(Pt=yt.requestAnimationFrame,ut=yt.cancelAnimationFrame);var be=Pt(function(we){ut=void 0,St(we)});return new v.w0(function(){return null==ut?void 0:ut(be)})},requestAnimationFrame:function(bt){function St(){return bt.apply(this,arguments)}return St.toString=function(){return bt.toString()},St}(function(){var bt=j.delegate;return((null==bt?void 0:bt.requestAnimationFrame)||requestAnimationFrame).apply(void 0,arguments)}),cancelAnimationFrame:function(bt){function St(){return bt.apply(this,arguments)}return St.toString=function(){return bt.toString()},St}(function(){var bt=j.delegate;return((null==bt?void 0:bt.cancelAnimationFrame)||cancelAnimationFrame).apply(void 0,arguments)}),delegate:void 0},Q=function(bt){(0,d.Z)(Pt,bt);var St=(0,s.Z)(Pt);function Pt(ut,yt){var be;return(0,h.Z)(this,Pt),(be=St.call(this,ut,yt)).scheduler=ut,be.work=yt,be}return(0,f.Z)(Pt,[{key:"requestAsyncId",value:function(yt,be){var we=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==we&&we>0?(0,e.Z)((0,p.Z)(Pt.prototype),"requestAsyncId",this).call(this,yt,be,we):(yt.actions.push(this),yt._scheduled||(yt._scheduled=j.requestAnimationFrame(function(){return yt.flush(void 0)})))}},{key:"recycleAsyncId",value:function(yt,be){var we=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!=we&&we>0||null==we&&this.delay>0)return(0,e.Z)((0,p.Z)(Pt.prototype),"recycleAsyncId",this).call(this,yt,be,we);yt.actions.some(function(_e){return _e.id===be})||(j.cancelAnimationFrame(be),yt._scheduled=void 0)}}]),Pt}(I.o),Z=function(bt){(0,d.Z)(Pt,bt);var St=(0,s.Z)(Pt);function Pt(){return(0,h.Z)(this,Pt),St.apply(this,arguments)}return(0,f.Z)(Pt,[{key:"flush",value:function(yt){this._active=!0;var be=this._scheduled;this._scheduled=void 0;var _e,we=this.actions;yt=yt||we.shift();do{if(_e=yt.execute(yt.state,yt.delay))break}while((yt=we[0])&&yt.id===be&&we.shift());if(this._active=!1,_e){for(;(yt=we[0])&&yt.id===be&&we.shift();)yt.unsubscribe();throw _e}}}]),Pt}(n(41010).v),A=new Z(Q),E=n(50253),k=n(10745),q=n(83336),ce=n(23280),ie=n(83888),H=n(14437),V=n(41944),ue=n(93945),r=n(26067),z=n(81203),se=n(98977),X=n(89211),ne=n(60116),ve=n(68951),Re=n(44874),Ie=n(32673),Ee=n(36362),ge=n(14390),_t=n(51588),wt=n(89502),qt=["contentWrapper"],Lt=["*"],Rt=new B.OlP("VIRTUAL_SCROLL_STRATEGY"),it=function(){function bt(St,Pt,ut){(0,h.Z)(this,bt),this._scrolledIndexChange=new E.x,this.scrolledIndexChange=this._scrolledIndexChange.pipe((0,se.x)()),this._viewport=null,this._itemSize=St,this._minBufferPx=Pt,this._maxBufferPx=ut}return(0,f.Z)(bt,[{key:"attach",value:function(Pt){this._viewport=Pt,this._updateTotalContentSize(),this._updateRenderedRange()}},{key:"detach",value:function(){this._scrolledIndexChange.complete(),this._viewport=null}},{key:"updateItemAndBufferSize",value:function(Pt,ut,yt){this._itemSize=Pt,this._minBufferPx=ut,this._maxBufferPx=yt,this._updateTotalContentSize(),this._updateRenderedRange()}},{key:"onContentScrolled",value:function(){this._updateRenderedRange()}},{key:"onDataLengthChanged",value:function(){this._updateTotalContentSize(),this._updateRenderedRange()}},{key:"onContentRendered",value:function(){}},{key:"onRenderedOffsetChanged",value:function(){}},{key:"scrollToIndex",value:function(Pt,ut){this._viewport&&this._viewport.scrollToOffset(Pt*this._itemSize,ut)}},{key:"_updateTotalContentSize",value:function(){!this._viewport||this._viewport.setTotalContentSize(this._viewport.getDataLength()*this._itemSize)}},{key:"_updateRenderedRange",value:function(){if(this._viewport){var Pt=this._viewport.getRenderedRange(),ut={start:Pt.start,end:Pt.end},yt=this._viewport.getViewportSize(),be=this._viewport.getDataLength(),we=this._viewport.measureScrollOffset(),_e=this._itemSize>0?we/this._itemSize:0;if(ut.end>be){var $=Math.ceil(yt/this._itemSize),Ae=Math.max(0,Math.min(_e,be-$));_e!=Ae&&(_e=Ae,we=Ae*this._itemSize,ut.start=Math.floor(_e)),ut.end=Math.max(0,Math.min(be,ut.start+$))}var ft=we-ut.start*this._itemSize;if(ft0&&(ut.end=Math.min(be,ut.end+_n),ut.start=Math.max(0,Math.floor(_e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(ut),this._viewport.setRenderedContentOffset(this._itemSize*ut.start),this._scrolledIndexChange.next(Math.floor(_e))}}}]),bt}();function Qe(bt){return bt._scrollStrategy}var ot=function(){var bt=function(){function St(){(0,h.Z)(this,St),this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new it(this.itemSize,this.minBufferPx,this.maxBufferPx)}return(0,f.Z)(St,[{key:"itemSize",get:function(){return this._itemSize},set:function(ut){this._itemSize=(0,T.su)(ut)}},{key:"minBufferPx",get:function(){return this._minBufferPx},set:function(ut){this._minBufferPx=(0,T.su)(ut)}},{key:"maxBufferPx",get:function(){return this._maxBufferPx},set:function(ut){this._maxBufferPx=(0,T.su)(ut)}},{key:"ngOnChanges",value:function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}]),St}();return bt.\u0275fac=function(Pt){return new(Pt||bt)},bt.\u0275dir=B.lG2({type:bt,selectors:[["cdk-virtual-scroll-viewport","itemSize",""]],inputs:{itemSize:"itemSize",minBufferPx:"minBufferPx",maxBufferPx:"maxBufferPx"},features:[B._Bn([{provide:Rt,useFactory:Qe,deps:[(0,B.Gpc)(function(){return bt})]}]),B.TTD]}),bt}(),xe=function(){var bt=function(){function St(Pt,ut,yt){(0,h.Z)(this,St),this._ngZone=Pt,this._platform=ut,this._scrolled=new E.x,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=yt}return(0,f.Z)(St,[{key:"register",value:function(ut){var yt=this;this.scrollContainers.has(ut)||this.scrollContainers.set(ut,ut.elementScrolled().subscribe(function(){return yt._scrolled.next(ut)}))}},{key:"deregister",value:function(ut){var yt=this.scrollContainers.get(ut);yt&&(yt.unsubscribe(),this.scrollContainers.delete(ut))}},{key:"scrolled",value:function(){var ut=this,yt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return this._platform.isBrowser?new q.y(function(be){ut._globalSubscription||ut._addGlobalListener();var we=yt>0?ut._scrolled.pipe((0,X.e)(yt)).subscribe(be):ut._scrolled.subscribe(be);return ut._scrolledCount++,function(){we.unsubscribe(),ut._scrolledCount--,ut._scrolledCount||ut._removeGlobalListener()}}):(0,k.of)()}},{key:"ngOnDestroy",value:function(){var ut=this;this._removeGlobalListener(),this.scrollContainers.forEach(function(yt,be){return ut.deregister(be)}),this._scrolled.complete()}},{key:"ancestorScrolled",value:function(ut,yt){var be=this.getAncestorScrollContainers(ut);return this.scrolled(yt).pipe((0,ne.h)(function(we){return!we||be.indexOf(we)>-1}))}},{key:"getAncestorScrollContainers",value:function(ut){var yt=this,be=[];return this.scrollContainers.forEach(function(we,_e){yt._scrollableContainsElement(_e,ut)&&be.push(_e)}),be}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_scrollableContainsElement",value:function(ut,yt){var be=(0,T.fI)(yt),we=ut.getElementRef().nativeElement;do{if(be==we)return!0}while(be=be.parentElement);return!1}},{key:"_addGlobalListener",value:function(){var ut=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){var yt=ut._getWindow();return(0,ce.R)(yt.document,"scroll").subscribe(function(){return ut._scrolled.next()})})}},{key:"_removeGlobalListener",value:function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}]),St}();return bt.\u0275fac=function(Pt){return new(Pt||bt)(B.LFG(B.R0b),B.LFG(ge.t4),B.LFG(Ee.K0,8))},bt.\u0275prov=B.Yz7({token:bt,factory:bt.\u0275fac,providedIn:"root"}),bt}(),$e=function(){var bt=function(){function St(Pt,ut,yt,be){var we=this;(0,h.Z)(this,St),this.elementRef=Pt,this.scrollDispatcher=ut,this.ngZone=yt,this.dir=be,this._destroyed=new E.x,this._elementScrolled=new q.y(function(_e){return we.ngZone.runOutsideAngular(function(){return(0,ce.R)(we.elementRef.nativeElement,"scroll").pipe((0,ve.R)(we._destroyed)).subscribe(_e)})})}return(0,f.Z)(St,[{key:"ngOnInit",value:function(){this.scrollDispatcher.register(this)}},{key:"ngOnDestroy",value:function(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}},{key:"elementScrolled",value:function(){return this._elementScrolled}},{key:"getElementRef",value:function(){return this.elementRef}},{key:"scrollTo",value:function(ut){var yt=this.elementRef.nativeElement,be=this.dir&&"rtl"==this.dir.value;null==ut.left&&(ut.left=be?ut.end:ut.start),null==ut.right&&(ut.right=be?ut.start:ut.end),null!=ut.bottom&&(ut.top=yt.scrollHeight-yt.clientHeight-ut.bottom),be&&0!=(0,ge._i)()?(null!=ut.left&&(ut.right=yt.scrollWidth-yt.clientWidth-ut.left),2==(0,ge._i)()?ut.left=ut.right:1==(0,ge._i)()&&(ut.left=ut.right?-ut.right:ut.right)):null!=ut.right&&(ut.left=yt.scrollWidth-yt.clientWidth-ut.right),this._applyScrollToOptions(ut)}},{key:"_applyScrollToOptions",value:function(ut){var yt=this.elementRef.nativeElement;(0,ge.Mq)()?yt.scrollTo(ut):(null!=ut.top&&(yt.scrollTop=ut.top),null!=ut.left&&(yt.scrollLeft=ut.left))}},{key:"measureScrollOffset",value:function(ut){var yt="left",we=this.elementRef.nativeElement;if("top"==ut)return we.scrollTop;if("bottom"==ut)return we.scrollHeight-we.clientHeight-we.scrollTop;var _e=this.dir&&"rtl"==this.dir.value;return"start"==ut?ut=_e?"right":yt:"end"==ut&&(ut=_e?yt:"right"),_e&&2==(0,ge._i)()?ut==yt?we.scrollWidth-we.clientWidth-we.scrollLeft:we.scrollLeft:_e&&1==(0,ge._i)()?ut==yt?we.scrollLeft+we.scrollWidth-we.clientWidth:-we.scrollLeft:ut==yt?we.scrollLeft:we.scrollWidth-we.clientWidth-we.scrollLeft}}]),St}();return bt.\u0275fac=function(Pt){return new(Pt||bt)(B.Y36(B.SBq),B.Y36(xe),B.Y36(B.R0b),B.Y36(_t.Is,8))},bt.\u0275dir=B.lG2({type:bt,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]}),bt}(),ct=function(){var bt=function(){function St(Pt,ut,yt){var be=this;(0,h.Z)(this,St),this._platform=Pt,this._change=new E.x,this._changeListener=function(we){be._change.next(we)},this._document=yt,ut.runOutsideAngular(function(){if(Pt.isBrowser){var we=be._getWindow();we.addEventListener("resize",be._changeListener),we.addEventListener("orientationchange",be._changeListener)}be.change().subscribe(function(){return be._viewportSize=null})})}return(0,f.Z)(St,[{key:"ngOnDestroy",value:function(){if(this._platform.isBrowser){var ut=this._getWindow();ut.removeEventListener("resize",this._changeListener),ut.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}},{key:"getViewportSize",value:function(){this._viewportSize||this._updateViewportSize();var ut={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),ut}},{key:"getViewportRect",value:function(){var ut=this.getViewportScrollPosition(),yt=this.getViewportSize(),be=yt.width,we=yt.height;return{top:ut.top,left:ut.left,bottom:ut.top+we,right:ut.left+be,height:we,width:be}}},{key:"getViewportScrollPosition",value:function(){if(!this._platform.isBrowser)return{top:0,left:0};var ut=this._document,yt=this._getWindow(),be=ut.documentElement,we=be.getBoundingClientRect();return{top:-we.top||ut.body.scrollTop||yt.scrollY||be.scrollTop||0,left:-we.left||ut.body.scrollLeft||yt.scrollX||be.scrollLeft||0}}},{key:"change",value:function(){var ut=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return ut>0?this._change.pipe((0,X.e)(ut)):this._change}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_updateViewportSize",value:function(){var ut=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:ut.innerWidth,height:ut.innerHeight}:{width:0,height:0}}}]),St}();return bt.\u0275fac=function(Pt){return new(Pt||bt)(B.LFG(ge.t4),B.LFG(B.R0b),B.LFG(Ee.K0,8))},bt.\u0275prov=B.Yz7({token:bt,factory:bt.\u0275fac,providedIn:"root"}),bt}(),Te="undefined"!=typeof requestAnimationFrame?A:ie.E,vt=function(){var bt=function(St){(0,d.Z)(ut,St);var Pt=(0,s.Z)(ut);function ut(yt,be,we,_e,$,Ae,ft){var gt;return(0,h.Z)(this,ut),(gt=Pt.call(this,yt,Ae,we,$)).elementRef=yt,gt._changeDetectorRef=be,gt._scrollStrategy=_e,gt._detachedSubject=new E.x,gt._renderedRangeSubject=new E.x,gt._orientation="vertical",gt._appendOnly=!1,gt.scrolledIndexChange=new q.y(function(Bt){return gt._scrollStrategy.scrolledIndexChange.subscribe(function(_n){return Promise.resolve().then(function(){return gt.ngZone.run(function(){return Bt.next(_n)})})})}),gt.renderedRangeStream=gt._renderedRangeSubject,gt._totalContentSize=0,gt._totalContentWidth="",gt._totalContentHeight="",gt._renderedRange={start:0,end:0},gt._dataLength=0,gt._viewportSize=0,gt._renderedContentOffset=0,gt._renderedContentOffsetNeedsRewrite=!1,gt._isChangeDetectionPending=!1,gt._runAfterChangeDetection=[],gt._viewportChanges=v.w0.EMPTY,gt._viewportChanges=ft.change().subscribe(function(){gt.checkViewportSize()}),gt}return(0,f.Z)(ut,[{key:"orientation",get:function(){return this._orientation},set:function(be){this._orientation!==be&&(this._orientation=be,this._calculateSpacerSize())}},{key:"appendOnly",get:function(){return this._appendOnly},set:function(be){this._appendOnly=(0,T.Ig)(be)}},{key:"ngOnInit",value:function(){var be=this;(0,e.Z)((0,p.Z)(ut.prototype),"ngOnInit",this).call(this),this.ngZone.runOutsideAngular(function(){return Promise.resolve().then(function(){be._measureViewportSize(),be._scrollStrategy.attach(be),be.elementScrolled().pipe((0,Re.O)(null),(0,X.e)(0,Te)).subscribe(function(){return be._scrollStrategy.onContentScrolled()}),be._markChangeDetectionNeeded()})})}},{key:"ngOnDestroy",value:function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),this._viewportChanges.unsubscribe(),(0,e.Z)((0,p.Z)(ut.prototype),"ngOnDestroy",this).call(this)}},{key:"attach",value:function(be){var we=this;this.ngZone.runOutsideAngular(function(){we._forOf=be,we._forOf.dataStream.pipe((0,ve.R)(we._detachedSubject)).subscribe(function(_e){var $=_e.length;$!==we._dataLength&&(we._dataLength=$,we._scrollStrategy.onDataLengthChanged()),we._doChangeDetection()})})}},{key:"detach",value:function(){this._forOf=null,this._detachedSubject.next()}},{key:"getDataLength",value:function(){return this._dataLength}},{key:"getViewportSize",value:function(){return this._viewportSize}},{key:"getRenderedRange",value:function(){return this._renderedRange}},{key:"setTotalContentSize",value:function(be){this._totalContentSize!==be&&(this._totalContentSize=be,this._calculateSpacerSize(),this._markChangeDetectionNeeded())}},{key:"setRenderedRange",value:function(be){var we=this;(function Xe(bt,St){return bt.start==St.start&&bt.end==St.end})(this._renderedRange,be)||(this.appendOnly&&(be={start:0,end:Math.max(this._renderedRange.end,be.end)}),this._renderedRangeSubject.next(this._renderedRange=be),this._markChangeDetectionNeeded(function(){return we._scrollStrategy.onContentRendered()}))}},{key:"getOffsetToRenderedContentStart",value:function(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}},{key:"setRenderedContentOffset",value:function(be){var we=this,_e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"to-start",$=this.dir&&"rtl"==this.dir.value,Ae="horizontal"==this.orientation,ft=Ae?"X":"Y",gt=Ae&&$?-1:1,Bt="translate".concat(ft,"(").concat(Number(gt*be),"px)");this._renderedContentOffset=be,"to-end"===_e&&(Bt+=" translate".concat(ft,"(-100%)"),this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=Bt&&(this._renderedContentTransform=Bt,this._markChangeDetectionNeeded(function(){we._renderedContentOffsetNeedsRewrite?(we._renderedContentOffset-=we.measureRenderedContentSize(),we._renderedContentOffsetNeedsRewrite=!1,we.setRenderedContentOffset(we._renderedContentOffset)):we._scrollStrategy.onRenderedOffsetChanged()}))}},{key:"scrollToOffset",value:function(be){var we=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto",_e={behavior:we};"horizontal"===this.orientation?_e.start=be:_e.top=be,this.scrollTo(_e)}},{key:"scrollToIndex",value:function(be){var we=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto";this._scrollStrategy.scrollToIndex(be,we)}},{key:"measureScrollOffset",value:function(be){return be?(0,e.Z)((0,p.Z)(ut.prototype),"measureScrollOffset",this).call(this,be):(0,e.Z)((0,p.Z)(ut.prototype),"measureScrollOffset",this).call(this,"horizontal"===this.orientation?"start":"top")}},{key:"measureRenderedContentSize",value:function(){var be=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?be.offsetWidth:be.offsetHeight}},{key:"measureRangeSize",value:function(be){return this._forOf?this._forOf.measureRangeSize(be,this.orientation):0}},{key:"checkViewportSize",value:function(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}},{key:"_measureViewportSize",value:function(){var be=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?be.clientWidth:be.clientHeight}},{key:"_markChangeDetectionNeeded",value:function(be){var we=this;be&&this._runAfterChangeDetection.push(be),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(function(){return Promise.resolve().then(function(){we._doChangeDetection()})}))}},{key:"_doChangeDetection",value:function(){var be=this;this._isChangeDetectionPending=!1,this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform,this.ngZone.run(function(){return be._changeDetectorRef.markForCheck()});var we=this._runAfterChangeDetection;this._runAfterChangeDetection=[];var $,_e=(0,t.Z)(we);try{for(_e.s();!($=_e.n()).done;)(0,$.value)()}catch(ft){_e.e(ft)}finally{_e.f()}}},{key:"_calculateSpacerSize",value:function(){this._totalContentHeight="horizontal"===this.orientation?"":"".concat(this._totalContentSize,"px"),this._totalContentWidth="horizontal"===this.orientation?"".concat(this._totalContentSize,"px"):""}}]),ut}($e);return bt.\u0275fac=function(Pt){return new(Pt||bt)(B.Y36(B.SBq),B.Y36(B.sBO),B.Y36(B.R0b),B.Y36(Rt,8),B.Y36(_t.Is,8),B.Y36(xe),B.Y36(ct))},bt.\u0275cmp=B.Xpm({type:bt,selectors:[["cdk-virtual-scroll-viewport"]],viewQuery:function(Pt,ut){var yt;1&Pt&&B.Gf(qt,7),2&Pt&&B.iGM(yt=B.CRH())&&(ut._contentWrapper=yt.first)},hostAttrs:[1,"cdk-virtual-scroll-viewport"],hostVars:4,hostBindings:function(Pt,ut){2&Pt&&B.ekj("cdk-virtual-scroll-orientation-horizontal","horizontal"===ut.orientation)("cdk-virtual-scroll-orientation-vertical","horizontal"!==ut.orientation)},inputs:{orientation:"orientation",appendOnly:"appendOnly"},outputs:{scrolledIndexChange:"scrolledIndexChange"},features:[B._Bn([{provide:$e,useExisting:bt}]),B.qOj],ngContentSelectors:Lt,decls:4,vars:4,consts:[[1,"cdk-virtual-scroll-content-wrapper"],["contentWrapper",""],[1,"cdk-virtual-scroll-spacer"]],template:function(Pt,ut){1&Pt&&(B.F$t(),B.TgZ(0,"div",0,1),B.Hsn(2),B.qZA(),B._UZ(3,"div",2)),2&Pt&&(B.xp6(3),B.Udp("width",ut._totalContentWidth)("height",ut._totalContentHeight))},styles:["cdk-virtual-scroll-viewport{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}.cdk-virtual-scroll-content-wrapper{position:absolute;top:0;left:0;contain:content}[dir=rtl] .cdk-virtual-scroll-content-wrapper{right:0;left:auto}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper{min-height:100%}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;outline:none}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{min-width:100%}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0;border-bottom-width:0;outline:none}.cdk-virtual-scroll-spacer{position:absolute;top:0;left:0;height:1px;width:1px;transform-origin:0 0}[dir=rtl] .cdk-virtual-scroll-spacer{right:0;left:auto;transform-origin:100% 0}\n"],encapsulation:2,changeDetection:0}),bt}();function qe(bt,St,Pt){if(!Pt.getBoundingClientRect)return 0;var yt=Pt.getBoundingClientRect();return"horizontal"===bt?"start"===St?yt.left:yt.right:"start"===St?yt.top:yt.bottom}var je=function(){var bt=function(){function St(Pt,ut,yt,be,we,_e){var $=this;(0,h.Z)(this,St),this._viewContainerRef=Pt,this._template=ut,this._differs=yt,this._viewRepeater=be,this._viewport=we,this.viewChange=new E.x,this._dataSourceChanges=new E.x,this.dataStream=this._dataSourceChanges.pipe((0,Re.O)(null),function R(){return(0,V.e)(function(bt,St){var Pt,ut=!1;bt.subscribe((0,ue.x)(St,function(yt){var be=Pt;Pt=yt,ut&&St.next([be,yt]),ut=!0}))})}(),(0,Ie.w)(function(Ae){var ft=(0,P.Z)(Ae,2);return $._changeDataSource(ft[0],ft[1])}),function Y(bt,St,Pt){var ut,yt,be,we=!1;return bt&&"object"==typeof bt?(be=null!==(ut=bt.bufferSize)&&void 0!==ut?ut:1/0,St=null!==(yt=bt.windowTime)&&void 0!==yt?yt:1/0,we=!!bt.refCount,Pt=bt.scheduler):be=null!=bt?bt:1/0,(0,z.B)({connector:function(){return new r.t(be,St,Pt)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:we})}(1)),this._differ=null,this._needsUpdate=!1,this._destroyed=new E.x,this.dataStream.subscribe(function(Ae){$._data=Ae,$._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe((0,ve.R)(this._destroyed)).subscribe(function(Ae){$._renderedRange=Ae,_e.run(function(){return $.viewChange.next($._renderedRange)}),$._onRenderedDataChange()}),this._viewport.attach(this)}return(0,f.Z)(St,[{key:"cdkVirtualForOf",get:function(){return this._cdkVirtualForOf},set:function(ut){this._cdkVirtualForOf=ut,(0,wt.Z9)(ut)?this._dataSourceChanges.next(ut):this._dataSourceChanges.next(new wt.P3((0,H.b)(ut)?ut:Array.from(ut||[])))}},{key:"cdkVirtualForTrackBy",get:function(){return this._cdkVirtualForTrackBy},set:function(ut){var yt=this;this._needsUpdate=!0,this._cdkVirtualForTrackBy=ut?function(be,we){return ut(be+(yt._renderedRange?yt._renderedRange.start:0),we)}:void 0}},{key:"cdkVirtualForTemplate",set:function(ut){ut&&(this._needsUpdate=!0,this._template=ut)}},{key:"cdkVirtualForTemplateCacheSize",get:function(){return this._viewRepeater.viewCacheSize},set:function(ut){this._viewRepeater.viewCacheSize=(0,T.su)(ut)}},{key:"measureRangeSize",value:function(ut,yt){if(ut.start>=ut.end)return 0;for(var _e,$,be=ut.start-this._renderedRange.start,we=ut.end-ut.start,Ae=0;Ae-1;gt--){var Bt=this._viewContainerRef.get(gt+be);if(Bt&&Bt.rootNodes.length){$=Bt.rootNodes[Bt.rootNodes.length-1];break}}return _e&&$?qe(yt,"end",$)-qe(yt,"start",_e):0}},{key:"ngDoCheck",value:function(){if(this._differ&&this._needsUpdate){var ut=this._differ.diff(this._renderedItems);ut?this._applyChanges(ut):this._updateContext(),this._needsUpdate=!1}}},{key:"ngOnDestroy",value:function(){this._viewport.detach(),this._dataSourceChanges.next(void 0),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete(),this._viewRepeater.detach()}},{key:"_onRenderedDataChange",value:function(){var ut=this;!this._renderedRange||(this._renderedItems=this._data.slice(this._renderedRange.start,this._renderedRange.end),this._differ||(this._differ=this._differs.find(this._renderedItems).create(function(yt,be){return ut.cdkVirtualForTrackBy?ut.cdkVirtualForTrackBy(yt,be):be})),this._needsUpdate=!0)}},{key:"_changeDataSource",value:function(ut,yt){return ut&&ut.disconnect(this),this._needsUpdate=!0,yt?yt.connect(this):(0,k.of)()}},{key:"_updateContext",value:function(){for(var ut=this._data.length,yt=this._viewContainerRef.length;yt--;){var be=this._viewContainerRef.get(yt);be.context.index=this._renderedRange.start+yt,be.context.count=ut,this._updateComputedContextProperties(be.context),be.detectChanges()}}},{key:"_applyChanges",value:function(ut){var yt=this;this._viewRepeater.applyChanges(ut,this._viewContainerRef,function($,Ae,ft){return yt._getEmbeddedViewArgs($,ft)},function($){return $.item}),ut.forEachIdentityChange(function($){yt._viewContainerRef.get($.currentIndex).context.$implicit=$.item});for(var be=this._data.length,we=this._viewContainerRef.length;we--;){var _e=this._viewContainerRef.get(we);_e.context.index=this._renderedRange.start+we,_e.context.count=be,this._updateComputedContextProperties(_e.context)}}},{key:"_updateComputedContextProperties",value:function(ut){ut.first=0===ut.index,ut.last=ut.index===ut.count-1,ut.even=ut.index%2==0,ut.odd=!ut.even}},{key:"_getEmbeddedViewArgs",value:function(ut,yt){return{templateRef:this._template,context:{$implicit:ut.item,cdkVirtualForOf:this._cdkVirtualForOf,index:-1,count:-1,first:!1,last:!1,odd:!1,even:!1},index:yt}}}]),St}();return bt.\u0275fac=function(Pt){return new(Pt||bt)(B.Y36(B.s_b),B.Y36(B.Rgc),B.Y36(B.ZZ4),B.Y36(wt.k),B.Y36(vt,4),B.Y36(B.R0b))},bt.\u0275dir=B.lG2({type:bt,selectors:[["","cdkVirtualFor","","cdkVirtualForOf",""]],inputs:{cdkVirtualForOf:"cdkVirtualForOf",cdkVirtualForTrackBy:"cdkVirtualForTrackBy",cdkVirtualForTemplate:"cdkVirtualForTemplate",cdkVirtualForTemplateCacheSize:"cdkVirtualForTemplateCacheSize"},features:[B._Bn([{provide:wt.k,useClass:wt.eX}])]}),bt}(),Nt=function(){var bt=(0,f.Z)(function St(){(0,h.Z)(this,St)});return bt.\u0275fac=function(Pt){return new(Pt||bt)},bt.\u0275mod=B.oAB({type:bt}),bt.\u0275inj=B.cJS({}),bt}(),Ft=function(){var bt=(0,f.Z)(function St(){(0,h.Z)(this,St)});return bt.\u0275fac=function(Pt){return new(Pt||bt)},bt.\u0275mod=B.oAB({type:bt}),bt.\u0275inj=B.cJS({imports:[[_t.vT,ge.ud,Nt],_t.vT,Nt]}),bt}()},33865:function(dt,K,n){"use strict";n.d(K,{pN:function(){return r},hD:function(){return _t},O_:function(){return Y},Kb:function(){return Xe},fo:function(){return Re},QJ:function(){return ge},Z4:function(){return X},qM:function(){return vt},fe:function(){return Ge},Af:function(){return Ee},D5:function(){return se},xN:function(){return Te},s$:function(){return tt},r2:function(){return je},_J:function(){return qe},Sq:function(){return ct},zC:function(){return On},HT:function(){return fi},Hx:function(){return Un},T$:function(){return ft},$E:function(){return Bt},FT:function(){return gt},bH:function(){return _n},pF:function(){return $},nl:function(){return qt},oF:function(){return Lt}});var P=n(4089),t=n(20265),e=n(95106),p=n(86170),d=n(78069),s=n(48047),h=n(24582),f=n(7318),T=n(76484),B=n(89502),I=n(36362),v=n(76442),j=n(50253),Q=n(72957),J=n(76317),Z=n(14437),A=n(10745),N=n(68951),E=n(59295),k=n(51588),q=n(14390),ce=n(24426),ie=[[["caption"]],[["colgroup"],["col"]]],H=["caption","colgroup, col"];function V(rn,sn){if(1&rn&&(v.TgZ(0,"th",3),v._uU(1),v.qZA()),2&rn){var jt=v.oxw();v.Udp("text-align",jt.justify),v.xp6(1),v.hij(" ",jt.headerText," ")}}function ue(rn,sn){if(1&rn&&(v.TgZ(0,"td",4),v._uU(1),v.qZA()),2&rn){var jt=sn.$implicit,Ue=v.oxw();v.Udp("text-align",Ue.justify),v.xp6(1),v.hij(" ",Ue.dataAccessor(jt,Ue.name)," ")}}function R(rn){return function(sn){(0,h.Z)(Ue,sn);var jt=(0,f.Z)(Ue);function Ue(){var et;(0,d.Z)(this,Ue);for(var De=arguments.length,Ze=new Array(De),Je=0;Je4&&void 0!==arguments[4])||arguments[4],Ze=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],Je=arguments.length>6?arguments[6]:void 0;(0,d.Z)(this,rn),this._isNativeHtmlTable=sn,this._stickCellCss=jt,this.direction=Ue,this._coalescedStyleScheduler=et,this._isBrowser=De,this._needsPositionStickyOnElement=Ze,this._positionListener=Je,this._cachedCellWidths=[],this._borderCellCss={top:"".concat(jt,"-border-elem-top"),bottom:"".concat(jt,"-border-elem-bottom"),left:"".concat(jt,"-border-elem-left"),right:"".concat(jt,"-border-elem-right")}}return(0,s.Z)(rn,[{key:"clearStickyPositioning",value:function(jt,Ue){var Je,et=this,De=[],Ze=(0,e.Z)(jt);try{for(Ze.s();!(Je=Ze.n()).done;){var Ve=Je.value;if(Ve.nodeType===Ve.ELEMENT_NODE){De.push(Ve);for(var pt=0;pt3&&void 0!==arguments[3])||arguments[3];if(jt.length&&this._isBrowser&&(Ue.some(function(un){return un})||et.some(function(un){return un}))){var Je=jt[0],Ve=Je.children.length,pt=this._getCellWidths(Je,Ze),kt=this._getStickyStartColumnPositions(pt,Ue),en=this._getStickyEndColumnPositions(pt,et),Zn=Ue.lastIndexOf(!0),zt=et.indexOf(!0);this._coalescedStyleScheduler.schedule(function(){var An,un="rtl"===De.direction,tn=un?"right":"left",ln=un?"left":"right",gn=(0,e.Z)(jt);try{for(gn.s();!(An=gn.n()).done;)for(var Nn=An.value,ai=0;ai1&&void 0!==arguments[1])||arguments[1];if(!Ue&&this._cachedCellWidths.length)return this._cachedCellWidths;for(var et=[],De=jt.children,Ze=0;Ze0;Ze--)Ue[Ze]&&(et[Ze]=De,De+=jt[Ze]);return et}}]),rn}(),$=new v.OlP("CDK_SPL"),ft=function(){var rn=(0,s.Z)(function sn(jt,Ue){(0,d.Z)(this,sn),this.viewContainer=jt,this.elementRef=Ue});return rn.\u0275fac=function(jt){return new(jt||rn)(v.Y36(v.s_b),v.Y36(v.SBq))},rn.\u0275dir=v.lG2({type:rn,selectors:[["","rowOutlet",""]]}),rn}(),gt=function(){var rn=(0,s.Z)(function sn(jt,Ue){(0,d.Z)(this,sn),this.viewContainer=jt,this.elementRef=Ue});return rn.\u0275fac=function(jt){return new(jt||rn)(v.Y36(v.s_b),v.Y36(v.SBq))},rn.\u0275dir=v.lG2({type:rn,selectors:[["","headerRowOutlet",""]]}),rn}(),Bt=function(){var rn=(0,s.Z)(function sn(jt,Ue){(0,d.Z)(this,sn),this.viewContainer=jt,this.elementRef=Ue});return rn.\u0275fac=function(jt){return new(jt||rn)(v.Y36(v.s_b),v.Y36(v.SBq))},rn.\u0275dir=v.lG2({type:rn,selectors:[["","footerRowOutlet",""]]}),rn}(),_n=function(){var rn=(0,s.Z)(function sn(jt,Ue){(0,d.Z)(this,sn),this.viewContainer=jt,this.elementRef=Ue});return rn.\u0275fac=function(jt){return new(jt||rn)(v.Y36(v.s_b),v.Y36(v.SBq))},rn.\u0275dir=v.lG2({type:rn,selectors:[["","noDataRowOutlet",""]]}),rn}(),On=function(){var rn=function(){function sn(jt,Ue,et,De,Ze,Je,Ve,pt,kt,en,Zn,zt){(0,d.Z)(this,sn),this._differs=jt,this._changeDetectorRef=Ue,this._elementRef=et,this._dir=Ze,this._platform=Ve,this._viewRepeater=pt,this._coalescedStyleScheduler=kt,this._viewportRuler=en,this._stickyPositioningListener=Zn,this._ngZone=zt,this._onDestroy=new j.x,this._columnDefsByName=new Map,this._customColumnDefs=new Set,this._customRowDefs=new Set,this._customHeaderRowDefs=new Set,this._customFooterRowDefs=new Set,this._headerRowDefChanged=!0,this._footerRowDefChanged=!0,this._stickyColumnStylesNeedReset=!0,this._forceRecalculateCellWidths=!0,this._cachedRenderRowsMap=new Map,this.stickyCssClass="cdk-table-sticky",this.needsPositionStickyOnElement=!0,this._isShowingNoDataRow=!1,this._multiTemplateDataRows=!1,this._fixedLayout=!1,this.contentChanged=new v.vpe,this.viewChange=new J.X({start:0,end:Number.MAX_VALUE}),De||this._elementRef.nativeElement.setAttribute("role","table"),this._document=Je,this._isNativeHtmlTable="TABLE"===this._elementRef.nativeElement.nodeName}return(0,s.Z)(sn,[{key:"trackBy",get:function(){return this._trackByFn},set:function(Ue){this._trackByFn=Ue}},{key:"dataSource",get:function(){return this._dataSource},set:function(Ue){this._dataSource!==Ue&&this._switchDataSource(Ue)}},{key:"multiTemplateDataRows",get:function(){return this._multiTemplateDataRows},set:function(Ue){this._multiTemplateDataRows=(0,T.Ig)(Ue),this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}},{key:"fixedLayout",get:function(){return this._fixedLayout},set:function(Ue){this._fixedLayout=(0,T.Ig)(Ue),this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}},{key:"ngOnInit",value:function(){var Ue=this;this._setupStickyStyler(),this._isNativeHtmlTable&&this._applyNativeTableSections(),this._dataDiffer=this._differs.find([]).create(function(et,De){return Ue.trackBy?Ue.trackBy(De.dataIndex,De.data):De}),this._viewportRuler.change().pipe((0,N.R)(this._onDestroy)).subscribe(function(){Ue._forceRecalculateCellWidths=!0})}},{key:"ngAfterContentChecked",value:function(){this._cacheRowDefs(),this._cacheColumnDefs();var et=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||et,this._forceRecalculateCellWidths=et,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}},{key:"ngOnDestroy",value:function(){[this._rowOutlet.viewContainer,this._headerRowOutlet.viewContainer,this._footerRowOutlet.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(function(Ue){Ue.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._onDestroy.next(),this._onDestroy.complete(),(0,B.Z9)(this.dataSource)&&this.dataSource.disconnect(this)}},{key:"renderRows",value:function(){var Ue=this;this._renderRows=this._getAllRenderRows();var et=this._dataDiffer.diff(this._renderRows);if(!et)return this._updateNoDataRow(),void this.contentChanged.next();var De=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(et,De,function(Ze,Je,Ve){return Ue._getEmbeddedViewArgs(Ze.item,Ve)},function(Ze){return Ze.item.data},function(Ze){1===Ze.operation&&Ze.context&&Ue._renderCellTemplateForItem(Ze.record.item.rowDef,Ze.context)}),this._updateRowIndexContext(),et.forEachIdentityChange(function(Ze){De.get(Ze.currentIndex).context.$implicit=Ze.item.data}),this._updateNoDataRow(),this._ngZone&&v.R0b.isInAngularZone()?this._ngZone.onStable.pipe((0,E.q)(1),(0,N.R)(this._onDestroy)).subscribe(function(){Ue.updateStickyColumnStyles()}):this.updateStickyColumnStyles(),this.contentChanged.next()}},{key:"addColumnDef",value:function(Ue){this._customColumnDefs.add(Ue)}},{key:"removeColumnDef",value:function(Ue){this._customColumnDefs.delete(Ue)}},{key:"addRowDef",value:function(Ue){this._customRowDefs.add(Ue)}},{key:"removeRowDef",value:function(Ue){this._customRowDefs.delete(Ue)}},{key:"addHeaderRowDef",value:function(Ue){this._customHeaderRowDefs.add(Ue),this._headerRowDefChanged=!0}},{key:"removeHeaderRowDef",value:function(Ue){this._customHeaderRowDefs.delete(Ue),this._headerRowDefChanged=!0}},{key:"addFooterRowDef",value:function(Ue){this._customFooterRowDefs.add(Ue),this._footerRowDefChanged=!0}},{key:"removeFooterRowDef",value:function(Ue){this._customFooterRowDefs.delete(Ue),this._footerRowDefChanged=!0}},{key:"setNoDataRow",value:function(Ue){this._customNoDataRow=Ue}},{key:"updateStickyHeaderRowStyles",value:function(){var Ue=this._getRenderedRows(this._headerRowOutlet),De=this._elementRef.nativeElement.querySelector("thead");De&&(De.style.display=Ue.length?"":"none");var Ze=this._headerRowDefs.map(function(Je){return Je.sticky});this._stickyStyler.clearStickyPositioning(Ue,["top"]),this._stickyStyler.stickRows(Ue,Ze,"top"),this._headerRowDefs.forEach(function(Je){return Je.resetStickyChanged()})}},{key:"updateStickyFooterRowStyles",value:function(){var Ue=this._getRenderedRows(this._footerRowOutlet),De=this._elementRef.nativeElement.querySelector("tfoot");De&&(De.style.display=Ue.length?"":"none");var Ze=this._footerRowDefs.map(function(Je){return Je.sticky});this._stickyStyler.clearStickyPositioning(Ue,["bottom"]),this._stickyStyler.stickRows(Ue,Ze,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,Ze),this._footerRowDefs.forEach(function(Je){return Je.resetStickyChanged()})}},{key:"updateStickyColumnStyles",value:function(){var Ue=this,et=this._getRenderedRows(this._headerRowOutlet),De=this._getRenderedRows(this._rowOutlet),Ze=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this._fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([].concat((0,p.Z)(et),(0,p.Z)(De),(0,p.Z)(Ze)),["left","right"]),this._stickyColumnStylesNeedReset=!1),et.forEach(function(Je,Ve){Ue._addStickyColumnStyles([Je],Ue._headerRowDefs[Ve])}),this._rowDefs.forEach(function(Je){for(var Ve=[],pt=0;pt0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach(function(et,De){return Ue._renderRow(Ue._headerRowOutlet,et,De)}),this.updateStickyHeaderRowStyles()}},{key:"_forceRenderFooterRows",value:function(){var Ue=this;this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach(function(et,De){return Ue._renderRow(Ue._footerRowOutlet,et,De)}),this.updateStickyFooterRowStyles()}},{key:"_addStickyColumnStyles",value:function(Ue,et){var De=this,Ze=Array.from(et.columns||[]).map(function(pt){return De._columnDefsByName.get(pt)}),Je=Ze.map(function(pt){return pt.sticky}),Ve=Ze.map(function(pt){return pt.stickyEnd});this._stickyStyler.updateStickyColumns(Ue,Je,Ve,!this._fixedLayout||this._forceRecalculateCellWidths)}},{key:"_getRenderedRows",value:function(Ue){for(var et=[],De=0;De3&&void 0!==arguments[3]?arguments[3]:{},Je=Ue.viewContainer.createEmbeddedView(et.template,Ze,De);return this._renderCellTemplateForItem(et,Ze),Je}},{key:"_renderCellTemplateForItem",value:function(Ue,et){var Ze,De=(0,e.Z)(this._getCellTemplates(Ue));try{for(De.s();!(Ze=De.n()).done;)Xe.mostRecentCellOutlet&&Xe.mostRecentCellOutlet._viewContainer.createEmbeddedView(Ze.value,et)}catch(Ve){De.e(Ve)}finally{De.f()}this._changeDetectorRef.markForCheck()}},{key:"_updateRowIndexContext",value:function(){for(var Ue=this._rowOutlet.viewContainer,et=0,De=Ue.length;et0&&void 0!==arguments[0]&&arguments[0];if(this._enabled&&(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),this._cachedLineHeight)){var ce=this._elementRef.nativeElement,ie=ce.value;if(q||this._minRows!==this._previousMinRows||ie!==this._previousValue){var H=this._measureScrollHeight(),V=Math.max(H,this._cachedPlaceholderHeight||0);ce.style.height="".concat(V,"px"),this._ngZone.runOutsideAngular(function(){"undefined"!=typeof requestAnimationFrame?requestAnimationFrame(function(){return k._scrollToCaretPosition(ce)}):setTimeout(function(){return k._scrollToCaretPosition(ce)})}),this._previousValue=ie,this._previousMinRows=this._minRows}}}},{key:"reset",value:function(){void 0!==this._initialHeight&&(this._textareaElement.style.height=this._initialHeight)}},{key:"_noopInputHandler",value:function(){}},{key:"_getDocument",value:function(){return this._document||document}},{key:"_getWindow",value:function(){return this._getDocument().defaultView||window}},{key:"_scrollToCaretPosition",value:function(k){!this._destroyed.isStopped&&this._hasFocus&&k.setSelectionRange(k.selectionStart,k.selectionEnd)}}]),N}();return A.\u0275fac=function(E){return new(E||A)(p.Y36(p.SBq),p.Y36(e.t4),p.Y36(p.R0b),p.Y36(I.K0,8))},A.\u0275dir=p.lG2({type:A,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(E,k){1&E&&p.NdJ("input",function(){return k._noopInputHandler()})},inputs:{minRows:["cdkAutosizeMinRows","minRows"],maxRows:["cdkAutosizeMaxRows","maxRows"],enabled:["cdkTextareaAutosize","enabled"],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"]}),A}(),Z=function(){var A=(0,t.Z)(function N(){(0,P.Z)(this,N)});return A.\u0275fac=function(E){return new(E||A)},A.\u0275mod=p.oAB({type:A}),A.\u0275inj=p.cJS({imports:[[e.ud]]}),A}()},38205:function(dt,K,n){"use strict";n.d(K,{HI:function(){return ie},Xx:function(){return Ie},_0:function(){return X},nZ:function(){return qt},Hs:function(){return ne},rO:function(){return ue},cu:function(){return H},XJ:function(){return ge},Ud:function(){return _t},C2:function(){return q},VY:function(){return ce}});var P=n(4089),t=n(20265),e=n(95106),p=n(24582),d=n(7318),s=n(86170),h=n(78069),f=n(48047),T=n(89502),B=n(14437),I=n(50253),v=n(76317),j=n(10745),Q=n(59295),J=n(60116),Z=n(68951),A=n(76442),N=n(76484),E=n(51588),k=function(){function Lt(){(0,h.Z)(this,Lt),this.expansionModel=new T.Ov(!0)}return(0,f.Z)(Lt,[{key:"toggle",value:function(it){this.expansionModel.toggle(this._trackByValue(it))}},{key:"expand",value:function(it){this.expansionModel.select(this._trackByValue(it))}},{key:"collapse",value:function(it){this.expansionModel.deselect(this._trackByValue(it))}},{key:"isExpanded",value:function(it){return this.expansionModel.isSelected(this._trackByValue(it))}},{key:"toggleDescendants",value:function(it){this.expansionModel.isSelected(this._trackByValue(it))?this.collapseDescendants(it):this.expandDescendants(it)}},{key:"collapseAll",value:function(){this.expansionModel.clear()}},{key:"expandDescendants",value:function(it){var Qe,ot=this,tt=[it];tt.push.apply(tt,(0,s.Z)(this.getDescendants(it))),(Qe=this.expansionModel).select.apply(Qe,(0,s.Z)(tt.map(function(xe){return ot._trackByValue(xe)})))}},{key:"collapseDescendants",value:function(it){var Qe,ot=this,tt=[it];tt.push.apply(tt,(0,s.Z)(this.getDescendants(it))),(Qe=this.expansionModel).deselect.apply(Qe,(0,s.Z)(tt.map(function(xe){return ot._trackByValue(xe)})))}},{key:"_trackByValue",value:function(it){return this.trackBy?this.trackBy(it):it}}]),Lt}(),q=function(Lt){(0,p.Z)(it,Lt);var Rt=(0,d.Z)(it);function it(Qe,ot,tt){var xe;return(0,h.Z)(this,it),(xe=Rt.call(this)).getLevel=Qe,xe.isExpandable=ot,xe.options=tt,xe.options&&(xe.trackBy=xe.options.trackBy),xe}return(0,f.Z)(it,[{key:"getDescendants",value:function(ot){for(var xe=[],$e=this.dataNodes.indexOf(ot)+1;$e1&&void 0!==arguments[1]?arguments[1]:this._dataDiffer,xe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this._nodeOutlet.viewContainer,$e=arguments.length>3?arguments[3]:void 0,Ge=tt.diff(Qe);!Ge||(Ge.forEachOperation(function(ct,Xe,Te){if(null==ct.previousIndex)ot.insertNode(Qe[Te],Te,xe,$e);else if(null==Te)xe.remove(Xe),ot._levels.delete(ct.item);else{var vt=xe.get(Xe);xe.move(vt,Te)}}),this._changeDetectorRef.detectChanges())}},{key:"_getNodeDef",value:function(Qe,ot){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(function(xe){return xe.when&&xe.when(ot,Qe)})||this._defaultNodeDef}},{key:"insertNode",value:function(Qe,ot,tt,xe){var $e=this._getNodeDef(Qe,ot),Ge=new V(Qe);Ge.level=this.treeControl.getLevel?this.treeControl.getLevel(Qe):void 0!==xe&&this._levels.has(xe)?this._levels.get(xe)+1:0,this._levels.set(Qe,Ge.level),(tt||this._nodeOutlet.viewContainer).createEmbeddedView($e.template,Ge,ot),ne.mostRecentTreeNode&&(ne.mostRecentTreeNode.data=Qe)}}]),Rt}();return Lt.\u0275fac=function(it){return new(it||Lt)(A.Y36(A.ZZ4),A.Y36(A.sBO))},Lt.\u0275cmp=A.Xpm({type:Lt,selectors:[["cdk-tree"]],contentQueries:function(it,Qe,ot){var tt;1&it&&A.Suo(ot,ue,5),2&it&&A.iGM(tt=A.CRH())&&(Qe._nodeDefs=tt)},viewQuery:function(it,Qe){var ot;1&it&&A.Gf(H,7),2&it&&A.iGM(ot=A.CRH())&&(Qe._nodeOutlet=ot.first)},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(it,Qe){1&it&&A.GkF(0,0)},directives:[H],encapsulation:2}),Lt}(),ne=function(){var Lt=function(){function Rt(it,Qe){(0,h.Z)(this,Rt),this._elementRef=it,this._tree=Qe,this._destroyed=new I.x,this._dataChanges=new I.x,Rt.mostRecentTreeNode=this,this.role="treeitem"}return(0,f.Z)(Rt,[{key:"role",get:function(){return"treeitem"},set:function(Qe){this._elementRef.nativeElement.setAttribute("role",Qe)}},{key:"data",get:function(){return this._data},set:function(Qe){Qe!==this._data&&(this._data=Qe,this._setRoleFromData(),this._dataChanges.next())}},{key:"isExpanded",get:function(){return this._tree.treeControl.isExpanded(this._data)}},{key:"level",get:function(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}},{key:"ngOnInit",value:function(){this._parentNodeAriaLevel=function ve(Lt){for(var Rt=Lt.parentElement;Rt&&!Re(Rt);)Rt=Rt.parentElement;return Rt?Rt.classList.contains("cdk-nested-tree-node")?(0,N.su)(Rt.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level","".concat(this.level+1))}},{key:"ngOnDestroy",value:function(){Rt.mostRecentTreeNode===this&&(Rt.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"focus",value:function(){this._elementRef.nativeElement.focus()}},{key:"_setRoleFromData",value:function(){this.role="treeitem"}}]),Rt}();return Lt.mostRecentTreeNode=null,Lt.\u0275fac=function(it){return new(it||Lt)(A.Y36(A.SBq),A.Y36(X))},Lt.\u0275dir=A.lG2({type:Lt,selectors:[["cdk-tree-node"]],hostAttrs:[1,"cdk-tree-node"],hostVars:1,hostBindings:function(it,Qe){2&it&&A.uIk("aria-expanded",Qe.isExpanded)},inputs:{role:"role"},exportAs:["cdkTreeNode"]}),Lt}();function Re(Lt){var Rt=Lt.classList;return!(!(null==Rt?void 0:Rt.contains("cdk-nested-tree-node"))&&!(null==Rt?void 0:Rt.contains("cdk-tree")))}var Ie=function(){var Lt=function(Rt){(0,p.Z)(Qe,Rt);var it=(0,d.Z)(Qe);function Qe(ot,tt,xe){var $e;return(0,h.Z)(this,Qe),($e=it.call(this,ot,tt))._differs=xe,$e}return(0,f.Z)(Qe,[{key:"ngAfterContentInit",value:function(){var tt=this;this._dataDiffer=this._differs.find([]).create(this._tree.trackBy);var xe=this._tree.treeControl.getChildren(this.data);Array.isArray(xe)?this.updateChildrenNodes(xe):(0,B.b)(xe)&&xe.pipe((0,Z.R)(this._destroyed)).subscribe(function($e){return tt.updateChildrenNodes($e)}),this.nodeOutlet.changes.pipe((0,Z.R)(this._destroyed)).subscribe(function(){return tt.updateChildrenNodes()})}},{key:"ngOnInit",value:function(){(0,P.Z)((0,t.Z)(Qe.prototype),"ngOnInit",this).call(this)}},{key:"ngOnDestroy",value:function(){this._clear(),(0,P.Z)((0,t.Z)(Qe.prototype),"ngOnDestroy",this).call(this)}},{key:"updateChildrenNodes",value:function(tt){var xe=this._getNodeOutlet();tt&&(this._children=tt),xe&&this._children?this._tree.renderNodeChanges(this._children,this._dataDiffer,xe.viewContainer,this._data):this._dataDiffer.diff([])}},{key:"_clear",value:function(){var tt=this._getNodeOutlet();tt&&(tt.viewContainer.clear(),this._dataDiffer.diff([]))}},{key:"_getNodeOutlet",value:function(){var tt=this,xe=this.nodeOutlet;return xe&&xe.find(function($e){return!$e._node||$e._node===tt})}}]),Qe}(ne);return Lt.\u0275fac=function(it){return new(it||Lt)(A.Y36(A.SBq),A.Y36(X),A.Y36(A.ZZ4))},Lt.\u0275dir=A.lG2({type:Lt,selectors:[["cdk-nested-tree-node"]],contentQueries:function(it,Qe,ot){var tt;1&it&&A.Suo(ot,H,5),2&it&&A.iGM(tt=A.CRH())&&(Qe.nodeOutlet=tt)},hostAttrs:[1,"cdk-nested-tree-node"],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["cdkNestedTreeNode"],features:[A._Bn([{provide:ne,useExisting:Lt},{provide:ie,useExisting:Lt}]),A.qOj]}),Lt}(),Ee=/([A-Za-z%]+)$/,ge=function(){var Lt=function(){function Rt(it,Qe,ot,tt){var xe=this;(0,h.Z)(this,Rt),this._treeNode=it,this._tree=Qe,this._element=ot,this._dir=tt,this._destroyed=new I.x,this.indentUnits="px",this._indent=40,this._setPadding(),tt&&tt.change.pipe((0,Z.R)(this._destroyed)).subscribe(function(){return xe._setPadding(!0)}),it._dataChanges.subscribe(function(){return xe._setPadding()})}return(0,f.Z)(Rt,[{key:"level",get:function(){return this._level},set:function(Qe){this._setLevelInput(Qe)}},{key:"indent",get:function(){return this._indent},set:function(Qe){this._setIndentInput(Qe)}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_paddingIndent",value:function(){var Qe=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,ot=null==this._level?Qe:this._level;return"number"==typeof ot?"".concat(ot*this._indent).concat(this.indentUnits):null}},{key:"_setPadding",value:function(){var Qe=arguments.length>0&&void 0!==arguments[0]&&arguments[0],ot=this._paddingIndent();if(ot!==this._currentPadding||Qe){var tt=this._element.nativeElement,xe=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",$e="paddingLeft"===xe?"paddingRight":"paddingLeft";tt.style[xe]=ot||"",tt.style[$e]="",this._currentPadding=ot}}},{key:"_setLevelInput",value:function(Qe){this._level=(0,N.su)(Qe,null),this._setPadding()}},{key:"_setIndentInput",value:function(Qe){var ot=Qe,tt="px";if("string"==typeof Qe){var xe=Qe.split(Ee);ot=xe[0],tt=xe[1]||tt}this.indentUnits=tt,this._indent=(0,N.su)(ot),this._setPadding()}}]),Rt}();return Lt.\u0275fac=function(it){return new(it||Lt)(A.Y36(ne),A.Y36(X),A.Y36(A.SBq),A.Y36(E.Is,8))},Lt.\u0275dir=A.lG2({type:Lt,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),Lt}(),_t=function(){var Lt=function(){function Rt(it,Qe){(0,h.Z)(this,Rt),this._tree=it,this._treeNode=Qe,this._recursive=!1}return(0,f.Z)(Rt,[{key:"recursive",get:function(){return this._recursive},set:function(Qe){this._recursive=(0,N.Ig)(Qe)}},{key:"_toggle",value:function(Qe){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),Qe.stopPropagation()}}]),Rt}();return Lt.\u0275fac=function(it){return new(it||Lt)(A.Y36(X),A.Y36(ne))},Lt.\u0275dir=A.lG2({type:Lt,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(it,Qe){1&it&&A.NdJ("click",function(tt){return Qe._toggle(tt)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),Lt}(),qt=function(){var Lt=(0,f.Z)(function Rt(){(0,h.Z)(this,Rt)});return Lt.\u0275fac=function(it){return new(it||Lt)},Lt.\u0275mod=A.oAB({type:Lt}),Lt.\u0275inj=A.cJS({}),Lt}()},36362:function(dt,K,n){"use strict";n.d(K,{mr:function(){return V},Ov:function(){return ao},ez:function(){return _o},K0:function(){return j},uU:function(){return Ga},JJ:function(){return Ur},Do:function(){return R},Ts:function(){return eo},V_:function(){return Z},Ye:function(){return r},S$:function(){return ie},mk:function(){return ui},sg:function(){return ri},O5:function(){return xa},PC:function(){return Dn},RF:function(){return Fi},n9:function(){return va},ED:function(){return Za},tP:function(){return Hn},b0:function(){return ue},lw:function(){return Q},OU:function(){return zo},rS:function(){return Or},gd:function(){return Pr},EM:function(){return Er},JF:function(){return at},uf:function(){return da},NF:function(){return Ra},w_:function(){return v},bD:function(){return Ta},q:function(){return T},Mx:function(){return Vn},HT:function(){return I}});var P=n(95106),t=n(32090),e=n(24582),p=n(7318),d=n(48047),s=n(78069),h=n(76442),f=null;function T(){return f}function I(ee){f||(f=ee)}var v=(0,d.Z)(function ee(){(0,s.Z)(this,ee)}),j=new h.OlP("DocumentToken"),Q=function(){var ee=function(){function me(){(0,s.Z)(this,me)}return(0,d.Z)(me,[{key:"historyGo",value:function(Ye){throw new Error("Not implemented")}}]),me}();return ee.\u0275fac=function(Ne){return new(Ne||ee)},ee.\u0275prov=h.Yz7({token:ee,factory:function(){return function J(){return(0,h.LFG)(A)}()},providedIn:"platform"}),ee}(),Z=new h.OlP("Location Initialized"),A=function(){var ee=function(me){(0,e.Z)(Ye,me);var Ne=(0,p.Z)(Ye);function Ye(ht){var At;return(0,s.Z)(this,Ye),(At=Ne.call(this))._doc=ht,At._init(),At}return(0,d.Z)(Ye,[{key:"_init",value:function(){this.location=window.location,this._history=window.history}},{key:"getBaseHrefFromDOM",value:function(){return T().getBaseHref(this._doc)}},{key:"onPopState",value:function(At){var on=T().getGlobalEventTarget(this._doc,"window");return on.addEventListener("popstate",At,!1),function(){return on.removeEventListener("popstate",At)}}},{key:"onHashChange",value:function(At){var on=T().getGlobalEventTarget(this._doc,"window");return on.addEventListener("hashchange",At,!1),function(){return on.removeEventListener("hashchange",At)}}},{key:"href",get:function(){return this.location.href}},{key:"protocol",get:function(){return this.location.protocol}},{key:"hostname",get:function(){return this.location.hostname}},{key:"port",get:function(){return this.location.port}},{key:"pathname",get:function(){return this.location.pathname},set:function(At){this.location.pathname=At}},{key:"search",get:function(){return this.location.search}},{key:"hash",get:function(){return this.location.hash}},{key:"pushState",value:function(At,on,Pn){N()?this._history.pushState(At,on,Pn):this.location.hash=Pn}},{key:"replaceState",value:function(At,on,Pn){N()?this._history.replaceState(At,on,Pn):this.location.hash=Pn}},{key:"forward",value:function(){this._history.forward()}},{key:"back",value:function(){this._history.back()}},{key:"historyGo",value:function(){var At=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this._history.go(At)}},{key:"getState",value:function(){return this._history.state}}]),Ye}(Q);return ee.\u0275fac=function(Ne){return new(Ne||ee)(h.LFG(j))},ee.\u0275prov=h.Yz7({token:ee,factory:function(){return function E(){return new A((0,h.LFG)(j))}()},providedIn:"platform"}),ee}();function N(){return!!window.history.pushState}function k(ee,me){if(0==ee.length)return me;if(0==me.length)return ee;var Ne=0;return ee.endsWith("/")&&Ne++,me.startsWith("/")&&Ne++,2==Ne?ee+me.substring(1):1==Ne?ee+me:ee+"/"+me}function q(ee){var me=ee.match(/#|\?|$/),Ne=me&&me.index||ee.length;return ee.slice(0,Ne-("/"===ee[Ne-1]?1:0))+ee.slice(Ne)}function ce(ee){return ee&&"?"!==ee[0]?"?"+ee:ee}var ie=function(){var ee=function(){function me(){(0,s.Z)(this,me)}return(0,d.Z)(me,[{key:"historyGo",value:function(Ye){throw new Error("Not implemented")}}]),me}();return ee.\u0275fac=function(Ne){return new(Ne||ee)},ee.\u0275prov=h.Yz7({token:ee,factory:function(){return function H(ee){var me=(0,h.LFG)(j).location;return new ue((0,h.LFG)(Q),me&&me.origin||"")}()},providedIn:"root"}),ee}(),V=new h.OlP("appBaseHref"),ue=function(){var ee=function(me){(0,e.Z)(Ye,me);var Ne=(0,p.Z)(Ye);function Ye(ht,At){var on;if((0,s.Z)(this,Ye),(on=Ne.call(this))._platformLocation=ht,on._removeListenerFns=[],null==At&&(At=on._platformLocation.getBaseHrefFromDOM()),null==At)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return on._baseHref=At,on}return(0,d.Z)(Ye,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(At){this._removeListenerFns.push(this._platformLocation.onPopState(At),this._platformLocation.onHashChange(At))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"prepareExternalUrl",value:function(At){return k(this._baseHref,At)}},{key:"path",value:function(){var At=arguments.length>0&&void 0!==arguments[0]&&arguments[0],on=this._platformLocation.pathname+ce(this._platformLocation.search),Pn=this._platformLocation.hash;return Pn&&At?"".concat(on).concat(Pn):on}},{key:"pushState",value:function(At,on,Pn,Yn){var Wn=this.prepareExternalUrl(Pn+ce(Yn));this._platformLocation.pushState(At,on,Wn)}},{key:"replaceState",value:function(At,on,Pn,Yn){var Wn=this.prepareExternalUrl(Pn+ce(Yn));this._platformLocation.replaceState(At,on,Wn)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var on,Pn,At=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(Pn=(on=this._platformLocation).historyGo)||void 0===Pn||Pn.call(on,At)}}]),Ye}(ie);return ee.\u0275fac=function(Ne){return new(Ne||ee)(h.LFG(Q),h.LFG(V,8))},ee.\u0275prov=h.Yz7({token:ee,factory:ee.\u0275fac}),ee}(),R=function(){var ee=function(me){(0,e.Z)(Ye,me);var Ne=(0,p.Z)(Ye);function Ye(ht,At){var on;return(0,s.Z)(this,Ye),(on=Ne.call(this))._platformLocation=ht,on._baseHref="",on._removeListenerFns=[],null!=At&&(on._baseHref=At),on}return(0,d.Z)(Ye,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(At){this._removeListenerFns.push(this._platformLocation.onPopState(At),this._platformLocation.onHashChange(At))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"path",value:function(){var on=this._platformLocation.hash;return null==on&&(on="#"),on.length>0?on.substring(1):on}},{key:"prepareExternalUrl",value:function(At){var on=k(this._baseHref,At);return on.length>0?"#"+on:on}},{key:"pushState",value:function(At,on,Pn,Yn){var Wn=this.prepareExternalUrl(Pn+ce(Yn));0==Wn.length&&(Wn=this._platformLocation.pathname),this._platformLocation.pushState(At,on,Wn)}},{key:"replaceState",value:function(At,on,Pn,Yn){var Wn=this.prepareExternalUrl(Pn+ce(Yn));0==Wn.length&&(Wn=this._platformLocation.pathname),this._platformLocation.replaceState(At,on,Wn)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var on,Pn,At=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(Pn=(on=this._platformLocation).historyGo)||void 0===Pn||Pn.call(on,At)}}]),Ye}(ie);return ee.\u0275fac=function(Ne){return new(Ne||ee)(h.LFG(Q),h.LFG(V,8))},ee.\u0275prov=h.Yz7({token:ee,factory:ee.\u0275fac}),ee}(),r=function(){var ee=function(){function me(Ne,Ye){var ht=this;(0,s.Z)(this,me),this._subject=new h.vpe,this._urlChangeListeners=[],this._platformStrategy=Ne;var At=this._platformStrategy.getBaseHref();this._platformLocation=Ye,this._baseHref=q(se(At)),this._platformStrategy.onPopState(function(on){ht._subject.emit({url:ht.path(!0),pop:!0,state:on.state,type:on.type})})}return(0,d.Z)(me,[{key:"path",value:function(){var Ye=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.normalize(this._platformStrategy.path(Ye))}},{key:"getState",value:function(){return this._platformLocation.getState()}},{key:"isCurrentPathEqualTo",value:function(Ye){var ht=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this.path()==this.normalize(Ye+ce(ht))}},{key:"normalize",value:function(Ye){return me.stripTrailingSlash(function Y(ee,me){return ee&&me.startsWith(ee)?me.substring(ee.length):me}(this._baseHref,se(Ye)))}},{key:"prepareExternalUrl",value:function(Ye){return Ye&&"/"!==Ye[0]&&(Ye="/"+Ye),this._platformStrategy.prepareExternalUrl(Ye)}},{key:"go",value:function(Ye){var ht=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",At=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.pushState(At,"",Ye,ht),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ye+ce(ht)),At)}},{key:"replaceState",value:function(Ye){var ht=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",At=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.replaceState(At,"",Ye,ht),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ye+ce(ht)),At)}},{key:"forward",value:function(){this._platformStrategy.forward()}},{key:"back",value:function(){this._platformStrategy.back()}},{key:"historyGo",value:function(){var ht,At,Ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(At=(ht=this._platformStrategy).historyGo)||void 0===At||At.call(ht,Ye)}},{key:"onUrlChange",value:function(Ye){var ht=this;this._urlChangeListeners.push(Ye),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(function(At){ht._notifyUrlChangeListeners(At.url,At.state)}))}},{key:"_notifyUrlChangeListeners",value:function(){var Ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",ht=arguments.length>1?arguments[1]:void 0;this._urlChangeListeners.forEach(function(At){return At(Ye,ht)})}},{key:"subscribe",value:function(Ye,ht,At){return this._subject.subscribe({next:Ye,error:ht,complete:At})}}]),me}();return ee.normalizeQueryParams=ce,ee.joinWithSlash=k,ee.stripTrailingSlash=q,ee.\u0275fac=function(Ne){return new(Ne||ee)(h.LFG(ie),h.LFG(Q))},ee.\u0275prov=h.Yz7({token:ee,factory:function(){return function z(){return new r((0,h.LFG)(ie),(0,h.LFG)(Q))}()},providedIn:"root"}),ee}();function se(ee){return ee.replace(/\/index.html$/,"")}var ne=function(){return(ne=ne||{})[ne.Decimal=0]="Decimal",ne[ne.Percent=1]="Percent",ne[ne.Currency=2]="Currency",ne[ne.Scientific=3]="Scientific",ne}(),ve=function(){return(ve=ve||{})[ve.Zero=0]="Zero",ve[ve.One=1]="One",ve[ve.Two=2]="Two",ve[ve.Few=3]="Few",ve[ve.Many=4]="Many",ve[ve.Other=5]="Other",ve}(),Re=function(){return(Re=Re||{})[Re.Format=0]="Format",Re[Re.Standalone=1]="Standalone",Re}(),Ie=function(){return(Ie=Ie||{})[Ie.Narrow=0]="Narrow",Ie[Ie.Abbreviated=1]="Abbreviated",Ie[Ie.Wide=2]="Wide",Ie[Ie.Short=3]="Short",Ie}(),Ee=function(){return(Ee=Ee||{})[Ee.Short=0]="Short",Ee[Ee.Medium=1]="Medium",Ee[Ee.Long=2]="Long",Ee[Ee.Full=3]="Full",Ee}(),ge=function(){return(ge=ge||{})[ge.Decimal=0]="Decimal",ge[ge.Group=1]="Group",ge[ge.List=2]="List",ge[ge.PercentSign=3]="PercentSign",ge[ge.PlusSign=4]="PlusSign",ge[ge.MinusSign=5]="MinusSign",ge[ge.Exponential=6]="Exponential",ge[ge.SuperscriptingExponent=7]="SuperscriptingExponent",ge[ge.PerMille=8]="PerMille",ge[ge.Infinity=9]="Infinity",ge[ge.NaN=10]="NaN",ge[ge.TimeSeparator=11]="TimeSeparator",ge[ge.CurrencyDecimal=12]="CurrencyDecimal",ge[ge.CurrencyGroup=13]="CurrencyGroup",ge}();function tt(ee,me){return Pt((0,h.cg1)(ee)[h.wAp.DateFormat],me)}function xe(ee,me){return Pt((0,h.cg1)(ee)[h.wAp.TimeFormat],me)}function $e(ee,me){return Pt((0,h.cg1)(ee)[h.wAp.DateTimeFormat],me)}function Ge(ee,me){var Ne=(0,h.cg1)(ee),Ye=Ne[h.wAp.NumberSymbols][me];if(void 0===Ye){if(me===ge.CurrencyDecimal)return Ne[h.wAp.NumberSymbols][ge.Decimal];if(me===ge.CurrencyGroup)return Ne[h.wAp.NumberSymbols][ge.Group]}return Ye}var je=h.kL8;function Nt(ee){if(!ee[h.wAp.ExtraData])throw new Error('Missing extra locale data for the locale "'.concat(ee[h.wAp.LocaleId],'". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.'))}function Pt(ee,me){for(var Ne=me;Ne>-1;Ne--)if(void 0!==ee[Ne])return ee[Ne];throw new Error("Locale data API: locale data undefined")}function ut(ee){var me=ee.split(":"),Ne=(0,t.Z)(me,2);return{hours:+Ne[0],minutes:+Ne[1]}}var _e=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,$={},Ae=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/,ft=function(){return(ft=ft||{})[ft.Short=0]="Short",ft[ft.ShortGMT=1]="ShortGMT",ft[ft.Long=2]="Long",ft[ft.Extended=3]="Extended",ft}(),gt=function(){return(gt=gt||{})[gt.FullYear=0]="FullYear",gt[gt.Month=1]="Month",gt[gt.Date=2]="Date",gt[gt.Hours=3]="Hours",gt[gt.Minutes=4]="Minutes",gt[gt.Seconds=5]="Seconds",gt[gt.FractionalSeconds=6]="FractionalSeconds",gt[gt.Day=7]="Day",gt}(),Bt=function(){return(Bt=Bt||{})[Bt.DayPeriods=0]="DayPeriods",Bt[Bt.Days=1]="Days",Bt[Bt.Months=2]="Months",Bt[Bt.Eras=3]="Eras",Bt}();function _n(ee,me,Ne,Ye){var ht=function un(ee){if(ln(ee))return ee;if("number"==typeof ee&&!isNaN(ee))return new Date(ee);if("string"==typeof ee){if(ee=ee.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(ee)){var me=ee.split("-").map(function($t){return+$t}),Ne=(0,t.Z)(me,3),ht=Ne[1],on=Ne[2];return wn(Ne[0],(void 0===ht?1:ht)-1,void 0===on?1:on)}var Wn,Yn=parseFloat(ee);if(!isNaN(ee-Yn))return new Date(Yn);if(Wn=ee.match(_e))return function tn(ee){var me=new Date(0),Ne=0,Ye=0,ht=ee[8]?me.setUTCFullYear:me.setFullYear,At=ee[8]?me.setUTCHours:me.setHours;ee[9]&&(Ne=Number(ee[9]+ee[10]),Ye=Number(ee[9]+ee[11])),ht.call(me,Number(ee[1]),Number(ee[2])-1,Number(ee[3]));var on=Number(ee[4]||0)-Ne,Pn=Number(ee[5]||0)-Ye,Yn=Number(ee[6]||0),Wn=Math.floor(1e3*parseFloat("0."+(ee[7]||0)));return At.call(me,on,Pn,Yn,Wn),me}(Wn)}var st=new Date(ee);if(!ln(st))throw new Error('Unable to convert "'.concat(ee,'" into a date'));return st}(ee);me=Tn(Ne,me)||me;for(var Pn,on=[];me;){if(!(Pn=Ae.exec(me))){on.push(me);break}var Yn=(on=on.concat(Pn.slice(1))).pop();if(!Yn)break;me=Yn}var Wn=ht.getTimezoneOffset();Ye&&(Wn=en(Ye,Wn),ht=function zt(ee,me,Ne){var Ye=Ne?-1:1,ht=ee.getTimezoneOffset();return function Zn(ee,me){return(ee=new Date(ee.getTime())).setMinutes(ee.getMinutes()+me),ee}(ee,Ye*(en(me,ht)-ht))}(ht,Ye,!0));var st="";return on.forEach(function($t){var ze=function kt(ee){if(pt[ee])return pt[ee];var me;switch(ee){case"G":case"GG":case"GGG":me=rn(Bt.Eras,Ie.Abbreviated);break;case"GGGG":me=rn(Bt.Eras,Ie.Wide);break;case"GGGGG":me=rn(Bt.Eras,Ie.Narrow);break;case"y":me=si(gt.FullYear,1,0,!1,!0);break;case"yy":me=si(gt.FullYear,2,0,!0,!0);break;case"yyy":me=si(gt.FullYear,3,0,!1,!0);break;case"yyyy":me=si(gt.FullYear,4,0,!1,!0);break;case"Y":me=Ve(1);break;case"YY":me=Ve(2,!0);break;case"YYY":me=Ve(3);break;case"YYYY":me=Ve(4);break;case"M":case"L":me=si(gt.Month,1,1);break;case"MM":case"LL":me=si(gt.Month,2,1);break;case"MMM":me=rn(Bt.Months,Ie.Abbreviated);break;case"MMMM":me=rn(Bt.Months,Ie.Wide);break;case"MMMMM":me=rn(Bt.Months,Ie.Narrow);break;case"LLL":me=rn(Bt.Months,Ie.Abbreviated,Re.Standalone);break;case"LLLL":me=rn(Bt.Months,Ie.Wide,Re.Standalone);break;case"LLLLL":me=rn(Bt.Months,Ie.Narrow,Re.Standalone);break;case"w":me=Je(1);break;case"ww":me=Je(2);break;case"W":me=Je(1,!0);break;case"d":me=si(gt.Date,1);break;case"dd":me=si(gt.Date,2);break;case"c":case"cc":me=si(gt.Day,1);break;case"ccc":me=rn(Bt.Days,Ie.Abbreviated,Re.Standalone);break;case"cccc":me=rn(Bt.Days,Ie.Wide,Re.Standalone);break;case"ccccc":me=rn(Bt.Days,Ie.Narrow,Re.Standalone);break;case"cccccc":me=rn(Bt.Days,Ie.Short,Re.Standalone);break;case"E":case"EE":case"EEE":me=rn(Bt.Days,Ie.Abbreviated);break;case"EEEE":me=rn(Bt.Days,Ie.Wide);break;case"EEEEE":me=rn(Bt.Days,Ie.Narrow);break;case"EEEEEE":me=rn(Bt.Days,Ie.Short);break;case"a":case"aa":case"aaa":me=rn(Bt.DayPeriods,Ie.Abbreviated);break;case"aaaa":me=rn(Bt.DayPeriods,Ie.Wide);break;case"aaaaa":me=rn(Bt.DayPeriods,Ie.Narrow);break;case"b":case"bb":case"bbb":me=rn(Bt.DayPeriods,Ie.Abbreviated,Re.Standalone,!0);break;case"bbbb":me=rn(Bt.DayPeriods,Ie.Wide,Re.Standalone,!0);break;case"bbbbb":me=rn(Bt.DayPeriods,Ie.Narrow,Re.Standalone,!0);break;case"B":case"BB":case"BBB":me=rn(Bt.DayPeriods,Ie.Abbreviated,Re.Format,!0);break;case"BBBB":me=rn(Bt.DayPeriods,Ie.Wide,Re.Format,!0);break;case"BBBBB":me=rn(Bt.DayPeriods,Ie.Narrow,Re.Format,!0);break;case"h":me=si(gt.Hours,1,-12);break;case"hh":me=si(gt.Hours,2,-12);break;case"H":me=si(gt.Hours,1);break;case"HH":me=si(gt.Hours,2);break;case"m":me=si(gt.Minutes,1);break;case"mm":me=si(gt.Minutes,2);break;case"s":me=si(gt.Seconds,1);break;case"ss":me=si(gt.Seconds,2);break;case"S":me=si(gt.FractionalSeconds,1);break;case"SS":me=si(gt.FractionalSeconds,2);break;case"SSS":me=si(gt.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":me=jt(ft.Short);break;case"ZZZZZ":me=jt(ft.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":me=jt(ft.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":me=jt(ft.Long);break;default:return null}return pt[ee]=me,me}($t);st+=ze?ze(ht,Ne,Wn):"''"===$t?"'":$t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),st}function wn(ee,me,Ne){var Ye=new Date(0);return Ye.setFullYear(ee,me,Ne),Ye.setHours(0,0,0),Ye}function Tn(ee,me){var Ne=function wt(ee){return(0,h.cg1)(ee)[h.wAp.LocaleId]}(ee);if($[Ne]=$[Ne]||{},$[Ne][me])return $[Ne][me];var Ye="";switch(me){case"shortDate":Ye=tt(ee,Ee.Short);break;case"mediumDate":Ye=tt(ee,Ee.Medium);break;case"longDate":Ye=tt(ee,Ee.Long);break;case"fullDate":Ye=tt(ee,Ee.Full);break;case"shortTime":Ye=xe(ee,Ee.Short);break;case"mediumTime":Ye=xe(ee,Ee.Medium);break;case"longTime":Ye=xe(ee,Ee.Long);break;case"fullTime":Ye=xe(ee,Ee.Full);break;case"short":var ht=Tn(ee,"shortTime"),At=Tn(ee,"shortDate");Ye=On($e(ee,Ee.Short),[ht,At]);break;case"medium":var on=Tn(ee,"mediumTime"),Pn=Tn(ee,"mediumDate");Ye=On($e(ee,Ee.Medium),[on,Pn]);break;case"long":var Yn=Tn(ee,"longTime"),Wn=Tn(ee,"longDate");Ye=On($e(ee,Ee.Long),[Yn,Wn]);break;case"full":var st=Tn(ee,"fullTime"),$t=Tn(ee,"fullDate");Ye=On($e(ee,Ee.Full),[st,$t])}return Ye&&($[Ne][me]=Ye),Ye}function On(ee,me){return me&&(ee=ee.replace(/\{([^}]+)}/g,function(Ne,Ye){return null!=me&&Ye in me?me[Ye]:Ne})),ee}function Jn(ee,me){var Ne=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",Ye=arguments.length>3?arguments[3]:void 0,ht=arguments.length>4?arguments[4]:void 0,At="";(ee<0||ht&&ee<=0)&&(ht?ee=1-ee:(ee=-ee,At=Ne));for(var on=String(ee);on.length2&&void 0!==arguments[2]?arguments[2]:0,Ye=arguments.length>3&&void 0!==arguments[3]&&arguments[3],ht=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return function(At,on){var Pn=fi(ee,At);if((Ne>0||Pn>-Ne)&&(Pn+=Ne),ee===gt.Hours)0===Pn&&-12===Ne&&(Pn=12);else if(ee===gt.FractionalSeconds)return Un(Pn,me);var Yn=Ge(on,ge.MinusSign);return Jn(Pn,me,Yn,Ye,ht)}}function fi(ee,me){switch(ee){case gt.FullYear:return me.getFullYear();case gt.Month:return me.getMonth();case gt.Date:return me.getDate();case gt.Hours:return me.getHours();case gt.Minutes:return me.getMinutes();case gt.Seconds:return me.getSeconds();case gt.FractionalSeconds:return me.getMilliseconds();case gt.Day:return me.getDay();default:throw new Error('Unknown DateType value "'.concat(ee,'".'))}}function rn(ee,me){var Ne=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Re.Format,Ye=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return function(ht,At){return sn(ht,At,ee,me,Ne,Ye)}}function sn(ee,me,Ne,Ye,ht,At){switch(Ne){case Bt.Months:return function Rt(ee,me,Ne){var Ye=(0,h.cg1)(ee),At=Pt([Ye[h.wAp.MonthsFormat],Ye[h.wAp.MonthsStandalone]],me);return Pt(At,Ne)}(me,ht,Ye)[ee.getMonth()];case Bt.Days:return function Lt(ee,me,Ne){var Ye=(0,h.cg1)(ee),At=Pt([Ye[h.wAp.DaysFormat],Ye[h.wAp.DaysStandalone]],me);return Pt(At,Ne)}(me,ht,Ye)[ee.getDay()];case Bt.DayPeriods:var on=ee.getHours(),Pn=ee.getMinutes();if(At){var Yn=function Ft(ee){var me=(0,h.cg1)(ee);return Nt(me),(me[h.wAp.ExtraData][2]||[]).map(function(Ye){return"string"==typeof Ye?ut(Ye):[ut(Ye[0]),ut(Ye[1])]})}(me),Wn=function bt(ee,me,Ne){var Ye=(0,h.cg1)(ee);Nt(Ye);var At=Pt([Ye[h.wAp.ExtraData][0],Ye[h.wAp.ExtraData][1]],me)||[];return Pt(At,Ne)||[]}(me,ht,Ye),st=Yn.findIndex(function(ze){if(Array.isArray(ze)){var Se=(0,t.Z)(ze,2),ae=Se[0],de=Se[1],ye=on>=ae.hours&&Pn>=ae.minutes,Be=on0?Math.floor(ht/60):Math.ceil(ht/60);switch(ee){case ft.Short:return(ht>=0?"+":"")+Jn(on,2,At)+Jn(Math.abs(ht%60),2,At);case ft.ShortGMT:return"GMT"+(ht>=0?"+":"")+Jn(on,1,At);case ft.Long:return"GMT"+(ht>=0?"+":"")+Jn(on,2,At)+":"+Jn(Math.abs(ht%60),2,At);case ft.Extended:return 0===Ye?"Z":(ht>=0?"+":"")+Jn(on,2,At)+":"+Jn(Math.abs(ht%60),2,At);default:throw new Error('Unknown zone width "'.concat(ee,'"'))}}}function De(ee){var me=wn(ee,0,1).getDay();return wn(ee,0,1+(me<=4?4:11)-me)}function Ze(ee){return wn(ee.getFullYear(),ee.getMonth(),ee.getDate()+(4-ee.getDay()))}function Je(ee){var me=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return function(Ne,Ye){var ht;if(me){var At=new Date(Ne.getFullYear(),Ne.getMonth(),1).getDay()-1,on=Ne.getDate();ht=1+Math.floor((on+At)/7)}else{var Pn=Ze(Ne),Yn=De(Pn.getFullYear()),Wn=Pn.getTime()-Yn.getTime();ht=1+Math.round(Wn/6048e5)}return Jn(ht,ee,Ge(Ye,ge.MinusSign))}}function Ve(ee){var me=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return function(Ne,Ye){return Jn(Ze(Ne).getFullYear(),ee,Ge(Ye,ge.MinusSign),me)}}var pt={};function en(ee,me){ee=ee.replace(/:/g,"");var Ne=Date.parse("Jan 01, 1970 00:00:00 "+ee)/6e4;return isNaN(Ne)?me:Ne}function ln(ee){return ee instanceof Date&&!isNaN(ee.valueOf())}var gn=/^(\d+)?\.((\d+)(-(\d+))?)?$/,ai="0";function da(ee,me,Ne){return function ea(ee,me,Ne,Ye,ht,At){var on=arguments.length>6&&void 0!==arguments[6]&&arguments[6],Pn="",Yn=!1;if(isFinite(ee)){var Wn=fn(ee);on&&(Wn=ta(Wn));var st=me.minInt,$t=me.minFrac,ze=me.maxFrac;if(At){var Se=At.match(gn);if(null===Se)throw new Error("".concat(At," is not a valid digit info"));var ae=Se[1],de=Se[3],ye=Se[5];null!=ae&&(st=Ct(ae)),null!=de&&($t=Ct(de)),null!=ye?ze=Ct(ye):null!=de&&$t>ze&&(ze=$t)}yn(Wn,$t,ze);var Be=Wn.digits,nt=Wn.integerLen,Dt=Wn.exponent,cn=[];for(Yn=Be.every(function(ni){return!ni});nt0?cn=Be.splice(nt,Be.length):(cn=Be,Be=[0]);var kn=[];for(Be.length>=me.lgSize&&kn.unshift(Be.splice(-me.lgSize,Be.length).join(""));Be.length>me.gSize;)kn.unshift(Be.splice(-me.gSize,Be.length).join(""));Be.length&&kn.unshift(Be.join("")),Pn=kn.join(Ge(Ne,Ye)),cn.length&&(Pn+=Ge(Ne,ht)+cn.join("")),Dt&&(Pn+=Ge(Ne,ge.Exponential)+"+"+Dt)}else Pn=Ge(Ne,ge.Infinity);return ee<0&&!Yn?me.negPre+Pn+me.negSuf:me.posPre+Pn+me.posSuf}(ee,function Na(ee){var me=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"-",Ne={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},Ye=ee.split(";"),ht=Ye[0],At=Ye[1],on=-1!==ht.indexOf(".")?ht.split("."):[ht.substring(0,ht.lastIndexOf(ai)+1),ht.substring(ht.lastIndexOf(ai)+1)],Pn=on[0],Yn=on[1]||"";Ne.posPre=Pn.substr(0,Pn.indexOf("#"));for(var Wn=0;Wn-1&&(me=me.replace(".","")),(At=me.search(/e/i))>0?(ht<0&&(ht=At),ht+=+me.slice(At+1),me=me.substring(0,At)):ht<0&&(ht=me.length),At=0;me.charAt(At)===ai;At++);if(At===(Pn=me.length))Ye=[0],ht=1;else{for(Pn--;me.charAt(Pn)===ai;)Pn--;for(ht-=At,Ye=[],on=0;At<=Pn;At++,on++)Ye[on]=Number(me.charAt(At))}return ht>22&&(Ye=Ye.splice(0,21),Ne=ht-1,ht=1),{digits:Ye,exponent:Ne,integerLen:ht}}function yn(ee,me,Ne){if(me>Ne)throw new Error("The minimum number of digits after fraction (".concat(me,") is higher than the maximum (").concat(Ne,")."));var Ye=ee.digits,ht=Ye.length-ee.integerLen,At=Math.min(Math.max(me,ht),Ne),on=At+ee.integerLen,Pn=Ye[on];if(on>0){Ye.splice(Math.max(ee.integerLen,on));for(var Yn=on;Yn=5)if(on-1<0){for(var st=0;st>on;st--)Ye.unshift(0),ee.integerLen++;Ye.unshift(1),ee.integerLen++}else Ye[on-1]++;for(;ht=ze?Be.pop():$t=!1),de>=10?1:0},0);Se&&(Ye.unshift(Se),ee.integerLen++)}function Ct(ee){var me=parseInt(ee);if(isNaN(me))throw new Error("Invalid integer literal when parsing "+ee);return me}var Pe=(0,d.Z)(function ee(){(0,s.Z)(this,ee)}),Jt=function(){var ee=function(me){(0,e.Z)(Ye,me);var Ne=(0,p.Z)(Ye);function Ye(ht){var At;return(0,s.Z)(this,Ye),(At=Ne.call(this)).locale=ht,At}return(0,d.Z)(Ye,[{key:"getPluralCategory",value:function(At,on){switch(je(on||this.locale)(At)){case ve.Zero:return"zero";case ve.One:return"one";case ve.Two:return"two";case ve.Few:return"few";case ve.Many:return"many";default:return"other"}}}]),Ye}(Pe);return ee.\u0275fac=function(Ne){return new(Ne||ee)(h.LFG(h.soG))},ee.\u0275prov=h.Yz7({token:ee,factory:ee.\u0275fac}),ee}();function Vn(ee,me){me=encodeURIComponent(me);var Ye,Ne=(0,P.Z)(ee.split(";"));try{for(Ne.s();!(Ye=Ne.n()).done;){var ht=Ye.value,At=ht.indexOf("="),on=-1==At?[ht,""]:[ht.slice(0,At),ht.slice(At+1)],Pn=(0,t.Z)(on,2),Wn=Pn[1];if(Pn[0].trim()===me)return decodeURIComponent(Wn)}}catch(st){Ne.e(st)}finally{Ne.f()}return null}var ui=function(){var ee=function(){function me(Ne,Ye,ht,At){(0,s.Z)(this,me),this._iterableDiffers=Ne,this._keyValueDiffers=Ye,this._ngEl=ht,this._renderer=At,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}return(0,d.Z)(me,[{key:"klass",set:function(Ye){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof Ye?Ye.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}},{key:"ngClass",set:function(Ye){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof Ye?Ye.split(/\s+/):Ye,this._rawClass&&((0,h.sIi)(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}},{key:"ngDoCheck",value:function(){if(this._iterableDiffer){var Ye=this._iterableDiffer.diff(this._rawClass);Ye&&this._applyIterableChanges(Ye)}else if(this._keyValueDiffer){var ht=this._keyValueDiffer.diff(this._rawClass);ht&&this._applyKeyValueChanges(ht)}}},{key:"_applyKeyValueChanges",value:function(Ye){var ht=this;Ye.forEachAddedItem(function(At){return ht._toggleClass(At.key,At.currentValue)}),Ye.forEachChangedItem(function(At){return ht._toggleClass(At.key,At.currentValue)}),Ye.forEachRemovedItem(function(At){At.previousValue&&ht._toggleClass(At.key,!1)})}},{key:"_applyIterableChanges",value:function(Ye){var ht=this;Ye.forEachAddedItem(function(At){if("string"!=typeof At.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got ".concat((0,h.AaK)(At.item)));ht._toggleClass(At.item,!0)}),Ye.forEachRemovedItem(function(At){return ht._toggleClass(At.item,!1)})}},{key:"_applyClasses",value:function(Ye){var ht=this;Ye&&(Array.isArray(Ye)||Ye instanceof Set?Ye.forEach(function(At){return ht._toggleClass(At,!0)}):Object.keys(Ye).forEach(function(At){return ht._toggleClass(At,!!Ye[At])}))}},{key:"_removeClasses",value:function(Ye){var ht=this;Ye&&(Array.isArray(Ye)||Ye instanceof Set?Ye.forEach(function(At){return ht._toggleClass(At,!1)}):Object.keys(Ye).forEach(function(At){return ht._toggleClass(At,!1)}))}},{key:"_toggleClass",value:function(Ye,ht){var At=this;(Ye=Ye.trim())&&Ye.split(/\s+/g).forEach(function(on){ht?At._renderer.addClass(At._ngEl.nativeElement,on):At._renderer.removeClass(At._ngEl.nativeElement,on)})}}]),me}();return ee.\u0275fac=function(Ne){return new(Ne||ee)(h.Y36(h.ZZ4),h.Y36(h.aQg),h.Y36(h.SBq),h.Y36(h.Qsj))},ee.\u0275dir=h.lG2({type:ee,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),ee}(),Ii=function(){function ee(me,Ne,Ye,ht){(0,s.Z)(this,ee),this.$implicit=me,this.ngForOf=Ne,this.index=Ye,this.count=ht}return(0,d.Z)(ee,[{key:"first",get:function(){return 0===this.index}},{key:"last",get:function(){return this.index===this.count-1}},{key:"even",get:function(){return this.index%2==0}},{key:"odd",get:function(){return!this.even}}]),ee}(),ri=function(){var ee=function(){function me(Ne,Ye,ht){(0,s.Z)(this,me),this._viewContainer=Ne,this._template=Ye,this._differs=ht,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}return(0,d.Z)(me,[{key:"ngForOf",set:function(Ye){this._ngForOf=Ye,this._ngForOfDirty=!0}},{key:"ngForTrackBy",get:function(){return this._trackByFn},set:function(Ye){this._trackByFn=Ye}},{key:"ngForTemplate",set:function(Ye){Ye&&(this._template=Ye)}},{key:"ngDoCheck",value:function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var Ye=this._ngForOf;!this._differ&&Ye&&(this._differ=this._differs.find(Ye).create(this.ngForTrackBy))}if(this._differ){var ht=this._differ.diff(this._ngForOf);ht&&this._applyChanges(ht)}}},{key:"_applyChanges",value:function(Ye){var ht=this,At=this._viewContainer;Ye.forEachOperation(function(st,$t,ze){if(null==st.previousIndex)At.createEmbeddedView(ht._template,new Ii(st.item,ht._ngForOf,-1,-1),null===ze?void 0:ze);else if(null==ze)At.remove(null===$t?void 0:$t);else if(null!==$t){var Se=At.get($t);At.move(Se,ze),Ci(Se,st)}});for(var on=0,Pn=At.length;on1&&void 0!==arguments[1]?arguments[1]:"mediumDate",At=arguments.length>2?arguments[2]:void 0,on=arguments.length>3?arguments[3]:void 0;if(null==Ye||""===Ye||Ye!=Ye)return null;try{return _n(Ye,ht,on||this.locale,null!==(Pn=null!=At?At:this.defaultTimezone)&&void 0!==Pn?Pn:void 0)}catch(Yn){throw vi()}}}]),me}();return ee.\u0275fac=function(Ne){return new(Ne||ee)(h.Y36(h.soG,16),h.Y36(Dr,24))},ee.\u0275pipe=h.Yjl({name:"date",type:ee,pure:!0}),ee}(),eo=function(){var ee=function(){function me(){(0,s.Z)(this,me)}return(0,d.Z)(me,[{key:"transform",value:function(Ye){return JSON.stringify(Ye,null,2)}}]),me}();return ee.\u0275fac=function(Ne){return new(Ne||ee)},ee.\u0275pipe=h.Yjl({name:"json",type:ee,pure:!1}),ee}(),Ur=function(){var ee=function(){function me(Ne){(0,s.Z)(this,me),this._locale=Ne}return(0,d.Z)(me,[{key:"transform",value:function(Ye,ht,At){if(!function mr(ee){return!(null==ee||""===ee||ee!=ee)}(Ye))return null;At=At||this._locale;try{return da(function ro(ee){if("string"==typeof ee&&!isNaN(Number(ee)-parseFloat(ee)))return Number(ee);if("number"!=typeof ee)throw new Error("".concat(ee," is not a number"));return ee}(Ye),At,ht)}catch(Pn){throw vi()}}}]),me}();return ee.\u0275fac=function(Ne){return new(Ne||ee)(h.Y36(h.soG,16))},ee.\u0275pipe=h.Yjl({name:"number",type:ee,pure:!0}),ee}();var zo=function(){var ee=function(){function me(){(0,s.Z)(this,me)}return(0,d.Z)(me,[{key:"transform",value:function(Ye,ht,At){if(null==Ye)return null;if(!this.supports(Ye))throw vi();return Ye.slice(ht,At)}},{key:"supports",value:function(Ye){return"string"==typeof Ye||Array.isArray(Ye)}}]),me}();return ee.\u0275fac=function(Ne){return new(Ne||ee)},ee.\u0275pipe=h.Yjl({name:"slice",type:ee,pure:!1}),ee}(),_o=function(){var ee=(0,d.Z)(function me(){(0,s.Z)(this,me)});return ee.\u0275fac=function(Ne){return new(Ne||ee)},ee.\u0275mod=h.oAB({type:ee}),ee.\u0275inj=h.cJS({providers:[{provide:Pe,useClass:Jt}]}),ee}(),Ta="browser";function Ra(ee){return ee===Ta}var Er=function(){var ee=(0,d.Z)(function me(){(0,s.Z)(this,me)});return ee.\u0275prov=(0,h.Yz7)({token:ee,providedIn:"root",factory:function(){return new Tt((0,h.LFG)(j),window)}}),ee}(),Tt=function(){function ee(me,Ne){(0,s.Z)(this,ee),this.document=me,this.window=Ne,this.offset=function(){return[0,0]}}return(0,d.Z)(ee,[{key:"setOffset",value:function(Ne){this.offset=Array.isArray(Ne)?function(){return Ne}:Ne}},{key:"getScrollPosition",value:function(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}},{key:"scrollToPosition",value:function(Ne){this.supportsScrolling()&&this.window.scrollTo(Ne[0],Ne[1])}},{key:"scrollToAnchor",value:function(Ne){if(this.supportsScrolling()){var Ye=function oe(ee,me){var Ne=ee.getElementById(me)||ee.getElementsByName(me)[0];if(Ne)return Ne;if("function"==typeof ee.createTreeWalker&&ee.body&&(ee.body.createShadowRoot||ee.body.attachShadow))for(var Ye=ee.createTreeWalker(ee.body,NodeFilter.SHOW_ELEMENT),ht=Ye.currentNode;ht;){var At=ht.shadowRoot;if(At){var on=At.getElementById(me)||At.querySelector('[name="'.concat(me,'"]'));if(on)return on}ht=Ye.nextNode()}return null}(this.document,Ne);Ye&&(this.scrollToElement(Ye),Ye.focus())}}},{key:"setHistoryScrollRestoration",value:function(Ne){if(this.supportScrollRestoration()){var Ye=this.window.history;Ye&&Ye.scrollRestoration&&(Ye.scrollRestoration=Ne)}}},{key:"scrollToElement",value:function(Ne){var Ye=Ne.getBoundingClientRect(),ht=Ye.left+this.window.pageXOffset,At=Ye.top+this.window.pageYOffset,on=this.offset();this.window.scrollTo(ht-on[0],At-on[1])}},{key:"supportScrollRestoration",value:function(){try{if(!this.supportsScrolling())return!1;var Ne=Ke(this.window.history)||Ke(Object.getPrototypeOf(this.window.history));return!(!Ne||!Ne.writable&&!Ne.set)}catch(Ye){return!1}}},{key:"supportsScrolling",value:function(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch(Ne){return!1}}}]),ee}();function Ke(ee){return Object.getOwnPropertyDescriptor(ee,"scrollRestoration")}var at=(0,d.Z)(function ee(){(0,s.Z)(this,ee)})},28784:function(dt,K,n){"use strict";n.d(K,{TP:function(){return wt},eN:function(){return ge},Ed:function(){return ut},JF:function(){return Pt},LE:function(){return ie}});var P=n(24582),t=n(7318),e=n(32090),p=n(86170),d=n(48047),s=n(78069),h=n(36362),f=n(76442),T=n(10745),B=n(83336),I=n(63853),v=n(60116),j=n(50635),Q=(0,d.Z)(function be(){(0,s.Z)(this,be)}),J=(0,d.Z)(function be(){(0,s.Z)(this,be)}),Z=function(){function be(we){var _e=this;(0,s.Z)(this,be),this.normalizedNames=new Map,this.lazyUpdate=null,we?this.lazyInit="string"==typeof we?function(){_e.headers=new Map,we.split("\n").forEach(function($){var Ae=$.indexOf(":");if(Ae>0){var ft=$.slice(0,Ae),gt=ft.toLowerCase(),Bt=$.slice(Ae+1).trim();_e.maybeSetNormalizedName(ft,gt),_e.headers.has(gt)?_e.headers.get(gt).push(Bt):_e.headers.set(gt,[Bt])}})}:function(){_e.headers=new Map,Object.keys(we).forEach(function($){var Ae=we[$],ft=$.toLowerCase();"string"==typeof Ae&&(Ae=[Ae]),Ae.length>0&&(_e.headers.set(ft,Ae),_e.maybeSetNormalizedName($,ft))})}:this.headers=new Map}return(0,d.Z)(be,[{key:"has",value:function(_e){return this.init(),this.headers.has(_e.toLowerCase())}},{key:"get",value:function(_e){this.init();var $=this.headers.get(_e.toLowerCase());return $&&$.length>0?$[0]:null}},{key:"keys",value:function(){return this.init(),Array.from(this.normalizedNames.values())}},{key:"getAll",value:function(_e){return this.init(),this.headers.get(_e.toLowerCase())||null}},{key:"append",value:function(_e,$){return this.clone({name:_e,value:$,op:"a"})}},{key:"set",value:function(_e,$){return this.clone({name:_e,value:$,op:"s"})}},{key:"delete",value:function(_e,$){return this.clone({name:_e,value:$,op:"d"})}},{key:"maybeSetNormalizedName",value:function(_e,$){this.normalizedNames.has($)||this.normalizedNames.set($,_e)}},{key:"init",value:function(){var _e=this;this.lazyInit&&(this.lazyInit instanceof be?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function($){return _e.applyUpdate($)}),this.lazyUpdate=null))}},{key:"copyFrom",value:function(_e){var $=this;_e.init(),Array.from(_e.headers.keys()).forEach(function(Ae){$.headers.set(Ae,_e.headers.get(Ae)),$.normalizedNames.set(Ae,_e.normalizedNames.get(Ae))})}},{key:"clone",value:function(_e){var $=new be;return $.lazyInit=this.lazyInit&&this.lazyInit instanceof be?this.lazyInit:this,$.lazyUpdate=(this.lazyUpdate||[]).concat([_e]),$}},{key:"applyUpdate",value:function(_e){var $=_e.name.toLowerCase();switch(_e.op){case"a":case"s":var Ae=_e.value;if("string"==typeof Ae&&(Ae=[Ae]),0===Ae.length)return;this.maybeSetNormalizedName(_e.name,$);var ft=("a"===_e.op?this.headers.get($):void 0)||[];ft.push.apply(ft,(0,p.Z)(Ae)),this.headers.set($,ft);break;case"d":var gt=_e.value;if(gt){var Bt=this.headers.get($);if(!Bt)return;0===(Bt=Bt.filter(function(_n){return-1===gt.indexOf(_n)})).length?(this.headers.delete($),this.normalizedNames.delete($)):this.headers.set($,Bt)}else this.headers.delete($),this.normalizedNames.delete($)}}},{key:"forEach",value:function(_e){var $=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(Ae){return _e($.normalizedNames.get(Ae),$.headers.get(Ae))})}}]),be}(),A=function(){function be(){(0,s.Z)(this,be)}return(0,d.Z)(be,[{key:"encodeKey",value:function(_e){return q(_e)}},{key:"encodeValue",value:function(_e){return q(_e)}},{key:"decodeKey",value:function(_e){return decodeURIComponent(_e)}},{key:"decodeValue",value:function(_e){return decodeURIComponent(_e)}}]),be}();function N(be,we){var _e=new Map;return be.length>0&&be.replace(/^\?/,"").split("&").forEach(function(Ae){var ft=Ae.indexOf("="),gt=-1==ft?[we.decodeKey(Ae),""]:[we.decodeKey(Ae.slice(0,ft)),we.decodeValue(Ae.slice(ft+1))],Bt=(0,e.Z)(gt,2),_n=Bt[0],wn=Bt[1],Tn=_e.get(_n)||[];Tn.push(wn),_e.set(_n,Tn)}),_e}var E=/%(\d[a-f0-9])/gi,k={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function q(be){return encodeURIComponent(be).replace(E,function(we,_e){var $;return null!==($=k[_e])&&void 0!==$?$:we})}function ce(be){return"".concat(be)}var ie=function(){function be(){var we=this,_e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,s.Z)(this,be),this.updates=null,this.cloneFrom=null,this.encoder=_e.encoder||new A,_e.fromString){if(_e.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=N(_e.fromString,this.encoder)}else _e.fromObject?(this.map=new Map,Object.keys(_e.fromObject).forEach(function($){var Ae=_e.fromObject[$];we.map.set($,Array.isArray(Ae)?Ae:[Ae])})):this.map=null}return(0,d.Z)(be,[{key:"has",value:function(_e){return this.init(),this.map.has(_e)}},{key:"get",value:function(_e){this.init();var $=this.map.get(_e);return $?$[0]:null}},{key:"getAll",value:function(_e){return this.init(),this.map.get(_e)||null}},{key:"keys",value:function(){return this.init(),Array.from(this.map.keys())}},{key:"append",value:function(_e,$){return this.clone({param:_e,value:$,op:"a"})}},{key:"appendAll",value:function(_e){var $=[];return Object.keys(_e).forEach(function(Ae){var ft=_e[Ae];Array.isArray(ft)?ft.forEach(function(gt){$.push({param:Ae,value:gt,op:"a"})}):$.push({param:Ae,value:ft,op:"a"})}),this.clone($)}},{key:"set",value:function(_e,$){return this.clone({param:_e,value:$,op:"s"})}},{key:"delete",value:function(_e,$){return this.clone({param:_e,value:$,op:"d"})}},{key:"toString",value:function(){var _e=this;return this.init(),this.keys().map(function($){var Ae=_e.encoder.encodeKey($);return _e.map.get($).map(function(ft){return Ae+"="+_e.encoder.encodeValue(ft)}).join("&")}).filter(function($){return""!==$}).join("&")}},{key:"clone",value:function(_e){var $=new be({encoder:this.encoder});return $.cloneFrom=this.cloneFrom||this,$.updates=(this.updates||[]).concat(_e),$}},{key:"init",value:function(){var _e=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function($){return _e.map.set($,_e.cloneFrom.map.get($))}),this.updates.forEach(function($){switch($.op){case"a":case"s":var Ae=("a"===$.op?_e.map.get($.param):void 0)||[];Ae.push(ce($.value)),_e.map.set($.param,Ae);break;case"d":if(void 0===$.value){_e.map.delete($.param);break}var ft=_e.map.get($.param)||[],gt=ft.indexOf(ce($.value));-1!==gt&&ft.splice(gt,1),ft.length>0?_e.map.set($.param,ft):_e.map.delete($.param)}}),this.cloneFrom=this.updates=null)}}]),be}(),V=function(){function be(){(0,s.Z)(this,be),this.map=new Map}return(0,d.Z)(be,[{key:"set",value:function(_e,$){return this.map.set(_e,$),this}},{key:"get",value:function(_e){return this.map.has(_e)||this.map.set(_e,_e.defaultValue()),this.map.get(_e)}},{key:"delete",value:function(_e){return this.map.delete(_e),this}},{key:"has",value:function(_e){return this.map.has(_e)}},{key:"keys",value:function(){return this.map.keys()}}]),be}();function R(be){return"undefined"!=typeof ArrayBuffer&&be instanceof ArrayBuffer}function r(be){return"undefined"!=typeof Blob&&be instanceof Blob}function z(be){return"undefined"!=typeof FormData&&be instanceof FormData}var se=function(){function be(we,_e,$,Ae){var ft;if((0,s.Z)(this,be),this.url=_e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=we.toUpperCase(),function ue(be){switch(be){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||Ae?(this.body=void 0!==$?$:null,ft=Ae):ft=$,ft&&(this.reportProgress=!!ft.reportProgress,this.withCredentials=!!ft.withCredentials,ft.responseType&&(this.responseType=ft.responseType),ft.headers&&(this.headers=ft.headers),ft.context&&(this.context=ft.context),ft.params&&(this.params=ft.params)),this.headers||(this.headers=new Z),this.context||(this.context=new V),this.params){var gt=this.params.toString();if(0===gt.length)this.urlWithParams=_e;else{var Bt=_e.indexOf("?");this.urlWithParams=_e+(-1===Bt?"?":Bt<_e.length-1?"&":"")+gt}}else this.params=new ie,this.urlWithParams=_e}return(0,d.Z)(be,[{key:"serializeBody",value:function(){return null===this.body?null:R(this.body)||r(this.body)||z(this.body)||function Y(be){return"undefined"!=typeof URLSearchParams&&be instanceof URLSearchParams}(this.body)||"string"==typeof this.body?this.body:this.body instanceof ie?this.body.toString():"object"==typeof this.body||"boolean"==typeof this.body||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}},{key:"detectContentTypeHeader",value:function(){return null===this.body||z(this.body)?null:r(this.body)?this.body.type||null:R(this.body)?null:"string"==typeof this.body?"text/plain":this.body instanceof ie?"application/x-www-form-urlencoded;charset=UTF-8":"object"==typeof this.body||"number"==typeof this.body||"boolean"==typeof this.body?"application/json":null}},{key:"clone",value:function(){var $,_e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Ae=_e.method||this.method,ft=_e.url||this.url,gt=_e.responseType||this.responseType,Bt=void 0!==_e.body?_e.body:this.body,_n=void 0!==_e.withCredentials?_e.withCredentials:this.withCredentials,wn=void 0!==_e.reportProgress?_e.reportProgress:this.reportProgress,Tn=_e.headers||this.headers,On=_e.params||this.params,Jn=null!==($=_e.context)&&void 0!==$?$:this.context;return void 0!==_e.setHeaders&&(Tn=Object.keys(_e.setHeaders).reduce(function(Un,si){return Un.set(si,_e.setHeaders[si])},Tn)),_e.setParams&&(On=Object.keys(_e.setParams).reduce(function(Un,si){return Un.set(si,_e.setParams[si])},On)),new be(Ae,ft,Bt,{params:On,headers:Tn,context:Jn,reportProgress:wn,responseType:gt,withCredentials:_n})}}]),be}(),X=function(){return(X=X||{})[X.Sent=0]="Sent",X[X.UploadProgress=1]="UploadProgress",X[X.ResponseHeader=2]="ResponseHeader",X[X.DownloadProgress=3]="DownloadProgress",X[X.Response=4]="Response",X[X.User=5]="User",X}(),ne=(0,d.Z)(function be(we){var _e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,$=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"OK";(0,s.Z)(this,be),this.headers=we.headers||new Z,this.status=void 0!==we.status?we.status:_e,this.statusText=we.statusText||$,this.url=we.url||null,this.ok=this.status>=200&&this.status<300}),ve=function(be){(0,P.Z)(_e,be);var we=(0,t.Z)(_e);function _e(){var $,Ae=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,s.Z)(this,_e),($=we.call(this,Ae)).type=X.ResponseHeader,$}return(0,d.Z)(_e,[{key:"clone",value:function(){var Ae=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new _e({headers:Ae.headers||this.headers,status:void 0!==Ae.status?Ae.status:this.status,statusText:Ae.statusText||this.statusText,url:Ae.url||this.url||void 0})}}]),_e}(ne),Re=function(be){(0,P.Z)(_e,be);var we=(0,t.Z)(_e);function _e(){var $,Ae=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,s.Z)(this,_e),($=we.call(this,Ae)).type=X.Response,$.body=void 0!==Ae.body?Ae.body:null,$}return(0,d.Z)(_e,[{key:"clone",value:function(){var Ae=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new _e({body:void 0!==Ae.body?Ae.body:this.body,headers:Ae.headers||this.headers,status:void 0!==Ae.status?Ae.status:this.status,statusText:Ae.statusText||this.statusText,url:Ae.url||this.url||void 0})}}]),_e}(ne),Ie=function(be){(0,P.Z)(_e,be);var we=(0,t.Z)(_e);function _e($){var Ae;return(0,s.Z)(this,_e),(Ae=we.call(this,$,0,"Unknown Error")).name="HttpErrorResponse",Ae.ok=!1,Ae.message=Ae.status>=200&&Ae.status<300?"Http failure during parsing for ".concat($.url||"(unknown url)"):"Http failure response for ".concat($.url||"(unknown url)",": ").concat($.status," ").concat($.statusText),Ae.error=$.error||null,Ae}return(0,d.Z)(_e)}(ne);function Ee(be,we){return{body:we,headers:be.headers,context:be.context,observe:be.observe,params:be.params,reportProgress:be.reportProgress,responseType:be.responseType,withCredentials:be.withCredentials}}var ge=function(){var be=function(){function we(_e){(0,s.Z)(this,we),this.handler=_e}return(0,d.Z)(we,[{key:"request",value:function($,Ae){var Bt,ft=this,gt=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if($ instanceof se)Bt=$;else{var _n=void 0;_n=gt.headers instanceof Z?gt.headers:new Z(gt.headers);var wn=void 0;gt.params&&(wn=gt.params instanceof ie?gt.params:new ie({fromObject:gt.params})),Bt=new se($,Ae,void 0!==gt.body?gt.body:null,{headers:_n,context:gt.context,params:wn,reportProgress:gt.reportProgress,responseType:gt.responseType||"json",withCredentials:gt.withCredentials})}var Tn=(0,T.of)(Bt).pipe((0,I.b)(function(Jn){return ft.handler.handle(Jn)}));if($ instanceof se||"events"===gt.observe)return Tn;var On=Tn.pipe((0,v.h)(function(Jn){return Jn instanceof Re}));switch(gt.observe||"body"){case"body":switch(Bt.responseType){case"arraybuffer":return On.pipe((0,j.U)(function(Jn){if(null!==Jn.body&&!(Jn.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return Jn.body}));case"blob":return On.pipe((0,j.U)(function(Jn){if(null!==Jn.body&&!(Jn.body instanceof Blob))throw new Error("Response is not a Blob.");return Jn.body}));case"text":return On.pipe((0,j.U)(function(Jn){if(null!==Jn.body&&"string"!=typeof Jn.body)throw new Error("Response is not a string.");return Jn.body}));default:return On.pipe((0,j.U)(function(Jn){return Jn.body}))}case"response":return On;default:throw new Error("Unreachable: unhandled observe type ".concat(gt.observe,"}"))}}},{key:"delete",value:function($){var Ae=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("DELETE",$,Ae)}},{key:"get",value:function($){var Ae=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("GET",$,Ae)}},{key:"head",value:function($){var Ae=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("HEAD",$,Ae)}},{key:"jsonp",value:function($,Ae){return this.request("JSONP",$,{params:(new ie).append(Ae,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}},{key:"options",value:function($){var Ae=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("OPTIONS",$,Ae)}},{key:"patch",value:function($,Ae){var ft=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PATCH",$,Ee(ft,Ae))}},{key:"post",value:function($,Ae){var ft=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("POST",$,Ee(ft,Ae))}},{key:"put",value:function($,Ae){var ft=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PUT",$,Ee(ft,Ae))}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)(f.LFG(Q))},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}(),_t=function(){function be(we,_e){(0,s.Z)(this,be),this.next=we,this.interceptor=_e}return(0,d.Z)(be,[{key:"handle",value:function(_e){return this.interceptor.intercept(_e,this.next)}}]),be}(),wt=new f.OlP("HTTP_INTERCEPTORS"),qt=function(){var be=function(){function we(){(0,s.Z)(this,we)}return(0,d.Z)(we,[{key:"intercept",value:function($,Ae){return Ae.handle($)}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}(),Lt=0,ot=(0,d.Z)(function be(){(0,s.Z)(this,be)}),tt=function(){var be=function(){function we(_e,$){(0,s.Z)(this,we),this.callbackMap=_e,this.document=$,this.resolvedPromise=Promise.resolve()}return(0,d.Z)(we,[{key:"nextCallback",value:function(){return"ng_jsonp_callback_".concat(Lt++)}},{key:"handle",value:function($){var Ae=this;if("JSONP"!==$.method)throw new Error("JSONP requests must use JSONP request method.");if("json"!==$.responseType)throw new Error("JSONP requests must use Json response type.");return new B.y(function(ft){var gt=Ae.nextCallback(),Bt=$.urlWithParams.replace(/=JSONP_CALLBACK(&|$)/,"=".concat(gt,"$1")),_n=Ae.document.createElement("script");_n.src=Bt;var wn=null,Tn=!1,On=!1;Ae.callbackMap[gt]=function(fi){delete Ae.callbackMap[gt],!On&&(wn=fi,Tn=!0)};var Jn=function(){_n.parentNode&&_n.parentNode.removeChild(_n),delete Ae.callbackMap[gt]},Un=function(rn){On||Ae.resolvedPromise.then(function(){Jn(),Tn?(ft.next(new Re({body:wn,status:200,statusText:"OK",url:Bt})),ft.complete()):ft.error(new Ie({url:Bt,status:0,statusText:"JSONP Error",error:new Error("JSONP injected script did not invoke callback.")}))})},si=function(rn){On||(Jn(),ft.error(new Ie({error:rn,status:0,statusText:"JSONP Error",url:Bt})))};return _n.addEventListener("load",Un),_n.addEventListener("error",si),Ae.document.body.appendChild(_n),ft.next({type:X.Sent}),function(){On=!0,_n.removeEventListener("load",Un),_n.removeEventListener("error",si),Jn()}})}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)(f.LFG(ot),f.LFG(h.K0))},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}(),xe=function(){var be=function(){function we(_e){(0,s.Z)(this,we),this.jsonp=_e}return(0,d.Z)(we,[{key:"intercept",value:function($,Ae){return"JSONP"===$.method?this.jsonp.handle($):Ae.handle($)}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)(f.LFG(tt))},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}(),$e=/^\)\]\}',?\n/,ct=function(){var be=function(){function we(_e){(0,s.Z)(this,we),this.xhrFactory=_e}return(0,d.Z)(we,[{key:"handle",value:function($){var Ae=this;if("JSONP"===$.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new B.y(function(ft){var gt=Ae.xhrFactory.build();if(gt.open($.method,$.urlWithParams),$.withCredentials&&(gt.withCredentials=!0),$.headers.forEach(function(sn,jt){return gt.setRequestHeader(sn,jt.join(","))}),$.headers.has("Accept")||gt.setRequestHeader("Accept","application/json, text/plain, */*"),!$.headers.has("Content-Type")){var Bt=$.detectContentTypeHeader();null!==Bt&>.setRequestHeader("Content-Type",Bt)}if($.responseType){var _n=$.responseType.toLowerCase();gt.responseType="json"!==_n?_n:"text"}var wn=$.serializeBody(),Tn=null,On=function(){if(null!==Tn)return Tn;var jt=1223===gt.status?204:gt.status,Ue=gt.statusText||"OK",et=new Z(gt.getAllResponseHeaders()),De=function Ge(be){return"responseURL"in be&&be.responseURL?be.responseURL:/^X-Request-URL:/m.test(be.getAllResponseHeaders())?be.getResponseHeader("X-Request-URL"):null}(gt)||$.url;return Tn=new ve({headers:et,status:jt,statusText:Ue,url:De})},Jn=function(){var jt=On(),Ue=jt.headers,et=jt.status,De=jt.statusText,Ze=jt.url,Je=null;204!==et&&(Je=void 0===gt.response?gt.responseText:gt.response),0===et&&(et=Je?200:0);var Ve=et>=200&&et<300;if("json"===$.responseType&&"string"==typeof Je){var pt=Je;Je=Je.replace($e,"");try{Je=""!==Je?JSON.parse(Je):null}catch(kt){Je=pt,Ve&&(Ve=!1,Je={error:kt,text:Je})}}Ve?(ft.next(new Re({body:Je,headers:Ue,status:et,statusText:De,url:Ze||void 0})),ft.complete()):ft.error(new Ie({error:Je,headers:Ue,status:et,statusText:De,url:Ze||void 0}))},Un=function(jt){var Ue=On(),De=new Ie({error:jt,status:gt.status||0,statusText:gt.statusText||"Unknown Error",url:Ue.url||void 0});ft.error(De)},si=!1,fi=function(jt){si||(ft.next(On()),si=!0);var Ue={type:X.DownloadProgress,loaded:jt.loaded};jt.lengthComputable&&(Ue.total=jt.total),"text"===$.responseType&&!!gt.responseText&&(Ue.partialText=gt.responseText),ft.next(Ue)},rn=function(jt){var Ue={type:X.UploadProgress,loaded:jt.loaded};jt.lengthComputable&&(Ue.total=jt.total),ft.next(Ue)};return gt.addEventListener("load",Jn),gt.addEventListener("error",Un),gt.addEventListener("timeout",Un),gt.addEventListener("abort",Un),$.reportProgress&&(gt.addEventListener("progress",fi),null!==wn&>.upload&>.upload.addEventListener("progress",rn)),gt.send(wn),ft.next({type:X.Sent}),function(){gt.removeEventListener("error",Un),gt.removeEventListener("abort",Un),gt.removeEventListener("load",Jn),gt.removeEventListener("timeout",Un),$.reportProgress&&(gt.removeEventListener("progress",fi),null!==wn&>.upload&>.upload.removeEventListener("progress",rn)),gt.readyState!==gt.DONE&>.abort()}})}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)(f.LFG(h.JF))},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}(),Xe=new f.OlP("XSRF_COOKIE_NAME"),Te=new f.OlP("XSRF_HEADER_NAME"),vt=(0,d.Z)(function be(){(0,s.Z)(this,be)}),qe=function(){var be=function(){function we(_e,$,Ae){(0,s.Z)(this,we),this.doc=_e,this.platform=$,this.cookieName=Ae,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return(0,d.Z)(we,[{key:"getToken",value:function(){if("server"===this.platform)return null;var $=this.doc.cookie||"";return $!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,h.Mx)($,this.cookieName),this.lastCookieString=$),this.lastToken}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)(f.LFG(h.K0),f.LFG(f.Lbi),f.LFG(Xe))},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}(),je=function(){var be=function(){function we(_e,$){(0,s.Z)(this,we),this.tokenService=_e,this.headerName=$}return(0,d.Z)(we,[{key:"intercept",value:function($,Ae){var ft=$.url.toLowerCase();if("GET"===$.method||"HEAD"===$.method||ft.startsWith("http://")||ft.startsWith("https://"))return Ae.handle($);var gt=this.tokenService.getToken();return null!==gt&&!$.headers.has(this.headerName)&&($=$.clone({headers:$.headers.set(this.headerName,gt)})),Ae.handle($)}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)(f.LFG(vt),f.LFG(Te))},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}(),Nt=function(){var be=function(){function we(_e,$){(0,s.Z)(this,we),this.backend=_e,this.injector=$,this.chain=null}return(0,d.Z)(we,[{key:"handle",value:function($){if(null===this.chain){var Ae=this.injector.get(wt,[]);this.chain=Ae.reduceRight(function(ft,gt){return new _t(ft,gt)},this.backend)}return this.chain.handle($)}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)(f.LFG(J),f.LFG(f.zs3))},be.\u0275prov=f.Yz7({token:be,factory:be.\u0275fac}),be}();function bt(){return"object"==typeof window?window:{}}var St=function(){var be=function(){function we(){(0,s.Z)(this,we)}return(0,d.Z)(we,null,[{key:"disable",value:function(){return{ngModule:we,providers:[{provide:je,useClass:qt}]}}},{key:"withOptions",value:function(){var $=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ngModule:we,providers:[$.cookieName?{provide:Xe,useValue:$.cookieName}:[],$.headerName?{provide:Te,useValue:$.headerName}:[]]}}}]),we}();return be.\u0275fac=function(_e){return new(_e||be)},be.\u0275mod=f.oAB({type:be}),be.\u0275inj=f.cJS({providers:[je,{provide:wt,useExisting:je,multi:!0},{provide:vt,useClass:qe},{provide:Xe,useValue:"XSRF-TOKEN"},{provide:Te,useValue:"X-XSRF-TOKEN"}]}),be}(),Pt=function(){var be=(0,d.Z)(function we(){(0,s.Z)(this,we)});return be.\u0275fac=function(_e){return new(_e||be)},be.\u0275mod=f.oAB({type:be}),be.\u0275inj=f.cJS({providers:[ge,{provide:Q,useClass:Nt},ct,{provide:J,useExisting:ct}],imports:[[St.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),be}(),ut=function(){var be=(0,d.Z)(function we(){(0,s.Z)(this,we)});return be.\u0275fac=function(_e){return new(_e||be)},be.\u0275mod=f.oAB({type:be}),be.\u0275inj=f.cJS({providers:[tt,{provide:ot,useFactory:bt},{provide:wt,useClass:xe,multi:!0}]}),be}()},76442:function(dt,K,n){"use strict";n.d(K,{deG:function(){return ad},tb:function(){return Ub},AFp:function(){return Fb},ip1:function(){return Ev},CZH:function(){return g_},hGG:function(){return DM},z2F:function(){return $_},sBO:function(){return t0},Sil:function(){return kv},_Vd:function(){return j_},EJc:function(){return Yb},SBq:function(){return J_},a5r:function(){return sM},qLn:function(){return du},vpe:function(){return td},L6J:function(){return F1},tBr:function(){return F},XFs:function(){return Tn},GSi:function(){return y},OlP:function(){return lr},zs3:function(){return Vo},IIB:function(){return I1},ZZ4:function(){return Jg},aQg:function(){return Qg},soG:function(){return jg},YKP:function(){return Yy},h0i:function(){return m_},PXZ:function(){return K1},R0b:function(){return nd},FiY:function(){return le},r_U:function(){return L1},Lbi:function(){return Rb},g9A:function(){return Nb},n_E:function(){return ob},Qsj:function(){return EC},FYo:function(){return Ny},JOm:function(){return Ys},q3G:function(){return cr},tp0:function(){return Mt},Rgc:function(){return G_},dDg:function(){return Hb},GfV:function(){return Ry},s_b:function(){return Yg},ifc:function(){return et},hM9:function(){return HC},eFA:function(){return Qb},G48:function(){return iM},Gpc:function(){return X},f3M:function(){return pd},_c5:function(){return CM},VLi:function(){return W1},c2e:function(){return Bb},zSh:function(){return Xu},wAp:function(){return Ki},vHH:function(){return Ie},EiD:function(){return iu},mCW:function(){return Dc},qzn:function(){return cc},JVY:function(){return rr},pB0:function(){return bd},eBb:function(){return Sp},L6k:function(){return ku},LAX:function(){return yd},cg1:function(){return fv},kL8:function(){return sy},yhl:function(){return Pc},dqk:function(){return pt},sIi:function(){return Ui},CqO:function(){return dg},QGY:function(){return I_},F4k:function(){return ug},RDi:function(){return $t},AaK:function(){return z},z3N:function(){return Us},qOj:function(){return M},TTD:function(){return Tt},_Bn:function(){return Iy},xp6:function(){return cf},uIk:function(){return Ws},Q2q:function(){return Jo},Tol:function(){return Og},Gre:function(){return uv},ekj:function(){return Dh},Suo:function(){return mb},Xpm:function(){return gi},lG2:function(){return da},Yz7:function(){return ut},cJS:function(){return be},oAB:function(){return ea},Yjl:function(){return Na},Y36:function(){return Ah},_UZ:function(){return og},GkF:function(){return lg},BQk:function(){return k_},ynx:function(){return Z_},qZA:function(){return E_},TgZ:function(){return O_},EpF:function(){return cg},n5z:function(){return Su},Ikx:function(){return dv},LFG:function(){return ar},$8M:function(){return No},$Z:function(){return rg},NdJ:function(){return L_},CRH:function(){return hb},kcU:function(){return _s},O4$:function(){return hs},oxw:function(){return mg},ALo:function(){return nb},lcZ:function(){return ib},xi3:function(){return ab},Dn7:function(){return rb},Hsn:function(){return c_},F$t:function(){return Ph},Q6J:function(){return D_},s9C:function(){return R_},MGl:function(){return u_},hYB:function(){return U_},FAE:function(){return B_},DdM:function(){return jy},VKq:function(){return Jy},WLB:function(){return Qy},kEZ:function(){return Wy},l5B:function(){return zy},HTZ:function(){return Gy},iGM:function(){return pb},MAs:function(){return r_},evT:function(){return Ed},Jf7:function(){return Od},CHM:function(){return Qr},oJD:function(){return au},uOi:function(){return uc},LSH:function(){return Fu},B6R:function(){return Si},kYT:function(){return ja},Udp:function(){return lm},WFA:function(){return F_},d8E:function(){return pv},YNc:function(){return a_},W1O:function(){return yb},_uU:function(){return In},Oqu:function(){return ei},hij:function(){return _i},AsE:function(){return Mi},lnq:function(){return qi},HOy:function(){return Ar},Gf:function(){return fb}});var P=n(4089),t=n(20265),e=n(35488);n(32090),n(77797),n(8091),n(4826),n(44206),n(8217);var I=n(95106),v=n(86170),j=n(10006),Q=n(98568);function J(i,o,c){return(J=(0,Q.Z)()?Reflect.construct:function(C,w,G){var fe=[null];fe.push.apply(fe,w);var mt=new(Function.bind.apply(C,fe));return G&&(0,j.Z)(mt,G.prototype),mt}).apply(null,arguments)}var Z=n(48047),A=n(78069),N=n(24582),E=n(7318);function q(i){var o="function"==typeof Map?new Map:void 0;return q=function(_){if(null===_||!function k(i){return-1!==Function.toString.call(i).indexOf("[native code]")}(_))return _;if("function"!=typeof _)throw new TypeError("Super expression must either be null or a function");if(void 0!==o){if(o.has(_))return o.get(_);o.set(_,C)}function C(){return J(_,arguments,(0,t.Z)(this).constructor)}return C.prototype=Object.create(_.prototype,{constructor:{value:C,enumerable:!1,writable:!0,configurable:!0}}),(0,j.Z)(C,_)},q(i)}var ce=n(17714),ie=n(50253),H=n(83336),V=n(36646),ue=n(81203);function R(i){for(var o in i)if(i[o]===R)return o;throw Error("Could not find renamed property on target object.")}function r(i,o){for(var c in o)o.hasOwnProperty(c)&&!i.hasOwnProperty(c)&&(i[c]=o[c])}function z(i){if("string"==typeof i)return i;if(Array.isArray(i))return"["+i.map(z).join(", ")+"]";if(null==i)return""+i;if(i.overriddenName)return"".concat(i.overriddenName);if(i.name)return"".concat(i.name);var o=i.toString();if(null==o)return""+o;var c=o.indexOf("\n");return-1===c?o:o.substring(0,c)}function Y(i,o){return null==i||""===i?null===o?"":o:null==o||""===o?i:i+" "+o}var se=R({__forward_ref__:R});function X(i){return i.__forward_ref__=X,i.toString=function(){return z(this())},i}function ne(i){return ve(i)?i():i}function ve(i){return"function"==typeof i&&i.hasOwnProperty(se)&&i.__forward_ref__===X}var Ie=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(_,C){var w;return(0,A.Z)(this,c),(w=o.call(this,function Ee(i,o){var c="NG0".concat(Math.abs(i));return"".concat(c).concat(o?": "+o:"")}(_,C))).code=_,w}return(0,Z.Z)(c)}(q(Error));function ge(i){return"string"==typeof i?i:null==i?"":String(i)}function _t(i){return"function"==typeof i?i.name||i.toString():"object"==typeof i&&null!=i&&"function"==typeof i.type?i.type.name||i.type.toString():ge(i)}function Rt(i,o){var c=o?" in ".concat(o):"";throw new Ie(-201,"No provider for ".concat(_t(i)," found").concat(c))}function Nt(i,o){null==i&&function Ft(i,o,c,_){throw new Error("ASSERTION ERROR: ".concat(i)+(null==_?"":" [Expected=> ".concat(c," ").concat(_," ").concat(o," <=Actual]")))}(o,i,null,"!=")}function ut(i){return{token:i.token,providedIn:i.providedIn||null,factory:i.factory,value:void 0}}function be(i){return{providers:i.providers||[],imports:i.imports||[]}}function we(i){return _e(i,gt)||_e(i,_n)}function _e(i,o){return i.hasOwnProperty(o)?i[o]:null}function ft(i){return i&&(i.hasOwnProperty(Bt)||i.hasOwnProperty(wn))?i[Bt]:null}var On,gt=R({"\u0275prov":R}),Bt=R({"\u0275inj":R}),_n=R({ngInjectableDef:R}),wn=R({ngInjectorDef:R}),Tn=function(){return(Tn=Tn||{})[Tn.Default=0]="Default",Tn[Tn.Host=1]="Host",Tn[Tn.Self=2]="Self",Tn[Tn.SkipSelf=4]="SkipSelf",Tn[Tn.Optional=8]="Optional",Tn}();function Jn(){return On}function Un(i){var o=On;return On=i,o}function si(i,o,c){var _=we(i);return _&&"root"==_.providedIn?void 0===_.value?_.value=_.factory():_.value:c&Tn.Optional?null:void 0!==o?o:void Rt(z(i),"Injector")}function rn(i){return{toString:i}.toString()}var sn=function(){return(sn=sn||{})[sn.OnPush=0]="OnPush",sn[sn.Default=1]="Default",sn}(),et=function(){return(i=et||(et={}))[i.Emulated=0]="Emulated",i[i.None=2]="None",i[i.ShadowDom=3]="ShadowDom",et;var i}(),De="undefined"!=typeof globalThis&&globalThis,Ze="undefined"!=typeof window&&window,Je="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,Ve="undefined"!=typeof global&&global,pt=De||Ve||Ze||Je,Zn={},zt=[],un=R({"\u0275cmp":R}),tn=R({"\u0275dir":R}),ln=R({"\u0275pipe":R}),gn=R({"\u0275mod":R}),An=R({"\u0275fac":R}),Nn=R({__NG_ELEMENT_ID__:R}),ai=0;function gi(i){return rn(function(){var c={},_={type:i.type,providersResolver:null,decls:i.decls,vars:i.vars,factory:null,template:i.template||null,consts:i.consts||null,ngContentSelectors:i.ngContentSelectors,hostBindings:i.hostBindings||null,hostVars:i.hostVars||0,hostAttrs:i.hostAttrs||null,contentQueries:i.contentQueries||null,declaredInputs:c,inputs:null,outputs:null,exportAs:i.exportAs||null,onPush:i.changeDetection===sn.OnPush,directiveDefs:null,pipeDefs:null,selectors:i.selectors||zt,viewQuery:i.viewQuery||null,features:i.features||null,data:i.data||{},encapsulation:i.encapsulation||et.Emulated,id:"c",styles:i.styles||zt,_:null,setInput:null,schemas:i.schemas||null,tView:null},C=i.directives,w=i.features,G=i.pipes;return _.id+=ai++,_.inputs=tr(i.inputs,c),_.outputs=tr(i.outputs),w&&w.forEach(function(fe){return fe(_)}),_.directiveDefs=C?function(){return("function"==typeof C?C():C).map(Bi)}:null,_.pipeDefs=G?function(){return("function"==typeof G?G():G).map(Oa)}:null,_})}function Si(i,o,c){var _=i.\u0275cmp;_.directiveDefs=function(){return o.map(Bi)},_.pipeDefs=function(){return c.map(Oa)}}function Bi(i){return ta(i)||function fn(i){return i[tn]||null}(i)}function Oa(i){return function yn(i){return i[ln]||null}(i)}var Ea={};function ea(i){return rn(function(){var o={type:i.type,bootstrap:i.bootstrap||zt,declarations:i.declarations||zt,imports:i.imports||zt,exports:i.exports||zt,transitiveCompileScopes:null,schemas:i.schemas||null,id:i.id||null};return null!=i.id&&(Ea[i.id]=i.type),o})}function ja(i,o){return rn(function(){var c=Ct(i,!0);c.declarations=o.declarations||zt,c.imports=o.imports||zt,c.exports=o.exports||zt})}function tr(i,o){if(null==i)return Zn;var c={};for(var _ in i)if(i.hasOwnProperty(_)){var C=i[_],w=C;Array.isArray(C)&&(w=C[1],C=C[0]),c[C]=_,o&&(o[C]=w)}return c}var da=gi;function Na(i){return{type:i.type,name:i.name,factory:null,pure:!1!==i.pure,onDestroy:i.type.prototype.ngOnDestroy||null}}function ta(i){return i[un]||null}function Ct(i,o){var c=i[gn]||null;if(!c&&!0===o)throw new Error("Type ".concat(z(i)," does not have '\u0275mod' property."));return c}function za(i){return Array.isArray(i)&&"object"==typeof i[1]}function fr(i){return Array.isArray(i)&&!0===i[1]}function Or(i){return 0!=(8&i.flags)}function Pr(i){return 2==(2&i.flags)}function Dr(i){return 1==(1&i.flags)}function Ga(i){return null!==i.template}function Rr(i){return 0!=(512&i[2])}function br(i,o){return i.hasOwnProperty(An)?i[An]:null}var Er=function(){function i(o,c,_){(0,A.Z)(this,i),this.previousValue=o,this.currentValue=c,this.firstChange=_}return(0,Z.Z)(i,[{key:"isFirstChange",value:function(){return this.firstChange}}]),i}();function Tt(){return Ke}function Ke(i){return i.type.prototype.ngOnChanges&&(i.setInput=Ce),oe}function oe(){var i=ee(this),o=null==i?void 0:i.current;if(o){var c=i.previous;if(c===Zn)i.previous=o;else for(var _ in o)c[_]=o[_];i.current=null,this.ngOnChanges(o)}}function Ce(i,o,c,_){var C=ee(i)||function me(i,o){return i[at]=o}(i,{previous:Zn,current:null}),w=C.current||(C.current={}),G=C.previous,fe=this.declaredInputs[c],Oe=G[fe];w[fe]=new Er(Oe&&Oe.currentValue,o,G===Zn),i[_]=o}Tt.ngInherit=!0;var at="__ngSimpleChanges__";function ee(i){return i[at]||null}var st=void 0;function $t(i){st=i}function ze(){return void 0!==st?st:"undefined"!=typeof document?document:void 0}function ae(i){return!!i.listen}var de={createRenderer:function(o,c){return ze()}};function Be(i){for(;Array.isArray(i);)i=i[0];return i}function cn(i,o){return Be(o[i])}function kn(i,o){return Be(o[i.index])}function Ti(i,o){return i.data[o]}function Pa(i,o){return i[o]}function ra(i,o){var c=o[i];return za(c)?c:c[0]}function to(i){return 4==(4&i[2])}function Ua(i){return 128==(128&i[2])}function ka(i,o){return null==o?null:i[o]}function Qa(i){i[18]=0}function go(i,o){i[5]+=o;for(var c=i,_=i[3];null!==_&&(1===o&&1===c[5]||-1===o&&0===c[5]);)_[5]+=o,c=_,_=_[3]}var Ni={lFrame:il(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function Io(){return Ni.bindingsEnabled}function Qn(){return Ni.lFrame.lView}function Xi(){return Ni.lFrame.tView}function Qr(i){return Ni.lFrame.contextLView=i,i[8]}function qa(){for(var i=bi();null!==i&&64===i.type;)i=i.parent;return i}function bi(){return Ni.lFrame.currentTNode}function Pi(i,o){var c=Ni.lFrame;c.currentTNode=i,c.isParent=o}function fa(){return Ni.lFrame.isParent}function nr(){Ni.lFrame.isParent=!1}function Go(){return Ni.isInCheckNoChangesMode}function fs(i){Ni.isInCheckNoChangesMode=i}function ma(){var i=Ni.lFrame,o=i.bindingRootIndex;return-1===o&&(o=i.bindingRootIndex=i.tView.bindingStartIndex),o}function Br(){return Ni.lFrame.bindingIndex}function Sn(){return Ni.lFrame.bindingIndex++}function Rn(i){var o=Ni.lFrame,c=o.bindingIndex;return o.bindingIndex=o.bindingIndex+i,c}function Li(i,o){var c=Ni.lFrame;c.bindingIndex=c.bindingRootIndex=i,Ba(o)}function Ba(i){Ni.lFrame.currentDirectiveIndex=i}function Da(i){var o=Ni.lFrame.currentDirectiveIndex;return-1===o?null:i[o]}function tl(){return Ni.lFrame.currentQueryIndex}function Ul(i){Ni.lFrame.currentQueryIndex=i}function Wr(i){var o=i[1];return 2===o.type?o.declTNode:1===o.type?i[6]:null}function nl(i,o,c){if(c&Tn.SkipSelf){for(var _=o,C=i;!(null!==(_=_.parent)||c&Tn.Host||null===(_=Wr(C))||(C=C[15],10&_.type)););if(null===_)return!1;o=_,i=C}var w=Ni.lFrame=ir();return w.currentTNode=o,w.lView=i,!0}function Bl(i){var o=ir(),c=i[1];Ni.lFrame=o,o.currentTNode=c.firstChild,o.lView=i,o.tView=c,o.contextLView=i,o.bindingIndex=c.bindingStartIndex,o.inI18n=!1}function ir(){var i=Ni.lFrame,o=null===i?null:i.child;return null===o?il(i):o}function il(i){var o={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:i,child:null,inI18n:!1};return null!==i&&(i.child=o),o}function ms(){var i=Ni.lFrame;return Ni.lFrame=i.parent,i.currentTNode=null,i.lView=null,i}var ba=ms;function Ds(){var i=ms();i.isParent=!0,i.tView=null,i.selectedIndex=-1,i.contextLView=null,i.elementDepthCount=0,i.currentDirectiveIndex=-1,i.currentNamespace=null,i.bindingRootIndex=-1,i.bindingIndex=-1,i.currentQueryIndex=0}function ws(i){var o=Ni.lFrame.contextLView=function Yl(i,o){for(;i>0;)o=o[15],i--;return o}(i,Ni.lFrame.contextLView);return o[8]}function Yr(){return Ni.lFrame.selectedIndex}function Ko(i){Ni.lFrame.selectedIndex=i}function Ka(){var i=Ni.lFrame;return Ti(i.tView,i.selectedIndex)}function hs(){Ni.lFrame.currentNamespace="svg"}function _s(){!function Cl(){Ni.lFrame.currentNamespace=null}()}function Ml(i,o){for(var c=o.directiveStart,_=o.directiveEnd;c<_;c++){var w=i.data[c].type.prototype,G=w.ngAfterContentInit,fe=w.ngAfterContentChecked,Oe=w.ngAfterViewInit,mt=w.ngAfterViewChecked,Zt=w.ngOnDestroy;G&&(i.contentHooks||(i.contentHooks=[])).push(-c,G),fe&&((i.contentHooks||(i.contentHooks=[])).push(c,fe),(i.contentCheckHooks||(i.contentCheckHooks=[])).push(c,fe)),Oe&&(i.viewHooks||(i.viewHooks=[])).push(-c,Oe),mt&&((i.viewHooks||(i.viewHooks=[])).push(c,mt),(i.viewCheckHooks||(i.viewCheckHooks=[])).push(c,mt)),null!=Zt&&(i.destroyHooks||(i.destroyHooks=[])).push(c,Zt)}}function Os(i,o,c){sr(i,o,3,c)}function $o(i,o,c,_){(3&i[2])===c&&sr(i,o,c,_)}function Es(i,o){var c=i[2];(3&c)===o&&(c&=2047,i[2]=c+=1)}function sr(i,o,c,_){for(var w=null!=_?_:-1,G=o.length-1,fe=0,Oe=void 0!==_?65535&i[18]:0;Oe=_)break}else o[Oe]<0&&(i[18]+=65536),(fe>11>16&&(3&i[2])===o){i[2]+=2048;try{w.call(fe)}finally{}}}else try{w.call(fe)}finally{}}var Zs=(0,Z.Z)(function i(o,c,_){(0,A.Z)(this,i),this.factory=o,this.resolving=!1,this.canSeeViewProviders=c,this.injectImpl=_});function he(i,o,c){for(var _=ae(i),C=0;Co){G=w-1;break}}}for(;w>16}(i),_=o;c>0;)_=_[15],c--;return _}var hn=!0;function $n(i){var o=hn;return hn=i,o}var Ya=0;function Mr(i,o){var c=no(i,o);if(-1!==c)return c;var _=o[1];_.firstCreatePass&&(i.injectorIndex=o.length,qr(_.data,i),qr(o,null),qr(_.blueprint,null));var C=so(i,o),w=i.injectorIndex;if(xt(C))for(var G=Ut(C),fe=Mn(C,o),Oe=fe[1].data,mt=0;mt<8;mt++)o[w+mt]=fe[G+mt]|Oe[G+mt];return o[w+8]=C,w}function qr(i,o){i.push(0,0,0,0,0,0,0,0,o)}function no(i,o){return-1===i.injectorIndex||i.parent&&i.parent.injectorIndex===i.injectorIndex||null===o[i.injectorIndex+8]?-1:i.injectorIndex}function so(i,o){if(i.parent&&-1!==i.parent.injectorIndex)return i.parent.injectorIndex;for(var c=0,_=null,C=o;null!==C;){var w=C[1],G=w.type;if(null===(_=2===G?w.declTNode:1===G?C[6]:null))return-1;if(c++,C=C[15],-1!==_.injectorIndex)return _.injectorIndex|c<<16}return-1}function hr(i,o,c){!function $a(i,o,c){var _;"string"==typeof c?_=c.charCodeAt(0)||0:c.hasOwnProperty(Nn)&&(_=c[Nn]),null==_&&(_=c[Nn]=Ya++);var C=255&_;o.data[i+(C>>5)]|=1<3&&void 0!==arguments[3]?arguments[3]:Tn.Default,C=arguments.length>4?arguments[4]:void 0;if(null!==i){var w=xl(c);if("function"==typeof w){if(!nl(o,i,_))return _&Tn.Host?Vt(C,c,_):Mo(o,c,_,C);try{var G=w(_);if(null!=G||_&Tn.Optional)return G;Rt(c)}finally{ba()}}else if("number"==typeof w){var fe=null,Oe=no(i,o),mt=-1,Zt=_&Tn.Host?o[16][6]:null;for((-1===Oe||_&Tn.SkipSelf)&&(-1!==(mt=-1===Oe?so(i,o):o[Oe+8])&&xu(_,!1)?(fe=o[1],Oe=Ut(mt),o=Mn(mt,o)):Oe=-1);-1!==Oe;){var Kt=o[1];if(Mu(w,Oe,Kt.data)){var an=id(Oe,o,c,fe,_,Zt);if(an!==Zr)return an}-1!==(mt=o[Oe+8])&&xu(_,o[1].data[Oe+8]===Zt)&&Mu(w,Oe,o)?(fe=Kt,Oe=Ut(mt),o=Mn(mt,o)):Oe=-1}}}return Mo(o,c,_,C)}var Zr={};function ha(){return new Hl(qa(),Qn())}function id(i,o,c,_,C,w){var G=o[1],fe=G.data[i+8],Zt=Vl(fe,G,c,null==_?Pr(fe)&&hn:_!=G&&0!=(3&fe.type),C&Tn.Host&&w===fe);return null!==Zt?sl(o,G,Zt,fe):Zr}function Vl(i,o,c,_,C){for(var w=i.providerIndexes,G=o.data,fe=1048575&w,Oe=i.directiveStart,Zt=w>>20,an=C?fe+Zt:i.directiveEnd,mn=_?fe:fe+Zt;mn=Oe&&Ln.type===c)return mn}if(C){var Kn=G[Oe];if(Kn&&Ga(Kn)&&Kn.type===c)return Oe}return null}function sl(i,o,c,_){var C=i[c],w=o.data;if(function Xo(i){return i instanceof Zs}(C)){var G=C;G.resolving&&function wt(i,o){var c=o?". Dependency path: ".concat(o.join(" > ")," > ").concat(i):"";throw new Ie(-200,"Circular dependency in DI detected for ".concat(i).concat(c))}(_t(w[c]));var fe=$n(G.canSeeViewProviders);G.resolving=!0;var Oe=G.injectImpl?Un(G.injectImpl):null;nl(i,_,Tn.Default);try{C=i[c]=G.factory(void 0,w,i,_),o.firstCreatePass&&c>=_.directiveStart&&function Fo(i,o,c){var _=o.type.prototype,w=_.ngOnInit,G=_.ngDoCheck;if(_.ngOnChanges){var fe=Ke(o);(c.preOrderHooks||(c.preOrderHooks=[])).push(i,fe),(c.preOrderCheckHooks||(c.preOrderCheckHooks=[])).push(i,fe)}w&&(c.preOrderHooks||(c.preOrderHooks=[])).push(0-i,w),G&&((c.preOrderHooks||(c.preOrderHooks=[])).push(i,G),(c.preOrderCheckHooks||(c.preOrderCheckHooks=[])).push(i,G))}(c,w[c],o)}finally{null!==Oe&&Un(Oe),$n(fe),G.resolving=!1,ba()}}return C}function xl(i){if("string"==typeof i)return i.charCodeAt(0)||0;var o=i.hasOwnProperty(Nn)?i[Nn]:void 0;return"number"==typeof o?o>=0?255&o:ha:o}function Mu(i,o,c){return!!(c[o+(i>>5)]&1<=i.length?i.push(c):i.splice(o,0,c)}function cl(i,o){return o>=i.length-1?i.pop():i.splice(o,1)[0]}function lc(i,o){for(var c=[],_=0;_=0?i[1|_]=c:function Is(i,o,c,_){var C=i.length;if(C==o)i.push(c,_);else if(1===C)i.push(_,i[0]),i[0]=c;else{for(C--,i.push(i[C-1],i[C]);C>o;)i[C]=i[C-2],C--;i[o]=c,i[o+1]=_}}(i,_=~_,o,c),_}function Uo(i,o){var c=Tl(i,o);if(c>=0)return i[1|c]}function Tl(i,o){return function ys(i,o,c){for(var _=0,C=i.length>>c;C!==_;){var w=_+(C-_>>1),G=i[w<o?C=w:_=w+1}return~(C<1&&void 0!==arguments[1]?arguments[1]:Tn.Default;if(void 0===Ao){var c="";throw new Ie(203,c)}return null===Ao?si(i,void 0,o):Ao.get(i,o&Tn.Optional?null:void 0,o)}function ar(i){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Tn.Default;return(Jn()||dd)(ne(i),o)}var pd=ar;function $c(i){for(var o=[],c=0;c3&&void 0!==arguments[3]?arguments[3]:null;i=i&&"\n"===i.charAt(0)&&"\u0275"==i.charAt(1)?i.substr(2):i;var C=z(o);if(Array.isArray(o))C=o.map(z).join(" -> ");else if("object"==typeof o){var w=[];for(var G in o)if(o.hasOwnProperty(G)){var fe=o[G];w.push(G+":"+("string"==typeof fe?JSON.stringify(fe):z(fe)))}C="{".concat(w.join(", "),"}")}return"".concat(c).concat(_?"("+_+")":"","[").concat(C,"]: ").concat(i.replace(Gr,"\n "))}("\n"+i.message,C,c,_),i.ngTokenPath=C,i[es]=null,i}var Eu,Ac,F=ts(lo("Inject",function(i){return{token:i}}),-1),le=ts(lo("Optional"),8),We=ts(lo("Self"),2),Mt=ts(lo("SkipSelf"),4),Yt=ts(lo("Host"),1),Cn=null;function Di(i){return ca(function qn(){return Cn=Cn||new kr}().parameters(i))}function ca(i){return i.map(function(o){return function Ha(i){var o={token:null,attribute:null,host:!1,optional:!1,self:!1,skipSelf:!1};if(Array.isArray(i)&&i.length>0)for(var c=0;c"+c;try{var _=(new window.DOMParser).parseFromString(Gi(c),"text/html").body;return null===_?this.inertDocumentHelper.getInertBodyElement(c):(_.removeChild(_.firstChild),_)}catch(C){return null}}}]),i}(),Gl=function(){function i(o){if((0,A.Z)(this,i),this.defaultDoc=o,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){var c=this.inertDocument.createElement("html");this.inertDocument.appendChild(c);var _=this.inertDocument.createElement("body");c.appendChild(_)}}return(0,Z.Z)(i,[{key:"getInertBodyElement",value:function(c){var _=this.inertDocument.createElement("template");if("content"in _)return _.innerHTML=Gi(c),_;var C=this.inertDocument.createElement("body");return C.innerHTML=Gi(c),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(C),C}},{key:"stripCustomNsAttrs",value:function(c){for(var _=c.attributes,C=_.length-1;0"),!0}},{key:"endElement",value:function(c){var _=c.nodeName.toLowerCase();xd.hasOwnProperty(_)&&!wp.hasOwnProperty(_)&&(this.buf.push(""))}},{key:"chars",value:function(c){this.buf.push(Sd(c))}},{key:"checkClobberedElement",value:function(c,_){if(_&&(c.compareDocumentPosition(_)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: ".concat(c.outerHTML));return _}}]),i}(),tu=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,_m=/([^\#-~ |!])/g;function Sd(i){return i.replace(/&/g,"&").replace(tu,function(o){return"&#"+(1024*(o.charCodeAt(0)-55296)+(o.charCodeAt(1)-56320)+65536)+";"}).replace(_m,function(o){return"&#"+o.charCodeAt(0)+";"}).replace(//g,">")}function iu(i,o){var c=null;try{nu=nu||function Dl(i){var o=new Gl(i);return function Ap(){try{return!!(new window.DOMParser).parseFromString(Gi(""),"text/html")}catch(i){return!1}}()?new Tp(o):o}(i);var _=o?String(o):"";c=nu.getInertBodyElement(_);var C=5,w=_;do{if(0===C)throw new Error("Failed to sanitize html because the input is unstable");C--,_=w,w=c.innerHTML,c=nu.getInertBodyElement(_)}while(_!==w);return Gi((new Ec).sanitizeChildren(Iu(c)||c))}finally{if(c)for(var Oe=Iu(c)||c;Oe.firstChild;)Oe.removeChild(Oe.firstChild)}}function Iu(i){return"content"in i&&function Lu(i){return i.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===i.nodeName}(i)?i.content:null}var cr=function(){return(cr=cr||{})[cr.NONE=0]="NONE",cr[cr.HTML=1]="HTML",cr[cr.STYLE=2]="STYLE",cr[cr.SCRIPT=3]="SCRIPT",cr[cr.URL=4]="URL",cr[cr.RESOURCE_URL=5]="RESOURCE_URL",cr}();function au(i){var o=lu();return o?_d(o.sanitize(cr.HTML,i)||""):cc(i,"HTML")?_d(Us(i)):iu(ze(),ge(i))}function Fu(i){var o=lu();return o?o.sanitize(cr.URL,i)||"":cc(i,"URL")?Us(i):Dc(ge(i))}function uc(i){var o=lu();if(o)return xp(o.sanitize(cr.RESOURCE_URL,i)||"");if(cc(i,"ResourceURL"))return xp(Us(i));throw new Ie(904,"")}function lu(){var i=Qn();return i&&i[12]}var fl="__ngContext__";function Hr(i,o){i[fl]=o}function cu(i){var o=function ml(i){return i[fl]||null}(i);return o?Array.isArray(o)?o:o.lView:null}function Ru(i){return i.ngOriginalError}function Fp(i){for(var o=arguments.length,c=new Array(o>1?o-1:0),_=1;_0&&(i[c-1][4]=_[4]);var w=cl(i,10+o);!function Am(i,o){fu(i,o,o[11],2,null,null),o[0]=null,o[6]=null}(_[1],_);var G=w[19];null!==G&&G.detachView(w[1]),_[3]=null,_[4]=null,_[2]&=-129}return _}}function Hp(i,o){if(!(256&o[2])){var c=o[11];ae(c)&&c.destroyNode&&fu(i,o,c,3,null,null),function wm(i){var o=i[13];if(!o)return Ud(i[1],i);for(;o;){var c=null;if(za(o))c=o[13];else{var _=o[10];_&&(c=_)}if(!c){for(;o&&!o[4]&&o!==i;)za(o)&&Ud(o[1],o),o=o[3];null===o&&(o=i),za(o)&&Ud(o[1],o),c=o&&o[4]}o=c}}(o)}}function Ud(i,o){if(!(256&o[2])){o[2]&=-129,o[2]|=256,function jp(i,o){var c;if(null!=i&&null!=(c=i.destroyHooks))for(var _=0;_=0?_[C=mt]():_[C=-mt].unsubscribe(),w+=2}else{var Zt=_[C=c[w+1]];c[w].call(Zt)}if(null!==_){for(var Kt=C+1;Kt<_.length;Kt++)(0,_[Kt])();o[7]=null}}(i,o),1===o[1].type&&ae(o[11])&&o[11].destroy();var c=o[17];if(null!==c&&fr(o[3])){c!==o[3]&&Rd(c,o);var _=o[19];null!==_&&_.detachView(i)}}}function Jp(i,o,c){return function Qp(i,o,c){for(var _=o;null!==_&&40&_.type;)_=(o=_).parent;if(null===_)return c[0];if(2&_.flags){var C=i.data[_.directiveStart].encapsulation;if(C===et.None||C===et.Emulated)return null}return kn(_,c)}(i,o.parent,c)}function fc(i,o,c,_,C){ae(i)?i.insertBefore(o,c,_,C):o.insertBefore(c,_,C)}function Wp(i,o,c){ae(i)?i.appendChild(o,c):o.appendChild(c)}function zp(i,o,c,_,C){null!==_?fc(i,o,c,_,C):Wp(i,o,c)}function Do(i,o){return ae(i)?i.parentNode(o):o.parentNode}function Gp(i,o,c){return Bd(i,o,c)}var Bd=function Kp(i,o,c){return 40&i.type?kn(i,c):null};function Yu(i,o,c,_){var C=Jp(i,_,o),w=o[11],fe=Gp(_.parent||o[6],_,o);if(null!=C)if(Array.isArray(c))for(var Oe=0;Oew?"":C[Kt+1].toLowerCase();var mn=8&_?an:null;if(mn&&-1!==nf(mn,mt,0)||2&_&&mt!==an){if(Vs(_))return!1;G=!0}}}}else{if(!G&&!Vs(_)&&!Vs(Oe))return!1;if(G&&Vs(Oe))continue;G=!1,_=Oe|1&_}}return Vs(_)||G}function Vs(i){return 0==(1&i)}function Bm(i,o,c,_){if(null===o)return-1;var C=0;if(_||!c){for(var w=!1;C-1)for(c++;c2&&void 0!==arguments[2]&&arguments[2],_=0;_0?'="'+fe+'"':"")+"]"}else 8&_?C+="."+G:4&_&&(C+=" "+G);else""!==C&&!Vs(G)&&(o+=sf(w,C),C=""),_=G,w=w||!Vs(_);c++}return""!==C&&(o+=sf(w,C)),o}var na={};function cf(i){Qd(Xi(),Qn(),Yr()+i,Go())}function Qd(i,o,c,_){if(!_)if(3==(3&o[2])){var w=i.preOrderCheckHooks;null!==w&&Os(o,w,c)}else{var G=i.preOrderHooks;null!==G&&$o(o,G,0,c)}Ko(c)}function mc(i,o){return i<<17|o<<2}function Cs(i){return i>>17&32767}function zd(i){return 2|i}function vl(i){return(131068&i)>>2}function Gd(i,o){return-131069&i|o<<2}function Kd(i){return 1|i}function rp(i,o){var c=i.contentQueries;if(null!==c)for(var _=0;_20&&Qd(i,o,20,Go()),c(_,C)}finally{Ko(w)}}function xf(i,o,c){if(Or(o))for(var C=o.directiveEnd,w=o.directiveStart;w2&&void 0!==arguments[2]?arguments[2]:kn,_=o.localNames;if(null!==_)for(var C=o.index+1,w=0;w<_.length;w+=2){var G=_[w+1],fe=-1===G?c(o,i):i[G];i[C++]=fe}}function Sf(i){var o=i.tView;return null===o||o.incompleteFirstPass?i.tView=yl(1,null,i.template,i.decls,i.vars,i.directiveDefs,i.pipeDefs,i.viewQuery,i.schemas,i.consts):o}function yl(i,o,c,_,C,w,G,fe,Oe,mt){var Zt=20+_,Kt=Zt+C,an=function aa(i,o){for(var c=[],_=0;_0;){var c=i[--o];if("number"==typeof c&&c<0)return c}return 0})(fe)!=Oe&&fe.push(Oe),fe.push(_,C,G)}}function Df(i,o){null!==i.hostBindings&&i.hostBindings(1,o)}function wf(i,o){o.flags|=2,(i.components||(i.components=[])).push(o.index)}function vu(i,o,c){if(c){if(o.exportAs)for(var _=0;_0&&Js(c)}}function Js(i){for(var o=El(i);null!==o;o=Id(o))for(var c=10;c0&&Js(_)}var G=i[1].components;if(null!==G)for(var fe=0;fe0&&Js(Oe)}}function ua(i,o){var c=ra(o,i),_=c[1];(function Lf(i,o){for(var c=o.length;c1&&void 0!==arguments[1]?arguments[1]:Al;if(_===Al){var C=new Error("NullInjectorError: No provider for ".concat(z(c),"!"));throw C.name="NullInjectorError",C}return _}}]),i}(),Xu=new lr("Set Injector scope."),Vc={},gh={},Ir=void 0;function uo(){return void 0===Ir&&(Ir=new $u),Ir}function qf(i){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,_=arguments.length>3?arguments[3]:void 0,C=Vf(i,o,c,_);return C._resolveInjectorDefTypes(),C}function Vf(i){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,_=arguments.length>3?arguments[3]:void 0;return new vh(i,c,o||uo(),_)}var vh=function(){function i(o,c,_){var C=this,w=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,A.Z)(this,i),this.parent=_,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var G=[];c&&xr(c,function(Oe){return C.processProvider(Oe,o,c)}),xr([o],function(Oe){return C.processInjectorType(Oe,[],G)}),this.records.set(fp,ic(void 0,this));var fe=this.records.get(Xu);this.scope=null!=fe?fe.value:null,this.source=w||("object"==typeof o?null:z(o))}return(0,Z.Z)(i,[{key:"destroyed",get:function(){return this._destroyed}},{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(function(c){return c.ngOnDestroy()})}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(c){var _=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Al,C=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Tn.Default;this.assertNotDestroyed();var w=Rs(this),G=Un(void 0);try{if(!(C&Tn.SkipSelf)){var fe=this.records.get(c);if(void 0===fe){var Oe=$f(c)&&we(c);fe=Oe&&this.injectableDefInScope(Oe)?ic(Hc(c),Vc):null,this.records.set(c,fe)}if(null!=fe)return this.hydrate(c,fe)}var mt=C&Tn.Self?uo():this.parent;return mt.get(c,_=C&Tn.Optional&&_===Al?null:_)}catch(Kt){if("NullInjectorError"===Kt.name){var Zt=Kt[es]=Kt[es]||[];if(Zt.unshift(z(c)),w)throw Kt;return Tc(Kt,c,"R3InjectorError",this.source)}throw Kt}finally{Un(G),Rs(w)}}},{key:"_resolveInjectorDefTypes",value:function(){var c=this;this.injectorDefTypes.forEach(function(_){return c.get(_)})}},{key:"toString",value:function(){var c=[];return this.records.forEach(function(C,w){return c.push(z(w))}),"R3Injector[".concat(c.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Ie(205,!1)}},{key:"processInjectorType",value:function(c,_,C){var w=this;if(!(c=ne(c)))return!1;var G=ft(c),fe=null==G&&c.ngModule||void 0,Oe=void 0===fe?c:fe,Kt=-1!==C.indexOf(Oe);if(void 0!==fe&&(G=ft(fe)),null==G)return!1;if(null!=G.imports&&!Kt){var an;C.push(Oe);try{xr(G.imports,function(jn){w.processInjectorType(jn,_,C)&&(void 0===an&&(an=[]),an.push(jn))})}finally{}if(void 0!==an)for(var mn=function(wi){var wa=an[wi],Wa=wa.ngModule,Jr=wa.providers;xr(Jr,function(cs){return w.processProvider(cs,Wa,Jr||zt)})},Ln=0;Ln0)throw lc(o,"?"),new Ie(204,!1);var _=function $(i){var o=i&&(i[gt]||i[_n]);if(o){var c=function Ae(i){if(i.hasOwnProperty("name"))return i.name;var o=(""+i).match(/^function\s*([^\s(]+)/);return null===o?"":o[1]}(i);return console.warn('DEPRECATED: DI is instantiating a token "'.concat(c,'" that inherits its @Injectable decorator but does not provide one itself.\n')+'This will become an error in a future version of Angular. Please add @Injectable() to the "'.concat(c,'" class.')),o}return null}(i);return null!==_?function(){return _.factory(i)}:function(){return new i}}(i);throw new Ie(204,!1)}function Jf(i,o,c){var _=void 0;if(ac(i)){var C=ne(i);return br(C)||Hc(C)}if(Qf(i))_=function(){return ne(i.useValue)};else if(function zf(i){return!(!i||!i.useFactory)}(i))_=function(){return i.useFactory.apply(i,(0,v.Z)($c(i.deps||[])))};else if(function Wf(i){return!(!i||!i.useExisting)}(i))_=function(){return ar(ne(i.useExisting))};else{var w=ne(i&&(i.useClass||i.provide));if(!function Kf(i){return!!i.deps}(i))return br(w)||Hc(w);_=function(){return J(w,(0,v.Z)($c(i.deps)))}}return _}function ic(i,o){var c=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return{factory:i,value:o,multi:c?[]:void 0}}function Qf(i){return null!==i&&"object"==typeof i&&ud in i}function ac(i){return"function"==typeof i}function $f(i){return"function"==typeof i||"object"==typeof i&&i instanceof lr}var Vo=function(){var i=function(){function o(){(0,A.Z)(this,o)}return(0,Z.Z)(o,null,[{key:"create",value:function(_,C){var w;if(Array.isArray(_))return qf({name:""},C,_,"");var G=null!==(w=_.name)&&void 0!==w?w:"";return qf({name:G},_.parent,_.providers,G)}}]),o}();return i.THROW_IF_NOT_FOUND=Al,i.NULL=new $u,i.\u0275prov=ut({token:i,providedIn:"any",factory:function(){return ar(fp)}}),i.__NG_ELEMENT_ID__=-1,i}();function L(i,o){Ml(cu(i)[1],qa())}function M(i){for(var o=function u(i){return Object.getPrototypeOf(i.prototype).constructor}(i.type),c=!0,_=[i];o;){var C=void 0;if(Ga(i))C=o.\u0275cmp||o.\u0275dir;else{if(o.\u0275cmp)throw new Ie(903,"");C=o.\u0275dir}if(C){if(c){_.push(C);var G=i;G.inputs=re(i.inputs),G.declaredInputs=re(i.declaredInputs),G.outputs=re(i.outputs);var fe=C.hostBindings;fe&&nn(i,fe);var Oe=C.viewQuery,mt=C.contentQueries;if(Oe&<(i,Oe),mt&&Wt(i,mt),r(i.inputs,C.inputs),r(i.declaredInputs,C.declaredInputs),r(i.outputs,C.outputs),Ga(C)&&C.data.animation){var Zt=i.data;Zt.animation=(Zt.animation||[]).concat(C.data.animation)}}var Kt=C.features;if(Kt)for(var an=0;an=0;_--){var C=i[_];C.hostVars=o+=C.hostVars,C.hostAttrs=Me(C.hostAttrs,c=Me(c,C.hostAttrs))}}(_)}function re(i){return i===Zn?{}:i===zt?[]:i}function lt(i,o){var c=i.viewQuery;i.viewQuery=c?function(_,C){o(_,C),c(_,C)}:o}function Wt(i,o){var c=i.contentQueries;i.contentQueries=c?function(_,C,w){o(_,C,w),c(_,C,w)}:o}function nn(i,o){var c=i.hostBindings;i.hostBindings=c?function(_,C){o(_,C),c(_,C)}:o}var oi=null;function pi(){if(!oi){var i=pt.Symbol;if(i&&i.iterator)oi=i.iterator;else for(var o=Object.getOwnPropertyNames(Map.prototype),c=0;c1&&void 0!==arguments[1]?arguments[1]:Tn.Default,c=Qn();if(null===c)return ar(i,o);var _=qa();return ks(_,c,ne(i),o)}function rg(){throw new Error("invalid")}function D_(i,o,c){var _=Qn();return er(_,Sn(),o)&&rs(Xi(),Ka(),_,i,o,_[11],c,!1),D_}function w_(i,o,c,_,C){var G=C?"class":"style";Bf(i,c,o.inputs[G],G,_)}function O_(i,o,c,_){var C=Qn(),w=Xi(),G=20+i,fe=C[11],Oe=C[G]=Nd(fe,o,function yo(){return Ni.lFrame.currentNamespace}()),mt=w.firstCreatePass?function zg(i,o,c,_,C,w,G){var fe=o.consts,mt=Rc(o,i,2,C,ka(fe,w));return dr(o,c,mt,ka(fe,G)),null!==mt.attrs&&Ku(mt,mt.attrs,!1),null!==mt.mergedAttrs&&Ku(mt,mt.mergedAttrs,!0),null!==o.queries&&o.queries.elementStart(o,mt),mt}(G,w,C,0,o,c,_):w.data[G];Pi(mt,!0);var Zt=mt.mergedAttrs;null!==Zt&&he(fe,Oe,Zt);var Kt=mt.classes;null!==Kt&&Hd(fe,Oe,Kt);var an=mt.styles;null!==an&&tf(fe,Oe,an),64!=(64&mt.flags)&&Yu(w,C,Oe,mt),0===function Ts(){return Ni.lFrame.elementDepthCount}()&&Hr(Oe,C),function $i(){Ni.lFrame.elementDepthCount++}(),Dr(mt)&&(as(w,C,mt),xf(w,mt,C)),null!==_&&sp(C,mt)}function E_(){var i=qa();fa()?nr():Pi(i=i.parent,!1);var o=i;!function us(){Ni.lFrame.elementDepthCount--}();var c=Xi();c.firstCreatePass&&(Ml(c,i),Or(i)&&c.queries.elementEnd(i)),null!=o.classesWithoutHost&&function rl(i){return 0!=(16&i.flags)}(o)&&w_(c,o,Qn(),o.classesWithoutHost,!0),null!=o.stylesWithoutHost&&function ol(i){return 0!=(32&i.flags)}(o)&&w_(c,o,Qn(),o.stylesWithoutHost,!1)}function og(i,o,c,_){O_(i,o,c,_),E_()}function Z_(i,o,c){var _=Qn(),C=Xi(),w=i+20,G=C.firstCreatePass?function sg(i,o,c,_,C){var w=o.consts,G=ka(w,_),fe=Rc(o,i,8,"ng-container",G);return null!==G&&Ku(fe,G,!0),dr(o,c,fe,ka(w,C)),null!==o.queries&&o.queries.elementStart(o,fe),fe}(w,C,_,o,c):C.data[w];Pi(G,!0);var fe=_[w]=_[11].createComment("");Yu(C,_,fe,G),Hr(fe,_),Dr(G)&&(as(C,_,G),xf(C,G,_)),null!=c&&sp(_,G)}function k_(){var i=qa(),o=Xi();fa()?nr():Pi(i=i.parent,!1),o.firstCreatePass&&(Ml(o,i),Or(i)&&o.queries.elementEnd(i))}function lg(i,o,c){Z_(i,o,c),k_()}function cg(){return Qn()}function I_(i){return!!i&&"function"==typeof i.then}function ug(i){return!!i&&"function"==typeof i.subscribe}var dg=ug;function L_(i,o,c,_){var C=Qn(),w=Xi(),G=qa();return pg(w,C,C[11],G,i,o,!!c,_),L_}function F_(i,o){var c=qa(),_=Qn(),C=Xi();return pg(C,_,Rf(Da(C.data),c,_),c,i,o,!1),F_}function pg(i,o,c,_,C,w,G,fe){var Oe=Dr(_),Zt=i.firstCreatePass&&Nf(i),Kt=o[8],an=Ff(o),mn=!0;if(3&_.type||fe){var Ln=kn(_,o),Kn=fe?fe(Ln):Ln,di=an.length,xi=fe?function(ng){return fe(Be(ng[_.index]))}:_.index;if(ae(c)){var jn=null;if(!fe&&Oe&&(jn=function Gg(i,o,c,_){var C=i.cleanup;if(null!=C)for(var w=0;wOe?fe[Oe]:null}"string"==typeof G&&(w+=2)}return null}(i,o,C,_.index)),null!==jn)(jn.__ngLastListenerFn__||jn).__ngNextListenerFn__=w,jn.__ngLastListenerFn__=w,mn=!1;else{w=N_(_,o,Kt,w,!1);var wa=c.listen(Kn,C,w);an.push(w,wa),Zt&&Zt.push(C,xi,di,di+1)}}else w=N_(_,o,Kt,w,!0),Kn.addEventListener(C,w,G),an.push(w),Zt&&Zt.push(C,xi,di,G)}else w=N_(_,o,Kt,w,!1);var Jr,Wa=_.outputs;if(mn&&null!==Wa&&(Jr=Wa[C])){var cs=Jr.length;if(cs)for(var Nl=0;Nl0&&void 0!==arguments[0]?arguments[0]:1;return ws(i)}function hg(i,o){for(var c=null,_=function jd(i){var o=i.attrs;if(null!=o){var c=o.indexOf(5);if(0==(1&c))return o[c+1]}return null}(i),C=0;C1&&void 0!==arguments[1]?arguments[1]:0,c=arguments.length>2?arguments[2]:void 0,_=Qn(),C=Xi(),w=Rc(C,20+i,16,null,c||null);null===w.projection&&(w.projection=o),nr(),64!=(64&w.flags)&&Im(C,_,w)}function R_(i,o,c){return u_(i,"",o,"",c),R_}function u_(i,o,c,_,C){var w=Qn(),G=Ms(w,o,c,_);return G!==na&&rs(Xi(),Ka(),w,i,G,w[11],C,!1),u_}function U_(i,o,c,_,C,w,G){var fe=Qn(),Oe=xs(fe,o,c,_,C,w);return Oe!==na&&rs(Xi(),Ka(),fe,i,Oe,fe[11],G,!1),U_}function B_(i,o,c,_,C,w,G,fe,Oe,mt,Zt){var Kt=Qn(),an=zs(Kt,o,c,_,C,w,G,fe,Oe,mt);return an!==na&&rs(Xi(),Ka(),Kt,i,an,Kt[11],Zt,!1),B_}function Mg(i,o,c,_,C){for(var w=i[c+1],G=null===o,fe=_?Cs(w):vl(w),Oe=!1;0!==fe&&(!1===Oe||G);){var Zt=i[fe+1];Xg(i[fe],o)&&(Oe=!0,i[fe+1]=_?Kd(Zt):zd(Zt)),fe=_?Cs(Zt):vl(Zt)}Oe&&(i[c+1]=_?zd(w):Kd(w))}function Xg(i,o){return null===i||null==o||(Array.isArray(i)?i[1]:i)===o||!(!Array.isArray(i)||"string"!=typeof o)&&Tl(i,o)>=0}var Eo={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function xg(i){return i.substring(Eo.key,Eo.keyEnd)}function Tg(i,o){var c=Eo.textEnd;return c===o?-1:(o=Eo.keyEnd=function nv(i,o,c){for(;o32;)o++;return o}(i,Eo.key=o,c),sm(i,o,c))}function sm(i,o,c){for(;o=0;c=Tg(o,c))To(i,xg(o),!0)}function Ss(i,o,c,_){var C=Qn(),w=Xi(),G=Rn(2);w.firstUpdatePass&&sv(w,i,G,_),o!==na&&er(C,G,o)&&O(w,w.data[Yr()],C,C[11],i,C[G+1]=function rt(i,o){return null==i||("string"==typeof o?i+=o:"object"==typeof i&&(i=z(Us(i)))),i}(o,c),_,G)}function sc(i,o,c,_){var C=Xi(),w=Rn(2);C.firstUpdatePass&&sv(C,null,w,_);var G=Qn();if(c!==na&&er(G,w,c)){var fe=C.data[Yr()];if(Ht(fe,_)&&!Eg(C,w)){var mt=_?fe.classesWithoutHost:fe.stylesWithoutHost;null!==mt&&(c=Y(mt,c||"")),w_(C,fe,G,c,_)}else!function x(i,o,c,_,C,w,G,fe){C===na&&(C=zt);for(var Oe=0,mt=0,Zt=0=i.expandoStartIndex}function sv(i,o,c,_){var C=i.data;if(null===C[c+1]){var w=C[Yr()],G=Eg(i,c);Ht(w,_)&&null===o&&!G&&(o=!1),o=function Kv(i,o,c,_){var C=Da(i),w=_?o.residualClasses:o.residualStyles;if(null===C)0===(_?o.classBindings:o.styleBindings)&&(c=D(c=m(null,i,o,c,_),o.attrs,_),w=null);else{var fe=o.directiveStylingLast;if(-1===fe||i[fe]!==C)if(c=m(C,i,o,c,_),null===w){var mt=function Zg(i,o,c){var _=c?o.classBindings:o.styleBindings;if(0!==vl(_))return i[Cs(_)]}(i,o,_);void 0!==mt&&Array.isArray(mt)&&function lv(i,o,c,_){i[Cs(c?o.classBindings:o.styleBindings)]=_}(i,o,_,mt=D(mt=m(null,i,o,mt[1],_),o.attrs,_))}else w=function cv(i,o,c){for(var _=void 0,C=o.directiveEnd,w=1+o.directiveStylingLast;w0)&&(mt=!0):Zt=c,C)if(0!==Oe){var mn=Cs(i[fe+1]);i[_+1]=mc(mn,fe),0!==mn&&(i[mn+1]=Gd(i[mn+1],_)),i[fe+1]=function Hm(i,o){return 131071&i|o<<17}(i[fe+1],_)}else i[_+1]=mc(fe,0),0!==fe&&(i[fe+1]=Gd(i[fe+1],_)),fe=_;else i[_+1]=mc(Oe,0),0===fe?fe=_:i[Oe+1]=Gd(i[Oe+1],_),Oe=_;mt&&(i[_+1]=zd(i[_+1])),Mg(i,Zt,_,!0),Mg(i,Zt,_,!1),function $g(i,o,c,_,C){var w=C?i.residualClasses:i.residualStyles;null!=w&&"string"==typeof o&&Tl(w,o)>=0&&(c[_+1]=Kd(c[_+1]))}(o,Zt,i,_,w),G=mc(fe,Oe),w?o.classBindings=G:o.styleBindings=G}(C,w,o,c,G,_)}}function m(i,o,c,_,C){var w=null,G=c.directiveEnd,fe=c.directiveStylingLast;for(-1===fe?fe=c.directiveStart:fe++;fe0;){var Oe=i[C],mt=Array.isArray(Oe),Zt=mt?Oe[1]:Oe,Kt=null===Zt,an=c[C+1];an===na&&(an=Kt?zt:void 0);var mn=Kt?Uo(an,_):Zt===_?an:void 0;if(mt&&!Le(mn)&&(mn=Uo(Oe,_)),Le(mn)&&(fe=mn,G))return fe;var Ln=i[C+1];C=G?Cs(Ln):vl(Ln)}if(null!==o){var Kn=w?o.residualClasses:o.residualStyles;null!=Kn&&(fe=Uo(Kn,_))}return fe}function Le(i){return void 0!==i}function Ht(i,o){return 0!=(i.flags&(o?16:32))}function In(i){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",c=Qn(),_=Xi(),C=i+20,w=_.firstCreatePass?Rc(_,C,1,o,null):_.data[C],G=c[C]=Fd(c[11],o);Yu(_,c,G,w),Pi(w,!1)}function ei(i){return _i("",i,""),ei}function _i(i,o,c){var _=Qn(),C=Ms(_,i,o,c);return C!==na&&Il(_,Yr(),C),_i}function Mi(i,o,c,_,C){var w=Qn(),G=xs(w,i,o,c,_,C);return G!==na&&Il(w,Yr(),G),Mi}function qi(i,o,c,_,C,w,G){var fe=Qn(),Oe=function vr(i,o,c,_,C,w,G,fe){var mt=Ho(i,Br(),c,C,G);return Rn(3),mt?o+ge(c)+_+ge(C)+w+ge(G)+fe:na}(fe,i,o,c,_,C,w,G);return Oe!==na&&Il(fe,Yr(),Oe),qi}function Ar(i,o,c,_,C,w,G,fe,Oe){var mt=Qn(),Zt=zs(mt,i,o,c,_,C,w,G,fe,Oe);return Zt!==na&&Il(mt,Yr(),Zt),Ar}function uv(i,o,c){sc(To,oc,Ms(Qn(),i,o,c),!0)}function dv(i,o,c){var _=Qn();return er(_,Sn(),o)&&rs(Xi(),Ka(),_,i,o,_[11],c,!0),dv}function pv(i,o,c){var _=Qn();if(er(_,Sn(),o)){var w=Xi(),G=Ka();rs(w,G,_,i,o,Rf(Da(w.data),G,_),c,!0)}return pv}var Eh=void 0,A0=["en",[["a","p"],["AM","PM"],Eh],[["AM","PM"],Eh,Eh],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Eh,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Eh,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Eh,"{1} 'at' {0}",Eh],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function T0(i){var c=Math.floor(Math.abs(i)),_=i.toString().replace(/^[^.]*\.?/,"").length;return 1===c&&0===_?1:5}],d_={};function fv(i){var o=function P0(i){return i.toLowerCase().replace(/_/g,"-")}(i),c=ly(o);if(c)return c;var _=o.split("-")[0];if(c=ly(_))return c;if("en"===_)return A0;throw new Error('Missing locale data for the locale "'.concat(i,'".'))}function sy(i){return fv(i)[Ki.PluralCase]}function ly(i){return i in d_||(d_[i]=pt.ng&&pt.ng.common&&pt.ng.common.locales&&pt.ng.common.locales[i]),d_[i]}var Ki=function(){return(Ki=Ki||{})[Ki.LocaleId=0]="LocaleId",Ki[Ki.DayPeriodsFormat=1]="DayPeriodsFormat",Ki[Ki.DayPeriodsStandalone=2]="DayPeriodsStandalone",Ki[Ki.DaysFormat=3]="DaysFormat",Ki[Ki.DaysStandalone=4]="DaysStandalone",Ki[Ki.MonthsFormat=5]="MonthsFormat",Ki[Ki.MonthsStandalone=6]="MonthsStandalone",Ki[Ki.Eras=7]="Eras",Ki[Ki.FirstDayOfWeek=8]="FirstDayOfWeek",Ki[Ki.WeekendRange=9]="WeekendRange",Ki[Ki.DateFormat=10]="DateFormat",Ki[Ki.TimeFormat=11]="TimeFormat",Ki[Ki.DateTimeFormat=12]="DateTimeFormat",Ki[Ki.NumberSymbols=13]="NumberSymbols",Ki[Ki.NumberFormats=14]="NumberFormats",Ki[Ki.CurrencyCode=15]="CurrencyCode",Ki[Ki.CurrencySymbol=16]="CurrencySymbol",Ki[Ki.CurrencyName=17]="CurrencyName",Ki[Ki.Currencies=18]="Currencies",Ki[Ki.Directionality=19]="Directionality",Ki[Ki.PluralCase=20]="PluralCase",Ki[Ki.ExtraData=21]="ExtraData",Ki}(),Ig="en-US";function MC(i,o,c){var _=Xi();if(_.firstCreatePass){var C=Ga(i);_v(c,_.data,_.blueprint,C,!0),_v(o,_.data,_.blueprint,C,!1)}}function _v(i,o,c,_,C){if(i=ne(i),Array.isArray(i))for(var w=0;w>20;if(ac(i)||!i.multi){var Ln=new Zs(mt,C,Ah),Kn=vv(Oe,o,C?Kt:Kt+mn,an);-1===Kn?(hr(Mr(Zt,fe),G,Oe),gv(G,i,o.length),o.push(Oe),Zt.directiveStart++,Zt.directiveEnd++,C&&(Zt.providerIndexes+=1048576),c.push(Ln),fe.push(Ln)):(c[Kn]=Ln,fe[Kn]=Ln)}else{var di=vv(Oe,o,Kt+mn,an),xi=vv(Oe,o,Kt,Kt+mn),wi=xi>=0&&c[xi];if(C&&!wi||!C&&!(di>=0&&c[di])){hr(Mr(Zt,fe),G,Oe);var wa=function TC(i,o,c,_,C){var w=new Zs(i,c,Ah);return w.multi=[],w.index=o,w.componentProviders=0,ky(w,C,_&&!c),w}(C?SC:xC,c.length,C,_,mt);!C&&wi&&(c[xi].providerFactory=wa),gv(G,i,o.length,0),o.push(Oe),Zt.directiveStart++,Zt.directiveEnd++,C&&(Zt.providerIndexes+=1048576),c.push(wa),fe.push(wa)}else gv(G,i,di>-1?di:xi,ky(c[C?xi:di],mt,!C&&_));!C&&_&&wi&&c[xi].componentProviders++}}}function gv(i,o,c,_){var C=ac(o),w=function Gf(i){return!!i.useClass}(o);if(C||w){var Oe=(w?ne(o.useClass):o).prototype.ngOnDestroy;if(Oe){var mt=i.destroyHooks||(i.destroyHooks=[]);if(!C&&o.multi){var Zt=mt.indexOf(c);-1===Zt?mt.push(c,[_,Oe]):mt[Zt+1].push(_,Oe)}else mt.push(c,Oe)}}}function ky(i,o,c){return c&&i.componentProviders++,i.multi.push(o)-1}function vv(i,o,c,_){for(var C=c;C<_;C++)if(o[C]===i)return C;return-1}function xC(i,o,c,_){return yv(this.multi,[])}function SC(i,o,c,_){var w,C=this.multi;if(this.providerFactory){var G=this.providerFactory.componentProviders,fe=sl(c,c[1],this.providerFactory.index,_);yv(C,w=fe.slice(0,G));for(var Oe=G;Oe1&&void 0!==arguments[1]?arguments[1]:[];return function(c){c.providersResolver=function(_,C){return MC(_,C?C(i):i,o)}}}var AC=(0,Z.Z)(function i(){(0,A.Z)(this,i)}),Ly=(0,Z.Z)(function i(){(0,A.Z)(this,i)}),DC=function(){function i(){(0,A.Z)(this,i)}return(0,Z.Z)(i,[{key:"resolveComponentFactory",value:function(c){throw function PC(i){var o=Error("No component factory found for ".concat(z(i),". Did you add it to @NgModule.entryComponents?"));return o.ngComponent=i,o}(c)}}]),i}(),j_=function(){var i=(0,Z.Z)(function o(){(0,A.Z)(this,o)});return i.NULL=new DC,i}();function wC(){return f_(qa(),Qn())}function f_(i,o){return new J_(kn(i,o))}var J_=function(){var i=(0,Z.Z)(function o(c){(0,A.Z)(this,o),this.nativeElement=c});return i.__NG_ELEMENT_ID__=wC,i}();function OC(i){return i instanceof J_?i.nativeElement:i}var Ny=(0,Z.Z)(function i(){(0,A.Z)(this,i)}),EC=function(){var i=(0,Z.Z)(function o(){(0,A.Z)(this,o)});return i.__NG_ELEMENT_ID__=function(){return function kC(){var i=Qn(),c=ra(qa().index,i);return function ZC(i){return i[11]}(za(c)?c:i)}()},i}(),IC=function(){var i=(0,Z.Z)(function o(){(0,A.Z)(this,o)});return i.\u0275prov=ut({token:i,providedIn:"root",factory:function(){return null}}),i}(),Ry=(0,Z.Z)(function i(o){(0,A.Z)(this,i),this.full=o,this.major=o.split(".")[0],this.minor=o.split(".")[1],this.patch=o.split(".").slice(2).join(".")}),LC=new Ry("13.2.1"),bv={};function Ug(i,o,c,_){for(var C=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==c;){var w=o[c.index];if(null!==w&&_.push(Be(w)),fr(w))for(var G=10;G-1&&(Bu(c,C),cl(_,C))}this._attachedToViewContainer=!1}Hp(this._lView[1],this._lView)}},{key:"onDestroy",value:function(c){Af(this._lView[1],this._lView,null,c)}},{key:"markForCheck",value:function(){_c(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){jr(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function Gu(i,o,c){fs(!0);try{jr(i,o,c)}finally{fs(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(){if(this._appRef)throw new Ie(902,"");this._attachedToViewContainer=!0}},{key:"detachFromAppRef",value:function(){this._appRef=null,function Dm(i,o){fu(i,o,o[11],2,null,null)}(this._lView[1],this._lView)}},{key:"attachToAppRef",value:function(c){if(this._attachedToViewContainer)throw new Ie(902,"");this._appRef=c}}]),i}(),FC=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(_){var C;return(0,A.Z)(this,c),(C=o.call(this,_))._view=_,C}return(0,Z.Z)(c,[{key:"detectChanges",value:function(){bl(this._view)}},{key:"checkNoChanges",value:function(){!function fh(i){fs(!0);try{bl(i)}finally{fs(!1)}}(this._view)}},{key:"context",get:function(){return null}}]),c}(Q_),Uy=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(_){var C;return(0,A.Z)(this,c),(C=o.call(this)).ngModule=_,C}return(0,Z.Z)(c,[{key:"resolveComponentFactory",value:function(C){var w=ta(C);return new Cv(w,this.ngModule)}}]),c}(j_);function By(i){var o=[];for(var c in i)i.hasOwnProperty(c)&&o.push({propName:i[c],templateName:c});return o}var RC=new lr("SCHEDULER_TOKEN",{providedIn:"root",factory:function(){return wd}}),Cv=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(_,C){var w;return(0,A.Z)(this,c),(w=o.call(this)).componentDef=_,w.ngModule=C,w.componentType=_.type,w.selector=function qm(i){return i.map(lf).join(",")}(_.selectors),w.ngContentSelectors=_.ngContentSelectors?_.ngContentSelectors:[],w.isBoundToModule=!!C,w}return(0,Z.Z)(c,[{key:"inputs",get:function(){return By(this.componentDef.inputs)}},{key:"outputs",get:function(){return By(this.componentDef.outputs)}},{key:"create",value:function(C,w,G,fe){var jn,wi,Oe=(fe=fe||this.ngModule)?function UC(i,o){return{get:function(_,C,w){var G=i.get(_,bv,w);return G!==bv||C===bv?G:o.get(_,C,w)}}}(C,fe.injector):C,mt=Oe.get(Ny,de),Zt=Oe.get(IC,null),Kt=mt.createRenderer(null,this.componentDef),an=this.componentDef.selectors[0][0]||"div",mn=G?function Sr(i,o,c){if(ae(i))return i.selectRootElement(o,c===et.ShadowDom);var C="string"==typeof o?i.querySelector(o):o;return C.textContent="",C}(Kt,G,this.componentDef.encapsulation):Nd(mt.createRenderer(null,this.componentDef),an,function NC(i){var o=i.toLowerCase();return"svg"===o?"svg":"math"===o?"math":null}(an)),Ln=this.componentDef.onPush?576:528,Kn=function b(i,o){return{components:[],scheduler:i||wd,clean:mh,playerHandler:o||null,flags:0}}(),di=yl(0,null,null,1,0,null,null,null,null,null),xi=_u(null,di,Kn,Ln,null,null,mt,Kt,Zt,Oe);Bl(xi);try{var wa=function rm(i,o,c,_,C,w){var G=c[1];c[20]=i;var Oe=Rc(G,20,2,"#host",null),mt=Oe.mergedAttrs=o.hostAttrs;null!==mt&&(Ku(Oe,mt,!0),null!==i&&(he(C,i,mt),null!==Oe.classes&&Hd(C,i,Oe.classes),null!==Oe.styles&&tf(C,i,Oe.styles)));var Zt=_.createRenderer(i,o),Kt=_u(c,Sf(o),null,o.onPush?64:16,c[20],Oe,_,Zt,w||null,null);return G.firstCreatePass&&(hr(Mr(Oe,c),G,o.type),wf(G,Oe),Wu(Oe,c.length,1)),Kr(c,Kt),c[20]=Kt}(mn,this.componentDef,xi,mt,Kt);if(mn)if(G)he(Kt,mn,["ng-version",LC.full]);else{var Wa=function Vm(i){for(var o=[],c=[],_=1,C=2;_0&&Hd(Kt,mn,cs.join(" "))}if(wi=Ti(di,20),void 0!==w)for(var Nl=wi.projection=[],vc=0;vc1&&void 0!==arguments[1]?arguments[1]:Vo.THROW_IF_NOT_FOUND,G=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Tn.Default;return C===Vo||C===m_||C===fp?this:this._r3Injector.get(C,w,G)}},{key:"destroy",value:function(){var C=this._r3Injector;!C.destroyed&&C.destroy(),this.destroyCbs.forEach(function(w){return w()}),this.destroyCbs=null}},{key:"onDestroy",value:function(C){this.destroyCbs.push(C)}}]),c}(m_),Mv=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(_){var C;return(0,A.Z)(this,c),(C=o.call(this)).moduleType=_,null!==Ct(_)&&function VC(i){var o=new Set;!function c(_){var C=Ct(_,!0),w=C.id;null!==w&&(function qy(i,o,c){if(o&&o!==c)throw new Error("Duplicate module registered for ".concat(i," - ").concat(z(o)," vs ").concat(z(o.name)))}(w,h_.get(w),_),h_.set(w,_));var mt,fe=gl(C.imports),Oe=(0,I.Z)(fe);try{for(Oe.s();!(mt=Oe.n()).done;){var Zt=mt.value;o.has(Zt)||(o.add(Zt),c(Zt))}}catch(Kt){Oe.e(Kt)}finally{Oe.f()}}(i)}(_),C}return(0,Z.Z)(c,[{key:"create",value:function(C){return new Hy(this.moduleType,C)}}]),c}(Yy);function jy(i,o,c){var _=ma()+i,C=Qn();return C[_]===na?Xa(C,_,c?o.call(c):o()):$r(C,_)}function Jy(i,o,c,_){return Ky(Qn(),ma(),i,o,c,_)}function Qy(i,o,c,_,C){return $y(Qn(),ma(),i,o,c,_,C)}function Wy(i,o,c,_,C,w){return Xy(Qn(),ma(),i,o,c,_,C,w)}function zy(i,o,c,_,C,w,G){return function eb(i,o,c,_,C,w,G,fe,Oe){var mt=o+c;return pr(i,mt,C,w,G,fe)?Xa(i,mt+4,Oe?_.call(Oe,C,w,G,fe):_(C,w,G,fe)):W_(i,mt+4)}(Qn(),ma(),i,o,c,_,C,w,G)}function Gy(i,o,c,_,C,w,G,fe,Oe){var mt=ma()+i,Zt=Qn(),Kt=pr(Zt,mt,c,_,C,w);return or(Zt,mt+4,G,fe)||Kt?Xa(Zt,mt+6,Oe?o.call(Oe,c,_,C,w,G,fe):o(c,_,C,w,G,fe)):$r(Zt,mt+6)}function W_(i,o){var c=i[o];return c===na?void 0:c}function Ky(i,o,c,_,C,w){var G=o+c;return er(i,G,C)?Xa(i,G+1,w?_.call(w,C):_(C)):W_(i,G+1)}function $y(i,o,c,_,C,w,G){var fe=o+c;return or(i,fe,C,w)?Xa(i,fe+2,G?_.call(G,C,w):_(C,w)):W_(i,fe+2)}function Xy(i,o,c,_,C,w,G,fe){var Oe=o+c;return Ho(i,Oe,C,w,G)?Xa(i,Oe+3,fe?_.call(fe,C,w,G):_(C,w,G)):W_(i,Oe+3)}function nb(i,o){var _,c=Xi(),C=i+20;c.firstCreatePass?(_=function zC(i,o){if(o)for(var c=o.length-1;c>=0;c--){var _=o[c];if(i===_.name)return _}}(o,c.pipeRegistry),c.data[C]=_,_.onDestroy&&(c.destroyHooks||(c.destroyHooks=[])).push(C,_.onDestroy)):_=c.data[C];var w=_.factory||(_.factory=br(_.type)),G=Un(Ah);try{var fe=$n(!1),Oe=w();return $n(fe),function C_(i,o,c,_){c>=i.data.length&&(i.data[c]=null,i.blueprint[c]=null),o[c]=_}(c,Qn(),C,Oe),Oe}finally{Un(G)}}function ib(i,o,c){var _=i+20,C=Qn(),w=Pa(C,_);return z_(C,_)?Ky(C,ma(),o,w.transform,c,w):w.transform(c)}function ab(i,o,c,_){var C=i+20,w=Qn(),G=Pa(w,C);return z_(w,C)?$y(w,ma(),o,G.transform,c,_,G):G.transform(c,_)}function rb(i,o,c,_,C){var w=i+20,G=Qn(),fe=Pa(G,w);return z_(G,w)?Xy(G,ma(),o,fe.transform,c,_,C,fe):fe.transform(c,_,C)}function z_(i,o){return i[1].data[o].pure}var $C=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(){var _,C=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,A.Z)(this,c),(_=o.call(this)).__isAsync=C,_}return(0,Z.Z)(c,[{key:"emit",value:function(C){(0,P.Z)((0,t.Z)(c.prototype),"next",this).call(this,C)}},{key:"subscribe",value:function(C,w,G){var fe,Oe,mt,Zt=C,Kt=w||function(){return null},an=G;if(C&&"object"==typeof C){var mn=C;Zt=null===(fe=mn.next)||void 0===fe?void 0:fe.bind(mn),Kt=null===(Oe=mn.error)||void 0===Oe?void 0:Oe.bind(mn),an=null===(mt=mn.complete)||void 0===mt?void 0:mt.bind(mn)}this.__isAsync&&(Kt=xv(Kt),Zt&&(Zt=xv(Zt)),an&&(an=xv(an)));var Ln=(0,P.Z)((0,t.Z)(c.prototype),"subscribe",this).call(this,{next:Zt,error:Kt,complete:an});return C instanceof ce.w0&&C.add(Ln),Ln}}]),c}(ie.x);function xv(i){return function(o){setTimeout(i,void 0,o)}}var td=$C;function XC(){return this._results[pi()]()}var ob=function(){function i(){var o=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(0,A.Z)(this,i),this._emitDistinctChangesOnly=o,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;var c=pi(),_=i.prototype;_[c]||(_[c]=XC)}return(0,Z.Z)(i,[{key:"changes",get:function(){return this._changes||(this._changes=new td)}},{key:"get",value:function(c){return this._results[c]}},{key:"map",value:function(c){return this._results.map(c)}},{key:"filter",value:function(c){return this._results.filter(c)}},{key:"find",value:function(c){return this._results.find(c)}},{key:"reduce",value:function(c,_){return this._results.reduce(c,_)}},{key:"forEach",value:function(c){this._results.forEach(c)}},{key:"some",value:function(c){return this._results.some(c)}},{key:"toArray",value:function(){return this._results.slice()}},{key:"toString",value:function(){return this._results.toString()}},{key:"reset",value:function(c,_){var C=this;C.dirty=!1;var w=Ro(c);(this._changesDetected=!function sd(i,o,c){if(i.length!==o.length)return!1;for(var _=0;_0;)this.remove(this.length-1)}},{key:"get",value:function(C){var w=lb(this._lContainer);return null!==w&&w[C]||null}},{key:"length",get:function(){return this._lContainer.length-10}},{key:"createEmbeddedView",value:function(C,w,G){var fe=C.createEmbeddedView(w||{});return this.insert(fe,G),fe}},{key:"createComponent",value:function(C,w,G,fe,Oe){var Zt,mt=C&&!Ql(C);if(mt)Zt=w;else{var Kt=w||{};Zt=Kt.index,G=Kt.injector,fe=Kt.projectableNodes,Oe=Kt.ngModuleRef}var an=mt?C:new Cv(ta(C)),mn=G||this.parentInjector;if(!Oe&&null==an.ngModule&&mn){var Ln=mn.get(m_,null);Ln&&(Oe=Ln)}var Kn=an.create(mn,fe,void 0,Oe);return this.insert(Kn.hostView,Zt),Kn}},{key:"insert",value:function(C,w){var G=C._lView,fe=G[1];if(function la(i){return fr(i[3])}(G)){var Oe=this.indexOf(C);if(-1!==Oe)this.detach(Oe);else{var mt=G[3],Zt=new sb(mt,mt[6],mt[3]);Zt.detach(Zt.indexOf(C))}}var Kt=this._adjustIndex(w),an=this._lContainer;!function Om(i,o,c,_){var C=10+_,w=c.length;_>0&&(c[C-1][4]=o),_1&&void 0!==arguments[1]?arguments[1]:0;return null==C?this.length+w:C}}]),c}(Yg);function lb(i){return i[8]}function Sv(i){return i[8]||(i[8]=[])}function cb(i,o){var c,_=o[i.index];if(fr(_))c=_;else{var C;if(8&i.type)C=Be(_);else{var w=o[11];C=w.createComment("");var G=kn(i,o);fc(w,Do(w,G),C,function km(i,o){return ae(i)?i.nextSibling(o):o.nextSibling}(w,G),!1)}o[i.index]=c=kf(_,o,C,i),Kr(o,c)}return new sb(c,i,o)}var l1=function(){function i(o){(0,A.Z)(this,i),this.queryList=o,this.matches=null}return(0,Z.Z)(i,[{key:"clone",value:function(){return new i(this.queryList)}},{key:"setDirty",value:function(){this.queryList.setDirty()}}]),i}(),c1=function(){function i(){var o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];(0,A.Z)(this,i),this.queries=o}return(0,Z.Z)(i,[{key:"createEmbeddedView",value:function(c){var _=c.queries;if(null!==_){for(var C=null!==c.contentQueries?c.contentQueries[0]:_.length,w=[],G=0;G2&&void 0!==arguments[2]?arguments[2]:null;(0,A.Z)(this,i),this.predicate=o,this.flags=c,this.read=_}),u1=function(){function i(){var o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];(0,A.Z)(this,i),this.queries=o}return(0,Z.Z)(i,[{key:"elementStart",value:function(c,_){for(var C=0;C1&&void 0!==arguments[1]?arguments[1]:-1;(0,A.Z)(this,i),this.metadata=o,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=c}return(0,Z.Z)(i,[{key:"elementStart",value:function(c,_){this.isApplyingToNode(_)&&this.matchTNode(c,_)}},{key:"elementEnd",value:function(c){this._declarationNodeIndex===c.index&&(this._appliesToNextNode=!1)}},{key:"template",value:function(c,_){this.elementStart(c,_)}},{key:"embeddedTView",value:function(c,_){return this.isApplyingToNode(c)?(this.crossesNgTemplate=!0,this.addMatch(-c.index,_),new i(this.metadata)):null}},{key:"isApplyingToNode",value:function(c){if(this._appliesToNextNode&&1!=(1&this.metadata.flags)){for(var _=this._declarationNodeIndex,C=c.parent;null!==C&&8&C.type&&C.index!==_;)C=C.parent;return _===(null!==C?C.index:-1)}return this._appliesToNextNode}},{key:"matchTNode",value:function(c,_){var C=this.metadata.predicate;if(Array.isArray(C))for(var w=0;w0)_.push(G[fe/2]);else{for(var mt=w[fe+1],Zt=o[-Oe],Kt=10;Kt0&&(fe=setTimeout(function(){G._callbacks=G._callbacks.filter(function(Oe){return Oe.timeoutId!==fe}),_(G._didWork,G.getPendingTasks())},C)),this._callbacks.push({doneCb:_,timeoutId:fe,updateCb:w})}},{key:"whenStable",value:function(_,C,w){if(w&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(_,C,w),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(_,C,w){return[]}}]),o}();return i.\u0275fac=function(c){return new(c||i)(ar(nd))},i.\u0275prov=ut({token:i,factory:i.\u0275fac}),i}(),jb=function(){var i=function(){function o(){(0,A.Z)(this,o),this._applications=new Map,Nv.addToWindow(this)}return(0,Z.Z)(o,[{key:"registerApplication",value:function(_,C){this._applications.set(_,C)}},{key:"unregisterApplication",value:function(_){this._applications.delete(_)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(_){return this._applications.get(_)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(_){var C=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Nv.findTestabilityInTree(this,_,C)}}]),o}();return i.\u0275fac=function(c){return new(c||i)},i.\u0275prov=ut({token:i,factory:i.\u0275fac}),i}();function W1(i){Nv=i}var Cu,Nv=new(function(){function i(){(0,A.Z)(this,i)}return(0,Z.Z)(i,[{key:"addToWindow",value:function(c){}},{key:"findTestabilityInTree",value:function(c,_,C){return null}}]),i}());function z1(i,o,c){var _=new Mv(c);return Promise.resolve(_)}var Jb=new lr("AllowMultipleToken"),K1=(0,Z.Z)(function i(o,c){(0,A.Z)(this,i),this.name=o,this.token=c});function $1(i){if(Cu&&!Cu.destroyed&&!Cu.injector.get(Jb,!1))throw new Ie(400,"");Cu=i.get(zb);var c=i.get(Nb,null);return c&&c.forEach(function(_){return _()}),Cu}function Qb(i,o){var c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],_="Platform: ".concat(o),C=new lr(_);return function(){var w=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],G=Wb();if(!G||G.injector.get(Jb,!1))if(i)i(c.concat(w).concat({provide:C,useValue:!0}));else{var fe=c.concat(w).concat({provide:C,useValue:!0},{provide:Xu,useValue:"platform"});$1(Vo.create({providers:fe,name:_}))}return X1()}}function X1(i){var o=Wb();if(!o)throw new Ie(401,"");return o}function Wb(){return Cu&&!Cu.destroyed?Cu:null}var zb=function(){var i=function(){function o(c){(0,A.Z)(this,o),this._injector=c,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return(0,Z.Z)(o,[{key:"bootstrapModuleFactory",value:function(_,C){var w=this,mt=function eM(i,o){return"noop"===i?new J1:("zone.js"===i?void 0:i)||new nd({enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:!!(null==o?void 0:o.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==o?void 0:o.ngZoneRunCoalescing)})}(C?C.ngZone:void 0,{ngZoneEventCoalescing:C&&C.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:C&&C.ngZoneRunCoalescing||!1}),Zt=[{provide:nd,useValue:mt}];return mt.run(function(){var Kt=Vo.create({providers:Zt,parent:w.injector,name:_.moduleType.name}),an=_.create(Kt),mn=an.injector.get(du,null);if(!mn)throw new Ie(402,"");return mt.runOutsideAngular(function(){var Kn=mt.onError.subscribe({next:function(xi){mn.handleError(xi)}});an.onDestroy(function(){Rv(w._modules,an),Kn.unsubscribe()})}),function tM(i,o,c){try{var _=c();return I_(_)?_.catch(function(C){throw o.runOutsideAngular(function(){return i.handleError(C)}),C}):_}catch(C){throw o.runOutsideAngular(function(){return i.handleError(C)}),C}}(mn,mt,function(){var Kn=an.injector.get(g_);return Kn.runInitializers(),Kn.donePromise.then(function(){return function E0(i){Nt(i,"Expected localeId to be defined"),"string"==typeof i&&i.toLowerCase().replace(/_/g,"-")}(an.injector.get(jg,Ig)||Ig),w._moduleDoBootstrap(an),an})})})}},{key:"bootstrapModule",value:function(_){var C=this,w=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],G=Gb({},w);return z1(0,0,_).then(function(fe){return C.bootstrapModuleFactory(fe,G)})}},{key:"_moduleDoBootstrap",value:function(_){var C=_.injector.get($_);if(_._bootstrapComponents.length>0)_._bootstrapComponents.forEach(function(G){return C.bootstrap(G)});else{if(!_.instance.ngDoBootstrap)throw new Ie(403,"");_.instance.ngDoBootstrap(C)}this._modules.push(_)}},{key:"onDestroy",value:function(_){this._destroyListeners.push(_)}},{key:"injector",get:function(){return this._injector}},{key:"destroy",value:function(){if(this._destroyed)throw new Ie(404,"");this._modules.slice().forEach(function(C){return C.destroy()}),this._destroyListeners.forEach(function(C){return C()}),this._destroyed=!0}},{key:"destroyed",get:function(){return this._destroyed}}]),o}();return i.\u0275fac=function(c){return new(c||i)(ar(Vo))},i.\u0275prov=ut({token:i,factory:i.\u0275fac}),i}();function Gb(i,o){return Array.isArray(o)?o.reduce(Gb,i):Object.assign(Object.assign({},i),o)}var $_=function(){var i=function(){function o(c,_,C,w,G){var fe=this;(0,A.Z)(this,o),this._zone=c,this._injector=_,this._exceptionHandler=C,this._componentFactoryResolver=w,this._initStatus=G,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:function(){fe._zone.run(function(){fe.tick()})}});var Oe=new H.y(function(Zt){fe._stable=fe._zone.isStable&&!fe._zone.hasPendingMacrotasks&&!fe._zone.hasPendingMicrotasks,fe._zone.runOutsideAngular(function(){Zt.next(fe._stable),Zt.complete()})}),mt=new H.y(function(Zt){var Kt;fe._zone.runOutsideAngular(function(){Kt=fe._zone.onStable.subscribe(function(){nd.assertNotInAngularZone(),Iv(function(){!fe._stable&&!fe._zone.hasPendingMacrotasks&&!fe._zone.hasPendingMicrotasks&&(fe._stable=!0,Zt.next(!0))})})});var an=fe._zone.onUnstable.subscribe(function(){nd.assertInAngularZone(),fe._stable&&(fe._stable=!1,fe._zone.runOutsideAngular(function(){Zt.next(!1)}))});return function(){Kt.unsubscribe(),an.unsubscribe()}});this.isStable=(0,V.T)(Oe,mt.pipe((0,ue.B)()))}return(0,Z.Z)(o,[{key:"bootstrap",value:function(_,C){var fe,w=this;if(!this._initStatus.done)throw new Ie(405,"");fe=_ instanceof Ly?_:this._componentFactoryResolver.resolveComponentFactory(_),this.componentTypes.push(fe.componentType);var Oe=function G1(i){return i.isBoundToModule}(fe)?void 0:this._injector.get(m_),Zt=fe.create(Vo.NULL,[],C||fe.selector,Oe),Kt=Zt.location.nativeElement,an=Zt.injector.get(Hb,null),mn=an&&Zt.injector.get(jb);return an&&mn&&mn.registerApplication(Kt,an),Zt.onDestroy(function(){w.detachView(Zt.hostView),Rv(w.components,Zt),mn&&mn.unregisterApplication(Kt)}),this._loadComponent(Zt),Zt}},{key:"tick",value:function(){var _=this;if(this._runningTick)throw new Ie(101,"");try{this._runningTick=!0;var G,w=(0,I.Z)(this._views);try{for(w.s();!(G=w.n()).done;)G.value.detectChanges()}catch(Kt){w.e(Kt)}finally{w.f()}}catch(Kt){this._zone.runOutsideAngular(function(){return _._exceptionHandler.handleError(Kt)})}finally{this._runningTick=!1}}},{key:"attachView",value:function(_){var C=_;this._views.push(C),C.attachToAppRef(this)}},{key:"detachView",value:function(_){var C=_;Rv(this._views,C),C.detachFromAppRef()}},{key:"_loadComponent",value:function(_){this.attachView(_.hostView),this.tick(),this.components.push(_),this._injector.get(Ub,[]).concat(this._bootstrapListeners).forEach(function(w){return w(_)})}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach(function(_){return _.destroy()}),this._onMicrotaskEmptySubscription.unsubscribe()}},{key:"viewCount",get:function(){return this._views.length}}]),o}();return i.\u0275fac=function(c){return new(c||i)(ar(nd),ar(Vo),ar(du),ar(j_),ar(g_))},i.\u0275prov=ut({token:i,factory:i.\u0275fac}),i}();function Rv(i,o){var c=i.indexOf(o);c>-1&&i.splice(c,1)}function iM(){false}var t0=function(){var i=(0,Z.Z)(function o(){(0,A.Z)(this,o)});return i.__NG_ELEMENT_ID__=aM,i}();function aM(i){return function rM(i,o,c){if(Pr(i)&&!c){var _=ra(i.index,o);return new Q_(_,_)}return 47&i.type?new Q_(o[16],o):null}(qa(),Qn(),16==(16&i))}var oM=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(){return(0,A.Z)(this,c),o.apply(this,arguments)}return(0,Z.Z)(c)}(t0),sM=function(i){(0,N.Z)(c,i);var o=(0,E.Z)(c);function c(){return(0,A.Z)(this,c),o.apply(this,arguments)}return(0,Z.Z)(c)}(oM),r0=function(){function i(){(0,A.Z)(this,i)}return(0,Z.Z)(i,[{key:"supports",value:function(c){return Ui(c)}},{key:"create",value:function(c){return new dM(c)}}]),i}(),uM=function(o,c){return c},dM=function(){function i(o){(0,A.Z)(this,i),this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=o||uM}return(0,Z.Z)(i,[{key:"forEachItem",value:function(c){var _;for(_=this._itHead;null!==_;_=_._next)c(_)}},{key:"forEachOperation",value:function(c){for(var _=this._itHead,C=this._removalsHead,w=0,G=null;_||C;){var fe=!C||_&&_.currentIndexae?{max:{max:ae,actual:de.value}}:null}}(ye)}},{key:"required",value:function(ye){return Y(ye)}},{key:"requiredTrue",value:function(ye){return se(ye)}},{key:"email",value:function(ye){return function X(ae){return ce(ae.value)||ue.test(ae.value)?null:{email:!0}}(ye)}},{key:"minLength",value:function(ye){return function ne(ae){return function(de){return ce(de.value)||!ie(de.value)?null:de.value.lengthae?{maxlength:{requiredLength:ae,actualLength:de.value.length}}:null}}(ye)}},{key:"pattern",value:function(ye){return function Re(ae){return ae?("string"==typeof ae?(ye="","^"!==ae.charAt(0)&&(ye+="^"),ye+=ae,"$"!==ae.charAt(ae.length-1)&&(ye+="$"),de=new RegExp(ye)):(ye=ae.toString(),de=ae),function(Be){if(ce(Be.value))return null;var nt=Be.value;return de.test(nt)?null:{pattern:{requiredPattern:ye,actualValue:nt}}}):Ie;var de,ye}(ye)}},{key:"nullValidator",value:function(ye){return null}},{key:"compose",value:function(ye){return Rt(ye)}},{key:"composeAsync",value:function(ye){return Qe(ye)}}]),ae}();function Y(ae){return ce(ae.value)?{required:!0}:null}function se(ae){return!0===ae.value?null:{required:!0}}function Ie(ae){return null}function Ee(ae){return null!=ae}function ge(ae){var de=(0,f.QGY)(ae)?(0,B.D)(ae):ae;return(0,f.CqO)(de),de}function _t(ae){var de={};return ae.forEach(function(ye){de=null!=ye?Object.assign(Object.assign({},de),ye):de}),0===Object.keys(de).length?null:de}function wt(ae,de){return de.map(function(ye){return ye(ae)})}function Lt(ae){return ae.map(function(de){return function qt(ae){return!ae.validate}(de)?de:function(ye){return de.validate(ye)}})}function Rt(ae){if(!ae)return null;var de=ae.filter(Ee);return 0==de.length?null:function(ye){return _t(wt(ye,de))}}function it(ae){return null!=ae?Rt(Lt(ae)):null}function Qe(ae){if(!ae)return null;var de=ae.filter(Ee);return 0==de.length?null:function(ye){var Be=wt(ye,de).map(ge);return(0,I.D)(Be).pipe((0,v.U)(_t))}}function ot(ae){return null!=ae?Qe(Lt(ae)):null}function tt(ae,de){return null===ae?[de]:Array.isArray(ae)?[].concat((0,e.Z)(ae),[de]):[ae,de]}function xe(ae){return ae._rawValidators}function $e(ae){return ae._rawAsyncValidators}function Ge(ae){return ae?Array.isArray(ae)?ae:[ae]:[]}function ct(ae,de){return Array.isArray(ae)?ae.includes(de):ae===de}function Xe(ae,de){var ye=Ge(de);return Ge(ae).forEach(function(nt){ct(ye,nt)||ye.push(nt)}),ye}function Te(ae,de){return Ge(de).filter(function(ye){return!ct(ae,ye)})}var vt=function(){function ae(){(0,s.Z)(this,ae),this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}return(0,h.Z)(ae,[{key:"value",get:function(){return this.control?this.control.value:null}},{key:"valid",get:function(){return this.control?this.control.valid:null}},{key:"invalid",get:function(){return this.control?this.control.invalid:null}},{key:"pending",get:function(){return this.control?this.control.pending:null}},{key:"disabled",get:function(){return this.control?this.control.disabled:null}},{key:"enabled",get:function(){return this.control?this.control.enabled:null}},{key:"errors",get:function(){return this.control?this.control.errors:null}},{key:"pristine",get:function(){return this.control?this.control.pristine:null}},{key:"dirty",get:function(){return this.control?this.control.dirty:null}},{key:"touched",get:function(){return this.control?this.control.touched:null}},{key:"status",get:function(){return this.control?this.control.status:null}},{key:"untouched",get:function(){return this.control?this.control.untouched:null}},{key:"statusChanges",get:function(){return this.control?this.control.statusChanges:null}},{key:"valueChanges",get:function(){return this.control?this.control.valueChanges:null}},{key:"path",get:function(){return null}},{key:"_setValidators",value:function(ye){this._rawValidators=ye||[],this._composedValidatorFn=it(this._rawValidators)}},{key:"_setAsyncValidators",value:function(ye){this._rawAsyncValidators=ye||[],this._composedAsyncValidatorFn=ot(this._rawAsyncValidators)}},{key:"validator",get:function(){return this._composedValidatorFn||null}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn||null}},{key:"_registerOnDestroy",value:function(ye){this._onDestroyCallbacks.push(ye)}},{key:"_invokeOnDestroyCallbacks",value:function(){this._onDestroyCallbacks.forEach(function(ye){return ye()}),this._onDestroyCallbacks=[]}},{key:"reset",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.control&&this.control.reset(ye)}},{key:"hasError",value:function(ye,Be){return!!this.control&&this.control.hasError(ye,Be)}},{key:"getError",value:function(ye,Be){return this.control?this.control.getError(ye,Be):null}}]),ae}(),qe=function(ae){(0,p.Z)(ye,ae);var de=(0,d.Z)(ye);function ye(){var Be;return(0,s.Z)(this,ye),(Be=de.apply(this,arguments))._parent=null,Be.name=null,Be.valueAccessor=null,Be}return(0,h.Z)(ye)}(vt),je=function(ae){(0,p.Z)(ye,ae);var de=(0,d.Z)(ye);function ye(){return(0,s.Z)(this,ye),de.apply(this,arguments)}return(0,h.Z)(ye,[{key:"formDirective",get:function(){return null}},{key:"path",get:function(){return null}}]),ye}(vt),Nt=function(){function ae(de){(0,s.Z)(this,ae),this._cd=de}return(0,h.Z)(ae,[{key:"is",value:function(ye){var Be,nt,Dt;return"submitted"===ye?!!(null===(Be=this._cd)||void 0===Be?void 0:Be.submitted):!!(null===(Dt=null===(nt=this._cd)||void 0===nt?void 0:nt.control)||void 0===Dt?void 0:Dt[ye])}}]),ae}(),St=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(nt){return(0,s.Z)(this,Be),ye.call(this,nt)}return(0,h.Z)(Be)}(Nt);return ae.\u0275fac=function(ye){return new(ye||ae)(f.Y36(qe,2))},ae.\u0275dir=f.lG2({type:ae,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(ye,Be){2&ye&&f.ekj("ng-untouched",Be.is("untouched"))("ng-touched",Be.is("touched"))("ng-pristine",Be.is("pristine"))("ng-dirty",Be.is("dirty"))("ng-valid",Be.is("valid"))("ng-invalid",Be.is("invalid"))("ng-pending",Be.is("pending"))},features:[f.qOj]}),ae}(),Pt=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(nt){return(0,s.Z)(this,Be),ye.call(this,nt)}return(0,h.Z)(Be)}(Nt);return ae.\u0275fac=function(ye){return new(ye||ae)(f.Y36(je,10))},ae.\u0275dir=f.lG2({type:ae,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(ye,Be){2&ye&&f.ekj("ng-untouched",Be.is("untouched"))("ng-touched",Be.is("touched"))("ng-pristine",Be.is("pristine"))("ng-dirty",Be.is("dirty"))("ng-valid",Be.is("valid"))("ng-invalid",Be.is("invalid"))("ng-pending",Be.is("pending"))("ng-submitted",Be.is("submitted"))},features:[f.qOj]}),ae}();function si(ae,de){return[].concat((0,e.Z)(de.path),[ae])}function fi(ae,de){Ue(ae,de),de.valueAccessor.writeValue(ae.value),function De(ae,de){de.valueAccessor.registerOnChange(function(ye){ae._pendingValue=ye,ae._pendingChange=!0,ae._pendingDirty=!0,"change"===ae.updateOn&&Je(ae,de)})}(ae,de),function Ve(ae,de){var ye=function(nt,Dt){de.valueAccessor.writeValue(nt),Dt&&de.viewToModelUpdate(nt)};ae.registerOnChange(ye),de._registerOnDestroy(function(){ae._unregisterOnChange(ye)})}(ae,de),function Ze(ae,de){de.valueAccessor.registerOnTouched(function(){ae._pendingTouched=!0,"blur"===ae.updateOn&&ae._pendingChange&&Je(ae,de),"submit"!==ae.updateOn&&ae.markAsTouched()})}(ae,de),function jt(ae,de){if(de.valueAccessor.setDisabledState){var ye=function(nt){de.valueAccessor.setDisabledState(nt)};ae.registerOnDisabledChange(ye),de._registerOnDestroy(function(){ae._unregisterOnDisabledChange(ye)})}}(ae,de)}function rn(ae,de){var Be=function(){};de.valueAccessor&&(de.valueAccessor.registerOnChange(Be),de.valueAccessor.registerOnTouched(Be)),et(ae,de),ae&&(de._invokeOnDestroyCallbacks(),ae._registerOnCollectionChange(function(){}))}function sn(ae,de){ae.forEach(function(ye){ye.registerOnValidatorChange&&ye.registerOnValidatorChange(de)})}function Ue(ae,de){var ye=xe(ae);null!==de.validator?ae.setValidators(tt(ye,de.validator)):"function"==typeof ye&&ae.setValidators([ye]);var Be=$e(ae);null!==de.asyncValidator?ae.setAsyncValidators(tt(Be,de.asyncValidator)):"function"==typeof Be&&ae.setAsyncValidators([Be]);var nt=function(){return ae.updateValueAndValidity()};sn(de._rawValidators,nt),sn(de._rawAsyncValidators,nt)}function et(ae,de){var ye=!1;if(null!==ae){if(null!==de.validator){var Be=xe(ae);if(Array.isArray(Be)&&Be.length>0){var nt=Be.filter(function(ni){return ni!==de.validator});nt.length!==Be.length&&(ye=!0,ae.setValidators(nt))}}if(null!==de.asyncValidator){var Dt=$e(ae);if(Array.isArray(Dt)&&Dt.length>0){var cn=Dt.filter(function(ni){return ni!==de.asyncValidator});cn.length!==Dt.length&&(ye=!0,ae.setAsyncValidators(cn))}}}var kn=function(){};return sn(de._rawValidators,kn),sn(de._rawAsyncValidators,kn),ye}function Je(ae,de){ae._pendingDirty&&ae.markAsDirty(),ae.setValue(ae._pendingValue,{emitModelToViewChange:!1}),de.viewToModelUpdate(ae._pendingValue),ae._pendingChange=!1}function pt(ae,de){Ue(ae,de)}function zt(ae,de){if(!ae.hasOwnProperty("model"))return!1;var ye=ae.model;return!!ye.isFirstChange()||!Object.is(de,ye.currentValue)}function tn(ae,de){ae._syncPendingControls(),de.forEach(function(ye){var Be=ye.control;"submit"===Be.updateOn&&Be._pendingChange&&(ye.viewToModelUpdate(Be._pendingValue),Be._pendingChange=!1)})}function ln(ae,de){if(!de)return null;Array.isArray(de);var ye=void 0,Be=void 0,nt=void 0;return de.forEach(function(Dt){Dt.constructor===q?ye=Dt:function un(ae){return Object.getPrototypeOf(ae.constructor)===Q}(Dt)?Be=Dt:nt=Dt}),nt||Be||ye||null}function gn(ae,de){var ye=ae.indexOf(de);ye>-1&&ae.splice(ye,1)}var ai="VALID",gi="INVALID",Si="PENDING",Bi="DISABLED";function Ea(ae){return(da(ae)?ae.validators:ae)||null}function ea(ae){return Array.isArray(ae)?it(ae):ae||null}function ja(ae,de){return(da(de)?de.asyncValidators:ae)||null}function tr(ae){return Array.isArray(ae)?ot(ae):ae||null}function da(ae){return null!=ae&&!Array.isArray(ae)&&"object"==typeof ae}var Na=function(de){return de instanceof Jt},ta=function(de){return de instanceof vn},fn=function(de){return de instanceof Vn};function yn(ae){return Na(ae)?ae.value:ae.getRawValue()}function Ct(ae,de){var ye=ta(ae),Be=ae.controls;if(!(ye?Object.keys(Be):Be).length)throw new f.vHH(1e3,"");if(!Be[de])throw new f.vHH(1001,"")}function Pe(ae,de){ta(ae),ae._forEachChild(function(Be,nt){if(void 0===de[nt])throw new f.vHH(1002,"")})}var It=function(){function ae(de,ye){(0,s.Z)(this,ae),this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=function(){},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=de,this._rawAsyncValidators=ye,this._composedValidatorFn=ea(this._rawValidators),this._composedAsyncValidatorFn=tr(this._rawAsyncValidators)}return(0,h.Z)(ae,[{key:"validator",get:function(){return this._composedValidatorFn},set:function(ye){this._rawValidators=this._composedValidatorFn=ye}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn},set:function(ye){this._rawAsyncValidators=this._composedAsyncValidatorFn=ye}},{key:"parent",get:function(){return this._parent}},{key:"valid",get:function(){return this.status===ai}},{key:"invalid",get:function(){return this.status===gi}},{key:"pending",get:function(){return this.status==Si}},{key:"disabled",get:function(){return this.status===Bi}},{key:"enabled",get:function(){return this.status!==Bi}},{key:"dirty",get:function(){return!this.pristine}},{key:"untouched",get:function(){return!this.touched}},{key:"updateOn",get:function(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}},{key:"setValidators",value:function(ye){this._rawValidators=ye,this._composedValidatorFn=ea(ye)}},{key:"setAsyncValidators",value:function(ye){this._rawAsyncValidators=ye,this._composedAsyncValidatorFn=tr(ye)}},{key:"addValidators",value:function(ye){this.setValidators(Xe(ye,this._rawValidators))}},{key:"addAsyncValidators",value:function(ye){this.setAsyncValidators(Xe(ye,this._rawAsyncValidators))}},{key:"removeValidators",value:function(ye){this.setValidators(Te(ye,this._rawValidators))}},{key:"removeAsyncValidators",value:function(ye){this.setAsyncValidators(Te(ye,this._rawAsyncValidators))}},{key:"hasValidator",value:function(ye){return ct(this._rawValidators,ye)}},{key:"hasAsyncValidator",value:function(ye){return ct(this._rawAsyncValidators,ye)}},{key:"clearValidators",value:function(){this.validator=null}},{key:"clearAsyncValidators",value:function(){this.asyncValidator=null}},{key:"markAsTouched",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!0,this._parent&&!ye.onlySelf&&this._parent.markAsTouched(ye)}},{key:"markAllAsTouched",value:function(){this.markAsTouched({onlySelf:!0}),this._forEachChild(function(ye){return ye.markAllAsTouched()})}},{key:"markAsUntouched",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!1,this._pendingTouched=!1,this._forEachChild(function(Be){Be.markAsUntouched({onlySelf:!0})}),this._parent&&!ye.onlySelf&&this._parent._updateTouched(ye)}},{key:"markAsDirty",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!1,this._parent&&!ye.onlySelf&&this._parent.markAsDirty(ye)}},{key:"markAsPristine",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!0,this._pendingDirty=!1,this._forEachChild(function(Be){Be.markAsPristine({onlySelf:!0})}),this._parent&&!ye.onlySelf&&this._parent._updatePristine(ye)}},{key:"markAsPending",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.status=Si,!1!==ye.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!ye.onlySelf&&this._parent.markAsPending(ye)}},{key:"disable",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Be=this._parentMarkedDirty(ye.onlySelf);this.status=Bi,this.errors=null,this._forEachChild(function(nt){nt.disable(Object.assign(Object.assign({},ye),{onlySelf:!0}))}),this._updateValue(),!1!==ye.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},ye),{skipPristineCheck:Be})),this._onDisabledChange.forEach(function(nt){return nt(!0)})}},{key:"enable",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Be=this._parentMarkedDirty(ye.onlySelf);this.status=ai,this._forEachChild(function(nt){nt.enable(Object.assign(Object.assign({},ye),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:ye.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},ye),{skipPristineCheck:Be})),this._onDisabledChange.forEach(function(nt){return nt(!1)})}},{key:"_updateAncestors",value:function(ye){this._parent&&!ye.onlySelf&&(this._parent.updateValueAndValidity(ye),ye.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}},{key:"setParent",value:function(ye){this._parent=ye}},{key:"updateValueAndValidity",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ai||this.status===Si)&&this._runAsyncValidator(ye.emitEvent)),!1!==ye.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!ye.onlySelf&&this._parent.updateValueAndValidity(ye)}},{key:"_updateTreeValidity",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{emitEvent:!0};this._forEachChild(function(Be){return Be._updateTreeValidity(ye)}),this.updateValueAndValidity({onlySelf:!0,emitEvent:ye.emitEvent})}},{key:"_setInitialStatus",value:function(){this.status=this._allControlsDisabled()?Bi:ai}},{key:"_runValidator",value:function(){return this.validator?this.validator(this):null}},{key:"_runAsyncValidator",value:function(ye){var Be=this;if(this.asyncValidator){this.status=Si,this._hasOwnPendingAsyncValidator=!0;var nt=ge(this.asyncValidator(this));this._asyncValidationSubscription=nt.subscribe(function(Dt){Be._hasOwnPendingAsyncValidator=!1,Be.setErrors(Dt,{emitEvent:ye})})}}},{key:"_cancelExistingSubscription",value:function(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}},{key:"setErrors",value:function(ye){var Be=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.errors=ye,this._updateControlsErrors(!1!==Be.emitEvent)}},{key:"get",value:function(ye){return function Oa(ae,de,ye){if(null==de||(Array.isArray(de)||(de=de.split(ye)),Array.isArray(de)&&0===de.length))return null;var Be=ae;return de.forEach(function(nt){Be=ta(Be)?Be.controls.hasOwnProperty(nt)?Be.controls[nt]:null:fn(Be)&&Be.at(nt)||null}),Be}(this,ye,".")}},{key:"getError",value:function(ye,Be){var nt=Be?this.get(Be):this;return nt&&nt.errors?nt.errors[ye]:null}},{key:"hasError",value:function(ye,Be){return!!this.getError(ye,Be)}},{key:"root",get:function(){for(var ye=this;ye._parent;)ye=ye._parent;return ye}},{key:"_updateControlsErrors",value:function(ye){this.status=this._calculateStatus(),ye&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(ye)}},{key:"_initObservables",value:function(){this.valueChanges=new f.vpe,this.statusChanges=new f.vpe}},{key:"_calculateStatus",value:function(){return this._allControlsDisabled()?Bi:this.errors?gi:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Si)?Si:this._anyControlsHaveStatus(gi)?gi:ai}},{key:"_anyControlsHaveStatus",value:function(ye){return this._anyControls(function(Be){return Be.status===ye})}},{key:"_anyControlsDirty",value:function(){return this._anyControls(function(ye){return ye.dirty})}},{key:"_anyControlsTouched",value:function(){return this._anyControls(function(ye){return ye.touched})}},{key:"_updatePristine",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!this._anyControlsDirty(),this._parent&&!ye.onlySelf&&this._parent._updatePristine(ye)}},{key:"_updateTouched",value:function(){var ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=this._anyControlsTouched(),this._parent&&!ye.onlySelf&&this._parent._updateTouched(ye)}},{key:"_isBoxedValue",value:function(ye){return"object"==typeof ye&&null!==ye&&2===Object.keys(ye).length&&"value"in ye&&"disabled"in ye}},{key:"_registerOnCollectionChange",value:function(ye){this._onCollectionChange=ye}},{key:"_setUpdateStrategy",value:function(ye){da(ye)&&null!=ye.updateOn&&(this._updateOn=ye.updateOn)}},{key:"_parentMarkedDirty",value:function(ye){return!ye&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}]),ae}(),Jt=function(ae){(0,p.Z)(ye,ae);var de=(0,d.Z)(ye);function ye(){var Be,nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,Dt=arguments.length>1?arguments[1]:void 0,cn=arguments.length>2?arguments[2]:void 0;return(0,s.Z)(this,ye),(Be=de.call(this,Ea(Dt),ja(cn,Dt))).defaultValue=null,Be._onChange=[],Be._pendingChange=!1,Be._applyFormState(nt),Be._setUpdateStrategy(Dt),Be._initObservables(),Be.updateValueAndValidity({onlySelf:!0,emitEvent:!!Be.asyncValidator}),da(Dt)&&Dt.initialValueIsDefault&&(Be.defaultValue=Be._isBoxedValue(nt)?nt.value:nt),Be}return(0,h.Z)(ye,[{key:"setValue",value:function(nt){var Dt=this,cn=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.value=this._pendingValue=nt,this._onChange.length&&!1!==cn.emitModelToViewChange&&this._onChange.forEach(function(kn){return kn(Dt.value,!1!==cn.emitViewToModelChange)}),this.updateValueAndValidity(cn)}},{key:"patchValue",value:function(nt){var Dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.setValue(nt,Dt)}},{key:"reset",value:function(){var nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.defaultValue,Dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._applyFormState(nt),this.markAsPristine(Dt),this.markAsUntouched(Dt),this.setValue(this.value,Dt),this._pendingChange=!1}},{key:"_updateValue",value:function(){}},{key:"_anyControls",value:function(nt){return!1}},{key:"_allControlsDisabled",value:function(){return this.disabled}},{key:"registerOnChange",value:function(nt){this._onChange.push(nt)}},{key:"_unregisterOnChange",value:function(nt){gn(this._onChange,nt)}},{key:"registerOnDisabledChange",value:function(nt){this._onDisabledChange.push(nt)}},{key:"_unregisterOnDisabledChange",value:function(nt){gn(this._onDisabledChange,nt)}},{key:"_forEachChild",value:function(nt){}},{key:"_syncPendingControls",value:function(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}},{key:"_applyFormState",value:function(nt){this._isBoxedValue(nt)?(this.value=this._pendingValue=nt.value,nt.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=nt}}]),ye}(It),vn=function(ae){(0,p.Z)(ye,ae);var de=(0,d.Z)(ye);function ye(Be,nt,Dt){var cn;return(0,s.Z)(this,ye),(cn=de.call(this,Ea(nt),ja(Dt,nt))).controls=Be,cn._initObservables(),cn._setUpdateStrategy(nt),cn._setUpControls(),cn.updateValueAndValidity({onlySelf:!0,emitEvent:!!cn.asyncValidator}),cn}return(0,h.Z)(ye,[{key:"registerControl",value:function(nt,Dt){return this.controls[nt]?this.controls[nt]:(this.controls[nt]=Dt,Dt.setParent(this),Dt._registerOnCollectionChange(this._onCollectionChange),Dt)}},{key:"addControl",value:function(nt,Dt){var cn=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.registerControl(nt,Dt),this.updateValueAndValidity({emitEvent:cn.emitEvent}),this._onCollectionChange()}},{key:"removeControl",value:function(nt){var Dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[nt]&&this.controls[nt]._registerOnCollectionChange(function(){}),delete this.controls[nt],this.updateValueAndValidity({emitEvent:Dt.emitEvent}),this._onCollectionChange()}},{key:"setControl",value:function(nt,Dt){var cn=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[nt]&&this.controls[nt]._registerOnCollectionChange(function(){}),delete this.controls[nt],Dt&&this.registerControl(nt,Dt),this.updateValueAndValidity({emitEvent:cn.emitEvent}),this._onCollectionChange()}},{key:"contains",value:function(nt){return this.controls.hasOwnProperty(nt)&&this.controls[nt].enabled}},{key:"setValue",value:function(nt){var Dt=this,cn=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Pe(this,nt),Object.keys(nt).forEach(function(kn){Ct(Dt,kn),Dt.controls[kn].setValue(nt[kn],{onlySelf:!0,emitEvent:cn.emitEvent})}),this.updateValueAndValidity(cn)}},{key:"patchValue",value:function(nt){var Dt=this,cn=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=nt&&(Object.keys(nt).forEach(function(kn){Dt.controls[kn]&&Dt.controls[kn].patchValue(nt[kn],{onlySelf:!0,emitEvent:cn.emitEvent})}),this.updateValueAndValidity(cn))}},{key:"reset",value:function(){var nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(cn,kn){cn.reset(nt[kn],{onlySelf:!0,emitEvent:Dt.emitEvent})}),this._updatePristine(Dt),this._updateTouched(Dt),this.updateValueAndValidity(Dt)}},{key:"getRawValue",value:function(){return this._reduceChildren({},function(nt,Dt,cn){return nt[cn]=yn(Dt),nt})}},{key:"_syncPendingControls",value:function(){var nt=this._reduceChildren(!1,function(Dt,cn){return!!cn._syncPendingControls()||Dt});return nt&&this.updateValueAndValidity({onlySelf:!0}),nt}},{key:"_forEachChild",value:function(nt){var Dt=this;Object.keys(this.controls).forEach(function(cn){var kn=Dt.controls[cn];kn&&nt(kn,cn)})}},{key:"_setUpControls",value:function(){var nt=this;this._forEachChild(function(Dt){Dt.setParent(nt),Dt._registerOnCollectionChange(nt._onCollectionChange)})}},{key:"_updateValue",value:function(){this.value=this._reduceValue()}},{key:"_anyControls",value:function(nt){for(var Dt=0,cn=Object.keys(this.controls);Dt0||this.disabled}}]),ye}(It),Vn=function(ae){(0,p.Z)(ye,ae);var de=(0,d.Z)(ye);function ye(Be,nt,Dt){var cn;return(0,s.Z)(this,ye),(cn=de.call(this,Ea(nt),ja(Dt,nt))).controls=Be,cn._initObservables(),cn._setUpdateStrategy(nt),cn._setUpControls(),cn.updateValueAndValidity({onlySelf:!0,emitEvent:!!cn.asyncValidator}),cn}return(0,h.Z)(ye,[{key:"at",value:function(nt){return this.controls[nt]}},{key:"push",value:function(nt){var Dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls.push(nt),this._registerControl(nt),this.updateValueAndValidity({emitEvent:Dt.emitEvent}),this._onCollectionChange()}},{key:"insert",value:function(nt,Dt){var cn=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls.splice(nt,0,Dt),this._registerControl(Dt),this.updateValueAndValidity({emitEvent:cn.emitEvent})}},{key:"removeAt",value:function(nt){var Dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[nt]&&this.controls[nt]._registerOnCollectionChange(function(){}),this.controls.splice(nt,1),this.updateValueAndValidity({emitEvent:Dt.emitEvent})}},{key:"setControl",value:function(nt,Dt){var cn=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[nt]&&this.controls[nt]._registerOnCollectionChange(function(){}),this.controls.splice(nt,1),Dt&&(this.controls.splice(nt,0,Dt),this._registerControl(Dt)),this.updateValueAndValidity({emitEvent:cn.emitEvent}),this._onCollectionChange()}},{key:"length",get:function(){return this.controls.length}},{key:"setValue",value:function(nt){var Dt=this,cn=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Pe(this,nt),nt.forEach(function(kn,ni){Ct(Dt,ni),Dt.at(ni).setValue(kn,{onlySelf:!0,emitEvent:cn.emitEvent})}),this.updateValueAndValidity(cn)}},{key:"patchValue",value:function(nt){var Dt=this,cn=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=nt&&(nt.forEach(function(kn,ni){Dt.at(ni)&&Dt.at(ni).patchValue(kn,{onlySelf:!0,emitEvent:cn.emitEvent})}),this.updateValueAndValidity(cn))}},{key:"reset",value:function(){var nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],Dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(cn,kn){cn.reset(nt[kn],{onlySelf:!0,emitEvent:Dt.emitEvent})}),this._updatePristine(Dt),this._updateTouched(Dt),this.updateValueAndValidity(Dt)}},{key:"getRawValue",value:function(){return this.controls.map(function(nt){return yn(nt)})}},{key:"clear",value:function(){var nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.controls.length<1||(this._forEachChild(function(Dt){return Dt._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity({emitEvent:nt.emitEvent}))}},{key:"_syncPendingControls",value:function(){var nt=this.controls.reduce(function(Dt,cn){return!!cn._syncPendingControls()||Dt},!1);return nt&&this.updateValueAndValidity({onlySelf:!0}),nt}},{key:"_forEachChild",value:function(nt){this.controls.forEach(function(Dt,cn){nt(Dt,cn)})}},{key:"_updateValue",value:function(){var nt=this;this.value=this.controls.filter(function(Dt){return Dt.enabled||nt.disabled}).map(function(Dt){return Dt.value})}},{key:"_anyControls",value:function(nt){return this.controls.some(function(Dt){return Dt.enabled&&nt(Dt)})}},{key:"_setUpControls",value:function(){var nt=this;this._forEachChild(function(Dt){return nt._registerControl(Dt)})}},{key:"_allControlsDisabled",value:function(){var Dt,nt=(0,t.Z)(this.controls);try{for(nt.s();!(Dt=nt.n()).done;)if(Dt.value.enabled)return!1}catch(kn){nt.e(kn)}finally{nt.f()}return this.controls.length>0||this.disabled}},{key:"_registerControl",value:function(nt){nt.setParent(this),nt._registerOnCollectionChange(this._onCollectionChange)}}]),ye}(It),ui={provide:je,useExisting:(0,f.Gpc)(function(){return Ii})},ki=function(){return Promise.resolve(null)}(),Ii=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(nt,Dt){var cn;return(0,s.Z)(this,Be),(cn=ye.call(this)).submitted=!1,cn._directives=[],cn.ngSubmit=new f.vpe,cn.form=new vn({},it(nt),ot(Dt)),cn}return(0,h.Z)(Be,[{key:"ngAfterViewInit",value:function(){this._setUpdateStrategy()}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"controls",get:function(){return this.form.controls}},{key:"addControl",value:function(Dt){var cn=this;ki.then(function(){var kn=cn._findContainer(Dt.path);Dt.control=kn.registerControl(Dt.name,Dt.control),fi(Dt.control,Dt),Dt.control.updateValueAndValidity({emitEvent:!1}),cn._directives.push(Dt)})}},{key:"getControl",value:function(Dt){return this.form.get(Dt.path)}},{key:"removeControl",value:function(Dt){var cn=this;ki.then(function(){var kn=cn._findContainer(Dt.path);kn&&kn.removeControl(Dt.name),gn(cn._directives,Dt)})}},{key:"addFormGroup",value:function(Dt){var cn=this;ki.then(function(){var kn=cn._findContainer(Dt.path),ni=new vn({});pt(ni,Dt),kn.registerControl(Dt.name,ni),ni.updateValueAndValidity({emitEvent:!1})})}},{key:"removeFormGroup",value:function(Dt){var cn=this;ki.then(function(){var kn=cn._findContainer(Dt.path);kn&&kn.removeControl(Dt.name)})}},{key:"getFormGroup",value:function(Dt){return this.form.get(Dt.path)}},{key:"updateModel",value:function(Dt,cn){var kn=this;ki.then(function(){kn.form.get(Dt.path).setValue(cn)})}},{key:"setValue",value:function(Dt){this.control.setValue(Dt)}},{key:"onSubmit",value:function(Dt){return this.submitted=!0,tn(this.form,this._directives),this.ngSubmit.emit(Dt),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(){var Dt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.form.reset(Dt),this.submitted=!1}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}},{key:"_findContainer",value:function(Dt){return Dt.pop(),Dt.length?this.form.get(Dt):this.form}}]),Be}(je);return ae.\u0275fac=function(ye){return new(ye||ae)(f.Y36(H,10),f.Y36(V,10))},ae.\u0275dir=f.lG2({type:ae,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(ye,Be){1&ye&&f.NdJ("submit",function(Dt){return Be.onSubmit(Dt)})("reset",function(){return Be.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[f._Bn([ui]),f.qOj]}),ae}(),Fi={provide:qe,useExisting:(0,f.Gpc)(function(){return Za})},va=function(){return Promise.resolve(null)}(),Za=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(nt,Dt,cn,kn,ni){var Ti;return(0,s.Z)(this,Be),(Ti=ye.call(this))._changeDetectorRef=ni,Ti.control=new Jt,Ti._registered=!1,Ti.update=new f.vpe,Ti._parent=nt,Ti._setValidators(Dt),Ti._setAsyncValidators(cn),Ti.valueAccessor=ln((0,P.Z)(Ti),kn),Ti}return(0,h.Z)(Be,[{key:"ngOnChanges",value:function(Dt){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in Dt&&this._updateDisabled(Dt),zt(Dt,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeControl(this)}},{key:"path",get:function(){return this._parent?si(this.name,this._parent):[this.name]}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"viewToModelUpdate",value:function(Dt){this.viewModel=Dt,this.update.emit(Dt)}},{key:"_setUpControl",value:function(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}},{key:"_isStandalone",value:function(){return!this._parent||!(!this.options||!this.options.standalone)}},{key:"_setUpStandalone",value:function(){fi(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}},{key:"_checkForErrors",value:function(){this._isStandalone()||this._checkParentType(),this._checkName()}},{key:"_checkParentType",value:function(){}},{key:"_checkName",value:function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}},{key:"_updateValue",value:function(Dt){var cn=this;va.then(function(){var kn;cn.control.setValue(Dt,{emitViewToModelChange:!1}),null===(kn=cn._changeDetectorRef)||void 0===kn||kn.markForCheck()})}},{key:"_updateDisabled",value:function(Dt){var cn=this,kn=Dt.isDisabled.currentValue,ni=""===kn||kn&&"false"!==kn;va.then(function(){var Ti;ni&&!cn.control.disabled?cn.control.disable():!ni&&cn.control.disabled&&cn.control.enable(),null===(Ti=cn._changeDetectorRef)||void 0===Ti||Ti.markForCheck()})}}]),Be}(qe);return ae.\u0275fac=function(ye){return new(ye||ae)(f.Y36(je,9),f.Y36(H,10),f.Y36(V,10),f.Y36(J,10),f.Y36(f.sBO,8))},ae.\u0275dir=f.lG2({type:ae,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[f._Bn([Fi]),f.qOj,f.TTD]}),ae}(),Qt=function(){var ae=(0,h.Z)(function de(){(0,s.Z)(this,de)});return ae.\u0275fac=function(ye){return new(ye||ae)},ae.\u0275dir=f.lG2({type:ae,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),ae}(),Ot={provide:J,useExisting:(0,f.Gpc)(function(){return Xt}),multi:!0},Xt=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(){return(0,s.Z)(this,Be),ye.apply(this,arguments)}return(0,h.Z)(Be,[{key:"writeValue",value:function(Dt){this.setProperty("value",null==Dt?"":Dt)}},{key:"registerOnChange",value:function(Dt){this.onChange=function(cn){Dt(""==cn?null:parseFloat(cn))}}}]),Be}(Q);return ae.\u0275fac=function(){var de;return function(Be){return(de||(de=f.n5z(ae)))(Be||ae)}}(),ae.\u0275dir=f.lG2({type:ae,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(ye,Be){1&ye&&f.NdJ("input",function(Dt){return Be.onChange(Dt.target.value)})("blur",function(){return Be.onTouched()})},features:[f._Bn([Ot]),f.qOj]}),ae}(),Gn=function(){var ae=(0,h.Z)(function de(){(0,s.Z)(this,de)});return ae.\u0275fac=function(ye){return new(ye||ae)},ae.\u0275mod=f.oAB({type:ae}),ae.\u0275inj=f.cJS({}),ae}(),Ja=new f.OlP("NgModelWithFormControlWarning"),ao={provide:qe,useExisting:(0,f.Gpc)(function(){return za})},za=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(nt,Dt,cn,kn){var ni;return(0,s.Z)(this,Be),(ni=ye.call(this))._ngModelWarningConfig=kn,ni.update=new f.vpe,ni._ngModelWarningSent=!1,ni._setValidators(nt),ni._setAsyncValidators(Dt),ni.valueAccessor=ln((0,P.Z)(ni),cn),ni}return(0,h.Z)(Be,[{key:"isDisabled",set:function(Dt){}},{key:"ngOnChanges",value:function(Dt){if(this._isControlChanged(Dt)){var cn=Dt.form.previousValue;cn&&rn(cn,this),fi(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}zt(Dt,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.form&&rn(this.form,this)}},{key:"path",get:function(){return[]}},{key:"control",get:function(){return this.form}},{key:"viewToModelUpdate",value:function(Dt){this.viewModel=Dt,this.update.emit(Dt)}},{key:"_isControlChanged",value:function(Dt){return Dt.hasOwnProperty("form")}}]),Be}(qe);return ae._ngModelWarningSentOnce=!1,ae.\u0275fac=function(ye){return new(ye||ae)(f.Y36(H,10),f.Y36(V,10),f.Y36(J,10),f.Y36(Ja,8))},ae.\u0275dir=f.lG2({type:ae,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[f._Bn([ao]),f.qOj,f.TTD]}),ae}(),fr={provide:je,useExisting:(0,f.Gpc)(function(){return Or})},Or=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(nt,Dt){var cn;return(0,s.Z)(this,Be),(cn=ye.call(this)).validators=nt,cn.asyncValidators=Dt,cn.submitted=!1,cn._onCollectionChange=function(){return cn._updateDomValue()},cn.directives=[],cn.form=null,cn.ngSubmit=new f.vpe,cn._setValidators(nt),cn._setAsyncValidators(Dt),cn}return(0,h.Z)(Be,[{key:"ngOnChanges",value:function(Dt){this._checkFormPresent(),Dt.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}},{key:"ngOnDestroy",value:function(){this.form&&(et(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(function(){}))}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"addControl",value:function(Dt){var cn=this.form.get(Dt.path);return fi(cn,Dt),cn.updateValueAndValidity({emitEvent:!1}),this.directives.push(Dt),cn}},{key:"getControl",value:function(Dt){return this.form.get(Dt.path)}},{key:"removeControl",value:function(Dt){rn(Dt.control||null,Dt),gn(this.directives,Dt)}},{key:"addFormGroup",value:function(Dt){this._setUpFormContainer(Dt)}},{key:"removeFormGroup",value:function(Dt){this._cleanUpFormContainer(Dt)}},{key:"getFormGroup",value:function(Dt){return this.form.get(Dt.path)}},{key:"addFormArray",value:function(Dt){this._setUpFormContainer(Dt)}},{key:"removeFormArray",value:function(Dt){this._cleanUpFormContainer(Dt)}},{key:"getFormArray",value:function(Dt){return this.form.get(Dt.path)}},{key:"updateModel",value:function(Dt,cn){this.form.get(Dt.path).setValue(cn)}},{key:"onSubmit",value:function(Dt){return this.submitted=!0,tn(this.form,this.directives),this.ngSubmit.emit(Dt),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(){var Dt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.form.reset(Dt),this.submitted=!1}},{key:"_updateDomValue",value:function(){var Dt=this;this.directives.forEach(function(cn){var kn=cn.control,ni=Dt.form.get(cn.path);kn!==ni&&(rn(kn||null,cn),Na(ni)&&(fi(ni,cn),cn.control=ni))}),this.form._updateTreeValidity({emitEvent:!1})}},{key:"_setUpFormContainer",value:function(Dt){var cn=this.form.get(Dt.path);pt(cn,Dt),cn.updateValueAndValidity({emitEvent:!1})}},{key:"_cleanUpFormContainer",value:function(Dt){if(this.form){var cn=this.form.get(Dt.path);if(cn){var kn=function kt(ae,de){return et(ae,de)}(cn,Dt);kn&&cn.updateValueAndValidity({emitEvent:!1})}}}},{key:"_updateRegistrations",value:function(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(function(){})}},{key:"_updateValidators",value:function(){Ue(this.form,this),this._oldForm&&et(this._oldForm,this)}},{key:"_checkFormPresent",value:function(){}}]),Be}(je);return ae.\u0275fac=function(ye){return new(ye||ae)(f.Y36(H,10),f.Y36(V,10))},ae.\u0275dir=f.lG2({type:ae,selectors:[["","formGroup",""]],hostBindings:function(ye,Be){1&ye&&f.NdJ("submit",function(Dt){return Be.onSubmit(Dt)})("reset",function(){return Be.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[f._Bn([fr]),f.qOj,f.TTD]}),ae}(),fo={provide:qe,useExisting:(0,f.Gpc)(function(){return eo})},eo=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(nt,Dt,cn,kn,ni){var Ti;return(0,s.Z)(this,Be),(Ti=ye.call(this))._ngModelWarningConfig=ni,Ti._added=!1,Ti.update=new f.vpe,Ti._ngModelWarningSent=!1,Ti._parent=nt,Ti._setValidators(Dt),Ti._setAsyncValidators(cn),Ti.valueAccessor=ln((0,P.Z)(Ti),kn),Ti}return(0,h.Z)(Be,[{key:"isDisabled",set:function(Dt){}},{key:"ngOnChanges",value:function(Dt){this._added||this._setUpControl(),zt(Dt,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeControl(this)}},{key:"viewToModelUpdate",value:function(Dt){this.viewModel=Dt,this.update.emit(Dt)}},{key:"path",get:function(){return si(null==this.name?this.name:this.name.toString(),this._parent)}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"_checkParentType",value:function(){}},{key:"_setUpControl",value:function(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}]),Be}(qe);return ae._ngModelWarningSentOnce=!1,ae.\u0275fac=function(ye){return new(ye||ae)(f.Y36(je,13),f.Y36(H,10),f.Y36(V,10),f.Y36(J,10),f.Y36(Ja,8))},ae.\u0275dir=f.lG2({type:ae,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[f._Bn([fo]),f.qOj,f.TTD]}),ae}();function wr(ae){return null!=ae&&!1!==ae&&"false"!=="".concat(ae)}var Aa=function(){var ae=function(){function de(){(0,s.Z)(this,de),this._validator=Ie}return(0,h.Z)(de,[{key:"ngOnChanges",value:function(Be){if(this.inputName in Be){var nt=this.normalizeInput(Be[this.inputName].currentValue);this._enabled=this.enabled(nt),this._validator=this._enabled?this.createValidator(nt):Ie,this._onChange&&this._onChange()}}},{key:"validate",value:function(Be){return this._validator(Be)}},{key:"registerOnValidatorChange",value:function(Be){this._onChange=Be}},{key:"enabled",value:function(Be){return null!=Be}}]),de}();return ae.\u0275fac=function(ye){return new(ye||ae)},ae.\u0275dir=f.lG2({type:ae,features:[f.TTD]}),ae}(),br={provide:H,useExisting:(0,f.Gpc)(function(){return Tt}),multi:!0},Er={provide:H,useExisting:(0,f.Gpc)(function(){return Ke}),multi:!0},Tt=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(){var nt;return(0,s.Z)(this,Be),(nt=ye.apply(this,arguments)).inputName="required",nt.normalizeInput=function(Dt){return wr(Dt)},nt.createValidator=function(Dt){return Y},nt}return(0,h.Z)(Be,[{key:"enabled",value:function(Dt){return Dt}}]),Be}(Aa);return ae.\u0275fac=function(){var de;return function(Be){return(de||(de=f.n5z(ae)))(Be||ae)}}(),ae.\u0275dir=f.lG2({type:ae,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(ye,Be){2&ye&&f.uIk("required",Be._enabled?"":null)},inputs:{required:"required"},features:[f._Bn([br]),f.qOj]}),ae}(),Ke=function(){var ae=function(de){(0,p.Z)(Be,de);var ye=(0,d.Z)(Be);function Be(){var nt;return(0,s.Z)(this,Be),(nt=ye.apply(this,arguments)).createValidator=function(Dt){return se},nt}return(0,h.Z)(Be)}(Tt);return ae.\u0275fac=function(){var de;return function(Be){return(de||(de=f.n5z(ae)))(Be||ae)}}(),ae.\u0275dir=f.lG2({type:ae,selectors:[["input","type","checkbox","required","","formControlName",""],["input","type","checkbox","required","","formControl",""],["input","type","checkbox","required","","ngModel",""]],hostVars:1,hostBindings:function(ye,Be){2&ye&&f.uIk("required",Be._enabled?"":null)},features:[f._Bn([Er]),f.qOj]}),ae}(),Yn=function(){var ae=(0,h.Z)(function de(){(0,s.Z)(this,de)});return ae.\u0275fac=function(ye){return new(ye||ae)},ae.\u0275mod=f.oAB({type:ae}),ae.\u0275inj=f.cJS({imports:[[Gn]]}),ae}(),Wn=function(){var ae=(0,h.Z)(function de(){(0,s.Z)(this,de)});return ae.\u0275fac=function(ye){return new(ye||ae)},ae.\u0275mod=f.oAB({type:ae}),ae.\u0275inj=f.cJS({imports:[Yn]}),ae}(),st=function(){var ae=function(){function de(){(0,s.Z)(this,de)}return(0,h.Z)(de,null,[{key:"withConfig",value:function(Be){return{ngModule:de,providers:[{provide:Ja,useValue:Be.warnOnNgModelWithFormControl}]}}}]),de}();return ae.\u0275fac=function(ye){return new(ye||ae)},ae.\u0275mod=f.oAB({type:ae}),ae.\u0275inj=f.cJS({imports:[Yn]}),ae}();function $t(ae){return void 0!==ae.asyncValidators||void 0!==ae.validators||void 0!==ae.updateOn}var ze=function(){var ae=function(){function de(){(0,s.Z)(this,de)}return(0,h.Z)(de,[{key:"group",value:function(Be){var nt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,Dt=this._reduceControls(Be),cn=null,kn=null,ni=void 0;return null!=nt&&($t(nt)?(cn=null!=nt.validators?nt.validators:null,kn=null!=nt.asyncValidators?nt.asyncValidators:null,ni=null!=nt.updateOn?nt.updateOn:void 0):(cn=null!=nt.validator?nt.validator:null,kn=null!=nt.asyncValidator?nt.asyncValidator:null)),new vn(Dt,{asyncValidators:kn,updateOn:ni,validators:cn})}},{key:"control",value:function(Be,nt,Dt){return new Jt(Be,nt,Dt)}},{key:"array",value:function(Be,nt,Dt){var cn=this,kn=Be.map(function(ni){return cn._createControl(ni)});return new Vn(kn,nt,Dt)}},{key:"_reduceControls",value:function(Be){var nt=this,Dt={};return Object.keys(Be).forEach(function(cn){Dt[cn]=nt._createControl(Be[cn])}),Dt}},{key:"_createControl",value:function(Be){return Na(Be)||ta(Be)||fn(Be)?Be:Array.isArray(Be)?this.control(Be[0],Be.length>1?Be[1]:null,Be.length>2?Be[2]:null):this.control(Be)}}]),de}();return ae.\u0275fac=function(ye){return new(ye||ae)},ae.\u0275prov=f.Yz7({token:ae,factory:ae.\u0275fac,providedIn:st}),ae}()},43188:function(dt,K,n){"use strict";n.d(K,{XC:function(){return qt},Bb:function(){return ct},ZL:function(){return xe}});var P=n(86170),t=n(24582),e=n(7318),p=n(48047),d=n(78069),s=n(84128),h=n(76484),f=n(76442),T=n(1130),B=n(17714),I=n(50253),v=n(21954),j=n(36646),Q=n(10745),J=n(23280),Z=n(14390),A=n(36362),N=n(66088),E=n(24426),k=n(75939),q=n(24476),ce=n(90587),ie=n(44770),H=n(44874),V=n(32673),ue=n(59295),R=n(60116),r=n(50635),z=n(19337),Y=n(46441),se=n(51588),X=["panel"];function ne(Xe,Te){if(1&Xe&&(f.TgZ(0,"div",0,1),f.Hsn(2),f.qZA()),2&Xe){var vt=Te.id,qe=f.oxw();f.Q6J("id",qe.id)("ngClass",qe._classList),f.uIk("aria-label",qe.ariaLabel||null)("aria-labelledby",qe._getPanelAriaLabelledby(vt))}}var ve=["*"],Re=0,Ie=(0,p.Z)(function Xe(Te,vt){(0,d.Z)(this,Xe),this.source=Te,this.option=vt}),Ee=(0,T.Kr)(function(){return(0,p.Z)(function Xe(){(0,d.Z)(this,Xe)})}()),ge=new f.OlP("mat-autocomplete-default-options",{providedIn:"root",factory:function _t(){return{autoActiveFirstOption:!1}}}),wt=function(){var Xe=function(Te){(0,t.Z)(qe,Te);var vt=(0,e.Z)(qe);function qe(je,Nt,Ft,bt){var St;return(0,d.Z)(this,qe),(St=vt.call(this))._changeDetectorRef=je,St._elementRef=Nt,St._activeOptionChanges=B.w0.EMPTY,St.showPanel=!1,St._isOpen=!1,St.displayWith=null,St.optionSelected=new f.vpe,St.opened=new f.vpe,St.closed=new f.vpe,St.optionActivated=new f.vpe,St._classList={},St.id="mat-autocomplete-".concat(Re++),St.inertGroups=(null==bt?void 0:bt.SAFARI)||!1,St._autoActiveFirstOption=!!Ft.autoActiveFirstOption,St}return(0,p.Z)(qe,[{key:"isOpen",get:function(){return this._isOpen&&this.showPanel}},{key:"autoActiveFirstOption",get:function(){return this._autoActiveFirstOption},set:function(Nt){this._autoActiveFirstOption=(0,h.Ig)(Nt)}},{key:"classList",set:function(Nt){this._classList=Nt&&Nt.length?(0,h.du)(Nt).reduce(function(Ft,bt){return Ft[bt]=!0,Ft},{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}},{key:"ngAfterContentInit",value:function(){var Nt=this;this._keyManager=new s.s1(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(function(Ft){Nt.isOpen&&Nt.optionActivated.emit({source:Nt,option:Nt.options.toArray()[Ft]||null})}),this._setVisibility()}},{key:"ngOnDestroy",value:function(){this._activeOptionChanges.unsubscribe()}},{key:"_setScrollTop",value:function(Nt){this.panel&&(this.panel.nativeElement.scrollTop=Nt)}},{key:"_getScrollTop",value:function(){return this.panel?this.panel.nativeElement.scrollTop:0}},{key:"_setVisibility",value:function(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}},{key:"_emitSelectEvent",value:function(Nt){var Ft=new Ie(this,Nt);this.optionSelected.emit(Ft)}},{key:"_getPanelAriaLabelledby",value:function(Nt){return this.ariaLabel?null:this.ariaLabelledby?(Nt?Nt+" ":"")+this.ariaLabelledby:Nt}},{key:"_setVisibilityClasses",value:function(Nt){Nt[this._visibleClass]=this.showPanel,Nt[this._hiddenClass]=!this.showPanel}}]),qe}(Ee);return Xe.\u0275fac=function(vt){return new(vt||Xe)(f.Y36(f.sBO),f.Y36(f.SBq),f.Y36(ge),f.Y36(Z.t4))},Xe.\u0275dir=f.lG2({type:Xe,viewQuery:function(vt,qe){var je;1&vt&&(f.Gf(f.Rgc,7),f.Gf(X,5)),2&vt&&(f.iGM(je=f.CRH())&&(qe.template=je.first),f.iGM(je=f.CRH())&&(qe.panel=je.first))},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",panelWidth:"panelWidth",classList:["class","classList"]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[f.qOj]}),Xe}(),qt=function(){var Xe=function(Te){(0,t.Z)(qe,Te);var vt=(0,e.Z)(qe);function qe(){var je;return(0,d.Z)(this,qe),(je=vt.apply(this,arguments))._visibleClass="mat-autocomplete-visible",je._hiddenClass="mat-autocomplete-hidden",je}return(0,p.Z)(qe)}(wt);return Xe.\u0275fac=function(){var Te;return function(qe){return(Te||(Te=f.n5z(Xe)))(qe||Xe)}}(),Xe.\u0275cmp=f.Xpm({type:Xe,selectors:[["mat-autocomplete"]],contentQueries:function(vt,qe,je){var Nt;1&vt&&(f.Suo(je,T.K7,5),f.Suo(je,T.ey,5)),2&vt&&(f.iGM(Nt=f.CRH())&&(qe.optionGroups=Nt),f.iGM(Nt=f.CRH())&&(qe.options=Nt))},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[f._Bn([{provide:T.HF,useExisting:Xe}]),f.qOj],ngContentSelectors:ve,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(vt,qe){1&vt&&(f.F$t(),f.YNc(0,ne,3,4,"ng-template"))},directives:[A.mk],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),Xe}(),Lt=new f.OlP("mat-autocomplete-scroll-strategy"),it={provide:Lt,deps:[N.aV],useFactory:function Rt(Xe){return function(){return Xe.scrollStrategies.reposition()}}},Qe={provide:ce.JU,useExisting:(0,f.Gpc)(function(){return xe}),multi:!0},tt=function(){var Xe=function(){function Te(vt,qe,je,Nt,Ft,bt,St,Pt,ut,yt,be){var we=this;(0,d.Z)(this,Te),this._element=vt,this._overlay=qe,this._viewContainerRef=je,this._zone=Nt,this._changeDetectorRef=Ft,this._dir=St,this._formField=Pt,this._document=ut,this._viewportRuler=yt,this._defaults=be,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=B.w0.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new I.x,this._windowBlurHandler=function(){we._canOpenOnNextFocus=we._document.activeElement!==we._element.nativeElement||we.panelOpen},this._onChange=function(){},this._onTouched=function(){},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=(0,v.P)(function(){var _e=we.autocomplete?we.autocomplete.options:null;return _e?_e.changes.pipe((0,H.O)(_e),(0,V.w)(function(){return j.T.apply(void 0,(0,P.Z)(_e.map(function($){return $.onSelectionChange})))})):we._zone.onStable.pipe((0,ue.q)(1),(0,V.w)(function(){return we.optionSelections}))}),this._scrollStrategy=bt}return(0,p.Z)(Te,[{key:"autocompleteDisabled",get:function(){return this._autocompleteDisabled},set:function(qe){this._autocompleteDisabled=(0,h.Ig)(qe)}},{key:"ngAfterViewInit",value:function(){var qe=this,je=this._getWindow();void 0!==je&&this._zone.runOutsideAngular(function(){return je.addEventListener("blur",qe._windowBlurHandler)})}},{key:"ngOnChanges",value:function(qe){qe.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}},{key:"ngOnDestroy",value:function(){var qe=this._getWindow();void 0!==qe&&qe.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}},{key:"panelOpen",get:function(){return this._overlayAttached&&this.autocomplete.showPanel}},{key:"openPanel",value:function(){this._attachOverlay(),this._floatLabel()}},{key:"closePanel",value:function(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}},{key:"updatePosition",value:function(){this._overlayAttached&&this._overlayRef.updatePosition()}},{key:"panelClosingActions",get:function(){var qe=this;return(0,j.T)(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe((0,R.h)(function(){return qe._overlayAttached})),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe((0,R.h)(function(){return qe._overlayAttached})):(0,Q.of)()).pipe((0,r.U)(function(je){return je instanceof T.rN?je:null}))}},{key:"activeOption",get:function(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}},{key:"_getOutsideClickStream",value:function(){var qe=this;return(0,j.T)((0,J.R)(this._document,"click"),(0,J.R)(this._document,"auxclick"),(0,J.R)(this._document,"touchend")).pipe((0,R.h)(function(je){var Nt=(0,Z.sA)(je),Ft=qe._formField?qe._formField._elementRef.nativeElement:null,bt=qe.connectedTo?qe.connectedTo.elementRef.nativeElement:null;return qe._overlayAttached&&Nt!==qe._element.nativeElement&&(!Ft||!Ft.contains(Nt))&&(!bt||!bt.contains(Nt))&&!!qe._overlayRef&&!qe._overlayRef.overlayElement.contains(Nt)}))}},{key:"writeValue",value:function(qe){var je=this;Promise.resolve().then(function(){return je._setTriggerValue(qe)})}},{key:"registerOnChange",value:function(qe){this._onChange=qe}},{key:"registerOnTouched",value:function(qe){this._onTouched=qe}},{key:"setDisabledState",value:function(qe){this._element.nativeElement.disabled=qe}},{key:"_handleKeydown",value:function(qe){var je=qe.keyCode;if(je===k.hY&&!(0,k.Vb)(qe)&&qe.preventDefault(),this.activeOption&&je===k.K5&&this.panelOpen&&!(0,k.Vb)(qe))this.activeOption._selectViaInteraction(),this._resetActiveItem(),qe.preventDefault();else if(this.autocomplete){var Nt=this.autocomplete._keyManager.activeItem,Ft=je===k.LH||je===k.JH;this.panelOpen||je===k.Mf?this.autocomplete._keyManager.onKeydown(qe):Ft&&this._canOpen()&&this.openPanel(),(Ft||this.autocomplete._keyManager.activeItem!==Nt)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}},{key:"_handleInput",value:function(qe){var je=qe.target,Nt=je.value;"number"===je.type&&(Nt=""==Nt?null:parseFloat(Nt)),this._previousValue!==Nt&&(this._previousValue=Nt,this._onChange(Nt),this._canOpen()&&this._document.activeElement===qe.target&&this.openPanel())}},{key:"_handleFocus",value:function(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}},{key:"_floatLabel",value:function(){var qe=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this._formField&&"auto"===this._formField.floatLabel&&(qe?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}},{key:"_resetLabel",value:function(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}},{key:"_subscribeToClosingActions",value:function(){var qe=this,je=this._zone.onStable.pipe((0,ue.q)(1)),Nt=this.autocomplete.options.changes.pipe((0,z.b)(function(){return qe._positionStrategy.reapplyLastPosition()}),(0,Y.g)(0));return(0,j.T)(je,Nt).pipe((0,V.w)(function(){var Ft=qe.panelOpen;return qe._resetActiveItem(),qe.autocomplete._setVisibility(),qe.panelOpen&&(qe._overlayRef.updatePosition(),Ft!==qe.panelOpen&&qe.autocomplete.opened.emit()),qe.panelClosingActions}),(0,ue.q)(1)).subscribe(function(Ft){return qe._setValueAndClose(Ft)})}},{key:"_destroyPanel",value:function(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}},{key:"_setTriggerValue",value:function(qe){var je=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(qe):qe,Nt=null!=je?je:"";this._formField?this._formField._control.value=Nt:this._element.nativeElement.value=Nt,this._previousValue=Nt}},{key:"_setValueAndClose",value:function(qe){var je=qe&&qe.source;je&&(this._clearPreviousSelectedOption(je),this._setTriggerValue(je.value),this._onChange(je.value),this.autocomplete._emitSelectEvent(je),this._element.nativeElement.focus()),this.closePanel()}},{key:"_clearPreviousSelectedOption",value:function(qe){this.autocomplete.options.forEach(function(je){je!==qe&&je.selected&&je.deselect()})}},{key:"_attachOverlay",value:function(){var je,qe=this,Nt=this._overlayRef;Nt?(this._positionStrategy.setOrigin(this._getConnectedElement()),Nt.updateSize({width:this._getPanelWidth()})):(this._portal=new q.UE(this.autocomplete.template,this._viewContainerRef,{id:null===(je=this._formField)||void 0===je?void 0:je.getLabelId()}),Nt=this._overlay.create(this._getOverlayConfig()),this._overlayRef=Nt,Nt.keydownEvents().subscribe(function(bt){(bt.keyCode===k.hY&&!(0,k.Vb)(bt)||bt.keyCode===k.LH&&(0,k.Vb)(bt,"altKey"))&&(qe._closeKeyEventStream.next(),qe._resetActiveItem(),bt.stopPropagation(),bt.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(function(){qe.panelOpen&&Nt&&Nt.updateSize({width:qe._getPanelWidth()})})),Nt&&!Nt.hasAttached()&&(Nt.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());var Ft=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&Ft!==this.panelOpen&&this.autocomplete.opened.emit()}},{key:"_getOverlayConfig",value:function(){var qe;return new N.X_({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(qe=this._defaults)||void 0===qe?void 0:qe.overlayPanelClass})}},{key:"_getOverlayPosition",value:function(){var qe=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(qe),this._positionStrategy=qe,qe}},{key:"_setStrategyPositions",value:function(qe){var bt,je=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Nt=this._aboveClass,Ft=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:Nt},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:Nt}];bt="above"===this.position?Ft:"below"===this.position?je:[].concat(je,Ft),qe.withPositions(bt)}},{key:"_getConnectedElement",value:function(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}},{key:"_getPanelWidth",value:function(){return this.autocomplete.panelWidth||this._getHostWidth()}},{key:"_getHostWidth",value:function(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}},{key:"_resetActiveItem",value:function(){var qe=this.autocomplete;qe.autoActiveFirstOption?qe._keyManager.setFirstItemActive():qe._keyManager.setActiveItem(-1)}},{key:"_canOpen",value:function(){var qe=this._element.nativeElement;return!qe.readOnly&&!qe.disabled&&!this._autocompleteDisabled}},{key:"_getWindow",value:function(){var qe;return(null===(qe=this._document)||void 0===qe?void 0:qe.defaultView)||window}},{key:"_scrollToOption",value:function(qe){var je=this.autocomplete,Nt=(0,T.CB)(qe,je.options,je.optionGroups);if(0===qe&&1===Nt)je._setScrollTop(0);else if(je.panel){var Ft=je.options.toArray()[qe];if(Ft){var bt=Ft._getHostElement(),St=(0,T.jH)(bt.offsetTop,bt.offsetHeight,je._getScrollTop(),je.panel.nativeElement.offsetHeight);je._setScrollTop(St)}}}}]),Te}();return Xe.\u0275fac=function(vt){return new(vt||Xe)(f.Y36(f.SBq),f.Y36(N.aV),f.Y36(f.s_b),f.Y36(f.R0b),f.Y36(f.sBO),f.Y36(Lt),f.Y36(se.Is,8),f.Y36(ie.G_,9),f.Y36(A.K0,8),f.Y36(E.rL),f.Y36(ge,8))},Xe.\u0275dir=f.lG2({type:Xe,inputs:{autocomplete:["matAutocomplete","autocomplete"],position:["matAutocompletePosition","position"],connectedTo:["matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"]},features:[f.TTD]}),Xe}(),xe=function(){var Xe=function(Te){(0,t.Z)(qe,Te);var vt=(0,e.Z)(qe);function qe(){var je;return(0,d.Z)(this,qe),(je=vt.apply(this,arguments))._aboveClass="mat-autocomplete-panel-above",je}return(0,p.Z)(qe)}(tt);return Xe.\u0275fac=function(){var Te;return function(qe){return(Te||(Te=f.n5z(Xe)))(qe||Xe)}}(),Xe.\u0275dir=f.lG2({type:Xe,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(vt,qe){1&vt&&f.NdJ("focusin",function(){return qe._handleFocus()})("blur",function(){return qe._onTouched()})("input",function(Nt){return qe._handleInput(Nt)})("keydown",function(Nt){return qe._handleKeydown(Nt)}),2&vt&&f.uIk("autocomplete",qe.autocompleteAttribute)("role",qe.autocompleteDisabled?null:"combobox")("aria-autocomplete",qe.autocompleteDisabled?null:"list")("aria-activedescendant",qe.panelOpen&&qe.activeOption?qe.activeOption.id:null)("aria-expanded",qe.autocompleteDisabled?null:qe.panelOpen.toString())("aria-owns",qe.autocompleteDisabled||!qe.panelOpen||null==qe.autocomplete?null:qe.autocomplete.id)("aria-haspopup",!qe.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[f._Bn([Qe]),f.qOj]}),Xe}(),ct=function(){var Xe=(0,p.Z)(function Te(){(0,d.Z)(this,Te)});return Xe.\u0275fac=function(vt){return new(vt||Xe)},Xe.\u0275mod=f.oAB({type:Xe}),Xe.\u0275inj=f.cJS({providers:[it],imports:[[N.U8,T.Ng,T.BQ,A.ez],E.ZD,T.Ng,T.BQ]}),Xe}()},70178:function(dt,K,n){"use strict";n.d(K,{k:function(){return j},g:function(){return Q}});var P=n(24582),t=n(7318),e=n(48047),p=n(78069),d=n(76442),s=n(1130),h=n(84128),f=n(76484),T=n(57481),B=0,I=(0,s.Id)(function(){return(0,e.Z)(function J(){(0,p.Z)(this,J)})}()),v="mat-badge-content",j=function(){var J=function(Z){(0,P.Z)(N,Z);var A=(0,t.Z)(N);function N(E,k,q,ce,ie){var H;return(0,p.Z)(this,N),(H=A.call(this))._ngZone=E,H._elementRef=k,H._ariaDescriber=q,H._renderer=ce,H._animationMode=ie,H._color="primary",H._overlap=!0,H.position="above after",H.size="medium",H._id=B++,H._isInitialized=!1,H}return(0,e.Z)(N,[{key:"color",get:function(){return this._color},set:function(k){this._setColor(k),this._color=k}},{key:"overlap",get:function(){return this._overlap},set:function(k){this._overlap=(0,f.Ig)(k)}},{key:"content",get:function(){return this._content},set:function(k){this._updateRenderedContent(k)}},{key:"description",get:function(){return this._description},set:function(k){this._updateHostAriaDescription(k)}},{key:"hidden",get:function(){return this._hidden},set:function(k){this._hidden=(0,f.Ig)(k)}},{key:"isAbove",value:function(){return-1===this.position.indexOf("below")}},{key:"isAfter",value:function(){return-1===this.position.indexOf("before")}},{key:"getBadgeElement",value:function(){return this._badgeElement}},{key:"ngOnInit",value:function(){this._clearExistingBadges(),this.content&&!this._badgeElement&&(this._badgeElement=this._createBadgeElement(),this._updateRenderedContent(this.content)),this._isInitialized=!0}},{key:"ngOnDestroy",value:function(){this._renderer.destroyNode&&this._renderer.destroyNode(this._badgeElement),this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this.description)}},{key:"_createBadgeElement",value:function(){var k=this._renderer.createElement("span"),q="mat-badge-active";return k.setAttribute("id","mat-badge-content-".concat(this._id)),k.setAttribute("aria-hidden","true"),k.classList.add(v),"NoopAnimations"===this._animationMode&&k.classList.add("_mat-animation-noopable"),this._elementRef.nativeElement.appendChild(k),"function"==typeof requestAnimationFrame&&"NoopAnimations"!==this._animationMode?this._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){k.classList.add(q)})}):k.classList.add(q),k}},{key:"_updateRenderedContent",value:function(k){var q="".concat(null!=k?k:"").trim();this._isInitialized&&q&&!this._badgeElement&&(this._badgeElement=this._createBadgeElement()),this._badgeElement&&(this._badgeElement.textContent=q),this._content=q}},{key:"_updateHostAriaDescription",value:function(k){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this.description),k&&this._ariaDescriber.describe(this._elementRef.nativeElement,k),this._description=k}},{key:"_setColor",value:function(k){var q=this._elementRef.nativeElement.classList;q.remove("mat-badge-".concat(this._color)),k&&q.add("mat-badge-".concat(k))}},{key:"_clearExistingBadges",value:function(){for(var k=this._elementRef.nativeElement.querySelectorAll(":scope > .".concat(v)),q=0,ce=Array.from(k);q void, visible => hidden",(0,Q.jt)("".concat(T.mZ.COMPLEX," ").concat(T.yN.ACCELERATION_CURVE))),(0,Q.eR)("void => visible",(0,Q.jt)("".concat(T.mZ.EXITING," ").concat(T.yN.DECELERATION_CURVE)))])},V=new f.OlP("MatBottomSheetData"),ue=(0,p.Z)(function ne(){(0,d.Z)(this,ne),this.data=null,this.hasBackdrop=!0,this.disableClose=!1,this.ariaLabel=null,this.closeOnNavigation=!0,this.autoFocus="dialog",this.restoreFocus=!0}),R=function(){var ne=function(ve){(0,t.Z)(Ie,ve);var Re=(0,e.Z)(Ie);function Ie(Ee,ge,_t,wt,qt,Lt,Rt,it){var Qe;return(0,d.Z)(this,Ie),(Qe=Re.call(this))._elementRef=Ee,Qe._changeDetectorRef=ge,Qe._focusTrapFactory=_t,Qe._interactivityChecker=wt,Qe._ngZone=qt,Qe.bottomSheetConfig=it,Qe._animationState="void",Qe._animationStateChanged=new f.vpe,Qe._elementFocusedBeforeOpened=null,Qe.attachDomPortal=function(ot){return Qe._validatePortalAttached(),Qe._setPanelClass(),Qe._savePreviouslyFocusedElement(),Qe._portalOutlet.attachDomPortal(ot)},Qe._document=Rt,Qe._breakpointSubscription=Lt.observe([I.u3.Medium,I.u3.Large,I.u3.XLarge]).subscribe(function(){Qe._toggleClass("mat-bottom-sheet-container-medium",Lt.isMatched(I.u3.Medium)),Qe._toggleClass("mat-bottom-sheet-container-large",Lt.isMatched(I.u3.Large)),Qe._toggleClass("mat-bottom-sheet-container-xlarge",Lt.isMatched(I.u3.XLarge))}),Qe}return(0,p.Z)(Ie,[{key:"attachComponentPortal",value:function(ge){return this._validatePortalAttached(),this._setPanelClass(),this._savePreviouslyFocusedElement(),this._portalOutlet.attachComponentPortal(ge)}},{key:"attachTemplatePortal",value:function(ge){return this._validatePortalAttached(),this._setPanelClass(),this._savePreviouslyFocusedElement(),this._portalOutlet.attachTemplatePortal(ge)}},{key:"enter",value:function(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges())}},{key:"exit",value:function(){this._destroyed||(this._animationState="hidden",this._changeDetectorRef.markForCheck())}},{key:"ngOnDestroy",value:function(){this._breakpointSubscription.unsubscribe(),this._destroyed=!0}},{key:"_onAnimationDone",value:function(ge){"hidden"===ge.toState?this._restoreFocus():"visible"===ge.toState&&this._trapFocus(),this._animationStateChanged.emit(ge)}},{key:"_onAnimationStart",value:function(ge){this._animationStateChanged.emit(ge)}},{key:"_toggleClass",value:function(ge,_t){this._elementRef.nativeElement.classList.toggle(ge,_t)}},{key:"_validatePortalAttached",value:function(){this._portalOutlet.hasAttached()}},{key:"_setPanelClass",value:function(){var ge;(ge=this._elementRef.nativeElement.classList).add.apply(ge,(0,P.Z)((0,B.Eq)(this.bottomSheetConfig.panelClass||[])))}},{key:"_forceFocus",value:function(ge,_t){this._interactivityChecker.isFocusable(ge)||(ge.tabIndex=-1,this._ngZone.runOutsideAngular(function(){ge.addEventListener("blur",function(){return ge.removeAttribute("tabindex")}),ge.addEventListener("mousedown",function(){return ge.removeAttribute("tabindex")})})),ge.focus(_t)}},{key:"_focusByCssSelector",value:function(ge,_t){var wt=this._elementRef.nativeElement.querySelector(ge);wt&&this._forceFocus(wt,_t)}},{key:"_trapFocus",value:function(){var ge=this._elementRef.nativeElement;switch(this._focusTrap||(this._focusTrap=this._focusTrapFactory.create(ge)),this.bottomSheetConfig.autoFocus){case!1:case"dialog":var _t=(0,v.ht)();_t!==ge&&!ge.contains(_t)&&ge.focus();break;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady();break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.bottomSheetConfig.autoFocus)}}},{key:"_restoreFocus",value:function(){var ge=this._elementFocusedBeforeOpened;if(this.bottomSheetConfig.restoreFocus&&ge&&"function"==typeof ge.focus){var _t=(0,v.ht)(),wt=this._elementRef.nativeElement;(!_t||_t===this._document.body||_t===wt||wt.contains(_t))&&ge.focus()}this._focusTrap&&this._focusTrap.destroy()}},{key:"_savePreviouslyFocusedElement",value:function(){var ge=this;this._elementFocusedBeforeOpened=(0,v.ht)(),this._elementRef.nativeElement.focus&&this._ngZone.runOutsideAngular(function(){Promise.resolve().then(function(){return ge._elementRef.nativeElement.focus()})})}}]),Ie}(h.en);return ne.\u0275fac=function(Re){return new(Re||ne)(f.Y36(f.SBq),f.Y36(f.sBO),f.Y36(J.qV),f.Y36(J.ic),f.Y36(f.R0b),f.Y36(I.Yg),f.Y36(j.K0,8),f.Y36(ue))},ne.\u0275cmp=f.Xpm({type:ne,selectors:[["mat-bottom-sheet-container"]],viewQuery:function(Re,Ie){var Ee;1&Re&&f.Gf(h.Pl,7),2&Re&&f.iGM(Ee=f.CRH())&&(Ie._portalOutlet=Ee.first)},hostAttrs:["tabindex","-1","role","dialog","aria-modal","true",1,"mat-bottom-sheet-container"],hostVars:2,hostBindings:function(Re,Ie){1&Re&&f.WFA("@state.start",function(ge){return Ie._onAnimationStart(ge)})("@state.done",function(ge){return Ie._onAnimationDone(ge)}),2&Re&&(f.uIk("aria-label",null==Ie.bottomSheetConfig?null:Ie.bottomSheetConfig.ariaLabel),f.d8E("@state",Ie._animationState))},features:[f.qOj],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(Re,Ie){1&Re&&f.YNc(0,ie,0,0,"ng-template",0)},directives:[h.Pl],styles:[".mat-bottom-sheet-container{padding:8px 16px;min-width:100vw;box-sizing:border-box;display:block;outline:0;max-height:80vh;overflow:auto}.cdk-high-contrast-active .mat-bottom-sheet-container{outline:1px solid}.mat-bottom-sheet-container-xlarge,.mat-bottom-sheet-container-large,.mat-bottom-sheet-container-medium{border-top-left-radius:4px;border-top-right-radius:4px}.mat-bottom-sheet-container-medium{min-width:384px;max-width:calc(100vw - 128px)}.mat-bottom-sheet-container-large{min-width:512px;max-width:calc(100vw - 256px)}.mat-bottom-sheet-container-xlarge{min-width:576px;max-width:calc(100vw - 384px)}\n"],encapsulation:2,data:{animation:[H.bottomSheetState]}}),ne}(),r=function(){var ne=(0,p.Z)(function ve(){(0,d.Z)(this,ve)});return ne.\u0275fac=function(Re){return new(Re||ne)},ne.\u0275mod=f.oAB({type:ne}),ne.\u0275inj=f.cJS({imports:[[s.U8,T.BQ,h.eL],T.BQ]}),ne}(),z=function(){function ne(ve,Re){var Ie=this;(0,d.Z)(this,ne),this._overlayRef=Re,this._afterDismissed=new A.x,this._afterOpened=new A.x,this.containerInstance=ve,this.disableClose=ve.bottomSheetConfig.disableClose,ve._animationStateChanged.pipe((0,q.h)(function(Ee){return"done"===Ee.phaseName&&"visible"===Ee.toState}),(0,ce.q)(1)).subscribe(function(){Ie._afterOpened.next(),Ie._afterOpened.complete()}),ve._animationStateChanged.pipe((0,q.h)(function(Ee){return"done"===Ee.phaseName&&"hidden"===Ee.toState}),(0,ce.q)(1)).subscribe(function(){clearTimeout(Ie._closeFallbackTimeout),Re.dispose()}),Re.detachments().pipe((0,ce.q)(1)).subscribe(function(){Ie._afterDismissed.next(Ie._result),Ie._afterDismissed.complete()}),(0,N.T)(Re.backdropClick(),Re.keydownEvents().pipe((0,q.h)(function(Ee){return Ee.keyCode===k.hY}))).subscribe(function(Ee){!Ie.disableClose&&("keydown"!==Ee.type||!(0,k.Vb)(Ee))&&(Ee.preventDefault(),Ie.dismiss())})}return(0,p.Z)(ne,[{key:"dismiss",value:function(Re){var Ie=this;this._afterDismissed.closed||(this.containerInstance._animationStateChanged.pipe((0,q.h)(function(Ee){return"start"===Ee.phaseName}),(0,ce.q)(1)).subscribe(function(Ee){Ie._closeFallbackTimeout=setTimeout(function(){Ie._overlayRef.dispose()},Ee.totalTime+100),Ie._overlayRef.detachBackdrop()}),this._result=Re,this.containerInstance.exit())}},{key:"afterDismissed",value:function(){return this._afterDismissed}},{key:"afterOpened",value:function(){return this._afterOpened}},{key:"backdropClick",value:function(){return this._overlayRef.backdropClick()}},{key:"keydownEvents",value:function(){return this._overlayRef.keydownEvents()}}]),ne}(),Y=new f.OlP("mat-bottom-sheet-default-options"),se=function(){var ne=function(){function ve(Re,Ie,Ee,ge){(0,d.Z)(this,ve),this._overlay=Re,this._injector=Ie,this._parentBottomSheet=Ee,this._defaultOptions=ge,this._bottomSheetRefAtThisLevel=null}return(0,p.Z)(ve,[{key:"_openedBottomSheetRef",get:function(){var Ie=this._parentBottomSheet;return Ie?Ie._openedBottomSheetRef:this._bottomSheetRefAtThisLevel},set:function(Ie){this._parentBottomSheet?this._parentBottomSheet._openedBottomSheetRef=Ie:this._bottomSheetRefAtThisLevel=Ie}},{key:"open",value:function(Ie,Ee){var ge=this,_t=function X(ne,ve){return Object.assign(Object.assign({},ne),ve)}(this._defaultOptions||new ue,Ee),wt=this._createOverlay(_t),qt=this._attachContainer(wt,_t),Lt=new z(qt,wt);if(Ie instanceof f.Rgc)qt.attachTemplatePortal(new h.UE(Ie,null,{$implicit:_t.data,bottomSheetRef:Lt}));else{var Rt=new h.C5(Ie,void 0,this._createInjector(_t,Lt)),it=qt.attachComponentPortal(Rt);Lt.instance=it.instance}return Lt.afterDismissed().subscribe(function(){ge._openedBottomSheetRef==Lt&&(ge._openedBottomSheetRef=null)}),this._openedBottomSheetRef?(this._openedBottomSheetRef.afterDismissed().subscribe(function(){return Lt.containerInstance.enter()}),this._openedBottomSheetRef.dismiss()):Lt.containerInstance.enter(),this._openedBottomSheetRef=Lt,Lt}},{key:"dismiss",value:function(Ie){this._openedBottomSheetRef&&this._openedBottomSheetRef.dismiss(Ie)}},{key:"ngOnDestroy",value:function(){this._bottomSheetRefAtThisLevel&&this._bottomSheetRefAtThisLevel.dismiss()}},{key:"_attachContainer",value:function(Ie,Ee){var _t=f.zs3.create({parent:Ee&&Ee.viewContainerRef&&Ee.viewContainerRef.injector||this._injector,providers:[{provide:ue,useValue:Ee}]}),wt=new h.C5(R,Ee.viewContainerRef,_t);return Ie.attach(wt).instance}},{key:"_createOverlay",value:function(Ie){var Ee=new s.X_({direction:Ie.direction,hasBackdrop:Ie.hasBackdrop,disposeOnNavigation:Ie.closeOnNavigation,maxWidth:"100%",scrollStrategy:Ie.scrollStrategy||this._overlay.scrollStrategies.block(),positionStrategy:this._overlay.position().global().centerHorizontally().bottom("0")});return Ie.backdropClass&&(Ee.backdropClass=Ie.backdropClass),this._overlay.create(Ee)}},{key:"_createInjector",value:function(Ie,Ee){var ge=Ie&&Ie.viewContainerRef&&Ie.viewContainerRef.injector,_t=[{provide:z,useValue:Ee},{provide:V,useValue:Ie.data}];return Ie.direction&&(!ge||!ge.get(Z.Is,null,f.XFs.Optional))&&_t.push({provide:Z.Is,useValue:{value:Ie.direction,change:(0,E.of)()}}),f.zs3.create({parent:ge||this._injector,providers:_t})}}]),ve}();return ne.\u0275fac=function(Re){return new(Re||ne)(f.LFG(s.aV),f.LFG(f.zs3),f.LFG(ne,12),f.LFG(Y,8))},ne.\u0275prov=f.Yz7({token:ne,factory:ne.\u0275fac,providedIn:r}),ne}()},31959:function(dt,K,n){"use strict";n.d(K,{Yi:function(){return q},A9:function(){return E},vV:function(){return ce}});var P=n(24582),t=n(7318),e=n(86170),p=n(48047),d=n(78069),s=n(76484),h=n(89502),f=n(76442),T=n(90587),B=n(1130),I=n(84128),v=["button"],j=["*"],Q=new f.OlP("MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS"),J=new f.OlP("MatButtonToggleGroup"),Z={provide:T.JU,useExisting:(0,f.Gpc)(function(){return E}),multi:!0},A=0,N=(0,p.Z)(function ie(H,V){(0,d.Z)(this,ie),this.source=H,this.value=V}),E=function(){var ie=function(){function H(V,ue){(0,d.Z)(this,H),this._changeDetector=V,this._vertical=!1,this._multiple=!1,this._disabled=!1,this._controlValueAccessorChangeFn=function(){},this._onTouched=function(){},this._name="mat-button-toggle-group-".concat(A++),this.valueChange=new f.vpe,this.change=new f.vpe,this.appearance=ue&&ue.appearance?ue.appearance:"standard"}return(0,p.Z)(H,[{key:"name",get:function(){return this._name},set:function(ue){var R=this;this._name=ue,this._buttonToggles&&this._buttonToggles.forEach(function(r){r.name=R._name,r._markForCheck()})}},{key:"vertical",get:function(){return this._vertical},set:function(ue){this._vertical=(0,s.Ig)(ue)}},{key:"value",get:function(){var ue=this._selectionModel?this._selectionModel.selected:[];return this.multiple?ue.map(function(R){return R.value}):ue[0]?ue[0].value:void 0},set:function(ue){this._setSelectionByValue(ue),this.valueChange.emit(this.value)}},{key:"selected",get:function(){var ue=this._selectionModel?this._selectionModel.selected:[];return this.multiple?ue:ue[0]||null}},{key:"multiple",get:function(){return this._multiple},set:function(ue){this._multiple=(0,s.Ig)(ue)}},{key:"disabled",get:function(){return this._disabled},set:function(ue){this._disabled=(0,s.Ig)(ue),this._buttonToggles&&this._buttonToggles.forEach(function(R){return R._markForCheck()})}},{key:"ngOnInit",value:function(){this._selectionModel=new h.Ov(this.multiple,void 0,!1)}},{key:"ngAfterContentInit",value:function(){var ue;(ue=this._selectionModel).select.apply(ue,(0,e.Z)(this._buttonToggles.filter(function(R){return R.checked})))}},{key:"writeValue",value:function(ue){this.value=ue,this._changeDetector.markForCheck()}},{key:"registerOnChange",value:function(ue){this._controlValueAccessorChangeFn=ue}},{key:"registerOnTouched",value:function(ue){this._onTouched=ue}},{key:"setDisabledState",value:function(ue){this.disabled=ue}},{key:"_emitChangeEvent",value:function(){var ue=this.selected,R=Array.isArray(ue)?ue[ue.length-1]:ue,r=new N(R,this.value);this._controlValueAccessorChangeFn(r.value),this.change.emit(r)}},{key:"_syncButtonToggle",value:function(ue,R){var r=this,z=arguments.length>2&&void 0!==arguments[2]&&arguments[2],Y=arguments.length>3&&void 0!==arguments[3]&&arguments[3];!this.multiple&&this.selected&&!ue.checked&&(this.selected.checked=!1),this._selectionModel?R?this._selectionModel.select(ue):this._selectionModel.deselect(ue):Y=!0,Y?Promise.resolve().then(function(){return r._updateModelValue(z)}):this._updateModelValue(z)}},{key:"_isSelected",value:function(ue){return this._selectionModel&&this._selectionModel.isSelected(ue)}},{key:"_isPrechecked",value:function(ue){return void 0!==this._rawValue&&(this.multiple&&Array.isArray(this._rawValue)?this._rawValue.some(function(R){return null!=ue.value&&R===ue.value}):ue.value===this._rawValue)}},{key:"_setSelectionByValue",value:function(ue){var R=this;this._rawValue=ue,this._buttonToggles&&(this.multiple&&ue?(Array.isArray(ue),this._clearSelection(),ue.forEach(function(r){return R._selectValue(r)})):(this._clearSelection(),this._selectValue(ue)))}},{key:"_clearSelection",value:function(){this._selectionModel.clear(),this._buttonToggles.forEach(function(ue){return ue.checked=!1})}},{key:"_selectValue",value:function(ue){var R=this._buttonToggles.find(function(r){return null!=r.value&&r.value===ue});R&&(R.checked=!0,this._selectionModel.select(R))}},{key:"_updateModelValue",value:function(ue){ue&&this._emitChangeEvent(),this.valueChange.emit(this.value)}}]),H}();return ie.\u0275fac=function(V){return new(V||ie)(f.Y36(f.sBO),f.Y36(Q,8))},ie.\u0275dir=f.lG2({type:ie,selectors:[["mat-button-toggle-group"]],contentQueries:function(V,ue,R){var r;1&V&&f.Suo(R,q,5),2&V&&f.iGM(r=f.CRH())&&(ue._buttonToggles=r)},hostAttrs:["role","group",1,"mat-button-toggle-group"],hostVars:5,hostBindings:function(V,ue){2&V&&(f.uIk("aria-disabled",ue.disabled),f.ekj("mat-button-toggle-vertical",ue.vertical)("mat-button-toggle-group-appearance-standard","standard"===ue.appearance))},inputs:{appearance:"appearance",name:"name",vertical:"vertical",value:"value",multiple:"multiple",disabled:"disabled"},outputs:{valueChange:"valueChange",change:"change"},exportAs:["matButtonToggleGroup"],features:[f._Bn([Z,{provide:J,useExisting:ie}])]}),ie}(),k=(0,B.Kr)(function(){return(0,p.Z)(function ie(){(0,d.Z)(this,ie)})}()),q=function(){var ie=function(H){(0,P.Z)(ue,H);var V=(0,t.Z)(ue);function ue(R,r,z,Y,se,X){var ne;(0,d.Z)(this,ue),(ne=V.call(this))._changeDetectorRef=r,ne._elementRef=z,ne._focusMonitor=Y,ne._isSingleSelector=!1,ne._checked=!1,ne.ariaLabelledby=null,ne._disabled=!1,ne.change=new f.vpe;var ve=Number(se);return ne.tabIndex=ve||0===ve?ve:null,ne.buttonToggleGroup=R,ne.appearance=X&&X.appearance?X.appearance:"standard",ne}return(0,p.Z)(ue,[{key:"buttonId",get:function(){return"".concat(this.id,"-button")}},{key:"appearance",get:function(){return this.buttonToggleGroup?this.buttonToggleGroup.appearance:this._appearance},set:function(r){this._appearance=r}},{key:"checked",get:function(){return this.buttonToggleGroup?this.buttonToggleGroup._isSelected(this):this._checked},set:function(r){var z=(0,s.Ig)(r);z!==this._checked&&(this._checked=z,this.buttonToggleGroup&&this.buttonToggleGroup._syncButtonToggle(this,this._checked),this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled||this.buttonToggleGroup&&this.buttonToggleGroup.disabled},set:function(r){this._disabled=(0,s.Ig)(r)}},{key:"ngOnInit",value:function(){var r=this.buttonToggleGroup;this._isSingleSelector=r&&!r.multiple,this.id=this.id||"mat-button-toggle-".concat(A++),this._isSingleSelector&&(this.name=r.name),r&&(r._isPrechecked(this)?this.checked=!0:r._isSelected(this)!==this._checked&&r._syncButtonToggle(this,this._checked))}},{key:"ngAfterViewInit",value:function(){this._focusMonitor.monitor(this._elementRef,!0)}},{key:"ngOnDestroy",value:function(){var r=this.buttonToggleGroup;this._focusMonitor.stopMonitoring(this._elementRef),r&&r._isSelected(this)&&r._syncButtonToggle(this,!1,!1,!0)}},{key:"focus",value:function(r){this._buttonElement.nativeElement.focus(r)}},{key:"_onButtonClick",value:function(){var r=!!this._isSingleSelector||!this._checked;r!==this._checked&&(this._checked=r,this.buttonToggleGroup&&(this.buttonToggleGroup._syncButtonToggle(this,this._checked,!0),this.buttonToggleGroup._onTouched())),this.change.emit(new N(this,this.value))}},{key:"_markForCheck",value:function(){this._changeDetectorRef.markForCheck()}}]),ue}(k);return ie.\u0275fac=function(V){return new(V||ie)(f.Y36(J,8),f.Y36(f.sBO),f.Y36(f.SBq),f.Y36(I.tE),f.$8M("tabindex"),f.Y36(Q,8))},ie.\u0275cmp=f.Xpm({type:ie,selectors:[["mat-button-toggle"]],viewQuery:function(V,ue){var R;1&V&&f.Gf(v,5),2&V&&f.iGM(R=f.CRH())&&(ue._buttonElement=R.first)},hostAttrs:["role","presentation",1,"mat-button-toggle"],hostVars:12,hostBindings:function(V,ue){1&V&&f.NdJ("focus",function(){return ue.focus()}),2&V&&(f.uIk("aria-label",null)("aria-labelledby",null)("id",ue.id)("name",null),f.ekj("mat-button-toggle-standalone",!ue.buttonToggleGroup)("mat-button-toggle-checked",ue.checked)("mat-button-toggle-disabled",ue.disabled)("mat-button-toggle-appearance-standard","standard"===ue.appearance))},inputs:{disableRipple:"disableRipple",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",name:"name",value:"value",tabIndex:"tabIndex",appearance:"appearance",checked:"checked",disabled:"disabled"},outputs:{change:"change"},exportAs:["matButtonToggle"],features:[f.qOj],ngContentSelectors:j,decls:6,vars:9,consts:[["type","button",1,"mat-button-toggle-button","mat-focus-indicator",3,"id","disabled","click"],["button",""],[1,"mat-button-toggle-label-content"],[1,"mat-button-toggle-focus-overlay"],["matRipple","",1,"mat-button-toggle-ripple",3,"matRippleTrigger","matRippleDisabled"]],template:function(V,ue){if(1&V&&(f.F$t(),f.TgZ(0,"button",0,1),f.NdJ("click",function(){return ue._onButtonClick()}),f.TgZ(2,"span",2),f.Hsn(3),f.qZA(),f.qZA(),f._UZ(4,"span",3),f._UZ(5,"span",4)),2&V){var R=f.MAs(1);f.Q6J("id",ue.buttonId)("disabled",ue.disabled||null),f.uIk("tabindex",ue.disabled?-1:ue.tabIndex)("aria-pressed",ue.checked)("name",ue.name||null)("aria-label",ue.ariaLabel)("aria-labelledby",ue.ariaLabelledby),f.xp6(5),f.Q6J("matRippleTrigger",R)("matRippleDisabled",ue.disableRipple||ue.disabled)}},directives:[B.wG],styles:[".mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;border-radius:2px;-webkit-tap-highlight-color:transparent}.cdk-high-contrast-active .mat-button-toggle-standalone,.cdk-high-contrast-active .mat-button-toggle-group{outline:solid 1px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:4px}.cdk-high-contrast-active .mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.cdk-high-contrast-active .mat-button-toggle-group-appearance-standard{outline:0}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:1}.cdk-high-contrast-active .mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:.5}.mat-button-toggle-appearance-standard:not(.mat-button-toggle-disabled):hover .mat-button-toggle-focus-overlay{opacity:.04}.mat-button-toggle-appearance-standard.cdk-keyboard-focused:not(.mat-button-toggle-disabled) .mat-button-toggle-focus-overlay{opacity:.12}.cdk-high-contrast-active .mat-button-toggle-appearance-standard.cdk-keyboard-focused:not(.mat-button-toggle-disabled) .mat-button-toggle-focus-overlay{opacity:.5}@media(hover: none){.mat-button-toggle-appearance-standard:not(.mat-button-toggle-disabled):hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-block;line-height:36px;padding:0 16px;position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{border-radius:inherit;pointer-events:none;opacity:0;top:0;left:0;right:0;bottom:0;position:absolute}.mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 36px}.cdk-high-contrast-active .mat-button-toggle-checked .mat-button-toggle-focus-overlay{opacity:.5;height:0}.cdk-high-contrast-active .mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}\n"],encapsulation:2,changeDetection:0}),ie}(),ce=function(){var ie=(0,p.Z)(function H(){(0,d.Z)(this,H)});return ie.\u0275fac=function(V){return new(V||ie)},ie.\u0275mod=f.oAB({type:ie}),ie.\u0275inj=f.cJS({imports:[[B.BQ,B.si],B.BQ]}),ie}()},87317:function(dt,K,n){"use strict";n.d(K,{zs:function(){return E},lW:function(){return N},ot:function(){return k}});var P=n(4089),t=n(20265),e=n(95106),p=n(24582),d=n(7318),s=n(48047),h=n(78069),f=n(76442),T=n(1130),B=n(57481),I=n(84128),v=["mat-button",""],j=["*"],Z=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],A=(0,T.pj)((0,T.Id)((0,T.Kr)(function(){return(0,s.Z)(function q(ce){(0,h.Z)(this,q),this._elementRef=ce})}()))),N=function(){var q=function(ce){(0,p.Z)(H,ce);var ie=(0,d.Z)(H);function H(V,ue,R){var r;(0,h.Z)(this,H),(r=ie.call(this,V))._focusMonitor=ue,r._animationMode=R,r.isRoundButton=r._hasHostAttributes("mat-fab","mat-mini-fab"),r.isIconButton=r._hasHostAttributes("mat-icon-button");var Y,z=(0,e.Z)(Z);try{for(z.s();!(Y=z.n()).done;){var se=Y.value;r._hasHostAttributes(se)&&r._getHostElement().classList.add(se)}}catch(X){z.e(X)}finally{z.f()}return V.nativeElement.classList.add("mat-button-base"),r.isRoundButton&&(r.color="accent"),r}return(0,s.Z)(H,[{key:"ngAfterViewInit",value:function(){this._focusMonitor.monitor(this._elementRef,!0)}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"focus",value:function(ue,R){ue?this._focusMonitor.focusVia(this._getHostElement(),ue,R):this._getHostElement().focus(R)}},{key:"_getHostElement",value:function(){return this._elementRef.nativeElement}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_hasHostAttributes",value:function(){for(var ue=this,R=arguments.length,r=new Array(R),z=0;z*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),q}(),E=function(){var q=function(ce){(0,p.Z)(H,ce);var ie=(0,d.Z)(H);function H(V,ue,R,r){var z;return(0,h.Z)(this,H),(z=ie.call(this,ue,V,R))._ngZone=r,z._haltDisabledEvents=function(Y){z.disabled&&(Y.preventDefault(),Y.stopImmediatePropagation())},z}return(0,s.Z)(H,[{key:"ngAfterViewInit",value:function(){var ue=this;(0,P.Z)((0,t.Z)(H.prototype),"ngAfterViewInit",this).call(this),this._ngZone?this._ngZone.runOutsideAngular(function(){ue._elementRef.nativeElement.addEventListener("click",ue._haltDisabledEvents)}):this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}},{key:"ngOnDestroy",value:function(){(0,P.Z)((0,t.Z)(H.prototype),"ngOnDestroy",this).call(this),this._elementRef.nativeElement.removeEventListener("click",this._haltDisabledEvents)}}]),H}(N);return q.\u0275fac=function(ie){return new(ie||q)(f.Y36(I.tE),f.Y36(f.SBq),f.Y36(B.Qb,8),f.Y36(f.R0b,8))},q.\u0275cmp=f.Xpm({type:q,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(ie,H){2&ie&&(f.uIk("tabindex",H.disabled?-1:H.tabIndex||0)("disabled",H.disabled||null)("aria-disabled",H.disabled.toString()),f.ekj("_mat-animation-noopable","NoopAnimations"===H._animationMode)("mat-button-disabled",H.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[f.qOj],attrs:v,ngContentSelectors:j,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(ie,H){1&ie&&(f.F$t(),f.TgZ(0,"span",0),f.Hsn(1),f.qZA(),f._UZ(2,"span",1),f._UZ(3,"span",2)),2&ie&&(f.xp6(2),f.ekj("mat-button-ripple-round",H.isRoundButton||H.isIconButton),f.Q6J("matRippleDisabled",H._isRippleDisabled())("matRippleCentered",H.isIconButton)("matRippleTrigger",H._getHostElement()))},directives:[T.wG],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),q}(),k=function(){var q=(0,s.Z)(function ce(){(0,h.Z)(this,ce)});return q.\u0275fac=function(ie){return new(ie||q)},q.\u0275mod=f.oAB({type:q}),q.\u0275inj=f.cJS({imports:[[T.si,T.BQ],T.BQ]}),q}()},11961:function(dt,K,n){"use strict";n.d(K,{a8:function(){return ie},hq:function(){return J},dn:function(){return v},QW:function(){return ue},n5:function(){return j}});var P=n(48047),t=n(78069),e=n(76442),p=n(57481),d=n(1130),s=["*",[["mat-card-footer"]]],h=["*","mat-card-footer"],v=function(){var R=(0,P.Z)(function r(){(0,t.Z)(this,r)});return R.\u0275fac=function(z){return new(z||R)},R.\u0275dir=e.lG2({type:R,selectors:[["mat-card-content"],["","mat-card-content",""],["","matCardContent",""]],hostAttrs:[1,"mat-card-content"]}),R}(),j=function(){var R=(0,P.Z)(function r(){(0,t.Z)(this,r)});return R.\u0275fac=function(z){return new(z||R)},R.\u0275dir=e.lG2({type:R,selectors:[["mat-card-title"],["","mat-card-title",""],["","matCardTitle",""]],hostAttrs:[1,"mat-card-title"]}),R}(),J=function(){var R=(0,P.Z)(function r(){(0,t.Z)(this,r),this.align="start"});return R.\u0275fac=function(z){return new(z||R)},R.\u0275dir=e.lG2({type:R,selectors:[["mat-card-actions"]],hostAttrs:[1,"mat-card-actions"],hostVars:2,hostBindings:function(z,Y){2&z&&e.ekj("mat-card-actions-align-end","end"===Y.align)},inputs:{align:"align"},exportAs:["matCardActions"]}),R}(),ie=function(){var R=(0,P.Z)(function r(z){(0,t.Z)(this,r),this._animationMode=z});return R.\u0275fac=function(z){return new(z||R)(e.Y36(p.Qb,8))},R.\u0275cmp=e.Xpm({type:R,selectors:[["mat-card"]],hostAttrs:[1,"mat-card","mat-focus-indicator"],hostVars:2,hostBindings:function(z,Y){2&z&&e.ekj("_mat-animation-noopable","NoopAnimations"===Y._animationMode)},exportAs:["matCard"],ngContentSelectors:h,decls:2,vars:0,template:function(z,Y){1&z&&(e.F$t(s),e.Hsn(0),e.Hsn(1,1))},styles:[".mat-card{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:block;position:relative;padding:16px;border-radius:4px}._mat-animation-noopable.mat-card{transition:none;animation:none}.mat-card .mat-divider-horizontal{position:absolute;left:0;width:100%}[dir=rtl] .mat-card .mat-divider-horizontal{left:auto;right:0}.mat-card .mat-divider-horizontal.mat-divider-inset{position:static;margin:0}[dir=rtl] .mat-card .mat-divider-horizontal.mat-divider-inset{margin-right:0}.cdk-high-contrast-active .mat-card{outline:solid 1px}.mat-card-actions,.mat-card-subtitle,.mat-card-content{display:block;margin-bottom:16px}.mat-card-title{display:block;margin-bottom:8px}.mat-card-actions{margin-left:-8px;margin-right:-8px;padding:8px 0}.mat-card-actions-align-end{display:flex;justify-content:flex-end}.mat-card-image{width:calc(100% + 32px);margin:0 -16px 16px -16px;display:block;overflow:hidden}.mat-card-image img{width:100%}.mat-card-footer{display:block;margin:0 -16px -16px -16px}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button,.mat-card-actions .mat-stroked-button{margin:0 8px}.mat-card-header{display:flex;flex-direction:row}.mat-card-header .mat-card-title{margin-bottom:12px}.mat-card-header-text{margin:0 16px}.mat-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.mat-card-title-group{display:flex;justify-content:space-between}.mat-card-sm-image{width:80px;height:80px}.mat-card-md-image{width:112px;height:112px}.mat-card-lg-image{width:152px;height:152px}.mat-card-xl-image{width:240px;height:240px;margin:-8px}.mat-card-title-group>.mat-card-xl-image{margin:-8px 0 8px}@media(max-width: 599px){.mat-card-title-group{margin:0}.mat-card-xl-image{margin-left:0;margin-right:0}}.mat-card>:first-child,.mat-card-content>:first-child{margin-top:0}.mat-card>:last-child:not(.mat-card-footer),.mat-card-content>:last-child:not(.mat-card-footer){margin-bottom:0}.mat-card-image:first-child{margin-top:-16px;border-top-left-radius:inherit;border-top-right-radius:inherit}.mat-card>.mat-card-actions:last-child{margin-bottom:-8px;padding-bottom:0}.mat-card-actions:not(.mat-card-actions-align-end) .mat-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-raised-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-stroked-button:first-child{margin-left:0;margin-right:0}.mat-card-actions-align-end .mat-button:last-child,.mat-card-actions-align-end .mat-raised-button:last-child,.mat-card-actions-align-end .mat-stroked-button:last-child{margin-left:0;margin-right:0}.mat-card-title:not(:first-child),.mat-card-subtitle:not(:first-child){margin-top:-4px}.mat-card-header .mat-card-subtitle:not(:first-child){margin-top:-8px}.mat-card>.mat-card-xl-image:first-child{margin-top:-8px}.mat-card>.mat-card-xl-image:last-child{margin-bottom:-8px}\n"],encapsulation:2,changeDetection:0}),R}(),ue=function(){var R=(0,P.Z)(function r(){(0,t.Z)(this,r)});return R.\u0275fac=function(z){return new(z||R)},R.\u0275mod=e.oAB({type:R}),R.\u0275inj=e.cJS({imports:[[d.BQ],d.BQ]}),R}()},61534:function(dt,K,n){"use strict";n.d(K,{oG:function(){return ce},p9:function(){return ue}});var P=n(24582),t=n(7318),e=n(48047),p=n(78069),d=n(76484),s=n(76442),h=n(90587),f=n(1130),T=n(57481),B=n(84128),I=n(35837),v=["input"],j=function(r){return{enterDuration:r}},Q=["*"],J=new s.OlP("mat-checkbox-default-options",{providedIn:"root",factory:Z});function Z(){return{color:"accent",clickAction:"check-indeterminate"}}var A=0,N=Z(),E={provide:h.JU,useExisting:(0,s.Gpc)(function(){return ce}),multi:!0},k=(0,e.Z)(function R(){(0,p.Z)(this,R)}),q=(0,f.sb)((0,f.pj)((0,f.Kr)((0,f.Id)(function(){return(0,e.Z)(function R(r){(0,p.Z)(this,R),this._elementRef=r})}())))),ce=function(){var R=function(r){(0,P.Z)(Y,r);var z=(0,t.Z)(Y);function Y(se,X,ne,ve,Re,Ie,Ee){var ge;return(0,p.Z)(this,Y),(ge=z.call(this,se))._changeDetectorRef=X,ge._focusMonitor=ne,ge._ngZone=ve,ge._animationMode=Ie,ge._options=Ee,ge.ariaLabel="",ge.ariaLabelledby=null,ge._uniqueId="mat-checkbox-".concat(++A),ge.id=ge._uniqueId,ge.labelPosition="after",ge.name=null,ge.change=new s.vpe,ge.indeterminateChange=new s.vpe,ge._onTouched=function(){},ge._currentAnimationClass="",ge._currentCheckState=0,ge._controlValueAccessorChangeFn=function(){},ge._checked=!1,ge._disabled=!1,ge._indeterminate=!1,ge._options=ge._options||N,ge.color=ge.defaultColor=ge._options.color||N.color,ge.tabIndex=parseInt(Re)||0,ge}return(0,e.Z)(Y,[{key:"inputId",get:function(){return"".concat(this.id||this._uniqueId,"-input")}},{key:"required",get:function(){return this._required},set:function(X){this._required=(0,d.Ig)(X)}},{key:"ngAfterViewInit",value:function(){var X=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(ne){ne||Promise.resolve().then(function(){X._onTouched(),X._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}},{key:"ngAfterViewChecked",value:function(){}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"checked",get:function(){return this._checked},set:function(X){X!=this.checked&&(this._checked=X,this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(X){var ne=(0,d.Ig)(X);ne!==this.disabled&&(this._disabled=ne,this._changeDetectorRef.markForCheck())}},{key:"indeterminate",get:function(){return this._indeterminate},set:function(X){var ne=X!=this._indeterminate;this._indeterminate=(0,d.Ig)(X),ne&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_onLabelTextChange",value:function(){this._changeDetectorRef.detectChanges()}},{key:"writeValue",value:function(X){this.checked=!!X}},{key:"registerOnChange",value:function(X){this._controlValueAccessorChangeFn=X}},{key:"registerOnTouched",value:function(X){this._onTouched=X}},{key:"setDisabledState",value:function(X){this.disabled=X}},{key:"_getAriaChecked",value:function(){return this.checked?"true":this.indeterminate?"mixed":"false"}},{key:"_transitionCheckState",value:function(X){var ne=this._currentCheckState,ve=this._elementRef.nativeElement;if(ne!==X&&(this._currentAnimationClass.length>0&&ve.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(ne,X),this._currentCheckState=X,this._currentAnimationClass.length>0)){ve.classList.add(this._currentAnimationClass);var Re=this._currentAnimationClass;this._ngZone.runOutsideAngular(function(){setTimeout(function(){ve.classList.remove(Re)},1e3)})}}},{key:"_emitChangeEvent",value:function(){var X=new k;X.source=this,X.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(X),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}},{key:"toggle",value:function(){this.checked=!this.checked}},{key:"_onInputClick",value:function(X){var ve,ne=this,Re=null===(ve=this._options)||void 0===ve?void 0:ve.clickAction;X.stopPropagation(),this.disabled||"noop"===Re?!this.disabled&&"noop"===Re&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==Re&&Promise.resolve().then(function(){ne._indeterminate=!1,ne.indeterminateChange.emit(ne._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}},{key:"focus",value:function(X,ne){X?this._focusMonitor.focusVia(this._inputElement,X,ne):this._inputElement.nativeElement.focus(ne)}},{key:"_onInteractionEvent",value:function(X){X.stopPropagation()}},{key:"_getAnimationClassForCheckStateTransition",value:function(X,ne){if("NoopAnimations"===this._animationMode)return"";var ve="";switch(X){case 0:if(1===ne)ve="unchecked-checked";else{if(3!=ne)return"";ve="unchecked-indeterminate"}break;case 2:ve=1===ne?"unchecked-checked":"unchecked-indeterminate";break;case 1:ve=2===ne?"checked-unchecked":"checked-indeterminate";break;case 3:ve=1===ne?"indeterminate-checked":"indeterminate-unchecked"}return"mat-checkbox-anim-".concat(ve)}},{key:"_syncIndeterminate",value:function(X){var ne=this._inputElement;ne&&(ne.nativeElement.indeterminate=X)}}]),Y}(q);return R.\u0275fac=function(z){return new(z||R)(s.Y36(s.SBq),s.Y36(s.sBO),s.Y36(B.tE),s.Y36(s.R0b),s.$8M("tabindex"),s.Y36(T.Qb,8),s.Y36(J,8))},R.\u0275cmp=s.Xpm({type:R,selectors:[["mat-checkbox"]],viewQuery:function(z,Y){var se;1&z&&(s.Gf(v,5),s.Gf(f.wG,5)),2&z&&(s.iGM(se=s.CRH())&&(Y._inputElement=se.first),s.iGM(se=s.CRH())&&(Y.ripple=se.first))},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(z,Y){2&z&&(s.Ikx("id",Y.id),s.uIk("tabindex",null),s.ekj("mat-checkbox-indeterminate",Y.indeterminate)("mat-checkbox-checked",Y.checked)("mat-checkbox-disabled",Y.disabled)("mat-checkbox-label-before","before"==Y.labelPosition)("_mat-animation-noopable","NoopAnimations"===Y._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],id:"id",required:"required",labelPosition:"labelPosition",name:"name",value:"value",checked:"checked",disabled:"disabled",indeterminate:"indeterminate"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[s._Bn([E]),s.qOj],ngContentSelectors:Q,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(z,Y){if(1&z&&(s.F$t(),s.TgZ(0,"label",0,1),s.TgZ(2,"span",2),s.TgZ(3,"input",3,4),s.NdJ("change",function(ve){return Y._onInteractionEvent(ve)})("click",function(ve){return Y._onInputClick(ve)}),s.qZA(),s.TgZ(5,"span",5),s._UZ(6,"span",6),s.qZA(),s._UZ(7,"span",7),s.TgZ(8,"span",8),s.O4$(),s.TgZ(9,"svg",9),s._UZ(10,"path",10),s.qZA(),s.kcU(),s._UZ(11,"span",11),s.qZA(),s.qZA(),s.TgZ(12,"span",12,13),s.NdJ("cdkObserveContent",function(){return Y._onLabelTextChange()}),s.TgZ(14,"span",14),s._uU(15,"\xa0"),s.qZA(),s.Hsn(16),s.qZA(),s.qZA()),2&z){var se=s.MAs(1),X=s.MAs(13);s.uIk("for",Y.inputId),s.xp6(2),s.ekj("mat-checkbox-inner-container-no-side-margin",!X.textContent||!X.textContent.trim()),s.xp6(1),s.Q6J("id",Y.inputId)("required",Y.required)("checked",Y.checked)("disabled",Y.disabled)("tabIndex",Y.tabIndex),s.uIk("value",Y.value)("name",Y.name)("aria-label",Y.ariaLabel||null)("aria-labelledby",Y.ariaLabelledby)("aria-checked",Y._getAriaChecked())("aria-describedby",Y.ariaDescribedby),s.xp6(2),s.Q6J("matRippleTrigger",se)("matRippleDisabled",Y._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",s.VKq(19,j,"NoopAnimations"===Y._animationMode?0:150))}},directives:[f.wG,I.wD],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),R}(),V=function(){var R=(0,e.Z)(function r(){(0,p.Z)(this,r)});return R.\u0275fac=function(z){return new(z||R)},R.\u0275mod=s.oAB({type:R}),R.\u0275inj=s.cJS({}),R}(),ue=function(){var R=(0,e.Z)(function r(){(0,p.Z)(this,r)});return R.\u0275fac=function(z){return new(z||R)},R.\u0275mod=s.oAB({type:R}),R.\u0275inj=s.cJS({imports:[[f.si,f.BQ,I.Q8,V],f.BQ,V]}),R}()},81196:function(dt,K,n){"use strict";n.d(K,{HS:function(){return ne},oH:function(){return Ee},qn:function(){return qt},qH:function(){return ve},Hi:function(){return Rt}});var P=n(86170),t=n(35488),e=n(24582),p=n(7318),d=n(48047),s=n(78069),h=n(75939),f=n(76442),T=n(1130),B=n(76484),I=n(36362),v=n(57481),j=n(50253),Q=n(36646),J=n(59295),Z=n(68951),A=n(44874),N=n(14390),E=n(84128),k=n(89502),q=n(90587),ce=n(44770),ie=n(51588),H=["*"],ue=new f.OlP("MatChipRemove"),R=new f.OlP("MatChipAvatar"),r=new f.OlP("MatChipTrailingIcon"),Y=(0,T.sb)((0,T.pj)((0,T.Kr)((0,d.Z)(function it(Qe){(0,s.Z)(this,it),this._elementRef=Qe})),"primary"),-1),ne=function(){var it=function(Qe){(0,e.Z)(tt,Qe);var ot=(0,p.Z)(tt);function tt(xe,$e,Ge,ct,Xe,Te,vt,qe){var je;return(0,s.Z)(this,tt),(je=ot.call(this,xe))._ngZone=$e,je._changeDetectorRef=Xe,je._hasFocus=!1,je.chipListSelectable=!0,je._chipListMultiple=!1,je._chipListDisabled=!1,je._selected=!1,je._selectable=!0,je._disabled=!1,je._removable=!0,je._onFocus=new j.x,je._onBlur=new j.x,je.selectionChange=new f.vpe,je.destroyed=new f.vpe,je.removed=new f.vpe,je._addHostClassName(),je._chipRippleTarget=Te.createElement("div"),je._chipRippleTarget.classList.add("mat-chip-ripple"),je._elementRef.nativeElement.appendChild(je._chipRippleTarget),je._chipRipple=new T.IR((0,t.Z)(je),$e,je._chipRippleTarget,Ge),je._chipRipple.setupTriggerEvents(xe),je.rippleConfig=ct||{},je._animationsDisabled="NoopAnimations"===vt,je.tabIndex=null!=qe&&parseInt(qe)||-1,je}return(0,d.Z)(tt,[{key:"rippleDisabled",get:function(){return this.disabled||this.disableRipple||this._animationsDisabled||!!this.rippleConfig.disabled}},{key:"selected",get:function(){return this._selected},set:function($e){var Ge=(0,B.Ig)($e);Ge!==this._selected&&(this._selected=Ge,this._dispatchSelectionChange())}},{key:"value",get:function(){return void 0!==this._value?this._value:this._elementRef.nativeElement.textContent},set:function($e){this._value=$e}},{key:"selectable",get:function(){return this._selectable&&this.chipListSelectable},set:function($e){this._selectable=(0,B.Ig)($e)}},{key:"disabled",get:function(){return this._chipListDisabled||this._disabled},set:function($e){this._disabled=(0,B.Ig)($e)}},{key:"removable",get:function(){return this._removable},set:function($e){this._removable=(0,B.Ig)($e)}},{key:"ariaSelected",get:function(){return this.selectable&&(this._chipListMultiple||this.selected)?this.selected.toString():null}},{key:"_addHostClassName",value:function(){var $e="mat-basic-chip",Ge=this._elementRef.nativeElement;Ge.hasAttribute($e)||Ge.tagName.toLowerCase()===$e?Ge.classList.add($e):Ge.classList.add("mat-standard-chip")}},{key:"ngOnDestroy",value:function(){this.destroyed.emit({chip:this}),this._chipRipple._removeTriggerEvents()}},{key:"select",value:function(){this._selected||(this._selected=!0,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}},{key:"deselect",value:function(){this._selected&&(this._selected=!1,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}},{key:"selectViaInteraction",value:function(){this._selected||(this._selected=!0,this._dispatchSelectionChange(!0),this._changeDetectorRef.markForCheck())}},{key:"toggleSelected",value:function(){var $e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this._selected=!this.selected,this._dispatchSelectionChange($e),this._changeDetectorRef.markForCheck(),this.selected}},{key:"focus",value:function(){this._hasFocus||(this._elementRef.nativeElement.focus(),this._onFocus.next({chip:this})),this._hasFocus=!0}},{key:"remove",value:function(){this.removable&&this.removed.emit({chip:this})}},{key:"_handleClick",value:function($e){this.disabled&&$e.preventDefault()}},{key:"_handleKeydown",value:function($e){if(!this.disabled)switch($e.keyCode){case h.yY:case h.ZH:this.remove(),$e.preventDefault();break;case h.L_:this.selectable&&this.toggleSelected(!0),$e.preventDefault()}}},{key:"_blur",value:function(){var $e=this;this._ngZone.onStable.pipe((0,J.q)(1)).subscribe(function(){$e._ngZone.run(function(){$e._hasFocus=!1,$e._onBlur.next({chip:$e})})})}},{key:"_dispatchSelectionChange",value:function(){var $e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.selectionChange.emit({source:this,isUserInput:$e,selected:this._selected})}}]),tt}(Y);return it.\u0275fac=function(ot){return new(ot||it)(f.Y36(f.SBq),f.Y36(f.R0b),f.Y36(N.t4),f.Y36(T.Y2,8),f.Y36(f.sBO),f.Y36(I.K0),f.Y36(v.Qb,8),f.$8M("tabindex"))},it.\u0275dir=f.lG2({type:it,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(ot,tt,xe){var $e;1&ot&&(f.Suo(xe,R,5),f.Suo(xe,r,5),f.Suo(xe,ue,5)),2&ot&&(f.iGM($e=f.CRH())&&(tt.avatar=$e.first),f.iGM($e=f.CRH())&&(tt.trailingIcon=$e.first),f.iGM($e=f.CRH())&&(tt.removeIcon=$e.first))},hostAttrs:["role","option",1,"mat-chip","mat-focus-indicator"],hostVars:14,hostBindings:function(ot,tt){1&ot&&f.NdJ("click",function($e){return tt._handleClick($e)})("keydown",function($e){return tt._handleKeydown($e)})("focus",function(){return tt.focus()})("blur",function(){return tt._blur()}),2&ot&&(f.uIk("tabindex",tt.disabled?null:tt.tabIndex)("disabled",tt.disabled||null)("aria-disabled",tt.disabled.toString())("aria-selected",tt.ariaSelected),f.ekj("mat-chip-selected",tt.selected)("mat-chip-with-avatar",tt.avatar)("mat-chip-with-trailing-icon",tt.trailingIcon||tt.removeIcon)("mat-chip-disabled",tt.disabled)("_mat-animation-noopable",tt._animationsDisabled))},inputs:{color:"color",disableRipple:"disableRipple",tabIndex:"tabIndex",selected:"selected",value:"value",selectable:"selectable",disabled:"disabled",removable:"removable"},outputs:{selectionChange:"selectionChange",destroyed:"destroyed",removed:"removed"},exportAs:["matChip"],features:[f.qOj]}),it}(),ve=function(){var it=function(){function Qe(ot,tt){(0,s.Z)(this,Qe),this._parentChip=ot,"BUTTON"===tt.nativeElement.nodeName&&tt.nativeElement.setAttribute("type","button")}return(0,d.Z)(Qe,[{key:"_handleClick",value:function(tt){var xe=this._parentChip;xe.removable&&!xe.disabled&&xe.remove(),tt.stopPropagation()}}]),Qe}();return it.\u0275fac=function(ot){return new(ot||it)(f.Y36(ne),f.Y36(f.SBq))},it.\u0275dir=f.lG2({type:it,selectors:[["","matChipRemove",""]],hostAttrs:[1,"mat-chip-remove","mat-chip-trailing-icon"],hostBindings:function(ot,tt){1&ot&&f.NdJ("click",function($e){return tt._handleClick($e)})},features:[f._Bn([{provide:ue,useExisting:it}])]}),it}(),Re=new f.OlP("mat-chips-default-options"),Ie=0,Ee=function(){var it=function(){function Qe(ot,tt){(0,s.Z)(this,Qe),this._elementRef=ot,this._defaultOptions=tt,this.focused=!1,this._addOnBlur=!1,this.separatorKeyCodes=this._defaultOptions.separatorKeyCodes,this.chipEnd=new f.vpe,this.placeholder="",this.id="mat-chip-list-input-".concat(Ie++),this._disabled=!1,this.inputElement=this._elementRef.nativeElement}return(0,d.Z)(Qe,[{key:"chipList",set:function(tt){tt&&(this._chipList=tt,this._chipList.registerInput(this))}},{key:"addOnBlur",get:function(){return this._addOnBlur},set:function(tt){this._addOnBlur=(0,B.Ig)(tt)}},{key:"disabled",get:function(){return this._disabled||this._chipList&&this._chipList.disabled},set:function(tt){this._disabled=(0,B.Ig)(tt)}},{key:"empty",get:function(){return!this.inputElement.value}},{key:"ngOnChanges",value:function(){this._chipList.stateChanges.next()}},{key:"ngOnDestroy",value:function(){this.chipEnd.complete()}},{key:"ngAfterContentInit",value:function(){this._focusLastChipOnBackspace=this.empty}},{key:"_keydown",value:function(tt){if(tt){if(tt.keyCode===h.Mf&&!(0,h.Vb)(tt,"shiftKey")&&this._chipList._allowFocusEscape(),tt.keyCode===h.ZH&&this._focusLastChipOnBackspace)return this._chipList._keyManager.setLastItemActive(),void tt.preventDefault();this._focusLastChipOnBackspace=!1}this._emitChipEnd(tt)}},{key:"_keyup",value:function(tt){!this._focusLastChipOnBackspace&&tt.keyCode===h.ZH&&this.empty&&(this._focusLastChipOnBackspace=!0,tt.preventDefault())}},{key:"_blur",value:function(){this.addOnBlur&&this._emitChipEnd(),this.focused=!1,this._chipList.focused||this._chipList._blur(),this._chipList.stateChanges.next()}},{key:"_focus",value:function(){this.focused=!0,this._focusLastChipOnBackspace=this.empty,this._chipList.stateChanges.next()}},{key:"_emitChipEnd",value:function(tt){!this.inputElement.value&&!!tt&&this._chipList._keydown(tt),(!tt||this._isSeparatorKey(tt))&&(this.chipEnd.emit({input:this.inputElement,value:this.inputElement.value,chipInput:this}),null==tt||tt.preventDefault())}},{key:"_onInput",value:function(){this._chipList.stateChanges.next()}},{key:"focus",value:function(tt){this.inputElement.focus(tt)}},{key:"clear",value:function(){this.inputElement.value="",this._focusLastChipOnBackspace=!0}},{key:"_isSeparatorKey",value:function(tt){return!(0,h.Vb)(tt)&&new Set(this.separatorKeyCodes).has(tt.keyCode)}}]),Qe}();return it.\u0275fac=function(ot){return new(ot||it)(f.Y36(f.SBq),f.Y36(Re))},it.\u0275dir=f.lG2({type:it,selectors:[["input","matChipInputFor",""]],hostAttrs:[1,"mat-chip-input","mat-input-element"],hostVars:5,hostBindings:function(ot,tt){1&ot&&f.NdJ("keydown",function($e){return tt._keydown($e)})("keyup",function($e){return tt._keyup($e)})("blur",function(){return tt._blur()})("focus",function(){return tt._focus()})("input",function(){return tt._onInput()}),2&ot&&(f.Ikx("id",tt.id),f.uIk("disabled",tt.disabled||null)("placeholder",tt.placeholder||null)("aria-invalid",tt._chipList&&tt._chipList.ngControl?tt._chipList.ngControl.invalid:null)("aria-required",tt._chipList&&tt._chipList.required||null))},inputs:{chipList:["matChipInputFor","chipList"],addOnBlur:["matChipInputAddOnBlur","addOnBlur"],separatorKeyCodes:["matChipInputSeparatorKeyCodes","separatorKeyCodes"],placeholder:"placeholder",id:"id",disabled:"disabled"},outputs:{chipEnd:"matChipInputTokenEnd"},exportAs:["matChipInput","matChipInputFor"],features:[f.TTD]}),it}(),ge=(0,T.FD)(function(){return(0,d.Z)(function it(Qe,ot,tt,xe){(0,s.Z)(this,it),this._defaultErrorStateMatcher=Qe,this._parentForm=ot,this._parentFormGroup=tt,this.ngControl=xe})}()),_t=0,wt=(0,d.Z)(function it(Qe,ot){(0,s.Z)(this,it),this.source=Qe,this.value=ot}),qt=function(){var it=function(Qe){(0,e.Z)(tt,Qe);var ot=(0,p.Z)(tt);function tt(xe,$e,Ge,ct,Xe,Te,vt){var qe;return(0,s.Z)(this,tt),(qe=ot.call(this,Te,ct,Xe,vt))._elementRef=xe,qe._changeDetectorRef=$e,qe._dir=Ge,qe.controlType="mat-chip-list",qe._lastDestroyedChipIndex=null,qe._destroyed=new j.x,qe._uid="mat-chip-list-".concat(_t++),qe._tabIndex=0,qe._userTabIndex=null,qe._onTouched=function(){},qe._onChange=function(){},qe._multiple=!1,qe._compareWith=function(je,Nt){return je===Nt},qe._disabled=!1,qe.ariaOrientation="horizontal",qe._selectable=!0,qe.change=new f.vpe,qe.valueChange=new f.vpe,qe.ngControl&&(qe.ngControl.valueAccessor=(0,t.Z)(qe)),qe}return(0,d.Z)(tt,[{key:"selected",get:function(){var $e,Ge;return this.multiple?(null===($e=this._selectionModel)||void 0===$e?void 0:$e.selected)||[]:null===(Ge=this._selectionModel)||void 0===Ge?void 0:Ge.selected[0]}},{key:"role",get:function(){return this.empty?null:"listbox"}},{key:"multiple",get:function(){return this._multiple},set:function($e){this._multiple=(0,B.Ig)($e),this._syncChipsState()}},{key:"compareWith",get:function(){return this._compareWith},set:function($e){this._compareWith=$e,this._selectionModel&&this._initializeSelection()}},{key:"value",get:function(){return this._value},set:function($e){this.writeValue($e),this._value=$e}},{key:"id",get:function(){return this._chipInput?this._chipInput.id:this._uid}},{key:"required",get:function(){var $e,Ge,ct,Xe;return null!==(Xe=null!==($e=this._required)&&void 0!==$e?$e:null===(ct=null===(Ge=this.ngControl)||void 0===Ge?void 0:Ge.control)||void 0===ct?void 0:ct.hasValidator(q.kI.required))&&void 0!==Xe&&Xe},set:function($e){this._required=(0,B.Ig)($e),this.stateChanges.next()}},{key:"placeholder",get:function(){return this._chipInput?this._chipInput.placeholder:this._placeholder},set:function($e){this._placeholder=$e,this.stateChanges.next()}},{key:"focused",get:function(){return this._chipInput&&this._chipInput.focused||this._hasFocusedChip()}},{key:"empty",get:function(){return(!this._chipInput||this._chipInput.empty)&&(!this.chips||0===this.chips.length)}},{key:"shouldLabelFloat",get:function(){return!this.empty||this.focused}},{key:"disabled",get:function(){return this.ngControl?!!this.ngControl.disabled:this._disabled},set:function($e){this._disabled=(0,B.Ig)($e),this._syncChipsState()}},{key:"selectable",get:function(){return this._selectable},set:function($e){var Ge=this;this._selectable=(0,B.Ig)($e),this.chips&&this.chips.forEach(function(ct){return ct.chipListSelectable=Ge._selectable})}},{key:"tabIndex",set:function($e){this._userTabIndex=$e,this._tabIndex=$e}},{key:"chipSelectionChanges",get:function(){return Q.T.apply(void 0,(0,P.Z)(this.chips.map(function($e){return $e.selectionChange})))}},{key:"chipFocusChanges",get:function(){return Q.T.apply(void 0,(0,P.Z)(this.chips.map(function($e){return $e._onFocus})))}},{key:"chipBlurChanges",get:function(){return Q.T.apply(void 0,(0,P.Z)(this.chips.map(function($e){return $e._onBlur})))}},{key:"chipRemoveChanges",get:function(){return Q.T.apply(void 0,(0,P.Z)(this.chips.map(function($e){return $e.destroyed})))}},{key:"ngAfterContentInit",value:function(){var $e=this;this._keyManager=new E.Em(this.chips).withWrap().withVerticalOrientation().withHomeAndEnd().withHorizontalOrientation(this._dir?this._dir.value:"ltr"),this._dir&&this._dir.change.pipe((0,Z.R)(this._destroyed)).subscribe(function(Ge){return $e._keyManager.withHorizontalOrientation(Ge)}),this._keyManager.tabOut.pipe((0,Z.R)(this._destroyed)).subscribe(function(){$e._allowFocusEscape()}),this.chips.changes.pipe((0,A.O)(null),(0,Z.R)(this._destroyed)).subscribe(function(){$e.disabled&&Promise.resolve().then(function(){$e._syncChipsState()}),$e._resetChips(),$e._initializeSelection(),$e._updateTabIndex(),$e._updateFocusForDestroyedChips(),$e.stateChanges.next()})}},{key:"ngOnInit",value:function(){this._selectionModel=new k.Ov(this.multiple,void 0,!1),this.stateChanges.next()}},{key:"ngDoCheck",value:function(){this.ngControl&&(this.updateErrorState(),this.ngControl.disabled!==this._disabled&&(this.disabled=!!this.ngControl.disabled))}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete(),this.stateChanges.complete(),this._dropSubscriptions()}},{key:"registerInput",value:function($e){this._chipInput=$e,this._elementRef.nativeElement.setAttribute("data-mat-chip-input",$e.id)}},{key:"setDescribedByIds",value:function($e){this._ariaDescribedby=$e.join(" ")}},{key:"writeValue",value:function($e){this.chips&&this._setSelectionByValue($e,!1)}},{key:"registerOnChange",value:function($e){this._onChange=$e}},{key:"registerOnTouched",value:function($e){this._onTouched=$e}},{key:"setDisabledState",value:function($e){this.disabled=$e,this.stateChanges.next()}},{key:"onContainerClick",value:function($e){this._originatesFromChip($e)||this.focus()}},{key:"focus",value:function($e){this.disabled||this._chipInput&&this._chipInput.focused||(this.chips.length>0?(this._keyManager.setFirstItemActive(),this.stateChanges.next()):(this._focusInput($e),this.stateChanges.next()))}},{key:"_focusInput",value:function($e){this._chipInput&&this._chipInput.focus($e)}},{key:"_keydown",value:function($e){var Ge=$e.target;Ge&&Ge.classList.contains("mat-chip")&&(this._keyManager.onKeydown($e),this.stateChanges.next())}},{key:"_updateTabIndex",value:function(){this._tabIndex=this._userTabIndex||(0===this.chips.length?-1:0)}},{key:"_updateFocusForDestroyedChips",value:function(){if(null!=this._lastDestroyedChipIndex)if(this.chips.length){var $e=Math.min(this._lastDestroyedChipIndex,this.chips.length-1);this._keyManager.setActiveItem($e)}else this.focus();this._lastDestroyedChipIndex=null}},{key:"_isValidIndex",value:function($e){return $e>=0&&$e1&&void 0!==arguments[1])||arguments[1];if(this._clearSelection(),this.chips.forEach(function(Te){return Te.deselect()}),Array.isArray($e))$e.forEach(function(Te){return Ge._selectValue(Te,ct)}),this._sortValues();else{var Xe=this._selectValue($e,ct);Xe&&ct&&this._keyManager.setActiveItem(Xe)}}},{key:"_selectValue",value:function($e){var Ge=this,ct=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],Xe=this.chips.find(function(Te){return null!=Te.value&&Ge._compareWith(Te.value,$e)});return Xe&&(ct?Xe.selectViaInteraction():Xe.select(),this._selectionModel.select(Xe)),Xe}},{key:"_initializeSelection",value:function(){var $e=this;Promise.resolve().then(function(){($e.ngControl||$e._value)&&($e._setSelectionByValue($e.ngControl?$e.ngControl.value:$e._value,!1),$e.stateChanges.next())})}},{key:"_clearSelection",value:function($e){this._selectionModel.clear(),this.chips.forEach(function(Ge){Ge!==$e&&Ge.deselect()}),this.stateChanges.next()}},{key:"_sortValues",value:function(){var $e=this;this._multiple&&(this._selectionModel.clear(),this.chips.forEach(function(Ge){Ge.selected&&$e._selectionModel.select(Ge)}),this.stateChanges.next())}},{key:"_propagateChanges",value:function($e){var Ge;Ge=Array.isArray(this.selected)?this.selected.map(function(ct){return ct.value}):this.selected?this.selected.value:$e,this._value=Ge,this.change.emit(new wt(this,Ge)),this.valueChange.emit(Ge),this._onChange(Ge),this._changeDetectorRef.markForCheck()}},{key:"_blur",value:function(){var $e=this;this._hasFocusedChip()||this._keyManager.setActiveItem(-1),this.disabled||(this._chipInput?setTimeout(function(){$e.focused||$e._markAsTouched()}):this._markAsTouched())}},{key:"_markAsTouched",value:function(){this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next()}},{key:"_allowFocusEscape",value:function(){var $e=this;-1!==this._tabIndex&&(this._tabIndex=-1,setTimeout(function(){$e._tabIndex=$e._userTabIndex||0,$e._changeDetectorRef.markForCheck()}))}},{key:"_resetChips",value:function(){this._dropSubscriptions(),this._listenToChipsFocus(),this._listenToChipsSelection(),this._listenToChipsRemoved()}},{key:"_dropSubscriptions",value:function(){this._chipFocusSubscription&&(this._chipFocusSubscription.unsubscribe(),this._chipFocusSubscription=null),this._chipBlurSubscription&&(this._chipBlurSubscription.unsubscribe(),this._chipBlurSubscription=null),this._chipSelectionSubscription&&(this._chipSelectionSubscription.unsubscribe(),this._chipSelectionSubscription=null),this._chipRemoveSubscription&&(this._chipRemoveSubscription.unsubscribe(),this._chipRemoveSubscription=null)}},{key:"_listenToChipsSelection",value:function(){var $e=this;this._chipSelectionSubscription=this.chipSelectionChanges.subscribe(function(Ge){Ge.source.selected?$e._selectionModel.select(Ge.source):$e._selectionModel.deselect(Ge.source),$e.multiple||$e.chips.forEach(function(ct){!$e._selectionModel.isSelected(ct)&&ct.selected&&ct.deselect()}),Ge.isUserInput&&$e._propagateChanges()})}},{key:"_listenToChipsFocus",value:function(){var $e=this;this._chipFocusSubscription=this.chipFocusChanges.subscribe(function(Ge){var ct=$e.chips.toArray().indexOf(Ge.chip);$e._isValidIndex(ct)&&$e._keyManager.updateActiveItem(ct),$e.stateChanges.next()}),this._chipBlurSubscription=this.chipBlurChanges.subscribe(function(){$e._blur(),$e.stateChanges.next()})}},{key:"_listenToChipsRemoved",value:function(){var $e=this;this._chipRemoveSubscription=this.chipRemoveChanges.subscribe(function(Ge){var ct=Ge.chip,Xe=$e.chips.toArray().indexOf(Ge.chip);$e._isValidIndex(Xe)&&ct._hasFocus&&($e._lastDestroyedChipIndex=Xe)})}},{key:"_originatesFromChip",value:function($e){for(var Ge=$e.target;Ge&&Ge!==this._elementRef.nativeElement;){if(Ge.classList.contains("mat-chip"))return!0;Ge=Ge.parentElement}return!1}},{key:"_hasFocusedChip",value:function(){return this.chips&&this.chips.some(function($e){return $e._hasFocus})}},{key:"_syncChipsState",value:function(){var $e=this;this.chips&&this.chips.forEach(function(Ge){Ge._chipListDisabled=$e._disabled,Ge._chipListMultiple=$e.multiple})}}]),tt}(ge);return it.\u0275fac=function(ot){return new(ot||it)(f.Y36(f.SBq),f.Y36(f.sBO),f.Y36(ie.Is,8),f.Y36(q.F,8),f.Y36(q.sg,8),f.Y36(T.rD),f.Y36(q.a5,10))},it.\u0275cmp=f.Xpm({type:it,selectors:[["mat-chip-list"]],contentQueries:function(ot,tt,xe){var $e;1&ot&&f.Suo(xe,ne,5),2&ot&&f.iGM($e=f.CRH())&&(tt.chips=$e)},hostAttrs:[1,"mat-chip-list"],hostVars:15,hostBindings:function(ot,tt){1&ot&&f.NdJ("focus",function(){return tt.focus()})("blur",function(){return tt._blur()})("keydown",function($e){return tt._keydown($e)}),2&ot&&(f.Ikx("id",tt._uid),f.uIk("tabindex",tt.disabled?null:tt._tabIndex)("aria-describedby",tt._ariaDescribedby||null)("aria-required",tt.role?tt.required:null)("aria-disabled",tt.disabled.toString())("aria-invalid",tt.errorState)("aria-multiselectable",tt.multiple)("role",tt.role)("aria-orientation",tt.ariaOrientation),f.ekj("mat-chip-list-disabled",tt.disabled)("mat-chip-list-invalid",tt.errorState)("mat-chip-list-required",tt.required))},inputs:{errorStateMatcher:"errorStateMatcher",multiple:"multiple",compareWith:"compareWith",value:"value",required:"required",placeholder:"placeholder",disabled:"disabled",ariaOrientation:["aria-orientation","ariaOrientation"],selectable:"selectable",tabIndex:"tabIndex"},outputs:{change:"change",valueChange:"valueChange"},exportAs:["matChipList"],features:[f._Bn([{provide:ce.Eo,useExisting:it}]),f.qOj],ngContentSelectors:H,decls:2,vars:0,consts:[[1,"mat-chip-list-wrapper"]],template:function(ot,tt){1&ot&&(f.F$t(),f.TgZ(0,"div",0),f.Hsn(1),f.qZA())},styles:['.mat-chip{position:relative;box-sizing:border-box;-webkit-tap-highlight-color:transparent;transform:translateZ(0);border:none;-webkit-appearance:none;-moz-appearance:none}.mat-standard-chip{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:inline-flex;padding:7px 12px;border-radius:16px;align-items:center;cursor:default;min-height:32px;height:1px}._mat-animation-noopable.mat-standard-chip{transition:none;animation:none}.mat-standard-chip .mat-chip-remove{border:none;-webkit-appearance:none;-moz-appearance:none;padding:0;background:none}.mat-standard-chip .mat-chip-remove.mat-icon,.mat-standard-chip .mat-chip-remove .mat-icon{width:18px;height:18px;font-size:18px}.mat-standard-chip::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;opacity:0;content:"";pointer-events:none;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-standard-chip:hover::after{opacity:.12}.mat-standard-chip:focus{outline:none}.mat-standard-chip:focus::after{opacity:.16}.cdk-high-contrast-active .mat-standard-chip{outline:solid 1px}.cdk-high-contrast-active .mat-standard-chip:focus{outline:dotted 2px}.cdk-high-contrast-active .mat-standard-chip.mat-chip-selected{outline-width:3px}.mat-standard-chip.mat-chip-disabled::after{opacity:0}.mat-standard-chip.mat-chip-disabled .mat-chip-remove,.mat-standard-chip.mat-chip-disabled .mat-chip-trailing-icon{cursor:default}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar,.mat-standard-chip.mat-chip-with-avatar{padding-top:0;padding-bottom:0}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-right:8px;padding-left:0}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-left:8px;padding-right:0}.mat-standard-chip.mat-chip-with-trailing-icon{padding-top:7px;padding-bottom:7px;padding-right:8px;padding-left:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon{padding-left:8px;padding-right:12px}.mat-standard-chip.mat-chip-with-avatar{padding-left:0;padding-right:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-avatar{padding-right:0;padding-left:12px}.mat-standard-chip .mat-chip-avatar{width:24px;height:24px;margin-right:8px;margin-left:4px}[dir=rtl] .mat-standard-chip .mat-chip-avatar{margin-left:8px;margin-right:4px}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{width:18px;height:18px;cursor:pointer}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{margin-left:8px;margin-right:0}[dir=rtl] .mat-standard-chip .mat-chip-remove,[dir=rtl] .mat-standard-chip .mat-chip-trailing-icon{margin-right:8px;margin-left:0}.mat-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit;overflow:hidden}.mat-chip-list-wrapper{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;margin:-4px}.mat-chip-list-wrapper input.mat-input-element,.mat-chip-list-wrapper .mat-standard-chip{margin:4px}.mat-chip-list-stacked .mat-chip-list-wrapper{flex-direction:column;align-items:flex-start}.mat-chip-list-stacked .mat-chip-list-wrapper .mat-standard-chip{width:100%}.mat-chip-avatar{border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden;object-fit:cover}input.mat-chip-input{width:150px;margin:4px;flex:1 0 150px}\n'],encapsulation:2,changeDetection:0}),it}(),Rt=function(){var it=(0,d.Z)(function Qe(){(0,s.Z)(this,Qe)});return it.\u0275fac=function(ot){return new(ot||it)},it.\u0275mod=f.oAB({type:it}),it.\u0275inj=f.cJS({providers:[T.rD,{provide:Re,useValue:{separatorKeyCodes:[h.K5]}}],imports:[[T.BQ]]}),it}()},1130:function(dt,K,n){"use strict";n.d(K,{yN:function(){return ue},mZ:function(){return R},_A:function(){return Lt},rD:function(){return ct},sG:function(){return Rt},K7:function(){return Tn},HF:function(){return gt},Y2:function(){return we},BQ:function(){return Y},X2:function(){return Xe},uc:function(){return qe},XK:function(){return $e},ey:function(){return fi},Ng:function(){return jt},rN:function(){return Un},nP:function(){return Ae},us:function(){return ft},wG:function(){return _e},si:function(){return $},IR:function(){return ut},CB:function(){return rn},jH:function(){return sn},pj:function(){return Re},Kr:function(){return Ie},Id:function(){return ve},FD:function(){return ge},dB:function(){return _t},sb:function(){return Ee},E0:function(){return Te}});var P=n(35488),t=n(4089),e=n(20265),p=n(24582),d=n(7318),s=n(48047),h=n(78069),f=n(76442),T=n(51588),I=n(36362),v=n(14390),j=n(84128),Q=n(76484),J=n(50253),Z=n(83336),A=n(44874),N=n(57481),E=n(75939);function ce(Ue,et){if(1&Ue&&f._UZ(0,"mat-pseudo-checkbox",4),2&Ue){var De=f.oxw();f.Q6J("state",De.selected?"checked":"unchecked")("disabled",De.disabled)}}function ie(Ue,et){if(1&Ue&&(f.TgZ(0,"span",5),f._uU(1),f.qZA()),2&Ue){var De=f.oxw();f.xp6(1),f.hij("(",De.group.label,")")}}var H=["*"],ue=function(){var Ue=(0,s.Z)(function et(){(0,h.Z)(this,et)});return Ue.STANDARD_CURVE="cubic-bezier(0.4,0.0,0.2,1)",Ue.DECELERATION_CURVE="cubic-bezier(0.0,0.0,0.2,1)",Ue.ACCELERATION_CURVE="cubic-bezier(0.4,0.0,1,1)",Ue.SHARP_CURVE="cubic-bezier(0.4,0.0,0.6,1)",Ue}(),R=function(){var Ue=(0,s.Z)(function et(){(0,h.Z)(this,et)});return Ue.COMPLEX="375ms",Ue.ENTERING="225ms",Ue.EXITING="195ms",Ue}(),z=new f.OlP("mat-sanity-checks",{providedIn:"root",factory:function r(){return!0}}),Y=function(){var Ue=function(){function et(De,Ze,Je){(0,h.Z)(this,et),this._sanityChecks=Ze,this._document=Je,this._hasDoneGlobalChecks=!1,De._applyBodyHighContrastModeCssClasses(),this._hasDoneGlobalChecks||(this._hasDoneGlobalChecks=!0)}return(0,s.Z)(et,[{key:"_checkIsEnabled",value:function(Ze){return!(0,v.Oy)()&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[Ze])}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(f.LFG(j.qm),f.LFG(z,8),f.LFG(I.K0))},Ue.\u0275mod=f.oAB({type:Ue}),Ue.\u0275inj=f.cJS({imports:[[T.vT],T.vT]}),Ue}();function ve(Ue){return function(et){(0,p.Z)(Ze,et);var De=(0,d.Z)(Ze);function Ze(){var Je;(0,h.Z)(this,Ze);for(var Ve=arguments.length,pt=new Array(Ve),kt=0;kt1&&void 0!==arguments[1]?arguments[1]:0;return function(De){(0,p.Z)(Je,De);var Ze=(0,d.Z)(Je);function Je(){var Ve;(0,h.Z)(this,Je);for(var pt=arguments.length,kt=new Array(pt),en=0;en0?Je:De}}]),Ue}(),Rt=new f.OlP("mat-date-formats"),it=/^\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))?)?$/;function Qe(Ue,et){for(var De=Array(Ue),Ze=0;Ze2&&void 0!==arguments[2]?arguments[2]:"mat";Ue.changes.pipe((0,A.O)(Ue)).subscribe(function(Ze){var Je=Ze.length;vt(et,"".concat(De,"-2-line"),!1),vt(et,"".concat(De,"-3-line"),!1),vt(et,"".concat(De,"-multi-line"),!1),2===Je||3===Je?vt(et,"".concat(De,"-").concat(Je,"-line"),!0):Je>3&&vt(et,"".concat(De,"-multi-line"),!0)})}function vt(Ue,et,De){Ue.nativeElement.classList.toggle(et,De)}var qe=function(){var Ue=(0,s.Z)(function et(){(0,h.Z)(this,et)});return Ue.\u0275fac=function(De){return new(De||Ue)},Ue.\u0275mod=f.oAB({type:Ue}),Ue.\u0275inj=f.cJS({imports:[[Y],Y]}),Ue}(),je=function(){function Ue(et,De,Ze){(0,h.Z)(this,Ue),this._renderer=et,this.element=De,this.config=Ze,this.state=3}return(0,s.Z)(Ue,[{key:"fadeOut",value:function(){this._renderer.fadeOutRipple(this)}}]),Ue}(),Nt={enterDuration:225,exitDuration:150},bt=(0,v.i$)({passive:!0}),St=["mousedown","touchstart"],Pt=["mouseup","mouseleave","touchend","touchcancel"],ut=function(){function Ue(et,De,Ze,Je){(0,h.Z)(this,Ue),this._target=et,this._ngZone=De,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,Je.isBrowser&&(this._containerElement=(0,Q.fI)(Ze))}return(0,s.Z)(Ue,[{key:"fadeInRipple",value:function(De,Ze){var Je=this,Ve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},pt=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),kt=Object.assign(Object.assign({},Nt),Ve.animation);Ve.centered&&(De=pt.left+pt.width/2,Ze=pt.top+pt.height/2);var en=Ve.radius||be(De,Ze,pt),Zn=De-pt.left,zt=Ze-pt.top,un=kt.enterDuration,tn=document.createElement("div");tn.classList.add("mat-ripple-element"),tn.style.left="".concat(Zn-en,"px"),tn.style.top="".concat(zt-en,"px"),tn.style.height="".concat(2*en,"px"),tn.style.width="".concat(2*en,"px"),null!=Ve.color&&(tn.style.backgroundColor=Ve.color),tn.style.transitionDuration="".concat(un,"ms"),this._containerElement.appendChild(tn),yt(tn),tn.style.transform="scale(1)";var ln=new je(this,tn,Ve);return ln.state=0,this._activeRipples.add(ln),Ve.persistent||(this._mostRecentTransientRipple=ln),this._runTimeoutOutsideZone(function(){var gn=ln===Je._mostRecentTransientRipple;ln.state=1,!Ve.persistent&&(!gn||!Je._isPointerDown)&&ln.fadeOut()},un),ln}},{key:"fadeOutRipple",value:function(De){var Ze=this._activeRipples.delete(De);if(De===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),Ze){var Je=De.element,Ve=Object.assign(Object.assign({},Nt),De.config.animation);Je.style.transitionDuration="".concat(Ve.exitDuration,"ms"),Je.style.opacity="0",De.state=2,this._runTimeoutOutsideZone(function(){De.state=3,Je.remove()},Ve.exitDuration)}}},{key:"fadeOutAll",value:function(){this._activeRipples.forEach(function(De){return De.fadeOut()})}},{key:"fadeOutAllNonPersistent",value:function(){this._activeRipples.forEach(function(De){De.config.persistent||De.fadeOut()})}},{key:"setupTriggerEvents",value:function(De){var Ze=(0,Q.fI)(De);!Ze||Ze===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=Ze,this._registerEvents(St))}},{key:"handleEvent",value:function(De){"mousedown"===De.type?this._onMousedown(De):"touchstart"===De.type?this._onTouchStart(De):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(Pt),this._pointerUpEventsRegistered=!0)}},{key:"_onMousedown",value:function(De){var Ze=(0,j.X6)(De),Je=this._lastTouchStartEvent&&Date.now()1&&void 0!==arguments[1]?arguments[1]:0;this._ngZone.runOutsideAngular(function(){return setTimeout(De,Ze)})}},{key:"_registerEvents",value:function(De){var Ze=this;this._ngZone.runOutsideAngular(function(){De.forEach(function(Je){Ze._triggerElement.addEventListener(Je,Ze,bt)})})}},{key:"_removeTriggerEvents",value:function(){var De=this;this._triggerElement&&(St.forEach(function(Ze){De._triggerElement.removeEventListener(Ze,De,bt)}),this._pointerUpEventsRegistered&&Pt.forEach(function(Ze){De._triggerElement.removeEventListener(Ze,De,bt)}))}}]),Ue}();function yt(Ue){window.getComputedStyle(Ue).getPropertyValue("opacity")}function be(Ue,et,De){var Ze=Math.max(Math.abs(Ue-De.left),Math.abs(Ue-De.right)),Je=Math.max(Math.abs(et-De.top),Math.abs(et-De.bottom));return Math.sqrt(Ze*Ze+Je*Je)}var we=new f.OlP("mat-ripple-global-options"),_e=function(){var Ue=function(){function et(De,Ze,Je,Ve,pt){(0,h.Z)(this,et),this._elementRef=De,this._animationMode=pt,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=Ve||{},this._rippleRenderer=new ut(this,Ze,De,Je)}return(0,s.Z)(et,[{key:"disabled",get:function(){return this._disabled},set:function(Ze){Ze&&this.fadeOutAllNonPersistent(),this._disabled=Ze,this._setupTriggerEventsIfEnabled()}},{key:"trigger",get:function(){return this._trigger||this._elementRef.nativeElement},set:function(Ze){this._trigger=Ze,this._setupTriggerEventsIfEnabled()}},{key:"ngOnInit",value:function(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}},{key:"ngOnDestroy",value:function(){this._rippleRenderer._removeTriggerEvents()}},{key:"fadeOutAll",value:function(){this._rippleRenderer.fadeOutAll()}},{key:"fadeOutAllNonPersistent",value:function(){this._rippleRenderer.fadeOutAllNonPersistent()}},{key:"rippleConfig",get:function(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}},{key:"rippleDisabled",get:function(){return this.disabled||!!this._globalOptions.disabled}},{key:"_setupTriggerEventsIfEnabled",value:function(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}},{key:"launch",value:function(Ze){var Je=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,Ve=arguments.length>2?arguments[2]:void 0;return"number"==typeof Ze?this._rippleRenderer.fadeInRipple(Ze,Je,Object.assign(Object.assign({},this.rippleConfig),Ve)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),Ze))}}]),et}();return Ue.\u0275fac=function(De){return new(De||Ue)(f.Y36(f.SBq),f.Y36(f.R0b),f.Y36(v.t4),f.Y36(we,8),f.Y36(N.Qb,8))},Ue.\u0275dir=f.lG2({type:Ue,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(De,Ze){2&De&&f.ekj("mat-ripple-unbounded",Ze.unbounded)},inputs:{color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],radius:["matRippleRadius","radius"],animation:["matRippleAnimation","animation"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"]},exportAs:["matRipple"]}),Ue}(),$=function(){var Ue=(0,s.Z)(function et(){(0,h.Z)(this,et)});return Ue.\u0275fac=function(De){return new(De||Ue)},Ue.\u0275mod=f.oAB({type:Ue}),Ue.\u0275inj=f.cJS({imports:[[Y,v.ud],Y]}),Ue}(),Ae=function(){var Ue=(0,s.Z)(function et(De){(0,h.Z)(this,et),this._animationMode=De,this.state="unchecked",this.disabled=!1});return Ue.\u0275fac=function(De){return new(De||Ue)(f.Y36(N.Qb,8))},Ue.\u0275cmp=f.Xpm({type:Ue,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(De,Ze){2&De&&f.ekj("mat-pseudo-checkbox-indeterminate","indeterminate"===Ze.state)("mat-pseudo-checkbox-checked","checked"===Ze.state)("mat-pseudo-checkbox-disabled",Ze.disabled)("_mat-animation-noopable","NoopAnimations"===Ze._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(De,Ze){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),Ue}(),ft=function(){var Ue=(0,s.Z)(function et(){(0,h.Z)(this,et)});return Ue.\u0275fac=function(De){return new(De||Ue)},Ue.\u0275mod=f.oAB({type:Ue}),Ue.\u0275inj=f.cJS({imports:[[Y]]}),Ue}(),gt=new f.OlP("MAT_OPTION_PARENT_COMPONENT"),Tn=new f.OlP("MatOptgroup"),Jn=0,Un=(0,s.Z)(function Ue(et){var De=arguments.length>1&&void 0!==arguments[1]&&arguments[1];(0,h.Z)(this,Ue),this.source=et,this.isUserInput=De}),si=function(){var Ue=function(){function et(De,Ze,Je,Ve){(0,h.Z)(this,et),this._element=De,this._changeDetectorRef=Ze,this._parent=Je,this.group=Ve,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-".concat(Jn++),this.onSelectionChange=new f.vpe,this._stateChanges=new J.x}return(0,s.Z)(et,[{key:"multiple",get:function(){return this._parent&&this._parent.multiple}},{key:"selected",get:function(){return this._selected}},{key:"disabled",get:function(){return this.group&&this.group.disabled||this._disabled},set:function(Ze){this._disabled=(0,Q.Ig)(Ze)}},{key:"disableRipple",get:function(){return!(!this._parent||!this._parent.disableRipple)}},{key:"active",get:function(){return this._active}},{key:"viewValue",get:function(){return(this._getHostElement().textContent||"").trim()}},{key:"select",value:function(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"deselect",value:function(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"focus",value:function(Ze,Je){var Ve=this._getHostElement();"function"==typeof Ve.focus&&Ve.focus(Je)}},{key:"setActiveStyles",value:function(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}},{key:"setInactiveStyles",value:function(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}},{key:"getLabel",value:function(){return this.viewValue}},{key:"_handleKeydown",value:function(Ze){(Ze.keyCode===E.K5||Ze.keyCode===E.L_)&&!(0,E.Vb)(Ze)&&(this._selectViaInteraction(),Ze.preventDefault())}},{key:"_selectViaInteraction",value:function(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}},{key:"_getAriaSelected",value:function(){return this.selected||!this.multiple&&null}},{key:"_getTabIndex",value:function(){return this.disabled?"-1":"0"}},{key:"_getHostElement",value:function(){return this._element.nativeElement}},{key:"ngAfterViewChecked",value:function(){if(this._selected){var Ze=this.viewValue;Ze!==this._mostRecentViewValue&&(this._mostRecentViewValue=Ze,this._stateChanges.next())}}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"_emitSelectionChangeEvent",value:function(){var Ze=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.onSelectionChange.emit(new Un(this,Ze))}}]),et}();return Ue.\u0275fac=function(De){f.$Z()},Ue.\u0275dir=f.lG2({type:Ue,inputs:{value:"value",id:"id",disabled:"disabled"},outputs:{onSelectionChange:"onSelectionChange"}}),Ue}(),fi=function(){var Ue=function(et){(0,p.Z)(Ze,et);var De=(0,d.Z)(Ze);function Ze(Je,Ve,pt,kt){return(0,h.Z)(this,Ze),De.call(this,Je,Ve,pt,kt)}return(0,s.Z)(Ze)}(si);return Ue.\u0275fac=function(De){return new(De||Ue)(f.Y36(f.SBq),f.Y36(f.sBO),f.Y36(gt,8),f.Y36(Tn,8))},Ue.\u0275cmp=f.Xpm({type:Ue,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(De,Ze){1&De&&f.NdJ("click",function(){return Ze._selectViaInteraction()})("keydown",function(Ve){return Ze._handleKeydown(Ve)}),2&De&&(f.Ikx("id",Ze.id),f.uIk("tabindex",Ze._getTabIndex())("aria-selected",Ze._getAriaSelected())("aria-disabled",Ze.disabled.toString()),f.ekj("mat-selected",Ze.selected)("mat-option-multiple",Ze.multiple)("mat-active",Ze.active)("mat-option-disabled",Ze.disabled))},exportAs:["matOption"],features:[f.qOj],ngContentSelectors:H,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(De,Ze){1&De&&(f.F$t(),f.YNc(0,ce,1,2,"mat-pseudo-checkbox",0),f.TgZ(1,"span",1),f.Hsn(2),f.qZA(),f.YNc(3,ie,2,1,"span",2),f._UZ(4,"div",3)),2&De&&(f.Q6J("ngIf",Ze.multiple),f.xp6(3),f.Q6J("ngIf",Ze.group&&Ze.group._inert),f.xp6(1),f.Q6J("matRippleTrigger",Ze._getHostElement())("matRippleDisabled",Ze.disabled||Ze.disableRipple))},directives:[Ae,I.O5,_e],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),Ue}();function rn(Ue,et,De){if(De.length){for(var Ze=et.toArray(),Je=De.toArray(),Ve=0,pt=0;ptDe+Ze?Math.max(0,Ue-Ze+et):De}var jt=function(){var Ue=(0,s.Z)(function et(){(0,h.Z)(this,et)});return Ue.\u0275fac=function(De){return new(De||Ue)},Ue.\u0275mod=f.oAB({type:Ue}),Ue.\u0275inj=f.cJS({imports:[[$,I.ez,Y,ft]]}),Ue}()},5818:function(dt,K,n){"use strict";n.d(K,{Mq:function(){return en},hl:function(){return gn},FA:function(){return ta},nW:function(){return Nn}});var P=n(35488),t=n(4089),e=n(20265),p=n(24582),d=n(7318),s=n(48047),h=n(78069),f=n(84128),T=n(66088),B=n(24476),I=n(36362),v=n(76442),j=n(87317),Q=n(24426),J=n(1130),Z=n(50253),A=n(17714),N=n(36646),E=n(10745),k=n(75939),q=n(59295),ce=n(44874),ie=n(60116),H=n(51588),V=n(76484),ue=n(14390),R=n(31631),r=n(90587),z=n(44770),Y=n(43365),se=["mat-calendar-body",""];function X(fn,yn){if(1&fn&&(v.TgZ(0,"tr",2),v.TgZ(1,"td",3),v._uU(2),v.qZA(),v.qZA()),2&fn){var Ct=v.oxw();v.xp6(1),v.Udp("padding-top",Ct._cellPadding)("padding-bottom",Ct._cellPadding),v.uIk("colspan",Ct.numCols),v.xp6(1),v.hij(" ",Ct.label," ")}}function ne(fn,yn){if(1&fn&&(v.TgZ(0,"td",3),v._uU(1),v.qZA()),2&fn){var Ct=v.oxw(2);v.Udp("padding-top",Ct._cellPadding)("padding-bottom",Ct._cellPadding),v.uIk("colspan",Ct._firstRowOffset),v.xp6(1),v.hij(" ",Ct._firstRowOffset>=Ct.labelMinRequiredCells?Ct.label:""," ")}}function ve(fn,yn){if(1&fn){var Ct=v.EpF();v.TgZ(0,"td",7),v.TgZ(1,"button",8),v.NdJ("click",function(ui){var Ii=v.CHM(Ct).$implicit;return v.oxw(2)._cellClicked(Ii,ui)}),v.TgZ(2,"div",9),v._uU(3),v.qZA(),v._UZ(4,"div",10),v.qZA(),v.qZA()}if(2&fn){var Pe=yn.$implicit,It=yn.index,Jt=v.oxw().index,vn=v.oxw();v.Udp("width",vn._cellWidth)("padding-top",vn._cellPadding)("padding-bottom",vn._cellPadding),v.uIk("data-mat-row",Jt)("data-mat-col",It),v.xp6(1),v.ekj("mat-calendar-body-disabled",!Pe.enabled)("mat-calendar-body-active",vn._isActiveCell(Jt,It))("mat-calendar-body-range-start",vn._isRangeStart(Pe.compareValue))("mat-calendar-body-range-end",vn._isRangeEnd(Pe.compareValue))("mat-calendar-body-in-range",vn._isInRange(Pe.compareValue))("mat-calendar-body-comparison-bridge-start",vn._isComparisonBridgeStart(Pe.compareValue,Jt,It))("mat-calendar-body-comparison-bridge-end",vn._isComparisonBridgeEnd(Pe.compareValue,Jt,It))("mat-calendar-body-comparison-start",vn._isComparisonStart(Pe.compareValue))("mat-calendar-body-comparison-end",vn._isComparisonEnd(Pe.compareValue))("mat-calendar-body-in-comparison-range",vn._isInComparisonRange(Pe.compareValue))("mat-calendar-body-preview-start",vn._isPreviewStart(Pe.compareValue))("mat-calendar-body-preview-end",vn._isPreviewEnd(Pe.compareValue))("mat-calendar-body-in-preview",vn._isInPreview(Pe.compareValue)),v.Q6J("ngClass",Pe.cssClasses)("tabindex",vn._isActiveCell(Jt,It)?0:-1),v.uIk("aria-label",Pe.ariaLabel)("aria-disabled",!Pe.enabled||null)("aria-pressed",vn._isSelected(Pe.compareValue))("aria-current",vn.todayValue===Pe.compareValue?"date":null),v.xp6(1),v.ekj("mat-calendar-body-selected",vn._isSelected(Pe.compareValue))("mat-calendar-body-comparison-identical",vn._isComparisonIdentical(Pe.compareValue))("mat-calendar-body-today",vn.todayValue===Pe.compareValue),v.xp6(1),v.hij(" ",Pe.displayValue," ")}}function Re(fn,yn){if(1&fn&&(v.TgZ(0,"tr",4),v.YNc(1,ne,2,6,"td",5),v.YNc(2,ve,5,47,"td",6),v.qZA()),2&fn){var Ct=yn.$implicit,Pe=yn.index,It=v.oxw();v.xp6(1),v.Q6J("ngIf",0===Pe&&It._firstRowOffset),v.xp6(1),v.Q6J("ngForOf",Ct)}}function Ie(fn,yn){if(1&fn&&(v.TgZ(0,"th",5),v.TgZ(1,"abbr",6),v._uU(2),v.qZA(),v.qZA()),2&fn){var Ct=yn.$implicit;v.uIk("aria-label",Ct.long),v.xp6(1),v.uIk("title",Ct.long),v.xp6(1),v.Oqu(Ct.narrow)}}var Ee=["*"];function ge(fn,yn){}function _t(fn,yn){if(1&fn){var Ct=v.EpF();v.TgZ(0,"mat-month-view",5),v.NdJ("activeDateChange",function(Jt){return v.CHM(Ct),v.oxw().activeDate=Jt})("_userSelection",function(Jt){return v.CHM(Ct),v.oxw()._dateSelected(Jt)}),v.qZA()}if(2&fn){var Pe=v.oxw();v.Q6J("activeDate",Pe.activeDate)("selected",Pe.selected)("dateFilter",Pe.dateFilter)("maxDate",Pe.maxDate)("minDate",Pe.minDate)("dateClass",Pe.dateClass)("comparisonStart",Pe.comparisonStart)("comparisonEnd",Pe.comparisonEnd)}}function wt(fn,yn){if(1&fn){var Ct=v.EpF();v.TgZ(0,"mat-year-view",6),v.NdJ("activeDateChange",function(Jt){return v.CHM(Ct),v.oxw().activeDate=Jt})("monthSelected",function(Jt){return v.CHM(Ct),v.oxw()._monthSelectedInYearView(Jt)})("selectedChange",function(Jt){return v.CHM(Ct),v.oxw()._goToDateInView(Jt,"month")}),v.qZA()}if(2&fn){var Pe=v.oxw();v.Q6J("activeDate",Pe.activeDate)("selected",Pe.selected)("dateFilter",Pe.dateFilter)("maxDate",Pe.maxDate)("minDate",Pe.minDate)("dateClass",Pe.dateClass)}}function qt(fn,yn){if(1&fn){var Ct=v.EpF();v.TgZ(0,"mat-multi-year-view",7),v.NdJ("activeDateChange",function(Jt){return v.CHM(Ct),v.oxw().activeDate=Jt})("yearSelected",function(Jt){return v.CHM(Ct),v.oxw()._yearSelectedInMultiYearView(Jt)})("selectedChange",function(Jt){return v.CHM(Ct),v.oxw()._goToDateInView(Jt,"year")}),v.qZA()}if(2&fn){var Pe=v.oxw();v.Q6J("activeDate",Pe.activeDate)("selected",Pe.selected)("dateFilter",Pe.dateFilter)("maxDate",Pe.maxDate)("minDate",Pe.minDate)("dateClass",Pe.dateClass)}}function Lt(fn,yn){}var Rt=["button"];function it(fn,yn){1&fn&&(v.O4$(),v.TgZ(0,"svg",3),v._UZ(1,"path",4),v.qZA())}var Qe=[[["","matDatepickerToggleIcon",""]]],ot=["[matDatepickerToggleIcon]"],ct=(0,s.Z)(function fn(yn,Ct,Pe,It){var Jt=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},vn=arguments.length>5&&void 0!==arguments[5]?arguments[5]:yn,Vn=arguments.length>6?arguments[6]:void 0;(0,h.Z)(this,fn),this.value=yn,this.displayValue=Ct,this.ariaLabel=Pe,this.enabled=It,this.cssClasses=Jt,this.compareValue=vn,this.rawValue=Vn}),Xe=function(){var fn=function(){function yn(Ct,Pe){var It=this;(0,h.Z)(this,yn),this._elementRef=Ct,this._ngZone=Pe,this.numCols=7,this.activeCell=0,this.isRange=!1,this.cellAspectRatio=1,this.previewStart=null,this.previewEnd=null,this.selectedValueChange=new v.vpe,this.previewChange=new v.vpe,this._enterHandler=function(Jt){if(It._skipNextFocus&&"focus"===Jt.type)It._skipNextFocus=!1;else if(Jt.target&&It.isRange){var vn=It._getCellFromElement(Jt.target);vn&&It._ngZone.run(function(){return It.previewChange.emit({value:vn.enabled?vn:null,event:Jt})})}},this._leaveHandler=function(Jt){null!==It.previewEnd&&It.isRange&&Jt.target&&It._getCellFromElement(Jt.target)&&It._ngZone.run(function(){return It.previewChange.emit({value:null,event:Jt})})},Pe.runOutsideAngular(function(){var Jt=Ct.nativeElement;Jt.addEventListener("mouseenter",It._enterHandler,!0),Jt.addEventListener("focus",It._enterHandler,!0),Jt.addEventListener("mouseleave",It._leaveHandler,!0),Jt.addEventListener("blur",It._leaveHandler,!0)})}return(0,s.Z)(yn,[{key:"_cellClicked",value:function(Pe,It){Pe.enabled&&this.selectedValueChange.emit({value:Pe.value,event:It})}},{key:"_isSelected",value:function(Pe){return this.startValue===Pe||this.endValue===Pe}},{key:"ngOnChanges",value:function(Pe){var It=Pe.numCols,Jt=this.rows,vn=this.numCols;(Pe.rows||It)&&(this._firstRowOffset=Jt&&Jt.length&&Jt[0].length?vn-Jt[0].length:0),(Pe.cellAspectRatio||It||!this._cellPadding)&&(this._cellPadding="".concat(50*this.cellAspectRatio/vn,"%")),(It||!this._cellWidth)&&(this._cellWidth="".concat(100/vn,"%"))}},{key:"ngOnDestroy",value:function(){var Pe=this._elementRef.nativeElement;Pe.removeEventListener("mouseenter",this._enterHandler,!0),Pe.removeEventListener("focus",this._enterHandler,!0),Pe.removeEventListener("mouseleave",this._leaveHandler,!0),Pe.removeEventListener("blur",this._leaveHandler,!0)}},{key:"_isActiveCell",value:function(Pe,It){var Jt=Pe*this.numCols+It;return Pe&&(Jt-=this._firstRowOffset),Jt==this.activeCell}},{key:"_focusActiveCell",value:function(){var Pe=this,It=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this._ngZone.runOutsideAngular(function(){Pe._ngZone.onStable.pipe((0,q.q)(1)).subscribe(function(){var Jt=Pe._elementRef.nativeElement.querySelector(".mat-calendar-body-active");Jt&&(It||(Pe._skipNextFocus=!0),Jt.focus())})})}},{key:"_isRangeStart",value:function(Pe){return vt(Pe,this.startValue,this.endValue)}},{key:"_isRangeEnd",value:function(Pe){return qe(Pe,this.startValue,this.endValue)}},{key:"_isInRange",value:function(Pe){return je(Pe,this.startValue,this.endValue,this.isRange)}},{key:"_isComparisonStart",value:function(Pe){return vt(Pe,this.comparisonStart,this.comparisonEnd)}},{key:"_isComparisonBridgeStart",value:function(Pe,It,Jt){if(!this._isComparisonStart(Pe)||this._isRangeStart(Pe)||!this._isInRange(Pe))return!1;var vn=this.rows[It][Jt-1];if(!vn){var Vn=this.rows[It-1];vn=Vn&&Vn[Vn.length-1]}return vn&&!this._isRangeEnd(vn.compareValue)}},{key:"_isComparisonBridgeEnd",value:function(Pe,It,Jt){if(!this._isComparisonEnd(Pe)||this._isRangeEnd(Pe)||!this._isInRange(Pe))return!1;var vn=this.rows[It][Jt+1];if(!vn){var Vn=this.rows[It+1];vn=Vn&&Vn[0]}return vn&&!this._isRangeStart(vn.compareValue)}},{key:"_isComparisonEnd",value:function(Pe){return qe(Pe,this.comparisonStart,this.comparisonEnd)}},{key:"_isInComparisonRange",value:function(Pe){return je(Pe,this.comparisonStart,this.comparisonEnd,this.isRange)}},{key:"_isComparisonIdentical",value:function(Pe){return this.comparisonStart===this.comparisonEnd&&Pe===this.comparisonStart}},{key:"_isPreviewStart",value:function(Pe){return vt(Pe,this.previewStart,this.previewEnd)}},{key:"_isPreviewEnd",value:function(Pe){return qe(Pe,this.previewStart,this.previewEnd)}},{key:"_isInPreview",value:function(Pe){return je(Pe,this.previewStart,this.previewEnd,this.isRange)}},{key:"_getCellFromElement",value:function(Pe){var It;if(Te(Pe)?It=Pe:Te(Pe.parentNode)&&(It=Pe.parentNode),It){var Jt=It.getAttribute("data-mat-row"),vn=It.getAttribute("data-mat-col");if(Jt&&vn)return this.rows[parseInt(Jt)][parseInt(vn)]}return null}}]),yn}();return fn.\u0275fac=function(Ct){return new(Ct||fn)(v.Y36(v.SBq),v.Y36(v.R0b))},fn.\u0275cmp=v.Xpm({type:fn,selectors:[["","mat-calendar-body",""]],hostAttrs:[1,"mat-calendar-body"],inputs:{label:"label",rows:"rows",todayValue:"todayValue",startValue:"startValue",endValue:"endValue",labelMinRequiredCells:"labelMinRequiredCells",numCols:"numCols",activeCell:"activeCell",isRange:"isRange",cellAspectRatio:"cellAspectRatio",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",previewStart:"previewStart",previewEnd:"previewEnd"},outputs:{selectedValueChange:"selectedValueChange",previewChange:"previewChange"},exportAs:["matCalendarBody"],features:[v.TTD],attrs:se,decls:2,vars:2,consts:[["aria-hidden","true",4,"ngIf"],["role","row",4,"ngFor","ngForOf"],["aria-hidden","true"],[1,"mat-calendar-body-label"],["role","row"],["class","mat-calendar-body-label",3,"paddingTop","paddingBottom",4,"ngIf"],["role","gridcell","class","mat-calendar-body-cell-container",3,"width","paddingTop","paddingBottom",4,"ngFor","ngForOf"],["role","gridcell",1,"mat-calendar-body-cell-container"],["type","button",1,"mat-calendar-body-cell",3,"ngClass","tabindex","click"],[1,"mat-calendar-body-cell-content","mat-focus-indicator"],["aria-hidden","true",1,"mat-calendar-body-cell-preview"]],template:function(Ct,Pe){1&Ct&&(v.YNc(0,X,3,6,"tr",0),v.YNc(1,Re,3,2,"tr",1)),2&Ct&&(v.Q6J("ngIf",Pe._firstRowOffset.mat-calendar-body-cell-content,.cdk-high-contrast-active .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content{outline:dotted 2px}.cdk-high-contrast-active .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content.mat-calendar-body-selected,.cdk-high-contrast-active .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content.mat-calendar-body-selected{outline:solid 3px}.cdk-high-contrast-active .mat-calendar-body-cell::before,.cdk-high-contrast-active .mat-calendar-body-cell::after,.cdk-high-contrast-active .mat-calendar-body-selected{background:none}.cdk-high-contrast-active .mat-calendar-body-in-range::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-start::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-end::before{border-top:solid 1px;border-bottom:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:0;border-right:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:0;border-left:solid 1px}.cdk-high-contrast-active .mat-calendar-body-in-comparison-range::before{border-top:dashed 1px;border-bottom:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:0;border-right:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:0;border-left:dashed 1px}[dir=rtl] .mat-calendar-body-label{text-align:right}\n'],encapsulation:2,changeDetection:0}),fn}();function Te(fn){return"TD"===fn.nodeName}function vt(fn,yn,Ct){return null!==Ct&&yn!==Ct&&fn=yn&&fn===Ct}function je(fn,yn,Ct,Pe){return Pe&&null!==yn&&null!==Ct&&yn!==Ct&&fn>=yn&&fn<=Ct}var Nt=(0,s.Z)(function fn(yn,Ct){(0,h.Z)(this,fn),this.start=yn,this.end=Ct}),Ft=function(){var fn=function(){function yn(Ct,Pe){(0,h.Z)(this,yn),this.selection=Ct,this._adapter=Pe,this._selectionChanged=new Z.x,this.selectionChanged=this._selectionChanged,this.selection=Ct}return(0,s.Z)(yn,[{key:"updateSelection",value:function(Pe,It){var Jt=this.selection;this.selection=Pe,this._selectionChanged.next({selection:Pe,source:It,oldValue:Jt})}},{key:"ngOnDestroy",value:function(){this._selectionChanged.complete()}},{key:"_isValidDateInstance",value:function(Pe){return this._adapter.isDateInstance(Pe)&&this._adapter.isValid(Pe)}}]),yn}();return fn.\u0275fac=function(Ct){v.$Z()},fn.\u0275prov=v.Yz7({token:fn,factory:fn.\u0275fac}),fn}(),bt=function(){var fn=function(yn){(0,p.Z)(Pe,yn);var Ct=(0,d.Z)(Pe);function Pe(It){return(0,h.Z)(this,Pe),Ct.call(this,null,It)}return(0,s.Z)(Pe,[{key:"add",value:function(Jt){(0,t.Z)((0,e.Z)(Pe.prototype),"updateSelection",this).call(this,Jt,this)}},{key:"isValid",value:function(){return null!=this.selection&&this._isValidDateInstance(this.selection)}},{key:"isComplete",value:function(){return null!=this.selection}},{key:"clone",value:function(){var Jt=new Pe(this._adapter);return Jt.updateSelection(this.selection,this),Jt}}]),Pe}(Ft);return fn.\u0275fac=function(Ct){return new(Ct||fn)(v.LFG(J._A))},fn.\u0275prov=v.Yz7({token:fn,factory:fn.\u0275fac}),fn}(),ut={provide:Ft,deps:[[new v.FiY,new v.tp0,Ft],J._A],useFactory:function Pt(fn,yn){return fn||new bt(yn)}},we=new v.OlP("MAT_DATE_RANGE_SELECTION_STRATEGY"),gt=function(){var fn=function(){function yn(Ct,Pe,It,Jt,vn){(0,h.Z)(this,yn),this._changeDetectorRef=Ct,this._dateFormats=Pe,this._dateAdapter=It,this._dir=Jt,this._rangeStrategy=vn,this._rerenderSubscription=A.w0.EMPTY,this.selectedChange=new v.vpe,this._userSelection=new v.vpe,this.activeDateChange=new v.vpe,this._activeDate=this._dateAdapter.today()}return(0,s.Z)(yn,[{key:"activeDate",get:function(){return this._activeDate},set:function(Pe){var It=this._activeDate,Jt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Jt,this.minDate,this.maxDate),this._hasSameMonthAndYear(It,this._activeDate)||this._init()}},{key:"selected",get:function(){return this._selected},set:function(Pe){this._selected=Pe instanceof Nt?Pe:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe)),this._setRanges(this._selected)}},{key:"minDate",get:function(){return this._minDate},set:function(Pe){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe))}},{key:"maxDate",get:function(){return this._maxDate},set:function(Pe){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe))}},{key:"ngAfterContentInit",value:function(){var Pe=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,ce.O)(null)).subscribe(function(){return Pe._init()})}},{key:"ngOnChanges",value:function(Pe){var It=Pe.comparisonStart||Pe.comparisonEnd;It&&!It.firstChange&&this._setRanges(this.selected)}},{key:"ngOnDestroy",value:function(){this._rerenderSubscription.unsubscribe()}},{key:"_dateSelected",value:function(Pe){var ui,ki,It=Pe.value,Jt=this._dateAdapter.getYear(this.activeDate),vn=this._dateAdapter.getMonth(this.activeDate),Vn=this._dateAdapter.createDate(Jt,vn,It);this._selected instanceof Nt?(ui=this._getDateInCurrentMonth(this._selected.start),ki=this._getDateInCurrentMonth(this._selected.end)):ui=ki=this._getDateInCurrentMonth(this._selected),(ui!==It||ki!==It)&&this.selectedChange.emit(Vn),this._userSelection.emit({value:Vn,event:Pe.event}),this._previewStart=this._previewEnd=null,this._changeDetectorRef.markForCheck()}},{key:"_handleCalendarBodyKeydown",value:function(Pe){var It=this._activeDate,Jt=this._isRtl();switch(Pe.keyCode){case k.oh:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Jt?1:-1);break;case k.SV:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Jt?-1:1);break;case k.LH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,-7);break;case k.JH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,7);break;case k.Sd:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,1-this._dateAdapter.getDate(this._activeDate));break;case k.uR:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,this._dateAdapter.getNumDaysInMonth(this._activeDate)-this._dateAdapter.getDate(this._activeDate));break;case k.Ku:this.activeDate=Pe.altKey?this._dateAdapter.addCalendarYears(this._activeDate,-1):this._dateAdapter.addCalendarMonths(this._activeDate,-1);break;case k.VM:this.activeDate=Pe.altKey?this._dateAdapter.addCalendarYears(this._activeDate,1):this._dateAdapter.addCalendarMonths(this._activeDate,1);break;case k.K5:case k.L_:return this._selectionKeyPressed=!0,void(this._canSelect(this._activeDate)&&Pe.preventDefault());case k.hY:return void(null!=this._previewEnd&&!(0,k.Vb)(Pe)&&(this._previewStart=this._previewEnd=null,this.selectedChange.emit(null),this._userSelection.emit({value:null,event:Pe}),Pe.preventDefault(),Pe.stopPropagation()));default:return}this._dateAdapter.compareDate(It,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),Pe.preventDefault()}},{key:"_handleCalendarBodyKeyup",value:function(Pe){(Pe.keyCode===k.L_||Pe.keyCode===k.K5)&&(this._selectionKeyPressed&&this._canSelect(this._activeDate)&&this._dateSelected({value:this._dateAdapter.getDate(this._activeDate),event:Pe}),this._selectionKeyPressed=!1)}},{key:"_init",value:function(){this._setRanges(this.selected),this._todayDate=this._getCellCompareValue(this._dateAdapter.today()),this._monthLabel=this._dateFormats.display.monthLabel?this._dateAdapter.format(this.activeDate,this._dateFormats.display.monthLabel):this._dateAdapter.getMonthNames("short")[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();var Pe=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),1);this._firstWeekOffset=(7+this._dateAdapter.getDayOfWeek(Pe)-this._dateAdapter.getFirstDayOfWeek())%7,this._initWeekdays(),this._createWeekCells(),this._changeDetectorRef.markForCheck()}},{key:"_focusActiveCell",value:function(Pe){this._matCalendarBody._focusActiveCell(Pe)}},{key:"_previewChanged",value:function(Pe){var Jt=Pe.value;if(this._rangeStrategy){var Vn=this._rangeStrategy.createPreview(Jt?Jt.rawValue:null,this.selected,Pe.event);this._previewStart=this._getCellCompareValue(Vn.start),this._previewEnd=this._getCellCompareValue(Vn.end),this._changeDetectorRef.detectChanges()}}},{key:"_initWeekdays",value:function(){var Pe=this._dateAdapter.getFirstDayOfWeek(),It=this._dateAdapter.getDayOfWeekNames("narrow"),vn=this._dateAdapter.getDayOfWeekNames("long").map(function(Vn,ui){return{long:Vn,narrow:It[ui]}});this._weekdays=vn.slice(Pe).concat(vn.slice(0,Pe))}},{key:"_createWeekCells",value:function(){var Pe=this._dateAdapter.getNumDaysInMonth(this.activeDate),It=this._dateAdapter.getDateNames();this._weeks=[[]];for(var Jt=0,vn=this._firstWeekOffset;Jt=0)&&(!this.maxDate||this._dateAdapter.compareDate(Pe,this.maxDate)<=0)&&(!this.dateFilter||this.dateFilter(Pe))}},{key:"_getDateInCurrentMonth",value:function(Pe){return Pe&&this._hasSameMonthAndYear(Pe,this.activeDate)?this._dateAdapter.getDate(Pe):null}},{key:"_hasSameMonthAndYear",value:function(Pe,It){return!(!Pe||!It||this._dateAdapter.getMonth(Pe)!=this._dateAdapter.getMonth(It)||this._dateAdapter.getYear(Pe)!=this._dateAdapter.getYear(It))}},{key:"_getCellCompareValue",value:function(Pe){if(Pe){var It=this._dateAdapter.getYear(Pe),Jt=this._dateAdapter.getMonth(Pe),vn=this._dateAdapter.getDate(Pe);return new Date(It,Jt,vn).getTime()}return null}},{key:"_isRtl",value:function(){return this._dir&&"rtl"===this._dir.value}},{key:"_setRanges",value:function(Pe){Pe instanceof Nt?(this._rangeStart=this._getCellCompareValue(Pe.start),this._rangeEnd=this._getCellCompareValue(Pe.end),this._isRange=!0):(this._rangeStart=this._rangeEnd=this._getCellCompareValue(Pe),this._isRange=!1),this._comparisonRangeStart=this._getCellCompareValue(this.comparisonStart),this._comparisonRangeEnd=this._getCellCompareValue(this.comparisonEnd)}},{key:"_canSelect",value:function(Pe){return!this.dateFilter||this.dateFilter(Pe)}}]),yn}();return fn.\u0275fac=function(Ct){return new(Ct||fn)(v.Y36(v.sBO),v.Y36(J.sG,8),v.Y36(J._A,8),v.Y36(H.Is,8),v.Y36(we,8))},fn.\u0275cmp=v.Xpm({type:fn,selectors:[["mat-month-view"]],viewQuery:function(Ct,Pe){var It;1&Ct&&v.Gf(Xe,5),2&Ct&&v.iGM(It=v.CRH())&&(Pe._matCalendarBody=It.first)},inputs:{activeDate:"activeDate",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd"},outputs:{selectedChange:"selectedChange",_userSelection:"_userSelection",activeDateChange:"activeDateChange"},exportAs:["matMonthView"],features:[v.TTD],decls:7,vars:13,consts:[["role","grid",1,"mat-calendar-table"],[1,"mat-calendar-table-header"],["scope","col",4,"ngFor","ngForOf"],["aria-hidden","true","colspan","7",1,"mat-calendar-table-header-divider"],["mat-calendar-body","",3,"label","rows","todayValue","startValue","endValue","comparisonStart","comparisonEnd","previewStart","previewEnd","isRange","labelMinRequiredCells","activeCell","selectedValueChange","previewChange","keyup","keydown"],["scope","col"],[1,"mat-calendar-abbr"]],template:function(Ct,Pe){1&Ct&&(v.TgZ(0,"table",0),v.TgZ(1,"thead",1),v.TgZ(2,"tr"),v.YNc(3,Ie,3,3,"th",2),v.qZA(),v.TgZ(4,"tr"),v._UZ(5,"th",3),v.qZA(),v.qZA(),v.TgZ(6,"tbody",4),v.NdJ("selectedValueChange",function(Jt){return Pe._dateSelected(Jt)})("previewChange",function(Jt){return Pe._previewChanged(Jt)})("keyup",function(Jt){return Pe._handleCalendarBodyKeyup(Jt)})("keydown",function(Jt){return Pe._handleCalendarBodyKeydown(Jt)}),v.qZA(),v.qZA()),2&Ct&&(v.xp6(3),v.Q6J("ngForOf",Pe._weekdays),v.xp6(3),v.Q6J("label",Pe._monthLabel)("rows",Pe._weeks)("todayValue",Pe._todayDate)("startValue",Pe._rangeStart)("endValue",Pe._rangeEnd)("comparisonStart",Pe._comparisonRangeStart)("comparisonEnd",Pe._comparisonRangeEnd)("previewStart",Pe._previewStart)("previewEnd",Pe._previewEnd)("isRange",Pe._isRange)("labelMinRequiredCells",3)("activeCell",Pe._dateAdapter.getDate(Pe.activeDate)-1))},directives:[Xe,I.sg],encapsulation:2,changeDetection:0}),fn}(),wn=function(){var fn=function(){function yn(Ct,Pe,It){(0,h.Z)(this,yn),this._changeDetectorRef=Ct,this._dateAdapter=Pe,this._dir=It,this._rerenderSubscription=A.w0.EMPTY,this.selectedChange=new v.vpe,this.yearSelected=new v.vpe,this.activeDateChange=new v.vpe,this._activeDate=this._dateAdapter.today()}return(0,s.Z)(yn,[{key:"activeDate",get:function(){return this._activeDate},set:function(Pe){var It=this._activeDate,Jt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Jt,this.minDate,this.maxDate),Tn(this._dateAdapter,It,this._activeDate,this.minDate,this.maxDate)||this._init()}},{key:"selected",get:function(){return this._selected},set:function(Pe){this._selected=Pe instanceof Nt?Pe:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe)),this._setSelectedYear(Pe)}},{key:"minDate",get:function(){return this._minDate},set:function(Pe){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe))}},{key:"maxDate",get:function(){return this._maxDate},set:function(Pe){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe))}},{key:"ngAfterContentInit",value:function(){var Pe=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,ce.O)(null)).subscribe(function(){return Pe._init()})}},{key:"ngOnDestroy",value:function(){this._rerenderSubscription.unsubscribe()}},{key:"_init",value:function(){var Pe=this;this._todayYear=this._dateAdapter.getYear(this._dateAdapter.today());var Jt=this._dateAdapter.getYear(this._activeDate)-On(this._dateAdapter,this.activeDate,this.minDate,this.maxDate);this._years=[];for(var vn=0,Vn=[];vn<24;vn++)Vn.push(Jt+vn),4==Vn.length&&(this._years.push(Vn.map(function(ui){return Pe._createCellForYear(ui)})),Vn=[]);this._changeDetectorRef.markForCheck()}},{key:"_yearSelected",value:function(Pe){var It=Pe.value;this.yearSelected.emit(this._dateAdapter.createDate(It,0,1));var Jt=this._dateAdapter.getMonth(this.activeDate),vn=this._dateAdapter.getNumDaysInMonth(this._dateAdapter.createDate(It,Jt,1));this.selectedChange.emit(this._dateAdapter.createDate(It,Jt,Math.min(this._dateAdapter.getDate(this.activeDate),vn)))}},{key:"_handleCalendarBodyKeydown",value:function(Pe){var It=this._activeDate,Jt=this._isRtl();switch(Pe.keyCode){case k.oh:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Jt?1:-1);break;case k.SV:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Jt?-1:1);break;case k.LH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-4);break;case k.JH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,4);break;case k.Sd:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-On(this._dateAdapter,this.activeDate,this.minDate,this.maxDate));break;case k.uR:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,24-On(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)-1);break;case k.Ku:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Pe.altKey?-240:-24);break;case k.VM:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Pe.altKey?240:24);break;case k.K5:case k.L_:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(It,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),Pe.preventDefault()}},{key:"_handleCalendarBodyKeyup",value:function(Pe){(Pe.keyCode===k.L_||Pe.keyCode===k.K5)&&(this._selectionKeyPressed&&this._yearSelected({value:this._dateAdapter.getYear(this._activeDate),event:Pe}),this._selectionKeyPressed=!1)}},{key:"_getActiveCell",value:function(){return On(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)}},{key:"_focusActiveCell",value:function(){this._matCalendarBody._focusActiveCell()}},{key:"_createCellForYear",value:function(Pe){var It=this._dateAdapter.createDate(Pe,0,1),Jt=this._dateAdapter.getYearName(It),vn=this.dateClass?this.dateClass(It,"multi-year"):void 0;return new ct(Pe,Jt,Jt,this._shouldEnableYear(Pe),vn)}},{key:"_shouldEnableYear",value:function(Pe){if(null==Pe||this.maxDate&&Pe>this._dateAdapter.getYear(this.maxDate)||this.minDate&&PeJt||Pe===Jt&&It>vn}return!1}},{key:"_isYearAndMonthBeforeMinDate",value:function(Pe,It){if(this.minDate){var Jt=this._dateAdapter.getYear(this.minDate),vn=this._dateAdapter.getMonth(this.minDate);return Pe enter-dropdown",(0,R.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,R.F4)([(0,R.oB)({opacity:0,transform:"scale(1, 0.8)"}),(0,R.oB)({opacity:1,transform:"scale(1, 1)"})]))),(0,R.eR)("void => enter-dialog",(0,R.jt)("150ms cubic-bezier(0, 0, 0.2, 1)",(0,R.F4)([(0,R.oB)({opacity:0,transform:"scale(0.7)"}),(0,R.oB)({transform:"none",opacity:1})]))),(0,R.eR)("* => void",(0,R.jt)("100ms linear",(0,R.oB)({opacity:0})))]),fadeInCalendar:(0,R.X$)("fadeInCalendar",[(0,R.SB)("void",(0,R.oB)({opacity:0})),(0,R.SB)("enter",(0,R.oB)({opacity:1})),(0,R.eR)("void => *",(0,R.jt)("120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"))])},et=0,De=new v.OlP("mat-datepicker-scroll-strategy"),Je={provide:De,deps:[T.aV],useFactory:function Ze(fn){return function(){return fn.scrollStrategies.reposition()}}},Ve=(0,J.pj)(function(){return(0,s.Z)(function fn(yn){(0,h.Z)(this,fn),this._elementRef=yn})}()),pt=function(){var fn=function(yn){(0,p.Z)(Pe,yn);var Ct=(0,d.Z)(Pe);function Pe(It,Jt,vn,Vn,ui,ki){var Ii;return(0,h.Z)(this,Pe),(Ii=Ct.call(this,It))._changeDetectorRef=Jt,Ii._globalModel=vn,Ii._dateAdapter=Vn,Ii._rangeSelectionStrategy=ui,Ii._subscriptions=new A.w0,Ii._animationDone=new Z.x,Ii._actionsPortal=null,Ii._closeButtonText=ki.closeCalendarLabel,Ii}return(0,s.Z)(Pe,[{key:"ngOnInit",value:function(){this._model=this._actionsPortal?this._globalModel.clone():this._globalModel,this._animationState=this.datepicker.touchUi?"enter-dialog":"enter-dropdown"}},{key:"ngAfterViewInit",value:function(){var Jt=this;this._subscriptions.add(this.datepicker.stateChanges.subscribe(function(){Jt._changeDetectorRef.markForCheck()})),this._calendar.focusActiveCell()}},{key:"ngOnDestroy",value:function(){this._subscriptions.unsubscribe(),this._animationDone.complete()}},{key:"_handleUserSelection",value:function(Jt){var vn=this._model.selection,Vn=Jt.value,ui=vn instanceof Nt;if(ui&&this._rangeSelectionStrategy){var ki=this._rangeSelectionStrategy.selectionFinished(Vn,vn,Jt.event);this._model.updateSelection(ki,this)}else Vn&&(ui||!this._dateAdapter.sameDate(Vn,vn))&&this._model.add(Vn);(!this._model||this._model.isComplete())&&!this._actionsPortal&&this.datepicker.close()}},{key:"_startExitAnimation",value:function(){this._animationState="void",this._changeDetectorRef.markForCheck()}},{key:"_getSelected",value:function(){return this._model.selection}},{key:"_applyPendingSelection",value:function(){this._model!==this._globalModel&&this._globalModel.updateSelection(this._model.selection,this)}}]),Pe}(Ve);return fn.\u0275fac=function(Ct){return new(Ct||fn)(v.Y36(v.SBq),v.Y36(v.sBO),v.Y36(Ft),v.Y36(J._A),v.Y36(we,8),v.Y36(fi))},fn.\u0275cmp=v.Xpm({type:fn,selectors:[["mat-datepicker-content"]],viewQuery:function(Ct,Pe){var It;1&Ct&&v.Gf(jt,5),2&Ct&&v.iGM(It=v.CRH())&&(Pe._calendar=It.first)},hostAttrs:[1,"mat-datepicker-content"],hostVars:3,hostBindings:function(Ct,Pe){1&Ct&&v.WFA("@transformPanel.done",function(){return Pe._animationDone.next()}),2&Ct&&(v.d8E("@transformPanel",Pe._animationState),v.ekj("mat-datepicker-content-touch",Pe.datepicker.touchUi))},inputs:{color:"color"},exportAs:["matDatepickerContent"],features:[v.qOj],decls:5,vars:22,consts:[["cdkTrapFocus","",1,"mat-datepicker-content-container"],[3,"id","ngClass","startAt","startView","minDate","maxDate","dateFilter","headerComponent","selected","dateClass","comparisonStart","comparisonEnd","yearSelected","monthSelected","viewChanged","_userSelection"],[3,"cdkPortalOutlet"],["type","button","mat-raised-button","",1,"mat-datepicker-close-button",3,"color","focus","blur","click"]],template:function(Ct,Pe){1&Ct&&(v.TgZ(0,"div",0),v.TgZ(1,"mat-calendar",1),v.NdJ("yearSelected",function(Jt){return Pe.datepicker._selectYear(Jt)})("monthSelected",function(Jt){return Pe.datepicker._selectMonth(Jt)})("viewChanged",function(Jt){return Pe.datepicker._viewChanged(Jt)})("_userSelection",function(Jt){return Pe._handleUserSelection(Jt)}),v.qZA(),v.YNc(2,Lt,0,0,"ng-template",2),v.TgZ(3,"button",3),v.NdJ("focus",function(){return Pe._closeButtonFocused=!0})("blur",function(){return Pe._closeButtonFocused=!1})("click",function(){return Pe.datepicker.close()}),v._uU(4),v.qZA(),v.qZA()),2&Ct&&(v.ekj("mat-datepicker-content-container-with-custom-header",Pe.datepicker.calendarHeaderComponent)("mat-datepicker-content-container-with-actions",Pe._actionsPortal),v.xp6(1),v.Q6J("id",Pe.datepicker.id)("ngClass",Pe.datepicker.panelClass)("startAt",Pe.datepicker.startAt)("startView",Pe.datepicker.startView)("minDate",Pe.datepicker._getMinDate())("maxDate",Pe.datepicker._getMaxDate())("dateFilter",Pe.datepicker._getDateFilter())("headerComponent",Pe.datepicker.calendarHeaderComponent)("selected",Pe._getSelected())("dateClass",Pe.datepicker.dateClass)("comparisonStart",Pe.comparisonStart)("comparisonEnd",Pe.comparisonEnd)("@fadeInCalendar","enter"),v.xp6(1),v.Q6J("cdkPortalOutlet",Pe._actionsPortal),v.xp6(1),v.ekj("cdk-visually-hidden",!Pe._closeButtonFocused),v.Q6J("color",Pe.color||"primary"),v.xp6(1),v.Oqu(Pe._closeButtonText))},directives:[jt,j.lW,f.mK,I.mk,B.Pl],styles:[".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"],encapsulation:2,data:{animation:[Ue.transformPanel,Ue.fadeInCalendar]},changeDetection:0}),fn}(),kt=function(){var fn=function(){function yn(Ct,Pe,It,Jt,vn,Vn,ui){(0,h.Z)(this,yn),this._overlay=Ct,this._ngZone=Pe,this._viewContainerRef=It,this._dateAdapter=vn,this._dir=Vn,this._model=ui,this._inputStateChanges=A.w0.EMPTY,this.startView="month",this._touchUi=!1,this.xPosition="start",this.yPosition="below",this._restoreFocus=!0,this.yearSelected=new v.vpe,this.monthSelected=new v.vpe,this.viewChanged=new v.vpe(!0),this.openedStream=new v.vpe,this.closedStream=new v.vpe,this._opened=!1,this.id="mat-datepicker-".concat(et++),this._focusedElementBeforeOpen=null,this._backdropHarnessClass="".concat(this.id,"-backdrop"),this.stateChanges=new Z.x,this._scrollStrategy=Jt}return(0,s.Z)(yn,[{key:"startAt",get:function(){return this._startAt||(this.datepickerInput?this.datepickerInput.getStartValue():null)},set:function(Pe){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Pe))}},{key:"color",get:function(){return this._color||(this.datepickerInput?this.datepickerInput.getThemePalette():void 0)},set:function(Pe){this._color=Pe}},{key:"touchUi",get:function(){return this._touchUi},set:function(Pe){this._touchUi=(0,V.Ig)(Pe)}},{key:"disabled",get:function(){return void 0===this._disabled&&this.datepickerInput?this.datepickerInput.disabled:!!this._disabled},set:function(Pe){var It=(0,V.Ig)(Pe);It!==this._disabled&&(this._disabled=It,this.stateChanges.next(void 0))}},{key:"restoreFocus",get:function(){return this._restoreFocus},set:function(Pe){this._restoreFocus=(0,V.Ig)(Pe)}},{key:"panelClass",get:function(){return this._panelClass},set:function(Pe){this._panelClass=(0,V.du)(Pe)}},{key:"opened",get:function(){return this._opened},set:function(Pe){(0,V.Ig)(Pe)?this.open():this.close()}},{key:"_getMinDate",value:function(){return this.datepickerInput&&this.datepickerInput.min}},{key:"_getMaxDate",value:function(){return this.datepickerInput&&this.datepickerInput.max}},{key:"_getDateFilter",value:function(){return this.datepickerInput&&this.datepickerInput.dateFilter}},{key:"ngOnChanges",value:function(Pe){var It=Pe.xPosition||Pe.yPosition;if(It&&!It.firstChange&&this._overlayRef){var Jt=this._overlayRef.getConfig().positionStrategy;Jt instanceof T._G&&(this._setConnectedPositions(Jt),this.opened&&this._overlayRef.updatePosition())}this.stateChanges.next(void 0)}},{key:"ngOnDestroy",value:function(){this._destroyOverlay(),this.close(),this._inputStateChanges.unsubscribe(),this.stateChanges.complete()}},{key:"select",value:function(Pe){this._model.add(Pe)}},{key:"_selectYear",value:function(Pe){this.yearSelected.emit(Pe)}},{key:"_selectMonth",value:function(Pe){this.monthSelected.emit(Pe)}},{key:"_viewChanged",value:function(Pe){this.viewChanged.emit(Pe)}},{key:"registerInput",value:function(Pe){var It=this;return this._inputStateChanges.unsubscribe(),this.datepickerInput=Pe,this._inputStateChanges=Pe.stateChanges.subscribe(function(){return It.stateChanges.next(void 0)}),this._model}},{key:"registerActions",value:function(Pe){this._actionsPortal=Pe}},{key:"removeActions",value:function(Pe){Pe===this._actionsPortal&&(this._actionsPortal=null)}},{key:"open",value:function(){this._opened||this.disabled||(this._focusedElementBeforeOpen=(0,ue.ht)(),this._openOverlay(),this._opened=!0,this.openedStream.emit())}},{key:"close",value:function(){var Pe=this;if(this._opened){if(this._componentRef){var It=this._componentRef.instance;It._startExitAnimation(),It._animationDone.pipe((0,q.q)(1)).subscribe(function(){return Pe._destroyOverlay()})}var Jt=function(){Pe._opened&&(Pe._opened=!1,Pe.closedStream.emit(),Pe._focusedElementBeforeOpen=null)};this._restoreFocus&&this._focusedElementBeforeOpen&&"function"==typeof this._focusedElementBeforeOpen.focus?(this._focusedElementBeforeOpen.focus(),setTimeout(Jt)):Jt()}}},{key:"_applyPendingSelection",value:function(){var Pe,It;null===(It=null===(Pe=this._componentRef)||void 0===Pe?void 0:Pe.instance)||void 0===It||It._applyPendingSelection()}},{key:"_forwardContentValues",value:function(Pe){Pe.datepicker=this,Pe.color=this.color,Pe._actionsPortal=this._actionsPortal}},{key:"_openOverlay",value:function(){var Pe=this;this._destroyOverlay();var It=this.touchUi,Jt=this.datepickerInput.getOverlayLabelId(),vn=new B.C5(pt,this._viewContainerRef),Vn=this._overlayRef=this._overlay.create(new T.X_({positionStrategy:It?this._getDialogStrategy():this._getDropdownStrategy(),hasBackdrop:!0,backdropClass:[It?"cdk-overlay-dark-backdrop":"mat-overlay-transparent-backdrop",this._backdropHarnessClass],direction:this._dir,scrollStrategy:It?this._overlay.scrollStrategies.block():this._scrollStrategy(),panelClass:"mat-datepicker-".concat(It?"dialog":"popup")})),ui=Vn.overlayElement;ui.setAttribute("role","dialog"),Jt&&ui.setAttribute("aria-labelledby",Jt),It&&ui.setAttribute("aria-modal","true"),this._getCloseStream(Vn).subscribe(function(ki){ki&&ki.preventDefault(),Pe.close()}),this._componentRef=Vn.attach(vn),this._forwardContentValues(this._componentRef.instance),It||this._ngZone.onStable.pipe((0,q.q)(1)).subscribe(function(){return Vn.updatePosition()})}},{key:"_destroyOverlay",value:function(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=this._componentRef=null)}},{key:"_getDialogStrategy",value:function(){return this._overlay.position().global().centerHorizontally().centerVertically()}},{key:"_getDropdownStrategy",value:function(){var Pe=this._overlay.position().flexibleConnectedTo(this.datepickerInput.getConnectedOverlayOrigin()).withTransformOriginOn(".mat-datepicker-content").withFlexibleDimensions(!1).withViewportMargin(8).withLockedPosition();return this._setConnectedPositions(Pe)}},{key:"_setConnectedPositions",value:function(Pe){var It="end"===this.xPosition?"end":"start",Jt="start"===It?"end":"start",vn="above"===this.yPosition?"bottom":"top",Vn="top"===vn?"bottom":"top";return Pe.withPositions([{originX:It,originY:Vn,overlayX:It,overlayY:vn},{originX:It,originY:vn,overlayX:It,overlayY:Vn},{originX:Jt,originY:Vn,overlayX:Jt,overlayY:vn},{originX:Jt,originY:vn,overlayX:Jt,overlayY:Vn}])}},{key:"_getCloseStream",value:function(Pe){var It=this;return(0,N.T)(Pe.backdropClick(),Pe.detachments(),Pe.keydownEvents().pipe((0,ie.h)(function(Jt){return Jt.keyCode===k.hY&&!(0,k.Vb)(Jt)||It.datepickerInput&&(0,k.Vb)(Jt,"altKey")&&Jt.keyCode===k.LH})))}}]),yn}();return fn.\u0275fac=function(Ct){return new(Ct||fn)(v.Y36(T.aV),v.Y36(v.R0b),v.Y36(v.s_b),v.Y36(De),v.Y36(J._A,8),v.Y36(H.Is,8),v.Y36(Ft))},fn.\u0275dir=v.lG2({type:fn,inputs:{calendarHeaderComponent:"calendarHeaderComponent",startAt:"startAt",startView:"startView",color:"color",touchUi:"touchUi",disabled:"disabled",xPosition:"xPosition",yPosition:"yPosition",restoreFocus:"restoreFocus",dateClass:"dateClass",panelClass:"panelClass",opened:"opened"},outputs:{yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",openedStream:"opened",closedStream:"closed"},features:[v.TTD]}),fn}(),en=function(){var fn=function(yn){(0,p.Z)(Pe,yn);var Ct=(0,d.Z)(Pe);function Pe(){return(0,h.Z)(this,Pe),Ct.apply(this,arguments)}return(0,s.Z)(Pe)}(kt);return fn.\u0275fac=function(){var yn;return function(Pe){return(yn||(yn=v.n5z(fn)))(Pe||fn)}}(),fn.\u0275cmp=v.Xpm({type:fn,selectors:[["mat-datepicker"]],exportAs:["matDatepicker"],features:[v._Bn([ut,{provide:kt,useExisting:fn}]),v.qOj],decls:0,vars:0,template:function(Ct,Pe){},encapsulation:2,changeDetection:0}),fn}(),Zn=(0,s.Z)(function fn(yn,Ct){(0,h.Z)(this,fn),this.target=yn,this.targetElement=Ct,this.value=this.target.value}),zt=function(){var fn=function(){function yn(Ct,Pe,It){var Jt=this;(0,h.Z)(this,yn),this._elementRef=Ct,this._dateAdapter=Pe,this._dateFormats=It,this.dateChange=new v.vpe,this.dateInput=new v.vpe,this.stateChanges=new Z.x,this._onTouched=function(){},this._validatorOnChange=function(){},this._cvaOnChange=function(){},this._valueChangesSubscription=A.w0.EMPTY,this._localeSubscription=A.w0.EMPTY,this._parseValidator=function(){return Jt._lastValueValid?null:{matDatepickerParse:{text:Jt._elementRef.nativeElement.value}}},this._filterValidator=function(vn){var Vn=Jt._dateAdapter.getValidDateOrNull(Jt._dateAdapter.deserialize(vn.value));return!Vn||Jt._matchesFilter(Vn)?null:{matDatepickerFilter:!0}},this._minValidator=function(vn){var Vn=Jt._dateAdapter.getValidDateOrNull(Jt._dateAdapter.deserialize(vn.value)),ui=Jt._getMinDate();return!ui||!Vn||Jt._dateAdapter.compareDate(ui,Vn)<=0?null:{matDatepickerMin:{min:ui,actual:Vn}}},this._maxValidator=function(vn){var Vn=Jt._dateAdapter.getValidDateOrNull(Jt._dateAdapter.deserialize(vn.value)),ui=Jt._getMaxDate();return!ui||!Vn||Jt._dateAdapter.compareDate(ui,Vn)>=0?null:{matDatepickerMax:{max:ui,actual:Vn}}},this._lastValueValid=!1,this._localeSubscription=Pe.localeChanges.subscribe(function(){Jt._assignValueProgrammatically(Jt.value)})}return(0,s.Z)(yn,[{key:"value",get:function(){return this._model?this._getValueFromModel(this._model.selection):this._pendingValue},set:function(Pe){this._assignValueProgrammatically(Pe)}},{key:"disabled",get:function(){return!!this._disabled||this._parentDisabled()},set:function(Pe){var It=(0,V.Ig)(Pe),Jt=this._elementRef.nativeElement;this._disabled!==It&&(this._disabled=It,this.stateChanges.next(void 0)),It&&this._isInitialized&&Jt.blur&&Jt.blur()}},{key:"_getValidators",value:function(){return[this._parseValidator,this._minValidator,this._maxValidator,this._filterValidator]}},{key:"_registerModel",value:function(Pe){var It=this;this._model=Pe,this._valueChangesSubscription.unsubscribe(),this._pendingValue&&this._assignValue(this._pendingValue),this._valueChangesSubscription=this._model.selectionChanged.subscribe(function(Jt){if(It._shouldHandleChangeEvent(Jt)){var vn=It._getValueFromModel(Jt.selection);It._lastValueValid=It._isValidValue(vn),It._cvaOnChange(vn),It._onTouched(),It._formatValue(vn),It.dateInput.emit(new Zn(It,It._elementRef.nativeElement)),It.dateChange.emit(new Zn(It,It._elementRef.nativeElement))}})}},{key:"ngAfterViewInit",value:function(){this._isInitialized=!0}},{key:"ngOnChanges",value:function(Pe){(function un(fn,yn){for(var Pe=0,It=Object.keys(fn);Pe enter",(0,E.jt)("150ms cubic-bezier(0, 0, 0.2, 1)",(0,E.oB)({transform:"none",opacity:1}))),(0,E.eR)("* => void, * => exit",(0,E.jt)("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",(0,E.oB)({opacity:0})))])},R=function(){var xe=function($e){(0,P.Z)(ct,$e);var Ge=(0,t.Z)(ct);function ct(Xe,Te,vt,qe,je,Nt,Ft,bt){var St;return(0,p.Z)(this,ct),(St=Ge.call(this))._elementRef=Xe,St._focusTrapFactory=Te,St._changeDetectorRef=vt,St._config=je,St._interactivityChecker=Nt,St._ngZone=Ft,St._focusMonitor=bt,St._animationStateChanged=new h.vpe,St._elementFocusedBeforeDialogWasOpened=null,St._closeInteractionType=null,St.attachDomPortal=function(Pt){return St._portalOutlet.hasAttached(),St._portalOutlet.attachDomPortal(Pt)},St._ariaLabelledBy=je.ariaLabelledBy||null,St._document=qe,St}return(0,e.Z)(ct,[{key:"_initializeWithAttachedContent",value:function(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement()}},{key:"attachComponentPortal",value:function(Te){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(Te)}},{key:"attachTemplatePortal",value:function(Te){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(Te)}},{key:"_recaptureFocus",value:function(){this._containsFocus()||this._trapFocus()}},{key:"_forceFocus",value:function(Te,vt){this._interactivityChecker.isFocusable(Te)||(Te.tabIndex=-1,this._ngZone.runOutsideAngular(function(){Te.addEventListener("blur",function(){return Te.removeAttribute("tabindex")}),Te.addEventListener("mousedown",function(){return Te.removeAttribute("tabindex")})})),Te.focus(vt)}},{key:"_focusByCssSelector",value:function(Te,vt){var qe=this._elementRef.nativeElement.querySelector(Te);qe&&this._forceFocus(qe,vt)}},{key:"_trapFocus",value:function(){var Te=this,vt=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||vt.focus();break;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(function(qe){qe||Te._focusDialogContainer()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this._config.autoFocus)}}},{key:"_restoreFocus",value:function(){var Te=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&Te&&"function"==typeof Te.focus){var vt=(0,A.ht)(),qe=this._elementRef.nativeElement;(!vt||vt===this._document.body||vt===qe||qe.contains(vt))&&(this._focusMonitor?(this._focusMonitor.focusVia(Te,this._closeInteractionType),this._closeInteractionType=null):Te.focus())}this._focusTrap&&this._focusTrap.destroy()}},{key:"_setupFocusTrap",value:function(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}},{key:"_capturePreviouslyFocusedElement",value:function(){this._document&&(this._elementFocusedBeforeDialogWasOpened=(0,A.ht)())}},{key:"_focusDialogContainer",value:function(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}},{key:"_containsFocus",value:function(){var Te=this._elementRef.nativeElement,vt=(0,A.ht)();return Te===vt||Te.contains(vt)}}]),ct}(s.en);return xe.\u0275fac=function(Ge){return new(Ge||xe)(h.Y36(h.SBq),h.Y36(k.qV),h.Y36(h.sBO),h.Y36(N.K0,8),h.Y36(H),h.Y36(k.ic),h.Y36(h.R0b),h.Y36(k.tE))},xe.\u0275dir=h.lG2({type:xe,viewQuery:function(Ge,ct){var Xe;1&Ge&&h.Gf(s.Pl,7),2&Ge&&h.iGM(Xe=h.CRH())&&(ct._portalOutlet=Xe.first)},features:[h.qOj]}),xe}(),r=function(){var xe=function($e){(0,P.Z)(ct,$e);var Ge=(0,t.Z)(ct);function ct(){var Xe;return(0,p.Z)(this,ct),(Xe=Ge.apply(this,arguments))._state="enter",Xe}return(0,e.Z)(ct,[{key:"_onAnimationDone",value:function(Te){var vt=Te.toState,qe=Te.totalTime;"enter"===vt?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:qe})):"exit"===vt&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:qe}))}},{key:"_onAnimationStart",value:function(Te){var vt=Te.toState,qe=Te.totalTime;"enter"===vt?this._animationStateChanged.next({state:"opening",totalTime:qe}):("exit"===vt||"void"===vt)&&this._animationStateChanged.next({state:"closing",totalTime:qe})}},{key:"_startExitAnimation",value:function(){this._state="exit",this._changeDetectorRef.markForCheck()}}]),ct}(R);return xe.\u0275fac=function(){var $e;return function(ct){return($e||($e=h.n5z(xe)))(ct||xe)}}(),xe.\u0275cmp=h.Xpm({type:xe,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(Ge,ct){1&Ge&&h.WFA("@dialogContainer.start",function(Te){return ct._onAnimationStart(Te)})("@dialogContainer.done",function(Te){return ct._onAnimationDone(Te)}),2&Ge&&(h.Ikx("id",ct._id),h.uIk("role",ct._config.role)("aria-labelledby",ct._config.ariaLabel?null:ct._ariaLabelledBy)("aria-label",ct._config.ariaLabel)("aria-describedby",ct._config.ariaDescribedBy||null),h.d8E("@dialogContainer",ct._state))},features:[h.qOj],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(Ge,ct){1&Ge&&h.YNc(0,ie,0,0,"ng-template",0)},directives:[s.Pl],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[V.dialogContainer]}}),xe}(),z=0,Y=function(){function xe($e,Ge){var ct=this,Xe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"mat-dialog-".concat(z++);(0,p.Z)(this,xe),this._overlayRef=$e,this._containerInstance=Ge,this.id=Xe,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new B.x,this._afterClosed=new B.x,this._beforeClosed=new B.x,this._state=0,Ge._id=Xe,Ge._animationStateChanged.pipe((0,Q.h)(function(Te){return"opened"===Te.state}),(0,J.q)(1)).subscribe(function(){ct._afterOpened.next(),ct._afterOpened.complete()}),Ge._animationStateChanged.pipe((0,Q.h)(function(Te){return"closed"===Te.state}),(0,J.q)(1)).subscribe(function(){clearTimeout(ct._closeFallbackTimeout),ct._finishDialogClose()}),$e.detachments().subscribe(function(){ct._beforeClosed.next(ct._result),ct._beforeClosed.complete(),ct._afterClosed.next(ct._result),ct._afterClosed.complete(),ct.componentInstance=null,ct._overlayRef.dispose()}),$e.keydownEvents().pipe((0,Q.h)(function(Te){return Te.keyCode===q.hY&&!ct.disableClose&&!(0,q.Vb)(Te)})).subscribe(function(Te){Te.preventDefault(),se(ct,"keyboard")}),$e.backdropClick().subscribe(function(){ct.disableClose?ct._containerInstance._recaptureFocus():se(ct,"mouse")})}return(0,e.Z)(xe,[{key:"close",value:function(Ge){var ct=this;this._result=Ge,this._containerInstance._animationStateChanged.pipe((0,Q.h)(function(Xe){return"closing"===Xe.state}),(0,J.q)(1)).subscribe(function(Xe){ct._beforeClosed.next(Ge),ct._beforeClosed.complete(),ct._overlayRef.detachBackdrop(),ct._closeFallbackTimeout=setTimeout(function(){return ct._finishDialogClose()},Xe.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}},{key:"afterOpened",value:function(){return this._afterOpened}},{key:"afterClosed",value:function(){return this._afterClosed}},{key:"beforeClosed",value:function(){return this._beforeClosed}},{key:"backdropClick",value:function(){return this._overlayRef.backdropClick()}},{key:"keydownEvents",value:function(){return this._overlayRef.keydownEvents()}},{key:"updatePosition",value:function(Ge){var ct=this._getPositionStrategy();return Ge&&(Ge.left||Ge.right)?Ge.left?ct.left(Ge.left):ct.right(Ge.right):ct.centerHorizontally(),Ge&&(Ge.top||Ge.bottom)?Ge.top?ct.top(Ge.top):ct.bottom(Ge.bottom):ct.centerVertically(),this._overlayRef.updatePosition(),this}},{key:"updateSize",value:function(){var Ge=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",ct=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this._overlayRef.updateSize({width:Ge,height:ct}),this._overlayRef.updatePosition(),this}},{key:"addPanelClass",value:function(Ge){return this._overlayRef.addPanelClass(Ge),this}},{key:"removePanelClass",value:function(Ge){return this._overlayRef.removePanelClass(Ge),this}},{key:"getState",value:function(){return this._state}},{key:"_finishDialogClose",value:function(){this._state=2,this._overlayRef.dispose()}},{key:"_getPositionStrategy",value:function(){return this._overlayRef.getConfig().positionStrategy}}]),xe}();function se(xe,$e,Ge){return void 0!==xe._containerInstance&&(xe._containerInstance._closeInteractionType=$e),xe.close(Ge)}var X=new h.OlP("MatDialogData"),ne=new h.OlP("mat-dialog-default-options"),ve=new h.OlP("mat-dialog-scroll-strategy"),Ee={provide:ve,deps:[d.aV],useFactory:function Ie(xe){return function(){return xe.scrollStrategies.block()}}},ge=function(){var xe=function(){function $e(Ge,ct,Xe,Te,vt,qe,je,Nt,Ft,bt){var St=this;(0,p.Z)(this,$e),this._overlay=Ge,this._injector=ct,this._defaultOptions=Xe,this._parentDialog=Te,this._overlayContainer=vt,this._dialogRefConstructor=je,this._dialogContainerType=Nt,this._dialogDataToken=Ft,this._animationMode=bt,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new B.x,this._afterOpenedAtThisLevel=new B.x,this._ariaHiddenElements=new Map,this._dialogAnimatingOpen=!1,this.afterAllClosed=(0,I.P)(function(){return St.openDialogs.length?St._getAfterAllClosed():St._getAfterAllClosed().pipe((0,Z.O)(void 0))}),this._scrollStrategy=qe}return(0,e.Z)($e,[{key:"openDialogs",get:function(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}},{key:"afterOpened",get:function(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}},{key:"_getAfterAllClosed",value:function(){var ct=this._parentDialog;return ct?ct._getAfterAllClosed():this._afterAllClosedAtThisLevel}},{key:"open",value:function(ct,Xe){var Te=this;if(Xe=function wt(xe,$e){return Object.assign(Object.assign({},$e),xe)}(Xe,this._defaultOptions||new H),Xe.id&&this.getDialogById(Xe.id),this._dialogAnimatingOpen)return this._lastDialogRef;var vt=this._createOverlay(Xe),qe=this._attachDialogContainer(vt,Xe);if("NoopAnimations"!==this._animationMode){var je=qe._animationStateChanged.subscribe(function(Ft){"opening"===Ft.state&&(Te._dialogAnimatingOpen=!0),"opened"===Ft.state&&(Te._dialogAnimatingOpen=!1,je.unsubscribe())});this._animationStateSubscriptions||(this._animationStateSubscriptions=new v.w0),this._animationStateSubscriptions.add(je)}var Nt=this._attachDialogContent(ct,qe,vt,Xe);return this._lastDialogRef=Nt,this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(Nt),Nt.afterClosed().subscribe(function(){return Te._removeOpenDialog(Nt)}),this.afterOpened.next(Nt),qe._initializeWithAttachedContent(),Nt}},{key:"closeAll",value:function(){this._closeDialogs(this.openDialogs)}},{key:"getDialogById",value:function(ct){return this.openDialogs.find(function(Xe){return Xe.id===ct})}},{key:"ngOnDestroy",value:function(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._animationStateSubscriptions&&this._animationStateSubscriptions.unsubscribe()}},{key:"_createOverlay",value:function(ct){var Xe=this._getOverlayConfig(ct);return this._overlay.create(Xe)}},{key:"_getOverlayConfig",value:function(ct){var Xe=new d.X_({positionStrategy:this._overlay.position().global(),scrollStrategy:ct.scrollStrategy||this._scrollStrategy(),panelClass:ct.panelClass,hasBackdrop:ct.hasBackdrop,direction:ct.direction,minWidth:ct.minWidth,minHeight:ct.minHeight,maxWidth:ct.maxWidth,maxHeight:ct.maxHeight,disposeOnNavigation:ct.closeOnNavigation});return ct.backdropClass&&(Xe.backdropClass=ct.backdropClass),Xe}},{key:"_attachDialogContainer",value:function(ct,Xe){var vt=h.zs3.create({parent:Xe&&Xe.viewContainerRef&&Xe.viewContainerRef.injector||this._injector,providers:[{provide:H,useValue:Xe}]}),qe=new s.C5(this._dialogContainerType,Xe.viewContainerRef,vt,Xe.componentFactoryResolver);return ct.attach(qe).instance}},{key:"_attachDialogContent",value:function(ct,Xe,Te,vt){var qe=new this._dialogRefConstructor(Te,Xe,vt.id);if(ct instanceof h.Rgc)Xe.attachTemplatePortal(new s.UE(ct,null,{$implicit:vt.data,dialogRef:qe}));else{var je=this._createInjector(vt,qe,Xe),Nt=Xe.attachComponentPortal(new s.C5(ct,vt.viewContainerRef,je));qe.componentInstance=Nt.instance}return qe.updateSize(vt.width,vt.height).updatePosition(vt.position),qe}},{key:"_createInjector",value:function(ct,Xe,Te){var vt=ct&&ct.viewContainerRef&&ct.viewContainerRef.injector,qe=[{provide:this._dialogContainerType,useValue:Te},{provide:this._dialogDataToken,useValue:ct.data},{provide:this._dialogRefConstructor,useValue:Xe}];return ct.direction&&(!vt||!vt.get(T.Is,null,h.XFs.Optional))&&qe.push({provide:T.Is,useValue:{value:ct.direction,change:(0,j.of)()}}),h.zs3.create({parent:vt||this._injector,providers:qe})}},{key:"_removeOpenDialog",value:function(ct){var Xe=this.openDialogs.indexOf(ct);Xe>-1&&(this.openDialogs.splice(Xe,1),this.openDialogs.length||(this._ariaHiddenElements.forEach(function(Te,vt){Te?vt.setAttribute("aria-hidden",Te):vt.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}},{key:"_hideNonDialogContentFromAssistiveTechnology",value:function(){var ct=this._overlayContainer.getContainerElement();if(ct.parentElement)for(var Xe=ct.parentElement.children,Te=Xe.length-1;Te>-1;Te--){var vt=Xe[Te];vt!==ct&&"SCRIPT"!==vt.nodeName&&"STYLE"!==vt.nodeName&&!vt.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(vt,vt.getAttribute("aria-hidden")),vt.setAttribute("aria-hidden","true"))}}},{key:"_closeDialogs",value:function(ct){for(var Xe=ct.length;Xe--;)ct[Xe].close()}}]),$e}();return xe.\u0275fac=function(Ge){h.$Z()},xe.\u0275dir=h.lG2({type:xe}),xe}(),_t=function(){var xe=function($e){(0,P.Z)(ct,$e);var Ge=(0,t.Z)(ct);function ct(Xe,Te,vt,qe,je,Nt,Ft,bt){return(0,p.Z)(this,ct),Ge.call(this,Xe,Te,qe,Nt,Ft,je,Y,r,X,bt)}return(0,e.Z)(ct)}(ge);return xe.\u0275fac=function(Ge){return new(Ge||xe)(h.LFG(d.aV),h.LFG(h.zs3),h.LFG(N.Ye,8),h.LFG(ne,8),h.LFG(ve),h.LFG(xe,12),h.LFG(d.Xj),h.LFG(ce.Qb,8))},xe.\u0275prov=h.Yz7({token:xe,factory:xe.\u0275fac}),xe}(),qt=0,Lt=function(){var xe=function(){function $e(Ge,ct,Xe){(0,p.Z)(this,$e),this.dialogRef=Ge,this._elementRef=ct,this._dialog=Xe,this.type="button"}return(0,e.Z)($e,[{key:"ngOnInit",value:function(){this.dialogRef||(this.dialogRef=ot(this._elementRef,this._dialog.openDialogs))}},{key:"ngOnChanges",value:function(ct){var Xe=ct._matDialogClose||ct._matDialogCloseResult;Xe&&(this.dialogResult=Xe.currentValue)}},{key:"_onButtonClick",value:function(ct){se(this.dialogRef,0===ct.screenX&&0===ct.screenY?"keyboard":"mouse",this.dialogResult)}}]),$e}();return xe.\u0275fac=function(Ge){return new(Ge||xe)(h.Y36(Y,8),h.Y36(h.SBq),h.Y36(_t))},xe.\u0275dir=h.lG2({type:xe,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(Ge,ct){1&Ge&&h.NdJ("click",function(Te){return ct._onButtonClick(Te)}),2&Ge&&h.uIk("aria-label",ct.ariaLabel||null)("type",ct.type)},inputs:{ariaLabel:["aria-label","ariaLabel"],type:"type",dialogResult:["mat-dialog-close","dialogResult"],_matDialogClose:["matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],features:[h.TTD]}),xe}(),Rt=function(){var xe=function(){function $e(Ge,ct,Xe){(0,p.Z)(this,$e),this._dialogRef=Ge,this._elementRef=ct,this._dialog=Xe,this.id="mat-dialog-title-".concat(qt++)}return(0,e.Z)($e,[{key:"ngOnInit",value:function(){var ct=this;this._dialogRef||(this._dialogRef=ot(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(function(){var Xe=ct._dialogRef._containerInstance;Xe&&!Xe._ariaLabelledBy&&(Xe._ariaLabelledBy=ct.id)})}}]),$e}();return xe.\u0275fac=function(Ge){return new(Ge||xe)(h.Y36(Y,8),h.Y36(h.SBq),h.Y36(_t))},xe.\u0275dir=h.lG2({type:xe,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(Ge,ct){2&Ge&&h.Ikx("id",ct.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),xe}(),it=function(){var xe=(0,e.Z)(function $e(){(0,p.Z)(this,$e)});return xe.\u0275fac=function(Ge){return new(Ge||xe)},xe.\u0275dir=h.lG2({type:xe,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),xe}(),Qe=function(){var xe=(0,e.Z)(function $e(){(0,p.Z)(this,$e)});return xe.\u0275fac=function(Ge){return new(Ge||xe)},xe.\u0275dir=h.lG2({type:xe,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-dialog-actions"]}),xe}();function ot(xe,$e){for(var Ge=xe.nativeElement.parentElement;Ge&&!Ge.classList.contains("mat-dialog-container");)Ge=Ge.parentElement;return Ge?$e.find(function(ct){return ct.id===Ge.id}):null}var tt=function(){var xe=(0,e.Z)(function $e(){(0,p.Z)(this,$e)});return xe.\u0275fac=function(Ge){return new(Ge||xe)},xe.\u0275mod=h.oAB({type:xe}),xe.\u0275inj=h.cJS({providers:[_t,Ee],imports:[[d.U8,s.eL,f.BQ],f.BQ]}),xe}()},19975:function(dt,K,n){"use strict";n.d(K,{d:function(){return s},t:function(){return h}});var P=n(78069),t=n(48047),e=n(76442),p=n(76484),d=n(1130),s=function(){var f=function(){function T(){(0,P.Z)(this,T),this._vertical=!1,this._inset=!1}return(0,t.Z)(T,[{key:"vertical",get:function(){return this._vertical},set:function(I){this._vertical=(0,p.Ig)(I)}},{key:"inset",get:function(){return this._inset},set:function(I){this._inset=(0,p.Ig)(I)}}]),T}();return f.\u0275fac=function(B){return new(B||f)},f.\u0275cmp=e.Xpm({type:f,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(B,I){2&B&&(e.uIk("aria-orientation",I.vertical?"vertical":"horizontal"),e.ekj("mat-divider-vertical",I.vertical)("mat-divider-horizontal",!I.vertical)("mat-divider-inset",I.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(B,I){},styles:[".mat-divider{display:block;margin:0;border-top-width:1px;border-top-style:solid}.mat-divider.mat-divider-vertical{border-top:0;border-right-width:1px;border-right-style:solid}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}\n"],encapsulation:2,changeDetection:0}),f}(),h=function(){var f=(0,t.Z)(function T(){(0,P.Z)(this,T)});return f.\u0275fac=function(B){return new(B||f)},f.\u0275mod=e.oAB({type:f}),f.\u0275inj=e.cJS({imports:[[d.BQ],d.BQ]}),f}()},16531:function(dt,K,n){"use strict";n.d(K,{pp:function(){return ct},To:function(){return Xe},ib:function(){return it},u4:function(){return $e},yz:function(){return xe},yK:function(){return Ge}});var P=n(4089),t=n(20265),e=n(24582),p=n(7318),d=n(48047),s=n(78069),h=n(76442),f=n(76484),T=n(50253),B=n(17714),I=n(89502),v=0,j=new h.OlP("CdkAccordion"),Q=function(){var Te=function(){function vt(){(0,s.Z)(this,vt),this._stateChanges=new T.x,this._openCloseAllActions=new T.x,this.id="cdk-accordion-".concat(v++),this._multi=!1}return(0,d.Z)(vt,[{key:"multi",get:function(){return this._multi},set:function(je){this._multi=(0,f.Ig)(je)}},{key:"openAll",value:function(){this._multi&&this._openCloseAllActions.next(!0)}},{key:"closeAll",value:function(){this._openCloseAllActions.next(!1)}},{key:"ngOnChanges",value:function(je){this._stateChanges.next(je)}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete(),this._openCloseAllActions.complete()}}]),vt}();return Te.\u0275fac=function(qe){return new(qe||Te)},Te.\u0275dir=h.lG2({type:Te,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:"multi"},exportAs:["cdkAccordion"],features:[h._Bn([{provide:j,useExisting:Te}]),h.TTD]}),Te}(),J=0,Z=function(){var Te=function(){function vt(qe,je,Nt){var Ft=this;(0,s.Z)(this,vt),this.accordion=qe,this._changeDetectorRef=je,this._expansionDispatcher=Nt,this._openCloseAllSubscription=B.w0.EMPTY,this.closed=new h.vpe,this.opened=new h.vpe,this.destroyed=new h.vpe,this.expandedChange=new h.vpe,this.id="cdk-accordion-child-".concat(J++),this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=function(){},this._removeUniqueSelectionListener=Nt.listen(function(bt,St){Ft.accordion&&!Ft.accordion.multi&&Ft.accordion.id===St&&Ft.id!==bt&&(Ft.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}return(0,d.Z)(vt,[{key:"expanded",get:function(){return this._expanded},set:function(je){je=(0,f.Ig)(je),this._expanded!==je&&(this._expanded=je,this.expandedChange.emit(je),je?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(je){this._disabled=(0,f.Ig)(je)}},{key:"ngOnDestroy",value:function(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}},{key:"toggle",value:function(){this.disabled||(this.expanded=!this.expanded)}},{key:"close",value:function(){this.disabled||(this.expanded=!1)}},{key:"open",value:function(){this.disabled||(this.expanded=!0)}},{key:"_subscribeToOpenCloseAllActions",value:function(){var je=this;return this.accordion._openCloseAllActions.subscribe(function(Nt){je.disabled||(je.expanded=Nt)})}}]),vt}();return Te.\u0275fac=function(qe){return new(qe||Te)(h.Y36(j,12),h.Y36(h.sBO),h.Y36(I.A8))},Te.\u0275dir=h.lG2({type:Te,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[h._Bn([{provide:j,useValue:void 0}])]}),Te}(),A=function(){var Te=(0,d.Z)(function vt(){(0,s.Z)(this,vt)});return Te.\u0275fac=function(qe){return new(qe||Te)},Te.\u0275mod=h.oAB({type:Te}),Te.\u0275inj=h.cJS({}),Te}(),N=n(24476),E=n(36362),k=n(1130),q=n(84128),ce=n(98977),ie=n(44874),H=n(60116),V=n(59295),ue=n(75939),R=n(57481),r=n(20591),z=n(36646),Y=n(31631),se=["body"];function X(Te,vt){}var ne=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],ve=["mat-expansion-panel-header","*","mat-action-row"];function Re(Te,vt){if(1&Te&&h._UZ(0,"span",2),2&Te){var qe=h.oxw();h.Q6J("@indicatorRotate",qe._getExpandedState())}}var Ie=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],Ee=["mat-panel-title","mat-panel-description","*"],ge=new h.OlP("MAT_ACCORDION"),_t="225ms cubic-bezier(0.4,0.0,0.2,1)",wt={indicatorRotate:(0,Y.X$)("indicatorRotate",[(0,Y.SB)("collapsed, void",(0,Y.oB)({transform:"rotate(0deg)"})),(0,Y.SB)("expanded",(0,Y.oB)({transform:"rotate(180deg)"})),(0,Y.eR)("expanded <=> collapsed, void => collapsed",(0,Y.jt)(_t))]),bodyExpansion:(0,Y.X$)("bodyExpansion",[(0,Y.SB)("collapsed, void",(0,Y.oB)({height:"0px",visibility:"hidden"})),(0,Y.SB)("expanded",(0,Y.oB)({height:"*",visibility:"visible"})),(0,Y.eR)("expanded <=> collapsed, void => collapsed",(0,Y.jt)(_t))])},qt=function(){var Te=(0,d.Z)(function vt(qe){(0,s.Z)(this,vt),this._template=qe});return Te.\u0275fac=function(qe){return new(qe||Te)(h.Y36(h.Rgc))},Te.\u0275dir=h.lG2({type:Te,selectors:[["ng-template","matExpansionPanelContent",""]]}),Te}(),Lt=0,Rt=new h.OlP("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),it=function(){var Te=function(vt){(0,e.Z)(je,vt);var qe=(0,p.Z)(je);function je(Nt,Ft,bt,St,Pt,ut,yt){var be;return(0,s.Z)(this,je),(be=qe.call(this,Nt,Ft,bt))._viewContainerRef=St,be._animationMode=ut,be._hideToggle=!1,be.afterExpand=new h.vpe,be.afterCollapse=new h.vpe,be._inputChanges=new T.x,be._headerId="mat-expansion-panel-header-".concat(Lt++),be._bodyAnimationDone=new T.x,be.accordion=Nt,be._document=Pt,be._bodyAnimationDone.pipe((0,ce.x)(function(we,_e){return we.fromState===_e.fromState&&we.toState===_e.toState})).subscribe(function(we){"void"!==we.fromState&&("expanded"===we.toState?be.afterExpand.emit():"collapsed"===we.toState&&be.afterCollapse.emit())}),yt&&(be.hideToggle=yt.hideToggle),be}return(0,d.Z)(je,[{key:"hideToggle",get:function(){return this._hideToggle||this.accordion&&this.accordion.hideToggle},set:function(Ft){this._hideToggle=(0,f.Ig)(Ft)}},{key:"togglePosition",get:function(){return this._togglePosition||this.accordion&&this.accordion.togglePosition},set:function(Ft){this._togglePosition=Ft}},{key:"_hasSpacing",value:function(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}},{key:"_getExpandedState",value:function(){return this.expanded?"expanded":"collapsed"}},{key:"toggle",value:function(){this.expanded=!this.expanded}},{key:"close",value:function(){this.expanded=!1}},{key:"open",value:function(){this.expanded=!0}},{key:"ngAfterContentInit",value:function(){var Ft=this;this._lazyContent&&this.opened.pipe((0,ie.O)(null),(0,H.h)(function(){return Ft.expanded&&!Ft._portal}),(0,V.q)(1)).subscribe(function(){Ft._portal=new N.UE(Ft._lazyContent._template,Ft._viewContainerRef)})}},{key:"ngOnChanges",value:function(Ft){this._inputChanges.next(Ft)}},{key:"ngOnDestroy",value:function(){(0,P.Z)((0,t.Z)(je.prototype),"ngOnDestroy",this).call(this),this._bodyAnimationDone.complete(),this._inputChanges.complete()}},{key:"_containsFocus",value:function(){if(this._body){var Ft=this._document.activeElement,bt=this._body.nativeElement;return Ft===bt||bt.contains(Ft)}return!1}}]),je}(Z);return Te.\u0275fac=function(qe){return new(qe||Te)(h.Y36(ge,12),h.Y36(h.sBO),h.Y36(I.A8),h.Y36(h.s_b),h.Y36(E.K0),h.Y36(R.Qb,8),h.Y36(Rt,8))},Te.\u0275cmp=h.Xpm({type:Te,selectors:[["mat-expansion-panel"]],contentQueries:function(qe,je,Nt){var Ft;1&qe&&h.Suo(Nt,qt,5),2&qe&&h.iGM(Ft=h.CRH())&&(je._lazyContent=Ft.first)},viewQuery:function(qe,je){var Nt;1&qe&&h.Gf(se,5),2&qe&&h.iGM(Nt=h.CRH())&&(je._body=Nt.first)},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(qe,je){2&qe&&h.ekj("mat-expanded",je.expanded)("_mat-animation-noopable","NoopAnimations"===je._animationMode)("mat-expansion-panel-spacing",je._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[h._Bn([{provide:ge,useValue:void 0}]),h.qOj,h.TTD],ngContentSelectors:ve,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(qe,je){1&qe&&(h.F$t(ne),h.Hsn(0),h.TgZ(1,"div",0,1),h.NdJ("@bodyExpansion.done",function(Ft){return je._bodyAnimationDone.next(Ft)}),h.TgZ(3,"div",2),h.Hsn(4,1),h.YNc(5,X,0,0,"ng-template",3),h.qZA(),h.Hsn(6,2),h.qZA()),2&qe&&(h.xp6(1),h.Q6J("@bodyExpansion",je._getExpandedState())("id",je.id),h.uIk("aria-labelledby",je._headerId),h.xp6(4),h.Q6J("cdkPortalOutlet",je._portal))},directives:[N.Pl],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[wt.bodyExpansion]},changeDetection:0}),Te}(),tt=(0,k.sb)((0,d.Z)(function Te(){(0,s.Z)(this,Te)})),xe=function(){var Te=function(vt){(0,e.Z)(je,vt);var qe=(0,p.Z)(je);function je(Nt,Ft,bt,St,Pt,ut,yt){var be;(0,s.Z)(this,je),(be=qe.call(this)).panel=Nt,be._element=Ft,be._focusMonitor=bt,be._changeDetectorRef=St,be._animationMode=ut,be._parentChangeSubscription=B.w0.EMPTY;var we=Nt.accordion?Nt.accordion._stateChanges.pipe((0,H.h)(function(_e){return!(!_e.hideToggle&&!_e.togglePosition)})):r.E;return be.tabIndex=parseInt(yt||"")||0,be._parentChangeSubscription=(0,z.T)(Nt.opened,Nt.closed,we,Nt._inputChanges.pipe((0,H.h)(function(_e){return!!(_e.hideToggle||_e.disabled||_e.togglePosition)}))).subscribe(function(){return be._changeDetectorRef.markForCheck()}),Nt.closed.pipe((0,H.h)(function(){return Nt._containsFocus()})).subscribe(function(){return bt.focusVia(Ft,"program")}),Pt&&(be.expandedHeight=Pt.expandedHeight,be.collapsedHeight=Pt.collapsedHeight),be}return(0,d.Z)(je,[{key:"disabled",get:function(){return this.panel.disabled}},{key:"_toggle",value:function(){this.disabled||this.panel.toggle()}},{key:"_isExpanded",value:function(){return this.panel.expanded}},{key:"_getExpandedState",value:function(){return this.panel._getExpandedState()}},{key:"_getPanelId",value:function(){return this.panel.id}},{key:"_getTogglePosition",value:function(){return this.panel.togglePosition}},{key:"_showToggle",value:function(){return!this.panel.hideToggle&&!this.panel.disabled}},{key:"_getHeaderHeight",value:function(){var Ft=this._isExpanded();return Ft&&this.expandedHeight?this.expandedHeight:!Ft&&this.collapsedHeight?this.collapsedHeight:null}},{key:"_keydown",value:function(Ft){switch(Ft.keyCode){case ue.L_:case ue.K5:(0,ue.Vb)(Ft)||(Ft.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(Ft))}}},{key:"focus",value:function(Ft,bt){Ft?this._focusMonitor.focusVia(this._element,Ft,bt):this._element.nativeElement.focus(bt)}},{key:"ngAfterViewInit",value:function(){var Ft=this;this._focusMonitor.monitor(this._element).subscribe(function(bt){bt&&Ft.panel.accordion&&Ft.panel.accordion._handleHeaderFocus(Ft)})}},{key:"ngOnDestroy",value:function(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}]),je}(tt);return Te.\u0275fac=function(qe){return new(qe||Te)(h.Y36(it,1),h.Y36(h.SBq),h.Y36(q.tE),h.Y36(h.sBO),h.Y36(Rt,8),h.Y36(R.Qb,8),h.$8M("tabindex"))},Te.\u0275cmp=h.Xpm({type:Te,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(qe,je){1&qe&&h.NdJ("click",function(){return je._toggle()})("keydown",function(Ft){return je._keydown(Ft)}),2&qe&&(h.uIk("id",je.panel._headerId)("tabindex",je.tabIndex)("aria-controls",je._getPanelId())("aria-expanded",je._isExpanded())("aria-disabled",je.panel.disabled),h.Udp("height",je._getHeaderHeight()),h.ekj("mat-expanded",je._isExpanded())("mat-expansion-toggle-indicator-after","after"===je._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===je._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===je._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[h.qOj],ngContentSelectors:Ee,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(qe,je){1&qe&&(h.F$t(Ie),h.TgZ(0,"span",0),h.Hsn(1),h.Hsn(2,1),h.Hsn(3,2),h.qZA(),h.YNc(4,Re,1,1,"span",1)),2&qe&&(h.xp6(4),h.Q6J("ngIf",je._showToggle()))},directives:[E.O5],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}.cdk-high-contrast-active .mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}\n'],encapsulation:2,data:{animation:[wt.indicatorRotate]},changeDetection:0}),Te}(),$e=function(){var Te=(0,d.Z)(function vt(){(0,s.Z)(this,vt)});return Te.\u0275fac=function(qe){return new(qe||Te)},Te.\u0275dir=h.lG2({type:Te,selectors:[["mat-panel-description"]],hostAttrs:[1,"mat-expansion-panel-header-description"]}),Te}(),Ge=function(){var Te=(0,d.Z)(function vt(){(0,s.Z)(this,vt)});return Te.\u0275fac=function(qe){return new(qe||Te)},Te.\u0275dir=h.lG2({type:Te,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]}),Te}(),ct=function(){var Te=function(vt){(0,e.Z)(je,vt);var qe=(0,p.Z)(je);function je(){var Nt;return(0,s.Z)(this,je),(Nt=qe.apply(this,arguments))._ownHeaders=new h.n_E,Nt._hideToggle=!1,Nt.displayMode="default",Nt.togglePosition="after",Nt}return(0,d.Z)(je,[{key:"hideToggle",get:function(){return this._hideToggle},set:function(Ft){this._hideToggle=(0,f.Ig)(Ft)}},{key:"ngAfterContentInit",value:function(){var Ft=this;this._headers.changes.pipe((0,ie.O)(this._headers)).subscribe(function(bt){Ft._ownHeaders.reset(bt.filter(function(St){return St.panel.accordion===Ft})),Ft._ownHeaders.notifyOnChanges()}),this._keyManager=new q.Em(this._ownHeaders).withWrap().withHomeAndEnd()}},{key:"_handleHeaderKeydown",value:function(Ft){this._keyManager.onKeydown(Ft)}},{key:"_handleHeaderFocus",value:function(Ft){this._keyManager.updateActiveItem(Ft)}},{key:"ngOnDestroy",value:function(){(0,P.Z)((0,t.Z)(je.prototype),"ngOnDestroy",this).call(this),this._ownHeaders.destroy()}}]),je}(Q);return Te.\u0275fac=function(){var vt;return function(je){return(vt||(vt=h.n5z(Te)))(je||Te)}}(),Te.\u0275dir=h.lG2({type:Te,selectors:[["mat-accordion"]],contentQueries:function(qe,je,Nt){var Ft;1&qe&&h.Suo(Nt,xe,5),2&qe&&h.iGM(Ft=h.CRH())&&(je._headers=Ft)},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(qe,je){2&qe&&h.ekj("mat-accordion-multi",je.multi)},inputs:{multi:"multi",hideToggle:"hideToggle",displayMode:"displayMode",togglePosition:"togglePosition"},exportAs:["matAccordion"],features:[h._Bn([{provide:ge,useExisting:Te}]),h.qOj]}),Te}(),Xe=function(){var Te=(0,d.Z)(function vt(){(0,s.Z)(this,vt)});return Te.\u0275fac=function(qe){return new(qe||Te)},Te.\u0275mod=h.oAB({type:Te}),Te.\u0275inj=h.cJS({imports:[[E.ez,k.BQ,A,N.eL]]}),Te}()},44770:function(dt,K,n){"use strict";n.d(K,{G_:function(){return bt},TO:function(){return _t},KE:function(){return St},Eo:function(){return qt},lN:function(){return Pt},bx:function(){return tt},hX:function(){return xe},R9:function(){return Te}});var P=n(86170),t=n(24582),e=n(7318),p=n(48047),d=n(78069),s=n(35837),h=n(36362),f=n(76442),T=n(1130),B=n(76484),I=n(50253),v=n(36646),j=n(23280),Q=n(44874),J=n(68951),Z=n(59295),A=n(31631),N=n(57481),E=n(51588),k=n(14390),q=["connectionContainer"],ce=["inputContainer"],ie=["label"];function H(ut,yt){1&ut&&(f.ynx(0),f.TgZ(1,"div",14),f._UZ(2,"div",15),f._UZ(3,"div",16),f._UZ(4,"div",17),f.qZA(),f.TgZ(5,"div",18),f._UZ(6,"div",15),f._UZ(7,"div",16),f._UZ(8,"div",17),f.qZA(),f.BQk())}function V(ut,yt){if(1&ut){var be=f.EpF();f.TgZ(0,"div",19),f.NdJ("cdkObserveContent",function(){return f.CHM(be),f.oxw().updateOutlineGap()}),f.Hsn(1,1),f.qZA()}if(2&ut){var we=f.oxw();f.Q6J("cdkObserveContentDisabled","outline"!=we.appearance)}}function ue(ut,yt){if(1&ut&&(f.ynx(0),f.Hsn(1,2),f.TgZ(2,"span"),f._uU(3),f.qZA(),f.BQk()),2&ut){var be=f.oxw(2);f.xp6(3),f.Oqu(be._control.placeholder)}}function R(ut,yt){1&ut&&f.Hsn(0,3,["*ngSwitchCase","true"])}function r(ut,yt){1&ut&&(f.TgZ(0,"span",23),f._uU(1," *"),f.qZA())}function z(ut,yt){if(1&ut){var be=f.EpF();f.TgZ(0,"label",20,21),f.NdJ("cdkObserveContent",function(){return f.CHM(be),f.oxw().updateOutlineGap()}),f.YNc(2,ue,4,1,"ng-container",12),f.YNc(3,R,1,0,"ng-content",12),f.YNc(4,r,2,0,"span",22),f.qZA()}if(2&ut){var we=f.oxw();f.ekj("mat-empty",we._control.empty&&!we._shouldAlwaysFloat())("mat-form-field-empty",we._control.empty&&!we._shouldAlwaysFloat())("mat-accent","accent"==we.color)("mat-warn","warn"==we.color),f.Q6J("cdkObserveContentDisabled","outline"!=we.appearance)("id",we._labelId)("ngSwitch",we._hasLabel()),f.uIk("for",we._control.id)("aria-owns",we._control.id),f.xp6(2),f.Q6J("ngSwitchCase",!1),f.xp6(1),f.Q6J("ngSwitchCase",!0),f.xp6(1),f.Q6J("ngIf",!we.hideRequiredMarker&&we._control.required&&!we._control.disabled)}}function Y(ut,yt){1&ut&&(f.TgZ(0,"div",24),f.Hsn(1,4),f.qZA())}function se(ut,yt){if(1&ut&&(f.TgZ(0,"div",25),f._UZ(1,"span",26),f.qZA()),2&ut){var be=f.oxw();f.xp6(1),f.ekj("mat-accent","accent"==be.color)("mat-warn","warn"==be.color)}}function X(ut,yt){if(1&ut&&(f.TgZ(0,"div"),f.Hsn(1,5),f.qZA()),2&ut){var be=f.oxw();f.Q6J("@transitionMessages",be._subscriptAnimationState)}}function ne(ut,yt){if(1&ut&&(f.TgZ(0,"div",30),f._uU(1),f.qZA()),2&ut){var be=f.oxw(2);f.Q6J("id",be._hintLabelId),f.xp6(1),f.Oqu(be.hintLabel)}}function ve(ut,yt){if(1&ut&&(f.TgZ(0,"div",27),f.YNc(1,ne,2,2,"div",28),f.Hsn(2,6),f._UZ(3,"div",29),f.Hsn(4,7),f.qZA()),2&ut){var be=f.oxw();f.Q6J("@transitionMessages",be._subscriptAnimationState),f.xp6(1),f.Q6J("ngIf",be.hintLabel)}}var Re=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Ie=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Ee=0,ge=new f.OlP("MatError"),_t=function(){var ut=(0,p.Z)(function yt(be,we){(0,d.Z)(this,yt),this.id="mat-error-".concat(Ee++),be||we.nativeElement.setAttribute("aria-live","polite")});return ut.\u0275fac=function(be){return new(be||ut)(f.$8M("aria-live"),f.Y36(f.SBq))},ut.\u0275dir=f.lG2({type:ut,selectors:[["mat-error"]],hostAttrs:["aria-atomic","true",1,"mat-error"],hostVars:1,hostBindings:function(be,we){2&be&&f.uIk("id",we.id)},inputs:{id:"id"},features:[f._Bn([{provide:ge,useExisting:ut}])]}),ut}(),wt={transitionMessages:(0,A.X$)("transitionMessages",[(0,A.SB)("enter",(0,A.oB)({opacity:1,transform:"translateY(0%)"})),(0,A.eR)("void => enter",[(0,A.oB)({opacity:0,transform:"translateY(-5px)"}),(0,A.jt)("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},qt=function(){var ut=(0,p.Z)(function yt(){(0,d.Z)(this,yt)});return ut.\u0275fac=function(be){return new(be||ut)},ut.\u0275dir=f.lG2({type:ut}),ut}(),Qe=0,ot=new f.OlP("MatHint"),tt=function(){var ut=(0,p.Z)(function yt(){(0,d.Z)(this,yt),this.align="start",this.id="mat-hint-".concat(Qe++)});return ut.\u0275fac=function(be){return new(be||ut)},ut.\u0275dir=f.lG2({type:ut,selectors:[["mat-hint"]],hostAttrs:[1,"mat-hint"],hostVars:4,hostBindings:function(be,we){2&be&&(f.uIk("id",we.id)("align",null),f.ekj("mat-form-field-hint-end","end"===we.align))},inputs:{align:"align",id:"id"},features:[f._Bn([{provide:ot,useExisting:ut}])]}),ut}(),xe=function(){var ut=(0,p.Z)(function yt(){(0,d.Z)(this,yt)});return ut.\u0275fac=function(be){return new(be||ut)},ut.\u0275dir=f.lG2({type:ut,selectors:[["mat-label"]]}),ut}(),$e=function(){var ut=(0,p.Z)(function yt(){(0,d.Z)(this,yt)});return ut.\u0275fac=function(be){return new(be||ut)},ut.\u0275dir=f.lG2({type:ut,selectors:[["mat-placeholder"]]}),ut}(),Ge=new f.OlP("MatPrefix"),Xe=new f.OlP("MatSuffix"),Te=function(){var ut=(0,p.Z)(function yt(){(0,d.Z)(this,yt)});return ut.\u0275fac=function(be){return new(be||ut)},ut.\u0275dir=f.lG2({type:ut,selectors:[["","matSuffix",""]],features:[f._Bn([{provide:Xe,useExisting:ut}])]}),ut}(),vt=0,Nt=(0,T.pj)(function(){return(0,p.Z)(function ut(yt){(0,d.Z)(this,ut),this._elementRef=yt})}(),"primary"),Ft=new f.OlP("MAT_FORM_FIELD_DEFAULT_OPTIONS"),bt=new f.OlP("MatFormField"),St=function(){var ut=function(yt){(0,t.Z)(we,yt);var be=(0,e.Z)(we);function we(_e,$,Ae,ft,gt,Bt,_n){var wn;return(0,d.Z)(this,we),(wn=be.call(this,_e))._changeDetectorRef=$,wn._dir=Ae,wn._defaults=ft,wn._platform=gt,wn._ngZone=Bt,wn._outlineGapCalculationNeededImmediately=!1,wn._outlineGapCalculationNeededOnStable=!1,wn._destroyed=new I.x,wn._showAlwaysAnimate=!1,wn._subscriptAnimationState="",wn._hintLabel="",wn._hintLabelId="mat-hint-".concat(vt++),wn._labelId="mat-form-field-label-".concat(vt++),wn.floatLabel=wn._getDefaultFloatLabelState(),wn._animationsEnabled="NoopAnimations"!==_n,wn.appearance=ft&&ft.appearance?ft.appearance:"legacy",wn._hideRequiredMarker=!(!ft||null==ft.hideRequiredMarker)&&ft.hideRequiredMarker,wn}return(0,p.Z)(we,[{key:"appearance",get:function(){return this._appearance},set:function($){var Ae=this._appearance;this._appearance=$||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&Ae!==$&&(this._outlineGapCalculationNeededOnStable=!0)}},{key:"hideRequiredMarker",get:function(){return this._hideRequiredMarker},set:function($){this._hideRequiredMarker=(0,B.Ig)($)}},{key:"_shouldAlwaysFloat",value:function(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}},{key:"_canLabelFloat",value:function(){return"never"!==this.floatLabel}},{key:"hintLabel",get:function(){return this._hintLabel},set:function($){this._hintLabel=$,this._processHints()}},{key:"floatLabel",get:function(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel},set:function($){$!==this._floatLabel&&(this._floatLabel=$||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}},{key:"_control",get:function(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic},set:function($){this._explicitFormFieldControl=$}},{key:"getLabelId",value:function(){return this._hasFloatingLabel()?this._labelId:null}},{key:"getConnectedOverlayOrigin",value:function(){return this._connectionContainerRef||this._elementRef}},{key:"ngAfterContentInit",value:function(){var $=this;this._validateControlChild();var Ae=this._control;Ae.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-".concat(Ae.controlType)),Ae.stateChanges.pipe((0,Q.O)(null)).subscribe(function(){$._validatePlaceholders(),$._syncDescribedByIds(),$._changeDetectorRef.markForCheck()}),Ae.ngControl&&Ae.ngControl.valueChanges&&Ae.ngControl.valueChanges.pipe((0,J.R)(this._destroyed)).subscribe(function(){return $._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(function(){$._ngZone.onStable.pipe((0,J.R)($._destroyed)).subscribe(function(){$._outlineGapCalculationNeededOnStable&&$.updateOutlineGap()})}),(0,v.T)(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(function(){$._outlineGapCalculationNeededOnStable=!0,$._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe((0,Q.O)(null)).subscribe(function(){$._processHints(),$._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe((0,Q.O)(null)).subscribe(function(){$._syncDescribedByIds(),$._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe((0,J.R)(this._destroyed)).subscribe(function(){"function"==typeof requestAnimationFrame?$._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return $.updateOutlineGap()})}):$.updateOutlineGap()})}},{key:"ngAfterContentChecked",value:function(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}},{key:"ngAfterViewInit",value:function(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_shouldForward",value:function($){var Ae=this._control?this._control.ngControl:null;return Ae&&Ae[$]}},{key:"_hasPlaceholder",value:function(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}},{key:"_hasLabel",value:function(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}},{key:"_shouldLabelFloat",value:function(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}},{key:"_hideControlPlaceholder",value:function(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}},{key:"_hasFloatingLabel",value:function(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}},{key:"_getDisplayedMessages",value:function(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}},{key:"_animateAndLockLabel",value:function(){var $=this;this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,(0,j.R)(this._label.nativeElement,"transitionend").pipe((0,Z.q)(1)).subscribe(function(){$._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}},{key:"_validatePlaceholders",value:function(){}},{key:"_processHints",value:function(){this._validateHints(),this._syncDescribedByIds()}},{key:"_validateHints",value:function(){}},{key:"_getDefaultFloatLabelState",value:function(){return this._defaults&&this._defaults.floatLabel||"auto"}},{key:"_syncDescribedByIds",value:function(){if(this._control){var $=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&$.push.apply($,(0,P.Z)(this._control.userAriaDescribedBy.split(" "))),"hint"===this._getDisplayedMessages()){var Ae=this._hintChildren?this._hintChildren.find(function(gt){return"start"===gt.align}):null,ft=this._hintChildren?this._hintChildren.find(function(gt){return"end"===gt.align}):null;Ae?$.push(Ae.id):this._hintLabel&&$.push(this._hintLabelId),ft&&$.push(ft.id)}else this._errorChildren&&$.push.apply($,(0,P.Z)(this._errorChildren.map(function(gt){return gt.id})));this._control.setDescribedByIds($)}}},{key:"_validateControlChild",value:function(){}},{key:"updateOutlineGap",value:function(){var $=this._label?this._label.nativeElement:null,Ae=this._connectionContainerRef.nativeElement,ft=".mat-form-field-outline-start",gt=".mat-form-field-outline-gap";if("outline"===this.appearance&&this._platform.isBrowser){if(!$||!$.children.length||!$.textContent.trim()){for(var Bt=Ae.querySelectorAll("".concat(ft,", ").concat(gt)),_n=0;_n0?.75*sn+10:0}for(var Ue=0;Ue1&&void 0!==arguments[1]?arguments[1]:xe;return this._fontCssClassesByAlias.set(xe,$e),this}},{key:"classNameForFontAlias",value:function(xe){return this._fontCssClassesByAlias.get(xe)||xe}},{key:"setDefaultFontSetClass",value:function(xe){return this._defaultFontSetClass=xe,this}},{key:"getDefaultFontSetClass",value:function(){return this._defaultFontSetClass}},{key:"getSvgIconFromUrl",value:function(xe){var $e=this,Ge=this._sanitizer.sanitize(s.q3G.RESOURCE_URL,xe);if(!Ge)throw r(xe);var ct=this._cachedIconsByUrl.get(Ge);return ct?(0,B.of)(ve(ct)):this._loadSvgIconFromConfig(new Y(xe,null)).pipe((0,Q.b)(function(Xe){return $e._cachedIconsByUrl.set(Ge,Xe)}),(0,J.U)(function(Xe){return ve(Xe)}))}},{key:"getNamedSvgIcon",value:function(xe){var $e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",Ge=Re($e,xe),ct=this._svgIconConfigs.get(Ge);if(ct)return this._getSvgFromConfig(ct);if(ct=this._getIconConfigFromResolvers($e,xe))return this._svgIconConfigs.set(Ge,ct),this._getSvgFromConfig(ct);var Xe=this._iconSetConfigs.get($e);return Xe?this._getSvgFromIconSetConfigs(xe,Xe):(0,I._)(ue(Ge))}},{key:"ngOnDestroy",value:function(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}},{key:"_getSvgFromConfig",value:function(xe){return xe.svgText?(0,B.of)(ve(this._svgElementFromConfig(xe))):this._loadSvgIconFromConfig(xe).pipe((0,J.U)(function($e){return ve($e)}))}},{key:"_getSvgFromIconSetConfigs",value:function(xe,$e){var Ge=this,ct=this._extractIconWithNameFromAnySet(xe,$e);if(ct)return(0,B.of)(ct);var Xe=$e.filter(function(Te){return!Te.svgText}).map(function(Te){return Ge._loadSvgIconSetFromConfig(Te).pipe((0,Z.K)(function(vt){var qe=Ge._sanitizer.sanitize(s.q3G.RESOURCE_URL,Te.url),je="Loading icon set URL: ".concat(qe," failed: ").concat(vt.message);return Ge._errorHandler.handleError(new Error(je)),(0,B.of)(null)}))});return(0,v.D)(Xe).pipe((0,J.U)(function(){var Te=Ge._extractIconWithNameFromAnySet(xe,$e);if(!Te)throw ue(xe);return Te}))}},{key:"_extractIconWithNameFromAnySet",value:function(xe,$e){for(var Ge=$e.length-1;Ge>=0;Ge--){var ct=$e[Ge];if(ct.svgText&&ct.svgText.toString().indexOf(xe)>-1){var Xe=this._svgElementFromConfig(ct),Te=this._extractSvgIconFromSet(Xe,xe,ct.options);if(Te)return Te}}return null}},{key:"_loadSvgIconFromConfig",value:function(xe){var $e=this;return this._fetchIcon(xe).pipe((0,Q.b)(function(Ge){return xe.svgText=Ge}),(0,J.U)(function(){return $e._svgElementFromConfig(xe)}))}},{key:"_loadSvgIconSetFromConfig",value:function(xe){return xe.svgText?(0,B.of)(null):this._fetchIcon(xe).pipe((0,Q.b)(function($e){return xe.svgText=$e}))}},{key:"_extractSvgIconFromSet",value:function(xe,$e,Ge){var ct=xe.querySelector('[id="'.concat($e,'"]'));if(!ct)return null;var Xe=ct.cloneNode(!0);if(Xe.removeAttribute("id"),"svg"===Xe.nodeName.toLowerCase())return this._setSvgAttributes(Xe,Ge);if("symbol"===Xe.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(Xe),Ge);var Te=this._svgElementFromString(V(""));return Te.appendChild(Xe),this._setSvgAttributes(Te,Ge)}},{key:"_svgElementFromString",value:function(xe){var $e=this._document.createElement("DIV");$e.innerHTML=xe;var Ge=$e.querySelector("svg");if(!Ge)throw Error(" tag not found");return Ge}},{key:"_toSvgElement",value:function(xe){for(var $e=this._svgElementFromString(V("")),Ge=xe.attributes,ct=0;ct-1}},{key:"_isBadInput",value:function(){var V=this._elementRef.nativeElement.validity;return V&&V.badInput}},{key:"empty",get:function(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}},{key:"shouldLabelFloat",get:function(){if(this._isNativeSelect){var V=this._elementRef.nativeElement,ue=V.options[0];return this.focused||V.multiple||!this.empty||!!(V.selectedIndex>-1&&ue&&ue.label)}return this.focused||!this.empty}},{key:"setDescribedByIds",value:function(V){V.length?this._elementRef.nativeElement.setAttribute("aria-describedby",V.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}},{key:"onContainerClick",value:function(){this.focused||this.focus()}},{key:"_isInlineSelect",value:function(){var V=this._elementRef.nativeElement;return this._isNativeSelect&&(V.multiple||V.size>1)}}]),ie}(A);return k.\u0275fac=function(ce){return new(ce||k)(h.Y36(h.SBq),h.Y36(s.t4),h.Y36(f.a5,10),h.Y36(f.F,8),h.Y36(f.sg,8),h.Y36(T.rD),h.Y36(Q,10),h.Y36(v.Lq),h.Y36(h.R0b),h.Y36(B.G_,8))},k.\u0275dir=h.lG2({type:k,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:12,hostBindings:function(ce,ie){1&ce&&h.NdJ("focus",function(){return ie._focusChanged(!0)})("blur",function(){return ie._focusChanged(!1)})("input",function(){return ie._onInput()}),2&ce&&(h.Ikx("disabled",ie.disabled)("required",ie.required),h.uIk("id",ie.id)("data-placeholder",ie.placeholder)("name",ie.name||null)("readonly",ie.readonly&&!ie._isNativeSelect||null)("aria-invalid",ie.empty&&ie.required?null:ie.errorState)("aria-required",ie.required),h.ekj("mat-input-server",ie._isServer)("mat-native-select-inline",ie._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],features:[h._Bn([{provide:B.Eo,useExisting:k}]),h.qOj,h.TTD]}),k}(),E=function(){var k=(0,e.Z)(function q(){(0,p.Z)(this,q)});return k.\u0275fac=function(ce){return new(ce||k)},k.\u0275mod=h.oAB({type:k}),k.\u0275inj=h.cJS({providers:[T.rD],imports:[[v.Ky,B.lN,T.BQ],v.Ky,B.lN]}),k}()},26131:function(dt,K,n){"use strict";n.d(K,{i$:function(){return se},Nh:function(){return ne},Tg:function(){return Re},ie:function(){return Lt},Hk:function(){return Y}}),n(95106);var t=n(24582),e=n(7318),p=n(48047),d=n(78069),s=n(36362),h=n(76442),f=n(1130),T=n(76484),B=n(50253),I=n(68951),A=(n(44874),n(84128),n(89502),n(75939),n(90587),n(19975)),N=["*"],k=[[["","mat-list-avatar",""],["","mat-list-icon",""],["","matListAvatar",""],["","matListIcon",""]],[["","mat-line",""],["","matLine",""]],"*"],q=["[mat-list-avatar], [mat-list-icon], [matListAvatar], [matListIcon]","[mat-line], [matLine]","*"],ue=(0,f.Id)((0,f.Kr)(function(){return(0,p.Z)(function Rt(){(0,d.Z)(this,Rt)})}())),R=(0,f.Kr)(function(){return(0,p.Z)(function Rt(){(0,d.Z)(this,Rt)})}()),r=new h.OlP("MatList"),z=new h.OlP("MatNavList"),Y=function(){var Rt=function(it){(0,t.Z)(ot,it);var Qe=(0,e.Z)(ot);function ot(){var tt;return(0,d.Z)(this,ot),(tt=Qe.apply(this,arguments))._stateChanges=new B.x,tt}return(0,p.Z)(ot,[{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),ot}(ue);return Rt.\u0275fac=function(){var it;return function(ot){return(it||(it=h.n5z(Rt)))(ot||Rt)}}(),Rt.\u0275cmp=h.Xpm({type:Rt,selectors:[["mat-nav-list"]],hostAttrs:["role","navigation",1,"mat-nav-list","mat-list-base"],inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matNavList"],features:[h._Bn([{provide:z,useExisting:Rt}]),h.qOj,h.TTD],ngContentSelectors:N,decls:1,vars:0,template:function(Qe,ot){1&Qe&&(h.F$t(),h.Hsn(0))},styles:['.mat-subheader{display:flex;box-sizing:border-box;padding:16px;align-items:center}.mat-list-base .mat-subheader{margin:0}.mat-list-base{padding-top:8px;display:block;-webkit-tap-highlight-color:transparent}.mat-list-base .mat-subheader{height:48px;line-height:16px}.mat-list-base .mat-subheader:first-child{margin-top:-8px}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{display:block;height:48px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base .mat-list-item .mat-list-item-content,.mat-list-base .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base .mat-list-item .mat-list-item-content-reverse,.mat-list-base .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base .mat-list-item .mat-list-item-ripple,.mat-list-base .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar,.mat-list-base .mat-list-option.mat-list-item-with-avatar{height:56px}.mat-list-base .mat-list-item.mat-2-line,.mat-list-base .mat-list-option.mat-2-line{height:72px}.mat-list-base .mat-list-item.mat-3-line,.mat-list-base .mat-list-option.mat-3-line{height:88px}.mat-list-base .mat-list-item.mat-multi-line,.mat-list-base .mat-list-option.mat-multi-line{height:auto}.mat-list-base .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base .mat-list-item .mat-list-text,.mat-list-base .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base .mat-list-item .mat-list-text>*,.mat-list-base .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base .mat-list-item .mat-list-text:empty,.mat-list-base .mat-list-option .mat-list-text:empty{display:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base .mat-list-item .mat-list-avatar,.mat-list-base .mat-list-option .mat-list-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;object-fit:cover}.mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:72px;width:calc(100% - 72px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:72px}.mat-list-base .mat-list-item .mat-list-icon,.mat-list-base .mat-list-option .mat-list-icon{flex-shrink:0;width:24px;height:24px;font-size:24px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:64px;width:calc(100% - 64px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:64px}.mat-list-base .mat-list-item .mat-divider,.mat-list-base .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base .mat-list-item .mat-divider,[dir=rtl] .mat-list-base .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-list-base[dense]{padding-top:4px;display:block}.mat-list-base[dense] .mat-subheader{height:40px;line-height:8px}.mat-list-base[dense] .mat-subheader:first-child{margin-top:-4px}.mat-list-base[dense] .mat-list-item,.mat-list-base[dense] .mat-list-option{display:block;height:40px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-item-content,.mat-list-base[dense] .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base[dense] .mat-list-item .mat-list-item-content-reverse,.mat-list-base[dense] .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base[dense] .mat-list-item .mat-list-item-ripple,.mat-list-base[dense] .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar{height:48px}.mat-list-base[dense] .mat-list-item.mat-2-line,.mat-list-base[dense] .mat-list-option.mat-2-line{height:60px}.mat-list-base[dense] .mat-list-item.mat-3-line,.mat-list-base[dense] .mat-list-option.mat-3-line{height:76px}.mat-list-base[dense] .mat-list-item.mat-multi-line,.mat-list-base[dense] .mat-list-option.mat-multi-line{height:auto}.mat-list-base[dense] .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base[dense] .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base[dense] .mat-list-item .mat-list-text,.mat-list-base[dense] .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-text>*,.mat-list-base[dense] .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base[dense] .mat-list-item .mat-list-text:empty,.mat-list-base[dense] .mat-list-option .mat-list-text:empty{display:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base[dense] .mat-list-item .mat-list-avatar,.mat-list-base[dense] .mat-list-option .mat-list-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;object-fit:cover}.mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:68px;width:calc(100% - 68px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:68px}.mat-list-base[dense] .mat-list-item .mat-list-icon,.mat-list-base[dense] .mat-list-option .mat-list-icon{flex-shrink:0;width:20px;height:20px;font-size:20px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:60px;width:calc(100% - 60px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:60px}.mat-list-base[dense] .mat-list-item .mat-divider,.mat-list-base[dense] .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-divider,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base[dense] .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-nav-list a{text-decoration:none;color:inherit}.mat-nav-list .mat-list-item{cursor:pointer;outline:none}mat-action-list button{background:none;color:inherit;border:none;font:inherit;outline:inherit;-webkit-tap-highlight-color:transparent;text-align:left}[dir=rtl] mat-action-list button{text-align:right}mat-action-list button::-moz-focus-inner{border:0}mat-action-list .mat-list-item{cursor:pointer;outline:inherit}.mat-list-option:not(.mat-list-item-disabled){cursor:pointer;outline:none}.mat-list-item-disabled{pointer-events:none}.cdk-high-contrast-active .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active :host .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active .mat-selection-list:focus{outline-style:dotted}.cdk-high-contrast-active .mat-list-option:hover,.cdk-high-contrast-active .mat-list-option:focus,.cdk-high-contrast-active .mat-nav-list .mat-list-item:hover,.cdk-high-contrast-active .mat-nav-list .mat-list-item:focus,.cdk-high-contrast-active mat-action-list .mat-list-item:hover,.cdk-high-contrast-active mat-action-list .mat-list-item:focus{outline:dotted 1px;z-index:1}.cdk-high-contrast-active .mat-list-single-selected-option::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}.cdk-high-contrast-active [dir=rtl] .mat-list-single-selected-option::after{right:auto;left:16px}@media(hover: none){.mat-list-option:not(.mat-list-single-selected-option):not(.mat-list-item-disabled):hover,.mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,.mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover{background:none}}\n'],encapsulation:2,changeDetection:0}),Rt}(),se=function(){var Rt=function(it){(0,t.Z)(ot,it);var Qe=(0,e.Z)(ot);function ot(tt){var xe;return(0,d.Z)(this,ot),(xe=Qe.call(this))._elementRef=tt,xe._stateChanges=new B.x,"action-list"===xe._getListType()&&tt.nativeElement.classList.add("mat-action-list"),xe}return(0,p.Z)(ot,[{key:"_getListType",value:function(){var xe=this._elementRef.nativeElement.nodeName.toLowerCase();return"mat-list"===xe?"list":"mat-action-list"===xe?"action-list":null}},{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),ot}(ue);return Rt.\u0275fac=function(Qe){return new(Qe||Rt)(h.Y36(h.SBq))},Rt.\u0275cmp=h.Xpm({type:Rt,selectors:[["mat-list"],["mat-action-list"]],hostAttrs:[1,"mat-list","mat-list-base"],inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matList"],features:[h._Bn([{provide:r,useExisting:Rt}]),h.qOj,h.TTD],ngContentSelectors:N,decls:1,vars:0,template:function(Qe,ot){1&Qe&&(h.F$t(),h.Hsn(0))},styles:['.mat-subheader{display:flex;box-sizing:border-box;padding:16px;align-items:center}.mat-list-base .mat-subheader{margin:0}.mat-list-base{padding-top:8px;display:block;-webkit-tap-highlight-color:transparent}.mat-list-base .mat-subheader{height:48px;line-height:16px}.mat-list-base .mat-subheader:first-child{margin-top:-8px}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{display:block;height:48px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base .mat-list-item .mat-list-item-content,.mat-list-base .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base .mat-list-item .mat-list-item-content-reverse,.mat-list-base .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base .mat-list-item .mat-list-item-ripple,.mat-list-base .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar,.mat-list-base .mat-list-option.mat-list-item-with-avatar{height:56px}.mat-list-base .mat-list-item.mat-2-line,.mat-list-base .mat-list-option.mat-2-line{height:72px}.mat-list-base .mat-list-item.mat-3-line,.mat-list-base .mat-list-option.mat-3-line{height:88px}.mat-list-base .mat-list-item.mat-multi-line,.mat-list-base .mat-list-option.mat-multi-line{height:auto}.mat-list-base .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base .mat-list-item .mat-list-text,.mat-list-base .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base .mat-list-item .mat-list-text>*,.mat-list-base .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base .mat-list-item .mat-list-text:empty,.mat-list-base .mat-list-option .mat-list-text:empty{display:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base .mat-list-item .mat-list-avatar,.mat-list-base .mat-list-option .mat-list-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;object-fit:cover}.mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:72px;width:calc(100% - 72px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:72px}.mat-list-base .mat-list-item .mat-list-icon,.mat-list-base .mat-list-option .mat-list-icon{flex-shrink:0;width:24px;height:24px;font-size:24px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:64px;width:calc(100% - 64px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:64px}.mat-list-base .mat-list-item .mat-divider,.mat-list-base .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base .mat-list-item .mat-divider,[dir=rtl] .mat-list-base .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-list-base[dense]{padding-top:4px;display:block}.mat-list-base[dense] .mat-subheader{height:40px;line-height:8px}.mat-list-base[dense] .mat-subheader:first-child{margin-top:-4px}.mat-list-base[dense] .mat-list-item,.mat-list-base[dense] .mat-list-option{display:block;height:40px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-item-content,.mat-list-base[dense] .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base[dense] .mat-list-item .mat-list-item-content-reverse,.mat-list-base[dense] .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base[dense] .mat-list-item .mat-list-item-ripple,.mat-list-base[dense] .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar{height:48px}.mat-list-base[dense] .mat-list-item.mat-2-line,.mat-list-base[dense] .mat-list-option.mat-2-line{height:60px}.mat-list-base[dense] .mat-list-item.mat-3-line,.mat-list-base[dense] .mat-list-option.mat-3-line{height:76px}.mat-list-base[dense] .mat-list-item.mat-multi-line,.mat-list-base[dense] .mat-list-option.mat-multi-line{height:auto}.mat-list-base[dense] .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base[dense] .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base[dense] .mat-list-item .mat-list-text,.mat-list-base[dense] .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-text>*,.mat-list-base[dense] .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base[dense] .mat-list-item .mat-list-text:empty,.mat-list-base[dense] .mat-list-option .mat-list-text:empty{display:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base[dense] .mat-list-item .mat-list-avatar,.mat-list-base[dense] .mat-list-option .mat-list-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;object-fit:cover}.mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:68px;width:calc(100% - 68px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:68px}.mat-list-base[dense] .mat-list-item .mat-list-icon,.mat-list-base[dense] .mat-list-option .mat-list-icon{flex-shrink:0;width:20px;height:20px;font-size:20px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:60px;width:calc(100% - 60px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:60px}.mat-list-base[dense] .mat-list-item .mat-divider,.mat-list-base[dense] .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-divider,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base[dense] .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-nav-list a{text-decoration:none;color:inherit}.mat-nav-list .mat-list-item{cursor:pointer;outline:none}mat-action-list button{background:none;color:inherit;border:none;font:inherit;outline:inherit;-webkit-tap-highlight-color:transparent;text-align:left}[dir=rtl] mat-action-list button{text-align:right}mat-action-list button::-moz-focus-inner{border:0}mat-action-list .mat-list-item{cursor:pointer;outline:inherit}.mat-list-option:not(.mat-list-item-disabled){cursor:pointer;outline:none}.mat-list-item-disabled{pointer-events:none}.cdk-high-contrast-active .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active :host .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active .mat-selection-list:focus{outline-style:dotted}.cdk-high-contrast-active .mat-list-option:hover,.cdk-high-contrast-active .mat-list-option:focus,.cdk-high-contrast-active .mat-nav-list .mat-list-item:hover,.cdk-high-contrast-active .mat-nav-list .mat-list-item:focus,.cdk-high-contrast-active mat-action-list .mat-list-item:hover,.cdk-high-contrast-active mat-action-list .mat-list-item:focus{outline:dotted 1px;z-index:1}.cdk-high-contrast-active .mat-list-single-selected-option::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}.cdk-high-contrast-active [dir=rtl] .mat-list-single-selected-option::after{right:auto;left:16px}@media(hover: none){.mat-list-option:not(.mat-list-single-selected-option):not(.mat-list-item-disabled):hover,.mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,.mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover{background:none}}\n'],encapsulation:2,changeDetection:0}),Rt}(),X=function(){var Rt=(0,p.Z)(function it(){(0,d.Z)(this,it)});return Rt.\u0275fac=function(Qe){return new(Qe||Rt)},Rt.\u0275dir=h.lG2({type:Rt,selectors:[["","mat-list-avatar",""],["","matListAvatar",""]],hostAttrs:[1,"mat-list-avatar"]}),Rt}(),ne=function(){var Rt=(0,p.Z)(function it(){(0,d.Z)(this,it)});return Rt.\u0275fac=function(Qe){return new(Qe||Rt)},Rt.\u0275dir=h.lG2({type:Rt,selectors:[["","mat-list-icon",""],["","matListIcon",""]],hostAttrs:[1,"mat-list-icon"]}),Rt}(),Re=function(){var Rt=function(it){(0,t.Z)(ot,it);var Qe=(0,e.Z)(ot);function ot(tt,xe,$e,Ge){var ct;(0,d.Z)(this,ot),(ct=Qe.call(this))._element=tt,ct._isInteractiveList=!1,ct._destroyed=new B.x,ct._disabled=!1,ct._isInteractiveList=!!($e||Ge&&"action-list"===Ge._getListType()),ct._list=$e||Ge;var Xe=ct._getHostElement();return"button"===Xe.nodeName.toLowerCase()&&!Xe.hasAttribute("type")&&Xe.setAttribute("type","button"),ct._list&&ct._list._stateChanges.pipe((0,I.R)(ct._destroyed)).subscribe(function(){xe.markForCheck()}),ct}return(0,p.Z)(ot,[{key:"disabled",get:function(){return this._disabled||!(!this._list||!this._list.disabled)},set:function(xe){this._disabled=(0,T.Ig)(xe)}},{key:"ngAfterContentInit",value:function(){(0,f.E0)(this._lines,this._element)}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_isRippleDisabled",value:function(){return!this._isInteractiveList||this.disableRipple||!(!this._list||!this._list.disableRipple)}},{key:"_getHostElement",value:function(){return this._element.nativeElement}}]),ot}(R);return Rt.\u0275fac=function(Qe){return new(Qe||Rt)(h.Y36(h.SBq),h.Y36(h.sBO),h.Y36(z,8),h.Y36(r,8))},Rt.\u0275cmp=h.Xpm({type:Rt,selectors:[["mat-list-item"],["a","mat-list-item",""],["button","mat-list-item",""]],contentQueries:function(Qe,ot,tt){var xe;1&Qe&&(h.Suo(tt,X,5),h.Suo(tt,ne,5),h.Suo(tt,f.X2,5)),2&Qe&&(h.iGM(xe=h.CRH())&&(ot._avatar=xe.first),h.iGM(xe=h.CRH())&&(ot._icon=xe.first),h.iGM(xe=h.CRH())&&(ot._lines=xe))},hostAttrs:[1,"mat-list-item","mat-focus-indicator"],hostVars:6,hostBindings:function(Qe,ot){2&Qe&&h.ekj("mat-list-item-disabled",ot.disabled)("mat-list-item-avatar",ot._avatar||ot._icon)("mat-list-item-with-avatar",ot._avatar||ot._icon)},inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matListItem"],features:[h.qOj],ngContentSelectors:q,decls:6,vars:2,consts:[[1,"mat-list-item-content"],["mat-ripple","",1,"mat-list-item-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-list-text"]],template:function(Qe,ot){1&Qe&&(h.F$t(k),h.TgZ(0,"span",0),h._UZ(1,"span",1),h.Hsn(2),h.TgZ(3,"span",2),h.Hsn(4,1),h.qZA(),h.Hsn(5,2),h.qZA()),2&Qe&&(h.xp6(1),h.Q6J("matRippleTrigger",ot._getHostElement())("matRippleDisabled",ot._isRippleDisabled()))},directives:[f.wG],encapsulation:2,changeDetection:0}),Rt}(),Lt=function(){var Rt=(0,p.Z)(function it(){(0,d.Z)(this,it)});return Rt.\u0275fac=function(Qe){return new(Qe||Rt)},Rt.\u0275mod=h.oAB({type:Rt}),Rt.\u0275inj=h.cJS({imports:[[f.uc,f.si,f.BQ,f.us,s.ez],f.uc,f.BQ,f.us,A.t]}),Rt}()},82796:function(dt,K,n){"use strict";n.d(K,{VK:function(){return Xe},OP:function(){return tt},Tx:function(){return St},p6:function(){return bt}});var P=n(32090),t=n(86170),e=n(35488),p=n(24582),d=n(7318),s=n(78069),h=n(48047),f=n(84128),T=n(76484),B=n(75939),I=n(76442),v=n(50253),j=n(17714),Q=n(36646),J=n(10745),Z=n(83888),A=n(44874),N=n(32673),E=n(59295),k=n(68951),q=n(60116),ce=n(46441),ie=n(31631),H=n(24476),V=n(36362),ue=n(1130),R=n(66088),r=n(14390),z=n(51588),Y=n(24426),se=["mat-menu-item",""];function X(Pt,ut){1&Pt&&(I.O4$(),I.TgZ(0,"svg",2),I._UZ(1,"polygon",3),I.qZA())}var ne=["*"];function ve(Pt,ut){if(1&Pt){var yt=I.EpF();I.TgZ(0,"div",0),I.NdJ("keydown",function(_e){return I.CHM(yt),I.oxw()._handleKeydown(_e)})("click",function(){return I.CHM(yt),I.oxw().closed.emit("click")})("@transformMenu.start",function(_e){return I.CHM(yt),I.oxw()._onAnimationStart(_e)})("@transformMenu.done",function(_e){return I.CHM(yt),I.oxw()._onAnimationDone(_e)}),I.TgZ(1,"div",1),I.Hsn(2),I.qZA(),I.qZA()}if(2&Pt){var be=I.oxw();I.Q6J("id",be.panelId)("ngClass",be._classList)("@transformMenu",be._panelAnimationState),I.uIk("aria-label",be.ariaLabel||null)("aria-labelledby",be.ariaLabelledby||null)("aria-describedby",be.ariaDescribedby||null)}}var Re={transformMenu:(0,ie.X$)("transformMenu",[(0,ie.SB)("void",(0,ie.oB)({opacity:0,transform:"scale(0.8)"})),(0,ie.eR)("void => enter",(0,ie.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,ie.oB)({opacity:1,transform:"scale(1)"}))),(0,ie.eR)("* => void",(0,ie.jt)("100ms 25ms linear",(0,ie.oB)({opacity:0})))]),fadeInItems:(0,ie.X$)("fadeInItems",[(0,ie.SB)("showing",(0,ie.oB)({opacity:1})),(0,ie.eR)("void => *",[(0,ie.oB)({opacity:0}),(0,ie.jt)("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},ge=new I.OlP("MatMenuContent"),Qe=new I.OlP("MAT_MENU_PANEL"),ot=(0,ue.Kr)((0,ue.Id)(function(){return(0,h.Z)(function Pt(){(0,s.Z)(this,Pt)})}())),tt=function(){var Pt=function(ut){(0,p.Z)(be,ut);var yt=(0,d.Z)(be);function be(we,_e,$,Ae,ft){var gt,Bt;return(0,s.Z)(this,be),(gt=yt.call(this))._elementRef=we,gt._focusMonitor=$,gt._parentMenu=Ae,gt._changeDetectorRef=ft,gt.role="menuitem",gt._hovered=new v.x,gt._focused=new v.x,gt._highlighted=!1,gt._triggersSubmenu=!1,null===(Bt=null==Ae?void 0:Ae.addItem)||void 0===Bt||Bt.call(Ae,(0,e.Z)(gt)),gt}return(0,h.Z)(be,[{key:"focus",value:function(_e,$){this._focusMonitor&&_e?this._focusMonitor.focusVia(this._getHostElement(),_e,$):this._getHostElement().focus($),this._focused.next(this)}},{key:"ngAfterViewInit",value:function(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}},{key:"ngOnDestroy",value:function(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}},{key:"_getTabIndex",value:function(){return this.disabled?"-1":"0"}},{key:"_getHostElement",value:function(){return this._elementRef.nativeElement}},{key:"_checkDisabled",value:function(_e){this.disabled&&(_e.preventDefault(),_e.stopPropagation())}},{key:"_handleMouseEnter",value:function(){this._hovered.next(this)}},{key:"getLabel",value:function(){for(var _e,$=this._elementRef.nativeElement.cloneNode(!0),Ae=$.querySelectorAll("mat-icon, .material-icons"),ft=0;ft0&&void 0!==arguments[0]?arguments[0]:"program";this.lazyContent?this._ngZone.onStable.pipe((0,E.q)(1)).subscribe(function(){return be._focusFirstItem(we)}):this._focusFirstItem(we)}},{key:"_focusFirstItem",value:function(be){var we=this._keyManager;if(we.setFocusOrigin(be).setFirstItemActive(),!we.activeItem&&this._directDescendantItems.length)for(var _e=this._directDescendantItems.first._getHostElement().parentElement;_e;){if("menu"===_e.getAttribute("role")){_e.focus();break}_e=_e.parentElement}}},{key:"resetActiveItem",value:function(){this._keyManager.setActiveItem(-1)}},{key:"setElevation",value:function(be){var we=this,_e=Math.min(this._baseElevation+be,24),$="".concat(this._elevationPrefix).concat(_e),Ae=Object.keys(this._classList).find(function(ft){return ft.startsWith(we._elevationPrefix)});(!Ae||Ae===this._previousElevation)&&(this._previousElevation&&(this._classList[this._previousElevation]=!1),this._classList[$]=!0,this._previousElevation=$)}},{key:"setPositionClasses",value:function(){var be=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.xPosition,we=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.yPosition,_e=this._classList;_e["mat-menu-before"]="before"===be,_e["mat-menu-after"]="after"===be,_e["mat-menu-above"]="above"===we,_e["mat-menu-below"]="below"===we}},{key:"_startAnimation",value:function(){this._panelAnimationState="enter"}},{key:"_resetAnimation",value:function(){this._panelAnimationState="void"}},{key:"_onAnimationDone",value:function(be){this._animationDone.next(be),this._isAnimating=!1}},{key:"_onAnimationStart",value:function(be){this._isAnimating=!0,"enter"===be.toState&&0===this._keyManager.activeItemIndex&&(be.element.scrollTop=0)}},{key:"_updateDirectDescendants",value:function(){var be=this;this._allItems.changes.pipe((0,A.O)(this._allItems)).subscribe(function(we){be._directDescendantItems.reset(we.filter(function(_e){return _e._parentMenu===be})),be._directDescendantItems.notifyOnChanges()})}}]),ut}();return Pt.\u0275fac=function(yt){return new(yt||Pt)(I.Y36(I.SBq),I.Y36(I.R0b),I.Y36(xe))},Pt.\u0275dir=I.lG2({type:Pt,contentQueries:function(yt,be,we){var _e;1&yt&&(I.Suo(we,ge,5),I.Suo(we,tt,5),I.Suo(we,tt,4)),2&yt&&(I.iGM(_e=I.CRH())&&(be.lazyContent=_e.first),I.iGM(_e=I.CRH())&&(be._allItems=_e),I.iGM(_e=I.CRH())&&(be.items=_e))},viewQuery:function(yt,be){var we;1&yt&&I.Gf(I.Rgc,5),2&yt&&I.iGM(we=I.CRH())&&(be.templateRef=we.first)},inputs:{backdropClass:"backdropClass",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:"overlapTrigger",hasBackdrop:"hasBackdrop",panelClass:["class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"}}),Pt}(),Xe=function(){var Pt=function(ut){(0,p.Z)(be,ut);var yt=(0,d.Z)(be);function be(we,_e,$){var Ae;return(0,s.Z)(this,be),(Ae=yt.call(this,we,_e,$))._elevationPrefix="mat-elevation-z",Ae._baseElevation=4,Ae}return(0,h.Z)(be)}(ct);return Pt.\u0275fac=function(yt){return new(yt||Pt)(I.Y36(I.SBq),I.Y36(I.R0b),I.Y36(xe))},Pt.\u0275cmp=I.Xpm({type:Pt,selectors:[["mat-menu"]],hostVars:3,hostBindings:function(yt,be){2&yt&&I.uIk("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},exportAs:["matMenu"],features:[I._Bn([{provide:Qe,useExisting:Pt}]),I.qOj],ngContentSelectors:ne,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-menu-panel",3,"id","ngClass","keydown","click"],[1,"mat-menu-content"]],template:function(yt,be){1&yt&&(I.F$t(),I.YNc(0,ve,3,6,"ng-template"))},directives:[V.mk],styles:["mat-menu{display:none}.mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]{pointer-events:none}.cdk-high-contrast-active .mat-menu-item{margin-top:1px}.cdk-high-contrast-active .mat-menu-item.cdk-program-focused,.cdk-high-contrast-active .mat-menu-item.cdk-keyboard-focused,.cdk-high-contrast-active .mat-menu-item-highlighted{outline:dotted 1px}.mat-menu-item-submenu-trigger{padding-right:32px}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}.mat-menu-submenu-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%);width:5px;height:10px;fill:currentColor}[dir=rtl] .mat-menu-submenu-icon{right:auto;left:16px;transform:translateY(-50%) scaleX(-1)}.cdk-high-contrast-active .mat-menu-submenu-icon{fill:CanvasText}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}\n"],encapsulation:2,data:{animation:[Re.transformMenu,Re.fadeInItems]},changeDetection:0}),Pt}(),Te=new I.OlP("mat-menu-scroll-strategy"),qe={provide:Te,deps:[R.aV],useFactory:function vt(Pt){return function(){return Pt.scrollStrategies.reposition()}}},Nt=(0,r.i$)({passive:!0}),Ft=function(){var Pt=function(){function ut(yt,be,we,_e,$,Ae,ft,gt){var Bt=this;(0,s.Z)(this,ut),this._overlay=yt,this._element=be,this._viewContainerRef=we,this._menuItemInstance=Ae,this._dir=ft,this._focusMonitor=gt,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=j.w0.EMPTY,this._hoverSubscription=j.w0.EMPTY,this._menuCloseSubscription=j.w0.EMPTY,this._handleTouchStart=function(_n){(0,f.yG)(_n)||(Bt._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new I.vpe,this.onMenuOpen=this.menuOpened,this.menuClosed=new I.vpe,this.onMenuClose=this.menuClosed,this._scrollStrategy=_e,this._parentMaterialMenu=$ instanceof ct?$:void 0,be.nativeElement.addEventListener("touchstart",this._handleTouchStart,Nt),Ae&&(Ae._triggersSubmenu=this.triggersSubmenu())}return(0,h.Z)(ut,[{key:"_deprecatedMatMenuTriggerFor",get:function(){return this.menu},set:function(be){this.menu=be}},{key:"menu",get:function(){return this._menu},set:function(be){var we=this;be!==this._menu&&(this._menu=be,this._menuCloseSubscription.unsubscribe(),be&&(this._menuCloseSubscription=be.close.subscribe(function(_e){we._destroyMenu(_e),("click"===_e||"tab"===_e)&&we._parentMaterialMenu&&we._parentMaterialMenu.closed.emit(_e)})))}},{key:"ngAfterContentInit",value:function(){this._checkMenu(),this._handleHover()}},{key:"ngOnDestroy",value:function(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,Nt),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}},{key:"menuOpen",get:function(){return this._menuOpen}},{key:"dir",get:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"triggersSubmenu",value:function(){return!(!this._menuItemInstance||!this._parentMaterialMenu)}},{key:"toggleMenu",value:function(){return this._menuOpen?this.closeMenu():this.openMenu()}},{key:"openMenu",value:function(){var be=this;if(!this._menuOpen){this._checkMenu();var we=this._createOverlay(),_e=we.getConfig(),$=_e.positionStrategy;this._setPosition($),_e.hasBackdrop=null==this.menu.hasBackdrop?!this.triggersSubmenu():this.menu.hasBackdrop,we.attach(this._getPortal()),this.menu.lazyContent&&this.menu.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(function(){return be.closeMenu()}),this._initMenu(),this.menu instanceof ct&&(this.menu._startAnimation(),this.menu._directDescendantItems.changes.pipe((0,k.R)(this.menu.close)).subscribe(function(){$.withLockedPosition(!1).reapplyLastPosition(),$.withLockedPosition(!0)}))}}},{key:"closeMenu",value:function(){this.menu.close.emit()}},{key:"focus",value:function(be,we){this._focusMonitor&&be?this._focusMonitor.focusVia(this._element,be,we):this._element.nativeElement.focus(we)}},{key:"updatePosition",value:function(){var be;null===(be=this._overlayRef)||void 0===be||be.updatePosition()}},{key:"_destroyMenu",value:function(be){var we=this;if(this._overlayRef&&this.menuOpen){var _e=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===be||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,_e instanceof ct?(_e._resetAnimation(),_e.lazyContent?_e._animationDone.pipe((0,q.h)(function($){return"void"===$.toState}),(0,E.q)(1),(0,k.R)(_e.lazyContent._attached)).subscribe({next:function(){return _e.lazyContent.detach()},complete:function(){return we._setIsMenuOpen(!1)}}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),_e.lazyContent&&_e.lazyContent.detach())}}},{key:"_initMenu",value:function(){this.menu.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,this.menu.direction=this.dir,this._setMenuElevation(),this.menu.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}},{key:"_setMenuElevation",value:function(){if(this.menu.setElevation){for(var be=0,we=this.menu.parentMenu;we;)be++,we=we.parentMenu;this.menu.setElevation(be)}}},{key:"_setIsMenuOpen",value:function(be){this._menuOpen=be,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(be)}},{key:"_checkMenu",value:function(){}},{key:"_createOverlay",value:function(){if(!this._overlayRef){var be=this._getOverlayConfig();this._subscribeToPositions(be.positionStrategy),this._overlayRef=this._overlay.create(be),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}},{key:"_getOverlayConfig",value:function(){return new R.X_({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:this.menu.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:this.menu.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}},{key:"_subscribeToPositions",value:function(be){var we=this;this.menu.setPositionClasses&&be.positionChanges.subscribe(function(_e){we.menu.setPositionClasses("start"===_e.connectionPair.overlayX?"after":"before","top"===_e.connectionPair.overlayY?"below":"above")})}},{key:"_setPosition",value:function(be){var _e=(0,P.Z)("before"===this.menu.xPosition?["end","start"]:["start","end"],2),$=_e[0],Ae=_e[1],gt=(0,P.Z)("above"===this.menu.yPosition?["bottom","top"]:["top","bottom"],2),Bt=gt[0],_n=gt[1],wn=Bt,Tn=_n,On=$,Jn=Ae,Un=0;this.triggersSubmenu()?(Jn=$="before"===this.menu.xPosition?"start":"end",Ae=On="end"===$?"start":"end",Un="bottom"===Bt?8:-8):this.menu.overlapTrigger||(wn="top"===Bt?"bottom":"top",Tn="top"===_n?"bottom":"top"),be.withPositions([{originX:$,originY:wn,overlayX:On,overlayY:Bt,offsetY:Un},{originX:Ae,originY:wn,overlayX:Jn,overlayY:Bt,offsetY:Un},{originX:$,originY:Tn,overlayX:On,overlayY:_n,offsetY:-Un},{originX:Ae,originY:Tn,overlayX:Jn,overlayY:_n,offsetY:-Un}])}},{key:"_menuClosingActions",value:function(){var be=this,we=this._overlayRef.backdropClick(),_e=this._overlayRef.detachments(),$=this._parentMaterialMenu?this._parentMaterialMenu.closed:(0,J.of)(),Ae=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe((0,q.h)(function(ft){return ft!==be._menuItemInstance}),(0,q.h)(function(){return be._menuOpen})):(0,J.of)();return(0,Q.T)(we,$,Ae,_e)}},{key:"_handleMousedown",value:function(be){(0,f.X6)(be)||(this._openedBy=0===be.button?"mouse":void 0,this.triggersSubmenu()&&be.preventDefault())}},{key:"_handleKeydown",value:function(be){var we=be.keyCode;(we===B.K5||we===B.L_)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(we===B.SV&&"ltr"===this.dir||we===B.oh&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}},{key:"_handleClick",value:function(be){this.triggersSubmenu()?(be.stopPropagation(),this.openMenu()):this.toggleMenu()}},{key:"_handleHover",value:function(){var be=this;!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe((0,q.h)(function(we){return we===be._menuItemInstance&&!we.disabled}),(0,ce.g)(0,Z.E)).subscribe(function(){be._openedBy="mouse",be.menu instanceof ct&&be.menu._isAnimating?be.menu._animationDone.pipe((0,E.q)(1),(0,ce.g)(0,Z.E),(0,k.R)(be._parentMaterialMenu._hovered())).subscribe(function(){return be.openMenu()}):be.openMenu()}))}},{key:"_getPortal",value:function(){return(!this._portal||this._portal.templateRef!==this.menu.templateRef)&&(this._portal=new H.UE(this.menu.templateRef,this._viewContainerRef)),this._portal}}]),ut}();return Pt.\u0275fac=function(yt){return new(yt||Pt)(I.Y36(R.aV),I.Y36(I.SBq),I.Y36(I.s_b),I.Y36(Te),I.Y36(Qe,8),I.Y36(tt,10),I.Y36(z.Is,8),I.Y36(f.tE))},Pt.\u0275dir=I.lG2({type:Pt,hostAttrs:["aria-haspopup","true"],hostVars:2,hostBindings:function(yt,be){1&yt&&I.NdJ("click",function(_e){return be._handleClick(_e)})("mousedown",function(_e){return be._handleMousedown(_e)})("keydown",function(_e){return be._handleKeydown(_e)}),2&yt&&I.uIk("aria-expanded",be.menuOpen||null)("aria-controls",be.menuOpen?be.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:["mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:["matMenuTriggerFor","menu"],menuData:["matMenuTriggerData","menuData"],restoreFocus:["matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"}}),Pt}(),bt=function(){var Pt=function(ut){(0,p.Z)(be,ut);var yt=(0,d.Z)(be);function be(){return(0,s.Z)(this,be),yt.apply(this,arguments)}return(0,h.Z)(be)}(Ft);return Pt.\u0275fac=function(){var ut;return function(be){return(ut||(ut=I.n5z(Pt)))(be||Pt)}}(),Pt.\u0275dir=I.lG2({type:Pt,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-menu-trigger"],exportAs:["matMenuTrigger"],features:[I.qOj]}),Pt}(),St=function(){var Pt=(0,h.Z)(function ut(){(0,s.Z)(this,ut)});return Pt.\u0275fac=function(yt){return new(yt||Pt)},Pt.\u0275mod=I.oAB({type:Pt}),Pt.\u0275inj=I.cJS({providers:[qe],imports:[[V.ez,ue.BQ,ue.si,R.U8],Y.ZD,ue.BQ]}),Pt}()},26439:function(dt,K,n){"use strict";n.d(K,{NW:function(){return r},TU:function(){return z}});var P=n(24582),t=n(7318),e=n(48047),p=n(78069),d=n(36362),s=n(76442),h=n(1130),f=n(87317),T=n(91434),B=n(40089),I=n(76484),v=n(50253),j=n(44770);function Q(Y,se){if(1&Y&&(s.TgZ(0,"mat-option",19),s._uU(1),s.qZA()),2&Y){var X=se.$implicit;s.Q6J("value",X),s.xp6(1),s.hij(" ",X," ")}}function J(Y,se){if(1&Y){var X=s.EpF();s.TgZ(0,"mat-form-field",16),s.TgZ(1,"mat-select",17),s.NdJ("selectionChange",function(Re){return s.CHM(X),s.oxw(2)._changePageSize(Re.value)}),s.YNc(2,Q,2,2,"mat-option",18),s.qZA(),s.qZA()}if(2&Y){var ne=s.oxw(2);s.Q6J("appearance",ne._formFieldAppearance)("color",ne.color),s.xp6(1),s.Q6J("value",ne.pageSize)("disabled",ne.disabled)("aria-label",ne._intl.itemsPerPageLabel),s.xp6(1),s.Q6J("ngForOf",ne._displayedPageSizeOptions)}}function Z(Y,se){if(1&Y&&(s.TgZ(0,"div",20),s._uU(1),s.qZA()),2&Y){var X=s.oxw(2);s.xp6(1),s.Oqu(X.pageSize)}}function A(Y,se){if(1&Y&&(s.TgZ(0,"div",12),s.TgZ(1,"div",13),s._uU(2),s.qZA(),s.YNc(3,J,3,6,"mat-form-field",14),s.YNc(4,Z,2,1,"div",15),s.qZA()),2&Y){var X=s.oxw();s.xp6(2),s.hij(" ",X._intl.itemsPerPageLabel," "),s.xp6(1),s.Q6J("ngIf",X._displayedPageSizeOptions.length>1),s.xp6(1),s.Q6J("ngIf",X._displayedPageSizeOptions.length<=1)}}function N(Y,se){if(1&Y){var X=s.EpF();s.TgZ(0,"button",21),s.NdJ("click",function(){return s.CHM(X),s.oxw().firstPage()}),s.O4$(),s.TgZ(1,"svg",7),s._UZ(2,"path",22),s.qZA(),s.qZA()}if(2&Y){var ne=s.oxw();s.Q6J("matTooltip",ne._intl.firstPageLabel)("matTooltipDisabled",ne._previousButtonsDisabled())("matTooltipPosition","above")("disabled",ne._previousButtonsDisabled()),s.uIk("aria-label",ne._intl.firstPageLabel)}}function E(Y,se){if(1&Y){var X=s.EpF();s.O4$(),s.kcU(),s.TgZ(0,"button",23),s.NdJ("click",function(){return s.CHM(X),s.oxw().lastPage()}),s.O4$(),s.TgZ(1,"svg",7),s._UZ(2,"path",24),s.qZA(),s.qZA()}if(2&Y){var ne=s.oxw();s.Q6J("matTooltip",ne._intl.lastPageLabel)("matTooltipDisabled",ne._nextButtonsDisabled())("matTooltipPosition","above")("disabled",ne._nextButtonsDisabled()),s.uIk("aria-label",ne._intl.lastPageLabel)}}var k=function(){var Y=(0,e.Z)(function se(){(0,p.Z)(this,se),this.changes=new v.x,this.itemsPerPageLabel="Items per page:",this.nextPageLabel="Next page",this.previousPageLabel="Previous page",this.firstPageLabel="First page",this.lastPageLabel="Last page",this.getRangeLabel=function(X,ne,ve){if(0==ve||0==ne)return"0 of ".concat(ve);var Re=X*ne,Ie=Re<(ve=Math.max(ve,0))?Math.min(Re+ne,ve):Re+ne;return"".concat(Re+1," \u2013 ").concat(Ie," of ").concat(ve)}});return Y.\u0275fac=function(X){return new(X||Y)},Y.\u0275prov=s.Yz7({token:Y,factory:Y.\u0275fac,providedIn:"root"}),Y}(),ce={provide:k,deps:[[new s.FiY,new s.tp0,k]],useFactory:function q(Y){return Y||new k}},V=new s.OlP("MAT_PAGINATOR_DEFAULT_OPTIONS"),ue=(0,h.Id)((0,h.dB)(function(){return(0,e.Z)(function Y(){(0,p.Z)(this,Y)})}())),R=function(){var Y=function(se){(0,P.Z)(ne,se);var X=(0,t.Z)(ne);function ne(ve,Re,Ie){var Ee;if((0,p.Z)(this,ne),(Ee=X.call(this))._intl=ve,Ee._changeDetectorRef=Re,Ee._pageIndex=0,Ee._length=0,Ee._pageSizeOptions=[],Ee._hidePageSize=!1,Ee._showFirstLastButtons=!1,Ee.page=new s.vpe,Ee._intlChanges=ve.changes.subscribe(function(){return Ee._changeDetectorRef.markForCheck()}),Ie){var ge=Ie.pageSize,_t=Ie.pageSizeOptions,wt=Ie.hidePageSize,qt=Ie.showFirstLastButtons;null!=ge&&(Ee._pageSize=ge),null!=_t&&(Ee._pageSizeOptions=_t),null!=wt&&(Ee._hidePageSize=wt),null!=qt&&(Ee._showFirstLastButtons=qt)}return Ee}return(0,e.Z)(ne,[{key:"pageIndex",get:function(){return this._pageIndex},set:function(Re){this._pageIndex=Math.max((0,I.su)(Re),0),this._changeDetectorRef.markForCheck()}},{key:"length",get:function(){return this._length},set:function(Re){this._length=(0,I.su)(Re),this._changeDetectorRef.markForCheck()}},{key:"pageSize",get:function(){return this._pageSize},set:function(Re){this._pageSize=Math.max((0,I.su)(Re),0),this._updateDisplayedPageSizeOptions()}},{key:"pageSizeOptions",get:function(){return this._pageSizeOptions},set:function(Re){this._pageSizeOptions=(Re||[]).map(function(Ie){return(0,I.su)(Ie)}),this._updateDisplayedPageSizeOptions()}},{key:"hidePageSize",get:function(){return this._hidePageSize},set:function(Re){this._hidePageSize=(0,I.Ig)(Re)}},{key:"showFirstLastButtons",get:function(){return this._showFirstLastButtons},set:function(Re){this._showFirstLastButtons=(0,I.Ig)(Re)}},{key:"ngOnInit",value:function(){this._initialized=!0,this._updateDisplayedPageSizeOptions(),this._markInitialized()}},{key:"ngOnDestroy",value:function(){this._intlChanges.unsubscribe()}},{key:"nextPage",value:function(){if(this.hasNextPage()){var Re=this.pageIndex;this.pageIndex=this.pageIndex+1,this._emitPageEvent(Re)}}},{key:"previousPage",value:function(){if(this.hasPreviousPage()){var Re=this.pageIndex;this.pageIndex=this.pageIndex-1,this._emitPageEvent(Re)}}},{key:"firstPage",value:function(){if(this.hasPreviousPage()){var Re=this.pageIndex;this.pageIndex=0,this._emitPageEvent(Re)}}},{key:"lastPage",value:function(){if(this.hasNextPage()){var Re=this.pageIndex;this.pageIndex=this.getNumberOfPages()-1,this._emitPageEvent(Re)}}},{key:"hasPreviousPage",value:function(){return this.pageIndex>=1&&0!=this.pageSize}},{key:"hasNextPage",value:function(){var Re=this.getNumberOfPages()-1;return this.pageIndex1&&void 0!==arguments[1]?arguments[1]:0,H=arguments.length>2&&void 0!==arguments[2]?arguments[2]:100;return Math.max(ie,Math.min(H,ce))}var q=function(){var ce=(0,e.Z)(function ie(){(0,p.Z)(this,ie)});return ce.\u0275fac=function(H){return new(H||ce)},ce.\u0275mod=d.oAB({type:ce}),ce.\u0275inj=d.cJS({imports:[[s.ez,h.BQ],h.BQ]}),ce}()},74742:function(dt,K,n){"use strict";n.d(K,{Ou:function(){return H},Cq:function(){return ue},$g:function(){return V}});var P=n(24582),t=n(7318),e=n(48047),p=n(78069),d=n(76442),s=n(36362),h=n(1130),f=n(76484),T=n(14390),B=n(57481),I=n(17714),v=n(24426);function j(R,r){if(1&R&&(d.O4$(),d._UZ(0,"circle",4)),2&R){var z=d.oxw(),Y=d.MAs(1);d.Udp("animation-name","mat-progress-spinner-stroke-rotate-"+z._spinnerAnimationLabel)("stroke-dashoffset",z._getStrokeDashOffset(),"px")("stroke-dasharray",z._getStrokeCircumference(),"px")("stroke-width",z._getCircleStrokeWidth(),"%")("transform-origin",z._getCircleTransformOrigin(Y)),d.uIk("r",z._getCircleRadius())}}function Q(R,r){if(1&R&&(d.O4$(),d._UZ(0,"circle",4)),2&R){var z=d.oxw(),Y=d.MAs(1);d.Udp("stroke-dashoffset",z._getStrokeDashOffset(),"px")("stroke-dasharray",z._getStrokeCircumference(),"px")("stroke-width",z._getCircleStrokeWidth(),"%")("transform-origin",z._getCircleTransformOrigin(Y)),d.uIk("r",z._getCircleRadius())}}function J(R,r){if(1&R&&(d.O4$(),d._UZ(0,"circle",4)),2&R){var z=d.oxw(),Y=d.MAs(1);d.Udp("animation-name","mat-progress-spinner-stroke-rotate-"+z._spinnerAnimationLabel)("stroke-dashoffset",z._getStrokeDashOffset(),"px")("stroke-dasharray",z._getStrokeCircumference(),"px")("stroke-width",z._getCircleStrokeWidth(),"%")("transform-origin",z._getCircleTransformOrigin(Y)),d.uIk("r",z._getCircleRadius())}}function Z(R,r){if(1&R&&(d.O4$(),d._UZ(0,"circle",4)),2&R){var z=d.oxw(),Y=d.MAs(1);d.Udp("stroke-dashoffset",z._getStrokeDashOffset(),"px")("stroke-dasharray",z._getStrokeCircumference(),"px")("stroke-width",z._getCircleStrokeWidth(),"%")("transform-origin",z._getCircleTransformOrigin(Y)),d.uIk("r",z._getCircleRadius())}}var k=(0,h.pj)(function(){return(0,e.Z)(function R(r){(0,p.Z)(this,R),this._elementRef=r})}(),"primary"),q=new d.OlP("mat-progress-spinner-default-options",{providedIn:"root",factory:function ce(){return{diameter:100}}}),H=function(R){(0,P.Z)(z,R);var r=(0,t.Z)(z);function z(Y,se,X,ne,ve,Re,Ie,Ee){var ge;(0,p.Z)(this,z),(ge=r.call(this,Y))._document=X,ge._diameter=100,ge._value=0,ge._resizeSubscription=I.w0.EMPTY,ge.mode="determinate";var _t=z._diameters;return ge._spinnerAnimationLabel=ge._getSpinnerAnimationLabel(),_t.has(X.head)||_t.set(X.head,new Set([100])),ge._noopAnimations="NoopAnimations"===ne&&!!ve&&!ve._forceAnimations,ve&&(ve.diameter&&(ge.diameter=ve.diameter),ve.strokeWidth&&(ge.strokeWidth=ve.strokeWidth)),se.isBrowser&&se.SAFARI&&Ie&&Re&&Ee&&(ge._resizeSubscription=Ie.change(150).subscribe(function(){"indeterminate"===ge.mode&&Ee.run(function(){return Re.markForCheck()})})),ge}return(0,e.Z)(z,[{key:"diameter",get:function(){return this._diameter},set:function(se){this._diameter=(0,f.su)(se),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),this._styleRoot&&this._attachStyleNode()}},{key:"strokeWidth",get:function(){return this._strokeWidth||this.diameter/10},set:function(se){this._strokeWidth=(0,f.su)(se)}},{key:"value",get:function(){return"determinate"===this.mode?this._value:0},set:function(se){this._value=Math.max(0,Math.min(100,(0,f.su)(se)))}},{key:"ngOnInit",value:function(){var se=this._elementRef.nativeElement;this._styleRoot=(0,T.kV)(se)||this._document.head,this._attachStyleNode(),se.classList.add("mat-progress-spinner-indeterminate-animation")}},{key:"ngOnDestroy",value:function(){this._resizeSubscription.unsubscribe()}},{key:"_getCircleRadius",value:function(){return(this.diameter-10)/2}},{key:"_getViewBox",value:function(){var se=2*this._getCircleRadius()+this.strokeWidth;return"0 0 ".concat(se," ").concat(se)}},{key:"_getStrokeCircumference",value:function(){return 2*Math.PI*this._getCircleRadius()}},{key:"_getStrokeDashOffset",value:function(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:null}},{key:"_getCircleStrokeWidth",value:function(){return this.strokeWidth/this.diameter*100}},{key:"_getCircleTransformOrigin",value:function(se){var X,ne=50*(null!==(X=se.currentScale)&&void 0!==X?X:1);return"".concat(ne,"% ").concat(ne,"%")}},{key:"_attachStyleNode",value:function(){var se=this._styleRoot,X=this._diameter,ne=z._diameters,ve=ne.get(se);if(!ve||!ve.has(X)){var Re=this._document.createElement("style");Re.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),Re.textContent=this._getAnimationText(),se.appendChild(Re),ve||ne.set(se,ve=new Set),ve.add(X)}}},{key:"_getAnimationText",value:function(){var se=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,"".concat(.95*se)).replace(/END_VALUE/g,"".concat(.2*se)).replace(/DIAMETER/g,"".concat(this._spinnerAnimationLabel))}},{key:"_getSpinnerAnimationLabel",value:function(){return this.diameter.toString().replace(".","_")}}]),z}(k);H._diameters=new WeakMap,H.\u0275fac=function(r){return new(r||H)(d.Y36(d.SBq),d.Y36(T.t4),d.Y36(s.K0,8),d.Y36(B.Qb,8),d.Y36(q),d.Y36(d.sBO),d.Y36(v.rL),d.Y36(d.R0b))},H.\u0275cmp=d.Xpm({type:H,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(r,z){2&r&&(d.uIk("aria-valuemin","determinate"===z.mode?0:null)("aria-valuemax","determinate"===z.mode?100:null)("aria-valuenow","determinate"===z.mode?z.value:null)("mode",z.mode),d.Udp("width",z.diameter,"px")("height",z.diameter,"px"),d.ekj("_mat-animation-noopable",z._noopAnimations))},inputs:{color:"color",diameter:"diameter",strokeWidth:"strokeWidth",mode:"mode",value:"value"},exportAs:["matProgressSpinner"],features:[d.qOj],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(r,z){1&r&&(d.O4$(),d.TgZ(0,"svg",0,1),d.YNc(2,j,1,11,"circle",2),d.YNc(3,Q,1,9,"circle",3),d.qZA()),2&r&&(d.Udp("width",z.diameter,"px")("height",z.diameter,"px"),d.Q6J("ngSwitch","indeterminate"===z.mode),d.uIk("viewBox",z._getViewBox()),d.xp6(2),d.Q6J("ngSwitchCase",!0),d.xp6(1),d.Q6J("ngSwitchCase",!1))},directives:[s.RF,s.n9],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}\n"],encapsulation:2,changeDetection:0});var V=function(){var R=function(r){(0,P.Z)(Y,r);var z=(0,t.Z)(Y);function Y(se,X,ne,ve,Re,Ie,Ee,ge){var _t;return(0,p.Z)(this,Y),(_t=z.call(this,se,X,ne,ve,Re,Ie,Ee,ge)).mode="indeterminate",_t}return(0,e.Z)(Y)}(H);return R.\u0275fac=function(z){return new(z||R)(d.Y36(d.SBq),d.Y36(T.t4),d.Y36(s.K0,8),d.Y36(B.Qb,8),d.Y36(q),d.Y36(d.sBO),d.Y36(v.rL),d.Y36(d.R0b))},R.\u0275cmp=d.Xpm({type:R,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(z,Y){2&z&&(d.Udp("width",Y.diameter,"px")("height",Y.diameter,"px"),d.ekj("_mat-animation-noopable",Y._noopAnimations))},inputs:{color:"color"},features:[d.qOj],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(z,Y){1&z&&(d.O4$(),d.TgZ(0,"svg",0,1),d.YNc(2,J,1,11,"circle",2),d.YNc(3,Z,1,9,"circle",3),d.qZA()),2&z&&(d.Udp("width",Y.diameter,"px")("height",Y.diameter,"px"),d.Q6J("ngSwitch","indeterminate"===Y.mode),d.uIk("viewBox",Y._getViewBox()),d.xp6(2),d.Q6J("ngSwitchCase",!0),d.xp6(1),d.Q6J("ngSwitchCase",!1))},directives:[s.RF,s.n9],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}\n"],encapsulation:2,changeDetection:0}),R}(),ue=function(){var R=(0,e.Z)(function r(){(0,p.Z)(this,r)});return R.\u0275fac=function(z){return new(z||R)},R.\u0275mod=d.oAB({type:R}),R.\u0275inj=d.cJS({imports:[[h.BQ,s.ez],h.BQ]}),R}()},68390:function(dt,K,n){"use strict";n.d(K,{U0:function(){return ue},VQ:function(){return ce},Fk:function(){return R}});var P=n(24582),t=n(7318),e=n(48047),p=n(78069),d=n(76442),s=n(1130),h=n(76484),f=n(90587),T=n(57481),B=n(84128),I=n(89502),v=["input"],j=function(z){return{enterDuration:z}},Q=["*"],J=new d.OlP("mat-radio-default-options",{providedIn:"root",factory:function Z(){return{color:"accent"}}}),A=0,N={provide:f.JU,useExisting:(0,d.Gpc)(function(){return ce}),multi:!0},E=(0,e.Z)(function r(z,Y){(0,p.Z)(this,r),this.source=z,this.value=Y}),k=new d.OlP("MatRadioGroup"),q=function(){var r=function(){function z(Y){(0,p.Z)(this,z),this._changeDetector=Y,this._value=null,this._name="mat-radio-group-".concat(A++),this._selected=null,this._isInitialized=!1,this._labelPosition="after",this._disabled=!1,this._required=!1,this._controlValueAccessorChangeFn=function(){},this.onTouched=function(){},this.change=new d.vpe}return(0,e.Z)(z,[{key:"name",get:function(){return this._name},set:function(se){this._name=se,this._updateRadioButtonNames()}},{key:"labelPosition",get:function(){return this._labelPosition},set:function(se){this._labelPosition="before"===se?"before":"after",this._markRadiosForCheck()}},{key:"value",get:function(){return this._value},set:function(se){this._value!==se&&(this._value=se,this._updateSelectedRadioFromValue(),this._checkSelectedRadioButton())}},{key:"_checkSelectedRadioButton",value:function(){this._selected&&!this._selected.checked&&(this._selected.checked=!0)}},{key:"selected",get:function(){return this._selected},set:function(se){this._selected=se,this.value=se?se.value:null,this._checkSelectedRadioButton()}},{key:"disabled",get:function(){return this._disabled},set:function(se){this._disabled=(0,h.Ig)(se),this._markRadiosForCheck()}},{key:"required",get:function(){return this._required},set:function(se){this._required=(0,h.Ig)(se),this._markRadiosForCheck()}},{key:"ngAfterContentInit",value:function(){this._isInitialized=!0}},{key:"_touch",value:function(){this.onTouched&&this.onTouched()}},{key:"_updateRadioButtonNames",value:function(){var se=this;this._radios&&this._radios.forEach(function(X){X.name=se.name,X._markForCheck()})}},{key:"_updateSelectedRadioFromValue",value:function(){var se=this;this._radios&&(null===this._selected||this._selected.value!==this._value)&&(this._selected=null,this._radios.forEach(function(ne){ne.checked=se.value===ne.value,ne.checked&&(se._selected=ne)}))}},{key:"_emitChangeEvent",value:function(){this._isInitialized&&this.change.emit(new E(this._selected,this._value))}},{key:"_markRadiosForCheck",value:function(){this._radios&&this._radios.forEach(function(se){return se._markForCheck()})}},{key:"writeValue",value:function(se){this.value=se,this._changeDetector.markForCheck()}},{key:"registerOnChange",value:function(se){this._controlValueAccessorChangeFn=se}},{key:"registerOnTouched",value:function(se){this.onTouched=se}},{key:"setDisabledState",value:function(se){this.disabled=se,this._changeDetector.markForCheck()}}]),z}();return r.\u0275fac=function(Y){return new(Y||r)(d.Y36(d.sBO))},r.\u0275dir=d.lG2({type:r,inputs:{color:"color",name:"name",labelPosition:"labelPosition",value:"value",selected:"selected",disabled:"disabled",required:"required"},outputs:{change:"change"}}),r}(),ce=function(){var r=function(z){(0,P.Z)(se,z);var Y=(0,t.Z)(se);function se(){return(0,p.Z)(this,se),Y.apply(this,arguments)}return(0,e.Z)(se)}(q);return r.\u0275fac=function(){var z;return function(se){return(z||(z=d.n5z(r)))(se||r)}}(),r.\u0275dir=d.lG2({type:r,selectors:[["mat-radio-group"]],contentQueries:function(Y,se,X){var ne;1&Y&&d.Suo(X,ue,5),2&Y&&d.iGM(ne=d.CRH())&&(se._radios=ne)},hostAttrs:["role","radiogroup",1,"mat-radio-group"],exportAs:["matRadioGroup"],features:[d._Bn([N,{provide:k,useExisting:r}]),d.qOj]}),r}(),H=(0,s.Kr)((0,s.sb)((0,e.Z)(function r(z){(0,p.Z)(this,r),this._elementRef=z}))),V=function(){var r=function(z){(0,P.Z)(se,z);var Y=(0,t.Z)(se);function se(X,ne,ve,Re,Ie,Ee,ge,_t){var wt;return(0,p.Z)(this,se),(wt=Y.call(this,ne))._changeDetector=ve,wt._focusMonitor=Re,wt._radioDispatcher=Ie,wt._providerOverride=ge,wt._uniqueId="mat-radio-".concat(++A),wt.id=wt._uniqueId,wt.change=new d.vpe,wt._checked=!1,wt._value=null,wt._removeUniqueSelectionListener=function(){},wt.radioGroup=X,wt._noopAnimations="NoopAnimations"===Ee,_t&&(wt.tabIndex=(0,h.su)(_t,0)),wt._removeUniqueSelectionListener=Ie.listen(function(qt,Lt){qt!==wt.id&&Lt===wt.name&&(wt.checked=!1)}),wt}return(0,e.Z)(se,[{key:"checked",get:function(){return this._checked},set:function(ne){var ve=(0,h.Ig)(ne);this._checked!==ve&&(this._checked=ve,ve&&this.radioGroup&&this.radioGroup.value!==this.value?this.radioGroup.selected=this:!ve&&this.radioGroup&&this.radioGroup.value===this.value&&(this.radioGroup.selected=null),ve&&this._radioDispatcher.notify(this.id,this.name),this._changeDetector.markForCheck())}},{key:"value",get:function(){return this._value},set:function(ne){this._value!==ne&&(this._value=ne,null!==this.radioGroup&&(this.checked||(this.checked=this.radioGroup.value===ne),this.checked&&(this.radioGroup.selected=this)))}},{key:"labelPosition",get:function(){return this._labelPosition||this.radioGroup&&this.radioGroup.labelPosition||"after"},set:function(ne){this._labelPosition=ne}},{key:"disabled",get:function(){return this._disabled||null!==this.radioGroup&&this.radioGroup.disabled},set:function(ne){this._setDisabled((0,h.Ig)(ne))}},{key:"required",get:function(){return this._required||this.radioGroup&&this.radioGroup.required},set:function(ne){this._required=(0,h.Ig)(ne)}},{key:"color",get:function(){return this._color||this.radioGroup&&this.radioGroup.color||this._providerOverride&&this._providerOverride.color||"accent"},set:function(ne){this._color=ne}},{key:"inputId",get:function(){return"".concat(this.id||this._uniqueId,"-input")}},{key:"focus",value:function(ne,ve){ve?this._focusMonitor.focusVia(this._inputElement,ve,ne):this._inputElement.nativeElement.focus(ne)}},{key:"_markForCheck",value:function(){this._changeDetector.markForCheck()}},{key:"ngOnInit",value:function(){this.radioGroup&&(this.checked=this.radioGroup.value===this._value,this.checked&&(this.radioGroup.selected=this),this.name=this.radioGroup.name)}},{key:"ngAfterViewInit",value:function(){var ne=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(ve){!ve&&ne.radioGroup&&ne.radioGroup._touch()})}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef),this._removeUniqueSelectionListener()}},{key:"_emitChangeEvent",value:function(){this.change.emit(new E(this,this._value))}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_onInputClick",value:function(ne){ne.stopPropagation()}},{key:"_onInputInteraction",value:function(ne){if(ne.stopPropagation(),!this.checked&&!this.disabled){var ve=this.radioGroup&&this.value!==this.radioGroup.value;this.checked=!0,this._emitChangeEvent(),this.radioGroup&&(this.radioGroup._controlValueAccessorChangeFn(this.value),ve&&this.radioGroup._emitChangeEvent())}}},{key:"_setDisabled",value:function(ne){this._disabled!==ne&&(this._disabled=ne,this._changeDetector.markForCheck())}}]),se}(H);return r.\u0275fac=function(Y){d.$Z()},r.\u0275dir=d.lG2({type:r,viewQuery:function(Y,se){var X;1&Y&&d.Gf(v,5),2&Y&&d.iGM(X=d.CRH())&&(se._inputElement=X.first)},inputs:{id:"id",name:"name",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],checked:"checked",value:"value",labelPosition:"labelPosition",disabled:"disabled",required:"required",color:"color"},outputs:{change:"change"},features:[d.qOj]}),r}(),ue=function(){var r=function(z){(0,P.Z)(se,z);var Y=(0,t.Z)(se);function se(X,ne,ve,Re,Ie,Ee,ge,_t){return(0,p.Z)(this,se),Y.call(this,X,ne,ve,Re,Ie,Ee,ge,_t)}return(0,e.Z)(se)}(V);return r.\u0275fac=function(Y){return new(Y||r)(d.Y36(k,8),d.Y36(d.SBq),d.Y36(d.sBO),d.Y36(B.tE),d.Y36(I.A8),d.Y36(T.Qb,8),d.Y36(J,8),d.$8M("tabindex"))},r.\u0275cmp=d.Xpm({type:r,selectors:[["mat-radio-button"]],hostAttrs:[1,"mat-radio-button"],hostVars:17,hostBindings:function(Y,se){1&Y&&d.NdJ("focus",function(){return se._inputElement.nativeElement.focus()}),2&Y&&(d.uIk("tabindex",null)("id",se.id)("aria-label",null)("aria-labelledby",null)("aria-describedby",null),d.ekj("mat-radio-checked",se.checked)("mat-radio-disabled",se.disabled)("_mat-animation-noopable",se._noopAnimations)("mat-primary","primary"===se.color)("mat-accent","accent"===se.color)("mat-warn","warn"===se.color))},inputs:{disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matRadioButton"],features:[d.qOj],ngContentSelectors:Q,decls:13,vars:20,consts:[[1,"mat-radio-label"],["label",""],[1,"mat-radio-container"],[1,"mat-radio-outer-circle"],[1,"mat-radio-inner-circle"],["type","radio",1,"mat-radio-input","cdk-visually-hidden",3,"id","checked","disabled","tabIndex","required","change","click"],["input",""],["mat-ripple","",1,"mat-radio-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-radio-persistent-ripple"],[1,"mat-radio-label-content"],[2,"display","none"]],template:function(Y,se){if(1&Y&&(d.F$t(),d.TgZ(0,"label",0,1),d.TgZ(2,"span",2),d._UZ(3,"span",3),d._UZ(4,"span",4),d.TgZ(5,"input",5,6),d.NdJ("change",function(ve){return se._onInputInteraction(ve)})("click",function(ve){return se._onInputClick(ve)}),d.qZA(),d.TgZ(7,"span",7),d._UZ(8,"span",8),d.qZA(),d.qZA(),d.TgZ(9,"span",9),d.TgZ(10,"span",10),d._uU(11,"\xa0"),d.qZA(),d.Hsn(12),d.qZA(),d.qZA()),2&Y){var X=d.MAs(1);d.uIk("for",se.inputId),d.xp6(5),d.Q6J("id",se.inputId)("checked",se.checked)("disabled",se.disabled)("tabIndex",se.tabIndex)("required",se.required),d.uIk("name",se.name)("value",se.value)("aria-label",se.ariaLabel)("aria-labelledby",se.ariaLabelledby)("aria-describedby",se.ariaDescribedby),d.xp6(2),d.Q6J("matRippleTrigger",X)("matRippleDisabled",se._isRippleDisabled())("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",d.VKq(18,j,se._noopAnimations?0:150)),d.xp6(2),d.ekj("mat-radio-label-before","before"==se.labelPosition)}},directives:[s.wG],styles:[".mat-radio-button{display:inline-block;-webkit-tap-highlight-color:transparent;outline:0}.mat-radio-label{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;vertical-align:middle;width:100%}.mat-radio-container{box-sizing:border-box;display:inline-block;position:relative;width:20px;height:20px;flex-shrink:0}.mat-radio-outer-circle{box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;transition:border-color ease 280ms;width:20px;border-width:2px;border-style:solid;border-radius:50%}._mat-animation-noopable .mat-radio-outer-circle{transition:none}.mat-radio-inner-circle{border-radius:50%;box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;opacity:0;transition:transform ease 280ms,background-color ease 280ms,opacity linear 1ms 280ms;width:20px;transform:scale(0.001);-webkit-print-color-adjust:exact;color-adjust:exact}.mat-radio-checked .mat-radio-inner-circle{transform:scale(0.5);opacity:1;transition:transform ease 280ms,background-color ease 280ms}.cdk-high-contrast-active .mat-radio-checked .mat-radio-inner-circle{border:solid 10px}._mat-animation-noopable .mat-radio-inner-circle{transition:none}.mat-radio-label-content{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto;display:inline-block;order:0;line-height:inherit;padding-left:8px;padding-right:0}[dir=rtl] .mat-radio-label-content{padding-right:8px;padding-left:0}.mat-radio-label-content.mat-radio-label-before{order:-1;padding-left:0;padding-right:8px}[dir=rtl] .mat-radio-label-content.mat-radio-label-before{padding-right:0;padding-left:8px}.mat-radio-disabled,.mat-radio-disabled .mat-radio-label{cursor:default}.mat-radio-button .mat-radio-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-radio-button .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple){opacity:.16}.mat-radio-persistent-ripple{width:100%;height:100%;transform:none;top:0;left:0}.mat-radio-container:hover .mat-radio-persistent-ripple{opacity:.04}.mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-persistent-ripple,.mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-persistent-ripple{opacity:.12}.mat-radio-persistent-ripple,.mat-radio-disabled .mat-radio-container:hover .mat-radio-persistent-ripple{opacity:0}@media(hover: none){.mat-radio-container:hover .mat-radio-persistent-ripple{display:none}}.mat-radio-input{bottom:0;left:50%}.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-ripple,.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-ripple{outline:solid 3px}.cdk-high-contrast-active .mat-radio-disabled{opacity:.5}\n"],encapsulation:2,changeDetection:0}),r}(),R=function(){var r=(0,e.Z)(function z(){(0,p.Z)(this,z)});return r.\u0275fac=function(Y){return new(Y||r)},r.\u0275mod=d.oAB({type:r}),r.\u0275inj=d.cJS({imports:[[s.si,s.BQ],s.BQ]}),r}()},91434:function(dt,K,n){"use strict";n.d(K,{gD:function(){return Pt},LD:function(){return ut},$L:function(){return bt}});var P=n(4089),t=n(20265),e=n(86170),p=n(35488),d=n(24582),s=n(7318),h=n(48047),f=n(78069),T=n(66088),B=n(36362),I=n(76442),v=n(1130),j=n(44770),Q=n(24426),J=n(84128),Z=n(76484),A=n(89502),N=n(75939),E=n(90587),k=n(50253),q=n(21954),ce=n(36646),ie=n(44874),H=n(32673),V=n(59295),ue=n(60116),R=n(50635),r=n(98977),z=n(68951),Y=n(31631),se=n(51588),X=["trigger"],ne=["panel"];function ve(yt,be){if(1&yt&&(I.TgZ(0,"span",8),I._uU(1),I.qZA()),2&yt){var we=I.oxw();I.xp6(1),I.Oqu(we.placeholder)}}function Re(yt,be){if(1&yt&&(I.TgZ(0,"span",12),I._uU(1),I.qZA()),2&yt){var we=I.oxw(2);I.xp6(1),I.Oqu(we.triggerValue)}}function Ie(yt,be){1&yt&&I.Hsn(0,0,["*ngSwitchCase","true"])}function Ee(yt,be){if(1&yt&&(I.TgZ(0,"span",9),I.YNc(1,Re,2,1,"span",10),I.YNc(2,Ie,1,0,"ng-content",11),I.qZA()),2&yt){var we=I.oxw();I.Q6J("ngSwitch",!!we.customTrigger),I.xp6(2),I.Q6J("ngSwitchCase",!0)}}function ge(yt,be){if(1&yt){var we=I.EpF();I.TgZ(0,"div",13),I.TgZ(1,"div",14,15),I.NdJ("@transformPanel.done",function(Ae){return I.CHM(we),I.oxw()._panelDoneAnimatingStream.next(Ae.toState)})("keydown",function(Ae){return I.CHM(we),I.oxw()._handleKeydown(Ae)}),I.Hsn(3,1),I.qZA(),I.qZA()}if(2&yt){var _e=I.oxw();I.Q6J("@transformPanelWrap",void 0),I.xp6(1),I.Gre("mat-select-panel ",_e._getPanelTheme(),""),I.Udp("transform-origin",_e._transformOrigin)("font-size",_e._triggerFontSize,"px"),I.Q6J("ngClass",_e.panelClass)("@transformPanel",_e.multiple?"showing-multiple":"showing"),I.uIk("id",_e.id+"-panel")("aria-multiselectable",_e.multiple)("aria-label",_e.ariaLabel||null)("aria-labelledby",_e._getPanelAriaLabelledby())}}var _t=[[["mat-select-trigger"]],"*"],wt=["mat-select-trigger","*"],qt={transformPanelWrap:(0,Y.X$)("transformPanelWrap",[(0,Y.eR)("* => void",(0,Y.IO)("@transformPanel",[(0,Y.pV)()],{optional:!0}))]),transformPanel:(0,Y.X$)("transformPanel",[(0,Y.SB)("void",(0,Y.oB)({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),(0,Y.SB)("showing",(0,Y.oB)({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),(0,Y.SB)("showing-multiple",(0,Y.oB)({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),(0,Y.eR)("void => *",(0,Y.jt)("120ms cubic-bezier(0, 0, 0.2, 1)")),(0,Y.eR)("* => void",(0,Y.jt)("100ms 25ms linear",(0,Y.oB)({opacity:0})))])},Qe=0,Xe=new I.OlP("mat-select-scroll-strategy"),vt=new I.OlP("MAT_SELECT_CONFIG"),qe={provide:Xe,deps:[T.aV],useFactory:function Te(yt){return function(){return yt.scrollStrategies.reposition()}}},je=(0,h.Z)(function yt(be,we){(0,f.Z)(this,yt),this.source=be,this.value=we}),Nt=(0,v.Kr)((0,v.sb)((0,v.Id)((0,v.FD)(function(){return(0,h.Z)(function yt(be,we,_e,$,Ae){(0,f.Z)(this,yt),this._elementRef=be,this._defaultErrorStateMatcher=we,this._parentForm=_e,this._parentFormGroup=$,this.ngControl=Ae})}())))),Ft=new I.OlP("MatSelectTrigger"),bt=function(){var yt=(0,h.Z)(function be(){(0,f.Z)(this,be)});return yt.\u0275fac=function(we){return new(we||yt)},yt.\u0275dir=I.lG2({type:yt,selectors:[["mat-select-trigger"]],features:[I._Bn([{provide:Ft,useExisting:yt}])]}),yt}(),St=function(){var yt=function(be){(0,d.Z)(_e,be);var we=(0,s.Z)(_e);function _e($,Ae,ft,gt,Bt,_n,wn,Tn,On,Jn,Un,si,fi,rn){var sn,jt,Ue,et;return(0,f.Z)(this,_e),(sn=we.call(this,Bt,gt,wn,Tn,Jn))._viewportRuler=$,sn._changeDetectorRef=Ae,sn._ngZone=ft,sn._dir=_n,sn._parentFormField=On,sn._liveAnnouncer=fi,sn._defaultOptions=rn,sn._panelOpen=!1,sn._compareWith=function(De,Ze){return De===Ze},sn._uid="mat-select-".concat(Qe++),sn._triggerAriaLabelledBy=null,sn._destroy=new k.x,sn._onChange=function(){},sn._onTouched=function(){},sn._valueId="mat-select-value-".concat(Qe++),sn._panelDoneAnimatingStream=new k.x,sn._overlayPanelClass=(null===(jt=sn._defaultOptions)||void 0===jt?void 0:jt.overlayPanelClass)||"",sn._focused=!1,sn.controlType="mat-select",sn._multiple=!1,sn._disableOptionCentering=null!==(et=null===(Ue=sn._defaultOptions)||void 0===Ue?void 0:Ue.disableOptionCentering)&&void 0!==et&&et,sn.ariaLabel="",sn.optionSelectionChanges=(0,q.P)(function(){var De=sn.options;return De?De.changes.pipe((0,ie.O)(De),(0,H.w)(function(){return ce.T.apply(void 0,(0,e.Z)(De.map(function(Ze){return Ze.onSelectionChange})))})):sn._ngZone.onStable.pipe((0,V.q)(1),(0,H.w)(function(){return sn.optionSelectionChanges}))}),sn.openedChange=new I.vpe,sn._openedStream=sn.openedChange.pipe((0,ue.h)(function(De){return De}),(0,R.U)(function(){})),sn._closedStream=sn.openedChange.pipe((0,ue.h)(function(De){return!De}),(0,R.U)(function(){})),sn.selectionChange=new I.vpe,sn.valueChange=new I.vpe,sn.ngControl&&(sn.ngControl.valueAccessor=(0,p.Z)(sn)),null!=(null==rn?void 0:rn.typeaheadDebounceInterval)&&(sn._typeaheadDebounceInterval=rn.typeaheadDebounceInterval),sn._scrollStrategyFactory=si,sn._scrollStrategy=sn._scrollStrategyFactory(),sn.tabIndex=parseInt(Un)||0,sn.id=sn.id,sn}return(0,h.Z)(_e,[{key:"focused",get:function(){return this._focused||this._panelOpen}},{key:"placeholder",get:function(){return this._placeholder},set:function(Ae){this._placeholder=Ae,this.stateChanges.next()}},{key:"required",get:function(){var Ae,ft,gt,Bt;return null!==(Bt=null!==(Ae=this._required)&&void 0!==Ae?Ae:null===(gt=null===(ft=this.ngControl)||void 0===ft?void 0:ft.control)||void 0===gt?void 0:gt.hasValidator(E.kI.required))&&void 0!==Bt&&Bt},set:function(Ae){this._required=(0,Z.Ig)(Ae),this.stateChanges.next()}},{key:"multiple",get:function(){return this._multiple},set:function(Ae){this._multiple=(0,Z.Ig)(Ae)}},{key:"disableOptionCentering",get:function(){return this._disableOptionCentering},set:function(Ae){this._disableOptionCentering=(0,Z.Ig)(Ae)}},{key:"compareWith",get:function(){return this._compareWith},set:function(Ae){this._compareWith=Ae,this._selectionModel&&this._initializeSelection()}},{key:"value",get:function(){return this._value},set:function(Ae){(Ae!==this._value||this._multiple&&Array.isArray(Ae))&&(this.options&&this._setSelectionByValue(Ae),this._value=Ae)}},{key:"typeaheadDebounceInterval",get:function(){return this._typeaheadDebounceInterval},set:function(Ae){this._typeaheadDebounceInterval=(0,Z.su)(Ae)}},{key:"id",get:function(){return this._id},set:function(Ae){this._id=Ae||this._uid,this.stateChanges.next()}},{key:"ngOnInit",value:function(){var Ae=this;this._selectionModel=new A.Ov(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe((0,r.x)(),(0,z.R)(this._destroy)).subscribe(function(){return Ae._panelDoneAnimating(Ae.panelOpen)})}},{key:"ngAfterContentInit",value:function(){var Ae=this;this._initKeyManager(),this._selectionModel.changed.pipe((0,z.R)(this._destroy)).subscribe(function(ft){ft.added.forEach(function(gt){return gt.select()}),ft.removed.forEach(function(gt){return gt.deselect()})}),this.options.changes.pipe((0,ie.O)(null),(0,z.R)(this._destroy)).subscribe(function(){Ae._resetOptions(),Ae._initializeSelection()})}},{key:"ngDoCheck",value:function(){var Ae=this._getTriggerAriaLabelledby();if(Ae!==this._triggerAriaLabelledBy){var ft=this._elementRef.nativeElement;this._triggerAriaLabelledBy=Ae,Ae?ft.setAttribute("aria-labelledby",Ae):ft.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}},{key:"ngOnChanges",value:function(Ae){Ae.disabled&&this.stateChanges.next(),Ae.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}},{key:"ngOnDestroy",value:function(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}},{key:"toggle",value:function(){this.panelOpen?this.close():this.open()}},{key:"open",value:function(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}},{key:"close",value:function(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}},{key:"writeValue",value:function(Ae){this.value=Ae}},{key:"registerOnChange",value:function(Ae){this._onChange=Ae}},{key:"registerOnTouched",value:function(Ae){this._onTouched=Ae}},{key:"setDisabledState",value:function(Ae){this.disabled=Ae,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}},{key:"panelOpen",get:function(){return this._panelOpen}},{key:"selected",get:function(){var Ae,ft;return this.multiple?(null===(Ae=this._selectionModel)||void 0===Ae?void 0:Ae.selected)||[]:null===(ft=this._selectionModel)||void 0===ft?void 0:ft.selected[0]}},{key:"triggerValue",get:function(){if(this.empty)return"";if(this._multiple){var Ae=this._selectionModel.selected.map(function(ft){return ft.viewValue});return this._isRtl()&&Ae.reverse(),Ae.join(", ")}return this._selectionModel.selected[0].viewValue}},{key:"_isRtl",value:function(){return!!this._dir&&"rtl"===this._dir.value}},{key:"_handleKeydown",value:function(Ae){this.disabled||(this.panelOpen?this._handleOpenKeydown(Ae):this._handleClosedKeydown(Ae))}},{key:"_handleClosedKeydown",value:function(Ae){var ft=Ae.keyCode,gt=ft===N.JH||ft===N.LH||ft===N.oh||ft===N.SV,Bt=ft===N.K5||ft===N.L_,_n=this._keyManager;if(!_n.isTyping()&&Bt&&!(0,N.Vb)(Ae)||(this.multiple||Ae.altKey)&>)Ae.preventDefault(),this.open();else if(!this.multiple){var wn=this.selected;_n.onKeydown(Ae);var Tn=this.selected;Tn&&wn!==Tn&&this._liveAnnouncer.announce(Tn.viewValue,1e4)}}},{key:"_handleOpenKeydown",value:function(Ae){var ft=this._keyManager,gt=Ae.keyCode,Bt=gt===N.JH||gt===N.LH,_n=ft.isTyping();if(Bt&&Ae.altKey)Ae.preventDefault(),this.close();else if(_n||gt!==N.K5&>!==N.L_||!ft.activeItem||(0,N.Vb)(Ae))if(!_n&&this._multiple&>===N.A&&Ae.ctrlKey){Ae.preventDefault();var wn=this.options.some(function(On){return!On.disabled&&!On.selected});this.options.forEach(function(On){On.disabled||(wn?On.select():On.deselect())})}else{var Tn=ft.activeItemIndex;ft.onKeydown(Ae),this._multiple&&Bt&&Ae.shiftKey&&ft.activeItem&&ft.activeItemIndex!==Tn&&ft.activeItem._selectViaInteraction()}else Ae.preventDefault(),ft.activeItem._selectViaInteraction()}},{key:"_onFocus",value:function(){this.disabled||(this._focused=!0,this.stateChanges.next())}},{key:"_onBlur",value:function(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}},{key:"_onAttached",value:function(){var Ae=this;this._overlayDir.positionChange.pipe((0,V.q)(1)).subscribe(function(){Ae._changeDetectorRef.detectChanges(),Ae._positioningSettled()})}},{key:"_getPanelTheme",value:function(){return this._parentFormField?"mat-".concat(this._parentFormField.color):""}},{key:"empty",get:function(){return!this._selectionModel||this._selectionModel.isEmpty()}},{key:"_initializeSelection",value:function(){var Ae=this;Promise.resolve().then(function(){Ae.ngControl&&(Ae._value=Ae.ngControl.value),Ae._setSelectionByValue(Ae._value),Ae.stateChanges.next()})}},{key:"_setSelectionByValue",value:function(Ae){var ft=this;if(this._selectionModel.selected.forEach(function(Bt){return Bt.setInactiveStyles()}),this._selectionModel.clear(),this.multiple&&Ae)Array.isArray(Ae),Ae.forEach(function(Bt){return ft._selectValue(Bt)}),this._sortValues();else{var gt=this._selectValue(Ae);gt?this._keyManager.updateActiveItem(gt):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}},{key:"_selectValue",value:function(Ae){var ft=this,gt=this.options.find(function(Bt){if(ft._selectionModel.isSelected(Bt))return!1;try{return null!=Bt.value&&ft._compareWith(Bt.value,Ae)}catch(_n){return!1}});return gt&&this._selectionModel.select(gt),gt}},{key:"_initKeyManager",value:function(){var Ae=this;this._keyManager=new J.s1(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe((0,z.R)(this._destroy)).subscribe(function(){Ae.panelOpen&&(!Ae.multiple&&Ae._keyManager.activeItem&&Ae._keyManager.activeItem._selectViaInteraction(),Ae.focus(),Ae.close())}),this._keyManager.change.pipe((0,z.R)(this._destroy)).subscribe(function(){Ae._panelOpen&&Ae.panel?Ae._scrollOptionIntoView(Ae._keyManager.activeItemIndex||0):!Ae._panelOpen&&!Ae.multiple&&Ae._keyManager.activeItem&&Ae._keyManager.activeItem._selectViaInteraction()})}},{key:"_resetOptions",value:function(){var Ae=this,ft=(0,ce.T)(this.options.changes,this._destroy);this.optionSelectionChanges.pipe((0,z.R)(ft)).subscribe(function(gt){Ae._onSelect(gt.source,gt.isUserInput),gt.isUserInput&&!Ae.multiple&&Ae._panelOpen&&(Ae.close(),Ae.focus())}),ce.T.apply(void 0,(0,e.Z)(this.options.map(function(gt){return gt._stateChanges}))).pipe((0,z.R)(ft)).subscribe(function(){Ae._changeDetectorRef.markForCheck(),Ae.stateChanges.next()})}},{key:"_onSelect",value:function(Ae,ft){var gt=this._selectionModel.isSelected(Ae);null!=Ae.value||this._multiple?(gt!==Ae.selected&&(Ae.selected?this._selectionModel.select(Ae):this._selectionModel.deselect(Ae)),ft&&this._keyManager.setActiveItem(Ae),this.multiple&&(this._sortValues(),ft&&this.focus())):(Ae.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(Ae.value)),gt!==this._selectionModel.isSelected(Ae)&&this._propagateChanges(),this.stateChanges.next()}},{key:"_sortValues",value:function(){var Ae=this;if(this.multiple){var ft=this.options.toArray();this._selectionModel.sort(function(gt,Bt){return Ae.sortComparator?Ae.sortComparator(gt,Bt,ft):ft.indexOf(gt)-ft.indexOf(Bt)}),this.stateChanges.next()}}},{key:"_propagateChanges",value:function(Ae){var ft;ft=this.multiple?this.selected.map(function(gt){return gt.value}):this.selected?this.selected.value:Ae,this._value=ft,this.valueChange.emit(ft),this._onChange(ft),this.selectionChange.emit(this._getChangeEvent(ft)),this._changeDetectorRef.markForCheck()}},{key:"_highlightCorrectOption",value:function(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}},{key:"_canOpen",value:function(){var Ae;return!this._panelOpen&&!this.disabled&&(null===(Ae=this.options)||void 0===Ae?void 0:Ae.length)>0}},{key:"focus",value:function(Ae){this._elementRef.nativeElement.focus(Ae)}},{key:"_getPanelAriaLabelledby",value:function(){var Ae;if(this.ariaLabel)return null;var ft=null===(Ae=this._parentFormField)||void 0===Ae?void 0:Ae.getLabelId();return this.ariaLabelledby?(ft?ft+" ":"")+this.ariaLabelledby:ft}},{key:"_getAriaActiveDescendant",value:function(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}},{key:"_getTriggerAriaLabelledby",value:function(){var Ae;if(this.ariaLabel)return null;var ft=null===(Ae=this._parentFormField)||void 0===Ae?void 0:Ae.getLabelId(),gt=(ft?ft+" ":"")+this._valueId;return this.ariaLabelledby&&(gt+=" "+this.ariaLabelledby),gt}},{key:"_panelDoneAnimating",value:function(Ae){this.openedChange.emit(Ae)}},{key:"setDescribedByIds",value:function(Ae){this._ariaDescribedby=Ae.join(" ")}},{key:"onContainerClick",value:function(){this.focus(),this.open()}},{key:"shouldLabelFloat",get:function(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}]),_e}(Nt);return yt.\u0275fac=function(we){return new(we||yt)(I.Y36(Q.rL),I.Y36(I.sBO),I.Y36(I.R0b),I.Y36(v.rD),I.Y36(I.SBq),I.Y36(se.Is,8),I.Y36(E.F,8),I.Y36(E.sg,8),I.Y36(j.G_,8),I.Y36(E.a5,10),I.$8M("tabindex"),I.Y36(Xe),I.Y36(J.Kd),I.Y36(vt,8))},yt.\u0275dir=I.lG2({type:yt,viewQuery:function(we,_e){var $;1&we&&(I.Gf(X,5),I.Gf(ne,5),I.Gf(T.pI,5)),2&we&&(I.iGM($=I.CRH())&&(_e.trigger=$.first),I.iGM($=I.CRH())&&(_e.panel=$.first),I.iGM($=I.CRH())&&(_e._overlayDir=$.first))},inputs:{panelClass:"panelClass",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:"typeaheadDebounceInterval",sortComparator:"sortComparator",id:"id"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[I.qOj,I.TTD]}),yt}(),Pt=function(){var yt=function(be){(0,d.Z)(_e,be);var we=(0,s.Z)(_e);function _e(){var $;return(0,f.Z)(this,_e),($=we.apply(this,arguments))._scrollTop=0,$._triggerFontSize=0,$._transformOrigin="top",$._offsetY=0,$._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}],$}return(0,h.Z)(_e,[{key:"_calculateOverlayScroll",value:function(Ae,ft,gt){var Bt=this._getItemHeight();return Math.min(Math.max(0,Bt*Ae-ft+Bt/2),gt)}},{key:"ngOnInit",value:function(){var Ae=this;(0,P.Z)((0,t.Z)(_e.prototype),"ngOnInit",this).call(this),this._viewportRuler.change().pipe((0,z.R)(this._destroy)).subscribe(function(){Ae.panelOpen&&(Ae._triggerRect=Ae.trigger.nativeElement.getBoundingClientRect(),Ae._changeDetectorRef.markForCheck())})}},{key:"open",value:function(){var Ae=this;(0,P.Z)((0,t.Z)(_e.prototype),"_canOpen",this).call(this)&&((0,P.Z)((0,t.Z)(_e.prototype),"open",this).call(this),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe((0,V.q)(1)).subscribe(function(){Ae._triggerFontSize&&Ae._overlayDir.overlayRef&&Ae._overlayDir.overlayRef.overlayElement&&(Ae._overlayDir.overlayRef.overlayElement.style.fontSize="".concat(Ae._triggerFontSize,"px"))}))}},{key:"_scrollOptionIntoView",value:function(Ae){var ft=(0,v.CB)(Ae,this.options,this.optionGroups),gt=this._getItemHeight();this.panel.nativeElement.scrollTop=0===Ae&&1===ft?0:(0,v.jH)((Ae+ft)*gt,gt,this.panel.nativeElement.scrollTop,256)}},{key:"_positioningSettled",value:function(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}},{key:"_panelDoneAnimating",value:function(Ae){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),(0,P.Z)((0,t.Z)(_e.prototype),"_panelDoneAnimating",this).call(this,Ae)}},{key:"_getChangeEvent",value:function(Ae){return new je(this,Ae)}},{key:"_calculateOverlayOffsetX",value:function(){var _n,Ae=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),ft=this._viewportRuler.getViewportSize(),gt=this._isRtl(),Bt=this.multiple?56:32;if(this.multiple)_n=40;else if(this.disableOptionCentering)_n=16;else{var wn=this._selectionModel.selected[0]||this.options.first;_n=wn&&wn.group?32:16}gt||(_n*=-1);var Tn=0-(Ae.left+_n-(gt?Bt:0)),On=Ae.right+_n-ft.width+(gt?0:Bt);Tn>0?_n+=Tn+8:On>0&&(_n-=On+8),this._overlayDir.offsetX=Math.round(_n),this._overlayDir.overlayRef.updatePosition()}},{key:"_calculateOverlayOffsetY",value:function(Ae,ft,gt){var Tn,Bt=this._getItemHeight(),_n=(Bt-this._triggerRect.height)/2,wn=Math.floor(256/Bt);return this.disableOptionCentering?0:(Tn=0===this._scrollTop?Ae*Bt:this._scrollTop===gt?(Ae-(this._getItemCount()-wn))*Bt+(Bt-(this._getItemCount()*Bt-256)%Bt):ft-Bt/2,Math.round(-1*Tn-_n))}},{key:"_checkOverlayWithinViewport",value:function(Ae){var ft=this._getItemHeight(),gt=this._viewportRuler.getViewportSize(),Bt=this._triggerRect.top-8,_n=gt.height-this._triggerRect.bottom-8,wn=Math.abs(this._offsetY),On=Math.min(this._getItemCount()*ft,256)-wn-this._triggerRect.height;On>_n?this._adjustPanelUp(On,_n):wn>Bt?this._adjustPanelDown(wn,Bt,Ae):this._transformOrigin=this._getOriginBasedOnOption()}},{key:"_adjustPanelUp",value:function(Ae,ft){var gt=Math.round(Ae-ft);this._scrollTop-=gt,this._offsetY-=gt,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}},{key:"_adjustPanelDown",value:function(Ae,ft,gt){var Bt=Math.round(Ae-ft);if(this._scrollTop+=Bt,this._offsetY+=Bt,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=gt)return this._scrollTop=gt,this._offsetY=0,void(this._transformOrigin="50% top 0px")}},{key:"_calculateOverlayPosition",value:function(){var wn,Ae=this._getItemHeight(),ft=this._getItemCount(),gt=Math.min(ft*Ae,256),_n=ft*Ae-gt;wn=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),wn+=(0,v.CB)(wn,this.options,this.optionGroups);var Tn=gt/2;this._scrollTop=this._calculateOverlayScroll(wn,Tn,_n),this._offsetY=this._calculateOverlayOffsetY(wn,Tn,_n),this._checkOverlayWithinViewport(_n)}},{key:"_getOriginBasedOnOption",value:function(){var Ae=this._getItemHeight(),ft=(Ae-this._triggerRect.height)/2,gt=Math.abs(this._offsetY)-ft+Ae/2;return"50% ".concat(gt,"px 0px")}},{key:"_getItemHeight",value:function(){return 3*this._triggerFontSize}},{key:"_getItemCount",value:function(){return this.options.length+this.optionGroups.length}}]),_e}(St);return yt.\u0275fac=function(){var be;return function(_e){return(be||(be=I.n5z(yt)))(_e||yt)}}(),yt.\u0275cmp=I.Xpm({type:yt,selectors:[["mat-select"]],contentQueries:function(we,_e,$){var Ae;1&we&&(I.Suo($,Ft,5),I.Suo($,v.ey,5),I.Suo($,v.K7,5)),2&we&&(I.iGM(Ae=I.CRH())&&(_e.customTrigger=Ae.first),I.iGM(Ae=I.CRH())&&(_e.options=Ae),I.iGM(Ae=I.CRH())&&(_e.optionGroups=Ae))},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(we,_e){1&we&&I.NdJ("keydown",function(Ae){return _e._handleKeydown(Ae)})("focus",function(){return _e._onFocus()})("blur",function(){return _e._onBlur()}),2&we&&(I.uIk("id",_e.id)("tabindex",_e.tabIndex)("aria-controls",_e.panelOpen?_e.id+"-panel":null)("aria-expanded",_e.panelOpen)("aria-label",_e.ariaLabel||null)("aria-required",_e.required.toString())("aria-disabled",_e.disabled.toString())("aria-invalid",_e.errorState)("aria-describedby",_e._ariaDescribedby||null)("aria-activedescendant",_e._getAriaActiveDescendant()),I.ekj("mat-select-disabled",_e.disabled)("mat-select-invalid",_e.errorState)("mat-select-required",_e.required)("mat-select-empty",_e.empty)("mat-select-multiple",_e.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[I._Bn([{provide:j.Eo,useExisting:yt},{provide:v.HF,useExisting:yt}]),I.qOj],ngContentSelectors:wt,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(we,_e){if(1&we&&(I.F$t(_t),I.TgZ(0,"div",0,1),I.NdJ("click",function(){return _e.toggle()}),I.TgZ(3,"div",2),I.YNc(4,ve,2,1,"span",3),I.YNc(5,Ee,3,2,"span",4),I.qZA(),I.TgZ(6,"div",5),I._UZ(7,"div",6),I.qZA(),I.qZA(),I.YNc(8,ge,4,14,"ng-template",7),I.NdJ("backdropClick",function(){return _e.close()})("attach",function(){return _e._onAttached()})("detach",function(){return _e.close()})),2&we){var $=I.MAs(1);I.uIk("aria-owns",_e.panelOpen?_e.id+"-panel":null),I.xp6(3),I.Q6J("ngSwitch",_e.empty),I.uIk("id",_e._valueId),I.xp6(1),I.Q6J("ngSwitchCase",!0),I.xp6(1),I.Q6J("ngSwitchCase",!1),I.xp6(3),I.Q6J("cdkConnectedOverlayPanelClass",_e._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",_e._scrollStrategy)("cdkConnectedOverlayOrigin",$)("cdkConnectedOverlayOpen",_e.panelOpen)("cdkConnectedOverlayPositions",_e._positions)("cdkConnectedOverlayMinWidth",null==_e._triggerRect?null:_e._triggerRect.width)("cdkConnectedOverlayOffsetY",_e._offsetY)}},directives:[T.xu,B.RF,B.n9,B.ED,T.pI,B.mk],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[qt.transformPanelWrap,qt.transformPanel]},changeDetection:0}),yt}(),ut=function(){var yt=(0,h.Z)(function be(){(0,f.Z)(this,be)});return yt.\u0275fac=function(we){return new(we||yt)},yt.\u0275mod=I.oAB({type:yt}),yt.\u0275inj=I.cJS({providers:[qe],imports:[[B.ez,T.U8,v.Ng,v.BQ],Q.ZD,j.lN,v.Ng,v.BQ]}),yt}()},7216:function(dt,K,n){"use strict";n.d(K,{JX:function(){return tt},TM:function(){return xe},Rh:function(){return ot},SJ:function(){return $e}});var P=n(78069),t=n(48047),e=n(24582),p=n(7318),d=n(14390),s=n(24426),h=n(36362),f=n(76442),T=n(1130),B=n(76484),I=n(75939),v=n(50253),j=n(23280),Q=n(36646),J=n(60116),Z=n(50635),A=n(73),N=n(68951),E=n(98977),k=n(59295),q=n(44874),ce=n(71989),ie=n(31631),H=n(57481),V=n(84128),ue=n(51588),R=["*"],r=["content"];function z(Ge,ct){if(1&Ge){var Xe=f.EpF();f.TgZ(0,"div",2),f.NdJ("click",function(){return f.CHM(Xe),f.oxw()._onBackdropClicked()}),f.qZA()}if(2&Ge){var Te=f.oxw();f.ekj("mat-drawer-shown",Te._isShowingBackdrop())}}function Y(Ge,ct){1&Ge&&(f.TgZ(0,"mat-drawer-content"),f.Hsn(1,2),f.qZA())}var se=[[["mat-drawer"]],[["mat-drawer-content"]],"*"],X=["mat-drawer","mat-drawer-content","*"];function ne(Ge,ct){if(1&Ge){var Xe=f.EpF();f.TgZ(0,"div",2),f.NdJ("click",function(){return f.CHM(Xe),f.oxw()._onBackdropClicked()}),f.qZA()}if(2&Ge){var Te=f.oxw();f.ekj("mat-drawer-shown",Te._isShowingBackdrop())}}function ve(Ge,ct){1&Ge&&(f.TgZ(0,"mat-sidenav-content"),f.Hsn(1,2),f.qZA())}var Re=[[["mat-sidenav"]],[["mat-sidenav-content"]],"*"],Ie=["mat-sidenav","mat-sidenav-content","*"],ge={transformDrawer:(0,ie.X$)("transform",[(0,ie.SB)("open, open-instant",(0,ie.oB)({transform:"none",visibility:"visible"})),(0,ie.SB)("void",(0,ie.oB)({"box-shadow":"none",visibility:"hidden"})),(0,ie.eR)("void => open-instant",(0,ie.jt)("0ms")),(0,ie.eR)("void <=> open, open-instant => void",(0,ie.jt)("400ms cubic-bezier(0.25, 0.8, 0.25, 1)"))])},wt=new f.OlP("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:function Lt(){return!1}}),qt=new f.OlP("MAT_DRAWER_CONTAINER"),Rt=function(){var Ge=function(ct){(0,e.Z)(Te,ct);var Xe=(0,p.Z)(Te);function Te(vt,qe,je,Nt,Ft){var bt;return(0,P.Z)(this,Te),(bt=Xe.call(this,je,Nt,Ft))._changeDetectorRef=vt,bt._container=qe,bt}return(0,t.Z)(Te,[{key:"ngAfterContentInit",value:function(){var qe=this;this._container._contentMarginChanges.subscribe(function(){qe._changeDetectorRef.markForCheck()})}}]),Te}(s.PQ);return Ge.\u0275fac=function(Xe){return new(Xe||Ge)(f.Y36(f.sBO),f.Y36((0,f.Gpc)(function(){return Qe})),f.Y36(f.SBq),f.Y36(s.mF),f.Y36(f.R0b))},Ge.\u0275cmp=f.Xpm({type:Ge,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:4,hostBindings:function(Xe,Te){2&Xe&&f.Udp("margin-left",Te._container._contentMargins.left,"px")("margin-right",Te._container._contentMargins.right,"px")},features:[f._Bn([{provide:s.PQ,useExisting:Ge}]),f.qOj],ngContentSelectors:R,decls:1,vars:0,template:function(Xe,Te){1&Xe&&(f.F$t(),f.Hsn(0))},encapsulation:2,changeDetection:0}),Ge}(),it=function(){var Ge=function(){function ct(Xe,Te,vt,qe,je,Nt,Ft,bt){var St=this;(0,P.Z)(this,ct),this._elementRef=Xe,this._focusTrapFactory=Te,this._focusMonitor=vt,this._platform=qe,this._ngZone=je,this._interactivityChecker=Nt,this._doc=Ft,this._container=bt,this._elementFocusedBeforeDrawerWasOpened=null,this._enableAnimations=!1,this._position="start",this._mode="over",this._disableClose=!1,this._opened=!1,this._animationStarted=new v.x,this._animationEnd=new v.x,this._animationState="void",this.openedChange=new f.vpe(!0),this._openedStream=this.openedChange.pipe((0,J.h)(function(Pt){return Pt}),(0,Z.U)(function(){})),this.openedStart=this._animationStarted.pipe((0,J.h)(function(Pt){return Pt.fromState!==Pt.toState&&0===Pt.toState.indexOf("open")}),(0,A.h)(void 0)),this._closedStream=this.openedChange.pipe((0,J.h)(function(Pt){return!Pt}),(0,Z.U)(function(){})),this.closedStart=this._animationStarted.pipe((0,J.h)(function(Pt){return Pt.fromState!==Pt.toState&&"void"===Pt.toState}),(0,A.h)(void 0)),this._destroyed=new v.x,this.onPositionChanged=new f.vpe,this._modeChanged=new v.x,this.openedChange.subscribe(function(Pt){Pt?(St._doc&&(St._elementFocusedBeforeDrawerWasOpened=St._doc.activeElement),St._takeFocus()):St._isFocusWithinDrawer()&&St._restoreFocus(St._openedVia||"program")}),this._ngZone.runOutsideAngular(function(){(0,j.R)(St._elementRef.nativeElement,"keydown").pipe((0,J.h)(function(Pt){return Pt.keyCode===I.hY&&!St.disableClose&&!(0,I.Vb)(Pt)}),(0,N.R)(St._destroyed)).subscribe(function(Pt){return St._ngZone.run(function(){St.close(),Pt.stopPropagation(),Pt.preventDefault()})})}),this._animationEnd.pipe((0,E.x)(function(Pt,ut){return Pt.fromState===ut.fromState&&Pt.toState===ut.toState})).subscribe(function(Pt){var ut=Pt.fromState,yt=Pt.toState;(0===yt.indexOf("open")&&"void"===ut||"void"===yt&&0===ut.indexOf("open"))&&St.openedChange.emit(St._opened)})}return(0,t.Z)(ct,[{key:"position",get:function(){return this._position},set:function(Te){(Te="end"===Te?"end":"start")!==this._position&&(this._isAttached&&this._updatePositionInParent(Te),this._position=Te,this.onPositionChanged.emit())}},{key:"mode",get:function(){return this._mode},set:function(Te){this._mode=Te,this._updateFocusTrapState(),this._modeChanged.next()}},{key:"disableClose",get:function(){return this._disableClose},set:function(Te){this._disableClose=(0,B.Ig)(Te)}},{key:"autoFocus",get:function(){var Te=this._autoFocus;return null==Te?"side"===this.mode?"dialog":"first-tabbable":Te},set:function(Te){("true"===Te||"false"===Te||null==Te)&&(Te=(0,B.Ig)(Te)),this._autoFocus=Te}},{key:"opened",get:function(){return this._opened},set:function(Te){this.toggle((0,B.Ig)(Te))}},{key:"_forceFocus",value:function(Te,vt){this._interactivityChecker.isFocusable(Te)||(Te.tabIndex=-1,this._ngZone.runOutsideAngular(function(){Te.addEventListener("blur",function(){return Te.removeAttribute("tabindex")}),Te.addEventListener("mousedown",function(){return Te.removeAttribute("tabindex")})})),Te.focus(vt)}},{key:"_focusByCssSelector",value:function(Te,vt){var qe=this._elementRef.nativeElement.querySelector(Te);qe&&this._forceFocus(qe,vt)}},{key:"_takeFocus",value:function(){var Te=this;if(this._focusTrap){var vt=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(function(qe){!qe&&"function"==typeof Te._elementRef.nativeElement.focus&&vt.focus()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus)}}}},{key:"_restoreFocus",value:function(Te){"dialog"!==this.autoFocus&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,Te):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}},{key:"_isFocusWithinDrawer",value:function(){var Te=this._doc.activeElement;return!!Te&&this._elementRef.nativeElement.contains(Te)}},{key:"ngAfterViewInit",value:function(){this._isAttached=!0,this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState(),"end"===this._position&&this._updatePositionInParent("end")}},{key:"ngAfterContentChecked",value:function(){this._platform.isBrowser&&(this._enableAnimations=!0)}},{key:"ngOnDestroy",value:function(){var Te;this._focusTrap&&this._focusTrap.destroy(),null===(Te=this._anchor)||void 0===Te||Te.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"open",value:function(Te){return this.toggle(!0,Te)}},{key:"close",value:function(){return this.toggle(!1)}},{key:"_closeViaBackdropClick",value:function(){return this._setOpen(!1,!0,"mouse")}},{key:"toggle",value:function(){var Te=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.opened,vt=arguments.length>1?arguments[1]:void 0;Te&&vt&&(this._openedVia=vt);var qe=this._setOpen(Te,!Te&&this._isFocusWithinDrawer(),this._openedVia||"program");return Te||(this._openedVia=null),qe}},{key:"_setOpen",value:function(Te,vt,qe){var je=this;return this._opened=Te,Te?this._animationState=this._enableAnimations?"open":"open-instant":(this._animationState="void",vt&&this._restoreFocus(qe)),this._updateFocusTrapState(),new Promise(function(Nt){je.openedChange.pipe((0,k.q)(1)).subscribe(function(Ft){return Nt(Ft?"open":"close")})})}},{key:"_getWidth",value:function(){return this._elementRef.nativeElement&&this._elementRef.nativeElement.offsetWidth||0}},{key:"_updateFocusTrapState",value:function(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&"side"!==this.mode)}},{key:"_updatePositionInParent",value:function(Te){var vt=this._elementRef.nativeElement,qe=vt.parentNode;"end"===Te?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),qe.insertBefore(this._anchor,vt)),qe.appendChild(vt)):this._anchor&&this._anchor.parentNode.insertBefore(vt,this._anchor)}}]),ct}();return Ge.\u0275fac=function(Xe){return new(Xe||Ge)(f.Y36(f.SBq),f.Y36(V.qV),f.Y36(V.tE),f.Y36(d.t4),f.Y36(f.R0b),f.Y36(V.ic),f.Y36(h.K0,8),f.Y36(qt,8))},Ge.\u0275cmp=f.Xpm({type:Ge,selectors:[["mat-drawer"]],viewQuery:function(Xe,Te){var vt;1&Xe&&f.Gf(r,5),2&Xe&&f.iGM(vt=f.CRH())&&(Te._content=vt.first)},hostAttrs:["tabIndex","-1",1,"mat-drawer"],hostVars:12,hostBindings:function(Xe,Te){1&Xe&&f.WFA("@transform.start",function(qe){return Te._animationStarted.next(qe)})("@transform.done",function(qe){return Te._animationEnd.next(qe)}),2&Xe&&(f.uIk("align",null),f.d8E("@transform",Te._animationState),f.ekj("mat-drawer-end","end"===Te.position)("mat-drawer-over","over"===Te.mode)("mat-drawer-push","push"===Te.mode)("mat-drawer-side","side"===Te.mode)("mat-drawer-opened",Te.opened))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:R,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(Xe,Te){1&Xe&&(f.F$t(),f.TgZ(0,"div",0,1),f.Hsn(2),f.qZA())},directives:[s.PQ],encapsulation:2,data:{animation:[ge.transformDrawer]},changeDetection:0}),Ge}(),Qe=function(){var Ge=function(){function ct(Xe,Te,vt,qe,je){var Nt=this,Ft=arguments.length>5&&void 0!==arguments[5]&&arguments[5],bt=arguments.length>6?arguments[6]:void 0;(0,P.Z)(this,ct),this._dir=Xe,this._element=Te,this._ngZone=vt,this._changeDetectorRef=qe,this._animationMode=bt,this._drawers=new f.n_E,this.backdropClick=new f.vpe,this._destroyed=new v.x,this._doCheckSubject=new v.x,this._contentMargins={left:null,right:null},this._contentMarginChanges=new v.x,Xe&&Xe.change.pipe((0,N.R)(this._destroyed)).subscribe(function(){Nt._validateDrawers(),Nt.updateContentMargins()}),je.change().pipe((0,N.R)(this._destroyed)).subscribe(function(){return Nt.updateContentMargins()}),this._autosize=Ft}return(0,t.Z)(ct,[{key:"start",get:function(){return this._start}},{key:"end",get:function(){return this._end}},{key:"autosize",get:function(){return this._autosize},set:function(Te){this._autosize=(0,B.Ig)(Te)}},{key:"hasBackdrop",get:function(){return null==this._backdropOverride?!this._start||"side"!==this._start.mode||!this._end||"side"!==this._end.mode:this._backdropOverride},set:function(Te){this._backdropOverride=null==Te?null:(0,B.Ig)(Te)}},{key:"scrollable",get:function(){return this._userContent||this._content}},{key:"ngAfterContentInit",value:function(){var Te=this;this._allDrawers.changes.pipe((0,q.O)(this._allDrawers),(0,N.R)(this._destroyed)).subscribe(function(vt){Te._drawers.reset(vt.filter(function(qe){return!qe._container||qe._container===Te})),Te._drawers.notifyOnChanges()}),this._drawers.changes.pipe((0,q.O)(null)).subscribe(function(){Te._validateDrawers(),Te._drawers.forEach(function(vt){Te._watchDrawerToggle(vt),Te._watchDrawerPosition(vt),Te._watchDrawerMode(vt)}),(!Te._drawers.length||Te._isDrawerOpen(Te._start)||Te._isDrawerOpen(Te._end))&&Te.updateContentMargins(),Te._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(function(){Te._doCheckSubject.pipe((0,ce.b)(10),(0,N.R)(Te._destroyed)).subscribe(function(){return Te.updateContentMargins()})})}},{key:"ngOnDestroy",value:function(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}},{key:"open",value:function(){this._drawers.forEach(function(Te){return Te.open()})}},{key:"close",value:function(){this._drawers.forEach(function(Te){return Te.close()})}},{key:"updateContentMargins",value:function(){var Te=this,vt=0,qe=0;if(this._left&&this._left.opened)if("side"==this._left.mode)vt+=this._left._getWidth();else if("push"==this._left.mode){var je=this._left._getWidth();vt+=je,qe-=je}if(this._right&&this._right.opened)if("side"==this._right.mode)qe+=this._right._getWidth();else if("push"==this._right.mode){var Nt=this._right._getWidth();qe+=Nt,vt-=Nt}qe=qe||null,((vt=vt||null)!==this._contentMargins.left||qe!==this._contentMargins.right)&&(this._contentMargins={left:vt,right:qe},this._ngZone.run(function(){return Te._contentMarginChanges.next(Te._contentMargins)}))}},{key:"ngDoCheck",value:function(){var Te=this;this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(function(){return Te._doCheckSubject.next()})}},{key:"_watchDrawerToggle",value:function(Te){var vt=this;Te._animationStarted.pipe((0,J.h)(function(qe){return qe.fromState!==qe.toState}),(0,N.R)(this._drawers.changes)).subscribe(function(qe){"open-instant"!==qe.toState&&"NoopAnimations"!==vt._animationMode&&vt._element.nativeElement.classList.add("mat-drawer-transition"),vt.updateContentMargins(),vt._changeDetectorRef.markForCheck()}),"side"!==Te.mode&&Te.openedChange.pipe((0,N.R)(this._drawers.changes)).subscribe(function(){return vt._setContainerClass(Te.opened)})}},{key:"_watchDrawerPosition",value:function(Te){var vt=this;!Te||Te.onPositionChanged.pipe((0,N.R)(this._drawers.changes)).subscribe(function(){vt._ngZone.onMicrotaskEmpty.pipe((0,k.q)(1)).subscribe(function(){vt._validateDrawers()})})}},{key:"_watchDrawerMode",value:function(Te){var vt=this;Te&&Te._modeChanged.pipe((0,N.R)((0,Q.T)(this._drawers.changes,this._destroyed))).subscribe(function(){vt.updateContentMargins(),vt._changeDetectorRef.markForCheck()})}},{key:"_setContainerClass",value:function(Te){var vt=this._element.nativeElement.classList,qe="mat-drawer-container-has-open";Te?vt.add(qe):vt.remove(qe)}},{key:"_validateDrawers",value:function(){var Te=this;this._start=this._end=null,this._drawers.forEach(function(vt){"end"==vt.position?Te._end=vt:Te._start=vt}),this._right=this._left=null,this._dir&&"rtl"===this._dir.value?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}},{key:"_isPushed",value:function(){return this._isDrawerOpen(this._start)&&"over"!=this._start.mode||this._isDrawerOpen(this._end)&&"over"!=this._end.mode}},{key:"_onBackdropClicked",value:function(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}},{key:"_closeModalDrawersViaBackdrop",value:function(){var Te=this;[this._start,this._end].filter(function(vt){return vt&&!vt.disableClose&&Te._canHaveBackdrop(vt)}).forEach(function(vt){return vt._closeViaBackdropClick()})}},{key:"_isShowingBackdrop",value:function(){return this._isDrawerOpen(this._start)&&this._canHaveBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._canHaveBackdrop(this._end)}},{key:"_canHaveBackdrop",value:function(Te){return"side"!==Te.mode||!!this._backdropOverride}},{key:"_isDrawerOpen",value:function(Te){return null!=Te&&Te.opened}}]),ct}();return Ge.\u0275fac=function(Xe){return new(Xe||Ge)(f.Y36(ue.Is,8),f.Y36(f.SBq),f.Y36(f.R0b),f.Y36(f.sBO),f.Y36(s.rL),f.Y36(wt),f.Y36(H.Qb,8))},Ge.\u0275cmp=f.Xpm({type:Ge,selectors:[["mat-drawer-container"]],contentQueries:function(Xe,Te,vt){var qe;1&Xe&&(f.Suo(vt,Rt,5),f.Suo(vt,it,5)),2&Xe&&(f.iGM(qe=f.CRH())&&(Te._content=qe.first),f.iGM(qe=f.CRH())&&(Te._allDrawers=qe))},viewQuery:function(Xe,Te){var vt;1&Xe&&f.Gf(Rt,5),2&Xe&&f.iGM(vt=f.CRH())&&(Te._userContent=vt.first)},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(Xe,Te){2&Xe&&f.ekj("mat-drawer-container-explicit-backdrop",Te._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[f._Bn([{provide:qt,useExisting:Ge}])],ngContentSelectors:X,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(Xe,Te){1&Xe&&(f.F$t(se),f.YNc(0,z,1,2,"div",0),f.Hsn(1),f.Hsn(2,1),f.YNc(3,Y,2,0,"mat-drawer-content",1)),2&Xe&&(f.Q6J("ngIf",Te.hasBackdrop),f.xp6(3),f.Q6J("ngIf",!Te._content))},directives:[Rt,h.O5],styles:[".mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n"],encapsulation:2,changeDetection:0}),Ge}(),ot=function(){var Ge=function(ct){(0,e.Z)(Te,ct);var Xe=(0,p.Z)(Te);function Te(vt,qe,je,Nt,Ft){return(0,P.Z)(this,Te),Xe.call(this,vt,qe,je,Nt,Ft)}return(0,t.Z)(Te)}(Rt);return Ge.\u0275fac=function(Xe){return new(Xe||Ge)(f.Y36(f.sBO),f.Y36((0,f.Gpc)(function(){return xe})),f.Y36(f.SBq),f.Y36(s.mF),f.Y36(f.R0b))},Ge.\u0275cmp=f.Xpm({type:Ge,selectors:[["mat-sidenav-content"]],hostAttrs:[1,"mat-drawer-content","mat-sidenav-content"],hostVars:4,hostBindings:function(Xe,Te){2&Xe&&f.Udp("margin-left",Te._container._contentMargins.left,"px")("margin-right",Te._container._contentMargins.right,"px")},features:[f._Bn([{provide:s.PQ,useExisting:Ge}]),f.qOj],ngContentSelectors:R,decls:1,vars:0,template:function(Xe,Te){1&Xe&&(f.F$t(),f.Hsn(0))},encapsulation:2,changeDetection:0}),Ge}(),tt=function(){var Ge=function(ct){(0,e.Z)(Te,ct);var Xe=(0,p.Z)(Te);function Te(){var vt;return(0,P.Z)(this,Te),(vt=Xe.apply(this,arguments))._fixedInViewport=!1,vt._fixedTopGap=0,vt._fixedBottomGap=0,vt}return(0,t.Z)(Te,[{key:"fixedInViewport",get:function(){return this._fixedInViewport},set:function(qe){this._fixedInViewport=(0,B.Ig)(qe)}},{key:"fixedTopGap",get:function(){return this._fixedTopGap},set:function(qe){this._fixedTopGap=(0,B.su)(qe)}},{key:"fixedBottomGap",get:function(){return this._fixedBottomGap},set:function(qe){this._fixedBottomGap=(0,B.su)(qe)}}]),Te}(it);return Ge.\u0275fac=function(){var ct;return function(Te){return(ct||(ct=f.n5z(Ge)))(Te||Ge)}}(),Ge.\u0275cmp=f.Xpm({type:Ge,selectors:[["mat-sidenav"]],hostAttrs:["tabIndex","-1",1,"mat-drawer","mat-sidenav"],hostVars:17,hostBindings:function(Xe,Te){2&Xe&&(f.uIk("align",null),f.Udp("top",Te.fixedInViewport?Te.fixedTopGap:null,"px")("bottom",Te.fixedInViewport?Te.fixedBottomGap:null,"px"),f.ekj("mat-drawer-end","end"===Te.position)("mat-drawer-over","over"===Te.mode)("mat-drawer-push","push"===Te.mode)("mat-drawer-side","side"===Te.mode)("mat-drawer-opened",Te.opened)("mat-sidenav-fixed",Te.fixedInViewport))},inputs:{fixedInViewport:"fixedInViewport",fixedTopGap:"fixedTopGap",fixedBottomGap:"fixedBottomGap"},exportAs:["matSidenav"],features:[f.qOj],ngContentSelectors:R,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(Xe,Te){1&Xe&&(f.F$t(),f.TgZ(0,"div",0,1),f.Hsn(2),f.qZA())},directives:[s.PQ],encapsulation:2,data:{animation:[ge.transformDrawer]},changeDetection:0}),Ge}(),xe=function(){var Ge=function(ct){(0,e.Z)(Te,ct);var Xe=(0,p.Z)(Te);function Te(){return(0,P.Z)(this,Te),Xe.apply(this,arguments)}return(0,t.Z)(Te)}(Qe);return Ge.\u0275fac=function(){var ct;return function(Te){return(ct||(ct=f.n5z(Ge)))(Te||Ge)}}(),Ge.\u0275cmp=f.Xpm({type:Ge,selectors:[["mat-sidenav-container"]],contentQueries:function(Xe,Te,vt){var qe;1&Xe&&(f.Suo(vt,ot,5),f.Suo(vt,tt,5)),2&Xe&&(f.iGM(qe=f.CRH())&&(Te._content=qe.first),f.iGM(qe=f.CRH())&&(Te._allDrawers=qe))},hostAttrs:[1,"mat-drawer-container","mat-sidenav-container"],hostVars:2,hostBindings:function(Xe,Te){2&Xe&&f.ekj("mat-drawer-container-explicit-backdrop",Te._backdropOverride)},exportAs:["matSidenavContainer"],features:[f._Bn([{provide:qt,useExisting:Ge}]),f.qOj],ngContentSelectors:Ie,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(Xe,Te){1&Xe&&(f.F$t(Re),f.YNc(0,ne,1,2,"div",0),f.Hsn(1),f.Hsn(2,1),f.YNc(3,ve,2,0,"mat-sidenav-content",1)),2&Xe&&(f.Q6J("ngIf",Te.hasBackdrop),f.xp6(3),f.Q6J("ngIf",!Te._content))},directives:[ot,h.O5],styles:[".mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n"],encapsulation:2,changeDetection:0}),Ge}(),$e=function(){var Ge=(0,t.Z)(function ct(){(0,P.Z)(this,ct)});return Ge.\u0275fac=function(Xe){return new(Xe||Ge)},Ge.\u0275mod=f.oAB({type:Ge}),Ge.\u0275inj=f.cJS({imports:[[h.ez,T.BQ,d.ud,s.ZD],s.ZD,T.BQ]}),Ge}()},61859:function(dt,K,n){"use strict";n.d(K,{pH:function(){return V},KP:function(){return se}});var P=n(24582),t=n(7318),e=n(48047),p=n(78069),d=n(36362),s=n(76442),h=n(1130),f=n(76484),T=n(75939),B=n(90587),I=n(57481),v=n(14390),j=n(17714),Q=n(84128),J=n(51588),Z=["sliderWrapper"],A=(0,v.i$)({passive:!1}),ce={provide:B.JU,useExisting:(0,s.Gpc)(function(){return V}),multi:!0},ie=(0,e.Z)(function X(){(0,p.Z)(this,X)}),H=(0,h.sb)((0,h.pj)((0,h.Id)(function(){return(0,e.Z)(function X(ne){(0,p.Z)(this,X),this._elementRef=ne})}()),"accent")),V=function(){var X=function(ne){(0,P.Z)(Re,ne);var ve=(0,t.Z)(Re);function Re(Ie,Ee,ge,_t,wt,qt,Lt,Rt){var it;return(0,p.Z)(this,Re),(it=ve.call(this,Ie))._focusMonitor=Ee,it._changeDetectorRef=ge,it._dir=_t,it._ngZone=qt,it._animationMode=Rt,it._invert=!1,it._max=100,it._min=0,it._step=1,it._thumbLabel=!1,it._tickInterval=0,it._value=null,it._vertical=!1,it.change=new s.vpe,it.input=new s.vpe,it.valueChange=new s.vpe,it.onTouched=function(){},it._percent=0,it._isSliding=null,it._isActive=!1,it._tickIntervalPercent=0,it._sliderDimensions=null,it._controlValueAccessorChangeFn=function(){},it._dirChangeSubscription=j.w0.EMPTY,it._pointerDown=function(Qe){it.disabled||it._isSliding||!R(Qe)&&0!==Qe.button||it._ngZone.run(function(){it._touchId=R(Qe)?function Y(X,ne){for(var ve=0;ve0&&void 0!==arguments[0]?arguments[0]:this.value,ge=new ie;return ge.source=this,ge.value=Ee,ge}},{key:"_calculatePercentage",value:function(Ee){var ge=((Ee||0)-this.min)/(this.max-this.min);return ue(ge)?ge:0}},{key:"_calculateValue",value:function(Ee){return this.min+Ee*(this.max-this.min)}},{key:"_clamp",value:function(Ee){var ge=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,_t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.max(ge,Math.min(Ee,_t))}},{key:"_getSliderDimensions",value:function(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}},{key:"_focusHostElement",value:function(Ee){this._elementRef.nativeElement.focus(Ee)}},{key:"_blurHostElement",value:function(){this._elementRef.nativeElement.blur()}},{key:"writeValue",value:function(Ee){this.value=Ee}},{key:"registerOnChange",value:function(Ee){this._controlValueAccessorChangeFn=Ee}},{key:"registerOnTouched",value:function(Ee){this.onTouched=Ee}},{key:"setDisabledState",value:function(Ee){this.disabled=Ee}}]),Re}(H);return X.\u0275fac=function(ve){return new(ve||X)(s.Y36(s.SBq),s.Y36(Q.tE),s.Y36(s.sBO),s.Y36(J.Is,8),s.$8M("tabindex"),s.Y36(s.R0b),s.Y36(d.K0),s.Y36(I.Qb,8))},X.\u0275cmp=s.Xpm({type:X,selectors:[["mat-slider"]],viewQuery:function(ve,Re){var Ie;1&ve&&s.Gf(Z,5),2&ve&&s.iGM(Ie=s.CRH())&&(Re._sliderWrapper=Ie.first)},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(ve,Re){1&ve&&s.NdJ("focus",function(){return Re._onFocus()})("blur",function(){return Re._onBlur()})("keydown",function(Ee){return Re._onKeydown(Ee)})("keyup",function(){return Re._onKeyup()})("mouseenter",function(){return Re._onMouseenter()})("selectstart",function(Ee){return Ee.preventDefault()}),2&ve&&(s.Ikx("tabIndex",Re.tabIndex),s.uIk("aria-disabled",Re.disabled)("aria-valuemax",Re.max)("aria-valuemin",Re.min)("aria-valuenow",Re.value)("aria-valuetext",null==Re.valueText?Re.displayValue:Re.valueText)("aria-orientation",Re.vertical?"vertical":"horizontal"),s.ekj("mat-slider-disabled",Re.disabled)("mat-slider-has-ticks",Re.tickInterval)("mat-slider-horizontal",!Re.vertical)("mat-slider-axis-inverted",Re._shouldInvertAxis())("mat-slider-invert-mouse-coords",Re._shouldInvertMouseCoords())("mat-slider-sliding",Re._isSliding)("mat-slider-thumb-label-showing",Re.thumbLabel)("mat-slider-vertical",Re.vertical)("mat-slider-min-value",Re._isMinValue())("mat-slider-hide-last-tick",Re.disabled||Re._isMinValue()&&Re._getThumbGap()&&Re._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===Re._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",displayWith:"displayWith",valueText:"valueText",vertical:"vertical"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[s._Bn([ce]),s.qOj],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(ve,Re){1&ve&&(s.TgZ(0,"div",0,1),s.TgZ(2,"div",2),s._UZ(3,"div",3),s._UZ(4,"div",4),s.qZA(),s.TgZ(5,"div",5),s._UZ(6,"div",6),s.qZA(),s.TgZ(7,"div",7),s._UZ(8,"div",8),s._UZ(9,"div",9),s.TgZ(10,"div",10),s.TgZ(11,"span",11),s._uU(12),s.qZA(),s.qZA(),s.qZA(),s.qZA()),2&ve&&(s.xp6(3),s.Q6J("ngStyle",Re._getTrackBackgroundStyles()),s.xp6(1),s.Q6J("ngStyle",Re._getTrackFillStyles()),s.xp6(1),s.Q6J("ngStyle",Re._getTicksContainerStyles()),s.xp6(1),s.Q6J("ngStyle",Re._getTicksStyles()),s.xp6(1),s.Q6J("ngStyle",Re._getThumbContainerStyles()),s.xp6(5),s.Oqu(Re.displayValue))},directives:[d.PC],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),X}();function ue(X){return!isNaN(X)&&isFinite(X)}function R(X){return"t"===X.type[0]}function r(X,ne){var ve;return(ve=R(X)?"number"==typeof ne?z(X.touches,ne)||z(X.changedTouches,ne):X.touches[0]||X.changedTouches[0]:X)?{x:ve.clientX,y:ve.clientY}:void 0}function z(X,ne){for(var ve=0;ve active-desc",(0,I.jt)(A))]),leftPointer:(0,I.X$)("leftPointer",[(0,I.SB)("active-asc, asc",(0,I.oB)({transform:"rotate(-45deg)"})),(0,I.SB)("active-desc, desc",(0,I.oB)({transform:"rotate(45deg)"})),(0,I.eR)("active-asc <=> active-desc",(0,I.jt)(A))]),rightPointer:(0,I.X$)("rightPointer",[(0,I.SB)("active-asc, asc",(0,I.oB)({transform:"rotate(45deg)"})),(0,I.SB)("active-desc, desc",(0,I.oB)({transform:"rotate(-45deg)"})),(0,I.eR)("active-asc <=> active-desc",(0,I.jt)(A))]),arrowOpacity:(0,I.X$)("arrowOpacity",[(0,I.SB)("desc-to-active, asc-to-active, active",(0,I.oB)({opacity:1})),(0,I.SB)("desc-to-hint, asc-to-hint, hint",(0,I.oB)({opacity:.54})),(0,I.SB)("hint-to-desc, active-to-desc, desc, hint-to-asc, active-to-asc, asc, void",(0,I.oB)({opacity:0})),(0,I.eR)("* => asc, * => desc, * => active, * => hint, * => void",(0,I.jt)("0ms")),(0,I.eR)("* <=> *",(0,I.jt)(A))]),arrowPosition:(0,I.X$)("arrowPosition",[(0,I.eR)("* => desc-to-hint, * => desc-to-active",(0,I.jt)(A,(0,I.F4)([(0,I.oB)({transform:"translateY(-25%)"}),(0,I.oB)({transform:"translateY(0)"})]))),(0,I.eR)("* => hint-to-desc, * => active-to-desc",(0,I.jt)(A,(0,I.F4)([(0,I.oB)({transform:"translateY(0)"}),(0,I.oB)({transform:"translateY(25%)"})]))),(0,I.eR)("* => asc-to-hint, * => asc-to-active",(0,I.jt)(A,(0,I.F4)([(0,I.oB)({transform:"translateY(25%)"}),(0,I.oB)({transform:"translateY(0)"})]))),(0,I.eR)("* => hint-to-asc, * => active-to-asc",(0,I.jt)(A,(0,I.F4)([(0,I.oB)({transform:"translateY(0)"}),(0,I.oB)({transform:"translateY(-25%)"})]))),(0,I.SB)("desc-to-hint, asc-to-hint, hint, desc-to-active, asc-to-active, active",(0,I.oB)({transform:"translateY(0)"})),(0,I.SB)("hint-to-desc, active-to-desc, desc",(0,I.oB)({transform:"translateY(-25%)"})),(0,I.SB)("hint-to-asc, active-to-asc, asc",(0,I.oB)({transform:"translateY(25%)"}))]),allowChildren:(0,I.X$)("allowChildren",[(0,I.eR)("* <=> *",[(0,I.IO)("@*",(0,I.pV)(),{optional:!0})])])},ie=function(){var ne=(0,e.Z)(function ve(){(0,p.Z)(this,ve),this.changes=new T.x});return ne.\u0275fac=function(Re){return new(Re||ne)},ne.\u0275prov=d.Yz7({token:ne,factory:ne.\u0275fac,providedIn:"root"}),ne}(),V={provide:ie,deps:[[new d.FiY,new d.tp0,ie]],useFactory:function H(ne){return ne||new ie}},ue=new d.OlP("MAT_SORT_DEFAULT_OPTIONS"),R=(0,f.dB)((0,f.Id)(function(){return(0,e.Z)(function ne(){(0,p.Z)(this,ne)})}())),r=function(){var ne=function(ve){(0,P.Z)(Ie,ve);var Re=(0,t.Z)(Ie);function Ie(Ee){var ge;return(0,p.Z)(this,Ie),(ge=Re.call(this))._defaultOptions=Ee,ge.sortables=new Map,ge._stateChanges=new T.x,ge.start="asc",ge._direction="",ge.sortChange=new d.vpe,ge}return(0,e.Z)(Ie,[{key:"direction",get:function(){return this._direction},set:function(ge){this._direction=ge}},{key:"disableClear",get:function(){return this._disableClear},set:function(ge){this._disableClear=(0,s.Ig)(ge)}},{key:"register",value:function(ge){this.sortables.set(ge.id,ge)}},{key:"deregister",value:function(ge){this.sortables.delete(ge.id)}},{key:"sort",value:function(ge){this.active!=ge.id?(this.active=ge.id,this.direction=ge.start?ge.start:this.start):this.direction=this.getNextSortDirection(ge),this.sortChange.emit({active:this.active,direction:this.direction})}},{key:"getNextSortDirection",value:function(ge){var _t,wt,qt;if(!ge)return"";var Lt=null!==(wt=null!==(_t=null==ge?void 0:ge.disableClear)&&void 0!==_t?_t:this.disableClear)&&void 0!==wt?wt:!!(null===(qt=this._defaultOptions)||void 0===qt?void 0:qt.disableClear),Rt=function z(ne,ve){var Re=["asc","desc"];return"desc"==ne&&Re.reverse(),ve||Re.push(""),Re}(ge.start||this.start,Lt),it=Rt.indexOf(this.direction)+1;return it>=Rt.length&&(it=0),Rt[it]}},{key:"ngOnInit",value:function(){this._markInitialized()}},{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),Ie}(R);return ne.\u0275fac=function(Re){return new(Re||ne)(d.Y36(ue,8))},ne.\u0275dir=d.lG2({type:ne,selectors:[["","matSort",""]],hostAttrs:[1,"mat-sort"],inputs:{disabled:["matSortDisabled","disabled"],active:["matSortActive","active"],start:["matSortStart","start"],direction:["matSortDirection","direction"],disableClear:["matSortDisableClear","disableClear"]},outputs:{sortChange:"matSortChange"},exportAs:["matSort"],features:[d.qOj,d.TTD]}),ne}(),Y=(0,f.Id)(function(){return(0,e.Z)(function ne(){(0,p.Z)(this,ne)})}()),se=function(){var ne=function(ve){(0,P.Z)(Ie,ve);var Re=(0,t.Z)(Ie);function Ie(Ee,ge,_t,wt,qt,Lt,Rt){var it;return(0,p.Z)(this,Ie),(it=Re.call(this))._intl=Ee,it._changeDetectorRef=ge,it._sort=_t,it._columnDef=wt,it._focusMonitor=qt,it._elementRef=Lt,it._ariaDescriber=Rt,it._showIndicatorHint=!1,it._viewState={},it._arrowDirection="",it._disableViewStateAnimation=!1,it.arrowPosition="after",it._sortActionDescription="Sort",it._handleStateChanges(),it}return(0,e.Z)(Ie,[{key:"sortActionDescription",get:function(){return this._sortActionDescription},set:function(ge){this._updateSortActionDescription(ge)}},{key:"disableClear",get:function(){return this._disableClear},set:function(ge){this._disableClear=(0,s.Ig)(ge)}},{key:"ngOnInit",value:function(){!this.id&&this._columnDef&&(this.id=this._columnDef.name),this._updateArrowDirection(),this._setAnimationTransitionState({toState:this._isSorted()?"active":this._arrowDirection}),this._sort.register(this),this._sortButton=this._elementRef.nativeElement.querySelector('[role="button"]'),this._updateSortActionDescription(this._sortActionDescription)}},{key:"ngAfterViewInit",value:function(){var ge=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(_t){var wt=!!_t;wt!==ge._showIndicatorHint&&(ge._setIndicatorHintVisible(wt),ge._changeDetectorRef.markForCheck())})}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef),this._sort.deregister(this),this._rerenderSubscription.unsubscribe()}},{key:"_setIndicatorHintVisible",value:function(ge){this._isDisabled()&&ge||(this._showIndicatorHint=ge,this._isSorted()||(this._updateArrowDirection(),this._setAnimationTransitionState(this._showIndicatorHint?{fromState:this._arrowDirection,toState:"hint"}:{fromState:"hint",toState:this._arrowDirection})))}},{key:"_setAnimationTransitionState",value:function(ge){this._viewState=ge||{},this._disableViewStateAnimation&&(this._viewState={toState:ge.toState})}},{key:"_toggleOnInteraction",value:function(){this._sort.sort(this),("hint"===this._viewState.toState||"active"===this._viewState.toState)&&(this._disableViewStateAnimation=!0)}},{key:"_handleClick",value:function(){this._isDisabled()||this._sort.sort(this)}},{key:"_handleKeydown",value:function(ge){!this._isDisabled()&&(ge.keyCode===h.L_||ge.keyCode===h.K5)&&(ge.preventDefault(),this._toggleOnInteraction())}},{key:"_isSorted",value:function(){return this._sort.active==this.id&&("asc"===this._sort.direction||"desc"===this._sort.direction)}},{key:"_getArrowDirectionState",value:function(){return"".concat(this._isSorted()?"active-":"").concat(this._arrowDirection)}},{key:"_getArrowViewState",value:function(){var ge=this._viewState.fromState;return(ge?"".concat(ge,"-to-"):"")+this._viewState.toState}},{key:"_updateArrowDirection",value:function(){this._arrowDirection=this._isSorted()?this._sort.direction:this.start||this._sort.start}},{key:"_isDisabled",value:function(){return this._sort.disabled||this.disabled}},{key:"_getAriaSortAttribute",value:function(){return this._isSorted()?"asc"==this._sort.direction?"ascending":"descending":"none"}},{key:"_renderArrow",value:function(){return!this._isDisabled()||this._isSorted()}},{key:"_updateSortActionDescription",value:function(ge){var _t,wt;this._sortButton&&(null===(_t=this._ariaDescriber)||void 0===_t||_t.removeDescription(this._sortButton,this._sortActionDescription),null===(wt=this._ariaDescriber)||void 0===wt||wt.describe(this._sortButton,ge)),this._sortActionDescription=ge}},{key:"_handleStateChanges",value:function(){var ge=this;this._rerenderSubscription=(0,B.T)(this._sort.sortChange,this._sort._stateChanges,this._intl.changes).subscribe(function(){ge._isSorted()&&(ge._updateArrowDirection(),("hint"===ge._viewState.toState||"active"===ge._viewState.toState)&&(ge._disableViewStateAnimation=!0),ge._setAnimationTransitionState({fromState:ge._arrowDirection,toState:"active"}),ge._showIndicatorHint=!1),!ge._isSorted()&&ge._viewState&&"active"===ge._viewState.toState&&(ge._disableViewStateAnimation=!1,ge._setAnimationTransitionState({fromState:"active",toState:ge._arrowDirection})),ge._changeDetectorRef.markForCheck()})}}]),Ie}(Y);return ne.\u0275fac=function(Re){return new(Re||ne)(d.Y36(ie),d.Y36(d.sBO),d.Y36(r,8),d.Y36("MAT_SORT_HEADER_COLUMN_DEF",8),d.Y36(v.tE),d.Y36(d.SBq),d.Y36(v.$s,8))},ne.\u0275cmp=d.Xpm({type:ne,selectors:[["","mat-sort-header",""]],hostAttrs:[1,"mat-sort-header"],hostVars:3,hostBindings:function(Re,Ie){1&Re&&d.NdJ("click",function(){return Ie._handleClick()})("keydown",function(ge){return Ie._handleKeydown(ge)})("mouseenter",function(){return Ie._setIndicatorHintVisible(!0)})("mouseleave",function(){return Ie._setIndicatorHintVisible(!1)}),2&Re&&(d.uIk("aria-sort",Ie._getAriaSortAttribute()),d.ekj("mat-sort-header-disabled",Ie._isDisabled()))},inputs:{disabled:"disabled",id:["mat-sort-header","id"],arrowPosition:"arrowPosition",start:"start",sortActionDescription:"sortActionDescription",disableClear:"disableClear"},exportAs:["matSortHeader"],features:[d.qOj],attrs:Q,ngContentSelectors:Z,decls:4,vars:6,consts:[["role","button",1,"mat-sort-header-container","mat-focus-indicator"],[1,"mat-sort-header-content"],["class","mat-sort-header-arrow",4,"ngIf"],[1,"mat-sort-header-arrow"],[1,"mat-sort-header-stem"],[1,"mat-sort-header-indicator"],[1,"mat-sort-header-pointer-left"],[1,"mat-sort-header-pointer-right"],[1,"mat-sort-header-pointer-middle"]],template:function(Re,Ie){1&Re&&(d.F$t(),d.TgZ(0,"div",0),d.TgZ(1,"div",1),d.Hsn(2),d.qZA(),d.YNc(3,J,6,6,"div",2),d.qZA()),2&Re&&(d.ekj("mat-sort-header-sorted",Ie._isSorted())("mat-sort-header-position-before","before"==Ie.arrowPosition),d.uIk("tabindex",Ie._isDisabled()?null:0),d.xp6(3),d.Q6J("ngIf",Ie._renderArrow()))},directives:[j.O5],styles:[".mat-sort-header-container{display:flex;cursor:pointer;align-items:center;letter-spacing:normal;outline:0}[mat-sort-header].cdk-keyboard-focused .mat-sort-header-container,[mat-sort-header].cdk-program-focused .mat-sort-header-container{border-bottom:solid 1px currentColor}.mat-sort-header-disabled .mat-sort-header-container{cursor:default}.mat-sort-header-content{text-align:center;display:flex;align-items:center}.mat-sort-header-position-before{flex-direction:row-reverse}.mat-sort-header-arrow{height:12px;width:12px;min-width:12px;position:relative;display:flex;opacity:0}.mat-sort-header-arrow,[dir=rtl] .mat-sort-header-position-before .mat-sort-header-arrow{margin:0 0 0 6px}.mat-sort-header-position-before .mat-sort-header-arrow,[dir=rtl] .mat-sort-header-arrow{margin:0 6px 0 0}.mat-sort-header-stem{background:currentColor;height:10px;width:2px;margin:auto;display:flex;align-items:center}.cdk-high-contrast-active .mat-sort-header-stem{width:0;border-left:solid 2px}.mat-sort-header-indicator{width:100%;height:2px;display:flex;align-items:center;position:absolute;top:0;left:0}.mat-sort-header-pointer-middle{margin:auto;height:2px;width:2px;background:currentColor;transform:rotate(45deg)}.cdk-high-contrast-active .mat-sort-header-pointer-middle{width:0;height:0;border-top:solid 2px;border-left:solid 2px}.mat-sort-header-pointer-left,.mat-sort-header-pointer-right{background:currentColor;width:6px;height:2px;position:absolute;top:0}.cdk-high-contrast-active .mat-sort-header-pointer-left,.cdk-high-contrast-active .mat-sort-header-pointer-right{width:0;height:0;border-left:solid 6px;border-top:solid 2px}.mat-sort-header-pointer-left{transform-origin:right;left:0}.mat-sort-header-pointer-right{transform-origin:left;right:0}\n"],encapsulation:2,data:{animation:[N.indicator,N.leftPointer,N.rightPointer,N.arrowOpacity,N.arrowPosition,N.allowChildren]},changeDetection:0}),ne}(),X=function(){var ne=(0,e.Z)(function ve(){(0,p.Z)(this,ve)});return ne.\u0275fac=function(Re){return new(Re||ne)},ne.\u0275mod=d.oAB({type:ne}),ne.\u0275inj=d.cJS({providers:[V],imports:[[j.ez,f.BQ]]}),ne}()},97217:function(dt,K,n){"use strict";n.d(K,{ev:function(){return se},Dz:function(){return V},w1:function(){return r},ge:function(){return z},fO:function(){return ue},XQ:function(){return Re},as:function(){return X},Gk:function(){return Ee},nj:function(){return ve},BZ:function(){return H},by:function(){return it},p0:function(){return qt}});var P=n(32090),t=n(4089),e=n(20265),p=n(24582),d=n(7318),s=n(48047),h=n(78069),f=n(76442),T=n(33865),B=n(89502),I=n(1130),v=n(76484),j=n(76317),Q=n(50253),J=n(36646),Z=n(10745),A=n(26562),N=n(50635),E=[[["caption"]],[["colgroup"],["col"]]],k=["caption","colgroup, col"],H=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){var $e;return(0,h.Z)(this,xe),($e=tt.apply(this,arguments)).stickyCssClass="mat-table-sticky",$e.needsPositionStickyOnElement=!1,$e}return(0,s.Z)(xe)}(T.zC);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275cmp=f.Xpm({type:Qe,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-table"],hostVars:2,hostBindings:function(tt,xe){2&tt&&f.ekj("mat-table-fixed-layout",xe.fixedLayout)},exportAs:["matTable"],features:[f._Bn([{provide:B.k,useClass:B.yy},{provide:T.zC,useExisting:Qe},{provide:T.pN,useExisting:Qe},{provide:T.nl,useClass:T.oF},{provide:T.pF,useValue:null}]),f.qOj],ngContentSelectors:k,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(tt,xe){1&tt&&(f.F$t(E),f.Hsn(0),f.Hsn(1,1),f.GkF(2,0),f.GkF(3,1),f.GkF(4,2),f.GkF(5,3))},directives:[T.FT,T.T$,T.bH,T.$E],styles:["mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}table.mat-table{border-spacing:0}tr.mat-header-row{height:56px}tr.mat-row,tr.mat-footer-row{height:48px}th.mat-header-cell{text-align:left}[dir=rtl] th.mat-header-cell{text-align:right}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0;border-bottom-width:1px;border-bottom-style:solid}th.mat-header-cell:first-of-type,td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] th.mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}th.mat-header-cell:last-of-type,td.mat-cell:last-of-type,td.mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] th.mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}.mat-table-sticky{position:-webkit-sticky !important;position:sticky !important}.mat-table-fixed-layout{table-layout:fixed}\n"],encapsulation:2}),Qe}(),V=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T.O_);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275dir=f.lG2({type:Qe,selectors:[["","matCellDef",""]],features:[f._Bn([{provide:T.O_,useExisting:Qe}]),f.qOj]}),Qe}(),ue=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T.D5);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275dir=f.lG2({type:Qe,selectors:[["","matHeaderCellDef",""]],features:[f._Bn([{provide:T.D5,useExisting:Qe}]),f.qOj]}),Qe}(),r=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe,[{key:"name",get:function(){return this._name},set:function(Ge){this._setNameInput(Ge)}},{key:"_updateColumnCssClassName",value:function(){(0,t.Z)((0,e.Z)(xe.prototype),"_updateColumnCssClassName",this).call(this),this._columnCssClassName.push("mat-column-".concat(this.cssClassFriendlyName))}}]),xe}(T.fo);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275dir=f.lG2({type:Qe,selectors:[["","matColumnDef",""]],inputs:{sticky:"sticky",name:["matColumnDef","name"]},features:[f._Bn([{provide:T.fo,useExisting:Qe},{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:Qe}]),f.qOj]}),Qe}(),z=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T.Af);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275dir=f.lG2({type:Qe,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-header-cell"],features:[f.qOj]}),Qe}(),se=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T.hD);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275dir=f.lG2({type:Qe,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:["role","gridcell",1,"mat-cell"],features:[f.qOj]}),Qe}(),X=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T.s$);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275dir=f.lG2({type:Qe,selectors:[["","matHeaderRowDef",""]],inputs:{columns:["matHeaderRowDef","columns"],sticky:["matHeaderRowDefSticky","sticky"]},features:[f._Bn([{provide:T.s$,useExisting:Qe}]),f.qOj]}),Qe}(),ve=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T.Sq);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275dir=f.lG2({type:Qe,selectors:[["","matRowDef",""]],inputs:{columns:["matRowDefColumns","columns"],when:["matRowDefWhen","when"]},features:[f._Bn([{provide:T.Sq,useExisting:Qe}]),f.qOj]}),Qe}(),Re=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T.xN);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275cmp=f.Xpm({type:Qe,selectors:[["mat-header-row"],["tr","mat-header-row",""]],hostAttrs:["role","row",1,"mat-header-row"],exportAs:["matHeaderRow"],features:[f._Bn([{provide:T.xN,useExisting:Qe}]),f.qOj],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(tt,xe){1&tt&&f.GkF(0,0)},directives:[T.Kb],encapsulation:2}),Qe}(),Ee=function(){var Qe=function(ot){(0,p.Z)(xe,ot);var tt=(0,d.Z)(xe);function xe(){return(0,h.Z)(this,xe),tt.apply(this,arguments)}return(0,s.Z)(xe)}(T._J);return Qe.\u0275fac=function(){var ot;return function(xe){return(ot||(ot=f.n5z(Qe)))(xe||Qe)}}(),Qe.\u0275cmp=f.Xpm({type:Qe,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-row"],exportAs:["matRow"],features:[f._Bn([{provide:T._J,useExisting:Qe}]),f.qOj],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(tt,xe){1&tt&&f.GkF(0,0)},directives:[T.Kb],encapsulation:2}),Qe}(),qt=function(){var Qe=(0,s.Z)(function ot(){(0,h.Z)(this,ot)});return Qe.\u0275fac=function(tt){return new(tt||Qe)},Qe.\u0275mod=f.oAB({type:Qe}),Qe.\u0275inj=f.cJS({imports:[[T.HT,I.BQ],I.BQ]}),Qe}(),Lt=9007199254740991,Rt=function(Qe){(0,p.Z)(tt,Qe);var ot=(0,d.Z)(tt);function tt(){var xe,$e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(0,h.Z)(this,tt),(xe=ot.call(this))._renderData=new j.X([]),xe._filter=new j.X(""),xe._internalPageChanges=new Q.x,xe._renderChangesSubscription=null,xe.sortingDataAccessor=function(Ge,ct){var Xe=Ge[ct];if((0,v.t6)(Xe)){var Te=Number(Xe);return TeNt?St=1:je0)){var Xe=Math.ceil(ct.length/ct.pageSize)-1||0,Te=Math.min(ct.pageIndex,Xe);Te!==ct.pageIndex&&(ct.pageIndex=Te,Ge._internalPageChanges.next())}})}},{key:"connect",value:function(){return this._renderChangesSubscription||this._updateChangeSubscription(),this._renderData}},{key:"disconnect",value:function(){var $e;null===($e=this._renderChangesSubscription)||void 0===$e||$e.unsubscribe(),this._renderChangesSubscription=null}}]),tt}(B.o2),it=function(Qe){(0,p.Z)(tt,Qe);var ot=(0,d.Z)(tt);function tt(){return(0,h.Z)(this,tt),ot.apply(this,arguments)}return(0,s.Z)(tt)}(Rt)},12379:function(dt,K,n){"use strict";n.d(K,{uX:function(){return Ft},Vc:function(){return Xe},SP:function(){return Un},uD:function(){return qe},Nh:function(){return De}});var P=n(86170),t=n(4089),e=n(20265),p=n(24582),d=n(7318),s=n(78069),h=n(48047),f=n(84128),T=n(35837),B=n(24476),I=n(36362),v=n(76442),j=n(1130),Q=n(57481),J=n(50253),Z=n(17714),A=n(23280),N=n(10745),E=n(36646),k=n(85524),q=n(31631),ce=n(44874),ie=n(98977),H=n(68951),V=n(51588),ue=n(76484),R=n(75939),r=n(14390),z=n(24426);function Y(Ze,Je){1&Ze&&v.Hsn(0)}var se=["*"];function X(Ze,Je){}var ne=function(Je){return{animationDuration:Je}},ve=function(Je,Ve){return{value:Je,params:Ve}},Re=["tabListContainer"],Ie=["tabList"],Ee=["tabListInner"],ge=["nextPaginator"],_t=["previousPaginator"],wt=["tabBodyWrapper"],qt=["tabHeader"];function Lt(Ze,Je){}function Rt(Ze,Je){if(1&Ze&&v.YNc(0,Lt,0,0,"ng-template",10),2&Ze){var Ve=v.oxw().$implicit;v.Q6J("cdkPortalOutlet",Ve.templateLabel)}}function it(Ze,Je){if(1&Ze&&v._uU(0),2&Ze){var Ve=v.oxw().$implicit;v.Oqu(Ve.textLabel)}}function Qe(Ze,Je){if(1&Ze){var Ve=v.EpF();v.TgZ(0,"div",6),v.NdJ("click",function(){var un=v.CHM(Ve),tn=un.$implicit,ln=un.index,gn=v.oxw(),An=v.MAs(1);return gn._handleClick(tn,An,ln)})("cdkFocusChange",function(un){var ln=v.CHM(Ve).index;return v.oxw()._tabFocusChanged(un,ln)}),v.TgZ(1,"div",7),v.YNc(2,Rt,1,1,"ng-template",8),v.YNc(3,it,1,1,"ng-template",null,9,v.W1O),v.qZA(),v.qZA()}if(2&Ze){var pt=Je.$implicit,kt=Je.index,en=v.MAs(4),Zn=v.oxw();v.ekj("mat-tab-label-active",Zn.selectedIndex===kt),v.Q6J("id",Zn._getTabLabelId(kt))("ngClass",pt.labelClass)("disabled",pt.disabled)("matRippleDisabled",pt.disabled||Zn.disableRipple),v.uIk("tabIndex",Zn._getTabIndex(pt,kt))("aria-posinset",kt+1)("aria-setsize",Zn._tabs.length)("aria-controls",Zn._getTabContentId(kt))("aria-selected",Zn.selectedIndex===kt)("aria-label",pt.ariaLabel||null)("aria-labelledby",!pt.ariaLabel&&pt.ariaLabelledby?pt.ariaLabelledby:null),v.xp6(2),v.Q6J("ngIf",pt.templateLabel)("ngIfElse",en)}}function ot(Ze,Je){if(1&Ze){var Ve=v.EpF();v.TgZ(0,"mat-tab-body",11),v.NdJ("_onCentered",function(){return v.CHM(Ve),v.oxw()._removeTabBodyWrapperHeight()})("_onCentering",function(zt){return v.CHM(Ve),v.oxw()._setTabBodyWrapperHeight(zt)}),v.qZA()}if(2&Ze){var pt=Je.$implicit,kt=Je.index,en=v.oxw();v.ekj("mat-tab-body-active",en.selectedIndex===kt),v.Q6J("id",en._getTabContentId(kt))("ngClass",pt.bodyClass)("content",pt.content)("position",pt.position)("origin",pt.origin)("animationDuration",en.animationDuration),v.uIk("tabindex",null!=en.contentTabIndex&&en.selectedIndex===kt?en.contentTabIndex:null)("aria-labelledby",en._getTabLabelId(kt))}}var xe=new v.OlP("MatInkBarPositioner",{providedIn:"root",factory:function $e(){return function(Ve){return{left:Ve?(Ve.offsetLeft||0)+"px":"0",width:Ve?(Ve.offsetWidth||0)+"px":"0"}}}}),Ge=function(){var Ze=function(){function Je(Ve,pt,kt,en){(0,s.Z)(this,Je),this._elementRef=Ve,this._ngZone=pt,this._inkBarPositioner=kt,this._animationMode=en}return(0,h.Z)(Je,[{key:"alignToElement",value:function(pt){var kt=this;this.show(),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return kt._setStyles(pt)})}):this._setStyles(pt)}},{key:"show",value:function(){this._elementRef.nativeElement.style.visibility="visible"}},{key:"hide",value:function(){this._elementRef.nativeElement.style.visibility="hidden"}},{key:"_setStyles",value:function(pt){var kt=this._inkBarPositioner(pt),en=this._elementRef.nativeElement;en.style.left=kt.left,en.style.width=kt.width}}]),Je}();return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.SBq),v.Y36(v.R0b),v.Y36(xe),v.Y36(Q.Qb,8))},Ze.\u0275dir=v.lG2({type:Ze,selectors:[["mat-ink-bar"]],hostAttrs:[1,"mat-ink-bar"],hostVars:2,hostBindings:function(Ve,pt){2&Ve&&v.ekj("_mat-animation-noopable","NoopAnimations"===pt._animationMode)}}),Ze}(),ct=new v.OlP("MatTabContent"),Xe=function(){var Ze=(0,h.Z)(function Je(Ve){(0,s.Z)(this,Je),this.template=Ve});return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.Rgc))},Ze.\u0275dir=v.lG2({type:Ze,selectors:[["","matTabContent",""]],features:[v._Bn([{provide:ct,useExisting:Ze}])]}),Ze}(),Te=new v.OlP("MatTabLabel"),vt=new v.OlP("MAT_TAB"),qe=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt,en,Zn){var zt;return(0,s.Z)(this,pt),(zt=Ve.call(this,kt,en))._closestTab=Zn,zt}return(0,h.Z)(pt)}(B.ig);return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.Rgc),v.Y36(v.s_b),v.Y36(vt,8))},Ze.\u0275dir=v.lG2({type:Ze,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[v._Bn([{provide:Te,useExisting:Ze}]),v.qOj]}),Ze}(),je=(0,j.Id)(function(){return(0,h.Z)(function Ze(){(0,s.Z)(this,Ze)})}()),Nt=new v.OlP("MAT_TAB_GROUP"),Ft=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt,en){var Zn;return(0,s.Z)(this,pt),(Zn=Ve.call(this))._viewContainerRef=kt,Zn._closestTabGroup=en,Zn.textLabel="",Zn._contentPortal=null,Zn._stateChanges=new J.x,Zn.position=null,Zn.origin=null,Zn.isActive=!1,Zn}return(0,h.Z)(pt,[{key:"templateLabel",get:function(){return this._templateLabel},set:function(en){this._setTemplateLabelInput(en)}},{key:"content",get:function(){return this._contentPortal}},{key:"ngOnChanges",value:function(en){(en.hasOwnProperty("textLabel")||en.hasOwnProperty("disabled"))&&this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"ngOnInit",value:function(){this._contentPortal=new B.UE(this._explicitContent||this._implicitContent,this._viewContainerRef)}},{key:"_setTemplateLabelInput",value:function(en){en&&en._closestTab===this&&(this._templateLabel=en)}}]),pt}(je);return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.s_b),v.Y36(Nt,8))},Ze.\u0275cmp=v.Xpm({type:Ze,selectors:[["mat-tab"]],contentQueries:function(Ve,pt,kt){var en;1&Ve&&(v.Suo(kt,Te,5),v.Suo(kt,ct,7,v.Rgc)),2&Ve&&(v.iGM(en=v.CRH())&&(pt.templateLabel=en.first),v.iGM(en=v.CRH())&&(pt._explicitContent=en.first))},viewQuery:function(Ve,pt){var kt;1&Ve&&v.Gf(v.Rgc,7),2&Ve&&v.iGM(kt=v.CRH())&&(pt._implicitContent=kt.first)},inputs:{disabled:"disabled",textLabel:["label","textLabel"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass"},exportAs:["matTab"],features:[v._Bn([{provide:vt,useExisting:Ze}]),v.qOj,v.TTD],ngContentSelectors:se,decls:1,vars:0,template:function(Ve,pt){1&Ve&&(v.F$t(),v.YNc(0,Y,1,0,"ng-template"))},encapsulation:2}),Ze}(),bt={translateTab:(0,q.X$)("translateTab",[(0,q.SB)("center, void, left-origin-center, right-origin-center",(0,q.oB)({transform:"none"})),(0,q.SB)("left",(0,q.oB)({transform:"translate3d(-100%, 0, 0)",minHeight:"1px"})),(0,q.SB)("right",(0,q.oB)({transform:"translate3d(100%, 0, 0)",minHeight:"1px"})),(0,q.eR)("* => left, * => right, left => center, right => center",(0,q.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")),(0,q.eR)("void => left-origin-center",[(0,q.oB)({transform:"translate3d(-100%, 0, 0)"}),(0,q.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")]),(0,q.eR)("void => right-origin-center",[(0,q.oB)({transform:"translate3d(100%, 0, 0)"}),(0,q.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")])])},St=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt,en,Zn,zt){var un;return(0,s.Z)(this,pt),(un=Ve.call(this,kt,en,zt))._host=Zn,un._centeringSub=Z.w0.EMPTY,un._leavingSub=Z.w0.EMPTY,un}return(0,h.Z)(pt,[{key:"ngOnInit",value:function(){var en=this;(0,t.Z)((0,e.Z)(pt.prototype),"ngOnInit",this).call(this),this._centeringSub=this._host._beforeCentering.pipe((0,ce.O)(this._host._isCenterPosition(this._host._position))).subscribe(function(Zn){Zn&&!en.hasAttached()&&en.attach(en._host._content)}),this._leavingSub=this._host._afterLeavingCenter.subscribe(function(){en.detach()})}},{key:"ngOnDestroy",value:function(){(0,t.Z)((0,e.Z)(pt.prototype),"ngOnDestroy",this).call(this),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}}]),pt}(B.Pl);return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v._Vd),v.Y36(v.s_b),v.Y36((0,v.Gpc)(function(){return ut})),v.Y36(I.K0))},Ze.\u0275dir=v.lG2({type:Ze,selectors:[["","matTabBodyHost",""]],features:[v.qOj]}),Ze}(),Pt=function(){var Ze=function(){function Je(Ve,pt,kt){var en=this;(0,s.Z)(this,Je),this._elementRef=Ve,this._dir=pt,this._dirChangeSubscription=Z.w0.EMPTY,this._translateTabComplete=new J.x,this._onCentering=new v.vpe,this._beforeCentering=new v.vpe,this._afterLeavingCenter=new v.vpe,this._onCentered=new v.vpe(!0),this.animationDuration="500ms",pt&&(this._dirChangeSubscription=pt.change.subscribe(function(Zn){en._computePositionAnimationState(Zn),kt.markForCheck()})),this._translateTabComplete.pipe((0,ie.x)(function(Zn,zt){return Zn.fromState===zt.fromState&&Zn.toState===zt.toState})).subscribe(function(Zn){en._isCenterPosition(Zn.toState)&&en._isCenterPosition(en._position)&&en._onCentered.emit(),en._isCenterPosition(Zn.fromState)&&!en._isCenterPosition(en._position)&&en._afterLeavingCenter.emit()})}return(0,h.Z)(Je,[{key:"position",set:function(pt){this._positionIndex=pt,this._computePositionAnimationState()}},{key:"ngOnInit",value:function(){"center"==this._position&&null!=this.origin&&(this._position=this._computePositionFromOrigin(this.origin))}},{key:"ngOnDestroy",value:function(){this._dirChangeSubscription.unsubscribe(),this._translateTabComplete.complete()}},{key:"_onTranslateTabStarted",value:function(pt){var kt=this._isCenterPosition(pt.toState);this._beforeCentering.emit(kt),kt&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}},{key:"_getLayoutDirection",value:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"_isCenterPosition",value:function(pt){return"center"==pt||"left-origin-center"==pt||"right-origin-center"==pt}},{key:"_computePositionAnimationState",value:function(){var pt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this._getLayoutDirection();this._position=this._positionIndex<0?"ltr"==pt?"left":"right":this._positionIndex>0?"ltr"==pt?"right":"left":"center"}},{key:"_computePositionFromOrigin",value:function(pt){var kt=this._getLayoutDirection();return"ltr"==kt&&pt<=0||"rtl"==kt&&pt>0?"left-origin-center":"right-origin-center"}}]),Je}();return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.SBq),v.Y36(V.Is,8),v.Y36(v.sBO))},Ze.\u0275dir=v.lG2({type:Ze,inputs:{_content:["content","_content"],origin:"origin",animationDuration:"animationDuration",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_afterLeavingCenter:"_afterLeavingCenter",_onCentered:"_onCentered"}}),Ze}(),ut=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt,en,Zn){return(0,s.Z)(this,pt),Ve.call(this,kt,en,Zn)}return(0,h.Z)(pt)}(Pt);return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.SBq),v.Y36(V.Is,8),v.Y36(v.sBO))},Ze.\u0275cmp=v.Xpm({type:Ze,selectors:[["mat-tab-body"]],viewQuery:function(Ve,pt){var kt;1&Ve&&v.Gf(B.Pl,5),2&Ve&&v.iGM(kt=v.CRH())&&(pt._portalHost=kt.first)},hostAttrs:[1,"mat-tab-body"],features:[v.qOj],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(Ve,pt){1&Ve&&(v.TgZ(0,"div",0,1),v.NdJ("@translateTab.start",function(en){return pt._onTranslateTabStarted(en)})("@translateTab.done",function(en){return pt._translateTabComplete.next(en)}),v.YNc(2,X,0,0,"ng-template",2),v.qZA()),2&Ve&&v.Q6J("@translateTab",v.WLB(3,ve,pt._position,v.VKq(1,ne,pt.animationDuration)))},directives:[St],styles:[".mat-tab-body-content{height:100%;overflow:auto}.mat-tab-group-dynamic-height .mat-tab-body-content{overflow:hidden}\n"],encapsulation:2,data:{animation:[bt.translateTab]}}),Ze}(),yt=new v.OlP("MAT_TABS_CONFIG"),be=(0,j.Id)(function(){return(0,h.Z)(function Ze(){(0,s.Z)(this,Ze)})}()),we=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt){var en;return(0,s.Z)(this,pt),(en=Ve.call(this)).elementRef=kt,en}return(0,h.Z)(pt,[{key:"focus",value:function(){this.elementRef.nativeElement.focus()}},{key:"getOffsetLeft",value:function(){return this.elementRef.nativeElement.offsetLeft}},{key:"getOffsetWidth",value:function(){return this.elementRef.nativeElement.offsetWidth}}]),pt}(be);return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.SBq))},Ze.\u0275dir=v.lG2({type:Ze,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(Ve,pt){2&Ve&&(v.uIk("aria-disabled",!!pt.disabled),v.ekj("mat-tab-disabled",pt.disabled))},inputs:{disabled:"disabled"},features:[v.qOj]}),Ze}(),_e=(0,r.i$)({passive:!0}),gt=function(){var Ze=function(){function Je(Ve,pt,kt,en,Zn,zt,un){var tn=this;(0,s.Z)(this,Je),this._elementRef=Ve,this._changeDetectorRef=pt,this._viewportRuler=kt,this._dir=en,this._ngZone=Zn,this._platform=zt,this._animationMode=un,this._scrollDistance=0,this._selectedIndexChanged=!1,this._destroyed=new J.x,this._showPaginationControls=!1,this._disableScrollAfter=!0,this._disableScrollBefore=!0,this._stopScrolling=new J.x,this.disablePagination=!1,this._selectedIndex=0,this.selectFocusedIndex=new v.vpe,this.indexFocused=new v.vpe,Zn.runOutsideAngular(function(){(0,A.R)(Ve.nativeElement,"mouseleave").pipe((0,H.R)(tn._destroyed)).subscribe(function(){tn._stopInterval()})})}return(0,h.Z)(Je,[{key:"selectedIndex",get:function(){return this._selectedIndex},set:function(pt){pt=(0,ue.su)(pt),this._selectedIndex!=pt&&(this._selectedIndexChanged=!0,this._selectedIndex=pt,this._keyManager&&this._keyManager.updateActiveItem(pt))}},{key:"ngAfterViewInit",value:function(){var pt=this;(0,A.R)(this._previousPaginator.nativeElement,"touchstart",_e).pipe((0,H.R)(this._destroyed)).subscribe(function(){pt._handlePaginatorPress("before")}),(0,A.R)(this._nextPaginator.nativeElement,"touchstart",_e).pipe((0,H.R)(this._destroyed)).subscribe(function(){pt._handlePaginatorPress("after")})}},{key:"ngAfterContentInit",value:function(){var pt=this,kt=this._dir?this._dir.change:(0,N.of)("ltr"),en=this._viewportRuler.change(150),Zn=function(){pt.updatePagination(),pt._alignInkBarToSelectedTab()};this._keyManager=new f.Em(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap(),this._keyManager.updateActiveItem(this._selectedIndex),"undefined"!=typeof requestAnimationFrame?requestAnimationFrame(Zn):Zn(),(0,E.T)(kt,en,this._items.changes).pipe((0,H.R)(this._destroyed)).subscribe(function(){pt._ngZone.run(function(){return Promise.resolve().then(Zn)}),pt._keyManager.withHorizontalOrientation(pt._getLayoutDirection())}),this._keyManager.change.pipe((0,H.R)(this._destroyed)).subscribe(function(zt){pt.indexFocused.emit(zt),pt._setTabFocus(zt)})}},{key:"ngAfterContentChecked",value:function(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}},{key:"_handleKeydown",value:function(pt){if(!(0,R.Vb)(pt))switch(pt.keyCode){case R.K5:case R.L_:this.focusIndex!==this.selectedIndex&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(pt));break;default:this._keyManager.onKeydown(pt)}}},{key:"_onContentChanges",value:function(){var pt=this,kt=this._elementRef.nativeElement.textContent;kt!==this._currentTextContent&&(this._currentTextContent=kt||"",this._ngZone.run(function(){pt.updatePagination(),pt._alignInkBarToSelectedTab(),pt._changeDetectorRef.markForCheck()}))}},{key:"updatePagination",value:function(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}},{key:"focusIndex",get:function(){return this._keyManager?this._keyManager.activeItemIndex:0},set:function(pt){!this._isValidIndex(pt)||this.focusIndex===pt||!this._keyManager||this._keyManager.setActiveItem(pt)}},{key:"_isValidIndex",value:function(pt){if(!this._items)return!0;var kt=this._items?this._items.toArray()[pt]:null;return!!kt&&!kt.disabled}},{key:"_setTabFocus",value:function(pt){if(this._showPaginationControls&&this._scrollToLabel(pt),this._items&&this._items.length){this._items.toArray()[pt].focus();var kt=this._tabListContainer.nativeElement,en=this._getLayoutDirection();kt.scrollLeft="ltr"==en?0:kt.scrollWidth-kt.offsetWidth}}},{key:"_getLayoutDirection",value:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"_updateTabScrollPosition",value:function(){if(!this.disablePagination){var pt=this.scrollDistance,kt="ltr"===this._getLayoutDirection()?-pt:pt;this._tabList.nativeElement.style.transform="translateX(".concat(Math.round(kt),"px)"),(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}}},{key:"scrollDistance",get:function(){return this._scrollDistance},set:function(pt){this._scrollTo(pt)}},{key:"_scrollHeader",value:function(pt){return this._scrollTo(this._scrollDistance+("before"==pt?-1:1)*this._tabListContainer.nativeElement.offsetWidth/3)}},{key:"_handlePaginatorClick",value:function(pt){this._stopInterval(),this._scrollHeader(pt)}},{key:"_scrollToLabel",value:function(pt){if(!this.disablePagination){var kt=this._items?this._items.toArray()[pt]:null;if(kt){var tn,ln,en=this._tabListContainer.nativeElement.offsetWidth,Zn=kt.elementRef.nativeElement,zt=Zn.offsetLeft,un=Zn.offsetWidth;"ltr"==this._getLayoutDirection()?ln=(tn=zt)+un:tn=(ln=this._tabListInner.nativeElement.offsetWidth-zt)-un;var gn=this.scrollDistance,An=this.scrollDistance+en;tnAn&&(this.scrollDistance+=ln-An+60)}}}},{key:"_checkPaginationEnabled",value:function(){if(this.disablePagination)this._showPaginationControls=!1;else{var pt=this._tabListInner.nativeElement.scrollWidth>this._elementRef.nativeElement.offsetWidth;pt||(this.scrollDistance=0),pt!==this._showPaginationControls&&this._changeDetectorRef.markForCheck(),this._showPaginationControls=pt}}},{key:"_checkScrollingControls",value:function(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=0==this.scrollDistance,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}},{key:"_getMaxScrollDistance",value:function(){return this._tabListInner.nativeElement.scrollWidth-this._tabListContainer.nativeElement.offsetWidth||0}},{key:"_alignInkBarToSelectedTab",value:function(){var pt=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,kt=pt?pt.elementRef.nativeElement:null;kt?this._inkBar.alignToElement(kt):this._inkBar.hide()}},{key:"_stopInterval",value:function(){this._stopScrolling.next()}},{key:"_handlePaginatorPress",value:function(pt,kt){var en=this;kt&&null!=kt.button&&0!==kt.button||(this._stopInterval(),(0,k.H)(650,100).pipe((0,H.R)((0,E.T)(this._stopScrolling,this._destroyed))).subscribe(function(){var Zn=en._scrollHeader(pt),un=Zn.distance;(0===un||un>=Zn.maxScrollDistance)&&en._stopInterval()}))}},{key:"_scrollTo",value:function(pt){if(this.disablePagination)return{maxScrollDistance:0,distance:0};var kt=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(kt,pt)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:kt,distance:this._scrollDistance}}}]),Je}();return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.SBq),v.Y36(v.sBO),v.Y36(z.rL),v.Y36(V.Is,8),v.Y36(v.R0b),v.Y36(r.t4),v.Y36(Q.Qb,8))},Ze.\u0275dir=v.lG2({type:Ze,inputs:{disablePagination:"disablePagination"}}),Ze}(),Bt=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt,en,Zn,zt,un,tn,ln){var gn;return(0,s.Z)(this,pt),(gn=Ve.call(this,kt,en,Zn,zt,un,tn,ln))._disableRipple=!1,gn}return(0,h.Z)(pt,[{key:"disableRipple",get:function(){return this._disableRipple},set:function(en){this._disableRipple=(0,ue.Ig)(en)}},{key:"_itemSelected",value:function(en){en.preventDefault()}}]),pt}(gt);return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.SBq),v.Y36(v.sBO),v.Y36(z.rL),v.Y36(V.Is,8),v.Y36(v.R0b),v.Y36(r.t4),v.Y36(Q.Qb,8))},Ze.\u0275dir=v.lG2({type:Ze,inputs:{disableRipple:"disableRipple"},features:[v.qOj]}),Ze}(),_n=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt,en,Zn,zt,un,tn,ln){return(0,s.Z)(this,pt),Ve.call(this,kt,en,Zn,zt,un,tn,ln)}return(0,h.Z)(pt)}(Bt);return Ze.\u0275fac=function(Ve){return new(Ve||Ze)(v.Y36(v.SBq),v.Y36(v.sBO),v.Y36(z.rL),v.Y36(V.Is,8),v.Y36(v.R0b),v.Y36(r.t4),v.Y36(Q.Qb,8))},Ze.\u0275cmp=v.Xpm({type:Ze,selectors:[["mat-tab-header"]],contentQueries:function(Ve,pt,kt){var en;1&Ve&&v.Suo(kt,we,4),2&Ve&&v.iGM(en=v.CRH())&&(pt._items=en)},viewQuery:function(Ve,pt){var kt;1&Ve&&(v.Gf(Ge,7),v.Gf(Re,7),v.Gf(Ie,7),v.Gf(Ee,7),v.Gf(ge,5),v.Gf(_t,5)),2&Ve&&(v.iGM(kt=v.CRH())&&(pt._inkBar=kt.first),v.iGM(kt=v.CRH())&&(pt._tabListContainer=kt.first),v.iGM(kt=v.CRH())&&(pt._tabList=kt.first),v.iGM(kt=v.CRH())&&(pt._tabListInner=kt.first),v.iGM(kt=v.CRH())&&(pt._nextPaginator=kt.first),v.iGM(kt=v.CRH())&&(pt._previousPaginator=kt.first))},hostAttrs:[1,"mat-tab-header"],hostVars:4,hostBindings:function(Ve,pt){2&Ve&&v.ekj("mat-tab-header-pagination-controls-enabled",pt._showPaginationControls)("mat-tab-header-rtl","rtl"==pt._getLayoutDirection())},inputs:{selectedIndex:"selectedIndex"},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"},features:[v.qOj],ngContentSelectors:se,decls:14,vars:8,consts:[["aria-hidden","true","mat-ripple","",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-label-container",3,"keydown"],["tabListContainer",""],["role","tablist",1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-labels"],["tabListInner",""],["aria-hidden","true","mat-ripple","",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(Ve,pt){1&Ve&&(v.F$t(),v.TgZ(0,"div",0,1),v.NdJ("click",function(){return pt._handlePaginatorClick("before")})("mousedown",function(en){return pt._handlePaginatorPress("before",en)})("touchend",function(){return pt._stopInterval()}),v._UZ(2,"div",2),v.qZA(),v.TgZ(3,"div",3,4),v.NdJ("keydown",function(en){return pt._handleKeydown(en)}),v.TgZ(5,"div",5,6),v.NdJ("cdkObserveContent",function(){return pt._onContentChanges()}),v.TgZ(7,"div",7,8),v.Hsn(9),v.qZA(),v._UZ(10,"mat-ink-bar"),v.qZA(),v.qZA(),v.TgZ(11,"div",9,10),v.NdJ("mousedown",function(en){return pt._handlePaginatorPress("after",en)})("click",function(){return pt._handlePaginatorClick("after")})("touchend",function(){return pt._stopInterval()}),v._UZ(13,"div",2),v.qZA()),2&Ve&&(v.ekj("mat-tab-header-pagination-disabled",pt._disableScrollBefore),v.Q6J("matRippleDisabled",pt._disableScrollBefore||pt.disableRipple),v.xp6(5),v.ekj("_mat-animation-noopable","NoopAnimations"===pt._animationMode),v.xp6(6),v.ekj("mat-tab-header-pagination-disabled",pt._disableScrollAfter),v.Q6J("matRippleDisabled",pt._disableScrollAfter||pt.disableRipple))},directives:[j.wG,T.wD,Ge],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-ink-bar{transition:none;animation:none}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-labels{display:flex}[mat-align-tabs=center]>.mat-tab-header .mat-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-tab-header .mat-tab-labels{justify-content:flex-end}.mat-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}._mat-animation-noopable.mat-tab-list{transition:none;animation:none}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{min-width:72px}}\n"],encapsulation:2}),Ze}(),wn=0,Tn=(0,h.Z)(function Ze(){(0,s.Z)(this,Ze)}),On=(0,j.pj)((0,j.Kr)(function(){return(0,h.Z)(function Ze(Je){(0,s.Z)(this,Ze),this._elementRef=Je})}()),"primary"),Jn=function(){var Ze=function(Je){(0,p.Z)(pt,Je);var Ve=(0,d.Z)(pt);function pt(kt,en,Zn,zt){var un,tn;return(0,s.Z)(this,pt),(un=Ve.call(this,kt))._changeDetectorRef=en,un._animationMode=zt,un._tabs=new v.n_E,un._indexToSelect=0,un._tabBodyWrapperHeight=0,un._tabsSubscription=Z.w0.EMPTY,un._tabLabelSubscription=Z.w0.EMPTY,un._selectedIndex=null,un.headerPosition="above",un.selectedIndexChange=new v.vpe,un.focusChange=new v.vpe,un.animationDone=new v.vpe,un.selectedTabChange=new v.vpe(!0),un._groupId=wn++,un.animationDuration=Zn&&Zn.animationDuration?Zn.animationDuration:"500ms",un.disablePagination=!(!Zn||null==Zn.disablePagination)&&Zn.disablePagination,un.dynamicHeight=!(!Zn||null==Zn.dynamicHeight)&&Zn.dynamicHeight,un.contentTabIndex=null!==(tn=null==Zn?void 0:Zn.contentTabIndex)&&void 0!==tn?tn:null,un}return(0,h.Z)(pt,[{key:"dynamicHeight",get:function(){return this._dynamicHeight},set:function(en){this._dynamicHeight=(0,ue.Ig)(en)}},{key:"selectedIndex",get:function(){return this._selectedIndex},set:function(en){this._indexToSelect=(0,ue.su)(en,null)}},{key:"animationDuration",get:function(){return this._animationDuration},set:function(en){this._animationDuration=/^\d+$/.test(en+"")?en+"ms":en}},{key:"contentTabIndex",get:function(){return this._contentTabIndex},set:function(en){this._contentTabIndex=(0,ue.su)(en,null)}},{key:"backgroundColor",get:function(){return this._backgroundColor},set:function(en){var Zn=this._elementRef.nativeElement;Zn.classList.remove("mat-background-".concat(this.backgroundColor)),en&&Zn.classList.add("mat-background-".concat(en)),this._backgroundColor=en}},{key:"ngAfterContentChecked",value:function(){var en=this,Zn=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=Zn){var zt=null==this._selectedIndex;if(!zt){this.selectedTabChange.emit(this._createChangeEvent(Zn));var un=this._tabBodyWrapper.nativeElement;un.style.minHeight=un.clientHeight+"px"}Promise.resolve().then(function(){en._tabs.forEach(function(tn,ln){return tn.isActive=ln===Zn}),zt||(en.selectedIndexChange.emit(Zn),en._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach(function(tn,ln){tn.position=ln-Zn,null!=en._selectedIndex&&0==tn.position&&!tn.origin&&(tn.origin=Zn-en._selectedIndex)}),this._selectedIndex!==Zn&&(this._selectedIndex=Zn,this._changeDetectorRef.markForCheck())}},{key:"ngAfterContentInit",value:function(){var en=this;this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(function(){if(en._clampTabIndex(en._indexToSelect)===en._selectedIndex)for(var zt=en._tabs.toArray(),un=0;un.mat-tab-header .mat-tab-label{flex-basis:0;flex-grow:1}.mat-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-tab-body-wrapper{transition:none;animation:none}.mat-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-tab-body.mat-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-tab-group.mat-tab-group-dynamic-height .mat-tab-body.mat-tab-body-active{overflow-y:hidden}\n"],encapsulation:2}),Ze}(),De=function(){var Ze=(0,h.Z)(function Je(){(0,s.Z)(this,Je)});return Ze.\u0275fac=function(Ve){return new(Ve||Ze)},Ze.\u0275mod=v.oAB({type:Ze}),Ze.\u0275inj=v.cJS({imports:[[I.ez,j.BQ,B.eL,j.si,T.Q8,f.rt],j.BQ]}),Ze}()},19946:function(dt,K,n){"use strict";n.d(K,{Ye:function(){return j},g0:function(){return J}});var P=n(24582),t=n(7318),e=n(48047),p=n(78069),d=n(76442),s=n(1130),h=n(36362),f=n(14390),T=["*",[["mat-toolbar-row"]]],B=["*","mat-toolbar-row"],I=(0,s.pj)(function(){return(0,e.Z)(function Z(A){(0,p.Z)(this,Z),this._elementRef=A})}()),v=function(){var Z=(0,e.Z)(function A(){(0,p.Z)(this,A)});return Z.\u0275fac=function(N){return new(N||Z)},Z.\u0275dir=d.lG2({type:Z,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),Z}(),j=function(){var Z=function(A){(0,P.Z)(E,A);var N=(0,t.Z)(E);function E(k,q,ce){var ie;return(0,p.Z)(this,E),(ie=N.call(this,k))._platform=q,ie._document=ce,ie}return(0,e.Z)(E,[{key:"ngAfterViewInit",value:function(){var q=this;this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(function(){return q._checkToolbarMixedModes()}))}},{key:"_checkToolbarMixedModes",value:function(){}}]),E}(I);return Z.\u0275fac=function(N){return new(N||Z)(d.Y36(d.SBq),d.Y36(f.t4),d.Y36(h.K0))},Z.\u0275cmp=d.Xpm({type:Z,selectors:[["mat-toolbar"]],contentQueries:function(N,E,k){var q;1&N&&d.Suo(k,v,5),2&N&&d.iGM(q=d.CRH())&&(E._toolbarRows=q)},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(N,E){2&N&&d.ekj("mat-toolbar-multiple-rows",E._toolbarRows.length>0)("mat-toolbar-single-row",0===E._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[d.qOj],ngContentSelectors:B,decls:2,vars:0,template:function(N,E){1&N&&(d.F$t(T),d.Hsn(0),d.Hsn(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),Z}(),J=function(){var Z=(0,e.Z)(function A(){(0,p.Z)(this,A)});return Z.\u0275fac=function(N){return new(N||Z)},Z.\u0275mod=d.oAB({type:Z}),Z.\u0275inj=d.cJS({imports:[[s.BQ],s.BQ]}),Z}()},40089:function(dt,K,n){"use strict";n.d(K,{gM:function(){return Re},AV:function(){return ge}});var P=n(24582),t=n(7318),e=n(32090),p=n(78069),d=n(48047),s=n(66088),h=n(84128),f=n(36362),T=n(76442),B=n(1130),I=n(24426),v=n(76484),j=n(75939),Q=n(39910),J=n(14390),Z=n(24476),A=n(50253),N=n(68951),E=n(59295),k=n(31631),q=n(51588),ce={tooltipState:(0,k.X$)("state",[(0,k.SB)("initial, void, hidden",(0,k.oB)({opacity:0,transform:"scale(0)"})),(0,k.SB)("visible",(0,k.oB)({transform:"scale(1)"})),(0,k.eR)("* => visible",(0,k.jt)("200ms cubic-bezier(0, 0, 0.2, 1)",(0,k.F4)([(0,k.oB)({opacity:0,transform:"scale(0)",offset:0}),(0,k.oB)({opacity:.5,transform:"scale(0.99)",offset:.5}),(0,k.oB)({opacity:1,transform:"scale(1)",offset:1})]))),(0,k.eR)("* => hidden",(0,k.jt)("100ms cubic-bezier(0, 0, 0.2, 1)",(0,k.oB)({opacity:0})))])},V="tooltip-panel",ue=(0,J.i$)({passive:!0}),z=new T.OlP("mat-tooltip-scroll-strategy"),se={provide:z,deps:[s.aV],useFactory:function Y(_t){return function(){return _t.scrollStrategies.reposition({scrollThrottle:20})}}},X=new T.OlP("mat-tooltip-default-options",{providedIn:"root",factory:function ne(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),ve=function(){var _t=function(){function wt(qt,Lt,Rt,it,Qe,ot,tt,xe,$e,Ge,ct,Xe){var Te=this;(0,p.Z)(this,wt),this._overlay=qt,this._elementRef=Lt,this._scrollDispatcher=Rt,this._viewContainerRef=it,this._ngZone=Qe,this._platform=ot,this._ariaDescriber=tt,this._focusMonitor=xe,this._dir=Ge,this._defaultOptions=ct,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this._showDelay=this._defaultOptions.showDelay,this._hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new A.x,this._scrollStrategy=$e,this._document=Xe,ct&&(ct.position&&(this.position=ct.position),ct.touchGestures&&(this.touchGestures=ct.touchGestures)),Ge.change.pipe((0,N.R)(this._destroyed)).subscribe(function(){Te._overlayRef&&Te._updatePosition(Te._overlayRef)})}return(0,d.Z)(wt,[{key:"position",get:function(){return this._position},set:function(Lt){var Rt;Lt!==this._position&&(this._position=Lt,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(Rt=this._tooltipInstance)||void 0===Rt||Rt.show(0),this._overlayRef.updatePosition()))}},{key:"disabled",get:function(){return this._disabled},set:function(Lt){this._disabled=(0,v.Ig)(Lt),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}},{key:"showDelay",get:function(){return this._showDelay},set:function(Lt){this._showDelay=(0,v.su)(Lt)}},{key:"hideDelay",get:function(){return this._hideDelay},set:function(Lt){this._hideDelay=(0,v.su)(Lt)}},{key:"message",get:function(){return this._message},set:function(Lt){var Rt=this;this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=Lt?String(Lt).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(function(){Promise.resolve().then(function(){Rt._ariaDescriber.describe(Rt._elementRef.nativeElement,Rt.message,"tooltip")})}))}},{key:"tooltipClass",get:function(){return this._tooltipClass},set:function(Lt){this._tooltipClass=Lt,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}},{key:"ngAfterViewInit",value:function(){var Lt=this;this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe((0,N.R)(this._destroyed)).subscribe(function(Rt){Rt?"keyboard"===Rt&&Lt._ngZone.run(function(){return Lt.show()}):Lt._ngZone.run(function(){return Lt.hide(0)})})}},{key:"ngOnDestroy",value:function(){var Lt=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(function(Rt){var it=(0,e.Z)(Rt,2);Lt.removeEventListener(it[0],it[1],ue)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(Lt,this.message,"tooltip"),this._focusMonitor.stopMonitoring(Lt)}},{key:"show",value:function(){var Lt=this,Rt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.showDelay;if(!this.disabled&&this.message&&(!this._isTooltipVisible()||this._tooltipInstance._showTimeoutId||this._tooltipInstance._hideTimeoutId)){var it=this._createOverlay();this._detach(),this._portal=this._portal||new Z.C5(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=it.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe((0,N.R)(this._destroyed)).subscribe(function(){return Lt._detach()}),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(Rt)}}},{key:"hide",value:function(){var Lt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.hideDelay;this._tooltipInstance&&this._tooltipInstance.hide(Lt)}},{key:"toggle",value:function(){this._isTooltipVisible()?this.hide():this.show()}},{key:"_isTooltipVisible",value:function(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}},{key:"_createOverlay",value:function(){var Lt=this;if(this._overlayRef)return this._overlayRef;var Rt=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),it=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(".".concat(this._cssClassPrefix,"-tooltip")).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(Rt);return it.positionChanges.pipe((0,N.R)(this._destroyed)).subscribe(function(Qe){Lt._updateCurrentPositionClass(Qe.connectionPair),Lt._tooltipInstance&&Qe.scrollableViewProperties.isOverlayClipped&&Lt._tooltipInstance.isVisible()&&Lt._ngZone.run(function(){return Lt.hide(0)})}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:it,panelClass:"".concat(this._cssClassPrefix,"-").concat(V),scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe((0,N.R)(this._destroyed)).subscribe(function(){return Lt._detach()}),this._overlayRef.outsidePointerEvents().pipe((0,N.R)(this._destroyed)).subscribe(function(){var Qe;return null===(Qe=Lt._tooltipInstance)||void 0===Qe?void 0:Qe._handleBodyInteraction()}),this._overlayRef.keydownEvents().pipe((0,N.R)(this._destroyed)).subscribe(function(Qe){Lt._isTooltipVisible()&&Qe.keyCode===j.hY&&!(0,j.Vb)(Qe)&&(Qe.preventDefault(),Qe.stopPropagation(),Lt._ngZone.run(function(){return Lt.hide(0)}))}),this._overlayRef}},{key:"_detach",value:function(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}},{key:"_updatePosition",value:function(Lt){var Rt=Lt.getConfig().positionStrategy,it=this._getOrigin(),Qe=this._getOverlayPosition();Rt.withPositions([this._addOffset(Object.assign(Object.assign({},it.main),Qe.main)),this._addOffset(Object.assign(Object.assign({},it.fallback),Qe.fallback))])}},{key:"_addOffset",value:function(Lt){return Lt}},{key:"_getOrigin",value:function(){var it,Lt=!this._dir||"ltr"==this._dir.value,Rt=this.position;"above"==Rt||"below"==Rt?it={originX:"center",originY:"above"==Rt?"top":"bottom"}:"before"==Rt||"left"==Rt&&Lt||"right"==Rt&&!Lt?it={originX:"start",originY:"center"}:("after"==Rt||"right"==Rt&&Lt||"left"==Rt&&!Lt)&&(it={originX:"end",originY:"center"});var Qe=this._invertPosition(it.originX,it.originY);return{main:it,fallback:{originX:Qe.x,originY:Qe.y}}}},{key:"_getOverlayPosition",value:function(){var it,Lt=!this._dir||"ltr"==this._dir.value,Rt=this.position;"above"==Rt?it={overlayX:"center",overlayY:"bottom"}:"below"==Rt?it={overlayX:"center",overlayY:"top"}:"before"==Rt||"left"==Rt&&Lt||"right"==Rt&&!Lt?it={overlayX:"end",overlayY:"center"}:("after"==Rt||"right"==Rt&&Lt||"left"==Rt&&!Lt)&&(it={overlayX:"start",overlayY:"center"});var Qe=this._invertPosition(it.overlayX,it.overlayY);return{main:it,fallback:{overlayX:Qe.x,overlayY:Qe.y}}}},{key:"_updateTooltipMessage",value:function(){var Lt=this;this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe((0,E.q)(1),(0,N.R)(this._destroyed)).subscribe(function(){Lt._tooltipInstance&&Lt._overlayRef.updatePosition()}))}},{key:"_setTooltipClass",value:function(Lt){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=Lt,this._tooltipInstance._markForCheck())}},{key:"_invertPosition",value:function(Lt,Rt){return"above"===this.position||"below"===this.position?"top"===Rt?Rt="bottom":"bottom"===Rt&&(Rt="top"):"end"===Lt?Lt="start":"start"===Lt&&(Lt="end"),{x:Lt,y:Rt}}},{key:"_updateCurrentPositionClass",value:function(Lt){var ot,Rt=Lt.overlayY,it=Lt.originX;if((ot="center"===Rt?this._dir&&"rtl"===this._dir.value?"end"===it?"left":"right":"start"===it?"left":"right":"bottom"===Rt&&"top"===Lt.originY?"above":"below")!==this._currentPosition){var tt=this._overlayRef;if(tt){var xe="".concat(this._cssClassPrefix,"-").concat(V,"-");tt.removePanelClass(xe+this._currentPosition),tt.addPanelClass(xe+ot)}this._currentPosition=ot}}},{key:"_setupPointerEnterEventsIfNeeded",value:function(){var Lt=this;this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",function(){Lt._setupPointerExitEventsIfNeeded(),Lt.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",function(){Lt._setupPointerExitEventsIfNeeded(),clearTimeout(Lt._touchstartTimeout),Lt._touchstartTimeout=setTimeout(function(){return Lt.show()},500)}])),this._addListeners(this._passiveListeners))}},{key:"_setupPointerExitEventsIfNeeded",value:function(){var Rt,Lt=this;if(!this._pointerExitEventsInitialized){this._pointerExitEventsInitialized=!0;var it=[];if(this._platformSupportsMouseEvents())it.push(["mouseleave",function(){return Lt.hide()}],["wheel",function(ot){return Lt._wheelListener(ot)}]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();var Qe=function(){clearTimeout(Lt._touchstartTimeout),Lt.hide(Lt._defaultOptions.touchendHideDelay)};it.push(["touchend",Qe],["touchcancel",Qe])}this._addListeners(it),(Rt=this._passiveListeners).push.apply(Rt,it)}}},{key:"_addListeners",value:function(Lt){var Rt=this;Lt.forEach(function(it){var Qe=(0,e.Z)(it,2);Rt._elementRef.nativeElement.addEventListener(Qe[0],Qe[1],ue)})}},{key:"_platformSupportsMouseEvents",value:function(){return!this._platform.IOS&&!this._platform.ANDROID}},{key:"_wheelListener",value:function(Lt){if(this._isTooltipVisible()){var Rt=this._document.elementFromPoint(Lt.clientX,Lt.clientY),it=this._elementRef.nativeElement;Rt!==it&&!it.contains(Rt)&&this.hide()}}},{key:"_disableNativeGesturesIfNecessary",value:function(){var Lt=this.touchGestures;if("off"!==Lt){var Rt=this._elementRef.nativeElement,it=Rt.style;("on"===Lt||"INPUT"!==Rt.nodeName&&"TEXTAREA"!==Rt.nodeName)&&(it.userSelect=it.msUserSelect=it.webkitUserSelect=it.MozUserSelect="none"),("on"===Lt||!Rt.draggable)&&(it.webkitUserDrag="none"),it.touchAction="none",it.webkitTapHighlightColor="transparent"}}}]),wt}();return _t.\u0275fac=function(qt){T.$Z()},_t.\u0275dir=T.lG2({type:_t,inputs:{position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),_t}(),Re=function(){var _t=function(wt){(0,P.Z)(Lt,wt);var qt=(0,t.Z)(Lt);function Lt(Rt,it,Qe,ot,tt,xe,$e,Ge,ct,Xe,Te,vt){var qe;return(0,p.Z)(this,Lt),(qe=qt.call(this,Rt,it,Qe,ot,tt,xe,$e,Ge,ct,Xe,Te,vt))._tooltipComponent=Ee,qe}return(0,d.Z)(Lt)}(ve);return _t.\u0275fac=function(qt){return new(qt||_t)(T.Y36(s.aV),T.Y36(T.SBq),T.Y36(I.mF),T.Y36(T.s_b),T.Y36(T.R0b),T.Y36(J.t4),T.Y36(h.$s),T.Y36(h.tE),T.Y36(z),T.Y36(q.Is,8),T.Y36(X,8),T.Y36(f.K0))},_t.\u0275dir=T.lG2({type:_t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[T.qOj]}),_t}(),Ie=function(){var _t=function(){function wt(qt){(0,p.Z)(this,wt),this._changeDetectorRef=qt,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new A.x}return(0,d.Z)(wt,[{key:"show",value:function(Lt){var Rt=this;clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(function(){Rt._visibility="visible",Rt._showTimeoutId=void 0,Rt._onShow(),Rt._markForCheck()},Lt)}},{key:"hide",value:function(Lt){var Rt=this;clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(function(){Rt._visibility="hidden",Rt._hideTimeoutId=void 0,Rt._markForCheck()},Lt)}},{key:"afterHidden",value:function(){return this._onHide}},{key:"isVisible",value:function(){return"visible"===this._visibility}},{key:"ngOnDestroy",value:function(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}},{key:"_animationStart",value:function(){this._closeOnInteraction=!1}},{key:"_animationDone",value:function(Lt){var Rt=Lt.toState;"hidden"===Rt&&!this.isVisible()&&this._onHide.next(),("visible"===Rt||"hidden"===Rt)&&(this._closeOnInteraction=!0)}},{key:"_handleBodyInteraction",value:function(){this._closeOnInteraction&&this.hide(0)}},{key:"_markForCheck",value:function(){this._changeDetectorRef.markForCheck()}},{key:"_onShow",value:function(){}}]),wt}();return _t.\u0275fac=function(qt){return new(qt||_t)(T.Y36(T.sBO))},_t.\u0275dir=T.lG2({type:_t}),_t}(),Ee=function(){var _t=function(wt){(0,P.Z)(Lt,wt);var qt=(0,t.Z)(Lt);function Lt(Rt,it){var Qe;return(0,p.Z)(this,Lt),(Qe=qt.call(this,Rt))._breakpointObserver=it,Qe._isHandset=Qe._breakpointObserver.observe(Q.u3.Handset),Qe}return(0,d.Z)(Lt)}(Ie);return _t.\u0275fac=function(qt){return new(qt||_t)(T.Y36(T.sBO),T.Y36(Q.Yg))},_t.\u0275cmp=T.Xpm({type:_t,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(qt,Lt){2&qt&&T.Udp("zoom","visible"===Lt._visibility?1:null)},features:[T.qOj],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(qt,Lt){var Rt;1&qt&&(T.TgZ(0,"div",0),T.NdJ("@state.start",function(){return Lt._animationStart()})("@state.done",function(Qe){return Lt._animationDone(Qe)}),T.ALo(1,"async"),T._uU(2),T.qZA()),2&qt&&(T.ekj("mat-tooltip-handset",null==(Rt=T.lcZ(1,5,Lt._isHandset))?null:Rt.matches),T.Q6J("ngClass",Lt.tooltipClass)("@state",Lt._visibility),T.xp6(2),T.Oqu(Lt.message))},directives:[f.mk],pipes:[f.Ov],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[ce.tooltipState]},changeDetection:0}),_t}(),ge=function(){var _t=(0,d.Z)(function wt(){(0,p.Z)(this,wt)});return _t.\u0275fac=function(qt){return new(qt||_t)},_t.\u0275mod=T.oAB({type:_t}),_t.\u0275inj=T.cJS({providers:[se],imports:[[h.rt,f.ez,s.U8,B.BQ],B.BQ,I.ZD]}),_t}()},34972:function(dt,K,n){"use strict";n.d(K,{GZ:function(){return E},gi:function(){return ce},kc:function(){return R},JZ:function(){return ue},dp:function(){return V},WX:function(){return r},uo:function(){return A},fQ:function(){return N},Ar:function(){return q},ah:function(){return k},eu:function(){return ie}});var P=n(78069),t=n(48047),e=n(4089),p=n(20265),d=n(24582),s=n(7318),h=n(38205),f=n(76442),T=n(1130),B=n(76484),I=n(89502),v=n(76317),j=n(36646),Q=n(59295),J=n(50635),Z=(0,T.sb)((0,T.Id)(h.Hs)),A=function(){var z=function(Y){(0,d.Z)(X,Y);var se=(0,s.Z)(X);function X(ne,ve,Re){var Ie;return(0,P.Z)(this,X),(Ie=se.call(this,ne,ve)).tabIndex=Number(Re)||0,Ie}return(0,t.Z)(X,[{key:"ngOnInit",value:function(){(0,e.Z)((0,p.Z)(X.prototype),"ngOnInit",this).call(this)}},{key:"ngOnDestroy",value:function(){(0,e.Z)((0,p.Z)(X.prototype),"ngOnDestroy",this).call(this)}}]),X}(Z);return z.\u0275fac=function(se){return new(se||z)(f.Y36(f.SBq),f.Y36(h._0),f.$8M("tabindex"))},z.\u0275dir=f.lG2({type:z,selectors:[["mat-tree-node"]],hostAttrs:[1,"mat-tree-node"],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[f._Bn([{provide:h.Hs,useExisting:z}]),f.qOj]}),z}(),N=function(){var z=function(Y){(0,d.Z)(X,Y);var se=(0,s.Z)(X);function X(){return(0,P.Z)(this,X),se.apply(this,arguments)}return(0,t.Z)(X)}(h.rO);return z.\u0275fac=function(){var Y;return function(X){return(Y||(Y=f.n5z(z)))(X||z)}}(),z.\u0275dir=f.lG2({type:z,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[f._Bn([{provide:h.rO,useExisting:z}]),f.qOj]}),z}(),E=function(){var z=function(Y){(0,d.Z)(X,Y);var se=(0,s.Z)(X);function X(ne,ve,Re,Ie){var Ee;return(0,P.Z)(this,X),(Ee=se.call(this,ne,ve,Re))._disabled=!1,Ee.tabIndex=Number(Ie)||0,Ee}return(0,t.Z)(X,[{key:"disabled",get:function(){return this._disabled},set:function(ve){this._disabled=(0,B.Ig)(ve)}},{key:"tabIndex",get:function(){return this.disabled?-1:this._tabIndex},set:function(ve){this._tabIndex=null!=ve?ve:0}},{key:"ngOnInit",value:function(){(0,e.Z)((0,p.Z)(X.prototype),"ngOnInit",this).call(this)}},{key:"ngAfterContentInit",value:function(){(0,e.Z)((0,p.Z)(X.prototype),"ngAfterContentInit",this).call(this)}},{key:"ngOnDestroy",value:function(){(0,e.Z)((0,p.Z)(X.prototype),"ngOnDestroy",this).call(this)}}]),X}(h.Xx);return z.\u0275fac=function(se){return new(se||z)(f.Y36(f.SBq),f.Y36(h._0),f.Y36(f.ZZ4),f.$8M("tabindex"))},z.\u0275dir=f.lG2({type:z,selectors:[["mat-nested-tree-node"]],hostAttrs:[1,"mat-nested-tree-node"],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex",node:["matNestedTreeNode","node"]},exportAs:["matNestedTreeNode"],features:[f._Bn([{provide:h.Xx,useExisting:z},{provide:h.Hs,useExisting:z},{provide:h.HI,useExisting:z}]),f.qOj]}),z}(),k=function(){var z=function(Y){(0,d.Z)(X,Y);var se=(0,s.Z)(X);function X(){return(0,P.Z)(this,X),se.apply(this,arguments)}return(0,t.Z)(X,[{key:"level",get:function(){return this._level},set:function(ve){this._setLevelInput(ve)}},{key:"indent",get:function(){return this._indent},set:function(ve){this._setIndentInput(ve)}}]),X}(h.XJ);return z.\u0275fac=function(){var Y;return function(X){return(Y||(Y=f.n5z(z)))(X||z)}}(),z.\u0275dir=f.lG2({type:z,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[f._Bn([{provide:h.XJ,useExisting:z}]),f.qOj]}),z}(),q=function(){var z=(0,t.Z)(function Y(se,X){(0,P.Z)(this,Y),this.viewContainer=se,this._node=X});return z.\u0275fac=function(se){return new(se||z)(f.Y36(f.s_b),f.Y36(h.HI,8))},z.\u0275dir=f.lG2({type:z,selectors:[["","matTreeNodeOutlet",""]],features:[f._Bn([{provide:h.cu,useExisting:z}])]}),z}(),ce=function(){var z=function(Y){(0,d.Z)(X,Y);var se=(0,s.Z)(X);function X(){return(0,P.Z)(this,X),se.apply(this,arguments)}return(0,t.Z)(X)}(h._0);return z.\u0275fac=function(){var Y;return function(X){return(Y||(Y=f.n5z(z)))(X||z)}}(),z.\u0275cmp=f.Xpm({type:z,selectors:[["mat-tree"]],viewQuery:function(se,X){var ne;1&se&&f.Gf(q,7),2&se&&f.iGM(ne=f.CRH())&&(X._nodeOutlet=ne.first)},hostAttrs:["role","tree",1,"mat-tree"],exportAs:["matTree"],features:[f._Bn([{provide:h._0,useExisting:z}]),f.qOj],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(se,X){1&se&&f.GkF(0,0)},directives:[q],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),z}(),ie=function(){var z=function(Y){(0,d.Z)(X,Y);var se=(0,s.Z)(X);function X(){return(0,P.Z)(this,X),se.apply(this,arguments)}return(0,t.Z)(X)}(h.Ud);return z.\u0275fac=function(){var Y;return function(X){return(Y||(Y=f.n5z(z)))(X||z)}}(),z.\u0275dir=f.lG2({type:z,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[f._Bn([{provide:h.Ud,useExisting:z}]),f.qOj]}),z}(),V=function(){var z=(0,t.Z)(function Y(){(0,P.Z)(this,Y)});return z.\u0275fac=function(se){return new(se||z)},z.\u0275mod=f.oAB({type:z}),z.\u0275inj=f.cJS({imports:[[h.nZ,T.BQ],T.BQ]}),z}(),ue=function(){function z(Y,se,X,ne){(0,P.Z)(this,z),this.transformFunction=Y,this.getLevel=se,this.isExpandable=X,this.getChildren=ne}return(0,t.Z)(z,[{key:"_flattenNode",value:function(se,X,ne,ve){var Re=this,Ie=this.transformFunction(se,X);if(ne.push(Ie),this.isExpandable(Ie)){var Ee=this.getChildren(se);Ee&&(Array.isArray(Ee)?this._flattenChildren(Ee,X,ne,ve):Ee.pipe((0,Q.q)(1)).subscribe(function(ge){Re._flattenChildren(ge,X,ne,ve)}))}return ne}},{key:"_flattenChildren",value:function(se,X,ne,ve){var Re=this;se.forEach(function(Ie,Ee){var ge=ve.slice();ge.push(Ee!=se.length-1),Re._flattenNode(Ie,X+1,ne,ge)})}},{key:"flattenNodes",value:function(se){var X=this,ne=[];return se.forEach(function(ve){return X._flattenNode(ve,0,ne,[])}),ne}},{key:"expandFlattenedNodes",value:function(se,X){var ne=this,ve=[],Re=[];return Re[0]=!0,se.forEach(function(Ie){for(var Ee=!0,ge=0;ge<=ne.getLevel(Ie);ge++)Ee=Ee&&Re[ge];Ee&&ve.push(Ie),ne.isExpandable(Ie)&&(Re[ne.getLevel(Ie)+1]=X.isExpanded(Ie))}),ve}}]),z}(),R=function(z){(0,d.Z)(se,z);var Y=(0,s.Z)(se);function se(X,ne,ve){var Re;return(0,P.Z)(this,se),(Re=Y.call(this))._treeControl=X,Re._treeFlattener=ne,Re._flattenedData=new v.X([]),Re._expandedData=new v.X([]),Re._data=new v.X([]),ve&&(Re.data=ve),Re}return(0,t.Z)(se,[{key:"data",get:function(){return this._data.value},set:function(ne){this._data.next(ne),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}},{key:"connect",value:function(ne){var ve=this;return(0,j.T)(ne.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe((0,J.U)(function(){return ve._expandedData.next(ve._treeFlattener.expandFlattenedNodes(ve._flattenedData.value,ve._treeControl)),ve._expandedData.value}))}},{key:"disconnect",value:function(){}}]),se}(I.o2),r=function(z){(0,d.Z)(se,z);var Y=(0,s.Z)(se);function se(){var X;return(0,P.Z)(this,se),(X=Y.apply(this,arguments))._data=new v.X([]),X}return(0,t.Z)(se,[{key:"data",get:function(){return this._data.value},set:function(ne){this._data.next(ne)}},{key:"connect",value:function(ne){var ve=this;return j.T.apply(void 0,[ne.viewChange,this._data]).pipe((0,J.U)(function(){return ve.data}))}},{key:"disconnect",value:function(){}}]),se}(I.o2)},57481:function(dt,K,n){"use strict";n.d(K,{Qb:function(){return Ra},PW:function(){return br}});var P=n(32090),t=n(78069),e=n(48047),p=n(24582),d=n(7318),s=n(76442),h=n(50318),f=n(31631),T=n(95106),B=n(86170);function I(){return"undefined"!=typeof window&&void 0!==window.document}function v(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function j(Tt){switch(Tt.length){case 0:return new f.ZN;case 1:return Tt[0];default:return new f.ZE(Tt)}}function Q(Tt,Ke,oe,Ce){var at=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},ee=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},me=[],Ne=[],Ye=-1,ht=null;if(Ce.forEach(function(on){var Pn=on.offset,Yn=Pn==Ye,Wn=Yn&&ht||{};Object.keys(on).forEach(function(st){var $t=st,ze=on[st];if("offset"!==st)switch($t=Ke.normalizePropertyName($t,me),ze){case f.k1:ze=at[st];break;case f.l3:ze=ee[st];break;default:ze=Ke.normalizeStyleValue(st,$t,ze,me)}Wn[$t]=ze}),Yn||Ne.push(Wn),ht=Wn,Ye=Pn}),me.length){var At="\n - ";throw new Error("Unable to animate due to the following errors:".concat(At).concat(me.join(At)))}return Ne}function J(Tt,Ke,oe,Ce){switch(Ke){case"start":Tt.onStart(function(){return Ce(oe&&Z(oe,"start",Tt))});break;case"done":Tt.onDone(function(){return Ce(oe&&Z(oe,"done",Tt))});break;case"destroy":Tt.onDestroy(function(){return Ce(oe&&Z(oe,"destroy",Tt))})}}function Z(Tt,Ke,oe){var Ce=oe.totalTime,ee=A(Tt.element,Tt.triggerName,Tt.fromState,Tt.toState,Ke||Tt.phaseName,null==Ce?Tt.totalTime:Ce,!!oe.disabled),me=Tt._data;return null!=me&&(ee._data=me),ee}function A(Tt,Ke,oe,Ce){var at=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",ee=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,me=arguments.length>6?arguments[6]:void 0;return{element:Tt,triggerName:Ke,fromState:oe,toState:Ce,phaseName:at,totalTime:ee,disabled:!!me}}function N(Tt,Ke,oe){var Ce;return Tt instanceof Map?(Ce=Tt.get(Ke))||Tt.set(Ke,Ce=oe):(Ce=Tt[Ke])||(Ce=Tt[Ke]=oe),Ce}function E(Tt){var Ke=Tt.indexOf(":");return[Tt.substring(1,Ke),Tt.substr(Ke+1)]}var k=function(Ke,oe){return!1},q=function(Ke,oe,Ce){return[]};(v()||"undefined"!=typeof Element)&&(k=I()?function(Ke,oe){for(;oe&&oe!==document.documentElement;){if(oe===Ke)return!0;oe=oe.parentNode||oe.host}return!1}:function(Ke,oe){return Ke.contains(oe)},q=function(Ke,oe,Ce){if(Ce)return Array.from(Ke.querySelectorAll(oe));var at=Ke.querySelector(oe);return at?[at]:[]});var H=null,V=!1;function ue(Tt){H||(H=function R(){return"undefined"!=typeof document?document.body:null}()||{},V=!!H.style&&"WebkitAppearance"in H.style);var Ke=!0;return H.style&&!function ie(Tt){return"ebkit"==Tt.substring(1,6)}(Tt)&&!(Ke=Tt in H.style)&&V&&(Ke="Webkit"+Tt.charAt(0).toUpperCase()+Tt.substr(1)in H.style),Ke}var r=k,z=q,se=function(){var Tt=function(){function Ke(){(0,t.Z)(this,Ke)}return(0,e.Z)(Ke,[{key:"validateStyleProperty",value:function(Ce){return ue(Ce)}},{key:"matchesElement",value:function(Ce,at){return!1}},{key:"containsElement",value:function(Ce,at){return r(Ce,at)}},{key:"query",value:function(Ce,at,ee){return z(Ce,at,ee)}},{key:"computeStyle",value:function(Ce,at,ee){return ee||""}},{key:"animate",value:function(Ce,at,ee,me,Ne){return new f.ZN(ee,me)}}]),Ke}();return Tt.\u0275fac=function(oe){return new(oe||Tt)},Tt.\u0275prov=s.Yz7({token:Tt,factory:Tt.\u0275fac}),Tt}(),X=function(){var Tt=(0,e.Z)(function Ke(){(0,t.Z)(this,Ke)});return Tt.NOOP=new se,Tt}(),Ie="ng-enter",Ee="ng-leave",ge="ng-trigger",_t=".ng-trigger",wt="ng-animating",qt=".ng-animating";function Lt(Tt){if("number"==typeof Tt)return Tt;var Ke=Tt.match(/^(-?[\.\d]+)(m?s)/);return!Ke||Ke.length<2?0:Rt(parseFloat(Ke[1]),Ke[2])}function Rt(Tt,Ke){return"s"===Ke?1e3*Tt:Tt}function it(Tt,Ke,oe){return Tt.hasOwnProperty("duration")?Tt:function Qe(Tt,Ke,oe){var at,ee=0,me="";if("string"==typeof Tt){var Ne=Tt.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===Ne)return Ke.push('The provided timing value "'.concat(Tt,'" is invalid.')),{duration:0,delay:0,easing:""};at=Rt(parseFloat(Ne[1]),Ne[2]);var Ye=Ne[3];null!=Ye&&(ee=Rt(parseFloat(Ye),Ne[4]));var ht=Ne[5];ht&&(me=ht)}else at=Tt;if(!oe){var At=!1,on=Ke.length;at<0&&(Ke.push("Duration values below 0 are not allowed for this animation step."),At=!0),ee<0&&(Ke.push("Delay values below 0 are not allowed for this animation step."),At=!0),At&&Ke.splice(on,0,'The provided timing value "'.concat(Tt,'" is invalid.'))}return{duration:at,delay:ee,easing:me}}(Tt,Ke,oe)}function ot(Tt){var Ke=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(Tt).forEach(function(oe){Ke[oe]=Tt[oe]}),Ke}function xe(Tt,Ke){var oe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(Ke)for(var Ce in Tt)oe[Ce]=Tt[Ce];else ot(Tt,oe);return oe}function $e(Tt,Ke,oe){return oe?Ke+":"+oe+";":""}function Ge(Tt){for(var Ke="",oe=0;oe *";case":leave":return"* => void";case":increment":return function(oe,Ce){return parseFloat(Ce)>parseFloat(oe)};case":decrement":return function(oe,Ce){return parseFloat(Ce) *"}}(Tt,oe);if("function"==typeof Ce)return void Ke.push(Ce);Tt=Ce}var at=Tt.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==at||at.length<4)return oe.push('The provided transition expression "'.concat(Tt,'" is not supported')),Ke;var ee=at[1],me=at[2],Ne=at[3];Ke.push(_n(ee,Ne)),"<"==me[0]&&!("*"==ee&&"*"==Ne)&&Ke.push(_n(Ne,ee))}(Ce,oe,Ke)}):oe.push(Tt),oe}var gt=new Set(["true","1"]),Bt=new Set(["false","0"]);function _n(Tt,Ke){var oe=gt.has(Tt)||Bt.has(Tt),Ce=gt.has(Ke)||Bt.has(Ke);return function(at,ee){var me="*"==Tt||Tt==at,Ne="*"==Ke||Ke==ee;return!me&&oe&&"boolean"==typeof at&&(me=at?gt.has(Tt):Bt.has(Tt)),!Ne&&Ce&&"boolean"==typeof ee&&(Ne=ee?gt.has(Ke):Bt.has(Ke)),me&&Ne}}var Tn=new RegExp("s*".concat(":self","s*,?"),"g");function On(Tt,Ke,oe){return new Un(Tt).build(Ke,oe)}var Un=function(){function Tt(Ke){(0,t.Z)(this,Tt),this._driver=Ke}return(0,e.Z)(Tt,[{key:"build",value:function(oe,Ce){var at=new rn(Ce);return this._resetContextStyleTimingState(at),be(this,Te(oe),at)}},{key:"_resetContextStyleTimingState",value:function(oe){oe.currentQuerySelector="",oe.collectedStyles={},oe.collectedStyles[""]={},oe.currentTime=0}},{key:"visitTrigger",value:function(oe,Ce){var at=this,ee=Ce.queryCount=0,me=Ce.depCount=0,Ne=[],Ye=[];return"@"==oe.name.charAt(0)&&Ce.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),oe.definitions.forEach(function(ht){if(at._resetContextStyleTimingState(Ce),0==ht.type){var At=ht,on=At.name;on.toString().split(/\s*,\s*/).forEach(function(Yn){At.name=Yn,Ne.push(at.visitState(At,Ce))}),At.name=on}else if(1==ht.type){var Pn=at.visitTransition(ht,Ce);ee+=Pn.queryCount,me+=Pn.depCount,Ye.push(Pn)}else Ce.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:oe.name,states:Ne,transitions:Ye,queryCount:ee,depCount:me,options:null}}},{key:"visitState",value:function(oe,Ce){var at=this.visitStyle(oe.styles,Ce),ee=oe.options&&oe.options.params||null;if(at.containsDynamicStyles){var me=new Set,Ne=ee||{};if(at.styles.forEach(function(ht){if(jt(ht)){var At=ht;Object.keys(At).forEach(function(on){je(At[on]).forEach(function(Pn){Ne.hasOwnProperty(Pn)||me.add(Pn)})})}}),me.size){var Ye=Ft(me.values());Ce.errors.push('state("'.concat(oe.name,'", ...) must define default values for all the following style substitutions: ').concat(Ye.join(", ")))}}return{type:0,name:oe.name,style:at,options:ee?{params:ee}:null}}},{key:"visitTransition",value:function(oe,Ce){Ce.queryCount=0,Ce.depCount=0;var at=be(this,Te(oe.animation),Ce);return{type:1,matchers:$(oe.expr,Ce.errors),animation:at,queryCount:Ce.queryCount,depCount:Ce.depCount,options:et(oe.options)}}},{key:"visitSequence",value:function(oe,Ce){var at=this;return{type:2,steps:oe.steps.map(function(ee){return be(at,ee,Ce)}),options:et(oe.options)}}},{key:"visitGroup",value:function(oe,Ce){var at=this,ee=Ce.currentTime,me=0,Ne=oe.steps.map(function(Ye){Ce.currentTime=ee;var ht=be(at,Ye,Ce);return me=Math.max(me,Ce.currentTime),ht});return Ce.currentTime=me,{type:3,steps:Ne,options:et(oe.options)}}},{key:"visitAnimate",value:function(oe,Ce){var at=function Ue(Tt,Ke){var oe=null;if(Tt.hasOwnProperty("duration"))oe=Tt;else if("number"==typeof Tt)return De(it(Tt,Ke).duration,0,"");var at=Tt,ee=at.split(/\s+/).some(function(Ne){return"{"==Ne.charAt(0)&&"{"==Ne.charAt(1)});if(ee){var me=De(0,0,"");return me.dynamic=!0,me.strValue=at,me}return De((oe=oe||it(at,Ke)).duration,oe.delay,oe.easing)}(oe.timings,Ce.errors);Ce.currentAnimateTimings=at;var ee,me=oe.styles?oe.styles:(0,f.oB)({});if(5==me.type)ee=this.visitKeyframes(me,Ce);else{var Ne=oe.styles,Ye=!1;if(!Ne){Ye=!0;var ht={};at.easing&&(ht.easing=at.easing),Ne=(0,f.oB)(ht)}Ce.currentTime+=at.duration+at.delay;var At=this.visitStyle(Ne,Ce);At.isEmptyStep=Ye,ee=At}return Ce.currentAnimateTimings=null,{type:4,timings:at,style:ee,options:null}}},{key:"visitStyle",value:function(oe,Ce){var at=this._makeStyleAst(oe,Ce);return this._validateStyleAst(at,Ce),at}},{key:"_makeStyleAst",value:function(oe,Ce){var at=[];Array.isArray(oe.styles)?oe.styles.forEach(function(Ne){"string"==typeof Ne?Ne==f.l3?at.push(Ne):Ce.errors.push("The provided style string value ".concat(Ne," is not allowed.")):at.push(Ne)}):at.push(oe.styles);var ee=!1,me=null;return at.forEach(function(Ne){if(jt(Ne)){var Ye=Ne,ht=Ye.easing;if(ht&&(me=ht,delete Ye.easing),!ee)for(var At in Ye)if(Ye[At].toString().indexOf("{{")>=0){ee=!0;break}}}),{type:6,styles:at,easing:me,offset:oe.offset,containsDynamicStyles:ee,options:null}}},{key:"_validateStyleAst",value:function(oe,Ce){var at=this,ee=Ce.currentAnimateTimings,me=Ce.currentTime,Ne=Ce.currentTime;ee&&Ne>0&&(Ne-=ee.duration+ee.delay),oe.styles.forEach(function(Ye){"string"!=typeof Ye&&Object.keys(Ye).forEach(function(ht){if(at._driver.validateStyleProperty(ht)){var At=Ce.collectedStyles[Ce.currentQuerySelector],on=At[ht],Pn=!0;on&&(Ne!=me&&Ne>=on.startTime&&me<=on.endTime&&(Ce.errors.push('The CSS property "'.concat(ht,'" that exists between the times of "').concat(on.startTime,'ms" and "').concat(on.endTime,'ms" is also being animated in a parallel animation between the times of "').concat(Ne,'ms" and "').concat(me,'ms"')),Pn=!1),Ne=on.startTime),Pn&&(At[ht]={startTime:Ne,endTime:me}),Ce.options&&function vt(Tt,Ke,oe){var Ce=Ke.params||{},at=je(Tt);at.length&&at.forEach(function(ee){Ce.hasOwnProperty(ee)||oe.push("Unable to resolve the local animation param ".concat(ee," in the given list of values"))})}(Ye[ht],Ce.options,Ce.errors)}else Ce.errors.push('The provided animation property "'.concat(ht,'" is not a supported CSS property for animations'))})})}},{key:"visitKeyframes",value:function(oe,Ce){var at=this,ee={type:5,styles:[],options:null};if(!Ce.currentAnimateTimings)return Ce.errors.push("keyframes() must be placed inside of a call to animate()"),ee;var Ne=0,Ye=[],ht=!1,At=!1,on=0,Pn=oe.steps.map(function(ae){var de=at._makeStyleAst(ae,Ce),ye=null!=de.offset?de.offset:function sn(Tt){if("string"==typeof Tt)return null;var Ke=null;if(Array.isArray(Tt))Tt.forEach(function(Ce){if(jt(Ce)&&Ce.hasOwnProperty("offset")){var at=Ce;Ke=parseFloat(at.offset),delete at.offset}});else if(jt(Tt)&&Tt.hasOwnProperty("offset")){var oe=Tt;Ke=parseFloat(oe.offset),delete oe.offset}return Ke}(de.styles),Be=0;return null!=ye&&(Ne++,Be=de.offset=ye),At=At||Be<0||Be>1,ht=ht||Be0&&Ne0?de==st?1:Wn*de:Ye[de],Be=ye*Se;Ce.currentTime=$t+ze.delay+Be,ze.duration=Be,at._validateStyleAst(ae,Ce),ae.offset=ye,ee.styles.push(ae)}),ee}},{key:"visitReference",value:function(oe,Ce){return{type:8,animation:be(this,Te(oe.animation),Ce),options:et(oe.options)}}},{key:"visitAnimateChild",value:function(oe,Ce){return Ce.depCount++,{type:9,options:et(oe.options)}}},{key:"visitAnimateRef",value:function(oe,Ce){return{type:10,animation:this.visitReference(oe.animation,Ce),options:et(oe.options)}}},{key:"visitQuery",value:function(oe,Ce){var at=Ce.currentQuerySelector,ee=oe.options||{};Ce.queryCount++,Ce.currentQuery=oe;var me=function si(Tt){var Ke=!!Tt.split(/\s*,\s*/).find(function(oe){return":self"==oe});return Ke&&(Tt=Tt.replace(Tn,"")),Tt=Tt.replace(/@\*/g,_t).replace(/@\w+/g,function(oe){return _t+"-"+oe.substr(1)}).replace(/:animating/g,qt),[Tt,Ke]}(oe.selector),Ne=(0,P.Z)(me,2),Ye=Ne[0],ht=Ne[1];Ce.currentQuerySelector=at.length?at+" "+Ye:Ye,N(Ce.collectedStyles,Ce.currentQuerySelector,{});var At=be(this,Te(oe.animation),Ce);return Ce.currentQuery=null,Ce.currentQuerySelector=at,{type:11,selector:Ye,limit:ee.limit||0,optional:!!ee.optional,includeSelf:ht,animation:At,originalSelector:oe.selector,options:et(oe.options)}}},{key:"visitStagger",value:function(oe,Ce){Ce.currentQuery||Ce.errors.push("stagger() can only be used inside of query()");var at="full"===oe.timings?{duration:0,delay:0,easing:"full"}:it(oe.timings,Ce.errors,!0);return{type:12,animation:be(this,Te(oe.animation),Ce),timings:at,options:null}}}]),Tt}(),rn=(0,e.Z)(function Tt(Ke){(0,t.Z)(this,Tt),this.errors=Ke,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null});function jt(Tt){return!Array.isArray(Tt)&&"object"==typeof Tt}function et(Tt){return Tt?(Tt=ot(Tt)).params&&(Tt.params=function fi(Tt){return Tt?ot(Tt):null}(Tt.params)):Tt={},Tt}function De(Tt,Ke,oe){return{duration:Tt,delay:Ke,easing:oe}}function Ze(Tt,Ke,oe,Ce,at,ee){var me=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,Ne=arguments.length>7&&void 0!==arguments[7]&&arguments[7];return{type:1,element:Tt,keyframes:Ke,preStyleProps:oe,postStyleProps:Ce,duration:at,delay:ee,totalTime:at+ee,easing:me,subTimeline:Ne}}var Je=function(){function Tt(){(0,t.Z)(this,Tt),this._map=new Map}return(0,e.Z)(Tt,[{key:"get",value:function(oe){return this._map.get(oe)||[]}},{key:"append",value:function(oe,Ce){var at,ee=this._map.get(oe);ee||this._map.set(oe,ee=[]),(at=ee).push.apply(at,(0,B.Z)(Ce))}},{key:"has",value:function(oe){return this._map.has(oe)}},{key:"clear",value:function(){this._map.clear()}}]),Tt}(),kt=new RegExp(":enter","g"),Zn=new RegExp(":leave","g");function zt(Tt,Ke,oe,Ce,at){var ee=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},me=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},Ne=arguments.length>7?arguments[7]:void 0,Ye=arguments.length>8?arguments[8]:void 0,ht=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];return(new un).buildKeyframes(Tt,Ke,oe,Ce,at,ee,me,Ne,Ye,ht)}var un=function(){function Tt(){(0,t.Z)(this,Tt)}return(0,e.Z)(Tt,[{key:"buildKeyframes",value:function(oe,Ce,at,ee,me,Ne,Ye,ht,At){var on=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];At=At||new Je;var Pn=new ln(oe,Ce,At,ee,me,on,[]);Pn.options=ht,Pn.currentTimeline.setStyles([Ne],null,Pn.errors,ht),be(this,at,Pn);var Yn=Pn.timelines.filter(function(ze){return ze.containsAnimation()});if(Object.keys(Ye).length){for(var Wn,st=Yn.length-1;st>=0;st--){var $t=Yn[st];if($t.element===Ce){Wn=$t;break}}Wn&&!Wn.allowOnlyTimelineStyles()&&Wn.setStyles([Ye],null,Pn.errors,ht)}return Yn.length?Yn.map(function(ze){return ze.buildKeyframes()}):[Ze(Ce,[],[],[],0,0,"",!1)]}},{key:"visitTrigger",value:function(oe,Ce){}},{key:"visitState",value:function(oe,Ce){}},{key:"visitTransition",value:function(oe,Ce){}},{key:"visitAnimateChild",value:function(oe,Ce){var at=Ce.subInstructions.get(Ce.element);if(at){var ee=Ce.createSubContext(oe.options),me=Ce.currentTimeline.currentTime,Ne=this._visitSubInstructions(at,ee,ee.options);me!=Ne&&Ce.transformIntoNewTimeline(Ne)}Ce.previousNode=oe}},{key:"visitAnimateRef",value:function(oe,Ce){var at=Ce.createSubContext(oe.options);at.transformIntoNewTimeline(),this.visitReference(oe.animation,at),Ce.transformIntoNewTimeline(at.currentTimeline.currentTime),Ce.previousNode=oe}},{key:"_visitSubInstructions",value:function(oe,Ce,at){var me=Ce.currentTimeline.currentTime,Ne=null!=at.duration?Lt(at.duration):null,Ye=null!=at.delay?Lt(at.delay):null;return 0!==Ne&&oe.forEach(function(ht){var At=Ce.appendInstructionToTimeline(ht,Ne,Ye);me=Math.max(me,At.duration+At.delay)}),me}},{key:"visitReference",value:function(oe,Ce){Ce.updateOptions(oe.options,!0),be(this,oe.animation,Ce),Ce.previousNode=oe}},{key:"visitSequence",value:function(oe,Ce){var at=this,ee=Ce.subContextCount,me=Ce,Ne=oe.options;if(Ne&&(Ne.params||Ne.delay)&&((me=Ce.createSubContext(Ne)).transformIntoNewTimeline(),null!=Ne.delay)){6==me.previousNode.type&&(me.currentTimeline.snapshotCurrentStyles(),me.previousNode=tn);var Ye=Lt(Ne.delay);me.delayNextStep(Ye)}oe.steps.length&&(oe.steps.forEach(function(ht){return be(at,ht,me)}),me.currentTimeline.applyStylesToKeyframe(),me.subContextCount>ee&&me.transformIntoNewTimeline()),Ce.previousNode=oe}},{key:"visitGroup",value:function(oe,Ce){var at=this,ee=[],me=Ce.currentTimeline.currentTime,Ne=oe.options&&oe.options.delay?Lt(oe.options.delay):0;oe.steps.forEach(function(Ye){var ht=Ce.createSubContext(oe.options);Ne&&ht.delayNextStep(Ne),be(at,Ye,ht),me=Math.max(me,ht.currentTimeline.currentTime),ee.push(ht.currentTimeline)}),ee.forEach(function(Ye){return Ce.currentTimeline.mergeTimelineCollectedStyles(Ye)}),Ce.transformIntoNewTimeline(me),Ce.previousNode=oe}},{key:"_visitTiming",value:function(oe,Ce){if(oe.dynamic){var at=oe.strValue;return it(Ce.params?Nt(at,Ce.params,Ce.errors):at,Ce.errors)}return{duration:oe.duration,delay:oe.delay,easing:oe.easing}}},{key:"visitAnimate",value:function(oe,Ce){var at=Ce.currentAnimateTimings=this._visitTiming(oe.timings,Ce),ee=Ce.currentTimeline;at.delay&&(Ce.incrementTime(at.delay),ee.snapshotCurrentStyles());var me=oe.style;5==me.type?this.visitKeyframes(me,Ce):(Ce.incrementTime(at.duration),this.visitStyle(me,Ce),ee.applyStylesToKeyframe()),Ce.currentAnimateTimings=null,Ce.previousNode=oe}},{key:"visitStyle",value:function(oe,Ce){var at=Ce.currentTimeline,ee=Ce.currentAnimateTimings;!ee&&at.getCurrentStyleProperties().length&&at.forwardFrame();var me=ee&&ee.easing||oe.easing;oe.isEmptyStep?at.applyEmptyStep(me):at.setStyles(oe.styles,me,Ce.errors,Ce.options),Ce.previousNode=oe}},{key:"visitKeyframes",value:function(oe,Ce){var at=Ce.currentAnimateTimings,ee=Ce.currentTimeline.duration,me=at.duration,Ye=Ce.createSubContext().currentTimeline;Ye.easing=at.easing,oe.styles.forEach(function(ht){Ye.forwardTime((ht.offset||0)*me),Ye.setStyles(ht.styles,ht.easing,Ce.errors,Ce.options),Ye.applyStylesToKeyframe()}),Ce.currentTimeline.mergeTimelineCollectedStyles(Ye),Ce.transformIntoNewTimeline(ee+me),Ce.previousNode=oe}},{key:"visitQuery",value:function(oe,Ce){var at=this,ee=Ce.currentTimeline.currentTime,me=oe.options||{},Ne=me.delay?Lt(me.delay):0;Ne&&(6===Ce.previousNode.type||0==ee&&Ce.currentTimeline.getCurrentStyleProperties().length)&&(Ce.currentTimeline.snapshotCurrentStyles(),Ce.previousNode=tn);var Ye=ee,ht=Ce.invokeQuery(oe.selector,oe.originalSelector,oe.limit,oe.includeSelf,!!me.optional,Ce.errors);Ce.currentQueryTotal=ht.length;var At=null;ht.forEach(function(on,Pn){Ce.currentQueryIndex=Pn;var Yn=Ce.createSubContext(oe.options,on);Ne&&Yn.delayNextStep(Ne),on===Ce.element&&(At=Yn.currentTimeline),be(at,oe.animation,Yn),Yn.currentTimeline.applyStylesToKeyframe(),Ye=Math.max(Ye,Yn.currentTimeline.currentTime)}),Ce.currentQueryIndex=0,Ce.currentQueryTotal=0,Ce.transformIntoNewTimeline(Ye),At&&(Ce.currentTimeline.mergeTimelineCollectedStyles(At),Ce.currentTimeline.snapshotCurrentStyles()),Ce.previousNode=oe}},{key:"visitStagger",value:function(oe,Ce){var at=Ce.parentContext,ee=Ce.currentTimeline,me=oe.timings,Ne=Math.abs(me.duration),Ye=Ne*(Ce.currentQueryTotal-1),ht=Ne*Ce.currentQueryIndex;switch(me.duration<0?"reverse":me.easing){case"reverse":ht=Ye-ht;break;case"full":ht=at.currentStaggerTime}var on=Ce.currentTimeline;ht&&on.delayNextStep(ht);var Pn=on.currentTime;be(this,oe.animation,Ce),Ce.previousNode=oe,at.currentStaggerTime=ee.currentTime-Pn+(ee.startTime-at.currentTimeline.startTime)}}]),Tt}(),tn={},ln=function(){function Tt(Ke,oe,Ce,at,ee,me,Ne,Ye){(0,t.Z)(this,Tt),this._driver=Ke,this.element=oe,this.subInstructions=Ce,this._enterClassName=at,this._leaveClassName=ee,this.errors=me,this.timelines=Ne,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=tn,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=Ye||new gn(this._driver,oe,0),Ne.push(this.currentTimeline)}return(0,e.Z)(Tt,[{key:"params",get:function(){return this.options.params}},{key:"updateOptions",value:function(oe,Ce){var at=this;if(oe){var ee=oe,me=this.options;null!=ee.duration&&(me.duration=Lt(ee.duration)),null!=ee.delay&&(me.delay=Lt(ee.delay));var Ne=ee.params;if(Ne){var Ye=me.params;Ye||(Ye=this.options.params={}),Object.keys(Ne).forEach(function(ht){(!Ce||!Ye.hasOwnProperty(ht))&&(Ye[ht]=Nt(Ne[ht],Ye,at.errors))})}}}},{key:"_copyOptions",value:function(){var oe={};if(this.options){var Ce=this.options.params;if(Ce){var at=oe.params={};Object.keys(Ce).forEach(function(ee){at[ee]=Ce[ee]})}}return oe}},{key:"createSubContext",value:function(){var oe=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,Ce=arguments.length>1?arguments[1]:void 0,at=arguments.length>2?arguments[2]:void 0,ee=Ce||this.element,me=new Tt(this._driver,ee,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(ee,at||0));return me.previousNode=this.previousNode,me.currentAnimateTimings=this.currentAnimateTimings,me.options=this._copyOptions(),me.updateOptions(oe),me.currentQueryIndex=this.currentQueryIndex,me.currentQueryTotal=this.currentQueryTotal,me.parentContext=this,this.subContextCount++,me}},{key:"transformIntoNewTimeline",value:function(oe){return this.previousNode=tn,this.currentTimeline=this.currentTimeline.fork(this.element,oe),this.timelines.push(this.currentTimeline),this.currentTimeline}},{key:"appendInstructionToTimeline",value:function(oe,Ce,at){var ee={duration:null!=Ce?Ce:oe.duration,delay:this.currentTimeline.currentTime+(null!=at?at:0)+oe.delay,easing:""},me=new An(this._driver,oe.element,oe.keyframes,oe.preStyleProps,oe.postStyleProps,ee,oe.stretchStartingKeyframe);return this.timelines.push(me),ee}},{key:"incrementTime",value:function(oe){this.currentTimeline.forwardTime(this.currentTimeline.duration+oe)}},{key:"delayNextStep",value:function(oe){oe>0&&this.currentTimeline.delayNextStep(oe)}},{key:"invokeQuery",value:function(oe,Ce,at,ee,me,Ne){var Ye=[];if(ee&&Ye.push(this.element),oe.length>0){oe=(oe=oe.replace(kt,"."+this._enterClassName)).replace(Zn,"."+this._leaveClassName);var At=this._driver.query(this.element,oe,1!=at);0!==at&&(At=at<0?At.slice(At.length+at,At.length):At.slice(0,at)),Ye.push.apply(Ye,(0,B.Z)(At))}return!me&&0==Ye.length&&Ne.push('`query("'.concat(Ce,'")` returned zero elements. (Use `query("').concat(Ce,'", { optional: true })` if you wish to allow this.)')),Ye}}]),Tt}(),gn=function(){function Tt(Ke,oe,Ce,at){(0,t.Z)(this,Tt),this._driver=Ke,this.element=oe,this.startTime=Ce,this._elementTimelineStylesLookup=at,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(oe),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(oe,this._localTimelineStyles)),this._loadKeyframe()}return(0,e.Z)(Tt,[{key:"containsAnimation",value:function(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}},{key:"getCurrentStyleProperties",value:function(){return Object.keys(this._currentKeyframe)}},{key:"currentTime",get:function(){return this.startTime+this.duration}},{key:"delayNextStep",value:function(oe){var Ce=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||Ce?(this.forwardTime(this.currentTime+oe),Ce&&this.snapshotCurrentStyles()):this.startTime+=oe}},{key:"fork",value:function(oe,Ce){return this.applyStylesToKeyframe(),new Tt(this._driver,oe,Ce||this.currentTime,this._elementTimelineStylesLookup)}},{key:"_loadKeyframe",value:function(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}},{key:"forwardFrame",value:function(){this.duration+=1,this._loadKeyframe()}},{key:"forwardTime",value:function(oe){this.applyStylesToKeyframe(),this.duration=oe,this._loadKeyframe()}},{key:"_updateStyle",value:function(oe,Ce){this._localTimelineStyles[oe]=Ce,this._globalTimelineStyles[oe]=Ce,this._styleSummary[oe]={time:this.currentTime,value:Ce}}},{key:"allowOnlyTimelineStyles",value:function(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}},{key:"applyEmptyStep",value:function(oe){var Ce=this;oe&&(this._previousKeyframe.easing=oe),Object.keys(this._globalTimelineStyles).forEach(function(at){Ce._backFill[at]=Ce._globalTimelineStyles[at]||f.l3,Ce._currentKeyframe[at]=f.l3}),this._currentEmptyStepKeyframe=this._currentKeyframe}},{key:"setStyles",value:function(oe,Ce,at,ee){var me=this;Ce&&(this._previousKeyframe.easing=Ce);var Ne=ee&&ee.params||{},Ye=function ai(Tt,Ke){var Ce,oe={};return Tt.forEach(function(at){"*"===at?(Ce=Ce||Object.keys(Ke)).forEach(function(ee){oe[ee]=f.l3}):xe(at,!1,oe)}),oe}(oe,this._globalTimelineStyles);Object.keys(Ye).forEach(function(ht){var At=Nt(Ye[ht],Ne,at);me._pendingStyles[ht]=At,me._localTimelineStyles.hasOwnProperty(ht)||(me._backFill[ht]=me._globalTimelineStyles.hasOwnProperty(ht)?me._globalTimelineStyles[ht]:f.l3),me._updateStyle(ht,At)})}},{key:"applyStylesToKeyframe",value:function(){var oe=this,Ce=this._pendingStyles,at=Object.keys(Ce);0!=at.length&&(this._pendingStyles={},at.forEach(function(ee){oe._currentKeyframe[ee]=Ce[ee]}),Object.keys(this._localTimelineStyles).forEach(function(ee){oe._currentKeyframe.hasOwnProperty(ee)||(oe._currentKeyframe[ee]=oe._localTimelineStyles[ee])}))}},{key:"snapshotCurrentStyles",value:function(){var oe=this;Object.keys(this._localTimelineStyles).forEach(function(Ce){var at=oe._localTimelineStyles[Ce];oe._pendingStyles[Ce]=at,oe._updateStyle(Ce,at)})}},{key:"getFinalKeyframe",value:function(){return this._keyframes.get(this.duration)}},{key:"properties",get:function(){var oe=[];for(var Ce in this._currentKeyframe)oe.push(Ce);return oe}},{key:"mergeTimelineCollectedStyles",value:function(oe){var Ce=this;Object.keys(oe._styleSummary).forEach(function(at){var ee=Ce._styleSummary[at],me=oe._styleSummary[at];(!ee||me.time>ee.time)&&Ce._updateStyle(at,me.value)})}},{key:"buildKeyframes",value:function(){var oe=this;this.applyStylesToKeyframe();var Ce=new Set,at=new Set,ee=1===this._keyframes.size&&0===this.duration,me=[];this._keyframes.forEach(function(on,Pn){var Yn=xe(on,!0);Object.keys(Yn).forEach(function(Wn){var st=Yn[Wn];st==f.k1?Ce.add(Wn):st==f.l3&&at.add(Wn)}),ee||(Yn.offset=Pn/oe.duration),me.push(Yn)});var Ne=Ce.size?Ft(Ce.values()):[],Ye=at.size?Ft(at.values()):[];if(ee){var ht=me[0],At=ot(ht);ht.offset=0,At.offset=1,me=[ht,At]}return Ze(this.element,me,Ne,Ye,this.duration,this.startTime,this.easing,!1)}}]),Tt}(),An=function(Tt){(0,p.Z)(oe,Tt);var Ke=(0,d.Z)(oe);function oe(Ce,at,ee,me,Ne,Ye){var ht,At=arguments.length>6&&void 0!==arguments[6]&&arguments[6];return(0,t.Z)(this,oe),(ht=Ke.call(this,Ce,at,Ye.delay)).keyframes=ee,ht.preStyleProps=me,ht.postStyleProps=Ne,ht._stretchStartingKeyframe=At,ht.timings={duration:Ye.duration,delay:Ye.delay,easing:Ye.easing},ht}return(0,e.Z)(oe,[{key:"containsAnimation",value:function(){return this.keyframes.length>1}},{key:"buildKeyframes",value:function(){var at=this.keyframes,ee=this.timings,me=ee.delay,Ne=ee.duration,Ye=ee.easing;if(this._stretchStartingKeyframe&&me){var ht=[],At=Ne+me,on=me/At,Pn=xe(at[0],!1);Pn.offset=0,ht.push(Pn);var Yn=xe(at[0],!1);Yn.offset=Nn(on),ht.push(Yn);for(var Wn=at.length-1,st=1;st<=Wn;st++){var $t=xe(at[st],!1);$t.offset=Nn((me+$t.offset*Ne)/At),ht.push($t)}Ne=At,me=0,Ye="",at=ht}return Ze(this.element,at,this.preStyleProps,this.postStyleProps,Ne,me,Ye,!0)}}]),oe}(gn);function Nn(Tt){var Ke=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,oe=Math.pow(10,Ke-1);return Math.round(Tt*oe)/oe}var Si=(0,e.Z)(function Tt(){(0,t.Z)(this,Tt)}),Oa=function(Tt){(0,p.Z)(oe,Tt);var Ke=(0,d.Z)(oe);function oe(){return(0,t.Z)(this,oe),Ke.apply(this,arguments)}return(0,e.Z)(oe,[{key:"normalizePropertyName",value:function(at,ee){return St(at)}},{key:"normalizeStyleValue",value:function(at,ee,me,Ne){var Ye="",ht=me.toString().trim();if(Ea[ee]&&0!==me&&"0"!==me)if("number"==typeof me)Ye="px";else{var At=me.match(/^[+-]?[\d\.]+([a-z]*)$/);At&&0==At[1].length&&Ne.push("Please provide a CSS unit value for ".concat(at,":").concat(me))}return ht+Ye}}]),oe}(Si),Ea=function(){return function ea(Tt){var Ke={};return Tt.forEach(function(oe){return Ke[oe]=!0}),Ke}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(","))}();function ja(Tt,Ke,oe,Ce,at,ee,me,Ne,Ye,ht,At,on,Pn){return{type:0,element:Tt,triggerName:Ke,isRemovalTransition:at,fromState:oe,fromStyles:ee,toState:Ce,toStyles:me,timelines:Ne,queriedElements:Ye,preStyleProps:ht,postStyleProps:At,totalTime:on,errors:Pn}}var tr={},da=function(){function Tt(Ke,oe,Ce){(0,t.Z)(this,Tt),this._triggerName=Ke,this.ast=oe,this._stateStyles=Ce}return(0,e.Z)(Tt,[{key:"match",value:function(oe,Ce,at,ee){return function Na(Tt,Ke,oe,Ce,at){return Tt.some(function(ee){return ee(Ke,oe,Ce,at)})}(this.ast.matchers,oe,Ce,at,ee)}},{key:"buildStyles",value:function(oe,Ce,at){var ee=this._stateStyles["*"],me=this._stateStyles[oe],Ne=ee?ee.buildStyles(Ce,at):{};return me?me.buildStyles(Ce,at):Ne}},{key:"build",value:function(oe,Ce,at,ee,me,Ne,Ye,ht,At,on){var Pn=[],Yn=this.ast.options&&this.ast.options.params||tr,st=this.buildStyles(at,Ye&&Ye.params||tr,Pn),$t=ht&&ht.params||tr,ze=this.buildStyles(ee,$t,Pn),Se=new Set,ae=new Map,de=new Map,ye="void"===ee,Be={params:Object.assign(Object.assign({},Yn),$t)},nt=on?[]:zt(oe,Ce,this.ast.animation,me,Ne,st,ze,Be,At,Pn),Dt=0;if(nt.forEach(function(kn){Dt=Math.max(kn.duration+kn.delay,Dt)}),Pn.length)return ja(Ce,this._triggerName,at,ee,ye,st,ze,[],[],ae,de,Dt,Pn);nt.forEach(function(kn){var ni=kn.element,Ti=N(ae,ni,{});kn.preStyleProps.forEach(function(ra){return Ti[ra]=!0});var Pa=N(de,ni,{});kn.postStyleProps.forEach(function(ra){return Pa[ra]=!0}),ni!==Ce&&Se.add(ni)});var cn=Ft(Se.values());return ja(Ce,this._triggerName,at,ee,ye,st,ze,nt,cn,ae,de,Dt)}}]),Tt}(),ta=function(){function Tt(Ke,oe,Ce){(0,t.Z)(this,Tt),this.styles=Ke,this.defaultParams=oe,this.normalizer=Ce}return(0,e.Z)(Tt,[{key:"buildStyles",value:function(oe,Ce){var at=this,ee={},me=ot(this.defaultParams);return Object.keys(oe).forEach(function(Ne){var Ye=oe[Ne];null!=Ye&&(me[Ne]=Ye)}),this.styles.styles.forEach(function(Ne){if("string"!=typeof Ne){var Ye=Ne;Object.keys(Ye).forEach(function(ht){var At=Ye[ht];At.length>1&&(At=Nt(At,me,Ce));var on=at.normalizer.normalizePropertyName(ht,Ce);At=at.normalizer.normalizeStyleValue(ht,on,At,Ce),ee[on]=At})}}),ee}}]),Tt}(),yn=function(){function Tt(Ke,oe,Ce){var at=this;(0,t.Z)(this,Tt),this.name=Ke,this.ast=oe,this._normalizer=Ce,this.transitionFactories=[],this.states={},oe.states.forEach(function(ee){at.states[ee.name]=new ta(ee.style,ee.options&&ee.options.params||{},Ce)}),Pe(this.states,"true","1"),Pe(this.states,"false","0"),oe.transitions.forEach(function(ee){at.transitionFactories.push(new da(Ke,ee,at.states))}),this.fallbackTransition=function Ct(Tt,Ke,oe){return new da(Tt,{type:1,animation:{type:2,steps:[],options:null},matchers:[function(me,Ne){return!0}],options:null,queryCount:0,depCount:0},Ke)}(Ke,this.states)}return(0,e.Z)(Tt,[{key:"containsQueries",get:function(){return this.ast.queryCount>0}},{key:"matchTransition",value:function(oe,Ce,at,ee){return this.transitionFactories.find(function(Ne){return Ne.match(oe,Ce,at,ee)})||null}},{key:"matchStyles",value:function(oe,Ce,at){return this.fallbackTransition.buildStyles(oe,Ce,at)}}]),Tt}();function Pe(Tt,Ke,oe){Tt.hasOwnProperty(Ke)?Tt.hasOwnProperty(oe)||(Tt[oe]=Tt[Ke]):Tt.hasOwnProperty(oe)&&(Tt[Ke]=Tt[oe])}var It=new Je,Jt=function(){function Tt(Ke,oe,Ce){(0,t.Z)(this,Tt),this.bodyNode=Ke,this._driver=oe,this._normalizer=Ce,this._animations={},this._playersById={},this.players=[]}return(0,e.Z)(Tt,[{key:"register",value:function(oe,Ce){var at=[],ee=On(this._driver,Ce,at);if(at.length)throw new Error("Unable to build the animation due to the following errors: ".concat(at.join("\n")));this._animations[oe]=ee}},{key:"_buildPlayer",value:function(oe,Ce,at){var ee=oe.element,me=Q(this._driver,this._normalizer,ee,oe.keyframes,Ce,at);return this._driver.animate(ee,me,oe.duration,oe.delay,oe.easing,[],!0)}},{key:"create",value:function(oe,Ce){var Ye,at=this,ee=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},me=[],Ne=this._animations[oe],ht=new Map;if(Ne?(Ye=zt(this._driver,Ce,Ne,Ie,Ee,{},{},ee,It,me)).forEach(function(Pn){var Yn=N(ht,Pn.element,{});Pn.postStyleProps.forEach(function(Wn){return Yn[Wn]=null})}):(me.push("The requested animation doesn't exist or has already been destroyed"),Ye=[]),me.length)throw new Error("Unable to create the animation due to the following errors: ".concat(me.join("\n")));ht.forEach(function(Pn,Yn){Object.keys(Pn).forEach(function(Wn){Pn[Wn]=at._driver.computeStyle(Yn,Wn,f.l3)})});var At=Ye.map(function(Pn){var Yn=ht.get(Pn.element);return at._buildPlayer(Pn,{},Yn)}),on=j(At);return this._playersById[oe]=on,on.onDestroy(function(){return at.destroy(oe)}),this.players.push(on),on}},{key:"destroy",value:function(oe){var Ce=this._getPlayer(oe);Ce.destroy(),delete this._playersById[oe];var at=this.players.indexOf(Ce);at>=0&&this.players.splice(at,1)}},{key:"_getPlayer",value:function(oe){var Ce=this._playersById[oe];if(!Ce)throw new Error("Unable to find the timeline player referenced by ".concat(oe));return Ce}},{key:"listen",value:function(oe,Ce,at,ee){var me=A(Ce,"","","");return J(this._getPlayer(oe),at,me,ee),function(){}}},{key:"command",value:function(oe,Ce,at,ee){if("register"!=at)if("create"!=at){var Ne=this._getPlayer(oe);switch(at){case"play":Ne.play();break;case"pause":Ne.pause();break;case"reset":Ne.reset();break;case"restart":Ne.restart();break;case"finish":Ne.finish();break;case"init":Ne.init();break;case"setPosition":Ne.setPosition(parseFloat(ee[0]));break;case"destroy":this.destroy(oe)}}else this.create(oe,Ce,ee[0]||{});else this.register(oe,ee[0])}}]),Tt}(),vn="ng-animate-queued",ui="ng-animate-disabled",Ii="ng-star-inserted",Ci=[],Wi={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},xa={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},oa="__ng_removed",Yi=function(){function Tt(Ke){var oe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";(0,t.Z)(this,Tt),this.namespaceId=oe;var Ce=Ke&&Ke.hasOwnProperty("value"),at=Ce?Ke.value:Ke;if(this.value=Xt(at),Ce){var ee=ot(Ke);delete ee.value,this.options=ee}else this.options={};this.options.params||(this.options.params={})}return(0,e.Z)(Tt,[{key:"params",get:function(){return this.options.params}},{key:"absorbOptions",value:function(oe){var Ce=oe.params;if(Ce){var at=this.options.params;Object.keys(Ce).forEach(function(ee){null==at[ee]&&(at[ee]=Ce[ee])})}}}]),Tt}(),sa="void",Fi=new Yi(sa),va=function(){function Tt(Ke,oe,Ce){(0,t.Z)(this,Tt),this.id=Ke,this.hostElement=oe,this._engine=Ce,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+Ke,Zi(oe,this._hostClassName)}return(0,e.Z)(Tt,[{key:"listen",value:function(oe,Ce,at,ee){var me=this;if(!this._triggers.hasOwnProperty(Ce))throw new Error('Unable to listen on the animation trigger event "'.concat(at,'" because the animation trigger "').concat(Ce,"\" doesn't exist!"));if(null==at||0==at.length)throw new Error('Unable to listen on the animation trigger "'.concat(Ce,'" because the provided event is undefined!'));if(!function Hn(Tt){return"start"==Tt||"done"==Tt}(at))throw new Error('The provided animation trigger event "'.concat(at,'" for the animation trigger "').concat(Ce,'" is not supported!'));var Ne=N(this._elementListeners,oe,[]),Ye={name:Ce,phase:at,callback:ee};Ne.push(Ye);var ht=N(this._engine.statesByElement,oe,{});return ht.hasOwnProperty(Ce)||(Zi(oe,ge),Zi(oe,ge+"-"+Ce),ht[Ce]=Fi),function(){me._engine.afterFlush(function(){var At=Ne.indexOf(Ye);At>=0&&Ne.splice(At,1),me._triggers[Ce]||delete ht[Ce]})}}},{key:"register",value:function(oe,Ce){return!this._triggers[oe]&&(this._triggers[oe]=Ce,!0)}},{key:"_getTrigger",value:function(oe){var Ce=this._triggers[oe];if(!Ce)throw new Error('The provided animation trigger "'.concat(oe,'" has not been registered!'));return Ce}},{key:"trigger",value:function(oe,Ce,at){var ee=this,me=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],Ne=this._getTrigger(Ce),Ye=new Qt(this.id,Ce,oe),ht=this._engine.statesByElement.get(oe);ht||(Zi(oe,ge),Zi(oe,ge+"-"+Ce),this._engine.statesByElement.set(oe,ht={}));var At=ht[Ce],on=new Yi(at,this.id),Pn=at&&at.hasOwnProperty("value");!Pn&&At&&on.absorbOptions(At.options),ht[Ce]=on,At||(At=Fi);var Yn=on.value===sa;if(Yn||At.value!==on.value){var ze=N(this._engine.playersByElement,oe,[]);ze.forEach(function(de){de.namespaceId==ee.id&&de.triggerName==Ce&&de.queued&&de.destroy()});var Se=Ne.matchTransition(At.value,on.value,oe,on.params),ae=!1;if(!Se){if(!me)return;Se=Ne.fallbackTransition,ae=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:oe,triggerName:Ce,transition:Se,fromState:At,toState:on,player:Ye,isFallbackTransition:ae}),ae||(Zi(oe,vn),Ye.onStart(function(){Ai(oe,vn)})),Ye.onDone(function(){var de=ee.players.indexOf(Ye);de>=0&&ee.players.splice(de,1);var ye=ee._engine.playersByElement.get(oe);if(ye){var Be=ye.indexOf(Ye);Be>=0&&ye.splice(Be,1)}}),this.players.push(Ye),ze.push(Ye),Ye}if(!fr(At.params,on.params)){var Wn=[],st=Ne.matchStyles(At.value,At.params,Wn),$t=Ne.matchStyles(on.value,on.params,Wn);Wn.length?this._engine.reportError(Wn):this._engine.afterFlush(function(){Xe(oe,st),ct(oe,$t)})}}},{key:"deregister",value:function(oe){var Ce=this;delete this._triggers[oe],this._engine.statesByElement.forEach(function(at,ee){delete at[oe]}),this._elementListeners.forEach(function(at,ee){Ce._elementListeners.set(ee,at.filter(function(me){return me.name!=oe}))})}},{key:"clearElementCache",value:function(oe){this._engine.statesByElement.delete(oe),this._elementListeners.delete(oe);var Ce=this._engine.playersByElement.get(oe);Ce&&(Ce.forEach(function(at){return at.destroy()}),this._engine.playersByElement.delete(oe))}},{key:"_signalRemovalForInnerTriggers",value:function(oe,Ce){var at=this,ee=this._engine.driver.query(oe,_t,!0);ee.forEach(function(me){if(!me[oa]){var Ne=at._engine.fetchNamespacesByElement(me);Ne.size?Ne.forEach(function(Ye){return Ye.triggerLeaveAnimation(me,Ce,!1,!0)}):at.clearElementCache(me)}}),this._engine.afterFlushAnimationsDone(function(){return ee.forEach(function(me){return at.clearElementCache(me)})})}},{key:"triggerLeaveAnimation",value:function(oe,Ce,at,ee){var me=this,Ne=this._engine.statesByElement.get(oe),Ye=new Map;if(Ne){var ht=[];if(Object.keys(Ne).forEach(function(At){if(Ye.set(At,Ne[At].value),me._triggers[At]){var on=me.trigger(oe,At,sa,ee);on&&ht.push(on)}}),ht.length)return this._engine.markElementAsRemoved(this.id,oe,!0,Ce,Ye),at&&j(ht).onDone(function(){return me._engine.processLeaveNode(oe)}),!0}return!1}},{key:"prepareLeaveAnimationListeners",value:function(oe){var Ce=this,at=this._elementListeners.get(oe),ee=this._engine.statesByElement.get(oe);if(at&&ee){var me=new Set;at.forEach(function(Ne){var Ye=Ne.name;if(!me.has(Ye)){me.add(Ye);var At=Ce._triggers[Ye].fallbackTransition,on=ee[Ye]||Fi,Pn=new Yi(sa),Yn=new Qt(Ce.id,Ye,oe);Ce._engine.totalQueuedPlayers++,Ce._queue.push({element:oe,triggerName:Ye,transition:At,fromState:on,toState:Pn,player:Yn,isFallbackTransition:!0})}})}}},{key:"removeNode",value:function(oe,Ce){var at=this,ee=this._engine;if(oe.childElementCount&&this._signalRemovalForInnerTriggers(oe,Ce),!this.triggerLeaveAnimation(oe,Ce,!0)){var me=!1;if(ee.totalAnimations){var Ne=ee.players.length?ee.playersByQueriedElement.get(oe):[];if(Ne&&Ne.length)me=!0;else for(var Ye=oe;Ye=Ye.parentNode;)if(ee.statesByElement.get(Ye)){me=!0;break}}if(this.prepareLeaveAnimationListeners(oe),me)ee.markElementAsRemoved(this.id,oe,!1,Ce);else{var At=oe[oa];(!At||At===Wi)&&(ee.afterFlush(function(){return at.clearElementCache(oe)}),ee.destroyInnerAnimations(oe),ee._onRemovalComplete(oe,Ce))}}}},{key:"insertNode",value:function(oe,Ce){Zi(oe,this._hostClassName)}},{key:"drainQueuedTransitions",value:function(oe){var Ce=this,at=[];return this._queue.forEach(function(ee){var me=ee.player;if(!me.destroyed){var Ne=ee.element,Ye=Ce._elementListeners.get(Ne);Ye&&Ye.forEach(function(ht){if(ht.name==ee.triggerName){var At=A(Ne,ee.triggerName,ee.fromState.value,ee.toState.value);At._data=oe,J(ee.player,ht.phase,At,ht.callback)}}),me.markedForDestroy?Ce._engine.afterFlush(function(){me.destroy()}):at.push(ee)}}),this._queue=[],at.sort(function(ee,me){var Ne=ee.transition.ast.depCount,Ye=me.transition.ast.depCount;return 0==Ne||0==Ye?Ne-Ye:Ce._engine.driver.containsElement(ee.element,me.element)?1:-1})}},{key:"destroy",value:function(oe){this.players.forEach(function(Ce){return Ce.destroy()}),this._signalRemovalForInnerTriggers(this.hostElement,oe)}},{key:"elementContainsData",value:function(oe){var Ce=!1;return this._elementListeners.has(oe)&&(Ce=!0),!!this._queue.find(function(at){return at.element===oe})||Ce}}]),Tt}(),Za=function(){function Tt(Ke,oe,Ce){(0,t.Z)(this,Tt),this.bodyNode=Ke,this.driver=oe,this._normalizer=Ce,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=function(at,ee){}}return(0,e.Z)(Tt,[{key:"_onRemovalComplete",value:function(oe,Ce){this.onRemovalComplete(oe,Ce)}},{key:"queuedPlayers",get:function(){var oe=[];return this._namespaceList.forEach(function(Ce){Ce.players.forEach(function(at){at.queued&&oe.push(at)})}),oe}},{key:"createNamespace",value:function(oe,Ce){var at=new va(oe,Ce,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,Ce)?this._balanceNamespaceList(at,Ce):(this.newHostElements.set(Ce,at),this.collectEnterElement(Ce)),this._namespaceLookup[oe]=at}},{key:"_balanceNamespaceList",value:function(oe,Ce){var at=this._namespaceList.length-1;if(at>=0){for(var ee=!1,me=at;me>=0;me--)if(this.driver.containsElement(this._namespaceList[me].hostElement,Ce)){this._namespaceList.splice(me+1,0,oe),ee=!0;break}ee||this._namespaceList.splice(0,0,oe)}else this._namespaceList.push(oe);return this.namespacesByHostElement.set(Ce,oe),oe}},{key:"register",value:function(oe,Ce){var at=this._namespaceLookup[oe];return at||(at=this.createNamespace(oe,Ce)),at}},{key:"registerTrigger",value:function(oe,Ce,at){var ee=this._namespaceLookup[oe];ee&&ee.register(Ce,at)&&this.totalAnimations++}},{key:"destroy",value:function(oe,Ce){var at=this;if(oe){var ee=this._fetchNamespace(oe);this.afterFlush(function(){at.namespacesByHostElement.delete(ee.hostElement),delete at._namespaceLookup[oe];var me=at._namespaceList.indexOf(ee);me>=0&&at._namespaceList.splice(me,1)}),this.afterFlushAnimationsDone(function(){return ee.destroy(Ce)})}}},{key:"_fetchNamespace",value:function(oe){return this._namespaceLookup[oe]}},{key:"fetchNamespacesByElement",value:function(oe){var Ce=new Set,at=this.statesByElement.get(oe);if(at)for(var ee=Object.keys(at),me=0;me=0&&this.collectedLeaveElements.splice(Ne,1)}if(oe){var Ye=this._fetchNamespace(oe);Ye&&Ye.insertNode(Ce,at)}ee&&this.collectEnterElement(Ce)}}},{key:"collectEnterElement",value:function(oe){this.collectedEnterElements.push(oe)}},{key:"markElementAsDisabled",value:function(oe,Ce){Ce?this.disabledNodes.has(oe)||(this.disabledNodes.add(oe),Zi(oe,ui)):this.disabledNodes.has(oe)&&(this.disabledNodes.delete(oe),Ai(oe,ui))}},{key:"removeNode",value:function(oe,Ce,at,ee){if(Dn(Ce)){var me=oe?this._fetchNamespace(oe):null;if(me?me.removeNode(Ce,ee):this.markElementAsRemoved(oe,Ce,!1,ee),at){var Ne=this.namespacesByHostElement.get(Ce);Ne&&Ne.id!==oe&&Ne.removeNode(Ce,ee)}}else this._onRemovalComplete(Ce,ee)}},{key:"markElementAsRemoved",value:function(oe,Ce,at,ee,me){this.collectedLeaveElements.push(Ce),Ce[oa]={namespaceId:oe,setForRemoval:ee,hasAnimation:at,removedBeforeQueried:!1,previousTriggersValues:me}}},{key:"listen",value:function(oe,Ce,at,ee,me){return Dn(Ce)?this._fetchNamespace(oe).listen(Ce,at,ee,me):function(){}}},{key:"_buildInstruction",value:function(oe,Ce,at,ee,me){return oe.transition.build(this.driver,oe.element,oe.fromState.value,oe.toState.value,at,ee,oe.fromState.options,oe.toState.options,Ce,me)}},{key:"destroyInnerAnimations",value:function(oe){var Ce=this,at=this.driver.query(oe,_t,!0);at.forEach(function(ee){return Ce.destroyActiveAnimationsForElement(ee)}),0!=this.playersByQueriedElement.size&&(at=this.driver.query(oe,qt,!0)).forEach(function(ee){return Ce.finishActiveQueriedAnimationOnElement(ee)})}},{key:"destroyActiveAnimationsForElement",value:function(oe){var Ce=this.playersByElement.get(oe);Ce&&Ce.forEach(function(at){at.queued?at.markedForDestroy=!0:at.destroy()})}},{key:"finishActiveQueriedAnimationOnElement",value:function(oe){var Ce=this.playersByQueriedElement.get(oe);Ce&&Ce.forEach(function(at){return at.finish()})}},{key:"whenRenderingDone",value:function(){var oe=this;return new Promise(function(Ce){if(oe.players.length)return j(oe.players).onDone(function(){return Ce()});Ce()})}},{key:"processLeaveNode",value:function(oe){var at,Ce=this,ee=oe[oa];if(ee&&ee.setForRemoval){if(oe[oa]=Wi,ee.namespaceId){this.destroyInnerAnimations(oe);var me=this._fetchNamespace(ee.namespaceId);me&&me.clearElementCache(oe)}this._onRemovalComplete(oe,ee.setForRemoval)}(null===(at=oe.classList)||void 0===at?void 0:at.contains(ui))&&this.markElementAsDisabled(oe,!1),this.driver.query(oe,".ng-animate-disabled",!0).forEach(function(Ne){Ce.markElementAsDisabled(Ne,!1)})}},{key:"flush",value:function(){var oe=this,Ce=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,at=[];if(this.newHostElements.size&&(this.newHostElements.forEach(function(Pn,Yn){return oe._balanceNamespaceList(Pn,Yn)}),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(var ee=0;ee=0;Ti--)this._namespaceList[Ti].drainQueuedTransitions(Ce).forEach(function(bi){var Oi=bi.player,Pi=bi.element;if(kn.push(Oi),at.collectedEnterElements.length){var fa=Pi[oa];if(fa&&fa.setForMove){if(fa.previousTriggersValues&&fa.previousTriggersValues.has(bi.triggerName)){var nr=fa.previousTriggersValues.get(bi.triggerName),vo=at.statesByElement.get(bi.element);vo&&vo[bi.triggerName]&&(vo[bi.triggerName].value=nr)}return void Oi.destroy()}}var As=!Yn||!at.driver.containsElement(Yn,Pi),Go=Dt.get(Pi),fs=$t.get(Pi),ma=at._buildInstruction(bi,ee,fs,Go,As);if(ma.errors&&ma.errors.length)ni.push(ma);else{if(As)return Oi.onStart(function(){return Xe(Pi,ma.fromStyles)}),Oi.onDestroy(function(){return ct(Pi,ma.toStyles)}),void me.push(Oi);if(bi.isFallbackTransition)return Oi.onStart(function(){return Xe(Pi,ma.fromStyles)}),Oi.onDestroy(function(){return ct(Pi,ma.toStyles)}),void me.push(Oi);var Br=[];ma.timelines.forEach(function(Sn){Sn.stretchStartingKeyframe=!0,at.disabledNodes.has(Sn.element)||Br.push(Sn)}),ma.timelines=Br,ee.append(Pi,ma.timelines),Ye.push({instruction:ma,player:Oi,element:Pi}),ma.queriedElements.forEach(function(Sn){return N(ht,Sn,[]).push(Oi)}),ma.preStyleProps.forEach(function(Sn,Rn){var Fn=Object.keys(Sn);if(Fn.length){var mi=At.get(Rn);mi||At.set(Rn,mi=new Set),Fn.forEach(function(Li){return mi.add(Li)})}}),ma.postStyleProps.forEach(function(Sn,Rn){var Fn=Object.keys(Sn),mi=on.get(Rn);mi||on.set(Rn,mi=new Set),Fn.forEach(function(Li){return mi.add(Li)})})}});if(ni.length){var ra=[];ni.forEach(function(bi){ra.push("@".concat(bi.triggerName," has failed due to:\n")),bi.errors.forEach(function(Oi){return ra.push("- ".concat(Oi,"\n"))})}),kn.forEach(function(bi){return bi.destroy()}),this.reportError(ra)}var to=new Map,Ua=new Map;Ye.forEach(function(bi){var Oi=bi.element;ee.has(Oi)&&(Ua.set(Oi,Oi),at._beforeAnimationBuild(bi.player.namespaceId,bi.instruction,to))}),me.forEach(function(bi){var Oi=bi.element;at._getPreviousPlayers(Oi,!1,bi.namespaceId,bi.triggerName,null).forEach(function(fa){N(to,Oi,[]).push(fa),fa.destroy()})});var la=Se.filter(function(bi){return Or(bi,At,on)}),ka=new Map;vi(ka,this.driver,de,on,f.l3).forEach(function(bi){Or(bi,At,on)&&la.push(bi)});var go=new Map;st.forEach(function(bi,Oi){vi(go,at.driver,new Set(bi),At,f.k1)}),la.forEach(function(bi){var Oi=ka.get(bi),Pi=go.get(bi);ka.set(bi,Object.assign(Object.assign({},Oi),Pi))});var Ni=[],Rl=[],Ts={};Ye.forEach(function(bi){var Oi=bi.element,Pi=bi.player,fa=bi.instruction;if(ee.has(Oi)){if(Pn.has(Oi))return Pi.onDestroy(function(){return ct(Oi,fa.toStyles)}),Pi.disabled=!0,Pi.overrideTotalTime(fa.totalTime),void me.push(Pi);var nr=Ts;if(Ua.size>1){for(var vo=Oi,As=[];vo=vo.parentNode;){var Go=Ua.get(vo);if(Go){nr=Go;break}As.push(vo)}As.forEach(function(Br){return Ua.set(Br,nr)})}var fs=at._buildAnimation(Pi.namespaceId,fa,to,Ne,go,ka);if(Pi.setRealPlayer(fs),nr===Ts)Ni.push(Pi);else{var ma=at.playersByElement.get(nr);ma&&ma.length&&(Pi.parentPlayer=j(ma)),me.push(Pi)}}else Xe(Oi,fa.fromStyles),Pi.onDestroy(function(){return ct(Oi,fa.toStyles)}),Rl.push(Pi),Pn.has(Oi)&&me.push(Pi)}),Rl.forEach(function(bi){var Oi=Ne.get(bi.element);if(Oi&&Oi.length){var Pi=j(Oi);bi.setRealPlayer(Pi)}}),me.forEach(function(bi){bi.parentPlayer?bi.syncPlayerEvents(bi.parentPlayer):bi.destroy()});for(var $i=0;$i0?this.driver.animate(oe.element,Ce,oe.duration,oe.delay,oe.easing,at):new f.ZN(oe.duration,oe.delay)}}]),Tt}(),Qt=function(){function Tt(Ke,oe,Ce){(0,t.Z)(this,Tt),this.namespaceId=Ke,this.triggerName=oe,this.element=Ce,this._player=new f.ZN,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}return(0,e.Z)(Tt,[{key:"setRealPlayer",value:function(oe){var Ce=this;this._containsRealPlayer||(this._player=oe,Object.keys(this._queuedCallbacks).forEach(function(at){Ce._queuedCallbacks[at].forEach(function(ee){return J(oe,at,void 0,ee)})}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(oe.totalTime),this.queued=!1)}},{key:"getRealPlayer",value:function(){return this._player}},{key:"overrideTotalTime",value:function(oe){this.totalTime=oe}},{key:"syncPlayerEvents",value:function(oe){var Ce=this,at=this._player;at.triggerCallback&&oe.onStart(function(){return at.triggerCallback("start")}),oe.onDone(function(){return Ce.finish()}),oe.onDestroy(function(){return Ce.destroy()})}},{key:"_queueEvent",value:function(oe,Ce){N(this._queuedCallbacks,oe,[]).push(Ce)}},{key:"onDone",value:function(oe){this.queued&&this._queueEvent("done",oe),this._player.onDone(oe)}},{key:"onStart",value:function(oe){this.queued&&this._queueEvent("start",oe),this._player.onStart(oe)}},{key:"onDestroy",value:function(oe){this.queued&&this._queueEvent("destroy",oe),this._player.onDestroy(oe)}},{key:"init",value:function(){this._player.init()}},{key:"hasStarted",value:function(){return!this.queued&&this._player.hasStarted()}},{key:"play",value:function(){!this.queued&&this._player.play()}},{key:"pause",value:function(){!this.queued&&this._player.pause()}},{key:"restart",value:function(){!this.queued&&this._player.restart()}},{key:"finish",value:function(){this._player.finish()}},{key:"destroy",value:function(){this.destroyed=!0,this._player.destroy()}},{key:"reset",value:function(){!this.queued&&this._player.reset()}},{key:"setPosition",value:function(oe){this.queued||this._player.setPosition(oe)}},{key:"getPosition",value:function(){return this.queued?0:this._player.getPosition()}},{key:"triggerCallback",value:function(oe){var Ce=this._player;Ce.triggerCallback&&Ce.triggerCallback(oe)}}]),Tt}();function Xt(Tt){return null!=Tt?Tt:null}function Dn(Tt){return Tt&&1===Tt.nodeType}function Gn(Tt,Ke){var oe=Tt.style.display;return Tt.style.display=null!=Ke?Ke:"none",oe}function vi(Tt,Ke,oe,Ce,at){var ee=[];oe.forEach(function(Ye){return ee.push(Gn(Ye))});var me=[];Ce.forEach(function(Ye,ht){var At={};Ye.forEach(function(on){var Pn=At[on]=Ke.computeStyle(ht,on,at);(!Pn||0==Pn.length)&&(ht[oa]=xa,me.push(ht))}),Tt.set(ht,At)});var Ne=0;return oe.forEach(function(Ye){return Gn(Ye,ee[Ne++])}),me}function Vi(Tt,Ke){var oe=new Map;if(Tt.forEach(function(Ne){return oe.set(Ne,[])}),0==Ke.length)return oe;var at=new Set(Ke),ee=new Map;function me(Ne){if(!Ne)return 1;var Ye=ee.get(Ne);if(Ye)return Ye;var ht=Ne.parentNode;return Ye=oe.has(ht)?ht:at.has(ht)?1:me(ht),ee.set(Ne,Ye),Ye}return Ke.forEach(function(Ne){var Ye=me(Ne);1!==Ye&&oe.get(Ye).push(Ne)}),oe}function Zi(Tt,Ke){var oe;null===(oe=Tt.classList)||void 0===oe||oe.add(Ke)}function Ai(Tt,Ke){var oe;null===(oe=Tt.classList)||void 0===oe||oe.remove(Ke)}function Ja(Tt,Ke,oe){j(oe).onDone(function(){return Tt.processLeaveNode(Ke)})}function za(Tt,Ke){for(var oe=0;oe0&&void 0!==arguments[0]?arguments[0]:-1;this._transitionEngine.flush(oe)}},{key:"players",get:function(){return this._transitionEngine.players.concat(this._timelineEngine.players)}},{key:"whenRenderingDone",value:function(){return this._transitionEngine.whenRenderingDone()}}]),Tt}();function Dr(Tt,Ke){var oe=null,Ce=null;return Array.isArray(Ke)&&Ke.length?(oe=Rr(Ke[0]),Ke.length>1&&(Ce=Rr(Ke[Ke.length-1]))):Ke&&(oe=Rr(Ke)),oe||Ce?new Ga(Tt,oe,Ce):null}var Ga=function(){var Tt=function(){function Ke(oe,Ce,at){(0,t.Z)(this,Ke),this._element=oe,this._startStyles=Ce,this._endStyles=at,this._state=0;var ee=Ke.initialStylesByElement.get(oe);ee||Ke.initialStylesByElement.set(oe,ee={}),this._initialStyles=ee}return(0,e.Z)(Ke,[{key:"start",value:function(){this._state<1&&(this._startStyles&&ct(this._element,this._startStyles,this._initialStyles),this._state=1)}},{key:"finish",value:function(){this.start(),this._state<2&&(ct(this._element,this._initialStyles),this._endStyles&&(ct(this._element,this._endStyles),this._endStyles=null),this._state=1)}},{key:"destroy",value:function(){this.finish(),this._state<3&&(Ke.initialStylesByElement.delete(this._element),this._startStyles&&(Xe(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Xe(this._element,this._endStyles),this._endStyles=null),ct(this._element,this._initialStyles),this._state=3)}}]),Ke}();return Tt.initialStylesByElement=new WeakMap,Tt}();function Rr(Tt){for(var Ke=null,oe=Object.keys(Tt),Ce=0;Ce5&&void 0!==arguments[5]?arguments[5]:[],Ye=0==ee?"both":"forwards",ht={duration:at,delay:ee,fill:Ye};me&&(ht.easing=me);var At={},on=Ne.filter(function(Yn){return Yn instanceof fo});ut(at,ee)&&on.forEach(function(Yn){var Wn=Yn.currentSnapshot;Object.keys(Wn).forEach(function(st){return At[st]=Wn[st]})});var Pn=Dr(oe,Ce=yt(oe,Ce=Ce.map(function(Yn){return xe(Yn,!1)}),At));return new fo(oe,Ce,ht,Pn)}}]),Tt}(),Wo=n(36362),ya=function(){var Tt=function(Ke){(0,p.Z)(Ce,Ke);var oe=(0,d.Z)(Ce);function Ce(at,ee){var me;return(0,t.Z)(this,Ce),(me=oe.call(this))._nextAnimationId=0,me._renderer=at.createRenderer(ee.body,{id:"0",encapsulation:s.ifc.None,styles:[],data:{animation:[]}}),me}return(0,e.Z)(Ce,[{key:"build",value:function(ee){var me=this._nextAnimationId.toString();this._nextAnimationId++;var Ne=Array.isArray(ee)?(0,f.vP)(ee):ee;return yr(this._renderer,null,me,"register",[Ne]),new pa(me,this._renderer)}}]),Ce}(f._j);return Tt.\u0275fac=function(oe){return new(oe||Tt)(s.LFG(s.FYo),s.LFG(Wo.K0))},Tt.\u0275prov=s.Yz7({token:Tt,factory:Tt.\u0275fac}),Tt}(),pa=function(Tt){(0,p.Z)(oe,Tt);var Ke=(0,d.Z)(oe);function oe(Ce,at){var ee;return(0,t.Z)(this,oe),(ee=Ke.call(this))._id=Ce,ee._renderer=at,ee}return(0,e.Z)(oe,[{key:"create",value:function(at,ee){return new Ur(this._id,at,ee||{},this._renderer)}}]),oe}(f.LC),Ur=function(){function Tt(Ke,oe,Ce,at){(0,t.Z)(this,Tt),this.id=Ke,this.element=oe,this._renderer=at,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",Ce)}return(0,e.Z)(Tt,[{key:"_listen",value:function(oe,Ce){return this._renderer.listen(this.element,"@@".concat(this.id,":").concat(oe),Ce)}},{key:"_command",value:function(oe){for(var Ce=arguments.length,at=new Array(Ce>1?Ce-1:0),ee=1;ee=0&&Ce3&&void 0!==arguments[3])||arguments[3];this.delegate.insertBefore(oe,Ce,at),this.engine.onInsert(this.namespaceId,Ce,oe,ee)}},{key:"removeChild",value:function(oe,Ce,at){this.engine.onRemove(this.namespaceId,Ce,this.delegate,at)}},{key:"selectRootElement",value:function(oe,Ce){return this.delegate.selectRootElement(oe,Ce)}},{key:"parentNode",value:function(oe){return this.delegate.parentNode(oe)}},{key:"nextSibling",value:function(oe){return this.delegate.nextSibling(oe)}},{key:"setAttribute",value:function(oe,Ce,at,ee){this.delegate.setAttribute(oe,Ce,at,ee)}},{key:"removeAttribute",value:function(oe,Ce,at){this.delegate.removeAttribute(oe,Ce,at)}},{key:"addClass",value:function(oe,Ce){this.delegate.addClass(oe,Ce)}},{key:"removeClass",value:function(oe,Ce){this.delegate.removeClass(oe,Ce)}},{key:"setStyle",value:function(oe,Ce,at,ee){this.delegate.setStyle(oe,Ce,at,ee)}},{key:"removeStyle",value:function(oe,Ce,at){this.delegate.removeStyle(oe,Ce,at)}},{key:"setProperty",value:function(oe,Ce,at){"@"==Ce.charAt(0)&&Ce==mr?this.disableAnimations(oe,!!at):this.delegate.setProperty(oe,Ce,at)}},{key:"setValue",value:function(oe,Ce){this.delegate.setValue(oe,Ce)}},{key:"listen",value:function(oe,Ce,at){return this.delegate.listen(oe,Ce,at)}},{key:"disableAnimations",value:function(oe,Ce){this.engine.disableAnimations(oe,Ce)}}]),Tt}(),ho=function(Tt){(0,p.Z)(oe,Tt);var Ke=(0,d.Z)(oe);function oe(Ce,at,ee,me){var Ne;return(0,t.Z)(this,oe),(Ne=Ke.call(this,at,ee,me)).factory=Ce,Ne.namespaceId=at,Ne}return(0,e.Z)(oe,[{key:"setProperty",value:function(at,ee,me){"@"==ee.charAt(0)?"."==ee.charAt(1)&&ee==mr?this.disableAnimations(at,me=void 0===me||!!me):this.engine.process(this.namespaceId,at,ee.substr(1),me):this.delegate.setProperty(at,ee,me)}},{key:"listen",value:function(at,ee,me){var Ne=this;if("@"==ee.charAt(0)){var Ye=function _o(Tt){switch(Tt){case"body":return document.body;case"document":return document;case"window":return window;default:return Tt}}(at),ht=ee.substr(1),At="";if("@"!=ht.charAt(0)){var on=function Ta(Tt){var Ke=Tt.indexOf(".");return[Tt.substring(0,Ke),Tt.substr(Ke+1)]}(ht),Pn=(0,P.Z)(on,2);ht=Pn[0],At=Pn[1]}return this.engine.listen(this.namespaceId,Ye,ht,At,function(Yn){Ne.factory.scheduleListenerCallback(Yn._data||-1,me,Yn)})}return this.delegate.listen(at,ee,me)}}]),oe}(zo),wr=function(){var Tt=function(Ke){(0,p.Z)(Ce,Ke);var oe=(0,d.Z)(Ce);function Ce(at,ee,me){return(0,t.Z)(this,Ce),oe.call(this,at.body,ee,me)}return(0,e.Z)(Ce,[{key:"ngOnDestroy",value:function(){this.flush()}}]),Ce}(Pr);return Tt.\u0275fac=function(oe){return new(oe||Tt)(s.LFG(Wo.K0),s.LFG(X),s.LFG(Si))},Tt.\u0275prov=s.Yz7({token:Tt,factory:Tt.\u0275fac}),Tt}(),Ra=new s.OlP("AnimationModuleType"),Ma=[{provide:f._j,useClass:ya},{provide:Si,useFactory:function ia(){return new Oa}},{provide:Pr,useClass:wr},{provide:s.FYo,useFactory:function Aa(Tt,Ke,oe){return new ro(Tt,Ke,oe)},deps:[h.se,Pr,s.R0b]}],oo=[{provide:X,useFactory:function(){return new eo}},{provide:Ra,useValue:"BrowserAnimations"}].concat(Ma),ko=[{provide:X,useClass:se},{provide:Ra,useValue:"NoopAnimations"}].concat(Ma),br=function(){var Tt=function(){function Ke(){(0,t.Z)(this,Ke)}return(0,e.Z)(Ke,null,[{key:"withConfig",value:function(Ce){return{ngModule:Ke,providers:Ce.disableAnimations?ko:oo}}}]),Ke}();return Tt.\u0275fac=function(oe){return new(oe||Tt)},Tt.\u0275mod=s.oAB({type:Tt}),Tt.\u0275inj=s.cJS({providers:oo,imports:[h.b2]}),Tt}()},50318:function(dt,K,n){"use strict";n.d(K,{b2:function(){return Nt},H7:function(){return pt},Dx:function(){return ut},q6:function(){return qe},se:function(){return Ee}});var j,P=n(4089),t=n(20265),e=n(48047),p=n(78069),d=n(24582),s=n(7318),h=n(36362),f=n(76442),T=function(zt){(0,d.Z)(tn,zt);var un=(0,s.Z)(tn);function tn(){var ln;return(0,p.Z)(this,tn),(ln=un.apply(this,arguments)).supportsDOMEvents=!0,ln}return(0,e.Z)(tn)}(h.w_),B=function(zt){(0,d.Z)(tn,zt);var un=(0,s.Z)(tn);function tn(){return(0,p.Z)(this,tn),un.apply(this,arguments)}return(0,e.Z)(tn,[{key:"onAndCancel",value:function(gn,An,Nn){return gn.addEventListener(An,Nn,!1),function(){gn.removeEventListener(An,Nn,!1)}}},{key:"dispatchEvent",value:function(gn,An){gn.dispatchEvent(An)}},{key:"remove",value:function(gn){gn.parentNode&&gn.parentNode.removeChild(gn)}},{key:"createElement",value:function(gn,An){return(An=An||this.getDefaultDocument()).createElement(gn)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(gn){return gn.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(gn){return gn instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(gn,An){return"window"===An?window:"document"===An?gn:"body"===An?gn.body:null}},{key:"getBaseHref",value:function(gn){var An=function v(){return(I=I||document.querySelector("base"))?I.getAttribute("href"):null}();return null==An?null:function Q(zt){(j=j||document.createElement("a")).setAttribute("href",zt);var un=j.pathname;return"/"===un.charAt(0)?un:"/".concat(un)}(An)}},{key:"resetBaseElement",value:function(){I=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"getCookie",value:function(gn){return(0,h.Mx)(document.cookie,gn)}}],[{key:"makeCurrent",value:function(){(0,h.HT)(new tn)}}]),tn}(T),I=null,J=new f.OlP("TRANSITION_ID"),A=[{provide:f.ip1,useFactory:function Z(zt,un,tn){return function(){tn.get(f.CZH).donePromise.then(function(){for(var ln=(0,h.q)(),gn=un.querySelectorAll('style[ng-transition="'.concat(zt,'"]')),An=0;An1&&void 0!==arguments[1])||arguments[1],Nn=tn.findTestabilityInTree(gn,An);if(null==Nn)throw new Error("Could not find testability for element.");return Nn},f.dqk.getAllAngularTestabilities=function(){return tn.getAllTestabilities()},f.dqk.getAllAngularRootElements=function(){return tn.getAllRootElements()},f.dqk.frameworkStabilizers||(f.dqk.frameworkStabilizers=[]),f.dqk.frameworkStabilizers.push(function(An){var Nn=f.dqk.getAllAngularTestabilities(),ai=Nn.length,gi=!1,Si=function(Oa){gi=gi||Oa,0==--ai&&An(gi)};Nn.forEach(function(Bi){Bi.whenStable(Si)})})}},{key:"findTestabilityInTree",value:function(tn,ln,gn){if(null==ln)return null;var An=tn.getTestability(ln);return null!=An?An:gn?(0,h.q)().isShadowRoot(ln)?this.findTestabilityInTree(tn,ln.host,!0):this.findTestabilityInTree(tn,ln.parentElement,!0):null}}],[{key:"init",value:function(){(0,f.VLi)(new zt)}}]),zt}(),E=function(){var zt=function(){function un(){(0,p.Z)(this,un)}return(0,e.Z)(un,[{key:"build",value:function(){return new XMLHttpRequest}}]),un}();return zt.\u0275fac=function(tn){return new(tn||zt)},zt.\u0275prov=f.Yz7({token:zt,factory:zt.\u0275fac}),zt}(),k=new f.OlP("EventManagerPlugins"),q=function(){var zt=function(){function un(tn,ln){var gn=this;(0,p.Z)(this,un),this._zone=ln,this._eventNameToPlugin=new Map,tn.forEach(function(An){return An.manager=gn}),this._plugins=tn.slice().reverse()}return(0,e.Z)(un,[{key:"addEventListener",value:function(ln,gn,An){return this._findPluginFor(gn).addEventListener(ln,gn,An)}},{key:"addGlobalEventListener",value:function(ln,gn,An){return this._findPluginFor(gn).addGlobalEventListener(ln,gn,An)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(ln){var gn=this._eventNameToPlugin.get(ln);if(gn)return gn;for(var An=this._plugins,Nn=0;Nn-1&&(Nn.splice(Ea,1),Si+=Oa+".")}),Si+=gi,0!=Nn.length||0===gi.length)return null;var Bi={};return Bi.domEventName=ai,Bi.fullKey=Si,Bi}},{key:"getEventFullKey",value:function(An){var Nn="",ai=function Ge(zt){var un=zt.key;if(null==un){if(null==(un=zt.keyIdentifier))return"Unidentified";un.startsWith("U+")&&(un=String.fromCharCode(parseInt(un.substring(2),16)),3===zt.location&&tt.hasOwnProperty(un)&&(un=tt[un]))}return ot[un]||un}(An);return" "===(ai=ai.toLowerCase())?ai="space":"."===ai&&(ai="dot"),it.forEach(function(gi){gi!=ai&&(0,xe[gi])(An)&&(Nn+=gi+".")}),Nn+=ai}},{key:"eventCallback",value:function(An,Nn,ai){return function(gi){ln.getEventFullKey(gi)===An&&ai.runGuarded(function(){return Nn(gi)})}}},{key:"_normalizeKey",value:function(An){return"esc"===An?"escape":An}}]),ln}(ce);return zt.\u0275fac=function(tn){return new(tn||zt)(f.LFG(h.K0))},zt.\u0275prov=f.Yz7({token:zt,factory:zt.\u0275fac}),zt}(),qe=(0,f.eFA)(f._c5,"browser",[{provide:f.Lbi,useValue:h.bD},{provide:f.g9A,useValue:function ct(){B.makeCurrent(),N.init()},multi:!0},{provide:h.K0,useFactory:function Te(){return(0,f.RDi)(document),document},deps:[]}]),je=[{provide:f.zSh,useValue:"root"},{provide:f.qLn,useFactory:function Xe(){return new f.qLn},deps:[]},{provide:k,useClass:Rt,multi:!0,deps:[h.K0,f.R0b,f.Lbi]},{provide:k,useClass:$e,multi:!0,deps:[h.K0]},{provide:Ee,useClass:Ee,deps:[q,H,f.AFp]},{provide:f.FYo,useExisting:Ee},{provide:ie,useExisting:H},{provide:H,useClass:H,deps:[h.K0]},{provide:f.dDg,useClass:f.dDg,deps:[f.R0b]},{provide:q,useClass:q,deps:[k,f.R0b]},{provide:h.JF,useClass:E,deps:[]}],Nt=function(){var zt=function(){function un(tn){if((0,p.Z)(this,un),tn)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return(0,e.Z)(un,null,[{key:"withServerTransition",value:function(ln){return{ngModule:un,providers:[{provide:f.AFp,useValue:ln.appId},{provide:J,useExisting:f.AFp},A]}}}]),un}();return zt.\u0275fac=function(tn){return new(tn||zt)(f.LFG(zt,12))},zt.\u0275mod=f.oAB({type:zt}),zt.\u0275inj=f.cJS({providers:je,imports:[h.ez,f.hGG]}),zt}(),ut=function(){var zt=function(){function un(tn){(0,p.Z)(this,un),this._doc=tn}return(0,e.Z)(un,[{key:"getTitle",value:function(){return this._doc.title}},{key:"setTitle",value:function(ln){this._doc.title=ln||""}}]),un}();return zt.\u0275fac=function(tn){return new(tn||zt)(f.LFG(h.K0))},zt.\u0275prov=f.Yz7({token:zt,factory:function(tn){return tn?new tn:function Pt(){return new ut((0,f.LFG)(h.K0))}()},providedIn:"root"}),zt}();"undefined"!=typeof window&&window;var pt=function(){var zt=(0,e.Z)(function un(){(0,p.Z)(this,un)});return zt.\u0275fac=function(tn){return new(tn||zt)},zt.\u0275prov=f.Yz7({token:zt,factory:function(tn){return tn?new(tn||zt):f.LFG(en)},providedIn:"root"}),zt}(),en=function(){var zt=function(un){(0,d.Z)(ln,un);var tn=(0,s.Z)(ln);function ln(gn){var An;return(0,p.Z)(this,ln),(An=tn.call(this))._doc=gn,An}return(0,e.Z)(ln,[{key:"sanitize",value:function(An,Nn){if(null==Nn)return null;switch(An){case f.q3G.NONE:return Nn;case f.q3G.HTML:return(0,f.qzn)(Nn,"HTML")?(0,f.z3N)(Nn):(0,f.EiD)(this._doc,String(Nn)).toString();case f.q3G.STYLE:return(0,f.qzn)(Nn,"Style")?(0,f.z3N)(Nn):Nn;case f.q3G.SCRIPT:if((0,f.qzn)(Nn,"Script"))return(0,f.z3N)(Nn);throw new Error("unsafe value used in a script context");case f.q3G.URL:return(0,f.yhl)(Nn),(0,f.qzn)(Nn,"URL")?(0,f.z3N)(Nn):(0,f.mCW)(String(Nn));case f.q3G.RESOURCE_URL:if((0,f.qzn)(Nn,"ResourceURL"))return(0,f.z3N)(Nn);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error("Unexpected SecurityContext ".concat(An," (see https://g.co/ng/security#xss)"))}}},{key:"bypassSecurityTrustHtml",value:function(An){return(0,f.JVY)(An)}},{key:"bypassSecurityTrustStyle",value:function(An){return(0,f.L6k)(An)}},{key:"bypassSecurityTrustScript",value:function(An){return(0,f.eBb)(An)}},{key:"bypassSecurityTrustUrl",value:function(An){return(0,f.LAX)(An)}},{key:"bypassSecurityTrustResourceUrl",value:function(An){return(0,f.pB0)(An)}}]),ln}(pt);return zt.\u0275fac=function(tn){return new(tn||zt)(f.LFG(h.K0))},zt.\u0275prov=f.Yz7({token:zt,factory:function(tn){var ln;return ln=tn?new tn:function kt(zt){return new en(zt.get(h.K0))}(f.LFG(f.zs3)),ln},providedIn:"root"}),zt}()},98002:function(dt,K,n){"use strict";n.d(K,{gz:function(){return Ci},m2:function(){return $e},OD:function(){return xe},Z6:function(){return Li},Av:function(){return je},F0:function(){return ir},rH:function(){return ba},yS:function(){return Ds},Bz:function(){return $o},lC:function(){return Ra}});var P=n(77797),t=n(35488),e=n(95106),p=n(86170),d=n(24582),s=n(7318),h=n(48047),f=n(78069),T=n(76442),I=(0,n(27543).d)(function(he){return function(){he(this),this.name="EmptyError",this.message="no elements in sequence"}}),v=n(83336),j=n(17714),Q=n(41944),J=n(93945);function Z(){return(0,Q.e)(function(he,ke){var pe=null;he._refCount++;var Me=(0,J.x)(ke,void 0,void 0,void 0,function(){if(!he||he._refCount<=0||0<--he._refCount)pe=null;else{var Fe=he._connection,xt=pe;pe=null,Fe&&(!xt||Fe===xt)&&Fe.unsubscribe(),ke.unsubscribe()}});he.subscribe(Me),Me.closed||(pe=he.connect())})}var A=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe){var xt;return(0,f.Z)(this,pe),(xt=ke.call(this)).source=Me,xt.subjectFactory=Fe,xt._subject=null,xt._refCount=0,xt._connection=null,(0,Q.A)(Me)&&(xt.lift=Me.lift),xt}return(0,h.Z)(pe,[{key:"_subscribe",value:function(Fe){return this.getSubject().subscribe(Fe)}},{key:"getSubject",value:function(){var Fe=this._subject;return(!Fe||Fe.isStopped)&&(this._subject=this.subjectFactory()),this._subject}},{key:"_teardown",value:function(){this._refCount=0;var Fe=this._connection;this._subject=this._connection=null,null==Fe||Fe.unsubscribe()}},{key:"connect",value:function(){var Fe=this,xt=this._connection;if(!xt){xt=this._connection=new j.w0;var Ut=this.getSubject();xt.add(this.source.subscribe((0,J.x)(Ut,void 0,function(){Fe._teardown(),Ut.complete()},function(dn){Fe._teardown(),Ut.error(dn)},function(){return Fe._teardown()}))),xt.closed&&(this._connection=null,xt=j.w0.EMPTY)}return xt}},{key:"refCount",value:function(){return Z()(this)}}]),pe}(v.y),N=n(72957),E=n(10745),k=n(76317),q=n(26562),ce=n(59319),ie=n(21954),H=n(20591),V=n(50253);function ue(he,ke,pe,Me,Fe){return function(xt,Ut){var dn=pe,Mn=ke,hn=0;xt.subscribe((0,J.x)(Ut,function($n){var hi=hn++;Mn=dn?he(Mn,$n,hi):(dn=!0,$n),Me&&Ut.next(Mn)},Fe&&function(){dn&&Ut.next(Mn),Ut.complete()}))}}function R(he,ke){return(0,Q.e)(ue(he,ke,arguments.length>=2,!0))}var r=n(60116);function z(he){return he<=0?function(){return H.E}:(0,Q.e)(function(ke,pe){var Me=[];ke.subscribe((0,J.x)(pe,function(Fe){Me.push(Fe),he0&&void 0!==arguments[0]?arguments[0]:se;return(0,Q.e)(function(ke,pe){var Me=!1;ke.subscribe((0,J.x)(pe,function(Fe){Me=!0,pe.next(Fe)},function(){return Me?pe.complete():pe.error(he())}))})}function se(){return new I}function X(he){return(0,Q.e)(function(ke,pe){var Me=!1;ke.subscribe((0,J.x)(pe,function(Fe){Me=!0,pe.next(Fe)},function(){Me||pe.next(he),pe.complete()}))})}var ne=n(89173),Re=n(59295);function Ie(he,ke){var pe=arguments.length>=2;return function(Me){return Me.pipe(he?(0,r.h)(function(Fe,xt){return he(Fe,xt,Me)}):ne.y,(0,Re.q)(1),pe?X(ke):Y(function(){return new I}))}}var Ee=n(50635),ge=n(32673),_t=n(44874),wt=n(53158),qt=n(63853),Lt=n(49525),Rt=n(19337),it=n(32313),Qe=n(1308),ot=n(36362),tt=(0,h.Z)(function he(ke,pe){(0,f.Z)(this,he),this.id=ke,this.url=pe}),xe=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe){var xt,Ut=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"imperative",dn=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return(0,f.Z)(this,pe),(xt=ke.call(this,Me,Fe)).navigationTrigger=Ut,xt.restoredState=dn,xt}return(0,h.Z)(pe,[{key:"toString",value:function(){return"NavigationStart(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),pe}(tt),$e=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt){var Ut;return(0,f.Z)(this,pe),(Ut=ke.call(this,Me,Fe)).urlAfterRedirects=xt,Ut}return(0,h.Z)(pe,[{key:"toString",value:function(){return"NavigationEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"')")}}]),pe}(tt),Ge=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt){var Ut;return(0,f.Z)(this,pe),(Ut=ke.call(this,Me,Fe)).reason=xt,Ut}return(0,h.Z)(pe,[{key:"toString",value:function(){return"NavigationCancel(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),pe}(tt),ct=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt){var Ut;return(0,f.Z)(this,pe),(Ut=ke.call(this,Me,Fe)).error=xt,Ut}return(0,h.Z)(pe,[{key:"toString",value:function(){return"NavigationError(id: ".concat(this.id,", url: '").concat(this.url,"', error: ").concat(this.error,")")}}]),pe}(tt),Xe=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt,Ut){var dn;return(0,f.Z)(this,pe),(dn=ke.call(this,Me,Fe)).urlAfterRedirects=xt,dn.state=Ut,dn}return(0,h.Z)(pe,[{key:"toString",value:function(){return"RoutesRecognized(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),pe}(tt),Te=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt,Ut){var dn;return(0,f.Z)(this,pe),(dn=ke.call(this,Me,Fe)).urlAfterRedirects=xt,dn.state=Ut,dn}return(0,h.Z)(pe,[{key:"toString",value:function(){return"GuardsCheckStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),pe}(tt),vt=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt,Ut,dn){var Mn;return(0,f.Z)(this,pe),(Mn=ke.call(this,Me,Fe)).urlAfterRedirects=xt,Mn.state=Ut,Mn.shouldActivate=dn,Mn}return(0,h.Z)(pe,[{key:"toString",value:function(){return"GuardsCheckEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,", shouldActivate: ").concat(this.shouldActivate,")")}}]),pe}(tt),qe=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt,Ut){var dn;return(0,f.Z)(this,pe),(dn=ke.call(this,Me,Fe)).urlAfterRedirects=xt,dn.state=Ut,dn}return(0,h.Z)(pe,[{key:"toString",value:function(){return"ResolveStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),pe}(tt),je=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe,xt,Ut){var dn;return(0,f.Z)(this,pe),(dn=ke.call(this,Me,Fe)).urlAfterRedirects=xt,dn.state=Ut,dn}return(0,h.Z)(pe,[{key:"toString",value:function(){return"ResolveEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),pe}(tt),Nt=function(){function he(ke){(0,f.Z)(this,he),this.route=ke}return(0,h.Z)(he,[{key:"toString",value:function(){return"RouteConfigLoadStart(path: ".concat(this.route.path,")")}}]),he}(),Ft=function(){function he(ke){(0,f.Z)(this,he),this.route=ke}return(0,h.Z)(he,[{key:"toString",value:function(){return"RouteConfigLoadEnd(path: ".concat(this.route.path,")")}}]),he}(),bt=function(){function he(ke){(0,f.Z)(this,he),this.snapshot=ke}return(0,h.Z)(he,[{key:"toString",value:function(){return"ChildActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),he}(),St=function(){function he(ke){(0,f.Z)(this,he),this.snapshot=ke}return(0,h.Z)(he,[{key:"toString",value:function(){return"ChildActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),he}(),Pt=function(){function he(ke){(0,f.Z)(this,he),this.snapshot=ke}return(0,h.Z)(he,[{key:"toString",value:function(){return"ActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),he}(),ut=function(){function he(ke){(0,f.Z)(this,he),this.snapshot=ke}return(0,h.Z)(he,[{key:"toString",value:function(){return"ActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),he}(),yt=function(){function he(ke,pe,Me){(0,f.Z)(this,he),this.routerEvent=ke,this.position=pe,this.anchor=Me}return(0,h.Z)(he,[{key:"toString",value:function(){var pe=this.position?"".concat(this.position[0],", ").concat(this.position[1]):null;return"Scroll(anchor: '".concat(this.anchor,"', position: '").concat(pe,"')")}}]),he}(),be="primary",we=function(){function he(ke){(0,f.Z)(this,he),this.params=ke||{}}return(0,h.Z)(he,[{key:"has",value:function(pe){return Object.prototype.hasOwnProperty.call(this.params,pe)}},{key:"get",value:function(pe){if(this.has(pe)){var Me=this.params[pe];return Array.isArray(Me)?Me[0]:Me}return null}},{key:"getAll",value:function(pe){if(this.has(pe)){var Me=this.params[pe];return Array.isArray(Me)?Me:[Me]}return[]}},{key:"keys",get:function(){return Object.keys(this.params)}}]),he}();function _e(he){return new we(he)}var $="ngNavigationCancelingError";function Ae(he){var ke=Error("NavigationCancelingError: "+he);return ke[$]=!0,ke}function gt(he,ke,pe){var Me=pe.path.split("/");if(Me.length>he.length||"full"===pe.pathMatch&&(ke.hasChildren()||Me.length0?he[he.length-1]:null}function Un(he,ke){for(var pe in he)he.hasOwnProperty(pe)&&ke(he[pe],pe)}function si(he){return(0,T.CqO)(he)?he:(0,T.QGY)(he)?(0,N.D)(Promise.resolve(he)):(0,E.of)(he)}var rn={exact:function et(he,ke,pe){if(!zt(he.segments,ke.segments)||!Ve(he.segments,ke.segments,pe)||he.numberOfChildren!==ke.numberOfChildren)return!1;for(var Me in ke.children)if(!he.children[Me]||!et(he.children[Me],ke.children[Me],pe))return!1;return!0},subset:Ze},sn={exact:function Ue(he,ke){return _n(he,ke)},subset:function De(he,ke){return Object.keys(ke).length<=Object.keys(he).length&&Object.keys(ke).every(function(pe){return wn(he[pe],ke[pe])})},ignored:function(){return!0}};function jt(he,ke,pe){return rn[pe.paths](he.root,ke.root,pe.matrixParams)&&sn[pe.queryParams](he.queryParams,ke.queryParams)&&!("exact"===pe.fragment&&he.fragment!==ke.fragment)}function Ze(he,ke,pe){return Je(he,ke,ke.segments,pe)}function Je(he,ke,pe,Me){if(he.segments.length>pe.length){var Fe=he.segments.slice(0,pe.length);return!(!zt(Fe,pe)||ke.hasChildren()||!Ve(Fe,pe,Me))}if(he.segments.length===pe.length){if(!zt(he.segments,pe)||!Ve(he.segments,pe,Me))return!1;for(var xt in ke.children)if(!he.children[xt]||!Ze(he.children[xt],ke.children[xt],Me))return!1;return!0}var Ut=pe.slice(0,he.segments.length),dn=pe.slice(he.segments.length);return!!(zt(he.segments,Ut)&&Ve(he.segments,Ut,Me)&&he.children[be])&&Je(he.children[be],ke,dn,Me)}function Ve(he,ke,pe){return ke.every(function(Me,Fe){return sn[pe](he[Fe].parameters,Me.parameters)})}var pt=function(){function he(ke,pe,Me){(0,f.Z)(this,he),this.root=ke,this.queryParams=pe,this.fragment=Me}return(0,h.Z)(he,[{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=_e(this.queryParams)),this._queryParamMap}},{key:"toString",value:function(){return gn.serialize(this)}}]),he}(),kt=function(){function he(ke,pe){var Me=this;(0,f.Z)(this,he),this.segments=ke,this.children=pe,this.parent=null,Un(pe,function(Fe,xt){return Fe.parent=Me})}return(0,h.Z)(he,[{key:"hasChildren",value:function(){return this.numberOfChildren>0}},{key:"numberOfChildren",get:function(){return Object.keys(this.children).length}},{key:"toString",value:function(){return An(this)}}]),he}(),en=function(){function he(ke,pe){(0,f.Z)(this,he),this.path=ke,this.parameters=pe}return(0,h.Z)(he,[{key:"parameterMap",get:function(){return this._parameterMap||(this._parameterMap=_e(this.parameters)),this._parameterMap}},{key:"toString",value:function(){return ea(this)}}]),he}();function zt(he,ke){return he.length===ke.length&&he.every(function(pe,Me){return pe.path===ke[Me].path})}var tn=(0,h.Z)(function he(){(0,f.Z)(this,he)}),ln=function(){function he(){(0,f.Z)(this,he)}return(0,h.Z)(he,[{key:"parse",value:function(pe){var Me=new Pe(pe);return new pt(Me.parseRootSegment(),Me.parseQueryParams(),Me.parseFragment())}},{key:"serialize",value:function(pe){var Me="/".concat(Nn(pe.root,!0)),Fe=function tr(he){var ke=Object.keys(he).map(function(pe){var Me=he[pe];return Array.isArray(Me)?Me.map(function(Fe){return"".concat(gi(pe),"=").concat(gi(Fe))}).join("&"):"".concat(gi(pe),"=").concat(gi(Me))}).filter(function(pe){return!!pe});return ke.length?"?".concat(ke.join("&")):""}(pe.queryParams),xt="string"==typeof pe.fragment?"#".concat(function Si(he){return encodeURI(he)}(pe.fragment)):"";return"".concat(Me).concat(Fe).concat(xt)}}]),he}(),gn=new ln;function An(he){return he.segments.map(function(ke){return ea(ke)}).join("/")}function Nn(he,ke){if(!he.hasChildren())return An(he);if(ke){var pe=he.children[be]?Nn(he.children[be],!1):"",Me=[];return Un(he.children,function(xt,Ut){Ut!==be&&Me.push("".concat(Ut,":").concat(Nn(xt,!1)))}),Me.length>0?"".concat(pe,"(").concat(Me.join("//"),")"):pe}var Fe=function un(he,ke){var pe=[];return Un(he.children,function(Me,Fe){Fe===be&&(pe=pe.concat(ke(Me,Fe)))}),Un(he.children,function(Me,Fe){Fe!==be&&(pe=pe.concat(ke(Me,Fe)))}),pe}(he,function(xt,Ut){return Ut===be?[Nn(he.children[be],!1)]:["".concat(Ut,":").concat(Nn(xt,!1))]});return 1===Object.keys(he.children).length&&null!=he.children[be]?"".concat(An(he),"/").concat(Fe[0]):"".concat(An(he),"/(").concat(Fe.join("//"),")")}function ai(he){return encodeURIComponent(he).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function gi(he){return ai(he).replace(/%3B/gi,";")}function Bi(he){return ai(he).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Oa(he){return decodeURIComponent(he)}function Ea(he){return Oa(he.replace(/\+/g,"%20"))}function ea(he){return"".concat(Bi(he.path)).concat(function ja(he){return Object.keys(he).map(function(ke){return";".concat(Bi(ke),"=").concat(Bi(he[ke]))}).join("")}(he.parameters))}var da=/^[^\/()?;=#]+/;function Na(he){var ke=he.match(da);return ke?ke[0]:""}var ta=/^[^=?&#]+/,yn=/^[^&#]+/,Pe=function(){function he(ke){(0,f.Z)(this,he),this.url=ke,this.remaining=ke}return(0,h.Z)(he,[{key:"parseRootSegment",value:function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new kt([],{}):new kt([],this.parseChildren())}},{key:"parseQueryParams",value:function(){var pe={};if(this.consumeOptional("?"))do{this.parseQueryParam(pe)}while(this.consumeOptional("&"));return pe}},{key:"parseFragment",value:function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}},{key:"parseChildren",value:function(){if(""===this.remaining)return{};this.consumeOptional("/");var pe=[];for(this.peekStartsWith("(")||pe.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),pe.push(this.parseSegment());var Me={};this.peekStartsWith("/(")&&(this.capture("/"),Me=this.parseParens(!0));var Fe={};return this.peekStartsWith("(")&&(Fe=this.parseParens(!1)),(pe.length>0||Object.keys(Me).length>0)&&(Fe[be]=new kt(pe,Me)),Fe}},{key:"parseSegment",value:function(){var pe=Na(this.remaining);if(""===pe&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '".concat(this.remaining,"'."));return this.capture(pe),new en(Oa(pe),this.parseMatrixParams())}},{key:"parseMatrixParams",value:function(){for(var pe={};this.consumeOptional(";");)this.parseParam(pe);return pe}},{key:"parseParam",value:function(pe){var Me=Na(this.remaining);if(Me){this.capture(Me);var Fe="";if(this.consumeOptional("=")){var xt=Na(this.remaining);xt&&this.capture(Fe=xt)}pe[Oa(Me)]=Oa(Fe)}}},{key:"parseQueryParam",value:function(pe){var Me=function fn(he){var ke=he.match(ta);return ke?ke[0]:""}(this.remaining);if(Me){this.capture(Me);var Fe="";if(this.consumeOptional("=")){var xt=function Ct(he){var ke=he.match(yn);return ke?ke[0]:""}(this.remaining);xt&&this.capture(Fe=xt)}var Ut=Ea(Me),dn=Ea(Fe);if(pe.hasOwnProperty(Ut)){var Mn=pe[Ut];Array.isArray(Mn)||(pe[Ut]=Mn=[Mn]),Mn.push(dn)}else pe[Ut]=dn}}},{key:"parseParens",value:function(pe){var Me={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var Fe=Na(this.remaining),xt=this.remaining[Fe.length];if("/"!==xt&&")"!==xt&&";"!==xt)throw new Error("Cannot parse url '".concat(this.url,"'"));var Ut=void 0;Fe.indexOf(":")>-1?(Ut=Fe.substr(0,Fe.indexOf(":")),this.capture(Ut),this.capture(":")):pe&&(Ut=be);var dn=this.parseChildren();Me[Ut]=1===Object.keys(dn).length?dn[be]:new kt([],dn),this.consumeOptional("//")}return Me}},{key:"peekStartsWith",value:function(pe){return this.remaining.startsWith(pe)}},{key:"consumeOptional",value:function(pe){return!!this.peekStartsWith(pe)&&(this.remaining=this.remaining.substring(pe.length),!0)}},{key:"capture",value:function(pe){if(!this.consumeOptional(pe))throw new Error('Expected "'.concat(pe,'".'))}}]),he}(),It=function(){function he(ke){(0,f.Z)(this,he),this._root=ke}return(0,h.Z)(he,[{key:"root",get:function(){return this._root.value}},{key:"parent",value:function(pe){var Me=this.pathFromRoot(pe);return Me.length>1?Me[Me.length-2]:null}},{key:"children",value:function(pe){var Me=Jt(pe,this._root);return Me?Me.children.map(function(Fe){return Fe.value}):[]}},{key:"firstChild",value:function(pe){var Me=Jt(pe,this._root);return Me&&Me.children.length>0?Me.children[0].value:null}},{key:"siblings",value:function(pe){var Me=vn(pe,this._root);return Me.length<2?[]:Me[Me.length-2].children.map(function(xt){return xt.value}).filter(function(xt){return xt!==pe})}},{key:"pathFromRoot",value:function(pe){return vn(pe,this._root).map(function(Me){return Me.value})}}]),he}();function Jt(he,ke){if(he===ke.value)return ke;var Me,pe=(0,e.Z)(ke.children);try{for(pe.s();!(Me=pe.n()).done;){var xt=Jt(he,Me.value);if(xt)return xt}}catch(Ut){pe.e(Ut)}finally{pe.f()}return null}function vn(he,ke){if(he===ke.value)return[ke];var Me,pe=(0,e.Z)(ke.children);try{for(pe.s();!(Me=pe.n()).done;){var xt=vn(he,Me.value);if(xt.length)return xt.unshift(ke),xt}}catch(Ut){pe.e(Ut)}finally{pe.f()}return[]}var Vn=function(){function he(ke,pe){(0,f.Z)(this,he),this.value=ke,this.children=pe}return(0,h.Z)(he,[{key:"toString",value:function(){return"TreeNode(".concat(this.value,")")}}]),he}();function ui(he){var ke={};return he&&he.children.forEach(function(pe){return ke[pe.value.outlet]=pe}),ke}var ki=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe){var xt;return(0,f.Z)(this,pe),(xt=ke.call(this,Me)).snapshot=Fe,sa((0,t.Z)(xt),Me),xt}return(0,h.Z)(pe,[{key:"toString",value:function(){return this.snapshot.toString()}}]),pe}(It);function Ii(he,ke){var pe=function ri(he,ke){var Ut=new oa([],{},{},"",{},be,ke,null,he.root,-1,{});return new Yi("",new Vn(Ut,[]))}(he,ke),Me=new k.X([new en("",{})]),Fe=new k.X({}),xt=new k.X({}),Ut=new k.X({}),dn=new k.X(""),Mn=new Ci(Me,Fe,Ut,dn,xt,be,ke,pe.root);return Mn.snapshot=pe.root,new ki(new Vn(Mn,[]),pe)}var Ci=function(){function he(ke,pe,Me,Fe,xt,Ut,dn,Mn){(0,f.Z)(this,he),this.url=ke,this.params=pe,this.queryParams=Me,this.fragment=Fe,this.data=xt,this.outlet=Ut,this.component=dn,this._futureSnapshot=Mn}return(0,h.Z)(he,[{key:"routeConfig",get:function(){return this._futureSnapshot.routeConfig}},{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=this.params.pipe((0,Ee.U)(function(pe){return _e(pe)}))),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,Ee.U)(function(pe){return _e(pe)}))),this._queryParamMap}},{key:"toString",value:function(){return this.snapshot?this.snapshot.toString():"Future(".concat(this._futureSnapshot,")")}}]),he}();function Wi(he){var ke=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"emptyOnly",pe=he.pathFromRoot,Me=0;if("always"!==ke)for(Me=pe.length-1;Me>=1;){var Fe=pe[Me],xt=pe[Me-1];if(Fe.routeConfig&&""===Fe.routeConfig.path)Me--;else{if(xt.component)break;Me--}}return xa(pe.slice(Me))}function xa(he){return he.reduce(function(ke,pe){return{params:Object.assign(Object.assign({},ke.params),pe.params),data:Object.assign(Object.assign({},ke.data),pe.data),resolve:Object.assign(Object.assign({},ke.resolve),pe._resolvedData)}},{params:{},data:{},resolve:{}})}var oa=function(){function he(ke,pe,Me,Fe,xt,Ut,dn,Mn,hn,$n,hi){(0,f.Z)(this,he),this.url=ke,this.params=pe,this.queryParams=Me,this.fragment=Fe,this.data=xt,this.outlet=Ut,this.component=dn,this.routeConfig=Mn,this._urlSegment=hn,this._lastPathIndex=$n,this._resolve=hi}return(0,h.Z)(he,[{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=_e(this.params)),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=_e(this.queryParams)),this._queryParamMap}},{key:"toString",value:function(){var pe=this.url.map(function(Fe){return Fe.toString()}).join("/"),Me=this.routeConfig?this.routeConfig.path:"";return"Route(url:'".concat(pe,"', path:'").concat(Me,"')")}}]),he}(),Yi=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(Me,Fe){var xt;return(0,f.Z)(this,pe),(xt=ke.call(this,Fe)).url=Me,sa((0,t.Z)(xt),Fe),xt}return(0,h.Z)(pe,[{key:"toString",value:function(){return Fi(this._root)}}]),pe}(It);function sa(he,ke){ke.value._routerState=he,ke.children.forEach(function(pe){return sa(he,pe)})}function Fi(he){var ke=he.children.length>0?" { ".concat(he.children.map(Fi).join(", ")," } "):"";return"".concat(he.value).concat(ke)}function va(he){if(he.snapshot){var ke=he.snapshot,pe=he._futureSnapshot;he.snapshot=pe,_n(ke.queryParams,pe.queryParams)||he.queryParams.next(pe.queryParams),ke.fragment!==pe.fragment&&he.fragment.next(pe.fragment),_n(ke.params,pe.params)||he.params.next(pe.params),function Bt(he,ke){if(he.length!==ke.length)return!1;for(var pe=0;peFe;){if(xt-=Fe,!(Me=Me.parent))throw new Error("Invalid number of '../'");Fe=Me.segments.length}return new ao(Me,!1,Fe-xt)}(pe.snapshot._urlSegment,pe.snapshot._lastPathIndex+xt,he.numberOfDoubleDots)}(xt,ke,he),dn=Ut.processChildren?Dr(Ut.segmentGroup,Ut.index,xt.commands):Pr(Ut.segmentGroup,Ut.index,xt.commands);return Vi(Ut.segmentGroup,dn,ke,Me,Fe)}function Gn(he){return"object"==typeof he&&null!=he&&!he.outlets&&!he.segmentPath}function vi(he){return"object"==typeof he&&null!=he&&he.outlets}function Vi(he,ke,pe,Me,Fe){var xt={};return Me&&Un(Me,function(Ut,dn){xt[dn]=Array.isArray(Ut)?Ut.map(function(Mn){return"".concat(Mn)}):"".concat(Ut)}),new pt(pe.root===he?ke:Zi(pe.root,he,ke),xt,Fe)}function Zi(he,ke,pe){var Me={};return Un(he.children,function(Fe,xt){Me[xt]=Fe===ke?pe:Zi(Fe,ke,pe)}),new kt(he.segments,Me)}var Ai=function(){function he(ke,pe,Me){if((0,f.Z)(this,he),this.isAbsolute=ke,this.numberOfDoubleDots=pe,this.commands=Me,ke&&Me.length>0&&Gn(Me[0]))throw new Error("Root segment cannot have matrix parameters");var Fe=Me.find(vi);if(Fe&&Fe!==On(Me))throw new Error("{outlets:{}} has to be the last command")}return(0,h.Z)(he,[{key:"toRoot",value:function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}]),he}(),ao=(0,h.Z)(function he(ke,pe,Me){(0,f.Z)(this,he),this.segmentGroup=ke,this.processChildren=pe,this.index=Me});function Pr(he,ke,pe){if(he||(he=new kt([],{})),0===he.segments.length&&he.hasChildren())return Dr(he,ke,pe);var Me=function Ga(he,ke,pe){for(var Me=0,Fe=ke,xt={match:!1,pathIndex:0,commandIndex:0};Fe=pe.length)return xt;var Ut=he.segments[Fe],dn=pe[Me];if(vi(dn))break;var Mn="".concat(dn),hn=Me0&&void 0===Mn)break;if(Mn&&hn&&"object"==typeof hn&&void 0===hn.outlets){if(!eo(Mn,hn,Ut))return xt;Me+=2}else{if(!eo(Mn,{},Ut))return xt;Me++}Fe++}return{match:!0,pathIndex:Fe,commandIndex:Me}}(he,ke,pe),Fe=pe.slice(Me.commandIndex);if(Me.match&&Me.pathIndex1&&void 0!==arguments[1]?arguments[1]:"",pe=0;pe0)?Object.assign({},Ce):{matched:!0,consumedSegments:[],lastChild:0,parameters:{},positionalParamSegments:{}};var xt=(ke.matcher||gt)(pe,he,ke);if(!xt)return Object.assign({},Ce);var Ut={};Un(xt.posParams,function(Mn,hn){Ut[hn]=Mn.path});var dn=xt.consumed.length>0?Object.assign(Object.assign({},Ut),xt.consumed[xt.consumed.length-1].parameters):Ut;return{matched:!0,consumedSegments:xt.consumed,lastChild:xt.consumed.length,parameters:dn,positionalParamSegments:null!==(Me=xt.posParams)&&void 0!==Me?Me:{}}}function ee(he,ke,pe,Me){var Fe=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"corrected";if(pe.length>0&&Ye(he,pe,Me)){var xt=new kt(ke,Ne(he,ke,Me,new kt(pe,he.children)));return xt._sourceSegment=he,xt._segmentIndexShift=ke.length,{segmentGroup:xt,slicedSegments:[]}}if(0===pe.length&&ht(he,pe,Me)){var Ut=new kt(he.segments,me(he,ke,pe,Me,he.children,Fe));return Ut._sourceSegment=he,Ut._segmentIndexShift=ke.length,{segmentGroup:Ut,slicedSegments:pe}}var dn=new kt(he.segments,he.children);return dn._sourceSegment=he,dn._segmentIndexShift=ke.length,{segmentGroup:dn,slicedSegments:pe}}function me(he,ke,pe,Me,Fe,xt){var Mn,Ut={},dn=(0,e.Z)(Me);try{for(dn.s();!(Mn=dn.n()).done;){var hn=Mn.value;if(At(he,pe,hn)&&!Fe[Ke(hn)]){var $n=new kt([],{});$n._sourceSegment=he,$n._segmentIndexShift="legacy"===xt?he.segments.length:ke.length,Ut[Ke(hn)]=$n}}}catch(hi){dn.e(hi)}finally{dn.f()}return Object.assign(Object.assign({},Fe),Ut)}function Ne(he,ke,pe,Me){var Fe={};Fe[be]=Me,Me._sourceSegment=he,Me._segmentIndexShift=ke.length;var Ut,xt=(0,e.Z)(pe);try{for(xt.s();!(Ut=xt.n()).done;){var dn=Ut.value;if(""===dn.path&&Ke(dn)!==be){var Mn=new kt([],{});Mn._sourceSegment=he,Mn._segmentIndexShift=ke.length,Fe[Ke(dn)]=Mn}}}catch(hn){xt.e(hn)}finally{xt.f()}return Fe}function Ye(he,ke,pe){return pe.some(function(Me){return At(he,ke,Me)&&Ke(Me)!==be})}function ht(he,ke,pe){return pe.some(function(Me){return At(he,ke,Me)})}function At(he,ke,pe){return(!(he.hasChildren()||ke.length>0)||"full"!==pe.pathMatch)&&""===pe.path}function on(he,ke,pe,Me){return!!(Ke(he)===Me||Me!==be&&At(ke,pe,he))&&("**"===he.path||at(ke,he,pe).matched)}function Pn(he,ke,pe){return 0===ke.length&&!he.children[pe]}var Yn=(0,h.Z)(function he(ke){(0,f.Z)(this,he),this.segmentGroup=ke||null}),Wn=(0,h.Z)(function he(ke){(0,f.Z)(this,he),this.urlTree=ke});function st(he){return new v.y(function(ke){return ke.error(new Yn(he))})}function $t(he){return new v.y(function(ke){return ke.error(new Wn(he))})}function ze(he){return new v.y(function(ke){return ke.error(new Error("Only absolute redirects can have named outlets. redirectTo: '".concat(he,"'")))})}var de=function(){function he(ke,pe,Me,Fe,xt){(0,f.Z)(this,he),this.configLoader=pe,this.urlSerializer=Me,this.urlTree=Fe,this.config=xt,this.allowRedirects=!0,this.ngModule=ke.get(T.h0i)}return(0,h.Z)(he,[{key:"apply",value:function(){var pe=this,Me=ee(this.urlTree.root,[],[],this.config).segmentGroup,Fe=new kt(Me.segments,Me.children);return this.expandSegmentGroup(this.ngModule,this.config,Fe,be).pipe((0,Ee.U)(function(dn){return pe.createUrlTree(Be(dn),pe.urlTree.queryParams,pe.urlTree.fragment)})).pipe((0,wt.K)(function(dn){if(dn instanceof Wn)return pe.allowRedirects=!1,pe.match(dn.urlTree);throw dn instanceof Yn?pe.noMatchError(dn):dn}))}},{key:"match",value:function(pe){var Me=this;return this.expandSegmentGroup(this.ngModule,this.config,pe.root,be).pipe((0,Ee.U)(function(Ut){return Me.createUrlTree(Be(Ut),pe.queryParams,pe.fragment)})).pipe((0,wt.K)(function(Ut){throw Ut instanceof Yn?Me.noMatchError(Ut):Ut}))}},{key:"noMatchError",value:function(pe){return new Error("Cannot match any routes. URL Segment: '".concat(pe.segmentGroup,"'"))}},{key:"createUrlTree",value:function(pe,Me,Fe){var xt=pe.segments.length>0?new kt([],(0,P.Z)({},be,pe)):pe;return new pt(xt,Me,Fe)}},{key:"expandSegmentGroup",value:function(pe,Me,Fe,xt){return 0===Fe.segments.length&&Fe.hasChildren()?this.expandChildren(pe,Me,Fe).pipe((0,Ee.U)(function(Ut){return new kt([],Ut)})):this.expandSegment(pe,Fe,Me,Fe.segments,xt,!0)}},{key:"expandChildren",value:function(pe,Me,Fe){for(var xt=this,Ut=[],dn=0,Mn=Object.keys(Fe.children);dn=2;return function(Me){return Me.pipe(he?(0,r.h)(function(Fe,xt){return he(Fe,xt,Me)}):ne.y,z(1),pe?X(ke):Y(function(){return new I}))}}())}},{key:"expandSegment",value:function(pe,Me,Fe,xt,Ut,dn){var Mn=this;return(0,N.D)(Fe).pipe((0,qt.b)(function(hn){return Mn.expandSegmentAgainstRoute(pe,Me,Fe,hn,xt,Ut,dn).pipe((0,wt.K)(function(hi){if(hi instanceof Yn)return(0,E.of)(null);throw hi}))}),Ie(function(hn){return!!hn}),(0,wt.K)(function(hn,$n){if(hn instanceof I||"EmptyError"===hn.name){if(Pn(Me,xt,Ut))return(0,E.of)(new kt([],{}));throw new Yn(Me)}throw hn}))}},{key:"expandSegmentAgainstRoute",value:function(pe,Me,Fe,xt,Ut,dn,Mn){return on(xt,Me,Ut,dn)?void 0===xt.redirectTo?this.matchSegmentAgainstRoute(pe,Me,xt,Ut,dn):Mn&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(pe,Me,Fe,xt,Ut,dn):st(Me):st(Me)}},{key:"expandSegmentAgainstRouteUsingRedirect",value:function(pe,Me,Fe,xt,Ut,dn){return"**"===xt.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(pe,Fe,xt,dn):this.expandRegularSegmentAgainstRouteUsingRedirect(pe,Me,Fe,xt,Ut,dn)}},{key:"expandWildCardWithParamsAgainstRouteUsingRedirect",value:function(pe,Me,Fe,xt){var Ut=this,dn=this.applyRedirectCommands([],Fe.redirectTo,{});return Fe.redirectTo.startsWith("/")?$t(dn):this.lineralizeSegments(Fe,dn).pipe((0,Lt.z)(function(Mn){var hn=new kt(Mn,{});return Ut.expandSegment(pe,hn,Me,Mn,xt,!1)}))}},{key:"expandRegularSegmentAgainstRouteUsingRedirect",value:function(pe,Me,Fe,xt,Ut,dn){var Mn=this,hn=at(Me,xt,Ut),hi=hn.consumedSegments,Ji=hn.lastChild,Ca=hn.positionalParamSegments;if(!hn.matched)return st(Me);var Ya=this.applyRedirectCommands(hi,xt.redirectTo,Ca);return xt.redirectTo.startsWith("/")?$t(Ya):this.lineralizeSegments(xt,Ya).pipe((0,Lt.z)(function($a){return Mn.expandSegment(pe,Me,Fe,$a.concat(Ut.slice(Ji)),dn,!1)}))}},{key:"matchSegmentAgainstRoute",value:function(pe,Me,Fe,xt,Ut){var dn=this;if("**"===Fe.path)return Fe.loadChildren?(Fe._loadedConfig?(0,E.of)(Fe._loadedConfig):this.configLoader.load(pe.injector,Fe)).pipe((0,Ee.U)(function($a){return Fe._loadedConfig=$a,new kt(xt,{})})):(0,E.of)(new kt(xt,{}));var hn=at(Me,Fe,xt),hi=hn.consumedSegments,Ji=hn.lastChild;if(!hn.matched)return st(Me);var Ca=xt.slice(Ji);return this.getChildConfig(pe,Fe,xt).pipe((0,Lt.z)(function($a){var Mr=$a.module,qr=$a.routes,no=ee(Me,hi,Ca,qr),so=no.segmentGroup,hr=no.slicedSegments,Va=new kt(so.segments,so.children);if(0===hr.length&&Va.hasChildren())return dn.expandChildren(Mr,qr,Va).pipe((0,Ee.U)(function(Zr){return new kt(hi,Zr)}));if(0===qr.length&&0===hr.length)return(0,E.of)(new kt(hi,{}));var Mo=Ke(Fe)===Ut;return dn.expandSegment(Mr,Va,qr,hr,Mo?be:Ut,!0).pipe((0,Ee.U)(function(Zr){return new kt(hi.concat(Zr.segments),Zr.children)}))}))}},{key:"getChildConfig",value:function(pe,Me,Fe){var xt=this;return Me.children?(0,E.of)(new Ur(Me.children,pe)):Me.loadChildren?void 0!==Me._loadedConfig?(0,E.of)(Me._loadedConfig):this.runCanLoadGuards(pe.injector,Me,Fe).pipe((0,Lt.z)(function(Ut){return Ut?xt.configLoader.load(pe.injector,Me).pipe((0,Ee.U)(function(dn){return Me._loadedConfig=dn,dn})):function Se(he){return new v.y(function(ke){return ke.error(Ae("Cannot load children because the guard of the route \"path: '".concat(he.path,"'\" returned false")))})}(Me)})):(0,E.of)(new Ur([],pe))}},{key:"runCanLoadGuards",value:function(pe,Me,Fe){var xt=this,Ut=Me.canLoad;if(!Ut||0===Ut.length)return(0,E.of)(!0);var dn=Ut.map(function(Mn){var $n,hn=pe.get(Mn);if(function ro(he){return he&&yr(he.canLoad)}(hn))$n=hn.canLoad(Me,Fe);else{if(!yr(hn))throw new Error("Invalid CanLoad guard");$n=hn(Me,Fe)}return si($n)});return(0,E.of)(dn).pipe(wr(),(0,Rt.b)(function(Mn){if(mr(Mn)){var hn=Ae('Redirecting to "'.concat(xt.urlSerializer.serialize(Mn),'"'));throw hn.url=Mn,hn}}),(0,Ee.U)(function(Mn){return!0===Mn}))}},{key:"lineralizeSegments",value:function(pe,Me){for(var Fe=[],xt=Me.root;;){if(Fe=Fe.concat(xt.segments),0===xt.numberOfChildren)return(0,E.of)(Fe);if(xt.numberOfChildren>1||!xt.children[be])return ze(pe.redirectTo);xt=xt.children[be]}}},{key:"applyRedirectCommands",value:function(pe,Me,Fe){return this.applyRedirectCreatreUrlTree(Me,this.urlSerializer.parse(Me),pe,Fe)}},{key:"applyRedirectCreatreUrlTree",value:function(pe,Me,Fe,xt){var Ut=this.createSegmentGroup(pe,Me.root,Fe,xt);return new pt(Ut,this.createQueryParams(Me.queryParams,this.urlTree.queryParams),Me.fragment)}},{key:"createQueryParams",value:function(pe,Me){var Fe={};return Un(pe,function(xt,Ut){if("string"==typeof xt&&xt.startsWith(":")){var Mn=xt.substring(1);Fe[Ut]=Me[Mn]}else Fe[Ut]=xt}),Fe}},{key:"createSegmentGroup",value:function(pe,Me,Fe,xt){var Ut=this,dn=this.createSegments(pe,Me.segments,Fe,xt),Mn={};return Un(Me.children,function(hn,$n){Mn[$n]=Ut.createSegmentGroup(pe,hn,Fe,xt)}),new kt(dn,Mn)}},{key:"createSegments",value:function(pe,Me,Fe,xt){var Ut=this;return Me.map(function(dn){return dn.path.startsWith(":")?Ut.findPosParam(pe,dn,xt):Ut.findOrReturn(dn,Fe)})}},{key:"findPosParam",value:function(pe,Me,Fe){var xt=Fe[Me.path.substring(1)];if(!xt)throw new Error("Cannot redirect to '".concat(pe,"'. Cannot find '").concat(Me.path,"'."));return xt}},{key:"findOrReturn",value:function(pe,Me){var Ut,Fe=0,xt=(0,e.Z)(Me);try{for(xt.s();!(Ut=xt.n()).done;){var dn=Ut.value;if(dn.path===pe.path)return Me.splice(Fe),dn;Fe++}}catch(Mn){xt.e(Mn)}finally{xt.f()}return pe}}]),he}();function Be(he){for(var ke={},pe=0,Me=Object.keys(he.children);pe0||Ut.hasChildren())&&(ke[Fe]=Ut)}return function ye(he){if(1===he.numberOfChildren&&he.children[be]){var ke=he.children[be];return new kt(he.segments.concat(ke.segments),ke.children)}return he}(new kt(he.segments,ke))}var Dt=(0,h.Z)(function he(ke){(0,f.Z)(this,he),this.path=ke,this.route=this.path[this.path.length-1]}),cn=(0,h.Z)(function he(ke,pe){(0,f.Z)(this,he),this.component=ke,this.route=pe});function kn(he,ke,pe){var Me=he._root;return ra(Me,ke?ke._root:null,pe,[Me.value])}function Ti(he,ke,pe){var Me=function Pa(he){if(!he)return null;for(var ke=he.parent;ke;ke=ke.parent){var pe=ke.routeConfig;if(pe&&pe._loadedConfig)return pe._loadedConfig}return null}(ke);return(Me?Me.module.injector:pe).get(he)}function ra(he,ke,pe,Me){var Fe=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},xt=ui(ke);return he.children.forEach(function(Ut){to(Ut,xt[Ut.value.outlet],pe,Me.concat([Ut.value]),Fe),delete xt[Ut.value.outlet]}),Un(xt,function(Ut,dn){return la(Ut,pe.getContext(dn),Fe)}),Fe}function to(he,ke,pe,Me){var Fe=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},xt=he.value,Ut=ke?ke.value:null,dn=pe?pe.getContext(he.value.outlet):null;if(Ut&&xt.routeConfig===Ut.routeConfig){var Mn=Ua(Ut,xt,xt.routeConfig.runGuardsAndResolvers);Mn?Fe.canActivateChecks.push(new Dt(Me)):(xt.data=Ut.data,xt._resolvedData=Ut._resolvedData),ra(he,ke,xt.component?dn?dn.children:null:pe,Me,Fe),Mn&&dn&&dn.outlet&&dn.outlet.isActivated&&Fe.canDeactivateChecks.push(new cn(dn.outlet.component,Ut))}else Ut&&la(ke,dn,Fe),Fe.canActivateChecks.push(new Dt(Me)),ra(he,null,xt.component?dn?dn.children:null:pe,Me,Fe);return Fe}function Ua(he,ke,pe){if("function"==typeof pe)return pe(he,ke);switch(pe){case"pathParamsChange":return!zt(he.url,ke.url);case"pathParamsOrQueryParamsChange":return!zt(he.url,ke.url)||!_n(he.queryParams,ke.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Za(he,ke)||!_n(he.queryParams,ke.queryParams);default:return!Za(he,ke)}}function la(he,ke,pe){var Me=ui(he),Fe=he.value;Un(Me,function(xt,Ut){la(xt,Fe.component?ke?ke.children.getContext(Ut):null:ke,pe)}),pe.canDeactivateChecks.push(new cn(Fe.component&&ke&&ke.outlet&&ke.outlet.isActivated?ke.outlet.component:null,Fe))}var Io=(0,h.Z)(function he(){(0,f.Z)(this,he)});function ds(he){return new v.y(function(ke){return ke.error(he)})}var Qn=function(){function he(ke,pe,Me,Fe,xt,Ut){(0,f.Z)(this,he),this.rootComponentType=ke,this.config=pe,this.urlTree=Me,this.url=Fe,this.paramsInheritanceStrategy=xt,this.relativeLinkResolution=Ut}return(0,h.Z)(he,[{key:"recognize",value:function(){var pe=ee(this.urlTree.root,[],[],this.config.filter(function(dn){return void 0===dn.redirectTo}),this.relativeLinkResolution).segmentGroup,Me=this.processSegmentGroup(this.config,pe,be);if(null===Me)return null;var Fe=new oa([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},be,this.rootComponentType,null,this.urlTree.root,-1,{}),xt=new Vn(Fe,Me),Ut=new Yi(this.url,xt);return this.inheritParamsAndData(Ut._root),Ut}},{key:"inheritParamsAndData",value:function(pe){var Me=this,Fe=pe.value,xt=Wi(Fe,this.paramsInheritanceStrategy);Fe.params=Object.freeze(xt.params),Fe.data=Object.freeze(xt.data),pe.children.forEach(function(Ut){return Me.inheritParamsAndData(Ut)})}},{key:"processSegmentGroup",value:function(pe,Me,Fe){return 0===Me.segments.length&&Me.hasChildren()?this.processChildren(pe,Me):this.processSegment(pe,Me,Me.segments,Fe)}},{key:"processChildren",value:function(pe,Me){for(var Fe=[],xt=0,Ut=Object.keys(Me.children);xt0?On(Fe).parameters:{};Ut=new oa(Fe,hn,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,nr(pe),Ke(pe),pe.component,pe,Pi(Me),fa(Me)+Fe.length,vo(pe))}else{var $n=at(Me,pe,Fe);if(!$n.matched)return null;dn=$n.consumedSegments,Mn=Fe.slice($n.lastChild),Ut=new oa(dn,$n.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,nr(pe),Ke(pe),pe.component,pe,Pi(Me),fa(Me)+dn.length,vo(pe))}var hi=function Qr(he){return he.children?he.children:he.loadChildren?he._loadedConfig.routes:[]}(pe),Ji=ee(Me,dn,Mn,hi.filter(function(no){return void 0===no.redirectTo}),this.relativeLinkResolution),Ca=Ji.segmentGroup,Ya=Ji.slicedSegments;if(0===Ya.length&&Ca.hasChildren()){var $a=this.processChildren(hi,Ca);return null===$a?null:[new Vn(Ut,$a)]}if(0===hi.length&&0===Ya.length)return[new Vn(Ut,[])];var Mr=Ke(pe)===xt,qr=this.processSegment(hi,Ca,Ya,Mr?be:xt);return null===qr?null:[new Vn(Ut,qr)]}}]),he}();function bi(he){var Fe,ke=[],pe=new Set,Me=(0,e.Z)(he);try{var xt=function(){var Ji=Fe.value;if(!function qa(he){var ke=he.value.routeConfig;return ke&&""===ke.path&&void 0===ke.redirectTo}(Ji))return ke.push(Ji),"continue";var Ya,Ca=ke.find(function($a){return Ji.value.routeConfig===$a.value.routeConfig});void 0!==Ca?((Ya=Ca.children).push.apply(Ya,(0,p.Z)(Ji.children)),pe.add(Ca)):ke.push(Ji)};for(Me.s();!(Fe=Me.n()).done;)xt()}catch(hi){Me.e(hi)}finally{Me.f()}var Mn,dn=(0,e.Z)(pe);try{for(dn.s();!(Mn=dn.n()).done;){var hn=Mn.value,$n=bi(hn.children);ke.push(new Vn(hn.value,$n))}}catch(hi){dn.e(hi)}finally{dn.f()}return ke.filter(function(hi){return!pe.has(hi)})}function Pi(he){for(var ke=he;ke._sourceSegment;)ke=ke._sourceSegment;return ke}function fa(he){for(var ke=he,pe=ke._segmentIndexShift?ke._segmentIndexShift:0;ke._sourceSegment;)pe+=(ke=ke._sourceSegment)._segmentIndexShift?ke._segmentIndexShift:0;return pe-1}function nr(he){return he.data||{}}function vo(he){return he.resolve||{}}function Br(he){return[].concat((0,p.Z)(Object.keys(he)),(0,p.Z)(Object.getOwnPropertySymbols(he)))}function Sn(he){return(0,ge.w)(function(ke){var pe=he(ke);return pe?(0,N.D)(pe).pipe((0,Ee.U)(function(){return ke})):(0,E.of)(ke)})}var Rn=(0,h.Z)(function he(){(0,f.Z)(this,he)}),mi=function(he){(0,d.Z)(pe,he);var ke=(0,s.Z)(pe);function pe(){return(0,f.Z)(this,pe),ke.apply(this,arguments)}return(0,h.Z)(pe)}(function(){function he(){(0,f.Z)(this,he)}return(0,h.Z)(he,[{key:"shouldDetach",value:function(pe){return!1}},{key:"store",value:function(pe,Me){}},{key:"shouldAttach",value:function(pe){return!1}},{key:"retrieve",value:function(pe){return null}},{key:"shouldReuseRoute",value:function(pe,Me){return pe.routeConfig===Me.routeConfig}}]),he}()),Li=new T.OlP("ROUTES"),zi=function(){function he(ke,pe,Me,Fe){(0,f.Z)(this,he),this.injector=ke,this.compiler=pe,this.onLoadStartListener=Me,this.onLoadEndListener=Fe}return(0,h.Z)(he,[{key:"load",value:function(pe,Me){var Fe=this;if(Me._loader$)return Me._loader$;this.onLoadStartListener&&this.onLoadStartListener(Me);var Ut=this.loadModuleFactory(Me.loadChildren).pipe((0,Ee.U)(function(dn){Fe.onLoadEndListener&&Fe.onLoadEndListener(Me);var Mn=dn.create(pe);return new Ur(Tn(Mn.injector.get(Li,void 0,T.XFs.Self|T.XFs.Optional)).map(Tt),Mn)}),(0,wt.K)(function(dn){throw Me._loader$=void 0,dn}));return Me._loader$=new A(Ut,function(){return new V.x}).pipe(Z()),Me._loader$}},{key:"loadModuleFactory",value:function(pe){var Me=this;return si(pe()).pipe((0,Lt.z)(function(Fe){return Fe instanceof T.YKP?(0,E.of)(Fe):(0,N.D)(Me.compiler.compileModuleAsync(Fe))}))}}]),he}(),Ba=(0,h.Z)(function he(){(0,f.Z)(this,he)}),Da=function(){function he(){(0,f.Z)(this,he)}return(0,h.Z)(he,[{key:"shouldProcessUrl",value:function(pe){return!0}},{key:"extract",value:function(pe){return pe}},{key:"merge",value:function(pe,Me){return pe}}]),he}();function tl(he){throw he}function Ul(he,ke,pe){return ke.parse("/")}function Wr(he,ke){return(0,E.of)(null)}var nl={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Bl={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},ir=function(){var he=function(){function ke(pe,Me,Fe,xt,Ut,dn,Mn){var hn=this;(0,f.Z)(this,ke),this.rootComponentType=pe,this.urlSerializer=Me,this.rootContexts=Fe,this.location=xt,this.config=Mn,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.disposed=!1,this.navigationId=0,this.currentPageId=0,this.isNgZoneEnabled=!1,this.events=new V.x,this.errorHandler=tl,this.malformedUriErrorHandler=Ul,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Wr,afterPreactivation:Wr},this.urlHandlingStrategy=new Da,this.routeReuseStrategy=new mi,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.canceledNavigationResolution="replace",this.ngModule=Ut.get(T.h0i),this.console=Ut.get(T.c2e);var Ji=Ut.get(T.R0b);this.isNgZoneEnabled=Ji instanceof T.R0b&&T.R0b.isInAngularZone(),this.resetConfig(Mn),this.currentUrlTree=function fi(){return new pt(new kt([],{}),{},null)}(),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new zi(Ut,dn,function(Ya){return hn.triggerEvent(new Nt(Ya))},function(Ya){return hn.triggerEvent(new Ft(Ya))}),this.routerState=Ii(this.currentUrlTree,this.rootComponentType),this.transitions=new k.X({id:0,targetPageId:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return(0,h.Z)(ke,[{key:"browserPageId",get:function(){var Me;return null===(Me=this.location.getState())||void 0===Me?void 0:Me.\u0275routerPageId}},{key:"setupNavigations",value:function(Me){var Fe=this,xt=this.events;return Me.pipe((0,r.h)(function(Ut){return 0!==Ut.id}),(0,Ee.U)(function(Ut){return Object.assign(Object.assign({},Ut),{extractedUrl:Fe.urlHandlingStrategy.extract(Ut.rawUrl)})}),(0,ge.w)(function(Ut){var dn=!1,Mn=!1;return(0,E.of)(Ut).pipe((0,Rt.b)(function(hn){Fe.currentNavigation={id:hn.id,initialUrl:hn.currentRawUrl,extractedUrl:hn.extractedUrl,trigger:hn.source,extras:hn.extras,previousNavigation:Fe.lastSuccessfulNavigation?Object.assign(Object.assign({},Fe.lastSuccessfulNavigation),{previousNavigation:null}):null}}),(0,ge.w)(function(hn){var $n=Fe.browserUrlTree.toString(),hi=!Fe.navigated||hn.extractedUrl.toString()!==$n||$n!==Fe.currentUrlTree.toString();if(("reload"===Fe.onSameUrlNavigation||hi)&&Fe.urlHandlingStrategy.shouldProcessUrl(hn.rawUrl))return ms(hn.source)&&(Fe.browserUrlTree=hn.extractedUrl),(0,E.of)(hn).pipe((0,ge.w)(function(Va){var Vt=Fe.transitions.getValue();return xt.next(new xe(Va.id,Fe.serializeUrl(Va.extractedUrl),Va.source,Va.restoredState)),Vt!==Fe.transitions.getValue()?H.E:Promise.resolve(Va)}),function nt(he,ke,pe,Me){return(0,ge.w)(function(Fe){return function ae(he,ke,pe,Me,Fe){return new de(he,ke,pe,Me,Fe).apply()}(he,ke,pe,Fe.extractedUrl,Me).pipe((0,Ee.U)(function(xt){return Object.assign(Object.assign({},Fe),{urlAfterRedirects:xt})}))})}(Fe.ngModule.injector,Fe.configLoader,Fe.urlSerializer,Fe.config),(0,Rt.b)(function(Va){Fe.currentNavigation=Object.assign(Object.assign({},Fe.currentNavigation),{finalUrl:Va.urlAfterRedirects})}),function As(he,ke,pe,Me,Fe){return(0,Lt.z)(function(xt){return function ps(he,ke,pe,Me){var Fe=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"emptyOnly",xt=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"legacy";try{var Ut=new Qn(he,ke,pe,Me,Fe,xt).recognize();return null===Ut?ds(new Io):(0,E.of)(Ut)}catch(dn){return ds(dn)}}(he,ke,xt.urlAfterRedirects,pe(xt.urlAfterRedirects),Me,Fe).pipe((0,Ee.U)(function(Ut){return Object.assign(Object.assign({},xt),{targetSnapshot:Ut})}))})}(Fe.rootComponentType,Fe.config,function(Va){return Fe.serializeUrl(Va)},Fe.paramsInheritanceStrategy,Fe.relativeLinkResolution),(0,Rt.b)(function(Va){if("eager"===Fe.urlUpdateStrategy){if(!Va.extras.skipLocationChange){var Vt=Fe.urlHandlingStrategy.merge(Va.urlAfterRedirects,Va.rawUrl);Fe.setBrowserUrl(Vt,Va)}Fe.browserUrlTree=Va.urlAfterRedirects}var Mo=new Xe(Va.id,Fe.serializeUrl(Va.extractedUrl),Fe.serializeUrl(Va.urlAfterRedirects),Va.targetSnapshot);xt.next(Mo)}));if(hi&&Fe.rawUrlTree&&Fe.urlHandlingStrategy.shouldProcessUrl(Fe.rawUrlTree)){var $a=hn.extractedUrl,Mr=hn.source,qr=hn.restoredState,no=hn.extras,so=new xe(hn.id,Fe.serializeUrl($a),Mr,qr);xt.next(so);var hr=Ii($a,Fe.rootComponentType).snapshot;return(0,E.of)(Object.assign(Object.assign({},hn),{targetSnapshot:hr,urlAfterRedirects:$a,extras:Object.assign(Object.assign({},no),{skipLocationChange:!1,replaceUrl:!1})}))}return Fe.rawUrlTree=hn.rawUrl,hn.resolve(null),H.E}),Sn(function(hn){var Ya=hn.extras;return Fe.hooks.beforePreactivation(hn.targetSnapshot,{navigationId:hn.id,appliedUrlTree:hn.extractedUrl,rawUrlTree:hn.rawUrl,skipLocationChange:!!Ya.skipLocationChange,replaceUrl:!!Ya.replaceUrl})}),(0,Rt.b)(function(hn){var $n=new Te(hn.id,Fe.serializeUrl(hn.extractedUrl),Fe.serializeUrl(hn.urlAfterRedirects),hn.targetSnapshot);Fe.triggerEvent($n)}),(0,Ee.U)(function(hn){return Object.assign(Object.assign({},hn),{guards:kn(hn.targetSnapshot,hn.currentSnapshot,Fe.rootContexts)})}),function ka(he,ke){return(0,Lt.z)(function(pe){var Me=pe.targetSnapshot,Fe=pe.currentSnapshot,xt=pe.guards,Ut=xt.canActivateChecks,dn=xt.canDeactivateChecks;return 0===dn.length&&0===Ut.length?(0,E.of)(Object.assign(Object.assign({},pe),{guardsResult:!0})):function Qa(he,ke,pe,Me){return(0,N.D)(he).pipe((0,Lt.z)(function(Fe){return function us(he,ke,pe,Me,Fe){var xt=ke&&ke.routeConfig?ke.routeConfig.canDeactivate:null;if(!xt||0===xt.length)return(0,E.of)(!0);var Ut=xt.map(function(dn){var hn,Mn=Ti(dn,ke,Fe);if(function _o(he){return he&&yr(he.canDeactivate)}(Mn))hn=si(Mn.canDeactivate(he,ke,pe,Me));else{if(!yr(Mn))throw new Error("Invalid CanDeactivate guard");hn=si(Mn(he,ke,pe,Me))}return hn.pipe(Ie())});return(0,E.of)(Ut).pipe(wr())}(Fe.component,Fe.route,pe,ke,Me)}),Ie(function(Fe){return!0!==Fe},!0))}(dn,Me,Fe,he).pipe((0,Lt.z)(function(Mn){return Mn&&function mo(he){return"boolean"==typeof he}(Mn)?function go(he,ke,pe,Me){return(0,N.D)(ke).pipe((0,qt.b)(function(Fe){return(0,ce.z)(function Rl(he,ke){return null!==he&&ke&&ke(new bt(he)),(0,E.of)(!0)}(Fe.route.parent,Me),function Ni(he,ke){return null!==he&&ke&&ke(new Pt(he)),(0,E.of)(!0)}(Fe.route,Me),function $i(he,ke,pe){var Me=ke[ke.length-1],Fe=ke.slice(0,ke.length-1).reverse().map(function(Ut){return function ni(he){var ke=he.routeConfig?he.routeConfig.canActivateChild:null;return ke&&0!==ke.length?{node:he,guards:ke}:null}(Ut)}).filter(function(Ut){return null!==Ut}),xt=Fe.map(function(Ut){return(0,ie.P)(function(){var dn=Ut.guards.map(function(Mn){var $n,hn=Ti(Mn,Ut.node,pe);if(function ho(he){return he&&yr(he.canActivateChild)}(hn))$n=si(hn.canActivateChild(Me,he));else{if(!yr(hn))throw new Error("Invalid CanActivateChild guard");$n=si(hn(Me,he))}return $n.pipe(Ie())});return(0,E.of)(dn).pipe(wr())})});return(0,E.of)(xt).pipe(wr())}(he,Fe.path,pe),function Ts(he,ke,pe){var Me=ke.routeConfig?ke.routeConfig.canActivate:null;if(!Me||0===Me.length)return(0,E.of)(!0);var Fe=Me.map(function(xt){return(0,ie.P)(function(){var dn,Ut=Ti(xt,ke,pe);if(function zo(he){return he&&yr(he.canActivate)}(Ut))dn=si(Ut.canActivate(ke,he));else{if(!yr(Ut))throw new Error("Invalid CanActivate guard");dn=si(Ut(ke,he))}return dn.pipe(Ie())})});return(0,E.of)(Fe).pipe(wr())}(he,Fe.route,pe))}),Ie(function(Fe){return!0!==Fe},!0))}(Me,Ut,he,ke):(0,E.of)(Mn)}),(0,Ee.U)(function(Mn){return Object.assign(Object.assign({},pe),{guardsResult:Mn})}))})}(Fe.ngModule.injector,function(hn){return Fe.triggerEvent(hn)}),(0,Rt.b)(function(hn){if(mr(hn.guardsResult)){var $n=Ae('Redirecting to "'.concat(Fe.serializeUrl(hn.guardsResult),'"'));throw $n.url=hn.guardsResult,$n}var hi=new vt(hn.id,Fe.serializeUrl(hn.extractedUrl),Fe.serializeUrl(hn.urlAfterRedirects),hn.targetSnapshot,!!hn.guardsResult);Fe.triggerEvent(hi)}),(0,r.h)(function(hn){return!!hn.guardsResult||(Fe.restoreHistory(hn),Fe.cancelNavigationTransition(hn,""),!1)}),Sn(function(hn){if(hn.guards.canActivateChecks.length)return(0,E.of)(hn).pipe((0,Rt.b)(function($n){var hi=new qe($n.id,Fe.serializeUrl($n.extractedUrl),Fe.serializeUrl($n.urlAfterRedirects),$n.targetSnapshot);Fe.triggerEvent(hi)}),(0,ge.w)(function($n){var hi=!1;return(0,E.of)($n).pipe(function Go(he,ke){return(0,Lt.z)(function(pe){var Me=pe.targetSnapshot,Fe=pe.guards.canActivateChecks;if(!Fe.length)return(0,E.of)(pe);var xt=0;return(0,N.D)(Fe).pipe((0,qt.b)(function(Ut){return function fs(he,ke,pe,Me){return function ma(he,ke,pe,Me){var Fe=Br(he);if(0===Fe.length)return(0,E.of)({});var xt={};return(0,N.D)(Fe).pipe((0,Lt.z)(function(Ut){return function Ps(he,ke,pe,Me){var Fe=Ti(he,ke,Me);return si(Fe.resolve?Fe.resolve(ke,pe):Fe(ke,pe))}(he[Ut],ke,pe,Me).pipe((0,Rt.b)(function(dn){xt[Ut]=dn}))}),z(1),(0,Lt.z)(function(){return Br(xt).length===Fe.length?(0,E.of)(xt):H.E}))}(he._resolve,he,ke,Me).pipe((0,Ee.U)(function(xt){return he._resolvedData=xt,he.data=Object.assign(Object.assign({},he.data),Wi(he,pe).resolve),null}))}(Ut.route,Me,he,ke)}),(0,Rt.b)(function(){return xt++}),z(1),(0,Lt.z)(function(Ut){return xt===Fe.length?(0,E.of)(pe):H.E}))})}(Fe.paramsInheritanceStrategy,Fe.ngModule.injector),(0,Rt.b)({next:function(){return hi=!0},complete:function(){hi||(Fe.restoreHistory($n),Fe.cancelNavigationTransition($n,"At least one route resolver didn't emit any value."))}}))}),(0,Rt.b)(function($n){var hi=new je($n.id,Fe.serializeUrl($n.extractedUrl),Fe.serializeUrl($n.urlAfterRedirects),$n.targetSnapshot);Fe.triggerEvent(hi)}))}),Sn(function(hn){var Ya=hn.extras;return Fe.hooks.afterPreactivation(hn.targetSnapshot,{navigationId:hn.id,appliedUrlTree:hn.extractedUrl,rawUrlTree:hn.rawUrl,skipLocationChange:!!Ya.skipLocationChange,replaceUrl:!!Ya.replaceUrl})}),(0,Ee.U)(function(hn){var $n=function Qt(he,ke,pe){var Me=Ot(he,ke._root,pe?pe._root:void 0);return new ki(Me,ke)}(Fe.routeReuseStrategy,hn.targetSnapshot,hn.currentRouterState);return Object.assign(Object.assign({},hn),{targetRouterState:$n})}),(0,Rt.b)(function(hn){Fe.currentUrlTree=hn.urlAfterRedirects,Fe.rawUrlTree=Fe.urlHandlingStrategy.merge(hn.urlAfterRedirects,hn.rawUrl),Fe.routerState=hn.targetRouterState,"deferred"===Fe.urlUpdateStrategy&&(hn.extras.skipLocationChange||Fe.setBrowserUrl(Fe.rawUrlTree,hn),Fe.browserUrlTree=hn.urlAfterRedirects)}),function(ke,pe,Me){return(0,Ee.U)(function(Fe){return new ya(pe,Fe.targetRouterState,Fe.currentRouterState,Me).activate(ke),Fe})}(Fe.rootContexts,Fe.routeReuseStrategy,function(hn){return Fe.triggerEvent(hn)}),(0,Rt.b)({next:function(){dn=!0},complete:function(){dn=!0}}),(0,it.x)(function(){var hn;if(!dn&&!Mn){var $n="Navigation ID ".concat(Ut.id," is not equal to the current navigation id ").concat(Fe.navigationId);Fe.cancelNavigationTransition(Ut,$n)}(null===(hn=Fe.currentNavigation)||void 0===hn?void 0:hn.id)===Ut.id&&(Fe.currentNavigation=null)}),(0,wt.K)(function(hn){if(Mn=!0,function ft(he){return he&&he[$]}(hn)){var $n=mr(hn.url);$n||(Fe.navigated=!0,Fe.restoreHistory(Ut,!0));var hi=new Ge(Ut.id,Fe.serializeUrl(Ut.extractedUrl),hn.message);xt.next(hi),$n?setTimeout(function(){var Ca=Fe.urlHandlingStrategy.merge(hn.url,Fe.rawUrlTree),Ya={skipLocationChange:Ut.extras.skipLocationChange,replaceUrl:"eager"===Fe.urlUpdateStrategy||ms(Ut.source)};Fe.scheduleNavigation(Ca,"imperative",null,Ya,{resolve:Ut.resolve,reject:Ut.reject,promise:Ut.promise})},0):Ut.resolve(!1)}else{Fe.restoreHistory(Ut,!0);var Ji=new ct(Ut.id,Fe.serializeUrl(Ut.extractedUrl),hn);xt.next(Ji);try{Ut.resolve(Fe.errorHandler(hn))}catch(Ca){Ut.reject(Ca)}}return H.E}))}))}},{key:"resetRootComponentType",value:function(Me){this.rootComponentType=Me,this.routerState.root.component=this.rootComponentType}},{key:"setTransition",value:function(Me){this.transitions.next(Object.assign(Object.assign({},this.transitions.value),Me))}},{key:"initialNavigation",value:function(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}},{key:"setUpLocationChangeListener",value:function(){var Me=this;this.locationSubscription||(this.locationSubscription=this.location.subscribe(function(Fe){var xt="popstate"===Fe.type?"popstate":"hashchange";"popstate"===xt&&setTimeout(function(){var Ut,dn={replaceUrl:!0},Mn=(null===(Ut=Fe.state)||void 0===Ut?void 0:Ut.navigationId)?Fe.state:null;if(Mn){var hn=Object.assign({},Mn);delete hn.navigationId,delete hn.\u0275routerPageId,0!==Object.keys(hn).length&&(dn.state=hn)}var $n=Me.parseUrl(Fe.url);Me.scheduleNavigation($n,xt,Mn,dn)},0)}))}},{key:"url",get:function(){return this.serializeUrl(this.currentUrlTree)}},{key:"getCurrentNavigation",value:function(){return this.currentNavigation}},{key:"triggerEvent",value:function(Me){this.events.next(Me)}},{key:"resetConfig",value:function(Me){ko(Me),this.config=Me.map(Tt),this.navigated=!1,this.lastSuccessfulId=-1}},{key:"ngOnDestroy",value:function(){this.dispose()}},{key:"dispose",value:function(){this.transitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}},{key:"createUrlTree",value:function(Me){var Fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},xt=Fe.relativeTo,Ut=Fe.queryParams,dn=Fe.fragment,Mn=Fe.queryParamsHandling,hn=Fe.preserveFragment,$n=xt||this.routerState.root,hi=hn?this.currentUrlTree.fragment:dn,Ji=null;switch(Mn){case"merge":Ji=Object.assign(Object.assign({},this.currentUrlTree.queryParams),Ut);break;case"preserve":Ji=this.currentUrlTree.queryParams;break;default:Ji=Ut||null}return null!==Ji&&(Ji=this.removeEmptyProps(Ji)),Hn($n,this.currentUrlTree,Me,Ji,null!=hi?hi:null)}},{key:"navigateByUrl",value:function(Me){var Fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1},xt=mr(Me)?Me:this.parseUrl(Me),Ut=this.urlHandlingStrategy.merge(xt,this.rawUrlTree);return this.scheduleNavigation(Ut,"imperative",null,Fe)}},{key:"navigate",value:function(Me){var Fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1};return il(Me),this.navigateByUrl(this.createUrlTree(Me,Fe),Fe)}},{key:"serializeUrl",value:function(Me){return this.urlSerializer.serialize(Me)}},{key:"parseUrl",value:function(Me){var Fe;try{Fe=this.urlSerializer.parse(Me)}catch(xt){Fe=this.malformedUriErrorHandler(xt,this.urlSerializer,Me)}return Fe}},{key:"isActive",value:function(Me,Fe){var xt;if(xt=!0===Fe?Object.assign({},nl):!1===Fe?Object.assign({},Bl):Fe,mr(Me))return jt(this.currentUrlTree,Me,xt);var Ut=this.parseUrl(Me);return jt(this.currentUrlTree,Ut,xt)}},{key:"removeEmptyProps",value:function(Me){return Object.keys(Me).reduce(function(Fe,xt){var Ut=Me[xt];return null!=Ut&&(Fe[xt]=Ut),Fe},{})}},{key:"processNavigations",value:function(){var Me=this;this.navigations.subscribe(function(Fe){Me.navigated=!0,Me.lastSuccessfulId=Fe.id,Me.currentPageId=Fe.targetPageId,Me.events.next(new $e(Fe.id,Me.serializeUrl(Fe.extractedUrl),Me.serializeUrl(Me.currentUrlTree))),Me.lastSuccessfulNavigation=Me.currentNavigation,Fe.resolve(!0)},function(Fe){Me.console.warn("Unhandled Navigation Error: ".concat(Fe))})}},{key:"scheduleNavigation",value:function(Me,Fe,xt,Ut,dn){var Mn,hn,$n;if(this.disposed)return Promise.resolve(!1);var Mr,qr,no,hi=this.transitions.value,Ji=ms(Fe)&&hi&&!ms(hi.source),Ca=hi.rawUrl.toString()===Me.toString(),Ya=hi.id===(null===(Mn=this.currentNavigation)||void 0===Mn?void 0:Mn.id);if(Ji&&Ca&&Ya)return Promise.resolve(!0);dn?(Mr=dn.resolve,qr=dn.reject,no=dn.promise):no=new Promise(function(Vt,Mo){Mr=Vt,qr=Mo});var hr,so=++this.navigationId;return"computed"===this.canceledNavigationResolution?(0===this.currentPageId&&(xt=this.location.getState()),hr=xt&&xt.\u0275routerPageId?xt.\u0275routerPageId:Ut.replaceUrl||Ut.skipLocationChange?null!==(hn=this.browserPageId)&&void 0!==hn?hn:0:(null!==($n=this.browserPageId)&&void 0!==$n?$n:0)+1):hr=0,this.setTransition({id:so,targetPageId:hr,source:Fe,restoredState:xt,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:Me,extras:Ut,resolve:Mr,reject:qr,promise:no,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),no.catch(function(Vt){return Promise.reject(Vt)})}},{key:"setBrowserUrl",value:function(Me,Fe){var xt=this.urlSerializer.serialize(Me),Ut=Object.assign(Object.assign({},Fe.extras.state),this.generateNgRouterState(Fe.id,Fe.targetPageId));this.location.isCurrentPathEqualTo(xt)||Fe.extras.replaceUrl?this.location.replaceState(xt,"",Ut):this.location.go(xt,"",Ut)}},{key:"restoreHistory",value:function(Me){var xt,Ut,Fe=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("computed"===this.canceledNavigationResolution){var dn=this.currentPageId-Me.targetPageId,Mn="popstate"===Me.source||"eager"===this.urlUpdateStrategy||this.currentUrlTree===(null===(xt=this.currentNavigation)||void 0===xt?void 0:xt.finalUrl);Mn&&0!==dn?this.location.historyGo(dn):this.currentUrlTree===(null===(Ut=this.currentNavigation)||void 0===Ut?void 0:Ut.finalUrl)&&0===dn&&(this.resetState(Me),this.browserUrlTree=Me.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(Fe&&this.resetState(Me),this.resetUrlToCurrentUrlTree())}},{key:"resetState",value:function(Me){this.routerState=Me.currentRouterState,this.currentUrlTree=Me.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,Me.rawUrl)}},{key:"resetUrlToCurrentUrlTree",value:function(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}},{key:"cancelNavigationTransition",value:function(Me,Fe){var xt=new Ge(Me.id,this.serializeUrl(Me.extractedUrl),Fe);this.triggerEvent(xt),Me.resolve(!1)}},{key:"generateNgRouterState",value:function(Me,Fe){return"computed"===this.canceledNavigationResolution?{navigationId:Me,"\u0275routerPageId":Fe}:{navigationId:Me}}}]),ke}();return he.\u0275fac=function(pe){T.$Z()},he.\u0275prov=T.Yz7({token:he,factory:he.\u0275fac}),he}();function il(he){for(var ke=0;ke2&&void 0!==arguments[2]?arguments[2]:{};(0,f.Z)(this,ke),this.router=pe,this.viewportScroller=Me,this.options=Fe,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},Fe.scrollPositionRestoration=Fe.scrollPositionRestoration||"disabled",Fe.anchorScrolling=Fe.anchorScrolling||"disabled"}return(0,h.Z)(ke,[{key:"init",value:function(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}},{key:"createScrollEvents",value:function(){var Me=this;return this.router.events.subscribe(function(Fe){Fe instanceof xe?(Me.store[Me.lastId]=Me.viewportScroller.getScrollPosition(),Me.lastSource=Fe.navigationTrigger,Me.restoredId=Fe.restoredState?Fe.restoredState.navigationId:0):Fe instanceof $e&&(Me.lastId=Fe.id,Me.scheduleScrollEvent(Fe,Me.router.parseUrl(Fe.urlAfterRedirects).fragment))})}},{key:"consumeScrollEvents",value:function(){var Me=this;return this.router.events.subscribe(function(Fe){Fe instanceof yt&&(Fe.position?"top"===Me.options.scrollPositionRestoration?Me.viewportScroller.scrollToPosition([0,0]):"enabled"===Me.options.scrollPositionRestoration&&Me.viewportScroller.scrollToPosition(Fe.position):Fe.anchor&&"enabled"===Me.options.anchorScrolling?Me.viewportScroller.scrollToAnchor(Fe.anchor):"disabled"!==Me.options.scrollPositionRestoration&&Me.viewportScroller.scrollToPosition([0,0]))})}},{key:"scheduleScrollEvent",value:function(Me,Fe){this.router.triggerEvent(new yt(Me,"popstate"===this.lastSource?this.store[this.restoredId]:null,Fe))}},{key:"ngOnDestroy",value:function(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}]),ke}();return he.\u0275fac=function(pe){T.$Z()},he.\u0275prov=T.Yz7({token:he,factory:he.\u0275fac}),he}(),yo=new T.OlP("ROUTER_CONFIGURATION"),Fo=new T.OlP("ROUTER_FORROOT_GUARD"),Ml=[ot.Ye,{provide:tn,useClass:ln},{provide:ir,useFactory:function Zs(he,ke,pe,Me,Fe,xt){var Ut=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},dn=arguments.length>7?arguments[7]:void 0,Mn=arguments.length>8?arguments[8]:void 0,hn=new ir(null,he,ke,pe,Me,Fe,Tn(xt));return dn&&(hn.urlHandlingStrategy=dn),Mn&&(hn.routeReuseStrategy=Mn),Xo(Ut,hn),Ut.enableTracing&&hn.events.subscribe(function($n){var hi,Ji;null===(hi=console.group)||void 0===hi||hi.call(console,"Router Event: ".concat($n.constructor.name)),console.log($n.toString()),console.log($n),null===(Ji=console.groupEnd)||void 0===Ji||Ji.call(console)}),hn},deps:[tn,Aa,ot.Ye,T.zs3,T.Sil,Li,yo,[Ba,new T.FiY],[Rn,new T.FiY]]},Aa,{provide:Ci,useFactory:function Cr(he){return he.routerState.root},deps:[ir]},Lo,hs,Ka,{provide:yo,useValue:{enableTracing:!1}}];function Os(){return new T.PXZ("Router",ir)}var $o=function(){var he=function(){function ke(pe,Me){(0,f.Z)(this,ke)}return(0,h.Z)(ke,null,[{key:"forRoot",value:function(Me,Fe){return{ngModule:ke,providers:[Ml,bo(Me),{provide:Fo,useFactory:al,deps:[[ir,new T.FiY,new T.tp0]]},{provide:yo,useValue:Fe||{}},{provide:ot.S$,useFactory:sr,deps:[ot.lw,[new T.tBr(ot.mr),new T.FiY],yo]},{provide:_s,useFactory:Es,deps:[ir,ot.EM,yo]},{provide:Ko,useExisting:Fe&&Fe.preloadingStrategy?Fe.preloadingStrategy:hs},{provide:T.PXZ,multi:!0,useFactory:Os},[Co,{provide:T.ip1,multi:!0,useFactory:gs,deps:[Co]},{provide:ol,useFactory:rl,deps:[Co]},{provide:T.tb,multi:!0,useExisting:ol}]]}}},{key:"forChild",value:function(Me){return{ngModule:ke,providers:[bo(Me)]}}}]),ke}();return he.\u0275fac=function(pe){return new(pe||he)(T.LFG(Fo,8),T.LFG(ir,8))},he.\u0275mod=T.oAB({type:he}),he.\u0275inj=T.cJS({}),he}();function Es(he,ke,pe){return pe.scrollOffset&&ke.setOffset(pe.scrollOffset),new _s(he,ke,pe)}function sr(he,ke){var pe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return pe.useHash?new ot.Do(he,ke):new ot.b0(he,ke)}function al(he){return"guarded"}function bo(he){return[{provide:T.deG,multi:!0,useValue:he},{provide:Li,multi:!0,useValue:he}]}function Xo(he,ke){he.errorHandler&&(ke.errorHandler=he.errorHandler),he.malformedUriErrorHandler&&(ke.malformedUriErrorHandler=he.malformedUriErrorHandler),he.onSameUrlNavigation&&(ke.onSameUrlNavigation=he.onSameUrlNavigation),he.paramsInheritanceStrategy&&(ke.paramsInheritanceStrategy=he.paramsInheritanceStrategy),he.relativeLinkResolution&&(ke.relativeLinkResolution=he.relativeLinkResolution),he.urlUpdateStrategy&&(ke.urlUpdateStrategy=he.urlUpdateStrategy),he.canceledNavigationResolution&&(ke.canceledNavigationResolution=he.canceledNavigationResolution)}var Co=function(){var he=function(){function ke(pe){(0,f.Z)(this,ke),this.injector=pe,this.initNavigation=!1,this.destroyed=!1,this.resultOfPreactivationDone=new V.x}return(0,h.Z)(ke,[{key:"appInitializer",value:function(){var Me=this;return this.injector.get(ot.V_,Promise.resolve(null)).then(function(){if(Me.destroyed)return Promise.resolve(!0);var xt=null,Ut=new Promise(function(hn){return xt=hn}),dn=Me.injector.get(ir),Mn=Me.injector.get(yo);return"disabled"===Mn.initialNavigation?(dn.setUpLocationChangeListener(),xt(!0)):"enabled"===Mn.initialNavigation||"enabledBlocking"===Mn.initialNavigation?(dn.hooks.afterPreactivation=function(){return Me.initNavigation?(0,E.of)(null):(Me.initNavigation=!0,xt(!0),Me.resultOfPreactivationDone)},dn.initialNavigation()):xt(!0),Ut})}},{key:"bootstrapListener",value:function(Me){var Fe=this.injector.get(yo),xt=this.injector.get(Lo),Ut=this.injector.get(_s),dn=this.injector.get(ir),Mn=this.injector.get(T.z2F);Me===Mn.components[0]&&(("enabledNonBlocking"===Fe.initialNavigation||void 0===Fe.initialNavigation)&&dn.initialNavigation(),xt.setUpPreloading(),Ut.init(),dn.resetRootComponentType(Mn.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}},{key:"ngOnDestroy",value:function(){this.destroyed=!0}}]),ke}();return he.\u0275fac=function(pe){return new(pe||he)(T.LFG(T.zs3))},he.\u0275prov=T.Yz7({token:he,factory:he.\u0275fac}),he}();function gs(he){return he.appInitializer.bind(he)}function rl(he){return he.bootstrapListener.bind(he)}var ol=new T.OlP("Router Initializer")},44841:function(dt,K,n){"use strict";function P(t,e){(null==e||e>t.length)&&(e=t.length);for(var p=0,d=new Array(e);p=e.length?{done:!0}:{done:!1,value:e[s++]}},e:function(v){throw v},f:h}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var B,f=!0,T=!1;return{s:function(){d=d.call(e)},n:function(){var v=d.next();return f=v.done,v},e:function(v){T=!0,B=v},f:function(){try{!f&&null!=d.return&&d.return()}finally{if(T)throw B}}}}},7318:function(dt,K,n){"use strict";n.d(K,{Z:function(){return s}});var P=n(20265),t=n(98568);function e(h){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(f){return typeof f}:function(f){return f&&"function"==typeof Symbol&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f})(h)}var p=n(35488);function d(h,f){if(f&&("object"===e(f)||"function"==typeof f))return f;if(void 0!==f)throw new TypeError("Derived constructors may only return object or undefined");return(0,p.Z)(h)}function s(h){var f=(0,t.Z)();return function(){var I,B=(0,P.Z)(h);if(f){var v=(0,P.Z)(this).constructor;I=Reflect.construct(B,arguments,v)}else I=B.apply(this,arguments);return d(this,I)}}},77797:function(dt,K,n){"use strict";function P(t,e,p){return e in t?Object.defineProperty(t,e,{value:p,enumerable:!0,configurable:!0,writable:!0}):t[e]=p,t}n.d(K,{Z:function(){return P}})},4089:function(dt,K,n){"use strict";n.d(K,{Z:function(){return e}});var P=n(20265);function t(p,d){for(;!Object.prototype.hasOwnProperty.call(p,d)&&null!==(p=(0,P.Z)(p)););return p}function e(){return e="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(d,s,h){var f=t(d,s);if(f){var T=Object.getOwnPropertyDescriptor(f,s);return T.get?T.get.call(arguments.length<3?d:h):T.value}},e.apply(this,arguments)}},20265:function(dt,K,n){"use strict";function P(t){return(P=Object.setPrototypeOf?Object.getPrototypeOf:function(p){return p.__proto__||Object.getPrototypeOf(p)})(t)}n.d(K,{Z:function(){return P}})},24582:function(dt,K,n){"use strict";n.d(K,{Z:function(){return t}});var P=n(10006);function t(e,p){if("function"!=typeof p&&null!==p)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(p&&p.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),p&&(0,P.Z)(e,p)}},98568:function(dt,K,n){"use strict";function P(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(t){return!1}}n.d(K,{Z:function(){return P}})},4826:function(dt,K,n){"use strict";function P(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}n.d(K,{Z:function(){return P}})},8217:function(dt,K,n){"use strict";function P(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}n.d(K,{Z:function(){return P}})},10006:function(dt,K,n){"use strict";function P(t,e){return(P=Object.setPrototypeOf||function(d,s){return d.__proto__=s,d})(t,e)}n.d(K,{Z:function(){return P}})},32090:function(dt,K,n){"use strict";n.d(K,{Z:function(){return d}});var P=n(8091),e=n(44206),p=n(8217);function d(s,h){return(0,P.Z)(s)||function t(s,h){var f=null==s?null:"undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(null!=f){var v,j,T=[],B=!0,I=!1;try{for(f=f.call(s);!(B=(v=f.next()).done)&&(T.push(v.value),!h||T.length!==h);B=!0);}catch(Q){I=!0,j=Q}finally{try{!B&&null!=f.return&&f.return()}finally{if(I)throw j}}return T}}(s,h)||(0,e.Z)(s,h)||(0,p.Z)()}},86170:function(dt,K,n){"use strict";n.d(K,{Z:function(){return s}});var P=n(44841),e=n(4826),p=n(44206);function s(h){return function t(h){if(Array.isArray(h))return(0,P.Z)(h)}(h)||(0,e.Z)(h)||(0,p.Z)(h)||function d(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},44206:function(dt,K,n){"use strict";n.d(K,{Z:function(){return t}});var P=n(44841);function t(e,p){if(e){if("string"==typeof e)return(0,P.Z)(e,p);var d=Object.prototype.toString.call(e).slice(8,-1);if("Object"===d&&e.constructor&&(d=e.constructor.name),"Map"===d||"Set"===d)return Array.from(e);if("Arguments"===d||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(d))return(0,P.Z)(e,p)}}}},function(dt){dt(dt.s=53051)}]); -//# sourceMappingURL=main.5b82d623a407e527.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/main.70d2db01a2347076.js b/frontend/src/main/resources/static/main.70d2db01a2347076.js new file mode 100644 index 0000000..78458dd --- /dev/null +++ b/frontend/src/main/resources/static/main.70d2db01a2347076.js @@ -0,0 +1,2 @@ +(self.webpackChunkgsrs_client=self.webpackChunkgsrs_client||[]).push([[179],{79356:function(Ce,E,n){"use strict";n.d(E,{_:function(){return be}});var S=n(39117),t=n(1884),e=n(92938),u=n(18291),o=n(86613),_=n(95758),s=n(69093),h=n(93392),b=n(54244);function T(z,d){1&z&&(o.TgZ(0,"div",11),o.TgZ(1,"h4",12),o._uU(2,"Add Fragment to CV"),o.qZA(),o.qZA())}function y(z,d){1&z&&(o.TgZ(0,"div",11),o.TgZ(1,"h4",13),o._uU(2,"Fragment Structure Wizard"),o.qZA(),o.qZA())}function Y(z,d){if(1&z&&(o.TgZ(0,"div"),o._UZ(1,"img",25),o.qZA()),2&z){var Q=o.oxw(2);o.xp6(1),o.Q6J("src",Q.privateTerm.simpleSrc,o.LSH)}}function q(z,d){if(1&z&&(o.TgZ(0,"div"),o._UZ(1,"img",25),o.qZA()),2&z){var Q=o.oxw(2);o.xp6(1),o.Q6J("src",Q.privateTerm.fragmentSrc,o.LSH)}}function B(z,d){if(1&z){var Q=o.EpF();o.TgZ(0,"div",4),o.TgZ(1,"mat-form-field",14),o.TgZ(2,"input",15),o.NdJ("ngModelChange",function(K){return o.CHM(Q),o.oxw().privateTerm.value=K}),o.qZA(),o.qZA(),o.TgZ(3,"mat-form-field",16),o.TgZ(4,"input",17),o.NdJ("ngModelChange",function(K){return o.CHM(Q),o.oxw().privateTerm.display=K}),o.qZA(),o.qZA(),o.TgZ(5,"mat-form-field",18),o.TgZ(6,"input",19),o.NdJ("ngModelChange",function(K){return o.CHM(Q),o.oxw().privateTerm.description=K}),o.qZA(),o.qZA(),o.TgZ(7,"div",20),o.TgZ(8,"div"),o.TgZ(9,"mat-form-field",21),o.TgZ(10,"input",22),o.NdJ("ngModelChange",function(K){return o.CHM(Q),o.oxw().privateTerm.simplifiedStructure=K})("input",function(){o.CHM(Q);var K=o.oxw();return K.checkImg(K.term)}),o.qZA(),o.qZA(),o.qZA(),o.YNc(11,Y,2,1,"div",23),o.qZA(),o.TgZ(12,"div",20),o.TgZ(13,"div"),o.TgZ(14,"mat-form-field",21),o.TgZ(15,"input",24),o.NdJ("ngModelChange",function(K){return o.CHM(Q),o.oxw().privateTerm.fragmentStructure=K})("input",function(){o.CHM(Q);var K=o.oxw();return K.checkImg(K.term)}),o.qZA(),o.qZA(),o.qZA(),o.YNc(16,q,2,1,"div",23),o.qZA(),o.qZA()}if(2&z){var J=o.oxw();o.xp6(2),o.Q6J("ngModel",J.privateTerm.value),o.xp6(2),o.Q6J("ngModel",J.privateTerm.display),o.xp6(2),o.Q6J("ngModel",J.privateTerm.description),o.xp6(4),o.Q6J("ngModel",J.privateTerm.simplifiedStructure),o.xp6(1),o.Q6J("ngIf",J.privateTerm.simpleSrc),o.xp6(4),o.Q6J("ngModel",J.privateTerm.fragmentStructure),o.xp6(1),o.Q6J("ngIf",J.privateTerm.fragmentSrc)}}function k(z,d){if(1&z){var Q=o.EpF();o.TgZ(0,"div"),o.TgZ(1,"button",6),o.NdJ("click",function(){var G=o.CHM(Q).$implicit;return o.oxw(2).fragmentType(G.domain)}),o._uU(2),o.qZA(),o.qZA()}if(2&z){var J=d.$implicit;o.xp6(2),o.Oqu(J.domain)}}function D(z,d){if(1&z&&(o.TgZ(0,"div",4),o.YNc(1,k,3,1,"div",8),o.qZA()),2&z){var Q=o.oxw();o.xp6(1),o.Q6J("ngForOf",Q.domains)}}function N(z,d){if(1&z){var Q=o.EpF();o.TgZ(0,"div"),o.TgZ(1,"a",26),o.NdJ("click",function(){var G=o.CHM(Q).$implicit;return o.oxw().setTermStructure(G.value)}),o._UZ(2,"img",25),o.qZA(),o.qZA()}if(2&z){var J=d.$implicit;o.xp6(2),o.s9C("src",J.url,o.LSH)}}function I(z,d){1&z&&(o.TgZ(0,"div",27),o.TgZ(1,"div"),o._uU(2,"Click on a form to set the fragment term structure"),o.qZA(),o.qZA())}function L(z,d){1&z&&(o.TgZ(0,"div",27),o.TgZ(1,"div"),o._uU(2,'Set Connection points using "*" atoms in the periodic table element selector.'),o.qZA(),o.qZA())}function j(z,d){if(1&z&&(o.TgZ(0,"div",35),o.TgZ(1,"span"),o._uU(2),o.qZA(),o._uU(3),o.qZA()),2&z){var Q=d.$implicit;o.xp6(1),o.Gre("",Q.messageType," type"),o.xp6(1),o.hij("",Q.messageType," :"),o.xp6(1),o.Oqu(Q.message)}}function le(z,d){if(1&z&&(o.TgZ(0,"div",33),o.TgZ(1,"div"),o.TgZ(2,"b"),o._uU(3,"CV not valid:"),o.qZA(),o.qZA(),o.YNc(4,j,4,5,"div",34),o.qZA()),2&z){var Q=o.oxw(2);o.xp6(4),o.Q6J("ngForOf",Q.validationMessages)}}function re(z,d){if(1&z){var Q=o.EpF();o.TgZ(0,"div",28),o.YNc(1,le,5,1,"div",29),o.TgZ(2,"div",30),o.TgZ(3,"div",31),o._uU(4),o.qZA(),o._UZ(5,"span",5),o.TgZ(6,"button",6),o.NdJ("click",function(){return o.CHM(Q),o.oxw().close()}),o._uU(7,"Cancel"),o.qZA(),o.TgZ(8,"button",32),o.NdJ("click",function(){return o.CHM(Q),o.oxw().save()}),o._uU(9," Save "),o.qZA(),o.qZA(),o.qZA()}if(2&z){var J=o.oxw();o.xp6(1),o.Q6J("ngIf",J.validationMessages.length>0),o.xp6(3),o.Oqu(J.message),o.xp6(4),o.Q6J("disabled",!J.privateTerm.fragmentStructure||!J.privateTerm.description||""===J.privateTerm.value)}}function W(z,d){if(1&z){var Q=o.EpF();o.TgZ(0,"div",28),o.TgZ(1,"div",30),o.TgZ(2,"div",31),o._uU(3),o.qZA(),o._UZ(4,"span",5),o.TgZ(5,"button",6),o.NdJ("click",function(){return o.CHM(Q),o.oxw().close()}),o._uU(6,"Cancel"),o.qZA(),o.qZA(),o.qZA()}if(2&z){var J=o.oxw();o.xp6(3),o.Oqu(J.message)}}var $=function(d){return{height:d}},be=function(){var z=function(){function d(Q,J,te,K,G,ce){(0,S.Z)(this,d),this.CVService=Q,this.loadingService=J,this.structureService=te,this.dialogRef=K,this.overlayContainerService=G,this.data=ce,this.termUpdated=new o.vpe,this.forms=[],this.term2={value:"",display:""},this.privateTerm={value:"",display:""},this.asDialog=!1,this.validationMessages=[],this.vocabulary=ce.vocabulary,this.vocab=ce.vocabulary.domain,this.privateTerm.value=ce.term,this.privateTerm.display=ce.term,this.asDialog=!0,this.adminPanel=ce.adminPanel}return(0,t.Z)(d,[{key:"term",set:function(J){null!=J&&(this.privateTerm=J)}},{key:"standardized",get:function(){return this.privateTerm}},{key:"close",value:function(){this.dialogRef.close()}},{key:"save",value:function(){var J=this,te=!1;if(this.vocabulary.terms.forEach(function(G){G.value===J.privateTerm.value&&(te=!0)}),te)this.message="Term already exists",setTimeout(function(){J.message=""},1e3);else{var K=JSON.parse(JSON.stringify(this.privateTerm));delete K.simpleSrc,delete K.fragmentSrc,this.vocabulary.terms.push(K),this.CVService.validateVocab(this.vocabulary).subscribe(function(G){G&&G.valid?J.CVService.addVocabTerm(J.vocabulary).subscribe(function(ce){ce.terms&&ce.terms.length===J.vocabulary.terms.length&&(J.message="Term "+J.privateTerm.value+" Added to "+J.vocabulary.domain,setTimeout(function(){J.dialogRef.close(J.privateTerm)},3e3))},function(ce){J.vocabulary.terms.pop();var _e="Server Error";ce.error&&ce.error.message?_e+=" - "+ce.error.message:ce.message&&(_e+=" - "+ce.message),J.message=_e}):(G.validationMessages&&G.validationMessages.forEach(function(ce){J.validationMessages.push(ce)}),J.vocabulary.terms.pop())},function(G){console.log(G),J.vocabulary.terms.pop();var ce="Validation Error";G.error&&G.error.message?ce+=" - "+G.error.message:G.message&&(ce+=" - "+G.message),J.message=ce})}}},{key:"ngOnInit",value:function(){this.privateTerm.simplifiedStructure&&(this.privateTerm.simpleSrc=this.CVService.getStructureUrl(this.privateTerm.simplifiedStructure)),this.privateTerm.fragmentStructure&&(this.privateTerm.fragmentSrc=this.CVService.getStructureUrl(this.privateTerm.fragmentStructure)),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"molvecUpdate",value:function(J){this.editor.setMolecule(J)}},{key:"editorOnLoad",value:function(J){var te=this;if(this.loadingService.setLoading(!1),this.editor=J,this.privateTerm.value&&this.privateTerm.value.fragmentStructure){var K=this.privateTerm.value.fragmentStructure.substring(0,this.privateTerm.value.fragmentStructure.indexOf(" "));this.structureService.interpretStructure(K).subscribe(function(G){if(G.structure&&G.structure.molfile){var ce=G.structure.molfile;ce=ce.replace(/ A /g," * "),te.editor.setMolecule(ce)}})}setTimeout(function(){te.overlayContainer.style.zIndex="1003",te.overlayContainer.style.zIndex="10003"})}},{key:"getCombination",value:function(J,te){for(var K=J,G=[],ce=0;ce1;J--)te*=J;return te}},{key:"forEachCombination",value:function(J,te){for(var K=0;K1;lt--)Xe*=lt;return Xe}function Me(lt,Xe){for(var mt=lt,wt=[],Pt=0;Pt0&&J.adminPanel),o.xp6(1),o.Q6J("ngIf",(!J.forms||J.forms.length<=0)&&J.adminPanel),o.xp6(1),o.Q6J("ngIf",(!J.vocab||J.asDialog)&&!J.adminPanel),o.xp6(1),o.Q6J("ngIf",J.adminPanel))},styles:[".editor-container[_ngcontent-%COMP%]{width:920px;min-height:380px;margin:auto}.cell[_ngcontent-%COMP%]{margin-right:5px}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;width:100%}.two[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.action-button-container[_ngcontent-%COMP%]{width:50%;margin:20px auto auto}}@media (max-width: 970px){.structure-editor-actions-container[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.editor-container[_ngcontent-%COMP%], .search-actions[_ngcontent-%COMP%]{min-width:633px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%], .jsdraw[_ngcontent-%COMP%] .search-actions[_ngcontent-%COMP%]{min-width:710px}}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row} table{z-index:20000!important}.structure-img[_ngcontent-%COMP%]{margin-top:-20px;margin-bottom:-20px}.validation[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%}.message[_ngcontent-%COMP%]{padding-top:5px;padding-left:15px}.ERROR[_ngcontent-%COMP%]{background-color:var(--regular-red-color);color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color);padding:4px 5px;margin-right:5px;border-radius:5px}.WARNING[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color);padding:4px 5px;margin-right:5px;border-radius:5px}.INFO[_ngcontent-%COMP%]{color:var(--regular-black-color);background-color:var(--regular-lightgray-color);padding:4px 5px;margin-right:5px;border-radius:5px}"]}),z}()},88951:function(Ce,E,n){"use strict";n.d(E,{e:function(){return y}});var S=n(44014),t=n(39117),e=n(1884),c=n(86613),u=n(92507),o=n(50253),_=n(83336),s=n(59295),h=n(50635),b=n(28784),T=n(36362),y=function(){var Y=function(){function q(B,k,D){var N=this;(0,t.Z)(this,q),this.configService=B,this.http=k,this.platformId=D,this._authUpdate=new o.x,this.isLoading=!0,B.afterLoad().then(function(I){N.fetchAuth().pipe((0,s.q)(1)).subscribe(function(L){N._auth=L&&null!=L.computedToken?L:null,N._authUpdate.next(N._auth),N.isLoading=!1},function(L){N._authUpdate.next(null),N.isLoading=!1})})}return(0,e.Z)(q,[{key:"auth",get:function(){return this._auth}},{key:"checkAuth",value:function(){var k="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(k,"whoami"))}},{key:"login",value:function(k,D){var N=this,I={headers:{"auth-username":k,"auth-password":D}},L="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(L,"whoami"),I).pipe((0,h.U)(function(j){return j&&j.computedToken?(N._auth=j,(0,T.NF)(N.platformId)&&sessionStorage.setItem("authToken",j.computedToken)):N._auth=null,N._authUpdate.next(N._auth),N._auth}))}},{key:"getAuth",value:function(){var k=this;return new _.y(function(D){null!=k._auth?D.next(k._auth):k.isLoading||(k.isLoading=!0,k.fetchAuth().pipe((0,s.q)(1)).subscribe(function(N){k._auth=N&&null!=N.computedToken?N:null,D.next(k._auth),k._authUpdate.next(k._auth),k.isLoading=!1},function(N){k.logout(),k.isLoading=!1})),k._authUpdate.subscribe(function(N){try{D.next(N)}catch(I){console.log("Error calling observer")}},function(N){console.log("Error calling observer, registered error");try{D.next(null)}catch(I){console.log("Error calling observer, registered error, passed null")}})})}},{key:"logout",value:function(){var k=this;if((0,T.NF)(this.platformId)){sessionStorage.removeItem("authToken");var I,D=document.cookie.split(";"),N=(0,S.Z)(D);try{for(N.s();!(I=N.n()).done;){var L=I.value,j=L.indexOf("="),le=j>-1?L.substr(0,j):L;document.cookie=le+"=;expires=Thu, 01 Jan 1970 00:00:00 GMT"}}catch(W){N.e(W)}finally{N.f()}}var re="".concat(this.configService.configData.apiBaseUrl,"logout");this.http.get(re).subscribe(function(){k._auth=null,k._authUpdate.next(null)},function(W){k._auth=null,k._authUpdate.next(null)})}},{key:"getUser",value:function(){return this._auth&&this._auth.identifier?this._auth.identifier:""}},{key:"hasRoles",value:function(){for(var k=arguments.length,D=new Array(k),N=0;N-1)return!0}}catch(W){L.e(W)}finally{L.f()}return!1}},{key:"hasAnyRolesAsync",value:function(){for(var k=this,D=arguments.length,N=new Array(D),I=0;I-1){var q=Y.apiBaseUrl.split("/");Y.apiUrlDomain="".concat(q[0],"//").concat(q[2])}else Y.apiUrlDomain="";null==Y.googleAnalyticsId&&null!=b.googleAnalyticsId&&(Y.googleAnalyticsId=b.googleAnalyticsId),null==Y.version&&null!=b.version&&(Y.version=b.version),null==Y.contactEmail&&null!=b.contactEmail&&(Y.contactEmail=b.contactEmail);var B=e.slice();if(Y.navItems&&Y.navItems.length){var k=Y.navItems.filter(function(D){if(null!=D.children&&D.children.length>0){for(var N=!0,I=0;I0&&be.push(I.fetchVocabulariesFromServer.apply(I,$)),be.length>0)var d=(0,h.D)(be).subscribe(function(Q){Q.forEach(function(J){W=Object.assign(W,J)}),z.next(W),z.complete(),d.unsubscribe()},function(Q){z.error(Q),z.complete(),d.unsubscribe()});else z.next(W),z.complete()})}},{key:"getStructure",value:function(I){return this.http.get(this.baseUrl+"render?structure="+I+"&size=150&standardize=true")}},{key:"getStructureUrl",value:function(I){return I=I.replace(/[;]/g,"%3B").replace(/[#]/g,"%23").replace(/[+]/g,"%2B").replace(/[|]/g,"%7C"),this.baseUrl+"render?structure="+I+"&size=150&standardize=true"}},{key:"getStructureUrlFragment",value:function(I){return I=I.replace(/%/g,"%25").replace(/#/g,"%23").replace(/[;]/g,"%3B").replace(/[+]/g,"%2B"),this.baseUrl+"render?structure="+I+"&size=150&standardize=true"}},{key:"search",value:function(I,L){var j=this;return new s.y(function(le){var re=j.getDomainVocabulary(I).subscribe(function(W){var $=W[I].list.filter(function(z){return z.value.toLowerCase().indexOf(L.toLowerCase())>-1}),be=[];null!=$&&$.length&&(be=$.sort(function(z,d){return zd?1:0})),le.next(be),re.unsubscribe()})})}},{key:"fetchFullVocabulary",value:function(I){var L="".concat(this.apiBaseUrl,"vocabularies/search"),j=new u.LE;j=j.append("top","100000");var le="";return this.vocabularyLoadingIndicators[I]=!0,null==this.vocabularySubject[I]&&(this.vocabularySubject[I]=new _.x),le+="root_domain:".concat(I),j=j.append("q",le),this.http.get(L,{params:j})}},{key:"validateVocab",value:function(I){var L="".concat(this.apiBaseUrl,"vocabularies/@validate");return this.http.post(L,I)}},{key:"addVocabTerm",value:function(I){var L="".concat(this.apiBaseUrl,"vocabularies");return this.http.put(L,I)}},{key:"getFragmentCV",value:function(){var I="".concat(this.apiBaseUrl,"vocabularies/search?facet=ix.Class/ix.ginas.models.v1.FragmentControlledVocabulary");return this.http.get(I)}},{key:"fetchVocabulariesFromServer",value:function(){var I=this,L="".concat(this.apiBaseUrl,"vocabularies/search"),j=new u.LE;j=j.append("top","100000");for(var le=arguments.length,re=new Array(le),W=0;W0&&(z+=" OR "),z+="root_domain:".concat(J)});var Q={params:j=j.append("q",z)};return this.http.get(L,Q).pipe((0,T.U)(function(J){return J.content&&J.content.length?(J.content.forEach(function(te){var K={};te.terms&&te.terms.length&&(K[te.domain]||(K[te.domain]={dictionary:{}}),K[te.domain].list=te.terms.filter(function(G){return!1===G.hidden&&!1===G.deprecated}).sort(function(G,ce){var _e=G.display&&G.display.toUpperCase()||G.value&&G.value.toUpperCase()||"",Me=ce.display&&ce.display.toUpperCase()||ce.value&&ce.value.toUpperCase()||"";return _eMe?1:0}),te.terms.filter(function(G){return!1===G.hidden&&!1===G.deprecated}).forEach(function(G){K[te.domain].dictionary[G.value]=G})),null!=I.vocabularySubject[te.domain]&&(I.vocabularySubject[te.domain].next(K),I.vocabularySubject[te.domain].complete(),I.vocabularySubject[te.domain]=null,d[te.domain]=K[te.domain],I.vocabularyDictionary[te.domain]=d[te.domain],I.vocabularyLoadingIndicators[te.domain]=!1),be.splice(be.indexOf(te.domain),1)}),be&&be.length&&be.forEach(function(te){var K={};K[te]={dictionary:{},list:[]},I.vocabularySubject[te].next(K),I.vocabularySubject[te].complete(),I.vocabularySubject[te]=null})):$.forEach(function(te,K){var G={};G[te]={dictionary:{},list:[]},I.vocabularySubject[te].next(G),I.vocabularySubject[te].complete(),I.vocabularyLoadingIndicators[te]=!1}),d}))}}]),D}(o.q);return q.\u0275fac=function(k){return new(k||q)(y.LFG(u.eN),y.LFG(b.E))},q.\u0275prov=y.Yz7({token:q,factory:q.\u0275fac,providedIn:"root"}),q}()},18291:function(Ce,E,n){"use strict";n.d(E,{I:function(){return S.I}});var S=n(42827)},64061:function(Ce,E,n){"use strict";n.d(E,{o:function(){return _}});var S=n(39117),t=n(1884),e=n(86613),c=n(98002),u=n(49143),o=n(88828),_=function(){var s=function(){function h(){(0,S.Z)(this,h)}return(0,t.Z)(h,null,[{key:"forRoot",value:function(){var T=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],y=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return{ngModule:h,providers:[u.U,{provide:c.Z6,useValue:T,multi:!0},{provide:o.Mr,useValue:T,multi:!0},{provide:o.NE,useValue:y,multi:!0}]}}},{key:"forModule",value:function(T){return{ngModule:h,providers:[{provide:e.deG,useValue:T,multi:!0},{provide:c.Z6,useValue:T,multi:!0},{provide:o.fC,useValue:T}]}}},{key:"forChild",value:function(T){return{ngModule:h,providers:[{provide:e.deG,useValue:T,multi:!0},{provide:c.Z6,useValue:[],multi:!0},{provide:o.x7,useValue:T}]}}}]),h}();return s.\u0275fac=function(b){return new(b||s)},s.\u0275mod=e.oAB({type:s}),s.\u0275inj=e.cJS({}),s}()},49143:function(Ce,E,n){"use strict";n.d(E,{U:function(){return b}});var S=n(39117),t=n(1884),e=n(86613),c=n(25474),u=n(83336),o=n(72957),_=n(10745),s=n(49525),h=n(88828),b=function(){var T=function(){function y(Y,q,B){(0,S.Z)(this,y),this.manifests=Y,this.injector=q,this.compiler=B}return(0,t.Z)(y,[{key:"getComponentFactory",value:function(q,B){var k=this,N=this.manifests.reduce(function(L,j){return L.concat(j)},[]).find(function(L){return L.componentId===q});if(!N)return(0,c._)('DynamicComponentLoader: Unknown componentId "'.concat(q,'"'));var I=N.loadChildren;if(!I)throw new Error("".concat(q," unknown!"));return this._wrapIntoObservable(I()).pipe((0,s.z)(function(L){return k.loadFactory(L,q,B)}))}},{key:"loadFactory",value:function(q,B,k){var D=this,N=(0,e.hM9)(q,k||this.injector),I=N.injector.get(h.x7,null);if(!I){var L=N.injector.get(h.fC,null);if(!L)throw new Error("DynamicComponentLoader: Dynamic module for"+' componentId "'.concat(B,'" does not contain')+" DYNAMIC_COMPONENT or DYNAMIC_MODULE as a provider.");if(L.componentId!==B)throw new Error("DynamicComponentLoader: Dynamic module for"+"".concat(B," does not match manifest."));var j=L.loadChildren;if(!j)throw new Error("".concat(B," unknown!"));return this._wrapIntoObservable(j()).pipe((0,s.z)(function(le){var re;return re=D.compiler instanceof e.Sil?le:D.compiler.compileModuleSync(le),D.loadFactory(re,B,k)})).toPromise()}return Promise.resolve(N.componentFactoryResolver.resolveComponentFactory(I))}},{key:"_wrapIntoObservable",value:function(q){return q instanceof u.y?q:q instanceof Promise?(0,o.D)(q):(0,_.of)(q)}}]),y}();return T.\u0275fac=function(Y){return new(Y||T)(e.LFG(h.Mr),e.LFG(e.zs3),e.LFG(e.Sil))},T.\u0275prov=e.Yz7({token:T,factory:T.\u0275fac}),T}()},88828:function(Ce,E,n){"use strict";n.d(E,{x7:function(){return t},fC:function(){return e},Mr:function(){return c},NE:function(){return u}});var S=n(86613),t=new S.OlP("DYNAMIC_COMPONENT"),e=new S.OlP("DYNAMIC_MODULE"),c=new S.OlP("LAZY_LOADED_COMPONENT_MANIFESTS"),u=new S.OlP("DYNAMIC_COMPONENT_MANIFESTS")},75143:function(Ce,E,n){"use strict";n.d(E,{o0:function(){return S.o},NE:function(){return e.NE}});var S=n(64061),e=(n(49143),n(88828))},45723:function(Ce,E,n){"use strict";n.d(E,{F:function(){return u}});var S=n(1884),t=n(39117),e=n(36362),c=n(86613),u=function(){var o=(0,S.Z)(function _(){(0,t.Z)(this,_)});return o.\u0275fac=function(s){return new(s||o)},o.\u0275mod=c.oAB({type:o}),o.\u0275inj=c.cJS({imports:[[e.ez]]}),o}()},90813:function(Ce,E,n){"use strict";n.d(E,{Y:function(){return u}});var S=n(39117),t=n(1884),e=n(92507),c=n(86613),u=function(){var o=function(){function _(s){(0,S.Z)(this,_),this.configService=s}return(0,t.Z)(_,[{key:"transform",value:function(h,b){var T="UNII";if(this.configService.configData&&this.configService.configData.approvalCodeName&&(T=this.configService.configData.approvalCodeName),b){if("types"===b)return"structurallyDiverse"===h?"Structurally Diverse":"nucleicAcid"===h?"Nucleic Acid":"specifiedSubstanceG1"===h?"Group 1 Specified Substance":"specifiedSubstanceG3"===h?"Group 3 Specified Substance":h.charAt(0).toUpperCase()+h.slice(1);if("status"===b){if("approved"===h)return"Validated ("+T+")";if("non-approved"===h)return"non-Validated"}}if(this.configService&&this.configService.configData.facetDisplay){var y=h;if(this.configService.configData.facetDisplay.forEach(function(q){if(h===q.value)return y=q.display,q.display}),y!==h)return y}if("substancestereochemistry"===h.toLowerCase())return"Stereochemistry";if("root_lastEdited"===h)return"Last Edited Date";if("root_approved"===h)return"Last Validated Date";if("root_created"===h)return"Created Date";if("Approved By"===h)return"Validated By";if("root_lastEditedBy"===h)return"Last Edited By";if("Substance Class"===h)return"Substance Type";if("GInAS Tag"===h)return"Source Tag";if("GInAS Domain"===h)return"Domain";if("relationships"===b&&h.indexOf("->")>=0){var Y=h.split("->");return"PARENT"===Y[0].trim()?Y[1].trim()+" (PARENT)":Y[0].trim()+" -> "+Y[1].trim()}return"root_submitDate"===h?"Submit Date":h.trim()}}]),_}();return o.\u0275fac=function(s){return new(s||o)(c.Y36(e.E,16))},o.\u0275pipe=c.Yjl({name:"facetDisplay",type:o,pure:!0}),o}()},60670:function(Ce,E,n){"use strict";n.d(E,{n:function(){return s}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),s=function(b){(0,u.Z)(y,b);var T=(0,o.Z)(y);function y(Y){return(0,S.Z)(this,y),T.call(this,Y)}return(0,t.Z)(y,[{key:"appendFacetParams",value:function(q,B){var k=new y({fromString:(0,e.Z)((0,c.Z)(y.prototype),"toString",this).call(this),encoder:new h}),D=!1;return null!=q&&Object.keys(q).forEach(function(I){null!=q[I]&&Object.keys(q[I].params).forEach(function(j){null!=q[I].params[j]&&("Deprecated"===j&&!0!==q[I].params[j]?D=!0:k=k.append("facet","".concat(q[I].params[j]?q[I].isAllMatch?"^":"":"!").concat(I.replace(/\//g,"$$$"),"/").concat(j.replace(/\//g,"$$$"))))})}),B||D||(k=k.append("facet","Deprecated/Not Deprecated")),k}},{key:"append",value:function(q,B){return new y({fromString:(0,e.Z)((0,c.Z)(y.prototype),"append",this).call(this,q,B).toString(),encoder:new h})}},{key:"appendDictionary",value:function(q){var B=new y({fromString:(0,e.Z)((0,c.Z)(y.prototype),"toString",this).call(this),encoder:new h});if(null!=q){var k=Object.keys(q);null!=k&&k.length&&k.forEach(function(D){null!=q[D]&&""!==q[D]&&(B=B.append(D,q[D].toString()))})}return B}}]),y}(n(28784).LE),h=function(){function b(){(0,S.Z)(this,b)}return(0,t.Z)(b,[{key:"encodeKey",value:function(y){return encodeURIComponent(y)}},{key:"encodeValue",value:function(y){return encodeURIComponent(y)}},{key:"decodeKey",value:function(y){return decodeURIComponent(y)}},{key:"decodeValue",value:function(y){return decodeURIComponent(y)}}]),b}()},95132:function(Ce,E,n){"use strict";n.d(E,{R:function(){return an}});var S=n(44014),t=n(39117),e=n(1884),c=n(86613),u=n(50253),o=n(63169),_=n(59295),s=n(71989),h=n(98977),b=n(32673),T=n(98589),y=n(44250),Y=n(53141),q=n(40104),B=(0,e.Z)(function kt(It,$e,Ae,X){(0,t.Z)(this,kt),this.type=It,this.bool=$e,this.val=Ae,this.removeFacet=X}),k=n(98002),D=n(36362),N=n(61534),I=n(90587),L=n(16531),j=n(44770),le=n(43365),re=n(87317),W=n(65590),$=n(60833),be=n(90813),z=n(89633),d=n(18291),Q=n(50635),J=function(){var kt=function(){function It($e){(0,t.Z)(this,It),this.cvService=$e}return(0,e.Z)(It,[{key:"transform",value:function(Ae,X){return this.cvService.getDomainVocabulary("RELATIONSHIP_TYPE").pipe((0,Q.U)(function(ne){var me;return(me=ne.RELATIONSHIP_TYPE.dictionary)[Ae]?me[Ae].display:Ae}))}}]),It}();return kt.\u0275fac=function($e){return new($e||kt)(c.Y36(d.I,16))},kt.\u0275pipe=c.Yjl({name:"relationshipDisplay",type:kt,pure:!0}),kt}();function te(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"mat-checkbox",4),c.NdJ("change",function(){return c.CHM($e),c.oxw().toggleDeprecated()}),c._uU(1,"Show Deprecated Records"),c.qZA()}if(2&kt){var Ae=c.oxw();c.Q6J("ngModel",Ae.showDeprecated)}}function K(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"input",17),c.NdJ("ngModelChange",function(me){c.CHM($e);var Oe=c.oxw(4).$implicit;return c.oxw().searchText[Oe.name].value=me})("ngModelChange",function(me){c.CHM($e);var Oe=c.oxw(4),He=Oe.index,At=Oe.$implicit;return c.oxw().filterFacets(He,me,At.name)}),c.qZA()}if(2&kt){var Ae=c.oxw(4).$implicit,X=c.oxw();c.MGl("placeholder","Search ",Ae.name,""),c.Q6J("ngModel",X.searchText[Ae.name].value)}}function G(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"input",18),c.NdJ("ngModelChange",function(me){c.CHM($e);var Oe=c.oxw(4).$implicit;return c.oxw().searchText[Oe.name].value=me})("ngModelChange",function(me){c.CHM($e);var Oe=c.oxw(4),He=Oe.index,At=Oe.$implicit;return c.oxw().filterFacets(He,me,At.name)}),c.qZA()}if(2&kt){var Ae=c.oxw(4).$implicit,X=c.oxw();c.Q6J("ngModel",X.searchText[Ae.name].value)}}function ce(kt,It){if(1&kt&&(c.TgZ(0,"mat-form-field"),c.YNc(1,K,1,2,"input",15),c.YNc(2,G,1,1,"input",16),c.qZA()),2&kt){var $e=c.oxw(3).$implicit;c.xp6(1),c.Q6J("ngIf","Approved By"!==$e.name),c.xp6(1),c.Q6J("ngIf","Approved By"===$e.name)}}function _e(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"div",12),c.YNc(1,ce,3,2,"mat-form-field",6),c.TgZ(2,"button",13),c.NdJ("click",function(){c.CHM($e);var me=c.oxw(2),Oe=me.index,He=me.$implicit;return c.oxw().clearFacetSearch(Oe,He.name)}),c._UZ(3,"mat-icon",14),c.qZA(),c.qZA()}if(2&kt){var Ae=c.oxw(2).$implicit,X=c.oxw();c.xp6(1),c.Q6J("ngIf",X.searchText[Ae.name])}}function Me(kt,It){1&kt&&c._UZ(0,"mat-progress-bar",19)}function ve(kt,It){if(1&kt&&(c.TgZ(0,"div"),c.YNc(1,_e,4,1,"div",10),c.YNc(2,Me,1,0,"mat-progress-bar",11),c.qZA()),2&kt){var $e=c.oxw().$implicit,Ae=c.oxw();c.xp6(1),c.Q6J("ngIf",$e.enhanced),c.xp6(1),c.Q6J("ngIf",Ae.searchText[$e.name]&&Ae.searchText[$e.name].isLoading)}}function ue(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"mat-checkbox",27),c.NdJ("change",function(Oe){c.CHM($e);var He=c.oxw().$implicit,At=c.oxw().$implicit;return c.oxw().updateFacetSelection(Oe,At.name,He.label,!1)}),c.qZA()}if(2&kt){var Ae=c.oxw().$implicit,X=c.oxw().$implicit,ne=c.oxw();c.Q6J("checked",ne.facetParams[X.name]&&!1===ne.facetParams[X.name].params[Ae.label])}}function lt(kt,It){if(1&kt&&(c.TgZ(0,"span"),c._uU(1),c.qZA()),2&kt){var $e=c.oxw().$implicit;c.xp6(1),c.hij(" ",$e.label," ")}}function Xe(kt,It){if(1&kt&&(c.TgZ(0,"span"),c._uU(1),c.ALo(2,"facetDisplay"),c.qZA()),2&kt){var $e=c.oxw().$implicit;c.xp6(1),c.hij(" ",c.xi3(2,1,$e.label,"types")," ")}}function mt(kt,It){if(1&kt&&(c.TgZ(0,"span"),c._uU(1),c.ALo(2,"facetDisplay"),c.qZA()),2&kt){var $e=c.oxw().$implicit;c.xp6(1),c.hij(" ",c.xi3(2,1,$e.label,"status")," ")}}function wt(kt,It){if(1&kt&&(c.TgZ(0,"span"),c._uU(1),c.ALo(2,"async"),c.ALo(3,"codeSystemDisplay"),c.qZA()),2&kt){var $e=c.oxw().$implicit;c.xp6(1),c.hij(" ",c.lcZ(2,1,c.lcZ(3,3,$e.label))," ")}}function Pt(kt,It){if(1&kt&&(c.TgZ(0,"span"),c._uU(1),c.ALo(2,"async"),c.ALo(3,"relationshipDisplay"),c.qZA()),2&kt){var $e=c.oxw().$implicit;c.xp6(1),c.hij(" ",c.lcZ(2,1,c.lcZ(3,3,$e.label))," ")}}function Pe(kt,It){if(1&kt){var $e=c.EpF();c.ynx(0),c.TgZ(1,"div",20),c.TgZ(2,"div",21),c.TgZ(3,"mat-checkbox",22),c.NdJ("change",function(Oe){var At=c.CHM($e).$implicit,Ft=c.oxw().$implicit;return c.oxw().updateFacetSelection(Oe,Ft.name,At.label,!0)}),c.qZA(),c.YNc(4,ue,1,1,"mat-checkbox",23),c.qZA(),c.TgZ(5,"div",24),c.YNc(6,lt,2,1,"span",6),c.YNc(7,Xe,3,4,"span",6),c.YNc(8,mt,3,4,"span",6),c.YNc(9,wt,4,5,"span",6),c.YNc(10,Pt,4,5,"span",6),c.qZA(),c._UZ(11,"div",25),c.TgZ(12,"div",26),c._uU(13),c.qZA(),c.qZA(),c.BQk()}if(2&kt){var Ae=It.$implicit,X=c.oxw().$implicit,ne=c.oxw();c.xp6(3),c.Q6J("checked",ne.facetParams[X.name]&&!0===ne.facetParams[X.name].params[Ae.label]),c.xp6(1),c.Q6J("ngIf",X.$showAdvanced),c.xp6(1),c.Q6J("ngClass",ne.facetParams[X.name]&&!1===ne.facetParams[X.name].params[Ae.label]?"strikethrough":""),c.xp6(1),c.Q6J("ngIf","Substance Class"!==X.name&&"Record Status"!==X.name&&"Code System"!==X.name&&"Relationships"!==X.name),c.xp6(1),c.Q6J("ngIf","Substance Class"===X.name),c.xp6(1),c.Q6J("ngIf","Record Status"===X.name),c.xp6(1),c.Q6J("ngIf","Code System"===X.name),c.xp6(1),c.Q6J("ngIf","Relationships"===X.name),c.xp6(3),c.hij(" ",Ae.count," ")}}var ze=function(It){return{"show-more":!0,disabled:It}};function ft(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"a",29),c.NdJ("click",function(){c.CHM($e);var me=c.oxw(2),Oe=me.index,He=me.$implicit;return c.oxw().moreFacets(Oe,He)}),c._uU(1),c.qZA()}if(2&kt){var Ae=c.oxw(2).$implicit,X=c.oxw();c.Q6J("ngClass",c.VKq(2,ze,Ae.$isLoading)),c.xp6(1),c.hij(" More...",X.searchText[Ae.name]&&X.searchText[Ae.name].value||""," ")}}function ct(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"a",29),c.NdJ("click",function(){c.CHM($e);var me=c.oxw(2).index;return c.oxw().lessFacets(me)}),c._uU(1),c.qZA()}if(2&kt){var Ae=c.oxw(2).$implicit,X=c.oxw();c.Q6J("ngClass",c.VKq(2,ze,Ae.$isLoading)),c.xp6(1),c.hij(" Show Less ",X.searchText[Ae.name]&&X.searchText[Ae.name].value||""," ")}}function Ee(kt,It){if(1&kt&&(c.TgZ(0,"span"),c.YNc(1,ft,2,4,"a",28),c.YNc(2,ct,2,4,"a",28),c.qZA()),2&kt){var $e=c.oxw().$implicit;c.xp6(1),c.Q6J("ngIf",!$e.$total||$e.$total>$e.values.length),c.xp6(1),c.Q6J("ngIf",$e.values.length>10)}}function st(kt,It){1&kt&&(c.TgZ(0,"span"),c._uU(1,"hide "),c.qZA())}function nt(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"div",30),c.TgZ(1,"a",31),c.NdJ("click",function(){c.CHM($e);var ne=c.oxw().$implicit;return ne.$showAdvanced=!ne.$showAdvanced}),c.YNc(2,st,2,0,"span",6),c._uU(3,"advanced options "),c.qZA(),c.qZA()}if(2&kt){var Ae=c.oxw().$implicit;c.xp6(2),c.Q6J("ngIf",Ae.$showAdvanced)}}function at(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"mat-checkbox",37),c.NdJ("ngModelChange",function(me){c.CHM($e);var Oe=c.oxw(2).$implicit;return c.oxw().facetParams[Oe.name].isAllMatch=me})("change",function(){c.CHM($e);var me=c.oxw(2).$implicit;return c.oxw().updateAllMatch(me.name)}),c._uU(1," All Match "),c.qZA()}if(2&kt){var Ae=c.oxw(2).$implicit,X=c.oxw();c.Q6J("ngModel",X.facetParams[Ae.name].isAllMatch)}}function We(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"button",38),c.NdJ("click",function(){c.CHM($e);var ne=c.oxw(2).$implicit;return c.oxw().clearFacetSelection(ne.name)}),c._uU(1," Clear "),c.qZA()}if(2&kt){var Ae=c.oxw(3);c.Q6J("disabled",Ae.isLoading)}}function xe(kt,It){if(1&kt){var $e=c.EpF();c.TgZ(0,"button",39),c.NdJ("click",function(){c.CHM($e);var ne=c.oxw(2).$implicit;return c.oxw().applyFacetsFilter(ne.name)}),c._uU(1," Apply "),c.qZA()}if(2&kt){var Ae=c.oxw(3);c.Q6J("disabled",Ae.isLoading)}}function ut(kt,It){if(1&kt&&(c.TgZ(0,"div",32),c.YNc(1,at,2,1,"mat-checkbox",33),c.TgZ(2,"div",34),c.YNc(3,We,2,1,"button",35),c.YNc(4,xe,2,1,"button",36),c.qZA(),c.qZA()),2&kt){var $e=c.oxw().$implicit,Ae=c.oxw();c.xp6(1),c.Q6J("ngIf",Ae.facetParams[$e.name]&&Ae.facetParams[$e.name].showAllMatchOption),c.xp6(2),c.Q6J("ngIf",Ae.facetParams[$e.name]&&Ae.facetParams[$e.name].hasSelections),c.xp6(1),c.Q6J("ngIf",Ae.facetParams[$e.name]&&Ae.facetParams[$e.name].isUpdated)}}var Fe=function(It){return{col:It}},et=function(It){return{"panel-height":It}};function Ht(kt,It){if(1&kt&&(c.TgZ(0,"mat-expansion-panel",5),c.TgZ(1,"mat-expansion-panel-header"),c.TgZ(2,"mat-panel-title"),c._uU(3),c.ALo(4,"facetDisplay"),c.qZA(),c.qZA(),c.TgZ(5,"div",1),c.YNc(6,ve,3,2,"div",6),c.YNc(7,Pe,14,9,"ng-container",7),c.TgZ(8,"div"),c.YNc(9,Ee,3,2,"span",6),c.qZA(),c.YNc(10,nt,4,1,"div",8),c.YNc(11,ut,5,3,"div",9),c.qZA(),c.qZA()),2&kt){var $e=It.$implicit,Ae=c.oxw();c.Q6J("ngClass",c.VKq(11,Fe,"advancedsearch"===Ae.calledFrom))("expanded",!0===Ae.panelExpanded||Ae.facetParams&&Ae.facetParams[$e.name]),c.xp6(3),c.hij(" ",c.lcZ(4,9,$e.name)," "),c.xp6(2),c.Q6J("ngClass",c.VKq(13,et,"advancedsearch"===Ae.calledFrom)),c.xp6(1),c.Q6J("ngIf",Ae.includeFacetSearch),c.xp6(1),c.Q6J("ngForOf",$e.values),c.xp6(2),c.Q6J("ngIf",$e.values&&$e.values.length>=10&&(!Ae.searchText[$e.name]||""===Ae.searchText[$e.name].value)&&$e.enhanced),c.xp6(1),c.Q6J("ngIf",$e.enhanced),c.xp6(1),c.Q6J("ngIf",null!==Ae.facetParams[$e.name])}}var nn=function(It){return{"panel-height-scroll":It}},an=function(){var kt=function(){function It($e,Ae,X,ne,me,Oe,He,At,Ft){(0,t.Z)(this,It),this.activatedRoute=$e,this.utilsService=Ae,this.facetsService=X,this.authService=ne,this.configService=me,this.gaService=Oe,this.router=He,this.location=At,this.facetManagerService=Ft,this.facetsParamsUpdated=new c.vpe,this.facetsLoaded=new c.vpe,this.includeFacetSearch=!1,this.calledFrom="default",this.panelExpanded=!1,this.displayFacets=[],this.searchText={},this.toggle=[],this.showDeprecated=!1,this.loggedIn=!1,this.hideDeprecatedCheckbox=!1,this.previousState=[],this.previousFacets=[],this._facetDisplayType="default",this.facetSearchChanged=new u.x,this.subscriptions=[],this.privateFacetParams={},this.facetBuilder={},this.facets=[],this.environment=me.environment}return(0,e.Z)(It,[{key:"onPopState",value:function(Ae){var X=this;setTimeout(function(){X.router.url===X.previousState[0]&&("/browse-substance"===X.router.url?X.privateFacetParams={}:(X.privateFacetParams=X.previousFacets[0],X.facetBuilder={}),X.ngOnInit())},50)}},{key:"rawFacets",set:function(Ae){this.privateRawFacets=Ae||[],this.populateFacets()}},{key:"configName",set:function(Ae){this.facetsConfig=this.configService.configData.facets&&this.configService.configData.facets[Ae]||{},this._configName=Ae,this.hideDeprecatedCheckbox="applications"===Ae||"clinicaltrialsus"===Ae||"products"===Ae||"adverseeventpt"===Ae||"adverseeventdme"===Ae||"adverseeventcvm"===Ae,this.populateFacets()}},{key:"facetDisplayType",set:function(Ae){this._facetDisplayType=Ae,this.populateFacets()}},{key:"facetViewCategorySelected",set:function(Ae){this._facetViewCategorySelected=Ae,this.populateFacets()}},{key:"facetNameText",set:function(Ae){this._facetNameText=Ae,this.populateFacets()}},{key:"ngOnInit",value:function(){var Ae=this;this.facetString=this.activatedRoute.snapshot.queryParams.facets||"","true"===(this.activatedRoute.snapshot.queryParams.showDeprecated||"false")&&(this.showDeprecated=!0),this.facetsFromParams(),this.setDisplayFacets(),this.facetsParamsUpdated.emit({facetParam:this.privateFacetParams,displayFacets:this.displayFacets,deprecated:this.showDeprecated});var ne=this.facetManagerService.clearSelectionsEvent.subscribe(function(){Ae.clearFacetSelection()});this.subscriptions.push(ne),this.authService.getAuth().pipe((0,_.q)(1)).subscribe(function(me){me&&(Ae.loggedIn=!0)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Ae){Ae.unsubscribe()})}},{key:"ngAfterViewInit",value:function(){var Ae=this;if(this.urlSearch=this.activatedRoute.snapshot.queryParams.search||null,this.includeFacetSearch){var X=this.facetSearchChanged.pipe((0,s.b)(500),(0,h.x)(),(0,b.w)(function(ne){return Ae.facetsService.getFacetsHandler(Ae.facets[ne.index],ne.query,null,Ae.privateFacetParams,Ae.urlSearch).pipe((0,_.q)(1))})).subscribe(function(ne){Ae.activeSearchedFaced.values=Ae.activeSearchedFaced.values.filter(function(me){var Ft,Oe=!0,He=!1,At=(0,S.Z)(ne.content);try{for(At.s();!(Ft=At.n()).done;)if(Ft.value.label===me.label){He=!0;break}}catch(Xt){At.e(Xt)}finally{At.f()}return!He&&null!=Ae.privateFacetParams[Ae.activeSearchedFaced.name]&&(!0===Ae.privateFacetParams[Ae.activeSearchedFaced.name].params[me.label]||!1===Ae.privateFacetParams[Ae.activeSearchedFaced.name].params[me.label])&&(Oe=!1),!Oe}),Ae.activeSearchedFaced.values=Ae.activeSearchedFaced.values.concat(ne.content),Ae.searchText[Ae.activeSearchedFaced.name].isLoading=!1},function(ne){Ae.searchText[Ae.activeSearchedFaced.name].isLoading=!1});this.subscriptions.push(X)}}},{key:"facetsFromParams",value:function(){if(""!==this.facetString){var ne,Ae=this.escapedSplit(this.facetString,","),X=(0,S.Z)(Ae);try{for(X.s();!(ne=X.n()).done;){var jn,Oe=this.escapedSplit(ne.value,"*"),He=Oe[0],At=this.escapedSplit(Oe[1],"+"),Ft={},sn=!1,Xt=!1,gn=!1,vn=0,hn=(0,S.Z)(At);try{for(hn.s();!(jn=hn.n()).done;){var oi=this.escapedSplit(jn.value,".");oi[0]=this.decodeValue(decodeURIComponent(oi[0])),"is_all_match"===oi[0]?Xt=!0:"true"===oi[1]?(Ft[oi[0]]=!0,sn=!0,vn++):"false"===oi[1]&&(Ft[oi[0]]=!1,sn=!0,gn=!0)}}catch(mn){hn.e(mn)}finally{hn.f()}if(!0===sn){this.facetBuilder[He]={params:Ft,hasSelections:!0,isAllMatch:Xt},!gn&&vn>1&&(this.facetBuilder[He].showAllMatchOption=!0);var ri=JSON.stringify(Ft),un=this.utilsService.hashCode(ri,this.facetBuilder[He].isAllMatch.toString(),this.showDeprecated.toString());this.facetBuilder[He].currentStateHash=un}}}catch(mn){X.e(mn)}finally{X.f()}this.privateFacetParams=this.facetBuilder,this.previousFacets.push(JSON.parse(JSON.stringify(this.privateFacetParams)))}}},{key:"toggleDeprecated",value:function(){var Ae=this;this.showDeprecated=!this.showDeprecated,setTimeout(function(){Ae.populateUrlQueryParameters(Ae.showDeprecated),Ae.facetsParamsUpdated.emit({facetParam:Ae.privateFacetParams,displayFacets:Ae.displayFacets,deprecated:Ae.showDeprecated})})}},{key:"populateFacets",value:function(){var Ae=this;this.privateRawFacets&&this.facetsConfig&&(null!=this.facetsAuthSubscription&&(this.facetsAuthSubscription.unsubscribe(),this.facetsAuthSubscription=null),this.facetsAuthSubscription=this.authService.getAuth().subscribe(function(X){var ne=Ae.privateRawFacets.slice(),me=[];Ae.showAudit=Ae.authService.hasRoles("admin");var Oe=Object.keys(Ae.facetsConfig)||[];if(Ae._facetDisplayType)if("default"===Ae._facetDisplayType)Oe.forEach(function(At){Ae.facetsConfig[At].length&&("default"===At||Ae.authService.hasRoles(At))&&Ae.facetsConfig[At].forEach(function(Ft){for(var sn=0;sn0&&(Xt=!1,ne[sn].name.toLowerCase().indexOf(Ae._facetNameText.toLowerCase().trim())>-1&&(Xt=!0)),!0===Xt&&null!=ne[sn].values&&ne[sn].values.length){for(var gn=!1,vn=0;vn0&&(vn=!1,ne[gn].name.toLowerCase().indexOf(Ae._facetNameText.toLowerCase().trim())>-1&&(vn=!0)),!0===vn&&null!=ne[gn].values&&ne[gn].values.length){for(var hn=!1,jn=0;jn0&&me.unshift(me.splice(Ft,1)[0])}),Ae.facets=me,Ae.setShowAdvancedFacetStates(),Ae.facetsLoaded.emit(Ae.facets.length),Ae.cleanFacets(),Ae.setDisplayFacets()}))}},{key:"cleanFacets",value:function(){var Ae=this;if(null!=this.privateFacetParams){var X=Object.keys(this.privateFacetParams);X&&X.length>0&&X.forEach(function(ne){Ae.privateFacetParams[ne]&&(Object.keys(Ae.privateFacetParams[ne].params).length<1||!1===Ae.privateFacetParams[ne].hasSelections)&&(Ae.privateFacetParams[ne]=void 0)})}}},{key:"setDisplayFacets",value:function(){var Ae=this;null!=this.privateFacetParams&&(this.displayFacets=[],Object.keys(this.privateFacetParams).forEach(function(X){Ae.privateFacetParams[X]&&Ae.privateFacetParams[X].params&&Object.keys(Ae.privateFacetParams[X].params).forEach(function(ne){if(void 0!==Ae.privateFacetParams[X].params[ne]){var me=new B(X,Ae.privateFacetParams[X].params[ne],ne,function(Oe,He,At){Ae.removeFacet(Oe,He,At)});Ae.displayFacets.push(me)}})}))}},{key:"setShowAdvancedFacetStates",value:function(){var Ae=this;this.facets.forEach(function(X){Ae.privateFacetParams[X.name]&&Ae.privateFacetParams[X.name].params&&Object.keys(Ae.privateFacetParams[X.name].params).every(function(ne){return void 0===Ae.privateFacetParams[X.name].params[ne]||!1!==Ae.privateFacetParams[X.name].params[ne]||(X.$showAdvanced=!0,!1)})})}},{key:"populateUrlQueryParameters",value:function(Ae){for(var me,X={queryParams:{}},ne=[],Oe=0,He=Object.keys(this.privateFacetParams);Oe ").concat(ne),He=Ae.checked?1:0;if(this.gaService.sendEvent("substancesFiltering","check:facet-".concat(me?"include":"exclude"),Oe,He),null==this.privateFacetParams[X]){this.privateFacetParams[X]={params:{},isAllMatch:!1},Ft=JSON.stringify(this.privateFacetParams[X].params),sn=this.privateFacetParams[X].isAllMatch.toString();var Xt=this.utilsService.hashCode(Ft,sn);this.privateFacetParams[X].currentStateHash=Xt}this.privateFacetParams[X].params[ne]=me?Ae.checked||void 0:!0!==Ae.checked&&void 0;for(var gn=!1,vn=!1,hn=0,jn=Object.keys(this.privateFacetParams[X].params),Jn=0;Jn1?this.privateFacetParams[X].showAllMatchOption=!0:(this.privateFacetParams[X].showAllMatchOption=!1,this.privateFacetParams[X].isAllMatch=!1),Ft=JSON.stringify(this.privateFacetParams[X].params),sn=this.privateFacetParams[X].isAllMatch.toString();var oi=this.utilsService.hashCode(Ft,sn);this.privateFacetParams[X].isUpdated=oi!==this.privateFacetParams[X].currentStateHash,this.calledFrom&&"advancedsearch"===this.calledFrom&&(this.setDisplayFacets(),this.facetsParamsUpdated.emit({facetParam:this.privateFacetParams,displayFacets:this.displayFacets,deprecated:this.showDeprecated}))}},{key:"updateAllMatch",value:function(Ae){var X=this.environment.isAnalyticsPrivate?"facet":"".concat(Ae);this.gaService.sendEvent("substancesFiltering","check:facet-all_match",X,this.privateFacetParams[Ae].isAllMatch?1:0);var me=JSON.stringify(this.privateFacetParams[Ae].params),Oe=this.privateFacetParams[Ae].isAllMatch.toString(),He=this.utilsService.hashCode(me,Oe);this.privateFacetParams[Ae].isUpdated=He!==this.privateFacetParams[Ae].currentStateHash}},{key:"clearFacetSelection",value:function(Ae){var X=this,ne=this.environment.isAnalyticsPrivate?"facet":"facet: ".concat(Ae),me=0,Oe=null!=Ae?[Ae]:Object.keys(this.privateFacetParams);null!=Oe&&Oe.length&&Oe.forEach(function(At){if(null!=X.privateFacetParams[At]&&null!=X.privateFacetParams[At].params&&(Object.keys(X.privateFacetParams[At].params).forEach(function(vn){me++,X.privateFacetParams[At].params[vn]=void 0}),X.privateFacetParams[At].isAllMatch=!1,X.privateFacetParams[At].showAllMatchOption=!1,X.privateFacetParams[At].hasSelections=!1,null!=Ae)){var sn=JSON.stringify(X.privateFacetParams[Ae].params),Xt=X.privateFacetParams[Ae].isAllMatch.toString(),gn=X.utilsService.hashCode(sn,Xt);X.privateFacetParams[Ae].isUpdated=gn!==X.privateFacetParams[Ae].currentStateHash}});var He={queryParams:{facets:""}};setTimeout(function(){var At=X.router.createUrlTree([],{queryParams:He.queryParams,queryParamsHandling:"merge",preserveFragment:!0});X.location.go(At.toString())}),this.gaService.sendEvent("substancesFiltering","button:clear-facet",ne,me)}},{key:"moreFacets",value:function(Ae,X){var ne=this;this.facets[Ae].$isLoading=!0,null==X.$next&&(X.$next=X._self.replace("fskip=0","fskip=10")),this.facetManagerService.getFacetsHandler(this.facets[Ae],"",X.$next,this.privateFacetParams,this.urlSearch).pipe((0,_.q)(1)).subscribe(function(me){ne.facets[Ae].$next=me.nextPageUri,ne.facets[Ae].$previous=me.previousPageUri,ne.facets[Ae].values=ne.facets[Ae].values.concat(me.content),ne.facets[Ae].$fetched=ne.facets[Ae].values,ne.facets[Ae].$total=me.ftotal,ne.facets[Ae].$isLoading=!1},function(me){ne.facets[Ae].$isLoading=!1})}},{key:"lessFacets",value:function(Ae){var X=this;this.facets[Ae].$isLoading=!0,this.facetManagerService.getFacetsHandler(this.facets[Ae],null,null,this.privateFacetParams,this.urlSearch).pipe((0,_.q)(1)).subscribe(function(me){X.facets[Ae].values=me.content,X.facets[Ae].$fetched=me.content,X.facets[Ae].$next=me.nextPageUri,X.facets[Ae].$previous=me.previousPageUri,X.facets[Ae].$isLoading=!1},function(me){X.facets[Ae].$isLoading=!1})}},{key:"filterFacets",value:function(Ae,X,ne){this.searchText[ne].isLoading=!0,this.activeSearchedFaced=this.facets[Ae],this.facetSearchChanged.next({index:Ae,query:X,facets:this.privateFacetParams})}},{key:"clearFacetSearch",value:function(Ae,X){this.searchText[X].value="",this.filterFacets(Ae,"",X)}},{key:"facetParams",get:function(){return this.privateFacetParams}}]),It}();return kt.\u0275fac=function($e){return new($e||kt)(c.Y36(k.gz),c.Y36(o.FW),c.Y36(T.b),c.Y36(y.e),c.Y36(Y.E),c.Y36(q.$),c.Y36(k.F0),c.Y36(D.Ye),c.Y36(T.b))},kt.\u0275cmp=c.Xpm({type:kt,selectors:[["app-facets-manager"]],hostBindings:function($e,Ae){1&$e&&c.NdJ("popstate",function(ne){return Ae.onPopState(ne)},!1,c.Jf7)},inputs:{includeFacetSearch:"includeFacetSearch",calledFrom:"calledFrom",panelExpanded:"panelExpanded",rawFacets:"rawFacets",configName:"configName",facetDisplayType:"facetDisplayType",facetViewCategorySelected:"facetViewCategorySelected",facetNameText:"facetNameText"},outputs:{facetsParamsUpdated:"facetsParamsUpdated",facetsLoaded:"facetsLoaded"},decls:4,vars:5,consts:[["class","deprecated",3,"ngModel","change",4,"ngIf"],[3,"ngClass"],["multi","true"],[3,"ngClass","expanded",4,"ngFor","ngForOf"],[1,"deprecated",3,"ngModel","change"],[3,"ngClass","expanded"],[4,"ngIf"],[4,"ngFor","ngForOf"],["class","facet-advanced-options-link",4,"ngIf"],["class","facet-actions",4,"ngIf"],["class","facet-search-container",4,"ngIf"],["class","facet-search-loading","mode","indeterminate",4,"ngIf"],[1,"facet-search-container"],["mat-icon-button","","color","black",3,"click"],["svgIcon","close"],["matInput","","class","search","type","text",3,"ngModel","placeholder","ngModelChange",4,"ngIf"],["matInput","","class","search","type","text","placeholder","Search Validated By",3,"ngModel","ngModelChange",4,"ngIf"],["matInput","","type","text",1,"search",3,"ngModel","placeholder","ngModelChange"],["matInput","","type","text","placeholder","Search Validated By",1,"search",3,"ngModel","ngModelChange"],["mode","indeterminate",1,"facet-search-loading"],[1,"facet-value"],[1,"facet-value-checkbox"],["matTooltip","Include",1,"include",3,"checked","change"],["class","exclude","matTooltip","Exclude",3,"checked","change",4,"ngIf"],[1,"facet-value-label",3,"ngClass"],[1,"middle-fill"],[1,"facet-value-count"],["matTooltip","Exclude",1,"exclude",3,"checked","change"],[3,"ngClass","click",4,"ngIf"],[3,"ngClass","click"],[1,"facet-advanced-options-link"],[3,"click"],[1,"facet-actions"],[3,"ngModel","ngModelChange","change",4,"ngIf"],[1,"pull-right"],["mat-flat-button","",3,"disabled","click",4,"ngIf"],["class","apply-button","mat-flat-button","","color","primary",3,"disabled","click",4,"ngIf"],[3,"ngModel","ngModelChange","change"],["mat-flat-button","",3,"disabled","click"],["mat-flat-button","","color","primary",1,"apply-button",3,"disabled","click"]],template:function($e,Ae){1&$e&&(c.YNc(0,te,2,1,"mat-checkbox",0),c.TgZ(1,"div",1),c.TgZ(2,"mat-accordion",2),c.YNc(3,Ht,12,15,"mat-expansion-panel",3),c.qZA(),c.qZA()),2&$e&&(c.Q6J("ngIf",Ae.loggedIn&&!Ae.hideDeprecatedCheckbox),c.xp6(1),c.Q6J("ngClass",c.VKq(3,nn,"advancedsearch"===Ae.calledFrom)),c.xp6(2),c.Q6J("ngForOf",Ae.facets))},directives:[D.O5,N.oG,I.JJ,I.On,D.mk,L.pp,D.sg,L.ib,L.yz,L.yK,j.KE,le.Nt,I.Fj,re.lW,W.Hw,$.pW],pipes:[be.Y,D.Ov,z.q,J],styles:[".facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.strikethrough[_ngcontent-%COMP%]{text-decoration:line-through}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:var(--label-color);white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--include-checkbox-border-color)} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--include-checkbox-bg-color)}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--exclude-checkbox-border-color)} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--exclude-checkbox-bg-color)}.show-more[_ngcontent-%COMP%]{color:var(--link-primary-color)}.show-more[_ngcontent-%COMP%]:hover{text-decoration:underline}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:var(--link-primary-color)}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.deprecated[_ngcontent-%COMP%]{font-size:14px;margin-left:25px;color:var(--deprecated-color);margin-bottom:15px}.deprecated[_ngcontent-%COMP%] .mat-checkbox-inner-container{height:14px;width:14px}.deprecated[_ngcontent-%COMP%] .mat-checkbox-layout{margin-bottom:10px}"]}),kt}()},35756:function(Ce,E,n){"use strict";n.d(E,{O:function(){return q}});var S=n(1884),t=n(39117),e=n(36362),c=n(16531),u=n(65590),o=n(61534),_=n(87317),s=n(43365),h=n(60833),b=n(44770),T=n(90587),y=n(2711),Y=n(86613),q=function(){var B=(0,S.Z)(function k(){(0,t.Z)(this,k)});return B.\u0275fac=function(D){return new(D||B)},B.\u0275mod=Y.oAB({type:B}),B.\u0275inj=Y.cJS({imports:[[e.ez,c.To,b.lN,s.c,o.p9,T.u5,u.Ps,h.Cv,_.ot,y.v]]}),B}()},98589:function(Ce,E,n){"use strict";n.d(E,{b:function(){return T}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(50253),o=n(69264),_=n(53141),s=n(63169),h=n(86613),b=n(28784),T=function(){var y=function(Y){(0,e.Z)(B,Y);var q=(0,c.Z)(B);function B(k,D,N){var I;return(0,S.Z)(this,B),(I=q.call(this,D)).http=k,I.configService=D,I.utilsService=N,I.clearSelectionsSubject=new u.x,I}return(0,t.Z)(B,[{key:"registerGetFacetsHandler",value:function(D){this.getFacetsHandler=D}},{key:"unregisterFacetSearchHandler",value:function(){this.getFacetsHandler=null}},{key:"clearSelectionsEvent",get:function(){return this.clearSelectionsSubject.asObservable()}},{key:"clearSelections",value:function(){this.clearSelectionsSubject.next()}}]),B}(o.q);return y.\u0275fac=function(q){return new(q||y)(h.LFG(b.eN),h.LFG(_.E),h.LFG(s.FW))},y.\u0275prov=h.Yz7({token:y,factory:y.\u0275fac,providedIn:"root"}),y}()},52489:function(Ce,E,n){"use strict";n.d(E,{On:function(){return S.O},bH:function(){return t.b},nq:function(){return e.n}});var S=n(35756),t=n(98589),e=n(60670)},24874:function(Ce,E,n){"use strict";n.d(E,{$:function(){return o}});var S=n(39117),t=n(1884),e=n(86613),c=n(36362),u=n(92507),o=function(){var _=function(){function s(h,b){(0,S.Z)(this,s),this.configService=h,this.platformId=b,this.isActive=!1,this.environment=h.environment,(0,c.NF)(this.platformId)&&h.configData&&h.configData.googleAnalyticsId&&(this.googleAnanlyticsId=h.configData.googleAnalyticsId,this.init())}return(0,t.Z)(s,[{key:"init",value:function(){var b;this.analyticsObjectKey=b=Math.random().toString(36).replace("0.",""),window.GoogleAnalyticsObject=this.analyticsObjectKey,window[this.analyticsObjectKey]=window[this.analyticsObjectKey]||function(){(window[b].q=window[b]&&window[b].q||[]).push(arguments)},window[this.analyticsObjectKey].l=+new Date,this.isActive=!0,window[this.analyticsObjectKey]("create",this.googleAnanlyticsId,{cookieName:"gsrsCookie"}),window[this.analyticsObjectKey]("set","screenResolution","".concat(window.screen.availWidth,"x").concat(window.screen.availHeight)),window[this.analyticsObjectKey]("set","hostname",window.location.hostname),this.environment.isAnalyticsPrivate&&(window[this.analyticsObjectKey]("set","allowAdFeatures",!1),window[this.analyticsObjectKey]("set","anonymizeIp",!0),window[this.analyticsObjectKey]("set","referrer","https://none.com"),window[this.analyticsObjectKey]("set","location","https://none.com")),this.isActive=!0;var T=document.createElement("script");T.src="https://www.google-analytics.com/analytics.js",T.type="text/javascript",T.async=!0,document.getElementsByTagName("head")[0].appendChild(T)}},{key:"onGlobalError",value:function(b){var T="message: ".concat(b.message," | filenname: ").concat(b.filename," | lineno: ").concat(b.lineno," | colno: ").concat(b.colno);this.sendException(T)}},{key:"sendPageView",value:function(b,T){if(this.isActive){null==T&&null!=b&&(T="/".concat(b.replace(/ /g,"-").toLowerCase()));var y={hitType:"pageview",title:b,page:T,viewportSize:"".concat(window.innerHeight,"x").concat(window.innerWidth)};window[this.analyticsObjectKey]("send",y)}}},{key:"sendEvent",value:function(b,T,y,Y){if(this.isActive){var q={hitType:"event",eventCategory:b,eventAction:T,eventLabel:y,eventValue:Y,viewportSize:"".concat(window.innerHeight,"x").concat(window.innerWidth)};window[this.analyticsObjectKey]("send",q)}}},{key:"sendException",value:function(b){var T=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.isActive){var y={hitType:"exception",exDescription:b,exFatal:T,viewportSize:"".concat(window.innerHeight,"x").concat(window.innerWidth)};window[this.analyticsObjectKey]("send",y)}}}]),s}();return _.\u0275fac=function(h){return new(h||_)(e.LFG(u.E),e.LFG(e.Lbi))},_.\u0275prov=e.Yz7({token:_,factory:_.\u0275fac,providedIn:"root"}),_}()},40104:function(Ce,E,n){"use strict";n.d(E,{$:function(){return t.$}}),n(46261);var t=n(24874)},46261:function(Ce,E,n){"use strict";n.d(E,{z:function(){return o}});var S=n(39117),t=n(1884),e=n(24874),c=n(92507),u=n(86613),o=function(){var _=function(){function s(h,b){(0,S.Z)(this,s),this.gaService=h,this.configService=b,this.evCategory="Undefined",this.evAction="click-link",this.environment=this.configService.environment}return(0,t.Z)(s,[{key:"onClick",value:function(b){this.environment.isAnalyticsPrivate?this.evLabel="link":!this.evLabel&&b.href&&(this.evLabel=b.href),this.gaService.sendEvent(this.evCategory,this.evAction,this.evLabel,this.evValue)}}]),s}();return _.\u0275fac=function(h){return new(h||_)(u.Y36(e.$),u.Y36(c.E))},_.\u0275dir=u.lG2({type:_,selectors:[["","appTrackLinkEvent",""]],hostBindings:function(h,b){1&h&&u.NdJ("click",function(y){return b.onClick(y.target)})},inputs:{evCategory:"evCategory",evAction:"evAction",evLabel:"evLabel",evValue:"evValue"}}),_}()},62128:function(Ce,E,n){"use strict";n.d(E,{J:function(){return e},k:function(){return c}});var S=n(56908),e=["text","datetime","number","select"],c={string:{"ANY of the following words in any order or position":{commandInputs:[{type:"text",constructQuery:function(o,_,s,h,b){var T=o.split(" "),y=T.map(function(Y){return h+Y}).join(" OR ");T.length>1&&(y="(".concat(y,")")),y="".concat(_).concat(y),b.emit({condition:_,queryableProperty:s,command:"ANY of the following words in any order or position",commandInputValues:[o],query:y})}}]},"the following exact phrase, which must match completely (no partial words)":{commandInputs:[{type:"text",constructQuery:function(o,_,s,h,b){var T=o.trim()&&"".concat(_).concat(h,'"^').concat(o.trim(),'$"')||"";b.emit({condition:_,queryableProperty:s,command:"the following exact phrase, which must match completely (no partial words)",commandInputValues:[o],query:T})}}]},"Exact Match":{commandInputs:[{type:"text",example:"Example: aspirin sodium",constructQuery:function(o,_,s,h,b){o&&(o=o.replace(/['"]+/g,""));var T=o.trim()&&"".concat(_).concat(h,'"^').concat(o.trim(),'$"')||"";b.emit({condition:_,queryableProperty:s,command:"Exact Match",commandInputValues:[o],query:T})}}]},"ALL of the following words in any order or position":{commandInputs:[{type:"text",constructQuery:function(o,_,s,h,b){var T=o.split(" "),y=T.map(function(Y){return h+Y}).join(" AND ");T.length>1&&(y="(".concat(y,")")),y="".concat(_).concat(y),b.emit({condition:_,queryableProperty:s,command:"ALL of the following words in any order or position",commandInputValues:[o],query:y})}}]},Contains:{commandInputs:[{type:"text",example:"Example: sodium",constructQuery:function(o,_,s,h,b){o&&(o=(o=(o=(o=(o=(o=(o=(o=(o=o.replace(/['"]+/g,"")).replace(/[ ]AND[ ]/g," \\\\AND ")).replace(/[ ]OR[ ]/g," \\\\OR ")).replace(/[ ]NOT[ ]/g," \\\\NOT ")).replace(/^NOT[ ]/g,"\\\\NOT ")).replace(/[-]+/g," ")).replace(/[.]+/g,"")).replace(/[()]+/g," ").trim()).replace(/[,][ ]/g," "));var T=o.trim()&&"".concat(_).concat(h,'"*').concat(o.trim(),'*"')||"";b.emit({condition:_,queryableProperty:s,command:"Contains",commandInputValues:[o],query:T})}}]},"Starts With":{commandInputs:[{type:"text",example:"Example: aspir",constructQuery:function(o,_,s,h,b){o&&(o=o.replace(/['"]+/g,""));var T=o.trim()&&"".concat(_).concat(h,'"^').concat(o.trim(),'*"')||"";b.emit({condition:_,queryableProperty:s,command:"Starts With",commandInputValues:[o],query:T})}}]},"Ends With":{commandInputs:[{type:"text",constructQuery:function(o,_,s,h,b){var T=o.trim()&&"".concat(_).concat(h,'"*').concat(o.trim(),'$"')||"";b.emit({condition:_,queryableProperty:s,command:"Ends With",commandInputValues:[o],query:T})}}]},"Manual Query Entry":{commandInputs:[{type:"text",example:"Example: aspirin sodium",constructQuery:function(o,_,s,h,b){var T=o.trim();b.emit({condition:_,queryableProperty:s,command:"Manual Query Entry",commandInputValues:[o],query:T})}}]},"a value that starts with with the word(s)":{commandInputs:[{type:"text",constructQuery:function(o,_,s,h,b){var T=o.trim()&&"".concat(_).concat(h,'"^').concat(o.trim(),'"')||"";b.emit({condition:_,queryableProperty:s,command:"a value that starts with with the word(s)",commandInputValues:[o],query:T})}}]},"a WORD that ends with":{commandInputs:[{type:"text",constructQuery:function(o,_,s,h,b){var T=o.trim()&&"".concat(_).concat(h,"*").concat(o.trim())||"";b.emit({condition:_,queryableProperty:s,command:"a WORD that ends with",commandInputValues:[o],query:T})}}]},"a value that ends with the word(s)":{commandInputs:[{type:"text",constructQuery:function(o,_,s,h,b){var T=o.trim()&&"".concat(_).concat(h,'"').concat(o.trim(),'$"')||"";b.emit({condition:_,queryableProperty:s,command:"a value that ends with the word(s)",commandInputValues:[o],query:T})}}]},"values that are not empty":{constructQuery:function(o,_,s,h,b){var T="".concat(_).concat(h,"*");b.emit({condition:_,queryableProperty:s,command:"values that are not empty",commandInputValues:[o],query:T})}},"the following exact default values":{commandInputs:[{type:"select",constructQuery:function(o,_,s,h,b){var T=o.trim()&&"".concat(_).concat(h,'"^').concat(o.trim(),'$"')||"";b.emit({condition:_,queryableProperty:s,command:"the following exact default values",commandInputValues:[o],query:T})}}]}},timestamp:{on:{commandInputs:[{type:"datetime",constructQuery:function(o,_,s,h,b){var T="";if(null!=o){var y=S(o).set({hour:0,minute:0,second:0,millisecond:0}).utc().valueOf(),Y=S(o).set({hour:23,minute:59,second:59,millisecond:999}).utc().valueOf();T="".concat(_).concat(h,"[").concat(y," TO ").concat(Y,"]")}b.emit({condition:_,queryableProperty:s,command:"on",commandInputValues:[o],query:T})}}]},before:{commandInputs:[{type:"datetime",constructQuery:function(o,_,s,h,b){var T="";if(null!=o){var y=S(o).set({hour:23,minute:59,second:59,millisecond:999}).utc().valueOf();T="".concat(_).concat(h,"[-10E50 TO ").concat(y,"]")}b.emit({condition:_,queryableProperty:s,command:"before",commandInputValues:[o],query:T})}}]},after:{commandInputs:[{type:"datetime",constructQuery:function(o,_,s,h,b){var T="";if(null!=o){var y=S(o).set({hour:0,minute:0,second:0,millisecond:0}).utc().valueOf();T="".concat(_).concat(h,"[").concat(y," TO 10E50]")}b.emit({condition:_,queryableProperty:s,command:"after",commandInputValues:[o],query:T})}}]},between:{commandInputs:[{type:"datetime",constructQuery:function(o,_,s,h,b,T,y){var Y="";if(null!=o){var q=S(o).set({hour:0,minute:0,second:0,millisecond:0}).utc().valueOf();T[0]="".concat(_).concat(h,"[").concat(q," TO "),Y=T.join("")}b.emit({condition:_,queryableProperty:s,command:"between",commandInputValues:[o,y&&y[1]||null],query:Y,queryParts:T})}},{type:"datetime",constructQuery:function(o,_,s,h,b,T,y){var Y="";if(null!=o){var q=S(o).set({hour:23,minute:59,second:59,millisecond:999}).utc().valueOf();T[1]="".concat(q,"]"),Y=T.join("")}b.emit({condition:_,queryableProperty:s,command:"between",commandInputValues:[y&&y[0]||null,o],query:Y,queryParts:T})}}]}},boolean:{true:{constructQuery:function(o,_,s,h,b){var T="".concat(_).concat(h,'"^').concat(o,'$"');b.emit({condition:_,queryableProperty:s,command:"true",query:T})}},false:{constructQuery:function(o,_,s,h,b){var T="".concat(_).concat(h,'"^').concat(o,'$"');b.emit({condition:_,queryableProperty:s,command:"false",query:T})}}},number:{"exact number":{commandInputs:[{type:"number",constructQuery:function(o,_,s,h,b){var T=null!=o&&""!==o&&"".concat(_).concat(h).concat(o)||"";b.emit({condition:_,queryableProperty:s,command:"exact number",commandInputValues:[o],query:T})}}]},"Greater Than":{commandInputs:[{type:"number",constructQuery:function(o,_,s,h,b){var T=null!=o&&""!==o&&"".concat(_).concat(h,"[").concat(o," TO 10E50]")||"";b.emit({condition:_,queryableProperty:s,command:"Greater Than",commandInputValues:[o],query:T})}}]},"Less Than":{commandInputs:[{type:"number",constructQuery:function(o,_,s,h,b){var T=null!=o&&""!==o&&"".concat(_).concat(h,"[-10E50 TO ").concat(o,"]")||"";b.emit({condition:_,queryableProperty:s,command:"Less Than",commandInputValues:[o],query:T})}}]},between:{commandInputs:[{type:"number",constructQuery:function(o,_,s,h,b,T,y){T[0]=null!=o&&""!==o&&"".concat(_).concat(h,"[").concat(o," TO ")||"";var Y=T[0]&&T[1]&&T.join("")||"";b.emit({condition:_,queryableProperty:s,command:"between",commandInputValues:[o,y&&y[1]||null],query:Y,queryParts:T})}},{type:"number",constructQuery:function(o,_,s,h,b,T,y){T[1]=null!=o&&""!==o&&"".concat(o,"]")||"";var Y=T[0]&&T[1]&&T.join("")||"";b.emit({condition:_,queryableProperty:s,command:"between",commandInputValues:[y&&y[0]||null,o],query:Y,queryParts:T})}}]},"values that are not empty":{constructQuery:function(o,_,s,h,b){var T="".concat(_).concat(h,"*");b.emit({condition:_,queryableProperty:s,command:"values that are not empty",commandInputValues:[o],query:T})}}}}},65838:function(Ce,E,n){"use strict";n.d(E,{I:function(){return _}});var S=n(1884),t=n(39117),e=n(36362),c=n(60833),u=n(74742),o=n(86613),_=function(){var s=(0,S.Z)(function h(){(0,t.Z)(this,h)});return s.\u0275fac=function(b){return new(b||s)},s.\u0275mod=o.oAB({type:s}),s.\u0275inj=o.cJS({imports:[[e.ez,c.Cv,u.Cq]]}),s}()},93392:function(Ce,E,n){"use strict";n.d(E,{b:function(){return s}});var S=n(39117),t=n(1884),e=n(50253),c=n(24476),u=n(86613),o=function(){var h=function(){function b(){(0,S.Z)(this,b)}return(0,t.Z)(b,[{key:"ngOnInit",value:function(){}}]),b}();return h.\u0275fac=function(T){return new(T||h)},h.\u0275cmp=u.Xpm({type:h,selectors:[["app-loading-overlay"]],decls:1,vars:0,template:function(T,y){1&T&&u._UZ(0,"div")},styles:[""]}),h}(),_=n(54244),s=function(){var h=function(){function b(T,y){(0,S.Z)(this,b),this.overlayService=T,this.overlayContainerService=y,this.isLoading=!1,this.loadingEventSubject=new e.x,this.numProcesses=0,this.isOverlayAttached=!1,this.overlayRef=this.overlayService.create({hasBackdrop:!0,backdropClass:"loading-overlay-backdrop",positionStrategy:this.overlayService.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlayService.scrollStrategies.reposition()}),this.loadingPortal=new c.C5(o),this.overlayContainer=this.overlayContainerService.getContainerElement()}return(0,t.Z)(b,[{key:"setLoading",value:function(y){y?this.numProcesses++:this.numProcesses--,this.isLoading=this.numProcesses>0,this.numProcesses<0&&(this.numProcesses=0),this.isLoading?this.setOverlay():this.removeOverlay(),this.loadingEventSubject.next(this.isLoading)}},{key:"resetLoading",value:function(){this.isLoading=!1,this.numProcesses=0,this.loadingEventSubject.next(this.isLoading)}},{key:"loadingEvent",get:function(){return this.loadingEventSubject.asObservable()}},{key:"setOverlay",value:function(){this.isOverlayAttached||(this.isOverlayAttached=!0,this.overlayRef.attach(this.loadingPortal),this.overlayContainer.style.zIndex="1002")}},{key:"removeOverlay",value:function(){this.isOverlayAttached=!1,this.overlayRef.detach(),this.overlayContainer.style.zIndex=null}}]),b}();return h.\u0275fac=function(T){return new(T||h)(u.LFG(_.aV),u.LFG(_.Xj))},h.\u0275prov=u.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"}),h}()},76775:function(Ce,E,n){"use strict";n.d(E,{a:function(){return u}});var S=n(39117),t=n(1884),e=n(50253),c=n(86613),u=function(){var o=function(){function _(){(0,S.Z)(this,_),this.notificationEvent=new e.x}return(0,t.Z)(_,[{key:"setNotification",value:function(h){this.notificationEvent.next(h)}}]),_}();return o.\u0275fac=function(s){return new(s||o)},o.\u0275prov=c.Yz7({token:o,factory:o.\u0275fac}),o}()},88325:function(Ce,E,n){"use strict";n.d(E,{k:function(){return S}});var S=function(){return(t=S||(S={}))[t.default=1]="default",t[t.success=2]="success",t[t.error=3]="error",S;var t}()},30639:function(Ce,E,n){"use strict";n.d(E,{W:function(){return z}});var S=n(78170),t=n(39117),e=n(1884),c=n(86613),u=n(90587),o=n(91640),_=n(12570),s=n(1790),h=n(53141),b=n(95758),T=n(61534),y=n(87317),Y=function(){var d=function(){function Q(J,te){(0,t.Z)(this,Q),this.dialogRef=J,this.configService=te}return(0,e.Z)(Q,[{key:"ngOnInit",value:function(){this.externalSiteWarning=this.configService.configData.externalSiteWarning,this.dontAskAgain="true"===localStorage.getItem("externalSiteWarningDontAskAgain")}},{key:"acceptDialog",value:function(){localStorage.setItem("externalSiteWarningDontAskAgain",this.dontAskAgain.toString()),this.dialogRef.close(!0)}},{key:"cancelDialog",value:function(){this.dialogRef.close(!1)}}]),Q}();return d.\u0275fac=function(J){return new(J||d)(c.Y36(b.so),c.Y36(h.E))},d.\u0275cmp=c.Xpm({type:d,selectors:[["app-external-site-warning-dialog"]],decls:12,vars:3,consts:[["mat-dialog-title","",1,"dialog-title"],["mat-dialog-content",""],["mat-dialog-actions","",1,"dialog-actions","flex-row"],[1,"dialog-checkbox",3,"ngModel","ngModelChange"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"click"]],template:function(J,te){1&J&&(c.TgZ(0,"h2",0),c._uU(1),c.qZA(),c.TgZ(2,"div",1),c._uU(3),c.qZA(),c.TgZ(4,"div",2),c.TgZ(5,"mat-checkbox",3),c.NdJ("ngModelChange",function(G){return te.dontAskAgain=G}),c._uU(6,"Don't Ask Again"),c.qZA(),c._UZ(7,"span",4),c.TgZ(8,"button",5),c.NdJ("click",function(){return te.cancelDialog()}),c._uU(9,"No"),c.qZA(),c.TgZ(10,"button",5),c.NdJ("click",function(){return te.acceptDialog()}),c._uU(11,"Yes"),c.qZA(),c.qZA()),2&J&&(c.xp6(1),c.hij(" ",te.externalSiteWarning.dialogTitle,"\n"),c.xp6(2),c.hij(" ",te.externalSiteWarning.dialogMessage,"\n"),c.xp6(2),c.Q6J("ngModel",te.dontAskAgain))},directives:[T.oG,u.JJ,u.On,y.lW],styles:[".dialog-title[_ngcontent-%COMP%], .dialog-actions[_ngcontent-%COMP%]{margin-top:12px}.dialog-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-left:12px}.dialog-checkbox[_ngcontent-%COMP%]{font-size:14px;margin:12px}"]}),d}(),q=n(93392),B=n(54244),k=n(44770),D=n(43365),N=n(65590),I=n(36362),L=n(9292),j=n(98002);function le(d,Q){if(1&d){var J=c.EpF();c.TgZ(0,"div",8),c._UZ(1,"img",9),c._UZ(2,"br"),c._uU(3),c._UZ(4,"br"),c._UZ(5,"br"),c.TgZ(6,"button",10),c.NdJ("click",function(){var _e=c.CHM(J).$implicit;return c.oxw().applyStructure(_e.value.molfile)}),c._uU(7,"Apply Structure"),c.qZA(),c._uU(8),c.qZA()}if(2&d){var te=Q.$implicit,K=c.oxw();c.xp6(1),c.Q6J("entityId",te.value.id),c.xp6(2),c.hij(" ",te.source,""),c.xp6(5),c.hij(" ",K.errorMessage," ")}}function re(d,Q){if(1&d){var J=c.EpF();c.TgZ(0,"button",10),c.NdJ("click",function(){c.CHM(J);var K=c.oxw().$implicit;return c.oxw(2).applyStructure(K.structure.molfile)}),c._uU(1,"Apply Structure"),c.qZA()}}var W=function(Q){return["/substances",Q]};function $(d,Q){if(1&d&&(c.TgZ(0,"div",8),c._UZ(1,"img",9),c._UZ(2,"br"),c._uU(3," GSRS Record"),c._UZ(4,"br"),c._uU(5),c._UZ(6,"br"),c.YNc(7,re,2,0,"button",11),c._UZ(8,"br"),c.TgZ(9,"button",12),c._uU(10,"view"),c.qZA(),c.qZA()),2&d){var J=Q.$implicit;c.xp6(1),c.Q6J("entityId",J.uuid),c.xp6(4),c.hij(" ",J._name," "),c.xp6(2),c.Q6J("ngIf",J.structure),c.xp6(2),c.Q6J("routerLink",c.VKq(4,W,J.uuid))}}function be(d,Q){if(1&d&&(c.ynx(0),c.YNc(1,$,11,6,"div",6),c.BQk()),2&d){var J=c.oxw();c.xp6(1),c.Q6J("ngForOf",J.matchedNames.content)}}var z=function(){var d=function(){function Q(J,te,K,G,ce,_e){(0,t.Z)(this,Q),this.configService=J,this.loadingService=te,this.substanceService=K,this.structureService=G,this.dialog=ce,this.overlayContainerService=_e,this.resolverControl=new u.NI,this.structureSelected=new c.vpe}return(0,e.Z)(Q,[{key:"ngOnInit",value:function(){var te=this;this.externalSiteWarning=this.configService.configData.externalSiteWarning,this.overlayContainer=this.overlayContainerService.getContainerElement(),this.startingName&&(this.resolverControl.setValue(this.startingName),setTimeout(function(){te.resolveName(te.startingName)}))}},{key:"resolveNameKey",value:function(te){13===te.keyCode&&this.resolveName(this.resolverControl.value)}},{key:"resolveName",value:function(te){!0!==this.shouldShowExternalSiteWarningDialog()?this.resolveNameInternal(te):this.showExternalSiteWarningDialog()}},{key:"resolveNameInternal",value:function(te){var K=this;this.errorMessage="",this.resolvedNames=[],this.matchedNames=null,this.loadingService.setLoading(!0);var G=te.replace('"',""),ce='root_names_name:"^'.concat(G,'$" OR root_approvalID:"^').concat(G,'$" OR root_codes_BDNUM:"^').concat(G,'$"');(0,o.D)([this.substanceService.getQuickSubstancesSummaries(ce),this.structureService.resolveName(te)]).subscribe(function(_e){var Me=(0,S.Z)(_e,2),ve=Me[0],ue=Me[1];K.loadingService.setLoading(!1),K.resolvedNames=ue,K.matchedNames=ve,0===K.matchedNames.content.length&&0===K.resolvedNames.length&&(K.errorMessage="no results found for '"+te+"'")},function(_e){K.errorMessage="there was a problem returning your query",K.loadingService.setLoading(!1)})}},{key:"applyStructure",value:function(te){this.structureSelected.emit(te)}},{key:"shouldShowExternalSiteWarningDialog",value:function(){return!(!this.externalSiteWarning||!this.externalSiteWarning.enabled)&&"true"!=localStorage.getItem("externalSiteWarningDontAskAgain")}},{key:"showExternalSiteWarningDialog",value:function(){var te=this,K=this.dialog.open(Y,{width:"800px",autoFocus:!1});this.overlayContainer.style.zIndex="1002",K.afterClosed().subscribe(function(ce){te.overlayContainer.style.zIndex=null,ce&&te.resolveNameInternal(te.resolverControl.value)})}}]),Q}();return d.\u0275fac=function(J){return new(J||d)(c.Y36(h.E),c.Y36(q.b),c.Y36(_.d),c.Y36(s.D),c.Y36(b.uw),c.Y36(B.Xj))},d.\u0275cmp=c.Xpm({type:d,selectors:[["app-name-resolver"]],inputs:{startingName:"startingName"},outputs:{structureSelected:"structureSelected"},decls:10,vars:4,consts:[[1,"search"],[1,""],["type","text","placeholder","Search","aria-label","Resolve Name","matInput","",1,"search",3,"formControl","keydown"],["mat-button","","matSuffix","","mat-icon-button","","aria-label","Resolve Name Search Button",3,"click"],["svgIcon","search",1,"resolver-search-icon"],[1,"result-container"],["class","name-result",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"name-result"],["appSubstanceImage","",3,"entityId"],["mat-raised-button","","color","primary",1,"name-result-button",3,"click"],["mat-raised-button","","color","primary","class","name-result-button",3,"click",4,"ngIf"],["mat-raised-button","","color","primary",1,"name-result-button",3,"routerLink"]],template:function(J,te){1&J&&(c.TgZ(0,"div"),c.TgZ(1,"div",0),c.TgZ(2,"mat-form-field",1),c.TgZ(3,"input",2),c.NdJ("keydown",function(G){return te.resolveNameKey(G)}),c.qZA(),c.TgZ(4,"button",3),c.NdJ("click",function(){return te.resolveName(te.resolverControl.value)}),c._UZ(5,"mat-icon",4),c.qZA(),c.qZA(),c.qZA(),c.TgZ(6,"div",5),c._uU(7),c.YNc(8,le,9,3,"div",6),c.YNc(9,be,2,1,"ng-container",7),c.qZA(),c.qZA()),2&J&&(c.xp6(3),c.Q6J("formControl",te.resolverControl),c.xp6(4),c.hij(" ",te.errorMessage," "),c.xp6(1),c.Q6J("ngForOf",te.resolvedNames),c.xp6(1),c.Q6J("ngIf",te.matchedNames))},directives:[k.KE,D.Nt,u.Fj,u.JJ,u.oH,y.lW,k.R9,N.Hw,I.sg,L.m,I.O5,j.rH],styles:[".resolver-search-icon[_ngcontent-%COMP%]{font-size:20px!important}.result-container[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;display:-ms-flexbox;display:flex;justify-content:space-evenly}.name-result[_ngcontent-%COMP%]{max-width:300px;text-align:center;-ms-flex-line-pack:center;align-content:center}.name-result-button[_ngcontent-%COMP%]{margin:5px}.mat-form-field[_ngcontent-%COMP%]{width:500px;max-width:100%}.search[_ngcontent-%COMP%] .mat-form-field-infix{border-top-width:1px!important;border-bottom-width:1px!important}"]}),d}()},96769:function(Ce,E,n){"use strict";n.d(E,{O:function(){return Y}});var S=n(1884),t=n(39117),e=n(36362),c=n(90587),u=n(43365),o=n(87317),_=n(65590),s=n(98002),h=n(65838),b=n(24054),T=n(61534),y=n(86613),Y=function(){var q=(0,S.Z)(function B(){(0,t.Z)(this,B)});return q.\u0275fac=function(k){return new(k||q)},q.\u0275mod=y.oAB({type:q}),q.\u0275inj=y.cJS({imports:[[e.ez,c.UX,c.u5,u.c,o.ot,T.p9,_.Ps,s.Bz,h.I,b.f]]}),q}()},51279:function(Ce,E,n){"use strict";n.d(E,{P:function(){return u}});var S=n(39117),t=n(1884),e=n(86613),c=n(78444),u=function(){var o=function(){function _(s,h){(0,S.Z)(this,_),this.elementRef=s,this.scrollToService=h}return(0,t.Z)(_,[{key:"ngAfterViewInit",value:function(){null!=this.elementRef.nativeElement.id&&this.scrollToService.registerTargetElement(this.elementRef.nativeElement)}},{key:"ngOnDestroy",value:function(){this.scrollToService.unregisterTargetElement(this.elementRef.nativeElement)}}]),_}();return o.\u0275fac=function(s){return new(s||o)(e.Y36(e.SBq),e.Y36(c.i))},o.\u0275dir=e.lG2({type:o,selectors:[["","appScrollToTarget",""]]}),o}()},94673:function(Ce,E,n){"use strict";n.d(E,{w:function(){return u}});var S=n(1884),t=n(39117),e=n(36362),c=n(86613),u=function(){var o=(0,S.Z)(function _(){(0,t.Z)(this,_)});return o.\u0275fac=function(s){return new(s||o)},o.\u0275mod=c.oAB({type:o}),o.\u0275inj=c.cJS({imports:[[e.ez]]}),o}()},78444:function(Ce,E,n){"use strict";n.d(E,{i:function(){return o}});var S=n(39117),t=n(1884),e=n(50253),c=function(){function _(s,h,b){var T=this;(0,S.Z)(this,_),this.vAlign=h,this.registrationTerminatedSubject=new e.x,this.registrationTerminated=this.registrationTerminatedSubject.asObservable(),this.scrollToEventHandler=function(){null!=T.targetElement&&(T.targetElement.scrollIntoView({behavior:"smooth",block:T.vAlign}),setTimeout(function(){T.targetElement.classList.add("blink_me"),setTimeout(function(){T.targetElement.classList.remove("blink_me")},400)},500))},this.triggerElement=s,null!=b&&this.registerEventHandler(b)}return(0,t.Z)(_,[{key:"registerEventHandler",value:function(h){this.targetElement=h,this.triggerElement.addEventListener("click",this.scrollToEventHandler)}},{key:"unregister",value:function(){this.triggerElement.removeEventListener("click",this.scrollToEventHandler),this.registrationTerminatedSubject.next(0)}},{key:"inactivateRegistration",value:function(){this.triggerElement.removeEventListener("click",this.scrollToEventHandler)}}]),_}(),u=n(86613),o=function(){var _=function(){function s(){(0,S.Z)(this,s),this.triggerElementsDictionary={},this.targetElements=[]}return(0,t.Z)(s,[{key:"registerTriggerElement",value:function(b,T,y){var Y=this,q=this.targetElements.find(function(k){return k.id===b}),B=new c(T,y,q);return null==this.triggerElementsDictionary[b]&&(this.triggerElementsDictionary[b]=[]),this.triggerElementsDictionary[b].push(B),B.registrationTerminated.subscribe(function(){var k=Y.triggerElementsDictionary[b].findIndex(function(D){return D.triggerElement.isEqualNode(B.triggerElement)});k>-1&&Y.triggerElementsDictionary[b].splice(k,1)}),B}},{key:"registerTargetElement",value:function(b){this.targetElements.push(b),null!=this.triggerElementsDictionary[b.id]&&this.triggerElementsDictionary[b.id].forEach(function(T){T.registerEventHandler(b)})}},{key:"unregisterTargetElement",value:function(b){null!=this.triggerElementsDictionary[b.id]&&this.triggerElementsDictionary[b.id].forEach(function(y){y.inactivateRegistration()});var T=this.targetElements.findIndex(function(y){return y.id===b.id});T>-1&&this.targetElements.splice(T,1)}},{key:"scrollToElement",value:function(b){var T=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"start",y=this.targetElements.find(function(Y){return Y.id===b});null!=y&&(y.scrollIntoView({behavior:"smooth",block:T}),setTimeout(function(){y.classList.add("blink_me"),setTimeout(function(){y.classList.remove("blink_me")},400)},500))}}]),s}();return _.\u0275fac=function(h){return new(h||_)},_.\u0275prov=u.Yz7({token:_,factory:_.\u0275fac,providedIn:"root"}),_}()},47078:function(Ce,E,n){"use strict";n.d(E,{hQ:function(){return t.h}}),n(82835);var t=n(56473)},82835:function(Ce,E,n){"use strict";n.d(E,{K:function(){return re}});var S=n(39117),t=n(1884),e=n(86613),c=n(36362),u=n(71340),o=n(83336),_=function(){function W($,be){(0,S.Z)(this,W),this.ketcher=$,this.jsdraw=be}return(0,t.Z)(W,[{key:"getMolfile",value:function(){if(null!=this.ketcher)return this.ketcher.getMolfile();if(null!=this.jsdraw){var be=this.getMCharge(),z=this.jsdraw.getMolfile();if((z=z.replace(/0.0000[ ]D[ ][ ][ ]/g,"0.0000 H ")).indexOf("M CHG")<0&&null!==be)for(var d=z.split("\n"),Q=d.length-1;Q>=3;Q--)if("M END"===d[Q]){var J=d[Q];d[Q]=be,d[Q+1]=J,z=d.join("\n");break}return this.clean(z)}return null}},{key:"getSmiles",value:function(){return null!=this.ketcher?this.ketcher.getSmiles():null!=this.jsdraw?this.jsdraw.getSmiles():void 0}},{key:"clean",value:function(be){if((be=be.replace(/M[ ]*SMT.*mul.*/g,"@").replace(/\n/g,"|_|").replace(/[@][|][_][|]/g,"").replace(/[|][_][|]/g,"\n")).indexOf("M STY")>=0){var z=be.split("\n"),d=0,Q={};Array.from(z).filter(function(J){return J.indexOf("M SMT")>=0}).map(function(J){return J.substring(0,10)}).map(function(J){Q[J]&&d++,Q[J]=1}),d>0&&(be=be.replace(/@/g,"!#!").replace(/STY/g,"@").replace(/(M[ ][ ]@[ ][ ]1)([ ]*[0-9]*)([^@]*)SMT([ ]*[0-9]*)/g,"$1$2$3SMT$2").replace(/@/g,"STY").replace(/!#!/g,"@"))}return be}},{key:"setMolecule",value:function(be){null!=this.ketcher?this.ketcher.setMolecule(be):null!=this.jsdraw&&(this.jsdraw.pushundo(),this.jsdraw.options.data=be,this.jsdraw.setMolfile(be))}},{key:"structureUpdated",value:function(){var be=this;return new o.y(function(z){null!=be.jsdraw?be.jsdraw.options.ondatachange=function(){var d=be.getMolfile();z.next(d)}:z.next("")})}},{key:"getMCharge",value:function(){var be=this;if(null!=this.jsdraw){var z=this.jsdraw.getXml(),d=1,J=(new DOMParser).parseFromString(z,"text/xml"),te=Array.from(J.getElementsByTagName("a")).filter(function(K){return K.hasAttribute("i")}).map(function(K){K.getAttribute("i");var ce=Number(K.getAttribute("c"));void 0===ce&&(ce=0);var _e={i:d++,c:ce-0,toString:function(){return be.leftPad(_e.i+"",4)+be.leftPad(_e.c+"",4)}};return _e}).filter(function(K){return 0!==K.c});if(te.length>0)return te.reduce(function(K,G,ce){return ce%8==0?[].concat((0,u.Z)(K),[[G]]):[].concat((0,u.Z)(K.slice(0,-1)),[[].concat((0,u.Z)(K.slice(-1)[0]),[G])])},[]).map(function(K){return"M CHG"+be.leftPad(K.length+"",3)+K.map(function(G){return G.toString()}).join("")})}return null}},{key:"rep",value:function(be,z){for(var d="",Q=0;Qinput._scil_dropdown::-ms-clear {display: none;}'===J){var te=document.createElement("style");te.innerHTML="input._scil_dropdown::-ms-clear {display: none;}",document.getElementsByTagName("head")[0].appendChild(te)}else z(J)};for(var d=0;d1e5&&(z=d.canvasCopy.toDataURL("image/jpeg",1e5/z.length)),d.context.clearRect(0,0,d.canvasCopy.width,d.canvasCopy.height);Q.height>700||Q.width>900;)Q.height=.9*Q.height,Q.width=.9*Q.width;d.canvasCopy.width=Q.width,d.canvasCopy.height=Q.height,d.context.drawImage(Q,0,0,Q.width,Q.height),d.sendToMolvec(z)})})}}},{key:"catchPaste",value:function(z){for(var d=this,Q={},te=z.clipboardData.items,K=0;K0),e.xp6(1),e.Q6J("hidden",!z.canvasToggle),e.xp6(1),e.Q6J("ngIf",""!==z.canvasMessage),e.xp6(1),e.Q6J("height",z.height)("width",z.width)}},directives:[y,c.mk,c.O5,Y.XZ,q.wL,B.lW,k.p6,D.Hw,k.VK,k.OP],styles:["#structure_canvas[_ngcontent-%COMP%]{margin:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;text-align:center}.below-editor-container[_ngcontent-%COMP%]{margin-top:10px;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.molvec-message[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.options[_ngcontent-%COMP%]{margin-right:10px}#canvas-container[_ngcontent-%COMP%]{width:100%;text-align:center}.canvas-message[_ngcontent-%COMP%]{font-weight:700;color:var(--regular-red-color)}.canvas-label[_ngcontent-%COMP%]{padding-top:5px}.toggle[_ngcontent-%COMP%]{margin-left:10px;font-weight:700}.z-index[_ngcontent-%COMP%]{z-index:9999!important}.high[_ngcontent-%COMP%]{z-index:0!important}.higher[_ngcontent-%COMP%]{z-index:9988!important}"]}),W}()},56473:function(Ce,E,n){"use strict";n.d(E,{h:function(){return N}});var S=n(1884),t=n(39117),e=n(36362),c=n(90587),u=n(3380),o=n(36513),_=n(65831),s=n(44770),h=n(43365),b=n(87317),T=n(65590),y=n(95758),Y=n(60833),q=n(60756),B=n(91434),k=n(82796),D=n(86613),N=function(){var I=(0,S.Z)(function L(){(0,t.Z)(this,L)});return I.\u0275fac=function(j){return new(j||I)},I.\u0275mod=D.oAB({type:I}),I.\u0275inj=D.cJS({imports:[[e.ez,s.lN,h.c,B.LD,b.ot,T.Ps,y.Is,Y.Cv,k.Tx,c.UX,u.QW,o.Pt,_.x,q.J]]}),I}()},69093:function(Ce,E,n){"use strict";n.d(E,{oV:function(){return S.o},Nt:function(){return t.N},De:function(){return e.D}});var S=n(56540),t=n(84705),e=n(1790)},45592:function(Ce,E,n){"use strict";n.d(E,{g:function(){return b}});var S=n(39117),t=n(1884),e=n(95758),c=n(86613),u=n(36362),o=n(12379),_=n(87317);function s(T,y){if(1&T&&(c.TgZ(0,"mat-tab",11),c._UZ(1,"textarea",9),c.qZA()),2&T){var Y=c.oxw(2);c.xp6(1),c.Q6J("value",Y.data.smiles)}}function h(T,y){if(1&T){var Y=c.EpF();c.TgZ(0,"mat-tab-group",7),c.NdJ("selectedIndexChange",function(k){return c.CHM(Y),c.oxw().selectedIndexChange(k)}),c.TgZ(1,"mat-tab",8),c._UZ(2,"textarea",9),c.qZA(),c.YNc(3,s,2,1,"mat-tab",10),c.qZA()}if(2&T){var q=c.oxw();c.xp6(2),c.Q6J("value",q.data.molfile),c.xp6(1),c.Q6J("ngIf",!q.data.type||"polymer"!==q.data.type)}}var b=function(){var T=function(){function y(Y,q){(0,S.Z)(this,y),this.dialogRef=Y,this.data=q,this.selectedIndex=0,this.downloadFunctions=[function(k,D,N){if(null!=k.molfile){var I=new Blob([k.molfile],{type:"chemical/x-mdl-molfile"});D.download="substance_structure.mol",N(I,D)}},function(k,D,N){if(null!=k.smiles){var I=new Blob([k.smiles],{type:"text/plain"});D.download="substance_smiles.smi",N(I,D)}}],this.anchorElement=document.createElement("a")}return(0,t.Z)(y,[{key:"ngOnInit",value:function(){}},{key:"selectedIndexChange",value:function(q){this.selectedIndex=q}},{key:"download",value:function(){this.downloadFunctions[this.selectedIndex](this.data,this.anchorElement,this.downloadFile)}},{key:"downloadFile",value:function(q,B){B.href=window.URL.createObjectURL(q),B.click()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}}]),y}();return T.\u0275fac=function(Y){return new(Y||T)(c.Y36(e.so),c.Y36(e.WI))},T.\u0275cmp=c.Xpm({type:T,selectors:[["app-structure-export"]],decls:10,vars:1,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"selectedIndexChange",4,"ngIf"],["mat-dialog-actions","",1,"export-actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-flat-button","","color","primary",3,"click"],[3,"selectedIndexChange"],["label","Molfile"],[3,"value"],["label","Smiles",4,"ngIf"],["label","Smiles"]],template:function(Y,q){1&Y&&(c.TgZ(0,"h2",0),c._uU(1," Export\n"),c.qZA(),c.TgZ(2,"div",1),c.YNc(3,h,4,2,"mat-tab-group",2),c.qZA(),c.TgZ(4,"div",3),c._UZ(5,"span",4),c.TgZ(6,"button",5),c.NdJ("click",function(){return q.dismissDialog()}),c._uU(7," Close "),c.qZA(),c.TgZ(8,"button",6),c.NdJ("click",function(){return q.download()}),c._uU(9," Download "),c.qZA(),c.qZA()),2&Y&&(c.xp6(3),c.Q6J("ngIf",q.data))},directives:[u.O5,o.SP,o.uX,_.lW],styles:["h2[_ngcontent-%COMP%]{margin-top:0}textarea[_ngcontent-%COMP%]{margin-top:20px;height:50vh}.export-actions[_ngcontent-%COMP%]{padding-top:15px;display:-ms-flexbox;display:flex}"]}),T}()},56540:function(Ce,E,n){"use strict";n.d(E,{o:function(){return J}});var S=n(44014),t=n(39117),e=n(1884),c=n(52149),u=n(95758),o=n(1790),_=n(53141),s=n(86613),h=n(98002),b=n(87317),T=n(65590),y=n(36362),Y=n(40089),q=n(9292),B=n(12379);function k(te,K){if(1&te&&(s.TgZ(0,"div"),s.TgZ(1,"a",13),s.TgZ(2,"span",14),s._uU(3),s.qZA(),s.qZA(),s._uU(4,"\xa0 "),s.TgZ(5,"a",15),s._UZ(6,"mat-icon",16),s.qZA(),s.qZA()),2&te){var G=s.oxw(2);s.xp6(1),s.hYB("href","",G.gsrsHomeBaseUrl,"substances/",G.uuid,"",s.LSH),s.xp6(2),s.Oqu(G.approvalID),s.xp6(2),s.hYB("href","",G.gsrsHomeBaseUrl,"substances/",G.uuid,"",s.LSH)}}function D(te,K){if(1&te&&s._uU(0),2&te){var G=s.oxw(2);s.hij(" ",G.approvalID," ")}}function N(te,K){if(1&te&&(s.TgZ(0,"div",10),s.YNc(1,k,7,5,"div",11),s.YNc(2,D,1,1,"ng-template",null,12,s.W1O),s.qZA()),2&te){var G=s.MAs(3),ce=s.oxw();s.xp6(1),s.Q6J("ngIf",null!==ce.uuid)("ngIfElse",G)}}function I(te,K){if(1&te&&s._UZ(0,"img",17),2&te){var G=s.oxw();s.Q6J("entityId",G.structure)}}function L(te,K){if(1&te&&(s.TgZ(0,"div"),s.TgZ(1,"a",13),s.TgZ(2,"span",14),s._uU(3),s.qZA(),s.qZA(),s._uU(4,"\xa0 "),s.TgZ(5,"a",13),s.TgZ(6,"span",14),s._uU(7,"(view record)"),s.qZA(),s.qZA(),s._uU(8,"\xa0 "),s.TgZ(9,"a",15),s._UZ(10,"mat-icon",16),s.qZA(),s.qZA()),2&te){var G=s.oxw(2);s.xp6(1),s.hYB("href","",G.gsrsHomeBaseUrl,"substances/",G.uuid,"",s.LSH),s.xp6(2),s.Oqu(G.displayName),s.xp6(2),s.hYB("href","",G.gsrsHomeBaseUrl,"substances/",G.uuid,"",s.LSH),s.xp6(4),s.hYB("href","",G.gsrsHomeBaseUrl,"substances/",G.uuid,"",s.LSH)}}function j(te,K){if(1&te&&s._uU(0),2&te){var G=s.oxw(2);s.hij(" ",G.displayName," ")}}function le(te,K){if(1&te&&(s.TgZ(0,"div",18),s.YNc(1,L,11,7,"div",11),s.YNc(2,j,1,1,"ng-template",null,19,s.W1O),s.qZA()),2&te){var G=s.MAs(3),ce=s.oxw();s.xp6(1),s.Q6J("ngIf",null!==ce.uuid)("ngIfElse",G)}}function re(te,K){if(1&te&&(s.TgZ(0,"li"),s._uU(1),s.qZA()),2&te){var G=K.$implicit;s.xp6(1),s.hij(" ",G," ")}}function W(te,K){if(1&te&&(s.TgZ(0,"mat-tab",23),s.TgZ(1,"ul"),s.YNc(2,re,2,1,"li",24),s.qZA(),s.qZA()),2&te){var G=s.oxw(2);s.xp6(2),s.Q6J("ngForOf",G.names)}}function $(te,K){if(1&te&&(s.TgZ(0,"mat-tab",25),s.TgZ(1,"textarea",26),s._uU(2),s.qZA(),s.qZA()),2&te){var G=s.oxw(2);s.xp6(2),s.Oqu(G.smiles)}}function be(te,K){if(1&te&&(s.TgZ(0,"mat-tab",27),s.TgZ(1,"textarea",28),s._uU(2),s.qZA(),s.TgZ(3,"textarea",29),s._uU(4),s.qZA(),s.qZA()),2&te){var G=s.oxw(2);s.xp6(2),s.Oqu(G.inchi),s.xp6(2),s.Oqu(G.inchiKey)}}function z(te,K){if(1&te&&(s.TgZ(0,"mat-tab-group"),s.YNc(1,W,3,1,"mat-tab",20),s.YNc(2,$,3,1,"mat-tab",21),s.YNc(3,be,5,2,"mat-tab",22),s.qZA()),2&te){var G=s.oxw();s.xp6(1),s.Q6J("ngIf",G.names&&G.names.length>0),s.xp6(1),s.Q6J("ngIf",G.smiles),s.xp6(1),s.Q6J("ngIf",G.inchi||G.inchiKey)}}function d(te,K){if(1&te){var G=s.EpF();s.TgZ(0,"div",30),s.TgZ(1,"button",31),s.NdJ("click",function(){return s.CHM(G),s.oxw().setMolfile()}),s._uU(2,"Search Structure"),s.qZA(),s.TgZ(3,"button",31),s.NdJ("click",function(){return s.CHM(G),s.oxw().selectSubstance()}),s._uU(4,"Select Substance"),s.qZA(),s._UZ(5,"span",32),s.TgZ(6,"a",33),s.NdJ("click",function(){return s.CHM(G),s.oxw().gotoDetails()}),s._uU(7,"Details "),s._UZ(8,"mat-icon",34),s.qZA(),s.TgZ(9,"a",35),s.NdJ("click",function(){return s.CHM(G),s.oxw().gotoEdit()}),s._uU(10,"Edit "),s._UZ(11,"mat-icon",34),s.qZA(),s._UZ(12,"span",36),s.TgZ(13,"button",31),s.NdJ("click",function(){return s.CHM(G),s.oxw().dialogRef.close()}),s._uU(14,"Close"),s.qZA(),s.qZA()}}function Q(te,K){if(1&te){var G=s.EpF();s.TgZ(0,"div",30),s.TgZ(1,"a",33),s.NdJ("click",function(){return s.CHM(G),s.oxw().gotoDetails()}),s._uU(2,"Substance Details "),s._UZ(3,"mat-icon",34),s.qZA(),s.TgZ(4,"a",35),s.NdJ("click",function(){return s.CHM(G),s.oxw().gotoEdit()}),s._uU(5,"Substance Edit "),s._UZ(6,"mat-icon",34),s.qZA(),s._UZ(7,"span",36),s.TgZ(8,"a",35),s.NdJ("click",function(){return s.CHM(G),s.oxw().dialogRef.close()}),s._uU(9,"Close"),s.qZA(),s.qZA()}}var J=function(){var te=function(){function K(G,ce,_e,Me,ve,ue){(0,t.Z)(this,K),this.configService=G,this.utilsService=ce,this.structureService=_e,this.dialogRef=Me,this.router=ve,this.data=ue,this.names=[],this.showSelector=!1,this.showSubstanceSelector=!1,this.gsrsHomeBaseUrl=""}return(0,e.Z)(K,[{key:"ngOnInit",value:function(){var ce=this;if(this.getHomepageUrl(),this.structure=this.data&&this.data.structure?this.data.structure:null,this.data.smiles&&(this.smiles=this.data.smiles,this.structureService.getOtherInchi(this.data.uuid).subscribe(function(ue){ce.inchi=ue}),this.structureService.getInchi(this.data.uuid).subscribe(function(ue){ce.inchiKey=ue})),this.data&&this.data.names&&this.data.names.length){var Me,_e=(0,S.Z)(this.data.names);try{for(_e.s();!(Me=_e.n()).done;){var ve=Me.value;"sys"===ve.type&&this.names.push(ve.name)}}catch(ue){_e.e(ue)}finally{_e.f()}}this.data&&this.data.approvalID&&(this.approvalID=this.data.approvalID),this.data&&this.data.uuid&&(this.uuid=this.data.uuid),this.data&&this.data.displayName&&(this.displayName=this.data.displayName),this.data.component&&"selector"===this.data.component&&(this.showSelector=!0),this.data.component&&"substanceSelector"===this.data.component&&(this.showSubstanceSelector=!0)}},{key:"dismissDialog",value:function(){this.dialogRef.close()}},{key:"setMolfile",value:function(){this.dialogRef.close("molfile")}},{key:"selectSubstance",value:function(){this.dialogRef.close("select")}},{key:"gotoDetails",value:function(){var ce;ce=this.configService.configData&&this.configService.configData.gsrsHomeBaseUrl?this.configService.configData.gsrsHomeBaseUrl+"/substances/"+this.uuid:this.router.serializeUrl(this.router.createUrlTree(["/substances/"+this.uuid])),window.open(ce,"_blank")}},{key:"gotoEdit",value:function(){var ce;ce=this.configService.configData&&this.configService.configData.gsrsHomeBaseUrl?this.configService.configData.gsrsHomeBaseUrl+"/substances/"+this.uuid+"/edit":this.router.serializeUrl(this.router.createUrlTree(["/substances/"+this.uuid+"/edit"])),window.open(ce,"_blank")}},{key:"getHomepageUrl",value:function(){this.gsrsHomeBaseUrl=this.configService.configData&&this.configService.configData.gsrsHomeBaseUrl||""}}]),K}();return te.\u0275fac=function(G){return new(G||te)(s.Y36(_.E),s.Y36(c.F),s.Y36(o.D),s.Y36(u.so),s.Y36(h.F0),s.Y36(u.WI))},te.\u0275cmp=s.Xpm({type:te,selectors:[["app-structure-image-modal"]],decls:11,vars:6,consts:[["mat-dialog-content",""],[1,"structure-image-content"],["mat-mini-fab","",3,"click"],["svgIcon","close"],["class","approval",4,"ngIf"],[2,"height","500px","min-height","501px","width","500px","min-width","501px","margin","auto"],["appSubstanceImage","","size","500","stereo","true",3,"entityId",4,"ngIf"],["class","displayname",4,"ngIf"],[4,"ngIf"],["class","button-row",4,"ngIf"],[1,"approval"],[4,"ngIf","ngIfElse"],["noUuid",""],["title","View Substance Details (opens in a new window)","target","_blank",3,"href"],[1,"viewrecord"],["target","_blank",3,"href"],["svgIcon","open_in_new","matTooltip","View Substance Details (opens in a new window)",1,"small-icon"],["appSubstanceImage","","size","500","stereo","true",3,"entityId"],[1,"displayname"],["noDisplayUuid",""],["label","Systematic Names",4,"ngIf"],["label","SMILES",4,"ngIf"],["label","InChi",4,"ngIf"],["label","Systematic Names"],[4,"ngFor","ngForOf"],["label","SMILES"],["cdkTextareaAutosize","","id","smiles","readonly","",2,"height","45px"],["label","InChi"],["cdkTextareaAutosize","","id","inchi","readonly","",2,"height","45px"],["cdkTextareaAutosize","","id","inchiKey","readonly","",2,"height","45px"],[1,"button-row"],["mat-flat-button","","color","primary",1,"modal-button",3,"click"],[2,"margin","8px"],["mat-button","","color","primary","target","_blank",1,"modal-button",3,"click"],["matListIcon","","svgIcon","open_in_new",1,"middle-button","icon-super"],["mat-button","","color","primary",1,"modal-button",3,"click"],[1,"middle-fill"]],template:function(G,ce){1&G&&(s.TgZ(0,"div",0),s.TgZ(1,"div",1),s.TgZ(2,"button",2),s.NdJ("click",function(){return ce.dismissDialog()}),s._UZ(3,"mat-icon",3),s.qZA(),s.YNc(4,N,4,2,"div",4),s.TgZ(5,"div",5),s.YNc(6,I,1,1,"img",6),s.qZA(),s.YNc(7,le,4,2,"div",7),s.YNc(8,z,4,3,"mat-tab-group",8),s.qZA(),s.YNc(9,d,15,0,"div",9),s.YNc(10,Q,10,0,"div",9),s.qZA()),2&G&&(s.xp6(4),s.Q6J("ngIf",ce.approvalID),s.xp6(2),s.Q6J("ngIf",ce.structure),s.xp6(1),s.Q6J("ngIf",ce.displayName),s.xp6(1),s.Q6J("ngIf",ce.smiles||ce.names&&ce.names.length>0||ce.inchi||ce.inchiKey),s.xp6(1),s.Q6J("ngIf",ce.showSelector),s.xp6(1),s.Q6J("ngIf",ce.showSubstanceSelector))},directives:[b.lW,T.Hw,y.O5,Y.gM,q.m,B.SP,B.uX,y.sg,b.zs],styles:[".structure-image-panel .mat-dialog-container{padding:5px;position:relative;overflow:hidden} .structure-image-panel .mat-dialog-content{margin:0;padding:0;max-height:100%} .structure-image-panel .mat-tab-body-content{padding-left:10px;padding-right:10px}img[_ngcontent-%COMP%]{width:100%;height:auto}.icon-super[_ngcontent-%COMP%]{vertical-align:top;height:20px}.button-row[_ngcontent-%COMP%]{margin:10px 5px;width:100%;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:end;align-items:flex-end;-ms-flex-direction:row;flex-direction:row}.modal-button[_ngcontent-%COMP%]{font-size:15px;margin-right:10px}.structure-image-content[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{max-width:500px;margin:auto}mat-dialog-container[_ngcontent-%COMP%] div[mat-dialog-content][_ngcontent-%COMP%]{overflow:auto;height:100%}.mat-mini-fab[_ngcontent-%COMP%]{position:absolute;right:17px;top:8px;background-color:var(--mat-icon-button-bg-color);color:var(--label-color);width:35px;height:35px}.mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0}.approval[_ngcontent-%COMP%]{position:relative;top:30px;width:80%;margin:0 auto;text-align:center}.displayname[_ngcontent-%COMP%]{width:80%;position:relative;margin:0 auto;text-align:center}.viewrecord[_ngcontent-%COMP%]{color:var(--link-primary-color);font-weight:700;font-size:20px}"]}),te}()},84705:function(Ce,E,n){"use strict";n.d(E,{N:function(){return k}});var S=n(39117),t=n(1884),e=n(95758),c=n(90587),u=n(24874),o=n(1790),_=n(86613),s=n(36362),h=n(60833),b=n(87317),T=n(65831);function y(D,N){1&D&&_._UZ(0,"mat-progress-bar",12)}var Y=function(N){return["message-container",N]};function q(D,N){if(1&D&&(_.TgZ(0,"div",13),_._uU(1),_.qZA()),2&D){var I=_.oxw();_.Q6J("ngClass",_.VKq(2,Y,I.messageClass)),_.xp6(1),_.hij(" ",I.message,"\n")}}var B=function(N){return{"has-message":N}},k=function(){var D=function(){function N(I,L,j,le){(0,S.Z)(this,N),this.dialogRef=I,this.data=L,this.gaService=j,this.structureService=le,this.isLoading=!1,this.importTextControl=new c.NI,this.messageClass="error"}return(0,t.Z)(N,[{key:"ngOnInit",value:function(){}},{key:"importStructure",value:function(){var L=this;this.message=null,this.importTextControl.value?(this.isLoading=!0,this.structureService.interpretStructure(this.importTextControl.value).subscribe(function(j){L.isLoading=!1,j&&j.structure&&j.structure.molfile?(L.gaService.sendEvent("structureImport","button:import","file imported"),L.dialogRef.close(j)):(L.messageClass="error",L.message="You need to enter a valid molfile or smiles",L.gaService.sendException("wrong structure data imported"))},function(j){L.isLoading=!1,L.messageClass="error",L.message="There was an error importing your structure. Please refresh and try again.",L.gaService.sendException("postSubstanceStructure error")})):(this.messageClass="error",this.message="You have not entered anything to import",this.gaService.sendException("no structure data entered for import"))}},{key:"fileBrowse",value:function(){this.gaService.sendEvent("structureImport","button:browse-file","browse file")}},{key:"fileSelected",value:function(L){var j=this;if(this.gaService.sendEvent("structureImport","file-selected","file selected"),L){var le=new FileReader;le.onload=function(){j.importTextControl.setValue(le.result)},le.readAsText(L)}}},{key:"dismissDialog",value:function(){this.gaService.sendEvent("structureImport","button:close","no file imported"),this.dialogRef.close()}}]),N}();return D.\u0275fac=function(I){return new(I||D)(_.Y36(e.so),_.Y36(e.WI),_.Y36(u.$),_.Y36(o.D))},D.\u0275cmp=_.Xpm({type:D,selectors:[["app-structure-import"]],decls:17,vars:6,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[1,"directions"],[1,"text-area-container"],[3,"formControl","ngClass"],["color","accent","mode","indeterminate",4,"ngIf"],[3,"ngClass",4,"ngIf"],["mat-dialog-actions","",1,"import-actions"],["mat-button","","ncatsFileSelect","",3,"selectedFile","click"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",1,"import-button",3,"click"],["color","accent","mode","indeterminate"],[3,"ngClass"]],template:function(I,L){1&I&&(_.TgZ(0,"h2",0),_._uU(1," Import Structure\n"),_.qZA(),_.TgZ(2,"div",1),_.TgZ(3,"div",2),_._uU(4,"Enter molfile or smiles:"),_.qZA(),_.TgZ(5,"div",3),_._UZ(6,"textarea",4),_.qZA(),_.qZA(),_.YNc(7,y,1,0,"mat-progress-bar",5),_.YNc(8,q,2,4,"div",6),_.TgZ(9,"div",7),_.TgZ(10,"button",8),_.NdJ("selectedFile",function(le){return L.fileSelected(le)})("click",function(){return L.fileBrowse()}),_._uU(11,"Browse"),_.qZA(),_._UZ(12,"span",9),_.TgZ(13,"button",10),_.NdJ("click",function(){return L.dismissDialog()}),_._uU(14,"Close"),_.qZA(),_.TgZ(15,"button",11),_.NdJ("click",function(){return L.importStructure()}),_._uU(16,"Import"),_.qZA(),_.qZA()),2&I&&(_.xp6(6),_.Q6J("formControl",L.importTextControl)("ngClass",_.VKq(4,B,L.message)),_.xp6(1),_.Q6J("ngIf",L.isLoading),_.xp6(1),_.Q6J("ngIf",L.message))},directives:[c.Fj,c.JJ,c.oH,s.mk,s.O5,h.pW,b.lW,T.C],styles:["h2[_ngcontent-%COMP%]{margin-top:0}.directions[_ngcontent-%COMP%]{margin-bottom:5px}textarea[_ngcontent-%COMP%]{box-sizing:border-box;width:100%;height:50vh;border:solid 1px var(--textarea-light-border-color);border-radius:2px;padding:5px;margin:0}textarea.has-message[_ngcontent-%COMP%]{border-bottom-left-radius:0;border-bottom-right-radius:0}.import-actions[_ngcontent-%COMP%]{padding-top:10px}.message-container[_ngcontent-%COMP%]{padding:5px 0;text-align:center;border-bottom-left-radius:2px;border-bottom-right-radius:2px}.message-container.default[_ngcontent-%COMP%]{background-color:var(--structure-import-default-bg-color);color:var(--structure-import-color)}.message-container.success[_ngcontent-%COMP%]{background-color:var(--structure-import-success-bg-color);color:var(--structure-import-color)}.message-container.error[_ngcontent-%COMP%]{background-color:var(--structure-import-error-bg-color);color:var(--structure-import-color)}"]}),D}()},60756:function(Ce,E,n){"use strict";n.d(E,{J:function(){return q}});var S=n(1884),t=n(39117),e=n(36362),c=n(60833),u=n(65590),o=n(12379),_=n(87317),s=n(24054),h=n(90587),b=n(98002),T=n(65831),y=n(40089),Y=n(86613),q=function(){var B=(0,S.Z)(function k(){(0,t.Z)(this,k)});return B.\u0275fac=function(D){return new(D||B)},B.\u0275mod=Y.oAB({type:B}),B.\u0275inj=Y.cJS({imports:[[e.ez,u.Ps,o.Nh,y.AV,s.f,h.u5,h.UX,c.Cv,_.ot,b.Bz,T.x]]}),B}()},1790:function(Ce,E,n){"use strict";n.d(E,{D:function(){return D}});var S=n(39117),t=n(1884),e=n(92507),c=n(96936),u=n(97885),o=n(41944),_=n(54987),s=n(27543),h=n(93945),b=n(1817),T=(0,s.d)(function(N){return function(){var L=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;N(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=L}});function Y(N){throw new T(N)}var q=n(28784),B=n(86613),k=n(50318),D=function(){var N=function(){function I(L,j,le){(0,S.Z)(this,I),this.sanitizer=L,this.configService=j,this.http=le}return(0,t.Z)(I,[{key:"getSafeStructureImgUrl",value:function(j){var le=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150,re="".concat(this.configService.configData.apiBaseUrl,"img/").concat(j,".svg?size=").concat(le.toString());return this.sanitizer.bypassSecurityTrustUrl(re)}},{key:"getMolfile",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"img/").concat(j,".mol");return this.http.get(le,{responseType:"text"})}},{key:"downloadMolfile",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"img/").concat(j,".mol");return this.http.get(le,{responseType:"blob"})}},{key:"getInchi",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances(").concat(j,")/$structure!$inchikey()");return this.http.get(le,{responseType:"text"})}},{key:"getSDFile",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"api/v1/export/").concat(j,".SDFile");return this.http.get(le,{responseType:"text"})}},{key:"getOtherInchi",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances(").concat(j,")/$structure!$inchi()");return this.http.get(le,{responseType:"text"})}},{key:"resolveName",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"resolve?name=").concat(encodeURIComponent(j));return this.http.get(le).pipe(function y(N,I){var L=(0,u.q)(N)?{first:N}:"number"==typeof N?{each:N}:N,j=L.first,le=L.each,re=L.with,W=void 0===re?Y:re,$=L.scheduler,be=void 0===$?null!=I?I:c.z:$,z=L.meta,d=void 0===z?null:z;if(null==j&&null==le)throw new TypeError("No timeout provided.");return(0,o.e)(function(Q,J){var te,K,G=null,ce=0,_e=function(ve){K=(0,b.f)(J,be,function(){try{te.unsubscribe(),(0,_.Xf)(W({meta:d,lastValue:G,seen:ce})).subscribe(J)}catch(ue){J.error(ue)}},ve)};te=Q.subscribe((0,h.x)(J,function(Me){null==K||K.unsubscribe(),ce++,J.next(G=Me),le>0&&_e(le)},void 0,void 0,function(){(null==K?void 0:K.closed)||null==K||K.unsubscribe(),G=null})),_e(null!=j?"number"==typeof j?j:+j-be.now():le)})}(15e3))}},{key:"formatFormula",value:function(j){if(null==j.formula)return"";var le=j.formula.replace(/([a-zA-Z])([0-9]+)/g,"$1$2");if(null!=j.charge&&0!==j.charge&&!le.includes(".")){var re=j.charge.toString(),W="+";j.charge<0&&(re=re.substring(1),W="-"),"1"===re&&(re=""),le=le+""+re+W+""}return le}},{key:"getName",value:function(j){var le=new q.LE,re="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/search"),W=j.replace('"',"");return le=le.append("q",'root_names_name:"^'+W+'$" OR root_approvalID:"^'+W+'$" OR root_codes_BDNUM:"^'+W+'$"'),this.http.get(re,{params:le})}},{key:"interpretStructure",value:function(j,le,re){var W="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/interpretStructure?mode=").concat(le||"","&standardize=").concat(re||"");return this.http.post(W,j)}},{key:"molvec",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/ocrStructure");return this.http.post(le,j)}},{key:"duplicateCheck",value:function(j){var le="".concat(this.configService.configData.apiBaseUrl,"register/duplicateCheck");return this.http.post(le,j)}}]),I}();return N.\u0275fac=function(L){return new(L||N)(B.LFG(k.H7),B.LFG(e.E),B.LFG(q.eN))},N.\u0275prov=B.Yz7({token:N,factory:N.\u0275fac,providedIn:"root"}),N}()},68756:function(Ce,E,n){"use strict";n.d(E,{uJ:function(){return S.u},Sg:function(){return c.S}});var S=n(54025),c=(n(30207),n(26120),n(72869));n(21866),n(63206)},54025:function(Ce,E,n){"use strict";n.d(E,{u:function(){return s}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(2756),o=n(90587),_=n(93666),s=function(h){(0,e.Z)(T,h);var b=(0,c.Z)(T);function T(y){var Y;return(0,S.Z)(this,T),(Y=b.call(this)).gaService=y,Y.page=0,Y.pageSize=5,Y.searchControl=new o.NI,Y}return(0,t.Z)(T,[{key:"pageChange",value:function(Y,q){var B,k;null!=Y&&(this.pageSize!==Y.pageSize?(B="select:page-size",k=Y.pageSize):this.page!==Y.pageIndex&&(B="icon-button:page-number",k=Y.pageIndex+1),this.gaService.sendEvent(q,B,"pager",k),this.page=Y.pageIndex,this.pageSize=Y.pageSize),this.paged=[];for(var D=this.page*this.pageSize,N=D;N2&&void 0!==arguments[2]?arguments[2]:"substance card";null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){B.gaService.sendEvent(k,"search",!_.N.isAnalyticsPrivate&&Y||"input value"),B.filtered=[],q.forEach(function(N){JSON.stringify(N).toLowerCase().indexOf(Y.toLowerCase())>-1&&B.filtered.push(N)}),clearTimeout(B.searchTimer),B.searchTimer=null,B.page=0,B.pageChange()},700)}}]),T}(u.B)},2756:function(Ce,E,n){"use strict";n.d(E,{B:function(){return c}});var S=n(1884),t=n(39117),e=n(86613),c=function(){var u=(0,S.Z)(function o(){(0,t.Z)(this,o),this.countUpdate=new e.vpe});return u.\u0275fac=function(_){return new(_||u)},u.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac}),u}()},30207:function(Ce,E,n){"use strict";n.d(E,{v:function(){return t}});var t=new(n(86613).OlP)("SUBSTANCE_CARDS_FILTERS")},26120:function(Ce,E,n){"use strict";function S(Y,q){if(null==q)return null;if(!(q.indexOf(".")>-1))return Y[q];for(var B=q.split("."),k=Y,D=B.length-1,N=0;N0&&(k=!0)}),B.next(k),B.complete()})}},{name:"countFilter",filter:function s(Y,q){return new t.y(function(B){var k=!1,D=null!=q.countMinimum?q.countMinimum:1,N=null!=q.countMaximum?q.countMaximum:9999999;if(null!=q.propertyToCheck){var I=S(Y,q.propertyToCheck);null!=I&&"[object Array]"===Object.prototype.toString.call(I)&&I.length&&I.length>=D&&I.length<=N&&(k=!0)}B.next(k),B.complete()})}},{name:"substanceCodes",filter:function h(Y,q){return new t.y(function(B){var k=!1;if(Y.codes&&Y.codes.length>0)for(var D=0;D0)for(var D=function(j){var le=Y.relationships[j].type,re=le&&le.trim()||"";if(q.value instanceof Array){var W=!1;if(q.value.forEach(function($){re.toLowerCase().indexOf($.toLowerCase())>-1&&(W=!0)}),!W)return k=!0,"break"}else if(re.toLowerCase().indexOf(q.value.toLowerCase())>-1)return k=!0,"break"},N=0;N0?(0,_.D)(B.filters).subscribe(function(D){var N=!0;D.forEach(function(I){I||(N=!1)}),k.next(N),k.complete()}):(k.next(!0),k.complete())})}}]),Y}(),h=n(88951),b=n(86613),T=n(28784),y=function(){var Y=function(){function q(B,k,D,N){(0,S.Z)(this,q),this.configService=B,this.filters=k,this.http=D,this.auth=N}return(0,t.Z)(q,[{key:"getSubstanceDetailsPropertiesAsync",value:function(k){var D=this;return new o.y(function(N){var I=D.filters.reduce(function(j,le){return j.concat(le)},[]),L=D.configService.configData.substanceDetailsCards;null!=L&&L.length&&L.forEach(function(j,le){var W=new c(j.title||j.type||"",null,j.card,j.type,null!=j.order?j.order:le);j.filters&&j.filters.length?new s(k,j.filters,I,D.http,D.auth).resolve().subscribe(function(be){N.next(be?W:null)}):N.next(W)})})}}]),q}();return Y.\u0275fac=function(B){return new(B||Y)(b.LFG(e.E),b.LFG(u.v),b.LFG(T.eN),b.LFG(h.e))},Y.\u0275prov=b.Yz7({token:Y,factory:Y.\u0275fac}),Y}()},63206:function(Ce,E,n){"use strict";n.d(E,{n:function(){return te}});var S=n(39117),t=n(1884),e=n(86613),c=n(12570),u=n(88325),o=n(49143),_=n(21866),s=n(52149),h=n(24874),b=n(93666),T=n(50253),y=n(98002),Y=n(93392),q=n(76775),B=n(50318),k=n(7216),D=n(26131),N=n(36362),I=n(78444),L=function(){var K=function(){function G(ce,_e){(0,S.Z)(this,G),this.elementRef=ce,this.scrollToService=_e,this.vAlign="center"}return(0,t.Z)(G,[{key:"ngAfterViewInit",value:function(){null!=this.scrollToElementId?this.registerTriggerElement():console.error("You need to enter a value for scrollToElementId")}},{key:"ngOnDestroy",value:function(){this.triggerElementRegistration.unregister()}},{key:"registerTriggerElement",value:function(){this.triggerElementRegistration=this.scrollToService.registerTriggerElement(this.scrollToElementId,this.elementRef.nativeElement,this.vAlign)}}]),G}();return K.\u0275fac=function(ce){return new(ce||K)(e.Y36(e.SBq),e.Y36(I.i))},K.\u0275dir=e.lG2({type:K,selectors:[["","appScrollToTrigger",""]],inputs:{scrollToElementId:"scrollToElementId",vAlign:"vAlign"}}),K}(),j=n(65590),le=n(16531),re=n(51279),W=["matSideNavInstance"],$=["dynamicComponent"];function be(K,G){if(1&K&&(e.TgZ(0,"span",13),e._uU(1),e.qZA()),2&K){var ce=e.oxw().$implicit;e.xp6(1),e.Oqu(ce.count)}}function z(K,G){if(1&K){var ce=e.EpF();e.TgZ(0,"a",8),e.NdJ("click",function(){var ue=e.CHM(ce).$implicit;return e.oxw().handleSidenavClick(ue.title)}),e.TgZ(1,"span",9),e._uU(2),e.qZA(),e.YNc(3,be,2,1,"span",10),e._UZ(4,"span",11),e._UZ(5,"mat-icon",12),e.qZA()}if(2&K){var _e=G.$implicit;e.Q6J("scrollToElementId",_e.dynamicComponentId+(_e.type?_e.type:"")),e.xp6(2),e.Oqu(_e.title),e.xp6(1),e.Q6J("ngIf",null!=_e.count)}}function d(K,G){if(1&K&&(e.TgZ(0,"div",20),e._uU(1),e.qZA()),2&K){var ce=e.oxw(2);e.xp6(1),e.Oqu(ce.substance.approvalID)}}function Q(K,G){if(1&K&&(e.TgZ(0,"mat-expansion-panel",21),e.TgZ(1,"mat-expansion-panel-header"),e.TgZ(2,"mat-panel-title"),e.TgZ(3,"h2"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e._UZ(5,"div",null,22),e.qZA()),2&K){var ce=G.$implicit;e.Q6J("id",ce.dynamicComponentId+(ce.type?ce.type:"")),e.xp6(4),e.Oqu(ce.title)}}function J(K,G){if(1&K&&(e.TgZ(0,"div",14),e.TgZ(1,"div",15),e._UZ(2,"h1",16),e._UZ(3,"span",11),e.YNc(4,d,2,1,"div",17),e.qZA(),e.TgZ(5,"mat-accordion",18),e.YNc(6,Q,7,2,"mat-expansion-panel",19),e.qZA(),e.qZA()),2&K){var ce=e.oxw();e.xp6(2),e.Q6J("innerHTML",ce.substance._nameHTML?ce.substance._nameHTML:ce.substance._name,e.oJD),e.xp6(2),e.Q6J("ngIf",ce.substance.approvalID),e.xp6(2),e.Q6J("ngForOf",ce.substanceDetailsProperties)}}var te=function(){var K=function(){function G(ce,_e,Me,ve,ue,lt,Xe,mt,wt,Pt,Pe,ze){var ft=this;(0,S.Z)(this,G),this.activatedRoute=ce,this.substanceService=_e,this.loadingService=Me,this.mainNotificationService=ve,this.router=ue,this.route=lt,this.dynamicComponentLoader=Xe,this.substanceCardsService=mt,this.utilsService=wt,this.gaService=Pt,this.activeRoute=Pe,this.titleService=ze,this.substanceDetailsProperties=[],this.hasBackdrop=!1,this.substanceUpdated=new T.x,this.processResponsiveness=function(){window&&(window.innerWidth<1100?(ft.matSideNav.close(),ft.hasBackdrop=!0):(ft.matSideNav.open(),ft.hasBackdrop=!1))}}return(0,t.Z)(G,[{key:"ngOnInit",value:function(){var _e=this;this.gaService.sendPageView("Substance Details"),this.id=this.activatedRoute.snapshot.params.id,this.version=this.activatedRoute.snapshot.params.version,this.loadingService.setLoading(!0),this.checkVersion().subscribe(function(Me){_e.latestVersion=Me,_e.activeRoute.params.subscribe(function(ve){_e.id=ve.id,_e.version=ve.version,_e.version&&Number(_e.latestVersion)>Number(_e.version)?_e.getSubstanceDetails(_e.id,_e.version.toString()):_e.getSubstanceDetails(_e.id)})},function(Me){_e.gaService.sendException("checkVersionCall: error from API call"),_e.loadingService.setLoading(!1),_e.handleSubstanceRetrivalError()})}},{key:"ngAfterViewInit",value:function(){var _e=this;this.dynamicComponents.changes.subscribe(function(){_e.dynamicComponents.forEach(function(Me,ve){var ue=_e.substanceDetailsProperties[ve];ue.isLoaded||(ue.isLoaded=!0,_e.dynamicComponentLoader.getComponentFactory(ue.dynamicComponentId).subscribe(function(lt){var Xe=Me.createComponent(lt);Xe.instance.countUpdate.subscribe(function(mt){ue.updateCount(mt)}),Xe.instance.substance=_e.substance,Xe.instance.substanceUpdated=_e.substanceUpdated.asObservable(),Xe.instance.title=ue.title,Xe.instance.analyticsEventCategory=!b.N.isAnalyticsPrivate&&_e.utilsService.toCamelCase("substance ".concat(ue.title))||"substanceCard",null!=ue.type&&(Xe.instance.type=ue.type),Xe.changeDetectorRef.detectChanges(),_e.substanceUpdated.next(_e.substance)}))})}),this.matSideNav.openedStart.subscribe(function(){_e.utilsService.handleMatSidenavOpen(1100)}),this.matSideNav.closedStart.subscribe(function(){_e.utilsService.handleMatSidenavClose()}),setTimeout(function(){_e.processResponsiveness()})}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"ngOnDestroy",value:function(){}},{key:"checkVersion",value:function(){return this.substanceService.checkVersion(this.id)}},{key:"getSubstanceDetails",value:function(_e,Me){var ve=this;this.substanceService.getSubstanceDetails(_e,Me).subscribe(function(ue){if(ue){var lt=ue._name;ue.names.forEach(function(Xe){Xe.displayName&&Xe.stdName&&(lt=Xe.stdName)}),lt=lt.replace(/<[^>]*>?/gm,""),ve.titleService.setTitle(lt),ve.substance=ue,ve.substanceUpdated.next(ue),ve.substanceCardsService.getSubstanceDetailsPropertiesAsync(ve.substance).subscribe(function(Xe){null!=Xe&&ve.insertSubstanceProperty(Xe)}),ve.substanceService.getMixtureParent(_e).subscribe(function(Xe){Xe&&Xe.content&&Xe.content.length>0&&(ve.substance.$$mixtureParents=Xe.content,ve.substanceCardsService.getSubstanceDetailsPropertiesAsync(ve.substance).subscribe(function(mt){null!=mt&&ve.insertSubstanceProperty(mt)}))}),ve.substanceService.getConstituentParent(_e).subscribe(function(Xe){Xe&&Xe.content&&Xe.content.length>0&&(ve.substance.$$constituentParents=Xe.content,ve.substanceCardsService.getSubstanceDetailsPropertiesAsync(ve.substance).subscribe(function(mt){null!=mt&&ve.insertSubstanceProperty(mt)}))})}else ve.handleSubstanceRetrivalError();ve.loadingService.setLoading(!1)},function(ue){ve.gaService.sendException("getSubstanceDetails: error from API call"),ve.loadingService.setLoading(!1),ve.handleSubstanceRetrivalError()})}},{key:"insertSubstanceProperty",value:function(_e,Me,ve){var ue=this.substanceDetailsProperties.length,lt=null!=Me?Me:0,Xe=null!=ve?ve:ue-1,mt=lt+Math.floor((Xe-lt)/2);if(0!==ue){if(_e.order>this.substanceDetailsProperties[Xe].order)this.substanceDetailsProperties.splice(Xe+1,0,_e);else if(_e.order=Xe)){if(_e.orderthis.substanceDetailsProperties[mt].order)return void this.insertSubstanceProperty(_e,mt+1,Xe);this.substanceDetailsProperties.forEach(function(wt){"identifiers"===wt.title&&(wt.title="Codes - Identifiers"),"classification"===wt.title&&(wt.title="Codes - Classification")})}}else this.substanceDetailsProperties.push(_e)}},{key:"handleSubstanceRetrivalError",value:function(){var _e=this;this.mainNotificationService.setNotification({message:"The web address above is incorrect or the substance you're trying to see doesn't exist. We're forwarding you to Browse Substances",type:u.k.error,milisecondsToShow:5e3}),setTimeout(function(){var ve={queryParams:{}};ve.queryParams.search=_e.id||null,_e.router.navigate(["/browse-substance"],ve)},5e3)}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substanceNav","button:sidenav","open"),this.matSideNav.open()}},{key:"handleSidenavClick",value:function(_e){this.gaService.sendEvent("substanceNav","link:nav-to",b.N.isAnalyticsPrivate?"substance card":_e),window&&window.innerWidth<1100&&(this.matSideNav.close(),this.hasBackdrop=!0)}}]),G}();return K.\u0275fac=function(ce){return new(ce||K)(e.Y36(y.gz),e.Y36(c.d),e.Y36(Y.b),e.Y36(q.a),e.Y36(y.F0),e.Y36(y.gz),e.Y36(o.U),e.Y36(_.W),e.Y36(s.F),e.Y36(h.$),e.Y36(y.gz),e.Y36(B.Dx))},K.\u0275cmp=e.Xpm({type:K,selectors:[["app-substance-details"]],viewQuery:function(ce,_e){var Me;1&ce&&(e.Gf(W,7),e.Gf($,5,e.s_b)),2&ce&&(e.iGM(Me=e.CRH())&&(_e.matSideNav=Me.first),e.iGM(Me=e.CRH())&&(_e.dynamicComponents=Me))},hostBindings:function(ce,_e){1&ce&&e.NdJ("resize",function(ve){return _e.onResize(ve)},!1,e.Jf7)},decls:10,vars:4,consts:[[3,"hasBackdrop"],["mode","side","opened","",1,"white-background",3,"disableClose"],["matSideNavInstance",""],["mat-list-item","","tabindex","0","role","link","appScrollToTrigger","","vAlign","start",3,"scrollToElementId","click",4,"ngFor","ngForOf"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],[1,"side-nav-content"],["class","substance-details",4,"ngIf"],["mat-list-item","","tabindex","0","role","link","appScrollToTrigger","","vAlign","start",3,"scrollToElementId","click"],[1,"capitalized"],["class","chip",4,"ngIf"],[1,"middle-fill"],["svgIcon","chevron_right",1,"nav-chevron"],[1,"chip"],[1,"substance-details"],[1,"title-container"],[1,"substance-title",3,"innerHTML"],["class","approvalID",4,"ngIf"],["multi","true"],["expanded","true","appScrollToTarget","",3,"id",4,"ngFor","ngForOf"],[1,"approvalID"],["expanded","true","appScrollToTarget","",3,"id"],["dynamicComponent",""]],template:function(ce,_e){1&ce&&(e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"mat-nav-list"),e.YNc(4,z,6,3,"a",3),e.qZA(),e.qZA(),e.TgZ(5,"mat-sidenav-content"),e.TgZ(6,"button",4),e.NdJ("click",function(){return _e.openSideNav()}),e._UZ(7,"mat-icon",5),e.qZA(),e.TgZ(8,"div",6),e.YNc(9,J,7,3,"div",7),e.qZA(),e.qZA(),e.qZA()),2&ce&&(e.Q6J("hasBackdrop",_e.hasBackdrop),e.xp6(1),e.Q6J("disableClose",!0),e.xp6(3),e.Q6J("ngForOf",_e.substanceDetailsProperties),e.xp6(5),e.Q6J("ngIf",_e.substance))},directives:[k.TM,k.JX,D.Hk,N.sg,D.Tg,L,N.O5,j.Hw,k.Rh,le.pp,le.ib,re.P,le.yz,le.yK],styles:[".side-nav-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}.substance-details[_ngcontent-%COMP%]{width:100%;max-width:928px;box-sizing:border-box}.title-container[_ngcontent-%COMP%]{padding:0 20px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.title-card[_ngcontent-%COMP%]{padding-top:15px;padding-bottom:15px;margin-bottom:10px}.white-background[_ngcontent-%COMP%]{background-color:var(--regular-white-color)}.substance-title[_ngcontent-%COMP%]{display:inline-block}.approvalID[_ngcontent-%COMP%]{font-size:20px;color:var(--pink-span-color);font-weight:500}.chip[_ngcontent-%COMP%]{display:inline-block;background-color:var(--pale-border-color);border-radius:50%;padding:0 5px;margin-left:15px}mat-panel-title[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{text-transform:capitalize} .nav-chevron svg{height:24px;width:24px}@media (max-width: 1100px){.title-container[_ngcontent-%COMP%]{padding-left:25px}}@media (max-width: 500px){.title-container[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{word-break:break-all}}@media (max-width: 603px){ .mat-paginator-range-label{margin-left:10px;margin-right:10px}}"]}),K}()},84577:function(Ce,E,n){"use strict";n.d(E,{h:function(){return B}});var S=n(39117),t=n(1884),e=n(86613),c=n(42827),u=n(90587),o=n(87317),_=n(82796),s=n(40089),h=n(36362),b=n(65590),T=n(61534);function y(k,D){1&k&&e._UZ(0,"mat-icon",8)}function Y(k,D){1&k&&e._UZ(0,"mat-icon",9)}function q(k,D){if(1&k){var N=e.EpF();e.TgZ(0,"div",10),e.NdJ("click",function(j){return j.stopPropagation()}),e.TgZ(1,"mat-checkbox",11),e.NdJ("change",function(j){var re=e.CHM(N).$implicit;return e.oxw().updateAccess(j,re)}),e._uU(2),e.qZA(),e.qZA()}if(2&k){var I=D.$implicit;e.xp6(1),e.Q6J("formControlName",I.value),e.xp6(1),e.hij(" ",I.display," ")}}var B=function(){var k=function(){function D(N,I){(0,S.Z)(this,D),this.cvService=N,this.element=I,this.privateAccess=[],this.accessOut=new e.vpe,this.accessFormGroup=new u.cw({})}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"ngAfterViewInit",value:function(){}},{key:"access",get:function(){return this.privateAccess},set:function(I){null!=I?(this.privateAccess=I,this.getVocabularies()):(this.privateAccess=[],this.getVocabularies())}},{key:"getVocabularies",value:function(){var I=this;this.cvService.getDomainVocabulary("ACCESS_GROUP").subscribe(function(L){var j=L.ACCESS_GROUP.list;I.createAccessFromGroup(j),I.accessOptions=j,I.crosscheckAccesses()})}},{key:"createAccessFromGroup",value:function(){var I=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],L={};I.forEach(function(j){L[j.value]=new u.NI}),this.accessFormGroup=new u.cw(L)}},{key:"crosscheckAccesses",value:function(){var I=this;this.tooltipMessage="Access is set to: ",this.privateAccess.length>0?(this.privateAccess.forEach(function(L){for(var j=0;j1&&(this.tooltipMessage+=", "),this.tooltipMessage+=L.display;else{var j=this.privateAccess.indexOf(L.value);j>-1&&this.privateAccess.splice(j,1),this.tooltipMessage=this.tooltipMessage.replace(L.display,"").replace(": , ",": ").replace(", ,",",").replace(/,$/,"").replace(/(, )$/,""),0===this.privateAccess.length&&(this.tooltipMessage+="public")}this.accessOut.emit(this.privateAccess)}},{key:"menuOpened",value:function(){var I=new Event("focusin",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(I)}},{key:"menuClosed",value:function(){var I=new Event("focusout",{bubbles:!0,cancelable:!0});this.element.nativeElement.dispatchEvent(I)}}]),D}();return k.\u0275fac=function(N){return new(N||k)(e.Y36(c.I),e.Y36(e.SBq))},k.\u0275cmp=e.Xpm({type:k,selectors:[["app-access-manager"]],inputs:{label:"label",access:"access"},outputs:{accessOut:"accessOut"},decls:10,vars:7,consts:[[1,"menu-container"],["mat-button","",3,"matMenuTriggerFor","matTooltip","menuOpened","menuClosed"],["svgIcon","lock",4,"ngIf"],["svgIcon","lock_open",4,"ngIf"],["xPosition","before"],["accessMenu","matMenu"],[3,"formGroup"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["svgIcon","lock"],["svgIcon","lock_open"],["mat-menu-item","",3,"click"],[3,"formControlName","change"]],template:function(N,I){if(1&N&&(e.TgZ(0,"div",0),e.TgZ(1,"button",1),e.NdJ("menuOpened",function(){return I.menuOpened()})("menuClosed",function(){return I.menuClosed()}),e.YNc(2,y,1,0,"mat-icon",2),e.YNc(3,Y,1,0,"mat-icon",3),e.TgZ(4,"span"),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-menu",4,5),e.TgZ(8,"form",6),e.YNc(9,q,3,2,"div",7),e.qZA(),e.qZA(),e.qZA()),2&N){var L=e.MAs(7);e.xp6(1),e.Q6J("matMenuTriggerFor",L)("matTooltip",I.tooltipMessage),e.xp6(1),e.Q6J("ngIf",I.access.length),e.xp6(1),e.Q6J("ngIf",!I.access.length),e.xp6(2),e.Oqu(I.label?I.label:"Access"),e.xp6(3),e.Q6J("formGroup",I.accessFormGroup),e.xp6(1),e.Q6J("ngForOf",I.accessOptions)}},directives:[o.lW,_.p6,s.gM,h.O5,b.Hw,_.VK,u._Y,u.JL,u.sg,h.sg,_.OP,T.oG,u.JJ,u.u],styles:[".menu-container[_ngcontent-%COMP%]{padding-bottom:14px}"]}),k}()},457:function(Ce,E,n){"use strict";n.d(E,{O:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(33567),s=n(68785),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,k.substance.modifications||(k.substance.modifications={}),k.substance.modifications.agentModifications||(k.substance.modifications.agentModifications=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.modifications.agentModifications)});this.subscriptions.push(D)}},{key:"substanceAgentModifications",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceAgentModification",value:function(){this.substance.modifications.agentModifications.unshift({}),this.propertyEmitter.next(this.substance.modifications.agentModifications)}},{key:"deleteSubstanceAgentModification",value:function(k){var D=this.substance.modifications.agentModifications.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.modifications.agentModifications.splice(D,1),this.propertyEmitter.next(this.substance.modifications.agentModifications))}}]),q}(s.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(_.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},33662:function(Ce,E,n){"use strict";n.d(E,{f:function(){return I}});var S=n(39117),t=n(1884),e=n(42827),c=n(90587),u=n(86613),o=n(84577),_=n(36362),s=n(44770),h=n(91434),b=n(1130),T=n(43365);function y(L,j){if(1&L&&(u.TgZ(0,"mat-option",8),u._uU(1),u.qZA()),2&L){var le=j.$implicit;u.Q6J("value",le.value),u.xp6(1),u.hij(" ",le.display," ")}}function Y(L,j){if(1&L&&(u.TgZ(0,"mat-option",8),u._uU(1),u.qZA()),2&L){var le=u.oxw(2);u.s9C("value",le.privateSubstanceAmount.type),u.xp6(1),u.hij("",le.privateSubstanceAmount.type," (not in CV)")}}function q(L,j){if(1&L){var le=u.EpF();u.TgZ(0,"div",27),u.TgZ(1,"input",28),u.NdJ("focusout",function(W){return u.CHM(le),u.oxw(2).updateType(W.target)}),u.qZA(),u.qZA()}}function B(L,j){if(1&L&&(u.TgZ(0,"mat-option",8),u._uU(1),u.qZA()),2&L){var le=j.$implicit;u.Q6J("value",le.value),u.xp6(1),u.hij(" ",le.display," ")}}function k(L,j){if(1&L&&(u.TgZ(0,"mat-option",8),u._uU(1),u.qZA()),2&L){var le=u.oxw(2);u.s9C("value",le.privateSubstanceAmount.units),u.xp6(1),u.hij("",le.privateSubstanceAmount.units," (not in CV)")}}function D(L,j){if(1&L){var le=u.EpF();u.TgZ(0,"div",27),u.TgZ(1,"input",28),u.NdJ("focusout",function(W){return u.CHM(le),u.oxw(2).updateUnits(W.target)}),u.qZA(),u.qZA()}}function N(L,j){if(1&L&&(u.TgZ(0,"form",3),u.TgZ(1,"div",4),u.TgZ(2,"div",5),u.TgZ(3,"div"),u.TgZ(4,"mat-form-field",6),u.TgZ(5,"mat-label"),u._uU(6,"Type *"),u.qZA(),u.TgZ(7,"mat-select",7),u.TgZ(8,"mat-option",8),u.TgZ(9,"span",9),u._uU(10,"Clear selection"),u.qZA(),u.qZA(),u.YNc(11,y,2,2,"mat-option",10),u.YNc(12,Y,2,2,"mat-option",11),u.TgZ(13,"mat-option",12),u._uU(14,"Other (New Value)"),u.qZA(),u.qZA(),u.qZA(),u.qZA(),u.YNc(15,q,2,0,"div",13),u.qZA(),u.TgZ(16,"mat-form-field",14),u._UZ(17,"input",15),u.qZA(),u.TgZ(18,"mat-form-field",16),u._UZ(19,"input",17),u.qZA(),u.TgZ(20,"mat-form-field",18),u._UZ(21,"input",19),u.qZA(),u.qZA(),u.TgZ(22,"div",4),u.TgZ(23,"mat-form-field",20),u._UZ(24,"input",21),u.qZA(),u.TgZ(25,"mat-form-field",22),u._UZ(26,"input",23),u.qZA(),u.TgZ(27,"div",5),u.TgZ(28,"div"),u.TgZ(29,"mat-form-field",24),u.TgZ(30,"mat-label"),u._uU(31,"Units"),u.qZA(),u.TgZ(32,"mat-select",7),u.TgZ(33,"mat-option",8),u.TgZ(34,"span",9),u._uU(35,"Clear selection"),u.qZA(),u.qZA(),u.YNc(36,B,2,2,"mat-option",10),u.YNc(37,k,2,2,"mat-option",11),u.TgZ(38,"mat-option",12),u._uU(39,"Other (New Value)"),u.qZA(),u.qZA(),u.qZA(),u.qZA(),u.YNc(40,D,2,0,"div",13),u.qZA(),u.TgZ(41,"mat-form-field",25),u._UZ(42,"input",26),u.qZA(),u.qZA(),u.qZA()),2&L){var le=u.oxw();u.xp6(7),u.Q6J("formControl",le.typeControl),u.xp6(1),u.Q6J("value",null),u.xp6(3),u.Q6J("ngForOf",le.amountTypeList),u.xp6(1),u.Q6J("ngIf",le.privateSubstanceAmount.type&&!le.inCV(le.amountTypeList,le.privateSubstanceAmount.type)&&""!==le.privateSubstanceAmount.type),u.xp6(3),u.Q6J("ngIf","other"===le.privateSubstanceAmount.type),u.xp6(2),u.Q6J("formControl",le.averageControl),u.xp6(2),u.Q6J("formControl",le.lowControl),u.xp6(2),u.Q6J("formControl",le.highControl),u.xp6(3),u.Q6J("formControl",le.lowLimitControl),u.xp6(2),u.Q6J("formControl",le.highLimitControl),u.xp6(6),u.Q6J("formControl",le.unitsControl),u.xp6(1),u.Q6J("value",null),u.xp6(3),u.Q6J("ngForOf",le.amountUnitList),u.xp6(1),u.Q6J("ngIf",le.privateSubstanceAmount.units&&!le.inCV(le.amountUnitList,le.privateSubstanceAmount.units)&&""!==le.privateSubstanceAmount.units),u.xp6(3),u.Q6J("ngIf","other"===le.privateSubstanceAmount.units),u.xp6(2),u.Q6J("formControl",le.nonNumericValueControl)}}var I=function(){var L=function(){function j(le){(0,S.Z)(this,j),this.cvService=le,this.amountTypeList=[],this.amountUnitList=[],this.typeControl=new c.NI("",c.kI.required),this.averageControl=new c.NI(""),this.lowControl=new c.NI(""),this.highControl=new c.NI(""),this.lowLimitControl=new c.NI(""),this.highLimitControl=new c.NI(""),this.unitsControl=new c.NI(""),this.nonNumericValueControl=new c.NI("")}return(0,t.Z)(j,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"substanceAmount",get:function(){return this.privateSubstanceAmount},set:function(re){var W=this;null!=re&&(this.privateSubstanceAmount=re,this.typeControl.setValue(this.privateSubstanceAmount.type),this.typeControl.valueChanges.subscribe(function($){W.privateSubstanceAmount.type=$}),this.averageControl.setValue(this.privateSubstanceAmount.average),this.averageControl.valueChanges.subscribe(function($){null===$||1===$.length&&$.match(/[a-z]/i)?W.averageControl.setValue(""):$.match(/^[-E0-9,.]*$/)||W.averageControl.setValue(""),W.privateSubstanceAmount.average=$}),this.lowControl.setValue(this.privateSubstanceAmount.low),this.lowControl.valueChanges.subscribe(function($){null===$||1===$.length&&$.match(/[a-z]/i)?W.lowControl.setValue(""):$.match(/^[-E0-9,.]*$/)||W.lowControl.setValue(""),W.privateSubstanceAmount.low=$}),this.highControl.setValue(this.privateSubstanceAmount.high),this.highControl.valueChanges.subscribe(function($){null===$||1===$.length&&$.match(/[a-z]/i)?W.highControl.setValue(""):$.match(/^[-E0-9,.]*$/)||W.highControl.setValue(""),W.privateSubstanceAmount.high=$}),this.lowLimitControl.setValue(this.privateSubstanceAmount.lowLimit),this.lowLimitControl.valueChanges.subscribe(function($){null===$||1===$.length&&$.match(/[a-z]/i)?W.lowLimitControl.setValue(""):$.match(/^[-E0-9,.]*$/)||W.lowLimitControl.setValue(""),W.privateSubstanceAmount.lowLimit=$}),this.highLimitControl.setValue(this.privateSubstanceAmount.highLimit),this.highLimitControl.valueChanges.subscribe(function($){null===$||1===$.length&&$.match(/[a-z]/i)?W.highLimitControl.setValue(""):$.match(/^[-E0-9,.]*$/)||W.highLimitControl.setValue(""),W.privateSubstanceAmount.highLimit=$}),this.unitsControl.setValue(this.privateSubstanceAmount.units),this.unitsControl.valueChanges.subscribe(function($){W.privateSubstanceAmount.units=$}),this.nonNumericValueControl.setValue(this.privateSubstanceAmount.nonNumericValue),this.nonNumericValueControl.valueChanges.subscribe(function($){W.privateSubstanceAmount.nonNumericValue=$}))}},{key:"updateAccess",value:function(re){this.privateSubstanceAmount.access=re,this.substanceAmount.access=re}},{key:"updateType",value:function(re){var W=this;setTimeout(function(){W.typeControl.setValue(re.value)}),this.privateSubstanceAmount.type=re.value}},{key:"updateUnits",value:function(re){var W=this;setTimeout(function(){W.unitsControl.setValue(re.value)}),this.privateSubstanceAmount.units=re.value}},{key:"getVocabularies",value:function(){var re=this;this.cvService.getDomainVocabulary("AMOUNT_TYPE","AMOUNT_UNIT").subscribe(function(W){re.amountTypeList=W.AMOUNT_TYPE.list,re.amountUnitList=W.AMOUNT_UNIT.list})}},{key:"inCV",value:function(re,W){return re.some(function($){return W===$.value})}}]),j}();return L.\u0275fac=function(le){return new(le||L)(u.Y36(e.I))},L.\u0275cmp=u.Xpm({type:L,selectors:[["app-amount-form"]],inputs:{substanceAmount:"substanceAmount"},decls:3,vars:2,consts:[[1,"access"],[1,"right",3,"access","accessOut"],["class","amount-form",4,"ngIf"],[1,"amount-form"],[1,"form-row"],[1,"other-container"],[1,"amount-type"],[3,"formControl"],[3,"value"],[1,"deselect"],[3,"value",4,"ngFor","ngForOf"],[3,"value",4,"ngIf"],["value","other"],["class","custom",4,"ngIf"],[1,"amount-average"],["type","text","matInput","","placeholder","Average",3,"formControl"],[1,"low"],["type","text","matInput","","placeholder","Low",3,"formControl"],[1,"high"],["type","text","matInput","","placeholder","High",3,"formControl"],[1,"low-limit"],["type","text","matInput","","placeholder","Low Limit",3,"formControl"],[1,"high-limit"],["type","text","matInput","","placeholder","High Limit",3,"formControl"],[1,"amount-units"],[1,"non-numeric-value"],["matInput","","placeholder","Non-numeric Value",3,"formControl"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"]],template:function(le,re){1&le&&(u.TgZ(0,"div",0),u.TgZ(1,"app-access-manager",1),u.NdJ("accessOut",function($){return re.updateAccess($)}),u.qZA(),u.qZA(),u.YNc(2,N,43,16,"form",2)),2&le&&(u.xp6(1),u.Q6J("access",re.substanceAmount.access),u.xp6(1),u.Q6J("ngIf",re.substanceAmount))},directives:[o.h,_.O5,c._Y,c.JL,c.F,s.KE,s.hX,h.gD,c.JJ,c.oH,b.ey,_.sg,T.Nt,c.Fj],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .amount-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount-average[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low-limit[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high-limit[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .amount-units[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .non-numeric-value[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .amount-type[_ngcontent-%COMP%]{width:125px}.form-row[_ngcontent-%COMP%] .amount-units[_ngcontent-%COMP%]{width:110px}.form-row[_ngcontent-%COMP%] .amount-average[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .low-limit[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .high-limit[_ngcontent-%COMP%]{width:70px}.form-row[_ngcontent-%COMP%] .non-numeric-value[_ngcontent-%COMP%]{width:90px}.form-row[_ngcontent-%COMP%] .jurisdiction[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.risen[_ngcontent-%COMP%]{margin-top:-15px}.deselect[_ngcontent-%COMP%]{color:var(--text-color)}.other-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.custom[_ngcontent-%COMP%]{border-bottom:1px solid var(--box-shadow-color-4)}.amount-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.right[_ngcontent-%COMP%]{float:right}"]}),L}()},14900:function(Ce,E,n){"use strict";n.d(E,{n:function(){return T}});var S=n(39117),t=n(1884),e=n(86613),c=n(36362);function u(y,Y){if(1&y&&(e.TgZ(0,"div",5),e.TgZ(1,"b",6),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.qZA()),2&y){var q=e.oxw(2);e.xp6(3),e.hij(" ",q.source.createdBy," ")}}function o(y,Y){if(1&y&&(e.TgZ(0,"div",7),e.TgZ(1,"b",6),e._uU(2,"on"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.qZA()),2&y){var q=e.oxw(2);e.xp6(3),e.hij(" ",e.xi3(4,1,q.source.created,"medium"),"")}}function _(y,Y){1&y&&(e.TgZ(0,"div",8),e.TgZ(1,"b"),e._uU(2,"-"),e.qZA(),e.qZA())}function s(y,Y){if(1&y&&(e.TgZ(0,"div",5),e.TgZ(1,"b",6),e._uU(2,"Last Edited By"),e.qZA(),e._uU(3),e.qZA()),2&y){var q=e.oxw(2);e.xp6(3),e.hij(": ",q.source.lastEditedBy," ")}}function h(y,Y){if(1&y&&(e.TgZ(0,"div",7),e.TgZ(1,"b",6),e._uU(2,"on"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.qZA()),2&y){var q=e.oxw(2);e.xp6(3),e.hij(" ",e.xi3(4,1,q.source.lastEdited,"medium"),"")}}function b(y,Y){if(1&y&&(e.TgZ(0,"div",1),e.YNc(1,u,4,1,"div",2),e.YNc(2,o,5,4,"div",3),e.YNc(3,_,3,0,"div",4),e.YNc(4,s,4,1,"div",2),e.YNc(5,h,5,4,"div",3),e.qZA()),2&y){var q=e.oxw();e.xp6(1),e.Q6J("ngIf",q.source.createdBy),e.xp6(1),e.Q6J("ngIf",q.source.created),e.xp6(1),e.Q6J("ngIf",q.source.created&&q.source.lastEdited),e.xp6(1),e.Q6J("ngIf",q.source.lastEditedBy),e.xp6(1),e.Q6J("ngIf",q.source.lastEdited)}}var T=function(){var y=function(){function Y(){(0,S.Z)(this,Y)}return(0,t.Z)(Y,[{key:"ngOnInit",value:function(){}}]),Y}();return y.\u0275fac=function(q){return new(q||y)},y.\u0275cmp=e.Xpm({type:y,selectors:[["app-audit-info"]],inputs:{source:"source"},decls:1,vars:1,consts:[["class","audit-container",4,"ngIf"],[1,"audit-container"],["class","name",4,"ngIf"],["class","date",4,"ngIf"],["class","spacer",4,"ngIf"],[1,"name"],[1,"static"],[1,"date"],[1,"spacer"]],template:function(q,B){1&q&&e.YNc(0,b,6,5,"div",0),2&q&&e.Q6J("ngIf",B.source)},directives:[c.O5],pipes:[c.uU],styles:[".audit-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;padding-left:15px;font-family:Roboto,Helvetica Neue,sans-serif;padding-top:10px;padding-bottom:2px}.spacer[_ngcontent-%COMP%]{padding-left:5px;padding-right:10px}.static[_ngcontent-%COMP%]{padding-right:3px}.name[_ngcontent-%COMP%], .date[_ngcontent-%COMP%]{padding-right:5px}"]}),y}()},79550:function(Ce,E,n){"use strict";n.d(E,{u:function(){return s}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(79223),o=n(90587),_=n(93666),s=function(h){(0,e.Z)(T,h);var b=(0,c.Z)(T);function T(y){var Y;return(0,S.Z)(this,T),(Y=b.call(this)).gaService=y,Y.page=0,Y.pageSize=5,Y.searchControl=new o.NI,Y}return(0,t.Z)(T,[{key:"pageChange",value:function(Y,q){var B,k;null!=Y&&(this.pageSize!==Y.pageSize?(B="select:page-size",k=Y.pageSize):this.page!==Y.pageIndex&&(B="icon-button:page-number",k=Y.pageIndex+1),this.gaService.sendEvent(q,B,"pager",k),this.page=Y.pageIndex,this.pageSize=Y.pageSize),this.paged=[];for(var D=this.page*this.pageSize,N=D;N2&&void 0!==arguments[2]?arguments[2]:"substance card";null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){B.gaService.sendEvent(k,"search",!_.N.isAnalyticsPrivate&&Y||"input value"),B.filtered=[],q.forEach(function(N){JSON.stringify(N).toLowerCase().indexOf(Y.toLowerCase())>-1&&B.filtered.push(N)}),clearTimeout(B.searchTimer),B.searchTimer=null,B.page=0,B.pageChange()},700)}}]),T}(u.o)},79223:function(Ce,E,n){"use strict";n.d(E,{o:function(){return c}});var S=n(1884),t=n(39117),e=n(86613),c=function(){var u=(0,S.Z)(function o(){(0,t.Z)(this,o),this.menuLabelUpdate=new e.vpe,this.hiddenStateUpdate=new e.vpe,this.canAddItemUpdate=new e.vpe,this.componentDestroyed=new e.vpe});return u.\u0275fac=function(_){return new(_||u)},u.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac}),u}()},68785:function(Ce,E,n){"use strict";n.d(E,{E:function(){return c}});var S=n(39117),t=n(1884),e=n(26067),c=function(){function u(o){var _=this;(0,S.Z)(this,u),this.substanceFormService=o,this.subscriptions=[],this.propertyEmitter=new e.t,this.substanceFormService.substanceFormAction.subscribe(function(s){setTimeout(function(){"load"===s?_.initSubtanceForm():_.unloadSubstance()})})}return(0,t.Z)(u,[{key:"initSubtanceForm",value:function(){}},{key:"unloadSubstance",value:function(){this.subscriptions.forEach(function(_){_.unsubscribe()}),this.subscriptions=[],this.propertyEmitter.complete(),this.propertyEmitter=new e.t}}]),u}()},66794:function(Ce,E,n){"use strict";n.d(E,{y:function(){return _}});var S=n(39117),t=n(1884),e=n(88951),c=n(83336),u=n(86613),o=n(98002),_=function(){var s=function(){function h(b,T){(0,S.Z)(this,h),this.router=b,this.authService=T}return(0,t.Z)(h,[{key:"canActivate",value:function(T,y){var Y=this;return new c.y(function(q){Y.authService.getAuth().subscribe(function(B){B?Y.authService.hasAnyRolesAsync("Updater","SuperUpdater").subscribe(function(D){D?(q.next(!0),q.complete()):(q.next(Y.router.parseUrl("/browse-substance")),q.complete())}):(q.next(Y.router.createUrlTree(["/login"],{queryParams:{path:y.url}})),q.complete())})})}}]),h}();return s.\u0275fac=function(b){return new(b||s)(u.LFG(o.F0),u.LFG(e.e))},s.\u0275prov=u.Yz7({token:s,factory:s.\u0275fac}),s}()},44646:function(Ce,E,n){"use strict";n.d(E,{R:function(){return _}});var S=n(39117),t=n(1884),e=n(88951),c=n(83336),u=n(86613),o=n(98002),_=function(){var s=function(){function h(b,T){(0,S.Z)(this,h),this.router=b,this.authService=T}return(0,t.Z)(h,[{key:"canActivate",value:function(T,y){var Y=this;return new c.y(function(q){Y.authService.getAuth().subscribe(function(B){B?Y.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry").subscribe(function(D){D?(q.next(!0),q.complete()):(q.next(Y.router.parseUrl("/browse-substance")),q.complete())}):(q.next(Y.router.createUrlTree(["/login"],{queryParams:{path:y.url}})),q.complete())})})}}]),h}();return s.\u0275fac=function(b){return new(b||s)(u.LFG(o.F0),u.LFG(e.e))},s.\u0275prov=u.Yz7({token:s,factory:s.\u0275fac}),s}()},66452:function(Ce,E,n){"use strict";n.d(E,{W:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(33567),s=n(68785),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,null==k.substance.codes&&(k.substance.codes=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.codes)});this.subscriptions.push(D)}},{key:"substanceCodes",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceCode",value:function(){this.substance.codes.unshift({references:[],access:[]}),this.propertyEmitter.next(this.substance.codes)}},{key:"deleteSubstanceCode",value:function(k){var D=this.substance.codes.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.codes.splice(D,1),this.propertyEmitter.next(this.substance.codes))}}]),q}(s.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(_.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},26984:function(Ce,E,n){"use strict";n.d(E,{D:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(33567),s=n(68785),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,"specifiedSubstanceG1"===k.substance.substanceClass?(null==k.substance.specifiedSubstance.constituents&&(k.substance.specifiedSubstance.constituents=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.specifiedSubstance.constituents)):"specifiedSubstanceG2"===k.substance.substanceClass&&(null==k.substance.specifiedSubstanceG2.constituents&&(k.substance.specifiedSubstanceG2.constituents=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.specifiedSubstanceG2.constituents))});this.subscriptions.push(D)}},{key:"substanceConstituents",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceConstituent",value:function(){var k={references:[],access:["protected"]};"specifiedSubstanceG1"===this.substance.substanceClass?(this.substance.specifiedSubstance.constituents.unshift(k),this.propertyEmitter.next(this.substance.specifiedSubstance.constituents)):"specifiedSubstanceG2"===this.substance.substanceClass&&(this.substance.specifiedSubstanceG2.constituents.unshift(k),this.propertyEmitter.next(this.substance.specifiedSubstanceG2.constituents))}},{key:"deleteSubstanceConstituent",value:function(k){var D=this.substance.specifiedSubstance.constituents.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.specifiedSubstance.constituents.splice(D,1),this.propertyEmitter.next(this.substance.specifiedSubstance.constituents))}}]),q}(s.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(_.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},12142:function(Ce,E,n){"use strict";n.d(E,{i:function(){return B}});var S=n(39117),t=n(1884),e=n(95758),c=n(18291),u=n(63169),o=n(86613),_=n(36362),s=n(44770),h=n(43365),b=n(90587),T=n(87317);function y(k,D){1&k&&(o.TgZ(0,"div",3),o._uU(1,"true "),o._UZ(2,"app-fragment-wizard"),o.qZA())}function Y(k,D){if(1&k&&(o.TgZ(0,"div",18),o.TgZ(1,"span"),o._uU(2),o.qZA(),o._uU(3),o.qZA()),2&k){var N=D.$implicit;o.xp6(1),o.Gre("",N.messageType," type"),o.xp6(1),o.hij("",N.messageType," :"),o.xp6(1),o.Oqu(N.message)}}function q(k,D){if(1&k&&(o.TgZ(0,"div",16),o.TgZ(1,"div"),o.TgZ(2,"b"),o._uU(3,"CV not valid:"),o.qZA(),o.qZA(),o.YNc(4,Y,4,5,"div",17),o.qZA()),2&k){var N=o.oxw();o.xp6(4),o.Q6J("ngForOf",N.validationMessages)}}var B=function(){var k=function(){function D(N,I,L,j){(0,S.Z)(this,D),this.cvService=N,this.utilsService=I,this.dialogRef=L,this.data=j,this.term={value:"",display:""},this.validationMessages=[],this.vocabulary=j.vocabulary,this.term.value=j.term,this.term.display=j.term}return(0,t.Z)(D,[{key:"ngOnInit",value:function(){}},{key:"submit",value:function(){var I=this,L=!1;this.message="",this.validationMessages=[],this.vocabulary.terms.forEach(function(j){j.value===I.term.value&&(L=!0)}),L?(this.message="Term already exists",setTimeout(function(){I.message=""},3e3)):(this.vocabulary.terms.push(this.term),this.cvService.validateVocab(this.vocabulary).subscribe(function(j){j&&j.valid?I.cvService.addVocabTerm(I.vocabulary).subscribe(function(le){le.terms&&le.terms.length===I.vocabulary.terms.length&&(I.message="Term "+I.term.value+" Added to "+I.vocabulary.domain,setTimeout(function(){I.dialogRef.close(I.term)},3e3))},function(le){console.log(le),I.vocabulary.terms.pop();var re="Server Error";le.error&&le.error.message?re+=" - "+le.error.message:le.message&&(re+=" - "+le.message),I.message=re}):(j.validationMessages&&j.validationMessages.forEach(function(le){I.validationMessages.push(le)}),I.vocabulary.terms.pop())},function(j){console.log(j),I.vocabulary.terms.pop();var le="Validation Error";j.error&&j.error.message?le+=" - "+j.error.message:j.message&&(le+=" - "+j.message),I.message=le}))}},{key:"updateStructure",value:function(I){this.term=I}},{key:"cancel",value:function(){this.dialogRef.close()}}]),D}();return k.\u0275fac=function(N){return new(N||k)(o.Y36(c.I),o.Y36(u.FW),o.Y36(e.so),o.Y36(e.WI))},k.\u0275cmp=o.Xpm({type:k,selectors:[["app-cv-dialog"]],decls:23,vars:8,consts:[["mat-dialog-title",""],["mat-dialog-content",""],["class","form-row",4,"ngIf"],[1,"form-row"],[1,"value"],["matInput","","placeholder","Value","required","","name","value",3,"ngModel","ngModelChange"],[1,"display"],["matInput","","placeholder","display","required","","name","display",3,"ngModel","ngModelChange"],[1,"description"],["matInput","","placeholder","description","required","","name","description",3,"ngModel","ngModelChange"],[1,"message-field"],["class","validation",4,"ngIf"],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"],[1,"validation"],["class","message",4,"ngFor","ngForOf"],[1,"message"]],template:function(N,I){1&N&&(o.TgZ(0,"h1",0),o._uU(1),o.qZA(),o.TgZ(2,"div",1),o.TgZ(3,"div"),o.YNc(4,y,3,0,"div",2),o.TgZ(5,"div",3),o.TgZ(6,"mat-form-field",4),o.TgZ(7,"input",5),o.NdJ("ngModelChange",function(j){return I.term.value=j}),o.qZA(),o.qZA(),o.TgZ(8,"mat-form-field",6),o.TgZ(9,"input",7),o.NdJ("ngModelChange",function(j){return I.term.display=j}),o.qZA(),o.qZA(),o.TgZ(10,"mat-form-field",8),o.TgZ(11,"input",9),o.NdJ("ngModelChange",function(j){return I.term.description=j}),o.qZA(),o.qZA(),o.qZA(),o._UZ(12,"br"),o._UZ(13,"br"),o.TgZ(14,"div",10),o._uU(15),o.qZA(),o.YNc(16,q,5,1,"div",11),o.TgZ(17,"div",12),o._UZ(18,"span",13),o.TgZ(19,"button",14),o.NdJ("click",function(){return I.cancel()}),o._uU(20,"Cancel"),o.qZA(),o.TgZ(21,"button",15),o.NdJ("click",function(){return I.submit()}),o._uU(22," Save "),o.qZA(),o.qZA(),o.qZA(),o.qZA()),2&N&&(o.xp6(1),o.hij("Add Term to CV - ",I.vocabulary.domain,""),o.xp6(3),o.Q6J("ngIf","NUCLEIC_ACID_LINKAGE"===I.vocabulary.domain||"NUCLEIC_ACID_SUGAR"===I.vocabulary.domain),o.xp6(3),o.Q6J("ngModel",I.term.value),o.xp6(2),o.Q6J("ngModel",I.term.display),o.xp6(2),o.Q6J("ngModel",I.term.description),o.xp6(4),o.Oqu(I.message),o.xp6(1),o.Q6J("ngIf",I.validationMessages.length>0),o.xp6(5),o.Q6J("disabled",!I.term.description||""===I.term.value))},directives:[e.uh,e.xY,_.O5,s.KE,h.Nt,b.Fj,b.Q7,b.JJ,b.On,_.sg,T.lW],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .display[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.value[_ngcontent-%COMP%], .display[_ngcontent-%COMP%]{max-width:23%}.description[_ngcontent-%COMP%]{max-width:50%}.validation[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%}.message[_ngcontent-%COMP%]{padding-top:5px;padding-left:15px}.ERROR[_ngcontent-%COMP%]{background-color:var(--regular-red-color);color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color);padding:4px 5px;margin-right:5px;border-radius:5px}.WARNING[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color);padding:4px 5px;margin-right:5px;border-radius:5px}.INFO[_ngcontent-%COMP%]{color:var(--regular-black-color);background-color:var(--regular-lightgray-color);padding:4px 5px;margin-right:5px;border-radius:5px}"]}),k}()},16667:function(Ce,E,n){"use strict";n.d(E,{S:function(){return $}});var S=n(39117),t=n(1884),e=n(86613),c=n(18291),u=n(63169),o=n(12142),_=n(78573),s=n(44250),h=n(79356),b=n(95758),T=n(54244),y=n(44770),Y=n(36362),q=n(91434),B=n(90587),k=n(1130),D=n(87317),N=n(40089),I=n(43365);function L(be,z){1&be&&(e.TgZ(0,"mat-option",8),e.TgZ(1,"span",9),e._uU(2,"Clear selection"),e.qZA(),e.qZA()),2&be&&e.Q6J("value",null)}function j(be,z){if(1&be&&(e.TgZ(0,"mat-option",8),e._uU(1),e.qZA()),2&be){var d=z.$implicit;e.Q6J("value",d.value),e.xp6(1),e.hij(" ",d.display," ")}}function le(be,z){if(1&be&&(e.TgZ(0,"mat-option",8),e._uU(1),e.qZA()),2&be){var d=e.oxw();e.s9C("value",d.privateMod),e.xp6(1),e.hij("",d.privateMod," (not in CV)")}}function re(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"a",10),e.NdJ("click",function(){return e.CHM(d),e.oxw().addToVocab()}),e._uU(1," add "),e.qZA()}}function W(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div",11),e.TgZ(1,"input",12),e.NdJ("focusout",function(J){return e.CHM(d),e.oxw().updateOrigin(J.target)}),e.qZA(),e.qZA()}}var $=function(){var be=function(){function z(d,Q,J,te,K,G){(0,S.Z)(this,z),this.cvService=d,this.dialog=Q,this.utilsService=J,this.overlayContainerService=te,this.dictionaryService=K,this.authService=G,this.valueChange=new e.vpe,this.vocabName="",this.subscriptions=[]}return(0,t.Z)(z,[{key:"ngOnInit",value:function(){var Q=this;if(this.vocabulary)this.vocabulary=this.addOtherOption(this.vocabulary,this.privateMod);else if(this.key){this.dictionary=this.dictionaryService.getDictionaryRow(this.key),this.title||(this.title=this.dictionary.fieldName),this.vocabName=this.dictionary.CVDomain;var J=this.cvService.getDomainVocabulary(this.vocabName).subscribe(function(K){Q.vocabulary=K[Q.vocabName].list});this.subscriptions.push(J)}else{this.vocabulary=[],this.vocabName=this.domain;var te=this.cvService.getDomainVocabulary(this.vocabName).subscribe(function(K){Q.vocabulary=K[Q.vocabName].list});this.subscriptions.push(te)}this.overlayContainer=this.overlayContainerService.getContainerElement(),this.isAdmin=this.authService.hasRoles("admin")}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Q){Q.unsubscribe()})}},{key:"model",get:function(){return this.privateMod},set:function(Q){this.privateMod=Q}},{key:"select",value:function(Q){this.privateMod=Q,this.valueChange.emit(this.privateMod)}},{key:"addOtherOption",value:function(Q,J){return Q&&Q.some(function(te){return J===te.value}),Q}},{key:"inCV",value:function(Q,J){return!Q||Q.some(function(te){return J===te.value})}},{key:"addToVocab",value:function(){var Q=this,J=this.cvService.fetchFullVocabulary(this.vocabName).subscribe(function(te){te.content&&te.content.length>0&&Q.openDialog(te.content[0],Q.privateMod)});this.subscriptions.push(J)}},{key:"updateOrigin",value:function(Q){Q&&""!==Q.value&&(this.privateMod=Q.value,this.valueChange.emit(this.privateMod))}},{key:"openDialog",value:function(Q,J){var te=this,K=window.pageYOffset;if(window.scroll({top:0,left:0,behavior:"auto"}),"NUCLEIC_ACID_LINKAGE"===Q.domain||"NUCLEIC_ACID_SUGAR"===Q.domain){this.overlayContainer.style.zIndex="1005";var G=this.dialog.open(h._,{data:{vocabulary:Q,term:J},width:"1040px",height:"85%"});this.overlayContainer.style.zIndex="1005";var ce=G.afterClosed().subscribe(function(ve){window.scroll({top:K,left:0,behavior:"auto"}),te.overlayContainer.style.zIndex=null,ve&&(te.privateMod=ve.display,te.vocabulary.push(ve),te.valueChange.emit(te.privateMod))});this.subscriptions.push(ce)}else{var Me=this.dialog.open(o.i,{data:{vocabulary:Q,term:J},width:"1040px"}).afterClosed().subscribe(function(ve){window.scroll({top:K,left:0,behavior:"auto"}),ve&&(te.privateMod=ve.display,te.vocabulary.push(ve),te.valueChange.emit(te.privateMod))});this.subscriptions.push(Me)}}}]),z}();return be.\u0275fac=function(d){return new(d||be)(e.Y36(c.I),e.Y36(b.uw),e.Y36(u.FW),e.Y36(T.Xj),e.Y36(_.e),e.Y36(s.e))},be.\u0275cmp=e.Xpm({type:be,selectors:[["app-cv-input"]],inputs:{vocabulary:"vocabulary",title:"title",domain:"domain",key:"key",required:"required",disable:"disable",model:"model"},outputs:{valueChange:"valueChange"},decls:12,vars:10,consts:[[1,"flex-row"],[1,"cv-field",3,"ngClass"],["name","term",3,"ngModel","disabled","ngModelChange"],[3,"value",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],["value","other"],["class","add-term","mat-icon-button","","matTooltip","add term to Controlled Vocabulary",3,"click",4,"ngIf"],["class","custom",4,"ngIf"],[3,"value"],[1,"deselect"],["mat-icon-button","","matTooltip","add term to Controlled Vocabulary",1,"add-term",3,"click"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"]],template:function(d,Q){1&d&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-form-field",1),e.TgZ(2,"mat-label"),e._uU(3),e.qZA(),e.TgZ(4,"mat-select",2),e.NdJ("ngModelChange",function(te){return Q.privateMod=te})("ngModelChange",function(te){return Q.select(te)}),e.YNc(5,L,3,1,"mat-option",3),e.YNc(6,j,2,2,"mat-option",4),e.YNc(7,le,2,2,"mat-option",3),e.TgZ(8,"mat-option",5),e._uU(9,"Other (New Value)"),e.qZA(),e.qZA(),e.qZA(),e.YNc(10,re,2,0,"a",6),e.qZA(),e.YNc(11,W,2,0,"div",7)),2&d&&(e.xp6(1),e.Q6J("ngClass","other"===Q.privateMod?"risen":""),e.xp6(2),e.AsE("",Q.title," ",Q.required?" *":"",""),e.xp6(1),e.Q6J("ngModel",Q.privateMod)("disabled",Q.disable),e.xp6(1),e.Q6J("ngIf",Q.privateMod),e.xp6(1),e.Q6J("ngForOf",Q.vocabulary),e.xp6(1),e.Q6J("ngIf",Q.privateMod&&!Q.inCV(Q.vocabulary,Q.privateMod)&&""!==Q.privateMod),e.xp6(3),e.Q6J("ngIf",Q.privateMod&&!Q.inCV(Q.vocabulary,Q.privateMod)&&"other"!==Q.privateMod&&Q.isAdmin),e.xp6(1),e.Q6J("ngIf","other"===Q.privateMod))},directives:[y.KE,Y.mk,y.hX,q.gD,B.JJ,B.On,Y.O5,k.ey,Y.sg,D.zs,N.gM,I.Nt],styles:[".risen[_ngcontent-%COMP%]{margin-top:-15px}.custom[_ngcontent-%COMP%]{padding-bottom:10px;padding-top:10px;border-bottom:1px solid var(--box-shadow-color-6)}.deselect[_ngcontent-%COMP%]{color:var(--text-color)}.add-term[_ngcontent-%COMP%]{margin-left:-7px;margin-bottom:-10px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-align:end;align-items:flex-end}.value[_ngcontent-%COMP%], .display[_ngcontent-%COMP%], .description[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.cv-field[_ngcontent-%COMP%]{width:100%}.add-term[_ngcontent-%COMP%]{color:var(--secondary-blue);font-style:italic}"]}),be}()},35354:function(Ce,E,n){"use strict";n.d(E,{n:function(){return T}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(26067),b=n(86613),T=function(){var y=function(Y){(0,u.Z)(B,Y);var q=(0,o.Z)(B);function B(k){var D;return(0,S.Z)(this,B),(D=q.call(this,k)).substanceFormService=k,D.substanceCysteineEmitter=new h.t,D}return(0,t.Z)(B,[{key:"initSubtanceForm",value:function(){var D=this;(0,e.Z)((0,c.Z)(B.prototype),"initSubtanceForm",this).call(this);var N=this.substanceFormService.substance.subscribe(function(I){if(D.substance=I,D.substance.protein){null==D.substance.protein.disulfideLinks&&(D.substance.protein.disulfideLinks=[]),D.substanceFormService.resetState(),D.propertyEmitter.next(D.substance.protein.disulfideLinks);for(var L=[],j=0;j0)for(var re=0;re-1&&(this.substance.protein.disulfideLinks.splice(N,1),this.emitDisulfideLinkUpdate())}},{key:"deleteAllDisulfideLinks",value:function(){this.substance.protein.disulfideLinks=[],this.emitDisulfideLinkUpdate()}},{key:"emitDisulfideLinkUpdate",value:function(){this.substanceFormService.recalculateAllSites("disulfide"),this.propertyEmitter.next(this.substance.protein.disulfideLinks),this.substanceFormService.recalculateCysteine()}},{key:"substanceCysteineSites",get:function(){return this.substanceCysteineEmitter.asObservable()}},{key:"updateCysteine",value:function(D){this.emitDisulfideLinkUpdate()}}]),B}(_.E);return y.\u0275fac=function(q){return new(q||y)(b.LFG(s.B))},y.\u0275prov=b.Yz7({token:y,factory:y.\u0275fac}),y}()},93979:function(Ce,E,n){"use strict";n.d(E,{x:function(){return S}});var S={chemical:["substance-form-definition","substance-form-names","substance-form-structure","substance-form-moieties","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],protein:["substance-form-definition","substance-form-names","substance-form-protein-details","substance-form-subunits","substance-form-other-links","substance-form-disulfide-links","substance-form-glycosylation","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],nucleicAcid:["substance-form-definition","substance-form-names","nucleic-acid-details-form","substance-form-subunits","substance-form-links","substance-form-sugars","substance-form-physical-modifications","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-codes-card","substance-form-relationships","substance-form-properties","substance-form-notes","substance-form-references","substance-form-change-reason"],mixture:["substance-form-definition","substance-form-names","substance-form-mixture-details","substance-form-mixture-components","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],structurallyDiverse:["substance-form-definition","substance-form-names","substance-form-structurally-diverse-source","substance-form-structurally-diverse-organism","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],concept:["substance-form-definition","substance-form-names","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],specifiedSubstanceG1:["substance-form-definition","substance-form-names","substance-form-constituents","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],polymer:["substance-form-definition","substance-form-names","substance-form-polymer-classification","substance-form-monomers","substance-form-structure","substance-form-structural-units","substance-form-agent-modifications-card","substance-form-structural-modifications","substance-form-physical-modifications","substance-form-codes-card","substance-form-relationships","substance-form-notes","substance-form-properties","substance-form-references","substance-form-change-reason"],specifiedSubstanceG2:["substance-form-ssg2-overview","substance-form-names","substance-form-constituents","substance-form-ssg2-manufacturing","substance-form-references"],specifiedSubstanceG3:["substance-form-definition","substance-form-names","substance-form-ssg-parent-substance","substance-form-ssg-definition","substance-form-ssg-grade","substance-form-codes-card","substance-form-notes","substance-form-references"],specifiedSubstanceG4m:["substance-form-ssg-parent-substance","substance-form-ssg4m-process"]}},12671:function(Ce,E,n){"use strict";n.d(E,{w:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(I){k.substance=I,k.substance.protein&&(null==k.substance.protein.glycosylation&&(k.substance.protein.glycosylation={}),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.protein.glycosylation))});this.subscriptions.push(D);var N=this.substanceFormService.glycosylationUpdated().subscribe(function(I){k.propertyEmitter.next(I)});this.subscriptions.push(N)}},{key:"substanceGlycosylation",get:function(){return this.propertyEmitter.asObservable()}},{key:"emitGlycosylationUpdate",value:function(){this.substanceFormService.recalculateAllSites("glycosylation"),this.propertyEmitter.next(this.substance.protein.glycosylation)}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},21109:function(Ce,E,n){"use strict";n.d(E,{e:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(33567),s=n(68785),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(I){k.substance=I,k.substance.nucleicAcid&&(null==k.substance.nucleicAcid.linkages&&(k.substance.nucleicAcid.linkages=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.nucleicAcid.linkages))});this.subscriptions.push(D);var N=this.substanceFormService.linksUpdated().subscribe(function(I){k.propertyEmitter.next(I)});this.subscriptions.push(N)}},{key:"substanceLinks",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceLink",value:function(){this.substance.nucleicAcid.linkages.unshift({sites:[]}),this.propertyEmitter.next(this.substance.nucleicAcid.linkages)}},{key:"deleteSubstanceLink",value:function(k){var D=this.substance.nucleicAcid.linkages.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.nucleicAcid.linkages.splice(D,1),this.propertyEmitter.next(this.substance.nucleicAcid.linkages))}},{key:"emitLinkUpdate",value:function(){this.propertyEmitter.next(this.substance.nucleicAcid.linkages)}}]),q}(s.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(_.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},87625:function(Ce,E,n){"use strict";n.d(E,{b:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,null!=k.substance.mixture&&(null==k.substance.mixture.components&&(k.substance.mixture.components=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.mixture.components))});this.subscriptions.push(D)}},{key:"substanceMixtureComponents",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceMixtureComponent",value:function(){this.substance.mixture.components.unshift({}),this.propertyEmitter.next(this.substance.mixture.components)}},{key:"deleteSubstanceMixtureComponent",value:function(k){var D=this.substance.mixture.components.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.mixture.components.splice(D,1),this.propertyEmitter.next(this.substance.mixture.components))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},21584:function(Ce,E,n){"use strict";n.d(E,{C:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,k.substance.polymer&&(null==k.substance.polymer.monomers&&(k.substance.polymer.monomers=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.polymer.monomers))});this.subscriptions.push(D)}},{key:"substanceMonomers",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceMonomer",value:function(){this.substance.polymer.monomers.unshift({}),this.propertyEmitter.next(this.substance.polymer.monomers)}},{key:"deleteSubstanceMonomer",value:function(k){var D=this.substance.polymer.monomers.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.polymer.monomers.splice(D,1),this.propertyEmitter.next(this.substance.polymer.monomers))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},39756:function(Ce,E,n){"use strict";n.d(E,{w:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(33567),s=n(68785),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"ngOnDestroy",value:function(){}},{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(I){k.substance=I,null==k.substance.names&&(k.substance.names=[]),I.names.sort(function(L,j){return L.displayName?-1:j.displayName?1:L.namej.name?1:0}),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.names)});this.subscriptions.push(D);var N=this.substanceFormService.namesUpdated().subscribe(function(I){k.propertyEmitter.next(I)});this.subscriptions.push(N)}},{key:"substanceNames",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceName",value:function(){this.substance.names.unshift({references:[],access:[]}),this.propertyEmitter.next(this.substance.names)}},{key:"deleteSubstanceName",value:function(k){var D=this.substance.names.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.names.splice(D,1),this.propertyEmitter.next(this.substance.names))}},{key:"standardizeNames",value:function(){for(var k=/[^ -~\t\n\r]/g,D="\u2032;';\u201b;';\u2018;';\u2019;';\u03b1;.ALPHA.;\u03b2;.BETA.;\u03b3;.GAMMA.;\u03b4;.DELTA.;\u03b5;.EPSILON.;\u03b6;.ZETA.;\u03b7;.ETA.;\u03b8;.THETA.;\u03b9;.IOTA.;\u03ba;.KAPPA.;\u03bb;.LAMBDA.;\u03bc;.MU.;\u03bd;.NU.;\u03be;.XI.;\u03bf;.OMICRON.;\u03c0;.PI.;\u03c1;.RHO.;\u03c2;.SIGMA.;\u03c3;.SIGMA.;\u03c4;.TAU.;\u03c5;.UPSILON.;\u03c6;.PHI.;\u03c7;.CHI.;\u03c8;.PSI.;\u03c9;.OMEGA.;\u0391;.ALPHA.;\u0392;.BETA.;\u0393;.GAMMA.;\u0394;.DELTA.;\u0395;.EPSILON.;\u0396;.ZETA.;\u0397;.ETA.;\u0398;.THETA.;\u0399;.IOTA.;\u039a;.KAPPA.;\u039b;.LAMBDA.;\u039c;.MU.;\u039d;.NU.;\u039e;.XI.;\u039f;.OMICRON.;\u03a0;.PI.;\u03a1;.RHO.;\u03a3;.SIGMA.;\u03a4;.TAU.;\u03a5;.UPSILON.;\u03a6;.PHI.;\u03a7;.CHI.;\u03a8;.PSI.;\u03a9;.OMEGA.;\u2192;->;\xb1;+/-;\u2190;<-;\xb2;2;\xb3;3;\xb9;1;\u2070;0;\u2071;1;\u2072;2;\u2073;3;\u2074;4;\u2075;5;\u2076;6;\u2077;7;\u2078;8;\u2079;9;\u207a;+;\u207b;-;\u2080;0;\u2081;1;\u2082;2;\u2083;3;\u2084;4;\u2085;5;\u2086;6;\u2087;7;\u2088;8;\u2089;9;\u208a;+;\u208b;-;-;-;\u058a;-;\u05be;-;\u1400;-;\u1806;-;\u2011;-;\u2012;-;\u2013;-;\u2014;-;\u2015;-;\u2e17;-;\u2e1a;-;\u2e3a;-;\u2e3b;-;\u2e40;-;\u301c;-;\u3030;-;\u30a0;-;\ufe31;-;\ufe32;-;\ufe58;-;\ufe63;-;\uff0d;-;\u10ead;-;\u2010;-;\u2122;-;".split(";"),N={},I=0;I-1&&(this.substance.notes.splice(D,1),this.propertyEmitter.next(this.substance.notes))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},71896:function(Ce,E,n){"use strict";n.d(E,{X:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(I){k.substance=I,k.substance.protein&&(null==k.substance.protein.otherLinks&&(k.substance.protein.otherLinks=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.protein.otherLinks))});this.subscriptions.push(D);var N=this.substanceFormService.otherLinksUpdated().subscribe(function(I){k.propertyEmitter.next(I)});this.subscriptions.push(N)}},{key:"substanceOtherLinks",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceOtherLink",value:function(){this.substance.protein.otherLinks.unshift({references:[],access:[]}),this.propertyEmitter.next(this.substance.protein.otherLinks)}},{key:"deleteSubstanceOtherLink",value:function(k){var D=this.substance.protein.otherLinks.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.protein.otherLinks.splice(D,1),this.propertyEmitter.next(this.substance.protein.otherLinks))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},16830:function(Ce,E,n){"use strict";n.d(E,{q:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,k.substance.modifications||(k.substance.modifications={}),k.substance.modifications.physicalModifications||(k.substance.modifications.physicalModifications=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.modifications.physicalModifications)});this.subscriptions.push(D)}},{key:"substancePhysicalModifications",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstancePhysicalModification",value:function(){this.substance.modifications.physicalModifications.unshift({}),this.propertyEmitter.next(this.substance.modifications.physicalModifications)}},{key:"deleteSubstancePhysicalModification",value:function(k){var D=this.substance.modifications.physicalModifications.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.modifications.physicalModifications.splice(D,1),this.propertyEmitter.next(this.substance.modifications.physicalModifications))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},88194:function(Ce,E,n){"use strict";n.d(E,{D:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,k.substance.polymer&&(null==k.substance.polymer.classification&&(k.substance.polymer.classification={}),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.polymer.classification))});this.subscriptions.push(D)}},{key:"substancePolymerClassification",get:function(){return this.propertyEmitter.asObservable()}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},39233:function(Ce,E,n){"use strict";n.d(E,{S:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,null==k.substance.properties&&(k.substance.properties=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.properties)});this.subscriptions.push(D)}},{key:"substanceProperties",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceProperty",value:function(){this.substance.properties.unshift({value:{},references:[],access:[]}),this.propertyEmitter.next(this.substance.properties)}},{key:"addSubstancePropertyFromFeature",value:function(k){var D="NUCLEIC ACID FEATURE";"protein"===this.substance.substanceClass&&(D="PROTEIN FEATURE"),this.substance.properties.unshift({value:{nonNumericValue:k.siteRange,type:"Site Range"},propertyType:D,name:k.name,references:[],access:[]}),this.substanceFormService.recalculateAllSites("features"),this.propertyEmitter.next(this.substance.properties)}},{key:"deleteSubstanceProperty",value:function(k){var D=this.substance.properties.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.properties.splice(D,1),this.propertyEmitter.next(this.substance.properties))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},56569:function(Ce,E,n){"use strict";n.d(E,{M:function(){return D}});var S=n(39117),t=n(1884),e=n(95758),c=n(86613),u=n(36362),o=n(42827),_=n(44770),s=n(43365),h=n(90587),b=n(91434),T=n(1130),y=n(33662);function Y(N,I){if(1&N&&(c.TgZ(0,"mat-option",10),c._uU(1),c.qZA()),2&N){var L=I.$implicit;c.Q6J("value",L.value),c.xp6(1),c.hij(" ",L.display," ")}}var q=function(){var N=function(){function I(L){(0,S.Z)(this,I),this.cvService=L,this.propertyTypeList=[]}return(0,t.Z)(I,[{key:"ngOnInit",value:function(){this.getVocabularies()}},{key:"parameter",get:function(){return this.privateParameter},set:function(j){this.privateParameter=j}},{key:"getVocabularies",value:function(){var j=this;this.cvService.getDomainVocabulary("PROPERTY_TYPE").subscribe(function(le){j.propertyTypeList=le.PROPERTY_TYPE.list})}},{key:"isValid",get:function(){return null!=this.privateParameter.name&&""!==this.privateParameter.name&&null!=this.privateParameter.type&&""!==this.privateParameter.type}}]),I}();return N.\u0275fac=function(L){return new(L||N)(c.Y36(o.I))},N.\u0275cmp=c.Xpm({type:N,selectors:[["app-property-parameter-form"]],inputs:{parameter:"parameter"},decls:13,vars:4,consts:[[1,"parameter-form-container"],[1,"form-row"],[1,"name"],["matInput","","placeholder","Name","required","","name","name",3,"ngModel","ngModelChange"],[1,"type"],["name","type",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[1,"amount-form-container"],[1,"amount-title"],[3,"substanceAmount"],[3,"value"]],template:function(L,j){1&L&&(c.TgZ(0,"div",0),c.TgZ(1,"div",1),c.TgZ(2,"mat-form-field",2),c.TgZ(3,"input",3),c.NdJ("ngModelChange",function(re){return j.parameter.name=re}),c.qZA(),c.qZA(),c.TgZ(4,"mat-form-field",4),c.TgZ(5,"mat-label"),c._uU(6,"Type"),c.qZA(),c.TgZ(7,"mat-select",5),c.NdJ("ngModelChange",function(re){return j.parameter.type=re}),c.YNc(8,Y,2,2,"mat-option",6),c.qZA(),c.qZA(),c.qZA(),c.TgZ(9,"div",7),c.TgZ(10,"div",8),c._uU(11,"Amount"),c.qZA(),c._UZ(12,"app-amount-form",9),c.qZA(),c.qZA()),2&L&&(c.xp6(3),c.Q6J("ngModel",j.parameter.name),c.xp6(4),c.Q6J("ngModel",j.parameter.type),c.xp6(1),c.Q6J("ngForOf",j.propertyTypeList),c.xp6(4),c.Q6J("substanceAmount",j.parameter.value))},directives:[_.KE,s.Nt,h.Fj,h.Q7,h.JJ,h.On,_.hX,b.gD,u.sg,T.ey,y.f],styles:[".parameter-form-container[_ngcontent-%COMP%]{padding:30px 0 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;margin-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}"]}),N}(),B=n(87317);function k(N,I){if(1&N){var L=c.EpF();c.TgZ(0,"div"),c._UZ(1,"app-property-parameter-form",3,4),c.TgZ(3,"div",5),c._UZ(4,"span",6),c.TgZ(5,"button",7),c.NdJ("click",function(){return c.CHM(L),c.oxw().cancel()}),c._uU(6,"Cancel"),c.qZA(),c.TgZ(7,"button",8),c.NdJ("click",function(){return c.CHM(L),c.oxw().save()}),c._uU(8," Save "),c.qZA(),c.qZA(),c.qZA()}if(2&N){var j=c.MAs(2),le=c.oxw();c.xp6(1),c.Q6J("parameter",le.subsParameter),c.xp6(6),c.Q6J("disabled",!j||!j.isValid)}}var D=function(){var N=function(){function I(L,j){(0,S.Z)(this,I),this.dialogRef=L,this.subsParameter=j,this.isNew=Object.keys(j).length<2}return(0,t.Z)(I,[{key:"ngOnInit",value:function(){}},{key:"save",value:function(){this.dialogRef.close(this.subsParameter)}},{key:"cancel",value:function(){this.dialogRef.close()}}]),I}();return N.\u0275fac=function(L){return new(L||N)(c.Y36(e.so),c.Y36(e.WI))},N.\u0275cmp=c.Xpm({type:N,selectors:[["app-property-parameter-dialog"]],decls:4,vars:2,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[4,"ngIf"],[3,"parameter"],["parameterForm",""],[1,"actions"],[1,"middle-fill"],["mat-button","",3,"click"],["mat-button","",3,"disabled","click"]],template:function(L,j){1&L&&(c.TgZ(0,"h1",0),c._uU(1),c.qZA(),c.TgZ(2,"div",1),c.YNc(3,k,9,2,"div",2),c.qZA()),2&L&&(c.xp6(1),c.hij("",j.isNew?"Add":"Edit"," Parameter"),c.xp6(2),c.Q6J("ngIf",j.subsParameter))},directives:[e.uh,e.xY,u.O5,q,B.lW],styles:[".actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}"]}),N}()},98827:function(Ce,E,n){"use strict";n.d(E,{U:function(){return L}});var S=n(39117),t=n(1884),e=n(32685),c=n(24936),u=n(59295),o=n(86613),_=n(87317),s=n(82796),h=n(65590),b=n(36362),T=n(61534);function y(j,le){if(1&j){var re=o.EpF();o.TgZ(0,"div",4),o.NdJ("click",function(be){return be.stopPropagation()}),o.TgZ(1,"mat-checkbox",8),o.NdJ("change",function(be){o.CHM(re);var z=o.oxw(2);return z.updateAppliedOtion(be,z.domainsWithReferences.definition.domain)}),o._uU(2),o.qZA(),o.qZA()}if(2&j){var W=o.oxw(2);o.xp6(1),o.Q6J("checked",W.domainsWithReferences.definition.domain.checked),o.xp6(1),o.hij(" ",W.domainsWithReferences.definition.subClass," ")}}function Y(j,le){if(1&j){var re=o.EpF();o.TgZ(0,"mat-checkbox",8),o.NdJ("change",function(d){o.CHM(re);var Q=o.oxw().$implicit;return o.oxw(4).updateAppliedOtion(d,Q)}),o._uU(1),o.ALo(2,"slice"),o.qZA()}if(2&j){var W=o.oxw().$implicit,$=o.oxw(2).$implicit,be=o.oxw(2);o.Q6J("checked",W.checked),o.xp6(1),o.hij(" ",W[be.domainsWithReferences[$].displayKey].length>50?o.Dn7(2,2,W[be.domainsWithReferences[$].displayKey],0,50)+"...":W[be.domainsWithReferences[$].displayKey]," ")}}function q(j,le){if(1&j){var re=o.EpF();o.TgZ(0,"mat-checkbox",8),o.NdJ("change",function(be){o.CHM(re);var z=o.oxw().$implicit;return o.oxw(4).updateAppliedOtion(be,z)}),o._uU(1),o.ALo(2,"slice"),o.qZA()}if(2&j){var W=o.oxw().$implicit;o.Q6J("checked",W.checked),o.xp6(1),o.hij(" ",W.relatedSubstance.name.length>40?o.Dn7(2,2,W.relatedSubstance.name,0,40)+"...":W.relatedSubstance.name," ")}}function B(j,le){if(1&j){var re=o.EpF();o.TgZ(0,"mat-checkbox",8),o.NdJ("change",function(be){o.CHM(re);var z=o.oxw().$implicit;return o.oxw(4).updateAppliedOtion(be,z)}),o._uU(1),o.ALo(2,"slice"),o.qZA()}if(2&j){var W=o.oxw().$implicit;o.Q6J("checked",W.checked),o.xp6(1),o.hij(" ",W.substance.name.length>40?o.Dn7(2,2,W.substance.name,0,40)+"...":W.substance.name," ")}}function k(j,le){if(1&j&&(o.TgZ(0,"div",4),o.NdJ("click",function($){return $.stopPropagation()}),o.YNc(1,Y,3,6,"mat-checkbox",12),o.YNc(2,q,3,6,"mat-checkbox",12),o.YNc(3,B,3,6,"mat-checkbox",12),o.qZA()),2&j){var re=o.oxw(2).$implicit;o.xp6(1),o.Q6J("ngIf","relationships"!==re&&"constituents"!==re),o.xp6(1),o.Q6J("ngIf","relationships"===re),o.xp6(1),o.Q6J("ngIf","constituents"===re)}}function D(j,le){if(1&j){var re=o.EpF();o.TgZ(0,"div"),o.TgZ(1,"button",9),o._uU(2),o.qZA(),o.TgZ(3,"mat-menu",null,10),o.TgZ(5,"button",4),o.NdJ("click",function(){o.CHM(re);var d=o.oxw().$implicit;return o.oxw(2).applyToAllDomain(d)}),o.TgZ(6,"span"),o._uU(7),o.qZA(),o.qZA(),o.TgZ(8,"button",4),o.NdJ("click",function(){o.CHM(re);var d=o.oxw().$implicit;return o.oxw(2).applyToAllDomainWithoutRef(d)}),o.TgZ(9,"span"),o._uU(10),o.qZA(),o.qZA(),o.YNc(11,k,4,3,"div",11),o.qZA(),o.qZA()}if(2&j){var W=o.MAs(4),$=o.oxw().$implicit,be=o.oxw(2);o.xp6(1),o.Q6J("matMenuTriggerFor",W),o.xp6(1),o.hij(" ",$," "),o.xp6(5),o.hij("All ",$,""),o.xp6(3),o.hij("All ",$," without references"),o.xp6(1),o.Q6J("ngForOf",be.domainsWithReferences[$].domains)}}function N(j,le){if(1&j&&(o.ynx(0),o.YNc(1,D,12,5,"div",5),o.BQk()),2&j){var re=le.$implicit,W=o.oxw(2);o.xp6(1),o.Q6J("ngIf",W.domainsWithReferences[re]&&W.domainsWithReferences[re].domains&&W.domainsWithReferences[re].domains.length)}}function I(j,le){if(1&j&&(o.TgZ(0,"div"),o.YNc(1,y,3,2,"div",6),o.YNc(2,N,2,1,"ng-container",7),o.qZA()),2&j){var re=o.oxw();o.xp6(1),o.Q6J("ngIf",re.domainsWithReferences.definition),o.xp6(1),o.Q6J("ngForOf",re.domainKeys)}}var L=function(){var j=function(){function le(re){(0,S.Z)(this,le),this.substanceFormReferencesService=re,this.domainKeys=e.Q,this.subscriptions=[],this.open=!1}return(0,t.Z)(le,[{key:"ngOnInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(W){W.unsubscribe()})}},{key:"setOpen",value:function(){var W=this;this.open=!0;var $=this.substanceFormReferencesService.domainsWithReferences.pipe((0,u.q)(1)).subscribe(function(be){W.domainsWithReferences=be,W.setChecked()});this.subscriptions.push($)}},{key:"subReferenceUuid",set:function(W){this.privateSubReferenceUuid=W}},{key:"applyToAll",value:function(){var W=this;this.applyReference(this.domainsWithReferences.definition.domain),this.domainKeys.forEach(function($){W.domainsWithReferences[$]&&W.domainsWithReferences[$].domains.forEach(function(be){W.applyReference(be)})}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"applyToAllWithoutRef",value:function(){var W=this;(null==this.domainsWithReferences.definition.domain.references||0===this.domainsWithReferences.definition.domain.references.length)&&this.applyReference(this.domainsWithReferences.definition.domain),this.domainKeys.forEach(function($){W.domainsWithReferences[$]&&W.domainsWithReferences[$].domains&&W.domainsWithReferences[$].domains.length&&W.domainsWithReferences[$].domains.forEach(function(be){(!be.references||0===be.references.length)&&W.applyReference(be)})}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"applyToAllDomain",value:function(W){var $=this;this.domainsWithReferences[W].domains.forEach(function(be){$.applyReference(be)}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"close",value:function(){this.domainsWithReferences=null,this.open=!1,this.subscriptions.forEach(function(W){W.unsubscribe()})}},{key:"setChecked",value:function(){var W=this;this.domainsWithReferences.definition&&this.domainsWithReferences.definition.domain&&(this.domainsWithReferences.definition.domain.checked=this.domainsWithReferences.definition.domain.references&&this.domainsWithReferences.definition.domain.references.indexOf(this.privateSubReferenceUuid)>-1),this.domainKeys.forEach(function($){W.domainsWithReferences[$]&&W.domainsWithReferences[$].domains&&W.domainsWithReferences[$].domains.forEach(function(be){be.checked=be.references&&be.references.indexOf(W.privateSubReferenceUuid)>-1})})}},{key:"applyToAllDomainWithoutRef",value:function(W){var $=this;this.domainsWithReferences[W]&&this.domainsWithReferences[W].domains&&this.domainsWithReferences[W].domains.length&&this.domainsWithReferences[W].domains.forEach(function(be){(!be.references||0===be.references.length)&&$.applyReference(be)}),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"updateAppliedOtion",value:function(W,$){W.checked?this.applyReference($):this.removeReference($),this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"applyReference",value:function(W){W.references||(W.references=[]),-1===W.references.indexOf(this.privateSubReferenceUuid)&&W.references.push(this.privateSubReferenceUuid)}},{key:"removeReference",value:function(W){W.references&&W.references.length&&W.references.indexOf(this.privateSubReferenceUuid)>-1&&W.references.splice(this.privateSubReferenceUuid,1)}},{key:"getDomainDisplay",value:function(W,$){var be=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return String.prototype.split.call($,/[,[\].]+?/).filter(Boolean).reduce(function(z,d){return Object.hasOwnProperty.call(z,d)?z[d]:be},W)}},{key:"isApplied",value:function(W){return W&&W.references&&W.references.indexOf(this.privateSubReferenceUuid)>-1}}]),le}();return j.\u0275fac=function(re){return new(re||j)(o.Y36(c.v))},j.\u0275cmp=o.Xpm({type:j,selectors:[["app-apply-reference"]],inputs:{subReferenceUuid:"subReferenceUuid"},decls:14,vars:2,consts:[["mat-button","",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","menu"],["xPosition","before",1,"applied-menu-container"],["appliedOptionsMenu","matMenu"],["mat-menu-item","",3,"click"],[4,"ngIf"],["mat-menu-item","",3,"click",4,"ngIf"],[4,"ngFor","ngForOf"],[3,"checked","change"],["mat-menu-item","",3,"matMenuTriggerFor"],["optionsMenu","matMenu"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],[3,"checked","change",4,"ngIf"]],template:function(re,W){if(1&re&&(o.TgZ(0,"button",0),o.NdJ("menuOpened",function(){return W.setOpen()})("menuClosed",function(){return W.close()}),o.TgZ(1,"span"),o._uU(2,"Apply to"),o.qZA(),o._uU(3,"\xa0 "),o._UZ(4,"mat-icon",1),o.qZA(),o.TgZ(5,"mat-menu",2,3),o.TgZ(7,"button",4),o.NdJ("click",function(){return W.applyToAll()}),o.TgZ(8,"span"),o._uU(9,"All"),o.qZA(),o.qZA(),o.TgZ(10,"button",4),o.NdJ("click",function(){return W.applyToAllWithoutRef()}),o.TgZ(11,"span"),o._uU(12,"All without references"),o.qZA(),o.qZA(),o.YNc(13,I,3,2,"div",5),o.qZA()),2&re){var $=o.MAs(6);o.Q6J("matMenuTriggerFor",$),o.xp6(13),o.Q6J("ngIf",W.domainsWithReferences)}},directives:[_.lW,s.p6,h.Hw,s.VK,s.OP,b.O5,T.oG,b.sg],pipes:[b.OU],styles:[".mat-menu-item{height:auto} .mat-checkbox-layout{white-space:normal}"]}),j}()},32685:function(Ce,E,n){"use strict";n.d(E,{Q:function(){return S},v:function(){return t}});var S=["names","codes","relationships","notes","properties","constituents"],t={names:"name",codes:"code",relationships:"relatedSubstance.name",notes:"note",properties:"name",constituents:"substance.name"}},53349:function(Ce,E,n){"use strict";n.d(E,{s:function(){return J}});var S=n(39117),t=n(1884),e=n(86613),c=n(12570),u=n(44250),o=n(36362),_=n(74742),s=n(97217),h=n(64316);function b(te,K){1&te&&e._UZ(0,"mat-progress-spinner",3)}function T(te,K){1&te&&(e.TgZ(0,"th",15),e._uU(1," Use "),e.qZA())}function y(te,K){if(1&te){var G=e.EpF();e.TgZ(0,"td",16),e.TgZ(1,"a",17),e.NdJ("click",function(){var Me=e.CHM(G).$implicit;return e.oxw(3).selectReference(Me)}),e._uU(2,"select"),e.qZA(),e.qZA()}}function Y(te,K){1&te&&(e.TgZ(0,"th",15),e._uU(1," Citation "),e.qZA())}function q(te,K){if(1&te&&(e.TgZ(0,"a",19),e._uU(1),e.qZA()),2&te){var G=e.oxw().$implicit;e.Q6J("href",G.url,e.LSH),e.xp6(1),e.hij("",G.citation," ")}}function B(te,K){if(1&te&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&te){var G=e.oxw().$implicit;e.xp6(1),e.hij(" ",G.citation," ")}}function k(te,K){if(1&te&&(e.TgZ(0,"td",16),e.YNc(1,q,2,2,"a",18),e.YNc(2,B,2,1,"span",2),e.qZA()),2&te){var G=K.$implicit;e.xp6(1),e.Q6J("ngIf",G.url),e.xp6(1),e.Q6J("ngIf",!G.url)}}function D(te,K){1&te&&(e.TgZ(0,"th",15),e._uU(1," Type "),e.qZA())}function N(te,K){if(1&te&&(e.TgZ(0,"td",16),e._uU(1),e.qZA()),2&te){var G=K.$implicit;e.xp6(1),e.hij(" ",G.docType," ")}}function I(te,K){1&te&&(e.TgZ(0,"th",15),e._uU(1," Tags "),e.qZA())}function L(te,K){1&te&&(e.TgZ(0,"span"),e._uU(1,",\xa0"),e.qZA())}function j(te,K){if(1&te&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,L,2,0,"span",2),e.qZA()),2&te){var G=K.$implicit,ce=K.last;e.xp6(1),e.Oqu(G),e.xp6(1),e.Q6J("ngIf",!ce)}}function le(te,K){if(1&te&&(e.TgZ(0,"td",16),e.YNc(1,j,3,2,"span",20),e.qZA()),2&te){var G=K.$implicit;e.xp6(1),e.Q6J("ngForOf",G.tags)}}function re(te,K){1&te&&(e.TgZ(0,"th",15),e._uU(1," Date Accessed "),e.qZA())}function W(te,K){if(1&te&&(e.TgZ(0,"td",16),e._uU(1),e.ALo(2,"date"),e.qZA()),2&te){var G=K.$implicit;e.xp6(1),e.hij(" ",e.xi3(2,1,G.lastEdited,"short")," ")}}function $(te,K){1&te&&e._UZ(0,"tr",21)}function be(te,K){1&te&&e._UZ(0,"tr",22)}function z(te,K){if(1&te&&(e.TgZ(0,"div"),e.TgZ(1,"span",4),e._uU(2," Select a recently submitted reference to populate the form"),e.qZA(),e.TgZ(3,"table",5),e.ynx(4,6),e.YNc(5,T,2,0,"th",7),e.YNc(6,y,3,0,"td",8),e.BQk(),e.ynx(7,9),e.YNc(8,Y,2,0,"th",7),e.YNc(9,k,3,2,"td",8),e.BQk(),e.ynx(10,10),e.YNc(11,D,2,0,"th",7),e.YNc(12,N,2,1,"td",8),e.BQk(),e.ynx(13,11),e.YNc(14,I,2,0,"th",7),e.YNc(15,le,2,1,"td",8),e.BQk(),e.ynx(16,12),e.YNc(17,re,2,0,"th",7),e.YNc(18,W,3,4,"td",8),e.BQk(),e.YNc(19,$,1,0,"tr",13),e.YNc(20,be,1,0,"tr",14),e.qZA(),e.qZA()),2&te){var G=e.oxw(2);e.xp6(3),e.Q6J("dataSource",G.oldReferences),e.xp6(16),e.Q6J("matHeaderRowDef",G.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",G.displayedColumns)}}function d(te,K){1&te&&(e.TgZ(0,"div"),e.TgZ(1,"i"),e._uU(2,"No previous references found for this user"),e.qZA(),e.qZA())}function Q(te,K){if(1&te&&(e.TgZ(0,"div"),e.YNc(1,z,21,3,"div",2),e.YNc(2,d,3,0,"div",2),e.qZA()),2&te){var G=e.oxw();e.xp6(1),e.Q6J("ngIf",G.oldReferences.length>0),e.xp6(1),e.Q6J("ngIf",0===G.oldReferences.length)}}var J=function(){var te=function(){function K(G,ce){(0,S.Z)(this,K),this.substanceService=G,this.authService=ce,this.loading=!0,this.oldReferences=[],this.displayedColumns=["use","citation","type","tags","dateAcessed"],this.selectedReference=new e.vpe}return(0,t.Z)(K,[{key:"ngOnInit",value:function(){var ce=this;this.user=this.authService.getUser(),this.substanceService.getSubstanceReferences(1,this.user).subscribe(function(_e){ce.refCount=_e.total?_e.total:0,ce.getPreviousReferences()})}},{key:"getPreviousReferences",value:function(){var ce=this;this.substanceService.getSubstanceReferences(12,this.user).subscribe(function(Me){if(Me.count&&Me.content){for(var ve=Me.content.length-1;ve>=0&&!(ce.user===Me.content[ve].lastEditedBy&&Me.content[ve].docType&&Me.content[ve].citation&&"VALIDATION_MESSAGE"!==Me.content[ve].docType&&"SYSTEM"!==Me.content[ve].docType&&"BATCH_IMPORT"!==Me.content[ve].docType&&"VALIDATION_MESSAGE"!==Me.content[ve].docType&&(ce.oldReferences.push(Me.content[ve]),ce.oldReferences.length>=12));ve--);ce.loading=!1}else ce.loading=!1})}},{key:"selectReference",value:function(ce){this.selectedReference.emit(ce)}}]),K}();return te.\u0275fac=function(G){return new(G||te)(e.Y36(c.d),e.Y36(u.e))},te.\u0275cmp=e.Xpm({type:te,selectors:[["app-previous-references"]],outputs:{selectedReference:"selectedReference"},decls:3,vars:2,consts:[[1,"spinner-container"],["mode","indeterminate","class","spinner",4,"ngIf"],[4,"ngIf"],["mode","indeterminate",1,"spinner"],[1,"explain"],["mat-table","","matSort","",3,"dataSource"],["matColumnDef","use"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","citation"],["matColumnDef","type"],["matColumnDef","tags"],["matColumnDef","dateAcessed"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","","class","narrow-row",4,"matRowDef","matRowDefColumns"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],[1,"reuse-button",3,"click"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[4,"ngFor","ngForOf"],["mat-header-row",""],["mat-row","",1,"narrow-row"]],template:function(G,ce){1&G&&(e.TgZ(0,"div",0),e.YNc(1,b,1,0,"mat-progress-spinner",1),e.qZA(),e.YNc(2,Q,3,2,"div",2)),2&G&&(e.xp6(1),e.Q6J("ngIf",ce.loading),e.xp6(1),e.Q6J("ngIf",!ce.loading))},directives:[o.O5,_.Ou,s.BZ,h.YE,s.w1,s.fO,s.ge,h.nU,s.Dz,s.ev,o.sg,s.as,s.XQ,s.nj,s.Gk],pipes:[o.uU],styles:[".reuse-button[_ngcontent-%COMP%]{color:var(--primary-color)!important}.narrow-row[_ngcontent-%COMP%]{height:36px}.spinner[_ngcontent-%COMP%]{margin:auto}.spinner-container[_ngcontent-%COMP%]{width:100%}.explain[_ngcontent-%COMP%]{margin-left:30px;font-style:italic;font-size:14px}"]}),te}()},95465:function(Ce,E,n){"use strict";n.d(E,{b:function(){return $}});var S=n(39117),t=n(1884),e=n(86613),c=n(42827),u=n(92507),o=n(52149),_=n(33567),s=n(24936),h=n(95758),b=n(53349),T=n(87317),y=function(){var be=function(){function z(d){(0,S.Z)(this,z),this.dialogRef=d}return(0,t.Z)(z,[{key:"ngOnInit",value:function(){}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"fillReference",value:function(Q){this.dialogRef.close(Q)}}]),z}();return be.\u0275fac=function(d){return new(d||be)(e.Y36(h.so))},be.\u0275cmp=e.Xpm({type:be,selectors:[["app-previous-references-dialog"]],decls:9,vars:0,consts:[["mat-dialog-title",""],["mat-dialog-content",""],[3,"selectedReference"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-button","",3,"click"]],template:function(d,Q){1&d&&(e.TgZ(0,"div",0),e.TgZ(1,"h1"),e._uU(2,"Select Previously Used Reference"),e.qZA(),e.qZA(),e.TgZ(3,"div",1),e.TgZ(4,"app-previous-references",2),e.NdJ("selectedReference",function(te){return Q.fillReference(te)}),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e._UZ(6,"span",4),e.TgZ(7,"button",5),e.NdJ("click",function(){return Q.cancel()}),e._uU(8,"Cancel"),e.qZA(),e.qZA())},directives:[h.uh,h.xY,b.s,h.H8,T.lW],styles:[""]}),be}(),Y=n(54244);function q(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div",12),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",13),e.NdJ("click",function(){return e.CHM(d),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",14),e.qZA(),e.qZA()}}function B(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",22),e.NdJ("click",function(){return e.CHM(d),e.oxw(2).deleteReference()}),e.TgZ(2,"span"),e._uU(3,"Delete"),e.qZA(),e._uU(4,"\xa0 "),e._UZ(5,"mat-icon",23),e.qZA(),e.qZA()}}function k(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",24),e.NdJ("selectedFile",function(J){return e.CHM(d),e.oxw(2).fileSelected(J)}),e.TgZ(2,"span"),e._uU(3,"Upload Document"),e.qZA(),e._uU(4,"\xa0 "),e._UZ(5,"mat-icon",25),e.qZA(),e.qZA()}}function D(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",26),e._uU(2," Attachment "),e._UZ(3,"mat-icon",27),e.qZA(),e.TgZ(4,"mat-menu",null,28),e.TgZ(6,"a",29),e.NdJ("click",function(){e.CHM(d);var te=e.oxw(2);return te.downloadDocument(te.reference.uploadedFile)}),e._uU(7,"Download"),e.qZA(),e.TgZ(8,"button",30),e.NdJ("selectedFile",function(te){return e.CHM(d),e.oxw(2).fileSelected(te)}),e._uU(9,"Replace"),e.qZA(),e.TgZ(10,"button",29),e.NdJ("click",function(){return e.CHM(d),e.oxw(2).reference.uploadedFile=null}),e._uU(11,"Delete"),e.qZA(),e.qZA(),e.qZA()}if(2&be){var Q=e.MAs(5);e.xp6(1),e.Q6J("matMenuTriggerFor",Q)}}function N(be,z){if(1&be&&(e.TgZ(0,"div",31),e.TgZ(1,"div",32),e._UZ(2,"mat-progress-spinner",33),e.qZA(),e.TgZ(3,"span"),e._uU(4,"Uploading"),e.qZA(),e.qZA()),2&be){var d=e.oxw(2);e.xp6(2),e.Q6J("color",d.primary)}}function I(be,z){1&be&&(e.TgZ(0,"div",31),e._uU(1," Error: There was a problem uploading this document "),e.qZA())}function L(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",34),e.NdJ("click",function(){e.CHM(d);var te=e.oxw(2);return te.showPrev=!te.showPrev}),e.TgZ(2,"span"),e._uU(3),e.qZA(),e._uU(4,"\xa0 "),e.qZA(),e.qZA()}if(2&be){var Q=e.oxw(2);e.xp6(3),e.hij("",Q.showPrev?"Hide":"Use"," Previous Substance Reference")}}function j(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",34),e.NdJ("click",function(){return e.CHM(d),e.oxw(2).openPreviousDialog()}),e.TgZ(2,"span"),e._uU(3),e.qZA(),e._uU(4,"\xa0 "),e.qZA(),e.qZA()}if(2&be){var Q=e.oxw(2);e.xp6(3),e.hij("",Q.showPrev?"Hide":"Use"," Previous Substance Reference")}}function le(be,z){if(1&be&&(e.TgZ(0,"div"),e._UZ(1,"app-apply-reference",35),e.qZA()),2&be){var d=e.oxw(2);e.xp6(1),e.Q6J("subReferenceUuid",d.reference.uuid)}}function re(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",2),e.TgZ(2,"mat-form-field",15),e.TgZ(3,"input",16),e.NdJ("ngModelChange",function(te){return e.CHM(d),e.oxw().reference.url=te}),e.qZA(),e.qZA(),e.TgZ(4,"mat-form-field"),e.TgZ(5,"input",17),e.NdJ("ngModelChange",function(te){return e.CHM(d),e.oxw().reference.id=te}),e.qZA(),e.qZA(),e.TgZ(6,"app-tag-selector",18),e.NdJ("tagsUpdate",function(te){return e.CHM(d),e.oxw().updateTags(te)}),e.qZA(),e.qZA(),e.TgZ(7,"div",19),e.YNc(8,B,6,0,"div",9),e.YNc(9,k,6,0,"div",9),e.YNc(10,D,12,1,"div",9),e.YNc(11,N,5,1,"div",20),e.YNc(12,I,2,0,"div",20),e.YNc(13,L,5,1,"div",9),e.YNc(14,j,5,1,"div",9),e._UZ(15,"span",21),e.YNc(16,le,2,1,"div",9),e.qZA(),e.qZA()}if(2&be){var Q=e.oxw();e.xp6(3),e.Q6J("ngModel",Q.reference.url),e.xp6(2),e.Q6J("ngModel",Q.reference.id),e.xp6(1),e.Q6J("tags",Q.reference.tags),e.xp6(2),e.Q6J("ngIf",Q.reference.uuid&&!Q.hideDelete),e.xp6(1),e.Q6J("ngIf",!(Q.disableReferenceDocumentUpload||Q.reference.uploadedFile)),e.xp6(1),e.Q6J("ngIf",Q.reference.uploadedFile),e.xp6(1),e.Q6J("ngIf",!0===Q.loading),e.xp6(1),e.Q6J("ngIf",!1===Q.loading&&!0===Q.error),e.xp6(1),e.Q6J("ngIf",!Q.reference.uuid),e.xp6(1),e.Q6J("ngIf",Q.reference.uuid&&!Q.reference.docType&&!Q.reference.citation),e.xp6(2),e.Q6J("ngIf",Q.reference.uuid)}}function W(be,z){if(1&be){var d=e.EpF();e.TgZ(0,"div",2),e.TgZ(1,"app-previous-references",36),e.NdJ("selectedReference",function(J){return e.CHM(d),e.oxw().fillReference(J)}),e.qZA(),e.qZA()}}var $=function(){var be=function(){function z(d,Q,J,te,K,G,ce){(0,S.Z)(this,z),this.cvService=d,this.configService=Q,this.utilsService=J,this.substanceFormReferencesService=te,this.dialog=K,this.overlayContainerService=G,this.substanceFormService=ce,this.referenceDeleted=new e.vpe,this.hideDelete=!1,this.disableReferenceDocumentUpload=!1,this.showPrev=!1,this.loading=!1,this.error=!1,this.subscriptions=[]}return(0,t.Z)(z,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement(),this.disableReferenceDocumentUpload=this.configService.configData.disableReferenceDocumentUpload}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(Q){Q.unsubscribe()})}},{key:"updateAccess",value:function(Q){this.reference.access=Q}},{key:"updateTags",value:function(Q){this.reference.tags=Q}},{key:"isValid",get:function(){return!(!this.reference.docType||!this.reference.citation)}},{key:"deleteReference",value:function(){var Q=this;this.reference.$$deletedCode=this.utilsService.newUUID(),this.reference.docType||this.reference.citation||this.reference.uploadedFile?this.substanceFormReferencesService.emitReferencesUpdate():this.deleteTimer=setTimeout(function(){Q.referenceDeleted.emit(Q.reference)},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.reference.$$deletedCode,this.substanceFormReferencesService.emitReferencesUpdate()}},{key:"fileSelected",value:function(Q){var J=this;this.error=!1,null!=Q&&(this.loading=!0,this.utilsService.uploadFile(Q).subscribe(function(te){J.reference.uploadedFile=te,J.loading=!1},function(te){J.loading=!1,J.error=!0}))}},{key:"openPreviousDialog",value:function(){var Q=this,J=this.dialog.open(y,{data:{},width:"990px"});this.overlayContainer.style.zIndex="1002";var te=J.afterClosed().subscribe(function(K){Q.overlayContainer.style.zIndex=null,K&&K.citation&&""!==K.citation&&K.docType&&""!==K.docType&&Q.fillReference(K)});this.subscriptions.push(te)}},{key:"fillReference",value:function(Q){this.showPrev=!1,this.reference.access=Q.access,this.reference.citation=Q.citation,this.reference.deprecated=Q.deprecated,this.reference.docType=Q.docType,this.reference.publicDomain=Q.publicDomain,this.reference.tags=Q.tags,this.reference.uploadedFile=Q.uploadedFile,this.reference.url=Q.url||null,this.reference.id=Q.id||null}},{key:"downloadDocument",value:function(Q){this.substanceFormService.bypassUpdateCheck(),window.open(Q)}}]),z}();return be.\u0275fac=function(d){return new(d||be)(e.Y36(c.I),e.Y36(u.E),e.Y36(o.F),e.Y36(s.v),e.Y36(h.uw),e.Y36(Y.Xj),e.Y36(_.B))},be.\u0275cmp=e.Xpm({type:be,selectors:[["app-reference-form"]],inputs:{reference:"reference",hideDelete:"hideDelete"},outputs:{referenceDeleted:"referenceDeleted"},decls:15,vars:8,consts:[[1,"reference-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],["required","true","domain","DOCUMENT_TYPE","title","Source Type","name","docType",1,"source-type",3,"model","valueChange"],[1,"citation"],["matInput","","placeholder","Source Text/Citation","required","","name","citation",3,"ngModel","ngModelChange"],[1,"checkbox-container"],["name","publicDomain",3,"ngModel","ngModelChange"],[3,"access","accessOut"],[4,"ngIf"],["class","form-row ",4,"ngIf"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"url"],["matInput","","placeholder","URL","name","refUrl",3,"ngModel","ngModelChange"],["matInput","","placeholder","Source Id","name","refId",3,"ngModel","ngModelChange"],["cvDomain","DOCUMENT_COLLECTION",1,"tags",3,"tags","tagsUpdate"],[1,"form-row","form-actions"],["class","loading-container",4,"ngIf"],[1,"middle-fill"],["mat-button","",3,"click"],["svgIcon","delete_forever"],["mat-button","","ncatsFileSelect","",3,"selectedFile"],["svgIcon","cloud_upload"],["mat-button","",3,"matMenuTriggerFor"],["svgIcon","attachment"],["documentMenu","matMenu"],["mat-menu-item","",3,"click"],["mat-menu-item","","ncatsFileSelect","",3,"selectedFile"],[1,"loading-container"],[1,"spinner-container"],["mode","indeterminate",1,"progress-spinner","spinner",3,"color"],["mat-button","","matTooltip","use a previously submitted reference",3,"click"],[3,"subReferenceUuid"],[1,"previous-ref",3,"selectedReference"]],template:function(d,Q){1&d&&(e.TgZ(0,"div",0),e.YNc(1,q,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"app-cv-input",3),e.NdJ("valueChange",function(te){return Q.reference.docType=te}),e.qZA(),e.TgZ(4,"mat-form-field",4),e.TgZ(5,"input",5),e.NdJ("ngModelChange",function(te){return Q.reference.citation=te}),e.qZA(),e.qZA(),e.TgZ(6,"div",6),e.TgZ(7,"mat-checkbox",7),e.NdJ("ngModelChange",function(te){return Q.reference.publicDomain=te}),e._uU(8," Public Domain "),e.qZA(),e.qZA(),e.TgZ(9,"div"),e.TgZ(10,"app-access-manager",8),e.NdJ("accessOut",function(te){return Q.updateAccess(te)}),e.qZA(),e.qZA(),e.qZA(),e.YNc(11,re,17,11,"div",9),e.YNc(12,W,2,0,"div",10),e.TgZ(13,"div",2),e._UZ(14,"app-audit-info",11),e.qZA(),e.qZA()),2&d&&(e.xp6(1),e.Q6J("ngIf",Q.reference.$$deletedCode),e.xp6(2),e.Q6J("model",Q.reference.docType),e.xp6(2),e.Q6J("ngModel",Q.reference.citation),e.xp6(2),e.Q6J("ngModel",Q.reference.publicDomain),e.xp6(3),e.Q6J("access",Q.reference.access),e.xp6(1),e.Q6J("ngIf",!Q.reference.$$deletedCode),e.xp6(1),e.Q6J("ngIf",Q.showPrev),e.xp6(2),e.Q6J("source",Q.reference))},styles:[".reference-form-container[_ngcontent-%COMP%]{padding:30px 0 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{padding-bottom:18px}.form-actions[_ngcontent-%COMP%]{-ms-flex-pack:start;justify-content:flex-start;margin:5px 0 10px}.source-type[_ngcontent-%COMP%], .citation[_ngcontent-%COMP%], .url[_ngcontent-%COMP%]{width:30%}.tags[_ngcontent-%COMP%]{width:40%}.previous-ref[_ngcontent-%COMP%]{margin:auto;width:90%}.spinner[_ngcontent-%COMP%]{height:20px;width:20px}.loading-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;height:26px}.spinner-container[_ngcontent-%COMP%]{height:20px;width:20px;margin-right:5px}.progress-spinner[_ngcontent-%COMP%]{margin:auto}.mat-progress-spinner[_ngcontent-%COMP%]{height:20px!important;width:20px!important}.mat-progress-spinner[_ngcontent-%COMP%] svg{height:20px!important;width:20px!important}.mat-progress-spinner[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:20px!important;width:20px!important}"]}),be}()},24936:function(Ce,E,n){"use strict";n.d(E,{v:function(){return Y}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(32685),s=n(26067),h=n(68785),b=n(33567),T=n(63169),y=n(86613),Y=function(){var q=function(B){(0,u.Z)(D,B);var k=(0,o.Z)(D);function D(N,I){var L;return(0,S.Z)(this,D),(L=k.call(this,N)).substanceFormService=N,L.utilsService=I,L.domainsWithReferencesEmitter=new s.t,L}return(0,t.Z)(D,[{key:"initSubtanceForm",value:function(){var I=this;(0,e.Z)((0,c.Z)(D.prototype),"initSubtanceForm",this).call(this);var L=this.substanceFormService.substance.subscribe(function(j){I.privateDomainsWithReferences=null,I.substance=j,null==I.substance.references&&(I.substance.references=[]),I.substanceFormService.resetState(),I.propertyEmitter.next(I.substance.references),I.domainsWithReferencesEmitter.next(I.getDomainReferences())});this.subscriptions.push(L)}},{key:"unloadSubstance",value:function(){(0,e.Z)((0,c.Z)(D.prototype),"unloadSubstance",this).call(this),this.domainsWithReferencesEmitter.complete(),this.domainsWithReferencesEmitter=new s.t}},{key:"substanceReferences",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceReference",value:function(I){return I.uuid=this.utilsService.newUUID(),null==this.substance.references&&(this.substance.references=[]),this.substance.references.unshift(I),this.propertyEmitter.next(this.substance.references),I}},{key:"domainsWithReferences",get:function(){return this.domainsWithReferencesEmitter.asObservable()}},{key:"getDomainReferences",value:function(){var I=this,L=this.substance.substanceClass;"chemical"===this.substance.substanceClass?L="structure":"specifiedSubstanceG1"===this.substance.substanceClass&&(L="specifiedSubstance");var j={uuid:this.substance[L].uuid,references:this.substance[L].references};return this.privateDomainsWithReferences={definition:{subClass:this.substance.substanceClass,domain:j}},"specifiedSubstance"===L&&(this.privateDomainsWithReferences={definition:{subClass:this.substance.substanceClass,domain:j}}),this.privateDomainsWithReferences={definition:{subClass:this.substance.substanceClass,domain:this.substance[L]}},_.Q.forEach(function(le){if("constituents"!==le)I.privateDomainsWithReferences[le]={listDisplay:le,displayKey:_.v[le],domains:I.substance[le]||[]};else{var re=[];"specifiedSubstance"===L&&I.substance.specifiedSubstance&&I.substance.specifiedSubstance.constituents&&(re=I.substance.specifiedSubstance.constituents),I.privateDomainsWithReferences[le]={listDisplay:"constituents",displayKey:"constituent",domains:re}}}),this.privateDomainsWithReferences}},{key:"deleteSubstanceReference",value:function(I){var L=this.substance.references.findIndex(function(j){return I.$$deletedCode===j.$$deletedCode});L>-1&&(this.substance.references.splice(L,1),this.propertyEmitter.next(this.substance.references))}},{key:"emitReferencesUpdate",value:function(){this.propertyEmitter.next(this.substance.references)}}]),D}(h.E);return q.\u0275fac=function(k){return new(k||q)(y.LFG(b.B),y.LFG(T.FW))},q.\u0275prov=y.Yz7({token:q,factory:q.\u0275fac}),q}()},96238:function(Ce,E,n){"use strict";n.d(E,{F:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,null==k.substance.relationships&&(k.substance.relationships=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.relationships)});this.subscriptions.push(D)}},{key:"substanceRelationships",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceRelationship",value:function(){this.substance.relationships.unshift({relatedSubstance:{},amount:{},references:[],access:[]}),this.propertyEmitter.next(this.substance.relationships)}},{key:"deleteSubstanceRelationship",value:function(k){var D=this.substance.relationships.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.relationships.splice(D,1),this.propertyEmitter.next(this.substance.relationships))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},5118:function(Ce,E,n){"use strict";n.d(E,{T:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,k.substance.modifications||(k.substance.modifications={}),k.substance.modifications.structuralModifications||(k.substance.modifications.structuralModifications=[]),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.modifications.structuralModifications)});this.subscriptions.push(D)}},{key:"substanceStructuralModifications",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSubstanceStructuralModification",value:function(){this.substance.modifications||(this.substance.modifications={}),this.substance.modifications.structuralModifications||(this.substance.modifications.structuralModifications=[]),this.substance.modifications.structuralModifications.unshift({references:[],sites:[],access:[]}),this.propertyEmitter.next(this.substance.modifications.structuralModifications)}},{key:"deleteSubstanceStructuralModification",value:function(k){var D=this.substance.modifications.structuralModifications.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.modifications.structuralModifications.splice(D,1),this.propertyEmitter.next(this.substance.modifications.structuralModifications))}}]),q}(_.E);return T.\u0275fac=function(Y){return new(Y||T)(h.LFG(s.B))},T.\u0275prov=h.Yz7({token:T,factory:T.\u0275fac}),T}()},34470:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return b}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(68785),s=n(33567),h=n(86613),b=function(){var T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B){var k;return(0,S.Z)(this,q),(k=Y.call(this,B)).substanceFormService=B,k}return(0,t.Z)(q,[{key:"initSubtanceForm",value:function(){var k=this;(0,e.Z)((0,c.Z)(q.prototype),"initSubtanceForm",this).call(this);var D=this.substanceFormService.substance.subscribe(function(N){k.substance=N,null!=k.substance.polymer&&(null==k.substance.polymer.structuralUnits?k.substance.polymer.structuralUnits=[]:k.setSRUConnectivityDisplay(k.substance.polymer.structuralUnits),k.substanceFormService.resetState(),k.propertyEmitter.next(k.substance.polymer.structuralUnits))});this.subscriptions.push(D)}},{key:"substanceSRUs",get:function(){return this.propertyEmitter.asObservable()}},{key:"deleteSubstanceSRU",value:function(k){var D=this.substance.polymer.structuralUnits.findIndex(function(N){return k.$$deletedCode===N.$$deletedCode});D>-1&&(this.substance.polymer.structuralUnits.splice(D,1),this.propertyEmitter.next(this.substance.polymer.structuralUnits))}},{key:"updateSRUs",value:function(k){this.setSRUConnectivityDisplay(k),this.substance.polymer.structuralUnits=k,this.propertyEmitter.next(this.substance.polymer.structuralUnits)}},{key:"setSRUConnectivityDisplay",value:function(k){var D=this.getAttachmentMapUnits(k);for(var N in k){var I=this.sruConnectivityToDisplay(k[N].attachmentMap,D);k[N]._displayConnectivity=I}}},{key:"getAttachmentMapUnits",value:function(k){var D={};for(var N in k){var I=k[N].label;for(var L in I||(I="{"+N+"}"),k[N].attachmentMap)k[N].attachmentMap.hasOwnProperty(L)&&(D[L]=I)}return D}},{key:"sruConnectivityToDisplay",value:function(k,D){var N="";for(var I in k)if(k.hasOwnProperty(I)){var L=D[I]+"_"+I;for(var j in k[I])N+=L+"-"+D[k[I][j]]+"_"+k[I][j]+";\n"}if(""!==N)return N}},{key:"sruDisplayToConnectivity",value:function(k){if(!k)return{};for(var D=[],N=k.split(";"),I=/^\s*[A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)[-][A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)\s*$/g,L={},j=0;j-1){re.molfile=j[$].molfile;var be=L.computedMoieties.find(function(Q){return Q.hash===re.hash});null!=be&&j[$].count!==be.count&&(re.count=j[$].count,re.countAmount=j[$].countAmount);var z=le.findIndex(function(Q){return Q.hash===re.hash}),d=j.findIndex(function(Q){return Q.hash===re.hash});le.splice(z,1),j.splice(d,1)}}),j.length>0&&j.forEach(function(re){var W=L.deletedMoieties.findIndex(function(z){return z.hash===re.hash});if(W>-1){var $=L.deletedMoieties.splice(W,1)[0];$.molfile=re.molfile;var be=L.computedMoieties.find(function(z){return z.hash===$.hash});null!=be&&re.count!==be.count&&($.count=re.count,$.countAmount=re.countAmount),L.substance.moieties.push($)}else re.uuid="",L.substance.moieties&&L.substance.moieties.push(re)}),le.length>0&&le.forEach(function(re){var W=L.substance.moieties.findIndex(function(be){return be.hash===re.hash});if(W>-1){var $=L.substance.moieties.splice(W,1)[0];L.deletedMoieties.push($)}}),this.computedMoieties=I,this.substanceMoietiesEmitter.next(this.substance.moieties)}},{key:"substanceDisplayStructure",get:function(){return this.substanceIdealizedStructureEmitter.asObservable()}}]),D}(_.E);return q.\u0275fac=function(k){return new(k||q)(y.LFG(s.B),y.LFG(b.De))},q.\u0275prov=y.Yz7({token:q,factory:q.\u0275fac}),q}()},7168:function(Ce,E,n){"use strict";n.d(E,{O:function(){return Oe}});var S=n(39117),t=n(1884),e=n(36362),c=n(84577),u=n(90587),o=n(44770),_=n(82796),s=n(61534),h=n(87317),b=n(65590),T=n(40089),y=n(12379),Y=n(19975),q=n(91434),B=n(43365),k=n(15992),D=n(81196),N=n(43188),I=n(94673),L=n(95465),j=n(95758),le=n(97217),re=n(16531),W=n(70178),$=n(68390),be=n(45723),z=n(63200),d=n(98827),Q=n(26131),J=n(65831),te=n(16667),K=n(1427),G=n(31959),ce=n(49241),_e=n(14900),Me=n(98002),ve=n(24054),ue=n(60833),lt=n(66794),Xe=n(44646),mt=n(33567),wt=n(27336),Pt=n(35354),Pe=n(12671),ze=n(39233),ft=n(24936),ct=n(34470),Ee=n(88619),st=n(39756),nt=n(21109),at=n(66452),We=n(457),xe=n(26984),ut=n(87625),Fe=n(21584),et=n(35663),Ht=n(71896),nn=n(16830),an=n(88194),kt=n(96238),It=n(5118),$e=n(53349),Ae=n(74742),X=n(64316),ne=n(88547),me=n(86613),Oe=function(){var He=function(){function At(){(0,S.Z)(this,At)}return(0,t.Z)(At,null,[{key:"forRoot",value:function(){return{ngModule:At,providers:[mt.B,lt.y,Xe.R,wt.p,Pt.n,Pe.w,ze.S,ft.v,ct.Z,Ee.r,st.w,nt.e,at.W,We.O,xe.D,ut.b,Fe.C,et.k,Ht.X,nn.q,an.D,kt.F,It.T]}}}]),At}();return He.\u0275fac=function(Ft){return new(Ft||He)},He.\u0275mod=me.oAB({type:He}),He.\u0275inj=me.cJS({imports:[[e.ez,u.UX,u.u5,o.lN,_.Tx,s.p9,h.ot,b.Ps,T.AV,y.Nh,Y.t,q.LD,B.c,D.Hi,N.Bb,I.w,j.Is,le.p0,re.To,W.g,$.Fk,be.F,z.U,Q.ie,J.x,G.vV,ce.s,Me.Bz,ve.f,ue.Cv,Ae.Cq,X.JX,ne.J]]}),He}();me.B6R(L.b,[e.O5,h.lW,T.gM,b.Hw,te.S,o.KE,B.Nt,u.Fj,u.Q7,u.JJ,u.On,s.oG,c.h,k.C,J.C,_.p6,_.VK,_.OP,Ae.Ou,d.U,$e.s,_e.n],[]),me.B6R(K.I,[e.O5,h.lW,T.gM,b.Hw,te.S,_e.n],[])},33567:function(Ce,E,n){"use strict";n.d(E,{B:function(){return Y}});var S=n(39117),t=n(1884),e=n(26067),c=n(50253),u=n(83336),o=n(12570),_=n(52149),s=n(69093),h=n(92938),T=n(59295),y=n(86613),Y=function(){var q=function(){function B(k,D,N){(0,S.Z)(this,B),this.substanceService=k,this.utilsService=D,this.structureService=N,this.substanceDisulfideLinksEmitter=new e.t,this.substanceGlycosylationEmitter=new e.t,this.substanceLinksEmitter=new e.t,this.substanceNamesEmitter=new e.t,this.substanceOtherLinksEmitter=new e.t,this.substanceStructuralModificationsEmitter=new e.t,this.substanceCysteineEmitter=new e.t,this.substanceFormActionEmitter=new e.t,this.definitionEmitter=new c.x,this.substanceSubunitsEmitter=new c.x,this.substanceSugarsEmitter=new c.x,this.substanceNucleicAcidEmitter=new c.x,this.allSitesEmitter=new c.x,this.displaySequencesEmitter=new c.x,this.substanceChangeReasonEmitter=new c.x,this.nameResolver=new c.x,this.resolvedMol=this.nameResolver.asObservable(),this._bypassUpdateCheck=!1,this.storedRelated={},this.substanceEmitter=new e.t}return(0,t.Z)(B,[{key:"ngOnDestroy",value:function(){this.unloadSubstance()}},{key:"getStoredRelated",value:function(D){return this.storedRelated&&this.storedRelated[D]?this.storedRelated[D]:null}},{key:"setStoredRelated",value:function(D,N){this.storedRelated[N]=D}},{key:"loadSubstance",value:function(){var D=this,N=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"chemical",I=arguments.length>1?arguments[1]:void 0,L=arguments.length>2?arguments[2]:void 0,j=arguments.length>3?arguments[3]:void 0;return this.method=L||null,j&&(this.privateSubstance=I,this.substanceEmitter.next(I),this.namesUpdated()),this.substanceEmitter.subscribe(function(le){}),new u.y(function(le){null!=I?(D.privateSubstance=I,N=D.privateSubstance.substanceClass):(D.privateSubstance="chemical"===N||"structure"===N?{substanceClass:"chemical",references:[],names:[],structure:{molfile:"\n\n\n 0 0 0 0 0 0 999 V2000\nM END"},codes:[],relationships:[],properties:[]}:"protein"===N?{substanceClass:"protein",references:[],names:[],protein:{proteinType:""},codes:[],relationships:[],properties:[]}:"nucleicAcid"===N?{substanceClass:"nucleicAcid",references:[],names:[],nucleicAcid:{},codes:[],relationships:[],properties:[]}:"mixture"===N?{substanceClass:"mixture",references:[],names:[],mixture:{},codes:[],relationships:[],properties:[]}:"structurallyDiverse"===N?{substanceClass:"structurallyDiverse",references:[],names:[],structurallyDiverse:{part:["whole"],$$diverseType:"whole"},codes:[],relationships:[],properties:[]}:"specifiedSubstance"===N||"specifiedSubstanceG1"===N?{substanceClass:"specifiedSubstanceG1",references:[],names:[],specifiedSubstance:{constituents:[],references:[]},codes:[],relationships:[],properties:[]}:"specifiedSubstanceG2"===N?{substanceClass:"specifiedSubstanceG2",references:[],names:[],specifiedSubstanceG2:{constituents:[],manufacturing:[],references:[]}}:"specifiedSubstanceG3"===N?{substanceClass:N,references:[],names:[],specifiedSubstanceG3:{parentSubstance:{},definition:{references:[]},grade:{references:[]}},codes:[],properties:[]}:"specifiedSubstanceG4m"===N?{substanceClass:N,specifiedSubstanceG4m:{parentSubstance:{},process:[{processName:"Process 1",sites:[{stages:[{stageNumber:"1",startingMaterials:[],processingMaterials:[],resultingMaterials:[],criticalParameters:[]}]}]}]}}:"polymer"===N?{substanceClass:N,references:[],names:[],polymer:{idealizedStructure:{},monomers:[]},codes:[],moieties:[],relationships:[],properties:[]}:{substanceClass:N,references:[],names:[],codes:[]},"specifiedSubstanceG4m"!==N&&(D.privateSubstance.access=["protected"],"specifiedSubstanceG2"!==N&&(D.privateSubstance.definitionLevel="COMPLETE",D.privateSubstance.definitionType="PRIMARY"))),D.subClass=D.privateSubstance.substanceClass,"chemical"===D.subClass?D.subClass="structure":"specifiedSubstanceG1"===D.subClass&&(D.subClass="specifiedSubstance"),null==D.privateSubstance[D.subClass]&&(D.privateSubstance[D.subClass]={}),D.initForm(),D.substanceEmitter.next(D.privateSubstance),le.next(),le.complete()})}},{key:"substanceFormAction",get:function(){return this.substanceFormActionEmitter.asObservable()}},{key:"initForm",value:function(){this.substanceFormActionEmitter.next("load")}},{key:"substance",get:function(){return this.substanceEmitter.asObservable()}},{key:"resetState",value:function(){var D=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(D)}},{key:"unloadSubstance",value:function(){this.allSitesArr=null,this.displaySequences=null,this.substanceEmitter.complete(),this.substanceDisulfideLinksEmitter.complete(),this.substanceGlycosylationEmitter.complete(),this.substanceLinksEmitter.complete(),this.substanceNamesEmitter.complete(),this.substanceOtherLinksEmitter.complete(),this.substanceStructuralModificationsEmitter.complete(),this.substanceCysteineEmitter.complete(),this.substanceEmitter=new e.t,this.substanceDisulfideLinksEmitter=new e.t,this.substanceGlycosylationEmitter=new e.t,this.substanceLinksEmitter=new e.t,this.substanceLinksEmitter=new e.t,this.substanceOtherLinksEmitter=new e.t,this.substanceStructuralModificationsEmitter=new e.t,this.substanceCysteineEmitter=new e.t,this.substanceFormActionEmitter.next("unload")}},{key:"ready",value:function(){var D=this;return new u.y(function(N){D.substanceEmitter.pipe((0,T.q)(1)).subscribe(function(I){N.next(),N.complete()})})}},{key:"setDefinitionFromDefRef",value:function(D){this.privateSubstance.structurallyDiverse?this.privateSubstance.structurallyDiverse.access=D:this.privateSubstance.protein?this.privateSubstance.protein.access=D:this.privateSubstance.structure?this.privateSubstance.structure.access=D:this.privateSubstance.mixture?this.privateSubstance.mixture.access=D:this.privateSubstance.polymer?this.privateSubstance.polymer.access=D:this.privateSubstance.nucleicAcid?this.privateSubstance.nucleicAcid.access=D:this.privateSubstance.specifiedSubstance&&(this.privateSubstance.specifiedSubstance.access=D),this.substanceEmitter.next(this.privateSubstance)}},{key:"getDefinitionForDefRef",value:function(){return this.privateSubstance.structurallyDiverse?this.privateSubstance.structurallyDiverse.access:this.privateSubstance.protein?this.privateSubstance.protein.access:this.privateSubstance.structure?this.privateSubstance.structure.access:this.privateSubstance.mixture?this.privateSubstance.mixture.access:this.privateSubstance.polymer?this.privateSubstance.polymer.access:this.privateSubstance.nucleicAcid?this.privateSubstance.nucleicAcid.access:this.privateSubstance.specifiedSubstance?this.privateSubstance.specifiedSubstance.access:void this.definitionEmitter.next(this.getDefinition())}},{key:"changeApproval",value:function(){var D=prompt("Enter new ApprovalID:");if(D){var N=this.privateSubstance.approvalID;this.privateSubstance.approvalID=D,alert('Approval ID changed from"'+N+'" to "'+D+'". Submit changes to save'),this.definitionEmitter.next(this.getDefinition())}}},{key:"switchType",value:function(D,N){var I={protein:["protein","modifications","properties"],chemical:["structure","moieties","modifications","properties"],structurallyDiverse:["structurallyDiverse","modifications","properties"],polymer:["polymer","modifications","properties"],nucleicAcid:["nucleicAcid","modifications","properties"],mixture:["mixture","modifications","properties"],specifiedSubstanceG1:[]};return I[N]&&I[N].forEach(function(L){D[L]&&delete D[L]}),D.substanceClass=N,"chemical"===N?D.structure={}:"protein"===N?D.protein={proteinType:""}:"nucleicAcid"===N?D.nucleicAcid={}:"mixture"===N?D.mixture={}:"structurallyDiverse"===N?D.structurallyDiverse={part:["whole"],$$diverseType:"whole"}:"specifiedSubstanceG1"===N?D.specifiedSubstance={}:"polymer"===N&&(D.polymer={idealizedStructure:{},monomers:[]}),alert("Substance type switched. Submit changes to save"),D}},{key:"setDefinitionPrivate",value:function(){this.privateSubstance.structurallyDiverse?this.setPrivate(this.privateSubstance.structurallyDiverse):this.privateSubstance.protein?this.setPrivate(this.privateSubstance.protein):this.privateSubstance.structure?this.setPrivate(this.privateSubstance.structure):this.privateSubstance.mixture?this.setPrivate(this.privateSubstance.mixture):this.privateSubstance.polymer?this.setPrivate(this.privateSubstance.polymer):this.privateSubstance.nucleicAcid?this.setPrivate(this.privateSubstance.nucleicAcid):this.privateSubstance.specifiedSubstance&&this.setPrivate(this.privateSubstance.specifiedSubstance)}},{key:"setPrivate",value:function(D){D.access=["protected"],alert("Substance definition now set to protected, please submit to save change")}},{key:"setDefinitionPublic",value:function(){this.privateSubstance.structurallyDiverse?this.setPublic(this.privateSubstance.structurallyDiverse):this.privateSubstance.protein?this.setPublic(this.privateSubstance.protein):this.privateSubstance.structure?this.setPublic(this.privateSubstance.structure):this.privateSubstance.mixture?this.setPublic(this.privateSubstance.mixture):this.privateSubstance.polymer?this.setPublic(this.privateSubstance.polymer):this.privateSubstance.nucleicAcid?this.setPublic(this.privateSubstance.nucleicAcid):this.privateSubstance.specifiedSubstance&&this.setPublic(this.privateSubstance.specifiedSubstance)}},{key:"conceptNonApproved",value:function(){"concept"===this.privateSubstance.substanceClass?(this.privateSubstance.status="non-approved",alert('Concept status set to "non approved", please submit to save changes')):alert("Can only change status of concept records")}},{key:"unapproveRecord",value:function(){var D=this.privateSubstance.approvalID;this.privateSubstance.approvalID=null,this.privateSubstance.status=null,this.privateSubstance.approved=null,this.privateSubstance.approvedBy=null,alert("Removed approvalID '"+D+"'. Submit record to save.")}},{key:"setPublic",value:function(D){D.access=[],alert("Substance definition set to be PUBLIC, please submit to save change")}},{key:"isSubstanceUpdated",get:function(){var D=JSON.stringify(this.privateSubstance);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.substanceStateHash!==this.utilsService.hashCode(D)}},{key:"autoSave",value:function(){var D=JSON.stringify(this.privateSubstance);return this.previousHash?!(this.previousHash===this.utilsService.hashCode(D)||(this.previousHash=this.utilsService.hashCode(D),0)):(this.previousHash=this.utilsService.hashCode(D),!1)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"definition",get:function(){var D=this;return new u.y(function(N){D.ready().subscribe(function(){var I=D.getDefinition();N.next(I),D.definitionEmitter.subscribe(function(L){N.next(L)})})})}},{key:"updateDefinition",value:function(D){this.privateSubstance.definitionLevel=D.definitionLevel,this.privateSubstance.deprecated=D.deprecated,this.privateSubstance.access=D.access,this.privateSubstance.created=D.created,this.privateSubstance.createdBy=D.createdBy,this.privateSubstance.lastEdited=D.lastEdited,this.privateSubstance.lastEditedBy=D.lastEditedBy,D.status&&(this.privateSubstance.status=D.status),D.approvalID&&(this.privateSubstance.approvalID=D.approvalID),this.privateSubstance[D.substanceClass]?this.privateSubstance[D.substanceClass].references=D.references:this.privateSubstance[D.substanceClass]={references:D.references},this.privateSubstance.definitionType!==D.definitionType&&"ALTERNATIVE"===D.definitionType&&(this.privateSubstance.names=[],this.privateSubstance.codes=[],this.substanceNamesEmitter.next(this.privateSubstance.names)),this.privateSubstance.definitionType=D.definitionType,this.definitionEmitter.next(this.getDefinition())}},{key:"getJson",value:function(){return this.privateSubstance}},{key:"getUuid",value:function(){return this.privateSubstance.uuid}},{key:"getClass",value:function(){return this.privateSubstance.substanceClass}},{key:"changeStatus",value:function(D){this.privateSubstance.status=D,alert("Status changed to "+D)}},{key:"getDefinition",value:function(){if(!this.privateSubstance[this.subClass]){this.privateSubstance[this.subClass]={references:[]};var D=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(D)}if(!this.privateSubstance[this.subClass].references){this.privateSubstance[this.subClass].references=[];var N=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(N)}if(!this.privateSubstance.tags){this.privateSubstance.tags=[];var I=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(I)}var L={uuid:this.privateSubstance[this.subClass].uuid||this.privateSubstance[this.subClass].id,substanceClass:this.subClass,definitionType:this.privateSubstance.definitionType,definitionLevel:this.privateSubstance.definitionLevel,deprecated:this.privateSubstance.deprecated,references:this.privateSubstance[this.subClass].references,access:this.privateSubstance.access,relationships:this.privateSubstance.relationships,created:this.privateSubstance.created,createdBy:this.privateSubstance.createdBy,lastEdited:this.privateSubstance.lastEdited,lastEditedBy:this.privateSubstance.lastEditedBy,_name:this.privateSubstance._name,_name_html:this.privateSubstance._nameHTML,tags:this.privateSubstance.tags};return this.privateSubstance.status&&(L.status=this.privateSubstance.status),this.privateSubstance.approvalID&&(L.approvalID=this.privateSubstance.approvalID),L}},{key:"allSites",get:function(){var D=this;return new u.y(function(N){D.allSitesArr||(D.allSitesArr=D.getAllSites()),N.next(D.allSitesArr),D.allSitesEmitter.subscribe(function(I){N.next(D.allSitesArr)})})}},{key:"emitAllsitesUpdate",value:function(){this.allSitesEmitter.next(this.getAllSites())}},{key:"getAllSites",value:function(){var D=[];if("protein"===this.privateSubstance.substanceClass&&(this.privateSubstance.protein.disulfideLinks&&this.privateSubstance.protein.disulfideLinks.forEach(function(I){I.sites&&I.sites.forEach(function(L){L.subunitIndex&&L.residueIndex&&D.push({residue:L.residueIndex,subunit:L.subunitIndex,type:"disulfide"})})}),this.privateSubstance.protein.otherLinks&&this.privateSubstance.protein.otherLinks.forEach(function(I){I.sites&&I.sites.forEach(function(L){L.subunitIndex&&L.residueIndex&&D.push({residue:L.residueIndex,subunit:L.subunitIndex,type:"other"})})}),this.privateSubstance.protein.glycosylation)){var N=this.privateSubstance.protein.glycosylation;N.CGlycosylationSites&&N.CGlycosylationSites.forEach(function(I){D.push({residue:I.residueIndex,subunit:I.subunitIndex,type:"C-Glycosylation"})}),N.NGlycosylationSites&&N.NGlycosylationSites.forEach(function(I){D.push({residue:I.residueIndex,subunit:I.subunitIndex,type:"N-Glycosylation"})}),N.OGlycosylationSites&&N.OGlycosylationSites.forEach(function(I){I.subunitIndex&&I.residueIndex&&D.push({residue:I.residueIndex,subunit:I.subunitIndex,type:"O-Glycosylation"})})}return this.privateSubstance.modifications.structuralModifications&&this.privateSubstance.modifications.structuralModifications.forEach(function(I){I.sites&&I.sites.forEach(function(L){L.subunitIndex&&L.residueIndex&&D.push({residue:L.residueIndex,subunit:L.subunitIndex,type:"modification"})})}),this.privateSubstance.properties&&this.privateSubstance.properties.forEach(function(I){"PROTEIN FEATURE"!==I.propertyType&&"NUCLEIC ACID FEATURE"!==I.propertyType||I.value.nonNumericValue.split(";").forEach(function(j){for(var le=j.split("-"),re=Number(le[0].split("_")[0]),W=Number(le[0].split("_")[1]);W<=Number(le[1].split("_")[1]);W++){var $={residue:Number(W),subunit:re,type:"feature"};D.push($)}})}),D}},{key:"recalculateAllSites",value:function(D){var N=this.getAllSites();N!==this.allSitesArr&&(this.allSitesArr=N,this.allSitesEmitter.next(this.allSitesArr))}},{key:"resolvedName",value:function(D){this.nameResolver.next(D)}},{key:"updateNucleicAcidDetails",value:function(D){this.privateSubstance.nucleicAcid.nucleicAcidType=D.nucleicAcidType,this.privateSubstance.nucleicAcid.nucleicAcidSubType=D.nucleicAcidSubType,this.privateSubstance.nucleicAcid.sequenceOrigin=D.sequenceOrigin,this.privateSubstance.nucleicAcid.sequenceType=D.sequenceType}},{key:"substanceNucleicAcid",get:function(){var D=this;return new u.y(function(N){D.ready().subscribe(function(I){null==D.privateSubstance.nucleicAcid&&(D.privateSubstance.nucleicAcid={nucleicAcidType:""}),N.next(D.privateSubstance.nucleicAcid),D.substanceNucleicAcidEmitter.subscribe(function(L){N.next(D.privateSubstance.nucleicAcid)})})})}},{key:"namesUpdated",value:function(){return this.substanceNamesEmitter.asObservable()}},{key:"substanceSubunits",get:function(){var D=this;return new u.y(function(N){D.ready().subscribe(function(){if("protein"===D.privateSubstance.substanceClass){if(!D.privateSubstance.protein.subunits){D.privateSubstance.protein.subunits=[];var I=JSON.stringify(D.privateSubstance);D.substanceStateHash=D.utilsService.hashCode(I)}N.next(D.privateSubstance.protein.subunits),D.substanceSubunitsEmitter.subscribe(function(j){N.next(D.privateSubstance.protein.subunits)})}else{if(!D.privateSubstance.nucleicAcid.subunits){D.privateSubstance.nucleicAcid.subunits=[];var L=JSON.stringify(D.privateSubstance);D.substanceStateHash=D.utilsService.hashCode(L)}N.next(D.privateSubstance.nucleicAcid.subunits),D.substanceSubunitsEmitter.subscribe(function(j){N.next(D.privateSubstance.nucleicAcid.subunits)})}})})}},{key:"subunitDisplaySequences",get:function(){var D=this;return new u.y(function(N){D.ready().subscribe(function(){D.displaySequences||(D.displaySequences=D.createSubunitDisplay()),N.next(D.displaySequences),D.displaySequencesEmitter.subscribe(function(I){D.displaySequences=I,N.next(D.displaySequences)})})})}},{key:"addSubstanceSubunit",value:function(){if("protein"===this.privateSubstance.substanceClass)this.privateSubstance.protein.subunits.push({references:[],access:[],sequence:"",subunitIndex:this.privateSubstance.protein.subunits.length+1}),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);else{var I=this.privateSubstance.nucleicAcid.subunits.length||0;this.privateSubstance.nucleicAcid.subunits.push({references:[],access:[],sequence:"",subunitIndex:I+=1}),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.emitSugarUpdate(),this.emitLinkUpdate()}}},{key:"deleteSubstanceSubunit",value:function(D){"protein"===this.privateSubstance.substanceClass?this.privateSubstance.protein.subunits.findIndex(function(L){return D.subunitIndex===L.subunitIndex})>-1&&(this.rearrangeSubunitIndexes("protein",D.subunitIndex),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits)):this.privateSubstance.nucleicAcid.subunits.findIndex(function(L){return D.subunitIndex===L.subunitIndex})>-1&&(this.rearrangeNAIndexes("nucleicAdid",D.subunitIndex),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.emitSugarUpdate(),this.emitLinkUpdate())}},{key:"rearrangeNAIndexes",value:function(D,N){var I=this.privateSubstance.nucleicAcid.subunits.findIndex(function(L){return N===L.subunitIndex});this.privateSubstance.nucleicAcid.subunits.splice(I,1),this.privateSubstance.nucleicAcid.subunits.length>I-1&&(this.privateSubstance.nucleicAcid.subunits.forEach(function(L){L.subunitIndex>N&&(L.subunitIndex=L.subunitIndex-1)}),this.privateSubstance.nucleicAcid.sugars&&(this.privateSubstance.nucleicAcid.sugars.forEach(function(L){L.sites&&(L.sites=L.sites.filter(function(j){return j.subunitIndex!==N}),L.sites.forEach(function(j){j.subunitIndex&&j.subunitIndex>N&&(j.subunitIndex=j.subunitIndex-1)}))}),this.emitSugarUpdate()),this.privateSubstance.nucleicAcid.linkages&&(this.privateSubstance.nucleicAcid.linkages.forEach(function(L){L.sites&&(L.sites=L.sites.filter(function(j){return j.subunitIndex!==N}),L.sites.forEach(function(j){j.subunitIndex&&j.subunitIndex>N&&(j.subunitIndex=j.subunitIndex-1)}))}),this.emitSugarUpdate()))}},{key:"rearrangeSubunitIndexes",value:function(D,N){var I=this.privateSubstance.protein.subunits.findIndex(function(j){return N===j.subunitIndex});if(this.privateSubstance.protein.subunits.splice(I,1),this.privateSubstance.protein.subunits.length>I-1){if(this.privateSubstance.protein.subunits.forEach(function(j){j.subunitIndex>N&&(j.subunitIndex=j.subunitIndex-1)}),this.privateSubstance.protein.disulfideLinks&&(this.privateSubstance.protein.disulfideLinks.forEach(function(j){j.sites&&j.sites.forEach(function(le){le.subunitIndex===N&&(le={}),le.subunitIndex&&le.subunitIndex>N&&(le.subunitIndex=le.subunitIndex-1)})}),this.emitDisulfideLinkUpdate()),this.privateSubstance.protein.otherLinks&&(this.privateSubstance.protein.otherLinks.forEach(function(j){j.sites&&(j.sites=j.sites.filter(function(le){return le.subunitIndex!==N}),j.sites.forEach(function(le){le.subunitIndex&&le.subunitIndex>N&&(le.subunitIndex=le.subunitIndex-1)}))}),this.emitOtherLinkUpdate()),this.privateSubstance.protein.glycosylation){var L=this.privateSubstance.protein.glycosylation;L.CGlycosylationSites&&(L.CGlycosylationSites=L.CGlycosylationSites.filter(function(j){return j.subunitIndex!==N}),L.CGlycosylationSites.forEach(function(j){j.subunitIndex&&j.subunitIndex>N&&(j.subunitIndex=j.subunitIndex-1)})),L.NGlycosylationSites&&(L.NGlycosylationSites=L.NGlycosylationSites.filter(function(j){return j.subunitIndex!==N}),L.NGlycosylationSites.forEach(function(j){j.subunitIndex&&j.subunitIndex>N&&(j.subunitIndex=j.subunitIndex-1)})),L.OGlycosylationSites&&(L.OGlycosylationSites=L.OGlycosylationSites.filter(function(j){return j.subunitIndex!==N}),L.OGlycosylationSites.forEach(function(j){j.subunitIndex&&j.subunitIndex>N&&(j.subunitIndex=j.subunitIndex-1)})),this.emitGlycosylationUpdate()}this.privateSubstance.modifications.structuralModifications&&(this.privateSubstance.modifications.structuralModifications.forEach(function(j){j.sites&&(j.sites=j.sites.filter(function(le){return le.subunitIndex!==N}),j.sites.forEach(function(le){le.subunitIndex&&le.subunitIndex>N&&(le.subunitIndex=le.subunitIndex-1)}))}),this.emitStructuralModificationsUpdate()),this.privateSubstance.properties&&this.privateSubstance.properties.forEach(function(j){"PROTEIN FEATURE"!==j.propertyType&&"NUCLEIC ACID FEATURE"!==j.propertyType||j.value.nonNumericValue.split(";").forEach(function(re){})})}}},{key:"emitSubunitUpdate",value:function(){"protein"===this.privateSubstance.substanceClass?(this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits),this.displaySequencesEmitter.next(this.createSubunitDisplay())):(this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.emitSugarUpdate(),this.emitLinkUpdate())}},{key:"otherLinksUpdated",value:function(){return this.substanceOtherLinksEmitter.asObservable()}},{key:"emitOtherLinkUpdate",value:function(){this.recalculateAllSites("other"),this.substanceOtherLinksEmitter.next(this.privateSubstance.protein.otherLinks)}},{key:"copyDisulfideLinks",value:function(D,N){for(var I=JSON.parse(JSON.stringify(this.privateSubstance.protein.disulfideLinks)),j=[],le=0;le0)for(var L=0;L-1&&(this.privateSubstance.nucleicAcid.sugars.splice(N,1),this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars))}},{key:"emitSugarUpdate",value:function(){this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars)}},{key:"changeReason",get:function(){var D=this;return new u.y(function(N){D.ready().subscribe(function(){N.next(D.privateSubstance.changeReason),D.substanceChangeReasonEmitter.subscribe(function(I){N.next(D.privateSubstance.changeReason)})})})}},{key:"updateChangeReason",value:function(D){this.privateSubstance.changeReason=D,this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason)}},{key:"validateSubstance",value:function(){var D=this;return new u.y(function(N){var I=D.cleanSubstance();D.substanceService.validateSubstance(I).subscribe(function(L){if(L.validationMessages){for(var j=0;j0)for(var I=this.privateSubstance.protein.disulfideLinks.length;I>=0;I--)this.privateSubstance.protein.disulfideLinks[I]&&this.privateSubstance.protein.disulfideLinks[I].sites&&this.privateSubstance.protein.disulfideLinks[I].sites[0]&&this.privateSubstance.protein.disulfideLinks[I].sites[1]&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[I].sites[0]).length&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[I].sites[1]).length&&this.privateSubstance.protein.disulfideLinks.splice(I,1);var L=JSON.stringify(this.privateSubstance),j=JSON.parse(L),re=this.cleanObject(j).deletedUuids;return re.length>0&&(L=JSON.stringify(j),re.forEach(function(W){L=L.replace(new RegExp('"'.concat(W,'"'),"g"),"")}),L=(L=(L=L.replace(/,[,]+/g,",")).replace(/\[,/g,"[")).replace(/,\]/g,"]"),j=JSON.parse(L)),j}},{key:"cleanObject",value:function(D){var N=this,I=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if("[object Object]"===Object.prototype.toString.call(D)){var L=null!=D.$$deletedCode;return L?null!=D.uuid&&I.push(D.uuid):(delete D.$$deletedCode,Object.keys(D).forEach(function(j){"[object Array]"===Object.prototype.toString.call(D[j])?D[j]=D[j].filter(function(le){return!N.cleanObject(le,I).isDeleted}):"[object Object]"===Object.prototype.toString.call(D[j])&&N.cleanObject(D[j],I)})),{deletedUuids:I,isDeleted:L}}if("[object Array]"!==Object.prototype.toString.call(D))return{deletedUuids:I,isDeleted:!1};D.forEach(function(j){N.cleanObject(j,I)})}},{key:"getMethod",value:function(){return this.method}},{key:"structureDuplicateCheck",value:function(){var D=this;return new u.y(function(N){D.structureService.duplicateCheck(D.privateSubstance).subscribe(function(I){N.next(I),N.complete()})})}},{key:"getUNII",value:function(){return this.privateSubstance._approvalIDDisplay}},{key:"approveSubstance",value:function(){var D=this;return new u.y(function(N){var I={isSuccessfull:!0};D.substanceService.approveSubstance(D.privateSubstance.uuid).subscribe(function(L){D.privateSubstance=L,I.uuid=L.uuid,D.definitionEmitter.next(D.getDefinition()),"protein"===D.privateSubstance.substanceClass?D.substanceSubunitsEmitter.next(D.privateSubstance.protein.subunits):"nucleicAcid"===D.privateSubstance.substanceClass?(D.substanceSugarsEmitter.next(D.privateSubstance.nucleicAcid.sugars),D.substanceSubunitsEmitter.next(D.privateSubstance.nucleicAcid.subunits)):"mixture"===D.privateSubstance.substanceClass&&D.substanceSubunitsEmitter.next(D.privateSubstance.mixture.components),D.substanceChangeReasonEmitter.next(D.privateSubstance.changeReason),D.resetState(),D.substanceEmitter.next(D.privateSubstance),N.next(I),N.complete()},function(L){I.isSuccessfull=!1,L&&L.error&&L.error.validationMessages?I.validationMessages=L.error.validationMessages:I.serverError=L,N.error(I),N.complete()})})}},{key:"saveSubstance",value:function(){var D=this;return new u.y(function(N){var I={isSuccessfull:!0};null!=D.privateSubstance.structure&&!D.privateSubstance.structure.uuid&&(D.privateSubstance.structure.id=D.utilsService.newUUID(),D.privateSubstance.structure.uuid=D.privateSubstance.structure.id),null!=D.privateSubstance.moieties&&D.privateSubstance.moieties.length&&D.privateSubstance.moieties.forEach(function(j){j.uuid||(j.id=D.utilsService.newUUID(),j.uuid=j.id)});var L=D.cleanSubstance();D.substanceService.saveSubstance(L,D.method).subscribe(function(j){D.privateSubstance=j,I.uuid=j.uuid,D.definitionEmitter.next(D.getDefinition()),"protein"===D.privateSubstance.substanceClass?D.substanceSubunitsEmitter.next(D.privateSubstance.protein.subunits):"nucleicAcid"===D.privateSubstance.substanceClass?(D.substanceSugarsEmitter.next(D.privateSubstance.nucleicAcid.sugars),D.substanceSubunitsEmitter.next(D.privateSubstance.nucleicAcid.subunits)):"mixture"===D.privateSubstance.substanceClass&&D.substanceSubunitsEmitter.next(D.privateSubstance.mixture.components),j.fileUrl&&(I.fileUrl=j.fileUrl),D.substanceChangeReasonEmitter.next(D.privateSubstance.changeReason),D.substanceService.getSubstanceDetails(I.uuid).subscribe(function(le){D.privateSubstance=le,D.resetState(),D.substanceEmitter.next(D.privateSubstance),N.next(I),N.complete()},function(le){N.next(I),N.complete()})},function(j){I.isSuccessfull=!1,j&&j.error&&j.error.validationMessages?I.validationMessages=j.error.validationMessages:I.serverError=j,N.error(I),N.complete()})})}},{key:"siteDisplayToSite",value:function(D){var N=D.split("_");if(null===D.match(/^[0-9][0-9]*_[0-9][0-9]*$/g))throw new Error('"'+D+'" is not a valid shorthand for a site. Must be of form "{subunit}_{residue}"');return{subunitIndex:N[0]-0,residueIndex:N[1]-0}}},{key:"importSubstance",value:function(D,N){this.privateSubstance=D,this.method=N&&"update"===N?null:"import",this.definitionEmitter.next(this.getDefinition()),"protein"===this.privateSubstance.substanceClass?this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits):"nucleicAcid"===this.privateSubstance.substanceClass?(this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits)):"mixture"===this.privateSubstance.substanceClass&&this.substanceSubunitsEmitter.next(this.privateSubstance.mixture.components),this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason),this.resetState(),this.substanceEmitter.next(this.privateSubstance)}},{key:"stringToSites",value:function(D){if(!(D=D.replace(/ /g,"")))return[];var N=D.split(";"),I=[];for(var L in N){var j=N[L];if(""!==j){var le=j.split("-");if(le.length>1){var re=this.siteDisplayToSite(le[0]),W=this.siteDisplayToSite(le[1]);if(re.subunitIndex!==W.subunitIndex)throw new Error('"'+le+'" is not a valid shorthand for a site range. Must be between the same subunits.');if(W.residueIndex<=re.residueIndex)throw new Error('"'+le+'" is not a valid shorthand for a site range. Second residue index must be greater than first.');I.push(re);for(var $=re.residueIndex+1;$0&&(le+=0!==L?N+"_"+L+"-"+N+"_"+I:N+"_"+I),le}},{key:"createSubunitDisplay",value:function(){var D=[];D="protein"===this.privateSubstance.substanceClass?this.privateSubstance.protein.subunits:this.privateSubstance.nucleicAcid.subunits;performance.now();var I=[],L=1;return D.forEach(function(re){var W=[],$=[];if(null!=re.sequence&&re.sequence.length>0)for(var be=0;be=re.sequence.length?($.push([be,re.sequence.length]),(be+10)%50!=0&&W.push($)):$.push([be,be+10]),(be+10)%50==0&&(W.push($),$=[]);for(var z={subunitIndex:L,subunits:[],subsections:W,subgroups:$},d=0,Q=re.sequence&&re.sequence.length||0;d0),u.xp6(1),u.Q6J("ngIf",!We.disulfideArray||0===We.disulfideArray.length)}}function ue(nt,at){if(1&nt){var We=u.EpF();u.TgZ(0,"div",28),u.TgZ(1,"mat-form-field",29),u.TgZ(2,"mat-label"),u._uU(3,"Select link type to add"),u.qZA(),u.TgZ(4,"mat-select",30),u.NdJ("valueChange",function(ut){return u.CHM(We),u.oxw().switchType(ut)}),u.TgZ(5,"mat-option",31),u.TgZ(6,"span"),u._uU(7,"Other Link"),u.qZA(),u.qZA(),u.TgZ(8,"mat-option",32),u.TgZ(9,"span"),u._uU(10,"C-Glycosylation Sites"),u.qZA(),u.qZA(),u.TgZ(11,"mat-option",33),u.TgZ(12,"span"),u._uU(13,"N-Glycosylation Sites"),u.qZA(),u.qZA(),u.TgZ(14,"mat-option",34),u.TgZ(15,"span"),u._uU(16,"O-Glycosylation Sites"),u.qZA(),u.qZA(),u.TgZ(17,"mat-option",35),u.TgZ(18,"span"),u._uU(19,"Disulfide Link"),u.qZA(),u.qZA(),u.TgZ(20,"mat-option",36),u.TgZ(21,"span"),u._uU(22,"Structural Modification"),u.qZA(),u.qZA(),u.qZA(),u.qZA(),u.qZA()}}function lt(nt,at){1&nt&&(u.TgZ(0,"div",37),u._uU(1," Key: "),u._UZ(2,"br"),u.TgZ(3,"div",38),u.TgZ(4,"div",39),u._UZ(5,"div",40),u._uU(6,"C-Glycosylation"),u.qZA(),u.TgZ(7,"div",39),u._UZ(8,"div",41),u._uU(9,"Other Link"),u.qZA(),u.qZA(),u.TgZ(10,"div",38),u.TgZ(11,"div",39),u._UZ(12,"div",42),u._uU(13,"O-Glycosylation"),u.qZA(),u.TgZ(14,"div",39),u._UZ(15,"div",43),u._uU(16,"Modification"),u.qZA(),u.qZA(),u.TgZ(17,"div",38),u.TgZ(18,"div",39),u._UZ(19,"div",44),u._uU(20,"N-Glycosylation"),u.qZA(),u.TgZ(21,"div",39),u._UZ(22,"div",45),u._uU(23,"Disulfide Link"),u.qZA(),u.qZA(),u.TgZ(24,"div",38),u.TgZ(25,"div",39),u._UZ(26,"div",46),u._uU(27,"Feature"),u.qZA(),u.TgZ(28,"div",39),u._UZ(29,"div",47),u._uU(30,"currently selected"),u.qZA(),u.qZA(),u.qZA())}function Xe(nt,at){if(1&nt){var We=u.EpF();u.TgZ(0,"span",58),u.TgZ(1,"a",59),u.NdJ("click",function(an){var It=u.CHM(We).$implicit,$e=u.oxw(3).$implicit;return u.oxw(2).toggleSite($e.subunitIndex,It.unitIndex,It.unitValue,an)}),u._uU(2),u.qZA(),u.qZA()}if(2&nt){var xe=at.$implicit,ut=u.oxw().last,Fe=u.oxw().last,et=u.oxw().$implicit,Ht=u.oxw(2);u.Q6J("ngClass",Fe&&ut?"last-units":""),u.xp6(1),u.s9C("matTooltip",Ht.getTooltipMessage(et.subunitIndex,xe.unitIndex,xe.unitValue,xe.class||"").join("\n")),u.Q6J("id",et.subunitIndex+"_"+xe.unitIndex)("ngClass",xe.class)("@errorFlash",void 0),u.xp6(1),u.Oqu(xe.unitValue)}}function mt(nt,at){if(1&nt&&(u.TgZ(0,"div",54),u.TgZ(1,"div",55),u._uU(2),u.qZA(),u.TgZ(3,"div",56),u.YNc(4,Xe,3,6,"span",57),u.qZA(),u.qZA()),2&nt){var We=at.$implicit,xe=at.last,ut=u.oxw().last,Fe=u.oxw().$implicit;u.Q6J("ngClass",ut&&xe?"last-section":""),u.xp6(2),u.Oqu(We[1]),u.xp6(2),u.Q6J("ngForOf",Fe.subunits.slice(We[0],We[1]))}}function wt(nt,at){if(1&nt&&(u.TgZ(0,"div",52),u.YNc(1,mt,5,3,"div",53),u.qZA()),2&nt){var We=at.$implicit;u.xp6(1),u.Q6J("ngForOf",We)}}function Pt(nt,at){if(1&nt&&(u.TgZ(0,"div",49),u.TgZ(1,"h4"),u._uU(2),u.qZA(),u.TgZ(3,"div",50),u.YNc(4,wt,2,1,"div",51),u.qZA(),u.qZA()),2&nt){var We=at.$implicit;u.xp6(2),u.hij("Subunit ",We.subunitIndex,""),u.xp6(2),u.Q6J("ngForOf",We.subsections)}}function Pe(nt,at){if(1&nt&&(u.TgZ(0,"span"),u.YNc(1,Pt,5,2,"div",48),u.qZA()),2&nt){var We=u.oxw();u.xp6(1),u.Q6J("ngForOf",We.subunitSequences)}}function ze(nt,at){if(1&nt&&(u.TgZ(0,"div"),u._uU(1," Total sequence length of "),u.TgZ(2,"b"),u._uU(3),u.qZA(),u._uU(4," is too long to display. Please enter sites manually "),u.qZA()),2&nt){var We=u.oxw();u.xp6(3),u.Oqu(We.siteTotal)}}var ft=function(){var nt=function(){function at(We,xe,ut,Fe,et){(0,S.Z)(this,at),this.substanceFormService=We,this.substanceFormLinksService=xe,this.gaService=ut,this.cvService=Fe,this.render=et,this.sitesUpdate=new u.vpe,this.featureUpdate=new u.vpe,this.disulfidesUpdate=new u.vpe,this.cardTypeUpdate=new u.vpe,this.privateFeature={name:"",siteRange:""},this.sites=[],this.allSites=[],this.vocabulary={},this.subscriptions=[],this.newFeature=[],this.subunitSequences=[],this.currentState="initial",this.newFeatureArray=[],this.valid=!0,this.disulfideArray=[],this.showStyle=!0}return(0,t.Z)(at,[{key:"feature",get:function(){return this.privateFeature},set:function(xe){this.privateFeature=xe}},{key:"ngOnInit",value:function(){var xe=this;this.substanceFormService.definition.subscribe(function(Fe){xe.substanceType=Fe.substanceClass}).unsubscribe(),this.getVocabularies(),this.link&&this.link.length>0?(this.sites=this.link,this.allSites=[],this.updateDisplay(),this.sitesUpdate.emit(this.sites)):this.link=[],this.feature&&this.convertFeature(),this.selectState="first",this.startingCard=this.card}},{key:"ngAfterViewInit",value:function(){var xe=this;this.siteTotal=0,this.link.length&&0!==this.link.length?1===this.link.length?this.selectState="last":2===this.link.length&&(this.selectState="finished"):this.selectState="first",setTimeout(function(){var ut=xe.substanceFormService.subunitDisplaySequences.subscribe(function(nn){xe.subunitSequences=nn,xe.subunitSequences.forEach(function(an){xe.siteTotal=xe.siteTotal+an.subunits.length,"disulfide"===xe.card&&an.subunits.forEach(function(kt){kt.class="C"!==kt.unitValue?"unavailable":"cys"}),xe.showStyle=!(xe.siteTotal>5e3)}),xe.feature&&xe.convertFeature()});xe.subscriptions.push(ut);var Fe=xe.substanceFormService.allSites.subscribe(function(nn){xe.allSites=xe.allSites.concat(nn)});if(xe.subscriptions.push(Fe),"link"===xe.card){var et=xe.substanceFormLinksService.substanceLinks.subscribe(function(nn){nn.forEach(function(an){an.sites&&an.sites.forEach(function(kt){xe.allSites.push({residue:kt.residueIndex,subunit:kt.subunitIndex,type:"other"})})})});xe.subscriptions.push(et)}else if("sugar"===xe.card){var Ht=xe.substanceFormService.substanceSugars.subscribe(function(nn){nn.forEach(function(an){an.sites&&an.sites.forEach(function(kt){xe.allSites.push({residue:kt.residueIndex,subunit:kt.subunitIndex,type:"other"})})})});xe.subscriptions.push(Ht)}setTimeout(function(){xe.addStyle()},100)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(xe){xe.unsubscribe()})}},{key:"emitUpdate",value:function(xe){this.privateFeature||(this.privateFeature={name:this.featureName,siteRange:""}),this.featureUpdate.emit(this.privateFeature),this.privateFeature.name=this.featureName}},{key:"getVocabularies",value:function(){var xe=this;this.cvService.getDomainVocabulary("AMINO_ACID_RESIDUE").subscribe(function(ut){xe.vocabulary=ut.AMINO_ACID_RESIDUE.dictionary},function(ut){})}},{key:"switchType",value:function(xe){var ut=xe;this.card=ut,this.sites=[],this.features=[],this.sitesDisplay="",this.selectState="first",this.cardTypeUpdate.emit(ut),this.addStyle()}},{key:"getTooltipMessage",value:function(xe,ut,Fe,et){var Ht=void 0===this.vocabulary[Fe]?"UNDEFINED":this.vocabulary[Fe].display,nn=[],an={modification:"Structural Modification",other:"Other Link","C-Glycosylation":"C-Glycosylation","N-Glycosylation":"N-Glycosylation","O-Glycosylation":"O-Glycosylation",feature:this.substanceType.toUpperCase()+" Feature",disulfide:"Disulfide Link"};return nn.push("".concat(xe," - ").concat(ut,": ").concat(Fe.toUpperCase()," (").concat(Ht,")")),et.split(" ").forEach(function(It){nn.push(an[It]||"")}),nn}},{key:"updateDisplay",value:function(){this.sites=this.sites.sort(function(xe,ut){return xe.subUnitIndex>ut.subunitIndex?1:xe.subunitIndexut.residueIndex?1:xe.residueIndex0?(this.sites[0]=ut[0]?ut[0]:{},this.sites[1]=ut[1]?ut[1]:{},this.valid=!0,this.sitesDisplay=xe,this.addStyle()):this.valid=!1:(this.sites=ut,this.addStyle(),this.sitesUpdate.emit(this.sites))),this.valid=!0,this.sitesDisplay=xe}catch(Fe){console.log(Fe),this.valid=!1}}},{key:"removeFeature",value:function(){this.newFeature[1]?(this.addFeature(this.newFeature,!0),this.addStyle(),this.selectState="first"):this.newFeature[0]&&(this.subunitSequences[this.newFeature[0].subunitIndex-1].subunits[this.newFeature[0].residueIndex-1].class=""),this.newFeature=[]}},{key:"addFeature",value:function(xe,ut){if(xe[0].subunitIndex===xe[1].subunitIndex){var Fe=xe[0].subunitIndex,et=xe[0].residueIndex,Ht=xe[1].residueIndex;xe[0].residueIndex>xe[1].residueIndex&&(et=xe[1].residueIndex,Ht=xe[0].residueIndex);for(var nn=et;nn<=Ht;nn++)this.subunitSequences[Fe-1].subunits[nn-1].class=ut?"":"chosen"}}},{key:"deleteFeature",value:function(xe){for(var ut=xe[0].residueIndex;ut<=xe[1].residueIndex;ut++)this.subunitSequences[xe[0].subunitIndex-1].subunits[ut-1].class="";this.newFeatureArray=this.newFeatureArray.filter(function(Fe){return xe[0]!==Fe[0]&&xe[1]!==Fe[1]})}},{key:"pushFeature",value:function(){2===this.newFeature.length&&(this.newFeatureArray.push(this.newFeature),this.newFeature=[],this.selectState="first")}},{key:"drawFeature",value:function(xe){for(var ut=xe.siteRange.split("-"),Fe=Number(ut[0].split("_")[1]),et=Number(ut[1].split("_")[1]),Ht=Number(ut[0].split("_")[0]),nn=Fe;nn<=et;nn++)this.subunitSequences[Ht-1].subunits[nn-1].class="feature"}},{key:"toggleFeatureSite",value:function(xe,ut,Fe,et){var Ht={subunitIndex:xe,residueIndex:ut};if("first"===this.selectState)this.newFeature[0]=Ht,this.render.addClass(et.target,"chosen"),this.selectState="last";else if("last"===this.selectState)if(this.newFeature[0].subunitIndex===Ht.subunitIndex&&this.newFeature[0].residueIndex===Ht.residueIndex)this.selectState="first",this.render.removeClass(et.target,"chosen");else{this.newFeature[1]=Ht,this.addFeature(this.newFeature),this.selectState="finished";var nn="";this.newFeatureArray.forEach(function(kt){nn=nn+(kt[0].subunitIndex+"_")+kt[0].residueIndex+"-"+kt[1].subunitIndex+"_"+kt[1].residueIndex+";"}),this.privateFeature={name:this.featureName||"",siteRange:nn=nn+(this.newFeature[0].subunitIndex+"_")+this.newFeature[0].residueIndex+"-"+this.newFeature[1].subunitIndex+"_"+this.newFeature[1].residueIndex},this.featureUpdate.emit(this.privateFeature)}else if("finished"===this.selectState){this.pushFeature(),this.newFeature[0]=Ht,this.render.addClass(et.target,"chosen"),this.selectState="last";var an="";this.newFeatureArray.forEach(function(kt){an=an+(kt[0].subunitIndex+"_")+kt[0].residueIndex+"-"+kt[1].subunitIndex+"_"+kt[1].residueIndex}),this.privateFeature={name:this.featureName||"",siteRange:an},this.featureUpdate.emit(this.privateFeature)}}},{key:"convertFeature",value:function(){var xe=this;this.newFeatureArray=[],this.feature.siteRange.split(";").forEach(function(Fe){var et=Fe.split("-"),Ht=Number(et[0].split("_")[1]),nn=Number(et[1].split("_")[1]),an=Number(et[0].split("_")[0]),kt=[{subunitIndex:an,residueIndex:Ht},{subunitIndex:an,residueIndex:nn}];xe.newFeatureArray.push(kt),xe.addFeature(kt)}),this.newFeature=[],this.featureName=this.feature.name,this.selectState="first"}}]),at}();return nt.\u0275fac=function(We){return new(We||nt)(u.Y36(s.B),u.Y36(y.e),u.Y36(h.$),u.Y36(b.I),u.Y36(u.Qsj))},nt.\u0275cmp=u.Xpm({type:nt,selectors:[["app-subunit-selector"]],inputs:{card:"card",link:"link",feature:"feature"},outputs:{sitesUpdate:"sitesUpdate",featureUpdate:"featureUpdate",disulfidesUpdate:"disulfidesUpdate",cardTypeUpdate:"cardTypeUpdate"},decls:10,vars:7,consts:[[1,"form-header"],[1,"form-input"],[4,"ngIf"],["class","card-selector",4,"ngIf"],["class","key-row",4,"ngIf"],["class","disulfide-form",3,"ngClass",4,"ngIf"],[1,"sites-input",3,"ngModel","ngClass","ngModelChange"],[1,"disulfide-form",3,"ngClass"],[1,"sites-input","disulfide-display",3,"ngModel","ngModelChange"],[1,"clear-button"],["mat-icon-button","","matTooltip","Clear Selection",3,"click"],["svgIcon","clear"],[1,"cysteine-message"],[1,"form-row-feature"],[1,"name-type","mat-form-field"],["matInput","","placeholder","Name","name","name",1,"sites-input",3,"ngModel","ngModelChange","change"],[1,"key-value-pair"],[1,"key"],[1,"value"],["class","link-cont",4,"ngFor","ngForOf"],[1,"bold"],["mat-icon-button","","matTooltip","Clear Current Selection",3,"click"],[1,"form-row-2"],[1,"feature-step"],[1,"link-cont"],["matTooltip","Delete sequence section",1,"featlink",3,"click"],["class","note",4,"ngIf"],[1,"note"],[1,"card-selector"],[1,"top-padding"],["name","food",3,"valueChange"],["value","other","disabled",""],["value","CGlycosylation"],["value","NGlycosylation"],["value","OGlycosylation"],["value","disulfide"],["value","modification","disabled",""],[1,"key-row"],[1,"key-container"],[1,"key-label"],[1,"C-Glycosylation","key-color"],[1,"other","key-color"],[1,"O-Glycosylation","key-color"],[1,"modification","key-color"],[1,"N-Glycosylation","key-color"],[1,"disulfide","key-color"],[1,"feature","key-color"],[1,"chosen","key-color"],["class","subunit-sequence",4,"ngFor","ngForOf"],[1,"subunit-sequence"],[1,"responsive"],["class","sequence-section-group",4,"ngFor","ngForOf"],[1,"sequence-section-group"],["class","sequence-section",3,"ngClass",4,"ngFor","ngForOf"],[1,"sequence-section",3,"ngClass"],[1,"section-number"],[1,"section-units-container"],["class","section-unit",3,"ngClass",4,"ngFor","ngForOf"],[1,"section-unit",3,"ngClass"],["matTooltipClass","unit-tooltip",1,"selectedSite","siteref",3,"id","ngClass","matTooltip","click"]],template:function(We,xe){1&We&&(u.TgZ(0,"div",0),u.TgZ(1,"div",1),u.YNc(2,re,4,2,"div",2),u.YNc(3,te,23,8,"div",2),u.YNc(4,ve,10,5,"div",2),u.YNc(5,ue,23,0,"div",3),u.qZA(),u.YNc(6,lt,31,0,"div",4),u.qZA(),u.TgZ(7,"mat-dialog-content"),u.YNc(8,Pe,2,1,"span",2),u.YNc(9,ze,5,1,"div",2),u.qZA()),2&We&&(u.xp6(2),u.Q6J("ngIf","feature"!==xe.card&&"multi-disulfide"!==xe.card),u.xp6(1),u.Q6J("ngIf","feature"==xe.card),u.xp6(1),u.Q6J("ngIf","multi-disulfide"===xe.card),u.xp6(1),u.Q6J("ngIf","any"===xe.startingCard),u.xp6(1),u.Q6J("ngIf","protein"===xe.substanceType),u.xp6(2),u.Q6J("ngIf",xe.showStyle),u.xp6(1),u.Q6J("ngIf",!xe.showStyle))},directives:[o.O5,Y.Fj,Y.JJ,Y.On,o.mk,q.lW,B.gM,k.Hw,D.KE,D.hX,N.Nt,o.sg,I.gD,L.ey,e.xY],styles:[".details[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:none}.details[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:block;box-sizing:border-box}.form-fields[_ngcontent-%COMP%]{position:sticky;top:0}.sites-input[_ngcontent-%COMP%]{width:70%}.show[_ngcontent-%COMP%]{display:block}.hide[_ngcontent-%COMP%]{display:none}.top-padding[_ngcontent-%COMP%]{padding-top:10px}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block;box-sizing:border-box}.raw[_ngcontent-%COMP%] .subunit[_ngcontent-%COMP%]{display:block}.raw[_ngcontent-%COMP%] .subunit-sequence[_ngcontent-%COMP%]{display:none}.subunit-sequence[_ngcontent-%COMP%]{margin-bottom:30px}.sequence-section-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;margin-bottom:10px}.section-number[_ngcontent-%COMP%]{text-align:right;padding:0 10px;font-size:.8em}.sequence-section[_ngcontent-%COMP%]{-ms-flex-positive:0;flex-grow:0;padding:0 10px;-ms-flex-preferred-size:20%;flex-basis:20%;-ms-flex-negative:0;flex-shrink:0}.section-units-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.section-units-container[_ngcontent-%COMP%] .section-unit[_ngcontent-%COMP%]:hover{cursor:default}.subunit[_ngcontent-%COMP%]{padding-top:5px;padding-bottom:20px}.subunit[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}.raw-sequence[_ngcontent-%COMP%]{word-break:break-all;line-height:26px}.filters-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.subunit-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-header[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.form-header[_ngcontent-%COMP%] .form-input[_ngcontent-%COMP%]{width:75%}.form-header[_ngcontent-%COMP%] .key-row[_ngcontent-%COMP%]{width:25%}.key-row[_ngcontent-%COMP%]{-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:end;align-items:flex-end;width:100%}.key-row[_ngcontent-%COMP%] .key-container[_ngcontent-%COMP%]{width:250px;-ms-flex-align:end;align-items:flex-end;display:-ms-flexbox;display:flex;font-size:13px}.key-row[_ngcontent-%COMP%] .key-container[_ngcontent-%COMP%] .key-label[_ngcontent-%COMP%]{width:125px;display:-ms-flexbox;display:flex;padding-bottom:5px}.unit-tooltip[_ngcontent-%COMP%], .mat-tooltip[_ngcontent-%COMP%]{white-space:pre-line!important}.key-color[_ngcontent-%COMP%]{width:15px;height:18px;padding-right:5px}.disulfide[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--disulfide-color)}.other[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--regular-darkslateblue-color)}.glycosylation[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--glycosylation-color)}.N-Glycosylation[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--n-glycosylation-color)}.C-Glycosylation[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--regular-grey-color)}.O-Glycosylation[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--o-glycosylation-color)}.feature[_ngcontent-%COMP%]{border-top:1px solid var(--regular-magenta-color);border-bottom:1px solid var(--regular-magenta-color)}.modification[_ngcontent-%COMP%]{color:var(--regular-white-color);background-color:var(--regular-darkgreen-color)}.chosen[_ngcontent-%COMP%]{color:var(--regular-black-color)!important;background-color:var(--regular-turquoise-color)!important}.new-disulfide[_ngcontent-%COMP%]{color:var(--regular-black-color)!important;background-color:var(--regular-lightskyblue-color)!important}.selectedSite[_ngcontent-%COMP%]{padding-left:1px;padding-right:1px}.feature-step[_ngcontent-%COMP%]{width:50%;font-size:15px}.feature-display[_ngcontent-%COMP%]{width:30%}.name-type[_ngcontent-%COMP%]{width:40%;padding-right:50px}.key-value-pair[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-item-align:start;align-self:flex-start;width:50%}.key-value-pair[_ngcontent-%COMP%] .key[_ngcontent-%COMP%]{font-size:11px;padding-bottom:3.5px;line-height:11px;color:var(--dark-label-color);font-weight:400;font-family:Roboto,Helvetica Neue,sans-serif;width:55px}.key-value-pair[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-size:15px}.key-value-pair[_ngcontent-%COMP%] .bold[_ngcontent-%COMP%]{font-weight:700}.siteref[_ngcontent-%COMP%]{display:block;width:15.5px!important;text-align:center}.featlink[_ngcontent-%COMP%]{padding-right:7px;color:var(--primary-color)}.featlink[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{font-weight:700}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.form-row-feature[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start}.form-row-feature[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row-feature[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%], .form-row-feature[_ngcontent-%COMP%] .code-system-type[_ngcontent-%COMP%], .form-row-feature[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row-feature[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .form-row-feature[_ngcontent-%COMP%] .url[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.clear-button[_ngcontent-%COMP%]{width:40px}.disulfide-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start}.disulfide-display[_ngcontent-%COMP%]{width:100px}.cys[_ngcontent-%COMP%]{color:var(--regular-black-color);font-weight:500}.unavailable[_ngcontent-%COMP%]{color:var(--regular-lightgray-color)!important}.invalid_blink[_ngcontent-%COMP%]{animation:blinker .5s linear 1}@keyframes blinker{50%{opacity:0}}.invalid[_ngcontent-%COMP%]{border:solid var(--regular-red-color);color:var(--regular-red-color)}.valid[_ngcontent-%COMP%]{color:var(--regular-black-color)}.invalid-cysteine[_ngcontent-%COMP%]{color:var(--regular-red-color)}.last-section[_ngcontent-%COMP%]{-ms-flex-preferred-size:0!important;flex-basis:0!important}.note[_ngcontent-%COMP%]{padding-top:10px;padding-left:15px;font-size:14px}"],data:{animation:[(0,T.X$)("errorFlash",[(0,T.SB)("initial",(0,T.oB)({backgroundColor:"white"})),(0,T.SB)("final",(0,T.oB)({backgroundColor:"pink"})),(0,T.eR)("initial=>final",(0,T.jt)("1000ms")),(0,T.eR)("final=>initial",(0,T.jt)("500ms"))])]}}),nt}();function ct(nt,at){1&nt&&(u.TgZ(0,"h1",5),u._uU(1,"Select Sites"),u.qZA())}function Ee(nt,at){1&nt&&(u.TgZ(0,"h1",5),u._uU(1,"Add / Modify Feature"),u.qZA())}var st=function(){var nt=function(){function at(We){var xe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,S.Z)(this,at),this.dialogRef=We,this.data=xe,this.warning="",We.disableClose=!0}return(0,t.Z)(at,[{key:"ngOnInit",value:function(){var xe=this;this.dialogRef.backdropClick().subscribe(function(ut){"feature"===xe.data.card?xe.feature&&xe.feature.name&&""!==xe.feature.name&&xe.feature.siteRange?xe.dialogRef.close(xe.feature):xe.invalidFeatureConfirm():xe.dialogRef.close("multi-disulfide"===xe.data.card?xe.disulfides:xe.data.links)})}},{key:"invalidFeatureConfirm",value:function(){confirm("Feature is missing information and will not be saved. Close the dialog anyway?")&&this.dialogRef.close()}},{key:"ngAfterViewInit",value:function(){"feature"===this.data.card?this.backup=this.feature&&this.feature.name&&""!==this.feature.name&&this.feature.siteRange?JSON.parse(JSON.stringify(this.feature)):{}:"multi-disulfide"===this.data.card?this.backup=(0,c.cloneDeep)(this.disulfides):(Object.assign([],this.data.links),this.backup=(0,c.cloneDeep)(this.data.links))}},{key:"save",value:function(){"feature"===this.data.card?this.feature&&this.feature.name&&""!==this.feature.name?this.feature.siteRange?this.dialogRef.close(this.feature):this.warning="Select site Range(s) before saving":this.warning="Enter a feature name before saving":this.dialogRef.close("multi-disulfide"===this.data.card?this.disulfides:"any"===this.data.card?this.data:this.data.links)}},{key:"cancel",value:function(){this.dialogRef.close(this.backup)}},{key:"updateSites",value:function(xe){this.data.links=xe}},{key:"updateFeature",value:function(xe){this.feature=xe,this.data.sentFeature=xe}},{key:"updateDisulfides",value:function(xe){this.disulfides=xe}},{key:"updateCardType",value:function(xe){this.data.siteType=xe}}]),at}();return nt.\u0275fac=function(We){return new(We||nt)(u.Y36(e.so),u.Y36(e.WI))},nt.\u0275cmp=u.Xpm({type:nt,selectors:[["app-subunit-selector-dialog"]],decls:11,vars:6,consts:[["mat-dialog-title","",4,"ngIf"],[3,"card","link","feature","disulfidesUpdate","sitesUpdate","featureUpdate","cardTypeUpdate"],[1,"actions"],["mat-button","",3,"click"],[1,"warning"],["mat-dialog-title",""]],template:function(We,xe){1&We&&(u.YNc(0,ct,2,0,"h1",0),u.YNc(1,Ee,2,0,"h1",0),u.TgZ(2,"app-subunit-selector",1),u.NdJ("disulfidesUpdate",function(Fe){return xe.updateDisulfides(Fe)})("sitesUpdate",function(Fe){return xe.updateSites(Fe)})("featureUpdate",function(Fe){return xe.updateFeature(Fe)})("cardTypeUpdate",function(Fe){return xe.updateCardType(Fe)}),u.qZA(),u.TgZ(3,"mat-dialog-actions"),u.TgZ(4,"div",2),u.TgZ(5,"button",3),u.NdJ("click",function(){return xe.cancel()}),u._uU(6,"Cancel"),u.qZA(),u.TgZ(7,"button",3),u.NdJ("click",function(){return xe.save()}),u._uU(8," Save "),u.qZA(),u.qZA(),u.TgZ(9,"div",4),u._uU(10),u.qZA(),u.qZA()),2&We&&(u.Q6J("ngIf","feature"!==xe.data.card),u.xp6(1),u.Q6J("ngIf","feature"===xe.data.card),u.xp6(1),u.Q6J("card",xe.data.card)("link",xe.data.link)("feature",xe.data.feature?xe.data.feature:null),u.xp6(8),u.Oqu(xe.warning))},directives:[o.O5,e.uh,ft,e.H8,q.lW],styles:[""]}),nt}()},1427:function(Ce,E,n){"use strict";n.d(E,{I:function(){return q}});var S=n(39117),t=n(1884),e=n(86613),u=(n(27299),n(18291)),o=n(63169),_=n(33567),s=n(39401),h=n(59295),b=n(95758),T=n(54244);function y(B,k){if(1&B){var D=e.EpF();e.TgZ(0,"div",16),e._uU(1," Deleted\xa0 "),e.TgZ(2,"button",17),e.NdJ("click",function(){return e.CHM(D),e.oxw().undoDelete()}),e._UZ(3,"mat-icon",18),e.qZA(),e.qZA()}}function Y(B,k){if(1&B&&(e.TgZ(0,"div"),e._UZ(1,"img",19),e.qZA()),2&B){var D=e.oxw();e.xp6(1),e.Q6J("src",D.structure,e.LSH)}}var q=function(){var B=function(){function k(D,N,I,L,j){(0,S.Z)(this,k),this.cvService=D,this.dialog=N,this.utilsService=I,this.overlayContainerService=L,this.substanceFormService=j,this.sugarDeleted=new e.vpe,this.structure=null,this.subscriptions=[]}return(0,t.Z)(k,[{key:"ngOnInit",value:function(){this.getVocabularies(),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.updateDisplay()}},{key:"ngAfterViewInit",value:function(){this.updateDisplay()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(N){N.unsubscribe()})}},{key:"sugar",get:function(){return this.updateDisplay(),this.privateSugar},set:function(N){this.privateSugar=N}},{key:"addRemainingSites",value:function(){this.privateSugar.sites=this.privateSugar.sites?this.privateSugar.sites.concat(this.remaining):this.remaining,this.updateDisplay(),this.substanceFormService.emitSugarUpdate()}},{key:"getStructure",value:function(){var N=this;this.smiles=this.vocabulary[this.privateSugar.sugar],this.smiles&&this.smiles.fragmentStructure?this.structure=this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure):this.cvService.getDomainVocabulary("NUCLEIC_ACID_SUGAR").pipe((0,h.q)(1)).subscribe(function(I){var j=!1;I.NUCLEIC_ACID_SUGAR.list.forEach(function(le){le.value===N.privateSugar.sugar&&(N.smiles=le,j=!0,N.structure=N.cvService.getStructureUrlFragment(N.smiles.fragmentStructure))}),j||(N.structure=null)})}},{key:"updateDisplay",value:function(N){N?this.siteDisplay=this.substanceFormService.siteString(N.sites):this.privateSugar&&(this.siteDisplay=this.substanceFormService.siteString(this.privateSugar.sites))}},{key:"deleteLink",value:function(){var N=this;this.privateSugar.$$deletedCode=this.utilsService.newUUID(),this.deleteTimer=setTimeout(function(){N.sugarDeleted.emit(N.sugar),N.substanceFormService.emitSugarUpdate()},2e3)}},{key:"undoDelete",value:function(){clearTimeout(this.deleteTimer),delete this.privateSugar.$$deletedCode}},{key:"getVocabularies",value:function(){var N=this,I=this.cvService.getDomainVocabulary("NUCLEIC_ACID_SUGAR").subscribe(function(L){N.sugarTypes=L.NUCLEIC_ACID_SUGAR.list,N.vocabulary=L.NUCLEIC_ACID_SUGAR.dictionary,N.smiles=N.vocabulary[N.privateSugar.sugar],N.getStructure()});this.subscriptions.push(I)}},{key:"updateSugar",value:function(N){this.privateSugar.sugar=N,this.getStructure()}},{key:"openDialog",value:function(){var N=this,I=this.dialog.open(s.r,{data:{card:"sugar",link:this.privateSugar.sites},width:"1040px"});this.overlayContainer.style.zIndex="1002";var L=I.afterClosed().subscribe(function(j){N.overlayContainer.style.zIndex=null,j&&(N.privateSugar.sites=j),N.updateDisplay(),N.substanceFormService.emitSugarUpdate()});this.subscriptions.push(L)}}]),k}();return B.\u0275fac=function(D){return new(D||B)(e.Y36(u.I),e.Y36(b.uw),e.Y36(o.FW),e.Y36(T.Xj),e.Y36(_.B))},B.\u0275cmp=e.Xpm({type:B,selectors:[["app-sugar-form"]],inputs:{remaining:"remaining",sugar:"sugar"},outputs:{sugarDeleted:"sugarDeleted"},decls:19,vars:8,consts:[[1,"sugar-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","","matTooltip","Delete link",3,"click"],["svgIcon","delete_forever"],[4,"ngIf"],[1,"type"],["domain","NUCLEIC_ACID_SUGAR","title","Sugar",3,"model","valueChange"],[1,"addRemaining"],["mat-flat-button","","mat-primary","",3,"matTooltip","disabled","click"],[1,"links"],[1,"label"],["mat-icon-button","","matTooltip","Select sites from display",3,"click"],["svgIcon","edit"],[3,"source"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"structure-image",3,"src"]],template:function(D,N){1&D&&(e.TgZ(0,"div",0),e.YNc(1,y,4,0,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"div",3),e.TgZ(4,"button",4),e.NdJ("click",function(){return N.deleteLink()}),e._UZ(5,"mat-icon",5),e.qZA(),e.qZA(),e.YNc(6,Y,2,1,"div",6),e.TgZ(7,"div",7),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(L){return N.updateSugar(L)}),e.qZA(),e.qZA(),e.TgZ(9,"div",9),e.TgZ(10,"button",10),e.NdJ("click",function(){return N.addRemainingSites()}),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",11),e.TgZ(13,"div",12),e._uU(14,"Sites"),e.qZA(),e._uU(15),e.TgZ(16,"button",13),e.NdJ("click",function(){return N.openDialog()}),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.qZA(),e._UZ(18,"app-audit-info",15),e.qZA()),2&D&&(e.xp6(1),e.Q6J("ngIf",N.sugar.$$deletedCode),e.xp6(5),e.Q6J("ngIf",N.structure),e.xp6(2),e.Q6J("model",N.sugar.sugar),e.xp6(2),e.MGl("matTooltip","Add remaining ",N.remaining.length," sites"),e.Q6J("disabled",0===N.remaining.length),e.xp6(1),e.hij(" Add remaining ",N.remaining.length," sites "),e.xp6(4),e.hij(" ",N.siteDisplay," "),e.xp6(3),e.Q6J("source",N.sugar))},styles:[".sugar-form-container[_ngcontent-%COMP%]{padding:30px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .type[_ngcontent-%COMP%]{width:30%;margin-right:5px}.form-row[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{width:40%}.form-row[_ngcontent-%COMP%] .addRemaining[_ngcontent-%COMP%]{width:20%}.selectedSite[_ngcontent-%COMP%]{padding-left:2px;padding-right:2px}.structure-image[_ngcontent-%COMP%]{margin-bottom:-20px;margin-left:-10px}"]}),B}()},15992:function(Ce,E,n){"use strict";n.d(E,{C:function(){return re}});var S=n(39117),t=n(1884),e=n(86613),c=n(42827),u=n(90587),o=n(44874),_=n(50635),s=n(75939),h=n(44250),b=n(12142),T=n(95758),y=n(54244),Y=n(44770),q=n(81196),B=n(36362),k=n(65590),D=n(43188),N=n(1130),I=["tagInput"],L=["tagsAuto"];function j(W,$){if(1&W){var be=e.EpF();e.TgZ(0,"mat-chip",8),e.NdJ("removed",function(){var te=e.CHM(be).$implicit;return e.oxw().remove(te)}),e._uU(1),e._UZ(2,"mat-icon",9),e.qZA()}if(2&W){var z=$.$implicit,d=e.oxw();e.xp6(1),e.hij(" ",d.optionsDictionary[z]&&d.optionsDictionary[z].display||z," ")}}function le(W,$){if(1&W&&(e.TgZ(0,"mat-option",10),e._uU(1),e.qZA()),2&W){var be=$.$implicit;e.Q6J("value",be.value),e.xp6(1),e.hij(" ",be.display," ")}}var re=function(){var W=function(){function $(be,z,d,Q){(0,S.Z)(this,$),this.cvService=be,this.dialog=z,this.overlayContainerService=d,this.authService=Q,this.tagsUpdate=new e.vpe,this.placeholder="Tags",this.privateTags=[],this.tagControl=new u.NI,this.separatorKeysCodes=[s.K5,s.OC],this.optionsDictionary={}}return(0,t.Z)($,[{key:"ngOnInit",value:function(){this.overlayContainer=this.overlayContainerService.getContainerElement(),this.isAdmin=this.authService.hasRoles("admin")}},{key:"ngAfterViewInit",value:function(){var z=this;setTimeout(function(){z.cvService.getDomainVocabulary(z.cvDomain).subscribe(function(d){z.allOptions=d[z.cvDomain].list,z.cvOptions=d[z.cvDomain].list;var Q=!1;z.allOptions.forEach(function(te){"other"===te.display.toLowerCase()&&(Q=!0)}),!1===Q&&z.allOptions.push({display:"Other",value:"Other",filter:" = ",selected:!1}),z.optionsDictionary=d[z.cvDomain].dictionary,z.filteredOptions=z.tagControl.valueChanges.pipe((0,o.O)(null),(0,_.U)(function(te){return te?z._filter(te):z.allOptions.filter(function(K){return-1===z.privateTags.indexOf(K.value)})}))})})}},{key:"tags",get:function(){return this.privateTags},set:function(z){this.privateTags=z||[]}},{key:"clearTagsInput",value:function(){var z=this;setTimeout(function(){z.tagInput.nativeElement.value="",z.matAutocomplete.isOpen||z.tagControl.setValue(null)})}},{key:"remove",value:function(z){var d=this.privateTags.indexOf(z);d>-1&&this.privateTags.splice(d,1),this.tagsUpdate.emit(this.privateTags)}},{key:"selected",value:function(z){this.privateTags.push(z.option.value),this.tagsUpdate.emit(this.privateTags),this.clearTagsInput()}},{key:"inCV",value:function(z,d){return!z||z.some(function(Q){return d===Q.value})}},{key:"tagAdded",value:function(z){var d=this;if((z.value||"").trim()){var Q=z.value.trim();this.privateTags.push(Q),this.tagsUpdate.emit(this.privateTags),this.isAdmin&&!this.inCV(this.allOptions,Q)&&!this.disableCV&&confirm("Add new option to the CV?")&&this.cvService.fetchFullVocabulary(this.cvDomain).subscribe(function(te){te.content&&te.content.length>0&&d.openDialog(te.content[0],Q)}),this.clearTagsInput()}z.input&&(z.input.value="")}},{key:"_filter",value:function(z){var d=this,Q=z.toLowerCase();return this.allOptions.filter(function(J){return-1===d.privateTags.indexOf(J.value)&&J.display.toLowerCase().indexOf(Q)>-1})}},{key:"openDialog",value:function(z,d){var Q=this,J=this.dialog.open(b.i,{data:{vocabulary:z,term:d},width:"1040px"});this.overlayContainer.style.zIndex="1002",J.afterClosed().subscribe(function(K){Q.overlayContainer.style.zIndex=null})}}]),$}();return W.\u0275fac=function(be){return new(be||W)(e.Y36(c.I),e.Y36(T.uw),e.Y36(y.Xj),e.Y36(h.e))},W.\u0275cmp=e.Xpm({type:W,selectors:[["app-tag-selector"]],viewQuery:function(be,z){var d;1&be&&(e.Gf(I,7),e.Gf(L,7)),2&be&&(e.iGM(d=e.CRH())&&(z.tagInput=d.first),e.iGM(d=e.CRH())&&(z.matAutocomplete=d.first))},inputs:{cvDomain:"cvDomain",placeholder:"placeholder",disableCV:"disableCV",tags:"tags"},outputs:{tagsUpdate:"tagsUpdate"},decls:12,vars:10,consts:[["chipList",""],["removable","true",3,"removed",4,"ngFor","ngForOf"],["matChipInputAddOnBlur","false",3,"placeholder","formControl","matAutocomplete","matChipInputFor","matChipInputSeparatorKeyCodes","matChipInputTokenEnd","blur"],["tagInput",""],[3,"optionSelected","closed"],["tagsAuto","matAutocomplete"],[3,"value",4,"ngFor","ngForOf"],["disabled","true",3,"value"],["removable","true",3,"removed"],["matChipRemove","","svgIcon","cancel"],[3,"value"]],template:function(be,z){if(1&be&&(e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-chip-list",null,0),e.YNc(3,j,3,1,"mat-chip",1),e.TgZ(4,"input",2,3),e.NdJ("matChipInputTokenEnd",function(te){return z.tagAdded(te)})("blur",function(){return z.clearTagsInput()}),e.qZA(),e.qZA(),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(te){return z.selected(te)})("closed",function(){return z.clearTagsInput()}),e.YNc(8,le,2,2,"mat-option",6),e.ALo(9,"async"),e.TgZ(10,"mat-option",7),e._uU(11," Press enter to add custom value "),e.qZA(),e.qZA(),e.qZA()),2&be){var d=e.MAs(2),Q=e.MAs(7);e.xp6(3),e.Q6J("ngForOf",z.tags),e.xp6(1),e.Q6J("placeholder",z.placeholder)("formControl",z.tagControl)("matAutocomplete",Q)("matChipInputFor",d)("matChipInputSeparatorKeyCodes",z.separatorKeysCodes),e.xp6(4),e.Q6J("ngForOf",e.lcZ(9,8,z.filteredOptions)),e.xp6(2),e.Q6J("value",null)}},directives:[Y.KE,q.qn,B.sg,q.HS,k.Hw,q.qH,u.Fj,D.ZL,q.oH,u.JJ,u.oH,D.XC,N.ey],pipes:[B.Ov],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%}"]}),W}()},86129:function(Ce,E,n){"use strict";n.d(E,{b:function(){return ve}});var S=n(39117),t=n(1884),e=n(18291),c=n(95758),u=n(69093),o=n(12570),_=n(53141),s=n(45592),h=n(63169),b=n(86613),T=n(93392),y=n(54244),Y=n(98002);function q(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"div"),b.TgZ(1,"div"),b.TgZ(2,"button",36),b.NdJ("click",function(){return b.CHM(Xe),b.oxw(2).standardize("ADD_HYDROGENS")}),b._uU(3,"Add Explicit Hydrogens"),b.qZA(),b.qZA(),b.TgZ(4,"div"),b.TgZ(5,"button",36),b.NdJ("click",function(){return b.CHM(Xe),b.oxw(2).standardize("STEREO_FLATTEN")}),b._uU(6,"Remove Stereochemistry Bonds"),b.qZA(),b.qZA(),b.qZA()}}function B(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"div",37),b.TgZ(1,"div"),b._uU(2,"Similarity cutoff (tanimoto)"),b.qZA(),b.TgZ(3,"mat-slider",38),b.NdJ("input",function(Pt){return b.CHM(Xe),b.oxw(2).searchCutoffChanged(Pt)}),b.qZA(),b.TgZ(4,"div"),b._uU(5),b.qZA(),b.qZA()}if(2&ue){var mt=b.oxw(2);b.xp6(3),b.Q6J("value",mt.similarityCutoff),b.xp6(2),b.Oqu(mt.similarityCutoff)}}function k(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"div"),b.TgZ(1,"h4"),b._uU(2," Get Structure From Name "),b.qZA(),b.TgZ(3,"app-name-resolver",39),b.NdJ("structureSelected",function(wt){return b.CHM(Xe),b.oxw(2).nameResolved(wt)}),b.qZA(),b.qZA()}}var D=function(){return[5,10,50,100]};function N(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"div",40),b.TgZ(1,"button",41),b.NdJ("click",function(){return b.CHM(Xe),b.oxw(2).navigateToBrowseSubstance("structure")}),b._uU(2," View in browse page "),b._UZ(3,"mat-icon",42),b.qZA(),b._UZ(4,"span",1),b.TgZ(5,"mat-paginator",43,44),b.NdJ("page",function(Pt){return b.CHM(Xe),b.oxw(2).changePage(Pt)}),b.qZA(),b.qZA()}if(2&ue){var mt=b.oxw(2);b.xp6(5),b.Q6J("length",mt.totalSubstances)("pageIndex",mt.pageIndex)("pageSize",mt.pageSize)("pageSizeOptions",b.DdM(5,D))("showFirstLastButtons",!0)}}function I(ue,lt){if(1&ue&&(b.TgZ(0,"div",56),b.TgZ(1,"mat-chip-list",57),b.TgZ(2,"mat-chip",58),b._uU(3),b.qZA(),b.qZA(),b.qZA()),2&ue){var Xe=b.oxw(2).$implicit;b.xp6(3),b.Oqu(Xe.structure.stereochemistry)}}function L(ue,lt){if(1&ue&&(b.TgZ(0,"div"),b.YNc(1,I,4,1,"div",55),b.qZA()),2&ue){var Xe=b.oxw().$implicit;b.xp6(1),b.Q6J("ngIf",Xe.structure.stereochemistry)}}function j(ue,lt){if(1&ue&&(b.TgZ(0,"div"),b.TgZ(1,"div",56),b.TgZ(2,"mat-chip-list",57),b.TgZ(3,"mat-chip",58),b._uU(4),b.qZA(),b.qZA(),b.qZA(),b.qZA()),2&ue){var Xe=b.oxw().$implicit;b.xp6(4),b.Oqu(Xe.substanceClass)}}function le(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"div"),b.TgZ(1,"a",59),b.NdJ("click",function(){b.CHM(Xe);var Pt=b.oxw().$implicit;return b.oxw(2).openImageModal(Pt)}),b._UZ(2,"img",60),b.qZA(),b.qZA()}if(2&ue){var mt=b.oxw().$implicit;b.xp6(2),b.Q6J("entityId",mt.uuid)("atomMaps",mt._matchContext&&mt._matchContext.atomMaps||null)}}function re(ue,lt){if(1&ue&&(b.TgZ(0,"div"),b._UZ(1,"img",61),b.qZA()),2&ue){var Xe=b.oxw().$implicit;b.xp6(1),b.Q6J("entityId",Xe.uuid)("atomMaps",Xe._matchContext&&Xe._matchContext.atomMaps||null)}}function W(ue,lt){if(1&ue&&(b.TgZ(0,"div",62),b.TgZ(1,"span",63),b._uU(2,"similarity:"),b.qZA(),b.TgZ(3,"span",64),b._uU(4),b.qZA(),b.qZA()),2&ue){var Xe=b.oxw().$implicit;b.xp6(4),b.Oqu(Xe._matchContext.similarity.toFixed(3))}}function $(ue,lt){1&ue&&(b.TgZ(0,"div",62),b._uU(1," \xa0 "),b.qZA())}function be(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"mat-card",45),b.TgZ(1,"mat-card-title"),b.TgZ(2,"div",46),b.TgZ(3,"a",47),b._uU(4),b.qZA(),b.qZA(),b.qZA(),b.TgZ(5,"mat-card-content"),b.TgZ(6,"div",48),b.TgZ(7,"div",49),b.YNc(8,L,2,1,"div",11),b.YNc(9,j,5,1,"div",11),b.TgZ(10,"div",50),b.YNc(11,le,3,2,"div",11),b.YNc(12,re,2,2,"div",11),b.qZA(),b.YNc(13,W,5,1,"div",51),b.YNc(14,$,2,0,"div",51),b.TgZ(15,"div",52),b._UZ(16,"span",53),b.qZA(),b.TgZ(17,"div",52),b.TgZ(18,"a",54),b.NdJ("click",function(){var Pe=b.CHM(Xe).$implicit;return b.oxw(2).selectSubstance(Pe)}),b._uU(19,"Select Substance "),b.qZA(),b.qZA(),b.qZA(),b.qZA(),b.qZA(),b.qZA()}if(2&ue){var mt=lt.$implicit;b.xp6(4),b.hij(" ",mt.approvalID," "),b.xp6(4),b.Q6J("ngIf",mt.structure),b.xp6(1),b.Q6J("ngIf",!mt.structure),b.xp6(2),b.Q6J("ngIf",mt.structure||mt.polymer),b.xp6(1),b.Q6J("ngIf",!mt.structure&&!mt.polymer),b.xp6(1),b.Q6J("ngIf",mt._matchContext&&mt._matchContext.similarity),b.xp6(1),b.Q6J("ngIf",!mt._matchContext||!mt._matchContext.similarity),b.xp6(2),b.Q6J("innerHTML",mt._nameHTML?mt._nameHTML:mt._name,b.oJD)("matTooltip",mt._name)}}function z(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"mat-expansion-panel",14),b.NdJ("opened",function(){return b.CHM(Xe),b.oxw().panelOpenState=!0})("closed",function(){return b.CHM(Xe),b.oxw().panelOpenState=!1}),b.TgZ(1,"div",15),b.TgZ(2,"div",16),b.TgZ(3,"app-structure-editor",17),b.NdJ("editorOnLoad",function(Pt){return b.CHM(Xe),b.oxw().editorOnLoad(Pt)})("loadedMolfile",function(Pt){return b.CHM(Xe),b.oxw().molvecUpdate(Pt)}),b.qZA(),b.qZA(),b.TgZ(4,"div",18),b.TgZ(5,"div",19),b.TgZ(6,"mat-radio-group",20),b.NdJ("change",function(Pt){return b.CHM(Xe),b.oxw().updateType(Pt)}),b.TgZ(7,"span",21),b._uU(8,"Search Type"),b.qZA(),b.TgZ(9,"mat-radio-button",22),b._uU(10,"Substructure"),b.qZA(),b.TgZ(11,"mat-radio-button",23),b._uU(12,"Similarity"),b.qZA(),b.TgZ(13,"mat-radio-button",24),b._uU(14,"Exact"),b.qZA(),b.TgZ(15,"mat-radio-button",25),b._uU(16,"Flex"),b.qZA(),b.qZA(),b.YNc(17,q,7,0,"div",11),b.YNc(18,B,6,2,"div",26),b.qZA(),b.TgZ(19,"div",27),b.TgZ(20,"div",28),b.TgZ(21,"button",29),b.NdJ("click",function(){return b.CHM(Xe),b.oxw().search()}),b._uU(22,"Search"),b.qZA(),b.qZA(),b.TgZ(23,"div",30),b.TgZ(24,"button",31),b.NdJ("click",function(){return b.CHM(Xe),b.oxw().openStructureImportDialog()}),b._uU(25,"Import"),b.qZA(),b.qZA(),b.TgZ(26,"div",30),b.TgZ(27,"button",32),b.NdJ("click",function(){return b.CHM(Xe),b.oxw().openStructureExportDialog()}),b._uU(28,"Export"),b.qZA(),b.qZA(),b.qZA(),b.qZA(),b.qZA(),b.YNc(29,k,4,0,"div",11),b.qZA(),b.YNc(30,N,7,6,"div",10),b.TgZ(31,"div",33),b._UZ(32,"span",1),b.TgZ(33,"a",34),b.NdJ("click",function(){b.CHM(Xe);var Pt=b.oxw();return Pt.panelOpenState=!Pt.panelOpenState}),b.TgZ(34,"span"),b._uU(35),b.qZA(),b.TgZ(36,"span"),b._UZ(37,"mat-icon",35),b.qZA(),b.qZA(),b.qZA(),b.TgZ(38,"div",12),b.YNc(39,be,20,9,"mat-card",13),b.qZA()}if(2&ue){var mt=b.oxw();b.Q6J("expanded",mt.panelOpenState),b.xp6(9),b.Q6J("checked",!0),b.xp6(8),b.Q6J("ngIf","substructure"===mt.searchType),b.xp6(1),b.Q6J("ngIf",mt.showSimilarityCutoff),b.xp6(11),b.Q6J("ngIf",!mt.nameTotalSubstances||mt.nameTotalSubstances<1),b.xp6(1),b.Q6J("ngIf",mt.totalSubstances&&mt.totalSubstances>0),b.xp6(5),b.hij("",mt.panelOpenState?"Hide":"Show"," search options "),b.xp6(2),b.Q6J("svgIcon",mt.panelOpenState?"chevron_up":"chevron_down"),b.xp6(2),b.Q6J("ngForOf",mt.substances)}}function d(ue,lt){if(1&ue&&(b.TgZ(0,"mat-option",68),b._uU(1),b.qZA()),2&ue){var Xe=lt.$implicit;b.Q6J("value",Xe.value),b.xp6(1),b.hij(" ",Xe.display," ")}}function Q(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"div",40),b.TgZ(1,"button",41),b.NdJ("click",function(){return b.CHM(Xe),b.oxw().navigateToBrowseSubstance("names")}),b._uU(2," View in browse page "),b._UZ(3,"mat-icon",42),b.qZA(),b._UZ(4,"span",1),b.TgZ(5,"mat-form-field",65),b.TgZ(6,"mat-label"),b._uU(7,"Sort By"),b.qZA(),b.TgZ(8,"mat-select",66),b.NdJ("selectionChange",function(){return b.CHM(Xe),b.oxw().reSort()})("ngModelChange",function(Pt){return b.CHM(Xe),b.oxw().order=Pt}),b.YNc(9,d,2,2,"mat-option",67),b.qZA(),b.qZA(),b.TgZ(10,"mat-paginator",43,44),b.NdJ("page",function(Pt){return b.CHM(Xe),b.oxw().changePage(Pt,"name")}),b.qZA(),b.qZA()}if(2&ue){var mt=b.oxw();b.xp6(8),b.Q6J("ngModel",mt.order),b.xp6(1),b.Q6J("ngForOf",mt.sortValues),b.xp6(1),b.Q6J("length",mt.nameTotalSubstances)("pageIndex",mt.namePageIndex)("pageSize",mt.namePageSize)("pageSizeOptions",b.DdM(7,D))("showFirstLastButtons",!0)}}function J(ue,lt){if(1&ue&&(b.TgZ(0,"div"),b.TgZ(1,"i"),b._uU(2),b.qZA(),b.qZA()),2&ue){var Xe=b.oxw();b.xp6(2),b.hij(" No results found for '",Xe.searchValue,"' ")}}function te(ue,lt){if(1&ue&&(b.TgZ(0,"div",56),b.TgZ(1,"mat-chip-list",57),b.TgZ(2,"mat-chip",58),b._uU(3),b.qZA(),b.qZA(),b.qZA()),2&ue){var Xe=b.oxw(2).$implicit;b.xp6(3),b.Oqu(Xe.structure.stereochemistry)}}function K(ue,lt){if(1&ue&&(b.TgZ(0,"div"),b.YNc(1,te,4,1,"div",55),b.qZA()),2&ue){var Xe=b.oxw().$implicit;b.xp6(1),b.Q6J("ngIf",Xe.structure.stereochemistry)}}function G(ue,lt){if(1&ue&&(b.TgZ(0,"div"),b.TgZ(1,"div",56),b.TgZ(2,"mat-chip-list",57),b.TgZ(3,"mat-chip",58),b._uU(4),b.qZA(),b.qZA(),b.qZA(),b.qZA()),2&ue){var Xe=b.oxw().$implicit;b.xp6(4),b.Oqu(Xe.substanceClass)}}function ce(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"div"),b.TgZ(1,"a",59),b.NdJ("click",function(){b.CHM(Xe);var Pt=b.oxw().$implicit;return b.oxw().openImageModal(Pt)}),b._UZ(2,"img",60),b.qZA(),b.qZA()}if(2&ue){var mt=b.oxw().$implicit;b.xp6(2),b.Q6J("entityId",mt.uuid)("atomMaps",mt._matchContext&&mt._matchContext.atomMaps||null)}}function _e(ue,lt){if(1&ue&&(b.TgZ(0,"div"),b._UZ(1,"img",61),b.qZA()),2&ue){var Xe=b.oxw().$implicit;b.xp6(1),b.Q6J("entityId",Xe.uuid)("atomMaps",Xe._matchContext&&Xe._matchContext.atomMaps||null)}}function Me(ue,lt){if(1&ue){var Xe=b.EpF();b.TgZ(0,"mat-card",45),b.TgZ(1,"mat-card-title"),b.TgZ(2,"div",46),b.TgZ(3,"a",47),b._uU(4),b.qZA(),b.qZA(),b.qZA(),b.TgZ(5,"mat-card-content"),b.TgZ(6,"div",48),b.TgZ(7,"div",49),b.YNc(8,K,2,1,"div",11),b.YNc(9,G,5,1,"div",11),b.TgZ(10,"div",50),b.YNc(11,ce,3,2,"div",11),b.YNc(12,_e,2,2,"div",11),b.qZA(),b.TgZ(13,"div",52),b._UZ(14,"span",53),b.qZA(),b.TgZ(15,"div",52),b.TgZ(16,"a",54),b.NdJ("click",function(){var Pe=b.CHM(Xe).$implicit;return b.oxw().selectSubstance(Pe)}),b._uU(17,"Select Substance "),b.qZA(),b.qZA(),b.qZA(),b.qZA(),b.qZA(),b.qZA()}if(2&ue){var mt=lt.$implicit;b.xp6(4),b.hij(" ",mt.approvalID," "),b.xp6(4),b.Q6J("ngIf",mt.structure),b.xp6(1),b.Q6J("ngIf",!mt.structure),b.xp6(2),b.Q6J("ngIf",mt.structure||mt.polymer),b.xp6(1),b.Q6J("ngIf",!mt.structure&&!mt.polymer),b.xp6(2),b.Q6J("innerHTML",mt._nameHTML?mt._nameHTML:mt._name,b.oJD)("matTooltip",mt._name)}}var ve=function(){var ue=function(){function lt(Xe,mt,wt,Pt,Pe,ze,ft,ct,Ee,st){(0,S.Z)(this,lt),this.CVService=Xe,this.loadingService=mt,this.structureService=wt,this.overlayContainerService=Pt,this.substanceService=Pe,this.configService=ze,this.dialog=ft,this.dialogRef=ct,this.router=Ee,this.data=st,this.forms=[],this.term2={value:"",display:""},this.privateTerm={value:"",display:""},this.asDialog=!1,this.validationMessages=[],this.showResults=!1,this.totalSubstances=0,this.pageIndex=0,this.pageSize=10,this.nameTotalSubstances=0,this.namePageIndex=0,this.namePageSize=10,this.nameSearched=!1,this.structureSearched=!1,this.loading=!1,this.order="default",this.sortValues=h.Jf,this.searchType="substructure",this.showSimilarityCutoff=!1,this.panelOpenState=!0,this.privateSearchTerm="",this.dat=st}return(0,t.Z)(lt,[{key:"standardized",get:function(){return this.privateTerm}},{key:"close",value:function(){this.dialogRef.close()}},{key:"standardize",value:function(mt){var wt=this,Pt=this.editor.getMolfile();this.structureService.interpretStructure(Pt,"",mt).subscribe(function(Pe){Pe&&Pe.structure&&Pe.structure.molfile&&wt.editor.setMolecule(Pe.structure.molfile)},function(){})}},{key:"onTabChanged",value:function(mt){this.activeTab=mt.index}},{key:"searchCutoffChanged",value:function(mt){this.similarityCutoff=mt.value}},{key:"nameSearch",value:function(mt){this.searchValue=mt,this.privateSearchTerm=mt,this.privateStructureSearchTerm=null,this.nameSearched=!0,this.namePageIndex=0,this.searchSubstances(null,null,"name")}},{key:"reSort",value:function(){this.searchSubstances(null,null,"name")}},{key:"ngOnInit",value:function(){var mt=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),this.privateTerm.simplifiedStructure&&(this.privateTerm.simpleSrc=this.CVService.getStructureUrl(this.privateTerm.simplifiedStructure)),this.privateTerm.fragmentStructure&&(this.privateTerm.fragmentSrc=this.CVService.getStructureUrl(this.privateTerm.fragmentStructure)),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.dat&&this.dat.uuid&&1!==this.data.tab&&this.structureService.getMolfile(this.dat.uuid),this.dat&&this.dat.name&&(this.searchValue=this.dat.name),this.activeTab=this.data.tab,setTimeout(function(){mt.activeTab=mt.data.tab},10)}},{key:"molvecUpdate",value:function(mt){this.editor.setMolecule(mt)}},{key:"editorOnLoad",value:function(mt){var wt=this;this.overlayContainer.style.zIndex="1003",this.overlayContainer.style.zIndex="10003",this.loadingService.setLoading(!1),this.editor=mt,this.dat&&this.dat.uuid?this.structureService.getMolfile(this.data.uuid).subscribe(function(Pt){wt.editor.setMolecule(Pt),wt.overlayContainer.style.zIndex="1003",wt.overlayContainer.style.zIndex="10003"}):this.dat&&this.dat.molfile&&(this.editor.setMolecule(this.dat.molfile),this.overlayContainer.style.zIndex="10003"),setTimeout(function(){wt.overlayContainer.style.zIndex="1003",wt.overlayContainer.style.zIndex="10003"},100)}},{key:"search",value:function(){var mt=this,wt=this.editor.getMolfile();this.structureService.interpretStructure(wt).subscribe(function(Pt){mt.response=Pt.structure.id,mt.searchSubstances(Pt.structure.id,Pt.structure.smiles)},function(){})}},{key:"nameResolved",value:function(mt){this.editor.setMolecule(mt)}},{key:"updateType",value:function(mt){this.searchType=mt.value,this.privateSearchType=mt.value,"similarity"===this.searchType?(this.showSimilarityCutoff=!0,this.similarityCutoff=.8):this.showSimilarityCutoff=!1}},{key:"navigateToBrowseSubstance",value:function(mt,wt,Pt){var Pe="",ze={queryParams:{}},ft={queryParams:{}};"structure"===mt?(ze.queryParams.structure_search=this.privateStructureSearchTerm||null,ze.queryParams.type=this.searchType||null,ft.queryParams.structure=this.privateStructureSearchTerm||null,ft.queryParams.type=this.searchType||null,Pe+="?structure_search="+ze.queryParams.structure_search+"&type="+ze.queryParams.type,"similarity"===this.searchType&&(ze.queryParams.cutoff=this.similarityCutoff||0,Pe+="&cutoff="+ze.queryParams.cutoff),null!=Pt&&(ze.queryParams.smiles=Pt)):(ze.queryParams.search=this.searchValue,Pe+="?search="+ze.queryParams.search,this.order&&(ze.queryParams.order=this.order,Pe+="&order="+this.order));var ct;ct=this.configService.configData&&this.configService.configData.gsrsHomeBaseUrl?this.configService.configData.gsrsHomeBaseUrl+"/browse-substance"+Pe:this.router.serializeUrl(this.router.createUrlTree(["/browse-substance"],{queryParams:ze.queryParams})),window.open(ct,"_blank")}},{key:"searchSubstances",value:function(mt,wt,Pt){var Pe=this,ze=this.pageSize,ft=this.pageIndex*this.pageSize;mt?(this.privateStructureSearchTerm=mt||null,this.privateSearchType=this.searchType||"substructure","similarity"===this.searchType&&(this.privateSearchCutoff=this.similarityCutoff||0)):(this.privateStructureSearchTerm=null,ze=this.namePageSize,ft=this.namePageIndex*this.namePageSize);var ct=null;Pt&&"name"===Pt&&(ct=this.order),this.loadingService.setLoading(!0),this.loading=!0,this.substanceService.getSubstancesSummaries({searchTerm:this.privateSearchTerm,structureSearchTerm:this.privateStructureSearchTerm,sequenceSearchTerm:this.privateSequenceSearchTerm,cutoff:this.privateSearchCutoff,type:this.privateSearchType,seqType:this.privateSearchSeqType,order:ct,pageSize:ze,facets:this.privateFacetParams,skip:ft,sequenceSearchKey:this.privateSequenceSearchKey,deprecated:!1}).subscribe(function(st){Pt&&"name"===Pt?(Pe.nameSubstances=st&&st.content?st.content:[],Pe.nameTotalSubstances=st.total):(Pe.substances=st&&st.content?st.content:[],Pe.totalSubstances=st.total,Pe.totalSubstances>0&&(Pe.panelOpenState=!1)),Pe.lastPage=st.total%Pe.pageSize==0?st.total/Pe.pageSize:Math.floor(st.total/Pe.pageSize+1),Pe.overlayContainer.style.zIndex="1003",Pe.overlayContainer.style.zIndex="10003",Pe.loadingService.setLoading(!1),Pe.overlayContainer.style.zIndex="10003",setTimeout(function(){Pe.overlayContainer.style.zIndex="1003",Pe.overlayContainer.style.zIndex="10003",Pe.loading=!1})})}},{key:"openStructureImportDialog",value:function(){var mt=this;this.dialog.open(u.Nt,{height:"auto",width:"650px",data:{}}).afterClosed().subscribe(function(Pt){setTimeout(function(){mt.overlayContainer.style.zIndex="1003",mt.overlayContainer.style.zIndex="10003"}),Pt&&Pt.structure&&Pt.structure.molfile&&setTimeout(function(){mt.editor.setMolecule(Pt.structure.molfile)})},function(){setTimeout(function(){mt.overlayContainer.style.zIndex="1003",mt.overlayContainer.style.zIndex="10003"})})}},{key:"openStructureExportDialog",value:function(){var mt=this;this.dialog.open(s.g,{height:"auto",width:"650px",data:{molfile:this.editor.getMolfile(),smiles:this.editor.getSmiles()}}).afterClosed().subscribe(function(){setTimeout(function(){mt.overlayContainer.style.zIndex="1003",mt.overlayContainer.style.zIndex="10003"})},function(){setTimeout(function(){mt.overlayContainer.style.zIndex="1003",mt.overlayContainer.style.zIndex="10003"})})}},{key:"checkImg",value:function(mt){mt.fragmentSrc=this.CVService.getStructureUrlFragment(mt.fragmentStructure),mt.simpleSrc=this.CVService.getStructureUrlFragment(mt.simplifiedStructure)}},{key:"openImageModal",value:function(mt){var Pt,Pe,wt=this;"chemical"===mt.substanceClass?(Pt={structure:mt.uuid,smiles:mt.structure.smiles,uuid:mt.uuid,names:mt.names,component:"selector"},Pe=mt.structure.molfile):(Pt={structure:mt.uuid,names:mt.names,component:"selector"},Pe=mt.polymer?mt.polymer.idealizedStructure.molfile:null);var ze=this.dialog.open(u.oV,{width:"650px",panelClass:"structure-image-panel",data:Pt});this.overlayContainer.style.zIndex="1002";var ft=ze.afterClosed().subscribe(function(ct){ct&&"molfile"===ct&&(wt.panelOpenState=!0,1===wt.activeTab?(wt.activeTab=0,wt.dat.molfile=Pe):setTimeout(function(){wt.editor&&wt.editor.setMolecule(Pe)},150)),ct&&"select"===ct&&wt.selectSubstance(mt),wt.overlayContainer.style.zIndex="1003",ft.unsubscribe()},function(){wt.overlayContainer.style.zIndex="1003",ft.unsubscribe()})}},{key:"selectSubstance",value:function(mt){this.dialogRef.close(mt)}},{key:"changePage",value:function(mt,wt){wt&&"name"===wt?(this.namePageSize=mt.pageSize,this.namePageIndex=mt.pageIndex,this.searchSubstances(null,null,"name")):(this.pageSize=mt.pageSize,this.pageIndex=mt.pageIndex,this.searchSubstances(this.response))}}]),lt}();return ue.\u0275fac=function(Xe){return new(Xe||ue)(b.Y36(e.I),b.Y36(T.b),b.Y36(u.De),b.Y36(y.Xj),b.Y36(o.d),b.Y36(_.E),b.Y36(c.uw),b.Y36(c.so),b.Y36(Y.F0),b.Y36(c.WI))},ue.\u0275cmp=b.Xpm({type:ue,selectors:[["app-advanced-selector-dialog"]],decls:14,vars:5,consts:[[2,"display","flex"],[1,"middle-fill"],["mat-mini-fab","",3,"click"],["svgIcon","close"],[1,"tab-group",3,"selectedIndex","selectedTabChange"],["label","Structure Search"],["matTabContent",""],["label","Name Search"],[1,"form-row",2,"margin-top","15px"],["placeholder","Search Substances","eventCategory","selectorSearch",1,"top-search",3,"searchValue","searchPerformed"],["class","form-row paginator-row",4,"ngIf"],[4,"ngIf"],[1,"form-row2"],["class","tile",4,"ngFor","ngForOf"],[3,"expanded","opened","closed"],[1,"form-row","upper-padding"],[1,"editor-container"],[3,"editorOnLoad","loadedMolfile"],[1,"search-actions"],[1,"two"],[1,"type",3,"change"],[1,"radio-label"],["value","substructure",1,"search-radio",3,"checked"],["value","similarity",1,"search-radio"],["value","exact",1,"search-radio"],["value","flex",1,"search-radio"],["class","similarity-cutoff",4,"ngIf"],[1,"action-button-container"],[1,"action-button-container","three"],["name","search","mat-raised-button","","color","primary",1,"search-button",2,"font-size","18px",3,"click"],[1,"action-button-container","one"],["name","export","mat-raised-button","","color","primary",1,"import-button",3,"click"],["name","import","mat-raised-button","","color","primary",1,"export-button",3,"click"],[1,"form-row","expand-button"],[3,"click"],[1,"chevron",3,"svgIcon"],["mat-button","","mat-flat-button","",3,"click"],[1,"similarity-cutoff"],["min",".40","max","1","step","0.01",3,"value","input"],[3,"structureSelected"],[1,"form-row","paginator-row"],["mat-button","",3,"click"],["matListIcon","","svgIcon","open_in_new",1,"middle-button"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"tile"],[1,"tile-title"],[1,"approval-id"],[1,"substance-content"],[1,"structure-container"],[1,"image-thumbnail"],["class","add-height",4,"ngIf"],[1,"tile-name"],[1,"substance-name-2",3,"innerHTML","matTooltip"],[1,"substance-name","table-view-name",3,"click"],["class","mat-chip-list-container-2",4,"ngIf"],[1,"mat-chip-list-container-2"],["selectable","false","multiple","false"],["color","primary","selected",""],[1,"zoom",3,"click"],["appSubstanceImage","",3,"entityId","atomMaps"],["appSubstanceImage","","size","175",1,"image-other",3,"entityId","atomMaps"],[1,"add-height"],[1,"simlarity-label"],[1,"similarity"],[1,"sort"],[3,"ngModel","selectionChange","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(Xe,mt){1&Xe&&(b.TgZ(0,"div",0),b._UZ(1,"span",1),b.TgZ(2,"button",2),b.NdJ("click",function(){return mt.dialogRef.close()}),b._UZ(3,"mat-icon",3),b.qZA(),b.qZA(),b.TgZ(4,"mat-tab-group",4),b.NdJ("selectedTabChange",function(Pt){return mt.onTabChanged(Pt)}),b.TgZ(5,"mat-tab",5),b.YNc(6,z,40,9,"ng-template",6),b.qZA(),b.TgZ(7,"mat-tab",7),b.TgZ(8,"div",8),b.TgZ(9,"app-substance-text-search",9),b.NdJ("searchPerformed",function(Pt){return mt.nameSearch(Pt)}),b.qZA(),b.qZA(),b.YNc(10,Q,12,8,"div",10),b.YNc(11,J,3,1,"div",11),b.TgZ(12,"div",12),b.YNc(13,Me,18,7,"mat-card",13),b.qZA(),b.qZA(),b.qZA()),2&Xe&&(b.xp6(4),b.Q6J("selectedIndex",mt.activeTab),b.xp6(5),b.Q6J("searchValue",mt.searchValue),b.xp6(1),b.Q6J("ngIf",mt.nameTotalSubstances&&mt.nameTotalSubstances>0),b.xp6(1),b.Q6J("ngIf",0==mt.nameTotalSubstances&&mt.nameSearched&&!mt.loading),b.xp6(2),b.Q6J("ngForOf",mt.nameSubstances))},styles:[".form-row2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;width:100%;-ms-flex-flow:row wrap;flex-flow:row wrap;max-width:1265px}.search-radio[_ngcontent-%COMP%]{padding:5px}.radio-label[_ngcontent-%COMP%]{font-size:19px;margin-bottom:10px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;width:100%;-ms-flex-flow:row wrap;flex-flow:row wrap}.type[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.search-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;padding-left:15px;margin-left:10px;border-left:1px solid #b3b3b3;min-width:235px}.search-actions[_ngcontent-%COMP%] .mat-slider-horizontal[_ngcontent-%COMP%]{width:100%}.action-button-container[_ngcontent-%COMP%]{margin-top:20px;-ms-flex-item-align:end;align-self:flex-end;width:100%}.action-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}.search-content-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.sort[_ngcontent-%COMP%]{margin-right:25px}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:red}.table-view-name[_ngcontent-%COMP%]{color:#448aff}.tile-title[_ngcontent-%COMP%]{height:19px} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:#4793d1;width:285px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container-2[_ngcontent-%COMP%]{margin-bottom:10px}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.upper-padding[_ngcontent-%COMP%]{margin-top:15px}.tile[_ngcontent-%COMP%]{height:305px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto;height:175px;width:175px}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px;text-align:center}.tile-name[_ngcontent-%COMP%] svg{margin-bottom:-10px}.expand-button[_ngcontent-%COMP%]{-ms-flex-line-pack:end;align-content:flex-end;color:#448aff}.mat-expansion-panel[_ngcontent-%COMP%]{box-shadow:none!important}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:transparent}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.exact-matches-container[_ngcontent-%COMP%]{margin-top:80px}.exact-match-control[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-line-pack:center;align-content:center;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.exact-match-control[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-top:15px}.add-height[_ngcontent-%COMP%]{height:20px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:0px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:#fff;border-radius:4px}.similarity[_ngcontent-%COMP%]{padding-left:10px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:#c7254e}.similarity-label[_ngcontent-%COMP%]{font-style:italic}.menu-checkbox[_ngcontent-%COMP%]:hover{background-color:#fff}@media (max-width: 1750px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.mat-tab-label-content[_ngcontent-%COMP%]{font-size:18px}.paginator-row[_ngcontent-%COMP%]{-ms-flex-pack:end;justify-content:flex-end;margin-top:15px}.mat-tab-labels[_ngcontent-%COMP%]{margin-bottom:15px}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.mat-elevation-z2[_ngcontent-%COMP%]{background-color:#fff}.more-content[_ngcontent-%COMP%]{width:45%}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:#0000008a;display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:red}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.disable-export[_ngcontent-%COMP%]{pointer-events:none;opacity:.5}.button-link-img[_ngcontent-%COMP%]{line-height:40px;color:#000}.red-text[_ngcontent-%COMP%]{color:red;font-style:italic}.orange-text[_ngcontent-%COMP%]{color:orange;font-style:italic}.sub-search-div[_ngcontent-%COMP%]{display:none}.sub-search-ref-btn[_ngcontent-%COMP%]{padding:10px;margin:0 5px;background-color:#fff;box-shadow:2px 2px #d3d3d3;border:.4px solid white;border-radius:5px}.sub-search-cancel-btn[_ngcontent-%COMP%]{padding:10px;color:#fff;background-color:red;box-shadow:2px 2px #d3d3d3;border:.4px solid red;border-radius:5px}.sub-search-text[_ngcontent-%COMP%]{text-align:center}.match-txt[_ngcontent-%COMP%]{display:inline;padding:0 5px}.sub-search-text-div[_ngcontent-%COMP%]{text-align:center}.search-spinner[_ngcontent-%COMP%]{width:15px;height:15px;display:inline-table;margin:auto}.search-spinner[_ngcontent-%COMP%] .mat-progress-spinner circle, .mat-spinner[_ngcontent-%COMP%] circle[_ngcontent-%COMP%]{stroke:gray;width:10px!important;height:10px!important;display:inline}.cdk-overlay-backdrop[_ngcontent-%COMP%], .cdk-global-overlay-wrapper[_ngcontent-%COMP%]{display:none!important}.mat-mini-fab[_ngcontent-%COMP%]{background-color:var(--mat-icon-button-bg-color);color:var(--label-color);width:35px;height:35px}.mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0}"]}),ue}()},24459:function(Ce,E,n){"use strict";n.d(E,{Q:function(){return te}});var S=n(39117),t=n(1884),e=n(86613),c=n(12570),u=n(53141),o=n(86129),_=n(69093),s=n(33567),h=n(54244),b=n(78444),T=n(95758),y=n(98002),Y=n(43785),q=n(36362),B=n(87317),k=n(40089),D=n(65590),N=n(9292),I=function(G){return{hidden:G}};function L(K,G){if(1&K){var ce=e.EpF();e.TgZ(0,"div",10),e.TgZ(1,"button",11),e.NdJ("click",function(){return e.CHM(ce),e.oxw().revertEdit()}),e._UZ(2,"mat-icon",12),e.qZA(),e.qZA()}if(2&K){var _e=e.oxw();e.xp6(2),e.Q6J("ngClass",e.VKq(1,I,_e.selectedSubstance))}}function j(K,G){if(1&K){var ce=e.EpF();e.TgZ(0,"a",33),e.NdJ("click",function(){e.CHM(ce);var Me=e.oxw(3);return Me.openInNewTab(Me.selectedSubstance.uuid)}),e._UZ(1,"mat-icon",34),e.qZA()}}function le(K,G){if(1&K){var ce=e.EpF();e.TgZ(0,"div",25),e.TgZ(1,"button",26),e.NdJ("click",function(){return e.CHM(ce),e.oxw(2).editSelectedSubstance()}),e._UZ(2,"mat-icon",27),e.qZA(),e.YNc(3,j,2,0,"a",28),e.TgZ(4,"button",29),e.NdJ("click",function(){return e.CHM(ce),e.oxw(2).delete()}),e._UZ(5,"mat-icon",30),e.qZA(),e.TgZ(6,"button",31),e.NdJ("click",function(){return e.CHM(ce),e.oxw(2).StoreSelection()}),e._UZ(7,"mat-icon",32),e.qZA(),e.qZA()}if(2&K){var _e=e.oxw(2);e.xp6(3),e.Q6J("ngIf",_e.selectedSubstance.uuid)}}function re(K,G){if(1&K&&(e.TgZ(0,"span",35),e._uU(1),e.qZA()),2&K){var ce=e.oxw(2);e.xp6(1),e.hij(" ",ce.selectedSubstance.approvalID," ")}}function W(K,G){if(1&K&&e._UZ(0,"img",36),2&K){var ce=e.oxw(2);e.Q6J("entityId",ce.selectedSubstance.uuid)}}function $(K,G){1&K&&(e.TgZ(0,"span",37),e._UZ(1,"br"),e._uU(2,"NOT IN DATABASE"),e.qZA())}function be(K,G){if(1&K){var ce=e.EpF();e.TgZ(0,"div",13),e.YNc(1,le,8,1,"div",14),e.TgZ(2,"div",15),e._uU(3),e.qZA(),e.TgZ(4,"div",16),e.YNc(5,re,2,1,"span",17),e.qZA(),e.TgZ(6,"a",18),e.NdJ("click",function(){e.CHM(ce);var ve=e.oxw();return ve.openImageModal(ve.substance)}),e.YNc(7,W,1,1,"img",19),e.qZA(),e.TgZ(8,"div",20),e.TgZ(9,"span"),e.TgZ(10,"a",21),e.NdJ("click",function(){e.CHM(ce);var ve=e.oxw();return ve.openInNewTab(ve.selectedSubstance.uuid)}),e._UZ(11,"span",22),e._UZ(12,"mat-icon",23),e.qZA(),e.qZA(),e.YNc(13,$,3,0,"span",8),e.qZA(),e.TgZ(14,"div"),e.TgZ(15,"a",24),e.NdJ("click",function(){return e.CHM(ce),!!e.oxw().editSelectedSubstance()}),e._uU(16,"Change Selection"),e.qZA(),e._UZ(17,"br"),e.qZA(),e.qZA()}if(2&K){var _e=e.oxw();e.xp6(1),e.Q6J("ngIf",_e.showOptions),e.xp6(2),e.Oqu(_e.header),e.xp6(2),e.Q6J("ngIf",_e.selectedSubstance.approvalID),e.xp6(2),e.Q6J("ngIf",_e.selectedSubstance.uuid&&!_e.hideImage),e.xp6(4),e.Q6J("innerHTML",_e.selectedSubstance._name,e.oJD),e.xp6(2),e.Q6J("ngIf","Not in database"===_e.errorMessage)}}function z(K,G){if(1&K){var ce=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"a",38),e.NdJ("click",function(){return e.CHM(ce),e.oxw().revertEdit()}),e._uU(2,"Cancel and Revert"),e.qZA(),e.qZA()}}function d(K,G){1&K&&(e.TgZ(0,"span",37),e._UZ(1,"br"),e._uU(2,"NO SUBSTANCES FOUND"),e.qZA())}function Q(K,G){if(1&K){var ce=e.EpF();e.TgZ(0,"div",41),e.TgZ(1,"a",42),e.NdJ("click",function(){return e.CHM(ce),e.oxw(2).registerNew()}),e.TgZ(2,"span",43),e._uU(3,"Register New"),e.qZA(),e.qZA(),e.qZA()}}function J(K,G){if(1&K&&(e.TgZ(0,"div",39),e.YNc(1,Q,4,0,"div",40),e.qZA()),2&K){var ce=e.oxw();e.xp6(1),e.Q6J("ngIf",ce.errorMessage)}}var te=function(){var K=function(){function G(ce,_e,Me,ve,ue,lt,Xe){(0,S.Z)(this,G),this.substanceService=ce,this.substanceFormService=_e,this.configService=Me,this.overlayContainerService=ve,this.scrollToService=ue,this.dialog=lt,this.router=Xe,this.selectionUpdated=new e.vpe,this.placeholder="Search",this.hintMessage="",this.header="Substance",this.showMorelinks=!1,this.substanceSelectorProperties=null}return(0,t.Z)(G,[{key:"StoreSelection",value:function(){this.substanceFormService.setStoredRelated(this.selectedSubstance,this.header),alert("Default "+this.header+" is set to "+this.selectedSubstance._name)}},{key:"ngOnInit",value:function(){var _e=this.substanceFormService.getStoredRelated(this.header);_e&&(this.selectedSubstance=_e,this.selectionUpdated.emit(this.selectedSubstance)),null!=this.configService.configData.substanceSelectorProperties?this.substanceSelectorProperties=this.configService.configData.substanceSelectorProperties:console.log("The config value for substanceSelectorProperties is null."),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"subuuid",set:function(_e){var Me=this;_e&&this.substanceService.getSubstanceSummary(_e).subscribe(function(ve){Me.selectedSubstance=ve,Me.errorMessage=""},function(ve){Me.selectedSubstance=Me.name&&""!==Me.name?{_name:Me.name}:{_name:""},Me.errorMessage="Not in database"})}},{key:"processSubstanceSearch",value:function(){var _e=this,Me=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",ve=Me.replace('"',""),ue=this.substanceSelectorProperties.map(function(lt){return"".concat(lt,':"^').concat(ve,'$"')}).join(" OR ");this.substanceService.getQuickSubstancesSummaries(ue,!0).subscribe(function(lt){lt.content&<.content.length?(_e.selectedSubstance=lt.content[0],_e.selectionUpdated.emit(_e.selectedSubstance),_e.errorMessage=""):_e.errorMessage="No substances found"})}},{key:"advanced",value:function(_e){var Me=this,ve=window.pageYOffset;window.scroll({top:0,left:0,behavior:"auto"});var ue=0;"name"===_e&&(ue=1);var lt=this.dialog.open(o.b,{minWidth:"80%",maxWidth:"90%",height:"92%",data:{uuid:this.selectedSubstance?this.selectedSubstance.uuid:null,name:this.selectedSubstance?this.selectedSubstance._name:null,tab:ue}});this.overlayContainer.style.zIndex="1002",lt.afterClosed().subscribe(function(Xe){window.scroll({top:ve,left:0,behavior:"auto"}),Xe&&(Me.selectedSubstance=Xe,Me.selectionUpdated.emit(Xe),Me.errorMessage=""),Me.overlayContainer.style.zIndex=null})}},{key:"openImageModal",value:function(){var _e=this,ue=this.selectedSubstance,lt=this.dialog.open(_.oV,{width:"650px",panelClass:"structure-image-panel",data:"chemical"===ue.substanceClass?{structure:ue.uuid,smiles:ue.structure.smiles,uuid:ue.uuid,names:ue.names,component:"substanceSelector"}:{structure:ue.uuid,names:ue.names,component:"substanceSelector",uuid:ue.uuid}});this.overlayContainer.style.zIndex="1002";var Xe=lt.afterClosed().subscribe(function(mt){_e.overlayContainer.style.zIndex=null,Xe.unsubscribe()},function(){_e.overlayContainer.style.zIndex=null,Xe.unsubscribe()})}},{key:"editSelectedSubstance",value:function(){this.previousSubstance=JSON.parse(JSON.stringify(this.selectedSubstance)),this.selectedSubstance=null,this.selectionUpdated.emit(this.selectedSubstance)}},{key:"revertEdit",value:function(){this.selectedSubstance=JSON.parse(JSON.stringify(this.previousSubstance)),this.selectionUpdated.emit(this.selectedSubstance)}},{key:"delete",value:function(){this.selectedSubstance=null,this.selectionUpdated.emit(null)}},{key:"openInNewTab",value:function(_e){var Me;Me=this.configService.configData&&this.configService.configData.gsrsHomeBaseUrl?this.configService.configData.gsrsHomeBaseUrl+"/substances/"+_e:this.router.serializeUrl(this.router.createUrlTree(["/substances/"+_e])),window.open(Me,"_blank")}},{key:"registerNew",value:function(){var _e;_e=this.configService.configData&&this.configService.configData.gsrsHomeBaseUrl?this.configService.configData.gsrsHomeBaseUrl+"/substances/register":this.router.serializeUrl(this.router.createUrlTree(["/substances/register"])),window.open(_e,"_blank")}}]),G}();return K.\u0275fac=function(ce){return new(ce||K)(e.Y36(c.d),e.Y36(s.B),e.Y36(u.E),e.Y36(h.Xj),e.Y36(b.i),e.Y36(T.uw),e.Y36(y.F0))},K.\u0275cmp=e.Xpm({type:K,selectors:[["app-substance-selector"]],inputs:{eventCategory:"eventCategory",placeholder:"placeholder",hintMessage:"hintMessage",header:"header",name:"name",hideImage:"hideImage",showMorelinks:"showMorelinks",subuuid:"subuuid"},outputs:{selectionUpdated:"selectionUpdated"},decls:12,vars:10,consts:[[1,"substance-selector-container"],["source","form-search",3,"ngClass","eventCategory","placeholder","searchPerformed"],["class","undo",4,"ngIf"],["class","selected-substance",4,"ngIf"],[4,"ngIf"],[1,"centered"],[2,"color","#1565c0","font-weight","550","margin-top","3px","margin-right","10px",3,"click"],[2,"color","#1565c0","font-weight","550","margin-top","3px",3,"click"],["class","code",4,"ngIf"],["class","divflex",4,"ngIf"],[1,"undo"],["mat-icon-button","","matTooltip","revert to previously selected",1,"undo",3,"click"],["aria-label","Revert substance edit","svgIcon","undo",3,"ngClass"],[1,"selected-substance"],["class","selected-substance-options",4,"ngIf"],[1,"section-header"],[1,"tile-title"],["class","approval-id",4,"ngIf"],[1,"zoom",3,"click"],["class","related-image","appSubstanceImage","",3,"entityId",4,"ngIf"],[1,"name-div"],["target","_blank","matTooltip","view details in a new tab",1,"name-link",3,"click"],[3,"innerHTML"],["aria-label","Open in new tab","svgIcon","open_in_new",1,"new-tab"],[1,"under-link",3,"click"],[1,"selected-substance-options"],["mat-mini-fab","",3,"click"],["aria-label","Edit Selected Substance","svgIcon","edit","matTooltip","change selection"],["mat-mini-fab","","target","_blank",3,"click",4,"ngIf"],["mat-mini-fab","","matTooltip","delete",1,"undo",3,"click"],["aria-label","delete selection","svgIcon","cancel"],["mat-mini-fab","","matTooltip","Store as default relationship",1,"undo",3,"click"],["aria-label","Store as default substance for relationship type","svgIcon","move_to_inbox"],["mat-mini-fab","","target","_blank",3,"click"],["aria-label","Open in new tab","svgIcon","open_in_new","matTooltip","view details in a new tab"],[1,"approval-id"],["appSubstanceImage","",1,"related-image",3,"entityId"],[1,"code"],[2,"color","#1565c0","font-weight","550","margin-top","5px",3,"click"],[1,"divflex"],["class","marginright10px",4,"ngIf"],[1,"marginright10px"],["target","_blank","matTooltip","Register New Substance",3,"click"],[1,"font11px"]],template:function(ce,_e){1&ce&&(e.TgZ(0,"div",0),e.TgZ(1,"app-substance-text-search",1),e.NdJ("searchPerformed",function(ve){return _e.processSubstanceSearch(ve)}),e.qZA(),e.YNc(2,L,3,3,"div",2),e.YNc(3,be,18,6,"div",3),e.YNc(4,z,3,0,"div",4),e.TgZ(5,"div",5),e.TgZ(6,"a",6),e.NdJ("click",function(){return _e.advanced("structure")}),e._uU(7,"Structure Search"),e.qZA(),e.TgZ(8,"a",7),e.NdJ("click",function(){return _e.advanced("name")}),e._uU(9,"Name Search"),e.qZA(),e.qZA(),e.YNc(10,d,3,0,"span",8),e.YNc(11,J,2,1,"div",9),e.qZA()),2&ce&&(e.xp6(1),e.Q6J("ngClass",e.VKq(8,I,_e.selectedSubstance))("eventCategory",_e.eventCategory)("placeholder",_e.placeholder),e.xp6(1),e.Q6J("ngIf",_e.previousSubstance),e.xp6(1),e.Q6J("ngIf",_e.selectedSubstance),e.xp6(1),e.Q6J("ngIf",_e.previousSubstance&&!_e.selectedSubstance),e.xp6(6),e.Q6J("ngIf","No substances found"===_e.errorMessage),e.xp6(1),e.Q6J("ngIf",_e.showMorelinks))},directives:[Y.e,q.mk,q.O5,B.lW,k.gM,D.Hw,B.zs,N.m],styles:[".selected-substance-container[_ngcontent-%COMP%]{max-width:100%;width:100%}.zoom[_ngcontent-%COMP%]{cursor:zoom-in!important} .zoom:hover{cursor:zoom-in!important}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in!important}.approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--primary-color)}.name-div[_ngcontent-%COMP%]{margin-top:-3px;margin-bottom:7px}.change-link[_ngcontent-%COMP%]{margin-right:25px;margin-left:-40px}.under-link[_ngcontent-%COMP%]{color:var(--link-color);font-weight:550}.name-link[_ngcontent-%COMP%]{color:var(--link-color);text-decoration:underline}.new-tab[_ngcontent-%COMP%]{height:16px!important;width:16px!important}.centered[_ngcontent-%COMP%]{text-align:center;margin-left:-42px;margin-top:5px}.selected-substance[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:center;position:relative}.selected-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block;max-width:200px}.selected-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%] [_ngcontent-%COMP%]:hover{cursor:zoom-in!important}.undo[_ngcontent-%COMP%]{float:right;margin-top:-5px}.selected-substance-options[_ngcontent-%COMP%]{position:absolute;right:5px;top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]{background-color:var(--mat-icon-button-bg-color);color:var(--label-color);width:35px;height:35px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0}.hidden[_ngcontent-%COMP%]{display:none!important}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;font-size:12px}.marginright10px[_ngcontent-%COMP%]{margin-right:10px}"]}),K}()},63200:function(Ce,E,n){"use strict";n.d(E,{U:function(){return d}});var S=n(1884),t=n(39117),e=n(36362),c=n(84844),u=n(65590),o=n(87317),_=n(98002),s=n(24054),h=n(40089),b=n(86129),T=n(47078),y=n(96769),Y=n(1130),q=n(44770),B=n(91434),k=n(11961),D=n(68390),N=n(26439),I=n(12379),L=n(61859),j=n(16531),le=n(90587),re=n(86613),W=n(82835),$=n(30639),be=n(9292),z=n(43785),d=function(){var Q=(0,S.Z)(function J(){(0,t.Z)(this,J)});return Q.\u0275fac=function(te){return new(te||Q)},Q.\u0275mod=re.oAB({type:Q}),Q.\u0275inj=re.cJS({imports:[[e.ez,c.d,u.Ps,o.ot,h.AV,_.Bz,s.f,T.hQ,y.O,Y.Ng,q.lN,B.LD,k.QW,D.Fk,N.TU,I.Nh,L.KP,j.To,le.u5]]}),Q}();re.B6R(b.b,[o.lW,u.Hw,I.SP,I.uX,I.Vc,j.ib,W.K,D.VQ,D.U0,e.O5,L.pH,$.W,N.NW,e.sg,k.a8,k.n5,k.dn,be.m,h.gM,z.e,q.KE,q.hX,B.gD,le.JJ,le.On,Y.ey],[])},91526:function(Ce,E,n){"use strict";n.r(E),n.d(E,{Ssg2ManufacturingModule:function(){return We}});var S=n(39117),t=n(1884),e=n(36362),c=n(98002),u=n(90587),o=n(44770),_=n(91434),s=n(43365),h=n(61534),b=n(68390),T=n(87317),y=n(31959),Y=n(65590),q=n(40089),B=n(82796),k=n(12379),D=n(19975),N=n(81196),I=n(43188),L=n(95758),j=n(97217),le=n(26131),re=n(16531),W=n(70178),$=n(74742),be=n(60833),z=n(49241),d=n(64061),Q=n(65831),J=n(94673),te=n(45723),K=n(7168),G=n(63200),ce=n(24054),_e=n(46751),Me=n(56101),ve=n(33567),ue=n(40104),lt=n(18291),Xe=n(79223),mt=n(97424),wt=n(28042),Pt=n(34929),Pe=n(86613),ft=function(xe){(0,_e.Z)(Fe,xe);var ut=(0,Me.Z)(Fe);function Fe(et){var Ht;return(0,S.Z)(this,Fe),(Ht=ut.call(this,et)).substanceFormService=et,Ht}return(0,t.Z)(Fe,[{key:"initSubtanceForm",value:function(){var Ht=this;(0,mt.Z)((0,wt.Z)(Fe.prototype),"initSubtanceForm",this).call(this);var nn=this.substanceFormService.substance.subscribe(function(an){Ht.substance=an,Ht.substance.specifiedSubstanceG2||(Ht.substance.specifiedSubstanceG2={}),Ht.substance.specifiedSubstanceG2.manufacturing||(Ht.substance.specifiedSubstanceG2.manufacturing=[]),Ht.substanceFormService.resetState(),Ht.propertyEmitter.next(Ht.substance.specifiedSubstanceG2.manufacturing)});this.subscriptions.push(nn)}},{key:"specifiedSubstanceG2Manufacturing",get:function(){return this.propertyEmitter.asObservable()}},{key:"addManufacturing",value:function(){this.substance.specifiedSubstanceG2.manufacturing.unshift({}),this.propertyEmitter.next(this.substance.specifiedSubstanceG2.manufacturing)}},{key:"deleteManufacturing",value:function(Ht){this.substance.specifiedSubstanceG2.manufacturing.splice(Ht,1),this.propertyEmitter.next(this.substance.specifiedSubstanceG2.manufacturing)}}]),Fe}(n(68785).E);ft.\u0275fac=function(ut){return new(ut||ft)(Pe.LFG(ve.B))},ft.\u0275prov=Pe.Yz7({token:ft,factory:ft.\u0275fac,providedIn:"root"}),ft=(0,Pt.gn)([(0,Pe.GSi)(),(0,Pt.w6)("design:paramtypes",[ve.B])],ft);var ct=n(16667);function Ee(xe,ut){1&xe&&Pe._UZ(0,"hr")}function st(xe,ut){1&xe&&(Pe.TgZ(0,"span"),Pe._UZ(1,"br"),Pe._UZ(2,"br"),Pe.qZA())}function nt(xe,ut){if(1&xe){var Fe=Pe.EpF();Pe.TgZ(0,"div"),Pe.YNc(1,Ee,1,0,"hr",1),Pe.YNc(2,st,3,0,"span",1),Pe.TgZ(3,"div",2),Pe.TgZ(4,"div",3),Pe.TgZ(5,"button",4),Pe.NdJ("click",function(){var It=Pe.CHM(Fe).index;return Pe.oxw().confirmDeleteManufacturing(It)}),Pe._UZ(6,"mat-icon",5),Pe.qZA(),Pe.qZA(),Pe.TgZ(7,"app-cv-input",6),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.manufacturingType=kt}),Pe.qZA(),Pe.TgZ(8,"app-cv-input",7),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.productionMethodType=kt}),Pe.qZA(),Pe.TgZ(9,"app-cv-input",8),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.productionSystemType=kt}),Pe.qZA(),Pe.TgZ(10,"app-cv-input",9),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.productionSystem=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(11,"div",2),Pe.TgZ(12,"mat-form-field",10),Pe.TgZ(13,"input",11),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.productionMethodDescription=kt}),Pe.qZA(),Pe.qZA(),Pe.qZA(),Pe._UZ(14,"hr"),Pe._UZ(15,"br"),Pe.TgZ(16,"span",12),Pe.TgZ(17,"b"),Pe._uU(18,"Organization: "),Pe.qZA(),Pe.qZA(),Pe._uU(19,"\xa0\xa0\xa0 "),Pe.TgZ(20,"div",2),Pe.TgZ(21,"mat-form-field",13),Pe.TgZ(22,"input",14),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.productionMethodDescription=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(23,"button",15),Pe.NdJ("click",function(){return Pe.CHM(Fe),Pe.oxw().searchOrganization()}),Pe._UZ(24,"mat-icon",16),Pe._uU(25," Search "),Pe.qZA(),Pe.qZA(),Pe._UZ(26,"br"),Pe.TgZ(27,"b"),Pe._uU(28,"OR Enter a new Organization"),Pe.qZA(),Pe.TgZ(29,"div",2),Pe.TgZ(30,"mat-form-field",17),Pe.TgZ(31,"input",18),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.manufacturerId=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(32,"mat-form-field",17),Pe.TgZ(33,"input",19),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.manufacturerName=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(34,"app-cv-input",20),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.issuerOfID=kt}),Pe.qZA(),Pe.TgZ(35,"app-cv-input",21),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.manufacturerRole=kt}),Pe.qZA(),Pe.qZA(),Pe._UZ(36,"hr"),Pe._UZ(37,"br"),Pe.TgZ(38,"span",12),Pe.TgZ(39,"b"),Pe._uU(40,"Sites: "),Pe.qZA(),Pe.qZA(),Pe._uU(41,"\xa0\xa0\xa0 "),Pe.TgZ(42,"button",22),Pe.NdJ("click",function(){return Pe.CHM(Fe),Pe.oxw().addSite()}),Pe._uU(43," Add Site "),Pe._UZ(44,"mat-icon",23),Pe.qZA(),Pe.TgZ(45,"div",24),Pe._UZ(46,"span",25),Pe.qZA(),Pe.TgZ(47,"div",2),Pe.TgZ(48,"mat-form-field",13),Pe.TgZ(49,"input",26),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.manufacturerAddress=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(50,"mat-form-field",13),Pe.TgZ(51,"input",27),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.manufacturerCity=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(52,"app-cv-input",28),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.siteState=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(53,"div",2),Pe.TgZ(54,"mat-form-field",13),Pe.TgZ(55,"input",29),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.manufacturerZipcode=kt}),Pe.qZA(),Pe.qZA(),Pe.TgZ(56,"app-cv-input",30),Pe.NdJ("valueChange",function(kt){return Pe.CHM(Fe).$implicit.siteCountry=kt}),Pe.qZA(),Pe.TgZ(57,"mat-form-field",13),Pe.TgZ(58,"input",31),Pe.NdJ("ngModelChange",function(kt){return Pe.CHM(Fe).$implicit.siteGeoCode=kt}),Pe.qZA(),Pe.qZA(),Pe.qZA(),Pe._UZ(59,"br"),Pe.qZA()}if(2&xe){var et=ut.$implicit,Ht=ut.index,nn=Pe.oxw();Pe.xp6(1),Pe.Q6J("ngIf",Ht>0),Pe.xp6(1),Pe.Q6J("ngIf",Ht>0),Pe.xp6(3),Pe.MGl("matTooltip","Delete Manufacturing ",nn.privateStageIndex+1,""),Pe.xp6(2),Pe.Q6J("model",et.manufacturingType),Pe.xp6(1),Pe.Q6J("model",et.productionMethodType),Pe.xp6(1),Pe.Q6J("model",et.productionSystemType),Pe.xp6(1),Pe.Q6J("model",et.productionSystem),Pe.xp6(3),Pe.Q6J("ngModel",et.productionMethodDescription),Pe.xp6(9),Pe.Q6J("ngModel",et.productionMethodDescription),Pe.xp6(9),Pe.Q6J("ngModel",et.manufacturerId),Pe.xp6(2),Pe.Q6J("ngModel",et.manufacturerName),Pe.xp6(1),Pe.Q6J("model",et.issuerOfID),Pe.xp6(1),Pe.Q6J("model",et.manufacturerRole),Pe.xp6(14),Pe.Q6J("ngModel",et.manufacturerAddress),Pe.xp6(2),Pe.Q6J("ngModel",et.manufacturerCity),Pe.xp6(1),Pe.Q6J("model",et.siteState),Pe.xp6(3),Pe.Q6J("ngModel",et.manufacturerZipcode),Pe.xp6(1),Pe.Q6J("model",et.siteCountry),Pe.xp6(2),Pe.Q6J("ngModel",et.siteGeoCode)}}var at=function(){var xe=function(ut){(0,_e.Z)(et,ut);var Fe=(0,Me.Z)(et);function et(Ht,nn,an,kt){var It;return(0,S.Z)(this,et),(It=Fe.call(this)).substanceFormService=Ht,It.substanceFormSsg2ManufacturingService=nn,It.gaService=an,It.cvService=kt,It.subscriptions=[],It.analyticsEventCategory="substance form ssg 2 Manufacturing",It}return(0,t.Z)(et,[{key:"ngOnInit",value:function(){var nn=this;this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Manufacturing");var an=this.substanceFormService.substance.subscribe(function(kt){nn.substance=kt,kt.specifiedSubstanceG2.manufacturing||(kt.specifiedSubstanceG2.manufacturing=[]),nn.substanceFormService.resetState(),nn.manufacturing=kt.specifiedSubstanceG2.manufacturing});this.subscriptions.push(an)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(nn){nn.unsubscribe()})}},{key:"addItem",value:function(){this.substanceFormSsg2ManufacturingService.addManufacturing()}},{key:"confirmDeleteManufacturing",value:function(nn){this.substanceFormSsg2ManufacturingService.deleteManufacturing(nn)}},{key:"searchOrganization",value:function(){}}]),et}(Xe.o);return xe.\u0275fac=function(Fe){return new(Fe||xe)(Pe.Y36(ve.B),Pe.Y36(ft),Pe.Y36(ue.$),Pe.Y36(lt.I))},xe.\u0275cmp=Pe.Xpm({type:xe,selectors:[["app-ssg2-manufacturing"]],features:[Pe.qOj],decls:1,vars:1,consts:[[4,"ngFor","ngForOf"],[4,"ngIf"],[1,"form-row"],[1,"delete-container"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever"],["domain","SSG_MANUFACTURING_TYPE","title","Manufacturing Type","name","manufacturingType",1,"col-4-1",3,"model","valueChange"],["domain","SSG_PRODUCTION_METHOD_TYPE","title","Production Method Type","name","productionMethodType",1,"col-4-1",3,"model","valueChange"],["domain","SSG_PRODUCTION_SYSTEM_TYPE","title","Production System Type","name","productionSystemType",1,"col-4-1",3,"model","valueChange"],["domain","SSG_PRODUCTION_SYSTEM","title","Production System","name","productionSystem",1,"col-4-1",3,"model","valueChange"],[1,"col-1-1"],["matInput","","placeholder","Product Method Description","name","manufacture.productionMethodDescription",3,"ngModel","ngModelChange"],[1,"fontsize18px"],[1,"col-3-1"],["matInput","","placeholder","Search Organization Name","name","manufacture.productionMethodDescription",3,"ngModel","ngModelChange"],["mat-button","",3,"click"],["svgIcon","search"],[1,"col-4-1"],["matInput","","placeholder","Organization ID","name","manufacture.manufacturerId",3,"ngModel","ngModelChange"],["matInput","","placeholder","Organization Name","name","manufacture.manufacturerName",3,"ngModel","ngModelChange"],["domain","SSG_ISSUER_OF_ID","title","Issuer of ID","name","issuerOfID",1,"col-4-1",3,"model","valueChange"],["domain","SSG_ORGANIZATION_ROLE","title","Organization Role","name","manufacturerRole",1,"col-4-1",3,"model","valueChange"],["mat-stroked-button","","color","primary",3,"click"],["svgIcon","add_circle_outline"],[1,"divflex"],[1,"middle-fill"],["matInput","","placeholder","Site Address","name","manufacture.manufacturerAddress",3,"ngModel","ngModelChange"],["matInput","","placeholder","Site City","name","manufacture.manufacturerCity",3,"ngModel","ngModelChange"],["domain","SSG_STAGE_STATE","title","Site State","name","siteState",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Site Zipcode","name","manufacture.manufacturerZipcode",3,"ngModel","ngModelChange"],["domain","PROD_COUNTRY_CODE","title","Site Country","name","siteCountry",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Site GEO Code","name","manufacture.siteGeoCode",3,"ngModel","ngModelChange"]],template:function(Fe,et){1&Fe&&Pe.YNc(0,nt,60,19,"div",0),2&Fe&&Pe.Q6J("ngForOf",et.manufacturing)},directives:[e.sg,e.O5,T.lW,q.gM,Y.Hw,ct.S,o.KE,s.Nt,u.Fj,u.JJ,u.On],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:10px}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.references-container[_ngcontent-%COMP%]{width:100%}.materialborder[_ngcontent-%COMP%]{padding-top:10px;margin-top:15px;border:2px solid #b6afaf}.materialtitle[_ngcontent-%COMP%]{font-size:18px;padding-left:10px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}.borderorange[_ngcontent-%COMP%]{border:1px solid orangered}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.colorgreen[_ngcontent-%COMP%]{color:green}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:25px;margin-right:20px;background-color:#fff;border:1px solid #007CBA}.button-delete-stage[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:20px;color:red;background-color:#fff;border:1px solid red}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}.button-insert-before[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:360px;color:#007cba;background-color:#fff;border:1px solid #007CBA}.button-insert-after[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:180px;color:#007cba;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 1px #A0A0A3!important;padding:0 10px 10px;border-bottom:none;border-radius:3px;margin-bottom:30px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px}"]}),xe}(),We=function(){var xe=function(){function ut(){(0,S.Z)(this,ut)}return(0,t.Z)(ut,null,[{key:"forRoot",value:function(){return{ngModule:ut,providers:[]}}}]),ut}();return xe.\u0275fac=function(Fe){return new(Fe||xe)},xe.\u0275mod=Pe.oAB({type:xe}),xe.\u0275inj=Pe.cJS({imports:[[d.o.forChild(at),e.ez,u.UX,u.u5,o.lN,B.Tx,h.p9,T.ot,Y.Ps,q.AV,k.Nh,D.t,_.LD,s.c,N.Hi,I.Bb,J.w,L.Is,j.p0,re.To,W.g,b.Fk,te.F,G.U,le.ie,Q.x,y.vV,z.s,c.Bz,ce.f,be.Cv,$.Cq,K.O]]}),xe}()},89965:function(Ce,E,n){"use strict";n.r(E),n.d(E,{SubstanceSsg4mProcessModule:function(){return St}});var S=n(1884),t=n(39117),e=n(36362),c=n(64061),u=n(7168),o=n(19975),_=n(65590),s=n(87317),h=n(40089),b=n(70178),T=n(94673),y=n(44770),Y=n(90587),q=n(26439),B=n(43365),k=n(61534),D=n(12379),N=n(36730),I=n(9597),L=n(46751),j=n(56101),le=n(24874),re=n(79550),W=n(33567),$=n(97424),be=n(28042),z=n(34929),d=n(86613),Q=n(68785),J=function(ie){(0,L.Z)(fe,ie);var Ye=(0,j.Z)(fe);function fe(oe){var bt;return(0,t.Z)(this,fe),(bt=Ye.call(this,oe)).substanceFormService=oe,bt}return(0,S.Z)(fe,[{key:"initSubtanceForm",value:function(){var bt=this;(0,$.Z)((0,be.Z)(fe.prototype),"initSubtanceForm",this).call(this);var xt=this.substanceFormService.substance.subscribe(function(Jt){bt.substance=Jt,bt.substance.specifiedSubstanceG4m||(bt.substance.specifiedSubstanceG4m={}),bt.substance.specifiedSubstanceG4m.process||(bt.substance.specifiedSubstanceG4m.process=[{sites:[]}]),bt.substance.specifiedSubstanceG4m.process||(bt.substance.specifiedSubstanceG4m.process=[{sites:[]}]),bt.substanceFormService.resetState(),bt.propertyEmitter.next(bt.substance.specifiedSubstanceG4m.process)});this.subscriptions.push(xt)}},{key:"specifiedSubstanceG4mSite",get:function(){return this.propertyEmitter.asObservable()}},{key:"addSite",value:function(bt){this.substance.specifiedSubstanceG4m.process[bt].sites.push({siteName:"",stages:[]}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[bt].sites)}},{key:"deleteSite",value:function(bt){}}]),fe}(Q.E);J.\u0275fac=function(Ye){return new(Ye||J)(d.LFG(W.B))},J.\u0275prov=d.Yz7({token:J,factory:J.\u0275fac,providedIn:"root"}),J=(0,z.gn)([(0,d.GSi)(),(0,z.w6)("design:paramtypes",[W.B])],J);var te=function(ie){(0,L.Z)(fe,ie);var Ye=(0,j.Z)(fe);function fe(oe,bt){var xt;return(0,t.Z)(this,fe),(xt=Ye.call(this,oe)).substanceFormService=oe,xt.substanceFormSsg4mSitesService=bt,xt}return(0,S.Z)(fe,[{key:"initSubtanceForm",value:function(){var bt=this;(0,$.Z)((0,be.Z)(fe.prototype),"initSubtanceForm",this).call(this);var xt=this.substanceFormService.substance.subscribe(function(Jt){bt.substance=Jt,bt.substance.specifiedSubstanceG4m||(bt.substance.specifiedSubstanceG4m={}),bt.substance.specifiedSubstanceG4m.process||(bt.substance.specifiedSubstanceG4m.process=[]),bt.substanceFormService.resetState(),bt.propertyEmitter.next(bt.substance.specifiedSubstanceG4m.process)});this.subscriptions.push(xt)}},{key:"specifiedSubstanceG4mProcess",get:function(){return this.propertyEmitter.asObservable()}},{key:"insertProcess",value:function(bt,xt){var Jt={processName:"",sites:[{stages:[{stageNumber:"Stage 1",startingMaterials:[],processingMaterials:[],resultingMaterials:[],criticalParameters:[]}]}]};xt&&"before"===xt?(Jt.processName="Process "+(bt+1).toString(),this.substance.specifiedSubstanceG4m.process.splice(bt,0,Jt)):(Jt.processName="Process "+(bt+2).toString(),this.substance.specifiedSubstanceG4m.process.splice(bt+1,0,Jt)),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process)}},{key:"addProcess",value:function(){this.substance.specifiedSubstanceG4m.process.push({processName:"Process "+(this.substance.specifiedSubstanceG4m.process.length+1),sites:[{stages:[{stageNumber:"Stage 1",startingMaterials:[],processingMaterials:[],resultingMaterials:[],criticalParameters:[]}]}]}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process)}},{key:"deleteProcess",value:function(bt,xt){xt>-1&&(this.substance.specifiedSubstanceG4m.process.splice(xt,1),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process))}},{key:"addSite",value:function(bt){}}]),fe}(Q.E);te.\u0275fac=function(Ye){return new(Ye||te)(d.LFG(W.B),d.LFG(J))},te.\u0275prov=d.Yz7({token:te,factory:te.\u0275fac,providedIn:"root"}),te=(0,z.gn)([(0,d.GSi)(),(0,z.w6)("design:paramtypes",[W.B,J])],te);var K=n(92507),G=n(69093),ce=n(95758),_e=n(50318),Me=n(53141),ve=n(53956),ue=n(54244),lt=n(9292);function Xe(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.TgZ(1,"mat-checkbox",4),d.NdJ("change",function(xt){return d.CHM(fe),d.oxw(2).updateShowSubstanceRole(xt)}),d._uU(2," Show Substance Role "),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(2);d.xp6(1),d.Q6J("checked",oe.showSubstanceRole)}}function mt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.TgZ(1,"mat-checkbox",4),d.NdJ("change",function(xt){return d.CHM(fe),d.oxw(2).updateShowCriticalParameter(xt)}),d._uU(2," Show Critical Parameter "),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(2);d.xp6(1),d.Q6J("checked",oe.showCriticalParameter)}}function wt(ie,Ye){if(1&ie&&(d.TgZ(0,"div",2),d.YNc(1,Xe,3,1,"div",3),d._uU(2," \xa0\xa0\xa0 "),d.YNc(3,mt,3,1,"div",3),d.qZA()),2&ie){var fe=d.oxw();d.xp6(1),d.Q6J("ngIf",fe.processList&&fe.processList.length>0),d.xp6(2),d.Q6J("ngIf",fe.processList&&fe.processList.length>0)}}function Pt(ie,Ye){1&ie&&(d.TgZ(0,"div",27),d.TgZ(1,"b"),d._uU(2,"+"),d.qZA(),d.qZA())}function Pe(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"span"),d.TgZ(1,"a",28),d.NdJ("click",function(){d.CHM(fe);var xt=d.oxw(2).$implicit;return d.oxw(7).openImageModal(xt.substanceName.refuuid,xt.substanceName.approvalID,xt.substanceName.refPname),!1}),d._uU(2),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(2).$implicit;d.xp6(2),d.hij(" ",oe.substanceName.refPname," ")}}function ze(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._UZ(1,"br"),d._uU(2),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(2),d.hij(" Material Display Name: ",fe.verbatimName," ")}}function ft(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._UZ(1,"br"),d.TgZ(2,"b"),d._uU(3),d.qZA(),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(3),d.hij("(",fe.substanceRole,")")}}function ct(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.YNc(1,Pt,3,0,"div",24),d.TgZ(2,"a",25),d.NdJ("click",function(){d.CHM(fe);var qi=d.oxw().$implicit;return d.oxw(7).openImageModal(qi.substanceName.refuuid,qi.substanceName.approvalID,qi.substanceName.refPname)}),d._UZ(3,"img",26),d.qZA(),d.TgZ(4,"div"),d.YNc(5,Pe,3,1,"span",3),d.YNc(6,ze,3,1,"span",3),d.YNc(7,ft,4,1,"span",3),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(),bt=oe.index,xt=oe.$implicit,Jt=d.oxw(2).$implicit,zn=d.oxw(5);d.xp6(1),d.Q6J("ngIf",Jt.startingMaterials.length>1&&0!=bt),d.xp6(2),d.Q6J("entityId",xt.substanceName.refuuid),d.xp6(2),d.Q6J("ngIf",xt.substanceName.refPname),d.xp6(1),d.Q6J("ngIf",xt.verbatimName),d.xp6(1),d.Q6J("ngIf",zn.showSubstanceRole)}}function Ee(ie,Ye){if(1&ie&&(d.TgZ(0,"div",23),d.YNc(1,ct,8,5,"div",3),d.qZA()),2&ie){var fe=Ye.$implicit;d.xp6(1),d.Q6J("ngIf",fe.substanceName)}}function st(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"span"),d.TgZ(1,"a",28),d.NdJ("click",function(){d.CHM(fe);var xt=d.oxw(4).$implicit;return d.oxw(7).openImageModal(xt.substanceName.refuuid,xt.substanceName.approvalID,xt.substanceName.refPname),!1}),d.TgZ(2,"b"),d._uU(3),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(4).$implicit;d.xp6(3),d.Oqu(oe.substanceName.refPname)}}function nt(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1," \xa0"),d.TgZ(2,"b"),d._uU(3),d.qZA(),d.qZA()),2&ie){var fe=d.oxw(4).$implicit;d.xp6(3),d.hij("(",fe.substanceRole,")")}}function at(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.TgZ(1,"div",29),d.TgZ(2,"div",30),d.TgZ(3,"button",31),d.NdJ("click",function(){d.CHM(fe);var Jt=d.oxw(3).$implicit;return d.oxw(7).openImageModal(Jt.substanceName.refuuid,Jt.substanceName.approvalID,Jt.substanceName.refPname)}),d.TgZ(4,"mat-icon",32),d._uU(5,"info"),d.qZA(),d.qZA(),d.qZA(),d.TgZ(6,"div"),d.YNc(7,st,4,1,"span",3),d.YNc(8,nt,4,1,"span",3),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(3).$implicit,bt=d.oxw(7);d.xp6(7),d.Q6J("ngIf",oe.substanceName.refPname),d.xp6(1),d.Q6J("ngIf",bt.showSubstanceRole)}}function We(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,at,9,2,"div",3),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(1),d.Q6J("ngIf","Solvent"!==fe.substanceRole)}}function xe(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,We,2,1,"div",3),d.qZA()),2&ie){var fe=d.oxw().$implicit;d.xp6(1),d.Q6J("ngIf",fe.substanceRole)}}function ut(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,xe,2,1,"div",3),d.qZA()),2&ie){var fe=Ye.$implicit;d.xp6(1),d.Q6J("ngIf",fe.substanceName)}}function Fe(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"span"),d.TgZ(1,"a",28),d.NdJ("click",function(){d.CHM(fe);var xt=d.oxw(4).$implicit;return d.oxw(7).openImageModal(xt.substanceName.refuuid,xt.substanceName.approvalID,xt.substanceName.refPname),!1}),d.TgZ(2,"b"),d._uU(3),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(4).$implicit;d.xp6(3),d.Oqu(oe.substanceName.refPname)}}function et(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1," \xa0"),d.TgZ(2,"b"),d._uU(3),d.qZA(),d.qZA()),2&ie){var fe=d.oxw(4).$implicit;d.xp6(3),d.hij("(",fe.substanceRole,")")}}function Ht(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.TgZ(1,"div",29),d.TgZ(2,"div",30),d.TgZ(3,"button",31),d.NdJ("click",function(){d.CHM(fe);var Jt=d.oxw(3).$implicit;return d.oxw(7).openImageModal(Jt.substanceName.refuuid,Jt.substanceName.approvalID,Jt.substanceName.refPname)}),d.TgZ(4,"mat-icon",32),d._uU(5,"info"),d.qZA(),d.qZA(),d.qZA(),d.TgZ(6,"div"),d.YNc(7,Fe,4,1,"span",3),d.YNc(8,et,4,1,"span",3),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(3).$implicit,bt=d.oxw(7);d.xp6(7),d.Q6J("ngIf",oe.substanceName.refPname),d.xp6(1),d.Q6J("ngIf",bt.showSubstanceRole)}}function nn(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,Ht,9,2,"div",3),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(1),d.Q6J("ngIf","Solvent"===fe.substanceRole)}}function an(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,nn,2,1,"div",3),d.qZA()),2&ie){var fe=d.oxw().$implicit;d.xp6(1),d.Q6J("ngIf",fe.substanceRole)}}function kt(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,an,2,1,"div",3),d.qZA()),2&ie){var fe=Ye.$implicit;d.xp6(1),d.Q6J("ngIf",fe.substanceName)}}function It(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.TgZ(1,"b"),d._uU(2),d.qZA(),d.qZA()),2&ie){var fe=d.oxw(2).$implicit,oe=d.oxw(7);d.xp6(2),d.Oqu(oe.displayAmount(fe.value,fe.name))}}function $e(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d.YNc(1,It,3,1,"div",3),d.qZA()),2&ie){var fe=d.oxw().$implicit;d.xp6(1),d.Q6J("ngIf",fe.value)}}function Ae(ie,Ye){if(1&ie&&(d.TgZ(0,"div",33),d.YNc(1,$e,2,1,"span",3),d.qZA()),2&ie){var fe=d.oxw(7);d.xp6(1),d.Q6J("ngIf",fe.showCriticalParameter)}}function X(ie,Ye){1&ie&&(d.TgZ(0,"div",36),d.TgZ(1,"b"),d._uU(2,"+"),d.qZA(),d.qZA())}function ne(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"span"),d.TgZ(1,"a",28),d.NdJ("click",function(){d.CHM(fe);var xt=d.oxw(2).$implicit;return d.oxw(7).openImageModal(xt.substanceName.refuuid,xt.substanceName.approvalID,xt.substanceName.refPname),!1}),d._uU(2),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(2).$implicit;d.xp6(2),d.hij(" ",oe.substanceName.refPname," ")}}function me(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._UZ(1,"br"),d._uU(2),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(2),d.hij(" Material Display Name:",fe.verbatimName," ")}}function Oe(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._UZ(1,"br"),d.TgZ(2,"b"),d._uU(3),d.qZA(),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(3),d.hij("(",fe.substanceRole,")")}}function He(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.YNc(1,X,3,0,"div",35),d.TgZ(2,"a",25),d.NdJ("click",function(){d.CHM(fe);var qi=d.oxw().$implicit;return d.oxw(7).openImageModal(qi.substanceName.refuuid,qi.substanceName.approvalID,qi.substanceName.refPname)}),d._UZ(3,"img",26),d.qZA(),d.TgZ(4,"div"),d.YNc(5,ne,3,1,"span",3),d.YNc(6,me,3,1,"span",3),d.YNc(7,Oe,4,1,"span",3),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(),bt=oe.index,xt=oe.$implicit,Jt=d.oxw(2).$implicit,zn=d.oxw(5);d.xp6(1),d.Q6J("ngIf",Jt.resultingMaterials.length>1&&0!=bt),d.xp6(2),d.Q6J("entityId",xt.substanceName.refuuid),d.xp6(2),d.Q6J("ngIf",xt.substanceName.refPname),d.xp6(1),d.Q6J("ngIf",xt.verbatimName),d.xp6(1),d.Q6J("ngIf",zn.showSubstanceRole)}}function At(ie,Ye){if(1&ie&&(d.TgZ(0,"div",34),d.YNc(1,He,8,5,"div",3),d.qZA()),2&ie){var fe=Ye.$implicit;d.xp6(1),d.Q6J("ngIf",fe.substanceName)}}function Ft(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.TgZ(1,"fieldset",11),d.TgZ(2,"legend",11),d._uU(3,"Step \xa0"),d.TgZ(4,"b"),d._uU(5),d.qZA(),d.qZA(),d.TgZ(6,"div",2),d.TgZ(7,"button",12),d.NdJ("click",function(){return d.CHM(fe),d.oxw(6).editInForm()}),d._UZ(8,"mat-icon",13),d._uU(9,"Edit in Form View "),d.qZA(),d.qZA(),d.TgZ(10,"table",14),d.TgZ(11,"tr",15),d.TgZ(12,"td",16),d.YNc(13,Ee,2,1,"div",17),d.qZA(),d.TgZ(14,"td",18),d.YNc(15,ut,2,1,"div",8),d.TgZ(16,"div",19),d._UZ(17,"img",20),d.qZA(),d.YNc(18,kt,2,1,"div",8),d.YNc(19,Ae,2,1,"div",21),d.qZA(),d.TgZ(20,"td",16),d.YNc(21,At,2,1,"div",22),d.qZA(),d.qZA(),d.qZA(),d._UZ(22,"br"),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw(),bt=oe.index,xt=oe.$implicit,Jt=d.oxw(5);d.xp6(5),d.Oqu(bt+1),d.xp6(8),d.Q6J("ngForOf",xt.startingMaterials),d.xp6(2),d.Q6J("ngForOf",xt.processingMaterials),d.xp6(2),d.s9C("src",Jt.imageLoc,d.LSH),d.xp6(1),d.Q6J("ngForOf",xt.processingMaterials),d.xp6(1),d.Q6J("ngForOf",xt.criticalParameters),d.xp6(2),d.Q6J("ngForOf",xt.resultingMaterials)}}function sn(ie,Ye){if(1&ie&&(d.TgZ(0,"div",10),d.YNc(1,Ft,23,7,"div",3),d.qZA()),2&ie){var fe=Ye.index,oe=d.oxw(5);d.xp6(1),d.Q6J("ngIf",-1===oe.showStageIndex||oe.showStageIndex>-1&&oe.showStageIndex===fe)}}function Xt(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,sn,2,1,"div",9),d.qZA()),2&ie){var fe=d.oxw().$implicit;d.xp6(1),d.Q6J("ngForOf",fe.stages)}}function gn(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.YNc(1,Xt,2,1,"div",3),d.qZA()),2&ie){var fe=Ye.index,oe=d.oxw(3);d.xp6(1),d.Q6J("ngIf",-1===oe.showSiteIndex||oe.showSiteIndex>-1&&oe.showSiteIndex===fe)}}function vn(ie,Ye){if(1&ie&&(d.TgZ(0,"div"),d.TgZ(1,"fieldset",6),d.TgZ(2,"legend",6),d._uU(3,"Process \xa0"),d.TgZ(4,"b"),d.TgZ(5,"span",7),d._uU(6),d.qZA(),d.qZA(),d.qZA(),d.YNc(7,gn,2,1,"div",8),d.qZA(),d.qZA()),2&ie){var fe=d.oxw(),oe=fe.index,bt=fe.$implicit,xt=d.oxw();d.xp6(6),d.AsE("",oe+1," of ",xt.processList.length,""),d.xp6(1),d.Q6J("ngForOf",bt.sites)}}function hn(ie,Ye){if(1&ie&&(d.TgZ(0,"div",5),d.YNc(1,vn,8,3,"div",3),d.qZA()),2&ie){var fe=Ye.index,oe=d.oxw();d.xp6(1),d.Q6J("ngIf",-1===oe.showProcessIndex||oe.showProcessIndex>-1&&oe.showProcessIndex===fe)}}var jn=function(){var ie=function(){function Ye(fe,oe,bt,xt,Jt){(0,t.Z)(this,Ye),this.configService=fe,this.substanceFormSsg4mProcessService=oe,this.substanceSsg4mService=bt,this.overlayContainerService=xt,this.dialog=Jt,this.tabSelectedIndexOut=new d.vpe,this.showProcessIndex=-1,this.showSiteIndex=-1,this.showStageIndex=-1,this.showSubstanceRole=!0,this.showCriticalParameter=!1,this.subscriptions=[]}return(0,S.Z)(Ye,[{key:"ngOnInit",value:function(){var oe=this,bt=this.substanceFormSsg4mProcessService.specifiedSubstanceG4mProcess.subscribe(function(xt){oe.processList=xt});this.subscriptions.push(bt),this.environment=this.configService.environment,this.imageLoc="".concat(this.environment.baseHref||"","assets/images/home/arrow.png"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.getHomepageUrl()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"openImageModal",value:function(oe,bt,xt){var Jt=this,hi=this.dialog.open(G.oV,{height:"96%",width:"650px",panelClass:"structure-image-panel",data:{structure:oe,uuid:oe,approvalID:bt,displayName:xt}});this.overlayContainer.style.zIndex="1001";var qi=hi.afterClosed().subscribe(function(){Jt.overlayContainer.style.zIndex="1001",qi.unsubscribe()},function(){Jt.overlayContainer.style.zIndex="1001",qi.unsubscribe()})}},{key:"displayAmount",value:function(oe,bt){return this.displayAmountCompose(oe,bt)}},{key:"editInForm",value:function(){this.tabSelectedIndexOut.emit(0)}},{key:"updateShowSubstanceRole",value:function(oe){this.showSubstanceRole=oe.checked}},{key:"updateShowCriticalParameter",value:function(oe){this.showCriticalParameter=oe.checked}},{key:"getHomepageUrl",value:function(){this.gsrsHomeBaseUrl=this.configService.configData&&this.configService.configData.gsrsHomeBaseUrl||""}},{key:"displayAmountCompose",value:function(oe,bt){function xt(Oi){return Oi?"object"==typeof Oi?Oi.display?Oi.display:Oi.value?Oi.value:null:Oi:null}var Jt="";if(oe&&"object"==typeof oe){if(oe){var zn=!1,hi=xt(oe.units);hi||(hi="");var qi=xt(bt);qi&&(Jt+=qi+":\n"),(oe.average||oe.high||oe.low)&&(oe.average&&(Jt+=oe.average,oe.units&&(Jt+=" "+hi,zn=!0)),(oe.high||oe.low)&&(Jt+=" [",oe.high&&!oe.low?Jt+="<"+oe.high:!oe.high&&oe.low?Jt+=">"+oe.low:oe.high&&oe.low&&(Jt+=oe.low+" to "+oe.high),Jt+="] ",zn||oe.units&&(Jt+=" "+hi,zn=!0)),Jt+=" (average) "),(oe.highLimit||oe.lowLimit)&&(Jt+="\n["),oe.highLimit&&!oe.lowLimit?Jt+="<"+oe.highLimit:!oe.highLimit&&oe.lowLimit?Jt+=">"+oe.lowLimit:oe.highLimit&&oe.lowLimit&&(Jt+=oe.lowLimit+" to "+oe.highLimit),(oe.highLimit||oe.lowLimit)&&(Jt+="] ",zn||oe.units&&(Jt+=" "+hi,zn=!0),Jt+=" (limits)")}oe.nonNumericValue&&(Jt+=" "+oe.nonNumericValue)}return Jt}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(Me.E),d.Y36(te),d.Y36(ve.$),d.Y36(ue.Xj),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-scheme-view"]],inputs:{showProcessIndex:"showProcessIndex",showSiteIndex:"showSiteIndex",showStageIndex:"showStageIndex"},outputs:{tabSelectedIndexOut:"tabSelectedIndexOut"},decls:3,vars:2,consts:[["class","divflexright",4,"ngIf"],["class","margintop10px",4,"ngFor","ngForOf"],[1,"divflexright"],[4,"ngIf"],[3,"checked","change"],[1,"margintop10px"],[1,"border"],[1,"colorgreen","font17px"],[4,"ngFor","ngForOf"],["class","marginbottom30px",4,"ngFor","ngForOf"],[1,"marginbottom30px"],[1,"border-step"],["mat-stroked-button","","color","primary","matTooltip","Edit In Form",1,"button-add",3,"click"],["svgIcon","edit"],[1,"width100percent","margintopneg25px"],[1,""],[1,"width33percent","textaligncenter"],["class","paddingleft10px marginbottom10px",4,"ngFor","ngForOf"],[1,"width33percent"],[1,"paddingleft20px"],[3,"src"],["class","paddingleft25px paddingtop10px bo",4,"ngFor","ngForOf"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"paddingleft10px","marginbottom10px"],["class","paddingtop15px font30px",4,"ngIf"],[1,"zoom",3,"click"],["appSubstanceImage","",3,"entityId"],[1,"paddingtop15px","font30px"],["href","",3,"click"],[1,"divflex"],[1,"margintopneg5px"],["mat-button","",3,"click"],[1,"colorblue","fontsize14px"],[1,"paddingleft25px","paddingtop10px","bo"],[1,"marginbottom10px"],["class","paddingtop15px font25px",4,"ngIf"],[1,"paddingtop15px","font25px"]],template:function(fe,oe){1&fe&&(d.YNc(0,wt,4,2,"div",0),d.YNc(1,hn,2,1,"div",1),d._UZ(2,"br")),2&fe&&(d.Q6J("ngIf",-1==oe.showProcessIndex),d.xp6(1),d.Q6J("ngForOf",oe.processList))},directives:[e.O5,k.oG,e.sg,s.lW,h.gM,_.Hw,lt.m],styles:[".divflexspace[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between}.divflexcenter[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.bordergreen[_ngcontent-%COMP%]{border:5px solid #0BA711}.margintopneg5px[_ngcontent-%COMP%]{margin-top:-5px}.margintopneg25px[_ngcontent-%COMP%]{margin-top:-25px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.paddingleft10px[_ngcontent-%COMP%]{padding-left:10px}.paddingleft20px[_ngcontent-%COMP%]{padding-left:20px}.paddingleft25px[_ngcontent-%COMP%]{padding-left:25px}.paddingleft350px[_ngcontent-%COMP%]{padding-left:350px}.paddingtop10px[_ngcontent-%COMP%]{padding-top:10px}.paddingtop15px[_ngcontent-%COMP%]{padding-top:15px}.paddingbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.padrightneg5px[_ngcontent-%COMP%]{padding-right:-10px}.colorblue[_ngcontent-%COMP%]{color:#007cba}.fontsize14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font30px[_ngcontent-%COMP%]{font-size:30px}.width100percent[_ngcontent-%COMP%]{width:100%}.width33percent[_ngcontent-%COMP%]{width:33%}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:5px}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:-36px;margin-right:20px;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 2px var(--fieldset-blue-border-color)!important;padding:0 10px;border-bottom:none;margin-bottom:10px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:var(--legend-blue-border-color);font-family:Verdana;font-weight:700;margin-bottom:10px;margin-left:30px}fieldset.border-step[_ngcontent-%COMP%]{border:solid 2px #0BA711!important;padding:0 10px 10px;border-bottom:none;margin-bottom:30px;min-width:0}legend.border-step[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px;margin-left:30px}.structure-img-big[_ngcontent-%COMP%]{width:100%;height:auto}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}a[_ngcontent-%COMP%]{color:#00e}"]}),ie}(),Jn=function(){var ie=function(){function Ye(fe,oe,bt){(0,t.Z)(this,Ye),this.sanitizer=fe,this.dialogRef=oe,this.data=bt}return(0,S.Z)(Ye,[{key:"ngOnInit",value:function(){this.data.processIndex>=-1&&this.data.siteIndex>=-1&&this.data.stageIndex>=-1&&(this.showProcessIndex=this.data.processIndex,this.showSiteIndex=this.data.siteIndex,this.showStageIndex=this.data.stageIndex)}},{key:"close",value:function(){this.dialogRef.close()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}},{key:"tabSelectedIndexOutChange",value:function(oe){this.tabSelectedIndex=oe,this.dialogRef.close(oe)}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(_e.H7),d.Y36(ce.so),d.Y36(ce.WI))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-step-view-dialog"]],decls:8,vars:3,consts:[["mat-dialog-content",""],[1,"structure-image-content"],["mat-mini-fab","",3,"click"],["svgIcon","close"],[3,"showProcessIndex","showSiteIndex","showStageIndex","tabSelectedIndexOut"]],template:function(fe,oe){1&fe&&(d.TgZ(0,"div",0),d.TgZ(1,"div",1),d.TgZ(2,"button",2),d.NdJ("click",function(){return oe.dismissDialog()}),d._UZ(3,"mat-icon",3),d.qZA(),d._UZ(4,"br"),d._UZ(5,"br"),d._UZ(6,"br"),d.TgZ(7,"app-ssg4m-scheme-view",4),d.NdJ("tabSelectedIndexOut",function(xt){return oe.tabSelectedIndexOutChange(xt)}),d.qZA(),d.qZA(),d.qZA()),2&fe&&(d.xp6(7),d.Q6J("showProcessIndex",oe.showProcessIndex)("showSiteIndex",oe.showSiteIndex)("showStageIndex",oe.showStageIndex))},directives:[s.lW,_.Hw,jn],styles:[".divflexspace[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.paddingleft10px[_ngcontent-%COMP%]{padding-left:10px}.paddingleft20px[_ngcontent-%COMP%]{padding-left:20px}.paddingleft25px[_ngcontent-%COMP%]{padding-left:25px}.paddingleft350px[_ngcontent-%COMP%]{padding-left:350px}.paddingtop10px[_ngcontent-%COMP%]{padding-top:10px}.paddingtop15px[_ngcontent-%COMP%]{padding-top:15px}.paddingbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font30px[_ngcontent-%COMP%]{font-size:30px}.width100percent[_ngcontent-%COMP%]{width:100%}.width33percent[_ngcontent-%COMP%]{width:33%}.textaligncenter[_ngcontent-%COMP%]{text-align:center}fieldset.border[_ngcontent-%COMP%]{border:solid 2px var(--fieldset-blue-border-color)!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0;box-shadow:2px 2px 3px 1px var(--fieldset-box-shadow-color)}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:var(--legend-blue-border-color);font-family:Verdana;font-weight:700;margin-bottom:10px}.structure-img-big[_ngcontent-%COMP%]{width:100%;height:auto}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.mat-dialog-container[_ngcontent-%COMP%]{padding:5px;position:relative}.close-button[_ngcontent-%COMP%]{position:relative;top:0;right:0;padding:5px;line-height:14px;min-width:auto}.mat-dialog-content[_ngcontent-%COMP%]{margin:0;padding:0;max-height:100%}.mat-tab-body-content[_ngcontent-%COMP%]{padding-left:10px;padding-right:10px}.mat-mini-fab[_ngcontent-%COMP%]{position:absolute;right:17px;top:8px;background-color:var(--mat-icon-button-bg-color);color:var(--label-color);width:35px;height:35px}.mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0} .structure-image-panel .mat-dialog-container{padding:5px;position:relative} .structure-image-panel .mat-dialog-content{margin:0;padding:0;max-height:100%} .structure-image-panel .mat-tab-body-content{padding-left:10px;padding-right:10px}"]}),ie}(),oi=n(78444),ri=n(28784),un=n(40104),mn=n(42827),zt=n(26477),qe=n(16667),pt=function(){var ie=function(Ye){(0,L.Z)(oe,Ye);var fe=(0,j.Z)(oe);function oe(bt){var xt;return(0,t.Z)(this,oe),(xt=fe.call(this,bt)).substanceFormService=bt,xt}return(0,S.Z)(oe,[{key:"initSubtanceForm",value:function(){var xt=this;(0,$.Z)((0,be.Z)(oe.prototype),"initSubtanceForm",this).call(this);var Jt=this.substanceFormService.substance.subscribe(function(zn){xt.substance=zn,xt.substance.specifiedSubstanceG4m||(xt.substance.specifiedSubstanceG4m={}),xt.substance.specifiedSubstanceG4m.process||(xt.substance.specifiedSubstanceG4m.process=[{sites:[]}]),xt.substanceFormService.resetState(),xt.propertyEmitter.next(xt.substance.specifiedSubstanceG4m.process)});this.subscriptions.push(Jt)}},{key:"specifiedSubstanceG4mStage",get:function(){return this.propertyEmitter.asObservable()}},{key:"addCriticalParameter",value:function(xt,Jt,zn){this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].criticalParameters.push({value:{}}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].criticalParameters)}},{key:"addStartingMaterials",value:function(xt,Jt,zn){this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].startingMaterials.push({substanceRole:"Starting Material"}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].startingMaterials)}},{key:"addProcessingMaterials",value:function(xt,Jt,zn){this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].processingMaterials.push({substanceRole:"Solvent"}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].processingMaterials)}},{key:"addResultingMaterials",value:function(xt,Jt,zn){this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].resultingMaterials.push({substanceRole:"Intermediate"}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn].resultingMaterials)}},{key:"addStage",value:function(xt,Jt){var zn=this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages.length-1,qi={stageNumber:(zn+2).toString(),criticalParameters:[],startingMaterials:[],processingMaterials:[],resultingMaterials:[]};zn>=0&&(this.setSourceStageToCopy(xt,Jt,zn),this.setSourceResultingToCopy()),this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages.push(qi),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages),this.sourceResultingMatObj&&this.sourceResultingMatRefUuid&&this.copyResultingToStarting(xt,Jt,zn+1)}},{key:"insertStage",value:function(xt,Jt,zn,hi){this.setSourceStageToCopy(xt,Jt,zn);var Oi=0;hi&&"before"===hi?(this.setSourceStartingToCopy(),Oi=zn):(this.setSourceResultingToCopy(),Oi=zn+1),this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages.splice(Oi,0,{stageNumber:"",criticalParameters:[],startingMaterials:[],processingMaterials:[],resultingMaterials:[]}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages),this.sourceStartingMatObj&&this.sourceStartingMatRefUuid&&Oi>=0&&hi&&"before"===hi&&(this.copyStartingToResulting(xt,Jt,Oi),zn>=1&&hi&&"before"===hi&&(this.setSourceStageToCopy(xt,Jt,Oi-1),this.setSourceResultingToCopy(),this.copyResultingToStarting(xt,Jt,Oi))),this.sourceResultingMatObj&&this.sourceResultingMatRefUuid&&Oi>0&&hi&&"after"===hi&&(this.copyResultingToStarting(xt,Jt,Oi),zn>=0&&hi&&"after"===hi&&(this.setSourceStageToCopy(xt,Jt,Oi+1),this.setSourceStartingToCopy(),this.copyStartingToResulting(xt,Jt,Oi)))}},{key:"duplicateStage",value:function(xt,Jt,zn,hi){this.setSourceStageToCopy(xt,Jt,zn);var qi,Oi=JSON.stringify(this.sourceStageToCopy);qi=JSON.parse(Oi),this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages.splice(hi&&"before"===hi?zn:zn+1,0,qi),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages)}},{key:"setSourceStageToCopy",value:function(xt,Jt,zn){this.sourceStageToCopy=this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn]}},{key:"setSourceStartingToCopy",value:function(){if(this.sourceStartingMatObj=null,null!=this.sourceStageToCopy){var xt=this.sourceStageToCopy.startingMaterials.length;if(xt>0){this.sourceStartingMatObj=this.sourceStageToCopy.startingMaterials[xt-1];var Jt=this.sourceStartingMatObj.substanceName;this.sourceStartingMatRefUuid=Jt?Jt.refuuid:null}else this.sourceStartingMatObj=null}}},{key:"setSourceResultingToCopy",value:function(){if(this.sourceResultingMatObj=null,null!=this.sourceStageToCopy){var xt=this.sourceStageToCopy.resultingMaterials.length;if(xt>0){this.sourceResultingMatObj=this.sourceStageToCopy.resultingMaterials[xt-1];var Jt=this.sourceResultingMatObj.substanceName;this.sourceResultingMatRefUuid=Jt?Jt.refuuid:null}else this.sourceResultingMatObj=null}}},{key:"copyStartingToResulting",value:function(xt,Jt,zn){var Oi=this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn];null!=Oi&&0==Oi.resultingMaterials.length&&this.copyToResultingFields(xt,Jt,zn)}},{key:"copyResultingToStarting",value:function(xt,Jt,zn,hi){var qi=this,Oi=!1,Ni=this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn];null!=Ni&&(0==Ni.startingMaterials.length?this.copyToStartingFields(xt,Jt,zn):(Ni.startingMaterials.forEach(function(po){if(po){var ia=po.substanceName;ia&&qi.sourceResultingMatRefUuid===ia.refuuid&&(Oi=!0)}}),!1===Oi&&this.copyToStartingFields(xt,Jt,zn))),Ni||(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages.push({stageNumber:"",criticalParameters:[],startingMaterials:[],processingMaterials:[],resultingMaterials:[]}),this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages),this.copyToStartingFields(xt,Jt,zn))}},{key:"copyToStartingFields",value:function(xt,Jt,zn){if(this.sourceResultingMatObj){this.addStartingMaterials(xt,Jt,zn);var hi=this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn],Oi=hi.startingMaterials[hi.startingMaterials.length-1];Oi.substanceName=this.sourceResultingMatObj.substanceName,Oi.verbatimName=this.sourceResultingMatObj.verbatimName,Oi.substanceRole="Intermediate",Oi.comments=this.sourceResultingMatObj.comments}}},{key:"copyToResultingFields",value:function(xt,Jt,zn){if(this.sourceStartingMatObj){this.addResultingMaterials(xt,Jt,zn);var hi=this.substance.specifiedSubstanceG4m.process[xt].sites[Jt].stages[zn],Oi=hi.resultingMaterials[hi.resultingMaterials.length-1];Oi.substanceName=this.sourceStartingMatObj.substanceName,Oi.verbatimName=this.sourceStartingMatObj.verbatimName,Oi.substanceRole="Intermediate",Oi.comments=this.sourceStartingMatObj.comments}}}]),oe}(Q.E);return ie.\u0275fac=function(fe){return new(fe||ie)(d.LFG(W.B))},ie.\u0275prov=d.Yz7({token:ie,factory:ie.\u0275fac,providedIn:"root"}),ie}(),Ne=n(82796),Re=n(24459);function tt(ie,Ye){1&ie&&(d.TgZ(0,"div"),d._UZ(1,"hr"),d.qZA())}function Ke(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",12),d._uU(1," Deleted\xa0 "),d.TgZ(2,"button",13),d.NdJ("click",function(){return d.CHM(fe),d.oxw().undoDelete()}),d._UZ(3,"mat-icon",14),d.qZA(),d.qZA()}}function vt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",15),d.TgZ(1,"app-substance-selector",16),d.NdJ("selectionUpdated",function(xt){return d.CHM(fe),d.oxw().relatedSubstanceUpdated(xt)}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("subuuid",oe.relatedSubstanceUuid)("showMorelinks",!0)}}function Rt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",17),d.TgZ(1,"input",18),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().startingMaterial.verbatimName=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.startingMaterial.verbatimName)}}function rn(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",19),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().updateSubstanceRole(xt)}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.startingMaterial.substanceRole)}}function Nn(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",7),d.TgZ(1,"div",3),d._uU(2,"\xa0"),d.qZA(),d.TgZ(3,"mat-form-field",20),d.TgZ(4,"textarea",21),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().startingMaterial.comments=xt}),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(4),d.Q6J("ngModel",oe.startingMaterial.comments)}}var $t=function(){var ie=function(){function Ye(fe,oe,bt){(0,t.Z)(this,Ye),this.substanceFormService=fe,this.configService=oe,this.dialog=bt,this.configSettingsDisplay={},this.subscriptions=[]}return(0,S.Z)(Ye,[{key:"startingMaterial",get:function(){return this.privateStartingMaterial},set:function(oe){this.privateStartingMaterial=oe}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(oe){this.privateProcessIndex=oe}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(oe){this.privateSiteIndex=oe}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(oe){this.privateStageIndex=oe}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(oe){this.privateShowAdvancedSettings=oe,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var oe=this,bt=this.substanceFormService.substance.subscribe(function(Jt){oe.substance=Jt});this.subscriptions.push(bt),this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials[this.startingMaterialIndex].substanceName&&(this.relatedSubstanceUuid=this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials[this.startingMaterialIndex].substanceName.refuuid)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"getConfigSettings",value:function(){var oe=this,xt=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.startingMaterial;Object.keys(xt).forEach(function(Jt){null!=xt[Jt]&&("simple"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0:"advanced"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0===oe.privateShowAdvancedSettings:"removed"===xt[Jt]&&(oe.configSettingsDisplay[Jt]=!1))})}},{key:"updateSubstanceRole",value:function(oe){this.privateStartingMaterial.substanceRole=oe}},{key:"relatedSubstanceUpdated",value:function(oe){this.privateStartingMaterial.substanceName=null!==oe?{refPname:oe._name,name:oe._name,refuuid:oe.uuid,substanceClass:"reference",approvalID:oe.approvalID}:{}}},{key:"confirmDeleteStartingMaterial",value:function(){var oe=this;this.dialog.open(zt.$,{data:{message:"Are you sure you want to delele Input Material "+(this.startingMaterialIndex+1)+" for Step "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(xt){xt&&!0===xt&&oe.deleteStartingMaterial()})}},{key:"deleteStartingMaterial",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials.splice(this.startingMaterialIndex,1)}},{key:"copyResultingToStarting",value:function(oe,bt,xt){}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(W.B),d.Y36(K.E),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-starting-materials-form"]],inputs:{startingMaterialIndex:"startingMaterialIndex",startingMaterial:"startingMaterial",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:12,vars:7,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever",1,"colorred"],[1,"form-row"],["class","col related-substance",4,"ngIf"],["class","col",4,"ngIf"],["class","col","domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",3,"model","valueChange",4,"ngIf"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","",3,"subuuid","showMorelinks","selectionUpdated"],[1,"col"],["matInput","","placeholder","Material Display Name","name","startingMaterial.verbatimName",3,"ngModel","ngModelChange"],["domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",1,"col",3,"model","valueChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","startingMaterial.comments","rows","1",3,"ngModel","ngModelChange"]],template:function(fe,oe){1&fe&&(d.YNc(0,tt,2,0,"div",0),d.TgZ(1,"div",1),d.YNc(2,Ke,4,0,"div",2),d.TgZ(3,"div",3),d.TgZ(4,"div",4),d.TgZ(5,"button",5),d.NdJ("click",function(){return oe.confirmDeleteStartingMaterial()}),d._UZ(6,"mat-icon",6),d.qZA(),d.qZA(),d.qZA(),d.TgZ(7,"div",7),d.YNc(8,vt,2,2,"div",8),d.YNc(9,Rt,2,1,"mat-form-field",9),d.YNc(10,rn,1,1,"app-cv-input",10),d.qZA(),d.YNc(11,Nn,5,1,"div",11),d.qZA()),2&fe&&(d.Q6J("ngIf",oe.startingMaterialIndex>0),d.xp6(2),d.Q6J("ngIf",oe.startingMaterial.$$deletedCode),d.xp6(3),d.MGl("matTooltip","Delete Starting Material ",oe.startingMaterialIndex+1,""),d.xp6(3),d.Q6J("ngIf",oe.configSettingsDisplay.substanceName||void 0===oe.configSettingsDisplay.substanceName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.verbatimName||void 0===oe.configSettingsDisplay.verbatimName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.substanceRole||void 0===oe.configSettingsDisplay.substanceRole&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.comments||void 0===oe.configSettingsDisplay.comments&&oe.showAdvancedSettings))},directives:[e.O5,s.lW,h.gM,_.Hw,Re.Q,y.KE,B.Nt,Y.Fj,Y.JJ,Y.On,qe.S],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.margintopneg30px[_ngcontent-%COMP%]{margin-top:-30px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft45px[_ngcontent-%COMP%]{margin-left:45px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.padleftneg10[_ngcontent-%COMP%]{padding-left:-10px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}.colorred[_ngcontent-%COMP%]{color:red}hr[_ngcontent-%COMP%]{border:none;border-top:1px solid rgba(75,80,75,.781);color:#333;overflow:visible;text-align:center;height:5px}"]}),ie}();function fn(ie,Ye){1&ie&&(d.TgZ(0,"div"),d._UZ(1,"hr"),d.qZA())}function ln(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",12),d._uU(1," Deleted\xa0 "),d.TgZ(2,"button",13),d.NdJ("click",function(){return d.CHM(fe),d.oxw().undoDelete()}),d._UZ(3,"mat-icon",14),d.qZA(),d.qZA()}}function _n(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",15),d.TgZ(1,"app-substance-selector",16),d.NdJ("selectionUpdated",function(xt){return d.CHM(fe),d.oxw().relatedSubstanceUpdated(xt)}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("subuuid",oe.relatedSubstanceUuid)("showMorelinks",!0)}}function xn(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",17),d.TgZ(1,"input",18),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().processingMaterial.verbatimName=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.processingMaterial.verbatimName)}}function In(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",19),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().updateSubstanceRole(xt)}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.processingMaterial.substanceRole)}}function Yn(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",20),d.TgZ(1,"div",3),d._uU(2,"\xa0"),d.qZA(),d.TgZ(3,"mat-form-field",21),d.TgZ(4,"textarea",22),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().processingMaterial.comments=xt}),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(4),d.Q6J("ngModel",oe.processingMaterial.comments)}}var mi=function(){var ie=function(){function Ye(fe,oe,bt){(0,t.Z)(this,Ye),this.substanceFormService=fe,this.configService=oe,this.dialog=bt,this.configSettingsDisplay={},this.subscriptions=[]}return(0,S.Z)(Ye,[{key:"processingMaterial",get:function(){return this.privateProcessingMaterial},set:function(oe){this.privateProcessingMaterial=oe}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(oe){this.privateProcessIndex=oe}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(oe){this.privateSiteIndex=oe}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(oe){this.privateStageIndex=oe}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(oe){this.privateShowAdvancedSettings=oe,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var oe=this,bt=this.substanceFormService.substance.subscribe(function(Jt){oe.substance=Jt});this.subscriptions.push(bt),this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials[this.processingMaterialIndex].substanceName&&(this.relatedSubstanceUuid=this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials[this.processingMaterialIndex].substanceName.refuuid)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"getConfigSettings",value:function(){var oe=this,xt=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.processingMaterial;Object.keys(xt).forEach(function(Jt){null!=xt[Jt]&&("simple"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0:"advanced"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0===oe.privateShowAdvancedSettings:"removed"===xt[Jt]&&(oe.configSettingsDisplay[Jt]=!1))})}},{key:"updateSubstanceRole",value:function(oe){this.privateProcessingMaterial.substanceRole=oe}},{key:"relatedSubstanceUpdated",value:function(oe){this.privateProcessingMaterial.substanceName=null!=oe?{refPname:oe._name,name:oe._name,refuuid:oe.uuid,substanceClass:"reference",approvalID:oe.approvalID}:{}}},{key:"confirmDeleteProcessingMaterial",value:function(){var oe=this;this.dialog.open(zt.$,{data:{message:"Are you sure you want to delele Processing Material "+(this.processingMaterialIndex+1)+" for Step "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(xt){xt&&!0===xt&&oe.deleteProcessingMaterial()})}},{key:"deleteProcessingMaterial",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials.splice(this.processingMaterialIndex,1)}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(W.B),d.Y36(K.E),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-processing-materials-form"]],inputs:{processingMaterialIndex:"processingMaterialIndex",processingMaterial:"processingMaterial",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:12,vars:7,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever",1,"colorred"],[1,"form-row"],["class","col related-substance",4,"ngIf"],["class","col",4,"ngIf"],["class","col","domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",3,"model","valueChange",4,"ngIf"],["class","form-row margintop10px",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","",3,"subuuid","showMorelinks","selectionUpdated"],[1,"col"],["matInput","","placeholder","Material Display Name","name","processingMaterial.verbatimName",3,"ngModel","ngModelChange"],["domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",1,"col",3,"model","valueChange"],[1,"form-row","margintop10px"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","processingMaterial.comments","rows","1",3,"ngModel","ngModelChange"]],template:function(fe,oe){1&fe&&(d.YNc(0,fn,2,0,"div",0),d.TgZ(1,"div",1),d.YNc(2,ln,4,0,"div",2),d.TgZ(3,"div",3),d.TgZ(4,"div",4),d.TgZ(5,"button",5),d.NdJ("click",function(){return oe.confirmDeleteProcessingMaterial()}),d._UZ(6,"mat-icon",6),d.qZA(),d.qZA(),d.qZA(),d.TgZ(7,"div",7),d.YNc(8,_n,2,2,"div",8),d.YNc(9,xn,2,1,"mat-form-field",9),d.YNc(10,In,1,1,"app-cv-input",10),d.qZA(),d.YNc(11,Yn,5,1,"div",11),d.qZA()),2&fe&&(d.Q6J("ngIf",oe.processingMaterialIndex>0),d.xp6(2),d.Q6J("ngIf",oe.processingMaterial.$$deletedCode),d.xp6(3),d.MGl("matTooltip","Delete Processing Material ",oe.processingMaterialIndex+1,""),d.xp6(3),d.Q6J("ngIf",oe.configSettingsDisplay.substanceName||void 0===oe.configSettingsDisplay.substanceName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.verbatimName||void 0===oe.configSettingsDisplay.verbatimName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.substanceRole||void 0===oe.configSettingsDisplay.substanceRole&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.comments||void 0===oe.configSettingsDisplay.comments&&oe.showAdvancedSettings))},directives:[e.O5,s.lW,h.gM,_.Hw,Re.Q,y.KE,B.Nt,Y.Fj,Y.JJ,Y.On,qe.S],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.marginleft45px[_ngcontent-%COMP%]{margin-left:45px}.padleftneg10[_ngcontent-%COMP%]{padding-left:-10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}.colorred[_ngcontent-%COMP%]{color:red}hr[_ngcontent-%COMP%]{border:none;border-top:1px solid rgba(75,80,75,.781);color:#333;overflow:visible;text-align:center;height:5px}"]}),ie}();function wi(ie,Ye){1&ie&&(d.TgZ(0,"div"),d._UZ(1,"hr"),d.qZA())}function Bi(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",14),d._uU(1," Deleted\xa0 "),d.TgZ(2,"button",15),d.NdJ("click",function(){return d.CHM(fe),d.oxw().undoDelete()}),d._UZ(3,"mat-icon",16),d.qZA(),d.qZA()}}function Xi(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",17),d.TgZ(1,"app-substance-selector",18),d.NdJ("selectionUpdated",function(xt){return d.CHM(fe),d.oxw().relatedSubstanceUpdated(xt)}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("subuuid",oe.relatedSubstanceUuid)("showMorelinks",!0)}}function ka(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",19),d.TgZ(1,"input",20),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().resultingMaterial.verbatimName=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.resultingMaterial.verbatimName)}}function Ja(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",21),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().updateSubstanceRole(xt)}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.resultingMaterial.substanceRole)}}function _a(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",9),d.TgZ(1,"div",3),d._uU(2,"\xa0"),d.qZA(),d.TgZ(3,"mat-form-field",22),d.TgZ(4,"textarea",23),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().resultingMaterial.comments=xt}),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(4),d.Q6J("ngModel",oe.resultingMaterial.comments)}}var nr=function(){var ie=function(){function Ye(fe,oe,bt,xt){(0,t.Z)(this,Ye),this.substanceFormService=fe,this.substanceFormSsg4mStagesService=oe,this.configService=bt,this.dialog=xt,this.configSettingsDisplay={},this.subscriptions=[]}return(0,S.Z)(Ye,[{key:"resultingMaterial",get:function(){return this.privateResultingMaterial},set:function(oe){this.privateResultingMaterial=oe}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(oe){this.privateProcessIndex=oe}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(oe){this.privateSiteIndex=oe}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(oe){this.privateStageIndex=oe}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(oe){this.privateShowAdvancedSettings=oe,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var oe=this,bt=this.substanceFormService.substance.subscribe(function(Jt){oe.substance=Jt});this.subscriptions.push(bt),this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex].substanceName&&(this.relatedSubstanceUuid=this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex].substanceName.refuuid)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"getConfigSettings",value:function(){var oe=this,xt=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.resultingMaterial;Object.keys(xt).forEach(function(Jt){null!=xt[Jt]&&("simple"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0:"advanced"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0===oe.privateShowAdvancedSettings:"removed"===xt[Jt]&&(oe.configSettingsDisplay[Jt]=!1))})}},{key:"updateSubstanceRole",value:function(oe){this.privateResultingMaterial.substanceRole=oe}},{key:"relatedSubstanceUpdated",value:function(oe){this.privateResultingMaterial.substanceName=null!=oe?{refPname:oe._name,name:oe._name,refuuid:oe.uuid,substanceClass:"reference",approvalID:oe.approvalID}:{}}},{key:"confirmDeleteResultingMaterial",value:function(){var oe=this;this.dialog.open(zt.$,{data:{message:"Are you sure you want to delele Resulting Material "+(this.resultingMaterialIndex+1)+" for Step "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(xt){xt&&!0===xt&&oe.deleteResultingMaterial()})}},{key:"deleteResultingMaterial",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials.splice(this.resultingMaterialIndex,1)}},{key:"copyResultingToStarting",value:function(){this.substanceFormSsg4mStagesService.setSourceStageToCopy(this.processIndex,this.siteIndex,this.stageIndex),this.substanceFormSsg4mStagesService.setSourceResultingToCopy(),this.substanceFormSsg4mStagesService.copyResultingToStarting(this.processIndex,this.siteIndex,this.stageIndex+1)}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(W.B),d.Y36(pt),d.Y36(K.E),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-resulting-materials-form"]],inputs:{resultingMaterialIndex:"resultingMaterialIndex",resultingMaterial:"resultingMaterial",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:14,vars:7,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","","matTooltip"," Copy this Resulting Material to Starting Material in next Step",3,"click"],["svgIcon","file_copy",1,"colorbluefda"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever",1,"colorred"],[1,"form-row"],["class","col related-substance",4,"ngIf"],["class","col",4,"ngIf"],["class","col","domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",3,"model","valueChange",4,"ngIf"],["class","form-row",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col","related-substance"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Search by Name/CAS RN/UNII/BDNUM","header","",3,"subuuid","showMorelinks","selectionUpdated"],[1,"col"],["matInput","","placeholder","Material Display Name","name","resultingMaterial.verbatimName",3,"ngModel","ngModelChange"],["domain","SSG_SUBSTANCE_ROLE","required","true","title","Substance Role",1,"col",3,"model","valueChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","resultingMaterial.comments","rows","1",3,"ngModel","ngModelChange"]],template:function(fe,oe){1&fe&&(d.YNc(0,wi,2,0,"div",0),d.TgZ(1,"div",1),d.YNc(2,Bi,4,0,"div",2),d.TgZ(3,"div",3),d.TgZ(4,"div",4),d.TgZ(5,"button",5),d.NdJ("click",function(){return oe.copyResultingToStarting()}),d._UZ(6,"mat-icon",6),d.qZA(),d.TgZ(7,"button",7),d.NdJ("click",function(){return oe.confirmDeleteResultingMaterial()}),d._UZ(8,"mat-icon",8),d.qZA(),d.qZA(),d.qZA(),d.TgZ(9,"div",9),d.YNc(10,Xi,2,2,"div",10),d.YNc(11,ka,2,1,"mat-form-field",11),d.YNc(12,Ja,1,1,"app-cv-input",12),d.qZA(),d.YNc(13,_a,5,1,"div",13),d.qZA()),2&fe&&(d.Q6J("ngIf",oe.resultingMaterialIndex>0),d.xp6(2),d.Q6J("ngIf",oe.resultingMaterial.$$deletedCode),d.xp6(5),d.MGl("matTooltip","Delete Resulting Material ",oe.resultingMaterialIndex+1,""),d.xp6(3),d.Q6J("ngIf",oe.configSettingsDisplay.substanceName||void 0===oe.configSettingsDisplay.substanceName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.verbatimName||void 0===oe.configSettingsDisplay.verbatimName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.substanceRole||void 0===oe.configSettingsDisplay.substanceRole&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.comments||void 0===oe.configSettingsDisplay.comments&&oe.showAdvancedSettings))},directives:[e.O5,s.lW,h.gM,_.Hw,Re.Q,y.KE,B.Nt,Y.Fj,Y.JJ,Y.On,qe.S],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 0 8px}.form-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-right:15px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintopneg50px[_ngcontent-%COMP%]{margin-top:-50px}.marginleft45px[_ngcontent-%COMP%]{margin-left:45px}.marginleft30px[_ngcontent-%COMP%]{margin-left:30px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}.colorred[_ngcontent-%COMP%]{color:red}.colorbluefda[_ngcontent-%COMP%]{color:#007cba}hr[_ngcontent-%COMP%]{border:none;border-top:1px solid rgba(75,80,75,.781);color:#333;overflow:visible;text-align:center;height:5px}"]}),ie}(),_r=n(39233),wa=n(56569),or=n(91434),Ta=n(1130);function Cn(ie,Ye){1&ie&&(d.TgZ(0,"div"),d._UZ(1,"hr"),d.qZA())}function Pn(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",21),d._uU(1," Deleted\xa0 "),d.TgZ(2,"button",22),d.NdJ("click",function(){return d.CHM(fe),d.oxw().undoDelete()}),d._UZ(3,"mat-icon",23),d.qZA(),d.qZA()}}function Tt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",24),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().updatePropertyName(xt)}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.criticalParameter.name)}}function Le(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",25),d._UZ(1,"input",26),d.qZA()),2&ie){var fe=d.oxw();d.xp6(1),d.Q6J("formControl",fe.averageControl)}}function qt(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",27),d._UZ(1,"input",28),d.qZA()),2&ie){var fe=d.oxw();d.xp6(1),d.Q6J("formControl",fe.lowLimitControl)}}function Gt(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",29),d._UZ(1,"input",30),d.qZA()),2&ie){var fe=d.oxw();d.xp6(1),d.Q6J("formControl",fe.highLimitControl)}}function An(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-option",33),d._uU(1),d.qZA()),2&ie){var fe=Ye.$implicit;d.Q6J("value",fe.value),d.xp6(1),d.hij(" ",fe.display," ")}}function Wn(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-option",33),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(2);d.s9C("value",fe.privateSubstanceAmount.units),d.xp6(1),d.hij("",fe.privateSubstanceAmount.units," (not in CV)")}}function vi(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",31),d.TgZ(1,"mat-label"),d._uU(2,"Units"),d.qZA(),d.TgZ(3,"mat-select",32),d.TgZ(4,"mat-option",33),d.TgZ(5,"span",34),d._uU(6,"Clear selection"),d.qZA(),d.qZA(),d.YNc(7,An,2,2,"mat-option",35),d.YNc(8,Wn,2,2,"mat-option",36),d.TgZ(9,"mat-option",37),d._uU(10,"Other (New Value)"),d.qZA(),d.qZA(),d.qZA()),2&ie){var fe=d.oxw();d.xp6(3),d.Q6J("formControl",fe.unitsControl),d.xp6(1),d.Q6J("value",null),d.xp6(3),d.Q6J("ngForOf",fe.amountUnitList),d.xp6(1),d.Q6J("ngIf",fe.privateSubstanceAmount.units&&!fe.inCV(fe.amountUnitList,fe.privateSubstanceAmount.units)&&""!==fe.privateSubstanceAmount.units)}}function Hi(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"span",38),d.TgZ(1,"input",39),d.NdJ("focusout",function(bt){return d.CHM(fe),d.oxw().updateUnits(bt.target)}),d.qZA(),d.qZA()}}function ea(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",40),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().criticalParameter.propertyType=xt}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.criticalParameter.propertyType)}}function _i(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",41),d.TgZ(1,"app-substance-selector",42),d.NdJ("selectionUpdated",function(xt){return d.CHM(fe),d.oxw().relatedSubstanceUpdated(xt)}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("subuuid",oe.relatedSubstanceUuid)("showMorelinks",!0)}}function Ii(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-option",33),d._uU(1),d.qZA()),2&ie){var fe=Ye.$implicit;d.Q6J("value",fe.value),d.xp6(1),d.hij(" ",fe.display," ")}}function ga(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-option",33),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(2);d.s9C("value",fe.privateSubstanceAmount.type),d.xp6(1),d.hij("",fe.privateSubstanceAmount.type," (not in CV)")}}function Ha(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",41),d.TgZ(1,"mat-label"),d._uU(2,"Amount Type"),d.qZA(),d.TgZ(3,"mat-select",32),d.TgZ(4,"mat-option",33),d.TgZ(5,"span",34),d._uU(6,"Clear selection"),d.qZA(),d.qZA(),d.YNc(7,Ii,2,2,"mat-option",35),d.YNc(8,ga,2,2,"mat-option",36),d.TgZ(9,"mat-option",37),d._uU(10,"Other (New Value)"),d.qZA(),d.qZA(),d.qZA()),2&ie){var fe=d.oxw();d.xp6(3),d.Q6J("formControl",fe.typeControl),d.xp6(1),d.Q6J("value",null),d.xp6(3),d.Q6J("ngForOf",fe.amountTypeList),d.xp6(1),d.Q6J("ngIf",fe.privateSubstanceAmount.type&&!fe.inCV(fe.amountTypeList,fe.privateSubstanceAmount.type)&&""!==fe.privateSubstanceAmount.type)}}function Oa(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",38),d.TgZ(1,"input",39),d.NdJ("focusout",function(bt){return d.CHM(fe),d.oxw().updateType(bt.target)}),d.qZA(),d.qZA()}}function Aa(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",43),d._UZ(1,"input",44),d.qZA()),2&ie){var fe=d.oxw();d.xp6(1),d.Q6J("formControl",fe.lowControl)}}function Qa(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",45),d._UZ(1,"input",46),d.qZA()),2&ie){var fe=d.oxw();d.xp6(1),d.Q6J("formControl",fe.highControl)}}function va(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-form-field",47),d._UZ(1,"input",48),d.qZA()),2&ie){var fe=d.oxw();d.xp6(1),d.Q6J("formControl",fe.nonNumericValueControl)}}function Ka(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(1),d.AsE(" \xa0- \xa0 ",fe.value.average," \xa0 ",fe.value.units," ")}}function Zt(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," \xa0 - "),d.qZA())}function Ve(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," > "),d.qZA())}function se(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," < "),d.qZA())}function he(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(3).$implicit;d.xp6(1),d.hij(" ",fe.value.low," ")}}function ht(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," \xa0to\xa0 "),d.qZA())}function Vt(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(3).$implicit;d.xp6(1),d.hij(" ",fe.value.high," ")}}function dn(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(3).$implicit;d.xp6(1),d.hij(" \xa0 ",fe.value.units," \xa0 (average) ")}}function Zn(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d.YNc(1,Zt,2,0,"span",0),d._uU(2," \xa0 [ "),d.YNc(3,Ve,2,0,"span",0),d.YNc(4,se,2,0,"span",0),d.YNc(5,he,2,1,"span",0),d.YNc(6,ht,2,0,"span",0),d.YNc(7,Vt,2,1,"span",0),d._uU(8," ] "),d.YNc(9,dn,2,1,"span",0),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(1),d.Q6J("ngIf",null==fe.value.average||""==fe.value.average),d.xp6(2),d.Q6J("ngIf",null==fe.value.high||""==fe.value.high),d.xp6(1),d.Q6J("ngIf",null==fe.value.low||""==fe.value.low),d.xp6(1),d.Q6J("ngIf",null!=fe.value.low&&""!=fe.value.low),d.xp6(1),d.Q6J("ngIf",null!=fe.value.low&&""!=fe.value.low&&null!=fe.value.high&&""!=fe.value.high),d.xp6(1),d.Q6J("ngIf",null!=fe.value.high&&""!=fe.value.high),d.xp6(2),d.Q6J("ngIf",null==fe.value.average||""==fe.value.average)}}function Xn(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," \xa0 (average) "),d.qZA())}function ni(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," > "),d.qZA())}function pi(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," < "),d.qZA())}function Mi(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(3).$implicit;d.xp6(1),d.hij(" ",fe.value.lowLimit," ")}}function Wi(ie,Ye){1&ie&&(d.TgZ(0,"span"),d._uU(1," \xa0to\xa0 "),d.qZA())}function Yi(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(3).$implicit;d.xp6(1),d.hij(" ",fe.value.highLimit," ")}}function aa(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1," \xa0- \xa0 [ "),d.YNc(2,ni,2,0,"span",0),d.YNc(3,pi,2,0,"span",0),d.YNc(4,Mi,2,1,"span",0),d.YNc(5,Wi,2,0,"span",0),d.YNc(6,Yi,2,1,"span",0),d._uU(7," ] \xa0(limits) "),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(2),d.Q6J("ngIf",null==fe.value.highLimit||""==fe.value.highLimit),d.xp6(1),d.Q6J("ngIf",null==fe.value.lowLimit||""==fe.value.lowLimit),d.xp6(1),d.Q6J("ngIf",null!=fe.value.lowLimit&&""!=fe.value.lowLimit),d.xp6(1),d.Q6J("ngIf",null!=fe.value.lowLimit&&""!=fe.value.lowLimit&&null!=fe.value.highLimit&&""!=fe.value.highLimit),d.xp6(1),d.Q6J("ngIf",null!=fe.value.highLimit&&""!=fe.value.highLimit)}}function xi(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d._uU(1),d.qZA()),2&ie){var fe=d.oxw(2).$implicit;d.xp6(1),d.hij(" \xa0-\xa0 ",fe.value.nonNumericValue," ")}}function Ui(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d.TgZ(1,"span"),d._uU(2),d.qZA(),d.YNc(3,Ka,2,2,"span",0),d.YNc(4,Zn,10,7,"span",0),d.YNc(5,Xn,2,0,"span",0),d.YNc(6,aa,8,5,"span",0),d.YNc(7,xi,2,1,"span",0),d.qZA()),2&ie){var fe=d.oxw().$implicit;d.xp6(2),d.hij(" \xa0 ",fe.value.type," "),d.xp6(1),d.Q6J("ngIf",null!=fe.value.average&&""!=fe.value.average),d.xp6(1),d.Q6J("ngIf",null!=fe.value.low&&""!=fe.value.low||null!=fe.value.high&&""!=fe.value.high),d.xp6(1),d.Q6J("ngIf",null!=fe.value.average&&""!=fe.value.average),d.xp6(1),d.Q6J("ngIf",null!=fe.value.lowLimit&&""!=fe.value.lowLimit||null!=fe.value.highLimit&&""!=fe.value.highLimit),d.xp6(1),d.Q6J("ngIf",fe.value.nonNumericValue)}}function ca(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",53),d.TgZ(1,"button",54),d.NdJ("click",function(){var Jt=d.CHM(fe).index;return d.oxw(3).deleteParameter(Jt)}),d._UZ(2,"mat-icon",55),d.qZA(),d.TgZ(3,"span"),d._uU(4),d.qZA(),d.YNc(5,Ui,8,6,"span",0),d.TgZ(6,"button",56),d.NdJ("click",function(){var Jt=d.CHM(fe).$implicit;return d.oxw(3).openPropertyParameter(Jt)}),d._UZ(7,"mat-icon",57),d.qZA(),d.qZA()}if(2&ie){var oe=Ye.$implicit;d.xp6(4),d.Oqu(oe.name),d.xp6(1),d.Q6J("ngIf",null!=oe.value)}}function oa(ie,Ye){if(1&ie&&(d.TgZ(0,"mat-list"),d.YNc(1,ca,8,2,"div",52),d.qZA()),2&ie){var fe=d.oxw(2);d.xp6(1),d.Q6J("ngForOf",fe.criticalParameter.parameters)}}function pr(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",49),d.TgZ(1,"div"),d.TgZ(2,"h4"),d._uU(3," Parameters "),d.TgZ(4,"button",50),d.NdJ("click",function(){return d.CHM(fe),d.oxw().openPropertyParameter()}),d._UZ(5,"mat-icon",51),d.qZA(),d.qZA(),d.YNc(6,oa,2,1,"mat-list",0),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(6),d.Q6J("ngIf",oe.criticalParameter.parameters)}}var sr=function(){var ie=function(){function Ye(fe,oe,bt,xt,Jt,zn){(0,t.Z)(this,Ye),this.substanceFormService=fe,this.substanceFormPropertiesService=oe,this.cvService=bt,this.configService=xt,this.overlayContainerService=Jt,this.dialog=zn,this.configSettingsDisplay={},this.subscriptions=[],this.amountTypeList=[],this.amountUnitList=[],this.typeControl=new Y.NI(""),this.averageControl=new Y.NI(""),this.lowControl=new Y.NI(""),this.highControl=new Y.NI(""),this.lowLimitControl=new Y.NI(""),this.highLimitControl=new Y.NI(""),this.unitsControl=new Y.NI(""),this.nonNumericValueControl=new Y.NI("")}return(0,S.Z)(Ye,[{key:"criticalParameter",get:function(){return this.privateCriticalParameter},set:function(oe){this.privateCriticalParameter=oe}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(oe){this.privateProcessIndex=oe}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(oe){this.privateSiteIndex=oe}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(oe){this.privateStageIndex=oe}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(oe){this.privateShowAdvancedSettings=oe,this.getConfigSettings()}},{key:"ngOnInit",value:function(){var oe=this,bt=this.substanceFormService.substance.subscribe(function(Jt){oe.substance=Jt});this.subscriptions.push(bt),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.criticalParameter.value||(this.criticalParameter.value={}),this.privateSubstanceAmount=this.criticalParameter.value,this.setSubstanceAmount(),this.getVocabularies(),this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].criticalParameters[this.criticalParameterIndex].referencedSubstance&&(this.relatedSubstanceUuid=this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].criticalParameters[this.criticalParameterIndex].referencedSubstance.refuuid)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"getConfigSettings",value:function(){var oe=this,xt=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.criteriaParameter;Object.keys(xt).forEach(function(Jt){null!=xt[Jt]&&("simple"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0:"advanced"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0===oe.privateShowAdvancedSettings:"removed"===xt[Jt]&&(oe.configSettingsDisplay[Jt]=!1))})}},{key:"confirmDeleteCriticalParameter",value:function(){var oe=this;this.dialog.open(zt.$,{data:{message:"Are you sure you want to delele Critical Parameter "+(this.criticalParameterIndex+1)+" for Step "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(xt){xt&&!0===xt&&oe.deleteCriticalParameter()})}},{key:"deleteCriticalParameter",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].criticalParameters.splice(this.criticalParameterIndex,1)}},{key:"relatedSubstanceUpdated",value:function(oe){null!=oe&&(this.privateCriticalParameter.referencedSubstance={refPname:oe._name,name:oe._name,refuuid:oe.uuid,substanceClass:"reference",approvalID:oe.approvalID})}},{key:"openPropertyParameter",value:function(oe){var xt,bt=this;null==oe&&(xt=!0,oe={value:{}});var Jt=JSON.stringify(oe),zn=this.dialog.open(wa.M,{data:JSON.parse(Jt),width:"1200px"});this.overlayContainer.style.zIndex="1002",zn.afterClosed().subscribe(function(hi){bt.overlayContainer.style.zIndex=null,null!=hi&&(null==bt.criticalParameter.parameters&&(bt.criticalParameter.parameters=[]),xt?bt.criticalParameter.parameters.unshift(hi):Object.keys(hi).forEach(function(qi){oe[qi]=hi[qi]}))})}},{key:"deleteParameter",value:function(oe){this.criticalParameter.parameters.splice(oe,1)}},{key:"setSubstanceAmount",value:function(){var oe=this;this.typeControl.setValue(this.privateSubstanceAmount.type),this.typeControl.valueChanges.subscribe(function(bt){oe.privateSubstanceAmount.type=bt}),this.averageControl.setValue(this.privateSubstanceAmount.average),this.averageControl.valueChanges.subscribe(function(bt){(null===bt||1===bt.length&&bt.match(/[a-z]/i))&&oe.averageControl.setValue(""),oe.privateSubstanceAmount.average=bt}),this.lowControl.setValue(this.privateSubstanceAmount.low),this.lowControl.valueChanges.subscribe(function(bt){(null===bt||1===bt.length&&bt.match(/[a-z]/i))&&oe.lowControl.setValue(""),oe.privateSubstanceAmount.low=bt}),this.highControl.setValue(this.privateSubstanceAmount.high),this.highControl.valueChanges.subscribe(function(bt){(null===bt||1===bt.length&&bt.match(/[a-z]/i))&&oe.highControl.setValue(""),oe.privateSubstanceAmount.high=bt}),this.lowLimitControl.setValue(this.privateSubstanceAmount.lowLimit),this.lowLimitControl.valueChanges.subscribe(function(bt){(null===bt||1===bt.length&&bt.match(/[a-z]/i))&&oe.lowLimitControl.setValue(""),oe.privateSubstanceAmount.lowLimit=bt}),this.highLimitControl.setValue(this.privateSubstanceAmount.highLimit),this.highLimitControl.valueChanges.subscribe(function(bt){(null===bt||1===bt.length&&bt.match(/[a-z]/i))&&oe.highLimitControl.setValue(""),oe.privateSubstanceAmount.highLimit=bt}),this.unitsControl.setValue(this.privateSubstanceAmount.units),this.unitsControl.valueChanges.subscribe(function(bt){oe.privateSubstanceAmount.units=bt}),this.nonNumericValueControl.setValue(this.privateSubstanceAmount.nonNumericValue),this.nonNumericValueControl.valueChanges.subscribe(function(bt){oe.privateSubstanceAmount.nonNumericValue=bt})}},{key:"substanceAmount",get:function(){return this.privateSubstanceAmount}},{key:"updateAccess",value:function(oe){this.privateSubstanceAmount.access=oe,this.substanceAmount.access=oe}},{key:"updateType",value:function(oe){var bt=this;setTimeout(function(){bt.typeControl.setValue(oe.value)}),this.privateSubstanceAmount.type=oe.value}},{key:"updateUnits",value:function(oe){var bt=this;setTimeout(function(){bt.unitsControl.setValue(oe.value)}),this.privateSubstanceAmount.units=oe.value}},{key:"updatePropertyName",value:function(oe){var bt=this;this.criticalParameter.name=oe,oe&&"Temperature"===oe&&setTimeout(function(){bt.unitsControl.setValue("\xb0C")})}},{key:"getVocabularies",value:function(){var oe=this;this.cvService.getDomainVocabulary("AMOUNT_TYPE","AMOUNT_UNIT").subscribe(function(bt){oe.amountTypeList=bt.AMOUNT_TYPE.list,oe.amountUnitList=bt.AMOUNT_UNIT.list})}},{key:"inCV",value:function(oe,bt){return oe.some(function(xt){return bt===xt.value})}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(W.B),d.Y36(_r.S),d.Y36(mn.I),d.Y36(K.E),d.Y36(ue.Xj),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-critical-parameter-form"]],inputs:{criticalParameterIndex:"criticalParameterIndex",criticalParameter:"criticalParameter",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings"},decls:25,vars:17,consts:[[4,"ngIf"],[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,""],[1,"button-delete"],["mat-icon-button","",3,"matTooltip","click"],["svgIcon","delete_forever",1,"colorred"],[1,"form-row"],["class","col-5-1","domain","SSG_CRITICAL_PROPERTY_NAME","title","Property Name",3,"model","valueChange",4,"ngIf"],["class","amount-average col-5-1",4,"ngIf"],["class","low-limit col-5-1",4,"ngIf"],["class","high-limit col-5-1",4,"ngIf"],[1,"col-5-1"],["class","amount-units width180px",4,"ngIf"],["class","custom",4,"ngIf"],["class","col-3-1","domain","PROPERTY_TYPE","required","true","title","Property Type",3,"model","valueChange",4,"ngIf"],["class","col-3-1",4,"ngIf"],["class","low col-3-1",4,"ngIf"],["class","high col-3-1",4,"ngIf"],["class","non-numeric-value col-3-1",4,"ngIf"],["class","form-row padleft15px",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],["domain","SSG_CRITICAL_PROPERTY_NAME","title","Property Name",1,"col-5-1",3,"model","valueChange"],[1,"amount-average","col-5-1"],["type","number","matInput","","placeholder","Average",3,"formControl"],[1,"low-limit","col-5-1"],["type","number","matInput","","placeholder","Low Limit",3,"formControl"],[1,"high-limit","col-5-1"],["type","number","matInput","","placeholder","High Limit",3,"formControl"],[1,"amount-units","width180px"],[3,"formControl"],[3,"value"],[1,"deselect"],[3,"value",4,"ngFor","ngForOf"],[3,"value",4,"ngIf"],["value","other"],[1,"custom"],["matInput","","placeholder","Custom value","name","custom",3,"focusout"],["domain","PROPERTY_TYPE","required","true","title","Property Type",1,"col-3-1",3,"model","valueChange"],[1,"col-3-1"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Referenced Substance","header","Reference Substance",3,"subuuid","showMorelinks","selectionUpdated"],[1,"low","col-3-1"],["type","number","matInput","","placeholder","Low",3,"formControl"],[1,"high","col-3-1"],["type","number","matInput","","placeholder","High",3,"formControl"],[1,"non-numeric-value","col-3-1"],["matInput","","placeholder","Non-numeric Value",3,"formControl"],[1,"form-row","padleft15px"],["mat-icon-button","","matTooltip","Add parameter",3,"click"],["svgIcon","add_circle_outline"],["mat-list-item","",4,"ngFor","ngForOf"],["mat-list-item",""],["mat-icon-button","",1,"parameter-delete-icon",3,"click"],["svgIcon","delete_forever"],["mat-icon-button","",1,"parameter-icon",3,"click"],["svgIcon","edit"]],template:function(fe,oe){1&fe&&(d.YNc(0,Cn,2,0,"div",0),d.TgZ(1,"div",1),d.YNc(2,Pn,4,0,"div",2),d.TgZ(3,"div",3),d.TgZ(4,"div",4),d.TgZ(5,"button",5),d.NdJ("click",function(){return oe.confirmDeleteCriticalParameter()}),d._UZ(6,"mat-icon",6),d.qZA(),d.qZA(),d.qZA(),d.TgZ(7,"div",7),d.YNc(8,Tt,1,1,"app-cv-input",8),d.YNc(9,Le,2,1,"mat-form-field",9),d.YNc(10,qt,2,1,"mat-form-field",10),d.YNc(11,Gt,2,1,"mat-form-field",11),d.TgZ(12,"div",12),d.YNc(13,vi,11,4,"mat-form-field",13),d.YNc(14,Hi,2,0,"span",14),d.qZA(),d.qZA(),d.TgZ(15,"div",7),d.YNc(16,ea,1,1,"app-cv-input",15),d.YNc(17,_i,2,2,"div",16),d.YNc(18,Ha,11,4,"mat-form-field",16),d.YNc(19,Oa,2,0,"div",14),d.qZA(),d.TgZ(20,"div",7),d.YNc(21,Aa,2,1,"mat-form-field",17),d.YNc(22,Qa,2,1,"mat-form-field",18),d.YNc(23,va,2,1,"mat-form-field",19),d.qZA(),d.YNc(24,pr,7,1,"div",20),d.qZA()),2&fe&&(d.Q6J("ngIf",oe.criticalParameterIndex>0),d.xp6(2),d.Q6J("ngIf",oe.criticalParameter.$$deletedCode),d.xp6(3),d.MGl("matTooltip","Delete Critical Parameter ",oe.criticalParameterIndex+1,""),d.xp6(3),d.Q6J("ngIf",oe.configSettingsDisplay.propertyName||void 0===oe.configSettingsDisplay.propertyName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.average||void 0===oe.configSettingsDisplay.average&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.lowLimit||void 0===oe.configSettingsDisplay.lowLimit&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.highLimit||void 0===oe.configSettingsDisplay.highLimit&&!0),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.units||void 0===oe.configSettingsDisplay.units&&!0),d.xp6(1),d.Q6J("ngIf","other"===oe.privateSubstanceAmount.units),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.propertyType||void 0===oe.configSettingsDisplay.propertyType&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.referencedSubstance||void 0===oe.configSettingsDisplay.referencedSubstance&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.amountType||void 0===oe.configSettingsDisplay.amountType&&!0),d.xp6(1),d.Q6J("ngIf","other"===oe.privateSubstanceAmount.type),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.low||void 0===oe.configSettingsDisplay.low&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.high||void 0===oe.configSettingsDisplay.high&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.nonNumericValue||void 0===oe.configSettingsDisplay.nonNumericValue&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.parameters||void 0===oe.configSettingsDisplay.parameters&&!0))},directives:[e.O5,s.lW,h.gM,_.Hw,qe.S,y.KE,Y.wV,B.Nt,Y.Fj,Y.JJ,Y.oH,y.hX,or.gD,Ta.ey,e.sg,Re.Q],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col-5-1[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.width130px[_ngcontent-%COMP%]{width:130px}.width180px[_ngcontent-%COMP%]{width:180px}.references-container[_ngcontent-%COMP%]{width:100%}.related-substance[_ngcontent-%COMP%]{width:300px;max-width:300px} .selected-substance{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:left!important;position:relative} .selected-substance img{width:100%;height:auto;display:block;max-width:220px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.padleftneg10[_ngcontent-%COMP%]{padding-left:-10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.height40px[_ngcontent-%COMP%]{height:40px}.font11px[_ngcontent-%COMP%]{font-size:11px}fieldset.border[_ngcontent-%COMP%]{border:solid 1px #218814!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0;box-shadow:2px 2px 3px 1px #6e686ea3}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:var(--legend-green-border-color);font-family:Verdana;font-weight:700;margin-bottom:10px}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}.colorred[_ngcontent-%COMP%]{color:red}hr[_ngcontent-%COMP%]{border:none;border-top:1px solid rgba(75,80,75,.781);color:#333;overflow:visible;text-align:center;height:5px}"]}),ie}();function Ca(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",23),d._uU(1," Deleted\xa0 "),d.TgZ(2,"button",24),d.NdJ("click",function(){return d.CHM(fe),d.oxw().undoDelete()}),d._UZ(3,"mat-icon",25),d.qZA(),d.qZA()}}function ir(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",26),d.TgZ(1,"input",27),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().stage.stageNumber=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.MGl("placeholder","",oe.configTitleStage," Number"),d.Q6J("ngModel",oe.stage.stageNumber)("disabled",!0)}}function yr(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",28),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().stage.stageType=xt}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.stage.stageType)}}function Qi(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",29),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().stage.stageRole=xt}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.stage.stageRole)}}function en(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",26),d.TgZ(1,"input",30),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().stage.equipment=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.stage.equipment)}}function Dn(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",10),d.TgZ(1,"mat-form-field",31),d.TgZ(2,"textarea",32),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().stage.stageComments=xt}),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(2),d.Q6J("ngModel",oe.stage.stageComments)}}function qn(ie,Ye){if(1&ie&&(d.TgZ(0,"div",33),d._UZ(1,"app-ssg4m-starting-materials-form",34),d.qZA()),2&ie){var fe=Ye.$implicit,oe=Ye.index,bt=d.oxw();d.xp6(1),d.Q6J("startingMaterial",fe)("processIndex",bt.processIndex)("siteIndex",bt.siteIndex)("stageIndex",bt.stageIndex)("startingMaterialIndex",oe)("showAdvancedSettings",bt.showAdvancedSettings)}}function bi(ie,Ye){if(1&ie&&(d.TgZ(0,"div",33),d._UZ(1,"app-ssg4m-processing-materials-form",35),d.qZA()),2&ie){var fe=Ye.$implicit,oe=Ye.index,bt=d.oxw();d.xp6(1),d.Q6J("processingMaterial",fe)("processIndex",bt.processIndex)("siteIndex",bt.siteIndex)("stageIndex",bt.stageIndex)("processingMaterialIndex",oe)("showAdvancedSettings",bt.showAdvancedSettings)}}function Ji(ie,Ye){if(1&ie&&(d.TgZ(0,"div",33),d._UZ(1,"app-ssg4m-resulting-materials-form",36),d.qZA()),2&ie){var fe=Ye.$implicit,oe=Ye.index,bt=d.oxw();d.xp6(1),d.Q6J("resultingMaterial",fe)("processIndex",bt.processIndex)("siteIndex",bt.siteIndex)("stageIndex",bt.stageIndex)("resultingMaterialIndex",oe)("showAdvancedSettings",bt.showAdvancedSettings)}}function Vi(ie,Ye){if(1&ie&&(d.TgZ(0,"div",33),d._UZ(1,"app-ssg4m-critical-parameter-form",37),d.qZA()),2&ie){var fe=Ye.$implicit,oe=Ye.index,bt=d.oxw();d.xp6(1),d.Q6J("criticalParameter",fe)("processIndex",bt.processIndex)("siteIndex",bt.siteIndex)("stageIndex",bt.stageIndex)("criticalParameterIndex",oe)("showAdvancedSettings",bt.showAdvancedSettings)}}var ya=function(){var ie=function(){function Ye(fe,oe,bt,xt,Jt,zn,hi){(0,t.Z)(this,Ye),this.substanceFormSsg4mStagesService=fe,this.substanceFormService=oe,this.gaService=bt,this.overlayContainerService=xt,this.scrollToService=Jt,this.configService=zn,this.dialog=hi,this.configSettingsDisplay={},this.subscriptions=[]}return(0,S.Z)(Ye,[{key:"stage",get:function(){return this.privateStage},set:function(oe){this.privateStage=oe}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(oe){this.privateProcessIndex=oe}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(oe){this.privateSiteIndex=oe}},{key:"stageIndex",get:function(){return this.privateStageIndex},set:function(oe){this.privateStageIndex=oe,this.privateStage.stageNumber=String(this.privateStageIndex+1)}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(oe){this.privateShowAdvancedSettings=oe,this.getConfigSettings()}},{key:"tabSelectedView",get:function(){return this.privateTabSelectedView},set:function(oe){this.privateTabSelectedView=oe}},{key:"ngOnInit",value:function(){var oe=this,bt=this.substanceFormService.substance.subscribe(function(xt){oe.substance=xt});this.subscriptions.push(bt),this.configSsg4Form=this.configService.configData&&this.configService.configData.ssg4Form||null,this.configTitleStage="Stage",this.configTitleProcessingMaterials="Processing Materials",this.configSsg4Form&&(this.configTitleStage=this.configSsg4Form.titles.stage||null,this.configTitleStage||(this.configTitleStage="Stage"),this.configTitleProcessingMaterials=this.configSsg4Form.titles.processingMaterials||null,this.configTitleProcessingMaterials||(this.configTitleProcessingMaterials="Processing Materials"))}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"getConfigSettings",value:function(){var oe=this,xt=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.stage;Object.keys(xt).forEach(function(Jt){null!=xt[Jt]&&("simple"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0:"advanced"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0===oe.privateShowAdvancedSettings:"removed"===xt[Jt]&&(oe.configSettingsDisplay[Jt]=!1))})}},{key:"insertStage",value:function(oe,bt,xt,Jt){var zn=this;this.substanceFormSsg4mStagesService.insertStage(oe,bt,xt,Jt),setTimeout(function(){zn.scrollToService.scrollToElement("substance-process-0","center")})}},{key:"duplicateStage",value:function(oe,bt,xt,Jt){var zn=this;this.substanceFormSsg4mStagesService.duplicateStage(oe,bt,xt,Jt),setTimeout(function(){zn.scrollToService.scrollToElement("substance-stage-duplicate-0","center")})}},{key:"addCriticalParameter",value:function(oe,bt,xt){var Jt=this;this.substanceFormSsg4mStagesService.addCriticalParameter(oe,bt,xt),setTimeout(function(){Jt.scrollToService.scrollToElement("substance-process-site-stage-criticalParam-0","center")})}},{key:"addStartingMaterial",value:function(oe,bt,xt){var Jt=this;this.substanceFormSsg4mStagesService.addStartingMaterials(oe,bt,xt),setTimeout(function(){Jt.scrollToService.scrollToElement("substance-process-site-stage-startMat-0","center")})}},{key:"addProcessingMaterial",value:function(oe,bt,xt){var Jt=this;this.substanceFormSsg4mStagesService.addProcessingMaterials(oe,bt,xt),setTimeout(function(){Jt.scrollToService.scrollToElement("substance-process-site-stage-processMat-0","center")})}},{key:"addResultingMaterial",value:function(oe,bt,xt){var Jt=this;this.substanceFormSsg4mStagesService.addResultingMaterials(oe,bt,xt),setTimeout(function(){Jt.scrollToService.scrollToElement("substance-process-site-stage-resultMat-0","center")})}},{key:"confirmDeleteStage",value:function(){var oe=this;this.dialog.open(zt.$,{data:{message:"Are you sure you want to delele "+this.configTitleStage+" "+(this.stageIndex+1)+" for Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(xt){xt&&!0===xt&&oe.deleteStage()})}},{key:"deleteStage",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages.splice(this.stageIndex,1)}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(pt),d.Y36(W.B),d.Y36(le.$),d.Y36(ue.Xj),d.Y36(oi.i),d.Y36(K.E),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-stages-form"]],inputs:{stage:"stage",processIndex:"processIndex",siteIndex:"siteIndex",stageIndex:"stageIndex",showAdvancedSettings:"showAdvancedSettings",tabSelectedView:"tabSelectedView"},decls:88,vars:27,consts:[[1,"form-container"],["class","notification-backdrop",4,"ngIf"],[1,"divflexright"],["mat-stroked-button","","color","primary",1,"borderblue","button-insert-before",3,"matMenuTriggerFor"],[1,"colorbluefda"],["x-position","before",1,"custom-menu"],["menu","matMenu"],["mat-menu-item","","color","primary",1,"",3,"matTooltip","click"],["mat-stroked-button","","color","primary",1,"button-delete-stage",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","col-4-1",4,"ngIf"],["class","col-4-1","domain","SSG_STAGE_TYPE","title","Stage Type","name","stageType",3,"model","valueChange",4,"ngIf"],["class","col-4-1","domain","SSG_STAGE_ROLE","title","Stage Role","name","stageRole",3,"model","valueChange",4,"ngIf"],["class","form-row",4,"ngIf"],[1,""],[1,"border"],["matBadgeOverlap","false",3,"matBadge"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"divflex"],[1,"middle-fill"],["mat-stroked-button","","color","primary",1,"button-add",3,"click"],["svgIcon","add_circle_outline"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col-4-1"],["matInput","","name","stage.stageNumber",3,"placeholder","ngModel","disabled","ngModelChange"],["domain","SSG_STAGE_TYPE","title","Stage Type","name","stageType",1,"col-4-1",3,"model","valueChange"],["domain","SSG_STAGE_ROLE","title","Stage Role","name","stageRole",1,"col-4-1",3,"model","valueChange"],["matInput","","placeholder","Equipment","name","stage.equipment",3,"ngModel","ngModelChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","stage.stageComments","rows","1",3,"ngModel","ngModelChange"],[1,"marginbottom10px"],[3,"startingMaterial","processIndex","siteIndex","stageIndex","startingMaterialIndex","showAdvancedSettings"],[3,"processingMaterial","processIndex","siteIndex","stageIndex","processingMaterialIndex","showAdvancedSettings"],[3,"resultingMaterial","processIndex","siteIndex","stageIndex","resultingMaterialIndex","showAdvancedSettings"],[3,"criticalParameter","processIndex","siteIndex","stageIndex","criticalParameterIndex","showAdvancedSettings"]],template:function(fe,oe){if(1&fe&&(d.TgZ(0,"div"),d.TgZ(1,"div",0),d.YNc(2,Ca,4,0,"div",1),d.TgZ(3,"div",2),d.TgZ(4,"button",3),d.TgZ(5,"span",4),d._uU(6,"Insert OR Duplicate Step "),d.qZA(),d.TgZ(7,"mat-icon"),d._uU(8,"arrow_drop_down"),d.qZA(),d.qZA(),d.TgZ(9,"mat-menu",5,6),d.TgZ(11,"button",7),d.NdJ("click",function(){return oe.insertStage(oe.processIndex,oe.siteIndex,oe.stageIndex,"before")}),d.TgZ(12,"mat-icon"),d._uU(13,"arrow_upward"),d.qZA(),d._uU(14),d.qZA(),d.TgZ(15,"button",7),d.NdJ("click",function(){return oe.insertStage(oe.processIndex,oe.siteIndex,oe.stageIndex,"after")}),d.TgZ(16,"mat-icon"),d._uU(17,"arrow_downward"),d.qZA(),d._uU(18),d.qZA(),d.TgZ(19,"button",7),d.NdJ("click",function(){return oe.duplicateStage(oe.processIndex,oe.siteIndex,oe.stageIndex,"before")}),d.TgZ(20,"mat-icon"),d._uU(21,"arrow_upward"),d.qZA(),d._uU(22),d.qZA(),d.TgZ(23,"button",7),d.NdJ("click",function(){return oe.duplicateStage(oe.processIndex,oe.siteIndex,oe.stageIndex,"after")}),d.TgZ(24,"mat-icon"),d._uU(25,"arrow_downward"),d.qZA(),d._uU(26),d.qZA(),d.qZA(),d.TgZ(27,"button",8),d.NdJ("click",function(){return oe.confirmDeleteStage()}),d._UZ(28,"mat-icon",9),d._uU(29),d.qZA(),d.qZA(),d.TgZ(30,"div",10),d.YNc(31,ir,2,3,"mat-form-field",11),d.YNc(32,yr,1,1,"app-cv-input",12),d.YNc(33,Qi,1,1,"app-cv-input",13),d.YNc(34,en,2,1,"mat-form-field",11),d.qZA(),d.YNc(35,Dn,3,1,"div",14),d.TgZ(36,"div",15),d.TgZ(37,"fieldset",16),d.TgZ(38,"legend",16),d.TgZ(39,"span",17),d.TgZ(40,"span",15),d.TgZ(41,"b"),d._uU(42,"Input Materials"),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.YNc(43,qn,2,6,"div",18),d.TgZ(44,"div",19),d._UZ(45,"span",20),d.TgZ(46,"button",21),d.NdJ("click",function(){return oe.addStartingMaterial(oe.processIndex,oe.siteIndex,oe.stageIndex)}),d._UZ(47,"mat-icon",22),d._uU(48,"Add Input Material "),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.TgZ(49,"div",15),d.TgZ(50,"fieldset",16),d.TgZ(51,"legend",16),d.TgZ(52,"span",17),d.TgZ(53,"span",15),d.TgZ(54,"b"),d._uU(55),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.YNc(56,bi,2,6,"div",18),d.TgZ(57,"div",19),d._UZ(58,"span",20),d.TgZ(59,"button",21),d.NdJ("click",function(){return oe.addProcessingMaterial(oe.processIndex,oe.siteIndex,oe.stageIndex)}),d._UZ(60,"mat-icon",22),d._uU(61),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.TgZ(62,"div",15),d.TgZ(63,"fieldset",16),d.TgZ(64,"legend",16),d.TgZ(65,"span",17),d.TgZ(66,"span",15),d.TgZ(67,"b"),d._uU(68,"Resulting Materials"),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.YNc(69,Ji,2,6,"div",18),d.TgZ(70,"div",19),d._UZ(71,"span",20),d.TgZ(72,"button",21),d.NdJ("click",function(){return oe.addResultingMaterial(oe.processIndex,oe.siteIndex,oe.stageIndex)}),d._UZ(73,"mat-icon",22),d._uU(74,"Add Resulting Material "),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.TgZ(75,"div",15),d.TgZ(76,"fieldset",16),d.TgZ(77,"legend",16),d.TgZ(78,"b"),d._uU(79,"Process Controls"),d.qZA(),d._uU(80,"\xa0 "),d._UZ(81,"span",17),d.qZA(),d.YNc(82,Vi,2,6,"div",18),d.TgZ(83,"div",19),d._UZ(84,"span",20),d.TgZ(85,"button",21),d.NdJ("click",function(){return oe.addCriticalParameter(oe.processIndex,oe.siteIndex,oe.stageIndex)}),d._UZ(86,"mat-icon",22),d._uU(87,"Add Process Control "),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.qZA(),d.qZA()),2&fe){var bt=d.MAs(10);d.xp6(2),d.Q6J("ngIf",oe.stage.$$deletedCode),d.xp6(2),d.Q6J("matMenuTriggerFor",bt),d.xp6(7),d.MGl("matTooltip","Insert ",oe.configTitleStage," Before"),d.xp6(3),d.hij("Insert ",oe.configTitleStage," Before "),d.xp6(1),d.MGl("matTooltip","Insert ",oe.configTitleStage," After"),d.xp6(3),d.hij("Insert ",oe.configTitleStage," After "),d.xp6(1),d.MGl("matTooltip","Duplicate ",oe.configTitleStage," Before"),d.xp6(3),d.hij("Duplicate ",oe.configTitleStage," Before "),d.xp6(1),d.MGl("matTooltip","Duplicate ",oe.configTitleStage," After"),d.xp6(3),d.hij("Duplicate ",oe.configTitleStage," After "),d.xp6(1),d.MGl("matTooltip","Delete Stage ",oe.privateStageIndex+1,""),d.xp6(2),d.hij("Delete Step ",oe.privateStageIndex+1," "),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.stageNumber||void 0===oe.configSettingsDisplay.stageNumber&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.stageType||void 0===oe.configSettingsDisplay.stageType&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.stageRole||void 0===oe.configSettingsDisplay.stageRole&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.stageEquipment||void 0===oe.configSettingsDisplay.stageEquipment&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.stageComments||void 0===oe.configSettingsDisplay.stageComments&&oe.showAdvancedSettings),d.xp6(4),d.s9C("matBadge",oe.stage.startingMaterials.length),d.xp6(4),d.Q6J("ngForOf",oe.stage.startingMaterials),d.xp6(9),d.s9C("matBadge",oe.stage.processingMaterials.length),d.xp6(3),d.Oqu(oe.configTitleProcessingMaterials),d.xp6(1),d.Q6J("ngForOf",oe.stage.processingMaterials),d.xp6(5),d.hij("Add ",oe.configTitleProcessingMaterials," "),d.xp6(4),d.s9C("matBadge",oe.stage.resultingMaterials.length),d.xp6(4),d.Q6J("ngForOf",oe.stage.resultingMaterials),d.xp6(12),d.s9C("matBadge",oe.stage.criticalParameters.length),d.xp6(1),d.Q6J("ngForOf",oe.stage.criticalParameters)}},directives:[e.O5,s.lW,h.gM,_.Hw,Ne.p6,Ne.VK,Ne.OP,y.KE,B.Nt,Y.Fj,Y.JJ,Y.On,qe.S,b.k,e.sg,$t,mi,nr,sr],styles:[".form-container[_ngcontent-%COMP%]{padding:5px 10px 12px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:10px}.references-container[_ngcontent-%COMP%]{width:100%}.materialborder[_ngcontent-%COMP%]{padding-top:10px;margin-top:15px;border:2px solid var(--pale-border-color-rgb-4)}.materialtitle[_ngcontent-%COMP%]{font-size:18px;padding-left:10px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderorange[_ngcontent-%COMP%]{border:1px solid var(--regular-orangered-color)}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginbottom20px[_ngcontent-%COMP%]{margin-top:20px}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:25px;margin-right:20px;background-color:#fff;border:1px solid #007CBA}.button-delete-stage[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:20px;color:red;background-color:#fff;border:1px solid red}.button-delete[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;margin-top:-15px}.button-insert-before[_ngcontent-%COMP%], .button-insert-after[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-60px;margin-right:180px;color:#007cba;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 2px #A0A0A3!important;padding:0 10px 10px;border-bottom:none;border-radius:3px;margin-bottom:30px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px}.mat-menu-item[_ngcontent-%COMP%]{color:#007cba!important}"]}),ie}();function Na(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",8),d.TgZ(1,"button",9),d.NdJ("click",function(){return d.CHM(fe),d.oxw().confirmDeleteSite()}),d._UZ(2,"mat-icon",10),d._uU(3),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.MGl("matTooltip","Delete Site ",oe.siteIndex+1,""),d.xp6(2),d.hij("Delete Site ",oe.siteIndex+1," ")}}function Ua(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",11),d.TgZ(1,"input",12),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().site.siteName=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.site.siteName)}}function zi(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",13),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().site.siteIdType=xt}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.site.siteIdType)}}function Ra(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",11),d.TgZ(1,"input",14),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().site.siteId=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.site.siteId)}}function sa(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",11),d.TgZ(1,"input",15),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().site.siteAddress=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.site.siteAddress)}}function da(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",11),d.TgZ(1,"input",16),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().site.gpsSiteLocation=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.site.gpsSiteLocation)}}function Ea(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",17),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().site.siteClearance=xt}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.site.siteClearance)}}function ba(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",18),d.TgZ(1,"textarea",19),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().site.siteComments=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.site.siteComments)}}function Ar(ie,Ye){if(1&ie&&(d.TgZ(0,"span"),d.TgZ(1,"b"),d._uU(2),d.qZA(),d._uU(3," \xa0\xa0 "),d.qZA()),2&ie){var fe=d.oxw().index,oe=d.oxw();d.xp6(2),d.AsE("",fe+1," of ",oe.site.stages.length,"")}}function gr(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",20),d.TgZ(1,"fieldset",21),d.TgZ(2,"legend",21),d._uU(3),d.YNc(4,Ar,4,2,"span",22),d.TgZ(5,"button",23),d.NdJ("click",function(){return d.CHM(fe),d.oxw().showSchemePreview()}),d._uU(6," Step View "),d.qZA(),d.qZA(),d._UZ(7,"app-ssg4m-stages-form",24),d.TgZ(8,"div",25),d._UZ(9,"span",26),d.TgZ(10,"button",27),d.NdJ("click",function(){d.CHM(fe);var zn=d.oxw();return zn.addStage(zn.processIndex,zn.siteIndex)}),d._UZ(11,"mat-icon",28),d._uU(12),d.qZA(),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=Ye.$implicit,bt=Ye.index,xt=d.oxw();d.xp6(3),d.hij("",xt.configTitleStage,"\xa0 "),d.xp6(1),d.Q6J("ngIf",xt.site.stages.length>0),d.xp6(3),d.Q6J("stage",oe)("processIndex",xt.processIndex)("siteIndex",xt.siteIndex)("stageIndex",bt)("showAdvancedSettings",xt.showAdvancedSettings)("tabSelectedView",xt.tabSelectedView),d.xp6(5),d.hij("Add ",xt.configTitleStage," ")}}function Cr(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",8),d._UZ(1,"span",26),d.TgZ(2,"button",29),d.NdJ("click",function(){d.CHM(fe);var xt=d.oxw();return xt.addStage(xt.processIndex,xt.siteIndex)}),d._UZ(3,"mat-icon",28),d._uU(4),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(4),d.hij("Add ",oe.configTitleStage," ")}}var no=function(){var ie=function(){function Ye(fe,oe,bt,xt,Jt,zn,hi,qi){(0,t.Z)(this,Ye),this.substanceFormSsg4mSitesService=fe,this.substanceFormSsg4mStagesService=oe,this.substanceFormService=bt,this.gaService=xt,this.overlayContainerService=Jt,this.scrollToService=zn,this.configService=hi,this.dialog=qi,this.tabSelectedIndexOut=new d.vpe,this.configSettingsDisplay={},this.subscriptions=[]}return(0,S.Z)(Ye,[{key:"site",get:function(){return this.privateSite},set:function(oe){this.privateSite=oe}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(oe){this.privateProcessIndex=oe}},{key:"siteIndex",get:function(){return this.privateSiteIndex},set:function(oe){this.privateSiteIndex=oe,this.privateSite.siteName="Site "+(this.privateSiteIndex+1)}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(oe){this.privateShowAdvancedSettings=oe,this.getConfigSettings()}},{key:"tabSelectedView",get:function(){return this.privateTabSelectedView},set:function(oe){this.privateTabSelectedView=oe}},{key:"ngOnInit",value:function(){var xt,oe=this,bt=this.substanceFormService.substance.subscribe(function(Jt){oe.substance=Jt});this.subscriptions.push(bt),xt=this.configService.configData&&this.configService.configData.ssg4Form||null,this.configTitleStage="Stage",xt&&(this.configTitleStage=xt.titles.stage||null,this.configTitleStage||(this.configTitleStage="Stage"))}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"getConfigSettings",value:function(){var oe=this,xt=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.site;Object.keys(xt).forEach(function(Jt){null!=xt[Jt]&&("simple"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0:"advanced"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0===oe.privateShowAdvancedSettings:"removed"===xt[Jt]&&(oe.configSettingsDisplay[Jt]=!1))})}},{key:"addStage",value:function(oe,bt){var xt=this;this.substanceFormSsg4mStagesService.addStage(oe,bt),setTimeout(function(){xt.scrollToService.scrollToElement("stage-0","center")})}},{key:"confirmDeleteSite",value:function(){var oe=this;this.dialog.open(zt.$,{data:{message:"Are you sure you want to delele Site "+(this.siteIndex+1)+" for Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(xt){xt&&!0===xt&&oe.deleteSite()})}},{key:"deleteSite",value:function(){this.substance.specifiedSubstanceG4m.process[this.processIndex].sites.splice(this.siteIndex,1)}},{key:"showSchemePreview",value:function(){this.tabSelectedIndexOut.emit(1)}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(J),d.Y36(pt),d.Y36(W.B),d.Y36(le.$),d.Y36(ue.Xj),d.Y36(oi.i),d.Y36(K.E),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-sites"]],inputs:{site:"site",processIndex:"processIndex",siteIndex:"siteIndex",showAdvancedSettings:"showAdvancedSettings",tabSelectedView:"tabSelectedView"},outputs:{tabSelectedIndexOut:"tabSelectedIndexOut"},decls:15,vars:10,consts:[[1,"form-container"],["class","divflexright",4,"ngIf"],[1,"form-row"],["class","col-3-1",4,"ngIf"],["class","col-3-1","domain","SSG_SITE_ID_TYPE","title","Site ID Type","name","siteIdType",3,"model","valueChange",4,"ngIf"],["class","col-3-1","domain","SSG_SITE_CLEARANCE","title","Site Clearance","name","siteClearance",3,"model","valueChange",4,"ngIf"],["class","col-1-1",4,"ngIf"],["class","marginbottom30px",4,"ngFor","ngForOf"],[1,"divflexright"],["mat-stroked-button","","color","primary",1,"button-delete",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"col-3-1"],["matInput","","placeholder","Site Name","name","site.siteName",3,"ngModel","ngModelChange"],["domain","SSG_SITE_ID_TYPE","title","Site ID Type","name","siteIdType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Site ID","name","site.siteId",3,"ngModel","ngModelChange"],["matInput","","placeholder","Site Address","name","site.siteAddress",3,"ngModel","ngModelChange"],["matInput","","placeholder","GPS Site Location","name","site.gpsSiteLocation",3,"ngModel","ngModelChange"],["domain","SSG_SITE_CLEARANCE","title","Site Clearance","name","siteClearance",1,"col-3-1",3,"model","valueChange"],[1,"col-1-1"],["matInput","","placeholder","Comments","name","site.siteComments","rows","1",3,"ngModel","ngModelChange"],[1,"marginbottom30px"],[1,"border"],[4,"ngIf"],["mat-button","",1,"buttonstyle",3,"click"],[3,"stage","processIndex","siteIndex","stageIndex","showAdvancedSettings","tabSelectedView"],[1,"divflex"],[1,"middle-fill"],["mat-stroked-button","","color","primary",1,"button-add",3,"click"],["svgIcon","add_circle_outline"],["mat-stroked-button","","color","primary",1,"",3,"click"]],template:function(fe,oe){1&fe&&(d.TgZ(0,"div",0),d.YNc(1,Na,4,2,"div",1),d.TgZ(2,"div",2),d.YNc(3,Ua,2,1,"mat-form-field",3),d.YNc(4,zi,1,1,"app-cv-input",4),d.YNc(5,Ra,2,1,"mat-form-field",3),d.qZA(),d.TgZ(6,"div",2),d.YNc(7,sa,2,1,"mat-form-field",3),d.YNc(8,da,2,1,"mat-form-field",3),d.YNc(9,Ea,1,1,"app-cv-input",5),d.qZA(),d.TgZ(10,"div",2),d.YNc(11,ba,2,1,"mat-form-field",6),d.qZA(),d.TgZ(12,"div"),d.YNc(13,gr,13,9,"div",7),d.YNc(14,Cr,5,1,"div",1),d.qZA(),d.qZA()),2&fe&&(d.xp6(1),d.Q6J("ngIf",oe.showAdvancedSettings),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.siteName||void 0===oe.configSettingsDisplay.siteName&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.siteIdType||void 0===oe.configSettingsDisplay.siteIdType&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.siteId||void 0===oe.configSettingsDisplay.siteId&&oe.showAdvancedSettings),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.siteAddress||void 0===oe.configSettingsDisplay.siteAddress&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.gpsSiteLocation||void 0===oe.configSettingsDisplay.gpsSiteLocation&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.siteClearance||void 0===oe.configSettingsDisplay.siteClearance&&oe.showAdvancedSettings),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.siteComments||void 0===oe.configSettingsDisplay.siteComments&&oe.showAdvancedSettings),d.xp6(2),d.Q6J("ngForOf",oe.site.stages),d.xp6(1),d.Q6J("ngIf",oe.site.stages&&0===oe.site.stages.length))},directives:[e.O5,s.lW,h.gM,_.Hw,y.KE,B.Nt,Y.Fj,Y.JJ,Y.On,qe.S,e.sg,ya],styles:[".form-container[_ngcontent-%COMP%]{padding:0 10px;margin-bottom:5px;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:#fffc;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:#666}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-1[_ngcontent-%COMP%]{width:calc(100% - 20px);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;padding-top:10px}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted var(--regular-orangered-color);color:var(--hr-color);overflow:visible;text-align:center;height:5px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.buttonstyle[_ngcontent-%COMP%]{border:2px solid var(--deep-purple-border-color-rgb);background-color:var(--pale-border-color-rgb-3)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.marginbottom30px[_ngcontent-%COMP%]{margin-bottom:30px}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.button-add-top[_ngcontent-%COMP%]{z-index:1;position:relative;top:-10px;margin-right:25px;background-color:#fff;border:1px solid #007CBA}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:30px;margin-right:25px;background-color:#fff;border:1px solid #007CBA}.button-delete[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-40px;margin-right:20px;color:red;background-color:#fff;border:1px solid red}fieldset.border[_ngcontent-%COMP%]{border:solid 2px var(--fieldset-green-border-color)!important;padding:0 10px 10px;border-bottom:none;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:var(--legend-blue-border-color-2);font-family:Verdana;font-weight:700;margin-bottom:20px;margin-left:30px}"]}),ie}();function Lt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",15),d._uU(1," Deleted\xa0 "),d.TgZ(2,"button",16),d.NdJ("click",function(){return d.CHM(fe),d.oxw().undoDelete()}),d._UZ(3,"mat-icon",17),d.qZA(),d.qZA()}}function dt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",18),d.TgZ(1,"input",19),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().process.processName=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.process.processName)}}function ge(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",20),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().process.processRole=xt}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.process.processRole)}}function ke(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"app-cv-input",21),d.NdJ("valueChange",function(xt){return d.CHM(fe),d.oxw().process.processType=xt}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("model",oe.process.processType)}}function gt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",22),d.TgZ(1,"input",23),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().process.processDescription=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.process.processDescription)}}function de(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-form-field",22),d.TgZ(1,"textarea",24),d.NdJ("ngModelChange",function(xt){return d.CHM(fe),d.oxw().process.processComments=xt}),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("ngModel",oe.process.processComments)}}function we(ie,Ye){if(1&ie&&(d.TgZ(0,"legend",30),d._uU(1,"Site \xa0"),d.TgZ(2,"b"),d.TgZ(3,"span",31),d._uU(4),d.qZA(),d.qZA(),d.qZA()),2&ie){var fe=d.oxw().index,oe=d.oxw();d.xp6(4),d.AsE("",fe+1," of ",oe.process.sites.length,"")}}function Qe(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",32),d._UZ(1,"span",33),d.TgZ(2,"button",34),d.NdJ("click",function(){return d.CHM(fe),d.oxw(2).addSite()}),d._UZ(3,"mat-icon",35),d._uU(4,"Add Site "),d.qZA(),d.qZA()}}var Ge=function(Ye){return{marginbottom25px:Ye}},Mt=function(Ye){return{bordernone:Ye}};function Nt(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",25),d.TgZ(1,"fieldset",26),d.YNc(2,we,5,2,"legend",27),d.TgZ(3,"app-ssg4m-sites",28),d.NdJ("tabSelectedIndexOut",function(zn){return d.CHM(fe),d.oxw().tabSelectedIndexOutChange(zn)}),d.qZA(),d.YNc(4,Qe,5,0,"div",29),d.qZA(),d.qZA()}if(2&ie){var oe=Ye.$implicit,bt=Ye.index,xt=d.oxw();d.Q6J("ngClass",d.VKq(9,Ge,!0===xt.showAdvancedSettings)),d.xp6(1),d.Q6J("ngClass",d.VKq(11,Mt,!0===xt.showAdvancedSettings)),d.xp6(1),d.Q6J("ngIf",!0===xt.showAdvancedSettings),d.xp6(1),d.Q6J("site",oe)("processIndex",xt.processIndex)("siteIndex",bt)("showAdvancedSettings",xt.showAdvancedSettings)("tabSelectedView",xt.tabSelectedView),d.xp6(1),d.Q6J("ngIf",xt.showAdvancedSettings)}}function yn(ie,Ye){1&ie&&(d.TgZ(0,"div",2),d.TgZ(1,"b"),d._uU(2,"Click on Show All Parameters checkbox to add a Site"),d.qZA(),d.qZA())}function Ln(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",2),d._UZ(1,"span",33),d.TgZ(2,"button",36),d.NdJ("click",function(){return d.CHM(fe),d.oxw().addSite()}),d._UZ(3,"mat-icon",35),d._uU(4,"Add Site "),d.qZA(),d.qZA()}}var ei=function(){var ie=function(){function Ye(fe,oe,bt,xt,Jt,zn,hi,qi,Oi){(0,t.Z)(this,Ye),this.substanceFormSsg4mProcessService=fe,this.substanceFormSsg4mSitesService=oe,this.substanceFormService=bt,this.configService=xt,this.gaService=Jt,this.cvService=zn,this.overlayContainerService=hi,this.scrollToService=qi,this.dialog=Oi,this.tabSelectedIndexOut=new d.vpe,this.configSettingsDisplay={},this.subscriptions=[]}return(0,S.Z)(Ye,[{key:"ngAfterViewInit",value:function(){}},{key:"process",get:function(){return this.privateProcess},set:function(oe){this.privateProcess=oe}},{key:"processIndex",get:function(){return this.privateProcessIndex},set:function(oe){this.privateProcessIndex=oe;var bt="Process "+(oe+1).toString(),xt="Process "+oe.toString();this.privateProcess.processName&&(this.privateProcess.processName===bt||this.privateProcess.processName===xt)&&(this.privateProcess.processName="Process "+(this.processIndex+1))}},{key:"showAdvancedSettings",get:function(){return this.privateShowAdvancedSettings},set:function(oe){this.privateShowAdvancedSettings=oe,this.getConfigSettings()}},{key:"tabSelectedView",get:function(){return this.privateTabSelectedView},set:function(oe){this.privateTabSelectedView=oe}},{key:"ngOnInit",value:function(){var oe=this;this.overlayContainer=this.overlayContainerService.getContainerElement();var bt=this.substanceFormService.substance.subscribe(function(xt){oe.substance=xt});this.subscriptions.push(bt)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(oe){oe.unsubscribe()})}},{key:"getConfigSettings",value:function(){var oe=this,xt=(this.configService.configData&&this.configService.configData.ssg4Form||null).settingsDisplay.process;Object.keys(xt).forEach(function(Jt){null!=xt[Jt]&&("simple"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0:"advanced"===xt[Jt]?oe.configSettingsDisplay[Jt]=!0===oe.privateShowAdvancedSettings:"removed"===xt[Jt]&&(oe.configSettingsDisplay[Jt]=!1))})}},{key:"updateAccess",value:function(){}},{key:"insertProcess",value:function(oe,bt){var xt=this;this.substanceFormSsg4mProcessService.insertProcess(oe,bt),setTimeout(function(){xt.scrollToService.scrollToElement("substance-process-0","center")})}},{key:"addProcess",value:function(){var oe=this;this.substanceFormSsg4mProcessService.addProcess(),setTimeout(function(){oe.scrollToService.scrollToElement("substance-process-0","center")})}},{key:"addSite",value:function(){var oe=this;this.substanceFormSsg4mSitesService.addSite(this.processIndex),setTimeout(function(){oe.scrollToService.scrollToElement("substance-process-site-0","center")})}},{key:"confirmDeleteProcess",value:function(){var oe=this;this.dialog.open(zt.$,{data:{message:"Are you sure you want to delele Process "+(this.processIndex+1)+"?"}}).afterClosed().subscribe(function(xt){xt&&!0===xt&&oe.deleteProcess()})}},{key:"deleteProcess",value:function(){this.substanceFormSsg4mProcessService.deleteProcess(this.privateProcess,this.processIndex)}},{key:"tabSelectedIndexOutChange",value:function(oe){this.tabSelectedIndexOut.emit(oe)}}]),Ye}();return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(te),d.Y36(J),d.Y36(W.B),d.Y36(Me.E),d.Y36(un.$),d.Y36(mn.I),d.Y36(ue.Xj),d.Y36(oi.i),d.Y36(ce.uw))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-ssg4m-process-form"]],inputs:{process:"process",processIndex:"processIndex",showAdvancedSettings:"showAdvancedSettings",tabSelectedView:"tabSelectedView"},outputs:{tabSelectedIndexOut:"tabSelectedIndexOut"},decls:27,vars:11,consts:[[1,"process-form-container"],["class","notification-backdrop",4,"ngIf"],[1,"divflexright"],["mat-stroked-button","","color","primary","matTooltip","Insert Process Before",1,"button-insert-before",3,"click"],["mat-stroked-button","","color","primary","matTooltip","Insert Process After",1,"button-insert-after",3,"click"],["mat-stroked-button","","color","primary",1,"button-delete",3,"matTooltip","click"],["svgIcon","delete_forever"],[1,"form-row"],["class","col-3-1",4,"ngIf"],["class","col-3-1","domain","SSG_PROCESS_ROLE","title","Process Role","name","processRole",3,"model","valueChange",4,"ngIf"],["class","col-3-1","domain","SSG_PROCESS_TYPE","title","Process Type","name","processType",3,"model","valueChange",4,"ngIf"],[1,""],["class","col-2-1",4,"ngIf"],["class","margintop10px",3,"ngClass",4,"ngFor","ngForOf"],["class","divflexright",4,"ngIf"],[1,"notification-backdrop"],["mat-icon-button","","matTooltip","Undo",3,"click"],["svgIcon","undo"],[1,"col-3-1"],["matInput","","placeholder","Process Name","name","process.processName",3,"ngModel","ngModelChange"],["domain","SSG_PROCESS_ROLE","title","Process Role","name","processRole",1,"col-3-1",3,"model","valueChange"],["domain","SSG_PROCESS_TYPE","title","Process Type","name","processType",1,"col-3-1",3,"model","valueChange"],[1,"col-2-1"],["matInput","","placeholder","Process Description","name","process.processDescription",3,"ngModel","ngModelChange"],["matInput","","placeholder","Comments","name","process.processComments","rows","1",3,"ngModel","ngModelChange"],[1,"margintop10px",3,"ngClass"],[1,"border",3,"ngClass"],["class","border",4,"ngIf"],[3,"site","processIndex","siteIndex","showAdvancedSettings","tabSelectedView","tabSelectedIndexOut"],["class","divflex",4,"ngIf"],[1,"border"],[1,"font17px"],[1,"divflex"],[1,"middle-fill"],["mat-stroked-button","","color","primary",1,"button-add",3,"click"],["svgIcon","add_circle_outline"],["mat-stroked-button","","color","primary",1,"",3,"click"]],template:function(fe,oe){1&fe&&(d.TgZ(0,"div"),d.TgZ(1,"div",0),d.YNc(2,Lt,4,0,"div",1),d.TgZ(3,"div",2),d.TgZ(4,"button",3),d.NdJ("click",function(){return oe.insertProcess(oe.processIndex,"before")}),d.TgZ(5,"mat-icon"),d._uU(6,"arrow_upward"),d.qZA(),d._uU(7,"Insert Process Before "),d.qZA(),d.TgZ(8,"button",4),d.NdJ("click",function(){return oe.insertProcess(oe.processIndex,"after")}),d.TgZ(9,"mat-icon"),d._uU(10,"arrow_downward"),d.qZA(),d._uU(11,"Insert Process After "),d.qZA(),d.TgZ(12,"button",5),d.NdJ("click",function(){return oe.confirmDeleteProcess()}),d._UZ(13,"mat-icon",6),d._uU(14),d.qZA(),d.qZA(),d.TgZ(15,"div",7),d.YNc(16,dt,2,1,"mat-form-field",8),d.YNc(17,ge,1,1,"app-cv-input",9),d.YNc(18,ke,1,1,"app-cv-input",10),d.qZA(),d.TgZ(19,"div",11),d.TgZ(20,"div",7),d.YNc(21,gt,2,1,"mat-form-field",12),d.YNc(22,de,2,1,"mat-form-field",12),d.qZA(),d.qZA(),d.TgZ(23,"div"),d.YNc(24,Nt,5,13,"div",13),d.YNc(25,yn,3,0,"div",14),d.YNc(26,Ln,5,0,"div",14),d.qZA(),d.qZA(),d.qZA()),2&fe&&(d.xp6(2),d.Q6J("ngIf",oe.process.$$deletedCode),d.xp6(10),d.MGl("matTooltip","Delete Process ",oe.processIndex+1,""),d.xp6(2),d.hij("Delete Process ",oe.processIndex+1," "),d.xp6(2),d.Q6J("ngIf",oe.configSettingsDisplay.processName||void 0===oe.configSettingsDisplay.processName&&!0),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.processRole||void 0===oe.configSettingsDisplay.processRole&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.processType||void 0===oe.configSettingsDisplay.processType&&oe.showAdvancedSettings),d.xp6(3),d.Q6J("ngIf",oe.configSettingsDisplay.processDescription||void 0===oe.configSettingsDisplay.processDescription&&oe.showAdvancedSettings),d.xp6(1),d.Q6J("ngIf",oe.configSettingsDisplay.processComments||void 0===oe.configSettingsDisplay.processComments&&oe.showAdvancedSettings),d.xp6(2),d.Q6J("ngForOf",oe.process.sites),d.xp6(1),d.Q6J("ngIf",!oe.showAdvancedSettings&&oe.process.sites&&0===oe.process.sites.length),d.xp6(1),d.Q6J("ngIf",oe.showAdvancedSettings&&oe.process.sites&&0===oe.process.sites.length))},directives:[e.O5,s.lW,h.gM,_.Hw,y.KE,B.Nt,Y.Fj,Y.JJ,Y.On,qe.S,e.sg,e.mk,no],styles:[".process-form-container[_ngcontent-%COMP%]{padding:5px 10px 0;position:relative}.notification-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;display:-ms-flexbox;display:flex;z-index:10;background-color:var(--notif-backdrop-bg-color);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;font-size:30px;font-weight:700;color:var(--notif-backdrop-color)}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .delete-container[_ngcontent-%COMP%]{padding:0 10px 8px 0}.form-row[_ngcontent-%COMP%] .col-4-1[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-3-1[_ngcontent-%COMP%]{width:calc((100% - 40px) / 3);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.references-container[_ngcontent-%COMP%]{width:100%}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted var(--regular-green-color);color:var(--hr-color);overflow:visible;text-align:center;height:5px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderorange[_ngcontent-%COMP%]{border:1px solid var(--regular-orangered-color)}.fontsize17px[_ngcontent-%COMP%]{font-size:17px}.fontsize18px[_ngcontent-%COMP%]{font-size:18px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.marginleft50px[_ngcontent-%COMP%]{margin-left:50px}.marginbottom25px[_ngcontent-%COMP%]{margin-bottom:25px}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.bordernone[_ngcontent-%COMP%]{border:solid 2px #63635b!important}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;top:18px;margin-right:25px;background-color:#fff;border:1px solid #007CBA}.button-delete[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-40px;margin-right:20px;color:red;background-color:#fff;border:1px solid red}.button-insert-before[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-40px;margin-right:400px;color:#007cba;background-color:#fff;border:1px solid #007CBA}.button-insert-after[_ngcontent-%COMP%]{z-index:1;position:absolute;top:-40px;margin-right:200px;color:#007cba;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:none;padding:0 10px;border-bottom:none;margin-bottom:30px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:#007cba;font-family:Verdana;font-weight:700;margin-bottom:10px;margin-left:30px}"]}),ie}();function li(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div"),d.TgZ(1,"mat-checkbox",11),d.NdJ("change",function(xt){return d.CHM(fe),d.oxw().updateAdvancedSettings(xt)}),d._uU(2," Show All Parameters "),d.qZA(),d.qZA()}if(2&ie){var oe=d.oxw();d.xp6(1),d.Q6J("checked",oe.showAdvancedSettings)}}var Si=function(){return[5,10,25,100]};function Ai(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-paginator",12),d.NdJ("page",function(xt){d.CHM(fe);var Jt=d.oxw();return Jt.pageChange(xt,Jt.analyticsEventCategory)}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("length",oe.filtered&&oe.filtered.length||0)("pageIndex",oe.page)("pageSize",5)("pageSizeOptions",d.DdM(4,Si))}}function Fi(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",13),d.TgZ(1,"fieldset",14),d.TgZ(2,"legend",14),d._uU(3,"Process \xa0"),d.TgZ(4,"b"),d.TgZ(5,"span",15),d._uU(6),d.qZA(),d.qZA(),d.qZA(),d.TgZ(7,"app-ssg4m-process-form",16),d.NdJ("processDeleted",function(zn){return d.CHM(fe),d.oxw().deleteProcess(zn)})("tabSelectedIndexOut",function(zn){return d.CHM(fe),d.oxw().tabSelectedIndexOutChange(zn)}),d.qZA(),d.TgZ(8,"div",17),d._UZ(9,"span",18),d.TgZ(10,"button",19),d.NdJ("click",function(){return d.CHM(fe),d.oxw().addProcess()}),d._UZ(11,"mat-icon",20),d._uU(12,"Add Process "),d.qZA(),d.qZA(),d.qZA(),d.qZA()}if(2&ie){var oe=Ye.$implicit,bt=Ye.index,xt=d.oxw();d.xp6(6),d.AsE("",bt+1," of ",xt.paged.length,""),d.xp6(1),d.Q6J("process",oe)("processIndex",bt)("showAdvancedSettings",xt.showAdvancedSettings)("tabSelectedView",xt.tabSelectedView)}}function Ma(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"div",21),d.TgZ(1,"button",22),d.NdJ("click",function(){return d.CHM(fe),d.oxw().addProcess()}),d._UZ(2,"mat-icon",20),d._uU(3,"Add Process "),d.qZA(),d.qZA()}}function ot(ie,Ye){if(1&ie){var fe=d.EpF();d.TgZ(0,"mat-paginator",12),d.NdJ("page",function(xt){d.CHM(fe);var Jt=d.oxw();return Jt.pageChange(xt,Jt.analyticsEventCategory)}),d.qZA()}if(2&ie){var oe=d.oxw();d.Q6J("length",oe.filtered&&oe.filtered.length||0)("pageIndex",oe.page)("pageSize",5)("pageSizeOptions",d.DdM(4,Si))}}var yt=function(){var ie=function(Ye){(0,L.Z)(oe,Ye);var fe=(0,j.Z)(oe);function oe(bt,xt,Jt,zn,hi,qi,Oi,Wa,Ni){var cr;return(0,t.Z)(this,oe),(cr=fe.call(this,Wa)).substanceFormSsg4mProcessService=bt,cr.substanceFormSsg4mSitesService=xt,cr.substanceFormService=Jt,cr.configService=zn,cr.overlayContainerService=hi,cr.dialog=qi,cr.scrollToService=Oi,cr.gaService=Wa,cr.http=Ni,cr.subscriptions=[],cr.showAdvancedSettings=!1,cr.tabSelectedView="Form View",cr.tabSelectedIndex=0,cr}return(0,S.Z)(oe,[{key:"ngOnInit",value:function(){var xt=this;this.canAddItemUpdate.emit(!0),this.menuLabelUpdate.emit("Processes"),this.overlayContainer=this.overlayContainerService.getContainerElement();var Jt=!1;setInterval(function(){if(window.schemeUtil&&!Jt){Jt=!0,window.schemeUtil.debug=!1;var zn="".concat(xt.configService.configData&&xt.configService.configData.apiBaseUrl||"/","api/v1/"),hi=xt.http;window.schemeUtil.apiBaseURL=zn,window.schemeUtil.urlResolver=function(qi,Oi){hi.get(qi,{responseType:"text"}).subscribe(function(Wa){Oi(Wa)},function(Wa){Oi("ERROR")})},window.schemeUtil.onClickReaction=function(qi){var Ni=qi.siteIndex;void 0===Ni&&(Ni=0),xt.showStepViewDialog(qi.processIndex,Ni,qi.stepIndex)},window.schemeUtil.onClickMaterial=function(qi){xt.openImageModal(qi.refuuid,qi.name,qi.bottomText)}}},100)}},{key:"ngAfterViewInit",value:function(){var xt=this,Jt=this.substanceFormSsg4mProcessService.specifiedSubstanceG4mProcess.subscribe(function(zn){xt.process=zn,xt.filtered=zn,xt.page=0,xt.pageChange()});this.subscriptions.push(Jt)}},{key:"ngOnDestroy",value:function(){this.componentDestroyed.emit(),this.subscriptions.forEach(function(xt){xt.unsubscribe()})}},{key:"addItem",value:function(){this.addProcess()}},{key:"openImageModal",value:function(xt,Jt,zn){var hi=this,Oi=this.dialog.open(G.oV,{height:"96%",width:"650px",panelClass:"structure-image-panel",data:{structure:xt,uuid:xt,approvalID:Jt,displayName:zn}});this.overlayContainer.style.zIndex="1002";var Wa=Oi.afterClosed().subscribe(function(){hi.overlayContainer.style.zIndex=null,Wa.unsubscribe()},function(){hi.overlayContainer.style.zIndex=null,Wa.unsubscribe()})}},{key:"addProcess",value:function(){var xt=this;this.substanceFormSsg4mProcessService.addProcess(),setTimeout(function(){xt.scrollToService.scrollToElement("substance-process-0","center")})}},{key:"deleteProcess",value:function(xt){}},{key:"updateProcess",value:function(xt){}},{key:"updateAdvancedSettings",value:function(xt){this.showAdvancedSettings=xt.checked}},{key:"tabSelected",value:function(xt){if(xt){var zn=xt.tab.textLabel;null!=zn&&(this.tabSelectedView=zn)}}},{key:"onSelectedIndexChange",value:function(xt){if(this.tabSelectedIndex=xt,2===this.tabSelectedIndex){document.querySelector("#scheme-viz-view").className="";var Jt=JSON.stringify(this.substanceFormService.cleanSubstance());window.schemeUtil.renderScheme(window.schemeUtil.makeDisplayGraph(JSON.parse(Jt)),"#scheme-viz-view")}else document.querySelector("#scheme-viz-view").className="hidden"}},{key:"tabSelectedIndexOutChange",value:function(xt){this.tabSelectedIndex=xt}},{key:"showStepViewDialog",value:function(xt,Jt,zn){var hi=this,Oi=this.dialog.open(Jn,{width:"90%",height:"80%",panelClass:"structure-image-panel",data:{processIndex:xt,siteIndex:Jt,stageIndex:zn}});this.overlayContainer.style.zIndex="1002";var Wa=-1,Ni=Oi.afterClosed().subscribe(function(cr){hi.overlayContainer.style.zIndex=null,Wa=cr,Ni.unsubscribe(),Wa>-1&&(hi.tabSelectedIndex=Wa),hi.overlayContainer.style.zIndex=null,Ni.unsubscribe()})}}]),oe}(re.u);return ie.\u0275fac=function(fe){return new(fe||ie)(d.Y36(te),d.Y36(J),d.Y36(W.B),d.Y36(K.E),d.Y36(ue.Xj),d.Y36(ce.uw),d.Y36(oi.i),d.Y36(le.$),d.Y36(ri.eN))},ie.\u0275cmp=d.Xpm({type:ie,selectors:[["app-substance-form-ssg4m-process-card"]],features:[d.qOj],decls:17,vars:6,consts:[["dynamicHeight","",3,"selectedIndex","selectedTabChange","selectedIndexChange"],["label","Form View"],[1,"divflexright"],[4,"ngIf"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page",4,"ngIf"],["class","process",4,"ngFor","ngForOf"],["class","divflexright bordergray",4,"ngIf"],["label","Step View"],[3,"tabSelectedIndexOut"],["label","Scheme View"],["id","scheme-viz-view"],[3,"checked","change"],["showFirstLastButtons","true",3,"length","pageIndex","pageSize","pageSizeOptions","page"],[1,"process"],[1,"border"],[1,"colorgreen","font17px"],[3,"process","processIndex","showAdvancedSettings","tabSelectedView","processDeleted","tabSelectedIndexOut"],[1,"divflex"],[1,"middle-fill"],["mat-stroked-button","","color","primary",1,"button-add","top25px",3,"click"],["svgIcon","add_circle_outline"],[1,"divflexright","bordergray"],["mat-stroked-button","","color","primary",1,"",3,"click"]],template:function(fe,oe){1&fe&&(d.TgZ(0,"mat-tab-group",0),d.NdJ("selectedTabChange",function(xt){return oe.tabSelected(xt)})("selectedIndexChange",function(xt){return oe.onSelectedIndexChange(xt)}),d.TgZ(1,"mat-tab",1),d.TgZ(2,"div",2),d.YNc(3,li,3,1,"div",3),d.qZA(),d.YNc(4,Ai,1,5,"mat-paginator",4),d.YNc(5,Fi,13,6,"div",5),d.YNc(6,Ma,4,0,"div",6),d._UZ(7,"br"),d._UZ(8,"br"),d.YNc(9,ot,1,5,"mat-paginator",4),d.qZA(),d.TgZ(10,"mat-tab",7),d.TgZ(11,"app-ssg4m-scheme-view",8),d.NdJ("tabSelectedIndexOut",function(xt){return oe.tabSelectedIndexOutChange(xt)}),d.qZA(),d.qZA(),d.TgZ(12,"mat-tab",9),d._UZ(13,"br"),d._UZ(14,"br"),d._uU(15," \xa0\xa0\xa0 "),d.qZA(),d.qZA(),d._UZ(16,"div",10)),2&fe&&(d.Q6J("selectedIndex",oe.tabSelectedIndex),d.xp6(3),d.Q6J("ngIf",oe.process&&oe.process.length>0),d.xp6(1),d.Q6J("ngIf",oe.process&&oe.process.length>5),d.xp6(1),d.Q6J("ngForOf",oe.paged),d.xp6(1),d.Q6J("ngIf",oe.process&&0==oe.process.length),d.xp6(3),d.Q6J("ngIf",oe.process&&oe.process.length>5))},directives:[D.SP,D.uX,e.O5,k.oG,q.NW,e.sg,ei,s.lW,_.Hw,jn],styles:[".bordergray[_ngcontent-%COMP%]{border:1px border var(--regular-grey-color)}.mat-divider.mat-divider-inset[_ngcontent-%COMP%]{margin-left:0}.mat-divider[_ngcontent-%COMP%]{border-top-color:var(--text-color)}.process[_ngcontent-%COMP%]{margin-bottom:60px}.process[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.process[_ngcontent-%COMP%]:nth-child(odd) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-3)}.process[_ngcontent-%COMP%]:nth-child(even) .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background-color:var(--nth-child-color-1)}.process[_ngcontent-%COMP%] .mat-expansion-panel, .process[_ngcontent-%COMP%] .mat-table, .process[_ngcontent-%COMP%] textarea{background-color:var(--regular-transparent-color)}.search[_ngcontent-%COMP%]{width:400px;max-width:100%}.paddingleft800px[_ngcontent-%COMP%]{padding-left:800px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.divflexright[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;padding-top:10px}.top25px[_ngcontent-%COMP%]{top:25px}.button-add[_ngcontent-%COMP%]{z-index:1;position:relative;margin-right:25px;background-color:#fff;border:1px solid #007CBA}fieldset.border[_ngcontent-%COMP%]{border:solid 2px var(--fieldset-blue-border-color)!important;padding:0 10px 10px;border-bottom:none;margin-top:20px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:15px;color:var(--legend-blue-border-color-2);font-family:Verdana;font-weight:700;margin-bottom:10px;margin-left:30px}[_nghost-%COMP%] .mat-tab-list .mat-tab-label{min-width:120px;max-width:120px;text-align:top;margin-bottom:10px;color:#007cba;opacity:1!important}[_nghost-%COMP%] .mat-tab-label-content{margin-top:-5px}[_nghost-%COMP%] .mat-tab-header{margin-top:10px;border-bottom:2px solid #9495a3}[_nghost-%COMP%] .mat-tab-list .mat-tab-labels .mat-tab-label-active{background:url(tab_active.82dd18018f4a7e7a.png);color:#fff;padding-top:-10px}[_nghost-%COMP%] .mat-ink-bar{display:none!important}fieldset.border.minimize[_ngcontent-%COMP%]{border:none!important;padding:0!important;box-shadow:none!important;margin-top:0!important}"]}),ie}(),St=function(){var ie=(0,S.Z)(function Ye(){(0,t.Z)(this,Ye)});return ie.\u0275fac=function(fe){return new(fe||ie)},ie.\u0275mod=d.oAB({type:ie}),ie.\u0275inj=d.cJS({imports:[[e.ez,c.o.forChild(yt),u.O,o.t,_.Ps,h.AV,s.ot,b.g,T.w,q.TU,B.c,k.p9,y.lN,Y.UX,Y.u5,D.Nh,N.B,I.L]]}),ie}()},9597:function(Ce,E,n){"use strict";n.d(E,{L:function(){return q}});var S=n(1884),t=n(39117),e=n(36362),c=n(98002),u=n(61534),o=n(87317),_=n(65590),s=n(26131),h=n(40089),b=n(94673),T=n(7168),y=n(24054),Y=n(86613),q=function(){var B=(0,S.Z)(function k(){(0,t.Z)(this,k)});return B.\u0275fac=function(D){return new(D||B)},B.\u0275mod=Y.oAB({type:B}),B.\u0275inj=Y.cJS({imports:[[e.ez,c.Bz,u.p9,o.ot,h.AV,_.Ps,s.ie,b.w,T.O,y.f]]}),B}()},36730:function(Ce,E,n){"use strict";n.d(E,{B:function(){return D}});var S=n(1884),t=n(39117),e=n(36362),c=n(44770),u=n(90587),o=n(26439),_=n(43365),s=n(19975),h=n(65590),b=n(40089),T=n(87317),y=n(70178),Y=n(94673),q=n(7168),B=n(95089),k=n(86613),D=function(){var N=(0,S.Z)(function I(){(0,t.Z)(this,I)});return N.\u0275fac=function(L){return new(L||N)},N.\u0275mod=k.oAB({type:N}),N.\u0275inj=k.cJS({imports:[[e.ez,q.O,s.t,h.Ps,b.AV,T.ot,Y.w,c.lN,u.UX,u.u5,o.TU,_.c,y.g,B.O]]}),N}()},95089:function(Ce,E,n){"use strict";n.d(E,{O:function(){return Xe}});var S=n(39117),t=n(1884),e=n(36362),c=n(98002),u=n(90587),o=n(44770),_=n(91434),s=n(43365),h=n(61534),b=n(68390),T=n(87317),y=n(31959),Y=n(65590),q=n(40089),B=n(82796),k=n(12379),D=n(19975),N=n(81196),I=n(43188),L=n(95758),j=n(97217),le=n(26131),re=n(16531),W=n(70178),$=n(74742),be=n(60833),z=n(49241),d=n(65831),Q=n(94673),J=n(45723),te=n(7168),K=n(63200),G=n(24054),ce=n(86613),_e=function(){var mt=(0,t.Z)(function wt(){(0,S.Z)(this,wt)});return mt.\u0275fac=function(Pt){return new(Pt||mt)},mt.\u0275mod=ce.oAB({type:mt}),mt.\u0275inj=ce.cJS({imports:[[u.UX,o.lN,u.u5,s.c,T.ot,Y.Ps,q.AV,te.O,_.LD,K.U,e.ez]]}),mt}(),Me=n(80346),ve=function(){var mt=(0,t.Z)(function wt(){(0,S.Z)(this,wt)});return mt.\u0275fac=function(Pt){return new(Pt||mt)},mt.\u0275mod=ce.oAB({type:mt}),mt.\u0275inj=ce.cJS({imports:[[e.ez,u.UX,u.u5,o.lN,B.Tx,h.p9,T.ot,Y.Ps,q.AV,k.Nh,D.t,_.LD,s.c,N.Hi,I.Bb,Q.w,L.Is,j.p0,re.To,W.g,b.Fk,J.F,K.U,le.ie,d.x,y.vV,z.s,c.Bz,be.Cv,$.Cq,G.f,K.U,te.O]]}),mt}(),ue=function(){var mt=(0,t.Z)(function wt(){(0,S.Z)(this,wt)});return mt.\u0275fac=function(Pt){return new(Pt||mt)},mt.\u0275mod=ce.oAB({type:mt}),mt.\u0275inj=ce.cJS({imports:[[e.ez,u.UX,u.u5,o.lN,B.Tx,h.p9,T.ot,Y.Ps,q.AV,k.Nh,D.t,_.LD,s.c,N.Hi,I.Bb,Q.w,L.Is,j.p0,re.To,W.g,b.Fk,J.F,K.U,le.ie,d.x,y.vV,z.s,c.Bz,be.Cv,$.Cq,G.f,K.U,te.O]]}),mt}(),lt=n(9597),Xe=function(){var mt=function(){function wt(){(0,S.Z)(this,wt)}return(0,t.Z)(wt,null,[{key:"forRoot",value:function(){return{ngModule:wt,providers:[]}}}]),wt}();return mt.\u0275fac=function(Pt){return new(Pt||mt)},mt.\u0275mod=ce.oAB({type:mt}),mt.\u0275inj=ce.cJS({imports:[[e.ez,u.UX,u.u5,o.lN,B.Tx,h.p9,T.ot,Y.Ps,q.AV,k.Nh,D.t,_.LD,s.c,N.Hi,I.Bb,Q.w,L.Is,j.p0,re.To,W.g,b.Fk,J.F,K.U,le.ie,d.x,y.vV,z.s,c.Bz,G.f,be.Cv,$.Cq,te.O,_e,Me._,ve,ue,lt.L]]}),mt}()},80346:function(Ce,E,n){"use strict";n.d(E,{_:function(){return _e}});var S=n(1884),t=n(39117),e=n(36362),c=n(98002),u=n(90587),o=n(44770),_=n(91434),s=n(43365),h=n(61534),b=n(68390),T=n(87317),y=n(31959),Y=n(65590),q=n(40089),B=n(82796),k=n(12379),D=n(19975),N=n(81196),I=n(43188),L=n(95758),j=n(97217),le=n(26131),re=n(16531),W=n(70178),$=n(74742),be=n(60833),z=n(49241),d=n(65831),Q=n(94673),J=n(45723),te=n(63200),K=n(24054),G=n(7168),ce=n(86613),_e=function(){var Me=(0,S.Z)(function ve(){(0,t.Z)(this,ve)});return Me.\u0275fac=function(ue){return new(ue||Me)},Me.\u0275mod=ce.oAB({type:Me}),Me.\u0275inj=ce.cJS({imports:[[e.ez,u.UX,u.u5,o.lN,B.Tx,h.p9,T.ot,Y.Ps,q.AV,k.Nh,D.t,_.LD,s.c,N.Hi,I.Bb,Q.w,L.Is,j.p0,re.To,W.g,b.Fk,J.F,te.U,le.ie,d.x,y.vV,z.s,c.Bz,be.Cv,$.Cq,K.f,te.U,G.O]]}),Me}()},53956:function(Ce,E,n){"use strict";n.d(E,{$:function(){return q}});var S=n(39117),t=n(1884),e=n(34929),c=n(86613),u=n(28784),o=n(59295),_=n(92507),s=n(26067),h=n(50253),b=n(83336),T=n(12570),y=n(52149),Y=n(69093),q=function(){function B(k,D,N,I,L){(0,S.Z)(this,B),this.substanceService=k,this.utilsService=D,this.structureService=N,this.http=I,this.configService=L,this.substanceDisulfideLinksEmitter=new s.t,this.substanceGlycosylationEmitter=new s.t,this.substanceLinksEmitter=new s.t,this.substanceNamesEmitter=new s.t,this.substanceOtherLinksEmitter=new s.t,this.substanceStructuralModificationsEmitter=new s.t,this.substanceCysteineEmitter=new s.t,this.substanceFormActionEmitter=new s.t,this.definitionEmitter=new h.x,this.substanceSubunitsEmitter=new h.x,this.substanceSugarsEmitter=new h.x,this.substanceNucleicAcidEmitter=new h.x,this.displaySequencesEmitter=new h.x,this.substanceChangeReasonEmitter=new h.x,this.nameResolver=new h.x,this.resolvedMol=this.nameResolver.asObservable(),this._bypassUpdateCheck=!1,this.apiBaseUrlSsg4mEntityUrl=this.configService.configData.apiSSG4mBaseUrl+"api/v1/ssg4m/",this.substanceEmitter=new s.t}return(0,t.Z)(B,[{key:"ngOnDestroy",value:function(){this.unloadSubstance()}},{key:"loadSubstance",value:function(){var D=this,N=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"chemical",I=arguments.length>1?arguments[1]:void 0,L=arguments.length>2?arguments[2]:void 0,j=arguments.length>3?arguments[3]:void 0;return this.method=L||null,j&&(this.privateSubstance=I,this.substanceEmitter.next(I)),new b.y(function(le){null!=I?(D.privateSubstance=I,N=D.privateSubstance.substanceClass):D.privateSubstance="chemical"===N||"structure"===N?{substanceClass:"chemical",references:[],names:[],structure:{molfile:"\n\n\n 0 0 0 0 0 0 999 V2000\nM END"},codes:[],relationships:[],properties:[]}:"protein"===N?{substanceClass:"protein",references:[],names:[],protein:{proteinType:""},codes:[],relationships:[],properties:[]}:"nucleicAcid"===N?{substanceClass:"nucleicAcid",references:[],names:[],nucleicAcid:{},codes:[],relationships:[],properties:[]}:"mixture"===N?{substanceClass:"mixture",references:[],names:[],mixture:{},codes:[],relationships:[],properties:[]}:"structurallyDiverse"===N?{substanceClass:"structurallyDiverse",references:[],names:[],structurallyDiverse:{part:["whole"],$$diverseType:"whole"},codes:[],relationships:[],properties:[]}:"specifiedSubstance"===N||"specifiedSubstanceG1"===N?{substanceClass:"specifiedSubstanceG1",references:[],names:[],specifiedSubstance:{constituents:[],references:[]},codes:[],relationships:[],properties:[]}:"specifiedSubstanceG3"===N?{substanceClass:N,references:[],names:[],specifiedSubstanceG3:{parentSubstance:{},definition:{references:[]},grade:{references:[]}},codes:[],properties:[]}:"polymer"===N?{substanceClass:N,references:[],names:[],polymer:{idealizedStructure:{},monomers:[]},codes:[],moieties:[],relationships:[],properties:[]}:"specifiedSubstanceG4m"===N?{substanceClass:N,specifiedSubstanceG4m:{parentSubstance:{},process:[]}}:{substanceClass:N,references:[],names:[],codes:[]},D.subClass=D.privateSubstance.substanceClass,"chemical"===D.subClass?D.subClass="structure":"specifiedSubstanceG1"===D.subClass&&(D.subClass="specifiedSubstance"),null==D.privateSubstance[D.subClass]&&(D.privateSubstance[D.subClass]={}),D.initForm(),D.substanceEmitter.next(D.privateSubstance),le.next(),le.complete()})}},{key:"substanceFormAction",get:function(){return this.substanceFormActionEmitter.asObservable()}},{key:"initForm",value:function(){this.substanceFormActionEmitter.next("load")}},{key:"substance",get:function(){return this.substanceEmitter.asObservable()}},{key:"resetState",value:function(){var D=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(D)}},{key:"unloadSubstance",value:function(){this.displaySequences=null,this.substanceEmitter.complete(),this.substanceDisulfideLinksEmitter.complete(),this.substanceGlycosylationEmitter.complete(),this.substanceLinksEmitter.complete(),this.substanceNamesEmitter.complete(),this.substanceOtherLinksEmitter.complete(),this.substanceStructuralModificationsEmitter.complete(),this.substanceCysteineEmitter.complete(),this.substanceEmitter=new s.t,this.substanceDisulfideLinksEmitter=new s.t,this.substanceGlycosylationEmitter=new s.t,this.substanceLinksEmitter=new s.t,this.substanceLinksEmitter=new s.t,this.substanceOtherLinksEmitter=new s.t,this.substanceStructuralModificationsEmitter=new s.t,this.substanceCysteineEmitter=new s.t,this.substanceFormActionEmitter.next("unload")}},{key:"ready",value:function(){var D=this;return new b.y(function(N){D.substanceEmitter.pipe((0,o.q)(1)).subscribe(function(I){N.next(),N.complete()})})}},{key:"isSubstanceUpdated",get:function(){var D=JSON.stringify(this.privateSubstance);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.substanceStateHash!==this.utilsService.hashCode(D)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"checkSsg4mServerStatus",value:function(){return this.http.get(this.apiBaseUrlSsg4mEntityUrl)}},{key:"getSsg4mDetails",value:function(D,N){return this.http.get(this.apiBaseUrlSsg4mEntityUrl+D)}},{key:"saveSsg4m",value:function(D,N){return this.http.request(D.synthPathwaySkey?"PUT":"POST",this.apiBaseUrlSsg4mEntityUrl,{body:D})}},{key:"validateSsg4m",value:function(D){return this.http.post(this.apiBaseUrlSsg4mEntityUrl+"@validate",D)}},{key:"cleanSubstance",value:function(){var D=this;if(this.privateSubstance.structurallyDiverse&&(this.privateSubstance.structurallyDiverse.$$diverseType&&delete this.privateSubstance.structurallyDiverse.$$diverseType,this.privateSubstance.structurallyDiverse.$$storedPart&&delete this.privateSubstance.structurallyDiverse.$$storedPart,["organismFamily","organismGenus","organismSpecies","organismAuthor","infraSpecificName","infraSpecificType","fractionMaterialType","fractionName","developmentalStage"].forEach(function(W){D.privateSubstance.structurallyDiverse[W]&&null!==D.privateSubstance.structurallyDiverse[W]&&""!==D.privateSubstance.structurallyDiverse[W]&&(D.privateSubstance.structurallyDiverse[W]=D.privateSubstance.structurallyDiverse[W].trim())})),this.privateSubstance.structure&&(this.privateSubstance.structure.properties&&delete this.privateSubstance.structure.properties,this.privateSubstance.structure.links&&delete this.privateSubstance.structure.links),this.privateSubstance.polymer&&this.privateSubstance.polymer.displayStructure&&(this.privateSubstance.polymer.displayStructure.properties&&delete this.privateSubstance.polymer.displayStructure.properties,this.privateSubstance.polymer.displayStructure.links&&delete this.privateSubstance.polymer.displayStructure.links),this.privateSubstance.polymer&&this.privateSubstance.polymer.idealizedStructure&&(this.privateSubstance.polymer.idealizedStructure.properties&&delete this.privateSubstance.polymer.idealizedStructure.properties,this.privateSubstance.polymer.idealizedStructure.links&&delete this.privateSubstance.polymer.idealizedStructure.links),this.privateSubstance.moieties&&this.privateSubstance.moieties.forEach(function(W){W.properties&&delete W.properties,W.links&&delete W.links}),this.privateSubstance.protein&&this.privateSubstance.protein.disulfideLinks&&this.privateSubstance.protein.disulfideLinks.length>0)for(var I=this.privateSubstance.protein.disulfideLinks.length;I>=0;I--)this.privateSubstance.protein.disulfideLinks[I]&&this.privateSubstance.protein.disulfideLinks[I].sites&&this.privateSubstance.protein.disulfideLinks[I].sites[0]&&this.privateSubstance.protein.disulfideLinks[I].sites[1]&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[I].sites[0]).length&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[I].sites[1]).length&&this.privateSubstance.protein.disulfideLinks.splice(I,1);var L=JSON.stringify(this.privateSubstance),j=JSON.parse(L),re=this.cleanObject(j).deletedUuids;return re.length>0&&(L=JSON.stringify(j),re.forEach(function(W){L=L.replace(new RegExp('"'.concat(W,'"'),"g"),"")}),L=(L=(L=L.replace(/,[,]+/g,",")).replace(/\[,/g,"[")).replace(/,\]/g,"]"),j=JSON.parse(L)),j}},{key:"cleanObject",value:function(D){var N=this,I=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if("[object Object]"===Object.prototype.toString.call(D)){var L=null!=D.$$deletedCode;return L?null!=D.uuid&&I.push(D.uuid):(delete D.$$deletedCode,Object.keys(D).forEach(function(j){"[object Array]"===Object.prototype.toString.call(D[j])?D[j]=D[j].filter(function(le){return!N.cleanObject(le,I).isDeleted}):"[object Object]"===Object.prototype.toString.call(D[j])&&N.cleanObject(D[j],I)})),{deletedUuids:I,isDeleted:L}}if("[object Array]"!==Object.prototype.toString.call(D))return{deletedUuids:I,isDeleted:!1};D.forEach(function(j){N.cleanObject(j,I)})}}]),B}();q.\u0275fac=function(k){return new(k||q)(c.LFG(T.d),c.LFG(y.F),c.LFG(Y.De),c.LFG(u.eN),c.LFG(_.E))},q.\u0275prov=c.Yz7({token:q,factory:q.\u0275fac,providedIn:"root"}),q=(0,e.gn)([(0,c.GSi)(),(0,e.w6)("design:paramtypes",[T.d,y.F,Y.De,u.eN,_.E])],q)},43785:function(Ce,E,n){"use strict";n.d(E,{e:function(){return W}});var S=n(39117),t=n(1884),e=n(86613),c=n(90587),u=n(59295),o=n(71989),_=n(98977),s=n(32673),h=n(52149),b=n(24874),T=n(53141),y=n(18291),Y=n(44770),q=n(36362),B=n(43365),k=n(43188),D=n(1130),N=n(87317),I=n(65590);function L($,be){if(1&$&&(e.TgZ(0,"mat-hint"),e._uU(1),e.qZA()),2&$){var z=e.oxw();e.xp6(1),e.Oqu(z.hintMessage)}}function j($,be){if(1&$&&(e.TgZ(0,"mat-error"),e._uU(1),e.qZA()),2&$){var z=e.oxw();e.xp6(1),e.Oqu(z.errorMessage)}}function le($,be){if(1&$&&(e.TgZ(0,"mat-option",16),e.TgZ(1,"div",17),e._uU(2),e.qZA(),e.qZA()),2&$){var z=be.$implicit,d=e.oxw(2);e.s9C("title",z.key),e.Q6J("value",z.key),e.xp6(1),e.Q6J("innerHTML",d.highlight(z.key),e.oJD),e.xp6(1),e.Oqu(z.key)}}function re($,be){if(1&$&&(e.TgZ(0,"div"),e.TgZ(1,"div",13),e.TgZ(2,"span",14),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e.YNc(5,le,3,4,"mat-option",15),e.qZA()),2&$){var z=be.$implicit,d=e.oxw();e.xp6(4),e.Oqu(z.display),e.xp6(1),e.Q6J("ngForOf",d.substanceSuggestionsGroup[z.value])}}var W=function(){var $=function(){function be(z,d,Q,J,te){(0,S.Z)(this,be),this.utilsService=z,this.element=d,this.gaService=Q,this.configService=J,this.cvService=te,this.searchControl=new c.NI,this.matOpen=!0,this.searchPerformed=new e.vpe,this.searchValueOut=new e.vpe,this.placeholder="Search",this.hintMessage="",this.privateErrorMessage="",this.opened=new e.vpe,this.closed=new e.vpe,this.CasDisplay="CAS"}return(0,t.Z)(be,[{key:"ngOnInit",value:function(){var d=this;this.cvService.getDomainVocabulary("CODE_SYSTEM").pipe((0,u.q)(1)).subscribe(function(Q){var J;J=Q.CODE_SYSTEM.dictionary,d.codeSystemVocab=Q.CODE_SYSTEM.dictionary,J.CAS&&(d.CasDisplay=J.CAS.display)}),this.searchControl.valueChanges.pipe((0,o.b)(500),(0,_.x)(),(0,s.w)(function(Q){return d.query=Q,d.searchValueOut.emit(d.query),d.gaService.sendEvent(d.eventCategory||"substanceTextSearch","search:enter-term",!d.configService.environment.isAnalyticsPrivate&&Q||"search term"),d.utilsService.getStructureSearchSuggestions(Q.toUpperCase())})).subscribe(function(Q){d.substanceSuggestionsGroup=Q;var J=["Standardized_Name","Display_Name","CAS","Name","Approval_ID"];d.configService&&d.configService.configData&&d.configService.configData.typeaheadFields&&(J=d.configService.configData.typeaheadFields),d.suggestionsFields=Object.keys(d.substanceSuggestionsGroup).filter(function(te){return J.indexOf(te)>-1}),d.suggestionsFields.sort(function(te,K){return"Display_Name"===te?-1:"Display_Name"===K?1:0}),d.suggestionsFields.forEach(function(te,K){d.suggestionsFields[K]="Approval_ID"===te?d.configService&&d.configService.configData&&d.configService.configData.approvalCodeName?{value:"Approval_ID",display:d.configService.configData.approvalCodeName}:{value:"Approval_ID",display:"UNII"}:"Standardized_Name"===te?{value:"Standardized_Name",display:"Standardized Name"}:"Display_Name"===te?{value:"Display_Name",display:"Preferred Term"}:"CAS"===te?{value:"CAS",display:d.CasDisplay}:d.codeSystemVocab[te]?{value:te,display:d.codeSystemVocab[te].display}:{value:te,display:te}}),null!=d.suggestionsFields&&d.suggestionsFields.length>0&&(d.matOpen=!0,d.opened.emit())},function(Q){d.gaService.sendException("search suggestion error from API call"),console.log(Q)})}},{key:"searchValue",set:function(d){this.searchControl.setValue(d)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(d){this.searchControl.markAsTouched(),this.searchControl.setErrors(d?{error:!0}:null),this.privateErrorMessage=d}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(d){var Q=this.eventCategory||"substanceTextSearch";this.gaService.sendEvent(Q,"select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&d.option.value||"auto-complete option");var te=d.option.value;"topSearch"===Q&&(te=this.topSearchClean(te)),this.searchPerformed.emit(te)}},{key:"highlight",value:function(d){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=d,this.testElem.scrollWidth>this.testElem.offsetWidth))){var Q=d.toUpperCase().indexOf(this.query.toUpperCase());d="..."+d.substring(Q-15,d.length)}var J=this.query.replace(/(?=[() \[\]])/g,"\\");return d.replace(new RegExp(J,"gi"),function(te){return""+te+""})}return d}},{key:"processSubstanceSearch",value:function(){var d=this.searchControl.value,Q=this.eventCategory||"substanceTextSearch";this.gaService.sendEvent(Q,"search:submit",!this.configService.environment.isAnalyticsPrivate&&d||"search term option"),"topSearch"===Q&&(d=this.topSearchClean(d)),this.searchPerformed.emit(d)}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var d=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){d.source?(d.searchContainerElement.classList.remove("active-"+d.source),d.searchContainerElement.classList.remove("deactivate-search")):(d.searchContainerElement.classList.remove("active-search"),d.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(d){if(d&&d.length>0){d=d.trim();var Q=this.utilsService.looksLikeComplexSearchTerm(d);d.indexOf('"')<0&&!Q?d='"'+d.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':Q||d.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]"),this.searchControl.setValue(d)}return d}}]),be}();return $.\u0275fac=function(z){return new(z||$)(e.Y36(h.F),e.Y36(e.SBq),e.Y36(b.$),e.Y36(T.E),e.Y36(y.I))},$.\u0275cmp=e.Xpm({type:$,selectors:[["app-substance-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:16,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search substances","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],["mat-icon-button","",1,"close-button",3,"click"],["svgIcon","close"],["mat-icon-button","",1,"activate-search-button",3,"click"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value","title",4,"ngFor","ngForOf"],[3,"value","title"],[1,"suggestion-styling",3,"innerHTML"]],template:function(z,d){if(1&z&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return d.focused()}),e.qZA(),e.YNc(4,L,2,1,"mat-hint",3),e.YNc(5,j,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(te){return d.substanceSearchOptionSelected(te)})("closed",function(){return d.autoCompleteClosed()}),e.YNc(8,re,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return d.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.TgZ(12,"button",10),e.NdJ("click",function(){return d.deactivateSearch()}),e._UZ(13,"mat-icon",11),e.qZA(),e.TgZ(14,"button",12),e.NdJ("click",function(){return d.activateSearch()}),e._UZ(15,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&z){var Q=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",d.source),e.xp6(1),e.Q6J("placeholder",d.placeholder)("formControl",d.searchControl)("matAutocomplete",Q),e.xp6(1),e.Q6J("ngIf",d.hintMessage),e.xp6(1),e.Q6J("ngIf",d.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",d.suggestionsFields),e.xp6(2),e.Q6J("disabled",d.searchControl.invalid)}},directives:[c._Y,c.JL,c.F,Y.KE,q.mk,B.Nt,c.Fj,k.ZL,c.JJ,c.oH,q.O5,Y.bx,Y.TO,k.XC,q.sg,D.ey,N.lW,I.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:var(--regular-white-color);overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:var(--link-primary-color);color:var(--regular-white-color)}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 990px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 990px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:var(--primary-color);overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:var(--regular-white-color);overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{animation-name:reduceWidth;animation-duration:.3s}}@keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),$}()},84844:function(Ce,E,n){"use strict";n.d(E,{d:function(){return T}});var S=n(1884),t=n(39117),e=n(36362),c=n(65590),u=n(43188),o=n(90587),_=n(44770),s=n(43365),h=n(87317),b=n(86613),T=function(){var y=(0,S.Z)(function Y(){(0,t.Z)(this,Y)});return y.\u0275fac=function(q){return new(q||y)},y.\u0275mod=b.oAB({type:y}),y.\u0275inj=b.cJS({imports:[[e.ez,c.Ps,u.Bb,o.UX,o.u5,_.lN,s.c,h.ot]]}),y}()},27299:function(Ce,E,n){"use strict";n.d(E,{d:function(){return S.d}});var S=n(12570)},9292:function(Ce,E,n){"use strict";n.d(E,{m:function(){return _}});var S=n(39117),t=n(1884),e=n(52149),c=n(92507),u=n(86613),o=n(28784),_=function(){var s=function(){function h(b,T,y,Y){(0,S.Z)(this,h),this.el=b,this.utilsService=T,this.configService=y,this.http=Y,this.privateStereo=!1,this.isAfterViewInit=!1,this.imageElement=this.el.nativeElement}return(0,t.Z)(h,[{key:"ngAfterViewInit",value:function(){this.isAfterViewInit=!0,this.setImageSrc()}},{key:"version",set:function(T){T!==this.privateVersion&&(this.privateVersion=T,this.setImageSrc())}},{key:"entityId",set:function(T){T!==this.privateEntityId&&(this.privateEntityId=T,this.setImageSrc())}},{key:"size",set:function(T){T!==this.privateSize&&(this.privateSize=T,this.setImageSrc())}},{key:"stereo",set:function(T){T!==this.privateStereo&&(this.privateStereo=T,this.setImageSrc())}},{key:"atomMaps",set:function(T){T!==this.privateAtomMaps&&(this.privateAtomMaps=T,this.setImageSrc())}},{key:"setImageSrc",value:function(){var T=this.configService.configData&&this.configService.configData.useDataUrl||!1;if(this.isAfterViewInit){if(this.privateEntityId)if(this.privateVersion){var y=this.utilsService.getStructureImgUrl(this.privateEntityId,this.privateSize,this.privateStereo,this.privateAtomMaps,this.privateVersion);!0===T?this.setImageSrcAsBlob(y):this.imageElement.src=y}else{var Y=this.utilsService.getStructureImgUrl(this.privateEntityId,this.privateSize,this.privateStereo,this.privateAtomMaps);!0===T?this.setImageSrcAsBlob(Y):this.imageElement.src=Y}else{var q="".concat(this.configService.environment.baseHref||"","assets/images/noimage.svg");this.privateSize?(this.imageElement.height=this.privateSize,this.imageElement.width=this.privateSize):(this.imageElement.height=150,this.imageElement.width=150),!0===T?this.setImageSrcAsBlob(q):this.imageElement.src=q}this.imageElement.alt="structure image"}}},{key:"setImageSrcAsBlob",value:function(T){var y=this;this.http.get(T,{responseType:"blob"}).subscribe(function(Y){var q=new FileReader;q.addEventListener("load",function(){y.imageElement.src=q.result.toString()},!1),Y&&q.readAsDataURL(Y)})}}]),h}();return s.\u0275fac=function(b){return new(b||s)(u.Y36(u.SBq),u.Y36(e.F),u.Y36(c.E),u.Y36(o.eN))},s.\u0275dir=u.lG2({type:s,selectors:[["","appSubstanceImage",""]],inputs:{version:"version",entityId:"entityId",size:"size",stereo:"stereo",atomMaps:"atomMaps"}}),s}()},24054:function(Ce,E,n){"use strict";n.d(E,{f:function(){return u}});var S=n(1884),t=n(39117),e=n(36362),c=n(86613),u=function(){var o=(0,S.Z)(function _(){(0,t.Z)(this,_)});return o.\u0275fac=function(s){return new(s||o)},o.\u0275mod=c.oAB({type:o}),o.\u0275inj=c.cJS({imports:[[e.ez]]}),o}()},12570:function(Ce,E,n){"use strict";n.d(E,{d:function(){return N}});var S=n(46751),t=n(56101),e=n(39117),c=n(1884),u=n(28784),o=n(50253),_=n(83336),s=n(92507),h=n(69264),b=n(60670),T=n(52149),y=n(32673),Y=n(53158),q=n(50635),B=n(86613),k=n(50318),D=function(){function I(){(0,e.Z)(this,I)}return(0,c.Z)(I,[{key:"encodeKey",value:function(j){return encodeURIComponent(j)}},{key:"encodeValue",value:function(j){return encodeURIComponent(j)}},{key:"decodeKey",value:function(j){return decodeURIComponent(j)}},{key:"decodeValue",value:function(j){return decodeURIComponent(j)}}]),I}(),N=function(){var I=function(L){(0,S.Z)(le,L);var j=(0,t.Z)(le);function le(re,W,$,be){var z;return(0,e.Z)(this,le),(z=j.call(this,W)).http=re,z.configService=W,z.sanitizer=$,z.utilsService=be,z.searchKeys={},z.showDeprecated=!1,z.resultEmitter=new o.x,z.showImagePopup=new o.x,z.imagePopupUnit=new o.x,z}return(0,c.Z)(le,[{key:"searchResults",get:function(){var W=this;return new _.y(function($){W.searchResult||(W.searchResult={etag:"",uuids:[],total:0}),$.next(W.searchResult),W.resultEmitter.subscribe(function(be){$.next(W.searchResult)})})}},{key:"setResult",value:function(W,$,be){var z=[];$&&$.length>0&&$.forEach(function(d){z.push(d.uuid)}),this.searchResult={etag:W,uuids:z,total:be},this.resultEmitter.next(this.searchResult)}},{key:"getSubstancesSummaries",value:function(){var W=this,$=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.showDeprecated=!!$.deprecated,new _.y(function(be){null!=$.structureSearchTerm&&""!==$.structureSearchTerm?W.searchSubstanceStructures($.structureSearchTerm,$.searchTerm,$.cutoff,$.type,$.pageSize,$.facets,$.order,$.skip).subscribe(function(z){be.next(z)},function(z){be.error(z)},function(){be.complete()}):null!=$.sequenceSearchKey&&""!==$.sequenceSearchKey||null!=$.sequenceSearchTerm&&""!==$.sequenceSearchTerm?W.searchSubstanceSequences($.sequenceSearchTerm,$.sequenceSearchKey,$.searchTerm,$.cutoff,$.type,$.seqType,$.pageSize,$.facets,$.order,$.skip).subscribe(function(z){be.next(z)},function(z){be.error(z)},function(){be.complete()}):null!=$.bulkQID&&""!=$.bulkQID.toString()?W.searchSubstanceBulk($.searchTerm,$.bulkQID,$.searchOnIdentifiers,$.searchEntity,$.cutoff,$.type,$.pageSize,$.facets,$.order,$.skip).subscribe(function(z){be.next(z)},function(z){be.error(z)},function(){be.complete()}):W.searchSubstances($.searchTerm,$.pageSize,$.facets,$.order,$.skip).subscribe(function(z){be.next(z)},function(z){be.error(z)},function(){be.complete()})})}},{key:"searchSubstances",value:function(W){var $=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,be=arguments.length>2?arguments[2]:void 0,z=arguments.length>3?arguments[3]:void 0,d=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,Q=new b.n({encoder:new D}),J=this.apiBaseUrl;J+="substances/search",null!=W&&""!==W&&(Q=Q.append("q",W)),Q=(Q=Q.appendFacetParams(be,this.showDeprecated)).appendDictionary({top:$&&$.toString(),skip:d&&d.toString()}),null!=z&&""!==z&&(Q=Q.append("order",z));var te={params:Q=Q.append("fdim","10")};return this.http.get(J,te)}},{key:"searchSubstanceStructures",value:function(W,$,be){var z=this,d=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"substructure",Q=arguments.length>4&&void 0!==arguments[4]?arguments[4]:10,J=arguments.length>5?arguments[5]:void 0,te=arguments.length>6?arguments[6]:void 0,K=arguments.length>7&&void 0!==arguments[7]?arguments[7]:0,G=arguments.length>8&&void 0!==arguments[8]&&arguments[8];return new _.y(function(ce){var ve,_e=new b.n({encoder:new D}),Me=z.apiBaseUrl;ve=z.utilsService.hashCode(W,d,be),d&&("flex"===d||"exact"===d)&&(G=!0),!G&&z.searchKeys[ve]?(Me+="status(".concat(z.searchKeys[ve],")/results"),_e=(_e=_e.appendFacetParams(J,z.showDeprecated)).appendDictionary($.length>0?{top:Q.toString(),skip:K.toString(),q:$.toString()}:{top:Q.toString(),skip:K.toString()}),null!=te&&""!==te&&(_e=_e.append("order",te))):(_e=_e.append("q",W),d&&(_e=_e.append("type",d),"similarity"===d&&(_e=_e.append("cutoff",(be=be||0).toString()))),G&&($&&(_e=_e.append("qText",$)),_e=(_e=(_e=_e.append("sync",G.toString())).appendFacetParams(J,z.showDeprecated)).appendDictionary({top:Q.toString(),skip:K.toString()}),null!=te&&""!==te&&(_e=_e.append("order",te))),Me+="substances/structureSearch");var ue={params:_e};z.http.get(Me,ue).subscribe(function(lt){if(lt.results){var Xe=lt.key;z.searchKeys[ve]=Xe,z.processAsyncSearchResults($,Me,lt,ce,Xe,ue,Q,J,K)}else ce.next(lt),ce.complete()},function(lt){ce.error(lt),ce.complete()})})}},{key:"searchSubstanceSequences",value:function(W,$,be){var z=this,d=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5,Q=arguments.length>4?arguments[4]:void 0,J=arguments.length>5?arguments[5]:void 0,te=arguments.length>6&&void 0!==arguments[6]?arguments[6]:10,K=arguments.length>7?arguments[7]:void 0,G=arguments.length>8?arguments[8]:void 0,ce=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0,_e=!(arguments.length>10&&void 0!==arguments[10])||arguments[10];return new _.y(function(Me){var lt,ve=new b.n({encoder:new D}),ue=z.apiBaseUrl;lt=z.utilsService.hashCode(W,d,Q,J),$&&$.length>30||!_e&&z.searchKeys[lt]?(ue+="status(".concat(!_e&&z.searchKeys[lt]?z.searchKeys[lt]:$,")"),ve=(ve=ve.appendFacetParams(K,z.showDeprecated)).appendDictionary({top:te.toString(),skip:ce.toString()}),null!=G&&""!==G&&(ve=ve.append("order",G))):(ve=ve.appendDictionary({q:W,type:Q,cutoff:d.toString(),seqType:J}),_e&&(ve=ve.append("sync",_e.toString())),ue+="substances/sequenceSearch");var Xe={params:ve};z.http.get(ue,Xe).subscribe(function(mt){if(mt.results){var wt=mt.key;z.searchKeys[lt]=wt,z.processAsyncSearchResults(be,ue,mt,Me,wt,Xe,te,K,ce)}else Me.next(mt),Me.complete()},function(mt){Me.error(mt),Me.complete()})})}},{key:"searchSubstanceBulk",value:function(W,$,be,z,d){var Q=this,te=arguments.length>6&&void 0!==arguments[6]?arguments[6]:10,K=arguments.length>7?arguments[7]:void 0,G=arguments.length>8?arguments[8]:void 0,ce=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;return new _.y(function(_e){var ue,Me=new b.n({encoder:new D}),ve=Q.apiBaseUrl;if(ue=Q.utilsService.hashCode($,be,z),Q.searchKeys[ue])ve+="status(".concat(Q.searchKeys[ue],")/results"),Me=(Me=Me.appendFacetParams(K,Q.showDeprecated)).appendDictionary(W.length>0?{top:te.toString(),skip:ce.toString(),q:W.toString()}:{top:te.toString(),skip:ce.toString()}),null!=G&&""!==G&&(Me=Me.append("order",G));else{Me=Me.append("bulkQID",$.toString());var lt="false";!0===be&&(lt="true"),Me=(Me=Me.append("searchOnIdentifiers",lt)).append("searchEntity",z),ve+="substances/bulkSearch"}var Xe={params:Me};Q.http.get(ve,Xe).subscribe(function(mt){if(mt.results){var wt=mt.key;Q.searchKeys[ue]=wt,Q.processAsyncSearchResults(W,ve,mt,_e,wt,Xe,te,K,ce)}else Q.searchKeys&&Q.searchKeys[ue]&&(mt.statusKey=Q.searchKeys[ue]),_e.next(mt),_e.complete()},function(mt){_e.error(mt),_e.complete()})})}},{key:"processAsyncSearchResults",value:function(W,$,be,z,d,Q,J,te,K,G){var ce=this;this.getAsyncSearchResults(W,d,J,te,K,G).subscribe(function(_e){_e.statusKey=d,z.next(_e),be.finished?z.complete():ce.http.get($,Q).subscribe(function(Me){setTimeout(function(){ce.processAsyncSearchResults(W,$,Me,z,d,Q,J,te,K,G)})},function(Me){z.error(Me),z.complete()})},function(_e){z.error(_e),z.complete()})}},{key:"getAsyncSearchResults",value:function(W,$,be,z,d,Q){var J="".concat(this.apiBaseUrl,"status(").concat($,")/results"),te=new b.n({encoder:new D});return te=te.appendFacetParams(z,this.showDeprecated),Math.random().toString(36).replace("0.",""),te=(te=te.appendFacetParams({facet:{isAllMatch:!1,params:{cache:!1}}},this.showDeprecated)).appendDictionary({top:be.toString(),skip:d.toString(),view:Q||""}),null!=W&&""!==W&&(te=te.append("q",W)),this.http.get(J,{params:te})}},{key:"getQuickSubstancesSummaries",value:function(W,$,be){var z=new b.n({encoder:new D}),d=this.apiBaseUrl+"substances/";return W&&(z=z.append("q",W)),(null!=W||!0===$)&&(d+="search"),null!=be&&(z=z.appendFacetParams(be,this.showDeprecated)),this.http.get(d,{params:z})}},{key:"searchSingleFacet",value:function(W,$){return this.http.get(this.apiBaseUrl+"substances/search?facet="+W+"/"+$)}},{key:"searchSingleFacetSimpleCount",value:function(W,$){return this.http.get(this.apiBaseUrl+"substances/search?facet="+W+"/"+$+"&simpleSearchOnly=true&fdim=0&top=1&view=key")}},{key:"searchFromString",value:function(W){return this.http.get(this.apiBaseUrl+"substances/search?"+W)}},{key:"getRecordCount",value:function(){return this.http.get(this.apiBaseUrl+"substances/@count")}},{key:"getFasta",value:function(W){var $="".concat(this.configService.configData.apiBaseUrl,"export/").concat(W,".fas");return this.http.get($,{responseType:"blob"})}},{key:"getSubstanceSummary",value:function(W){var $="".concat(this.apiBaseUrl,"substances(").concat(W,")");return this.http.get($)}},{key:"getEdits",value:function(W){var $="".concat(this.apiBaseUrl,"substances(").concat(W,")/@edits");return this.http.get($,{withCredentials:!0})}},{key:"getSubstanceDetails",value:function(W,$){var be=this,z="".concat(this.apiBaseUrl,"substances(").concat(W,")"),d=new u.LE,Q={params:d=d.append("view","internal")};if($){var J="".concat(this.apiBaseUrl,"substances(").concat(W,")/@edits");return this.http.get(J,{withCredentials:!0}).pipe((0,y.w)(function(te){return te=te.filter(function(K){return K.version===$}),be.http.get(te[0].oldValue,Q)}))}return this.http.get(z,Q)}},{key:"getSubstanceNames",value:function(W){var $="".concat(this.apiBaseUrl,"substances(").concat(W,")/names");return this.http.get($)}},{key:"getSubstanceCodes",value:function(W){var $="".concat(this.apiBaseUrl,"substances(").concat(W,")/codes");return this.http.get($)}},{key:"getSubstanceRelationships",value:function(W){var $="".concat(this.apiBaseUrl,"substances(").concat(W,")/relationships");return this.http.get($)}},{key:"checkVersion",value:function(W){var $="".concat(this.apiBaseUrl,"substances(").concat(W,")/version");return this.http.get($)}},{key:"getSafeIconImgUrl",value:function(W,$){var be="".concat(this.configService.configData.apiBaseUrl,"assets/images/noimage.svg"),z=W.substanceClass;if("chemical"===z&&W.structure.id){var d=W.structure.id;be="".concat(this.configService.configData.apiBaseUrl,"img/").concat(d,".svg")}else if("polymer"===z&&W.polymer.displayStructure.id){var Q=W.polymer.displayStructure.id;be="".concat(this.configService.configData.apiBaseUrl,"img/").concat(Q,".svg")}else be="assets/images/".concat(z,".svg");return null!=$&&(be+="?size=".concat($.toString())),this.sanitizer.bypassSecurityTrustUrl(be)}},{key:"getIconFromUuid",value:function(W){var $="".concat(this.configService.configData.apiBaseUrl,"img/").concat(W,".svg");return this.sanitizer.bypassSecurityTrustUrl($)}},{key:"saveSubstance",value:function(W,$){var be="".concat(this.apiBaseUrl,"substances?view=internal"),z=W.uuid?"PUT":"POST";return $&&"import"===$&&(z="POST"),this.http.request(z,be,{body:W})}},{key:"validateSubstance",value:function(W){var $="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/@validate");return this.http.post($,W)}},{key:"getHierarchy",value:function(W){var $="".concat(this.apiBaseUrl,"substances(").concat(W,")/@hierarchy");return this.http.get($)}},{key:"approveSubstance",value:function(W){var $="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances(").concat(W,")/@approve");return this.http.get($)}},{key:"oldSiteRedirect",value:function(W,$){var be=this.baseUrl+"substance/"+$;return"edit"===W&&(be+="/edit"),be}},{key:"getSequenceByID",value:function(W,$,be){var z="".concat(this.apiBaseUrl,"substances(").concat(W,")/").concat(be,"/subunits(uuid:").concat($,")");return this.http.get(z)}},{key:"getSubstanceSequenceResults",value:function(W){var $=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.5,be=arguments.length>2?arguments[2]:void 0,z=arguments.length>3?arguments[3]:void 0,d=new b.n,Q=this.apiBaseUrl+"substances/sequenceSearch";return d=d.appendDictionary({q:W,type:be,cutoff:$.toString(),seqType:z}),this.http.post(Q,d)}},{key:"oldLinkFix",value:function(W){if(W&&W.length>10){var $=W.split("/");return"substances/"+$[$.length-1]}return W}},{key:"getPrimaryCode",value:function(W,$){var be=this,z="".concat(this.apiBaseUrl,"substances(").concat(W.refuuid,")/codes(codeSystem:")+$+")(type:PRIMARY)($0)/code",d="".concat(this.apiBaseUrl,"substances(").concat(W.refPname,")/codes(codeSystem:")+$+")(type:PRIMARY)($0)/code";return this.http.get(z).pipe((0,Y.K)(function(Q){return be.http.get(d)}))}},{key:"getPrimaryConfigCode",value:function(W){return this.getPrimaryCode(W,this.configService.configData&&this.configService.configData.primaryCode?this.configService.configData.primaryCode:"BDNUM")}},{key:"getBDNUM",value:function(W){var $=this,be="".concat(this.apiBaseUrl,"substances(").concat(W.refuuid,")/codes(codeSystem:BDNUM)(type:PRIMARY)($0)/code"),z="".concat(this.apiBaseUrl,"substances(").concat(W.refPname,")/codes(codeSystem:BDNUM)(type:PRIMARY)($0)/code");return this.http.get(be).pipe((0,Y.K)(function(d){return $.http.get(z)}))}},{key:"getSubstanceFacets",value:function(W,$,be,z,d){var Q;return $?(Q="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/search/@facets?wait=false&kind=ix.ginas.models.v1.Substance&skip=0&fdim=200&sideway=true&field=").concat(W.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat($),d&&(Q+="&q=".concat(d))):Q=null!=be?be:W._self,z&&W._self.split("&").forEach(function(te){te.indexOf("facet=")>=0&&(Q+="&"+te)}),this.http.get(Q)}},{key:"getSubstanceReferences",value:function(){var W=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,$=arguments.length>1?arguments[1]:void 0,be="".concat(this.configService.configData.apiBaseUrl,"api/v1/references/search?top=").concat(W,'&order=$lastEdited&q=root_lastEditedBy:"').concat($,'" AND NOT (root_docType:SYSTEM) AND NOT (root_docType:BDNUM)');return this.http.get(be)}},{key:"hasInxightLink",value:function(W){var $="https://drugs.ncats.io/api/v1/substances/search?q=root_approvalID:".concat(W,"&fdim=1");return this.http.jsonp($,"callback")}},{key:"getExportOptions",value:function(W,$){$||($="substances");var be="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat($,"/export/").concat(W);return this.http.get(be)}},{key:"getTags",value:function(){var W="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/search/@facets?kind=ix.ginas.models.v1.Substance&fdim=999999&sideway=true&field=GInAS+Tag");return this.http.get(W).pipe((0,q.U)(function($){return $.content.map(function(be){return be.label}).sort()}))}},{key:"getMixtureParent",value:function(W){var $="".concat(this.configService.configData.apiBaseUrl,'api/v1/substances/search?q=root_mixture_components_substance_refuuid:"').concat(W,'"');return this.http.get($)}},{key:"getConstituentParent",value:function(W){var $="".concat(this.configService.configData.apiBaseUrl,'api/v1/substances/search?q=root_specifiedSubstance_constituents_substance_refuuid:"').concat(W,'"');return this.http.get($)}},{key:"getSchema",value:function(W,$){$||($="substances"),W||(W="scrubber");var be="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat($,"/export/").concat(W,"/@schema");return this.http.get(be)}},{key:"getConfigs",value:function(W){W||(W="substances");var $="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat(W,"/export/configs");return this.http.get($)}},{key:"getConfigByID",value:function(W,$){$||($="substances");var be="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat($,"/export/config/").concat(W);return this.http.get(be)}},{key:"storeNewConfig",value:function(W,$){$||($="substances");var be="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat($,"/export/config");return this.http.post(be,W)}},{key:"deleteConfig",value:function(W,$){$||($="substances");var be="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat($,"/export/config(").concat(W,")");return this.http.delete(be)}},{key:"updateConfig",value:function(W,$,be){be||(be="substances");var z="".concat(this.configService.configData.apiBaseUrl,"api/v1/").concat(be,"/export/config(").concat(W,")");return this.http.put(z,$)}}]),le}(h.q);return I.\u0275fac=function(j){return new(j||I)(B.LFG(u.eN),B.LFG(s.E),B.LFG(k.H7),B.LFG(T.F))},I.\u0275prov=B.Yz7({token:I,factory:I.\u0275fac,providedIn:"root"}),I}()},35096:function(Ce,E,n){"use strict";n.d(E,{L:function(){return Q}});var S=n(39117),t=n(1884),e=n(56908),u=n(92938),_=n(95758),s=n(12570),h=n(86613),b=n(44770),T=n(91434),y=n(90587),Y=n(36362),q=n(1130),B=n(87317),k=n(65590),D=n(12379),N=n(68458),I=n(43365);function L(J,te){if(1&J&&(h.TgZ(0,"mat-option",25),h._uU(1),h.qZA()),2&J){var K=te.$implicit;h.Q6J("value",K),h.xp6(1),h.hij(" ",K.exporterKey?K.exporterKey:"no name"," ")}}function j(J,te){if(1&J){var K=h.EpF();h.TgZ(0,"button",20),h.NdJ("click",function(){return h.CHM(K),h.oxw().toggleShowOptions()}),h._uU(1),h.qZA()}if(2&J){var G=h.oxw();h.xp6(1),h.Oqu(G.showOptions?"Hide Preset Options":"Edit Preset Options")}}function le(J,te){if(1&J){var K=h.EpF();h.TgZ(0,"button",26),h.NdJ("click",function(){return h.CHM(K),h.oxw().undo()}),h._uU(1,"Discard Unsaved Changes"),h.qZA()}}function re(J,te){if(1&J){var K=h.EpF();h.TgZ(0,"button",27),h.NdJ("click",function(){return h.CHM(K),h.oxw().deleteConfig()}),h._UZ(1,"mat-icon",28),h._uU(2," Remove Preset"),h.qZA()}}function W(J,te){if(1&J){var K=h.EpF();h.TgZ(0,"mat-tab-group",29),h.TgZ(1,"mat-tab",30),h.TgZ(2,"sf-form",31),h.NdJ("onChange",function(_e){return h.CHM(K),h.oxw().setValue(_e.value,"expander")}),h.qZA(),h.qZA(),h.TgZ(3,"mat-tab",32),h._UZ(4,"br"),h.TgZ(5,"sf-form",31),h.NdJ("onChange",function(_e){return h.CHM(K),h.oxw().setValue(_e.value,"scrubber")}),h.qZA(),h.qZA(),h.TgZ(6,"mat-tab",33),h.TgZ(7,"sf-form",31),h.NdJ("onChange",function(_e){return h.CHM(K),h.oxw().setValue(_e.value,"exporter")}),h.qZA(),h.qZA(),h.qZA()}if(2&J){var G=h.oxw();h.xp6(2),h.Q6J("schema",G.expanderSchema)("model",G.expanderModel),h.xp6(3),h.Q6J("schema",G.scrubberSchema)("model",G.scrubberModel),h.xp6(2),h.Q6J("schema",G.exporterSchema)("model",G.exporterModel)}}function $(J,te){if(1&J&&(h.TgZ(0,"div",34),h._uU(1),h.qZA()),2&J){var K=h.oxw();h.xp6(1),h.Oqu(K.message)}}function be(J,te){if(1&J){var K=h.EpF();h.TgZ(0,"mat-form-field",35),h.TgZ(1,"input",36),h.NdJ("ngModelChange",function(_e){return h.CHM(K),h.oxw().configName=_e}),h.qZA(),h.qZA()}if(2&J){var G=h.oxw();h.xp6(1),h.Q6J("ngModel",G.configName)}}function z(J,te){if(1&J){var K=h.EpF();h.TgZ(0,"button",37),h.NdJ("click",function(){return h.CHM(K),h.oxw().saveConfig()}),h._uU(1,"Save New Config"),h.qZA()}if(2&J){var G=h.oxw();h.Q6J("disabled",!G.showOptions)}}function d(J,te){if(1&J){var K=h.EpF();h.TgZ(0,"button",37),h.NdJ("click",function(){return h.CHM(K),h.oxw().updateConfig()}),h._uU(1,"Save Changes "),h.qZA()}if(2&J){var G=h.oxw();h.Q6J("disabled",!G.loadedConfig||"PUBLIC_DATA_ONLY"===G.loadedConfig.exporterKey||"ALL_DATA"===G.loadedConfig.exporterKey)}}var Q=function(){var J=function(){function te(K,G,ce){(0,S.Z)(this,te),this.dialogRef=K,this.substanceService=G,this.data=ce,this.showOptions=!1,this.scrubberModel={},this.expanderModel={},this.exporterModel={},this.options=[],this.unsaved=!1,this.entity="substances",this.scrubberSchema={},ce.entity&&(this.entity=ce.entity)}return(0,t.Z)(te,[{key:"ngOnInit",value:function(){var G=this;this.sortConfigs(),this.scrubberModel={},this.expanderModel={},this.substanceService.getSchema("scrubber",this.entity).subscribe(function(_e){Object.keys(_e.properties).forEach(function(Me){_e.properties[Me]&&_e.properties[Me].visibleIf&&Object.keys(_e.properties[Me].visibleIf).forEach(function(ve){_e.properties[ve]&&(_e.properties[ve].children=1)})}),G.scrubberSchema=_e}),this.substanceService.getSchema("expander",this.entity).subscribe(function(_e){Object.keys(_e.properties).forEach(function(Me){_e.properties[Me]&&_e.properties[Me].visibleIf&&Object.keys(_e.properties[Me].visibleIf).forEach(function(ve){_e.properties[ve]&&(_e.properties[ve].children=1)})}),G.expanderSchema=_e}),this.substanceService.getExportOptions(this.data.extension,this.entity).subscribe(function(_e){Object.keys(_e.properties).forEach(function(Me){_e.properties[Me]&&_e.properties[Me].visibleIf&&Object.keys(_e.properties[Me].visibleIf).forEach(function(ve){_e.properties[ve]&&(_e.properties[ve].children=1)})}),G.exporterSchema=_e});var ce=new Date;this.name=this.data.type&&null!==this.data.type&&""!==this.data.type?this.data.type+"-"+e(ce).format("DD-MM-YYYY_H-mm-ss"):"export-"+e(ce).format("DD-MM-YYYY_H-mm-ss"),this.extension=this.data.extension}},{key:"setValue",value:function(G,ce){ce&&"expander"===ce?(this.privateExpanderModel=G,this.unsaved=this.unsavedChangeCheck(this.loadedConfig.expanderSettings,this.privateExpanderModel)):"scrubber"===ce?(this.privateScrubberModel=G,this.unsaved=this.unsavedChangeCheck(this.loadedConfig.scrubberSettings,this.privateScrubberModel)):(this.privateExporterModel=G,this.unsaved=this.unsavedChangeCheck(this.loadedConfig.exporterSettings,this.privateExporterModel))}},{key:"save",value:function(){var G={name:this.name,id:this.loadedConfig?this.loadedConfig.configurationId:null};this.unsavedChanges()&&this.showOptions?confirm("Warning: Unsaved changes to the configuration will not be applied. Continue?")&&this.dialogRef.close(G):this.dialogRef.close(G)}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"toggleShowOptions",value:function(){this.showOptions&&this.unsavedChanges()?confirm("Warning: Unsaved changes to the configuration will not be applied. Continue?")&&(this.showOptions=!this.showOptions):this.showOptions=!this.showOptions}},{key:"sortConfigs",value:function(){var G=this;this.substanceService.getConfigs(this.entity).subscribe(function(ce){G.options=ce,G.privateOptions=ce.sort(function(Me,ve){return"PUBLIC_DATA_ONLY"===Me.exporterKey?-1:1});var _e=!1;G.privateOptions.forEach(function(Me){"PUBLIC_DATA_ONLY"===Me.exporterKey&&(_e=!0,G.switchConfig(Me,!0),G.loadedConfig=Me)}),_e||G.privateOptions.forEach(function(Me){"ALL_DATA"===Me.exporterKey&&(_e=!0,G.switchConfig(Me,!0),G.loadedConfig=Me)})})}},{key:"saveConfig",value:function(){var G=this;this.message=null;var ce=!1,_e={exporterKey:this.configName,scrubberSettings:this.privateScrubberModel,expanderSettings:this.privateExpanderModel,exporterSettings:this.privateExporterModel};this.privateOptions.forEach(function(Me){Me.exporterKey===G.configName&&(ce=!0)}),ce?alert('Cannot Save: config name "'+this.configName+"' already exists"):this.substanceService.storeNewConfig(_e,this.entity).subscribe(function(Me){Me.Result&&(G.message=Me.Result),G.options.push(_e),G.loadedConfig=_e,Me["Newly created configuration"]&&(G.message="Newly created configuration: "+Me["Newly created configuration"],G.loadedConfig.configurationId=Me["Newly created configuration"])})}},{key:"updateConfig",value:function(){var G=this;this.message=null,this.loadedConfig.scrubberSettings=this.privateScrubberModel,this.loadedConfig.expanderSettings=this.privateExpanderModel,this.loadedConfig.exporterSettings=this.privateExporterModel,this.substanceService.updateConfig(this.loadedConfig.configurationId,this.loadedConfig,this.entity).subscribe(function(ce){ce.Result&&(G.message=ce.Result)})}},{key:"deleteConfig",value:function(G){var ce=this;this.message=null,G||(G=this.loadedConfig.configurationId),confirm("Are you sure you want to delete this configuration?")&&this.substanceService.deleteConfig(G,this.entity).subscribe(function(_e){ce.substanceService.getConfigs(ce.entity).subscribe(function(Me){ce.options=Me}),ce.loadedConfig=null,_e.Result&&(ce.message=_e.Result)})}},{key:"unsavedChangeCheck",value:function(G,ce){var _e=!1;if(!u.isEqual(G,ce)&&(G&&0!==Object.keys(G).length||ce&&0!==Object.keys(ce).length)){var Me=G?JSON.parse(JSON.stringify(G)):{},ve=ce?JSON.parse(JSON.stringify(ce)):{};Object.keys(Me).forEach(function(ue){(!Me[ue]||0===Me[ue].length)&&delete Me[ue]}),Object.keys(ve).forEach(function(ue){(!ve[ue]||0===ve[ue].length)&&delete ve[ue]}),u.isEqual(Me,ve)||(_e=!0)}return _e}},{key:"unsavedChanges",value:function(){return!!(this.unsavedChangeCheck(this.loadedConfig.scrubberSettings,this.privateScrubberModel)||this.unsavedChangeCheck(this.loadedConfig.exporterSettings,this.privateExporterModel)||this.unsavedChangeCheck(this.loadedConfig.expanderSettings,this.privateExpanderModel))}},{key:"undo",value:function(){this.message=null,this.switchConfig(this.loadedConfig),this.message="Reloaded saved settings for configuration '"+this.loadedConfig.exporterKey+"'"}},{key:"switchConfig",value:function(G,ce){var _e=this;this.message="";var Me={};this.unsaved=!1,this.privateOptions.forEach(function(ve){ve.configurationId===G.configurationId&&(_e.expanderModel=ve.expanderSettings?JSON.parse(JSON.stringify(ve.expanderSettings)):{},_e.scrubberModel=ve.scrubberSettings?JSON.parse(JSON.stringify(ve.scrubberSettings)):{},_e.exporterModel=ve.exporterSettings?JSON.parse(JSON.stringify(ve.exporterSettings)):{},_e.privateExpanderModel=ve.expanderSettings?JSON.parse(JSON.stringify(ve.expanderSettings)):{},_e.privateScrubberModel=ve.scrubberSettings?JSON.parse(JSON.stringify(ve.scrubberSettings)):{},_e.privateExporterModel=ve.exporterSettings?JSON.parse(JSON.stringify(ve.exporterSettings)):{},Me=ve.scrubberSettings,_e.temp=ve.scrubberSettings)}),this.configName=G.exporterKey,setTimeout(function(){_e.scrubberModel=Me},100),ce||(this.message="Export Configuration "+this.configName+" Loaded")}}]),te}();return J.\u0275fac=function(K){return new(K||J)(h.Y36(_.so),h.Y36(s.d),h.Y36(_.WI))},J.\u0275cmp=h.Xpm({type:J,selectors:[["app-export-dialog"]],decls:34,vars:14,consts:[["mat-dialog-header","",1,"top-label"],[1,"form-row"],[1,"preset"],[1,"config-label"],["name","fileType","name","term",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[1,"top-button-container"],["mat-flat-button","","color","primary",3,"click",4,"ngIf"],["mat-flat-button","","color","primary","class","top-button",3,"click",4,"ngIf"],["class","top-button","mat-flat-button","","color","warn",3,"click",4,"ngIf"],["selectedIndex","1","class","tab-group",4,"ngIf"],[1,"form-row","top-margin"],[1,"padding","right-margin"],[1,"dialog-row"],[1,"name-form"],["matInput","","type","text","placeholder","Filename",1,"name-field",3,"ngModel","ngModelChange"],[1,"format"],["align","end"],[1,"message-container"],["class","message",4,"ngIf"],["mat-flat-button","","color","primary",3,"click"],[1,"middle-fill"],["class","right-margin",4,"ngIf"],["mat-flat-button","","color","primary","class","right-margin",3,"disabled","click",4,"ngIf"],["mat-flat-button","","color","primary",3,"disabled","click"],[3,"value"],["mat-flat-button","","color","primary",1,"top-button",3,"click"],["mat-flat-button","","color","warn",1,"top-button",3,"click"],["svgIcon","delete_forever"],["selectedIndex","1",1,"tab-group"],["label","Expander"],[1,"top-margin",3,"schema","model","onChange"],["label","Scrubber",2,"margin-bottom","10px"],["label","Exporter Settings"],[1,"message"],[1,"right-margin"],["matInput","","placeholder","Config Name","name","Config Name",1,"right-margin",3,"ngModel","ngModelChange"],["mat-flat-button","","color","primary",1,"right-margin",3,"disabled","click"]],template:function(K,G){1&K&&(h.TgZ(0,"div",0),h.TgZ(1,"div",1),h.TgZ(2,"mat-form-field",2),h.TgZ(3,"mat-label",3),h._uU(4," Use Export Preset Options: "),h.qZA(),h.TgZ(5,"mat-select",4),h.NdJ("ngModelChange",function(_e){return G.loadedConfig=_e})("ngModelChange",function(_e){return G.switchConfig(_e)}),h.YNc(6,L,2,2,"mat-option",5),h.qZA(),h.qZA(),h.TgZ(7,"div",6),h.YNc(8,j,2,1,"button",7),h.YNc(9,le,2,0,"button",8),h._uU(10," \xa0 "),h.YNc(11,re,3,0,"button",9),h.qZA(),h.qZA(),h.qZA(),h.TgZ(12,"mat-dialog-content"),h.YNc(13,W,8,6,"mat-tab-group",10),h.TgZ(14,"div",11),h.TgZ(15,"div",12),h._uU(16," Please enter a file name: "),h.qZA(),h.TgZ(17,"div",13),h.TgZ(18,"div"),h.TgZ(19,"mat-form-field",14),h.TgZ(20,"input",15),h.NdJ("ngModelChange",function(_e){return G.name=_e}),h.qZA(),h.qZA(),h.qZA(),h.TgZ(21,"div",16),h._uU(22),h.qZA(),h.qZA(),h.qZA(),h.qZA(),h.TgZ(23,"mat-dialog-actions",17),h.TgZ(24,"div",18),h.YNc(25,$,2,1,"div",19),h.qZA(),h.TgZ(26,"button",20),h.NdJ("click",function(){return G.cancel()}),h._uU(27,"Cancel"),h.qZA(),h._UZ(28,"span",21),h.YNc(29,be,2,1,"mat-form-field",22),h.YNc(30,z,2,1,"button",23),h.YNc(31,d,2,1,"button",23),h.TgZ(32,"button",24),h.NdJ("click",function(){return G.save()}),h._uU(33),h.qZA(),h.qZA()),2&K&&(h.xp6(5),h.Q6J("ngModel",G.loadedConfig),h.xp6(1),h.Q6J("ngForOf",G.options),h.xp6(2),h.Q6J("ngIf",!G.data.hideOptionButtons),h.xp6(1),h.Q6J("ngIf",G.unsaved),h.xp6(2),h.Q6J("ngIf",!G.data.hideOptionButtons&&G.loadedConfig&&"ALL_DATA"!==G.loadedConfig.exporterKey&&"PUBLIC_DATA_ONLY"!==G.loadedConfig.exporterKey),h.xp6(2),h.Q6J("ngIf",G.showOptions),h.xp6(7),h.Q6J("ngModel",G.name),h.xp6(2),h.hij(".",G.extension,""),h.xp6(3),h.Q6J("ngIf",G.message),h.xp6(4),h.Q6J("ngIf",G.showOptions),h.xp6(1),h.Q6J("ngIf",G.showOptions),h.xp6(1),h.Q6J("ngIf",G.showOptions),h.xp6(1),h.Q6J("disabled",G.unsaved),h.xp6(1),h.hij("Export",G.loadedConfig?"":" (no config)",""))},directives:[b.KE,b.hX,T.gD,y.JJ,y.On,Y.sg,q.ey,Y.O5,B.lW,k.Hw,_.xY,D.SP,D.uX,N.Ur,I.Nt,y.Fj,_.H8],styles:[".dialog-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.config-label[_ngcontent-%COMP%] .mat-focused[_ngcontent-%COMP%]{margin-top:-2px}.name-form[_ngcontent-%COMP%]{width:400px}.preset[_ngcontent-%COMP%]{width:250px}.top-button[_ngcontent-%COMP%]{margin-left:5px}.top-button-container[_ngcontent-%COMP%]{margin-top:10px;margin-left:50px}.format[_ngcontent-%COMP%]{margin-left:10px}.padding[_ngcontent-%COMP%]{margin-bottom:15px;padding-bottom:5px;padding-top:12px}.mat-warn[_ngcontent-%COMP%]{color:var(--regular-red-color);background-color:#fff;border:1px solid var(--regular-red-color)} sf-string-widget>div{margin-left:50px} .has-success> sf-string-widget{margin-left:20px} sf-string-widget> .control-label{min-width:250px;display:inline-block}.top-label[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;width:100%}.message[_ngcontent-%COMP%]{font-weight:500;margin:10px;font-size:18px}.message-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center}.form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.top-margin[_ngcontent-%COMP%]{margin-top:15px}.right-margin[_ngcontent-%COMP%]{margin-right:10px}"]}),J}()},2711:function(Ce,E,n){"use strict";n.d(E,{v:function(){return c}});var S=n(1884),t=n(39117),e=n(86613),c=function(){var u=(0,S.Z)(function o(){(0,t.Z)(this,o)});return u.\u0275fac=function(_){return new(_||u)},u.\u0275mod=e.oAB({type:u}),u.\u0275inj=e.cJS({imports:[[]]}),u}()},89633:function(Ce,E,n){"use strict";n.d(E,{q:function(){return o}});var S=n(39117),t=n(1884),e=n(18291),c=n(50635),u=n(86613),o=function(){var _=function(){function s(h){(0,S.Z)(this,s),this.cvService=h}return(0,t.Z)(s,[{key:"transform",value:function(b,T){return this.cvService.getDomainVocabulary("CODE_SYSTEM").pipe((0,c.U)(function(y){var Y;return(Y=y.CODE_SYSTEM.dictionary)[b]?Y[b].display:b}))}}]),s}();return _.\u0275fac=function(h){return new(h||_)(u.Y36(e.I,16))},_.\u0275pipe=u.Yjl({name:"codeSystemDisplay",type:_,pure:!0}),_}()},78573:function(Ce,E,n){"use strict";n.d(E,{e:function(){return u}});var S=n(39117),t=n(1884),e={"Code UUID":{fieldName:"Uuid",fieldPath:"/codes/?/uuid",finalField:"uuid",lucenePath:"root_codes_uuid",CVDomain:"",displayName:"Code UUID",dataType:"string",luceneQueryable:!1},"Mixture Component Substance UUID":{fieldName:"Uuid",fieldPath:"/mixture/components/?/substance/uuid",finalField:"uuid",lucenePath:"root_mixture_components_substance_uuid",CVDomain:"",displayName:"Mixture Component Substance UUID",dataType:"string",luceneQueryable:!1},"Mixture Component UUID":{fieldName:"Uuid",fieldPath:"/mixture/components/?/uuid",finalField:"uuid",lucenePath:"root_mixture_components_uuid",CVDomain:"",displayName:"Mixture Component UUID",dataType:"string",luceneQueryable:!1},"Mixture Parent Substance UUID":{fieldName:"Uuid",fieldPath:"/mixture/parentSubstance/uuid",finalField:"uuid",lucenePath:"root_mixture_parentSubstance_uuid",CVDomain:"",displayName:"Mixture Parent Substance UUID",dataType:"string",luceneQueryable:!1},"Mixture UUID":{fieldName:"Uuid",fieldPath:"/mixture/uuid",finalField:"uuid",lucenePath:"root_mixture_uuid",CVDomain:"",displayName:"Mixture UUID",dataType:"string",luceneQueryable:!1},"Agent Substance UUID":{fieldName:"Uuid",fieldPath:"/modifications/agentModifications/?/agentSubstance/uuid",finalField:"uuid",lucenePath:"root_modifications_agentModifications_agentSubstance_uuid",CVDomain:"",displayName:"Agent Substance UUID",dataType:"string",luceneQueryable:!1},"Agent Modification Amount UUID":{fieldName:"Uuid",fieldPath:"/modifications/agentModifications/?/amount/uuid",finalField:"uuid",lucenePath:"root_modifications_agentModifications_amount_uuid",CVDomain:"",displayName:"Agent Modification Amount UUID",dataType:"string",luceneQueryable:!1},"Agent Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/agentModifications/?/uuid",finalField:"uuid",lucenePath:"root_modifications_agentModifications_uuid",CVDomain:"",displayName:"Agent Modification UUID",dataType:"string",luceneQueryable:!1},"Physical Modification Amount UUID":{fieldName:"Uuid",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/uuid",finalField:"uuid",lucenePath:"root_modifications_physicalModifications_parameters_amount_uuid",CVDomain:"",displayName:"Physical Modification Amount UUID",dataType:"string",luceneQueryable:!1},"Physical Modification Parameter UUID":{fieldName:"Uuid",fieldPath:"/modifications/physicalModifications/?/parameters/?/uuid",finalField:"uuid",lucenePath:"root_modifications_physicalModifications_parameters_uuid",CVDomain:"",displayName:"Physical Modification Parameter UUID",dataType:"string",luceneQueryable:!1},"Physical Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/physicalModifications/?/uuid",finalField:"uuid",lucenePath:"root_modifications_physicalModifications_uuid",CVDomain:"",displayName:"Physical Modification UUID",dataType:"string",luceneQueryable:!1},"Structural Modification Extent Amount UUID":{fieldName:"Uuid",fieldPath:"/modifications/structuralModifications/?/extentAmount/uuid",finalField:"uuid",lucenePath:"root_modifications_structuralModifications_extentAmount_uuid",CVDomain:"",displayName:"Structural Modification Extent Amount UUID",dataType:"string",luceneQueryable:!1},"Molecular Fragment UUID":{fieldName:"Uuid",fieldPath:"/modifications/structuralModifications/?/molecularFragment/uuid",finalField:"uuid",lucenePath:"root_modifications_structuralModifications_molecularFragment_uuid",CVDomain:"",displayName:"Molecular Fragment UUID",dataType:"string",luceneQueryable:!1},"Structural Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/structuralModifications/?/uuid",finalField:"uuid",lucenePath:"root_modifications_structuralModifications_uuid",CVDomain:"",displayName:"Structural Modification UUID",dataType:"string",luceneQueryable:!1},"Modification UUID":{fieldName:"Uuid",fieldPath:"/modifications/uuid",finalField:"uuid",lucenePath:"root_modifications_uuid",CVDomain:"",displayName:"Modification UUID",dataType:"string",luceneQueryable:!1},"Count Amount Average":{fieldName:"Average",fieldPath:"/moieties/?/countAmount/average",finalField:"average",lucenePath:"root_moieties_countAmount_average",CVDomain:"",displayName:"Count Amount Average",dataType:"number",luceneQueryable:!1},"Count Amount Created":{fieldName:"Created",fieldPath:"/moieties/?/countAmount/created",finalField:"created",lucenePath:"root_moieties_countAmount_created",CVDomain:"",displayName:"Count Amount Created",dataType:"number",luceneQueryable:!1},"Count Amount Created By":{fieldName:"Created By",fieldPath:"/moieties/?/countAmount/createdBy",finalField:"createdBy",lucenePath:"root_moieties_countAmount_createdBy",CVDomain:"",displayName:"Count Amount Created By",dataType:"string",luceneQueryable:!1},"Count Amount High":{fieldName:"High",fieldPath:"/moieties/?/countAmount/high",finalField:"high",lucenePath:"root_moieties_countAmount_high",CVDomain:"",displayName:"Count Amount High",dataType:"number",luceneQueryable:!1},"Count Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/moieties/?/countAmount/lastEdited",finalField:"lastEdited",lucenePath:"root_moieties_countAmount_lastEdited",CVDomain:"",displayName:"Count Amount Last Edited",dataType:"number",luceneQueryable:!1},"Count Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/moieties/?/countAmount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_moieties_countAmount_lastEditedBy",CVDomain:"",displayName:"Count Amount Last Edited By",dataType:"string",luceneQueryable:!1},"Count Amount Low":{fieldName:"Low",fieldPath:"/moieties/?/countAmount/low",finalField:"low",lucenePath:"root_moieties_countAmount_low",CVDomain:"",displayName:"Count Amount Low",dataType:"number",luceneQueryable:!1},"Count Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/moieties/?/countAmount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_moieties_countAmount_nonNumericValue",CVDomain:"",displayName:"Count Amount Non-Numeric Value",dataType:"string",luceneQueryable:!1},"Count Amount Type":{fieldName:"Type",fieldPath:"/moieties/?/countAmount/type",finalField:"type",lucenePath:"root_moieties_countAmount_type",CVDomain:"AMOUNT_TYPE",displayName:"Count Amount Type",dataType:"string",luceneQueryable:!1},"Count Amount Units":{fieldName:"Units",fieldPath:"/moieties/?/countAmount/units",finalField:"units",lucenePath:"root_moieties_countAmount_units",CVDomain:"AMOUNT_UNIT",displayName:"Count Amount Units",dataType:"string",luceneQueryable:!1},"Count Amount UUID":{fieldName:"Uuid",fieldPath:"/moieties/?/countAmount/uuid",finalField:"uuid",lucenePath:"root_moieties_countAmount_uuid",CVDomain:"",displayName:"Count Amount UUID",dataType:"string",luceneQueryable:!1},"Moiety UUID":{fieldName:"Uuid",fieldPath:"/moieties/?/uuid",finalField:"uuid",lucenePath:"root_moieties_uuid",CVDomain:"",displayName:"Moiety UUID",dataType:"string",luceneQueryable:!1},"Naming Organization UUID":{fieldName:"Uuid",fieldPath:"/names/?/nameOrgs/?/uuid",finalField:"uuid",lucenePath:"root_names_nameOrgs_uuid",CVDomain:"",displayName:"Naming Organization UUID",dataType:"string",luceneQueryable:!1},"Name UUID":{fieldName:"Uuid",fieldPath:"/names/?/uuid",finalField:"uuid",lucenePath:"root_names_uuid",CVDomain:"",displayName:"Name UUID",dataType:"string",luceneQueryable:!1},"Polymer Classification UUID":{fieldName:"Uuid",fieldPath:"/notes/?/uuid",finalField:"uuid",lucenePath:"root_notes_uuid",CVDomain:"",displayName:"Polymer Classification UUID",dataType:"string",luceneQueryable:!1},"Linkage Created":{fieldName:"Created",fieldPath:"/nucleicAcid/linkages/?/created",finalField:"created",lucenePath:"root_nucleicAcid_linkages_created",CVDomain:"",displayName:"Linkage Created",dataType:"number",luceneQueryable:!1},"Linkage Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/linkages/?/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_linkages_createdBy",CVDomain:"",displayName:"Linkage Created By",dataType:"string",luceneQueryable:!1},"Linkage Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/linkages/?/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_linkages_lastEdited",CVDomain:"",displayName:"Linkage Last Edited",dataType:"number",luceneQueryable:!1},"Linkage Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/linkages/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_linkages_lastEditedBy",CVDomain:"",displayName:"Linkage Last Edited By",dataType:"string",luceneQueryable:!1},"Linkage Linkage":{fieldName:"Linkage",fieldPath:"/nucleicAcid/linkages/?/linkage",finalField:"linkage",lucenePath:"root_nucleicAcid_linkages_linkage",CVDomain:"NUCLEIC_ACID_LINKAGE",displayName:"Linkage Linkage",dataType:"string",luceneQueryable:!1},"Linkage UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/linkages/?/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_linkages_uuid",CVDomain:"",displayName:"Linkage UUID",dataType:"string",luceneQueryable:!1},"Nucleic Acid Sub Type":{fieldName:"Nucleic Acid Sub Type",fieldPath:"/nucleicAcid/nucleicAcidSubType",finalField:"nucleicAcidSubType",lucenePath:"root_nucleicAcid_nucleicAcidSubType",CVDomain:"NUCLEIC_ACID_SUBTYPE",displayName:"Nucleic Acid Sub Type",dataType:"string",luceneQueryable:!1},"Nucleic Acid Type":{fieldName:"Nucleic Acid Type",fieldPath:"/nucleicAcid/nucleicAcidType",finalField:"nucleicAcidType",lucenePath:"root_nucleicAcid_nucleicAcidType",CVDomain:"NUCLEIC_ACID_TYPE",displayName:"Nucleic Acid Type",dataType:"string",luceneQueryable:!1},"Nucleic Acid Sequence Origin":{fieldName:"Sequence Origin",fieldPath:"/nucleicAcid/sequenceOrigin",finalField:"sequenceOrigin",lucenePath:"root_nucleicAcid_sequenceOrigin",CVDomain:"NUCLEIC_ACID_SEQUENCE_ORIGIN",displayName:"Nucleic Acid Sequence Origin",dataType:"string",luceneQueryable:!1},"Nucleic Acid Sequence Type":{fieldName:"Sequence Type",fieldPath:"/nucleicAcid/sequenceType",finalField:"sequenceType",lucenePath:"root_nucleicAcid_sequenceType",CVDomain:"SEQUENCE_TYPE",displayName:"Nucleic Acid Sequence Type",dataType:"string",luceneQueryable:!1},"Nucleic Acid Subunit UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/subunits/?/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_subunits_uuid",CVDomain:"",displayName:"Nucleic Acid Subunit UUID",dataType:"string",luceneQueryable:!1},"Sugar Created":{fieldName:"Created",fieldPath:"/nucleicAcid/sugars/?/created",finalField:"created",lucenePath:"root_nucleicAcid_sugars_created",CVDomain:"",displayName:"Sugar Created",dataType:"number",luceneQueryable:!1},"Sugar Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/sugars/?/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_sugars_createdBy",CVDomain:"",displayName:"Sugar Created By",dataType:"string",luceneQueryable:!1},"Sugar Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/sugars/?/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_sugars_lastEdited",CVDomain:"",displayName:"Sugar Last Edited",dataType:"number",luceneQueryable:!1},"Sugar Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/sugars/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_sugars_lastEditedBy",CVDomain:"",displayName:"Sugar Last Edited By",dataType:"string",luceneQueryable:!1},"Sugar Sugar":{fieldName:"Sugar",fieldPath:"/nucleicAcid/sugars/?/sugar",finalField:"sugar",lucenePath:"root_nucleicAcid_sugars_sugar",CVDomain:"",displayName:"Sugar Sugar",dataType:"string",luceneQueryable:!1},"Sugar UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/sugars/?/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_sugars_uuid",CVDomain:"",displayName:"Sugar UUID",dataType:"string",luceneQueryable:!1},"Nucleic Acid UUID":{fieldName:"Uuid",fieldPath:"/nucleicAcid/uuid",finalField:"uuid",lucenePath:"root_nucleicAcid_uuid",CVDomain:"",displayName:"Nucleic Acid UUID",dataType:"string",luceneQueryable:!1},"Polymer Parent Substance UUID":{fieldName:"Uuid",fieldPath:"/polymer/classification/parentSubstance/uuid",finalField:"uuid",lucenePath:"root_polymer_classification_parentSubstance_uuid",CVDomain:"",displayName:"Polymer Parent Substance UUID",dataType:"string",luceneQueryable:!1},"Display Structure UUID":{fieldName:"Uuid",fieldPath:"/polymer/classification/uuid",finalField:"uuid",lucenePath:"root_polymer_classification_uuid",CVDomain:"",displayName:"Display Structure UUID",dataType:"string",luceneQueryable:!1},"Monomer Amount UUID":{fieldName:"Uuid",fieldPath:"/polymer/monomers/?/amount/uuid",finalField:"uuid",lucenePath:"root_polymer_monomers_amount_uuid",CVDomain:"",displayName:"Monomer Amount UUID",dataType:"string",luceneQueryable:!1},"Monomer Substance UUID":{fieldName:"Uuid",fieldPath:"/polymer/monomers/?/monomerSubstance/uuid",finalField:"uuid",lucenePath:"root_polymer_monomers_monomerSubstance_uuid",CVDomain:"",displayName:"Monomer Substance UUID",dataType:"string",luceneQueryable:!1},"Monomer UUID":{fieldName:"Uuid",fieldPath:"/polymer/monomers/?/uuid",finalField:"uuid",lucenePath:"root_polymer_monomers_uuid",CVDomain:"",displayName:"Monomer UUID",dataType:"string",luceneQueryable:!1},"SRU Amount UUID":{fieldName:"Uuid",fieldPath:"/polymer/structuralUnits/?/amount/uuid",finalField:"uuid",lucenePath:"root_polymer_structuralUnits_amount_uuid",CVDomain:"",displayName:"SRU Amount UUID",dataType:"string",luceneQueryable:!1},"Polymer UUID":{fieldName:"Uuid",fieldPath:"/polymer/uuid",finalField:"uuid",lucenePath:"root_polymer_uuid",CVDomain:"",displayName:"Polymer UUID",dataType:"string",luceneQueryable:!1},"Parameter Created":{fieldName:"Created",fieldPath:"/properties/?/parameters/?/created",finalField:"created",lucenePath:"root_properties_parameters_created",CVDomain:"",displayName:"Parameter Created",dataType:"number",luceneQueryable:!1},"Parameter Created By":{fieldName:"Created By",fieldPath:"/properties/?/parameters/?/createdBy",finalField:"createdBy",lucenePath:"root_properties_parameters_createdBy",CVDomain:"",displayName:"Parameter Created By",dataType:"string",luceneQueryable:!1},"Parameter Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/parameters/?/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_parameters_lastEdited",CVDomain:"",displayName:"Parameter Last Edited",dataType:"number",luceneQueryable:!1},"Parameter Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/parameters/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_parameters_lastEditedBy",CVDomain:"",displayName:"Parameter Last Edited By",dataType:"string",luceneQueryable:!1},"Parameter Type":{fieldName:"Type",fieldPath:"/properties/?/parameters/?/type",finalField:"type",lucenePath:"root_properties_parameters_type",CVDomain:"",displayName:"Parameter Type",dataType:"string",luceneQueryable:!1},"Parameter UUID":{fieldName:"Uuid",fieldPath:"/properties/?/parameters/?/uuid",finalField:"uuid",lucenePath:"root_properties_parameters_uuid",CVDomain:"",displayName:"Parameter UUID",dataType:"string",luceneQueryable:!1},"Parameter Value Average":{fieldName:"Average",fieldPath:"/properties/?/parameters/?/value/average",finalField:"average",lucenePath:"root_properties_parameters_value_average",CVDomain:"",displayName:"Parameter Value Average",dataType:"number",luceneQueryable:!1},"Parameter Value Created":{fieldName:"Created",fieldPath:"/properties/?/parameters/?/value/created",finalField:"created",lucenePath:"root_properties_parameters_value_created",CVDomain:"",displayName:"Parameter Value Created",dataType:"number",luceneQueryable:!1},"Parameter Value Created By":{fieldName:"Created By",fieldPath:"/properties/?/parameters/?/value/createdBy",finalField:"createdBy",lucenePath:"root_properties_parameters_value_createdBy",CVDomain:"",displayName:"Parameter Value Created By",dataType:"string",luceneQueryable:!1},"Parameter Value High":{fieldName:"High",fieldPath:"/properties/?/parameters/?/value/high",finalField:"high",lucenePath:"root_properties_parameters_value_high",CVDomain:"",displayName:"Parameter Value High",dataType:"number",luceneQueryable:!1},"Parameter Value Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/parameters/?/value/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_parameters_value_lastEdited",CVDomain:"",displayName:"Parameter Value Last Edited",dataType:"number",luceneQueryable:!1},"Parameter Value Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/parameters/?/value/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_parameters_value_lastEditedBy",CVDomain:"",displayName:"Parameter Value Last Edited By",dataType:"string",luceneQueryable:!1},"Parameter Value Low":{fieldName:"Low",fieldPath:"/properties/?/parameters/?/value/low",finalField:"low",lucenePath:"root_properties_parameters_value_low",CVDomain:"",displayName:"Parameter Value Low",dataType:"number",luceneQueryable:!1},"Parameter Value Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/properties/?/parameters/?/value/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_properties_parameters_value_nonNumericValue",CVDomain:"",displayName:"Parameter Value Non-Numeric Value",dataType:"string",luceneQueryable:!1},"Parameter Value Type":{fieldName:"Type",fieldPath:"/properties/?/parameters/?/value/type",finalField:"type",lucenePath:"root_properties_parameters_value_type",CVDomain:"AMOUNT_TYPE",displayName:"Parameter Value Type",dataType:"string",luceneQueryable:!1},"Parameter Value Units":{fieldName:"Units",fieldPath:"/properties/?/parameters/?/value/units",finalField:"units",lucenePath:"root_properties_parameters_value_units",CVDomain:"AMOUNT_UNIT",displayName:"Parameter Value Units",dataType:"string",luceneQueryable:!1},"Parameter Value UUID":{fieldName:"Uuid",fieldPath:"/properties/?/parameters/?/value/uuid",finalField:"uuid",lucenePath:"root_properties_parameters_value_uuid",CVDomain:"",displayName:"Parameter Value UUID",dataType:"string",luceneQueryable:!1},"Property Type":{fieldName:"Value type",fieldPath:"/properties/?/type",finalField:"type",lucenePath:"root_properties_type",CVDomain:"",displayName:"Property Type",dataType:"string",luceneQueryable:!1},"Property UUID":{fieldName:"Uuid",fieldPath:"/properties/?/uuid",finalField:"uuid",lucenePath:"root_properties_uuid",CVDomain:"",displayName:"Property UUID",dataType:"string",luceneQueryable:!1},"Value Average":{fieldName:"Average",fieldPath:"/properties/?/value/average",finalField:"average",lucenePath:"root_properties_value_average",CVDomain:"",displayName:"Value Average",dataType:"number",luceneQueryable:!1},"Value Created":{fieldName:"Created",fieldPath:"/properties/?/value/created",finalField:"created",lucenePath:"root_properties_value_created",CVDomain:"",displayName:"Value Created",dataType:"number",luceneQueryable:!1},"Value Created By":{fieldName:"Created By",fieldPath:"/properties/?/value/createdBy",finalField:"createdBy",lucenePath:"root_properties_value_createdBy",CVDomain:"",displayName:"Value Created By",dataType:"string",luceneQueryable:!1},"Value High":{fieldName:"High",fieldPath:"/properties/?/value/high",finalField:"high",lucenePath:"root_properties_value_high",CVDomain:"",displayName:"Value High",dataType:"number",luceneQueryable:!1},"Value High Limit":{fieldName:"High Limit",fieldPath:"/properties/?/value/highLimit",finalField:"highLimit",lucenePath:"root_properties_value_highLimit",CVDomain:"",displayName:"Value High Limit",dataType:"number",luceneQueryable:!1},"Value Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/value/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_value_lastEdited",CVDomain:"",displayName:"Value Last Edited",dataType:"number",luceneQueryable:!1},"Value Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/value/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_value_lastEditedBy",CVDomain:"",displayName:"Value Last Edited By",dataType:"string",luceneQueryable:!1},"Value Low":{fieldName:"Low",fieldPath:"/properties/?/value/low",finalField:"low",lucenePath:"root_properties_value_low",CVDomain:"",displayName:"Value Low",dataType:"number",luceneQueryable:!1},"Value Low Limit":{fieldName:"Low Limit",fieldPath:"/properties/?/value/lowLimit",finalField:"lowLimit",lucenePath:"root_properties_value_lowLimit",CVDomain:"",displayName:"Value Low Limit",dataType:"number",luceneQueryable:!1},"Value Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/properties/?/value/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_properties_value_nonNumericValue",CVDomain:"",displayName:"Value Non-Numeric Value",dataType:"string",luceneQueryable:!1},"Value Type":{fieldName:"Type",fieldPath:"/properties/?/value/type",finalField:"type",lucenePath:"root_properties_value_type",CVDomain:"AMOUNT_TYPE",displayName:"Value Type",dataType:"string",luceneQueryable:!1},"Value Units":{fieldName:"Units",fieldPath:"/properties/?/value/units",finalField:"units",lucenePath:"root_properties_value_units",CVDomain:"AMOUNT_UNIT",displayName:"Value Units",dataType:"string",luceneQueryable:!1},"Value UUID":{fieldName:"Uuid",fieldPath:"/properties/?/value/uuid",finalField:"uuid",lucenePath:"root_properties_value_uuid",CVDomain:"",displayName:"Value UUID",dataType:"string",luceneQueryable:!1},"Protein Glycosylation UUID":{fieldName:"Uuid",fieldPath:"/protein/glycosylation/uuid",finalField:"uuid",lucenePath:"root_protein_glycosylation_uuid",CVDomain:"",displayName:"Protein Glycosylation UUID",dataType:"string",luceneQueryable:!1},"Other Link UUID":{fieldName:"Uuid",fieldPath:"/protein/otherLinks/?/uuid",finalField:"uuid",lucenePath:"root_protein_otherLinks_uuid",CVDomain:"",displayName:"Other Link UUID",dataType:"string",luceneQueryable:!1},"Protein Subunit UUID":{fieldName:"Uuid",fieldPath:"/protein/subunits/?/uuid",finalField:"uuid",lucenePath:"root_protein_subunits_uuid",CVDomain:"",displayName:"Protein Subunit UUID",dataType:"string",luceneQueryable:!1},"Protein UUID":{fieldName:"Uuid",fieldPath:"/protein/uuid",finalField:"uuid",lucenePath:"root_protein_uuid",CVDomain:"",displayName:"Protein UUID",dataType:"string",luceneQueryable:!1},"Reference UUID":{fieldName:"Uuid",fieldPath:"/references/?/uuid",finalField:"uuid",lucenePath:"root_references_uuid",CVDomain:"",displayName:"Reference UUID",dataType:"string",luceneQueryable:!1},"Relationship Amount UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/amount/uuid",finalField:"uuid",lucenePath:"root_relationships_amount_uuid",CVDomain:"",displayName:"Relationship Amount UUID",dataType:"string",luceneQueryable:!1},"Mediator Substance UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/mediatorSubstance/uuid",finalField:"uuid",lucenePath:"root_relationships_mediatorSubstance_uuid",CVDomain:"",displayName:"Mediator Substance UUID",dataType:"string",luceneQueryable:!1},"Related Substance UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/relatedSubstance/uuid",finalField:"uuid",lucenePath:"root_relationships_relatedSubstance_uuid",CVDomain:"",displayName:"Related Substance UUID",dataType:"string",luceneQueryable:!1},"Relationship UUID":{fieldName:"Uuid",fieldPath:"/relationships/?/uuid",finalField:"uuid",lucenePath:"root_relationships_uuid",CVDomain:"",displayName:"Relationship UUID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (m) UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_uuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) UUID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (p) UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_uuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) UUID",dataType:"boolean",luceneQueryable:!1},"St. Div. Hybrid Parent UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/parentSubstance/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_parentSubstance_uuid",CVDomain:"",displayName:"St. Div. Hybrid Parent UUID",dataType:"string",luceneQueryable:!1},"Structurally Diverse UUID":{fieldName:"Uuid",fieldPath:"/structurallyDiverse/uuid",finalField:"uuid",lucenePath:"root_structurallyDiverse_uuid",CVDomain:"",displayName:"Structurally Diverse UUID",dataType:"array ",luceneQueryable:!1},"Record Uuid":{fieldName:"Uuid",fieldPath:"/uuid",finalField:"uuid",lucenePath:"root_uuid",CVDomain:"",displayName:"Record Uuid",dataType:"boolean",luceneQueryable:!1},"Mixture Component Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/mixture/components/?/substance/linkingID",finalField:"linkingID",lucenePath:"root_mixture_components_substance_linkingID",CVDomain:"",displayName:"Mixture Component Substance Linking ID",dataType:"string",luceneQueryable:!1},"Mixture Component Substance Name":{fieldName:"Name",fieldPath:"/mixture/components/?/substance/name",finalField:"name",lucenePath:"root_mixture_components_substance_name",CVDomain:"",displayName:"Mixture Component Substance Name",dataType:"string",luceneQueryable:!1},"Mixture Parent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/mixture/parentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_mixture_parentSubstance_linkingID",CVDomain:"",displayName:"Mixture Parent Substance Linking ID",dataType:"string",luceneQueryable:!1},"Mixture Parent Substance Name":{fieldName:"Name",fieldPath:"/mixture/parentSubstance/name",finalField:"name",lucenePath:"root_mixture_parentSubstance_name",CVDomain:"",displayName:"Mixture Parent Substance Name",dataType:"string",luceneQueryable:!1},"Agent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/modifications/agentModifications/?/agentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_modifications_agentModifications_agentSubstance_linkingID",CVDomain:"",displayName:"Agent Substance Linking ID",dataType:"string",luceneQueryable:!1},"Agent Substance Name":{fieldName:"Name",fieldPath:"/modifications/agentModifications/?/agentSubstance/name",finalField:"name",lucenePath:"root_modifications_agentModifications_agentSubstance_name",CVDomain:"",displayName:"Agent Substance Name",dataType:"string",luceneQueryable:!1},"Molecular Fragment Linking ID":{fieldName:"Linking Id",fieldPath:"/modifications/structuralModifications/?/molecularFragment/linkingID",finalField:"linkingID",lucenePath:"root_modifications_structuralModifications_molecularFragment_linkingID",CVDomain:"",displayName:"Molecular Fragment Linking ID",dataType:"string",luceneQueryable:!1},"Molecular Fragment Name":{fieldName:"Name",fieldPath:"/modifications/structuralModifications/?/molecularFragment/name",finalField:"name",lucenePath:"root_modifications_structuralModifications_molecularFragment_name",CVDomain:"",displayName:"Molecular Fragment Name",dataType:"string",luceneQueryable:!1},"Moiety Hash":{fieldName:"Hash",fieldPath:"/moieties/?/hash",finalField:"hash",lucenePath:"root_moieties_hash",CVDomain:"",displayName:"Moiety Hash",dataType:"string",luceneQueryable:!1},"Moiety ID":{fieldName:"Id",fieldPath:"/moieties/?/id",finalField:"id",lucenePath:"root_moieties_id",CVDomain:"",displayName:"Moiety ID",dataType:"string",luceneQueryable:!1},"Linkage Sites Shorthand":{fieldName:"Sites Shorthand",fieldPath:"/nucleicAcid/linkages/?/sitesShorthand",finalField:"sitesShorthand",lucenePath:"root_nucleicAcid_linkages_sitesShorthand",CVDomain:"",displayName:"Linkage Sites Shorthand",dataType:"string",luceneQueryable:!1},"Nucleic Acid Subunit Length":{fieldName:"Length",fieldPath:"/nucleicAcid/subunits/?/length",finalField:"length",lucenePath:"root_nucleicAcid_subunits_length",CVDomain:"",displayName:"Nucleic Acid Subunit Length",dataType:"number",luceneQueryable:!1},"Sugar Sites Shorthand":{fieldName:"Sites Shorthand",fieldPath:"/nucleicAcid/sugars/?/sitesShorthand",finalField:"sitesShorthand",lucenePath:"root_nucleicAcid_sugars_sitesShorthand",CVDomain:"",displayName:"Sugar Sites Shorthand",dataType:"string",luceneQueryable:!1},"Polymer Parent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/polymer/classification/parentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_polymer_classification_parentSubstance_linkingID",CVDomain:"",displayName:"Polymer Parent Substance Linking ID",dataType:"string",luceneQueryable:!1},"Polymer Parent Substance Name":{fieldName:"Name",fieldPath:"/polymer/classification/parentSubstance/name",finalField:"name",lucenePath:"root_polymer_classification_parentSubstance_name",CVDomain:"",displayName:"Polymer Parent Substance Name",dataType:"string",luceneQueryable:!1},"Display Structure ID":{fieldName:"Id",fieldPath:"/polymer/displayStructure/id",finalField:"id",lucenePath:"root_polymer_displayStructure_id",CVDomain:"",displayName:"Display Structure ID",dataType:"string",luceneQueryable:!1},"Idealized Structure ID":{fieldName:"Id",fieldPath:"/polymer/idealizedStructure/id",finalField:"id",lucenePath:"root_polymer_idealizedStructure_id",CVDomain:"",displayName:"Idealized Structure ID",dataType:"string",luceneQueryable:!1},"Monomer Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/polymer/monomers/?/monomerSubstance/linkingID",finalField:"linkingID",lucenePath:"root_polymer_monomers_monomerSubstance_linkingID",CVDomain:"",displayName:"Monomer Substance Linking ID",dataType:"string",luceneQueryable:!1},"Monomer Substance Original Name":{fieldName:"Name",fieldPath:"/polymer/monomers/?/monomerSubstance/name",finalField:"name",lucenePath:"root_polymer_monomers_monomerSubstance_name",CVDomain:"",displayName:"Monomer Substance Original Name",dataType:"string",luceneQueryable:!1},"Parameter Name":{fieldName:"Name",fieldPath:"/properties/?/parameters/?/name",finalField:"name",lucenePath:"root_properties_parameters_name",CVDomain:"",displayName:"Parameter Name",dataType:"string",luceneQueryable:!1},"Disulfide Link Sites Shorthand":{fieldName:"Sites Shorthand",fieldPath:"/protein/disulfideLinks/?/sitesShorthand",finalField:"sitesShorthand",lucenePath:"root_protein_disulfideLinks_sitesShorthand",CVDomain:"",displayName:"Disulfide Link Sites Shorthand",dataType:"string",luceneQueryable:!1},"Protein Subunit Length":{fieldName:"Length",fieldPath:"/protein/subunits/?/length",finalField:"length",lucenePath:"root_protein_subunits_length",CVDomain:"",displayName:"Protein Subunit Length",dataType:"number",luceneQueryable:!1},"Mediator Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/relationships/?/mediatorSubstance/linkingID",finalField:"linkingID",lucenePath:"root_relationships_mediatorSubstance_linkingID",CVDomain:"",displayName:"Mediator Substance Linking ID",dataType:"string",luceneQueryable:!1},"Mediator Substance Name":{fieldName:"Name",fieldPath:"/relationships/?/mediatorSubstance/name",finalField:"name",lucenePath:"root_relationships_mediatorSubstance_name",CVDomain:"",displayName:"Mediator Substance Name",dataType:"string",luceneQueryable:!1},"Related Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/relationships/?/relatedSubstance/linkingID",finalField:"linkingID",lucenePath:"root_relationships_relatedSubstance_linkingID",CVDomain:"",displayName:"Related Substance Linking ID",dataType:"string",luceneQueryable:!1},"Related Substance Original Name":{fieldName:"Name",fieldPath:"/relationships/?/relatedSubstance/name",finalField:"name",lucenePath:"root_relationships_relatedSubstance_name",CVDomain:"",displayName:"Related Substance Original Name",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (m) Linking ID":{fieldName:"Linking Id",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/linkingID",finalField:"linkingID",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_linkingID",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Linking ID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (m) Name":{fieldName:"Name",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/name",finalField:"name",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_name",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Name",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (p) Linking ID":{fieldName:"Linking Id",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/linkingID",finalField:"linkingID",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_linkingID",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Linking ID",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent (p) Name":{fieldName:"Name",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/name",finalField:"name",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_name",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Name",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent Linking ID":{fieldName:"Linking Id",fieldPath:"/structurallyDiverse/parentSubstance/linkingID",finalField:"linkingID",lucenePath:"root_structurallyDiverse_parentSubstance_linkingID",CVDomain:"",displayName:"St. Div. Hybrid Parent Linking ID",dataType:"number",luceneQueryable:!1},"St. Div. Hybrid Parent Name":{fieldName:"Name",fieldPath:"/structurallyDiverse/parentSubstance/name",finalField:"name",lucenePath:"root_structurallyDiverse_parentSubstance_name",CVDomain:"",displayName:"St. Div. Hybrid Parent Name",dataType:"string",luceneQueryable:!1},"Structure Hash":{fieldName:"Hash",fieldPath:"/structure/hash",finalField:"hash",lucenePath:"root_structure_hash",CVDomain:"",displayName:"Structure Hash",dataType:"string",luceneQueryable:!1},"Structure ID":{fieldName:"Id",fieldPath:"/structure/id",finalField:"id",lucenePath:"root_structure_id",CVDomain:"",displayName:"Structure ID",dataType:"string",luceneQueryable:!1},"Record Codes":{fieldName:"Codes",fieldPath:"/codes",finalField:"codes",lucenePath:"",CVDomain:"",displayName:"Record Codes",dataType:"array ",luceneQueryable:!1},"Code References":{fieldName:"References",fieldPath:"/codes/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Code References",dataType:"array ",luceneQueryable:!1},Mixture:{fieldName:"Mixture",fieldPath:"/mixture",finalField:"mixture",lucenePath:"",CVDomain:"",displayName:"Mixture",dataType:"object ",luceneQueryable:!1},"Mixture Components":{fieldName:"Components",fieldPath:"/mixture/components",finalField:"components",lucenePath:"",CVDomain:"",displayName:"Mixture Components",dataType:"array ",luceneQueryable:!1},"Mixture Component References":{fieldName:"References",fieldPath:"/mixture/components/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture Component References",dataType:"array ",luceneQueryable:!1},"Mixture Component Substance":{fieldName:"Substance",fieldPath:"/mixture/components/?/substance",finalField:"substance",lucenePath:"",CVDomain:"",displayName:"Mixture Component Substance",dataType:"object ",luceneQueryable:!1},"Mixture Component Substance References":{fieldName:"References",fieldPath:"/mixture/components/?/substance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture Component Substance References",dataType:"array ",luceneQueryable:!1},"Mixture Parent Substance":{fieldName:"Parent Substance",fieldPath:"/mixture/parentSubstance",finalField:"parentSubstance",lucenePath:"",CVDomain:"",displayName:"Mixture Parent Substance",dataType:"object ",luceneQueryable:!1},"Mixture Parent Substance References":{fieldName:"References",fieldPath:"/mixture/parentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture Parent Substance References",dataType:"array ",luceneQueryable:!1},"Mixture References":{fieldName:"References",fieldPath:"/mixture/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mixture References",dataType:"array ",luceneQueryable:!1},Modifications:{fieldName:"Modifications",fieldPath:"/modifications",finalField:"modifications",lucenePath:"",CVDomain:"",displayName:"Modifications",dataType:"object ",luceneQueryable:!1},"Agent Modifications":{fieldName:"Agent Modifications",fieldPath:"/modifications/agentModifications",finalField:"agentModifications",lucenePath:"",CVDomain:"",displayName:"Agent Modifications",dataType:"array ",luceneQueryable:!1},"Agent Modification Agent Substance":{fieldName:"Agent Substance",fieldPath:"/modifications/agentModifications/?/agentSubstance",finalField:"agentSubstance",lucenePath:"",CVDomain:"",displayName:"Agent Modification Agent Substance",dataType:"object ",luceneQueryable:!1},"Agent Substance References":{fieldName:"References",fieldPath:"/modifications/agentModifications/?/agentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Agent Substance References",dataType:"array ",luceneQueryable:!1},"Agent Modification Amount":{fieldName:"Amount",fieldPath:"/modifications/agentModifications/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Agent Modification Amount",dataType:"object ",luceneQueryable:!1},"Agent Modification Amount References":{fieldName:"References",fieldPath:"/modifications/agentModifications/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Agent Modification Amount References",dataType:"array ",luceneQueryable:!1},"Agent Modification References":{fieldName:"References",fieldPath:"/modifications/agentModifications/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Agent Modification References",dataType:"array ",luceneQueryable:!1},"Physical Modifications":{fieldName:"Physical Modifications",fieldPath:"/modifications/physicalModifications",finalField:"physicalModifications",lucenePath:"",CVDomain:"",displayName:"Physical Modifications",dataType:"array ",luceneQueryable:!1},"Physical Modification Parameters":{fieldName:"Parameters",fieldPath:"/modifications/physicalModifications/?/parameters",finalField:"parameters",lucenePath:"",CVDomain:"PHYSICAL_PARAMETERS",displayName:"Physical Modification Parameters",dataType:"array ",luceneQueryable:!1},"Physical Modification Parameter Amount":{fieldName:"Amount",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Physical Modification Parameter Amount",dataType:"object ",luceneQueryable:!1},"Physical Modification Amount References":{fieldName:"References",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Physical Modification Amount References",dataType:"array ",luceneQueryable:!1},"Physical Modification Parameter References":{fieldName:"References",fieldPath:"/modifications/physicalModifications/?/parameters/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Physical Modification Parameter References",dataType:"array ",luceneQueryable:!1},"Physical Modification References":{fieldName:"References",fieldPath:"/modifications/physicalModifications/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Physical Modification References",dataType:"array ",luceneQueryable:!1},"Modification References":{fieldName:"References",fieldPath:"/modifications/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Modification References",dataType:"array ",luceneQueryable:!1},"Structural Modifications":{fieldName:"Structural Modifications",fieldPath:"/modifications/structuralModifications",finalField:"structuralModifications",lucenePath:"",CVDomain:"",displayName:"Structural Modifications",dataType:"array ",luceneQueryable:!1},"Structural Modification Extent Amount":{fieldName:"Extent Amount",fieldPath:"/modifications/structuralModifications/?/extentAmount",finalField:"extentAmount",lucenePath:"",CVDomain:"",displayName:"Structural Modification Extent Amount",dataType:"object ",luceneQueryable:!1},"Structural Modification Extent Amount References":{fieldName:"References",fieldPath:"/modifications/structuralModifications/?/extentAmount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structural Modification Extent Amount References",dataType:"array ",luceneQueryable:!1},"Structural Modification Molecular Fragment":{fieldName:"Molecular Fragment",fieldPath:"/modifications/structuralModifications/?/molecularFragment",finalField:"molecularFragment",lucenePath:"",CVDomain:"",displayName:"Structural Modification Molecular Fragment",dataType:"object ",luceneQueryable:!1},"Molecular Fragment References":{fieldName:"References",fieldPath:"/modifications/structuralModifications/?/molecularFragment/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Molecular Fragment References",dataType:"array ",luceneQueryable:!1},"Structural Modification References":{fieldName:"References",fieldPath:"/modifications/structuralModifications/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structural Modification References",dataType:"array ",luceneQueryable:!1},"Structural Modification Sites":{fieldName:"Sites",fieldPath:"/modifications/structuralModifications/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Structural Modification Sites",dataType:"array ",luceneQueryable:!1},"Structural Modification Site Residue Index":{fieldName:"Residue Index",fieldPath:"/modifications/structuralModifications/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Structural Modification Site Residue Index",dataType:"number",luceneQueryable:!1},"Structural Modification Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/modifications/structuralModifications/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Structural Modification Site Subunit Index",dataType:"number",luceneQueryable:!1},"Record Moieties":{fieldName:"Moieties",fieldPath:"/moieties",finalField:"moieties",lucenePath:"",CVDomain:"",displayName:"Record Moieties",dataType:"array ",luceneQueryable:!1},"Moiety Count Amount":{fieldName:"Count Amount",fieldPath:"/moieties/?/countAmount",finalField:"countAmount",lucenePath:"",CVDomain:"",displayName:"Moiety Count Amount",dataType:"object ",luceneQueryable:!1},"Count Amount References":{fieldName:"References",fieldPath:"/moieties/?/countAmount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Count Amount References",dataType:"array ",luceneQueryable:!1},"Moiety Molfile":{fieldName:"Molfile",fieldPath:"/moieties/?/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Moiety Molfile",dataType:"string",luceneQueryable:!1},"Moiety References":{fieldName:"References",fieldPath:"/moieties/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Moiety References",dataType:"array ",luceneQueryable:!1},"Moiety Smiles":{fieldName:"Smiles",fieldPath:"/moieties/?/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Moiety Smiles",dataType:"string",luceneQueryable:!1},"Record Names":{fieldName:"Names",fieldPath:"/names",finalField:"names",lucenePath:"",CVDomain:"",displayName:"Record Names",dataType:"array ",luceneQueryable:!1},"Name Nameorgs":{fieldName:"Naming Organizations",fieldPath:"/names/?/nameOrgs",finalField:"nameOrgs",lucenePath:"",CVDomain:"",displayName:"Name Nameorgs",dataType:"array ",luceneQueryable:!1},"Naming Organization References":{fieldName:"References",fieldPath:"/names/?/nameOrgs/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Naming Organization References",dataType:"array ",luceneQueryable:!1},"Name References":{fieldName:"References",fieldPath:"/names/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Name References",dataType:"array ",luceneQueryable:!1},"Record Notes":{fieldName:"Notes",fieldPath:"/notes",finalField:"notes",lucenePath:"",CVDomain:"",displayName:"Record Notes",dataType:"array ",luceneQueryable:!1},"Note References":{fieldName:"References",fieldPath:"/notes/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Note References",dataType:"array ",luceneQueryable:!1},"Record Nucleic Acid":{fieldName:"Nucleicacid",fieldPath:"/nucleicAcid",finalField:"nucleicAcid",lucenePath:"",CVDomain:"",displayName:"Record Nucleic Acid",dataType:"object ",luceneQueryable:!1},"Nucleic Acid Linkages":{fieldName:"Linkages",fieldPath:"/nucleicAcid/linkages",finalField:"linkages",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid Linkages",dataType:"array ",luceneQueryable:!1},"Linkage References":{fieldName:"References",fieldPath:"/nucleicAcid/linkages/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Linkage References",dataType:"array ",luceneQueryable:!1},"Linkage Sites":{fieldName:"Sites",fieldPath:"/nucleicAcid/linkages/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Linkage Sites",dataType:"array ",luceneQueryable:!1},"Linkage Site Residue Index":{fieldName:"Residue Index",fieldPath:"/nucleicAcid/linkages/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Linkage Site Residue Index",dataType:"number",luceneQueryable:!1},"Linkage Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/nucleicAcid/linkages/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Linkage Site Subunit Index",dataType:"number",luceneQueryable:!1},"Nucleic Acid References":{fieldName:"References",fieldPath:"/nucleicAcid/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid References",dataType:"array ",luceneQueryable:!1},"Nucleic Acid Subunits":{fieldName:"Subunits",fieldPath:"/nucleicAcid/subunits",finalField:"subunits",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid Subunits",dataType:"array ",luceneQueryable:!1},"Nucleic Acid Subunit References":{fieldName:"References",fieldPath:"/nucleicAcid/subunits/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Nucleic Acid Subunit References",dataType:"array ",luceneQueryable:!1},"Nucleic Acid Sugars":{fieldName:"Sugars",fieldPath:"/nucleicAcid/sugars",finalField:"sugars",lucenePath:"",CVDomain:"NUCLEIC_ACID_SUGAR",displayName:"Nucleic Acid Sugars",dataType:"array ",luceneQueryable:!1},"Sugar References":{fieldName:"References",fieldPath:"/nucleicAcid/sugars/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Sugar References",dataType:"array ",luceneQueryable:!1},"Sugar Sites":{fieldName:"Sites",fieldPath:"/nucleicAcid/sugars/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Sugar Sites",dataType:"array ",luceneQueryable:!1},"Sugar Site Residue Index":{fieldName:"Residue Index",fieldPath:"/nucleicAcid/sugars/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Sugar Site Residue Index",dataType:"number",luceneQueryable:!1},"Sugar Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/nucleicAcid/sugars/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Sugar Site Subunit Index",dataType:"number",luceneQueryable:!1},"Record Polymer":{fieldName:"Polymer",fieldPath:"/polymer",finalField:"polymer",lucenePath:"",CVDomain:"",displayName:"Record Polymer",dataType:"object ",luceneQueryable:!1},"Polymer Classification":{fieldName:"Classification",fieldPath:"/polymer/classification",finalField:"classification",lucenePath:"",CVDomain:"",displayName:"Polymer Classification",dataType:"object ",luceneQueryable:!1},"Polymer Classification Parent Substance":{fieldName:"Parent Substance",fieldPath:"/polymer/classification/parentSubstance",finalField:"parentSubstance",lucenePath:"",CVDomain:"",displayName:"Polymer Classification Parent Substance",dataType:"object ",luceneQueryable:!1},"Polymer Parent Substance References":{fieldName:"References",fieldPath:"/polymer/classification/parentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Polymer Parent Substance References",dataType:"array ",luceneQueryable:!1},"Polymer Classification References":{fieldName:"References",fieldPath:"/polymer/classification/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Polymer Classification References",dataType:"array ",luceneQueryable:!1},"Polymer Display Structure":{fieldName:"Display Structure",fieldPath:"/polymer/displayStructure",finalField:"displayStructure",lucenePath:"",CVDomain:"",displayName:"Polymer Display Structure",dataType:"object ",luceneQueryable:!1},"Display Structure Molfile":{fieldName:"Molfile",fieldPath:"/polymer/displayStructure/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Display Structure Molfile",dataType:"string",luceneQueryable:!1},"Display Structure References":{fieldName:"References",fieldPath:"/polymer/displayStructure/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Display Structure References",dataType:"array ",luceneQueryable:!1},"Display Structure Smiles":{fieldName:"Smiles",fieldPath:"/polymer/displayStructure/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Display Structure Smiles",dataType:"string",luceneQueryable:!1},"Polymer Idealized Structure":{fieldName:"Idealized Structure",fieldPath:"/polymer/idealizedStructure",finalField:"idealizedStructure",lucenePath:"",CVDomain:"",displayName:"Polymer Idealized Structure",dataType:"object ",luceneQueryable:!1},"Idealized Structure Molfile":{fieldName:"Molfile",fieldPath:"/polymer/idealizedStructure/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Idealized Structure Molfile",dataType:"string",luceneQueryable:!1},"Idealized Structure References":{fieldName:"References",fieldPath:"/polymer/idealizedStructure/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Idealized Structure References",dataType:"array ",luceneQueryable:!1},"Idealized Structure Smiles":{fieldName:"Smiles",fieldPath:"/polymer/idealizedStructure/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Idealized Structure Smiles",dataType:"string",luceneQueryable:!1},"Polymer Monomers":{fieldName:"Monomers",fieldPath:"/polymer/monomers",finalField:"monomers",lucenePath:"",CVDomain:"",displayName:"Polymer Monomers",dataType:"array ",luceneQueryable:!1},"Monomer Amount":{fieldName:"Amount",fieldPath:"/polymer/monomers/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Monomer Amount",dataType:"object ",luceneQueryable:!1},"Monomer Amount References":{fieldName:"References",fieldPath:"/polymer/monomers/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Monomer Amount References",dataType:"array ",luceneQueryable:!1},"Monomer Monomer Substance":{fieldName:"Monomer Substance",fieldPath:"/polymer/monomers/?/monomerSubstance",finalField:"monomerSubstance",lucenePath:"",CVDomain:"",displayName:"Monomer Monomer Substance",dataType:"object ",luceneQueryable:!1},"Monomer Substance References":{fieldName:"References",fieldPath:"/polymer/monomers/?/monomerSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Monomer Substance References",dataType:"array ",luceneQueryable:!1},"Monomer References":{fieldName:"References",fieldPath:"/polymer/monomers/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Monomer References",dataType:"array ",luceneQueryable:!1},"Polymer References":{fieldName:"References",fieldPath:"/polymer/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Polymer References",dataType:"array ",luceneQueryable:!1},"SRU Structuralunits":{fieldName:"Structural Units",fieldPath:"/polymer/structuralUnits",finalField:"structuralUnits",lucenePath:"",CVDomain:"",displayName:"SRU Structuralunits",dataType:"array ",luceneQueryable:!1},"SRU Amount References":{fieldName:"References",fieldPath:"/polymer/structuralUnits/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"SRU Amount References",dataType:"array ",luceneQueryable:!1},"SRU Amount Attachment Map":{fieldName:"Attachment Map",fieldPath:"/polymer/structuralUnits/?/attchmentMap",finalField:"attachmentMap",lucenePath:"",CVDomain:"",displayName:"SRU Amount Attachment Map",dataType:"object ",luceneQueryable:!1},"Record Properties":{fieldName:"Properties",fieldPath:"/properties",finalField:"properties",lucenePath:"",CVDomain:"",displayName:"Record Properties",dataType:"array ",luceneQueryable:!1},"Parameter References":{fieldName:"References",fieldPath:"/properties/?/parameters/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Parameter References",dataType:"array ",luceneQueryable:!1},"Parameter Value":{fieldName:"Value",fieldPath:"/properties/?/parameters/?/value",finalField:"value",lucenePath:"",CVDomain:"",displayName:"Parameter Value",dataType:"object ",luceneQueryable:!1},"Parameter Value References":{fieldName:"References",fieldPath:"/properties/?/parameters/?/value/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Parameter Value References",dataType:"array ",luceneQueryable:!1},"Property References":{fieldName:"References",fieldPath:"/properties/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Property References",dataType:"array ",luceneQueryable:!1},"Value References":{fieldName:"References",fieldPath:"/properties/?/value/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Value References",dataType:"array ",luceneQueryable:!1},"Record Protein":{fieldName:"Protein",fieldPath:"/protein",finalField:"protein",lucenePath:"",CVDomain:"",displayName:"Record Protein",dataType:"object ",luceneQueryable:!1},"Protein Disulfide Links":{fieldName:"Disulfide Links",fieldPath:"/protein/disulfideLinks",finalField:"disulfideLinks",lucenePath:"",CVDomain:"",displayName:"Protein Disulfide Links",dataType:"array ",luceneQueryable:!1},"Disulfide Link Sites":{fieldName:"Sites",fieldPath:"/protein/disulfideLinks/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Disulfide Link Sites",dataType:"array ",luceneQueryable:!1},"Disulfide Link Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/disulfideLinks/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Disulfide Link Site Residue Index",dataType:"number",luceneQueryable:!1},"Disulfide Link Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/disulfideLinks/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Disulfide Link Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation":{fieldName:"Glycosylation",fieldPath:"/protein/glycosylation",finalField:"glycosylation",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation",dataType:"object ",luceneQueryable:!1},"Protein Glycosylation C Glycosylation Sites":{fieldName:"C Glycosylation Sites",fieldPath:"/protein/glycosylation/CGlycosylationSites",finalField:"CGlycosylationSites",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation C Glycosylation Sites",dataType:"array ",luceneQueryable:!1},"C Glycosylation Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/glycosylation/CGlycosylationSites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"C Glycosylation Site Residue Index",dataType:"number",luceneQueryable:!1},"C Glycosylation Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/glycosylation/CGlycosylationSites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"C Glycosylation Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation N Glycosylation Sites":{fieldName:"N-Glycosylation Sites",fieldPath:"/protein/glycosylation/NGlycosylationSites",finalField:"NGlycosylationSites",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation N Glycosylation Sites",dataType:"array ",luceneQueryable:!1},"N Glycosylation Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/glycosylation/NGlycosylationSites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"N Glycosylation Site Residue Index",dataType:"number",luceneQueryable:!1},"N Glycosylation Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/glycosylation/NGlycosylationSites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"N Glycosylation Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation O Glycosylation Sites":{fieldName:"O-Glycosylation Sites",fieldPath:"/protein/glycosylation/OGlycosylationSites",finalField:"OGlycosylationSites",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation O Glycosylation Sites",dataType:"array ",luceneQueryable:!1},"O Glycosylation Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/glycosylation/OGlycosylationSites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"O Glycosylation Site Residue Index",dataType:"number",luceneQueryable:!1},"O Glycosylation Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/glycosylation/OGlycosylationSites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"O Glycosylation Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein Glycosylation References":{fieldName:"References",fieldPath:"/protein/glycosylation/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Protein Glycosylation References",dataType:"array ",luceneQueryable:!1},"Protein Otherlinks":{fieldName:"Other Links",fieldPath:"/protein/otherLinks",finalField:"otherLinks",lucenePath:"",CVDomain:"",displayName:"Protein Otherlinks",dataType:"array ",luceneQueryable:!1},"Other Link References":{fieldName:"References",fieldPath:"/protein/otherLinks/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Other Link References",dataType:"array ",luceneQueryable:!1},"Other Link Sites":{fieldName:"Sites",fieldPath:"/protein/otherLinks/?/sites",finalField:"sites",lucenePath:"",CVDomain:"",displayName:"Other Link Sites",dataType:"array ",luceneQueryable:!1},"Other Link Site Residue Index":{fieldName:"Residue Index",fieldPath:"/protein/otherLinks/?/sites/?/residueIndex",finalField:"residueIndex",lucenePath:"",CVDomain:"",displayName:"Other Link Site Residue Index",dataType:"number",luceneQueryable:!1},"Other Link Site Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/otherLinks/?/sites/?/subunitIndex",finalField:"subunitIndex",lucenePath:"",CVDomain:"",displayName:"Other Link Site Subunit Index",dataType:"number",luceneQueryable:!1},"Protein References":{fieldName:"References",fieldPath:"/protein/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Protein References",dataType:"array ",luceneQueryable:!1},"Protein Subunits":{fieldName:"Subunits",fieldPath:"/protein/subunits",finalField:"subunits",lucenePath:"",CVDomain:"",displayName:"Protein Subunits",dataType:"array ",luceneQueryable:!1},"Protein Subunit References":{fieldName:"References",fieldPath:"/protein/subunits/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Protein Subunit References",dataType:"array ",luceneQueryable:!1},"Record References":{fieldName:"References",fieldPath:"/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Record References",dataType:"array ",luceneQueryable:!1},"Record Relationships":{fieldName:"Relationships",fieldPath:"/relationships",finalField:"relationships",lucenePath:"",CVDomain:"",displayName:"Record Relationships",dataType:"array ",luceneQueryable:!1},"Relationship Amount":{fieldName:"Amount",fieldPath:"/relationships/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Relationship Amount",dataType:"object ",luceneQueryable:!1},"Relationship Amount References":{fieldName:"References",fieldPath:"/relationships/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Relationship Amount References",dataType:"array ",luceneQueryable:!1},"Relationship Mediator Substance":{fieldName:"Mediator Substance",fieldPath:"/relationships/?/mediatorSubstance",finalField:"mediatorSubstance",lucenePath:"",CVDomain:"",displayName:"Relationship Mediator Substance",dataType:"object ",luceneQueryable:!1},"Mediator Substance References":{fieldName:"References",fieldPath:"/relationships/?/mediatorSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Mediator Substance References",dataType:"array ",luceneQueryable:!1},"Relationship References":{fieldName:"References",fieldPath:"/relationships/?/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Relationship References",dataType:"array ",luceneQueryable:!1},"Relationship Related Substance":{fieldName:"Related Substance",fieldPath:"/relationships/?/relatedSubstance",finalField:"relatedSubstance",lucenePath:"",CVDomain:"",displayName:"Relationship Related Substance",dataType:"object ",luceneQueryable:!1},"Related Substance References":{fieldName:"References",fieldPath:"/relationships/?/relatedSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Related Substance References",dataType:"array ",luceneQueryable:!1},"Record Structurally Diverse":{fieldName:"Structurally Diverse",fieldPath:"/structurallyDiverse",finalField:"structurallyDiverse",lucenePath:"",CVDomain:"",displayName:"Record Structurally Diverse",dataType:"array ",luceneQueryable:!1},"Structurally Diverse Hybrid Species Maternal Organism":{fieldName:"Hybrid Species Maternal Organism",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism",finalField:"hybridSpeciesMaternalOrganism",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse Hybrid Species Maternal Organism",dataType:"number",luceneQueryable:!1},"St. Div. Hybrid Parent (m) References":{fieldName:"References",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) References",dataType:"string",luceneQueryable:!1},"Structurally Diverse Hybrid Species Paternal Organism":{fieldName:"Hybrid Species Paternal Organism",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism",finalField:"hybridSpeciesPaternalOrganism",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse Hybrid Species Paternal Organism",dataType:"number",luceneQueryable:!1},"St. Div. Hybrid Parent (p) References":{fieldName:"References",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) References",dataType:"string",luceneQueryable:!1},"Structurally Diverse Parent Substance":{fieldName:"Parent Substance",fieldPath:"/structurallyDiverse/parentSubstance",finalField:"parentSubstance",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse Parent Substance",dataType:"string",luceneQueryable:!1},"St. Div. Hybrid Parent References":{fieldName:"References",fieldPath:"/structurallyDiverse/parentSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"St. Div. Hybrid Parent References",dataType:"boolean",luceneQueryable:!1},"Structurally Diverse References":{fieldName:"References",fieldPath:"/structurallyDiverse/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structurally Diverse References",dataType:"string",luceneQueryable:!1},"Record Structure":{fieldName:"Structure",fieldPath:"/structure",finalField:"structure",lucenePath:"",CVDomain:"",displayName:"Record Structure",dataType:"string",luceneQueryable:!1},"Structure Molfile":{fieldName:"Molfile",fieldPath:"/structure/molfile",finalField:"molfile",lucenePath:"",CVDomain:"",displayName:"Structure Molfile",dataType:"string",luceneQueryable:!1},"Structure References":{fieldName:"References",fieldPath:"/structure/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Structure References",dataType:"string",luceneQueryable:!1},"Structure Smiles":{fieldName:"Smiles",fieldPath:"/structure/smiles",finalField:"smiles",lucenePath:"",CVDomain:"",displayName:"Structure Smiles",dataType:"string",luceneQueryable:!1},SpecifiedSubstance:{fieldName:"Specified Substance",fieldPath:"/specifiedSubstance",finalField:"",lucenePath:"",CVDomain:"",displayName:"SpecifiedSubstance",dataType:"string",luceneQueryable:!1},"SpecifiedSubstance Access":{fieldName:"Access",fieldPath:"/specifiedSubstance/access",finalField:"access",lucenePath:"root_specifiedSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"SpecifiedSubstance Access",dataType:"string",luceneQueryable:!1},"SpecifiedSubstance References":{fieldName:"References",fieldPath:"/specifiedSubstance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"SpecifiedSubstance References",dataType:"string",luceneQueryable:!1},"SpecifiedSubstance UUID":{fieldName:"Uuid",fieldPath:"/specifiedSubstance/uuid",finalField:"uuid",lucenePath:"root_specifiedSubstance_uuid",CVDomain:"",displayName:"SpecifiedSubstance UUID",dataType:"array ",luceneQueryable:!1},Constituent:{fieldName:"Constituents",fieldPath:"/specifiedSubstance/constituents",finalField:"",lucenePath:"root_specifiedSubstance_constituent",CVDomain:"",displayName:"Constituent",dataType:"string",luceneQueryable:!1},"Constituent Substance":{fieldName:"Substance",fieldPath:"/specifiedSubstance/constituents/?/substance",finalField:"parentSubstance",lucenePath:"root_specifiedSubstance_constituents_substance",CVDomain:"",displayName:"Constituent Substance",dataType:"string",luceneQueryable:!1},"Constituent Substance Access":{fieldName:"Access",fieldPath:"/specifiedSubstance/constituents/?/substance/access",finalField:"access",lucenePath:"root_specifiedSubstance_constituents_substance_access",CVDomain:"ACCESS_GROUP",displayName:"Constituent Substance Access",dataType:"string",luceneQueryable:!1},"Constituent Substance Linking ID":{fieldName:"Linking Id",fieldPath:"/specifiedSubstance/constituents/?/substance/linkingID",finalField:"linkingID",lucenePath:"root_specifiedSubstance_constituents_substance_linkingID",CVDomain:"",displayName:"Constituent Substance Linking ID",dataType:"number",luceneQueryable:!1},"Constituent Substance Name":{fieldName:"Name",fieldPath:"/specifiedSubstance/constituents/?/substance/name",finalField:"name",lucenePath:"root_specifiedSubstance_constituents_substance_name",CVDomain:"",displayName:"Constituent Substance Name",dataType:"number",luceneQueryable:!1},"Constituent Substance References":{fieldName:"References",fieldPath:"/specifiedSubstance/constituents/?/substance/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Constituent Substance References",dataType:"string",luceneQueryable:!1},"Constituent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/specifiedSubstance/constituents/?/substance/substanceClass",finalField:"substanceClass",lucenePath:"root_specifiedSubstance_constituents_substance_substanceClass",CVDomain:"",displayName:"Constituent Substance Substance Class",dataType:"string",luceneQueryable:!1},"Constituent Amount":{fieldName:"Amount",fieldPath:"/specifiedSubstance/constituents/?/amount",finalField:"amount",lucenePath:"",CVDomain:"",displayName:"Constituent Amount",dataType:"string",luceneQueryable:!1},"Constituent Amount Access":{fieldName:"Access",fieldPath:"/specifiedSubstance/constituents/?/amount/access",finalField:"access",lucenePath:"root_specifiedSubstance_constituents_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Constituent Amount Access",dataType:"string",luceneQueryable:!1},"Constituent Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/specifiedSubstance/constituents/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_specifiedSubstance_constituents_amount_deprecated",CVDomain:"",displayName:"Constituent Amount Deprecated",dataType:"string",luceneQueryable:!1},"Constituent Amount References":{fieldName:"References",fieldPath:"/specifiedSubstance/constituents/?/amount/references",finalField:"references",lucenePath:"",CVDomain:"",displayName:"Constituent Amount References",dataType:"string",luceneQueryable:!1},"Constituent Amount UUID":{fieldName:"Uuid",fieldPath:"/specifiedSubstance/constituents/?/amount/uuid",finalField:"uuid",lucenePath:"root_specifiedSubstance_constituents_amount_uuid",CVDomain:"",displayName:"Constituent Amount UUID",dataType:"string",luceneQueryable:!1},"Moiety Atropisomerism":{fieldName:"Atropisomerism",fieldPath:"/moieties/?/atropisomerism",finalField:"atropisomerism",lucenePath:"root_moieties_structure_atropisomerism",CVDomain:"ATROPISOMERISM",displayName:"Moiety Atropisomerism",dataType:"string",luceneQueryable:!1},"Moiety Charge":{fieldName:"Charge",fieldPath:"/moieties/?/charge",finalField:"charge",lucenePath:"root_moieties_structure_charge",CVDomain:"",displayName:"Moiety Charge",dataType:"number",luceneQueryable:!1},"Moiety Count":{fieldName:"Count",fieldPath:"/moieties/?/count",finalField:"count",lucenePath:"root_moieties_structure_count",CVDomain:"",displayName:"Moiety Count",dataType:"number",luceneQueryable:!1},"Moiety Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/moieties/?/definedStereo",finalField:"definedStereo",lucenePath:"root_moieties_structure_definedStereo",CVDomain:"",displayName:"Moiety Defined Stereo",dataType:"number",luceneQueryable:!1},"Moiety Digest":{fieldName:"Digest",fieldPath:"/moieties/?/digest",finalField:"digest",lucenePath:"root_moieties_structure_digest",CVDomain:"",displayName:"Moiety Digest",dataType:"string",luceneQueryable:!1},"Moiety Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/moieties/?/ezCenters",finalField:"ezCenters",lucenePath:"root_moieties_structure_ezCenters",CVDomain:"",displayName:"Moiety Ez Centers",dataType:"number",luceneQueryable:!1},"Moiety Formula":{fieldName:"Formula",fieldPath:"/moieties/?/formula",finalField:"formula",lucenePath:"root_moieties_structure_formula",CVDomain:"",displayName:"Moiety Formula",dataType:"string",luceneQueryable:!1},"Moiety Mwt":{fieldName:"Molecular Weight",fieldPath:"/moieties/?/mwt",finalField:"mwt",lucenePath:"root_moieties_structure_mwt",CVDomain:"",displayName:"Moiety Mwt",dataType:"number",luceneQueryable:!1},"Moiety Optical Activity":{fieldName:"Optical Activity",fieldPath:"/moieties/?/opticalActivity",finalField:"opticalActivity",lucenePath:"root_moieties_structure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Moiety Optical Activity",dataType:"string",luceneQueryable:!1},"Moiety Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/moieties/?/stereoCenters",finalField:"stereoCenters",lucenePath:"root_moieties_structure_stereoCenters",CVDomain:"",displayName:"Moiety Stereo Centers",dataType:"number",luceneQueryable:!1},"Moiety Stereo Comments":{fieldName:"Stereo Comments",fieldPath:"/moieties/?/stereoComments",finalField:"stereoComments",lucenePath:"root_moieties_structure_stereoComments",CVDomain:"",displayName:"Moiety Stereo Comments",dataType:"string",luceneQueryable:!1},"Name Domains":{fieldName:"Domains",fieldPath:"/names/?/domains",finalField:"domains",lucenePath:"root_names_domains_term",CVDomain:"NAME_DOMAIN",displayName:"Name Domains",dataType:"array ",luceneQueryable:!1},"Name Languages":{fieldName:"Languages",fieldPath:"/names/?/languages",finalField:"languages",lucenePath:"root_names_languages_term",CVDomain:"LANGUAGE",displayName:"Name Languages",dataType:"array ",luceneQueryable:!1},"Name Name Jurisdiction":{fieldName:"Naming Jurisdictions",fieldPath:"/names/?/nameJurisdiction",finalField:"nameJurisdiction",lucenePath:"root_names_nameJurisdiction_term",CVDomain:"JURISDICTION",displayName:"Name Name Jurisdiction",dataType:"array ",luceneQueryable:!1},"Polymer Classification Polymer Subclass":{fieldName:"Polymer Subclass",fieldPath:"/polymer/classification/polymerSubclass",finalField:"polymerSubclass",lucenePath:"root_polymer_classification_polymerSubclass_term",CVDomain:"POLYMER_SUBCLASS",displayName:"Polymer Classification Polymer Subclass",dataType:"array ",luceneQueryable:!1},"Reference Tags":{fieldName:"Tags",fieldPath:"/references/?/tags",finalField:"tags",lucenePath:"root_references_tags_term",CVDomain:"DOCUMENT_COLLECTION",displayName:"Reference Tags",dataType:"array ",luceneQueryable:!1},"Structurally Diverse Part":{fieldName:"Part",fieldPath:"/structurallyDiverse/part",finalField:"part",lucenePath:"root_structurallyDiverse_part_term",CVDomain:"PART",displayName:"Structurally Diverse Part",dataType:"array ",luceneQueryable:!1},"Record Tags":{fieldName:"Tags",fieldPath:"/tags",finalField:"tags",lucenePath:"root_tags_term",CVDomain:"",displayName:"Record Tags",dataType:"string",luceneQueryable:!1},"Record Access":{fieldName:"Access",fieldPath:"/access",finalField:"access",lucenePath:"root_access",CVDomain:"ACCESS_GROUP",displayName:"Record Access",dataType:"array ",luceneQueryable:!0},"Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/approvalID",finalField:"approvalID",lucenePath:"root_approvalID",CVDomain:"",displayName:"Approval ID",dataType:"string",luceneQueryable:!0},"Record Approved By":{fieldName:"Approved By",fieldPath:"/approvedBy",finalField:"approvedBy",lucenePath:"root_approvedBy",CVDomain:"",displayName:"Record Approved By",dataType:"string",luceneQueryable:!0},"Record Change Reason":{fieldName:"Change Reason",fieldPath:"/changeReason",finalField:"changeReason",lucenePath:"root_changeReason",CVDomain:"",displayName:"Record Change Reason",dataType:"string",luceneQueryable:!0},"Code Access":{fieldName:"Access",fieldPath:"/codes/?/access",finalField:"access",lucenePath:"root_codes_access",CVDomain:"ACCESS_GROUP",displayName:"Code Access",dataType:"array ",luceneQueryable:!0},"Code Literal":{fieldName:"Code",fieldPath:"/codes/?/code",finalField:"code",lucenePath:"root_codes_code",CVDomain:"",displayName:"Code Literal",dataType:"string",luceneQueryable:!0},"Code System":{fieldName:"Code System",fieldPath:"/codes/?/codeSystem",finalField:"codeSystem",lucenePath:"root_codes_codeSystem",CVDomain:"CODE_SYSTEM",displayName:"Code System",dataType:"string",luceneQueryable:!0},"Code Comments":{fieldName:"Comments",fieldPath:"/codes/?/comments",finalField:"comments",lucenePath:"root_codes_comments",CVDomain:"",displayName:"Code Comments",dataType:"string",luceneQueryable:!0},"Code Created":{fieldName:"Created",fieldPath:"/codes/?/created",finalField:"created",lucenePath:"root_codes_created",CVDomain:"",displayName:"Code Created",dataType:"number",luceneQueryable:!0},"Code Created By":{fieldName:"Created By",fieldPath:"/codes/?/createdBy",finalField:"createdBy",lucenePath:"root_codes_createdBy",CVDomain:"",displayName:"Code Created By",dataType:"string",luceneQueryable:!0},"Code Deprecated":{fieldName:"Deprecated",fieldPath:"/codes/?/deprecated",finalField:"deprecated",lucenePath:"root_codes_deprecated",CVDomain:"",displayName:"Code Deprecated",dataType:"boolean",luceneQueryable:!0},"Code Last Edited":{fieldName:"Last Edited",fieldPath:"/codes/?/lastEdited",finalField:"lastEdited",lucenePath:"root_codes_lastEdited",CVDomain:"",displayName:"Code Last Edited",dataType:"number",luceneQueryable:!0},"Code Last Edited By":{fieldName:"Last Edited By",fieldPath:"/codes/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_codes_lastEditedBy",CVDomain:"",displayName:"Code Last Edited By",dataType:"string",luceneQueryable:!0},"Code Type":{fieldName:"Code Type",fieldPath:"/codes/?/type",finalField:"type",lucenePath:"root_codes_type",CVDomain:"CODE_TYPE",displayName:"Code Type",dataType:"string",luceneQueryable:!0},"Code URL":{fieldName:"Url",fieldPath:"/codes/?/url",finalField:"url",lucenePath:"root_codes_url",CVDomain:"",displayName:"Code URL",dataType:"string",luceneQueryable:!0},"Record Created":{fieldName:"Created",fieldPath:"/created",finalField:"created",lucenePath:"root_created",CVDomain:"",displayName:"Record Created",dataType:"number",luceneQueryable:!0},"Record Created By":{fieldName:"Created By",fieldPath:"/createdBy",finalField:"createdBy",lucenePath:"root_createdBy",CVDomain:"",displayName:"Record Created By",dataType:"string",luceneQueryable:!0},"Record Definition Level":{fieldName:"Definition Level",fieldPath:"/definitionLevel",finalField:"definitionLevel",lucenePath:"root_definitionLevel",CVDomain:"",displayName:"Record Definition Level",dataType:"string",luceneQueryable:!0},"Record Definition Type":{fieldName:"Definition Type",fieldPath:"/definitionType",finalField:"definitionType",lucenePath:"root_definitionType",CVDomain:"",displayName:"Record Definition Type",dataType:"string",luceneQueryable:!0},"Record Deprecated":{fieldName:"Deprecated",fieldPath:"/deprecated",finalField:"deprecated",lucenePath:"root_deprecated",CVDomain:"",displayName:"Record Deprecated",dataType:"boolean",luceneQueryable:!0},"Record Last Edited":{fieldName:"Last Edited",fieldPath:"/lastEdited",finalField:"lastEdited",lucenePath:"root_lastEdited",CVDomain:"",displayName:"Record Last Edited",dataType:"number",luceneQueryable:!0},"Record Last Edited By":{fieldName:"Last Edited By",fieldPath:"/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_lastEditedBy",CVDomain:"",displayName:"Record Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Access":{fieldName:"Access",fieldPath:"/mixture/access",finalField:"access",lucenePath:"root_mixture_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Access",dataType:"array ",luceneQueryable:!0},"Mixture Component Access":{fieldName:"Access",fieldPath:"/mixture/components/?/access",finalField:"access",lucenePath:"root_mixture_components_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Component Access",dataType:"array ",luceneQueryable:!0},"Mixture Component Created":{fieldName:"Created",fieldPath:"/mixture/components/?/created",finalField:"created",lucenePath:"root_mixture_components_created",CVDomain:"",displayName:"Mixture Component Created",dataType:"number",luceneQueryable:!0},"Mixture Component Created By":{fieldName:"Created By",fieldPath:"/mixture/components/?/createdBy",finalField:"createdBy",lucenePath:"root_mixture_components_createdBy",CVDomain:"",displayName:"Mixture Component Created By",dataType:"string",luceneQueryable:!0},"Mixture Component Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/components/?/deprecated",finalField:"deprecated",lucenePath:"root_mixture_components_deprecated",CVDomain:"",displayName:"Mixture Component Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Component Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/components/?/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_components_lastEdited",CVDomain:"",displayName:"Mixture Component Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Component Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/components/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_components_lastEditedBy",CVDomain:"",displayName:"Mixture Component Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Access":{fieldName:"Access",fieldPath:"/mixture/components/?/substance/access",finalField:"access",lucenePath:"root_mixture_components_substance_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Component Substance Access",dataType:"array ",luceneQueryable:!0},"Mixture Component ApprovalID":{fieldName:"Approval ID (UNII)",fieldPath:"/mixture/components/?/substance/approvalID",finalField:"approvalID",lucenePath:"root_mixture_components_substance_approvalID",CVDomain:"",displayName:"Mixture Component ApprovalID",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Created":{fieldName:"Created",fieldPath:"/mixture/components/?/substance/created",finalField:"created",lucenePath:"root_mixture_components_substance_created",CVDomain:"",displayName:"Mixture Component Substance Created",dataType:"number",luceneQueryable:!0},"Mixture Component Substance Created By":{fieldName:"Created By",fieldPath:"/mixture/components/?/substance/createdBy",finalField:"createdBy",lucenePath:"root_mixture_components_substance_createdBy",CVDomain:"",displayName:"Mixture Component Substance Created By",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/components/?/substance/deprecated",finalField:"deprecated",lucenePath:"root_mixture_components_substance_deprecated",CVDomain:"",displayName:"Mixture Component Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Component Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/components/?/substance/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_components_substance_lastEdited",CVDomain:"",displayName:"Mixture Component Substance Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Component Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/components/?/substance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_components_substance_lastEditedBy",CVDomain:"",displayName:"Mixture Component Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Component Name":{fieldName:"Ref Pname",fieldPath:"/mixture/components/?/substance/refPname",finalField:"refPname",lucenePath:"root_mixture_components_substance_refPname",CVDomain:"",displayName:"Mixture Component Name",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/mixture/components/?/substance/refuuid",finalField:"refuuid",lucenePath:"root_mixture_components_substance_refuuid",CVDomain:"",displayName:"Mixture Component Substance Refuuid",dataType:"string",luceneQueryable:!0},"Mixture Component Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/mixture/components/?/substance/substanceClass",finalField:"substanceClass",lucenePath:"root_mixture_components_substance_substanceClass",CVDomain:"",displayName:"Mixture Component Substance Substance Class",dataType:"string",luceneQueryable:!0},"Mixture Component Type":{fieldName:"Type",fieldPath:"/mixture/components/?/type",finalField:"type",lucenePath:"root_mixture_components_type",CVDomain:"MIXTURE_TYPE",displayName:"Mixture Component Type",dataType:"string",luceneQueryable:!0},"Mixture Created":{fieldName:"Created",fieldPath:"/mixture/created",finalField:"created",lucenePath:"root_mixture_created",CVDomain:"",displayName:"Mixture Created",dataType:"number",luceneQueryable:!0},"Mixture Created By":{fieldName:"Created By",fieldPath:"/mixture/createdBy",finalField:"createdBy",lucenePath:"root_mixture_createdBy",CVDomain:"",displayName:"Mixture Created By",dataType:"string",luceneQueryable:!0},"Mixture Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/deprecated",finalField:"deprecated",lucenePath:"root_mixture_deprecated",CVDomain:"",displayName:"Mixture Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_lastEdited",CVDomain:"",displayName:"Mixture Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_lastEditedBy",CVDomain:"",displayName:"Mixture Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Access":{fieldName:"Access",fieldPath:"/mixture/parentSubstance/access",finalField:"access",lucenePath:"root_mixture_parentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Mixture Parent Substance Access",dataType:"array ",luceneQueryable:!0},"Mixture Parent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/mixture/parentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_mixture_parentSubstance_approvalID",CVDomain:"",displayName:"Mixture Parent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Created":{fieldName:"Created",fieldPath:"/mixture/parentSubstance/created",finalField:"created",lucenePath:"root_mixture_parentSubstance_created",CVDomain:"",displayName:"Mixture Parent Substance Created",dataType:"number",luceneQueryable:!0},"Mixture Parent Substance Created By":{fieldName:"Created By",fieldPath:"/mixture/parentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_mixture_parentSubstance_createdBy",CVDomain:"",displayName:"Mixture Parent Substance Created By",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/mixture/parentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_mixture_parentSubstance_deprecated",CVDomain:"",displayName:"Mixture Parent Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Mixture Parent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/mixture/parentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_mixture_parentSubstance_lastEdited",CVDomain:"",displayName:"Mixture Parent Substance Last Edited",dataType:"number",luceneQueryable:!0},"Mixture Parent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/mixture/parentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_mixture_parentSubstance_lastEditedBy",CVDomain:"",displayName:"Mixture Parent Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/mixture/parentSubstance/refPname",finalField:"refPname",lucenePath:"root_mixture_parentSubstance_refPname",CVDomain:"",displayName:"Mixture Parent Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/mixture/parentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_mixture_parentSubstance_refuuid",CVDomain:"",displayName:"Mixture Parent Substance Refuuid",dataType:"string",luceneQueryable:!0},"Mixture Parent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/mixture/parentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_mixture_parentSubstance_substanceClass",CVDomain:"",displayName:"Mixture Parent Substance Substance Class",dataType:"string",luceneQueryable:!0},"Modification Access":{fieldName:"Access",fieldPath:"/modifications/access",finalField:"access",lucenePath:"root_modifications_access",CVDomain:"ACCESS_GROUP",displayName:"Modification Access",dataType:"array ",luceneQueryable:!0},"Agent Modification Access":{fieldName:"Access",fieldPath:"/modifications/agentModifications/?/access",finalField:"access",lucenePath:"root_modifications_agentModifications_access",CVDomain:"ACCESS_GROUP",displayName:"Agent Modification Access",dataType:"array ",luceneQueryable:!0},"Agent Modification Agent Modification Process":{fieldName:"Agent Modification Process",fieldPath:"/modifications/agentModifications/?/agentModificationProcess",finalField:"agentModificationProcess",lucenePath:"root_modifications_agentModifications_agentModificationProcess",CVDomain:"AGENT_MODIFICATION_PROCESS",displayName:"Agent Modification Agent Modification Process",dataType:"string",luceneQueryable:!0},"Agent Modification Agent Modification Role":{fieldName:"Agent Modification Role",fieldPath:"/modifications/agentModifications/?/agentModificationRole",finalField:"agentModificationRole",lucenePath:"root_modifications_agentModifications_agentModificationRole",CVDomain:"ROLE",displayName:"Agent Modification Agent Modification Role",dataType:"string",luceneQueryable:!0},"Agent Modification Agent Modification Type":{fieldName:"Agent Modification Type",fieldPath:"/modifications/agentModifications/?/agentModificationType",finalField:"agentModificationType",lucenePath:"root_modifications_agentModifications_agentModificationType",CVDomain:"AGENT_MODIFICATION_TYPE",displayName:"Agent Modification Agent Modification Type",dataType:"string",luceneQueryable:!0},"Agent Substance Access":{fieldName:"Access",fieldPath:"/modifications/agentModifications/?/agentSubstance/access",finalField:"access",lucenePath:"root_modifications_agentModifications_agentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Agent Substance Access",dataType:"array ",luceneQueryable:!0},"Agent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/modifications/agentModifications/?/agentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_modifications_agentModifications_agentSubstance_approvalID",CVDomain:"",displayName:"Agent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Agent Substance Created":{fieldName:"Created",fieldPath:"/modifications/agentModifications/?/agentSubstance/created",finalField:"created",lucenePath:"root_modifications_agentModifications_agentSubstance_created",CVDomain:"",displayName:"Agent Substance Created",dataType:"number",luceneQueryable:!0},"Agent Substance Created By":{fieldName:"Created By",fieldPath:"/modifications/agentModifications/?/agentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_modifications_agentModifications_agentSubstance_createdBy",CVDomain:"",displayName:"Agent Substance Created By",dataType:"string",luceneQueryable:!0},"Agent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/agentModifications/?/agentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_modifications_agentModifications_agentSubstance_deprecated",CVDomain:"",displayName:"Agent Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Agent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/agentModifications/?/agentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_agentModifications_agentSubstance_lastEdited",CVDomain:"",displayName:"Agent Substance Last Edited",dataType:"number",luceneQueryable:!0},"Agent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/agentModifications/?/agentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_agentModifications_agentSubstance_lastEditedBy",CVDomain:"",displayName:"Agent Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Agent Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/modifications/agentModifications/?/agentSubstance/refPname",finalField:"refPname",lucenePath:"root_modifications_agentModifications_agentSubstance_refPname",CVDomain:"",displayName:"Agent Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Agent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/modifications/agentModifications/?/agentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_modifications_agentModifications_agentSubstance_refuuid",CVDomain:"",displayName:"Agent Substance Refuuid",dataType:"string",luceneQueryable:!0},"Agent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/modifications/agentModifications/?/agentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_modifications_agentModifications_agentSubstance_substanceClass",CVDomain:"",displayName:"Agent Substance Substance Class",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Access":{fieldName:"Access",fieldPath:"/modifications/agentModifications/?/amount/access",finalField:"access",lucenePath:"root_modifications_agentModifications_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Agent Modification Amount Access",dataType:"array ",luceneQueryable:!0},"Agent Modification Amount Average":{fieldName:"Average",fieldPath:"/modifications/agentModifications/?/amount/average",finalField:"average",lucenePath:"root_modifications_agentModifications_amount_average",CVDomain:"",displayName:"Agent Modification Amount Average",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Created":{fieldName:"Created",fieldPath:"/modifications/agentModifications/?/amount/created",finalField:"created",lucenePath:"root_modifications_agentModifications_amount_created",CVDomain:"",displayName:"Agent Modification Amount Created",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Created By":{fieldName:"Created By",fieldPath:"/modifications/agentModifications/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_modifications_agentModifications_amount_createdBy",CVDomain:"",displayName:"Agent Modification Amount Created By",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/agentModifications/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_modifications_agentModifications_amount_deprecated",CVDomain:"",displayName:"Agent Modification Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Agent Modification Amount High":{fieldName:"High",fieldPath:"/modifications/agentModifications/?/amount/high",finalField:"high",lucenePath:"root_modifications_agentModifications_amount_high",CVDomain:"",displayName:"Agent Modification Amount High",dataType:"number",luceneQueryable:!0},"Agent Modification Amount High Limit":{fieldName:"High Limit",fieldPath:"/modifications/agentModifications/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_modifications_agentModifications_amount_highLimit",CVDomain:"",displayName:"Agent Modification Amount High Limit",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/agentModifications/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_agentModifications_amount_lastEdited",CVDomain:"",displayName:"Agent Modification Amount Last Edited",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/agentModifications/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_agentModifications_amount_lastEditedBy",CVDomain:"",displayName:"Agent Modification Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Low":{fieldName:"Low",fieldPath:"/modifications/agentModifications/?/amount/low",finalField:"low",lucenePath:"root_modifications_agentModifications_amount_low",CVDomain:"",displayName:"Agent Modification Amount Low",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/modifications/agentModifications/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_modifications_agentModifications_amount_lowLimit",CVDomain:"",displayName:"Agent Modification Amount Low Limit",dataType:"number",luceneQueryable:!0},"Agent Modification Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/modifications/agentModifications/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_modifications_agentModifications_amount_nonNumericValue",CVDomain:"",displayName:"Agent Modification Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Type":{fieldName:"Type",fieldPath:"/modifications/agentModifications/?/amount/type",finalField:"type",lucenePath:"root_modifications_agentModifications_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Agent Modification Amount Type",dataType:"string",luceneQueryable:!0},"Agent Modification Amount Units":{fieldName:"Units",fieldPath:"/modifications/agentModifications/?/amount/units",finalField:"units",lucenePath:"root_modifications_agentModifications_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Agent Modification Amount Units",dataType:"string",luceneQueryable:!0},"Agent Modification Created":{fieldName:"Created",fieldPath:"/modifications/agentModifications/?/created",finalField:"created",lucenePath:"root_modifications_agentModifications_created",CVDomain:"",displayName:"Agent Modification Created",dataType:"number",luceneQueryable:!0},"Agent Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/agentModifications/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_agentModifications_createdBy",CVDomain:"",displayName:"Agent Modification Created By",dataType:"string",luceneQueryable:!0},"Agent Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/agentModifications/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_agentModifications_deprecated",CVDomain:"",displayName:"Agent Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Agent Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/agentModifications/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_agentModifications_lastEdited",CVDomain:"",displayName:"Agent Modification Last Edited",dataType:"number",luceneQueryable:!0},"Agent Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/agentModifications/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_agentModifications_lastEditedBy",CVDomain:"",displayName:"Agent Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Agent Modification Modification Group":{fieldName:"Modification Group",fieldPath:"/modifications/agentModifications/?/modificationGroup",finalField:"modificationGroup",lucenePath:"root_modifications_agentModifications_modificationGroup",CVDomain:"",displayName:"Agent Modification Modification Group",dataType:"string",luceneQueryable:!0},"Modification Created":{fieldName:"Created",fieldPath:"/modifications/created",finalField:"created",lucenePath:"root_modifications_created",CVDomain:"",displayName:"Modification Created",dataType:"number",luceneQueryable:!0},"Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/createdBy",finalField:"createdBy",lucenePath:"root_modifications_createdBy",CVDomain:"",displayName:"Modification Created By",dataType:"string",luceneQueryable:!0},"Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/deprecated",finalField:"deprecated",lucenePath:"root_modifications_deprecated",CVDomain:"",displayName:"Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_lastEdited",CVDomain:"",displayName:"Modification Last Edited",dataType:"number",luceneQueryable:!0},"Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_lastEditedBy",CVDomain:"",displayName:"Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Access":{fieldName:"Access",fieldPath:"/modifications/physicalModifications/?/access",finalField:"access",lucenePath:"root_modifications_physicalModifications_access",CVDomain:"ACCESS_GROUP",displayName:"Physical Modification Access",dataType:"array ",luceneQueryable:!0},"Physical Modification Created":{fieldName:"Created",fieldPath:"/modifications/physicalModifications/?/created",finalField:"created",lucenePath:"root_modifications_physicalModifications_created",CVDomain:"",displayName:"Physical Modification Created",dataType:"number",luceneQueryable:!0},"Physical Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/physicalModifications/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_physicalModifications_createdBy",CVDomain:"",displayName:"Physical Modification Created By",dataType:"string",luceneQueryable:!0},"Physical Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/physicalModifications/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_physicalModifications_deprecated",CVDomain:"",displayName:"Physical Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Physical Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/physicalModifications/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_physicalModifications_lastEdited",CVDomain:"",displayName:"Physical Modification Last Edited",dataType:"number",luceneQueryable:!0},"Physical Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/physicalModifications/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_physicalModifications_lastEditedBy",CVDomain:"",displayName:"Physical Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Modification Group":{fieldName:"Modification Group",fieldPath:"/modifications/physicalModifications/?/modificationGroup",finalField:"modificationGroup",lucenePath:"root_modifications_physicalModifications_modificationGroup",CVDomain:"",displayName:"Physical Modification Modification Group",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Access":{fieldName:"Access",fieldPath:"/modifications/physicalModifications/?/parameters/?/access",finalField:"access",lucenePath:"root_modifications_physicalModifications_parameters_access",CVDomain:"ACCESS_GROUP",displayName:"Physical Modification Parameter Access",dataType:"array ",luceneQueryable:!0},"Physical Modification Amount Access":{fieldName:"Access",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/access",finalField:"access",lucenePath:"root_modifications_physicalModifications_parameters_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Physical Modification Amount Access",dataType:"array ",luceneQueryable:!0},"Physical Modification Amount Average":{fieldName:"Average",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/average",finalField:"average",lucenePath:"root_modifications_physicalModifications_parameters_amount_average",CVDomain:"",displayName:"Physical Modification Amount Average",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Created":{fieldName:"Created",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/created",finalField:"created",lucenePath:"root_modifications_physicalModifications_parameters_amount_created",CVDomain:"",displayName:"Physical Modification Amount Created",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Created By":{fieldName:"Created By",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_modifications_physicalModifications_parameters_amount_createdBy",CVDomain:"",displayName:"Physical Modification Amount Created By",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_modifications_physicalModifications_parameters_amount_deprecated",CVDomain:"",displayName:"Physical Modification Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Physical Modification Amount High Limit":{fieldName:"High Limit",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_modifications_physicalModifications_parameters_amount_highLimit",CVDomain:"",displayName:"Physical Modification Amount High Limit",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_physicalModifications_parameters_amount_lastEdited",CVDomain:"",displayName:"Physical Modification Amount Last Edited",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_physicalModifications_parameters_amount_lastEditedBy",CVDomain:"",displayName:"Physical Modification Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_modifications_physicalModifications_parameters_amount_lowLimit",CVDomain:"",displayName:"Physical Modification Amount Low Limit",dataType:"number",luceneQueryable:!0},"Physical Modification Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_modifications_physicalModifications_parameters_amount_nonNumericValue",CVDomain:"",displayName:"Physical Modification Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Type":{fieldName:"Type",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/type",finalField:"type",lucenePath:"root_modifications_physicalModifications_parameters_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Physical Modification Amount Type",dataType:"string",luceneQueryable:!0},"Physical Modification Amount Units":{fieldName:"Units",fieldPath:"/modifications/physicalModifications/?/parameters/?/amount/units",finalField:"units",lucenePath:"root_modifications_physicalModifications_parameters_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Physical Modification Amount Units",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Created":{fieldName:"Created",fieldPath:"/modifications/physicalModifications/?/parameters/?/created",finalField:"created",lucenePath:"root_modifications_physicalModifications_parameters_created",CVDomain:"",displayName:"Physical Modification Parameter Created",dataType:"number",luceneQueryable:!0},"Physical Modification Parameter Created By":{fieldName:"Created By",fieldPath:"/modifications/physicalModifications/?/parameters/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_physicalModifications_parameters_createdBy",CVDomain:"",displayName:"Physical Modification Parameter Created By",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/physicalModifications/?/parameters/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_physicalModifications_parameters_deprecated",CVDomain:"",displayName:"Physical Modification Parameter Deprecated",dataType:"boolean",luceneQueryable:!0},"Physical Modification Parameter Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/physicalModifications/?/parameters/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_physicalModifications_parameters_lastEdited",CVDomain:"",displayName:"Physical Modification Parameter Last Edited",dataType:"number",luceneQueryable:!0},"Physical Modification Parameter Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/physicalModifications/?/parameters/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_physicalModifications_parameters_lastEditedBy",CVDomain:"",displayName:"Physical Modification Parameter Last Edited By",dataType:"string",luceneQueryable:!0},"Physical Modification Parameter Parameter Name":{fieldName:"Parameter Name",fieldPath:"/modifications/physicalModifications/?/parameters/?/parameterName",finalField:"parameterName",lucenePath:"root_modifications_physicalModifications_parameters_parameterName",CVDomain:"",displayName:"Physical Modification Parameter Parameter Name",dataType:"string",luceneQueryable:!0},"Physical Modification Physical Modification Role":{fieldName:"Physicalmodificationrole",fieldPath:"/modifications/physicalModifications/?/physicalModificationRole",finalField:"physicalModificationRole",lucenePath:"root_modifications_physicalModifications_physicalModificationRole",CVDomain:"PHYSICAL_MODIFICATION_ROLE",displayName:"Physical Modification Physical Modification Role",dataType:"string",luceneQueryable:!0},"Structural Modification Access":{fieldName:"Access",fieldPath:"/modifications/structuralModifications/?/access",finalField:"access",lucenePath:"root_modifications_structuralModifications_access",CVDomain:"ACCESS_GROUP",displayName:"Structural Modification Access",dataType:"array ",luceneQueryable:!0},"Structural Modification Created":{fieldName:"Created",fieldPath:"/modifications/structuralModifications/?/created",finalField:"created",lucenePath:"root_modifications_structuralModifications_created",CVDomain:"",displayName:"Structural Modification Created",dataType:"number",luceneQueryable:!0},"Structural Modification Created By":{fieldName:"Created By",fieldPath:"/modifications/structuralModifications/?/createdBy",finalField:"createdBy",lucenePath:"root_modifications_structuralModifications_createdBy",CVDomain:"",displayName:"Structural Modification Created By",dataType:"string",luceneQueryable:!0},"Structural Modification Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/structuralModifications/?/deprecated",finalField:"deprecated",lucenePath:"root_modifications_structuralModifications_deprecated",CVDomain:"",displayName:"Structural Modification Deprecated",dataType:"boolean",luceneQueryable:!0},"Structural Modification Extent":{fieldName:"Extent",fieldPath:"/modifications/structuralModifications/?/extent",finalField:"extent",lucenePath:"root_modifications_structuralModifications_extent",CVDomain:"EXTENT_TYPE",displayName:"Structural Modification Extent",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Access":{fieldName:"Access",fieldPath:"/modifications/structuralModifications/?/extentAmount/access",finalField:"access",lucenePath:"root_modifications_structuralModifications_extentAmount_access",CVDomain:"ACCESS_GROUP",displayName:"Structural Modification Extent Amount Access",dataType:"array ",luceneQueryable:!0},"Structural Modification Extent Amount Average":{fieldName:"Average",fieldPath:"/modifications/structuralModifications/?/extentAmount/average",finalField:"average",lucenePath:"root_modifications_structuralModifications_extentAmount_average",CVDomain:"",displayName:"Structural Modification Extent Amount Average",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Created":{fieldName:"Created",fieldPath:"/modifications/structuralModifications/?/extentAmount/created",finalField:"created",lucenePath:"root_modifications_structuralModifications_extentAmount_created",CVDomain:"",displayName:"Structural Modification Extent Amount Created",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Created By":{fieldName:"Created By",fieldPath:"/modifications/structuralModifications/?/extentAmount/createdBy",finalField:"createdBy",lucenePath:"root_modifications_structuralModifications_extentAmount_createdBy",CVDomain:"",displayName:"Structural Modification Extent Amount Created By",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/structuralModifications/?/extentAmount/deprecated",finalField:"deprecated",lucenePath:"root_modifications_structuralModifications_extentAmount_deprecated",CVDomain:"",displayName:"Structural Modification Extent Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Structural Modification Extent Amount High":{fieldName:"High",fieldPath:"/modifications/structuralModifications/?/extentAmount/high",finalField:"high",lucenePath:"root_modifications_structuralModifications_extentAmount_high",CVDomain:"",displayName:"Structural Modification Extent Amount High",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount High Limit":{fieldName:"High Limit",fieldPath:"/modifications/structuralModifications/?/extentAmount/highLimit",finalField:"highLimit",lucenePath:"root_modifications_structuralModifications_extentAmount_highLimit",CVDomain:"",displayName:"Structural Modification Extent Amount High Limit",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/structuralModifications/?/extentAmount/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_structuralModifications_extentAmount_lastEdited",CVDomain:"",displayName:"Structural Modification Extent Amount Last Edited",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/structuralModifications/?/extentAmount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_structuralModifications_extentAmount_lastEditedBy",CVDomain:"",displayName:"Structural Modification Extent Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Low":{fieldName:"Low",fieldPath:"/modifications/structuralModifications/?/extentAmount/low",finalField:"low",lucenePath:"root_modifications_structuralModifications_extentAmount_low",CVDomain:"",displayName:"Structural Modification Extent Amount Low",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/modifications/structuralModifications/?/extentAmount/lowLimit",finalField:"lowLimit",lucenePath:"root_modifications_structuralModifications_extentAmount_lowLimit",CVDomain:"",displayName:"Structural Modification Extent Amount Low Limit",dataType:"number",luceneQueryable:!0},"Structural Modification Extent Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/modifications/structuralModifications/?/extentAmount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_modifications_structuralModifications_extentAmount_nonNumericValue",CVDomain:"",displayName:"Structural Modification Extent Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Type":{fieldName:"Type",fieldPath:"/modifications/structuralModifications/?/extentAmount/type",finalField:"type",lucenePath:"root_modifications_structuralModifications_extentAmount_type",CVDomain:"AMOUNT_TYPE",displayName:"Structural Modification Extent Amount Type",dataType:"string",luceneQueryable:!0},"Structural Modification Extent Amount Units":{fieldName:"Units",fieldPath:"/modifications/structuralModifications/?/extentAmount/units",finalField:"units",lucenePath:"root_modifications_structuralModifications_extentAmount_units",CVDomain:"AMOUNT_UNIT",displayName:"Structural Modification Extent Amount Units",dataType:"string",luceneQueryable:!0},"Structural Modification Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/structuralModifications/?/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_structuralModifications_lastEdited",CVDomain:"",displayName:"Structural Modification Last Edited",dataType:"number",luceneQueryable:!0},"Structural Modification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/structuralModifications/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_structuralModifications_lastEditedBy",CVDomain:"",displayName:"Structural Modification Last Edited By",dataType:"string",luceneQueryable:!0},"Structural Modification Locationtype":{fieldName:"Location Type",fieldPath:"/modifications/structuralModifications/?/locationType",finalField:"locationType",lucenePath:"root_modifications_structuralModifications_locationType",CVDomain:"LOCATION_TYPE",displayName:"Structural Modification Locationtype",dataType:"string",luceneQueryable:!0},"Structural Modification Modification Group":{fieldName:"Modification Group",fieldPath:"/modifications/structuralModifications/?/modificationGroup",finalField:"modificationGroup",lucenePath:"root_modifications_structuralModifications_modificationGroup",CVDomain:"",displayName:"Structural Modification Modification Group",dataType:"string",luceneQueryable:!0},"Molecular Fragment Access":{fieldName:"Access",fieldPath:"/modifications/structuralModifications/?/molecularFragment/access",finalField:"access",lucenePath:"root_modifications_structuralModifications_molecularFragment_access",CVDomain:"ACCESS_GROUP",displayName:"Molecular Fragment Access",dataType:"array ",luceneQueryable:!0},"Molecular Fragment Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/modifications/structuralModifications/?/molecularFragment/approvalID",finalField:"approvalID",lucenePath:"root_modifications_structuralModifications_molecularFragment_approvalID",CVDomain:"",displayName:"Molecular Fragment Approval ID",dataType:"string",luceneQueryable:!0},"Molecular Fragment Created":{fieldName:"Created",fieldPath:"/modifications/structuralModifications/?/molecularFragment/created",finalField:"created",lucenePath:"root_modifications_structuralModifications_molecularFragment_created",CVDomain:"",displayName:"Molecular Fragment Created",dataType:"number",luceneQueryable:!0},"Molecular Fragment Created By":{fieldName:"Created By",fieldPath:"/modifications/structuralModifications/?/molecularFragment/createdBy",finalField:"createdBy",lucenePath:"root_modifications_structuralModifications_molecularFragment_createdBy",CVDomain:"",displayName:"Molecular Fragment Created By",dataType:"string",luceneQueryable:!0},"Molecular Fragment Deprecated":{fieldName:"Deprecated",fieldPath:"/modifications/structuralModifications/?/molecularFragment/deprecated",finalField:"deprecated",lucenePath:"root_modifications_structuralModifications_molecularFragment_deprecated",CVDomain:"",displayName:"Molecular Fragment Deprecated",dataType:"boolean",luceneQueryable:!0},"Molecular Fragment Last Edited":{fieldName:"Last Edited",fieldPath:"/modifications/structuralModifications/?/molecularFragment/lastEdited",finalField:"lastEdited",lucenePath:"root_modifications_structuralModifications_molecularFragment_lastEdited",CVDomain:"",displayName:"Molecular Fragment Last Edited",dataType:"number",luceneQueryable:!0},"Molecular Fragment Last Edited By":{fieldName:"Last Edited By",fieldPath:"/modifications/structuralModifications/?/molecularFragment/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_modifications_structuralModifications_molecularFragment_lastEditedBy",CVDomain:"",displayName:"Molecular Fragment Last Edited By",dataType:"string",luceneQueryable:!0},"Molecular Fragment Preferred Name":{fieldName:"Ref Pname",fieldPath:"/modifications/structuralModifications/?/molecularFragment/refPname",finalField:"refPname",lucenePath:"root_modifications_structuralModifications_molecularFragment_refPname",CVDomain:"",displayName:"Molecular Fragment Preferred Name",dataType:"string",luceneQueryable:!0},"Molecular Fragment Refuuid":{fieldName:"Refuuid",fieldPath:"/modifications/structuralModifications/?/molecularFragment/refuuid",finalField:"refuuid",lucenePath:"root_modifications_structuralModifications_molecularFragment_refuuid",CVDomain:"",displayName:"Molecular Fragment Refuuid",dataType:"string",luceneQueryable:!0},"Molecular Fragment Substance Class":{fieldName:"Substance Class",fieldPath:"/modifications/structuralModifications/?/molecularFragment/substanceClass",finalField:"substanceClass",lucenePath:"root_modifications_structuralModifications_molecularFragment_substanceClass",CVDomain:"",displayName:"Molecular Fragment Substance Class",dataType:"string",luceneQueryable:!0},"Structural Modification Residuemodified":{fieldName:"Residue Modified",fieldPath:"/modifications/structuralModifications/?/residueModified",finalField:"residueModified",lucenePath:"root_modifications_structuralModifications_residueModified",CVDomain:"",displayName:"Structural Modification Residuemodified",dataType:"string",luceneQueryable:!0},"Structural Modification Structural Modification Type":{fieldName:"Structural Modification Type",fieldPath:"/modifications/structuralModifications/?/structuralModificationType",finalField:"structuralModificationType",lucenePath:"root_modifications_structuralModifications_structuralModificationType",CVDomain:"STRUCTURAL_MODIFICATION_TYPE",displayName:"Structural Modification Structural Modification Type",dataType:"string",luceneQueryable:!0},"Moiety Access":{fieldName:"Access",fieldPath:"/moieties/?/access",finalField:"access",lucenePath:"root_moieties_access",CVDomain:"ACCESS_GROUP",displayName:"Moiety Access",dataType:"array ",luceneQueryable:!0},"Count Amount Access":{fieldName:"Access",fieldPath:"/moieties/?/countAmount/access",finalField:"access",lucenePath:"root_moieties_countAmount_access",CVDomain:"ACCESS_GROUP",displayName:"Count Amount Access",dataType:"array ",luceneQueryable:!0},"Count Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/moieties/?/countAmount/deprecated",finalField:"deprecated",lucenePath:"root_moieties_countAmount_deprecated",CVDomain:"",displayName:"Count Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Moiety Created":{fieldName:"Created",fieldPath:"/moieties/?/created",finalField:"created",lucenePath:"root_moieties_created",CVDomain:"",displayName:"Moiety Created",dataType:"number",luceneQueryable:!0},"Moiety Created By":{fieldName:"Created By",fieldPath:"/moieties/?/createdBy",finalField:"createdBy",lucenePath:"root_moieties_createdBy",CVDomain:"",displayName:"Moiety Created By",dataType:"string",luceneQueryable:!0},"Moiety Deprecated":{fieldName:"Deprecated",fieldPath:"/moieties/?/deprecated",finalField:"deprecated",lucenePath:"root_moieties_deprecated",CVDomain:"",displayName:"Moiety Deprecated",dataType:"boolean",luceneQueryable:!0},"Moiety Last Edited":{fieldName:"Last Edited",fieldPath:"/moieties/?/lastEdited",finalField:"lastEdited",lucenePath:"root_moieties_lastEdited",CVDomain:"",displayName:"Moiety Last Edited",dataType:"number",luceneQueryable:!0},"Moiety Last Edited By":{fieldName:"Last Edited By",fieldPath:"/moieties/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_moieties_lastEditedBy",CVDomain:"",displayName:"Moiety Last Edited By",dataType:"string",luceneQueryable:!0},"Moiety Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/moieties/?/stereochemistry",finalField:"stereochemistry",lucenePath:"root_moieties_stereochemistry",CVDomain:"STEREOCHEMISTRY_TYPE",displayName:"Moiety Stereochemistry",dataType:"string",luceneQueryable:!0},"Name Access":{fieldName:"Access",fieldPath:"/names/?/access",finalField:"access",lucenePath:"root_names_access",CVDomain:"ACCESS_GROUP",displayName:"Name Access",dataType:"array ",luceneQueryable:!0},"Name Created":{fieldName:"Created",fieldPath:"/names/?/created",finalField:"created",lucenePath:"root_names_created",CVDomain:"",displayName:"Name Created",dataType:"number",luceneQueryable:!0},"Name Created By":{fieldName:"Created By",fieldPath:"/names/?/createdBy",finalField:"createdBy",lucenePath:"root_names_createdBy",CVDomain:"",displayName:"Name Created By",dataType:"string",luceneQueryable:!0},"Name Deprecated":{fieldName:"Deprecated",fieldPath:"/names/?/deprecated",finalField:"deprecated",lucenePath:"root_names_deprecated",CVDomain:"",displayName:"Name Deprecated",dataType:"boolean",luceneQueryable:!0},"Name Display Name":{fieldName:"Display Name",fieldPath:"/names/?/displayName",finalField:"displayName",lucenePath:"root_names_displayName",CVDomain:"",displayName:"Name Display Name",dataType:"boolean",luceneQueryable:!0},"Name Last Edited":{fieldName:"Last Edited",fieldPath:"/names/?/lastEdited",finalField:"lastEdited",lucenePath:"root_names_lastEdited",CVDomain:"",displayName:"Name Last Edited",dataType:"number",luceneQueryable:!0},"Name Last Edited By":{fieldName:"Last Edited By",fieldPath:"/names/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_names_lastEditedBy",CVDomain:"",displayName:"Name Last Edited By",dataType:"string",luceneQueryable:!0},"Any Name":{fieldName:"Name",fieldPath:"/names/?/name",finalField:"name",lucenePath:"root_names_name",CVDomain:"",displayName:"Any Name",dataType:"string",luceneQueryable:!0},"Naming Organization Access":{fieldName:"Access",fieldPath:"/names/?/nameOrgs/?/access",finalField:"access",lucenePath:"root_names_nameOrgs_access",CVDomain:"ACCESS_GROUP",displayName:"Naming Organization Access",dataType:"array ",luceneQueryable:!0},"Naming Organization Created":{fieldName:"Created",fieldPath:"/names/?/nameOrgs/?/created",finalField:"created",lucenePath:"root_names_nameOrgs_created",CVDomain:"",displayName:"Naming Organization Created",dataType:"number",luceneQueryable:!0},"Naming Organization Created By":{fieldName:"Created By",fieldPath:"/names/?/nameOrgs/?/createdBy",finalField:"createdBy",lucenePath:"root_names_nameOrgs_createdBy",CVDomain:"",displayName:"Naming Organization Created By",dataType:"string",luceneQueryable:!0},"Naming Organization Deprecated":{fieldName:"Deprecated",fieldPath:"/names/?/nameOrgs/?/deprecated",finalField:"deprecated",lucenePath:"root_names_nameOrgs_deprecated",CVDomain:"",displayName:"Naming Organization Deprecated",dataType:"boolean",luceneQueryable:!0},"Naming Organization Deprecated Date":{fieldName:"Deprecated Date",fieldPath:"/names/?/nameOrgs/?/deprecatedDate",finalField:"deprecatedDate",lucenePath:"root_names_nameOrgs_deprecatedDate",CVDomain:"",displayName:"Naming Organization Deprecated Date",dataType:"number",luceneQueryable:!0},"Naming Organization Last Edited":{fieldName:"Last Edited",fieldPath:"/names/?/nameOrgs/?/lastEdited",finalField:"lastEdited",lucenePath:"root_names_nameOrgs_lastEdited",CVDomain:"",displayName:"Naming Organization Last Edited",dataType:"number",luceneQueryable:!0},"Naming Organization Last Edited By":{fieldName:"Last Edited By",fieldPath:"/names/?/nameOrgs/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_names_nameOrgs_lastEditedBy",CVDomain:"",displayName:"Naming Organization Last Edited By",dataType:"string",luceneQueryable:!0},"Naming Organization":{fieldName:"Name Org",fieldPath:"/names/?/nameOrgs/?/nameOrg",finalField:"nameOrg",lucenePath:"root_names_nameOrgs_nameOrg",CVDomain:"NAME_ORG",displayName:"Naming Organization",dataType:"string",luceneQueryable:!0},"Name Preferred":{fieldName:"Preferred Status",fieldPath:"/names/?/preferred",finalField:"preferred",lucenePath:"root_names_preferred",CVDomain:"",displayName:"Name Preferred",dataType:"boolean",luceneQueryable:!0},"Name Type Code":{fieldName:"Type",fieldPath:"/names/?/type",finalField:"type",lucenePath:"root_names_type",CVDomain:"NAME_TYPE",displayName:"Name Type Code",dataType:"string",luceneQueryable:!0},"Note Access":{fieldName:"Access",fieldPath:"/notes/?/access",finalField:"access",lucenePath:"root_notes_access",CVDomain:"ACCESS_GROUP",displayName:"Note Access",dataType:"array ",luceneQueryable:!0},"Note Created":{fieldName:"Created",fieldPath:"/notes/?/created",finalField:"created",lucenePath:"root_notes_created",CVDomain:"",displayName:"Note Created",dataType:"number",luceneQueryable:!0},"Note Created By":{fieldName:"Created By",fieldPath:"/notes/?/createdBy",finalField:"createdBy",lucenePath:"root_notes_createdBy",CVDomain:"",displayName:"Note Created By",dataType:"string",luceneQueryable:!0},"Note Deprecated":{fieldName:"Deprecated",fieldPath:"/notes/?/deprecated",finalField:"deprecated",lucenePath:"root_notes_deprecated",CVDomain:"",displayName:"Note Deprecated",dataType:"boolean",luceneQueryable:!0},"Note Last Edited":{fieldName:"Last Edited",fieldPath:"/notes/?/lastEdited",finalField:"lastEdited",lucenePath:"root_notes_lastEdited",CVDomain:"",displayName:"Note Last Edited",dataType:"number",luceneQueryable:!0},"Note Last Edited By":{fieldName:"Last Edited By",fieldPath:"/notes/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_notes_lastEditedBy",CVDomain:"",displayName:"Note Last Edited By",dataType:"string",luceneQueryable:!0},Note:{fieldName:"Notes",fieldPath:"/notes/?/note",finalField:"note",lucenePath:"root_notes_note",CVDomain:"",displayName:"Note",dataType:"string",luceneQueryable:!0},"Nucleic Acid Access":{fieldName:"Access",fieldPath:"/nucleicAcid/access",finalField:"access",lucenePath:"root_nucleicAcid_access",CVDomain:"ACCESS_GROUP",displayName:"Nucleic Acid Access",dataType:"array ",luceneQueryable:!0},"Nucleic Acid Created":{fieldName:"Created",fieldPath:"/nucleicAcid/created",finalField:"created",lucenePath:"root_nucleicAcid_created",CVDomain:"",displayName:"Nucleic Acid Created",dataType:"number",luceneQueryable:!0},"Nucleic Acid Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_createdBy",CVDomain:"",displayName:"Nucleic Acid Created By",dataType:"string",luceneQueryable:!0},"Nucleic Acid Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_deprecated",CVDomain:"",displayName:"Nucleic Acid Deprecated",dataType:"boolean",luceneQueryable:!0},"Nucleic Acid Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_lastEdited",CVDomain:"",displayName:"Nucleic Acid Last Edited",dataType:"number",luceneQueryable:!0},"Nucleic Acid Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_lastEditedBy",CVDomain:"",displayName:"Nucleic Acid Last Edited By",dataType:"string",luceneQueryable:!0},"Linkage Access":{fieldName:"Access",fieldPath:"/nucleicAcid/linkages/?/access",finalField:"access",lucenePath:"root_nucleicAcid_linkages_access",CVDomain:"ACCESS_GROUP",displayName:"Linkage Access",dataType:"array ",luceneQueryable:!0},"Linkage Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/linkages/?/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_linkages_deprecated",CVDomain:"",displayName:"Linkage Deprecated",dataType:"boolean",luceneQueryable:!0},"Nucleic Acid Subunit Access":{fieldName:"Access",fieldPath:"/nucleicAcid/subunits/?/access",finalField:"access",lucenePath:"root_nucleicAcid_subunits_access",CVDomain:"ACCESS_GROUP",displayName:"Nucleic Acid Subunit Access",dataType:"array ",luceneQueryable:!0},"Nucleic Acid Subunit Created":{fieldName:"Created",fieldPath:"/nucleicAcid/subunits/?/created",finalField:"created",lucenePath:"root_nucleicAcid_subunits_created",CVDomain:"",displayName:"Nucleic Acid Subunit Created",dataType:"number",luceneQueryable:!0},"Nucleic Acid Subunit Created By":{fieldName:"Created By",fieldPath:"/nucleicAcid/subunits/?/createdBy",finalField:"createdBy",lucenePath:"root_nucleicAcid_subunits_createdBy",CVDomain:"",displayName:"Nucleic Acid Subunit Created By",dataType:"string",luceneQueryable:!0},"Nucleic Acid Subunit Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/subunits/?/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_subunits_deprecated",CVDomain:"",displayName:"Nucleic Acid Subunit Deprecated",dataType:"boolean",luceneQueryable:!0},"Nucleic Acid Subunit Last Edited":{fieldName:"Last Edited",fieldPath:"/nucleicAcid/subunits/?/lastEdited",finalField:"lastEdited",lucenePath:"root_nucleicAcid_subunits_lastEdited",CVDomain:"",displayName:"Nucleic Acid Subunit Last Edited",dataType:"number",luceneQueryable:!0},"Nucleic Acid Subunit Last Edited By":{fieldName:"Last Edited By",fieldPath:"/nucleicAcid/subunits/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_nucleicAcid_subunits_lastEditedBy",CVDomain:"",displayName:"Nucleic Acid Subunit Last Edited By",dataType:"string",luceneQueryable:!0},"Nucleic Acid Subunit Sequence":{fieldName:"Sequence",fieldPath:"/nucleicAcid/subunits/?/sequence",finalField:"sequence",lucenePath:"root_nucleicAcid_subunits_sequence",CVDomain:"",displayName:"Nucleic Acid Subunit Sequence",dataType:"string",luceneQueryable:!0},"Nucleic Acid Subunit Subunit Index":{fieldName:"Subunit Index",fieldPath:"/nucleicAcid/subunits/?/subunitIndex",finalField:"subunitIndex",lucenePath:"root_nucleicAcid_subunits_subunitIndex",CVDomain:"",displayName:"Nucleic Acid Subunit Subunit Index",dataType:"number",luceneQueryable:!0},"Sugar Access":{fieldName:"Access",fieldPath:"/nucleicAcid/sugars/?/access",finalField:"access",lucenePath:"root_nucleicAcid_sugars_access",CVDomain:"ACCESS_GROUP",displayName:"Sugar Access",dataType:"array ",luceneQueryable:!0},"Sugar Deprecated":{fieldName:"Deprecated",fieldPath:"/nucleicAcid/sugars/?/deprecated",finalField:"deprecated",lucenePath:"root_nucleicAcid_sugars_deprecated",CVDomain:"",displayName:"Sugar Deprecated",dataType:"boolean",luceneQueryable:!0},"Polymer Access":{fieldName:"Access",fieldPath:"/polymer/access",finalField:"access",lucenePath:"root_polymer_access",CVDomain:"ACCESS_GROUP",displayName:"Polymer Access",dataType:"array ",luceneQueryable:!0},"Polymer Classification Access":{fieldName:"Access",fieldPath:"/polymer/classification/access",finalField:"access",lucenePath:"root_polymer_classification_access",CVDomain:"ACCESS_GROUP",displayName:"Polymer Classification Access",dataType:"array ",luceneQueryable:!0},"Polymer Classification Created":{fieldName:"Created",fieldPath:"/polymer/classification/created",finalField:"created",lucenePath:"root_polymer_classification_created",CVDomain:"",displayName:"Polymer Classification Created",dataType:"number",luceneQueryable:!0},"Polymer Classification Created By":{fieldName:"Created By",fieldPath:"/polymer/classification/createdBy",finalField:"createdBy",lucenePath:"root_polymer_classification_createdBy",CVDomain:"",displayName:"Polymer Classification Created By",dataType:"string",luceneQueryable:!0},"Polymer Classification Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/classification/deprecated",finalField:"deprecated",lucenePath:"root_polymer_classification_deprecated",CVDomain:"",displayName:"Polymer Classification Deprecated",dataType:"boolean",luceneQueryable:!0},"Polymer Classification Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/classification/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_classification_lastEdited",CVDomain:"",displayName:"Polymer Classification Last Edited",dataType:"number",luceneQueryable:!0},"Polymer Classification Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/classification/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_classification_lastEditedBy",CVDomain:"",displayName:"Polymer Classification Last Edited By",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Access":{fieldName:"Access",fieldPath:"/polymer/classification/parentSubstance/access",finalField:"access",lucenePath:"root_polymer_classification_parentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Polymer Parent Substance Access",dataType:"array ",luceneQueryable:!0},"Polymer Parent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/polymer/classification/parentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_polymer_classification_parentSubstance_approvalID",CVDomain:"",displayName:"Polymer Parent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Created":{fieldName:"Created",fieldPath:"/polymer/classification/parentSubstance/created",finalField:"created",lucenePath:"root_polymer_classification_parentSubstance_created",CVDomain:"",displayName:"Polymer Parent Substance Created",dataType:"number",luceneQueryable:!0},"Polymer Parent Substance Created By":{fieldName:"Created By",fieldPath:"/polymer/classification/parentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_polymer_classification_parentSubstance_createdBy",CVDomain:"",displayName:"Polymer Parent Substance Created By",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/classification/parentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_polymer_classification_parentSubstance_deprecated",CVDomain:"",displayName:"Polymer Parent Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Polymer Parent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/classification/parentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_classification_parentSubstance_lastEdited",CVDomain:"",displayName:"Polymer Parent Substance Last Edited",dataType:"number",luceneQueryable:!0},"Polymer Parent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/classification/parentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_classification_parentSubstance_lastEditedBy",CVDomain:"",displayName:"Polymer Parent Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/polymer/classification/parentSubstance/refPname",finalField:"refPname",lucenePath:"root_polymer_classification_parentSubstance_refPname",CVDomain:"",displayName:"Polymer Parent Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/polymer/classification/parentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_polymer_classification_parentSubstance_refuuid",CVDomain:"",displayName:"Polymer Parent Substance Refuuid",dataType:"string",luceneQueryable:!0},"Polymer Parent Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/polymer/classification/parentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_polymer_classification_parentSubstance_substanceClass",CVDomain:"",displayName:"Polymer Parent Substance Substance Class",dataType:"string",luceneQueryable:!0},"Polymer Class":{fieldName:"Polymer Class",fieldPath:"/polymer/classification/polymerClass",finalField:"polymerClass",lucenePath:"root_polymer_classification_polymerClass",CVDomain:"POLYMER_CLASS",displayName:"Polymer Class",dataType:"string",luceneQueryable:!0},"Polymer Geometry":{fieldName:"Polymer Geometry",fieldPath:"/polymer/classification/polymerGeometry",finalField:"polymerGeometry",lucenePath:"root_polymer_classification_polymerGeometry",CVDomain:"POLYMER_GEOMETRY",displayName:"Polymer Geometry",dataType:"string",luceneQueryable:!0},"Polymer Classification Source Type":{fieldName:"Sourcetype",fieldPath:"/polymer/classification/sourceType",finalField:"sourceType",lucenePath:"root_polymer_classification_sourceType",CVDomain:"POLYMER_SOURCE_TYPE",displayName:"Polymer Classification Source Type",dataType:"string",luceneQueryable:!0},"Polymer Created":{fieldName:"Created",fieldPath:"/polymer/created",finalField:"created",lucenePath:"root_polymer_created",CVDomain:"",displayName:"Polymer Created",dataType:"number",luceneQueryable:!0},"Polymer Created By":{fieldName:"Created By",fieldPath:"/polymer/createdBy",finalField:"createdBy",lucenePath:"root_polymer_createdBy",CVDomain:"",displayName:"Polymer Created By",dataType:"string",luceneQueryable:!0},"Polymer Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/deprecated",finalField:"deprecated",lucenePath:"root_polymer_deprecated",CVDomain:"",displayName:"Polymer Deprecated",dataType:"boolean",luceneQueryable:!0},"Display Structure Access":{fieldName:"Access",fieldPath:"/polymer/displayStructure/access",finalField:"access",lucenePath:"root_polymer_displayStructure_access",CVDomain:"ACCESS_GROUP",displayName:"Display Structure Access",dataType:"array ",luceneQueryable:!0},"Display Structure Charge":{fieldName:"Charge",fieldPath:"/polymer/displayStructure/charge",finalField:"charge",lucenePath:"root_polymer_displayStructure_charge",CVDomain:"",displayName:"Display Structure Charge",dataType:"number",luceneQueryable:!0},"Display Structure Count":{fieldName:"Count",fieldPath:"/polymer/displayStructure/count",finalField:"count",lucenePath:"root_polymer_displayStructure_count",CVDomain:"",displayName:"Display Structure Count",dataType:"number",luceneQueryable:!0},"Display Structure Created":{fieldName:"Created",fieldPath:"/polymer/displayStructure/created",finalField:"created",lucenePath:"root_polymer_displayStructure_created",CVDomain:"",displayName:"Display Structure Created",dataType:"number",luceneQueryable:!0},"Display Structure Created By":{fieldName:"Created By",fieldPath:"/polymer/displayStructure/createdBy",finalField:"createdBy",lucenePath:"root_polymer_displayStructure_createdBy",CVDomain:"",displayName:"Display Structure Created By",dataType:"string",luceneQueryable:!0},"Display Structure Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/polymer/displayStructure/definedStereo",finalField:"definedStereo",lucenePath:"root_polymer_displayStructure_definedStereo",CVDomain:"",displayName:"Display Structure Defined Stereo",dataType:"number",luceneQueryable:!0},"Display Structure Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/displayStructure/deprecated",finalField:"deprecated",lucenePath:"root_polymer_displayStructure_deprecated",CVDomain:"",displayName:"Display Structure Deprecated",dataType:"boolean",luceneQueryable:!0},"Display Structure Digest":{fieldName:"Digest",fieldPath:"/polymer/displayStructure/digest",finalField:"digest",lucenePath:"root_polymer_displayStructure_digest",CVDomain:"",displayName:"Display Structure Digest",dataType:"string",luceneQueryable:!0},"Display Structure Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/polymer/displayStructure/ezCenters",finalField:"ezCenters",lucenePath:"root_polymer_displayStructure_ezCenters",CVDomain:"",displayName:"Display Structure Ez Centers",dataType:"number",luceneQueryable:!0},"Display Structure Formula":{fieldName:"Formula",fieldPath:"/polymer/displayStructure/formula",finalField:"formula",lucenePath:"root_polymer_displayStructure_formula",CVDomain:"",displayName:"Display Structure Formula",dataType:"string",luceneQueryable:!0},"Display Structure Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/displayStructure/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_displayStructure_lastEdited",CVDomain:"",displayName:"Display Structure Last Edited",dataType:"number",luceneQueryable:!0},"Display Structure Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/displayStructure/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_displayStructure_lastEditedBy",CVDomain:"",displayName:"Display Structure Last Edited By",dataType:"string",luceneQueryable:!0},"Display Structure Mwt":{fieldName:"Molecular Weight",fieldPath:"/polymer/displayStructure/mwt",finalField:"mwt",lucenePath:"root_polymer_displayStructure_mwt",CVDomain:"",displayName:"Display Structure Mwt",dataType:"number",luceneQueryable:!0},"Display Structure Optical Activity":{fieldName:"Optical Activity",fieldPath:"/polymer/displayStructure/opticalActivity",finalField:"opticalActivity",lucenePath:"root_polymer_displayStructure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Display Structure Optical Activity",dataType:"string",luceneQueryable:!0},"Display Structure Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/polymer/displayStructure/stereoCenters",finalField:"stereoCenters",lucenePath:"root_polymer_displayStructure_stereoCenters",CVDomain:"",displayName:"Display Structure Stereo Centers",dataType:"number",luceneQueryable:!0},"Display Structure Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/polymer/displayStructure/stereochemistry",finalField:"stereochemistry",lucenePath:"root_polymer_displayStructure_stereochemistry",CVDomain:"",displayName:"Display Structure Stereochemistry",dataType:"string",luceneQueryable:!0},"Idealized Structure Access":{fieldName:"Access",fieldPath:"/polymer/idealizedStructure/access",finalField:"access",lucenePath:"root_polymer_idealizedStructure_access",CVDomain:"ACCESS_GROUP",displayName:"Idealized Structure Access",dataType:"array ",luceneQueryable:!0},"Idealized Structure Charge":{fieldName:"Charge",fieldPath:"/polymer/idealizedStructure/charge",finalField:"charge",lucenePath:"root_polymer_idealizedStructure_charge",CVDomain:"",displayName:"Idealized Structure Charge",dataType:"number",luceneQueryable:!0},"Idealized Structure Count":{fieldName:"Count",fieldPath:"/polymer/idealizedStructure/count",finalField:"count",lucenePath:"root_polymer_idealizedStructure_count",CVDomain:"",displayName:"Idealized Structure Count",dataType:"number",luceneQueryable:!0},"Idealized Structure Created":{fieldName:"Created",fieldPath:"/polymer/idealizedStructure/created",finalField:"created",lucenePath:"root_polymer_idealizedStructure_created",CVDomain:"",displayName:"Idealized Structure Created",dataType:"number",luceneQueryable:!0},"Idealized Structure Created By":{fieldName:"Created By",fieldPath:"/polymer/idealizedStructure/createdBy",finalField:"createdBy",lucenePath:"root_polymer_idealizedStructure_createdBy",CVDomain:"",displayName:"Idealized Structure Created By",dataType:"string",luceneQueryable:!0},"Idealized Structure Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/polymer/idealizedStructure/definedStereo",finalField:"definedStereo",lucenePath:"root_polymer_idealizedStructure_definedStereo",CVDomain:"",displayName:"Idealized Structure Defined Stereo",dataType:"number",luceneQueryable:!0},"Idealized Structure Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/idealizedStructure/deprecated",finalField:"deprecated",lucenePath:"root_polymer_idealizedStructure_deprecated",CVDomain:"",displayName:"Idealized Structure Deprecated",dataType:"boolean",luceneQueryable:!0},"Idealized Structure Digest":{fieldName:"Digest",fieldPath:"/polymer/idealizedStructure/digest",finalField:"digest",lucenePath:"root_polymer_idealizedStructure_digest",CVDomain:"",displayName:"Idealized Structure Digest",dataType:"string",luceneQueryable:!0},"Idealized Structure Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/polymer/idealizedStructure/ezCenters",finalField:"ezCenters",lucenePath:"root_polymer_idealizedStructure_ezCenters",CVDomain:"",displayName:"Idealized Structure Ez Centers",dataType:"number",luceneQueryable:!0},"Idealized Structure Formula":{fieldName:"Formula",fieldPath:"/polymer/idealizedStructure/formula",finalField:"formula",lucenePath:"root_polymer_idealizedStructure_formula",CVDomain:"",displayName:"Idealized Structure Formula",dataType:"string",luceneQueryable:!0},"Idealized Structure Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/idealizedStructure/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_idealizedStructure_lastEdited",CVDomain:"",displayName:"Idealized Structure Last Edited",dataType:"number",luceneQueryable:!0},"Idealized Structure Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/idealizedStructure/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_idealizedStructure_lastEditedBy",CVDomain:"",displayName:"Idealized Structure Last Edited By",dataType:"string",luceneQueryable:!0},"Idealized Structure Mwt":{fieldName:"Molecular Weight",fieldPath:"/polymer/idealizedStructure/mwt",finalField:"mwt",lucenePath:"root_polymer_idealizedStructure_mwt",CVDomain:"",displayName:"Idealized Structure Mwt",dataType:"number",luceneQueryable:!0},"Idealized Structure Optical Activity":{fieldName:"Optical Activity",fieldPath:"/polymer/idealizedStructure/opticalActivity",finalField:"opticalActivity",lucenePath:"root_polymer_idealizedStructure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Idealized Structure Optical Activity",dataType:"string",luceneQueryable:!0},"Idealized Structure Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/polymer/idealizedStructure/stereoCenters",finalField:"stereoCenters",lucenePath:"root_polymer_idealizedStructure_stereoCenters",CVDomain:"",displayName:"Idealized Structure Stereo Centers",dataType:"number",luceneQueryable:!0},"Idealized Structure Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/polymer/idealizedStructure/stereochemistry",finalField:"stereochemistry",lucenePath:"root_polymer_idealizedStructure_stereochemistry",CVDomain:"",displayName:"Idealized Structure Stereochemistry",dataType:"string",luceneQueryable:!0},"Polymer Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_lastEdited",CVDomain:"",displayName:"Polymer Last Edited",dataType:"number",luceneQueryable:!0},"Polymer Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_lastEditedBy",CVDomain:"",displayName:"Polymer Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Access":{fieldName:"Access",fieldPath:"/polymer/monomers/?/access",finalField:"access",lucenePath:"root_polymer_monomers_access",CVDomain:"ACCESS_GROUP",displayName:"Monomer Access",dataType:"array ",luceneQueryable:!0},"Monomer Amount Access":{fieldName:"Access",fieldPath:"/polymer/monomers/?/amount/access",finalField:"access",lucenePath:"root_polymer_monomers_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Monomer Amount Access",dataType:"array ",luceneQueryable:!0},"Monomer Amount Average":{fieldName:"Average",fieldPath:"/polymer/monomers/?/amount/average",finalField:"average",lucenePath:"root_polymer_monomers_amount_average",CVDomain:"",displayName:"Monomer Amount Average",dataType:"number",luceneQueryable:!0},"Monomer Amount Created":{fieldName:"Created",fieldPath:"/polymer/monomers/?/amount/created",finalField:"created",lucenePath:"root_polymer_monomers_amount_created",CVDomain:"",displayName:"Monomer Amount Created",dataType:"number",luceneQueryable:!0},"Monomer Amount Created By":{fieldName:"Created By",fieldPath:"/polymer/monomers/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_polymer_monomers_amount_createdBy",CVDomain:"",displayName:"Monomer Amount Created By",dataType:"string",luceneQueryable:!0},"Monomer Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/monomers/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_polymer_monomers_amount_deprecated",CVDomain:"",displayName:"Monomer Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Monomer Amount High":{fieldName:"High",fieldPath:"/polymer/monomers/?/amount/high",finalField:"high",lucenePath:"root_polymer_monomers_amount_high",CVDomain:"",displayName:"Monomer Amount High",dataType:"number",luceneQueryable:!0},"Monomer Amount High Limit":{fieldName:"High Limit",fieldPath:"/polymer/monomers/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_polymer_monomers_amount_highLimit",CVDomain:"",displayName:"Monomer Amount High Limit",dataType:"number",luceneQueryable:!0},"Monomer Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/monomers/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_monomers_amount_lastEdited",CVDomain:"",displayName:"Monomer Amount Last Edited",dataType:"number",luceneQueryable:!0},"Monomer Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/monomers/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_monomers_amount_lastEditedBy",CVDomain:"",displayName:"Monomer Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Amount Low":{fieldName:"Low",fieldPath:"/polymer/monomers/?/amount/low",finalField:"low",lucenePath:"root_polymer_monomers_amount_low",CVDomain:"",displayName:"Monomer Amount Low",dataType:"number",luceneQueryable:!0},"Monomer Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/polymer/monomers/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_polymer_monomers_amount_lowLimit",CVDomain:"",displayName:"Monomer Amount Low Limit",dataType:"number",luceneQueryable:!0},"Monomer Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/polymer/monomers/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_polymer_monomers_amount_nonNumericValue",CVDomain:"",displayName:"Monomer Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Monomer Amount Type":{fieldName:"Type",fieldPath:"/polymer/monomers/?/amount/type",finalField:"type",lucenePath:"root_polymer_monomers_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Monomer Amount Type",dataType:"string",luceneQueryable:!0},"Monomer Amount Units":{fieldName:"Units",fieldPath:"/polymer/monomers/?/amount/units",finalField:"units",lucenePath:"root_polymer_monomers_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Monomer Amount Units",dataType:"string",luceneQueryable:!0},"Monomer Created":{fieldName:"Created",fieldPath:"/polymer/monomers/?/created",finalField:"created",lucenePath:"root_polymer_monomers_created",CVDomain:"",displayName:"Monomer Created",dataType:"number",luceneQueryable:!0},"Monomer Created By":{fieldName:"Created By",fieldPath:"/polymer/monomers/?/createdBy",finalField:"createdBy",lucenePath:"root_polymer_monomers_createdBy",CVDomain:"",displayName:"Monomer Created By",dataType:"string",luceneQueryable:!0},"Monomer Defining":{fieldName:"Defining",fieldPath:"/polymer/monomers/?/defining",finalField:"defining",lucenePath:"root_polymer_monomers_defining",CVDomain:"",displayName:"Monomer Defining",dataType:"boolean",luceneQueryable:!0},"Monomer Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/monomers/?/deprecated",finalField:"deprecated",lucenePath:"root_polymer_monomers_deprecated",CVDomain:"",displayName:"Monomer Deprecated",dataType:"boolean",luceneQueryable:!0},"Monomer Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/monomers/?/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_monomers_lastEdited",CVDomain:"",displayName:"Monomer Last Edited",dataType:"number",luceneQueryable:!0},"Monomer Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/monomers/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_monomers_lastEditedBy",CVDomain:"",displayName:"Monomer Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Substance Access":{fieldName:"Access",fieldPath:"/polymer/monomers/?/monomerSubstance/access",finalField:"access",lucenePath:"root_polymer_monomers_monomerSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Monomer Substance Access",dataType:"array ",luceneQueryable:!0},"Monomer Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/polymer/monomers/?/monomerSubstance/approvalID",finalField:"approvalID",lucenePath:"root_polymer_monomers_monomerSubstance_approvalID",CVDomain:"",displayName:"Monomer Approval ID",dataType:"string",luceneQueryable:!0},"Monomer Substance Created":{fieldName:"Created",fieldPath:"/polymer/monomers/?/monomerSubstance/created",finalField:"created",lucenePath:"root_polymer_monomers_monomerSubstance_created",CVDomain:"",displayName:"Monomer Substance Created",dataType:"number",luceneQueryable:!0},"Monomer Substance Created By":{fieldName:"Created By",fieldPath:"/polymer/monomers/?/monomerSubstance/createdBy",finalField:"createdBy",lucenePath:"root_polymer_monomers_monomerSubstance_createdBy",CVDomain:"",displayName:"Monomer Substance Created By",dataType:"string",luceneQueryable:!0},"Monomer Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/monomers/?/monomerSubstance/deprecated",finalField:"deprecated",lucenePath:"root_polymer_monomers_monomerSubstance_deprecated",CVDomain:"",displayName:"Monomer Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Monomer Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/monomers/?/monomerSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_monomers_monomerSubstance_lastEdited",CVDomain:"",displayName:"Monomer Substance Last Edited",dataType:"number",luceneQueryable:!0},"Monomer Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/monomers/?/monomerSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_monomers_monomerSubstance_lastEditedBy",CVDomain:"",displayName:"Monomer Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Monomer Substance Name":{fieldName:"Ref Pname",fieldPath:"/polymer/monomers/?/monomerSubstance/refPname",finalField:"refPname",lucenePath:"root_polymer_monomers_monomerSubstance_refPname",CVDomain:"",displayName:"Monomer Substance Name",dataType:"string",luceneQueryable:!0},"Monomer Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/polymer/monomers/?/monomerSubstance/refuuid",finalField:"refuuid",lucenePath:"root_polymer_monomers_monomerSubstance_refuuid",CVDomain:"",displayName:"Monomer Substance Refuuid",dataType:"string",luceneQueryable:!0},"Monomer Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/polymer/monomers/?/monomerSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_polymer_monomers_monomerSubstance_substanceClass",CVDomain:"",displayName:"Monomer Substance Substance Class",dataType:"string",luceneQueryable:!0},"Monomer Type":{fieldName:"Type",fieldPath:"/polymer/monomers/?/type",finalField:"type",lucenePath:"root_polymer_monomers_type",CVDomain:"MONOMER_TYPE",displayName:"Monomer Type",dataType:"string",luceneQueryable:!0},"SRU Access":{fieldName:"Access",fieldPath:"/polymer/structuralUnits/?/access",finalField:"access",lucenePath:"root_polymer_structuralUnits_access",CVDomain:"ACCESS_GROUP",displayName:"SRU Access",dataType:"array ",luceneQueryable:!0},"SRU Amount Access":{fieldName:"Access",fieldPath:"/polymer/structuralUnits/?/amount/access",finalField:"access",lucenePath:"root_polymer_structuralUnits_amount_access",CVDomain:"ACCESS_GROUP",displayName:"SRU Amount Access",dataType:"array ",luceneQueryable:!0},"SRU Amount Average":{fieldName:"Average",fieldPath:"/polymer/structuralUnits/?/amount/average",finalField:"average",lucenePath:"root_polymer_structuralUnits_amount_average",CVDomain:"",displayName:"SRU Amount Average",dataType:"number",luceneQueryable:!0},"SRU Amount Created":{fieldName:"Created",fieldPath:"/polymer/structuralUnits/?/amount/created",finalField:"created",lucenePath:"root_polymer_structuralUnits_amount_created",CVDomain:"",displayName:"SRU Amount Created",dataType:"number",luceneQueryable:!0},"SRU Amount Created By":{fieldName:"Created By",fieldPath:"/polymer/structuralUnits/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_polymer_structuralUnits_amount_createdBy",CVDomain:"",displayName:"SRU Amount Created By",dataType:"string",luceneQueryable:!0},"SRU Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/structuralUnits/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_polymer_structuralUnits_amount_deprecated",CVDomain:"",displayName:"SRU Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"SRU Amount High":{fieldName:"High",fieldPath:"/polymer/structuralUnits/?/amount/high",finalField:"high",lucenePath:"root_polymer_structuralUnits_amount_high",CVDomain:"",displayName:"SRU Amount High",dataType:"number",luceneQueryable:!0},"SRU Amount High Limit":{fieldName:"High Limit",fieldPath:"/polymer/structuralUnits/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_polymer_structuralUnits_amount_highLimit",CVDomain:"",displayName:"SRU Amount High Limit",dataType:"number",luceneQueryable:!0},"SRU Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/structuralUnits/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_structuralUnits_amount_lastEdited",CVDomain:"",displayName:"SRU Amount Last Edited",dataType:"number",luceneQueryable:!0},"SRU Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/structuralUnits/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_structuralUnits_amount_lastEditedBy",CVDomain:"",displayName:"SRU Amount Last Edited By",dataType:"string",luceneQueryable:!0},"SRU Amount Low":{fieldName:"Low",fieldPath:"/polymer/structuralUnits/?/amount/low",finalField:"low",lucenePath:"root_polymer_structuralUnits_amount_low",CVDomain:"",displayName:"SRU Amount Low",dataType:"number",luceneQueryable:!0},"SRU Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/polymer/structuralUnits/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_polymer_structuralUnits_amount_lowLimit",CVDomain:"",displayName:"SRU Amount Low Limit",dataType:"number",luceneQueryable:!0},"SRU Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/polymer/structuralUnits/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_polymer_structuralUnits_amount_nonNumericValue",CVDomain:"",displayName:"SRU Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"SRU Amount Type":{fieldName:"Type",fieldPath:"/polymer/structuralUnits/?/amount/type",finalField:"type",lucenePath:"root_polymer_structuralUnits_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"SRU Amount Type",dataType:"string",luceneQueryable:!0},"SRU Amount Units":{fieldName:"Units",fieldPath:"/polymer/structuralUnits/?/amount/units",finalField:"units",lucenePath:"root_polymer_structuralUnits_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"SRU Amount Units",dataType:"string",luceneQueryable:!0},"SRU Attachment Count":{fieldName:"Attachment Count",fieldPath:"/polymer/structuralUnits/?/attachmentCount",finalField:"attachmentCount",lucenePath:"root_polymer_structuralUnits_attachmentCount",CVDomain:"",displayName:"SRU Attachment Count",dataType:"number",luceneQueryable:!0},"SRU Created":{fieldName:"Created",fieldPath:"/polymer/structuralUnits/?/created",finalField:"created",lucenePath:"root_polymer_structuralUnits_created",CVDomain:"",displayName:"SRU Created",dataType:"number",luceneQueryable:!0},"SRU Created By":{fieldName:"Created By",fieldPath:"/polymer/structuralUnits/?/createdBy",finalField:"createdBy",lucenePath:"root_polymer_structuralUnits_createdBy",CVDomain:"",displayName:"SRU Created By",dataType:"string",luceneQueryable:!0},"SRU Deprecated":{fieldName:"Deprecated",fieldPath:"/polymer/structuralUnits/?/deprecated",finalField:"deprecated",lucenePath:"root_polymer_structuralUnits_deprecated",CVDomain:"",displayName:"SRU Deprecated",dataType:"boolean",luceneQueryable:!0},"SRU Label":{fieldName:"Label",fieldPath:"/polymer/structuralUnits/?/label",finalField:"label",lucenePath:"root_polymer_structuralUnits_label",CVDomain:"",displayName:"SRU Label",dataType:"string",luceneQueryable:!0},"SRU Last Edited":{fieldName:"Last Edited",fieldPath:"/polymer/structuralUnits/?/lastEdited",finalField:"lastEdited",lucenePath:"root_polymer_structuralUnits_lastEdited",CVDomain:"",displayName:"SRU Last Edited",dataType:"number",luceneQueryable:!0},"SRU Last Edited By":{fieldName:"Last Edited By",fieldPath:"/polymer/structuralUnits/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_polymer_structuralUnits_lastEditedBy",CVDomain:"",displayName:"SRU Last Edited By",dataType:"string",luceneQueryable:!0},"SRU Structure":{fieldName:"structure",fieldPath:"/polymer/structuralUnits/?/structure",finalField:"structure",lucenePath:"root_polymer_structuralUnits_structure",CVDomain:"",displayName:"SRU Structure",dataType:"string",luceneQueryable:!0},"SRU Type":{fieldName:"Type",fieldPath:"/polymer/structuralUnits/?/type",finalField:"type",lucenePath:"root_polymer_structuralUnits_type",CVDomain:"POLYMER_SRU_TYPE",displayName:"SRU Type",dataType:"string",luceneQueryable:!0},"Property Access":{fieldName:"Access",fieldPath:"/properties/?/access",finalField:"access",lucenePath:"root_properties_access",CVDomain:"ACCESS_GROUP",displayName:"Property Access",dataType:"array ",luceneQueryable:!0},"Property Created":{fieldName:"Created",fieldPath:"/properties/?/created",finalField:"created",lucenePath:"root_properties_created",CVDomain:"",displayName:"Property Created",dataType:"number",luceneQueryable:!0},"Property Created By":{fieldName:"Created By",fieldPath:"/properties/?/createdBy",finalField:"createdBy",lucenePath:"root_properties_createdBy",CVDomain:"",displayName:"Property Created By",dataType:"string",luceneQueryable:!0},"Property Defining":{fieldName:"Defining",fieldPath:"/properties/?/defining",finalField:"defining",lucenePath:"root_properties_defining",CVDomain:"",displayName:"Property Defining",dataType:"boolean",luceneQueryable:!0},"Property Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/deprecated",finalField:"deprecated",lucenePath:"root_properties_deprecated",CVDomain:"",displayName:"Property Deprecated",dataType:"boolean",luceneQueryable:!0},"Property Last Edited":{fieldName:"Last Edited",fieldPath:"/properties/?/lastEdited",finalField:"lastEdited",lucenePath:"root_properties_lastEdited",CVDomain:"",displayName:"Property Last Edited",dataType:"number",luceneQueryable:!0},"Property Last Edited By":{fieldName:"Last Edited By",fieldPath:"/properties/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_properties_lastEditedBy",CVDomain:"",displayName:"Property Last Edited By",dataType:"string",luceneQueryable:!0},"Property Name":{fieldName:"Property Name",fieldPath:"/properties/?/name",finalField:"name",lucenePath:"root_properties_name",CVDomain:"PROPERTY_NAME",displayName:"Property Name",dataType:"string",luceneQueryable:!0},"Property Parameters":{fieldName:"Property Parameters",fieldPath:"/properties/?/parameters",finalField:"parameters",lucenePath:"root_properties_parameters",CVDomain:"",displayName:"Property Parameters",dataType:"array ",luceneQueryable:!0},"Parameter Access":{fieldName:"Access",fieldPath:"/properties/?/parameters/?/access",finalField:"access",lucenePath:"root_properties_parameters_access",CVDomain:"ACCESS_GROUP",displayName:"Parameter Access",dataType:"array ",luceneQueryable:!0},"Parameter Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/parameters/?/deprecated",finalField:"deprecated",lucenePath:"root_properties_parameters_deprecated",CVDomain:"",displayName:"Parameter Deprecated",dataType:"boolean",luceneQueryable:!0},"Parameter Value Access":{fieldName:"Access",fieldPath:"/properties/?/parameters/?/value/access",finalField:"access",lucenePath:"root_properties_parameters_value_access",CVDomain:"ACCESS_GROUP",displayName:"Parameter Value Access",dataType:"array ",luceneQueryable:!0},"Parameter Value Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/parameters/?/value/deprecated",finalField:"deprecated",lucenePath:"root_properties_parameters_value_deprecated",CVDomain:"",displayName:"Parameter Value Deprecated",dataType:"boolean",luceneQueryable:!0},"Property Property Type":{fieldName:"Property Type",fieldPath:"/properties/?/propertyType",finalField:"propertyType",lucenePath:"root_properties_propertyType",CVDomain:"PROPERTY_TYPE",displayName:"Property Property Type",dataType:"string",luceneQueryable:!0},"Property Value":{fieldName:"Property Value",fieldPath:"/properties/?/value",finalField:"value",lucenePath:"root_properties_value",CVDomain:"",displayName:"Property Value",dataType:"object ",luceneQueryable:!0},"Value Access":{fieldName:"Access",fieldPath:"/properties/?/value/access",finalField:"access",lucenePath:"root_properties_value_access",CVDomain:"ACCESS_GROUP",displayName:"Value Access",dataType:"array ",luceneQueryable:!0},"Value Deprecated":{fieldName:"Deprecated",fieldPath:"/properties/?/value/deprecated",finalField:"deprecated",lucenePath:"root_properties_value_deprecated",CVDomain:"",displayName:"Value Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Access":{fieldName:"Access",fieldPath:"/protein/access",finalField:"access",lucenePath:"root_protein_access",CVDomain:"ACCESS_GROUP",displayName:"Protein Access",dataType:"array ",luceneQueryable:!0},"Protein Created":{fieldName:"Created",fieldPath:"/protein/created",finalField:"created",lucenePath:"root_protein_created",CVDomain:"",displayName:"Protein Created",dataType:"number",luceneQueryable:!0},"Protein Created By":{fieldName:"Created By",fieldPath:"/protein/createdBy",finalField:"createdBy",lucenePath:"root_protein_createdBy",CVDomain:"",displayName:"Protein Created By",dataType:"string",luceneQueryable:!0},"Protein Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/deprecated",finalField:"deprecated",lucenePath:"root_protein_deprecated",CVDomain:"",displayName:"Protein Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Glycosylation Access":{fieldName:"Access",fieldPath:"/protein/glycosylation/access",finalField:"access",lucenePath:"root_protein_glycosylation_access",CVDomain:"ACCESS_GROUP",displayName:"Protein Glycosylation Access",dataType:"array ",luceneQueryable:!0},"Protein Glycosylation Created":{fieldName:"Created",fieldPath:"/protein/glycosylation/created",finalField:"created",lucenePath:"root_protein_glycosylation_created",CVDomain:"",displayName:"Protein Glycosylation Created",dataType:"number",luceneQueryable:!0},"Protein Glycosylation Created By":{fieldName:"Created By",fieldPath:"/protein/glycosylation/createdBy",finalField:"createdBy",lucenePath:"root_protein_glycosylation_createdBy",CVDomain:"",displayName:"Protein Glycosylation Created By",dataType:"string",luceneQueryable:!0},"Protein Glycosylation Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/glycosylation/deprecated",finalField:"deprecated",lucenePath:"root_protein_glycosylation_deprecated",CVDomain:"",displayName:"Protein Glycosylation Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Glycosylation Type":{fieldName:"Glycosylation Type",fieldPath:"/protein/glycosylation/glycosylationType",finalField:"glycosylationType",lucenePath:"root_protein_glycosylation_glycosylationType",CVDomain:"GLYCOSYLATION_TYPE",displayName:"Protein Glycosylation Type",dataType:"string",luceneQueryable:!0},"Protein Glycosylation Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/glycosylation/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_glycosylation_lastEdited",CVDomain:"",displayName:"Protein Glycosylation Last Edited",dataType:"number",luceneQueryable:!0},"Protein Glycosylation Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/glycosylation/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_glycosylation_lastEditedBy",CVDomain:"",displayName:"Protein Glycosylation Last Edited By",dataType:"string",luceneQueryable:!0},"Protein Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_lastEdited",CVDomain:"",displayName:"Protein Last Edited",dataType:"number",luceneQueryable:!0},"Protein Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_lastEditedBy",CVDomain:"",displayName:"Protein Last Edited By",dataType:"string",luceneQueryable:!0},"Other Link Access":{fieldName:"Access",fieldPath:"/protein/otherLinks/?/access",finalField:"access",lucenePath:"root_protein_otherLinks_access",CVDomain:"ACCESS_GROUP",displayName:"Other Link Access",dataType:"array ",luceneQueryable:!0},"Other Link Created":{fieldName:"Created",fieldPath:"/protein/otherLinks/?/created",finalField:"created",lucenePath:"root_protein_otherLinks_created",CVDomain:"",displayName:"Other Link Created",dataType:"number",luceneQueryable:!0},"Other Link Created By":{fieldName:"Created By",fieldPath:"/protein/otherLinks/?/createdBy",finalField:"createdBy",lucenePath:"root_protein_otherLinks_createdBy",CVDomain:"",displayName:"Other Link Created By",dataType:"string",luceneQueryable:!0},"Other Link Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/otherLinks/?/deprecated",finalField:"deprecated",lucenePath:"root_protein_otherLinks_deprecated",CVDomain:"",displayName:"Other Link Deprecated",dataType:"boolean",luceneQueryable:!0},"Other Link Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/otherLinks/?/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_otherLinks_lastEdited",CVDomain:"",displayName:"Other Link Last Edited",dataType:"number",luceneQueryable:!0},"Other Link Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/otherLinks/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_otherLinks_lastEditedBy",CVDomain:"",displayName:"Other Link Last Edited By",dataType:"string",luceneQueryable:!0},"Other Link Linkagetype":{fieldName:"Linkage Type",fieldPath:"/protein/otherLinks/?/linkageType",finalField:"linkageType",lucenePath:"root_protein_otherLinks_linkageType",CVDomain:"OTHER_LINKAGE_TYPE",displayName:"Other Link Linkagetype",dataType:"string",luceneQueryable:!0},"Protein Protein Subtype":{fieldName:"Protein Sub Type",fieldPath:"/protein/proteinSubType",finalField:"proteinSubType",lucenePath:"root_protein_proteinSubType",CVDomain:"PROTEIN_SUBTYPE",displayName:"Protein Protein Subtype",dataType:"string",luceneQueryable:!0},"Protein Proteintype":{fieldName:"Protein Type",fieldPath:"/protein/proteinType",finalField:"proteinType",lucenePath:"root_protein_proteinType",CVDomain:"PROTEIN_TYPE",displayName:"Protein Proteintype",dataType:"string",luceneQueryable:!0},"Protein Sequence Origin":{fieldName:"Sequence Origin",fieldPath:"/protein/sequenceOrigin",finalField:"sequenceOrigin",lucenePath:"root_protein_sequenceOrigin",CVDomain:"SEQUENCE_ORIGIN",displayName:"Protein Sequence Origin",dataType:"string",luceneQueryable:!0},"Protein Sequence Type":{fieldName:"Sequence Type",fieldPath:"/protein/sequenceType",finalField:"sequenceType",lucenePath:"root_protein_sequenceType",CVDomain:"SEQUENCE_TYPE",displayName:"Protein Sequence Type",dataType:"string",luceneQueryable:!0},"Protein Subunit Access":{fieldName:"Access",fieldPath:"/protein/subunits/?/access",finalField:"access",lucenePath:"root_protein_subunits_access",CVDomain:"ACCESS_GROUP",displayName:"Protein Subunit Access",dataType:"array ",luceneQueryable:!0},"Protein Subunit Created":{fieldName:"Created",fieldPath:"/protein/subunits/?/created",finalField:"created",lucenePath:"root_protein_subunits_created",CVDomain:"",displayName:"Protein Subunit Created",dataType:"number",luceneQueryable:!0},"Protein Subunit Created By":{fieldName:"Created By",fieldPath:"/protein/subunits/?/createdBy",finalField:"createdBy",lucenePath:"root_protein_subunits_createdBy",CVDomain:"",displayName:"Protein Subunit Created By",dataType:"string",luceneQueryable:!0},"Protein Subunit Deprecated":{fieldName:"Deprecated",fieldPath:"/protein/subunits/?/deprecated",finalField:"deprecated",lucenePath:"root_protein_subunits_deprecated",CVDomain:"",displayName:"Protein Subunit Deprecated",dataType:"boolean",luceneQueryable:!0},"Protein Subunit Last Edited":{fieldName:"Last Edited",fieldPath:"/protein/subunits/?/lastEdited",finalField:"lastEdited",lucenePath:"root_protein_subunits_lastEdited",CVDomain:"",displayName:"Protein Subunit Last Edited",dataType:"number",luceneQueryable:!0},"Protein Subunit Last Edited By":{fieldName:"Last Edited By",fieldPath:"/protein/subunits/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_protein_subunits_lastEditedBy",CVDomain:"",displayName:"Protein Subunit Last Edited By",dataType:"string",luceneQueryable:!0},"Protein Sequence":{fieldName:"Sequence",fieldPath:"/protein/subunits/?/sequence",finalField:"sequence",lucenePath:"root_protein_subunits_sequence",CVDomain:"",displayName:"Protein Sequence",dataType:"string",luceneQueryable:!0},"Protein Subunit Subunit Index":{fieldName:"Subunit Index",fieldPath:"/protein/subunits/?/subunitIndex",finalField:"subunitIndex",lucenePath:"root_protein_subunits_subunitIndex",CVDomain:"",displayName:"Protein Subunit Subunit Index",dataType:"number",luceneQueryable:!0},"Reference Access":{fieldName:"Access",fieldPath:"/references/?/access",finalField:"access",lucenePath:"root_references_access",CVDomain:"ACCESS_GROUP",displayName:"Reference Access",dataType:"array ",luceneQueryable:!0},"Reference Text / Citation":{fieldName:"CITATION",fieldPath:"/references/?/citation",finalField:"citation",lucenePath:"root_references_citation",CVDomain:"",displayName:"Reference Text / Citation",dataType:"string",luceneQueryable:!0},"Reference Created":{fieldName:"Created",fieldPath:"/references/?/created",finalField:"created",lucenePath:"root_references_created",CVDomain:"",displayName:"Reference Created",dataType:"number",luceneQueryable:!0},"Reference Created By":{fieldName:"Created By",fieldPath:"/references/?/createdBy",finalField:"createdBy",lucenePath:"root_references_createdBy",CVDomain:"",displayName:"Reference Created By",dataType:"string",luceneQueryable:!0},"Reference Deprecated":{fieldName:"Deprecated",fieldPath:"/references/?/deprecated",finalField:"deprecated",lucenePath:"root_references_deprecated",CVDomain:"",displayName:"Reference Deprecated",dataType:"boolean",luceneQueryable:!0},"Reference Type":{fieldName:"Doc Type",fieldPath:"/references/?/docType",finalField:"docType",lucenePath:"root_references_docType",CVDomain:"DOCUMENT_TYPE",displayName:"Reference Type",dataType:"string",luceneQueryable:!0},"Reference Document Date":{fieldName:"Document Date",fieldPath:"/references/?/documentDate",finalField:"documentDate",lucenePath:"root_references_documentDate",CVDomain:"",displayName:"Reference Document Date",dataType:"number",luceneQueryable:!0},"Reference ID":{fieldName:"Id",fieldPath:"/references/?/id",finalField:"id",lucenePath:"root_references_id",CVDomain:"",displayName:"Reference ID",dataType:"string",luceneQueryable:!0},"Reference Last Edited":{fieldName:"Last Edited",fieldPath:"/references/?/lastEdited",finalField:"lastEdited",lucenePath:"root_references_lastEdited",CVDomain:"",displayName:"Reference Last Edited",dataType:"number",luceneQueryable:!0},"Reference Last Edited By":{fieldName:"Last Edited By",fieldPath:"/references/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_references_lastEditedBy",CVDomain:"",displayName:"Reference Last Edited By",dataType:"string",luceneQueryable:!0},"Reference Public Domain":{fieldName:"Public Domain",fieldPath:"/references/?/publicDomain",finalField:"publicDomain",lucenePath:"root_references_publicDomain",CVDomain:"",displayName:"Reference Public Domain",dataType:"boolean",luceneQueryable:!0},"Reference Uploaded File":{fieldName:"Uploaded File",fieldPath:"/references/?/uploadedFile",finalField:"uploadedFile",lucenePath:"root_references_uploadedFile",CVDomain:"",displayName:"Reference Uploaded File",dataType:"string",luceneQueryable:!0},"Reference URL":{fieldName:"Url",fieldPath:"/references/?/url",finalField:"url",lucenePath:"root_references_url",CVDomain:"",displayName:"Reference URL",dataType:"string",luceneQueryable:!0},"Relationship Access":{fieldName:"Access",fieldPath:"/relationships/?/access",finalField:"access",lucenePath:"root_relationships_access",CVDomain:"ACCESS_GROUP",displayName:"Relationship Access",dataType:"array ",luceneQueryable:!0},"Relationship Amount Access":{fieldName:"Access",fieldPath:"/relationships/?/amount/access",finalField:"access",lucenePath:"root_relationships_amount_access",CVDomain:"ACCESS_GROUP",displayName:"Relationship Amount Access",dataType:"array ",luceneQueryable:!0},"Relationship Amount Average":{fieldName:"Average",fieldPath:"/relationships/?/amount/average",finalField:"average",lucenePath:"root_relationships_amount_average",CVDomain:"",displayName:"Relationship Amount Average",dataType:"number",luceneQueryable:!0},"Relationship Amount Created":{fieldName:"Created",fieldPath:"/relationships/?/amount/created",finalField:"created",lucenePath:"root_relationships_amount_created",CVDomain:"",displayName:"Relationship Amount Created",dataType:"number",luceneQueryable:!0},"Relationship Amount Created By":{fieldName:"Created By",fieldPath:"/relationships/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_relationships_amount_createdBy",CVDomain:"",displayName:"Relationship Amount Created By",dataType:"string",luceneQueryable:!0},"Relationship Amount Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/amount/deprecated",finalField:"deprecated",lucenePath:"root_relationships_amount_deprecated",CVDomain:"",displayName:"Relationship Amount Deprecated",dataType:"boolean",luceneQueryable:!0},"Relationship Amount High":{fieldName:"High",fieldPath:"/relationships/?/amount/high",finalField:"high",lucenePath:"root_relationships_amount_high",CVDomain:"",displayName:"Relationship Amount High",dataType:"number",luceneQueryable:!0},"Relationship Amount High Limit":{fieldName:"High Limit",fieldPath:"/relationships/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_relationships_amount_highLimit",CVDomain:"",displayName:"Relationship Amount High Limit",dataType:"number",luceneQueryable:!0},"Relationship Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_amount_lastEdited",CVDomain:"",displayName:"Relationship Amount Last Edited",dataType:"number",luceneQueryable:!0},"Relationship Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_amount_lastEditedBy",CVDomain:"",displayName:"Relationship Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Relationship Amount Low":{fieldName:"Low",fieldPath:"/relationships/?/amount/low",finalField:"low",lucenePath:"root_relationships_amount_low",CVDomain:"",displayName:"Relationship Amount Low",dataType:"number",luceneQueryable:!0},"Relationship Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/relationships/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_relationships_amount_lowLimit",CVDomain:"",displayName:"Relationship Amount Low Limit",dataType:"number",luceneQueryable:!0},"Relationship Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/relationships/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_relationships_amount_nonNumericValue",CVDomain:"",displayName:"Relationship Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Relationship Amount Type":{fieldName:"Type",fieldPath:"/relationships/?/amount/type",finalField:"type",lucenePath:"root_relationships_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Relationship Amount Type",dataType:"string",luceneQueryable:!0},"Relationship Amount Units":{fieldName:"Units",fieldPath:"/relationships/?/amount/units",finalField:"units",lucenePath:"root_relationships_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Relationship Amount Units",dataType:"string",luceneQueryable:!0},"Relationship Comments":{fieldName:"Comments",fieldPath:"/relationships/?/comments",finalField:"comments",lucenePath:"root_relationships_comments",CVDomain:"",displayName:"Relationship Comments",dataType:"string",luceneQueryable:!0},"Relationship Created":{fieldName:"Created",fieldPath:"/relationships/?/created",finalField:"created",lucenePath:"root_relationships_created",CVDomain:"",displayName:"Relationship Created",dataType:"number",luceneQueryable:!0},"Relationship Created By":{fieldName:"Created By",fieldPath:"/relationships/?/createdBy",finalField:"createdBy",lucenePath:"root_relationships_createdBy",CVDomain:"",displayName:"Relationship Created By",dataType:"string",luceneQueryable:!0},"Relationship Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/deprecated",finalField:"deprecated",lucenePath:"root_relationships_deprecated",CVDomain:"",displayName:"Relationship Deprecated",dataType:"boolean",luceneQueryable:!0},"Relationship Interaction Type":{fieldName:"Interaction Type",fieldPath:"/relationships/?/interactionType",finalField:"interactionType",lucenePath:"root_relationships_interactionType",CVDomain:"INTERACTION_TYPE",displayName:"Relationship Interaction Type",dataType:"string",luceneQueryable:!0},"Relationship Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_lastEdited",CVDomain:"",displayName:"Relationship Last Edited",dataType:"number",luceneQueryable:!0},"Relationship Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_lastEditedBy",CVDomain:"",displayName:"Relationship Last Edited By",dataType:"string",luceneQueryable:!0},"Mediator Substance Access":{fieldName:"Access",fieldPath:"/relationships/?/mediatorSubstance/access",finalField:"access",lucenePath:"root_relationships_mediatorSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Mediator Substance Access",dataType:"array ",luceneQueryable:!0},"Mediator Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/relationships/?/mediatorSubstance/approvalID",finalField:"approvalID",lucenePath:"root_relationships_mediatorSubstance_approvalID",CVDomain:"",displayName:"Mediator Substance Approval ID",dataType:"string",luceneQueryable:!0},"Mediator Substance Created":{fieldName:"Created",fieldPath:"/relationships/?/mediatorSubstance/created",finalField:"created",lucenePath:"root_relationships_mediatorSubstance_created",CVDomain:"",displayName:"Mediator Substance Created",dataType:"number",luceneQueryable:!0},"Mediator Substance Created By":{fieldName:"Created By",fieldPath:"/relationships/?/mediatorSubstance/createdBy",finalField:"createdBy",lucenePath:"root_relationships_mediatorSubstance_createdBy",CVDomain:"",displayName:"Mediator Substance Created By",dataType:"string",luceneQueryable:!0},"Mediator Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/mediatorSubstance/deprecated",finalField:"deprecated",lucenePath:"root_relationships_mediatorSubstance_deprecated",CVDomain:"",displayName:"Mediator Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Mediator Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/mediatorSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_mediatorSubstance_lastEdited",CVDomain:"",displayName:"Mediator Substance Last Edited",dataType:"number",luceneQueryable:!0},"Mediator Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/mediatorSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_mediatorSubstance_lastEditedBy",CVDomain:"",displayName:"Mediator Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Mediator Substance Preferred Name":{fieldName:"Ref Pname",fieldPath:"/relationships/?/mediatorSubstance/refPname",finalField:"refPname",lucenePath:"root_relationships_mediatorSubstance_refPname",CVDomain:"",displayName:"Mediator Substance Preferred Name",dataType:"string",luceneQueryable:!0},"Mediator Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/relationships/?/mediatorSubstance/refuuid",finalField:"refuuid",lucenePath:"root_relationships_mediatorSubstance_refuuid",CVDomain:"",displayName:"Mediator Substance Refuuid",dataType:"string",luceneQueryable:!0},"Mediator Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/relationships/?/mediatorSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_relationships_mediatorSubstance_substanceClass",CVDomain:"",displayName:"Mediator Substance Substance Class",dataType:"string",luceneQueryable:!0},"Relationship Originator UUID":{fieldName:"Originator UUID",fieldPath:"/relationships/?/originatorUuid",finalField:"originatorUuid",lucenePath:"root_relationships_originatorUuid",CVDomain:"",displayName:"Relationship Originator UUID",dataType:"string",luceneQueryable:!0},"Relationship Qualification":{fieldName:"Qualification",fieldPath:"/relationships/?/qualification",finalField:"qualification",lucenePath:"root_relationships_qualification",CVDomain:"QUALIFICATION",displayName:"Relationship Qualification",dataType:"string",luceneQueryable:!0},"Related Substance Access":{fieldName:"Access",fieldPath:"/relationships/?/relatedSubstance/access",finalField:"access",lucenePath:"root_relationships_relatedSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"Related Substance Access",dataType:"array ",luceneQueryable:!0},"Related Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/relationships/?/relatedSubstance/approvalID",finalField:"approvalID",lucenePath:"root_relationships_relatedSubstance_approvalID",CVDomain:"",displayName:"Related Substance Approval ID",dataType:"string",luceneQueryable:!0},"Related Substance Created":{fieldName:"Created",fieldPath:"/relationships/?/relatedSubstance/created",finalField:"created",lucenePath:"root_relationships_relatedSubstance_created",CVDomain:"",displayName:"Related Substance Created",dataType:"number",luceneQueryable:!0},"Related Substance Created By":{fieldName:"Created By",fieldPath:"/relationships/?/relatedSubstance/createdBy",finalField:"createdBy",lucenePath:"root_relationships_relatedSubstance_createdBy",CVDomain:"",displayName:"Related Substance Created By",dataType:"string",luceneQueryable:!0},"Related Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/relationships/?/relatedSubstance/deprecated",finalField:"deprecated",lucenePath:"root_relationships_relatedSubstance_deprecated",CVDomain:"",displayName:"Related Substance Deprecated",dataType:"boolean",luceneQueryable:!0},"Related Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/relationships/?/relatedSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_relationships_relatedSubstance_lastEdited",CVDomain:"",displayName:"Related Substance Last Edited",dataType:"number",luceneQueryable:!0},"Related Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/relationships/?/relatedSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_relationships_relatedSubstance_lastEditedBy",CVDomain:"",displayName:"Related Substance Last Edited By",dataType:"string",luceneQueryable:!0},"Related Substance Name":{fieldName:"Ref Pname",fieldPath:"/relationships/?/relatedSubstance/refPname",finalField:"refPname",lucenePath:"root_relationships_relatedSubstance_refPname",CVDomain:"",displayName:"Related Substance Name",dataType:"string",luceneQueryable:!0},"Related Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/relationships/?/relatedSubstance/refuuid",finalField:"refuuid",lucenePath:"root_relationships_relatedSubstance_refuuid",CVDomain:"",displayName:"Related Substance Refuuid",dataType:"string",luceneQueryable:!0},"Related Substance Substance Class":{fieldName:"Substance Class",fieldPath:"/relationships/?/relatedSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_relationships_relatedSubstance_substanceClass",CVDomain:"",displayName:"Related Substance Substance Class",dataType:"string",luceneQueryable:!0},"Relationship Type":{fieldName:"Type",fieldPath:"/relationships/?/type",finalField:"type",lucenePath:"root_relationships_type",CVDomain:"RELATIONSHIP_TYPE",displayName:"Relationship Type",dataType:"string",luceneQueryable:!0},"Record Status":{fieldName:"Status",fieldPath:"/status",finalField:"status",lucenePath:"root_status",CVDomain:"",displayName:"Record Status",dataType:"object ",luceneQueryable:!0},"Structurally Diverse Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/access",finalField:"access",lucenePath:"root_structurallyDiverse_access",CVDomain:"ACCESS_GROUP",displayName:"Structurally Diverse Access",dataType:"array ",luceneQueryable:!0},"Structurally Diverse Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/created",finalField:"created",lucenePath:"root_structurallyDiverse_created",CVDomain:"",displayName:"Structurally Diverse Created",dataType:"object ",luceneQueryable:!0},"Structurally Diverse Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_createdBy",CVDomain:"",displayName:"Structurally Diverse Created By",dataType:"array ",luceneQueryable:!0},"Structurally Diverse Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_deprecated",CVDomain:"",displayName:"Structurally Diverse Deprecated",dataType:"number",luceneQueryable:!0},"Structurally Diverse Developmental Stage":{fieldName:"Developmental Stage",fieldPath:"/structurallyDiverse/developmentalStage",finalField:"developmentalStage",lucenePath:"root_structurallyDiverse_developmentalStage",CVDomain:"DEVELOPMENTAL_STAGE",displayName:"Structurally Diverse Developmental Stage",dataType:"number",luceneQueryable:!0},"Structurally Diverse Fraction Material Type":{fieldName:"Fraction Material Type",fieldPath:"/structurallyDiverse/fractionMaterialType",finalField:"fractionMaterialType",lucenePath:"root_structurallyDiverse_fractionMaterialType",CVDomain:"FRACTION_MATERIAL_TYPE",displayName:"Structurally Diverse Fraction Material Type",dataType:"string",luceneQueryable:!0},"Structurally Diverse Fraction Name":{fieldName:"Fraction Name",fieldPath:"/structurallyDiverse/fractionName",finalField:"fractionName",lucenePath:"root_structurallyDiverse_fractionName",CVDomain:"",displayName:"Structurally Diverse Fraction Name",dataType:"boolean",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/access",finalField:"access",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_access",CVDomain:"ACCESS_GROUP",displayName:"St. Div. Hybrid Parent (m) Access",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/approvalID",finalField:"approvalID",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_approvalID",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Approval ID",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/created",finalField:"created",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_created",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Created",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_createdBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Created By",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_deprecated",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Deprecated",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_lastEdited",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Last Edited",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_lastEditedBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Last Edited By",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Substance Name":{fieldName:"Ref Pname",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/refPname",finalField:"refPname",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_refPname",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Substance Name",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Refuuid":{fieldName:"Refuuid",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/refuuid",finalField:"refuuid",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_refuuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Refuuid",dataType:"object ",luceneQueryable:!0},"St. Div. Hybrid Parent (m) Substance Class":{fieldName:"Substance Class",fieldPath:"/structurallyDiverse/hybridSpeciesMaternalOrganism/substanceClass",finalField:"substanceClass",lucenePath:"root_structurallyDiverse_hybridSpeciesMaternalOrganism_substanceClass",CVDomain:"",displayName:"St. Div. Hybrid Parent (m) Substance Class",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/access",finalField:"access",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_access",CVDomain:"ACCESS_GROUP",displayName:"St. Div. Hybrid Parent (p) Access",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/approvalID",finalField:"approvalID",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_approvalID",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Approval ID",dataType:"boolean",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/created",finalField:"created",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_created",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Created",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_createdBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Created By",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_deprecated",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Deprecated",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_lastEdited",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Last Edited",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_lastEditedBy",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Last Edited By",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Substance Name":{fieldName:"Ref Pname",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/refPname",finalField:"refPname",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_refPname",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Substance Name",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Refuuid":{fieldName:"Refuuid",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/refuuid",finalField:"refuuid",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_refuuid",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Refuuid",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent (p) Substance Class":{fieldName:"Substance Class",fieldPath:"/structurallyDiverse/hybridSpeciesPaternalOrganism/substanceClass",finalField:"substanceClass",lucenePath:"root_structurallyDiverse_hybridSpeciesPaternalOrganism_substanceClass",CVDomain:"",displayName:"St. Div. Hybrid Parent (p) Substance Class",dataType:"string",luceneQueryable:!0},"Structurally Diverse Infraspecific Name":{fieldName:"Infra Specific Name",fieldPath:"/structurallyDiverse/infraSpecificName",finalField:"infraSpecificName",lucenePath:"root_structurallyDiverse_infraSpecificName",CVDomain:"",displayName:"Structurally Diverse Infraspecific Name",dataType:"number",luceneQueryable:!0},"Structurally Diverse Infraspecific type":{fieldName:"Infra Specific Type",fieldPath:"/structurallyDiverse/infraSpecificType",finalField:"infraSpecificType",lucenePath:"root_structurallyDiverse_infraSpecificType",CVDomain:"INFRA_SPECIFIC_TYPE",displayName:"Structurally Diverse Infraspecific type",dataType:"string",luceneQueryable:!0},"Structurally Diverse Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_lastEdited",CVDomain:"",displayName:"Structurally Diverse Last Edited",dataType:"array ",luceneQueryable:!0},"Structurally Diverse Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_lastEditedBy",CVDomain:"",displayName:"Structurally Diverse Last Edited By",dataType:"string",luceneQueryable:!0},"Organism Author":{fieldName:"Author",fieldPath:"/structurallyDiverse/organismAuthor",finalField:"organismAuthor",lucenePath:"root_structurallyDiverse_organismAuthor",CVDomain:"",displayName:"Organism Author",dataType:"string",luceneQueryable:!0},"Organism Family":{fieldName:"Family",fieldPath:"/structurallyDiverse/organismFamily",finalField:"organismFamily",lucenePath:"root_structurallyDiverse_organismFamily",CVDomain:"",displayName:"Organism Family",dataType:"object ",luceneQueryable:!0},"Organism Genus":{fieldName:"Genus",fieldPath:"/structurallyDiverse/organismGenus",finalField:"organismGenus",lucenePath:"root_structurallyDiverse_organismGenus",CVDomain:"",displayName:"Organism Genus",dataType:"array ",luceneQueryable:!0},"Organism Species":{fieldName:"Species",fieldPath:"/structurallyDiverse/organismSpecies",finalField:"organismSpecies",lucenePath:"root_structurallyDiverse_organismSpecies",CVDomain:"",displayName:"Organism Species",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent Access":{fieldName:"Access",fieldPath:"/structurallyDiverse/parentSubstance/access",finalField:"access",lucenePath:"root_structurallyDiverse_parentSubstance_access",CVDomain:"ACCESS_GROUP",displayName:"St. Div. Hybrid Parent Access",dataType:"boolean",luceneQueryable:!0},"St. Div. Parent Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/structurallyDiverse/parentSubstance/approvalID",finalField:"approvalID",lucenePath:"root_structurallyDiverse_parentSubstance_approvalID",CVDomain:"",displayName:"St. Div. Parent Approval ID",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Created":{fieldName:"Created",fieldPath:"/structurallyDiverse/parentSubstance/created",finalField:"created",lucenePath:"root_structurallyDiverse_parentSubstance_created",CVDomain:"",displayName:"St. Div. Hybrid Parent Created",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Created By":{fieldName:"Created By",fieldPath:"/structurallyDiverse/parentSubstance/createdBy",finalField:"createdBy",lucenePath:"root_structurallyDiverse_parentSubstance_createdBy",CVDomain:"",displayName:"St. Div. Hybrid Parent Created By",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Deprecated":{fieldName:"Deprecated",fieldPath:"/structurallyDiverse/parentSubstance/deprecated",finalField:"deprecated",lucenePath:"root_structurallyDiverse_parentSubstance_deprecated",CVDomain:"",displayName:"St. Div. Hybrid Parent Deprecated",dataType:"object ",luceneQueryable:!0},"St. Div. Hybrid Parent Last Edited":{fieldName:"Last Edited",fieldPath:"/structurallyDiverse/parentSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_structurallyDiverse_parentSubstance_lastEdited",CVDomain:"",displayName:"St. Div. Hybrid Parent Last Edited",dataType:"array ",luceneQueryable:!0},"St. Div. Hybrid Parent Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structurallyDiverse/parentSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structurallyDiverse_parentSubstance_lastEditedBy",CVDomain:"",displayName:"St. Div. Hybrid Parent Last Edited By",dataType:"string",luceneQueryable:!0},"St. Div. Parent Substance Name":{fieldName:"Ref Pname",fieldPath:"/structurallyDiverse/parentSubstance/refPname",finalField:"refPname",lucenePath:"root_structurallyDiverse_parentSubstance_refPname",CVDomain:"",displayName:"St. Div. Parent Substance Name",dataType:"number",luceneQueryable:!0},"St. Div. Hybrid Parent Refuuid":{fieldName:"Refuuid",fieldPath:"/structurallyDiverse/parentSubstance/refuuid",finalField:"refuuid",lucenePath:"root_structurallyDiverse_parentSubstance_refuuid",CVDomain:"",displayName:"St. Div. Hybrid Parent Refuuid",dataType:"string",luceneQueryable:!0},"St. Div. Hybrid Parent Substance Class":{fieldName:"Substance Class",fieldPath:"/structurallyDiverse/parentSubstance/substanceClass",finalField:"substanceClass",lucenePath:"root_structurallyDiverse_parentSubstance_substanceClass",CVDomain:"",displayName:"St. Div. Hybrid Parent Substance Class",dataType:"string",luceneQueryable:!0},"Structurally Diverse Partlocation":{fieldName:"Part Location",fieldPath:"/structurallyDiverse/partLocation",finalField:"partLocation",lucenePath:"root_structurallyDiverse_partLocation",CVDomain:"PART_LOCATION",displayName:"Structurally Diverse Partlocation",dataType:"string",luceneQueryable:!0},"Source Material Class":{fieldName:"Material Class",fieldPath:"/structurallyDiverse/sourceMaterialClass",finalField:"sourceMaterialClass",lucenePath:"root_structurallyDiverse_sourceMaterialClass",CVDomain:"SOURCE_MATERIAL_CLASS",displayName:"Source Material Class",dataType:"string",luceneQueryable:!0},"Source Material Source Material State":{fieldName:"Source Material State",fieldPath:"/structurallyDiverse/sourceMaterialState",finalField:"sourceMaterialState",lucenePath:"root_structurallyDiverse_sourceMaterialState",CVDomain:"SOURCE_MATERIAL_STATE",displayName:"Source Material Source Material State",dataType:"string",luceneQueryable:!0},"Source Material Type":{fieldName:"Material Type",fieldPath:"/structurallyDiverse/sourceMaterialType",finalField:"sourceMaterialType",lucenePath:"root_structurallyDiverse_sourceMaterialType",CVDomain:"SOURCE_MATERIAL_TYPE",displayName:"Source Material Type",dataType:"object ",luceneQueryable:!0},"Structure Access":{fieldName:"Access",fieldPath:"/structure/access",finalField:"access",lucenePath:"root_structure_access",CVDomain:"ACCESS_GROUP",displayName:"Structure Access",dataType:"number",luceneQueryable:!0},"Structure Has Atropisomerism":{fieldName:"Atropisomerism",fieldPath:"/structure/atropisomerism",finalField:"atropisomerism",lucenePath:"root_structure_atropisomerism",CVDomain:"ATROPISOMERISM",displayName:"Structure Has Atropisomerism",dataType:"string",luceneQueryable:!0},"Structure Charge":{fieldName:"Charge",fieldPath:"/structure/charge",finalField:"charge",lucenePath:"root_structure_charge",CVDomain:"",displayName:"Structure Charge",dataType:"boolean",luceneQueryable:!0},"Structure Count":{fieldName:"Count",fieldPath:"/structure/count",finalField:"count",lucenePath:"root_structure_count",CVDomain:"",displayName:"Structure Count",dataType:"number",luceneQueryable:!0},"Structure Created":{fieldName:"Created",fieldPath:"/structure/created",finalField:"created",lucenePath:"root_structure_created",CVDomain:"",displayName:"Structure Created",dataType:"string",luceneQueryable:!0},"Structure Created By":{fieldName:"Created By",fieldPath:"/structure/createdBy",finalField:"createdBy",lucenePath:"root_structure_createdBy",CVDomain:"",displayName:"Structure Created By",dataType:"string",luceneQueryable:!0},"Structure Defined Stereo":{fieldName:"Defined Stereocenters Count",fieldPath:"/structure/definedStereo",finalField:"definedStereo",lucenePath:"root_structure_definedStereo",CVDomain:"",displayName:"Structure Defined Stereo",dataType:"string",luceneQueryable:!0},"Structure Deprecated":{fieldName:"Deprecated",fieldPath:"/structure/deprecated",finalField:"deprecated",lucenePath:"root_structure_deprecated",CVDomain:"",displayName:"Structure Deprecated",dataType:"array ",luceneQueryable:!0},"Structure Digest":{fieldName:"Digest",fieldPath:"/structure/digest",finalField:"digest",lucenePath:"root_structure_digest",CVDomain:"",displayName:"Structure Digest",dataType:"string",luceneQueryable:!0},"Structure Ez Centers":{fieldName:"E/Z Center Count",fieldPath:"/structure/ezCenters",finalField:"ezCenters",lucenePath:"root_structure_ezCenters",CVDomain:"",displayName:"Structure Ez Centers",dataType:"string",luceneQueryable:!0},"Mol Formua":{fieldName:"Molecular Formula",fieldPath:"/structure/formula",finalField:"formula",lucenePath:"root_structure_formula",CVDomain:"",displayName:"Mol Formua",dataType:"string",luceneQueryable:!0},"Structure Last Edited":{fieldName:"Last Edited",fieldPath:"/structure/lastEdited",finalField:"lastEdited",lucenePath:"root_structure_lastEdited",CVDomain:"",displayName:"Structure Last Edited",dataType:"string",luceneQueryable:!0},"Structure Last Edited By":{fieldName:"Last Edited By",fieldPath:"/structure/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_structure_lastEditedBy",CVDomain:"",displayName:"Structure Last Edited By",dataType:"number",luceneQueryable:!0},"Structure Mwt":{fieldName:"Molecular Weight",fieldPath:"/structure/mwt",finalField:"mwt",lucenePath:"root_structure_mwt",CVDomain:"",displayName:"Structure Mwt",dataType:"string",luceneQueryable:!0},"Structure Optical Activity":{fieldName:"Optical Activity",fieldPath:"/structure/opticalActivity",finalField:"opticalActivity",lucenePath:"root_structure_opticalActivity",CVDomain:"OPTICAL_ACTIVITY",displayName:"Structure Optical Activity",dataType:"string",luceneQueryable:!0},"Structure Stereo Centers":{fieldName:"Total Stereocenters Count",fieldPath:"/structure/stereoCenters",finalField:"stereoCenters",lucenePath:"root_structure_stereoCenters",CVDomain:"",displayName:"Structure Stereo Centers",dataType:"object ",luceneQueryable:!0},"Structure Stereochemistry":{fieldName:"Stereochemistry",fieldPath:"/structure/stereochemistry",finalField:"stereochemistry",lucenePath:"root_structure_stereoChemistry",CVDomain:"STEREOCHEMISTRY_TYPE",displayName:"Structure Stereochemistry",dataType:"array ",luceneQueryable:!0},"Structure Stereo Comments":{fieldName:"Stereocomments",fieldPath:"/structure/stereoComments",finalField:"stereoComments",lucenePath:"root_structure_stereoComments",CVDomain:"",displayName:"Structure Stereo Comments",dataType:"string",luceneQueryable:!0},"Substance Class":{fieldName:"Substance Type",fieldPath:"/substanceClass",finalField:"substanceClass",lucenePath:"root_substanceClass",CVDomain:"SUBSTANCE_CLASS",displayName:"Substance Class",dataType:"number",luceneQueryable:!0},"Record Version":{fieldName:"Version",fieldPath:"/version",finalField:"version",lucenePath:"root_version",CVDomain:"",displayName:"Record Version",dataType:"number",luceneQueryable:!0},"SpecifiedSubstance Created":{fieldName:"Created",fieldPath:"/specifiedSubstance/created",finalField:"created",lucenePath:"root_specifiedSubstance_created",CVDomain:"",displayName:"SpecifiedSubstance Created",dataType:"string",luceneQueryable:!0},"SpecifiedSubstance Created By":{fieldName:"Created By",fieldPath:"/specifiedSubstance/createdBy",finalField:"createdBy",lucenePath:"root_specifiedSubstance_createdBy",CVDomain:"",displayName:"SpecifiedSubstance Created By",dataType:"array ",luceneQueryable:!0},"SpecifiedSubstance Deprecated":{fieldName:"Deprecated",fieldPath:"/specifiedSubstance/deprecated",finalField:"deprecated",lucenePath:"root_specifiedSubstance_deprecated",CVDomain:"",displayName:"SpecifiedSubstance Deprecated",dataType:"string",luceneQueryable:!0},"SpecifiedSubstance Last Edited":{fieldName:"Last Edited",fieldPath:"/specifiedSubstance/lastEdited",finalField:"lastEdited",lucenePath:"root_specifiedSubstance_lastEdited",CVDomain:"",displayName:"SpecifiedSubstance Last Edited",dataType:"string",luceneQueryable:!0},"SpecifiedSubstance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/specifiedSubstance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_specifiedSubstance_lastEditedBy",CVDomain:"",displayName:"SpecifiedSubstance Last Edited By",dataType:"string",luceneQueryable:!0},"Constituent Role":{fieldName:"Role",fieldPath:"/specifiedSubstance/constituents/?/role",finalField:"",lucenePath:"root_specifiedSubstance_constituents_role",CVDomain:"CONSTITUENT_ROLE",displayName:"Constituent Role",dataType:"array ",luceneQueryable:!0},"Constituent Substance Approval ID":{fieldName:"Approval ID (UNII)",fieldPath:"/specifiedSubstance/constituents/?/substance/approvalID",finalField:"approvalID",lucenePath:"root_specifiedSubstance_constituents_substance_approvalID",CVDomain:"",displayName:"Constituent Substance Approval ID",dataType:"string",luceneQueryable:!0},"Constituent Substance Created":{fieldName:"Created",fieldPath:"/specifiedSubstance/constituents/?/substance/created",finalField:"created",lucenePath:"root_specifiedSubstance_constituents_substance_created",CVDomain:"",displayName:"Constituent Substance Created",dataType:"string",luceneQueryable:!0},"Constituent Substance Created By":{fieldName:"Created By",fieldPath:"/specifiedSubstance/constituents/?/substance/createdBy",finalField:"createdBy",lucenePath:"root_specifiedSubstance_constituents_substance_createdBy",CVDomain:"",displayName:"Constituent Substance Created By",dataType:"object ",luceneQueryable:!0},"Constituent Substance Deprecated":{fieldName:"Deprecated",fieldPath:"/specifiedSubstance/constituents/?/substance/deprecated",finalField:"deprecated",lucenePath:"root_specifiedSubstance_constituents_substance_deprecated",CVDomain:"",displayName:"Constituent Substance Deprecated",dataType:"array ",luceneQueryable:!0},"Constituent Substance Last Edited":{fieldName:"Last Edited",fieldPath:"/specifiedSubstance/constituents/?/substance/lastEdited",finalField:"lastEdited",lucenePath:"root_specifiedSubstance_constituents_substance_lastEdited",CVDomain:"",displayName:"Constituent Substance Last Edited",dataType:"string",luceneQueryable:!0},"Constituent Substance Last Edited By":{fieldName:"Last Edited By",fieldPath:"/specifiedSubstance/constituents/?/substance/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_specifiedSubstance_constituents_substance_lastEditedBy",CVDomain:"",displayName:"Constituent Substance Last Edited By",dataType:"number",luceneQueryable:!0},"Constituent Substance Substance Name":{fieldName:"Ref Pname",fieldPath:"/specifiedSubstance/constituents/?/substance/refPname",finalField:"refPname",lucenePath:"root_specifiedSubstance_constituents_substance_refPname",CVDomain:"",displayName:"Constituent Substance Substance Name",dataType:"number",luceneQueryable:!0},"Constituent Substance Refuuid":{fieldName:"Refuuid",fieldPath:"/specifiedSubstance/constituents/?/substance/refuuid",finalField:"refuuid",lucenePath:"root_specifiedSubstance_constituents_substance_refuuid",CVDomain:"",displayName:"Constituent Substance Refuuid",dataType:"boolean",luceneQueryable:!0},"Constituent Substance UUID":{fieldName:"Uuid",fieldPath:"/specifiedSubstance/constituents/?/substance/uuid",finalField:"uuid",lucenePath:"root_specifiedSubstance_constituents_substance_uuid",CVDomain:"",displayName:"Constituent Substance UUID",dataType:"number",luceneQueryable:!0},"Constituent Amount Average":{fieldName:"Average",fieldPath:"/specifiedSubstance/constituents/?/amount/average",finalField:"average",lucenePath:"root_specifiedSubstance_constituents_amount_average",CVDomain:"",displayName:"Constituent Amount Average",dataType:"string",luceneQueryable:!0},"Constituent Amount Created":{fieldName:"Created",fieldPath:"/specifiedSubstance/constituents/?/amount/created",finalField:"created",lucenePath:"root_specifiedSubstance_constituents_amount_created",CVDomain:"",displayName:"Constituent Amount Created",dataType:"number",luceneQueryable:!0},"Constituent Amount Created By":{fieldName:"Created By",fieldPath:"/specifiedSubstance/constituents/?/amount/createdBy",finalField:"createdBy",lucenePath:"root_specifiedSubstance_constituents_amount_createdBy",CVDomain:"",displayName:"Constituent Amount Created By",dataType:"string",luceneQueryable:!0},"Constituent Amount High":{fieldName:"High",fieldPath:"/specifiedSubstance/constituents/?/amount/high",finalField:"high",lucenePath:"root_specifiedSubstance_constituents_amount_high",CVDomain:"",displayName:"Constituent Amount High",dataType:"number",luceneQueryable:!0},"Constituent Amount High Limit":{fieldName:"High Limit",fieldPath:"/specifiedSubstance/constituents/?/amount/highLimit",finalField:"highLimit",lucenePath:"root_specifiedSubstance_constituents_amount_highLimit",CVDomain:"",displayName:"Constituent Amount High Limit",dataType:"string",luceneQueryable:!0},"Constituent Amount Last Edited":{fieldName:"Last Edited",fieldPath:"/specifiedSubstance/constituents/?/amount/lastEdited",finalField:"lastEdited",lucenePath:"root_specifiedSubstance_constituents_amount_lastEdited",CVDomain:"",displayName:"Constituent Amount Last Edited",dataType:"array ",luceneQueryable:!0},"Constituent Amount Last Edited By":{fieldName:"Last Edited By",fieldPath:"/specifiedSubstance/constituents/?/amount/lastEditedBy",finalField:"lastEditedBy",lucenePath:"root_specifiedSubstance_constituents_amount_lastEditedBy",CVDomain:"",displayName:"Constituent Amount Last Edited By",dataType:"string",luceneQueryable:!0},"Constituent Amount Low":{fieldName:"Low",fieldPath:"/specifiedSubstance/constituents/?/amount/low",finalField:"low",lucenePath:"root_specifiedSubstance_constituents_amount_low",CVDomain:"",displayName:"Constituent Amount Low",dataType:"number",luceneQueryable:!0},"Constituent Amount Low Limit":{fieldName:"Low Limit",fieldPath:"/specifiedSubstance/constituents/?/amount/lowLimit",finalField:"lowLimit",lucenePath:"root_specifiedSubstance_constituents_amount_lowLimit",CVDomain:"",displayName:"Constituent Amount Low Limit",dataType:"string",luceneQueryable:!0},"Constituent Amount Non-Numeric Value":{fieldName:"Non Numeric Value",fieldPath:"/specifiedSubstance/constituents/?/amount/nonNumericValue",finalField:"nonNumericValue",lucenePath:"root_specifiedSubstance_constituents_amount_nonNumericValue",CVDomain:"",displayName:"Constituent Amount Non-Numeric Value",dataType:"string",luceneQueryable:!0},"Constituent Amount Type":{fieldName:"Type",fieldPath:"/specifiedSubstance/constituents/?/amount/type",finalField:"type",lucenePath:"root_specifiedSubstance_constituents_amount_type",CVDomain:"AMOUNT_TYPE",displayName:"Constituent Amount Type",dataType:"array ",luceneQueryable:!0},"Constituent Amount Units":{fieldName:"Units",fieldPath:"/specifiedSubstance/constituents/?/amount/units",finalField:"units",lucenePath:"root_specifiedSubstance_constituents_amount_units",CVDomain:"AMOUNT_UNIT",displayName:"Constituent Amount Units",dataType:"string",luceneQueryable:!0}},c=n(86613),u=function(){var o=function(){function _(){(0,S.Z)(this,_),this.dataDictionary=e}return(0,t.Z)(_,[{key:"getDictionaryRow",value:function(h){return this.dataDictionary[h]}},{key:"getDictionaryField",value:function(h,b){return this.dataDictionary[h][b]}},{key:"getCVDomainRows",value:function(){var h=this,b=[];return Object.keys(this.dataDictionary).forEach(function(T){var y=h.dataDictionary[T].CVDomain;""!==y&&(b[y]&&b[y].length>0?b[y].push(T):b[y]=[T])}),b}}]),_}();return o.\u0275fac=function(s){return new(s||o)},o.\u0275prov=c.Yz7({token:o,factory:o.\u0275fac,providedIn:"root"}),o}()},88547:function(Ce,E,n){"use strict";n.d(E,{J:function(){return c}});var S=n(1884),t=n(39117),e=n(86613),c=function(){var u=(0,S.Z)(function o(){(0,t.Z)(this,o)});return u.\u0275fac=function(_){return new(_||u)},u.\u0275mod=e.oAB({type:u}),u.\u0275inj=e.cJS({imports:[[]]}),u}()},13821:function(Ce,E,n){"use strict";n.d(E,{f:function(){return u}});var S=n(39117),t=n(1884),e=n(53141),c=n(86613),u=function(){var o=function(){function _(s){var h;(0,S.Z)(this,_),this.defaultConf={elementLabelDisplay:{labels:{substance_names_name:{displayNameTitle:"Display Name",displayNameShortTitle:"DN",preferredTitle:"Additional Listing Name",preferredShortTitle:"AL"}}}},this.confOK=!1,this.conf=s.configData.elementLabelDisplay,this.labels=null===(h=s.configData.elementLabelDisplay)||void 0===h?void 0:h.labels,this.defaultLabels=this.defaultConf.elementLabelDisplay.labels,this.conf&&this.labels&&(this.confOK=!0)}return(0,t.Z)(_,[{key:"transform",value:function(h,b){return this.confOK&&this.labels[b]&&this.labels[b][h]?this.labels[b][h]:this.defaultLabels&&this.defaultLabels[b]&&this.defaultLabels[b][h]?this.defaultLabels[b][h]:h||"UNKOWN ELEMENT LABEL KEY/VALUE"}}]),_}();return o.\u0275fac=function(s){return new(s||o)(c.Y36(e.E,16))},o.\u0275pipe=c.Yjl({name:"elementLabel",type:o,pure:!0}),o}()},63169:function(Ce,E,n){"use strict";n.d(E,{Jf:function(){return S.J},FW:function(){return t.F}});var S=n(86698),t=n(52149)},86698:function(Ce,E,n){"use strict";n.d(E,{J:function(){return S}});var S=[{value:"default",display:"Relevance"},{value:"^Display Name",display:"Display Name, A-Z"},{value:"$Display Name",display:"Display Name, Z-A"},{value:"^Reference Count",display:"Least References"},{value:"$Reference Count",display:"Most References"},{value:"^root_lastEdited",display:"Oldest Change"},{value:"$root_lastEdited",display:"Newest Change"},{value:"$root_structure_mwt",display:"Highest Molecular Weight"},{value:"^root_structure_mwt",display:"Lowest Molecular Weight"}]},52149:function(Ce,E,n){"use strict";n.d(E,{F:function(){return s}});var S=n(39117),t=n(1884),e=n(92507),c=n(50635),u=n(86613),o=n(28784),_=n(50318),s=function(){var h=function(){function b(T,y,Y){(0,S.Z)(this,b),this.http=T,this.configService=y,this.sanitizer=Y}return(0,t.Z)(b,[{key:"getStructureSearchSuggestions",value:function(y){var Y="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get(Y+"suggest?q="+y)}},{key:"getSafeStructureImgUrl",value:function(y){var Y=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150,q=arguments.length>2?arguments[2]:void 0;q||(q=!1);var B="".concat(this.configService.configData.apiBaseUrl,"img/").concat(y,".svg?size=").concat(Y.toString(),"&stereo=").concat(q);return this.sanitizer.bypassSecurityTrustUrl(B)}},{key:"getStructureImgUrl",value:function(y){var Y=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150,q=arguments.length>2?arguments[2]:void 0,B=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;q||(q=!1);var D=this.configService.configData.apiBaseUrl,N=Math.random().toString(36).replace("0.",""),I="".concat(D,"api/v1/substances/render(").concat(y,")?format=svg&size=").concat(Y.toString(),"&stereo=").concat(q,"&cache-control=").concat(N);return null!=B&&(I="".concat(I,"&context=").concat(B.toString())),null!=k&&(I="".concat(I,"&version=").concat(k)),I}},{key:"handleMatSidenavOpen",value:function(y){null==y||window&&window.innerWidth0&&void 0!==arguments[0]?arguments[0]:"";return y.replace(/\s(.)/g,function(Y){return Y.toUpperCase()}).replace(/\s/g,"").replace(/^(.)/,function(Y){return Y.toLowerCase()})}},{key:"newUUID",value:function(y){return y?(y^16*Math.random()>>y/4).toString(16):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,this.newUUID)}},{key:"getObjectValue",value:function(y,Y){var q=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;String.prototype.split.call(Y,/[,[\].]+?/).filter(Boolean).reduce(function(B,k){return Object.hasOwnProperty.call(B,k)?B[k]:q},y)}},{key:"uploadFile",value:function(y){var Y=new FormData;return Y.append("file-name",y),Y.append("file-type",y.type),this.http.post("".concat(this.configService.configData.apiBaseUrl,"upload"),Y).pipe((0,c.U)(function(q){return q&&q.url||""}))}},{key:"sruDisplayToConnectivity",value:function(y){if(!y)return{};for(var Y=[],q=y.split(";"),B=/^\s*[A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)[-][A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)\s*$/g,k={$errors:[]},D=0;D0&&(k.$errors=Y),k}},{key:"displayAmount",value:function(y){function Y(N){return N?"object"==typeof N?N.display?N.display:N.value?N.value:null:N:null}var q="";if(y&&"object"==typeof y){if(y){var B=!1,k=Y(y.units);k||(k="");var D=Y(y.type);D&&(q+=D+"\n"),(y.average||y.high||y.low)&&(y.average&&(q+=y.average,y.units&&(q+=" "+k,B=!0)),(y.high||y.low)&&(q+=" [",y.high&&!y.low?q+="<"+y.high:!y.high&&y.low?q+=">"+y.low:y.high&&y.low&&(q+=y.low+" to "+y.high),q+="] ",B||y.units&&(q+=" "+k,B=!0)),q+=" (average) "),(y.highLimit||y.lowLimit)&&(q+="\n["),y.highLimit&&!y.lowLimit?q+="<"+y.highLimit:!y.highLimit&&y.lowLimit?q+=">"+y.lowLimit:y.highLimit&&y.lowLimit&&(q+=y.lowLimit+" to "+y.highLimit),(y.highLimit||y.lowLimit)&&(q+="] ",B||y.units&&(q+=" "+k,B=!0),q+=" (limits)")}y.nonNumericValue&&(q+=" "+y.nonNumericValue)}return q}},{key:"compare",value:function(y,Y,q){return(y-1||y.indexOf(" OR ")>-1)}},{key:"looksLikeComplexSearchTermOrContainsStrings",value:function(y,Y){return!!this.looksLikeComplexSearchTerm||(Y.forEach(function(q){if(y.indexOf(q.valueOf())>-1)return!0}),!1)}},{key:"makeBeginsWithSearchTerm",value:function(y,Y){var q=Y.replace(/(^"|"$)/g,"");return y+':"^'+(q=q.replace(/(^^)/g,""))+'"'}}]),b}();return h.\u0275fac=function(T){return new(T||h)(u.LFG(o.eN),u.LFG(e.E),u.LFG(_.H7))},h.\u0275prov=u.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"}),h}()},34009:function(Ce,E,n){"use strict";n.d(E,{l:function(){return S}});var S=[{value:"default",display:"Relevance",displayedColumns:"default",direction:"asc"},{value:"^root_adverseEvent",display:"Adverse Events, Ascending",displayedColumns:"adverseEvent",direction:"asc"},{value:"$root_adverseEvent",display:"Adverse Events, Descending",displayedColumns:"adverseEvent",direction:"desc"},{value:"^root_species",display:"Species, Ascending",displayedColumns:"species",direction:"asc"},{value:"$root_species",display:"Species, Descending",displayedColumns:"species",direction:"desc"},{value:"^root_aeCount",display:"Adverse Event Count, Ascending",displayedColumns:"adverseEventCount",direction:"asc"},{value:"$root_aeCount",display:"Adverse Event Count, Descending",displayedColumns:"adverseEventCount",direction:"desc"},{value:"^root_routeOfAdmin",display:"Route of Admin, Ascending",displayedColumns:"routeOfAdmin",direction:"asc"},{value:"$root_routeOfAdmin",display:"Route of Admin, Descending",displayedColumns:"routeOfAdmin",direction:"desc"},{value:"^root_name",display:"Ingredient, Ascending",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_name",display:"Ingredient Name, Descending",displayedColumns:"ingredientName",direction:"desc"}]},52395:function(Ce,E,n){"use strict";n.d(E,{O:function(){return S}});var S=[{value:"default",display:"Relevance",displayedColumns:"default",direction:"asc"},{value:"^root_dmeReactions",display:"Dme Reactions, Ascending",displayedColumns:"dmeReactions",direction:"asc"},{value:"$root_dmeReactions",display:"Dme Reactions, Descending",displayedColumns:"dmeReactions",direction:"desc"},{value:"^root_ptTermMeddra",display:"PT Term Meddra, Ascending",displayedColumns:"ptTermMeddra",direction:"asc"},{value:"$root_ptTermMeddra",display:"PT Term Meddra, Descending",displayedColumns:"ptTermMeddra",direction:"desc"},{value:"^root_caseCount",display:"Case Count, Ascending",displayedColumns:"caseCount",direction:"asc"},{value:"$root_caseCount",display:"Case Count, Descending",displayedColumns:"caseCount",direction:"desc"},{value:"^root_dmeCount",display:"Dme Count, Ascending",displayedColumns:"dmeCount",direction:"asc"},{value:"$root_dmeCount",display:"Dme Count, Descending",displayedColumns:"dmeCount",direction:"desc"},{value:"$root_dmeCountPercent",display:"Dme Count Percent, Descending",displayedColumns:"dmeCountPercent",direction:"desc"},{value:"^root_dmeCountPercent",display:"Dme Count Percent, Ascending",displayedColumns:"dmeCountPercent",direction:"asc"},{value:"^root_weightedAvgPrr",display:"Weighted Avg Prr, Ascending",displayedColumns:"weightedAvgPrr",direction:"asc"},{value:"$root_weightedAvgPrr",display:"Weighted Avg Prr, Descending",displayedColumns:"weightedAvgPrr",direction:"desc"},{value:"^root_name",display:"Ingredient, Ascending",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_name",display:"Ingredient Name, Descending",displayedColumns:"ingredientName",direction:"desc"}]},98969:function(Ce,E,n){"use strict";n.d(E,{g:function(){return S}});var S=[{value:"default",display:"Relevance",displayedColumns:"default",direction:"asc"},{value:"^root_ptTerm",display:"PT Term, Ascending",displayedColumns:"ptTerm",direction:"asc"},{value:"$root_ptTerm",display:"PT Term, Descending",displayedColumns:"ptTerm",direction:"desc"},{value:"^root_primSoc",display:"Prim SOC, Ascending",displayedColumns:"primSoc",direction:"asc"},{value:"$root_primSoc",display:"Prim SOC, Descending",displayedColumns:"primSoc",direction:"desc"},{value:"^root_caseCount",display:"Case Count, Ascending",displayedColumns:"caseCount",direction:"asc"},{value:"$root_caseCount",display:"Case Count, Descending",displayedColumns:"caseCount",direction:"desc"},{value:"^root_ptCount",display:"PT Count, Ascending",displayedColumns:"ptCount",direction:"asc"},{value:"$root_ptCount",display:"PT Count, Descending",displayedColumns:"ptCount",direction:"desc"},{value:"^root_prr",display:"PRR, Ascending",displayedColumns:"prr",direction:"asc"},{value:"$root_prr",display:"PRR, Descending",displayedColumns:"prr",direction:"desc"},{value:"^root_name",display:"Ingredient, Ascending",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_name",display:"Ingredient Name, Descending",displayedColumns:"ingredientName",direction:"desc"}]},43461:function(Ce,E,n){"use strict";n.d(E,{a:function(){return T}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(50635),o=n(69264),_=n(53141),s=n(52489),h=n(86613),b=n(28784),T=function(){var y=function(Y){(0,e.Z)(B,Y);var q=(0,c.Z)(B);function B(k,D){var N;return(0,S.Z)(this,B),(N=q.call(this,D)).http=k,N.configService=D,N.totalRecords=0,N.apiBaseUrlWithEntityPtContext=N.configService.configData.apiBaseUrl+"api/v1/adverseeventpt/",N.apiBaseUrlWithEntityDmeContext=N.configService.configData.apiBaseUrl+"api/v1/adverseeventdme/",N.apiBaseUrlWithEntityCvmContext=N.configService.configData.apiBaseUrl+"api/v1/adverseeventcvm/",N}return(0,t.Z)(B,[{key:"getAdverseEventPt",value:function(D){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,I=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,L=arguments.length>3?arguments[3]:void 0,j=arguments.length>4?arguments[4]:void 0,re=new s.nq;re=(re=re.append("skip",N.toString())).append("top",I.toString()),null!==L&&""!==L&&(re=re.append("q",L)),re=re.appendFacetParams(j),null!=D&&""!==D&&(re=re.append("order",D));var W=this.apiBaseUrlWithEntityPtContext+"search",$={params:re};return this.http.get(W,$)}},{key:"getAdverseEventDme",value:function(D){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,I=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,L=arguments.length>3?arguments[3]:void 0,j=arguments.length>4?arguments[4]:void 0,re=new s.nq;re=(re=re.append("skip",N.toString())).append("top",I.toString()),null!==L&&""!==L&&(re=re.append("q",L)),re=re.appendFacetParams(j),null!=D&&""!==D&&(re=re.append("order",D));var W=this.apiBaseUrlWithEntityDmeContext+"search",$={params:re};return this.http.get(W,$)}},{key:"getAdverseEventCvm",value:function(D){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,I=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,L=arguments.length>3?arguments[3]:void 0,j=arguments.length>4?arguments[4]:void 0,re=new s.nq;re=(re=re.append("skip",N.toString())).append("top",I.toString()),null!==L&&""!==L&&(re=re.append("q",L)),re=re.appendFacetParams(j),null!=D&&""!==D&&(re=re.append("order",D));var W=this.apiBaseUrlWithEntityCvmContext+"search",$={params:re};return this.http.get(W,$)}},{key:"getAdverseEventPtFacets",value:function(D,N,I){var L;return L=N?"".concat(this.configService.configData.apiBaseUrl,"api/v1/adverseeventpt/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventpt.models.AdverseEventPt&skip=0&fdim=200&sideway=true&field=").concat(D.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(N):null!=I?I:D._self,this.http.get(L)}},{key:"getAdverseEventDmeFacets",value:function(D,N,I){var L;return L=N?"".concat(this.configService.configData.apiBaseUrl,"api/v1/adverseeventdme/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventdme.models.AdverseEventDme&skip=0&fdim=200&sideway=true&field=").concat(D.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(N):null!=I?I:D._self,this.http.get(L)}},{key:"getAdverseEventCvmFacets",value:function(D,N,I){var L;return L=N?"".concat(this.configService.configData.apiBaseUrl,"api/v1/adverseeventcvm/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventcvm.models.AdverseEventCvm&skip=0&fdim=200&sideway=true&field=").concat(D.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(N):null!=I?I:D._self,this.http.get(L)}},{key:"exportBrowseApplicationsUrl",value:function(){var I=arguments.length>2?arguments[2]:void 0,L=arguments.length>3?arguments[3]:void 0,j=new s.nq;j=j.append("page","1"),null!==I&&""!==I&&(j=j.append("q",I)),j=j.appendFacetParams(L);var le=this.baseUrl+"exportApplications?"+j;return le}},{key:"getAdverseEventSearchSuggestions",value:function(D,N){return N&&"adverseEventPtSearch"===N?this.http.get(this.apiBaseUrlWithEntityPtContext+"suggest?q="+D):N&&"adverseEventDmeSearch"===N?this.http.get(this.apiBaseUrlWithEntityDmeContext+"suggest?q="+D):N&&"adverseEventCvmSearch"===N?this.http.get(this.apiBaseUrlWithEntityCvmContext+"suggest?q="+D):null}},{key:"getSubstanceAdverseEventPt",value:function(D,N,I,L,j){var le=this;return this.http.get(this.baseUrl+"adverseEventPtListByBdnum?bdnum="+D+"&page="+(N+1)+"&pageSize="+I+"&orderBy="+L+"&ascDescDir="+j).pipe((0,u.U)(function(W){return le.totalRecords=W.totalRecords,W.data}))}},{key:"getSubstanceAdverseEventPtAdv",value:function(D,N,I,L,j){var le=this;return this.http.get(this.baseUrl+"advSearchResult?searchCategory=adversept&searchBy=bdnum&matchType=IN&q="+D+"&disp=d&dispFrom=detail&start=0&length="+I+"&order[0][column]="+L+"&order[0][dir]="+j).pipe((0,u.U)(function(d){return le.totalRecords=d.recordsTotal,d.data}))}},{key:"getSubstanceAdverseEventDme",value:function(D,N,I){var L=this;return this.http.get(this.baseUrl+"adverseEventDmeListByBdnum?bdnum="+D+"&page="+(N+1)+"&pageSize="+I).pipe((0,u.U)(function(le){return L.totalRecords=le.totalRecords,le.data}))}},{key:"getSubstanceAdverseEventCvm",value:function(D,N,I){var L=this;return this.http.get(this.baseUrl+"adverseEventCvmListByBdnum?bdnum="+D+"&page="+(N+1)+"&pageSize="+I).pipe((0,u.U)(function(le){return L.totalRecords=le.totalRecords,le.data}))}},{key:"getFaersDashboardRecordByName",value:function(D){return this.http.get(this.apiBaseUrlWithEntityPtContext+"faersdashboard/"+D).pipe((0,u.U)(function(I){return I}))}},{key:"getApiExportUrlPt",value:function(D,N){return this.apiBaseUrlWithEntityPtContext+"export/"+D+"/"+N}},{key:"getApiExportUrlDme",value:function(D,N){return this.apiBaseUrlWithEntityDmeContext+"export/"+D+"/"+N}},{key:"getApiExportUrlCvm",value:function(D,N){return this.apiBaseUrlWithEntityCvmContext+"export/"+D+"/"+N}},{key:"getAdverseEventPtListExportUrl",value:function(D){return this.baseUrl+"adverseEventPtListExport?bdnum="+D}},{key:"getAdverseEventDmeListExportUrl",value:function(D){return this.baseUrl+"adverseEventDmeListExport?bdnum="+D}},{key:"getAdverseEventCvmListExportUrl",value:function(D){return this.baseUrl+"adverseEventCvmListExport?bdnum="+D}}]),B}(o.q);return y.\u0275fac=function(q){return new(q||y)(h.LFG(b.eN),h.LFG(_.E))},y.\u0275prov=h.Yz7({token:y,factory:y.\u0275fac,providedIn:"root"}),y}()},4096:function(Ce,E,n){"use strict";n.d(E,{R:function(){return S}});var S=[{value:"default",display:"Relevance"},{value:"^root_appType",display:"Application Type, Ascending",displayedColumns:"appType",direction:"asc"},{value:"$root_appType",display:"Application Type, Descending",displayedColumns:"appType",direction:"desc"},{value:"^root_appNumber",display:"Application Number, Ascending",displayedColumns:"appNumber",direction:"asc"},{value:"$root_appNumber",display:"Application Number, Descending",displayedColumns:"appNumber",direction:"desc"},{value:"^root_center",display:"Center, A-Z",displayedColumns:"center",direction:"asc"},{value:"$root_center",display:"Center, Z-A",displayedColumns:"center",direction:"desc"},{value:"^root_provenace",display:"Provenance, A-Z",displayedColumns:"provenance",direction:"asc"},{value:"$root_provenance",display:"Provenance, Z-A",displayedColumns:"provenance",direction:"desc"},{value:"^root_status",display:"Status, A-Z",displayedColumns:"applicationStatus",direction:"asc"},{value:"$root_status",display:"Status, Z-A",displayedColumns:"applicationStatus",direction:"desc"},{value:"^root_appStatus",display:"Status, A-Z",displayedColumns:"appStatus",direction:"asc"},{value:"$root_appStatus",display:"Status, Z-A",displayedColumns:"appStatus",direction:"desc"},{value:"^root_sponsorName",display:"Sponsor Name, A-Z",displayedColumns:"sponsorName",direction:"asc"},{value:"$root_sponsorName",display:"Sponsor Name, Z-A",displayedColumns:"sponsorName",direction:"desc"},{value:"^root_appSubType",display:"Application Sub Type, A-Z",displayedColumns:"applicationSubType",direction:"asc"},{value:"$root_appSubType",display:"Application Sub Type, Z-A",displayedColumns:"applicationSubType",direction:"desc"},{value:"^root_applicationProductList_applicationProductNameList_productName",display:"Product Name, A-Z",displayedColumns:"productName",direction:"asc"},{value:"$root_applicationProductList_applicationProductNameList_productName",display:"Product Name, Z-A",displayedColumns:"productName",direction:"desc"},{value:"^root_Ingredient Name",display:"Ingredient Name, A-Z",displayedColumns:"ingredientName",direction:"asc"},{value:"$root_Ingredient Name",display:"Ingredient Name, Z-A",displayedColumns:"ingredientName",direction:"desc"},{value:"^root_creationDate",display:"Oldest Creation"},{value:"$root_creationDate",display:"Newest Creation"},{value:"^root_lastModifiedDate",display:"Oldest Change"},{value:"$root_lastModifiedDate",display:"Newest Change"}]},63322:function(Ce,E,n){"use strict";n.d(E,{I:function(){return q}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(28784),o=n(83336),_=n(32673),s=n(50635),h=n(69264),b=n(53141),T=n(52149),y=n(52489),Y=n(86613),q=function(){var B=function(k){(0,e.Z)(N,k);var D=(0,c.Z)(N);function N(I,L,j){var le;return(0,S.Z)(this,N),(le=D.call(this,L)).http=I,le.configService=L,le.utilsService=j,le._bypassUpdateCheck=!1,le.totalRecords=0,le.apiBaseUrlWithApplicationEntityUrl=le.configService.configData.apiBaseUrl+"api/v1/applications/",le.apiBaseUrlWithApplicationAllEntityUrl=le.configService.configData.apiBaseUrl+"api/v1/applicationsall/",le.apiBaseUrlWithApplicationDarrtsEntityUrl=le.configService.configData.apiBaseUrl+"api/v1/applicationsdarrts/",le.APPALL_SEARCH_SUBSTANCE_KEY="root_applicationProductList_applicationIngredientList_substanceKey:",le}return(0,t.Z)(N,[{key:"getApplications",value:function(L){var j=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,re=arguments.length>3?arguments[3]:void 0,W=arguments.length>4?arguments[4]:void 0,$=new y.nq;$=($=$.append("skip",j.toString())).append("top",le.toString()),null!==re&&""!==re&&($=$.append("q",re)),$=$.appendFacetParams(W),null!=L&&""!==L&&($=$.append("order",L));var be=this.apiBaseUrlWithApplicationEntityUrl+"search",z={params:$};return this.http.get(be,z)}},{key:"getApplicationFacets",value:function(L,j,le){var re;return re=j?"".concat(this.configService.configData.apiBaseUrl,"api/v1/applications/search/@facets?wait=false&kind=gov.hhs.gsrs.application.application.models.Application&skip=0&fdim=200&sideway=true&field=").concat(L.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(j):null!=le?le:L._self,this.http.get(re)}},{key:"filterFacets",value:function(L,j){var le=this.apiBaseUrlWithApplicationEntityUrl+"search/@facets?wait=false&kind=gov.hhs.gsrs.application.application.models.Application&skip=0&fdim=200&sideway=true&field=".concat(j,"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(L);return this.http.get(le)}},{key:"retrieveFacetValues",value:function(L){return this.http.get(L._self)}},{key:"retrieveNextFacetValues",value:function(L){var j=this,le=L._self;return L.$next?this.http.get(L.$next):this.http.get(le).pipe((0,_.w)(function(re){return re?j.http.get(re.nextPageUri):"nada"}))}},{key:"getApiExportUrl",value:function(L,j){return this.apiBaseUrlWithApplicationEntityUrl+"export/"+L+"/"+j}},{key:"getApplicationSearchSuggestions",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"suggest?q="+L)}},{key:"getApplicationAll",value:function(L){var j=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,re=arguments.length>3?arguments[3]:void 0,W=arguments.length>4?arguments[4]:void 0,$=new y.nq;$=($=$.append("skip",j.toString())).append("top",le.toString()),null!==re&&""!==re&&($=$.append("q",re)),$=$.appendFacetParams(W),null!=L&&""!==L&&($=$.append("order",L));var be=this.apiBaseUrlWithApplicationAllEntityUrl+"search",z={params:$};return this.http.get(be,z)}},{key:"exportBrowseApplicationsUrl",value:function(){var le=arguments.length>2?arguments[2]:void 0,re=arguments.length>3?arguments[3]:void 0,W=new y.nq;W=W.append("page","1"),null!==le&&""!==le&&(W=W.append("q",le)),W=W.appendFacetParams(re);var $=this.baseUrl+"exportApplications?"+W;return $}},{key:"getAppAllApiExportUrl",value:function(L,j){return this.apiBaseUrlWithApplicationAllEntityUrl+"export/"+L+"/"+j}},{key:"getApplicationCenterList",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationAllEntityUrl+"distcenter/"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getApplicationBySubstanceKeyCenter",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"search?q=root_applicationProductList_applicationIngredientList_substanceKey:"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getSubstanceApplications",value:function(L,j,le,re,W){var $=this;return this.http.get(this.baseUrl+"applicationListByBdnum?bdnum="+L+"¢er="+j+"&fromTable="+le+"&page="+(re+1)+"&pageSize="+W).pipe((0,s.U)(function(d){return $.totalRecords=d.totalRecords,d.data}))}},{key:"searchApplicationBySubstanceKey",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"search?q="+L).pipe((0,s.U)(function(le){return le}))}},{key:"getApplicationById",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+L).pipe((0,s.U)(function(le){return le}))}},{key:"getApplicationHistory",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"applicationhistory/"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getProductTechnicalEffect",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"prodtechnicaleffect/"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getProductEffected",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"prodeffected/"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getClinicalTrialApplication",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"appclinicaltrial/"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getApplicationDarrtsDetails",value:function(L,j){return this.http.get(this.apiBaseUrlWithApplicationDarrtsEntityUrl+(L+j)).pipe((0,s.U)(function(W){return W}))}},{key:"getSubstanceParentConcept",value:function(L){return this.http.get(this.apiBaseUrlWithApplicationDarrtsEntityUrl+"substanceparentconcept/"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getApplicationCenterByBdnum",value:function(L){return this.http.get(this.baseUrl+"getApplicationCenterByBdnum2?bdnum="+L).pipe((0,s.U)(function(le){return le}))}},{key:"getSubstanceRelationship",value:function(L){return this.http.get(this.baseUrl+"getRelationshipBySubstanceId?substanceId="+L).pipe((0,s.U)(function(le){return le.data}))}},{key:"isApplicationUpdated",get:function(){var L=JSON.stringify(this.application);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.applicationStateHash!==this.utilsService.hashCode(L)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"loadApplication",value:function(L){null!=L?(this.application=L,this.application.applicationIndicationList.length<1&&this.application.applicationIndicationList.unshift({})):this.application={applicationIndicationList:[{}],applicationProductList:[{applicationProductNameList:[{}],applicationIngredientList:[{}]}]}}},{key:"saveApplication",value:function(){var L=this.apiBaseUrlWithApplicationEntityUrl,le={params:new u.LE,type:"JSON",headers:{"Content-type":"application/json"}};return null!=this.application&&this.application.id?this.http.put(L,this.application,le):this.http.post(L,this.application,le)}},{key:"validateApplication",value:function(){var L=this;return new o.y(function(j){L.validateApp().subscribe(function(le){j.next(le),j.complete()},function(le){j.error(),j.complete()})})}},{key:"validateApp",value:function(){return this.http.post(this.apiBaseUrlWithApplicationEntityUrl+"@validate",this.application)}},{key:"deleteApplication",value:function(){var L=this.apiBaseUrlWithApplicationEntityUrl+this.application.id;return new u.LE,this.http.delete(L,{})}},{key:"addNewIndication",value:function(){this.application.applicationIndicationList.unshift({})}},{key:"deleteIndication",value:function(L){this.application.applicationIndicationList.splice(L,1)}},{key:"addNewProduct",value:function(){this.application.applicationProductList.unshift({applicationProductNameList:[{}],applicationIngredientList:[{}]})}},{key:"addNewProductName",value:function(L){this.application.applicationProductList[L].applicationProductNameList.unshift({})}},{key:"deleteProduct",value:function(L){this.application.applicationProductList.splice(L,1)}},{key:"deleteProductName",value:function(L,j){this.application.applicationProductList[L].applicationProductNameList.splice(j,1)}},{key:"copyProduct",value:function(L){var j=JSON.parse(JSON.stringify(L));j.reviewedBy=null,j.reviewDate=null,this.application.applicationProductList.unshift(j)}},{key:"reviewProduct",value:function(L){}},{key:"addNewIngredient",value:function(L){this.application.applicationProductList[L].applicationIngredientList.unshift({})}},{key:"deleteIngredient",value:function(L,j){this.application.applicationProductList[L].applicationIngredientList.splice(j,1)}},{key:"copyIngredient",value:function(L,j){var le=JSON.parse(JSON.stringify(L));le.reviewedBy=null,le.reviewDate=null,this.application.applicationProductList[j].applicationIngredientList.unshift(le)}},{key:"reviewIngredient",value:function(L,j){}},{key:"getJson",value:function(){return this.application}},{key:"getUpdateApplicationUrl",value:function(){return this.baseUrl+"updateApplication?applicationId="}},{key:"getApplicationListExportUrl",value:function(L){return this.baseUrl+"applicationListExport?bdnum="+L}}]),N}(h.q);return B.\u0275fac=function(D){return new(D||B)(Y.LFG(u.eN),Y.LFG(b.E),Y.LFG(T.F))},B.\u0275prov=Y.Yz7({token:B,factory:B.\u0275fac,providedIn:"root"}),B}()},69638:function(Ce,E,n){"use strict";n.d(E,{m:function(){return Y}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(28784),o=n(83336),_=n(53141),s=n(69264),h=n(50635),b=n(32673),T=n(52489),y=n(86613),Y=function(){var q=function(B){(0,e.Z)(D,B);var k=(0,c.Z)(D);function D(N,I){var L;return(0,S.Z)(this,D),(L=k.call(this,I)).http=N,L.configService=I,L.totalRecords=0,L}return(0,t.Z)(D,[{key:"getClinicalTrials",value:function(){var I=this,L=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new o.y(function(j){I.searchClinicalTrials(L.searchTerm,L.pageSize,L.facets,L.order,L.skip,L.type).subscribe(function(le){j.next(le)},function(le){j.error(le)},function(){j.complete()})})}},{key:"searchClinicalTrials",value:function(I){var L=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,j=arguments.length>2?arguments[2]:void 0,le=arguments.length>3?arguments[3]:void 0,re=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,W=arguments.length>5?arguments[5]:void 0,$=new T.nq,be=this.apiBaseUrl;be+="clinicaltrialsus/search",I||(I=""),null!==I&&""!==I&&($=$.append("q",null!==W&&""!==W?"trialNumber"===W?'root_trialNumber:"^'+I+'$"':"substanceKey"===W?'root_clinicalTrialUSDrug_substanceKey:"^'+I+'$"':"title"===W?'root_title:"'+I+'"':I:I)),$=($=$.appendFacetParams(j)).appendDictionary({top:L&&L.toString(),skip:re&&re.toString()}),null!==le&&""!==le&&($=$.append("order",le));var z={params:$=$.append("fdim","10")};return this.http.get(be,z)}},{key:"deleteClinicalTrial",value:function(I){var L="".concat(this.apiBaseUrl,"clinicaltrialsus/").concat(I),j=new u.LE;return this.http.delete(L,{params:j})}},{key:"getClinicalTrial",value:function(I){var L=this.apiBaseUrl+"clinicaltrialsus/".concat(I),j=new u.LE;return this.http.get(L,{params:j})}},{key:"getSubstanceDetailsFromName",value:function(I){var L=this.apiBaseUrl+'substances/search?q=root_names_name:"%5E'+encodeURIComponent(I)+'$"&fdim=1';return new u.LE,this.http.get(L)}},{key:"getSubstanceDetailsFromSubstanceKey",value:function(I){var L=this.apiBaseUrl+"substances("+encodeURIComponent(I)+")",j=new u.LE;return j=j.append("view","full"),this.http.get(L,{params:j})}},{key:"addClinicalTrial",value:function(I){var L=this.apiBaseUrl+"clinicaltrialsus",j=new u.LE;return this.http.post(L,I,{params:j,type:"JSON",headers:{"Content-type":"application/json"}})}},{key:"updateClinicalTrial",value:function(I){var L=this.apiBaseUrl+"clinicaltrialsus",j=new u.LE;return this.http.put(L,I,{params:j,headers:{"Content-type":"application/json"}})}},{key:"getSubstanceClinicalTrialsEurope",value:function(I,L,j,le){var re=this,W=new T.nq,$=L*j;return null!=le&&""!==le&&(W=W.append("order",le)),this.http.get(this.baseUrl+'api/v1/clinicaltrialseurope/search?q=root_clinicalTrialEuropeProductList_clinicalTrialEuropeDrugList_substanceKey:"^'+I+'$"&top='+j+"&skip="+$,{params:W}).pipe((0,h.U)(function(d){return re.totalRecords=d.total,d}))}},{key:"getClinicalTrialDetails",value:function(I,L){var j=this.apiBaseUrl+"clinicaltrialsus/".concat(I);return this.http.get(j).pipe((0,h.U)(function(le){return le}))}},{key:"getClinicalTrialsFacets",value:function(I,L,j){var le;return le=L?"".concat(this.configService.configData.apiBaseUrl,"api/v1/clinicaltrialsus/search/@facets?wait=false&kind=ix.ct.models.ClinicalTrial&skip=0&fdim=200&sideway=true&field=").concat(I.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(L):null!=j?j:I._self,this.http.get(le)}},{key:"filterFacets",value:function(I,L){var j="".concat(this.configService.configData.apiBaseUrl,"api/v1/clinicaltrialsus/search/@facets?wait=false&kind=ix.ct.models.ClinicalTrial&skip=0&fdim=200&sideway=true&field=").concat(L,"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(I);return this.http.get(j)}},{key:"retrieveFacetValues",value:function(I){return this.http.get(I._self)}},{key:"retrieveNextFacetValues",value:function(I){var L=this,j=I._self;return I.$next?this.http.get(I.$next):this.http.get(j).pipe((0,b.w)(function(le){return le?L.http.get(le.nextPageUri):"nada"}))}},{key:"getApiExportUrl",value:function(I,L){return this.apiBaseUrl+"clinicaltrialsus/"+"export/".concat(I,"/").concat(L)}},{key:"getApiEuropeExportUrl",value:function(I,L){return this.apiBaseUrl+"clinicaltrialseurope/"+"export/".concat(I,"/").concat(L)}},{key:"getClinicalTrialListExportUrl",value:function(I){return this.baseUrl+"clinicalTrialListExport?bdnum="+I}},{key:"getClinicalTrialEuropeListExportUrl",value:function(I){return this.baseUrl+"clinicalTrialEuropeListExport?bdnum="+I}},{key:"getUpdateApplicationUrl",value:function(){return this.baseUrl+"updateApplication?applicationId="}}]),D}(s.q);return q.\u0275fac=function(k){return new(k||q)(y.LFG(u.eN),y.LFG(_.E))},q.\u0275prov=y.Yz7({token:q,factory:q.\u0275fac}),q}()},26477:function(Ce,E,n){"use strict";n.d(E,{$:function(){return T}});var S=n(39117),t=n(1884),e=n(95758),c=n(86613),u=n(50318),o=n(98002),_=n(36362),s=n(87317);function h(y,Y){1&y&&(c.TgZ(0,"div"),c.TgZ(1,"button",4),c._uU(2,"Home"),c.qZA(),c.qZA())}function b(y,Y){1&y&&(c.TgZ(0,"button",5),c._uU(1,"No"),c.qZA(),c.TgZ(2,"button",6),c._uU(3,"Yes"),c.qZA()),2&y&&(c.xp6(2),c.Q6J("mat-dialog-close",!0))}var T=function(){var y=function(){function Y(q,B,k,D){(0,S.Z)(this,Y),this.sanitizer=q,this.data=B,this.activatedRoute=k,this.router=D}return(0,t.Z)(Y,[{key:"ngOnInit",value:function(){}}]),Y}();return y.\u0275fac=function(q){return new(q||y)(c.Y36(u.H7),c.Y36(e.WI),c.Y36(o.gz),c.Y36(o.F0))},y.\u0275cmp=c.Xpm({type:y,selectors:[["app-confirm-dialog"]],decls:6,vars:3,consts:[["mat-dialog-content",""],["mat-dialog-actions",""],[4,"ngIf","ngIfElse"],["noType",""],["mat-button","","mat-dialog-close",""],["mat-button","","mat-dialog-close","",1,"borderlightgray"],["mat-button","","cdkFocusInitial","",1,"borderlightgray",3,"mat-dialog-close"]],template:function(q,B){if(1&q&&(c.TgZ(0,"div",0),c._uU(1),c.qZA(),c.TgZ(2,"div",1),c.YNc(3,h,3,0,"div",2),c.YNc(4,b,4,1,"ng-template",null,3,c.W1O),c.qZA()),2&q){var k=c.MAs(5);c.xp6(1),c.hij(" ",B.data.message,"\n"),c.xp6(2),c.Q6J("ngIf",null!==B.data.type&&"home"===B.data.type)("ngIfElse",k)}},directives:[e.xY,e.H8,_.O5,s.lW,e.ZT],styles:[".raw[_ngcontent-%COMP%]{width:100%;min-height:200px}.formatted[_ngcontent-%COMP%]{width:100%}.raw-text[_ngcontent-%COMP%]{min-height:400px}.actions[_ngcontent-%COMP%]{padding-bottom:10px}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.borderlightgray[_ngcontent-%COMP%]{border:1px solid var(--regular-lightgray-color)}"]}),y}()},24870:function(Ce,E,n){"use strict";n.d(E,{y:function(){return fu}});var S=n(39117),t=n(1884),e=n(86613),c=n(36362),u=n(98002),o=n(11961),_=n(16531),s=n(40089),h=n(87317),b=n(12379),T=n(65590),y=n(97217),Y=n(74742),q=n(70178),B=n(61534),k=n(75143),D=n(48968),N=n(92507),I=n(63322),L=function(F){return["/substances",F]};function j(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"div",7),e.TgZ(2,"div"),e.TgZ(3,"a",8),e._UZ(4,"div",9),e.qZA(),e.qZA(),e.TgZ(5,"div"),e._UZ(6,"mat-icon",10),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("routerLink",e.VKq(2,L,f.substanceId)),e.xp6(1),e.s9C("innerHTML",f.searchCount.appCountConcat,e.oJD)}}function le(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(3);e.hij(" ",f.searchCount.appCountConcat," ")}}function re(v,F){if(1&v&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Application Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,j,7,4,"span",5),e.YNc(5,le,1,1,"ng-template",null,6,e.W1O),e.qZA(),e.qZA()),2&v){var f=e.MAs(6),r=e.oxw(2);e.xp6(4),e.Q6J("ngIf","0"!=r.searchCount.appCountConcat)("ngIfElse",f)}}function W(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"div",7),e.TgZ(2,"div"),e.TgZ(3,"a",12),e._UZ(4,"div",9),e.qZA(),e.qZA(),e.TgZ(5,"div"),e._UZ(6,"mat-icon",13),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("routerLink",e.VKq(2,L,f.substanceId)),e.xp6(1),e.s9C("innerHTML",f.searchCount.prodCountConcat,e.oJD)}}function $(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(3);e.hij(" ",f.searchCount.prodCountConcat," ")}}function be(v,F){if(1&v&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Product Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,W,7,4,"span",5),e.YNc(5,$,1,1,"ng-template",null,11,e.W1O),e.qZA(),e.qZA()),2&v){var f=e.MAs(6),r=e.oxw(2);e.xp6(4),e.Q6J("ngIf","0"!=r.searchCount.prodCountConcat)("ngIfElse",f)}}function z(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",15),e.TgZ(2,"span"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"mat-icon",13),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Q6J("routerLink",e.VKq(2,L,f.substanceId)),e.xp6(2),e.Oqu(f.searchCount.clinicalCount)}}function d(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(3);e.hij(" ",f.searchCount.clinicalCount," ")}}function Q(v,F){if(1&v&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Clinical Trial Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,z,5,4,"span",5),e.YNc(5,d,1,1,"ng-template",null,14,e.W1O),e.qZA(),e.qZA()),2&v){var f=e.MAs(6),r=e.oxw(2);e.xp6(4),e.Q6J("ngIf",r.searchCount.clinicalCount>0)("ngIfElse",f)}}function J(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",17),e.TgZ(2,"span"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"mat-icon",13),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Q6J("routerLink",e.VKq(2,L,f.substanceId)),e.xp6(2),e.Oqu(f.searchCount.adverseEventCount)}}function te(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(3);e.hij(" ",f.searchCount.adverseEventCount," ")}}function K(v,F){if(1&v&&(e.TgZ(0,"div",4),e.TgZ(1,"div"),e._uU(2," Adverse Event Case Count: "),e.qZA(),e.TgZ(3,"div"),e.YNc(4,J,5,4,"span",5),e.YNc(5,te,1,1,"ng-template",null,16,e.W1O),e.qZA(),e.qZA()),2&v){var f=e.MAs(6),r=e.oxw(2);e.xp6(4),e.Q6J("ngIf",r.searchCount.adverseEventCount>0)("ngIfElse",f)}}function G(v,F){if(1&v&&(e.TgZ(0,"div",2),e.YNc(1,re,7,2,"div",3),e.YNc(2,be,7,2,"div",3),e.YNc(3,Q,7,2,"div",3),e.YNc(4,K,7,2,"div",3),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.loadedComponents&&f.loadedComponents.applications),e.xp6(1),e.Q6J("ngIf",f.loadedComponents&&f.loadedComponents.products),e.xp6(1),e.Q6J("ngIf",f.loadedComponents&&f.loadedComponents.clinicaltrials),e.xp6(1),e.Q6J("ngIf",f.loadedComponents&&f.loadedComponents.adverseevents)}}function ce(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",7),e.TgZ(1,"div"),e._UZ(2,"br"),e.TgZ(3,"button",18),e.NdJ("click",function(){e.CHM(f);var R=e.oxw();return R.launchApplicationMatchingList(R.substanceId)}),e._uU(4," Matching Application Names\xa0 "),e.qZA(),e.qZA(),e._UZ(5,"br"),e.qZA()}if(2&v){var r=e.oxw();e.xp6(3),e.s9C("matBadge",r.appMatchListCount)}}var _e=function(){var v=function(){function F(f,r,O,R,ee){(0,S.Z)(this,F),this.applicationService=f,this.generalService=r,this.activatedRoute=O,this.router=R,this.configService=ee,this.appMatchListCount=0,this.fullFacetField="",this.total=0,this.pageSize=0,this.isShowMatchList="false",this.displayMatchApplicationConfig=!1,this.appCountConcat="0"}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.substanceId=this.substance.uuid,this.loadedComponents=this.configService.configData&&this.configService.configData.loadedComponents||null,this.loadedComponents&&this.loadedComponents.applications&&(this.getSearchCount(),this.getAppIngredMatchListCount())}},{key:"getSubstanceKey",value:function(){var r=this;this.substance&&this.substance.codes.length>0&&this.substance.codes.forEach(function(O){O.codeSystem&&"BDNUM"===O.codeSystem&&O.type&&"PRIMARY"===O.type&&(r.substanceKey=O.code)})}},{key:"getSearchCount",value:function(){var r=this;this.generalService.getSearchCount(this.substance.uuid).subscribe(function(O){O&&(r.searchCount=O)})}},{key:"getAppIngredMatchListCount",value:function(){this.isShowMatchList=sessionStorage.getItem("matchAppCheckBoxValueSess"),null!==this.isShowMatchList&&"true"===this.isShowMatchList&&this.getSubstanceNames(this.substance.uuid)}},{key:"getSubstanceNames",value:function(r){var O=this;r&&this.generalService.getSubstanceNamesBySubstanceUuid(r).subscribe(function(R){O.substanceNames=R,O.substanceNames.forEach(function(ee,Je){ee&&ee.name&&(Je>0&&(O.fullFacetField=O.fullFacetField+" OR "),O.fullFacetField=O.fullFacetField+'root_applicationProductList_applicationProductNameList_productName:"'+ee.name+'"')}),O.getApplicationIngredientMatchList()})}},{key:"getApplicationIngredientMatchList",value:function(){var r=this;this.applicationService.getApplications(null,0,200,this.fullFacetField,{"Has Ingredients":{params:{"Has No Ingredient":!0},isAllMatch:!1}}).subscribe(function(ee){r.appMatchListCount=ee.count})}},{key:"getApplicationBySubstanceKeyCenter",value:function(){var r=this;this.pageSize=5e3,this.privateSearch=this.applicationService.APPALL_SEARCH_SUBSTANCE_KEY+this.substanceKey;var R=this.applicationService.getApplicationAll("default",5e3,this.pageSize,this.privateSearch,this.privateFacetParams).subscribe(function(ee){r.appCountConcat=ee.total.toString()},function(ee){console.log("error")},function(){R.unsubscribe()})}},{key:"launchApplicationMatchingList",value:function(r){this.router.navigate(["/sub-app-match-list",r])}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(I.I),e.Y36(D.m),e.Y36(u.gz),e.Y36(u.F0),e.Y36(N.E))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-substance-counts"]],decls:2,vars:2,consts:[["class","counts-container",4,"ngIf"],["class","divflex",4,"ngIf"],[1,"counts-container"],["class","counts-column",4,"ngIf"],[1,"counts-column"],[4,"ngIf","ngIfElse"],["noRecordApp",""],[1,"divflex"],["target","_blank","title","View Application Records (opens in new window)",3,"routerLink"],[3,"innerHTML"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon","margintopneg10"],["noRecordProd",""],["target","_blank","title","View Product Records (opens in new window)",3,"routerLink"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],["noRecordClinical",""],["target","_blank","title","View Clinical Trial Records (opens in new window)",3,"routerLink"],["noRecordAdverse",""],["target","_blank","title","View Adverse Event Records (opens in new window)",3,"routerLink"],["matBadgeColor","accent",1,"button-style",3,"matBadge","click"]],template:function(f,r){1&f&&(e.YNc(0,G,5,4,"div",0),e.YNc(1,ce,6,1,"div",1)),2&f&&(e.Q6J("ngIf",r.searchCount&&r.loadedComponents),e.xp6(1),e.Q6J("ngIf","true"===r.isShowMatchList&&r.appMatchListCount>0&&r.loadedComponents&&r.loadedComponents.applications))},directives:[c.O5,u.yS,T.Hw,s.gM,q.k],styles:[".counts-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;margin-top:15px;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%}.counts-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:5px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.floatleft[_ngcontent-%COMP%]{float:left}.margintopneg10[_ngcontent-%COMP%]{margin-top:-10px}.padtop10[_ngcontent-%COMP%]{padding-top:10p}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.button-style[_ngcontent-%COMP%]{background-color:var(--blue-bg-color-rgb);color:var(--white-color);text-decoration:none;vertical-align:middle;font-weight:600;text-align:center;line-height:25px}"]}),v}(),Me=n(88951),ve=n(59295),ue=n(12570),lt=n(35096),Xe=n(93392),mt=n(95758);function wt(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-checkbox",6),e.NdJ("change",function(R){return e.CHM(f),e.oxw(3).setDisplayAppToMatchSession(R.checked)}),e.TgZ(2,"span",7),e.TgZ(3,"b"),e._uU(4,"Display Match Application Names"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(3);e.xp6(1),e.Q6J("checked",r.displayMatchAppCheckBoxValue)}}function Pt(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,wt,5,1,"div",2),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!0===f.displayMatchApplicationConfig)}}function Pe(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"button",9),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).export("app")}),e._UZ(2,"mat-icon",10),e._uU(3," Applications "),e.qZA(),e.qZA()}}function ze(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"button",11),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).export("prod")}),e._UZ(2,"mat-icon",10),e._uU(3," Products "),e.qZA(),e.qZA()}}function ft(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",12),e.TgZ(1,"button",13),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).export("clinicaltrialsus")}),e._UZ(2,"mat-icon",10),e._uU(3," Clinical Trials US "),e.qZA(),e.qZA()}}function ct(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",12),e.TgZ(1,"button",14),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).export("clinicaltrialseurope")}),e._UZ(2,"mat-icon",10),e._uU(3," Clinical Trials EU "),e.qZA(),e.qZA()}}function Ee(v,F){1&v&&(e.TgZ(0,"div",15),e.TgZ(1,"mat-icon",16),e._uU(2,"help "),e.qZA(),e.qZA())}function st(v,F){if(1&v&&(e.TgZ(0,"div",1),e.YNc(1,Pt,2,1,"div",2),e.YNc(2,Pe,4,0,"div",3),e.YNc(3,ze,4,0,"div",3),e.YNc(4,ft,4,0,"div",4),e.YNc(5,ct,4,0,"div",4),e.YNc(6,Ee,3,0,"div",5),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.isAdmin&&f.loadedComponents&&f.loadedComponents.applications),e.xp6(1),e.Q6J("ngIf",f.isAdmin&&f.loadedComponents&&f.loadedComponents.applications&&f.additionalExportOptions.indexOf("appxlsx")>-1),e.xp6(1),e.Q6J("ngIf",f.isAdmin&&f.loadedComponents&&f.loadedComponents.products&&f.additionalExportOptions.indexOf("prodxlsx")>-1),e.xp6(1),e.Q6J("ngIf",f.isAdmin&&f.loadedComponents&&f.loadedComponents.clinicaltrials&&f.additionalExportOptions.indexOf("ctusxlsx")>-1),e.xp6(1),e.Q6J("ngIf",f.isAdmin&&f.loadedComponents&&f.loadedComponents.clinicaltrials&&f.additionalExportOptions.indexOf("cteuxlsx")>-1),e.xp6(1),e.Q6J("ngIf",f.isAdmin&&f.hasAdditionalDownloads&&(f.loadedComponents.applications||f.loadedComponents.products))}}var at=[{componentId:"fda-substance-product",path:"fda-substance-product",loadChildren:function(){return n.e(1421).then(n.bind(n,41421)).then(function(F){return F.SubstanceProductsModule})}}],We=[{component:function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt){(0,S.Z)(this,F),this.generalService=f,this.configService=r,this.authService=O,this.substanceService=R,this.router=ee,this.activatedRoute=Je,this.loadingService=_t,this.dialog=Kt,this.subscriptions=[],this.isAdmin=!1,this.privateExport=!1,this.displayMatchApplicationConfig=!1,this.displayMatchAppCheckBoxValue=!1,this.etag="",this.paramUrl="",this.totalSubstance=0,this.hasAdditionalDownloads=!1,this.additionalExportOptions=[]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,ve.q)(1)).subscribe(function(R){r.isAdmin=R,!0===r.isAdmin&&r.isDisplayAppToMatchConfig()}),this.loadedComponents=this.configService.configData&&this.configService.configData.loadedComponents||null;var O=this.substanceService.searchResults.subscribe(function(R){R&&(r.etag=R.etag,r.totalSubstance=R.total,r.getExportOptions())});this.subscriptions.push(O)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()})}},{key:"isDisplayAppToMatchConfig",value:function(){if(this.configService.configData&&null!==this.configService.configData.displayMatchApplication&&(this.displayMatchApplicationConfig=JSON.parse(this.configService.configData.displayMatchApplication),!0===this.displayMatchApplicationConfig)){var r=sessionStorage.getItem("matchAppCheckBoxValueSess");null===r?sessionStorage.setItem("matchAppCheckBoxValueSess","false"):this.displayMatchAppCheckBoxValue=JSON.parse(r)}}},{key:"setDisplayAppToMatchSession",value:function(r){sessionStorage.setItem("matchAppCheckBoxValueSess",r),this.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},this.router.onSameUrlNavigation="reload",this.router.navigate(["/browse-substance"])}},{key:"export",value:function(r){var O=this;if(this.etag){var R="xlsx",ee=this.getApiExportUrl(this.etag,R,r);if(!0===this.isAdmin){var Je="";null!=r&&("app"===r?Je="browseSubstanceApplication":"prod"===r?Je="browseSubstanceProduct":"clinicaltrialsus"===r?Je="browseSubstanceClinicalTrial-US":"clinicaltrialseurope"===r&&(Je="browseSubstanceClinicalTrial-EU")),this.dialog.open(lt.L,{width:"700px",data:{extension:R,type:Je,entity:"applications",hideOptionButtons:!0}}).afterClosed().subscribe(function(Kt){var Un=Kt.name,ai=Kt.id;Un&&""!==Un&&(O.loadingService.setLoading(!0),O.authService.startUserDownload(ee,O.privateExport,Un+"."+R,ai).subscribe(function(ki){O.loadingService.setLoading(!1),O.router.navigate(["/user-downloads/",ki.id])},function(ki){return O.loadingService.setLoading(!1)}))})}}}},{key:"getApiExportUrl",value:function(r,O,R){return this.generalService.getApiExportUrlBrowseSubstance(r,O,R)}},{key:"getExportOptions",value:function(){var r=this;this.substanceService.getExportOptions(this.etag).subscribe(function(O){r.exportOptions=O,r.exportOptions&&r.exportOptions.forEach(function(R){R.extension&&("appxlsx"===R.extension||"prodxlsx"===R.extension||"ctusxlsx"===R.extension||"cteuxlsx"===R.extension)&&(r.hasAdditionalDownloads=!0,r.additionalExportOptions.push(R.extension))})})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(D.m),e.Y36(N.E),e.Y36(Me.e),e.Y36(ue.d),e.Y36(u.F0),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-show-application-toggle"]],decls:1,vars:1,consts:[["class","divflex",4,"ngIf"],[1,"divflex"],[4,"ngIf"],["class","padleft10px divheight",4,"ngIf"],["class","padleft10px",4,"ngIf"],["class","padleft10px padtop10px",4,"ngIf"],[3,"checked","change"],[1,"font14px"],[1,"padleft10px","divheight"],["matTooltip","Export All Applications for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["matTooltip","Export All Products for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],[1,"padleft10px"],["matTooltip","Export All Clinical Trials US for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["matTooltip","Export All Clinical Trials Europe for Substance Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],[1,"padleft10px","padtop10px"],["matTooltip","It may take some time to download. After the download process starts, you can move away\n from the download process page and continue with your work. Go to 'User Downloads' menu in Profile to get the downloaded file.",1,"colorgreen"]],template:function(f,r){1&f&&e.YNc(0,st,7,6,"div",0),2&f&&e.Q6J("ngIf",r.loadedComponents)},directives:[c.O5,B.oG,h.lW,s.gM,T.Hw],styles:[".divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.divheight[_ngcontent-%COMP%]{height:50px}.colororange[_ngcontent-%COMP%]{color:var(--regular-orange-color)}.font14px[_ngcontent-%COMP%]{font-size:14px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.export-button[_ngcontent-%COMP%]{border-radius:4px;margin-top:5px}.outer-div[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.font11px[_ngcontent-%COMP%]{font-size:11px}.padleft260px[_ngcontent-%COMP%]{padding-left:260px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}#parent[_ngcontent-%COMP%] #popup[_ngcontent-%COMP%]{display:none}#parent[_ngcontent-%COMP%]:hover #popup[_ngcontent-%COMP%]{display:block}"]}),v}(),componentType:"browseHeader"}],xe=[{component:_e,componentType:"summary"}],ut=n(68756),Fe=n(54244),et=n(90587),Ht=n(19946),nn=n(7216),an=n(43188),kt=n(44770),It=n(43365),$e=n(81196),Ae=n(64316),X=n(26439),ne=n(91434),me=n(61859),Oe=n(26131),He=n(82796),At=n(31959),Ft=n(43672),sn=n(5818),Xt=n(1130),gn=n(52489),vn=n(88325),hn=n(53141),jn=n(24874),Jn=n(93666),oi=n(4096),ri=n(52149),un=n(69093),mn=n(50318),zt=n(76775),qe=n(95132),pt=n(71989),Ne=n(98977),Re=n(32673),tt=n(18291);function Ke(v,F){if(1&v&&(e.TgZ(0,"mat-hint"),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Oqu(f.hintMessage)}}function vt(v,F){if(1&v&&(e.TgZ(0,"mat-error"),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Oqu(f.errorMessage)}}function Rt(v,F){if(1&v&&(e.TgZ(0,"mat-option",13),e.TgZ(1,"div",14),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=e.oxw(2);e.Q6J("value",f.key),e.xp6(1),e.Q6J("innerHTML",r.highlight(f.key),e.oJD),e.xp6(1),e.Oqu(f.key)}}function rn(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",10),e.TgZ(2,"span",11),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e.YNc(5,Rt,3,3,"mat-option",12),e.qZA()),2&v){var f=F.$implicit,r=e.oxw();e.xp6(4),e.Oqu(f.display),e.xp6(1),e.Q6J("ngForOf",r.substanceSuggestionsGroup[f.value])}}var Nn=function(){var v=function(){function F(f,r,O,R,ee){(0,S.Z)(this,F),this.applicationService=f,this.element=r,this.gaService=O,this.configService=R,this.cvService=ee,this.searchControl=new et.NI,this.matOpen=!0,this.searchPerformed=new e.vpe,this.searchValueOut=new e.vpe,this.placeholder="Search",this.hintMessage="",this.privateErrorMessage="",this.opened=new e.vpe,this.closed=new e.vpe,this.CasDisplay="CAS"}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.searchControl.valueChanges.pipe((0,pt.b)(500),(0,Ne.x)(),(0,Re.w)(function(O){return r.query=O,r.searchValueOut.emit(r.query),r.gaService.sendEvent(r.eventCategory||"substanceTextSearch","search:enter-term",!r.configService.environment.isAnalyticsPrivate&&O||"search term"),r.applicationService.getApplicationSearchSuggestions(O.toUpperCase())})).subscribe(function(O){r.substanceSuggestionsGroup=O;var R=["root_applicationID","Application_Type","Product_Name","Sponsor_Name","Title","Ingredient_Name","Division_Class_Division","Indication"];r.suggestionsFields=Object.keys(r.substanceSuggestionsGroup).filter(function(ee){return R.indexOf(ee)>-1}),r.suggestionsFields.forEach(function(ee,Je){r.suggestionsFields[Je]="root_applicationID"===ee?{value:"root_applicationID",display:"Application Type Number"}:"Application_Type"===ee?{value:"Application_Type",display:"Application Type"}:"Product_Name"===ee?{value:"Product_Name",display:"Product Name"}:"Sponsor_Name"===ee?{value:"Sponsor_Name",display:"Sponsor Name"}:"Ingredient_Name"===ee?{value:"Ingredient_Name",display:"Ingredient Name"}:{value:ee,display:ee}}),null!=r.suggestionsFields&&r.suggestionsFields.length>0&&(r.matOpen=!0,r.opened.emit())},function(O){r.gaService.sendException("search suggestion error from API call"),console.log(O)})}},{key:"searchValue",set:function(r){this.searchControl.setValue(r)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(r){this.searchControl.markAsTouched(),this.searchControl.setErrors(r?{error:!0}:null),this.privateErrorMessage=r}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(r){this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&r.option.value||"auto-complete option");var ee=r.option.value;ee=this.topSearchClean(ee),this.searchPerformed.emit(ee)}},{key:"processSubstanceSearch",value:function(){var r=this.searchControl.value;this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","search:submit",!this.configService.environment.isAnalyticsPrivate&&r||"search term option"),r=this.topSearchClean(r),this.searchPerformed.emit(r)}},{key:"highlight",value:function(r){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=r,this.testElem.scrollWidth>this.testElem.offsetWidth))){var O=r.toUpperCase().indexOf(this.query.toUpperCase());r="..."+r.substring(O-15,r.length)}var R=this.query.replace(/(?=[() ])/g,"\\");return r.replace(new RegExp(R,"gi"),function(ee){return""+ee+""})}return r}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var r=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){r.source?(r.searchContainerElement.classList.remove("active-"+r.source),r.searchContainerElement.classList.remove("deactivate-search")):(r.searchContainerElement.classList.remove("active-search"),r.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(r){return r&&r.length>0&&((r=r.trim()).indexOf('"')<0&&r.indexOf("*")<0&&r.indexOf(":")<0&&r.indexOf(" AND ")<0&&r.indexOf(" OR ")<0?r='"'+r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':r.indexOf(":")<0&&(r=r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")),this.searchControl.setValue(r)),r}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(I.I),e.Y36(e.SBq),e.Y36(jn.$),e.Y36(hn.E),e.Y36(tt.I))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-application-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:12,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"suggestion-styling",3,"innerHTML"]],template:function(f,r){if(1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return r.focused()}),e.qZA(),e.YNc(4,Ke,2,1,"mat-hint",3),e.YNc(5,vt,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(ee){return r.substanceSearchOptionSelected(ee)})("closed",function(){return r.autoCompleteClosed()}),e.YNc(8,rn,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return r.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&f){var O=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",r.source),e.xp6(1),e.Q6J("placeholder",r.placeholder)("formControl",r.searchControl)("matAutocomplete",O),e.xp6(1),e.Q6J("ngIf",r.hintMessage),e.xp6(1),e.Q6J("ngIf",r.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",r.suggestionsFields),e.xp6(2),e.Q6J("disabled",r.searchControl.invalid)}},directives:[et._Y,et.JL,et.F,kt.KE,c.mk,It.Nt,et.Fj,an.ZL,et.JJ,et.oH,c.O5,kt.bx,kt.TO,an.XC,c.sg,Xt.ey,h.lW,T.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:var(--regular-white-color);overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:var(--link-primary-color);color:var(--regular-white-color)}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 750px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 1024px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:var(--primary-color);overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:var(--regular-white-color);overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{animation-name:reduceWidth;animation-duration:.3s}}@keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),v}();function $t(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",64),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",65),e.qZA()}}function fn(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",70),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return e.oxw(4).restricSearh(ee.luceneQuery)}),e.TgZ(1,"div",71),e._uU(2),e.qZA(),e.TgZ(3,"div",72),e._uU(4),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(2),e.hij(" ",r.displayField," "),e.xp6(2),e.hij(" ",r.count," ")}}function ln(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",68),e._uU(2),e.qZA(),e.YNc(3,fn,5,2,"button",69),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==f?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",r.narrowSearchSuggestions[f])}}function _n(v,F){if(1&v&&(e.TgZ(0,"div",66),e.YNc(1,ln,4,2,"div",67),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f&&("WORD"===f||"FULL"===f))}}function xn(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",52),e.TgZ(1,"div",53),e.TgZ(2,"div",54),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",55),e.NdJ("menuOpened",function(){return e.CHM(f),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(f),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",56),e.qZA(),e.TgZ(11,"button",57),e.NdJ("click",function(){return e.CHM(f),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,$t,2,0,"button",58),e.TgZ(15,"mat-menu",59,60),e.YNc(17,_n,2,1,"div",61),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",53),e.TgZ(19,"div",62),e._uU(20," For more options use the "),e.TgZ(21,"a",63),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(16),O=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",r),e.xp6(3),e.hij("\xa0 ",O.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",O.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",O.matchTypes)}}function In(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",64),e.NdJ("click",function(){return e.CHM(f),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",65),e.qZA()}}function Yn(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",77),e.TgZ(1,"div"),e.TgZ(2,"span",78),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",79),e.YNc(8,In,2,0,"button",58),e.TgZ(9,"button",64),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",80),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(6),e.Oqu(r.searchTerm),e.xp6(2),e.Q6J("ngIf",r.isSearchEditable)}}function mi(v,F){1&v&&e._UZ(0,"mat-icon",87)}function wi(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",77),e.TgZ(1,"div",81),e.TgZ(2,"span",82),e.YNc(3,mi,1,0,"mat-icon",83),e._uU(4),e.qZA(),e.TgZ(5,"span",84),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",79),e.TgZ(8,"button",85),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return ee.removeFacet(ee.type,ee.bool,ee.val)}),e._UZ(9,"mat-icon",86),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(3),e.Q6J("ngIf",!r.bool),e.xp6(1),e.hij(" ",r.type,": "),e.xp6(2),e.hij(" ",r.val," ")}}function Bi(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",88),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function Xi(v,F){if(1&v&&(e.TgZ(0,"div",73),e.YNc(1,Yn,11,2,"div",74),e.YNc(2,wi,10,3,"div",75),e.YNc(3,Bi,3,0,"button",76),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.searchTerm),e.xp6(1),e.Q6J("ngForOf",f.displayFacets),e.xp6(1),e.Q6J("ngIf",f.displayFacets&&f.displayFacets.length>0||f.searchTerm)}}function ka(v,F){if(1&v&&(e.TgZ(0,"mat-option",89),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f.value),e.xp6(1),e.hij(" ",f.display," ")}}function Ja(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",90),e.TgZ(1,"button",91),e.NdJ("click",function(){return e.CHM(f),e.oxw().export()}),e._UZ(2,"mat-icon",92),e._uU(3," Export "),e.qZA(),e.qZA()}}function _a(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Application Type "),e.qZA())}var nr=function(F){return["/application",F,"edit"]};function _r(v,F){if(1&v&&(e.TgZ(0,"a",98),e._UZ(1,"mat-icon",65),e.qZA()),2&v){var f=e.oxw().$implicit;e.Q6J("routerLink",e.VKq(1,nr,f.id))}}var wa=function(F){return["/application",F]};function or(v,F){if(1&v&&(e.TgZ(0,"td",94),e.TgZ(1,"div",95),e.TgZ(2,"a",96),e._uU(3),e.qZA(),e._uU(4,"\xa0\xa0 "),e.YNc(5,_r,2,3,"a",97),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=e.oxw();e.xp6(2),e.Q6J("routerLink",e.VKq(3,wa,f.id)),e.xp6(1),e.hij(" ",f.appType," "),e.xp6(2),e.Q6J("ngIf",r.isAdmin)}}function Ta(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Application Number "),e.qZA())}function Cn(v,F){if(1&v&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.appNumber," ")}}function Pn(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Center "),e.qZA())}function Tt(v,F){if(1&v&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.center," ")}}function Le(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Provenance "),e.qZA())}function qt(v,F){if(1&v&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.provenance," ")}}function Gt(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Application Status "),e.qZA())}function An(v,F){if(1&v&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.status," ")}}function Wn(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Product Name "),e.qZA())}function vi(v,F){if(1&v&&(e.TgZ(0,"div",103),e.TgZ(1,"li"),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.hij(" ",f.productName," ")}}function Hi(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,vi,3,1,"div",102),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngForOf",f.applicationProductNameList)}}function ea(v,F){if(1&v&&(e.TgZ(0,"td",99),e.TgZ(1,"ol",100),e.YNc(2,Hi,2,1,"div",101),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Q6J("ngForOf",f.applicationProductList)}}function _i(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Ingredient Name (Active Ingredient) "),e.qZA())}var Ii=function(F){return["/substances",F]};function ga(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"li"),e.TgZ(2,"a",105),e._uU(3),e.qZA(),e.TgZ(4,"button",106),e.NdJ("click",function(R){e.CHM(f);var ee=e.oxw(3).$implicit;return e.oxw(4).openImageModal(R,ee._substanceUuid)}),e.TgZ(5,"mat-icon"),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,Ii,r._substanceUuid)),e.xp6(1),e.hij(" ",r._ingredientName," ")}}function Ha(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,ga,7,4,"div",67),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf","ACTIVE INGREDIENT"===f.ingredientType||"Active Ingredient"===f.ingredientType)}}function Oa(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Ha,2,1,"div",67),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",f.ingredientType)}}function Aa(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Oa,2,1,"div",67),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f._ingredientName)}}function Qa(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Aa,2,1,"div",101),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngForOf",f.applicationIngredientList)}}function va(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Qa,2,1,"div",101),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",f.applicationProductList)}}function Ka(v,F){if(1&v&&(e.TgZ(0,"td",99),e.TgZ(1,"ol",100),e.YNc(2,va,2,1,"div",104),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=e.oxw();e.xp6(2),e.Q6J("ngIf",f.applicationProductList.length>0)("ngIfElse",r.noRecordProdName)}}function Zt(v,F){1&v&&(e.TgZ(0,"th",93),e._uU(1," Sponsor Name "),e.qZA())}function Ve(v,F){if(1&v&&(e.TgZ(0,"td",94),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.sponsorName," ")}}function se(v,F){1&v&&e._UZ(0,"tr",107)}function he(v,F){1&v&&e._UZ(0,"tr",108)}function ht(v,F){if(1&v&&(e.TgZ(0,"a",131),e._UZ(1,"mat-icon",65),e.qZA()),2&v){var f=e.oxw().$implicit;e.Q6J("routerLink",e.VKq(1,nr,f.id))}}function Vt(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1," \u25aa "),e.TgZ(2,"span",135),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"span",136),e._uU(6," (Deprecated) "),e.qZA(),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(4),e.Oqu(f.productName)}}function dn(v,F){if(1&v&&(e._uU(0," \u25aa "),e.TgZ(1,"span",137),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(3),e.Oqu(f.productName)}}function Zn(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Vt,7,1,"div",104),e.YNc(2,dn,4,1,"ng-template",null,134,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",r.deprecated&&"Y"==r.deprecated)("ngIfElse",f)}}function Xn(v,F){1&v&&e._uU(0," (No Product Name) ")}function ni(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Zn,4,2,"div",104),e.YNc(2,Xn,1,0,"ng-template",null,133,e.W1O),e.qZA()),2&v){var f=F.$implicit,r=e.MAs(3);e.xp6(1),e.Q6J("ngIf",f.productName)("ngIfElse",r)}}function pi(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,ni,4,2,"div",101),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",f.applicationProductNameList)}}function Mi(v,F){1&v&&e._uU(0," (No Product Name) ")}function Wi(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",144),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(3).$implicit;e.xp6(2),e.hij("(",f.ingredientType,")")}}function Yi(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(3).$implicit;e.hij(" (",f.ingredientType,") ")}}function aa(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Wi,3,1,"div",104),e.YNc(2,Yi,1,1,"ng-template",null,143,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf","Active Ingredient"===r.ingredientType)("ngIfElse",f)}}function xi(v,F){if(1&v&&(e.TgZ(0,"div",145),e.TgZ(1,"a",105),e._uU(2),e.qZA(),e.TgZ(3,"span",146),e._uU(4,"\xa0(Active Moiety)"),e.qZA(),e._UZ(5,"br"),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Ii,f.activeMoietyUnii)),e.xp6(1),e.Oqu(f.activeMoietyName)}}function Ui(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",146),e._uU(3,"\xa0(Active Moiety)"),e.qZA(),e._UZ(4,"br"),e.qZA()),2&v){var f=e.oxw(3).$implicit;e.xp6(1),e.hij(" ",f.activeMoietyName," ")}}function ca(v,F){if(1&v&&e.YNc(0,Ui,5,1,"div",67),2&v){var f=e.oxw(2).$implicit;e.Q6J("ngIf",f.activeMoietyName)}}function oa(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",139),e.TgZ(2,"span",140),e._uU(3,"\u2666"),e.qZA(),e.TgZ(4,"a",105),e._uU(5),e.qZA(),e.TgZ(6,"button",106),e.NdJ("click",function(ee){e.CHM(f);var Je=e.oxw().$implicit;return e.oxw(5).openImageModal(ee,Je._substanceUuid)}),e.TgZ(7,"mat-icon"),e._uU(8,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.YNc(9,aa,4,2,"div",67),e.YNc(10,xi,6,4,"div",141),e.YNc(11,ca,1,1,"ng-template",null,142,e.W1O),e.qZA()}if(2&v){var r=e.MAs(12),O=e.oxw().$implicit;e.xp6(4),e.Q6J("routerLink",e.VKq(5,Ii,O._substanceUuid)),e.xp6(1),e.hij(" ",O._ingredientName," "),e.xp6(4),e.Q6J("ngIf",O.ingredientType),e.xp6(1),e.Q6J("ngIf",O.activeMoietyUnii)("ngIfElse",r)}}function pr(v,F){1&v&&e._uU(0," (No Ingredient Name) ")}function sr(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",103),e.TgZ(2,"div",120),e._uU(3),e.qZA(),e.TgZ(4,"div",121),e.YNc(5,oa,13,7,"div",104),e.YNc(6,pr,1,0,"ng-template",null,138,e.W1O),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.MAs(7);e.xp6(3),e.hij(" Ingredient Name: ",r+1,": "),e.xp6(2),e.Q6J("ngIf",f.substanceKey)("ngIfElse",O)}}function Ca(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",103),e.TgZ(2,"div",120),e._uU(3),e.qZA(),e.TgZ(4,"div",121),e.YNc(5,pi,2,1,"div",104),e.YNc(6,Mi,1,0,"ng-template",null,132,e.W1O),e.qZA(),e.qZA(),e.YNc(8,sr,8,3,"div",101),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.MAs(7);e.xp6(3),e.hij(" Product Name ",r+1,": "),e.xp6(2),e.Q6J("ngIf",f.applicationProductNameList.length>0)("ngIfElse",O),e.xp6(3),e.Q6J("ngForOf",f.applicationIngredientList)}}function ir(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Ca,9,4,"div",101),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",f.applicationProductList)}}function yr(v,F){1&v&&(e.TgZ(0,"div",103),e.TgZ(1,"div",120),e._uU(2," Product Name 1: "),e.qZA(),e.TgZ(3,"div",121),e._uU(4," (No Product Name) "),e.qZA(),e.qZA(),e.TgZ(5,"div",103),e.TgZ(6,"div",120),e._uU(7," Ingredient Name 1: "),e.qZA(),e.TgZ(8,"div",121),e._uU(9," (No Ingredient Name) "),e.qZA(),e.qZA())}function Qi(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"span",147),e._uU(2,"Clinical Trials: "),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.s9C("matBadge",f._clinicalTrialList.length)}}function en(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",148),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+f.nctNumber,e.LSH),e.xp6(1),e.Oqu(f.nctNumber)}}function Dn(v,F){if(1&v&&(e.TgZ(0,"div",139),e._uU(1," \u2022\xa0 "),e.YNc(2,en,3,2,"span",67),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Q6J("ngIf",f.nctNumber)}}function qn(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" \u2022\xa0",f.indication," ")}}function bi(v,F){if(1&v&&(e.TgZ(0,"div",139),e.YNc(1,qn,2,1,"span",67),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f.indication)}}function Ji(v,F){if(1&v&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"a",110),e._uU(4),e.qZA(),e._uU(5," \xa0\xa0\xa0 "),e.YNc(6,ht,2,3,"a",111),e.qZA(),e.TgZ(7,"div"),e.TgZ(8,"span",112),e._uU(9,"Center:\xa0"),e.TgZ(10,"span",113),e._uU(11),e.qZA(),e.qZA(),e._uU(12," \xa0\xa0\xa0 \xa0\xa0\xa0 "),e.TgZ(13,"span",114),e._uU(14,"Provenance:\xa0"),e.TgZ(15,"span",115),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.TgZ(17,"div"),e.TgZ(18,"a",116),e._uU(19),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"mat-card-content"),e.TgZ(21,"div",103),e.TgZ(22,"div",117),e.TgZ(23,"div",103),e.TgZ(24,"div",118),e.YNc(25,ir,2,1,"div",104),e.YNc(26,yr,10,0,"ng-template",null,119,e.W1O),e.qZA(),e.qZA(),e.TgZ(28,"div",103),e.TgZ(29,"div",120),e._uU(30," Title: "),e.qZA(),e.TgZ(31,"div",121),e._uU(32),e.qZA(),e.qZA(),e.TgZ(33,"div",103),e.TgZ(34,"div",120),e._uU(35," Sponsor Name: "),e.qZA(),e.TgZ(36,"div",121),e._uU(37),e.qZA(),e.qZA(),e.TgZ(38,"div",103),e.TgZ(39,"div",122),e.TgZ(40,"div",123),e._uU(41," Status Date: "),e.qZA(),e.TgZ(42,"div",124),e._uU(43),e.qZA(),e.qZA(),e.TgZ(44,"div",122),e.TgZ(45,"div",125),e.YNc(46,Qi,3,1,"span",67),e.qZA(),e.TgZ(47,"div",126),e._uU(48," \xa0 "),e.YNc(49,Dn,3,1,"div",127),e.qZA(),e.qZA(),e.qZA(),e.TgZ(50,"div",103),e.TgZ(51,"div",122),e.TgZ(52,"div",123),e._uU(53," Submit Date: "),e.qZA(),e.TgZ(54,"div",124),e._uU(55),e.qZA(),e.qZA(),e.TgZ(56,"div",122),e.TgZ(57,"div",125),e._uU(58," Indications:\xa0 "),e.qZA(),e.TgZ(59,"div",126),e.YNc(60,bi,2,1,"div",127),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(61,"div",128),e.TgZ(62,"span"),e.TgZ(63,"div",103),e.TgZ(64,"div",129),e._uU(65," Created By: "),e.qZA(),e.TgZ(66,"div",130),e._uU(67),e.qZA(),e.qZA(),e.TgZ(68,"div",103),e.TgZ(69,"div",129),e._uU(70," Create Date: "),e.qZA(),e.TgZ(71,"div",130),e._uU(72),e.ALo(73,"date"),e.qZA(),e.qZA(),e.TgZ(74,"div",103),e.TgZ(75,"div",129),e._uU(76," Edited By: "),e.qZA(),e.TgZ(77,"div",130),e._uU(78),e.qZA(),e.qZA(),e.TgZ(79,"div",103),e.TgZ(80,"div",129),e._uU(81," Edit Date: "),e.qZA(),e.TgZ(82,"div",130),e._uU(83),e.ALo(84,"date"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=e.MAs(27),O=e.oxw(2);e.xp6(3),e.Q6J("routerLink",e.VKq(27,wa,f.id)),e.xp6(1),e.AsE(" ",f.appType,"\xa0",f.appNumber," "),e.xp6(2),e.Q6J("ngIf",O.isAdmin),e.xp6(5),e.Oqu(f.center),e.xp6(5),e.Oqu(f.provenance),e.xp6(2),e.Q6J("routerLink",e.VKq(29,wa,f.id)),e.xp6(1),e.hij(" Status: ",f.status," "),e.xp6(6),e.Q6J("ngIf",f.applicationProductList.length>0)("ngIfElse",r),e.xp6(7),e.hij(" ",f.title," "),e.xp6(5),e.hij(" ",f.sponsorName," "),e.xp6(6),e.hij(" \xa0",f.statusDate," "),e.xp6(3),e.Q6J("ngIf",f._clinicalTrialList),e.xp6(3),e.Q6J("ngForOf",f._clinicalTrialList),e.xp6(6),e.hij(" \xa0",f.submitDate," "),e.xp6(5),e.Q6J("ngForOf",f.applicationIndicationList),e.xp6(7),e.hij(" ",f.createdBy," "),e.xp6(5),e.hij(" ",e.xi3(73,21,f.creationDate,"MM/dd/yyyy h:mm a")," "),e.xp6(6),e.hij(" ",f.modifiedBy," "),e.xp6(5),e.hij(" ",e.xi3(84,24,f.lastModifiedDate,"MM/dd/yyyy h:mm a")," ")}}function Vi(v,F){if(1&v&&(e.TgZ(0,"div",109),e.YNc(1,Ji,85,31,"mat-card",101),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngForOf",f.applications)}}function ya(v,F){}var Na=function(){return[5,10,50,100]},Ua=function(F){return{"bad-page":F}},zi=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr,is,eo,Mo){(0,S.Z)(this,F),this.applicationService=f,this.generalService=r,this.activatedRoute=O,this.location=R,this.locationStrategy=ee,this.router=Je,this.sanitizer=_t,this.gaService=Kt,this.configService=Un,this.loadingService=ai,this.notificationService=Pi,this.authService=ki,this.overlayContainerService=ha,this.facetManagerService=kr,this.utilsService=is,this.dialog=eo,this.titleService=Mo,this.view="cards",this.sortValues=oi.R,this.isLoading=!0,this.isError=!1,this.isLoggedIn=!1,this.dataSource=[],this.hasBackdrop=!1,this.isComponentInit=!1,this.privateExport=!1,this.disableExport=!1,this.etag="",this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.isSearchEditable=!1,this.invalidPage=!1,this.ascDescDir="desc",this.displayedColumns=["appType","appNumber","center","provenance","applicationStatus","productName","sponsorName","ingredientName"],this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[]}return(0,t.Z)(F,[{key:"onPopState",value:function(r){var O=this;setTimeout(function(){O.router.url===O.previousState[0]&&O.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var r=this;this.facetManagerService.registerGetFacetsHandler(this.applicationService.getApplicationFacets),this.gaService.sendPageView("Browse Applications"),this.titleService.setTitle("A:Browse Applications"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"root_appNumber",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var R=this.authService.getAuth().subscribe(function(Je){Je&&(r.isLoggedIn=!0),r.isAdmin=r.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(R);var ee=this.activatedRoute.queryParamMap.subscribe(function(Je){r.searchValue=Je.get("search")});this.subscriptions.push(ee),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchApplications()}},{key:"searchApplications",value:function(){var r=this;this.loadingService.setLoading(!0);var R=this.applicationService.getApplications(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(ee){r.isError=!1,r.applications=ee.content,r.dataSource=r.applications,r.totalApplications=ee.total,r.etag=ee.etag,r.lastPage=ee.total%r.pageSize==0?ee.total/r.pageSize:Math.floor(ee.total/r.pageSize+1),ee.facets&&ee.facets.length>0&&(r.rawFacets=ee.facets),r.narrowSearchSuggestions={},r.matchTypes=[],r.narrowSearchSuggestionsCount=0,ee.narrowSearchSuggestions&&ee.narrowSearchSuggestions.length&&ee.narrowSearchSuggestions.forEach(function(Je){null==r.narrowSearchSuggestions[Je.matchType]&&(r.narrowSearchSuggestions[Je.matchType]=[],"WORD"===Je.matchType?r.matchTypes.unshift(Je.matchType):r.matchTypes.push(Je.matchType)),r.narrowSearchSuggestions[Je.matchType].push(Je),r.narrowSearchSuggestionsCount++}),r.matchTypes.sort(),r.getSubstanceBySubstanceKey(),r.getClinicalTrialApplication()},function(ee){console.log("error");var Je={message:"There was an error trying to retrieve Applications. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(Je)},function(){R.unsubscribe(),r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchApplications()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("applicationFiltering","icon-button:clear-search",Jn.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchApplications()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(r){r.removeFacet(r.type,r.bool,r.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var r={queryParams:{}};r.queryParams.searchTerm=this.privateSearchTerm,r.queryParams.pageSize=this.pageSize,r.queryParams.pageIndex=this.pageIndex,r.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var O=this.router.createUrlTree([],{queryParams:r.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(O.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(r){var O=this;if(r.active){var R=this.displayedColumns.indexOf(r.active).toString();this.ascDescDir=r.direction,this.sortValues.forEach(function(ee){ee.displayedColumns&&ee.direction&&O.displayedColumns[R]===ee.displayedColumns&&O.ascDescDir===ee.direction&&(O.order=ee.value)}),this.searchApplications()}}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substancesFiltering","button:sidenav","open")}},{key:"updateView",value:function(r){this.view=r.value}},{key:"changePage",value:function(r){var O,R;this.pageSize!==r.pageSize?(O="select:page-size",R=r.pageSize):this.pageIndex!==r.pageIndex&&(O="icon-button:page-number",R=r.pageIndex+1),this.gaService.sendEvent("applicationsContent",O,"pager",R),this.pageSize=r.pageSize,this.pageIndex=r.pageIndex,this.populateUrlQueryParameters(),this.searchApplications()}},{key:"customPage",value:function(r){if(this.validatePageInput(r)){this.invalidPage=!1;var O=Number(r.target.value)-1;this.pageIndex=O,this.gaService.sendEvent("applicationsContent","select:page-number","pager",O),this.populateUrlQueryParameters(),this.searchApplications()}}},{key:"validatePageInput",value:function(r){if(r&&r.target){var O=Number(r.target.value);if(!isNaN(Number(O))&&Number.isInteger(O)&&O<=this.lastPage&&O>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(r){this.pageIndex=0,this.privateFacetParams=r.facetParam,this.displayFacets=r.displayFacets,this.isFacetsParamsInit?this.searchApplications():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(r){}},{key:"editAdvancedSearch",value:function(){var r=Jn.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("Application Filtering","icon-button:edit-advanced-search",r);var O={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],O)}},{key:"getSubstanceBySubstanceKey",value:function(){var r=this;this.applications.forEach(function(O,R){O.applicationProductList.forEach(function(ee,Je){ee.applicationProductNameList.sort(function(_t,Kt){return new Date(Kt.creationDate)-new Date(_t.creationDate)}),ee.applicationIngredientList.forEach(function(_t,Kt){if(null!=_t.substanceKey){var Un=r.generalService.getSubstanceByAnyId(_t.substanceKey).subscribe(function(ai){ai&&_t.substanceKey&&r.generalService.getSubstanceByAnyId(_t.substanceKey).subscribe(function(Pi){Pi&&(_t._substanceUuid=Pi.uuid,_t._ingredientName=Pi._name)})});r.subscriptions.push(Un)}})})})}},{key:"restricSearh",value:function(r){this.privateSearchTerm=r,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchApplications()}},{key:"export",value:function(){var r=this;if(this.etag){var O="xlsx",R=this.getApiExportUrl(this.etag,O);this.dialog.open(lt.L,{width:"700px",data:{extension:O,type:"BrowseApplications",entity:"applications",hideOptionButtons:!0}}).afterClosed().subscribe(function(Je){var _t=Je.name,Kt=Je.id;_t&&""!==_t&&(r.loadingService.setLoading(!0),r.authService.startUserDownload(R,r.privateExport,_t+"."+O,Kt).subscribe(function(ai){r.loadingService.setLoading(!1),r.router.navigate(["/user-downloads/",ai.id])},function(ai){r.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(r,O){return this.applicationService.getApiExportUrl(r,O)}},{key:"updateApplicationUrl",get:function(){return this.applicationService.getUpdateApplicationUrl()}},{key:"getClinicalTrialApplication",value:function(){var r=this;this.applications.forEach(function(O,R){var ee=r.applicationService.getClinicalTrialApplication(O.id).subscribe(function(Je){O._clinicalTrialList=[],O._clinicalTrialList=Je});r.subscriptions.push(ee)})}},{key:"openImageModal",value:function(r,O){var R=this,Je=this.dialog.open(un.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:O,uuid:O}});this.overlayContainer.style.zIndex="1002";var _t=Je.afterClosed().subscribe(function(){R.overlayContainer.style.zIndex=null,_t.unsubscribe()},function(){R.overlayContainer.style.zIndex=null,_t.unsubscribe()})}},{key:"processSubstanceSearch",value:function(r){this.privateSearchTerm=r,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(I.I),e.Y36(D.m),e.Y36(u.gz),e.Y36(c.Ye),e.Y36(c.S$),e.Y36(u.F0),e.Y36(mn.H7),e.Y36(jn.$),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(Me.e),e.Y36(Fe.Xj),e.Y36(gn.bH),e.Y36(ri.F),e.Y36(mt.uw),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-applications-browse"]],hostBindings:function(f,r){1&f&&e.NdJ("popstate",function(R){return r.onPopState(R)},!1,e.Jf7)},decls:87,vars:42,consts:[["mode","side","opened",""],["configName","applications","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],[1,"sort"],[3,"ngModel","selectionChange","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","applicationSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],[1,"responsive"],["mat-table","","matSort","","matSortActive","appNumber","matSortDirection","asc","matSortDisableClear","",1,"font12px",3,"dataSource","matSortChange"],["matColumnDef","appType"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","appNumber"],["matColumnDef","center"],["matColumnDef","provenance"],["matColumnDef","applicationStatus"],["matColumnDef","productName"],["valign","top","mat-cell","",4,"matCellDef"],["matColumnDef","ingredientName"],["matColumnDef","sponsorName"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],[1,"full-paginator-right"],[1,"page-selector-right"],["noRecordApplication",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[3,"value"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],[1,"width120px"],["target","_blank","alt","View Application Record","matTooltip","View Application Record",1,"substance-name",3,"routerLink"],["target","_blank","matTooltip","Edit Application Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit Application Record",3,"routerLink"],["valign","top","mat-cell",""],[1,"olstyle"],[4,"ngFor","ngForOf"],["class","row",4,"ngFor","ngForOf"],[1,"row"],[4,"ngIf","ngIfElse"],["target","_blank",3,"routerLink"],["mat-button","",1,"structure-parameters",3,"click"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],["target","_blank",1,"substance-name",3,"routerLink"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink",4,"ngIf"],[1,"center"],[1,"colorlightpurple"],[1,"center","colordarkblue"],[1,"colordarkblue"],["target","_blank",1,"approval-id",3,"routerLink"],[1,"width70percent"],[1,"width100percent"],["noRecordProdName",""],[1,"row-property-key-4"],[1,"row-property-value-4"],[1,"row-property"],[1,"row-property-key-3"],[1,"row-property-value-3"],[1,"row-property-key"],[1,"row-property-value"],["class","",4,"ngFor","ngForOf"],[1,"width30percent"],[1,"row-property-key-5"],[1,"row-property-value-5"],["target","_blank","matTooltip","Edit GSRS Application Record",3,"routerLink"],["noProdNameList",""],["noProd",""],["noDeprecated",""],[1,"colorgray"],[1,"font10px"],[1,"font14px","colorlightblue"],["noIngred",""],[1,""],[1,"colorred"],["class","padtop5px",4,"ngIf","ngIfElse"],["noActiveUnii",""],["otherIngredType",""],[1,"colorgreen"],[1,"padtop5px"],[1,"font10px","colorgray"],["matBadgeOverlap","false",3,"matBadge"],["target","_blank","title","see clinicaltrials.gov",3,"href"]],template:function(f,r){if(1&f){var O=e.EpF();e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e.TgZ(3,"mat-sidenav-container"),e.TgZ(4,"mat-sidenav",0),e.TgZ(5,"app-facets-manager",1),e.NdJ("facetsParamsUpdated",function(_t){return r.facetsParamsUpdated(_t)})("facetsLoaded",function(_t){return r.facetsLoaded(_t)}),e.qZA(),e.qZA(),e.TgZ(6,"mat-sidenav-content"),e.TgZ(7,"div",2),e.TgZ(8,"button",3),e.NdJ("click",function(){return r.openSideNav()}),e._UZ(9,"mat-icon",4),e.qZA(),e.YNc(10,xn,23,4,"div",5),e.YNc(11,Xi,4,3,"ng-template",null,6,e.W1O),e.TgZ(13,"div",7),e.TgZ(14,"div",8),e.TgZ(15,"span",9),e._uU(16,"Browse Applications"),e.qZA(),e.qZA(),e.TgZ(17,"mat-button-toggle-group",10),e.NdJ("change",function(_t){return r.updateView(_t)}),e.TgZ(18,"mat-button-toggle",11),e._UZ(19,"mat-icon",12),e.qZA(),e.TgZ(20,"mat-button-toggle",13),e._UZ(21,"mat-icon",14),e.qZA(),e.qZA(),e.TgZ(22,"mat-form-field",15),e.TgZ(23,"mat-label"),e._uU(24,"Sort By"),e.qZA(),e.TgZ(25,"mat-select",16),e.NdJ("selectionChange",function(){return r.searchApplications()})("ngModelChange",function(_t){return r.order=_t}),e.YNc(26,ka,2,2,"mat-option",17),e.qZA(),e.qZA(),e.YNc(27,Ja,4,0,"div",18),e._UZ(28,"div",19),e.TgZ(29,"div",20),e.TgZ(30,"mat-paginator",21,22),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(32,"div",23),e.TgZ(33,"span",24),e._uU(34,"Page: "),e.qZA(),e.TgZ(35,"mat-form-field",25),e.TgZ(36,"input",26,27),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(37).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(38,"span",24),e._uU(39),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(40,"div",28),e.TgZ(41,"app-application-text-search",29),e.NdJ("searchPerformed",function(_t){return r.processSubstanceSearch(_t)}),e.qZA(),e.qZA(),e.TgZ(42,"div",30),e.TgZ(43,"div",31),e.TgZ(44,"div",32),e.TgZ(45,"table",33),e.NdJ("matSortChange",function(_t){return r.sortData(_t)}),e.ynx(46,34),e.YNc(47,_a,2,0,"th",35),e.YNc(48,or,6,5,"td",36),e.BQk(),e.ynx(49,37),e.YNc(50,Ta,2,0,"th",35),e.YNc(51,Cn,2,1,"td",36),e.BQk(),e.ynx(52,38),e.YNc(53,Pn,2,0,"th",35),e.YNc(54,Tt,2,1,"td",36),e.BQk(),e.ynx(55,39),e.YNc(56,Le,2,0,"th",35),e.YNc(57,qt,2,1,"td",36),e.BQk(),e.ynx(58,40),e.YNc(59,Gt,2,0,"th",35),e.YNc(60,An,2,1,"td",36),e.BQk(),e.ynx(61,41),e.YNc(62,Wn,2,0,"th",35),e.YNc(63,ea,3,1,"td",42),e.BQk(),e.ynx(64,43),e.YNc(65,_i,2,0,"th",35),e.YNc(66,Ka,3,2,"td",42),e.BQk(),e.ynx(67,44),e.YNc(68,Zt,2,0,"th",35),e.YNc(69,Ve,2,1,"td",36),e.BQk(),e.YNc(70,se,1,0,"tr",45),e.YNc(71,he,1,0,"tr",46),e.qZA(),e.qZA(),e.qZA(),e.YNc(72,Vi,2,1,"div",47),e.qZA(),e.TgZ(73,"div",48),e.TgZ(74,"div",49),e.TgZ(75,"mat-paginator",21,22),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(77,"div",50),e.TgZ(78,"span",24),e._uU(79,"Page: "),e.qZA(),e.TgZ(80,"mat-form-field",25),e.TgZ(81,"input",26,27),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(37).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(83,"span",24),e._uU(84),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(85,ya,0,0,"ng-template",null,51,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&f){var R=e.MAs(12),ee=e.MAs(86);e.xp6(5),e.Q6J("rawFacets",r.rawFacets),e.xp6(5),e.Q6J("ngIf",r.matchTypes&&r.matchTypes.length>0)("ngIfElse",R),e.xp6(7),e.Q6J("value",r.view),e.xp6(8),e.Q6J("ngModel",r.order),e.xp6(1),e.Q6J("ngForOf",r.sortValues),e.xp6(1),e.Q6J("ngIf",r.isAdmin),e.xp6(3),e.Q6J("length",r.totalApplications)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(32,Na))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(33,Ua,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(35,Ua,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,""),e.xp6(2),e.Q6J("searchValue",r.searchValue),e.xp6(1),e.Q6J("ngClass",r.view),e.xp6(3),e.Q6J("dataSource",r.applications),e.xp6(25),e.Q6J("matHeaderRowDef",r.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",r.displayedColumns),e.xp6(1),e.Q6J("ngIf",r.applications&&r.applications.length)("ngIfElse",ee),e.xp6(3),e.Q6J("length",r.totalApplications)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(37,Na))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(38,Ua,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(40,Ua,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,"")}},directives:[nn.TM,nn.JX,qe.R,nn.Rh,T.Hw,c.O5,h.lW,He.p6,He.VK,c.sg,He.OP,u.yS,At.A9,At.Yi,s.gM,kt.KE,kt.hX,ne.gD,et.JJ,et.On,Xt.ey,X.NW,c.mk,It.Nt,Nn,y.BZ,Ae.YE,y.w1,y.fO,y.ge,Ae.nU,y.Dz,y.ev,y.as,y.XQ,y.nj,y.Gk,o.a8,o.n5,o.dn,q.k],pipes:[c.uU],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--include-checkbox-border-color)} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--include-checkbox-bg-color)}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--exclude-checkbox-border-color)} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--exclude-checkbox-bg-color)}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.full-paginator-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;max-width:700px}.page-selector-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center;max-width:200px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:var(--primary-color);width:285px}.displaynone[_ngcontent-%COMP%]{display:none}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:var(--regular-red-color)}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid var(--regular-grey-color)}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid var(--regular-grey-color)}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.cards[_ngcontent-%COMP%] .controls-container[_ngcontent-%COMP%]{max-width:928px}.cards[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:var(--link-primary-color);padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--pink-span-color)}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:var(--regular-blue-color);display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:var(--label-color);white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.structure-style[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color);width:500px;height:500px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:var(--regular-transparent-color)}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.structure-parameters[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin:0;padding:0 0 0 5px}.structure-parameters[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{width:20px}.title[_ngcontent-%COMP%]{color:var(--secondary-title-color);font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colororange[_ngcontent-%COMP%]{color:var(--regular-orange-color)}.colorlightpurple[_ngcontent-%COMP%]{color:var(--purple-color)}.colorlightblue[_ngcontent-%COMP%]{color:var(--blue-color)}.colordarkgrey[_ngcontent-%COMP%]{color:var(--darkgrey-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid var(--light-orange-color)}.borderlightgray[_ngcontent-%COMP%]{border:1px solid var(--light-green-color)}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.margintopneg20px[_ngcontent-%COMP%]{margin-top:-20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:var(--white-color);border:1px solid var(--grey-border-color);background:var(--dark-grey-bg-color);box-shadow:0 0 5px -1px var(--box-shadow-color);vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid var(--regular-blue-color)}.width120px[_ngcontent-%COMP%]{width:120px}.width200px[_ngcontent-%COMP%]{width:200px}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.structure-image[_ngcontent-%COMP%]{width:100%;height:30px;padding:0}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.search-suggestions-container[_ngcontent-%COMP%]{width:500px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),v}(),Ra=n(97424),sa=n(28042),da=n(46751),Ea=n(56101),ba=n(40104),Ar=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un){(0,S.Z)(this,F),this.applicationService=f,this.generalService=r,this.activatedRoute=O,this.loadingService=R,this.mainNotificationService=ee,this.router=Je,this.gaService=_t,this.utilsService=Kt,this.titleService=Un,this.isAdmin=!1,this.message="",this.subscriptions=[]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.loadingService.setLoading(!0),this.id?!0===this.isNumber(this.id)?this.getApplicationDetails():this.message="The application Id in url should be a number":null!=this.appType&&null!=this.appNumber||this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"getApplicationDetails",value:function(){var r=this,O=this.applicationService.getApplicationById(this.id).subscribe(function(R){if(r.application=R,Object.keys(r.application).length>0){r.titleService.setTitle("Application "+r.application.appType+" "+r.application.appNumber),r.getSubstanceBySubstanceKey();var ee=r.applicationService.getApplicationHistory(r.id).subscribe(function(Un){r.application.applicationHistoryList=[],r.application.applicationHistoryList=Un});r.subscriptions.push(ee);var Je=r.applicationService.getProductTechnicalEffect(r.id).subscribe(function(Un){r.application.productTechEffectList=[],r.application.productTechEffectList=Un});r.subscriptions.push(Je);var _t=r.applicationService.getProductEffected(r.id).subscribe(function(Un){r.application.productEffectedList=[],r.application.productEffectedList=Un});r.subscriptions.push(_t);var Kt=r.applicationService.getClinicalTrialApplication(r.id).subscribe(function(Un){r.application.clinicalTrialList=[],r.application.clinicalTrialList=Un});r.subscriptions.push(Kt)}},function(R){});this.subscriptions.push(O)}},{key:"getSubstanceBySubstanceKey",value:function(){var r=this;null!=this.application&&this.application.applicationProductList.forEach(function(O){null!=O&&O.applicationIngredientList.forEach(function(R){if(null!=R){if(R.substanceKey){var ee=r.generalService.getSubstanceByAnyId(R.substanceKey).subscribe(function(_t){_t&&(R._substanceUuid=_t.uuid,R._ingredientName=_t._name)});r.subscriptions.push(ee)}if(R.basisOfStrengthSubstanceKey){var Je=r.generalService.getSubstanceByAnyId(R.basisOfStrengthSubstanceKey).subscribe(function(_t){_t&&(R._basisOfStrengthSubstanceUuid=_t.uuid,R._basisOfStrengthIngredientName=_t._name)});r.subscriptions.push(Je)}}})})}},{key:"isNumber",value:function(r){if(r){var O=Number(r);return!isNaN(O)}return!1}},{key:"handleSubstanceRetrivalError",value:function(){this.loadingService.setLoading(!1),this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:vn.k.error,milisecondsToShow:4e3}),setTimeout(function(){},5e3)}},{key:"getSafeStructureImgUrl",value:function(r){var O=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(r,O,!0)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(I.I),e.Y36(D.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-application-details-base"]],decls:0,vars:0,template:function(f,r){},styles:[""]}),v}();function gr(v,F){if(1&v&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&v){var f=e.oxw();e.xp6(5),e.hij(" ",f.message,"\n")}}var Cr=function(F){return["/application",F,"edit"]};function no(v,F){if(1&v&&(e.TgZ(0,"a",20),e._UZ(1,"mat-icon",21),e.qZA()),2&v){var f=e.oxw(2);e.Q6J("routerLink",e.VKq(1,Cr,f.application.id))}}function Lt(v,F){1&v&&e._UZ(0,"mat-icon",22)}function dt(v,F){if(1&v&&(e.TgZ(0,"div",23),e.TgZ(1,"span",24),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.TgZ(4,"span",24),e._uU(5,"Create Date:"),e.qZA(),e._uU(6),e.ALo(7,"date"),e.TgZ(8,"span",24),e._uU(9,"Modified By:"),e.qZA(),e._uU(10),e.TgZ(11,"span",24),e._uU(12,"Modify Date:"),e.qZA(),e._uU(13),e.ALo(14,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(3),e.hij(" ",f.application.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(7,4,f.application.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",f.application.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(14,7,f.application.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function ge(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e._UZ(2,"br"),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" \u2022\xa0",f.indication," ")}}function ke(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,ge,3,1,"span",1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f.indication)}}function gt(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.TgZ(4,"a",30),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"td"),e.TgZ(7,"a",31),e._uU(8),e.qZA(),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+f.trialNumber,e.LSH),e.xp6(1),e.Oqu(f.trialNumber),e.xp6(2),e.Q6J("href",f.url,e.LSH),e.xp6(1),e.Oqu(f.url),e.xp6(2),e.hij(" ",f.title," ")}}function de(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"table",25),e.TgZ(2,"thead"),e.TgZ(3,"tr",26),e.TgZ(4,"th",27),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",28),e._uU(7,"NCT Number"),e.qZA(),e.TgZ(8,"th",29),e._uU(9,"Clinical Trials Gov Website"),e.qZA(),e.TgZ(10,"th",29),e._uU(11,"Title"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,gt,11,6,"tr",17),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(13),e.Q6J("ngForOf",f.application.clinicalTrialList)}}function we(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.ALo(9,"date"),e.qZA(),e.TgZ(10,"td"),e._uU(11),e.ALo(12,"date"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Oqu(f.productName),e.xp6(2),e.Oqu(f.sponsorName),e.xp6(2),e.Oqu(f.status),e.xp6(2),e.Oqu(e.xi3(9,5,f.statusDate,"MM/dd/yyyy")),e.xp6(3),e.Oqu(e.xi3(12,8,f.createDate,"MM/dd/yyyy"))}}function Qe(v,F){if(1&v&&(e.TgZ(0,"div",32),e._UZ(1,"br"),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",33),e.TgZ(4,"span",34),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-card-content"),e.TgZ(7,"table",25),e.TgZ(8,"thead"),e.TgZ(9,"tr",26),e.TgZ(10,"th",35),e._uU(11,"Product Name"),e.qZA(),e.TgZ(12,"th",36),e._uU(13,"Sponsor Name"),e.qZA(),e.TgZ(14,"th",36),e._uU(15,"Status"),e.qZA(),e.TgZ(16,"th",36),e._uU(17,"Status Date"),e.qZA(),e.TgZ(18,"th",29),e._uU(19,"Create Date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"tbody"),e.YNc(21,we,13,11,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(5),e.hij("Application History (",f.application.applicationHistoryList.length,")"),e.xp6(16),e.Q6J("ngForOf",f.application.applicationHistoryList)}}function Ge(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Oqu(f.technicalEffect)}}function Mt(v,F){if(1&v&&(e.TgZ(0,"div",32),e._UZ(1,"br"),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",33),e.TgZ(4,"span",34),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-card-content"),e.TgZ(7,"table",25),e.TgZ(8,"thead"),e.TgZ(9,"tr",37),e.TgZ(10,"th"),e._uU(11,"Technical Effect"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,Ge,3,1,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(5),e.hij("Technical Effect (",f.application.productTechEffectList.length,")"),e.xp6(8),e.Q6J("ngForOf",f.application.productTechEffectList)}}function Nt(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Oqu(f.effectedProduct)}}function yn(v,F){if(1&v&&(e.TgZ(0,"div",32),e._UZ(1,"br"),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",33),e.TgZ(4,"span",34),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"mat-card-content"),e.TgZ(7,"table",25),e.TgZ(8,"thead"),e.TgZ(9,"tr",37),e.TgZ(10,"th"),e._uU(11,"Effected Product"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,Nt,3,1,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(5),e.hij("Effected Product (",f.application.productEffectedList.length,")"),e.xp6(8),e.Q6J("ngForOf",f.application.productEffectedList)}}function Ln(v,F){if(1&v&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"div",11),e._uU(3," Product Name: "),e.qZA(),e.TgZ(4,"div",12),e.TgZ(5,"span",42),e._uU(6),e.qZA(),e.qZA(),e.qZA(),e.TgZ(7,"div",10),e.TgZ(8,"div",11),e._uU(9," Product Name Type: "),e.qZA(),e.TgZ(10,"div",12),e._uU(11),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(6),e.Oqu(f.productName),e.xp6(5),e.hij(" ",f.productNameType," ")}}function ei(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Ln,12,2,"div",41),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("ngForOf",f.applicationProductNameList)}}function li(v,F){1&v&&(e.TgZ(0,"div",9),e.TgZ(1,"div",10),e.TgZ(2,"div",11),e._uU(3," Product Name: "),e.qZA(),e._UZ(4,"div",12),e.qZA(),e.TgZ(5,"div",10),e.TgZ(6,"div",11),e._uU(7," Product Name Type: "),e.qZA(),e._UZ(8,"div",12),e.qZA(),e.qZA())}var Si=function(F){return["/substances",F]};function Ai(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",43),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Si,f._substanceUuid)),e.xp6(1),e.Oqu(f._ingredientName)}}function Fi(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",43),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Si,f._basisOfStrengthSubstanceUuid)),e.xp6(1),e.Oqu(f._basisOfStrengthIngredientName)}}function Ma(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Ai,3,4,"div",1),e.qZA(),e.TgZ(5,"td"),e.YNc(6,Fi,3,4,"div",1),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.TgZ(23,"td"),e._uU(24),e.qZA(),e.TgZ(25,"td"),e._uU(26),e.ALo(27,"date"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Oqu(f.applicantIngredName),e.xp6(2),e.Q6J("ngIf",f._substanceUuid),e.xp6(2),e.Q6J("ngIf",f._basisOfStrengthSubstanceUuid),e.xp6(2),e.Oqu(f.ingredientType),e.xp6(2),e.Oqu(f.average),e.xp6(2),e.Oqu(f.low),e.xp6(2),e.Oqu(f.high),e.xp6(2),e.Oqu(f.lowLimit),e.xp6(2),e.Oqu(f.highLimit),e.xp6(2),e.Oqu(f.unit),e.xp6(2),e.Oqu(f.nonNumericValue),e.xp6(2),e.Oqu(f.grade),e.xp6(2),e.AsE("",f.reviewedBy,"\xa0\xa0",e.xi3(27,14,f.reviewDate,"MM/dd/yyyy hh:mm:ss a"),"")}}function ot(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",33),e._uU(2),e.qZA(),e.YNc(3,ei,2,1,"div",38),e.YNc(4,li,9,0,"ng-template",null,39,e.W1O),e.TgZ(6,"div",9),e.TgZ(7,"div",10),e.TgZ(8,"div",11),e._uU(9," Dosage Form: "),e.qZA(),e.TgZ(10,"div",12),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",10),e.TgZ(13,"div",11),e._uU(14," Route of Administration: "),e.qZA(),e.TgZ(15,"div",12),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.TgZ(17,"div",9),e.TgZ(18,"div",10),e.TgZ(19,"div",11),e._uU(20," Amount: "),e.qZA(),e.TgZ(21,"div",12),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",10),e.TgZ(24,"div",11),e._uU(25," Unit of Presentation: "),e.qZA(),e.TgZ(26,"div",12),e._uU(27),e.qZA(),e.qZA(),e.qZA(),e.TgZ(28,"div",9),e.TgZ(29,"div",10),e.TgZ(30,"div",11),e._uU(31," Unit: "),e.qZA(),e.TgZ(32,"div",12),e._uU(33),e.qZA(),e.qZA(),e.TgZ(34,"div",10),e.TgZ(35,"div",11),e._uU(36," Reviewed By: "),e.qZA(),e.TgZ(37,"div",12),e._uU(38),e.ALo(39,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(40,"mat-card",40),e.TgZ(41,"mat-card-title",33),e.TgZ(42,"span",34),e._uU(43),e.qZA(),e.qZA(),e.TgZ(44,"mat-card-content"),e.TgZ(45,"table",25),e.TgZ(46,"thead"),e.TgZ(47,"tr",26),e.TgZ(48,"th"),e._uU(49,"Applicant Ingredient Name"),e.qZA(),e.TgZ(50,"th"),e._uU(51,"Ingredient Name"),e.qZA(),e.TgZ(52,"th"),e._uU(53,"Basis Of Strength"),e.qZA(),e.TgZ(54,"th"),e._uU(55,"Ingredient Type"),e.qZA(),e.TgZ(56,"th"),e._uU(57,"Average"),e.qZA(),e.TgZ(58,"th"),e._uU(59,"Low"),e.qZA(),e.TgZ(60,"th"),e._uU(61,"High"),e.qZA(),e.TgZ(62,"th"),e._uU(63,"Low Limit"),e.qZA(),e.TgZ(64,"th"),e._uU(65,"High Limit"),e.qZA(),e.TgZ(66,"th"),e._uU(67,"Unit"),e.qZA(),e.TgZ(68,"th"),e._uU(69,"Non Numeric Value"),e.qZA(),e.TgZ(70,"th"),e._uU(71,"Grade"),e.qZA(),e.TgZ(72,"th"),e._uU(73,"Reviewed By"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(74,"tbody"),e.YNc(75,Ma,28,17,"tr",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(76,"br"),e._UZ(77,"br"),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.MAs(5);e.xp6(2),e.hij(" Product ",r+1," "),e.xp6(1),e.Q6J("ngIf",f.applicationProductNameList.length>0)("ngIfElse",O),e.xp6(8),e.hij(" ",f.dosageForm," "),e.xp6(5),e.hij(" ",f.routeAdmin," "),e.xp6(6),e.hij(" ",f.amount," "),e.xp6(5),e.hij(" ",f.unitPresentation," "),e.xp6(6),e.hij(" ",f.unit," "),e.xp6(5),e.AsE(" ",f.reviewedBy,"\xa0",e.xi3(39,12,f.reviewDate,"MM/dd/yyyy hh:mm:ss a")," "),e.xp6(5),e.hij("Substances in Application (",f.applicationIngredientList.length,")"),e.xp6(32),e.Q6J("ngForOf",f.applicationIngredientList)}}function yt(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e.TgZ(4,"div",5),e.TgZ(5,"div"),e._uU(6," Application Details \xa0\xa0\xa0 "),e.YNc(7,no,2,3,"a",6),e.TgZ(8,"span"),e.YNc(9,Lt,1,0,"mat-icon",7),e.qZA(),e.qZA(),e.YNc(10,dt,15,10,"div",8),e.qZA(),e.qZA(),e.TgZ(11,"mat-card-content"),e.TgZ(12,"div",9),e.TgZ(13,"div",10),e.TgZ(14,"div",11),e._uU(15," Application Type and Number: "),e.qZA(),e.TgZ(16,"div",12),e.TgZ(17,"span",13),e.TgZ(18,"b"),e._uU(19),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"div",10),e.TgZ(21,"div",11),e._uU(22," Center: "),e.qZA(),e.TgZ(23,"div",12),e._uU(24),e.qZA(),e.qZA(),e.qZA(),e.TgZ(25,"div",9),e.TgZ(26,"div",10),e.TgZ(27,"div",11),e._uU(28," Sponsor Name: "),e.qZA(),e.TgZ(29,"div",12),e._uU(30),e.qZA(),e.qZA(),e.TgZ(31,"div",10),e.TgZ(32,"div",11),e._uU(33," Non Proprietary Name: "),e.qZA(),e.TgZ(34,"div",12),e._uU(35),e.qZA(),e.qZA(),e.qZA(),e.TgZ(36,"div",9),e.TgZ(37,"div",10),e.TgZ(38,"div",11),e._uU(39," Title: "),e.qZA(),e.TgZ(40,"div",12),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",10),e.TgZ(43,"div",11),e._uU(44," External Title: "),e.qZA(),e.TgZ(45,"div",12),e._uU(46),e.qZA(),e.qZA(),e.qZA(),e.TgZ(47,"div",9),e.TgZ(48,"div",10),e.TgZ(49,"div",11),e._uU(50," Application Sub Type: "),e.qZA(),e.TgZ(51,"div",12),e._uU(52),e.qZA(),e.qZA(),e.TgZ(53,"div",10),e.TgZ(54,"div",11),e._uU(55," Division Class Desc: "),e.qZA(),e.TgZ(56,"div",12),e._uU(57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(58,"div",9),e.TgZ(59,"div",10),e.TgZ(60,"div",11),e._uU(61," Application Status: "),e.qZA(),e.TgZ(62,"div",12),e._uU(63),e.qZA(),e.qZA(),e.TgZ(64,"div",10),e.TgZ(65,"div",11),e._uU(66," Submit Date: "),e.qZA(),e.TgZ(67,"div",12),e._uU(68),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"div",9),e.TgZ(70,"div",10),e.TgZ(71,"div",11),e._uU(72," Provenance: "),e.qZA(),e.TgZ(73,"div",12),e._uU(74),e.qZA(),e.qZA(),e.TgZ(75,"div",10),e.TgZ(76,"div",11),e._uU(77," Status Date: "),e.qZA(),e.TgZ(78,"div",12),e._uU(79),e.qZA(),e.qZA(),e.qZA(),e.TgZ(80,"div",9),e.TgZ(81,"div",10),e.TgZ(82,"div",11),e._uU(83," Public Domain: "),e.qZA(),e.TgZ(84,"div",12),e._uU(85),e.qZA(),e.qZA(),e.qZA(),e.TgZ(86,"div",9),e.TgZ(87,"div",14),e.TgZ(88,"div",15),e._uU(89," Indications: "),e.qZA(),e.TgZ(90,"div",16),e.YNc(91,ke,2,1,"div",17),e.qZA(),e.qZA(),e.qZA(),e.TgZ(92,"div",9),e.TgZ(93,"div",14),e.TgZ(94,"div",15),e._uU(95," Clinical Trials: "),e.qZA(),e.TgZ(96,"div",16),e.YNc(97,de,14,1,"div",1),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(98,Qe,22,2,"div",18),e.YNc(99,Mt,14,2,"div",18),e.YNc(100,yn,14,2,"div",18),e._UZ(101,"br"),e.TgZ(102,"div",19),e.TgZ(103,"mat-card",4),e.TgZ(104,"mat-card-content"),e.YNc(105,ot,78,15,"div",17),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(7),e.Q6J("ngIf",f.isAdmin),e.xp6(2),e.Q6J("ngIf",f.isAdmin),e.xp6(1),e.Q6J("ngIf",f.isAdmin),e.xp6(9),e.AsE("",f.application.appType,"\xa0",f.application.appNumber,""),e.xp6(5),e.hij(" ",f.application.center," "),e.xp6(6),e.hij(" ",f.application.sponsorName," "),e.xp6(5),e.hij(" ",f.application.nonProprietaryName," "),e.xp6(6),e.hij(" ",f.application.title," "),e.xp6(5),e.hij(" ",f.application.externalTitle," "),e.xp6(6),e.hij(" ",f.application.appSubType," "),e.xp6(5),e.hij(" ",f.application.divisionClassDesc," "),e.xp6(6),e.hij(" ",f.application.status," "),e.xp6(5),e.hij(" ",f.application.submitDate," "),e.xp6(6),e.hij(" ",f.application.provenance," "),e.xp6(5),e.hij(" ",f.application.statusDate," "),e.xp6(6),e.hij(" ",f.application.publicDomain," "),e.xp6(6),e.Q6J("ngForOf",f.application.applicationIndicationList),e.xp6(6),e.Q6J("ngIf",f.application.clinicalTrialList.length>0),e.xp6(1),e.Q6J("ngIf",f.application.applicationHistoryList.length>0),e.xp6(1),e.Q6J("ngIf",f.application.productTechEffectList.length>0),e.xp6(1),e.Q6J("ngIf",f.application.productEffectedList.length>0),e.xp6(5),e.Q6J("ngForOf",f.application.applicationProductList)}}var St=function(){var v=function(F){(0,da.Z)(r,F);var f=(0,Ea.Z)(r);function r(O,R,ee,Je,_t,Kt,Un,ai,Pi,ki){var ha;return(0,S.Z)(this,r),(ha=f.call(this,O,R,ee,Je,_t,Kt,Un,ai,ki)).generalService=R,ha.activatedRoute=ee,ha.authService=Pi,ha}return(0,t.Z)(r,[{key:"ngOnInit",value:function(){var R=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(ee){R.isAdmin=ee}),this.id=this.activatedRoute.snapshot.params.id,this.appType=this.activatedRoute.snapshot.params.appType,this.appNumber=this.activatedRoute.snapshot.params.appNumber,(0,Ra.Z)((0,sa.Z)(r.prototype),"ngOnInit",this).call(this)}}]),r}(Ar);return v.\u0275fac=function(f){return new(f||v)(e.Y36(I.I),e.Y36(D.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F),e.Y36(Me.e),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-application-details"]],features:[e.qOj],decls:6,vars:2,consts:[["class","colororange padtop50px padleft50px",4,"ngIf"],[4,"ngIf"],[1,"colororange","padtop50px","padleft50px"],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"divflexrow"],["target","_blank","matTooltip","Edit GSRS Application Record (opens in new window)",3,"routerLink",4,"ngIf"],["class","small-icon","svgIcon","open_in_new","matTooltip","opens in new window",4,"ngIf"],["class","width650px textalignright font11px",4,"ngIf"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"colorblue","font18px","fontbold"],[1,"row-property-2"],[1,"row-property-key-2"],[1,"row-property-value-2"],[4,"ngFor","ngForOf"],["class","",4,"ngIf"],[1,"details-container"],["target","_blank","matTooltip","Edit GSRS Application Record (opens in new window)",3,"routerLink"],["svgIcon","edit"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],[1,"width650px","textalignright","font11px"],[1,"colorgray"],[1,"blueTable"],["height","30px","valign","top"],["width","50px"],["width","60px"],["width","100px"],["target","_blank","title","see clinicaltrials.gov",3,"href"],["target","_blank","matTooltip","View Clinical Trial US Record",3,"href"],[1,""],[1,"title2"],[1,"title3"],["width","200px"],["width","150px"],["height","30px"],[4,"ngIf","ngIfElse"],["noRecordProdName",""],[1,"bordergray","margintop10px"],["class","row",4,"ngFor","ngForOf"],[1,"colororange","font14px","fontbold"],["target","_blank",3,"routerLink"]],template:function(f,r){1&f&&(e.YNc(0,gr,6,1,"div",0),e.YNc(1,yt,106,23,"div",1),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._UZ(5,"br")),2&f&&(e.Q6J("ngIf",r.message),e.xp6(1),e.Q6J("ngIf",r.application&&r.application.id))},directives:[c.O5,o.a8,o.n5,u.yS,s.gM,T.Hw,o.dn,c.sg],pipes:[c.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;width:100%;max-width:100%}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px var(--box-shadow-color-3)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:7px;font-size:12px;font-weight:500}.row-property-value[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:20%;max-width:20%;padding:6px;font-size:12px;font-weight:500}.row-property-value-2[_ngcontent-%COMP%]{min-width:80%;max-width:80%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px;font-weight:500;padding-bottom:5px}.title3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:14px;color:var(--regular-navy-color)}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft30px[_ngcontent-%COMP%]{padding-left:30px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font18px[_ngcontent-%COMP%]{font-size:18px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:var(--orange-color)}.colorblue[_ngcontent-%COMP%]{color:var(--primary-title-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.width650px[_ngcontent-%COMP%]{width:650px;max-width:650px}.textalignright[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid var(--secondary-blue-color);background-color:var(--table-bg-color-2);width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid var(--table-th-border-color);padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:var(--table-tr-even-bg-color-2)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--table-thead-bg-color);border-bottom:1px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:var(--table-th-color);border-left:1px solid var(--table-th-border-color-2)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:var(--white-color);background:var(--table-th-border-color-2);border-top:2px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:var(--secondary-blue-color);color:var(--white-color);padding:2px 8px;border-radius:5px}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:0}.margintopneg10[_ngcontent-%COMP%]{margin-top:-10px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid var(--regular-red-color)}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px var(--box-shadow-color-3)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}}"]}),v}(),ie=n(9292);function Ye(v,F){if(1&v&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&v){var f=e.oxw();e.xp6(5),e.hij(" ",f.message,"\n")}}function fe(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e._UZ(2,"br"),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" \u2022\xa0",f.indication," ")}}var oe=function(F){return["/substances",F]};function bt(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,oe,f._substanceUuid)),e.xp6(1),e.Oqu(f._ingredientname)}}function xt(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(2).$implicit;e.hij(" ",f._ingredientname," ")}}function Jt(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,bt,3,4,"div",20),e.YNc(2,xt,1,1,"ng-template",null,21,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",r._substanceUuid)("ngIfElse",f)}}function zn(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"img",23),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",f._substanceUuid)}}function hi(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e.YNc(8,Jt,4,2,"div",1),e.qZA(),e.TgZ(9,"td"),e.YNc(10,zn,2,1,"div",1),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Oqu(f.productNo),e.xp6(2),e.Oqu(f.partNo),e.xp6(2),e.Q6J("ngIf",f._ingredientname),e.xp6(2),e.Q6J("ngIf",f._substanceUuid),e.xp6(2),e.Oqu(f.substanceKey),e.xp6(2),e.Oqu(f._approvalID),e.xp6(2),e.Oqu(f.activity),e.xp6(2),e.Oqu(f.potency),e.xp6(2),e.Oqu(f._parentSubstanceKey),e.xp6(2),e.Oqu(f._parentDisplayTerm)}}function qi(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e._uU(4," Application Details\xa0"),e.TgZ(5,"span",5),e._uU(6,"(Darrts)"),e.qZA(),e.qZA(),e.TgZ(7,"mat-card-content"),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e._uU(11," Product Name: "),e.qZA(),e.TgZ(12,"div",9),e.TgZ(13,"span",10),e._uU(14),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"div",7),e.TgZ(16,"div",8),e._uU(17," Application Type Number: "),e.qZA(),e.TgZ(18,"div",9),e.TgZ(19,"span",11),e.TgZ(20,"b"),e._uU(21),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(22,"div",6),e.TgZ(23,"div",7),e.TgZ(24,"div",8),e._uU(25," Sponsor Name: "),e.qZA(),e.TgZ(26,"div",9),e._uU(27),e.qZA(),e.qZA(),e.TgZ(28,"div",7),e.TgZ(29,"div",8),e._uU(30," Dosage Form Desc: "),e.qZA(),e.TgZ(31,"div",9),e._uU(32),e.qZA(),e.qZA(),e.qZA(),e.TgZ(33,"div",6),e.TgZ(34,"div",7),e.TgZ(35,"div",8),e._uU(36," Application Status: "),e.qZA(),e.TgZ(37,"div",9),e._uU(38),e.qZA(),e.qZA(),e.TgZ(39,"div",7),e.TgZ(40,"div",8),e._uU(41," Status Date: "),e.qZA(),e.TgZ(42,"div",9),e._uU(43),e.ALo(44,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(45,"div",6),e.TgZ(46,"div",7),e.TgZ(47,"div",8),e._uU(48," Division Class Number: "),e.qZA(),e.TgZ(49,"div",9),e._uU(50),e.qZA(),e.qZA(),e.TgZ(51,"div",7),e.TgZ(52,"div",8),e._uU(53," Division Class Desc: "),e.qZA(),e.TgZ(54,"div",9),e._uU(55),e.qZA(),e.qZA(),e.qZA(),e.TgZ(56,"div",6),e.TgZ(57,"div",7),e.TgZ(58,"div",8),e._uU(59," Application Sub Type Desc: "),e.qZA(),e.TgZ(60,"div",9),e._uU(61),e.qZA(),e.qZA(),e.TgZ(62,"div",7),e.TgZ(63,"div",8),e._uU(64," Route of Administration: "),e.qZA(),e.TgZ(65,"div",9),e._uU(66),e.qZA(),e.qZA(),e.qZA(),e.TgZ(67,"div",6),e.TgZ(68,"div",12),e.TgZ(69,"div",13),e._uU(70," Indication: "),e.qZA(),e.TgZ(71,"div",14),e.YNc(72,fe,3,1,"div",15),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(73,"div",16),e.TgZ(74,"mat-card",4),e.TgZ(75,"mat-card-title",17),e._uU(76),e.qZA(),e.TgZ(77,"mat-card-content"),e.TgZ(78,"table",18),e.TgZ(79,"thead"),e.TgZ(80,"tr",19),e.TgZ(81,"th"),e._uU(82,"#"),e.qZA(),e.TgZ(83,"th"),e._uU(84,"Product No"),e.qZA(),e.TgZ(85,"th"),e._uU(86,"Part No"),e.qZA(),e.TgZ(87,"th"),e._uU(88,"Substance Name"),e.qZA(),e.TgZ(89,"th"),e._uU(90,"Structure"),e.qZA(),e.TgZ(91,"th"),e._uU(92,"Substance Key"),e.qZA(),e.TgZ(93,"th"),e._uU(94,"Unii"),e.qZA(),e.TgZ(95,"th"),e._uU(96,"Activity"),e.qZA(),e.TgZ(97,"th"),e._uU(98,"Potency"),e.qZA(),e.TgZ(99,"th"),e._uU(100,"Parent Bdnum"),e.qZA(),e.TgZ(101,"th"),e._uU(102,"Parent Substance Name"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(103,"tbody"),e.YNc(104,hi,23,11,"tr",15),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(14),e.Oqu(f.application.productName),e.xp6(7),e.AsE("",f.application.appType,"\xa0",f.application.appNumber,""),e.xp6(6),e.hij(" ",f.application.sponsorName," "),e.xp6(5),e.hij(" ",f.application.dosageFormDesc," "),e.xp6(6),e.hij(" ",f.application.status," "),e.xp6(5),e.hij(" ",e.xi3(44,14,f.application.statusDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",f.application.divisionClass," "),e.xp6(5),e.hij(" ",f.application.divisionClassDesc," "),e.xp6(6),e.hij(" ",f.application.appSubTypeDesc," "),e.xp6(5),e.hij(" ",f.application.routeOfAdmin," "),e.xp6(6),e.Q6J("ngForOf",f.application.indicationList),e.xp6(4),e.hij(" Substances in Application (",f.application.ingredientList.length,") "),e.xp6(28),e.Q6J("ngForOf",f.application.ingredientList)}}function Oi(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,qi,105,17,"div",1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.application.appType&&f.application.appNumber)}}var Wa=function(){var v=function(F){(0,da.Z)(r,F);var f=(0,Ea.Z)(r);function r(O,R,ee,Je,_t,Kt,Un,ai,Pi){var ki;return(0,S.Z)(this,r),(ki=f.call(this,O,R,ee,Je,_t,Kt,Un,ai,Pi)).applicationService=O,ki.generalService=R,ki}return(0,t.Z)(r,[{key:"ngOnInit",value:function(){this.appType=this.activatedRoute.snapshot.params.appType,this.appNumber=this.activatedRoute.snapshot.params.appNumber,this.loadingService.setLoading(!0),null!=this.appType&&null!=this.appNumber?this.getApplicationDarrtsDetails():this.handleSubstanceRetrivalError()}},{key:"getApplicationDarrtsDetails",value:function(){var R=this,ee=this.applicationService.getApplicationDarrtsDetails(this.appType,this.appNumber).subscribe(function(Je){R.application=Je,Je&&(R.titleService.setTitle("Application "+R.application.appType+" "+R.application.appNumber),R.getSubstanceBySubstanceKey()),R.loadingService.setLoading(!1)},function(Je){R.message="No Application (Darrts) record found",R.loadingService.setLoading(!1)});this.subscriptions.push(ee)}},{key:"getSubstanceBySubstanceKey",value:function(){var R=this;null!=this.application&&this.application.ingredientList.forEach(function(ee){if(null!=ee&&ee.substanceKey){var Je=R.generalService.getSubstanceByAnyId(ee.substanceKey).subscribe(function(Kt){Kt&&(ee._substanceUuid=Kt.uuid,ee._ingredientname=Kt._name,ee._approvalID=Kt._approvalIDDisplay)});R.subscriptions.push(Je);var _t=R.applicationService.getSubstanceParentConcept(ee.substanceKey).subscribe(function(Kt){Kt&&(ee._parentSubstanceKey=Kt.parentSubstanceKey,ee._parentDisplayTerm=Kt.parentDisplayTerm)});R.subscriptions.push(_t)}})}}]),r}(Ar);return v.\u0275fac=function(f){return new(f||v)(e.Y36(I.I),e.Y36(D.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-application-darrts-details"]],features:[e.qOj],decls:2,vars:2,consts:[["class","colororange padtop50px padleft50px",4,"ngIf"],[4,"ngIf"],[1,"colororange","padtop50px","padleft50px"],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"font10px","colorgray"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"colororange","font14px","fontbold"],[1,"colorblue","font16px","fontbold"],[1,"row-property-2"],[1,"row-property-key-2"],[1,"row-property-value-2"],[4,"ngFor","ngForOf"],[1,"details-container"],[1,"title2"],[1,"blueTable"],["height","30px","valign","top"],[4,"ngIf","ngIfElse"],["noSubUuid",""],["target","_blank",3,"routerLink"],["appSubstanceImage","",1,"structure-img",3,"entityId"]],template:function(f,r){1&f&&(e.YNc(0,Ye,6,1,"div",0),e.YNc(1,Oi,2,1,"div",1)),2&f&&(e.Q6J("ngIf",r.message),e.xp6(1),e.Q6J("ngIf",r.application))},directives:[c.O5,o.a8,o.n5,o.dn,c.sg,u.yS,ie.m],pipes:[c.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-top:20px}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px var(--box-shadow-color-3)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-size:12px;font-weight:500}.row-property-value[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:17%;max-width:17%;padding:6px;font-size:12px;font-weight:500}.row-property-value-2[_ngcontent-%COMP%]{min-width:83%;max-width:83%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:var(--orange-color)}.colorblue[_ngcontent-%COMP%]{color:var(--primary-title-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid var(--secondary-blue-color);background-color:var(--table-bg-color);width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid var(--table-th-border-color);padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:var(--table-tr-even-bg-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--table-thead-bg-color);border-bottom:1px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:var(--table-th-color);border-left:1px solid var(--table-th-border-color-2);padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:var(--white-color);background:var(--table-th-border-color-2);border-top:2px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:var(--secondary-blue-color);color:var(--white-color);padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid var(--regular-red-color)}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px var(--box-shadow-color-3)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}}"]}),v}(),Ni=n(42827),cr=n(49241);function po(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",10),e.NdJ("click",function(){e.CHM(f);var R=e.oxw();return R.expand=!R.expand}),e._uU(1),e.qZA()}if(2&v){var r=e.oxw();e.xp6(1),e.Oqu(r.expand?"collapse":"expand")}}function ia(v,F){if(1&v&&(e.TgZ(0,"div",11),e._UZ(1,"ngx-json-viewer",12),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("json",f.json)("expanded",f.expand)}}function Nl(v,F){if(1&v&&(e.TgZ(0,"div",13),e.TgZ(1,"textarea",14),e._uU(2),e.ALo(3,"json"),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(2),e.Oqu(e.lcZ(3,1,f.json))}}var Os=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.sanitizer=f,this.data=r,this.expand=!0,this.raw=!1}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.json=this.data;var r=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.json)));this.downloadJsonHref=r}},{key:"close",value:function(){this.dialogRef.close()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(mn.H7),e.Y36(mt.WI))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-json-fda-dialog"]],decls:19,vars:6,consts:[["mat-dialog-title",""],["mat-flat-button","","color","primary",3,"click"],["mat-flat-button","",3,"click",4,"ngIf"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"href","download"],["mat-dialog-content",""],["class","formatted",4,"ngIf"],["class","raw",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","mat-dialog-close",""],["mat-flat-button","",3,"click"],[1,"formatted"],[3,"json","expanded"],[1,"raw"],[1,"raw-text"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"h1"),e._uU(2,"JSON Object structure"),e.qZA(),e.TgZ(3,"div"),e.TgZ(4,"button",1),e.NdJ("click",function(){return r.raw=!r.raw}),e._uU(5),e.qZA(),e._uU(6,"\xa0 "),e.YNc(7,po,2,1,"button",2),e._UZ(8,"span",3),e.TgZ(9,"a",4),e.TgZ(10,"span"),e._uU(11,"Export JSON"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"div",5),e.YNc(13,ia,2,2,"div",6),e.YNc(14,Nl,4,3,"div",7),e.qZA(),e.TgZ(15,"div",8),e.TgZ(16,"button",9),e._uU(17,"Close"),e.qZA(),e._UZ(18,"span",3),e.qZA()),2&f&&(e.xp6(5),e.Oqu(r.raw?"Show Object":"Show Raw"),e.xp6(2),e.Q6J("ngIf",!r.raw),e.xp6(2),e.MGl("download","",r.json.appType,".json"),e.Q6J("href",r.downloadJsonHref,e.LSH),e.xp6(4),e.Q6J("ngIf",!r.raw),e.xp6(1),e.Q6J("ngIf",r.raw))},directives:[mt.uh,h.lW,c.O5,h.zs,mt.xY,cr.Y,mt.H8,mt.ZT],pipes:[c.Ts],styles:[".raw[_ngcontent-%COMP%]{width:100%;min-height:200px}.formatted[_ngcontent-%COMP%]{width:100%}.raw-text[_ngcontent-%COMP%]{min-height:400px}.actions[_ngcontent-%COMP%]{padding-bottom:10px}"]}),v}(),qa=n(26477);function xo(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",14),e.NdJ("click",function(){return e.CHM(f),e.oxw().toggleValidation()}),e._uU(1),e._UZ(2,"mat-icon",15),e.qZA()}if(2&v){var r=e.oxw();e.Q6J("disabled",r.isLoading),e.xp6(1),e.hij(" ",r.showSubmissionMessages?"Hide":"Show"," messages "),e.xp6(1),e.Q6J("svgIcon",r.showSubmissionMessages?"chevron_up":"chevron_down")}}function jo(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",20),e.NdJ("click",function(){return e.CHM(f),e.oxw(3).confirmDeleteApplication()}),e._uU(2," Delete "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.qZA()}}var hs=function(){return["/browse-applications"]},gl=function(){return["/application/register"]};function ii(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"button",16),e._uU(2," Browse Application "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.TgZ(4,"button",17),e._uU(5," Register New Application "),e.qZA(),e._uU(6,"\xa0\xa0\xa0 "),e.TgZ(7,"a",18),e._UZ(8,"mat-icon",19),e._uU(9," View Application"),e.qZA(),e._uU(10," \xa0\xa0\xa0 "),e.YNc(11,jo,4,0,"span",5),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("routerLink",e.DdM(4,hs)),e.xp6(3),e.Q6J("routerLink",e.DdM(5,gl)),e.xp6(3),e.MGl("routerLink","/application/",f.application.id,""),e.xp6(4),e.Q6J("ngIf",f.isAdmin)}}function Li(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,ii,12,6,"span",5),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.application.id)}}function Ur(v,F){if(1&v&&(e.TgZ(0,"div",21),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.submissionMessage," ")}}function br(v,F){1&v&&(e.TgZ(0,"div",21),e._uU(1," Please correct or dismiss the following errors and submit again: "),e.qZA())}function yi(v,F){if(1&v&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.TgZ(2,"a",30),e._uU(3),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Q6J("href",f.href,e.LSH),e.xp6(1),e.Oqu(f.text)}}function ra(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",31),e.NdJ("click",function(){e.CHM(f);var O=e.oxw().index;return e.oxw(3).dismissValidationMessage(O)}),e._UZ(1,"mat-icon",32),e.qZA()}}function ji(v,F){if(1&v&&(e.TgZ(0,"div",25),e.TgZ(1,"div",26),e._uU(2),e.qZA(),e.TgZ(3,"div",27),e._uU(4),e.YNc(5,yi,4,2,"span",28),e.qZA(),e.YNc(6,ra,2,0,"button",29),e.qZA()),2&v){var f=F.$implicit,r=e.oxw(3);e.xp6(1),e.Q6J("ngClass","ERROR"==f.messageType?"error-message":"warning-message"),e.xp6(1),e.hij(" ",f.messageType,""),e.xp6(2),e.Oqu(f.message),e.xp6(1),e.Q6J("ngForOf",f.links),e.xp6(1),e.Q6J("ngIf","ERROR"!=f.messageType&&!r.approving)}}function Va(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,br,2,0,"div",9),e.YNc(2,ji,7,5,"div",24),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!f.serverError&&!f.approving),e.xp6(1),e.Q6J("ngForOf",f.validationMessages)}}function xr(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.YNc(1,Va,3,2,"span",5),e.TgZ(2,"div",22),e._UZ(3,"span",4),e.TgZ(4,"button",23),e.NdJ("click",function(){return e.CHM(f),e.oxw().submit()}),e._uU(5),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(1),e.Q6J("ngIf",r.validationMessages.length>0),e.xp6(3),e.Q6J("disabled",r.isLoading||!1===r.validationResult),e.xp6(1),e.hij("",r.validationMessages&&r.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function So(v,F){1&v&&(e.TgZ(0,"span",42),e._uU(1," Provenance: DARRTS (some fields are non-editable) "),e.qZA())}function _s(v,F){if(1&v&&(e.TgZ(0,"div",38),e.TgZ(1,"div",39),e.YNc(2,So,2,0,"span",40),e.qZA(),e._UZ(3,"br"),e.TgZ(4,"div"),e.TgZ(5,"span",41),e._uU(6,"Created By:"),e.qZA(),e._uU(7),e.TgZ(8,"span",41),e._uU(9,"Create Date:"),e.qZA(),e._uU(10),e.ALo(11,"date"),e.TgZ(12,"span",41),e._uU(13,"Modified By:"),e.qZA(),e._uU(14),e.TgZ(15,"span",41),e._uU(16,"Modify Date:"),e.qZA(),e._uU(17),e.ALo(18,"date"),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(2),e.Q6J("ngIf",f.isDisableData),e.xp6(5),e.hij(" ",f.application.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(11,5,f.application.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",f.application.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(18,8,f.application.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function zr(v,F){if(1&v&&(e.TgZ(0,"mat-hint"),e.TgZ(1,"span",63),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(2),e.Oqu(f.submitDateMessage)}}function gs(v,F){if(1&v&&(e.TgZ(0,"mat-hint"),e.TgZ(1,"span",63),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(2),e.Oqu(f.statusDateMessage)}}function fa(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",69),e.NdJ("click",function(){return e.CHM(f),e.oxw(4).addNewIndication()}),e._UZ(1,"mat-icon",70),e.qZA()}}function io(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",57),e.TgZ(2,"mat-form-field",64),e.TgZ(3,"input",65),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.indication=Je}),e.qZA(),e.qZA(),e.TgZ(4,"span",66),e.YNc(5,fa,2,0,"button",67),e.qZA(),e.TgZ(6,"button",68),e.NdJ("click",function(){var Je=e.CHM(f),_t=Je.index,Kt=Je.$implicit;return e.oxw(3).confirmDeleteIndication(_t,Kt.indication)}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever "),e.qZA(),e.qZA(),e._UZ(9,"br"),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw(3);e.xp6(3),e.Q6J("ngModel",r.indication),e.xp6(2),e.Q6J("ngIf",0==O),e.xp6(1),e.Q6J("disabled",1==R.application.applicationIndicationList.length),e.xp6(1),e.ekj("disabled",1==R.application.applicationIndicationList.length)}}function Jo(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-card",43),e.TgZ(1,"mat-card-content"),e.TgZ(2,"div",44),e.TgZ(3,"app-cv-input",45),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).application.center=R}),e.qZA(),e.TgZ(4,"app-cv-input",46),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).application.appType=R}),e.qZA(),e.TgZ(5,"mat-form-field",47),e.TgZ(6,"input",48),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.appNumber=R}),e.qZA(),e.qZA(),e.TgZ(7,"app-cv-input",49),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).application.status=R}),e.qZA(),e.TgZ(8,"mat-form-field",47),e.TgZ(9,"input",50),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.submitDate=R})("change",function(){return e.CHM(f),e.oxw(2).validateSubmitDate()}),e.qZA(),e.YNc(10,zr,3,1,"mat-hint",5),e.qZA(),e.TgZ(11,"mat-form-field",47),e.TgZ(12,"input",51),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.statusDate=R})("change",function(){return e.CHM(f),e.oxw(2).validateStatusDate()}),e.qZA(),e.YNc(13,gs,3,1,"mat-hint",5),e.qZA(),e.qZA(),e.TgZ(14,"div",44),e.TgZ(15,"app-cv-input",52),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).application.appSubType=R}),e.qZA(),e.TgZ(16,"mat-form-field",53),e.TgZ(17,"input",54),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.divisionClassDesc=R}),e.qZA(),e.qZA(),e.TgZ(18,"app-cv-input",55),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).application.publicDomain=R}),e.qZA(),e.TgZ(19,"mat-form-field",47),e.TgZ(20,"input",56),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.nonProprietaryName=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",57),e.TgZ(22,"mat-form-field",58),e.TgZ(23,"input",59),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.sponsorName=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(24,"div",57),e.TgZ(25,"mat-form-field",58),e.TgZ(26,"input",60),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.externalTitle=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(27,"div",57),e.TgZ(28,"mat-form-field",58),e.TgZ(29,"input",61),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).application.title=R}),e.qZA(),e.qZA(),e.qZA(),e.YNc(30,io,10,5,"div",28),e.TgZ(31,"app-application-product-form",62),e.NdJ("ingredientMessageOut",function(R){return e.CHM(f),e.oxw(2).ingredientMessageOutChange(R)})("basisOfStrengthMessageOut",function(R){return e.CHM(f),e.oxw(2).basisOfStrengthMessageOutChange(R)}),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(3),e.Q6J("disable",r.isDisableData)("model",r.application.center),e.xp6(1),e.Q6J("disable",r.isDisableData)("model",r.application.appType),e.xp6(2),e.Q6J("disabled",r.isDisableData)("ngModel",r.application.appNumber),e.xp6(1),e.Q6J("disable",r.isDisableData)("model",r.application.status),e.xp6(2),e.Q6J("disabled",r.isDisableData)("ngModel",r.application.submitDate),e.xp6(1),e.Q6J("ngIf",r.submitDateMessage),e.xp6(2),e.Q6J("disabled",r.isDisableData)("ngModel",r.application.statusDate),e.xp6(1),e.Q6J("ngIf",r.statusDateMessage),e.xp6(2),e.Q6J("disable",r.isDisableData)("model",r.application.appSubType),e.xp6(2),e.Q6J("disabled",r.isDisableData)("ngModel",r.application.divisionClassDesc),e.xp6(1),e.Q6J("model",r.application.publicDomain),e.xp6(2),e.Q6J("ngModel",r.application.nonProprietaryName),e.xp6(3),e.Q6J("disabled",r.isDisableData)("ngModel",r.application.sponsorName),e.xp6(3),e.Q6J("disabled",r.isDisableData)("ngModel",r.application.externalTitle),e.xp6(3),e.Q6J("ngModel",r.application.title),e.xp6(1),e.Q6J("ngForOf",r.application.applicationIndicationList),e.xp6(1),e.Q6J("application",r.application)}}function kn(v,F){if(1&v&&(e.TgZ(0,"div",33),e.TgZ(1,"div",34),e.TgZ(2,"div",35),e._uU(3),e.qZA(),e.YNc(4,_s,19,11,"div",36),e.qZA(),e.YNc(5,Jo,32,27,"mat-card",37),e._UZ(6,"br"),e._UZ(7,"br"),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.hij(" ",f.title," "),e.xp6(1),e.Q6J("ngIf",f.application.id),e.xp6(1),e.Q6J("ngIf",f.application)}}var Qn=function(){return["/home"]},Vn=function(F,f){return{"submission-messages":!0,collapsed:F,expanded:f}},Di=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr){(0,S.Z)(this,F),this.applicationService=f,this.generalService=r,this.authService=O,this.loadingService=R,this.mainNotificationService=ee,this.gaService=Je,this.utilsService=_t,this.cvService=Kt,this.activatedRoute=Un,this.router=ai,this.overlayContainerService=Pi,this.dialog=ki,this.fb=ha,this.titleService=kr,this.isLoading=!0,this.showSubmissionMessages=!1,this.validationMessages=[],this.validationResult=!1,this.subscriptions=[],this.isDisableData=!1,this.username=null,this.title=null,this.submitDateMessage="",this.statusDateMessage="",this.isAdmin=!1}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.isAdmin=this.authService.hasRoles("admin"),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.username=this.authService.getUser();var O=this.activatedRoute.params.subscribe(function(R){if(R.id){var ee=R.id;r.title="Update Application",ee!==r.id&&(r.id=ee,r.gaService.sendPageView("Application Edit"),r.getApplicationDetails())}else r.title="Register New Application",setTimeout(function(){r.gaService.sendPageView("Application Register"),r.titleService.setTitle("Register Application"),r.applicationService.loadApplication(),r.application=r.applicationService.application,r.loadingService.setLoading(!1),r.isLoading=!1})},function(R){r.loadingService.setLoading(!1)});this.subscriptions.push(O)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"getApplicationDetails",value:function(r){var O=this;this.applicationService.getApplicationById(this.id).subscribe(function(R){R?(O.applicationService.loadApplication(R),O.application=O.applicationService.application,O.application&&(O.titleService.setTitle("Edit Application "+O.application.appType+" "+O.application.appNumber),O.application.provenance&&"darrts"===O.application.provenance.toLowerCase()&&(O.isDisableData=!0))):O.handleApplicationRetrivalError(),O.loadingService.setLoading(!1),O.isLoading=!1},function(R){O.gaService.sendException("getApplicationDetails: error from API call"),O.loadingService.setLoading(!1),O.isLoading=!1,O.handleApplicationRetrivalError()})}},{key:"validate",value:function(r){var O=this;this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.validateClient(),0===this.validationMessages.length&&this.applicationService.validateApplication().pipe((0,ve.q)(1)).subscribe(function(R){O.submissionMessage=null,O.validationMessages=R.validationMessages.filter(function(ee){return"ERROR"===ee.messageType.toUpperCase()||"WARNING"===ee.messageType.toUpperCase()}),O.validationResult=R.valid,O.showSubmissionMessages=!0,O.loadingService.setLoading(!1),O.isLoading=!1,0===O.validationMessages.length&&!0===O.validationResult&&(O.submissionMessage="Application is Valid. Would you like to submit?")},function(R){O.addServerError(R),O.loadingService.setLoading(!1),O.isLoading=!1})}},{key:"setValidationMessage",value:function(r){var O={};O.message=r,O.messageType="ERROR",this.validationMessages.push(O),this.validationResult=!1}},{key:"validateClient",value:function(){var r=this;this.submissionMessage=null,this.validationMessages=[],this.validationResult=!0,(null==this.application.center||null!=this.application.center&&this.application.center.length<1)&&this.setValidationMessage("Center is required"),(null==this.application.appType||null!=this.application.appType&&this.application.appType.length<1)&&this.setValidationMessage("Application Type is required"),(null==this.application.appNumber||null!=this.application.appNumber&&this.application.appNumber.length<1)&&this.setValidationMessage("Application Number is required"),null!==this.submitDateMessage&&this.submitDateMessage.length>0&&this.setValidationMessage(this.submitDateMessage),null!==this.statusDateMessage&&this.statusDateMessage.length>0&&this.setValidationMessage(this.statusDateMessage),null!=this.application&&this.application.applicationProductList.forEach(function(O){null!=O&&(O.amount&&!1===r.isNumber(O.amount)&&r.setValidationMessage("Amount must be a number"),O.applicationIngredientList.forEach(function(R){null!=R&&(R.average&&!1===r.isNumber(R.average)&&r.setValidationMessage("Average must be a number"),R.low&&!1===r.isNumber(R.low)&&r.setValidationMessage("Low must be a number"),R.high&&!1===r.isNumber(R.high)&&r.setValidationMessage("High must be a number"),R.lowLimit&&!1===r.isNumber(R.lowLimit)&&r.setValidationMessage("Low Limit must be a number"),R.highLimit&&!1===r.isNumber(R.highLimit)&&r.setValidationMessage("High Limit must be a number"),R.$$ingredientNameValidation&&r.setValidationMessage(R.$$ingredientNameValidation),R.$$basisOfStrengthValidation&&r.setValidationMessage(R.$$basisOfStrengthValidation))}))}),this.validationMessages.length>0&&(this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1)}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"addServerError",value:function(r){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var O={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};r&&r.error&&r.error.message?O.message="Server Error "+(r.status+": "||0)+r.error.message:r&&r.error&&"string"==typeof r.error?O.message="Server Error "+(r.status+": "||0)+r.error:r&&r.message&&(O.message="Server Error "+(r.status+": "||0)+r.message),this.validationMessages=[O],this.showSubmissionMessages=!0}},{key:"submit",value:function(){var r=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.application=this.cleanApplication(),this.application&&(this.application.id||null==this.application.provenance&&(this.application.provenance="GSRS")),this.applicationService.saveApplication().subscribe(function(O){r.loadingService.setLoading(!1),r.isLoading=!1,r.validationMessages=null,r.submissionMessage="Application was saved successfully!",r.showSubmissionMessages=!0,r.validationResult=!1,setTimeout(function(){if(r.showSubmissionMessages=!1,r.submissionMessage="",O.id){r.applicationService.bypassUpdateCheck();var R=O.id;r.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},r.router.onSameUrlNavigation="reload",r.router.navigate(["/application",R,"edit"])}},4e3)},function(O){r.loadingService.setLoading(!1)})}},{key:"handleApplicationRetrivalError",value:function(){var r=this;this.mainNotificationService.setNotification({message:"The application you're trying to edit doesn't exist.",type:vn.k.error,milisecondsToShow:4e3}),setTimeout(function(){r.router.navigate(["/application/register"]),r.applicationService.loadApplication()},5e3)}},{key:"getVocabularies",value:function(){}},{key:"confirmDeleteApplication",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete this Application?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteApplication()})}},{key:"deleteApplication",value:function(){var r=this;this.applicationService.deleteApplication().subscribe(function(O){r.applicationService.bypassUpdateCheck(),r.displayMessageAfterDeleteApp()},function(O){console.log(O)})}},{key:"displayMessageAfterDeleteApp",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"This application record was deleted successfully",type:"home"}}).afterClosed().subscribe(function(R){r.router.navigate(["/home"])})}},{key:"cleanApplication",value:function(){var r=JSON.stringify(this.application),O=JSON.parse(r);return O.applicationProductList.forEach(function(R){null!=R&&R.applicationIngredientList.forEach(function(ee){null!=ee&&((ee.$$ingredientNameValidation||""===ee.$$ingredientNameValidation)&&delete ee.$$ingredientNameValidation,(ee.$$basisOfStrengthValidation||""===ee.$$basisOfStrengthValidation)&&delete ee.$$basisOfStrengthValidation)})}),O}},{key:"showJSON",value:function(){var r=this.cleanApplication(),R=this.dialog.open(Os,{width:"90%",height:"90%",data:r}).afterClosed().subscribe(function(ee){});this.subscriptions.push(R)}},{key:"addNewIndication",value:function(){this.applicationService.addNewIndication()}},{key:"confirmDeleteIndication",value:function(r,O){var R=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Indication ("+(r+1)+")?"}}).afterClosed().subscribe(function(Je){Je&&!0===Je&&R.deleteIndication(r)})}},{key:"deleteIndication",value:function(r){this.applicationService.deleteIndication(r)}},{key:"validateSubmitDate",value:function(){this.submitDateMessage="",!1===this.validateDate(this.application.submitDate)?this.submitDateMessage="Submit Date is invalid":!1===this.validateSubmitDateWithStatusDate(this.application.submitDate,this.application.statusDate)&&(this.submitDateMessage="Submit Date should be earlier than Status Date;")}},{key:"validateStatusDate",value:function(){this.statusDateMessage="";var r=this.validateDate(this.application.statusDate);!1===r?this.statusDateMessage="Status Date is invalid":!1===(r=this.validateFutureDate(this.application.statusDate))?this.statusDateMessage="Status Date should not be a future date":!1===(r=this.validateSubmitDateWithStatusDate(this.application.submitDate,this.application.statusDate))&&(this.submitDateMessage="Submit Date should be earlier than Status Date;")}},{key:"validateFutureDate",value:function(r){var O=!0,ee=(new Date).setHours(0,0,0);return null!==r&&r.length>0&&(r.length>=8||r.length<=10)&&new Date(r).setHours(0,0,0)>ee&&(O=!1),O}},{key:"validateSubmitDateWithStatusDate",value:function(r,O){var R=!0;return r&&O&&new Date(r).setHours(0,0,0)>new Date(O).setHours(0,0,0)&&(R=!1),R}},{key:"validateDate",value:function(r){var O=!0;if(null!==r&&r.length>0){if(r.length<8||r.length>10)return!1;var R=r.split("/");if(3!==R.length||R[0].length<1||R[0].length>2||R[1].length<1||R[1].length>2||4!==R[2].length)return!1;if(3===R.length)for(var Je=0;Je0),e.xp6(2),e.Q6J("ngIf",r.application),e.xp6(5),e.Q6J("routerLink",e.DdM(7,Qn)),e.xp6(2),e.Q6J("ngClass",e.WLB(8,Vn,!r.showSubmissionMessages,r.showSubmissionMessages)),e.xp6(1),e.Q6J("ngIf",r.submissionMessage),e.xp6(1),e.Q6J("ngIf",r.validationMessages),e.xp6(4),e.Q6J("ngIf",r.application))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%], .col-1[_ngcontent-%COMP%]{width:calc((100% - 150px) / 6);margin-right:30px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1200px;min-width:1200px;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:start;justify-content:flex-start}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}"]}),v}();function Gi(v,F){if(1&v&&(e.TgZ(0,"span",23),e._uU(1),e.ALo(2,"date"),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.AsE("Reviewed By:",f.reviewedBy,"\xa0",e.xi3(2,2,f.reviewDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function tr(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",31),e.NdJ("click",function(){e.CHM(f);var O=e.oxw(2).index;return e.oxw().addNewProductName(O)}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function ar(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",24),e.TgZ(2,"mat-form-field",25),e.TgZ(3,"input",26),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.productName=Je}),e.qZA(),e.qZA(),e.TgZ(4,"app-cv-input",27),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.productNameType=Je}),e.qZA(),e._uU(5," \xa0\xa0 "),e.TgZ(6,"span",28),e.YNc(7,tr,3,0,"button",29),e.qZA(),e.TgZ(8,"button",30),e.NdJ("click",function(){var _t=e.CHM(f).index,Kt=e.oxw().index;return e.oxw().confirmDeleteProductName(Kt,_t)}),e.TgZ(9,"mat-icon"),e._uU(10,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw().$implicit;e.xp6(3),e.Q6J("ngModel",r.productName),e.xp6(1),e.Q6J("model",r.productNameType),e.xp6(3),e.Q6J("ngIf",0==O),e.xp6(1),e.Q6J("disabled",1==R.applicationProductNameList.length),e.xp6(1),e.ekj("disabled",1==R.applicationProductNameList.length)}}function ja(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"app-ingredient-form",32),e.NdJ("ingredientMessageOut",function(Kt){return e.CHM(f),e.oxw(2).ingredientMessageOutChange(Kt)})("basisOfStrengthMessageOut",function(Kt){return e.CHM(f),e.oxw(2).basisOfStrengthMessageOutChange(Kt)}),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw(),ee=R.index,Je=R.$implicit;e.xp6(1),e.Q6J("ingredient",r)("prodIndex",ee)("ingredIndex",O)("totalIngredient",Je.applicationIngredientList.length)}}var Es=function(){return{color:"green"}},hu=function(){return[]};function so(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",6),e.TgZ(2,"button",7),e.NdJ("click",function(){var _t=e.CHM(f).index;return e.oxw().confirmDeleteProduct(_t)}),e.TgZ(3,"mat-icon"),e._uU(4,"delete_forever"),e.qZA(),e.qZA(),e._uU(5," \xa0\xa0 "),e.TgZ(6,"button",8),e.NdJ("click",function(){var _t=e.CHM(f).$implicit;return e.oxw().copyProduct(_t)}),e.TgZ(7,"mat-icon"),e._uU(8,"file_copy"),e.qZA(),e.qZA(),e._uU(9," \xa0\xa0 "),e.TgZ(10,"button",8),e.NdJ("click",function(){var _t=e.CHM(f).index;return e.oxw().confirmReviewProduct(_t)}),e.TgZ(11,"mat-icon"),e._uU(12,"check_circle"),e.qZA(),e.qZA(),e.YNc(13,Gi,3,5,"span",9),e.qZA(),e.TgZ(14,"fieldset",10),e.TgZ(15,"legend",10),e._uU(16,"Product Details\xa0"),e.TgZ(17,"b"),e.TgZ(18,"span",11),e._uU(19),e.qZA(),e.qZA(),e.qZA(),e.YNc(20,ar,11,6,"div",5),e.TgZ(21,"div",12),e.TgZ(22,"app-cv-input",13),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.dosageForm=Je}),e.qZA(),e.TgZ(23,"div",14),e.TgZ(24,"app-tag-selector",15),e.NdJ("tagsUpdate",function(Je){var Kt=e.CHM(f).index;return e.oxw().updateRouteAdmin(Je,Kt)}),e.qZA(),e.qZA(),e.TgZ(25,"app-cv-input",16),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.unitPresentation=Je}),e.qZA(),e.TgZ(26,"mat-form-field",17),e.TgZ(27,"input",18),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.amount=Je}),e.qZA(),e.qZA(),e.TgZ(28,"app-cv-input",19),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.unit=Je}),e.qZA(),e.qZA(),e._UZ(29,"br"),e._UZ(30,"hr"),e._UZ(31,"br"),e.TgZ(32,"span",20),e.TgZ(33,"span",21),e._uU(34,"INGREDIENT"),e.qZA(),e.qZA(),e._UZ(35,"span",0),e._uU(36," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(37,"button",22),e.NdJ("click",function(){var _t=e.CHM(f).index;return e.oxw().addNewIngredient(_t)}),e._UZ(38,"mat-icon",4),e._uU(39,"Add Ingredient "),e.qZA(),e.YNc(40,ja,2,4,"div",5),e.qZA(),e._UZ(41,"br"),e._UZ(42,"br"),e._UZ(43,"br"),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw();e.xp6(2),e.MGl("matTooltip","Delete Product Details ",O+1,""),e.Q6J("ngStyle",e.DdM(19,Es))("disabled",1==R.application.applicationProductList.length),e.xp6(1),e.ekj("disabled",1==R.application.applicationProductList.length),e.xp6(3),e.MGl("matTooltip","Copy Product Details ",O+1," to a New Product"),e.Q6J("ngStyle",e.DdM(20,Es)),e.xp6(4),e.MGl("matTooltip","Click to Confirm Product Details ",O+1," has been Reviewed"),e.Q6J("ngStyle",e.DdM(21,Es)),e.xp6(3),e.Q6J("ngIf",r.reviewDate),e.xp6(6),e.Oqu(O+1),e.xp6(1),e.Q6J("ngForOf",r.applicationProductNameList),e.xp6(2),e.Q6J("model",r.dosageForm),e.xp6(2),e.Q6J("tags",r.routeAdmin?r.routeAdmin.split(","):e.DdM(22,hu)),e.xp6(1),e.Q6J("model",r.unitPresentation),e.xp6(2),e.Q6J("ngModel",r.amount),e.xp6(1),e.Q6J("model",r.unit),e.xp6(4),e.s9C("matBadge",r.applicationIngredientList.length),e.xp6(8),e.Q6J("ngForOf",r.applicationIngredientList)}}var Zs=function(){var v=function(){function F(f,r,O,R,ee){(0,S.Z)(this,F),this.applicationService=f,this.cvService=r,this.authService=O,this.generalService=R,this.dialog=ee,this.reviewProductMessage=[],this.productMessage="",this.username=null}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.username=this.authService.getUser()}},{key:"addNewProduct",value:function(){this.applicationService.addNewProduct()}},{key:"addNewProductName",value:function(r){this.applicationService.addNewProductName(r)}},{key:"confirmDeleteProduct",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Product Details "+(r+1)+" data?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteProduct(r)})}},{key:"deleteProduct",value:function(r){this.applicationService.deleteProduct(r)}},{key:"confirmDeleteProductName",value:function(r,O){var R=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Product Name "+(O+1)+" ?"}}).afterClosed().subscribe(function(Je){Je&&!0===Je&&R.deleteProductName(r,O)})}},{key:"deleteProductName",value:function(r,O){this.applicationService.deleteProductName(r,O)}},{key:"copyProduct",value:function(r){this.applicationService.copyProduct(r)}},{key:"confirmReviewProduct",value:function(r){var O=this;this.application.applicationProductList[r].reviewDate?this.dialog.open(qa.$,{data:{message:"Are you sure you want to overwrite Reviewed By and Review Date?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.reviewProduct(r)}):this.reviewProduct(r)}},{key:"reviewProduct",value:function(r){var O=this.generalService.getCurrentDate();this.application.applicationProductList[r].reviewDate=O,this.application.applicationProductList[r].reviewedBy=this.username}},{key:"addNewIngredient",value:function(r){this.applicationService.addNewIngredient(r)}},{key:"updateRouteAdmin",value:function(r,O){this.application.applicationProductList[O].routeAdmin=r.toString()}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(I.I),e.Y36(Ni.I),e.Y36(Me.e),e.Y36(D.m),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-application-product-form"]],inputs:{application:"application"},decls:15,vars:2,consts:[[1,""],[1,"titlegreen"],["matBadgeOverlap","false",3,"matBadge"],["mat-raised-button","","color","primary","matTooltip","Add New Product",3,"click"],["svgIcon","add_circle_outline"],[4,"ngFor","ngForOf"],[1,"marginbottomminus17px","padleft250px"],["mat-icon-button","",3,"ngStyle","disabled","matTooltip","click"],["mat-icon-button","",3,"ngStyle","matTooltip","click"],["class","colorgray font12px",4,"ngIf"],[1,"border"],[1,"colorgreen","font17px"],[1,"form-row"],["domain","DOSAGE_FORM","title","Dosage Form","name","dosageForm",1,"col-1",3,"model","valueChange"],[1,"col-1","marginright30px"],["cvDomain","PROD_ROUTE_OF_ADMIN","placeholder","Route of Administration",1,"tags",3,"tags","tagsUpdate"],["domain","PROD_UNIT_PRESENTATION","title","Unit Of Presentation","name","unitPresentation",1,"col-1",3,"model","valueChange"],[1,"col-1"],["matInput","","placeholder","Amount","name","amount",3,"ngModel","ngModelChange"],["domain","APPLICATION_UNIT","title","Unit","name","unit",1,"col-1",3,"model","valueChange"],["matBadgeColor","warn","matBadgeOverlap","false",3,"matBadge"],[1,"titleorange"],["mat-raised-button","","color","primary","matTooltip","Add New Ingredient",3,"click"],[1,"colorgray","font12px"],[1,"form-row-prodname"],[1,"prodNameField"],["matInput","","placeholder","Product Name","name","productName",3,"ngModel","ngModelChange"],["domain","PROD_PRODUCT_NAME_TYPE","title","Product Name Type","name","productNameType",1,"col-1-nomargin",3,"model","valueChange"],[1,"width40px","displayinlineblock"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Name",3,"disabled","click"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click"],[3,"ingredient","prodIndex","ingredIndex","totalIngredient","ingredientMessageOut","basisOfStrengthMessageOut"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e._UZ(1,"br"),e._UZ(2,"hr"),e._UZ(3,"br"),e._UZ(4,"span",1),e.TgZ(5,"span",2),e.TgZ(6,"span",1),e._uU(7,"PRODUCT"),e.qZA(),e.qZA(),e._uU(8," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(9,"button",3),e.NdJ("click",function(){return r.addNewProduct()}),e._UZ(10,"mat-icon",4),e._uU(11,"Add Product "),e.qZA(),e._UZ(12,"br"),e._UZ(13,"br"),e.YNc(14,so,44,23,"div",5),e.qZA()),2&f&&(e.xp6(5),e.s9C("matBadge",r.application.applicationProductList.length),e.xp6(9),e.Q6J("ngForOf",r.application.applicationProductList))},styles:[".details-container[_ngcontent-%COMP%]{width:100%}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%]{width:calc((100% - 120px)/5);margin-right:30px}.form-row[_ngcontent-%COMP%] .col-1-nomargin[_ngcontent-%COMP%]{width:calc((100% - 120px)/5);margin-right:0}.form-row-prodname[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.prodNameField[_ngcontent-%COMP%]{width:calc((100% - 100px)*.8);margin-right:30px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.font12px[_ngcontent-%COMP%]{font-size:12px}.font17px[_ngcontent-%COMP%]{font-size:17px}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.titlegreen[_ngcontent-%COMP%]{color:var(--regular-green-color);font-size:17px;font-weight:500}.titleorange[_ngcontent-%COMP%]{color:var(--regular-orangered-color);font-size:17px;font-weight:500}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.marginright30px[_ngcontent-%COMP%]{margin-right:30px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintopminus25[_ngcontent-%COMP%]{margin-top:-5px}.marginbottomminus17px[_ngcontent-%COMP%]{margin-bottom:-17px}.padleft250px[_ngcontent-%COMP%]{padding-left:250px}.pad10px[_ngcontent-%COMP%]{padding:10px}.padbottom0px[_ngcontent-%COMP%]{padding:0}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted var(--regular-green-color);color:var(--hr-color);overflow:visible;text-align:center;height:5px}fieldset.border[_ngcontent-%COMP%]{border:solid 1px var(--regular-green-color)!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0;box-shadow:3px 4px 5px 1px var(--fieldset-box-shadow-color)}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:13px;color:var(--legend-blue-border-color);font-family:Verdana;font-weight:700;margin-bottom:10px}.formfieldwidth[_ngcontent-%COMP%]{width:160px!important}.formfield2columnwidth[_ngcontent-%COMP%]{width:370px!important}.formfield3columnwidth[_ngcontent-%COMP%]{width:540px!important}.formfieldfullpagewidth[_ngcontent-%COMP%]{width:900px}.width40px[_ngcontent-%COMP%]{width:40px}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}"]}),v}();function Rl(v,F){if(1&v&&(e.TgZ(0,"span",28),e._uU(1),e.ALo(2,"date"),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.AsE("Reviewed By:\xa0",f.ingredient.reviewedBy,"\xa0",e.xi3(2,2,f.ingredient.reviewDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Ir(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"span",30),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.TgZ(5,"span",30),e._uU(6,"Modified By:"),e.qZA(),e._uU(7),e.ALo(8,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(3),e.AsE(" ",f.ingredient.createdBy,"\xa0\xa0\xa0 ",e.xi3(4,4,f.ingredient.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.AsE(" ",f.ingredient.modifiedBy,"\xa0\xa0\xa0 ",e.xi3(8,7,f.ingredient.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function il(v,F){if(1&v&&(e.TgZ(0,"span",29),e.YNc(1,Ir,9,10,"span",15),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.ingredient.id)}}function vs(v,F){if(1&v&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.ingredientNameMessage," ")}}function $a(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",34),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f," ")}}function ks(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,$a,4,1,"div",33),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.Oqu(f.ingredientName),e.xp6(2),e.Q6J("ngForOf",f.ingredientNameActiveMoiety)}}function ys(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",35),e._uU(2),e.qZA(),e.TgZ(3,"span",34),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",36),e.NdJ("click",function(){e.CHM(f);var R=e.oxw();return R.confirmDeleteIngredientName(R.ingredIndex)}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(2),e.Oqu(r.ingredient.substanceKey),e.xp6(2),e.hij(" (",r.ingredient.substanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Ingredient Name ",r.ingredIndex+1,"")}}function Ul(v,F){if(1&v&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.basisOfStrengthMessage," ")}}function ao(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",34),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f," ")}}function as(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,ao,4,1,"div",33),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.Oqu(f.basisOfStrengthIngredientName),e.xp6(2),e.Q6J("ngForOf",f.basisOfStrengthActiveMoiety)}}function Tr(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",35),e._uU(2),e.qZA(),e.TgZ(3,"span",34),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",36),e.NdJ("click",function(){e.CHM(f);var R=e.oxw();return R.confirmDeleteBasisOfStrength(R.ingredIndex)}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(2),e.Oqu(r.ingredient.basisOfStrengthSubstanceKey),e.xp6(2),e.hij(" (",r.ingredient.basisOfStrengthSubstanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Basis of Strength ",r.ingredIndex+1,"")}}var bs=function(){return{color:"orangered"}},Qo=function(){var v=function(){function F(f,r,O,R,ee,Je){(0,S.Z)(this,F),this.authService=f,this.configService=r,this.cvService=O,this.applicationService=R,this.generalService=ee,this.dialog=Je,this.ingredientNameMessage="",this.basisOfStrengthMessage="",this.ingredientNameActiveMoiety=new Array,this.basisOfStrengthActiveMoiety=new Array,this.username=null,this.subscriptions=[]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;setTimeout(function(){r.username=r.authService.getUser(),r.ingredientNameBdnumOld=r.ingredient.substanceKey,r.basisofStrengthBdnumOld=r.ingredient.basisOfStrengthSubstanceKey,r.substanceKeyTypeConfig=r.generalService.getSubstanceKeyType(),r.substanceKeyTypeConfig||alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add "Ingredient Name" and "Basis of Strength" into the database.'),r.getSubstanceBySubstanceKey()},600)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"addNewIngredient",value:function(r){this.applicationService.addNewIngredient(r)}},{key:"confirmDeleteIngredient",value:function(r,O){var R=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Ingredient Details "+(O+1)+"?"}}).afterClosed().subscribe(function(Je){Je&&!0===Je&&R.deleteIngredient(r,O)})}},{key:"deleteIngredient",value:function(r,O){this.applicationService.deleteIngredient(r,O)}},{key:"copyIngredient",value:function(r,O){this.applicationService.copyIngredient(r,O)}},{key:"confirmReviewIngredient",value:function(){var r=this;this.ingredient.reviewDate?this.dialog.open(qa.$,{data:{message:"Are you sure you want to overwrite Reviewed By and Review Date?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.reviewIngredient()}):this.reviewIngredient()}},{key:"reviewIngredient",value:function(){var r=this.generalService.getCurrentDate();this.ingredient.reviewDate=r,this.ingredient.reviewedBy=this.username}},{key:"confirmDeleteIngredientName",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Ingredient Name "+(r+1)+"?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteIngredientName()})}},{key:"deleteIngredientName",value:function(){this.ingredientNameMessage="",null!=this.ingredient.id&&null!=this.ingredientNameBdnumOld&&(this.ingredientNameMessage="Click Validate and Submit button to delete "+this.ingredientName),this.ingredientNameSubstanceUuid=null,this.ingredientName=null,this.ingredient.substanceKey=null,this.ingredient.substanceKeyType=null}},{key:"confirmDeleteBasisOfStrength",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Basis of Strength "+(r+1)+"?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteBasisOfStrength()})}},{key:"deleteBasisOfStrength",value:function(){this.basisOfStrengthMessage="",null!=this.ingredient.id&&null!=this.basisofStrengthBdnumOld&&(this.basisOfStrengthMessage="Click Validate and Submit button to delete "+this.basisOfStrengthIngredientName),this.basisOfStrengthSubstanceUuid=null,this.basisOfStrengthIngredientName=null,this.ingredient.basisOfStrengthSubstanceKey=null,this.ingredient.basisOfStrengthSubstanceKeyType=null}},{key:"getSubstanceCode",value:function(r,O){var R=this,ee=this.generalService.getSubstanceCodesBySubstanceUuid(r).subscribe(function(Je){if(Je)for(var _t=Je,Kt=0;Kt<_t.length;Kt++)if(_t[Kt].codeSystem&&_t[Kt].codeSystem===R.substanceKeyTypeConfig&&"PRIMARY"===_t[Kt].type){O&&("ingredientname"===O&&(R.ingredient.substanceKey=_t[Kt].code,R.ingredient.substanceKeyType=R.substanceKeyTypeConfig,R.ingredient.basisOfStrengthSubstanceKey||(R.ingredient.basisOfStrengthSubstanceKey=_t[Kt].code,R.ingredient.basisOfStrengthSubstanceKeyType=R.substanceKeyTypeConfig)),"basisofstrength"===O&&(R.ingredient.basisOfStrengthSubstanceKey=_t[Kt].code,R.ingredient.basisOfStrengthSubstanceKeyType=R.substanceKeyTypeConfig));break}});this.subscriptions.push(ee)}},{key:"getSubstanceBySubstanceKey",value:function(){var r=this;if(null!=this.ingredient){if(this.ingredient.substanceKey){var O=this.generalService.getSubstanceByAnyId(this.ingredient.substanceKey).subscribe(function(ee){ee&&ee.uuid&&(r.substanceUuid=ee.uuid,r.ingredientName=ee._name,r.getActiveMoiety(r.substanceUuid,"ingredientname"))});this.subscriptions.push(O)}if(this.ingredient.basisOfStrengthSubstanceKey){var R=this.generalService.getSubstanceByAnyId(this.ingredient.basisOfStrengthSubstanceKey).subscribe(function(ee){ee&&ee.uuid&&(r.basisOfStrengthSubstanceUuid=ee.uuid,r.basisOfStrengthIngredientName=ee._name,r.getActiveMoiety(r.basisOfStrengthSubstanceUuid,"basisofstrength"))});this.subscriptions.push(R)}}}},{key:"getActiveMoiety",value:function(r,O){var R=this;null!=r&&this.generalService.getSubstanceRelationships(r).subscribe(function(ee){if(ee&&ee&&ee.length>0)for(var Je=0;Je0&&void 0!==arguments[0]?arguments[0]:"";this.searchValue=O;var R=O.replace('"',""),ee=this.substanceSelectorProperties.map(function(Je){return"".concat(Je,':"^').concat(R,'$"')}).join(" OR ");this.substanceService.getQuickSubstancesSummaries(ee,!0).subscribe(function(Je){r.loadingStructure=!0,Je.content&&Je.content.length?(r.selectedSubstance=Je.content[0],r.selectionUpdated.emit(r.selectedSubstance),r.errorMessage=""):r.showMessage.emit("No substances found for "+r.searchValue),r.loadingStructure=!1})}},{key:"editSelectedSubstance",value:function(){this.selectedSubstance=null,this.selectionUpdated.emit(this.selectedSubstance)}},{key:"searchValueOutChange",value:function(r){this.searchValueOut.emit(r)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(ue.d),e.Y36(hn.E))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-substance-search-selector"]],inputs:{eventCategory:"eventCategory",placeholder:"placeholder",hintMessage:"hintMessage",header:"header",name:"name",subuuid:"subuuid"},outputs:{selectionUpdated:"selectionUpdated",showMessage:"showMessage",searchValueOut:"searchValueOut"},decls:3,vars:7,consts:[[1,"substance-selector-container"],[3,"searchValue","ngClass","eventCategory","placeholder","searchPerformed","searchValueOut"],["class","selected-substance",3,"mouseenter","mouseleave",4,"ngIf"],[1,"selected-substance",3,"mouseenter","mouseleave"],["class","selected-substance-options",4,"ngIf"],[1,"section-header"],["class","related-image","appSubstanceImage","",3,"entityId",4,"ngIf"],["strokeWidth","3","mode","indeterminate",3,"diameter",4,"ngIf"],["class","code",4,"ngIf"],[1,"selected-substance-options"],["mat-mini-fab","",3,"click"],["aria-label","Edit Selected Substance","svgIcon","edit"],["mat-mini-fab","","target","_blank",3,"routerLink",4,"ngIf"],["mat-mini-fab","","target","_blank",3,"routerLink"],["aria-label","Open in new tab","svgIcon","open_in_new"],["appSubstanceImage","",1,"related-image",3,"entityId"],["strokeWidth","3","mode","indeterminate",3,"diameter"],[1,"code"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"app-substance-text-search",1),e.NdJ("searchPerformed",function(R){return r.processSubstanceSearch(R)})("searchValueOut",function(R){return r.searchValueOutChange(R)}),e.qZA(),e.YNc(2,Se,9,5,"div",2),e.qZA()),2&f&&(e.xp6(1),e.Q6J("searchValue",r.searchValue)("ngClass",e.VKq(5,Ie,r.selectedSubstance))("eventCategory",r.eventCategory)("placeholder",r.placeholder),e.xp6(1),e.Q6J("ngIf",r.selectedSubstance))},directives:[fo.e,c.mk,c.O5,h.lW,T.Hw,h.zs,u.yS,ie.m,Y.Ou],styles:[".selected-substance-container[_ngcontent-%COMP%]{max-width:100%;width:100%}.selected-substance[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;text-align:center;position:relative}.selected-substance[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block;max-width:200px}.selected-substance-options[_ngcontent-%COMP%]{position:absolute;right:5px;top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]{background-color:var(--mat-icon-button-bg-color);color:var(--label-color);width:35px;height:35px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%]:not(:first-child){margin-top:3px}.selected-substance-options[_ngcontent-%COMP%] .mat-mini-fab[_ngcontent-%COMP%] .mat-button-wrapper{padding:0}.hidden[_ngcontent-%COMP%]{display:none!important}.mat-progress-spinner[_ngcontent-%COMP%] circle[_ngcontent-%COMP%], .mat-spinner[_ngcontent-%COMP%] circle[_ngcontent-%COMP%]{stroke:var(--spinner-stroke-color)}"]}),v}(),Et=[{path:"browse-applications",component:zi,canActivate:[Ss]},{path:"application/register",component:Di,canActivate:[Ss,al],canDeactivate:[xs]},{path:"application/:id/edit",component:Di,canActivate:[Ss,Gr],canDeactivate:[xs]},{path:"application/:id",component:St,canActivate:[Ss]},{path:"application/:appType/:appNumber",component:St,canActivate:[Ss]},{path:"application-darrts/:appType/:appNumber",component:Wa,canActivate:[Ss]}],Qt=function(){var v=function(){function F(f){(0,S.Z)(this,F),Et.forEach(function(r){f.config[0].children.push(r)})}return(0,t.Z)(F,null,[{key:"forRoot",value:function(){return{ngModule:F,providers:[I.I,al,Gr,Ss,xs]}}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0))},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({providers:[al,Gr,Ss],imports:[[c.ez,u.Bz.forChild(Et),Ht.g0,nn.SJ,o.QW,an.Bb,kt.lN,It.c,h.ot,T.Ps,$e.Hi,q.g,_.To,B.p9,y.p0,Ae.JX,X.TU,ne.LD,me.KP,mt.Is,Oe.ie,He.Tx,At.vV,s.AV,b.Nh,Ft._r,sn.FA,Xt.XK,et.u5,et.UX,Fe.U8,Cs.Cv,vl.f,Is,gn.On,Ms,Ls,rs.O,Fs]]}),v}();e.B6R(Di,[h.lW,c.O5,T.Hw,s.gM,u.rH,h.zs,u.yS,c.mk,c.sg,o.a8,o.dn,Br.S,kt.KE,It.Nt,et.Fj,et.Q7,et.JJ,et.On,kt.bx,Zs],[c.uU]),e.B6R(Zs,[q.k,h.lW,s.gM,T.Hw,c.sg,c.PC,c.O5,kt.KE,It.Nt,et.Fj,et.JJ,et.On,Br.S,Io.C,Qo],[c.uU]),e.B6R(Qo,[h.lW,c.PC,s.gM,T.Hw,c.O5,kt.KE,It.Nt,et.Fj,et.JJ,et.On,je,c.sg,Br.S],[c.uU]);var bn=function(){var v=(0,t.Z)(function F(){(0,S.Z)(this,F)});return v.\u0275fac=function(f){return new(f||v)},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({imports:[[c.ez,u.Bz,y.p0,o.QW,h.ot,T.Ps,s.AV]]}),v}(),On=n(42154),Tn=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un){(0,S.Z)(this,F),this.productService=f,this.generalService=r,this.activatedRoute=O,this.loadingService=R,this.mainNotificationService=ee,this.router=Je,this.gaService=_t,this.utilsService=Kt,this.titleService=Un,this.message="",this.isAdmin=!1,this.subscriptions=[]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.loadingService.setLoading(!0),this.productId=this.activatedRoute.snapshot.params.id,this.src=this.activatedRoute.snapshot.params.src,null!=this.productId?this.getProduct():this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"ngAfterViewInit",value:function(){}},{key:"getProduct",value:function(){var r=this,O=this.productService.getProduct(this.productId).subscribe(function(R){if(R&&(r.product=R,Object.keys(r.product).length>0)){var ee="";r.product.productCodeList.forEach(function(Je,_t){null!=Je&&Je.productCode&&(_t>0&&(ee=ee.concat("|")),ee=ee.concat(Je.productCode))}),r.titleService.setTitle("Product "+ee),r.getSubstanceBySubstanceKey()}},function(R){r.message="No Product record found"});this.subscriptions.push(O)}},{key:"getSubstanceBySubstanceKey",value:function(){var r=this;null!=this.product&&this.product.productComponentList.forEach(function(O){null!=O&&O.productLotList.forEach(function(R){null!=R&&R.productIngredientList.forEach(function(ee){if(null!=ee){if(ee.substanceKey){var Je=r.generalService.getSubstanceByAnyId(ee.substanceKey).subscribe(function(Kt){Kt&&(ee._substanceUuid=Kt.uuid,ee._ingredientName=Kt._name)});r.subscriptions.push(Je)}if(ee.basisOfStrengthSubstanceKey){var _t=r.generalService.getSubstanceByAnyId(ee.basisOfStrengthSubstanceKey).subscribe(function(Kt){Kt&&(ee._basisOfStrengthSubstanceUuid=Kt.uuid,ee._basisOfStrengthIngredientName=Kt._name)});r.subscriptions.push(_t)}}})})})}},{key:"handleSubstanceRetrivalError",value:function(){var r=this;this.loadingService.setLoading(!1),this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:vn.k.error,milisecondsToShow:4e3}),setTimeout(function(){r.router.navigate(["/browse-substance"])},5e3)}},{key:"getSafeStructureImgUrl",value:function(r){var O=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(r,O,!0)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(On.M),e.Y36(D.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-product-details-base"]],decls:0,vars:0,template:function(f,r){},styles:[""]}),v}();function di(v,F){if(1&v&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&v){var f=e.oxw();e.xp6(5),e.hij(" ",f.message,"\n")}}var Ei=function(F){return["/product",F,"edit"]};function xa(v,F){if(1&v&&(e.TgZ(0,"a",19),e._UZ(1,"mat-icon",20),e.qZA()),2&v){var f=e.oxw(2);e.Q6J("routerLink",e.VKq(1,Ei,f.product.id))}}function Xa(v,F){1&v&&e._UZ(0,"mat-icon",21)}function fr(v,F){if(1&v&&(e.TgZ(0,"div",22),e.TgZ(1,"span",23),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.TgZ(4,"span",23),e._uU(5,"Create Date:"),e.qZA(),e._uU(6),e.ALo(7,"date"),e.TgZ(8,"span",23),e._uU(9,"Modified By:"),e.qZA(),e._uU(10),e.TgZ(11,"span",23),e._uU(12,"Modify Date:"),e.qZA(),e._uU(13),e.ALo(14,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(3),e.hij(" ",f.product.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(7,4,f.product.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",f.product.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(14,7,f.product.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Pr(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"b"),e._uU(2,"Term:"),e.qZA(),e._uU(3),e.TgZ(4,"b"),e._uU(5,"Term Part:"),e.qZA(),e._uU(6),e._UZ(7,"br"),e._UZ(8,"br"),e.qZA()),2&v){var f=F.$implicit;e.xp6(3),e.hij("\xa0",f.productTerm," "),e.xp6(3),e.hij("\xa0\xa0",f.productTermPart,"")}}function Yr(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e.TgZ(2,"span",24),e._uU(3),e.qZA(),e.qZA(),e.TgZ(4,"td"),e._uU(5),e.qZA(),e.TgZ(6,"td"),e.YNc(7,Pr,9,2,"div",11),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(3),e.Oqu(f.productName),e.xp6(2),e.Oqu(f.productNameType),e.xp6(2),e.Q6J("ngForOf",f.productTermAndTermPartList)}}function Kr(v,F){1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td",25),e._uU(2," No Product Name Available "),e.qZA(),e.qZA())}function mo(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",26),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e._uU(5),e._UZ(6,"br"),e.qZA()),2&v){var f=F.$implicit;e.xp6(3),e.Oqu(f.productCode),e.xp6(2),e.hij(" ",f.productCodeType,"")}}function To(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Oqu(f.companyName),e.xp6(2),e.Oqu(f.companyAddress),e.xp6(2),e.Oqu(f.companyCity),e.xp6(2),e.Oqu(f.companyState),e.xp6(2),e.Oqu(f.companyZip),e.xp6(2),e.hij("",f.companyCountry," "),e.xp6(2),e.Oqu(f.companyCode),e.xp6(2),e.Oqu(f.companyCodeType),e.xp6(2),e.Oqu(f.companyRole)}}var Nr=function(F){return["/substances",F]};function vr(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",37),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Nr,f._substanceUuid)),e.xp6(1),e.Oqu(f._ingredientName)}}function Wt(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",37),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Nr,f._basisOfStrengthSubstanceUuid)),e.xp6(1),e.Oqu(f._basisOfStrengthIngredientName)}}function Lo(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e.YNc(2,vr,3,4,"div",1),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Wt,3,4,"div",1),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.TgZ(19,"td"),e._uU(20),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.TgZ(23,"td"),e._uU(24),e.qZA(),e.TgZ(25,"td"),e._uU(26),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Q6J("ngIf",f._substanceUuid),e.xp6(2),e.Q6J("ngIf",f._basisOfStrengthSubstanceUuid),e.xp6(2),e.Oqu(f.ingredientType),e.xp6(2),e.Oqu(f.ingredientLocation),e.xp6(2),e.Oqu(f.average),e.xp6(2),e.Oqu(f.low),e.xp6(2),e.Oqu(f.high),e.xp6(2),e.Oqu(f.unit),e.xp6(2),e.Oqu(f.manufacturer),e.xp6(2),e.Oqu(f.ingredLotNo),e.xp6(2),e.Oqu(f.grade),e.xp6(2),e.Oqu(f.releaseCharacteristic),e.xp6(2),e.Oqu(f.notes)}}function yl(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",17),e.TgZ(2,"span",34),e._uU(3),e.qZA(),e.qZA(),e.TgZ(4,"div",12),e.TgZ(5,"div",13),e.TgZ(6,"div",14),e._uU(7," Lot Number: "),e.qZA(),e.TgZ(8,"div",15),e._uU(9),e.qZA(),e.qZA(),e.TgZ(10,"div",13),e.TgZ(11,"div",14),e._uU(12," Lot Size: "),e.qZA(),e.TgZ(13,"div",15),e._uU(14),e.qZA(),e.qZA(),e.TgZ(15,"div",13),e.TgZ(16,"div",14),e._uU(17," Expiry Date: "),e.qZA(),e.TgZ(18,"div",15),e._uU(19),e.qZA(),e.qZA(),e.TgZ(20,"div",13),e.TgZ(21,"div",14),e._uU(22," Manufacture Date: "),e.qZA(),e.TgZ(23,"div",15),e._uU(24),e.qZA(),e.qZA(),e.qZA(),e.TgZ(25,"mat-card",4),e.TgZ(26,"mat-card-title",17),e.TgZ(27,"span",35),e._uU(28),e.qZA(),e.qZA(),e.TgZ(29,"mat-card-content"),e.TgZ(30,"div",36),e.TgZ(31,"table",9),e.TgZ(32,"thead"),e.TgZ(33,"tr",10),e.TgZ(34,"th"),e._uU(35,"Ingredient Name"),e.qZA(),e.TgZ(36,"th"),e._uU(37,"Basis Of Strength"),e.qZA(),e.TgZ(38,"th"),e._uU(39,"Ingredient Type"),e.qZA(),e.TgZ(40,"th"),e._uU(41,"Ingredient Location"),e.qZA(),e.TgZ(42,"th"),e._uU(43,"Average"),e.qZA(),e.TgZ(44,"th"),e._uU(45,"Low"),e.qZA(),e.TgZ(46,"th"),e._uU(47,"High"),e.qZA(),e.TgZ(48,"th"),e._uU(49,"Unit"),e.qZA(),e.TgZ(50,"th"),e._uU(51,"Manufacture"),e.qZA(),e.TgZ(52,"th"),e._uU(53,"Lot No"),e.qZA(),e.TgZ(54,"th"),e._uU(55,"Grade"),e.qZA(),e.TgZ(56,"th"),e._uU(57,"Release Characteristics"),e.qZA(),e.TgZ(58,"th"),e._uU(59,"Notes"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(60,"tbody"),e.YNc(61,Lo,27,13,"tr",11),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(62,"br"),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(3),e.hij("Lot ",r+1,""),e.xp6(6),e.hij(" ",f.lotNo," "),e.xp6(5),e.hij(" ",f.lotSize," "),e.xp6(5),e.hij(" ",f.expiryDate," "),e.xp6(5),e.hij(" ",f.manufactureDate," "),e.xp6(4),e.hij(" Core/Internal Active Ingredients (",f.productIngredientList.length,") "),e.xp6(33),e.Q6J("ngForOf",f.productIngredientList)}}function qr(v,F){if(1&v&&(e.TgZ(0,"mat-tab",27),e.TgZ(1,"mat-card"),e.TgZ(2,"mat-card-content"),e.TgZ(3,"div",28),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"div",12),e.TgZ(7,"div",13),e.TgZ(8,"div",29),e._uU(9," Dosage Form: "),e.qZA(),e.TgZ(10,"div",30),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",31),e.TgZ(13,"div",32),e._uU(14," Amount: "),e.qZA(),e.TgZ(15,"div",33),e._uU(16),e.qZA(),e.qZA(),e.TgZ(17,"div",31),e.TgZ(18,"div",32),e._uU(19," Unit: "),e.qZA(),e.TgZ(20,"div",33),e._uU(21),e.qZA(),e.qZA(),e.qZA(),e.TgZ(22,"div",12),e.TgZ(23,"div",31),e.TgZ(24,"div",32),e._uU(25," Code: "),e.qZA(),e.TgZ(26,"div",33),e._uU(27),e.qZA(),e.qZA(),e.TgZ(28,"div",31),e.TgZ(29,"div",32),e._uU(30," Code Type: "),e.qZA(),e.TgZ(31,"div",33),e._uU(32),e.qZA(),e.qZA(),e.TgZ(33,"div",31),e.TgZ(34,"div",32),e._uU(35," Size: "),e.qZA(),e.TgZ(36,"div",33),e._uU(37),e.qZA(),e.qZA(),e.TgZ(38,"div",31),e.TgZ(39,"div",32),e._uU(40," Imprint Text: "),e.qZA(),e.TgZ(41,"div",33),e._uU(42),e.qZA(),e.qZA(),e.qZA(),e.TgZ(43,"div",12),e.TgZ(44,"div",31),e.TgZ(45,"div",32),e._uU(46," Color Name: "),e.qZA(),e.TgZ(47,"div",33),e._uU(48),e.qZA(),e.qZA(),e.TgZ(49,"div",31),e.TgZ(50,"div",32),e._uU(51," Flavor Name: "),e.qZA(),e.TgZ(52,"div",33),e._uU(53),e.qZA(),e.qZA(),e.TgZ(54,"div",31),e.TgZ(55,"div",32),e._uU(56," Shape Name: "),e.qZA(),e.TgZ(57,"div",33),e._uU(58),e.qZA(),e.qZA(),e.TgZ(59,"div",31),e.TgZ(60,"div",32),e._uU(61," Number of Fragments: "),e.qZA(),e.TgZ(62,"div",33),e._uU(63),e.qZA(),e.qZA(),e.qZA(),e.TgZ(64,"mat-card",4),e.TgZ(65,"mat-card-content"),e.YNc(66,yl,63,7,"div",11),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.MGl("label","Manufacture item ",r+1,""),e.xp6(4),e.hij(" Manufacture Item ",r+1," "),e.xp6(7),e.hij(" ",f.dosageForm," "),e.xp6(5),e.hij(" ",f.amount," "),e.xp6(5),e.hij(" ",f.unit," "),e.xp6(6),e.hij(" ",f.manufactureCode," "),e.xp6(5),e.hij(" ",f.manufactureCodeType," "),e.xp6(5),e.hij(" ",f.charSize," "),e.xp6(5),e.hij(" ",f.charImprintText," "),e.xp6(6),e.hij(" ",f.charColor," "),e.xp6(5),e.hij(" ",f.charFlavor," "),e.xp6(5),e.hij(" ",f.charShape," "),e.xp6(5),e.hij(" ",f.charNumFragments," "),e.xp6(3),e.Q6J("ngForOf",f.productLotList)}}function za(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e.TgZ(4,"div",5),e.TgZ(5,"div"),e._uU(6," Product Details \xa0\xa0\xa0\xa0 "),e.YNc(7,xa,2,3,"a",6),e.TgZ(8,"span"),e.YNc(9,Xa,1,0,"mat-icon",7),e.qZA(),e.qZA(),e.YNc(10,fr,15,10,"div",8),e.qZA(),e.qZA(),e.TgZ(11,"mat-card-content"),e.TgZ(12,"table",9),e.TgZ(13,"thead"),e.TgZ(14,"tr",10),e.TgZ(15,"th"),e._uU(16,"Full Product Name"),e.qZA(),e.TgZ(17,"th"),e._uU(18,"Product Type"),e.qZA(),e.TgZ(19,"th"),e._uU(20,"Term and Term Part"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"tbody"),e.YNc(22,Yr,8,3,"tr",11),e.YNc(23,Kr,3,0,"tr",1),e.qZA(),e.qZA(),e._UZ(24,"br"),e.TgZ(25,"div",12),e.TgZ(26,"div",13),e.TgZ(27,"div",14),e._uU(28," Non Proprietary Name/INN/USAN Name/Generic Name: "),e.qZA(),e.TgZ(29,"div",15),e._uU(30),e.qZA(),e.qZA(),e.TgZ(31,"div",13),e.TgZ(32,"div",14),e._uU(33," Proprietary Name/Invented Name: "),e.qZA(),e.TgZ(34,"div",15),e._uU(35),e.qZA(),e.qZA(),e.qZA(),e.TgZ(36,"div",12),e.TgZ(37,"div",13),e.TgZ(38,"div",14),e._uU(39," Dosage Form/Pharmacedical Dosage Form: "),e.qZA(),e.TgZ(40,"div",15),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",13),e.TgZ(43,"div",14),e._uU(44," Compose Product Name: "),e.qZA(),e.TgZ(45,"div",15),e._uU(46),e.qZA(),e.qZA(),e.qZA(),e.TgZ(47,"div",12),e.TgZ(48,"div",13),e.TgZ(49,"div",14),e._uU(50," Release Characteristic: "),e.qZA(),e.TgZ(51,"div",15),e._uU(52),e.qZA(),e.qZA(),e.TgZ(53,"div",13),e.TgZ(54,"div",14),e._uU(55," Strength Characteristic: "),e.qZA(),e.TgZ(56,"div",15),e._uU(57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(58,"div",12),e.TgZ(59,"div",13),e.TgZ(60,"div",14),e._uU(61," Country Code: "),e.qZA(),e.TgZ(62,"div",15),e._uU(63),e.qZA(),e.qZA(),e.TgZ(64,"div",13),e.TgZ(65,"div",14),e._uU(66," Language: "),e.qZA(),e.TgZ(67,"div",15),e._uU(68),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"div",12),e.TgZ(70,"div",13),e.TgZ(71,"div",14),e._uU(72," Product Type: "),e.qZA(),e.TgZ(73,"div",15),e._uU(74),e.qZA(),e.qZA(),e.TgZ(75,"div",13),e.TgZ(76,"div",14),e._uU(77," Public Domain: "),e.qZA(),e.TgZ(78,"div",15),e._uU(79),e.qZA(),e.qZA(),e.qZA(),e.TgZ(80,"div",12),e.TgZ(81,"div",13),e.TgZ(82,"div",14),e._uU(83," Source Type: "),e.qZA(),e.TgZ(84,"div",15),e._uU(85),e.qZA(),e.qZA(),e.TgZ(86,"div",13),e.TgZ(87,"div",14),e._uU(88," Source "),e.qZA(),e.TgZ(89,"div",15),e._uU(90),e.qZA(),e.qZA(),e.qZA(),e.TgZ(91,"div",12),e.TgZ(92,"div",13),e.TgZ(93,"div",14),e._uU(94," Unit of Presentation: "),e.qZA(),e.TgZ(95,"div",15),e._uU(96),e.qZA(),e.qZA(),e.TgZ(97,"div",13),e.TgZ(98,"div",14),e._uU(99," Route of Administration: "),e.qZA(),e.TgZ(100,"div",15),e._uU(101),e.qZA(),e.qZA(),e.qZA(),e.TgZ(102,"div",12),e.TgZ(103,"div",13),e.TgZ(104,"div",14),e._uU(105," Status: "),e.qZA(),e.TgZ(106,"div",15),e._uU(107),e.qZA(),e.qZA(),e.TgZ(108,"div",13),e.TgZ(109,"div",14),e._uU(110," Application Type Number: "),e.qZA(),e.TgZ(111,"div",15),e._uU(112),e.qZA(),e.qZA(),e.qZA(),e.TgZ(113,"div",12),e.TgZ(114,"div",13),e.TgZ(115,"div",14),e._uU(116," Product ID/Code:"),e._UZ(117,"br"),e._uU(118," Product Type: "),e.qZA(),e.TgZ(119,"div",15),e.YNc(120,mo,7,2,"div",11),e.qZA(),e.qZA(),e.TgZ(121,"div",13),e.TgZ(122,"div",14),e._uU(123," Provenance: "),e.qZA(),e.TgZ(124,"div",15),e._uU(125),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(126,"div",16),e.TgZ(127,"mat-card",4),e.TgZ(128,"mat-card-title",17),e._uU(129),e.qZA(),e.TgZ(130,"mat-card-content"),e.TgZ(131,"table",9),e.TgZ(132,"thead"),e.TgZ(133,"tr"),e.TgZ(134,"th"),e._uU(135,"#"),e.qZA(),e.TgZ(136,"th"),e._uU(137,"Company Name"),e.qZA(),e.TgZ(138,"th"),e._uU(139,"Company Address"),e.qZA(),e.TgZ(140,"th"),e._uU(141,"City"),e.qZA(),e.TgZ(142,"th"),e._uU(143,"State"),e.qZA(),e.TgZ(144,"th"),e._uU(145,"Zip"),e.qZA(),e.TgZ(146,"th"),e._uU(147,"Company Country"),e.qZA(),e.TgZ(148,"th"),e._uU(149,"Company Code"),e.qZA(),e.TgZ(150,"th"),e._uU(151,"Company Code Type"),e.qZA(),e.TgZ(152,"th"),e._uU(153,"Company Role"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(154,"tbody"),e.YNc(155,To,21,10,"tr",11),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(156,"br"),e._UZ(157,"br"),e.TgZ(158,"mat-card",4),e.TgZ(159,"mat-card-content",4),e.TgZ(160,"mat-tab-group"),e.YNc(161,qr,67,14,"mat-tab",18),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(7),e.Q6J("ngIf",f.isAdmin),e.xp6(2),e.Q6J("ngIf",f.isAdmin),e.xp6(1),e.Q6J("ngIf",f.product.id),e.xp6(12),e.Q6J("ngForOf",f.product.productNameList),e.xp6(1),e.Q6J("ngIf",f.product.productNameList.length<1),e.xp6(7),e.hij(" ",f.product.nonProprietaryName," "),e.xp6(5),e.hij(" ",f.product.proprietaryName," "),e.xp6(6),e.hij(" ",f.product.pharmacedicalDosageForm," "),e.xp6(5),e.hij(" ",f.product.composeProductName," "),e.xp6(6),e.hij(" ",f.product.releaseCharacteristic," "),e.xp6(5),e.hij(" ",f.product.strengthCharacteristic," "),e.xp6(6),e.hij(" ",f.product.countryCode," "),e.xp6(5),e.hij(" ",f.product.language," "),e.xp6(6),e.hij(" ",f.product.productType," "),e.xp6(5),e.hij(" ",f.product.publicDomain," "),e.xp6(6),e.hij(" ",f.product.sourceType," "),e.xp6(5),e.hij(" ",f.product.source," "),e.xp6(6),e.hij(" ",f.product.unitPresentation," "),e.xp6(5),e.hij(" ",f.product.routeAdmin," "),e.xp6(6),e.hij(" ",f.product.status," "),e.xp6(5),e.AsE(" ",f.product.appType,"\xa0",f.product.appNumber," "),e.xp6(8),e.Q6J("ngForOf",f.product.productCodeList),e.xp6(5),e.hij(" ",f.product.provenance," "),e.xp6(4),e.hij(" Company (",f.product.productCompanyList.length,") "),e.xp6(26),e.Q6J("ngForOf",f.product.productCompanyList),e.xp6(6),e.Q6J("ngForOf",f.product.productComponentList)}}var Ud=function(){var v=function(F){(0,da.Z)(r,F);var f=(0,Ea.Z)(r);function r(O,R,ee,Je,_t,Kt,Un,ai,Pi,ki){var ha;return(0,S.Z)(this,r),(ha=f.call(this,O,R,ee,Je,_t,Kt,Un,ai,ki)).productService=O,ha.authService=Pi,ha}return(0,t.Z)(r,[{key:"ngOnInit",value:function(){var R=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(ee){R.isAdmin=ee}),(0,Ra.Z)((0,sa.Z)(r.prototype),"ngOnInit",this).call(this)}},{key:"ngAfterViewInit",value:function(){}}]),r}(Tn);return v.\u0275fac=function(f){return new(f||v)(e.Y36(On.M),e.Y36(D.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F),e.Y36(Me.e),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-product-details"]],features:[e.qOj],decls:5,vars:2,consts:[["class","colororange padtop50px padleft50px",4,"ngIf"],[4,"ngIf"],[1,"colororange","padtop50px","padleft50px"],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"divflexrow"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink",4,"ngIf"],["class","small-icon","svgIcon","open_in_new","matTooltip","opens in new window",4,"ngIf"],["class","width60percent textalignright font11px",4,"ngIf"],[1,"blueTable"],["height","30px"],[4,"ngFor","ngForOf"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"details-container","margintop30px"],[1,"title2"],[3,"label",4,"ngFor","ngForOf"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink"],["svgIcon","edit"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],[1,"width60percent","textalignright","font11px"],[1,"colorgray"],[1,"colororange","font16px","fontbold"],["colspan","3"],[1,"font14px"],[3,"label"],[1,"title2","colorblue"],[1,"row-property-key-2"],[1,"row-property-value-2"],[1,"row-property-4"],[1,"row-property-key-4"],[1,"row-property-value-4"],[1,"colorgreen"],[1,"title3","colororange"],[1,"div-scroll"],["target","_blank",3,"routerLink"]],template:function(f,r){1&f&&(e.YNc(0,di,6,1,"div",0),e.YNc(1,za,162,27,"div",1),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br")),2&f&&(e.Q6J("ngIf",r.message),e.xp6(1),e.Q6J("ngIf",r.product&&r.product.id))},directives:[c.O5,o.a8,o.n5,u.yS,s.gM,T.Hw,o.dn,c.sg,b.SP,b.uX],pipes:[c.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;width:100%;max-width:100%}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.div-scroll[_ngcontent-%COMP%]{width:100%;overflow-x:scroll}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px var(--box-shadow-color-3)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:7px;font-size:12px;font-weight:600}.row-property-value[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:20%;max-width:20%;padding:6px;font-size:12px;font-weight:600}.row-property-value-2[_ngcontent-%COMP%]{min-width:80%;max-width:80%;padding:6px;font-size:12px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:25%}.row-property-key-4[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:6px;font-size:12px;font-weight:600}.row-property-value-4[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.marginbottom80px[_ngcontent-%COMP%]{margin-bottom:80px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font20px[_ngcontent-%COMP%]{font-size:20px}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.colororange[_ngcontent-%COMP%]{color:var(--orange-color)}.width45percent[_ngcontent-%COMP%]{width:45%}.width60percent[_ngcontent-%COMP%]{width:60%;max-width:60%}.width650px[_ngcontent-%COMP%]{width:650px;max-width:650px}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.textalignright[_ngcontent-%COMP%]{text-align:right}.backgroundblue[_ngcontent-%COMP%]{background-color:var(--regular-blue-color)}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid var(--secondary-blue-color);background-color:var(--table-bg-color);width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid var(--table-th-border-color);padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:var(--table-tr-even-bg-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--table-thead-bg-color);border-bottom:1px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:var(--table-th-color);border-left:1px solid var(--table-th-border-color-2);padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:var(--white-color);background:var(--table-th-border-color-2);border-top:2px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:var(--secondary-blue-color);color:var(--white-color);padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid var(--regular-red-color)}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px var(--box-shadow-color-3)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}}"]}),v}();function Zu(v,F){if(1&v&&(e.TgZ(0,"div",2),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._uU(5),e.qZA()),2&v){var f=e.oxw();e.xp6(5),e.hij(" ",f.message,"\n")}}function rl(v,F){if(1&v&&(e.ynx(0),e.TgZ(1,"a",14),e._uU(2),e.qZA(),e._uU(3," \xa0\xa0 "),e.TgZ(4,"a",14),e._UZ(5,"img",15),e.qZA(),e.BQk()),2&v){var f=e.oxw(2);e.xp6(1),e.s9C("href",f.dailyMedUrl,e.LSH),e.xp6(1),e.hij(" ",f.product.productNDC," "),e.xp6(2),e.s9C("href",f.dailyMedUrl,e.LSH),e.xp6(1),e.Q6J("src",f.iconSrcPath,e.LSH)}}function Fo(v,F){1&v&&(e.TgZ(0,"span"),e._uU(1,"|"),e.qZA())}function zc(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Fo,2,0,"span",1),e._uU(2),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(1),e.Q6J("ngIf",r>0),e.xp6(1),e.hij("",f.routeName," ")}}function Gc(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,zc,3,2,"div",16),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",f.product.prodRouteElistList)}}function Bl(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e._uU(18),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Oqu(f.firmName),e.xp6(2),e.Oqu(f.dunsNumber),e.xp6(2),e.Oqu(f.feiNumber),e.xp6(2),e.Oqu(f.address),e.xp6(2),e.Oqu(f.city),e.xp6(2),e.Oqu(f.state),e.xp6(2),e.Oqu(f.zip),e.xp6(2),e.Oqu(f.country),e.xp6(2),e.Oqu(f.countryCode)}}function Kc(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",11),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title",12),e._uU(4," Product Labeler Details "),e.qZA(),e.TgZ(5,"mat-card-content"),e.TgZ(6,"table",17),e.TgZ(7,"thead"),e.TgZ(8,"tr"),e.TgZ(9,"th"),e._uU(10,"Firm Name"),e.qZA(),e.TgZ(11,"th"),e._uU(12,"DUNS Number"),e.qZA(),e.TgZ(13,"th"),e._uU(14,"FEI Number"),e.qZA(),e.TgZ(15,"th"),e._uU(16,"Address"),e.qZA(),e.TgZ(17,"th"),e._uU(18,"City"),e.qZA(),e.TgZ(19,"th"),e._uU(20,"State"),e.qZA(),e.TgZ(21,"th"),e._uU(22,"Zip"),e.qZA(),e.TgZ(23,"th"),e._uU(24,"Country"),e.qZA(),e.TgZ(25,"th"),e._uU(26,"Country Code"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(27,"tbody"),e.YNc(28,Bl,19,9,"tr",16),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(28),e.Q6J("ngForOf",f.product.prodEstablishmentElistList)}}var ku=function(F){return["/substances",F]};function ss(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,ku,f._substanceUuid)),e.xp6(1),e.Oqu(f.name)}}function bl(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(2).$implicit;e.hij(" ",f.name," ")}}function Yl(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,ss,3,4,"div",20),e.YNc(2,bl,1,1,"ng-template",null,21,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",r._substanceUuid)("ngIfElse",f)}}function ql(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"img",23),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",f._substanceUuid)}}function pc(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" in ",f.originalDenominatorNumber," ")}}function fc(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.originalDenominatorUnit," ")}}function Ao(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Yl,4,2,"div",1),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td",19),e.YNc(8,ql,2,1,"div",1),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.YNc(13,pc,2,1,"span",1),e.YNc(14,fc,2,1,"span",1),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Q6J("ngIf",f.name),e.xp6(2),e.hij("",f.activeMoietyName," "),e.xp6(2),e.Q6J("ngIf",f._substanceUuid),e.xp6(2),e.Oqu(f.unii),e.xp6(2),e.AsE(" ",f.originalNumeratorNumber," ",f.originalNumeratorUnit," "),e.xp6(1),e.Q6J("ngIf",f.originalDenominatorNumber),e.xp6(1),e.Q6J("ngIf",f.originalDenominatorUnit&&"1"!==f.originalDenominatorUnit)}}function Iu(v,F){if(1&v&&(e.TgZ(0,"mat-card-content"),e.TgZ(1,"table",18),e.TgZ(2,"thead"),e.TgZ(3,"tr"),e.TgZ(4,"th"),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th"),e._uU(7,"Name"),e.qZA(),e.TgZ(8,"th"),e._uU(9,"Active Moiety Name"),e.qZA(),e.TgZ(10,"th"),e._uU(11,"Structure"),e.qZA(),e.TgZ(12,"th"),e._uU(13,"Unii"),e.qZA(),e.TgZ(14,"th"),e._uU(15,"Strength Number (Unit)"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"tbody"),e.YNc(17,Ao,15,9,"tr",16),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(17),e.Q6J("ngForOf",f.product.prodActiveElistList)}}function ol(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,ku,f._substanceUuid)),e.xp6(1),e.Oqu(f.name)}}function Dr(v,F){if(1&v&&e._uU(0),2&v){var f=e.oxw(2).$implicit;e.hij(" ",f.name," ")}}function Bd(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,ol,3,4,"div",20),e.YNc(2,Dr,1,1,"ng-template",null,24,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",r._substanceUuid)("ngIfElse",f)}}function cf(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Bd,4,2,"div",1),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Q6J("ngIf",f.name),e.xp6(2),e.Oqu(f.unii),e.xp6(2),e.AsE("",f.strengthNumber," ",f.strengthNumeratorUnit,"")}}function Hl(v,F){if(1&v&&(e.TgZ(0,"mat-card-content"),e.TgZ(1,"table",18),e.TgZ(2,"thead"),e.TgZ(3,"tr"),e.TgZ(4,"th"),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th"),e._uU(7,"Name"),e.qZA(),e.TgZ(8,"th"),e._uU(9,"Unii"),e.qZA(),e.TgZ(10,"th"),e._uU(11,"Strength Number (Unit)"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,cf,9,5,"tr",16),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(13),e.Q6J("ngForOf",f.product.prodInactiveElistList)}}function Ci(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e._uU(4," Product Details\xa0"),e.TgZ(5,"span",5),e._uU(6,"(SPL)"),e.qZA(),e.qZA(),e.TgZ(7,"mat-card-content"),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e._uU(11," Product NDC: "),e.qZA(),e.TgZ(12,"div",9),e.YNc(13,rl,6,4,"ng-container",1),e.qZA(),e.qZA(),e.TgZ(14,"div",7),e.TgZ(15,"div",8),e._uU(16," Application Number: "),e.qZA(),e.TgZ(17,"div",9),e._uU(18),e.qZA(),e.qZA(),e.qZA(),e.TgZ(19,"div",6),e.TgZ(20,"div",7),e.TgZ(21,"div",8),e._uU(22," Product Name: "),e.qZA(),e.TgZ(23,"div",9),e.TgZ(24,"span",10),e._uU(25),e.qZA(),e.qZA(),e.qZA(),e.TgZ(26,"div",7),e.TgZ(27,"div",8),e._uU(28," Product Type: "),e.qZA(),e.TgZ(29,"div",9),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",6),e.TgZ(32,"div",7),e.TgZ(33,"div",8),e._uU(34," Non Proprietary Name: "),e.qZA(),e.TgZ(35,"div",9),e._uU(36),e.qZA(),e.qZA(),e.TgZ(37,"div",7),e.TgZ(38,"div",8),e._uU(39," Proprietary Name Suffix: "),e.qZA(),e.TgZ(40,"div",9),e._uU(41),e.qZA(),e.qZA(),e.qZA(),e.TgZ(42,"div",6),e.TgZ(43,"div",7),e.TgZ(44,"div",8),e._uU(45," Labeler Name: "),e.qZA(),e.TgZ(46,"div",9),e._uU(47),e.qZA(),e.qZA(),e.TgZ(48,"div",7),e.TgZ(49,"div",8),e._uU(50," Dosage Form Name: "),e.qZA(),e.TgZ(51,"div",9),e._uU(52),e.qZA(),e.qZA(),e.qZA(),e.TgZ(53,"div",6),e.TgZ(54,"div",7),e.TgZ(55,"div",8),e._uU(56," Marketing Status: "),e.qZA(),e.TgZ(57,"div",9),e._uU(58),e.qZA(),e.qZA(),e.TgZ(59,"div",7),e.TgZ(60,"div",8),e._uU(61," Marketing Category Code: "),e.qZA(),e.TgZ(62,"div",9),e._uU(63),e.qZA(),e.qZA(),e.qZA(),e.TgZ(64,"div",6),e.TgZ(65,"div",7),e.TgZ(66,"div",8),e._uU(67," Marketing Category Name: "),e.qZA(),e.TgZ(68,"div",9),e._uU(69),e.qZA(),e.qZA(),e.TgZ(70,"div",7),e.TgZ(71,"div",8),e._uU(72," Start Marketing Date: "),e.qZA(),e.TgZ(73,"div",9),e._uU(74),e.ALo(75,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(76,"div",6),e.TgZ(77,"div",7),e.TgZ(78,"div",8),e._uU(79," Route Name: "),e.qZA(),e.TgZ(80,"div",9),e.YNc(81,Gc,2,1,"div",1),e.qZA(),e.qZA(),e.TgZ(82,"div",7),e.TgZ(83,"div",8),e._uU(84," End Marketing Date: "),e.qZA(),e.TgZ(85,"div",9),e._uU(86),e.ALo(87,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(88,"div",6),e.TgZ(89,"div",7),e.TgZ(90,"div",8),e._uU(91," Color: "),e.qZA(),e.TgZ(92,"div",9),e._uU(93),e.qZA(),e.qZA(),e.TgZ(94,"div",7),e.TgZ(95,"div",8),e._uU(96," Flavor: "),e.qZA(),e.TgZ(97,"div",9),e._uU(98),e.qZA(),e.qZA(),e.qZA(),e.TgZ(99,"div",6),e.TgZ(100,"div",7),e.TgZ(101,"div",8),e._uU(102," Shape: "),e.qZA(),e.TgZ(103,"div",9),e._uU(104),e.qZA(),e.qZA(),e.TgZ(105,"div",7),e.TgZ(106,"div",8),e._uU(107," Imprint Text: "),e.qZA(),e.TgZ(108,"div",9),e._uU(109),e.qZA(),e.qZA(),e.qZA(),e.TgZ(110,"div",6),e.TgZ(111,"div",7),e.TgZ(112,"div",8),e._uU(113," Size (mm): "),e.qZA(),e.TgZ(114,"div",9),e._uU(115),e.qZA(),e.qZA(),e.TgZ(116,"div",7),e.TgZ(117,"div",8),e._uU(118," Number of Fragments: "),e.qZA(),e.TgZ(119,"div",9),e._uU(120),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(121,Kc,29,1,"div",1),e.TgZ(122,"div",11),e.TgZ(123,"mat-card",4),e.TgZ(124,"mat-card-title",12),e._uU(125),e.qZA(),e.YNc(126,Iu,18,1,"mat-card-content",1),e.qZA(),e.qZA(),e.TgZ(127,"div",11),e.TgZ(128,"mat-card",13),e.TgZ(129,"mat-card-title",12),e._uU(130),e.qZA(),e.YNc(131,Hl,14,1,"mat-card-content",1),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(13),e.Q6J("ngIf",null!==f.product.productNDC),e.xp6(5),e.hij(" ",f.product.applicationNumber," "),e.xp6(7),e.Oqu(f.product.productName),e.xp6(5),e.hij(" ",f.product.productTypeName," "),e.xp6(6),e.hij(" ",f.product.nonProprietaryName," "),e.xp6(5),e.hij(" ",f.product.proprietaryNameSuffix," "),e.xp6(6),e.hij(" ",f.product.labelerName," "),e.xp6(5),e.hij(" ",f.product.dosageFormName," "),e.xp6(6),e.hij(" ",f.product.marketingStatus," "),e.xp6(5),e.hij(" ",f.product.marketingCategoryCode," "),e.xp6(6),e.hij(" ",f.product.marketingCategoryName," "),e.xp6(5),e.hij(" ",e.xi3(75,25,f.product.startMarketingDate,"MM/dd/yyyy")," "),e.xp6(7),e.Q6J("ngIf",f.product.prodRouteElistList.length>0),e.xp6(5),e.hij(" ",e.xi3(87,28,f.product.endMarketingDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",f.product.prodCharElist.colorName," "),e.xp6(5),e.hij(" ",f.product.prodCharElist.flavorName," "),e.xp6(6),e.hij(" ",f.product.prodCharElist.shapeName," "),e.xp6(5),e.hij(" ",f.product.prodCharElist.imprintText," "),e.xp6(6),e.hij(" ",f.product.prodCharElist.sizeMm," "),e.xp6(5),e.hij(" ",f.product.prodCharElist.numberOfFragments," "),e.xp6(1),e.Q6J("ngIf",f.product.prodEstablishmentElistList.length>0),e.xp6(4),e.hij(" Active Ingredient (",f.product.prodActiveElistList.length,") "),e.xp6(1),e.Q6J("ngIf",f.product.prodActiveElistList.length>0),e.xp6(4),e.hij(" Inactive Ingredient\xa0(",f.product.prodInactiveElistList.length,") "),e.xp6(1),e.Q6J("ngIf",f.product.prodInactiveElistList.length>0)}}var df=function(){var v=function(F){(0,da.Z)(r,F);var f=(0,Ea.Z)(r);function r(O,R,ee,Je,_t,Kt,Un,ai,Pi,ki){var ha;return(0,S.Z)(this,r),(ha=f.call(this,O,R,ee,Je,_t,Kt,Un,ai,ki)).configService=Pi,ha.dailyMedUrl="",ha.showSpinner=!1,ha}return(0,t.Z)(r,[{key:"ngOnInit",value:function(){this.productId=this.activatedRoute.snapshot.params.id,this.getProduct(),this.iconSrcPath="".concat(this.configService.environment.baseHref||"","assets/icons/fda/icon_dailymed.png")}},{key:"ngAfterViewInit",value:function(){}},{key:"getProduct",value:function(){var R=this;this.loadingService.setLoading(!0),this.productService.getProductElist(this.productId).subscribe(function(ee){R.product=ee,ee&&(R.titleService.setTitle("Product "+R.product.productNDC),R.getSubstanceByApprovalID(),R.dailyMedUrl="https://dailymed.nlm.nih.gov/dailymed/search.cfm?labeltype=all&query="+R.product.productNDC)},function(ee){R.message="No Product record found"}),this.loadingService.setLoading(!1)}},{key:"getSubstanceByApprovalID",value:function(){var R=this;null!=this.product&&(this.product.prodActiveElistList.length>0&&(this.product.prodActiveElistList.sort(function(ee,Je){return ee.name0&&(this.product.prodInactiveElistList.sort(function(ee,Je){return ee.name0),e.xp6(3),e.Q6J("disabled",r.isLoading||!1===r.validationResult),e.xp6(1),e.hij("",r.validationMessages&&r.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function hc(v,F){if(1&v&&(e.TgZ(0,"div",38),e._UZ(1,"br"),e.TgZ(2,"div",38),e.TgZ(3,"span",39),e._uU(4,"Created By:"),e.qZA(),e._uU(5),e.TgZ(6,"span",39),e._uU(7,"Create Date:"),e.qZA(),e._uU(8),e.ALo(9,"date"),e.TgZ(10,"span",39),e._uU(11,"Modified By:"),e.qZA(),e._uU(12),e.TgZ(13,"span",39),e._uU(14,"Modify Date:"),e.qZA(),e._uU(15),e.ALo(16,"date"),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(5),e.hij(" ",f.product.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(9,4,f.product.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",f.product.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(16,7,f.product.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Vd(v,F){1&v&&e._UZ(0,"hr")}function Ts(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",78),e.NdJ("click",function(){return e.CHM(f),e.oxw(4).addNewProductName()}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function $c(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",79),e.TgZ(1,"div",49),e.TgZ(2,"mat-form-field",44),e.TgZ(3,"input",80),e.NdJ("ngModelChange",function(R){return e.CHM(f).$implicit.productTerm=R}),e.qZA(),e.qZA(),e.TgZ(4,"app-cv-input",81),e.NdJ("valueChange",function(R){return e.CHM(f).$implicit.productTermPart=R}),e.qZA(),e.TgZ(5,"span",73),e._uU(6," \xa0 "),e.qZA(),e.TgZ(7,"button",82),e.NdJ("click",function(){var ee=e.CHM(f).index,Je=e.oxw().index;return e.oxw(3).confirmDeleteTermAndTermPart(Je,ee)}),e.TgZ(8,"mat-icon"),e._uU(9,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(3),e.Q6J("ngModel",r.productTerm),e.xp6(1),e.Q6J("model",r.productTermPart)}}function Ml(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",70),e.YNc(1,Vd,1,0,"hr",5),e.TgZ(2,"div",49),e.TgZ(3,"mat-form-field",44),e.TgZ(4,"input",71),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.productName=Je}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",72),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.productNameType=Je}),e.qZA(),e.TgZ(6,"span",73),e.YNc(7,Ts,3,0,"button",74),e.qZA(),e.TgZ(8,"button",75),e.NdJ("click",function(){var _t=e.CHM(f).index;return e.oxw(3).confirmDeleteProductName(_t)}),e.TgZ(9,"mat-icon"),e._uU(10,"delete_forever"),e.qZA(),e.qZA(),e.TgZ(11,"button",76),e.NdJ("click",function(){var _t=e.CHM(f).index;return e.oxw(3).addNewTermAndTermPart(_t)}),e._uU(12," Add Term and Term Part "),e.qZA(),e.qZA(),e.YNc(13,$c,10,2,"div",77),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw(3);e.xp6(1),e.Q6J("ngIf",O>0),e.xp6(3),e.Q6J("ngModel",r.productName),e.xp6(1),e.Q6J("model",r.productNameType),e.xp6(2),e.Q6J("ngIf",0==O),e.xp6(1),e.Q6J("disabled",1==R.product.productNameList.length),e.xp6(1),e.ekj("disabled",1==R.product.productNameList.length),e.xp6(4),e.Q6J("ngForOf",r.productTermAndTermPartList)}}function ho(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",90),e.NdJ("click",function(){return e.CHM(f),e.oxw(4).addNewProductCode()}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function No(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",70),e.TgZ(1,"div",83),e.TgZ(2,"div",49),e.TgZ(3,"mat-form-field",84),e.TgZ(4,"input",85),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.productCode=Je}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",86),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.productCodeType=Je}),e.qZA(),e.qZA(),e.TgZ(6,"span",87),e.YNc(7,ho,3,0,"button",88),e.qZA(),e.TgZ(8,"button",89),e.NdJ("click",function(){var _t=e.CHM(f).index;return e.oxw(3).confirmDeleteProductCode(_t)}),e.TgZ(9,"mat-icon"),e._uU(10,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw(3);e.xp6(4),e.Q6J("ngModel",r.productCode),e.xp6(1),e.Q6J("model",r.productCodeType),e.xp6(2),e.Q6J("ngIf",0==O),e.xp6(1),e.Q6J("disabled",1==R.product.productCodeList.length),e.xp6(1),e.ekj("disabled",1==R.product.productCodeList.length)}}function Lu(v,F){1&v&&e._UZ(0,"hr")}function _o(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",104),e.NdJ("click",function(){return e.CHM(f),e.oxw(4).addNewProductCompany()}),e.TgZ(1,"mat-icon"),e._uU(2,"add_circle_outline"),e.qZA(),e.qZA()}}function Fu(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",70),e.YNc(1,Lu,1,0,"hr",5),e.TgZ(2,"div",49),e.TgZ(3,"mat-form-field",91),e.TgZ(4,"input",92),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.companyName=Je}),e.qZA(),e.qZA(),e.TgZ(5,"mat-form-field",91),e.TgZ(6,"input",93),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.companyAddress=Je}),e.qZA(),e.qZA(),e.TgZ(7,"mat-form-field",91),e.TgZ(8,"input",94),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.companyCity=Je}),e.qZA(),e.qZA(),e.TgZ(9,"mat-form-field",91),e.TgZ(10,"input",95),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.companyState=Je}),e.qZA(),e.qZA(),e.TgZ(11,"mat-form-field",91),e.TgZ(12,"input",96),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.companyZip=Je}),e.qZA(),e.qZA(),e.TgZ(13,"app-cv-input",97),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.companyCountry=Je}),e.qZA(),e.qZA(),e.TgZ(14,"div",83),e.TgZ(15,"div",49),e.TgZ(16,"app-cv-input",98),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.companyRole=Je}),e.qZA(),e.TgZ(17,"mat-form-field",99),e.TgZ(18,"input",100),e.NdJ("ngModelChange",function(Je){return e.CHM(f).$implicit.companyCode=Je}),e.qZA(),e.qZA(),e.TgZ(19,"app-cv-input",101),e.NdJ("valueChange",function(Je){return e.CHM(f).$implicit.companyCodeType=Je}),e.qZA(),e.qZA(),e.TgZ(20,"span",87),e.YNc(21,_o,3,0,"button",102),e.qZA(),e.TgZ(22,"button",103),e.NdJ("click",function(){var _t=e.CHM(f).index;return e.oxw(3).confirmDeleteProductCompany(_t)}),e.TgZ(23,"mat-icon"),e._uU(24,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw(3);e.xp6(1),e.Q6J("ngIf",O>0),e.xp6(3),e.Q6J("ngModel",r.companyName),e.xp6(2),e.Q6J("ngModel",r.companyAddress),e.xp6(2),e.Q6J("ngModel",r.companyCity),e.xp6(2),e.Q6J("ngModel",r.companyState),e.xp6(2),e.Q6J("ngModel",r.companyZip),e.xp6(1),e.Q6J("model",r.companyCountry),e.xp6(3),e.Q6J("model",r.companyRole),e.xp6(2),e.Q6J("ngModel",r.companyCode),e.xp6(1),e.Q6J("model",r.companyCodeType),e.xp6(2),e.Q6J("ngIf",0==O),e.xp6(1),e.Q6J("disabled",1==R.product.productCompanyList.length),e.xp6(1),e.ekj("disabled",1==R.product.productCompanyList.length)}}function Rs(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",70),e.TgZ(1,"app-product-component-form",105),e.NdJ("expiryDateMessageOut",function(Je){return e.CHM(f),e.oxw(3).expiryDateMessageOutChange(Je)})("manufactureDateMessageOut",function(Je){return e.CHM(f),e.oxw(3).manufactureDateMessageOutChange(Je)}),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw(3);e.xp6(1),e.Q6J("productComponent",r)("totalComponent",R.product.productComponentList.length)("prodComponentIndex",O)}}function Xc(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-card",40),e.TgZ(1,"mat-card-content"),e.TgZ(2,"div",41),e.YNc(3,Ml,14,8,"div",42),e.qZA(),e._UZ(4,"br"),e.TgZ(5,"div"),e.TgZ(6,"div",43),e.TgZ(7,"mat-form-field",44),e.TgZ(8,"input",45),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).product.nonProprietaryName=R}),e.qZA(),e.qZA(),e.TgZ(9,"mat-form-field",46),e.TgZ(10,"input",47),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).product.proprietaryName=R}),e.qZA(),e.qZA(),e.TgZ(11,"mat-form-field",46),e.TgZ(12,"input",48),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).product.composeProductName=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(13,"div",49),e.TgZ(14,"app-cv-input",50),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.pharmacedicalDosageForm=R}),e.qZA(),e.TgZ(15,"app-cv-input",51),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.releaseCharacteristic=R}),e.qZA(),e.TgZ(16,"mat-form-field",46),e.TgZ(17,"input",52),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).product.strengthCharacteristic=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",49),e.TgZ(19,"app-cv-input",53),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.status=R}),e.qZA(),e.TgZ(20,"app-cv-input",54),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.routeAdmin=R}),e.qZA(),e.TgZ(21,"app-cv-input",55),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.unitPresentation=R}),e.qZA(),e.TgZ(22,"app-cv-input",56),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.publicDomain=R}),e.qZA(),e.qZA(),e.TgZ(23,"div",49),e.TgZ(24,"mat-form-field",46),e.TgZ(25,"input",57),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).product.appNumber=R}),e.qZA(),e.qZA(),e.TgZ(26,"app-cv-input",58),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.appType=R}),e.qZA(),e.TgZ(27,"mat-form-field",46),e.TgZ(28,"input",59),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).product.source=R}),e.qZA(),e.qZA(),e.TgZ(29,"app-cv-input",60),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.sourceType=R}),e.qZA(),e.qZA(),e.TgZ(30,"div",49),e.TgZ(31,"app-cv-input",61),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.productType=R}),e.qZA(),e.TgZ(32,"app-cv-input",62),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.provenance=R}),e.qZA(),e.TgZ(33,"app-cv-input",63),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.countryCode=R}),e.qZA(),e.TgZ(34,"app-cv-input",64),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).product.language=R}),e.qZA(),e.qZA(),e.YNc(35,No,11,6,"div",42),e.TgZ(36,"div",65),e.YNc(37,Fu,25,14,"div",42),e.qZA(),e.TgZ(38,"div",33),e._UZ(39,"br"),e._UZ(40,"hr"),e._UZ(41,"br"),e.TgZ(42,"span",66),e.TgZ(43,"span",67),e._uU(44,"MANUFACTURE ITEM "),e.qZA(),e.qZA(),e._uU(45," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(46,"button",68),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).addNewProductComponent()}),e._UZ(47,"mat-icon",69),e._uU(48,"Add Manufacture Item "),e.qZA(),e._UZ(49,"br"),e._UZ(50,"br"),e.YNc(51,Rs,2,3,"div",42),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(3),e.Q6J("ngForOf",r.product.productNameList),e.xp6(5),e.Q6J("ngModel",r.product.nonProprietaryName),e.xp6(2),e.Q6J("ngModel",r.product.proprietaryName),e.xp6(2),e.Q6J("ngModel",r.product.composeProductName),e.xp6(2),e.Q6J("model",r.product.pharmacedicalDosageForm),e.xp6(1),e.Q6J("model",r.product.releaseCharacteristic),e.xp6(2),e.Q6J("ngModel",r.product.strengthCharacteristic),e.xp6(2),e.Q6J("model",r.product.status),e.xp6(1),e.Q6J("model",r.product.routeAdmin),e.xp6(1),e.Q6J("model",r.product.unitPresentation),e.xp6(1),e.Q6J("model",r.product.publicDomain),e.xp6(3),e.Q6J("ngModel",r.product.appNumber),e.xp6(1),e.Q6J("model",r.product.appType),e.xp6(2),e.Q6J("ngModel",r.product.source),e.xp6(1),e.Q6J("model",r.product.sourceType),e.xp6(2),e.Q6J("model",r.product.productType),e.xp6(1),e.Q6J("model",r.product.provenance),e.xp6(1),e.Q6J("model",r.product.countryCode),e.xp6(1),e.Q6J("model",r.product.language),e.xp6(1),e.Q6J("ngForOf",r.product.productCodeList),e.xp6(2),e.Q6J("ngForOf",r.product.productCompanyList),e.xp6(5),e.s9C("matBadge",r.product.productComponentList.length),e.xp6(9),e.Q6J("ngForOf",r.product.productComponentList)}}function jd(v,F){if(1&v&&(e.TgZ(0,"div",33),e.TgZ(1,"div",34),e.TgZ(2,"div",35),e._uU(3),e.qZA(),e.YNc(4,hc,17,10,"div",36),e.qZA(),e.YNc(5,Xc,52,23,"mat-card",37),e._UZ(6,"br"),e._UZ(7,"br"),e._UZ(8,"br"),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.hij(" ",f.title," "),e.xp6(1),e.Q6J("ngIf",f.product.id),e.xp6(1),e.Q6J("ngIf",f.product)}}var Nu=function(){return["/home"]},Jd=function(F,f){return{"submission-messages":!0,collapsed:F,expanded:f}},Ru=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki){(0,S.Z)(this,F),this.productService=f,this.authService=r,this.loadingService=O,this.mainNotificationService=R,this.gaService=ee,this.utilsService=Je,this.cvService=_t,this.activatedRoute=Kt,this.router=Un,this.overlayContainerService=ai,this.dialog=Pi,this.titleService=ki,this.isLoading=!0,this.showSubmissionMessages=!1,this.validationMessages=[],this.validationResult=!1,this.subscriptions=[],this.isDisableData=!1,this.username=null,this.title=null,this.isAdmin=!1,this.expiryDateMessage="",this.manufactureDateMessage="",this.viewProductUrl="",this.message=""}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.isAdmin=this.authService.hasRoles("admin"),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.username=this.authService.getUser();var O=this.activatedRoute.params.subscribe(function(R){if(R.id){var ee=R.id;r.title="Update Product",ee!==r.id&&(r.id=ee,r.gaService.sendPageView("Product Edit"),r.getProductDetails())}else r.title="Register New Product",setTimeout(function(){r.gaService.sendPageView("Product Register"),r.titleService.setTitle("Register Product"),r.productService.loadProduct(),r.product=r.productService.product,r.loadingService.setLoading(!1),r.isLoading=!1})});this.subscriptions.push(O)}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"getProductDetails",value:function(r){var O=this;if(null!=this.id){var R=this.id.toString();this.productService.getProduct(R).subscribe(function(ee){if(ee){O.productService.loadProduct(ee),O.product=O.productService.product,0==O.product.productCodeList.length&&(O.product.productCodeList=[{}]);var Je="";if(O.product.productCodeList.length>0){var Kt,_t=(0,Wo.Z)(O.product.productCodeList);try{for(_t.s();!(Kt=_t.n()).done;){var Un=Kt.value;if(Un&&Un.productCode){Je=Un.productCode;break}}}catch(ai){_t.e(ai)}finally{_t.f()}}O.titleService.setTitle("Edit Product "+Je)}else O.handleProductRetrivalError();O.loadingService.setLoading(!1),O.isLoading=!1},function(ee){O.message="No Product Record found for Id "+O.id,O.gaService.sendException("getProductDetails: error from API call"),O.loadingService.setLoading(!1),O.isLoading=!1,O.handleProductRetrivalError()})}}},{key:"validate",value:function(r){var O=this;this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.validateClient(),0===this.validationMessages.length&&(this.showSubmissionMessages=!1,this.productService.validateProduct().pipe((0,ve.q)(1)).subscribe(function(R){O.submissionMessage=null,O.validationMessages=R.validationMessages.filter(function(ee){return"ERROR"===ee.messageType.toUpperCase()||"WARNING"===ee.messageType.toUpperCase()}),O.validationResult=R.valid,O.showSubmissionMessages=!0,O.loadingService.setLoading(!1),O.isLoading=!1,0===O.validationMessages.length&&!0===R.valid&&(O.submissionMessage="Product is Valid. Would you like to submit?")},function(R){O.addServerError(R),O.loadingService.setLoading(!1),O.isLoading=!1}))}},{key:"setValidationMessage",value:function(r){var O={};O.message=r,O.messageType="ERROR",this.validationMessages.push(O),this.validationResult=!1}},{key:"validateClient",value:function(){var r=this;this.submissionMessage=null,this.validationMessages=[],this.validationResult=!0,null!==this.expiryDateMessage&&this.expiryDateMessage.length>0&&this.setValidationMessage(this.expiryDateMessage),null!==this.manufactureDateMessage&&this.manufactureDateMessage.length>0&&this.setValidationMessage(this.manufactureDateMessage),null!=this.product&&this.product.productComponentList.forEach(function(O){null!=O&&O.productLotList.forEach(function(R){null!=R&&R.productIngredientList.forEach(function(ee){null!=ee&&(ee.average&&!1===r.isNumber(ee.average)&&r.setValidationMessage("Average must be a number"),ee.low&&!1===r.isNumber(ee.low)&&r.setValidationMessage("Low must be a number"),ee.high&&!1===r.isNumber(ee.high)&&r.setValidationMessage("High must be a number"),ee.$$ingredientNameValidation&&r.setValidationMessage(ee.$$ingredientNameValidation),ee.$$basisOfStrengthValidation&&r.setValidationMessage(ee.$$basisOfStrengthValidation))})})}),this.validationMessages.length>0&&(this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1)}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"addServerError",value:function(r){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var O={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};r&&r.error&&r.error.message?O.message="Server Error "+(r.status+": "||0)+r.error.message:r&&r.error&&"string"==typeof r.error?O.message="Server Error "+(r.status+": "||0)+r.error:r&&r.message&&(O.message="Server Error "+(r.status+": "||0)+r.message),this.validationMessages=[O],this.showSubmissionMessages=!0}},{key:"submit",value:function(){var r=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.product=this.cleanProduct(),this.productService.saveProduct().subscribe(function(O){r.loadingService.setLoading(!1),r.isLoading=!1,r.validationMessages=null,r.submissionMessage="Product was saved successfully!",r.showSubmissionMessages=!0,r.validationResult=!1,setTimeout(function(){if(r.showSubmissionMessages=!1,r.submissionMessage="",O.id){r.productService.bypassUpdateCheck();var R=O.id;r.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},r.router.onSameUrlNavigation="reload",r.router.navigate(["/product",R,"edit"])}},4e3)})}},{key:"handleProductRetrivalError",value:function(){var r=this;this.mainNotificationService.setNotification({message:"The product you're trying to edit doesn't exist.",type:vn.k.error,milisecondsToShow:4e3}),setTimeout(function(){r.router.navigate(["/product/register"]),r.productService.loadProduct()},5e3)}},{key:"cleanProduct",value:function(){var r=JSON.stringify(this.product),O=JSON.parse(r);return O.productComponentList.forEach(function(R){null!=R&&R.productLotList.forEach(function(ee){null!=ee&&ee.productIngredientList.forEach(function(Je){null!=Je&&((Je.$$ingredientNameValidation||""===Je.$$ingredientNameValidation)&&delete Je.$$ingredientNameValidation,(Je.$$basisOfStrengthValidation||""===Je.$$basisOfStrengthValidation)&&delete Je.$$basisOfStrengthValidation)})})}),O}},{key:"showJSON",value:function(){var O=this.dialog.open(Os,{width:"90%",height:"90%",data:this.product}).afterClosed().subscribe(function(R){});this.subscriptions.push(O)}},{key:"confirmDeleteProduct",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete this Product?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteProduct(r)})}},{key:"deleteProduct",value:function(r){var O=this;this.productService.deleteProduct(r).subscribe(function(R){O.productService.bypassUpdateCheck(),O.displayMessageAfterDeleteProd()},function(R){console.log(R)})}},{key:"displayMessageAfterDeleteProd",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"This product record was deleted successfully",type:"home"}}).afterClosed().subscribe(function(R){r.router.navigate(["/home"])})}},{key:"addNewProductName",value:function(){this.productService.addNewProductName()}},{key:"confirmDeleteProductName",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Product Name "+(r+1)+" ?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteProductName(r)})}},{key:"deleteProductName",value:function(r){this.productService.deleteProductName(r)}},{key:"addNewTermAndTermPart",value:function(r){this.productService.addNewTermAndTermPart(r)}},{key:"confirmDeleteTermAndTermPart",value:function(r,O){var R=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Term and Term Part "+(O+1)+" ?"}}).afterClosed().subscribe(function(Je){Je&&!0===Je&&R.deleteTermAndTermPart(r,O)})}},{key:"deleteTermAndTermPart",value:function(r,O){this.productService.deleteTermAndTermPart(r,O)}},{key:"addNewProductCode",value:function(){this.productService.addNewProductCode()}},{key:"confirmDeleteProductCode",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Product Code "+(r+1)+" ?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteProductCode(r)})}},{key:"deleteProductCode",value:function(r){this.productService.deleteProductCode(r)}},{key:"addNewProductCompany",value:function(){this.productService.addNewProductCompany()}},{key:"confirmDeleteProductCompany",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Product Company "+(r+1)+" ?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteProductCompany(r)})}},{key:"deleteProductCompany",value:function(r){this.productService.deleteProductCompany(r)}},{key:"addNewProductComponent",value:function(){this.productService.addNewProductComponent()}},{key:"expiryDateMessageOutChange",value:function(r){this.expiryDateMessage=r}},{key:"manufactureDateMessageOutChange",value:function(r){this.manufactureDateMessage=r}},{key:"isNumber",value:function(r){if(r){var O=Number(r);return!isNaN(O)}return!1}},{key:"getViewProductUrl",value:function(){return this.productService.getViewProductUrl(this.id)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(On.M),e.Y36(Me.e),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(ba.$),e.Y36(ri.F),e.Y36(Ni.I),e.Y36(u.gz),e.Y36(u.F0),e.Y36(Fe.Xj),e.Y36(mt.uw),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-product-form"]],decls:21,vars:11,consts:[[1,"top-fixed"],[1,"actions-container"],["mat-flat-button","","color","primary",3,"click"],["mat-flat-button","","class","hide-show-messages",3,"disabled","click",4,"ngIf"],[1,"middle-fill"],[4,"ngIf"],["mat-flat-button","","color","warn",3,"click"],["mat-flat-button","","color","primary","matTooltip","Close this window",3,"routerLink"],[3,"ngClass"],["class","submission-message",4,"ngIf"],[1,"form-content-container","mat-form-field-style"],[1,"scrollable-container"],[1,"cards-container"],["class","",4,"ngIf"],["mat-flat-button","",1,"hide-show-messages",3,"disabled","click"],[3,"svgIcon"],["mat-flat-button","","color","primary","matTooltip","Browse Product",3,"routerLink"],["mat-flat-button","","color","primary","matTooltip","Register a New Product",3,"routerLink"],["mat-flat-button","","color","primary","target","_blank","matTooltip","Opens in a new window",3,"routerLink"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],["mat-flat-button","","color","primary","matTooltip","Delete this Product",3,"click"],[1,"submission-message"],[1,"dismiss-container"],["mat-flat-button","","color","primary",3,"disabled","click"],["class","validation-message",4,"ngFor","ngForOf"],[1,"validation-message"],[1,"message-type",3,"ngClass"],[1,"message"],[4,"ngFor","ngForOf"],["mat-icon-button","","matTooltip","Dismiss",3,"click",4,"ngIf"],["target","_blank",3,"href"],["mat-icon-button","","matTooltip","Dismiss",3,"click"],["svgIcon","cancel"],[1,""],[1,"title_box"],[1,"title"],["class","font11px",4,"ngIf"],["class","bordergray",4,"ngIf"],[1,"font11px"],[1,"colorgray"],[1,"bordergray"],[1,"borderlightgray","marginleftneg10px","marginrightneg10px","padleft10px","padright10px"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"row"],[1,"col-2"],["matInput","","placeholder","Non Proprietary Name/INN/USAN Name/Generic Name","name","nonProprietaryName",3,"ngModel","ngModelChange"],[1,"col-1"],["matInput","","placeholder","Proprietary Name/Invented Name","name","proprietaryName",3,"ngModel","ngModelChange"],["matInput","","placeholder","Compose Product Name","name","composeProductName",3,"ngModel","ngModelChange"],[1,"form-row"],["domain","PROD_PHARMACEDICAL_DOSAGE_FORM","title","Dosage Form/Pharmacedical Dosage Form","name","pharmacedicalDosageForm",1,"col-2",3,"model","valueChange"],["domain","PROD_RELEASE_CHARACTERISTIC","title","Release Characteristic","name","releaseCharacteristic",1,"col-1",3,"model","valueChange"],["matInput","","placeholder","Strength Characteristic","name","strengthCharacteristic",3,"ngModel","ngModelChange"],["domain","PROD_STATUS","title","Status","name","status",1,"col-1",3,"model","valueChange"],["domain","PROD_ROUTE_OF_ADMIN","title","Route of Administration","name","routeAdmin",1,"col-1",3,"model","valueChange"],["domain","PROD_UNIT_PRESENTATION","title","Unit of Presentation","name","unitPresentation",1,"col-1",3,"model","valueChange"],["domain","PUBLIC_DOMAIN","title","Public Domain","name","publicDomain",1,"col-1",3,"model","valueChange"],["matInput","","placeholder","Application Number","name","source",3,"ngModel","ngModelChange"],["domain","APPLICATION_TYPE","title","Application Type","name","appType",1,"col-1",3,"model","valueChange"],["matInput","","placeholder","Source","name","source",3,"ngModel","ngModelChange"],["domain","PROD_SOURCE_TYPE","title","Source Type","name","sourceType",1,"col-1",3,"model","valueChange"],["domain","PROD_PRODUCT_TYPE","title","Product Type","name","productType",1,"col-1",3,"model","valueChange"],["domain","PROD_PROVENANCE","title","Provenance","name","provenance",1,"col-1",3,"model","valueChange"],["domain","PROD_COUNTRY_CODE","title","Country Code","name","countryCode",1,"col-1",3,"model","valueChange"],["domain","LANGUAGE","title","Language","name","language",1,"col-1",3,"model","valueChange"],[1,"bordergray","marginleftneg10px","marginrightneg10px","padleft10px","padright10px"],["matBadgeOverlap","false",3,"matBadge"],[1,"titlegreen"],["mat-raised-button","","color","primary","matTooltip","Add New Manufacture",3,"click"],["svgIcon","add_circle_outline"],[1,"marginbottom10px"],["matInput","","placeholder","Product Name","name","productName",3,"ngModel","ngModelChange"],["domain","PROD_PRODUCT_NAME_TYPE","title","Product Name Type","name","productNameType",1,"col-1",3,"model","valueChange"],[1,"width40px","displayinlineblock","marginleftneg5px"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Name",3,"disabled","click"],[1,"buttontermpart",3,"click"],["class","bkcolorlightblue",4,"ngFor","ngForOf"],["mat-icon-button","","color","primary","matTooltip","Add New Product Name",3,"click"],[1,"bkcolorlightblue"],["matInput","","placeholder","Term","name","productTerm",3,"ngModel","ngModelChange"],["domain","PROD_TERM_PART","title","Product Term Part","name","productTermPart",1,"col-1",3,"model","valueChange"],["mat-icon-button","","color","primary","matTooltip","Delete Product Term and Term Part",3,"click"],[1,"divflexrow"],[1,"col-4-5"],["matInput","","placeholder","Product Code","name","productCode",3,"ngModel","ngModelChange"],["domain","PROD_PRODUCT_CODE_TYPE","title","Product Code Type","name","productCodeType",1,"col-1-5",3,"model","valueChange"],[1,"width40px","displayinlineblock"],["mat-icon-button","","color","primary","matTooltip","Add New Product Code",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Code",3,"disabled","click"],["mat-icon-button","","color","primary","matTooltip","Add New Product Code",3,"click"],[1,"col-6-1"],["matInput","","placeholder","Company Name","name","companyName",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company Address","name","companyAddress",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company City","name","companyCity",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company State","name","companyState",3,"ngModel","ngModelChange"],["matInput","","placeholder","Company Zip","name","companyZip",3,"ngModel","ngModelChange"],["domain","PROD_COUNTRY_CODE","title","Company Country","name","companyCountry",1,"col-6-1",3,"model","valueChange"],["domain","PROD_COMPANY_ROLE","title","Company Role","name","companyRole",1,"col-6-2",3,"model","valueChange"],[1,"col-6-2"],["matInput","","placeholder","Company Code","name","companyCode",3,"ngModel","ngModelChange"],["domain","PROD_COMPANY_CODE_TYPE","title","Company Code Type","name","companyCodeType",1,"col-6-2",3,"model","valueChange"],["mat-icon-button","","color","primary","matTooltip","Add New Company",3,"click",4,"ngIf"],["mat-icon-button","","color","primary","matTooltip","Delete Product Company",3,"disabled","click"],["mat-icon-button","","color","primary","matTooltip","Add New Company",3,"click"],[3,"productComponent","totalComponent","prodComponentIndex","expiryDateMessageOut","manufactureDateMessageOut"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"button",2),e.NdJ("click",function(){return r.showJSON()}),e._uU(3,"Show JSON"),e.qZA(),e.YNc(4,Yd,3,3,"button",3),e._UZ(5,"span",4),e.YNc(6,Vl,2,1,"span",5),e._uU(7," \xa0 "),e.TgZ(8,"button",6),e.NdJ("click",function(){return r.validate()}),e._uU(9,"Validate and Submit"),e.qZA(),e._uU(10," \xa0\xa0\xa0\xa0\xa0 "),e.TgZ(11,"button",7),e._uU(12,"Close"),e.qZA(),e.qZA(),e.TgZ(13,"div",8),e.YNc(14,qd,2,1,"div",9),e.YNc(15,jl,6,3,"div",5),e.qZA(),e.qZA(),e.TgZ(16,"div",10),e.TgZ(17,"div",11),e.TgZ(18,"div",12),e.YNc(19,jd,9,3,"div",13),e.qZA(),e.qZA(),e._UZ(20,"br"),e.qZA()),2&f&&(e.xp6(4),e.Q6J("ngIf",r.validationMessages&&r.validationMessages.length>0),e.xp6(2),e.Q6J("ngIf",r.product),e.xp6(5),e.Q6J("routerLink",e.DdM(7,Nu)),e.xp6(2),e.Q6J("ngClass",e.WLB(8,Jd,!r.showSubmissionMessages,r.showSubmissionMessages)),e.xp6(1),e.Q6J("ngIf",r.submissionMessage),e.xp6(1),e.Q6J("ngIf",r.validationMessages),e.xp6(4),e.Q6J("ngIf",r.product))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.titlegreen[_ngcontent-%COMP%]{font-size:17px;font-weight:500}.titleorange[_ngcontent-%COMP%]{color:var(--regular-orangered-color);font-size:17px;font-weight:500}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.form-row[_ngcontent-%COMP%] .col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-2[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.form-row[_ngcontent-%COMP%] .col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-1-5[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-5[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-4-5[_ngcontent-%COMP%]{width:calc((100% - 5px)*.8);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-4-5[_ngcontent-%COMP%]:last-child{margin-right:0}.row[_ngcontent-%COMP%]{width:100%}.col-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1-5[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-1-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-5[_ngcontent-%COMP%]{width:calc((100% - 5px)*.8);margin-right:20px}.col-4-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-2[_ngcontent-%COMP%]{width:calc((100% - 10px) / 3);margin-right:20px}.col-6-2[_ngcontent-%COMP%]:last-child{margin-right:0}.validate-button[_ngcontent-%COMP%]{margin-left:15px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1200px;min-width:1200px;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.buttontermpart[_ngcontent-%COMP%]{height:35px!important;margin-top:10px}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:start;justify-content:flex-start}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.marginright5px[_ngcontent-%COMP%]{margin-right:5px}.marginright10px[_ngcontent-%COMP%]{margin-right:10px}.marginright20px[_ngcontent-%COMP%]{margin-right:20px}.marginright30px[_ngcontent-%COMP%]{margin-right:30px}.marginright35px[_ngcontent-%COMP%]{margin-right:35px}.marginright60px[_ngcontent-%COMP%]{margin-right:60px}.marginbottom10px[_ngcontent-%COMP%]{margin-bottom:10px}.marginrightneg10px[_ngcontent-%COMP%]{margin-right:-10px}.marginleftneg5px[_ngcontent-%COMP%]{margin-left:-5px}.marginleftneg10px[_ngcontent-%COMP%]{margin-left:-10px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padright5px[_ngcontent-%COMP%]{padding-right:5px}.padright10px[_ngcontent-%COMP%]{padding-right:10px}.padleft5px[_ngcontent-%COMP%]{padding-left:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleftnegleft10[_ngcontent-%COMP%]{padding-left:-10px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.width95percent[_ngcontent-%COMP%]{width:95%}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width550px[_ngcontent-%COMP%]{width:550px}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderlightgray[_ngcontent-%COMP%]{border:1px solid var(--lightgray-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.bkcolorlightblue[_ngcontent-%COMP%]{background-color:var(--pale-border-color-rgb-3)}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted var(--regular-green-color);color:var(--hr-color);overflow:visible;text-align:center;height:5px}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-infix[_ngcontent-%COMP%], .mat-form-field-style[_ngcontent-%COMP%] .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important;font-size:14px}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.boxshadow[_ngcontent-%COMP%]{box-shadow:2px 4px 12px #918c91}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:0}"]}),v}();function $r(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",25),e.TgZ(1,"app-product-lot-form",26),e.NdJ("expiryDateMessageOut",function(Je){return e.CHM(f),e.oxw().expiryDateMessageOutChange(Je)})("manufactureDateMessageOut",function(Je){return e.CHM(f),e.oxw().manufactureDateMessageOutChange(Je)}),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=e.oxw();e.xp6(1),e.Q6J("productLot",r)("totalLot",R.productComponent.productLotList.length)("prodLotIndex",O)("prodComponentIndex",R.prodComponentIndex)}}var Jl=function(){return{color:"green"}},Ql=function(){var v=function(){function F(f,r,O,R){(0,S.Z)(this,F),this.productService=f,this.cvService=r,this.authService=O,this.dialog=R,this.expiryDateMessageOut=new e.vpe,this.manufactureDateMessageOut=new e.vpe,this.productMessage="",this.username=null,this.expiryDateMessage="",this.manufactureDateMessage=""}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.username=this.authService.getUser()}},{key:"confirmDeleteComponent",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Manufacture Item Details "+(r+1)+" data?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteProductComponent(r)})}},{key:"deleteProductComponent",value:function(r){this.productService.deleteProductComponent(r)}},{key:"addNewProductLot",value:function(r){this.productService.addNewProductLot(r)}},{key:"copyProductComponent",value:function(){this.productService.copyProductComponent(this.productComponent)}},{key:"expiryDateMessageOutChange",value:function(r){this.expiryDateMessage=r,this.expiryDateMessageOut.emit(this.expiryDateMessage)}},{key:"manufactureDateMessageOutChange",value:function(r){this.manufactureDateMessage=r,this.manufactureDateMessageOut.emit(this.manufactureDateMessage)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(On.M),e.Y36(Ni.I),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-product-component-form"]],inputs:{productComponent:"productComponent",totalComponent:"totalComponent",prodComponentIndex:"prodComponentIndex"},outputs:{expiryDateMessageOut:"expiryDateMessageOut",manufactureDateMessageOut:"manufactureDateMessageOut"},decls:47,vars:23,consts:[[1,"marginbottomminus17px","padleft250px"],["mat-icon-button","",3,"ngStyle","disabled","matTooltip","click"],["mat-icon-button","",3,"ngStyle","matTooltip","click"],[1,"border"],[1,"colorgreen","font17px"],[1,"form-row","margintop10px"],["domain","DOSAGE_FORM","title","Dosage Form","name","dosageForm",1,"col-2-4",3,"model","valueChange"],["domain","PROD_CHARACTER_COLOR","title","Color Name","name","charColor",1,"col-1-4",3,"model","valueChange"],["domain","PROD_CHARACTER_FLAVOR","title","Flavor Name","name","charFlavor",1,"col-1-4",3,"model","valueChange"],[1,"form-row"],[1,"col-1-4"],["matInput","","placeholder","Amount","name","amount",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-1-4",3,"model","valueChange"],["matInput","","placeholder","Manufacture Code","name","manufactureCode",3,"ngModel","ngModelChange"],["domain","PROD_MANUFACTURE_CODE_TYPE","title","Manufacture Code Type","name","manufactureCodeType",1,"col-1-4",3,"model","valueChange"],["domain","PROD_CHARACTER_SHAPE","title","Shape Name","name","charShape",1,"col-1-4",3,"model","valueChange"],["domain","PROD_CHARACTER_FRAGMENTS","title","Scoring","name","charNumFragments",1,"col-1-4",3,"model","valueChange"],["matInput","","placeholder","Size","name","charSize",3,"ngModel","ngModelChange"],["matInput","","placeholder","Imprint Text","name","charImprintText",3,"ngModel","ngModelChange"],[1,""],["matBadgeOverlap","false",3,"matBadge"],[1,"titlebrown"],["mat-raised-button","","color","primary","matTooltip","Add New Lot",3,"click"],["svgIcon","add_circle_outline"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"marginbottom10px"],[3,"productLot","totalLot","prodLotIndex","prodComponentIndex","expiryDateMessageOut","manufactureDateMessageOut"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"button",1),e.NdJ("click",function(){return r.confirmDeleteComponent(r.prodComponentIndex)}),e.TgZ(2,"mat-icon"),e._uU(3,"delete_forever"),e.qZA(),e.qZA(),e._uU(4," \xa0\xa0 "),e.TgZ(5,"button",2),e.NdJ("click",function(){return r.copyProductComponent()}),e.TgZ(6,"mat-icon"),e._uU(7,"file_copy"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(8,"fieldset",3),e.TgZ(9,"legend",3),e._uU(10,"Manufacture Item Details\xa0"),e.TgZ(11,"b"),e.TgZ(12,"span",4),e._uU(13),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div",5),e.TgZ(15,"app-cv-input",6),e.NdJ("valueChange",function(R){return r.productComponent.dosageForm=R}),e.qZA(),e.TgZ(16,"app-cv-input",7),e.NdJ("valueChange",function(R){return r.productComponent.charColor=R}),e.qZA(),e.TgZ(17,"app-cv-input",8),e.NdJ("valueChange",function(R){return r.productComponent.charFlavor=R}),e.qZA(),e.qZA(),e.TgZ(18,"div",9),e.TgZ(19,"mat-form-field",10),e.TgZ(20,"input",11),e.NdJ("ngModelChange",function(R){return r.productComponent.amount=R}),e.qZA(),e.qZA(),e.TgZ(21,"app-cv-input",12),e.NdJ("valueChange",function(R){return r.productComponent.unit=R}),e.qZA(),e.TgZ(22,"mat-form-field",10),e.TgZ(23,"input",13),e.NdJ("ngModelChange",function(R){return r.productComponent.manufactureCode=R}),e.qZA(),e.qZA(),e.TgZ(24,"app-cv-input",14),e.NdJ("valueChange",function(R){return r.productComponent.manufactureCodeType=R}),e.qZA(),e.qZA(),e.TgZ(25,"div",9),e.TgZ(26,"app-cv-input",15),e.NdJ("valueChange",function(R){return r.productComponent.charShape=R}),e.qZA(),e.TgZ(27,"app-cv-input",16),e.NdJ("valueChange",function(R){return r.productComponent.charNumFragments=R}),e.qZA(),e.TgZ(28,"mat-form-field",10),e.TgZ(29,"input",17),e.NdJ("ngModelChange",function(R){return r.productComponent.charSize=R}),e.qZA(),e.qZA(),e.TgZ(30,"mat-form-field",10),e.TgZ(31,"input",18),e.NdJ("ngModelChange",function(R){return r.productComponent.charImprintText=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(32,"div",19),e._UZ(33,"br"),e._UZ(34,"hr"),e._UZ(35,"br"),e.TgZ(36,"span",20),e.TgZ(37,"span",21),e._uU(38,"LOT "),e.qZA(),e.qZA(),e._uU(39," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(40,"button",22),e.NdJ("click",function(){return r.addNewProductLot(r.prodComponentIndex)}),e._UZ(41,"mat-icon",23),e._uU(42,"Add Lot "),e.qZA(),e._UZ(43,"br"),e.YNc(44,$r,2,4,"div",24),e.qZA(),e.qZA(),e._UZ(45,"br"),e._UZ(46,"br")),2&f&&(e.xp6(1),e.MGl("matTooltip","Delete Component Details ",r.prodComponentIndex+1,""),e.Q6J("ngStyle",e.DdM(21,Jl))("disabled",1==r.totalComponent),e.xp6(1),e.ekj("disabled",1==r.totalComponent),e.xp6(3),e.MGl("matTooltip","Copy Manufacture Item Details ",r.prodComponentIndex+1," to New Manufacture Item"),e.Q6J("ngStyle",e.DdM(22,Jl)),e.xp6(8),e.Oqu(r.prodComponentIndex+1),e.xp6(2),e.Q6J("model",r.productComponent.dosageForm),e.xp6(1),e.Q6J("model",r.productComponent.charColor),e.xp6(1),e.Q6J("model",r.productComponent.charFlavor),e.xp6(3),e.Q6J("ngModel",r.productComponent.amount),e.xp6(1),e.Q6J("model",r.productComponent.unit),e.xp6(2),e.Q6J("ngModel",r.productComponent.manufactureCode),e.xp6(1),e.Q6J("model",r.productComponent.manufactureCodeType),e.xp6(2),e.Q6J("model",r.productComponent.charShape),e.xp6(1),e.Q6J("model",r.productComponent.charNumFragments),e.xp6(2),e.Q6J("ngModel",r.productComponent.charSize),e.xp6(2),e.Q6J("ngModel",r.productComponent.charImprintText),e.xp6(5),e.s9C("matBadge",r.productComponent.productLotList.length),e.xp6(8),e.Q6J("ngForOf",r.productComponent.productLotList))},styles:[".details-container[_ngcontent-%COMP%]{width:100%}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.form-row[_ngcontent-%COMP%] .col-1-4[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-1-4[_ngcontent-%COMP%]:last-child{margin-right:0}.form-row[_ngcontent-%COMP%] .col-2-4[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.form-row[_ngcontent-%COMP%] .col-2-4[_ngcontent-%COMP%]:last-child{margin-right:0}.row[_ngcontent-%COMP%]{width:100%}.col-1-4[_ngcontent-%COMP%]{width:calc((100% - 60px)/4);margin-right:20px}.col-1-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2-4[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.col-2-4[_ngcontent-%COMP%]:last-child{margin-right:0}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.pad10px[_ngcontent-%COMP%]{padding:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font17px[_ngcontent-%COMP%]{font-size:17px}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.titlegreen[_ngcontent-%COMP%]{color:var(--regular-green-color);font-size:17px;font-weight:500}.titleorange[_ngcontent-%COMP%]{color:var(--regular-orangered-color);font-size:17px;font-weight:500}.titlebrown[_ngcontent-%COMP%]{color:var(--brown-color);font-size:17px;font-weight:500}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintopminus25[_ngcontent-%COMP%]{margin-top:-5px}.marginbottomminus17px[_ngcontent-%COMP%]{margin-bottom:-17px}.padleft250px[_ngcontent-%COMP%]{padding-left:250px}.padbottom0px[_ngcontent-%COMP%]{padding:0}hr[_ngcontent-%COMP%]{border:none;border-top:3px dotted var(--regular-green-color);color:var(--hr-color);overflow:visible;text-align:center;height:5px}fieldset.border[_ngcontent-%COMP%]{border:solid 1px var(--regular-green-color)!important;padding:0 10px 10px;border-bottom:none;border-radius:8px;min-width:0}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:13px;color:var(--legend-blue-border-color);font-family:Verdana;font-weight:700;margin-bottom:10px}.formfieldwidth[_ngcontent-%COMP%]{width:160px!important}.formfield2columnwidth[_ngcontent-%COMP%]{width:370px!important}.formfield3columnwidth[_ngcontent-%COMP%]{width:540px!important}.formfieldfullpagewidth[_ngcontent-%COMP%]{width:900px}.width40px[_ngcontent-%COMP%]{width:40px}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.prodNameField[_ngcontent-%COMP%]{width:calc((100% - 100px)*.8);margin-right:30px}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}"]}),v}(),As=["checkBox"];function Ro(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"span",30),e._uU(2,"Created By:"),e.qZA(),e._uU(3),e.ALo(4,"date"),e.TgZ(5,"span",30),e._uU(6,"Modified By:"),e.qZA(),e._uU(7),e.ALo(8,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(3),e.AsE(" ",f.ingredient.createdBy,"\xa0\xa0\xa0 ",e.xi3(4,4,f.ingredient.createDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.AsE(" ",f.ingredient.modifiedBy,"\xa0\xa0\xa0 ",e.xi3(8,7,f.ingredient.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function Wl(v,F){if(1&v&&(e.TgZ(0,"span",29),e.YNc(1,Ro,9,10,"span",12),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.ingredient.id)}}function Ps(v,F){if(1&v&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.ingredientNameMessage," ")}}function ed(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",33),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f," ")}}function go(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,ed,4,1,"div",15),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.Oqu(f.ingredientName),e.xp6(2),e.Q6J("ngForOf",f.ingredientNameActiveMoiety)}}function _c(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",34),e._uU(2),e.qZA(),e.TgZ(3,"span",33),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",35),e.NdJ("click",function(){return e.CHM(f),e.oxw().confirmDeleteIngredientName()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(2),e.Oqu(r.ingredient.substanceKey),e.xp6(2),e.hij(" (",r.ingredient.substanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Ingredient Name ",r.prodIngredientIndex+1,"")}}function td(v,F){if(1&v&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.basisOfStrengthMessage," ")}}function nd(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.TgZ(2,"span",33),e._uU(3,"(Active Moiety)"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f," ")}}function vu(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",32),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e._UZ(4,"br"),e.YNc(5,nd,4,1,"div",15),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.Oqu(f.basisOfStrengthIngredientName),e.xp6(2),e.Q6J("ngForOf",f.basisOfStrengthActiveMoiety)}}function Ko(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span",34),e._uU(2),e.qZA(),e.TgZ(3,"span",33),e._uU(4),e.qZA(),e._UZ(5,"br"),e.TgZ(6,"button",35),e.NdJ("click",function(){return e.CHM(f),e.oxw().confirmDeleteBasisOfStrength()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(2),e.Oqu(r.ingredient.basisOfStrengthSubstanceKey),e.xp6(2),e.hij(" (",r.ingredient.basisOfStrengthSubstanceKeyType,")"),e.xp6(2),e.MGl("matTooltip","Delete Basis of Strength ",r.prodIngredientIndex+1,"")}}function zl(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"mat-checkbox",36,37),e.NdJ("ngModelChange",function(R){return e.CHM(f).$implicit.checked=R})("change",function(){var ee=e.CHM(f).$implicit,Je=e.MAs(2);return e.oxw().setSelectedIngredientLocation(ee,Je)}),e._uU(3),e.qZA(),e._uU(4," \xa0 "),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(1),e.Q6J("value",r.value)("ngModel",r.checked),e.xp6(2),e.hij(" ",r.value," ")}}var wr=function(){return{color:"orangered"}},Uu=function(){var v=function(){function F(f,r,O,R,ee,Je){(0,S.Z)(this,F),this.generalService=f,this.productService=r,this.cvService=O,this.authService=R,this.configService=ee,this.dialog=Je,this.username=null,this.ingredientNameMessage="",this.basisOfStrengthMessage="",this.ingredientNameActiveMoiety=new Array,this.basisOfStrengthActiveMoiety=new Array,this.selectedIngredientLocation=new Array,this.substanceKeyTypeConfig="",this.subscriptions=[],this.locationList=[{value:"Whole",checked:!1},{value:"Core",checked:!1},{value:"Coating",checked:!1},{value:"Other",checked:!1}]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;setTimeout(function(){r.loadIngredientLocation(),r.username=r.authService.getUser(),r.substanceKeyOld=r.ingredient.substanceKey,r.basisofStrengthSubstanceKeyOld=r.ingredient.basisOfStrengthSubstanceKey,r.substanceKeyTypeConfig=r.generalService.getSubstanceKeyType(),r.substanceKeyTypeConfig||alert("There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add Ingredient Name"),r.getSubstanceBySubstanceKey()},600)}},{key:"loadIngredientLocation",value:function(){if(this.ingredient.ingredientLocation&&this.ingredient.ingredientLocation.length>0)for(var r=this.ingredient.ingredientLocation.split(","),O=0;O0&&(R=ee.join(","),this.ingredient.ingredientLocation=R)}},{key:"confirmDeleteProductIngredient",value:function(r,O,R){var ee=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Product Ingredient Details "+(R+1)+" data?"}}).afterClosed().subscribe(function(_t){_t&&!0===_t&&ee.deleteProductIngredient(r,O,R)})}},{key:"deleteProductIngredient",value:function(r,O,R){this.productService.deleteProductIngredient(r,O,R)}},{key:"copyProductIngredient",value:function(){this.productService.copyProductIngredient(this.ingredient,this.prodComponentIndex,this.prodLotIndex)}},{key:"confirmDeleteIngredientName",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Ingredient Name "+(this.prodIngredientIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteIngredientName()})}},{key:"deleteIngredientName",value:function(){this.ingredientNameMessage="",null!=this.ingredient.id&&null!=this.substanceKeyOld&&(this.ingredientNameMessage="Click Validate and Submit button to delete "+this.ingredientName),this.substanceUuid=null,this.ingredientName=null,this.ingredient.substanceKey=null,this.ingredient.substanceKeyType=null}},{key:"confirmDeleteBasisOfStrength",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Basis of Strength "+(this.prodIngredientIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteBasisOfStrength()})}},{key:"deleteBasisOfStrength",value:function(){this.basisOfStrengthMessage="",null!=this.ingredient.id&&null!=this.basisofStrengthSubstanceKeyOld&&(this.basisOfStrengthMessage="Click Validate and Submit button to delete "+this.basisOfStrengthIngredientName),this.basisOfStrengthSubstanceUuid=null,this.basisOfStrengthIngredientName=null,this.ingredient.basisOfStrengthSubstanceKey=null,this.ingredient.basisOfStrengthSubstanceKeyType=null}},{key:"getSubstanceCode",value:function(r,O){var R=this,ee=this.generalService.getSubstanceCodesBySubstanceUuid(r).subscribe(function(Je){if(Je)for(var _t=Je,Kt=0;Kt<_t.length;Kt++)if(_t[Kt].codeSystem&&_t[Kt].codeSystem===R.substanceKeyTypeConfig&&"PRIMARY"===_t[Kt].type){O&&("ingredientname"===O&&(R.ingredient.substanceKey=_t[Kt].code,R.ingredient.substanceKeyType=R.substanceKeyTypeConfig,R.ingredient.basisOfStrengthSubstanceKey||(R.ingredient.basisOfStrengthSubstanceKey=_t[Kt].code,R.ingredient.basisOfStrengthSubstanceKeyType=R.substanceKeyTypeConfig)),"basisofstrength"===O&&(R.ingredient.basisOfStrengthSubstanceKey=_t[Kt].code,R.ingredient.basisOfStrengthSubstanceKeyType=R.substanceKeyTypeConfig));break}});this.subscriptions.push(ee)}},{key:"getSubstanceBySubstanceKey",value:function(){var r=this;if(null!=this.ingredient){if(this.ingredient.substanceKey){var O=this.generalService.getSubstanceByAnyId(this.ingredient.substanceKey).subscribe(function(R){R&&R.uuid&&(r.substanceUuid=R.uuid,r.ingredientName=R._name,r.getActiveMoiety(r.substanceUuid,"ingredientname"))});this.subscriptions.push(O)}this.ingredient.basisOfStrengthSubstanceKey&&this.generalService.getSubstanceByAnyId(this.ingredient.basisOfStrengthSubstanceKey).subscribe(function(R){R&&R.uuid&&(r.basisOfStrengthSubstanceUuid=R.uuid,r.basisOfStrengthIngredientName=R._name,r.getActiveMoiety(r.basisOfStrengthSubstanceUuid,"basisofstrength"))})}}},{key:"getActiveMoiety",value:function(r,O){var R=this;null!=r&&this.generalService.getSubstanceRelationships(r).subscribe(function(ee){if(ee&&ee&&ee.length>0)for(var Je=0;Je0){if(r.length<8||r.length>10)return!1;var R=r.split("/");if(3!==R.length||R[0].length<1||R[0].length>2||R[1].length<1||R[1].length>2||4!==R[2].length)return!1;if(3===R.length)for(var Je=0;Je-1}),r.suggestionsFields.forEach(function(ee,Je){r.suggestionsFields[Je]="Active_Moiety"===ee?{value:"Active_Moiety",display:"Active Moiety"}:"Dosage_Form_Name"===ee?{value:"Dosage_Form_Name",display:"Dosage Form Name"}:"Marketing_Category_Name"===ee?{value:"Marketing_Category_Name",display:"Marketing Category Name"}:"Ingredient_Name"===ee?{value:"Ingredient_Name",display:"Ingredient Name"}:"Ingredient_Approval_ID"===ee?{value:"Ingredient_Approval_ID",display:"Ingredient Approval ID"}:"Product_Name"===ee?{value:"Product_Name",display:"Product Name"}:"Ingredient_Type"===ee?{value:"Ingredient_Type",display:"Ingredient Type"}:"Company_Country"===ee?{value:"Company_Country",display:"Company Country"}:"Route_of_Admin"===ee?{value:"Route_of_Admin",display:"Route of Administration"}:"Labeler_Name"===ee?{value:"Labeler_Name",display:"Labeler Name"}:"Application_Type_Number"===ee?{value:"Application_Type_Number",display:"Application Type Number"}:"Ingredient_Name"===ee?{value:"Ingredient_Name",display:"Ingredient Name"}:"Nonproprietary_Name"===ee?{value:"Nonproprietary_Name",display:"Nonproprietary Name"}:"Product_Type"===ee?{value:"Product_Type",display:"Product Type"}:{value:ee,display:ee}}),null!=r.suggestionsFields&&r.suggestionsFields.length>0&&(r.matOpen=!0,r.opened.emit())},function(O){r.gaService.sendException("search suggestion error from API call"),console.log(O)})}},{key:"searchValue",set:function(r){this.searchControl.setValue(r)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(r){this.searchControl.markAsTouched(),this.searchControl.setErrors(r?{error:!0}:null),this.privateErrorMessage=r}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(r){this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&r.option.value||"auto-complete option");var ee=r.option.value;ee=this.topSearchClean(ee),this.searchPerformed.emit(ee)}},{key:"highlight",value:function(r){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=r,this.testElem.scrollWidth>this.testElem.offsetWidth))){var O=r.toUpperCase().indexOf(this.query.toUpperCase());r="..."+r.substring(O-15,r.length)}var R=this.query.replace(/(?=[() ])/g,"\\");return r.replace(new RegExp(R,"gi"),function(ee){return""+ee+""})}return r}},{key:"processSubstanceSearch",value:function(){var r=this.searchControl.value;this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","search:submit",!this.configService.environment.isAnalyticsPrivate&&r||"search term option"),r=this.topSearchClean(r),this.searchPerformed.emit(r)}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var r=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){r.source?(r.searchContainerElement.classList.remove("active-"+r.source),r.searchContainerElement.classList.remove("deactivate-search")):(r.searchContainerElement.classList.remove("active-search"),r.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(r){return r&&r.length>0&&((r=r.trim()).indexOf('"')<0&&r.indexOf("*")<0&&r.indexOf(":")<0&&r.indexOf(" AND ")<0&&r.indexOf(" OR ")<0?r='"'+r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':r.indexOf(":")<0&&(r=r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")),this.searchControl.setValue(r)),r}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(On.M),e.Y36(e.SBq),e.Y36(jn.$),e.Y36(hn.E),e.Y36(tt.I))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-product-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:16,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],["mat-icon-button","",1,"close-button",3,"click"],["svgIcon","close"],["mat-icon-button","",1,"activate-search-button",3,"click"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"suggestion-styling",3,"innerHTML"]],template:function(f,r){if(1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return r.focused()}),e.qZA(),e.YNc(4,H,2,1,"mat-hint",3),e.YNc(5,ye,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(ee){return r.substanceSearchOptionSelected(ee)})("closed",function(){return r.autoCompleteClosed()}),e.YNc(8,Dt,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return r.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.TgZ(12,"button",10),e.NdJ("click",function(){return r.deactivateSearch()}),e._UZ(13,"mat-icon",11),e.qZA(),e.TgZ(14,"button",12),e.NdJ("click",function(){return r.activateSearch()}),e._UZ(15,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&f){var O=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",r.source),e.xp6(1),e.Q6J("placeholder",r.placeholder)("formControl",r.searchControl)("matAutocomplete",O),e.xp6(1),e.Q6J("ngIf",r.hintMessage),e.xp6(1),e.Q6J("ngIf",r.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",r.suggestionsFields),e.xp6(2),e.Q6J("disabled",r.searchControl.invalid)}},directives:[et._Y,et.JL,et.F,kt.KE,c.mk,It.Nt,et.Fj,an.ZL,et.JJ,et.oH,c.O5,kt.bx,kt.TO,an.XC,c.sg,Xt.ey,h.lW,T.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:var(--regular-white-color);overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:var(--link-primary-color);color:var(--regular-white-color)}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 750px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 1024px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:var(--primary-color);overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:var(--regular-white-color);overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{animation-name:reduceWidth;animation-duration:.3s}}@keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),v}();function wn(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",60),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",61),e.qZA()}}function Gn(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",66),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return e.oxw(4).restricSearh(ee.luceneQuery)}),e.TgZ(1,"div",67),e._uU(2),e.qZA(),e.TgZ(3,"div",68),e._uU(4),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(2),e.hij(" ",r.displayField," "),e.xp6(2),e.hij(" ",r.count," ")}}function Ki(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",64),e._uU(2),e.qZA(),e.YNc(3,Gn,5,2,"button",65),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==f?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",r.narrowSearchSuggestions[f])}}function Ia(v,F){if(1&v&&(e.TgZ(0,"div",62),e.YNc(1,Ki,4,2,"div",63),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f&&("WORD"===f||"FULL"===f))}}function hr(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",48),e.TgZ(1,"div",49),e.TgZ(2,"div",50),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",51),e.NdJ("menuOpened",function(){return e.CHM(f),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(f),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",52),e.qZA(),e.TgZ(11,"button",53),e.NdJ("click",function(){return e.CHM(f),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,wn,2,0,"button",54),e.TgZ(15,"mat-menu",55,56),e.YNc(17,Ia,2,1,"div",57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",49),e.TgZ(19,"div",58),e._uU(20," For more options use the "),e.TgZ(21,"a",59),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(16),O=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",r),e.xp6(3),e.hij("\xa0 ",O.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",O.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",O.matchTypes)}}function Or(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",60),e.NdJ("click",function(){return e.CHM(f),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",61),e.qZA()}}function Uo(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",73),e.TgZ(1,"div"),e.TgZ(2,"span",74),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",75),e.YNc(8,Or,2,0,"button",54),e.TgZ(9,"button",60),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",76),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(6),e.Oqu(r.searchTerm),e.xp6(2),e.Q6J("ngIf",r.isSearchEditable)}}function Bs(v,F){1&v&&e._UZ(0,"mat-icon",83)}function fh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",73),e.TgZ(1,"div",77),e.TgZ(2,"span",78),e.YNc(3,Bs,1,0,"mat-icon",79),e._uU(4),e.qZA(),e.TgZ(5,"span",80),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",75),e.TgZ(8,"button",81),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return ee.removeFacet(ee.type,ee.bool,ee.val)}),e._UZ(9,"mat-icon",82),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(3),e.Q6J("ngIf",!r.bool),e.xp6(1),e.hij(" ",r.type,": "),e.xp6(2),e.hij(" ",r.val," ")}}function pf(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",84),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function ff(v,F){if(1&v&&(e.TgZ(0,"div",69),e.YNc(1,Uo,11,2,"div",70),e.YNc(2,fh,10,3,"div",71),e.YNc(3,pf,3,0,"button",72),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.searchTerm),e.xp6(1),e.Q6J("ngForOf",f.displayFacets),e.xp6(1),e.Q6J("ngIf",f.displayFacets&&f.displayFacets.length>0||f.searchTerm)}}function ig(v,F){if(1&v&&(e.TgZ(0,"mat-option",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f.value),e.xp6(1),e.hij(" ",f.display," ")}}function Wd(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",86),e.TgZ(1,"button",87),e.NdJ("click",function(){return e.CHM(f),e.oxw().export()}),e._UZ(2,"mat-icon",88),e._uU(3," Export "),e.qZA(),e.qZA()}}function mf(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Product ID "),e.qZA())}function zd(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Oqu(f.productNDC)}}function id(v,F){1&v&&e._uU(0,"(NO ID)")}function vc(v,F){if(1&v&&(e.ynx(0),e.TgZ(1,"a",96),e._UZ(2,"img",97),e.qZA(),e._UZ(3,"mat-icon",98),e.BQk()),2&v){var f=e.oxw(2).$implicit,r=e.oxw();e.xp6(1),e.hYB("href","",r.dailyMedUrl,"",f.productNDC,"",e.LSH),e.xp6(1),e.Q6J("src",r.iconSrcPath,e.LSH)}}var Da=function(F){return["/product-elist",F]};function mh(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"div",91),e.TgZ(2,"a",92),e.YNc(3,zd,2,1,"span",93),e.YNc(4,id,1,0,"ng-template",null,94,e.W1O),e.qZA(),e.qZA(),e.TgZ(6,"div",95),e.YNc(7,vc,4,3,"ng-container",63),e.qZA(),e.qZA()),2&v){var f=e.MAs(5),r=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,Da,r.productId)),e.xp6(1),e.Q6J("ngIf",r.productNDC)("ngIfElse",f),e.xp6(4),e.Q6J("ngIf",null!==r.productNDC)}}function hh(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Oqu(f.productNDC)}}function ad(v,F){1&v&&e._uU(0,"(NO ID)")}var Yu=function(F){return["/product",F,"edit"]};function Gd(v,F){if(1&v&&(e.TgZ(0,"a",102),e._UZ(1,"mat-icon",61),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.Q6J("routerLink",e.VKq(1,Yu,f.productId))}}var Kd=function(F){return["/product",F]};function ls(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",99),e.YNc(2,hh,2,1,"span",93),e.YNc(3,ad,1,0,"ng-template",null,100,e.W1O),e.qZA(),e._uU(5," \xa0\xa0 "),e.YNc(6,Gd,2,3,"a",101),e.qZA()),2&v){var f=e.MAs(4),r=e.oxw().$implicit,O=e.oxw();e.xp6(1),e.Q6J("routerLink",e.VKq(4,Kd,r.productId)),e.xp6(1),e.Q6J("ngIf",r.productNDC)("ngIfElse",f),e.xp6(4),e.Q6J("ngIf",O.isAdmin)}}function hf(v,F){if(1&v&&(e.TgZ(0,"td",90),e.YNc(1,mh,8,6,"span",63),e.YNc(2,ls,7,6,"span",63),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf","SPL"===f.fromtable),e.xp6(1),e.Q6J("ngIf","GSRS"===f.fromtable)}}function Ys(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Product Name "),e.qZA())}function $d(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.productName," ")}}function _f(v,F){if(1&v&&(e.TgZ(0,"td",103),e.YNc(1,$d,2,1,"div",104),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngForOf",f.productNameAllList)}}function gf(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Ingredient Name (Active Ingredient) "),e.qZA())}var Do=function(F){return["/substances",F]};function $l(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"li"),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.TgZ(4,"button",108),e.NdJ("click",function(R){e.CHM(f);var ee=e.oxw(3).$implicit;return e.oxw(2).openImageModal(R,ee.substanceUuid)}),e.TgZ(5,"mat-icon",109),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,Do,r.substanceUuid)),e.xp6(1),e.hij("",r.substanceName," ")}}function qs(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,$l,7,4,"div",63),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf","ACTIVE INGREDIENT"===f.ingredientType||"Active Ingredient"===f.ingredientType)}}function yu(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,qs,2,1,"div",63),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",f.ingredientType)}}function yc(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,yu,2,1,"div",63),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f.substanceName)}}function vf(v,F){if(1&v&&(e.TgZ(0,"td",105),e.TgZ(1,"ol",106),e.YNc(2,yc,2,1,"div",104),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Q6J("ngForOf",f.productIngredientAllList)}}function Xd(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Labeler Name "),e.qZA())}function yf(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.labelerName," ")}}function ep(v,F){if(1&v&&(e.TgZ(0,"td",103),e._uU(1),e.YNc(2,yf,2,1,"div",104),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.labelerName," "),e.xp6(1),e.Q6J("ngForOf",f.productCompanyAllList)}}function tp(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Country "),e.qZA())}function xl(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.countryWithoutCode," ")}}function _h(v,F){if(1&v&&(e.TgZ(0,"td",103),e.YNc(1,xl,2,1,"div",104),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngForOf",f.productCompanyAllList)}}function Xl(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Status "),e.qZA())}function bf(v,F){if(1&v&&(e.TgZ(0,"td",103),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.status," ")}}function Cf(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Product Type "),e.qZA())}function np(v,F){if(1&v&&(e.TgZ(0,"td",103),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.productType," ")}}function gh(v,F){1&v&&(e.TgZ(0,"th",89),e._uU(1," Application Number "),e.qZA())}function bc(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",111),e.TgZ(2,"span",112),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw();e.xp6(1),e.s9C("href",r.getAppTypeNumberUrl(f.appType,f.appNumber),e.LSH),e.xp6(2),e.Oqu(f.appTypeNumber)}}function Mf(v,F){if(1&v&&(e.TgZ(0,"span",112),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.appTypeNumber," ")}}function Hs(v,F){if(1&v&&(e.TgZ(0,"td",103),e.YNc(1,bc,4,2,"span",93),e.YNc(2,Mf,2,1,"ng-template",null,110,e.W1O),e.qZA()),2&v){var f=F.$implicit,r=e.MAs(3);e.xp6(1),e.Q6J("ngIf",f.appType&&f.appNumber)("ngIfElse",r)}}function qu(v,F){1&v&&e._UZ(0,"tr",113)}function xf(v,F){1&v&&e._UZ(0,"tr",114)}function Hu(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Oqu(f.productNDC)}}function Vu(v,F){1&v&&e._uU(0,"(NO ID)")}function $o(v,F){if(1&v&&(e.ynx(0),e._uU(1," \xa0\xa0 "),e.TgZ(2,"a",96),e._UZ(3,"img",97),e.qZA(),e._UZ(4,"mat-icon",125),e.BQk()),2&v){var f=e.oxw(2).$implicit,r=e.oxw(2);e.xp6(2),e.hYB("href","",r.dailyMedUrl,"",f.productNDC,"",e.LSH),e.xp6(1),e.Q6J("src",r.iconSrcPath,e.LSH)}}function sl(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",124),e.YNc(2,Hu,2,1,"span",93),e.YNc(3,Vu,1,0,"ng-template",null,94,e.W1O),e.qZA(),e.YNc(5,$o,5,3,"ng-container",63),e.qZA()),2&v){var f=e.MAs(4),r=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(4,Da,r.productId)),e.xp6(1),e.Q6J("ngIf",r.productNDC)("ngIfElse",f),e.xp6(3),e.Q6J("ngIf",null!==r.productNDC)}}function rd(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Oqu(f.productNDC)}}function od(v,F){1&v&&e._uU(0,"(NO ID)")}function ju(v,F){if(1&v&&(e.TgZ(0,"a",127),e._UZ(1,"mat-icon",61),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.Q6J("routerLink",e.VKq(1,Yu,f.productId))}}function Sl(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",124),e.YNc(2,rd,2,1,"span",93),e.YNc(3,od,1,0,"ng-template",null,100,e.W1O),e.qZA(),e.YNc(5,ju,2,3,"a",126),e.qZA()),2&v){var f=e.MAs(4),r=e.oxw().$implicit,O=e.oxw(2);e.xp6(1),e.Q6J("routerLink",e.VKq(4,Kd,r.productId)),e.xp6(1),e.Q6J("ngIf",r.productNDC)("ngIfElse",f),e.xp6(3),e.Q6J("ngIf",O.isAdmin)}}function Sf(v,F){1&v&&(e.TgZ(0,"span"),e._uU(1,"|"),e.qZA())}function Tf(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,Sf,2,0,"span",63),e._uU(2),e.qZA()),2&v){var f=e.oxw(),r=f.index,O=f.$implicit;e.xp6(1),e.Q6J("ngIf",r>0),e.xp6(1),e.hij(" ",O.countryWithoutCode," ")}}function Af(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,Tf,3,2,"span",63),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f.countryWithoutCode)}}function Pf(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",111),e.TgZ(2,"span",112),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw(2);e.xp6(1),e.s9C("href",r.getAppTypeNumberUrl(f.appType,f.appNumber),e.LSH),e.xp6(2),e.Oqu(f.appTypeNumber)}}function Ju(v,F){if(1&v&&(e.TgZ(0,"span",112),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.appTypeNumber," ")}}function Cc(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",128),e.TgZ(2,"b"),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(3),e.Oqu(f.productName)}}function vh(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij("\xa0(",f.labelerDuns,")")}}function ip(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.YNc(2,vh,2,1,"span",63),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.labelerName," "),e.xp6(1),e.Q6J("ngIf",f.labelerDuns)}}function Mc(v,F){1&v&&(e.TgZ(0,"span"),e._uU(1,","),e.qZA())}function xc(v,F){1&v&&(e.TgZ(0,"span"),e._uU(1,","),e.qZA())}function sd(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.YNc(2,Mc,2,0,"span",63),e._uU(3),e.YNc(4,xc,2,0,"span",63),e._uU(5),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.city," "),e.xp6(1),e.Q6J("ngIf",f.state),e.xp6(1),e.hij(" ",f.state," "),e.xp6(1),e.Q6J("ngIf",f.countryWithoutCode),e.xp6(1),e.hij(" ",f.countryWithoutCode," ")}}function ld(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.dosageFormName," ")}}function Rr(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,ld,2,1,"span",63),e.qZA()),2&v){var f=F.index;e.xp6(1),e.Q6J("ngIf",0==f)}}function Sc(v,F){if(1&v&&(e.TgZ(0,"div",119),e.TgZ(1,"div",120),e.TgZ(2,"div",121),e._uU(3," Created By: "),e.qZA(),e.TgZ(4,"div",122),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"div",120),e.TgZ(7,"div",121),e._uU(8," Edited By: "),e.qZA(),e.TgZ(9,"div",122),e._uU(10),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(5),e.hij(" ",f.createdBy," "),e.xp6(5),e.hij(" ",f.modifiedBy," ")}}function yh(v,F){if(1&v&&(e.TgZ(0,"div",119),e.TgZ(1,"div",120),e.TgZ(2,"div",121),e._uU(3," Create Date: "),e.qZA(),e.TgZ(4,"div",122),e._uU(5),e.ALo(6,"date"),e.qZA(),e.qZA(),e.TgZ(7,"div",120),e.TgZ(8,"div",121),e._uU(9," Edit Date: "),e.qZA(),e.TgZ(10,"div",122),e._uU(11),e.ALo(12,"date"),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(5),e.hij(" ",e.xi3(6,2,f.creationDate,"MM/dd/yyyy hh:mm:ss a")," "),e.xp6(6),e.hij(" ",e.xi3(12,5,f.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function ud(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"li"),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.TgZ(4,"button",108),e.NdJ("click",function(R){e.CHM(f);var ee=e.oxw(3).$implicit;return e.oxw(3).openImageModal(R,ee.substanceUuid)}),e.TgZ(5,"mat-icon",109),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,Do,r.substanceUuid)),e.xp6(1),e.hij("",r.substanceName," ")}}function Qu(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,ud,7,4,"span",63),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf",f.substanceName)}}function Df(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,Qu,2,1,"span",93),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw(3);e.xp6(1),e.Q6J("ngIf","Active Ingredient"===f.ingredientType)("ngIfElse",r.otherIngredType)}}function ap(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Df,2,2,"span",63),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f.ingredientType)}}function bh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"li",130),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.TgZ(4,"button",108),e.NdJ("click",function(R){e.CHM(f);var ee=e.oxw(3).$implicit;return e.oxw(3).openImageModal(R,ee.substanceUuid)}),e.TgZ(5,"mat-icon",109),e._uU(6,"analytics"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(3).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,Do,r.substanceUuid)),e.xp6(1),e.hij("",r.substanceName," ")}}function wf(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"span",131),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(3).$implicit;e.xp6(2),e.hij("(",f.ingredientType,") ")}}function Tl(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,bh,7,4,"div",63),e.YNc(2,wf,3,1,"div",63),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(1),e.Q6J("ngIf",f.substanceName),e.xp6(1),e.Q6J("ngIf","Active Ingredient"!==f.ingredientType&&"Inactive Ingredient"!==f.ingredientType)}}function Ch(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Tl,3,2,"div",63),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf","Active Ingredient"!==f.ingredientType)}}function Of(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"li",130),e.TgZ(2,"a",107),e._uU(3),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(2,Do,f.substanceUuid)),e.xp6(1),e.hij("",f.substanceName," ")}}function eu(v,F){if(1&v&&e.YNc(0,Of,4,4,"div",63),2&v){var f=e.oxw().$implicit;e.Q6J("ngIf",f.substanceName)}}function us(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Ch,2,1,"div",93),e.YNc(2,eu,1,1,"ng-template",null,129,e.W1O),e.qZA()),2&v){var f=F.$implicit,r=e.MAs(3);e.xp6(1),e.Q6J("ngIf",f.ingredientType)("ngIfElse",r)}}function rp(v,F){if(1&v&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",116),e._uU(4,"Product ID:"),e.qZA(),e._uU(5,"\xa0 "),e.YNc(6,sl,6,6,"span",63),e._uU(7," \xa0\xa0\xa0 "),e.YNc(8,Sl,6,6,"span",63),e.qZA(),e.TgZ(9,"div",117),e.TgZ(10,"span",116),e._uU(11,"Company Country:"),e.qZA(),e.TgZ(12,"span",118),e._uU(13,"\xa0 "),e.YNc(14,Af,2,1,"span",104),e.qZA(),e.qZA(),e.TgZ(15,"div"),e.TgZ(16,"span",116),e._uU(17,"Application:"),e.qZA(),e._uU(18,"\xa0 "),e.YNc(19,Pf,4,2,"span",93),e.YNc(20,Ju,2,1,"ng-template",null,110,e.W1O),e.qZA(),e.qZA(),e.TgZ(22,"mat-card-content"),e.TgZ(23,"div",119),e.TgZ(24,"div",120),e.TgZ(25,"div",121),e._uU(26," Product Name: "),e.qZA(),e.TgZ(27,"div",122),e.YNc(28,Cc,4,1,"div",104),e.qZA(),e.qZA(),e.TgZ(29,"div",120),e.TgZ(30,"div",121),e._uU(31," Product Type: "),e.qZA(),e.TgZ(32,"div",122),e._uU(33),e.qZA(),e.qZA(),e.qZA(),e.TgZ(34,"div",119),e.TgZ(35,"div",120),e.TgZ(36,"div",121),e._uU(37," Nonproprietary Name: "),e.qZA(),e.TgZ(38,"div",122),e._uU(39),e.qZA(),e.qZA(),e.TgZ(40,"div",120),e.TgZ(41,"div",121),e._uU(42," Route of Admin: "),e.qZA(),e.TgZ(43,"div",122),e._uU(44),e.qZA(),e.qZA(),e.qZA(),e.TgZ(45,"div",119),e.TgZ(46,"div",120),e.TgZ(47,"div",121),e._uU(48," Labeler Name (DUNS): "),e.qZA(),e.TgZ(49,"div",122),e.YNc(50,ip,3,2,"div",104),e.qZA(),e.qZA(),e.TgZ(51,"div",120),e.TgZ(52,"div",121),e._uU(53," City, State, Country: "),e.qZA(),e.TgZ(54,"div",122),e.YNc(55,sd,6,5,"div",104),e.qZA(),e.qZA(),e.qZA(),e.TgZ(56,"div",119),e.TgZ(57,"div",120),e.TgZ(58,"div",121),e._uU(59," Dosage Form: "),e.qZA(),e.TgZ(60,"div",122),e.YNc(61,Rr,2,1,"div",104),e.qZA(),e.qZA(),e.TgZ(62,"div",120),e.TgZ(63,"div",121),e._uU(64," Status: "),e.qZA(),e.TgZ(65,"div",122),e._uU(66),e.qZA(),e.qZA(),e.qZA(),e.YNc(67,Sc,11,2,"div",123),e.YNc(68,yh,13,8,"div",123),e.TgZ(69,"div",119),e.TgZ(70,"div",120),e.TgZ(71,"div",121),e._uU(72," Substance Name (Active): "),e.qZA(),e.TgZ(73,"div",122),e.TgZ(74,"ol",106),e.YNc(75,ap,2,1,"div",104),e.qZA(),e.qZA(),e.qZA(),e.TgZ(76,"div",120),e.TgZ(77,"div",121),e._uU(78," Substance Name (Inactive): "),e.qZA(),e.TgZ(79,"div",122),e.TgZ(80,"ol",106),e.YNc(81,us,4,2,"div",104),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=e.MAs(21),O=e.oxw(2);e.xp6(6),e.Q6J("ngIf","SPL"===f.fromtable),e.xp6(2),e.Q6J("ngIf","GSRS"===f.fromtable),e.xp6(6),e.Q6J("ngForOf",f.productCompanyAllList),e.xp6(5),e.Q6J("ngIf",f.appType&&f.appNumber)("ngIfElse",r),e.xp6(9),e.Q6J("ngForOf",f.productNameAllList),e.xp6(5),e.hij(" ",f.productType," "),e.xp6(6),e.hij(" ",f.nonProprietaryName," "),e.xp6(5),e.hij(" ",f.routeName," "),e.xp6(6),e.Q6J("ngForOf",f.productCompanyAllList),e.xp6(5),e.Q6J("ngForOf",f.productCompanyAllList),e.xp6(6),e.Q6J("ngForOf",f.productIngredientAllList),e.xp6(5),e.hij(" ",f.status," "),e.xp6(1),e.Q6J("ngIf",O.isAdmin),e.xp6(1),e.Q6J("ngIf",O.isAdmin),e.xp6(7),e.Q6J("ngForOf",f.productIngredientAllList),e.xp6(6),e.Q6J("ngForOf",f.productIngredientAllList)}}function Ef(v,F){if(1&v&&(e.TgZ(0,"div",115),e.YNc(1,rp,82,17,"mat-card",104),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngForOf",f.products)}}function ll(v,F){}var ro=function(){return[5,10,50,100]},ul=function(F){return{"bad-page":F}},Tc=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr,is,eo){(0,S.Z)(this,F),this.productService=f,this.authService=r,this.facetManagerService=O,this.configService=R,this.loadingService=ee,this.notificationService=Je,this.gaService=_t,this.overlayContainerService=Kt,this.activatedRoute=Un,this.router=ai,this.location=Pi,this.locationStrategy=ki,this.sanitizer=ha,this.utilsService=kr,this.dialog=is,this.titleService=eo,this.view="cards",this.sortValues=Ba.R,this.hasBackdrop=!1,this.isLoading=!0,this.isError=!1,this.dataSource=[],this.isComponentInit=!1,this.privateExport=!1,this.disableExport=!1,this.isLoggedIn=!1,this.isAdmin=!1,this.etag="",this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.isSearchEditable=!1,this.invalidPage=!1,this.iconSrcPath="",this.dailyMedUrl="",this.ascDescDir="desc",this.displayedColumns=["productNDC","productName","ingredientName","labelerName","country","status","productNameType","applicationNumber"],this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[]}return(0,t.Z)(F,[{key:"onPopState",value:function(r){var O=this;setTimeout(function(){O.router.url===O.previousState[0]&&O.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var r=this;this.facetManagerService.registerGetFacetsHandler(this.productService.getProductFacets),this.gaService.sendPageView("Browse Products"),this.titleService.setTitle("P:Browse Products"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"default",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var R=this.authService.getAuth().subscribe(function(ee){ee&&(r.isLoggedIn=!0),r.isAdmin=r.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(R),this.iconSrcPath="".concat(this.configService.environment.baseHref||"","assets/icons/fda/icon_dailymed.png"),this.dailyMedUrl="https://dailymed.nlm.nih.gov/dailymed/search.cfm?labeltype=all&query=",this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchProducts()}},{key:"searchProducts",value:function(){var r=this;this.loadingService.setLoading(!0);var R=this.productService.getProducts(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(ee){r.isError=!1,r.products=ee.content,r.dataSource=r.products,r.totalProducts=ee.total,r.etag=ee.etag,r.lastPage=ee.total%r.pageSize==0?ee.total/r.pageSize:Math.floor(ee.total/r.pageSize+1),ee.facets&&ee.facets.length>0&&(r.rawFacets=ee.facets),r.narrowSearchSuggestions={},r.matchTypes=[],r.narrowSearchSuggestionsCount=0,ee.narrowSearchSuggestions&&ee.narrowSearchSuggestions.length&&ee.narrowSearchSuggestions.forEach(function(Je){null==r.narrowSearchSuggestions[Je.matchType]&&(r.narrowSearchSuggestions[Je.matchType]=[],"WORD"===Je.matchType?r.matchTypes.unshift(Je.matchType):r.matchTypes.push(Je.matchType)),r.narrowSearchSuggestions[Je.matchType].push(Je),r.narrowSearchSuggestionsCount++}),r.matchTypes.sort(),r.separateAppTypeNumber()},function(ee){console.log("error");var Je={message:"There was an error trying to retrieve Products. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(Je)},function(){R.unsubscribe(),r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchProducts()}},{key:"resetSearch",value:function(){this.pageSize=10,this.pageIndex=0,this.privateSearchTerm="",this.searchProducts()}},{key:"customPage",value:function(r){if(this.validatePageInput(r)){this.invalidPage=!1;var O=Number(r.target.value)-1;this.pageIndex=O,this.gaService.sendEvent("productsContent","select:page-number","pager",O),this.populateUrlQueryParameters(),this.searchProducts()}}},{key:"validatePageInput",value:function(r){if(r&&r.target){var O=Number(r.target.value);if(!isNaN(Number(O))&&Number.isInteger(O)&&O<=this.lastPage&&O>0)return!0}return!1}},{key:"editAdvancedSearch",value:function(){var r=Jn.N.isAnalyticsPrivate?"Browse Product search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("Application Filtering","icon-button:edit-advanced-search",r),this.router.navigate(["/advanced-search"],{queryParams:{"g-search-hash":this.searchTermHash}})}},{key:"facetsParamsUpdated",value:function(r){this.pageIndex=0,this.privateFacetParams=r.facetParam,this.displayFacets=r.displayFacets,this.isFacetsParamsInit?this.searchProducts():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(r){}},{key:"sortData",value:function(r){var O=this;if(r.active){var R=this.displayedColumns.indexOf(r.active).toString();this.ascDescDir=r.direction,this.sortValues.forEach(function(ee){ee.displayedColumns&&ee.direction&&O.displayedColumns[R]===ee.displayedColumns&&O.ascDescDir===ee.direction&&(O.order=ee.value)}),this.searchProducts()}}},{key:"updateView",value:function(r){this.view=r.value}},{key:"changePage",value:function(r){var O,R;this.pageSize!==r.pageSize?(O="select:page-size",R=r.pageSize):this.pageIndex!==r.pageIndex&&(O="icon-button:page-number",R=r.pageIndex+1),this.gaService.sendEvent("productsContent",O,"pager",R),this.pageSize=r.pageSize,this.pageIndex=r.pageIndex,this.populateUrlQueryParameters(),this.searchProducts()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("productFiltering","icon-button:clear-search",Jn.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchProducts()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(r){r.removeFacet(r.type,r.bool,r.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var r={queryParams:{}};r.queryParams.searchTerm=this.privateSearchTerm,r.queryParams.pageSize=this.pageSize,r.queryParams.pageIndex=this.pageIndex,r.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var O=this.router.createUrlTree([],{queryParams:r.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(O.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"facetParams",get:function(){return this.privateFacetParams}},{key:"restricSearh",value:function(r){this.privateSearchTerm=r,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchProducts()}},{key:"export",value:function(){var r=this;if(this.etag){var O="xlsx",R=this.getApiExportUrl(this.etag,O);""!==this.authService.getUser()&&this.dialog.open(lt.L,{width:"700px",data:{extension:O,type:"BrowseProducts",entity:"products",hideOptionButtons:!0}}).afterClosed().subscribe(function(Je){var _t=Je.name,Kt=Je.id;_t&&""!==_t&&(r.loadingService.setLoading(!0),r.authService.startUserDownload(R,r.privateExport,_t+"."+O,Kt).subscribe(function(ai){r.loadingService.setLoading(!1),r.router.navigate(["/user-downloads/",ai.id])},function(ai){return r.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(r,O){return this.productService.getApiExportUrl(r,O)}},{key:"separateAppTypeNumber",value:function(){var r=this;this.products&&this.products.forEach(function(O,R){if(O.appTypeNumber){var Un,ee="",Je="",_t=!1,Kt=(0,Wo.Z)(O.appTypeNumber);try{for(Kt.s();!(Un=Kt.n()).done;){var ai=Un.value;ai&&(!0===r.isNumber(ai)?(_t=!0,O.appNumber=Je+=ai):!1===_t&&(O.appType=ee+=ai))}}catch(Pi){Kt.e(Pi)}finally{Kt.f()}}})}},{key:"isNumber",value:function(r){if(r){var O=Number(r);return!isNaN(O)}return!1}},{key:"openImageModal",value:function(r,O){var R=this,Je=this.dialog.open(un.oV,{height:"90%",width:"650px",panelClass:"structure-image-panel",data:{structure:O,uuid:O}});this.overlayContainer.style.zIndex="1002";var _t=Je.afterClosed().subscribe(function(){R.overlayContainer.style.zIndex=null,_t.unsubscribe()},function(){R.overlayContainer.style.zIndex=null,_t.unsubscribe()})}},{key:"getAppTypeNumberUrl",value:function(r,O){return'browse-applications?search=root_appType:"^'+r+'$" AND root_appNumber:"^'+O+'$"'}},{key:"processSubstanceSearch",value:function(r){this.privateSearchTerm=r,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(On.M),e.Y36(Me.e),e.Y36(gn.bH),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(jn.$),e.Y36(Fe.Xj),e.Y36(u.gz),e.Y36(u.F0),e.Y36(c.Ye),e.Y36(c.S$),e.Y36(mn.H7),e.Y36(ri.F),e.Y36(mt.uw),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-products-browse"]],hostBindings:function(f,r){1&f&&e.NdJ("popstate",function(R){return r.onPopState(R)},!1,e.Jf7)},decls:85,vars:42,consts:[["mode","side","opened",""],["configName","products","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],[1,"sort"],[3,"ngModel","selectionChange","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","productSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],[1,"responsive"],["mat-table","","matSort","","matSortDisableClear","",1,"font12px",3,"dataSource","matSortChange"],["matColumnDef","productNDC"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["class","width120px","mat-cell","",4,"matCellDef"],["matColumnDef","productName"],["mat-cell","",4,"matCellDef"],["matColumnDef","ingredientName"],["valign","top","mat-cell","",4,"matCellDef"],["matColumnDef","labelerName"],["matColumnDef","country"],["matColumnDef","status"],["matColumnDef","productNameType"],["matColumnDef","applicationNumber"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],["noRecordProduct",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[3,"value"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell","",1,"width120px"],[1,"padtop7px"],["target","_blank","alt","View SPL Product Record","title","View SPL Product Record",1,"substance-name",3,"routerLink"],[4,"ngIf","ngIfElse"],["noProdNDC",""],[1,"padtop15px","padbottom7px"],["target","_blank","alt","Go to DailyMed website","title","Go to DailyMed website",3,"href"],[3,"src"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon"],["target","_blank","alt","View Product Record",1,"substance-name",3,"routerLink"],["noProdNDCSRS",""],["target","_blank","matTooltip","Edit Product Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit Product Record",3,"routerLink"],["mat-cell",""],[4,"ngFor","ngForOf"],["valign","top","mat-cell",""],[1,"olstyle"],["target","_blank",3,"routerLink"],["mat-button","",1,"structure-parameters",3,"click"],[2,"padding","0px","margin","0px"],["noAppType",""],["target","_blank",3,"href"],[1,"approval-id"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[1,"font13px"],[1,"center"],[1,"colororange","font17px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],["class","row",4,"ngIf"],["target","_blank",1,"substance-name",3,"routerLink"],["svgIcon","open_in_new","matTooltip","opens in new window",1,"small-icon","margintop20px"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink",4,"ngIf"],["target","_blank","matTooltip","Edit GSRS Product Record",3,"routerLink"],[1,"colorlightblue","font14px"],["noIngredType",""],[1,""],[1,"colorgreen"]],template:function(f,r){if(1&f){var O=e.EpF();e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e.TgZ(3,"mat-sidenav-container"),e.TgZ(4,"mat-sidenav",0),e.TgZ(5,"app-facets-manager",1),e.NdJ("facetsParamsUpdated",function(_t){return r.facetsParamsUpdated(_t)})("facetsLoaded",function(_t){return r.facetsLoaded(_t)}),e.qZA(),e.qZA(),e.TgZ(6,"mat-sidenav-content"),e.TgZ(7,"div",2),e.YNc(8,hr,23,4,"div",3),e.YNc(9,ff,4,3,"ng-template",null,4,e.W1O),e.TgZ(11,"div",5),e.TgZ(12,"div",6),e.TgZ(13,"span",7),e._uU(14,"Browse Products"),e.qZA(),e.qZA(),e.TgZ(15,"mat-button-toggle-group",8),e.NdJ("change",function(_t){return r.updateView(_t)}),e.TgZ(16,"mat-button-toggle",9),e._UZ(17,"mat-icon",10),e.qZA(),e.TgZ(18,"mat-button-toggle",11),e._UZ(19,"mat-icon",12),e.qZA(),e.qZA(),e.TgZ(20,"mat-form-field",13),e.TgZ(21,"mat-label"),e._uU(22,"Sort By"),e.qZA(),e.TgZ(23,"mat-select",14),e.NdJ("selectionChange",function(){return r.searchProducts()})("ngModelChange",function(_t){return r.order=_t}),e.YNc(24,ig,2,2,"mat-option",15),e.qZA(),e.qZA(),e.YNc(25,Wd,4,0,"div",16),e._UZ(26,"div",17),e.TgZ(27,"div",18),e.TgZ(28,"mat-paginator",19,20),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(30,"div",21),e.TgZ(31,"span",22),e._uU(32,"Page: "),e.qZA(),e.TgZ(33,"mat-form-field",23),e.TgZ(34,"input",24,25),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(35).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(36,"span",22),e._uU(37),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(38,"div",26),e.TgZ(39,"app-product-text-search",27),e.NdJ("searchPerformed",function(_t){return r.processSubstanceSearch(_t)}),e.qZA(),e.qZA(),e.TgZ(40,"div",28),e.TgZ(41,"div",29),e.TgZ(42,"div",30),e.TgZ(43,"table",31),e.NdJ("matSortChange",function(_t){return r.sortData(_t)}),e.ynx(44,32),e.YNc(45,mf,2,0,"th",33),e.YNc(46,hf,3,2,"td",34),e.BQk(),e.ynx(47,35),e.YNc(48,Ys,2,0,"th",33),e.YNc(49,_f,2,1,"td",36),e.BQk(),e.ynx(50,37),e.YNc(51,gf,2,0,"th",33),e.YNc(52,vf,3,1,"td",38),e.BQk(),e.ynx(53,39),e.YNc(54,Xd,2,0,"th",33),e.YNc(55,ep,3,2,"td",36),e.BQk(),e.ynx(56,40),e.YNc(57,tp,2,0,"th",33),e.YNc(58,_h,2,1,"td",36),e.BQk(),e.ynx(59,41),e.YNc(60,Xl,2,0,"th",33),e.YNc(61,bf,2,1,"td",36),e.BQk(),e.ynx(62,42),e.YNc(63,Cf,2,0,"th",33),e.YNc(64,np,2,1,"td",36),e.BQk(),e.ynx(65,43),e.YNc(66,gh,2,0,"th",33),e.YNc(67,Hs,4,2,"td",36),e.BQk(),e.YNc(68,qu,1,0,"tr",44),e.YNc(69,xf,1,0,"tr",45),e.qZA(),e.qZA(),e.qZA(),e.YNc(70,Ef,2,1,"div",46),e.qZA(),e.TgZ(71,"div",5),e.TgZ(72,"div",18),e.TgZ(73,"mat-paginator",19,20),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(75,"div",21),e.TgZ(76,"span",22),e._uU(77,"Page: "),e.qZA(),e.TgZ(78,"mat-form-field",23),e.TgZ(79,"input",24,25),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(35).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(81,"span",22),e._uU(82),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(83,ll,0,0,"ng-template",null,47,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&f){var R=e.MAs(10),ee=e.MAs(84);e.xp6(5),e.Q6J("rawFacets",r.rawFacets),e.xp6(3),e.Q6J("ngIf",r.matchTypes&&r.matchTypes.length>0)("ngIfElse",R),e.xp6(7),e.Q6J("value",r.view),e.xp6(8),e.Q6J("ngModel",r.order),e.xp6(1),e.Q6J("ngForOf",r.sortValues),e.xp6(1),e.Q6J("ngIf",r.isAdmin),e.xp6(3),e.Q6J("length",r.totalProducts)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(32,ro))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(33,ul,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(35,ul,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,""),e.xp6(2),e.Q6J("searchValue",r.searchValue),e.xp6(1),e.Q6J("ngClass",r.view),e.xp6(3),e.Q6J("dataSource",r.products),e.xp6(25),e.Q6J("matHeaderRowDef",r.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",r.displayedColumns),e.xp6(1),e.Q6J("ngIf",r.products&&r.products.length)("ngIfElse",ee),e.xp6(3),e.Q6J("length",r.totalProducts)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(37,ro))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(38,ul,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(40,ul,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,"")}},directives:[nn.TM,nn.JX,qe.R,nn.Rh,c.O5,h.lW,He.p6,T.Hw,He.VK,c.sg,He.OP,u.yS,At.A9,At.Yi,s.gM,kt.KE,kt.hX,ne.gD,et.JJ,et.On,Xt.ey,X.NW,c.mk,It.Nt,jt,y.BZ,Ae.YE,y.w1,y.fO,y.ge,Ae.nU,y.Dz,y.ev,y.as,y.XQ,y.nj,y.Gk,o.a8,o.n5,o.dn],pipes:[c.uU],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--include-checkbox-border-color)} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--include-checkbox-bg-color)}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--exclude-checkbox-border-color)} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--exclude-checkbox-bg-color)}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:var(--primary-color);width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:var(--regular-red-color)}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid var(--regular-grey-color)}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid var(--regular-grey-color)}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:var(--link-primary-color);padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--pink-span-color)}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:var(--regular-blue-color);display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:var(--label-color);white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:var(--regular-transparent-color)}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:38%;max-width:38%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:62%;max-width:62%;padding:5px;font-size:13px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%], .font11px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--green-color)}.colororange[_ngcontent-%COMP%]{color:var(--regular-orange-color)}.colorlightblue[_ngcontent-%COMP%]{color:var(--blue-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid var(--light-orange-color)}.borderlightgray[_ngcontent-%COMP%]{border:1px solid var(--light-green-color)}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.padtop7px[_ngcontent-%COMP%]{padding-top:7px}.padtop15px[_ngcontent-%COMP%]{padding-top:15px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padbottom7px[_ngcontent-%COMP%]{padding-bottom:7px}.width120px[_ngcontent-%COMP%]{width:120px}.width40[_ngcontent-%COMP%]{width:40%}.width30[_ngcontent-%COMP%]{width:30%}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.totalstyle[_ngcontent-%COMP%]{display:inline-block;color:var(--white-color);border:1px solid var(--grey-border-color);background:var(--dark-grey-bg-color);box-shadow:0 0 5px -1px var(--box-shadow-color);vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid var(--regular-blue-color)}.olstyle[_ngcontent-%COMP%]{padding-left:0;margin-top:0}.small-icon[_ngcontent-%COMP%]{width:15px;height:15px;padding-left:5px}.margintopneg10[_ngcontent-%COMP%]{margin-top:-10px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),v}(),Wu=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.router=f,this.authService=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){R.authService.getAuth().pipe((0,ve.q)(1)).subscribe(function(Je){Je?R.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry").pipe((0,ve.q)(1)).subscribe(function(Kt){Kt?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/browse-products")),ee.complete())}):(ee.next(R.router.createUrlTree(["/login"],{queryParams:{path:O.url}})),ee.complete())})})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0),e.LFG(Me.e))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac}),v}(),tu=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.router=f,this.authService=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){R.authService.getAuth().pipe((0,ve.q)(1)).subscribe(function(Je){Je?R.authService.hasAnyRolesAsync("Updater","SuperUpdater").pipe((0,ve.q)(1)).subscribe(function(Kt){Kt?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/browse-products")),ee.complete())}):(ee.next(R.router.createUrlTree(["/login"],{queryParams:{path:O.url}})),ee.complete())})})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0),e.LFG(Me.e))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac}),v}(),ua=function(){var v=function(){function F(f){(0,S.Z)(this,F),this.productService=f}return(0,t.Z)(F,[{key:"canDeactivate",value:function(r){return!this.productService.isProductUpdated||!!confirm("You have unsaved changes! If you leave, your changes will be lost.")}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(On.M))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),cl=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.configService=f,this.router=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){var Je=R.configService.configData.loadedComponents||null;Je&&Je.products?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/home")),ee.complete())})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(hn.E),e.LFG(u.F0))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),Ac=[{path:"browse-products",component:Tc,canActivate:[cl]},{path:"product/register",component:Ru,canActivate:[cl,Wu],canDeactivate:[ua]},{path:"product/:id/edit",component:Ru,canActivate:[cl,tu],canDeactivate:[ua]},{path:"product/:id",component:Ud,canActivate:[cl]},{path:"product-elist/:id",component:df,canActivate:[cl]}],nu=function(){var v=function(){function F(f){(0,S.Z)(this,F),Ac.forEach(function(r){f.config[0].children.push(r)})}return(0,t.Z)(F,null,[{key:"forRoot",value:function(){return{ngModule:F,providers:[On.M,Wu,tu,ua,cl]}}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0))},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({providers:[Wu,tu,cl],imports:[[c.ez,u.Bz.forChild(Ac),Ht.g0,nn.SJ,o.QW,an.Bb,kt.lN,It.c,h.ot,T.Ps,$e.Hi,q.g,_.To,B.p9,y.p0,Ae.JX,X.TU,ne.LD,me.KP,mt.Is,Oe.ie,He.Tx,At.vV,s.AV,b.Nh,Ft._r,Y.Cq,et.u5,et.UX,Fe.U8,vl.f,Is,rs.O,gn.On,Kl]]}),v}();e.B6R(Ru,[h.lW,c.O5,T.Hw,s.gM,u.rH,h.zs,u.yS,c.mk,c.sg,o.a8,o.dn,kt.KE,It.Nt,et.Fj,et.JJ,et.On,Br.S,q.k,Ql],[c.uU]),e.B6R(Ql,[h.lW,c.PC,s.gM,T.Hw,Br.S,kt.KE,It.Nt,et.Fj,et.JJ,et.On,q.k,c.sg,Gl],[]),e.B6R(Uu,[h.lW,c.PC,s.gM,T.Hw,c.O5,je,c.sg,Br.S,B.oG,et.JJ,et.On,kt.KE,It.Nt,et.Fj],[c.uU]);var Vs=n(69638),zu=n(92938),Zf=["matSideNavInstance"];function lo(v,F){if(1&v&&(e.TgZ(0,"mat-option",27),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f.value),e.xp6(1),e.hij(" ",f.title," ")}}function Mh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",28),e.NdJ("click",function(){return e.CHM(f),e.oxw().toggleShowHelp()}),e._uU(2,"?"),e.qZA(),e.qZA()}}function xh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-card",29),e.TgZ(1,"div"),e._UZ(2,"span",30),e.TgZ(3,"button",31),e.NdJ("click",function(){return e.CHM(f),e.oxw().toggleShowHelp()}),e._UZ(4,"mat-icon",32),e.qZA(),e.qZA(),e.TgZ(5,"div"),e.TgZ(6,"p"),e.TgZ(7,"strong"),e._uU(8,"All"),e.qZA(),e._uU(9," - search in all indexed fields; wild cards work (e.g health*)."),e.qZA(),e.TgZ(10,"p"),e.TgZ(11,"strong"),e._uU(12,"Title"),e.qZA(),e._uU(13," - search for full words contained in the title field."),e.qZA(),e.TgZ(14,"p"),e.TgZ(15,"strong"),e._uU(16,"Trial Number"),e.qZA(),e._uU(17," - search for Trial Number exactly."),e.qZA(),e.TgZ(18,"p"),e.TgZ(19,"strong"),e._uU(20,"Substance Key"),e.qZA(),e._uU(21," - search for Substance Key exactly."),e.qZA(),e.qZA(),e.qZA()}}function cd(v,F){1&v&&e._UZ(0,"th",33)}var Sh=function(F){return["/edit-clinical-trial",F]},kf=function(){return{}};function Pc(v,F){if(1&v&&(e.TgZ(0,"td",34),e.TgZ(1,"a",35),e._uU(2,"Edit"),e.qZA(),e._uU(3,"\xa0"),e.TgZ(4,"a",36),e._uU(5,"+"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(3,Sh,f.trialNumber))("queryParams",e.DdM(5,kf)),e.xp6(3),e.Q6J("href","edit-clinical-trial/"+f.trialNumber,e.LSH)}}function Th(v,F){1&v&&(e.TgZ(0,"th",33),e._uU(1,"Trial Number"),e.qZA())}function Ah(v,F){if(1&v&&(e.TgZ(0,"td",34),e.TgZ(1,"a",37),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+f.trialNumber,e.LSH),e.xp6(1),e.Oqu(f.trialNumber)}}function Er(v,F){1&v&&(e.TgZ(0,"th",33),e._uU(1,"Title"),e.qZA())}function vo(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" (",f.clinicalTrialUSDrug.length,") ")}}function Dc(v,F){if(1&v&&(e.TgZ(0,"td",34),e._uU(1),e.YNc(2,vo,2,1,"span",12),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.title," "),e.xp6(1),e.Q6J("ngIf",f.clinicalTrialUSDrug)}}function dd(v,F){1&v&&(e.TgZ(0,"th",33),e._uU(1,"Last Updated"),e.qZA())}function op(v,F){if(1&v&&(e.TgZ(0,"td",34),e._uU(1),e.ALo(2,"date"),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij("",e.Dn7(2,1,f.lastUpdated,"MM/dd/yyyy","UTC")," ")}}function Ph(v,F){1&v&&e._UZ(0,"th",33)}function Dh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"td",38),e.TgZ(1,"span",39),e.NdJ("click",function(){var R=e.CHM(f).index;return e.oxw().deleteClinicalTrial(R)}),e._uU(2,"Del"),e.qZA(),e.qZA()}}function bu(v,F){1&v&&e._UZ(0,"tr",40)}function dr(v,F){1&v&&e._UZ(0,"tr",41)}var sp=function(F){return{collapsed:F}},lp=function(){return[5,10,50,100]},If=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki){var ha=this;(0,S.Z)(this,F),this.activatedRoute=f,this.clinicalTrialService=r,this.configService=O,this.loadingService=R,this.notificationService=ee,this.utilsService=Je,this.router=_t,this.authService=Kt,this.overlayContainerService=Un,this.location=ai,this.facetManagerService=Pi,this.gaService=ki,this.lodash=zu,this.privateSearchTerm="",this.privateSearchType="all",this.showHelp=!1,this.isLoading=!0,this.isError=!1,this.searchTypes=[],this.hasBackdrop=!1,this.searchText=[],this.toggle=[],this.subscriptions=[],this.dataSource=new y.by([]),this.showExactMatches=!1,this.isComponentInit=!1,this.displayFacets=[],this.isFacetsParamsInit=!1,this.isCollapsed=!0,this.isSearchEditable=!1,this.processResponsiveness=function(){window&&(window.innerWidth<1100?(ha.matSideNav.close(),ha.isCollapsed=!0,ha.hasBackdrop=!0):(ha.matSideNav.open(),ha.hasBackdrop=!1))}}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.facetManagerService.registerGetFacetsHandler(this.clinicalTrialService.getClinicalTrialsFacets),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.searchTerm||"",this.privateSearchType=this.activatedRoute.snapshot.queryParams.type||"all",this.privateSearchCutoff=Number(this.activatedRoute.snapshot.queryParams.cutoff)||0,this.order=this.activatedRoute.snapshot.queryParams.order||"$trialNumber",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.authService.getAuth().subscribe(function(R){r.isAdmin=r.authService.hasAnyRoles("Updater","SuperUpdater"),r.displayedColumns=r.isAdmin?["edit","trialNumber","title","lastUpdated","delete"]:["edit","trialNumber","title","lastUpdated"]}),this.searchTypes=[{title:"All",value:"all"},{title:"Title",value:"title"},{title:"Trial Number",value:"trialNumber"},{title:"Substance Key",value:"substanceKey"}],this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){var r=this,O=this.matSideNav.openedStart.subscribe(function(){r.utilsService.handleMatSidenavOpen(1100)});this.subscriptions.push(O);var R=this.matSideNav.closedStart.subscribe(function(){r.utilsService.handleMatSidenavClose()});this.subscriptions.push(R)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchClinicalTrials()}},{key:"changePage",value:function(r){this.pageSize=r.pageSize,this.pageIndex=r.pageIndex,this.populateUrlQueryParameters(),this.searchClinicalTrials()}},{key:"facetsParamsUpdated",value:function(r){this.pageIndex=0,this.privateFacetParams=r.facetParam,this.privateFacetParams=r.facetParam,this.isFacetsParamsInit?this.searchClinicalTrials():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(r){r>0?this.processResponsiveness():this.matSideNav.close()}},{key:"searchClinicalTrials",value:function(){var r=this,O=this.utilsService.hashCode(this.privateSearchTerm,this.privateSearchCutoff,this.privateSearchType,this.pageSize,this.order,this.privateFacetParams,this.pageIndex*this.pageSize);if(null===this.argsHash||this.argsHash!==O){this.isLoading=!0,this.loadingService.setLoading(!0),this.argsHash=O;var ee=this.clinicalTrialService.getClinicalTrials({searchTerm:this.privateSearchTerm,cutoff:this.privateSearchCutoff,type:this.privateSearchType,order:this.order,pageSize:this.pageSize,facets:this.privateFacetParams,skip:this.pageIndex*this.pageSize}).subscribe(function(Je){r.isError=!1,r.clinicalTrials=Je.content,r.totalClinicalTrials=Je.total,r.dataSource.data=r.clinicalTrials,Je.facets&&Je.facets.length>0&&(r.rawFacets=Je.facets)},function(){var Je={message:"There was an error trying to retrieve ClinicalTrials. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(Je)},function(){ee.unsubscribe(),r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.privateSearchTerm.trim(),this.populateUrlQueryParameters(),this.searchClinicalTrials()}},{key:"deleteClinicalTrial",value:function(r){var O=this;void 0!==this.clinicalTrials[r]&&zu.has(this.clinicalTrials[r],"trialNumber")?!confirm("Are you sure to delete "+this.clinicalTrials[r].trialNumber+"?")||(this.loadingService.setLoading(!0),this.clinicalTrialService.deleteClinicalTrial(this.clinicalTrials[r].trialNumber).subscribe(function(){O.isError=!1;var R=O.clinicalTrials.splice(r,1);O.dataSource.data=O.clinicalTrials;var ee={message:"You deleted the clinical trial record for:"+R[0].trialNumber,type:vn.k.success,milisecondsToShow:6e3};O.isError=!1,O.isLoading=!1,O.loadingService.setLoading(O.isLoading),O.notificationService.setNotification(ee)},function(){var R={message:"There was an error trying to delete a clinical trial.",type:vn.k.error,milisecondsToShow:6e3};O.isError=!0,O.isLoading=!1,O.loadingService.setLoading(O.isLoading),O.notificationService.setNotification(R)},function(){O.isLoading=!1,O.loadingService.setLoading(O.isLoading)})):alert("A trial number is required.")}},{key:"populateUrlQueryParameters",value:function(){var r={queryParams:{}};r.queryParams.searchTerm=this.privateSearchTerm,r.queryParams.cutoff=this.privateSearchCutoff,r.queryParams.type=this.privateSearchType,r.queryParams.order=this.order,r.queryParams.pageSize=this.pageSize,r.queryParams.pageIndex=this.pageIndex,r.queryParams.skip=this.pageIndex*this.pageSize;var O=this.router.createUrlTree([],{queryParams:r.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(O.toString())}},{key:"clearSearch",value:function(){this.privateSearchTerm="",this.pageIndex=0,this.populateUrlQueryParameters(),this.searchClinicalTrials()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(r){r.removeFacet(r.type,r.bool,r.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"searchTerm",get:function(){return this.privateSearchTerm},set:function(r){this.privateSearchTerm=r}},{key:"searchType",get:function(){return this.privateSearchType},set:function(r){this.privateSearchType=r}},{key:"openSideNav",value:function(){this.matSideNav.open()}},{key:"showAllRecords",value:function(){this.showExactMatches=!1,this.processResponsiveness()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"toggleShowHelp",value:function(){this.showHelp=!this.showHelp}},{key:"editAdvancedSearch",value:function(){var r={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],r)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(u.gz),e.Y36(Vs.m),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(ri.F),e.Y36(u.F0),e.Y36(Me.e),e.Y36(Fe.Xj),e.Y36(c.Ye),e.Y36(gn.bH),e.Y36(jn.$))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-clinical-trials-browse"]],viewQuery:function(f,r){var O;1&f&&e.Gf(Zf,7),2&f&&e.iGM(O=e.CRH())&&(r.matSideNav=O.first)},hostBindings:function(f,r){1&f&&e.NdJ("resize",function(R){return r.onResize(R)},!1,e.Jf7)},decls:45,vars:24,consts:[[3,"hasBackdrop","ngClass"],["mode","side","opened","false",3,"disableClose"],["matSideNavInstance",""],["configName","clinicaltrialsus","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"example-container","mat-elevation-z8","clinical-trials-browse-wrapper"],[1,"filter-form","clinical-trials-browse-filter-form"],[1,"clinical-trials-browse-filter-form-searchTerm"],["matInput","","placeholder","Search Term","name","searchTerm",3,"ngModel","ngModelChange","keyup.enter"],[1,"clinical-trials-browse-filter-form-searchType"],["name","searchType",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Search Clinical Trials",1,"clinical-trials-browse-filter-form-button-open",3,"click"],[4,"ngIf"],["class","clinical-trials-browse-show-help",4,"ngIf"],[3,"length","pageIndex","pageSize","pageSizeOptions","page"],["paginator",""],["mat-table","",1,"mat-elevation-z8",3,"dataSource"],["matColumnDef","edit"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","trialNumber"],["matColumnDef","title"],["matColumnDef","lastUpdated"],["matColumnDef","delete"],["mat-cell","","class","clinical-trials-browse-button-cell",4,"matCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[3,"value"],["mat-icon-button","","aria-label","Show Help",3,"click"],[1,"clinical-trials-browse-show-help"],[1,"middle-fill"],["mat-icon-button","",1,"clinical-trials-browse-filter-form-help-button-close",3,"click"],["svgIcon","close"],["mat-header-cell",""],["mat-cell",""],["title","Edit in this tab",1,"clinical-trials-browse-edit1",3,"routerLink","queryParams"],["target","_blank","title","Edit in new tab",1,"clinical-trials-browse-edit2",3,"href"],["target","_blank","title","see clinicaltrials.gov",3,"href"],["mat-cell","",1,"clinical-trials-browse-button-cell"],["aria-label","Del",1,"clinical-trials-browse-del",3,"click"],["mat-header-row",""],["mat-row",""]],template:function(f,r){1&f&&(e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(R){return r.facetsParamsUpdated(R)})("facetsLoaded",function(R){return r.facetsLoaded(R)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.TgZ(6,"h3"),e._uU(7,"Browse Clinical Trials"),e.qZA(),e.TgZ(8,"div"),e.TgZ(9,"form",5),e.TgZ(10,"mat-form-field",6),e.TgZ(11,"input",7),e.NdJ("ngModelChange",function(R){return r.searchTerm=R})("keyup.enter",function(){return r.setSearchTermValue()}),e.qZA(),e.qZA(),e.TgZ(12,"mat-form-field",8),e.TgZ(13,"mat-label"),e._uU(14,"Type"),e.qZA(),e.TgZ(15,"mat-select",9),e.NdJ("ngModelChange",function(R){return r.searchType=R}),e.YNc(16,lo,2,2,"mat-option",10),e.qZA(),e.qZA(),e.TgZ(17,"button",11),e.NdJ("click",function(){return r.setSearchTermValue()}),e._uU(18,"Go"),e.qZA(),e.YNc(19,Mh,3,0,"span",12),e.qZA(),e.YNc(20,xh,22,0,"mat-card",13),e.qZA(),e.TgZ(21,"div"),e.TgZ(22,"mat-paginator",14,15),e.NdJ("page",function(R){return r.changePage(R)}),e.qZA(),e.qZA(),e.TgZ(24,"table",16),e.ynx(25,17),e.YNc(26,cd,1,0,"th",18),e.YNc(27,Pc,6,6,"td",19),e.BQk(),e.ynx(28,20),e.YNc(29,Th,2,0,"th",18),e.YNc(30,Ah,3,2,"td",19),e.BQk(),e.ynx(31,21),e.YNc(32,Er,2,0,"th",18),e.YNc(33,Dc,3,2,"td",19),e.BQk(),e.ynx(34,22),e.YNc(35,dd,2,0,"th",18),e.YNc(36,op,3,5,"td",19),e.BQk(),e.ynx(37,23),e.YNc(38,Ph,1,0,"th",18),e.YNc(39,Dh,3,0,"td",24),e.BQk(),e.YNc(40,bu,1,0,"tr",25),e.YNc(41,dr,1,0,"tr",26),e.qZA(),e.TgZ(42,"div"),e.TgZ(43,"mat-paginator",14,15),e.NdJ("page",function(R){return r.changePage(R)}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&f&&(e.Q6J("hasBackdrop",r.hasBackdrop)("ngClass",e.VKq(20,sp,r.showExactMatches)),e.xp6(1),e.Q6J("disableClose",!0),e.xp6(2),e.Q6J("rawFacets",r.rawFacets),e.xp6(8),e.Q6J("ngModel",r.searchTerm),e.xp6(4),e.Q6J("ngModel",r.searchType),e.xp6(1),e.Q6J("ngForOf",r.searchTypes),e.xp6(3),e.Q6J("ngIf",!r.showHelp),e.xp6(1),e.Q6J("ngIf",r.showHelp),e.xp6(2),e.Q6J("length",r.totalClinicalTrials)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(22,lp)),e.xp6(2),e.Q6J("dataSource",r.dataSource),e.xp6(16),e.Q6J("matHeaderRowDef",r.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",r.displayedColumns),e.xp6(2),e.Q6J("length",r.totalClinicalTrials)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(23,lp)))},directives:[nn.TM,c.mk,nn.JX,qe.R,nn.Rh,et._Y,et.JL,et.F,kt.KE,It.Nt,et.Fj,et.JJ,et.On,kt.hX,ne.gD,c.sg,Xt.ey,h.lW,kt.R9,c.O5,o.a8,T.Hw,X.NW,y.BZ,y.w1,y.fO,y.ge,y.Dz,y.ev,u.yS,y.as,y.XQ,y.nj,y.Gk],pipes:[c.uU],styles:[".clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{text-decoration:none}.clinical-trials-browse-edit1[_ngcontent-%COMP%], .clinical-trials-browse-edit2[_ngcontent-%COMP%]{padding-left:.5em;padding-right:.5em}.clinical-trials-browse-del[_ngcontent-%COMP%]{color:var(--regular-red-color);cursor:pointer}.clinical-trials-browse-wrapper[_ngcontent-%COMP%]{padding:10px;margin:60px 30px 30px}.clinical-trials-browse-filter-form[_ngcontent-%COMP%], .clinical-trials-browse-filter-form-button[_ngcontent-%COMP%]{margin-right:10px}.clinical-trials-browse-filter-form-help-button-open[_ngcontent-%COMP%]{margin:10px}.clinical-trials-browse-filter-form-searchTerm[_ngcontent-%COMP%], .clinical-trials-browse-filter-form-searchType[_ngcontent-%COMP%]{margin-right:10px}.clinical-trials-browse-show-help[_ngcontent-%COMP%]{max-width:600px;float:left;clear:both;display:-ms-flexbox;display:flex}table[_ngcontent-%COMP%] td.mat-cell[_ngcontent-%COMP%]{vertical-align:top;text-align:left;padding:.5em}.clinical-trials-browse-button-cell[_ngcontent-%COMP%]{padding:0}.clinical-trials-browse-button-cell[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%] mat-button-base[_ngcontent-%COMP%]{position:relative;top:15px}.clinical-trials-browse-button-cell[_ngcontent-%COMP%] .mat-button-wrapper[_ngcontent-%COMP%]{color:var(--regular-red-color)}.clinical-trials-browse-wrapper[_ngcontent-%COMP%] mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0;border:none;overflow:visible;display:block;cursor:pointer}.clinical-trials-browse-wrapper[_ngcontent-%COMP%] .mat-expansion-panel-header[aria-disabled=true][_ngcontent-%COMP%], .clinical-trials-browse-wrapper[_ngcontent-%COMP%] .mat-expansion-panel-header[aria-disabled=false][_ngcontent-%COMP%]{color:var(--regular-black-color)}.clinical-trials-browse-wrapper[_ngcontent-%COMP%] mat-expansion-panel.clinical-trials-browse-peak-substances-expansion-panel[_ngcontent-%COMP%]{border:none;box-shadow:none}.clinical-trials-browse-substance-peak[_ngcontent-%COMP%]{overflow:auto;max-width:600px;margin-top:5px;clear:both}.clinical-trials-browse-substance-peak[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{white-space:nowrap}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px;border:5px solid var(--regular-magenta-color)}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap;border:5px solid var(--regular-yellow-color)}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid var(--regular-grey-color)}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid var(--regular-grey-color)}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}"]}),v}(),iu=n(50635),dl=n(49525),up=n(91640),Gu=n(63169);function Lf(v,F){if(1&v&&(e.TgZ(0,"mat-option",7),e.TgZ(1,"div"),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.s9C("title",f.key),e.Q6J("value",f.key),e.xp6(2),e.Oqu(f.key)}}function Ff(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Lf,3,3,"mat-option",6),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngForOf",f.suggestions)}}function js(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",8),e.NdJ("click",function(){return e.CHM(f),e.oxw().processSubstanceNameSearch()}),e._UZ(2,"mat-icon",9),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(1),e.Q6J("disabled",r.searchControl.invalid)}}var Cu=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.utilsService=f,this.router=r,this.miniSearchOutput=new e.vpe,this.searchControl=new et.NI,this.mainPathSegment="",this.showIcon=!1,this.suggestions=[]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.searchControl.valueChanges.pipe((0,pt.b)(500),(0,Ne.x)(),(0,Re.w)(function(O){return r.utilsService.getStructureSearchSuggestions(O)})).subscribe(function(O){r.substanceSuggestionsGroup=O,r.suggestionsFields=Object.keys(r.substanceSuggestionsGroup),r.suggestions=O.Name},function(O){}),this.mainPathSegment=this.getMainPathSegmentFromUrl(this.router.routerState.snapshot.url.substring(1)),this.router.events.subscribe(function(O){O instanceof u.m2&&(r.mainPathSegment=r.getMainPathSegmentFromUrl(O.url.substring(1)))})}},{key:"ngAfterViewInit",value:function(){var r=this;this.searchControl.setValue(this.myInitialSearch),this.trigger.panelClosingActions.subscribe(function(O){r.miniSearchOutput.emit({value:r.searchControl.value,myIndex:r.myIndex})})}},{key:"getMainPathSegmentFromUrl",value:function(r){return r.split("?")[0].split("/")[0]}},{key:"substanceSearchOptionSelected",value:function(r){this.miniSearchOutput.emit({value:r.option.value,myIndex:this.myIndex})}},{key:"processSubstanceNameSearch",value:function(){}},{key:"navigateToSearchResults",value:function(r){this.router.navigate(["/browse-substance"],{queryParams:r?{search_term:r}:null})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Gu.FW),e.Y36(u.F0))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-mini-search"]],viewQuery:function(f,r){var O;1&f&&e.Gf(an.ZL,7),2&f&&e.iGM(O=e.CRH())&&(r.trigger=O.first)},inputs:{myIndex:"myIndex",myInitialSearch:"myInitialSearch"},outputs:{miniSearchOutput:"miniSearchOutput"},decls:7,vars:6,consts:[[1,"search-form-field","space-right-small",3,"floatLabel"],["type","text","placeholder","Search","aria-label","Search substances","matInput","",1,"search",3,"title","formControl","matAutocomplete"],[3,"optionSelected"],["auto","matAutocomplete"],[4,"ngFor","ngForOf"],[4,"ngIf"],[3,"value","title",4,"ngFor","ngForOf"],[3,"value","title"],["mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"]],template:function(f,r){if(1&f&&(e.TgZ(0,"form"),e.TgZ(1,"mat-form-field",0),e._UZ(2,"input",1),e.TgZ(3,"mat-autocomplete",2,3),e.NdJ("optionSelected",function(ee){return r.substanceSearchOptionSelected(ee)}),e.YNc(5,Ff,2,1,"div",4),e.qZA(),e.qZA(),e.YNc(6,js,3,1,"span",5),e.qZA()),2&f){var O=e.MAs(4);e.xp6(1),e.Q6J("floatLabel","never"),e.xp6(1),e.s9C("title",r.searchControl.value),e.Q6J("formControl",r.searchControl)("matAutocomplete",O),e.xp6(3),e.Q6J("ngForOf",r.suggestionsFields),e.xp6(1),e.Q6J("ngIf",r.showIcon)}},directives:[et._Y,et.JL,et.F,kt.KE,It.Nt,et.Fj,an.ZL,et.JJ,et.oH,an.XC,c.sg,Xt.ey,c.O5,h.lW,T.Hw],styles:[".logo[_ngcontent-%COMP%]{height:35px;margin-right:20px}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%;width:auto}.nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%]{padding:0 5px}.nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]{font-size:16px;color:var(--nav-item-a-color);padding-bottom:7px;transition:all .15s linear;text-decoration:none;outline:none}.nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]:hover, .nav[_ngcontent-%COMP%] .nav-item[_ngcontent-%COMP%] > a.active[_ngcontent-%COMP%]{color:var(--regular-white-color);cursor:pointer;padding-bottom:5px;border-bottom:2px solid var(--regular-white-color);text-decoration:none}.search-form-field[_ngcontent-%COMP%]{width:300px}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.search-form-field[_ngcontent-%COMP%] .mat-form-field-label{font-size:16px;top:1em}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:var(--gray-color);overflow:hidden}"]}),v}(),au=function(){return["/browse-clinical-trials"]};function Nf(v,F){1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Clinical Trial with not found for editing."),e.qZA(),e.TgZ(3,"p"),e._uU(4,"Go to "),e.TgZ(5,"a",2),e._uU(6,"browse"),e.qZA(),e.qZA(),e.qZA()),2&v&&(e.xp6(5),e.Q6J("routerLink",e.DdM(1,au)))}function cp(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw(4);e.xp6(1),e.Oqu(f.clinicalTrial.title)}}function ru(v,F){if(1&v&&(e.TgZ(0,"p"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e._uU(3," \xa0"),e.YNc(4,cp,2,1,"span",1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+f.clinicalTrial.trialNumber,e.LSH),e.xp6(1),e.Oqu(f.clinicalTrial.trialNumber),e.xp6(2),e.Q6J("ngIf",f.clinicalTrial.title)}}function dp(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,ru,5,3,"p",1),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.trialNumber)}}function Js(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"span"),e.TgZ(2,"mat-checkbox",23),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).clinicalTrial.gsrsMatchingComplete=R}),e.TgZ(3,"label"),e._uU(4,"Matching Complete"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(2),e.Q6J("disabled",!r.isAdmin)("value",r.clinicalTrial.gsrsMatchingComplete)("ngModel",r.clinicalTrial.gsrsMatchingComplete)}}function Qs(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.hij(" (",f.clinicalTrial.clinicalTrialUSDrug.length,")")}}function Mu(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"button",24),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).addRow()}),e._uU(2,"Add"),e.qZA(),e.TgZ(3,"button",25),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).updateClinicalTrial()}),e._uU(4,"Update CT"),e.qZA(),e.qZA()}}function pp(v,F){1&v&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"ID"),e.qZA())}function ag(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-cell"),e.TgZ(1,"mat-form-field",26),e.TgZ(2,"input",27),e.NdJ("ngModelChange",function(R){return e.CHM(f).$implicit.id=R}),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(2),e.Q6J("value",r.id)("ngModel",r.id)}}function Ku(v,F){1&v&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Name"),e.qZA())}function fp(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.name," ")}}function Rf(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"app-mini-search",29),e.NdJ("miniSearchOutput",function(Je){return e.CHM(f),e.oxw(3).reportMiniSearchOutput(Je)}),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(),O=r.index,R=r.$implicit;e.xp6(1),e.Q6J("myIndex",O)("myInitialSearch",R&&R.name)}}function wh(v,F){if(1&v&&(e.TgZ(0,"mat-cell",28),e.YNc(1,fp,2,1,"span",1),e.YNc(2,Rf,2,2,"span",1),e.qZA()),2&v){var f=F.$implicit,r=e.oxw(2);e.s9C("title",f.name),e.xp6(1),e.Q6J("ngIf",!r.isAdmin),e.xp6(1),e.Q6J("ngIf",r.isAdmin)}}function mp(v,F){1&v&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Substance Key"),e.qZA())}function Oh(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.substanceKey," ")}}function Eh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"mat-form-field",26),e.TgZ(2,"input",30),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw().$implicit.substanceKey=R}),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw().$implicit;e.xp6(2),e.Q6J("value",r.substanceKey)("ngModel",r.substanceKey)}}function Zh(v,F){if(1&v&&(e.TgZ(0,"mat-cell"),e.YNc(1,Oh,2,1,"span",1),e.YNc(2,Eh,3,2,"span",1),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!f.isAdmin),e.xp6(1),e.Q6J("ngIf",f.isAdmin)}}function kh(v,F){1&v&&(e.TgZ(0,"mat-header-cell"),e._uU(1," Protected Match "),e.qZA())}function Ih(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.protectedMatch," ")}}function Uf(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-cell"),e.YNc(1,Ih,2,1,"span",1),e.TgZ(2,"span"),e.TgZ(3,"mat-checkbox",31),e.NdJ("ngModelChange",function(ee){return e.CHM(f).$implicit.protectedMatch=ee}),e.TgZ(4,"label"),e.TgZ(5,"mat-icon",32),e._uU(6,"lock"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!O.isAdmin),e.xp6(2),e.Q6J("disabled",!O.isAdmin)("value",r.protectedMatch)("ngModel",r.protectedMatch)}}function hp(v,F){1&v&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Org. Substance Key"),e.qZA())}function pd(v,F){if(1&v&&(e.TgZ(0,"mat-cell"),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.orgSubstanceKey," ")}}function Bf(v,F){1&v&&e._UZ(0,"mat-header-cell")}var _p=function(F){return["/substances",F]};function Lh(v,F){if(1&v&&(e.TgZ(0,"mat-cell"),e.TgZ(1,"a",33),e._uU(2,"link"),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(1,_p,f.substanceKey))}}function Yf(v,F){1&v&&(e.TgZ(0,"mat-header-cell"),e._uU(1,"Delete"),e.qZA())}function qf(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-cell"),e.TgZ(1,"button",34),e.NdJ("click",function(){var R=e.CHM(f).index;return e.oxw(2).removeRow(R)}),e._uU(2,"Del"),e.qZA(),e.qZA()}}function Hf(v,F){1&v&&e._UZ(0,"mat-header-row")}function xu(v,F){1&v&&e._UZ(0,"mat-row")}function gp(v,F){1&v&&e._UZ(0,"div")}function Vf(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",22),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+f.clinicalTrial.trialNumber,e.LSH),e.xp6(1),e.Oqu(f.clinicalTrial.trialNumber)}}function vp(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",35),e._uU(2,"XML"),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+f.clinicalTrial.trialNumber+"?displayxml=true",e.LSH)}}function Bo(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"a",36),e._uU(2,"History"),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("href","https://clinicaltrials.gov/ct2/history/"+f.clinicalTrial.trialNumber,e.LSH)}}function jf(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Oqu(f.clinicalTrial.title)}}function fd(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function md(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e.TgZ(2,"span",18),e._uU(3,"Intervention"),e.qZA(),e._uU(4,":"),e.qZA(),e.YNc(5,fd,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(5),e.Q6J("ngForOf",f.clinicalTrial.intervention.split("|"))}}function Al(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("Recruitment: ",f.clinicalTrial.recruitment,"")}}function Su(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function Jf(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Conditions:"),e.qZA(),e.YNc(3,Su,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.conditions.split("|"))}}function hd(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function _d(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Sponsors:"),e.qZA(),e.YNc(3,hd,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.sponsor.split("|"))}}function gd(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function yp(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Locations:"),e.qZA(),e.YNc(3,gd,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.locations.split("|"))}}function Qf(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function bp(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Sponsor:"),e.qZA(),e.YNc(3,Qf,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.fundedBys.split("|"))}}function wc(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function Fh(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Phases:"),e.qZA(),e.YNc(3,wc,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.phases.split("|"))}}function Wf(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function Nh(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Study Types:"),e.qZA(),e.YNc(3,Wf,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.studyTypes.split("|"))}}function Rh(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function zf(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Age Groups:"),e.qZA(),e.YNc(3,Rh,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.ageGroups.split("|"))}}function Cp(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("Gender: ",f.clinicalTrial.gender,"")}}function Gf(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("Allocation: ",f.clinicalTrial.allocation,"")}}function rg(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("Study Results: ",f.clinicalTrial.studyResults,"")}}function Kf(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("Enrollment: ",f.clinicalTrial.enrollment,"")}}function Uh(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function $f(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Other Ids:"),e.qZA(),e.YNc(3,Uh,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.otherIds.split("|"))}}function Bh(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("Acronym: ",f.clinicalTrial.acronym,"")}}function Pl(v,F){if(1&v&&(e.TgZ(0,"div",38),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Oqu(f)}}function Ws(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Outcome Measures:"),e.qZA(),e.YNc(3,Pl,2,1,"div",37),e.qZA()),2&v){var f=e.oxw(3);e.xp6(3),e.Q6J("ngForOf",f.clinicalTrial.outcomeMeasures.split("|"))}}function Yh(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1,"Url: "),e.TgZ(2,"a",22),e._uU(3),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(2),e.Q6J("href","https://clinicaltrials.gov/ct2/show/"+f.clinicalTrial.trialNumber,e.LSH),e.xp6(1),e.Oqu(f.clinicalTrial.url)}}function Xf(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.YNc(2,jf,2,1,"p",1),e.YNc(3,md,6,1,"div",1),e.YNc(4,Al,2,1,"p",1),e.YNc(5,Jf,4,1,"div",1),e.YNc(6,_d,4,1,"div",1),e.YNc(7,yp,4,1,"div",1),e.YNc(8,bp,4,1,"div",1),e.YNc(9,Fh,4,1,"div",1),e.YNc(10,Nh,4,1,"div",1),e.YNc(11,zf,4,1,"div",1),e.YNc(12,Cp,2,1,"p",1),e.YNc(13,Gf,2,1,"p",1),e.YNc(14,rg,2,1,"p",1),e.YNc(15,Kf,2,1,"p",1),e.YNc(16,$f,4,1,"div",1),e.YNc(17,Bh,2,1,"p",1),e.YNc(18,Ws,4,1,"div",1),e.YNc(19,Yh,4,2,"p",1),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(2),e.Q6J("ngIf",f.clinicalTrial.title),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.intervention),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.recruitment),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.conditions),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.sponsor),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.locations),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.fundedBys),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.phases),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.studyTypes),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.ageGroups),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.gender),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.allocation),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.studyResults),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.enrollment),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.otherIds),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.acronym),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.outcomeMeasures),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.trialNumber)}}function Mp(v,F){if(1&v&&(e.TgZ(0,"div",41),e._uU(1),e.ALo(2,"date"),e.TgZ(3,"span",42),e._uU(4,"ct.gov"),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("",e.Dn7(2,1,f.clinicalTrial.lastUpdated,"MM/dd/yyyy","UTC")," ")}}function em(v,F){if(1&v&&(e.TgZ(0,"div",43),e._uU(1),e.ALo(2,"date"),e.TgZ(3,"span",42),e._uU(4,"gsrs"),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.hij("",e.Dn7(2,1,f.clinicalTrial.gsrsUpdated,"MM/dd/yyyy","UTC")," ")}}function qh(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Updated:"),e.qZA(),e.YNc(3,Mp,5,5,"div",39),e.YNc(4,em,5,5,"div",40),e.qZA()),2&v){var f=e.oxw(2);e.xp6(3),e.Q6J("ngIf",f.clinicalTrial.lastUpdated),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.gsrsUpdated)}}function Hh(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.hij("First Received: ",e.Dn7(2,1,f.clinicalTrial.firstReceived,"MM/dd/yyyy","UTC"),"")}}function tm(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.hij("Study Start Date: ",e.Dn7(2,1,f.clinicalTrial.startDate,"MM/dd/yyyy","UTC"),"")}}function Vh(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.hij("Last Verified: ",f.clinicalTrial.lastVerified,"")}}function jh(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.hij("Primary Completion Date: ",e.Dn7(2,1,f.clinicalTrial.primaryCompletionDate,"MM/dd/yyyy","UTC"),"")}}function Jh(v,F){if(1&v&&(e.TgZ(0,"p"),e._uU(1),e.ALo(2,"date"),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.hij("Study Completion Date: ",e.Dn7(2,1,f.clinicalTrial.completionDate,"MM/dd/yyyy","UTC"),"")}}function Za(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2,"\xa0"),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.ALo(5,"json"),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(4),e.hij("clinicalTrial: ",e.lcZ(5,1,f.clinicalTrial),"")}}function nm(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2,"\xa0"),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.ALo(5,"json"),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(4),e.hij("datasource.data: ",e.lcZ(5,1,f.dataSource.data),"")}}function xp(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e._uU(2,"\xa0"),e.qZA(),e.TgZ(3,"div"),e._uU(4),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(4),e.hij("miniSearchOutputReported: ",f.miniSearchOutputReported,"")}}function im(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",44),e._uU(2),e.qZA(),e.YNc(3,Za,6,3,"div",1),e.YNc(4,nm,6,3,"div",1),e.YNc(5,xp,5,1,"div",1),e.qZA()),2&v){var f=e.oxw(2);e.xp6(2),e.hij("isAdmin: ",f.isAdmin,""),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial),e.xp6(1),e.Q6J("ngIf",f.dataSource.data),e.xp6(1),e.Q6J("ngIf",f.miniSearchOutputReported)}}function Tu(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,dp,2,1,"div",1),e.YNc(2,Js,5,3,"div",1),e.TgZ(3,"h3"),e._uU(4,"Substances in Clinical Trial "),e.YNc(5,Qs,2,1,"span",1),e.qZA(),e.YNc(6,Mu,5,0,"div",1),e.TgZ(7,"mat-table",3,4),e.ynx(9,5),e.YNc(10,pp,2,0,"mat-header-cell",6),e.YNc(11,ag,3,2,"mat-cell",7),e.BQk(),e.ynx(12,8),e.YNc(13,Ku,2,0,"mat-header-cell",6),e.YNc(14,wh,3,3,"mat-cell",9),e.BQk(),e.ynx(15,10),e.YNc(16,mp,2,0,"mat-header-cell",6),e.YNc(17,Zh,3,2,"mat-cell",7),e.BQk(),e.ynx(18,11),e.YNc(19,kh,2,0,"mat-header-cell",6),e.YNc(20,Uf,7,4,"mat-cell",7),e.BQk(),e.ynx(21,12),e.YNc(22,hp,2,0,"mat-header-cell",6),e.YNc(23,pd,2,1,"mat-cell",7),e.BQk(),e.ynx(24,13),e.YNc(25,Bf,1,0,"mat-header-cell",6),e.YNc(26,Lh,3,3,"mat-cell",7),e.BQk(),e.ynx(27,14),e.YNc(28,Yf,2,0,"mat-header-cell",6),e.YNc(29,qf,3,0,"mat-cell",7),e.BQk(),e.YNc(30,Hf,1,0,"mat-header-row",15),e.YNc(31,xu,1,0,"mat-row",16),e.qZA(),e.YNc(32,gp,1,0,"div",1),e.TgZ(33,"div",17),e.TgZ(34,"span",18),e._uU(35,"Trial Details"),e.qZA(),e._uU(36,"\xa0 "),e.YNc(37,Vf,3,2,"span",1),e._uU(38,"\xa0 "),e.YNc(39,vp,3,1,"span",1),e._uU(40,"\xa0 "),e.YNc(41,Bo,3,1,"span",1),e._uU(42,"\xa0 "),e.qZA(),e.TgZ(43,"div",19),e.TgZ(44,"div",20),e.YNc(45,Xf,20,18,"div",1),e.qZA(),e.TgZ(46,"div",21),e.YNc(47,qh,5,2,"div",1),e.YNc(48,Hh,3,5,"p",1),e.YNc(49,tm,3,5,"p",1),e.YNc(50,Vh,2,1,"p",1),e.YNc(51,jh,3,5,"p",1),e.YNc(52,Jh,3,5,"p",1),e.qZA(),e.qZA(),e.TgZ(53,"div"),e.TgZ(54,"p"),e._uU(55,"Go to "),e.TgZ(56,"a",2),e._uU(57,"browse"),e.qZA(),e.qZA(),e.qZA(),e.YNc(58,im,6,4,"div",1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.clinicalTrial),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial),e.xp6(3),e.Q6J("ngIf",f.clinicalTrial&&f.clinicalTrial.clinicalTrialUSDrug),e.xp6(1),e.Q6J("ngIf",f.isAdmin),e.xp6(1),e.Q6J("dataSource",f.dataSource),e.xp6(23),e.Q6J("matHeaderRowDef",f.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",f.displayedColumns),e.xp6(1),e.Q6J("ngIf",f.isAdmin),e.xp6(5),e.Q6J("ngIf",f.clinicalTrial.trialNumber),e.xp6(2),e.Q6J("ngIf",f.clinicalTrial.trialNumber),e.xp6(2),e.Q6J("ngIf",f.clinicalTrial.trialNumber),e.xp6(4),e.Q6J("ngIf",f.clinicalTrial),e.xp6(2),e.Q6J("ngIf",f.clinicalTrial.lastUpdated||f.clinicalTrial.lastUpdated),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.firstReceived),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.startDate),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.lastVerified),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.primaryCompletionDate),e.xp6(1),e.Q6J("ngIf",f.clinicalTrial.completionDate),e.xp6(4),e.Q6J("routerLink",e.DdM(20,au)),e.xp6(2),e.Q6J("ngIf",f.isTesting)}}var zs=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt){(0,S.Z)(this,F),this.activatedRoute=f,this.clinicalTrialService=r,this.sanitizer=O,this.configService=R,this.loadingService=ee,this.notificationService=Je,this.authService=_t,this.router=Kt,this.defaultSubstanceKeyType="UUID",this.agencySubstanceKeyType="UUID",this.isTesting=!1,this.dataSource=new y.by([]),this.bulkInputValue="",this.isLoading=!0,this.isError=!1,this.model={},this.miniSearchOutputReported="",this.subscriptions=[]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(O){r.isAdmin=O,r.displayedColumns=r.isAdmin?["id","name","substanceKey","protectedMatch","orgSubstanceKey","link","delete"]:["name","substanceKey","protectedMatch","orgSubstanceKey","link"]}),this.pageSize=10,this.pageIndex=0,this.activatedRoute.paramMap.subscribe(function(O){r._trialNumber=O.get("trialNumber"),r.getClinicalTrial()})}},{key:"ngAfterViewInit",value:function(){}},{key:"reportMiniSearchOutput",value:function(r){var O=this;this.clinicalTrialService.getSubstanceDetailsFromName(r.value).pipe((0,iu.U)(function(R){return R.content[0]}),(0,Re.w)(function(R){return O.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(R.uuid)})).subscribe(function(R){null===R?(O.dataSource.data[r.myIndex].substanceKey=null,O.dataSource.data[r.myIndex].orgSubstanceKey=null):(O.dataSource.data[r.myIndex].name=r.value,void 0!==R&&(O.dataSource.data[r.myIndex].substanceKey=R.uuid,O.dataSource.data[r.myIndex].orgSubstanceKey=O.getOrgSubstanceKeyFromSubstance(R)))},function(){O.dataSource.data[r.myIndex].substanceKey=null}),this.dataSource.data=this.dataSource.data}},{key:"reportMiniSearchOutput_OLD",value:function(r){var O=this;this.clinicalTrialService.getSubstanceDetailsFromName(r.value).subscribe(function(R){null===R||null===R.content||void 0===R.content[0]?(O.dataSource.data[r.myIndex].substanceKey=null,O.dataSource.data[r.myIndex].orgSubstanceKey=null):(O.dataSource.data[r.myIndex].name=r.value,void 0!==R.content[0]&&(O.dataSource.data[r.myIndex].substanceKey=R.content[0].uuid))},function(){O.dataSource.data[r.myIndex].substanceKey=null}),this.dataSource.data=this.dataSource.data}},{key:"addRow",value:function(){this.dataSource.data.push({id:"",name:"",substanceKey:"",substanceKeyType:this.defaultSubstanceKeyType}),this.dataSource.data=this.dataSource.data}},{key:"removeRow",value:function(r){this.dataSource.data.splice(r,1),this.dataSource.data=this.dataSource.data}},{key:"applyFilter",value:function(r){r=(r=r.trim()).toLowerCase(),this.dataSource.filter=r}},{key:"getClinicalTrial",value:function(){var r=this;this.loadingService.setLoading(!0),this.dataSource.data=[];var O=this.clinicalTrialService.getClinicalTrial(this._trialNumber),R=[],Je=(0,up.D)(O).pipe((0,iu.U)(function(_t){var Kt=_t[0];return r.isError=!1,null!==Kt.clinicalTrialUSDrug&&Kt.clinicalTrialUSDrug.forEach(function(Un){r.dataSource.data.push({id:Un.id,substanceKey:Un.substanceKey,substanceKeyType:Un.substanceKeyType,name:"",protectedMatch:Un.protectedMatch}),R.push(r.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(Un.substanceKey))}),r.clinicalTrial=Kt,R}),(0,dl.z)(function(_t){return(0,up.D)(_t).pipe((0,iu.U)(function(Kt){var Un={};Kt.forEach(function(Pi){Un[Pi.uuid]={substanceKey:Pi.uuid,orgSubstanceKey:r.getOrgSubstanceKeyFromSubstance(Pi),name:Pi._name}}),r.dataSource.data.forEach(function(Pi){Un[Pi.substanceKey]&&(Pi.name=Un[Pi.substanceKey].name,Pi.orgSubstanceKey=Un[Pi.substanceKey].orgSubstanceKey,console.log("element.orgSubstanceKey: "+Pi.orgSubstanceKey))});var ai=zu.cloneDeep(r.dataSource.data);r.dataSource.data=ai}))})).subscribe(function(){},function(){var _t={message:"There was an error trying to retrieve clinical trial. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(_t)},function(){r.isLoading=!1,r.loadingService.setLoading(r.isLoading)});this.subscriptions.push(Je)}},{key:"getOrgSubstanceKeyFromSubstance",value:function(r){var O=null;if(r.codes&&null!==r.codes&&r.codes.length>0){var ee,R=(0,Wo.Z)(r.codes);try{for(R.s();!(ee=R.n()).done;){var Je=ee.value;if(Je.codeSystem&&"BDNUM"===Je.codeSystem&&Je.type&&"PRIMARY"===Je.type){console.log("bdnum: "+Je.code),O=Je.code;break}}}catch(_t){R.e(_t)}finally{R.f()}}return O}},{key:"getClinicalTrialOLD2",value:function(){var r=this;this.loadingService.setLoading(!0),this.dataSource.data=[],console.log("XXXX ab"+this._trialNumber),this.clinicalTrialService.getClinicalTrial(this._trialNumber).subscribe(function(R){if(r.isError=!1,console.log("XXXX ac"+R),null!==R.clinicalTrialUSDrug){var ee=[];R.clinicalTrialUSDrug.forEach(function(_t){r.dataSource.data.push({id:_t.id,substanceKey:_t.substanceKey,substanceKeyType:_t.substanceKeyType,name:null,protectedMatch:_t.protectedMatch}),ee.push(r.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(_t.substanceKey))}),(0,up.D)(ee).subscribe({next:function(Kt){var Un={};Kt.forEach(function(ai){Un[ai.uuid]={substanceKey:ai.uuid,name:ai._name}}),console.log("complements: "),console.log(Un),r.dataSource.data.forEach(function(ai){console.log("sk: "),console.log(ai.substanceKey),console.log("name: "),console.log(Un[ai.substanceKey].name),ai.name=Un[ai.substanceKey].name})},complete:function(){return console.log("This is how it ends!")}}),r.clinicalTrial=R,r.dataSource.data=r.dataSource.data,console.log("this.dataSource.data"),console.log(r.dataSource.data)}},function(){var R={message:"There was an error trying to retrieve clinical trial. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(R)},function(){r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"getClinicalTrialOLD1",value:function(){var r=this;this.loadingService.setLoading(!0),this.dataSource.data=[],console.log("XXXX ab"+this._trialNumber),this.clinicalTrialService.getClinicalTrial(this._trialNumber).subscribe(function(R){r.isError=!1,console.log("XXXX ac"+R),null!==R.clinicalTrialUSDrug&&(R.clinicalTrialUSDrug.forEach(function(ee){var Je=null;r.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(ee.substanceKey).subscribe(function(Kt){Je=Kt._name,console.log("substanceName: "+Je)}),r.dataSource.data.push({id:ee.id,substanceKey:ee.substanceKey,substanceKeyType:ee.substanceKeyType,name:Je,protectedMatch:ee.protectedMatch})}),r.clinicalTrial=R,r.dataSource.data=r.dataSource.data,console.log("this.dataSource.data"),console.log(r.dataSource.data))},function(){var R={message:"There was an error trying to retrieve clinical trial. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(R)},function(){r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"updateClinicalTrial",value:function(){var r=this;this.loadingService.setLoading(!0);var O=zu.cloneDeep(this.clinicalTrial),R=[];this.dataSource.data.forEach(function(ee){var Je={};Je.id=ee.id,Je.trialNumber=ee.trialNumber,Je.substanceKey=ee.substanceKey,Je.substanceKeyType=ee.substanceKeyType,Je.protectedMatch=ee.protectedMatch,R.push(Je)}),O.clinicalTrialUSDrug=R,this.clinicalTrialService.updateClinicalTrial(O).subscribe(function(ee){r.getClinicalTrial();var _t={message:"Success",type:vn.k.success,milisecondsToShow:6e3};r.isError=!1,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(_t)},function(ee){var Je="There was an error trying to update clinical trial.";null!=ee.error.errors&&ee.error.errors.forEach(function(Kt){Kt&&(Je=Je+" "+Kt)}),null!=ee.error.validationMessages&&ee.error.validationMessages.forEach(function(Kt){null!==Kt.message&&(Je=Je+" "+Kt.message)});var _t={message:Je,type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(_t)},function(){r.isLoading=!1,r.loadingService.setLoading(r.isLoading)}).add(function(){console.log("Inside empty add method.")})}},{key:"copyInputMessage",value:function(r){r.select(),document.execCommand("copy")}},{key:"substancesToClipboard1a",value:function(){var r=[];this.dataSource.data.forEach(function(O){r.push(O.substanceKey)}),this.copyTextAreaToClipBoard(r.join("\n"))}},{key:"substancesToClipboard1b",value:function(){var r=[];this.dataSource.data.forEach(function(O){r.push(O.substanceKey)}),this.copyTextAreaToClipBoard(r.join("; "))}},{key:"substancesToClipboard2a",value:function(){var r=[];this.dataSource.data.forEach(function(O){r.push(O.name+"\t"+O.substanceKey)}),this.copyTextAreaToClipBoard(r.join("\n"))}},{key:"substancesToClipboard2b",value:function(){var r=[],O=[];this.dataSource.data.forEach(function(R){r.push(R.name),O.push(R.substanceKey)}),this.copyTextAreaToClipBoard(r.join("; ")+"\t"+O.join("; "))}},{key:"substancesToClipboard3a",value:function(){var r=this,O=[];this.dataSource.data.forEach(function(R){O.push(r._trialNumber+"\t"+R.name+"\t"+R.substanceKey)}),this.copyTextAreaToClipBoard(O.join("\n"))}},{key:"substancesToClipboard3b",value:function(){var r=[],O=[];this.dataSource.data.forEach(function(R){r.push(R.name),O.push(R.substanceKey)}),this.copyTextAreaToClipBoard(this._trialNumber+"\t"+r.join("; ")+"\t"+O.join("; "))}},{key:"copyTextAreaToClipBoard",value:function(r){var O=r.replace(/<\/?[^>]+(>|$)/g,""),R=document.createElement("TEXTAREA");R.value=O,document.body.appendChild(R),R.select(),document.execCommand("copy"),document.body.removeChild(R)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(u.gz),e.Y36(Vs.m),e.Y36(mn.H7),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(Me.e),e.Y36(u.F0))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-clinical-trial-edit"]],viewQuery:function(f,r){var O;1&f&&e.Gf(y.BZ,5),2&f&&e.iGM(O=e.CRH())&&(r.table=O.first)},decls:3,vars:2,consts:[[1,"example-container","mat-elevation-z8","clinical-trial-edit-page"],[4,"ngIf"],["title","Go to browse",3,"routerLink"],[3,"dataSource"],["table",""],["matColumnDef","id",1,"id-container"],[4,"matHeaderCellDef"],[4,"matCellDef"],["matColumnDef","name"],[3,"title",4,"matCellDef"],["matColumnDef","substanceKey"],["matColumnDef","protectedMatch"],["matColumnDef","orgSubstanceKey"],["matColumnDef","link"],["matColumnDef","delete"],[4,"matHeaderRowDef"],[4,"matRowDef","matRowDefColumns"],[1,"trial-detailsheader"],[1,"emphasize"],[1,"container"],[1,"trial-detailsone"],[1,"trial-detailstwo"],["target","_blank","title","see clinicaltrials.gov",3,"href"],[1,"match-complete-checkbox",3,"disabled","value","ngModel","ngModelChange"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Add",3,"click"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Update Clinical Trial",3,"click"],["floatLabel","never"],["disabled","","matInput","","placeholder","id",3,"value","ngModel","ngModelChange"],[3,"title"],[3,"myIndex","myInitialSearch","miniSearchOutput"],["matInput","","placeholder","substanceKey",3,"value","ngModel","ngModelChange"],[1,"protected-match-checkbox",3,"disabled","value","ngModel","ngModelChange"],["role","img","aria-hidden","true",1,"mat-icon","material-icons","protected-match-icon"],["target","_blank",3,"routerLink"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Del",3,"click"],["target","_blank","title","see XML from clinicaltrials.gov",3,"href"],["target","_blank","title","see history on clinicaltrials.gov",3,"href"],["class","indent-list",4,"ngFor","ngForOf"],[1,"indent-list"],["class","indent-list","title","Last updated by CT.gov",4,"ngIf"],["class","indent-list","title","Last updated on gsrs",4,"ngIf"],["title","Last updated by CT.gov",1,"indent-list"],[1,"small-text"],["title","Last updated on gsrs",1,"indent-list"],[1,"top-spacer"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.YNc(1,Nf,7,2,"div",1),e.YNc(2,Tu,59,21,"div",1),e.qZA()),2&f&&(e.xp6(1),e.Q6J("ngIf",!r.clinicalTrial),e.xp6(1),e.Q6J("ngIf",r.clinicalTrial))},directives:[c.O5,u.yS,B.oG,et.JJ,et.On,h.lW,kt.R9,y.BZ,y.w1,y.fO,y.ge,y.Dz,y.ev,kt.KE,It.Nt,et.Fj,Cu,T.Hw,y.as,y.XQ,y.nj,y.Gk,c.sg],pipes:[c.uU,c.Ts],styles:[".example-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:300px}.example-header[_ngcontent-%COMP%]{min-height:64px;padding:8px 24px 0}.mat-form-field[_ngcontent-%COMP%]{font-size:14px;width:100%}.mat-table[_ngcontent-%COMP%]{overflow:auto;max-height:750px;margin-bottom:1em}mat-header-cell[_ngcontent-%COMP%], mat-cell[_ngcontent-%COMP%]{margin:.1em .2em}button[_ngcontent-%COMP%]{margin-right:1em}.clinical-trial-edit-page[_ngcontent-%COMP%]{padding:10px;margin:60px 30px 30px}.indent-list[_ngcontent-%COMP%]{margin-left:2em}.top-spacer[_ngcontent-%COMP%]{margin-top:50px}.id-container[_ngcontent-%COMP%]{width:30px}.protected-match-checkbox[_ngcontent-%COMP%]{margin-left:15px}.protected-match-icon[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.match-complete-checkbox[_ngcontent-%COMP%]{margin-left:15px}.small-text[_ngcontent-%COMP%]{font-size:80%}.emphasize[_ngcontent-%COMP%]{font-weight:700}.trial-detailsheader[_ngcontent-%COMP%]{margin-top:2em;margin-bottom:1em}.trial-detailsone[_ngcontent-%COMP%]{border:1px solid var(--box-shadow-color-3);padding:0 1em 1em .5em;float:left;overflow:auto;max-height:300px;max-width:500px;margin-right:1em}.container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.trial-detailstwo[_ngcontent-%COMP%]{border:1px solid var(--box-shadow-color-3);padding:0 1em 1em .5em;float:left;overflow:auto;max-height:300px;max-width:400px;margin-right:1em}.copy-button[_ngcontent-%COMP%]{padding:.2em}"]}),v}();function am(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"p"),e._uU(2,"Add/Update a Clinical Trial from JSON"),e.qZA(),e.TgZ(3,"form",2),e.TgZ(4,"mat-form-field",3),e.TgZ(5,"textarea",4),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw().json=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(6,"button",5),e.NdJ("click",function(){return e.CHM(f),e.oxw().addClinicalTrial()}),e._uU(7,"Add CT"),e.qZA(),e.TgZ(8,"button",6),e.NdJ("click",function(){return e.CHM(f),e.oxw().updateClinicalTrial()}),e._uU(9,"Update CT"),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(5),e.Q6J("ngModel",r.json)}}function Qh(v,F){1&v&&(e.TgZ(0,"div"),e._uU(1," You must have permission to add/update a Clinical Trial. "),e.qZA())}var Sp=function(){var v=function(){function F(f,r,O,R,ee,Je){(0,S.Z)(this,F),this.clinicalTrialService=f,this.sanitizer=r,this.configService=O,this.loadingService=R,this.notificationService=ee,this.authService=Je,this.isTesting=!1,this.isLoading=!0,this.isError=!1,this.json=""}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(O){r.canEdit=O})}},{key:"addClinicalTrial",value:function(){var r=this;this.loadingService.setLoading(!0),this.clinicalTrialService.addClinicalTrial(this.json).subscribe(function(O){r.isError=!1;var R={message:"You added a clinical trial record.",type:vn.k.success,milisecondsToShow:6e3};r.isError=!1,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(R)},function(O){var R={message:"There was an error trying to add a clinical trial.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(R)},function(){r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"updateClinicalTrial",value:function(){var r=this;this.loadingService.setLoading(!0),this.clinicalTrialService.updateClinicalTrial(this.json).subscribe(function(O){r.isError=!1;var R={message:"You updated a clinical trial record.",type:vn.k.success,milisecondsToShow:6e3};r.isError=!1,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(R)},function(O){var R={message:"There was an error trying to update a clinical trial.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(R)},function(){r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Vs.m),e.Y36(mn.H7),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(Me.e))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-clinical-add"]],decls:3,vars:2,consts:[[1,"wrapper-container","example-container","mat-elevation-z8"],[4,"ngIf"],[1,"json-add-form"],[1,"json-add-form-field"],["matInput","","placeholder","JSON","name","json",3,"ngModel","ngModelChange"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Add Clinical Trial",1,"clinical-trial-action-button",3,"click"],["mat-flat-button","","color","primary","matSuffix","","aria-label","Update Clinical Trial",1,"clinical-trial-action-button",3,"click"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.YNc(1,am,10,1,"div",1),e.YNc(2,Qh,2,0,"div",1),e.qZA()),2&f&&(e.xp6(1),e.Q6J("ngIf",r.canEdit),e.xp6(1),e.Q6J("ngIf",!r.canEdit))},directives:[c.O5,et._Y,et.JL,et.F,kt.KE,It.Nt,et.Fj,et.JJ,et.On,h.lW,kt.R9],styles:[".wrapper-container[_ngcontent-%COMP%]{padding:10px;margin:60px 30px 30px}.json-add-form-field[_ngcontent-%COMP%]{width:100%;min-height:40px}.clinical-trial-action-button[_ngcontent-%COMP%]{margin-right:10px}"]}),v}(),Yo=function(){var v=function(){function F(f,r,O,R,ee,Je,_t){(0,S.Z)(this,F),this.clinicalTrialService=f,this.activatedRoute=r,this.loadingService=O,this.mainNotificationService=R,this.router=ee,this.gaService=Je,this.utilsService=_t}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.trialNumber=this.activatedRoute.snapshot.params.trialNumber,null!=this.trialNumber?this.getClinicalTrialDetails():this.handleSubstanceRetrivalError()}},{key:"getClinicalTrialDetails",value:function(){var r=this;this.clinicalTrialService.getClinicalTrialDetails(this.trialNumber,this.src).subscribe(function(O){r.clinicalTrial=O},function(O){r.handleSubstanceRetrivalError()})}},{key:"handleSubstanceRetrivalError",value:function(){var r=this;this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:vn.k.error,milisecondsToShow:4e3}),setTimeout(function(){r.router.navigate(["/browse-substance"])},5e3)}},{key:"getSafeStructureImgUrl",value:function(r){var O=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(r,O,!0)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Vs.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-clinical-trial-details-base"]],decls:0,vars:0,template:function(f,r){},styles:[""]}),v}(),Tp=function(F){return["/edit-clinical-trial",F]},rm=function(){return{}};function Ap(v,F){if(1&v&&(e.TgZ(0,"a",24),e._UZ(1,"mat-icon",25),e.qZA()),2&v){var f=e.oxw(3);e.Q6J("routerLink",e.VKq(2,Tp,f.clinicalTrial.trialNumber))("queryParams",e.DdM(4,rm))}}function og(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(1),e.AsE(" ",r+1,".",f," ")}}function om(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,og,2,2,"div",26),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Q6J("ngForOf",f.clinicalTrial.locationList)}}function sg(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Oqu(f.appType),e.xp6(2),e.Oqu(f.appNumber),e.xp6(2),e.Oqu(f.center),e.xp6(2),e.Oqu(f.decision),e.xp6(2),e.Oqu(f.decisionDate)}}function vd(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"table",27),e.TgZ(2,"thead"),e.TgZ(3,"tr",28),e.TgZ(4,"th",29),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",30),e._uU(7,"Application Type"),e.qZA(),e.TgZ(8,"th",30),e._uU(9,"Application Number"),e.qZA(),e.TgZ(10,"th",31),e._uU(11,"Center"),e.qZA(),e.TgZ(12,"th",30),e._uU(13,"Decision"),e.qZA(),e.TgZ(14,"th",30),e._uU(15,"Decision Date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"tbody"),e.YNc(17,sg,13,6,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(17),e.Q6J("ngForOf",f.clinicalTrial.clinicalTrialApplicationList)}}function yd(v,F){1&v&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Application Data for this Clinical Trial "),e.qZA())}var Pp=function(F){return["/substances",F]};function Dp(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",32),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,Pp,f.substanceUuid)),e.xp6(1),e.Oqu(f.substanceDisplayName)}}function wp(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"img",33),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",f.substanceUuid)}}function Wh(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Dp,3,4,"div",0),e.qZA(),e.TgZ(5,"td"),e.YNc(6,wp,2,1,"div",0),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Q6J("ngIf",f.substanceUuid),e.xp6(2),e.Q6J("ngIf",f.substanceUuid)}}function sm(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"table",27),e.TgZ(2,"thead"),e.TgZ(3,"tr",28),e.TgZ(4,"th",29),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",30),e._uU(7,"Substance Name"),e.qZA(),e.TgZ(8,"th",30),e._uU(9,"Structure"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(10,"tbody"),e.YNc(11,Wh,7,3,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(3);e.xp6(11),e.Q6J("ngForOf",f.clinicalTrial.clinicalTrialUSDrug)}}function zh(v,F){1&v&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Substance Data for this Clinical Trial "),e.qZA())}function Gh(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"div",4),e.TgZ(3,"div",5),e._UZ(4,"img",6),e._uU(5," \xa0"),e.TgZ(6,"b"),e._uU(7,"Clinical Trial US Details"),e.qZA(),e._uU(8," \xa0\xa0\xa0\xa0 "),e.YNc(9,Ap,2,5,"a",7),e.qZA(),e.TgZ(10,"div",8),e.TgZ(11,"div",9),e._uU(12," Trial Number: "),e.qZA(),e.TgZ(13,"div",10),e.TgZ(14,"a",11),e.TgZ(15,"span",12),e._uU(16),e.qZA(),e.qZA(),e._uU(17," \xa0\xa0\xa0 "),e.qZA(),e.qZA(),e.TgZ(18,"div",8),e.TgZ(19,"div",9),e._uU(20," Title: "),e.qZA(),e.TgZ(21,"div",10),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",8),e.TgZ(24,"div",9),e._uU(25," Sponsor Name: "),e.qZA(),e.TgZ(26,"div",10),e._uU(27),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(28,"div",13),e.TgZ(29,"div",14),e.TgZ(30,"mat-tab-group"),e.TgZ(31,"mat-tab",15),e.TgZ(32,"div",13),e.TgZ(33,"mat-card"),e.TgZ(34,"div",16),e._uU(35,"Clinical Trial US"),e.qZA(),e.TgZ(36,"mat-card-content"),e.TgZ(37,"div",8),e.TgZ(38,"div",17),e.TgZ(39,"div",18),e._uU(40," Trial Number: "),e.qZA(),e.TgZ(41,"div",19),e.TgZ(42,"a",11),e.TgZ(43,"span",12),e._uU(44),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(45,"div",17),e.TgZ(46,"div",18),e._uU(47," Recruitment: "),e.qZA(),e.TgZ(48,"div",19),e._uU(49),e.qZA(),e.qZA(),e.qZA(),e.TgZ(50,"div",8),e.TgZ(51,"div",17),e.TgZ(52,"div",18),e._uU(53," Title: "),e.qZA(),e.TgZ(54,"div",19),e._uU(55),e.qZA(),e.qZA(),e.TgZ(56,"div",17),e.TgZ(57,"div",18),e._uU(58," Conditions: "),e.qZA(),e.TgZ(59,"div",19),e._uU(60),e.qZA(),e.qZA(),e.qZA(),e.TgZ(61,"div",8),e.TgZ(62,"div",17),e.TgZ(63,"div",18),e._uU(64," Sponsor Name: "),e.qZA(),e.TgZ(65,"div",19),e._uU(66),e.qZA(),e.qZA(),e.TgZ(67,"div",17),e.TgZ(68,"div",18),e._uU(69," Intervention: "),e.qZA(),e.TgZ(70,"div",19),e._uU(71),e.qZA(),e.qZA(),e.qZA(),e.TgZ(72,"div",8),e.TgZ(73,"div",17),e.TgZ(74,"div",18),e._uU(75," Funded Bys: "),e.qZA(),e.TgZ(76,"div",19),e._uU(77),e.qZA(),e.qZA(),e.TgZ(78,"div",17),e.TgZ(79,"div",18),e._uU(80," Phases: "),e.qZA(),e.TgZ(81,"div",19),e._uU(82),e.qZA(),e.qZA(),e.qZA(),e.TgZ(83,"div",8),e.TgZ(84,"div",17),e.TgZ(85,"div",18),e._uU(86," Study Types: "),e.qZA(),e.TgZ(87,"div",19),e._uU(88),e.qZA(),e.qZA(),e.TgZ(89,"div",17),e.TgZ(90,"div",18),e._uU(91," Age Groups: "),e.qZA(),e.TgZ(92,"div",19),e._uU(93),e.qZA(),e.qZA(),e.qZA(),e.TgZ(94,"div",8),e.TgZ(95,"div",17),e.TgZ(96,"div",18),e._uU(97," Study Designs: "),e.qZA(),e.TgZ(98,"div",19),e._uU(99),e.qZA(),e.qZA(),e.TgZ(100,"div",17),e.TgZ(101,"div",18),e._uU(102," Gender: "),e.qZA(),e.TgZ(103,"div",19),e._uU(104),e.qZA(),e.qZA(),e.qZA(),e.TgZ(105,"div",8),e.TgZ(106,"div",17),e.TgZ(107,"div",18),e._uU(108," Study Results: "),e.qZA(),e.TgZ(109,"div",19),e._uU(110),e.qZA(),e.qZA(),e.TgZ(111,"div",17),e.TgZ(112,"div",18),e._uU(113," Enrollment: "),e.qZA(),e.TgZ(114,"div",19),e._uU(115),e.qZA(),e.qZA(),e.qZA(),e.TgZ(116,"div",8),e.TgZ(117,"div",17),e.TgZ(118,"div",18),e._uU(119," Other Ids: "),e.qZA(),e.TgZ(120,"div",19),e._uU(121),e.qZA(),e.qZA(),e.TgZ(122,"div",17),e.TgZ(123,"div",18),e._uU(124," Acronym: "),e.qZA(),e.TgZ(125,"div",19),e._uU(126),e.qZA(),e.qZA(),e.qZA(),e.TgZ(127,"div",8),e.TgZ(128,"div",17),e.TgZ(129,"div",18),e._uU(130," Study Start Date: "),e.qZA(),e.TgZ(131,"div",19),e._uU(132),e.ALo(133,"date"),e.qZA(),e.qZA(),e.TgZ(134,"div",17),e.TgZ(135,"div",18),e._uU(136," Last Verified: "),e.qZA(),e.TgZ(137,"div",19),e._uU(138),e.ALo(139,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(140,"div",8),e.TgZ(141,"div",17),e.TgZ(142,"div",18),e._uU(143," Study Completion Date: "),e.qZA(),e.TgZ(144,"div",19),e._uU(145),e.ALo(146,"date"),e.qZA(),e.qZA(),e.TgZ(147,"div",17),e.TgZ(148,"div",18),e._uU(149," Primary Completion Date: "),e.qZA(),e.TgZ(150,"div",19),e._uU(151),e.ALo(152,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(153,"div",8),e.TgZ(154,"div",17),e.TgZ(155,"div",18),e._uU(156," First Received: "),e.qZA(),e.TgZ(157,"div",19),e._uU(158),e.ALo(159,"date"),e.qZA(),e.qZA(),e.TgZ(160,"div",17),e.TgZ(161,"div",18),e._uU(162," Last Updated: "),e.qZA(),e.TgZ(163,"div",19),e._uU(164),e.ALo(165,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(166,"div",8),e.TgZ(167,"div",17),e.TgZ(168,"div",18),e._uU(169," Website Url: "),e.qZA(),e.TgZ(170,"div",19),e.TgZ(171,"a",11),e._uU(172),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(173,"div",8),e.TgZ(174,"div",20),e.TgZ(175,"div",9),e._uU(176," Outcome Measures: "),e.qZA(),e.TgZ(177,"div",10),e._uU(178),e.qZA(),e.qZA(),e.qZA(),e.TgZ(179,"div",8),e.TgZ(180,"div",20),e.TgZ(181,"div",9),e._uU(182," Locations: "),e.qZA(),e.TgZ(183,"div",10),e.YNc(184,om,2,1,"div",0),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(185,"mat-tab",21),e.TgZ(186,"div",13),e.TgZ(187,"mat-card"),e.TgZ(188,"div",16),e._uU(189,"Applications in Clinical Trial "),e.qZA(),e.TgZ(190,"mat-card-content"),e.YNc(191,vd,18,1,"div",1),e.YNc(192,yd,3,0,"ng-template",null,22,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(194,"mat-tab",21),e.TgZ(195,"div",13),e.TgZ(196,"mat-card"),e.TgZ(197,"div",16),e._uU(198,"Substances in Clinical Trial "),e.qZA(),e.TgZ(199,"mat-card-content"),e.YNc(200,sm,12,1,"div",1),e.YNc(201,zh,3,0,"ng-template",null,23,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.MAs(193),r=e.MAs(202),O=e.oxw(2);e.xp6(4),e.Q6J("src",O.flagIconSrcPath,e.LSH),e.xp6(5),e.Q6J("ngIf",O.isAdmin),e.xp6(5),e.s9C("href",O.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(O.clinicalTrial.trialNumber),e.xp6(6),e.hij(" ",O.clinicalTrial.title," "),e.xp6(5),e.hij(" ",O.clinicalTrial.sponsor," "),e.xp6(15),e.s9C("href",O.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(O.clinicalTrial.trialNumber),e.xp6(5),e.hij(" ",O.clinicalTrial.recruitment," "),e.xp6(6),e.hij(" ",O.clinicalTrial.title," "),e.xp6(5),e.hij(" ",O.clinicalTrial.conditions," "),e.xp6(6),e.hij(" ",O.clinicalTrial.sponsor," "),e.xp6(5),e.hij(" ",O.clinicalTrial.intervention," "),e.xp6(6),e.hij(" ",O.clinicalTrial.fundedBys," "),e.xp6(5),e.hij(" ",O.clinicalTrial.phases," "),e.xp6(6),e.hij(" ",O.clinicalTrial.studyTypes," "),e.xp6(5),e.hij(" ",O.clinicalTrial.ageGroups," "),e.xp6(6),e.hij(" ",O.clinicalTrial.studyDesigns," "),e.xp6(5),e.hij(" ",O.clinicalTrial.gender," "),e.xp6(6),e.hij(" ",O.clinicalTrial.studyResults," "),e.xp6(5),e.hij(" ",O.clinicalTrial.enrollment," "),e.xp6(6),e.hij(" ",O.clinicalTrial.otherIds," "),e.xp6(5),e.hij(" ",O.clinicalTrial.acronym," "),e.xp6(6),e.hij(" ",e.xi3(133,39,O.clinicalTrial.startDate,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",e.xi3(139,42,O.clinicalTrial.lastVerified,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",e.xi3(146,45,O.clinicalTrial.completionDate,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",e.xi3(152,48,O.clinicalTrial.primaryCompletionDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",e.xi3(159,51,O.clinicalTrial.firstReceived,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",e.xi3(165,54,O.clinicalTrial.lastUpdated,"MM/dd/yyyy")," "),e.xp6(7),e.s9C("href",O.clinicalTrial.url,e.LSH),e.xp6(1),e.Oqu(O.clinicalTrial.url),e.xp6(6),e.hij(" ",O.clinicalTrial.outcomeMeasures," "),e.xp6(6),e.Q6J("ngIf",O.clinicalTrial.locationList.length>0),e.xp6(1),e.MGl("label","Application (",O.clinicalTrial.clinicalTrialApplicationList.length,")"),e.xp6(6),e.Q6J("ngIf",O.clinicalTrial.clinicalTrialApplicationList.length>0)("ngIfElse",f),e.xp6(3),e.MGl("label","Substance (",O.clinicalTrial.clinicalTrialUSDrug.length,")"),e.xp6(6),e.Q6J("ngIf",O.clinicalTrial.clinicalTrialUSDrug.length>0)("ngIfElse",r)}}function Kh(v,F){if(1&v&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e.TgZ(4,"div",34),e._uU(5),e.qZA()),2&v){var f=e.oxw(2);e.xp6(5),e.hij("No Clinical Trial record found for ",f.trialNumber,"")}}function lm(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Gh,203,57,"div",1),e.YNc(2,Kh,6,1,"ng-template",null,2,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw();e.xp6(1),e.Q6J("ngIf",r.clinicalTrial.trialNumber)("ngIfElse",f)}}var $u=function(){var v=function(F){(0,da.Z)(r,F);var f=(0,Ea.Z)(r);function r(O,R,ee,Je,_t,Kt,Un,ai,Pi){var ki;return(0,S.Z)(this,r),(ki=f.call(this,O,R,ee,Je,_t,Kt,Un)).authService=ai,ki.configService=Pi,ki.isAdmin=!1,ki}return(0,t.Z)(r,[{key:"ngOnInit",value:function(){var R=this;(0,Ra.Z)((0,sa.Z)(r.prototype),"ngOnInit",this).call(this),this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").pipe((0,ve.q)(1)).subscribe(function(ee){R.isAdmin=ee}),this.flagIconSrcPath="".concat(this.configService.environment.baseHref||"","assets/icons/fda/united-states.svg")}}]),r}(Yo);return v.\u0275fac=function(f){return new(f||v)(e.Y36(Vs.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F),e.Y36(Me.e),e.Y36(hn.E))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-clinical-trial-details"]],features:[e.qOj],decls:5,vars:1,consts:[[4,"ngIf"],[4,"ngIf","ngIfElse"],["noRecord",""],[1,"details-container","margintop90px"],[1,"details-box"],[1,"font20px","box"],["width","25px","height","30px",3,"src"],["target","_blank","title","Edit Clinical Trial US Record",3,"routerLink","queryParams",4,"ngIf"],[1,"row"],[1,"row-property-key-2"],[1,"row-property-value-2"],["target","_blank",3,"href"],[1,"font14px","fontbold","colororange"],[1,"details-container"],[1,"mat-card","bordergray"],["label","Clinical Trial US"],[1,"title"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],[1,"row-property-2"],[3,"label"],["noRecordApp",""],["noRecordSub",""],["target","_blank","title","Edit Clinical Trial US Record",3,"routerLink","queryParams"],["svgIcon","edit"],[4,"ngFor","ngForOf"],["width","98%",1,"bordergray","blueTable","padleft20px"],["valign","top"],["width","60px"],["width","200px"],["width","300px"],["target","_blank",3,"routerLink"],["appSubstanceImage","","size","150",1,"structure-img",3,"entityId"],[1,"colororange","padtop50px","padleft50px"]],template:function(f,r){1&f&&(e.YNc(0,lm,4,2,"div",0),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br")),2&f&&e.Q6J("ngIf",r.clinicalTrial)},directives:[c.O5,u.yS,T.Hw,b.SP,b.uX,o.a8,o.dn,c.sg,ie.m],pipes:[c.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px var(--box-shadow-color-3)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-size:12px;font-weight:600}.row-property-value[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:17.5%;max-width:17.5%;padding:6px;font-size:12px;font-weight:600}.row-property-value-2[_ngcontent-%COMP%]{min-width:82.5%;max-width:82.5%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-right:5px;text-align:top;margin-bottom:9px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:var(--orange-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid gray}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid var(--secondary-blue-color);background-color:var(--table-bg-color);width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid var(--table-th-border-color);padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:var(--table-tr-even-bg-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--table-thead-bg-color);border-bottom:1px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:var(--table-th-color);border-left:1px solid var(--table-th-border-color-2);padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:var(--white-color);background:var(--table-th-border-color-2);border-top:2px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:var(--secondary-blue-color);color:var(--white-color);padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid var(--regular-red-color)}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px var(--box-shadow-color-3)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}}"]}),v}();function $h(v,F){if(1&v&&(e.TgZ(0,"div",16),e.TgZ(1,"div",17),e.TgZ(2,"div",18),e._UZ(3,"img",19),e._uU(4," \xa0"),e.TgZ(5,"b"),e._uU(6,"Clinical Trial Europe Details"),e.qZA(),e.qZA(),e.TgZ(7,"div",5),e.TgZ(8,"div",20),e._uU(9," Eudract Number: "),e.qZA(),e.TgZ(10,"div",21),e.TgZ(11,"a",9),e.TgZ(12,"span",10),e._uU(13),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"div",5),e.TgZ(15,"div",20),e._uU(16," Title: "),e.qZA(),e.TgZ(17,"div",21),e._uU(18),e.qZA(),e.qZA(),e.TgZ(19,"div",5),e.TgZ(20,"div",20),e._uU(21," Sponsor Name: "),e.qZA(),e.TgZ(22,"div",21),e._uU(23),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.Q6J("src",f.flagIconSrcPath,e.LSH),e.xp6(8),e.s9C("href",f.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(f.clinicalTrial.eudractNumber),e.xp6(5),e.hij(" ",f.clinicalTrial.title," "),e.xp6(5),e.hij(" ",f.clinicalTrial.sponsorName," ")}}function lg(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._UZ(8,"div",27),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Oqu(f.productName),e.xp6(2),e.Oqu(f.tradeName),e.xp6(2),e.Q6J("innerHTML",f.prodIngredName,e.oJD),e.xp6(2),e.Oqu(f.impRoutesAdmin),e.xp6(2),e.Oqu(f.pharmaceuticalForm),e.xp6(2),e.Oqu(f.impSection),e.xp6(2),e.Oqu(f.impRole)}}function um(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"table",22),e.TgZ(2,"thead"),e.TgZ(3,"tr",23),e.TgZ(4,"th",24),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",25),e._uU(7,"Product Name"),e.qZA(),e.TgZ(8,"th",25),e._uU(9,"Trade Name"),e.qZA(),e.TgZ(10,"th",25),e._uU(11,"Substances"),e.qZA(),e.TgZ(12,"th",25),e._uU(13,"IMP Route of Administration"),e.qZA(),e.TgZ(14,"th",25),e._uU(15,"Pharmaceutical Form"),e.qZA(),e.TgZ(16,"th",25),e._uU(17,"IMP Sections"),e.qZA(),e.TgZ(18,"th",25),e._uU(19,"IMP Role"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"tbody"),e.YNc(21,lg,17,8,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(21),e.Q6J("ngForOf",f.clinicalTrial.clinicalTrialEuropeProductList)}}function cm(v,F){1&v&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Product and Substance Data for this Clinical Trial "),e.qZA())}function Xh(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Oqu(f.medicalCondInvesigated),e.xp6(2),e.Oqu(f.medicalCondInvesigatedEz),e.xp6(2),e.Oqu(f.medicalCondTherapyArea)}}function Op(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"table",22),e.TgZ(2,"thead"),e.TgZ(3,"tr",23),e.TgZ(4,"th",24),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",25),e._uU(7,"Medical Condition Investigated"),e.qZA(),e.TgZ(8,"th",25),e._uU(9,"Medical Condition Investigated EZ"),e.qZA(),e.TgZ(10,"th",25),e._uU(11,"Medical Condition Therapy Area"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"tbody"),e.YNc(13,Xh,9,4,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(13),e.Q6J("ngForOf",f.clinicalTrial.clinicalTrialEuropeMedicalList)}}function ug(v,F){1&v&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Medical Data for this Clinical Trial "),e.qZA())}function cg(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Oqu(f.meddraVersion),e.xp6(2),e.Oqu(f.meddraClassCode),e.xp6(2),e.Oqu(f.meddraTerm),e.xp6(2),e.Oqu(f.meddraSystemOrganClass)}}function dg(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"table",28),e.TgZ(2,"thead"),e.TgZ(3,"tr",23),e.TgZ(4,"th",24),e._uU(5,"#"),e.qZA(),e.TgZ(6,"th",25),e._uU(7,"Meddra Version"),e.qZA(),e.TgZ(8,"th",25),e._uU(9,"Meddra Class Code"),e.qZA(),e.TgZ(10,"th",25),e._uU(11,"Meddra Term"),e.qZA(),e.TgZ(12,"th",25),e._uU(13,"Meddra System Organ Class"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(14,"tbody"),e.YNc(15,cg,11,5,"tr",26),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(15),e.Q6J("ngForOf",f.clinicalTrial.clinicalTrialEuropeMeddraList)}}function pg(v,F){1&v&&(e.TgZ(0,"p"),e._UZ(1,"br"),e._uU(2," There is no Meddra Data for this Clinical Trial "),e.qZA())}var fg=function(){var v=function(F){(0,da.Z)(r,F);var f=(0,Ea.Z)(r);function r(O,R,ee,Je,_t,Kt,Un,ai){var Pi;return(0,S.Z)(this,r),(Pi=f.call(this,O,R,ee,Je,_t,Kt,Un)).configService=ai,Pi.environment=ai.environment,Pi}return(0,t.Z)(r,[{key:"ngOnInit",value:function(){(0,Ra.Z)((0,sa.Z)(r.prototype),"ngOnInit",this).call(this),this.flagIconSrcPath="".concat(this.environment.baseHref||"","assets/icons/fda/european-union.svg")}}]),r}(Yo);return v.\u0275fac=function(f){return new(f||v)(e.Y36(Vs.m),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(u.F0),e.Y36(ba.$),e.Y36(ri.F),e.Y36(hn.E))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-clinical-trial-europe-details"]],features:[e.qOj],decls:123,vars:35,consts:[["class","details-container margintop90px",4,"ngIf"],[1,"details-container"],[1,"mat-card","bordergray"],["label","Clinical Trial Europe"],[1,"title"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],["target","_blank",3,"href"],[1,"font14px","fontbold","colororange"],[3,"label"],[4,"ngIf","ngIfElse"],["noRecordProd",""],["noRecordMed",""],["noRecordMeddra",""],[1,"details-container","margintop90px"],[1,"details-box"],[1,"font20px","box"],["width","25px","height","30px",3,"src"],[1,"row-property-key-2"],[1,"row-property-value-2"],["width","98%",1,"bordergray","blueTable","padleft20px"],["valign","top"],["width","60px"],["width","200px"],[4,"ngFor","ngForOf"],[3,"innerHTML"],["width","98%",1,"bordergray","blueTable"]],template:function(f,r){if(1&f&&(e.YNc(0,$h,24,5,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"mat-tab-group"),e.TgZ(4,"mat-tab",3),e.TgZ(5,"div",1),e.TgZ(6,"mat-card"),e.TgZ(7,"div",4),e._uU(8,"Clinical Trial Europe"),e.qZA(),e.TgZ(9,"mat-card-content"),e.TgZ(10,"div",5),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e._uU(13," Eudract Number: "),e.qZA(),e.TgZ(14,"div",8),e.TgZ(15,"a",9),e.TgZ(16,"span",10),e._uU(17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",6),e.TgZ(19,"div",7),e._uU(20," Trial Status: "),e.qZA(),e.TgZ(21,"div",8),e._uU(22),e.qZA(),e.qZA(),e.qZA(),e.TgZ(23,"div",5),e.TgZ(24,"div",6),e.TgZ(25,"div",7),e._uU(26," Title: "),e.qZA(),e.TgZ(27,"div",8),e._uU(28),e.qZA(),e.qZA(),e.TgZ(29,"div",6),e.TgZ(30,"div",7),e._uU(31," Trial Results: "),e.qZA(),e.TgZ(32,"div",8),e._uU(33),e.qZA(),e.qZA(),e.qZA(),e.TgZ(34,"div",5),e.TgZ(35,"div",6),e.TgZ(36,"div",7),e._uU(37," Sponsor Name: "),e.qZA(),e.TgZ(38,"div",8),e._uU(39),e.qZA(),e.qZA(),e.TgZ(40,"div",6),e.TgZ(41,"div",7),e._uU(42," Date First Entered DB: "),e.qZA(),e.TgZ(43,"div",8),e._uU(44),e.ALo(45,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(46,"div",5),e.TgZ(47,"div",6),e.TgZ(48,"div",7),e._uU(49," National Competent Authority: "),e.qZA(),e.TgZ(50,"div",8),e._uU(51),e.qZA(),e.qZA(),e.TgZ(52,"div",6),e.TgZ(53,"div",7),e._uU(54," National Competent Authority Decision: "),e.qZA(),e.TgZ(55,"div",8),e._uU(56),e.qZA(),e.qZA(),e.qZA(),e.TgZ(57,"div",5),e.TgZ(58,"div",6),e.TgZ(59,"div",7),e._uU(60," Date Competent Authority Decision: "),e.qZA(),e.TgZ(61,"div",8),e._uU(62),e.ALo(63,"date"),e.qZA(),e.qZA(),e.TgZ(64,"div",6),e.TgZ(65,"div",7),e._uU(66," Ethics Competent Opinion Approved: "),e.qZA(),e.TgZ(67,"div",8),e._uU(68),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"div",5),e.TgZ(70,"div",6),e.TgZ(71,"div",7),e._uU(72," Ethics Competent Opinion Reason: "),e.qZA(),e.TgZ(73,"div",8),e._uU(74),e.qZA(),e.qZA(),e.TgZ(75,"div",6),e.TgZ(76,"div",7),e._uU(77," Date Ethics Competent Opinion Reason: "),e.qZA(),e.TgZ(78,"div",8),e._uU(79),e.ALo(80,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(81,"div",5),e.TgZ(82,"div",6),e.TgZ(83,"div",7),e._uU(84," Country: "),e.qZA(),e.TgZ(85,"div",8),e._uU(86),e.qZA(),e.qZA(),e.TgZ(87,"div",6),e.TgZ(88,"div",7),e._uU(89," Website Url: "),e.qZA(),e.TgZ(90,"div",8),e.TgZ(91,"a",9),e._uU(92),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(93,"mat-tab",11),e.TgZ(94,"div",1),e.TgZ(95,"mat-card"),e.TgZ(96,"div",4),e._uU(97,"Products in Clinical Trial"),e.qZA(),e.TgZ(98,"mat-card-content"),e.YNc(99,um,22,1,"div",12),e.YNc(100,cm,3,0,"ng-template",null,13,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(102,"mat-tab",11),e.TgZ(103,"div",1),e.TgZ(104,"mat-card"),e.TgZ(105,"div",4),e._uU(106,"Medical Conditions in Clinical Trial"),e.qZA(),e.TgZ(107,"mat-card-content"),e.YNc(108,Op,14,1,"div",12),e.YNc(109,ug,3,0,"ng-template",null,14,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(111,"mat-tab",11),e.TgZ(112,"div",1),e.TgZ(113,"mat-card"),e.TgZ(114,"div",4),e._uU(115,"Meddra in Clinical Trial"),e.qZA(),e.TgZ(116,"mat-card-content"),e.YNc(117,dg,16,1,"div",12),e.YNc(118,pg,3,0,"ng-template",null,15,e.W1O),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(120,"br"),e._UZ(121,"br"),e._UZ(122,"br")),2&f){var O=e.MAs(101),R=e.MAs(110),ee=e.MAs(119);e.Q6J("ngIf",r.clinicalTrial),e.xp6(15),e.s9C("href",r.clinicalTrial.url,e.LSH),e.xp6(2),e.Oqu(r.clinicalTrial.eudractNumber),e.xp6(5),e.hij(" ",r.clinicalTrial.trialStatus," "),e.xp6(6),e.hij(" ",r.clinicalTrial.title," "),e.xp6(5),e.hij(" ",r.clinicalTrial.trialResults," "),e.xp6(6),e.hij(" ",r.clinicalTrial.sponsorName," "),e.xp6(5),e.hij(" ",e.xi3(45,26,r.clinicalTrial.dateFirstEnteredDb,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",r.clinicalTrial.nationalCompetentAuthority," "),e.xp6(5),e.hij(" ",r.clinicalTrial.competentAuthorityDecision," "),e.xp6(6),e.hij(" ",e.xi3(63,29,r.clinicalTrial.competentAuthorityDecisionDate,"MM/dd/yyyy")," "),e.xp6(6),e.hij(" ",r.clinicalTrial.ethicsComOpinionApp," "),e.xp6(6),e.hij(" ",r.clinicalTrial.ethicsComOpinionReason," "),e.xp6(5),e.hij(" ",e.xi3(80,32,r.clinicalTrial.ethicsComOpinionDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",r.clinicalTrial.country," "),e.xp6(5),e.s9C("href",r.clinicalTrial.url,e.LSH),e.xp6(1),e.Oqu(r.clinicalTrial.url),e.xp6(1),e.MGl("label","Product (",r.clinicalTrial.clinicalTrialEuropeProductList.length,")"),e.xp6(6),e.Q6J("ngIf",r.clinicalTrial.clinicalTrialEuropeProductList.length>0)("ngIfElse",O),e.xp6(3),e.MGl("label","Medical (",r.clinicalTrial.clinicalTrialEuropeMedicalList.length,")"),e.xp6(6),e.Q6J("ngIf",r.clinicalTrial.clinicalTrialEuropeMedicalList.length>0)("ngIfElse",R),e.xp6(3),e.MGl("label","Meddra (",r.clinicalTrial.clinicalTrialEuropeMeddraList.length,")"),e.xp6(6),e.Q6J("ngIf",r.clinicalTrial.clinicalTrialEuropeMeddraList.length>0)("ngIfElse",ee)}},directives:[c.O5,b.SP,b.uX,o.a8,o.dn,c.sg],pipes:[c.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px var(--box-shadow-color-3)}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:50%;max-width:50%;padding:7px;font-size:12px;font-weight:500}.row-property-value[_ngcontent-%COMP%]{min-width:50%;max-width:50%;padding:7px;font-size:12px}.row-property-key-2[_ngcontent-%COMP%]{min-width:13%;max-width:13%;padding:6px;font-size:12px;font-weight:500}.row-property-value-2[_ngcontent-%COMP%]{min-width:87%;max-width:87%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-right:5px;text-align:top;margin-bottom:9px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font20px[_ngcontent-%COMP%]{font-size:20px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colororange[_ngcontent-%COMP%]{color:var(--orange-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid var(--secondary-blue-color);background-color:var(--table-bg-color);width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid var(--table-th-border-color);padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:var(--table-tr-even-bg-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--table-thead-bg-color);border-bottom:1px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:var(--table-th-color);border-left:1px solid var(--table-th-border-color-2);padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:var(--white-color);background:var(--table-th-border-color-2);border-top:2px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:var(--secondary-blue-color);color:var(--white-color);padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid var(--regular-red-color)}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px var(--box-shadow-color-3)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}}"]}),v}(),Dl=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.configService=f,this.router=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){var Je=R.configService.configData.loadedComponents||null;Je&&Je.clinicaltrials?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/home")),ee.complete())})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(hn.E),e.LFG(u.F0))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),e_=[{path:"browse-clinical-trials",component:If,canActivate:[Dl]},{path:"edit-clinical-trial/:trialNumber",component:zs,canActivate:[Dl]},{path:"add-clinical-trial",component:Sp,canActivate:[Dl]},{path:"clinical-trial/:trialNumber",component:$u,canActivate:[Dl]},{path:"clinicalTrialEuropeDetails/:trialNumber/:src",component:fg,canActivate:[Dl]}],t_=function(){var v=function(){function F(f){(0,S.Z)(this,F),e_.forEach(function(r){f.config[0].children.push(r)})}return(0,t.Z)(F,null,[{key:"forRoot",value:function(){return{ngModule:F,providers:[Vs.m,Dl]}}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0))},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({providers:[Dl],imports:[[y.p0,kt.lN,It.c,an.Bb,T.Ps,h.ot,X.TU,nn.SJ,_.To,o.QW,b.Nh,et.UX,et.u5,B.p9,ne.LD,c.ez,u.Bz.forChild(e_),Cs.Cv,vl.f,gn.On,He.Tx]]}),v}(),n_=function(){var v=(0,t.Z)(function F(){(0,S.Z)(this,F)});return v.\u0275fac=function(f){return new(f||v)},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({imports:[[c.ez]]}),v}(),dm=function(){var v=(0,t.Z)(function F(){(0,S.Z)(this,F)});return v.\u0275fac=function(f){return new(f||v)},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({imports:[[c.ez,h.ot]]}),v}();function wl(v,F){1&v&&(e.TgZ(0,"span"),e._uU(1," \xa0"),e.TgZ(2,"b"),e._uU(3,"(Preferred Term)"),e.qZA(),e.qZA())}function bd(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"li"),e._uU(2),e.YNc(3,wl,4,0,"span",21),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.hij("",f.name," "),e.xp6(1),e.Q6J("ngIf",!0===f.displayName)}}function pm(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Num "),e.qZA())}function Ep(v,F){if(1&v&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&v){var f=F.index;e.xp6(1),e.hij(" ",f+1," ")}}function Zp(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Action "),e.qZA())}var fm=function(F){return["/application",F,"edit"]},kp=function(F){return["/application",F]};function Cd(v,F){if(1&v&&(e.TgZ(0,"td",23),e.TgZ(1,"div",24),e.TgZ(2,"div",25),e.TgZ(3,"a",26),e._UZ(4,"mat-icon",27),e.qZA(),e.qZA(),e.TgZ(5,"div",28),e.TgZ(6,"a",29),e.TgZ(7,"mat-icon"),e._uU(8,"article"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(3),e.Q6J("routerLink",e.VKq(2,fm,f.id)),e.xp6(3),e.Q6J("routerLink",e.VKq(4,kp,f.id))}}function Gs(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Application Type "),e.qZA())}function mm(v,F){if(1&v&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.appType," ")}}function i_(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Application Number "),e.qZA())}function Oc(v,F){if(1&v&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.appNumber," ")}}function hm(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Application Status "),e.qZA())}function _m(v,F){if(1&v&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.status," ")}}function a_(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Application Sub Type "),e.qZA())}function r_(v,F){if(1&v&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.appSubType," ")}}function Ec(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Product Name "),e.qZA())}function Xu(v,F){if(1&v&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.productName," ")}}function Ip(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Application Bdnum "),e.qZA())}function ec(v,F){if(1&v&&(e.TgZ(0,"span",32),e.TgZ(1,"b"),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(2),e.Oqu(f.bdnum)}}function Zc(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.hij(" ",f.bdnum," ")}}function tc(v,F){if(1&v&&(e.TgZ(0,"td",30),e.YNc(1,ec,3,1,"span",31),e.YNc(2,Zc,2,1,"span",21),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf","(No Bdnum)"!==f.bdnum),e.xp6(1),e.Q6J("ngIf","(No Bdnum)"===f.bdnum)}}function o_(v,F){1&v&&(e.TgZ(0,"th",22),e._uU(1," Substance Ingredient Names and Product Name - Exact Match "),e.qZA())}function gm(v,F){if(1&v&&(e.TgZ(0,"td",23),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.exactMatchName," ")}}function vm(v,F){1&v&&e._UZ(0,"tr",33)}function cs(v,F){1&v&&e._UZ(0,"tr",34)}var Lp=function(){var v=function(){function F(f,r,O,R,ee,Je,_t){(0,S.Z)(this,F),this.generalService=f,this.applicationService=r,this.activatedRoute=O,this.router=R,this.loadingService=ee,this.utilsService=Je,this.authService=_t,this.isAdmin=!1,this.displayedColumns=["Num","Action","Application Type","Application Number","Status","Application Sub Type","Product Name","Application Substance Key","Exact Match"],this.dataSource=null,this.updated="false",this.autoUpdateSavedSuccess=!1,this.subscriptions=[],this.substanceApplicationMatchList=[],this.preferredTerm="",this.fullFacetField="",this.total=0}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.loadingService.setLoading(!0),this.authService.hasRolesAsync("Admin").subscribe(function(O){r.isAdmin=O}),this.id=this.activatedRoute.snapshot.params.id,this.id&&this.getSubstanceNames(this.id),this.loadingService.setLoading(!1)}},{key:"ngAfterViewInit",value:function(){}},{key:"getSubstanceNames",value:function(r){var O=this;this.generalService.getSubstanceNamesBySubstanceUuid(r).subscribe(function(R){O.substanceNames=R,O.substanceNames.forEach(function(ee,Je){!0===ee.displayName&&(O.preferredTerm=ee.name),ee&&ee.name&&(Je>0&&(O.fullFacetField=O.fullFacetField+" OR "),O.fullFacetField=O.fullFacetField+'root_applicationProductList_applicationProductNameList_productName:"'+ee.name+'"')}),O.getApplicationIngredientMatchList()})}},{key:"getApplicationIngredientMatchList",value:function(){var r=this;this.applicationService.getApplications(null,0,200,this.fullFacetField,{"Has Ingredients":{params:{"Has No Ingredient":!0},isAllMatch:!1}}).subscribe(function(ee){r.applications=ee.content,r.total=ee.count,r.applications.length>0&&(r.applications.forEach(function(Je,_t){if(Je){var Kt={};Kt.id=Je.id,Kt.appType=Je.appType,Kt.appNumber=Je.appNumber,Kt.status=Je.status,Kt.appSubType=Je.appSubType;var Un="",ki="";Je.applicationProductList.forEach(function(kr,is){var eo="";kr.applicationProductNameList.forEach(function(Mo,qc){Mo&&(qc>0&&(Un+=" || "),Un+=Mo.productName,r.substanceNames.forEach(function(Hc,Vg){Hc&&Hc.name&&Mo.productName&&Hc.name===Mo.productName.trim()&&(ki=Hc.name,r.generalService.getSubstanceCodesBySubstanceUuid(r.id).subscribe(function(ch){if(ch)for(var Vc=ch,jc=0;jc0&&(eo+="|"),eo+=Mo.substanceKey):eo+="(No Substance Key)"}),Kt.productName=Un,Kt.exactMatchName=ki,Kt.bdnum=eo}),r.substanceApplicationMatchList.push(Kt)}}),r.dataSource=r.substanceApplicationMatchList)})}},{key:"autoUpdateApp",value:function(r,O,R){var ee=this;this.loadingService.setLoading(!0),this.dataSource[r].autoUpdateMessage="Saving....Please wait.",this.dataSource[r].isDisableButton=!0,this.applicationService.getApplicationById(O).subscribe(function(Je){Je&&(ee.application=Je,ee.application&&ee.application.applicationProductList.forEach(function(_t,Kt){_t.applicationIngredientList.forEach(function(Un,ai){Un.substanceKey||(Un.substanceKey=R,Un.basisOfStrengthSubstanceKeyType=ee.generalService.getSubstanceKeyType(),Un.basisOfStrengthSubstanceKey=R,Un.basisOfStrengthSubstanceKeyType=ee.generalService.getSubstanceKeyType(),Un.ingredientType="Active Ingredient",Un.applicantIngredName=ee.preferredTerm,ee.applicationService.application=ee.application,ee.applicationService.saveApplication().subscribe(function(Pi){alert("The Auto Update saved the application record successfully"),ee.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},ee.router.onSameUrlNavigation="reload",ee.router.navigate(["/sub-app-match-list",ee.id])}))})}))}),this.loadingService.setLoading(!1)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(D.m),e.Y36(I.I),e.Y36(u.gz),e.Y36(u.F0),e.Y36(Xe.b),e.Y36(ri.F),e.Y36(Me.e))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-substance-application-match-list"]],decls:62,vars:5,consts:[[1,"bordergray","width1140px"],[1,"padtop20px"],[4,"ngFor","ngForOf"],[1,"colorgreen","font18px"],[1,"font16px"],[1,"font18px","colorred"],[1,"font12px","bordergray",3,"dataSource"],["matColumnDef","Num"],["mat-header-cell","","class","headerstyle",4,"matHeaderCellDef"],["mat-cell","","class","cellstyle",4,"matCellDef"],["matColumnDef","Action"],["matColumnDef","Application Type"],["matColumnDef","Application Number"],["matColumnDef","Status"],["matColumnDef","Application Sub Type"],["matColumnDef","Product Name"],["matColumnDef","Application Substance Key"],["mat-cell","","class","cellstyle backgroundyellow",4,"matCellDef"],["matColumnDef","Exact Match"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[4,"ngIf"],["mat-header-cell","",1,"headerstyle"],["mat-cell","",1,"cellstyle"],[1,"divflex","padtop5px"],[1,"padleft15px"],["target","_blank","matTooltip","Edit Application Record",3,"routerLink"],["svgIcon","edit"],[1,"padleft10px"],["target","_blank","matTooltip","View Application Record",3,"routerLink"],["mat-cell","",1,"cellstyle","backgroundyellow"],["class","colorpurple",4,"ngIf"],[1,"colorpurple"],["mat-header-row",""],["mat-row",""]],template:function(f,r){1&f&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e.TgZ(5,"mat-card",0),e.TgZ(6,"mat-card-title"),e._uU(7,"Substance Application Matching Lists"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",1),e.TgZ(10,"h3"),e._uU(11,"Substance Ingredient Names:"),e.qZA(),e.TgZ(12,"ol"),e.YNc(13,bd,4,2,"div",2),e.qZA(),e._UZ(14,"br"),e._UZ(15,"br"),e.TgZ(16,"div",3),e.TgZ(17,"b"),e._uU(18,"Applications Lists that contain Substance Ingredient Names in Product Names or Reference IND:"),e.qZA(),e.qZA(),e._UZ(19,"br"),e._UZ(20,"br"),e.TgZ(21,"span",4),e.TgZ(22,"b"),e._uU(23,"Total Applications Found: "),e.qZA(),e.TgZ(24,"span",5),e.TgZ(25,"b"),e._uU(26),e.qZA(),e.qZA(),e.qZA(),e._UZ(27,"br"),e._UZ(28,"br"),e.TgZ(29,"mat-table",6),e.ynx(30,7),e.YNc(31,pm,2,0,"th",8),e.YNc(32,Ep,2,1,"td",9),e.BQk(),e.ynx(33,10),e.YNc(34,Zp,2,0,"th",8),e.YNc(35,Cd,9,6,"td",9),e.BQk(),e.ynx(36,11),e.YNc(37,Gs,2,0,"th",8),e.YNc(38,mm,2,1,"td",9),e.BQk(),e.ynx(39,12),e.YNc(40,i_,2,0,"th",8),e.YNc(41,Oc,2,1,"td",9),e.BQk(),e.ynx(42,13),e.YNc(43,hm,2,0,"th",8),e.YNc(44,_m,2,1,"td",9),e.BQk(),e.ynx(45,14),e.YNc(46,a_,2,0,"th",8),e.YNc(47,r_,2,1,"td",9),e.BQk(),e.ynx(48,15),e.YNc(49,Ec,2,0,"th",8),e.YNc(50,Xu,2,1,"td",9),e.BQk(),e.ynx(51,16),e.YNc(52,Ip,2,0,"th",8),e.YNc(53,tc,3,2,"td",17),e.BQk(),e.ynx(54,18),e.YNc(55,o_,2,0,"th",8),e.YNc(56,gm,2,1,"td",9),e.BQk(),e.YNc(57,vm,1,0,"tr",19),e.YNc(58,cs,1,0,"tr",20),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(59,"br"),e._UZ(60,"br"),e._UZ(61,"br")),2&f&&(e.xp6(13),e.Q6J("ngForOf",r.substanceNames),e.xp6(13),e.Oqu(r.total),e.xp6(3),e.Q6J("dataSource",r.dataSource),e.xp6(28),e.Q6J("matHeaderRowDef",r.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",r.displayedColumns))},directives:[o.a8,o.n5,o.dn,c.sg,c.O5,y.BZ,y.w1,y.fO,y.ge,y.Dz,y.ev,u.yS,s.gM,T.Hw,y.as,y.XQ,y.nj,y.Gk],styles:[".width1140px[_ngcontent-%COMP%]{width:1140px;max-width:1140px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font18px[_ngcontent-%COMP%]{font-size:18px}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colorpurple[_ngcontent-%COMP%]{color:var(--regular-purple-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.padtop20px[_ngcontent-%COMP%]{padding-top:20px}.padleft5px[_ngcontent-%COMP%]{padding-left:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft15px[_ngcontent-%COMP%]{padding-left:15px}.padleft30px[_ngcontent-%COMP%]{padding-left:20px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padbottom7px[_ngcontent-%COMP%]{padding-bottom:7px}.headerstyle[_ngcontent-%COMP%]{font-size:13px;vertical-align:top;color:var(--secondary-title-color);padding-left:3px;background-color:var(--pale-border-color-rgb-2);border-bottom:1px solid var(--regular-grey-color);border-right:1px solid var(--regular-grey-color)}.cellstyle[_ngcontent-%COMP%]{vertical-align:top;text-align:top;padding-left:3px;padding-top:3px;border-right:1px solid var(--regular-grey-color)}.backgroundyellow[_ngcontent-%COMP%]{background-color:var(--light-yellow-color-2)}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}"]}),v}(),ym=[{name:"fdaSample",filter:function pl(v,F,f){return new Lr.y(function(r){r.next(!0),r.complete()})}},{name:"products",filter:function La(v,F,f){return new Lr.y(function(r){f.get("/assets/data/gsrs-products-test.json").subscribe(function(O){r.next(!(!O||!O.length)),r.complete()})})}}],bm=n(44250),Xo=function(){var v=function(){function F(f,r,O,R,ee){(0,S.Z)(this,F),this.platformId=f,this.utilsService=r,this.configService=O,this.authService=R,this.activatedRoute=ee,this.showHeaderBar="true",(0,c.NF)(this.platformId)&&window.location.pathname.indexOf("/ginas/app/beta/")>-1&&(this.baseHref="/ginas/app/")}return(0,t.Z)(F,[{key:"updateIframe",value:function(){this.iframe?this.iframe.src="".concat(this.baseHref||"","api/v1/whoami?key=").concat(this.utilsService.newUUID(),"&noWarningBox=true"):(this.iframe=document.createElement("IFRAME"),this.iframe.title="page refresher",this.iframe.name="refresher",this.iframe.style.height="0",this.iframe.style.opacity="0",this.iframe.src="".concat(this.baseHref||"","api/v1/whoami?key=").concat(this.utilsService.newUUID(),"&noWarningBox=true"),document.body.appendChild(this.iframe))}},{key:"setup",value:function(){var r=this;this.configService.afterLoad().then(function(O){var R=r.configService.configData&&r.configService.configData.gsrsHomeBaseUrl||null;R&&(r.baseHref=R,r.updateIframe()),clearInterval(r.refreshInterval),r.refreshInterval=setInterval(function(){console.log("REFRESHING iFrame"),r.updateIframe()},6e5)})}},{key:"init",value:function(){var r=this;"true"!==new URLSearchParams(window.location.search).get("noWarningBox")&&("false"===new URLSearchParams(window.location.search).get("header")?this.setup():this.authService.getAuth().subscribe(function(O){null!=O&&null==r.refreshInterval?r.setup():null===O&&(clearInterval(r.refreshInterval),r.refreshInterval=null)}))}},{key:"ngOnDestroy",value:function(){clearInterval(this.refreshInterval),this.refreshInterval=null}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(e.Lbi),e.LFG(Gu.FW),e.LFG(N.E),e.LFG(bm.e),e.LFG(u.gz))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac}),v}(),Vr=function(){var v=function(){function F(){(0,S.Z)(this,F)}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.loadJiraScript(),this.initCollectorDialog()}},{key:"ngAfterViewInit",value:function(){}},{key:"loadJiraScript",value:function(){var O=document.createElement("script");O.src="https://cnigsllc.atlassian.net/s/d41d8cd98f00b204e9800998ecf8427e-T/-nh6v6l/b/0/a44af77267a987a660377e5c46e0fb64/_/download/batch/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector.js?locale=en-US&collectorId=558f42b6",O.type="text/javascript",O.async=!0,document.getElementsByTagName("head")[0].appendChild(O)}},{key:"initCollectorDialog",value:function(){var O=document.createElement("script");O.type="text/javascript",O.innerHTML='window.ATL_JQ_PAGE_PROPS = {"triggerFunction": function (showCollectorDialog) {window.showCollectorDialog = showCollectorDialog}};',O.async=!0,document.getElementsByTagName("head")[0].appendChild(O)}},{key:"createTicket",value:function(){window.showCollectorDialog()}}]),F}();return v.\u0275fac=function(f){return new(f||v)},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-jira-submit-ticket"]],decls:4,vars:0,consts:[[1,"padleft40px","padtop110px","colorblue"],["mat-flat-button","","color","primary",3,"click"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e._uU(1,"Submit a Helpdesk Ticket (JIRA)\xa0\n"),e.TgZ(2,"button",1),e.NdJ("click",function(){return r.createTicket()}),e._uU(3,"Create ticket"),e.qZA(),e.qZA())},directives:[h.lW],styles:[".colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.padleft40px[_ngcontent-%COMP%]{padding-left:40px}.padtop110px[_ngcontent-%COMP%]{padding-top:110px}"]}),v}(),Cm=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.generalService=f,this.sanitizer=r}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.getUserManual()}},{key:"getUserManual",value:function(){var r=this;this.generalService.getManualFile().subscribe(function(O){var R=O.headers.get("Content-Disposition").split(";")[1].split("filename")[1].split("=")[1].trim();null==R&&(R="FDA_GSRS_User_Manual.pdf"),r.downloadFile(O.body,R)})}},{key:"downloadFile",value:function(r,O){var ee=[];ee.push(r);var Je=document.createElement("a");Je.href=window.URL.createObjectURL(new Blob(ee,{type:"application/x-download"})),Je.setAttribute("download",O),document.body.appendChild(Je),Je.click(),this.message="The User Manual has been downloaded to your local download directory"}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(D.m),e.Y36(mn.H7))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-user-manual"]],decls:2,vars:1,consts:[[1,"padleft40px","padtop110px","colorblue"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e._uU(1),e.qZA()),2&f&&(e.xp6(1),e.hij("\n",r.message,"\n"))},styles:[".colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.padleft40px[_ngcontent-%COMP%]{padding-left:40px}.padtop110px[_ngcontent-%COMP%]{padding-top:110px}"]}),v}(),ou=n(63200),Ks=n(91781),s_=n(56908),nc=n(16639);function ds(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",18),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).toggleValidation()}),e._uU(1),e._UZ(2,"mat-icon",19),e.qZA()}if(2&v){var r=e.oxw(2);e.Q6J("disabled",r.isLoading),e.xp6(1),e.hij(" ",r.showSubmissionMessages?"Hide":"Show"," messages "),e.xp6(1),e.Q6J("svgIcon",r.showSubmissionMessages?"chevron_up":"chevron_down")}}function l_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",23),e.NdJ("click",function(){return e.CHM(f),e.oxw(4).confirmDeleteImpurities()}),e._uU(2," Delete "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.qZA()}}var Fp=function(){return["/impurities/register"]},Np=function(F){return["/impurities",F]};function su(v,F){if(1&v&&(e.TgZ(0,"span"),e.TgZ(1,"button",20),e._uU(2," Register New Impurities "),e.qZA(),e._uU(3,"\xa0\xa0\xa0 "),e.TgZ(4,"a",21),e._UZ(5,"mat-icon",22),e._uU(6," View Impurities "),e.qZA(),e._uU(7,"\xa0\xa0\xa0 "),e.YNc(8,l_,4,0,"span",0),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Q6J("routerLink",e.DdM(3,Fp)),e.xp6(3),e.Q6J("routerLink",e.VKq(4,Np,f.impurities.id)),e.xp6(4),e.Q6J("ngIf",f.isAdmin)}}function Rp(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,su,9,6,"span",0),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.Q6J("ngIf",f.impurities.id)}}function Up(v,F){if(1&v&&(e.TgZ(0,"div",24),e._uU(1),e.qZA()),2&v){var f=e.oxw(2);e.xp6(1),e.hij(" ",f.submissionMessage," ")}}function Zr(v,F){1&v&&(e.TgZ(0,"div",24),e._uU(1," Please correct or dismiss the following errors and submit again: "),e.qZA())}function Fr(v,F){if(1&v&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.TgZ(2,"a",33),e._uU(3),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(2),e.Q6J("href",f.href,e.LSH),e.xp6(1),e.Oqu(f.text)}}function Md(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",34),e.NdJ("click",function(){e.CHM(f);var O=e.oxw().index;return e.oxw(4).dismissValidationMessage(O)}),e._UZ(1,"mat-icon",35),e.qZA()}}function u_(v,F){if(1&v&&(e.TgZ(0,"div",28),e.TgZ(1,"div",29),e._uU(2),e.qZA(),e.TgZ(3,"div",30),e._uU(4),e.YNc(5,Fr,4,2,"span",31),e.qZA(),e.YNc(6,Md,2,0,"button",32),e.qZA()),2&v){var f=F.$implicit,r=e.oxw(4);e.xp6(1),e.Q6J("ngClass","ERROR"==f.messageType?"error-message":"warning-message"),e.xp6(1),e.hij(" ",f.messageType,""),e.xp6(2),e.Oqu(f.message),e.xp6(1),e.Q6J("ngForOf",f.links),e.xp6(1),e.Q6J("ngIf","ERROR"!=f.messageType&&!r.approving)}}function c_(v,F){if(1&v&&(e.TgZ(0,"span"),e.YNc(1,Zr,2,0,"div",9),e.YNc(2,u_,7,5,"div",27),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Q6J("ngIf",!f.serverError&&!f.approving),e.xp6(1),e.Q6J("ngForOf",f.validationMessages)}}function d_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.YNc(1,c_,3,2,"span",0),e.TgZ(2,"div",25),e._UZ(3,"span",5),e.TgZ(4,"button",26),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).submit()}),e._uU(5),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(1),e.Q6J("ngIf",r.validationMessages.length>0),e.xp6(3),e.Q6J("disabled",r.isLoading||!1===r.validationResult),e.xp6(1),e.hij("",r.validationMessages&&r.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function Mm(v,F){if(1&v&&(e.TgZ(0,"div",36),e._UZ(1,"br"),e.TgZ(2,"div",36),e.TgZ(3,"span",37),e._uU(4,"Created By:"),e.qZA(),e._uU(5),e.TgZ(6,"span",37),e._uU(7,"Create Date:"),e.qZA(),e._uU(8),e.ALo(9,"date"),e.TgZ(10,"span",37),e._uU(11,"Modified By:"),e.qZA(),e._uU(12),e.TgZ(13,"span",37),e._uU(14,"Modify Date:"),e.qZA(),e._uU(15),e.ALo(16,"date"),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(5),e.hij(" ",f.impurities.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(9,4,f.impurities.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",f.impurities.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(16,7,f.impurities.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," ")}}function p_(v,F){if(1&v&&(e.TgZ(0,"div",64),e._UZ(1,"app-impurities-substance-form",65),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(1),e.Q6J("impuritiesSubstance",f)("impuritiesSubstanceIndex",r)}}function Bp(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-card",38),e.TgZ(1,"mat-card-content"),e.TgZ(2,"div",39),e.TgZ(3,"app-cv-input",40),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).impurities.sourceType=R}),e.qZA(),e.TgZ(4,"app-cv-input",41),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).impurities.source=R}),e.qZA(),e.TgZ(5,"mat-form-field",42),e.TgZ(6,"input",43),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).impurities.sourceId=R}),e.qZA(),e.qZA(),e.TgZ(7,"app-cv-input",44),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).impurities.type=R}),e.qZA(),e.TgZ(8,"mat-form-field",42),e.TgZ(9,"input",45),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).impurities.productId=R}),e.qZA(),e.qZA(),e.TgZ(10,"app-cv-input",46),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).impurities.specType=R}),e.qZA(),e.qZA(),e.TgZ(11,"div",39),e.TgZ(12,"mat-form-field",47),e.TgZ(13,"input",48),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).impurities.submitterName=R}),e.qZA(),e.qZA(),e.TgZ(14,"mat-form-field",47),e.TgZ(15,"input",49),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).impurities.productSubstanceName=R}),e.qZA(),e.qZA(),e.TgZ(16,"app-cv-input",50),e.NdJ("valueChange",function(R){return e.CHM(f),e.oxw(2).impurities.dateType=R}),e.qZA(),e.TgZ(17,"mat-form-field",42),e.TgZ(18,"input",51,52),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw(2).updateDateTypeDate(R)}),e.ALo(20,"date"),e.qZA(),e.qZA(),e.qZA(),e._UZ(21,"br"),e.TgZ(22,"mat-expansion-panel",53),e.TgZ(23,"mat-expansion-panel-header",13),e.TgZ(24,"mat-panel-title",54),e.TgZ(25,"div",55),e.TgZ(26,"div",56),e.TgZ(27,"span",57),e.TgZ(28,"b"),e._uU(29,"Substance"),e.qZA(),e.qZA(),e._uU(30,"\xa0 "),e.qZA(),e._UZ(31,"div",58),e.qZA(),e.qZA(),e.TgZ(32,"mat-panel-description",59),e.TgZ(33,"div"),e.TgZ(34,"button",60),e.NdJ("click",function(R){return e.CHM(f),e.oxw(2).addNewImpuritiesSubstance(R)}),e._UZ(35,"mat-icon",61),e._uU(36,"Add Substance "),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(37,p_,2,2,"div",62),e.qZA(),e._UZ(38,"br"),e.TgZ(39,"mat-expansion-panel",53),e.TgZ(40,"mat-expansion-panel-header",13),e.TgZ(41,"mat-panel-title"),e.TgZ(42,"div",57),e.TgZ(43,"b"),e._uU(44,"Total Impurities"),e.qZA(),e.qZA(),e.qZA(),e._UZ(45,"mat-panel-description",59),e.qZA(),e._UZ(46,"app-impurities-total-form",63),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(3),e.Q6J("model",r.impurities.sourceType),e.xp6(1),e.Q6J("model",r.impurities.source),e.xp6(2),e.Q6J("ngModel",r.impurities.sourceId),e.xp6(1),e.Q6J("model",r.impurities.type),e.xp6(2),e.Q6J("ngModel",r.impurities.productId),e.xp6(1),e.Q6J("model",r.impurities.specType),e.xp6(3),e.Q6J("ngModel",r.impurities.submitterName),e.xp6(2),e.Q6J("ngModel",r.impurities.productSubstanceName),e.xp6(1),e.Q6J("model",r.impurities.dateType),e.xp6(2),e.Q6J("ngModel",e.xi3(20,15,r.impurities.dateTypeDate,"yyyy-MM-dd")),e.xp6(4),e.Q6J("expanded",r.panelExpanded),e.xp6(9),e.s9C("matBadge",r.impurities.impuritiesSubstanceList.length),e.xp6(6),e.Q6J("ngForOf",r.impurities.impuritiesSubstanceList),e.xp6(2),e.Q6J("expanded",!0),e.xp6(7),e.Q6J("impuritiesTotal",r.impurities.impuritiesTotal)}}var xm=function(){return["/home"]},ic=function(F,f){return{"submission-messages":!0,collapsed:F,expanded:f}};function xd(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"button",3),e.NdJ("click",function(){return e.CHM(f),e.oxw().showJSON()}),e._uU(4,"Show JSON"),e.qZA(),e.YNc(5,ds,3,3,"button",4),e._UZ(6,"span",5),e.YNc(7,Rp,2,1,"span",0),e._uU(8," \xa0 "),e.TgZ(9,"button",6),e.NdJ("click",function(){return e.CHM(f),e.oxw().validate()}),e._uU(10,"Validate and Submit"),e.qZA(),e._uU(11," \xa0\xa0\xa0\xa0\xa0 "),e.TgZ(12,"button",7),e._uU(13,"Close"),e.qZA(),e.qZA(),e.TgZ(14,"div",8),e.YNc(15,Up,2,1,"div",9),e.YNc(16,d_,6,3,"div",0),e.qZA(),e.qZA(),e.TgZ(17,"div",10),e.TgZ(18,"div",11),e.TgZ(19,"div",12),e.TgZ(20,"div",13),e.TgZ(21,"div",14),e.TgZ(22,"div",15),e._uU(23),e.qZA(),e.YNc(24,Mm,17,10,"div",16),e.qZA(),e.YNc(25,Bp,47,18,"mat-card",17),e._UZ(26,"br"),e._UZ(27,"br"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(5),e.Q6J("ngIf",r.validationMessages&&r.validationMessages.length>0),e.xp6(2),e.Q6J("ngIf",r.impurities),e.xp6(5),e.Q6J("routerLink",e.DdM(9,xm)),e.xp6(2),e.Q6J("ngClass",e.WLB(10,ic,!r.showSubmissionMessages,r.showSubmissionMessages)),e.xp6(1),e.Q6J("ngIf",r.submissionMessage),e.xp6(1),e.Q6J("ngIf",r.validationMessages),e.xp6(7),e.hij(" ",r.title," "),e.xp6(1),e.Q6J("ngIf",r.impurities.id),e.xp6(1),e.Q6J("ngIf",r.impurities)}}var Sd=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr){(0,S.Z)(this,F),this.impuritiesService=f,this.substanceService=r,this.authService=O,this.loadingService=R,this.mainNotificationService=ee,this.gaService=Je,this.utilsService=_t,this.cvService=Kt,this.activatedRoute=Un,this.router=ai,this.overlayContainerService=Pi,this.dialog=ki,this.fb=ha,this.titleService=kr,this.isLoading=!0,this.showSubmissionMessages=!1,this.validationMessages=[],this.validationResult=!1,this.subscriptions=[],this.subName="Substance Name *",this.substanceId=null,this.isDisableData=!1,this.username=null,this.title=null,this.submitDateMessage="",this.statusDateMessage="",this.isAdmin=!1,this.subRelationship=[],this.substanceNameHintMessage="",this.panelExpanded=!0}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this,O=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater").subscribe(function(ee){r.isAdmin=ee});this.subscriptions.push(O),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.username=this.authService.getUser();var R=this.activatedRoute.params.subscribe(function(ee){if(ee.id){var Je=ee.id;r.title="Update Impurity",Je!==r.id&&(r.id=Je,r.gaService.sendPageView("Impurity Edit"),r.titleService.setTitle("Update Impurities"),r.getImpurities())}else r.title="Register Impurities",r.id=r.activatedRoute.snapshot.queryParams.copy||null,r.id?(r.getImpurities("copy"),r.gaService.sendPageView("Impurities Register")):setTimeout(function(){r.gaService.sendPageView("Impurities Register"),r.titleService.setTitle("Register Impurities"),r.impuritiesService.loadImpurities(),r.impurities=r.impuritiesService.impurities,r.loadingService.setLoading(!1),r.isLoading=!1})});this.subscriptions.push(R)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"getImpurities",value:function(r){var O=this;if(null!=this.id){var R=this.id.toString(),ee=this.impuritiesService.getImpurities(R).subscribe(function(Je){Je?(r&&"copy"===r&&O.scrub(Je),O.impuritiesService.loadImpurities(Je),O.impurities=O.impuritiesService.impurities):O.handleProductRetrivalError(),O.loadingService.setLoading(!1),O.isLoading=!1},function(Je){O.gaService.sendException("getImpurities: error from API call"),O.loadingService.setLoading(!1),O.isLoading=!1,O.handleProductRetrivalError()});this.subscriptions.push(ee)}}},{key:"validate",value:function(){this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.validateClient(),0===this.validationMessages.length&&(this.submissionMessage=null,this.validationResult=!0,this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1,0===this.validationMessages.length&&!0===this.validationResult&&(this.submissionMessage="Impurities is Valid. Would you like to submit?"))}},{key:"setValidationMessage",value:function(r){var O={};O.message=r,O.messageType="ERROR",this.validationMessages.push(O),this.validationResult=!1}},{key:"validateClient",value:function(){var r=this;this.validationMessages=[],this.validationResult=!0,0===this.impurities.impuritiesSubstanceList.length&&this.setValidationMessage("Substance Name is required"),null!=this.impurities&&this.impurities.impuritiesSubstanceList.forEach(function(O,R){null!=O&&null==O.substanceUuid&&r.setValidationMessage("Substance Name ("+(R+1)+") is required")}),this.validationMessages.length>0&&(this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1)}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"addServerError",value:function(r){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var O={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};r&&r.error&&r.error.message?O.message="Server Error "+(r.status+": "||0)+r.error.message:r&&r.error&&"string"==typeof r.error?O.message="Server Error "+(r.status+": "||0)+r.error:r&&r.message&&(O.message="Server Error "+(r.status+": "||0)+r.message),this.validationMessages=[O],this.showSubmissionMessages=!0}},{key:"handleProductRetrivalError",value:function(){var r=this;this.mainNotificationService.setNotification({message:"The impurities you're trying to edit doesn't exist.",type:vn.k.error,milisecondsToShow:4e3}),setTimeout(function(){r.router.navigate(["/impurities/register"]),r.impuritiesService.loadImpurities()},5e3)}},{key:"submit",value:function(){var r=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.impuritiesService.saveImpurities().subscribe(function(O){r.loadingService.setLoading(!1),r.isLoading=!1,r.validationMessages=null,r.submissionMessage="Impurities was saved successfully!",r.showSubmissionMessages=!0,r.validationResult=!1,setTimeout(function(){if(r.showSubmissionMessages=!1,r.submissionMessage="",O.id){r.impuritiesService.bypassUpdateCheck();var R=O.id;r.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},r.router.onSameUrlNavigation="reload",r.router.navigate(["/impurities",R])}},4e3)})}},{key:"confirmDeleteImpurities",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete this Impurities?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteImpurities()})}},{key:"deleteImpurities",value:function(){var r=this;this.impuritiesService.deleteImpurities().subscribe(function(O){r.impuritiesService.bypassUpdateCheck(),r.displayMessageAfterDeleteImpurities()},function(O){console.log(O)})}},{key:"displayMessageAfterDeleteImpurities",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"This impurities record was deleted successfully",type:"home"}}).afterClosed().subscribe(function(R){r.router.navigate(["/home"])})}},{key:"showJSON",value:function(){var O=this.dialog.open(Os,{width:"90%",height:"90%",data:this.impurities}).afterClosed().subscribe(function(R){});this.subscriptions.push(O)}},{key:"addNewImpuritiesSubstance",value:function(r){r.stopPropagation(),this.impuritiesService.addNewImpuritiesSubstance()}},{key:"addNewImpuritiesTotal",value:function(){this.impuritiesService.addNewImpuritiesTotal()}},{key:"scrub",value:function(r){for(var O=r,R=nc.json.search(O,"//*[id]"),ee=0;ee {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.mat-expansion-indicator[_ngcontent-%COMP%]{pointer-events:visiblefill!important}.panel-style[_ngcontent-%COMP%] .mat-panel-title[_ngcontent-%COMP%]{width:300px;min-width:300px;max-width:300px}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.borderbottom[_ngcontent-%COMP%]{border-bottom:1px solid var(--regular-gainsboro-color)}"]}),v}();function Sm(v,F){if(1&v&&(e.TgZ(0,"div",24),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.impuritiesDetails.relatedSubstanceUnii," ")}}function ps(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",25),e.TgZ(1,"div",26),e.TgZ(2,"app-cv-input",27),e.NdJ("valueChange",function(ee){return e.CHM(f).$implicit.identityCriteriaType=ee}),e.qZA(),e.TgZ(3,"mat-form-field",12),e.TgZ(4,"input",28),e.NdJ("ngModelChange",function(ee){return e.CHM(f).$implicit.amountValue=ee}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",18),e.NdJ("valueChange",function(ee){return e.CHM(f).$implicit.unit=ee}),e.qZA(),e.TgZ(6,"div",29),e.TgZ(7,"button",4),e.NdJ("click",function(){var Je=e.CHM(f).index,_t=e.oxw();return _t.confirmDeleteIdentityCriteria(_t.impuritiesDetailsIndex,Je)}),e.TgZ(8,"mat-icon"),e._uU(9,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index;e.xp6(2),e.Q6J("model",r.identityCriteriaType),e.xp6(2),e.Q6J("ngModel",r.amountValue),e.xp6(1),e.Q6J("model",r.unit),e.xp6(2),e.MGl("matTooltip","Delete Identity Criteria ",O+1,"")}}var wo=function(){var v=function(){function F(f,r,O,R){(0,S.Z)(this,F),this.impuritiesService=f,this.loadingService=r,this.authService=O,this.dialog=R,this.subRelationship=[],this.isLoading=!1}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){}},{key:"relatedSubstanceUpdated",value:function(r){null!=r&&(this.impuritiesDetails.relatedSubstanceUuid=r.uuid,this.impuritiesDetails.relatedSubstanceUnii=r.approvalID)}},{key:"addNewImpurities",value:function(){this.impuritiesService.addNewImpuritiesDetails(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,{identityCriteriaList:[]})}},{key:"addNewIdentityCriteria",value:function(){this.impuritiesDetails.identityCriteriaList.unshift({})}},{key:"confirmDeleteImpuritiesDetails",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Impurities "+(this.impuritiesDetailsIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteImpuritiesDetails()})}},{key:"deleteImpuritiesDetails",value:function(){this.impuritiesService.deleteImpuritiesDetails(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesDetailsIndex)}},{key:"confirmDeleteIdentityCriteria",value:function(r,O){var R=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Identity Criteria "+(O+1)+"?"}}).afterClosed().subscribe(function(Je){Je&&!0===Je&&R.deleteIdentityCriteria(O)})}},{key:"deleteIdentityCriteria",value:function(r){this.impuritiesService.deleteIdentityCriteria(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesDetailsIndex,r)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Ks.q),e.Y36(Xe.b),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-details-form"]],inputs:{impuritiesDetails:"impuritiesDetails",impuritiesDetailsIndex:"impuritiesDetailsIndex",impuritiesTestIndex:"impuritiesTestIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex",relatedSubstanceUuid:"relatedSubstanceUuid"},decls:33,vars:13,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft105px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"margintop20px","bordergray"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Substance Name","header","Related Substance",1,"textaligncenter",3,"hideImage","subuuid","showMorelinks","selectionUpdated"],["class","textaligncenter font11px colororange",4,"ngIf"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Source Impurity Name","name","sourceImpurityName",3,"ngModel","ngModelChange"],["domain","IMPURITIES_IMPURITY_TYPE","title","Impurity Type","name","impurityType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],[1,"flex-container","margintop10px","marginleftneg7px"],[1,"width25percent","width160px","padbottom10px","marginright10px"],["mat-raised-button","","color","primary","matTooltip","Add Identity Criteria",3,"click"],[1,"width75percent"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"textaligncenter","font11px","colororange"],[1,"marginbottom10px"],[1,"form-row","padleft7px"],["domain","IMPURITIES_IDENTITY_CRITERIA_TYPE","title","Identity Criteria Type","name","identityCriteriaType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Amount Value","name","amountValue",3,"ngModel","ngModelChange"],[1,"col-3-1","marginleftneg40px",2,"margin-left","-40px"]],template:function(f,r){1&f&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return r.confirmDeleteImpuritiesDetails()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e.TgZ(13,"app-substance-selector",8),e.NdJ("selectionUpdated",function(R){return r.relatedSubstanceUpdated(R)}),e.qZA(),e.YNc(14,Sm,2,1,"div",9),e.qZA(),e.TgZ(15,"div",10),e.TgZ(16,"div",11),e.TgZ(17,"mat-form-field",12),e.TgZ(18,"input",13),e.NdJ("ngModelChange",function(R){return r.impuritiesDetails.sourceImpurityName=R}),e.qZA(),e.qZA(),e.TgZ(19,"app-cv-input",14),e.NdJ("valueChange",function(R){return r.impuritiesDetails.impurityType=R}),e.qZA(),e.TgZ(20,"mat-form-field",12),e.TgZ(21,"textarea",15),e.NdJ("ngModelChange",function(R){return r.impuritiesDetails.comments=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(22,"div",11),e.TgZ(23,"app-cv-input",16),e.NdJ("valueChange",function(R){return r.impuritiesDetails.limitType=R}),e.qZA(),e.TgZ(24,"mat-form-field",12),e.TgZ(25,"input",17),e.NdJ("ngModelChange",function(R){return r.impuritiesDetails.limitValue=R}),e.qZA(),e.qZA(),e.TgZ(26,"app-cv-input",18),e.NdJ("valueChange",function(R){return r.impuritiesDetails.unit=R}),e.qZA(),e.qZA(),e.TgZ(27,"div",19),e.TgZ(28,"div",20),e.TgZ(29,"button",21),e.NdJ("click",function(){return r.addNewIdentityCriteria()}),e._uU(30," Add Identity Criteria "),e.qZA(),e.qZA(),e.TgZ(31,"div",22),e.YNc(32,ps,10,4,"div",23),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&f&&(e.xp6(4),e.hij("Impurities\xa0",r.impuritiesDetailsIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Impurities ",r.impuritiesDetailsIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",r.impuritiesDetails.relatedSubstanceUuid)("showMorelinks",!0),e.xp6(1),e.Q6J("ngIf",r.impuritiesDetails.relatedSubstanceUnii),e.xp6(4),e.Q6J("ngModel",r.impuritiesDetails.sourceImpurityName),e.xp6(1),e.Q6J("model",r.impuritiesDetails.impurityType),e.xp6(2),e.Q6J("ngModel",r.impuritiesDetails.comments),e.xp6(2),e.Q6J("model",r.impuritiesDetails.limitType),e.xp6(2),e.Q6J("ngModel",r.impuritiesDetails.limitValue),e.xp6(1),e.Q6J("model",r.impuritiesDetails.unit),e.xp6(6),e.Q6J("ngForOf",r.impuritiesDetails.identityCriteriaList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-2[_ngcontent-%COMP%]{width:calc((100% - 15px) / 1.5);margin-right:0}.col-3-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:10px}.col-4-1-short[_ngcontent-%COMP%]{width:calc((100% - 240px)/4 - 5px);margin-right:30px}.col-4-1-short[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.marginright10px[_ngcontent-%COMP%]{margin-right:10px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft105px[_ngcontent-%COMP%]{padding-left:105px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid var(--regular-blue-color);padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width160px[_ngcontent-%COMP%]{width:160px;min-width:160px;max-width:160px}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.colororange[_ngcontent-%COMP%]{color:var(--burnt-orange-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.tabStyle[_ngcontent-%COMP%]{width:180px;height:30px;border:1px solid var(--regular-grey-color);background:var(--tabstyle-bg-color);background-image:linear-gradient(to bottom,var(--tabstyle-bg-img-start-color),var(--tabstyle-bg-img-end-color));-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-top:5px;padding-right:5px;text-align:center} .related-substance img{max-width:125px!important;margin:auto}"]}),v}(),ac=function(F){return["/impurities",F,"edit"]};function f_(v,F){if(1&v&&(e.TgZ(0,"a",20),e._UZ(1,"mat-icon",21),e.qZA()),2&v){var f=e.oxw(3);e.Q6J("routerLink",e.VKq(1,ac,f.impurities.id))}}var mg=function(){return["/impurities/register"]},Au=function(F){return{copy:F}};function Tm(v,F){if(1&v&&(e.TgZ(0,"a",22),e._UZ(1,"mat-icon",23),e.qZA()),2&v){var f=e.oxw(3);e.Q6J("routerLink",e.DdM(2,mg))("queryParams",e.VKq(3,Au,f.impurities.id))}}function m_(v,F){1&v&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e.qZA())}function Am(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(2),e.Oqu(f.approvalID)}}function fl(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"img",33),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("entityId",f.substanceUuid)}}function Ya(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(2),e.Oqu(f.relatedSubstanceUnii)}}var kc=function(F){return["/substances",F]};function qo(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"a",27),e._uU(3),e.qZA(),e.qZA(),e.YNc(4,Ya,3,1,"div",0),e._UZ(5,"img",37),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,kc,f.relatedSubstanceUuid)),e.xp6(1),e.Oqu(f.substanceName),e.xp6(1),e.Q6J("ngIf",f.relatedSubstanceUnii),e.xp6(1),e.Q6J("entityId",f.relatedSubstanceUuid)}}function Td(v,F){1&v&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.qZA())}function h_(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Td,2,0,"span",0),e.TgZ(2,"b"),e._uU(3,"Criteria Type:"),e.qZA(),e._uU(4),e._UZ(5,"br"),e.TgZ(6,"b"),e._uU(7,"Amount Value:"),e.qZA(),e._uU(8),e._UZ(9,"br"),e.TgZ(10,"b"),e._uU(11,"Unit:"),e.qZA(),e._uU(12),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(1),e.Q6J("ngIf",r>0),e.xp6(3),e.hij("\xa0",f.identityCriteriaType,""),e.xp6(4),e.hij("\xa0",f.amountValue,""),e.xp6(4),e.hij("\xa0",f.unit," ")}}function mr(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td",36),e.YNc(4,qo,6,6,"div",0),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.TgZ(17,"td"),e.YNc(18,h_,13,4,"div",29),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Q6J("ngIf",f.relatedSubstanceUuid),e.xp6(2),e.Oqu(f.sourceImpurityName),e.xp6(2),e.Oqu(f.impurityType),e.xp6(2),e.Oqu(f.limitType),e.xp6(2),e.Oqu(f.limitValue),e.xp6(2),e.Oqu(f.unit),e.xp6(2),e.Oqu(f.comments),e.xp6(2),e.Q6J("ngForOf",f.identityCriteriaList)}}function Yp(v,F){1&v&&(e.TgZ(0,"span"),e._UZ(1,"br"),e.qZA())}function qp(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Yp,2,0,"span",0),e.TgZ(2,"b"),e._uU(3,"Criteria Type:"),e.qZA(),e._uU(4),e._UZ(5,"br"),e.TgZ(6,"b"),e._uU(7,"Amount Value:"),e.qZA(),e._uU(8),e._UZ(9,"br"),e.TgZ(10,"b"),e._uU(11,"Unit:"),e.qZA(),e._uU(12),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(1),e.Q6J("ngIf",r>0),e.xp6(3),e.hij("\xa0",f.identityCriteriaType,""),e.xp6(4),e.hij("\xa0",f.amountValue,""),e.xp6(4),e.hij("\xa0",f.unit," ")}}function Ad(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e.YNc(16,qp,13,4,"div",29),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Oqu(f.impurityType),e.xp6(2),e.Oqu(f.testType),e.xp6(2),e.Oqu(f.limitType),e.xp6(2),e.Oqu(f.limitValue),e.xp6(2),e.Oqu(f.unit),e.xp6(2),e.Oqu(f.comments),e.xp6(2),e.Q6J("ngForOf",f.identityCriteriaList)}}function __(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"fieldset",34),e.TgZ(2,"legend",34),e._uU(3),e.TgZ(4,"span",35),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"div",10),e.TgZ(7,"div",11),e.TgZ(8,"div",12),e._uU(9," Test: "),e.qZA(),e.TgZ(10,"div",13),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"div",11),e.TgZ(13,"div",12),e._uU(14," Test Type: "),e.qZA(),e.TgZ(15,"div",13),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.TgZ(17,"div",10),e.TgZ(18,"div",11),e.TgZ(19,"div",12),e._uU(20," Test Description: "),e.qZA(),e.TgZ(21,"div",13),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"div",11),e.TgZ(24,"div",12),e._uU(25," Comments: "),e.qZA(),e.TgZ(26,"div",13),e._uU(27),e.qZA(),e.qZA(),e.qZA(),e.TgZ(28,"div",30),e.TgZ(29,"mat-card",4),e.TgZ(30,"mat-card-title",16),e._uU(31),e.qZA(),e.TgZ(32,"mat-card-content"),e.TgZ(33,"table",31),e.TgZ(34,"thead"),e.TgZ(35,"tr"),e.TgZ(36,"th"),e._uU(37,"#"),e.qZA(),e.TgZ(38,"th",32),e._uU(39,"Related Substance"),e.qZA(),e.TgZ(40,"th"),e._uU(41,"Source Impurity Name"),e.qZA(),e.TgZ(42,"th"),e._uU(43,"Impurity Type"),e.qZA(),e.TgZ(44,"th"),e._uU(45,"Limit Type"),e.qZA(),e.TgZ(46,"th"),e._uU(47,"Limit Value"),e.qZA(),e.TgZ(48,"th"),e._uU(49,"Unit"),e.qZA(),e.TgZ(50,"th"),e._uU(51,"Comments"),e.qZA(),e.TgZ(52,"th"),e._uU(53,"Identity Criteria"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(54,"tbody"),e.YNc(55,mr,19,9,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(56,"div",30),e.TgZ(57,"mat-card",4),e.TgZ(58,"mat-card-title",16),e._uU(59),e.qZA(),e.TgZ(60,"mat-card-content"),e.TgZ(61,"table",31),e.TgZ(62,"thead"),e.TgZ(63,"tr"),e.TgZ(64,"th"),e._uU(65,"#"),e.qZA(),e.TgZ(66,"th"),e._uU(67,"Impurity Type"),e.qZA(),e.TgZ(68,"th"),e._uU(69,"Test Type"),e.qZA(),e.TgZ(70,"th"),e._uU(71,"Limit Type"),e.qZA(),e.TgZ(72,"th"),e._uU(73,"Limit Value"),e.qZA(),e.TgZ(74,"th"),e._uU(75,"Unit"),e.qZA(),e.TgZ(76,"th"),e._uU(77,"Comments"),e.qZA(),e.TgZ(78,"th"),e._uU(79,"Identity Criteria"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(80,"tbody"),e.YNc(81,Ad,17,8,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(82,"br"),e._UZ(83,"br"),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.oxw().$implicit;e.xp6(3),e.AsE(" Test ",r+1," of ",O.impuritiesTestList.length," "),e.xp6(2),e.hij("(",O.substanceName,")"),e.xp6(6),e.hij(" ",f.test," "),e.xp6(5),e.hij(" ",f.testType," "),e.xp6(6),e.hij(" ",f.testDescription," "),e.xp6(5),e.hij(" ",f.comments," "),e.xp6(4),e.hij(" Impurities (",f.impuritiesDetailsList.length,") "),e.xp6(24),e.Q6J("ngForOf",f.impuritiesDetailsList),e.xp6(4),e.hij(" Unspecified Impurities (",f.impuritiesUnspecifiedList.length,") "),e.xp6(22),e.Q6J("ngForOf",f.impuritiesUnspecifiedList)}}function Hp(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(2),e.Oqu(f.relatedSubstanceUnii)}}function hg(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"a",27),e._uU(3),e.qZA(),e.qZA(),e.YNc(4,Hp,3,1,"div",0),e._UZ(5,"img",37),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,kc,f.relatedSubstanceUuid)),e.xp6(1),e.Oqu(f.substanceName),e.xp6(1),e.Q6J("ngIf",f.relatedSubstanceUnii),e.xp6(1),e.Q6J("entityId",f.relatedSubstanceUuid)}}function g_(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td",36),e.YNc(4,hg,6,6,"div",0),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Q6J("ngIf",f.relatedSubstanceUuid),e.xp6(2),e.Oqu(f.pharmaceuticalLimit),e.xp6(2),e.Oqu(f.testType),e.xp6(2),e.Oqu(f.limitType),e.xp6(2),e.Oqu(f.limitValue),e.xp6(2),e.Oqu(f.unit),e.xp6(2),e.Oqu(f.comments)}}function Pm(v,F){if(1&v&&(e.TgZ(0,"div"),e._UZ(1,"br"),e._uU(2),e.qZA()),2&v){var f=e.oxw(2).$implicit;e.xp6(2),e.Oqu(f.relatedSubstanceUnii)}}function Dm(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div"),e.TgZ(2,"a",27),e._uU(3),e.qZA(),e.qZA(),e.YNc(4,Pm,3,1,"div",0),e._UZ(5,"img",37),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(2),e.Q6J("routerLink",e.VKq(4,kc,f.relatedSubstanceUuid)),e.xp6(1),e.Oqu(f.substanceName),e.xp6(1),e.Q6J("ngIf",f.relatedSubstanceUnii),e.xp6(1),e.Q6J("entityId",f.relatedSubstanceUuid)}}function wm(v,F){if(1&v&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td",36),e.YNc(4,Dm,6,6,"div",0),e.qZA(),e.TgZ(5,"td"),e._uU(6),e.qZA(),e.TgZ(7,"td"),e._uU(8),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.TgZ(13,"td"),e._uU(14),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index;e.xp6(2),e.Oqu(r+1),e.xp6(2),e.Q6J("ngIf",f.relatedSubstanceUuid),e.xp6(2),e.Oqu(f.testType),e.xp6(2),e.Oqu(f.limitType),e.xp6(2),e.Oqu(f.limitValue),e.xp6(2),e.Oqu(f.unit),e.xp6(2),e.Oqu(f.comments)}}function Om(v,F){if(1&v&&(e.TgZ(0,"div",24),e.YNc(1,m_,4,0,"div",0),e.TgZ(2,"div",25),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",4),e.TgZ(6,"mat-card"),e.TgZ(7,"mat-card-content"),e.TgZ(8,"div",26),e.TgZ(9,"div",11),e.TgZ(10,"div",12),e._uU(11," Substance Name: "),e.qZA(),e.TgZ(12,"div",13),e.TgZ(13,"div"),e.TgZ(14,"a",27),e.TgZ(15,"span",28),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e.YNc(17,Am,3,1,"div",0),e.YNc(18,fl,2,1,"div",0),e.qZA(),e.qZA(),e.TgZ(19,"div",11),e.TgZ(20,"div",12),e._uU(21," Assay Low:"),e._UZ(22,"br"),e._UZ(23,"br"),e._uU(24," Assay High:"),e._UZ(25,"br"),e._UZ(26,"br"),e._uU(27," Unit:"),e._UZ(28,"br"),e._UZ(29,"br"),e._uU(30," Comments:"),e._UZ(31,"br"),e.qZA(),e.TgZ(32,"div",13),e._uU(33),e._UZ(34,"br"),e._UZ(35,"br"),e._uU(36),e._UZ(37,"br"),e._UZ(38,"br"),e._uU(39),e._UZ(40,"br"),e._UZ(41,"br"),e._uU(42),e._UZ(43,"br"),e.qZA(),e.qZA(),e.qZA(),e.YNc(44,__,84,11,"div",29),e.TgZ(45,"div",30),e.TgZ(46,"mat-card",4),e.TgZ(47,"mat-card-title",16),e._uU(48),e.qZA(),e.TgZ(49,"mat-card-content"),e.TgZ(50,"table",31),e.TgZ(51,"thead"),e.TgZ(52,"tr"),e.TgZ(53,"th"),e._uU(54,"#"),e.qZA(),e.TgZ(55,"th",32),e._uU(56,"Related Substance"),e.qZA(),e.TgZ(57,"th"),e._uU(58,"Pharmaceutical Limit"),e.qZA(),e.TgZ(59,"th"),e._uU(60,"Test Type"),e.qZA(),e.TgZ(61,"th"),e._uU(62,"Limit Type"),e.qZA(),e.TgZ(63,"th"),e._uU(64,"Limit Value"),e.qZA(),e.TgZ(65,"th"),e._uU(66,"Unit"),e.qZA(),e.TgZ(67,"th"),e._uU(68,"Comments"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(69,"tbody"),e.YNc(70,g_,17,8,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(71,"div",30),e.TgZ(72,"mat-card",4),e.TgZ(73,"mat-card-title",16),e._uU(74),e.qZA(),e.TgZ(75,"mat-card-content"),e.TgZ(76,"table",31),e.TgZ(77,"thead"),e.TgZ(78,"tr"),e.TgZ(79,"th"),e._uU(80,"#"),e.qZA(),e.TgZ(81,"th",32),e._uU(82,"Related Substance"),e.qZA(),e.TgZ(83,"th"),e._uU(84,"Test Type"),e.qZA(),e.TgZ(85,"th"),e._uU(86,"Limit Type"),e.qZA(),e.TgZ(87,"th"),e._uU(88,"Limit Value"),e.qZA(),e.TgZ(89,"th"),e._uU(90,"Unit"),e.qZA(),e.TgZ(91,"th"),e._uU(92,"Comments"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(93,"tbody"),e.YNc(94,wm,15,7,"tr",29),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.oxw(3);e.xp6(1),e.Q6J("ngIf",r>0),e.xp6(3),e.AsE("",r+1," of ",O.impurities.impuritiesSubstanceList.length,".\xa0Impurity Substance"),e.xp6(10),e.Q6J("routerLink",e.VKq(16,kc,f.substanceUuid)),e.xp6(2),e.Oqu(f.substanceName),e.xp6(1),e.Q6J("ngIf",f.approvalID),e.xp6(1),e.Q6J("ngIf",f.substanceUuid),e.xp6(15),e.hij(" ",f.low,""),e.xp6(3),e.hij(" ",f.high,""),e.xp6(3),e.hij(" ",f.unit,""),e.xp6(3),e.hij(" ",f.comments,""),e.xp6(2),e.Q6J("ngForOf",f.impuritiesTestList),e.xp6(4),e.hij(" Residual Solvents Impurities (",f.impuritiesResidualSolventsList.length,") "),e.xp6(22),e.Q6J("ngForOf",f.impuritiesResidualSolventsList),e.xp6(4),e.hij(" Inorganic Impurities (",f.impuritiesInorganicList.length,") "),e.xp6(20),e.Q6J("ngForOf",f.impuritiesInorganicList)}}function Em(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",3),e.TgZ(2,"mat-card",4),e.TgZ(3,"mat-card-title"),e.TgZ(4,"div",5),e._uU(5," Impurities Details\xa0\xa0\xa0\xa0 "),e.YNc(6,f_,2,3,"a",6),e.YNc(7,Tm,2,5,"a",7),e.qZA(),e.TgZ(8,"div",8),e.TgZ(9,"span",9),e._uU(10,"Created By:"),e.qZA(),e._uU(11),e.TgZ(12,"span",9),e._uU(13,"Create Date:"),e.qZA(),e._uU(14),e.ALo(15,"date"),e.TgZ(16,"span",9),e._uU(17,"Modified By:"),e.qZA(),e._uU(18),e.TgZ(19,"span",9),e._uU(20,"Modify Date:"),e.qZA(),e._uU(21),e.ALo(22,"date"),e.qZA(),e.qZA(),e.TgZ(23,"mat-card-content"),e._UZ(24,"br"),e.TgZ(25,"div",10),e.TgZ(26,"div",11),e.TgZ(27,"div",12),e._uU(28," Source Type: "),e.qZA(),e.TgZ(29,"div",13),e._uU(30),e.qZA(),e.qZA(),e.TgZ(31,"div",11),e.TgZ(32,"div",12),e._uU(33," Source: "),e.qZA(),e.TgZ(34,"div",13),e._uU(35),e.qZA(),e.qZA(),e.qZA(),e.TgZ(36,"div",10),e.TgZ(37,"div",11),e.TgZ(38,"div",12),e._uU(39," Source ID: "),e.qZA(),e.TgZ(40,"div",13),e._uU(41),e.qZA(),e.qZA(),e.TgZ(42,"div",11),e.TgZ(43,"div",12),e._uU(44," Type: "),e.qZA(),e.TgZ(45,"div",13),e._uU(46),e.qZA(),e.qZA(),e.qZA(),e.TgZ(47,"div",10),e.TgZ(48,"div",11),e.TgZ(49,"div",12),e._uU(50," Spec Type: "),e.qZA(),e.TgZ(51,"div",13),e._uU(52),e.qZA(),e.qZA(),e.TgZ(53,"div",11),e.TgZ(54,"div",12),e._uU(55," Product ID: "),e.qZA(),e.TgZ(56,"div",13),e._uU(57),e.qZA(),e.qZA(),e.qZA(),e.TgZ(58,"div",10),e.TgZ(59,"div",11),e.TgZ(60,"div",12),e._uU(61," Date Type: "),e.qZA(),e.TgZ(62,"div",13),e._uU(63),e.qZA(),e.qZA(),e.TgZ(64,"div",11),e.TgZ(65,"div",12),e._uU(66," Date Type Date: "),e.qZA(),e.TgZ(67,"div",13),e._uU(68),e.ALo(69,"date"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(70,"div",10),e.TgZ(71,"div",11),e.TgZ(72,"div",12),e._uU(73," Product/Substance Name: "),e.qZA(),e.TgZ(74,"div",13),e._uU(75),e.qZA(),e.qZA(),e.TgZ(76,"div",11),e.TgZ(77,"div",12),e._uU(78," Submitter Name: "),e.qZA(),e.TgZ(79,"div",13),e._uU(80),e.qZA(),e.qZA(),e.qZA(),e.YNc(81,Om,95,18,"div",14),e.TgZ(82,"div",15),e.TgZ(83,"mat-card",4),e.TgZ(84,"mat-card-title",16),e._uU(85," Total Impurities "),e.qZA(),e.TgZ(86,"mat-card-content"),e.TgZ(87,"div",10),e.TgZ(88,"div",11),e.TgZ(89,"div",12),e._uU(90," Test Type: "),e.qZA(),e.TgZ(91,"div",13),e._uU(92),e.qZA(),e.qZA(),e.TgZ(93,"div",11),e.TgZ(94,"div",12),e._uU(95," Limit Value: "),e.qZA(),e.TgZ(96,"div",13),e._uU(97),e.qZA(),e.qZA(),e.qZA(),e.TgZ(98,"div",10),e.TgZ(99,"div",11),e.TgZ(100,"div",12),e._uU(101," Amount Value: "),e.qZA(),e.TgZ(102,"div",13),e._uU(103),e.qZA(),e.qZA(),e.TgZ(104,"div",11),e.TgZ(105,"div",12),e._uU(106," Limit Type: "),e.qZA(),e.TgZ(107,"div",13),e._uU(108),e.qZA(),e.qZA(),e.qZA(),e.TgZ(109,"div",10),e.TgZ(110,"div",17),e.TgZ(111,"div",18),e._uU(112," Comments: "),e.qZA(),e.TgZ(113,"div",19),e._uU(114),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(6),e.Q6J("ngIf",f.isAdmin),e.xp6(1),e.Q6J("ngIf",f.isAdmin),e.xp6(4),e.hij(" ",f.impurities.createdBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij("",e.xi3(15,22,f.impurities.creationDate,"MM/dd/yyyy hh:mm:ss a"),"\xa0\xa0\xa0 "),e.xp6(4),e.hij(" ",f.impurities.modifiedBy,"\xa0\xa0\xa0 "),e.xp6(3),e.hij(" ",e.xi3(22,25,f.impurities.lastModifiedDate,"MM/dd/yyyy hh:mm:ss a")," "),e.xp6(9),e.hij(" ",f.impurities.sourceType," "),e.xp6(5),e.hij(" ",f.impurities.source," "),e.xp6(6),e.hij(" ",f.impurities.sourceId," "),e.xp6(5),e.hij(" ",f.impurities.type," "),e.xp6(6),e.hij(" ",f.impurities.specType," "),e.xp6(5),e.hij(" ",f.impurities.productId," "),e.xp6(6),e.hij(" ",f.impurities.dateType," "),e.xp6(5),e.hij(" ",e.xi3(69,28,f.impurities.dateTypeDate,"MM/dd/yyyy")," "),e.xp6(7),e.hij(" ",f.impurities.productSubstanceName," "),e.xp6(5),e.hij(" ",f.impurities.submitterName," "),e.xp6(1),e.Q6J("ngForOf",f.impurities.impuritiesSubstanceList),e.xp6(11),e.hij(" ",f.impurities.impuritiesTotal.testType," "),e.xp6(5),e.hij(" ",f.impurities.impuritiesTotal.limitValue," "),e.xp6(6),e.hij(" ",f.impurities.impuritiesTotal.amountValue," "),e.xp6(5),e.hij(" ",f.impurities.impuritiesTotal.limitType," "),e.xp6(6),e.hij(" ",f.impurities.impuritiesTotal.comments," ")}}function Ol(v,F){1&v&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e.TgZ(4,"div",38),e._uU(5,"There is no Impurities Data found."),e.qZA())}function Pd(v,F){if(1&v&&(e.TgZ(0,"div"),e.YNc(1,Em,115,31,"div",1),e.YNc(2,Ol,6,0,"ng-template",null,2,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw();e.xp6(1),e.Q6J("ngIf",r.impurities.id)("ngIfElse",f)}}var v_=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai){(0,S.Z)(this,F),this.activatedRoute=f,this.router=r,this.authService=O,this.utilsService=R,this.loadingService=ee,this.gaService=Je,this.mainNotificationService=_t,this.impuritiesService=Kt,this.generalService=Un,this.titleService=ai,this.substanceName="",this.isAdmin=!1,this.message="",this.subscriptions=[]}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.loadingService.setLoading(!0);var O=this.authService.hasAnyRolesAsync("admin","updater","superUpdater").subscribe(function(R){r.isAdmin=R});this.subscriptions.push(O),this.id=this.activatedRoute.snapshot.params.id,null!=this.id?this.getImpurities():this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()})}},{key:"getImpurities",value:function(){var r=this,O=this.impuritiesService.getImpurities(this.id).subscribe(function(R){r.impurities=R,Object.keys(r.impurities).length>0&&(r.titleService.setTitle("Impurities Details"),r.impurities.impuritiesSubstanceList.forEach(function(ee,Je){if(ee.substanceUuid){var _t=r.generalService.getSubstanceBySubstanceUuid(ee.substanceUuid).subscribe(function(Kt){Kt&&(ee.substanceName=Kt._name,ee.approvalID=Kt.approvalID)});r.subscriptions.push(_t)}}),r.impurities.impuritiesSubstanceList.forEach(function(ee){ee.impuritiesTestList.forEach(function(Je){Je.impuritiesDetailsList.forEach(function(_t){if(_t.relatedSubstanceUuid){var Kt=r.generalService.getSubstanceBySubstanceUuid(_t.relatedSubstanceUuid).subscribe(function(Un){Un&&(_t.substanceName=Un._name,_t.relatedSubstanceUnii=Un.approvalID)});r.subscriptions.push(Kt)}})})}),r.impurities.impuritiesSubstanceList.forEach(function(ee){ee.impuritiesResidualSolventsList.forEach(function(Je){if(Je.relatedSubstanceUuid){var _t=r.generalService.getSubstanceBySubstanceUuid(Je.relatedSubstanceUuid).subscribe(function(Kt){Kt&&(Je.substanceName=Kt._name,Je.relatedSubstanceUnii=Kt.approvalID)});r.subscriptions.push(_t)}})}),r.impurities.impuritiesSubstanceList.forEach(function(ee){ee.impuritiesInorganicList.forEach(function(Je){if(Je.relatedSubstanceUuid){var _t=r.impuritiesService.getSubstanceDetailsBySubstanceId(Je.relatedSubstanceUuid).subscribe(function(Kt){Kt&&(Je.substanceName=Kt.name,Je.relatedSubstanceUnii=Kt.unii)});r.subscriptions.push(_t)}})}))},function(R){r.handleSubstanceRetrivalError()});this.subscriptions.push(O)}},{key:"getSubstancePreferredName",value:function(r){var R=this.generalService.getSubstanceBySubstanceUuid(r).subscribe(function(ee){});this.subscriptions.push(R)}},{key:"handleSubstanceRetrivalError",value:function(){var r=this;this.loadingService.setLoading(!1),this.mainNotificationService.setNotification({message:"The web address above is incorrect. You're being forwarded to Browse Substances",type:vn.k.error,milisecondsToShow:4e3}),setTimeout(function(){r.router.navigate(["/browse-substance"])},5e3)}},{key:"getSafeStructureImgUrl",value:function(r){var O=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150;return this.utilsService.getSafeStructureImgUrl(r,O,!0)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(u.gz),e.Y36(u.F0),e.Y36(Me.e),e.Y36(ri.F),e.Y36(Xe.b),e.Y36(ba.$),e.Y36(zt.a),e.Y36(Ks.q),e.Y36(D.m),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-details"]],decls:6,vars:1,consts:[[4,"ngIf"],[4,"ngIf","ngIfElse"],["noRecord",""],[1,"details-container","margintop90px"],[1,"bordergray"],[1,"width300px"],["target","_blank","matTooltip","Edit GSRS Impurities Record",3,"routerLink",4,"ngIf"],["mat-icon-button","","matTooltip","copy Impurities to new registration form",3,"routerLink","queryParams",4,"ngIf"],[1,"width60percent","font11px"],[1,"colorgray"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"],["class","margintop30px marginbottom30px",4,"ngFor","ngForOf"],[1,"details-container"],[1,"title2"],[1,"row-property-2"],[1,"row-property-key-2"],[1,"row-property-value-2"],["target","_blank","matTooltip","Edit GSRS Impurities Record",3,"routerLink"],["svgIcon","edit"],["mat-icon-button","","matTooltip","copy Impurities to new registration form",3,"routerLink","queryParams"],["svgIcon","file_copy"],[1,"margintop30px","marginbottom30px"],[1,"headerstyle","title2","padleft20px"],[1,"row-without-border"],["target","_blank",3,"routerLink"],[1,"colororange","font16px","fontbold"],[4,"ngFor","ngForOf"],[1,"details-container","margintop30px"],[1,"blueTable"],[1,"width200px"],["appSubstanceImage","",1,"structure-img",3,"entityId"],[1,"border"],[1,"font11px"],[1,"textaligncenter","width200px"],["appSubstanceImage","",1,"structure-image",3,"entityId"],[1,"colororange","padtop50px","padleft50px"]],template:function(f,r){1&f&&(e._UZ(0,"br"),e.YNc(1,Pd,4,2,"div",0),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e._UZ(5,"br")),2&f&&(e.xp6(1),e.Q6J("ngIf",r.impurities))},directives:[c.O5,o.a8,o.n5,u.yS,s.gM,T.Hw,h.zs,o.dn,c.sg,ie.m],pipes:[c.uU],styles:[".details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.box[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flexgrow[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;min-height:60%}.mat-card[_ngcontent-%COMP%]{max-width:1028px;width:100%}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;border-bottom:solid 1px var(--box-shadow-color-3)}.row-without-border[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:7px;font-size:12px;font-weight:600}.row-property-value[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:7px;font-size:12px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:20%;max-width:20%;padding:6px;font-size:12px;font-weight:600}.row-property-value-2[_ngcontent-%COMP%]{min-width:80%;max-width:80%;padding:6px;font-size:12px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:25%}.row-property-key-4[_ngcontent-%COMP%]{min-width:40%;max-width:40%;padding:6px;font-size:12px;font-weight:600}.row-property-value-4[_ngcontent-%COMP%]{min-width:60%;max-width:60%;padding:6px;font-size:12px}.title[_ngcontent-%COMP%]{font-size:15px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-right:5px;text-align:top;margin-bottom:9px}.title2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap;white-space:normal;font-size:18px;color:var(--primary-title-color)}.headerstyle[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color);height:30px;background-color:var(--light-yellow-color)}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.marginbottom30px[_ngcontent-%COMP%]{margin-bottom:30px}.marginbottom80px[_ngcontent-%COMP%]{margin-bottom:80px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padtop50px[_ngcontent-%COMP%]{padding-top:50px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft50px[_ngcontent-%COMP%]{padding-left:50px}.padleft200px[_ngcontent-%COMP%]{padding-left:200px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:-10px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font11px[_ngcontent-%COMP%]{font-size:11px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font16px[_ngcontent-%COMP%]{font-size:16px}.font20px[_ngcontent-%COMP%]{font-size:20px}.fontbold[_ngcontent-%COMP%]{font-weight:500}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colororange[_ngcontent-%COMP%]{color:var(--orange-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderorange[_ngcontent-%COMP%]{border:1px solid var(--regular-orangered-color)}.colororange[_ngcontent-%COMP%]{color:var(--orange-color)}.width40px[_ngcontent-%COMP%]{width:40px;max-width:40px}.width120px[_ngcontent-%COMP%]{width:120px;max-width:120px}.width200px[_ngcontent-%COMP%]{width:200px;max-width:200px}.width300px[_ngcontent-%COMP%]{width:300px;max-width:300px}.width45percent[_ngcontent-%COMP%]{width:45%}.width50percent[_ngcontent-%COMP%]{width:50%}.width60percent[_ngcontent-%COMP%]{width:60%;max-width:60%}.textalignleft[_ngcontent-%COMP%]{text-align:left}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.backgroundblue[_ngcontent-%COMP%]{background-color:var(--regular-blue-color)}fieldset.border[_ngcontent-%COMP%]{border:solid 2px var(--fieldset-red-border-color)!important;padding:0 10px 10px;border-bottom:none}legend.border[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:14px;color:var(--legend-red-border-color);font-family:Verdana;font-weight:700;padding:10px;margin-bottom:0;border:2px solid var(--regular-orangered-color);background-color:var(--legend-bg-color)}fieldset.border2[_ngcontent-%COMP%]{border:solid 1px var(--pale-border-color)!important;padding:3px 10px 8px;border-bottom:none}legend.border2[_ngcontent-%COMP%]{width:auto!important;border:none;border-bottom:none;font-size:10px;color:var(--legend-blue-border-color);font-family:Verdana;font-weight:700;margin-bottom:0}table.blueTable[_ngcontent-%COMP%]{font-family:Roboto,Helvetica Neue,sans-serif;border:1px solid var(--secondary-blue-color);background-color:var(----table-bg-color);width:100%;text-align:left;border-collapse:collapse}table.blueTable[_ngcontent-%COMP%] td[_ngcontent-%COMP%], table.blueTable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid var(--table-th-border-color);padding:3px 2px}table.blueTable[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:12px;vertical-align:top;padding:10px}table.blueTable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even){background:var(--table-tr-even-bg-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--table-thead-bg-color);border-bottom:1px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:var(--table-th-color);border-left:1px solid var(--table-th-border-color-2);padding:10px}table.blueTable[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{border-left:none}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:var(--white-color);background:var(--table-th-border-color-2);border-top:2px solid var(--table-thead-border-color)}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:14px}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%]{text-align:right}table.blueTable[_ngcontent-%COMP%] tfoot[_ngcontent-%COMP%] .links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:inline-block;background:var(--secondary-blue-color);color:var(--white-color);padding:2px 8px;border-radius:5px}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.product-details-container[_ngcontent-%COMP%]{padding:10px}}@media (max-width: 918px){.product-property[_ngcontent-%COMP%]{width:100%;border:1px solid var(--regular-red-color)}.row[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.row[_ngcontent-%COMP%]:not(:last-child){border-bottom:none}.row[_ngcontent-%COMP%]:not(:last-child) .product-property[_ngcontent-%COMP%]{border-bottom:solid 1px var(--box-shadow-color-3)}.row[_ngcontent-%COMP%]:last-child .row[_ngcontent-%COMP%]:not(:last-child){border-bottom:solid 1px var(--box-shadow-color-3)}}"]}),v}();function y_(v,F){1&v&&(e.TgZ(0,"span"),e._UZ(1,"hr"),e._UZ(2,"br"),e.qZA())}function Zm(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",18),e.TgZ(1,"div",19),e.TgZ(2,"app-cv-input",20),e.NdJ("valueChange",function(ee){return e.CHM(f).$implicit.identityCriteriaType=ee}),e.qZA(),e.TgZ(3,"mat-form-field",21),e.TgZ(4,"input",22),e.NdJ("ngModelChange",function(ee){return e.CHM(f).$implicit.amountValue=ee}),e.qZA(),e.qZA(),e.TgZ(5,"app-cv-input",23),e.NdJ("valueChange",function(ee){return e.CHM(f).$implicit.unit=ee}),e.qZA(),e.TgZ(6,"div",21),e.TgZ(7,"button",11),e.NdJ("click",function(){var Je=e.CHM(f).index;return e.oxw().confirmDeleteIdentityCriteria(Je)}),e.TgZ(8,"mat-icon"),e._uU(9,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index;e.xp6(2),e.Q6J("model",r.identityCriteriaType),e.xp6(2),e.Q6J("ngModel",r.amountValue),e.xp6(1),e.Q6J("model",r.unit),e.xp6(2),e.MGl("matTooltip","Delete Identity Criteria ",O+1,"")}}var Dd=function(){var v=function(){function F(f,r,O,R){(0,S.Z)(this,F),this.impuritiesService=f,this.loadingService=r,this.authService=O,this.dialog=R,this.subRelationship=[],this.isLoading=!1}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){}},{key:"confirmDeleteImpuritiesUnspecified",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delele Unspecified Impurities "+(this.impuritiesUnspecifiedIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteImpuritiesUnspecified()})}},{key:"deleteImpuritiesUnspecified",value:function(){this.impuritiesService.deleteImpuritiesUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesUnspecifiedIndex)}},{key:"addNewIdentityCriteria",value:function(){this.impuritiesService.addNewIdentityCriteriaUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesUnspecifiedIndex)}},{key:"confirmDeleteIdentityCriteria",value:function(r){var O=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delele Identity Critieria "+(r+1)+"?"}}).afterClosed().subscribe(function(ee){ee&&!0===ee&&O.deleteIdentityCriteria(r)})}},{key:"deleteIdentityCriteria",value:function(r){this.impuritiesService.deleteIdentityCriteriaUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex,this.impuritiesUnspecifiedIndex,r)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Ks.q),e.Y36(Xe.b),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-unspecified-form"]],inputs:{impuritiesUnspecified:"impuritiesUnspecified",impuritiesUnspecifiedIndex:"impuritiesUnspecifiedIndex",impuritiesTestIndex:"impuritiesTestIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:22,vars:9,consts:[[4,"ngIf"],[1,"marginleftneg7px"],[1,"form-row"],["domain","IMPURITIES_IMPURITY_TYPE","title","Impurity Type","name","impurityType",1,"col-6-1",3,"model","valueChange"],["domain","IMPURITIES_TEST_TYPE","title","Test Type","name","testType",1,"col-6-1",3,"model","valueChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-6-1",3,"model","valueChange"],[1,"col-6-1"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-6-1",3,"model","valueChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],[1,"marginleftneg7px",2,"margin-left","-40px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"flex-container","margintop10px","marginleftneg7px"],[1,"width25percent","padbottom10px"],["mat-raised-button","","color","primary","matTooltip","Add Identity Criteria",3,"click"],["svgIcon","add_circle_outline"],[1,"width75percent"],["class","marginbottom10px",4,"ngFor","ngForOf"],[1,"marginbottom10px"],[1,"form-row","padleft7px"],["domain","IMPURITIES_IDENTITY_CRITERIA_TYPE","title","Identity Criteria Type","name","identityCriteriaType",1,"col-3-1",3,"model","valueChange"],[1,"col-3-1"],["matInput","","placeholder","Amount Value","name","amountValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-4-1",3,"model","valueChange"]],template:function(f,r){1&f&&(e.YNc(0,y_,3,0,"span",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e.TgZ(3,"app-cv-input",3),e.NdJ("valueChange",function(R){return r.impuritiesUnspecified.impurityType=R}),e.qZA(),e.TgZ(4,"app-cv-input",4),e.NdJ("valueChange",function(R){return r.impuritiesUnspecified.testType=R}),e.qZA(),e.TgZ(5,"app-cv-input",5),e.NdJ("valueChange",function(R){return r.impuritiesUnspecified.limitType=R}),e.qZA(),e.TgZ(6,"mat-form-field",6),e.TgZ(7,"input",7),e.NdJ("ngModelChange",function(R){return r.impuritiesUnspecified.limitValue=R}),e.qZA(),e.qZA(),e.TgZ(8,"app-cv-input",8),e.NdJ("valueChange",function(R){return r.impuritiesUnspecified.unit=R}),e.qZA(),e.TgZ(9,"mat-form-field",6),e.TgZ(10,"textarea",9),e.NdJ("ngModelChange",function(R){return r.impuritiesUnspecified.comments=R}),e.qZA(),e.qZA(),e.TgZ(11,"div",10),e.TgZ(12,"button",11),e.NdJ("click",function(){return r.confirmDeleteImpuritiesUnspecified()}),e.TgZ(13,"mat-icon"),e._uU(14,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"div",12),e.TgZ(16,"div",13),e.TgZ(17,"button",14),e.NdJ("click",function(){return r.addNewIdentityCriteria()}),e._UZ(18,"mat-icon",15),e._uU(19,"Add Identity Criteria "),e.qZA(),e.qZA(),e.TgZ(20,"div",16),e.YNc(21,Zm,10,4,"div",17),e.qZA(),e.qZA(),e.qZA()),2&f&&(e.Q6J("ngIf",r.impuritiesUnspecifiedIndex>0),e.xp6(3),e.Q6J("model",r.impuritiesUnspecified.impurityType),e.xp6(1),e.Q6J("model",r.impuritiesUnspecified.testType),e.xp6(1),e.Q6J("model",r.impuritiesUnspecified.limitType),e.xp6(2),e.Q6J("ngModel",r.impuritiesUnspecified.limitValue),e.xp6(1),e.Q6J("model",r.impuritiesUnspecified.unit),e.xp6(2),e.Q6J("ngModel",r.impuritiesUnspecified.comments),e.xp6(2),e.MGl("matTooltip","Delete Unspecified Impurities ",r.impuritiesUnspecifiedIndex+1,""),e.xp6(9),e.Q6J("ngForOf",r.impuritiesUnspecified.identityCriteriaList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 150px) / 6);margin-right:30px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 100px)/5);margin-right:25px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid var(--regular-blue-color);padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both} .related-substance img{max-width:125px!important;margin:auto}"]}),v}(),Ic=function(){var v=function(){function F(f,r,O,R){(0,S.Z)(this,F),this.impuritiesService=f,this.loadingService=r,this.authService=O,this.dialog=R}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){}},{key:"addNewImpuritiesTotal",value:function(){this.impuritiesService.addNewImpuritiesTotal()}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Ks.q),e.Y36(Xe.b),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-total-form"]],inputs:{impuritiesTotal:"impuritiesTotal",impuritiesTotalIndex:"impuritiesTotalIndex"},decls:10,vars:5,consts:[[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Test Type","name","testType",3,"ngModel","ngModelChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-5-1",3,"model","valueChange"],[1,"col-5-1"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["matInput","","placeholder","Amount Value","name","amountValue",3,"ngModel","ngModelChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"mat-form-field",1),e.TgZ(2,"input",2),e.NdJ("ngModelChange",function(R){return r.impuritiesTotal.testType=R}),e.qZA(),e.qZA(),e.TgZ(3,"app-cv-input",3),e.NdJ("valueChange",function(R){return r.impuritiesTotal.limitType=R}),e.qZA(),e.TgZ(4,"mat-form-field",4),e.TgZ(5,"input",5),e.NdJ("ngModelChange",function(R){return r.impuritiesTotal.limitValue=R}),e.qZA(),e.qZA(),e.TgZ(6,"mat-form-field",4),e.TgZ(7,"input",6),e.NdJ("ngModelChange",function(R){return r.impuritiesTotal.amountValue=R}),e.qZA(),e.qZA(),e.TgZ(8,"mat-form-field",4),e.TgZ(9,"textarea",7),e.NdJ("ngModelChange",function(R){return r.impuritiesTotal.comments=R}),e.qZA(),e.qZA(),e.qZA()),2&f&&(e.xp6(2),e.Q6J("ngModel",r.impuritiesTotal.testType),e.xp6(1),e.Q6J("model",r.impuritiesTotal.limitType),e.xp6(2),e.Q6J("ngModel",r.impuritiesTotal.limitValue),e.xp6(2),e.Q6J("ngModel",r.impuritiesTotal.amountValue),e.xp6(2),e.Q6J("ngModel",r.impuritiesTotal.comments))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 100px)/5);margin-right:25px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6[_ngcontent-%COMP%]{width:100%}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid var(--regular-blue-color);padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both} .related-substance img{max-width:125px!important;margin:auto}"]}),v}();function Vp(v,F){if(1&v&&(e.TgZ(0,"div",19),e._UZ(1,"app-impurities-details-form",20),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.oxw();e.xp6(1),e.Q6J("impuritiesDetails",f)("impuritiesSubstanceIndex",O.impuritiesSubstanceIndex)("impuritiesDetailsIndex",r)("impuritiesTestIndex",O.impuritiesTestIndex)("relatedSubstanceUuid",f.relatedSubstanceUuid)}}function Lc(v,F){if(1&v&&(e.TgZ(0,"div",19),e._UZ(1,"app-impurities-unspecified-form",21),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.oxw();e.xp6(1),e.Q6J("impuritiesUnspecified",f)("impuritiesUnspecifiedIndex",r)("impuritiesTestIndex",O.impuritiesTestIndex)("impuritiesSubstanceIndex",O.impuritiesSubstanceIndex)}}var km=function(){var v=function(){function F(f,r,O,R){(0,S.Z)(this,F),this.impuritiesService=f,this.loadingService=r,this.authService=O,this.dialog=R}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){}},{key:"addNewImpuritiesDetails",value:function(){this.createNewImpurities(null)}},{key:"createNewImpurities",value:function(r){var O={identityCriteriaList:[]};O.relatedSubstanceUuid=r,this.impuritiesTest.impuritiesDetailsList.unshift(O)}},{key:"addNewImpuritiesUnspecified",value:function(){this.impuritiesService.addNewImpuritiesUnspecified(this.impuritiesSubstanceIndex,this.impuritiesTestIndex)}},{key:"confirmDeleteImpuritiesTest",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delele Test "+(this.impuritiesTestIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteImpuritiesTest()})}},{key:"deleteImpuritiesTest",value:function(){this.impuritiesService.deleteImpuritiesTest(this.impuritiesSubstanceIndex,this.impuritiesTestIndex)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Ks.q),e.Y36(Xe.b),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-test-form"]],inputs:{impuritiesTest:"impuritiesTest",impuritiesTestIndex:"impuritiesTestIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:44,vars:10,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft185px","margintopneg10px"],["mat-icon-button","","color","primary",1,"marginleft20px",3,"matTooltip","click"],[1,"borderblue"],[1,"form-row"],[1,"col-2-1"],["matInput","","placeholder","Test","name","test",3,"ngModel","ngModelChange"],["domain","IMPURITIES_TEST_TYPE","title","Test Type","name","testType",1,"col-2-1",3,"model","valueChange"],["matInput","","placeholder","Test Description","name","testDescription",3,"ngModel","ngModelChange"],["matInput","","placeholder","Comments","name","comments",3,"ngModel","ngModelChange"],[1,"divflex","margintop10px"],[1,"titleblue"],["matBadgeColor","accent","matBadgeSize","medium","matBadgeOverlap","false",3,"matBadge"],["mat-raised-button","","color","primary","matTooltip","Add New Impurities",3,"click"],["svgIcon","add_circle_outline"],["class","marginbottom10px",4,"ngFor","ngForOf"],["mat-raised-button","","color","primary","matTooltip","Add New Unspecified Impurities",3,"click"],[1,"marginbottom10px"],[3,"impuritiesDetails","impuritiesSubstanceIndex","impuritiesDetailsIndex","impuritiesTestIndex","relatedSubstanceUuid"],[3,"impuritiesUnspecified","impuritiesUnspecifiedIndex","impuritiesTestIndex","impuritiesSubstanceIndex"]],template:function(f,r){1&f&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return r.confirmDeleteImpuritiesTest()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"mat-form-field",7),e.TgZ(13,"input",8),e.NdJ("ngModelChange",function(R){return r.impuritiesTest.test=R}),e.qZA(),e.qZA(),e.TgZ(14,"app-cv-input",9),e.NdJ("valueChange",function(R){return r.impuritiesTest.testType=R}),e.qZA(),e.qZA(),e.TgZ(15,"div",6),e.TgZ(16,"mat-form-field",7),e.TgZ(17,"textarea",10),e.NdJ("ngModelChange",function(R){return r.impuritiesTest.testDescription=R}),e.qZA(),e.qZA(),e.TgZ(18,"mat-form-field",7),e.TgZ(19,"textarea",11),e.NdJ("ngModelChange",function(R){return r.impuritiesTest.comments=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(20,"div",12),e.TgZ(21,"div",13),e.TgZ(22,"span",14),e.TgZ(23,"span",13),e.TgZ(24,"b"),e._uU(25,"Impurities"),e.qZA(),e.qZA(),e.qZA(),e._uU(26," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(27,"button",15),e.NdJ("click",function(){return r.addNewImpuritiesDetails()}),e._UZ(28,"mat-icon",16),e._uU(29,"Add Impurities "),e.qZA(),e.qZA(),e.qZA(),e.YNc(30,Vp,2,5,"div",17),e._UZ(31,"br"),e._UZ(32,"br"),e.TgZ(33,"span",14),e.TgZ(34,"span",13),e.TgZ(35,"b"),e._uU(36,"Unspecified Impurities"),e.qZA(),e.qZA(),e.qZA(),e._uU(37," \xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 "),e.TgZ(38,"button",18),e.NdJ("click",function(){return r.addNewImpuritiesUnspecified()}),e._UZ(39,"mat-icon",16),e._uU(40,"Add Unspecified Impurities "),e.qZA(),e._UZ(41,"br"),e.YNc(42,Lc,2,4,"div",17),e.qZA(),e.qZA(),e._UZ(43,"br")),2&f&&(e.xp6(4),e.hij("Test \xa0",r.impuritiesTestIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Test ",r.impuritiesTestIndex+1,""),e.xp6(7),e.Q6J("ngModel",r.impuritiesTest.test),e.xp6(1),e.Q6J("model",r.impuritiesTest.testType),e.xp6(3),e.Q6J("ngModel",r.impuritiesTest.testDescription),e.xp6(2),e.Q6J("ngModel",r.impuritiesTest.comments),e.xp6(3),e.s9C("matBadge",r.impuritiesTest.impuritiesDetailsList.length),e.xp6(8),e.Q6J("ngForOf",r.impuritiesTest.impuritiesDetailsList),e.xp6(3),e.s9C("matBadge",r.impuritiesTest.impuritiesUnspecifiedList.length),e.xp6(9),e.Q6J("ngForOf",r.impuritiesTest.impuritiesUnspecifiedList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.titleblue[_ngcontent-%COMP%]{font-size:18px;font-weight:700px;font-family:Arial,Helvetica,sans-serif;color:var(--regular-blue-color)}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2-1[_ngcontent-%COMP%]{width:calc((100% - 20px)/2);margin-right:20px}.col-2-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 120px)/5);margin-right:30px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop50px[_ngcontent-%COMP%]{margin-top:50px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft185px[_ngcontent-%COMP%]{padding-left:185px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderblue[_ngcontent-%COMP%]{border:2px solid var(--bluish-purple-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid var(--regular-blue-color);padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both} .related-substance img{max-width:125px!important;margin:auto}.tabStyle[_ngcontent-%COMP%]{width:120px;height:30px;border:1px solid var(--regular-grey-color);background:var(--tabstyle-bg-color-4);-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-left:30px;padding-top:5px;padding-right:5px}"]}),v}();function Xr(v,F){if(1&v&&(e.TgZ(0,"div",31),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.impuritiesSubstance.approvalID," ")}}function Ho(v,F){if(1&v&&(e.TgZ(0,"div",32),e.TgZ(1,"span",33),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(2),e.hij(" ",f.errorMessage," ")}}function Im(v,F){if(1&v&&(e.TgZ(0,"div",34),e._UZ(1,"app-impurities-test-form",35),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.oxw();e.xp6(1),e.Q6J("impuritiesTest",f)("impuritiesTestIndex",r)("impuritiesSubstanceIndex",O.impuritiesSubstanceIndex)}}function Lm(v,F){if(1&v&&(e.TgZ(0,"div",34),e._UZ(1,"app-impurities-residual-solvents-form",36),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.oxw();e.xp6(1),e.Q6J("impuritiesResidualSolvents",f)("impuritiesResidualIndex",r)("impuritiesSubstanceIndex",O.impuritiesSubstanceIndex)}}function b_(v,F){if(1&v&&(e.TgZ(0,"div",34),e._UZ(1,"app-impurities-inorganic-form",37),e.qZA()),2&v){var f=F.$implicit,r=F.index,O=e.oxw();e.xp6(1),e.Q6J("impuritiesInorganic",f)("impuritiesInorganicIndex",r)("impuritiesSubstanceIndex",O.impuritiesSubstanceIndex)}}var Fc=function(){var v=function(){function F(f,r,O,R,ee){(0,S.Z)(this,F),this.impuritiesService=f,this.generalService=r,this.loadingService=O,this.authService=R,this.dialog=ee,this.isLoading=!0,this.subscriptions=[],this.existingImpurities=[],this.substanceNameHintMessage=""}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){}},{key:"relatedSubstanceUpdated",value:function(r){null!=r&&(this.impuritiesSubstance.substanceUuid=r.uuid,this.impuritiesSubstance.approvalID=r.approvalID)}},{key:"getExistingImpuritiesFromSubstance",value:function(r){var O=this;r.stopPropagation(),this.isLoading=!0,this.loadingService.setLoading(!0),this.errorMessage="Getting Existing Impurities...";var R=this.impuritiesSubstance.substanceUuid;if(R){var ee=this.impuritiesService.getRelationshipImpurity(R).subscribe(function(Je){if(Je){var _t=Je;Object.keys(_t).length>0?(O.existingImpurities=_t.filter(function(Kt,Un){return _t.findIndex(function(ai){return ai.relationshipUuid===Kt.relationshipUuid})===Un}),O.loadExistingImpurities()):O.errorMessage="No Impurities found"}});this.subscriptions.push(ee)}else this.errorMessage="Please select a Substance Name";this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"loadExistingImpurities",value:function(){var r=this;this.errorMessage="Found "+this.existingImpurities.length+" Existing Impurities",this.impuritiesService.addNewTest(this.impuritiesSubstanceIndex),this.existingImpurities.forEach(function(O){var R={identityCriteriaList:[]};R.relatedSubstanceUuid=O.relationshipUuid,R.relatedSubstanceUnii=O.relationshipUnii,r.impuritiesService.addNewImpuritiesDetails(r.impuritiesSubstanceIndex,0,R)})}},{key:"createNewImpurities",value:function(r){}},{key:"addNewImpuritiesSubstance",value:function(){this.impuritiesService.addNewImpuritiesSubstance()}},{key:"getSubstancePreferredName",value:function(r){var O=this,R=this.generalService.getSubstanceBySubstanceUuid(r).subscribe(function(ee){ee&&(O.searchValue=ee._name)});this.subscriptions.push(R)}},{key:"addNewTest",value:function(r){r.stopPropagation(),this.impuritiesService.addNewTest(this.impuritiesSubstanceIndex)}},{key:"addNewImpuritiesResidualSolvents",value:function(r){r.stopPropagation(),this.impuritiesService.addNewImpuritiesResidualSolvents(this.impuritiesSubstanceIndex)}},{key:"addNewImpuritiesInorganic",value:function(r){r.stopPropagation(),this.impuritiesService.addNewImpuritiesInorganic(this.impuritiesSubstanceIndex)}},{key:"confirmDeleteImpuritiesSubstance",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delele Substance Name "+(this.impuritiesSubstanceIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteImpuritiesSubstance()})}},{key:"deleteImpuritiesSubstance",value:function(){this.impuritiesService.deleteImpuritiesSubstance(this.impuritiesSubstanceIndex)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Ks.q),e.Y36(D.m),e.Y36(Xe.b),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-substance-form"]],inputs:{impuritiesSubstance:"impuritiesSubstance",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:79,vars:20,consts:[[1,"divflex","margintop10px","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft185px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"borderyellow"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter","marginright30px"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Substance Name","header","Substance Name",1,"textaligncenter",3,"hideImage","subuuid","showMorelinks","selectionUpdated"],["class","textaligncenter font11px",4,"ngIf"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Assay Low","name","low",3,"ngModel","ngModelChange"],["matInput","","placeholder","Assay High","name","high",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],[1,"col-6-6",2,"width","100%"],["matInput","","placeholder","Comments","name","comments",3,"ngModel","ngModelChange"],[1,"panel-style","bordergray",3,"expanded"],[1,"divflex"],[1,"margintop5px"],[1,"titleblue"],["matBadgeColor","warn","matBadgeSize","medium","matBadgeOverlap","false","matBadgePosition","top",1,"margintop15px","custom-badge",3,"matBadge"],["mat-raised-button","","color","primary","matTooltip","Add New Test",3,"click"],["svgIcon","add_circle_outline"],[1,"width200px","marginleft30px"],["mat-raised-button","","color","primary","matTooltip","Get Impurities for Substance",3,"click"],["class","",4,"ngIf"],["class","marginbottom10px",4,"ngFor","ngForOf"],["mat-raised-button","","color","primary","matTooltip","Add New Residual Solvent",3,"click"],["mat-raised-button","","color","primary","matTooltip","Add New Inorganic",3,"click"],[1,"textaligncenter","font11px"],[1,""],[1,"colorred","font13px"],[1,"marginbottom10px"],[3,"impuritiesTest","impuritiesTestIndex","impuritiesSubstanceIndex"],[3,"impuritiesResidualSolvents","impuritiesResidualIndex","impuritiesSubstanceIndex"],[3,"impuritiesInorganic","impuritiesInorganicIndex","impuritiesSubstanceIndex"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"div",2),e._uU(3),e.qZA(),e.qZA(),e.TgZ(4,"div",3),e.TgZ(5,"button",4),e.NdJ("click",function(){return r.confirmDeleteImpuritiesSubstance()}),e.TgZ(6,"mat-icon"),e._uU(7,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(8,"mat-card",5),e.TgZ(9,"mat-card-content"),e.TgZ(10,"div",6),e.TgZ(11,"div",7),e.TgZ(12,"app-substance-selector",8),e.NdJ("selectionUpdated",function(R){return r.relatedSubstanceUpdated(R)}),e.qZA(),e.YNc(13,Xr,2,1,"div",9),e.qZA(),e.TgZ(14,"div",10),e.TgZ(15,"div",11),e.TgZ(16,"mat-form-field",12),e.TgZ(17,"input",13),e.NdJ("ngModelChange",function(R){return r.impuritiesSubstance.low=R}),e.qZA(),e.qZA(),e.TgZ(18,"mat-form-field",12),e.TgZ(19,"input",14),e.NdJ("ngModelChange",function(R){return r.impuritiesSubstance.high=R}),e.qZA(),e.qZA(),e.TgZ(20,"app-cv-input",15),e.NdJ("valueChange",function(R){return r.impuritiesSubstance.unit=R}),e.qZA(),e.qZA(),e.TgZ(21,"div",11),e.TgZ(22,"mat-form-field",16),e.TgZ(23,"textarea",17),e.NdJ("ngModelChange",function(R){return r.impuritiesSubstance.comments=R}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e._UZ(24,"br"),e.TgZ(25,"mat-expansion-panel",18),e.TgZ(26,"mat-expansion-panel-header"),e.TgZ(27,"mat-panel-title"),e.TgZ(28,"div",19),e.TgZ(29,"div",20),e.TgZ(30,"span",21),e.TgZ(31,"b"),e._uU(32,"Test"),e.qZA(),e.qZA(),e._uU(33,"\xa0 "),e.qZA(),e._UZ(34,"div",22),e.qZA(),e.qZA(),e.TgZ(35,"mat-panel-description"),e.TgZ(36,"div"),e.TgZ(37,"button",23),e.NdJ("click",function(R){return r.addNewTest(R)}),e._UZ(38,"mat-icon",24),e._uU(39,"Add Test "),e.qZA(),e.qZA(),e.TgZ(40,"div",25),e.TgZ(41,"button",26),e.NdJ("click",function(R){return r.getExistingImpuritiesFromSubstance(R)}),e._uU(42," Get Existing Impurities from Substance "),e.qZA(),e.YNc(43,Ho,3,1,"div",27),e.qZA(),e.qZA(),e.qZA(),e.YNc(44,Im,2,3,"div",28),e.qZA(),e._UZ(45,"br"),e.TgZ(46,"mat-expansion-panel",18),e.TgZ(47,"mat-expansion-panel-header"),e.TgZ(48,"mat-panel-title"),e.TgZ(49,"div",19),e.TgZ(50,"div",20),e.TgZ(51,"span",21),e.TgZ(52,"b"),e._uU(53,"Residual Solvents"),e.qZA(),e.qZA(),e._uU(54,"\xa0 "),e.qZA(),e._UZ(55,"div",22),e.qZA(),e.qZA(),e.TgZ(56,"mat-panel-description"),e.TgZ(57,"button",29),e.NdJ("click",function(R){return r.addNewImpuritiesResidualSolvents(R)}),e._UZ(58,"mat-icon",24),e._uU(59,"Add Residual Solvents "),e.qZA(),e.qZA(),e.qZA(),e.YNc(60,Lm,2,3,"div",28),e.qZA(),e._UZ(61,"br"),e.TgZ(62,"mat-expansion-panel",18),e.TgZ(63,"mat-expansion-panel-header"),e.TgZ(64,"mat-panel-title"),e.TgZ(65,"div",19),e.TgZ(66,"div",20),e.TgZ(67,"span",21),e.TgZ(68,"b"),e._uU(69,"Inorganic Impurities"),e.qZA(),e.qZA(),e._uU(70,"\xa0 "),e.qZA(),e._UZ(71,"div",22),e.qZA(),e.qZA(),e.TgZ(72,"mat-panel-description"),e.TgZ(73,"button",30),e.NdJ("click",function(R){return r.addNewImpuritiesInorganic(R)}),e._UZ(74,"mat-icon",24),e._uU(75,"Add Inorganic Impurities "),e.qZA(),e.qZA(),e.qZA(),e.YNc(76,b_,2,3,"div",28),e.qZA(),e.qZA(),e.qZA(),e._UZ(77,"br"),e._UZ(78,"br")),2&f&&(e.xp6(3),e.hij("Substance \xa0",r.impuritiesSubstanceIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Substance ",r.impuritiesSubstanceIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",r.impuritiesSubstance.substanceUuid)("showMorelinks",!0),e.xp6(1),e.Q6J("ngIf",r.impuritiesSubstance.approvalID),e.xp6(4),e.Q6J("ngModel",r.impuritiesSubstance.low),e.xp6(2),e.Q6J("ngModel",r.impuritiesSubstance.high),e.xp6(1),e.Q6J("model",r.impuritiesSubstance.unit),e.xp6(3),e.Q6J("ngModel",r.impuritiesSubstance.comments),e.xp6(2),e.Q6J("expanded",!0),e.xp6(9),e.s9C("matBadge",r.impuritiesSubstance.impuritiesTestList.length),e.xp6(9),e.Q6J("ngIf",r.errorMessage),e.xp6(1),e.Q6J("ngForOf",r.impuritiesSubstance.impuritiesTestList),e.xp6(2),e.Q6J("expanded",!0),e.xp6(9),e.s9C("matBadge",r.impuritiesSubstance.impuritiesResidualSolventsList.length),e.xp6(5),e.Q6J("ngForOf",r.impuritiesSubstance.impuritiesResidualSolventsList),e.xp6(2),e.Q6J("expanded",!0),e.xp6(9),e.s9C("matBadge",r.impuritiesSubstance.impuritiesInorganicList.length),e.xp6(5),e.Q6J("ngForOf",r.impuritiesSubstance.impuritiesInorganicList))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.titleblue[_ngcontent-%COMP%]{font-size:18px;font-weight:700px;font-family:Arial,Helvetica,sans-serif;color:var(--regular-blue-color);padding-top:10px}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-2[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-6-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-6-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-6-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-6-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6-6[_ngcontent-%COMP%]{width:100%}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.divflexrow[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:start;justify-content:flex-start}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop5px[_ngcontent-%COMP%]{margin-top:5px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop15px[_ngcontent-%COMP%]{margin-top:15px}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.margintop12px[_ngcontent-%COMP%]{margin-top:12px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft25px[_ngcontent-%COMP%]{margin-left:25px}.marginleft30px[_ngcontent-%COMP%]{margin-left:30px}.marginright30px[_ngcontent-%COMP%]{margin-right:30px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop10px[_ngcontent-%COMP%]{padding-top:10px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft185px[_ngcontent-%COMP%]{padding-left:185px}.borderlightgray[_ngcontent-%COMP%]{border:1px solid #e0e0e0}.borderyellow[_ngcontent-%COMP%]{border:1px solid var(--yellow-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.borderstructure[_ngcontent-%COMP%]{border:1px solid #e7e7e7;box-shadow:2px 2px #eee;margin-right:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width200px[_ngcontent-%COMP%]{width:200px}.width25percent[_ngcontent-%COMP%]{width:25%}.width32percent[_ngcontent-%COMP%]{width:32%}.width75percent[_ngcontent-%COMP%]{width:75%}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.textalignleft[_ngcontent-%COMP%]{text-align:left}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}hr[_ngcontent-%COMP%]{border:none;border-top:3px solid var(--regular-green-color);color:var(--hr-color);overflow:visible;text-align:center;height:5px}.tabStyle[_ngcontent-%COMP%]{width:200px;height:30px;border:1px solid var(--regular-grey-color);background:var(--tabstyle-bg-color-2)}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.borderbottom[_ngcontent-%COMP%]{border-bottom:1px solid var(--regular-gainsboro-color)}.tabStyle[_ngcontent-%COMP%]{width:170px;height:30px;border:1px solid var(--regular-grey-color);background:var(--tabstyle-bg-color-3);-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-left:30px;padding-top:5px;padding-right:5px}.panel-style[_ngcontent-%COMP%] mat-panel-title[_ngcontent-%COMP%]{width:300px;min-width:300px;max-width:300px}.custom-badge[_ngcontent-%COMP%] .mat-badge-content[_ngcontent-%COMP%]{background:var(--mustard-color);color:var(--regular-white-color)}.custom-badge[_ngcontent-%COMP%] .mat-badge-medium[_ngcontent-%COMP%] .mat-badge-above[_ngcontent-%COMP%] .mat-badge-top[_ngcontent-%COMP%] .mat-badge-content[_ngcontent-%COMP%]{top:unset;right:unset}"]}),v}();function C_(v,F){if(1&v&&(e.TgZ(0,"div",19),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.impuritiesResidualSolvents.relatedSubstanceUnii," ")}}var Fm=function(){var v=function(){function F(f,r,O,R){(0,S.Z)(this,F),this.impuritiesService=f,this.loadingService=r,this.authService=O,this.dialog=R}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){}},{key:"confirmDeleteImpuritiesResidualSolvents",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Residual Solvents "+(this.impuritiesResidualIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteImpuritiesResidualSolvents()})}},{key:"deleteImpuritiesResidualSolvents",value:function(){this.impuritiesService.deleteImpuritiesResidualSolvents(this.impuritiesSubstanceIndex,this.impuritiesResidualIndex)}},{key:"relatedSubstanceUpdated",value:function(r){null!=r&&(this.impuritiesResidualSolvents.relatedSubstanceUuid=r.uuid,this.impuritiesResidualSolvents.relatedSubstanceUnii=r.approvalID)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Ks.q),e.Y36(Xe.b),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-residual-solvents-form"]],inputs:{impuritiesResidualSolvents:"impuritiesResidualSolvents",impuritiesResidualIndex:"impuritiesResidualIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:28,vars:12,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft105px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"margintop20px","bordergray"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Substance Name","header","Related Substance",1,"textaligncenter",3,"hideImage","subuuid","showMorelinks","selectionUpdated"],["class","textaligncenter font11px",4,"ngIf"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],[1,"col-3-1"],["matInput","","placeholder","Pharmaceutical Limit","name","pharmaceuticalLimit",3,"ngModel","ngModelChange"],["matInput","","placeholder","Test Type","name","testType",3,"ngModel","ngModelChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],[1,"textaligncenter","font11px"]],template:function(f,r){1&f&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return r.confirmDeleteImpuritiesResidualSolvents()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e.TgZ(13,"app-substance-selector",8),e.NdJ("selectionUpdated",function(R){return r.relatedSubstanceUpdated(R)}),e.qZA(),e.YNc(14,C_,2,1,"div",9),e.qZA(),e.TgZ(15,"div",10),e.TgZ(16,"div",11),e.TgZ(17,"mat-form-field",12),e.TgZ(18,"input",13),e.NdJ("ngModelChange",function(R){return r.impuritiesResidualSolvents.pharmaceuticalLimit=R}),e.qZA(),e.qZA(),e.TgZ(19,"mat-form-field",12),e.TgZ(20,"input",14),e.NdJ("ngModelChange",function(R){return r.impuritiesResidualSolvents.testType=R}),e.qZA(),e.qZA(),e.TgZ(21,"app-cv-input",15),e.NdJ("valueChange",function(R){return r.impuritiesResidualSolvents.limitType=R}),e.qZA(),e.qZA(),e.TgZ(22,"div",11),e.TgZ(23,"mat-form-field",12),e.TgZ(24,"input",16),e.NdJ("ngModelChange",function(R){return r.impuritiesResidualSolvents.limitValue=R}),e.qZA(),e.qZA(),e.TgZ(25,"app-cv-input",17),e.NdJ("valueChange",function(R){return r.impuritiesResidualSolvents.unit=R}),e.qZA(),e.TgZ(26,"mat-form-field",12),e.TgZ(27,"textarea",18),e.NdJ("ngModelChange",function(R){return r.impuritiesResidualSolvents.comments=R}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&f&&(e.xp6(4),e.hij("Residual Solvents\xa0",r.impuritiesResidualIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Impurities Residual Solvents ",r.impuritiesResidualIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",r.impuritiesResidualSolvents.relatedSubstanceUuid)("showMorelinks",!0),e.xp6(1),e.Q6J("ngIf",r.impuritiesResidualSolvents.relatedSubstanceUnii),e.xp6(4),e.Q6J("ngModel",r.impuritiesResidualSolvents.pharmaceuticalLimit),e.xp6(2),e.Q6J("ngModel",r.impuritiesResidualSolvents.testType),e.xp6(1),e.Q6J("model",r.impuritiesResidualSolvents.limitType),e.xp6(3),e.Q6J("ngModel",r.impuritiesResidualSolvents.limitValue),e.xp6(1),e.Q6J("model",r.impuritiesResidualSolvents.unit),e.xp6(2),e.Q6J("ngModel",r.impuritiesResidualSolvents.comments))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:10px}.col-4-1-short[_ngcontent-%COMP%]{width:calc((100% - 240px)/4 - 5px);margin-right:30px}.col-4-1-short[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padleft105px[_ngcontent-%COMP%]{padding-left:105px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid var(--regular-blue-color);padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.height30px[_ngcontent-%COMP%]{height:30px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.tabStyle[_ngcontent-%COMP%]{width:200px;height:30px;border:1px solid var(--regular-grey-color);background:var(--tabstyle-bg-color);background-image:linear-gradient(to bottom,var(--tabstyle-bg-img-start-color),var(--tabstyle-bg-img-end-color));-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-left:20px;padding-top:5px;padding-right:5px} .related-substance img{max-width:125px!important;margin:auto}"]}),v}();function Nm(v,F){if(1&v&&(e.TgZ(0,"div",19),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.hij(" ",f.impuritiesInorganic.relatedSubstanceUnii," ")}}var lu=function(){var v=function(){function F(f,r,O,R){(0,S.Z)(this,F),this.impuritiesService=f,this.loadingService=r,this.authService=O,this.dialog=R}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){}},{key:"relatedSubstanceUpdated",value:function(r){null!=r&&(this.impuritiesInorganic.relatedSubstanceUuid=r.uuid,this.impuritiesInorganic.relatedSubstanceUnii=r.approvalID)}},{key:"confirmDeleteImpuritiesInorganic",value:function(){var r=this;this.dialog.open(qa.$,{data:{message:"Are you sure you want to delete Inorganic Impurities"+(this.impuritiesInorganicIndex+1)+"?"}}).afterClosed().subscribe(function(R){R&&!0===R&&r.deleteImpuritiesInorganic()})}},{key:"deleteImpuritiesInorganic",value:function(){this.impuritiesService.deleteImpuritiesInorganic(this.impuritiesSubstanceIndex,this.impuritiesInorganicIndex)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Ks.q),e.Y36(Xe.b),e.Y36(Me.e),e.Y36(mt.uw))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-impurities-inorganic-form"]],inputs:{impuritiesInorganic:"impuritiesInorganic",impuritiesInorganicIndex:"impuritiesInorganicIndex",impuritiesSubstanceIndex:"impuritiesSubstanceIndex"},decls:25,vars:11,consts:[[1,"divflex","height30px"],[1,"tabStyle"],[1,"tabStyleHeader"],[1,"padleft105px","margintopneg10px"],["mat-icon-button","","color","primary",3,"matTooltip","click"],[1,"bordergray"],[1,"flex-container","marginleftneg7px","padbottom10px"],[1,"width25percent","textaligncenter"],["eventCategory","substanceRelationshipRelatedSub","placeholder","Substance Name","header","Related Substance",1,"textaligncenter",3,"hideImage","subuuid","showMorelinks","selectionUpdated"],["class","textaligncenter font11px",4,"ngIf"],[1,"flex-item","width75percent","padleft20px","padright20px"],[1,"form-row"],["domain","IMPURITIES_TEST_TYPE","title","Test Type","name","testType",1,"col-3-1",3,"model","valueChange"],["domain","IMPURITIES_LIMIT_TYPE","title","Limit Type","name","limitType",1,"col-3-1",3,"model","valueChange"],[1,"col-3-1"],["matInput","","placeholder","Limit Value","name","limitValue",3,"ngModel","ngModelChange"],["domain","PROD_UNIT","title","Unit","name","unit",1,"col-3-1",3,"model","valueChange"],[1,"col-3-2"],["matInput","","placeholder","Comments","name","comments","rows","1",3,"ngModel","ngModelChange"],[1,"textaligncenter","font11px"]],template:function(f,r){1&f&&(e._UZ(0,"br"),e.TgZ(1,"div",0),e.TgZ(2,"div",1),e.TgZ(3,"div",2),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",3),e.TgZ(6,"button",4),e.NdJ("click",function(){return r.confirmDeleteImpuritiesInorganic()}),e.TgZ(7,"mat-icon"),e._uU(8,"delete_forever"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"mat-card",5),e.TgZ(10,"mat-card-content"),e.TgZ(11,"div",6),e.TgZ(12,"div",7),e.TgZ(13,"app-substance-selector",8),e.NdJ("selectionUpdated",function(R){return r.relatedSubstanceUpdated(R)}),e.qZA(),e.YNc(14,Nm,2,1,"div",9),e.qZA(),e.TgZ(15,"div",10),e.TgZ(16,"div",11),e.TgZ(17,"app-cv-input",12),e.NdJ("valueChange",function(R){return r.impuritiesInorganic.testType=R}),e.qZA(),e.TgZ(18,"app-cv-input",13),e.NdJ("valueChange",function(R){return r.impuritiesInorganic.limitType=R}),e.qZA(),e.TgZ(19,"mat-form-field",14),e.TgZ(20,"input",15),e.NdJ("ngModelChange",function(R){return r.impuritiesInorganic.limitValue=R}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",11),e.TgZ(22,"app-cv-input",16),e.NdJ("valueChange",function(R){return r.impuritiesInorganic.unit=R}),e.qZA(),e.TgZ(23,"mat-form-field",17),e.TgZ(24,"textarea",18),e.NdJ("ngModelChange",function(R){return r.impuritiesInorganic.comments=R}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&f&&(e.xp6(4),e.hij("Inorganic\xa0",r.impuritiesInorganicIndex+1,""),e.xp6(2),e.MGl("matTooltip","Delete Impurities Inorganic ",r.impuritiesInorganicIndex+1,""),e.xp6(7),e.Q6J("hideImage",!1)("subuuid",r.impuritiesInorganic.relatedSubstanceUuid)("showMorelinks",!0),e.xp6(1),e.Q6J("ngIf",r.impuritiesInorganic.relatedSubstanceUnii),e.xp6(3),e.Q6J("model",r.impuritiesInorganic.testType),e.xp6(1),e.Q6J("model",r.impuritiesInorganic.limitType),e.xp6(2),e.Q6J("ngModel",r.impuritiesInorganic.limitValue),e.xp6(2),e.Q6J("model",r.impuritiesInorganic.unit),e.xp6(2),e.Q6J("ngModel",r.impuritiesInorganic.comments))},styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:110px}.scrollable-container[_ngcontent-%COMP%]{padding-top:15px}.cards-container[_ngcontent-%COMP%]{width:100%}.title_box[_ngcontent-%COMP%]{width:1140px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.title[_ngcontent-%COMP%]{font-size:24px;font-weight:600px;font-family:Arial,Helvetica,sans-serif}.mat-card[_ngcontent-%COMP%]{max-width:1140px}.row[_ngcontent-%COMP%]{width:100%}.divflex[_ngcontent-%COMP%], .flex-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.flex-item[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.col-6-1[_ngcontent-%COMP%]{width:calc((100% - 125px) / 6);margin-right:25px}.col-6-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-1[_ngcontent-%COMP%]{width:calc((100% - 50px) / 3);margin-right:25px}.col-3-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3-2[_ngcontent-%COMP%]{width:calc((100% - 15px) / 1.5);margin-right:0}.col-3-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-1[_ngcontent-%COMP%]{width:calc((100% - 100px) / 6);margin-right:20px}.col-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-2[_ngcontent-%COMP%]{width:calc((100% - 60px) / 3);margin-right:30px}.col-2[_ngcontent-%COMP%]:last-child{margin-right:0}.col-3[_ngcontent-%COMP%]{width:calc((100% - 30px)/2);margin-right:30px}.col-3[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4[_ngcontent-%COMP%]{width:calc((100% - 20px) / 1.5);margin-right:20px}.col-4[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5[_ngcontent-%COMP%]{width:calc((100% - 10px) / 1.2);margin-right:10px}.col-5[_ngcontent-%COMP%]:last-child{margin-right:0}.col-5-more[_ngcontent-%COMP%]{width:calc((100% + 100px) / 1.2);margin-right:10px}.col-6[_ngcontent-%COMP%]{width:100%}.col-5-1[_ngcontent-%COMP%]{width:calc((100% - 80px)/5);margin-right:20px}.col-5-1[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-1[_ngcontent-%COMP%]{width:calc((100% - 90px)/4);margin-right:30px}.col-4-1[_ngcontent-%COMP%]:last-child{margin-right:10px}.col-4-1-short[_ngcontent-%COMP%]{width:calc((100% - 240px)/4 - 5px);margin-right:30px}.col-4-1-short[_ngcontent-%COMP%]:last-child{margin-right:0}.col-4-3[_ngcontent-%COMP%]{width:calc((100% - 30px) / 1.3333333333);margin-right:30px}.col-4-3[_ngcontent-%COMP%]:last-child{margin-right:0}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.actions-container[_ngcontent-%COMP%]{max-width:1028px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.middle-fill[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.details-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.details-box[_ngcontent-%COMP%]{max-width:1028px;width:100%;box-sizing:border-box;margin-bottom:20px}.margintopneg10px[_ngcontent-%COMP%]{margin-top:-10px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}marginleft50px[_ngcontent-%COMP%]{margin-left:50px}marginleft200px[_ngcontent-%COMP%]{margin-left:200px}marginbottom20px[_ngcontent-%COMP%]{margin-bottom:20px}marginleftneg20px[_ngcontent-%COMP%]{margin-left:-20px}marginleftneg40px[_ngcontent-%COMP%]{margin-left:-40px}marginleftneg7px[_ngcontent-%COMP%]{margin-left:-7px}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padtop17px[_ngcontent-%COMP%]{padding-top:17px}.padleft7px[_ngcontent-%COMP%]{padding-left:7px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.padleft105px[_ngcontent-%COMP%]{padding-left:105px}.padleftneg20px[_ngcontent-%COMP%]{padding-left:-20px}.padright20px[_ngcontent-%COMP%]{padding-right:20px}.padbottom5px[_ngcontent-%COMP%]{padding-bottom:5px}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.padbottom10px[_ngcontent-%COMP%]{padding-bottom:10px}.bordergreen[_ngcontent-%COMP%]{border:1px solid var(--regular-green-color)}.borderbottom[_ngcontent-%COMP%]{border-bottom:2px solid var(--regular-blue-color);padding-top:10px;padding-bottom:10px}.width40px[_ngcontent-%COMP%]{width:40px}.width50px[_ngcontent-%COMP%]{width:50px}.width25percent[_ngcontent-%COMP%]{width:25%}.width75percent[_ngcontent-%COMP%]{width:75%}.height30px[_ngcontent-%COMP%]{height:30px}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorblue[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.font11px[_ngcontent-%COMP%]{font-size:11px}.textalignright[_ngcontent-%COMP%]{text-align:right}.textaligncenter[_ngcontent-%COMP%]{text-align:center}.displayinlineblock[_ngcontent-%COMP%]{display:inline-block}.floatleft[_ngcontent-%COMP%]{float:left}.disabled[_ngcontent-%COMP%]{cursor:not-allowed}.disabledfield[_ngcontent-%COMP%]{cursor:not-allowed;color:var(--regular-red-color)}.cvwidth[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:20%}.cvwidth2[_ngcontent-%COMP%]{width:300px}.mat-form-field-style[_ngcontent-%COMP%] > {}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-infix[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-select-value[_ngcontent-%COMP%]{color:var(--regular-blue-color)}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-label-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-underline[_ngcontent-%COMP%]{background-color:var(--mat-form-field-underline-bg-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-focused[_ngcontent-%COMP%] .mat-form-field-label[_ngcontent-%COMP%]{color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-ripple[_ngcontent-%COMP%]{background-color:var(--mat-form-field-focused-color)!important}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%] .mat-form-field-underline[_ngcontent-%COMP%]{background-image:linear-gradient(to right,var(--img-linear-gradient-start-color) 0,var(--textarea-dark-border-color) 10%,var(--img-linear-gradient-color) 0)!important;background-size:1px 100%!important;background-repeat:repeat-x!important;cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > .mat-form-field-disabled[_ngcontent-%COMP%]:hover{cursor:not-allowed}.mat-form-field-style[_ngcontent-%COMP%] > mat-hint[_ngcontent-%COMP%]{color:var(--regular-red-color)!important}.errortext[_ngcontent-%COMP%]{color:var(--regular-red-color);font-size:11px}.divclear[_ngcontent-%COMP%]{clear:both}.tabStyle[_ngcontent-%COMP%]{width:200px;height:30px;border:1px solid var(--regular-grey-color);background:var(--tabstyle-bg-color);background-image:linear-gradient(to bottom,var(--tabstyle-bg-img-start-color),var(--tabstyle-bg-img-end-color));-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabStyleHeader[_ngcontent-%COMP%]{font-size:14px;font-weight:700;font-family:Verdana;color:var(--primary-title-color);padding-top:5px;padding-right:5px;text-align:center} .related-substance img{max-width:125px!important;margin:auto}"]}),v}(),Nc=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.router=f,this.authService=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){R.authService.getAuth().pipe((0,ve.q)(1)).subscribe(function(Je){Je?R.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry").pipe((0,ve.q)(1)).subscribe(function(Kt){Kt?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/home")),ee.complete())}):(ee.next(R.router.createUrlTree(["/login"],{queryParams:{path:O.url}})),ee.complete())})})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0),e.LFG(Me.e))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac}),v}(),jp=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.router=f,this.authService=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){R.authService.getAuth().pipe((0,ve.q)(1)).subscribe(function(Je){Je?R.authService.hasAnyRolesAsync("Updater","SuperUpdater").pipe((0,ve.q)(1)).subscribe(function(Kt){Kt?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/home")),ee.complete())}):(ee.next(R.router.createUrlTree(["/login"],{queryParams:{path:O.url}})),ee.complete())})})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0),e.LFG(Me.e))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac}),v}(),wd=function(){var v=function(){function F(f){(0,S.Z)(this,F),this.impuritiesService=f}return(0,t.Z)(F,[{key:"canDeactivate",value:function(r){return!this.impuritiesService.isImpuritiesUpdated||!!confirm("You have unsaved changes! If you leave, your changes will be lost.")}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(Ks.q))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),$s=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.configService=f,this.router=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){var Je=R.configService.configData.loadedComponents||null;Je&&Je.impurities?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/home")),ee.complete())})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(hn.E),e.LFG(u.F0))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),Rc=n(24459),Rm=[{path:"impurities/register",component:Sd,canActivate:[$s,Nc],canDeactivate:[wd]},{path:"impurities/:id/edit",component:Sd,canActivate:[$s,jp],canDeactivate:[wd]},{path:"impurities/:id",component:v_,canActivate:[$s]}],M_=function(){var v=function(){function F(f){(0,S.Z)(this,F),Rm.forEach(function(r){f.config[0].children.push(r)})}return(0,t.Z)(F,null,[{key:"forRoot",value:function(){return{ngModule:F,providers:[Nc,jp,wd,$s]}}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0))},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({providers:[Nc,jp,wd,$s],imports:[[u.Bz.forChild(Rm),c.ez,et.UX,et.u5,It.c,kt.lN,o.QW,h.ot,s.AV,T.Ps,q.g,_.To,rs.O,ko.d,Is,ou.U,vl.f]]}),v}();e.B6R(Sd,[c.O5,h.lW,T.Hw,s.gM,u.rH,h.zs,u.yS,c.mk,c.sg,o.a8,o.dn,Br.S,kt.KE,It.Nt,et.Fj,et.JJ,et.On,_.ib,_.yz,_.yK,q.k,_.u4,Fc,Ic],[c.uU]),e.B6R(wo,[h.lW,s.gM,T.Hw,o.a8,o.dn,Rc.Q,c.O5,kt.KE,It.Nt,et.Fj,et.JJ,et.On,Br.S,c.sg],[]),e.B6R(Dd,[c.O5,Br.S,kt.KE,It.Nt,et.Fj,et.JJ,et.On,h.lW,s.gM,T.Hw,c.sg],[]),e.B6R(Ic,[kt.KE,It.Nt,et.Fj,et.JJ,et.On,Br.S],[]),e.B6R(km,[h.lW,s.gM,T.Hw,o.a8,o.dn,kt.KE,It.Nt,et.Fj,et.JJ,et.On,Br.S,q.k,c.sg,wo,Dd],[]),e.B6R(Fc,[h.lW,s.gM,T.Hw,o.a8,o.dn,Rc.Q,c.O5,kt.KE,It.Nt,et.Fj,et.JJ,et.On,Br.S,_.ib,_.yz,_.yK,q.k,_.u4,c.sg,km,Fm,lu],[]),e.B6R(Fm,[h.lW,s.gM,T.Hw,o.a8,o.dn,Rc.Q,c.O5,kt.KE,It.Nt,et.Fj,et.JJ,et.On,Br.S],[]),e.B6R(lu,[h.lW,s.gM,T.Hw,o.a8,o.dn,Rc.Q,c.O5,Br.S,kt.KE,It.Nt,et.Fj,et.JJ,et.On],[]);var x_=n(69264),es=n(28784),uu=function(){var v=function(F){(0,da.Z)(r,F);var f=(0,Ea.Z)(r);function r(O,R){var ee;return(0,S.Z)(this,r),(ee=f.call(this,R)).http=O,ee.configService=R,ee.apiBaseUrlWithSubstanceEntityUrl=ee.configService.configData.apiBaseUrl||"api/v1/substances/",ee.apiBaseUrlWithApplicationEntityUrl=ee.configService.configData.apiBaseUrl+"api/v1/applications/",ee.apiBaseUrlWithApplicationAllEntityUrl=ee.configService.configData.apiBaseUrl+"api/v1/applicationsall/",ee.apiBaseUrlWithApplicationDarrtsEntityUrl=ee.configService.configData.apiBaseUrl+"api/v1/applicationsdarrts/",ee.apiBaseUrlWithProductEntityUrl=ee.configService.configData.apiBaseUrl+"api/v1/products/",ee.apiBaseUrlWithProductBrowseEntityUrl=ee.configService.configData.apiBaseUrl+"api/v1/productsall/",ee.apiBaseUrlWithProductElistEntityUrl=ee.configService.configData.apiBaseUrl+"api/v1/productselist/",ee.apiBaseUrlWithClinicalTrialEntityUrl=ee.configService.configData.apiBaseUrl+"api/v1/clinicaltrialsus/",ee.apiBaseUrlWithEntityPtContext=ee.configService.configData.apiBaseUrl+"api/v1/adverseeventpt/",ee.apiBaseUrlWithEntityDmeContext=ee.configService.configData.apiBaseUrl+"api/v1/adverseeventdme/",ee.apiBaseUrlWithEntityCvmContext=ee.configService.configData.apiBaseUrl+"api/v1/adverseeventcvm/",ee}return(0,t.Z)(r,[{key:"getBaseHref",value:function(){return this.configService.environment.baseHref}},{key:"getSubstanceCount",value:function(){var R="".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/@count");return this.http.get(R)}},{key:"getApplicationCount",value:function(){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+"@count")}},{key:"getProductCount",value:function(){return this.http.get(this.apiBaseUrlWithProductBrowseEntityUrl+"@count")}},{key:"getClinicalTrialCount",value:function(){return this.http.get(this.apiBaseUrlWithClinicalTrialEntityUrl+"@count")}},{key:"getSubstances",value:function(){var R=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Je=arguments.length>2?arguments[2]:void 0,_t=arguments.length>3?arguments[3]:void 0,Kt=new gn.nq;Kt=(Kt=(Kt=Kt.append("skip",R.toString())).append("top","1")).append("view","key"),null!==Je&&""!==Je&&(Kt=Kt.append("q",Je)),Kt=Kt.appendFacetParams(_t);var Un="".concat(this.apiBaseUrl,"substances/search"),ai={params:Kt};return this.http.get(Un,ai)}},{key:"getApplications",value:function(){var R=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Je=arguments.length>2?arguments[2]:void 0,_t=arguments.length>3?arguments[3]:void 0,Kt=new gn.nq;Kt=(Kt=(Kt=Kt.append("skip",R.toString())).append("top","1")).append("view","key"),null!==Je&&""!==Je&&(Kt=Kt.append("q",Je)),Kt=Kt.appendFacetParams(_t);var Un=this.apiBaseUrlWithApplicationEntityUrl+"search",ai={params:Kt};return this.http.get(Un,ai)}},{key:"getProducts",value:function(){var R=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Je=arguments.length>2?arguments[2]:void 0,_t=arguments.length>3?arguments[3]:void 0,Kt=new gn.nq;Kt=(Kt=(Kt=Kt.append("skip",R.toString())).append("top","1")).append("view","key"),null!==Je&&""!==Je&&(Kt=Kt.append("q",Je)),Kt=Kt.appendFacetParams(_t);var Un=this.apiBaseUrlWithProductBrowseEntityUrl+"search",ai={params:Kt};return this.http.get(Un,ai)}},{key:"getClinicalTrials",value:function(){var R=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,Je=arguments.length>2?arguments[2]:void 0,_t=arguments.length>3?arguments[3]:void 0,Kt=new gn.nq;Kt=(Kt=(Kt=Kt.append("skip",R.toString())).append("top","1")).append("view","key"),null!==Je&&""!==Je&&(Kt=Kt.append("q",Je)),Kt=Kt.appendFacetParams(_t);var Un=this.apiBaseUrlWithClinicalTrialEntityUrl+"search",ai={params:Kt};return this.http.get(Un,ai)}},{key:"getTypeAheadSearchText",value:function(R,ee,Je){var _t,Kt;return R&&("Substance"===R&&(Kt="".concat(this.configService.configData.apiBaseUrl,"api/v1/")),"Application"===R&&(Kt=this.apiBaseUrlWithApplicationEntityUrl),"Product"===R&&(Kt=this.apiBaseUrlWithProductBrowseEntityUrl),"Clinical Trial"===R&&(Kt=this.apiBaseUrlWithClinicalTrialEntityUrl),"Adverse Event"===R&&ee&&("Ingredient_Name"===ee&&(Kt="".concat(this.configService.configData.apiBaseUrl,"api/v1/"),ee="Name"),"PT_Term"===ee&&(Kt=this.apiBaseUrlWithEntityPtContext),"Prim_SOC"===ee&&(Kt=this.apiBaseUrlWithEntityPtContext),"DME_Reactions"===ee&&(Kt=this.apiBaseUrlWithEntityDmeContext),"PTTerm_Meddra"===ee&&(Kt=this.apiBaseUrlWithEntityDmeContext),"Adverse_Event"===ee&&(Kt=this.apiBaseUrlWithEntityCvmContext),"Species"===ee&&(Kt=this.apiBaseUrlWithEntityCvmContext)),_t=Kt+"suggest/"+ee+"?q="+Je),this.http.get(_t)}}]),r}(x_.q);return v.\u0275fac=function(f){return new(f||v)(e.LFG(es.eN),e.LFG(hn.E))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),S_=n(45592),T_=n(84705),Um=n(1790),Pu=n(43461),_g=["structure_canvas"],Bm=["contentContainer"];function Ym(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1,"Substance"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(4),e.hij(" (",f.substanceCount,") ")}}function gg(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1,"Application"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(4),e.hij(" (",f.applicationCount,") ")}}function qm(v,F){1&v&&(e.TgZ(0,"mat-tab",22),e.YNc(1,gg,5,1,"ng-template",10),e.qZA())}function vg(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1,"Product"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(4),e.hij(" (",f.productCount,") ")}}function A_(v,F){1&v&&(e.TgZ(0,"mat-tab",23),e.YNc(1,vg,5,1,"ng-template",10),e.qZA())}function P_(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event"),e._UZ(2,"br"),e.TgZ(3,"div",5),e._uU(4),e.qZA(),e.qZA()),2&v){var f=e.oxw(2);e.xp6(4),e.lnq(" PT (",f.adverseEventPtCount,") \xa0 DME (",f.adverseEventDmeCount,") \xa0 CVM (",f.adverseEventCvmCount,") ")}}function D_(v,F){1&v&&(e.TgZ(0,"mat-tab",24),e.YNc(1,P_,5,3,"ng-template",10),e._UZ(2,"br"),e.qZA())}function yg(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",32),e.NdJ("click",function(){e.CHM(f);var O=e.oxw().index;return e.oxw().removeQueryStatement(O)}),e._UZ(1,"mat-icon",33),e.qZA()}}function bg(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",34),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).addQueryStatement()}),e._UZ(1,"mat-icon",35),e.qZA()}}function Jp(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",25),e.TgZ(1,"div",26),e.TgZ(2,"app-advanced-query-statement",27),e.NdJ("queryUpdated",function(Kt){var ai=e.CHM(f).index;return e.oxw().queryUpdated(Kt,ai)})("processSearchOut",function(){return e.CHM(f),e.oxw().processSearchOut()}),e.qZA(),e.qZA(),e.TgZ(3,"div",28),e.TgZ(4,"div",29),e.YNc(5,yg,2,0,"button",30),e.qZA(),e.TgZ(6,"div",29),e.YNc(7,bg,2,0,"button",31),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit,O=F.index,R=F.first,ee=F.last,Je=e.oxw();e.xp6(2),e.Q6J("category",Je.category)("queryStatementHash",r.queryHash)("index",O)("queryableDictionary",Je.queryableSubstanceDict)("queryableOptions",Je.displayProperties)("queryableOptionsCommon",Je.displayPropertiesCommon),e.xp6(3),e.Q6J("ngIf",!R||Je.queryStatements.length>1),e.xp6(2),e.Q6J("ngIf",ee)}}function w_(v,F){1&v&&(e.TgZ(0,"div",36),e._uU(1," Query "),e.qZA())}function Hm(v,F){if(1&v&&(e.TgZ(0,"div",37),e.TgZ(1,"div",38),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(2),e.hij(" ",f.queryDisplay," ")}}function Vm(v,F){if(1&v&&(e.TgZ(0,"mat-option",50),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f),e.xp6(1),e.hij(" ",f," ")}}function Cg(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field"),e.TgZ(2,"mat-label"),e._uU(3,"Facet View:"),e.qZA(),e.TgZ(4,"mat-select",48),e.NdJ("selectionChange",function(R){return e.CHM(f),e.oxw(2).facetViewChange(R)}),e.YNc(5,Vm,2,2,"mat-option",49),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(4),e.Q6J("formControl",r.facetViewControl),e.xp6(1),e.Q6J("ngForOf",r.facetViewCategory)}}function Xs(v,F){1&v&&(e.TgZ(0,"div",51),e._UZ(1,"mat-progress-spinner",52),e.qZA())}function Mg(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-expansion-panel",39),e.TgZ(1,"mat-expansion-panel-header"),e.TgZ(2,"mat-panel-title"),e.TgZ(3,"div",40),e.TgZ(4,"b"),e._uU(5,"Filter by "),e.TgZ(6,"span",41),e._uU(7),e.qZA(),e._uU(8),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"div",1),e.TgZ(10,"div"),e.TgZ(11,"mat-form-field"),e.TgZ(12,"input",42),e.NdJ("ngModelChange",function(R){return e.CHM(f),e.oxw().facetNameText=R}),e.qZA(),e.qZA(),e.qZA(),e.YNc(13,Cg,6,2,"div",43),e.TgZ(14,"div",44),e.TgZ(15,"button",45),e.NdJ("click",function(){return e.CHM(f),e.oxw().togglePanelExpand()}),e._uU(16),e.qZA(),e.qZA(),e.qZA(),e._UZ(17,"br"),e.YNc(18,Xs,2,0,"div",46),e.TgZ(19,"div"),e.TgZ(20,"app-facets-manager",47),e.NdJ("facetsParamsUpdated",function(R){return e.CHM(f),e.oxw().facetsParamsUpdated(R)})("facetsLoaded",function(R){return e.CHM(f),e.oxw().facetsLoaded(R)}),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.Q6J("expanded",!1),e.xp6(7),e.hij(" ",r.category,""),e.xp6(1),e.hij(" Facets(",r.numFacetsLoaded,")"),e.xp6(4),e.Q6J("ngModel",r.facetNameText),e.xp6(1),e.Q6J("ngIf","Substance"===r.category),e.xp6(3),e.hij("",r.panelExpanded?"Collapse":"Expand"," All"),e.xp6(2),e.Q6J("ngIf",r.showSpinner),e.xp6(2),e.Q6J("rawFacets",r.rawFacets)("configName",r.facetKey)("facetViewCategorySelected",r.facetViewCategorySelected)("facetDisplayType",r.facetDisplayType)("panelExpanded",r.panelExpanded)("facetNameText",r.facetNameText)}}function xg(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",76),e.TgZ(1,"div"),e._uU(2,"Similarity cutoff (tanimoto)"),e.qZA(),e.TgZ(3,"mat-slider",77),e.NdJ("input",function(R){return e.CHM(f),e.oxw(2).searchCutoffChanged(R)}),e.qZA(),e.TgZ(4,"div"),e._uU(5),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(3),e.Q6J("value",r.similarityCutoff),e.xp6(2),e.Oqu(r.similarityCutoff)}}function jm(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",53),e.TgZ(1,"mat-expansion-panel",54),e.TgZ(2,"mat-expansion-panel-header",55),e.TgZ(3,"mat-panel-title",56),e._uU(4," AND Search Structure "),e.qZA(),e._UZ(5,"mat-panel-description",57),e.qZA(),e.TgZ(6,"div",58,59),e.TgZ(8,"mat-card"),e.TgZ(9,"div",60),e.TgZ(10,"div",61),e.TgZ(11,"app-structure-editor",62),e.NdJ("editorOnLoad",function(R){return e.CHM(f),e.oxw().editorOnLoad(R)})("loadedMolfile",function(R){return e.CHM(f),e.oxw().molvecUpdate(R)}),e.qZA(),e.qZA(),e.TgZ(12,"div",63),e.TgZ(13,"div",64),e.TgZ(14,"mat-form-field",65),e.TgZ(15,"mat-select",66),e.NdJ("selectionChange",function(R){return e.CHM(f),e.oxw().searchTypeSelected(R)}),e.TgZ(16,"mat-option",67),e._uU(17," Substructure "),e.qZA(),e.TgZ(18,"mat-option",68),e._uU(19," Similarity "),e.qZA(),e.TgZ(20,"mat-option",69),e._uU(21," Exact "),e.qZA(),e.TgZ(22,"mat-option",70),e._uU(23," Flex "),e.qZA(),e.qZA(),e.qZA(),e.YNc(24,xg,6,2,"div",71),e.qZA(),e.TgZ(25,"div",72),e.TgZ(26,"button",73),e.NdJ("click",function(){return e.CHM(f),e.oxw().openStructureImportDialog()}),e._uU(27,"Import"),e.qZA(),e.qZA(),e.TgZ(28,"div",72),e.TgZ(29,"button",74),e.NdJ("click",function(){return e.CHM(f),e.oxw().openStructureExportDialog()}),e._uU(30,"Export"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div"),e.TgZ(32,"h4"),e._uU(33," Get Structure From Name "),e.qZA(),e.TgZ(34,"app-name-resolver",75),e.NdJ("structureSelected",function(R){return e.CHM(f),e.oxw().nameResolved(R)}),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(1),e.Q6J("expanded",!0),e.xp6(14),e.Q6J("formControl",r.searchTypeControl),e.xp6(9),e.Q6J("ngIf",r.showSimilarityCutoff)}}var Jm=function(){return["/structure-search"]},Qm=function(){return["/sequence-search"]},Wm=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr,is,eo,Mo,qc){(0,S.Z)(this,F),this.http=f,this.router=r,this.activatedRoute=O,this.loadingService=R,this.advancedSearchService=ee,this.adverseEventService=Je,this.configService=_t,this.utilitiesService=Kt,this.substanceService=Un,this.applicationService=ai,this.productService=Pi,this.clinicalTrialService=ki,this.facetManagerService=ha,this.gaService=kr,this.titleService=is,this.location=eo,this.dialog=Mo,this.structureService=qc,this.advancedSearchFacetDisplay=!1,this.queryStatements=[],this.facetViewControl=new et.NI,this.height=0,this.width=0,this.canvasToggle=!0,this.canvasMessage="",this.tempClass="",this.categoryOptions=["Substance","Application","Product","Clinical Trial","Adverse Event"],this.tabSelectedIndex=0,this.category="Substance",this.tabClicked=!1,this.jsdrawScriptUrls=["".concat(Jn.N.baseHref||"","assets/dojo/dojo.js"),"".concat(Jn.N.baseHref||"","assets/jsdraw/Scilligence.JSDraw2.Pro.js"),"".concat(Jn.N.baseHref||"","assets/jsdraw/Scilligence.JSDraw2.Resources.js"),"".concat(Jn.N.baseHref||"","assets/jsdraw/JSDraw.extensions.js")],this.showSpinner=!1,this.subscriptions=[],this.panelExpanded=!1,this.numFacetsLoaded=0,this.facetKey="substances",this.rawFacets=[],this.rawFacetsSubstance=[],this.rawFacetsApplication=[],this.rawFacetsProduct=[],this.rawFacetsClinicalTrial=[],this.rawFacetsAdverseEventPt=[],this.rawFacetsAdverseEventDme=[],this.rawFacetsAdverseEventCvm=[],this.displayFacets=[],this.facetViewCategorySelected="Default",this.facetViewCategory=[],this.substanceFacetsQuickSearch=[],this.applicationFacetsQuickSearch=[],this.productFacetsQuickSearch=[],this.clinicalTrialFacetsQuickSearch=[],this.navigationExtrasFacet={queryParams:{}},this.queryFacet="",this.queryDisplay="",this.facetNameText="",this.facetDisplayType="all",this.substanceFacetsDisplay=["Record Status","Substance Class","Relationships","GInAS Tag"],this.applicationFacetsDisplay=["Center","Application Type","Application Status","Provenance (GSRS)"],this.productFacetsDisplay=["Provenance","Company Country","Product Type","Dosage Form Name"],this.clinicalTrialFacetsDisplay=["Intervention Type","Age Groups","Conditions","Study Types"],this.applicationFacetValue=[],this.substanceCount="0",this.applicationCount="0",this.productCount="0",this.clinicalTrialCount="0",this.adverseEventPtCount="0",this.adverseEventDmeCount="0",this.adverseEventCvmCount="0",this.showSimilarityCutoff=!1,this.searchTypeControl=new et.NI,this.searchType="substructure",this._searchtype="substructure"}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.loadingService.setLoading(!0),this.showSpinner=!0,this.loadedComponents=this.configService.configData.loadedComponents||null,this.advancedSearchFacetDisplay=this.configService.configData.advancedSearchFacetDisplay||!1,this.titleService.setTitle("Advanced Search");var O=Number(this.activatedRoute.snapshot.queryParams["g-search-hash"])||null;if(O){var R=localStorage.getItem(O.toString());if(null!=R&&(this.queryStatementHashes=JSON.parse(R),null!=this.queryStatementHashes[0])){var ee=localStorage.getItem(this.queryStatementHashes[0].toString());null!=ee&&(this.category=ee,this.categoryOptions.forEach(function(Je,_t){null!=Je&&Je===ee&&(r.tabSelectedIndex=_t)}),this.queryStatementHashes.splice(0,1))}}this.getBrowseSubstanceDetails(),this.loadedComponents&&(this.loadedComponents.applications&&this.getBrowseApplicationDetails(),this.loadedComponents.products&&this.getBrowseProductDetails(),this.loadedComponents.adverseevents&&(this.getBrowseAdverseEventPtDetails(),this.getBrowseAdverseEventDmeDetails(),this.getBrowseAdverseEventCvmDetails())),this.loadFileName(),this.loadFacetViewFromConfig(),this.showSpinner=!1,this.loadingService.setLoading(!1)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadFacetViewFromConfig",value:function(){var r=this;this.facetViewControl.setValue(this.facetViewCategorySelected),(this.configService.configData.facets&&this.configService.configData.facets.substances||{}).facetView.forEach(function(R){r.facetViewCategory.push(R.category)}),this.facetViewCategory.push("All")}},{key:"getBrowseSubstanceDetails",value:function(){var r=this,O=this.advancedSearchService.getSubstances(0,10,null,this.privateFacetParams).subscribe(function(R){r.substances=R.content,r.substanceCount=(0,c.uf)(Number(R.total),"en-US","1.0-0"),R.facets&&R.facets.length>0&&(r.rawFacetsSubstance=R.facets,r.rawFacets=R.facets)});this.subscriptions.push(O)}},{key:"getBrowseApplicationDetails",value:function(){var r=this,O=this.advancedSearchService.getApplications(0,10,null,this.privateFacetParams).subscribe(function(R){r.applications=R.content,r.applicationCount=(0,c.uf)(Number(R.total),"en-US","1.0-0"),R.facets&&R.facets.length>0&&(r.rawFacetsApplication=R.facets)});this.subscriptions.push(O)}},{key:"getBrowseProductDetails",value:function(){var r=this,O=this.advancedSearchService.getProducts(0,10,null,this.privateFacetParams).subscribe(function(R){r.products=R.content,r.productCount=(0,c.uf)(Number(R.total),"en-US","1.0-0"),R.facets&&R.facets.length>0&&(r.rawFacetsProduct=R.facets)});this.subscriptions.push(O)}},{key:"getBrowseClinicalTrialDetails",value:function(){var r=this,O=this.advancedSearchService.getClinicalTrials(0,10,null,this.privateFacetParams).subscribe(function(R){r.clinicalTrials=R.content,r.clinicalTrialCount=(0,c.uf)(Number(R.total),"en-US","1.0-0"),R.facets&&R.facets.length>0&&(r.rawFacetsClinicalTrial=R.facets)});this.subscriptions.push(O)}},{key:"getBrowseAdverseEventPtDetails",value:function(){var r=this,O=this.adverseEventService.getAdverseEventPt(null,0,10,null,this.privateFacetParams).subscribe(function(R){r.adverseEventPt=R.content,r.adverseEventPtCount=(0,c.uf)(Number(R.total),"en-US","1.0-0"),R.facets&&R.facets.length>0&&(r.rawFacetsAdverseEventPt=R.facets)});this.subscriptions.push(O)}},{key:"getBrowseAdverseEventDmeDetails",value:function(){var r=this,O=this.adverseEventService.getAdverseEventDme(null,0,10,null,this.privateFacetParams).subscribe(function(R){r.adverseEventDme=R.content,r.adverseEventDmeCount=(0,c.uf)(Number(R.total),"en-US","1.0-0"),R.facets&&R.facets.length>0&&(r.rawFacetsAdverseEventDme=R.facets)});this.subscriptions.push(O)}},{key:"getBrowseAdverseEventCvmDetails",value:function(){var r=this,O=this.adverseEventService.getAdverseEventCvm(null,0,10,null,this.privateFacetParams).subscribe(function(R){r.adverseEventCvm=R.content,r.adverseEventCvmCount=(0,c.uf)(Number(R.total),"en-US","1.0-0"),R.facets&&R.facets.length>0&&(r.rawFacetsAdverseEventCvm=R.facets)});this.subscriptions.push(O)}},{key:"tabSelectedUpdated",value:function(r){r&&(this.category=r.tab.textLabel,this.category&&(this.tabClicked=!0,this.loadFileName()))}},{key:"loadFileName",value:function(){this.category&&(this.query="",this.facetDisplayType="default",this.facetManagerService.clearSelections(),this.facetManagerService.unregisterFacetSearchHandler(),"Substance"===this.category?(this.dictionaryFileName="substance_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.substanceService.getSubstanceFacets),this.rawFacets=this.rawFacetsSubstance,this.facetKey="substances",this.facetDisplayType="facetView"):"Application"===this.category?(this.dictionaryFileName="application_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.applicationService.getApplicationFacets),this.rawFacets=this.rawFacetsApplication,this.facetKey="applications"):"Product"===this.category?(this.dictionaryFileName="productall_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.productService.getProductFacets),this.rawFacets=this.rawFacetsProduct,this.facetKey="products"):"Clinical Trial"===this.category?(this.dictionaryFileName="ctus_dictionary.json",this.facetKey="ctclinicaltrial"):"Adverse Event"===this.category&&(this.dictionaryFileName="adverseevent_dictionary.json",this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets),this.rawFacets=this.rawFacetsAdverseEventPt,this.facetKey="adverseeventpt")),this.getSearchField()}},{key:"getSearchField",value:function(){var r=this;this.http.get("".concat(this.configService.environment.baseHref,"assets/data/")+this.dictionaryFileName).subscribe(function(O){O.All={lucenePath:"",description:"All substance fields",type:"string",cvDomain:""},r.queryableSubstanceDict=O;var R=["All"],ee=["All","Manual Query Entry"];Object.keys(r.queryableSubstanceDict).forEach(function(Je){R.push(Je),null!=r.queryableSubstanceDict[Je].priority&&ee.push(Je)}),r.displayProperties=R,r.displayPropertiesCommon=ee,null!=r.queryStatementHashes&&!1===r.tabClicked&&r.queryStatementHashes.forEach(function(Je){r.queryStatements.push({queryHash:Je})}),0===r.queryStatements.length&&r.queryStatements.push({})})}},{key:"queryUpdated",value:function(r,O){var R=this;setTimeout(function(){Object.keys(r).forEach(function(ee){R.queryStatements[O][ee]=r[ee]}),R.query="",R.query=R.queryStatements.map(function(ee){return ee.query}).join(" ").trim(),R.facetQueryConstruct()})}},{key:"addQueryStatement",value:function(){this.queryStatements.push({condition:"",queryableProperty:"All",command:""})}},{key:"removeQueryStatement",value:function(r){this.queryStatements.splice(r,1),this.query=this.queryStatements.map(function(O){return O.query}).join(" "),this.queryDisplay=this.query+this.queryFacet}},{key:"togglePanelExpand",value:function(){this.showSpinner=!0,this.panelExpanded=!this.panelExpanded,this.showSpinner=!1}},{key:"facetsLoaded",value:function(r){this.numFacetsLoaded=r}},{key:"facetViewChange",value:function(r){this.facetViewCategorySelected=r.value}},{key:"clearSearch",value:function(){}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(r){r.removeFacet(r.type,r.bool,r.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"facetQueryConstruct",value:function(){var r=this;this.queryFacet="",this.displayFacets.forEach(function(O,R){O&&(r.queryFacet=(r.query&&0===R?" AND ":"")+r.queryFacet+(r.queryFacet?" AND ":"")+O.type+":"+O.val)}),this.queryDisplay=this.query+this.queryFacet}},{key:"facetsParamsUpdated",value:function(r){this.privateFacetParams=r.facetParam,this.displayFacets=r.displayFacets,this.populateUrlQueryParameters(),this.facetQueryConstruct();for(var O=!1,R=0,ee=Object.keys(this.privateFacetParams);R0)){O=!1;break}O=!0}!0===O&&(this.setFacetLocationUrl(),this.processSearch())}},{key:"encodeValue",value:function(r){var O=r.replace("!","!@");return(O=(O=(O=O.replace(/[.]/g,"!.")).replace(/[\+]/g,"!+")).replace(/[,]/g,"!,")).replace(/[\*]/g,"!*")}},{key:"populateUrlQueryParameters",value:function(r){for(var R,O=[],ee=0,Je=Object.keys(this.privateFacetParams);ee0){this.query?"Clinical Trial"===this.category?_t.queryParams.searchTerm=this.query:(_t.queryParams.search=this.query,_t.queryParams["g-search-hash"]=ee.toString()):this.privateFacetParams&&Object.keys(this.privateFacetParams).length>0&&(_t.queryParams.facets=this.navigationExtrasFacet.queryParams.facets);var Kt={queryParams:{"g-search-hash":ee.toString()}};if(window.history.pushState({},"Advanced Search","/advanced-search?g-search-hash="+Kt.queryParams["g-search-hash"]),"Substance"===this.category){var Un=this.editor.getMolfile();Un&&Un.length>72?this.structureService.interpretStructure(Un).subscribe(function(ai){var ha=ai.structure.id,kr=ai.structure.smiles;_t.queryParams.structure_search=ha||null,_t.queryParams.type=r.searchType||null,Kt.queryParams.structure=ha,Kt.queryParams.type=r.searchType||null,"similarity"===r.searchType&&(_t.queryParams.cutoff=r.similarityCutoff||0,Kt.queryParams.cutoff=r.similarityCutoff||0),null!=kr&&(_t.queryParams.smiles=kr),window.history.pushState({},"Structure Search","/structure-search?structure="+Kt.queryParams.structure+"&type="+Kt.queryParams.type+"&cutoff="+Kt.queryParams.cutoff),r.router.navigate(["/browse-substance"],_t)},function(){}):this.router.navigate(["/browse-substance"],_t)}else this.router.navigate("Application"===this.category?["/browse-applications"]:"Product"===this.category?["/browse-products"]:"Clinical Trial"===this.category?["/browse-clinical-trials"]:"Adverse Event"===this.category?["/browse-adverse-events"]:["/browse-substance"],_t)}else alert("Please select any criteria to search")}},{key:"processSearchOut",value:function(){this.processSearch()}},{key:"editorOnLoad",value:function(r){var O=this;this.loadingService.setLoading(!1),this.editor=r,setTimeout(function(){O.activatedRoute.queryParamMap.subscribe(function(R){R.has("structure")&&O.structureService.getMolfile(R.get("structure")).subscribe(function(ee){O.editor.setMolecule(ee)}),R.has("type")&&(O.searchType=R.get("type")),"similarity"===O.searchType&&(O.showSimilarityCutoff=!0,O.similarityCutoff=R.has("cutoff")&&Number(R.get("cutoff"))||.8),O.searchTypeControl.setValue(O.searchType)})})}},{key:"searchTypeSelected",value:function(r){this.searchType=r.value,this.gaService.sendEvent("structureSearch","select:search-type",this.searchType),"similarity"===this.searchType?(this.showSimilarityCutoff=!0,this.similarityCutoff=.8):this.showSimilarityCutoff=!1}},{key:"molvecUpdate",value:function(r){this.editor.setMolecule(r)}},{key:"openStructureImportDialog",value:function(){var r=this;this.gaService.sendEvent("structureSearch","button:import","import structure"),this.dialog.open(T_.N,{height:"auto",width:"650px",data:{}}).afterClosed().subscribe(function(R){R&&R.structure&&R.structure.molfile&&r.editor.setMolecule(R.structure.molfile)},function(){r.overlayContainer.style.zIndex=null})}},{key:"openStructureExportDialog",value:function(){var r=this;this.gaService.sendEvent("structureSearch","button:export","export structure");var O=this.dialog.open(S_.g,{height:"auto",width:"650px",data:{molfile:this.editor.getMolfile(),smiles:this.editor.getSmiles()}});this.overlayContainer.style.zIndex="1002",O.afterClosed().subscribe(function(){r.overlayContainer.style.zIndex=null},function(){r.overlayContainer.style.zIndex=null})}},{key:"searchCutoffChanged",value:function(r){this.similarityCutoff=r.value,this.gaService.sendEvent("structureSearch","slider","similarity-cutoff",this.similarityCutoff)}},{key:"_editor",get:function(){return this.editor}},{key:"_searchType",get:function(){return this.searchType}},{key:"nameResolved",value:function(r){this.editor.setMolecule(r)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(es.eN),e.Y36(u.F0),e.Y36(u.gz),e.Y36(Xe.b),e.Y36(uu),e.Y36(Pu.a),e.Y36(hn.E),e.Y36(Gu.FW),e.Y36(ue.d),e.Y36(I.I),e.Y36(On.M),e.Y36(Vs.m),e.Y36(gn.bH),e.Y36(jn.$),e.Y36(mn.Dx),e.Y36(c.Ye),e.Y36(mt.uw),e.Y36(Um.D))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-advanced-search"]],viewQuery:function(f,r){var O;1&f&&(e.Gf(_g,5),e.Gf(Bm,7)),2&f&&(e.iGM(O=e.CRH())&&(r.myCanvas=O.first),e.iGM(O=e.CRH())&&(r.contentContainer=O.first))},decls:40,vars:13,consts:[[1,"div-center","margintop50px"],[1,"div-flex"],[1,"title"],[1,"margintop30px","marginleft200px"],[3,"routerLink"],[1,"font12px"],[1,"search-button"],["mat-flat-button","","color","primary",3,"click"],[1,"tab-style","margintop30px",3,"selectedIndex","selectedTabChange"],["label","Substance"],["mat-tab-label",""],["label","Application",4,"ngIf"],["label","Product",4,"ngIf"],["label","Adverse Event",4,"ngIf"],[1,"builder-container"],["class","builder-row",4,"ngFor","ngForOf"],["class","titlequery",4,"ngIf"],["class","query-container",4,"ngIf"],["class","margintop10px width100percent",3,"expanded",4,"ngIf"],[1,"width100percent"],["class","panel-style",4,"ngIf"],[3,"keyup.enter"],["label","Application"],["label","Product"],["label","Adverse Event"],[1,"builder-row"],[1,"query-statement-container"],[3,"category","queryStatementHash","index","queryableDictionary","queryableOptions","queryableOptionsCommon","queryUpdated","processSearchOut"],[1,"actions-container"],[1,"button-container"],["mat-icon-button","","aria-label","remove query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","add query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","remove query statement",3,"click"],["svgIcon","remove_circle_outline"],["mat-icon-button","","aria-label","add query statement",3,"click"],["svgIcon","add_circle_outline"],[1,"titlequery"],[1,"query-container"],[1,"query-value"],[1,"margintop10px","width100percent",3,"expanded"],[1,"colorgray"],[1,"colororange"],["matInput","","placeholder","Search Facet Name","name","facetNameText",3,"ngModel","ngModelChange"],[4,"ngIf"],[1,"align-right"],["mat-flat-button","",1,"bordergray",3,"click"],["class","spinnerstyle",4,"ngIf"],["includeFacetSearch","true","calledFrom","advancedsearch",3,"rawFacets","configName","facetViewCategorySelected","facetDisplayType","panelExpanded","facetNameText","facetsParamsUpdated","facetsLoaded"],[3,"formControl","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"spinnerstyle"],["diameter","80","color","warn","mode","indeterminate"],[1,"panel-style"],[1,"panel-style","width100percent",3,"expanded"],[1,""],[1,"margintop12px"],[1,"marginleft25px"],[1,"search-content-container"],["contentContainer",""],[1,"structure-editor-actions-container"],[1,"editor-container"],[3,"editorOnLoad","loadedMolfile"],[1,"search-actions"],[1,"two"],[1,"search-type-select"],["placeholder","Search type","value","substructure",3,"formControl","selectionChange"],["value","substructure"],["value","similarity"],["value","exact"],["value","flex"],["class","similarity-cutoff",4,"ngIf"],[1,"action-button-container","one"],["name","export","mat-raised-button","","color","primary",1,"import-button",3,"click"],["name","import","mat-raised-button","","color","primary",1,"export-button",3,"click"],[3,"structureSelected"],[1,"similarity-cutoff"],["min",".40","max","1","step","0.01",3,"value","input"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"h2",2),e._uU(3," Advanced Search "),e.qZA(),e.TgZ(4,"div",3),e.TgZ(5,"a",4),e.TgZ(6,"span",5),e._uU(7,"Structure Search"),e.qZA(),e.qZA(),e._uU(8," \xa0\xa0\xa0\xa0 "),e.TgZ(9,"a",4),e.TgZ(10,"span",5),e._uU(11,"Sequence Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(12,"div",6),e.TgZ(13,"div"),e.TgZ(14,"button",7),e.NdJ("click",function(){return r.processSearch()}),e._uU(15,"Search"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"mat-tab-group",8),e.NdJ("selectedTabChange",function(R){return r.tabSelectedUpdated(R)}),e.TgZ(17,"mat-tab",9),e.YNc(18,Ym,5,1,"ng-template",10),e.qZA(),e.YNc(19,qm,2,0,"mat-tab",11),e.YNc(20,A_,2,0,"mat-tab",12),e.YNc(21,D_,3,0,"mat-tab",13),e.qZA(),e.TgZ(22,"mat-card"),e._UZ(23,"mat-card-title"),e.TgZ(24,"mat-card-content"),e.TgZ(25,"div",14),e.YNc(26,Jp,8,8,"div",15),e.qZA(),e.YNc(27,w_,2,0,"div",16),e.YNc(28,Hm,3,1,"div",17),e.qZA(),e.qZA(),e.YNc(29,Mg,21,13,"mat-expansion-panel",18),e.TgZ(30,"div",19),e.YNc(31,jm,35,3,"div",20),e.qZA(),e.TgZ(32,"div",6),e.TgZ(33,"div"),e.TgZ(34,"button",7),e.NdJ("click",function(){return r.processSearch()}),e._uU(35,"Search"),e.qZA(),e.qZA(),e.TgZ(36,"div",21),e.NdJ("keyup.enter",function(){return r.processSearch()}),e.qZA(),e.qZA(),e.qZA(),e._UZ(37,"br"),e._UZ(38,"br"),e._UZ(39,"br")),2&f&&(e.xp6(5),e.Q6J("routerLink",e.DdM(11,Jm)),e.xp6(4),e.Q6J("routerLink",e.DdM(12,Qm)),e.xp6(7),e.Q6J("selectedIndex",r.tabSelectedIndex),e.xp6(3),e.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.applications),e.xp6(1),e.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.products),e.xp6(1),e.Q6J("ngIf",r.loadedComponents&&r.loadedComponents.adverseevents),e.xp6(5),e.Q6J("ngForOf",r.queryStatements),e.xp6(1),e.Q6J("ngIf",r.queryDisplay),e.xp6(1),e.Q6J("ngIf",r.queryDisplay),e.xp6(1),e.Q6J("ngIf",r.advancedSearchFacetDisplay),e.xp6(2),e.Q6J("ngIf","Substance"===r.category))},styles:[".div-center[_ngcontent-%COMP%]{min-width:1200px;max-width:1200px;margin:auto}.div-flex[_ngcontent-%COMP%]{max-width:1200px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.div-flex-right[_ngcontent-%COMP%]{max-width:1200px;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:0 5px;border:1px solid var(--grey-border-color-rgb);margin-left:150px;margin-right:150px}.mat-card[_ngcontent-%COMP%]{margin-top:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:1250px;width:100%}.builder-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.header-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;margin-top:10px;padding-top:7px;padding-bottom:10px;font-size:14px;font-weight:600;height:30px}.header-row[_ngcontent-%COMP%] .condition-column[_ngcontent-%COMP%]{width:100px}.header-row[_ngcontent-%COMP%] .queryable-property-column[_ngcontent-%COMP%]{width:400px}.header-row[_ngcontent-%COMP%] .command-column[_ngcontent-%COMP%]{width:190px}.header-row[_ngcontent-%COMP%] .query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-left:10px}.builder-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;padding-bottom:5px}.query-statement-container[_ngcontent-%COMP%]{width:94%;max-width:94%}.query-value[_ngcontent-%COMP%]{padding:10px 15px;background-color:var(--query-bg-color);border:solid 1px var(--query-border-color);border-radius:2px;min-height:40px}.actions-container[_ngcontent-%COMP%]{width:6%;display:-ms-flexbox;display:flex}.actions-container[_ngcontent-%COMP%] .button-container[_ngcontent-%COMP%]{width:35px}.mat-card-actions[_ngcontent-%COMP%]{padding-top:10px 10px 0 10px}.query-builder-actions[_ngcontent-%COMP%]{margin:10px 0 15px}.title[_ngcontent-%COMP%]{margin-top:30px;margin-bottom:0;padding-left:10px}.titletab[_ngcontent-%COMP%]{font-size:14px;color:var(--deep-blue-color-rgb);padding:10px 0 5px 10px}.titlequery[_ngcontent-%COMP%]{font-size:20px;font-weight:700;color:var(--deep-blue-color-rgb);padding:10px 0 5px 10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.colormaroon[_ngcontent-%COMP%]{color:#975757}.colororange[_ngcontent-%COMP%]{color:var(--orange-color-rgb)}.colorblack[_ngcontent-%COMP%]{color:var(--regular-black-color)}.colorgray[_ngcontent-%COMP%]{color:var(--maroon-color)}.colorwhite[_ngcontent-%COMP%]{color:var(--regular-white-color)}.margintopneg80px[_ngcontent-%COMP%]{margin-top:-80px}.marginneg10px[_ngcontent-%COMP%]{margin-left:-10px}.margintop5px[_ngcontent-%COMP%]{margin-top:5px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.margintop20px[_ngcontent-%COMP%]{margin-top:20px}.margintop30px[_ngcontent-%COMP%]{margin-top:30px}.margintop50px[_ngcontent-%COMP%]{margin-top:50px}.margintop70px[_ngcontent-%COMP%]{margin-top:70px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft125px[_ngcontent-%COMP%]{margin-left:125px}.marginleft200px[_ngcontent-%COMP%]{margin-left:200px}.marginright15px[_ngcontent-%COMP%]{margin-right:15px}.marginright10px[_ngcontent-%COMP%]{margin-right:10px}.marginright20px[_ngcontent-%COMP%]{margin-right:20px}.marginright25px[_ngcontent-%COMP%]{margin-right:25px}.marginbottom5px[_ngcontent-%COMP%]{margin-bottom:5px}.padtop10px[_ngcontent-%COMP%]{padding-top:50px}.width5percent[_ngcontent-%COMP%]{width:5%;min-width:5%;max-width:5%}.width10percent[_ngcontent-%COMP%]{width:10%;min-width:10%;max-width:10%}.width12percent[_ngcontent-%COMP%]{width:12%;min-width:12%;max-width:12%}.width15percent[_ngcontent-%COMP%]{width:15%;min-width:15%;max-width:15%}.width25percent[_ngcontent-%COMP%]{width:25%;min-width:25%;max-width:25%}.width27percent[_ngcontent-%COMP%]{width:27%;min-width:27%;max-width:27%}.width30percent[_ngcontent-%COMP%]{width:30%;min-width:30%;max-width:30%}.width33percent[_ngcontent-%COMP%]{width:33%;min-width:33%;max-width:33%}.width88percent[_ngcontent-%COMP%]{width:88%;min-width:88%;max-width:88%}.width100percent[_ngcontent-%COMP%]{width:100%;min-width:100%;max-width:100%}.height25px[_ngcontent-%COMP%]{height:25px}.text-align[_ngcontent-%COMP%]{text-align:right}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderbottomdash[_ngcontent-%COMP%]{border-bottom-style:dotted;border-bottom-color:var(--pale-border-color-rgb-2)}.clearboth[_ngcontent-%COMP%]{clear:both}.spinnerstyle[_ngcontent-%COMP%]{position:absolute;inset:0 0 56px;background:var(--spinner-bg-color);z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:top;align-items:top;-ms-flex-pack:center;justify-content:center}.mat-tab-label[_ngcontent-%COMP%]{background:var(--pale-border-color-rgb-3);color:var(--red-label-color);min-width:60px!important}[_nghost-%COMP%] .mat-tab-label-active{color:var(--regular-black-color);font-weight:700;background-color:var(--pale-border-color-rgb-3)}[_nghost-%COMP%] .mat-ink-bar{background-color:--orange-color-rgb!important;background-color:var(--primary-color, --orange-color-rgb)!important;height:2px}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;border-left:none;padding-top:10px;padding-left:0;margin-left:0}.search-actions[_ngcontent-%COMP%] .one[_ngcontent-%COMP%]{-ms-flex-order:1;order:1}.search-actions[_ngcontent-%COMP%] .export-button[_ngcontent-%COMP%]{margin-left:7px}.search-actions[_ngcontent-%COMP%] .two[_ngcontent-%COMP%]{-ms-flex-order:2;order:2;margin-left:auto;display:-ms-flexbox;display:flex;padding-right:10px}.search-actions[_ngcontent-%COMP%] .two[_ngcontent-%COMP%] .similarity-cutoff[_ngcontent-%COMP%]{margin:1px 0 0}.search-actions[_ngcontent-%COMP%] .three[_ngcontent-%COMP%]{-ms-flex-order:3;order:3}.action-button-container[_ngcontent-%COMP%]{width:auto;margin-top:0;-ms-flex-item-align:start;align-self:flex-start}.action-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:auto;border:1px solid var(--regular-green-color)}}.tab-style[_ngcontent-%COMP%]{position:relative;z-index:1}.search-button[_ngcontent-%COMP%]{position:relative;top:30px;z-index:2;width:85px;float:right} .row{display:-ms-flexbox;display:flex;-ms-flex-align:space-between;align-items:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:125px;width:100%} .mat-expansion-panel{margin-right:40px} .col{float:left;width:30%;padding-right:5px;margin-right:70px;margin-left:50px} .col:nth-child(n){margin-right:22px} .col:nth-child(3n+1){clear:left} .panel-height{height:500px;overflow:auto;padding-right:5px} .panel-height-scroll{height:800px;overflow-y:scroll}panel-style[_ngcontent-%COMP%]{min-width:100%;max-width:100%;margin-top:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:1250px}.search-content-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:0 5px}.structure-editor-actions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.editor-container[_ngcontent-%COMP%]{width:920px;min-height:460px}.ketcher[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{height:460px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{min-height:330px}.search-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;padding-left:15px;margin-left:10px;border-left:1px solid var(--textarea-light-border-color)}.search-actions[_ngcontent-%COMP%] .mat-slider-horizontal[_ngcontent-%COMP%]{width:100%}.similarity-cutoff[_ngcontent-%COMP%]{margin-top:20px;margin-bottom:20px;text-align:center}.action-button-container[_ngcontent-%COMP%]{margin-top:20px;-ms-flex-item-align:end;align-self:flex-end;width:100%}.action-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;width:100%}.two[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.action-button-container[_ngcontent-%COMP%]{width:50%;margin:20px auto auto}}@media (max-width: 970px){.structure-editor-actions-container[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.editor-container[_ngcontent-%COMP%], .search-actions[_ngcontent-%COMP%]{min-width:633px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%], .jsdraw[_ngcontent-%COMP%] .search-actions[_ngcontent-%COMP%]{min-width:710px}}"]}),v}(),Qp=n(62128);function zm(v,F){if(1&v&&(e.TgZ(0,"mat-option",12),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f),e.xp6(1),e.hij(" ",f," ")}}function Wp(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-label"),e._uU(2,"Condition"),e.qZA(),e.TgZ(3,"mat-select",6),e.NdJ("openedChange",function(R){return e.CHM(f),e.oxw().openedChange(R)}),e.YNc(4,zm,2,2,"mat-option",7),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(3),e.Q6J("formControl",r.conditionControl),e.xp6(1),e.Q6J("ngForOf",r.conditionOptions)}}function O_(v,F){if(1&v&&(e.TgZ(0,"mat-option",15),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f)("matTooltip",f),e.xp6(1),e.hij(" ",f," ")}}function zp(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"mat-form-field"),e.TgZ(1,"mat-label"),e._uU(2,"Search in Fields"),e.qZA(),e.TgZ(3,"mat-select",6),e.NdJ("openedChange",function(R){return e.CHM(f),e.oxw().openedChange(R)}),e.YNc(4,O_,2,3,"mat-option",13),e.qZA(),e._UZ(5,"span",14),e.TgZ(6,"mat-hint",8),e.TgZ(7,"a",9),e.NdJ("click",function(){return e.CHM(f),e.oxw().showAllFields()}),e._uU(8,"Show all fields"),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw();e.xp6(3),e.Q6J("formControl",r.queryablePropertiesControl),e.xp6(1),e.Q6J("ngForOf",r.queryableOptionsCommon)}}function Gp(v,F){if(1&v&&(e.TgZ(0,"mat-option",15),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f)("matTooltip",f),e.xp6(1),e.hij(" ",f," ")}}function Gm(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"input",17),e.NdJ("blur",function(){return e.CHM(f),e.oxw().queryablePropertiesAutocompleteBlurred()}),e.qZA(),e.TgZ(3,"a",18),e.NdJ("click",function(){return e.CHM(f),e.oxw().clearSelectedQueryableProperty()}),e._UZ(4,"mat-icon",19),e.qZA(),e.TgZ(5,"mat-hint",8),e.TgZ(6,"a",20),e.NdJ("click",function(){return e.CHM(f),e.oxw().showCommonFields()}),e._uU(7,"Show common fields"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(8,"mat-autocomplete",21,22),e.NdJ("optionSelected",function(ee){return e.CHM(f),e.oxw().queryablePropertySelected(ee.option.value)})("opened",function(){return e.CHM(f),e.oxw().increaseOverlayZindex()})("closed",function(){return e.CHM(f),e.oxw().queryablePropertiesAutocompleteClosed()}),e.YNc(10,Gp,2,3,"mat-option",13),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(9),O=e.oxw();e.xp6(2),e.Q6J("formControl",O.queryablePropertiesAutocompleteControl)("matAutocomplete",r),e.xp6(8),e.Q6J("ngForOf",O.queryableOptionsAll)}}function Km(v,F){if(1&v&&(e.TgZ(0,"mat-option",12),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f),e.xp6(1),e.hij(" ",f," ")}}function E_(v,F){if(1&v&&(e.TgZ(0,"mat-option",12),e.TgZ(1,"div",28),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=e.oxw(3);e.Q6J("value",f.key),e.xp6(1),e.Q6J("innerHTML",r.highlight(f.key),e.oJD),e.xp6(1),e.Oqu(f.key)}}function Z_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",24),e.TgZ(2,"input",25),e.NdJ("focus",function(){return e.CHM(f),e.oxw(2).focused()})("keyup.enter",function(){return e.CHM(f),e.oxw(2).processSearch()})("keyup",function(ee){e.CHM(f);var Je=e.oxw().$implicit,_t=e.oxw();return Je.constructQuery(ee.target.value.trim(),_t.selectedCondition,_t.selectedQueryableProperty,_t.selectedLucenePath,_t.queryUpdated,_t.queryParts,_t.commandInputValueDict[Je.type])}),e.qZA(),e.TgZ(3,"mat-autocomplete",26,27),e.NdJ("optionSelected",function(ee){return e.CHM(f),e.oxw(2).searchOptionSelected(ee)})("closed",function(){return e.CHM(f),e.oxw(2).autoCompleteClosed()}),e.YNc(5,E_,3,3,"mat-option",7),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(4),O=e.oxw(2);e.xp6(1),e.Q6J("floatLabel","never"),e.xp6(1),e.Q6J("formControl",O.searchControl)("matAutocomplete",r),e.xp6(3),e.Q6J("ngForOf",O.substanceSuggestionsGroup)}}function k_(v,F){1&v&&(e.TgZ(0,"mat-error"),e._uU(1,"Required"),e.qZA())}function rc(v,F){if(1&v&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&v){var f=e.oxw(3);e.xp6(1),e.Oqu(f.commandOptionsExample)}}function oc(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"input",29),e.NdJ("ngModelChange",function(_t){e.CHM(f);var Kt=e.oxw(),Un=Kt.$implicit,ai=Kt.index;return e.oxw().commandInputValueDict[Un.type][ai]=_t})("keyup.enter",function(){return e.CHM(f),e.oxw(2).processSearch()})("keyup",function(_t){e.CHM(f);var Kt=e.oxw().$implicit,Un=e.oxw();return Kt.constructQuery(_t.target.value.trim(),Un.selectedCondition,Un.selectedQueryableProperty,Un.selectedLucenePath,Un.queryUpdated,Un.queryParts,Un.commandInputValueDict[Kt.type])}),e.qZA(),e.YNc(3,k_,2,0,"mat-error",2),e.TgZ(4,"mat-hint",8),e.YNc(5,rc,2,1,"span",2),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(),O=r.$implicit,R=r.index,ee=e.oxw();e.xp6(2),e.Q6J("type",O.type)("name","input_"+R)("ngModel",ee.commandInputValueDict[O.type][R]),e.xp6(1),e.Q6J("ngIf",!ee.commandInputValueDict[O.type][R]),e.xp6(2),e.Q6J("ngIf",ee.commandOptionsExample)}}function I_(v,F){1&v&&(e.TgZ(0,"mat-error"),e._uU(1,"Required"),e.qZA())}function Uc(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"input",30),e.NdJ("ngModelChange",function(Kt){e.CHM(f);var Un=e.oxw(),ai=Un.$implicit,Pi=Un.index;return e.oxw().commandInputValueDict[ai.type][Pi]=Kt})("keyup.enter",function(){return e.CHM(f),e.oxw(2).processSearch()})("dateChange",function(Kt){e.CHM(f);var Un=e.oxw().$implicit,ai=e.oxw();return Un.constructQuery(Kt.value,ai.selectedCondition,ai.selectedQueryableProperty,ai.selectedLucenePath,ai.queryUpdated,ai.queryParts,ai.commandInputValueDict[Un.type])})("dateInput",function(Kt){e.CHM(f);var Un=e.oxw().$implicit,ai=e.oxw();return Un.constructQuery(Kt.value,ai.selectedCondition,ai.selectedQueryableProperty,ai.selectedLucenePath,ai.queryUpdated,ai.queryParts,ai.commandInputValueDict[Un.type])}),e.qZA(),e.YNc(3,I_,2,0,"mat-error",2),e._UZ(4,"mat-datepicker-toggle",31),e.TgZ(5,"mat-datepicker",32,33),e.NdJ("opened",function(){return e.CHM(f),e.oxw(2).increaseOverlayZindex()})("closed",function(){return e.CHM(f),e.oxw(2).decreaseOverlayZindex()}),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(6),O=e.oxw(),R=O.$implicit,ee=O.index,Je=e.oxw();e.xp6(2),e.Q6J("ngModel",Je.commandInputValueDict[R.type][ee])("matDatepicker",r),e.xp6(1),e.Q6J("ngIf",!Je.commandInputValueDict[R.type][ee]),e.xp6(1),e.Q6J("for",r)}}function ts(v,F){if(1&v&&(e.TgZ(0,"mat-option",15),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.Q6J("value",f.value)("matTooltip",f.display),e.xp6(1),e.hij(" ",f.display," ")}}function Kp(v,F){1&v&&(e.TgZ(0,"mat-error"),e._uU(1,"Required"),e.qZA())}function $p(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"mat-form-field",16),e.TgZ(2,"mat-select",34),e.NdJ("ngModelChange",function(_t){e.CHM(f);var Kt=e.oxw(),Un=Kt.$implicit,ai=Kt.index;return e.oxw().commandInputValueDict[Un.type][ai]=_t})("openedChange",function(_t){return e.CHM(f),e.oxw(2).openedChange(_t)})("selectionChange",function(_t){e.CHM(f);var Kt=e.oxw().$implicit,Un=e.oxw();return Kt.constructQuery(_t.value,Un.selectedCondition,Un.selectedQueryableProperty,Un.selectedLucenePath,Un.queryUpdated,Un.queryParts,Un.commandInputValueDict[Kt.type])})("keyup.enter",function(){return e.CHM(f),e.oxw(2).processSearch()}),e.YNc(3,ts,2,3,"mat-option",13),e.qZA(),e.YNc(4,Kp,2,0,"mat-error",2),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(),O=r.$implicit,R=r.index,ee=e.oxw();e.xp6(2),e.Q6J("ngModel",ee.commandInputValueDict[O.type][R]),e.xp6(1),e.Q6J("ngForOf",ee.cvOptions),e.xp6(1),e.Q6J("ngIf",!ee.commandInputValueDict[O.type][R])}}function ml(v,F){if(1&v&&(e.TgZ(0,"div",23),e.YNc(1,Z_,6,4,"div",2),e.YNc(2,oc,6,5,"div",2),e.YNc(3,Uc,7,4,"div",2),e.YNc(4,$p,5,3,"div",2),e.qZA()),2&v){var f=F.$implicit,r=e.oxw();e.xp6(1),e.Q6J("ngIf",r.selectedQueryableSuggest),e.xp6(1),e.Q6J("ngIf",!r.selectedQueryableSuggest&&("text"==f.type||"boolean"==f.type||"number"==f.type)),e.xp6(1),e.Q6J("ngIf","datetime"==f.type),e.xp6(1),e.Q6J("ngIf","select"==f.type)}}var Bc=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha){(0,S.Z)(this,F),this.overlayContainerService=f,this.cvService=r,this.http=O,this.router=R,this.configService=ee,this.utilitiesService=Je,this.substanceService=_t,this.applicationService=Kt,this.productService=Un,this.clinicalTrialService=ai,this.facetManagerService=Pi,this.activatedRoute=ki,this.advancedSearchService=ha,this.queryStatements=[],this.query="",this._index=0,this.queryUpdated=new e.vpe,this.processSearchOut=new e.vpe,this.queryablePropertiesControl=new et.NI,this.queryablePropertiesAutocompleteControl=new et.NI,this.subscriptions=[],this.conditionOptions=["AND","OR","NOT"],this.conditionControl=new et.NI,this.categoryControl=new et.NI,this.commandControl=new et.NI,this.searchFieldControl=new et.NI,this.selectedCondition="",this.isShowAllCommandOptions=!1,this.queryParts=[],this.typeCommandOptions=Qp.k,this.commandInputValueDict={},this.isShowCommonFields=!0,this.advancedQueryStatements=[],this.searchControl=new et.NI,this.suggestions=[],this.matOpen=!0,this.searchPerformed=new e.vpe,this.opened=new e.vpe,this.closed=new e.vpe,this.typeAheadUpdatedOut=new e.vpe}return(0,t.Z)(F,[{key:"category",set:function(r){this.categoryinput=r}},{key:"queryableDictionary",set:function(r){null!=r&&(this._queryableDictionary=r)}},{key:"queryableOptions",set:function(r){this.allOptions=r,this.queryableOptionsAll=r}},{key:"index",get:function(){return this._index},set:function(r){null!=r&&(this._index=r,0===this._index&&this.commandInputs&&(this.selectedCondition="",this.refreshQuery()))}},{key:"ngOnInit",value:function(){var r=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),Qp.J.forEach(function(ki){r.commandInputValueDict[ki]=[]});var O=this.queryablePropertiesControl.valueChanges.subscribe(function(ki){r.queryablePropertySelected(ki)});this.subscriptions.push(O);var R=this.queryablePropertiesAutocompleteControl.valueChanges.subscribe(function(ki){r.queryableOptionsAll=r.allOptions.filter(function(ha){return ha.toLowerCase().indexOf(ki.toLowerCase())>-1})});this.subscriptions.push(R);var _t,ee=this.commandControl.valueChanges.subscribe(function(ki){r.setCommand(ki)});if(this.subscriptions.push(ee),this._index>0){this.conditionControl.setValue("AND"),this.selectedCondition="AND ";var Je=this.conditionControl.valueChanges.subscribe(function(ki){r.selectedCondition="".concat(ki," "),r.refreshQuery()});this.subscriptions.push(Je)}if(this.queryStatementHash){var Kt=localStorage.getItem(this.queryStatementHash.toString());Kt&&(_t=JSON.parse(Kt))}if(null!=_t){var Pi=Qp.k[this._queryableDictionary[_t.queryableProperty]?this._queryableDictionary[_t.queryableProperty].type:"string"][_t.command];Pi.commandInputs&&(this.commandInputValueDict[Pi.commandInputs[0].type]=_t.commandInputValues),this.queryParts=_t.queryParts,this.conditionControl.setValue(_t.condition.trim(),{emitEvent:!1}),this.selectedCondition=_t.condition,_t.queryableProperty&&this._queryableDictionary[_t.queryableProperty]&&(this.selectedQueryableSuggest=this._queryableDictionary[_t.queryableProperty].suggest),this.isShowCommonFields=this.queryableOptionsCommon.indexOf(_t.queryableProperty)>-1,this.queryableOptionsCommon.indexOf(_t.queryableProperty)>-1?(this.isShowCommonFields=!0,this.queryablePropertiesControl.setValue(_t.queryableProperty,{emitEvent:!1})):(this.isShowCommonFields=!1,this.queryablePropertiesAutocompleteControl.setValue(_t.queryableProperty,{emitEvent:!1})),this.processQueriablePropertyChange(_t.queryableProperty),this.commandControl.setValue(_t.command),_t.commandInputValues&&this.searchControl.setValue(_t.commandInputValues)}else this.queryablePropertiesControl.setValue("All");this.searchControl.valueChanges.pipe((0,pt.b)(500),(0,Ne.x)(),(0,Re.w)(function(ki){return r.query=ki,r.advancedSearchService.getTypeAheadSearchText(r.categoryinput,r.selectedQueryableSuggest,ki)})).subscribe(function(ki){r.substanceSuggestionsGroup=ki,r.suggestionsFields=Object.keys(r.substanceSuggestionsGroup)},function(ki){console.log(ki)})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r.unsubscribe()})}},{key:"queryablePropertySelected",value:function(r){this.processQueriablePropertyChange(r),this._queryableDictionary[r]&&(this.selectedQueryableSuggest=this._queryableDictionary[r].suggest,this.commandControl.setValue(this._queryableDictionary[r].cvDomain||"string"!==this._queryableDictionary[r].type?this.commandOptions[0]:"Contains"))}},{key:"processQueriablePropertyChange",value:function(r){var O=this,R="string";this.selectedQueryablePropertyType="string",this.selectedQueryableProperty=r,this._queryableDictionary[r]&&(this._queryableDictionary[r].cvDomain&&this.setCvOptions(this._queryableDictionary[r].cvDomain),this.selectedLucenePath=this._queryableDictionary[r].lucenePath,this.selectedLucenePath&&(this.selectedLucenePath=this.selectedLucenePath.replace(" ","\\ "),this.selectedLucenePath&&(this.selectedLucenePath=this.selectedLucenePath+":")),this.selectedQueryablePropertyType=this._queryableDictionary[r].type,R=this._queryableDictionary[r].type),this.commandOptions=Object.keys(this.typeCommandOptions[R]).filter(function(ee){var Je=!1;return!1===O.isShowAllCommandOptions?Je=!!("Contains"===ee||"Exact Match"===ee||"Starts With"===ee||"Ends With"===ee||"Manual Query Entry"===ee||O._queryableDictionary[r]&&O._queryableDictionary[r].cvDomain&&"the following exact default values"===ee||"timestamp"===O.selectedQueryablePropertyType||"number"===O.selectedQueryablePropertyType):O._queryableDictionary[r]&&(O._queryableDictionary[r].cvDomain||"the following exact default values"!==ee)&&(Je=!0),Je}).sort(function(ee,Je){return"the following exact default values"===ee?-1:"the following exact default values"===Je?1:ee.toLowerCase()Je.toLowerCase()?1:0})}},{key:"setCvOptions",value:function(r){var O=this;this.cvService.getDomainVocabulary(r).subscribe(function(R){O.cvOptions=R[r].list})}},{key:"refreshQuery",value:function(){var r=this;this.commandInputs&&this.commandInputs.length>0&&(this.commandOptionsExample=this.commandInputs[0].example),this.queryParts=[],this.commandInputs.forEach(function(O,R){r.commandInputValueDict[O.type]&&null!=r.commandInputValueDict[O.type][R]?O.constructQuery(r.commandInputValueDict[O.type][R],r.selectedCondition,r.selectedQueryableProperty,r.selectedLucenePath,r.queryUpdated,r.queryParts):r.queryUpdated.emit({condition:r.selectedCondition,queryableProperty:r.selectedQueryableProperty,command:r.selectedCommandOption,commandInputValues:[],query:""})})}},{key:"queryablePropertiesAutocompleteClosed",value:function(){this.decreaseOverlayZindex();var r=this.queryablePropertiesAutocompleteControl.value;if(r)for(var O=0;O-1?this.queryablePropertiesControl.setValue(this.selectedQueryableProperty):this.queryablePropertiesControl.setValue("All")}},{key:"showAllCommandOptions",value:function(){this.isShowAllCommandOptions=!this.isShowAllCommandOptions,this.processQueriablePropertyChange(this.selectedQueryableProperty)}},{key:"setCommand",value:function(r){this.selectedCommandOption=r;var O=this.typeCommandOptions[this.selectedQueryablePropertyType][r];O.commandInputs?(this.commandInputs=O.commandInputs,this.refreshQuery()):O.constructQuery&&(this.commandInputs=[],O.constructQuery(r.trim(),this.selectedCondition,this.selectedQueryableProperty,this.selectedLucenePath,this.queryUpdated,this.queryParts))}},{key:"processSubstanceSearch",value:function(r){this.navigateToSearchResults(r)}},{key:"navigateToSearchResults",value:function(r){this.router.navigate(["/browse-substance"],{queryParams:r?{search:r}:null})}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"openedChange",value:function(r){r?this.increaseOverlayZindex():this.decreaseOverlayZindex()}},{key:"searchOptionSelected",value:function(r){var O=this,ee=r.option.value;this.searchPerformed.emit(ee),ee&&(this.queryParts=[],this.commandInputs.forEach(function(Je,_t){Je.constructQuery(ee,O.selectedCondition,O.selectedQueryableProperty,O.selectedLucenePath,O.queryUpdated,O.queryParts)}))}},{key:"highlight",value:function(r){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=r,this.testElem.scrollWidth>this.testElem.offsetWidth))){var O=r.toUpperCase().indexOf(this.query.toUpperCase());r="..."+r.substring(O-15,r.length)}var R=this.query.replace(/(?=[() ])/g,"\\");return r.replace(new RegExp(R,"gi"),function(ee){return""+ee+""})}return r}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"processSearch",value:function(){this.processSearchOut.emit()}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Fe.Xj),e.Y36(tt.I),e.Y36(es.eN),e.Y36(u.F0),e.Y36(hn.E),e.Y36(Gu.FW),e.Y36(ue.d),e.Y36(I.I),e.Y36(On.M),e.Y36(Vs.m),e.Y36(gn.bH),e.Y36(u.gz),e.Y36(uu))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-advanced-query-statement"]],inputs:{queryStatementHash:"queryStatementHash",queryableOptionsCommon:"queryableOptionsCommon",category:"category",queryableDictionary:"queryableDictionary",queryableOptions:"queryableOptions",index:"index"},outputs:{queryUpdated:"queryUpdated",processSearchOut:"processSearchOut",searchPerformed:"searchPerformed",opened:"opened",closed:"closed",typeAheadUpdatedOut:"typeAheadUpdatedOut"},decls:17,vars:8,consts:[[1,"query-statement-container"],[1,"condition-column"],[4,"ngIf"],[1,"queryable-property-column"],[1,"command-column"],[3,"matTooltip"],[3,"formControl","openedChange"],[3,"value",4,"ngFor","ngForOf"],[1,"action-hint"],["tabindex","0","role","link",3,"click"],[1,"query-column"],["class","query-input",4,"ngFor","ngForOf"],[3,"value"],[3,"value","matTooltip",4,"ngFor","ngForOf"],[1,"middle-fill"],[3,"value","matTooltip"],["floatLabel","never"],["type","text","matInput","","placeholder","Search for desired field",3,"formControl","matAutocomplete","blur"],["matSuffix","","matTooltip","Clear input and show all options",3,"click"],["svgIcon","clear"],[3,"click"],[3,"optionSelected","opened","closed"],["queryablePropertyOptions","matAutocomplete"],[1,"query-input"],[1,"search-form-field","space-right-small",3,"floatLabel"],["type","text","placeholder","Enter Search Value (Type Ahead) *","aria-label","Search Text","matInput","",1,"search",3,"formControl","matAutocomplete","focus","keyup.enter","keyup"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["searchAuto","matAutocomplete"],[1,"suggestion-styling",3,"innerHTML"],["matInput","","required","","placeholder","Enter search value",3,"type","name","ngModel","ngModelChange","keyup.enter","keyup"],["matInput","","required","","placeholder","m/d/yyyy",3,"ngModel","matDatepicker","ngModelChange","keyup.enter","dateChange","dateInput"],["matSuffix","",3,"for"],[3,"opened","closed"],["queryDatepicker",""],["required","","placeholder","Select default option",3,"ngModel","ngModelChange","openedChange","selectionChange","keyup.enter"]],template:function(f,r){1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.YNc(2,Wp,5,2,"mat-form-field",2),e.qZA(),e.TgZ(3,"div",3),e.YNc(4,zp,9,2,"mat-form-field",2),e.YNc(5,Gm,11,3,"div",2),e.qZA(),e.TgZ(6,"div",4),e.TgZ(7,"mat-form-field",5),e.TgZ(8,"mat-label"),e._uU(9,"For"),e.qZA(),e.TgZ(10,"mat-select",6),e.NdJ("openedChange",function(R){return r.openedChange(R)}),e.YNc(11,Km,2,2,"mat-option",7),e.qZA(),e.TgZ(12,"mat-hint",8),e.TgZ(13,"a",9),e.NdJ("click",function(){return r.showAllCommandOptions()}),e._uU(14),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"div",10),e.YNc(16,ml,5,4,"div",11),e.qZA(),e.qZA()),2&f&&(e.xp6(2),e.Q6J("ngIf",r.index>0),e.xp6(2),e.Q6J("ngIf",r.isShowCommonFields),e.xp6(1),e.Q6J("ngIf",!r.isShowCommonFields),e.xp6(2),e.Q6J("matTooltip",r.selectedCommandOption),e.xp6(3),e.Q6J("formControl",r.commandControl),e.xp6(1),e.Q6J("ngForOf",r.commandOptions),e.xp6(3),e.Oqu(r.isShowAllCommandOptions?"Hide Some Options":"Show More Options"),e.xp6(2),e.Q6J("ngForOf",r.commandInputs))},directives:[c.O5,kt.KE,kt.hX,ne.gD,et.JJ,et.oH,c.sg,Xt.ey,s.gM,kt.bx,It.Nt,et.Fj,an.ZL,kt.R9,T.Hw,an.XC,et.Q7,et.On,kt.TO,sn.hl,sn.nW,sn.Mq],styles:[".query-statement-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.condition-column[_ngcontent-%COMP%]{width:100px;max-width:100px;min-width:100px;padding-right:20px;padding-top:1px}.mat-form-field[_ngcontent-%COMP%]{width:100%;max-width:100%}.mat-form-field[_ngcontent-%COMP%] .mat-form-field-infix{width:100%}.queryable-property-column[_ngcontent-%COMP%]{width:350px;min-width:350px;max-width:350px;padding-right:20px}.command-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-right:10px;padding-top:1px;width:250px;max-width:250px;min-width:250px}.query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;display:-ms-flexbox;display:flex}.query-input[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding:0 10px}.mat-hint.action-hint[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;font-size:12px}.mat-hint.action-hint[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--link-primary-color)}.mat-hint.action-hint[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{color:var(--regular-grey-color);font-size:12px}.mat-hint.action-hint[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--regular-black-color)}.mat-error[_ngcontent-%COMP%]{color:var(--regular-red-color)}.marginright20px[_ngcontent-%COMP%]{margin-right:20px}.marginright25px[_ngcontent-%COMP%]{margin-right:25px}.width5percent[_ngcontent-%COMP%]{width:5%;min-width:5%;max-width:5%}.width10percent[_ngcontent-%COMP%]{width:10%;min-width:10%;max-width:10%}.width15percent[_ngcontent-%COMP%]{width:15%;min-width:15%;max-width:15%}.width25percent[_ngcontent-%COMP%]{width:25%;min-width:25%;max-width:25%}.width27percent[_ngcontent-%COMP%]{width:27%;min-width:27%;max-width:27%}.width30percent[_ngcontent-%COMP%]{width:30%;min-width:30%;max-width:30%}.width33percent[_ngcontent-%COMP%]{width:33%;min-width:33%;max-width:33%}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}"]}),v}(),Oo=n(56473),Ds=n(96769),Od=n(60756),ns=n(82835),Xp=n(30639),Du=[{path:"advanced-search",component:Wm}],sc=function(){var v=function(){function F(f){(0,S.Z)(this,F),Du.forEach(function(r){f.config[0].children.push(r)})}return(0,t.Z)(F,null,[{key:"forRoot",value:function(){return{ngModule:F,providers:[uu]}}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0))},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({imports:[[c.ez,u.Bz.forChild(Du),Ht.g0,nn.SJ,o.QW,an.Bb,kt.lN,It.c,h.ot,T.Ps,$e.Hi,q.g,_.To,B.p9,y.p0,X.TU,ne.LD,me.KP,mt.Is,Oe.ie,He.Tx,At.vV,s.AV,b.Nh,Ft._r,Y.Cq,sn.FA,et.u5,et.UX,Fe.U8,Is,rs.O,gn.On,Oo.h,Ds.O,Od.J]]}),v}();e.B6R(Wm,[u.yS,h.lW,b.SP,b.uX,b.uD,c.O5,o.a8,o.n5,o.dn,c.sg,Bc,T.Hw,_.ib,_.yz,_.yK,kt.KE,It.Nt,et.Fj,et.JJ,et.On,kt.hX,ne.gD,et.oH,Xt.ey,Y.Ou,qe.R,_.u4,ns.K,me.pH,Xp.W],[]);var lc=function(){var v=(0,t.Z)(function F(){(0,S.Z)(this,F)});return v.\u0275fac=function(f){return new(f||v)},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({imports:[[c.ez,T.Ps,an.Bb,et.UX,et.u5,kt.lN,It.c,h.ot]]}),v}(),El=n(98969);function Zl(v,F){if(1&v&&(e.TgZ(0,"mat-hint"),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Oqu(f.hintMessage)}}function el(v,F){if(1&v&&(e.TgZ(0,"mat-error"),e._uU(1),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Oqu(f.errorMessage)}}function cu(v,F){if(1&v&&(e.TgZ(0,"mat-option",13),e.TgZ(1,"div",14),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit,r=e.oxw(2);e.Q6J("value",f.key),e.xp6(1),e.Q6J("innerHTML",r.highlight(f.key),e.oJD),e.xp6(1),e.Oqu(f.key)}}function du(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",10),e.TgZ(2,"span",11),e.TgZ(3,"b"),e._uU(4),e.qZA(),e.qZA(),e.qZA(),e.YNc(5,cu,3,3,"mat-option",12),e.qZA()),2&v){var f=F.$implicit,r=e.oxw();e.xp6(4),e.Oqu(f.display),e.xp6(1),e.Q6J("ngForOf",r.substanceSuggestionsGroup[f.value])}}var hl=function(){var v=function(){function F(f,r,O,R,ee){(0,S.Z)(this,F),this.adverseEventService=f,this.element=r,this.gaService=O,this.configService=R,this.cvService=ee,this.searchControl=new et.NI,this.matOpen=!0,this.searchPerformed=new e.vpe,this.searchValueOut=new e.vpe,this.placeholder="Search",this.hintMessage="",this.privateErrorMessage="",this.opened=new e.vpe,this.closed=new e.vpe,this.CasDisplay="CAS"}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){var r=this;this.searchControl.valueChanges.pipe((0,pt.b)(500),(0,Ne.x)(),(0,Re.w)(function(O){return r.query=O,r.searchValueOut.emit(r.query),r.gaService.sendEvent(r.eventCategory||"substanceTextSearch","search:enter-term",!r.configService.environment.isAnalyticsPrivate&&O||"search term"),r.adverseEventService.getAdverseEventSearchSuggestions(O.toUpperCase(),r.eventCategory)})).subscribe(function(O){r.substanceSuggestionsGroup=O;var R=[];r.eventCategory&&"adverseEventPtSearch"===r.eventCategory?R=["PT_Term","Prim_SOC","Ingredient_Name","ATC_Level_1","ATC_Level_2","ATC_Level_3","ATC_Level_4"]:r.eventCategory&&"adverseEventDmeSearch"===r.eventCategory?R=["DME_Reactions","PTTerm_Meddra","Ingredient_Name","ATC_Level_1","ATC_Level_2","ATC_Level_3","ATC_Level_4"]:r.eventCategory&&"adverseEventCvmSearch"===r.eventCategory&&(R=["Adverse_Event","Route_of_Administration","Ingredient_Name","Species","ATC_Level_1","ATC_Level_2","ATC_Level_3","ATC_Level_4"]),r.suggestionsFields=Object.keys(r.substanceSuggestionsGroup).filter(function(ee){return R.indexOf(ee)>-1}),r.suggestionsFields.forEach(function(ee,Je){r.suggestionsFields[Je]="DME_Reactions"===ee?{value:"DME_Reactions",display:"DME Reactions"}:"PTTerm_Meddra"===ee?{value:"PTTerm_Meddra",display:"PTTerm Meddra"}:"PT_Term"===ee?{value:"PT_Term",display:"PT Term"}:"Adverse_Event"===ee?{value:"Adverse_Event",display:"Adverse Event"}:"Prim_SOC"===ee?{value:"Prim_SOC",display:"Prim SOC"}:"Route_of_Administration"===ee?{value:"Route_of_Administration",display:"Route of Administration"}:"Species"===ee?{value:"Species",display:"Species"}:"Ingredient_Name"===ee?{value:"Ingredient_Name",display:"Ingredient Name"}:"ATC_Level_1"===ee?{value:"ATC_Level_1",display:"ATC Level 1"}:"ATC_Level_2"===ee?{value:"ATC_Level_2",display:"ATC Level 2"}:"ATC_Level_3"===ee?{value:"ATC_Level_3",display:"ATC Level 3"}:"ATC_Level_4"===ee?{value:"ATC_Level_4",display:"ATC Level 4"}:{value:ee,display:ee}}),null!=r.suggestionsFields&&r.suggestionsFields.length>0&&(r.matOpen=!0,r.opened.emit())},function(O){r.gaService.sendException("search suggestion error from API call"),console.log(O)})}},{key:"searchValue",set:function(r){this.searchControl.setValue(r)}},{key:"errorMessage",get:function(){return this.privateErrorMessage},set:function(r){this.searchControl.markAsTouched(),this.searchControl.setErrors(r?{error:!0}:null),this.privateErrorMessage=r}},{key:"ngOnDestroy",value:function(){}},{key:"autoCompleteClosed",value:function(){this.matOpen=!1,this.closed.emit()}},{key:"focused",value:function(){null!=this.suggestionsFields&&this.suggestionsFields.length>0&&(this.matOpen=!0,this.opened.emit())}},{key:"ngAfterViewInit",value:function(){this.searchContainerElement=this.element.nativeElement.querySelector(".search-container")}},{key:"substanceSearchOptionSelected",value:function(r){this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","select:auto-complete",!this.configService.environment.isAnalyticsPrivate&&r.option.value||"auto-complete option");var ee=r.option.value;ee=this.topSearchClean(ee),this.searchPerformed.emit(ee)}},{key:"highlight",value:function(r){if(this.query){if(this.matOpen&&(this.testElem=document.querySelector("#overflow"),null!=this.testElem&&(this.testElem.innerText=r,this.testElem.scrollWidth>this.testElem.offsetWidth))){var O=r.toUpperCase().indexOf(this.query.toUpperCase());r="..."+r.substring(O-15,r.length)}var R=this.query.replace(/(?=[() ])/g,"\\");return r.replace(new RegExp(R,"gi"),function(ee){return""+ee+""})}return r}},{key:"processSubstanceSearch",value:function(){var r=this.searchControl.value;this.gaService.sendEvent(this.eventCategory||"substanceTextSearch","search:submit",!this.configService.environment.isAnalyticsPrivate&&r||"search term option"),r=this.topSearchClean(r),this.searchPerformed.emit(r)}},{key:"activateSearch",value:function(){this.searchContainerElement.classList.add(this.source?"active-"+this.source:"active-search")}},{key:"deactivateSearch",value:function(){var r=this;this.searchContainerElement.classList.add("deactivate-search"),setTimeout(function(){r.source?(r.searchContainerElement.classList.remove("active-"+r.source),r.searchContainerElement.classList.remove("deactivate-search")):(r.searchContainerElement.classList.remove("active-search"),r.searchContainerElement.classList.remove("deactivate-search"))},300)}},{key:"topSearchClean",value:function(r){return r&&r.length>0&&((r=r.trim()).indexOf('"')<0&&r.indexOf("*")<0&&r.indexOf(":")<0&&r.indexOf(" AND ")<0&&r.indexOf(" OR ")<0?r='"'+r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")+'"':r.indexOf(":")<0&&(r=r.replace(/([^\\])\[/g,"$1\\[").replace(/^\[/g,"\\[").replace(/([^\\])\]/g,"$1\\]").replace(/^\]/g,"\\]")),this.searchControl.setValue(r)),r}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Pu.a),e.Y36(e.SBq),e.Y36(jn.$),e.Y36(hn.E),e.Y36(tt.I))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-adverse-event-text-search"]],inputs:{eventCategory:"eventCategory",styling:"styling",placeholder:"placeholder",hintMessage:"hintMessage",source:"source",searchValue:"searchValue",errorMessage:"errorMessage"},outputs:{searchPerformed:"searchPerformed",searchValueOut:"searchValueOut",opened:"opened",closed:"closed"},decls:12,vars:9,consts:[[1,"search-container"],[1,"search-form-field","space-right-small",3,"floatLabel","ngClass"],["type","text","aria-label","Search","matInput","",1,"search",3,"placeholder","formControl","matAutocomplete","focus"],[4,"ngIf"],["panelWidth","auto",1,"substance-select",3,"optionSelected","closed"],["substanceSearchAuto","matAutocomplete"],[4,"ngFor","ngForOf"],["aria-hidden","true","id","overflow",1,"mat-option","overflow-comp"],["aria-label","Search Button","mat-icon-button","",1,"search-button",3,"disabled","click"],["svgIcon","search"],[1,"substance-suggestion-field"],[1,"field-styling"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"suggestion-styling",3,"innerHTML"]],template:function(f,r){if(1&f&&(e.TgZ(0,"div",0),e.TgZ(1,"form"),e.TgZ(2,"mat-form-field",1),e.TgZ(3,"input",2),e.NdJ("focus",function(){return r.focused()}),e.qZA(),e.YNc(4,Zl,2,1,"mat-hint",3),e.YNc(5,el,2,1,"mat-error",3),e.TgZ(6,"mat-autocomplete",4,5),e.NdJ("optionSelected",function(ee){return r.substanceSearchOptionSelected(ee)})("closed",function(){return r.autoCompleteClosed()}),e.YNc(8,du,6,2,"div",6),e._UZ(9,"pre",7),e.qZA(),e.qZA(),e.TgZ(10,"button",8),e.NdJ("click",function(){return r.processSubstanceSearch()}),e._UZ(11,"mat-icon",9),e.qZA(),e.qZA(),e.qZA()),2&f){var O=e.MAs(7);e.xp6(2),e.Q6J("floatLabel","never")("ngClass",r.source),e.xp6(1),e.Q6J("placeholder",r.placeholder)("formControl",r.searchControl)("matAutocomplete",O),e.xp6(1),e.Q6J("ngIf",r.hintMessage),e.xp6(1),e.Q6J("ngIf",r.searchControl.invalid),e.xp6(3),e.Q6J("ngForOf",r.suggestionsFields),e.xp6(2),e.Q6J("disabled",r.searchControl.invalid)}},directives:[et._Y,et.JL,et.F,kt.KE,c.mk,It.Nt,et.Fj,an.ZL,et.JJ,et.oH,c.O5,kt.bx,kt.TO,an.XC,c.sg,Xt.ey,h.lW,T.Hw],styles:["form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.search-form-field[_ngcontent-%COMP%] .mat-input-element[_ngcontent-%COMP%]{font-size:16px}.substance-suggestion-field[_ngcontent-%COMP%]{padding:8px 6px;color:var(--regular-white-color);overflow:hidden}.field-styling[_ngcontent-%COMP%]{padding:5px;border-radius:5px;background-color:var(--link-primary-color);color:var(--regular-white-color)}.suggestion-styling[_ngcontent-%COMP%]{overflow-x:hidden;white-space:nowrap!important;text-overflow:ellipsis}.overflow-comp[_ngcontent-%COMP%]{visibility:hidden;max-width:2000px;height:1px;margin:0;padding:0}.search-container[_ngcontent-%COMP%]{width:100%}.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{overflow:hidden;width:100%}.close-button[_ngcontent-%COMP%]{display:none;width:0;transition:all .25s linear}@media (min-width: 750px){.activate-search-button[_ngcontent-%COMP%]{display:none}}@media (max-width: 1024px){.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:0}.search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%]{position:fixed;top:0;right:0;width:100%;left:0;height:64px;padding-right:210px;padding-left:16px;background-color:var(--primary-color);overflow:hidden}.active-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%]{display:inline-block}.active-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:none}.active-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.form-search[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%]{position:relative;width:100%;height:48px;padding-right:0;padding-left:0;background-color:var(--regular-white-color);overflow:hidden}.active-form-search.search-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.active-form-search.search-container[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{max-height:100%}.active-form-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;-ms-flex-flow:1;flex-flow:1;animation-name:expandWidth;animation-duration:.3s}.active-form-search.search-container[_ngcontent-%COMP%] .search-button[_ngcontent-%COMP%], .active-form-search.search-container[_ngcontent-%COMP%] .activate-search-button[_ngcontent-%COMP%]{display:inline-block}.active-form-search.search-container[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:inline-block;width:auto}.deactivate-search.search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{animation-name:reduceWidth;animation-duration:.3s}}@keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes reduceWidth{0%{width:100%}to{width:0}} .substance-select{max-width:500px!important}"]}),v}();function ef(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function tf(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",62),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return e.oxw(4).restricSearh(ee.luceneQuery)}),e.TgZ(1,"div",63),e._uU(2),e.qZA(),e.TgZ(3,"div",64),e._uU(4),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(2),e.hij(" ",r.displayField," "),e.xp6(2),e.hij(" ",r.count," ")}}function Ed(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",60),e._uU(2),e.qZA(),e.YNc(3,tf,5,2,"button",61),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==f?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",r.narrowSearchSuggestions[f])}}function $m(v,F){if(1&v&&(e.TgZ(0,"div",58),e.YNc(1,Ed,4,2,"div",59),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f&&("WORD"===f||"FULL"===f))}}function Xm(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",44),e.TgZ(1,"div",45),e.TgZ(2,"div",46),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",47),e.NdJ("menuOpened",function(){return e.CHM(f),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(f),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",48),e.qZA(),e.TgZ(11,"button",49),e.NdJ("click",function(){return e.CHM(f),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,ef,2,0,"button",50),e.TgZ(15,"mat-menu",51,52),e.YNc(17,$m,2,1,"div",53),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",45),e.TgZ(19,"div",54),e._uU(20," For more options use the "),e.TgZ(21,"a",55),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(16),O=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",r),e.xp6(3),e.hij("\xa0 ",O.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",O.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",O.matchTypes)}}function Zd(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(f),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function eh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div"),e.TgZ(2,"span",70),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.YNc(8,Zd,2,0,"button",50),e.TgZ(9,"button",56),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",72),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(6),e.Oqu(r.searchTerm),e.xp6(2),e.Q6J("ngIf",r.isSearchEditable)}}function th(v,F){1&v&&e._UZ(0,"mat-icon",79)}function nh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div",73),e.TgZ(2,"span",74),e.YNc(3,th,1,0,"mat-icon",75),e._uU(4),e.qZA(),e.TgZ(5,"span",76),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.TgZ(8,"button",77),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return ee.removeFacet(ee.type,ee.bool,ee.val)}),e._UZ(9,"mat-icon",78),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(3),e.Q6J("ngIf",!r.bool),e.xp6(1),e.hij(" ",r.type,": "),e.xp6(2),e.hij(" ",r.val," ")}}function L_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",80),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function nf(v,F){if(1&v&&(e.TgZ(0,"div",65),e.YNc(1,eh,11,2,"div",66),e.YNc(2,nh,10,3,"div",67),e.YNc(3,L_,3,0,"button",68),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.searchTerm),e.xp6(1),e.Q6J("ngForOf",f.displayFacets),e.xp6(1),e.Q6J("ngIf",f.displayFacets&&f.displayFacets.length>0||f.searchTerm)}}function af(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",81),e.TgZ(1,"button",82),e.NdJ("click",function(){return e.CHM(f),e.oxw().export()}),e._UZ(2,"mat-icon",83),e._uU(3," Export "),e.qZA(),e.qZA()}}function kd(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," PT Term "),e.qZA())}var rf=function(){return["/browse-adverse-events"]},F_=function(F){return{search:F}};function ih(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",86),e._uU(2),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit;e.xp6(1),e.Q6J("routerLink",e.DdM(3,rf))("queryParams",e.VKq(4,F_,'"^'+f.ptTerm+'$"')),e.xp6(1),e.hij(" ",f.ptTerm," ")}}function ah(v,F){if(1&v&&(e.TgZ(0,"td",85),e.YNc(1,ih,3,6,"div",59),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f.ptTerm)}}function rh(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Prim SOC "),e.qZA())}function oh(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.primSoc," ")}}function N_(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Ingredient Name "),e.qZA())}var sh=function(F){return["/substances",F]};function x(v,F){if(1&v&&(e.TgZ(0,"td",85),e.TgZ(1,"a",87),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,sh,f.substanceId)),e.xp6(1),e.hij(" ",f.name," ")}}function Z(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Case Count "),e.qZA())}function pe(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.caseCount,"")}}function it(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," PT Count "),e.qZA())}function Ut(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"a",90),e.ALo(2,"titlecase"),e.ALo(3,"titlecase"),e._UZ(4,"div",91),e.qZA(),e.TgZ(5,"span",92),e._uU(6,"FAERS Public Dashboard"),e.qZA(),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw();e.xp6(1),e.FAE("href","",r.FAERSDashboardAdverseEventUrl,"",r.getDecodeURL(e.lcZ(2,5,f.ptTerm)),"",r.FAERSDashboardReactionGroup,"",r.getDecodeURL(e.lcZ(3,7,f.primSoc)),"",e.LSH),e.xp6(3),e.Q6J("innerHTML",f.ptCount,e.oJD)}}function tn(v,F){if(1&v&&e._UZ(0,"div",91),2&v){var f=e.oxw().$implicit;e.Q6J("innerHTML",f.ptCount,e.oJD)}}function Mn(v,F){if(1&v&&(e.TgZ(0,"td",85),e.YNc(1,Ut,7,9,"div",88),e.YNc(2,tn,1,1,"ng-template",null,89,e.W1O),e.qZA()),2&v){var f=e.MAs(3),r=e.oxw();e.xp6(1),e.Q6J("ngIf",r.FAERSDashboardAdverseEventUrl)("ngIfElse",f)}}function En(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," PRR "),e.qZA())}function Rn(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.ALo(2,"number"),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",e.xi3(2,1,f.prr,".2-2")," ")}}function si(v,F){1&v&&e._UZ(0,"tr",93)}function ui(v,F){1&v&&e._UZ(0,"tr",94)}function gi(v,F){if(1&v&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",97),e._uU(4,"Adverse Event:"),e.qZA(),e._uU(5),e.qZA(),e._UZ(6,"div"),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",98),e.TgZ(10,"div",99),e.TgZ(11,"div",100),e._uU(12," Ingredient Name: "),e.qZA(),e.TgZ(13,"div",101),e.TgZ(14,"a",87),e._uU(15),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"div",99),e.TgZ(17,"div",100),e._uU(18," Substance Key: "),e.qZA(),e.TgZ(19,"div",101),e._uU(20),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",98),e.TgZ(22,"div",99),e.TgZ(23,"div",100),e._uU(24," Prim SOC: "),e.qZA(),e.TgZ(25,"div",101),e._uU(26),e.qZA(),e.qZA(),e.TgZ(27,"div",99),e.TgZ(28,"div",100),e._uU(29," PRR: "),e.qZA(),e.TgZ(30,"div",101),e._uU(31),e.ALo(32,"number"),e.qZA(),e.qZA(),e.qZA(),e.TgZ(33,"div",98),e.TgZ(34,"div",99),e.TgZ(35,"div",100),e._uU(36," Case Count: "),e.qZA(),e.TgZ(37,"div",101),e._uU(38),e.qZA(),e.qZA(),e.TgZ(39,"div",99),e.TgZ(40,"div",100),e._uU(41," SOC Count: "),e.qZA(),e.TgZ(42,"div",101),e._uU(43),e.qZA(),e.qZA(),e.qZA(),e.TgZ(44,"div",98),e.TgZ(45,"div",99),e.TgZ(46,"div",100),e._uU(47," PT Count: "),e.qZA(),e.TgZ(48,"div",101),e._uU(49),e.qZA(),e.qZA(),e.TgZ(50,"div",99),e.TgZ(51,"div",100),e._uU(52," SOC Count Percent: "),e.qZA(),e.TgZ(53,"div",101),e._uU(54),e.qZA(),e.qZA(),e.qZA(),e.TgZ(55,"div",98),e.TgZ(56,"div",99),e.TgZ(57,"div",100),e._uU(58," PT Count Percent: "),e.qZA(),e.TgZ(59,"div",101),e._uU(60),e.qZA(),e.qZA(),e.TgZ(61,"div",99),e.TgZ(62,"div",100),e._uU(63," PT Count Total Vs Drug: "),e.qZA(),e.TgZ(64,"div",101),e._uU(65),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(5),e.hij("\xa0 ",f.ptTerm," "),e.xp6(9),e.Q6J("routerLink",e.VKq(15,sh,f.substanceId)),e.xp6(1),e.Oqu(f.name),e.xp6(5),e.hij(" ",f.substanceKey," "),e.xp6(6),e.hij(" ",f.primSoc," "),e.xp6(5),e.hij(" ",e.xi3(32,12,f.prr,".2-2")," "),e.xp6(7),e.hij(" ",f.caseCount," "),e.xp6(5),e.hij(" ",f.socCount," "),e.xp6(6),e.hij(" ",f.ptCount," "),e.xp6(5),e.hij(" ",f.socCountPercent," "),e.xp6(6),e.hij(" ",f.ptCountPercent," "),e.xp6(5),e.hij(" ",f.ptCountTotalVsDrug," ")}}function Zi(v,F){if(1&v&&(e.TgZ(0,"div",95),e.YNc(1,gi,66,17,"mat-card",96),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngForOf",f.adverseEventPtList)}}function ta(v,F){}var ma=function(){return[5,10,50,100]},Fa=function(F){return{"bad-page":F}},pa=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr,is,eo,Mo){(0,S.Z)(this,F),this.adverseEventService=f,this.generalService=r,this.activatedRoute=O,this.location=R,this.locationStrategy=ee,this.router=Je,this.sanitizer=_t,this.gaService=Kt,this.configService=Un,this.loadingService=ai,this.notificationService=Pi,this.authService=ki,this.overlayContainerService=ha,this.facetManagerService=kr,this.utilsService=is,this.dialog=eo,this.titleService=Mo,this.countAdverseEventPtOut=new e.vpe,this.isLoggedIn=!1,this.isLoading=!0,this.isError=!1,this.invalidPage=!1,this.isComponentInit=!1,this.privateExport=!1,this.isSearchEditable=!1,this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.ascDescDir="desc",this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[],this.view="table",this.order="$root_ptCount",this.etag="",this.totalAdverseEventPt=0,this.sortValues=El.g,this.displayedColumns=["ptTerm","primSoc","ingredientName","caseCount","ptCount","prr"]}return(0,t.Z)(F,[{key:"onPopState",value:function(r){var O=this;setTimeout(function(){O.router.url===O.previousState[0]&&O.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var r=this;this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets),this.titleService.setTitle("AE:Browse Adverse Events"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"$root_ptCount",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var R=this.authService.getAuth().subscribe(function(ee){ee&&(r.isLoggedIn=!0),r.isAdmin=r.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(R),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchAdverseEventPt()}},{key:"searchAdverseEventPt",value:function(){var r=this;this.loadingService.setLoading(!0);var R=this.adverseEventService.getAdverseEventPt(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(ee){r.isError=!1,r.adverseEventPtList=ee.content,r.totalAdverseEventPt=ee.total,r.countAdverseEventPtOut.emit(ee.total),r.etag=ee.etag,r.lastPage=ee.total%r.pageSize==0?ee.total/r.pageSize:Math.floor(ee.total/r.pageSize+1),ee.facets&&ee.facets.length>0&&(r.rawFacets=ee.facets),r.narrowSearchSuggestions={},r.matchTypes=[],r.narrowSearchSuggestionsCount=0,ee.narrowSearchSuggestions&&ee.narrowSearchSuggestions.length&&ee.narrowSearchSuggestions.forEach(function(Je){null==r.narrowSearchSuggestions[Je.matchType]&&(r.narrowSearchSuggestions[Je.matchType]=[],"WORD"===Je.matchType?r.matchTypes.unshift(Je.matchType):r.matchTypes.push(Je.matchType)),r.narrowSearchSuggestions[Je.matchType].push(Je),r.narrowSearchSuggestionsCount++}),r.matchTypes.sort()},function(ee){console.log("error");var Je={message:"There was an error trying to retrieve Adverse Event PT. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(Je)},function(){R.unsubscribe(),r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"setPageEvent",value:function(r){null!=r&&(this.pageIndex=r.pageIndex,this.pageSize=r.pageSize)}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchAdverseEventPt()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("adverseEventFiltering","icon-button:clear-search",Jn.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchAdverseEventPt()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(r){r.removeFacet(r.type,r.bool,r.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var r={queryParams:{}};r.queryParams.searchTerm=this.privateSearchTerm,r.queryParams.pageSize=this.pageSize,r.queryParams.pageIndex=this.pageIndex,r.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var O=this.router.createUrlTree([],{queryParams:r.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(O.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(r){var O=this;if(r.active){var R=this.displayedColumns.indexOf(r.active).toString();this.ascDescDir=r.direction,this.sortValues.forEach(function(ee){ee.displayedColumns&&ee.direction&&O.displayedColumns[R]===ee.displayedColumns&&O.ascDescDir===ee.direction&&(O.order=ee.value)}),this.searchAdverseEventPt()}}},{key:"updateView",value:function(r){this.view=r.value}},{key:"changePage",value:function(r){var O,R;this.pageSize!==r.pageSize?(O="select:page-size",R=r.pageSize):this.pageIndex!==r.pageIndex&&(O="icon-button:page-number",R=r.pageIndex+1),this.gaService.sendEvent("applicationsContent",O,"pager",R),this.pageSize=r.pageSize,this.pageIndex=r.pageIndex,this.populateUrlQueryParameters(),this.searchAdverseEventPt()}},{key:"customPage",value:function(r){if(this.validatePageInput(r)){this.invalidPage=!1;var O=Number(r.target.value)-1;this.pageIndex=O,this.gaService.sendEvent("adverseEventPtContent","select:page-number","pager",O),this.populateUrlQueryParameters(),this.searchAdverseEventPt()}}},{key:"validatePageInput",value:function(r){if(r&&r.target){var O=Number(r.target.value);if(!isNaN(Number(O))&&Number.isInteger(O)&&O<=this.lastPage&&O>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(r){this.pageIndex=0,this.privateFacetParams=r.facetParam,this.displayFacets=r.displayFacets,this.isFacetsParamsInit?this.searchAdverseEventPt():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(r){}},{key:"editAdvancedSearch",value:function(){var r=Jn.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("AdverseEventPt Filtering","icon-button:edit-advanced-search",r);var O={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],O)}},{key:"restricSearh",value:function(r){this.privateSearchTerm=r,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchAdverseEventPt()}},{key:"export",value:function(){var r=this;if(this.etag){var O="xlsx",R=this.getApiExportUrl(this.etag,O);""!==this.authService.getUser()&&this.dialog.open(lt.L,{width:"700px",data:{extension:O,type:"browseAdverseEventPt",entity:"adverseeventpt",hideOptionButtons:!0}}).afterClosed().subscribe(function(Je){var _t=Je.name,Kt=Je.id;_t&&""!==_t&&(r.loadingService.setLoading(!0),r.authService.startUserDownload(R,r.privateExport,_t+"."+O,Kt).subscribe(function(ai){r.loadingService.setLoading(!1),r.router.navigate(["/user-downloads/",ai.id])},function(ai){return r.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(r,O){return this.adverseEventService.getApiExportUrlPt(r,O)}},{key:"processSubstanceSearch",value:function(r){this.privateSearchTerm=r,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Pu.a),e.Y36(D.m),e.Y36(u.gz),e.Y36(c.Ye),e.Y36(c.S$),e.Y36(u.F0),e.Y36(mn.H7),e.Y36(jn.$),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(Me.e),e.Y36(Fe.Xj),e.Y36(gn.bH),e.Y36(ri.F),e.Y36(mt.uw),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-adverse-events-pt-browse"]],hostBindings:function(f,r){1&f&&e.NdJ("popstate",function(R){return r.onPopState(R)},!1,e.Jf7)},outputs:{countAdverseEventPtOut:"countAdverseEventPtOut"},decls:72,vars:40,consts:[["autosize","true",1,"margintop90px","sidenav-container-size"],["mode","side","opened",""],["pt",""],["configName","adverseeventpt","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","adverseEventPtSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],[1,"responsive"],["mat-table","","matSort","","matSortActive","ptCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","ptTerm"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","primSoc"],["matColumnDef","ingredientName"],["matColumnDef","caseCount"],["matColumnDef","ptCount"],["matColumnDef","prr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],["noRecordAdverseEventPt",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink","queryParams"],["target","_blank",3,"routerLink"],[4,"ngIf","ngIfElse"],["noFaersLink",""],["target","_blank","title","FAERS Public Dashboard",3,"href"],[3,"innerHTML"],[1,"colorgray","font10px"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[4,"ngFor","ngForOf"],[1,"font13px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"]],template:function(f,r){if(1&f){var O=e.EpF();e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(_t){return r.facetsParamsUpdated(_t)})("facetsLoaded",function(_t){return r.facetsLoaded(_t)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.YNc(6,Xm,23,4,"div",5),e.YNc(7,nf,4,3,"ng-template",null,6,e.W1O),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e.TgZ(11,"span",9),e._uU(12,"Browse Adverse Event PT"),e.qZA(),e.qZA(),e.TgZ(13,"mat-button-toggle-group",10),e.NdJ("change",function(_t){return r.updateView(_t)}),e.TgZ(14,"mat-button-toggle",11),e._UZ(15,"mat-icon",12),e.qZA(),e.TgZ(16,"mat-button-toggle",13),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(18,af,4,0,"div",15),e._UZ(19,"div",16),e.TgZ(20,"div",17),e.TgZ(21,"mat-paginator",18,19),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(23,"div",20),e.TgZ(24,"span",21),e._uU(25,"Page: "),e.qZA(),e.TgZ(26,"mat-form-field",22),e.TgZ(27,"input",23,24),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(28).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(29,"span",21),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",25),e.TgZ(32,"app-adverse-event-text-search",26),e.NdJ("searchPerformed",function(_t){return r.processSubstanceSearch(_t)}),e.qZA(),e.qZA(),e.TgZ(33,"div",27),e.TgZ(34,"div",28),e.TgZ(35,"div",29),e.TgZ(36,"table",30),e.NdJ("matSortChange",function(_t){return r.sortData(_t)}),e.ynx(37,31),e.YNc(38,kd,2,0,"th",32),e.YNc(39,ah,2,1,"td",33),e.BQk(),e.ynx(40,34),e.YNc(41,rh,2,0,"th",32),e.YNc(42,oh,2,1,"td",33),e.BQk(),e.ynx(43,35),e.YNc(44,N_,2,0,"th",32),e.YNc(45,x,3,4,"td",33),e.BQk(),e.ynx(46,36),e.YNc(47,Z,2,0,"th",32),e.YNc(48,pe,2,1,"td",33),e.BQk(),e.ynx(49,37),e.YNc(50,it,2,0,"th",32),e.YNc(51,Mn,4,2,"td",33),e.BQk(),e.ynx(52,38),e.YNc(53,En,2,0,"th",32),e.YNc(54,Rn,3,4,"td",33),e.BQk(),e.YNc(55,si,1,0,"tr",39),e.YNc(56,ui,1,0,"tr",40),e.qZA(),e.qZA(),e.qZA(),e.YNc(57,Zi,2,1,"div",41),e.qZA(),e.TgZ(58,"div",42),e.TgZ(59,"div",17),e.TgZ(60,"mat-paginator",18,19),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(62,"div",20),e.TgZ(63,"span",21),e._uU(64,"Page: "),e.qZA(),e.TgZ(65,"mat-form-field",22),e.TgZ(66,"input",23,24),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(28).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(68,"span",21),e._uU(69),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(70,ta,0,0,"ng-template",null,43,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&f){var R=e.MAs(8),ee=e.MAs(71);e.xp6(3),e.Q6J("rawFacets",r.rawFacets),e.xp6(3),e.Q6J("ngIf",r.matchTypes&&r.matchTypes.length>0)("ngIfElse",R),e.xp6(7),e.Q6J("value",r.view),e.xp6(5),e.Q6J("ngIf",r.isAdmin),e.xp6(3),e.Q6J("length",r.totalAdverseEventPt)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(30,ma))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(31,Fa,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(33,Fa,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,""),e.xp6(2),e.Q6J("searchValue",r.searchValue),e.xp6(1),e.Q6J("ngClass",r.view),e.xp6(3),e.Q6J("dataSource",r.adverseEventPtList),e.xp6(19),e.Q6J("matHeaderRowDef",r.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",r.displayedColumns),e.xp6(1),e.Q6J("ngIf",r.adverseEventPtList&&r.adverseEventPtList.length>0)("ngIfElse",ee),e.xp6(3),e.Q6J("length",r.totalAdverseEventPt)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(35,ma))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(36,Fa,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(38,Fa,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,"")}},directives:[nn.TM,nn.JX,qe.R,nn.Rh,c.O5,h.lW,He.p6,T.Hw,He.VK,c.sg,He.OP,u.yS,At.A9,At.Yi,s.gM,X.NW,kt.KE,c.mk,It.Nt,hl,y.BZ,Ae.YE,y.w1,y.fO,y.ge,Ae.nU,y.Dz,y.ev,y.as,y.XQ,y.nj,y.Gk,o.a8,o.n5,o.dn],pipes:[c.rS,c.JJ],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--include-checkbox-border-color)} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--include-checkbox-bg-color)}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--exclude-checkbox-border-color)} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--exclude-checkbox-bg-color)}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:var(--primary-color);width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:var(--regular-red-color)}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid var(--regular-grey-color)}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid var(--regular-grey-color)}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--pink-span-color)}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:var(--regular-blue-color);display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:var(--label-color);white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:var(--regular-transparent-color)}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.title[_ngcontent-%COMP%]{color:var(--secondary-title-color);font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colororange[_ngcontent-%COMP%]{color:var(--regular-orange-color)}.colorlightblue[_ngcontent-%COMP%]{color:var(--blue-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid var(--light-orange-color)}.borderlightgray[_ngcontent-%COMP%]{border:1px solid var(--light-green-color)}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:var(--white-color);border:1px solid var(--grey-border-color);background:var(--dark-grey-bg-color);box-shadow:0 0 5px -1px var(--box-shadow-color);vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid var(--regular-blue-color)}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.sidenav-container-size[_ngcontent-%COMP%]{width:100%}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),v}(),er=n(52395);function lr(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function yo(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",62),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return e.oxw(4).restricSearh(ee.luceneQuery)}),e.TgZ(1,"div",63),e._uU(2),e.qZA(),e.TgZ(3,"div",64),e._uU(4),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(2),e.hij(" ",r.displayField," "),e.xp6(2),e.hij(" ",r.count," ")}}function Vo(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",60),e._uU(2),e.qZA(),e.YNc(3,yo,5,2,"button",61),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==f?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",r.narrowSearchSuggestions[f])}}function fs(v,F){if(1&v&&(e.TgZ(0,"div",58),e.YNc(1,Vo,4,2,"div",59),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f&&("WORD"===f||"FULL"===f))}}function Qr(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",44),e.TgZ(1,"div",45),e.TgZ(2,"div",46),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",47),e.NdJ("menuOpened",function(){return e.CHM(f),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(f),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",48),e.qZA(),e.TgZ(11,"button",49),e.NdJ("click",function(){return e.CHM(f),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,lr,2,0,"button",50),e.TgZ(15,"mat-menu",51,52),e.YNc(17,fs,2,1,"div",53),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",45),e.TgZ(19,"div",54),e._uU(20," For more options use the "),e.TgZ(21,"a",55),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(16),O=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",r),e.xp6(3),e.hij("\xa0 ",O.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",O.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",O.matchTypes)}}function _l(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",56),e.NdJ("click",function(){return e.CHM(f),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",57),e.qZA()}}function kl(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div"),e.TgZ(2,"span",70),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.YNc(8,_l,2,0,"button",50),e.TgZ(9,"button",56),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",72),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(6),e.Oqu(r.searchTerm),e.xp6(2),e.Q6J("ngIf",r.isSearchEditable)}}function Id(v,F){1&v&&e._UZ(0,"mat-icon",79)}function ev(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",69),e.TgZ(1,"div",73),e.TgZ(2,"span",74),e.YNc(3,Id,1,0,"mat-icon",75),e._uU(4),e.qZA(),e.TgZ(5,"span",76),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",71),e.TgZ(8,"button",77),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return ee.removeFacet(ee.type,ee.bool,ee.val)}),e._UZ(9,"mat-icon",78),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(3),e.Q6J("ngIf",!r.bool),e.xp6(1),e.hij(" ",r.type,": "),e.xp6(2),e.hij(" ",r.val," ")}}function Sg(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",80),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function R_(v,F){if(1&v&&(e.TgZ(0,"div",65),e.YNc(1,kl,11,2,"div",66),e.YNc(2,ev,10,3,"div",67),e.YNc(3,Sg,3,0,"button",68),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.searchTerm),e.xp6(1),e.Q6J("ngForOf",f.displayFacets),e.xp6(1),e.Q6J("ngIf",f.displayFacets&&f.displayFacets.length>0||f.searchTerm)}}function U_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",81),e.TgZ(1,"button",82),e.NdJ("click",function(){return e.CHM(f),e.oxw().export()}),e._UZ(2,"mat-icon",83),e._uU(3," Export "),e.qZA(),e.qZA()}}function Ev(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," DME Reactions "),e.qZA())}function Zv(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.dmeReactions," ")}}function kv(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," PT Term Meddra "),e.qZA())}function Iv(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.ptTermMeddra," ")}}function Ld(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Ingredient Name "),e.qZA())}var bo=function(F){return["/substances",F]};function pu(v,F){if(1&v&&(e.TgZ(0,"td",85),e.TgZ(1,"a",86),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,bo,f.substanceId)),e.xp6(1),e.hij(" ",f.name," ")}}function B_(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Case Count "),e.qZA())}function tv(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.caseCount," ")}}function Y_(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Dme Count "),e.qZA())}function q_(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.dmeCount," ")}}function Tg(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Dme Count Percent "),e.qZA())}function Lv(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.dmeCountPercent," ")}}function nv(v,F){1&v&&(e.TgZ(0,"th",84),e._uU(1," Weighted Average PRR"),e.qZA())}function H_(v,F){if(1&v&&(e.TgZ(0,"td",85),e._uU(1),e.ALo(2,"number"),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",e.xi3(2,1,f.weightedAvgPrr,".2-2")," ")}}function V_(v,F){1&v&&e._UZ(0,"tr",87)}function Ag(v,F){1&v&&e._UZ(0,"tr",88)}function Pg(v,F){if(1&v&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",91),e._uU(4,"DME Reactions:"),e.qZA(),e._uU(5),e.qZA(),e._UZ(6,"div"),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",92),e.TgZ(10,"div",93),e.TgZ(11,"div",94),e._uU(12," Ingredient Name: "),e.qZA(),e.TgZ(13,"div",95),e.TgZ(14,"a",86),e._uU(15),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"div",93),e.TgZ(17,"div",94),e._uU(18," Substance Key: "),e.qZA(),e.TgZ(19,"div",95),e._uU(20),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",92),e.TgZ(22,"div",93),e.TgZ(23,"div",94),e._uU(24," PTTerm Meddra: "),e.qZA(),e.TgZ(25,"div",95),e._uU(26),e.qZA(),e.qZA(),e.TgZ(27,"div",93),e.TgZ(28,"div",94),e._uU(29," Case Count: "),e.qZA(),e.TgZ(30,"div",95),e._uU(31),e.qZA(),e.qZA(),e.qZA(),e.TgZ(32,"div",92),e.TgZ(33,"div",93),e.TgZ(34,"div",94),e._uU(35," DME Count: "),e.qZA(),e.TgZ(36,"div",95),e._uU(37),e.qZA(),e.qZA(),e.TgZ(38,"div",93),e.TgZ(39,"div",94),e._uU(40," DME Count Percent: "),e.qZA(),e.TgZ(41,"div",95),e._uU(42),e.qZA(),e.qZA(),e.qZA(),e.TgZ(43,"div",92),e.TgZ(44,"div",93),e.TgZ(45,"div",94),e._uU(46," Weighted Average PRR: "),e.qZA(),e.TgZ(47,"div",95),e._uU(48),e.ALo(49,"number"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(5),e.hij("\xa0 ",f.dmeReactions," "),e.xp6(9),e.Q6J("routerLink",e.VKq(12,bo,f.substanceId)),e.xp6(1),e.Oqu(f.name),e.xp6(5),e.hij(" ",f.substanceKey," "),e.xp6(6),e.hij(" ",f.ptTermMeddra," "),e.xp6(5),e.hij(" ",f.caseCount," "),e.xp6(6),e.hij(" ",f.dmeCount," "),e.xp6(5),e.hij(" ",f.dmeCountPercent," "),e.xp6(6),e.hij(" ",e.xi3(49,9,f.weightedAvgPrr,".2-2")," ")}}function j_(v,F){if(1&v&&(e.TgZ(0,"div",89),e.YNc(1,Pg,50,14,"mat-card",90),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngForOf",f.adverseEventDme)}}function Dg(v,F){}var J_=function(){return[5,10,50,100]},Fd=function(F){return{"bad-page":F}},of=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr,is,eo,Mo){(0,S.Z)(this,F),this.adverseEventService=f,this.generalService=r,this.activatedRoute=O,this.location=R,this.locationStrategy=ee,this.router=Je,this.sanitizer=_t,this.gaService=Kt,this.configService=Un,this.loadingService=ai,this.notificationService=Pi,this.authService=ki,this.overlayContainerService=ha,this.facetManagerService=kr,this.utilsService=is,this.dialog=eo,this.titleService=Mo,this.countAdverseEventDmeOut=new e.vpe,this.isLoggedIn=!1,this.isLoading=!0,this.isError=!1,this.invalidPage=!1,this.isComponentInit=!1,this.privateExport=!1,this.isSearchEditable=!1,this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.ascDescDir="desc",this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[],this.view="table",this.order="$root_dmeCount",this.etag="",this.totalAdverseEventDme=0,this.sortValues=er.O,this.displayedColumns=["dmeReactions","ptTermMeddra","ingredientName","caseCount","dmeCount","dmeCountPercent","weightedAvgPrr"]}return(0,t.Z)(F,[{key:"onPopState",value:function(r){var O=this;setTimeout(function(){O.router.url===O.previousState[0]&&O.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var r=this;this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventDmeFacets),this.titleService.setTitle("AE:Browse Adverse Events"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"$root_dmeCount",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var R=this.authService.getAuth().subscribe(function(ee){ee&&(r.isLoggedIn=!0),r.isAdmin=r.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(R),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchAdverseEventDme()}},{key:"searchAdverseEventDme",value:function(){var r=this;this.loadingService.setLoading(!0);var R=this.adverseEventService.getAdverseEventDme(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(ee){r.isError=!1,r.adverseEventDme=ee.content,r.totalAdverseEventDme=ee.total,r.countAdverseEventDmeOut.emit(ee.total),r.etag=ee.etag,r.lastPage=ee.total%r.pageSize==0?ee.total/r.pageSize:Math.floor(ee.total/r.pageSize+1),ee.facets&&ee.facets.length>0&&(r.rawFacets=ee.facets),r.narrowSearchSuggestions={},r.matchTypes=[],r.narrowSearchSuggestionsCount=0,ee.narrowSearchSuggestions&&ee.narrowSearchSuggestions.length&&ee.narrowSearchSuggestions.forEach(function(Je){null==r.narrowSearchSuggestions[Je.matchType]&&(r.narrowSearchSuggestions[Je.matchType]=[],"WORD"===Je.matchType?r.matchTypes.unshift(Je.matchType):r.matchTypes.push(Je.matchType)),r.narrowSearchSuggestions[Je.matchType].push(Je),r.narrowSearchSuggestionsCount++}),r.matchTypes.sort()},function(ee){console.log("error");var Je={message:"There was an error trying to retrieve Adverse Event DME. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(Je)},function(){R.unsubscribe(),r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchAdverseEventDme()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("adverseEventFiltering","icon-button:clear-search",Jn.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchAdverseEventDme()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(r){r.removeFacet(r.type,r.bool,r.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var r={queryParams:{}};r.queryParams.searchTerm=this.privateSearchTerm,r.queryParams.pageSize=this.pageSize,r.queryParams.pageIndex=this.pageIndex,r.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var O=this.router.createUrlTree([],{queryParams:r.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(O.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(r){var O=this;if(r.active){var R=this.displayedColumns.indexOf(r.active).toString();this.ascDescDir=r.direction,this.sortValues.forEach(function(ee){ee.displayedColumns&&ee.direction&&O.displayedColumns[R]===ee.displayedColumns&&O.ascDescDir===ee.direction&&(O.order=ee.value)}),this.searchAdverseEventDme()}}},{key:"updateView",value:function(r){this.view=r.value}},{key:"changePage",value:function(r){var O,R;this.pageSize!==r.pageSize?(O="select:page-size",R=r.pageSize):this.pageIndex!==r.pageIndex&&(O="icon-button:page-number",R=r.pageIndex+1),this.gaService.sendEvent("applicationsContent",O,"pager",R),this.pageSize=r.pageSize,this.pageIndex=r.pageIndex,this.populateUrlQueryParameters(),this.searchAdverseEventDme()}},{key:"customPage",value:function(r){if(this.validatePageInput(r)){this.invalidPage=!1;var O=Number(r.target.value)-1;this.pageIndex=O,this.gaService.sendEvent("adverseEventPtContent","select:page-number","pager",O),this.populateUrlQueryParameters(),this.searchAdverseEventDme()}}},{key:"validatePageInput",value:function(r){if(r&&r.target){var O=Number(r.target.value);if(!isNaN(Number(O))&&Number.isInteger(O)&&O<=this.lastPage&&O>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(r){this.pageIndex=0,this.privateFacetParams=r.facetParam,this.displayFacets=r.displayFacets,this.isFacetsParamsInit?this.searchAdverseEventDme():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(r){}},{key:"editAdvancedSearch",value:function(){var r=Jn.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("AdverseEventPt Filtering","icon-button:edit-advanced-search",r);var O={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],O)}},{key:"getSubstanceBySubstanceKey",value:function(){}},{key:"restricSearh",value:function(r){this.privateSearchTerm=r,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchAdverseEventDme()}},{key:"export",value:function(){var r=this;if(this.etag){var O="xlsx",R=this.getApiExportUrl(this.etag,O);this.dialog.open(lt.L,{width:"700px",data:{extension:O,type:"browseAdverseEventDme",entity:"adverseeventdme",hideOptionButtons:!0}}).afterClosed().subscribe(function(Je){var _t=Je.name,Kt=Je.id;_t&&""!==_t&&(r.loadingService.setLoading(!0),r.authService.startUserDownload(R,r.privateExport,_t+"."+O,Kt).subscribe(function(ai){r.loadingService.setLoading(!1),r.router.navigate(["/user-downloads/",ai.id])},function(ai){return r.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(r,O){return this.adverseEventService.getApiExportUrlDme(r,O)}},{key:"processSubstanceSearch",value:function(r){this.privateSearchTerm=r,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Pu.a),e.Y36(D.m),e.Y36(u.gz),e.Y36(c.Ye),e.Y36(c.S$),e.Y36(u.F0),e.Y36(mn.H7),e.Y36(jn.$),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(Me.e),e.Y36(Fe.Xj),e.Y36(gn.bH),e.Y36(ri.F),e.Y36(mt.uw),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-adverse-events-dme-browse"]],hostBindings:function(f,r){1&f&&e.NdJ("popstate",function(R){return r.onPopState(R)},!1,e.Jf7)},outputs:{countAdverseEventDmeOut:"countAdverseEventDmeOut"},decls:74,vars:40,consts:[["autosize","true",1,"margintop90px","sidenav-container-size"],["mode","side","opened",""],["dme",""],["configName","adverseeventdme","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","adverseEventDmeSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],["mat-table","","matSort","","matSortActive","dmeCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","dmeReactions"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","ptTermMeddra"],["matColumnDef","ingredientName"],["matColumnDef","caseCount"],["matColumnDef","dmeCount"],["matColumnDef","dmeCountPercent"],["matColumnDef","weightedAvgPrr"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],["noRecordAdverseEvent",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[4,"ngFor","ngForOf"],[1,"font13px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"]],template:function(f,r){if(1&f){var O=e.EpF();e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(_t){return r.facetsParamsUpdated(_t)})("facetsLoaded",function(_t){return r.facetsLoaded(_t)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.YNc(6,Qr,23,4,"div",5),e.YNc(7,R_,4,3,"ng-template",null,6,e.W1O),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e.TgZ(11,"span",9),e._uU(12,"Browse Adverse Event DME"),e.qZA(),e.qZA(),e.TgZ(13,"mat-button-toggle-group",10),e.NdJ("change",function(_t){return r.updateView(_t)}),e.TgZ(14,"mat-button-toggle",11),e._UZ(15,"mat-icon",12),e.qZA(),e.TgZ(16,"mat-button-toggle",13),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(18,U_,4,0,"div",15),e._UZ(19,"div",16),e.TgZ(20,"div",17),e.TgZ(21,"mat-paginator",18,19),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(23,"div",20),e.TgZ(24,"span",21),e._uU(25,"Page: "),e.qZA(),e.TgZ(26,"mat-form-field",22),e.TgZ(27,"input",23,24),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(28).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(29,"span",21),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",25),e.TgZ(32,"app-adverse-event-text-search",26),e.NdJ("searchPerformed",function(_t){return r.processSubstanceSearch(_t)}),e.qZA(),e.qZA(),e.TgZ(33,"div",27),e.TgZ(34,"div",28),e.TgZ(35,"table",29),e.NdJ("matSortChange",function(_t){return r.sortData(_t)}),e.ynx(36,30),e.YNc(37,Ev,2,0,"th",31),e.YNc(38,Zv,2,1,"td",32),e.BQk(),e.ynx(39,33),e.YNc(40,kv,2,0,"th",31),e.YNc(41,Iv,2,1,"td",32),e.BQk(),e.ynx(42,34),e.YNc(43,Ld,2,0,"th",31),e.YNc(44,pu,3,4,"td",32),e.BQk(),e.ynx(45,35),e.YNc(46,B_,2,0,"th",31),e.YNc(47,tv,2,1,"td",32),e.BQk(),e.ynx(48,36),e.YNc(49,Y_,2,0,"th",31),e.YNc(50,q_,2,1,"td",32),e.BQk(),e.ynx(51,37),e.YNc(52,Tg,2,0,"th",31),e.YNc(53,Lv,2,1,"td",32),e.BQk(),e.ynx(54,38),e.YNc(55,nv,2,0,"th",31),e.YNc(56,H_,3,4,"td",32),e.BQk(),e.YNc(57,V_,1,0,"tr",39),e.YNc(58,Ag,1,0,"tr",40),e.qZA(),e.qZA(),e.YNc(59,j_,2,1,"div",41),e.qZA(),e.TgZ(60,"div",42),e.TgZ(61,"div",17),e.TgZ(62,"mat-paginator",18,19),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(64,"div",20),e.TgZ(65,"span",21),e._uU(66,"Page: "),e.qZA(),e.TgZ(67,"mat-form-field",22),e.TgZ(68,"input",23,24),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(28).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(70,"span",21),e._uU(71),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(72,Dg,0,0,"ng-template",null,43,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&f){var R=e.MAs(8),ee=e.MAs(73);e.xp6(3),e.Q6J("rawFacets",r.rawFacets),e.xp6(3),e.Q6J("ngIf",r.matchTypes&&r.matchTypes.length>0)("ngIfElse",R),e.xp6(7),e.Q6J("value",r.view),e.xp6(5),e.Q6J("ngIf",r.isAdmin),e.xp6(3),e.Q6J("length",r.totalAdverseEventDme)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(30,J_))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(31,Fd,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(33,Fd,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,""),e.xp6(2),e.Q6J("searchValue",r.searchValue),e.xp6(1),e.Q6J("ngClass",r.view),e.xp6(2),e.Q6J("dataSource",r.adverseEventDme),e.xp6(22),e.Q6J("matHeaderRowDef",r.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",r.displayedColumns),e.xp6(1),e.Q6J("ngIf",r.adverseEventDme&&r.adverseEventDme.length)("ngIfElse",ee),e.xp6(3),e.Q6J("length",r.totalAdverseEventDme)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(35,J_))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(36,Fd,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(38,Fd,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,"")}},directives:[nn.TM,nn.JX,qe.R,nn.Rh,c.O5,h.lW,He.p6,T.Hw,He.VK,c.sg,He.OP,u.yS,At.A9,At.Yi,s.gM,X.NW,kt.KE,c.mk,It.Nt,hl,y.BZ,Ae.YE,y.w1,y.fO,y.ge,Ae.nU,y.Dz,y.ev,y.as,y.XQ,y.nj,y.Gk,o.a8,o.n5,o.dn],pipes:[c.JJ],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--include-checkbox-border-color)} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--include-checkbox-bg-color)}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--exclude-checkbox-border-color)} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--exclude-checkbox-bg-color)}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:var(--primary-color);width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:var(--regular-red-color)}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid var(--regular-grey-color)}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid var(--regular-grey-color)}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--pink-span-color)}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:var(--regular-blue-color);display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:var(--label-color);white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:var(--regular-transparent-color)}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.title[_ngcontent-%COMP%]{color:var(--secondary-title-color);font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colororange[_ngcontent-%COMP%]{color:var(--regular-orange-color)}.colorlightblue[_ngcontent-%COMP%]{color:var(--blue-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid var(--light-orange-color)}.borderlightgray[_ngcontent-%COMP%]{border:1px solid var(--light-green-color)}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:var(--white-color);border:1px solid var(--grey-border-color);background:var(--dark-grey-bg-color);box-shadow:0 0 5px -1px var(--box-shadow-color);vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid var(--regular-blue-color)}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.sidenav-container-size[_ngcontent-%COMP%]{width:100%}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),v}(),iv=n(34009);function wg(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",54),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).editAdvancedSearch()}),e._UZ(1,"mat-icon",55),e.qZA()}}function Q_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",60),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return e.oxw(4).restricSearh(ee.luceneQuery)}),e.TgZ(1,"div",61),e._uU(2),e.qZA(),e.TgZ(3,"div",62),e._uU(4),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(2),e.hij(" ",r.displayField," "),e.xp6(2),e.hij(" ",r.count," ")}}function lh(v,F){if(1&v&&(e.TgZ(0,"div"),e.TgZ(1,"div",58),e._uU(2),e.qZA(),e.YNc(3,Q_,5,2,"button",59),e.qZA()),2&v){var f=e.oxw().$implicit,r=e.oxw(2);e.xp6(2),e.hij(" ","WORD"==f?"Contains Match":"Exact Match"," "),e.xp6(1),e.Q6J("ngForOf",r.narrowSearchSuggestions[f])}}function W_(v,F){if(1&v&&(e.TgZ(0,"div",56),e.YNc(1,lh,4,2,"div",57),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("ngIf",f&&("WORD"===f||"FULL"===f))}}function av(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",42),e.TgZ(1,"div",43),e.TgZ(2,"div",44),e.TgZ(3,"div"),e._uU(4," Would you like to restrict this search to a field? "),e.qZA(),e._uU(5,"\xa0 "),e.TgZ(6,"button",45),e.NdJ("menuOpened",function(){return e.CHM(f),e.oxw().increaseOverlayZindex()})("menuClosed",function(){return e.CHM(f),e.oxw().decreaseOverlayZindex()}),e.TgZ(7,"span"),e._uU(8,"Fields "),e.qZA(),e._uU(9),e._UZ(10,"mat-icon",46),e.qZA(),e.TgZ(11,"button",47),e.NdJ("click",function(){return e.CHM(f),e.oxw().clearFilters()}),e.TgZ(12,"span"),e._uU(13,"RESET"),e.qZA(),e.qZA(),e.YNc(14,wg,2,0,"button",48),e.TgZ(15,"mat-menu",49,50),e.YNc(17,W_,2,1,"div",51),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",43),e.TgZ(19,"div",52),e._uU(20," For more options use the "),e.TgZ(21,"a",53),e._uU(22," Advanced Search"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.MAs(16),O=e.oxw();e.xp6(6),e.Q6J("matMenuTriggerFor",r),e.xp6(3),e.hij("\xa0 ",O.narrowSearchSuggestionsCount," "),e.xp6(5),e.Q6J("ngIf",O.isSearchEditable),e.xp6(3),e.Q6J("ngForOf",O.matchTypes)}}function Eo(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",54),e.NdJ("click",function(){return e.CHM(f),e.oxw(3).editAdvancedSearch()}),e._UZ(1,"mat-icon",55),e.qZA()}}function Og(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",67),e.TgZ(1,"div"),e.TgZ(2,"span",68),e._uU(3,"Search Query:"),e.qZA(),e._uU(4,"\xa0 "),e.TgZ(5,"span"),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",69),e.YNc(8,Eo,2,0,"button",48),e.TgZ(9,"button",54),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearSearch()}),e._UZ(10,"mat-icon",70),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=e.oxw(2);e.xp6(6),e.Oqu(r.searchTerm),e.xp6(2),e.Q6J("ngIf",r.isSearchEditable)}}function z_(v,F){1&v&&e._UZ(0,"mat-icon",77)}function uh(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",67),e.TgZ(1,"div",71),e.TgZ(2,"span",72),e.YNc(3,z_,1,0,"mat-icon",73),e._uU(4),e.qZA(),e.TgZ(5,"span",74),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"div",69),e.TgZ(8,"button",75),e.NdJ("click",function(){var ee=e.CHM(f).$implicit;return ee.removeFacet(ee.type,ee.bool,ee.val)}),e._UZ(9,"mat-icon",76),e.qZA(),e.qZA(),e.qZA()}if(2&v){var r=F.$implicit;e.xp6(3),e.Q6J("ngIf",!r.bool),e.xp6(1),e.hij(" ",r.type,": "),e.xp6(2),e.hij(" ",r.val," ")}}function G_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"button",78),e.NdJ("click",function(){return e.CHM(f),e.oxw(2).clearFilters()}),e.TgZ(1,"span"),e._uU(2,"RESET"),e.qZA(),e.qZA()}}function Eg(v,F){if(1&v&&(e.TgZ(0,"div",63),e.YNc(1,Og,11,2,"div",64),e.YNc(2,uh,10,3,"div",65),e.YNc(3,G_,3,0,"button",66),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngIf",f.searchTerm),e.xp6(1),e.Q6J("ngForOf",f.displayFacets),e.xp6(1),e.Q6J("ngIf",f.displayFacets&&f.displayFacets.length>0||f.searchTerm)}}function K_(v,F){if(1&v){var f=e.EpF();e.TgZ(0,"div",79),e.TgZ(1,"button",80),e.NdJ("click",function(){return e.CHM(f),e.oxw().export()}),e._UZ(2,"mat-icon",81),e._uU(3," Export "),e.qZA(),e.qZA()}}function Zg(v,F){1&v&&(e.TgZ(0,"th",82),e._uU(1," Adverse Event "),e.qZA())}function kg(v,F){if(1&v&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.adverseEvent," ")}}function Ig(v,F){1&v&&(e.TgZ(0,"th",82),e._uU(1," Species "),e.qZA())}function Lg(v,F){if(1&v&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.species," ")}}function Fg(v,F){1&v&&(e.TgZ(0,"th",82),e._uU(1," Ingredient Name "),e.qZA())}var rv=function(F){return["/substances",F]};function ov(v,F){if(1&v&&(e.TgZ(0,"td",83),e.TgZ(1,"a",84),e._uU(2),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.Q6J("routerLink",e.VKq(2,rv,f.substanceId)),e.xp6(1),e.hij(" ",f.name," ")}}function sv(v,F){1&v&&(e.TgZ(0,"th",82),e._uU(1," Adverse Event Count "),e.qZA())}function Ng(v,F){if(1&v&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.aeCount," ")}}function lv(v,F){1&v&&(e.TgZ(0,"th",82),e._uU(1," Route of Administration "),e.qZA())}function Co(v,F){if(1&v&&(e.TgZ(0,"td",83),e._uU(1),e.qZA()),2&v){var f=F.$implicit;e.xp6(1),e.hij(" ",f.routeOfAdmin," ")}}function Rg(v,F){1&v&&e._UZ(0,"tr",85)}function uv(v,F){1&v&&e._UZ(0,"tr",86)}function cv(v,F){if(1&v&&(e.TgZ(0,"mat-card"),e.TgZ(1,"mat-card-title"),e.TgZ(2,"div"),e.TgZ(3,"span",89),e._uU(4,"Adverse Event:"),e.qZA(),e._uU(5),e.qZA(),e._UZ(6,"div"),e._UZ(7,"div"),e.qZA(),e.TgZ(8,"mat-card-content"),e.TgZ(9,"div",90),e.TgZ(10,"div",91),e.TgZ(11,"div",92),e._uU(12," Ingredient Name: "),e.qZA(),e.TgZ(13,"div",93),e.TgZ(14,"a",84),e._uU(15),e.qZA(),e.qZA(),e.qZA(),e.TgZ(16,"div",91),e.TgZ(17,"div",92),e._uU(18," Substance Key: "),e.qZA(),e.TgZ(19,"div",93),e._uU(20),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",90),e.TgZ(22,"div",91),e.TgZ(23,"div",92),e._uU(24," Species: "),e.qZA(),e.TgZ(25,"div",93),e._uU(26),e.qZA(),e.qZA(),e.TgZ(27,"div",91),e.TgZ(28,"div",92),e._uU(29," Route of Administration: "),e.qZA(),e.TgZ(30,"div",93),e._uU(31),e.qZA(),e.qZA(),e.qZA(),e.TgZ(32,"div",90),e.TgZ(33,"div",91),e.TgZ(34,"div",92),e._uU(35," Adverse Event Count: "),e.qZA(),e.TgZ(36,"div",93),e._uU(37),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&v){var f=F.$implicit;e.xp6(5),e.hij("\xa0 ",f.adverseEvent," "),e.xp6(9),e.Q6J("routerLink",e.VKq(7,rv,f.substanceId)),e.xp6(1),e.Oqu(f.name),e.xp6(5),e.hij(" ",f.substanceKey," "),e.xp6(6),e.hij(" ",f.species," "),e.xp6(5),e.hij(" ",f.name," "),e.xp6(6),e.hij(" ",f.aeCount," ")}}function Ug(v,F){if(1&v&&(e.TgZ(0,"div",87),e.YNc(1,cv,38,9,"mat-card",88),e.qZA()),2&v){var f=e.oxw();e.xp6(1),e.Q6J("ngForOf",f.adverseEventCvm)}}function dv(v,F){}var $_=function(){return[5,10,50,100]},sf=function(F){return{"bad-page":F}},uc=function(){var v=function(){function F(f,r,O,R,ee,Je,_t,Kt,Un,ai,Pi,ki,ha,kr,is,eo,Mo){(0,S.Z)(this,F),this.adverseEventService=f,this.generalService=r,this.activatedRoute=O,this.location=R,this.locationStrategy=ee,this.router=Je,this.sanitizer=_t,this.gaService=Kt,this.configService=Un,this.loadingService=ai,this.notificationService=Pi,this.authService=ki,this.overlayContainerService=ha,this.facetManagerService=kr,this.utilsService=is,this.dialog=eo,this.titleService=Mo,this.countAdverseEventCvmOut=new e.vpe,this.isLoggedIn=!1,this.isLoading=!0,this.isError=!1,this.invalidPage=!1,this.isComponentInit=!1,this.privateExport=!1,this.isSearchEditable=!1,this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.previousState=[],this.ascDescDir="desc",this.isFacetsParamsInit=!1,this.displayFacets=[],this.subscriptions=[],this.view="table",this.order="$root_aeCount",this.etag="",this.totalAdverseEventCvm=0,this.sortValues=iv.l,this.displayedColumns=["adverseEvent","species","ingredientName","adverseEventCount","routeOfAdmin"]}return(0,t.Z)(F,[{key:"onPopState",value:function(r){var O=this;setTimeout(function(){O.router.url===O.previousState[0]&&O.ngOnInit()},50)}},{key:"ngOnInit",value:function(){var r=this;this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventCvmFacets),this.titleService.setTitle("AE:Browse Adverse Events"),this.pageSize=10,this.pageIndex=0,this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString())),this.order=this.activatedRoute.snapshot.queryParams.order||"$root_aeCount",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10,this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var R=this.authService.getAuth().subscribe(function(ee){ee&&(r.isLoggedIn=!0),r.isAdmin=r.authService.hasAnyRoles("Admin","Updater","SuperUpdater")});this.subscriptions.push(R),this.isComponentInit=!0,this.loadComponent()}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(r){r&&r.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit&&this.searchAdverseEventCvm()}},{key:"searchAdverseEventCvm",value:function(){var r=this;this.loadingService.setLoading(!0);var R=this.adverseEventService.getAdverseEventCvm(this.order,this.pageIndex*this.pageSize,this.pageSize,this.privateSearchTerm,this.privateFacetParams).subscribe(function(ee){r.isError=!1,r.adverseEventCvm=ee.content,r.totalAdverseEventCvm=ee.total,r.countAdverseEventCvmOut.emit(ee.total),r.etag=ee.etag,r.lastPage=ee.total%r.pageSize==0?ee.total/r.pageSize:Math.floor(ee.total/r.pageSize+1),ee.facets&&ee.facets.length>0&&(r.rawFacets=ee.facets),r.narrowSearchSuggestions={},r.matchTypes=[],r.narrowSearchSuggestionsCount=0,ee.narrowSearchSuggestions&&ee.narrowSearchSuggestions.length&&ee.narrowSearchSuggestions.forEach(function(Je){null==r.narrowSearchSuggestions[Je.matchType]&&(r.narrowSearchSuggestions[Je.matchType]=[],"WORD"===Je.matchType?r.matchTypes.unshift(Je.matchType):r.matchTypes.push(Je.matchType)),r.narrowSearchSuggestions[Je.matchType].push(Je),r.narrowSearchSuggestionsCount++}),r.matchTypes.sort()},function(ee){console.log("error");var Je={message:"There was an error trying to retrieve Adverse Event CVM. Please refresh and try again.",type:vn.k.error,milisecondsToShow:6e3};r.isError=!0,r.isLoading=!1,r.loadingService.setLoading(r.isLoading),r.notificationService.setNotification(Je)},function(){R.unsubscribe(),r.isLoading=!1,r.loadingService.setLoading(r.isLoading)})}},{key:"setSearchTermValue",value:function(){this.pageSize=10,this.pageIndex=0,this.searchAdverseEventCvm()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("adverseEventFiltering","icon-button:clear-search",Jn.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.pageIndex=0,this.pageSize=10,this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(r){r.removeFacet(r.type,r.bool,r.val)}),this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"populateUrlQueryParameters",value:function(){var r={queryParams:{}};r.queryParams.searchTerm=this.privateSearchTerm,r.queryParams.pageSize=this.pageSize,r.queryParams.pageIndex=this.pageIndex,r.queryParams.skip=this.pageIndex*this.pageSize,this.previousState.push(this.router.url);var O=this.router.createUrlTree([],{queryParams:r.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(O.toString())}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"sortData",value:function(r){var O=this;if(r.active){var R=this.displayedColumns.indexOf(r.active).toString();this.ascDescDir=r.direction,this.sortValues.forEach(function(ee){ee.displayedColumns&&ee.direction&&O.displayedColumns[R]===ee.displayedColumns&&O.ascDescDir===ee.direction&&(O.order=ee.value)}),this.searchAdverseEventCvm()}}},{key:"updateView",value:function(r){this.view=r.value}},{key:"changePage",value:function(r){var O,R;this.pageSize!==r.pageSize?(O="select:page-size",R=r.pageSize):this.pageIndex!==r.pageIndex&&(O="icon-button:page-number",R=r.pageIndex+1),this.gaService.sendEvent("applicationsContent",O,"pager",R),this.pageSize=r.pageSize,this.pageIndex=r.pageIndex,this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}},{key:"customPage",value:function(r){if(this.validatePageInput(r)){this.invalidPage=!1;var O=Number(r.target.value)-1;this.pageIndex=O,this.gaService.sendEvent("adverseEventPtContent","select:page-number","pager",O),this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}}},{key:"validatePageInput",value:function(r){if(r&&r.target){var O=Number(r.target.value);if(!isNaN(Number(O))&&Number.isInteger(O)&&O<=this.lastPage&&O>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(r){this.pageIndex=0,this.privateFacetParams=r.facetParam,this.displayFacets=r.displayFacets,this.isFacetsParamsInit?this.searchAdverseEventCvm():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetsLoaded",value:function(r){}},{key:"editAdvancedSearch",value:function(){var r=Jn.N.isAnalyticsPrivate?"Browse Application search term":"".concat(this.privateSearchTerm);this.gaService.sendEvent("AdverseEventPt Filtering","icon-button:edit-advanced-search",r);var O={queryParams:{"g-search-hash":this.searchTermHash.toString()}};this.router.navigate(["/advanced-search"],O)}},{key:"getSubstanceBySubstanceKey",value:function(){}},{key:"restricSearh",value:function(r){this.privateSearchTerm=r,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchAdverseEventCvm()}},{key:"export",value:function(){var r=this;if(this.etag){var O="xlsx",R=this.getApiExportUrl(this.etag,O);this.dialog.open(lt.L,{width:"700px",data:{extension:O,type:"browseAdverseEventCvm",entity:"adverseeventcvm",hideOptionButtons:!0}}).afterClosed().subscribe(function(Je){var _t=Je.name,Kt=Je.id;_t&&""!==_t&&(r.loadingService.setLoading(!0),r.authService.startUserDownload(R,r.privateExport,_t+"."+O,Kt).subscribe(function(ai){r.loadingService.setLoading(!1),r.router.navigate(["/user-downloads/",ai.id])},function(ai){return r.loadingService.setLoading(!1)}))})}}},{key:"getApiExportUrl",value:function(r,O){return this.adverseEventService.getApiExportUrlCvm(r,O)}},{key:"processSubstanceSearch",value:function(r){this.privateSearchTerm=r,this.setSearchTermValue()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Pu.a),e.Y36(D.m),e.Y36(u.gz),e.Y36(c.Ye),e.Y36(c.S$),e.Y36(u.F0),e.Y36(mn.H7),e.Y36(jn.$),e.Y36(hn.E),e.Y36(Xe.b),e.Y36(zt.a),e.Y36(Me.e),e.Y36(Fe.Xj),e.Y36(gn.bH),e.Y36(ri.F),e.Y36(mt.uw),e.Y36(mn.Dx))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-adverse-events-cvm-browse"]],hostBindings:function(f,r){1&f&&e.NdJ("popstate",function(R){return r.onPopState(R)},!1,e.Jf7)},outputs:{countAdverseEventCvmOut:"countAdverseEventCvmOut"},decls:68,vars:40,consts:[["autosize","true",1,"margintop90px","sidenav-container-size"],["mode","side","opened",""],["cvm",""],["configName","adverseeventcvm","includeFacetSearch","true",3,"rawFacets","facetsParamsUpdated","facetsLoaded"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["value","table","matTooltip","Table View"],["svgIcon","list"],["value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["class","export",4,"ngIf"],[1,"break"],[1,"full-paginator"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],[1,"search-text"],["placeholder","Search Any Text","styling","homePage","eventCategory","adverseEventCvmSearch",1,"top-search",3,"searchValue","searchPerformed"],[3,"ngClass"],[1,"table-view"],["mat-table","","matSort","","matSortActive","adverseEventCount","matSortDirection","desc","matSortDisableClear","",3,"dataSource","matSortChange"],["matColumnDef","adverseEvent"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","species"],["matColumnDef","ingredientName"],["matColumnDef","adverseEventCount"],["matColumnDef","routeOfAdmin"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["class","cards-view",4,"ngIf","ngIfElse"],[1,"controls-container-right"],["noRecordAdverseEvent",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],["class","narrow-search-dropdown",4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search",2,"padding-left","6px"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","edit"],[1,"narrow-search-dropdown"],[4,"ngIf"],[1,"match-type"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["svgIcon","delete_forever"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],[1,"export"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header",""],["mat-cell",""],["target","_blank",3,"routerLink"],["mat-header-row",""],["mat-row",""],[1,"cards-view"],[4,"ngFor","ngForOf"],[1,"font13px"],[1,"row"],[1,"row-property"],[1,"row-property-key"],[1,"row-property-value"]],template:function(f,r){if(1&f){var O=e.EpF();e.TgZ(0,"mat-sidenav-container",0),e.TgZ(1,"mat-sidenav",1,2),e.TgZ(3,"app-facets-manager",3),e.NdJ("facetsParamsUpdated",function(_t){return r.facetsParamsUpdated(_t)})("facetsLoaded",function(_t){return r.facetsLoaded(_t)}),e.qZA(),e.qZA(),e.TgZ(4,"mat-sidenav-content"),e.TgZ(5,"div",4),e.YNc(6,av,23,4,"div",5),e.YNc(7,Eg,4,3,"ng-template",null,6,e.W1O),e.TgZ(9,"div",7),e.TgZ(10,"div",8),e.TgZ(11,"span",9),e._uU(12,"Browse Adverse Event CVM"),e.qZA(),e.qZA(),e.TgZ(13,"mat-button-toggle-group",10),e.NdJ("change",function(_t){return r.updateView(_t)}),e.TgZ(14,"mat-button-toggle",11),e._UZ(15,"mat-icon",12),e.qZA(),e.TgZ(16,"mat-button-toggle",13),e._UZ(17,"mat-icon",14),e.qZA(),e.qZA(),e.YNc(18,K_,4,0,"div",15),e._UZ(19,"div",16),e.TgZ(20,"div",17),e.TgZ(21,"mat-paginator",18,19),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(23,"div",20),e.TgZ(24,"span",21),e._uU(25,"Page: "),e.qZA(),e.TgZ(26,"mat-form-field",22),e.TgZ(27,"input",23,24),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(28).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(29,"span",21),e._uU(30),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(31,"div",25),e.TgZ(32,"app-adverse-event-text-search",26),e.NdJ("searchPerformed",function(_t){return r.processSubstanceSearch(_t)}),e.qZA(),e.qZA(),e.TgZ(33,"div",27),e.TgZ(34,"div",28),e.TgZ(35,"table",29),e.NdJ("matSortChange",function(_t){return r.sortData(_t)}),e.ynx(36,30),e.YNc(37,Zg,2,0,"th",31),e.YNc(38,kg,2,1,"td",32),e.BQk(),e.ynx(39,33),e.YNc(40,Ig,2,0,"th",31),e.YNc(41,Lg,2,1,"td",32),e.BQk(),e.ynx(42,34),e.YNc(43,Fg,2,0,"th",31),e.YNc(44,ov,3,4,"td",32),e.BQk(),e.ynx(45,35),e.YNc(46,sv,2,0,"th",31),e.YNc(47,Ng,2,1,"td",32),e.BQk(),e.ynx(48,36),e.YNc(49,lv,2,0,"th",31),e.YNc(50,Co,2,1,"td",32),e.BQk(),e.YNc(51,Rg,1,0,"tr",37),e.YNc(52,uv,1,0,"tr",38),e.qZA(),e.qZA(),e.YNc(53,Ug,2,1,"div",39),e.qZA(),e.TgZ(54,"div",40),e.TgZ(55,"div",17),e.TgZ(56,"mat-paginator",18,19),e.NdJ("page",function(_t){return r.changePage(_t)}),e.qZA(),e.TgZ(58,"div",20),e.TgZ(59,"span",21),e._uU(60,"Page: "),e.qZA(),e.TgZ(61,"mat-form-field",22),e.TgZ(62,"input",23,24),e.NdJ("keydown.enter",function(_t){return r.customPage(_t)})("input",function(_t){return r.invalidPage=!r.validatePageInput(_t)})("focusout",function(){return e.CHM(O),e.MAs(28).value=r.pageIndex+1,r.invalidPage=!1}),e.qZA(),e.qZA(),e.TgZ(64,"span",21),e._uU(65),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(66,dv,0,0,"ng-template",null,41,e.W1O),e.qZA(),e.qZA(),e.qZA()}if(2&f){var R=e.MAs(8),ee=e.MAs(67);e.xp6(3),e.Q6J("rawFacets",r.rawFacets),e.xp6(3),e.Q6J("ngIf",r.matchTypes&&r.matchTypes.length>0)("ngIfElse",R),e.xp6(7),e.Q6J("value",r.view),e.xp6(5),e.Q6J("ngIf",r.isAdmin),e.xp6(3),e.Q6J("length",r.totalAdverseEventCvm)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(30,$_))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(31,sf,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(33,sf,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,""),e.xp6(2),e.Q6J("searchValue",r.searchValue),e.xp6(1),e.Q6J("ngClass",r.view),e.xp6(2),e.Q6J("dataSource",r.adverseEventCvm),e.xp6(16),e.Q6J("matHeaderRowDef",r.displayedColumns),e.xp6(1),e.Q6J("matRowDefColumns",r.displayedColumns),e.xp6(1),e.Q6J("ngIf",r.adverseEventCvm&&r.adverseEventCvm.length)("ngIfElse",ee),e.xp6(3),e.Q6J("length",r.totalAdverseEventCvm)("pageIndex",r.pageIndex)("pageSize",r.pageSize)("pageSizeOptions",e.DdM(35,$_))("showFirstLastButtons",!0),e.xp6(5),e.Q6J("ngClass",e.VKq(36,sf,r.invalidPage)),e.xp6(1),e.Q6J("ngClass",e.VKq(38,sf,r.invalidPage))("value",r.pageIndex+1),e.xp6(3),e.hij(" of ",r.lastPage,"")}},directives:[nn.TM,nn.JX,qe.R,nn.Rh,c.O5,h.lW,He.p6,T.Hw,He.VK,c.sg,He.OP,u.yS,At.A9,At.Yi,s.gM,X.NW,kt.KE,c.mk,It.Nt,hl,y.BZ,Ae.YE,y.w1,y.fO,y.ge,Ae.nU,y.Dz,y.ev,y.as,y.XQ,y.nj,y.Gk,o.a8,o.n5,o.dn],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.include[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--include-checkbox-border-color)} .include.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .include.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--include-checkbox-bg-color)}.exclude[_ngcontent-%COMP%]{margin-left:5px}.exclude[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:var(--exclude-checkbox-border-color)} .exclude.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .exclude.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:var(--exclude-checkbox-bg-color)}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.controls-container-right[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:var(--primary-color);width:285px}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:400px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}.mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:var(--regular-red-color)}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important;border:1px solid var(--regular-grey-color)}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important;border:1px solid var(--regular-grey-color)}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.cards[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .cards-view[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .table-view[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .tiles-view[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%], .facet-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--pink-span-color)}.mat-card-title[_ngcontent-%COMP%] .center[_ngcontent-%COMP%]{font-size:15px;color:var(--regular-blue-color);display:inline-block}.facet-value[_ngcontent-%COMP%]{padding:6px 0;overflow:hidden}.facet-value[_ngcontent-%COMP%] .facet-value-checkbox[_ngcontent-%COMP%]{padding:0 3px 0 0}.facet-value[_ngcontent-%COMP%] .facet-value-label[_ngcontent-%COMP%]{padding:0 3px;max-width:150px;overflow:hidden;color:var(--label-color);white-space:normal}.facet-value[_ngcontent-%COMP%] .facet-value-count[_ngcontent-%COMP%]{padding:0 0 0 3px;overflow:hidden;font-weight:500}.facet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:10px}.facet-actions[_ngcontent-%COMP%] .pull-right[_ngcontent-%COMP%]{margin-left:auto}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{min-width:70px}.facet-actions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]:not(:first-child){margin-left:5px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:120px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:var(--regular-transparent-color)}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;white-space:nowrap}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.search-text[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-left:10px}.title[_ngcontent-%COMP%]{color:var(--secondary-title-color);font-size:24px;font-weight:600px;padding-left:15px;padding-top:10px}.row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:50%}.row-property-key[_ngcontent-%COMP%]{min-width:32%;max-width:32%;padding:7px;font-weight:700}.row-property-value[_ngcontent-%COMP%]{min-width:68%;max-width:68%;padding:5px}.row-property-2[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%}.row-property-key-2[_ngcontent-%COMP%]{min-width:15%;max-width:15%;padding:7px;font-weight:700}.row-property-value-2[_ngcontent-%COMP%]{min-width:85%;max-width:85%;padding:5px}.row-property-3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:33%}.row-property-key-3[_ngcontent-%COMP%]{min-width:45%;max-width:45%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-3[_ngcontent-%COMP%]{min-width:55%;max-width:55%;padding:5px}.row-property-4[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:66%}.row-property-key-4[_ngcontent-%COMP%]{min-width:23%;max-width:23%;padding:7px;font-weight:700;font-family:Roboto,Helvetica Neue,sans-serif}.row-property-value-4[_ngcontent-%COMP%]{min-width:77%;max-width:77%;padding:5px}.row-property-key-5[_ngcontent-%COMP%]{min-width:35%;max-width:35%;padding:7px;font-weight:600}.row-property-value-5[_ngcontent-%COMP%]{min-width:65%;max-width:65%;padding:5px}.font9px[_ngcontent-%COMP%]{font-size:9px}.font10px[_ngcontent-%COMP%]{font-size:10px}.font12px[_ngcontent-%COMP%]{font-size:12px}.font13px[_ngcontent-%COMP%]{font-size:13px}.font14px[_ngcontent-%COMP%]{font-size:14px}.font17px[_ngcontent-%COMP%]{font-size:17px}.fontweight600[_ngcontent-%COMP%]{font-weight:600}.colorgray[_ngcontent-%COMP%]{color:var(--regular-grey-color)}.colorred[_ngcontent-%COMP%]{color:var(--regular-red-color)}.colorgreen[_ngcontent-%COMP%]{color:var(--regular-green-color)}.colororange[_ngcontent-%COMP%]{color:var(--regular-orange-color)}.colorlightblue[_ngcontent-%COMP%]{color:var(--blue-color)}.bordergray[_ngcontent-%COMP%]{border:1px solid var(--regular-grey-color)}.borderlightorange-bottom[_ngcontent-%COMP%]{border-bottom:1px solid var(--light-orange-color)}.borderlightgray[_ngcontent-%COMP%]{border:1px solid var(--light-green-color)}.padtop5px[_ngcontent-%COMP%]{padding-top:5px}.padleft10px[_ngcontent-%COMP%]{padding-left:10px}.padleft20px[_ngcontent-%COMP%]{padding-left:20px}.marginleft20px[_ngcontent-%COMP%]{margin-left:20px}.marginleft40px[_ngcontent-%COMP%]{margin-left:40px}.marginright40px[_ngcontent-%COMP%]{margin-right:40px}.margintop90px[_ngcontent-%COMP%]{margin-top:90px}.totalApp[_ngcontent-%COMP%]{display:inline-block;color:var(--white-color);border:1px solid var(--grey-border-color);background:var(--dark-grey-bg-color);box-shadow:0 0 5px -1px var(--box-shadow-color);vertical-align:middle;max-width:100px;font-weight:500;border-radius:5px;padding:5px;text-align:center}.exportStyle[_ngcontent-%COMP%]{display:block;width:50px;height:50px;padding:0;border:10px solid var(--regular-blue-color)}.width100percent[_ngcontent-%COMP%]{width:100%}.width70percent[_ngcontent-%COMP%]{width:70%}.width30percent[_ngcontent-%COMP%]{width:30%}.width350px[_ngcontent-%COMP%]{width:350px}.divflex[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.sidenav-container-size[_ngcontent-%COMP%]{width:100%}.top-search[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;max-width:500px}.top-search[_ngcontent-%COMP%] .mat-form-field .mat-form-field-label{font-size:16px}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}"]}),v}();function pv(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event PT "),e.TgZ(2,"div",8),e._uU(3),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.hij(" (",f.adverseEventPtCount,") ")}}function fv(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event DME "),e.TgZ(2,"div",8),e._uU(3),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.hij(" (",f.adverseEventDmeCount,") ")}}function Bg(v,F){if(1&v&&(e.TgZ(0,"div"),e._uU(1,"Adverse Event CVM "),e.TgZ(2,"div",8),e._uU(3),e.qZA(),e.qZA()),2&v){var f=e.oxw();e.xp6(3),e.hij(" (",f.adverseEventCvmCount,") ")}}var X_=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.adverseEventService=f,this.facetManagerService=r,this.adverseEventPtCount=0,this.adverseEventDmeCount=0,this.adverseEventCvmCount=0,this.tabSelectedIndex=0,this.category="Adverse Event PT"}return(0,t.Z)(F,[{key:"ngOnInit",value:function(){this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets)}},{key:"ngAfterViewInit",value:function(){this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets)}},{key:"tabSelectedUpdated",value:function(r){r&&(this.category=r.tab.textLabel,this.setFacetsforTabs())}},{key:"setFacetsforTabs",value:function(){this.category&&("Adverse Event PT"===this.category&&this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets),"Adverse Event DME"===this.category&&this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventDmeFacets),"Adverse Event CVM"===this.category&&this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventCvmFacets))}},{key:"getAdverseEventPtCount",value:function(r){this.adverseEventPtCount=r,this.adverseEventPtCount>0&&(this.tabSelectedIndex=0)}},{key:"getAdverseEventDmeCount",value:function(r){this.adverseEventDmeCount=r,0==this.adverseEventPtCount&&0==this.adverseEventCvmCount&&this.adverseEventDmeCount>0&&(this.tabSelectedIndex=1)}},{key:"getAdverseEventCvmCount",value:function(r){this.adverseEventCvmCount=r,0==this.adverseEventPtCount&&0==this.adverseEventDmeCount&&this.adverseEventCvmCount>0&&(this.tabSelectedIndex=2)}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.Y36(Pu.a),e.Y36(gn.bH))},v.\u0275cmp=e.Xpm({type:v,selectors:[["app-adverse-events-browse"]],decls:15,vars:1,consts:[[3,"selectedIndex","selectedIndexChange","selectedTabChange"],["label","Adverse Event PT"],["mat-tab-label",""],[3,"countAdverseEventPtOut"],["label","Adverse Event DME"],[3,"countAdverseEventDmeOut"],["label","Adverse Event CVM"],[3,"countAdverseEventCvmOut"],[1,"font12px"]],template:function(f,r){1&f&&(e._UZ(0,"br"),e._UZ(1,"br"),e._UZ(2,"br"),e._UZ(3,"br"),e._UZ(4,"br"),e.TgZ(5,"mat-tab-group",0),e.NdJ("selectedIndexChange",function(R){return r.tabSelectedIndex=R})("selectedTabChange",function(R){return r.tabSelectedUpdated(R)}),e.TgZ(6,"mat-tab",1),e.YNc(7,pv,4,1,"ng-template",2),e.TgZ(8,"app-adverse-events-pt-browse",3),e.NdJ("countAdverseEventPtOut",function(R){return r.getAdverseEventPtCount(R)}),e.qZA(),e.qZA(),e.TgZ(9,"mat-tab",4),e.YNc(10,fv,4,1,"ng-template",2),e.TgZ(11,"app-adverse-events-dme-browse",5),e.NdJ("countAdverseEventDmeOut",function(R){return r.getAdverseEventDmeCount(R)}),e.qZA(),e.qZA(),e.TgZ(12,"mat-tab",6),e.YNc(13,Bg,4,1,"ng-template",2),e.TgZ(14,"app-adverse-events-cvm-browse",7),e.NdJ("countAdverseEventCvmOut",function(R){return r.getAdverseEventCvmCount(R)}),e.qZA(),e.qZA(),e.qZA()),2&f&&(e.xp6(5),e.Q6J("selectedIndex",r.tabSelectedIndex))},styles:[""]}),v}(),Yc=function(){var v=function(){function F(f,r){(0,S.Z)(this,F),this.configService=f,this.router=r}return(0,t.Z)(F,[{key:"canActivate",value:function(r,O){var R=this;return new Lr.y(function(ee){var Je=R.configService.configData.loadedComponents||null;Je&&Je.adverseevents?(ee.next(!0),ee.complete()):(ee.next(R.router.parseUrl("/home")),ee.complete())})}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(hn.E),e.LFG(u.F0))},v.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"}),v}(),mv=[{path:"browse-adverse-events",component:X_,canActivate:[Yc]},{path:"adverse-event-pt-browse",component:pa,canActivate:[Yc]},{path:"adverse-event-dme-browse",component:of,canActivate:[Yc]},{path:"adverse-event-cvm-browse",component:uc,canActivate:[Yc]}],eg=function(){var v=function(){function F(f){(0,S.Z)(this,F),mv.forEach(function(r){f.config[0].children.push(r)})}return(0,t.Z)(F,null,[{key:"forRoot",value:function(){return{ngModule:F,providers:[Pu.a,Yc]}}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0))},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({providers:[Yc],imports:[[c.ez,u.Bz.forChild(mv),Ht.g0,nn.SJ,o.QW,an.Bb,kt.lN,It.c,h.ot,T.Ps,$e.Hi,q.g,_.To,B.p9,y.p0,Ae.JX,X.TU,ne.LD,me.KP,mt.Is,Oe.ie,He.Tx,At.vV,s.AV,b.Nh,Ft._r,et.u5,et.UX,Fe.U8,Is,rs.O,gn.On,lc]]}),v}();e.B6R(X_,[b.SP,b.uX,b.uD,pa,of,uc],[]),e.B6R(X_,[b.SP,b.uX,b.uD,pa,of,uc],[]),n(64061),n(72869);var qg=[{path:"browse-clinical-trial",component:If},{path:"sub-app-match-list/:id",component:Lp},{path:"user-manual",component:Cm},{path:"jira-submit",component:Vr}];function Hg(v){return function(){v.init()}}var fu=function(){var v=function(){function F(f){(0,S.Z)(this,F),qg.forEach(function(r){f.config[0].children.push(r)})}return(0,t.Z)(F,null,[{key:"forRoot",value:function(){return{ngModule:F,providers:[On.M,D.m]}}}]),F}();return v.\u0275fac=function(f){return new(f||v)(e.LFG(u.F0))},v.\u0275mod=e.oAB({type:v}),v.\u0275inj=e.cJS({providers:[Xo,{provide:e.ip1,useFactory:Hg,deps:[Xo],multi:!0}],imports:[[c.ez,u.Bz.forChild(qg),k.o0.forRoot(at,xe),k.o0.forRoot(at,We),ut.Sg.forRoot(ym),t_.forRoot(),Qt,nu,M_,sc,eg,bn,n_,dm,o.QW,h.ot,T.Ps,s.AV,b.Nh,_.To,Y.Cq,y.p0,q.g,B.p9]]}),v}()},91781:function(Ce,E,n){"use strict";n.d(E,{q:function(){return Y}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(28784),o=n(83336),_=n(50635),s=n(53141),h=n(69264),b=n(52149),T=n(52489),y=n(86613),Y=function(){var q=function(B){(0,e.Z)(D,B);var k=(0,c.Z)(D);function D(N,I,L){var j;return(0,S.Z)(this,D),(j=k.call(this,I)).http=N,j.configService=I,j.utilsService=L,j._bypassUpdateCheck=!1,j.apiBaseUrlWithEntityContext=j.configService.configData.apiBaseUrl+"api/v1/impurities/",j}return(0,t.Z)(D,[{key:"isImpuritiesUpdated",get:function(){var I=JSON.stringify(this.impurities);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.impuritiesStateHash!==this.utilsService.hashCode(I)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"getImpuritiesBySubstanceUuid",value:function(I){var L=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,j=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,le=arguments.length>3?arguments[3]:void 0,re=arguments.length>4?arguments[4]:void 0,W=new T.nq;W=(W=W.append("skip",L.toString())).append("top",j.toString()),null!==le&&""!==le&&(W=W.append("q",le)),W=W.appendFacetParams(re),null!=I&&""!==I&&(W=W.append("order",I));var $={params:W},be='search?q=root_impuritiesSubstanceList_substanceUuid:"'+le+'" OR root_impuritiesSubstanceList_impuritiesTestList_impuritiesDetailsList_relatedSubstanceUuid:"'+le+'"',z=this.apiBaseUrlWithEntityContext+be;return this.http.get(z,$).pipe((0,_.U)(function(d){return d}))}},{key:"getImpuritiesByTestImpuritiesDetails",value:function(I){return this.http.get(this.apiBaseUrlWithEntityContext+'search?root_impuritiesSubstanceList_impuritiesTestList_impuritiesDetailsList_relatedSubstanceUuid:"'+I+'"').pipe((0,_.U)(function(j){return j}))}},{key:"searchImpurities",value:function(){var I=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,L=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,j=arguments.length>2?arguments[2]:void 0,le=arguments.length>3?arguments[3]:void 0,re=new T.nq;re=(re=re.append("skip",I.toString())).append("top",L.toString()),null!==j&&""!==j&&(re=re.append("q",j)),re=re.appendFacetParams(le);var W=this.apiBaseUrlWithEntityContext+"search",$={params:re};return this.http.get(W,$)}},{key:"getApiExportUrl",value:function(I,L){return this.apiBaseUrlWithEntityContext+"export/"+I+"/"+L}},{key:"loadImpurities",value:function(I){this.impurities=null!=I?I:{impuritiesSubstanceList:[],impuritiesTotal:{}}}},{key:"getImpurities",value:function(I){var L=this.apiBaseUrlWithEntityContext+"".concat(I);return this.http.get(L).pipe((0,_.U)(function(j){return j}))}},{key:"saveImpurities",value:function(){var I=this.apiBaseUrl+"impurities",j={params:new u.LE,type:"JSON",headers:{"Content-type":"application/json"}};return null!=this.impurities&&this.impurities.id?this.http.put(I,this.impurities,j):this.http.post(I,this.impurities,j)}},{key:"validateImpurities",value:function(){var I=this;return new o.y(function(L){I.validateImpur().subscribe(function(j){L.next(j),L.complete()},function(j){L.error(),L.complete()})})}},{key:"validateImpur",value:function(){var I="".concat(this.configService.configData.apiBaseUrl,"api/v1/impurities/@validate");return this.http.post(I,this.impurities)}},{key:"getJson",value:function(){return this.impurities}},{key:"addNewImpuritiesSubstance",value:function(){this.impurities.impuritiesSubstanceList.unshift({impuritiesTestList:[],impuritiesResidualSolventsList:[],impuritiesInorganicList:[]})}},{key:"addNewTest",value:function(I){this.impurities.impuritiesSubstanceList[I].impuritiesTestList.unshift({impuritiesDetailsList:[],impuritiesUnspecifiedList:[]})}},{key:"addNewImpuritiesDetails",value:function(I,L,j){this.impurities.impuritiesSubstanceList[I].impuritiesTestList[L].impuritiesDetailsList.unshift(j)}},{key:"addNewImpuritiesUnspecified",value:function(I,L){this.impurities.impuritiesSubstanceList[I].impuritiesTestList[L].impuritiesUnspecifiedList.unshift({identityCriteriaList:[]})}},{key:"addNewIdentityCriteriaUnspecified",value:function(I,L,j){this.impurities.impuritiesSubstanceList[I].impuritiesTestList[L].impuritiesUnspecifiedList[j].identityCriteriaList.unshift({})}},{key:"addNewImpuritiesResidualSolvents",value:function(I){this.impurities.impuritiesSubstanceList[I].impuritiesResidualSolventsList.unshift({})}},{key:"addNewImpuritiesInorganic",value:function(I){this.impurities.impuritiesSubstanceList[I].impuritiesInorganicList.unshift({})}},{key:"addNewImpuritiesTotal",value:function(){}},{key:"deleteImpurities",value:function(){var I=this.apiBaseUrlWithEntityContext+this.impurities.id,L=new u.LE;return this.http.delete(I,{params:L})}},{key:"deleteImpuritiesSubstance",value:function(I){this.impurities.impuritiesSubstanceList.splice(I,1)}},{key:"deleteImpuritiesTest",value:function(I,L){this.impurities.impuritiesSubstanceList[I].impuritiesTestList.splice(L,1)}},{key:"deleteImpuritiesDetails",value:function(I,L,j){this.impurities.impuritiesSubstanceList[I].impuritiesTestList[L].impuritiesDetailsList.splice(j,1)}},{key:"deleteIdentityCriteria",value:function(I,L,j,le){this.impurities.impuritiesSubstanceList[I].impuritiesTestList[L].impuritiesDetailsList[j].identityCriteriaList.splice(le,1)}},{key:"deleteImpuritiesUnspecified",value:function(I,L,j){this.impurities.impuritiesSubstanceList[I].impuritiesTestList[L].impuritiesUnspecifiedList.splice(j,1)}},{key:"deleteIdentityCriteriaUnspecified",value:function(I,L,j,le){this.impurities.impuritiesSubstanceList[I].impuritiesTestList[L].impuritiesUnspecifiedList[j].identityCriteriaList.splice(le,1)}},{key:"deleteImpuritiesResidualSolvents",value:function(I,L){this.impurities.impuritiesSubstanceList[I].impuritiesResidualSolventsList.splice(L,1)}},{key:"deleteImpuritiesInorganic",value:function(I,L){this.impurities.impuritiesSubstanceList[I].impuritiesInorganicList.splice(L,1)}},{key:"getSubstanceImpurities",value:function(I,L,j){var le=this;return this.http.get(this.baseUrl+"impuritiesListBySubstanceUuid?substanceUuid="+I+"&page="+(L+1)+"&pageSize="+j).pipe((0,_.U)(function($){return le.totalRecords=$.totalRecords,$.data}))}},{key:"getRelationshipImpurity",value:function(I){return this.http.get(this.apiBaseUrlWithEntityContext+"subRelationship/"+I).pipe((0,_.U)(function(j){return j}))}},{key:"getSubstanceDetailsBySubstanceId",value:function(I){return this.http.get(this.baseUrl+"getSubstanceDetailsBySubstanceId?substanceId="+I).pipe((0,_.U)(function(j){return j}))}},{key:"getImpuritiesListExportUrl",value:function(I){return this.baseUrl+"impuritiesListExport?substanceId="+I}}]),D}(h.q);return q.\u0275fac=function(k){return new(k||q)(y.LFG(u.eN),y.LFG(s.E),y.LFG(b.F))},q.\u0275prov=y.Yz7({token:q,factory:q.\u0275fac,providedIn:"root"}),q}()},51674:function(Ce,E,n){"use strict";n.d(E,{R:function(){return S}});var S=[{value:"default",display:"Relevance"},{value:"^root_productNDC",display:"Product ID, Ascending",displayedColumns:"productNDC",direction:"asc"},{value:"$root_productNDC",display:"Product ID, Descending",displayedColumns:"productNDC",direction:"desc"},{value:"^root_productType",display:"Product Type, Ascending",displayedColumns:"productNameType",direction:"asc"},{value:"$root_productType",display:"Product Type, Descending",displayedColumns:"productNameType",direction:"desc"},{value:"^root_status",display:"Status, Ascending",displayedColumns:"status",direction:"asc"},{value:"$root_status",display:"Status, Descending",displayedColumns:"status",direction:"desc"},{value:"^Ingredient Name",display:"Ingredient Name, A-Z",displayedColumns:"ingredientName",direction:"asc"},{value:"$Ingredient Name",display:"Ingredient Name, Z-A",displayedColumns:"ingredientName",direction:"desc"},{value:"^root_productIngredientAllList_ingredientType",display:"Ingredient Type, A-Z",displayedColumns:"ingredientType",direction:"asc"},{value:"$root_productIngredientAllList_ingredientType",display:"Ingredient Type, Z-A",displayedColumns:"ingredientType",direction:"desc"},{value:"^root_productNameAllList_productName",display:"Dosage Form, A-Z",displayedColumns:"productName",direction:"asc"},{value:"$root_productNameAllList_productName",display:"Dosage Form, Z-A",displayedColumns:"productName",direction:"desc"},{value:"^root_productIngredientAllList_dosageFormName",display:"Dosage Form, A-Z",displayedColumns:"dosageName",direction:"asc"},{value:"$root_productIngredientAllList_dosageFormName",display:"Dosage Form, Z-A",displayedColumns:"dosageName",direction:"desc"},{value:"^root_productCompanyAllList_labelerName",display:"Labeler Name, A-Z",displayedColumns:"labelerName",direction:"asc"},{value:"$root_productCompanyAllList_labelerName",display:"Labeler Name, Z-A",displayedColumns:"labelerName",direction:"desc"},{value:"^root_productCompanyAllList_countryWithoutCode",display:"Company Country, A-Z",displayedColumns:"country",direction:"asc"},{value:"$root_productCompanyAllList_countryWithoutCode",display:"Company Country, Z-A",displayedColumns:"country",direction:"desc"},{value:"^root_appTypeNumber",display:"Application Type Number, A-Z",displayedColumns:"applicationNumber",direction:"asc"},{value:"$root_appTypeNumber",display:"Application Type Number, Z-A",displayedColumns:"applicationNumber",direction:"desc"},{value:"^root_creationDate",display:"Oldest Creation"},{value:"$root_creationDate",display:"Newest Creation"},{value:"^root_lastModifiedDate",display:"Oldest Change"},{value:"$root_lastModifiedDate",display:"Newest Change"}]},42154:function(Ce,E,n){"use strict";n.d(E,{M:function(){return q}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(28784),o=n(83336),_=n(32673),s=n(50635),h=n(53141),b=n(69264),T=n(52149),y=n(52489),Y=n(86613),q=function(){var B=function(k){(0,e.Z)(N,k);var D=(0,c.Z)(N);function N(I,L,j){var le;return(0,S.Z)(this,N),(le=D.call(this,L)).http=I,le.configService=L,le.utilsService=j,le._bypassUpdateCheck=!1,le.totalRecords=0,le.apiBaseUrlWithProductEntityUrl=le.configService.configData.apiBaseUrl+"api/v1/products/",le.apiBaseUrlWithProductBrowseEntityUrl=le.configService.configData.apiBaseUrl+"api/v1/productsall/",le.apiBaseUrlWithProductElistEntityUrl=le.configService.configData.apiBaseUrl+"api/v1/productselist/",le}return(0,t.Z)(N,[{key:"getProducts",value:function(L){var j=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,re=arguments.length>3?arguments[3]:void 0,W=arguments.length>4?arguments[4]:void 0,$=new y.nq;$=($=$.append("skip",j.toString())).append("top",le.toString()),null!==re&&""!==re&&($=$.append("q",re)),$=$.appendFacetParams(W),null!=L&&""!==L&&($=$.append("order",L));var be=this.apiBaseUrlWithProductBrowseEntityUrl+"search",z={params:$};return this.http.get(be,z)}},{key:"getProductFacets",value:function(L,j,le){var re;return re=j?"".concat(this.configService.configData.apiBaseUrl,"api/v1/productsall/search/@facets?wait=false&kind=gov.hhs.gsrs.products.productall.models.ProductMainAll&skip=0&fdim=200&sideway=true&field=").concat(L.name.replace(" ","+"),"&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=").concat(j):null!=le?le:L._self,this.http.get(re)}},{key:"filterFacets",value:function(L,j){var le=this.apiBaseUrlWithProductBrowseEntityUrl+"search/@facets?wait=false&kind=gov.hhs.gsrs.products.productall.models.ProductMainAll&skip=0&fdim=200&sideway=true&field=".concat(j,"&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=").concat(L);return this.http.get(le)}},{key:"retrieveFacetValues",value:function(L){return this.http.get(L._self)}},{key:"retrieveNextFacetValues",value:function(L){var j=this,le=L._self;return L.$next?this.http.get(L.$next):this.http.get(le).pipe((0,_.w)(function(re){return re?j.http.get(re.nextPageUri):"nada"}))}},{key:"getApiExportUrl",value:function(L,j){return this.apiBaseUrlWithProductBrowseEntityUrl+"export/".concat(L,"/").concat(j)}},{key:"getProductSearchSuggestions",value:function(L){return this.http.get(this.apiBaseUrlWithProductBrowseEntityUrl+"suggest?q="+L)}},{key:"getProductProvenanceList",value:function(L){return this.http.get(this.apiBaseUrlWithProductBrowseEntityUrl+"distprovenance/"+L).pipe((0,s.U)(function(le){return le}))}},{key:"getProductElist",value:function(L){return this.http.get(this.apiBaseUrlWithProductElistEntityUrl+L).pipe((0,s.U)(function(le){return le}))}},{key:"isProductUpdated",get:function(){var L=JSON.stringify(this.product);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.productStateHash!==this.utilsService.hashCode(L)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"getProduct",value:function(L){return this.http.get(this.apiBaseUrlWithProductEntityUrl+L).pipe((0,s.U)(function(le){return le}))}},{key:"getViewProductUrl",value:function(L){return this.apiBaseUrlWithProductEntityUrl+L}},{key:"loadProduct",value:function(L){this.product=null!=L?L:{productNameList:[{}],productCodeList:[{}],productCompanyList:[{}],productComponentList:[{productLotList:[{productIngredientList:[{}]}]}]}}},{key:"saveProduct",value:function(){var L=this.apiBaseUrlWithProductEntityUrl,le={params:new u.LE,type:"JSON",headers:{"Content-type":"application/json"}};return null!=this.product&&this.product.id?this.http.put(L,this.product,le):this.http.post(L,this.product,le)}},{key:"validateProduct",value:function(){var L=this;return new o.y(function(j){L.validateProd().subscribe(function(le){j.next(le),j.complete()},function(le){j.error(),j.complete()})})}},{key:"validateProd",value:function(){return this.http.post(this.apiBaseUrlWithProductEntityUrl+"@validate",this.product)}},{key:"deleteProduct",value:function(L){return this.http.delete(this.apiBaseUrlWithProductEntityUrl+L,{})}},{key:"addNewProductName",value:function(){this.product.productNameList.unshift({productTermAndTermPartList:[]})}},{key:"deleteProductName",value:function(L){this.product.productNameList.splice(L,1)}},{key:"addNewTermAndTermPart",value:function(L){null==this.product.productNameList[L].productTermAndTermPartList&&(this.product.productNameList[L].productTermAndTermPartList=[]),this.product.productNameList[L].productTermAndTermPartList.unshift({})}},{key:"deleteTermAndTermPart",value:function(L,j){this.product.productNameList[L].productTermAndTermPartList.splice(j,1)}},{key:"addNewProductCode",value:function(){this.product.productCodeList.unshift({})}},{key:"deleteProductCode",value:function(L){this.product.productCodeList.splice(L,1)}},{key:"addNewProductCompany",value:function(){this.product.productCompanyList.unshift({})}},{key:"deleteProductCompany",value:function(L){this.product.productCompanyList.splice(L,1)}},{key:"addNewProductComponent",value:function(){this.product.productComponentList.unshift({productLotList:[{productIngredientList:[{}]}]})}},{key:"deleteProductComponent",value:function(L){this.product.productComponentList.splice(L,1)}},{key:"addNewProductLot",value:function(L){this.product.productComponentList[L].productLotList.unshift({productIngredientList:[{}]})}},{key:"deleteProductLot",value:function(L,j){this.product.productComponentList[L].productLotList.splice(j,1)}},{key:"addNewProductIngredient",value:function(L,j){this.product.productComponentList[L].productLotList[j].productIngredientList.unshift({})}},{key:"deleteProductIngredient",value:function(L,j,le){this.product.productComponentList[L].productLotList[j].productIngredientList.splice(le,1)}},{key:"copyProductComponent",value:function(L){var j=JSON.parse(JSON.stringify(L));this.product.productComponentList.unshift(j)}},{key:"copyProductLot",value:function(L,j){var le=JSON.parse(JSON.stringify(L));this.product.productComponentList[j].productLotList.unshift(le)}},{key:"copyProductIngredient",value:function(L,j,le){var re=JSON.parse(JSON.stringify(L));this.product.productComponentList[j].productLotList[le].productIngredientList.unshift(re)}}]),N}(b.q);return B.\u0275fac=function(D){return new(D||B)(Y.LFG(u.eN),Y.LFG(h.E),Y.LFG(T.F))},B.\u0275prov=Y.Yz7({token:B,factory:B.\u0275fac}),B}()},48968:function(Ce,E,n){"use strict";n.d(E,{m:function(){return T}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(53141),o=n(69264),_=n(50635),s=n(52489),h=n(86613),b=n(28784),T=function(){var y=function(Y){(0,e.Z)(B,Y);var q=(0,c.Z)(B);function B(k,D){var N;return(0,S.Z)(this,B),(N=q.call(this,D)).http=k,N.configService=D,N.apiBaseUrlWithApplicationEntityUrl=N.configService.configData.apiBaseUrl+"api/v1/applications/",N}return(0,t.Z)(B,[{key:"getSubstanceBySubstanceUuid",value:function(D){return this.http.get(this.apiBaseUrl+"substances("+D+")").pipe((0,_.U)(function(I){return I}))}},{key:"getSubstanceCodesBySubstanceUuid",value:function(D){return this.http.get(this.apiBaseUrl+"substances("+D+")/codes").pipe((0,_.U)(function(I){return I}))}},{key:"getSubstanceNamesBySubstanceUuid",value:function(D){return this.http.get(this.apiBaseUrl+"substances("+D+")/names")}},{key:"getSubstanceByAnyId",value:function(D){return this.http.get(this.apiBaseUrl+"substances("+D+")").pipe((0,_.U)(function(I){return I}))}},{key:"getSubstanceRelationships",value:function(D){var N="".concat(this.apiBaseUrl,"substances(").concat(D,")/relationships");return this.http.get(N)}},{key:"getSearchCount",value:function(D){var N="".concat(this.configService.configData.apiBaseUrl,"api/v1/searchcounts/")+D;return this.http.get(N).pipe((0,_.U)(function(I){return I}))}},{key:"searchApplicationByAppTypeNumber",value:function(D,N){return this.http.get(this.apiBaseUrlWithApplicationEntityUrl+'search?skip=0&top=10&q=root_appType:"^'+D+'" AND root_appNumber:"*'+N+'*"').pipe((0,_.U)(function(L){return L}))}},{key:"getAppIngredtMatchListSearchResult",value:function(D){var N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,I=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,L=arguments.length>3?arguments[3]:void 0,j=arguments.length>4?arguments[4]:void 0,le=new s.nq;le=(le=le.append("skip",N.toString())).append("top",I.toString()),null!==L&&""!==L&&(le=le.append("q",L)),le=le.appendFacetParams(j);var re=this.apiBaseUrl+"application/search",W={params:le};return this.http.get(re,W)}},{key:"createAppIngredMatchSearchCritieria",value:function(D){var N="";return this.getSubstanceNamesBySubstanceUuid(D).subscribe(function(I){I&&I.forEach(function(j,le){j&&j.name&&(le>0&&(N+=" OR "),N=N+'root_applicationProductList_applicationProductNameList_productName:"'+j.name+'"')})}),N}},{key:"getApplicationIngredientMatchList",value:function(D){return null}},{key:"appIngredMatchListAutoUpdateSave",value:function(D,N){return this.http.get(this.baseUrl+"appIngredMatchListAutoUpdateSaveJson?applicationId="+D+"&bdnum="+N).pipe((0,_.U)(function(L){return L}))}},{key:"getApiExportUrlBrowseSubstance",value:function(D,N,I){if(I){if("app"===I)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(D,"/appxlsx");if("prod"===I)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(D,"/prodxlsx");if("clinicaltrialsus"===I)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(D,"/ctusxlsx");if("clinicaltrialseurope"===I)return"".concat(this.configService.configData.apiBaseUrl,"api/v1/substances/export/").concat(D,"/cteuxlsx")}return""}},{key:"getApiExportUrl",value:function(D,N){return"".concat(this.configService.configData.apiBaseUrl,"api/v1/applicationssrs/export/").concat(D,"/").concat(N)}},{key:"getEtagDetails",value:function(D,N,I){return this.http.get(this.baseUrl+"getEtagDetails?etagId="+D+"&filename="+N+"&source="+I).pipe((0,_.U)(function(j){return j}))}},{key:"getManualFile",value:function(){return this.http.get(this.baseUrl+"manual",{headers:{Accept:"application/json","Content-Type":"application/json"},responseType:"blob",observe:"response"}).pipe((0,_.U)(function(N){return N}))}},{key:"getManualUrl",value:function(){return this.baseUrl+"manual"}},{key:"getSubstanceKeyType",value:function(){var D=null;return this.configService.configData&&this.configService.configData.substance&&(D=(this.configService.configData&&this.configService.configData.substance).linking.keyType.default),D}},{key:"getCurrentDate",value:function(){return new Date}}]),B}(o.q);return y.\u0275fac=function(q){return new(q||y)(h.LFG(b.eN),h.LFG(u.E))},y.\u0275prov=h.Yz7({token:y,factory:y.\u0275fac}),y}()},93666:function(Ce,E,n){"use strict";n.d(E,{X:function(){return t.y},N:function(){return e}});var t=n(24870),e={apiBaseUrl:"https://ginas.ncats.nih.gov/ginas/app/",baseHref:"",clasicBaseHref:"",production:!1,appId:"gsrs",structureEditor:"jsdraw",googleAnalyticsId:"",version:"2.3.4",isAnalyticsPrivate:!1,contactEmail:"ginas@mail.nih.gov"};e.apiBaseUrl="/ginas/app/",e.production=!0,e.baseHref="",e.clasicBaseHref="/ginas/app/",e.appId="fda",e.googleAnalyticsId="UA-136176848-3",e.isAnalyticsPrivate=!0},79758:function(Ce,E,n){"use strict";var S=n(50318),t=n(86613),e=n(1884),c=n(39117),u=n(28784),o=n(90587),_=n(98002),s=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.router=l}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.router.navigate(["/home"])}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.F0))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-page-not-found"]],decls:1,vars:0,template:function(l,i){1&l&&t._UZ(0,"div")},encapsulation:2}),g}(),h=n(88951),b=n(92507),T=n(43672),y=n(87317),Y=n(65590),q=function(){return["/browse-substance"]},B=function(A){return{search:A}},k=function(){var g=function(){function A(l,i,C){(0,c.Z)(this,A),this.data=l,this.bottomSheetRef=i,this.activatedRoute=C,this.searchTerm=l.searchTerm}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){}},{key:"dismiss",value:function(){this.bottomSheetRef.dismiss()}},{key:"googleSearchUrl",get:function(){return"http://www.google.com/search?q=".concat(encodeURIComponent(this.searchTerm))}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(T.OG),t.Y36(T.oL),t.Y36(_.gz))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-highlighted-search-action"]],decls:21,vars:12,consts:[[1,"bottom-sheet-title"],[1,"middle-fill"],["mat-icon-button","",3,"click"],["svgIcon","close"],[1,"bottom-sheet-search-term"],[1,"bottom-sheet-actions"],["mat-button","",3,"routerLink","queryParams","click"],["svgIcon","search"],["mat-button","","target","_blank",3,"routerLink","queryParams","click"],["svgIcon","open_in_new"],["mat-button","","target","_blank",3,"href","click"]],template:function(l,i){1&l&&(t.TgZ(0,"div"),t.TgZ(1,"div",0),t.TgZ(2,"span"),t._uU(3,"Search for:"),t.qZA(),t._UZ(4,"span",1),t.TgZ(5,"button",2),t.NdJ("click",function(){return i.dismiss()}),t._UZ(6,"mat-icon",3),t.qZA(),t.qZA(),t.TgZ(7,"div",4),t._uU(8),t.qZA(),t.TgZ(9,"div",5),t.TgZ(10,"a",6),t.NdJ("click",function(){return i.dismiss()}),t._uU(11," In here "),t._UZ(12,"mat-icon",7),t.qZA(),t._UZ(13,"span",1),t.TgZ(14,"a",8),t.NdJ("click",function(){return i.dismiss()}),t._uU(15," In different tab "),t._UZ(16,"mat-icon",9),t.qZA(),t._UZ(17,"span",1),t.TgZ(18,"a",10),t.NdJ("click",function(){return i.dismiss()}),t._uU(19," In Google "),t._UZ(20,"mat-icon",9),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(8),t.hij(' "',i.searchTerm,'" '),t.xp6(2),t.Q6J("routerLink",t.DdM(6,q))("queryParams",t.VKq(7,B,i.searchTerm)),t.xp6(4),t.Q6J("routerLink",t.DdM(9,q))("queryParams",t.VKq(10,B,i.searchTerm)),t.xp6(4),t.Q6J("href",i.googleSearchUrl,t.LSH))},directives:[y.lW,Y.Hw,y.zs,_.yS],styles:[".bottom-sheet-title[_ngcontent-%COMP%]{font-weight:500;margin-bottom:10px;display:-ms-flexbox;display:flex}.bottom-sheet-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;margin-top:7px}"]}),g}(),D=n(83336),N=n(46751),I=n(56101),L=n(69264),j=n(25474),le=n(41944),re=n(93945),W=n(89173),$=n(78947),be=n(54987),d=n(53158),Q=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C,w){var V;return(0,c.Z)(this,i),(V=l.call(this,w)).http=C,V.configService=w,V}return(0,e.Z)(i,[{key:"fetchJobs",value:function(){var w="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(w,"scheduledjobs"))}},{key:"fetchJob",value:function(w){var V="".concat(this.configService.configData&&this.configService.configData.apiBaseUrl||"/","api/v1/");return this.http.get("".concat(V,"scheduledjobs(").concat(w,")"))}},{key:"runJob",value:function(w){return this.http.get(w).pipe(function z(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,l=g&&"object"==typeof g?g:{count:g},i=l.count,C=void 0===i?1/0:i,w=l.delay,V=l.resetOnSuccess,Ze=void 0!==V&&V;return C<=0?W.y:(0,le.e)(function(Ot,Bt){var Fn,cn=0;!function Kn(){var fi=!1;Fn=Ot.subscribe((0,re.x)(Bt,function($n){Ze&&(cn=0),Bt.next($n)},void 0,function($n){if(cn++0&&(this.file=i.target.files[0],this.filename=this.file.name,this.readFile())}},{key:"openInput",value:function(){document.getElementById("fileInput").click()}},{key:"fetchDrafts",value:function(){this.values=[];for(var i=Object.keys(localStorage),C=i.length;C--;)if(i[C].startsWith("gsrs-draft-")){var w=JSON.parse(localStorage.getItem(i[C]));w.key=i[C],w.fromNow=_e(w.date).fromNow(),this.values.push(w)}this.filtered=this.values.sort(function(V,Ze){return Ze.date-V.date}),this.filterToggle(this.json&&this.json.uuid?"substance":"register")}},{key:"saveDraft",value:function(){this.json=this.substanceFormService.cleanSubstance();var i=(new Date).getTime(),C="gsrs-draft-"+i,w=this.json.uuid?this.json.uuid:"register",V=this.json.substanceClass,Ze=null;this.json.names.forEach(function(Bt){Bt.displayName&&(Ze=Bt.name)}),!Ze&&this.json.names.length>0&&(Ze=this.json.names[0].name),localStorage.setItem(C,JSON.stringify({uuid:w,date:i,type:V,name:Ze,substance:this.json}))}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(K.B),t.Y36(G.so),t.Y36(ce.FW),t.Y36(S.H7),t.Y36(_.F0),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-substance-drafts"]],decls:29,vars:8,consts:[["mat-dialog-header",""],[1,"form-row","head"],[1,"title"],[1,"middle-fill"],["mat-icon-button","","matTooltip","Close Dialog","mat-dialog-close",""],["svgIcon","clear"],["mat-table","","matSort","",3,"dataSource","matSortChange",4,"ngIf"],["class","form-row","style","padding:50px;font-size:17px",4,"ngIf"],["mat-dialog-actions",""],[1,"form-row"],["class","checkbox","style","padding:10px;",4,"ngIf"],[1,"checkbox",2,"padding","10px"],["matTooltip","selected",3,"ngModel","change"],["mat-flat-button","","color","primary","matTooltip","Save a copy of all local drafts to a file",2,"margin-right","10px",3,"href","download"],[1,"file-row"],["matTooltip","choose a local file of draft backups",1,"mat-raised-button","mat-primary",2,"margin-right","10px",3,"click"],[1,"file-name",3,"ngClass"],["id","fileInput","hidden","","type","file","name","file1","accept",".json",3,"change"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","delete"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","type"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","name"],["matColumnDef","date"],["matColumnDef","uuid"],["matColumnDef","load"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-icon-button","","matTooltip","Delete draft",3,"click"],["svgIcon","delete_forever"],["mat-header-cell","","mat-sort-header",""],["style","margin-left:8px",4,"ngIf"],[2,"margin-left","8px"],["mat-button","",3,"click"],["mat-header-row",""],["mat-row",""],[1,"form-row",2,"padding","50px","font-size","17px"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"div",2),t._uU(3,"Saved Drafts"),t.qZA(),t._UZ(4,"span",3),t.TgZ(5,"button",4),t._UZ(6,"mat-icon",5),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"mat-dialog-content"),t.YNc(8,et,21,3,"table",6),t.YNc(9,Ht,2,0,"div",7),t.qZA(),t.TgZ(10,"div",8),t.TgZ(11,"div",9),t.YNc(12,nn,3,1,"div",10),t.TgZ(13,"div",11),t.TgZ(14,"mat-checkbox",12),t.NdJ("change",function(){return i.filterToggle("register")}),t._uU(15," Show only new registrations "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(16,"div",9),t.TgZ(17,"a",13),t.TgZ(18,"span"),t._uU(19,"Save Backup"),t.qZA(),t.qZA(),t.TgZ(20,"div",14),t.TgZ(21,"button",15),t.NdJ("click",function(){return i.openInput()}),t._uU(22,"Load A Backup"),t.qZA(),t.TgZ(23,"div",16),t._uU(24),t.qZA(),t.TgZ(25,"input",17),t.NdJ("change",function(w){return i.onFileSelect(w)}),t.qZA(),t.qZA(),t._UZ(26,"span",3),t.TgZ(27,"button",18),t._uU(28,"Close"),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(8),t.Q6J("ngIf",i.filtered.length>0),t.xp6(1),t.Q6J("ngIf",0==i.filtered.length),t.xp6(3),t.Q6J("ngIf",i.data.uuid),t.xp6(2),t.Q6J("ngModel",i.onlyRegister),t.xp6(3),t.MGl("download","",i.fileName,".json"),t.Q6J("href",i.downloadJsonHref,t.LSH),t.xp6(6),t.Q6J("ngClass",i.filename?"test":"italics"),t.xp6(1),t.Oqu(i.filename?i.filename:"no file chosen"))},directives:[y.lW,Me.gM,G.ZT,Y.Hw,G.xY,ve.O5,ue.BZ,lt.YE,ue.w1,ue.fO,ue.ge,ue.Dz,ue.ev,lt.nU,ue.as,ue.XQ,ue.nj,ue.Gk,G.H8,Xe.oG,o.JJ,o.On,y.zs,ve.mk],pipes:[ve.uU],styles:[".form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row}.title[_ngcontent-%COMP%]{font-size:1.17em;font-weight:700;padding-top:15px}.head[_ngcontent-%COMP%]{padding-bottom:15px}.italics[_ngcontent-%COMP%]{font-style:italic;color:var(--text-color)}.file-row[_ngcontent-%COMP%]{width:40%;height:40px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}"]}),g}(),kt=n(74742),It=n(44770),$e=n(43365);function Ae(g,A){if(1&g&&(t.TgZ(0,"div",9),t.TgZ(1,"div",10),t._uU(2,"Email: "),t.qZA(),t.TgZ(3,"div",11),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.user.user.email)}}function X(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=A.$implicit,i=A.last;t.xp6(1),t.AsE(" ",l,"",i?"":", "," ")}}function ne(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=A.$implicit,i=A.last;t.xp6(1),t.AsE(" ",l.name,"",i?"":", "," ")}}function me(g,A){1&g&&(t.TgZ(0,"div",15),t._UZ(1,"mat-progress-spinner",18),t.qZA())}function Oe(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"div"),t.TgZ(2,"mat-form-field"),t.TgZ(3,"input",19),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(3).oldPassword=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-form-field"),t.TgZ(6,"input",20),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(3).newPassword=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"div"),t.TgZ(8,"mat-form-field"),t.TgZ(9,"input",21),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(3).newPasswordConfirm=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(10,"div"),t.TgZ(11,"button",22),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).validatePassword()}),t._uU(12,"Submit Change"),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(3),t.Q6J("disabled",i.loading)("ngModel",i.oldPassword),t.xp6(3),t.Q6J("disabled",i.loading)("ngModel",i.newPassword),t.xp6(3),t.Q6J("disabled",i.loading)("ngModel",i.newPasswordConfirm),t.xp6(2),t.Q6J("disabled",i.loading)}}function He(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",15),t.TgZ(1,"div",16),t.TgZ(2,"button",17),t.NdJ("click",function(){t.CHM(l);var w=t.oxw(2);return w.changePassword=!w.changePassword}),t._uU(3),t.qZA(),t.YNc(4,me,2,0,"div",13),t.qZA(),t.YNc(5,Oe,13,7,"span",2),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(2),t.Q6J("disabled",i.loading),t.xp6(1),t.hij(" ",i.changePassword?"Cancel":"Change Password"," "),t.xp6(1),t.Q6J("ngIf",i.loading),t.xp6(1),t.Q6J("ngIf",!0===i.changePassword)}}function At(g,A){if(1&g&&(t.TgZ(0,"div",23),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij(" ",l.message," ")}}function Ft(g,A){if(1&g&&(t.TgZ(0,"mat-dialog-content"),t.TgZ(1,"div",6),t.TgZ(2,"div",7),t.YNc(3,Ae,5,1,"div",8),t.TgZ(4,"div",9),t.TgZ(5,"div",10),t._uU(6," Roles: "),t.qZA(),t.TgZ(7,"div",11),t.YNc(8,X,2,2,"span",12),t.qZA(),t.qZA(),t.TgZ(9,"div",9),t.TgZ(10,"div",10),t._uU(11," Groups: "),t.qZA(),t.TgZ(12,"div",11),t.YNc(13,ne,2,2,"span",12),t.qZA(),t.qZA(),t.qZA(),t.YNc(14,He,6,4,"div",13),t.qZA(),t.YNc(15,At,2,1,"div",14),t.qZA()),2&g){var l=t.oxw();t.xp6(3),t.Q6J("ngIf",l.user.user.email&&""!==l.user.user.email),t.xp6(5),t.Q6J("ngForOf",l.user.roles),t.xp6(5),t.Q6J("ngForOf",l.user.groups),t.xp6(1),t.Q6J("ngIf",!l.newUser),t.xp6(1),t.Q6J("ngIf",l.changePassword)}}var sn=function(){var g=function(){function A(l,i,C,w,V){(0,c.Z)(this,A),this.authService=l,this.adminService=i,this.router=C,this.dialogRef=w,this.dialog=V,this.newPassword="",this.oldPassword="",this.newPasswordConfirm="",this.changePassword=!1,this.message="",this.loading=!1}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.authService.getAuth().pipe((0,J.q)(1)).subscribe(function(C){i.user=C})}},{key:"viewDownloads",value:function(){var i=this;this.router.navigate(["/user-downloads"]),setTimeout(function(){i.dialogRef.close()},400)}},{key:"validatePassword",value:function(){var i=this;this.newPassword!==this.newPasswordConfirm?(this.message="Error: passwords do not match",this.newPassword="",this.newPasswordConfirm=""):this.newPassword===this.oldPassword?this.message="Error: no change in password detected":(this.loading=!0,this.adminService.changeMyPassword(this.oldPassword,this.newPassword,this.user.id).pipe((0,J.q)(1)).subscribe(function(C){i.message="Password updated successfully!",i.loading=!1,i.newPassword="",i.newPasswordConfirm="",i.oldPassword="",i.changePassword=!1},function(C){i.loading=!1,C.error&&(0,te.isString)(C.error)?i.message="Error - "+C.error:(i.newPassword="",i.newPasswordConfirm="",i.changePassword=!i.changePassword,i.message="Error: unknown error")}))}},{key:"viewDrafts",value:function(){this.dialog.open(an,{maxHeight:"85%",width:"70%",data:{profile:!0}}).afterClosed().subscribe(function(C){})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(h.e),t.Y36(Q),t.Y36(_.F0),t.Y36(G.so),t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-user-profile"]],decls:14,vars:5,consts:[["mat-dialog-title",""],[1,"username"],[4,"ngIf"],["mat-button","",3,"disabled","click"],[1,"middle-fill"],["mat-button","","mat-dialog-close","",3,"disabled"],[1,"user-container"],[1,"left-side"],["class","label-value",4,"ngIf"],[1,"label-value"],[1,"label"],[1,"value"],[4,"ngFor","ngForOf"],["class","password-column",4,"ngIf"],["class","message",4,"ngIf"],[1,"password-column"],[1,"spinner-container"],["mat-button","",1,"mat-flat-button",3,"disabled","click"],["color","primary","mode","indeterminate","diameter","30",1,"spinner"],["matInput","","type","password","placeholder","old password","required","","name","Password",3,"disabled","ngModel","ngModelChange"],["matInput","","type","password","placeholder","new password","required","","name","Password",3,"disabled","ngModel","ngModelChange"],["matInput","","type","password","placeholder","confirm new password","required","","name","Password",3,"disabled","ngModel","ngModelChange"],["mat-button","",1,"mat-primary","mat-flat-button",3,"disabled","click"],[1,"message"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"h2"),t._uU(2,"User Profile"),t.qZA(),t.TgZ(3,"div",1),t._uU(4),t.qZA(),t.qZA(),t.YNc(5,Ft,16,5,"mat-dialog-content",2),t.TgZ(6,"mat-dialog-actions"),t.TgZ(7,"button",3),t.NdJ("click",function(){return i.viewDownloads()}),t._uU(8," View Downloads "),t.qZA(),t.TgZ(9,"button",3),t.NdJ("click",function(){return i.viewDrafts()}),t._uU(10," View Edit Drafts "),t.qZA(),t._UZ(11,"span",4),t.TgZ(12,"button",5),t._uU(13,"Close"),t.qZA(),t.qZA()),2&l&&(t.xp6(4),t.hij(" ",i.user.user.username," "),t.xp6(1),t.Q6J("ngIf",i.user),t.xp6(2),t.Q6J("disabled",i.loading),t.xp6(2),t.Q6J("disabled",i.loading),t.xp6(3),t.Q6J("disabled",i.loading))},directives:[G.uh,ve.O5,G.xY,ve.sg,y.lW,kt.Ou,It.KE,$e.Nt,o.Fj,o.Q7,o.JJ,o.On,G.H8,G.ZT],styles:[".user-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}mat-card[_ngcontent-%COMP%]{margin:auto}.username[_ngcontent-%COMP%]{font-size:20px;margin:5px;font-weight:500}.left-side[_ngcontent-%COMP%]{width:70%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.label-value[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;margin:7px}.label-value[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{min-width:100px;font-weight:500}.message[_ngcontent-%COMP%]{text-align:center}.password-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.spinner-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}"]}),g}();function Xt(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",14),t.TgZ(1,"div",15),t._uU(2,"Or paste JSON here:"),t.qZA(),t.TgZ(3,"textarea",16),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw().pastedJSON=w})("ngModelChange",function(){return t.CHM(l),t.oxw().checkLoaded()}),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(3),t.Q6J("ngModel",i.pastedJSON)}}function gn(g,A){if(1&g&&(t.TgZ(0,"div",17),t._uU(1),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.hij(" ",l.message," ")}}var vn=function(){var g=function(){function A(l,i,C){(0,c.Z)(this,A),this.router=l,this.dialogRef=i,this.data=C,this.message="",this.loaded=!1,this.uploaded=!1,this.title="Substance Import"}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.data&&this.data.title&&(this.title=this.data.title)}},{key:"uploadFile",value:function(i){var C=this;if(1!==i.target.files.length)this.message="No file selected",this.loaded=!1;else{this.filename=i.target.files[0].name;var V=new FileReader;V.onloadend=function(Ze){var Ot=V.result.toString();C.jsonValid(Ot)?JSON.parse(Ot).substanceClass?(C.loaded=!0,C.record=Ot,C.message=""):(C.message="Error: Invalid JSON format",C.loaded=!1):(C.message="Error: Invalid file format",C.loaded=!1)},V.readAsText(i.target.files[0]),this.uploaded=!0}}},{key:"useFile",value:function(){!this.uploaded&&this.pastedJSON&&(JSON.parse(this.pastedJSON).substanceClass?(this.loaded=!0,this.record=this.pastedJSON,this.message=""):(this.message="Error: Invalid JSON format",this.loaded=!1)),this.dialogRef.close(this.record)}},{key:"checkLoaded",value:function(){this.loaded=!0;try{JSON.parse(this.pastedJSON),this.message=""}catch(i){this.message="Error: Invalid JSON format in pasted string",this.loaded=!1}}},{key:"openInput",value:function(){document.getElementById("fileInput").click()}},{key:"jsonValid",value:function(i){try{JSON.parse(i)}catch(C){return!1}return!0}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.F0),t.Y36(G.so),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-substance-edit-import-dialog"]],decls:23,vars:6,consts:[["mat-dialog-title","",1,"mat-dialog-title","class"],[1,"colorblue"],["mat-dialog-content","",1,"mat-dialog-content"],[1,"info"],[1,"full-row"],["mat-stroked-button","",1,"button-select-file",3,"click"],[1,"file-name",3,"ngClass"],["id","fileInput","hidden","","type","file","name","file1","accept",".json",3,"change"],["class","full-row-col","style","margin-top:10px;",4,"ngIf"],["class","message",4,"ngIf"],["mat-dialog-actions","",1,"mat-dialog-actions"],["mat-stroked-button","","matDialogClose","",1,"button-cancel","colorred"],[1,"middle-fill"],["mat-flat-button","",1,"button-import",3,"disabled","click"],[1,"full-row-col",2,"margin-top","10px"],[1,"padbottom20px",2,"width","100%"],["cdkAutosizeMinRows","8",1,"bordergray",2,"min-height","180px",3,"ngModel","ngModelChange"],[1,"message"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"h3",1),t._uU(2),t.qZA(),t.qZA(),t._UZ(3,"hr"),t.TgZ(4,"div",2),t.TgZ(5,"div",3),t._uU(6," Select a .json file to import into a new edit form. "),t.qZA(),t.TgZ(7,"div",4),t.TgZ(8,"div"),t.TgZ(9,"button",5),t.NdJ("click",function(){return i.openInput()}),t._uU(10,"Select File to Import"),t.qZA(),t.qZA(),t.TgZ(11,"div",6),t._uU(12),t.qZA(),t.TgZ(13,"input",7),t.NdJ("change",function(w){return i.uploadFile(w)}),t.qZA(),t.qZA(),t.YNc(14,Xt,4,1,"div",8),t.YNc(15,gn,2,1,"div",9),t.qZA(),t._UZ(16,"hr"),t.TgZ(17,"div",10),t.TgZ(18,"button",11),t._uU(19,"Cancel"),t.qZA(),t._UZ(20,"span",12),t.TgZ(21,"button",13),t.NdJ("click",function(){return i.useFile()}),t._uU(22,"Import"),t.qZA(),t.qZA()),2&l&&(t.xp6(2),t.Oqu(i.title),t.xp6(9),t.Q6J("ngClass",i.filename?"test":"italics"),t.xp6(1),t.Oqu(i.filename?i.filename:"no file chosen"),t.xp6(2),t.Q6J("ngIf",!i.record),t.xp6(1),t.Q6J("ngIf",i.message),t.xp6(6),t.Q6J("disabled",!i.loaded))},directives:[G.uh,G.xY,y.lW,ve.mk,ve.O5,o.Fj,o.JJ,o.On,G.H8,G.ZT],styles:[".message[_ngcontent-%COMP%]{padding:10px}.info[_ngcontent-%COMP%]{padding:20px 20px 30px}.file-import[_ngcontent-%COMP%], .file-row[_ngcontent-%COMP%]{width:100%}.italics[_ngcontent-%COMP%]{font-style:italic;color:var(--text-color)}.file-name[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;margin-left:15px;margin-top:auto;margin-bottom:auto;font-size:15px;color:var(--deprecated-color)}.full-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;padding:15px}.full-row-col[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:start;justify-content:flex-start;padding:10px}.button-select-file[_ngcontent-%COMP%]{color:#007cba;border:1px solid #007CBA}.button-cancel[_ngcontent-%COMP%]{background-color:#fff;border:1px solid #D60036}.button-import[_ngcontent-%COMP%]{color:#fff;background-color:#007cba;border:1px solid 7CBA}.colorwhite[_ngcontent-%COMP%]{color:#fff}.colorred[_ngcontent-%COMP%]{color:red}.colorblue[_ngcontent-%COMP%]{color:#007cba}.bordergray[_ngcontent-%COMP%]{border:1px solid #252222}.padbottom20px[_ngcontent-%COMP%]{padding-bottom:20px}hr[_ngcontent-%COMP%]{border:none;border-top:1px solid #7e837e;color:#333;overflow:visible;text-align:center;height:5px}"]}),g}(),hn=n(89948),jn=n(54244),Jn=n(93392),oi=n(84844),ri=n(50253),un=function(){var g=function(){function A(){(0,c.Z)(this,A),this.registeredSearchComponents={}}return(0,e.Z)(A,[{key:"registerSearchComponent",value:function(i){this.registeredSearchComponents[i]=new ri.x}},{key:"setSearchComponentValueEvent",value:function(i){return this.registeredSearchComponents[i].asObservable()}},{key:"unregisterSearchComponent",value:function(i){this.registeredSearchComponents[i].complete(),this.registeredSearchComponents[i]=null}},{key:"setSearchValue",value:function(i){var C=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";this.registeredSearchComponents[i]&&this.registeredSearchComponents[i].next(C)}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac,providedIn:oi.d}),g}(),mn=function(){var g=function(){function A(){(0,c.Z)(this,A),this.wildcardText=new ri.x,this.topSearchBox=new ri.x,this.wildCardObservable=this.wildcardText.asObservable(),this.topSearchObservable=this.topSearchBox.asObservable()}return(0,e.Z)(A,[{key:"getWildCardText",value:function(i){this.wildcardText.next(i)}},{key:"getTopSearchBoxText",value:function(i){this.topSearchBox.next(i)}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac,providedIn:"root"}),g}(),zt=n(19946),qe=n(82796),pt=n(19975),Ne=n(43785);function Re(g,A){if(1&g&&(t.TgZ(0,"a",25),t.TgZ(1,"div",6),t._UZ(2,"mat-icon",26),t.TgZ(3,"div",8),t._uU(4,"Login"),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.Q6J("href",l.pfdaBaseUrl+"login",t.LSH)}}function tt(g,A){if(1&g&&(t.TgZ(0,"div",8),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Oqu(l.auth.identifier)}}function Ke(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",27),t.NdJ("click",function(){return t.CHM(l),t.oxw().increaseMenuZindex()}),t.TgZ(1,"div",6),t._UZ(2,"mat-icon",26),t.YNc(3,tt,2,1,"div",28),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(),C=t.MAs(32);t.Q6J("matMenuTriggerFor",C),t.xp6(3),t.Q6J("ngIf",i.auth&&i.auth.identifier)}}var vt=function(){var g=function(){function A(l,i,C,w,V,Ze){var Ot=this;(0,c.Z)(this,A),this.router=l,this.activatedRoute=i,this.configService=C,this.overlayContainerService=w,this.substanceTextSearchService=V,this.authService=Ze,this.subscriptions=[];var Bt=this.authService.getAuth().subscribe(function(cn){Ot.auth=cn});this.subscriptions.push(Bt)}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.pfdaBaseUrl=this.configService.configData.pfdaBaseUrl||"/";var C=this.configService.environment.baseHref||"/";this.logoSrcPath="".concat(C,"assets/images/pfda/pfda-logo.png"),this.homeIconPath="".concat(C,"assets/images/pfda/home.svg"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.activatedRoute.snapshot.queryParamMap.has("search")&&(this.searchValue=this.activatedRoute.snapshot.queryParamMap.get("search"));var w=this.activatedRoute.queryParamMap.subscribe(function(Ze){i.searchValue=Ze.get("search")});this.subscriptions.push(w),this.substanceTextSearchService.registerSearchComponent("main-substance-search");var V=this.substanceTextSearchService.setSearchComponentValueEvent("main-substance-search").subscribe(function(Ze){i.searchValue=Ze});this.subscriptions.push(V)}},{key:"processSubstanceSearch",value:function(i){this.navigateToSearchResults(i)}},{key:"navigateToSearchResults",value:function(i){this.router.navigate(["/browse-substance"],{queryParams:i?{search:i}:null})}},{key:"increaseMenuZindex",value:function(){this.overlayContainer.style.zIndex="1001"}},{key:"removeZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.F0),t.Y36(_.gz),t.Y36(b.E),t.Y36(jn.Xj),t.Y36(un),t.Y36(h.e))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-pfda-toolbar"]],decls:56,vars:13,consts:[[1,"pfda-toolbar"],[1,"logo-container"],[1,"pfda-logo"],["aria-label","precisionFDA Home",3,"href"],["alt","precisionFDA Home",3,"src"],["aria-label","My Home",3,"href"],[1,"pfda-toolbar-button"],["svgIcon","pfda_home",1,"pfda-toolbar-button-icon"],[1,"pfda-toolbar-button-title"],[1,"pfda-toolbar-spacer"],["routerLink","/home","aria-label","GSRS Home"],[1,"pfda-toolbar-button","active"],["svgIcon","pfda_gsrs",1,"pfda-toolbar-button-icon"],[1,"middle-fill"],["eventCategory","topSearch",1,"top-search",3,"searchValue","searchPerformed","opened","closed"],["href","mailto:precisionfda-support@dnanexus.com"],["svgIcon","pfda_support",1,"pfda-toolbar-button-icon"],[3,"href"],["svgIcon","pfda_questionmark",1,"pfda-toolbar-button-icon"],["class","pfda-user-button",3,"href",4,"ngIf"],["class","pfda-user-button","matTooltip","user menu",3,"matMenuTriggerFor","click",4,"ngIf"],[3,"closed"],["accountMenu","matMenu"],["mat-menu-item","",3,"href"],["mat-menu-item","","routerLink","/user-downloads"],[1,"pfda-user-button",3,"href"],["svgIcon","account_circle",1,"pfda-toolbar-button-icon"],["matTooltip","user menu",1,"pfda-user-button",3,"matMenuTriggerFor","click"],["class","pfda-toolbar-button-title",4,"ngIf"]],template:function(l,i){1&l&&(t.TgZ(0,"mat-toolbar",0),t.TgZ(1,"div",1),t.TgZ(2,"span",2),t.TgZ(3,"a",3),t._UZ(4,"img",4),t.qZA(),t.qZA(),t.qZA(),t.TgZ(5,"a",5),t.TgZ(6,"div",6),t._UZ(7,"mat-icon",7),t.TgZ(8,"div",8),t._uU(9,"Back Home"),t.qZA(),t.qZA(),t.qZA(),t._UZ(10,"div",9),t.TgZ(11,"a",10),t.TgZ(12,"div",11),t._UZ(13,"mat-icon",12),t.TgZ(14,"div",8),t._uU(15,"GSRS"),t.qZA(),t.qZA(),t.qZA(),t._UZ(16,"span",13),t.TgZ(17,"app-substance-text-search",14),t.NdJ("searchPerformed",function(w){return i.processSubstanceSearch(w)})("opened",function(){return i.increaseMenuZindex()})("closed",function(){return i.removeZindex()}),t.qZA(),t.TgZ(18,"a",15),t.TgZ(19,"div",6),t._UZ(20,"mat-icon",16),t.TgZ(21,"div",8),t._uU(22,"Support"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(23,"a",17),t.TgZ(24,"div",6),t._UZ(25,"mat-icon",18),t.TgZ(26,"div",8),t._uU(27,"Getting Started"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(28,"div"),t.YNc(29,Re,5,1,"a",19),t.YNc(30,Ke,4,2,"a",20),t.TgZ(31,"mat-menu",21,22),t.NdJ("closed",function(){return i.removeZindex()}),t.TgZ(33,"a",23),t.TgZ(34,"span"),t._uU(35,"Profile"),t.qZA(),t.qZA(),t.TgZ(36,"a",24),t.TgZ(37,"span"),t._uU(38,"User Downloads"),t.qZA(),t.qZA(),t.TgZ(39,"a",23),t.TgZ(40,"span"),t._uU(41,"Manage Licenses"),t.qZA(),t.qZA(),t.TgZ(42,"a",23),t.TgZ(43,"span"),t._uU(44,"Notification Settings"),t.qZA(),t.qZA(),t._UZ(45,"mat-divider"),t.TgZ(46,"a",23),t.TgZ(47,"span"),t._uU(48,"About"),t.qZA(),t.qZA(),t.TgZ(49,"a",23),t.TgZ(50,"span"),t._uU(51,"Guidelines"),t.qZA(),t.qZA(),t._UZ(52,"mat-divider"),t.TgZ(53,"a",23),t.TgZ(54,"span"),t._uU(55,"Log Out"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(3),t.Q6J("href",i.pfdaBaseUrl,t.LSH),t.xp6(1),t.Q6J("src",i.logoSrcPath,t.LSH),t.xp6(1),t.Q6J("href",i.pfdaBaseUrl+"home",t.LSH),t.xp6(12),t.Q6J("searchValue",i.searchValue),t.xp6(6),t.Q6J("href",i.pfdaBaseUrl+"docs",t.LSH),t.xp6(6),t.Q6J("ngIf",!i.auth),t.xp6(1),t.Q6J("ngIf",i.auth),t.xp6(3),t.Q6J("href",i.pfdaBaseUrl+"profile",t.LSH),t.xp6(6),t.Q6J("href",i.pfdaBaseUrl+"licenses",t.LSH),t.xp6(3),t.Q6J("href",i.pfdaBaseUrl+"account/notifications",t.LSH),t.xp6(4),t.Q6J("href",i.pfdaBaseUrl+"about",t.LSH),t.xp6(3),t.Q6J("href",i.pfdaBaseUrl+"guidelines",t.LSH),t.xp6(4),t.Q6J("href",i.pfdaBaseUrl+"ginas/app/logout",t.LSH))},directives:[zt.Ye,Y.Hw,_.yS,Ne.e,ve.O5,Me.gM,qe.p6,qe.VK,qe.OP,pt.d],styles:[".pfda-toolbar[_ngcontent-%COMP%]{background-color:#343e4d;color:#fff;font-family:Lato,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:13px;font-weight:400;line-height:16px;padding:0 8px;height:auto}.pfda-toolbar[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:inherit;text-decoration:none}@media (min-width: 850px){.pfda-toolbar[_ngcontent-%COMP%]{padding:0 32px;height:64px}}.pfda-toolbar-inner[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.pfda-logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:144px;margin-top:4px}.pfda-toolbar-button[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex-item-align:end;align-self:flex-end;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:10px 6px}.pfda-toolbar-button[_ngcontent-%COMP%]:hover{color:#a0c2e0}.pfda-toolbar-button.active[_ngcontent-%COMP%]{color:#fff;background-color:#2f5373}.pfda-toolbar-button-icon[_ngcontent-%COMP%], .pfda-toolbar-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;height:18px;margin:3px 0 2px}.pfda-toolbar-button-title[_ngcontent-%COMP%]{display:none;margin-top:4px}@media (min-width: 850px){.pfda-toolbar-button-title[_ngcontent-%COMP%]{display:inline}}.pfda-toolbar-spacer[_ngcontent-%COMP%]{border-right:1px solid #5f768a;width:1px;height:38px;margin:0 4px}.pfda-user-button[_ngcontent-%COMP%]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]}),g}(),Rt=n(88325),rn=n(76775),Nn=["notification"],$t=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.notificationService=l,this.subscriptions=[]}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.appNotification.nativeElement.classList.add("hidden");var C=this.notificationService.notificationEvent.subscribe(function(w){i.setNotification(w)});this.subscriptions.push(C)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()}),clearTimeout(this.notificationTimer)}},{key:"setNotification",value:function(i){var C=this;this.notifcationType=i.type||Rt.k.default,this.notificationMessage=i.message,this.appNotification.nativeElement.classList.remove("hidden"),this.appNotification.nativeElement.classList.add(Rt.k[this.notifcationType]),this.appNotification.nativeElement.classList.add("showing"),this.notificationTimer=setTimeout(function(){C.removeNotification(i.type),C.notificationTimer=null},i.milisecondsToShow||5e3)}},{key:"removeNotification",value:function(i){null!=this.notificationTimer&&clearTimeout(this.notificationTimer),this.appNotification.nativeElement.classList.remove("showing"),this.appNotification.nativeElement.classList.add("hidden"),this.appNotification.nativeElement.classList.remove(Rt.k[this.notifcationType])}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(rn.a))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-main-notification"]],viewQuery:function(l,i){var C;1&l&&t.Gf(Nn,7),2&l&&t.iGM(C=t.CRH())&&(i.appNotification=C.first)},decls:3,vars:1,consts:[[1,"main-notification","hidden"],["notification",""]],template:function(l,i){1&l&&(t.TgZ(0,"div",0,1),t._uU(2),t.qZA()),2&l&&(t.xp6(2),t.hij(" ",i.notificationMessage,"\n"))},styles:[".main-notification[_ngcontent-%COMP%]{width:100%;text-align:center;position:fixed;z-index:100;transition:all .2s ease;overflow:hidden;box-sizing:border-box;padding:10px;font-weight:500;top:64px}.main-notification.hidden[_ngcontent-%COMP%]{height:0;padding:0}.main-notification.showing[_ngcontent-%COMP%]{height:auto;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024}.main-notification.default[_ngcontent-%COMP%]{background-color:var(--link-primary-color);color:var(--regular-white-color)}.main-notification.success[_ngcontent-%COMP%]{background-color:var(--notif-success-bg-color);color:var(dark-grey-color)}.main-notification.error[_ngcontent-%COMP%]{background-color:var(--notif-error-bg-color);color:var(--regular-black-color)}"]}),g}(),fn=n(53141);function ln(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",5),t.NdJ("click",function(){return t.CHM(l),t.oxw().extendSession()}),t._uU(1,"Extend Session"),t.qZA()}}function _n(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",5),t.NdJ("click",function(){return t.CHM(l),t.oxw().login()}),t._uU(1,"Login"),t.qZA()}}var xn=function(){var g=function(){function A(l,i,C,w){(0,c.Z)(this,A),this.dialogRef=l,this.data=i,this.router=C,this.http=w,this.sessionExpirationWarning=null,this.sessionExpirationWarning=i.sessionExpirationWarning,this.sessionExpiringAt=i.sessionExpiringAt}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.updateDialogInterval=setInterval(function(){i.updateDialog()})}},{key:"ngOnDestroy",value:function(){clearInterval(this.updateDialogInterval)}},{key:"getCurrentTime",value:function(){return Math.floor((new Date).getTime()/1e3)}},{key:"updateDialog",value:function(){var i=this.getCurrentTime();if(this.timeRemainingSeconds=this.sessionExpiringAt-i,this.timeRemainingSeconds>0){var C=Math.floor(this.timeRemainingSeconds/60),w=String(this.timeRemainingSeconds%60).padStart(2,"0");this.dialogTitle="Session Ending Soon",this.dialogMessage="You will be logged out in ".concat(C,":").concat(w)}else this.dialogTitle="Session Ended",this.dialogMessage="Your session has expired, please login again."}},{key:"closeDialog",value:function(){this.dialogRef.close(!1)}},{key:"extendSession",value:function(){var i=this;this.http.get(this.sessionExpirationWarning.extendSessionApiUrl).subscribe(function(w){i.dialogRef.close(!0)},function(w){console.log("Error extending session: ",w)},function(){})}},{key:"login",value:function(){window.location.assign("/login")}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(G.so),t.Y36(G.WI),t.Y36(_.F0),t.Y36(u.eN))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-session-expiration-dialog"]],decls:8,vars:4,consts:[["mat-dialog-title","",1,"dialog-title"],["mat-dialog-content",""],["mat-dialog-actions","",1,"dialog-actions","flex-row"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"click",4,"ngIf"],["mat-flat-button","","color","primary",3,"click"]],template:function(l,i){1&l&&(t.TgZ(0,"h2",0),t._uU(1),t.qZA(),t.TgZ(2,"div",1),t._uU(3),t.qZA(),t.TgZ(4,"div",2),t._UZ(5,"span",3),t.YNc(6,ln,2,0,"button",4),t.YNc(7,_n,2,0,"button",4),t.qZA()),2&l&&(t.xp6(1),t.hij(" ",i.dialogTitle,"\n"),t.xp6(2),t.hij(" ",i.dialogMessage,"\n"),t.xp6(3),t.Q6J("ngIf",i.timeRemainingSeconds>0),t.xp6(1),t.Q6J("ngIf",i.timeRemainingSeconds<=0))},directives:[G.uh,G.xY,G.H8,ve.O5,y.lW],styles:[""]}),g}(),In=function(){var g=function(){function A(l,i,C,w,V,Ze){(0,c.Z)(this,A),this.router=l,this.configService=i,this.authService=C,this.http=w,this.dialog=V,this.overlayContainerService=Ze,this.sessionExpirationWarning=null,this.subscriptions=[],this.sessionExpirationWarning=i.configData.sessionExpirationWarning,this.overlayContainer=this.overlayContainerService.getContainerElement()}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this,C=this.authService.getAuth().subscribe(function(w){i.sessionExpirationWarning&&(w?i.resetExpirationTimer():i.clearExpirationTimer())});this.subscriptions.push(C)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()}),this.clearExpirationTimer()}},{key:"getCurrentTime",value:function(){return Math.floor((new Date).getTime()/1e3)}},{key:"clearExpirationTimer",value:function(){this.expirationTimer&&(clearTimeout(this.expirationTimer),this.expirationTimer=null)}},{key:"resetExpirationTimer",value:function(){var i=this;this.clearExpirationTimer();var C=this.getCurrentTime();this.sessionExpiringAt=C+60*this.sessionExpirationWarning.maxSessionDurationMinutes;var V=1e3*(this.sessionExpiringAt-C-61);V>0?this.expirationTimer=setTimeout(function(){i.openDialog()},V):this.login()}},{key:"openDialog",value:function(){var i=this,C=this.dialog.open(xn,{data:{sessionExpirationWarning:this.sessionExpirationWarning,sessionExpiringAt:this.sessionExpiringAt},width:"650px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1501",C.afterClosed().subscribe(function(V){i.overlayContainer.style.zIndex=null,V&&i.resetExpirationTimer()})}},{key:"extendSession",value:function(){var i=this;this.http.get(this.sessionExpirationWarning.extendSessionApiUrl).subscribe(function(w){i.resetExpirationTimer()},function(w){console.log("Error extending session: ",w)},function(){})}},{key:"login",value:function(){window.location.assign("/login")}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.F0),t.Y36(fn.E),t.Y36(h.e),t.Y36(u.eN),t.Y36(G.uw),t.Y36(jn.Xj))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-session-expiration"]],decls:0,vars:0,template:function(l,i){},encapsulation:2}),g}(),Yn=n(60833);function mi(g,A){1&g&&t._UZ(0,"mat-progress-bar",2)}function wi(g,A){1&g&&t._UZ(0,"mat-progress-spinner",3)}var Bi=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.loadingService=l,this.isLoading=!1}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.subscription=this.loadingService.loadingEvent.subscribe(function(C){i.isLoading=C})}},{key:"ngOnDestroy",value:function(){this.subscription.unsubscribe()}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Jn.b))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-loading"]],decls:2,vars:2,consts:[["mode","buffer",4,"ngIf"],["mode","indeterminate",4,"ngIf"],["mode","buffer"],["mode","indeterminate"]],template:function(l,i){1&l&&(t.YNc(0,mi,1,0,"mat-progress-bar",0),t.YNc(1,wi,1,0,"mat-progress-spinner",1)),2&l&&(t.Q6J("ngIf",i.isLoading),t.xp6(1),t.Q6J("ngIf",i.isLoading))},directives:[ve.O5,Yn.pW,kt.Ou],styles:[".mat-progress-bar[_ngcontent-%COMP%]{z-index:1003;position:fixed;top:0;left:0;right:0}.mat-progress-spinner[_ngcontent-%COMP%]{z-index:1003;position:fixed;top:50%;left:calc(50% - 25px)}"]}),g}();function Xi(g,A){if(1&g&&(t.TgZ(0,"span",33),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("matTooltip",l.versionTooltipMessage),t.xp6(1),t.hij("Ver. ",l.version,"")}}var ka=function(A){return[A]};function Ja(g,A){if(1&g&&(t.TgZ(0,"a",37),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,ka,"/"+l.path)),t.xp6(1),t.hij(" ",l.display," ")}}function _a(g,A){if(1&g&&(t.TgZ(0,"a",38),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("href",l.externalPath,t.LSH),t.xp6(1),t.hij(" ",l.display," ")}}function nr(g,A){if(1&g&&(t.TgZ(0,"a",39),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit,i=t.oxw(2);t.Q6J("href",i.transformMailToPath(l),t.LSH),t.xp6(1),t.hij(" ",l.display," ")}}var _r=function(){return{}};function wa(g,A){if(1&g&&(t.TgZ(0,"a",44),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(3,ka,"/"+l.path))("queryParams",l.params||t.DdM(5,_r)),t.xp6(1),t.hij(" ",l.display," ")}}function or(g,A){if(1&g&&(t.TgZ(0,"a",39),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("href",t.VKq(2,ka,l.href),t.LSH),t.xp6(1),t.hij(" ",l.display," ")}}function Ta(g,A){if(1&g&&(t.TgZ(0,"a",39),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit,i=t.oxw(4);t.Q6J("href",i.transformMailToPath(l),t.LSH),t.xp6(1),t.hij(" ",l.display," ")}}function Cn(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,wa,2,6,"a",43),t.YNc(2,or,2,4,"a",36),t.YNc(3,Ta,2,2,"a",36),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("ngIf",l.path),t.xp6(1),t.Q6J("ngIf",l.href),t.xp6(1),t.Q6J("ngIf",l.mailToPath)}}function Pn(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",22),t.NdJ("click",function(){return t.CHM(l),t.oxw(4).importDialog()}),t._uU(1," Import Substance "),t.qZA()}}function Tt(g,A){if(1&g&&(t.ynx(0),t.TgZ(1,"a",40),t._uU(2),t.qZA(),t.TgZ(3,"mat-menu",null,41),t.YNc(5,Cn,4,3,"div",14),t.YNc(6,Pn,2,0,"a",42),t.qZA(),t.BQk()),2&g){var l=t.MAs(4),i=t.oxw().$implicit;t.xp6(1),t.Q6J("matMenuTriggerFor",l),t.xp6(1),t.hij(" ",i.display," "),t.xp6(3),t.Q6J("ngForOf",i.children),t.xp6(1),t.Q6J("ngIf","Register"===i.display)}}function Le(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,Ja,2,4,"a",34),t.YNc(2,_a,2,2,"a",35),t.YNc(3,nr,2,2,"a",36),t.YNc(4,Tt,7,4,"ng-container",1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("ngIf",l.path),t.xp6(1),t.Q6J("ngIf",l.externalPath),t.xp6(1),t.Q6J("ngIf",l.mailToPath),t.xp6(1),t.Q6J("ngIf",l.children)}}function qt(g,A){1&g&&(t.TgZ(0,"a",45),t._uU(1," Admin Panel "),t.qZA())}function Gt(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",48),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).increaseMenuZindex()}),t.TgZ(1,"span",10),t._uU(2,"Browse Other"),t.qZA(),t._UZ(3,"mat-icon",19),t.qZA()}if(2&g){t.oxw();var i=t.MAs(3);t.Q6J("matMenuTriggerFor",i)}}function An(g,A){1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",49),t._uU(2," Browse Applications "),t.qZA(),t._UZ(3,"mat-divider"),t.qZA())}function Wn(g,A){1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",50),t._uU(2," Browse Products "),t.qZA(),t._UZ(3,"mat-divider"),t.qZA())}function vi(g,A){1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",51),t._uU(2," Browse Clinical Trials "),t.qZA(),t._UZ(3,"mat-divider"),t.qZA())}function Hi(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",38),t._uU(3," Browse Adverse Events "),t.qZA(),t.qZA()),2&g){var l=t.oxw(4);t.xp6(2),t.Q6J("href",l.adverseEventShinyHomepageURL,t.LSH)}}function ea(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",52),t._uU(2," Browse Adverse Events "),t.qZA(),t.YNc(3,Hi,4,1,"div",1),t.qZA()),2&g){var l=t.oxw(3);t.xp6(3),t.Q6J("ngIf",!0===l.adverseEventShinyHomepageDisplay)}}function _i(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.YNc(1,Gt,4,1,"button",46),t.TgZ(2,"mat-menu",20,47),t.NdJ("closed",function(){return t.CHM(l),t.oxw(2).removeZindex()}),t.YNc(4,An,4,0,"span",1),t.YNc(5,Wn,4,0,"span",1),t.YNc(6,vi,4,0,"span",1),t.YNc(7,ea,4,1,"span",1),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(1),t.Q6J("ngIf",i.loadedComponents),t.xp6(3),t.Q6J("ngIf",i.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",i.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",i.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",i.loadedComponents.adverseevents)}}function Ii(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",53),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).increaseMenuZindex()}),t.TgZ(1,"span",10),t._uU(2,"Register"),t.qZA(),t._UZ(3,"mat-icon",19),t.qZA()}if(2&g){t.oxw();var i=t.MAs(27);t.Q6J("matMenuTriggerFor",i)}}function ga(g,A){if(1&g&&(t.TgZ(0,"a",37),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,ka,"/"+l.path)),t.xp6(1),t.hij(" ",l.display," ")}}function Ha(g,A){if(1&g&&(t.TgZ(0,"a",38),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("href",l.externalPath,t.LSH),t.xp6(1),t.hij(" ",l.display," ")}}function Oa(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,ga,2,4,"a",34),t.YNc(2,Ha,2,2,"a",35),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("ngIf",l.path),t.xp6(1),t.Q6J("ngIf",l.externalPath)}}function Aa(g,A){if(1&g&&(t.TgZ(0,"a",37),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,ka,"/"+l.path)),t.xp6(1),t.hij(" ",l.display," ")}}function Qa(g,A){if(1&g&&(t.TgZ(0,"a",38),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("href",l.externalPath,t.LSH),t.xp6(1),t.hij(" ",l.display," ")}}function va(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,Aa,2,4,"a",34),t.YNc(2,Qa,2,2,"a",35),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("ngIf",l.path),t.xp6(1),t.Q6J("ngIf",l.externalPath)}}function Ka(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",54),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).routeToLogin()}),t._uU(1," Login "),t.qZA()}}function Zt(g,A){if(1&g&&(t.TgZ(0,"span",61),t._uU(1),t.qZA()),2&g){var l=t.oxw(3);t.s9C("matTooltip",l.auth.identifier),t.xp6(1),t.Oqu(l.auth.identifier)}}function Ve(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",55),t.TgZ(1,"button",56),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).increaseMenuZindex()}),t._UZ(2,"mat-icon",57),t.qZA(),t.TgZ(3,"button",58),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).increaseMenuZindex()}),t._UZ(4,"mat-icon",59),t.qZA(),t._UZ(5,"br"),t.YNc(6,Zt,2,2,"span",60),t.qZA()}if(2&g){t.oxw();var i=t.MAs(42),C=t.oxw();t.xp6(1),t.Q6J("matMenuTriggerFor",i),t.xp6(2),t.Q6J("matMenuTriggerFor",i),t.xp6(3),t.Q6J("ngIf",C.auth&&C.auth.identifier)}}function se(g,A){1&g&&(t.TgZ(0,"a",62),t.TgZ(1,"span"),t._uU(2,"Admin Panel"),t.qZA(),t.qZA())}var he=function(){return["/registrars"]};function ht(g,A){1&g&&(t.TgZ(0,"a",63),t.TgZ(1,"span"),t._uU(2,"Registrars"),t.qZA(),t.qZA()),2&g&&t.Q6J("routerLink",t.DdM(1,he))}function Vt(g,A){1&g&&(t.TgZ(0,"a",66),t.TgZ(1,"span",10),t._uU(2,"Registrars"),t.qZA(),t.qZA()),2&g&&t.Q6J("routerLink",t.DdM(1,he))}function dn(g,A){if(1&g&&(t.TgZ(0,"div",64),t.YNc(1,Vt,3,2,"a",65),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",l.canRegister)}}var Zn=function(){return["/browse-substance"]};function Xn(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-toolbar",2),t.TgZ(1,"div",3),t.TgZ(2,"span",4),t.TgZ(3,"a",5),t._UZ(4,"img",6),t.qZA(),t.qZA(),t.YNc(5,Xi,2,2,"span",7),t.qZA(),t.TgZ(6,"span",8),t.TgZ(7,"button",9),t.NdJ("click",function(){return t.CHM(l),t.oxw().increaseMenuZindex()}),t.TgZ(8,"span",10),t._uU(9,"Menu \xa0"),t.qZA(),t._UZ(10,"mat-icon",11),t.qZA(),t.TgZ(11,"mat-menu",12,13),t.NdJ("closed",function(){return t.CHM(l),t.oxw().removeZindex()}),t.YNc(13,Le,5,4,"div",14),t.YNc(14,qt,2,0,"a",15),t.qZA(),t.qZA(),t.TgZ(15,"div"),t.TgZ(16,"button",16),t._uU(17,"Browse Substances"),t.qZA(),t.qZA(),t.YNc(18,_i,8,5,"div",1),t.TgZ(19,"div"),t.YNc(20,Ii,4,1,"button",17),t.TgZ(21,"button",18),t.NdJ("click",function(){return t.CHM(l),t.oxw().increaseMenuZindex()}),t.TgZ(22,"span",10),t._uU(23,"Search"),t.qZA(),t._UZ(24,"mat-icon",19),t.qZA(),t.qZA(),t.TgZ(25,"div"),t.TgZ(26,"mat-menu",20,21),t.NdJ("closed",function(){return t.CHM(l),t.oxw().removeZindex()}),t.YNc(28,Oa,3,2,"div",14),t.TgZ(29,"div"),t.TgZ(30,"a",22),t.NdJ("click",function(){return t.CHM(l),t.oxw().importDialog()}),t._uU(31," Import Substance "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(32,"div"),t.TgZ(33,"mat-menu",20,23),t.NdJ("closed",function(){return t.CHM(l),t.oxw().removeZindex()}),t.YNc(35,va,3,2,"div",14),t.qZA(),t.qZA(),t._UZ(36,"span",24),t.TgZ(37,"app-substance-text-search",25),t.NdJ("searchPerformed",function(Ze){return t.CHM(l),t.oxw().processSubstanceSearch(Ze)})("opened",function(){return t.CHM(l),t.oxw().increaseMenuZindex()})("closed",function(){return t.CHM(l),t.oxw().removeZindex()}),t.qZA(),t.TgZ(38,"div"),t.YNc(39,Ka,2,0,"button",26),t.YNc(40,Ve,7,3,"div",27),t.TgZ(41,"mat-menu",20,28),t.NdJ("closed",function(){return t.CHM(l),t.oxw().removeZindex()}),t.TgZ(43,"a",22),t.NdJ("click",function(){return t.CHM(l),t.oxw().openProfile()}),t.TgZ(44,"span"),t._uU(45,"Profile"),t.qZA(),t.qZA(),t.TgZ(46,"a",29),t.TgZ(47,"span"),t._uU(48,"User Downloads"),t.qZA(),t.qZA(),t.TgZ(49,"a",22),t.NdJ("click",function(){return t.CHM(l),t.oxw().viewDrafts()}),t.TgZ(50,"span"),t._uU(51,"Saved Edit Drafts"),t.qZA(),t.qZA(),t.YNc(52,se,3,0,"a",30),t.YNc(53,ht,3,2,"a",31),t.TgZ(54,"button",22),t.NdJ("click",function(){return t.CHM(l),t.oxw().logout()}),t.TgZ(55,"span"),t._uU(56,"Logout"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.YNc(57,dn,2,1,"div",32),t.qZA()}if(2&g){var i=t.MAs(12),C=t.MAs(34),w=t.oxw();t.xp6(4),t.Q6J("src",w.logoSrcPath,t.LSH),t.xp6(1),t.Q6J("ngIf",w.version&&""!==w.version),t.xp6(2),t.Q6J("matMenuTriggerFor",i),t.xp6(6),t.Q6J("ngForOf",w.navItems),t.xp6(1),t.Q6J("ngIf",w.isAdmin),t.xp6(2),t.Q6J("routerLink",t.DdM(17,Zn)),t.xp6(2),t.Q6J("ngIf",w.loadedComponents),t.xp6(2),t.Q6J("ngIf",w.canRegister),t.xp6(1),t.Q6J("matMenuTriggerFor",C),t.xp6(7),t.Q6J("ngForOf",w.registerNav),t.xp6(7),t.Q6J("ngForOf",w.searchNav),t.xp6(2),t.Q6J("searchValue",w.searchValue),t.xp6(2),t.Q6J("ngIf",!w.auth&&"login"!==w.mainPathSegment),t.xp6(1),t.Q6J("ngIf",w.auth),t.xp6(12),t.Q6J("ngIf",w.isAdmin),t.xp6(1),t.Q6J("ngIf",w.canRegister),t.xp6(4),t.Q6J("ngIf",w.auth&&w.auth.identifier)}}function ni(g,A){1&g&&(t.TgZ(0,"div"),t._UZ(1,"app-pfda-toolbar"),t.qZA())}var pi=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt,cn,Fn,Bn){var Kn=this;(0,c.Z)(this,A),this.router=l,this.authService=i,this.configService=C,this.activatedRoute=w,this.overlayContainerService=V,this.loadingService=Ze,this.bottomSheet=Ot,this.dialog=Bt,this.substanceTextSearchService=cn,this.utilsService=Fn,this.wildCardService=Bn,this.mainPathSegment="",this.isAdmin=!1,this.versionTooltipMessage="",this.customToolbarComponent="",this.canRegister=!1,this.adverseEventShinyHomepageDisplay=!1,this.subscriptions=[],this.classicLinkQueryParams={},this.showHeaderBar="true",this.customToolbarComponent=this.configService.configData.customToolbarComponent,this.wildCardService.wildCardObservable.subscribe(function(fi){Kn.wildCardText=fi})}return(0,e.Z)(A,[{key:"onKeyUp",value:function(i){var w,C="",Bt=document.activeElement;if(null!=Bt){var cn=Bt?Bt.tagName.toLowerCase():null;"textarea"===cn||"input"===cn&&/^(?:text|search|password|tel|url)$/i.test(Bt.type)&&"number"==typeof Bt.selectionStart?C=Bt.value.slice(Bt.selectionStart,Bt.selectionEnd):window.getSelection&&((w=window.getSelection()).rangeCount>0&&w.getRangeAt(0),C=w.toString()),clearTimeout(this.bottomSheetOpenTimer),C&&C!==this.selectedText&&(this.selectedText=C)}}},{key:"ngOnInit",value:function(){var i=this;this.showHeaderBar=this.activatedRoute.snapshot.queryParams.header||"true",this.loadedComponents=this.configService.configData.loadedComponents||null,this.classicLinkPath=this.configService.environment.clasicBaseHref,this.clasicBaseHref=this.configService.environment.clasicBaseHref,this.classicLinkQueryParamsString="",this.contactEmail=this.configService.configData.contactEmail||null,this.navItems=this.configService.configData.navItems||null;var C=!1;this.loadedComponents&&((this.loadedComponents.applications||this.loadedComponents.clinicaltrials||this.loadedComponents.adverseevents||this.loadedComponents.impurities||this.loadedComponents.products)&&(C=!0),C||(this.loadedComponents=null));var w=this.authService.hasRolesAsync("Admin").subscribe(function($n){i.isAdmin=$n});this.subscriptions.push(w);var V=this.authService.hasAnyRolesAsync("Admin","Updater","SuperUpdater","DataEntry","SuperDataEntry").subscribe(function($n){i.canRegister=$n});if(this.subscriptions.push(V),this.baseDomain=this.configService.configData.apiUrlDomain,this.utilsService.getBuildInfo().pipe((0,J.q)(1)).subscribe(function($n){i.version=i.configService.configData.version||$n.version,i.versionTooltipMessage="V".concat(i.version),i.versionTooltipMessage+=" built on ".concat(_e($n.buildTime).utc().format("ddd MMM D YYYY HH:mm:SS z"))}),this.navItems.forEach(function($n){"Register"===$n.display&&(i.registerNav=$n.children),"Search"===$n.display&&(i.searchNav=$n.children)}),this.loadedComponents)for(var Ze=this.navItems.length-1;Ze>=0;Ze--){if(this.navItems[Ze].children)for(var Ot=this.navItems[Ze].children.length-1;Ot>=0;Ot--)this.navItems[Ze].children[Ot].component&&(this.loadedComponents[this.navItems[Ze].children[Ot].component]||this.navItems[Ze].children.splice(Ot,1));this.navItems[Ze].component&&(this.loadedComponents[this.navItems[Ze].component]||this.navItems.splice(Ze,1))}this.overlayContainer=this.overlayContainerService.getContainerElement();var Bt=this.router.routerState.snapshot.url.split("?")[0];this.setClassicLinkPath(Bt.substring(1)),this.activatedRoute.snapshot.queryParamMap.has("search")&&(this.searchValue=this.activatedRoute.snapshot.queryParamMap.get("search"),this.setClassicLinkQueryParams(this.activatedRoute.snapshot.queryParamMap));var cn=this.activatedRoute.queryParamMap.subscribe(function($n){i.searchValue=$n.get("search"),i.setClassicLinkQueryParams($n)});this.subscriptions.push(cn);var Fn=this.authService.checkAuth().subscribe(function($n){},function($n){403===$n.status&&"/login"!==i.router.url.split("?")[0]&&"/unauthorized"!==i.router.url.split("?")[0]&&(i.loadingService.setLoading(!1),i.router.navigate(["/unauthorized"]))});this.subscriptions.push(Fn);var Bn=this.authService.getAuth().subscribe(function($n){i.auth=$n},function($n){});this.subscriptions.push(Bn),this.environment=this.configService.environment,this.appId=this.environment.appId,this.logoSrcPath="".concat(this.environment.baseHref||"","assets/images/gsrs-logo.svg");var Kn=this.router.events.subscribe(function($n){$n instanceof _.Av&&(i.mainPathSegment=i.getMainPathSegmentFromUrl($n.url.substring(1)),Bt=$n.url.split("?")[0],i.setClassicLinkPath(Bt.substring(1))),$n instanceof _.OD&&(i.classicLinkQueryParams={},i.loadingService.resetLoading())});this.subscriptions.push(Kn),this.router.routeReuseStrategy.shouldReuseRoute=function(){return!1},this.mainPathSegment=this.getMainPathSegmentFromUrl(this.router.routerState.snapshot.url.substring(1)),this.substanceTextSearchService.registerSearchComponent("main-substance-search");var fi=this.substanceTextSearchService.setSearchComponentValueEvent("main-substance-search").subscribe(function($n){i.searchValue=$n});this.subscriptions.push(fi)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()}),clearTimeout(this.bottomSheetOpenTimer),clearTimeout(this.bottomSheetCloseTimer)}},{key:"getMainPathSegmentFromUrl",value:function(i){return i.split("?")[0].split("/")[0]}},{key:"routeToLogin",value:function(){this.router.navigate(["/login"],{queryParams:{path:this.router.url}})}},{key:"processSubstanceSearch",value:function(i){this.wildCardService.getTopSearchBoxText(i),this.navigateToSearchResults(i)}},{key:"navigateToSearchResults",value:function(i){this.router.navigate(["/browse-substance"],{queryParams:i?{search:i}:null})}},{key:"increaseMenuZindex",value:function(){this.overlayContainer.style.zIndex="1001"}},{key:"removeZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"openSearchBottomSheet",value:function(i){var C=this;return new D.y(function(w){if(i){clearTimeout(C.bottomSheetCloseTimer),null!=C.bottomSheetRef&&(C.bottomSheetRef.dismiss(),C.bottomSheetRef=null),C.bottomSheetRef=C.bottomSheet.open(k,{data:{searchTerm:i},hasBackdrop:!1,closeOnNavigation:!0});var V=C.bottomSheetRef.afterOpened().subscribe(function(){w.next(),V.unsubscribe()});C.bottomSheetCloseTimer=setTimeout(function(){null!=C.bottomSheetRef&&(C.bottomSheetRef.dismiss(),C.bottomSheetRef=null,w.complete())},5e3);var Ze=C.bottomSheetRef.afterDismissed().subscribe(function(){clearTimeout(C.bottomSheetCloseTimer),C.bottomSheetRef=null,w.complete(),Ze.unsubscribe()})}else w.error(),w.complete()})}},{key:"transformMailToPath",value:function(i){var C;if((null==i?void 0:i.kind)&&(null==i?void 0:i.mailToPath)){var w="",V="";"contact-us"===i.kind&&(V=this.contactEmail),(null==i?void 0:i.queryParams)&&(null===(C=null==i?void 0:i.queryParams)||void 0===C?void 0:C.subject)&&(w=i.queryParams.subject);var Ot="";return w&&(Ot="subject="+w),(0,hn.sprintf)(i.mailToPath,V)+"?"+Ot}return""}},{key:"setClassicLinkPath",value:function(i){var C=this,w=this.clasicBaseHref,Ze=i.split("/"),Ot="";Ze.forEach(function(Bt,cn){cn<2?Ot+="/".concat(Bt):C.setClassicLinkQueryParams(null,{kind:Bt})}),this.classicLinkPath="".concat(w).concat({"/home":"","/browse-substance":"substances","/structure-search":"structure","/sequence-search":"sequence","/substances/register":"wizard","/admin":"admin"}[Ot]||"")}},{key:"setClassicLinkQueryParams",value:function(i,C){var w=this;if(null!=i){var V={};V.q=i.get("search")||i.get("structure_search")||i.get("sequence_search")||i.get("structure"),i.get("sequence_search")?(V.type="sequence",V.identity=i.get("cutoff"),V.identityType=i.get("type")):(i.get("structure_search")||i.get("structure"))&&(V.cutoff=i.get("cutoff"),V.type=i.get("type")),V.id=i.get("sequence"),V.seqType=i.get("seq_type"),Object.keys(V).forEach(function(Ot){null!=V[Ot]&&(w.classicLinkQueryParams[Ot]=V[Ot])})}null!=C&&Object.keys(C).forEach(function(Ot){w.classicLinkQueryParams[Ot]=C[Ot]});var Ze="";Object.keys(this.classicLinkQueryParams).forEach(function(Ot,Bt){Ze+="".concat(Bt?"&":"?").concat(Ot,"=").concat(w.classicLinkQueryParams[Ot])}),this.classicLinkQueryParamsString=Ze}},{key:"openProfile",value:function(){var i=this,C=this.dialog.open(sn,{data:{},width:"800px"});this.overlayContainer.style.zIndex="1002",C.afterClosed().pipe((0,J.q)(1)).subscribe(function(V){i.overlayContainer.style.zIndex=null})}},{key:"importDialog",value:function(){var i=this,C=this.dialog.open(vn,{width:"650px",autoFocus:!1});this.overlayContainer.style.zIndex="1002",C.afterClosed().pipe((0,J.q)(1)).subscribe(function(V){V&&(i.overlayContainer.style.zIndex=null,i.router.onSameUrlNavigation="reload",i.router.navigateByUrl("/substances/register?action=import",{state:{record:V}}))})}},{key:"logout",value:function(){var i=this;this.authService.logout(),setTimeout(function(){i.router.navigate(["/home"])},1200)}},{key:"viewDrafts",value:function(){var i=this,C=this.dialog.open(an,{maxHeight:"85%",width:"70%",data:{view:"user"}});this.overlayContainer.style.zIndex="1002",C.afterClosed().subscribe(function(w){i.overlayContainer.style.zIndex=null,w&&(i.loadingService.setLoading(!0),w.uuid&&"register"!=w.uuid?i.router.navigateByUrl("/substances/"+w.uuid+"/edit?action=import&source=draft",{state:{record:w.substance}}):setTimeout(function(){i.router.onSameUrlNavigation="reload",i.router.navigateByUrl("/substances/register/"+w.substance.substanceClass+"?action=import",{state:{record:w.substance}})},500))})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.F0),t.Y36(h.e),t.Y36(b.E),t.Y36(_.gz),t.Y36(jn.Xj),t.Y36(Jn.b),t.Y36(T.ch),t.Y36(G.uw),t.Y36(un),t.Y36(ce.FW),t.Y36(mn))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-base"]],hostBindings:function(l,i){1&l&&t.NdJ("mouseup",function(w){return i.onKeyUp(w)},!1,t.evT)("keyup",function(w){return i.onKeyUp(w)},!1,t.evT)},decls:6,vars:2,consts:[["class","mat-elevation-z3","color","primary",4,"ngIf"],[4,"ngIf"],["color","primary",1,"mat-elevation-z3"],[1,"logo-container"],[1,"logo"],["routerLink","/home","aria-label","home"],["alt","gsrs-logo",3,"src"],["class","version","matTooltipPosition","below",3,"matTooltip",4,"ngIf"],[1,"nav-small"],["mat-button","","mat-primary-button","","aria-label","main menu",1,"top-button",2,"color","white","padding-top","10px","padding-bottom","10px",3,"matMenuTriggerFor","click"],[2,"font-size","16px"],["svgIcon","menu"],[1,"reg-a",3,"closed"],["nav","matMenu"],[4,"ngFor","ngForOf"],["mat-menu-item","","routerLink","/admin",4,"ngIf"],["mat-button","","mat-primary-button","","aria-label","browse substances",1,"menu-button","extra-item",2,"font-size","16px","color","white","padding-right","10px","margin-right","15px","padding-top","10px","padding-bottom","10px",3,"routerLink"],["class","top-button extra-item","mat-button","","mat-primary-button","","style","color:white;font-size:16px;padding-top:10px; padding-bottom:10px;","aria-label","main menu",3,"matMenuTriggerFor","click",4,"ngIf"],["mat-button","","mat-primary-button","","aria-label","search menu",1,"top-button","extra-item",2,"color","white","font-size","16px","padding-top","10px","padding-bottom","10px",3,"matMenuTriggerFor","click"],["svgIcon","chevron_down"],[3,"closed"],["reg","matMenu"],["mat-menu-item","",3,"click"],["search","matMenu"],[1,"middle-fill"],["placeholder","Search Substances","eventCategory","topSearch",1,"top-search",3,"searchValue","searchPerformed","opened","closed"],["mat-button","","class","login-link",3,"click",4,"ngIf"],["class","logged-in",4,"ngIf"],["accountMenu","matMenu"],["mat-menu-item","","routerLink","/user-downloads"],["routerLink","/admin","mat-menu-item","",4,"ngIf"],["class","add-at-low-res","mat-menu-item","",3,"routerLink",4,"ngIf"],["class","classic-view-container",4,"ngIf"],["matTooltipPosition","below",1,"version",3,"matTooltip"],["mat-menu-item","",3,"routerLink",4,"ngIf"],["mat-menu-item","","target","_blank",3,"href",4,"ngIf"],["mat-menu-item","",3,"href",4,"ngIf"],["mat-menu-item","",3,"routerLink"],["mat-menu-item","","target","_blank",3,"href"],["mat-menu-item","",3,"href"],["mat-menu-item","",3,"matMenuTriggerFor"],["childrenMenu","matMenu"],["mat-menu-item","",3,"click",4,"ngIf"],["mat-menu-item","",3,"routerLink","queryParams",4,"ngIf"],["mat-menu-item","",3,"routerLink","queryParams"],["mat-menu-item","","routerLink","/admin"],["class","top-button extra-browse","mat-button","","mat-primary-button","","style","color:white;font-size:16px;padding-top:10px; padding-bottom:10px;","aria-label","main menu",3,"matMenuTriggerFor","click",4,"ngIf"],["browse","matMenu"],["mat-button","","mat-primary-button","","aria-label","main menu",1,"top-button","extra-browse",2,"color","white","font-size","16px","padding-top","10px","padding-bottom","10px",3,"matMenuTriggerFor","click"],["mat-menu-item","","routerLink","/browse-applications"],["mat-menu-item","","routerLink","/browse-products"],["mat-menu-item","","routerLink","/browse-clinical-trials"],["mat-menu-item","","routerLink","/browse-adverse-events"],["mat-button","","mat-primary-button","","aria-label","main menu",1,"top-button","extra-item",2,"color","white","font-size","16px","padding-top","10px","padding-bottom","10px",3,"matMenuTriggerFor","click"],["mat-button","",1,"login-link",3,"click"],[1,"logged-in"],["aria-label","User Account","mat-icon-button","",1,"user-button","main-button",3,"matMenuTriggerFor","click"],["svgIcon","account_circle",1,"user-icon"],["aria-label","User Account dropdown","mat-icon-button","",1,"user-button","arrow-button","test-class",3,"matMenuTriggerFor","click"],["svgIcon","chevron_down",1,"user-icon","icon-two"],["class","user",3,"matTooltip",4,"ngIf"],[1,"user",3,"matTooltip"],["routerLink","/admin","mat-menu-item",""],["mat-menu-item","",1,"add-at-low-res",3,"routerLink"],[1,"classic-view-container"],["class","top-button hide-at-low-res","mat-button","","mat-primary-button","","style","color:white;font-size:16px;padding-top:10px; padding-bottom:10px;",3,"routerLink",4,"ngIf"],["mat-button","","mat-primary-button","",1,"top-button","hide-at-low-res",2,"color","white","font-size","16px","padding-top","10px","padding-bottom","10px",3,"routerLink"]],template:function(l,i){1&l&&(t.YNc(0,Xn,58,18,"mat-toolbar",0),t.YNc(1,ni,2,0,"div",1),t._UZ(2,"app-main-notification"),t._UZ(3,"app-session-expiration"),t._UZ(4,"app-loading"),t._UZ(5,"router-outlet")),2&l&&(t.Q6J("ngIf","true"===i.showHeaderBar&&(!i.customToolbarComponent||0==i.customToolbarComponent.length)),t.xp6(1),t.Q6J("ngIf","precisionFDA"==i.customToolbarComponent))},directives:[ve.O5,zt.Ye,_.yS,Me.gM,y.lW,qe.p6,Y.Hw,qe.VK,ve.sg,qe.OP,_.rH,pt.d,Ne.e,y.zs,vt,$t,In,Bi,_.lC],styles:[".version{color:var(--version-text-color);font-size:10pt;line-height:10px;text-align:right;padding-top:4px;margin-right:-5px;margin-bottom:-4px}.logo-container{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-width:160px;margin-right:20px}.tooltiptest{z-index:9999!important;background:#b71c1c}.user{font-size:12px}.arrow-button{margin-left:-13px!important;height:25px!important;width:25px!important}.top-button{padding-top:10px;padding-bottom:10px}.user-button{margin-bottom:-5px}.user-button ::ng-deep mat-icon{height:30px;width:30px;margin-bottom:-10px}.user-button ::ng-deep svg{height:30px;width:30px;margin-bottom:-10px}.user-button mat-icon{height:30px;width:30px;margin-bottom:-10px}.user-button svg{height:30px;width:30px;margin-bottom:-10px}.icon-two{height:24px!important;margin-left:4px;width:24px!important}.icon-two svg{height:25px!important;width:25px!important}:host ::ng-deep .mat-icon{height:30px!important;width:30px!important;margin-bottom:-10px!important}.mat-icon .user-icon{height:30px;width:30px;margin-bottom:-10px}.logged-in{margin:auto;text-align:center;max-width:90px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.logged-in .mat-icon,.logged-in user-icon{height:30px;width:30px;margin-bottom:-10px;line-height:unset}.logged-in ::ng-deep svg{height:30px;width:30px;margin-bottom:-10px}.mat-toolbar{position:fixed;top:0;z-index:1001}.logo{height:35px;margin-right:20px}.logo img{height:100%;width:auto}.nav-big .nav-item{padding:0 5px}.nav-big .nav-item>a{font-size:16px;color:#e6e6e6;padding-bottom:7px;transition:all .15s linear;text-decoration:none;outline:none}.nav-big .nav-item>a:hover,.nav-big .nav-item>a.active{color:#fff;cursor:pointer;padding-bottom:5px;border-bottom:2px solid white;text-decoration:none}.nav-small{padding-right:10px}.nav-small .mat-icon-button{width:50px;height:50px}.nav-small .mat-icon{width:40px;height:40px}.login-link{color:#fff;font-size:16px;text-decoration:none}.top-search{-ms-flex-positive:1;flex-grow:1;max-width:600px}.top-search ::ng-deep .mat-form-field .mat-form-field-label{font-size:16px;top:1.98125em}::ng-deep .transparent-background{background-color:transparent}.classic-view-container{padding-left:15px}.classic-view-container ::ng-deep .mat-raised-button{color:#296ca3}@media (min-width: 990px){.top-search{min-width:500px}.menu-button :hover{background-color:#4793d1!important}}.extra-item{display:inline-block}@media (max-width: 1500px){.extra-browse{display:none!important}}@media (max-width: 1350px){.extra-item{display:none!important}}@media (max-width: 1610px){.add-at-low-res{display:inline!important}.hide-at-low-res{display:none!important}}@media (min-width: 1610px){.add-at-low-res{display:none!important}.hide-at-low-res{display:inline-block}}@media (max-width: 1650px){.extra-item-2{display:none!important}}\n"],encapsulation:2}),g}(),Mi=n(24874),Wi=n(44250),Yi=n(27299),aa=n(7216),xi=n(11961),Ui=n(16531),ca=n(26131),oa=n(97424),pr=n(28042),sr=n(71340),Ca=n(1130),ir=n(76484),yr=n(51588),Qi=["*"],bi=function(){function g(){(0,c.Z)(this,g),this.columnIndex=0,this.rowIndex=0}return(0,e.Z)(g,[{key:"rowCount",get:function(){return this.rowIndex+1}},{key:"rowspan",get:function(){var l=Math.max.apply(Math,(0,sr.Z)(this.tracker));return l>1?this.rowCount+l-1:this.rowCount}},{key:"update",value:function(l,i){var C=this;this.columnIndex=0,this.rowIndex=0,this.tracker=new Array(l),this.tracker.fill(0,0,this.tracker.length),this.positions=i.map(function(w){return C._trackTile(w)})}},{key:"_trackTile",value:function(l){var i=this._findMatchingGap(l.colspan);return this._markTilePosition(i,l),this.columnIndex=i+l.colspan,new Ji(this.rowIndex,i)}},{key:"_findMatchingGap",value:function(l){var i=-1,C=-1;do{this.columnIndex+l>this.tracker.length?(this._nextRow(),i=this.tracker.indexOf(0,this.columnIndex),C=this._findGapEndIndex(i)):-1!=(i=this.tracker.indexOf(0,this.columnIndex))?(C=this._findGapEndIndex(i),this.columnIndex=i+1):(this._nextRow(),i=this.tracker.indexOf(0,this.columnIndex),C=this._findGapEndIndex(i))}while(C-i*,.mat-grid-tile .mat-grid-tile-footer>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-grid-tile .mat-grid-tile-header.mat-2-line,.mat-grid-tile .mat-grid-tile-footer.mat-2-line{height:68px}.mat-grid-tile .mat-grid-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden}.mat-grid-tile .mat-grid-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-grid-tile .mat-grid-list-text:empty{display:none}.mat-grid-tile .mat-grid-tile-header{top:0}.mat-grid-tile .mat-grid-tile-footer{bottom:0}.mat-grid-tile .mat-grid-avatar{padding-right:16px}[dir=rtl] .mat-grid-tile .mat-grid-avatar{padding-right:0;padding-left:16px}.mat-grid-tile .mat-grid-avatar:empty{display:none}.mat-grid-tile-content{top:0;left:0;right:0;bottom:0;position:absolute;display:flex;align-items:center;justify-content:center;height:100%;padding:0;margin:0}\n"],encapsulation:2,changeDetection:0}),g}(),sa=/^-?\d+((\.\d+)?[A-Za-z%$]?)+$/,da=function(){function g(){(0,c.Z)(this,g),this._rows=0,this._rowspan=0}return(0,e.Z)(g,[{key:"init",value:function(l,i,C,w){this._gutterSize=Cr(l),this._rows=i.rowCount,this._rowspan=i.rowspan,this._cols=C,this._direction=w}},{key:"getBaseTileSize",value:function(l,i){return"(".concat(l,"% - (").concat(this._gutterSize," * ").concat(i,"))")}},{key:"getTilePosition",value:function(l,i){return 0===i?"0":gr("(".concat(l," + ").concat(this._gutterSize,") * ").concat(i))}},{key:"getTileSize",value:function(l,i){return"(".concat(l," * ").concat(i,") + (").concat(i-1," * ").concat(this._gutterSize,")")}},{key:"setStyle",value:function(l,i,C){var w=100/this._cols,V=(this._cols-1)/this._cols;this.setColStyles(l,C,w,V),this.setRowStyles(l,i,w,V)}},{key:"setColStyles",value:function(l,i,C,w){var V=this.getBaseTileSize(C,w);l._setStyle("rtl"===this._direction?"right":"left",this.getTilePosition(V,i)),l._setStyle("width",gr(this.getTileSize(V,l.colspan)))}},{key:"getGutterSpan",value:function(){return"".concat(this._gutterSize," * (").concat(this._rowspan," - 1)")}},{key:"getTileSpan",value:function(l){return"".concat(this._rowspan," * ").concat(this.getTileSize(l,1))}},{key:"getComputedHeight",value:function(){return null}}]),g}(),Ea=function(g){(0,N.Z)(l,g);var A=(0,I.Z)(l);function l(i){var C;return(0,c.Z)(this,l),(C=A.call(this)).fixedRowHeight=i,C}return(0,e.Z)(l,[{key:"init",value:function(C,w,V,Ze){(0,oa.Z)((0,pr.Z)(l.prototype),"init",this).call(this,C,w,V,Ze),this.fixedRowHeight=Cr(this.fixedRowHeight),sa.test(this.fixedRowHeight)}},{key:"setRowStyles",value:function(C,w){C._setStyle("top",this.getTilePosition(this.fixedRowHeight,w)),C._setStyle("height",gr(this.getTileSize(this.fixedRowHeight,C.rowspan)))}},{key:"getComputedHeight",value:function(){return["height",gr("".concat(this.getTileSpan(this.fixedRowHeight)," + ").concat(this.getGutterSpan()))]}},{key:"reset",value:function(C){C._setListStyle(["height",null]),C._tiles&&C._tiles.forEach(function(w){w._setStyle("top",null),w._setStyle("height",null)})}}]),l}(da),ba=function(g){(0,N.Z)(l,g);var A=(0,I.Z)(l);function l(i){var C;return(0,c.Z)(this,l),(C=A.call(this))._parseRatio(i),C}return(0,e.Z)(l,[{key:"setRowStyles",value:function(C,w,V,Ze){this.baseTileHeight=this.getBaseTileSize(V/this.rowHeightRatio,Ze),C._setStyle("marginTop",this.getTilePosition(this.baseTileHeight,w)),C._setStyle("paddingTop",gr(this.getTileSize(this.baseTileHeight,C.rowspan)))}},{key:"getComputedHeight",value:function(){return["paddingBottom",gr("".concat(this.getTileSpan(this.baseTileHeight)," + ").concat(this.getGutterSpan()))]}},{key:"reset",value:function(C){C._setListStyle(["paddingBottom",null]),C._tiles.forEach(function(w){w._setStyle("marginTop",null),w._setStyle("paddingTop",null)})}},{key:"_parseRatio",value:function(C){var w=C.split(":");this.rowHeightRatio=parseFloat(w[0])/parseFloat(w[1])}}]),l}(da),Ar=function(g){(0,N.Z)(l,g);var A=(0,I.Z)(l);function l(){return(0,c.Z)(this,l),A.apply(this,arguments)}return(0,e.Z)(l,[{key:"setRowStyles",value:function(C,w){var Ot=this.getBaseTileSize(100/this._rowspan,(this._rows-1)/this._rows);C._setStyle("top",this.getTilePosition(Ot,w)),C._setStyle("height",gr(this.getTileSize(Ot,C.rowspan)))}},{key:"reset",value:function(C){C._tiles&&C._tiles.forEach(function(w){w._setStyle("top",null),w._setStyle("height",null)})}}]),l}(da);function gr(g){return"calc(".concat(g,")")}function Cr(g){return g.match(/([A-Za-z%]+)$/)?g:"".concat(g,"px")}var Lt=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this._element=l,this._dir=i,this._gutter="1px"}return(0,e.Z)(A,[{key:"cols",get:function(){return this._cols},set:function(i){this._cols=Math.max(1,Math.round((0,ir.su)(i)))}},{key:"gutterSize",get:function(){return this._gutter},set:function(i){this._gutter="".concat(null==i?"":i)}},{key:"rowHeight",get:function(){return this._rowHeight},set:function(i){var C="".concat(null==i?"":i);C!==this._rowHeight&&(this._rowHeight=C,this._setTileStyler(this._rowHeight))}},{key:"ngOnInit",value:function(){this._checkCols(),this._checkRowHeight()}},{key:"ngAfterContentChecked",value:function(){this._layoutTiles()}},{key:"_checkCols",value:function(){}},{key:"_checkRowHeight",value:function(){this._rowHeight||this._setTileStyler("1:1")}},{key:"_setTileStyler",value:function(i){this._tileStyler&&this._tileStyler.reset(this),this._tileStyler="fit"===i?new Ar:i&&i.indexOf(":")>-1?new ba(i):new Ea(i)}},{key:"_layoutTiles",value:function(){var i=this;this._tileCoordinator||(this._tileCoordinator=new bi);var C=this._tileCoordinator,w=this._tiles.filter(function(Ze){return!Ze._gridList||Ze._gridList===i}),V=this._dir?this._dir.value:"ltr";this._tileCoordinator.update(this.cols,w),this._tileStyler.init(this.gutterSize,C,this.cols,V),w.forEach(function(Ze,Ot){var Bt=C.positions[Ot];i._tileStyler.setStyle(Ze,Bt.row,Bt.col)}),this._setListStyle(this._tileStyler.getComputedHeight())}},{key:"_setListStyle",value:function(i){i&&(this._element.nativeElement.style[i[0]]=i[1])}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(t.SBq),t.Y36(yr.Is,8))},g.\u0275cmp=t.Xpm({type:g,selectors:[["mat-grid-list"]],contentQueries:function(l,i,C){var w;1&l&&t.Suo(C,ya,5),2&l&&t.iGM(w=t.CRH())&&(i._tiles=w)},hostAttrs:[1,"mat-grid-list"],hostVars:1,hostBindings:function(l,i){2&l&&t.uIk("cols",i.cols)},inputs:{cols:"cols",gutterSize:"gutterSize",rowHeight:"rowHeight"},exportAs:["matGridList"],features:[t._Bn([{provide:Vi,useExisting:g}])],ngContentSelectors:Qi,decls:2,vars:0,template:function(l,i){1&l&&(t.F$t(),t.TgZ(0,"div"),t.Hsn(1),t.qZA())},styles:[".mat-grid-list{display:block;position:relative}.mat-grid-tile{display:block;position:absolute;overflow:hidden}.mat-grid-tile .mat-grid-tile-header,.mat-grid-tile .mat-grid-tile-footer{display:flex;align-items:center;height:48px;color:#fff;background:rgba(0,0,0,.38);overflow:hidden;padding:0 16px;position:absolute;left:0;right:0}.mat-grid-tile .mat-grid-tile-header>*,.mat-grid-tile .mat-grid-tile-footer>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-grid-tile .mat-grid-tile-header.mat-2-line,.mat-grid-tile .mat-grid-tile-footer.mat-2-line{height:68px}.mat-grid-tile .mat-grid-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden}.mat-grid-tile .mat-grid-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-grid-tile .mat-grid-list-text:empty{display:none}.mat-grid-tile .mat-grid-tile-header{top:0}.mat-grid-tile .mat-grid-tile-footer{bottom:0}.mat-grid-tile .mat-grid-avatar{padding-right:16px}[dir=rtl] .mat-grid-tile .mat-grid-avatar{padding-right:0;padding-left:16px}.mat-grid-tile .mat-grid-avatar:empty{display:none}.mat-grid-tile-content{top:0;left:0;right:0;bottom:0;position:absolute;display:flex;align-items:center;justify-content:center;height:100%;padding:0;margin:0}\n"],encapsulation:2,changeDetection:0}),g}(),dt=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[Ca.uc,Ca.BQ],Ca.uc,Ca.BQ]}),g}(),ke=["matSideNavInstance"];function gt(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",64),t._UZ(3,"mat-icon",13),t._uU(4," Browse Applications "),t.qZA(),t.qZA())}function de(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",65),t._UZ(3,"mat-icon",13),t._uU(4," Browse Products "),t.qZA(),t.qZA())}function we(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",66),t._UZ(3,"mat-icon",13),t._uU(4," Browse Clinical Trials "),t.qZA(),t.qZA())}function Qe(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",67),t._UZ(3,"mat-icon",13),t._uU(4," Browse Adverse Events "),t.qZA(),t._uU(5,"Other "),t.qZA())}function Ge(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",68),t._UZ(3,"mat-icon",13),t._uU(4," Browse Adverse Events "),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(2),t.Q6J("href",l.adverseEventShinyHomepageURL,t.LSH)}}function Mt(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,Qe,6,0,"span",63),t._uU(2,"Other "),t.YNc(3,Ge,5,1,"div",63),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!l.adverseEventShinyHomepageDisplay),t.xp6(2),t.Q6J("ngIf",!0===l.adverseEventShOtherinyHomepageDisplay)}}function Nt(g,A){if(1&g&&(t.TgZ(0,"mat-expansion-panel",10),t.TgZ(1,"mat-expansion-panel-header"),t.TgZ(2,"mat-panel-title",11),t._uU(3," Other "),t.qZA(),t.qZA(),t.TgZ(4,"mat-nav-list"),t.TgZ(5,"span"),t.YNc(6,gt,5,0,"span",63),t.YNc(7,de,5,0,"span",63),t.YNc(8,we,5,0,"span",63),t.YNc(9,Mt,4,2,"span",63),t.qZA(),t.qZA(),t.GkF(10),t.qZA()),2&g){var l=t.oxw();t.Q6J("expanded",!1),t.xp6(6),t.Q6J("ngIf",l.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",l.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",l.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",l.loadedComponents.adverseevents)}}function yn(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",70),t._UZ(3,"mat-icon",22),t._uU(4," Product "),t.qZA(),t.qZA())}function Ln(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",71),t._UZ(3,"mat-icon",22),t._uU(4," Application "),t.qZA(),t.qZA())}function ei(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",72),t._UZ(3,"mat-icon",22),t._uU(4," Impurities "),t.qZA(),t.qZA())}function li(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,yn,5,0,"span",63),t.YNc(2,Ln,5,0,"span",63),t.YNc(3,ei,5,0,"span",63),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",l.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",l.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",l.loadedComponents.impurities)}}function Si(g,A){if(1&g&&(t.TgZ(0,"mat-expansion-panel",10),t.TgZ(1,"mat-expansion-panel-header"),t.TgZ(2,"mat-panel-title",11),t._uU(3," Register Other "),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-nav-list",69),t.YNc(6,li,4,3,"span",63),t.qZA(),t.qZA(),t.GkF(7),t.qZA()),2&g){var l=t.oxw();t.Q6J("expanded",!1),t.xp6(6),t.Q6J("ngIf",l.loadedComponents)}}function Ai(g,A){if(1&g&&(t.TgZ(0,"mat-card",73),t._UZ(1,"div",74),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("innerHTML",l.bannerMessage,t.oJD)}}function Fi(g,A){1&g&&(t.TgZ(0,"div",47),t.TgZ(1,"a",75),t._uU(2,"Browse Applications"),t.qZA(),t.qZA())}function Ma(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",76),t.NdJ("click",function(){var V=t.CHM(l).$implicit;return t.oxw().routeToCustom(V)}),t.TgZ(1,"span",77),t.TgZ(2,"div",78),t._uU(3),t.qZA(),t.TgZ(4,"div",79),t._uU(5),t.ALo(6,"number"),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(3),t.hij(" ",i.display," "),t.xp6(2),t.hij(" ",t.Dn7(6,2,i.total,"1.0","en-US")," ")}}function ot(g,A){1&g&&(t.TgZ(0,"mat-card",80),t.TgZ(1,"h2",81),t._uU(2,"Helpful Resources"),t.qZA(),t.qZA())}function yt(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",89),t.NdJ("click",function(){t.CHM(l);var w=t.oxw().$implicit,V=t.oxw(),Ze=t.MAs(118);return V.openModal(Ze,w)}),t._uU(1),t.qZA()}if(2&g){var i=t.oxw().$implicit;t.xp6(1),t.Oqu(i.title?i.title:"no title")}}function St(g,A){if(1&g&&(t.TgZ(0,"a",90),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.s9C("href",l.href,t.LSH),t.xp6(1),t.Oqu(l.title?l.title:"no title")}}function ie(g,A){if(1&g&&(t.TgZ(0,"mat-grid-tile"),t.TgZ(1,"mat-card",82),t.TgZ(2,"h3",83),t.YNc(3,yt,2,1,"a",84),t.YNc(4,St,2,2,"a",85),t.qZA(),t.TgZ(5,"div",86),t._UZ(6,"img",87),t.qZA(),t._UZ(7,"div",88),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw();t.xp6(3),t.Q6J("ngIf",l.templateDescription),t.xp6(1),t.Q6J("ngIf",!(null!=l&&l.templateDescription)),t.xp6(2),t.hYB("src","",i.imageLoc,"",l.imageFile,"",t.LSH),t.xp6(1),t.Q6J("innerHtml",l.description,t.oJD)}}function Ye(g,A){if(1&g&&(t.TgZ(0,"div",91),t.TgZ(1,"a",92),t._uU(2),t.qZA(),t.qZA(),t.TgZ(3,"div",93),t._UZ(4,"span",94),t.TgZ(5,"button",95),t._uU(6,"Close"),t.qZA(),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.s9C("href",l.href,t.LSH),t.xp6(1),t.Oqu(l.templateDescription)}}var fe=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt){var cn=this;(0,c.Z)(this,A),this.gaService=l,this.configService=i,this.authService=C,this.substanceService=w,this.router=V,this.dialog=Ze,this.overlayContainerService=Ot,this.utilsService=Bt,this.isAuthenticated=!1,this.isClosedWelcomeMessage=!0,this.isCollapsed=!0,this.hasBackdrop=!1,this.adverseEventShinyHomepageDisplay=!1,this.processResponsiveness=function(){setTimeout(function(){window&&(window.innerWidth<1100?(cn.matSideNav.close(),cn.isCollapsed=!0,cn.hasBackdrop=!0):(cn.matSideNav.open(),cn.hasBackdrop=!1))})},this.contactEmail=this.configService.configData.contactEmail,this.clasicBaseHref=this.configService.environment.clasicBaseHref}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.environment=this.configService.environment,this.application="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_application.png"),this.browseAll="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_browseall.png"),this.chemicon="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_registersubstance.png"),this.appId=this.configService.environment.appId,this.bannerMessage=this.configService.configData.bannerMessage||null,this.usefulLinks=this.configService.configData.usefulLinks||[],this.homeHeader=this.configService.configData.homeHeader||null,this.homeContents=this.configService.configData.homeContents||null,this.loadedComponents=this.configService.configData.loadedComponents||null;var C=!1;this.loadedComponents&&((this.loadedComponents.applications||this.loadedComponents.clinicaltrials||this.loadedComponents.adverseevents||this.loadedComponents.impurities||this.loadedComponents.products)&&(C=!0),C||(this.loadedComponents=null)),this.imageLoc="".concat(this.environment.baseHref||"","assets/images/home/"),this.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry","Admin").subscribe(function(w){i.isAuthenticated=w}),this.gaService.sendPageView("Home"),this.baseDomain=this.configService.configData.apiUrlDomain,this.customLinks=this.configService.configData.homeDynamicLinks||[],this.customLinks.forEach(function(w){w.total=0,"".concat(w.facetName,":").concat(w.facetValue),i.substanceService.searchSingleFacetSimpleCount(w.facetName,w.facetValue).pipe((0,J.q)(1)).subscribe(function(Ze){w.total=Ze?Number(Ze.total):0})}),this.substanceService.getRecordCount().subscribe(function(w){i.total=w}),this.isClosedWelcomeMessage=!1,this.getAdverseEventShinyConfig(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var i=this;this.processResponsiveness(),this.matSideNav.openedStart.subscribe(function(){i.utilsService.handleMatSidenavOpen(1100)}),this.matSideNav.closedStart.subscribe(function(){i.utilsService.handleMatSidenavClose()})}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substancesFiltering","button:sidenav","open"),this.matSideNav.open()}},{key:"routeToCustom",value:function(i){this.router.navigate(["/browse-substance"],{queryParams:{facets:i.facetName+"*"+i.facetValue+".true"}})}},{key:"closeWelcomeMessage",value:function(){this.isClosedWelcomeMessage=!0,localStorage.setItem("isClosedWelcomeMessage",this.isClosedWelcomeMessage.toString())}},{key:"browseSubstances",value:function(){this.router.navigate(["/browse-substance"])}},{key:"openModal",value:function(i,C){var w=this,V=this.dialog.open(i,{height:"200px",width:"400px",data:{href:C.href,templateDescription:C.templateDescription}});this.overlayContainer.style.zIndex="1002",V.afterClosed().subscribe(function(Ze){w.overlayContainer.style.zIndex=null})}},{key:"increaseMenuZindex",value:function(){this.overlayContainer.style.zIndex="1001"}},{key:"removeZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"processSubstanceSearch",value:function(i){this.navigateToSearchResults(i)}},{key:"navigateToSearchResults",value:function(i){this.router.navigate(["/browse-substance"],{queryParams:i?{search:i}:null})}},{key:"getAdverseEventShinyConfig",value:function(){this.configService.configData&&(this.configService.configData.adverseEventShinyHomepageDisplay&&null!==this.configService.configData.adverseEventShinyHomepageDisplay&&(this.adverseEventShinyHomepageDisplay=JSON.parse(this.configService.configData.adverseEventShinyHomepageDisplay)),this.configService.configData.adverseEventShinyHomepageURL&&null!==this.configService.configData.adverseEventShinyHomepageURL&&(this.adverseEventShinyHomepageURL=this.configService.configData.adverseEventShinyHomepageURL))}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Mi.$),t.Y36(fn.E),t.Y36(Wi.e),t.Y36(Yi.d),t.Y36(_.F0),t.Y36(G.uw),t.Y36(jn.Xj),t.Y36(ce.FW))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-home"]],viewQuery:function(l,i){var C;1&l&&t.Gf(ke,7),2&l&&t.iGM(C=t.CRH())&&(i.matSideNav=C.first)},hostBindings:function(l,i){1&l&&t.NdJ("resize",function(w){return i.onResize(w)},!1,t.Jf7)},decls:119,vars:25,consts:[[1,"main-container"],[3,"hasBackdrop"],["mode","side","opened","true",3,"disableClose"],["matSideNavInstance",""],[1,"side-bar"],[1,"register-main"],[1,"left-search"],[1,"side-header",2,"margin-bottom","10px"],[1,"quick-links"],["multi","true"],[3,"expanded"],[1,"panel-header"],["mat-list-item","","routerLink","/browse-substance"],["matListIcon","","svgIcon","glasses"],["mat-list-item","","routerLink","/structure-search"],["matListIcon","","svgIcon","search"],["mat-list-item","","routerLink","/sequence-search"],["mat-list-item","","routerLink","/advanced-search"],["matListIcon","","svgIcon","youtube"],[3,"expanded",4,"ngIf"],[1,"main-list"],["mat-list-item","","routerLink","/substances/register/chemical"],["matListIcon","","svgIcon","outline-description"],["mat-list-item","","routerLink","/substances/register/protein"],["mat-list-item","","routerLink","/substances/register/polymer"],["mat-list-item","","routerLink","/substances/register/nucleicAcid"],["mat-list-item","","routerLink","/substances/register/structurallyDiverse"],["mat-list-item","","routerLink","/substances/register/concept"],["mat-list-item","","routerLink","/substances/register/mixture"],["mat-list-item","","routerLink","/substances/register/specifiedSubstanceG1"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],[1,"side-nav-content",3,"ngClass"],["class","welcome-banner home-card",4,"ngIf"],[1,"home-card",3,"ngClass"],[1,"flex-row","image-row"],[1,"image-container"],["alt","first display image",1,"display-image",3,"src"],["alt","second display image",1,"display-image",3,"src"],["alt","third display image",1,"display-image",3,"src"],["alt","fourth display image",1,"display-image",3,"src"],[1,"row"],[1,"home"],[2,"padding-left","15px"],[1,"flex-row",2,"padding","5px"],["placeholder","Search Substances","styling","homePage","eventCategory","topSearch",1,"main-search",3,"searchValue","searchPerformed","opened","closed"],[1,"flex-row","even",2,"margin-bottom","25px"],[1,"button-container"],["mat-raised-button","","routerLink","/browse-substance",1,"big-button"],["class","button-container",4,"ngIf"],["mat-raised-button","","routerLink","/structure-search",1,"big-button"],["mat-raised-button","","routerLink","/sequence-search",1,"big-button"],["mat-raised-button","","routerLink","/bulk-search",1,"big-button"],[1,"divide-test"],[1,"flex-row",2,"padding-bottom","10px"],[1,"data"],[1,"flex-row","test",2,"padding-bottom","10px"],["class","custom-wrap",3,"click",4,"ngFor","ngForOf"],[2,"padding-left","15px","padding-top","10px"],["class","home-card",4,"ngIf"],["cols","2"],[4,"ngFor","ngForOf"],["helpfulResourceModal",""],[4,"ngIf"],["mat-list-item","","routerLink","/browse-applications"],["mat-list-item","","routerLink","/browse-products"],["mat-list-item","","routerLink","/browse-clinical-trials"],["mat-list-item","","routerLink","/browse-adverse-events"],["mat-list-item","","target","_blank",3,"href"],[1,"other-list"],["mat-list-item","","routerLink","/product/register"],["mat-list-item","","routerLink","/application/register"],["mat-list-item","","routerLink","/impurities/register"],[1,"welcome-banner","home-card"],[1,"banner-main",3,"innerHTML"],["mat-raised-button","","routerLink","/browse-applications",1,"big-button"],[1,"custom-wrap",3,"click"],[1,"entry"],[1,"label"],[1,"value"],[1,"home-card"],[1,"home",2,"padding-top","15px"],[1,"temprow","right-link","left-link"],[1,"resource-link"],["class","mat-raised-button mat-button mat-primary mat-primary-button trial-button","tabindex","0","role","link",3,"click",4,"ngIf"],["class","mat-raised-button mat-button mat-primary mat-primary-button trial-button","target","_blank",3,"href",4,"ngIf"],[1,"img-container"],["alt","GSRS Helpful Resource",1,"test",3,"src"],[1,"resource-desc",3,"innerHtml"],["tabindex","0","role","link",1,"mat-raised-button","mat-button","mat-primary","mat-primary-button","trial-button",3,"click"],["target","_blank",1,"mat-raised-button","mat-button","mat-primary","mat-primary-button","trial-button",3,"href"],["mat-dialog-content","",1,"button-modal"],[1,"modal-button",3,"href"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-dialog-close","",1,"mat-raised-button","mat-primary"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"mat-sidenav-container",1),t.TgZ(2,"mat-sidenav",2,3),t.TgZ(4,"div",4),t.TgZ(5,"div",5),t.TgZ(6,"mat-card-content",6),t.TgZ(7,"mat-card",7),t.TgZ(8,"h2",8),t._uU(9,"Quick Links"),t.qZA(),t.qZA(),t.TgZ(10,"mat-accordion",9),t.TgZ(11,"mat-expansion-panel",10),t.TgZ(12,"mat-expansion-panel-header"),t.TgZ(13,"mat-panel-title",11),t._uU(14," Substances "),t.qZA(),t.qZA(),t.TgZ(15,"mat-nav-list"),t.TgZ(16,"a",12),t._UZ(17,"mat-icon",13),t._uU(18," Browse Substances "),t.qZA(),t._UZ(19,"mat-divider"),t.TgZ(20,"a",14),t._UZ(21,"mat-icon",15),t._uU(22," Structure Search "),t.qZA(),t._UZ(23,"mat-divider"),t.TgZ(24,"a",16),t._UZ(25,"mat-icon",15),t._uU(26," Sequence Search "),t.qZA(),t._UZ(27,"mat-divider"),t.TgZ(28,"a",17),t._UZ(29,"mat-icon",18),t._uU(30," Advanced Search "),t.qZA(),t.qZA(),t.qZA(),t.YNc(31,Nt,11,5,"mat-expansion-panel",19),t.TgZ(32,"mat-expansion-panel",10),t.TgZ(33,"mat-expansion-panel-header"),t.TgZ(34,"mat-panel-title",11),t._uU(35," Register "),t.qZA(),t.qZA(),t.TgZ(36,"mat-nav-list",20),t.TgZ(37,"a",21),t._UZ(38,"mat-icon",22),t._uU(39," Chemical "),t.qZA(),t._UZ(40,"mat-divider"),t.TgZ(41,"a",23),t._UZ(42,"mat-icon",22),t._uU(43," Protein "),t.qZA(),t._UZ(44,"mat-divider"),t.TgZ(45,"a",24),t._UZ(46,"mat-icon",22),t._uU(47," Polymer "),t.qZA(),t._UZ(48,"mat-divider"),t.TgZ(49,"a",25),t._UZ(50,"mat-icon",22),t._uU(51," Nucleic Acid "),t.qZA(),t._UZ(52,"mat-divider"),t.TgZ(53,"a",26),t._UZ(54,"mat-icon",22),t._uU(55," Structurally Diverse "),t.qZA(),t._UZ(56,"mat-divider"),t.TgZ(57,"a",27),t._UZ(58,"mat-icon",22),t._uU(59," Concept "),t.qZA(),t._UZ(60,"mat-divider"),t.TgZ(61,"a",28),t._UZ(62,"mat-icon",22),t._uU(63," Mixture "),t.qZA(),t._UZ(64,"mat-divider"),t.TgZ(65,"a",29),t._UZ(66,"mat-icon",22),t._uU(67," Specified Substance Group 1 "),t.qZA(),t.qZA(),t.GkF(68),t.qZA(),t.YNc(69,Si,8,2,"mat-expansion-panel",19),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(70,"mat-sidenav-content"),t.TgZ(71,"button",30),t.NdJ("click",function(){return i.openSideNav()}),t._UZ(72,"mat-icon",31),t.qZA(),t.TgZ(73,"div",32),t.YNc(74,Ai,2,1,"mat-card",33),t.TgZ(75,"mat-card",34),t.TgZ(76,"div",35),t.TgZ(77,"div",36),t._UZ(78,"img",37),t.qZA(),t.TgZ(79,"div",36),t._UZ(80,"img",38),t.qZA(),t.TgZ(81,"div",36),t._UZ(82,"img",39),t.qZA(),t.TgZ(83,"div",36),t._UZ(84,"img",40),t.qZA(),t.qZA(),t.TgZ(85,"div",41),t.TgZ(86,"h1",42),t._uU(87),t.qZA(),t.TgZ(88,"div",43),t._uU(89),t.qZA(),t.qZA(),t.TgZ(90,"div",44),t.TgZ(91,"app-substance-text-search",45),t.NdJ("searchPerformed",function(w){return i.processSubstanceSearch(w)})("opened",function(){return i.increaseMenuZindex()})("closed",function(){return i.removeZindex()}),t.qZA(),t.qZA(),t.TgZ(92,"div",46),t.TgZ(93,"div",47),t.TgZ(94,"a",48),t._uU(95,"Browse Substances"),t.qZA(),t.qZA(),t.YNc(96,Fi,3,0,"div",49),t.TgZ(97,"div",47),t.TgZ(98,"a",50),t._uU(99,"Structure Search"),t.qZA(),t.qZA(),t.TgZ(100,"div",47),t.TgZ(101,"a",51),t._uU(102,"Sequence Search"),t.qZA(),t.qZA(),t.TgZ(103,"div",47),t.TgZ(104,"a",52),t._uU(105,"Bulk Search"),t.qZA(),t.qZA(),t.qZA(),t._UZ(106,"mat-divider",53),t.TgZ(107,"div",54),t.TgZ(108,"div",55),t._uU(109),t.ALo(110,"number"),t.qZA(),t.qZA(),t.TgZ(111,"div",56),t.YNc(112,Ma,7,6,"div",57),t.qZA(),t._UZ(113,"div",58),t.qZA(),t.YNc(114,ot,3,0,"mat-card",59),t.TgZ(115,"mat-grid-list",60),t.YNc(116,ie,8,5,"mat-grid-tile",61),t.qZA(),t.YNc(117,Ye,7,2,"ng-template",null,62,t.W1O),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(1),t.Q6J("hasBackdrop",i.hasBackdrop),t.xp6(1),t.Q6J("disableClose",!i.isCollapsed),t.xp6(9),t.Q6J("expanded",!0),t.xp6(20),t.Q6J("ngIf",i.loadedComponents),t.xp6(1),t.Q6J("expanded",!0),t.xp6(37),t.Q6J("ngIf",i.loadedComponents),t.xp6(4),t.Q6J("ngClass",i.isClosedWelcomeMessage?"topMargin":""),t.xp6(1),t.Q6J("ngIf",i.bannerMessage&&""!==i.bannerMessage),t.xp6(1),t.Q6J("ngClass",""),t.xp6(3),t.MGl("src","",i.imageLoc,"pills1.png",t.LSH),t.xp6(2),t.MGl("src","",i.imageLoc,"chemistry2.png",t.LSH),t.xp6(2),t.MGl("src","",i.imageLoc,"hydrangea.png",t.LSH),t.xp6(2),t.MGl("src","",i.imageLoc,"dna.png",t.LSH),t.xp6(3),t.Oqu(i.homeHeader),t.xp6(2),t.Oqu(i.homeContents),t.xp6(2),t.Q6J("searchValue",i.searchValue),t.xp6(5),t.Q6J("ngIf",i.loadedComponents&&i.loadedComponents.applications),t.xp6(13),t.hij(" Total substances: ",t.Dn7(110,21,i.total,"1.0","en-US")," "),t.xp6(3),t.Q6J("ngForOf",i.customLinks),t.xp6(2),t.Q6J("ngIf",null==i.usefulLinks?null:i.usefulLinks.length),t.xp6(2),t.Q6J("ngForOf",i.usefulLinks))},directives:[aa.TM,aa.JX,xi.dn,xi.a8,Ui.pp,Ui.ib,Ui.yz,Ui.yK,ca.Hk,ca.Tg,_.yS,Y.Hw,ca.Nh,pt.d,ve.O5,aa.Rh,ve.mk,Ne.e,y.zs,ve.sg,Lt,ya,G.xY,G.H8,G.ZT],pipes:[ve.JJ],styles:[".middle-content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-top:20px}.button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin-top:15px}.search-section[_ngcontent-%COMP%]{margin:0 20px;width:300px}.register-section[_ngcontent-%COMP%]{margin:0 20px 0 10px;width:auto}.register-header[_ngcontent-%COMP%]{font-size:16px;font-weight:400}.register-card-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.register-card-content[_ngcontent-%COMP%] .register-other[_ngcontent-%COMP%]{margin-top:10px;margin-left:20px}.register-card-content[_ngcontent-%COMP%] .register-main[_ngcontent-%COMP%]{margin-top:10px;margin-right:20px;min-width:275px;margin-left:10px}.register-card-content[_ngcontent-%COMP%] .register-main[_ngcontent-%COMP%] .main-list[_ngcontent-%COMP%], .register-card-content[_ngcontent-%COMP%] .register-main[_ngcontent-%COMP%] .other-list[_ngcontent-%COMP%]{padding-top:0}.old-icon[_ngcontent-%COMP%]{height:28px;width:30px;padding-right:7px;margin-bottom:-5px}.divider-vertical[_ngcontent-%COMP%]{margin-top:25px}.image-row[_ngcontent-%COMP%]{-ms-flex-pack:space-evenly;justify-content:space-evenly;max-width:1200px;margin:auto}.display-image[_ngcontent-%COMP%]{max-height:225px;max-width:281px;height:100%;width:100%}.image-container[_ngcontent-%COMP%]{width:24%}.quick-links[_ngcontent-%COMP%]{color:var(--primary-color);font-weight:550;margin-left:30%;font-size:23px}.resource-row[_ngcontent-%COMP%]{margin-left:15px;margin-right:15px}.temprow[_ngcontent-%COMP%]{width:45%;margin-top:0;margin-bottom:0}.test[_ngcontent-%COMP%]{margin:auto auto 15px;width:100%}.row3[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;margin:15px auto auto;max-width:1220px}.shrunken-icon[_ngcontent-%COMP%]{width:20px;padding-left:5px}.mat-list-base[_ngcontent-%COMP%] .mat-list-item.mat-list-item-with-avatar[_ngcontent-%COMP%]{height:52px}.right-link[_ngcontent-%COMP%]{margin-left:10px}.left-link[_ngcontent-%COMP%]{margin-right:10px}.button-modal[_ngcontent-%COMP%]{-ms-flex-pack:center;justify-content:center;-ms-flex-line-pack:center;align-content:center;height:115px;padding-top:50px}.modal-button[_ngcontent-%COMP%]{font-size:18px;color:var(--primary-color)}.trial-button[_ngcontent-%COMP%]{color:var(--regular-white-color);font-size:18px}.closed-welcome-padding[_ngcontent-%COMP%]{height:60px!important;width:100%}.mat-list-base[_ngcontent-%COMP%]{position:relative;padding-top:0}.resource-link[_ngcontent-%COMP%]{color:var(--primary-color)!important;font-weight:550;margin-top:5px}.resource-desc[_ngcontent-%COMP%]{padding-left:15px;padding-bottom:10px}.panel-header[_ngcontent-%COMP%]{font-size:18px;font-weight:550px}.subtest[_ngcontent-%COMP%]{position:relative!important;padding:2px}a.mat-list-item[_ngcontent-%COMP%]{color:var(--link-color)}.mat-list-base[_ngcontent-%COMP%] .mat-list-item[_ngcontent-%COMP%] .mat-list-icon[_ngcontent-%COMP%]{color:var(--mat-list-color)}.big-button[_ngcontent-%COMP%]{font-size:19px!important;color:var(--regular-white-color)!important;background-color:var(--primary-color)!important;padding:3px 14px!important}.button-container[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto;margin-top:15px}.button-container[_ngcontent-%COMP%] .big-button[_ngcontent-%COMP%]{font-size:19px!important;color:var(--regular-white-color)!important;background-color:var(--primary-color)!important;padding:3px 14px!important}.banner-main[_ngcontent-%COMP%]{width:calc(100% - 50px)}.topMargin[_ngcontent-%COMP%]{margin-top:75px!important}.welcome-banner[_ngcontent-%COMP%]{margin-top:0;width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.welcome-banner[_ngcontent-%COMP%] .close-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;color:#296ca3}mat-list-item[_ngcontent-%COMP%]{height:52px}.home-card[_ngcontent-%COMP%]{margin-bottom:15px}.padding[_ngcontent-%COMP%]{padding-bottom:5px;margin-left:61px;width:90%!important}.home[_ngcontent-%COMP%]{font-weight:500;font-size:27px;color:var(--primary-color)}.spaced[_ngcontent-%COMP%]{padding:5px}.main-search[_ngcontent-%COMP%]{margin-left:10%;margin-right:10%;max-width:100%;min-width:80%}.row[_ngcontent-%COMP%]{line-height:24px;padding-bottom:10px;padding-top:10px}.flex-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row}.flex-row[_ngcontent-%COMP%] .equal-width[_ngcontent-%COMP%]{-ms-flex:1 0 0px;flex:1 0 0}.label[_ngcontent-%COMP%]{min-width:200px;margin-left:70px}.value[_ngcontent-%COMP%]{min-width:50px}.data[_ngcontent-%COMP%]{margin:auto;font-weight:550;font-size:20px;padding:10px 10px 15px}.main-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.main-page[_ngcontent-%COMP%]{margin:auto}.side-bar[_ngcontent-%COMP%]{width:325px;margin-top:0;padding:0}.divide-test[_ngcontent-%COMP%]{padding:4px;position:relative!important}.test[_ngcontent-%COMP%]{-ms-flex-pack:space-evenly;justify-content:space-evenly;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.custom-wrap[_ngcontent-%COMP%]:hover{text-decoration:underline;background-color:var(--hover-bg-color);cursor:pointer}.custom-wrap[_ngcontent-%COMP%]{width:33%}@media (max-width: 1000px){.custom-wrap[_ngcontent-%COMP%]{width:50%}}@media (max-width: 700px){.label[_ngcontent-%COMP%]{margin-left:5px;min-width:160px}}.entry[_ngcontent-%COMP%]{color:var(--link-color);display:-ms-flexbox;display:flex;padding:5px;margin:auto}.entry[_ngcontent-%COMP%]:hover{text-decoration:underline;background-color:var(--hover-bg-color);cursor:pointer}.entry[_ngcontent-%COMP%]:hover div[_ngcontent-%COMP%]{text-decoration:underline}.half-column[_ngcontent-%COMP%]{width:28%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:18px}.half-column[_ngcontent-%COMP%] color[_ngcontent-%COMP%]{color:var(--link-color)}.even[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;-ms-flex-positive:1;flex-grow:1;-ms-flex-wrap:wrap;flex-wrap:wrap}.third[_ngcontent-%COMP%]{width:33%;margin-bottom:20px}.img-responsive[_ngcontent-%COMP%]{height:170px}.para[_ngcontent-%COMP%]{margin-top:10px;margin-bottom:10px}.mat-sidenav[_ngcontent-%COMP%]{width:365px}mat-sidenav[_ngcontent-%COMP%]{width:365px} .mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.dynamic-container[_ngcontent-%COMP%]{width:100%;min-height:5px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:1220px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto}.cards[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:#448aff;padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--regular-red-color)}.table-view-name[_ngcontent-%COMP%]{color:#448aff}.tile-title[_ngcontent-%COMP%]{height:19px} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:var(--primary-color);width:285px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container-2[_ngcontent-%COMP%]{margin-bottom:10px}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%]{height:300px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:var(--regular-transparent-color)}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.exact-matches-container[_ngcontent-%COMP%]{margin-top:80px}.exact-match-control[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-line-pack:center;align-content:center;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;margin-bottom:20px}.exact-match-control[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-top:15px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:0px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.menu-checkbox[_ngcontent-%COMP%]:hover{background-color:var(--regular-white-color)}@media (max-width: 1615px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:#f0ad4e}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:#448aff;text-decoration-style:unset}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.more-content[_ngcontent-%COMP%]{width:45%}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:var(--regular-red-color)}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.disable-export[_ngcontent-%COMP%]{pointer-events:none;opacity:.5}.button-link-img[_ngcontent-%COMP%]{line-height:40px;color:var(--regular-black-color)}"]}),g}();function oe(g,A){1&g&&(t.O4$(),t.kcU(),t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",28),t._UZ(3,"mat-icon",29),t._uU(4," Structure Search "),t.qZA(),t._UZ(5,"mat-divider"),t.TgZ(6,"a",30),t._UZ(7,"mat-icon",29),t._uU(8," Sequence Search "),t.qZA(),t._UZ(9,"mat-divider"),t.TgZ(10,"a",31),t._UZ(11,"mat-icon",32),t._uU(12," Advanced Search "),t.qZA(),t.qZA())}function bt(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",34),t._UZ(3,"mat-icon",6),t._uU(4," Browse Applications "),t.qZA(),t.qZA())}function xt(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",35),t._UZ(3,"mat-icon",6),t._uU(4," Browse Products "),t.qZA(),t.qZA())}function Jt(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",36),t._UZ(3,"mat-icon",6),t._uU(4," Browse Clinical Trials "),t.qZA(),t.qZA())}function zn(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",37),t._UZ(3,"mat-icon",6),t._uU(4," Browse Adverse Events "),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(2),t.Q6J("href",l.adverseEventShinyHomepageURL,t.LSH)}}function hi(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,zn,5,1,"div",9),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!0===l.adverseEventShinyHomepageDisplay)}}function qi(g,A){if(1&g&&(t.O4$(),t.kcU(),t.TgZ(0,"span"),t.YNc(1,bt,5,0,"span",9),t.YNc(2,xt,5,0,"span",9),t.YNc(3,Jt,5,0,"span",9),t.YNc(4,hi,2,1,"span",9),t._UZ(5,"mat-divider"),t.TgZ(6,"a",28),t._UZ(7,"mat-icon",29),t._uU(8," Structure Search "),t.qZA(),t._UZ(9,"mat-divider"),t.TgZ(10,"a",30),t._UZ(11,"mat-icon",29),t._uU(12," Sequence Search "),t.qZA(),t._UZ(13,"mat-divider"),t.TgZ(14,"a",31),t._UZ(15,"mat-icon",32),t._uU(16," Advanced Search "),t._UZ(17,"mat-icon",33),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.clinicaltrials),t.xp6(1),t.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.adverseevents)}}function Oi(g,A){1&g&&(t.TgZ(0,"span"),t._uU(1," (Login to Register)"),t.qZA())}function Wa(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",38),t._UZ(3,"mat-icon",15),t._uU(4," Product "),t.qZA(),t.qZA())}function Ni(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",39),t._UZ(3,"mat-icon",15),t._uU(4," Application "),t.qZA(),t.qZA())}function cr(g,A){1&g&&(t.TgZ(0,"span"),t._UZ(1,"mat-divider"),t.TgZ(2,"a",40),t._UZ(3,"mat-icon",15),t._uU(4," Impurities "),t.qZA(),t.qZA())}function po(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,Wa,5,0,"span",9),t.YNc(2,Ni,5,0,"span",9),t.YNc(3,cr,5,0,"span",9),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.products),t.xp6(1),t.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.applications),t.xp6(1),t.Q6J("ngIf",l.loadedComponents&&l.loadedComponents.impurities)}}function ia(g,A){1&g&&t._UZ(0,"mat-divider")}var Nl=function(){return["/browse-substance"]},Os=function(A){return{facets:A}};function qa(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",41),t.TgZ(2,"div",42),t.TgZ(3,"div",43),t._uU(4),t.qZA(),t.TgZ(5,"div",44),t._uU(6),t.ALo(7,"number"),t.qZA(),t.qZA(),t.qZA(),t.YNc(8,ia,1,0,"mat-divider",9),t.qZA()),2&g){var l=A.$implicit,i=A.last,C=A.index;t.xp6(1),t.Q6J("routerLink",t.DdM(9,Nl))("queryParams",t.VKq(10,Os,l.queryParams)),t.xp6(3),t.hij(" ",l.display," "),t.xp6(2),t.hij(" ",l.total?l.total:t.Dn7(7,5,0,"1.0","en-US")," "),t.xp6(2),t.Q6J("ngIf",!i||C<13)}}function xo(g,A){1&g&&t._UZ(0,"mat-divider",45),2&g&&t.Q6J("vertical",!0)}function jo(g,A){1&g&&t._UZ(0,"mat-divider")}function hs(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"a",46),t.NdJ("click",function(){var Ze=t.CHM(l).$implicit;return t.oxw().routeToCustom(Ze)}),t.TgZ(2,"div",42),t.TgZ(3,"div",43),t._uU(4),t.qZA(),t.TgZ(5,"div",44),t._uU(6),t.ALo(7,"number"),t.qZA(),t.qZA(),t.qZA(),t.YNc(8,jo,1,0,"mat-divider",9),t.qZA()}if(2&g){var i=A.$implicit,C=A.last;t.xp6(1),t.Q6J("routerLink",t.DdM(9,Nl))("queryParams",t.VKq(10,Os,i.queryParams)),t.xp6(3),t.hij(" ",i.display," "),t.xp6(2),t.hij(" ",i.total?i.total:t.Dn7(7,5,0,"1.0","en-US")," "),t.xp6(2),t.Q6J("ngIf",!C)}}var gl=function(){var g=function(){function A(l,i,C,w,V){(0,c.Z)(this,A),this.gaService=l,this.configService=i,this.authService=C,this.substanceService=w,this.router=V,this.isAuthenticated=!1,this.isClosedWelcomeMessage=!0,this.adverseEventShinyHomepageDisplay=!1,this.contactEmail=this.configService.configData.contactEmail,this.clasicBaseHref=this.configService.environment.clasicBaseHref}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.environment=this.configService.environment,this.application="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_application.png"),this.browseAll="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_browseall.png"),this.chemicon="".concat(this.configService.environment.baseHref||"","assets/icons/home/icon_registersubstance.png"),this.loadedComponents=this.configService.configData.loadedComponents||null,this.appId=this.configService.environment.appId,this.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry","Admin").subscribe(function(C){i.isAuthenticated=C}),this.gaService.sendPageView("Home"),this.baseDomain=this.configService.configData.apiUrlDomain,this.customLinks1=this.configService.configData.registrarDynamicLinks,this.customLinks2=this.configService.configData.registrarDynamicLinks2,this.customLinks1.forEach(function(C){for(var w="",V=0;V2&&void 0!==arguments[2]?arguments[2]:10,Ot=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,Bt=this.configService.configData.apiBaseUrl+"api/v1/"+w+"/@bulkQuery",cn={params:{top:Ze,skip:Ot},type:"JSON",headers:{}};return this.http.get(Bt+"?id="+V,cn)}},{key:"getBulkSearch",value:function(w,V){var Ze=arguments.length>2&&void 0!==arguments[2]&&arguments[2],Ot=this.configService.configData.apiBaseUrl+"api/v1/"+w+"/bulkSearch",Bt=new u.LE;(Bt=(Bt=Bt.append("bulkQID",V)).append("searchOnIdentifiers",Ze)).append("simpleSearchOnly",null);var cn={params:Bt,type:"JSON",headers:{}};return this.http.get(Ot,cn)}},{key:"getBulkSearchStatus",value:function(w){return this.http.get(this.configService.configData.apiBaseUrl+"api/v1/status/"+w,{type:"JSON",headers:{}})}},{key:"getBulkSearchStatusResults",value:function(w,V,Ze,Ot,Bt){var cn=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"",Fn=arguments.length>6&&void 0!==arguments[6]?arguments[6]:"",Bn=this.configService.configData.apiBaseUrl+"api/v1/status/"+w+"/results",Kn={params:{top:V,skip:Ze,qTop:Ot,qSkip:Bt,qSort:cn,qFilter:Fn},type:"JSON",headers:{}};return this.http.get(Bn,Kn)}}]),i}(L.q);return g.\u0275fac=function(l){return new(l||g)(t.LFG(u.eN),t.LFG(fn.E))},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac,providedIn:"root"}),g}(),kn=n(96936),Vn=n(32673),Di=n(62566),Gi=n(26439),tr=["paginator"],ar=["context","","key",""];function ja(g,A){1&g&&(t.TgZ(0,"div"),t.TgZ(1,"h2",19),t._uU(2,"Bulk Search Summary (Full Results)"),t.qZA(),t.qZA())}function Es(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",20),t.TgZ(1,"span",21),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).setAndFilterData(void 0)}),t._uU(2),t.qZA(),t._uU(3,"\xa0\xa0\xa0\xa0 "),t.TgZ(4,"span",21),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).setAndFilterData("records_length>0")}),t._uU(5),t.qZA(),t._uU(6,"\xa0\xa0\xa0\xa0 "),t.TgZ(7,"span",21),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).setAndFilterData("records_length:0")}),t._uU(8),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(2),t.hij("All Queries: ",i.totalQueries,""),t.xp6(3),t.hij("Matched: ",i.totalQueriesMatch,""),t.xp6(3),t.hij("Unmatched: ",i.totalQueriesUnMatch,"")}}function hu(g,A){1&g&&(t.TgZ(0,"span"),t._uU(1," Showing all queries "),t.qZA())}function so(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t._uU(1),t.TgZ(2,"span",21),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).setAndFilterData(void 0)}),t._uU(3,"show all"),t.qZA(),t._uU(4,") "),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(1),t.hij(" Showing ",i.qFilteredTotal," matched queries (")}}function Zs(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t._uU(1),t.TgZ(2,"span",21),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).setAndFilterData(void 0)}),t._uU(3,"show all"),t.qZA(),t._uU(4,") "),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(1),t.hij(" Showing ",i.qFilteredTotal," unmatched queries (")}}function Rl(g,A){if(1&g&&(t.TgZ(0,"div",20),t.YNc(1,hu,2,0,"span",2),t.YNc(2,so,5,1,"span",2),t.YNc(3,Zs,5,1,"span",2),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",void 0===l.qFilter),t.xp6(1),t.Q6J("ngIf","records_length>0"===l.qFilter),t.xp6(1),t.Q6J("ngIf","records_length:0"===l.qFilter)}}function Ir(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"button",22),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).getBulkSearchStatusResultsSummaryForDownload()}),t._UZ(2,"mat-icon",23),t._uU(3," Download Report "),t.qZA(),t.qZA()}}function il(g,A){if(1&g&&(t.TgZ(0,"th",24),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Oqu(l.displayedColumnNames.searchTerm)}}function vs(g,A){if(1&g&&(t.TgZ(0,"td",25),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.s9C("title",l.modifiedSearchTerm),t.xp6(1),t.Oqu(l.searchTerm)}}function $a(g,A){if(1&g&&(t.TgZ(0,"th",26),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Oqu(l.displayedColumnNames.displayName)}}function ks(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.hij(" ",l.displayName," ")}}var ys=function(A,l){return["/",A,l]};function Ul(g,A){if(1&g&&(t.TgZ(0,"a",29),t._uU(1),t.qZA()),2&g){var l=t.oxw(2).$implicit,i=t.oxw(2);t.Q6J("routerLink",t.WLB(2,ys,i.context,l.id)),t.xp6(1),t.hij(" ",l.displayName," ")}}function ao(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1,"("),t.TgZ(2,"a",29),t._uU(3,"no name"),t.qZA(),t._uU(4,")"),t.qZA()),2&g){var l=t.oxw(2).$implicit,i=t.oxw(2);t.xp6(2),t.Q6J("routerLink",t.WLB(1,ys,i.context,l.id))}}function as(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,Ul,2,5,"a",28),t.YNc(2,ao,5,4,"span",2),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",l.displayName),t.xp6(1),t.Q6J("ngIf",!l.displayName)}}var Tr=function(){return["/browse-substance"]},bs=function(A){return{search:A}};function Qo(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",30),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.Q6J("routerLink",t.DdM(3,Tr))("queryParams",t.VKq(4,bs,l.modifiedSearchTerm)),t.xp6(1),t.Oqu(l.displayName)}}function Cs(g,A){if(1&g&&(t.TgZ(0,"td",27),t.YNc(1,ks,2,1,"span",2),t.YNc(2,as,3,2,"span",2),t.YNc(3,Qo,3,6,"span",2),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("ngIf",0===l.matches),t.xp6(1),t.Q6J("ngIf",1===l.matches),t.xp6(1),t.Q6J("ngIf",l.matches>1)}}function vl(g,A){if(1&g&&(t.TgZ(0,"th",31),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Oqu(l.displayedColumnNames.matches)}}function ko(g,A){if(1&g&&(t.TgZ(0,"td",27),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Oqu(l.matches)}}function Is(g,A){if(1&g&&(t.TgZ(0,"th",26),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Oqu(l.displayedColumnNames.displayCode)}}function Ms(g,A){if(1&g&&(t.TgZ(0,"td",27),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Oqu(l.displayCode)}}function Ls(g,A){1&g&&t._UZ(0,"tr",32)}function rs(g,A){1&g&&t._UZ(0,"tr",33)}var Fs=function(){return[5,10,50,100]};function Lr(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",1),t.YNc(1,ja,3,0,"div",2),t.YNc(2,Es,9,3,"div",3),t.YNc(3,Rl,4,3,"div",3),t.TgZ(4,"div",4),t.YNc(5,Ir,4,0,"div",2),t.qZA(),t.TgZ(6,"table",5),t.NdJ("matSortChange",function(w){return t.CHM(l),t.oxw().sortData(w)}),t.ynx(7,6),t.YNc(8,il,2,1,"th",7),t.YNc(9,vs,2,2,"td",8),t.BQk(),t.ynx(10,9),t.YNc(11,$a,2,1,"th",10),t.YNc(12,Cs,4,3,"td",11),t.BQk(),t.ynx(13,12),t.YNc(14,vl,2,1,"th",13),t.YNc(15,ko,2,1,"td",11),t.BQk(),t.ynx(16,14),t.YNc(17,Is,2,1,"th",10),t.YNc(18,Ms,2,1,"td",11),t.BQk(),t.YNc(19,Ls,1,0,"tr",15),t.YNc(20,rs,1,0,"tr",16),t.qZA(),t.TgZ(21,"mat-paginator",17,18),t.NdJ("page",function(w){return t.CHM(l),t.oxw().changePage(w)}),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(1),t.Q6J("ngIf",i.showTitle&&!0===i.showTitle),t.xp6(1),t.Q6J("ngIf",null!==i.totalQueries&&i.totalQueries>0),t.xp6(1),t.Q6J("ngIf",null!==i.totalQueries&&i.totalQueries>0),t.xp6(2),t.Q6J("ngIf",i.recordOverviews&&i.recordOverviews.length>0&&i.isLoggedIn),t.xp6(1),t.Q6J("dataSource",i.dataSource),t.xp6(13),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns),t.xp6(1),t.Q6J("length",i.qFilteredTotal)("pageIndex",i.qPageIndex)("pageSize",i.qPageSize)("pageSizeOptions",t.DdM(11,Fs))}}var al=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot){(0,c.Z)(this,A),this.loadingService=l,this.authService=i,this.notificationService=C,this.bulkSearchService=w,this.configService=V,this.router=Ze,this.location=Ot,this.key=null,this.context="substances",this.loadSummary=!0,this.showTitle=!0,this.isCollapsed=!1,this.sort=new lt.YE,this.recordOverviews=[],this.isLoggedIn=!1,this.isAdmin=!1,this.showAudit=!1,this.isPolling=!0,this.pollingInterval=2500,this.defaultDisplayCodeHeader="Code",this.defaultIdHeader="Id",this.sortValues=[{value:"^searchTerm",display:"Search Term Ascending "},{value:"$searchTerm",display:"Search Term Descending"},{value:"^records_length",display:"Matches Ascending"},{value:"$records_length",display:"Matches Descending"}],this.filterValues=[{value:"",display:"No filter"},{value:"records_length:0",display:"No matches"},{value:"records_length:1",display:"One match"},{value:"records_length>0",display:"One or more matches"},{value:"records_length>1",display:"More than one match"}],this.displayedColumns=["searchTerm","displayName","matches","displayCode"],this.displayedColumnNames={searchTerm:"Search Term",displayName:"Display Name",matches:"Matches",displayCode:"Code"},this.dataSource=new ue.by(this.recordOverviews),this._summary=null,this._summaryForDownload=null}return(0,e.Z)(A,[{key:"summary",get:function(){return this._summary},set:function(i){this.summary=i}},{key:"ngAfterViewInit",value:function(){this.dataSource.paginator=this.paginator,this.dataSource.sort=this.sort}},{key:"ngOnInit",value:function(){var i=this;this.authService.getAuth().subscribe(function(w){w?i.isLoggedIn=!0:i.showDeprecated=!1,i.isAdmin=i.authService.hasAnyRoles("Updater","SuperUpdater"),i.showAudit=i.authService.hasRoles("admin")}),this.qPageSize=10,this.qPageIndex=0,this.loadSummary&&this.pollUntillCompleted()}},{key:"ngOnChanges",value:function(){this.loadSummary||this._summary.queries&&this.summaryToRecordOverviews()}},{key:"changePage",value:function(i){this.qPageSize=i.pageSize,this.qPageIndex=i.pageIndex,this.getBulkSearchStatusResults()}},{key:"populateUrlQueryParameters",value:function(){var i={queryParams:{}};i.queryParams.qSort=this.qSort,i.queryParams.qFilter=this.qFilter,i.queryParams.qTop=this.qPageSize,i.queryParams.qSkip=this.qPageIndex*this.qPageSize;var C=this.router.createUrlTree([],{queryParams:i.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(C.toString())}},{key:"clearSearch",value:function(){this.qPageIndex=0,this.populateUrlQueryParameters(),this.getBulkSearchStatusResults()}},{key:"pollUntillCompleted",value:function(){var i=this;(function Qn(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return g<0&&(g=0),(0,$.H)(g,g,arguments.length>1&&void 0!==arguments[1]?arguments[1]:kn.z)})(this.pollingInterval).pipe((0,Vn.w)(function(){return i.bulkSearchService.getBulkSearchStatus(i.key)}),(0,Di.o)(function(C){return!0!==(null==C?void 0:C.finished)})).subscribe(function(C){},function(C){},function(){i.isPolling=!1,i.getBulkSearchStatusResults()})}},{key:"sortData",value:function(i){this.qSort="","searchTerm"===i.active?"asc"===i.direction?this.qSort=this.sortValues[0].value:"desc"===i.direction&&(this.qSort=this.sortValues[1].value):"matches"===i.active&&("asc"===i.direction?this.qSort=this.sortValues[2].value:"desc"===i.direction&&(this.qSort=this.sortValues[3].value)),this.getBulkSearchStatusResults()}},{key:"setAndFilterData",value:function(i){this.qFilter=i,this.qPageIndex=0,this.getBulkSearchStatusResults()}},{key:"getBulkSearchStatusResults",value:function(){var i=this,w=this.bulkSearchService.getBulkSearchStatusResults(this.key,0,0,this.qPageSize,this.qPageIndex*this.qPageSize,this.qSort,this.qFilter).subscribe(function(V){i.key||console.log("Warning, key is null or undefined in getBulkSearchStatusResults."),i.context||console.log("Warning, context is null or undefined in getBulkSearchStatusResults."),(null==V?void 0:V.summary)&&(i._summary=V.summary,i.totalQueries=i._summary.qTotal,i.qFilteredTotal=i._summary.qFilteredTotal,i.totalQueriesMatch=i._summary.qMatchTotal,i.totalQueriesUnMatch=i._summary.qUnMatchTotal,i.summaryToRecordOverviews(),i.displayedColumnNames.displayCode=""==i.displayCodeHeader?i.defaultDisplayCodeHeader:i.displayCodeHeader,i.table&&(i.table.dataSource=i.recordOverviews,i.recordOverviewsShownOnPage=i.recordOverviews.length,i.table.renderRows()))},function(V){console.log("Error getting bulk search results in summary component.")},function(){w.unsubscribe()})}},{key:"summaryToRecordOverviews",value:function(){var i=this;this.displayCodeHeader="",this.recordOverviews=[],this._summary.queries.forEach(function(C){var w={};w.searchTerm=C.searchTerm,w.modifiedSearchTerm=C.modifiedSearchTerm,C.records&&(w.matches=C.records.length,0===C.records.length?(w.displayName="(no match)",w.id="(no match)",w.displayCode="(no match)",w.displayCodeName="(no match)"):1===C.records.length?(w.displayName=C.records[0].displayName,w.id=C.records[0].id,w.displayCode=C.records[0].displayCode,w.displayCodeName=C.records[0].displayCodeName,""===i.displayCodeHeader&&(i.displayCodeHeader=C.records[0].displayCodeName)):C.records.length>1&&(w.displayName="multiple",w.id="multiple",w.displayCode="multiple",w.displayCodeName="multiple")),i.recordOverviews.push(w)}),this.recordOverviews=this.recordOverviews}},{key:"makeTsvTextFromSummaryQueries",value:function(i){var C="",w=!1,V="",Ze=!1,Ot="";return i.queries.forEach(function(cn){0===cn.records.length?Ot+=(cn.searchTerm||"")+"\t"+cn.records.length+"\t\t\t\n":cn.records.forEach(function(Fn){!w&&Fn.displayCodeName&&(C=Fn.displayCodeName,w=!0),!Ze&&Fn.idName&&(V=Fn.idName,Ze=!0),Ot+=(cn.searchTerm||"")+"\t"+cn.records.length+"\t"+(Fn.displayName||"")+"\t"+(Fn.id||"")+"\t"+(Fn.displayCode||"")+"\n"})}),w||(C=this.defaultDisplayCodeHeader),Ze||(V=this.defaultIdHeader),"searchTerm\tmatches\tdisplayName\t"+V+"\t"+C+"\n"+Ot}},{key:"getBulkSearchStatusResultsSummaryForDownload",value:function(){var w,Bt,i=this,V=!1,cn=this.bulkSearchService.getBulkSearchStatus(this.key).subscribe(function(Fn){V=Fn.finished,void 0===(w=Fn.context)?alert("Context (entity type) must be defined in the JSON response."):!0!==V?alert("The seach is not yet finshed. Please try clicking again after a time."):Bt=i.bulkSearchService.getBulkSearchStatusResults(i.key,0,0,2e4,0).subscribe(function(Bn){i._summaryForDownload=Bn.summary,i.downloadSummaryQueriesFile(Bn,w+"-bulk-search-summary-"+i.key+".txt")},function(Bn){console.log("Error downloading file in getBulkSearchStatusResultsSummaryForDownload.")})},function(){cn.unsubscribe(),Bt.unsubscribe()})}},{key:"downloadSummaryQueriesFile",value:function(i,C){var w=this.makeTsvTextFromSummaryQueries(this._summaryForDownload),V=i.type,Ze=document.createElement("a");Ze.href=window.URL.createObjectURL(new Blob([w],{type:V})),Ze.setAttribute("download",C),document.body.appendChild(Ze),Ze.click()}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Jn.b),t.Y36(Wi.e),t.Y36(rn.a),t.Y36(Jo),t.Y36(fn.E),t.Y36(_.F0),t.Y36(ve.Ye))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-bulk-search-results-summary","context","","key",""]],viewQuery:function(l,i){var C;1&l&&(t.Gf(ue.BZ,5),t.Gf(tr,5),t.Gf(lt.YE,5)),2&l&&(t.iGM(C=t.CRH())&&(i.table=C.first),t.iGM(C=t.CRH())&&(i.paginator=C.first),t.iGM(C=t.CRH())&&(i.sort=C.first))},inputs:{key:"key",context:"context",loadSummary:"loadSummary",showTitle:"showTitle",isCollapsed:"isCollapsed",summary:"summary"},features:[t.TTD],attrs:ar,decls:1,vars:1,consts:[["class","wrapper",4,"ngIf"],[1,"wrapper"],[4,"ngIf"],["class","statistics",4,"ngIf"],[1,"export"],["mat-table","","matSort","",1,"",3,"dataSource","matSortChange"],["matColumnDef","searchTerm"],["mat-header-cell","","mat-sort-header","searchTerm",4,"matHeaderCellDef"],["mat-cell","",3,"title",4,"matCellDef"],["matColumnDef","displayName"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","matches"],["mat-header-cell","","mat-sort-header","matches",4,"matHeaderCellDef"],["matColumnDef","displayCode"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[3,"length","pageIndex","pageSize","pageSizeOptions","page"],["paginator",""],[1,"summary-title"],[1,"statistics"],[1,"linkish",3,"click"],["matTooltip","Export Bulk Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"click"],["svgIcon","get_app"],["mat-header-cell","","mat-sort-header","searchTerm"],["mat-cell","",3,"title"],["mat-header-cell",""],["mat-cell",""],["target","_blank","title","View the entity in new tab.",3,"routerLink",4,"ngIf"],["target","_blank","title","View the entity in new tab.",3,"routerLink"],["target","_blank","title","Perform partial search in new tab.",3,"routerLink","queryParams"],["mat-header-cell","","mat-sort-header","matches"],["mat-header-row",""],["mat-row",""]],template:function(l,i){1&l&&t.YNc(0,Lr,23,12,"div",0),2&l&&t.Q6J("ngIf",!i.isPolling)},directives:[ve.O5,y.lW,Me.gM,Y.Hw,ue.BZ,lt.YE,ue.w1,ue.fO,ue.ge,lt.nU,ue.Dz,ue.ev,_.yS,ue.as,ue.XQ,ue.nj,ue.Gk,Gi.NW],styles:[".wrapper[_ngcontent-%COMP%]{margin-bottom:20px;width:90%;margin-left:auto;margin-right:auto}.summary-title[_ngcontent-%COMP%]{font-size:16px;font-weight:550;color:var(--lighter-title-color);margin-bottom:3px;float:left}.export[_ngcontent-%COMP%]{float:right;margin-top:-10px;font-size:small}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.statistics[_ngcontent-%COMP%]{margin-top:5px;font-weight:500}.mat-expansion-panel-header[_ngcontent-%COMP%], .mat-expansion-panel-header.mat-expanded[_ngcontent-%COMP%]{height:30px!important}.linkish[_ngcontent-%COMP%]{color:var(--link-primary-color);cursor:pointer}table[_ngcontent-%COMP%] th[_ngcontent-%COMP%], table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{text-align:left;-ms-flex-pack:end;justify-content:flex-end}table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:nth-child(1), table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:nth-child(1){overflow-wrap:anywhere;width:35%!important}table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:nth-child(2), table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:nth-child(2){overflow-wrap:anywhere;width:35%!important}table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:nth-child(3){text-align:center;padding:5px;-ms-flex-pack:end;justify-content:flex-end}table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:nth-child(3){text-align:center;padding:5px;-ms-flex-pack:end;justify-content:flex-end}"]}),g}(),Gr=n(31959),xs=function(){var g=(0,e.Z)(function A(l){(0,c.Z)(this,A),this.viewContainerRef=l});return g.\u0275fac=function(l){return new(l||g)(t.Y36(t.s_b))},g.\u0275dir=t.lG2({type:g,selectors:[["","appCardDynamicSection",""]]}),g}(),Ss=n(40104);function Br(g,A){if(1&g&&t._UZ(0,"textarea",6),2&g){var l=t.oxw();t.Q6J("ngModel",l.molfile)}}var Io=function(){var g=function(){function A(l,i,C){(0,c.Z)(this,A),this.dialogRef=l,this.structureService=i,this.data=C}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.structureService.getMolfile(this.data.uuid).subscribe(function(C){i.molfile=C})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(G.so),t.Y36(ji.De),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-show-molfile-dialog"]],decls:9,vars:1,consts:[["mat-dialog-title",""],["mat-dialog-content","",2,"height","100%","overflow","unset"],["style","height: 100%",3,"ngModel",4,"ngIf"],["mat-dialog-actions",""],[1,"middle-fill"],["mat-button","","mat-dialog-close",""],[2,"height","100%",3,"ngModel"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"h1"),t._uU(2,"View Molfile"),t.qZA(),t.qZA(),t.TgZ(3,"div",1),t.YNc(4,Br,1,1,"textarea",2),t.qZA(),t.TgZ(5,"div",3),t._UZ(6,"span",4),t.TgZ(7,"button",5),t._uU(8,"Cancel"),t.qZA(),t.qZA()),2&l&&(t.xp6(4),t.Q6J("ngIf",i.molfile))},directives:[G.uh,G.xY,ve.O5,o.Fj,o.JJ,o.On,G.H8,y.lW,G.ZT],styles:[""]}),g}(),fo=n(81196),Ns=n(9292),os=n(46261);function _u(g,A){if(1&g&&(t.TgZ(0,"pre",5),t._uU(1,"\n "),t.qZA()),2&g){var l=t.oxw();t.Q6J("innerText",l.text)}}var Wc=function(){var g=function(){function A(){(0,c.Z)(this,A)}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.alignmentArray&&this.alignmentArray.alignments&&this.alignmentArray.alignments.length&&(this.alignment=this.alignmentArray.alignments[0],this.text="",this.alignment.global&&(this.text+="identity: = "+this.alignment.global.toFixed(3).toString()+" \n"),this.alignment.iden&&(this.text+="local: = "+this.alignment.iden.toFixed(3).toString()+" \n"),this.alignment.sub&&(this.text+="sub: = "+this.alignment.sub.toFixed(3).toString()+" \n"),this.alignment.score&&(this.text+="matched: = "+this.alignment.score.toString()+" \n"),this.alignment.score&&(this.text+=this.alignment.alignment))}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-sequence-alignment"]],inputs:{alignmentArray:"alignmentArray"},decls:7,vars:3,consts:[[1,"alignment-container"],[1,"alignment-label"],[1,"subunit"],[1,"alignment-id"],["class","alignment-input",3,"innerText",4,"ngIf"],[1,"alignment-input",3,"innerText"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"span",2),t._uU(3),t.qZA(),t.TgZ(4,"span",3),t._uU(5),t.qZA(),t.qZA(),t.YNc(6,_u,2,1,"pre",4),t.qZA()),2&l&&(t.xp6(3),t.hij("Subunit ",i.alignmentArray.subunitIndex,""),t.xp6(2),t.Oqu(i.alignmentArray.id),t.xp6(1),t.Q6J("ngIf",i.text))},directives:[ve.O5],styles:[".alignment-input[_ngcontent-%COMP%]{overflow-x:auto;overflow-y:auto;border-radius:4px;border:1px solid var(--sub-hierarchy-odd-bg-color);margin-top:8px;padding:5px 5px 10px;max-height:250px}.alignment-container[_ngcontent-%COMP%]{width:100%;margin-top:20px}.alignment-id[_ngcontent-%COMP%]{padding-left:10px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:var(--pink-span-color)}.subunit[_ngcontent-%COMP%]{font-style:italic}"]}),g}(),De=n(38205),Be=n(34972);function Se(g,A){if(1&g&&(t.TgZ(0,"div",3),t.TgZ(1,"div"),t._UZ(2,"mat-progress-spinner",4),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"i"),t._uU(5,"Loading"),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.Q6J("color",l.primary)("diameter",24)}}function Ie(g,A){1&g&&t._UZ(0,"mat-icon",21)}function je(g,A){if(1&g&&(t.TgZ(0,"span",22),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.hij(" ",l.relationship,"")}}var Et=function(A,l){return{odd:A,primary:l}},Qt=function(A){return["/substances",A]},bn=function(A){return["/substances",A,"edit"]};function On(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-tree-node",8),t.TgZ(1,"li",9),t.NdJ("click",function(){var Ze=t.CHM(l).$implicit;return t.oxw(2).activeNode=Ze}),t._UZ(2,"button",10),t.TgZ(3,"div",11),t.TgZ(4,"div",12),t._UZ(5,"a",13),t.TgZ(6,"a",14),t.TgZ(7,"span",15),t._uU(8,"edit in new tab"),t.qZA(),t.YNc(9,Ie,1,0,"mat-icon",16),t.qZA(),t.qZA(),t._UZ(10,"div",17),t.TgZ(11,"div",18),t.TgZ(12,"span",19),t._uU(13),t.qZA(),t.YNc(14,je,2,1,"span",20),t.qZA(),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(2);t.xp6(1),t.Q6J("ngClass",t.WLB(11,Et,"odd"===i.order,C.activeNode===i)),t.xp6(1),t.uIk("aria-label",i.text),t.xp6(3),t.Q2q("aria-label","view substance for ",i.value.refPname,""),t.Q6J("ngClass",i.self?"current-record":"")("routerLink",t.VKq(14,Qt,i.value.refuuid||""))("innerHTML",i.value.refPname,t.oJD),t.xp6(1),t.Q2q("aria-label","edit substance for ",i.value.refPname," in new tab"),t.Q6J("routerLink",t.VKq(16,bn,i.value.refuuid||"")),t.xp6(3),t.Q6J("ngIf",C.isAdmin),t.xp6(4),t.Oqu(i.value.approvalID?i.value.approvalID:"PENDING"),t.xp6(1),t.Q6J("ngIf",""!==i.relationship)}}function Tn(g,A){1&g&&t._UZ(0,"mat-icon",30)}function di(g,A){if(1&g&&(t.TgZ(0,"span",22),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.hij(" ",l.relationship,"")}}function Ei(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-nested-tree-node"),t.TgZ(1,"li",23),t.TgZ(2,"div",9),t.NdJ("click",function(){var Ze=t.CHM(l).$implicit;return t.oxw(2).activeNode=Ze})("click",function(){var Ze=t.CHM(l).$implicit;return t.oxw(2).activeNode=Ze}),t.TgZ(3,"button",24),t._UZ(4,"mat-icon",25),t.qZA(),t.TgZ(5,"div",26),t.TgZ(6,"div",12),t._UZ(7,"a",13),t.TgZ(8,"a",27),t.YNc(9,Tn,1,0,"mat-icon",28),t.qZA(),t.qZA(),t.TgZ(10,"div",18),t.TgZ(11,"span",19),t._uU(12),t.qZA(),t.YNc(13,di,2,1,"span",20),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"ul"),t.GkF(15,29),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(2);t.xp6(2),t.Q6J("ngClass",t.WLB(13,Et,"odd"===i.order,C.activeNode===i)),t.xp6(1),t.uIk("aria-label","toggle "+i.text),t.xp6(1),t.Q6J("svgIcon",C.treeControl.isExpanded(i)?"chevron_down":"chevron_right"),t.xp6(3),t.Q6J("ngClass",i.self?"current-record":"")("routerLink",t.VKq(16,Qt,i.value.refuuid||""))("innerHTML",i.value.refPname,t.oJD),t.xp6(1),t.Q2q("aria-label","edit substance for ",i.value.refPname," in new tab"),t.Q6J("routerLink",t.VKq(18,bn,i.value.refuuid||"")),t.xp6(1),t.Q6J("ngIf",C.isAdmin),t.xp6(3),t.Oqu(i.value.approvalID||"PENDING"),t.xp6(1),t.Q6J("ngIf",""!==i.relationship),t.xp6(1),t.ekj("hierarchy-tree-invisible",!C.treeControl.isExpanded(i))}}function xa(g,A){if(1&g&&(t.TgZ(0,"mat-tree",5),t.YNc(1,On,15,18,"mat-tree-node",6),t.YNc(2,Ei,16,20,"mat-nested-tree-node",7),t.qZA()),2&g){var l=t.oxw();t.Q6J("dataSource",l.dataSource)("treeControl",l.treeControl),t.xp6(2),t.Q6J("matTreeNodeDefWhen",l.hasChild)}}var Xa=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.substanceService=l,this.authService=i,this.treeControl=new De.VY(function(C){return C.children}),this.dataSource=new Be.WX,this.loading=!0,this.hasChild=function(C,w){return!!w.children&&w.children.length>0}}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.selfNode={id:0,type:"ROOT",parent:"#",expandable:!1,value:{refuuid:this.uuid,name:this.name,approvalID:this.approvalID||""},relationship:""},this.substanceService.getHierarchy(this.uuid).subscribe(function(C){i.loadHierarchy(C)},function(C){i.loadHierarchy([i.selfNode])}),this.isAdmin=this.authService.hasAnyRoles("Admin","Updater","SuperUpdater")}},{key:"loadHierarchy",value:function(i){this.loading=!1,0===i.length&&i.push(this.selfNode);for(var C=0;C1&&(i=this.formatHierarchy(i));var V=this.list_to_tree(i);this.dataSource.data=V,this.activeNode=this.dataSource.data[0]}},{key:"formatHierarchy",value:function(i){for(var C="",w="",V=[],Ze=i.length-1;Ze>=0;Ze--){0===i[Ze].depth&&(i[Ze].parent="#");var Ot=i[Ze].value;if(i[Ze].relationship="",Ot.refuuid===this.uuid&&(i[Ze].self=!0),!Ot.approvalID&&Ot.linkingID&&10===Ot.linkingID.length&&(i[Ze].value.approvalID=i[Ze].value.linkingID),!i[Ze].value.approvalID){var Bt=i[Ze].text.match(/\[(.*?)\]/);Bt&&(i[Ze].value.approvalID=Bt[1])}Ot.refuuid===C&&w.includes("HAS ACTIVE MOIETY")&&(V.push([i[Ze+1].id,i[Ze].id]),i.splice(Ze+1,1),i[Ze].relationship+="{ACTIVE MOIETY} "),i[Ze].type.includes("HAS ACTIVE MOIETY")?i[Ze].relationship+="{ACTIVE FORM} ":i[Ze].type.includes("IS SALT/SOLVATE OF")?i[Ze].relationship+="{SALT/SOLVATE} ":i[Ze].type.includes("IS SUBCONCEPT OF")?i[Ze].relationship+="{SUBCONCEPT} ":i[Ze].type.includes("IS G1SS CONSTITUENT OF")?i[Ze].relationship+="{G1SS} ":i[Ze].type.length>8&&(i[Ze].relationship="")&&(i[Ze].relationship+=" {"+i[Ze].type+"} "),i[Ze].refuuid=i[Ze].value.refuuid,C=i[Ze].refuuid,w=i[Ze].type}i.sort(function(Kn,fi){var $n=Kn.refuuid.toUpperCase(),$i=fi.refuuid.toUpperCase();return $n===$i?Kn.parentfi.parent?1:0:$n<$i?-1:$n>$i?1:0});for(var cn=i.length-1;cn>=0;cn--)cn!==i.length-1&&i[cn].value.refuuid===i[cn+1].value.refuuid&&i[cn].parent===i[cn+1].parent&&(i[cn].type.includes("HAS ACTIVE MOIETY")&&i[cn+1].type.includes("IS SALT/SOLVATE OF")?(V.push([i[cn].id,i[cn+1].id]),i.splice(cn,1)):i[cn+1].type.includes("HAS ACTIVE MOIETY")&&i[cn].type.includes("IS SALT/SOLVATE OF")&&(V.push([i[cn+1].id,i[cn].id]),i.splice(cn+1,1)));i.sort(function(Kn,fi){return Kn.id-fi.id});for(var Fn=i.length-1;Fn>=0;Fn--)for(var Bn=0;Bn0&&!i.loading))},directives:[ve.O5,kt.Ou,Be.gi,Be.fQ,Be.uo,Be.eu,ve.mk,y.lW,_.yS,Me.gM,Y.Hw,Be.GZ,Be.Ar],styles:[".mat-tree-node[_ngcontent-%COMP%]{min-height:30px!important}.hierarchy-tree-invisible[_ngcontent-%COMP%]{display:none}.hierarchy-tree[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .hierarchy-tree[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-top:0;margin-bottom:0;list-style-type:none}.spacer[_ngcontent-%COMP%]{width:50%}.approval[_ngcontent-%COMP%]{color:var(--regular-maroon-color);-ms-flex:0 0 100%;flex:0 0 100%}.end[_ngcontent-%COMP%]{white-space:nowrap;max-width:250px;-ms-flex:0 0 100%;flex:0 0 100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow:hidden;font-style:italic;text-overflow:ellipsis}.spinner[_ngcontent-%COMP%]{height:24px;width:24px;margin:-5px 10px 5px}.loading-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:300px;-ms-flex-direction:row;flex-direction:row;-ms-flex-line-pack:start;align-content:flex-start}.hierarchy-link[_ngcontent-%COMP%]{white-space:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-button[_ngcontent-%COMP%]{height:30px!important;line-height:30px!important}.right-container[_ngcontent-%COMP%]{max-width:250px;text-align:right;white-space:nowrap;-ms-flex-wrap:wrap;flex-wrap:wrap;display:-ms-flexbox;display:flex;padding-right:10px;margin:4px;vertical-align:top;-ms-flex-pack:right;justify-content:right}.title[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;max-width:calc(100% - 300px)}.tree-label[_ngcontent-%COMP%]{padding-bottom:10px;font-weight:700}.filler[_ngcontent-%COMP%]{-ms-flex:1 1 auto;flex:1 1 auto;vertical-align:center;height:2px;margin-top:auto;margin-bottom:auto;margin-left:50px;padding-left:20px}.filler-line[_ngcontent-%COMP%]{height:2px;width:100%}.no-border[_ngcontent-%COMP%]{border-top:0px}.primary[_ngcontent-%COMP%]{background-color:var(--sub-hierarchy-bg-color)!important}.hierarchy-link[_ngcontent-%COMP%]{color:var(--link-primary-color);font-style:unset;max-lines:2}.odd[_ngcontent-%COMP%]{background-color:var(--sub-hierarchy-odd-bg-color)}.node-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:calc(100% - 35px);-ms-flex-pack:justify;justify-content:space-between}.hierarchy-edit[_ngcontent-%COMP%]{height:20px;margin-left:15px}.mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.current-record[_ngcontent-%COMP%]{font-weight:700}"]}),g}(),fr=n(90813),Pr=function(){var g=function(){function A(){(0,c.Z)(this,A)}return(0,e.Z)(A,[{key:"transform",value:function(i){return(i=i.slice().sort(function(C,w){var V=-1;return C.displayName?V=-1:(!0===w.displayName||!0===w.preferred&&!0!==C.displayName||!w.displayName&&!C.displayName&&C.name>w.name)&&(V=1),V})).slice(0,4)}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275pipe=t.Yjl({name:"namesDisplayOrder",type:g,pure:!0}),g}(),Yr=n(13821),Kr=function(){var g=function(){function A(){(0,c.Z)(this,A)}return(0,e.Z)(A,[{key:"transform",value:function(i,C){return i&&i.length&&i.length>C?i.slice(0,C):i}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275pipe=t.Yjl({name:"take",type:g,pure:!0}),g}(),mo=n(89633),To=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.configService=l}return(0,e.Z)(A,[{key:"transform",value:function(i,C){return"approved"===i?this.configService.configData&&this.configService.configData.approvalCodeName?"Validated ("+this.configService.configData.approvalCodeName+")":"Validated (UNII)":i}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(fn.E,16))},g.\u0275pipe=t.Yjl({name:"statusDisplay",type:g,pure:!0}),g}();function Nr(g,A){1&g&&t._UZ(0,"mat-icon",38)}function vr(g,A){if(1&g&&(t.TgZ(0,"div",40),t.TgZ(1,"mat-chip-list",41),t.TgZ(2,"mat-chip",42),t._uU(3),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(3),t.Oqu(l.substance.structure.stereochemistry)}}function Wt(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,vr,4,1,"div",39),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.substance.structure.stereochemistry)}}function Lo(g,A){if(1&g&&(t.TgZ(0,"div"),t.TgZ(1,"div",40),t.TgZ(2,"mat-chip-list",41),t.TgZ(3,"mat-chip",42),t._uU(4),t.ALo(5,"uppercase"),t.ALo(6,"facetDisplay"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(4),t.hij("",t.lcZ(5,1,t.xi3(6,3,l.substance.substanceClass,"types"))," ")}}function yl(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"a",43),t.NdJ("click",function(){t.CHM(l);var w=t.oxw();return w.openImageModal(w.substance)}),t._UZ(2,"img",44),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(2),t.Q6J("entityId",i.substance.uuid)("atomMaps",i.substance._matchContext&&i.substance._matchContext.atomMaps||null)}}function qr(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"img",44),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("entityId",l.substance.uuid)("atomMaps",l.substance._matchContext&&l.substance._matchContext.atomMaps||null)}}function za(g,A){if(1&g&&(t.TgZ(0,"div"),t.TgZ(1,"span",45),t._uU(2,"similarity:"),t.qZA(),t.TgZ(3,"span",46),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(4),t.Oqu(l.substance._matchContext.similarity.toFixed(3))}}function Ud(g,A){if(1&g&&(t.TgZ(0,"div",47),t._uU(1),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.hij(" ",l.substance.definitionLevel," DEFINITION ")}}function Zu(g,A){if(1&g&&(t.TgZ(0,"button",48),t._UZ(1,"mat-icon",49),t.qZA()),2&g){t.oxw();var l=t.MAs(39);t.Q6J("matMenuTriggerFor",l)}}var rl=function(){return["/advanced-search"]},Fo=function(A){return{structure:A}};function zc(g,A){if(1&g&&(t.TgZ(0,"a",50),t._UZ(1,"mat-icon",51),t.qZA()),2&g){var l=t.oxw();t.Q6J("routerLink",t.DdM(2,rl))("queryParams",t.VKq(3,Fo,l.substance.structure.id))}}var Gc=function(A){return["/substances",A,"edit"]};function Bl(g,A){if(1&g&&(t.TgZ(0,"a",52),t._UZ(1,"mat-icon",53),t.qZA()),2&g){var l=t.oxw();t.Q6J("routerLink",t.VKq(1,Gc,l.substance.uuid))}}function Kc(g,A){if(1&g&&(t.TgZ(0,"button",54),t._UZ(1,"mat-icon",55),t.qZA()),2&g){t.oxw();var l=t.MAs(46);t.Q6J("matMenuTriggerFor",l)}}function ku(g,A){if(1&g&&(t.TgZ(0,"button",56),t._UZ(1,"mat-icon",49),t.qZA()),2&g){t.oxw();var l=t.MAs(27);t.Q6J("matMenuTriggerFor",l)}}var ss=function(){return["/sequence-search"]},bl=function(A,l,i){return{substance:A,subunit:l,seq_type:i}};function Yl(g,A){if(1&g&&(t.TgZ(0,"a",57),t._uU(1),t.qZA()),2&g){var l=A.$implicit,i=t.oxw();t.Q6J("routerLink",t.DdM(4,ss))("queryParams",t.kEZ(5,bl,i.substance.uuid,l.uuid,i.substance.substanceClass)),t.xp6(1),t.AsE(" subunit ",l.subunitIndex," (",l.sequence&&l.sequence.length||0,") similarity search ")}}function ql(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",21),t.NdJ("click",function(){return t.CHM(l),t.oxw().openMolModal()}),t.TgZ(1,"span"),t._uU(2,"Show Molfile"),t.qZA(),t.qZA()}}function pc(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",21),t.NdJ("click",function(){t.CHM(l);var C=t.oxw();return C.getMol(C.substance.uuid,(C.substance.approvalID?C.substance.approvalID.toString():C.substance.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function fc(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",21),t.NdJ("click",function(){t.CHM(l);var C=t.oxw();return C.getMol(C.substance.uuid,(C.substance.approvalID?C.substance.approvalID.toString():C.substance.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function Ao(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",21),t.NdJ("click",function(){t.CHM(l);var C=t.oxw();return C.getFasta(C.substance.uuid,(C.substance.approvalID?C.substance.approvalID.toString():C.substance.uuid.toString())+".fas")}),t.TgZ(1,"span"),t._uU(2,"Download Fasta"),t.qZA(),t.qZA()}}var Iu=function(){return["/structure-search"]};function ol(g,A){if(1&g&&(t.TgZ(0,"a",57),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.Q6J("routerLink",t.DdM(2,Iu))("queryParams",t.VKq(3,Fo,l.substance.structure.id))}}function Dr(g,A){if(1&g&&(t.TgZ(0,"a",57),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.Q6J("routerLink",t.DdM(2,Iu))("queryParams",t.VKq(3,Fo,l.substance.polymer.displayStructure.id))}}function Bd(g,A){if(1&g&&(t.TgZ(0,"a",57),t.TgZ(1,"span"),t._uU(2,"Advanced Structure"),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.Q6J("routerLink",t.DdM(2,rl))("queryParams",t.VKq(3,Fo,l.substance.structure.id))}}function cf(g,A){if(1&g&&(t.TgZ(0,"div",58),t.TgZ(1,"div",59),t._uU(2,"Names: "),t.qZA(),t.TgZ(3,"div"),t._UZ(4,"mat-progress-spinner",60),t.qZA(),t.TgZ(5,"div"),t.TgZ(6,"i"),t._uU(7,"Loading"),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(4),t.Q6J("color",l.primary)("diameter",24)}}function Hl(g,A){1&g&&(t.TgZ(0,"span",69),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",70),t.qZA()),2&g&&t.s9C("matTooltip",t.xi3(1,1,"displayNameTitle","substance_names_name"))}function Ci(g,A){if(1&g&&(t.TgZ(0,"div",67),t._UZ(1,"span",1),t.YNc(2,Hl,3,4,"span",68),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("innerHTML",l._nameHTML?l._nameHTML:l.name,t.oJD),t.xp6(1),t.Q6J("ngIf",1==l.displayName)}}function df(g,A){1&g&&(t.TgZ(0,"span",69),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",70),t.qZA()),2&g&&t.s9C("matTooltip",t.xi3(1,1,"displayNameTitle","substance_names_name"))}function Wo(g,A){1&g&&(t.TgZ(0,"span",69),t.ALo(1,"elementLabel"),t._UZ(2,"mat-icon",71),t.qZA()),2&g&&t.s9C("matTooltip",t.xi3(1,1,"preferredTitle","substance_names_name"))}function Yd(g,A){if(1&g&&(t.TgZ(0,"div",67),t._UZ(1,"span",1),t.YNc(2,df,3,4,"span",68),t.YNc(3,Wo,3,4,"span",68),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("innerHTML",l._nameHTML?l._nameHTML:l.name,t.oJD),t.xp6(1),t.Q6J("ngIf",1==l.displayName),t.xp6(1),t.Q6J("ngIf",1==l.preferred)}}function Ga(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",61),t.TgZ(1,"div",62),t._uU(2,"Names:"),t.qZA(),t.TgZ(3,"div",63),t.YNc(4,Ci,3,2,"div",64),t.ALo(5,"namesDisplayOrder"),t.TgZ(6,"div",65),t.NdJ("click",function(){return t.CHM(l),t.oxw().showMoreLessNames()}),t._uU(7),t.qZA(),t.qZA(),t.TgZ(8,"div",63),t.YNc(9,Yd,4,3,"div",64),t.TgZ(10,"div",66),t.NdJ("click",function(){return t.CHM(l),t.oxw().showMoreLessNames()}),t._uU(11,"Less"),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(3),t.Q6J("hidden",!i.showLessNames),t.xp6(1),t.Q6J("ngForOf",t.lcZ(5,6,i.privateNames)),t.xp6(2),t.Q6J("hidden",!i.moreThanNumberCount(i.privateNames,5)),t.xp6(1),t.hij("See ",i.names.length-4," More"),t.xp6(1),t.Q6J("hidden",i.showLessNames),t.xp6(1),t.Q6J("ngForOf",i.privateNames)}}function mc(g,A){if(1&g&&(t.TgZ(0,"span",81),t._uU(1),t.qZA()),2&g){var l=t.oxw(3).$implicit;t.xp6(1),t.hij("[",l.type,"]")}}function Hr(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",78),t.TgZ(2,"span",79),t._uU(3,"view site in new tab"),t.qZA(),t._uU(4),t.YNc(5,mc,2,1,"span",80),t.qZA(),t.qZA()),2&g){var l=t.oxw(2).$implicit,i=t.oxw().$implicit,C=t.oxw(2);t.xp6(1),t.MGl("aria-label","view site for ",l.code.trim()," in new tab"),t.Q6J("href",l.url,t.LSH),t.xp6(3),t.hij("",l.code.trim()," "),t.xp6(1),t.Q6J("ngIf",C.codeSystems[i].length>1&&"PRIMARY"!==l.type)}}function gu(g,A){if(1&g&&(t.TgZ(0,"span",81),t._uU(1),t.qZA()),2&g){var l=t.oxw(3).$implicit;t.xp6(1),t.hij("[",l.type,"]")}}function Vl(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.YNc(2,gu,2,1,"span",80),t.qZA()),2&g){var l=t.oxw(2).$implicit,i=t.oxw().$implicit,C=t.oxw(2);t.xp6(1),t.hij("",l.code.trim()," "),t.xp6(1),t.Q6J("ngIf",C.codeSystems[i].length>1&&"PRIMARY"!==l.type)}}function qd(g,A){1&g&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function Hd(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,Hr,6,4,"span",7),t.YNc(2,Vl,3,2,"span",7),t.YNc(3,qd,2,0,"span",7),t.qZA()),2&g){var l=t.oxw(),i=l.$implicit,C=l.last;t.xp6(1),t.Q6J("ngIf",i.url),t.xp6(1),t.Q6J("ngIf",!i.url),t.xp6(1),t.Q6J("ngIf",!C)}}function zo(g,A){if(1&g&&(t.TgZ(0,"span",77),t.YNc(1,Hd,4,3,"span",7),t.qZA()),2&g){var l=A.index,i=t.oxw().$implicit,C=t.oxw(2);t.xp6(1),t.Q6J("ngIf",l<5||C.showAll[i]&&!0===C.showAll[i])}}function Go(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"a",82),t.NdJ("click",function(){t.CHM(l);var V=t.oxw().$implicit,Ze=t.oxw(2);return Ze.showAll[V]=!Ze.showAll[V]||!0!==Ze.showAll[V]}),t._uU(2),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit,C=t.oxw(2);t.xp6(2),t.Oqu(C.showAll[i]?"Show Less":"Show More")}}function Po(g,A){if(1&g&&(t.TgZ(0,"div",74),t.TgZ(1,"div",75),t.TgZ(2,"span",62),t._uU(3),t.qZA(),t._uU(4,":\xa0 "),t.YNc(5,zo,2,1,"span",76),t.YNc(6,Go,3,1,"span",7),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(2);t.xp6(3),t.hij("",i.codeSystemVocab&&i.codeSystemVocab[l]?i.codeSystemVocab[l].display:l," "),t.xp6(2),t.Q6J("ngForOf",i.codeSystems[l]),t.xp6(1),t.Q6J("ngIf",i.codeSystems[l].length>4)}}function Cl(g,A){if(1&g&&(t.TgZ(0,"span",81),t._uU(1),t.qZA()),2&g){var l=t.oxw(3).$implicit;t.xp6(1),t.hij("[",l.type,"]")}}function jl(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",83),t.TgZ(2,"span",79),t._uU(3,"view site in new tab"),t.qZA(),t._uU(4),t.YNc(5,Cl,2,1,"span",80),t.qZA(),t.qZA()),2&g){var l=t.oxw(2).$implicit,i=t.oxw().$implicit,C=t.oxw(2);t.xp6(1),t.Q6J("href",l.url,t.LSH),t.xp6(3),t.hij("",l.code.trim()," "),t.xp6(1),t.Q6J("ngIf",C.codeSystems[i].length>1&&"PRIMARY"!==l.type)}}function hc(g,A){if(1&g&&(t.TgZ(0,"span",81),t._uU(1),t.qZA()),2&g){var l=t.oxw(3).$implicit;t.xp6(1),t.hij("[",l.type,"]")}}function Vd(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.YNc(2,hc,2,1,"span",80),t.qZA()),2&g){var l=t.oxw(2).$implicit,i=t.oxw().$implicit,C=t.oxw(2);t.xp6(1),t.hij("",l.code.trim()," "),t.xp6(1),t.Q6J("ngIf",C.codeSystems[i].length>1&&"PRIMARY"!==l.type)}}function Ts(g,A){1&g&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function $c(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,jl,6,3,"span",7),t.YNc(2,Vd,3,2,"span",7),t.YNc(3,Ts,2,0,"span",7),t.qZA()),2&g){var l=t.oxw(),i=l.$implicit,C=l.last;t.xp6(1),t.Q6J("ngIf",i.url),t.xp6(1),t.Q6J("ngIf",!i.url),t.xp6(1),t.Q6J("ngIf",!C)}}function Ml(g,A){if(1&g&&(t.TgZ(0,"span",77),t.YNc(1,$c,4,3,"span",7),t.qZA()),2&g){var l=A.index,i=t.oxw().$implicit,C=t.oxw(2);t.xp6(1),t.Q6J("ngIf",l<5||C.showAll[i]&&!0===C.showAll[i])}}function ho(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"a",82),t.NdJ("click",function(){t.CHM(l);var V=t.oxw().$implicit,Ze=t.oxw(2);return Ze.showAll[V]=!Ze.showAll[V]||!0!==Ze.showAll[V]}),t._uU(2),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit,C=t.oxw(2);t.xp6(2),t.Oqu(C.showAll[i]?"Show Less":"Show More")}}function No(g,A){if(1&g&&(t.TgZ(0,"div",74),t.TgZ(1,"div",75),t.TgZ(2,"span",62),t._uU(3),t.ALo(4,"async"),t.ALo(5,"codeSystemDisplay"),t.qZA(),t._uU(6,":\xa0 "),t.YNc(7,Ml,2,1,"span",76),t.YNc(8,ho,3,1,"span",7),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(2);t.xp6(3),t.hij("",t.lcZ(4,3,t.lcZ(5,5,l))," "),t.xp6(4),t.Q6J("ngForOf",i.codeSystems[l]),t.xp6(1),t.Q6J("ngIf",i.codeSystems[l].length>4)}}function Lu(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",72),t.TgZ(1,"div",62),t._uU(2,"Codes:"),t.qZA(),t.TgZ(3,"div",63),t.YNc(4,Po,7,3,"div",73),t.ALo(5,"take"),t.TgZ(6,"div",65),t.NdJ("click",function(){return t.CHM(l),t.oxw().showMoreLessCodes()}),t._uU(7),t.qZA(),t.qZA(),t.TgZ(8,"div",63),t.YNc(9,No,9,7,"div",73),t.TgZ(10,"div",66),t.NdJ("click",function(){return t.CHM(l),t.oxw().showMoreLessCodes()}),t._uU(11,"Less"),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(3),t.Q6J("hidden",!i.showLessCodes),t.xp6(1),t.Q6J("ngForOf",t.xi3(5,6,i.codeSystemNames,5)),t.xp6(2),t.Q6J("hidden",!i.moreThanNumberCount(i.codeSystemNames,6)),t.xp6(1),t.hij("See ",i.codeSystemNames.length-5," More"),t.xp6(1),t.Q6J("hidden",i.showLessCodes),t.xp6(1),t.Q6J("ngForOf",i.codeSystemNames)}}function _o(g,A){if(1&g&&(t.TgZ(0,"div",84),t.TgZ(1,"div",62),t._uU(2,"Relationships:"),t.qZA(),t.TgZ(3,"div",77),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(4),t.hij(" ",l.substance._relationships.count," ")}}function Fu(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Components:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",77),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(5),t.Oqu(l.substance.mixture.components.length)}}function Rs(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Constituents:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",77),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(5),t.Oqu(l.substance.specifiedSubstance.constituents.length)}}function Xc(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Subunits:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",77),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(5),t.Oqu(l.substance.nucleicAcid.subunits.length)}}function jd(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Mol. Weight:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",77),t._uU(5),t.ALo(6,"number"),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(5),t.Oqu(t.xi3(6,1,l.substance.structure.mwt,l.rounding))}}function Nu(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Formula:"),t.qZA(),t.TgZ(3,"div"),t._UZ(4,"span",86),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(4),t.Q6J("innerHTML",l.substance.structure.formula,t.oJD)}}function Jd(g,A){1&g&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function Ru(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.YNc(2,Jd,2,0,"span",7),t.qZA()),2&g){var l=A.$implicit,i=A.last;t.xp6(1),t.hij(" ",l," "),t.xp6(1),t.Q6J("ngIf",!i)}}function $r(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Part:"),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",87),t.YNc(5,Ru,3,2,"span",88),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(5),t.Q6J("ngForOf",l.substance.structurallyDiverse.part)}}function Jl(g,A){if(1&g&&(t.TgZ(0,"div",89),t.TgZ(1,"a",90),t._uU(2," Inxight Drugs "),t._UZ(3,"mat-icon",91),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q2q("aria-label","open ",l.inxightUrl," in new tab"),t.Q6J("href",l.inxightUrl,t.LSH)}}function Ql(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Validated By: "),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",77),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(5),t.hij(" ",l.substance.approvedBy," ")}}function As(g,A){if(1&g&&(t.TgZ(0,"div",85),t.TgZ(1,"div",62),t._uU(2,"Validated Date: "),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"span",77),t._uU(5),t.ALo(6,"date"),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(5),t.hij(" ",t.xi3(6,1,l.substance.approved,"short")," ")}}function Ro(g,A){if(1&g&&(t.TgZ(0,"div"),t.TgZ(1,"div",85),t.TgZ(2,"div",62),t._uU(3,"Created: "),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"span",77),t._uU(6),t.ALo(7,"date"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",85),t.TgZ(9,"div",62),t._uU(10,"Created By: "),t.qZA(),t.TgZ(11,"div"),t.TgZ(12,"span",77),t._uU(13),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"div",85),t.TgZ(15,"div",62),t._uU(16,"Status: "),t.qZA(),t.TgZ(17,"div"),t.TgZ(18,"span",77),t._uU(19),t.ALo(20,"statusDisplay"),t.qZA(),t.qZA(),t.qZA(),t.YNc(21,Ql,6,1,"div",33),t.YNc(22,As,7,4,"div",33),t.TgZ(23,"div",85),t.TgZ(24,"div",62),t._uU(25,"Last Modified: "),t.qZA(),t.TgZ(26,"div"),t.TgZ(27,"span",77),t._uU(28),t.ALo(29,"date"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(30,"div",85),t.TgZ(31,"div",62),t._uU(32,"Last Modified By: "),t.qZA(),t.TgZ(33,"div"),t.TgZ(34,"span",77),t._uU(35),t.qZA(),t.qZA(),t.qZA(),t.TgZ(36,"div",85),t.TgZ(37,"div",62),t._uU(38,"Version: "),t.qZA(),t.TgZ(39,"div"),t.TgZ(40,"span",77),t._uU(41),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(6),t.hij(" ",t.xi3(7,8,l.substance.created,"shortDate")," "),t.xp6(7),t.hij(" ",l.substance.createdBy," "),t.xp6(6),t.hij(" ",t.lcZ(20,11,l.substance.status)," "),t.xp6(2),t.Q6J("ngIf","approved"===l.substance.status),t.xp6(1),t.Q6J("ngIf",l.substance.approved),t.xp6(6),t.hij(" ",t.xi3(29,13,l.substance.lastEdited,"shortDate")," "),t.xp6(7),t.hij(" ",l.substance.lastEditedBy," "),t.xp6(6),t.hij(" ",l.substance.version," ")}}function Wl(g,A){1&g&&t._UZ(0,"app-sequence-alignment",93),2&g&&t.Q6J("alignmentArray",A.$implicit)}function Ps(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,Wl,1,1,"app-sequence-alignment",92),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngForOf",l.alignments)}}function ed(g,A){if(1&g&&(t.TgZ(0,"span",95),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij(" (matched queries: ",l._.join(l.substance._matchContext.queries,", "),") ")}}function go(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,ed,2,1,"span",94),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",(null==l.substance._matchContext?null:l.substance._matchContext.queries)&&l.substance._matchContext.queries.length>0)}}function _c(g,A){}var td=function(A){return["/substances",A]},nd=function(A){return["/substances/register",A]},vu=function(A){return{copy:A}},Ko=function(A){return{copy:A,copyType:"definition"}},zl=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt,cn,Fn,Bn){(0,c.Z)(this,A),this.utilsService=l,this.gaService=i,this.authService=C,this.substanceService=w,this.structureService=V,this.componentFactoryResolver=Ze,this.router=Ot,this.overlayContainerService=Bt,this.dialog=cn,this.configService=Fn,this.dynamicContentItems=Bn,this.openImage=new t.vpe,this.isAdmin=!1,this.canCreate=!1,this.searchStrategy="",this.inxightLink=!1,this.rounding="1.0-2",this.showAll=[],this.allPrimary=[],this.showLessNames=!0,this.showLessCodes=!0,this.nameLoading=!0,this._=Li}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),this.authService.hasAnyRolesAsync("Updater","SuperUpdater","Approver","admin").pipe((0,J.q)(1)).subscribe(function(C){C&&(i.isAdmin=C)}),this.authService.hasAnyRolesAsync("DataEntry","SuperDataEntry","admin").pipe((0,J.q)(1)).subscribe(function(C){C&&(i.canCreate=C)}),this.substance.protein&&(this.subunits=this.substance.protein.subunits,this.getAlignments()),this.substance.nucleicAcid&&(this.subunits=this.substance.nucleicAcid.subunits,this.getAlignments()),this.substance.structure&&this.substance.structure.formula&&(this.substance.structure.formula=this.structureService.formatFormula(this.substance.structure)),this.substance.approvalID?this.substanceService.hasInxightLink(this.substance.approvalID).subscribe(function(C){C.total&&C.total>0&&(i.inxightLink=!0,i.inxightUrl="https://drugs.ncats.io/drug/"+i.substance.approvalID)},function(C){}):this.getApprovalID(),this.configService.configData&&this.configService.configData.molWeightRounding&&(this.rounding="1.0-"+this.configService.configData.molWeightRounding)}},{key:"names",get:function(){return this.privateNames},set:function(i){void 0!==i&&(this.privateNames=i,this.nameLoading=!1)}},{key:"getApprovalID",value:function(){this.substance.approvalID||this.substance._approvalIDDisplay&&10===this.substance._approvalIDDisplay.length&&this.substance._approvalIDDisplay.indexOf(" ")<0&&(this.substance.approvalID=this.substance._approvalIDDisplay)}},{key:"substance",get:function(){return this.privateSubstance},set:function(i){null!=i&&(this.privateSubstance=i,this.loadDynamicContent())}},{key:"codeSystems",get:function(){return this.privateCodeSystems},set:function(i){i&&this.codeSystemNames&&(this.privateCodeSystems=i,this.formatCodeSystems())}},{key:"formatCodeSystems",value:function(){var i=this;this.codeSystemNames.forEach(function(C){var w=[];i.allPrimary[C]="true",i.codeSystems[C].forEach(function(V){"PRIMARY"===V.type?w.unshift(V):(i.allPrimary[C]="false",w.push(V))}),i.codeSystems[C]=w})}},{key:"openImageModal",value:function(){this.substance.names=this.privateNames,this.openImage.emit(this.substance)}},{key:"editForm",value:function(){this.router.navigate(["/substances/"+this.substance.uuid+"/edit"])}},{key:"getFasta",value:function(i,C){var w=this;this.substanceService.getFasta(i).subscribe(function(V){w.downloadFile(V,C)})}},{key:"getMol",value:function(i,C){var w=this;this.structureService.downloadMolfile(i).subscribe(function(V){w.downloadFile(V,C)})}},{key:"downloadFile",value:function(i,C){var w=i.type,V=[];V.push(i);var Ze=document.createElement("a");Ze.href=window.URL.createObjectURL(new Blob(V,{type:w})),Ze.setAttribute("download",C),document.body.appendChild(Ze),Ze.click()}},{key:"loadDynamicContent",value:function(){var i=this,C=this.dynamicContentContainer.viewContainerRef;C.clear(),this.configService.configData&&this.configService.configData.loadedComponents&&this.dynamicContentItems.reduce(function(V,Ze){return V.concat(Ze)},[]).filter(function(V){return"summary"===V.componentType}).forEach(function(V){var Ze=i.componentFactoryResolver.resolveComponentFactory(V.component);C.createComponent(Ze).instance.substance=i.privateSubstance})}},{key:"downloadJson",value:function(){var i=this;this.substanceService.getSubstanceDetails(this.substance.uuid).pipe((0,J.q)(1)).subscribe(function(C){i.downloadFile(JSON.stringify(C),i.substance.uuid+".json")})}},{key:"getAlignments",value:function(){var i=this;this.substance._matchContext&&this.substance._matchContext.alignments&&(this.alignments=this.substance._matchContext.alignments,this.alignments.forEach(function(C){i.subunits.forEach(function(w){w.uuid===C.id&&(C.subunitIndex=w.subunitIndex)})}))}},{key:"openMolModal",value:function(){var i=this,C=this.dialog.open(Io,{minWidth:"40%",maxWidth:"90%",height:"90%",data:{uuid:this.substance.uuid,approval:this.substance.approvalID}});this.overlayContainer.style.zIndex="1002",C.afterClosed().subscribe(function(w){i.overlayContainer.style.zIndex=null})}},{key:"moreThanNumberCount",value:function(i,C){return!(i.length0),t.xp6(3),t.hij(" ",i.substance.approvalID," "),t.xp6(4),t.Q6J("ngIf",i.substance.structure),t.xp6(1),t.Q6J("ngIf",!i.substance.structure),t.xp6(2),t.Q6J("ngIf",i.substance.structure||i.substance.polymer),t.xp6(1),t.Q6J("ngIf",!i.substance.structure&&!i.substance.polymer),t.xp6(1),t.Q6J("ngIf",i.substance._matchContext&&i.substance._matchContext.similarity),t.xp6(1),t.Q6J("ngIf",i.substance.definitionLevel&&"COMPLETE"!==i.substance.definitionLevel),t.xp6(2),t.Q6J("matMenuTriggerFor",C),t.xp6(2),t.Q6J("ngIf",i.substance.structure||i.substance.polymer),t.xp6(1),t.Q6J("ngIf",i.substance.structure),t.xp6(1),t.Q6J("ngIf",i.isAdmin),t.xp6(1),t.Q6J("ngIf",i.canCreate),t.xp6(1),t.Q6J("ngIf",i.subunits),t.xp6(3),t.Q6J("ngForOf",i.subunits),t.xp6(6),t.Q6J("ngIf",i.substance.structure||i.substance.polymer),t.xp6(1),t.Q6J("ngIf",i.substance.structure),t.xp6(1),t.Q6J("ngIf",i.substance.polymer),t.xp6(1),t.Q6J("ngIf",i.substance.protein||i.substance.nucleicAcid),t.xp6(3),t.Q6J("ngIf",i.substance.structure),t.xp6(1),t.Q6J("ngIf",i.substance.polymer),t.xp6(3),t.Q6J("ngIf",i.substance.structure),t.xp6(3),t.Q6J("routerLink",t.VKq(47,nd,i.substance.substanceClass))("queryParams",t.VKq(49,vu,i.substance.uuid)),t.xp6(3),t.Q6J("routerLink",t.VKq(51,nd,i.substance.substanceClass))("queryParams",t.VKq(53,Ko,i.substance.uuid)),t.xp6(4),t.Q6J("ngIf",i.nameLoading),t.xp6(1),t.Q6J("ngIf",i.privateNames&&i.privateNames.length&&!i.nameLoading),t.xp6(1),t.Q6J("ngIf",i.codeSystems),t.xp6(1),t.Q6J("ngIf",i.substance._relationships&&null!=i.substance._relationships.count),t.xp6(1),t.Q6J("ngIf",i.substance.mixture&&i.substance.mixture.components&&i.substance.mixture.components.length),t.xp6(1),t.Q6J("ngIf",i.substance.specifiedSubstance&&i.substance.specifiedSubstance.constituents),t.xp6(1),t.Q6J("ngIf",i.substance.nucleicAcid&&i.substance.nucleicAcid.subunits),t.xp6(1),t.Q6J("ngIf",null==i.substance.structure?null:i.substance.structure.mwt),t.xp6(1),t.Q6J("ngIf",null==i.substance.structure?null:i.substance.structure.formula),t.xp6(1),t.Q6J("ngIf",null==i.substance.structurallyDiverse?null:i.substance.structurallyDiverse.part),t.xp6(2),t.Q6J("ngIf",i.inxightLink),t.xp6(1),t.Q6J("ngIf",i.showAudit),t.xp6(1),t.Q6J("ngIf",i.alignments),t.xp6(1),t.Q6J("ngIf",i.searchStrategy&&"bulk"===i.searchStrategy),t.xp6(2),t.Q6J("uuid",i.substance.uuid)("name",i.substance._name)("approvalID",i.substance.approvalID)}},directives:[xi.a8,xi.n5,_.yS,Me.gM,ve.O5,Y.Hw,xi.dn,fo.qn,fo.HS,Ns.m,y.lW,qe.p6,y.zs,qe.VK,ve.sg,qe.OP,kt.Ou,os.z,Wc,Xa,xs],pipes:[ve.gd,fr.Y,Pr,Yr.f,Kr,ve.Ov,mo.q,ve.JJ,ve.uU,To],styles:[".mat-card[_ngcontent-%COMP%]{max-width:1228px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.button-wrapper[_ngcontent-%COMP%]{max-width:170px}.loading-label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.spinner[_ngcontent-%COMP%]{height:24px;width:24px;margin:-5px 10px 5px}.name-loading[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:300px}.show-more[_ngcontent-%COMP%]{text-decoration:underline;color:var(--link-primary-color);cursor:pointer}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.moreLink[_ngcontent-%COMP%]{color:var(--link-primary-color);font-weight:600;padding-left:10px;font-size:15px}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:var(--link-primary-color);padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval[_ngcontent-%COMP%]{font-size:16px;color:var(--pink-span-color)}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-10px;margin-bottom:10px}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:var(--link-primary-color);text-decoration-style:unset}@media (max-width: 700px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}}.lock-icon[_ngcontent-%COMP%]{color:var(--lock-icon-color)}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}}.definition[_ngcontent-%COMP%]{padding:7px 0}.similarity[_ngcontent-%COMP%]{padding-left:10px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:var(--pink-span-color)}.similarity-label[_ngcontent-%COMP%]{font-style:italic}.inxight-container[_ngcontent-%COMP%]{text-align:right;padding-bottom:15px}.small-icon[_ngcontent-%COMP%]{height:20px;width:20px;padding-bottom:5px;vertical-align:middle}.match-context[_ngcontent-%COMP%]{display:block;font-size:small;color:var(--regular-green-color);margin-top:8px;margin-bottom:8px}"]}),g}(),wr=["matSideNavInstance"];function Uu(g,A){if(1&g&&(t.TgZ(0,"mat-option",19),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l),t.xp6(1),t.hij(" ",l," ")}}function Qd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-form-field",16),t.TgZ(1,"mat-label"),t._uU(2,"Facet View:"),t.qZA(),t.TgZ(3,"mat-select",17),t.NdJ("openedChange",function(w){return t.CHM(l),t.oxw().openedFacetViewChange(w)})("selectionChange",function(w){return t.CHM(l),t.oxw().facetViewChange(w)}),t.YNc(4,Uu,2,2,"mat-option",18),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(3),t.Q6J("formControl",i.facetViewControl),t.xp6(1),t.Q6J("ngForOf",i.facetViewCategory)}}function gc(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t._uU(1," Your search did not return any results. Please try modifying it or "),t.TgZ(2,"a",23),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clearFilters()}),t._uU(3,"click here"),t.qZA(),t._uU(4," to clear all your search criteria. "),t.qZA()}}function Us(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1," Your search did not return any results within the default fields. However, this query has some results if you restrict your search to specific fields below. "),t.qZA())}function Bu(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).editAdvancedSearch()}),t._UZ(1,"mat-icon",30),t.qZA()}}function Gl(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",24),t.TgZ(1,"div"),t.TgZ(2,"span",25),t._uU(3,"Search Query:"),t.qZA(),t._uU(4,"\xa0 "),t.TgZ(5,"span"),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div",26),t.YNc(8,Bu,2,0,"button",27),t.TgZ(9,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clearSearch()}),t._UZ(10,"mat-icon",29),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(6),t.Oqu(i.searchTerm),t.xp6(2),t.Q6J("ngIf",i.isSearchEditable)}}function Kl(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=t.oxw(3);t.xp6(1),t.hij(" \xa0\u2265 ",l.searchCutoff," ")}}function Ba(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",24),t.TgZ(1,"div"),t.TgZ(2,"span",25),t._uU(3),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",31),t._UZ(6,"input",32),t.TgZ(7,"button",28),t.NdJ("click",function(){t.CHM(l);var w=t.oxw(2);return w.copySmiles(w.smiles)}),t._UZ(8,"mat-icon",33),t.qZA(),t.YNc(9,Kl,2,1,"span",8),t.qZA(),t.qZA(),t.TgZ(10,"div",26),t.TgZ(11,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).editStructureSearch()}),t._UZ(12,"mat-icon",34),t.qZA(),t.TgZ(13,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clearStructureSearch()}),t._UZ(14,"mat-icon",29),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(3),t.hij("",i.structureSearchTerm&&i.searchType," Query:"),t.xp6(3),t.Q6J("value",i.smiles),t.xp6(3),t.Q6J("ngIf",i.searchType&&"similarity"==i.searchType)}}function H(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",24),t.TgZ(1,"div"),t.TgZ(2,"span",25),t._uU(3,"Sequence Query:"),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",31),t.TgZ(6,"span"),t._uU(7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",26),t.TgZ(9,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).editSequenceSearh()}),t._UZ(10,"mat-icon",34),t.qZA(),t.TgZ(11,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clearSequenceSearch()}),t._UZ(12,"mat-icon",29),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(7),t.Oqu(i.getSequenceDisplay(i.sequenceSearchTerm))}}function ye(g,A){if(1&g&&(t.TgZ(0,"div",20),t.YNc(1,gc,5,0,"div",8),t.YNc(2,Us,2,0,"div",8),t.TgZ(3,"div",21),t.YNc(4,Gl,11,2,"div",22),t.YNc(5,Ba,15,3,"div",22),t.YNc(6,H,13,1,"div",22),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",!l.matchTypes||0===l.matchTypes.length),t.xp6(1),t.Q6J("ngIf",l.matchTypes&&l.matchTypes.length>0),t.xp6(2),t.Q6J("ngIf",l.searchTerm),t.xp6(1),t.Q6J("ngIf",l.smiles),t.xp6(1),t.Q6J("ngIf",l.sequenceSearchTerm)}}function rt(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t._uU(1," | "),t.TgZ(2,"a",38),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).editBulkSearch()}),t._uU(3,"Edit "),t.qZA(),t.qZA()}}function Dt(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",37),t.TgZ(1,"div"),t.TgZ(2,"a",38),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clearBulkSearch()}),t._uU(3,"Clear"),t.qZA(),t.YNc(4,rt,4,0,"span",8),t._uU(5," Bulk Search "),t.qZA(),t._UZ(6,"app-bulk-search-results-summary",39),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(4),t.Q6J("ngIf",i.bulkSearchQueryId),t.xp6(2),t.Q6J("key",i.bulkSearchStatusKey)("isCollapsed",i.isBulkSearchCollapsed)}}function jt(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-expansion-panel",35),t.NdJ("opened",function(){return t.CHM(l),t.oxw().bulkSearchPanelOpen=!0})("closed",function(){return t.CHM(l),t.oxw().bulkSearchPanelOpen=!1}),t.TgZ(2,"mat-expansion-panel-header"),t.TgZ(3,"mat-panel-title"),t.TgZ(4,"div"),t._uU(5,"Bulk Search Summary (Full Results)"),t.qZA(),t._UZ(6,"div"),t.qZA(),t.qZA(),t.YNc(7,Dt,7,3,"div",36),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(1),t.Q6J("expanded",i.bulkSearchPanelOpen),t.xp6(6),t.Q6J("ngIf",i.bulkSearchQueryId)}}function wn(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1,"Other Match"),t.qZA())}function Gn(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1,"Exact Match"),t.qZA())}function Ki(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1,"Contains Match"),t.qZA())}function Ia(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1,"Contains Match"),t.qZA())}function hr(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1,"Contains Match"),t.qZA())}function Or(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1,"No Match"),t.qZA())}function Uo(g,A){1&g&&(t.TgZ(0,"div"),t._uU(1,"Unknown Match"),t.qZA())}function Bs(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",58),t.NdJ("click",function(){var V=t.CHM(l).$implicit;return t.oxw(4).restricSearh(V.luceneQuery)}),t.TgZ(1,"div",59),t._uU(2),t.qZA(),t.TgZ(3,"div",60),t._uU(4),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(2),t.hij(" ",i.displayField," "),t.xp6(2),t.hij(" ",i.count," ")}}function fh(g,A){if(1&g&&(t.TgZ(0,"div"),t.TgZ(1,"div",54),t.YNc(2,wn,2,0,"div",55),t.YNc(3,Gn,2,0,"div",55),t.YNc(4,Ki,2,0,"div",55),t.YNc(5,Ia,2,0,"div",55),t.YNc(6,hr,2,0,"div",55),t.YNc(7,Or,2,0,"div",55),t.YNc(8,Uo,2,0,"div",56),t.qZA(),t.YNc(9,Bs,5,2,"button",57),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngSwitch",l),t.xp6(1),t.Q6J("ngSwitchCase","ADDITIONAL"),t.xp6(1),t.Q6J("ngSwitchCase","FULL"),t.xp6(1),t.Q6J("ngSwitchCase","CONTAINS"),t.xp6(1),t.Q6J("ngSwitchCase","WORD"),t.xp6(1),t.Q6J("ngSwitchCase","WORD_STARTS_WITH"),t.xp6(1),t.Q6J("ngSwitchCase","NO_MATCH"),t.xp6(2),t.Q6J("ngForOf",i.narrowSearchSuggestions[l])}}function pf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",43),t.TgZ(1,"div",44),t.TgZ(2,"div",45),t.TgZ(3,"div"),t._uU(4," Would you like to restrict this search to a field? "),t.qZA(),t._uU(5,"\xa0 "),t.TgZ(6,"button",46),t.NdJ("menuOpened",function(){return t.CHM(l),t.oxw(2).increaseOverlayZindex()})("menuClosed",function(){return t.CHM(l),t.oxw(2).decreaseOverlayZindex()}),t.TgZ(7,"span"),t._uU(8,"Fields "),t.qZA(),t._uU(9),t._UZ(10,"mat-icon",47),t.qZA(),t.TgZ(11,"button",48),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clearFilters()}),t.TgZ(12,"span"),t._uU(13,"RESET"),t.qZA(),t.qZA(),t.TgZ(14,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).editAdvancedSearch()}),t._UZ(15,"mat-icon",30),t.qZA(),t.TgZ(16,"mat-menu",49,50),t.YNc(18,fh,10,8,"div",51),t.qZA(),t.qZA(),t.qZA(),t.TgZ(19,"div",44),t.TgZ(20,"div",52),t._uU(21," For more options use the "),t.TgZ(22,"a",53),t._uU(23," Advanced Search"),t.qZA(),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.MAs(17),C=t.oxw(2);t.xp6(6),t.Q6J("matMenuTriggerFor",i),t.xp6(3),t.hij("\xa0 ",C.narrowSearchSuggestionsCount," "),t.xp6(9),t.Q6J("ngForOf",C.sortMatchTypes(C.matchTypes))}}function ff(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",65),t.TgZ(1,"div"),t.TgZ(2,"span",25),t._uU(3,"Search Query:"),t.qZA(),t._uU(4,"\xa0 "),t.TgZ(5,"span"),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div",26),t.TgZ(8,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).editAdvancedSearch()}),t._UZ(9,"mat-icon",66),t.qZA(),t.TgZ(10,"button",67),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).clearSearch()}),t._UZ(11,"mat-icon",68),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(6),t.Oqu(i.searchTerm)}}function ig(g,A){1&g&&t._UZ(0,"mat-icon",75)}function Wd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",65),t.TgZ(1,"div",69),t.TgZ(2,"span",70),t.YNc(3,ig,1,0,"mat-icon",71),t._uU(4),t.qZA(),t.TgZ(5,"span",72),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div",26),t.TgZ(8,"button",73),t.NdJ("click",function(){var V=t.CHM(l).$implicit;return V.removeFacet(V.type,V.bool,V.val)}),t._UZ(9,"mat-icon",74),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(3),t.Q6J("ngIf",!i.bool),t.xp6(1),t.hij(" ",i.type,": "),t.xp6(2),t.hij(" ",i.val," ")}}function mf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",76),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).clearFilters()}),t.TgZ(1,"span"),t._uU(2,"RESET"),t.qZA(),t.qZA()}}function zd(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=t.oxw(4);t.xp6(1),t.hij(" \xa0\u2265 ",l.searchCutoff," ")}}function id(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(4).editAdvancedSearch()}),t._UZ(1,"mat-icon",78),t.qZA()}}function vc(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(4).editStructureSearch()}),t._UZ(1,"mat-icon",79),t.qZA()}}function Da(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",24),t.TgZ(1,"div"),t.TgZ(2,"span",25),t._uU(3),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",31),t._UZ(6,"input",32),t.TgZ(7,"button",28),t.NdJ("click",function(){t.CHM(l);var w=t.oxw(3);return w.copySmiles(w.smiles)}),t._UZ(8,"mat-icon",77),t.qZA(),t.YNc(9,zd,2,1,"span",8),t.qZA(),t.qZA(),t.TgZ(10,"div",26),t.YNc(11,id,2,0,"button",27),t.YNc(12,vc,2,0,"button",27),t.TgZ(13,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).clearStructureSearch()}),t._UZ(14,"mat-icon",29),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(3),t.hij("",i.structureSearchTerm&&i.searchType," Query:"),t.xp6(3),t.Q6J("value",i.smiles),t.xp6(3),t.Q6J("ngIf",i.searchType&&"similarity"==i.searchType),t.xp6(2),t.Q6J("ngIf",i.isSearchEditable),t.xp6(1),t.Q6J("ngIf",!i.isSearchEditable)}}function mh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",24),t.TgZ(1,"div"),t.TgZ(2,"span",25),t._uU(3,"Sequence Query:"),t.qZA(),t._uU(4," \xa0 "),t.TgZ(5,"span",31),t.TgZ(6,"span"),t._uU(7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"div",26),t.TgZ(9,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).editSequenceSearh()}),t._UZ(10,"mat-icon",34),t.qZA(),t.TgZ(11,"button",28),t.NdJ("click",function(){return t.CHM(l),t.oxw(3).clearSequenceSearch()}),t._UZ(12,"mat-icon",29),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(7),t.Oqu(i.getSequenceDisplay(i.sequenceSearchTerm))}}function hh(g,A){if(1&g&&(t.TgZ(0,"div",61),t.YNc(1,ff,12,1,"div",62),t.YNc(2,Wd,10,3,"div",63),t.YNc(3,mf,3,0,"button",64),t.YNc(4,Da,15,5,"div",22),t.YNc(5,mh,13,1,"div",22),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",l.searchTerm),t.xp6(1),t.Q6J("ngForOf",l.displayFacets),t.xp6(1),t.Q6J("ngIf",l.displayFacets&&l.displayFacets.length>0),t.xp6(1),t.Q6J("ngIf",l.smiles),t.xp6(1),t.Q6J("ngIf",l.sequenceSearchTerm)}}function ad(g,A){if(1&g&&(t.TgZ(0,"mat-option",19),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.value),t.xp6(1),t.hij(" ",l.display," ")}}function Yu(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",58),t.NdJ("click",function(){var V=t.CHM(l).$implicit;return t.oxw(3).export(V.link.url,V.extension)}),t._uU(1),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(1),t.hij(" ",i.displayname," ")}}function Gd(g,A){if(1&g&&(t.TgZ(0,"button",136),t._UZ(1,"mat-icon",137),t._uU(2," Export "),t.qZA()),2&g){t.oxw();var l=t.MAs(33);t.Q6J("matMenuTriggerFor",l)}}function Kd(g,A){}function ls(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"app-substance-summary-card",138),t.NdJ("openImage",function(V){return t.CHM(l),t.oxw(3).openImageModal(V)}),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(3);t.xp6(1),t.Q6J("substance",i)("showAudit",C.showAudit)("names",C.names[i.uuid])("codeSystemNames",C.codes[i.uuid]&&C.codes[i.uuid].codeSystemNames)("codeSystems",C.codes[i.uuid]&&C.codes[i.uuid].codeSystems)("codeSystemVocab",C.codeSystem)("searchStrategy",C.searchStrategy)}}function hf(g,A){1&g&&(t.TgZ(0,"th",139),t._uU(1," Name "),t.qZA())}var Ys=function(A){return["/substances",A]};function $d(g,A){if(1&g&&(t.TgZ(0,"td",140),t.TgZ(1,"a",141),t._UZ(2,"span",142),t.qZA(),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("routerLink",t.VKq(2,Ys,l.uuid)),t.xp6(1),t.Q6J("innerHTML",l._nameHTML?l._nameHTML:l._name,t.oJD)}}function _f(g,A){1&g&&(t.TgZ(0,"th",139),t._uU(1," Approval ID "),t.qZA())}function gf(g,A){if(1&g&&(t.TgZ(0,"td",140),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Oqu(l.approvalID)}}function Do(g,A){1&g&&(t.TgZ(0,"th",139),t._uU(1," Names "),t.qZA())}function $l(g,A){1&g&&(t.TgZ(0,"span"),t._uU(1,"; "),t.qZA())}function qs(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"span",142),t.YNc(2,$l,2,0,"span",8),t.qZA()),2&g){var l=A.$implicit,i=A.last;t.xp6(1),t.Q6J("innerHTML",l._nameHTML?l._nameHTML:l.name,t.oJD),t.xp6(1),t.Q6J("ngIf",!i)}}function yu(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,qs,3,2,"div",51),t.ALo(2,"take"),t.qZA()),2&g){var l=t.oxw().$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",t.xi3(2,1,i.names[l.uuid],4))}}function yc(g,A){if(1&g&&(t.TgZ(0,"td",140),t.YNc(1,yu,3,4,"span",8),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngIf",i.names[l.uuid]&&i.names[l.uuid].length)}}function vf(g,A){1&g&&(t.TgZ(0,"th",139),t._uU(1," Codes "),t.qZA())}function Xd(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"a",143),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.Q6J("href",l.url,t.LSH),t.xp6(1),t.hij(" ",l.code.trim()," ")}}function yf(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.Oqu(l.code.trim())}}function ep(g,A){1&g&&(t.TgZ(0,"span"),t._uU(1,", "),t.qZA())}function tp(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,Xd,3,2,"span",8),t.YNc(2,yf,2,1,"span",8),t.YNc(3,ep,2,0,"span",8),t.qZA()),2&g){var l=A.$implicit,i=A.last;t.xp6(1),t.Q6J("ngIf",l.url),t.xp6(1),t.Q6J("ngIf",!l.url),t.xp6(1),t.Q6J("ngIf",!i)}}function xl(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"div"),t.TgZ(2,"strong"),t._uU(3),t.qZA(),t._uU(4,":\xa0 "),t.YNc(5,tp,4,3,"span",51),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(2).$implicit,C=t.oxw(3);t.xp6(3),t.Oqu(l),t.xp6(2),t.Q6J("ngForOf",C.codes[i.uuid].codeSystems[l])}}function _h(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,xl,6,2,"span",51),t.ALo(2,"take"),t.qZA()),2&g){var l=t.oxw().$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",t.xi3(2,1,i.sortCodeSystems(i.codes[l.uuid].codeSystemNames),5))}}function Xl(g,A){if(1&g&&(t.TgZ(0,"td",140),t.YNc(1,_h,3,4,"span",8),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngIf",i.codes[l.uuid]&&i.codes[l.uuid].codeSystems)}}function bf(g,A){1&g&&(t.TgZ(0,"th",139),t._uU(1," Actions "),t.qZA())}function Cf(g,A){if(1&g&&(t.TgZ(0,"button",144),t._UZ(1,"mat-icon",109),t.qZA()),2&g){t.oxw();var l=t.MAs(13);t.Q6J("matMenuTriggerFor",l)}}var np=function(A){return["/substances",A,"edit"]};function gh(g,A){if(1&g&&(t.TgZ(0,"a",153),t._UZ(1,"mat-icon",34),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(1,np,l.uuid))}}function bc(g,A){if(1&g&&(t.TgZ(0,"button",144),t._UZ(1,"mat-icon",154),t.qZA()),2&g){t.oxw();var l=t.MAs(17);t.Q6J("matMenuTriggerFor",l)}}function Mf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",58),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2).$implicit;return t.oxw(3).getMol(C.uuid,(C.approvalID?C.approvalID.toString():C.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function Hs(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",58),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2).$implicit;return t.oxw(3).getMol(C.uuid,(C.approvalID?C.approvalID.toString():C.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function qu(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",58),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2).$implicit;return t.oxw(3).getFasta(C.uuid,(C.approvalID?C.approvalID.toString():C.uuid.toString())+".fas")}),t.TgZ(1,"span"),t._uU(2,"Download Fasta"),t.qZA(),t.qZA()}}function xf(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,Mf,3,0,"a",155),t.YNc(2,Hs,3,0,"a",155),t.YNc(3,qu,3,0,"a",155),t.qZA()),2&g){var l=t.oxw().$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngIf",l.structure),t.xp6(1),t.Q6J("ngIf",l.polymer),t.xp6(1),t.Q6J("ngIf",(l.protein||l.nucleicAcid)&&!i.showAudit)}}var Hu=function(){return["/structure-search"]},Vu=function(A){return{structure:A}};function $o(g,A){if(1&g&&(t.TgZ(0,"a",156),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Hu))("queryParams",t.VKq(3,Vu,l.structure.id))}}function sl(g,A){if(1&g&&(t.TgZ(0,"a",156),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Hu))("queryParams",t.VKq(3,Vu,l.polymer.displayStructure.id))}}var rd=function(A){return["/substances/register",A]},od=function(A){return{copy:A}};function ju(g,A){if(1&g&&(t.TgZ(0,"a",157),t.TgZ(1,"span"),t._uU(2,"Copy Substance to New Form"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,rd,l.substanceClass))("queryParams",t.VKq(4,od,l.uuid))}}var Sl=function(A){return{copy:A,copyType:"definition"}};function Sf(g,A){if(1&g&&(t.TgZ(0,"a",158),t.TgZ(1,"span"),t._uU(2,"Copy Definition to New Form"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,rd,l.substanceClass))("queryParams",t.VKq(4,Sl,l.uuid))}}function Tf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"td",140),t.TgZ(1,"button",144),t._UZ(2,"mat-icon",137),t.qZA(),t.YNc(3,Cf,2,1,"button",145),t.YNc(4,gh,2,3,"a",146),t.YNc(5,bc,2,1,"button",145),t.TgZ(6,"mat-menu",null,147),t.TgZ(8,"a",58),t.NdJ("click",function(){var Ot=t.CHM(l).$implicit;return t.oxw(3).downloadJson(Ot.uuid)}),t.TgZ(9,"span"),t._uU(10,"Download JSON"),t.qZA(),t.qZA(),t.YNc(11,xf,4,3,"span",8),t.qZA(),t.TgZ(12,"mat-menu",null,148),t.YNc(14,$o,3,5,"a",149),t.YNc(15,sl,3,5,"a",149),t.qZA(),t.TgZ(16,"mat-menu",null,150),t.YNc(18,ju,3,6,"a",151),t.YNc(19,Sf,3,6,"a",152),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.MAs(7),w=t.oxw(3);t.xp6(1),t.Q6J("matMenuTriggerFor",C),t.xp6(2),t.Q6J("ngIf",i.structure||i.polymer),t.xp6(1),t.Q6J("ngIf",w.isAdmin),t.xp6(1),t.Q6J("ngIf",w.isAdmin),t.xp6(6),t.Q6J("ngIf",i.structure||(i.protein||i.nucleicAcid)&&!w.showAudit||i.polymer),t.xp6(3),t.Q6J("ngIf",i.structure),t.xp6(1),t.Q6J("ngIf",i.polymer),t.xp6(3),t.Q6J("ngIf",w.isAdmin),t.xp6(1),t.Q6J("ngIf",w.isAdmin)}}function Af(g,A){1&g&&t._UZ(0,"tr",159)}function Pf(g,A){1&g&&t._UZ(0,"tr",160)}function Ju(g,A){if(1&g&&(t.TgZ(0,"div",172),t.TgZ(1,"mat-chip-list",173),t.TgZ(2,"mat-chip",174),t._uU(3),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2).$implicit;t.xp6(3),t.Oqu(l.structure.stereochemistry)}}function Cc(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,Ju,4,1,"div",171),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",l.structure.stereochemistry)}}function vh(g,A){if(1&g&&(t.TgZ(0,"div"),t.TgZ(1,"div",172),t.TgZ(2,"mat-chip-list",173),t.TgZ(3,"mat-chip",174),t._uU(4),t.ALo(5,"uppercase"),t.ALo(6,"facetDisplay"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(4),t.Oqu(t.lcZ(5,1,t.xi3(6,3,l.substanceClass,"types")))}}function ip(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"a",175),t.NdJ("click",function(){t.CHM(l);var w=t.oxw().$implicit;return t.oxw(3).openImageModal(w)}),t._UZ(2,"img",176),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit;t.xp6(2),t.Q6J("entityId",i.uuid)("atomMaps",i._matchContext&&i._matchContext.atomMaps||null)}}function Mc(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"img",177),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.Q6J("entityId",l.uuid)("atomMaps",l._matchContext&&l._matchContext.atomMaps||null)}}function xc(g,A){if(1&g&&(t.TgZ(0,"div"),t.TgZ(1,"span",178),t._uU(2,"similarity:"),t.qZA(),t.TgZ(3,"span",179),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(4),t.Oqu(l._matchContext.similarity.toFixed(3))}}function sd(g,A){1&g&&t._UZ(0,"mat-icon",180)}function ld(g,A){if(1&g&&(t.TgZ(0,"button",144),t._UZ(1,"mat-icon",182),t.qZA()),2&g){t.oxw(2);var l=t.MAs(30);t.Q6J("matMenuTriggerFor",l)}}function Rr(g,A){if(1&g&&(t.TgZ(0,"a",183),t._UZ(1,"mat-icon",34),t.qZA()),2&g){var l=t.oxw(2).$implicit;t.Q6J("routerLink",t.VKq(1,np,l.uuid))}}function Sc(g,A){if(1&g&&(t.TgZ(0,"button",144),t._UZ(1,"mat-icon",154),t.qZA()),2&g){t.oxw(2);var l=t.MAs(34);t.Q6J("matMenuTriggerFor",l)}}function yh(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,ld,2,1,"button",145),t.YNc(2,Rr,2,3,"a",181),t.YNc(3,Sc,2,1,"button",145),t.qZA()),2&g){var l=t.oxw().$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngIf",l.structure||l.polymer),t.xp6(1),t.Q6J("ngIf",i.isAdmin),t.xp6(1),t.Q6J("ngIf",i.isAdmin)}}function ud(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",58),t.NdJ("click",function(){t.CHM(l);var C=t.oxw().$implicit;return t.oxw(3).getMol(C.uuid,(C.approvalID?C.approvalID.toString():C.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function Qu(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",58),t.NdJ("click",function(){t.CHM(l);var C=t.oxw().$implicit;return t.oxw(3).getMol(C.uuid,(C.approvalID?C.approvalID.toString():C.uuid.toString())+".mol")}),t.TgZ(1,"span"),t._uU(2,"Download Molfile"),t.qZA(),t.qZA()}}function Df(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",58),t.NdJ("click",function(){t.CHM(l);var C=t.oxw().$implicit;return t.oxw(3).getFasta(C.uuid,(C.approvalID?C.approvalID.toString():C.uuid.toString())+".fas")}),t.TgZ(1,"span"),t._uU(2,"Download Fasta"),t.qZA(),t.qZA()}}function ap(g,A){if(1&g&&(t.TgZ(0,"a",156),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Hu))("queryParams",t.VKq(3,Vu,l.structure.id))}}function bh(g,A){if(1&g&&(t.TgZ(0,"a",156),t.TgZ(1,"span"),t._uU(2,"Search Structure"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.DdM(2,Hu))("queryParams",t.VKq(3,Vu,l.polymer.displayStructure.id))}}function wf(g,A){if(1&g&&(t.TgZ(0,"a",157),t.TgZ(1,"span"),t._uU(2,"Copy Substance to New Form"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,rd,l.substanceClass))("queryParams",t.VKq(4,od,l.uuid))}}function Tl(g,A){if(1&g&&(t.TgZ(0,"a",158),t.TgZ(1,"span"),t._uU(2,"Copy Definition to New Form"),t.qZA(),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(2,rd,l.substanceClass))("queryParams",t.VKq(4,Sl,l.uuid))}}function Ch(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-card",161),t.TgZ(1,"mat-card-title"),t.TgZ(2,"div",162),t.TgZ(3,"a",163),t._uU(4),t.qZA(),t.qZA(),t.qZA(),t.TgZ(5,"mat-card-content"),t.TgZ(6,"div",164),t.TgZ(7,"div",165),t.YNc(8,Cc,2,1,"div",8),t.YNc(9,vh,7,6,"div",8),t.TgZ(10,"div",166),t.YNc(11,ip,3,2,"div",8),t.YNc(12,Mc,2,2,"div",8),t.qZA(),t.YNc(13,xc,5,1,"div",8),t.TgZ(14,"div",167),t._UZ(15,"a",168),t.YNc(16,sd,1,0,"mat-icon",169),t.qZA(),t.TgZ(17,"div",170),t.TgZ(18,"button",144),t._UZ(19,"mat-icon",137),t.qZA(),t.YNc(20,yh,4,3,"span",8),t.qZA(),t.qZA(),t.TgZ(21,"mat-menu",null,147),t.TgZ(23,"a",58),t.NdJ("click",function(){var Ot=t.CHM(l).$implicit;return t.oxw(3).downloadJson(Ot.uuid)}),t.TgZ(24,"span"),t._uU(25,"Download JSON"),t.qZA(),t.qZA(),t.YNc(26,ud,3,0,"a",155),t.YNc(27,Qu,3,0,"a",155),t.YNc(28,Df,3,0,"a",155),t.qZA(),t.TgZ(29,"mat-menu",null,148),t.YNc(31,ap,3,5,"a",149),t.YNc(32,bh,3,5,"a",149),t.qZA(),t.TgZ(33,"mat-menu",null,150),t.YNc(35,wf,3,6,"a",151),t.YNc(36,Tl,3,6,"a",152),t.qZA(),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.MAs(22),w=t.oxw(3);t.xp6(4),t.hij(" ",i.approvalID," "),t.xp6(4),t.Q6J("ngIf",i.structure),t.xp6(1),t.Q6J("ngIf",!i.structure),t.xp6(2),t.Q6J("ngIf",i.structure||i.polymer),t.xp6(1),t.Q6J("ngIf",!i.structure&&!i.polymer),t.xp6(1),t.Q6J("ngIf",i._matchContext&&i._matchContext.similarity),t.xp6(2),t.Q6J("innerHTML",i._nameHTML?i._nameHTML:i._name,t.oJD)("routerLink",t.VKq(19,Ys,i.uuid))("matTooltip",i._name),t.xp6(1),t.Q6J("ngIf",i.access&&i.access.length>0),t.xp6(2),t.Q6J("matMenuTriggerFor",C),t.xp6(2),t.Q6J("ngIf",i.structure||(i.protein||i.nucleicAcid)&&!w.showAudit||i.polymer),t.xp6(6),t.Q6J("ngIf",i.structure),t.xp6(1),t.Q6J("ngIf",i.polymer),t.xp6(1),t.Q6J("ngIf",(i.protein||i.nucleicAcid)&&!w.showAudit),t.xp6(3),t.Q6J("ngIf",i.structure),t.xp6(1),t.Q6J("ngIf",i.polymer),t.xp6(3),t.Q6J("ngIf",w.isAdmin),t.xp6(1),t.Q6J("ngIf",w.isAdmin)}}var Of=function(){return[5,10,50,100]},eu=function(A){return{"bad-page":A}};function us(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div"),t.TgZ(2,"div",80),t.TgZ(3,"p",81),t._uU(4,"Results below are an incomplete preview"),t.qZA(),t.TgZ(5,"div",82),t.TgZ(6,"div",83),t._UZ(7,"mat-spinner",84),t.qZA(),t.TgZ(8,"p",85),t._uU(9),t.qZA(),t.TgZ(10,"button",86),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clickToRefreshPreview()}),t._uU(11,"Refresh Preview"),t.qZA(),t.TgZ(12,"button",87),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).clickToCancel()}),t._uU(13,"Cancel"),t.qZA(),t.qZA(),t.TgZ(14,"p",88),t._uU(15,"Page will auto-reload when search is complete"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(16,"div",89),t.TgZ(17,"div",90),t.TgZ(18,"span",91),t._uU(19,"Browse Substances"),t.qZA(),t.qZA(),t.TgZ(20,"mat-button-toggle-group",92),t.NdJ("change",function(w){return t.CHM(l),t.oxw(2).updateView(w)}),t.TgZ(21,"mat-button-toggle",93),t._UZ(22,"mat-icon",94),t.qZA(),t.TgZ(23,"mat-button-toggle",95),t._UZ(24,"mat-icon",96),t.qZA(),t.TgZ(25,"mat-button-toggle",97),t._UZ(26,"mat-icon",98),t.qZA(),t.qZA(),t.TgZ(27,"mat-form-field",99),t.TgZ(28,"mat-label"),t._uU(29,"Sort By"),t.qZA(),t.TgZ(30,"mat-select",100),t.NdJ("selectionChange",function(){return t.CHM(l),t.oxw(2).searchSubstances()})("openedChange",function(w){return t.CHM(l),t.oxw(2).openedSortSubstances(w)})("ngModelChange",function(w){return t.CHM(l),t.oxw(2).order=w}),t.YNc(31,ad,2,2,"mat-option",18),t.qZA(),t.qZA(),t.TgZ(32,"mat-menu",null,101),t.YNc(34,Yu,2,1,"a",57),t.qZA(),t.TgZ(35,"div",102),t.YNc(36,Gd,3,1,"button",103),t.qZA(),t._UZ(37,"div",9),t.qZA(),t.TgZ(38,"div",104),t.TgZ(39,"div",105),t.TgZ(40,"mat-form-field",106),t.TgZ(41,"input",107),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(2).wildCardText=w})("change",function(){return t.CHM(l),t.oxw(2).saveWildCardText()})("keyup.enter",function(){return t.CHM(l),t.oxw(2).wildCardSearch()}),t.qZA(),t.qZA(),t.TgZ(42,"button",108),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).wildCardSearch()}),t._UZ(43,"mat-icon",109),t.qZA(),t.qZA(),t._UZ(44,"span",110),t.TgZ(45,"mat-paginator",111,112),t.NdJ("page",function(w){return t.CHM(l),t.oxw(2).changePage(w)}),t.qZA(),t.TgZ(47,"div",113),t.TgZ(48,"span",114),t._uU(49,"Page: "),t.qZA(),t.TgZ(50,"mat-form-field",115),t.TgZ(51,"input",116,117),t.NdJ("keydown.enter",function(w){return t.CHM(l),t.oxw(2).customPage(w)})("input",function(w){t.CHM(l);var V=t.oxw(2);return V.invalidPage=!V.validatePageInput(w)})("focusout",function(){t.CHM(l);var w=t.MAs(52),V=t.oxw(2);return w.value=V.pageIndex+1,V.invalidPage=!1}),t.qZA(),t.qZA(),t.TgZ(53,"span",114),t._uU(54),t.qZA(),t.qZA(),t.qZA(),t.YNc(55,Kd,0,0,"ng-template",118),t._UZ(56,"div",119),t.TgZ(57,"div",11),t.TgZ(58,"div",14),t.YNc(59,ls,2,7,"div",51),t.qZA(),t.TgZ(60,"div",120),t.TgZ(61,"div",121),t.TgZ(62,"table",122),t.ynx(63,123),t.YNc(64,hf,2,0,"th",124),t.YNc(65,$d,3,4,"td",125),t.BQk(),t.ynx(66,126),t.YNc(67,_f,2,0,"th",124),t.YNc(68,gf,2,1,"td",125),t.BQk(),t.ynx(69,127),t.YNc(70,Do,2,0,"th",124),t.YNc(71,yc,2,1,"td",125),t.BQk(),t.ynx(72,128),t.YNc(73,vf,2,0,"th",124),t.YNc(74,Xl,2,1,"td",125),t.BQk(),t.ynx(75,129),t.YNc(76,bf,2,0,"th",124),t.YNc(77,Tf,20,9,"td",125),t.BQk(),t.YNc(78,Af,1,0,"tr",130),t.YNc(79,Pf,1,0,"tr",131),t.qZA(),t.qZA(),t.qZA(),t.TgZ(80,"div",132),t.YNc(81,Ch,37,21,"mat-card",133),t.qZA(),t.qZA(),t.TgZ(82,"div",134),t.TgZ(83,"div"),t.TgZ(84,"mat-paginator",135,112),t.NdJ("page",function(w){return t.CHM(l),t.oxw(2).changePage(w)}),t.qZA(),t.qZA(),t.TgZ(86,"div",113),t.TgZ(87,"span",114),t._uU(88,"Page: "),t.qZA(),t.TgZ(89,"mat-form-field",115),t.TgZ(90,"input",116,117),t.NdJ("keydown.enter",function(w){return t.CHM(l),t.oxw(2).customPage(w)})("input",function(w){t.CHM(l);var V=t.oxw(2);return V.invalidPage=!V.validatePageInput(w)})("focusout",function(){t.CHM(l);var w=t.MAs(52),V=t.oxw(2);return w.value=V.pageIndex+1,V.invalidPage=!1}),t.qZA(),t.qZA(),t.TgZ(92,"span",114),t._uU(93),t.qZA(),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(7),t.Q6J("diameter",15),t.xp6(2),t.hij("searching... ",i.totalSubstances," matches"),t.xp6(11),t.Q6J("value",i.view),t.xp6(10),t.Q6J("ngModel",i.order),t.xp6(1),t.Q6J("ngForOf",i.sortValues),t.xp6(3),t.Q6J("ngForOf",i.exportOptions),t.xp6(2),t.Q6J("ngIf",i.exportOptions&&i.exportOptions.length>0),t.xp6(4),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("ngModel",i.wildCardText),t.xp6(4),t.Q6J("length",i.totalSubstances)("pageIndex",i.pageIndex)("pageSize",i.pageSize)("pageSizeOptions",t.DdM(32,Of))("showFirstLastButtons",!0),t.xp6(5),t.Q6J("ngClass",t.VKq(33,eu,i.invalidPage)),t.xp6(1),t.Q6J("ngClass",t.VKq(35,eu,i.invalidPage))("value",i.pageIndex+1),t.xp6(3),t.hij(" of ",i.lastPage,""),t.xp6(3),t.Q6J("ngClass",i.view),t.xp6(2),t.Q6J("ngForOf",i.substances),t.xp6(3),t.Q6J("dataSource",i.substances),t.xp6(16),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns),t.xp6(2),t.Q6J("ngForOf",i.substances),t.xp6(3),t.Q6J("length",i.totalSubstances)("pageIndex",i.pageIndex)("pageSize",i.pageSize)("pageSizeOptions",t.DdM(37,Of)),t.xp6(5),t.Q6J("ngClass",t.VKq(38,eu,i.invalidPage)),t.xp6(1),t.Q6J("ngClass",t.VKq(40,eu,i.invalidPage))("value",i.pageIndex+1),t.xp6(3),t.hij(" of ",i.lastPage,"")}}function rp(g,A){if(1&g&&(t.TgZ(0,"div",40),t.YNc(1,pf,24,3,"div",41),t.YNc(2,hh,6,5,"ng-template",null,42,t.W1O),t.YNc(4,us,94,42,"div",8),t.qZA()),2&g){var l=t.MAs(3),i=t.oxw();t.xp6(1),t.Q6J("ngIf",i.matchTypes&&i.matchTypes.length>0)("ngIfElse",l),t.xp6(3),t.Q6J("ngIf",i.substances&&i.substances.length)}}function Ef(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"app-substance-summary-card",184),t.NdJ("openImage",function(V){return t.CHM(l),t.oxw().openImageModal(V)}),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw();t.Q6J("substance",i)("showAudit",C.showAudit)("names",C.names[i.uuid])("codeSystemNames",C.codes[i.uuid]&&C.codes[i.uuid].codeSystemNames)("codeSystems",C.codes[i.uuid]&&C.codes[i.uuid].codeSystems)}}var ll=function(A){return{collapsed:A}},ro=function(A){return{hidden:A,"exact-matches-container":!0}},ul=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt,cn,Fn,Bn,Kn,fi,$n,$i,la,rr,Pa,Mr,to,jr){var Jr=this;(0,c.Z)(this,A),this.activatedRoute=l,this.substanceService=i,this.configService=C,this.emitService=w,this.loadingService=V,this.notificationService=Ze,this.utilsService=Ot,this.router=Bt,this.dialog=cn,this.gaService=Fn,this.authService=Bn,this.structureService=Kn,this.overlayContainerService=fi,this.location=$n,this.facetManagerService=$i,this.componentFactoryResolver=la,this.substanceTextSearchService=rr,this.title=Pa,this.cvService=Mr,this.wildCardService=to,this.dynamicContentItems=jr,this.invalidPage=!1,this.isLoading=!0,this.privateExport=!1,this.disableExport=!1,this.isError=!1,this.isRefresher=!1,this.hasBackdrop=!1,this.view="cards",this.displayedColumns=["name","approvalID","names","codes","actions"],this.sortValues=ra.J,this.subscriptions=[],this.isAdmin=!1,this.isLoggedIn=!1,this.showExactMatches=!1,this.names={},this.codes={},this.narrowSearchSuggestions={},this.matchTypes=[],this.narrowSearchSuggestionsCount=0,this.isComponentInit=!1,this.displayFacets=[],this.isFacetsParamsInit=!1,this.isCollapsed=!0,this.isSearchEditable=!1,this.showDeprecated=!1,this.previousState=[],this.facetViewCategorySelected="Default",this.facetDisplayType="facetView",this.facetViewCategory=[],this.facetViewControl=new o.NI,this.bulkSearchPanelOpen=!1,this.processResponsiveness=function(){setTimeout(function(){window&&(window.innerWidth<1100?(Jr.matSideNav.close(),Jr.isCollapsed=!0,Jr.hasBackdrop=!0):(Jr.matSideNav.open(),Jr.hasBackdrop=!1))})}}return(0,e.Z)(A,[{key:"onPopState",value:function(i){var C=this;setTimeout(function(){C.router.url===C.previousState[0]&&C.ngOnInit()},50)}},{key:"saveWildCardText",value:function(){this.wildCardService.getWildCardText(this.wildCardText)}},{key:"wildCardSearch",value:function(){this.wildCardService.getWildCardText(this.wildCardText),this.setUpPrivateSearchTerm(),this.searchSubstances()}},{key:"ngOnInit",value:function(){var i=this;this.gaService.sendPageView("Browse Substances"),this.cvService.getDomainVocabulary("CODE_SYSTEM").pipe((0,J.q)(1)).subscribe(function(V){i.codeSystem=V.CODE_SYSTEM.dictionary}),this.title.setTitle("Browse Substances"),this.pageSize=10,this.pageIndex=0,this.setUpPrivateSearchTerm(),this.privateStructureSearchTerm=this.activatedRoute.snapshot.queryParams.structure_search||"",this.privateSequenceSearchTerm=this.activatedRoute.snapshot.queryParams.sequence_search||"",this.privateSequenceSearchKey=this.activatedRoute.snapshot.queryParams.sequence_key||"",this.privateBulkSearchQueryId=this.activatedRoute.snapshot.queryParams.bulkQID||"",this.searchOnIdentifiers="true"===this.activatedRoute.snapshot.queryParams.searchOnIdentifiers||!1,this.searchEntity=this.activatedRoute.snapshot.queryParams.searchEntity||"",this.privateSearchType=this.activatedRoute.snapshot.queryParams.type||"",this.setUpPrivateSearchStrategy(),this.activatedRoute.snapshot.queryParams.sequence_key&&this.activatedRoute.snapshot.queryParams.sequence_key.length>9&&(this.sequenceID=this.activatedRoute.snapshot.queryParams.source_id,this.privateSequenceSearchTerm=JSON.parse(sessionStorage.getItem("gsrs_search_sequence_"+this.sequenceID))),this.privateSearchCutoff=Number(this.activatedRoute.snapshot.queryParams.cutoff)||0,this.privateSearchSeqType=this.activatedRoute.snapshot.queryParams.seq_type||"",this.smiles=this.activatedRoute.snapshot.queryParams.smiles||"",this.order=this.activatedRoute.snapshot.queryParams.order||"$root_lastEdited",this.view=this.activatedRoute.snapshot.queryParams.view||"cards",this.pageSize=parseInt(this.activatedRoute.snapshot.queryParams.pageSize,null)||10;var C=this.activatedRoute.snapshot.queryParams.showDeprecated;this.searchHashFromAdvanced=this.activatedRoute.snapshot.queryParams["g-search-hash"],this.pageSize>500&&(this.pageSize=500),this.pageIndex=parseInt(this.activatedRoute.snapshot.queryParams.pageIndex,null)||0,this.overlayContainer=this.overlayContainerService.getContainerElement();var w=this.authService.getAuth().subscribe(function(V){V?i.isLoggedIn=!0:i.showDeprecated=!1,i.isAdmin=i.authService.hasAnyRoles("Updater","SuperUpdater"),i.showAudit=i.authService.hasRoles("admin")});C&&"true"===C&&this.showAudit&&(this.showDeprecated=!0),this.facetManagerService.registerGetFacetsHandler(this.substanceService.getSubstanceFacets),this.subscriptions.push(w),this.isComponentInit=!0,this.loadComponent(),this.loadFacetViewFromConfig()}},{key:"setUpPrivateSearchTerm",value:function(){this.privateSearchTerm=this.activatedRoute.snapshot.queryParams.search||"",this.wildCardText&&this.wildCardText.length>0&&(this.privateSearchTerm+=this.privateSearchTerm.length>0?' AND "'+this.wildCardText+'"':'"'+this.wildCardText+'"'),this.privateSearchTerm&&(this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()))}},{key:"setUpPrivateSearchStrategy",value:function(){this.privateSearchStrategy=null,this.privateStructureSearchTerm?this.privateSearchStrategy="structure":this.privateSequenceSearchTerm?this.privateSearchStrategy="sequence":this.privateBulkSearchQueryId&&(this.privateSearchStrategy="bulk")}},{key:"ngAfterViewInit",value:function(){var i=this,C=this.matSideNav.openedStart.subscribe(function(){i.utilsService.handleMatSidenavOpen(1100)});this.subscriptions.push(C);var w=this.matSideNav.closedStart.subscribe(function(){i.utilsService.handleMatSidenavClose()});this.subscriptions.push(w);var V=this.dynamicContentContainer.changes.subscribe(function(Ze){var Ot=i.dynamicContentContainer.toArray(),Bt=i.dynamicContentItems.reduce(function(Fn,Bn){return Fn.concat(Bn)},[]).filter(function(Fn){return"browseHeader"===Fn.componentType});if(null!=Ot[0]){var cn=Ot[0].viewContainerRef;cn.clear(),Bt.forEach(function(Fn){var Bn=i.componentFactoryResolver.resolveComponentFactory(Fn.component);cn.createComponent(Bn).instance.test="testing"})}});this.subscriptions.push(V)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()}),this.facetManagerService.unregisterFacetSearchHandler()}},{key:"onResize",value:function(){this.processResponsiveness()}},{key:"loadComponent",value:function(){this.isFacetsParamsInit&&this.isComponentInit||this.isRefresher?this.searchSubstances():this.bulkSearchPanelOpen=(void 0===this.privateSearchTerm||""===this.privateSearchTerm)&&this.displayFacets&&0===this.displayFacets.length}},{key:"clipboard",value:function(i){document.addEventListener("copy",function(C){C.clipboardData.setData("text/plain",i),C.preventDefault(),document.removeEventListener("copy",null)}),document.execCommand("copy")}},{key:"changePage",value:function(i){var C,w;this.pageSize!==i.pageSize?(C="select:page-size",w=i.pageSize):this.pageIndex!==i.pageIndex&&(C="icon-button:page-number",w=i.pageIndex+1),this.gaService.sendEvent("substancesContent",C,"pager",w),this.pageSize=i.pageSize,this.pageIndex=i.pageIndex,this.populateUrlQueryParameters(),this.searchSubstances()}},{key:"customPage",value:function(i){if(this.validatePageInput(i)){this.invalidPage=!1;var C=Number(i.target.value)-1;this.pageIndex=C,this.gaService.sendEvent("substancesContent","select:page-number","pager",C),this.populateUrlQueryParameters(),this.searchSubstances()}}},{key:"validatePageInput",value:function(i){if(i&&i.target){var C=Number(i.target.value);if(!isNaN(Number(C))&&Number.isInteger(C)&&C<=this.lastPage&&C>0)return!0}return!1}},{key:"facetsParamsUpdated",value:function(i){this.pageIndex=0,this.showDeprecated=!(!i.deprecated||!0!==i.deprecated),this.privateFacetParams=i.facetParam,this.displayFacets=i.displayFacets.filter(function(C){return!("Deprecated"===C.type&&!1===C.bool)}),this.isFacetsParamsInit?this.searchSubstances():(this.isFacetsParamsInit=!0,this.loadComponent())}},{key:"facetViewChange",value:function(i){this.facetViewCategorySelected=i.value}},{key:"openedSortSubstances",value:function(i){this.overlayContainer.style.zIndex=i?"1002":"1000"}},{key:"openedFacetViewChange",value:function(i){this.overlayContainer.style.zIndex=i?"1002":"1000"}},{key:"loadFacetViewFromConfig",value:function(){var i=this;this.facetViewControl.setValue(this.facetViewCategorySelected),(this.configService.configData.facets&&this.configService.configData.facets.substances||{}).facetView.forEach(function(w){i.facetViewCategory.push(w.category)}),this.facetViewCategory.push("All")}},{key:"facetsLoaded",value:function(i){i>0?this.processResponsiveness():this.matSideNav.close()}},{key:"searchSubstances",value:function(){var i=this;this.bulkSearchPanelOpen=(void 0===this.privateSearchTerm||""===this.privateSearchTerm)&&this.displayFacets&&0===this.displayFacets.length,this.disableExport=!1;var C=this.utilsService.hashCode(this.privateSearchTerm,this.privateStructureSearchTerm,this.privateSequenceSearchTerm,this.privateBulkSearchQueryId,this.privateSearchCutoff,this.privateSearchType,this.privateSearchSeqType,this.pageSize,this.order,this.privateFacetParams,this.pageIndex*this.pageSize,this.showDeprecated);if(null==this.argsHash||this.argsHash!==C){this.isLoading=!0,this.loadingService.setLoading(!0),this.argsHash=C;var V=this.substanceService.getSubstancesSummaries({searchTerm:this.privateSearchTerm,structureSearchTerm:this.privateStructureSearchTerm,sequenceSearchTerm:this.privateSequenceSearchTerm,bulkQID:this.bulkSearchQueryId,searchOnIdentifiers:this.searchOnIdentifiers,searchEntity:this.searchEntity,cutoff:this.privateSearchCutoff,type:this.privateSearchType,seqType:this.privateSearchSeqType,order:this.order,pageSize:this.pageSize,facets:this.privateFacetParams,skip:this.pageIndex*this.pageSize,sequenceSearchKey:this.privateSequenceSearchKey,deprecated:this.showDeprecated}).subscribe(function(Ze){if(i.privateBulkSearchStatusKey=Ze.statusKey,i.isError=!1,i.totalSubstances=Ze.total,i.lastPage=Ze.total%i.pageSize==0?Ze.total/i.pageSize:Math.floor(Ze.total/i.pageSize+1),Ze.exactMatches&&Ze.exactMatches.length>0&&0===Ze.skip&&(!Ze.sideway||Ze.sideway.length<2)&&(i.exactMatchSubstances=Ze.exactMatches,i.showExactMatches=!0),Ze.summary&&Ze.summary.length>0&&0===Ze.skip&&(!Ze.sideway||Ze.sideway.length<2)&&(i.privateBulkSearchSummary=Ze.summary),i.substances=Ze.content,i.totalSubstances=Ze.total,Ze.facets&&Ze.facets.length>0&&(i.rawFacets=Ze.facets),i.narrowSearchSuggestions={},i.matchTypes=[],i.narrowSearchSuggestionsCount=0,Ze.narrowSearchSuggestions&&Ze.narrowSearchSuggestions.length&&(Ze.narrowSearchSuggestions.forEach(function(cn){i.codeSystem&&i.codeSystem[cn.displayField]&&(cn.displayField=i.codeSystem[cn.displayField].display),null==i.narrowSearchSuggestions[cn.matchType]&&(i.narrowSearchSuggestions[cn.matchType]=[],"WORD"===cn.matchType?i.matchTypes.unshift(cn.matchType):i.matchTypes.push(cn.matchType)),i.narrowSearchSuggestions[cn.matchType].push(cn),i.narrowSearchSuggestionsCount++}),i.privateSearchTerm&&!i.utilsService.looksLikeComplexSearchTerm(i.privateSearchTerm))){var Ot=i.utilsService.makeBeginsWithSearchTerm("root_names_name",i.privateSearchTerm.toString()),Bt={matchType:"ADDITIONAL",count:0,displayField:"Any Name Begins With",luceneField:"root_names_name",luceneQuery:Ot};i.substanceService.searchSubstances(Ot).subscribe(function(cn){(null==cn?void 0:cn.total)&&cn.total>0&&(Bt.count=cn.total,null==i.narrowSearchSuggestions[Bt.matchType]&&(i.narrowSearchSuggestions[Bt.matchType]=[],"WORD"===Bt.matchType?i.matchTypes.unshift(Bt.matchType):i.matchTypes.push(Bt.matchType)),i.narrowSearchSuggestions[Bt.matchType].push(Bt),i.narrowSearchSuggestionsCount++)})}i.substanceService.getExportOptions(Ze.etag).subscribe(function(cn){i.exportOptions=cn.filter(function(Fn){return!(Fn.extension&&("appxlsx"===Fn.extension||"prodxlsx"===Fn.extension||"ctusxlsx"===Fn.extension||"cteuxlsx"===Fn.extension))})}),i.substanceService.setResult(Ze.etag,Ze.content,Ze.total)},function(Ze){i.gaService.sendException("getSubstancesDetails: error from API call");var Ot={message:"There was an error trying to retrieve substances. Please refresh and try again.",type:Rt.k.error,milisecondsToShow:6e3};i.isError=!0,i.isLoading=!1,i.loadingService.setLoading(i.isLoading),i.notificationService.setNotification(Ot)},function(){V.unsubscribe(),i.exactMatchSubstances&&i.exactMatchSubstances.length>0&&i.exactMatchSubstances.forEach(function(Ze){i.setSubstanceNames(Ze.uuid),i.setSubstanceCodes(Ze.uuid)}),i.substances.forEach(function(Ze){i.setSubstanceNames(Ze.uuid),i.setSubstanceCodes(Ze.uuid)}),i.isLoading=!1,i.loadingService.setLoading(i.isLoading)})}}},{key:"sortMatchTypes",value:function(i){return Li.sortBy(i)}},{key:"searchTermOkforBeginsWithSearch",value:function(){return this.privateSearchTerm&&!this.utilsService.looksLikeComplexSearchTerm(this.privateSearchTerm)}},{key:"restricSearh",value:function(i){this.privateSearchTerm=i,this.searchTermHash=this.utilsService.hashCode(this.privateSearchTerm),this.isSearchEditable=null!=localStorage.getItem(this.searchTermHash.toString()),this.populateUrlQueryParameters(),this.searchSubstances(),this.substanceTextSearchService.setSearchValue("main-substance-search",this.privateSearchTerm)}},{key:"export",value:function(i,C){var w=this;if(""!==this.authService.getUser()){var V=this.dialog.open(xr.L,{maxHeight:"85%",width:"60%",data:{extension:C}});this.overlayContainer.style.zIndex="1002",V.afterClosed().subscribe(function(Ot){var Bt=Ot.name,cn=Ot.id;w.overlayContainer.style.zIndex=null,Bt&&""!==Bt&&(w.loadingService.setLoading(!0),w.authService.startUserDownload(i,w.privateExport,Bt+"."+C,cn).subscribe(function(Bn){w.loadingService.setLoading(!1),w.loadingService.setLoading(!1),w.router.navigate(["/user-downloads/",Bn.id])},function(Bn){return w.loadingService.setLoading(!1)}))})}else this.disableExport=!0}},{key:"setSubstanceNames",value:function(i){var C=this;this.substanceService.getSubstanceNames(i).pipe((0,J.q)(1)).subscribe(function(w){C.names[i]=w},function(w){C.names[i]=[]})}},{key:"setSubstanceCodes",value:function(i){var C=this;this.loadingService.setLoading(!0),this.substanceService.getSubstanceCodes(i).pipe((0,J.q)(1)).subscribe(function(w){w&&w.length>0&&(C.codes[i]={codeSystemNames:[],codeSystems:{}},w.forEach(function(V){C.codes[i].codeSystems[V.codeSystem]?C.codes[i].codeSystems[V.codeSystem].push(V):(C.codes[i].codeSystems[V.codeSystem]=[V],C.codes[i].codeSystemNames.push(V.codeSystem))}),C.codes[i].codeSystemNames=C.sortCodeSystems(C.codes[i].codeSystemNames),C.codes[i].codeSystemNames.forEach(function(V){C.codes[i].codeSystems[V]=C.codes[i].codeSystems[V].sort(function(Ze,Ot){return"PRIMARY"===Ze.type&&"PRIMARY"!==Ot.type?1:"PRIMARY"!==Ze.type&&"PRIMARY"===Ot.type?-1:0})})),C.loadingService.setLoading(!1)},function(w){C.loadingService.setLoading(!1)})}},{key:"populateUrlQueryParameters",value:function(){var i={queryParams:{}};i.queryParams.search=this.privateSearchTerm,i.queryParams.structure_search=this.privateStructureSearchTerm,i.queryParams.sequence_search=this.privateSequenceSearchTerm,i.queryParams.searchOnIdentifiers=this.searchOnIdentifiers,i.queryParams.bulkQID=this.privateBulkSearchQueryId,i.queryParams.searchEntity=this.searchEntity,i.queryParams.cutoff=this.privateSearchCutoff,i.queryParams.type=this.privateSearchType,i.queryParams.seq_type=this.privateSearchSeqType,i.queryParams.smiles=this.smiles,i.queryParams.order=this.order,i.queryParams.pageSize=this.pageSize,i.queryParams.pageIndex=this.pageIndex,i.queryParams.skip=this.pageIndex*this.pageSize,i.queryParams.view=this.view,this.previousState.push(this.router.url);var C=this.router.createUrlTree([],{queryParams:i.queryParams,queryParamsHandling:"merge",preserveFragment:!0});this.location.go(C.toString())}},{key:"editAdvancedSearch",value:function(){var i=yi.N.isAnalyticsPrivate?"advanced search term":"".concat(this.privateSearchTerm);if(this.gaService.sendEvent("substancesFiltering","icon-button:edit-advanced-search",i),!this.searchHashFromAdvanced){var C=[];C[0]=this.privateSearchTerm;var w=[],V={condition:"",queryableProperty:"Manual Query Entry",command:"Manual Query Entry",commandInputValues:C,query:this.privateSearchTerm},Ze=this.utilsService.hashCode("Substance");localStorage.setItem(Ze.toString(),"Substance"),w.push(Ze);var Ot=JSON.stringify(V),Bt=this.utilsService.hashCode(Ot);localStorage.setItem(Bt.toString(),Ot),w.push(Bt);var cn=JSON.stringify(w);localStorage.setItem(this.searchTermHash.toString(),cn)}var Fn={queryParams:{"g-search-hash":this.searchTermHash}};Fn.queryParams.structure=this.privateStructureSearchTerm||null,Fn.queryParams.type=this.privateSearchType||null,"similarity"===this.privateSearchType&&(Fn.queryParams.cutoff=this.privateSearchCutoff||0),this.router.navigate(["/advanced-search"],Fn)}},{key:"editStructureSearch",value:function(){var i=yi.N.isAnalyticsPrivate?"structure search term":"".concat(this.privateStructureSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff);this.gaService.sendEvent("substancesFiltering","icon-button:edit-structure-search",i);var C={queryParams:{}};C.queryParams.structure=this.privateStructureSearchTerm||null,C.queryParams.type=this.privateSearchType||null,"similarity"===this.privateSearchType&&(C.queryParams.cutoff=this.privateSearchCutoff||0),this.router.navigate(["/structure-search"],C)}},{key:"clearStructureSearch",value:function(){var i=yi.N.isAnalyticsPrivate?"structure search term":"".concat(this.privateStructureSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff);this.gaService.sendEvent("substancesFiltering","icon-button:clear-structure-search",i),this.privateStructureSearchTerm="",this.privateSearchType="",this.privateSearchCutoff=0,this.smiles="",this.pageIndex=0,this.populateUrlQueryParameters(),this.searchSubstances()}},{key:"editSequenceSearh",value:function(){var i=yi.N.isAnalyticsPrivate?"sequence search term":"".concat(this.privateSequenceSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff,"-").concat(this.privateSearchSeqType);this.gaService.sendEvent("substancesFiltering","icon-button:edit-sequence-search",i);var C={queryParams:{}};C.queryParams.type=this.privateSearchType||null,C.queryParams.cutoff=this.privateSearchCutoff||0,C.queryParams.seq_type=this.privateSearchSeqType||null,sessionStorage.setItem("gsrs_edit_sequence_"+this.sequenceID,JSON.stringify(this.privateSequenceSearchTerm)),C.queryParams.source="edit",C.queryParams.source_id=this.sequenceID,this.router.navigate(["/sequence-search"],C)}},{key:"clearSequenceSearch",value:function(){var i=yi.N.isAnalyticsPrivate?"sequence search term":"".concat(this.privateSequenceSearchTerm,"-").concat(this.privateSearchType,"-").concat(this.privateSearchCutoff,"-").concat(this.privateSearchSeqType);this.gaService.sendEvent("substancesFiltering","icon-button:clear-sequence-search",i),this.privateSequenceSearchTerm="",this.privateSequenceSearchKey="",this.privateSearchType="",this.privateSearchCutoff=0,this.privateSearchSeqType="",this.pageIndex=0,this.populateUrlQueryParameters(),this.searchSubstances()}},{key:"editBulkSearch",value:function(){var i=yi.N.isAnalyticsPrivate?"bulk search term":"".concat(this.searchEntity,"-bulk-search-").concat(this.privateBulkSearchQueryId);this.gaService.sendEvent("substancesFiltering","icon-button:edit-bulk-search",i),this.router.navigate(["/bulk-search"],{queryParams:{bulkQID:this.privateBulkSearchQueryId,searchOnIdentifiers:this.searchOnIdentifiers,searchEntity:this.searchEntity}})}},{key:"clearBulkSearch",value:function(){var i=yi.N.isAnalyticsPrivate?"bulk search term":"".concat(this.searchEntity,"-bulk-search-").concat(this.privateBulkSearchQueryId);this.gaService.sendEvent("substancesFiltering","icon-button:clear-bulk-search",i),this.privateBulkSearchQueryId=null,this.privateBulkSearchSummary=null,this.searchEntity="",this.searchOnIdentifiers=null,this.privateSearchType="",this.privateSearchCutoff=0,this.smiles="",this.pageIndex=0,this.populateUrlQueryParameters(),this.searchSubstances()}},{key:"clearSearch",value:function(){this.gaService.sendEvent("substancesFiltering","icon-button:clear-search",yi.N.isAnalyticsPrivate?"search term":this.privateSearchTerm),this.privateSearchTerm="",this.wildCardText="",this.searchTermHash=null,this.pageIndex=0,this.populateUrlQueryParameters(),this.substanceTextSearchService.setSearchValue("main-substance-search"),this.searchSubstances()}},{key:"clearFilters",value:function(){this.displayFacets.forEach(function(i){i.removeFacet(i.type,i.bool,i.val)}),null!=this.privateStructureSearchTerm&&""!==this.privateStructureSearchTerm?this.clearStructureSearch():null!=this.privateSequenceSearchTerm&&""!==this.privateSequenceSearchTerm||null!=this.privateSequenceSearchKey&&""!==this.privateSequenceSearchKey?this.clearSequenceSearch():null!=this.privateBulkSearchQueryId&&void 0!==this.privateBulkSearchQueryId?this.clearBulkSearch():this.clearSearch(),this.facetManagerService.clearSelections()}},{key:"clickToRefreshPreview",value:function(){this.emitService.setRefresh(!0),this.isRefresher=!0,this.loadComponent()}},{key:"clickToCancel",value:function(){this.emitService.setCancel(!0)}},{key:"searchTerm",get:function(){return this.privateSearchTerm}},{key:"structureSearchTerm",get:function(){return this.privateStructureSearchTerm}},{key:"sequenceSearchTerm",get:function(){return this.privateSequenceSearchTerm}},{key:"bulkSearchSummary",get:function(){return this.privateBulkSearchSummary}},{key:"bulkSearchQueryId",get:function(){return this.privateBulkSearchQueryId}},{key:"bulkSearchStatusKey",get:function(){return this.privateBulkSearchStatusKey}},{key:"searchType",get:function(){return this.privateSearchType}},{key:"searchStrategy",get:function(){return this.privateSearchStrategy}},{key:"searchCutoff",get:function(){return this.privateSearchCutoff}},{key:"searchSeqType",get:function(){return this.privateSearchSeqType}},{key:"openSideNav",value:function(){this.gaService.sendEvent("substancesFiltering","button:sidenav","open"),this.matSideNav.open()}},{key:"updateView",value:function(i){this.gaService.sendEvent("substancesContent","button:view-update",i.value),this.view=i.value}},{key:"getSequenceDisplay",value:function(i){return null!=i?i.length<16?i:"".concat(i.substr(0,15),"..."):""}},{key:"openImageModal",value:function(i){var C=this;this.gaService.sendEvent("substancesContent","link:structure-zoom",yi.N.isAnalyticsPrivate?"substance":i._name);var Ze=this.dialog.open(br.o,{width:"650px",panelClass:"structure-image-panel",data:"chemical"===i.substanceClass?{structure:i.uuid,smiles:i.structure.smiles,uuid:i.uuid,names:this.names[i.uuid]}:{structure:i.uuid,names:this.names[i.uuid]}});this.overlayContainer.style.zIndex="1002";var Ot=Ze.afterClosed().subscribe(function(){C.overlayContainer.style.zIndex=null,Ot.unsubscribe()},function(){C.overlayContainer.style.zIndex=null,Ot.unsubscribe()})}},{key:"getMol",value:function(i,C){var w=this,V=this.structureService.downloadMolfile(i).subscribe(function(Ze){w.downloadFile(Ze,C),V.unsubscribe()},function(Ze){V.unsubscribe()})}},{key:"getFasta",value:function(i,C){var w=this,V=this.substanceService.getFasta(i).subscribe(function(Ze){w.downloadFile(Ze,C),V.unsubscribe()},function(Ze){V.unsubscribe()})}},{key:"downloadFile",value:function(i,C){var w=i.type,V=[];V.push(i);var Ze=document.createElement("a");Ze.href=window.URL.createObjectURL(new Blob(V,{type:w})),Ze.setAttribute("download",C),document.body.appendChild(Ze),Ze.click()}},{key:"sortCodeSystems",value:function(i){if(this.configService.configData&&this.configService.configData.codeSystemOrder&&this.configService.configData.codeSystemOrder.length>0)for(var C=this.configService.configData.codeSystemOrder,w=C.length-1;w>=0;w--)for(var V=0;V<=i.length;V++)if(C[w]===i[V]){var Ze=i.splice(V,1);i.unshift(Ze[0]);break}return i}},{key:"showAllRecords",value:function(){this.showExactMatches=!1,this.processResponsiveness()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}},{key:"downloadJson",value:function(i){var C=this;this.substanceService.getSubstanceDetails(i).pipe((0,J.q)(1)).subscribe(function(w){C.downloadFile(JSON.stringify(w),i+".json")})}},{key:"copySmiles",value:function(i){var C=document.createElement("textarea");C.style.position="fixed",C.style.left="0",C.style.top="0",C.style.opacity="0",C.value=i,document.body.appendChild(C),C.focus(),C.select(),document.execCommand("copy"),document.body.removeChild(C)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.gz),t.Y36(ii.d),t.Y36(b.E),t.Y36(gs),t.Y36(Jn.b),t.Y36(rn.a),t.Y36(Ur.F),t.Y36(_.F0),t.Y36(G.uw),t.Y36(Mi.$),t.Y36(h.e),t.Y36(ji.De),t.Y36(jn.Xj),t.Y36(ve.Ye),t.Y36(Va.bH),t.Y36(t._Vd),t.Y36(un),t.Y36(S.Dx),t.Y36(zr.I),t.Y36(mn),t.Y36(_s.NE))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-substances-browse"]],viewQuery:function(l,i){var C;1&l&&(t.Gf(wr,7),t.Gf(So,5)),2&l&&(t.iGM(C=t.CRH())&&(i.matSideNav=C.first),t.iGM(C=t.CRH())&&(i.dynamicContentContainer=C))},hostBindings:function(l,i){1&l&&t.NdJ("popstate",function(w){return i.onPopState(w)},!1,t.Jf7)("resize",function(w){return i.onResize(w)},!1,t.Jf7)},decls:20,vars:17,consts:[[3,"hasBackdrop","ngClass"],["mode","side","opened","false",3,"disableClose"],["matSideNavInstance",""],["style","margin-left: 30px;","id","facetView","class","facetView",4,"ngIf"],["configName","substances","includeFacetSearch","true",3,"rawFacets","facetViewCategorySelected","facetDisplayType","facetsParamsUpdated","facetsLoaded"],["aria-label","Open Side Navigation",1,"expand-sidenav","mat-elevation-z4",3,"click"],["svgIcon","chevron_right"],["class","no-results",4,"ngIf"],[4,"ngIf"],[1,"break"],["class","side-nav-content",4,"ngIf"],[3,"ngClass"],[1,"exact-match-control"],["mat-raised-button","","color","primary",3,"click"],[1,"substance-cards"],[3,"substance","showAudit","names","codeSystemNames","codeSystems","openImage",4,"ngFor","ngForOf"],["id","facetView",1,"facetView",2,"margin-left","30px"],[3,"formControl","openedChange","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"no-results"],[1,"search-parameters","center"],["class","mat-elevation-z2",4,"ngIf"],[1,"link",3,"click"],[1,"mat-elevation-z2"],[1,"capitalized","font-medium-bold","no-break"],[1,"actions-container"],["mat-icon-button","","color","primary",3,"click",4,"ngIf"],["mat-icon-button","","color","primary",3,"click"],["svgIcon","delete_forever"],["svgIcon","edit","tooltip","Go to Advanced Search"],[1,"no-break"],["readonly","",1,"smiles-input",3,"value"],["svgIcon","paste","matTooltip","Copy Smiles to clipboard"],["svgIcon","edit"],[2,"max-width","1000px","margin-left","auto","margin-right","auto","text-align","left",3,"expanded","opened","closed"],["style","margin-top: 10px; text-align: center",4,"ngIf"],[2,"margin-top","10px","text-align","center"],[1,"ext-link",3,"click"],["showTitle","false","loadSummaries","true","context","substances",3,"key","isCollapsed"],[1,"side-nav-content"],["class","narrow-search-suggestions-container",4,"ngIf","ngIfElse"],["filterParameters",""],[1,"narrow-search-suggestions-container"],[1,"flex-row"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white"],["mat-flat-button","","color","primary",2,"padding-right","5px",3,"matMenuTriggerFor","menuOpened","menuClosed"],["svgIcon","drop_down"],["mat-flat-button","","color","primary",3,"click"],[1,"search-suggestions-container"],["searchSuggestions","matMenu"],[4,"ngFor","ngForOf"],[1,"mat-elevation-z2","narrow-search-suggestions",2,"margin","auto","background-color","white","margin-top","12px"],["routerLink","/advanced-search","title","Go to Advanced Search",2,"padding-left","6px"],[1,"match-type",3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["mat-menu-item","",3,"click",4,"ngFor","ngForOf"],["mat-menu-item","",3,"click"],[1,"suggestion-display"],[1,"suggestion-count"],[1,"search-parameters"],["class","mat-elevation-z2 selected-parameter",4,"ngIf"],["class","mat-elevation-z2 selected-parameter",4,"ngFor","ngForOf"],["class","reset-facets-button","mat-raised-button","","color","primary",3,"click",4,"ngIf"],[1,"mat-elevation-z2","selected-parameter"],["svgIcon","edit","matTooltip","Go to Advanced Search"],["mat-icon-button","","color","primary",2,"width","25px",3,"click"],["svgIcon","delete_forever","matTooltip","Delete search"],[1,"selected-container"],[1,"capitalized","font-medium-bold","selected-label"],["class","not-icon","svgIcon","not_interested",4,"ngIf"],[1,"no-break","selected-value"],["mat-icon-button","","color","primary",1,"display-button",3,"click"],["svgIcon","delete_forever",1,"display-icon"],["svgIcon","not_interested",1,"not-icon"],["mat-raised-button","","color","primary",1,"reset-facets-button",3,"click"],["svgIcon","outline-file_copy","matTooltip","Copy Smiles to clipboard"],["svgIcon","edit","matTooltip","Go back to Advanced Search"],["svgIcon","edit","matTooltip","Transfer Structure to Structure Search"],[1,"sub-search-div"],[1,"sub-search-text","red-text"],[1,"sub-search-text-div"],[1,"search-spinner"],[3,"diameter"],[1,"sub-search-text","match-txt"],[1,"sub-search-ref-btn",3,"click"],[1,"sub-search-cancel-btn",3,"click"],[1,"sub-search-text","orange-text"],[1,"controls-container"],[1,"title-container"],[1,"main-title"],[3,"value","change"],["aria-label","Table View","value","table","matTooltip","Table View"],["svgIcon","list"],["aria-label","Full View","value","cards","matTooltip","Full View"],["svgIcon","view_stream"],["aria-label","Tile View","value","tiles"],["svgIcon","view_module","matTooltip","Tile View"],[1,"sort"],[3,"ngModel","selectionChange","openedChange","ngModelChange"],["exportMenu","matMenu"],[1,"export"],["matTooltip","Export Search Results","mat-button","","class","mat-button export-button mat-raised-button",3,"matMenuTriggerFor",4,"ngIf"],[1,"full-paginator"],[1,"wildcard-div"],[1,"search",3,"floatLabel"],["matInput","","type","text","autocomplete","off","placeholder","Search Within Results",3,"ngModel","ngModelChange","change","keyup.enter"],["aria-label","Search Within Results","mat-icon-button","",3,"click"],["svgIcon","search"],[1,"middle-fill"],[3,"length","pageIndex","pageSize","pageSizeOptions","showFirstLastButtons","page"],["paginator",""],[1,"page-selector"],[1,"page-label"],[1,"page-input",3,"ngClass"],["matInput","","matTooltip","Type a page and press enter","aria-label","Page Index",3,"ngClass","value","keydown.enter","input","focusout"],["pagenum",""],["appBrowseHeaderDynamicSection",""],[1,"dynamic","container"],[1,"substance-table"],[1,"responsive"],["mat-table","",3,"dataSource"],["matColumnDef","name"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","approvalID"],["matColumnDef","names"],["matColumnDef","codes"],["matColumnDef","actions"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[1,"substance-tiles"],["class","tile",4,"ngFor","ngForOf"],[1,"full-paginator",2,"justify-content","flex-end"],[3,"length","pageIndex","pageSize","pageSizeOptions","page"],["matTooltip","Export Search Results","mat-button","",1,"mat-button","export-button","mat-raised-button",3,"matMenuTriggerFor"],["svgIcon","get_app"],[3,"substance","showAudit","names","codeSystemNames","codeSystems","codeSystemVocab","searchStrategy","openImage"],["mat-header-cell",""],["mat-cell",""],[1,"table-view-name",3,"routerLink"],[3,"innerHTML"],["target","_blank","appTrackLinkEvent","","evCategory","substancesContent","evAction","link:code",1,"ext-link",3,"href"],["mat-icon-button","",3,"matMenuTriggerFor"],["mat-icon-button","",3,"matMenuTriggerFor",4,"ngIf"],["mat-menu-item","","matTooltip","edit record",3,"routerLink",4,"ngIf"],["downloadMenu","matMenu"],["searchMenu","matMenu"],["mat-menu-item","",3,"routerLink","queryParams",4,"ngIf"],["editMenu","matMenu"],["mat-menu-item","","matTooltip","copy substance to new registration form",3,"routerLink","queryParams",4,"ngIf"],["mat-menu-item","","matTooltip","copy definition to new registration form",3,"routerLink","queryParams",4,"ngIf"],["mat-menu-item","","matTooltip","edit record",3,"routerLink"],["svgIcon","file_copy"],["mat-menu-item","",3,"click",4,"ngIf"],["mat-menu-item","",3,"routerLink","queryParams"],["mat-menu-item","","matTooltip","copy substance to new registration form",3,"routerLink","queryParams"],["mat-menu-item","","matTooltip","copy definition to new registration form",3,"routerLink","queryParams"],["mat-header-row",""],["mat-row",""],[1,"tile"],[1,"tile-title"],[1,"approval-id"],[1,"substance-content"],[1,"structure-container"],[1,"image-thumbnail"],[1,"tile-name"],[1,"substance-name","table-view-name",3,"innerHTML","routerLink","matTooltip"],["svgIcon","lock","class","lock-icon",4,"ngIf"],[1,"tile-button-container"],["class","mat-chip-list-container-2",4,"ngIf"],[1,"mat-chip-list-container-2"],["selectable","false","multiple","false"],["color","primary","selected",""],[1,"zoom",3,"click"],["appSubstanceImage","",3,"entityId","atomMaps"],["appSubstanceImage","","size","175",1,"image-other",3,"entityId","atomMaps"],[1,"simlarity-label"],[1,"similarity"],["svgIcon","lock",1,"lock-icon"],["class","mat-icon-button","aria-label","edit substance","mat-icon-button","","matTooltip","edit record",3,"routerLink",4,"ngIf"],["svgIcon","search",1,"button-link-img"],["aria-label","edit substance","mat-icon-button","","matTooltip","edit record",1,"mat-icon-button",3,"routerLink"],[3,"substance","showAudit","names","codeSystemNames","codeSystems","openImage"]],template:function(l,i){1&l&&(t.TgZ(0,"mat-sidenav-container",0),t.TgZ(1,"mat-sidenav",1,2),t.YNc(3,Qd,5,2,"mat-form-field",3),t.TgZ(4,"app-facets-manager",4),t.NdJ("facetsParamsUpdated",function(w){return i.facetsParamsUpdated(w)})("facetsLoaded",function(w){return i.facetsLoaded(w)}),t.qZA(),t.qZA(),t.TgZ(5,"mat-sidenav-content"),t.TgZ(6,"button",5),t.NdJ("click",function(){return i.openSideNav()}),t._UZ(7,"mat-icon",6),t.qZA(),t.YNc(8,ye,7,5,"div",7),t.YNc(9,jt,8,2,"div",8),t._UZ(10,"div",9),t.YNc(11,rp,5,3,"div",10),t.qZA(),t.qZA(),t.TgZ(12,"div",11),t.TgZ(13,"div",12),t.TgZ(14,"div"),t._uU(15),t.qZA(),t.TgZ(16,"button",13),t.NdJ("click",function(){return i.showAllRecords()}),t._uU(17," Show All Records Matching Search "),t.qZA(),t.qZA(),t.TgZ(18,"div",14),t.YNc(19,Ef,1,5,"app-substance-summary-card",15),t.qZA(),t.qZA()),2&l&&(t.Q6J("hasBackdrop",i.hasBackdrop)("ngClass",t.VKq(13,ll,i.showExactMatches)),t.xp6(1),t.Q6J("disableClose",!i.isCollapsed),t.xp6(2),t.Q6J("ngIf",i.isAdmin),t.xp6(1),t.Q6J("rawFacets",i.rawFacets)("facetViewCategorySelected",i.facetViewCategorySelected)("facetDisplayType",i.facetDisplayType),t.xp6(4),t.Q6J("ngIf",!(i.isLoading||i.isError||i.substances&&0!==i.substances.length)),t.xp6(1),t.Q6J("ngIf",i.bulkSearchQueryId),t.xp6(2),t.Q6J("ngIf",i.substances&&i.substances.length||i.matchTypes&&i.matchTypes.length>0),t.xp6(1),t.Q6J("ngClass",t.VKq(15,ro,!i.showExactMatches)),t.xp6(3),t.hij(" There is one exact (name, standardized name or code) match for ",i.searchTerm," "),t.xp6(4),t.Q6J("ngForOf",i.exactMatchSubstances))},directives:[aa.TM,ve.mk,aa.JX,ve.O5,It.KE,It.hX,fa.gD,o.JJ,o.oH,ve.sg,Ca.ey,io.R,aa.Rh,Y.Hw,y.lW,Me.gM,Ui.ib,Ui.yz,Ui.yK,al,qe.p6,qe.VK,ve.RF,ve.n9,ve.ED,qe.OP,_.yS,kt.$g,Gr.A9,Gr.Yi,o.On,$e.Nt,o.Fj,Gi.NW,So,zl,ue.BZ,ue.w1,ue.fO,ue.ge,ue.Dz,ue.ev,os.z,ue.as,ue.XQ,ue.nj,ue.Gk,xi.a8,xi.n5,xi.dn,fo.qn,fo.HS,Ns.m,y.zs],pipes:[Kr,ve.gd,fr.Y],styles:[".mat-expansion-panel-content>.mat-expansion-panel-body{padding:0 12px 10px}.dynamic-container[_ngcontent-%COMP%]{width:100%;min-height:5px} .facetView>*{z-index:1002!important}.smiles-input[_ngcontent-%COMP%]{max-width:350px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 12px}.filter-box[_ngcontent-%COMP%]{padding:10px}.filter-box[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid #d9d9d9}.wildcard-div[_ngcontent-%COMP%]{margin:10px 30px;width:20%;display:-ms-inline-flexbox;display:inline-flex}.wildcard[_ngcontent-%COMP%]{width:100%;height:50%;background:var(--regular-transparent-color);border-top-style:hidden;border-right-style:hidden;border-left-style:hidden;border-bottom-style:groove;border-color:var(--pale-border-color-rgb-3)}.search-parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap}.search-parameters.center[_ngcontent-%COMP%]{margin-top:10px;-ms-flex-pack:center;justify-content:center}.search-parameters[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{padding-left:10px;padding-right:2px;margin-left:5px;margin-bottom:5px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.search-parameters[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{margin-left:auto;-ms-flex-negative:0;flex-shrink:0}.search-parameters[_ngcontent-%COMP%] .selected-parameter[_ngcontent-%COMP%]{padding-right:5px;background-color:var(--regular-white-color);font-size:14px}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card[_ngcontent-%COMP%]{max-width:928px;margin-bottom:20px}.mat-card[_ngcontent-%COMP%], .controls-container[_ngcontent-%COMP%]{width:100%;box-sizing:border-box}.controls-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.controls-container[_ngcontent-%COMP%] .mat-paginator[_ngcontent-%COMP%]{margin-left:auto}.cards[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:block}.cards[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%], .cards[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .table[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%]{display:none}.table[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:block}.table[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-cards[_ngcontent-%COMP%], .tiles[_ngcontent-%COMP%] .substance-table[_ngcontent-%COMP%]{display:none}.tiles[_ngcontent-%COMP%] .substance-tiles[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.mat-card-title[_ngcontent-%COMP%]{white-space:normal}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{color:var(--link-primary-color);padding-right:10px}.mat-card-title[_ngcontent-%COMP%] .approval-id[_ngcontent-%COMP%]{font-size:16px;color:var(--regular-red-color)}.table-view-name[_ngcontent-%COMP%]{color:var(--link-primary-color)}.tile-title[_ngcontent-%COMP%]{height:19px} .mat-paginator-range-label{font-weight:550}.main-title[_ngcontent-%COMP%]{font-size:26px;padding-left:10px;padding-right:25px;font-weight:550;padding-top:10px;color:var(--primary-color);width:285px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container[_ngcontent-%COMP%]{margin-left:-20px;margin-bottom:10px}.mat-card-content[_ngcontent-%COMP%] .mat-chip-list-container-2[_ngcontent-%COMP%]{margin-bottom:10px}.substance-content[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.tile[_ngcontent-%COMP%]{height:350px;margin:10px;padding:10px;width:calc(25% - 20px);min-width:200px;max-width:230px;-ms-flex-line-pack:center;align-content:center;overflow:hidden;text-overflow:ellipsis}.tile[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:auto auto 20px;height:175px;width:175px}.tile[_ngcontent-%COMP%] .structure-container[_ngcontent-%COMP%]{width:100%;padding-right:0}.tile-name[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;height:25px}.tile-name[_ngcontent-%COMP%] svg{margin-bottom:-10px}.substance-tiles[_ngcontent-%COMP%]{-ms-flex-flow:row wrap;flex-flow:row wrap}.image-other[_ngcontent-%COMP%]{width:175px;height:175px}.substance-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.substance-data[_ngcontent-%COMP%]:not(:last-child){margin-bottom:15px}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{font-weight:700;min-width:100px}.structure-container[_ngcontent-%COMP%]{padding-right:10px}.no-results[_ngcontent-%COMP%]{text-align:center;margin-top:30px;font-size:1.2em}.mat-paginator[_ngcontent-%COMP%]{background:var(--regular-transparent-color)}.image-thumbnail[_ngcontent-%COMP%]{height:150px;width:150px}.space-bottom[_ngcontent-%COMP%]{margin-bottom:5px}.exact-matches-container[_ngcontent-%COMP%]{margin-top:80px}.exact-match-control[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-line-pack:center;align-content:center;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;margin-bottom:20px}.exact-match-control[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-top:15px}.facet-advanced-options-link[_ngcontent-%COMP%]{margin-top:7px;color:#448aff}.facet-search-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.facet-search-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.facet-search-loading.mat-progress-bar[_ngcontent-%COMP%]{margin-top:-18px;margin-bottom:1.09em}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:0%;flex-basis:0%;height:0;width:0px}.export[_ngcontent-%COMP%]{margin:auto}.export-button[_ngcontent-%COMP%]{color:var(--regular-black-color);border-radius:4px}.similarity[_ngcontent-%COMP%]{padding-left:10px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:var(--pink-span-color)}.similarity-label[_ngcontent-%COMP%]{font-style:italic}.menu-checkbox[_ngcontent-%COMP%]:hover{background-color:var(--regular-white-color)}@media (max-width: 1750px){.full-paginator[_ngcontent-%COMP%]{width:100%;-ms-flex-line-pack:center;align-content:center}.break[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;height:0;width:auto}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.export[_ngcontent-%COMP%]{margin:auto}}@media (max-width: 1100px){.controls-container[_ngcontent-%COMP%], .search-parameters[_ngcontent-%COMP%]{padding-left:30px}.controls-container[_ngcontent-%COMP%]{-ms-flex-wrap:wrap;flex-wrap:wrap}.side-nav-content[_ngcontent-%COMP%]{padding-top:10px}.export[_ngcontent-%COMP%]{margin-right:30px}}@media (max-width: 730px){.mat-card-title[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.mat-card-title[_ngcontent-%COMP%] .substance-name[_ngcontent-%COMP%]{margin-bottom:10px}.page-selector[_ngcontent-%COMP%]{display:none!important}.full-paginator[_ngcontent-%COMP%]{min-width:500px!important}.substance-data[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-data[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin-bottom:10px}.substance-data[_ngcontent-%COMP%] .value[_ngcontent-%COMP%], .substance-data[_ngcontent-%COMP%] .code-system[_ngcontent-%COMP%]{padding-left:20px}.search-parameters[_ngcontent-%COMP%]{font-size:.9em}.search-parameters[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{width:35px;height:35px;line-height:35px}.side-nav-content[_ngcontent-%COMP%]{padding:5px}}.lock-icon[_ngcontent-%COMP%]{color:var(--lock-icon-color)}.narrow-search-suggestions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.flex-row[_ngcontent-%COMP%]{width:100%;margin:auto}.narrow-search-suggestions[_ngcontent-%COMP%]{padding:12px 20px;width:auto;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center}.narrow-search-suggestions[_ngcontent-%COMP%] .mat-flat-button[_ngcontent-%COMP%]{margin-left:7px}@media (max-width: 600px){.substance-content[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column}.substance-content[_ngcontent-%COMP%] .image-thumbnail[_ngcontent-%COMP%]{margin:0 auto}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-l.references-link{display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.controls-container[_ngcontent-%COMP%] abel{margin:0 3px 0 0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-select{margin-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-container{padding-right:0;padding-left:0}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size{margin-right:4px}.controls-container[_ngcontent-%COMP%] .mat-paginator-range-actions .mat-icon-button{width:35px;height:35px;line-height:35px}}@media (max-width: 505px){.full-paginator[_ngcontent-%COMP%]{min-width:0px!important}.controls-container[_ngcontent-%COMP%] .mat-paginator-page-size-label{display:none}}.zoom[_ngcontent-%COMP%]:hover{cursor:zoom-in}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.ext-link[_ngcontent-%COMP%]{color:var(--link-primary-color);text-decoration-style:unset}.sort[_ngcontent-%COMP%]{margin:auto auto -7px}.advanced[_ngcontent-%COMP%]{padding-left:20px;color:#448aff}.facet-options[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.tile-button-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:space-evenly;justify-content:space-evenly}.mat-elevation-z2[_ngcontent-%COMP%]{background-color:var(--regular-white-color)}.more-content[_ngcontent-%COMP%]{width:45%}.advanced-container[_ngcontent-%COMP%]{width:55%;-ms-flex-line-pack:right;align-content:right}.selected-container[_ngcontent-%COMP%]{font-size:14px}.selected-label[_ngcontent-%COMP%]{padding-right:5px}.reset-facets-button[_ngcontent-%COMP%]{margin-left:5px;margin-bottom:5px}.selected-parameter[_ngcontent-%COMP%]{height:auto;padding-top:3px;padding-bottom:3px}.selected-container[_ngcontent-%COMP%]{max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-label[_ngcontent-%COMP%]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.not-icon[_ngcontent-%COMP%]{height:18px!important;width:18px!important;vertical-align:bottom}.page-select[_ngcontent-%COMP%]{width:100px} .auto-width .mat-form-field{width:auto!important} .auto-width .mat-select-value{max-width:100%;width:auto}.page-label[_ngcontent-%COMP%]{color:var(--dark-label-color);display:block;font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;padding-right:12px}.page-selector[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;margin-left:20px}[_nghost-%COMP%] .mat-paginator-range-label{margin:0 5px!important}mat-paginator[_ngcontent-%COMP%]{font-size:16px}.page-input[_ngcontent-%COMP%]{width:50px;font-size:14px}.bad-page[_ngcontent-%COMP%]{color:var(--regular-red-color)}.full-paginator[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;min-width:660px}.disable-export[_ngcontent-%COMP%]{pointer-events:none;opacity:.5}.button-link-img[_ngcontent-%COMP%]{line-height:40px;color:var(--regular-black-color)}.red-text[_ngcontent-%COMP%]{color:var(--regular-red-color);font-style:italic}.orange-text[_ngcontent-%COMP%]{color:var(--regular-orange-color);font-style:italic}.sub-search-div[_ngcontent-%COMP%]{display:none}.sub-search-ref-btn[_ngcontent-%COMP%]{padding:10px;margin:0 5px;background-color:var(--regular-white-color);box-shadow:2px 2px var(--regular-lightgray-color);border:.4px solid var(--regular-white-color);border-radius:5px}.sub-search-cancel-btn[_ngcontent-%COMP%]{padding:10px;color:var(--regular-white-color);background-color:var(--regular-red-color);box-shadow:2px 2px var(--regular-lightgray-color);border:.4px solid var(--regular-red-color);border-radius:5px}.sub-search-text[_ngcontent-%COMP%]{text-align:center}.match-txt[_ngcontent-%COMP%]{display:inline;padding:0 5px}.sub-search-text-div[_ngcontent-%COMP%]{text-align:center}.search-spinner[_ngcontent-%COMP%]{width:15px;height:15px;display:inline-table;margin:auto}.search-spinner[_ngcontent-%COMP%] .mat-progress-spinner circle, .mat-spinner[_ngcontent-%COMP%] circle[_ngcontent-%COMP%]{stroke:var(--regular-grey-color);width:10px!important;height:10px!important;display:inline}.cdk-overlay-backdrop[_ngcontent-%COMP%], .cdk-global-overlay-wrapper[_ngcontent-%COMP%]{display:none!important}"]}),g}(),Tc=n(84705),Wu=n(1790),tu=n(45592),ua=["contentContainer"];function cl(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div"),t.TgZ(2,"button",23),t.NdJ("click",function(){return t.CHM(l),t.oxw().standardize("ADD_HYDROGENS")}),t._uU(3,"Add Explicit Hydrogens"),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"button",23),t.NdJ("click",function(){return t.CHM(l),t.oxw().standardize("STEREO_FLATTEN")}),t._uU(6,"Remove Stereochemistry Bonds"),t.qZA(),t.qZA(),t.qZA()}}function Ac(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",24),t.TgZ(1,"div"),t._uU(2,"Similarity cutoff (tanimoto)"),t.qZA(),t.TgZ(3,"mat-slider",25),t.NdJ("input",function(w){return t.CHM(l),t.oxw().searchCutoffChanged(w)}),t.qZA(),t.TgZ(4,"div"),t._uU(5),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(3),t.Q6J("value",i.similarityCutoff),t.xp6(2),t.Oqu(i.similarityCutoff)}}var nu=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt,cn){(0,c.Z)(this,A),this.router=l,this.dialog=i,this.loadingService=C,this.structureService=w,this.activatedRoute=V,this.renderer=Ze,this.gaService=Ot,this.overlayContainerService=Bt,this.titleService=cn,this.showSimilarityCutoff=!1,this.searchTypeControl=new o.NI,this.searchType="substructure",this._searchtype="substructure"}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.gaService.sendPageView("Structure Search"),this.titleService.setTitle("Structure Search"),this.loadingService.setLoading(!0),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){this.renderer.addClass(this.contentContainer.nativeElement,yi.N.structureEditor)}},{key:"ngOnDestroy",value:function(){}},{key:"molvecUpdate",value:function(i){this.editor.setMolecule(i)}},{key:"editorOnLoad",value:function(i){var C=this;this.loadingService.setLoading(!1),this.editor=i,setTimeout(function(){C.activatedRoute.queryParamMap.subscribe(function(w){w.has("structure")&&C.structureService.getMolfile(w.get("structure")).subscribe(function(V){C.editor.setMolecule(V)}),w.has("type")&&(C.searchType=w.get("type"),C._searchtype=w.get("type")),"similarity"===C.searchType&&(C.showSimilarityCutoff=!0,C.similarityCutoff=w.has("cutoff")&&Number(w.get("cutoff"))||.8),C.searchTypeControl.setValue(C.searchType)})})}},{key:"search",value:function(){var i=this,C=this.editor.getMolfile();this.structureService.interpretStructure(C).subscribe(function(w){i.gaService.sendEvent("structureSearch","button:search",!yi.N.isAnalyticsPrivate&&w.structure.smiles||"structure search term"),i.navigateToBrowseSubstance(w.structure.id,w.structure.smiles)},function(){})}},{key:"standardize",value:function(i){var C=this,w=this.editor.getMolfile();this.structureService.interpretStructure(w,"",i).subscribe(function(V){V&&V.structure&&V.structure.molfile&&C.editor.setMolecule(V.structure.molfile)},function(){})}},{key:"navigateToBrowseSubstance",value:function(i,C){var w={queryParams:{}},V={queryParams:{}};w.queryParams.structure_search=i||null,w.queryParams.type=this.searchType||null,V.queryParams.structure=i,V.queryParams.type=this.searchType||null,"similarity"===this.searchType&&(w.queryParams.cutoff=this.similarityCutoff||0,V.queryParams.cutoff=this.similarityCutoff||0),null!=C&&(w.queryParams.smiles=C),window.history.pushState({},"Structure Search","/structure-search?structure="+V.queryParams.structure+"&type="+V.queryParams.type+"&cutoff="+V.queryParams.cutoff),this.router.navigate(["/browse-substance"],w)}},{key:"searchTypeSelected",value:function(i){this.searchType=i.value,this._searchtype=i.value,this.gaService.sendEvent("structureSearch","select:search-type",this.searchType),"similarity"===this.searchType?(this.showSimilarityCutoff=!0,this.similarityCutoff=.8):this.showSimilarityCutoff=!1}},{key:"openStructureImportDialog",value:function(){var i=this;this.gaService.sendEvent("structureSearch","button:import","import structure");var C=this.dialog.open(Tc.N,{height:"auto",width:"650px",data:{}});this.overlayContainer.style.zIndex="1002",C.afterClosed().subscribe(function(w){i.overlayContainer.style.zIndex=null,w&&w.structure&&w.structure.molfile&&i.editor.setMolecule(w.structure.molfile)},function(){i.overlayContainer.style.zIndex=null})}},{key:"openStructureExportDialog",value:function(){var i=this;this.gaService.sendEvent("structureSearch","button:export","export structure");var C=this.dialog.open(tu.g,{height:"auto",width:"650px",data:{molfile:this.editor.getMolfile(),smiles:this.editor.getSmiles()}});this.overlayContainer.style.zIndex="1002",C.afterClosed().subscribe(function(){i.overlayContainer.style.zIndex=null},function(){i.overlayContainer.style.zIndex=null})}},{key:"searchCutoffChanged",value:function(i){this.similarityCutoff=i.value,this.gaService.sendEvent("structureSearch","slider","similarity-cutoff",this.similarityCutoff)}},{key:"_editor",get:function(){return this.editor}},{key:"_searchType",get:function(){return this.searchType}},{key:"nameResolved",value:function(i){this.editor.setMolecule(i)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.F0),t.Y36(G.uw),t.Y36(Jn.b),t.Y36(Wu.D),t.Y36(_.gz),t.Y36(t.Qsj),t.Y36(Mi.$),t.Y36(jn.Xj),t.Y36(S.Dx))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-structure-search"]],viewQuery:function(l,i){var C;1&l&&t.Gf(ua,7),2&l&&t.iGM(C=t.CRH())&&(i.contentContainer=C.first)},decls:36,vars:3,consts:[[1,"search-content-container"],["contentContainer",""],[2,"font-weight","500"],[1,"structure-editor-actions-container"],[1,"editor-container"],[3,"editorOnLoad","loadedMolfile"],[1,"search-actions"],[1,"two"],[1,"search-type-select"],["placeholder","Search type","value","substructure",3,"formControl","selectionChange"],["value","substructure"],["value","similarity"],["value","exact"],["value","flex"],[4,"ngIf"],["class","similarity-cutoff",4,"ngIf"],[1,"action-button-container"],[1,"action-button-container","three"],["name","search","mat-raised-button","","color","primary",1,"search-button",2,"font-size","18px",3,"click"],[1,"action-button-container","one"],["name","export","mat-raised-button","","color","primary",1,"import-button",3,"click"],["name","import","mat-raised-button","","color","primary",1,"export-button",3,"click"],[3,"structureSelected"],["mat-button","","mat-flat-button","",3,"click"],[1,"similarity-cutoff"],["min",".40","max","1","step","0.01",3,"value","input"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0,1),t.TgZ(2,"mat-card"),t.TgZ(3,"h2",2),t._uU(4,"Structure Search"),t.qZA(),t.TgZ(5,"div",3),t.TgZ(6,"div",4),t.TgZ(7,"app-structure-editor",5),t.NdJ("editorOnLoad",function(w){return i.editorOnLoad(w)})("loadedMolfile",function(w){return i.molvecUpdate(w)}),t.qZA(),t.qZA(),t.TgZ(8,"div",6),t.TgZ(9,"div",7),t.TgZ(10,"mat-form-field",8),t.TgZ(11,"mat-select",9),t.NdJ("selectionChange",function(w){return i.searchTypeSelected(w)}),t.TgZ(12,"mat-option",10),t._uU(13," Substructure "),t.qZA(),t.TgZ(14,"mat-option",11),t._uU(15," Similarity "),t.qZA(),t.TgZ(16,"mat-option",12),t._uU(17," Exact "),t.qZA(),t.TgZ(18,"mat-option",13),t._uU(19," Flex "),t.qZA(),t.qZA(),t.qZA(),t.YNc(20,cl,7,0,"div",14),t.YNc(21,Ac,6,2,"div",15),t.qZA(),t.TgZ(22,"div",16),t.TgZ(23,"div",17),t.TgZ(24,"button",18),t.NdJ("click",function(){return i.search()}),t._uU(25,"Search"),t.qZA(),t.qZA(),t.TgZ(26,"div",19),t.TgZ(27,"button",20),t.NdJ("click",function(){return i.openStructureImportDialog()}),t._uU(28,"Import"),t.qZA(),t.qZA(),t.TgZ(29,"div",19),t.TgZ(30,"button",21),t.NdJ("click",function(){return i.openStructureExportDialog()}),t._uU(31,"Export"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(32,"div"),t.TgZ(33,"h4"),t._uU(34," Get Structure From Name "),t.qZA(),t.TgZ(35,"app-name-resolver",22),t.NdJ("structureSelected",function(w){return i.nameResolved(w)}),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(11),t.Q6J("formControl",i.searchTypeControl),t.xp6(9),t.Q6J("ngIf","substructure"===i._searchtype),t.xp6(1),t.Q6J("ngIf",i.showSimilarityCutoff))},styles:[".search-content-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.mat-card-title[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;box-sizing:border-box;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}.clean-button[_ngcontent-%COMP%]{margin-top:-15px}.mat-card[_ngcontent-%COMP%]{margin-top:15px;box-sizing:border-box;max-width:1170px}.structure-editor-actions-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.editor-container[_ngcontent-%COMP%]{width:920px;min-height:460px}.ketcher[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{height:460px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%]{min-height:330px}.search-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;padding-left:15px;margin-left:10px;border-left:1px solid var(--textarea-light-border-color)}.search-actions[_ngcontent-%COMP%] .mat-slider-horizontal[_ngcontent-%COMP%]{width:100%}.similarity-cutoff[_ngcontent-%COMP%]{margin-top:20px;margin-bottom:20px;text-align:center}.action-button-container[_ngcontent-%COMP%]{margin-top:20px;-ms-flex-item-align:end;align-self:flex-end;width:100%}.action-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}@media (max-width: 1175px){.structure-editor-actions-container[_ngcontent-%COMP%]{-ms-flex-direction:column;flex-direction:column;width:100%}.editor-container[_ngcontent-%COMP%]{width:100%;height:390px}.search-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;width:100%}.two[_ngcontent-%COMP%]{width:50%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.action-button-container[_ngcontent-%COMP%]{width:50%;margin:20px auto auto}}@media (max-width: 970px){.structure-editor-actions-container[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.editor-container[_ngcontent-%COMP%], .search-actions[_ngcontent-%COMP%]{min-width:633px}.jsdraw[_ngcontent-%COMP%] .editor-container[_ngcontent-%COMP%], .jsdraw[_ngcontent-%COMP%] .search-actions[_ngcontent-%COMP%]{min-width:710px}}"]}),g}(),Vs=n(63206),zu=n(71989);function Zf(g,A){1&g&&(t.TgZ(0,"mat-error"),t._uU(1," Only values between 0 and 1 are allowed "),t.qZA())}function lo(g,A){1&g&&(t.TgZ(0,"mat-error"),t._uU(1," This is required "),t.qZA())}function Mh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",20),t.NdJ("click",function(){return t.CHM(l),t.oxw().sequenceSearchForm.controls.sequence.setValue("")}),t._uU(1," Clear "),t.qZA()}}function xh(g,A){if(1&g&&(t.TgZ(0,"div",21),t._uU(1),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.hij(" ",l.errorMessage," ")}}var cd=function(){var g=function(){function A(l,i,C,w,V,Ze){var Ot=this;(0,c.Z)(this,A),this.router=l,this.activatedRoute=i,this.substanceService=C,this.gaService=w,this.loadingService=V,this.titleService=Ze,this.sequenceSearchForm=new o.cw({cutoff:new o.NI(.9,[o.kI.min(0),o.kI.max(1),o.kI.required]),type:new o.NI("GLOBAL",o.kI.required),sequenceType:new o.NI("protein",o.kI.required),sequence:new o.NI("",o.kI.required)}),this.errorMessage="",this.activatedRoute.queryParamMap.subscribe(function(Bt){Bt.has("source")&&"edit"===Bt.get("source")?(Ot.id=Bt.get("source_id"),Ot.sequenceSearchForm.controls.sequence.setValue(JSON.parse(sessionStorage.getItem("gsrs_edit_sequence_"+Ot.id)))):Bt.has("sequence")&&Ot.sequenceSearchForm.controls.sequence.setValue(Bt.get("sequence")),Bt.has("type")&&Ot.sequenceSearchForm.controls.type.setValue(Bt.get("type")),Bt.has("cutoff")&&Ot.sequenceSearchForm.controls.cutoff.setValue(Bt.get("cutoff")),Bt.has("seq_type")&&("nucleicacid"===Bt.get("seq_type").toLowerCase()?Ot.sequenceSearchForm.controls.sequenceType.setValue("nucleicAcid"):Ot.sequenceSearchForm.controls.sequenceType.setValue("protein")),Bt.has("subunit")&&Bt.has("substance")&&Bt.has("seq_type")&&Ot.getSequence(Bt.get("substance"),Bt.get("subunit"),Bt.get("seq_type"))})}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.titleService.setTitle("Sequence Search"),this.gaService.sendPageView("Sequence Search"),this.sequenceSearchForm.controls.cutoff.valueChanges.pipe((0,zu.b)(1e3)).subscribe(function(C){i.gaService.sendEvent("sequenceSearch","input:cutoff","search identity",C)}),this.sequenceSearchForm.controls.type.valueChanges.subscribe(function(C){i.gaService.sendEvent("sequenceSearch","select:cutoff-type",!yi.N.isAnalyticsPrivate&&C||"cutoff type")}),this.sequenceSearchForm.controls.sequenceType.valueChanges.subscribe(function(C){i.gaService.sendEvent("sequenceSearch","select:sequence-type",!yi.N.isAnalyticsPrivate&&C||"cutoff type")})}},{key:"ngOnDestroy",value:function(){}},{key:"search",value:function(){this.sequenceSearchForm.valid?(this.gaService.sendEvent("sequenceSearch","button:search","sequence"),this.navigateToBrowseSubstance()):this.gaService.sendException("tried invalid sequence search")}},{key:"cleanSequence",value:function(i){var C=["G","T","U","N","A","C","X"];"PROTEIN"===i.toUpperCase()&&(C=["A","C","D","E","F","G","H","I","K","L","M","N","P","Q","R","S","T","V","W","X","Y"]),this.sequenceSearchForm.controls.sequence.setValue(this.filterbychr(this.sequenceSearchForm.controls.sequence.value,C))}},{key:"getSequence",value:function(i,C,w){var V=this;w=w.charAt(0).toLowerCase()+w.slice(1),this.substanceService.getSequenceByID(i,C,w).subscribe(function(Ze){Ze&&Ze.length>0&&Ze[0].sequence&&V.sequenceSearchForm.controls.sequence.setValue(Ze[0].sequence)})}},{key:"filterbychr",value:function(i,C){var w=i.toString().split(""),V=[];return w.forEach(function(Ze,Ot,Bt){C.indexOf(Ze.toUpperCase())>=0&&V.push(Ze)}),V.join("")}},{key:"makeRandom",value:function(){for(var i="",C="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890",w=0;w<6;w++)i+=C.charAt(Math.floor(Math.random()*C.length));return i}},{key:"navigateToBrowseSubstance",value:function(){var i=this;this.errorMessage="",this.loadingService.setLoading(!0),this.id||(this.id=this.makeRandom()),sessionStorage.setItem("gsrs_search_sequence_"+this.id,JSON.stringify(this.sequenceSearchForm.value.sequence));var C={queryParams:{}};C.queryParams.type="sequence",C.queryParams.cutoff=this.sequenceSearchForm.value.cutoff,C.queryParams.type=this.sequenceSearchForm.value.type,C.queryParams.seq_type=this.sequenceSearchForm.value.sequenceType,C.queryParams.source_id=this.id,this.substanceService.getSubstanceSequenceResults(this.sequenceSearchForm.value.sequence,this.sequenceSearchForm.value.cutoff,this.sequenceSearchForm.value.type,this.sequenceSearchForm.value.sequenceType).subscribe(function(w){i.loadingService.setLoading(!1),w.key?(C.queryParams.sequence_key=w.key,i.router.navigate(["/browse-substance"],C)):i.errorMessage="There was a problem processing your sequence search request"},function(w){console.log(w),i.errorMessage=i.sequenceSearchForm.value.sequence>5e4?"Cannot process searches for sequences with more than 50,000 sites":"There was a problem processing your sequence search request",i.loadingService.setLoading(!1)})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.F0),t.Y36(_.gz),t.Y36(Yi.d),t.Y36(Mi.$),t.Y36(Jn.b),t.Y36(S.Dx))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-sequence-search"]],decls:34,vars:6,consts:[[1,"content-container"],[3,"formGroup"],[1,"parameters"],["matInput","","placeholder","Search Identity","formControlName","cutoff"],[4,"ngIf"],["placeholder","Cutoff Type","formControlName","type"],["value","SUB"],["value","GLOBAL"],["placeholder","Sequence Type","formControlName","sequenceType"],["value","protein"],["value","nucleicAcid"],[1,"sequence-body"],["formControlName","sequence"],[1,"actions"],["mat-raised-button","","color","primary",1,"padding-right",3,"disabled","click"],["mat-button","",3,"click",4,"ngIf"],[1,"align-right"],[1,"blue-font",3,"click"],["svgIcon","spellcheck"],["class","error-message",4,"ngIf"],["mat-button","",3,"click"],[1,"error-message"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"mat-card"),t.TgZ(2,"mat-card-title"),t._uU(3," Sequence Search "),t.qZA(),t.TgZ(4,"mat-card-content"),t.TgZ(5,"form",1),t.TgZ(6,"div",2),t.TgZ(7,"mat-form-field"),t._UZ(8,"input",3),t.YNc(9,Zf,2,0,"mat-error",4),t.YNc(10,lo,2,0,"mat-error",4),t.qZA(),t.TgZ(11,"mat-form-field"),t.TgZ(12,"mat-select",5),t.TgZ(13,"mat-option",6),t._uU(14," Contains Alignment Match "),t.qZA(),t.TgZ(15,"mat-option",7),t._uU(16," Global Alignment Match "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(17,"mat-form-field"),t.TgZ(18,"mat-select",8),t.TgZ(19,"mat-option",9),t._uU(20," Protein "),t.qZA(),t.TgZ(21,"mat-option",10),t._uU(22," Nucleic Acid "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(23,"div",11),t._UZ(24,"textarea",12),t.qZA(),t.TgZ(25,"div",13),t.TgZ(26,"button",14),t.NdJ("click",function(){return i.search()}),t._uU(27," Search "),t.qZA(),t.YNc(28,Mh,2,0,"button",15),t.TgZ(29,"div",16),t.TgZ(30,"a",17),t.NdJ("click",function(){return i.cleanSequence(i.sequenceSearchForm.controls.sequenceType.value)}),t._UZ(31,"mat-icon",18),t._uU(32," clean sequence"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.YNc(33,xh,2,1,"div",19),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(5),t.Q6J("formGroup",i.sequenceSearchForm),t.xp6(4),t.Q6J("ngIf",i.sequenceSearchForm.controls.cutoff.hasError("min")||i.sequenceSearchForm.controls.cutoff.hasError("max")),t.xp6(1),t.Q6J("ngIf",i.sequenceSearchForm.controls.cutoff.hasError("required")),t.xp6(16),t.Q6J("disabled",i.sequenceSearchForm.invalid),t.xp6(2),t.Q6J("ngIf",i.sequenceSearchForm.value.sequence),t.xp6(5),t.Q6J("ngIf",i.errorMessage&&""!==i.errorMessage))},directives:[xi.a8,xi.n5,xi.dn,o._Y,o.JL,o.sg,It.KE,$e.Nt,o.Fj,o.JJ,o.u,ve.O5,It.TO,fa.gD,Ca.ey,y.lW,Y.Hw],styles:[".content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.mat-card[_ngcontent-%COMP%]{margin-top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:750px;width:100%}.parameters[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:space-evenly;justify-content:space-evenly;-ms-flex-line-pack:stretch;align-content:stretch}.parameters[_ngcontent-%COMP%] .mat-error[_ngcontent-%COMP%]{display:block;background-color:var(--regular-white-color);padding:0 2px}.sequence-body[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{box-sizing:border-box;width:100%;height:300px;border:solid 1px var(--textarea-dark-border-color);border-radius:3px;padding:10px}.actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-top:10px}.actions[_ngcontent-%COMP%] .align-right[_ngcontent-%COMP%]{margin-left:auto}.actions[_ngcontent-%COMP%] .padding-right[_ngcontent-%COMP%]{padding-right:10px}.error-message[_ngcontent-%COMP%]{text-align:center;font-size:16px;color:var(--regular-red-color)}"]}),g}(),Sh=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.fb=l,this.dialogRef=i,this.regForm=new o.cw({username:new o.NI("",o.kI.required),email:new o.NI("",o.kI.required)})}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.regForm.controls.email.markAsTouched()}},{key:"register",value:function(){this.dialogRef.close(this.regForm.value)}},{key:"exit",value:function(){this.dialogRef.close()}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(o.qu),t.Y36(G.so))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-register"]],decls:15,vars:2,consts:[[1,"reg-container"],[1,"exitBtn",3,"click"],[1,"reg-form",3,"formGroup"],["matInput","","placeholder","Enter full name","formControlName","username","autofocus",""],["type","email","matInput","","placeholder","Enter email address","formControlName","email","email",""],["color","primary","mat-flat-button","",3,"disabled","click"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"span",1),t.NdJ("click",function(){return i.exit()}),t._uU(2,"X"),t.qZA(),t.TgZ(3,"mat-card"),t.TgZ(4,"mat-card-title"),t._uU(5," Enter the following to request registration or resolve login/password issue: "),t.qZA(),t.TgZ(6,"mat-card-content"),t.TgZ(7,"form",2),t.TgZ(8,"mat-form-field"),t._UZ(9,"input",3),t.qZA(),t.TgZ(10,"mat-form-field"),t._UZ(11,"input",4),t.qZA(),t.qZA(),t.qZA(),t.TgZ(12,"mat-card-actions"),t.TgZ(13,"button",5),t.NdJ("click",function(){return i.register()}),t._uU(14,"SEND REGISTRATION REQUEST"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(7),t.Q6J("formGroup",i.regForm),t.xp6(6),t.Q6J("disabled",i.regForm.invalid))},directives:[xi.a8,xi.n5,xi.dn,o._Y,o.JL,o.sg,It.KE,$e.Nt,o.Fj,o.JJ,o.u,o.on,xi.hq,y.lW],styles:[".reg-container[_ngcontent-%COMP%]{width:100%;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.mat-card[_ngcontent-%COMP%]{max-width:400px;width:100%;box-sizing:border-box;box-shadow:none!important}.reg-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;padding-top:20px}.mat-card-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.exitBtn[_ngcontent-%COMP%]{float:right;width:1px;cursor:pointer}"]}),g}();function kf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-card"),t.TgZ(1,"mat-card-title"),t._uU(2," Login "),t.qZA(),t.TgZ(3,"mat-card-content"),t.TgZ(4,"form",3),t.TgZ(5,"mat-form-field"),t._UZ(6,"input",4),t.qZA(),t.TgZ(7,"mat-form-field"),t._UZ(8,"input",5),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"mat-card-actions"),t.TgZ(10,"button",6),t.NdJ("click",function(){return t.CHM(l),t.oxw().login()}),t._uU(11,"Login"),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(4),t.Q6J("formGroup",i.loginForm),t.xp6(6),t.Q6J("disabled",i.loginForm.invalid||i.isLoading)}}function Pc(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",7),t.TgZ(1,"div",8),t.TgZ(2,"button",9),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).register()}),t._uU(3,"REQUEST ACCESS/LOGIN HELP"),t.qZA(),t.qZA(),t.qZA()}}function Th(g,A){if(1&g&&(t.TgZ(0,"div",7),t.YNc(1,Pc,4,0,"div",2),t._UZ(2,"div"),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.emailFormUserRegActive)}}var Ah=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt){(0,c.Z)(this,A),this.authService=l,this.configService=i,this.router=C,this.loadingService=w,this.mainNotificationService=V,this.activatedRoute=Ze,this.dialog=Ot,this.document=Bt,this.isLoaded=!1,this.isLoading=!0,this.loginForm=new o.cw({username:new o.NI("",o.kI.required),password:new o.NI("",o.kI.required)}),this.subscriptions=[],this.newuserinfo={},this.emailFormUserRegConf=void 0,this.emailFormUserRegActive=!1}return(0,e.Z)(A,[{key:"onKeyup",value:function(i){i.code&&"enter"===i.code.toLowerCase()&&this.login()}},{key:"ngOnInit",value:function(){var C,w,i=this;this.loadingService.setLoading(!0),this.loadedComponents=this.configService.configData.loadedComponents||null,void 0!==this.configService.configData.userRegistration&&(this.emailFormUserRegConf=null===(C=this.configService.configData.userRegistration.configurations)||void 0===C?void 0:C.emailForm,void 0!==this.emailFormUserRegConf&&(this.emailFormUserRegActive=null===(w=this.emailFormUserRegConf)||void 0===w?void 0:w.active));var V=this.authService.getAuth().subscribe(function(Ze){if(i.loadingService.setLoading(!1),Ze){var Ot=i.activatedRoute.snapshot.queryParamMap.get("path")||"/browse-substance";i.router.navigate([Ot])}else i.isLoaded=!0,i.isLoading=!1},function(Ze){i.loadingService.setLoading(!1),i.isLoaded=!0,i.isLoading=!1});this.subscriptions.push(V)}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"login",value:function(){var i=this;if(this.loginForm.valid){this.loadingService.setLoading(!0),this.isLoading=!0;var V=this.authService.login(this.loginForm.controls.username.value,this.loginForm.controls.password.value).subscribe(function(Ze){if(V.unsubscribe(),i.loadingService.setLoading(!1),Ze){var Ot=i.activatedRoute.snapshot.queryParamMap.get("path")||"/browse-substance";i.router.navigate([Ot])}else i.isLoading=!1},function(Ze){V.unsubscribe(),i.mainNotificationService.setNotification({message:"There was an error logging you in. Please check your credentials and try again.",type:Rt.k.error}),i.loadingService.setLoading(!1),i.isLoaded=!0,i.isLoading=!1})}}},{key:"register",value:function(){var i=this,C=new G.vA;C.disableClose=!0,C.autoFocus=!0;var w=this.dialog.open(Sh,C),V=this.emailFormUserRegConf;V&&V.userAdminRecipientEmails&&V.instanceApplicationName&&V.instanceApplicationSubjectTag&&V.registrationAccessEmailSubjectTemplate&&V.registrationAccessEmailBodyTemplate?w.afterClosed().subscribe(function(Ot){if(Ot){i.newuserinfo=Ot;var Bt=V.userAdminRecipientEmails.join(","),cn=(0,hn.sprintf)(V.registrationAccessEmailBodyTemplate,V.instanceApplicationName,Ot.username,Ot.email);cn=cn.replace(/\n/g,"%0D%0A");var Bn=(0,hn.sprintf)(V.registrationAccessEmailSubjectTemplate,V.instanceApplicationSubjectTag);i.document.location="mailto:"+Bt+"?subject="+Bn+"&body="+cn,console.log("Generating mailto email ...")}else console.log("Request registration form closed without data submission.")}):alert("ERROR: the 'emailForm' registration configuration is missing values.")}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(h.e),t.Y36(b.E),t.Y36(_.F0),t.Y36(Jn.b),t.Y36(rn.a),t.Y36(_.gz),t.Y36(G.uw),t.Y36(ve.K0))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-login"]],hostBindings:function(l,i){1&l&&t.NdJ("keyup",function(w){return i.onKeyup(w)})},decls:4,vars:2,consts:[[1,"login-container"],[4,"ngIf"],["class","button-div",4,"ngIf"],[1,"login-form",3,"formGroup"],["matInput","","placeholder","Username","formControlName","username","autofocus",""],["type","password","matInput","","placeholder","Password","formControlName","password"],["color","primary","mat-flat-button","",3,"disabled","click"],[1,"button-div"],[1,"reg-link"],[3,"click"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.YNc(1,kf,12,2,"mat-card",1),t._UZ(2,"br"),t.YNc(3,Th,3,1,"div",2),t.qZA()),2&l&&(t.xp6(1),t.Q6J("ngIf",i.isLoaded),t.xp6(2),t.Q6J("ngIf",i.loadedComponents&&i.loadedComponents.userRegistration))},directives:[ve.O5,xi.a8,xi.n5,xi.dn,o._Y,o.JL,o.sg,It.KE,$e.Nt,o.Fj,o.JJ,o.u,xi.hq,y.lW],styles:[".login-container[_ngcontent-%COMP%]{width:100%;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:86px 20px 20px}.mat-card[_ngcontent-%COMP%]{max-width:400px;width:100%}.login-form[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;padding-top:20px}.mat-card-actions[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.reg-link[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{padding:10px 15px;border:1px solid var(--primary-color);background-color:var(--primary-color);color:var(--regular-white-color);border-radius:5px}.button-div[_ngcontent-%COMP%]{margin:auto;text-align:center}"]}),g}(),Er=n(93979),vo=n(49143),Dc=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.isHidden=!1,this.canAddItem=!1,this.addItemEmitter=new t.vpe,this.dynamicComponentName=l}return(0,e.Z)(A,[{key:"addItem",value:function(){this.addItemEmitter.emit()}}]),A}();return g.\u0275fac=function(l){t.$Z()},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac}),g}(),dd=n(49241);function op(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",11),t.NdJ("click",function(){t.CHM(l);var w=t.oxw();return w.expand=!w.expand}),t._uU(1),t.qZA()}if(2&g){var i=t.oxw();t.xp6(1),t.Oqu(i.expand?"collapse":"expand")}}function Ph(g,A){if(1&g&&(t.TgZ(0,"div",12),t._UZ(1,"ngx-json-viewer",13),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("json",l.json)("expanded",l.expand)}}function Dh(g,A){if(1&g&&(t.TgZ(0,"div",14),t.TgZ(1,"textarea",15),t._uU(2),t.ALo(3,"json"),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.Oqu(t.lcZ(3,1,l.json))}}var bu=function(){var g=function(){function A(l,i,C){(0,c.Z)(this,A),this.substanceFormService=l,this.sanitizer=i,this.data=C,this.expand=!0,this.raw=!1}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.json=this.substanceFormService.cleanSubstance();var i=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.json)));this.downloadJsonHref=i}},{key:"dismissDialog",value:function(){this.dialogRef.close()}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(K.B),t.Y36(S.H7),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-json-dialog"]],decls:19,vars:6,consts:[["mat-dialog-title",""],[1,"flex-row","actions"],["mat-flat-button","","color","primary",3,"click"],["mat-flat-button","",3,"click",4,"ngIf"],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"href","download"],["mat-dialog-content",""],["class","formatted",4,"ngIf"],["class","raw",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose",""],["mat-flat-button","",3,"click"],[1,"formatted"],[3,"json","expanded"],[1,"raw"],[1,"raw-text"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"h1"),t._uU(2,"JSON Object structure"),t.qZA(),t.TgZ(3,"div",1),t.TgZ(4,"button",2),t.NdJ("click",function(){return i.raw=!i.raw}),t._uU(5),t.qZA(),t._uU(6,"\xa0 "),t.YNc(7,op,2,1,"button",3),t._UZ(8,"span",4),t.TgZ(9,"a",5),t.TgZ(10,"span"),t._uU(11,"Export JSON"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(12,"div",6),t.YNc(13,Ph,2,2,"div",7),t.YNc(14,Dh,4,3,"div",8),t.qZA(),t.TgZ(15,"div",9),t.TgZ(16,"button",10),t._uU(17,"Close"),t.qZA(),t._UZ(18,"span",4),t.qZA()),2&l&&(t.xp6(5),t.Oqu(i.raw?"Show Object":"Show Raw"),t.xp6(2),t.Q6J("ngIf",!i.raw),t.xp6(2),t.MGl("download","",i.json.uuid?i.json.uuid.toString():i.json.substanceClass,".json"),t.Q6J("href",i.downloadJsonHref,t.LSH),t.xp6(4),t.Q6J("ngIf",!i.raw),t.xp6(1),t.Q6J("ngIf",i.raw))},directives:[G.uh,y.lW,ve.O5,y.zs,G.xY,dd.Y,G.H8,G.ZT],pipes:[ve.Ts],styles:[".raw[_ngcontent-%COMP%]{width:100%;min-height:200px}.formatted[_ngcontent-%COMP%]{width:100%}.raw-text[_ngcontent-%COMP%]{min-height:400px}.actions[_ngcontent-%COMP%]{padding-bottom:10px}"]}),g}(),dr=n(16639);function sp(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",4),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).dismissDialog("browse")}),t._uU(1,"Go to Browse"),t.qZA()}}function lp(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",4),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).dismissDialog("view")}),t._uU(1,"View Substance"),t.qZA()}}function If(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",3),t.TgZ(1,"button",4),t.NdJ("click",function(){return t.CHM(l),t.oxw().dismissDialog("continue")}),t._uU(2,"Continue Editing"),t.qZA(),t.YNc(3,sp,2,0,"button",5),t.YNc(4,lp,2,0,"button",5),t.qZA()}if(2&g){var i=t.oxw();t.xp6(3),t.Q6J("ngIf","true"===i.isCoreSubstance),t.xp6(1),t.Q6J("ngIf","true"===i.isCoreSubstance)}}function iu(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",4),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).dismissDialog("browse")}),t._uU(1,"Go to Browse"),t.qZA()}}function dl(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",4),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).dismissDialog("viewInPfda")}),t._uU(1,"View Substance"),t.qZA()}}function up(g,A){if(1&g&&(t.TgZ(0,"div",3),t._UZ(1,"span",6),t.YNc(2,iu,2,0,"button",5),t.YNc(3,dl,2,0,"button",5),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.Q6J("ngIf","true"===l.isCoreSubstance),t.xp6(1),t.Q6J("ngIf","true"===l.isCoreSubstance)}}var Gu=function(){var g=function(){function A(l,i){switch((0,c.Z)(this,A),this.dialogRef=l,this.data=i,this.dialogMessage="Update was performed.",this.fileUrl=null,this.isCoreSubstance="true",i.type){case"submit":this.dialogTitle="Submission Success",this.dialogMessage="Substance was submitted successfully";break;case"approve":this.dialogTitle="Submission Approved",this.dialogMessage="Substance was approved successfully"}i.fileUrl&&(this.fileUrl=i.fileUrl,this.dialogTitle="Substance Saved",this.dialogMessage="The substance was saved successfully as a file in your pFDA My Home area.")}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.data&&this.data.isCoreSubstance&&(this.isCoreSubstance=this.data.isCoreSubstance)}},{key:"dismissDialog",value:function(i){this.dialogRef.close(i)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(G.so),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-submit-success-dialog"]],decls:6,vars:4,consts:[["mat-dialog-title",""],["mat-dialog-content",""],["class","flex-row dialog-actions","mat-dialog-actions","",4,"ngIf"],["mat-dialog-actions","",1,"flex-row","dialog-actions"],["mat-flat-button","","color","primary",3,"click"],["mat-flat-button","","color","primary",3,"click",4,"ngIf"],[1,"middle-fill"]],template:function(l,i){1&l&&(t.TgZ(0,"h1",0),t._uU(1),t.qZA(),t.TgZ(2,"div",1),t._uU(3),t.qZA(),t.YNc(4,If,5,2,"div",2),t.YNc(5,up,4,2,"div",2)),2&l&&(t.xp6(1),t.hij(" ",i.dialogTitle,"\n"),t.xp6(2),t.hij(" ",i.dialogMessage,"\n"),t.xp6(1),t.Q6J("ngIf",!i.fileUrl),t.xp6(1),t.Q6J("ngIf",i.fileUrl))},directives:[G.uh,G.xY,ve.O5,G.H8,y.lW],styles:[".dialog-actions[_ngcontent-%COMP%]{margin-top:12px}"]}),g}();function Lf(g,A){1&g&&t._UZ(0,"mat-progress-bar",10)}function Ff(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"button",13),t.NdJ("click",function(){var V=t.CHM(l).$implicit;return t.oxw(2).mergeTheRecord(V.refuuid)}),t._uU(2),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(2),t.AsE(" [",i.$$bdnum,"]",i.refPname," ")}}function js(g,A){if(1&g&&(t.TgZ(0,"div",11),t.YNc(1,Ff,3,2,"div",12),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngForOf",l.subconcepts)}}function Cu(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",11),t.TgZ(1,"button",13),t.NdJ("click",function(){return t.CHM(l),t.oxw().mergeConcept()}),t._uU(2," Confirm Deprecate old record"),t.qZA(),t.qZA()}}var au=function(){var g=function(){function A(l,i,C,w){(0,c.Z)(this,A),this.substanceFormService=l,this.substanceService=i,this.sanitizer=C,this.data=w,this.subconcepts=[],this.text="searching for subconcepts...",this.addmergebutton=!1,this.showButtons=!0,this.showDepricate=!1,this.merge=!1}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.getSubconcepts()}},{key:"dismissDialog",value:function(){this.dialogRef.close()}},{key:"getSubconcepts",value:function(){var i=this;this.loading=!0,this.substanceService.getSubstanceDetails(this.data.uuid).pipe((0,J.q)(1)).subscribe(function(C){i.copy=C,i.subconcepts=Li.chain(C.relationships).filter(function(w){return"SUB_CONCEPT->SUBSTANCE"===w.type}).map(function(w){return w.relatedSubstance}).map(function(w){return i.substanceService.getBDNUM(w).subscribe(function(V){w.$$bdnum=V}),w}).value(),i.loading=!1,i.text=i.subconcepts&&i.subconcepts.length>0?"Select a Concept to Merge":"No sub-concepts were found for this record"}),this.loading=!0}},{key:"mergeTheRecord",value:function(i){var C=this;function w(V){return Li.chain(V.codes).filter(function(Ze){return"BDNUM"===Ze.codeSystem}).filter(function(Ze){return"PRIMARY"===Ze.type}).map(function(Ze){return Ze.code}).value()[0]}this.loading=!0,this.substanceService.getSubstanceDetails(i).subscribe(function(V){C.loading=!1,C.showButtons=!1,C.concept=V;var Ze=C.scrub(V),Ot=C.copy,Bt=w(V),cn=w(Ot);function Fn($n,$i){$i.map(function(la){return $n.push(la)})}C.mapName=Bt+" MAPS TO "+cn+" "+Ot._name,C.loading=!1,C.text="merging names, codes, notes, relationships and references from:"+Bt+" with this record.";var Bn={uuid:C.guid(),docType:"BDNUM",citation:"Imported during merging with record:["+Bt+"].",id:Bt,publicDomain:!1,tags:["RECORD_MERGE"],access:["protected"]},Kn=Li.chain(Ot.relationships).filter(function($n){return $n.relatedSubstance.refuuid===i}).value();Kn.length>0&&(Kn[0].relatedSubstance.refPname=C.mapName),Ze.relationships=Li.chain(Ze.relationships).filter(function($n){return"SUBSTANCE->SUB_CONCEPT"!==$n.type}).value(),Ze.references.push(Bn);for(var fi=0;fiSUB_CONCEPT"===V.type}).value(),C.deprecated=!0,C.access||(C.access=[]),C.access.push("protected"),C.changeReason="Migrated data into:"+this.oldBdnum,this.loading=!1,this.text="Deprecating...",this.substanceService.saveSubstance(C).subscribe(function(V){i.loading=!1,i.text="Old record deprecated, please save this record to complete the merge.",i.subconcepts=void 0,i.addmergebutton=!1},function(V){i.loading=!1,i.text="There was a problem deprecating the old record. Refresh the page to undo the changes to the parent record."})}},{key:"scrub",value:function(i,C){function w(){function Zo(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return Zo()+Zo()+"-"+Zo()+"-"+Zo()+"-"+Zo()+"-"+Zo()+Zo()+Zo()}for(var V=JSON.parse(JSON.stringify(i)),Ze=dr.json.search(V,"//*[uuid]"),Ot={},Bt=0;BtSUB_ALTERNATE"===i.type)return i}).map(function(i){return i.relatedSubstance}),this.text=this.currentAlts.length>0?"Select a substance to switch":"No alternate definitions were found for this record"}},{key:"tempPrimeChange",value:function(i){var C=this;confirm("This process involves multiple updates to both records and may take several minutes.\nIf the switch fails at any stage, follow the instructions that appear to restore both records. \n\n Click 'OK' to proceed.")?(this.loadingService.setLoading(!0),this.loading=!0,this.text="Starting step 1",this.showButtons=!1,console.log("Temporarily changing primary type"),this.substanceService.getSubstanceDetails(this.sub.uuid).subscribe(function(w){if(C.oldPrime=Li.cloneDeep(w),C.fieldGetter[C.oldPrime.substanceClass]){C.fieldGetter[C.sub.substanceClass].forEach(function(Ze){C.oldPrime[Ze]&&delete C.oldPrime[Ze]}),console.log("setting primary to temporary substance type");var V={uuid:C.uuidNew,docType:"FDA_SRS",citation:"Generated to switch definition type",publicDomain:!0,tags:["RECORD_MERGE","PUBLIC DOMAIN RELEASE"],access:[]};"structurallyDiverse"!==C.oldPrime.substanceClass?(C.oldPrime.substanceClass="structurallyDiverse",C.oldPrime.structurallyDiverse={uuid:C.utilsService.newUUID(),created:1567806115158,createdBy:"definitionSwitcher",lastEdited:1567806115158,lastEditedBy:"definitionSwitcher",sourceMaterialClass:"Temporary class for definition switch",sourceMaterialType:"Temporary class for definition switch",part:["WHOLE"],references:[C.uuidNew]}):(C.oldPrime.substanceClass="chemical",C.oldPrime.structure={opticalActivity:"none",access:[],molfile:"\n JSDraw209061916362D\n\n 6 6 0 0 0 0 999 V2000\n 28.8600 -9.2560 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 28.8600 -6.1360 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 1 2 1 0 0 0 0\n 2 3 1 0 0 0 0\n 3 4 1 0 0 0 0\n 1 5 1 0 0 0 0\n 5 6 1 0 0 0 0\n 4 6 1 0 0 0 0\nM END",deprecated:!1,digest:"4b4cb19b839f6eb23b836addbaa87729a9632a35",smiles:"[He]1[He][He][He][He][He]1",formula:"He6",stereoCenters:0,definedStereo:0,ezCenters:0,charge:0,mwt:24.015612,count:1,hash:"3ZYHCH786T4L",stereochemistry:"ACHIRAL",id:C.newstructureid,references:[C.uuidNew]}),C.oldPrime.references.push(V),C.test1=dr.json.search(C.oldPrime,"//*[references]"),C.substanceService.getSubstanceDetails(i).subscribe(function(Ze){C.test2=dr.json.search(Ze,"//*[references]"),C.oldAlt=Li.cloneDeep(Ze),C.fieldGetter[C.oldAlt.substanceClass]?C.updateRecord(C.oldPrime,C.oldAlt.substanceClass===C.sub.substanceClass?function(){C.AltNewType(C.oldAlt)}:function(){C.AltNewDef(C.oldAlt)},1):C.text="The selected alternative is incompatible with the definition switch function"})}else C.text="The selected alternative is incompatible with the definition switch function"})):this.showButtons=!0}},{key:"AltNewType",value:function(i){var C=this;this.didStep5=!0,this.text="Step 1 complete. Running step 2a...",this.substanceService.getSubstanceDetails(this.oldAlt.uuid).subscribe(function(w){i=Li.cloneDeep(w);var V=Li.cloneDeep(w);C.fieldGetter[V.substanceClass].forEach(function(Ot){i[Ot]&&delete i[Ot]}),"structurallyDiverse"===V.substanceClass?(console.log("deleting "+V.substanceClass+" adding temporary chemical"),V.substanceClass="chemical",V.structure={opticalActivity:"none",access:[],molfile:"\n JSDraw209061916362D\n\n 6 6 0 0 0 0 999 V2000\n 28.8600 -9.2560 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 30.2110 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 28.8600 -6.1360 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 27.5090 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\n 1 2 1 0 0 0 0\n 2 3 1 0 0 0 0\n 3 4 1 0 0 0 0\n 1 5 1 0 0 0 0\n 5 6 1 0 0 0 0\n 4 6 1 0 0 0 0\nM END",id:C.structureid,references:[C.structureuuid]}):(console.log("deleting "+V.substanceClass+" adding temporary structurallyDiverse"),V.substanceClass="structurallyDiverse",V.structurallyDiverse={uuid:C.utilsService.newUUID(),created:1567806115158,createdBy:"definitionSwitcher",lastEdited:1567806115158,lastEditedBy:"definitionSwitcher",deprecated:!1,sourceMaterialClass:"Temporary class for definition switch",sourceMaterialType:"Temporary class for definition switch",part:["WHOLE"],references:[C.structureuuid]}),V.references.push({uuid:C.structureuuid,docType:"FDA_SRS",citation:"Generated to switch definition type",publicDomain:!0,tags:["RECORD_MERGE","PUBLIC DOMAIN RELEASE"],access:[]}),C.updateRecord(V,function(){C.AltNewDef(C.oldAlt)},"2b")})}},{key:"AltNewDef",value:function(i){var C=this;this.text=!0===this.didStep5?"Step 2a complete. Running step 2b...":"Step 1 complete. Running step 2...",this.substanceService.getSubstanceDetails(this.oldAlt.uuid).subscribe(function(w){i=Li.cloneDeep(w),C.fieldGetter[i.substanceClass].forEach(function($n){i[$n]&&delete i[$n]}),C.fieldGetter[C.sub.substanceClass].forEach(function($n){C.sub[$n]&&(i[$n]=C.sub[$n])}),i.substanceClass=C.sub.substanceClass;var V=dr.json.search(i,"//*[references]");V.forEach(function($n){});for(var Ze=V.filter(function($n){return!!C.isObject($n)}),Ot=[],Bt=0;BtThere was a problem changing the primary definition. No changes were made to either record":2===i&&!1===this.didStep5||"2b"===i?'

      There was a problem changing the substance definition.


      To Restore the records:
      ':'

      There was a problem updating the new definition.


      To Restore the records:
      • Go to the earliest alternative details history and restore version '+this.altversion+'
        If that version is not available, go to the current version substance history card and select a previous version to restore
      • Go to the earliest primary version and restore version '+this.primeVersion+'
        If that version is not available, go to the
        current version and select a previous version to restore '}},{key:"getJson",value:function(){return this.substanceFormService.getJson()}},{key:"_typeof2",value:function(i){return this._typeof2="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(w){return typeof w}:function(w){return w&&"function"==typeof Symbol&&w.constructor===Symbol&&w!==Symbol.prototype?"symbol":typeof w},this._typeof2(i)}},{key:"_typeof",value:function(i){this._typeof="function"==typeof Symbol&&"symbol"===this._typeof2(Symbol.iterator)?function(w){return this._typeof2(w)}:function(w){return w&&"function"==typeof Symbol&&w.constructor===Symbol&&w!==Symbol.prototype?"symbol":this._typeof2(w)}}},{key:"isObject",value:function(i){return!!i&&i.constructor===Object}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(K.B),t.Y36(Yi.d),t.Y36(S.H7),t.Y36(Jn.b),t.Y36(ce.FW),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-definition-switch-dialog"]],decls:15,vars:5,consts:[[1,"dialog"],["mat-dialog-title",""],["mat-dialog-content","",1,"dialog-content"],[1,"message",3,"innerHTML"],[1,"dialog-body"],["class","code",4,"ngIf"],["class","substances-container",4,"ngIf"],[1,"spinner-container"],["class","top-bar","color","primary","mode","indeterminate",4,"ngIf"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose","",3,"disabled"],[1,"middle-fill"],[1,"code"],[1,"substances-container"],["class","button-content",4,"ngFor","ngForOf"],[1,"button-content"],["mat-button","",1,"mat-flat-button",3,"click"],[1,"text-center","thumb-col"],["appSubstanceImage","",1,"struc-thumb","img-responsive","subref",3,"entityId"],[1,"label"],["target","_blank",3,"routerLink"],["mat","","svgIcon","open_in_new",1,"new-icon"],["color","primary","mode","indeterminate",1,"top-bar"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"h1"),t._uU(3,"Switch Alternative and Primary Definitions"),t.qZA(),t.qZA(),t.TgZ(4,"div",2),t._UZ(5,"div",3),t.TgZ(6,"div",4),t.YNc(7,Nf,2,1,"div",5),t.YNc(8,dp,2,1,"div",6),t.qZA(),t.TgZ(9,"div",7),t.YNc(10,Js,1,0,"mat-progress-bar",8),t.qZA(),t.qZA(),t.TgZ(11,"div",9),t.TgZ(12,"button",10),t._uU(13,"Close"),t.qZA(),t._UZ(14,"span",11),t.qZA(),t.qZA()),2&l&&(t.xp6(5),t.Q6J("innerHTML",i.text,t.oJD),t.xp6(2),t.Q6J("ngIf",""!==i.error),t.xp6(1),t.Q6J("ngIf",i.currentAlts&&i.currentAlts.length>0&&i.showButtons),t.xp6(2),t.Q6J("ngIf",!0===i.loading),t.xp6(2),t.Q6J("disabled",!0===i.loading))},directives:[G.uh,G.xY,ve.O5,ve.sg,y.lW,Ns.m,_.yS,Y.Hw,Yn.pW,G.H8,G.ZT],styles:[".thumb-col[_ngcontent-%COMP%]{height:175px;width:175px;margin:auto}.dialog-content[_ngcontent-%COMP%]{padding-top:20px;min-height:250px}.dialog-body[_ngcontent-%COMP%]{min-height:150px}.spinner-container[_ngcontent-%COMP%]{height:20px;width:100%;margin-top:auto;-ms-flex-line-pack:center;align-content:center}.substances-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:distribute;justify-content:space-around;margin-bottom:auto}.substance-button[_ngcontent-%COMP%]{margin:10px 5px 10px 10px;padding:0}.img-text[_ngcontent-%COMP%]{max-width:200px}.button-content[_ngcontent-%COMP%]{background-color:var(--regular-white-color);padding:5px;width:210px;display:inline-block;float:none;text-align:center}.label[_ngcontent-%COMP%]{width:100%}.new-icon[_ngcontent-%COMP%]{height:18px;width:18px}"]}),g}(),Mu=n(79356),pp=["dynamicComponent"],ag=["expansionPanel"];function Ku(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",24),t.NdJ("click",function(){return t.CHM(l),t.oxw().toggleValidation()}),t._uU(1),t._UZ(2,"mat-icon",25),t.qZA()}if(2&g){var i=t.oxw();t.Q6J("disabled",i.isLoading),t.xp6(1),t.hij(" ",i.showSubmissionMessages?"Hide":"Show"," messages "),t.xp6(1),t.Q6J("svgIcon",i.showSubmissionMessages?"chevron_up":"chevron_down")}}function fp(g,A){if(1&g&&(t.ynx(0),t.TgZ(1,"mat-option",41),t._uU(2," Predict N-Glycosylation Sites "),t.qZA(),t.TgZ(3,"mat-option",42),t._uU(4," Predict disulfide links by monoclonal antibody type "),t.qZA(),t.TgZ(5,"mat-option",43),t._uU(6," Register a Fragment "),t.qZA(),t.BQk()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("disabled","protein"!==l.substanceClass),t.xp6(2),t.Q6J("disabled","protein"!=l.substanceClass),t.xp6(2),t.Q6J("disabled","protein"!=l.substanceClass&&"nucleicAcid"!=l.substanceClass)}}function Rf(g,A){1&g&&(t.TgZ(0,"div",44),t._uU(1,"Saved Drafts"),t.qZA(),t.TgZ(2,"div",45),t.TgZ(3,"div",46),t.TgZ(4,"div",47),t._UZ(5,"mat-icon",48),t.qZA(),t.TgZ(6,"div",47),t.TgZ(7,"a"),t._uU(8,"d706be08-4015-4fa2-80e6-567cf7e2e23f"),t.qZA(),t.qZA(),t.TgZ(9,"div",47),t._uU(10,"April 1, 2022 08:05"),t.qZA(),t.TgZ(11,"div",47),t.TgZ(12,"button",49),t._uU(13,"Load Draft"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"div",46),t.TgZ(15,"div",47),t._UZ(16,"mat-icon",48),t.qZA(),t.TgZ(17,"div",47),t.TgZ(18,"a"),t._uU(19,"d706be08-4015-4fa2-80e6-567cf7e2e23f"),t.qZA(),t.qZA(),t.TgZ(20,"div",47),t._uU(21,"April 1, 2022 08:00"),t.qZA(),t.TgZ(22,"div",47),t.TgZ(23,"button",49),t._uU(24,"Load Draft"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(25,"div",46),t.TgZ(26,"div",47),t._UZ(27,"mat-icon",48),t.qZA(),t.TgZ(28,"div",47),t._uU(29,"register = protein"),t.qZA(),t.TgZ(30,"div",47),t._uU(31,"April 1, 2022 08:00"),t.qZA(),t.TgZ(32,"div",47),t.TgZ(33,"button",49),t._uU(34,"Load Draft"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(35,"div",50),t._UZ(36,"span",13),t.TgZ(37,"button",51),t._uU(38,"Close"),t.qZA(),t.qZA())}function wh(g,A){if(1&g&&(t.TgZ(0,"mat-option",55),t._uU(1),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.Q6J("value",l)("disabled",l===i.substanceClass),t.xp6(1),t.hij(" ",l," ")}}function mp(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",52),t.TgZ(1,"mat-form-field"),t.TgZ(2,"mat-label"),t._uU(3,"New Class"),t.qZA(),t.TgZ(4,"mat-select",53),t.NdJ("selectionChange",function(w){return t.CHM(l),t.oxw(2).changeClass(w)})("openedChange",function(w){return t.CHM(l),t.oxw(2).openedChange(w)}),t.YNc(5,wh,2,3,"mat-option",54),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(5),t.Q6J("ngForOf",i.classes)}}function Oh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div",27),t.TgZ(2,"mat-form-field"),t.TgZ(3,"mat-label"),t._uU(4,"Advanced Features"),t.qZA(),t.TgZ(5,"mat-select",28),t.NdJ("openedChange",function(w){return t.CHM(l),t.oxw().openedChange(w)})("selectionChange",function(w){return t.CHM(l),t.oxw().useFeature(w)}),t.ynx(6),t.TgZ(7,"mat-option",29),t._uU(8," Change Substance Class "),t.qZA(),t.TgZ(9,"mat-option",30),t._uU(10," Change Status to approved "),t.qZA(),t.TgZ(11,"mat-option",31),t._uU(12," Change Status to pending "),t.qZA(),t.TgZ(13,"mat-option",32),t._uU(14," Set Definition to private "),t.qZA(),t.TgZ(15,"mat-option",33),t._uU(16," Set Definition to public "),t.qZA(),t.TgZ(17,"mat-option",34),t._uU(18," Un-approve record (Remove approval ID) "),t.qZA(),t.TgZ(19,"mat-option",35),t._uU(20," Change Approval ID "),t.qZA(),t.TgZ(21,"mat-option",36),t._uU(22," Set concept status to non-approved "),t.qZA(),t.TgZ(23,"mat-option",37),t._uU(24," Merge subconcept "),t.qZA(),t.TgZ(25,"mat-option",38),t._uU(26," Switch primary and alt definitions "),t.qZA(),t.BQk(),t.YNc(27,fp,7,3,"ng-container",18),t.qZA(),t.qZA(),t.qZA(),t.YNc(28,Rf,39,0,"ng-template",null,39,t.W1O),t.YNc(30,mp,6,1,"div",40),t.qZA()}if(2&g){var i=t.oxw();t.xp6(5),t.Q6J("ngModel",i.feature),t.xp6(2),t.Q6J("disabled",!i.id),t.xp6(2),t.Q6J("disabled","approved"===i.status),t.xp6(2),t.Q6J("disabled","pending"===i.status),t.xp6(8),t.Q6J("disabled",!i.id||"pending"===i.status||"concept"===i.substanceClass&&"non-approved record"===i.UNII),t.xp6(2),t.Q6J("disabled","concept"!=i.substanceClass),t.xp6(6),t.Q6J("ngIf",!0===i.isAdmin||!0===i.isUpdater),t.xp6(3),t.Q6J("ngIf","changeClass"===i.feature)}}function Eh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",56),t.NdJ("click",function(){return t.CHM(l),t.oxw().validate("approval")}),t._uU(1,"Approve"),t.qZA()}if(2&g){var i=t.oxw();t.Q6J("disabled",!i.canApprove||i.approving)}}function Zh(g,A){if(1&g&&(t.TgZ(0,"div",57),t._uU(1),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.hij(" ",l.submissionMessage," ")}}function kh(g,A){1&g&&(t.TgZ(0,"div",57),t._uU(1," Please correct or dismiss the following errors and submit again: "),t.qZA())}function Ih(g,A){if(1&g&&(t.TgZ(0,"span"),t._UZ(1,"br"),t.TgZ(2,"a",69),t._uU(3),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(4);t.xp6(2),t.Q6J("href",i.fixLink(l.href),t.LSH),t.xp6(1),t.Oqu(l.text)}}function Uf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",70),t.NdJ("click",function(){t.CHM(l);var C=t.oxw().index;return t.oxw(3).dismissValidationMessage(C)}),t._UZ(1,"mat-icon",71),t.qZA()}}function hp(g,A){if(1&g&&(t.TgZ(0,"div",62),t.TgZ(1,"span",63),t.TgZ(2,"div",64),t._uU(3),t.qZA(),t.TgZ(4,"div",65),t._uU(5),t.YNc(6,Ih,4,2,"span",66),t.qZA(),t.qZA(),t.TgZ(7,"span",67),t.YNc(8,Uf,2,0,"button",68),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.xp6(2),t.Q6J("ngClass","ERROR"==l.messageType?"error-message":"warning-message"),t.xp6(1),t.hij(" ",l.messageType,""),t.xp6(2),t.Oqu(l.message),t.xp6(1),t.Q6J("ngForOf",l.links),t.xp6(2),t.Q6J("ngIf","ERROR"!=l.messageType&&!i.approving)}}function pd(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,kh,2,0,"div",17),t.YNc(2,hp,9,5,"div",61),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!l.serverError&&!l.approving),t.xp6(1),t.Q6J("ngForOf",l.validationMessages)}}function Bf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",72),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).submit()}),t._uU(1),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",i.isLoading||!1===i.validationResult),t.xp6(1),t.hij("",i.validationMessages&&i.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function _p(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",73),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).showSubmissionMessages=!1}),t._uU(1," Cancel"),t.qZA()}}function Lh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",72),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).approve()}),t._uU(1," Confirm Approval"),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",i.isLoading||!i.canApprove)}}function Yf(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,pd,3,2,"span",18),t.TgZ(2,"div",58),t._UZ(3,"span",13),t.YNc(4,Bf,2,2,"button",59),t.YNc(5,_p,2,0,"button",60),t.YNc(6,Lh,2,1,"button",59),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.validationMessages.length>0),t.xp6(3),t.Q6J("ngIf",!l.approving),t.xp6(1),t.Q6J("ngIf",!l.approving),t.xp6(1),t.Q6J("ngIf",l.approving)}}function qf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"button",77),t.NdJ("click",function(w){return t.CHM(l),t.oxw().$implicit.addItem(),w.stopPropagation()}),t._uU(2),t._UZ(3,"mat-icon",78),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit;t.xp6(1),t.MGl("id","Add new ",i.menuLabel,""),t.MGl("matTooltip","Add new ",i.menuLabel,""),t.xp6(1),t.hij(" Add ",i.menuLabel," ")}}var Hf=function(A){return{hidden:A}};function xu(g,A){if(1&g&&(t.TgZ(0,"mat-expansion-panel",74,75),t.TgZ(2,"mat-expansion-panel-header"),t.TgZ(3,"mat-panel-title"),t.TgZ(4,"h2"),t._uU(5),t.qZA(),t._UZ(6,"div",13),t.YNc(7,qf,4,3,"div",18),t.qZA(),t.qZA(),t._UZ(8,"div",null,76),t.qZA()),2&g){var l=A.$implicit,i=t.oxw();t.Q6J("expanded",i.expandedComponents.indexOf(l.dynamicComponentName)>-1)("id",l.dynamicComponentName)("ngClass",t.VKq(5,Hf,l.isHidden)),t.xp6(5),t.Oqu(l.menuLabel),t.xp6(2),t.Q6J("ngIf",l.canAddItem)}}var gp=function(A){return{hide:A}},Vf=function(A,l){return{"submission-messages":!0,collapsed:A,expanded:l}},vp=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt,cn,Fn,Bn,Kn,fi,$n){var $i=this;(0,c.Z)(this,A),this.activatedRoute=l,this.substanceService=i,this.loadingService=C,this.mainNotificationService=w,this.router=V,this.dynamicComponentLoader=Ze,this.gaService=Ot,this.substanceFormService=Bt,this.overlayContainerService=cn,this.configService=Fn,this.dialog=Bn,this.authService=Kn,this.titleService=fi,this.utilsService=$n,this.isLoading=!0,this.formSections=[],this.expandedComponents=["substance-form-definition","substance-form-structure","substance-form-moieties","substance-form-references"],this.showSubmissionMessages=!1,this.validationResult=!1,this.subscriptions=[],this.draftCount=0,this.autoSaveWait=6e4,this.classes=["concept","protein","chemical","structurallyDiverse","polymer","nucleicAcid","mixture","specifiedSubstanceG1","specifiedSubstanceG2","specifiedSubstanceG3"],this.imported=!1,this.forceChange=!1,this.sameSubstance=!1,this.approvalType="lastEditedBy",this.substanceService.showImagePopup.subscribe(function(la){$i.hidePopup=la}),this.substanceService.imagePopupUnit.subscribe(function(la){$i.unit=la})}return(0,e.Z)(A,[{key:"showHidePopup",value:function(){this.hidePopup=!this.hidePopup,this.substanceService.showImagePopup.next(this.hidePopup)}},{key:"autoSave",value:function(){var i=this;setTimeout(function(){i.substanceFormService.autoSave()&&i.saveDraft(!0),i.autoSave()},this.autoSaveWait)}},{key:"openModal",value:function(i){var C=this,w=this.dialog.open(i,{height:"200px",width:"400px"});this.overlayContainer.style.zIndex="1002",w.afterClosed().subscribe(function(V){C.overlayContainer.style.zIndex=null})}},{key:"showDrafts",value:function(){var i=this,C=this.dialog.open(an,{maxHeight:"85%",width:"70%",data:{uuid:this.id}});this.overlayContainer.style.zIndex="1002",C.afterClosed().subscribe(function(w){if(i.overlayContainer.style.zIndex=null,w){i.loadingService.setLoading(!0);var V=w.substance;i.id&&V.uuid&&i.id===V.uuid?(i.substanceFormService.importSubstance(V,"update"),i.submissionMessage=null,i.validationMessages=[],i.showSubmissionMessages=!1,setTimeout(function(){i.loadingService.setLoading(!1),i.isLoading=!1,i.overlayContainer.style.zIndex=null},1e3)):w.uuid&&"register"!=w.uuid?i.router.navigateByUrl("/substances/"+w.uuid+"/edit?action=import&source=draft",{state:{record:w.substance}}):setTimeout(function(){i.overlayContainer.style.zIndex=null,i.router.onSameUrlNavigation="reload",i.loadingService.setLoading(!1),i.router.onSameUrlNavigation="reload",i.router.navigateByUrl("/substances/register/"+w.substance.substanceClass+"?action=import",{state:{record:w.substance}})},1e3)}var Ot=Object.keys(localStorage),Bt=Ot.length;for(i.draftCount=0,i.drafts=[];Bt--;)if(Ot[Bt].startsWith("gsrs-draft-")){var cn=JSON.parse(localStorage.getItem(Ot[Bt]));cn.key=Ot[Bt],(i.id&&cn.uuid===i.id||!i.id&&cn.type===i.activatedRoute.snapshot.params.type&&"register"===cn.uuid)&&i.draftCount++,i.drafts.push(cn)}})}},{key:"importDialog",value:function(){var i=this,C=this.dialog.open(vn,{width:"650px",autoFocus:!1});this.overlayContainer.style.zIndex="1002",C.afterClosed().pipe((0,J.q)(1)).subscribe(function(V){if(V){i.loadingService.setLoading(!0);var Ze=JSON.parse(V);i.id&&Ze.uuid&&i.id===Ze.uuid?(i.substanceFormService.importSubstance(Ze,"update"),i.submissionMessage=null,i.validationMessages=[],i.showSubmissionMessages=!1,setTimeout(function(){i.loadingService.setLoading(!1),i.isLoading=!1,i.overlayContainer.style.zIndex=null},1e3)):setTimeout(function(){i.overlayContainer.style.zIndex=null,i.router.onSameUrlNavigation="reload",i.loadingService.setLoading(!1),i.router.navigateByUrl("/substances/register?action=import",{state:{record:V}})},1e3)}})}},{key:"test",value:function(){this.router.navigated=!1,this.router.navigate([this.router.url])}},{key:"ngOnInit",value:function(){var i=this;this.loadingService.setLoading(!0),this.configService.configData&&this.configService.configData.approvalType&&(this.approvalType=this.configService.configData.approvalType),this.configService.configData&&this.configService.configData.autoSaveWait&&(this.autoSaveWait=this.configService.configData.autoSaveWait),this.isAdmin=this.authService.hasRoles("admin"),this.isUpdater=this.authService.hasAnyRoles("Updater","SuperUpdater"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.imported=!1;var C=this.activatedRoute.params.subscribe(function(Ze){var Ot=i.activatedRoute.snapshot.queryParams.action||null;if(Ze.id)if(Ot&&"import"===Ot&&window.history.state){var Bt=window.history.state;i.imported=!0,i.getDetailsFromImport(Bt.record)}else{var cn=Ze.id;if(cn!==i.id){i.id=cn,i.gaService.sendPageView("Substance Edit");var Fn=i.activatedRoute.snapshot.queryParamMap.get("switch")||null;Fn?i.getSubstanceDetails(Fn):i.getSubstanceDetails()}}else if(Ot&&"import"===Ot&&window.history.state){var Bn=window.history.state;i.imported=!0,i.getDetailsFromImport(Bn.record),i.gaService.sendPageView("Substance Register")}else i.copy=i.activatedRoute.snapshot.queryParams.copy||null,i.copy?(i.getPartialSubstanceDetails(i.copy,i.activatedRoute.snapshot.queryParams.copyType||null),i.gaService.sendPageView("Substance Register")):setTimeout(function(){i.gaService.sendPageView("Substance Register"),i.subClass=i.activatedRoute.snapshot.params.type||"chemical",i.substanceClass=i.subClass,i.titleService.setTitle("Register - "+i.subClass),i.substanceFormService.loadSubstance(i.subClass).pipe((0,J.q)(1)).subscribe(function(){i.setFormSections(Er.x[i.subClass]),i.loadingService.setLoading(!1),i.isLoading=!1})})});this.subscriptions.push(C);var w=this.router.events.subscribe(function(Ze){Ze instanceof _.OD&&i.substanceFormService.unloadSubstance()});this.subscriptions.push(w),this.approving=!1;var V=this.substanceFormService.definition.subscribe(function(Ze){i.definition=Ze,setTimeout(function(){i.canApprove=i.canBeApproved()})});this.subscriptions.push(V),this.authService.getAuth().pipe((0,J.q)(1)).subscribe(function(Ze){i.user=Ze.identifier,setTimeout(function(){i.canApprove=i.canBeApproved()})})}},{key:"getDrafts",value:function(){var i=Object.keys(localStorage),C=i.length;this.drafts=[];for(var w=0;C--;)if(i[C].startsWith("gsrs-draft-")){var V=JSON.parse(localStorage.getItem(i[C]));V.key=i[C],(this.id&&V.uuid===this.id||!this.id&&V.type===this.activatedRoute.snapshot.params.type&&"register"===V.uuid)&&w++,this.drafts.push(V)}this.draftCount=w}},{key:"ngAfterViewInit",value:function(){var i=this;this.getDrafts();var C=this.dynamicComponents.changes.subscribe(function(){var w=i.formSections.length,V=0;if(!i.forceChange){i.loadingService.setLoading(!0);var Ze=new Date;i.dynamicComponents.forEach(function(Ot,Bt){i.dynamicComponentLoader.getComponentFactory(i.formSections[Bt].dynamicComponentName).subscribe(function(cn){i.loadingService.setLoading(!0),i.formSections[Bt].dynamicComponentRef=Ot.createComponent(cn),i.formSections[Bt].matExpansionPanel=i.matExpansionPanels.find(function(Kn,fi){return Bt===fi}),i.formSections[Bt].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,J.q)(1)).subscribe(function(Kn){i.formSections[Bt].menuLabel=Kn});var Fn=i.formSections[Bt].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(Kn){i.formSections[Bt].isHidden=Kn});i.subscriptions.push(Fn),i.formSections[Bt].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,J.q)(1)).subscribe(function(Kn){if(i.formSections[Bt].canAddItem=Kn,Kn){var fi=i.formSections[Bt].addItemEmitter.subscribe(function(){i.formSections[Bt].matExpansionPanel.open(),i.formSections[Bt].dynamicComponentRef.instance.addItem()});i.formSections[Bt].dynamicComponentRef.instance.componentDestroyed.pipe((0,J.q)(1)).subscribe(function(){fi.unsubscribe()})}}),i.formSections[Bt].dynamicComponentRef.changeDetectorRef.detectChanges(),++V>=w?i.loadingService.setLoading(!1):(new Date).getTime()-Ze.getTime()>12e3&&confirm("There was a network error while fetching files, would you like to refresh?")&&window.location.reload(),setTimeout(function(){i.loadingService.setLoading(!1),i.UNII=i.substanceFormService.getUNII()},5)})})}C.unsubscribe(),setTimeout(function(){i.autoSave()},1e4)})}},{key:"openedChange",value:function(i){this.overlayContainer.style.zIndex=i?"1002":"1000"}},{key:"useFeature",value:function(i){this.feature=i.value,"glyco"===this.feature?this.glyco():"disulfide"===this.feature&&this.disulfide(),"concept"===this.feature&&this.concept(),"unapprove"===this.feature&&(confirm("Are you sure you'd like to remove the approvalID?")&&this.substanceFormService.unapproveRecord(),this.feature=void 0),"setPrivate"===this.feature&&(this.substanceFormService.setDefinitionPrivate(),this.feature=void 0),"setPublic"===this.feature&&(this.substanceFormService.setDefinitionPublic(),this.feature=void 0),"approved"===this.feature&&(this.substanceFormService.changeStatus("approved"),this.feature=void 0),"pending"===this.feature&&(this.substanceFormService.changeStatus("pending"),this.feature=void 0),"merge"===this.feature&&(this.mergeConcept(),this.feature=void 0),"switch"===this.feature&&(this.definitionSwitch(),this.feature=void 0),"changeApproval"===this.feature&&this.substanceFormService.changeApproval(),"fragment"===this.feature&&this.openFragmentDialog()}},{key:"openFragmentDialog",value:function(){var i=this.dialog.open(Mu._,{width:"70%",height:"70%"});this.overlayContainer.style.zIndex="50";var C=i.afterClosed().pipe((0,J.q)(1)).subscribe(function(w){});this.subscriptions.push(C)}},{key:"changeClass",value:function(i){this.router.navigate(["/substances",this.id,"edit"],{queryParams:{switch:i.value}}),this.feature=void 0}},{key:"changeStatus",value:function(i){this.substanceFormService.changeStatus(i),this.feature=void 0}},{key:"concept",value:function(){this.substanceFormService.conceptNonApproved(),this.feature=void 0}},{key:"glyco",value:function(){this.substanceFormService.predictSites(),this.feature=void 0}},{key:"disulfide",value:function(){this.substanceFormService.disulfideLinks(),this.feature=void 0}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"canBeApproved",value:function(){var i=this.activatedRoute.snapshot.queryParams.action||null;if(i&&"import"===i)return!1;if("createdBy"===this.approvalType){if(this.definition&&this.definition.createdBy&&this.user){var C=this.definition.createdBy;return!(!C||"approved"===this.definition.status||C===this.user)}return!1}if(this.definition&&this.definition.lastEditedBy&&this.user){var w=this.definition.lastEditedBy;return!(!w||"approved"===this.definition.status||w===this.user)}}},{key:"showJSON",value:function(){var i=this.dialog.open(bu,{width:"90%"});this.overlayContainer.style.zIndex="1002";var C=i.afterClosed().pipe((0,J.q)(1)).subscribe(function(w){});this.subscriptions.push(C)}},{key:"getSubstanceDetails",value:function(i){var C=this;this.substanceService.getSubstanceDetails(this.id).pipe((0,J.q)(1)).subscribe(function(w){if(w._name){var V=w._name;w.names.forEach(function(Ze){Ze.displayName&&Ze.stdName&&(V=Ze.stdName)}),V=V.replace(/<[^>]*>?/gm,""),C.titleService.setTitle("Edit - "+V)}w?(C.definitionType=w.definitionType,i&&(w=C.substanceFormService.switchType(w,i)),C.substanceClass=w.substanceClass,C.status=w.status,C.substanceFormService.loadSubstance(w.substanceClass,w).pipe((0,J.q)(1)).subscribe(function(){C.setFormSections(Er.x[w.substanceClass])})):C.handleSubstanceRetrivalError(),C.loadingService.setLoading(!1),C.isLoading=!1},function(w){C.gaService.sendException("getSubstanceDetails: error from API call"),C.loadingService.setLoading(!1),C.isLoading=!1,C.handleSubstanceRetrivalError()})}},{key:"jsonValid",value:function(i){try{JSON.parse(i)}catch(C){return!1}return!0}},{key:"getDetailsFromImport",value:function(i,C){var w=this;if(this.jsonValid(i)||(i=JSON.stringify(i)),i&&this.jsonValid(i)){var V=JSON.parse(i);this.definitionType=V.definitionType,this.substanceClass=V.substanceClass,this.status=V.status,this.substanceFormService.loadSubstance(V.substanceClass,V,"import").pipe((0,J.q)(1)).subscribe(function(){w.setFormSections(Er.x[V.substanceClass]),setTimeout(function(){w.forceChange=!0,w.dynamicComponents.forEach(function(Ze,Ot){w.dynamicComponentLoader.getComponentFactory(w.formSections[Ot].dynamicComponentName).subscribe(function(Bt){w.formSections[Ot].dynamicComponentRef=Ze.createComponent(Bt),w.formSections[Ot].matExpansionPanel=w.matExpansionPanels.find(function(Fn,Bn){return Ot===Bn}),w.formSections[Ot].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,J.q)(1)).subscribe(function(Fn){w.formSections[Ot].menuLabel=Fn});var cn=w.formSections[Ot].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(Fn){w.formSections[Ot].isHidden=Fn});w.subscriptions.push(cn),w.formSections[Ot].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,J.q)(1)).subscribe(function(Fn){if(w.formSections[Ot].canAddItem=Fn,Fn){var Bn=w.formSections[Ot].addItemEmitter.subscribe(function(){w.formSections[Ot].matExpansionPanel.open(),w.formSections[Ot].dynamicComponentRef.instance.addItem()});w.formSections[Ot].dynamicComponentRef.instance.componentDestroyed.pipe((0,J.q)(1)).subscribe(function(){Bn.unsubscribe()})}}),w.formSections[Ot].dynamicComponentRef.changeDetectorRef.detectChanges()})}),w.canApprove=!1})},function(Ze){w.loadingService.setLoading(!1)})}else this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1);this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"getPartialSubstanceDetails",value:function(i,C){var w=this;this.substanceService.getSubstanceDetails(i).pipe((0,J.q)(1)).subscribe(function(V){V?(w.substanceClass=V.substanceClass,w.status=V.status,delete V.uuid,V._name&&delete V._name,w.scrub(V,C),w.substanceFormService.loadSubstance(V.substanceClass,V).pipe((0,J.q)(1)).subscribe(function(){w.setFormSections(Er.x[V.substanceClass]),w.loadingService.setLoading(!1),w.isLoading=!1})):w.handleSubstanceRetrivalError()},function(V){w.gaService.sendException("getSubstanceDetails: error from API call"),w.loadingService.setLoading(!1),w.isLoading=!1,w.handleSubstanceRetrivalError()})}},{key:"setFormSections",value:function(){var i=this,C=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.formSections=[],C.forEach(function(w){var V=new Dc(w);i.formSections.push(V)})}},{key:"handleSubstanceRetrivalError",value:function(){var i=this;this.mainNotificationService.setNotification({message:"The substance you're trying to edit doesn't exist.",type:Rt.k.error,milisecondsToShow:4e3}),setTimeout(function(){i.router.navigate(["/substances/register"]),i.substanceFormService.loadSubstance(i.subClass).pipe((0,J.q)(1)).subscribe(function(){i.setFormSections(Er.x.chemical),i.loadingService.setLoading(!1),i.isLoading=!1})},5e3)}},{key:"validate",value:function(i){var C=this;this.approving=!(!i||"approval"!==i),this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.substanceFormService.validateSubstance().pipe((0,J.q)(1)).subscribe(function(w){C.submissionMessage=null,C.validationMessages=w.validationMessages.filter(function(V){return"ERROR"===V.messageType.toUpperCase()||"WARNING"===V.messageType.toUpperCase()}),C.validationResult=w.valid,C.showSubmissionMessages=!0,C.loadingService.setLoading(!1),C.isLoading=!1,0===C.validationMessages.length&&!0===w.valid&&(C.submissionMessage="Substance is Valid. Would you like to submit?"),i&&"approval"===i&&(C.submissionMessage="Are you sure you'd like to approve this substance?")},function(w){C.addServerError(w),C.loadingService.setLoading(!1),C.isLoading=!1})}},{key:"approve",value:function(){var i=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.substanceFormService.approveSubstance().pipe((0,J.q)(1)).subscribe(function(C){i.loadingService.setLoading(!1),i.isLoading=!1,i.validationMessages=null,i.openSuccessDialog({type:"approve"}),i.submissionMessage="Substance was approved successfully",i.showSubmissionMessages=!0,i.validationResult=!1},function(C){i.showSubmissionMessages=!0,i.loadingService.setLoading(!1),i.isLoading=!1,i.submissionMessage="Substance Could not be approved",i.addServerError(C.serverError),setTimeout(function(){i.showSubmissionMessages=!1,i.submissionMessage=null},1e4)})}},{key:"submit",value:function(){var i=this;this.isLoading=!0,this.approving=!1,this.loadingService.setLoading(!0),this.substanceFormService.saveSubstance().pipe((0,J.q)(1)).subscribe(function(C){i.loadingService.setLoading(!1),i.isLoading=!1,i.validationMessages=null,i.showSubmissionMessages=!1,i.submissionMessage="",i.id||(i.id=C.uuid),i.openSuccessDialog({type:"submit",fileUrl:C.fileUrl})},function(C){i.showSubmissionMessages=!0,i.loadingService.setLoading(!1),i.isLoading=!1,i.submissionMessage=null,C.validationMessages&&C.validationMessages.length?(i.validationResult=C.isSuccessfull,i.validationMessages=C.validationMessages.filter(function(w){return"ERROR"===w.messageType.toUpperCase()||"WARNING"===w.messageType.toUpperCase()}),i.showSubmissionMessages=!0):(i.submissionMessage="There was a problem with your submission",i.addServerError(C.serverError),setTimeout(function(){i.showSubmissionMessages=!1,i.submissionMessage=null},8e3))})}},{key:"dismissValidationMessage",value:function(i){this.validationMessages.splice(i,1),0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"addServerError",value:function(i){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var C={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};i&&i.error&&i.error.message?C.message="Server Error "+(i.status+": "||0)+i.error.message:i&&i.error&&"string"==typeof i.error?C.message="Server Error "+(i.status+": "||0)+i.error:i&&i.message&&(C.message="Server Error "+(i.status+": "||0)+i.message),this.validationMessages=[C],this.showSubmissionMessages=!0}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"dismissAllValidationMessages",value:function(){for(var i=this.validationMessages.length-1;i>=0;i--)"ERROR"!==this.validationMessages[i].messageType&&this.validationMessages.splice(i,1);0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"unloadNotification",value:function(i){this.substanceFormService.isSubstanceUpdated&&(i.returnValue=!0)}},{key:"scrub",value:function(i,C){function w(){function Wr(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return Wr()+Wr()+"-"+Wr()+"-"+Wr()+"-"+Wr()+"-"+Wr()+Wr()+Wr()}for(var V=i,Ze=dr.json.search(V,"//*[id]"),Ot={},Bt=0;Bt0&&(Ot=C.names[0].name),i){this.getDrafts(),this.drafts.filter(function(la){return la.auto});var Bn=null,Kn=null,fi=null;this.drafts.forEach(function(la){la.auto&&("gsrs-draft-auto1"===la.file&&(Bn=la),"gsrs-draft-auto2"===la.file&&(Kn=la),"gsrs-draft-auto3"===la.file&&(fi=la))});var $n="gsrs-draft-auto";Bn?Kn?fi?$n=Bn.date0),t.xp6(1),t.Q6J("ngIf",!0===i.isAdmin||!0===i.isUpdater),t.xp6(4),t.Q6J("ngIf",i.definition&&"concept"!==i.definition.substanceClass&&!i.definition.approvalID&&!i.imported&&"ALTERNATIVE"!==i.definitionType),t.xp6(1),t.Q6J("ngClass",t.WLB(15,Vf,!i.showSubmissionMessages,i.showSubmissionMessages)),t.xp6(1),t.Q6J("ngIf",i.submissionMessage),t.xp6(1),t.Q6J("ngIf",i.validationMessages),t.xp6(5),t.Q6J("ngForOf",i.formSections))},directives:[ve.mk,Ns.m,y.lW,ve.O5,Y.Hw,It.KE,It.hX,fa.gD,o.JJ,o.On,Ca.ey,G.xY,G.H8,G.ZT,ve.sg,Me.gM,Ui.pp,Ui.ib,Ui.yz,Ui.yK],styles:["#overlay[_ngcontent-%COMP%]{position:fixed;display:block;width:100%;height:100%;inset:0;background-color:var(--text-color);z-index:2;cursor:pointer}.hide[_ngcontent-%COMP%]{display:none!important}.center-screen[_ngcontent-%COMP%]{z-index:2;position:fixed;background-color:var(--regular-white-color);width:50%;height:50%;top:50%;left:50%;margin-right:-50%;-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.center-screen[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{transition-duration:4s;margin:0 auto;display:block}.center-screen[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover{-ms-transform:scale(1.7);transform:scale(1.7);-webkit-transform:scale(1.7);-moz-transform:scale(1.7);z-index:0}.image-popped-up[_ngcontent-%COMP%]{width:100%;height:100%;padding:10px}.close-out[_ngcontent-%COMP%]{padding:10px;float:right;font-weight:500;cursor:pointer}.top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001}.cdk-overlay-pane[_ngcontent-%COMP%]{z-index:1005}mat-select-panel[_ngcontent-%COMP%]{z-index:1005}.admin-functions[_ngcontent-%COMP%], .changeClass[_ngcontent-%COMP%]{margin:-10px 5px -15px 30px;color:var(--primary-color)}.admin-functions[_ngcontent-%COMP%] .mat-form-field-wrapper, .changeClass[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-bottom:20px!important} .mat-form-field-wrapper{padding-bottom:5px}.advanced-features[_ngcontent-%COMP%]{z-index:2000!important;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-left:10px} .cdk-overlay-pane{margin-top:20px!important}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:121px}.actions-container[_ngcontent-%COMP%]{max-width:1128px;width:100%;background-color:var(--regular-white-color);padding:10px;display:-ms-flexbox;display:flex}.mat-accordion[_ngcontent-%COMP%]{width:100%;max-width:1020px;box-sizing:border-box}.hidden[_ngcontent-%COMP%]{display:none!important}.validation-body[_ngcontent-%COMP%]{max-width:95%;display:-ms-flexbox;display:flex;max-width:960px;word-break:break-word}.validation-dismiss[_ngcontent-%COMP%]{width:5%}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px;height:40px;min-width:95px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.validate-button[_ngcontent-%COMP%]{margin-left:15px}.mat-expansion-panel-header-title[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.internal-link[_ngcontent-%COMP%]{color:var(--link-primary-color)}.import-button[_ngcontent-%COMP%]{margin-left:15px}.json-button[_ngcontent-%COMP%]{margin-left:30px}.draft-button[_ngcontent-%COMP%]{margin-left:15px}.chip[_ngcontent-%COMP%]{background-color:var(--regular-white-color);border-radius:50%;padding:3px 5px;margin-left:5px;color:var(--link-color);height:33px}"]}),g}(),Bo=n(66794),jf=n(44646),fd=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.substanceFormService=l}return(0,e.Z)(A,[{key:"canDeactivate",value:function(i){return!this.substanceFormService.isSubstanceUpdated||!!confirm("You have unsaved changes! If you leave, your changes will be lost.")}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.LFG(K.B))},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac,providedIn:"root"}),g}(),md=n(62128),Al=n(43188),Su=n(5818);function Jf(g,A){if(1&g&&(t.TgZ(0,"mat-option",10),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l),t.xp6(1),t.hij(" ",l," ")}}function hd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-form-field"),t.TgZ(1,"mat-select",6),t.NdJ("openedChange",function(w){return t.CHM(l),t.oxw().openedChange(w)}),t.YNc(2,Jf,2,2,"mat-option",7),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(1),t.Q6J("formControl",i.conditionControl),t.xp6(1),t.Q6J("ngForOf",i.conditionOptions)}}function _d(g,A){if(1&g&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l)("matTooltip",l),t.xp6(1),t.hij(" ",l," ")}}function gd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"mat-form-field"),t.TgZ(1,"mat-select",6),t.NdJ("openedChange",function(w){return t.CHM(l),t.oxw().openedChange(w)}),t.YNc(2,_d,2,3,"mat-option",11),t.qZA(),t._UZ(3,"span",12),t.TgZ(4,"mat-hint",13),t.TgZ(5,"a",14),t.NdJ("click",function(){return t.CHM(l),t.oxw().showAllFields()}),t._uU(6,"Show all fields"),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(1),t.Q6J("formControl",i.queryablePropertiesControl),t.xp6(1),t.Q6J("ngForOf",i.queryableOptionsCommon)}}function yp(g,A){if(1&g&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l)("matTooltip",l),t.xp6(1),t.hij(" ",l," ")}}function Qf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"input",17),t.NdJ("blur",function(){return t.CHM(l),t.oxw().queryablePropertiesAutocompleteBlurred()}),t.qZA(),t.TgZ(3,"a",18),t.NdJ("click",function(){return t.CHM(l),t.oxw().clearSelectedQueryableProperty()}),t._UZ(4,"mat-icon",19),t.qZA(),t.TgZ(5,"mat-hint",13),t.TgZ(6,"a",14),t.NdJ("click",function(){return t.CHM(l),t.oxw().showCommonFields()}),t._uU(7,"Show common fields"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(8,"mat-autocomplete",20,21),t.NdJ("optionSelected",function(V){return t.CHM(l),t.oxw().queryablePropertySelected(V.option.value)})("opened",function(){return t.CHM(l),t.oxw().increaseOverlayZindex()})("closed",function(){return t.CHM(l),t.oxw().queryablePropertiesAutocompleteClosed()}),t.YNc(10,yp,2,3,"mat-option",11),t.qZA(),t.qZA()}if(2&g){var i=t.MAs(9),C=t.oxw();t.xp6(2),t.Q6J("formControl",C.queryablePropertiesAutocompleteControl)("matAutocomplete",i),t.xp6(8),t.Q6J("ngForOf",C.queryableOptionsAll)}}function bp(g,A){if(1&g&&(t.TgZ(0,"mat-option",10),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l),t.xp6(1),t.hij(" ",l," ")}}function wc(g,A){1&g&&(t.TgZ(0,"mat-error"),t._uU(1,"Required"),t.qZA())}function Fh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"input",23),t.NdJ("ngModelChange",function(Ot){t.CHM(l);var Bt=t.oxw(),cn=Bt.$implicit,Fn=Bt.index;return t.oxw().commandInputValueDict[cn.type][Fn]=Ot})("keyup",function(Ot){t.CHM(l);var Bt=t.oxw().$implicit,cn=t.oxw();return Bt.constructQuery(Ot.target.value.trim(),cn.selectedCondition,cn.selectedQueryableProperty,cn.selectedLucenePath,cn.queryUpdated,cn.queryParts,cn.commandInputValueDict[Bt.type])}),t.qZA(),t.YNc(3,wc,2,0,"mat-error",2),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(),C=i.$implicit,w=i.index,V=t.oxw();t.xp6(2),t.Q6J("type",C.type)("name","input_"+w)("ngModel",V.commandInputValueDict[C.type][w]),t.xp6(1),t.Q6J("ngIf",!V.commandInputValueDict[C.type][w])}}function Wf(g,A){1&g&&(t.TgZ(0,"mat-error"),t._uU(1,"Required"),t.qZA())}function Nh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"input",24),t.NdJ("ngModelChange",function(Bt){t.CHM(l);var cn=t.oxw(),Fn=cn.$implicit,Bn=cn.index;return t.oxw().commandInputValueDict[Fn.type][Bn]=Bt})("dateChange",function(Bt){t.CHM(l);var cn=t.oxw().$implicit,Fn=t.oxw();return cn.constructQuery(Bt.value,Fn.selectedCondition,Fn.selectedQueryableProperty,Fn.selectedLucenePath,Fn.queryUpdated,Fn.queryParts,Fn.commandInputValueDict[cn.type])})("dateInput",function(Bt){t.CHM(l);var cn=t.oxw().$implicit,Fn=t.oxw();return cn.constructQuery(Bt.value,Fn.selectedCondition,Fn.selectedQueryableProperty,Fn.selectedLucenePath,Fn.queryUpdated,Fn.queryParts,Fn.commandInputValueDict[cn.type])}),t.qZA(),t.YNc(3,Wf,2,0,"mat-error",2),t._UZ(4,"mat-datepicker-toggle",25),t.TgZ(5,"mat-datepicker",26,27),t.NdJ("opened",function(){return t.CHM(l),t.oxw(2).increaseOverlayZindex()})("closed",function(){return t.CHM(l),t.oxw(2).decreaseOverlayZindex()}),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.MAs(6),C=t.oxw(),w=C.$implicit,V=C.index,Ze=t.oxw();t.xp6(2),t.Q6J("ngModel",Ze.commandInputValueDict[w.type][V])("matDatepicker",i),t.xp6(1),t.Q6J("ngIf",!Ze.commandInputValueDict[w.type][V]),t.xp6(1),t.Q6J("for",i)}}function Rh(g,A){if(1&g&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.value)("matTooltip",l.display),t.xp6(1),t.hij(" ",l.display," ")}}function zf(g,A){1&g&&(t.TgZ(0,"mat-error"),t._uU(1,"Required"),t.qZA())}function Cp(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-form-field",16),t.TgZ(2,"mat-select",28),t.NdJ("ngModelChange",function(Ot){t.CHM(l);var Bt=t.oxw(),cn=Bt.$implicit,Fn=Bt.index;return t.oxw().commandInputValueDict[cn.type][Fn]=Ot})("openedChange",function(Ot){return t.CHM(l),t.oxw(2).openedChange(Ot)})("selectionChange",function(Ot){t.CHM(l);var Bt=t.oxw().$implicit,cn=t.oxw();return Bt.constructQuery(Ot.value,cn.selectedCondition,cn.selectedQueryableProperty,cn.selectedLucenePath,cn.queryUpdated,cn.queryParts,cn.commandInputValueDict[Bt.type])}),t.YNc(3,Rh,2,3,"mat-option",11),t.qZA(),t.YNc(4,zf,2,0,"mat-error",2),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(),C=i.$implicit,w=i.index,V=t.oxw();t.xp6(2),t.Q6J("ngModel",V.commandInputValueDict[C.type][w]),t.xp6(1),t.Q6J("ngForOf",V.cvOptions),t.xp6(1),t.Q6J("ngIf",!V.commandInputValueDict[C.type][w])}}function Gf(g,A){if(1&g&&(t.TgZ(0,"div",22),t.YNc(1,Fh,4,4,"div",2),t.YNc(2,Nh,7,4,"div",2),t.YNc(3,Cp,5,3,"div",2),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("ngIf","text"==l.type||"boolean"==l.type||"number"==l.type),t.xp6(1),t.Q6J("ngIf","datetime"==l.type),t.xp6(1),t.Q6J("ngIf","select"==l.type)}}var rg=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.overlayContainerService=l,this.cvService=i,this._index=0,this.queryUpdated=new t.vpe,this.queryablePropertiesControl=new o.NI,this.queryablePropertiesAutocompleteControl=new o.NI,this.commandControl=new o.NI,this.subscriptions=[],this.conditionOptions=["AND","OR","NOT"],this.conditionControl=new o.NI,this.selectedCondition="",this.queryParts=[],this.typeCommandOptions=md.k,this.commandInputValueDict={},this.isShowCommonFields=!0}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.overlayContainer=this.overlayContainerService.getContainerElement(),md.J.forEach(function(Kn){i.commandInputValueDict[Kn]=[]});var C=this.queryablePropertiesControl.valueChanges.subscribe(function(Kn){i.queryablePropertySelected(Kn)});this.subscriptions.push(C);var w=this.queryablePropertiesAutocompleteControl.valueChanges.subscribe(function(Kn){i.queryableOptionsAll=i.allOptions.filter(function(fi){return fi.toLowerCase().indexOf(Kn.toLowerCase())>-1})});this.subscriptions.push(w);var Ot,V=this.commandControl.valueChanges.subscribe(function(Kn){i.setCommand(Kn)});if(this.subscriptions.push(V),this._index>0){this.conditionControl.setValue("AND"),this.selectedCondition="AND ";var Ze=this.conditionControl.valueChanges.subscribe(function(Kn){i.selectedCondition="".concat(Kn," "),i.refreshQuery()});this.subscriptions.push(Ze)}if(this.queryStatementHash){var Bt=localStorage.getItem(this.queryStatementHash.toString());Bt&&(Ot=JSON.parse(Bt))}if(null!=Ot){var Bn=md.k[this._queryableDictionary[Ot.queryableProperty].type][Ot.command];Bn.commandInputs&&(this.commandInputValueDict[Bn.commandInputs[0].type]=Ot.commandInputValues),this.queryParts=Ot.queryParts,this.conditionControl.setValue(Ot.condition.trim(),{emitEvent:!1}),this.selectedCondition=Ot.condition,this.isShowCommonFields=this.queryableOptionsCommon.indexOf(Ot.queryableProperty)>-1,this.queryableOptionsCommon.indexOf(Ot.queryableProperty)>-1?(this.isShowCommonFields=!0,this.queryablePropertiesControl.setValue(Ot.queryableProperty,{emitEvent:!1})):(this.isShowCommonFields=!1,this.queryablePropertiesAutocompleteControl.setValue(Ot.queryableProperty,{emitEvent:!1})),this.processQueriablePropertyChange(Ot.queryableProperty),this.commandControl.setValue(Ot.command)}else this.queryablePropertiesControl.setValue("All")}},{key:"ngAfterViewInit",value:function(){}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"queryableDictionary",set:function(i){null!=i&&(this._queryableDictionary=i)}},{key:"index",get:function(){return this._index},set:function(i){null!=i&&(this._index=i,0===this._index&&this.commandInputs&&(this.selectedCondition="",this.refreshQuery()))}},{key:"queryableOptions",set:function(i){this.allOptions=i,this.queryableOptionsAll=i}},{key:"setCommand",value:function(i){this.selectedCommandOption=i;var C=this.typeCommandOptions[this.selectedQueryablePropertyType][i];C.commandInputs?(this.commandInputs=C.commandInputs,this.refreshQuery()):C.constructQuery&&(this.commandInputs=[],C.constructQuery(i.trim(),this.selectedCondition,this.selectedQueryableProperty,this.selectedLucenePath,this.queryUpdated,this.queryParts))}},{key:"queryablePropertySelected",value:function(i){this.processQueriablePropertyChange(i),this.commandControl.setValue(this._queryableDictionary[i].cvDomain||"string"!==this._queryableDictionary[i].type?this.commandOptions[0]:"ALL of the following words in any order or position")}},{key:"processQueriablePropertyChange",value:function(i){this.selectedQueryableProperty=i,this._queryableDictionary[i].cvDomain&&this.setCvOptions(this._queryableDictionary[i].cvDomain),this.selectedLucenePath=this._queryableDictionary[i].lucenePath,this.selectedLucenePath&&(this.selectedLucenePath=this.selectedLucenePath+":"),this.selectedQueryablePropertyType=this._queryableDictionary[i].type}},{key:"setCvOptions",value:function(i){var C=this;this.cvService.getDomainVocabulary(i).subscribe(function(w){C.cvOptions=w[i].list})}},{key:"refreshQuery",value:function(){var i=this;this.queryParts=[],this.commandInputs.forEach(function(C,w){i.commandInputValueDict[C.type]&&null!=i.commandInputValueDict[C.type][w]?C.constructQuery(i.commandInputValueDict[C.type][w],i.selectedCondition,i.selectedQueryableProperty,i.selectedLucenePath,i.queryUpdated,i.queryParts):i.queryUpdated.emit({condition:i.selectedCondition,queryableProperty:i.selectedQueryableProperty,command:i.selectedCommandOption,commandInputValues:[],query:""})})}},{key:"queryablePropertiesAutocompleteClosed",value:function(){this.decreaseOverlayZindex();var i=this.queryablePropertiesAutocompleteControl.value;if(i)for(var C=0;C-1?this.queryablePropertiesControl.setValue(this.selectedQueryableProperty):this.queryablePropertiesControl.setValue("All")}},{key:"openedChange",value:function(i){i?this.increaseOverlayZindex():this.decreaseOverlayZindex()}},{key:"increaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex="1002"}},{key:"decreaseOverlayZindex",value:function(){this.overlayContainer.style.zIndex=null}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(jn.Xj),t.Y36(zr.I))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-query-statement"]],inputs:{queryStatementHash:"queryStatementHash",queryableOptionsCommon:"queryableOptionsCommon",queryableDictionary:"queryableDictionary",index:"index",queryableOptions:"queryableOptions"},outputs:{queryUpdated:"queryUpdated"},decls:12,vars:7,consts:[[1,"query-statement-container"],[1,"condition-column"],[4,"ngIf"],[1,"queryable-property-column"],[1,"command-column"],[3,"matTooltip"],[3,"formControl","openedChange"],[3,"value",4,"ngFor","ngForOf"],[1,"query-column"],["class","query-input",4,"ngFor","ngForOf"],[3,"value"],[3,"value","matTooltip",4,"ngFor","ngForOf"],[1,"middle-fill"],[1,"action-hint"],[3,"click"],[3,"value","matTooltip"],["floatLabel","never"],["type","text","matInput","","placeholder","Search for desired field",3,"formControl","matAutocomplete","blur"],["matSuffix","","matTooltip","Clear input and show all options",3,"click"],["svgIcon","clear"],[3,"optionSelected","opened","closed"],["queryablePropertyOptions","matAutocomplete"],[1,"query-input"],["matInput","","required","","placeholder","Enter search value",3,"type","name","ngModel","ngModelChange","keyup"],["matInput","","required","","placeholder","m/d/yyyy",3,"ngModel","matDatepicker","ngModelChange","dateChange","dateInput"],["matSuffix","",3,"for"],[3,"opened","closed"],["queryDatepicker",""],["required","","placeholder","Select default option",3,"ngModel","ngModelChange","openedChange","selectionChange"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.YNc(2,hd,3,2,"mat-form-field",2),t.qZA(),t.TgZ(3,"div",3),t.YNc(4,gd,7,2,"mat-form-field",2),t.YNc(5,Qf,11,3,"div",2),t.qZA(),t.TgZ(6,"div",4),t.TgZ(7,"mat-form-field",5),t.TgZ(8,"mat-select",6),t.NdJ("openedChange",function(w){return i.openedChange(w)}),t.YNc(9,bp,2,2,"mat-option",7),t.qZA(),t.qZA(),t.qZA(),t.TgZ(10,"div",8),t.YNc(11,Gf,4,3,"div",9),t.qZA(),t.qZA()),2&l&&(t.xp6(2),t.Q6J("ngIf",i.index>0),t.xp6(2),t.Q6J("ngIf",i.isShowCommonFields),t.xp6(1),t.Q6J("ngIf",!i.isShowCommonFields),t.xp6(2),t.Q6J("matTooltip",i.selectedCommandOption),t.xp6(1),t.Q6J("formControl",i.commandControl),t.xp6(1),t.Q6J("ngForOf",i.commandOptions),t.xp6(2),t.Q6J("ngForOf",i.commandInputs))},directives:[ve.O5,It.KE,fa.gD,o.JJ,o.oH,ve.sg,Ca.ey,Me.gM,It.bx,$e.Nt,o.Fj,Al.ZL,It.R9,Y.Hw,Al.XC,o.Q7,o.On,It.TO,Su.hl,Su.nW,Su.Mq],styles:[".query-statement-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.condition-column[_ngcontent-%COMP%]{width:100px;max-width:100px;min-width:100px;padding-right:20px;padding-top:1px}.mat-form-field[_ngcontent-%COMP%]{width:100%;max-width:100%}.mat-form-field[_ngcontent-%COMP%] .mat-form-field-infix{width:100%}.queryable-property-column[_ngcontent-%COMP%]{width:400px;min-width:400px;max-width:400px;padding-right:20px}.command-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding-right:10px;padding-top:1px;width:190px;max-width:190px;min-width:190px}.query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;display:-ms-flexbox;display:flex}.query-input[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding:0 10px}.mat-hint.action-hint[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.mat-hint.action-hint[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--link-primary-color)}.mat-error[_ngcontent-%COMP%]{color:var(--regular-red-color)}"]}),g}();function Kf(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",19),t.NdJ("click",function(){t.CHM(l);var C=t.oxw().index;return t.oxw().removeQueryStatement(C)}),t._UZ(1,"mat-icon",20),t.qZA()}}function Uh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",21),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).addQueryStatement()}),t._UZ(1,"mat-icon",22),t.qZA()}}function $f(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",12),t.TgZ(1,"div",13),t.TgZ(2,"app-query-statement",14),t.NdJ("queryUpdated",function(Bt){var Fn=t.CHM(l).index;return t.oxw().queryUpdated(Bt,Fn)}),t.qZA(),t.qZA(),t.TgZ(3,"div",15),t.TgZ(4,"div",16),t.YNc(5,Kf,2,0,"button",17),t.qZA(),t.TgZ(6,"div",16),t.YNc(7,Uh,2,0,"button",18),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=A.index,w=A.first,V=A.last,Ze=t.oxw();t.xp6(2),t.Q6J("queryStatementHash",i.queryHash)("index",C)("queryableDictionary",Ze.queryableSubstanceDict)("queryableOptions",Ze.displayProperties)("queryableOptionsCommon",Ze.displayPropertiesCommon),t.xp6(3),t.Q6J("ngIf",!w||Ze.queryStatements.length>1),t.xp6(2),t.Q6J("ngIf",V)}}var Bh=function(){var g=function(){function A(l,i,C,w,V,Ze){(0,c.Z)(this,A),this.http=l,this.router=i,this.configService=C,this.utilitiesService=w,this.activatedRoute=V,this.titleService=Ze,this.queryStatements=[],this.query=""}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.titleService.setTitle("Guided Search");var w,C=Number(this.activatedRoute.snapshot.queryParams["g-search-hash"])||null;if(C){var V=localStorage.getItem(C.toString());null!=V&&(w=JSON.parse(V))}this.http.get("".concat(this.configService.environment.baseHref,"assets/data/substance_dictionary.json")).subscribe(function(Ze){Ze.All={lucenePath:"text",description:"All substance fields",type:"string",cvDomain:""},i.queryableSubstanceDict=Ze;var Ot=["All"],Bt=["All"];Object.keys(i.queryableSubstanceDict).forEach(function(cn){Ot.push(cn),null!=i.queryableSubstanceDict[cn].priority&&Bt.push(cn)}),i.displayProperties=Ot,i.displayPropertiesCommon=Bt,null!=w?w.forEach(function(cn){i.queryStatements.push({queryHash:cn})}):i.queryStatements.push({})})}},{key:"queryUpdated",value:function(i,C){var w=this;setTimeout(function(){Object.keys(i).forEach(function(V){w.queryStatements[C][V]=i[V]}),w.query="",w.query=w.queryStatements.map(function(V){return V.query}).join(" ").trim()})}},{key:"addQueryStatement",value:function(){this.queryStatements.push({condition:"",queryableProperty:"All",command:""})}},{key:"removeQueryStatement",value:function(i){this.queryStatements.splice(i,1),this.query=this.queryStatements.map(function(C){return C.query}).join(" ")}},{key:"processSearch",value:function(){var i=this,C=[];this.queryStatements.forEach(function(Bt){var cn=JSON.stringify(Bt),Fn=i.utilitiesService.hashCode(cn);localStorage.setItem(Fn.toString(),cn),C.push(Fn)});var w=this.utilitiesService.hashCode(this.query),V=JSON.stringify(C);localStorage.setItem(w.toString(),V);var Ze={queryParams:this.query?{search:this.query}:null},Ot_queryParams_g_search_hash=w.toString();window.history.pushState({},"Guided Search","/guided-search?g-search-hash="+Ot_queryParams_g_search_hash),this.router.navigate(["/browse-substance"],Ze)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(u.eN),t.Y36(_.F0),t.Y36(fn.E),t.Y36(ce.FW),t.Y36(_.gz),t.Y36(S.Dx))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-guided-search"]],decls:25,vars:3,consts:[[1,"content-container"],[1,"builder-container"],[1,"header-row"],[1,"condition-column"],[1,"queryable-property-column"],[1,"command-column"],[1,"query-column"],["class","builder-row",4,"ngFor","ngForOf"],[1,"query-builder-actions"],["mat-flat-button","","color","primary",3,"disabled","click"],[1,"query-container"],[1,"query-value"],[1,"builder-row"],[1,"query-statement-container"],[3,"queryStatementHash","index","queryableDictionary","queryableOptions","queryableOptionsCommon","queryUpdated"],[1,"actions-container"],[1,"button-container"],["mat-icon-button","","aria-label","remove query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","add query statement",3,"click",4,"ngIf"],["mat-icon-button","","aria-label","remove query statement",3,"click"],["svgIcon","remove_circle_outline"],["mat-icon-button","","aria-label","add query statement",3,"click"],["svgIcon","add_circle_outline"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"mat-card"),t.TgZ(2,"mat-card-title"),t._uU(3," Guided Search "),t.qZA(),t.TgZ(4,"mat-card-content"),t.TgZ(5,"h2"),t._uU(6," Builder "),t.qZA(),t.TgZ(7,"div",1),t.TgZ(8,"div",2),t._UZ(9,"div",3),t.TgZ(10,"div",4),t._uU(11," Search In Fields "),t.qZA(),t.TgZ(12,"div",5),t._uU(13," For "),t.qZA(),t.TgZ(14,"div",6),t._uU(15," Query "),t.qZA(),t.qZA(),t.YNc(16,$f,8,7,"div",7),t.qZA(),t.TgZ(17,"div",8),t.TgZ(18,"button",9),t.NdJ("click",function(){return i.processSearch()}),t._uU(19,"Search"),t.qZA(),t.qZA(),t.TgZ(20,"h2"),t._uU(21," Query "),t.qZA(),t.TgZ(22,"div",10),t.TgZ(23,"div",11),t._uU(24),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(16),t.Q6J("ngForOf",i.queryStatements),t.xp6(2),t.Q6J("disabled",!i.query),t.xp6(6),t.hij(" ",i.query," "))},directives:[xi.a8,xi.n5,xi.dn,ve.sg,rg,ve.O5,y.lW,Y.Hw],styles:[".mat-card-title[_ngcontent-%COMP%]{margin-bottom:20px}.content-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.mat-card[_ngcontent-%COMP%]{margin-top:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;max-width:1200px;width:100%}.builder-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.header-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:10px;font-size:20px;font-weight:400}.header-row[_ngcontent-%COMP%] .condition-column[_ngcontent-%COMP%]{width:100px}.header-row[_ngcontent-%COMP%] .queryable-property-column[_ngcontent-%COMP%]{width:400px}.header-row[_ngcontent-%COMP%] .command-column[_ngcontent-%COMP%]{width:190px}.header-row[_ngcontent-%COMP%] .query-column[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1;padding-left:10px}.builder-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;padding-bottom:10px}.query-statement-container[_ngcontent-%COMP%]{-ms-flex-positive:1;flex-grow:1}.query-container[_ngcontent-%COMP%]{padding:15px}.query-value[_ngcontent-%COMP%]{padding:10px 15px;background-color:var(--query-bg-color);border:solid 1px var(--query-border-color);border-radius:2px;min-height:69px}.actions-container[_ngcontent-%COMP%]{width:80px;display:-ms-flexbox;display:flex}.actions-container[_ngcontent-%COMP%] .button-container[_ngcontent-%COMP%]{width:40px}.mat-card-actions[_ngcontent-%COMP%]{padding-top:10px 10px 0 10px}.query-builder-actions[_ngcontent-%COMP%]{margin:10px 0 15px}"]}),g}(),Pl=n(12379);function Ws(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1," Database "),t.qZA())}function Yh(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.database," ")}}function Xf(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1," Driver "),t.qZA())}function Mp(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.driver," ")}}function em(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1," Product "),t.qZA())}function qh(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.product," ")}}function Hh(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1," Latency "),t.qZA())}function tm(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.latency," ms")}}function Vh(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1," Connected "),t.qZA())}function jh(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.connected," ")}}function Jh(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1," Max Connections "),t.qZA())}function Za(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.maxConnectionPool?l.maxConnectionPool:"N/A"," ")}}function nm(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1," Active Connections "),t.qZA())}function xp(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.activeConnection?l.activeConnection:"N/A"," ")}}function im(g,A){1&g&&(t.TgZ(0,"th",21),t._uU(1,"Connection Usage "),t.qZA())}function Tu(g,A){if(1&g&&(t.TgZ(0,"td",22),t._uU(1),t.ALo(2,"number"),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.activeConnection&&l.maxConnectionPool?t.xi3(2,1,100-(l.maxConnectionPool-l.activeConnection)/l.maxConnectionPool*100,"1.1-2")+"%":"N/A"," ")}}function zs(g,A){1&g&&t._UZ(0,"tr",23)}function am(g,A){1&g&&t._UZ(0,"tr",24)}function Qh(g,A){if(1&g&&(t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"mat-card"),t.TgZ(3,"mat-card-title"),t._uU(4," Runtime Environment"),t.qZA(),t.TgZ(5,"div",3),t.TgZ(6,"div",4),t._uU(7,"Epoch"),t.qZA(),t.TgZ(8,"div",5),t._uU(9),t.ALo(10,"date"),t.qZA(),t.qZA(),t.TgZ(11,"div",3),t.TgZ(12,"div",4),t._uU(13,"Uptime"),t.qZA(),t.TgZ(14,"div",5),t._uU(15),t.qZA(),t.qZA(),t.TgZ(16,"div",3),t.TgZ(17,"div",4),t._uU(18,"Server"),t.qZA(),t.TgZ(19,"div",5),t._uU(20),t.qZA(),t.qZA(),t.TgZ(21,"div",3),t.TgZ(22,"div",4),t._uU(23,"Available Processors"),t.qZA(),t.TgZ(24,"div",5),t._uU(25),t.qZA(),t.qZA(),t.TgZ(26,"div",3),t.TgZ(27,"div",4),t._uU(28,"Free Memory"),t.qZA(),t.TgZ(29,"div",5),t._uU(30),t.ALo(31,"number"),t.qZA(),t.qZA(),t.TgZ(32,"div",3),t.TgZ(33,"div",4),t._uU(34,"Total Memory"),t.qZA(),t.TgZ(35,"div",5),t._uU(36),t.ALo(37,"number"),t.qZA(),t.qZA(),t.TgZ(38,"div",3),t.TgZ(39,"div",4),t._uU(40,"Max Memory"),t.qZA(),t.TgZ(41,"div",5),t._uU(42),t.ALo(43,"number"),t.qZA(),t.qZA(),t.TgZ(44,"div",3),t.TgZ(45,"div",4),t._uU(46,"JRE Version"),t.qZA(),t.TgZ(47,"div",5),t._uU(48),t.qZA(),t.qZA(),t.TgZ(49,"div",3),t.TgZ(50,"div",4),t._uU(51,"Number of Threads"),t.qZA(),t.TgZ(52,"div",5),t._uU(53),t.qZA(),t.qZA(),t.TgZ(54,"div",3),t.TgZ(55,"div",4),t._uU(56,"Number of Running Threads"),t.qZA(),t.TgZ(57,"div",5),t._uU(58),t.qZA(),t.qZA(),t.TgZ(59,"div",3),t._UZ(60,"div",4),t._UZ(61,"div",5),t.qZA(),t.qZA(),t.qZA(),t.TgZ(62,"div",2),t.TgZ(63,"mat-card"),t.TgZ(64,"mat-card-title"),t._uU(65," Cache Configuration"),t.qZA(),t.TgZ(66,"div",3),t.TgZ(67,"div",4),t._uU(68,"Max Cache Elements"),t.qZA(),t.TgZ(69,"div",5),t._uU(70),t.qZA(),t.qZA(),t.TgZ(71,"div",3),t.TgZ(72,"div",4),t._uU(73,"Max Evictable Cache Elements"),t.qZA(),t.TgZ(74,"div",5),t._uU(75),t.qZA(),t.qZA(),t.TgZ(76,"div",3),t.TgZ(77,"div",4),t._uU(78,"Time to Live (seconds)"),t.qZA(),t.TgZ(79,"div",5),t._uU(80),t.qZA(),t.qZA(),t.TgZ(81,"div",3),t.TgZ(82,"div",4),t._uU(83,"Time to Idle (seconds)"),t.qZA(),t.TgZ(84,"div",5),t._uU(85),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(86,"div",6),t.TgZ(87,"mat-card"),t.TgZ(88,"mat-card-title"),t._uU(89,"Database Information"),t.qZA(),t.TgZ(90,"div",7),t.TgZ(91,"table",8),t.ynx(92,9),t.YNc(93,Ws,2,0,"th",10),t.YNc(94,Yh,2,1,"td",11),t.BQk(),t.ynx(95,12),t.YNc(96,Xf,2,0,"th",10),t.YNc(97,Mp,2,1,"td",11),t.BQk(),t.ynx(98,13),t.YNc(99,em,2,0,"th",10),t.YNc(100,qh,2,1,"td",11),t.BQk(),t.ynx(101,14),t.YNc(102,Hh,2,0,"th",10),t.YNc(103,tm,2,1,"td",11),t.BQk(),t.ynx(104,15),t.YNc(105,Vh,2,0,"th",10),t.YNc(106,jh,2,1,"td",11),t.BQk(),t.ynx(107,16),t.YNc(108,Jh,2,0,"th",10),t.YNc(109,Za,2,1,"td",11),t.BQk(),t.ynx(110,17),t.YNc(111,nm,2,0,"th",10),t.YNc(112,xp,2,1,"td",11),t.BQk(),t.ynx(113,18),t.YNc(114,im,2,0,"th",10),t.YNc(115,Tu,3,4,"td",11),t.BQk(),t.YNc(116,zs,1,0,"tr",19),t.YNc(117,am,1,0,"tr",20),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(9),t.Oqu(t.xi3(10,17,l.health.epoch,"medium")),t.xp6(6),t.Oqu(l.runtime),t.xp6(5),t.Oqu(l.health.hostname),t.xp6(5),t.Oqu(l.health.runtime.availableProcessors),t.xp6(5),t.hij("",t.xi3(31,20,l.health.runtime.freeMemory/1048576,"1.1-1")," Mb"),t.xp6(6),t.hij("",t.xi3(37,23,l.health.runtime.totalMemory/1048576,"1.1-1")," Mb"),t.xp6(6),t.hij("",t.xi3(43,26,l.health.runtime.maxMemory/1048576,"1.1-1")," Mb"),t.xp6(6),t.Oqu(l.health.javaVersion),t.xp6(5),t.Oqu(l.health.threads),t.xp6(5),t.Oqu(l.health.runningThreads),t.xp6(12),t.Oqu(l.health.cacheInfo.maxCacheElements),t.xp6(5),t.Oqu(l.health.cacheInfo.maxNotEvictableCacheElements),t.xp6(5),t.Oqu(l.health.cacheInfo.timeToLive),t.xp6(5),t.Oqu(l.health.cacheInfo.timeToIdle),t.xp6(6),t.Q6J("dataSource",l.health.databaseInformation),t.xp6(25),t.Q6J("matHeaderRowDef",l.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",l.displayedColumns)}}var Sp=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.adminService=l,this.displayedColumns=["database","driver","product","latency","connected","max","active","usage"],this.runtime=""}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.sub=this.adminService.getEnvironmentHealth().subscribe(function(C){i.health=C,i.setStart()})}},{key:"setStart",value:function(){if(this.health.epoch){var i=new Date,C=_e.duration(i.getTime()-0-this.health.epoch),w="";0!==C.years()&&(w+=C.years()+(C.years()>1?" years, ":" year, ")),0!==C.months()&&(w+=C.months()+(C.months()>1?" months, ":" month, ")),0!==C.days()&&(w+=C.days()+(C.days()>1?" days, ":" day, ")),0!==C.hours()&&(w+=C.hours()+(C.hours()>1?" hrs, ":" hr, ")),0!==C.minutes()&&(w+=C.minutes()+(C.minutes()," min, ")),0!==C.seconds()?w+=C.seconds()+(C.seconds()," sec"):""===w&&(w=i.getTime()-0-this.health.epoch+" ms"),this.runtime=w}}},{key:"ngOnDestroy",value:function(){this.sub.unsubscribe()}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Q))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-cache-summary"]],decls:1,vars:1,consts:[["class","cache-container",4,"ngIf"],[1,"cache-container"],[1,"data-column"],[1,"cache-data"],[1,"name"],[1,"value"],[1,"database-table-container"],[1,"database-table"],["mat-table","",3,"dataSource"],["matColumnDef","database"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","driver"],["matColumnDef","product"],["matColumnDef","latency"],["matColumnDef","connected"],["matColumnDef","max"],["matColumnDef","active"],["matColumnDef","usage"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(l,i){1&l&&t.YNc(0,Qh,118,29,"div",0),2&l&&t.Q6J("ngIf",i.health)},directives:[ve.O5,xi.a8,xi.n5,ue.BZ,ue.w1,ue.fO,ue.ge,ue.Dz,ue.ev,ue.as,ue.XQ,ue.nj,ue.Gk],pipes:[ve.uU,ve.JJ],styles:[".cache-data[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding:5px}.cache-data[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid var(--nth-child-color-1)}.cache-data[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{font-weight:700;min-width:100px;width:45%}.cache-data[_ngcontent-%COMP%]:nth-child(even){background-color:var(--nth-child-color-2)}.data-column[_ngcontent-%COMP%]{width:40%}.cache-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:justify;align-content:space-between}.cache-container[_ngcontent-%COMP%] .data-column[_ngcontent-%COMP%]{width:45%;min-width:400px;padding:7px}.database-table-container[_ngcontent-%COMP%]{-ms-flex-preferred-size:100%;flex-basis:100%;margin-top:20px}.database-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%]:nth-child(odd){background-color:var(--nth-child-color-2)}.fake-card[_ngcontent-%COMP%]{border-radius:4px;box-shadow:#0003 0 2px 1px -1px,#00000024 0 1px 1px,#0000001f 0 1px 3px;box-sizing:border-box;color:#000000de}"]}),g}(),Yo=n(44014);function Tp(g,A){1&g&&(t.TgZ(0,"h1"),t._uU(1," Add User "),t.qZA())}function rm(g,A){1&g&&(t.TgZ(0,"h1"),t._uU(1," Edit User "),t.qZA())}function Ap(g,A){if(1&g&&(t.TgZ(0,"div",5),t.YNc(1,Tp,2,0,"h1",6),t.YNc(2,rm,2,0,"h1",6),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.newUser),t.xp6(1),t.Q6J("ngIf",!l.newUser)}}function og(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span"),t.TgZ(1,"div"),t.TgZ(2,"mat-form-field"),t.TgZ(3,"input",28),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(4).newPassword=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-form-field"),t.TgZ(6,"input",29),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(4).newPasswordConfirm=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"div"),t.TgZ(8,"button",30),t.NdJ("click",function(){return t.CHM(l),t.oxw(4).validatePassword()}),t._uU(9,"Submit Change"),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(4);t.xp6(3),t.Q6J("ngModel",i.newPassword),t.xp6(3),t.Q6J("ngModel",i.newPasswordConfirm)}}function om(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div"),t.TgZ(2,"button",27),t.NdJ("click",function(){t.CHM(l);var w=t.oxw(3);return w.changePassword=!w.changePassword}),t._uU(3),t.qZA(),t.qZA(),t.YNc(4,og,10,2,"span",6),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(3),t.hij(" ",i.changePassword?"Cancel":"Change Password"," "),t.xp6(1),t.Q6J("ngIf",!0===i.changePassword)}}function sg(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div"),t.TgZ(2,"mat-form-field"),t.TgZ(3,"input",28),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(3).newPassword=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(4,"div"),t.TgZ(5,"mat-form-field"),t.TgZ(6,"input",29),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(3).newPasswordConfirm=w}),t.qZA(),t.qZA(),t.qZA(),t._UZ(7,"div"),t.qZA()}if(2&g){var i=t.oxw(3);t.xp6(3),t.Q6J("ngModel",i.newPassword),t.xp6(3),t.Q6J("ngModel",i.newPasswordConfirm)}}function vd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",31),t.TgZ(1,"mat-checkbox",16),t.NdJ("ngModelChange",function(w){return t.CHM(l).$implicit.hasGroup=w}),t.TgZ(2,"div",32),t._uU(3),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(1),t.Q6J("ngModel",i.hasGroup),t.xp6(2),t.hij(" ",i.name," ")}}function yd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"mat-checkbox",16),t.NdJ("ngModelChange",function(w){return t.CHM(l).$implicit.hasRole=w}),t._uU(2),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(1),t.Q6J("ngModel",i.hasRole),t.xp6(1),t.hij(" ",i.name," ")}}function Pp(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",8),t.TgZ(2,"div",10),t.TgZ(3,"mat-form-field",11),t.TgZ(4,"mat-label"),t._uU(5,"Username"),t.qZA(),t.TgZ(6,"input",12),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(2).user.user.username=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(7,"div",13),t.TgZ(8,"mat-form-field",11),t.TgZ(9,"mat-label"),t._uU(10,"Email"),t.qZA(),t.TgZ(11,"input",14),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(2).user.user.email=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(12,"div",15),t.TgZ(13,"mat-checkbox",16),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(2).user.active=w}),t._uU(14," active "),t.qZA(),t.qZA(),t.qZA(),t.TgZ(15,"div",8),t.YNc(16,om,5,2,"div",17),t.YNc(17,sg,8,2,"div",17),t.qZA(),t.TgZ(18,"div",8),t.TgZ(19,"div",18),t.TgZ(20,"span",19),t._uU(21,"Groups"),t.qZA(),t.YNc(22,vd,4,2,"div",20),t.TgZ(23,"mat-form-field",21),t.TgZ(24,"input",22),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw(2).newGroup=w}),t.qZA(),t.qZA(),t.qZA(),t.TgZ(25,"div",23),t.TgZ(26,"span",24),t._uU(27,"Roles"),t.qZA(),t.YNc(28,yd,3,2,"div",25),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(6),t.Q6J("ngModel",i.user.user.username),t.xp6(5),t.Q6J("ngModel",i.user.user.email),t.xp6(2),t.Q6J("ngModel",i.user.active),t.xp6(3),t.Q6J("ngIf",!i.newUser),t.xp6(1),t.Q6J("ngIf",i.newUser),t.xp6(5),t.Q6J("ngForOf",i.groups),t.xp6(2),t.Q6J("ngModel",i.newGroup),t.xp6(4),t.Q6J("ngForOf",i.roles)}}function Dp(g,A){if(1&g&&(t.TgZ(0,"div",33),t._UZ(1,"mat-progress-spinner",34),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("color",l.primary)}}function wp(g,A){if(1&g&&(t.TgZ(0,"div",7),t.YNc(1,Pp,29,8,"div",6),t.TgZ(2,"div",8),t.YNc(3,Dp,2,1,"div",9),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",!1===l.loading),t.xp6(2),t.Q6J("ngIf",!0===l.loading)}}function Wh(g,A){if(1&g&&(t.TgZ(0,"div",35),t.TgZ(1,"div",36),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.hij(" User successfully ",l.newUser?"added":"edited","!")}}function sm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",41),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).saveChanges()}),t._uU(1,"Save"),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",!i.user||!i.user.user||!i.user.user.username||""===i.user.user.username)}}function zh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",41),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).addUser()}),t._uU(1,"Add"),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",!i.user||!i.user.user||!i.user.user.username||""===i.user.user.username)}}function Gh(g,A){if(1&g&&(t.TgZ(0,"div",37),t.TgZ(1,"button",38),t._uU(2,"Cancel"),t.qZA(),t._UZ(3,"span",39),t.YNc(4,sm,2,1,"button",40),t.YNc(5,zh,2,1,"button",40),t.qZA()),2&g){var l=t.oxw();t.xp6(4),t.Q6J("ngIf",!l.newUser),t.xp6(1),t.Q6J("ngIf",l.newUser)}}function Kh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",37),t._UZ(1,"span",39),t.TgZ(2,"button",42),t.NdJ("click",function(){return t.CHM(l),t.oxw().succesClose()}),t._uU(3,"Close"),t.qZA(),t.qZA()}}var lm=function(A){return{"error-msg":A}},$u=function(){var g=function(){function A(l,i,C,w){(0,c.Z)(this,A),this.adminService=l,this.dialogRef=i,this.authService=C,this.data=w,this.newUser=!1,this.changePassword=!1,this.loading=!0,this.newGroup="",this.submitted=!1,this.isError=!1,this.roles=[{name:"Query",hasRole:!1},{name:"DataEntry",hasRole:!1},{name:"SuperDataEntry",hasRole:!1},{name:"Updater",hasRole:!1},{name:"SuperUpdate",hasRole:!1},{name:"Approver",hasRole:!1},{name:"Admin",hasRole:!1}],this.user=w.user,this.userID=w.userID,this.submitted=w.submission,this.userLoggedIn=this.authService.getUser()}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.user?(this.checkRoles(),this.originalName=this.user.username,this.loading=!1,this.newUser=!1,this.userHasAdminRole=this.checkIfUserHasAdminRole(this.user.roles),this.adminService.getGroups().pipe((0,J.q)(1)).subscribe(function(C){i.groups=[],C.forEach(function(w){var V={name:w,hasGroup:!1};i.user.groups.forEach(function(Ze){Ze.name===w&&(V.hasGroup=!0)}),i.groups.push(V)})})):this.userID?this.adminService.getUserByID(this.userID).pipe((0,J.q)(1)).subscribe(function(C){i.user=C,i.checkRoles(),i.originalName=C.user.username,i.loading=!1,i.newUser=!1,i.userHasAdminRole=i.checkIfUserHasAdminRole(i.user.roles),i.adminService.getGroups().pipe((0,J.q)(1)).subscribe(function(w){i.groups=[],w.forEach(function(V){var Ze={name:V,hasGroup:!1};i.user.groups.forEach(function(Ot){Ot.name===V&&(Ze.hasGroup=!0)}),i.groups.push(Ze)})})}):(this.newUser=!0,this.userHasAdminRole=!1,this.user={groups:[],roles:[],user:{}},this.user.active=!0,this.loading=!1,this.adminService.getGroups().pipe((0,J.q)(1)).subscribe(function(C){i.groups=[],C.forEach(function(w){i.groups.push({name:w,hasGroup:!1})})}))}},{key:"checkRoles",value:function(){var i=this;this.roles.forEach(function(C){i.user.roles.forEach(function(w){w===C.name&&(C.hasRole=!0)})})}},{key:"checkIfUserHasAdminRole",value:function(i){var C=!1;return i.forEach(function(w){"admin"===w.toLowerCase()&&(C=!0)}),C}},{key:"checkGroups",value:function(){var i=this;this.groups.forEach(function(C){i.user.groups.forEach(function(w){w.name===C.name&&(C.hasGroup=!0)})})}},{key:"saveChanges",value:function(){if(this.changePassword&&""!==this.newPassword)this.isError=!0,this.message="Cancel or submit new password to save other changes";else{this.isError=!1;var i=[];this.roles.forEach(function(V){V.hasRole&&i.push(V.name)});var C=[];this.groups.forEach(function(V){V.hasGroup&&C.push(V.name)}),this.newGroup&&""!==this.newGroup&&C.push(this.newGroup);var w={username:this.user.user.username,isAdmin:this.user.user.admin,isActive:this.user.active,email:this.user.user.email||null,roles:i,groups:C};this.userLoggedIn===this.user.user.username?(this.userHasAdminRole===this.checkIfUserHasAdminRole(i)&&this.user.active||confirm("Setting your own account as inactive or removing admin role are significant changes. ARE YOU SURE YOU WANT TO PROCEED?"))&&this.editUser(w):this.editUser(w)}}},{key:"editUser",value:function(i){var C=this;this.adminService.editUser(i,this.userID).pipe((0,J.q)(1)).subscribe(function(w){w&&w.user?(C.isError=!1,C.successfulChange(w)):(C.isError=!0,C.message="Unable to edit user")},function(w){C.isError=!0,C.message="Unable to edit user",w.error&&(C.isError=!0,C.message=w)})}},{key:"addUser",value:function(){var i=this;if(this.isError=!1,this.newPassword===this.newPasswordConfirm){var C=[];this.roles.forEach(function(Ze){Ze.hasRole&&C.push(Ze.name)});var w=[];this.groups.forEach(function(Ze){Ze.hasGroup&&w.push(Ze.name)}),this.newGroup&&""!==this.newGroup&&w.push(this.newGroup),this.adminService.addUser({username:this.user.user.username,isAdmin:this.user.user.admin,isActive:this.user.active,email:this.user.user.email||null,roles:C,groups:w,password:this.newPassword}).pipe((0,J.q)(1)).subscribe(function(Ze){i.message="",Ze&&Ze.user&&i.successfulChange(Ze)},function(Ze){Ze.error&&(i.isError=!0,i.message="ERROR: ",i.message+=void 0===Ze.error.message?"This user either already exists or there was a server problem updating the record":Ze.error.message.split(":")[1]),i.adminService.getUserByName(i.user.user.username).pipe((0,J.q)(1)).subscribe(function(Bt){i.message+=Bt.active?". This user is active.":". This user is NOT active."},function(Bt){})})}else this.isError=!0,this.message="passwords do not match"}},{key:"successfulChange",value:function(i){var C=this;this.response=i,this.submitted=!0,setTimeout(function(){C.dialogRef.close(C.response)},3e5)}},{key:"succesClose",value:function(){this.dialogRef.close(this.response)}},{key:"validatePassword",value:function(){var i=this;this.newPassword!==this.newPasswordConfirm?(this.isError=!0,this.message="Error: passwords do not match",this.newPassword="",this.newPasswordConfirm=""):(this.isError=!1,this.authService.getUser===this.user.identifier?this.adminService.changeMyPassword("",this.newPassword,this.user.id).pipe((0,J.q)(1)).subscribe(function(C){i.isError=!1,i.changePassword=!i.changePassword,i.message="Password updated successfully"},function(C){C.error?(i.isError=!0,i.message="Error - "+C.error):(i.isError=!0,i.newPassword="",i.newPasswordConfirm="",i.changePassword=!i.changePassword,i.message="Error:unknown server error")}):this.adminService.changePassword(this.newPassword,this.user.id).pipe((0,J.q)(1)).subscribe(function(C){i.changePassword=!i.changePassword,i.isError=!1,i.message="Password updated successfully"},function(C){C.error?(i.isError=!0,i.message="Error: "+C.error):(i.isError=!0,i.newPassword="",i.newPasswordConfirm="",i.changePassword=!i.changePassword,i.message="Error: unknown server error")}))}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Q),t.Y36(G.so),t.Y36(Wi.e),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-user-edit-dialog"]],decls:7,vars:9,consts:[[1,"message",3,"ngClass"],["mat-dialog-title","","class","title",4,"ngIf"],["mat-dialog-content","",4,"ngIf"],["class","submitted-container",4,"ngIf"],["mat-dialog-actions","",4,"ngIf"],["mat-dialog-title","",1,"title"],[4,"ngIf"],["mat-dialog-content",""],[1,"form-row"],["class","loading-container",4,"ngIf"],[1,"username"],[1,"user-field"],["matInput","","placeholder","user name","required","","name","name",3,"ngModel","ngModelChange"],[1,"email"],["matInput","","placeholder","email","name","Email",3,"ngModel","ngModelChange"],[1,"active"],[3,"ngModel","ngModelChange"],["class","password-column",4,"ngIf"],[1,"groups-group"],[1,"mat-header-cell","box-label"],["class","group-checkbox",4,"ngFor","ngForOf"],[1,"group-field"],["matInput","","placeholder","new group",1,"group-input",3,"ngModel","ngModelChange"],[1,"roles-group","box-label"],[1,"mat-header-cell"],[4,"ngFor","ngForOf"],[1,"password-column"],["mat-button","",1,"mat-flat-button",3,"click"],["matInput","","type","password","placeholder","new password","required","","name","Password",3,"ngModel","ngModelChange"],["matInput","","type","password","placeholder","confirm new password","required","","name","Password",3,"ngModel","ngModelChange"],["mat-button","",1,"mat-primary","mat-flat-button",3,"click"],[1,"group-checkbox"],[1,"group-name"],[1,"loading-container"],["mode","indeterminate",1,"spinner",3,"color"],[1,"submitted-container"],[1,"submit-message"],["mat-dialog-actions",""],["mat-flat-button","","color","primary","matDialogClose",""],[1,"middle-fill"],["mat-flat-button","","color","primary",3,"disabled","click",4,"ngIf"],["mat-flat-button","","color","primary",3,"disabled","click"],["mat-flat-button","","color","primary",3,"click"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t._uU(1),t.qZA(),t.YNc(2,Ap,3,2,"div",1),t.YNc(3,wp,4,2,"div",2),t.YNc(4,Wh,3,1,"div",3),t.YNc(5,Gh,6,2,"div",4),t.YNc(6,Kh,4,0,"div",4)),2&l&&(t.Q6J("ngClass",t.VKq(7,lm,i.isError)),t.xp6(1),t.Oqu(i.message),t.xp6(1),t.Q6J("ngIf",!i.submitted),t.xp6(1),t.Q6J("ngIf",i.user&&i.user.user&&!i.submitted),t.xp6(1),t.Q6J("ngIf",i.submitted),t.xp6(1),t.Q6J("ngIf",!i.submitted),t.xp6(1),t.Q6J("ngIf",i.submitted))},directives:[ve.mk,ve.O5,G.uh,G.xY,It.KE,It.hX,$e.Nt,o.Fj,o.Q7,o.JJ,o.On,Xe.oG,y.lW,ve.sg,kt.Ou,G.H8,G.ZT],styles:[".user-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.password-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.loading-container[_ngcontent-%COMP%]{height:200px;margin:auto}.form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row;margin-bottom:15px}.form-row[_ngcontent-%COMP%] .username[_ngcontent-%COMP%]{width:35%}.form-row[_ngcontent-%COMP%] .email[_ngcontent-%COMP%]{width:45%}.form-row[_ngcontent-%COMP%] .active[_ngcontent-%COMP%]{width:20%}.user-field[_ngcontent-%COMP%]{width:90%}.groups-group[_ngcontent-%COMP%]{width:70%}.roles-group[_ngcontent-%COMP%]{width:30%}.group-field[_ngcontent-%COMP%]{width:90%;margin-top:5px} .mat-dialog-content{padding:10px 24px!important}.message[_ngcontent-%COMP%]{margin:auto;text-align:center;padding:10px}.error-msg[_ngcontent-%COMP%]{background:var(--regular-red-color);color:var(--regular-white-color);border:1px solid var(--regular-black-color)}.box-label[_ngcontent-%COMP%]{padding-bottom:10px} .mat-dialog-container{height:unset!important;max-height:90%} .mat-checkbox-label{word-break:break-word!important;white-space:normal!important;white-space:initial!important}.group-checkbox[_ngcontent-%COMP%]{padding-bottom:4px}.submitted-container[_ngcontent-%COMP%]{height:200px;vertical-align:middle;text-align:center;display:-ms-flexbox;display:flex}.submit-message[_ngcontent-%COMP%]{margin:auto;font-size:20px}"]}),g}();function $h(g,A){if(1&g&&(t.TgZ(0,"div",13),t.TgZ(1,"div",14),t._UZ(2,"mat-progress-spinner",15),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.Q6J("color",l.primary)}}function lg(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"th",29),t.TgZ(1,"input",30),t.NdJ("change",function(){return t.CHM(l),t.oxw(2).selectUnselectAll()}),t.qZA(),t._uU(2," (Un)Select All"),t.qZA()}}function um(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"td",31),t.TgZ(1,"input",32),t.NdJ("change",function(){var Ze=t.CHM(l).$implicit;return t.oxw(2).checkListToggle(Ze.user.username)}),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(2);t.xp6(1),t.Q6J("checked",C.isInCheckList(i.user.username))}}function cm(g,A){1&g&&(t.TgZ(0,"th",33),t._uU(1," User Name"),t.qZA())}function Xh(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"td",31),t.TgZ(1,"a",34),t.NdJ("click",function(){var w=t.CHM(l),V=w.$implicit,Ze=w.index;return t.oxw(2).editUser(V.id,Ze)}),t._UZ(2,"mat-icon",35),t._uU(3),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit;t.xp6(3),t.hij(" ",i.user.username," ")}}function Op(g,A){1&g&&(t.TgZ(0,"th",33),t._uU(1," Email"),t.qZA())}function ug(g,A){if(1&g&&(t.TgZ(0,"td",31),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.user.email," ")}}function cg(g,A){1&g&&(t.TgZ(0,"th",33),t._uU(1," Created"),t.qZA())}function dg(g,A){if(1&g&&(t.TgZ(0,"td",31),t._uU(1),t.ALo(2,"date"),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,l.user.created,"medium")," ")}}function pg(g,A){1&g&&(t.TgZ(0,"th",33),t._uU(1," Modified"),t.qZA())}function fg(g,A){if(1&g&&(t.TgZ(0,"td",31),t._uU(1),t.ALo(2,"date"),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",t.xi3(2,1,l.modified,"medium")," ")}}function Dl(g,A){1&g&&(t.TgZ(0,"th",33),t._uU(1,"Active/ Set Inactive"),t.qZA())}function e_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"a",37),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(),w=C.$implicit,V=C.index;return t.oxw(2).deleteUser(w.user.username,V)}),t._UZ(1,"mat-icon",38),t.qZA()}}function t_(g,A){if(1&g&&(t.TgZ(0,"td",31),t._uU(1),t.YNc(2,e_,2,0,"a",36),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij(" ",l.active?"active":"inactive"," "),t.xp6(1),t.Q6J("ngIf",l.active)}}function n_(g,A){1&g&&t._UZ(0,"tr",39)}function dm(g,A){1&g&&t._UZ(0,"tr",40)}var wl=function(){return[5,10,25,100,250,1e3,1e4]};function bd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",13),t.TgZ(1,"table",16),t.NdJ("matSortChange",function(w){return t.CHM(l),t.oxw().sortData(w)}),t.ynx(2,17),t.YNc(3,lg,3,0,"th",18),t.YNc(4,um,2,1,"td",19),t.BQk(),t.ynx(5,20),t.YNc(6,cm,2,0,"th",21),t.YNc(7,Xh,4,1,"td",19),t.BQk(),t.ynx(8,22),t.YNc(9,Op,2,0,"th",21),t.YNc(10,ug,2,1,"td",19),t.BQk(),t.ynx(11,23),t.YNc(12,cg,2,0,"th",21),t.YNc(13,dg,3,4,"td",19),t.BQk(),t.ynx(14,24),t.YNc(15,pg,2,0,"th",21),t.YNc(16,fg,3,4,"td",19),t.BQk(),t.ynx(17,25),t.YNc(18,Dl,2,0,"th",21),t.YNc(19,t_,3,2,"td",19),t.BQk(),t.YNc(20,n_,1,0,"tr",26),t.YNc(21,dm,1,0,"tr",27),t.qZA(),t.TgZ(22,"div"),t.TgZ(23,"mat-paginator",28),t.NdJ("page",function(w){return t.CHM(l),t.oxw().pageChange(w)}),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(1),t.Q6J("dataSource",i.paged),t.xp6(19),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns),t.xp6(2),t.Q6J("length",i.filtered.data&&i.filtered.data.length||0)("pageSize",1e4)("pageSizeOptions",t.DdM(6,wl))}}var pm=function(){var g=function(){function A(l,i,C,w,V){(0,c.Z)(this,A),this.dialog=l,this.overlayContainerService=i,this.adminService=C,this.utilsService=w,this.authService=V,this.filtered=new ue.by,this.searchControl=new o.NI,this.loading=!1,this.showAll=!1,this.showInactive=!1,this.displayedColumns=["checkbox","name","email","created","modified","active"],this.page=0,this.pageSize=1e4,this.users=[],this.checkedList=[],this.showHideActions=!1}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.filtered.paginator=this.paginator,this.overlayContainer=this.overlayContainerService.getContainerElement(),this.showAllUsers(),this.pageChange(),this.searchControl.valueChanges.subscribe(function(C){i.filterList(C,i.users)},function(C){})}},{key:"toggleActions",value:function(){this.showHideActions=!this.showHideActions}},{key:"selectUnselectAll",value:function(){if(this.checkedList.length===this.paged.length)this.checkedList=[];else{this.checkedList=[];var C,i=(0,Yo.Z)(this.paged);try{for(i.s();!(C=i.n()).done;)this.checkedList.push(C.value.user.username)}catch(V){i.e(V)}finally{i.f()}}}},{key:"isInCheckList",value:function(i){var V,C=!1,w=(0,Yo.Z)(this.checkedList);try{for(w.s();!(V=w.n()).done;)V.value===i&&(C=!0)}catch(Ot){w.e(Ot)}finally{w.f()}return C}},{key:"getPagedIndex",value:function(i){var C=0;return this.paged.forEach(function(w,V){w.user.username===i&&(C=V)}),C}},{key:"markSelected",value:function(i){var C="";"inactive"===i&&(C=". If the user is inactive that user won't be able to log in until they've been reactivated"),confirm("Please confirm you would like to set the selected accounts to "+i+C+". \n NOTE: Selecting up to 50 at a time may take some time and so is not adviseable.")&&"inactive"===i&&this.setSelectedToInactive()}},{key:"setSelectedToInactive",value:function(){var C,i=(0,Yo.Z)(this.checkedList);try{for(i.s();!(C=i.n()).done;){var w=C.value,V=this.getPagedIndex(w);this.deleteUsers(w,V)}}catch(Ze){i.e(Ze)}finally{i.f()}}},{key:"checkListToggle",value:function(i){var C=this;this.checkedList.includes(i)?this.checkedList.forEach(function(w,V){w===i&&C.checkedList.splice(V,1)}):this.checkedList.push(i)}},{key:"showAllUsers",value:function(){var i=this;this.loading=!0,this.showAll=!0,this.adminService.getAllUsers().subscribe(function(C){i.users=C,i.filtered.data=C,i.showInactiveUsers(),i.loading=!1}),this.pageChange()}},{key:"showInactiveUsers",value:function(){if(this.showInactive=!this.showInactive,this.showInactive){var i=[];this.users.forEach(function(C){C.active&&i.push(C)}),this.filtered.data=i}else this.filtered.data=this.users;this.searchControl.value&&""!==this.searchControl.value&&this.searchFields(this.searchControl.value),this.pageChange()}},{key:"editUser",value:function(i,C){var w=this,V=this.dialog.open($u,{data:{userID:i,submission:!1},width:"800px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",V.afterClosed().subscribe(function(Ot){if(w.overlayContainer.style.zIndex=null,Ot){w.updateLocalData(Ot,C,i,null);var Bt=w.filtered.data;Bt[C]=Ot,w.filtered.data=Bt,w.pageChange()}})}},{key:"updateLocalData",value:function(i,C,w,V){var Ze=this.users.findIndex(function(cn){return cn.id===i.id});if(this.users[Ze]=i,C){var Bt=this.filtered.data;Bt[C]=i,this.filtered.data=Bt}this.pageChange()}},{key:"deleteUser",value:function(i,C){var w=this;confirm("Are you sure you want to set this user to inactive? If the user is inactive that user won't be able to log in until they've been reactivated.")&&this.adminService.deleteUser(i).subscribe(function(V){var Ze=w.dialog.open($u,{data:{userID:V.id,submission:!0},width:"800px",autoFocus:!1,disableClose:!0});w.overlayContainer.style.zIndex="1002",Ze.afterClosed().subscribe(function(Bt){if(w.overlayContainer.style.zIndex=null,V){w.updateLocalData(V,C,null,i);var cn=w.filtered.data;cn[C]=V,w.filtered.data=cn,w.pageChange()}})})}},{key:"deleteUsers",value:function(i,C){var w=this;this.adminService.deleteUser(i).subscribe(function(V){var Ze=w.dialog.open($u,{data:{userID:V.id,submission:!0},width:"800px",autoFocus:!1,disableClose:!0});w.overlayContainer.style.zIndex="1002",Ze.afterClosed().subscribe(function(Bt){if(w.overlayContainer.style.zIndex=null,V){w.updateLocalData(V,C,null,i);var cn=w.filtered.data;cn[C]=V,w.filtered.data=cn}})})}},{key:"addUser",value:function(){var i=this,C=this.dialog.open($u,{data:{type:"add",submission:!1},width:"800px",autoFocus:!1,disableClose:!0});this.overlayContainer.style.zIndex="1002",C.afterClosed().subscribe(function(V){i.overlayContainer.style.zIndex=null,V&&(i.users.push(V),i.sortData(i.lastSort),i.searchControl.setValue(""))})}},{key:"sortData",value:function(i){var C=this;this.lastSort=i;var w=this.users.slice();if(this.showInactive&&(w=[],this.users.forEach(function(V){V.active&&w.push(V)})),!i.active||""===i.direction)return this.filtered.data=w,void this.pageChange();this.filtered.data=w.sort(function(V,Ze){var Ot="asc"===i.direction;switch(i.active){case"name":return C.utilsService.compare(V.user.username?V.user.username.toUpperCase():"",Ze.user.username?Ze.user.username.toUpperCase():"",Ot);case"active":return C.utilsService.compare(V.active,Ze.active,!Ot);case"email":return C.utilsService.compare(V.user.email||"",Ze.user.email||"",Ot);case"modified":return C.utilsService.compare(V.modified,Ze.modified,Ot);case"created":return C.utilsService.compare(V.created,Ze.created,Ot)}}),this.pageChange()}},{key:"filterList",value:function(i,C){var w=this;null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){w.searchFields(i),clearTimeout(w.searchTimer),w.pageChange(),w.searchTimer=null},700)}},{key:"searchFields",value:function(i){var C=this,w=[];this.users.forEach(function(V){C.showInactive?V.active&&w.push(V):w.push(V)}),this.filtered.data=[],w.forEach(function(V){if(V.user){var Ze=V.user.username?V.user.username.toUpperCase():null,Ot=V.user.email?V.user.email.toUpperCase():null;(null!==Ze&&Ze.indexOf(i.toUpperCase())>-1||null!==Ot&&Ot.indexOf(i.toUpperCase())>-1)&&C.filtered.data.push(V)}})}},{key:"pageChange",value:function(i){null!=i&&(this.page=i.pageIndex,this.pageSize=i.pageSize),this.paged=[];for(var C=this.page*this.pageSize,w=C;w0){var C=i.target.files[0];this.filename=C.name,this.uploadForm.get("file").setValue(C)}}},{key:"openInput",value:function(){document.getElementById("fileInput").click()}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(o.qu),t.Y36(Q),t.Y36(_.F0),t.Y36(_.gz),t.Y36(Jn.b))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-data-management"]],decls:33,vars:8,consts:[[1,"file-select-container"],[3,"formGroup"],[1,"full-row"],[1,"file-row"],["mat-raised-button","",3,"click"],[1,"file-name",3,"ngClass"],["id","fileInput","hidden","","type","file","name","file1","accept",".gsrs, .ginas, .txt.gz",3,"change"],[1,"options-row"],["placeholder","File Type","name","fileType","formControlName","fileType",3,"ngModel","ngModelChange"],["value","JSON","selected",""],["value","SD-default","disabled",""],["value","SD","disabled",""],["name","audit",3,"checked","change"],[1,"full-row","bottom"],[1,"middle-fill"],["type","submit",1,"mat-button","mat-primary","mat-flat-button",3,"disabled","click"],[1,"loading-spinner"],["mode","indeterminate","diameter","44",3,"color",4,"ngIf"],["mode","indeterminate","diameter","44",3,"color"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"form",1),t.TgZ(2,"div",2),t.TgZ(3,"div",3),t.TgZ(4,"div"),t.TgZ(5,"button",4),t.NdJ("click",function(){return i.openInput()}),t._uU(6,"Select File to Upload"),t.qZA(),t.qZA(),t.TgZ(7,"div",5),t._uU(8),t.qZA(),t.TgZ(9,"input",6),t.NdJ("change",function(w){return i.onFileSelect(w)}),t.qZA(),t.qZA(),t.TgZ(10,"div",7),t.TgZ(11,"div"),t.TgZ(12,"mat-form-field"),t.TgZ(13,"mat-select",8),t.NdJ("ngModelChange",function(w){return i.fileType=w}),t.TgZ(14,"mat-option",9),t._uU(15," GSRS Dump File "),t.qZA(),t.TgZ(16,"mat-option",10),t._uU(17," SD File "),t.qZA(),t.TgZ(18,"mat-option",11),t._uU(19," SD File (custom) "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(20,"div"),t.TgZ(21,"mat-checkbox",12),t.NdJ("change",function(){return i.audit=!i.audit}),t._uU(22," Preserve Audit Information "),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(23,"div",13),t._UZ(24,"span",14),t.TgZ(25,"div"),t.TgZ(26,"i"),t._uU(27),t.qZA(),t.qZA(),t.TgZ(28,"button",15),t.NdJ("click",function(){return i.onSubmit()}),t._uU(29,"Upload"),t.qZA(),t.TgZ(30,"div",16),t.YNc(31,Ep,1,1,"mat-progress-spinner",17),t.qZA(),t.qZA(),t.qZA(),t._UZ(32,"div"),t.qZA()),2&l&&(t.xp6(1),t.Q6J("formGroup",i.uploadForm),t.xp6(6),t.Q6J("ngClass",i.filename?"test":"italics"),t.xp6(1),t.Oqu(i.filename?i.filename:"no file chosen"),t.xp6(5),t.Q6J("ngModel",i.fileType),t.xp6(8),t.Q6J("checked",i.audit),t.xp6(6),t.Oqu(i.message),t.xp6(1),t.Q6J("disabled",i.processing||!i.filename),t.xp6(3),t.Q6J("ngIf",i.processing))},directives:[o._Y,o.JL,o.sg,y.lW,ve.mk,It.KE,fa.gD,o.JJ,o.u,Ca.ey,Xe.oG,ve.O5,kt.Ou],styles:[".italics[_ngcontent-%COMP%]{font-style:italic;color:var(--text-color)}.file-name[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;margin-left:15px;margin-top:auto;margin-bottom:auto}.full-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;padding:10px}.load-progress[_ngcontent-%COMP%]{height:17px;margin-bottom:5px;font-size:12px;color:var(--regular-black-color);-webkit-text-fill-color:var(--regular-white-color);-webkit-text-stroke-width:1px;-webkit-text-stroke-color:var(--regular-black-color)}.load-fail[_ngcontent-%COMP%]{margin-top:-22px}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:var(--error);z-index:1}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:var(--error)}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.loading-spinner[_ngcontent-%COMP%]{width:70px}.loading-spinner[_ngcontent-%COMP%] mat-progress-spinner[_ngcontent-%COMP%]{margin:auto}.load-fail-old[_ngcontent-%COMP%]{-ms-transform:rotate(180deg);transform:rotate(180deg);margin-top:-22px}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:var(--error);z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:var(--error);z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.load-success[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.progress-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.progress-container[_ngcontent-%COMP%] .load-progress[_ngcontent-%COMP%]{width:100%}.progress-container[_ngcontent-%COMP%] .bar-label[_ngcontent-%COMP%]{font-size:14px}.spinner-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%]{width:33%;-ms-flex-direction:column;flex-direction:column}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:50px}.count-label[_ngcontent-%COMP%]{margin-top:auto;margin-bottom:auto}.loader-container[_ngcontent-%COMP%]{width:70%;margin:10px}.lower-body[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.stat-container[_ngcontent-%COMP%]{width:30%;margin:10px;min-width:250px}.label-value[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:10px}.label-value[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{width:50%;min-width:125px;font-weight:500}.label-value[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{width:50%}.example-section[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;height:60px}.mirror[_ngcontent-%COMP%]{margin-top:-105px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror[_ngcontent-%COMP%] circle{stroke:var(--error)}.mirror[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:var(--progress-spinner-buffer-bg-color)}.mirror-test[_ngcontent-%COMP%]{margin-left:-125px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror-test[_ngcontent-%COMP%] circle{stroke:var(--error)}.mirror-test[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:var(--progress-spinner-buffer-bg-color)}.overlap[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.deleted[_ngcontent-%COMP%]{margin:auto;padding:10px;color:var(--regular-grey-color);font-style:italics;font-size:18px}.label-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:left;justify-content:left}.label-row[_ngcontent-%COMP%] .count-row-label[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto}.count-cont[_ngcontent-%COMP%]{text-align:center;color:var(--regular-white-color);margin-top:-22px;font-weight:700;z-index:5;font-size:15px}.file-row[_ngcontent-%COMP%]{width:75%;height:40px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.options-row[_ngcontent-%COMP%]{width:25%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.bottom[_ngcontent-%COMP%]{padding-top:50px}"]}),g}(),fm=n(78444),kp=["scroller"];function Cd(g,A){1&g&&(t.TgZ(0,"div",23),t._UZ(1,"hr",24),t.qZA())}function Gs(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",23),t.TgZ(1,"app-fragment-wizard",25),t.NdJ("termUpdated",function(){t.CHM(l);var V=t.oxw(),Ze=V.$implicit,Ot=V.index;return t.oxw().updateStructure(Ze,Ot)}),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit,C=t.oxw();t.xp6(1),t.Q6J("vocab",C.vocabulary.domain)("term",i)}}function mm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",18),t.TgZ(1,"button",6),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(),w=C.$implicit,V=C.index;return t.oxw().editTerms(w,V)}),t._uU(2,"Edit Structure"),t.qZA(),t.qZA()}}function i_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"mat-form-field",13),t.TgZ(2,"input",27),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw().$implicit.regex=w}),t.qZA(),t.qZA(),t.TgZ(3,"mat-form-field",13),t.TgZ(4,"input",28),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw().$implicit.systemCategory=w}),t.qZA(),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit;t.xp6(2),t.Q6J("ngModel",i.regex),t.xp6(2),t.Q6J("ngModel",i.systemCategory)}}function Oc(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"img",33),t.qZA()),2&g){var l=t.oxw(2).$implicit;t.xp6(1),t.Q6J("src",l.simpleSrc,t.LSH)}}function hm(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"img",33),t.qZA()),2&g){var l=t.oxw(2).$implicit;t.xp6(1),t.Q6J("src",l.fragmentSrc,t.LSH)}}function _m(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",26),t.TgZ(1,"div",29),t.TgZ(2,"div"),t.TgZ(3,"mat-form-field",13),t.TgZ(4,"input",30),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw().$implicit.simplifiedStructure=w})("input",function(){t.CHM(l);var w=t.oxw().$implicit,V=t.oxw();return V.checkImg(w,V.event)}),t.qZA(),t.qZA(),t.qZA(),t.YNc(5,Oc,2,1,"div",31),t.qZA(),t.TgZ(6,"div",29),t.TgZ(7,"div"),t.TgZ(8,"mat-form-field",13),t.TgZ(9,"input",32),t.NdJ("ngModelChange",function(w){return t.CHM(l),t.oxw().$implicit.fragmentStructure=w})("input",function(){t.CHM(l);var w=t.oxw().$implicit,V=t.oxw();return V.checkImg(w,V.event)}),t.qZA(),t.qZA(),t.qZA(),t.YNc(10,hm,2,1,"div",31),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit;t.xp6(4),t.Q6J("ngModel",i.simplifiedStructure),t.xp6(1),t.Q6J("ngIf",i.simpleSrc),t.xp6(4),t.Q6J("ngModel",i.fragmentStructure),t.xp6(1),t.Q6J("ngIf",i.fragmentSrc)}}function a_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.YNc(1,Cd,2,0,"div",8),t.YNc(2,Gs,2,2,"ng-template",null,9,t.W1O),t.TgZ(4,"div",10),t.TgZ(5,"button",11),t.NdJ("click",function(){var Bt=t.CHM(l).index;return t.oxw().deleteTerm(Bt)}),t._UZ(6,"mat-icon",12),t.qZA(),t.TgZ(7,"mat-form-field",13),t.TgZ(8,"input",14),t.NdJ("ngModelChange",function(Ot){return t.CHM(l).$implicit.display=Ot}),t.qZA(),t.qZA(),t.TgZ(9,"mat-form-field",13),t.TgZ(10,"input",15),t.NdJ("ngModelChange",function(Ot){return t.CHM(l).$implicit.value=Ot}),t.qZA(),t.qZA(),t.TgZ(11,"mat-form-field",13),t.TgZ(12,"input",16),t.NdJ("ngModelChange",function(Ot){return t.CHM(l).$implicit.description=Ot}),t.qZA(),t.qZA(),t.TgZ(13,"mat-form-field",13),t.TgZ(14,"input",17),t.NdJ("ngModelChange",function(Ot){return t.CHM(l).$implicit.origin=Ot}),t.qZA(),t.qZA(),t.TgZ(15,"div",18),t.TgZ(16,"mat-checkbox",19),t.NdJ("ngModelChange",function(Ot){return t.CHM(l).$implicit.hidden=Ot}),t._uU(17," Hidden "),t.qZA(),t.qZA(),t.TgZ(18,"div",18),t.TgZ(19,"mat-checkbox",20),t.NdJ("ngModelChange",function(Ot){return t.CHM(l).$implicit.selected=Ot}),t._uU(20," Selected "),t.qZA(),t.qZA(),t.YNc(21,mm,3,0,"div",21),t.qZA(),t.YNc(22,i_,5,2,"div",22),t.YNc(23,_m,11,4,"div",22),t.qZA()}if(2&g){var i=A.$implicit,C=A.index,w=A.last,V=t.oxw();t.xp6(1),t.Q6J("ngIf",V.toggled[C]&&"ix.ginas.models.v1.FragmentControlledVocabulary"===V.vocabulary.vocabularyTermType),t.xp6(3),t.Q6J("id",w?"latest-term":null),t.xp6(4),t.Q6J("ngModel",i.display),t.xp6(2),t.Q6J("ngModel",i.value),t.xp6(2),t.Q6J("ngModel",i.description),t.xp6(2),t.Q6J("ngModel",i.origin),t.xp6(2),t.Q6J("ngModel",i.hidden),t.xp6(3),t.Q6J("ngModel",i.selected),t.xp6(2),t.Q6J("ngIf","ix.ginas.models.v1.FragmentControlledVocabulary"===V.vocabulary.vocabularyTermType),t.xp6(1),t.Q6J("ngIf","ix.ginas.models.v1.CodeSystemControlledVocabulary"===V.vocabulary.vocabularyTermType),t.xp6(1),t.Q6J("ngIf","ix.ginas.models.v1.FragmentControlledVocabulary"===V.vocabulary.vocabularyTermType)}}function r_(g,A){if(1&g&&(t.TgZ(0,"div",36),t.TgZ(1,"span"),t._uU(2),t.qZA(),t._uU(3),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Gre("",l.messageType," type"),t.xp6(1),t.hij("",l.messageType," :"),t.xp6(1),t.Oqu(l.message)}}function Ec(g,A){if(1&g&&(t.TgZ(0,"div",34),t.TgZ(1,"div"),t.TgZ(2,"b"),t._uU(3,"CV not valid:"),t.qZA(),t.qZA(),t.YNc(4,r_,4,5,"div",35),t.qZA()),2&g){var l=t.oxw();t.xp6(4),t.Q6J("ngForOf",l.validationMessages)}}var Xu=function(){var g=function(){function A(l,i,C,w,V,Ze){(0,c.Z)(this,A),this.cvService=l,this.dialogRef=i,this.scrollToService=C,this.dialog=w,this.overlayContainerService=V,this.data=Ze,this.validationMessages=[],this.loading=!0,this.toggled=[],this.vocabulary=Ze.vocabulary,this.terms=Ze.vocabulary.terms.sort(function(Ot,Bt){var cn=Ot.value?Ot.value.toUpperCase():"",Fn=Bt.value?Bt.value.toUpperCase():"";return cnFn?1:0})}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.loading=!1,this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"ngAfterViewInit",value:function(){var i=this;"ix.ginas.models.v1.FragmentControlledVocabulary"===this.vocabulary.vocabularyTermType&&this.terms.forEach(function(C){C.simplifiedStructure&&(C.simpleSrc=i.cvService.getStructureUrl(C.simplifiedStructure)),C.fragmentStructure&&(C.fragmentSrc=i.cvService.getStructureUrl(C.fragmentStructure))})}},{key:"updateStructure",value:function(i,C){this.terms[C]=i}},{key:"getStructure",value:function(i){this.cvService.getStructure(i).subscribe(function(C){return C})}},{key:"editTerms",value:function(i,C){var w=this,V=window.pageYOffset,Ot=this.dialog.open(Mu._,{width:"70%",height:"85%",data:{vocabulary:this.vocabulary,domain:this.vocabulary.domain,term:i,adminPanel:!0}});this.overlayContainer.style.zIndex="1003",setTimeout(function(){},3e3),Ot.afterClosed().subscribe(function(cn){window.scroll({top:V,left:0,behavior:"auto"}),cn&&(w.terms[C].simplifiedStructure=cn,w.terms[C].fragmentStructure=cn,w.terms[C].fragmentSrc=w.cvService.getStructureUrl(cn),w.terms[C].simpleSrc=w.cvService.getStructureUrl(cn))})}},{key:"checkImg",value:function(i,C){i.fragmentSrc=this.cvService.getStructureUrl(i.fragmentStructure),i.simpleSrc=this.cvService.getStructureUrl(i.simplifiedStructure)}},{key:"submit",value:function(){var i=this;this.vocabulary.terms=this.terms,this.validationMessages=[],this.cvService.validateVocab(this.vocabulary).subscribe(function(C){C&&C.valid?i.cvService.addVocabTerm(i.vocabulary).subscribe(function(w){i.loading=!1,w.terms&&w.terms.length===i.vocabulary.terms.length&&(alert("vocabulary updated"),setTimeout(function(){i.dialogRef.close(w)},200))},function(w){var V="Invalid Vocabulary";w.error&&w.error.message?V+="\n\n"+w.error.message:w.message&&(V+="\n\n"+w.message),alert(V),i.loading=!1}):C&&C.validationMessages&&C.validationMessages.forEach(function(w){i.validationMessages.push(w)})},function(C){var w="Invalid Vocabulary";C.error&&C.error.message?w+="\n\n"+C.error.message:C.message&&(w+="\n\n"+C.message),alert(w),i.loading=!1}),this.loading=!1}},{key:"cancel",value:function(){this.dialogRef.close()}},{key:"addTerm",value:function(){var i=this;this.terms.push({}),setTimeout(function(){try{i.myScrollContainer.nativeElement.scrollTop=i.myScrollContainer.nativeElement.scrollHeight}catch(C){}},100)}},{key:"deleteTerm",value:function(i){this.terms.splice(i,1)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(zr.I),t.Y36(G.so),t.Y36(fm.i),t.Y36(G.uw),t.Y36(jn.Xj),t.Y36(G.WI))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-cv-term-dialog"]],viewQuery:function(l,i){var C;1&l&&t.Gf(kp,5),2&l&&t.iGM(C=t.CRH())&&(i.myScrollContainer=C.first)},decls:15,vars:3,consts:[["mat-dialog-title","",1,"title"],["mat-dialog-content","",1,"content-fix"],["scroller",""],[4,"ngFor","ngForOf"],["mat-dialog-actions","",1,"actions"],["class","validation",4,"ngIf"],["mat-button","",3,"click"],[1,"middle-fill"],["class","form-row",4,"ngIf"],["index",""],[1,"form-row",3,"id"],["mat-icon-button","",1,"delete-icon",3,"click"],["svgIcon","delete_forever"],[1,"group"],["matInput","","placeholder","Display","required","","name","display",3,"ngModel","ngModelChange"],["matInput","","placeholder","Value","required","","name","value",3,"ngModel","ngModelChange"],["matInput","","placeholder","Description","name","Description",3,"ngModel","ngModelChange"],["matInput","","placeholder","Origin","name","origin",3,"ngModel","ngModelChange"],[1,"checkbox"],["matTooltip","hidden",3,"ngModel","ngModelChange"],["matTooltip","selected",3,"ngModel","ngModelChange"],["class","checkbox",4,"ngIf"],["class","form-row double-row",4,"ngIf"],[1,"form-row"],[2,"width","100%"],[2,"margin","auto",3,"vocab","term","termUpdated"],[1,"form-row","double-row"],["matInput","","placeholder","Format Regex","name","Regex",3,"ngModel","ngModelChange"],["matInput","","placeholder","System Category","name","systemCategory",3,"ngModel","ngModelChange"],[1,"str-column"],["matInput","","placeholder","Simplified Structure","name","simplifiedStructure",3,"ngModel","ngModelChange","input"],[4,"ngIf"],["matInput","","placeholder","Fragment Structure","name","fragmentStructure",3,"ngModel","ngModelChange","input"],[3,"src"],[1,"validation"],["class","message",4,"ngFor","ngForOf"],[1,"message"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"h1"),t._uU(2),t.qZA(),t.qZA(),t.TgZ(3,"div",1,2),t.YNc(5,a_,24,11,"div",3),t.qZA(),t.TgZ(6,"div",4),t.YNc(7,Ec,5,1,"div",5),t.TgZ(8,"button",6),t.NdJ("click",function(){return i.addTerm()}),t._uU(9,"Add term"),t.qZA(),t._UZ(10,"span",7),t.TgZ(11,"button",6),t.NdJ("click",function(){return i.cancel()}),t._uU(12,"Cancel"),t.qZA(),t.TgZ(13,"button",6),t.NdJ("click",function(){return i.submit()}),t._uU(14," Save "),t.qZA(),t.qZA()),2&l&&(t.xp6(2),t.hij(" Add Term to CV - ",i.vocabulary.domain," "),t.xp6(3),t.Q6J("ngForOf",i.terms),t.xp6(2),t.Q6J("ngIf",i.validationMessages.length>0))},directives:[G.uh,G.xY,ve.sg,ve.O5,Mu._,y.lW,Y.Hw,It.KE,$e.Nt,o.Fj,o.Q7,o.JJ,o.On,Xe.oG,Me.gM,G.H8],styles:[".form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}.double-row[_ngcontent-%COMP%]{-ms-flex-pack:space-evenly;justify-content:space-evenly}.validation[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;margin-bottom:5px}.ERROR[_ngcontent-%COMP%]{background-color:var(--regular-red-color);color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color);padding:4px 5px;margin-right:5px;border-radius:5px}.WARNING[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color);padding:4px 5px;margin-right:5px;border-radius:5px}.INFO[_ngcontent-%COMP%]{color:var(--regular-black-color);background-color:var(--regular-lightgray-color);padding:4px 5px;margin-right:5px;border-radius:5px}.message[_ngcontent-%COMP%]{padding-top:5px;padding-left:15px}.content-fix[_ngcontent-%COMP%]{min-height:250px;padding:15px 20px}.src-column[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:50%}.actions[_ngcontent-%COMP%]{height:75px}.title[_ngcontent-%COMP%]{height:42px}.loading-container[_ngcontent-%COMP%]{max-height:calc(100% - 150px);min-height:250px;width:100%;-ms-flex-line-pack:center;align-content:center} .mat-dialog-container{height:unset!important;max-height:90%}.delete-icon[_ngcontent-%COMP%]{margin-bottom:20px}"]}),g}(),Ip=n(78573);function ec(g,A){1&g&&(t.TgZ(0,"th",22),t._uU(1," Domain "),t.qZA())}function Zc(g,A){if(1&g&&(t.TgZ(0,"td",23),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Oqu(l.domain)}}function tc(g,A){1&g&&(t.TgZ(0,"th",24),t._uU(1," Substance Fields "),t.qZA())}function o_(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=A.$implicit,i=A.index,C=A.last,w=t.oxw().index,V=t.oxw(3);t.xp6(1),t.lnq(" ",V.toggle[w]||i<2?l+" ":""," ",(V.toggle[w]||i<1)&&!C?", ":""," ",V.toggle[w]||1!==i||C?"":"..."," ")}}function gm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"span",28),t.TgZ(1,"a",29),t.NdJ("click",function(){t.CHM(l);var V=t.oxw().index,Ze=t.oxw(3);return Ze.toggle[V]=!Ze.toggle[V]}),t._uU(2),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().index,C=t.oxw(3);t.xp6(2),t.hij("",C.toggle[i]?"hide":"show all"," ")}}function vm(g,A){if(1&g&&(t.TgZ(0,"td",23),t.TgZ(1,"span",25),t.TgZ(2,"span"),t.YNc(3,o_,2,3,"span",26),t.qZA(),t.YNc(4,gm,3,1,"span",27),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.xp6(3),t.Q6J("ngForOf",i.dictionary[l.domain]),t.xp6(1),t.Q6J("ngIf",i.dictionary[l.domain]&&i.dictionary[l.domain].length>2)}}function cs(g,A){1&g&&(t.TgZ(0,"th",24),t._uU(1," Vocabulary Term Type "),t.qZA())}function Lp(g,A){if(1&g&&(t.TgZ(0,"td",23),t._uU(1),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.xp6(1),t.hij("",i.getVocabType(l.vocabularyTermType)," ")}}function ym(g,A){1&g&&(t.TgZ(0,"th",24),t._uU(1," Count "),t.qZA())}function pl(g,A){if(1&g&&(t.TgZ(0,"td",23),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.hij("",l.terms.length," ")}}function La(g,A){1&g&&(t.TgZ(0,"th",30),t._uU(1," Edit "),t.qZA())}function bm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"td",23),t.TgZ(1,"div",31),t.TgZ(2,"button",32),t.NdJ("click",function(){var w=t.CHM(l).$implicit,V=t.oxw(3);return V.editTerms(w,V.index)}),t._uU(3,"edit"),t.qZA(),t.qZA(),t.qZA()}}function Xo(g,A){1&g&&t._UZ(0,"tr",33)}function Vr(g,A){1&g&&t._UZ(0,"tr",34)}function Cm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",9),t.TgZ(1,"table",10),t.NdJ("matSortChange",function(w){return t.CHM(l),t.oxw(2).sortData(w)}),t.ynx(2,11),t.YNc(3,ec,2,0,"th",12),t.YNc(4,Zc,2,1,"td",13),t.BQk(),t.ynx(5,14),t.YNc(6,tc,2,0,"th",15),t.YNc(7,vm,5,2,"td",13),t.BQk(),t.ynx(8,16),t.YNc(9,cs,2,0,"th",15),t.YNc(10,Lp,2,1,"td",13),t.BQk(),t.ynx(11,17),t.YNc(12,ym,2,0,"th",15),t.YNc(13,pl,2,1,"td",13),t.BQk(),t.ynx(14,18),t.YNc(15,La,2,0,"th",19),t.YNc(16,bm,4,0,"td",13),t.BQk(),t.YNc(17,Xo,1,0,"tr",20),t.YNc(18,Vr,1,0,"tr",21),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.xp6(1),t.Q6J("dataSource",i.filtered),t.xp6(16),t.Q6J("matHeaderRowDef",i.displayedColumns),t.xp6(1),t.Q6J("matRowDefColumns",i.displayedColumns)}}function ou(g,A){if(1&g&&(t.TgZ(0,"div",2),t.TgZ(1,"div",3),t.TgZ(2,"a",4),t._uU(3," Download CV as JSON"),t.qZA(),t._UZ(4,"span",5),t.TgZ(5,"mat-form-field",6),t._UZ(6,"input",7),t.qZA(),t.qZA(),t.YNc(7,Cm,19,3,"div",8),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.Q6J("href",l.downloadHref,t.LSH),t.xp6(3),t.Q6J("floatLabel","never"),t.xp6(1),t.Q6J("formControl",l.searchControl),t.xp6(1),t.Q6J("ngIf",!1===l.loading)}}function Ks(g,A){if(1&g&&(t.TgZ(0,"div",35),t._UZ(1,"mat-progress-spinner",36),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("color",l.primary)}}var s_=function(){var g=function(){function A(l,i,C,w,V,Ze){(0,c.Z)(this,A),this.cvService=l,this.dialog=i,this.overlayContainerService=C,this.utilsService=w,this.sanitizer=V,this.dictionaryService=Ze,this.vocabularies=[],this.displayedColumns=["domain","type","path","terms","edit"],this.vocabType=[],this.searchControl=new o.NI,this.toggle=[]}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.getVocab(),this.overlayContainer=this.overlayContainerService.getContainerElement()}},{key:"getVocab",value:function(){var i=this;this.loading=!0,this.cvService.getVocabularies(null,1e3).subscribe(function(C){i.loading=!1,i.dictionary=i.dictionaryService.getCVDomainRows(),i.vocabularies=C.content,i.filtered=i.vocabularies,i.vocabularies.forEach(function(w){"VOCAB_TYPE"===w.domain&&(i.vocabType=w.terms),i.searchControl.valueChanges.subscribe(function(V){i.filterList(V,i.vocabularies)},function(V){i.loading=!1,alert("The controlled vocabulary has failed to load from the server"+(V&&V.message?"with the following message \n\n"+V.message:""))})}),i.downloadHref=i.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(i.vocabularies))),i.sortData({active:"domain",direction:"asc"})})}},{key:"getVocabType",value:function(i){return this.vocabType.forEach(function(C){C.value===i&&(i=C.display)}),i}},{key:"getPath",value:function(i){return this.dictionary[i]?this.dictionary[i]:""}},{key:"editTerms",value:function(i,C){var w=this,V=window.pageYOffset;window.scroll({top:0,left:0,behavior:"auto"});var Ze=this.dialog.open(Xu,{data:{vocabulary:i},width:"1200px"});this.overlayContainer.style.zIndex="1002",Ze.afterClosed().subscribe(function(Bt){window.scroll({top:V,left:0,behavior:"auto"}),w.overlayContainer.style.zIndex=null,Bt&&w.getVocab()})}},{key:"sortData",value:function(i){var C=this,w=this.vocabularies.slice();this.filtered=i.active&&""!==i.direction?w.sort(function(V,Ze){return C.utilsService.compare(V[i.active],Ze[i.active],"asc"===i.direction)}):w}},{key:"download",value:function(){var i=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.vocabularies)));this.downloadHref=i}},{key:"filterList",value:function(i,C){var w=this;null!=this.searchTimer&&clearTimeout(this.searchTimer),this.searchTimer=setTimeout(function(){w.filtered=[],C.forEach(function(V){V.domain.indexOf(i.toUpperCase())>-1&&w.filtered.push(V)}),clearTimeout(w.searchTimer),w.searchTimer=null},700)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(zr.I),t.Y36(G.uw),t.Y36(jn.Xj),t.Y36(ce.FW),t.Y36(S.H7),t.Y36(Ip.e))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-cv-management"]],decls:2,vars:2,consts:[["class","management-container",4,"ngIf"],["class","loading-container",4,"ngIf"],[1,"management-container"],[1,"flex-row"],["download","full-CV.json",1,"mat-button","mat-primary","mat-flat-button","button-fix",3,"href"],[1,"middle-fill"],[1,"search",3,"floatLabel"],["matInput","","placeholder","Search",3,"formControl"],["class","responsive",4,"ngIf"],[1,"responsive"],["mat-table","","matSort","",3,"dataSource","matSortChange"],["matColumnDef","domain"],["mat-header-cell","","mat-sort-header","","start","asc",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","path"],["mat-header-cell","","mat-sort-header","",4,"matHeaderCellDef"],["matColumnDef","type"],["matColumnDef","terms"],["matColumnDef","edit"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell","","mat-sort-header","","start","asc"],["mat-cell",""],["mat-header-cell","","mat-sort-header",""],[1,"inline"],[4,"ngFor","ngForOf"],["class","show-button",4,"ngIf"],[1,"show-button"],[3,"click"],["mat-header-cell",""],[1,"edit"],[1,"mat-button","mat-flat-button",3,"click"],["mat-header-row",""],["mat-row",""],[1,"loading-container"],["mode","indeterminate",1,"spinner",3,"color"]],template:function(l,i){1&l&&(t.YNc(0,ou,8,4,"div",0),t.YNc(1,Ks,2,1,"div",1)),2&l&&(t.Q6J("ngIf",!1===i.loading),t.xp6(1),t.Q6J("ngIf",!0===i.loading))},directives:[ve.O5,It.KE,$e.Nt,o.Fj,o.JJ,o.oH,ue.BZ,lt.YE,ue.w1,ue.fO,ue.ge,lt.nU,ue.Dz,ue.ev,ve.sg,ue.as,ue.XQ,ue.nj,ue.Gk,kt.Ou],styles:[".vocab-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-line-pack:distribute;align-content:space-around;padding:10px}.vocab-row[_ngcontent-%COMP%] .domain[_ngcontent-%COMP%], .vocab-row[_ngcontent-%COMP%] .count[_ngcontent-%COMP%], .vocab-row[_ngcontent-%COMP%] .editable[_ngcontent-%COMP%], .vocab-row[_ngcontent-%COMP%] .edit[_ngcontent-%COMP%]{width:20%}.search[_ngcontent-%COMP%]{width:400px;max-width:100%;margin-right:20px}.icon-align[_ngcontent-%COMP%]{margin-top:-10px;vertical-align:bottom}.management-container[_ngcontent-%COMP%]{min-width:900px;max-width:1500px}.button-fix[_ngcontent-%COMP%]{height:46px;line-height:46px} .cdk-overlay-pane{max-height:90%} .mat-dialog-container{height:unset!important;max-height:90%}.mat-dialog-content[_ngcontent-%COMP%]{max-height:95%}.loading-container[_ngcontent-%COMP%]{height:90%;width:100%;-ms-flex-line-pack:center;align-content:center;padding:50px}.spinner[_ngcontent-%COMP%]{margin:auto}.show-button[_ngcontent-%COMP%]{padding-left:10px;color:var(--link-color);font-size:14px}"]}),g}(),nc=n(49382),ds=n.n(nc),Md=new t.OlP("NGX_MOMENT_OPTIONS"),Au=_e,Tm=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.cdRef=l,this.ngZone=i}return(0,e.Z)(A,[{key:"format",value:function(i){return i.from(Au(),this.lastOmitSuffix)}},{key:"transform",value:function(i,C,w){return this.hasChanged(i,C)?(this.lastTime=this.getTime(i),this.lastValue=i,this.lastOmitSuffix=C,this.lastLocale=this.getLocale(i),this.formatFn=w||this.format.bind(this),this.removeTimer(),this.createTimer(),this.lastText=this.formatFn(Au(i))):this.createTimer(),this.lastText}},{key:"ngOnDestroy",value:function(){this.removeTimer()}},{key:"createTimer",value:function(){var i=this;if(!this.currentTimer){var C=Au(this.lastValue),w=1e3*this.getSecondsUntilUpdate(C);this.currentTimer=this.ngZone.runOutsideAngular(function(){return"undefined"!=typeof window?window.setTimeout(function(){i.lastText=i.formatFn(Au(i.lastValue)),i.currentTimer=null,i.ngZone.run(function(){return i.cdRef.markForCheck()})},w):null})}}},{key:"removeTimer",value:function(){this.currentTimer&&(window.clearTimeout(this.currentTimer),this.currentTimer=null)}},{key:"getSecondsUntilUpdate",value:function(i){var C=Math.abs(Au().diff(i,"minute"));return C<1?1:C<60?30:C<180?300:3600}},{key:"hasChanged",value:function(i,C){return this.getTime(i)!==this.lastTime||this.getLocale(i)!==this.lastLocale||C!==this.lastOmitSuffix}},{key:"getTime",value:function(i){return(0,_e.isDate)(i)?i.getTime():(0,_e.isMoment)(i)?i.valueOf():Au(i).valueOf()}},{key:"getLocale",value:function(i){return(0,_e.isMoment)(i)?i.locale():(0,_e.locale)()}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(t.sBO,16),t.Y36(t.R0b,16))},g.\u0275pipe=t.Yjl({name:"amTimeAgo",type:g,pure:!1}),g}(),Ya=function(){var g=function(){function A(){(0,c.Z)(this,A)}return(0,e.Z)(A,null,[{key:"forRoot",value:function(i){return{ngModule:A,providers:[{provide:Md,useValue:Object.assign({},i)}]}}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({}),g}();function kc(g,A){1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-progress-spinner",19),t.TgZ(2,"div"),t._uU(3,"Running task ... "),t.qZA(),t.qZA())}function qo(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",20),t.TgZ(2,"div"),t.TgZ(3,"div",21),t._uU(4,"Next Run Time"),t.qZA(),t.TgZ(5,"i"),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(6),t.Oqu(l.momentTime(l.job.nextRun))}}function Td(g,A){if(1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",22),t.TgZ(2,"div"),t.TgZ(3,"div",21),t.TgZ(4,"i"),t._uU(5,"Schedule Disabled"),t.qZA(),t.qZA(),t.TgZ(6,"i"),t.TgZ(7,"s"),t._uU(8),t.ALo(9,"amTimeAgo"),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(8),t.Oqu(t.lcZ(9,1,l.job.nextRun))}}function h_(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,qo,7,1,"div",4),t.YNc(2,Td,10,3,"div",4),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",l.job.enabled),t.xp6(1),t.Q6J("ngIf",!l.job.enabled)}}function mr(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",23),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2);return C.execute(C.job)}),t._uU(1," (execute now) "),t.qZA()}}function Yp(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",24),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2);return C.cancel(C.job)}),t._uU(1," (click to cancel) "),t.qZA()}}function qp(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Description:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.job.description)}}function Ad(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Cron Schedule:"),t.qZA(),t.TgZ(3,"div",13),t.TgZ(4,"div"),t.TgZ(5,"code"),t._uU(6),t.qZA(),t.qZA(),t.TgZ(7,"div"),t.TgZ(8,"i"),t._uU(9),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(6),t.Oqu(l.job.cronSchedule),t.xp6(3),t.hij(" (",l.cronTime(l.job.cronSchedule),") ")}}function __(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Number of times run:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.job.numberOfRuns)}}function Hp(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Last Execution Duration:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.job.lastDurationHuman)}}function hg(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"div",12),t._uU(2,"Message:"),t.qZA(),t.TgZ(3,"div",13),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.job.taskDetails.message)}}function g_(g,A){if(1&g&&(t.TgZ(0,"div",25),t.TgZ(1,"span",26),t._uU(2,"Last started: "),t.qZA(),t.TgZ(3,"span",27),t._uU(4),t.ALo(5,"amTimeAgo"),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(3),t.s9C("matTooltip",l.formatDate(l.job.lastStarted)),t.xp6(1),t.Oqu(t.lcZ(5,2,l.job.lastStarted))}}function Pm(g,A){if(1&g&&(t.TgZ(0,"div",25),t.TgZ(1,"span",26),t._uU(2,"Last ended: "),t.qZA(),t.TgZ(3,"span",27),t._uU(4),t.ALo(5,"amTimeAgo"),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(3),t.s9C("matTooltip",l.formatDate(l.job.lastFinished)),t.xp6(1),t.Oqu(t.lcZ(5,2,l.job.lastFinished))}}function Dm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"button",24),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2);return C.enable(C.job)}),t._uU(2," (click to enable task) "),t.qZA(),t.qZA()}}function wm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",5),t.TgZ(1,"button",24),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2);return C.disable(C.job)}),t._uU(2," (click to disable task) "),t.qZA(),t.qZA()}}function Om(g,A){if(1&g&&(t.TgZ(0,"div",1),t.TgZ(1,"div",2),t.TgZ(2,"div",3),t.YNc(3,kc,4,0,"div",4),t.YNc(4,h_,3,2,"div",4),t.qZA(),t.TgZ(5,"div",5),t.YNc(6,mr,2,0,"button",6),t.YNc(7,Yp,2,0,"button",7),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.YNc(10,qp,5,1,"div",10),t.TgZ(11,"div",11),t.TgZ(12,"div",12),t._uU(13,"Enabled:"),t.qZA(),t.TgZ(14,"div",13),t._uU(15),t.qZA(),t.qZA(),t.YNc(16,Ad,10,2,"div",10),t.YNc(17,__,5,1,"div",14),t.YNc(18,Hp,5,1,"div",10),t.YNc(19,hg,5,1,"div",10),t.qZA(),t.qZA(),t.TgZ(20,"div",15),t.TgZ(21,"div",16),t.YNc(22,g_,6,4,"div",17),t.YNc(23,Pm,6,4,"div",17),t.qZA(),t.YNc(24,Dm,3,0,"div",18),t.YNc(25,wm,3,0,"div",18),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(3),t.Q6J("ngIf",l.job.running||l.quickLoad),t.xp6(1),t.Q6J("ngIf",!l.job.running&&!l.quickLoad),t.xp6(2),t.Q6J("ngIf",!l.job.running&&!l.quickLoad),t.xp6(1),t.Q6J("ngIf",l.job.running||l.quickLoad),t.xp6(3),t.Q6J("ngIf",l.job.description),t.xp6(5),t.Oqu(l.job.enabled),t.xp6(1),t.Q6J("ngIf",l.job.cronSchedule),t.xp6(1),t.Q6J("ngIf",l.job.numberOfRuns),t.xp6(1),t.Q6J("ngIf",l.job.lastDurationHuman),t.xp6(1),t.Q6J("ngIf",l.job.taskDetails),t.xp6(3),t.Q6J("ngIf",l.job.lastStarted),t.xp6(1),t.Q6J("ngIf",l.job.lastFinished),t.xp6(1),t.Q6J("ngIf",!l.job.enabled),t.xp6(1),t.Q6J("ngIf",l.job.enabled)}}var Em=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.adminService=l,this.quickLoad=!1}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.monitor=this.pollIn,this.refresh(!0)}},{key:"ngOnDestroy",value:function(){this.monitor=!1,this.refresh(!1),this.stopMonitor()}},{key:"momentTime",value:function(i){return _e(i).fromNow()}},{key:"cronTime",value:function(i){return ds().toString(i)}},{key:"refresh",value:function(i){var C=this;this.adminService.fetchJob(this.job.id).pipe((0,J.q)(1)).subscribe(function(w){if(C.job=w,!C.job.running&&C.job.lastFinished){var V=_e.duration(C.job.lastFinished-C.job.lastStarted),Ze="";0!==V.years()&&(Ze+=V.years()+(V.years()>1?" years, ":" year, ")),0!==V.months()&&(Ze+=V.months()+(V.months()>1?" months, ":" month, ")),0!==V.days()&&(Ze+=V.days()+(V.days()>1?" days, ":" day, ")),0!==V.hours()&&(Ze+=V.hours()+(V.hours()>1?" hrs, ":" hr, ")),0!==V.minutes()&&(Ze+=V.minutes()+(V.minutes()," min, ")),0!==V.seconds()?Ze+=V.seconds()+(V.seconds()," sec"):""===Ze&&(Ze=C.job.lastFinished-C.job.lastStarted+" ms"),C.job.lastDurationHuman=Ze}C.quickLoad=!1,C.monitor&&i&&(C.mess="Polling ... "+w.status,C.job.running?setTimeout(function(){C.refresh(!0)},Math.min(C.untilNextRun(),200)):setTimeout(function(){C.refresh(!0)},Math.min(C.untilNextRun(),1e4)))},function(w){C.monitor=!1,console.log(w)})}},{key:"untilNextRun",value:function(){var i=new Date;return this.job.nextRun-(i.getTime()-0)}},{key:"stopMonitor",value:function(){this.monitor=!1}},{key:"disable",value:function(i){var C=this;this.adminService.runJob(i["@disable"]).pipe((0,J.q)(1)).subscribe(function(w){C.refresh()})}},{key:"enable",value:function(i){var C=this;this.adminService.runJob(i["@enable"]).pipe((0,J.q)(1)).subscribe(function(w){C.refresh()})}},{key:"execute",value:function(i){var C=this;this.quickLoad=!0,this.adminService.runJob(i["@execute"]).pipe((0,J.q)(1)).subscribe(function(w){C.refresh(!0)},function(w){setTimeout(function(){C.refresh()})})}},{key:"cancel",value:function(i){var C=this;this.adminService.runJob(i["@cancel"]).pipe((0,J.q)(1)).subscribe(function(w){C.refresh()})}},{key:"formatDate",value:function(i){return new Date(i)+""}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Q))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-scheduled-job"]],inputs:{job:"job",pollIn:"pollIn"},decls:1,vars:1,consts:[["class","panel panel-default sub-list","class","form-row job-container",4,"ngIf"],[1,"form-row","job-container"],[1,"side-bar","text-center"],[1,"job-settings"],[4,"ngIf"],[1,"bottom-button"],["class","mat-flat-button mat-primary","color","primary","mat-button","",3,"click",4,"ngIf"],["mat-button","","class","mat-flat-button mat-primary","color","primary",3,"click",4,"ngIf"],[1,"main-bar"],[1,"main-container"],["class","table-row",4,"ngIf"],[1,"table-row"],[1,"label","table-label"],[1,"table-value"],["class","table-row ",4,"ngIf"],[1,"end-bar"],[1,"job-dates"],["class","table-row time-row",4,"ngIf"],["class","bottom-button",4,"ngIf"],["color","primary","mode","indeterminate",1,"spinner"],["svgIcon","alarm-on",1,"spinner"],[1,"label"],["svgIcon","cancel",1,"spinner"],["color","primary","mat-button","",1,"mat-flat-button","mat-primary",3,"click"],["mat-button","","color","primary",1,"mat-flat-button","mat-primary",3,"click"],[1,"table-row","time-row"],[1,"time-label"],[1,"time-field",3,"matTooltip"]],template:function(l,i){1&l&&t.YNc(0,Om,26,14,"div",0),2&l&&t.Q6J("ngIf",i.job)},directives:[ve.O5,kt.Ou,Y.Hw,y.lW,Me.gM],pipes:[Tm],styles:[".form-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.form-row[_ngcontent-%COMP%] .side-bar[_ngcontent-%COMP%]{width:30%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%] .end-bar[_ngcontent-%COMP%]{width:20%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.form-row[_ngcontent-%COMP%] .main-bar[_ngcontent-%COMP%]{width:50%}.job-container[_ngcontent-%COMP%]{padding:10px;margin:10px}.job-dates[_ngcontent-%COMP%]{width:100%;-ms-flex-positive:1;flex-grow:1;min-height:70px}.spinner[_ngcontent-%COMP%]{height:100px;width:100px;margin:auto}.label[_ngcontent-%COMP%]{font-weight:700}.table-label[_ngcontent-%COMP%]{min-width:110px;max-width:150px;margin-right:20px}.table-value[_ngcontent-%COMP%]{width:calc(100% - 170px);word-wrap:break-word}.table-row[_ngcontent-%COMP%]{margin-bottom:15px;width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-line-pack:initial;align-content:initial}.bottom-button[_ngcontent-%COMP%]{margin:auto}.job-settings[_ngcontent-%COMP%]{width:100%;-ms-flex-positive:1;flex-grow:1}.time-field[_ngcontent-%COMP%]{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;padding-left:29px;padding-top:5px}.time-field[_ngcontent-%COMP%], .time-label[_ngcontent-%COMP%]{width:100%}.time-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}"]}),g}();function Ol(g,A){if(1&g&&(t.TgZ(0,"mat-card",4),t._UZ(1,"app-scheduled-job",5),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("job",l)}}function Pd(g,A){1&g&&(t.TgZ(0,"mat-card",6),t.TgZ(1,"h3"),t._uU(2,"No scheduled tasks"),t.qZA(),t.qZA())}function v_(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,Ol,2,1,"mat-card",2),t.YNc(2,Pd,3,0,"mat-card",3),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngForOf",l.jobs),t.xp6(1),t.Q6J("ngIf",!l.jobs.length)}}function y_(g,A){if(1&g&&(t.TgZ(0,"div",7),t._UZ(1,"mat-progress-spinner",8),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("color",l.primary)}}var Zm=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.adminService=l,this.jobs=[]}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.loading=!0,setTimeout(function(){i.adminService.fetchJobs().pipe((0,J.q)(1)).subscribe(function(C){i.loading=!1,i.jobs=C.content})},1e3)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Q))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-scheduled-jobs"]],decls:2,vars:2,consts:[[4,"ngIf"],["class","loading-container",4,"ngIf"],["class","form-row",4,"ngFor","ngForOf"],["class","no-jobs",4,"ngIf"],[1,"form-row"],["pollIn","true",3,"job"],[1,"no-jobs"],[1,"loading-container"],["mode","indeterminate",1,"progress-spinner",3,"color"]],template:function(l,i){1&l&&(t.YNc(0,v_,3,2,"div",0),t.YNc(1,y_,2,1,"div",1)),2&l&&(t.Q6J("ngIf",!1===i.loading),t.xp6(1),t.Q6J("ngIf",!0===i.loading))},directives:[ve.O5,ve.sg,xi.a8,Em,kt.Ou],styles:[".form-row[_ngcontent-%COMP%]{width:100%;margin-top:20px}.job-container[_ngcontent-%COMP%]{padding:10px;margin:20px;border:1px solid var(--border-color)}.spinner[_ngcontent-%COMP%]{height:40px;width:40px}.loading-container[_ngcontent-%COMP%]{height:90%;width:100%;-ms-flex-line-pack:center;align-content:center;padding:50px}.progress-spinner[_ngcontent-%COMP%]{margin:auto}"]}),g}();function Dd(g,A){if(1&g&&(t.TgZ(0,"a",9),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.Q6J("href",l.hasLink,t.LSH),t.xp6(1),t.hij(" ",l.text," ")}}function Ic(g,A){if(1&g&&(t.TgZ(0,"span"),t._uU(1),t.qZA()),2&g){var l=t.oxw().$implicit;t.xp6(1),t.hij(" ",l.text," ")}}function Vp(g,A){if(1&g&&(t.TgZ(0,"mat-tree-node",5),t._UZ(1,"button",6),t.YNc(2,Dd,2,2,"a",7),t.YNc(3,Ic,2,1,"span",8),t.qZA()),2&g){var l=A.$implicit;t.xp6(2),t.Q6J("ngIf",l.hasLink),t.xp6(1),t.Q6J("ngIf",!l.hasLink)}}function Lc(g,A){if(1&g&&(t.TgZ(0,"mat-tree-node",5),t.TgZ(1,"button",10),t.TgZ(2,"mat-icon",11),t._uU(3),t.qZA(),t.qZA(),t._uU(4),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(2);t.xp6(1),t.uIk("aria-label","toggle "+l.name),t.xp6(2),t.hij(" ",i.treeControl.isExpanded(l)?"expand_more":"chevron_right"," "),t.xp6(1),t.hij(" ",l.name," ")}}function km(g,A){if(1&g&&(t.TgZ(0,"mat-tree",2),t.YNc(1,Vp,4,2,"mat-tree-node",3),t.YNc(2,Lc,5,3,"mat-tree-node",4),t.qZA()),2&g){var l=t.oxw();t.Q6J("dataSource",l.dataSource)("treeControl",l.treeControl),t.xp6(2),t.Q6J("matTreeNodeDefWhen",l.hasChild)}}var Xr=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.adminService=l,this.loadingService=i,this._transformer=function(C,w){return{expandable:!!C.children&&C.children.length>0,name:C.id,text:C.text,level:w,hasLink:C.hasLink}},this.treeControl=new De.C2(function(C){return C.level},function(C){return C.expandable}),this.treeFlattener=new Be.JZ(this._transformer,function(C){return C.level},function(C){return C.expandable},function(C){return C.children}),this.dataSource=new Be.kc(this.treeControl,this.treeFlattener),this.hasChild=function(C,w){return w.expandable}}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.loadingService.setLoading(!0),this.adminService.getFiles().pipe((0,J.q)(1)).subscribe(function(C){var V,w=(0,Yo.Z)(C);try{for(w.s();!(V=w.n()).done;){var Ze=V.value;!1===Ze.isDir&&(Ze.hasLink=i.adminService.getDownloadLink(Ze.id))}}catch(Bt){w.e(Bt)}finally{w.f()}var Ot=i.listToTree(C);i.dataSource.data=Ot,i.loadingService.setLoading(!1)},function(C){return i.loadingService.setLoading(!1)})}},{key:"listToTree",value:function(i){var V,Bt,C={},w=[],Ze=0,Ot=(0,Yo.Z)(i);try{for(Ot.s();!(Bt=Ot.n()).done;){var cn=Bt.value;C[cn.id]=Ze,Ze++,cn.children=[],cn.order=1===Ze?"primary":Ze%2==0?"even":"odd"}}catch(fi){Ot.e(fi)}finally{Ot.f()}var Bn,Fn=(0,Yo.Z)(i);try{for(Fn.s();!(Bn=Fn.n()).done;)"#"!==(V=Bn.value).parent?i[C[V.parent]].children.push(V):w.push(V)}catch(fi){Fn.e(fi)}finally{Fn.f()}return w}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Q),t.Y36(Jn.b))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-all-files"]],decls:3,vars:1,consts:[[1,"description"],[3,"dataSource","treeControl",4,"ngIf"],[3,"dataSource","treeControl"],["class","file-node","matTreeNodePadding","",4,"matTreeNodeDef"],["class","file-node","matTreeNodePadding","",4,"matTreeNodeDef","matTreeNodeDefWhen"],["matTreeNodePadding","",1,"file-node"],["mat-icon-button","","disabled",""],["class","log-link","target","_blank","matTooltip","click to download",3,"href",4,"ngIf"],[4,"ngIf"],["target","_blank","matTooltip","click to download",1,"log-link",3,"href"],["mat-icon-button","","matTreeNodeToggle",""],[1,"mat-icon-rtl-mirror"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t._uU(1,"Click the chevrons to expand / collapse a folder. Click on a log file to download"),t.qZA(),t.YNc(2,km,3,3,"mat-tree",1)),2&l&&(t.xp6(2),t.Q6J("ngIf",i.dataSource))},directives:[ve.O5,Be.gi,Be.fQ,Be.uo,Be.ah,y.lW,Me.gM,Be.eu,Y.Hw],styles:[".file-node[_ngcontent-%COMP%]{height:30px;min-height:30px}.log-link[_ngcontent-%COMP%]{color:var(--link-color);text-decoration:none}.description[_ngcontent-%COMP%]{margin-bottom:20px}"]}),g}();function Ho(g,A){1&g&&t._uU(0," Server Status ")}function Im(g,A){1&g&&t._uU(0," User Management ")}function Lm(g,A){1&g&&(t.TgZ(0,"h2",4),t._uU(1,"User Management"),t.qZA(),t.TgZ(2,"mat-card",5),t._UZ(3,"app-user-management",6),t.qZA())}function b_(g,A){1&g&&t._uU(0," Data Management ")}function Fc(g,A){1&g&&t._uU(0," CV Management ")}function C_(g,A){1&g&&t._uU(0," Scheduled Jobs ")}function Fm(g,A){1&g&&(t.TgZ(0,"h2",4),t._uU(1,"Scheduled Jobs"),t.qZA(),t.TgZ(2,"div",5),t._UZ(3,"app-scheduled-jobs"),t.qZA())}function Nm(g,A){1&g&&t._uU(0," All Files ")}function lu(g,A){1&g&&(t.TgZ(0,"h2",4),t._uU(1,"All Files"),t.qZA(),t.TgZ(2,"mat-card",5),t._UZ(3,"app-all-files",6),t.qZA())}var Nc=function(){var g=function(){function A(l,i,C){(0,c.Z)(this,A),this.activatedRoute=l,this.router=i,this.location=C}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.activatedRoute.params.subscribe(function(w){switch(i.current=w.function,i.current){case"cache":default:i.activeTab=0;break;case"user":i.activeTab=1;break;case"data":i.activeTab=2;break;case"cv":i.activeTab=3;break;case"jobs":i.activeTab=4;break;case"files":i.activeTab=5}})}},{key:"onTabChanged",value:function(i){var C="cache";switch(i.index){case 0:break;case 1:C="user";break;case 2:C="data";break;case 3:C="cv";break;case 4:C="jobs";break;case 5:C="files"}"jobs"!==this.current?(this.current=C,this.router.navigate(["/admin/"+C])):(this.current=C,this.activeTab=0,this.router.navigate(["/admin/"+C]))}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.gz),t.Y36(_.F0),t.Y36(ve.Ye))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-admin"]],decls:30,vars:1,consts:[[1,"admin-container"],[1,"page-container"],[1,"tab-group",3,"selectedIndex","selectedTabChange"],["mat-tab-label",""],[1,"tab-label"],[1,"app-container"],[1,"full-width"],["matTabContent",""]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"div",1),t.TgZ(2,"mat-tab-group",2),t.NdJ("selectedTabChange",function(w){return i.onTabChanged(w)}),t.TgZ(3,"mat-tab"),t.YNc(4,Ho,1,0,"ng-template",3),t.TgZ(5,"h2",4),t._uU(6,"Server Status"),t.qZA(),t.TgZ(7,"div",5),t._UZ(8,"app-cache-summary",6),t.qZA(),t.qZA(),t.TgZ(9,"mat-tab"),t.YNc(10,Im,1,0,"ng-template",3),t.YNc(11,Lm,4,0,"ng-template",7),t.qZA(),t.TgZ(12,"mat-tab"),t.YNc(13,b_,1,0,"ng-template",3),t.TgZ(14,"h2",4),t._uU(15,"Data Import"),t.qZA(),t.TgZ(16,"mat-card",5),t._UZ(17,"app-data-management",6),t.qZA(),t.qZA(),t.TgZ(18,"mat-tab"),t.YNc(19,Fc,1,0,"ng-template",3),t.TgZ(20,"h2",4),t._uU(21,"Controlled Vocabulary Edit"),t.qZA(),t.TgZ(22,"mat-card",5),t._UZ(23,"app-cv-management",6),t.qZA(),t.qZA(),t.TgZ(24,"mat-tab"),t.YNc(25,C_,1,0,"ng-template",3),t.YNc(26,Fm,4,0,"ng-template",7),t.qZA(),t.TgZ(27,"mat-tab"),t.YNc(28,Nm,1,0,"ng-template",3),t.YNc(29,lu,4,0,"ng-template",7),t.qZA(),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(2),t.Q6J("selectedIndex",i.activeTab))},directives:[Pl.SP,Pl.uX,Pl.uD,Sp,Pl.Vc,xi.a8,pm,Zp,s_,Zm,Xr],styles:[".admin-container[_ngcontent-%COMP%]{padding-top:65px;width:100%}.page-container[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.app-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin:15px auto 10px;max-width:1500px;min-width:1000px}.full-width[_ngcontent-%COMP%]{width:100%}.tab-label[_ngcontent-%COMP%]{margin-left:75px} .mat-tab-label{font-size:18px!important}.admin-header[_ngcontent-%COMP%]{font-size:18px;font-weight:400}"]}),g}(),jp=function(){var g=function(){function A(){(0,c.Z)(this,A)}return(0,e.Z)(A,[{key:"transform",value:function(i,C){return decodeURIComponent(i)}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275pipe=t.Yjl({name:"decodeUri",type:g,pure:!0}),g}(),wd=function(){var g=function(){function A(){(0,c.Z)(this,A)}return(0,e.Z)(A,[{key:"transform",value:function(i){if(isNaN(parseFloat(String(i))))return i.toString();for(var w=0;i>=1024&&w<5;)i/=1024,w++;return i.toFixed(2)+[" B"," KB"," MB"," GB"," TB"," PB"][w]}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275pipe=t.Yjl({name:"fileSize",type:g,pure:!0}),g}();function $s(g,A){1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-progress-spinner",23),t.TgZ(2,"div"),t._uU(3,"Running task ... "),t.qZA(),t.qZA())}function Rc(g,A){1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",24),t.TgZ(2,"div"),t.TgZ(3,"div",25),t.TgZ(4,"i"),t._uU(5,"Download Cancelled"),t.qZA(),t.qZA(),t.qZA(),t.qZA())}function Rm(g,A){1&g&&(t.TgZ(0,"div"),t._UZ(1,"mat-icon",26),t.TgZ(2,"div"),t.TgZ(3,"div",25),t.TgZ(4,"i"),t._uU(5,"Export complete"),t.qZA(),t.qZA(),t.qZA(),t.qZA())}function M_(g,A){if(1&g&&(t.TgZ(0,"a",27),t._UZ(1,"mat-icon",28),t._uU(2," Download "),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("href",l.download.downloadUrl.url,t.LSH)}}function x_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",29),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).cancel()}),t._uU(1," (click to cancel) "),t.qZA()}}function es(g,A){if(1&g&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"Records Processed So Far:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.download.numRecords)}}function uu(g,A){if(1&g&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"Records Processed:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.download.numRecords)}}var S_=function(){return["/browse-substance"]};function T_(g,A){if(1&g&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&g){var l=t.oxw(3);t.Q6J("routerLink",t.DdM(2,S_))("queryParams",l.parameters)}}var Um=function(){return["/browse-products"]};function Pu(g,A){if(1&g&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&g){var l=t.oxw(3);t.Q6J("routerLink",t.DdM(2,Um))("queryParams",l.parameters)}}var _g=function(){return["/browse-applications"]};function Bm(g,A){if(1&g&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&g){var l=t.oxw(3);t.Q6J("routerLink",t.DdM(2,_g))("queryParams",l.parameters)}}var Ym=function(){return["/browse-adverse-events"]};function gg(g,A){if(1&g&&(t.TgZ(0,"a",37),t._uU(1," Original Query"),t._UZ(2,"mat-icon",38),t._uU(3," : "),t.qZA()),2&g){var l=t.oxw(3);t.Q6J("routerLink",t.DdM(2,Ym))("queryParams",l.parameters)}}function qm(g,A){if(1&g&&(t.TgZ(0,"div",39),t.TgZ(1,"div",40),t._uU(2,"Search: "),t.qZA(),t.TgZ(3,"div",41),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(4),t.Oqu(l.parameters.search)}}function vg(g,A){if(1&g&&(t.TgZ(0,"span"),t.TgZ(1,"div",39),t.TgZ(2,"div",40),t._uU(3),t.qZA(),t.TgZ(4,"div",41),t._uU(5),t.ALo(6,"decodeUri"),t.qZA(),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw().$implicit;t.xp6(3),t.hij("",i.facet,": "),t.xp6(2),t.Oqu(t.lcZ(6,2,l))}}function A_(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,vg,7,4,"span",36),t.qZA()),2&g){var l=A.$implicit;t.xp6(1),t.Q6J("ngForOf",l.values)}}function P_(g,A){if(1&g&&(t.TgZ(0,"div",39),t.TgZ(1,"div",40),t._uU(2,"Sort By: "),t.qZA(),t.TgZ(3,"div",41),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(4),t.Oqu(l.displayOrder)}}function D_(g,A){if(1&g&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t.YNc(2,T_,4,3,"a",33),t.YNc(3,Pu,4,3,"a",33),t.YNc(4,Bm,4,3,"a",33),t.YNc(5,gg,4,3,"a",33),t.qZA(),t.TgZ(6,"div",34),t.YNc(7,qm,5,1,"div",35),t.YNc(8,A_,2,1,"span",36),t.YNc(9,P_,5,1,"div",35),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(2),t.Q6J("ngIf","browse"===l.type),t.xp6(1),t.Q6J("ngIf","product"===l.type),t.xp6(1),t.Q6J("ngIf","application"===l.type),t.xp6(1),t.Q6J("ngIf","adverseevent"===l.type),t.xp6(2),t.Q6J("ngIf",l.parameters.search),t.xp6(1),t.Q6J("ngForOf",l.facetArray),t.xp6(1),t.Q6J("ngIf",l.parameters.order)}}function yg(g,A){if(1&g&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"Size:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.ALo(5,"fileSize"),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(t.lcZ(5,1,l.download.size))}}function bg(g,A){if(1&g&&(t.TgZ(0,"div",30),t.TgZ(1,"div",31),t._uU(2,"SHA-1:"),t.qZA(),t.TgZ(3,"div",32),t._uU(4),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(4),t.Oqu(l.download.sha1)}}function Jp(g,A){if(1&g&&(t.TgZ(0,"div",42),t.ALo(1,"date"),t.TgZ(2,"span",6),t._uU(3,"Started: "),t.qZA(),t.TgZ(4,"span",43),t._uU(5),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.s9C("matTooltip",t.xi3(1,2,l.download.started,"long")),t.xp6(5),t.Oqu(l.download.startedHuman)}}function w_(g,A){if(1&g&&(t.TgZ(0,"div",42),t.ALo(1,"date"),t.TgZ(2,"span",6),t._uU(3,"Ended: "),t.qZA(),t.TgZ(4,"span",43),t._uU(5),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.s9C("matTooltip",t.xi3(1,2,l.download.finished,"long")),t.xp6(5),t.Oqu(l.download.finishedHuman)}}function Hm(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",12),t.TgZ(1,"button",29),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).deleteDownload()}),t._UZ(2,"mat-icon",44),t._uU(3," Delete "),t.qZA(),t.qZA()}}function Vm(g,A){1&g&&(t.TgZ(0,"div",45),t._uU(1," The download is preparing on the server. This dialog can be closed and the file downloaded by clicking on 'user downloads' in the user icon menu\n"),t.qZA())}function Cg(g,A){if(1&g&&(t.TgZ(0,"div",2),t.TgZ(1,"div",3),t.TgZ(2,"div",4),t._uU(3),t.qZA(),t.TgZ(4,"div",5),t.TgZ(5,"span",6),t._uU(6,"Status: "),t.qZA(),t.TgZ(7,"span",7),t._uU(8),t.qZA(),t.qZA(),t.qZA(),t.TgZ(9,"div",8),t.TgZ(10,"div",9),t.TgZ(11,"div",10),t.YNc(12,$s,4,0,"div",11),t.YNc(13,Rc,6,0,"div",11),t.YNc(14,Rm,6,0,"div",11),t.qZA(),t.TgZ(15,"div",12),t.YNc(16,M_,3,1,"a",13),t.YNc(17,x_,2,0,"button",14),t.qZA(),t.qZA(),t.TgZ(18,"div",15),t.TgZ(19,"div",16),t.YNc(20,es,5,1,"div",17),t.YNc(21,uu,5,1,"div",17),t.YNc(22,D_,10,7,"div",17),t.YNc(23,yg,6,3,"div",17),t.YNc(24,bg,5,1,"div",17),t.qZA(),t.qZA(),t.TgZ(25,"div",18),t.TgZ(26,"div",19),t.YNc(27,Jp,6,5,"div",20),t.YNc(28,w_,6,5,"div",20),t.qZA(),t.YNc(29,Hm,4,0,"div",21),t.qZA(),t.qZA(),t.YNc(30,Vm,2,0,"div",22),t.qZA()),2&g){var l=t.oxw();t.xp6(3),t.Oqu(l.download.displayFilename),t.xp6(5),t.Oqu(l.download.status),t.xp6(4),t.Q6J("ngIf","RUNNING"===l.download.status||"PREPARING"===l.download.status),t.xp6(1),t.Q6J("ngIf","CANCELLED"===l.download.status),t.xp6(1),t.Q6J("ngIf","COMPLETE"===l.download.status),t.xp6(2),t.Q6J("ngIf",l.download.complete),t.xp6(1),t.Q6J("ngIf","RUNNING"===l.download.status),t.xp6(3),t.Q6J("ngIf",null!==l.download.numRecords&&"RUNNING"===l.download.status),t.xp6(1),t.Q6J("ngIf",null!==l.download.numRecords&&"RUNNING"!==l.download.status&&"PREPARING"!==l.download.status),t.xp6(1),t.Q6J("ngIf",l.browseLink),t.xp6(1),t.Q6J("ngIf",l.download.size),t.xp6(1),t.Q6J("ngIf",l.download.sha1),t.xp6(3),t.Q6J("ngIf",l.download.started),t.xp6(1),t.Q6J("ngIf",l.download.finished),t.xp6(1),t.Q6J("ngIf",!l.download.enabled),t.xp6(1),t.Q6J("ngIf",!l.download.complete)}}function Xs(g,A){1&g&&(t.TgZ(0,"div",8),t.TgZ(1,"div",46),t._uU(2," Deleted Download "),t.qZA(),t.qZA())}function Mg(g,A){1&g&&(t.TgZ(0,"div",8),t.TgZ(1,"div",46),t._uU(2," Download not found "),t.qZA(),t.qZA())}var xg=function(){var g=function(){function A(l){(0,c.Z)(this,A),this.authService=l,this.deletedEmitter=new t.vpe,this.deleted=!1,this.browseLink=!1,this.parameters={},this.facetArray=[],this.killed=!1}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){this.refresh()}},{key:"refresh",value:function(i){var C=this;i||this.authService.getUpdateStatus(this.id).pipe((0,J.q)(1)).subscribe(function(w){C.download=w,w.originalQuery&&C.processQuery(w.originalQuery),C.exists=!0,C.download.started&&(C.download.startedHuman=_e(C.download.started).fromNow()),C.download.finished&&(C.download.finishedHuman=_e(C.download.finished).fromNow()),("RUNNING"===C.download.status||"PREPARING"===C.download.status||"INITIALIZED"===C.download.status)&&(C.killed||setTimeout(function(){C.refresh()},1400))},function(w){C.exists=!1})}},{key:"ngOnDestroy",value:function(){this.killed=!0,this.exists=!1,this.refresh(!0)}},{key:"cancel",value:function(){var i=this;this.authService.changeDownload(this.download.cancelUrl.url).pipe((0,J.q)(1)).subscribe(function(C){i.refresh()})}},{key:"downloadExport",value:function(){var i=this;this.authService.changeDownload(this.download.downloadUrl).pipe((0,J.q)(1)).subscribe(function(C){i.refresh()})}},{key:"deleteDownload",value:function(){var i=this;this.authService.deleteDownload(this.download.removeUrl.url).pipe((0,J.q)(1)).subscribe(function(C){i.deleted=!0})}},{key:"processQuery",value:function(i){var C=this;if(i.indexOf("status(")<0){this.browseLink=!0,this.type=i.indexOf("v1/productsall")>0?"product":i.indexOf("v1/applications")>0||i.indexOf("v1/applicationsall")>0?"application":i.indexOf("v1/adverseeventpt")>0||i.indexOf("v1/adverseeventdme")>0||i.indexOf("v1/adverseeventcvm")>0?"adverseevent":"browse",i=i.split("?")[1];var w=new URLSearchParams(i);if(this.facetArray=[],w.getAll("facet").forEach(function(Fn){var Bn=Fn.split("/"),Kn="true";Bn[0].indexOf("!")>-1&&(Kn="false",Bn[0]=Bn[0].slice(1,Bn[0].length));var fi=!1;Bn[1]=encodeURIComponent(Bn[1]);var $n=Bn[1]+"."+Kn;C.facetArray.forEach(function($i){$i.facet===Bn[0]&&($i.valueString=$i.valueString+"+"+$n,$i.values.push("false"===Kn?"NOT "+Bn[1]:Bn[1]),fi=!0)}),!1===fi&&C.facetArray.push({facet:Bn[0],valueString:$n,values:["false"===Kn?"NOT "+Bn[1]:Bn[1]]})}),w.has("q")&&(this.parameters.search=w.get("q")),w.has("order")){this.parameters.order=w.get("order");var Ze=w.get("order");"$"===Ze.charAt(0)&&(Ze=(Ze=Ze.slice(1,Ze.length)).replace("root_","")+" - descending"),"^"===Ze.charAt(0)&&(Ze=(Ze=Ze.slice(1,Ze.length)).replace("root_","")+" - ascending"),this.displayOrder=Ze}if(this.facetArray.length>0){for(var Ot="",Bt=0;Bt0),t.xp6(1),t.Q6J("ngIf",l.loadJob.statistics.recordsExtractedFailed>0)}}function Gp(g,A){if(1&g&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw(4);t.Udp("width",l.stats.processedPass,"%"),t.xp6(2),t.Oqu(l.loadJob.statistics.recordsProcessedSuccess)}}function Gm(g,A){if(1&g&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw(4);t.Udp("width",l.stats.processedFail-l.stats.processedPass,"%"),t.xp6(2),t.Oqu(l.loadJob.statistics.recordsProcessedFailed)}}function Km(g,A){if(1&g&&(t.TgZ(0,"div",10),t.TgZ(1,"div",11),t._uU(2,"Processed Records"),t.qZA(),t._UZ(3,"mat-progress-bar",28),t._UZ(4,"mat-progress-bar",31),t.TgZ(5,"div",13),t.YNc(6,Gp,3,3,"div",30),t.YNc(7,Gm,3,3,"div",30),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(3),t.Q6J("color",l.accent)("value",l.stats.processedPass),t.xp6(1),t.Q6J("value",l.stats.processedFail),t.xp6(2),t.Q6J("ngIf",l.loadJob.statistics.recordsProcessedSuccess>0),t.xp6(1),t.Q6J("ngIf",l.loadJob.statistics.recordsProcessedFailed>0)}}function E_(g,A){if(1&g&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw(4);t.Udp("width",l.stats.persistPass,"%"),t.xp6(2),t.Oqu(l.loadJob.statistics.recordsPersistedSuccess)}}function Z_(g,A){if(1&g&&(t.TgZ(0,"div",14),t.TgZ(1,"span",15),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw(4);t.Udp("width",l.stats.persistFail-l.stats.persistPass,"%"),t.xp6(2),t.Oqu(l.loadJob.statistics.recordsPersistedFailed)}}function k_(g,A){if(1&g&&(t.TgZ(0,"div",10),t.TgZ(1,"div",11),t._uU(2,"Persisted Records"),t.qZA(),t._UZ(3,"mat-progress-bar",28),t._UZ(4,"mat-progress-bar",31),t.TgZ(5,"div",13),t.YNc(6,E_,3,3,"div",30),t.YNc(7,Z_,3,3,"div",30),t.qZA(),t.qZA()),2&g){var l=t.oxw(3);t.xp6(3),t.Q6J("color",l.accent)("value",l.stats.persistPass),t.xp6(1),t.Q6J("value",l.stats.persistFail),t.xp6(2),t.Q6J("ngIf",l.loadJob.statistics.recordsPersistedSuccess>0),t.xp6(1),t.Q6J("ngIf",l.loadJob.statistics.recordsPersistedFailed>0)}}function rc(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,zp,8,6,"div",27),t.YNc(2,Km,8,5,"div",27),t.YNc(3,k_,8,5,"div",27),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",l.stats.extractPass&&l.stats.extractPass>=0||l.stats.extractFail&&l.stats.extractFail>=0),t.xp6(1),t.Q6J("ngIf",l.stats.processedFail&&l.stats.processedFail>=0||l.stats.processedPass&&l.stats.processedPass>=0),t.xp6(1),t.Q6J("ngIf",l.stats.persistPass&&l.stats.persistPass>=0||l.stats.persistFail&&l.stats.persistFail>=0)}}function oc(g,A){if(1&g&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2," Time started: "),t.qZA(),t.TgZ(3,"div",32),t.ALo(4,"date"),t.TgZ(5,"code"),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(3),t.s9C("matTooltip",t.xi3(4,2,l.loadJob.start,"medium")),t.xp6(3),t.hij(" ",l.startedHuman,"")}}function I_(g,A){if(1&g&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2," Time Finished:"),t.qZA(),t.TgZ(3,"div",32),t.ALo(4,"date"),t.TgZ(5,"code"),t._uU(6),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(3),t.s9C("matTooltip",t.xi3(4,2,l.loadJob.stop,"medium")),t.xp6(3),t.hij(" ",l.finishedHuman,"")}}function Uc(g,A){if(1&g&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2," Estimated time left: "),t.qZA(),t.TgZ(3,"div",21),t.TgZ(4,"code"),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(5),t.Oqu(l.humanTimeLeft)}}function ts(g,A){if(1&g&&(t.TgZ(0,"div",19),t.TgZ(1,"div",20),t._uU(2,"Estimated total time: "),t.qZA(),t.TgZ(3,"div",21),t.TgZ(4,"code"),t._uU(5),t.qZA(),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(5),t.Oqu(l.humanTimeEstimate)}}function Kp(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).refresh()}),t._uU(1,"Update"),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",i.loadJob.stop)}}function $p(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",22),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).monitor=!1}),t._uU(1,"Stop Updating"),t.qZA()}}function ml(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",22),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2);return C.monitor=!0,C.refresh()}),t._uU(1,"Resume Auto Updates"),t.qZA()}}function Bc(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"div",3),t.TgZ(2,"div",4),t._uU(3),t.qZA(),t._UZ(4,"span",5),t.TgZ(5,"div",6),t._uU(6),t.YNc(7,zm,2,1,"div",7),t.qZA(),t.qZA(),t.TgZ(8,"div",8),t.TgZ(9,"div",9),t.TgZ(10,"div",10),t.TgZ(11,"div",11),t._uU(12,"Progress"),t.qZA(),t.TgZ(13,"div"),t._UZ(14,"mat-progress-bar",12),t.TgZ(15,"div",13),t.TgZ(16,"div",14),t.TgZ(17,"span",15),t._uU(18),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t.TgZ(19,"button",16),t.NdJ("click",function(){t.CHM(l);var w=t.oxw();return w.hide=!w.hide}),t._uU(20),t.qZA(),t.YNc(21,rc,4,3,"div",2),t.qZA(),t.TgZ(22,"div",17),t.YNc(23,oc,7,5,"div",18),t.YNc(24,I_,7,5,"div",18),t.TgZ(25,"div",19),t.TgZ(26,"div",20),t._uU(27,"Total time running:"),t.qZA(),t.TgZ(28,"div",21),t.TgZ(29,"code"),t._uU(30),t.qZA(),t.qZA(),t.qZA(),t.TgZ(31,"div",19),t.TgZ(32,"div",20),t._uU(33,"Average Records per second:"),t.qZA(),t.TgZ(34,"div",21),t.TgZ(35,"code"),t._uU(36),t.ALo(37,"number"),t.qZA(),t.qZA(),t.qZA(),t.YNc(38,Uc,6,1,"div",18),t.YNc(39,ts,6,1,"div",18),t.qZA(),t.qZA(),t.TgZ(40,"div",3),t.TgZ(41,"button",22),t.NdJ("click",function(){return t.CHM(l),t.oxw().clearJob()}),t._uU(42,"New Data Import"),t.qZA(),t._UZ(43,"span",5),t.TgZ(44,"span",23),t.YNc(45,Kp,2,1,"button",24),t.qZA(),t.YNc(46,$p,2,0,"button",25),t.YNc(47,ml,2,0,"button",25),t.qZA(),t.qZA()}if(2&g){var i=t.oxw();t.xp6(3),t.hij("Importing ",i.loadJob.name,""),t.xp6(3),t.hij("Status: ",i.loadJob.status,""),t.xp6(1),t.Q6J("ngIf","RUNNING"===i.loadJob.status),t.xp6(7),t.Q6J("value",i.dynamic/i.max*100),t.xp6(2),t.Udp("width",i.dynamic/i.max*100,"%"),t.xp6(2),t.AsE("",i.dynamic," / ",i.max,""),t.xp6(2),t.hij("",i.hide?"show":"hide"," details"),t.xp6(1),t.Q6J("ngIf",!i.hide),t.xp6(2),t.Q6J("ngIf",i.loadJob.start),t.xp6(1),t.Q6J("ngIf",i.loadJob.stop),t.xp6(6),t.Oqu(i.humanTimeTotal),t.xp6(6),t.Oqu(t.lcZ(37,20,i.averagePersistRate)),t.xp6(2),t.Q6J("ngIf",!i.loadJob.stop),t.xp6(1),t.Q6J("ngIf",!i.loadJob.stop),t.xp6(5),t.s9C("matTooltip",i.loadJob.stop?"The upload is no longer in progress":""),t.xp6(1),t.Q6J("ngIf",!i.monitor),t.xp6(1),t.Q6J("ngIf",i.monitor),t.xp6(1),t.Q6J("ngIf",!i.monitor&&!i.loadJob.stop)}}var Oo=function(){var g=function(){function A(l,i,C){(0,c.Z)(this,A),this.activeRoute=l,this.adminService=i,this.router=C,this.dynamic=0,this.max=0,this.monitor=!0,this.stats={},this.hide=!1,this.ellipses="."}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.activeRoute.params.subscribe(function(C){i.jobId=C.id,i.adminService.queryLoad(i.jobId).pipe((0,J.q)(1)).subscribe(function(w){w.statistics&&w.statistics.totalRecords&&w.statistics.totalRecords.count&&(i.max=w.statistics.totalRecords.count),i.loadJob=w,i.stats.extractFail=0,i.stats.extractPass=0,i.stats.persistFail=0,i.stats.persistPass=0,i.stats.processedFail=0,i.stats.processedPass=0,i.humanizeFields(w),i.mixResultDisplay(w),i.changeEllipses(),i.refresh(!0)})})}},{key:"ngOnDestroy",value:function(){this.refresh(!1)}},{key:"mixResultDisplay",value:function(i){this.stats.extractFail=(i.statistics.recordsExtractedFailed+i.statistics.recordsExtractedSuccess)/this.max*100,this.stats.extractPass=i.statistics.recordsExtractedSuccess/this.max*100,this.stats.persistFail=(i.statistics.recordsPersistedFailed+i.statistics.recordsPersistedSuccess)/this.max*100,this.stats.persistPass=i.statistics.recordsPersistedSuccess/this.max*100,this.stats.processedFail=(i.statistics.recordsProcessedFailed+i.statistics.recordsProcessedSuccess)/this.max*100,this.stats.processedPass=i.statistics.recordsProcessedSuccess/this.max*100}},{key:"clearJob",value:function(){this.router.navigate(["/admin"],{queryParams:{function:"data"}})}},{key:"refresh",value:function(){var i=this,C=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.adminService.queryLoad(this.loadJob.id).pipe((0,J.q)(1)).subscribe(function(w){i.loadJob=w,w.statistics.totalRecords&&w.statistics.totalRecords.count&&(i.max=w.statistics.totalRecords.count),i.humanizeFields(w),i.mixResultDisplay(w),"COMPLETE"!==w.status&&C?setTimeout(function(){i.monitor&&i.refresh()}):i.monitor=!1},function(w){i.message="invalid Job ID",i.jobId=null})}},{key:"humanizeFields",value:function(i){this.dynamic=i.statistics.recordsPersistedSuccess+i.statistics.recordsPersistedFailed+i.statistics.recordsProcessedFailed+i.statistics.recordsExtractedFailed;var C=i.stop||null,w=_e.duration(i.statistics.estimatedTimeLeft,"milliseconds");this.humanTimeLeft=w.humanize(),C?this.averagePersistRate=1e3*i.statistics.recordsPersistedSuccess/(C-i.start):(this.averagePersistRate=1e3/i.statistics.averageTimeToPersist,C=(new Date).getTime()),this.humanTimeTotal=_e.duration(C-i.start,"milliseconds").humanize(),this.humanTimeEstimate=_e.duration(C-i.start+i.statistics.estimatedTimeLeft,"milliseconds").humanize(),i.start&&(this.startedHuman=_e(i.start).fromNow()),i.stop&&(this.finishedHuman=_e(i.stop).fromNow())}},{key:"toFullHumanTime",value:function(i){var C="0";return i.years()>0&&(C+=i.years()+" years "),(i.months()>0||""!==C)&&(C+=i.months()+" months "),(i.days()>0||""!==C)&&(C+=i.days()+" days "),(i.hours()>0||""!==C)&&(C+=i.hours()+" hours "),(i.minutes()>0||""!==C)&&(C+=i.minutes()+" minutes "),(i.seconds()>0||""!==C)&&(C+=i.seconds()+" seconds"),C}},{key:"changeEllipses",value:function(){var i=this;if(this.loadJob&&"RUNNING"===this.loadJob.status){switch(this.ellipses){case".":this.ellipses="..";break;case"..":this.ellipses="...";break;default:this.ellipses="."}setTimeout(function(){i.changeEllipses()},1e3)}else this.ellipses=""}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(_.gz),t.Y36(Q),t.Y36(_.F0))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-monitor"]],decls:5,vars:1,consts:[[1,"monitor-container"],[1,"monitor-header"],[4,"ngIf"],[1,"full-row"],[1,"job-title"],[1,"middle-fill"],[1,"large-val"],["class","ellipses",4,"ngIf"],[1,"lower-body"],[1,"loader-container"],[1,"progress-container"],[1,"bar-label"],["color","accent","mode","determinate",1,"load-progress",3,"value"],[1,"label-row"],[1,"count-cont"],[1,"count-row-label"],["mat-button","",1,"hide-button",3,"click"],[1,"stat-container"],["class","label-value",4,"ngIf"],[1,"label-value"],[1,"label"],[1,"value"],["mat-button","",3,"click"],[3,"matTooltip"],["mat-button","",3,"disabled","click",4,"ngIf"],["mat-button","",3,"click",4,"ngIf"],[1,"ellipses"],["class","progress-container",4,"ngIf"],["mode","determinate",1,"load-progress","load-success",3,"color","value"],["mode","determinate",1,"load-progress","load-fail",3,"color","value"],["class","count-cont",3,"width",4,"ngIf"],["mode","determinate",1,"load-progress","load-fail",3,"value"],[1,"value",3,"matTooltip"],["mat-button","",3,"disabled","click"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"h2",1),t._uU(2,"Upload Monitor"),t.qZA(),t.TgZ(3,"mat-card"),t.YNc(4,Bc,48,22,"div",2),t.qZA(),t.qZA()),2&l&&(t.xp6(4),t.Q6J("ngIf",i.loadJob))},directives:[xi.a8,ve.O5,Yn.pW,y.lW,Me.gM],pipes:[ve.uU,ve.JJ],styles:[".italics[_ngcontent-%COMP%]{font-style:italic;color:var(--text-color)}.file-name[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;text-align:center;margin-left:15px;margin-top:auto;margin-bottom:auto}.full-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;padding:10px}.monitor-container[_ngcontent-%COMP%]{margin-top:90px}.job-title[_ngcontent-%COMP%]{font-size:20px}.load-progress[_ngcontent-%COMP%]{height:17px;margin-bottom:5px;font-size:12px;color:var(--regular-black-color);-webkit-text-fill-color:var(--regular-white-color);-webkit-text-stroke-width:1px;-webkit-text-stroke-color:var(--regular-black-color)}.load-fail[_ngcontent-%COMP%]{margin-top:-22px}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:var(--error);z-index:1}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:var(--error)}.load-fail[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.loading-spinner[_ngcontent-%COMP%]{width:70px;margin:auto}.load-fail-old[_ngcontent-%COMP%]{-ms-transform:rotate(180deg);transform:rotate(180deg);margin-top:-22px}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill{background-color:var(--error);z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{background-color:var(--error);z-index:2}.load-fail-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.load-success[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.load-success-old[_ngcontent-%COMP%] .mat-progress-bar-buffer{background:var(--progress-bar-buffer-bg-color)}.progress-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:12px}.progress-container[_ngcontent-%COMP%] .load-progress[_ngcontent-%COMP%]{width:100%}.progress-container[_ngcontent-%COMP%] .bar-label[_ngcontent-%COMP%]{font-size:14px;padding-bottom:3px}.spinner-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%]{width:33%;-ms-flex-direction:column;flex-direction:column}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.spinner-container[_ngcontent-%COMP%] .spinner-row[_ngcontent-%COMP%] .spinner-labels[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:50px}.count-label[_ngcontent-%COMP%]{margin-top:auto;margin-bottom:auto}.loader-container[_ngcontent-%COMP%]{width:70%;margin:10px}.lower-body[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.stat-container[_ngcontent-%COMP%]{width:30%;margin:10px;min-width:250px}.label-value[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-bottom:10px}.label-value[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{width:50%;min-width:125px;font-weight:500}.label-value[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{width:50%}.example-section[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;height:60px}.mirror[_ngcontent-%COMP%]{margin-top:-105px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror[_ngcontent-%COMP%] circle{stroke:var(--error)}.mirror[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:var(--progress-spinner-buffer-bg-color)}.mirror-test[_ngcontent-%COMP%]{margin-left:-125px;-ms-transform:scale(-1,1);transform:scaleX(-1)}.mirror-test[_ngcontent-%COMP%] circle{stroke:var(--error)}.mirror-test[_ngcontent-%COMP%] .mat-progress-spinner-buffer{background:var(--progress-spinner-buffer-bg-color)}.large-val[_ngcontent-%COMP%]{font-size:19px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.ellipses[_ngcontent-%COMP%]{width:20px}.overlap[_ngcontent-%COMP%] .mat-progress-bar-fill:after{z-index:2}.deleted[_ngcontent-%COMP%]{margin:auto;padding:10px;color:var(--regular-grey-color);font-style:italics;font-size:18px}.label-row[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:left;justify-content:left}.label-row[_ngcontent-%COMP%] .count-row-label[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto;text-shadow:1px 0 0 var(--text-shadow-color),0 -1px 0 var(--text-shadow-color),0 1px 0 var(--text-shadow-color),-1px 0 0 var(--text-shadow-color);white-space:nowrap}.hide-button[_ngcontent-%COMP%]{margin:10px}.count-cont[_ngcontent-%COMP%]{text-align:center;color:var(--regular-white-color);margin-top:-22px;font-weight:500;z-index:5;font-size:15px;white-space:nowrap}.file-row[_ngcontent-%COMP%]{width:75%;height:40px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.options-row[_ngcontent-%COMP%]{width:25%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.bottom[_ngcontent-%COMP%]{padding-top:50px}.monitor-header[_ngcontent-%COMP%]{margin-left:100px}"]}),g}(),Ds=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.router=l,this.authService=i}return(0,e.Z)(A,[{key:"canActivate",value:function(i,C){var w=this;return new D.y(function(V){w.authService.getAuth().subscribe(function(Ze){Ze?w.authService.hasAnyRolesAsync("Admin").subscribe(function(Bt){Bt?(V.next(!0),V.complete()):(V.next(w.router.parseUrl("/home")),V.complete())}):(V.next(w.router.createUrlTree(["/login"],{queryParams:{path:C.url}})),V.complete())})})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.LFG(_.F0),t.LFG(h.e))},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac}),g}();function Od(g,A){if(1&g&&(t.TgZ(0,"span",3),t._uU(1,"or send an email to "),t.TgZ(2,"a",4),t._uU(3),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.MGl("href","mailto:",l.email,"",t.LSH),t.xp6(1),t.Oqu(l.email)}}var Du=[{path:"",children:[{path:"",component:fe},{path:"home",component:fe},{path:"unauthorized",component:function(){var g=function(){function A(l,i,C){(0,c.Z)(this,A),this.configService=l,this.authService=i,this.router=C}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.configService.configData&&this.configService.configData.contactEmail&&(this.email=this.configService.configData.contactEmail),this.authService.getAuth().pipe((0,J.q)(1)).subscribe(function(C){C&&C.active&&i.router.navigate(["/home"])})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(fn.E),t.Y36(Wi.e),t.Y36(_.F0))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-unauthorized"]],decls:6,vars:1,consts:[[1,"main-container"],[1,"form-row"],["style","padding-right:5px",4,"ngIf"],[2,"padding-right","5px"],[3,"href"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"mat-card"),t.TgZ(2,"div",1),t._uU(3," You are not authorized to see this resource. Please contact an administrator "),t.YNc(4,Od,4,2,"span",2),t._uU(5," to be granted access. "),t.qZA(),t.qZA(),t.qZA()),2&l&&(t.xp6(4),t.Q6J("ngIf",i.email))},directives:[xi.a8,ve.O5],styles:[".main-container[_ngcontent-%COMP%]{margin-top:100px}.form-row[_ngcontent-%COMP%]{width:100%;-ms-flex-direction:row;flex-direction:row;padding:25px;font-size:26px;line-height:46px;text-align:center}.form-row[_ngcontent-%COMP%] .equal-width[_ngcontent-%COMP%]{-ms-flex:1 0 0px;flex:1 0 0}"]}),g}()},{path:"browse-substance",component:ul},{path:"registrars",component:gl},{path:"substances/register",component:vp,canActivate:[jf.R],canDeactivate:[fd]},{path:"substances/register/:type",component:vp,canActivate:[jf.R],canDeactivate:[fd]},{path:"substances/:id",component:Vs.n},{path:"substances/:id/v/:version",component:Vs.n},{path:"structure-search",component:nu},{path:"guided-search",component:Bh},{path:"sequence-search",component:cd},{path:"login",component:Ah},{path:"substances/:id/edit",component:vp,canActivate:[Bo.y],canDeactivate:[fd]},{path:"admin",component:Nc,canActivate:[Ds]},{path:"admin/:function",component:Nc,canActivate:[Ds]},{path:"monitor/:id",component:Oo,canActivate:[Ds]},{path:"profile",component:sn},{path:"user-downloads",component:Qp},{path:"user-downloads/:id",component:Qp}],component:pi},{path:"**",component:s}],sc=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[_.Bz.forRoot(Du,{onSameUrlNavigation:"reload"})],_.Bz]}),g}(),lc=function(){var g=(0,e.Z)(function A(l,i,C,w,V){(0,c.Z)(this,A),this.title=C,this.router=w,this.googleAnalyticsService=V,w.events.subscribe(function(Ze){C.setTitle("GSRS")}),l.addSvgIcon("chevron_right",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-chevron_right-24px.svg")),l.addSvgIcon("search",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-search-24px.svg")),l.addSvgIcon("subdirectory_arrow_right",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-subdirectory_arrow_right-24px.svg")),l.addSvgIcon("list",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-list-24px.svg")),l.addSvgIcon("view_stream",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-view_stream-24px.svg")),l.addSvgIcon("menu",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-menu-24px.svg")),l.addSvgIcon("close",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-close-24px.svg")),l.addSvgIcon("delete_forever",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-delete_forever-24px.svg")),l.addSvgIcon("edit",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-edit-24px.svg")),l.addSvgIcon("zoom_in",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-zoom_in-24px.svg")),l.addSvgIcon("chevron_down",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-keyboard_arrow_down-24px.svg")),l.addSvgIcon("chevron_up",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-keyboard_arrow_up-24px.svg")),l.addSvgIcon("drop_down",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-arrow_drop_down-24px.svg")),l.addSvgIcon("drop_up",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-arrow_drop_up-24px.svg")),l.addSvgIcon("done",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-done-24px.svg")),l.addSvgIcon("link",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-link-24px.svg")),l.addSvgIcon("get_app",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-get_app-24px.svg")),l.addSvgIcon("account_circle",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-account_circle-24px.svg")),l.addSvgIcon("find_replace",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-find_replace-24px.svg")),l.addSvgIcon("not_interested",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-not_interested-24px.svg")),l.addSvgIcon("spellcheck",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-spellcheck-24px.svg")),l.addSvgIcon("view_module",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-view_module-24px.svg")),l.addSvgIcon("lock_open",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-lock_open-24px.svg")),l.addSvgIcon("lock",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-lock-24px.svg")),l.addSvgIcon("open_in_new",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-open_in_new-24px.svg")),l.addSvgIcon("cancel",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-cancel-24px.svg")),l.addSvgIcon("add_circle_outline",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-add_circle_outline-24px.svg")),l.addSvgIcon("remove_circle_outline",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-remove_circle_outline-24px.svg")),l.addSvgIcon("arrow_downward",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-arrow_downward-24px.svg")),l.addSvgIcon("cloud_upload",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-cloud_upload-24px.svg")),l.addSvgIcon("cloud_download",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-cloud_download-24px.svg")),l.addSvgIcon("attachment",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-attachment-24px.svg")),l.addSvgIcon("undo",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-undo-24px.svg")),l.addSvgIcon("move_to_inbox",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-move_to_inbox-24px.svg")),l.addSvgIcon("clear",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-clear-24px.svg")),l.addSvgIcon("settings_applications",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-settings_applications-24px.svg")),l.addSvgIcon("file_copy",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-file_copy-24px.svg")),l.addSvgIcon("outline-file_copy",i.bypassSecurityTrustResourceUrl("assets/icons/outline-file_copy-24px.svg")),l.addSvgIcon("outline-description",i.bypassSecurityTrustResourceUrl("assets/icons/outline-description-24px.svg")),l.addSvgIcon("local-pharmacy",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-local_pharmacy-24px.svg")),l.addSvgIcon("insert-chart",i.bypassSecurityTrustResourceUrl("assets/icons/outline-insert_chart-24px.svg")),l.addSvgIcon("youtube",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-youtube_searched_for-24px.svg")),l.addSvgIcon("find-in-page",i.bypassSecurityTrustResourceUrl("assets/icons/outline-find_in_page-24px.svg")),l.addSvgIcon("note",i.bypassSecurityTrustResourceUrl("assets/icons/outline-note-24px.svg")),l.addSvgIcon("pageview",i.bypassSecurityTrustResourceUrl("assets/icons/outline-pageview-24px.svg")),l.addSvgIcon("brush",i.bypassSecurityTrustResourceUrl("assets/icons/outline-brush-24px.svg")),l.addSvgIcon("alarm-on",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-alarm_on-24px.svg")),l.addSvgIcon("pfda_home",i.bypassSecurityTrustResourceUrl("assets/icons/pfda/home.svg")),l.addSvgIcon("pfda_gsrs",i.bypassSecurityTrustResourceUrl("assets/icons/pfda/gsrs-logo-round-bw.svg")),l.addSvgIcon("pfda_support",i.bypassSecurityTrustResourceUrl("assets/icons/pfda/support.svg")),l.addSvgIcon("pfda_questionmark",i.bypassSecurityTrustResourceUrl("assets/icons/pfda/questionmark.svg")),l.addSvgIcon("pfda_profile",i.bypassSecurityTrustResourceUrl("assets/icons/pfda/profile.svg")),l.addSvgIcon("view-list",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-view_list-24px.svg")),l.addSvgIcon("glasses",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-glasses-24px.svg")),l.addSvgIcon("paste",i.bypassSecurityTrustResourceUrl("assets/icons/baseline-paste-24px.svg")),l.addSvgIcon("help",i.bypassSecurityTrustResourceUrl("assets/icons/help-outline-24px.svg"))});return g.\u0275fac=function(l){return new(l||g)(t.Y36(Y.jv),t.Y36(S.H7),t.Y36(S.Dx),t.Y36(_.F0),t.Y36(Mi.$))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-root"]],decls:1,vars:0,template:function(l,i){1&l&&t._UZ(0,"router-outlet")},directives:[_.lC],styles:[""]}),g}(),El=n(57481),Zl=n(70178),el=n(68390),cu=n(61859);function du(g){return function(){return g.load(yi.N)}}var hl=n(65838),ef=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({providers:[rn.a],imports:[[ve.ez]]}),g}(),tf=n(56473),Ed=n(65831),$m=n(64061),Xm=[{componentId:"structure-details",path:"structure-details",loadChildren:function(){return Promise.all([n.e(8592),n.e(4333)]).then(n.bind(n,94333)).then(function(A){return A.StructureDetailsModule})}},{componentId:"substance-audit-info",path:"substance-audit-info",loadChildren:function(){return n.e(6607).then(n.bind(n,76607)).then(function(A){return A.SubstanceAuditInfoModule})}},{componentId:"substance-codes",path:"substance-codes",loadChildren:function(){return Promise.all([n.e(8592),n.e(275)]).then(n.bind(n,60275)).then(function(A){return A.SubstanceCodesModule})}},{componentId:"substance-subunits",path:"substance-subunits",loadChildren:function(){return n.e(7398).then(n.bind(n,87398)).then(function(A){return A.SubstanceSubunitsModule})}},{componentId:"substance-moieties",path:"substance-moieties",loadChildren:function(){return n.e(1282).then(n.bind(n,61282)).then(function(A){return A.SubstanceMoietiesModule})}},{componentId:"substance-names",path:"substance-names",loadChildren:function(){return Promise.all([n.e(8592),n.e(834)]).then(n.bind(n,90834)).then(function(A){return A.SubstanceNamesModule})}},{componentId:"substance-notes",path:"substance-notes",loadChildren:function(){return Promise.all([n.e(8592),n.e(4869)]).then(n.bind(n,84869)).then(function(A){return A.SubstanceNotesModule})}},{componentId:"substance-overview",path:"substance-overview",loadChildren:function(){return Promise.all([n.e(8592),n.e(4028)]).then(n.bind(n,94028)).then(function(A){return A.SubstanceOverviewModule})}},{componentId:"substance-references",path:"substance-references",loadChildren:function(){return n.e(1899).then(n.bind(n,11899)).then(function(A){return A.SubstanceReferencesModule})}},{componentId:"substance-relationships-visualization",path:"substance-relationships-visualization",loadChildren:function(){return n.e(7081).then(n.bind(n,57081)).then(function(A){return A.SubstanceRelationshipsVisualizationModule})}},{componentId:"substance-relationships",path:"substance-relationships",loadChildren:function(){return Promise.all([n.e(8592),n.e(2686)]).then(n.bind(n,12686)).then(function(A){return A.SubstanceRelationshipsModule})}},{componentId:"substance-concept-definition",path:"substance-concept-definition",loadChildren:function(){return n.e(6597).then(n.bind(n,66597)).then(function(A){return A.SubstanceConceptDefinitionModule})}},{componentId:"substance-polymer-structure",path:"substance-polymer-structure",loadChildren:function(){return n.e(7440).then(n.bind(n,27440)).then(function(A){return A.SubstancePolymerStructureModule})}},{componentId:"substance-monomers",path:"substance-monomers",loadChildren:function(){return n.e(941).then(n.bind(n,40941)).then(function(A){return A.SubstanceMonomersModule})}},{componentId:"substance-structural-units",path:"substance-structural-units",loadChildren:function(){return n.e(5913).then(n.bind(n,45913)).then(function(A){return A.SubstanceStructuralUnitsModule})}},{componentId:"substance-mixture-components",path:"substance-mixture-components",loadChildren:function(){return n.e(5965).then(n.bind(n,65965)).then(function(A){return A.SubstanceMixtureComponentsModule})}},{componentId:"substance-modifications",path:"substance-modifications",loadChildren:function(){return n.e(2505).then(n.bind(n,92505)).then(function(A){return A.SubstanceModificationsModule})}},{componentId:"substance-disulfide-links",path:"substance-disulfide-links",loadChildren:function(){return n.e(5223).then(n.bind(n,75223)).then(function(A){return A.SubstanceDisulfideLinksModule})}},{componentId:"substance-other-links",path:"substance-other-links",loadChildren:function(){return n.e(1555).then(n.bind(n,41555)).then(function(A){return A.SubstanceOtherLinksModule})}},{componentId:"substance-glycosylation",path:"substance-glycosylation",loadChildren:function(){return n.e(4123).then(n.bind(n,44123)).then(function(A){return A.SubstanceGlycosylationModule})}},{componentId:"substance-na-sugars",path:"substance-na-sugars",loadChildren:function(){return n.e(6710).then(n.bind(n,36710)).then(function(A){return A.SubstanceNaSugarsModule})}},{componentId:"substance-na-linkages",path:"substance-na-linkages",loadChildren:function(){return n.e(5718).then(n.bind(n,95718)).then(function(A){return A.SubstanceNaLinkagesModule})}},{componentId:"substance-properties",path:"substance-properties",loadChildren:function(){return Promise.all([n.e(8592),n.e(1105)]).then(n.bind(n,51105)).then(function(A){return A.SubstancePropertiesModule})}},{componentId:"substance-constituents",path:"substance-constituents",loadChildren:function(){return Promise.all([n.e(8592),n.e(7022)]).then(n.bind(n,87022)).then(function(A){return A.SubstanceConstituentsModule})}},{componentId:"substance-primary-definition",path:"substance-primary-definition",loadChildren:function(){return n.e(9810).then(n.bind(n,29810)).then(function(A){return A.SubstancePrimaryDefinitionModule})}},{componentId:"substance-alternative-definition",path:"substance-alternative-definition",loadChildren:function(){return n.e(4662).then(n.bind(n,24662)).then(function(A){return A.SubstanceAlternativeDefinitionModule})}},{componentId:"substance-variant-concepts",path:"substance-variant-concepts",loadChildren:function(){return n.e(5331).then(n.bind(n,35331)).then(function(A){return A.SubstanceVariantConceptsModule})}},{componentId:"substance-mixture-source",path:"substance-mixture-source",loadChildren:function(){return n.e(2212).then(n.bind(n,42212)).then(function(A){return A.SubstanceMixtureSourceModule})}},{componentId:"substance-mixture-parent",path:"substance-mixture-parent",loadChildren:function(){return n.e(4690).then(n.bind(n,14690)).then(function(A){return A.SubstanceMixtureParentModule})}},{componentId:"substance-hierarchy",path:"substance-hierarchy",loadChildren:function(){return n.e(8352).then(n.bind(n,48352)).then(function(A){return A.SubstanceHierarchyModule})}},{componentId:"substance-history",path:"substance-history",loadChildren:function(){return Promise.all([n.e(8592),n.e(7010)]).then(n.bind(n,87010)).then(function(A){return A.SubstanceHistoryModule})}},{componentId:"substance-ssg-parent-substance",path:"substance-ssg-parent-substance",loadChildren:function(){return Promise.all([n.e(8592),n.e(9326)]).then(n.bind(n,9326)).then(function(A){return A.SubstanceSsgParentSubstanceModule})}},{componentId:"substance-ssg1-parent",path:"substance-ssg1-parent",loadChildren:function(){return Promise.all([n.e(8592),n.e(2552)]).then(n.bind(n,42552)).then(function(A){return A.SubstanceSsg1ParentModule})}},{componentId:"substance-ssg-grade",path:"substance-ssg-grade",loadChildren:function(){return Promise.all([n.e(8592),n.e(5783)]).then(n.bind(n,55783)).then(function(A){return A.SubstanceSsgGradeModule})}},{componentId:"substance-ssg-definition",path:"substance-ssg-definition",loadChildren:function(){return Promise.all([n.e(8592),n.e(2560)]).then(n.bind(n,32560)).then(function(A){return A.SubstanceSsgDefinitionModule})}},{componentId:"substance-form-definition",path:"substance-form-definition",loadChildren:function(){return Promise.all([n.e(8302),n.e(6558)]).then(n.bind(n,16558)).then(function(A){return A.SubstanceFormDefinitionModule})}},{componentId:"substance-form-references",path:"substance-form-references",loadChildren:function(){return n.e(5353).then(n.bind(n,55353)).then(function(A){return A.SubstanceFormReferencesModule})}},{componentId:"substance-form-names",path:"substance-form-names",loadChildren:function(){return Promise.all([n.e(8302),n.e(8592),n.e(8635)]).then(n.bind(n,88635)).then(function(A){return A.SubstanceFormNamesModule})}},{componentId:"substance-form-structure",path:"substance-form-structure",loadChildren:function(){return Promise.all([n.e(8592),n.e(7333)]).then(n.bind(n,27333)).then(function(A){return A.SubstanceFormStructureModule})}},{componentId:"substance-form-moieties",path:"substance-form-moieties",loadChildren:function(){return Promise.all([n.e(8592),n.e(3155)]).then(n.bind(n,53155)).then(function(A){return A.SubstanceFormMoietiesModule})}},{componentId:"substance-form-codes-card",path:"substance-form-codes-card",loadChildren:function(){return Promise.all([n.e(8302),n.e(328)]).then(n.bind(n,70328)).then(function(A){return A.SubstanceFormCodesModule})}},{componentId:"substance-form-relationships",path:"substance-form-relationships",loadChildren:function(){return Promise.all([n.e(8302),n.e(1704)]).then(n.bind(n,51704)).then(function(A){return A.SubstanceFormRelationshipsModule})}},{componentId:"substance-form-notes",path:"substance-form-notes",loadChildren:function(){return Promise.all([n.e(8302),n.e(6131)]).then(n.bind(n,65992)).then(function(A){return A.SubstanceFormNotesModule})}},{componentId:"substance-form-properties",path:"substance-form-properties",loadChildren:function(){return Promise.all([n.e(8302),n.e(6102)]).then(n.bind(n,36102)).then(function(A){return A.SubstanceFormPropertiesModule})}},{componentId:"substance-form-subunits",path:"substance-form-subunits",loadChildren:function(){return n.e(4874).then(n.bind(n,54874)).then(function(A){return A.SubstanceFormSubunitsModule})}},{componentId:"substance-form-other-links",path:"substance-form-other-links",loadChildren:function(){return n.e(5846).then(n.bind(n,65846)).then(function(A){return A.SubstanceFormOtherLinksModule})}},{componentId:"substance-form-disulfide-links",path:"substance-form-disulfide-links",loadChildren:function(){return n.e(5171).then(n.bind(n,35171)).then(function(A){return A.SubstanceFormDisulfideLinksModule})}},{componentId:"substance-form-glycosylation",path:"substance-form-glycosylation",loadChildren:function(){return n.e(7405).then(n.bind(n,77405)).then(function(A){return A.SubstanceFormGlycosylationModule})}},{componentId:"substance-form-structural-modifications",path:"substance-form-structural-modifications",loadChildren:function(){return Promise.all([n.e(8592),n.e(4243)]).then(n.bind(n,14243)).then(function(A){return A.SubstanceFormStructuralModificationsModule})}},{componentId:"substance-form-agent-modifications-card",path:"substance-form-agent-modifications-card",loadChildren:function(){return Promise.all([n.e(8592),n.e(6684)]).then(n.bind(n,66684)).then(function(A){return A.SubstanceFormAgentModificationsModule})}},{componentId:"substance-form-physical-modifications",path:"substance-form-physical-modifications",loadChildren:function(){return n.e(221).then(n.bind(n,20221)).then(function(A){return A.SubstanceFormPhysicalModificationsModule})}},{componentId:"substance-form-protein-details",path:"substance-form-protein-details",loadChildren:function(){return Promise.all([n.e(3311),n.e(1935)]).then(n.bind(n,51935)).then(function(A){return A.SubstanceFormProteinDetailsModule})}},{componentId:"nucleic-acid-details-form",path:"nucleic-acid-details-form",loadChildren:function(){return Promise.all([n.e(3311),n.e(6599)]).then(n.bind(n,86599)).then(function(A){return A.NucleicAcidDetailsFormModule})}},{componentId:"substance-form-links",path:"substance-form-links",loadChildren:function(){return n.e(3127).then(n.bind(n,93127)).then(function(A){return A.SubstanceFormLinksModule})}},{componentId:"substance-form-sugars",path:"substance-form-sugars",loadChildren:function(){return n.e(7441).then(n.bind(n,57441)).then(function(A){return A.SubstanceFormSugarsModule})}},{componentId:"substance-form-mixture-details",path:"substance-form-mixture-details",loadChildren:function(){return Promise.all([n.e(3311),n.e(1605)]).then(n.bind(n,91605)).then(function(A){return A.SubstanceFormMixtureDetailsModule})}},{componentId:"substance-form-mixture-components",path:"substance-form-mixture-components",loadChildren:function(){return n.e(4394).then(n.bind(n,64394)).then(function(A){return A.SubstanceFormMixtureComponentsModule})}},{componentId:"substance-form-structurally-diverse-source",path:"substance-form-structurally-diverse-source",loadChildren:function(){return Promise.all([n.e(3311),n.e(4952)]).then(n.bind(n,14952)).then(function(A){return A.SubstanceFormStructurallyDiverseSourceModule})}},{componentId:"substance-form-structurally-diverse-organism",path:"substance-form-structurally-diverse-organism",loadChildren:function(){return Promise.all([n.e(3311),n.e(2809)]).then(n.bind(n,22809)).then(function(A){return A.SubstanceFormStructurallyDiverseOrganismModule})}},{componentId:"substance-form-constituents",path:"substance-form-constituents",loadChildren:function(){return Promise.all([n.e(8302),n.e(8592),n.e(2817)]).then(n.bind(n,32817)).then(function(A){return A.SubstanceFormConstituentsModule})}},{componentId:"substance-form-polymer-classification",path:"substance-form-polymer-classification",loadChildren:function(){return n.e(5850).then(n.bind(n,45850)).then(function(A){return A.SubstanceFormPolymerClassificationModule})}},{componentId:"substance-form-monomers",path:"substance-form-monomers",loadChildren:function(){return Promise.all([n.e(8592),n.e(4501)]).then(n.bind(n,24501)).then(function(A){return A.SubstanceFormMonomersModule})}},{componentId:"substance-form-structural-units",path:"substance-form-structural-units",loadChildren:function(){return Promise.all([n.e(8592),n.e(1089)]).then(n.bind(n,31089)).then(function(A){return A.SubstanceFormStructuralUnitsModule})}},{componentId:"substance-form-change-reason",path:"substance-form-change-reason",loadChildren:function(){return n.e(8603).then(n.bind(n,58603)).then(function(A){return A.SubstanceFormChangeReasonModule})}},{componentId:"substance-form-ssg-parent-substance",path:"ssg-parent-substance-form",loadChildren:function(){return n.e(6620).then(n.bind(n,46620)).then(function(A){return A.SsgParentSubstanceFormModule})}},{componentId:"substance-form-ssg-grade",path:"ssg-grade-form",loadChildren:function(){return Promise.all([n.e(8302),n.e(1368)]).then(n.bind(n,81368)).then(function(A){return A.SsgGradeFormModule})}},{componentId:"substance-form-ssg-definition",path:"ssg-definition-form",loadChildren:function(){return Promise.all([n.e(8302),n.e(4300)]).then(n.bind(n,24300)).then(function(A){return A.SsgDefinitionFormModule})}},{componentId:"substance-form-ssg4m-process",path:"ssg4m-process-form",loadChildren:function(){return Promise.resolve().then(n.bind(n,89965)).then(function(A){return A.SubstanceSsg4mProcessModule})}},{componentId:"substance-form-ssg2-manufacturing",path:"substance-form-ssg2-manufacturing",loadChildren:function(){return Promise.resolve().then(n.bind(n,91526)).then(function(A){return A.Ssg2ManufacturingModule})}},{componentId:"substance-form-ssg2-overview",path:"substance-form-ssg2-overview",loadChildren:function(){return n.e(7408).then(n.bind(n,57408)).then(function(A){return A.Ssg2OverviewFormModule})}}],Zd=n(94673),eh=n(72869),th=n(26120),nh=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[ve.ez,o.UX,o.u5,xi.QW,It.lN,$e.c,y.ot,Me.AV,El.PW,Y.Ps,G.Is,_.Bz,kt.Cq]]}),g}(),L_=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.platformId=l,this.configService=i}return(0,e.Z)(A,[{key:"intercept",value:function(i,C){if((0,ve.NF)(this.platformId))try{this.configService.configData&&this.configService.configData.authenticateAs&&(this.configService.configData.authenticateAs.apiUsername&&(i=i.clone({headers:i.headers.set("auth-username",this.configService.configData.authenticateAs.apiUsername)})),this.configService.configData.authenticateAs.apiPassword&&(i=i.clone({headers:i.headers.set("auth-password",this.configService.configData.authenticateAs.apiPassword)})),this.configService.configData.authenticateAs.apiKey&&(i=i.clone({headers:i.headers.set("auth-key",this.configService.configData.authenticateAs.apiKey)})),this.configService.configData.authenticateAs.apiToken&&(i=i.clone({headers:i.headers.set("auth-token",this.configService.configData.authenticateAs.apiToken)})));var w=sessionStorage.getItem("authToken");w&&(i=i.clone({headers:i.headers.set("auth-token",w)}))}catch(V){console.log("ERROR in intercept function: "+V)}return C.handle(i)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.LFG(t.Lbi),t.LFG(b.E))},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac}),g}(),nf=n(7168),af=n(96769),kd=n(24054),rf=n(60756),F_=n(47078),ih=n(82835),ah=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({providers:[Ds],imports:[[ve.ez,o.UX,o.u5,xi.QW,ue.p0,It.lN,$e.c,Pl.Nh,Me.AV,El.PW,Be.dp,kt.Cq,Yn.Cv,y.ot,Xe.p9,fa.LD,lt.JX,Me.AV,kt.Cq,G.Is,Ya,Gi.TU,Y.Ps,F_.hQ]]}),g}();t.B6R(Mu._,[ve.O5,G.uh,It.KE,$e.Nt,o.Fj,o.Q7,o.JJ,o.On,ih.K,y.lW,ve.sg,ve.PC,G.H8],[]);var rh=n(35756),oh=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[ve.ez,xi.QW,Al.Bb,$e.c,o.u5,o.UX,fa.LD,Me.AV,y.ot,Y.Ps,Su.FA,_.Bz]]}),g}(),N_=function(){var g=function(){function A(l,i){(0,c.Z)(this,A),this.router=l,this.authService=i}return(0,e.Z)(A,[{key:"canActivate",value:function(i,C){var w=this;return new D.y(function(V){w.authService.getAuth().subscribe(function(Ze){Ze?w.authService.hasAnyRolesAsync("Admin").subscribe(function(Bt){Bt?(V.next(!0),V.complete()):(V.next(w.router.parseUrl("/admin")),V.complete())}):(V.next(w.router.createUrlTree(["/login"],{queryParams:{path:C.url}})),V.complete())})})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.LFG(_.F0),t.LFG(h.e))},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac}),g}(),sh=n(2711),x=function(){var g=function(){function A(){(0,c.Z)(this,A)}return(0,e.Z)(A,[{key:"handleError",value:function(i){/Loading chunk/.test(i.message)||console.error(i)}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275prov=t.Yz7({token:g,factory:g.\u0275fac}),g}(),Z=n(45723),pe=n(63200),it=n(53956),Ut=["dynamicComponent"],tn=["expansionPanel"];function Mn(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",20),t.NdJ("click",function(){return t.CHM(l),t.oxw().toggleValidation()}),t._uU(1),t._UZ(2,"mat-icon",21),t.qZA()}if(2&g){var i=t.oxw();t.Q6J("disabled",i.isLoading),t.xp6(1),t.hij(" ",i.showSubmissionMessages?"Hide":"Show"," messages "),t.xp6(1),t.Q6J("svgIcon",i.showSubmissionMessages?"chevron_up":"chevron_down")}}function En(g,A){if(1&g&&(t.TgZ(0,"div",22),t._uU(1),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.hij(" ",l.submissionMessage," ")}}function Rn(g,A){1&g&&(t.TgZ(0,"div",22),t._uU(1," Please correct or dismiss the following errors and submit again: "),t.qZA())}function si(g,A){if(1&g&&(t.TgZ(0,"span"),t._UZ(1,"br"),t.TgZ(2,"a",33),t._uU(3),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(4);t.xp6(2),t.Q6J("href",i.fixLink(l.href),t.LSH),t.xp6(1),t.Oqu(l.text)}}function ui(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",34),t.NdJ("click",function(){t.CHM(l);var C=t.oxw().index;return t.oxw(3).dismissValidationMessage(C)}),t._UZ(1,"mat-icon",35),t.qZA()}}function gi(g,A){if(1&g&&(t.TgZ(0,"div",28),t.TgZ(1,"div",29),t._uU(2),t.qZA(),t.TgZ(3,"div",30),t._uU(4),t.YNc(5,si,4,2,"span",31),t.qZA(),t.YNc(6,ui,2,0,"button",32),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(3);t.xp6(1),t.Q6J("ngClass","ERROR"==l.messageType?"error-message":"warning-message"),t.xp6(1),t.hij(" ",l.messageType,""),t.xp6(2),t.Oqu(l.message),t.xp6(1),t.Q6J("ngForOf",l.links),t.xp6(1),t.Q6J("ngIf","ERROR"!=l.messageType&&!i.approving)}}function Zi(g,A){if(1&g&&(t.TgZ(0,"span"),t.YNc(1,Rn,2,0,"div",11),t.YNc(2,gi,7,5,"div",27),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!l.serverError&&!l.approving),t.xp6(1),t.Q6J("ngForOf",l.validationMessages)}}function ta(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",36),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).submit()}),t._uU(1),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",i.isLoading||!1===i.validationResult),t.xp6(1),t.hij("",i.validationMessages&&i.validationMessages.length>0?"Dismiss All and ":""," Submit")}}function ma(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",37),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).showSubmissionMessages=!1}),t._uU(1," Cancel"),t.qZA()}}function Fa(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",36),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).approve()}),t._uU(1," Confirm Approval"),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",i.isLoading||!i.canApprove)}}function pa(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,Zi,3,2,"span",12),t.TgZ(2,"div",23),t._UZ(3,"span",24),t.YNc(4,ta,2,2,"button",25),t.YNc(5,ma,2,0,"button",26),t.YNc(6,Fa,2,1,"button",25),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.validationMessages.length>0),t.xp6(3),t.Q6J("ngIf",!l.approving),t.xp6(1),t.Q6J("ngIf",!l.approving),t.xp6(1),t.Q6J("ngIf",l.approving)}}function er(g,A){if(1&g&&(t.TgZ(0,"div"),t.TgZ(1,"span",38),t._uU(2),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(2),t.hij("",l.id&&!l.imported?"Editing ":"Registering New "," - Specified Substance Group 4 Manufacturing ")}}function lr(g,A){if(1&g&&(t.TgZ(0,"div",39),t._UZ(1,"div",40),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("innerHTML",l.errorMessage,t.oJD)}}var yo=function(A){return{hidden:A}};function Vo(g,A){if(1&g&&(t.TgZ(0,"mat-expansion-panel",41,42),t.TgZ(2,"mat-expansion-panel-header"),t.TgZ(3,"mat-panel-title"),t.TgZ(4,"span",43),t._uU(5),t.qZA(),t._UZ(6,"div",24),t.qZA(),t.qZA(),t._UZ(7,"div",null,44),t.qZA()),2&g){var l=A.$implicit,i=t.oxw();t.Q6J("expanded",i.expandedComponents.indexOf(l.dynamicComponentName)>-1)("id",l.dynamicComponentName)("ngClass",t.VKq(4,yo,l.isHidden)),t.xp6(5),t.Oqu(l.menuLabel)}}var fs=function(A){return{"top-fixed-top":A}},Qr=function(A,l){return{"submission-messages":!0,collapsed:A,expanded:l}},_l=function(A){return{padtop70px:A}},kl=function(A){return{"form-header-title-top":A}},Id=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt,cn,Fn,Bn,Kn,fi,$n,$i){(0,c.Z)(this,A),this.activatedRoute=l,this.substanceService=i,this.loadingService=C,this.mainNotificationService=w,this.router=V,this.dynamicComponentLoader=Ze,this.gaService=Ot,this.substanceSsg4mService=Bt,this.substanceFormService=cn,this.overlayContainerService=Fn,this.dialog=Bn,this.authService=Kn,this.titleService=fi,this.configService=$n,this.sanitizer=$i,this.isLoading=!0,this.formSections=[],this.expandedComponents=["substance-form-ssg4m-process"],this.showSubmissionMessages=!1,this.validationResult=!1,this.subscriptions=[],this.microserviceStatusUp=!1,this.classes=["concept","protein","chemical","structurallyDiverse","polymer","nucleicAcid","mixture","specifiedSubstanceG1","specifiedSubstanceG2","specifiedSubstanceG3","specifiedSubstanceG4m"],this.imported=!1,this.forceChange=!1,this.sameSubstance=!1,this.showHeaderBar="true",this.showFormReadOnly="false",this.showRegisterEditTitle="true",this.jsLibScriptUrls=["".concat(yi.N.baseHref||"","assets/pathway/cola.min.js"),"".concat(yi.N.baseHref||"","assets/pathway/d3v4.js"),"".concat(yi.N.baseHref||"","assets/pathway/pathwayviz.js")]}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.showHeaderBar=this.activatedRoute.snapshot.queryParams.header||"true",this.showFormReadOnly=this.activatedRoute.snapshot.queryParams.readonly||"false",this.loadingService.setLoading(!0),this.isAdmin=this.authService.hasRoles("admin"),this.isUpdater=this.authService.hasAnyRoles("Updater","SuperUpdater"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.imported=!1,this.showRegisterEditTitle=(this.configService.configData&&this.configService.configData.ssg4Form||null).showRegisterEditTitle;var w=this.activatedRoute.params.subscribe(function(Bt){if(Bt.id){var cn=Bt.id;if(cn!==i.id){i.id=cn,i.gaService.sendPageView("Substance Edit"),i.titleService.setTitle("Edit - Specified Substance Group 4 Manufacturing"),i.substanceClass="specifiedSubstanceG4m";var Fn=i.activatedRoute.snapshot.queryParamMap.get("switch")||null;Fn?i.getSsg4mDetails(Fn):i.getSsg4mDetails()}}else setTimeout(function(){i.gaService.sendPageView("Substance Register"),i.subClass=i.activatedRoute.snapshot.params.type||"specifiedSubstanceG4m",i.substanceClass=i.subClass,i.titleService.setTitle("Register - Specified Substance Group 4 Manufacturing"),i.substanceFormService.loadSubstance(i.substanceClass).pipe((0,J.q)(1)).subscribe(function(){i.setFormSections(Er.x[i.substanceClass]),i.loadingService.setLoading(!1),i.isLoading=!1})})});this.subscriptions.push(w);var V=this.router.events.subscribe(function(Bt){Bt instanceof _.OD&&i.substanceSsg4mService.unloadSubstance()});if(this.subscriptions.push(V),this.approving=!1,!window.schemeUtil)for(var Ze=0;Ze=w?i.loadingService.setLoading(!1):(new Date).getTime()-Ze.getTime()>12e3&&confirm("There was a network error while fetching files, would you like to refresh?")&&window.location.reload(),setTimeout(function(){i.loadingService.setLoading(!1)},5)})})}C.unsubscribe()})}},{key:"openedChange",value:function(i){this.overlayContainer.style.zIndex=i?"1002":"1000"}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"importDialog",value:function(){var i=this,w=this.dialog.open(vn,{width:"650px",autoFocus:!1,data:{title:"Manufacturing Scheme Import"}});this.overlayContainer.style.zIndex="1002",w.afterClosed().pipe((0,J.q)(1)).subscribe(function(Ze){Ze&&(i.loadingService.setLoading(!0),i.overlayContainer.style.zIndex=null,setTimeout(function(){i.router.onSameUrlNavigation="reload",i.loadingService.setLoading(!1),i.router.navigateByUrl(i.id?"/substances-ssg4m/"+i.id+"/edit?action=import&header="+i.showHeaderBar:"/substances-ssg4m/register?action=import&header="+i.showHeaderBar,{state:{record:Ze}})},1e3))})}},{key:"test",value:function(){this.router.navigated=!1,this.router.navigate([this.router.url])}},{key:"canBeApproved",value:function(){var i=this.activatedRoute.snapshot.queryParams.action||null;if(i&&"import"===i)return!1;if(this.definition&&this.definition.lastEditedBy&&this.user){var C=this.definition.lastEditedBy;return!(!C||"approved"===this.definition.status||C===this.user)}return!1}},{key:"showJSON",value:function(){var i=this.dialog.open(bu,{width:"90%"});this.overlayContainer.style.zIndex="1002";var C=i.afterClosed().pipe((0,J.q)(1)).subscribe(function(w){});this.subscriptions.push(C)}},{key:"saveJSON",value:function(){this.json=this.substanceFormService.cleanSubstance();var i=this.sanitizer.bypassSecurityTrustUrl("data:text/json;charset=UTF-8,"+encodeURIComponent(JSON.stringify(this.json)));this.downloadJsonHref=i;var C=new Date;this.jsonFileName="SSG4m_"+_e(C).format("MMM-DD-YYYY_H-mm-ss")}},{key:"checkSsg4mServerStatus",value:function(){var i=this;this.substanceSsg4mService.checkSsg4mServerStatus().pipe((0,J.q)(1)).subscribe(function(C){C?C.status&&"OK"===C.status&&(i.microserviceStatusUp=!0):i.microserviceStatusUp=!1},function(C){0===C.status&&window.location.reload(),i.microserviceStatusUp=!1,i.errorMessage="Unable to load the data for Record ID "+i.id+"

        ",C&&C.error&&C.error.message?i.errorMessage=i.errorMessage+"Server Error "+(C.status+": "||0)+C.error.message:C&&C.error&&"string"==typeof C.error?i.errorMessage=i.errorMessage+"
        Server Error "+(C.status+": "||0)+C.error:C&&C.message?(i.errorMessage=i.errorMessage+"
        Server Error "+(C.status+": "||0)+C.message,i.errorMessage=i.errorMessage+"
        It looks like the SSG4m microservice is not running.
        ",i.errorMessage=i.errorMessage+"Please ask your system administrator to verify that the SSG4m microservice is running without error, and also to examine the website logs to:
        - check if there are any database connection issues, and
        - make sure the system is using valid authentication credentials into the database"):i.errorMessage=i.errorMessage+"There could be an authentication issue.
        -Make sure that you are logged into the GSRS website.
        -Clear your browser cache.
        -Reload your SSG4 page or Appian"})}},{key:"getSsg4mDetails",value:function(i){var C=this;this.checkSsg4mServerStatus(),this.substanceSsg4mService.getSsg4mDetails(this.id).pipe((0,J.q)(1)).subscribe(function(V){if(V){var Ot,Ze=C.activatedRoute.snapshot.queryParams.action||null;if(C.ssg4mSyntheticPathway=V,Ze&&"import"===Ze&&window.history.state){C.gaService.sendPageView("Substance Import");var Bt=window.history.state.record;if(Bt&&C.jsonValid(Bt)){var cn=JSON.parse(Bt);cn&&C.substanceFormService.loadSubstance(C.substanceClass,cn).pipe((0,J.q)(1)).subscribe(function(){C.setFormSections(Er.x[C.substanceClass])})}}else V.sbmsnDataText?(Ot=JSON.parse(V.sbmsnDataText),C.substanceFormService.loadSubstance(Ot.substanceClass,Ot).pipe((0,J.q)(1)).subscribe(function(){C.setFormSections(Er.x[C.substanceClass])})):V.sbmsnDataText||C.substanceFormService.loadSubstance(C.substanceClass).pipe((0,J.q)(1)).subscribe(function(){C.setFormSections(Er.x[C.substanceClass])})}else null===V&&(C.errorMessage="There is no data found in the database for ID: "+C.id);C.loadingService.setLoading(!1),C.isLoading=!1},function(V){C.gaService.sendException("getSsg4mDetails: error from API call"),C.loadingService.setLoading(!1),C.isLoading=!1})}},{key:"jsonValid",value:function(i){try{JSON.parse(i)}catch(C){return!1}return!0}},{key:"getDetailsFromImport",value:function(i,C){var w=this;if(i&&this.jsonValid(i)){var V=JSON.parse(i);this.definitionType=V.definitionType,this.substanceClass=V.substanceClass,this.status=V.status,this.substanceFormService.loadSubstance(V.substanceClass,V,"import").pipe((0,J.q)(1)).subscribe(function(){w.setFormSections(Er.x[V.substanceClass]),setTimeout(function(){w.forceChange=!0,w.dynamicComponents.forEach(function(Ze,Ot){w.dynamicComponentLoader.getComponentFactory(w.formSections[Ot].dynamicComponentName).subscribe(function(Bt){w.formSections[Ot].dynamicComponentRef=Ze.createComponent(Bt),w.formSections[Ot].matExpansionPanel=w.matExpansionPanels.find(function(Fn,Bn){return Ot===Bn}),w.formSections[Ot].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,J.q)(1)).subscribe(function(Fn){w.formSections[Ot].menuLabel=Fn});var cn=w.formSections[Ot].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(Fn){w.formSections[Ot].isHidden=Fn});w.subscriptions.push(cn),w.formSections[Ot].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,J.q)(1)).subscribe(function(Fn){if(w.formSections[Ot].canAddItem=Fn,Fn){var Bn=w.formSections[Ot].addItemEmitter.subscribe(function(){w.formSections[Ot].matExpansionPanel.open(),w.formSections[Ot].dynamicComponentRef.instance.addItem()});w.formSections[Ot].dynamicComponentRef.instance.componentDestroyed.pipe((0,J.q)(1)).subscribe(function(){Bn.unsubscribe()})}}),w.formSections[Ot].dynamicComponentRef.changeDetectorRef.detectChanges()})}),w.canApprove=!1})},function(Ze){w.loadingService.setLoading(!1)})}else this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1);this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"getPartialSubstanceDetails",value:function(i,C){var w=this;this.substanceService.getSubstanceDetails(i).pipe((0,J.q)(1)).subscribe(function(V){V?(w.substanceClass=V.substanceClass,w.status=V.status,delete V.uuid,V._name&&delete V._name,w.scrub(V,C),w.substanceSsg4mService.loadSubstance(V.substanceClass,V).pipe((0,J.q)(1)).subscribe(function(){w.setFormSections(Er.x[V.substanceClass]),w.loadingService.setLoading(!1),w.isLoading=!1})):w.handleSubstanceRetrivalError()},function(V){w.gaService.sendException("getSubstanceDetails: error from API call"),w.loadingService.setLoading(!1),w.isLoading=!1,w.handleSubstanceRetrivalError()})}},{key:"setFormSections",value:function(){var i=this,C=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.formSections=[],C.forEach(function(w){var V=new Dc(w);i.formSections.push(V)})}},{key:"handleSubstanceRetrivalError",value:function(){var i=this;this.mainNotificationService.setNotification({message:"The substance you're trying to edit doesn't exist.",type:Rt.k.error,milisecondsToShow:4e3}),this.errorMessage="Unable to load the data.",setTimeout(function(){i.router.navigate(["/home"]),i.substanceSsg4mService.loadSubstance(i.subClass).pipe((0,J.q)(1)).subscribe(function(){i.setFormSections(Er.x.chemical),i.loadingService.setLoading(!1),i.isLoading=!1})},5e3)}},{key:"validate",value:function(i){this.approving=!(!i||"approval"!==i),this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.submissionMessage=null,this.validationMessages=[],this.validationResult=!0,this.showSubmissionMessages=!0,this.loadingService.setLoading(!1),this.isLoading=!1,0===this.validationMessages.length&&(this.submissionMessage="Specified Substance Group 4 is Valid. Would you like to submit?"),i&&"approval"===i&&(this.submissionMessage="Are you sure you'd like to approve this substance?"),this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"validateSubstance",value:function(){var i=this;return new D.y(function(C){var w=null;i.substanceService.validateSubstance(w).subscribe(function(V){if(V.validationMessages){for(var Ze=0;Ze=0;i--)"ERROR"!==this.validationMessages[i].messageType&&this.validationMessages.splice(i,1);0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"unloadNotification",value:function(i){this.substanceSsg4mService.isSubstanceUpdated&&(i.returnValue=!0)}},{key:"scrub",value:function(i,C){function w(){function nl(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return nl()+nl()+"-"+nl()+"-"+nl()+"-"+nl()+"-"+nl()+nl()+nl()}for(var V=i,Ze=dr.json.search(V,"//*[id]"),Ot={},Bt=0;Bt0),t.xp6(1),t.Q6J("disabled","true"===i.showFormReadOnly),t.xp6(2),t.Q6J("ngClass",t.WLB(16,Qr,!i.showSubmissionMessages,i.showSubmissionMessages)),t.xp6(1),t.Q6J("ngIf",i.submissionMessage),t.xp6(1),t.Q6J("ngIf",i.validationMessages),t.xp6(1),t.Q6J("ngClass",t.VKq(19,_l,"false"===i.showHeaderBar)),t.xp6(1),t.Q6J("ngClass",t.VKq(21,kl,"true"===i.showHeaderBar)),t.xp6(1),t.Q6J("ngIf","true"===i.showHeaderBar),t.xp6(1),t.Q6J("ngIf",i.errorMessage),t.xp6(4),t.Q6J("ngForOf",i.formSections)}},directives:[ve.mk,y.lW,qe.p6,Y.Hw,qe.VK,qe.OP,ve.O5,ve.sg,Me.gM,Ui.pp,Ui.ib,Ui.yz,Ui.yK],styles:[".top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;background-color:var(--regular-white-color);-ms-flex-align:center;align-items:center;box-shadow:0 3px 3px -2px var(--box-shadow-color),0 3px 4px 0 var(--box-shadow-color-2),0 1px 8px 0 var(--box-shadow-color-3);z-index:1001;-ms-flex-pack:end;justify-content:flex-end}.top-fixed-top[_ngcontent-%COMP%]{top:64px}.actions-container[_ngcontent-%COMP%]{max-width:100%;width:100%;background-color:var(--regular-white-color);padding:10px 45px;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;margin-top:-100;padding-top:0}.form-header[_ngcontent-%COMP%]{font-weight:500;font-size:28px}.form-header-title-top[_ngcontent-%COMP%]{padding-top:150px}.form-header-no-title-top[_ngcontent-%COMP%]{padding-top:100px}.form-header-title[_ngcontent-%COMP%]{max-width:1028px;width:100%;padding:10px;display:-ms-flexbox;display:flex;margin:0 auto}.cdk-overlay-pane[_ngcontent-%COMP%]{z-index:1005}mat-select-panel[_ngcontent-%COMP%]{z-index:1005}.admin-functions[_ngcontent-%COMP%], .changeClass[_ngcontent-%COMP%]{margin:-10px 5px -15px 30px;color:var(--primary-color)}.admin-functions[_ngcontent-%COMP%] .mat-form-field-wrapper, .changeClass[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-bottom:20px!important} .mat-form-field-wrapper{padding-bottom:5px}.advanced-features[_ngcontent-%COMP%]{z-index:2000!important;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-left:10px} .cdk-overlay-pane{margin-top:20px!important}.mat-accordion[_ngcontent-%COMP%]{width:100%;max-width:1020px;box-sizing:border-box}.hidden[_ngcontent-%COMP%]{display:none!important}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:var(--regular-white-color);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-align:center;align-items:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:var(--warning-dialog-color);background-color:var(--warning-dialog-bg-color)}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:var(--error-dialog-color);background-color:var(--error-dialog-bg-color)}.validate-button[_ngcontent-%COMP%]{margin-left:15px}.mat-expansion-panel-header-title[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.internal-link[_ngcontent-%COMP%]{color:var(--link-primary-color)}.import-button[_ngcontent-%COMP%]{margin-left:15px}.substance-form-row[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.sub-header[_ngcontent-%COMP%]{font-weight:400;padding-right:5px}.fontsize16px[_ngcontent-%COMP%]{font-size:16px}.fontsize20px[_ngcontent-%COMP%]{font-size:20px}.padall25px[_ngcontent-%COMP%]{padding:25px}.padtop70px[_ngcontent-%COMP%]{padding-top:50px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.margintop10px[_ngcontent-%COMP%]{margin-top:10px}.bordergray[_ngcontent-%COMP%]{border:1px solid green}.borderblue[_ngcontent-%COMP%]{border:1px solid #007CBA}.fontbold[_ngcontent-%COMP%]{font-weight:700}.colorbluefda[_ngcontent-%COMP%]{color:#007cba}.colorred[_ngcontent-%COMP%]{color:red}.bkcoloryellow[_ngcontent-%COMP%]{background-color:#f7f7d8} .custom-menu{margin-top:-12px}.mat-menu-item[_ngcontent-%COMP%]{color:#007cba!important}app-substance-form-ssg4m-process-card[_ngcontent-%COMP%] button[color=primary][_ngcontent-%COMP%]{float:right}"]}),g}(),ev=n(9597),Sg=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[ve.ez,y.ot,Y.Ps,ev.L]]}),g}(),R_=[{path:"substances-ssg4m/register",component:Id},{path:"substances-ssg4m/:id/edit",component:Id}],U_=function(){var g=function(){function A(l){(0,c.Z)(this,A),R_.forEach(function(i){l.config[0].children.push(i)})}return(0,e.Z)(A,null,[{key:"forRoot",value:function(){return{ngModule:A,providers:[]}}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.LFG(_.F0))},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[_.Bz.forChild(R_),ve.ez,o.UX,o.u5,It.lN,qe.Tx,Xe.p9,y.ot,Y.Ps,Me.AV,Pl.Nh,pt.t,fa.LD,$e.c,fo.Hi,Al.Bb,Zd.w,G.Is,ue.p0,Ui.To,Zl.g,el.Fk,Z.F,pe.U,ca.ie,Ed.x,Gr.vV,dd.s,_.Bz,kd.f,Yn.Cv,kt.Cq,Sg]]}),g}(),Ev=n(89965),Zv=n(36730),kv=n(95089),Iv=n(80346),Ld=n(34929),bo=n(26067),pu=function(){function g(A,l,i){(0,c.Z)(this,g),this.substanceService=A,this.utilsService=l,this.structureService=i,this.substanceDisulfideLinksEmitter=new bo.t,this.substanceGlycosylationEmitter=new bo.t,this.substanceLinksEmitter=new bo.t,this.substanceNamesEmitter=new bo.t,this.substanceOtherLinksEmitter=new bo.t,this.substanceStructuralModificationsEmitter=new bo.t,this.substanceCysteineEmitter=new bo.t,this.substanceFormActionEmitter=new bo.t,this.definitionEmitter=new ri.x,this.substanceSubunitsEmitter=new ri.x,this.substanceSugarsEmitter=new ri.x,this.substanceNucleicAcidEmitter=new ri.x,this.allSitesEmitter=new ri.x,this.displaySequencesEmitter=new ri.x,this.substanceChangeReasonEmitter=new ri.x,this.nameResolver=new ri.x,this.resolvedMol=this.nameResolver.asObservable(),this._bypassUpdateCheck=!1,this.substanceEmitter=new bo.t}return(0,e.Z)(g,[{key:"ngOnDestroy",value:function(){this.unloadSubstance()}},{key:"loadSubstance",value:function(){var l=this,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"chemical",C=arguments.length>1?arguments[1]:void 0,w=arguments.length>2?arguments[2]:void 0,V=arguments.length>3?arguments[3]:void 0;return this.method=w||null,V&&(this.privateSubstance=C,this.substanceEmitter.next(C),this.namesUpdated()),this.substanceEmitter.subscribe(function(Ze){}),new D.y(function(Ze){null!=C?(l.privateSubstance=C,i=l.privateSubstance.substanceClass):(l.privateSubstance="chemical"===i||"structure"===i?{substanceClass:"chemical",references:[],names:[],structure:{molfile:"\n\n\n 0 0 0 0 0 0 999 V2000\nM END"},codes:[],relationships:[],properties:[]}:"protein"===i?{substanceClass:"protein",references:[],names:[],protein:{proteinType:""},codes:[],relationships:[],properties:[]}:"nucleicAcid"===i?{substanceClass:"nucleicAcid",references:[],names:[],nucleicAcid:{},codes:[],relationships:[],properties:[]}:"mixture"===i?{substanceClass:"mixture",references:[],names:[],mixture:{},codes:[],relationships:[],properties:[]}:"structurallyDiverse"===i?{substanceClass:"structurallyDiverse",references:[],names:[],structurallyDiverse:{part:["whole"],$$diverseType:"whole"},codes:[],relationships:[],properties:[]}:"specifiedSubstance"===i||"specifiedSubstanceG1"===i?{substanceClass:"specifiedSubstanceG1",references:[],names:[],specifiedSubstance:{constituents:[],references:[]},codes:[],relationships:[],properties:[]}:"specifiedSubstanceG2"===i?{substanceClass:"specifiedSubstanceG2",references:[],names:[],specifiedSubstanceG2:{constituents:[],references:[]}}:"specifiedSubstanceG3"===i?{substanceClass:i,references:[],names:[],specifiedSubstanceG3:{parentSubstance:{},definition:{references:[]},grade:{references:[]}},codes:[],properties:[]}:"specifiedSubstanceG4m"===i?{substanceClass:i,specifiedSubstanceG4m:{parentSubstance:{},process:[{sites:[{stages:[{stageNumber:"Stage 1",startingMaterials:[],processingMaterials:[],resultingMaterials:[],criticalParameters:[]}]}]}]}}:"polymer"===i?{substanceClass:i,references:[],names:[],polymer:{idealizedStructure:{},monomers:[]},codes:[],moieties:[],relationships:[],properties:[]}:{substanceClass:i,references:[],names:[],codes:[]},l.privateSubstance.access=["protected"],"specifiedSubstanceG4m"!==i&&"specifiedSubstanceG2"!==i&&(l.privateSubstance.definitionLevel="COMPLETE",l.privateSubstance.definitionType="PRIMARY")),l.subClass=l.privateSubstance.substanceClass,"chemical"===l.subClass?l.subClass="structure":"specifiedSubstanceG1"===l.subClass&&(l.subClass="specifiedSubstance"),null==l.privateSubstance[l.subClass]&&(l.privateSubstance[l.subClass]={}),l.initForm(),l.substanceEmitter.next(l.privateSubstance),Ze.next(),Ze.complete()})}},{key:"substanceFormAction",get:function(){return this.substanceFormActionEmitter.asObservable()}},{key:"initForm",value:function(){this.substanceFormActionEmitter.next("load")}},{key:"substance",get:function(){return this.substanceEmitter.asObservable()}},{key:"resetState",value:function(){var l=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(l)}},{key:"unloadSubstance",value:function(){this.allSitesArr=null,this.displaySequences=null,this.substanceEmitter.complete(),this.substanceDisulfideLinksEmitter.complete(),this.substanceGlycosylationEmitter.complete(),this.substanceLinksEmitter.complete(),this.substanceNamesEmitter.complete(),this.substanceOtherLinksEmitter.complete(),this.substanceStructuralModificationsEmitter.complete(),this.substanceCysteineEmitter.complete(),this.substanceEmitter=new bo.t,this.substanceDisulfideLinksEmitter=new bo.t,this.substanceGlycosylationEmitter=new bo.t,this.substanceLinksEmitter=new bo.t,this.substanceLinksEmitter=new bo.t,this.substanceOtherLinksEmitter=new bo.t,this.substanceStructuralModificationsEmitter=new bo.t,this.substanceCysteineEmitter=new bo.t,this.substanceFormActionEmitter.next("unload")}},{key:"ready",value:function(){var l=this;return new D.y(function(i){l.substanceEmitter.pipe((0,J.q)(1)).subscribe(function(C){i.next(),i.complete()})})}},{key:"setDefinitionFromDefRef",value:function(l){this.privateSubstance.structurallyDiverse?this.privateSubstance.structurallyDiverse.access=l:this.privateSubstance.protein?this.privateSubstance.protein.access=l:this.privateSubstance.structure?this.privateSubstance.structure.access=l:this.privateSubstance.mixture?this.privateSubstance.mixture.access=l:this.privateSubstance.polymer?this.privateSubstance.polymer.access=l:this.privateSubstance.nucleicAcid?this.privateSubstance.nucleicAcid.access=l:this.privateSubstance.specifiedSubstance&&(this.privateSubstance.specifiedSubstance.access=l),this.substanceEmitter.next(this.privateSubstance)}},{key:"getDefinitionForDefRef",value:function(){return this.privateSubstance.structurallyDiverse?this.privateSubstance.structurallyDiverse.access:this.privateSubstance.protein?this.privateSubstance.protein.access:this.privateSubstance.structure?this.privateSubstance.structure.access:this.privateSubstance.mixture?this.privateSubstance.mixture.access:this.privateSubstance.polymer?this.privateSubstance.polymer.access:this.privateSubstance.nucleicAcid?this.privateSubstance.nucleicAcid.access:this.privateSubstance.specifiedSubstance?this.privateSubstance.specifiedSubstance.access:void this.definitionEmitter.next(this.getDefinition())}},{key:"changeApproval",value:function(){var l=prompt("Enter new ApprovalID:");if(l){var i=this.privateSubstance.approvalID;this.privateSubstance.approvalID=l,alert('Approval ID changed from"'+i+'" to "'+l+'". Submit changes to save'),this.definitionEmitter.next(this.getDefinition())}}},{key:"switchType",value:function(l,i){var C={protein:["protein","modifications","properties"],chemical:["structure","moieties","modifications","properties"],structurallyDiverse:["structurallyDiverse","modifications","properties"],polymer:["polymer","modifications","properties"],nucleicAcid:["nucleicAcid","modifications","properties"],mixture:["mixture","modifications","properties"],specifiedSubstanceG1:[]};return C[i]&&C[i].forEach(function(w){l[w]&&delete l[w]}),l.substanceClass=i,"chemical"===i?l.structure={}:"protein"===i?l.protein={proteinType:""}:"nucleicAcid"===i?l.nucleicAcid={}:"mixture"===i?l.mixture={}:"structurallyDiverse"===i?l.structurallyDiverse={part:["whole"],$$diverseType:"whole"}:"specifiedSubstanceG1"===i?l.specifiedSubstance={}:"polymer"===i&&(l.polymer={idealizedStructure:{},monomers:[]}),alert("Substance type switched. Submit changes to save"),l}},{key:"setDefinitionPrivate",value:function(){this.privateSubstance.structurallyDiverse?this.setPrivate(this.privateSubstance.structurallyDiverse):this.privateSubstance.protein?this.setPrivate(this.privateSubstance.protein):this.privateSubstance.structure?this.setPrivate(this.privateSubstance.structure):this.privateSubstance.mixture?this.setPrivate(this.privateSubstance.mixture):this.privateSubstance.polymer?this.setPrivate(this.privateSubstance.polymer):this.privateSubstance.nucleicAcid?this.setPrivate(this.privateSubstance.nucleicAcid):this.privateSubstance.specifiedSubstance&&this.setPrivate(this.privateSubstance.specifiedSubstance)}},{key:"setPrivate",value:function(l){l.access=["protected"],alert("Substance definition now set to protected, please submit to save change")}},{key:"setDefinitionPublic",value:function(){this.privateSubstance.structurallyDiverse?this.setPublic(this.privateSubstance.structurallyDiverse):this.privateSubstance.protein?this.setPublic(this.privateSubstance.protein):this.privateSubstance.structure?this.setPublic(this.privateSubstance.structure):this.privateSubstance.mixture?this.setPublic(this.privateSubstance.mixture):this.privateSubstance.polymer?this.setPublic(this.privateSubstance.polymer):this.privateSubstance.nucleicAcid?this.setPublic(this.privateSubstance.nucleicAcid):this.privateSubstance.specifiedSubstance&&this.setPublic(this.privateSubstance.specifiedSubstance)}},{key:"conceptNonApproved",value:function(){"concept"===this.privateSubstance.substanceClass?(this.privateSubstance.status="non-approved",alert('Concept status set to "non approved", please submit to save changes')):alert("Can only change status of concept records")}},{key:"unapproveRecord",value:function(){var l=this.privateSubstance.approvalID;this.privateSubstance.approvalID=null,this.privateSubstance.status=null,this.privateSubstance.approved=null,this.privateSubstance.approvedBy=null,alert("Removed approvalID '"+l+"'. Submit record to save.")}},{key:"setPublic",value:function(l){l.access=[],alert("Substance definition set to be PUBLIC, please submit to save change")}},{key:"isSubstanceUpdated",get:function(){var l=JSON.stringify(this.privateSubstance);return this._bypassUpdateCheck?(this._bypassUpdateCheck=!1,!1):this.substanceStateHash!==this.utilsService.hashCode(l)}},{key:"autoSave",value:function(){var l=JSON.stringify(this.privateSubstance);return this.previousHash?!(this.previousHash===this.utilsService.hashCode(l)||(this.previousHash=this.utilsService.hashCode(l),0)):(this.previousHash=this.utilsService.hashCode(l),!1)}},{key:"bypassUpdateCheck",value:function(){this._bypassUpdateCheck=!0}},{key:"definition",get:function(){var l=this;return new D.y(function(i){l.ready().subscribe(function(){var C=l.getDefinition();i.next(C),l.definitionEmitter.subscribe(function(w){i.next(w)})})})}},{key:"updateDefinition",value:function(l){this.privateSubstance.definitionLevel=l.definitionLevel,this.privateSubstance.deprecated=l.deprecated,this.privateSubstance.access=l.access,this.privateSubstance.created=l.created,this.privateSubstance.createdBy=l.createdBy,this.privateSubstance.lastEdited=l.lastEdited,this.privateSubstance.lastEditedBy=l.lastEditedBy,l.status&&(this.privateSubstance.status=l.status),l.approvalID&&(this.privateSubstance.approvalID=l.approvalID),this.privateSubstance[l.substanceClass]?this.privateSubstance[l.substanceClass].references=l.references:this.privateSubstance[l.substanceClass]={references:l.references},this.privateSubstance.definitionType!==l.definitionType&&"ALTERNATIVE"===l.definitionType&&(this.privateSubstance.names=[],this.privateSubstance.codes=[],this.substanceNamesEmitter.next(this.privateSubstance.names)),this.privateSubstance.definitionType=l.definitionType,this.definitionEmitter.next(this.getDefinition())}},{key:"getJson",value:function(){return this.privateSubstance}},{key:"getUuid",value:function(){return this.privateSubstance.uuid}},{key:"getClass",value:function(){return this.privateSubstance.substanceClass}},{key:"changeStatus",value:function(l){this.privateSubstance.status=l,alert("Status changed to "+l)}},{key:"getDefinition",value:function(){if(!this.privateSubstance[this.subClass]){this.privateSubstance[this.subClass]={references:[]};var l=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(l)}if(!this.privateSubstance[this.subClass].references){this.privateSubstance[this.subClass].references=[];var i=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(i)}if(!this.privateSubstance.tags){this.privateSubstance.tags=[];var C=JSON.stringify(this.privateSubstance);this.substanceStateHash=this.utilsService.hashCode(C)}var w={uuid:this.privateSubstance[this.subClass].uuid||this.privateSubstance[this.subClass].id,substanceClass:this.subClass,definitionType:this.privateSubstance.definitionType,definitionLevel:this.privateSubstance.definitionLevel,deprecated:this.privateSubstance.deprecated,references:this.privateSubstance[this.subClass].references,access:this.privateSubstance.access,relationships:this.privateSubstance.relationships,created:this.privateSubstance.created,createdBy:this.privateSubstance.createdBy,lastEdited:this.privateSubstance.lastEdited,lastEditedBy:this.privateSubstance.lastEditedBy,_name:this.privateSubstance._name,tags:this.privateSubstance.tags};return this.privateSubstance.status&&(w.status=this.privateSubstance.status),this.privateSubstance.approvalID&&(w.approvalID=this.privateSubstance.approvalID),w}},{key:"allSites",get:function(){var l=this;return new D.y(function(i){l.allSitesArr||(l.allSitesArr=l.getAllSites()),i.next(l.allSitesArr),l.allSitesEmitter.subscribe(function(C){i.next(l.allSitesArr)})})}},{key:"emitAllsitesUpdate",value:function(){this.allSitesEmitter.next(this.getAllSites())}},{key:"getAllSites",value:function(){var l=[];if("protein"===this.privateSubstance.substanceClass&&(this.privateSubstance.protein.disulfideLinks&&this.privateSubstance.protein.disulfideLinks.forEach(function(C){C.sites&&C.sites.forEach(function(w){w.subunitIndex&&w.residueIndex&&l.push({residue:w.residueIndex,subunit:w.subunitIndex,type:"disulfide"})})}),this.privateSubstance.protein.otherLinks&&this.privateSubstance.protein.otherLinks.forEach(function(C){C.sites&&C.sites.forEach(function(w){w.subunitIndex&&w.residueIndex&&l.push({residue:w.residueIndex,subunit:w.subunitIndex,type:"other"})})}),this.privateSubstance.protein.glycosylation)){var i=this.privateSubstance.protein.glycosylation;i.CGlycosylationSites&&i.CGlycosylationSites.forEach(function(C){l.push({residue:C.residueIndex,subunit:C.subunitIndex,type:"C-Glycosylation"})}),i.NGlycosylationSites&&i.NGlycosylationSites.forEach(function(C){l.push({residue:C.residueIndex,subunit:C.subunitIndex,type:"N-Glycosylation"})}),i.OGlycosylationSites&&i.OGlycosylationSites.forEach(function(C){C.subunitIndex&&C.residueIndex&&l.push({residue:C.residueIndex,subunit:C.subunitIndex,type:"O-Glycosylation"})})}return this.privateSubstance.modifications.structuralModifications&&this.privateSubstance.modifications.structuralModifications.forEach(function(C){C.sites&&C.sites.forEach(function(w){w.subunitIndex&&w.residueIndex&&l.push({residue:w.residueIndex,subunit:w.subunitIndex,type:"modification"})})}),this.privateSubstance.properties&&this.privateSubstance.properties.forEach(function(C){"PROTEIN FEATURE"!==C.propertyType&&"NUCLEIC ACID FEATURE"!==C.propertyType||C.value.nonNumericValue.split(";").forEach(function(V){for(var Ze=V.split("-"),Ot=Number(Ze[0].split("_")[0]),Bt=Number(Ze[0].split("_")[1]);Bt<=Number(Ze[1].split("_")[1]);Bt++){var cn={residue:Number(Bt),subunit:Ot,type:"feature"};l.push(cn)}})}),l}},{key:"recalculateAllSites",value:function(l){var i=this.getAllSites();i!==this.allSitesArr&&(this.allSitesArr=i,this.allSitesEmitter.next(this.allSitesArr))}},{key:"resolvedName",value:function(l){this.nameResolver.next(l)}},{key:"updateNucleicAcidDetails",value:function(l){this.privateSubstance.nucleicAcid.nucleicAcidType=l.nucleicAcidType,this.privateSubstance.nucleicAcid.nucleicAcidSubType=l.nucleicAcidSubType,this.privateSubstance.nucleicAcid.sequenceOrigin=l.sequenceOrigin,this.privateSubstance.nucleicAcid.sequenceType=l.sequenceType}},{key:"substanceNucleicAcid",get:function(){var l=this;return new D.y(function(i){l.ready().subscribe(function(C){null==l.privateSubstance.nucleicAcid&&(l.privateSubstance.nucleicAcid={nucleicAcidType:""}),i.next(l.privateSubstance.nucleicAcid),l.substanceNucleicAcidEmitter.subscribe(function(w){i.next(l.privateSubstance.nucleicAcid)})})})}},{key:"namesUpdated",value:function(){return this.substanceNamesEmitter.asObservable()}},{key:"substanceSubunits",get:function(){var l=this;return new D.y(function(i){l.ready().subscribe(function(){if("protein"===l.privateSubstance.substanceClass){if(!l.privateSubstance.protein.subunits){l.privateSubstance.protein.subunits=[];var C=JSON.stringify(l.privateSubstance);l.substanceStateHash=l.utilsService.hashCode(C)}i.next(l.privateSubstance.protein.subunits),l.substanceSubunitsEmitter.subscribe(function(V){i.next(l.privateSubstance.protein.subunits)})}else{if(!l.privateSubstance.nucleicAcid.subunits){l.privateSubstance.nucleicAcid.subunits=[];var w=JSON.stringify(l.privateSubstance);l.substanceStateHash=l.utilsService.hashCode(w)}i.next(l.privateSubstance.nucleicAcid.subunits),l.substanceSubunitsEmitter.subscribe(function(V){i.next(l.privateSubstance.nucleicAcid.subunits)})}})})}},{key:"subunitDisplaySequences",get:function(){var l=this;return new D.y(function(i){l.ready().subscribe(function(){l.displaySequences||(l.displaySequences=l.createSubunitDisplay()),i.next(l.displaySequences),l.displaySequencesEmitter.subscribe(function(C){l.displaySequences=C,i.next(l.displaySequences)})})})}},{key:"addSubstanceSubunit",value:function(){if("protein"===this.privateSubstance.substanceClass)this.privateSubstance.protein.subunits.push({references:[],access:[],sequence:"",subunitIndex:this.privateSubstance.protein.subunits.length+1}),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);else{var C=this.privateSubstance.nucleicAcid.subunits.length||0;this.privateSubstance.nucleicAcid.subunits.push({references:[],access:[],sequence:"",subunitIndex:C+=1}),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.emitSugarUpdate(),this.emitLinkUpdate()}}},{key:"deleteSubstanceSubunit",value:function(l){"protein"===this.privateSubstance.substanceClass?this.privateSubstance.protein.subunits.findIndex(function(w){return l.subunitIndex===w.subunitIndex})>-1&&(this.rearrangeSubunitIndexes("protein",l.subunitIndex),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits)):this.privateSubstance.nucleicAcid.subunits.findIndex(function(w){return l.subunitIndex===w.subunitIndex})>-1&&(this.rearrangeNAIndexes("nucleicAdid",l.subunitIndex),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.emitSugarUpdate(),this.emitLinkUpdate())}},{key:"rearrangeNAIndexes",value:function(l,i){var C=this.privateSubstance.nucleicAcid.subunits.findIndex(function(w){return i===w.subunitIndex});this.privateSubstance.nucleicAcid.subunits.splice(C,1),this.privateSubstance.nucleicAcid.subunits.length>C-1&&(this.privateSubstance.nucleicAcid.subunits.forEach(function(w){w.subunitIndex>i&&(w.subunitIndex=w.subunitIndex-1)}),this.privateSubstance.nucleicAcid.sugars&&(this.privateSubstance.nucleicAcid.sugars.forEach(function(w){w.sites&&(w.sites=w.sites.filter(function(V){return V.subunitIndex!==i}),w.sites.forEach(function(V){V.subunitIndex&&V.subunitIndex>i&&(V.subunitIndex=V.subunitIndex-1)}))}),this.emitSugarUpdate()),this.privateSubstance.nucleicAcid.linkages&&(this.privateSubstance.nucleicAcid.linkages.forEach(function(w){w.sites&&(w.sites=w.sites.filter(function(V){return V.subunitIndex!==i}),w.sites.forEach(function(V){V.subunitIndex&&V.subunitIndex>i&&(V.subunitIndex=V.subunitIndex-1)}))}),this.emitSugarUpdate()))}},{key:"rearrangeSubunitIndexes",value:function(l,i){var C=this.privateSubstance.protein.subunits.findIndex(function(V){return i===V.subunitIndex});if(this.privateSubstance.protein.subunits.splice(C,1),this.privateSubstance.protein.subunits.length>C-1){if(this.privateSubstance.protein.subunits.forEach(function(V){V.subunitIndex>i&&(V.subunitIndex=V.subunitIndex-1)}),this.privateSubstance.protein.disulfideLinks&&(this.privateSubstance.protein.disulfideLinks.forEach(function(V){V.sites&&V.sites.forEach(function(Ze){Ze.subunitIndex===i&&(Ze={}),Ze.subunitIndex&&Ze.subunitIndex>i&&(Ze.subunitIndex=Ze.subunitIndex-1)})}),this.emitDisulfideLinkUpdate()),this.privateSubstance.protein.otherLinks&&(this.privateSubstance.protein.otherLinks.forEach(function(V){V.sites&&(V.sites=V.sites.filter(function(Ze){return Ze.subunitIndex!==i}),V.sites.forEach(function(Ze){Ze.subunitIndex&&Ze.subunitIndex>i&&(Ze.subunitIndex=Ze.subunitIndex-1)}))}),this.emitOtherLinkUpdate()),this.privateSubstance.protein.glycosylation){var w=this.privateSubstance.protein.glycosylation;w.CGlycosylationSites&&(w.CGlycosylationSites=w.CGlycosylationSites.filter(function(V){return V.subunitIndex!==i}),w.CGlycosylationSites.forEach(function(V){V.subunitIndex&&V.subunitIndex>i&&(V.subunitIndex=V.subunitIndex-1)})),w.NGlycosylationSites&&(w.NGlycosylationSites=w.NGlycosylationSites.filter(function(V){return V.subunitIndex!==i}),w.NGlycosylationSites.forEach(function(V){V.subunitIndex&&V.subunitIndex>i&&(V.subunitIndex=V.subunitIndex-1)})),w.OGlycosylationSites&&(w.OGlycosylationSites=w.OGlycosylationSites.filter(function(V){return V.subunitIndex!==i}),w.OGlycosylationSites.forEach(function(V){V.subunitIndex&&V.subunitIndex>i&&(V.subunitIndex=V.subunitIndex-1)})),this.emitGlycosylationUpdate()}this.privateSubstance.modifications.structuralModifications&&(this.privateSubstance.modifications.structuralModifications.forEach(function(V){V.sites&&(V.sites=V.sites.filter(function(Ze){return Ze.subunitIndex!==i}),V.sites.forEach(function(Ze){Ze.subunitIndex&&Ze.subunitIndex>i&&(Ze.subunitIndex=Ze.subunitIndex-1)}))}),this.emitStructuralModificationsUpdate()),this.privateSubstance.properties&&this.privateSubstance.properties.forEach(function(V){"PROTEIN FEATURE"!==V.propertyType&&"NUCLEIC ACID FEATURE"!==V.propertyType||V.value.nonNumericValue.split(";").forEach(function(Ot){})})}}},{key:"emitSubunitUpdate",value:function(){"protein"===this.privateSubstance.substanceClass?(this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits),this.displaySequencesEmitter.next(this.createSubunitDisplay())):(this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits),this.displaySequencesEmitter.next(this.createSubunitDisplay()),this.emitSugarUpdate(),this.emitLinkUpdate())}},{key:"otherLinksUpdated",value:function(){return this.substanceOtherLinksEmitter.asObservable()}},{key:"emitOtherLinkUpdate",value:function(){this.recalculateAllSites("other"),this.substanceOtherLinksEmitter.next(this.privateSubstance.protein.otherLinks)}},{key:"copyDisulfideLinks",value:function(l,i){for(var C=JSON.parse(JSON.stringify(this.privateSubstance.protein.disulfideLinks)),V=[],Ze=0;Ze0)for(var w=0;w-1&&(this.privateSubstance.nucleicAcid.sugars.splice(i,1),this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars))}},{key:"emitSugarUpdate",value:function(){this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars)}},{key:"changeReason",get:function(){var l=this;return new D.y(function(i){l.ready().subscribe(function(){i.next(l.privateSubstance.changeReason),l.substanceChangeReasonEmitter.subscribe(function(C){i.next(l.privateSubstance.changeReason)})})})}},{key:"updateChangeReason",value:function(l){this.privateSubstance.changeReason=l,this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason)}},{key:"validateSubstance",value:function(){var l=this;return new D.y(function(i){var C=l.cleanSubstance();l.substanceService.validateSubstance(C).subscribe(function(w){if(w.validationMessages){for(var V=0;V0)for(var C=this.privateSubstance.protein.disulfideLinks.length;C>=0;C--)this.privateSubstance.protein.disulfideLinks[C]&&this.privateSubstance.protein.disulfideLinks[C].sites&&this.privateSubstance.protein.disulfideLinks[C].sites[0]&&this.privateSubstance.protein.disulfideLinks[C].sites[1]&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[C].sites[0]).length&&0===Object.keys(this.privateSubstance.protein.disulfideLinks[C].sites[1]).length&&this.privateSubstance.protein.disulfideLinks.splice(C,1);var w=JSON.stringify(this.privateSubstance),V=JSON.parse(w),Ot=this.cleanObject(V).deletedUuids;return Ot.length>0&&(w=JSON.stringify(V),Ot.forEach(function(Bt){w=w.replace(new RegExp('"'.concat(Bt,'"'),"g"),"")}),w=(w=(w=w.replace(/,[,]+/g,",")).replace(/\[,/g,"[")).replace(/,\]/g,"]"),V=JSON.parse(w)),V}},{key:"cleanObject",value:function(l){var i=this,C=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if("[object Object]"===Object.prototype.toString.call(l)){var w=null!=l.$$deletedCode;return w?null!=l.uuid&&C.push(l.uuid):(delete l.$$deletedCode,Object.keys(l).forEach(function(V){"[object Array]"===Object.prototype.toString.call(l[V])?l[V]=l[V].filter(function(Ze){return!i.cleanObject(Ze,C).isDeleted}):"[object Object]"===Object.prototype.toString.call(l[V])&&i.cleanObject(l[V],C)})),{deletedUuids:C,isDeleted:w}}if("[object Array]"!==Object.prototype.toString.call(l))return{deletedUuids:C,isDeleted:!1};l.forEach(function(V){i.cleanObject(V,C)})}},{key:"getMethod",value:function(){return this.method}},{key:"structureDuplicateCheck",value:function(){var l=this;return new D.y(function(i){l.structureService.duplicateCheck(l.privateSubstance).subscribe(function(C){i.next(C),i.complete()})})}},{key:"getUNII",value:function(){return this.privateSubstance._approvalIDDisplay}},{key:"approveSubstance",value:function(){var l=this;return new D.y(function(i){var C={isSuccessfull:!0};l.substanceService.approveSubstance(l.privateSubstance.uuid).subscribe(function(w){l.privateSubstance=w,C.uuid=w.uuid,l.definitionEmitter.next(l.getDefinition()),"protein"===l.privateSubstance.substanceClass?l.substanceSubunitsEmitter.next(l.privateSubstance.protein.subunits):"nucleicAcid"===l.privateSubstance.substanceClass?(l.substanceSugarsEmitter.next(l.privateSubstance.nucleicAcid.sugars),l.substanceSubunitsEmitter.next(l.privateSubstance.nucleicAcid.subunits)):"mixture"===l.privateSubstance.substanceClass&&l.substanceSubunitsEmitter.next(l.privateSubstance.mixture.components),l.substanceChangeReasonEmitter.next(l.privateSubstance.changeReason),l.resetState(),l.substanceEmitter.next(l.privateSubstance),i.next(C),i.complete()},function(w){C.isSuccessfull=!1,w&&w.error&&w.error.validationMessages?C.validationMessages=w.error.validationMessages:C.serverError=w,i.error(C),i.complete()})})}},{key:"saveSubstance",value:function(){var l=this;return new D.y(function(i){var C={isSuccessfull:!0};null!=l.privateSubstance.structure&&!l.privateSubstance.structure.uuid&&(l.privateSubstance.structure.id=l.utilsService.newUUID(),l.privateSubstance.structure.uuid=l.privateSubstance.structure.id),null!=l.privateSubstance.moieties&&l.privateSubstance.moieties.length&&l.privateSubstance.moieties.forEach(function(V){V.uuid||(V.id=l.utilsService.newUUID(),V.uuid=V.id)});var w=l.cleanSubstance();l.substanceService.saveSubstance(w,l.method).subscribe(function(V){l.privateSubstance=V,C.uuid=V.uuid,l.definitionEmitter.next(l.getDefinition()),"protein"===l.privateSubstance.substanceClass?l.substanceSubunitsEmitter.next(l.privateSubstance.protein.subunits):"nucleicAcid"===l.privateSubstance.substanceClass?(l.substanceSugarsEmitter.next(l.privateSubstance.nucleicAcid.sugars),l.substanceSubunitsEmitter.next(l.privateSubstance.nucleicAcid.subunits)):"mixture"===l.privateSubstance.substanceClass&&l.substanceSubunitsEmitter.next(l.privateSubstance.mixture.components),l.substanceChangeReasonEmitter.next(l.privateSubstance.changeReason),l.substanceService.getSubstanceDetails(C.uuid).subscribe(function(Ze){l.privateSubstance=Ze,l.resetState(),l.substanceEmitter.next(l.privateSubstance),i.next(C),i.complete()},function(Ze){i.next(C),i.complete()})},function(V){C.isSuccessfull=!1,V&&V.error&&V.error.validationMessages?C.validationMessages=V.error.validationMessages:C.serverError=V,i.error(C),i.complete()})})}},{key:"siteDisplayToSite",value:function(l){var i=l.split("_");if(null===l.match(/^[0-9][0-9]*_[0-9][0-9]*$/g))throw new Error('"'+l+'" is not a valid shorthand for a site. Must be of form "{subunit}_{residue}"');return{subunitIndex:i[0]-0,residueIndex:i[1]-0}}},{key:"importSubstance",value:function(l,i){this.privateSubstance=l,this.method=i&&"update"===i?null:"import",this.definitionEmitter.next(this.getDefinition()),"protein"===this.privateSubstance.substanceClass?this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits):"nucleicAcid"===this.privateSubstance.substanceClass?(this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars),this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits)):"mixture"===this.privateSubstance.substanceClass&&this.substanceSubunitsEmitter.next(this.privateSubstance.mixture.components),this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason),this.resetState(),this.substanceEmitter.next(this.privateSubstance)}},{key:"stringToSites",value:function(l){if(!(l=l.replace(/ /g,"")))return[];var i=l.split(";"),C=[];for(var w in i){var V=i[w];if(""!==V){var Ze=V.split("-");if(Ze.length>1){var Ot=this.siteDisplayToSite(Ze[0]),Bt=this.siteDisplayToSite(Ze[1]);if(Ot.subunitIndex!==Bt.subunitIndex)throw new Error('"'+Ze+'" is not a valid shorthand for a site range. Must be between the same subunits.');if(Bt.residueIndex<=Ot.residueIndex)throw new Error('"'+Ze+'" is not a valid shorthand for a site range. Second residue index must be greater than first.');C.push(Ot);for(var cn=Ot.residueIndex+1;cn0&&(Ze+=0!==w?i+"_"+w+"-"+i+"_"+C:i+"_"+C),Ze}},{key:"createSubunitDisplay",value:function(){var l=[];l="protein"===this.privateSubstance.substanceClass?this.privateSubstance.protein.subunits:this.privateSubstance.nucleicAcid.subunits;performance.now();var C=[],w=1;return l.forEach(function(Ot){var Bt=[],cn=[];if(null!=Ot.sequence&&Ot.sequence.length>0)for(var Fn=0;Fn=Ot.sequence.length?(cn.push([Fn,Ot.sequence.length]),(Fn+10)%50!=0&&Bt.push(cn)):cn.push([Fn,Fn+10]),(Fn+10)%50==0&&(Bt.push(cn),cn=[]);for(var Bn={subunitIndex:w,subunits:[],subsections:Bt,subgroups:cn},Kn=0,fi=Ot.sequence&&Ot.sequence.length||0;Kn0?"Dismiss All and ":""," Submit")}}function j_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",37),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).showSubmissionMessages=!1}),t._uU(1," Cancel"),t.qZA()}}function Dg(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",36),t.NdJ("click",function(){return t.CHM(l),t.oxw(2).approve()}),t._uU(1," Confirm Approval"),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("disabled",i.isLoading||!i.canApprove)}}function J_(g,A){if(1&g&&(t.TgZ(0,"div"),t.YNc(1,Ag,3,2,"span",10),t.TgZ(2,"div",22),t._UZ(3,"span",5),t.YNc(4,Pg,2,2,"button",23),t.YNc(5,j_,2,0,"button",24),t.YNc(6,Dg,2,1,"button",23),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngIf",l.validationMessages.length>0),t.xp6(3),t.Q6J("ngIf",!l.approving),t.xp6(1),t.Q6J("ngIf",!l.approving),t.xp6(1),t.Q6J("ngIf",l.approving)}}function Fd(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div"),t.TgZ(1,"button",41),t.NdJ("click",function(w){return t.CHM(l),t.oxw().$implicit.addItem(),w.stopPropagation()}),t._uU(2),t._UZ(3,"mat-icon",42),t.qZA(),t.qZA()}if(2&g){var i=t.oxw().$implicit;t.xp6(1),t.MGl("id","Add new ",i.menuLabel,""),t.MGl("matTooltip","Add new ",i.menuLabel,""),t.xp6(1),t.hij(" Add ",i.menuLabel," ")}}var of=function(A){return{hidden:A}};function iv(g,A){if(1&g&&(t.TgZ(0,"mat-expansion-panel",38,39),t.TgZ(2,"mat-expansion-panel-header"),t.TgZ(3,"mat-panel-title"),t.TgZ(4,"h2"),t._uU(5),t.qZA(),t._UZ(6,"div",5),t.YNc(7,Fd,4,3,"div",10),t.qZA(),t.qZA(),t._UZ(8,"div",null,40),t.qZA()),2&g){var l=A.$implicit,i=t.oxw();t.Q6J("expanded",i.expandedComponents.indexOf(l.dynamicComponentName)>-1)("id",l.dynamicComponentName)("ngClass",t.VKq(5,of,l.isHidden)),t.xp6(5),t.Oqu(l.menuLabel),t.xp6(2),t.Q6J("ngIf",l.canAddItem)}}var wg=function(A,l){return{"submission-messages":!0,collapsed:A,expanded:l}},Q_=function(){var g=function(){function A(l,i,C,w,V,Ze,Ot,Bt,cn,Fn,Bn,Kn,fi,$n,$i){var la=this;(0,c.Z)(this,A),this.activatedRoute=l,this.substanceService=i,this.loadingService=C,this.mainNotificationService=w,this.router=V,this.dynamicComponentLoader=Ze,this.gaService=Ot,this.substanceFormService=Bt,this.overlayContainerService=cn,this.configService=Fn,this.dialog=Bn,this.authService=Kn,this.titleService=fi,this.utilsService=$n,this.substanceSsg2FormService=$i,this.isLoading=!0,this.formSections=[],this.expandedComponents=["substance-form-definition","substance-form-structure","substance-form-moieties","substance-form-references"],this.showSubmissionMessages=!1,this.validationResult=!1,this.subscriptions=[],this.draftCount=0,this.autoSaveWait=6e4,this.classes=["concept","protein","chemical","structurallyDiverse","polymer","nucleicAcid","mixture","specifiedSubstanceG1","specifiedSubstanceG2","specifiedSubstanceG3"],this.imported=!1,this.forceChange=!1,this.sameSubstance=!1,this.approvalType="lastEditedBy",this.substanceService.showImagePopup.subscribe(function(rr){la.hidePopup=rr}),this.substanceService.imagePopupUnit.subscribe(function(rr){la.unit=rr})}return(0,e.Z)(A,[{key:"showHidePopup",value:function(){this.hidePopup=!this.hidePopup,this.substanceService.showImagePopup.next(this.hidePopup)}},{key:"autoSave",value:function(){var i=this;setTimeout(function(){i.substanceFormService.autoSave()&&i.saveDraft(!0),i.autoSave()},this.autoSaveWait)}},{key:"openModal",value:function(i){var C=this,w=this.dialog.open(i,{height:"200px",width:"400px"});this.overlayContainer.style.zIndex="1002",w.afterClosed().subscribe(function(V){C.overlayContainer.style.zIndex=null})}},{key:"showDrafts",value:function(){var i=this,C=this.dialog.open(an,{maxHeight:"85%",width:"70%",data:{uuid:this.id}});this.overlayContainer.style.zIndex="1002",C.afterClosed().subscribe(function(w){if(i.overlayContainer.style.zIndex=null,w){i.loadingService.setLoading(!0);var V=w.substance;i.id&&V.uuid&&i.id===V.uuid?(i.substanceFormService.importSubstance(V,"update"),i.submissionMessage=null,i.validationMessages=[],i.showSubmissionMessages=!1,setTimeout(function(){i.loadingService.setLoading(!1),i.isLoading=!1,i.overlayContainer.style.zIndex=null},1e3)):w.uuid&&"register"!=w.uuid?i.router.navigateByUrl("/substances/"+w.uuid+"/edit?action=import&source=draft",{state:{record:w.substance}}):setTimeout(function(){i.overlayContainer.style.zIndex=null,i.router.onSameUrlNavigation="reload",i.loadingService.setLoading(!1),i.router.onSameUrlNavigation="reload",i.router.navigateByUrl("/substances/register/"+w.substance.substanceClass+"?action=import",{state:{record:w.substance}})},1e3)}var Ot=Object.keys(localStorage),Bt=Ot.length;for(i.draftCount=0,i.drafts=[];Bt--;)if(Ot[Bt].startsWith("gsrs-draft-")){var cn=JSON.parse(localStorage.getItem(Ot[Bt]));cn.key=Ot[Bt],(i.id&&cn.uuid===i.id||!i.id&&cn.type===i.activatedRoute.snapshot.params.type&&"register"===cn.uuid)&&i.draftCount++,i.drafts.push(cn)}})}},{key:"importDialog",value:function(){var i=this,C=this.dialog.open(vn,{width:"650px",autoFocus:!1});this.overlayContainer.style.zIndex="1002",C.afterClosed().pipe((0,J.q)(1)).subscribe(function(V){if(V){i.loadingService.setLoading(!0);var Ze=JSON.parse(V);i.id&&Ze.uuid&&i.id===Ze.uuid?(i.substanceFormService.importSubstance(Ze,"update"),i.submissionMessage=null,i.validationMessages=[],i.showSubmissionMessages=!1,setTimeout(function(){i.loadingService.setLoading(!1),i.isLoading=!1,i.overlayContainer.style.zIndex=null},1e3)):setTimeout(function(){i.overlayContainer.style.zIndex=null,i.router.onSameUrlNavigation="reload",i.loadingService.setLoading(!1),i.router.navigateByUrl("/substances/register?action=import",{state:{record:V}})},1e3)}})}},{key:"test",value:function(){this.router.navigated=!1,this.router.navigate([this.router.url])}},{key:"ngOnInit",value:function(){var i=this;this.loadingService.setLoading(!0),this.configService.configData&&this.configService.configData.approvalType&&(this.approvalType=this.configService.configData.approvalType),this.configService.configData&&this.configService.configData.autoSaveWait&&(this.autoSaveWait=this.configService.configData.autoSaveWait),this.isAdmin=this.authService.hasRoles("admin"),this.isUpdater=this.authService.hasAnyRoles("Updater","SuperUpdater"),this.overlayContainer=this.overlayContainerService.getContainerElement(),this.imported=!1;var C=this.activatedRoute.params.subscribe(function(Ze){var Ot=i.activatedRoute.snapshot.queryParams.action||null;if(Ze.id)if(Ot&&"import"===Ot&&window.history.state){var Bt=window.history.state;i.imported=!0,i.getDetailsFromImport(Bt.record)}else{var cn=Ze.id;if(cn!==i.id){i.id=cn,i.gaService.sendPageView("Substance Edit");var Fn=i.activatedRoute.snapshot.queryParamMap.get("switch")||null;Fn?i.getSubstanceDetails(Fn):i.getSubstanceDetails()}}else if(Ot&&"import"===Ot&&window.history.state){var Bn=window.history.state;i.imported=!0,i.getDetailsFromImport(Bn.record),i.gaService.sendPageView("Substance Register")}else i.copy=i.activatedRoute.snapshot.queryParams.copy||null,i.copy?(i.getPartialSubstanceDetails(i.copy,i.activatedRoute.snapshot.queryParams.copyType||null),i.gaService.sendPageView("Substance Register")):setTimeout(function(){i.gaService.sendPageView("Substance Register"),i.subClass=i.activatedRoute.snapshot.params.type||"specifiedSubstanceG2",i.substanceClass=i.subClass,i.titleService.setTitle("Register - "+i.subClass),i.substanceFormService.loadSubstance(i.subClass).pipe((0,J.q)(1)).subscribe(function(){i.setFormSections(Er.x[i.subClass]),i.loadingService.setLoading(!1),i.isLoading=!1})})});this.subscriptions.push(C);var w=this.router.events.subscribe(function(Ze){Ze instanceof _.OD&&i.substanceFormService.unloadSubstance()});this.subscriptions.push(w),this.approving=!1;var V=this.substanceFormService.definition.subscribe(function(Ze){i.definition=Ze,setTimeout(function(){i.canApprove=i.canBeApproved()})});this.subscriptions.push(V),this.authService.getAuth().pipe((0,J.q)(1)).subscribe(function(Ze){i.user=Ze.identifier,setTimeout(function(){i.canApprove=i.canBeApproved()})})}},{key:"getDrafts",value:function(){var i=Object.keys(localStorage),C=i.length;this.drafts=[];for(var w=0;C--;)if(i[C].startsWith("gsrs-draft-")){var V=JSON.parse(localStorage.getItem(i[C]));V.key=i[C],(this.id&&V.uuid===this.id||!this.id&&V.type===this.activatedRoute.snapshot.params.type&&"register"===V.uuid)&&w++,this.drafts.push(V)}this.draftCount=w}},{key:"ngAfterViewInit",value:function(){var i=this;this.getDrafts();var C=this.dynamicComponents.changes.subscribe(function(){var w=i.formSections.length,V=0;if(!i.forceChange){i.loadingService.setLoading(!0);var Ze=new Date;i.dynamicComponents.forEach(function(Ot,Bt){i.dynamicComponentLoader.getComponentFactory(i.formSections[Bt].dynamicComponentName).subscribe(function(cn){i.loadingService.setLoading(!0),i.formSections[Bt].dynamicComponentRef=Ot.createComponent(cn),i.formSections[Bt].matExpansionPanel=i.matExpansionPanels.find(function(Kn,fi){return Bt===fi}),i.formSections[Bt].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,J.q)(1)).subscribe(function(Kn){i.formSections[Bt].menuLabel=Kn});var Fn=i.formSections[Bt].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(Kn){i.formSections[Bt].isHidden=Kn});i.subscriptions.push(Fn),i.formSections[Bt].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,J.q)(1)).subscribe(function(Kn){if(i.formSections[Bt].canAddItem=Kn,Kn){var fi=i.formSections[Bt].addItemEmitter.subscribe(function(){i.formSections[Bt].matExpansionPanel.open(),i.formSections[Bt].dynamicComponentRef.instance.addItem()});i.formSections[Bt].dynamicComponentRef.instance.componentDestroyed.pipe((0,J.q)(1)).subscribe(function(){fi.unsubscribe()})}}),i.formSections[Bt].dynamicComponentRef.changeDetectorRef.detectChanges(),++V>=w?i.loadingService.setLoading(!1):(new Date).getTime()-Ze.getTime()>12e3&&confirm("There was a network error while fetching files, would you like to refresh?")&&window.location.reload(),setTimeout(function(){i.loadingService.setLoading(!1),i.UNII=i.substanceFormService.getUNII()},5)})})}C.unsubscribe(),setTimeout(function(){i.autoSave()},1e4)})}},{key:"openedChange",value:function(i){this.overlayContainer.style.zIndex=i?"1002":"1000"}},{key:"useFeature",value:function(i){this.feature=i.value,"glyco"===this.feature?this.glyco():"disulfide"===this.feature&&this.disulfide(),"concept"===this.feature&&this.concept(),"unapprove"===this.feature&&(confirm("Are you sure you'd like to remove the approvalID?")&&this.substanceFormService.unapproveRecord(),this.feature=void 0),"setPrivate"===this.feature&&(this.substanceFormService.setDefinitionPrivate(),this.feature=void 0),"setPublic"===this.feature&&(this.substanceFormService.setDefinitionPublic(),this.feature=void 0),"approved"===this.feature&&(this.substanceFormService.changeStatus("approved"),this.feature=void 0),"pending"===this.feature&&(this.substanceFormService.changeStatus("pending"),this.feature=void 0),"merge"===this.feature&&(this.mergeConcept(),this.feature=void 0),"switch"===this.feature&&(this.definitionSwitch(),this.feature=void 0),"changeApproval"===this.feature&&this.substanceFormService.changeApproval(),"fragment"===this.feature&&this.openFragmentDialog()}},{key:"openFragmentDialog",value:function(){var i=this.dialog.open(Mu._,{width:"70%",height:"70%"});this.overlayContainer.style.zIndex="50";var C=i.afterClosed().pipe((0,J.q)(1)).subscribe(function(w){});this.subscriptions.push(C)}},{key:"changeClass",value:function(i){this.router.navigate(["/substances",this.id,"edit"],{queryParams:{switch:i.value}}),this.feature=void 0}},{key:"changeStatus",value:function(i){this.substanceFormService.changeStatus(i),this.feature=void 0}},{key:"concept",value:function(){this.substanceFormService.conceptNonApproved(),this.feature=void 0}},{key:"glyco",value:function(){this.substanceFormService.predictSites(),this.feature=void 0}},{key:"disulfide",value:function(){this.substanceFormService.disulfideLinks(),this.feature=void 0}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i.unsubscribe()})}},{key:"canBeApproved",value:function(){var i=this.activatedRoute.snapshot.queryParams.action||null;if(i&&"import"===i)return!1;if("createdBy"===this.approvalType){if(this.definition&&this.definition.createdBy&&this.user){var C=this.definition.createdBy;return!(!C||"approved"===this.definition.status||C===this.user)}return!1}if(this.definition&&this.definition.lastEditedBy&&this.user){var w=this.definition.lastEditedBy;return!(!w||"approved"===this.definition.status||w===this.user)}}},{key:"showJSON",value:function(){var i=this.dialog.open(bu,{width:"90%"});this.overlayContainer.style.zIndex="1002";var C=i.afterClosed().pipe((0,J.q)(1)).subscribe(function(w){});this.subscriptions.push(C)}},{key:"getSubstanceDetails",value:function(i){var C=this;this.substanceService.getSubstanceDetails(this.id).pipe((0,J.q)(1)).subscribe(function(w){w._name&&C.titleService.setTitle("Edit - "+w._name),w?(C.definitionType=w.definitionType,i&&(w=C.substanceFormService.switchType(w,i)),C.substanceClass=w.substanceClass,C.status=w.status,C.substanceFormService.loadSubstance(w.substanceClass,w).pipe((0,J.q)(1)).subscribe(function(){C.setFormSections(Er.x[w.substanceClass])})):C.handleSubstanceRetrivalError(),C.loadingService.setLoading(!1),C.isLoading=!1},function(w){C.gaService.sendException("getSubstanceDetails: error from API call"),C.loadingService.setLoading(!1),C.isLoading=!1,C.handleSubstanceRetrivalError()})}},{key:"jsonValid",value:function(i){try{JSON.parse(i)}catch(C){return!1}return!0}},{key:"getDetailsFromImport",value:function(i,C){var w=this;if(this.jsonValid(i)||(i=JSON.stringify(i)),i&&this.jsonValid(i)){var V=JSON.parse(i);this.definitionType=V.definitionType,this.substanceClass=V.substanceClass,this.status=V.status,this.substanceFormService.loadSubstance(V.substanceClass,V,"import").pipe((0,J.q)(1)).subscribe(function(){w.setFormSections(Er.x[V.substanceClass]),setTimeout(function(){w.forceChange=!0,w.dynamicComponents.forEach(function(Ze,Ot){w.dynamicComponentLoader.getComponentFactory(w.formSections[Ot].dynamicComponentName).subscribe(function(Bt){w.formSections[Ot].dynamicComponentRef=Ze.createComponent(Bt),w.formSections[Ot].matExpansionPanel=w.matExpansionPanels.find(function(Fn,Bn){return Ot===Bn}),w.formSections[Ot].dynamicComponentRef.instance.menuLabelUpdate.pipe((0,J.q)(1)).subscribe(function(Fn){w.formSections[Ot].menuLabel=Fn});var cn=w.formSections[Ot].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(function(Fn){w.formSections[Ot].isHidden=Fn});w.subscriptions.push(cn),w.formSections[Ot].dynamicComponentRef.instance.canAddItemUpdate.pipe((0,J.q)(1)).subscribe(function(Fn){if(w.formSections[Ot].canAddItem=Fn,Fn){var Bn=w.formSections[Ot].addItemEmitter.subscribe(function(){w.formSections[Ot].matExpansionPanel.open(),w.formSections[Ot].dynamicComponentRef.instance.addItem()});w.formSections[Ot].dynamicComponentRef.instance.componentDestroyed.pipe((0,J.q)(1)).subscribe(function(){Bn.unsubscribe()})}}),w.formSections[Ot].dynamicComponentRef.changeDetectorRef.detectChanges()})}),w.canApprove=!1})},function(Ze){w.loadingService.setLoading(!1)})}else this.handleSubstanceRetrivalError(),this.loadingService.setLoading(!1);this.loadingService.setLoading(!1),this.isLoading=!1}},{key:"getPartialSubstanceDetails",value:function(i,C){var w=this;this.substanceService.getSubstanceDetails(i).pipe((0,J.q)(1)).subscribe(function(V){V?(w.substanceClass=V.substanceClass,w.status=V.status,delete V.uuid,V._name&&delete V._name,w.scrub(V,C),w.substanceFormService.loadSubstance(V.substanceClass,V).pipe((0,J.q)(1)).subscribe(function(){w.setFormSections(Er.x[V.substanceClass]),w.loadingService.setLoading(!1),w.isLoading=!1})):w.handleSubstanceRetrivalError()},function(V){w.gaService.sendException("getSubstanceDetails: error from API call"),w.loadingService.setLoading(!1),w.isLoading=!1,w.handleSubstanceRetrivalError()})}},{key:"setFormSections",value:function(){var i=this,C=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.formSections=[],C.forEach(function(w){var V=new Dc(w);i.formSections.push(V)})}},{key:"handleSubstanceRetrivalError",value:function(){var i=this;this.mainNotificationService.setNotification({message:"The substance you're trying to edit doesn't exist.",type:Rt.k.error,milisecondsToShow:4e3}),setTimeout(function(){i.router.navigate(["/substances/register"]),i.substanceFormService.loadSubstance(i.subClass).pipe((0,J.q)(1)).subscribe(function(){i.setFormSections(Er.x.chemical),i.loadingService.setLoading(!1),i.isLoading=!1})},5e3)}},{key:"validate",value:function(i){var C=this;this.approving=!(!i||"approval"!==i),this.isLoading=!0,this.serverError=!1,this.loadingService.setLoading(!0),this.substanceFormService.validateSubstance().pipe((0,J.q)(1)).subscribe(function(w){C.submissionMessage=null,C.validationMessages=w.validationMessages.filter(function(V){return"ERROR"===V.messageType.toUpperCase()||"WARNING"===V.messageType.toUpperCase()}),C.validationResult=w.valid,C.showSubmissionMessages=!0,C.loadingService.setLoading(!1),C.isLoading=!1,0===C.validationMessages.length&&!0===w.valid&&(C.submissionMessage="Substance is Valid. Would you like to submit?"),i&&"approval"===i&&(C.submissionMessage="Are you sure you'd like to approve this substance?")},function(w){C.addServerError(w),C.loadingService.setLoading(!1),C.isLoading=!1})}},{key:"approve",value:function(){var i=this;this.isLoading=!0,this.loadingService.setLoading(!0),this.substanceFormService.approveSubstance().pipe((0,J.q)(1)).subscribe(function(C){i.loadingService.setLoading(!1),i.isLoading=!1,i.validationMessages=null,i.openSuccessDialog("approve"),i.submissionMessage="Substance was approved successfully",i.showSubmissionMessages=!0,i.validationResult=!1},function(C){i.showSubmissionMessages=!0,i.loadingService.setLoading(!1),i.isLoading=!1,i.submissionMessage="Substance Could not be approved",i.addServerError(C.serverError),setTimeout(function(){i.showSubmissionMessages=!1,i.submissionMessage=null},1e4)})}},{key:"submit",value:function(){var i=this;this.isLoading=!0,this.approving=!1,this.loadingService.setLoading(!0),this.substanceFormService.saveSubstance().pipe((0,J.q)(1)).subscribe(function(C){i.loadingService.setLoading(!1),i.isLoading=!1,i.validationMessages=null,i.showSubmissionMessages=!1,i.submissionMessage="",i.id||(i.id=C.uuid),i.openSuccessDialog()},function(C){i.showSubmissionMessages=!0,i.loadingService.setLoading(!1),i.isLoading=!1,i.submissionMessage=null,C.validationMessages&&C.validationMessages.length?(i.validationResult=C.isSuccessfull,i.validationMessages=C.validationMessages.filter(function(w){return"ERROR"===w.messageType.toUpperCase()||"WARNING"===w.messageType.toUpperCase()}),i.showSubmissionMessages=!0):(i.submissionMessage="There was a problem with your submission",i.addServerError(C.serverError),setTimeout(function(){i.showSubmissionMessages=!1,i.submissionMessage=null},8e3))})}},{key:"dismissValidationMessage",value:function(i){this.validationMessages.splice(i,1),0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"addServerError",value:function(i){this.serverError=!0,this.validationResult=!1,this.validationMessages=null;var C={actionType:"server failure",links:[],appliedChange:!1,suggestedChange:!1,messageType:"ERROR",message:"Unknown Server Error"};i&&i.error&&i.error.message?C.message="Server Error "+(i.status+": "||0)+i.error.message:i&&i.error&&"string"==typeof i.error?C.message="Server Error "+(i.status+": "||0)+i.error:i&&i.message&&(C.message="Server Error "+(i.status+": "||0)+i.message),this.validationMessages=[C],this.showSubmissionMessages=!0}},{key:"toggleValidation",value:function(){this.showSubmissionMessages=!this.showSubmissionMessages}},{key:"dismissAllValidationMessages",value:function(){for(var i=this.validationMessages.length-1;i>=0;i--)"ERROR"!==this.validationMessages[i].messageType&&this.validationMessages.splice(i,1);0===this.validationMessages.length&&(this.submissionMessage="Substance is Valid. Would you like to submit?")}},{key:"unloadNotification",value:function(i){this.substanceFormService.isSubstanceUpdated&&(i.returnValue=!0)}},{key:"scrub",value:function(i,C){function w(){function Wr(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return Wr()+Wr()+"-"+Wr()+"-"+Wr()+"-"+Wr()+"-"+Wr()+Wr()+Wr()}for(var V=i,Ze=dr.json.search(V,"//*[id]"),Ot={},Bt=0;Bt0&&(Ot=C.names[0].name),i){this.getDrafts(),this.drafts.filter(function(la){return la.auto});var Bn=null,Kn=null,fi=null;this.drafts.forEach(function(la){la.auto&&("gsrs-draft-auto1"===la.file&&(Bn=la),"gsrs-draft-auto2"===la.file&&(Kn=la),"gsrs-draft-auto3"===la.file&&(fi=la))});var $n="gsrs-draft-auto";Bn?Kn?fi?$n=Bn.date0),t.xp6(4),t.Q6J("ngIf",i.definition&&"concept"!==i.definition.substanceClass&&!i.definition.approvalID&&!i.imported&&"ALTERNATIVE"!==i.definitionType),t.xp6(1),t.Q6J("ngClass",t.WLB(7,wg,!i.showSubmissionMessages,i.showSubmissionMessages)),t.xp6(1),t.Q6J("ngIf",i.submissionMessage),t.xp6(1),t.Q6J("ngIf",i.validationMessages),t.xp6(4),t.hij("",i.uuid&&!i.imported?"Editing ":"Registering New "," - Specified Substance Group 2 "),t.xp6(4),t.Q6J("ngForOf",i.formSections))},directives:[y.lW,ve.O5,Y.Hw,ve.mk,ve.sg,Me.gM,Ui.pp,Ui.ib,Ui.yz,Ui.yK],styles:["#overlay[_ngcontent-%COMP%]{position:fixed;display:block;width:100%;height:100%;inset:0;background-color:#00000080;z-index:2;cursor:pointer}.hide[_ngcontent-%COMP%]{display:none!important}.center-screen[_ngcontent-%COMP%]{z-index:2;position:fixed;background-color:#fff;width:50%;height:50%;top:50%;left:50%;margin-right:-50%;-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.center-screen[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{transition-duration:4s;margin:0 auto;display:block}.center-screen[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover{-ms-transform:scale(1.7);transform:scale(1.7);-webkit-transform:scale(1.7);-moz-transform:scale(1.7);z-index:0}.image-popped-up[_ngcontent-%COMP%]{width:100%;height:100%;padding:10px}.close-out[_ngcontent-%COMP%]{padding:10px;float:right;font-weight:500;cursor:pointer}.top-fixed[_ngcontent-%COMP%]{position:fixed;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;top:64px;width:100%;background-color:#fff;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f;z-index:1001}.cdk-overlay-pane[_ngcontent-%COMP%]{z-index:1005}mat-select-panel[_ngcontent-%COMP%]{z-index:1005}.admin-functions[_ngcontent-%COMP%], .changeClass[_ngcontent-%COMP%]{margin:-10px 5px -15px 30px;color:#4793d1}.admin-functions[_ngcontent-%COMP%] .mat-form-field-wrapper, .changeClass[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-bottom:20px!important} .mat-form-field-wrapper{padding-bottom:5px}.advanced-features[_ngcontent-%COMP%]{z-index:2000!important;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding-left:10px} .cdk-overlay-pane{margin-top:20px!important}.form-content-container[_ngcontent-%COMP%]{overflow:hidden;padding-top:121px}.actions-container[_ngcontent-%COMP%]{max-width:1128px;width:100%;background-color:#fff;padding:10px;display:-ms-flexbox;display:flex}.mat-accordion[_ngcontent-%COMP%]{width:100%;max-width:1020px;box-sizing:border-box}.hidden[_ngcontent-%COMP%]{display:none!important}.validation-body[_ngcontent-%COMP%]{max-width:95%;display:-ms-flexbox;display:flex;max-width:960px;word-break:break-word}.validation-dismiss[_ngcontent-%COMP%]{width:5%}.submission-messages[_ngcontent-%COMP%]{overflow:hidden;height:auto;transition:all .5s ease-out;max-width:1028px;width:100%;background-color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.submission-messages.collapsed[_ngcontent-%COMP%]{max-height:0}.submission-messages.expanded[_ngcontent-%COMP%]{max-height:500px;overflow-y:auto;padding:10px}.submission-messages[_ngcontent-%COMP%] .submission-message[_ngcontent-%COMP%]{font-weight:500;text-align:center}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;padding:5px 0}.submission-messages[_ngcontent-%COMP%] .validation-message[_ngcontent-%COMP%] .message-type[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500;margin-right:20px;padding:10px;border-radius:3px;height:40px;min-width:95px}.submission-messages[_ngcontent-%COMP%] .dismiss-container[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex}.submission-messages[_ngcontent-%COMP%] .warning-message[_ngcontent-%COMP%]{color:#8a6d3b;background-color:#fcf8e3}.submission-messages[_ngcontent-%COMP%] .error-message[_ngcontent-%COMP%]{color:#a94442;background-color:#f2dede}.validate-button[_ngcontent-%COMP%]{margin-left:15px}.mat-expansion-panel-header-title[_ngcontent-%COMP%]{-ms-flex-align:center;align-items:center}.hide-show-messages[_ngcontent-%COMP%]{margin-left:10px;border:1px solid}.internal-link[_ngcontent-%COMP%]{color:#448aff}.import-button[_ngcontent-%COMP%]{margin-left:15px}.json-button[_ngcontent-%COMP%]{margin-left:30px}.draft-button[_ngcontent-%COMP%]{margin-left:15px}.chip[_ngcontent-%COMP%]{background-color:#fff;border-radius:50%;padding:3px 5px;margin-left:5px;color:#1565c0;height:33px}.form-header[_ngcontent-%COMP%]{padding-top:20px;padding-left:210px;font-weight:500;font-size:28px}.fontsize20px[_ngcontent-%COMP%]{font-size:20px}.padtop90px[_ngcontent-%COMP%]{padding-top:90px}.padleft25px[_ngcontent-%COMP%]{padding-left:25px}.bordergray[_ngcontent-%COMP%]{border:1px solid green}.borderblue[_ngcontent-%COMP%]{border:1px solid #007CBA}.fontbold[_ngcontent-%COMP%]{font-weight:700}.colorbluefda[_ngcontent-%COMP%]{color:#007cba} .custom-menu{margin-top:-12px}.mat-menu-item[_ngcontent-%COMP%]{color:#007cba!important}"]}),g}(),lh=n(91526),W_=[{path:"substances-ssg2/register",component:Q_},{path:"substances-ssg2/:id/edit",component:Q_}],av=function(){var g=function(){function A(l){(0,c.Z)(this,A),W_.forEach(function(i){l.config[0].children.push(i)})}return(0,e.Z)(A,null,[{key:"forRoot",value:function(){return{ngModule:A,providers:[]}}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.LFG(_.F0))},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[_.Bz.forChild(W_),_.Bz,ve.ez,o.UX,o.u5,It.lN,qe.Tx,Xe.p9,y.ot,Y.Ps,Me.AV,Pl.Nh,pt.t,fa.LD,$e.c,fo.Hi,Al.Bb,G.Is,ue.p0,Ui.To,Zl.g,el.Fk,Yn.Cv,kt.Cq,ca.ie,Gr.vV,Z.F,pe.U,Zd.w,Ed.x,dd.s,kd.f,lh.Ssg2ManufacturingModule]]}),g}(),Eo=n(68458);function Og(g,A){1&g&&t._UZ(0,"mat-icon",11)}function z_(g,A){1&g&&t._UZ(0,"mat-icon",12)}function uh(g,A){if(1&g&&t._UZ(0,"input",13),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function G_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",14),t.NdJ("click",function(C){t.CHM(l);var w=t.oxw(2),V=t.MAs(4);return w.openModal(V,w.schema.comments),C.preventDefault()}),t.qZA(),t.qZA()}}function Eg(g,A){if(1&g&&(t.TgZ(0,"div",4),t.TgZ(1,"label",5),t.TgZ(2,"span",6),t.YNc(3,Og,1,0,"mat-icon",7),t.YNc(4,z_,1,0,"mat-icon",8),t.qZA(),t._UZ(5,"input",9),t.YNc(6,uh,1,2,"input",10),t._uU(7),t.YNc(8,G_,2,0,"sup",2),t.qZA(),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"tabbed":""),t.xp6(3),t.Q6J("ngIf",l.schema.children&&!0!==l.control.value),t.xp6(1),t.Q6J("ngIf",l.schema.children&&!0===l.control.value),t.xp6(1),t.Q6J("formControl",l.control)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly),t.xp6(1),t.hij(" ",l.schema.title?l.schema.title:l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function K_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",16),t.TgZ(1,"label",5),t.TgZ(2,"input",17),t.NdJ("change",function(V){return t.CHM(l),t.oxw(2).onCheck(V.target)}),t.qZA(),t._uU(3),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(2);t.xp6(2),t.s9C("value",i.enum[0]),t.uIk("name",C.name)("disabled",C.schema.readOnly)("checked",!!C.checked[i.enum[0]]||null)("id",C.id+"."+i.enum[0]),t.xp6(1),t.hij(" ",i.description," ")}}function Zg(g,A){if(1&g&&(t.ynx(0),t.YNc(1,K_,4,6,"div",15),t.BQk()),2&g){var l=t.oxw();t.xp6(1),t.Q6J("ngForOf",l.schema.items.oneOf)}}function kg(g,A){1&g&&t._uU(0),2&g&&t.hij(" ",A.$implicit.comment," ")}var Ig=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C){var w;return(0,c.Z)(this,i),(w=l.call(this)).dialog=C,w}return(0,e.Z)(i,[{key:"openModal",value:function(w,V){this.dialog.open(w,{width:"300px",data:{comment:V}})}}]),i}(Eo.OA);return g.\u0275fac=function(l){return new(l||g)(t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-custom-checkbox-widget"]],features:[t.qOj],decls:5,vars:2,consts:[[1,"widget","form-group"],["class","checkbox",3,"ngClass",4,"ngIf"],[4,"ngIf"],["info",""],[1,"checkbox",3,"ngClass"],[1,"horizontal","control-label"],[2,"width","24px","height","24px","display","inline-block","vertical-align","bottom"],["svgIcon","chevron_right",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],["type","checkbox",3,"formControl","disableControl"],["type","hidden",3,"formControl",4,"ngIf"],["svgIcon","chevron_right"],["svgIcon","chevron_down"],["type","hidden",3,"formControl"],["color","primary","svgIcon","help",1,"help-icon",2,"height","18px",3,"click"],["class","checkbox",4,"ngFor","ngForOf"],[1,"checkbox"],["type","checkbox",3,"value","change"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.YNc(1,Eg,9,10,"div",1),t.YNc(2,Zg,2,1,"ng-container",2),t.qZA(),t.YNc(3,kg,1,1,"ng-template",null,3,t.W1O)),2&l&&(t.xp6(1),t.Q6J("ngIf","array"!=i.schema.type),t.xp6(1),t.Q6J("ngIf","array"===i.schema.type))},directives:[ve.O5,ve.mk,Y.Hw,o.Wl,o.JJ,o.oH,Eo.dJ,o.Fj,ve.sg],styles:[".mat-select-panel[_ngcontent-%COMP%] mat-option.mat-option[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;word-wrap:normal;white-space:normal;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center;height:auto;min-height:48px;line-height:24px;padding-top:12px;padding-bottom:12px}.multiselect[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.label[_ngcontent-%COMP%]{width:45%;margin-top:12px}.cv-select[_ngcontent-%COMP%]{padding:8px;border-bottom:1px solid darkgray;margin-bottom:5px}.tabbed[_ngcontent-%COMP%]{padding-left:25px}.indent[_ngcontent-%COMP%]{padding-left:55px}.no-indent[_ngcontent-%COMP%]{padding-left:25px}.form-group[_ngcontent-%COMP%]{margin-top:7px}.help-icon[_ngcontent-%COMP%]{height:18px;cursor:pointer}"]}),g}();function Lg(g,A){if(1&g&&t._UZ(0,"input",2),2&g){var l=t.oxw();t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function Fg(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",9),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(2);return C.openModal(C.info,C.schema.comments)}),t.qZA(),t.qZA()}}function rv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",9),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3);return C.openModal(C.info,C.schema.comments)}),t.qZA(),t.qZA()}}function ov(g,A){if(1&g&&(t.TgZ(0,"span",10),t._uU(1),t.YNc(2,rv,2,0,"sup",5),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij("",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function sv(g,A){if(1&g&&t._UZ(0,"input",2),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function Ng(g,A){if(1&g&&(t.TgZ(0,"div",3),t.TgZ(1,"label",4),t._uU(2),t.YNc(3,Fg,2,0,"sup",5),t.qZA(),t.YNc(4,ov,3,2,"span",6),t._UZ(5,"input",7),t.YNc(6,sv,1,2,"input",8),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("name",l.name)("formControl",l.control),t.uIk("readonly",!("color"===l.schema.widget.id||!l.schema.readOnly)||null)("type",l.schema.widget.id&&"string"!==l.schema.widget.id?l.schema.widget.id:"text")("id",l.id)("placeholder",l.schema.placeholder)("maxLength",l.schema.maxLength||null)("minLength",l.schema.minLength||null)("required",l.schema.isRequired||null)("disabled",!("color"!=l.schema.widget.id||!l.schema.readOnly)||null),t.xp6(1),t.Q6J("ngIf","color"===l.schema.widget.id&&l.schema.readOnly)}}var lv=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C){var w;return(0,c.Z)(this,i),(w=l.call(this)).dialog=C,w}return(0,e.Z)(i,[{key:"openModal",value:function(w,V){this.dialog.open(w,{width:"300px",data:{comment:V}})}}]),i}(Eo.LY);return g.\u0275fac=function(l){return new(l||g)(t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-custom-text-widget"]],features:[t.qOj],decls:3,vars:2,consts:[["type","hidden",3,"formControl",4,"ngIf","ngIfElse"],["notHiddenFieldBlock",""],["type","hidden",3,"formControl"],[1,"widget","form-group",3,"ngClass"],[1,"horizontal","control-label",2,"display","inline-block","min-width","250px","margin-right","7px"],[4,"ngIf"],["class","formHelp",4,"ngIf"],[1,"text-widget.id","textline-widget","form-control",3,"name","formControl"],["type","hidden",3,"formControl",4,"ngIf"],["color","primary","svgIcon","help",1,"help-icon",2,"height","18px",3,"click"],[1,"formHelp"]],template:function(l,i){if(1&l&&(t.YNc(0,Lg,1,2,"input",0),t.YNc(1,Ng,7,16,"ng-template",null,1,t.W1O)),2&l){var C=t.MAs(2);t.Q6J("ngIf","hidden"===i.schema.widget.id)("ngIfElse",C)}},directives:[ve.O5,o.Fj,o.JJ,o.oH,ve.mk,Y.Hw,o.Q7],styles:[".indent[_ngcontent-%COMP%]{margin-left:55px;margin-top:7px}.no-indent[_ngcontent-%COMP%]{margin-left:30px;margin-top:7px}.help-icon[_ngcontent-%COMP%]{height:18px;cursor:pointer}"]}),g}();function Co(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",10),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(3);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Rg(g,A){if(1&g&&(t.TgZ(0,"label",8),t._uU(1),t.YNc(2,Co,2,0,"sup",9),t.qZA()),2&g){var l=t.oxw(2);t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function uv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",12),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(3);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function cv(g,A){if(1&g&&(t.TgZ(0,"span",11),t._uU(1),t.YNc(2,uv,2,0,"sup",9),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij(" ",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Ug(g,A){if(1&g&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.value),t.xp6(1),t.Oqu(l.display)}}function dv(g,A){if(1&g&&(t.TgZ(0,"mat-select",13),t.ynx(1),t.YNc(2,Ug,2,2,"mat-option",14),t.BQk(),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(2),t.Q6J("ngForOf",l.options)}}function $_(g,A){if(1&g&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.value),t.xp6(1),t.Oqu(l.display)}}function sf(g,A){if(1&g&&(t.TgZ(0,"mat-select",13),t.YNc(1,$_,2,2,"mat-option",14),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(1),t.Q6J("ngForOf",l.options)}}function uc(g,A){if(1&g&&t._UZ(0,"input",16),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function pv(g,A){if(1&g&&(t.TgZ(0,"div",3),t.YNc(1,Rg,3,3,"label",4),t.YNc(2,cv,3,2,"span",5),t.YNc(3,dv,3,5,"mat-select",6),t.YNc(4,sf,2,5,"mat-select",6),t.YNc(5,uc,1,2,"input",7),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"tabbed":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("ngIf","array"!=l.schema.type),t.xp6(1),t.Q6J("ngIf","array"===l.schema.type),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly)}}function fv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",10),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(3);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Bg(g,A){if(1&g&&(t.TgZ(0,"label",8),t._uU(1),t.YNc(2,fv,2,0,"sup",9),t.qZA()),2&g){var l=t.oxw(2);t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function X_(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",12),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(3);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Yc(g,A){if(1&g&&(t.TgZ(0,"span",11),t._uU(1),t.YNc(2,X_,2,0,"sup",9),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij(" ",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function mv(g,A){if(1&g&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.enum[0]),t.xp6(1),t.Oqu(l.description)}}function eg(g,A){if(1&g&&(t.ynx(0),t.YNc(1,mv,2,2,"mat-option",14),t.BQk()),2&g){var l=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",l.schema.oneOf)}}function Yg(g,A){if(1&g&&(t.TgZ(0,"mat-option",15),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l),t.xp6(1),t.Oqu(l)}}function wu(g,A){if(1&g&&t.YNc(0,Yg,2,2,"mat-option",14),2&g){var l=t.oxw(3);t.Q6J("ngForOf",l.schema.enum)}}function qg(g,A){if(1&g&&(t.TgZ(0,"mat-select",20),t.YNc(1,eg,2,1,"ng-container",21),t.YNc(2,wu,1,1,"ng-template",null,22,t.W1O),t.qZA()),2&g){var l=t.MAs(3),i=t.oxw(2);t.Q6J("formControl",i.control)("disableControl",i.schema.readOnly),t.uIk("name",i.name)("id",i.id),t.xp6(1),t.Q6J("ngIf",i.schema.oneOf)("ngIfElse",l)}}function Hg(g,A){if(1&g&&(t.TgZ(0,"mat-option",24),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l)("disabled",l.readOnly),t.xp6(1),t.Oqu(l)}}function fu(g,A){if(1&g&&(t.TgZ(0,"mat-select",13),t.YNc(1,Hg,2,3,"mat-option",23),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(1),t.Q6J("ngForOf",l.schema.items.enum)}}function v(g,A){if(1&g&&(t.TgZ(0,"mat-option",24),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.enum[0])("disabled",l.readOnly),t.xp6(1),t.Oqu(l.description)}}function F(g,A){if(1&g&&(t.TgZ(0,"mat-select",13),t.YNc(1,v,2,3,"mat-option",23),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(1),t.Q6J("ngForOf",l.schema.items.oneOf)}}function f(g,A){if(1&g&&t._UZ(0,"input",16),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function r(g,A){if(1&g&&(t.TgZ(0,"div",17),t.YNc(1,Bg,3,3,"label",4),t.YNc(2,Yc,3,2,"span",5),t.YNc(3,qg,4,6,"mat-select",18),t.YNc(4,fu,2,5,"mat-select",19),t.YNc(5,F,2,5,"mat-select",19),t.YNc(6,f,1,2,"input",7),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"tabbed":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("ngIf","array"!=l.schema.type),t.xp6(1),t.Q6J("ngIf","array"===l.schema.type&&l.schema.items&&l.schema.items.enum),t.xp6(1),t.Q6J("ngIf",!("array"!==l.schema.type||l.schema.items&&l.schema.items.enum)),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly)}}function O(g,A){1&g&&t._uU(0),2&g&&t.hij(" ",A.$implicit.comment," ")}var R=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C,w){var V;return(0,c.Z)(this,i),(V=l.call(this)).cvService=C,V.dialog=w,V.options=[],V}return(0,e.Z)(i,[{key:"ngOnInit",value:function(){var w=this;this.schema.CVDomain&&this.cvService.fetchFullVocabulary(this.schema.CVDomain).subscribe(function(V){console.log(V),V.content&&V.content.length>0&&(w.options=V.content[0].terms)})}},{key:"openModal",value:function(w,V){this.dialog.open(w,{width:"300px",data:{comment:V}})}}]),i}(Eo.uU);return g.\u0275fac=function(l){return new(l||g)(t.Y36(zr.I),t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-custom-multiselect-widget"]],features:[t.qOj],decls:4,vars:2,consts:[["class","widget form-group multiselect ",3,"ngClass",4,"ngIf"],["class","widget form-group",3,"ngClass",4,"ngIf"],["info",""],[1,"widget","form-group","multiselect",3,"ngClass"],["class","horizontal label control-label",4,"ngIf"],["class","formHelp",4,"ngIf"],["multiple","","class","form-control cv-select",3,"formControl","disableControl",4,"ngIf"],["type","hidden",3,"formControl",4,"ngIf"],[1,"horizontal","label","control-label"],[4,"ngIf"],["color","primary","svgIcon","help",1,"help-icon",2,"height","18px",3,"click"],[1,"formHelp"],["svgIcon","help","color","primary",1,"help-icon",2,"height","18px",3,"click"],["multiple","",1,"form-control","cv-select",3,"formControl","disableControl"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["type","hidden",3,"formControl"],[1,"widget","form-group",3,"ngClass"],["class","form-control cv-select",3,"formControl","disableControl",4,"ngIf"],["multiple","","class","form-control cv-select",3,"formControl","disableControl",4,"ngIf"],[1,"form-control","cv-select",3,"formControl","disableControl"],[4,"ngIf","ngIfElse"],["use_enum",""],[3,"value","disabled",4,"ngFor","ngForOf"],[3,"value","disabled"]],template:function(l,i){1&l&&(t.YNc(0,pv,6,6,"div",0),t.YNc(1,r,7,7,"div",1),t.YNc(2,O,1,1,"ng-template",null,2,t.W1O)),2&l&&(t.Q6J("ngIf",i.schema.CVDomain),t.xp6(1),t.Q6J("ngIf",!i.schema.CVDomain))},directives:[ve.O5,ve.mk,Y.Hw,fa.gD,o.JJ,o.oH,Eo.dJ,ve.sg,Ca.ey,o.Fj],styles:[".mat-select-panel[_ngcontent-%COMP%] mat-option.mat-option[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;word-wrap:normal;white-space:normal;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center;height:auto;min-height:48px;line-height:24px;padding-top:12px;padding-bottom:12px}.multiselect[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.label[_ngcontent-%COMP%]{width:45%;margin-top:12px}.cv-select[_ngcontent-%COMP%]{padding:8px;border-bottom:1px solid darkgray;margin-bottom:5px}.tabbed[_ngcontent-%COMP%], .indent[_ngcontent-%COMP%]{padding-left:55px}.no-indent[_ngcontent-%COMP%]{padding-left:25px}.form-group[_ngcontent-%COMP%]{padding-top:5px}.form-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.cv-select[_ngcontent-%COMP%]{min-width:25%;max-width:50%;margin-left:5px;margin-right:5px;padding:8px;border-bottom:1px solid darkgray;margin-bottom:5px}.help-icon[_ngcontent-%COMP%]{height:18px;cursor:pointer}"]}),g}();function ee(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",9),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(3);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Je(g,A){if(1&g&&(t.TgZ(0,"label",7),t._uU(1),t.YNc(2,ee,2,0,"sup",8),t.qZA()),2&g){var l=t.oxw(2);t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function _t(g,A){1&g&&(t.TgZ(0,"sup"),t._UZ(1,"mat-icon",11),t.qZA())}function Kt(g,A){if(1&g&&(t.TgZ(0,"span",10),t._uU(1),t.YNc(2,_t,2,0,"sup",8),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij(" ",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Un(g,A){if(1&g&&(t.TgZ(0,"mat-option",16),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.enum[0]),t.xp6(1),t.Oqu(l.description)}}function ai(g,A){if(1&g&&(t.ynx(0),t.YNc(1,Un,2,2,"mat-option",15),t.BQk()),2&g){var l=t.oxw(3);t.xp6(1),t.Q6J("ngForOf",l.schema.oneOf)}}function Pi(g,A){if(1&g&&(t.TgZ(0,"mat-option",16),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l),t.xp6(1),t.Oqu(l)}}function ki(g,A){if(1&g&&t.YNc(0,Pi,2,2,"mat-option",15),2&g){var l=t.oxw(3);t.Q6J("ngForOf",l.schema.enum)}}function ha(g,A){if(1&g&&(t.TgZ(0,"mat-select",12),t.YNc(1,ai,2,1,"ng-container",13),t.YNc(2,ki,1,1,"ng-template",null,14,t.W1O),t.qZA()),2&g){var l=t.MAs(3),i=t.oxw(2);t.Q6J("formControl",i.control)("disableControl",i.schema.readOnly),t.uIk("name",i.name)("id",i.id),t.xp6(1),t.Q6J("ngIf",i.schema.oneOf)("ngIfElse",l)}}function kr(g,A){if(1&g&&t._UZ(0,"input",17),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function is(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,Je,3,3,"label",3),t.YNc(2,Kt,3,2,"span",4),t.YNc(3,ha,4,6,"mat-select",5),t.YNc(4,kr,1,2,"input",6),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("ngIf","array"!=l.schema.type),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly)}}function eo(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",9),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(3);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Mo(g,A){if(1&g&&(t.TgZ(0,"label",7),t._uU(1),t.YNc(2,eo,2,0,"sup",8),t.qZA()),2&g){var l=t.oxw(2);t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function qc(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",9),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(3);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Hc(g,A){if(1&g&&(t.TgZ(0,"span",10),t._uU(1),t.YNc(2,qc,2,0,"sup",8),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij(" ",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Vg(g,A){if(1&g&&(t.TgZ(0,"mat-option",16),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.Q6J("value",l.value),t.xp6(1),t.AsE("",l.display," -",l.value,"")}}function ch(g,A){if(1&g&&(t.TgZ(0,"mat-select",12),t.ynx(1),t.YNc(2,Vg,2,3,"mat-option",15),t.BQk(),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(2),t.Q6J("ngForOf",l.options)}}function Vc(g,A){if(1&g&&t._UZ(0,"input",17),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function jc(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,Mo,3,3,"label",3),t.YNc(2,Hc,3,2,"span",4),t.YNc(3,ch,3,5,"mat-select",5),t.YNc(4,Vc,1,2,"input",6),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("ngIf","array"!=l.schema.type),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly)}}function Fv(g,A){1&g&&t._uU(0),2&g&&t.hij(" ",A.$implicit.comment," ")}var Nv=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C,w){var V;return(0,c.Z)(this,i),(V=l.call(this)).cvService=C,V.dialog=w,V.options=[],V}return(0,e.Z)(i,[{key:"ngOnInit",value:function(){var w=this;this.schema.CVDomain&&this.cvService.fetchFullVocabulary(this.schema.CVDomain).subscribe(function(V){console.log(V),V.content&&V.content.length>0&&(w.options=V.content[0].terms)})}},{key:"openModal",value:function(w,V){this.dialog.open(w,{width:"300px",data:{comment:V}})}}]),i}(Eo.uU);return g.\u0275fac=function(l){return new(l||g)(t.Y36(zr.I),t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-custom-select-widget"]],features:[t.qOj],decls:4,vars:2,consts:[["class","widget form-group",3,"ngClass",4,"ngIf"],["info",""],[1,"widget","form-group",3,"ngClass"],["class","horizontal control-label",4,"ngIf"],["class","formHelp",4,"ngIf"],["class","form-control cv-select",3,"formControl","disableControl",4,"ngIf"],["type","hidden",3,"formControl",4,"ngIf"],[1,"horizontal","control-label"],[4,"ngIf"],["color","primary","svgIcon","help",1,"help-icon",2,"height","18px",3,"click"],[1,"formHelp"],["color","primary","svgIcon","help",2,"height","18px"],[1,"form-control","cv-select",3,"formControl","disableControl"],[4,"ngIf","ngIfElse"],["use_enum",""],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["type","hidden",3,"formControl"]],template:function(l,i){1&l&&(t.YNc(0,is,5,5,"div",0),t.YNc(1,jc,5,5,"div",0),t.YNc(2,Fv,1,1,"ng-template",null,1,t.W1O)),2&l&&(t.Q6J("ngIf",!i.schema.CVDomain),t.xp6(1),t.Q6J("ngIf",i.schema.CVDomain))},directives:[ve.O5,ve.mk,Y.Hw,fa.gD,o.JJ,o.oH,Eo.dJ,ve.sg,Ca.ey,o.Fj],styles:[".mat-select-panel[_ngcontent-%COMP%] mat-option.mat-option[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;word-wrap:normal;white-space:normal;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center;height:auto;min-height:48px;line-height:24px;padding-top:12px;padding-bottom:12px}.form-group[_ngcontent-%COMP%]{padding-top:5px}.multiselect[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.label[_ngcontent-%COMP%]{width:45%;margin-top:12px}.cv-select[_ngcontent-%COMP%]{padding:8px;border-bottom:1px solid darkgray;margin-bottom:5px}.tabbed[_ngcontent-%COMP%], .indent[_ngcontent-%COMP%]{padding-left:55px}.no-indent[_ngcontent-%COMP%]{padding-left:25px}.form-group[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.cv-select[_ngcontent-%COMP%]{min-width:25%;max-width:50%;margin-left:5px;margin-right:5px}.help-icon[_ngcontent-%COMP%]{height:18px;cursor:pointer;color:#4793d1}"]}),g}();function Rv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",8),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Uv(g,A){if(1&g&&(t.TgZ(0,"label"),t._uU(1),t.YNc(2,Rv,2,0,"sup",3),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij("",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function Bv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",10),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function _y(g,A){if(1&g&&(t.TgZ(0,"span",9),t._uU(1),t.YNc(2,Bv,2,0,"sup",3),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij("",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function gy(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"label",12),t._UZ(2,"input",13),t._uU(3),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(2);t.xp6(2),t.s9C("value",l.enum[0]),t.Q6J("formControl",i.control)("disableControl",i.schema.readOnly||l.readOnly),t.uIk("name",i.name)("id",i.id+"."+l.enum[0]),t.xp6(1),t.hij(" ",l.description?l.descripton:l.enum[0]," ")}}function vy(g,A){if(1&g&&t._UZ(0,"input",14),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control)("ngClass",l.schema.visibleIf?"tabbed":""),t.uIk("name",l.name)}}function yy(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,Uv,3,2,"label",3),t.YNc(2,_y,3,2,"span",4),t.TgZ(3,"div",5),t.YNc(4,gy,4,6,"div",6),t.qZA(),t.YNc(5,vy,1,3,"input",7),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"tabbed":""),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("ngClass",l.schema.layout&&"horizontal"===l.schema.layout?"row-layout":""),t.xp6(1),t.Q6J("ngForOf",l.schema.oneOf),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly)}}function by(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",8),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Cy(g,A){if(1&g&&(t.TgZ(0,"label"),t._uU(1),t.YNc(2,by,2,0,"sup",3),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij("",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function My(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",10),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function xy(g,A){if(1&g&&(t.TgZ(0,"span",9),t._uU(1),t.YNc(2,My,2,0,"sup",3),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij("",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Sy(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"label",12),t._UZ(2,"input",13),t._uU(3),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(2);t.xp6(2),t.s9C("value",l),t.Q6J("formControl",i.control)("disableControl",i.schema.readOnly),t.uIk("name",i.name)("id",i.id+"."+l),t.xp6(1),t.hij(" ",l," ")}}function Ty(g,A){if(1&g&&t._UZ(0,"input",14),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control)("ngClass",l.schema.visibleIf?"tabbed":""),t.uIk("name",l.name)}}function Ay(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,Cy,3,2,"label",3),t.YNc(2,xy,3,2,"span",4),t.TgZ(3,"div",5),t.YNc(4,Sy,4,6,"div",6),t.qZA(),t.YNc(5,Ty,1,3,"input",7),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("ngClass",l.schema.layout&&"horizontal"===l.schema.layout?"row-layout":""),t.xp6(1),t.Q6J("ngForOf",l.schema.enum),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly)}}function Py(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup",17),t.TgZ(1,"mat-icon",8),t.NdJ("click",function(){t.CHM(l);var w=t.oxw(3),V=t.MAs(4);return w.openModal(V,w.schema.comments)}),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(3);t.Q6J("matTooltip",i.schema.comments)}}function Dy(g,A){if(1&g&&(t.TgZ(0,"label"),t._uU(1),t.YNc(2,Py,2,1,"sup",16),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij("",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function wy(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup",17),t.TgZ(1,"mat-icon",10),t.NdJ("click",function(){t.CHM(l);var w=t.oxw(3),V=t.MAs(4);return w.openModal(V,w.schema.comments)}),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(3);t.Q6J("matTooltip",i.schema.comments)}}function Oy(g,A){if(1&g&&(t.TgZ(0,"span",9),t._uU(1),t.YNc(2,wy,2,1,"sup",16),t.qZA()),2&g){var l=t.oxw(2);t.xp6(1),t.hij("",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Ey(g,A){if(1&g&&(t.TgZ(0,"div",11),t.TgZ(1,"label",12),t._UZ(2,"input",13),t._uU(3),t.qZA(),t.qZA()),2&g){var l=A.$implicit,i=t.oxw(2);t.xp6(2),t.s9C("value",l.value),t.Q6J("formControl",i.control)("disableControl",i.schema.readOnly||l.readOnly),t.uIk("name",i.name)("id",i.id+"."+l.display),t.xp6(1),t.hij(" ",l.display," ")}}function Zy(g,A){if(1&g&&t._UZ(0,"input",18),2&g){var l=t.oxw(2);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function Yv(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,Dy,3,2,"label",3),t.YNc(2,Oy,3,2,"span",4),t.TgZ(3,"div",5),t.YNc(4,Ey,4,6,"div",6),t.qZA(),t.YNc(5,Zy,1,2,"input",15),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf",l.schema.description),t.xp6(1),t.Q6J("ngClass",l.schema.layout&&"horizontal"===l.schema.layout?"row-layout":""),t.xp6(1),t.Q6J("ngForOf",l.options),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly)}}function qv(g,A){1&g&&t._uU(0),2&g&&t.hij(" ",A.$implicit.comment," ")}var Hv=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C,w){var V;return(0,c.Z)(this,i),(V=l.call(this)).cvService=C,V.dialog=w,V.options=[],V}return(0,e.Z)(i,[{key:"ngOnInit",value:function(){var w=this;this.schema.CVDomain&&this.cvService.fetchFullVocabulary(this.schema.CVDomain).subscribe(function(V){V.content&&V.content.length>0&&(w.options=V.content[0].terms)})}},{key:"openModal",value:function(w,V){this.dialog.open(w,{width:"300px",data:{comment:V}})}}]),i}(Eo.uU);return g.\u0275fac=function(l){return new(l||g)(t.Y36(zr.I),t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-custom-radio-widget"]],features:[t.qOj],decls:5,vars:3,consts:[["class","widget form-group",3,"ngClass",4,"ngIf"],["info",""],[1,"widget","form-group",3,"ngClass"],[4,"ngIf"],["class","formHelp",4,"ngIf"],[3,"ngClass"],["class","radio",4,"ngFor","ngForOf"],["type","hidden",3,"formControl","ngClass",4,"ngIf"],["color","primary","svgIcon","help",1,"help-icon",2,"height","18px",3,"click"],[1,"formHelp"],["svgIcon","help","color","primary",1,"help-icon",2,"height","18px",3,"click"],[1,"radio"],[1,"horizontal","control-label"],["type","radio",3,"formControl","value","disableControl"],["type","hidden",3,"formControl","ngClass"],["type","hidden",3,"formControl",4,"ngIf"],[3,"matTooltip",4,"ngIf"],[3,"matTooltip"],["type","hidden",3,"formControl"]],template:function(l,i){1&l&&(t.YNc(0,yy,6,6,"div",0),t.YNc(1,Ay,6,6,"div",0),t.YNc(2,Yv,6,6,"div",0),t.YNc(3,qv,1,1,"ng-template",null,1,t.W1O)),2&l&&(t.Q6J("ngIf",!i.schema.CVDomain&&!i.schema.enum),t.xp6(1),t.Q6J("ngIf",!i.schema.CVDomain&&i.schema.enum),t.xp6(1),t.Q6J("ngIf",i.schema.CVDomain))},directives:[ve.O5,ve.mk,Y.Hw,ve.sg,o._,o.Fj,o.JJ,o.oH,Eo.dJ,Me.gM],styles:[".mat-select-panel[_ngcontent-%COMP%] mat-option.mat-option[_ngcontent-%COMP%]{display:-ms-flexbox;display:flex;word-wrap:normal;white-space:normal;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center;height:auto;min-height:48px;line-height:24px;padding-top:12px;padding-bottom:12px}.multiselect[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex}.label[_ngcontent-%COMP%]{width:45%;margin-top:12px}.cv-select[_ngcontent-%COMP%]{padding:8px;border-bottom:1px solid darkgray;margin-bottom:5px}.tabbed[_ngcontent-%COMP%], .indent[_ngcontent-%COMP%]{padding-left:55px}.no-indent[_ngcontent-%COMP%]{padding-left:25px}.form-group[_ngcontent-%COMP%]{margin-top:7px}.help-icon[_ngcontent-%COMP%]{height:18px;cursor:pointer;color:#4793d1}.row-layout[_ngcontent-%COMP%]{color:#000;width:100%;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.row-layout[_ngcontent-%COMP%] .radio[_ngcontent-%COMP%]{margin-left:10px}"]}),g}();function Vv(g,A){if(1&g&&(t.TgZ(0,"label",6),t._uU(1),t.qZA()),2&g){var l=t.oxw(2);t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," ")}}function jv(g,A){if(1&g&&t._UZ(0,"input",10),2&g){var l=t.oxw(3);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function Jv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",11),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Qv(g,A){if(1&g&&(t.TgZ(0,"div",7),t.TgZ(1,"label",6),t._UZ(2,"input",8),t.YNc(3,jv,1,2,"input",9),t._uU(4),t.YNc(5,Jv,2,0,"sup",5),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(2),t.Q6J("formControl",l.control)("indeterminate",!1!==l.control.value&&!0!==l.control.value||null)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly),t.xp6(1),t.hij(" ",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Wv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",7),t.TgZ(1,"label",6),t.TgZ(2,"input",14),t.NdJ("change",function(V){return t.CHM(l),t.oxw(3).onCheck(V.target)}),t.qZA(),t._uU(3),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(3);t.xp6(2),t.s9C("value",i.enum[0]),t.uIk("name",C.name)("disabled",C.schema.readOnly)("checked",!!C.checked[i.enum[0]]||null)("id",C.id+"."+i.enum[0]),t.xp6(1),t.hij(" ",i.description?i.description:i.enum[0]," ")}}function zv(g,A){if(1&g&&(t.ynx(0),t.TgZ(1,"div",12),t.YNc(2,Wv,4,6,"div",13),t.qZA(),t.BQk()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngClass",l.schema.layout&&"horizontal"===l.schema.layout?"row-layout":""),t.xp6(1),t.Q6J("ngForOf",l.schema.items.oneOf)}}function hv(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,Vv,2,2,"label",3),t.YNc(2,Qv,6,8,"div",4),t.YNc(3,zv,3,2,"ng-container",5),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf","array"!=l.schema.type),t.xp6(1),t.Q6J("ngIf","array"===l.schema.type)}}function _v(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",15),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function lf(g,A){if(1&g&&(t.TgZ(0,"label",6),t._uU(1),t.YNc(2,_v,2,0,"sup",5),t.qZA()),2&g){var l=t.oxw(2);t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function ky(g,A){if(1&g&&t._UZ(0,"input",10),2&g){var l=t.oxw(3);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function Iy(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",11),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function dh(g,A){if(1&g&&(t.TgZ(0,"div",7),t.TgZ(1,"label",6),t._UZ(2,"input",8),t.YNc(3,ky,1,2,"input",9),t._uU(4),t.YNc(5,Iy,2,0,"sup",5),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(2),t.Q6J("formControl",l.control)("indeterminate",!1!==l.control.value&&!0!==l.control.value||null)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly),t.xp6(1),t.hij(" ",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function xb(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",7),t.TgZ(1,"label",6),t.TgZ(2,"input",14),t.NdJ("change",function(V){return t.CHM(l),t.oxw(3).onCheck(V.target)}),t.qZA(),t._uU(3),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(3);t.xp6(2),t.s9C("value",i),t.uIk("name",C.name)("disabled",C.schema.readOnly)("checked",!!C.checked[i]||null)("id",C.id+"."+i),t.xp6(1),t.hij(" ",i.description?i.description:i," ")}}function gv(g,A){if(1&g&&(t.ynx(0),t.TgZ(1,"div",12),t.YNc(2,xb,4,6,"div",13),t.qZA(),t.BQk()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngClass",l.schema.layout&&"horizontal"===l.schema.layout?"row-layout":""),t.xp6(1),t.Q6J("ngForOf",l.schema.items.enum)}}function Sb(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,lf,3,3,"label",3),t.YNc(2,dh,6,8,"div",4),t.YNc(3,gv,3,2,"ng-container",5),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf","array"!=l.schema.type),t.xp6(1),t.Q6J("ngIf","array"===l.schema.type)}}function Gv(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",15),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Kv(g,A){if(1&g&&(t.TgZ(0,"label",6),t._uU(1),t.YNc(2,Gv,2,0,"sup",5),t.qZA()),2&g){var l=t.oxw(2);t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function Tb(g,A){if(1&g&&t._UZ(0,"input",10),2&g){var l=t.oxw(3);t.Q6J("formControl",l.control),t.uIk("name",l.name)}}function Sa(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup"),t.TgZ(1,"mat-icon",15),t.NdJ("click",function(){t.CHM(l);var C=t.oxw(3),w=t.MAs(4);return C.openModal(w,C.schema.comments)}),t.qZA(),t.qZA()}}function Ly(g,A){if(1&g&&(t.TgZ(0,"div",7),t.TgZ(1,"label",6),t._UZ(2,"input",8),t.YNc(3,Tb,1,2,"input",9),t._uU(4),t.YNc(5,Sa,2,0,"sup",5),t.qZA(),t.qZA()),2&g){var l=t.oxw(2);t.xp6(2),t.Q6J("formControl",l.control)("indeterminate",!1!==l.control.value&&!0!==l.control.value||null)("disableControl",l.schema.readOnly),t.uIk("name",l.name)("id",l.id),t.xp6(1),t.Q6J("ngIf",l.schema.readOnly),t.xp6(1),t.hij(" ",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Fy(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",7),t.TgZ(1,"label",6),t.TgZ(2,"input",14),t.NdJ("change",function(V){return t.CHM(l),t.oxw(3).onCheck(V.target)}),t.qZA(),t._uU(3),t.qZA(),t.qZA()}if(2&g){var i=A.$implicit,C=t.oxw(3);t.xp6(2),t.s9C("value",i.value),t.uIk("name",C.name)("disabled",C.schema.readOnly)("checked",!!C.checked[i.value]||null)("id",C.id+"."+i.value),t.xp6(1),t.hij(" ",i.display," ")}}function Ny(g,A){if(1&g&&(t.ynx(0),t.TgZ(1,"div",12),t.YNc(2,Fy,4,6,"div",13),t.qZA(),t.BQk()),2&g){var l=t.oxw(2);t.xp6(1),t.Q6J("ngClass",l.schema.layout&&"horizontal"===l.schema.layout?"row-layout":""),t.xp6(1),t.Q6J("ngForOf",l.options)}}function jg(g,A){if(1&g&&(t.TgZ(0,"div",2),t.YNc(1,Kv,3,3,"label",3),t.YNc(2,Ly,6,8,"div",4),t.YNc(3,Ny,3,2,"ng-container",5),t.qZA()),2&g){var l=t.oxw();t.Q6J("ngClass",l.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",l.schema.title),t.xp6(1),t.Q6J("ngIf","array"!=l.schema.type),t.xp6(1),t.Q6J("ngIf","array"===l.schema.type)}}function Ry(g,A){1&g&&t._uU(0),2&g&&t.hij(" ",A.$implicit.comment," ")}var Jg=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C,w){var V;return(0,c.Z)(this,i),(V=l.call(this)).cvService=C,V.dialog=w,V.options=[],V}return(0,e.Z)(i,[{key:"ngOnInit",value:function(){var w=this;this.schema.CVDomain&&this.cvService.fetchFullVocabulary(this.schema.CVDomain).subscribe(function(V){console.log(V),V.content&&V.content.length>0&&(w.options=V.content[0].terms)})}},{key:"openModal",value:function(w,V){this.dialog.open(w,{width:"300px",data:{comment:V}})}}]),i}(Eo.OA);return g.\u0275fac=function(l){return new(l||g)(t.Y36(zr.I),t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-custom-multi-checkbox-widget"]],features:[t.qOj],decls:5,vars:3,consts:[["class","widget form-group",3,"ngClass",4,"ngIf"],["info",""],[1,"widget","form-group",3,"ngClass"],["class","horizontal control-label",4,"ngIf"],["class","checkbox",4,"ngIf"],[4,"ngIf"],[1,"horizontal","control-label"],[1,"checkbox"],["type","checkbox",3,"formControl","indeterminate","disableControl"],["type","hidden",3,"formControl",4,"ngIf"],["type","hidden",3,"formControl"],["svgIcon","help","color","primary",1,"help-icon",2,"height","18px",3,"click"],[3,"ngClass"],["class","checkbox",4,"ngFor","ngForOf"],["type","checkbox",3,"value","change"],["color","primary","svgIcon","help",1,"help-icon",2,"height","18px",3,"click"]],template:function(l,i){1&l&&(t.YNc(0,hv,4,4,"div",0),t.YNc(1,Sb,4,4,"div",0),t.YNc(2,jg,4,4,"div",0),t.YNc(3,Ry,1,1,"ng-template",null,1,t.W1O)),2&l&&(t.Q6J("ngIf",!(i.schema.CVDomain||i.schema.items&&i.schema.items.enum)),t.xp6(1),t.Q6J("ngIf",!i.schema.CVDomain&&i.schema.items&&i.schema.items.enum),t.xp6(1),t.Q6J("ngIf",i.schema.CVDomain))},directives:[ve.O5,ve.mk,o.Wl,o.JJ,o.oH,Eo.dJ,o.Fj,Y.Hw,ve.sg],styles:[".tabbed[_ngcontent-%COMP%], .indent[_ngcontent-%COMP%]{padding-left:55px}.no-indent[_ngcontent-%COMP%]{padding-left:25px}.form-group[_ngcontent-%COMP%]{padding-top:5px}.help-icon[_ngcontent-%COMP%]{height:18px;cursor:pointer}.row-layout[_ngcontent-%COMP%]{color:#000;width:100%;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.row-layout[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{margin-left:10px}"]}),g}();function Qg(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"sup",7),t.TgZ(1,"mat-icon",8),t.NdJ("click",function(){t.CHM(l);var w=t.oxw(2),V=t.MAs(5);return w.openModal(V,w.schema.comments)}),t.qZA(),t.qZA()}if(2&g){var i=t.oxw(2);t.Q6J("matTooltip",i.schema.comments)}}function uo(g,A){if(1&g&&(t.TgZ(0,"label",5),t._uU(1),t.YNc(2,Qg,2,1,"sup",6),t.qZA()),2&g){var l=t.oxw();t.uIk("for",l.id),t.xp6(1),t.hij(" ",l.schema.title," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments&&!l.schema.description)}}function Ab(g,A){if(1&g&&(t.TgZ(0,"sup",7),t._UZ(1,"mat-icon",10),t.qZA()),2&g){var l=t.oxw(2);t.Q6J("matTooltip",l.schema.comments)}}function $v(g,A){if(1&g&&(t.TgZ(0,"span",9),t._uU(1),t.YNc(2,Ab,2,1,"sup",6),t.qZA()),2&g){var l=t.oxw();t.xp6(1),t.hij("",l.schema.description," "),t.xp6(1),t.Q6J("ngIf",l.schema.comments)}}function Uy(g,A){1&g&&t._uU(0),2&g&&t.hij(" ",A.$implicit.comment," ")}var By=function(){var g=function(A){(0,N.Z)(i,A);var l=(0,I.Z)(i);function i(C){var w;return(0,c.Z)(this,i),(w=l.call(this)).dialog=C,w}return(0,e.Z)(i,[{key:"openModal",value:function(w,V){this.dialog.open(w,{width:"300px",data:{comment:V}})}}]),i}(Eo.H_);return g.\u0275fac=function(l){return new(l||g)(t.Y36(G.uw))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-custom-textarea-widget"]],features:[t.qOj],decls:6,vars:10,consts:[[1,"widget","form-group",3,"ngClass"],["class","horizontal control-label",4,"ngIf"],["class","formHelp",4,"ngIf"],[1,"text-widget","textarea-widget","form-control",3,"readonly","name","formControl"],["info",""],[1,"horizontal","control-label"],[3,"matTooltip",4,"ngIf"],[3,"matTooltip"],["svgIcon","help","color","primary",1,"help-icon",2,"height","18px",3,"click"],[1,"formHelp"],["svgIcon","help","color","primary",2,"height","18px"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.YNc(1,uo,3,3,"label",1),t.YNc(2,$v,3,2,"span",2),t._UZ(3,"textarea",3),t.qZA(),t.YNc(4,Uy,1,1,"ng-template",null,4,t.W1O)),2&l&&(t.Q6J("ngClass",i.schema.visibleIf?"indent":"no-indent"),t.xp6(1),t.Q6J("ngIf",i.schema.title),t.xp6(1),t.Q6J("ngIf",i.schema.description),t.xp6(1),t.Q6J("readonly",i.schema.readOnly)("name",i.name)("formControl",i.control),t.uIk("id",i.id)("placeholder",i.schema.placeholder)("maxLength",i.schema.maxLength||null)("minLength",i.schema.minLength||null))},directives:[ve.mk,ve.O5,Me.gM,Y.Hw,o.Fj,o.JJ,o.oH],styles:[".indent[_ngcontent-%COMP%]{padding-left:55px}.no-indent[_ngcontent-%COMP%]{padding-left:25px}.form-group[_ngcontent-%COMP%]{margin-top:7px}.help-icon[_ngcontent-%COMP%]{height:18px;cursor:pointer}"]}),g}(),Xv=function(g){(0,N.Z)(l,g);var A=(0,I.Z)(l);function l(){var i;return(0,c.Z)(this,l),(i=A.call(this)).register("boolean",Ig),i.register("string",lv),i.register("multi-select",R),i.register("select",Nv),i.register("radio",Hv),i.register("checkbox",Jg),i.register("textarea",By),i}return(0,e.Z)(l)}(Eo.qd),ey=function(){var g=function(){function A(l,i,C,w,V,Ze){(0,c.Z)(this,A),this.loadingService=l,this.authService=i,this.notificationService=C,this.bulkSearchService=w,this.configService=V,this.route=Ze,this.isAdmin=!1,this.isLoggedIn=!1,this.showDeprecated=!1,this.bulkSearchResultsTop=10,this.bulkSearchResultsSkip=0,this.bulkSearchResultsQTop=10,this.bulkSearchResultsQSkip=0,this.isError=!1,this.isLoading=!1,this.showSpinner=!1,this.navigationExtrasFacet={queryParams:{}},this.subscriptions=[]}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var i=this;this.loadingService.setLoading(!0),this.showSpinner=!0,this.loadedComponents=this.configService.configData.loadedComponents||null,this.showSpinner=!1,this.loadingService.setLoading(!1),this.authService.getAuth().subscribe(function(w){w?i.isLoggedIn=!0:i.showDeprecated=!1,i.isAdmin=i.authService.hasAnyRoles("Updater","SuperUpdater"),i.showAudit=i.authService.hasRoles("admin")}),this.route.queryParams.subscribe(function(w){i.bulkQID=w.bulkQID,i.bulkSearchService.getBulkSearch(i.context,i.bulkQID,i.searchOnIdentifiers).subscribe(function(Ze){i._bulkSearch=Ze,i.bulkSearchService.getBulkSearchStatusResults(i._bulkSearch.key,i.bulkSearchResultsTop,i.bulkSearchResultsSkip,i.bulkSearchResultsQTop,i.bulkSearchResultsQSkip).subscribe(function(Ot){i._bulkSearchResults=Ot})})})}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i&&i.unsubscribe()})}},{key:"getBulkSearch",value:function(i,C){var w=this;this.loadingService.setLoading(!0);var V=this.bulkSearchService.getBulkSearch(i,C).subscribe(function(Ze){w.isError=!1,w._bulkSearch=Ze},function(Ze){var Ot={message:"There was an error trying to get a bulk search result.",type:Rt.k.error,milisecondsToShow:6e3};w.isError=!0,w.isLoading=!1,w.loadingService.setLoading(w.isLoading),w.notificationService.setNotification(Ot)},function(){V.unsubscribe(),w.isLoading=!1,w.loadingService.setLoading(w.isLoading)})}},{key:"getBulkSearchStatusResults",value:function(i,C,w,V,Ze){var Ot=this;this.loadingService.setLoading(!0);var Bt=this.bulkSearchService.getBulkSearchStatusResults(i,C,w,V,Ze).subscribe(function(cn){Ot.isError=!1,Ot._bulkSearchResults=cn},function(cn){var Fn={message:"There was an error trying to get a bulk search results.",type:Rt.k.error,milisecondsToShow:6e3};Ot.isError=!0,Ot.isLoading=!1,Ot.loadingService.setLoading(Ot.isLoading),Ot.notificationService.setNotification(Fn)},function(){Bt.unsubscribe(),Ot.isLoading=!1,Ot.loadingService.setLoading(Ot.isLoading)})}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Jn.b),t.Y36(h.e),t.Y36(rn.a),t.Y36(Jo),t.Y36(fn.E),t.Y36(_.gz))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-bulk-search"]],decls:3,vars:0,template:function(l,i){1&l&&(t.TgZ(0,"div"),t._uU(1,"Bulk Search Summary"),t.qZA(),t._UZ(2,"div"))},styles:[""]}),g}();function ty(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"div",4),t._uU(1," Select file: "),t.TgZ(2,"input",5),t.NdJ("change",function(C){return t.CHM(l),t.oxw().loadTextFileIntoTextareaChangeListener(C)}),t.qZA(),t.qZA()}}function ny(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",6),t.NdJ("click",function(){return t.CHM(l),t.oxw().cancel()}),t._uU(1,"Cancel"),t.qZA()}}function Yy(g,A){if(1&g){var l=t.EpF();t.TgZ(0,"button",6),t.NdJ("click",function(){return t.CHM(l),t.oxw().submit()}),t._uU(1,"Submit"),t.qZA()}}var iy=function(){var g=function(){function A(){(0,c.Z)(this,A),this.placeholder="placeholder",this.instruction="Enter text",this.maxCount=1e4,this.showSubmitButton=!1,this.showCancelButton=!1,this.showLoadTextFileIntoTextarea=!0,this.textControl=new o.NI,this.loadTextFileIntoTextareaError=""}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){}},{key:"submit",value:function(){}},{key:"cancel",value:function(){}},{key:"loadTextFileIntoTextareaChangeListener",value:function(i){this.readTextFile(i.target)}},{key:"readTextFile",value:function(i){this.loadTextFileIntoTextareaError="";var C=i.files[0];if("text/plain"===C.type){var w=new FileReader,V=this.textControl;w.onloadend=function(Ze){V.setValue(w.result)},w.readAsText(C)}else this.loadTextFileIntoTextareaError="File of type 'text/plain' is required."}}]),A}();return g.\u0275fac=function(l){return new(l||g)},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-text-input-form"]],inputs:{placeholder:"placeholder",instruction:"instruction",maxCount:"maxCount",showSubmitButton:"showSubmitButton",showCancelButton:"showCancelButton",showLoadTextFileIntoTextarea:"showLoadTextFileIntoTextarea"},decls:10,vars:6,consts:[[1,"text-input-form"],["matInput","",3,"placeholder","formControl"],["class","file-reader",4,"ngIf"],["mat-flat-button","","color","primary",3,"click",4,"ngIf"],[1,"file-reader"],["type","file",3,"change"],["mat-flat-button","","color","primary",3,"click"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0),t.TgZ(1,"p"),t._uU(2),t.qZA(),t.TgZ(3,"div"),t.TgZ(4,"div"),t._UZ(5,"textarea",1),t.qZA(),t.qZA(),t.YNc(6,ty,3,0,"div",2),t.TgZ(7,"div"),t.YNc(8,ny,2,0,"button",3),t.YNc(9,Yy,2,0,"button",3),t.qZA(),t.qZA()),2&l&&(t.xp6(2),t.Oqu(i.instruction),t.xp6(3),t.s9C("placeholder",i.placeholder),t.Q6J("formControl",i.textControl),t.xp6(1),t.Q6J("ngIf",i.showLoadTextFileIntoTextarea),t.xp6(2),t.Q6J("ngIf",i.showCancelButton),t.xp6(1),t.Q6J("ngIf",i.showSubmitButton))},directives:[$e.Nt,o.Fj,o.JJ,o.oH,ve.O5,y.lW],styles:[".text-input-form[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%!important}.text-input-form[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{width:100%;border:2px solid var(--regular-lightgray-color);height:300px;overflow-y:auto}.file-reader[_ngcontent-%COMP%]{margin-top:10px;margin-bottom:10px}.error[_ngcontent-%COMP%]{padding:5px}"]}),g}();function qy(g,A){if(1&g&&(t.TgZ(0,"mat-option",7),t._uU(1),t.qZA()),2&g){var l=A.$implicit;t.s9C("value",l.name),t.xp6(1),t.hij(" ",l.title," ")}}var ay=[{path:"bulk-search",component:function(){var g=function(){function A(l,i,C,w,V,Ze,Ot){(0,c.Z)(this,A),this.loadingService=l,this.authService=i,this.notificationService=C,this.bulkSearchService=w,this.configService=V,this.route=Ze,this.router=Ot,this._=Li,this.isAdmin=!1,this.isLoggedIn=!1,this.showDeprecated=!1,this.searchOnIdentifiers=!0,this.isError=!1,this.isLoading=!1,this.facetViewControl=new o.NI,this.height=0,this.width=0,this.textInputFormPlaceholder='ASPIRIN\n50-00-0\nroot_names_name:"^parsley$"\nR6Q3791S76\n1cf410f9-3eeb-41ed-ab69-eeb5076901e5\n',this.showSpinner=!1,this.navigationExtrasFacet={queryParams:{}},this.searchEntityControl=new o.NI,this.subscriptions=[]}return(0,e.Z)(A,[{key:"ngOnInit",value:function(){var C,i=this;this.loadingService.setLoading(!0),this.showSpinner=!0,this.showSpinner=!1,this.loadingService.setLoading(!1);var w=null===(C=this.configService.configData)||void 0===C?void 0:C.bulkSearch;this.searchEntities=null==w?void 0:w.entities,this.searchEntities||(this.searchEntities=[{name:"substances",title:"Substances"}]),this.authService.getAuth().subscribe(function(Ze){Ze?i.isLoggedIn=!0:i.showDeprecated=!1,i.isAdmin=i.authService.hasAnyRoles("Updater","SuperUpdater"),i.showAudit=i.authService.hasRoles("admin")}),this.setSearchEntity("substances"),this.checkBulkQueryIdParameterOnLoad()}},{key:"ngOnDestroy",value:function(){this.subscriptions.forEach(function(i){i&&i.unsubscribe()})}},{key:"ngAfterViewInit",value:function(){}},{key:"submitText",value:function(){this.queryText=this.textInputForm.textControl.value,this.postOrPutBulkQueryAndNavigateToBrowse()}},{key:"bulkSearchSubmit",value:function(){}},{key:"checkBulkQueryIdParameterOnLoad",value:function(){var i=this,V=[];V[0]=this.route.queryParams.subscribe(function(Ze){if(null!=Ze.bulkQID){i._bulkQueryIdOnLoad=Ze.bulkQID,i.searchOnIdentifiers=!Ze.searchOnIdentifiers||"false"!==Ze.searchOnIdentifiers,i.setSearchEntity(Ze.searchEntity);var Bt=[];V[1]=i.bulkSearchService.getBulkQuery(i.searchEntity,i._bulkQueryIdOnLoad,1e4,0).subscribe(function(cn){cn.queries&&Bt.push(cn.queries.join("\n"))},function(cn){console.log("Error getting bulk search status results data.")},function(){i.textInputForm.textControl.setValue(Bt.join(""))})}},function(){V.forEach(function(Ze){Ze.unsubscribe()})})}},{key:"postOrPutBulkQueryAndNavigateToBrowse",value:function(){var i=this;this.loadingService.setLoading(!0);var C=this.bulkSearchService.postOrPutBulkQuery(this.searchEntity,this.queryText).subscribe(function(w){i.isError=!1,i._bulkQuery=w,i._bulkQueryIdAfterSubmit=w.id,i.router.navigate(["/browse-substance"],{queryParams:{bulkQID:i._bulkQueryIdAfterSubmit,searchOnIdentifiers:i.searchOnIdentifiers,searchEntity:i.searchEntity}})},function(w){console.log("Error trying to post/put a bulk query."),i.isError=!0,i.isLoading=!1,i.loadingService.setLoading(i.isLoading),i.notificationService.setNotification({message:"Error trying to post/put a bulk query.",milisecondsToShow:6e3})},function(){C.unsubscribe(),i.isLoading=!1,i.loadingService.setLoading(i.isLoading)})}},{key:"setSearchEntity",value:function(i){this.searchEntity=i,this.searchEntityControl.setValue(i)}},{key:"searchEntitySelected",value:function(i){this.setSearchEntity(i.value)}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.Y36(Jn.b),t.Y36(h.e),t.Y36(rn.a),t.Y36(Jo),t.Y36(fn.E),t.Y36(_.gz),t.Y36(_.F0))},g.\u0275cmp=t.Xpm({type:g,selectors:[["app-bulk-query"]],viewQuery:function(l,i){var C;1&l&&t.Gf(iy,7),2&l&&t.iGM(C=t.CRH())&&(i.textInputForm=C.first)},decls:26,vars:6,consts:[[1,"query-content-container"],["contentContainer",""],[1,"component-title"],[1,"editor-container"],[1,"two"],["id","search-on-identifiers"],["aria-labelledby","search-on-identifiers-label",1,"search-on-identifiers-radio-group",3,"ngModel","ngModelChange"],[3,"value"],[1,"three"],["id","search-on-entity"],["matInput","","appearance","fill",1,"query-entity-select"],["required","","placeholder","Search Entity","aria-labelledby","search-on-entity-label","value","substances",1,"search-on-entity-select-box",3,"formControl","selectionChange"],[3,"value",4,"ngFor","ngForOf"],["instruction","Enter queries, one per line.",3,"placeholder"],[1,"query-actions"],["mat-flat-button","","color","primary",3,"click"]],template:function(l,i){1&l&&(t.TgZ(0,"div",0,1),t.TgZ(2,"mat-card"),t.TgZ(3,"h2",2),t._uU(4,"Bulk Query"),t.qZA(),t.TgZ(5,"div",3),t.TgZ(6,"div",4),t.TgZ(7,"label",5),t._uU(8,"Search Type"),t.qZA(),t.TgZ(9,"mat-radio-group",6),t.NdJ("ngModelChange",function(w){return i.searchOnIdentifiers=w}),t.TgZ(10,"mat-radio-button",7),t._uU(11,"Identifiers"),t.qZA(),t.TgZ(12,"mat-radio-button",7),t._uU(13,"All Fields"),t.qZA(),t.qZA(),t.qZA(),t.TgZ(14,"div",8),t.TgZ(15,"label",9),t._uU(16,"Search Entity"),t.qZA(),t.TgZ(17,"mat-form-field",10),t.TgZ(18,"mat-select",11),t.NdJ("selectionChange",function(w){return i.searchEntitySelected(w)}),t.YNc(19,qy,2,2,"mat-option",12),t.qZA(),t.qZA(),t.qZA(),t.TgZ(20,"div"),t._UZ(21,"app-text-input-form",13),t.TgZ(22,"div",14),t.TgZ(23,"button",15),t.NdJ("click",function(){return i.submitText()}),t._uU(24,"Submit"),t.qZA(),t.qZA(),t.qZA(),t.qZA(),t._UZ(25,"div"),t.qZA(),t.qZA()),2&l&&(t.xp6(9),t.Q6J("ngModel",i.searchOnIdentifiers),t.xp6(1),t.Q6J("value",!0),t.xp6(2),t.Q6J("value",!1),t.xp6(6),t.Q6J("formControl",i.searchEntityControl),t.xp6(1),t.Q6J("ngForOf",i.searchEntities),t.xp6(2),t.s9C("placeholder",i.textInputFormPlaceholder))},directives:[xi.a8,el.VQ,o.JJ,o.On,el.U0,It.KE,fa.gD,o.Q7,o.oH,ve.sg,Ca.ey,iy,y.lW],styles:[".query-content-container[_ngcontent-%COMP%]{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:65px 5px 0}.mat-card[_ngcontent-%COMP%]{margin-top:15px;box-sizing:border-box;max-width:1170px;overflow-y:auto}.mat-radio-group[_ngcontent-%COMP%]{margin-top:5px;margin-bottom:10px}.mat-radio-button[_ngcontent-%COMP%]{margin-right:10px}.editor-container[_ngcontent-%COMP%]{width:920px;min-height:460px;height:390px}.query-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{float:right;display:block}.query-actions[_ngcontent-%COMP%]{-ms-flex-direction:row;flex-direction:row;width:100%}.two[_ngcontent-%COMP%], .three[_ngcontent-%COMP%]{width:auto;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}@media (max-width: 970px){.editor-container[_ngcontent-%COMP%], .query-actions[_ngcontent-%COMP%]{width:100%}}"]}),g}()},{path:"bulk-search-results",component:ey}],Hy=function(){var g=function(){function A(l){(0,c.Z)(this,A),ay.forEach(function(i){l.config[0].children.push(i)})}return(0,e.Z)(A,null,[{key:"forRoot",value:function(){return{ngModule:A,providers:[Jo]}}}]),A}();return g.\u0275fac=function(l){return new(l||g)(t.LFG(_.F0))},g.\u0275mod=t.oAB({type:g}),g.\u0275inj=t.cJS({imports:[[ve.ez,_.Bz.forChild(ay),zt.g0,aa.SJ,xi.QW,Al.Bb,It.lN,$e.c,y.ot,Y.Ps,fo.Hi,Zl.g,Ui.To,Xe.p9,ue.p0,Gi.TU,lt.JX,fa.LD,el.Fk,cu.KP,G.Is,ca.ie,qe.Tx,Gr.vV,Me.AV,Pl.Nh,T._r,kt.Cq,Su.FA,o.u5,o.UX,jn.U8,nf.O,Va.On,af.O,rf.J]]}),g}(),Vy=n(88547),ry=(n(24870),n(30639)),oy=function(){var g=(0,e.Z)(function A(){(0,c.Z)(this,A)});return g.\u0275fac=function(l){return new(l||g)},g.\u0275mod=t.oAB({type:g,bootstrap:[lc]}),g.\u0275inj=t.cJS({providers:[{provide:t.qLn,useClass:x},{provide:Eo.Bl,useClass:Eo.qd},N_,b.E,{provide:t.ip1,useFactory:du,deps:[b.E],multi:!0},{provide:u.TP,useClass:L_,multi:!0},{provide:Eo.Bl,useClass:Xv}],imports:[[S.b2.withServerTransition({appId:"gsrs"}),sc,El.PW,zt.g0,aa.SJ,xi.QW,u.JF,Al.Bb,o.UX,o.u5,It.lN,$e.c,y.ot,Y.Ps,u.JF,u.Ed,fo.Hi,Zl.g,Ui.To,Xe.p9,hl.I,ef,ue.p0,Gi.TU,fa.LD,el.Fk,cu.KP,G.Is,tf.h,Ed.x,dt,ca.ie,$m.o.forRoot(Xm),Zd.w,yi.X.forRoot(),qe.Tx,Gr.vV,Me.AV,Pl.Nh,oi.d,eh.S.forRoot(th.MB),nh,nf.O.forRoot(),jn.U8,af.O,T._r,Yn.Cv,kd.f,rf.J,Be.dp,rh.O,oh,Ca.XK,ah,rh.O,sh.v,U_,Ev.SubstanceSsg4mProcessModule,Zv.B,kt.Cq,kv.O,Iv._,av,lh.Ssg2ManufacturingModule,Eo.QQ.forRoot(),Hy,Vy.J],tf.h,af.O]}),g}();t.B6R(nu,[xi.a8,ih.K,It.KE,fa.gD,o.JJ,o.oH,Ca.ey,ve.O5,y.lW,cu.pH,ry.W],[]),n(15977),yi.N.production&&(0,t.G48)(),S.q6().bootstrapModule(oy).catch(function(g){return console.log(g)})},4263:function(Ce,E,n){"use strict";var S=n(79903),t=n(3855),e=t(S("String.prototype.indexOf"));Ce.exports=function(u,o){var _=S(u,!!o);return"function"==typeof _&&e(u,".prototype.")>-1?t(_):_}},3855:function(Ce,E,n){"use strict";var S=n(20224),t=n(79903),e=t("%Function.prototype.apply%"),c=t("%Function.prototype.call%"),u=t("%Reflect.apply%",!0)||S.call(c,e),o=t("%Object.getOwnPropertyDescriptor%",!0),_=t("%Object.defineProperty%",!0),s=t("%Math.max%");if(_)try{_({},"a",{value:1})}catch(b){_=null}Ce.exports=function(T){var y=u(S,c,arguments);if(o&&_){var Y=o(y,"length");Y.configurable&&_(y,"length",{value:1+s(0,T.length-(arguments.length-1))})}return y};var h=function(){return u(S,e,arguments)};_?_(Ce.exports,"apply",{value:h}):Ce.exports.apply=h},49382:function(Ce){"undefined"!=typeof self&&self,Ce.exports=function(E){var n={};function S(t){if(n[t])return n[t].exports;var e=n[t]={i:t,l:!1,exports:{}};return E[t].call(e.exports,e,e.exports,S),e.l=!0,e.exports}return S.m=E,S.c=n,S.d=function(t,e,c){S.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:c})},S.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},S.t=function(t,e){if(1&e&&(t=S(t)),8&e||4&e&&"object"==typeof t&&t&&t.__esModule)return t;var c=Object.create(null);if(S.r(c),Object.defineProperty(c,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var u in t)S.d(c,u,function(o){return t[o]}.bind(null,u));return c},S.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return S.d(e,"a",e),e},S.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},S.p="",S(S.s=4)}([function(E,n,S){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=S(1),e=S(2),c=function(){function u(o,_){this.expression=o,this.options=_,this.expressionParts=new Array(5),u.locales[_.locale]?this.i18n=u.locales[_.locale]:(console.warn("Locale '"+_.locale+"' could not be found; falling back to 'en'."),this.i18n=u.locales.en),void 0===_.use24HourTimeFormat&&(_.use24HourTimeFormat=this.i18n.use24HourTimeFormatByDefault())}return u.toString=function(o,_){var s=void 0===_?{}:_,h=s.throwExceptionOnParseError,T=s.verbose,Y=s.dayOfWeekStartIndexZero,k=s.locale;return new u(o,{throwExceptionOnParseError:void 0===h||h,verbose:void 0!==T&&T,dayOfWeekStartIndexZero:void 0===Y||Y,use24HourTimeFormat:s.use24HourTimeFormat,locale:void 0===k?"en":k}).getFullDescription()},u.initialize=function(o){u.specialCharacters=["/","-",",","*"],o.load(u.locales)},u.prototype.getFullDescription=function(){var o="";try{var _=new e.CronParser(this.expression,this.options.dayOfWeekStartIndexZero);this.expressionParts=_.parse();var s=this.getTimeOfDayDescription(),h=this.getDayOfMonthDescription(),b=this.getMonthDescription(),T=this.getDayOfWeekDescription(),y=this.getYearDescription();o=(o=this.transformVerbosity(o+=s+h+T+b+y,this.options.verbose)).charAt(0).toLocaleUpperCase()+o.substr(1)}catch(Y){if(this.options.throwExceptionOnParseError)throw""+Y;o=this.i18n.anErrorOccuredWhenGeneratingTheExpressionD()}return o},u.prototype.getTimeOfDayDescription=function(){var o=this.expressionParts[0],_=this.expressionParts[1],s=this.expressionParts[2],h="";if(t.StringUtilities.containsAny(_,u.specialCharacters)||t.StringUtilities.containsAny(s,u.specialCharacters)||t.StringUtilities.containsAny(o,u.specialCharacters))if(o||!(_.indexOf("-")>-1)||_.indexOf(",")>-1||_.indexOf("/")>-1||t.StringUtilities.containsAny(s,u.specialCharacters))if(!o&&s.indexOf(",")>-1&&-1==s.indexOf("-")&&-1==s.indexOf("/")&&!t.StringUtilities.containsAny(_,u.specialCharacters)){var T=s.split(",");h+=this.i18n.at();for(var y=0;y0&&q.length>0&&(h+=", "),(h+=q).length>0&&B.length>0&&(h+=", "),h+=B}else{var b=_.split("-");h+=t.StringUtilities.format(this.i18n.everyMinuteBetweenX0AndX1(),this.formatTime(s,b[0],""),this.formatTime(s,b[1],""))}else h+=this.i18n.atSpace()+this.formatTime(s,_,o);return h},u.prototype.getSecondsDescription=function(){var o=this;return this.getSegmentDescription(this.expressionParts[0],this.i18n.everySecond(),function(s){return s},function(s){return t.StringUtilities.format(o.i18n.everyX0Seconds(),s)},function(s){return o.i18n.secondsX0ThroughX1PastTheMinute()},function(s){return"0"==s?"":parseInt(s)<20?o.i18n.atX0SecondsPastTheMinute():o.i18n.atX0SecondsPastTheMinuteGt20()||o.i18n.atX0SecondsPastTheMinute()})},u.prototype.getMinutesDescription=function(){var o=this,_=this.expressionParts[0],s=this.expressionParts[2];return this.getSegmentDescription(this.expressionParts[1],this.i18n.everyMinute(),function(b){return b},function(b){return t.StringUtilities.format(o.i18n.everyX0Minutes(),b)},function(b){return o.i18n.minutesX0ThroughX1PastTheHour()},function(b){try{return"0"==b&&-1==s.indexOf("/")&&""==_?o.i18n.everyHour():parseInt(b)<20?o.i18n.atX0MinutesPastTheHour():o.i18n.atX0MinutesPastTheHourGt20()||o.i18n.atX0MinutesPastTheHour()}catch(T){return o.i18n.atX0MinutesPastTheHour()}})},u.prototype.getHoursDescription=function(){var o=this;return this.getSegmentDescription(this.expressionParts[2],this.i18n.everyHour(),function(h){return o.formatTime(h,"0","")},function(h){return t.StringUtilities.format(o.i18n.everyX0Hours(),h)},function(h){return o.i18n.betweenX0AndX1()},function(h){return o.i18n.atX0()})},u.prototype.getDayOfWeekDescription=function(){var o=this,_=this.i18n.daysOfTheWeek();return"*"==this.expressionParts[5]?"":this.getSegmentDescription(this.expressionParts[5],this.i18n.commaEveryDay(),function(h){var b=h;return h.indexOf("#")>-1?b=h.substr(0,h.indexOf("#")):h.indexOf("L")>-1&&(b=b.replace("L","")),_[parseInt(b)]},function(h){return 1==parseInt(h)?"":t.StringUtilities.format(o.i18n.commaEveryX0DaysOfTheWeek(),h)},function(h){return o.i18n.commaX0ThroughX1()},function(h){var b=null;if(h.indexOf("#")>-1){var y=null;switch(h.substring(h.indexOf("#")+1)){case"1":y=o.i18n.first();break;case"2":y=o.i18n.second();break;case"3":y=o.i18n.third();break;case"4":y=o.i18n.fourth();break;case"5":y=o.i18n.fifth()}b=o.i18n.commaOnThe()+y+o.i18n.spaceX0OfTheMonth()}else b=h.indexOf("L")>-1?o.i18n.commaOnTheLastX0OfTheMonth():"*"!=o.expressionParts[3]?o.i18n.commaAndOnX0():o.i18n.commaOnlyOnX0();return b})},u.prototype.getMonthDescription=function(){var o=this,_=this.i18n.monthsOfTheYear();return this.getSegmentDescription(this.expressionParts[4],"",function(h){return _[parseInt(h)-1]},function(h){return 1==parseInt(h)?"":t.StringUtilities.format(o.i18n.commaEveryX0Months(),h)},function(h){return o.i18n.commaMonthX0ThroughMonthX1()||o.i18n.commaX0ThroughX1()},function(h){return o.i18n.commaOnlyInMonthX0?o.i18n.commaOnlyInMonthX0():o.i18n.commaOnlyInX0()})},u.prototype.getDayOfMonthDescription=function(){var o=this,_=null,s=this.expressionParts[3];switch(s){case"L":_=this.i18n.commaOnTheLastDayOfTheMonth();break;case"WL":case"LW":_=this.i18n.commaOnTheLastWeekdayOfTheMonth();break;default:var h=s.match(/(\d{1,2}W)|(W\d{1,2})/);if(h){var b=parseInt(h[0].replace("W","")),T=1==b?this.i18n.firstWeekday():t.StringUtilities.format(this.i18n.weekdayNearestDayX0(),b.toString());_=t.StringUtilities.format(this.i18n.commaOnTheX0OfTheMonth(),T);break}var y=s.match(/L-(\d{1,2})/);if(y){var Y=y[1];_=t.StringUtilities.format(this.i18n.commaDaysBeforeTheLastDayOfTheMonth(),Y);break}if("*"==s&&"*"!=this.expressionParts[5])return"";_=this.getSegmentDescription(s,this.i18n.commaEveryDay(),function(q){return"L"==q?o.i18n.lastDay():o.i18n.dayX0?t.StringUtilities.format(o.i18n.dayX0(),q):q},function(q){return"1"==q?o.i18n.commaEveryDay():o.i18n.commaEveryX0Days()},function(q){return o.i18n.commaBetweenDayX0AndX1OfTheMonth()},function(q){return o.i18n.commaOnDayX0OfTheMonth()})}return _},u.prototype.getYearDescription=function(){var o=this;return this.getSegmentDescription(this.expressionParts[6],"",function(s){return/^\d+$/.test(s)?new Date(parseInt(s),1).getFullYear().toString():s},function(s){return t.StringUtilities.format(o.i18n.commaEveryX0Years(),s)},function(s){return o.i18n.commaYearX0ThroughYearX1()||o.i18n.commaX0ThroughX1()},function(s){return o.i18n.commaOnlyInYearX0?o.i18n.commaOnlyInYearX0():o.i18n.commaOnlyInX0()})},u.prototype.getSegmentDescription=function(o,_,s,h,b,T){var y=this,Y=null;if(o)if("*"===o)Y=_;else if(t.StringUtilities.containsAny(o,["/","-",","]))if(o.indexOf("/")>-1){var q=o.split("/");if(Y=t.StringUtilities.format(h(q[1]),q[1]),q[0].indexOf("-")>-1)0!=(B=this.generateBetweenSegmentDescription(q[0],b,s)).indexOf(", ")&&(Y+=", "),Y+=B;else if(!t.StringUtilities.containsAny(q[0],["*",","])){var k=t.StringUtilities.format(T(q[0]),s(q[0]));k=k.replace(", ",""),Y+=t.StringUtilities.format(this.i18n.commaStartingX0(),k)}}else if(o.indexOf(",")>-1){q=o.split(",");for(var D="",N=0;N0&&q.length>2&&(D+=",",N0&&q.length>1&&(N==q.length-1||2==q.length)&&(D+=this.i18n.spaceAnd()+" "),q[N].indexOf("-")>-1){var B;D+=B=(B=this.generateBetweenSegmentDescription(q[N],function(j){return y.i18n.commaX0ThroughX1()},s)).replace(", ","")}else D+=s(q[N]);Y=t.StringUtilities.format(T(o),D)}else o.indexOf("-")>-1&&(Y=this.generateBetweenSegmentDescription(o,b,s));else Y=t.StringUtilities.format(T(o),s(o));else Y="";return Y},u.prototype.generateBetweenSegmentDescription=function(o,_,s){var h="",b=o.split("-"),T=s(b[0]),y=s(b[1]);y=y.replace(":00",":59");var Y=_(o);return h+t.StringUtilities.format(Y,T,y)},u.prototype.formatTime=function(o,_,s){var h=parseInt(o),b="",T=!1;this.options.use24HourTimeFormat||(b=(T=this.i18n.setPeriodBeforeTime&&this.i18n.setPeriodBeforeTime())?this.getPeriod(h)+" ":" "+this.getPeriod(h),h>12&&(h-=12),0===h&&(h=12));var y=_,Y="";return s&&(Y=":"+("00"+s).substring(s.length)),""+(T?b:"")+("00"+h.toString()).substring(h.toString().length)+":"+("00"+y.toString()).substring(y.toString().length)+Y+(T?"":b)},u.prototype.transformVerbosity=function(o,_){return _||(o=(o=(o=(o=o.replace(new RegExp(", "+this.i18n.everyMinute(),"g"),"")).replace(new RegExp(", "+this.i18n.everyHour(),"g"),"")).replace(new RegExp(this.i18n.commaEveryDay(),"g"),"")).replace(/\, ?$/,"")),o},u.prototype.getPeriod=function(o){return o>=12?this.i18n.pm&&this.i18n.pm()||"PM":this.i18n.am&&this.i18n.am()||"AM"},u.locales={},u}();n.ExpressionDescriptor=c},function(E,n,S){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=function(){function e(){}return e.format=function(c){for(var u=[],o=1;o-1})},e}();n.StringUtilities=t},function(E,n,S){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=function(){function e(c,u){void 0===u&&(u=!0),this.expression=c,this.dayOfWeekStartIndexZero=u}return e.prototype.parse=function(){var c=this.extractParts(this.expression);return this.normalize(c),this.validate(c),c},e.prototype.extractParts=function(c){if(!this.expression)throw new Error("Expression is empty");var u=c.trim().split(/[ ]+/);if(u.length<5)throw new Error("Expression has only "+u.length+" part"+(1==u.length?"":"s")+". At least 5 parts are required.");if(5==u.length)u.unshift(""),u.push("");else if(6==u.length)/\d{4}$/.test(u[5])?u.unshift(""):u.push("");else if(u.length>7)throw new Error("Expression has "+u.length+" parts; too many!");return u},e.prototype.normalize=function(c){var u=this;if(c[3]=c[3].replace("?","*"),c[5]=c[5].replace("?","*"),c[2]=c[2].replace("?","*"),0==c[0].indexOf("0/")&&(c[0]=c[0].replace("0/","*/")),0==c[1].indexOf("0/")&&(c[1]=c[1].replace("0/","*/")),0==c[2].indexOf("0/")&&(c[2]=c[2].replace("0/","*/")),0==c[3].indexOf("1/")&&(c[3]=c[3].replace("1/","*/")),0==c[4].indexOf("1/")&&(c[4]=c[4].replace("1/","*/")),0==c[5].indexOf("1/")&&(c[5]=c[5].replace("1/","*/")),0==c[6].indexOf("1/")&&(c[6]=c[6].replace("1/","*/")),c[5]=c[5].replace(/(^\d)|([^#/\s]\d)/g,function(Y){var q=Y.replace(/\D/,""),B=q;return u.dayOfWeekStartIndexZero?"7"==q&&(B="0"):B=(parseInt(q)-1).toString(),Y.replace(q,B)}),"L"==c[5]&&(c[5]="6"),"?"==c[3]&&(c[3]="*"),c[3].indexOf("W")>-1&&(c[3].indexOf(",")>-1||c[3].indexOf("-")>-1))throw new Error("The 'W' character can be specified only when the day-of-month is a single day, not a range or list of days.");var o={SUN:0,MON:1,TUE:2,WED:3,THU:4,FRI:5,SAT:6};for(var _ in o)c[5]=c[5].replace(new RegExp(_,"gi"),o[_].toString());var s={JAN:1,FEB:2,MAR:3,APR:4,MAY:5,JUN:6,JUL:7,AUG:8,SEP:9,OCT:10,NOV:11,DEC:12};for(var h in s)c[4]=c[4].replace(new RegExp(h,"gi"),s[h].toString());"0"==c[0]&&(c[0]=""),!/\*|\-|\,|\//.test(c[2])&&(/\*|\//.test(c[1])||/\*|\//.test(c[0]))&&(c[2]+="-"+c[2]);for(var b=0;b-1&&!/^\*|\-|\,/.test(c[b])){var T=null;switch(b){case 4:T="12";break;case 5:T="6";break;case 6:T="9999";break;default:T=null}if(null!=T){var y=c[b].split("/");c[b]=y[0]+"-"+T+"/"+y[1]}}},e.prototype.validate=function(c){this.assertNoInvalidCharacters("DOW",c[5]),this.assertNoInvalidCharacters("DOM",c[3])},e.prototype.assertNoInvalidCharacters=function(c,u){var o=u.match(/[A-KM-VX-Z]+/gi);if(o&&o.length)throw new Error(c+" part contains invalid values: '"+o.toString()+"'")},e}();n.CronParser=t},function(E,n,S){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=function(){function e(){}return e.prototype.atX0SecondsPastTheMinuteGt20=function(){return null},e.prototype.atX0MinutesPastTheHourGt20=function(){return null},e.prototype.commaMonthX0ThroughMonthX1=function(){return null},e.prototype.commaYearX0ThroughYearX1=function(){return null},e.prototype.use24HourTimeFormatByDefault=function(){return!1},e.prototype.anErrorOccuredWhenGeneratingTheExpressionD=function(){return"An error occured when generating the expression description. Check the cron expression syntax."},e.prototype.everyMinute=function(){return"every minute"},e.prototype.everyHour=function(){return"every hour"},e.prototype.atSpace=function(){return"At "},e.prototype.everyMinuteBetweenX0AndX1=function(){return"Every minute between %s and %s"},e.prototype.at=function(){return"At"},e.prototype.spaceAnd=function(){return" and"},e.prototype.everySecond=function(){return"every second"},e.prototype.everyX0Seconds=function(){return"every %s seconds"},e.prototype.secondsX0ThroughX1PastTheMinute=function(){return"seconds %s through %s past the minute"},e.prototype.atX0SecondsPastTheMinute=function(){return"at %s seconds past the minute"},e.prototype.everyX0Minutes=function(){return"every %s minutes"},e.prototype.minutesX0ThroughX1PastTheHour=function(){return"minutes %s through %s past the hour"},e.prototype.atX0MinutesPastTheHour=function(){return"at %s minutes past the hour"},e.prototype.everyX0Hours=function(){return"every %s hours"},e.prototype.betweenX0AndX1=function(){return"between %s and %s"},e.prototype.atX0=function(){return"at %s"},e.prototype.commaEveryDay=function(){return", every day"},e.prototype.commaEveryX0DaysOfTheWeek=function(){return", every %s days of the week"},e.prototype.commaX0ThroughX1=function(){return", %s through %s"},e.prototype.first=function(){return"first"},e.prototype.second=function(){return"second"},e.prototype.third=function(){return"third"},e.prototype.fourth=function(){return"fourth"},e.prototype.fifth=function(){return"fifth"},e.prototype.commaOnThe=function(){return", on the "},e.prototype.spaceX0OfTheMonth=function(){return" %s of the month"},e.prototype.lastDay=function(){return"the last day"},e.prototype.commaOnTheLastX0OfTheMonth=function(){return", on the last %s of the month"},e.prototype.commaOnlyOnX0=function(){return", only on %s"},e.prototype.commaAndOnX0=function(){return", and on %s"},e.prototype.commaEveryX0Months=function(){return", every %s months"},e.prototype.commaOnlyInX0=function(){return", only in %s"},e.prototype.commaOnTheLastDayOfTheMonth=function(){return", on the last day of the month"},e.prototype.commaOnTheLastWeekdayOfTheMonth=function(){return", on the last weekday of the month"},e.prototype.commaDaysBeforeTheLastDayOfTheMonth=function(){return", %s days before the last day of the month"},e.prototype.firstWeekday=function(){return"first weekday"},e.prototype.weekdayNearestDayX0=function(){return"weekday nearest day %s"},e.prototype.commaOnTheX0OfTheMonth=function(){return", on the %s of the month"},e.prototype.commaEveryX0Days=function(){return", every %s days"},e.prototype.commaBetweenDayX0AndX1OfTheMonth=function(){return", between day %s and %s of the month"},e.prototype.commaOnDayX0OfTheMonth=function(){return", on day %s of the month"},e.prototype.commaEveryHour=function(){return", every hour"},e.prototype.commaEveryX0Years=function(){return", every %s years"},e.prototype.commaStartingX0=function(){return", starting %s"},e.prototype.daysOfTheWeek=function(){return["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},e.prototype.monthsOfTheYear=function(){return["January","February","March","April","May","June","July","August","September","October","November","December"]},e}();n.en=t},function(E,n,S){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=S(0),e=S(5);t.ExpressionDescriptor.initialize(new e.enLocaleLoader),n.default=t.ExpressionDescriptor,n.toString=t.ExpressionDescriptor.toString},function(E,n,S){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=S(3),e=function(){function c(){}return c.prototype.load=function(u){u.en=new t.en},c}();n.enLocaleLoader=e}])},16639:function(module,__unused_webpack_exports,__webpack_require__){if(module=__webpack_require__.nmd(module),function(window,module){"use strict";var defiant={is_ie:/(msie|trident)/i.test(navigator.userAgent),is_safari:/safari/i.test(navigator.userAgent),env:"production",xml_decl:'',namespace:'xmlns:d="defiant-namespace"',tabsize:4,snapshots:{},renderXml:function(E,n){var S=new window.XSLTProcessor,t=document.createElement("span"),e='//xsl:template[@name="'+E+'"]',c=this.node.selectSingleNode(this.xsl_template,e);return(c=this.node.selectSingleNode(this.xsl_template,e)).setAttribute("match","/"),S.importStylesheet(this.xsl_template),t.appendChild(S.transformToFragment(n,document)),c.removeAttribute("match"),t.innerHTML},render:function(E,n){var S,t,e,c,u=new window.XSLTProcessor,o=document.createElement("span"),_={match:"/"};switch(typeof E){case"object":this.extend(_,E),_.data||(_.data=n);break;case"string":_.template=E,_.data=n;break;default:throw"error"}if(_.data=_.data.nodeType?_.data:defiant.json.toXML(_.data),S='//xsl:template[@name="'+_.template+'"]',this.xsl_template||this.gatherTemplates(),_.sorter&&(c=this.node.selectSingleNode(this.xsl_template,S+"//xsl:for-each//xsl:sort"))&&(_.sorter.order&&c.setAttribute("order",_.sorter.order),_.sorter.select&&c.setAttribute("select",_.sorter.select),c.setAttribute("data-type",_.sorter.type||"text")),(e=this.node.selectSingleNode(this.xsl_template,S)).setAttribute("match",_.match),u.importStylesheet(this.xsl_template),o.appendChild(u.transformToFragment(_.data,document)),e.removeAttribute("match"),this.is_safari)for(var s=0,h=(t=o.getElementsByTagName("script")).length;s"+n.replace(/defiant:(\w+)/g,"$1")+"")},registerTemplate:function(E){this.xsl_template=this.xmlFromString('"+E.replace(/defiant:(\w+)/g,"$1")+"")},getSnapshot:function(E,n){return this.json.toXML(E,n||!0)},createSnapshot:function(E,n){var S=this,t="snapshot_"+Date.now();this.json.toXML(E,function(e){S.snapshots[t]=e,n(t)})},getFacets:function(E,n){var S,t,e,c,u,o,_=E.constructor===String&&"snapshot_"===E.slice(0,9)?this.snapshots[E].doc:defiant.json.toXML(E),s=_.cloneNode(!0),h={},b={},T=0;for(o in function Y(q){var B=q.childNodes.length;switch(q.nodeType){case 1:B>=T&&(T=B,t=q);case 9:q.childNodes.map(function(k){return Y(k)})}}(_),t.childNodes.map(function(Y){b[Y.nodeName]||(b[Y.nodeName]=1),b[Y.nodeName]++}),T=0,b)T<=b[o]&&(T=b[o],u=o);return this.createFacetTemplate(n),c=defiant.node.selectSingleNode(s,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]'),defiant.node.selectNodes(s,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]/'+u).map(function(Y){return Y.parentNode.removeChild(Y)}),e=defiant.node.selectNodes(_,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]/'+u),S=e.length-1,e.map(function(Y,q){if(c.appendChild(Y.cloneNode(!0)),q%50==49||q===S){var B=defiant.render("facets",s).replace(/\n|\t/g,"").replace(/"": 0,?/g,"").replace(/,\}/g,"}"),k=JSON.parse(B);h=defiant.concatFacet(k,h),defiant.node.selectNodes(s,'//*[@d:mi="'+t.getAttribute("d:mi")+'"]/'+u).map(function(D){return D.parentNode.removeChild(D)})}}),h},createFacetTemplate:function(E){var n,S,t=[],e=[];for(S in E)t.push(''),e.push('"'+S+'": {"": '+',}'.replace(/\n|\t/g,""));n=t.join("")+'{'+e.join(",")+"}",this.registerTemplate(n)},xmlFromString:function(E){var n;return null===(E=E.replace(/>\s{1,}<")).trim().match(/<\?xml/)&&(E=this.xml_decl+E),"ActiveXObject"in window?((n=new ActiveXObject("Msxml2.DOMDocument")).loadXML(E),n.setProperty("SelectionNamespaces",this.namespace),-1===E.indexOf("xsl:stylesheet")&&n.setProperty("SelectionLanguage","XPath")):n=(new DOMParser).parseFromString(E,"text/xml"),n},concatFacet:function(E,n){for(var S in n)E[S]&&"object"==typeof n[S]?this.concatFacet(E[S],n[S]):E[S]=(E[S]||0)+n[S];return E},extend:function(E,n){for(var S in n)E[S]&&"object"==typeof n[S]?this.extend(E[S],n[S]):E[S]=n[S];return E},node:{selectNodes:function(E,n){if(E.evaluate){for(var S=E.createNSResolver(E.documentElement),t=E.evaluate(n,E,S,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),e=[],c=0,u=t.snapshotLength;c0?S[0]:null}return E.selectSingleNode(n)},prettyPrint:function(E){var n,S=defiant,t=S.tabsize,e=S.xml_decl.toLowerCase();n=S.is_ie?E.xml:(new XMLSerializer).serializeToString(E),"development"!==S.env&&(n=n.replace(/ \w+\:d=".*?"| d\:\w+=".*?"/g,""));for(var c,u,o=n.trim().replace(/(>)\s*(<)(\/*)/g,"$1\n$2$3").split("\n"),_=-1,s=0,h=o.length;s/g),u=null!==o[s].match(/<\/[\w\:]+>/g),null!==o[s].match(/<.*?\/>/g)&&(c=u=!0),c&&_++,o[s]=String().fill(_,"\t")+o[s],c&&u&&_--,!c&&u&&_--);return o.join("\n").replace(/\t/g,String().fill(t," "))},toJSON:function(E,n){var t=9===E.nodeType?E.documentElement:E,e=function u(o){var _,s,h,b,T,y,Y,q,B,k,D={},N=window;switch(o.nodeType){case 1:for("Array"===(T=o.getAttribute("d:constr"))?D=[]:"String"===T&&""===o.textContent&&(D=""),q=0,B=(_=o.attributes).length;q/,rx_constructor:/<(.+?)( d:contr=".*?")>/,rx_namespace:/ xmlns\:d="defiant\-namespace"/,rx_data:/(<.+?>)(.*?)(<\/d:data>)/i,rx_function:/function (\w+)/i,namespace:'xmlns:d="defiant-namespace"',to_xml_str:function(E){return{str:this.hash_to_xml(null,E),map:this.map}},hash_to_xml:function(E,n,S){var t,e,c,u,o,_,s,h,b,T=n.constructor===Array,y=this,Y=[],q=[],B=function(D,N){if(null!==(e=N[D])&&void 0!==e&&"NaN"!==e.toString()||(e=null),u="@"===D.slice(0,1),(o=S?E:D)==+o&&N.constructor!==Object&&(o="d:item"),null===e?(_=null,s=!1):s=(_=e.constructor).toString().match(y.rx_function)[1],u)q.push(o.slice(1)+'="'+y.escape_xml(e)+'"'),"String"!==s&&q.push("d:"+o.slice(1)+'="'+s+'"');else if(null===e)Y.push(y.scalar_to_xml(o,e));else switch(_){case Function:throw"JSON data should not contain functions. Please check your structure.";case Object:Y.push(y.hash_to_xml(o,e));break;case Array:if(D===o){if(c=e.constructor===Array)for(h=e.length;h--;)null!==e[h]&&e[h]&&e[h].constructor!==Array||(c=!0),c||e[h].constructor!==Object||(c=!0);Y.push(y.scalar_to_xml(o,e,c));break}case String:if("string"==typeof e&&(e=e.toString().replace(/\&/g,"&").replace(/\r|\n/g," ")),"#text"===o){y.map.push(N),q.push('d:mi="'+y.map.length+'"'),q.push('d:constr="'+s+'"'),Y.push(y.escape_xml(e));break}case Number:case Boolean:if("#text"===o&&"String"!==s){y.map.push(N),q.push('d:mi="'+y.map.length+'"'),q.push('d:constr="'+s+'"'),Y.push(y.escape_xml(e));break}Y.push(y.scalar_to_xml(o,e))}};if(n.constructor===Array)for(h=0,b=n.length;h"+Y.join("")+"":"/>"))},scalar_to_xml:function(E,n,S){var t,e,c,u="";if(null===E.match(this.rx_validate_name)&&(u+=' d:name="'+E+'"',E="d:name",S=!1),null!==n&&"NaN"!==n.toString()||(n=null),null===n)return"<"+E+' d:constr="null"/>';if(1===n.length&&n.constructor===Array&&!n[0])return"<"+E+' d:constr="null" d:type="ArrayItem"/>';if(1===n.length&&n[0].constructor===Object){var o=(t=this.hash_to_xml(!1,n[0])).match(this.rx_node),_=t.match(this.rx_constructor);return"<"+E+(o=null!==o?o[2].replace(this.rx_namespace,"").replace(/>/,"").replace(/"\/$/,'"'):"")+" "+(_=null!==_?_[2]:"")+' d:type="ArrayItem">'+(t=null!==(t=t.match(this.rx_data))?t[2]:"")+""}return 0===n.length&&n.constructor===Array?"<"+E+' d:constr="Array"/>':S?this.hash_to_xml(E,n,!0):(c=(e=n.constructor).toString().match(this.rx_function)[1],t=e===Array?this.hash_to_xml("d:item",n,!0):this.escape_xml(n),u+=' d:constr="'+c+'"',this.map.push(n),u+=' d:mi="'+this.map.length+'"',"#text"===E?this.escape_xml(n):"<"+E+u+">"+t+"")},escape_xml:function(E){return String(E).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/ /g," ")}},toXML:function(E,n){var S,t,e=defiant.json.interpreter;switch(typeof n){case"function":return void defiant.compiled.to_xml_str(E,function(c){n({doc:defiant.xmlFromString(c.str),src:E,map:c.map})});case"boolean":return S=e.to_xml_str.call(e,E),{doc:defiant.xmlFromString(S.str),src:E,map:S.map};default:return S=e.to_xml_str.call(e,E),t=defiant.xmlFromString(S.str),this.search.map=S.map,t}},search:function(E,n,S){E.constructor===String&&"snapshot_"===E.slice(0,9)&&defiant.snapshots[E]&&(E=defiant.snapshots[E]);var t,e,c=defiant.json,u=E.doc&&E.doc.nodeType,o=u?E.doc:c.toXML(E),_=u?E.map:c.search.map,s=u?E.src:E,h=defiant.node[S?"selectSingleNode":"selectNodes"](o,n.xTransform()),b=[];for(S&&(h=[h]),e=h.length;e--;)switch(h[e].nodeType){case 2:case 3:b.unshift(h[e].nodeValue);break;default:t=+h[e].getAttribute("d:mi"),b.unshift(_[t-1])}return"development"===defiant.env&&(b.trace=c.matchTrace(s,b,h)),b},matchTrace:function(E,n,S){var t=[],e=0,c=window,u=defiant.node.toJSON,o=function(h){return JSON.stringify(h,null,"\t").replace(/\t/g,"")},_=o(E);return S.map(function(s,h){var b,T,y,Y,q,B,k,D=0;switch(s.nodeType){case 2:b=S[h].ownerElement?S[h].ownerElement.getAttribute("d:"+S[h].nodeName):"String",Y=c[b](n[h]),B=_.indexOf(q='"@'+S[h].nodeName+'": '+Y,e);break;case 3:b=S[h].parentNode.getAttribute("d:constr"),Y=c[b](n[h]),B=_.indexOf(q='"'+S[h].parentNode.nodeName+'": '+("Number"===q?Y:'"'+Y+'"'),e);break;default:b=s.getAttribute("d:constr"),["String","Number"].indexOf(b)>-1?(T=u(S[h].parentNode),y=o(T),Y=c[b](n[h]),q='"'+S[h].nodeName+'": '+("Number"===b?Y:'"'+Y+'"'),B=_.indexOf(y,e)+y.indexOf(q)):(q=o(n[h]),B=_.indexOf(q),D=q.split("\n").length-1)}e=B+1,k=_.slice(0,B).split("\n").length,t.push([k,D])}),t}}},x10={id:1,work_handler:function(E){var n=Array.prototype.slice.call(E.data,2),S=E.data[0],t=E.data[1],e=tree[S].apply(tree,n);e.map=JSON.parse(JSON.stringify(e.map)),postMessage([t,S,e])},setup:function(E){var n=window.URL||window.webkitURL,S="var tree = {"+this.parse(E).join(",")+"};",t=new Blob([S+'self.addEventListener("message", '+this.work_handler.toString()+", false);"],{type:"text/javascript"}),e=new Worker(n.createObjectURL(t));return e.onmessage=function(c){var u=Array.prototype.slice.call(c.data,2),o=c.data[0],_=c.data[1];x10.observer.emit("x10:"+_+o,u),x10.observer.off("x10:"+_+o)},e},call_handler:function(E,n){return function(){var S=Array.prototype.slice.call(arguments,0,-1),t=arguments[arguments.length-1],e=x10.id++;S.unshift(e),S.unshift(E),x10.observer.on("x10:"+E+e,function(c){t(c.detail[0])}),n.postMessage(S)}},compile:function(E){var n,S=this.setup("function"==typeof E?{func:E}:E),t={};if("function"==typeof E)return t.func=this.call_handler("func",S),t.func;for(n in E)t[n]=this.call_handler(n,S);return t},parse:function(E,n){var S,t,e,c=[];for(S in E)if(null!==(e=E[S]))if(void 0!==e){switch(e.constructor){case Date:t="new Date("+e.valueOf()+")";break;case Object:t="{"+this.parse(e).join(",")+"}";break;case Array:t="["+this.parse(e,!0).join(",")+"]";break;case String:t='"'+e.replace(/"/g,'\\"')+'"';break;case RegExp:case Function:t=e.toString();break;default:t=e}c.push(n?t:S+":"+t)}else c.push(S+":undefined");else c.push(S+":null");return c},observer:(stack={},{on:function(E,n){stack[E]||(stack[E]=[]),stack[E].unshift(n)},off:function(E,n){if(stack[E]){var S=stack[E].indexOf(n);stack[E].splice(S,1)}},emit:function(E,n){if(stack[E])for(var S={type:E,detail:n,isCanceled:!1,cancelBubble:function(){this.isCanceled=!0}},t=stack[E].length;t--;){if(S.isCanceled)return;stack[E][t](S)}}})},stack;String.prototype.fill||(String.prototype.fill=function(Ce,E){var n=this;for(E=E||" ";n.length=3&&(y=T),"[object Array]"===t.call(h)?c(h,b,y):"string"==typeof h?u(h,b,y):o(h,b,y)}},2199:function(Ce){"use strict";var E="Function.prototype.bind called on incompatible ",n=Array.prototype.slice,S=Object.prototype.toString,t="[object Function]";Ce.exports=function(c){var u=this;if("function"!=typeof u||S.call(u)!==t)throw new TypeError(E+u);for(var _,o=n.call(arguments,1),s=function(){if(this instanceof _){var q=u.apply(this,o.concat(n.call(arguments)));return Object(q)===q?q:this}return u.apply(c,o.concat(n.call(arguments)))},h=Math.max(0,u.length-o.length),b=[],T=0;T1&&"boolean"!=typeof Q)throw new c('"allowMissing" argument must be a boolean');if(null===le(/^%?[^%]*%?$/,d))throw new t("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var J=$(d),te=J.length>0?J[0]:"",K=be("%"+te+"%",Q),G=K.name,ce=K.value,_e=!1,Me=K.alias;Me&&(te=Me[0],I(J,N([0,1],Me)));for(var ve=1,ue=!0;ve=J.length){var wt=o(ce,lt);ce=(ue=!!wt)&&"get"in wt&&!("originalValue"in wt.get)?wt.get:ce[lt]}else ue=D(ce,lt),ce=ce[lt];ue&&!_e&&(Y[G]=ce)}}return ce}},20253:function(Ce,E,n){"use strict";var t=n(79903)("%Object.getOwnPropertyDescriptor%",!0);if(t)try{t([],"length")}catch(e){t=null}Ce.exports=t},15977:function(Ce,E,n){var S;!function(t,e,c,u){"use strict";var k,o=["","webkit","Moz","MS","ms","o"],_=e.createElement("div"),h=Math.round,b=Math.abs,T=Date.now;function y(Ve,se,he){return setTimeout(L(Ve,he),se)}function Y(Ve,se,he){return!!Array.isArray(Ve)&&(q(Ve,he[se],he),!0)}function q(Ve,se,he){var ht;if(Ve)if(Ve.forEach)Ve.forEach(se,he);else if(Ve.length!==u)for(ht=0;ht\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",Zn=t.console&&(t.console.warn||t.console.log);return Zn&&Zn.call(t.console,ht,dn),Ve.apply(this,arguments)}}k="function"!=typeof Object.assign?function(se){if(se===u||null===se)throw new TypeError("Cannot convert undefined or null to object");for(var he=Object(se),ht=1;ht-1}function z(Ve){return Ve.trim().split(/\s+/g)}function d(Ve,se,he){if(Ve.indexOf&&!he)return Ve.indexOf(se);for(var ht=0;htpi[se]}):ht.sort()),ht}function te(Ve,se){for(var he,ht,Vt=se[0].toUpperCase()+se.slice(1),dn=0;dn1&&!he.firstMultiple?he.firstMultiple=X(se):1===Vt&&(he.firstMultiple=!1);var dn=he.firstInput,Zn=he.firstMultiple,Xn=Zn?Zn.center:dn.center,ni=se.center=ne(ht);se.timeStamp=T(),se.deltaTime=se.timeStamp-dn.timeStamp,se.angle=At(Xn,ni),se.distance=He(Xn,ni),function $e(Ve,se){var he=se.center,ht=Ve.offsetDelta||{},Vt=Ve.prevDelta||{},dn=Ve.prevInput||{};(1===se.eventType||4===dn.eventType)&&(Vt=Ve.prevDelta={x:dn.deltaX||0,y:dn.deltaY||0},ht=Ve.offsetDelta={x:he.x,y:he.y}),se.deltaX=Vt.x+(he.x-ht.x),se.deltaY=Vt.y+(he.y-ht.y)}(he,se),se.offsetDirection=Oe(se.deltaX,se.deltaY);var pi=me(se.deltaTime,se.deltaX,se.deltaY);se.overallVelocityX=pi.x,se.overallVelocityY=pi.y,se.overallVelocity=b(pi.x)>b(pi.y)?pi.x:pi.y,se.scale=Zn?function sn(Ve,se){return He(se[0],se[1],Ht)/He(Ve[0],Ve[1],Ht)}(Zn.pointers,ht):1,se.rotation=Zn?function Ft(Ve,se){return At(se[1],se[0],Ht)+At(Ve[1],Ve[0],Ht)}(Zn.pointers,ht):0,se.maxPointers=he.prevInput?se.pointers.length>he.prevInput.maxPointers?se.pointers.length:he.prevInput.maxPointers:se.pointers.length,function Ae(Ve,se){var Vt,dn,Zn,Xn,he=Ve.lastInterval||se,ht=se.timeStamp-he.timeStamp;if(8!=se.eventType&&(ht>25||he.velocity===u)){var ni=se.deltaX-he.deltaX,pi=se.deltaY-he.deltaY,Mi=me(ht,ni,pi);dn=Mi.x,Zn=Mi.y,Vt=b(Mi.x)>b(Mi.y)?Mi.x:Mi.y,Xn=Oe(ni,pi),Ve.lastInterval=se}else Vt=he.velocity,dn=he.velocityX,Zn=he.velocityY,Xn=he.direction;se.velocity=Vt,se.velocityX=dn,se.velocityY=Zn,se.direction=Xn}(he,se);var Mi=Ve.element;$(se.srcEvent.target,Mi)&&(Mi=se.srcEvent.target),se.target=Mi}(Ve,he),Ve.emit("hammer.input",he),Ve.recognize(he),Ve.session.prevInput=he}function X(Ve){for(var se=[],he=0;he=b(se)?Ve<0?2:4:se<0?8:16}function He(Ve,se,he){he||(he=et);var ht=se[he[0]]-Ve[he[0]],Vt=se[he[1]]-Ve[he[1]];return Math.sqrt(ht*ht+Vt*Vt)}function At(Ve,se,he){return he||(he=et),180*Math.atan2(se[he[1]]-Ve[he[1]],se[he[0]]-Ve[he[0]])/Math.PI}nn.prototype={handler:function(){},init:function(){this.evEl&&re(this.element,this.evEl,this.domHandler),this.evTarget&&re(this.target,this.evTarget,this.domHandler),this.evWin&&re(ce(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&W(this.element,this.evEl,this.domHandler),this.evTarget&&W(this.target,this.evTarget,this.domHandler),this.evWin&&W(ce(this.element),this.evWin,this.domHandler)}};var Xt={mousedown:1,mousemove:2,mouseup:4},gn="mousedown",vn="mousemove mouseup";function hn(){this.evEl=gn,this.evWin=vn,this.pressed=!1,nn.apply(this,arguments)}I(hn,nn,{handler:function(se){var he=Xt[se.type];1&he&&0===se.button&&(this.pressed=!0),2&he&&1!==se.which&&(he=4),this.pressed&&(4&he&&(this.pressed=!1),this.callback(this.manager,he,{pointers:[se],changedPointers:[se],pointerType:mt,srcEvent:se}))}});var jn={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},Jn={2:lt,3:"pen",4:mt,5:"kinect"},oi="pointerdown",ri="pointermove pointerup pointercancel";function un(){this.evEl=oi,this.evWin=ri,nn.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(oi="MSPointerDown",ri="MSPointerMove MSPointerUp MSPointerCancel"),I(un,nn,{handler:function(se){var he=this.store,ht=!1,Vt=se.type.toLowerCase().replace("ms",""),dn=jn[Vt],Zn=Jn[se.pointerType]||se.pointerType,Xn=Zn==lt,ni=d(he,se.pointerId,"pointerId");1&dn&&(0===se.button||Xn)?ni<0&&(he.push(se),ni=he.length-1):12&dn&&(ht=!0),!(ni<0)&&(he[ni]=se,this.callback(this.manager,dn,{pointers:he,changedPointers:[se],pointerType:Zn,srcEvent:se}),ht&&he.splice(ni,1))}});var mn={touchstart:1,touchmove:2,touchend:4,touchcancel:8},zt="touchstart",qe="touchstart touchmove touchend touchcancel";function pt(){this.evTarget=zt,this.evWin=qe,this.started=!1,nn.apply(this,arguments)}function Ne(Ve,se){var he=Q(Ve.touches),ht=Q(Ve.changedTouches);return 12&se&&(he=J(he.concat(ht),"identifier",!0)),[he,ht]}I(pt,nn,{handler:function(se){var he=mn[se.type];if(1===he&&(this.started=!0),this.started){var ht=Ne.call(this,se,he);12&he&&ht[0].length-ht[1].length==0&&(this.started=!1),this.callback(this.manager,he,{pointers:ht[0],changedPointers:ht[1],pointerType:lt,srcEvent:se})}}});var Re={touchstart:1,touchmove:2,touchend:4,touchcancel:8},tt="touchstart touchmove touchend touchcancel";function Ke(){this.evTarget=tt,this.targetIds={},nn.apply(this,arguments)}function vt(Ve,se){var he=Q(Ve.touches),ht=this.targetIds;if(3&se&&1===he.length)return ht[he[0].identifier]=!0,[he,he];var Vt,dn,Zn=Q(Ve.changedTouches),Xn=[],ni=this.target;if(dn=he.filter(function(pi){return $(pi.target,ni)}),1===se)for(Vt=0;Vt-1&&ht.splice(Zn,1)},2500)}}function ln(Ve){for(var se=Ve.srcEvent.clientX,he=Ve.srcEvent.clientY,ht=0;ht-1&&this.requireFail.splice(he,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(se){return!!this.simultaneous[se.id]},emit:function(se){var he=this,ht=this.state;function Vt(dn){he.manager.emit(dn,se)}ht<8&&Vt(he.options.event+qt(ht)),Vt(he.options.event),se.additionalEvent&&Vt(se.additionalEvent),ht>=8&&Vt(he.options.event+qt(ht))},tryEmit:function(se){if(this.canEmit())return this.emit(se);this.state=32},canEmit:function(){for(var se=0;sehe.threshold&&dn&he.direction},attrTest:function(se){return Wn.prototype.attrTest.call(this,se)&&(2&this.state||!(2&this.state)&&this.directionTest(se))},emit:function(se){this.pX=se.deltaX,this.pY=se.deltaY;var he=Gt(se.direction);he&&(se.additionalEvent=this.options.event+he),this._super.emit.call(this,se)}}),I(Hi,Wn,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[wi]},attrTest:function(se){return this._super.attrTest.call(this,se)&&(Math.abs(se.scale-1)>this.options.threshold||2&this.state)},emit:function(se){1!==se.scale&&(se.additionalEvent=this.options.event+(se.scale<1?"in":"out")),this._super.emit.call(this,se)}}),I(ea,Le,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(se){var he=this.options,ht=se.pointers.length===he.pointers,Vt=se.distancehe.time;if(this._input=se,!Vt||!ht||12&se.eventType&&!dn)this.reset();else if(1&se.eventType)this.reset(),this._timer=y(function(){this.state=8,this.tryEmit()},he.time,this);else if(4&se.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(se){8===this.state&&(se&&4&se.eventType?this.manager.emit(this.options.event+"up",se):(this._input.timeStamp=T(),this.manager.emit(this.options.event,this._input)))}}),I(_i,Wn,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[wi]},attrTest:function(se){return this._super.attrTest.call(this,se)&&(Math.abs(se.rotation)>this.options.threshold||2&this.state)}}),I(Ii,Wn,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return vi.prototype.getTouchAction.call(this)},attrTest:function(se){var ht,he=this.options.direction;return 30&he?ht=se.overallVelocity:6&he?ht=se.overallVelocityX:24&he&&(ht=se.overallVelocityY),this._super.attrTest.call(this,se)&&he&se.offsetDirection&&se.distance>this.options.threshold&&se.maxPointers==this.options.pointers&&b(ht)>this.options.velocity&&4&se.eventType},emit:function(se){var he=Gt(se.offsetDirection);he&&this.manager.emit(this.options.event+he,se),this.manager.emit(this.options.event,se)}}),I(ga,Le,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[mi]},process:function(se){var he=this.options,ht=se.pointers.length===he.pointers,Vt=se.distance=0&&"[object Array]"!==e(s)&&"[object Function]"===e(s.callee)},o=function(){return c(arguments)}();c.isLegacyArguments=u,Ce.exports=o?c:u},88642:function(Ce){"use strict";var S,t,E=Function.prototype.toString,n="object"==typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"==typeof n&&"function"==typeof Object.defineProperty)try{S=Object.defineProperty({},"length",{get:function(){throw t}}),t={},n(function(){throw 42},null,S)}catch(D){D!==t&&(n=null)}else n=null;var e=/^\s*class\b/,c=function(N){try{var I=E.call(N);return e.test(I)}catch(L){return!1}},u=function(N){try{return!c(N)&&(E.call(N),!0)}catch(I){return!1}},o=Object.prototype.toString,Y="function"==typeof Symbol&&!!Symbol.toStringTag,q=!(0 in[,]),B=function(){return!1};if("object"==typeof document){var k=document.all;o.call(k)===o.call(document.all)&&(B=function(N){if((q||!N)&&(void 0===N||"object"==typeof N))try{var I=o.call(N);return("[object HTMLAllCollection]"===I||"[object HTML document.all class]"===I||"[object HTMLCollection]"===I||"[object Object]"===I)&&null==N("")}catch(L){}return!1})}Ce.exports=n?function(N){if(B(N))return!0;if(!N||"function"!=typeof N&&"object"!=typeof N)return!1;try{n(N,null,S)}catch(I){if(I!==t)return!1}return!c(N)&&u(N)}:function(N){if(B(N))return!0;if(!N||"function"!=typeof N&&"object"!=typeof N)return!1;if(Y)return u(N);if(c(N))return!1;var I=o.call(N);return!("[object Function]"!==I&&"[object GeneratorFunction]"!==I&&!/^\[object HTML/.test(I))&&u(N)}},17494:function(Ce,E,n){"use strict";var _,S=Object.prototype.toString,t=Function.prototype.toString,e=/^\s*(?:function)?\*/,c=n(13261)(),u=Object.getPrototypeOf;Ce.exports=function(h){if("function"!=typeof h)return!1;if(e.test(t.call(h)))return!0;if(!c)return"[object GeneratorFunction]"===S.call(h);if(!u)return!1;if(void 0===_){var T=function(){if(!c)return!1;try{return Function("return function*() {}")()}catch(h){}}();_=!!T&&u(T)}return u(h)===_}},37673:function(Ce,E,n){"use strict";var S=n(83037),t=n(35271),e=n(4263),c=e("Object.prototype.toString"),u=n(13261)(),o=n(20253),_="undefined"==typeof globalThis?global:globalThis,s=t(),h=e("Array.prototype.indexOf",!0)||function(B,k){for(var D=0;D-1}return!!o&&function(B){var k=!1;return S(T,function(D,N){if(!k)try{k=D.call(B)===N}catch(I){}}),k}(B)}},92081:function(Ce,E,n){"use strict";var S=n(37169),t=S(n(45664)),e=S(n(16996)),c=n(78102),u=n(76327),o=n(97818),_=n(95222),s=function(){function h(b,T){(0,t.default)(this,h),this._grammar=b,this._exprStr=T,this._ast=null}return(0,e.default)(h,[{key:"compile",value:function(){var T=new u(this._grammar),y=new o(this._grammar),Y=T.tokenize(this._exprStr);return y.addTokens(Y),this._ast=y.complete(),this}},{key:"eval",value:function(){var T=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._eval(T,Promise)}},{key:"evalSync",value:function(){var T=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},y=this._eval(T,_);if(y.error)throw y.error;return y.value}},{key:"_eval",value:function(T,y){var Y=this;return y.resolve().then(function(){var q=Y._getAst();return new c(Y._grammar,T,void 0,y).eval(q)})}},{key:"_getAst",value:function(){return this._ast||this.compile(),this._ast}}]),h}();Ce.exports=s},19537:function(Ce,E,n){"use strict";var S=n(37169),t=S(n(9482)),e=S(n(45664)),c=S(n(16996)),u=n(92081),_=n(20155).getGrammar,s=function(){function h(){(0,e.default)(this,h),this.expr=this.expr.bind(this),this._grammar=_()}return(0,c.default)(h,[{key:"addBinaryOp",value:function(T,y,Y,q){this._addGrammarElement(T,(0,t.default)({type:"binaryOp",precedence:y},q?"evalOnDemand":"eval",Y))}},{key:"addFunction",value:function(T,y){this._grammar.functions[T]=y}},{key:"addFunctions",value:function(T){for(var y in T)this._grammar.functions[y]=T[y]}},{key:"addUnaryOp",value:function(T,y){this._addGrammarElement(T,{type:"unaryOp",weight:1/0,eval:y})}},{key:"addTransform",value:function(T,y){this._grammar.transforms[T]=y}},{key:"addTransforms",value:function(T){for(var y in T)this._grammar.transforms[y]=T[y]}},{key:"compile",value:function(T){return this.createExpression(T).compile()}},{key:"createExpression",value:function(T){return new u(this._grammar,T)}},{key:"getFunction",value:function(T){return this._grammar.functions[T]}},{key:"getTransform",value:function(T){return this._grammar.transforms[T]}},{key:"eval",value:function(T){var y=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Y=this.createExpression(T);return Y.eval(y)}},{key:"evalSync",value:function(T){var y=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Y=this.createExpression(T);return Y.evalSync(y)}},{key:"expr",value:function(T){for(var y=arguments.length,Y=new Array(y>1?y-1:0),q=1;q3&&void 0!==arguments[3]?arguments[3]:Promise;(0,t.default)(this,o),this._grammar=_,this._context=s||{},this._relContext=h||this._context,this.Promise=b}return(0,e.default)(o,[{key:"eval",value:function(s){var h=this;return this.Promise.resolve().then(function(){return c[s.type].call(h,s)})}},{key:"evalArray",value:function(s){var h=this;return this.Promise.all(s.map(function(b){return h.eval(b)}))}},{key:"evalMap",value:function(s){var h=this,b=Object.keys(s),T={},y=b.map(function(Y){return h.eval(s[Y])});return this.Promise.all(y).then(function(Y){return Y.forEach(function(q,B){T[b[B]]=q}),T})}},{key:"_filterRelative",value:function(s,h){var b=this,T=[];return Array.isArray(s)||(s=void 0===s?[]:[s]),s.forEach(function(y){var Y=new o(b._grammar,b._context,y,b.Promise);T.push(Y.eval(h))}),this.Promise.all(T).then(function(y){var Y=[];return y.forEach(function(q,B){q&&Y.push(s[B])}),Y})}},{key:"_filterStatic",value:function(s,h){return this.eval(h).then(function(b){return"boolean"==typeof b?b?s:void 0:s[b]})}}]),o}();Ce.exports=u},64653:function(Ce,E,n){"use strict";var t=n(37169)(n(10302)),e={functions:"Jexl Function",transforms:"Transform"};E.ArrayLiteral=function(c){return this.evalArray(c.value)},E.BinaryExpression=function(c){var u=this,o=this._grammar.elements[c.operator];if(o.evalOnDemand){var _=function(h){return{eval:function(){return u.eval(h)}}};return o.evalOnDemand(_(c.left),_(c.right))}return this.Promise.all([this.eval(c.left),this.eval(c.right)]).then(function(s){return o.eval(s[0],s[1])})},E.ConditionalExpression=function(c){var u=this;return this.eval(c.test).then(function(o){return o?c.consequent?u.eval(c.consequent):o:u.eval(c.alternate)})},E.FilterExpression=function(c){var u=this;return this.eval(c.subject).then(function(o){return c.relative?u._filterRelative(o,c.expr):u._filterStatic(o,c.expr)})},E.Identifier=function(c){return c.from?this.eval(c.from).then(function(u){if(null!=u)return Array.isArray(u)&&(u=u[0]),u[c.value]}):c.relative?this._relContext[c.value]:this._context[c.value]},E.Literal=function(c){return c.value},E.ObjectLiteral=function(c){return this.evalMap(c.value)},E.FunctionCall=function(c){var u=e[c.pool];if(!u)throw new Error("Corrupt AST: Pool '".concat(c.pool,"' not found"));var _=this._grammar[c.pool][c.name];if(!_)throw new Error("".concat(u," ").concat(c.name," is not defined."));return this.evalArray(c.args||[]).then(function(s){return _.apply(void 0,(0,t.default)(s))})},E.UnaryExpression=function(c){var u=this;return this.eval(c.right).then(function(o){return u._grammar.elements[c.operator].eval(o)})}},20155:function(Ce,E){"use strict";E.getGrammar=function(){return{elements:{".":{type:"dot"},"[":{type:"openBracket"},"]":{type:"closeBracket"},"|":{type:"pipe"},"{":{type:"openCurl"},"}":{type:"closeCurl"},":":{type:"colon"},",":{type:"comma"},"(":{type:"openParen"},")":{type:"closeParen"},"?":{type:"question"},"+":{type:"binaryOp",precedence:30,eval:function(S,t){return S+t}},"-":{type:"binaryOp",precedence:30,eval:function(S,t){return S-t}},"*":{type:"binaryOp",precedence:40,eval:function(S,t){return S*t}},"/":{type:"binaryOp",precedence:40,eval:function(S,t){return S/t}},"//":{type:"binaryOp",precedence:40,eval:function(S,t){return Math.floor(S/t)}},"%":{type:"binaryOp",precedence:50,eval:function(S,t){return S%t}},"^":{type:"binaryOp",precedence:50,eval:function(S,t){return Math.pow(S,t)}},"==":{type:"binaryOp",precedence:20,eval:function(S,t){return S==t}},"!=":{type:"binaryOp",precedence:20,eval:function(S,t){return S!=t}},">":{type:"binaryOp",precedence:20,eval:function(S,t){return S>t}},">=":{type:"binaryOp",precedence:20,eval:function(S,t){return S>=t}},"<":{type:"binaryOp",precedence:20,eval:function(S,t){return S=S;)this._cursor=t,t=t._parent;var e={type:"BinaryExpression",operator:n.value,left:this._cursor};this._setParent(this._cursor,e),this._cursor=t,this._placeAtCursor(e)},E.dot=function(){this._nextIdentEncapsulate=this._cursor&&"UnaryExpression"!==this._cursor.type&&("BinaryExpression"!==this._cursor.type||"BinaryExpression"===this._cursor.type&&this._cursor.right),this._nextIdentRelative=!this._cursor||this._cursor&&!this._nextIdentEncapsulate,this._nextIdentRelative&&(this._relative=!0)},E.filter=function(n){this._placeBeforeCursor({type:"FilterExpression",expr:n,relative:this._subParser.isRelative(),subject:this._cursor})},E.functionCall=function(){this._placeBeforeCursor({type:"FunctionCall",name:this._cursor.value,args:[],pool:"functions"})},E.identifier=function(n){var S={type:"Identifier",value:n.value};this._nextIdentEncapsulate?(S.from=this._cursor,this._placeBeforeCursor(S),this._nextIdentEncapsulate=!1):(this._nextIdentRelative&&(S.relative=!0,this._nextIdentRelative=!1),this._placeAtCursor(S))},E.literal=function(n){this._placeAtCursor({type:"Literal",value:n.value})},E.objKey=function(n){this._curObjKey=n.value},E.objStart=function(){this._placeAtCursor({type:"ObjectLiteral",value:{}})},E.objVal=function(n){this._cursor.value[this._curObjKey]=n},E.subExpression=function(n){this._placeAtCursor(n)},E.ternaryEnd=function(n){this._cursor.alternate=n},E.ternaryMid=function(n){this._cursor.consequent=n},E.ternaryStart=function(){this._tree={type:"ConditionalExpression",test:this._tree},this._cursor=this._tree},E.transform=function(n){this._placeBeforeCursor({type:"FunctionCall",name:n.value,args:[this._cursor],pool:"transforms"})},E.unaryOp=function(n){this._placeAtCursor({type:"UnaryExpression",operator:n.value})}},94389:function(Ce,E,n){"use strict";var S=n(37083);E.$={expectOperand:{tokenTypes:{literal:{toState:"expectBinOp"},identifier:{toState:"identifier"},unaryOp:{},openParen:{toState:"subExpression"},openCurl:{toState:"expectObjKey",handler:S.objStart},dot:{toState:"traverse"},openBracket:{toState:"arrayVal",handler:S.arrayStart}}},expectBinOp:{tokenTypes:{binaryOp:{toState:"expectOperand"},pipe:{toState:"expectTransform"},dot:{toState:"traverse"},question:{toState:"ternaryMid",handler:S.ternaryStart}},completable:!0},expectTransform:{tokenTypes:{identifier:{toState:"postTransform",handler:S.transform}}},expectObjKey:{tokenTypes:{identifier:{toState:"expectKeyValSep",handler:S.objKey},closeCurl:{toState:"expectBinOp"}}},expectKeyValSep:{tokenTypes:{colon:{toState:"objVal"}}},postTransform:{tokenTypes:{openParen:{toState:"argVal"},binaryOp:{toState:"expectOperand"},dot:{toState:"traverse"},openBracket:{toState:"filter"},pipe:{toState:"expectTransform"}},completable:!0},postArgs:{tokenTypes:{binaryOp:{toState:"expectOperand"},dot:{toState:"traverse"},openBracket:{toState:"filter"},pipe:{toState:"expectTransform"}},completable:!0},identifier:{tokenTypes:{binaryOp:{toState:"expectOperand"},dot:{toState:"traverse"},openBracket:{toState:"filter"},openParen:{toState:"argVal",handler:S.functionCall},pipe:{toState:"expectTransform"},question:{toState:"ternaryMid",handler:S.ternaryStart}},completable:!0},traverse:{tokenTypes:{identifier:{toState:"identifier"}}},filter:{subHandler:S.filter,endStates:{closeBracket:"identifier"}},subExpression:{subHandler:S.subExpression,endStates:{closeParen:"expectBinOp"}},argVal:{subHandler:S.argVal,endStates:{comma:"argVal",closeParen:"postArgs"}},objVal:{subHandler:S.objVal,endStates:{comma:"expectObjKey",closeCurl:"expectBinOp"}},arrayVal:{subHandler:S.arrayVal,endStates:{comma:"arrayVal",closeBracket:"expectBinOp"}},ternaryMid:{subHandler:S.ternaryMid,endStates:{colon:"ternaryEnd"}},ternaryEnd:{subHandler:S.ternaryEnd,completable:!0}}},90650:function(Ce){var Xt,n="__lodash_hash_undefined__",S=1/0,u=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,o=/^\w*$/,_=/^\./,s=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,b=/\\(\\)?/g,T=/^\[object .+?Constructor\]$/,y="object"==typeof global&&global&&global.Object===Object&&global,Y="object"==typeof self&&self&&self.Object===Object&&self,q=y||Y||Function("return this")(),D=Array.prototype,N=Function.prototype,I=Object.prototype,L=q["__core-js_shared__"],j=(Xt=/[^.]+$/.exec(L&&L.keys&&L.keys.IE_PROTO||""))?"Symbol(src)_1."+Xt:"",le=N.toString,re=I.hasOwnProperty,W=I.toString,$=RegExp("^"+le.call(re).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),be=q.Symbol,z=D.splice,d=et(q,"Map"),Q=et(Object,"create"),J=be?be.prototype:void 0,te=J?J.toString:void 0;function K(Xt){var gn=-1,vn=Xt?Xt.length:0;for(this.clear();++gn-1},ue.prototype.set=function Pt(Xt,gn){var vn=this.__data__,hn=nt(vn,Xt);return hn<0?vn.push([Xt,gn]):vn[hn][1]=gn,this},Pe.prototype.clear=function ze(){this.__data__={hash:new K,map:new(d||ue),string:new K}},Pe.prototype.delete=function ft(Xt){return Fe(this,Xt).delete(Xt)},Pe.prototype.get=function ct(Xt){return Fe(this,Xt).get(Xt)},Pe.prototype.has=function Ee(Xt){return Fe(this,Xt).has(Xt)},Pe.prototype.set=function st(Xt,gn){return Fe(this,Xt).set(Xt,gn),this};var kt=Ae(function(Xt){Xt=function Ft(Xt){return null==Xt?"":function xe(Xt){if("string"==typeof Xt)return Xt;if(At(Xt))return te?te.call(Xt):"";var gn=Xt+"";return"0"==gn&&1/Xt==-S?"-0":gn}(Xt)}(Xt);var gn=[];return _.test(Xt)&&gn.push(""),Xt.replace(s,function(vn,hn,jn,Jn){gn.push(jn?Jn.replace(b,"$1"):hn||vn)}),gn});function It(Xt){if("string"==typeof Xt||At(Xt))return Xt;var gn=Xt+"";return"0"==gn&&1/Xt==-S?"-0":gn}function Ae(Xt,gn){if("function"!=typeof Xt||gn&&"function"!=typeof gn)throw new TypeError("Expected a function");var vn=function hn(){var jn=arguments,Jn=gn?gn.apply(this,jn):jn[0],oi=hn.cache;if(oi.has(Jn))return oi.get(Jn);var ri=Xt.apply(this,jn);return hn.cache=oi.set(Jn,ri),ri};return vn.cache=new(Ae.Cache||Pe),vn}function X(Xt,gn){return Xt===gn||Xt!=Xt&&gn!=gn}Ae.Cache=Pe;var ne=Array.isArray;function Oe(Xt){var gn=typeof Xt;return!!Xt&&("object"==gn||"function"==gn)}function At(Xt){return"symbol"==typeof Xt||function He(Xt){return!!Xt&&"object"==typeof Xt}(Xt)&&"[object Symbol]"==W.call(Xt)}Ce.exports=function sn(Xt,gn,vn){var hn=null==Xt?void 0:function at(Xt,gn){gn=function Ht(Xt,gn){if(ne(Xt))return!1;var vn=typeof Xt;return!("number"!=vn&&"symbol"!=vn&&"boolean"!=vn&&null!=Xt&&!At(Xt))||o.test(Xt)||!u.test(Xt)||null!=gn&&Xt in Object(gn)}(gn,Xt)?[gn]:function ut(Xt){return ne(Xt)?Xt:kt(Xt)}(gn);for(var vn=0,hn=gn.length;null!=Xt&&vnNa))return!1;var zi=Vi.get(en);if(zi&&Vi.get(Dn))return zi==Dn;var Ra=-1,sa=!0,da=2&qn?new wa:void 0;for(Vi.set(en,Dn),Vi.set(Dn,en);++Ra-1},xn.prototype.set=function Bi(en,Dn){var qn=this.__data__,bi=Wn(qn,en);return bi<0?(++this.size,qn.push([en,Dn])):qn[bi][1]=Dn,this},Xi.prototype.clear=function ka(){this.size=0,this.__data__={hash:new rn,map:new(ri||xn),string:new rn}},Xi.prototype.delete=function Ja(en){var Dn=Zt(this,en).delete(en);return this.size-=Dn?1:0,Dn},Xi.prototype.get=function _a(en){return Zt(this,en).get(en)},Xi.prototype.has=function nr(en){return Zt(this,en).has(en)},Xi.prototype.set=function _r(en,Dn){var qn=Zt(this,en),bi=qn.size;return qn.set(en,Dn),this.size+=qn.size==bi?0:1,this},wa.prototype.add=wa.prototype.push=function or(en){return this.__data__.set(en,t),this},wa.prototype.has=function Ta(en){return this.__data__.has(en)},Cn.prototype.clear=function Pn(){this.__data__=new xn,this.size=0},Cn.prototype.delete=function Tt(en){var Dn=this.__data__,qn=Dn.delete(en);return this.size=Dn.size,qn},Cn.prototype.get=function Le(en){return this.__data__.get(en)},Cn.prototype.has=function qt(en){return this.__data__.has(en)},Cn.prototype.set=function Gt(en,Dn){var qn=this.__data__;if(qn instanceof xn){var bi=qn.__data__;if(!ri||bi.length<199)return bi.push([en,Dn]),this.size=++qn.size,this;qn=this.__data__=new Xi(bi)}return qn.set(en,Dn),this.size=qn.size,this};var he=hn?function(en){return null==en?[]:(en=Object(en),function nt(en,Dn){for(var qn=-1,bi=null==en?0:en.length,Ji=0,Vi=[];++qn-1&&en%1==0&&en-1&&en%1==0&&en<=u}function pr(en){var Dn=typeof en;return null!=en&&("object"==Dn||"function"==Dn)}function sr(en){return null!=en&&"object"==typeof en}var Ca=st?function ut(en){return function(Dn){return en(Dn)}}(st):function Ha(en){return sr(en)&&oa(en.length)&&!!Xe[Hi(en)]};function ir(en){return function aa(en){return null!=en&&oa(en.length)&&!ca(en)}(en)?function An(en,Dn){var qn=Yi(en),bi=!qn&&Wi(en),Ji=!qn&&!bi&&xi(en),Vi=!qn&&!bi&&!Ji&&Ca(en),ya=qn||bi||Ji||Vi,Na=ya?function xe(en,Dn){for(var qn=-1,bi=Array(en);++qn"']/g,ri=RegExp(Jn.source),un=RegExp(oi.source),mn=/<%-([\s\S]+?)%>/g,zt=/<%([\s\S]+?)%>/g,qe=/<%=([\s\S]+?)%>/g,pt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ne=/^\w*$/,Re=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,tt=/[\\^$.*+?()[\]{}|]/g,Ke=RegExp(tt.source),vt=/^\s+/,Rt=/\s/,rn=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Nn=/\{\n\/\* \[wrapped with (.+)\] \*/,$t=/,? & /,fn=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ln=/[()=,{}\[\]\/\s]/,_n=/\\(\\)?/g,xn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,In=/\w*$/,Yn=/^[-+]0x[0-9a-f]+$/i,mi=/^0b[01]+$/i,wi=/^\[object .+?Constructor\]$/,Bi=/^0o[0-7]+$/i,Xi=/^(?:0|[1-9]\d*)$/,ka=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Ja=/($^)/,_a=/['\n\r\u2028\u2029\\]/g,nr="\\ud800-\\udfff",Ta="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Cn="\\u2700-\\u27bf",Pn="a-z\\xdf-\\xf6\\xf8-\\xff",An="A-Z\\xc0-\\xd6\\xd8-\\xde",Wn="\\ufe0e\\ufe0f",vi="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ea="["+nr+"]",_i="["+vi+"]",Ii="["+Ta+"]",ga="\\d+",Ha="["+Cn+"]",Oa="["+Pn+"]",Aa="[^"+nr+vi+ga+Cn+Pn+An+"]",Qa="\\ud83c[\\udffb-\\udfff]",Ka="[^"+nr+"]",Zt="(?:\\ud83c[\\udde6-\\uddff]){2}",Ve="[\\ud800-\\udbff][\\udc00-\\udfff]",se="["+An+"]",ht="(?:"+Oa+"|"+Aa+")",Vt="(?:"+se+"|"+Aa+")",dn="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Zn="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Xn="(?:"+Ii+"|"+Qa+")?",ni="["+Wn+"]?",Yi=ni+Xn+"(?:\\u200d(?:"+[Ka,Zt,Ve].join("|")+")"+ni+Xn+")*",aa="(?:"+[Ha,Zt,Ve].join("|")+")"+Yi,xi="(?:"+[Ka+Ii+"?",Ii,Zt,Ve,ea].join("|")+")",Ui=RegExp("['\u2019]","g"),ca=RegExp(Ii,"g"),oa=RegExp(Qa+"(?="+Qa+")|"+xi+Yi,"g"),pr=RegExp([se+"?"+Oa+"+"+dn+"(?="+[_i,se,"$"].join("|")+")",Vt+"+"+Zn+"(?="+[_i,se+ht,"$"].join("|")+")",se+"?"+ht+"+"+dn,se+"+"+Zn,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ga,aa].join("|"),"g"),sr=RegExp("[\\u200d"+nr+Ta+Wn+"]"),Ca=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ir=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],yr=-1,Qi={};Qi[ne]=Qi[me]=Qi[Oe]=Qi[He]=Qi[At]=Qi[Ft]=Qi[sn]=Qi[Xt]=Qi[gn]=!0,Qi[mt]=Qi[wt]=Qi[Ae]=Qi[Pe]=Qi[X]=Qi[ze]=Qi[ct]=Qi[Ee]=Qi[nt]=Qi[at]=Qi[xe]=Qi[et]=Qi[Ht]=Qi[nn]=Qi[It]=!1;var en={};en[mt]=en[wt]=en[Ae]=en[X]=en[Pe]=en[ze]=en[ne]=en[me]=en[Oe]=en[He]=en[At]=en[nt]=en[at]=en[xe]=en[et]=en[Ht]=en[nn]=en[an]=en[Ft]=en[sn]=en[Xt]=en[gn]=!0,en[ct]=en[Ee]=en[It]=!1;var Ji={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Vi=parseFloat,ya=parseInt,Na="object"==typeof global&&global&&global.Object===Object&&global,Ua="object"==typeof self&&self&&self.Object===Object&&self,zi=Na||Ua||Function("return this")(),Ra=E&&!E.nodeType&&E,sa=Ra&&Ce&&!Ce.nodeType&&Ce,da=sa&&sa.exports===Ra,Ea=da&&Na.process,ba=function(){try{return sa&&sa.require&&sa.require("util").types||Ea&&Ea.binding&&Ea.binding("util")}catch(Qn){}}(),Ar=ba&&ba.isArrayBuffer,gr=ba&&ba.isDate,Cr=ba&&ba.isMap,no=ba&&ba.isRegExp,Lt=ba&&ba.isSet,dt=ba&&ba.isTypedArray;function ge(kn,Qn,Vn){switch(Vn.length){case 0:return kn.call(Qn);case 1:return kn.call(Qn,Vn[0]);case 2:return kn.call(Qn,Vn[0],Vn[1]);case 3:return kn.call(Qn,Vn[0],Vn[1],Vn[2])}return kn.apply(Qn,Vn)}function ke(kn,Qn,Vn,Di){for(var Gi=-1,tr=null==kn?0:kn.length;++Gi-1}function Mt(kn,Qn,Vn){for(var Di=-1,Gi=null==kn?0:kn.length;++Di-1;);return Vn}function po(kn,Qn){for(var Vn=kn.length;Vn--&&yt(Qn,kn[Vn],0)>-1;);return Vn}function ia(kn,Qn){for(var Vn=kn.length,Di=0;Vn--;)kn[Vn]===Qn&&++Di;return Di}var Nl=oe({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),Os=oe({"&":"&","<":"<",">":">",'"':""","'":"'"});function qa(kn){return"\\"+Ji[kn]}function jo(kn){return sr.test(kn)}function ii(kn){var Qn=-1,Vn=Array(kn.size);return kn.forEach(function(Di,Gi){Vn[++Qn]=[Gi,Di]}),Vn}function Li(kn,Qn){return function(Vn){return kn(Qn(Vn))}}function Ur(kn,Qn){for(var Vn=-1,Di=kn.length,Gi=0,tr=[];++Vn",""":'"',"'":"'"}),Jo=function kn(Qn){var x,Vn=(Qn=null==Qn?zi:Jo.defaults(zi.Object(),Qn,Jo.pick(zi,ir))).Array,Di=Qn.Date,Gi=Qn.Error,tr=Qn.Function,ar=Qn.Math,ja=Qn.Object,Es=Qn.RegExp,hu=Qn.String,so=Qn.TypeError,Zs=Vn.prototype,Ir=ja.prototype,il=Qn["__core-js_shared__"],vs=tr.prototype.toString,$a=Ir.hasOwnProperty,ks=0,ys=(x=/[^.]+$/.exec(il&&il.keys&&il.keys.IE_PROTO||""))?"Symbol(src)_1."+x:"",Ul=Ir.toString,ao=vs.call(ja),as=zi._,Tr=Es("^"+vs.call($a).replace(tt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),bs=da?Qn.Buffer:t,Qo=Qn.Symbol,Cs=Qn.Uint8Array,vl=bs?bs.allocUnsafe:t,ko=Li(ja.getPrototypeOf,ja),Is=ja.create,Ms=Ir.propertyIsEnumerable,Ls=Zs.splice,rs=Qo?Qo.isConcatSpreadable:t,Fs=Qo?Qo.iterator:t,Lr=Qo?Qo.toStringTag:t,al=function(){try{var x=nu(ja,"defineProperty");return x({},"",{}),x}catch(Z){}}(),Gr=Qn.clearTimeout!==zi.clearTimeout&&Qn.clearTimeout,xs=Di&&Di.now!==zi.Date.now&&Di.now,Ss=Qn.setTimeout!==zi.setTimeout&&Qn.setTimeout,Br=ar.ceil,Io=ar.floor,fo=ja.getOwnPropertySymbols,Ns=bs?bs.isBuffer:t,os=Qn.isFinite,_u=Zs.join,Wc=Li(ja.keys,ja),De=ar.max,Be=ar.min,Se=Di.now,Ie=Qn.parseInt,je=ar.random,Et=Zs.reverse,Qt=nu(Qn,"DataView"),bn=nu(Qn,"Map"),On=nu(Qn,"Promise"),Tn=nu(Qn,"Set"),di=nu(Qn,"WeakMap"),Ei=nu(ja,"create"),xa=di&&new di,Xa={},fr=Qs(Qt),Pr=Qs(bn),Yr=Qs(On),Kr=Qs(Tn),mo=Qs(di),To=Qo?Qo.prototype:t,Nr=To?To.valueOf:t,vr=To?To.toString:t;function Wt(x){if(Fr(x)&&!La(x)&&!(x instanceof za)){if(x instanceof qr)return x;if($a.call(x,"__wrapped__"))return pp(x)}return new qr(x)}var Lo=function(){function x(){}return function(Z){if(!Zr(Z))return{};if(Is)return Is(Z);x.prototype=Z;var pe=new x;return x.prototype=t,pe}}();function yl(){}function qr(x,Z){this.__wrapped__=x,this.__actions__=[],this.__chain__=!!Z,this.__index__=0,this.__values__=t}function za(x){this.__wrapped__=x,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=ve,this.__views__=[]}function Fo(x){var Z=-1,pe=null==x?0:x.length;for(this.clear();++Z=Z?x:Z)),x}function ho(x,Z,pe,it,Ut,tn){var Mn,En=1&Z,Rn=2&Z,si=4&Z;if(pe&&(Mn=Ut?pe(x,it,Ut,tn):pe(x)),Mn!==t)return Mn;if(!Zr(x))return x;var ui=La(x);if(ui){if(Mn=function Sh(x){var Z=x.length,pe=new x.constructor(Z);return Z&&"string"==typeof x[0]&&$a.call(x,"index")&&(pe.index=x.index,pe.input=x.input),pe}(x),!En)return $o(x,Mn)}else{var gi=lo(x),Zi=gi==Ee||gi==st;if(ou(x))return Cf(x,En);if(gi==xe||gi==mt||Zi&&!Ut){if(Mn=Rn||Zi?{}:kf(x),!En)return Rn?function od(x,Z){return sl(x,Zf(x),Z)}(x,function Vd(x,Z){return x&&sl(Z,Ho(Z),x)}(Mn,x)):function rd(x,Z){return sl(x,zu(x),Z)}(x,hc(Mn,x))}else{if(!en[gi])return Ut?x:{};Mn=function Pc(x,Z,pe){var it=x.constructor;switch(Z){case Ae:return np(x);case Pe:case ze:return new it(+x);case X:return function gh(x,Z){var pe=Z?np(x.buffer):x.buffer;return new x.constructor(pe,x.byteOffset,x.byteLength)}(x,pe);case ne:case me:case Oe:case He:case At:case Ft:case sn:case Xt:case gn:return Hs(x,pe);case nt:return new it;case at:case nn:return new it(x);case et:return function bc(x){var Z=new x.constructor(x.source,In.exec(x));return Z.lastIndex=x.lastIndex,Z}(x);case Ht:return new it;case an:return function Mf(x){return Nr?ja(Nr.call(x)):{}}(x)}}(x,gi,En)}}tn||(tn=new Wo);var ta=tn.get(x);if(ta)return ta;tn.set(x,Mn),Sm(x)?x.forEach(function(pa){Mn.add(ho(pa,Z,pe,pa,x,tn))}):Md(x)&&x.forEach(function(pa,er){Mn.set(er,ho(pa,Z,pe,er,x,tn))});var Fa=ui?t:(si?Rn?ul:ro:Rn?Ho:Xr)(x);return gt(Fa||x,function(pa,er){Fa&&(pa=x[er=pa]),Po(Mn,er,ho(pa,Z,pe,er,x,tn))}),Mn}function Lu(x,Z,pe){var it=pe.length;if(null==x)return!it;for(x=ja(x);it--;){var Ut=pe[it],Mn=x[Ut];if(Mn===t&&!(Ut in x)||!(0,Z[Ut])(Mn))return!1}return!0}function _o(x,Z,pe){if("function"!=typeof x)throw new so(o);return Cu(function(){x.apply(t,pe)},Z)}function Fu(x,Z,pe,it){var Ut=-1,tn=Ge,Mn=!0,En=x.length,Rn=[],si=Z.length;if(!En)return Rn;pe&&(Z=Nt(Z,Oi(pe))),it?(tn=Mt,Mn=!1):Z.length>=200&&(tn=Ni,Mn=!1,Z=new Hl(Z));e:for(;++Ut-1},ss.prototype.set=function fc(x,Z){var pe=this.__data__,it=Cl(pe,x);return it<0?(++this.size,pe.push([x,Z])):pe[it][1]=Z,this},Ao.prototype.clear=function Iu(){this.size=0,this.__data__={hash:new Fo,map:new(bn||ss),string:new Fo}},Ao.prototype.delete=function ol(x){var Z=cl(this,x).delete(x);return this.size-=Z?1:0,Z},Ao.prototype.get=function Dr(x){return cl(this,x).get(x)},Ao.prototype.has=function Bd(x){return cl(this,x).has(x)},Ao.prototype.set=function cf(x,Z){var pe=cl(this,x),it=pe.size;return pe.set(x,Z),this.size+=pe.size==it?0:1,this},Hl.prototype.add=Hl.prototype.push=function Ci(x){return this.__data__.set(x,s),this},Hl.prototype.has=function df(x){return this.__data__.has(x)},Wo.prototype.clear=function Yd(){this.__data__=new ss,this.size=0},Wo.prototype.delete=function Ga(x){var Z=this.__data__,pe=Z.delete(x);return this.size=Z.size,pe},Wo.prototype.get=function mc(x){return this.__data__.get(x)},Wo.prototype.has=function Hr(x){return this.__data__.has(x)},Wo.prototype.set=function gu(x,Z){var pe=this.__data__;if(pe instanceof ss){var it=pe.__data__;if(!bn||it.length<199)return it.push([x,Z]),this.size=++pe.size,this;pe=this.__data__=new Ao(it)}return pe.set(x,Z),this.size=pe.size,this};var Rs=Sf(As),Xc=Sf(Ro,!0);function jd(x,Z){var pe=!0;return Rs(x,function(it,Ut,tn){return pe=!!Z(it,Ut,tn)}),pe}function Nu(x,Z,pe){for(var it=-1,Ut=x.length;++it0&&pe(En)?Z>1?$r(En,Z-1,pe,it,Ut):yn(Ut,En):it||(Ut[Ut.length]=En)}return Ut}var Jl=Tf(),Ql=Tf(!0);function As(x,Z){return x&&Jl(x,Z,Xr)}function Ro(x,Z){return x&&Ql(x,Z,Xr)}function Wl(x,Z){return Qe(Z,function(pe){return su(x[pe])})}function Ps(x,Z){for(var pe=0,it=(Z=xl(Z,x)).length;null!=x&&peZ}function td(x,Z){return null!=x&&$a.call(x,Z)}function nd(x,Z){return null!=x&&Z in ja(x)}function Ko(x,Z,pe){for(var it=pe?Mt:Ge,Ut=x[0].length,tn=x.length,Mn=tn,En=Vn(tn),Rn=1/0,si=[];Mn--;){var ui=x[Mn];Mn&&Z&&(ui=Nt(ui,Oi(Z))),Rn=Be(ui.length,Rn),En[Mn]=!pe&&(Z||Ut>=120&&ui.length>=120)?new Hl(Mn&&ui):t}ui=x[0];var gi=-1,Zi=En[0];e:for(;++gi=En?Rn:Rn*("desc"==pe[it]?-1:1)}return x.index-Z.index}(tn,Mn,pe)})}function ff(x,Z,pe){for(var it=-1,Ut=Z.length,tn={};++it-1;)En!==x&&Ls.call(En,Rn,1),Ls.call(x,Rn,1);return x}function mf(x,Z){for(var pe=x?Z.length:0,it=pe-1;pe--;){var Ut=Z[pe];if(pe==it||Ut!==tn){var tn=Ut;Er(Ut)?Ls.call(x,Ut,1):qs(x,Ut)}}return x}function zd(x,Z){return x+Io(je()*(Z-x+1))}function vc(x,Z){var pe="";if(!x||Z<1||Z>ce)return pe;do{Z%2&&(pe+=x),(Z=Io(Z/2))&&(x+=x)}while(Z);return pe}function Da(x,Z){return au(up(x,Z,ts),x+"")}function mh(x){return qd(uu(x))}function hh(x,Z){var pe=uu(x);return ru(pe,Ml(Z,0,pe.length))}function ad(x,Z,pe,it){if(!Zr(x))return x;for(var Ut=-1,tn=(Z=xl(Z,x)).length,Mn=tn-1,En=x;null!=En&&++UtUt?0:Ut+Z),(pe=pe>Ut?Ut:pe)<0&&(pe+=Ut),Ut=Z>pe?0:pe-Z>>>0,Z>>>=0;for(var tn=Vn(Ut);++it>>1,Mn=x[tn];null!==Mn&&!wo(Mn)&&(pe?Mn<=Z:Mn=200){var si=Z?null:bh(x);if(si)return br(si);Mn=!1,Ut=Ni,Rn=new Hl}else Rn=Z?[]:En;e:for(;++it=it?x:ls(x,Z,pe)}var bf=Gr||function(x){return zi.clearTimeout(x)};function Cf(x,Z){if(Z)return x.slice();var pe=x.length,it=vl?vl(pe):new x.constructor(pe);return x.copy(it),it}function np(x){var Z=new x.constructor(x.byteLength);return new Cs(Z).set(new Cs(x)),Z}function Hs(x,Z){var pe=Z?np(x.buffer):x.buffer;return new x.constructor(pe,x.byteOffset,x.length)}function qu(x,Z){if(x!==Z){var pe=x!==t,it=null===x,Ut=x==x,tn=wo(x),Mn=Z!==t,En=null===Z,Rn=Z==Z,si=wo(Z);if(!En&&!si&&!tn&&x>Z||tn&&Mn&&Rn&&!En&&!si||it&&Mn&&Rn||!pe&&Rn||!Ut)return 1;if(!it&&!tn&&!si&&x1?pe[Ut-1]:t,Mn=Ut>2?pe[2]:t;for(tn=x.length>3&&"function"==typeof tn?(Ut--,tn):t,Mn&&vo(pe[0],pe[1],Mn)&&(tn=Ut<3?t:tn,Ut=1),Z=ja(Z);++it-1?Ut[tn?Z[Mn]:Mn]:t}}function Mc(x){return ll(function(Z){var pe=Z.length,it=pe,Ut=qr.prototype.thru;for(x&&Z.reverse();it--;){var tn=Z[it];if("function"!=typeof tn)throw new so(o);if(Ut&&!Mn&&"wrapper"==Wu(tn))var Mn=new qr([],!0)}for(it=Mn?it:pe;++it1&&lr.reverse(),ui&&RnEn))return!1;var si=tn.get(x),ui=tn.get(Z);if(si&&ui)return si==Z&&ui==x;var gi=-1,Zi=!0,ta=2&pe?new Hl:t;for(tn.set(x,Z),tn.set(Z,x);++gi-1&&x%1==0&&x1?"& ":"")+Z[it],Z=Z.join(pe>2?", ":" "),x.replace(rn,"{\n/* [wrapped with "+Z+"] */\n")}(it,function Mu(x,Z){return gt(Xe,function(pe){var it="_."+pe[0];Z&pe[1]&&!Ge(x,it)&&x.push(it)}),x.sort()}(function xh(x){var Z=x.match(Nn);return Z?Z[1].split($t):[]}(it),pe)))}function cp(x){var Z=0,pe=0;return function(){var it=Se(),Ut=16-(it-pe);if(pe=it,Ut>0){if(++Z>=800)return arguments[0]}else Z=0;return x.apply(t,arguments)}}function ru(x,Z){var pe=-1,it=x.length,Ut=it-1;for(Z=Z===t?it:Z;++pe1?x[Z-1]:t;return pe="function"==typeof pe?(x.pop(),pe):t,em(x,pe)});function xp(x){var Z=Wt(x);return Z.__chain__=!0,Z}function Tu(x,Z){return Z(x)}var zs=ll(function(x){var Z=x.length,pe=Z?x[0]:0,it=this.__wrapped__,Ut=function(Mn){return $c(Mn,x)};return!(Z>1||this.__actions__.length)&&it instanceof za&&Er(pe)?((it=it.slice(pe,+pe+(Z?1:0))).__actions__.push({func:Tu,args:[Ut],thisArg:t}),new qr(it,this.__chain__).thru(function(tn){return Z&&!tn.length&&tn.push(t),tn})):this.thru(Ut)}),og=ju(function(x,Z,pe){$a.call(x,pe)?++x[pe]:Ts(x,pe,1)}),vd=ip(Uf),yd=ip(hp);function Wh(x,Z){return(La(x)?gt:Rs)(x,ua(Z,3))}function sm(x,Z){return(La(x)?de:Xc)(x,ua(Z,3))}var zh=ju(function(x,Z,pe){$a.call(x,pe)?x[pe].push(Z):Ts(x,pe,[Z])}),Kh=Da(function(x,Z,pe){var it=-1,Ut="function"==typeof Z,tn=Xo(x)?Vn(x.length):[];return Rs(x,function(Mn){tn[++it]=Ut?ge(Z,Mn,pe):wr(Mn,Z,pe)}),tn}),lm=ju(function(x,Z,pe){Ts(x,pe,Z)});function $u(x,Z){return(La(x)?Nt:Ki)(x,ua(Z,3))}var lg=ju(function(x,Z,pe){x[pe?0:1].push(Z)},function(){return[[],[]]}),fg=Da(function(x,Z){if(null==x)return[];var pe=Z.length;return pe>1&&vo(x,Z[0],Z[1])?Z=[]:pe>2&&vo(Z[0],Z[1],Z[2])&&(Z=[Z[0]]),fh(x,$r(Z,1),[])}),Dl=xs||function(){return zi.Date.now()};function t_(x,Z,pe){return Z=pe?t:Z,Tl(x,128,t,t,t,t,Z=x&&null==Z?x.length:Z)}function n_(x,Z){var pe;if("function"!=typeof Z)throw new so(o);return x=Ya(x),function(){return--x>0&&(pe=Z.apply(this,arguments)),x<=1&&(Z=t),pe}}var dm=Da(function(x,Z,pe){var it=1;if(pe.length){var Ut=Ur(pe,tu(dm));it|=j}return Tl(x,it,Z,pe,Ut)}),wl=Da(function(x,Z,pe){var it=3;if(pe.length){var Ut=Ur(pe,tu(wl));it|=j}return Tl(Z,it,x,pe,Ut)});function Ep(x,Z,pe){var it,Ut,tn,Mn,En,Rn,si=0,ui=!1,gi=!1,Zi=!0;if("function"!=typeof x)throw new so(o);function ta(Qr){var _l=it,kl=Ut;return it=Ut=t,si=Qr,Mn=x.apply(kl,_l)}function ma(Qr){return si=Qr,En=Cu(er,Z),ui?ta(Qr):Mn}function pa(Qr){var _l=Qr-Rn;return Rn===t||_l>=Z||_l<0||gi&&Qr-si>=tn}function er(){var Qr=Dl();if(pa(Qr))return lr(Qr);En=Cu(er,function Fa(Qr){var Id=Z-(Qr-Rn);return gi?Be(Id,tn-(Qr-si)):Id}(Qr))}function lr(Qr){return En=t,Zi&&it?ta(Qr):(it=Ut=t,Mn)}function fs(){var Qr=Dl(),_l=pa(Qr);if(it=arguments,Ut=this,Rn=Qr,_l){if(En===t)return ma(Rn);if(gi)return bf(En),En=Cu(er,Z),ta(Rn)}return En===t&&(En=Cu(er,Z)),Mn}return Z=qo(Z)||0,Zr(pe)&&(ui=!!pe.leading,tn=(gi="maxWait"in pe)?De(qo(pe.maxWait)||0,Z):tn,Zi="trailing"in pe?!!pe.trailing:Zi),fs.cancel=function yo(){En!==t&&bf(En),si=0,it=Rn=Ut=En=t},fs.flush=function Vo(){return En===t?Mn:lr(Dl())},fs}var Zp=Da(function(x,Z){return _o(x,1,Z)}),fm=Da(function(x,Z,pe){return _o(x,qo(Z)||0,pe)});function Cd(x,Z){if("function"!=typeof x||null!=Z&&"function"!=typeof Z)throw new so(o);var pe=function it(){var Ut=arguments,tn=Z?Z.apply(this,Ut):Ut[0],Mn=it.cache;if(Mn.has(tn))return Mn.get(tn);var En=x.apply(this,Ut);return it.cache=Mn.set(tn,En)||Mn,En};return pe.cache=new(Cd.Cache||Ao),pe}function Gs(x){if("function"!=typeof x)throw new so(o);return function(){var Z=arguments;switch(Z.length){case 0:return!x.call(this);case 1:return!x.call(this,Z[0]);case 2:return!x.call(this,Z[0],Z[1]);case 3:return!x.call(this,Z[0],Z[1],Z[2])}return!x.apply(this,Z)}}Cd.Cache=Ao;var i_=_h(function(x,Z){var pe=(Z=1==Z.length&&La(Z[0])?Nt(Z[0],Oi(ua())):Nt($r(Z,1),Oi(ua()))).length;return Da(function(it){for(var Ut=-1,tn=Be(it.length,pe);++Ut=Z}),pl=Uu(function(){return arguments}())?Uu:function(x){return Fr(x)&&$a.call(x,"callee")&&!Ms.call(x,"callee")},La=Vn.isArray,bm=Ar?Oi(Ar):function Qd(x){return Fr(x)&&go(x)==Ae};function Xo(x){return null!=x&&Up(x.length)&&!su(x)}function Vr(x){return Fr(x)&&Xo(x)}var ou=Ns||hl,Ks=gr?Oi(gr):function gc(x){return Fr(x)&&go(x)==ze};function Fp(x){if(!Fr(x))return!1;var Z=go(x);return Z==ct||"[object DOMException]"==Z||"string"==typeof x.message&&"string"==typeof x.name&&!ic(x)}function su(x){if(!Zr(x))return!1;var Z=go(x);return Z==Ee||Z==st||"[object AsyncFunction]"==Z||"[object Proxy]"==Z}function Rp(x){return"number"==typeof x&&x==Ya(x)}function Up(x){return"number"==typeof x&&x>-1&&x%1==0&&x<=ce}function Zr(x){var Z=typeof x;return null!=x&&("object"==Z||"function"==Z)}function Fr(x){return null!=x&&"object"==typeof x}var Md=Cr?Oi(Cr):function Gl(x){return Fr(x)&&lo(x)==nt};function xm(x){return"number"==typeof x||Fr(x)&&go(x)==at}function ic(x){if(!Fr(x)||go(x)!=xe)return!1;var Z=ko(x);if(null===Z)return!0;var pe=$a.call(Z,"constructor")&&Z.constructor;return"function"==typeof pe&&pe instanceof pe&&vs.call(pe)==ao}var xd=no?Oi(no):function H(x){return Fr(x)&&go(x)==et},Sm=Lt?Oi(Lt):function ye(x){return Fr(x)&&lo(x)==Ht};function ps(x){return"string"==typeof x||!La(x)&&Fr(x)&&go(x)==nn}function wo(x){return"symbol"==typeof x||Fr(x)&&go(x)==an}var ac=dt?Oi(dt):function rt(x){return Fr(x)&&Up(x.length)&&!!Qi[go(x)]},Tm=Qu(Gn),m_=Qu(function(x,Z){return x<=Z});function Am(x){if(!x)return[];if(Xo(x))return ps(x)?xr(x):$o(x);if(Fs&&x[Fs])return function gl(kn){for(var Qn,Vn=[];!(Qn=kn.next()).done;)Vn.push(Qn.value);return Vn}(x[Fs]());var Z=lo(x);return(Z==nt?ii:Z==Ht?br:uu)(x)}function fl(x){return x?(x=qo(x))===G||x===-G?17976931348623157e292*(x<0?-1:1):x==x?x:0:0===x?x:0}function Ya(x){var Z=fl(x),pe=Z%1;return Z==Z?pe?Z-pe:Z:0}function kc(x){return x?Ml(Ya(x),0,ve):0}function qo(x){if("number"==typeof x)return x;if(wo(x))return NaN;if(Zr(x)){var Z="function"==typeof x.valueOf?x.valueOf():x;x=Zr(Z)?Z+"":Z}if("string"!=typeof x)return 0===x?x:+x;x=qi(x);var pe=mi.test(x);return pe||Bi.test(x)?ya(x.slice(2),pe?2:8):Yn.test(x)?NaN:+x}function Td(x){return sl(x,Ho(x))}function mr(x){return null==x?"":Do(x)}var Yp=Sl(function(x,Z){if(bu(Z)||Xo(Z))sl(Z,Xr(Z),x);else for(var pe in Z)$a.call(Z,pe)&&Po(x,pe,Z[pe])}),qp=Sl(function(x,Z){sl(Z,Ho(Z),x)}),Ad=Sl(function(x,Z,pe,it){sl(Z,Ho(Z),x,it)}),__=Sl(function(x,Z,pe,it){sl(Z,Xr(Z),x,it)}),Hp=ll($c),g_=Da(function(x,Z){x=ja(x);var pe=-1,it=Z.length,Ut=it>2?Z[2]:t;for(Ut&&vo(Z[0],Z[1],Ut)&&(it=1);++pe1),tn}),sl(x,ul(x),pe),it&&(pe=ho(pe,7,eu));for(var Ut=Z.length;Ut--;)qs(pe,Z[Ut]);return pe}),Nm=ll(function(x,Z){return null==x?{}:function pf(x,Z){return ff(x,Z,function(pe,it){return Ic(x,it)})}(x,Z)});function lu(x,Z){if(null==x)return{};var pe=Nt(ul(x),function(it){return[it]});return Z=ua(Z),ff(x,pe,function(it,Ut){return Z(it,Ut[0])})}var $s=wf(Xr),Rc=wf(Ho);function uu(x){return null==x?[]:Wa(x,Xr(x))}var _g=Ju(function(x,Z,pe){return Z=Z.toLowerCase(),x+(pe?Bm(Z):Z)});function Bm(x){return Gp(mr(x).toLowerCase())}function Ym(x){return(x=mr(x))&&x.replace(ka,Nl).replace(ca,"")}var A_=Ju(function(x,Z,pe){return x+(pe?"-":"")+Z.toLowerCase()}),P_=Ju(function(x,Z,pe){return x+(pe?" ":"")+Z.toLowerCase()}),D_=Pf("toLowerCase"),Cg=Ju(function(x,Z,pe){return x+(pe?"_":"")+Z.toLowerCase()}),Mg=Ju(function(x,Z,pe){return x+(pe?" ":"")+Gp(Z)}),zp=Ju(function(x,Z,pe){return x+(pe?" ":"")+Z.toUpperCase()}),Gp=Pf("toUpperCase");function Gm(x,Z,pe){return x=mr(x),(Z=pe?t:Z)===t?function hs(kn){return Ca.test(kn)}(x)?function fa(kn){return kn.match(pr)||[]}(x):function Fi(kn){return kn.match(fn)||[]}(x):x.match(Z)||[]}var Km=Da(function(x,Z){try{return ge(x,t,Z)}catch(pe){return Fp(pe)?pe:new Gi(pe)}}),E_=ll(function(x,Z){return gt(Z,function(pe){pe=Js(pe),Ts(x,pe,dm(x[pe],x))}),x});function rc(x){return function(){return x}}var I_=Mc(),Uc=Mc(!0);function ts(x){return x}function Kp(x){return Dt("function"==typeof x?x:ho(x,1))}var Bc=Da(function(x,Z){return function(pe){return wr(pe,x,Z)}}),Oo=Da(function(x,Z){return function(pe){return wr(x,pe,Z)}});function Ds(x,Z,pe){var it=Xr(Z),Ut=Wl(Z,it);null==pe&&(!Zr(Z)||!Ut.length&&it.length)&&(pe=Z,Z=x,x=this,Ut=Wl(Z,Xr(Z)));var tn=!(Zr(pe)&&"chain"in pe&&!pe.chain),Mn=su(x);return gt(Ut,function(En){var Rn=Z[En];x[En]=Rn,Mn&&(x.prototype[En]=function(){var si=this.__chain__;if(tn||si){var ui=x(this.__wrapped__),gi=ui.__actions__=$o(this.__actions__);return gi.push({func:Rn,args:arguments,thisArg:x}),ui.__chain__=si,ui}return Rn.apply(x,yn([this.value()],arguments))})}),x}function ns(){}var Du=Rr(Nt),sc=Rr(we),lc=Rr(li);function El(x){return Dc(x)?fe(Js(x)):function ig(x){return function(Z){return Ps(Z,x)}}(x)}var el=ud(),cu=ud(!0);function du(){return[]}function hl(){return!1}var eh=ld(function(x,Z){return x+Z},0),th=ap("ceil"),nh=ld(function(x,Z){return x/Z},1),L_=ap("floor"),ah=ld(function(x,Z){return x*Z},1),rh=ap("round"),oh=ld(function(x,Z){return x-Z},0);return Wt.after=function e_(x,Z){if("function"!=typeof Z)throw new so(o);return x=Ya(x),function(){if(--x<1)return Z.apply(this,arguments)}},Wt.ary=t_,Wt.assign=Yp,Wt.assignIn=qp,Wt.assignInWith=Ad,Wt.assignWith=__,Wt.at=Hp,Wt.before=n_,Wt.bind=dm,Wt.bindAll=E_,Wt.bindKey=wl,Wt.castArray=function ec(){if(!arguments.length)return[];var x=arguments[0];return La(x)?x:[x]},Wt.chain=xp,Wt.chunk=function ag(x,Z,pe){Z=(pe?vo(x,Z,pe):Z===t)?1:De(Ya(Z),0);var it=null==x?0:x.length;if(!it||Z<1)return[];for(var Ut=0,tn=0,Mn=Vn(Br(it/Z));UtUt?0:Ut+pe),(it=it===t||it>Ut?Ut:Ya(it))<0&&(it+=Ut),it=pe>it?0:kc(it);pe>>0)?(x=mr(x))&&("string"==typeof Z||null!=Z&&!xd(Z))&&!(Z=Do(Z))&&jo(x)?Xl(xr(x),0,pe):x.split(Z,pe):[]},Wt.spread=function r_(x,Z){if("function"!=typeof x)throw new so(o);return Z=null==Z?0:De(Ya(Z),0),Da(function(pe){var it=pe[Z],Ut=Xl(pe,0,Z);return it&&yn(Ut,it),ge(x,this,Ut)})},Wt.tail=function Cp(x){var Z=null==x?0:x.length;return Z?ls(x,1,Z):[]},Wt.take=function Gf(x,Z,pe){return x&&x.length?ls(x,0,(Z=pe||Z===t?1:Ya(Z))<0?0:Z):[]},Wt.takeRight=function rg(x,Z,pe){var it=null==x?0:x.length;return it?ls(x,(Z=it-(Z=pe||Z===t?1:Ya(Z)))<0?0:Z,it):[]},Wt.takeRightWhile=function Kf(x,Z){return x&&x.length?yc(x,ua(Z,3),!1,!0):[]},Wt.takeWhile=function Uh(x,Z){return x&&x.length?yc(x,ua(Z,3)):[]},Wt.tap=function im(x,Z){return Z(x),x},Wt.throttle=function Ec(x,Z,pe){var it=!0,Ut=!0;if("function"!=typeof x)throw new so(o);return Zr(pe)&&(it="leading"in pe?!!pe.leading:it,Ut="trailing"in pe?!!pe.trailing:Ut),Ep(x,Z,{leading:it,maxWait:Z,trailing:Ut})},Wt.thru=Tu,Wt.toArray=Am,Wt.toPairs=$s,Wt.toPairsIn=Rc,Wt.toPath=function Xm(x){return La(x)?Nt(x,Js):wo(x)?[x]:$o(dp(mr(x)))},Wt.toPlainObject=Td,Wt.transform=function Rm(x,Z,pe){var it=La(x),Ut=it||ou(x)||ac(x);if(Z=ua(Z,4),null==pe){var tn=x&&x.constructor;pe=Ut?it?new tn:[]:Zr(x)&&su(tn)?Lo(ko(x)):{}}return(Ut?gt:As)(x,function(Mn,En,Rn){return Z(pe,Mn,En,Rn)}),pe},Wt.unary=function Xu(x){return t_(x,1)},Wt.union=$f,Wt.unionBy=Bh,Wt.unionWith=Pl,Wt.uniq=function Ws(x){return x&&x.length?$l(x):[]},Wt.uniqBy=function Yh(x,Z){return x&&x.length?$l(x,ua(Z,2)):[]},Wt.uniqWith=function Xf(x,Z){return Z="function"==typeof Z?Z:t,x&&x.length?$l(x,t,Z):[]},Wt.unset=function M_(x,Z){return null==x||qs(x,Z)},Wt.unzip=Mp,Wt.unzipWith=em,Wt.update=function x_(x,Z,pe){return null==x?x:yu(x,Z,tp(pe))},Wt.updateWith=function es(x,Z,pe,it){return it="function"==typeof it?it:t,null==x?x:yu(x,Z,tp(pe),it)},Wt.values=uu,Wt.valuesIn=function S_(x){return null==x?[]:Wa(x,Ho(x))},Wt.without=qh,Wt.words=Gm,Wt.wrap=function Ip(x,Z){return Oc(tp(Z),x)},Wt.xor=Hh,Wt.xorBy=tm,Wt.xorWith=Vh,Wt.zip=jh,Wt.zipObject=function Jh(x,Z){return yf(x||[],Z||[],Po)},Wt.zipObjectDeep=function Za(x,Z){return yf(x||[],Z||[],ad)},Wt.zipWith=nm,Wt.entries=$s,Wt.entriesIn=Rc,Wt.extend=qp,Wt.extendWith=Ad,Ds(Wt,Wt),Wt.add=eh,Wt.attempt=Km,Wt.camelCase=_g,Wt.capitalize=Bm,Wt.ceil=th,Wt.clamp=function T_(x,Z,pe){return pe===t&&(pe=Z,Z=t),pe!==t&&(pe=(pe=qo(pe))==pe?pe:0),Z!==t&&(Z=(Z=qo(Z))==Z?Z:0),Ml(qo(x),Z,pe)},Wt.clone=function Zc(x){return ho(x,4)},Wt.cloneDeep=function o_(x){return ho(x,5)},Wt.cloneDeepWith=function gm(x,Z){return ho(x,5,Z="function"==typeof Z?Z:t)},Wt.cloneWith=function tc(x,Z){return ho(x,4,Z="function"==typeof Z?Z:t)},Wt.conformsTo=function vm(x,Z){return null==Z||Lu(x,Z,Xr(Z))},Wt.deburr=Ym,Wt.defaultTo=function oc(x,Z){return null==x||x!=x?Z:x},Wt.divide=nh,Wt.endsWith=function gg(x,Z,pe){x=mr(x),Z=Do(Z);var it=x.length,Ut=pe=pe===t?it:Ml(Ya(pe),0,it);return(pe-=Z.length)>=0&&x.slice(pe,Ut)==Z},Wt.eq=cs,Wt.escape=function qm(x){return(x=mr(x))&&un.test(x)?x.replace(oi,Os):x},Wt.escapeRegExp=function vg(x){return(x=mr(x))&&Ke.test(x)?x.replace(tt,"\\$&"):x},Wt.every=function om(x,Z,pe){var it=La(x)?we:jd;return pe&&vo(x,Z,pe)&&(Z=t),it(x,ua(Z,3))},Wt.find=vd,Wt.findIndex=Uf,Wt.findKey=function Dm(x,Z){return Ma(x,ua(Z,3),As)},Wt.findLast=yd,Wt.findLastIndex=hp,Wt.findLastKey=function wm(x,Z){return Ma(x,ua(Z,3),Ro)},Wt.floor=L_,Wt.forEach=Wh,Wt.forEachRight=sm,Wt.forIn=function Om(x,Z){return null==x?x:Jl(x,ua(Z,3),Ho)},Wt.forInRight=function Em(x,Z){return null==x?x:Ql(x,ua(Z,3),Ho)},Wt.forOwn=function Ol(x,Z){return x&&As(x,ua(Z,3))},Wt.forOwnRight=function Pd(x,Z){return x&&Ro(x,ua(Z,3))},Wt.get=Zm,Wt.gt=Lp,Wt.gte=ym,Wt.has=function Dd(x,Z){return null!=x&&cd(x,Z,td)},Wt.hasIn=Ic,Wt.head=Yf,Wt.identity=ts,Wt.includes=function Gh(x,Z,pe,it){x=Xo(x)?x:uu(x),pe=pe&&!it?Ya(pe):0;var Ut=x.length;return pe<0&&(pe=De(Ut+pe,0)),ps(x)?pe<=Ut&&x.indexOf(Z,pe)>-1:!!Ut&&yt(x,Z,pe)>-1},Wt.indexOf=function qf(x,Z,pe){var it=null==x?0:x.length;if(!it)return-1;var Ut=null==pe?0:Ya(pe);return Ut<0&&(Ut=De(it+Ut,0)),yt(x,Z,Ut)},Wt.inRange=function Um(x,Z,pe){return Z=fl(Z),pe===t?(pe=Z,Z=0):pe=fl(pe),function vu(x,Z,pe){return x>=Be(Z,pe)&&x=-ce&&x<=ce},Wt.isSet=Sm,Wt.isString=ps,Wt.isSymbol=wo,Wt.isTypedArray=ac,Wt.isUndefined=function f_(x){return x===t},Wt.isWeakMap=function mg(x){return Fr(x)&&lo(x)==It},Wt.isWeakSet=function Au(x){return Fr(x)&&"[object WeakSet]"==go(x)},Wt.join=function vp(x,Z){return null==x?"":_u.call(x,Z)},Wt.kebabCase=A_,Wt.last=Bo,Wt.lastIndexOf=function jf(x,Z,pe){var it=null==x?0:x.length;if(!it)return-1;var Ut=it;return pe!==t&&(Ut=(Ut=Ya(pe))<0?De(it+Ut,0):Be(Ut,it-1)),Z==Z?function ji(kn,Qn,Vn){for(var Di=Vn+1;Di--;)if(kn[Di]===Qn)return Di;return Di}(x,Z,Ut):ot(x,ie,Ut,!0)},Wt.lowerCase=P_,Wt.lowerFirst=D_,Wt.lt=Tm,Wt.lte=m_,Wt.max=function nf(x){return x&&x.length?Nu(x,ts,_c):t},Wt.maxBy=function af(x,Z){return x&&x.length?Nu(x,ua(Z,2),_c):t},Wt.mean=function kd(x){return Ye(x,ts)},Wt.meanBy=function rf(x,Z){return Ye(x,ua(Z,2))},Wt.min=function F_(x){return x&&x.length?Nu(x,ts,Gn):t},Wt.minBy=function ih(x,Z){return x&&x.length?Nu(x,ua(Z,2),Gn):t},Wt.stubArray=du,Wt.stubFalse=hl,Wt.stubObject=function ef(){return{}},Wt.stubString=function tf(){return""},Wt.stubTrue=function Ed(){return!0},Wt.multiply=ah,Wt.nth=function fd(x,Z){return x&&x.length?Bs(x,Ya(Z)):t},Wt.noConflict=function Od(){return zi._===this&&(zi._=as),this},Wt.noop=ns,Wt.now=Dl,Wt.pad=function yg(x,Z,pe){x=mr(x);var it=(Z=Ya(Z))?Va(x):0;if(!Z||it>=Z)return x;var Ut=(Z-it)/2;return Sc(Io(Ut),pe)+x+Sc(Br(Ut),pe)},Wt.padEnd=function bg(x,Z,pe){x=mr(x);var it=(Z=Ya(Z))?Va(x):0;return Z&&itZ){var it=x;x=Z,Z=it}if(pe||x%1||Z%1){var Ut=je();return Be(x+Ut*(Z-x+Vi("1e-"+((Ut+"").length-1))),Z)}return zd(x,Z)},Wt.reduce=function um(x,Z,pe){var it=La(x)?Ln:bt,Ut=arguments.length<3;return it(x,ua(Z,4),pe,Ut,Rs)},Wt.reduceRight=function cm(x,Z,pe){var it=La(x)?ei:bt,Ut=arguments.length<3;return it(x,ua(Z,4),pe,Ut,Xc)},Wt.repeat=function Hm(x,Z,pe){return Z=(pe?vo(x,Z,pe):Z===t)?1:Ya(Z),vc(mr(x),Z)},Wt.replace=function Vm(){var x=arguments,Z=mr(x[0]);return x.length<3?Z:Z.replace(x[1],x[2])},Wt.result=function Nc(x,Z,pe){var it=-1,Ut=(Z=xl(Z,x)).length;for(Ut||(Ut=1,x=t);++itce)return[];var pe=ve,it=Be(x,ve);Z=ua(Z),x-=ve;for(var Ut=zn(it,Z);++pe=tn)return x;var En=pe-Va(it);if(En<1)return it;var Rn=Mn?Xl(Mn,0,En).join(""):x.slice(0,En);if(Ut===t)return Rn+it;if(Mn&&(En+=Rn.length-En),xd(Ut)){if(x.slice(En).search(Ut)){var si,ui=Rn;for(Ut.global||(Ut=Es(Ut.source,mr(In.exec(Ut))+"g")),Ut.lastIndex=0;si=Ut.exec(ui);)var gi=si.index;Rn=Rn.slice(0,gi===t?En:gi)}}else if(x.indexOf(Do(Ut),En)!=En){var Zi=Rn.lastIndexOf(Ut);Zi>-1&&(Rn=Rn.slice(0,Zi))}return Rn+it},Wt.unescape=function O_(x){return(x=mr(x))&&ri.test(x)?x.replace(Jn,_s):x},Wt.uniqueId=function Zd(x){var Z=++ks;return mr(x)+Z},Wt.upperCase=zp,Wt.upperFirst=Gp,Wt.each=Wh,Wt.eachRight=sm,Wt.first=Yf,Ds(Wt,function(){var x={};return As(Wt,function(Z,pe){$a.call(Wt.prototype,pe)||(x[pe]=Z)}),x}(),{chain:!1}),Wt.VERSION="4.17.21",gt(["bind","bindKey","curry","curryRight","partial","partialRight"],function(x){Wt[x].placeholder=Wt}),gt(["drop","take"],function(x,Z){za.prototype[x]=function(pe){pe=pe===t?1:De(Ya(pe),0);var it=this.__filtered__&&!Z?new za(this):this.clone();return it.__filtered__?it.__takeCount__=Be(pe,it.__takeCount__):it.__views__.push({size:Be(pe,ve),type:x+(it.__dir__<0?"Right":"")}),it},za.prototype[x+"Right"]=function(pe){return this.reverse()[x](pe).reverse()}}),gt(["filter","map","takeWhile"],function(x,Z){var pe=Z+1,it=1==pe||3==pe;za.prototype[x]=function(Ut){var tn=this.clone();return tn.__iteratees__.push({iteratee:ua(Ut,3),type:pe}),tn.__filtered__=tn.__filtered__||it,tn}}),gt(["head","last"],function(x,Z){var pe="take"+(Z?"Right":"");za.prototype[x]=function(){return this[pe](1).value()[0]}}),gt(["initial","tail"],function(x,Z){var pe="drop"+(Z?"":"Right");za.prototype[x]=function(){return this.__filtered__?new za(this):this[pe](1)}}),za.prototype.compact=function(){return this.filter(ts)},za.prototype.find=function(x){return this.filter(x).head()},za.prototype.findLast=function(x){return this.reverse().find(x)},za.prototype.invokeMap=Da(function(x,Z){return"function"==typeof x?new za(this):this.map(function(pe){return wr(pe,x,Z)})}),za.prototype.reject=function(x){return this.filter(Gs(ua(x)))},za.prototype.slice=function(x,Z){x=Ya(x);var pe=this;return pe.__filtered__&&(x>0||Z<0)?new za(pe):(x<0?pe=pe.takeRight(-x):x&&(pe=pe.drop(x)),Z!==t&&(pe=(Z=Ya(Z))<0?pe.dropRight(-Z):pe.take(Z-x)),pe)},za.prototype.takeRightWhile=function(x){return this.reverse().takeWhile(x).reverse()},za.prototype.toArray=function(){return this.take(ve)},As(za.prototype,function(x,Z){var pe=/^(?:filter|find|map|reject)|While$/.test(Z),it=/^(?:head|last)$/.test(Z),Ut=Wt[it?"take"+("last"==Z?"Right":""):Z],tn=it||/^find/.test(Z);!Ut||(Wt.prototype[Z]=function(){var Mn=this.__wrapped__,En=it?[1]:arguments,Rn=Mn instanceof za,si=En[0],ui=Rn||La(Mn),gi=function(lr){var yo=Ut.apply(Wt,yn([lr],En));return it&&Zi?yo[0]:yo};ui&&pe&&"function"==typeof si&&1!=si.length&&(Rn=ui=!1);var Zi=this.__chain__,ta=!!this.__actions__.length,ma=tn&&!Zi,Fa=Rn&&!ta;if(!tn&&ui){Mn=Fa?Mn:new za(this);var pa=x.apply(Mn,En);return pa.__actions__.push({func:Tu,args:[gi],thisArg:t}),new qr(pa,Zi)}return ma&&Fa?x.apply(this,En):(pa=this.thru(gi),ma?it?pa.value()[0]:pa.value():pa)})}),gt(["pop","push","shift","sort","splice","unshift"],function(x){var Z=Zs[x],pe=/^(?:push|sort|unshift)$/.test(x)?"tap":"thru",it=/^(?:pop|shift)$/.test(x);Wt.prototype[x]=function(){var Ut=arguments;if(it&&!this.__chain__){var tn=this.value();return Z.apply(La(tn)?tn:[],Ut)}return this[pe](function(Mn){return Z.apply(La(Mn)?Mn:[],Ut)})}}),As(za.prototype,function(x,Z){var pe=Wt[Z];if(pe){var it=pe.name+"";$a.call(Xa,it)||(Xa[it]=[]),Xa[it].push({name:Z,func:pe})}}),Xa[xc(t,2).name]=[{name:"wrapper",func:t}],za.prototype.clone=function Ud(){var x=new za(this.__wrapped__);return x.__actions__=$o(this.__actions__),x.__dir__=this.__dir__,x.__filtered__=this.__filtered__,x.__iteratees__=$o(this.__iteratees__),x.__takeCount__=this.__takeCount__,x.__views__=$o(this.__views__),x},za.prototype.reverse=function Zu(){if(this.__filtered__){var x=new za(this);x.__dir__=-1,x.__filtered__=!0}else(x=this.clone()).__dir__*=-1;return x},za.prototype.value=function rl(){var x=this.__wrapped__.value(),Z=this.__dir__,pe=La(x),it=Z<0,Ut=pe?x.length:0,tn=function Mh(x,Z,pe){for(var it=-1,Ut=pe.length;++it=this.__values__.length;return{done:x,value:x?t:this.__values__[this.__index__++]}},Wt.prototype.plant=function Tp(x){for(var Z,pe=this;pe instanceof yl;){var it=pp(pe);it.__index__=0,it.__values__=t,Z?Ut.__wrapped__=it:Z=it;var Ut=it;pe=pe.__wrapped__}return Ut.__wrapped__=x,Z},Wt.prototype.reverse=function rm(){var x=this.__wrapped__;if(x instanceof za){var Z=x;return this.__actions__.length&&(Z=new za(this)),(Z=Z.reverse()).__actions__.push({func:Tu,args:[gd],thisArg:t}),new qr(Z,this.__chain__)}return this.thru(gd)},Wt.prototype.toJSON=Wt.prototype.valueOf=Wt.prototype.value=function Ap(){return vf(this.__wrapped__,this.__actions__)},Wt.prototype.first=Wt.prototype.head,Fs&&(Wt.prototype[Fs]=function Yo(){return this}),Wt}();zi._=Jo,(S=function(){return Jo}.call(E,n,E,Ce))!==t&&(Ce.exports=S)}.call(this)},58685:function(Ce,E,n){!function(S){"use strict";S.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(c){return/^nm$/i.test(c)},meridiem:function(c,u,o){return c<12?o?"vm":"VM":o?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[M\xf4re om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(c){return c+(1===c||8===c||c>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},4312:function(Ce,E,n){!function(S){"use strict";var t=function(s){return 0===s?0:1===s?1:2===s?2:s%100>=3&&s%100<=10?3:s%100>=11?4:5},e={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},c=function(s){return function(h,b,T,y){var Y=t(h),q=e[s][t(h)];return 2===Y&&(q=q[b?0:1]),q.replace(/%d/i,h)}},u=["\u062c\u0627\u0646\u0641\u064a","\u0641\u064a\u0641\u0631\u064a","\u0645\u0627\u0631\u0633","\u0623\u0641\u0631\u064a\u0644","\u0645\u0627\u064a","\u062c\u0648\u0627\u0646","\u062c\u0648\u064a\u0644\u064a\u0629","\u0623\u0648\u062a","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];S.defineLocale("ar-dz",{months:u,monthsShort:u,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(s){return"\u0645"===s},meridiem:function(s,h,b){return s<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:c("s"),ss:c("s"),m:c("m"),mm:c("m"),h:c("h"),hh:c("h"),d:c("d"),dd:c("d"),M:c("M"),MM:c("M"),y:c("y"),yy:c("y")},postformat:function(s){return s.replace(/,/g,"\u060c")},week:{dow:0,doy:4}})}(n(56908))},32614:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ar-kw",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062a\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062a\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:0,doy:12}})}(n(56908))},18630:function(Ce,E,n){!function(S){"use strict";var t={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},e=function(h){return 0===h?0:1===h?1:2===h?2:h%100>=3&&h%100<=10?3:h%100>=11?4:5},c={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},u=function(h){return function(b,T,y,Y){var q=e(b),B=c[h][e(b)];return 2===q&&(B=B[T?0:1]),B.replace(/%d/i,b)}},o=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];S.defineLocale("ar-ly",{months:o,monthsShort:o,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(h){return"\u0645"===h},meridiem:function(h,b,T){return h<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:u("s"),ss:u("s"),m:u("m"),mm:u("m"),h:u("h"),hh:u("h"),d:u("d"),dd:u("d"),M:u("M"),MM:u("M"),y:u("y"),yy:u("y")},preparse:function(h){return h.replace(/\u060c/g,",")},postformat:function(h){return h.replace(/\d/g,function(b){return t[b]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}})}(n(56908))},28674:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ar-ma",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:1,doy:4}})}(n(56908))},49032:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},e={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"};S.defineLocale("ar-sa",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(o){return"\u0645"===o},meridiem:function(o,_,s){return o<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},preparse:function(o){return o.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(_){return e[_]}).replace(/\u060c/g,",")},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]}).replace(/,/g,"\u060c")},week:{dow:0,doy:6}})}(n(56908))},24730:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ar-tn",{months:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:1,doy:4}})}(n(56908))},254:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},e={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},c=function(b){return 0===b?0:1===b?1:2===b?2:b%100>=3&&b%100<=10?3:b%100>=11?4:5},u={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},o=function(b){return function(T,y,Y,q){var B=c(T),k=u[b][c(T)];return 2===B&&(k=k[y?0:1]),k.replace(/%d/i,T)}},_=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"];S.defineLocale("ar",{months:_,monthsShort:_,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(b){return"\u0645"===b},meridiem:function(b,T,y){return b<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:o("s"),ss:o("s"),m:o("m"),mm:o("m"),h:o("h"),hh:o("h"),d:o("d"),dd:o("d"),M:o("M"),MM:o("M"),y:o("y"),yy:o("y")},preparse:function(b){return b.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(T){return e[T]}).replace(/\u060c/g,",")},postformat:function(b){return b.replace(/\d/g,function(T){return t[T]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}})}(n(56908))},53052:function(Ce,E,n){!function(S){"use strict";var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-\xfcnc\xfc",4:"-\xfcnc\xfc",100:"-\xfcnc\xfc",6:"-nc\u0131",9:"-uncu",10:"-uncu",30:"-uncu",60:"-\u0131nc\u0131",90:"-\u0131nc\u0131"};S.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ert\u0259si_\xc7\u0259r\u015f\u0259nb\u0259 ax\u015fam\u0131_\xc7\u0259r\u015f\u0259nb\u0259_C\xfcm\u0259 ax\u015fam\u0131_C\xfcm\u0259_\u015e\u0259nb\u0259".split("_"),weekdaysShort:"Baz_BzE_\xc7Ax_\xc7\u0259r_CAx_C\xfcm_\u015e\u0259n".split("_"),weekdaysMin:"Bz_BE_\xc7A_\xc7\u0259_CA_C\xfc_\u015e\u0259".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[g\u0259l\u0259n h\u0259ft\u0259] dddd [saat] LT",lastDay:"[d\xfcn\u0259n] LT",lastWeek:"[ke\xe7\u0259n h\u0259ft\u0259] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \u0259vv\u0259l",s:"bir ne\xe7\u0259 saniy\u0259",ss:"%d saniy\u0259",m:"bir d\u0259qiq\u0259",mm:"%d d\u0259qiq\u0259",h:"bir saat",hh:"%d saat",d:"bir g\xfcn",dd:"%d g\xfcn",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gec\u0259|s\u0259h\u0259r|g\xfcnd\xfcz|ax\u015fam/,isPM:function(u){return/^(g\xfcnd\xfcz|ax\u015fam)$/.test(u)},meridiem:function(u,o,_){return u<4?"gec\u0259":u<12?"s\u0259h\u0259r":u<17?"g\xfcnd\xfcz":"ax\u015fam"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0131nc\u0131|inci|nci|\xfcnc\xfc|nc\u0131|uncu)/,ordinal:function(u){if(0===u)return u+"-\u0131nc\u0131";var o=u%10;return u+(t[o]||t[u%100-o]||t[u>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},60150:function(Ce,E,n){!function(S){"use strict";function e(u,o,_){return"m"===_?o?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443":"h"===_?o?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443":u+" "+function t(u,o){var _=u.split("_");return o%10==1&&o%100!=11?_[0]:o%10>=2&&o%10<=4&&(o%100<10||o%100>=20)?_[1]:_[2]}({ss:o?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434",mm:o?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d",hh:o?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d",dd:"\u0434\u0437\u0435\u043d\u044c_\u0434\u043d\u0456_\u0434\u0437\u0451\u043d",MM:"\u043c\u0435\u0441\u044f\u0446_\u043c\u0435\u0441\u044f\u0446\u044b_\u043c\u0435\u0441\u044f\u0446\u0430\u045e",yy:"\u0433\u043e\u0434_\u0433\u0430\u0434\u044b_\u0433\u0430\u0434\u043e\u045e"}[_],+u)}S.defineLocale("be",{months:{format:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044f_\u043b\u044e\u0442\u0430\u0433\u0430_\u0441\u0430\u043a\u0430\u0432\u0456\u043a\u0430_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a\u0430_\u0442\u0440\u0430\u045e\u043d\u044f_\u0447\u044d\u0440\u0432\u0435\u043d\u044f_\u043b\u0456\u043f\u0435\u043d\u044f_\u0436\u043d\u0456\u045e\u043d\u044f_\u0432\u0435\u0440\u0430\u0441\u043d\u044f_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a\u0430_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434\u0430_\u0441\u043d\u0435\u0436\u043d\u044f".split("_"),standalone:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c_\u043b\u044e\u0442\u044b_\u0441\u0430\u043a\u0430\u0432\u0456\u043a_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a_\u0442\u0440\u0430\u0432\u0435\u043d\u044c_\u0447\u044d\u0440\u0432\u0435\u043d\u044c_\u043b\u0456\u043f\u0435\u043d\u044c_\u0436\u043d\u0456\u0432\u0435\u043d\u044c_\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434_\u0441\u043d\u0435\u0436\u0430\u043d\u044c".split("_")},monthsShort:"\u0441\u0442\u0443\u0434_\u043b\u044e\u0442_\u0441\u0430\u043a_\u043a\u0440\u0430\u0441_\u0442\u0440\u0430\u0432_\u0447\u044d\u0440\u0432_\u043b\u0456\u043f_\u0436\u043d\u0456\u0432_\u0432\u0435\u0440_\u043a\u0430\u0441\u0442_\u043b\u0456\u0441\u0442_\u0441\u043d\u0435\u0436".split("_"),weekdays:{format:"\u043d\u044f\u0434\u0437\u0435\u043b\u044e_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0443_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0443_\u0441\u0443\u0431\u043e\u0442\u0443".split("_"),standalone:"\u043d\u044f\u0434\u0437\u0435\u043b\u044f_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0430_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0430_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),isFormat:/\[ ?[\u0423\u0443\u045e] ?(?:\u043c\u0456\u043d\u0443\u043b\u0443\u044e|\u043d\u0430\u0441\u0442\u0443\u043f\u043d\u0443\u044e)? ?\] ?dddd/},weekdaysShort:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., HH:mm",LLLL:"dddd, D MMMM YYYY \u0433., HH:mm"},calendar:{sameDay:"[\u0421\u0451\u043d\u043d\u044f \u045e] LT",nextDay:"[\u0417\u0430\u045e\u0442\u0440\u0430 \u045e] LT",lastDay:"[\u0423\u0447\u043e\u0440\u0430 \u045e] LT",nextWeek:function(){return"[\u0423] dddd [\u045e] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u0443\u044e] dddd [\u045e] LT";case 1:case 2:case 4:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u044b] dddd [\u045e] LT"}},sameElse:"L"},relativeTime:{future:"\u043f\u0440\u0430\u0437 %s",past:"%s \u0442\u0430\u043c\u0443",s:"\u043d\u0435\u043a\u0430\u043b\u044c\u043a\u0456 \u0441\u0435\u043a\u0443\u043d\u0434",m:e,mm:e,h:e,hh:e,d:"\u0434\u0437\u0435\u043d\u044c",dd:e,M:"\u043c\u0435\u0441\u044f\u0446",MM:e,y:"\u0433\u043e\u0434",yy:e},meridiemParse:/\u043d\u043e\u0447\u044b|\u0440\u0430\u043d\u0456\u0446\u044b|\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430/,isPM:function(o){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430)$/.test(o)},meridiem:function(o,_,s){return o<4?"\u043d\u043e\u0447\u044b":o<12?"\u0440\u0430\u043d\u0456\u0446\u044b":o<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u0430\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0456|\u044b|\u0433\u0430)/,ordinal:function(o,_){switch(_){case"M":case"d":case"DDD":case"w":case"W":return o%10!=2&&o%10!=3||o%100==12||o%100==13?o+"-\u044b":o+"-\u0456";case"D":return o+"-\u0433\u0430";default:return o}},week:{dow:1,doy:7}})}(n(56908))},63069:function(Ce,E,n){!function(S){"use strict";S.defineLocale("bg",{months:"\u044f\u043d\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438_\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438_\u043d\u043e\u0435\u043c\u0432\u0440\u0438_\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438".split("_"),monthsShort:"\u044f\u043d\u0443_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433_\u0441\u0435\u043f_\u043e\u043a\u0442_\u043d\u043e\u0435_\u0434\u0435\u043a".split("_"),weekdays:"\u043d\u0435\u0434\u0435\u043b\u044f_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u044f\u0434\u0430_\u0447\u0435\u0442\u0432\u044a\u0440\u0442\u044a\u043a_\u043f\u0435\u0442\u044a\u043a_\u0441\u044a\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434_\u043f\u043e\u043d_\u0432\u0442\u043e_\u0441\u0440\u044f_\u0447\u0435\u0442_\u043f\u0435\u0442_\u0441\u044a\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u043d\u0435\u0441 \u0432] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432] LT",nextWeek:"dddd [\u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[\u041c\u0438\u043d\u0430\u043b\u0430\u0442\u0430] dddd [\u0432] LT";case 1:case 2:case 4:case 5:return"[\u041c\u0438\u043d\u0430\u043b\u0438\u044f] dddd [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0441\u043b\u0435\u0434 %s",past:"\u043f\u0440\u0435\u0434\u0438 %s",s:"\u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434\u0438",m:"\u043c\u0438\u043d\u0443\u0442\u0430",mm:"%d \u043c\u0438\u043d\u0443\u0442\u0438",h:"\u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0434\u0435\u043d",dd:"%d \u0434\u0435\u043d\u0430",w:"\u0441\u0435\u0434\u043c\u0438\u0446\u0430",ww:"%d \u0441\u0435\u0434\u043c\u0438\u0446\u0438",M:"\u043c\u0435\u0441\u0435\u0446",MM:"%d \u043c\u0435\u0441\u0435\u0446\u0430",y:"\u0433\u043e\u0434\u0438\u043d\u0430",yy:"%d \u0433\u043e\u0434\u0438\u043d\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0435\u0432|\u0435\u043d|\u0442\u0438|\u0432\u0438|\u0440\u0438|\u043c\u0438)/,ordinal:function(c){var u=c%10,o=c%100;return 0===c?c+"-\u0435\u0432":0===o?c+"-\u0435\u043d":o>10&&o<20?c+"-\u0442\u0438":1===u?c+"-\u0432\u0438":2===u?c+"-\u0440\u0438":7===u||8===u?c+"-\u043c\u0438":c+"-\u0442\u0438"},week:{dow:1,doy:7}})}(n(56908))},13466:function(Ce,E,n){!function(S){"use strict";S.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_M\u025bkalo_Zuw\u025bnkalo_Zuluyekalo_Utikalo_S\u025btanburukalo_\u0254kut\u0254burukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_M\u025b_Zuw_Zul_Uti_S\u025bt_\u0254ku_Now_Des".split("_"),weekdays:"Kari_Nt\u025bn\u025bn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Nt\u025b_Tar_Ara_Ala_Jum_Sib".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm"},calendar:{sameDay:"[Bi l\u025br\u025b] LT",nextDay:"[Sini l\u025br\u025b] LT",nextWeek:"dddd [don l\u025br\u025b] LT",lastDay:"[Kunu l\u025br\u025b] LT",lastWeek:"dddd [t\u025bm\u025bnen l\u025br\u025b] LT",sameElse:"L"},relativeTime:{future:"%s k\u0254n\u0254",past:"a b\u025b %s b\u0254",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"l\u025br\u025b kelen",hh:"l\u025br\u025b %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}})}(n(56908))},90557:function(Ce,E,n){!function(S){"use strict";var t={1:"\u09e7",2:"\u09e8",3:"\u09e9",4:"\u09ea",5:"\u09eb",6:"\u09ec",7:"\u09ed",8:"\u09ee",9:"\u09ef",0:"\u09e6"},e={"\u09e7":"1","\u09e8":"2","\u09e9":"3","\u09ea":"4","\u09eb":"5","\u09ec":"6","\u09ed":"7","\u09ee":"8","\u09ef":"9","\u09e6":"0"};S.defineLocale("bn-bd",{months:"\u099c\u09be\u09a8\u09c1\u09df\u09be\u09b0\u09bf_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09df\u09be\u09b0\u09bf_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0_\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0_\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0_\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0".split("_"),monthsShort:"\u099c\u09be\u09a8\u09c1_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f_\u0985\u0995\u09cd\u099f\u09cb_\u09a8\u09ad\u09c7_\u09a1\u09bf\u09b8\u09c7".split("_"),weekdays:"\u09b0\u09ac\u09bf\u09ac\u09be\u09b0_\u09b8\u09cb\u09ae\u09ac\u09be\u09b0_\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0_\u09ac\u09c1\u09a7\u09ac\u09be\u09b0_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0_\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0_\u09b6\u09a8\u09bf\u09ac\u09be\u09b0".split("_"),weekdaysShort:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),weekdaysMin:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),longDateFormat:{LT:"A h:mm \u09b8\u09ae\u09df",LTS:"A h:mm:ss \u09b8\u09ae\u09df",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u09b8\u09ae\u09df",LLLL:"dddd, D MMMM YYYY, A h:mm \u09b8\u09ae\u09df"},calendar:{sameDay:"[\u0986\u099c] LT",nextDay:"[\u0986\u0997\u09be\u09ae\u09c0\u0995\u09be\u09b2] LT",nextWeek:"dddd, LT",lastDay:"[\u0997\u09a4\u0995\u09be\u09b2] LT",lastWeek:"[\u0997\u09a4] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u09aa\u09b0\u09c7",past:"%s \u0986\u0997\u09c7",s:"\u0995\u09df\u09c7\u0995 \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",ss:"%d \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",m:"\u098f\u0995 \u09ae\u09bf\u09a8\u09bf\u099f",mm:"%d \u09ae\u09bf\u09a8\u09bf\u099f",h:"\u098f\u0995 \u0998\u09a8\u09cd\u099f\u09be",hh:"%d \u0998\u09a8\u09cd\u099f\u09be",d:"\u098f\u0995 \u09a6\u09bf\u09a8",dd:"%d \u09a6\u09bf\u09a8",M:"\u098f\u0995 \u09ae\u09be\u09b8",MM:"%d \u09ae\u09be\u09b8",y:"\u098f\u0995 \u09ac\u099b\u09b0",yy:"%d \u09ac\u099b\u09b0"},preparse:function(o){return o.replace(/[\u09e7\u09e8\u09e9\u09ea\u09eb\u09ec\u09ed\u09ee\u09ef\u09e6]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u09b0\u09be\u09a4|\u09ad\u09cb\u09b0|\u09b8\u0995\u09be\u09b2|\u09a6\u09c1\u09aa\u09c1\u09b0|\u09ac\u09bf\u0995\u09be\u09b2|\u09b8\u09a8\u09cd\u09a7\u09cd\u09af\u09be|\u09b0\u09be\u09a4/,meridiemHour:function(o,_){return 12===o&&(o=0),"\u09b0\u09be\u09a4"===_?o<4?o:o+12:"\u09ad\u09cb\u09b0"===_||"\u09b8\u0995\u09be\u09b2"===_?o:"\u09a6\u09c1\u09aa\u09c1\u09b0"===_?o>=3?o:o+12:"\u09ac\u09bf\u0995\u09be\u09b2"===_||"\u09b8\u09a8\u09cd\u09a7\u09cd\u09af\u09be"===_?o+12:void 0},meridiem:function(o,_,s){return o<4?"\u09b0\u09be\u09a4":o<6?"\u09ad\u09cb\u09b0":o<12?"\u09b8\u0995\u09be\u09b2":o<15?"\u09a6\u09c1\u09aa\u09c1\u09b0":o<18?"\u09ac\u09bf\u0995\u09be\u09b2":o<20?"\u09b8\u09a8\u09cd\u09a7\u09cd\u09af\u09be":"\u09b0\u09be\u09a4"},week:{dow:0,doy:6}})}(n(56908))},18516:function(Ce,E,n){!function(S){"use strict";var t={1:"\u09e7",2:"\u09e8",3:"\u09e9",4:"\u09ea",5:"\u09eb",6:"\u09ec",7:"\u09ed",8:"\u09ee",9:"\u09ef",0:"\u09e6"},e={"\u09e7":"1","\u09e8":"2","\u09e9":"3","\u09ea":"4","\u09eb":"5","\u09ec":"6","\u09ed":"7","\u09ee":"8","\u09ef":"9","\u09e6":"0"};S.defineLocale("bn",{months:"\u099c\u09be\u09a8\u09c1\u09df\u09be\u09b0\u09bf_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09df\u09be\u09b0\u09bf_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0_\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0_\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0_\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0".split("_"),monthsShort:"\u099c\u09be\u09a8\u09c1_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f_\u0985\u0995\u09cd\u099f\u09cb_\u09a8\u09ad\u09c7_\u09a1\u09bf\u09b8\u09c7".split("_"),weekdays:"\u09b0\u09ac\u09bf\u09ac\u09be\u09b0_\u09b8\u09cb\u09ae\u09ac\u09be\u09b0_\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0_\u09ac\u09c1\u09a7\u09ac\u09be\u09b0_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0_\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0_\u09b6\u09a8\u09bf\u09ac\u09be\u09b0".split("_"),weekdaysShort:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),weekdaysMin:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),longDateFormat:{LT:"A h:mm \u09b8\u09ae\u09df",LTS:"A h:mm:ss \u09b8\u09ae\u09df",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u09b8\u09ae\u09df",LLLL:"dddd, D MMMM YYYY, A h:mm \u09b8\u09ae\u09df"},calendar:{sameDay:"[\u0986\u099c] LT",nextDay:"[\u0986\u0997\u09be\u09ae\u09c0\u0995\u09be\u09b2] LT",nextWeek:"dddd, LT",lastDay:"[\u0997\u09a4\u0995\u09be\u09b2] LT",lastWeek:"[\u0997\u09a4] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u09aa\u09b0\u09c7",past:"%s \u0986\u0997\u09c7",s:"\u0995\u09df\u09c7\u0995 \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",ss:"%d \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",m:"\u098f\u0995 \u09ae\u09bf\u09a8\u09bf\u099f",mm:"%d \u09ae\u09bf\u09a8\u09bf\u099f",h:"\u098f\u0995 \u0998\u09a8\u09cd\u099f\u09be",hh:"%d \u0998\u09a8\u09cd\u099f\u09be",d:"\u098f\u0995 \u09a6\u09bf\u09a8",dd:"%d \u09a6\u09bf\u09a8",M:"\u098f\u0995 \u09ae\u09be\u09b8",MM:"%d \u09ae\u09be\u09b8",y:"\u098f\u0995 \u09ac\u099b\u09b0",yy:"%d \u09ac\u099b\u09b0"},preparse:function(o){return o.replace(/[\u09e7\u09e8\u09e9\u09ea\u09eb\u09ec\u09ed\u09ee\u09ef\u09e6]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u09b0\u09be\u09a4|\u09b8\u0995\u09be\u09b2|\u09a6\u09c1\u09aa\u09c1\u09b0|\u09ac\u09bf\u0995\u09be\u09b2|\u09b0\u09be\u09a4/,meridiemHour:function(o,_){return 12===o&&(o=0),"\u09b0\u09be\u09a4"===_&&o>=4||"\u09a6\u09c1\u09aa\u09c1\u09b0"===_&&o<5||"\u09ac\u09bf\u0995\u09be\u09b2"===_?o+12:o},meridiem:function(o,_,s){return o<4?"\u09b0\u09be\u09a4":o<10?"\u09b8\u0995\u09be\u09b2":o<17?"\u09a6\u09c1\u09aa\u09c1\u09b0":o<20?"\u09ac\u09bf\u0995\u09be\u09b2":"\u09b0\u09be\u09a4"},week:{dow:0,doy:6}})}(n(56908))},26273:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0f21",2:"\u0f22",3:"\u0f23",4:"\u0f24",5:"\u0f25",6:"\u0f26",7:"\u0f27",8:"\u0f28",9:"\u0f29",0:"\u0f20"},e={"\u0f21":"1","\u0f22":"2","\u0f23":"3","\u0f24":"4","\u0f25":"5","\u0f26":"6","\u0f27":"7","\u0f28":"8","\u0f29":"9","\u0f20":"0"};S.defineLocale("bo",{months:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f66\u0f74\u0f58\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54".split("_"),monthsShort:"\u0f5f\u0fb3\u0f0b1_\u0f5f\u0fb3\u0f0b2_\u0f5f\u0fb3\u0f0b3_\u0f5f\u0fb3\u0f0b4_\u0f5f\u0fb3\u0f0b5_\u0f5f\u0fb3\u0f0b6_\u0f5f\u0fb3\u0f0b7_\u0f5f\u0fb3\u0f0b8_\u0f5f\u0fb3\u0f0b9_\u0f5f\u0fb3\u0f0b10_\u0f5f\u0fb3\u0f0b11_\u0f5f\u0fb3\u0f0b12".split("_"),monthsShortRegex:/^(\u0f5f\u0fb3\u0f0b\d{1,2})/,monthsParseExact:!0,weekdays:"\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysShort:"\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysMin:"\u0f49\u0f72_\u0f5f\u0fb3_\u0f58\u0f72\u0f42_\u0f63\u0fb7\u0f42_\u0f55\u0f74\u0f62_\u0f66\u0f44\u0f66_\u0f66\u0fa4\u0f7a\u0f53".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0f51\u0f72\u0f0b\u0f62\u0f72\u0f44] LT",nextDay:"[\u0f66\u0f44\u0f0b\u0f49\u0f72\u0f53] LT",nextWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f62\u0f97\u0f7a\u0f66\u0f0b\u0f58], LT",lastDay:"[\u0f41\u0f0b\u0f66\u0f44] LT",lastWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f58\u0f50\u0f60\u0f0b\u0f58] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0f63\u0f0b",past:"%s \u0f66\u0f94\u0f53\u0f0b\u0f63",s:"\u0f63\u0f58\u0f0b\u0f66\u0f44",ss:"%d \u0f66\u0f90\u0f62\u0f0b\u0f46\u0f0d",m:"\u0f66\u0f90\u0f62\u0f0b\u0f58\u0f0b\u0f42\u0f45\u0f72\u0f42",mm:"%d \u0f66\u0f90\u0f62\u0f0b\u0f58",h:"\u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51\u0f0b\u0f42\u0f45\u0f72\u0f42",hh:"%d \u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51",d:"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f45\u0f72\u0f42",dd:"%d \u0f49\u0f72\u0f53\u0f0b",M:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f45\u0f72\u0f42",MM:"%d \u0f5f\u0fb3\u0f0b\u0f56",y:"\u0f63\u0f7c\u0f0b\u0f42\u0f45\u0f72\u0f42",yy:"%d \u0f63\u0f7c"},preparse:function(o){return o.replace(/[\u0f21\u0f22\u0f23\u0f24\u0f25\u0f26\u0f27\u0f28\u0f29\u0f20]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c|\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66|\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44|\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42|\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c/,meridiemHour:function(o,_){return 12===o&&(o=0),"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"===_&&o>=4||"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44"===_&&o<5||"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42"===_?o+12:o},meridiem:function(o,_,s){return o<4?"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c":o<10?"\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66":o<17?"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44":o<20?"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42":"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"},week:{dow:0,doy:6}})}(n(56908))},9588:function(Ce,E,n){!function(S){"use strict";function t(B,k,D){return B+" "+function u(B,k){return 2===k?function o(B){var k={m:"v",b:"v",d:"z"};return void 0===k[B.charAt(0)]?B:k[B.charAt(0)]+B.substring(1)}(B):B}({mm:"munutenn",MM:"miz",dd:"devezh"}[D],B)}function c(B){return B>9?c(B%10):B}var _=[/^gen/i,/^c[\u02bc\']hwe/i,/^meu/i,/^ebr/i,/^mae/i,/^(mez|eve)/i,/^gou/i,/^eos/i,/^gwe/i,/^her/i,/^du/i,/^ker/i],s=/^(genver|c[\u02bc\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[\u02bc\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,Y=[/^Su/i,/^Lu/i,/^Me([^r]|$)/i,/^Mer/i,/^Ya/i,/^Gw/i,/^Sa/i];S.defineLocale("br",{months:"Genver_C\u02bchwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C\u02bchwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc\u02bcher_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParse:Y,fullWeekdaysParse:[/^sul/i,/^lun/i,/^meurzh/i,/^merc[\u02bc\']her/i,/^yaou/i,/^gwener/i,/^sadorn/i],shortWeekdaysParse:[/^Sul/i,/^Lun/i,/^Meu/i,/^Mer/i,/^Yao/i,/^Gwe/i,/^Sad/i],minWeekdaysParse:Y,monthsRegex:s,monthsShortRegex:s,monthsStrictRegex:/^(genver|c[\u02bc\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,monthsShortStrictRegex:/^(gen|c[\u02bc\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,monthsParse:_,longMonthsParse:_,shortMonthsParse:_,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY HH:mm",LLLL:"dddd, D [a viz] MMMM YYYY HH:mm"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc\u02bchoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec\u02bch da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s \u02bczo",s:"un nebeud segondenno\xf9",ss:"%d eilenn",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:function e(B){switch(c(B)){case 1:case 3:case 4:case 5:case 9:return B+" bloaz";default:return B+" vloaz"}}},dayOfMonthOrdinalParse:/\d{1,2}(a\xf1|vet)/,ordinal:function(k){return k+(1===k?"a\xf1":"vet")},week:{dow:1,doy:4},meridiemParse:/a.m.|g.m./,isPM:function(k){return"g.m."===k},meridiem:function(k,D,N){return k<12?"a.m.":"g.m."}})}(n(56908))},19815:function(Ce,E,n){!function(S){"use strict";function t(c,u,o){var _=c+" ";switch(o){case"ss":return _+(1===c?"sekunda":2===c||3===c||4===c?"sekunde":"sekundi");case"m":return u?"jedna minuta":"jedne minute";case"mm":return _+(1===c?"minuta":2===c||3===c||4===c?"minute":"minuta");case"h":return u?"jedan sat":"jednog sata";case"hh":return _+(1===c?"sat":2===c||3===c||4===c?"sata":"sati");case"dd":return _+(1===c?"dan":"dana");case"MM":return _+(1===c?"mjesec":2===c||3===c||4===c?"mjeseca":"mjeseci");case"yy":return _+(1===c?"godina":2===c||3===c||4===c?"godine":"godina")}}S.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010der u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[pro\u0161lu] dddd [u] LT";case 6:return"[pro\u0161le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[pro\u0161li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},83331:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ca",{months:{standalone:"gener_febrer_mar\xe7_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de mar\xe7_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._mar\xe7_abr._maig_juny_jul._ag._set._oct._nov._des.".split("_"),monthsParseExact:!0,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[dem\xe0 a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"d'aqu\xed %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|\xe8|a)/,ordinal:function(c,u){var o=1===c?"r":2===c?"n":3===c?"r":4===c?"t":"\xe8";return("w"===u||"W"===u)&&(o="a"),c+o},week:{dow:1,doy:4}})}(n(56908))},21320:function(Ce,E,n){!function(S){"use strict";var t={format:"leden_\xfanor_b\u0159ezen_duben_kv\u011bten_\u010derven_\u010dervenec_srpen_z\xe1\u0159\xed_\u0159\xedjen_listopad_prosinec".split("_"),standalone:"ledna_\xfanora_b\u0159ezna_dubna_kv\u011btna_\u010dervna_\u010dervence_srpna_z\xe1\u0159\xed_\u0159\xedjna_listopadu_prosince".split("_")},e="led_\xfano_b\u0159e_dub_kv\u011b_\u010dvn_\u010dvc_srp_z\xe1\u0159_\u0159\xedj_lis_pro".split("_"),c=[/^led/i,/^\xfano/i,/^b\u0159e/i,/^dub/i,/^kv\u011b/i,/^(\u010dvn|\u010derven$|\u010dervna)/i,/^(\u010dvc|\u010dervenec|\u010dervence)/i,/^srp/i,/^z\xe1\u0159/i,/^\u0159\xedj/i,/^lis/i,/^pro/i],u=/^(leden|\xfanor|b\u0159ezen|duben|kv\u011bten|\u010dervenec|\u010dervence|\u010derven|\u010dervna|srpen|z\xe1\u0159\xed|\u0159\xedjen|listopad|prosinec|led|\xfano|b\u0159e|dub|kv\u011b|\u010dvn|\u010dvc|srp|z\xe1\u0159|\u0159\xedj|lis|pro)/i;function o(h){return h>1&&h<5&&1!=~~(h/10)}function _(h,b,T,y){var Y=h+" ";switch(T){case"s":return b||y?"p\xe1r sekund":"p\xe1r sekundami";case"ss":return b||y?Y+(o(h)?"sekundy":"sekund"):Y+"sekundami";case"m":return b?"minuta":y?"minutu":"minutou";case"mm":return b||y?Y+(o(h)?"minuty":"minut"):Y+"minutami";case"h":return b?"hodina":y?"hodinu":"hodinou";case"hh":return b||y?Y+(o(h)?"hodiny":"hodin"):Y+"hodinami";case"d":return b||y?"den":"dnem";case"dd":return b||y?Y+(o(h)?"dny":"dn\xed"):Y+"dny";case"M":return b||y?"m\u011bs\xedc":"m\u011bs\xedcem";case"MM":return b||y?Y+(o(h)?"m\u011bs\xedce":"m\u011bs\xedc\u016f"):Y+"m\u011bs\xedci";case"y":return b||y?"rok":"rokem";case"yy":return b||y?Y+(o(h)?"roky":"let"):Y+"lety"}}S.defineLocale("cs",{months:t,monthsShort:e,monthsRegex:u,monthsShortRegex:u,monthsStrictRegex:/^(leden|ledna|\xfanora|\xfanor|b\u0159ezen|b\u0159ezna|duben|dubna|kv\u011bten|kv\u011btna|\u010dervenec|\u010dervence|\u010derven|\u010dervna|srpen|srpna|z\xe1\u0159\xed|\u0159\xedjen|\u0159\xedjna|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|\xfano|b\u0159e|dub|kv\u011b|\u010dvn|\u010dvc|srp|z\xe1\u0159|\u0159\xedj|lis|pro)/i,monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"ned\u011ble_pond\u011bl\xed_\xfater\xfd_st\u0159eda_\u010dtvrtek_p\xe1tek_sobota".split("_"),weekdaysShort:"ne_po_\xfat_st_\u010dt_p\xe1_so".split("_"),weekdaysMin:"ne_po_\xfat_st_\u010dt_p\xe1_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[z\xedtra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v ned\u011bli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve st\u0159edu v] LT";case 4:return"[ve \u010dtvrtek v] LT";case 5:return"[v p\xe1tek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[v\u010dera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou ned\u011bli v] LT";case 1:case 2:return"[minul\xe9] dddd [v] LT";case 3:return"[minulou st\u0159edu v] LT";case 4:case 5:return"[minul\xfd] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"p\u0159ed %s",s:_,ss:_,m:_,mm:_,h:_,hh:_,d:_,dd:_,M:_,MM:_,y:_,yy:_},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},72219:function(Ce,E,n){!function(S){"use strict";S.defineLocale("cv",{months:"\u043a\u04d1\u0440\u043b\u0430\u0447_\u043d\u0430\u0440\u04d1\u0441_\u043f\u0443\u0448_\u0430\u043a\u0430_\u043c\u0430\u0439_\u04ab\u04d7\u0440\u0442\u043c\u0435_\u0443\u0442\u04d1_\u04ab\u0443\u0440\u043b\u0430_\u0430\u0432\u04d1\u043d_\u044e\u043f\u0430_\u0447\u04f3\u043a_\u0440\u0430\u0448\u0442\u0430\u0432".split("_"),monthsShort:"\u043a\u04d1\u0440_\u043d\u0430\u0440_\u043f\u0443\u0448_\u0430\u043a\u0430_\u043c\u0430\u0439_\u04ab\u04d7\u0440_\u0443\u0442\u04d1_\u04ab\u0443\u0440_\u0430\u0432\u043d_\u044e\u043f\u0430_\u0447\u04f3\u043a_\u0440\u0430\u0448".split("_"),weekdays:"\u0432\u044b\u0440\u0441\u0430\u0440\u043d\u0438\u043a\u0443\u043d_\u0442\u0443\u043d\u0442\u0438\u043a\u0443\u043d_\u044b\u0442\u043b\u0430\u0440\u0438\u043a\u0443\u043d_\u044e\u043d\u043a\u0443\u043d_\u043a\u04d7\u04ab\u043d\u0435\u0440\u043d\u0438\u043a\u0443\u043d_\u044d\u0440\u043d\u0435\u043a\u0443\u043d_\u0448\u04d1\u043c\u0430\u0442\u043a\u0443\u043d".split("_"),weekdaysShort:"\u0432\u044b\u0440_\u0442\u0443\u043d_\u044b\u0442\u043b_\u044e\u043d_\u043a\u04d7\u04ab_\u044d\u0440\u043d_\u0448\u04d1\u043c".split("_"),weekdaysMin:"\u0432\u0440_\u0442\u043d_\u044b\u0442_\u044e\u043d_\u043a\u04ab_\u044d\u0440_\u0448\u043c".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7]",LLL:"YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7], HH:mm",LLLL:"dddd, YYYY [\u04ab\u0443\u043b\u0445\u0438] MMMM [\u0443\u0439\u04d1\u0445\u04d7\u043d] D[-\u043c\u04d7\u0448\u04d7], HH:mm"},calendar:{sameDay:"[\u041f\u0430\u044f\u043d] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",nextDay:"[\u042b\u0440\u0430\u043d] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",lastDay:"[\u04d6\u043d\u0435\u0440] LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",nextWeek:"[\u04aa\u0438\u0442\u0435\u0441] dddd LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",lastWeek:"[\u0418\u0440\u0442\u043d\u04d7] dddd LT [\u0441\u0435\u0445\u0435\u0442\u0440\u0435]",sameElse:"L"},relativeTime:{future:function(c){return c+(/\u0441\u0435\u0445\u0435\u0442$/i.exec(c)?"\u0440\u0435\u043d":/\u04ab\u0443\u043b$/i.exec(c)?"\u0442\u0430\u043d":"\u0440\u0430\u043d")},past:"%s \u043a\u0430\u044f\u043b\u043b\u0430",s:"\u043f\u04d7\u0440-\u0438\u043a \u04ab\u0435\u043a\u043a\u0443\u043d\u0442",ss:"%d \u04ab\u0435\u043a\u043a\u0443\u043d\u0442",m:"\u043f\u04d7\u0440 \u043c\u0438\u043d\u0443\u0442",mm:"%d \u043c\u0438\u043d\u0443\u0442",h:"\u043f\u04d7\u0440 \u0441\u0435\u0445\u0435\u0442",hh:"%d \u0441\u0435\u0445\u0435\u0442",d:"\u043f\u04d7\u0440 \u043a\u0443\u043d",dd:"%d \u043a\u0443\u043d",M:"\u043f\u04d7\u0440 \u0443\u0439\u04d1\u0445",MM:"%d \u0443\u0439\u04d1\u0445",y:"\u043f\u04d7\u0440 \u04ab\u0443\u043b",yy:"%d \u04ab\u0443\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-\u043c\u04d7\u0448/,ordinal:"%d-\u043c\u04d7\u0448",week:{dow:1,doy:7}})}(n(56908))},68266:function(Ce,E,n){!function(S){"use strict";S.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn \xf4l",s:"ychydig eiliadau",ss:"%d eiliad",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},dayOfMonthOrdinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(c){var o="";return c>20?o=40===c||50===c||60===c||80===c||100===c?"fed":"ain":c>0&&(o=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][c]),c+o},week:{dow:1,doy:4}})}(n(56908))},66427:function(Ce,E,n){!function(S){"use strict";S.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xf8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xf8rdag".split("_"),weekdaysShort:"s\xf8n_man_tir_ons_tor_fre_l\xf8r".split("_"),weekdaysMin:"s\xf8_ma_ti_on_to_fr_l\xf8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"p\xe5 dddd [kl.] LT",lastDay:"[i g\xe5r kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"f\xe5 sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en m\xe5ned",MM:"%d m\xe5neder",y:"et \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},52871:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){var s={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[c+" Tage",c+" Tagen"],w:["eine Woche","einer Woche"],M:["ein Monat","einem Monat"],MM:[c+" Monate",c+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[c+" Jahre",c+" Jahren"]};return u?s[o][0]:s[o][1]}S.defineLocale("de-at",{months:"J\xe4nner_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"J\xe4n._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,w:t,ww:"%d Wochen",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},12994:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){var s={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[c+" Tage",c+" Tagen"],w:["eine Woche","einer Woche"],M:["ein Monat","einem Monat"],MM:[c+" Monate",c+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[c+" Jahre",c+" Jahren"]};return u?s[o][0]:s[o][1]}S.defineLocale("de-ch",{months:"Januar_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,w:t,ww:"%d Wochen",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},67435:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){var s={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[c+" Tage",c+" Tagen"],w:["eine Woche","einer Woche"],M:["ein Monat","einem Monat"],MM:[c+" Monate",c+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[c+" Jahre",c+" Jahren"]};return u?s[o][0]:s[o][1]}S.defineLocale("de",{months:"Januar_Februar_M\xe4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xe4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,w:t,ww:"%d Wochen",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},82357:function(Ce,E,n){!function(S){"use strict";var t=["\u0796\u07ac\u0782\u07aa\u0787\u07a6\u0783\u07a9","\u078a\u07ac\u0784\u07b0\u0783\u07aa\u0787\u07a6\u0783\u07a9","\u0789\u07a7\u0783\u07a8\u0797\u07aa","\u0787\u07ad\u0795\u07b0\u0783\u07a9\u078d\u07aa","\u0789\u07ad","\u0796\u07ab\u0782\u07b0","\u0796\u07aa\u078d\u07a6\u0787\u07a8","\u0787\u07af\u078e\u07a6\u0790\u07b0\u0793\u07aa","\u0790\u07ac\u0795\u07b0\u0793\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa","\u0787\u07ae\u0786\u07b0\u0793\u07af\u0784\u07a6\u0783\u07aa","\u0782\u07ae\u0788\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa","\u0791\u07a8\u0790\u07ac\u0789\u07b0\u0784\u07a6\u0783\u07aa"],e=["\u0787\u07a7\u078b\u07a8\u0787\u07b0\u078c\u07a6","\u0780\u07af\u0789\u07a6","\u0787\u07a6\u0782\u07b0\u078e\u07a7\u0783\u07a6","\u0784\u07aa\u078b\u07a6","\u0784\u07aa\u0783\u07a7\u0790\u07b0\u078a\u07a6\u078c\u07a8","\u0780\u07aa\u0786\u07aa\u0783\u07aa","\u0780\u07ae\u0782\u07a8\u0780\u07a8\u0783\u07aa"];S.defineLocale("dv",{months:t,monthsShort:t,weekdays:e,weekdaysShort:e,weekdaysMin:"\u0787\u07a7\u078b\u07a8_\u0780\u07af\u0789\u07a6_\u0787\u07a6\u0782\u07b0_\u0784\u07aa\u078b\u07a6_\u0784\u07aa\u0783\u07a7_\u0780\u07aa\u0786\u07aa_\u0780\u07ae\u0782\u07a8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0789\u0786|\u0789\u078a/,isPM:function(o){return"\u0789\u078a"===o},meridiem:function(o,_,s){return o<12?"\u0789\u0786":"\u0789\u078a"},calendar:{sameDay:"[\u0789\u07a8\u0787\u07a6\u078b\u07aa] LT",nextDay:"[\u0789\u07a7\u078b\u07a6\u0789\u07a7] LT",nextWeek:"dddd LT",lastDay:"[\u0787\u07a8\u0787\u07b0\u0794\u07ac] LT",lastWeek:"[\u078a\u07a7\u0787\u07a8\u078c\u07aa\u0788\u07a8] dddd LT",sameElse:"L"},relativeTime:{future:"\u078c\u07ac\u0783\u07ad\u078e\u07a6\u0787\u07a8 %s",past:"\u0786\u07aa\u0783\u07a8\u0782\u07b0 %s",s:"\u0790\u07a8\u0786\u07aa\u0782\u07b0\u078c\u07aa\u0786\u07ae\u0785\u07ac\u0787\u07b0",ss:"d% \u0790\u07a8\u0786\u07aa\u0782\u07b0\u078c\u07aa",m:"\u0789\u07a8\u0782\u07a8\u0793\u07ac\u0787\u07b0",mm:"\u0789\u07a8\u0782\u07a8\u0793\u07aa %d",h:"\u078e\u07a6\u0791\u07a8\u0787\u07a8\u0783\u07ac\u0787\u07b0",hh:"\u078e\u07a6\u0791\u07a8\u0787\u07a8\u0783\u07aa %d",d:"\u078b\u07aa\u0788\u07a6\u0780\u07ac\u0787\u07b0",dd:"\u078b\u07aa\u0788\u07a6\u0790\u07b0 %d",M:"\u0789\u07a6\u0780\u07ac\u0787\u07b0",MM:"\u0789\u07a6\u0790\u07b0 %d",y:"\u0787\u07a6\u0780\u07a6\u0783\u07ac\u0787\u07b0",yy:"\u0787\u07a6\u0780\u07a6\u0783\u07aa %d"},preparse:function(o){return o.replace(/\u060c/g,",")},postformat:function(o){return o.replace(/,/g,"\u060c")},week:{dow:7,doy:12}})}(n(56908))},95649:function(Ce,E,n){!function(S){"use strict";S.defineLocale("el",{monthsNominativeEl:"\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2_\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2_\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2_\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2_\u039c\u03ac\u03b9\u03bf\u03c2_\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2_\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2_\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2_\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2_\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2_\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2_\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2".split("_"),monthsGenitiveEl:"\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5_\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5_\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5_\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5_\u039c\u03b1\u0390\u03bf\u03c5_\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5_\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5_\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5_\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5_\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5_\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5_\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5".split("_"),months:function(u,o){return u?"string"==typeof o&&/D/.test(o.substring(0,o.indexOf("MMMM")))?this._monthsGenitiveEl[u.month()]:this._monthsNominativeEl[u.month()]:this._monthsNominativeEl},monthsShort:"\u0399\u03b1\u03bd_\u03a6\u03b5\u03b2_\u039c\u03b1\u03c1_\u0391\u03c0\u03c1_\u039c\u03b1\u03ca_\u0399\u03bf\u03c5\u03bd_\u0399\u03bf\u03c5\u03bb_\u0391\u03c5\u03b3_\u03a3\u03b5\u03c0_\u039f\u03ba\u03c4_\u039d\u03bf\u03b5_\u0394\u03b5\u03ba".split("_"),weekdays:"\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae_\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1_\u03a4\u03c1\u03af\u03c4\u03b7_\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7_\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7_\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae_\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf".split("_"),weekdaysShort:"\u039a\u03c5\u03c1_\u0394\u03b5\u03c5_\u03a4\u03c1\u03b9_\u03a4\u03b5\u03c4_\u03a0\u03b5\u03bc_\u03a0\u03b1\u03c1_\u03a3\u03b1\u03b2".split("_"),weekdaysMin:"\u039a\u03c5_\u0394\u03b5_\u03a4\u03c1_\u03a4\u03b5_\u03a0\u03b5_\u03a0\u03b1_\u03a3\u03b1".split("_"),meridiem:function(u,o,_){return u>11?_?"\u03bc\u03bc":"\u039c\u039c":_?"\u03c0\u03bc":"\u03a0\u039c"},isPM:function(u){return"\u03bc"===(u+"").toLowerCase()[0]},meridiemParse:/[\u03a0\u039c]\.?\u039c?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[\u03a3\u03ae\u03bc\u03b5\u03c1\u03b1 {}] LT",nextDay:"[\u0391\u03cd\u03c1\u03b9\u03bf {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[\u03a7\u03b8\u03b5\u03c2 {}] LT",lastWeek:function(){return 6===this.day()?"[\u03c4\u03bf \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf] dddd [{}] LT":"[\u03c4\u03b7\u03bd \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03b7] dddd [{}] LT"},sameElse:"L"},calendar:function(u,o){var _=this._calendarEl[u],s=o&&o.hours();return function t(c){return"undefined"!=typeof Function&&c instanceof Function||"[object Function]"===Object.prototype.toString.call(c)}(_)&&(_=_.apply(o)),_.replace("{}",s%12==1?"\u03c3\u03c4\u03b7":"\u03c3\u03c4\u03b9\u03c2")},relativeTime:{future:"\u03c3\u03b5 %s",past:"%s \u03c0\u03c1\u03b9\u03bd",s:"\u03bb\u03af\u03b3\u03b1 \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03cc\u03bb\u03b5\u03c0\u03c4\u03b1",ss:"%d \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03cc\u03bb\u03b5\u03c0\u03c4\u03b1",m:"\u03ad\u03bd\u03b1 \u03bb\u03b5\u03c0\u03c4\u03cc",mm:"%d \u03bb\u03b5\u03c0\u03c4\u03ac",h:"\u03bc\u03af\u03b1 \u03ce\u03c1\u03b1",hh:"%d \u03ce\u03c1\u03b5\u03c2",d:"\u03bc\u03af\u03b1 \u03bc\u03ad\u03c1\u03b1",dd:"%d \u03bc\u03ad\u03c1\u03b5\u03c2",M:"\u03ad\u03bd\u03b1\u03c2 \u03bc\u03ae\u03bd\u03b1\u03c2",MM:"%d \u03bc\u03ae\u03bd\u03b5\u03c2",y:"\u03ad\u03bd\u03b1\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2",yy:"%d \u03c7\u03c1\u03cc\u03bd\u03b9\u03b1"},dayOfMonthOrdinalParse:/\d{1,2}\u03b7/,ordinal:"%d\u03b7",week:{dow:1,doy:4}})}(n(56908))},59961:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:0,doy:4}})}(n(56908))},19878:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")}})}(n(56908))},3924:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},70864:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},91579:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")}})}(n(56908))},30940:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-in",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:0,doy:6}})}(n(56908))},16181:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},44301:function(Ce,E,n){!function(S){"use strict";S.defineLocale("en-sg",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},85291:function(Ce,E,n){!function(S){"use strict";S.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_a\u016dgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mart_apr_maj_jun_jul_a\u016dg_sept_okt_nov_dec".split("_"),weekdays:"diman\u0109o_lundo_mardo_merkredo_\u0135a\u016ddo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_\u0135a\u016d_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_\u0135a_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"[la] D[-an de] MMMM, YYYY",LLL:"[la] D[-an de] MMMM, YYYY HH:mm",LLLL:"dddd[n], [la] D[-an de] MMMM, YYYY HH:mm",llll:"ddd, [la] D[-an de] MMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(c){return"p"===c.charAt(0).toLowerCase()},meridiem:function(c,u,o){return c>11?o?"p.t.m.":"P.T.M.":o?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodia\u016d je] LT",nextDay:"[Morga\u016d je] LT",nextWeek:"dddd[n je] LT",lastDay:"[Hiera\u016d je] LT",lastWeek:"[pasintan] dddd[n je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"anta\u016d %s",s:"kelkaj sekundoj",ss:"%d sekundoj",m:"unu minuto",mm:"%d minutoj",h:"unu horo",hh:"%d horoj",d:"unu tago",dd:"%d tagoj",M:"unu monato",MM:"%d monatoj",y:"unu jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}})}(n(56908))},53764:function(Ce,E,n){!function(S){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),e="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),c=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],u=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;S.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(s,h){return s?/-MMM-/.test(h)?e[s.month()]:t[s.month()]:t},monthsRegex:u,monthsShortRegex:u,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},12584:function(Ce,E,n){!function(S){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),e="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),c=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],u=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;S.defineLocale("es-mx",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(s,h){return s?/-MMM-/.test(h)?e[s.month()]:t[s.month()]:t},monthsRegex:u,monthsShortRegex:u,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:0,doy:4},invalidDate:"Fecha inv\xe1lida"})}(n(56908))},63425:function(Ce,E,n){!function(S){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),e="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),c=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],u=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;S.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(s,h){return s?/-MMM-/.test(h)?e[s.month()]:t[s.month()]:t},monthsRegex:u,monthsShortRegex:u,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:0,doy:6}})}(n(56908))},54529:function(Ce,E,n){!function(S){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),e="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),c=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],u=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;S.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(s,h){return s?/-MMM-/.test(h)?e[s.month()]:t[s.month()]:t},monthsRegex:u,monthsShortRegex:u,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"domingo_lunes_martes_mi\xe9rcoles_jueves_viernes_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xe9._jue._vie._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[ma\xf1ana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un a\xf1o",yy:"%d a\xf1os"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4},invalidDate:"Fecha inv\xe1lida"})}(n(56908))},35203:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){var s={s:["m\xf5ne sekundi","m\xf5ni sekund","paar sekundit"],ss:[c+"sekundi",c+"sekundit"],m:["\xfche minuti","\xfcks minut"],mm:[c+" minuti",c+" minutit"],h:["\xfche tunni","tund aega","\xfcks tund"],hh:[c+" tunni",c+" tundi"],d:["\xfche p\xe4eva","\xfcks p\xe4ev"],M:["kuu aja","kuu aega","\xfcks kuu"],MM:[c+" kuu",c+" kuud"],y:["\xfche aasta","aasta","\xfcks aasta"],yy:[c+" aasta",c+" aastat"]};return u?s[o][2]?s[o][2]:s[o][1]:_?s[o][0]:s[o][1]}S.defineLocale("et",{months:"jaanuar_veebruar_m\xe4rts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_m\xe4rts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"p\xfchap\xe4ev_esmasp\xe4ev_teisip\xe4ev_kolmap\xe4ev_neljap\xe4ev_reede_laup\xe4ev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[T\xe4na,] LT",nextDay:"[Homme,] LT",nextWeek:"[J\xe4rgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s p\xe4rast",past:"%s tagasi",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:"%d p\xe4eva",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},70678:function(Ce,E,n){!function(S){"use strict";S.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},83483:function(Ce,E,n){!function(S){"use strict";var t={1:"\u06f1",2:"\u06f2",3:"\u06f3",4:"\u06f4",5:"\u06f5",6:"\u06f6",7:"\u06f7",8:"\u06f8",9:"\u06f9",0:"\u06f0"},e={"\u06f1":"1","\u06f2":"2","\u06f3":"3","\u06f4":"4","\u06f5":"5","\u06f6":"6","\u06f7":"7","\u06f8":"8","\u06f9":"9","\u06f0":"0"};S.defineLocale("fa",{months:"\u0698\u0627\u0646\u0648\u06cc\u0647_\u0641\u0648\u0631\u06cc\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06cc\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06cc\u0647_\u0627\u0648\u062a_\u0633\u067e\u062a\u0627\u0645\u0628\u0631_\u0627\u06a9\u062a\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062f\u0633\u0627\u0645\u0628\u0631".split("_"),monthsShort:"\u0698\u0627\u0646\u0648\u06cc\u0647_\u0641\u0648\u0631\u06cc\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06cc\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06cc\u0647_\u0627\u0648\u062a_\u0633\u067e\u062a\u0627\u0645\u0628\u0631_\u0627\u06a9\u062a\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062f\u0633\u0627\u0645\u0628\u0631".split("_"),weekdays:"\u06cc\u06a9\u200c\u0634\u0646\u0628\u0647_\u062f\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200c\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067e\u0646\u062c\u200c\u0634\u0646\u0628\u0647_\u062c\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysShort:"\u06cc\u06a9\u200c\u0634\u0646\u0628\u0647_\u062f\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200c\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067e\u0646\u062c\u200c\u0634\u0646\u0628\u0647_\u062c\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysMin:"\u06cc_\u062f_\u0633_\u0686_\u067e_\u062c_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u0642\u0628\u0644 \u0627\u0632 \u0638\u0647\u0631|\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631/,isPM:function(o){return/\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631/.test(o)},meridiem:function(o,_,s){return o<12?"\u0642\u0628\u0644 \u0627\u0632 \u0638\u0647\u0631":"\u0628\u0639\u062f \u0627\u0632 \u0638\u0647\u0631"},calendar:{sameDay:"[\u0627\u0645\u0631\u0648\u0632 \u0633\u0627\u0639\u062a] LT",nextDay:"[\u0641\u0631\u062f\u0627 \u0633\u0627\u0639\u062a] LT",nextWeek:"dddd [\u0633\u0627\u0639\u062a] LT",lastDay:"[\u062f\u06cc\u0631\u0648\u0632 \u0633\u0627\u0639\u062a] LT",lastWeek:"dddd [\u067e\u06cc\u0634] [\u0633\u0627\u0639\u062a] LT",sameElse:"L"},relativeTime:{future:"\u062f\u0631 %s",past:"%s \u067e\u06cc\u0634",s:"\u0686\u0646\u062f \u062b\u0627\u0646\u06cc\u0647",ss:"%d \u062b\u0627\u0646\u06cc\u0647",m:"\u06cc\u06a9 \u062f\u0642\u06cc\u0642\u0647",mm:"%d \u062f\u0642\u06cc\u0642\u0647",h:"\u06cc\u06a9 \u0633\u0627\u0639\u062a",hh:"%d \u0633\u0627\u0639\u062a",d:"\u06cc\u06a9 \u0631\u0648\u0632",dd:"%d \u0631\u0648\u0632",M:"\u06cc\u06a9 \u0645\u0627\u0647",MM:"%d \u0645\u0627\u0647",y:"\u06cc\u06a9 \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(o){return o.replace(/[\u06f0-\u06f9]/g,function(_){return e[_]}).replace(/\u060c/g,",")},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]}).replace(/,/g,"\u060c")},dayOfMonthOrdinalParse:/\d{1,2}\u0645/,ordinal:"%d\u0645",week:{dow:6,doy:12}})}(n(56908))},96262:function(Ce,E,n){!function(S){"use strict";var t="nolla yksi kaksi kolme nelj\xe4 viisi kuusi seitsem\xe4n kahdeksan yhdeks\xe4n".split(" "),e=["nolla","yhden","kahden","kolmen","nelj\xe4n","viiden","kuuden",t[7],t[8],t[9]];function c(_,s,h,b){var T="";switch(h){case"s":return b?"muutaman sekunnin":"muutama sekunti";case"ss":T=b?"sekunnin":"sekuntia";break;case"m":return b?"minuutin":"minuutti";case"mm":T=b?"minuutin":"minuuttia";break;case"h":return b?"tunnin":"tunti";case"hh":T=b?"tunnin":"tuntia";break;case"d":return b?"p\xe4iv\xe4n":"p\xe4iv\xe4";case"dd":T=b?"p\xe4iv\xe4n":"p\xe4iv\xe4\xe4";break;case"M":return b?"kuukauden":"kuukausi";case"MM":T=b?"kuukauden":"kuukautta";break;case"y":return b?"vuoden":"vuosi";case"yy":T=b?"vuoden":"vuotta"}return function u(_,s){return _<10?s?e[_]:t[_]:_}(_,b)+" "+T}S.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kes\xe4kuu_hein\xe4kuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kes\xe4_hein\xe4_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[t\xe4n\xe4\xe4n] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s p\xe4\xe4st\xe4",past:"%s sitten",s:c,ss:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},52521:function(Ce,E,n){!function(S){"use strict";S.defineLocale("fil",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(c){return c},week:{dow:1,doy:4}})}(n(56908))},34555:function(Ce,E,n){!function(S){"use strict";S.defineLocale("fo",{months:"januar_februar_mars_apr\xedl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_m\xe1nadagur_t\xfdsdagur_mikudagur_h\xf3sdagur_fr\xedggjadagur_leygardagur".split("_"),weekdaysShort:"sun_m\xe1n_t\xfds_mik_h\xf3s_fr\xed_ley".split("_"),weekdaysMin:"su_m\xe1_t\xfd_mi_h\xf3_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[\xcd dag kl.] LT",nextDay:"[\xcd morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[\xcd gj\xe1r kl.] LT",lastWeek:"[s\xed\xf0stu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s s\xed\xf0ani",s:"f\xe1 sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein t\xedmi",hh:"%d t\xedmar",d:"ein dagur",dd:"%d dagar",M:"ein m\xe1na\xf0ur",MM:"%d m\xe1na\xf0ir",y:"eitt \xe1r",yy:"%d \xe1r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},88239:function(Ce,E,n){!function(S){"use strict";S.defineLocale("fr-ca",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(c,u){switch(u){default:case"M":case"Q":case"D":case"DDD":case"d":return c+(1===c?"er":"e");case"w":case"W":return c+(1===c?"re":"e")}}})}(n(56908))},21702:function(Ce,E,n){!function(S){"use strict";S.defineLocale("fr-ch",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(c,u){switch(u){default:case"M":case"Q":case"D":case"DDD":case"d":return c+(1===c?"er":"e");case"w":case"W":return c+(1===c?"re":"e")}},week:{dow:1,doy:4}})}(n(56908))},63131:function(Ce,E,n){!function(S){"use strict";var c=/(janv\.?|f\xe9vr\.?|mars|avr\.?|mai|juin|juil\.?|ao\xfbt|sept\.?|oct\.?|nov\.?|d\xe9c\.?|janvier|f\xe9vrier|mars|avril|mai|juin|juillet|ao\xfbt|septembre|octobre|novembre|d\xe9cembre)/i,u=[/^janv/i,/^f\xe9vr/i,/^mars/i,/^avr/i,/^mai/i,/^juin/i,/^juil/i,/^ao\xfbt/i,/^sept/i,/^oct/i,/^nov/i,/^d\xe9c/i];S.defineLocale("fr",{months:"janvier_f\xe9vrier_mars_avril_mai_juin_juillet_ao\xfbt_septembre_octobre_novembre_d\xe9cembre".split("_"),monthsShort:"janv._f\xe9vr._mars_avr._mai_juin_juil._ao\xfbt_sept._oct._nov._d\xe9c.".split("_"),monthsRegex:c,monthsShortRegex:c,monthsStrictRegex:/^(janvier|f\xe9vrier|mars|avril|mai|juin|juillet|ao\xfbt|septembre|octobre|novembre|d\xe9cembre)/i,monthsShortStrictRegex:/(janv\.?|f\xe9vr\.?|mars|avr\.?|mai|juin|juil\.?|ao\xfbt|sept\.?|oct\.?|nov\.?|d\xe9c\.?)/i,monthsParse:u,longMonthsParse:u,shortMonthsParse:u,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xe0] LT",nextDay:"[Demain \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[Hier \xe0] LT",lastWeek:"dddd [dernier \xe0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",w:"une semaine",ww:"%d semaines",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal:function(s,h){switch(h){case"D":return s+(1===s?"er":"");default:case"M":case"Q":case"DDD":case"d":return s+(1===s?"er":"e");case"w":case"W":return s+(1===s?"re":"e")}},week:{dow:1,doy:4}})}(n(56908))},267:function(Ce,E,n){!function(S){"use strict";var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),e="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");S.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(o,_){return o?/-MMM-/.test(_)?e[o.month()]:t[o.month()]:t},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[\xf4fr\xfbne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien min\xfat",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(o){return o+(1===o||8===o||o>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},23821:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ga",{months:["Ean\xe1ir","Feabhra","M\xe1rta","Aibre\xe1n","Bealtaine","Meitheamh","I\xfail","L\xfanasa","Me\xe1n F\xf3mhair","Deireadh F\xf3mhair","Samhain","Nollaig"],monthsShort:["Ean","Feabh","M\xe1rt","Aib","Beal","Meith","I\xfail","L\xfan","M.F.","D.F.","Samh","Noll"],monthsParseExact:!0,weekdays:["D\xe9 Domhnaigh","D\xe9 Luain","D\xe9 M\xe1irt","D\xe9 C\xe9adaoin","D\xe9ardaoin","D\xe9 hAoine","D\xe9 Sathairn"],weekdaysShort:["Domh","Luan","M\xe1irt","C\xe9ad","D\xe9ar","Aoine","Sath"],weekdaysMin:["Do","Lu","M\xe1","C\xe9","D\xe9","A","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Am\xe1rach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inn\xe9 ag] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s \xf3 shin",s:"c\xfapla soicind",ss:"%d soicind",m:"n\xf3im\xe9ad",mm:"%d n\xf3im\xe9ad",h:"uair an chloig",hh:"%d uair an chloig",d:"l\xe1",dd:"%d l\xe1",M:"m\xed",MM:"%d m\xedonna",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(h){return h+(1===h?"d":h%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n(56908))},71753:function(Ce,E,n){!function(S){"use strict";S.defineLocale("gd",{months:["Am Faoilleach","An Gearran","Am M\xe0rt","An Giblean","An C\xe8itean","An t-\xd2gmhios","An t-Iuchar","An L\xf9nastal","An t-Sultain","An D\xe0mhair","An t-Samhain","An D\xf9bhlachd"],monthsShort:["Faoi","Gear","M\xe0rt","Gibl","C\xe8it","\xd2gmh","Iuch","L\xf9n","Sult","D\xe0mh","Samh","D\xf9bh"],monthsParseExact:!0,weekdays:["Did\xf2mhnaich","Diluain","Dim\xe0irt","Diciadain","Diardaoin","Dihaoine","Disathairne"],weekdaysShort:["Did","Dil","Dim","Dic","Dia","Dih","Dis"],weekdaysMin:["D\xf2","Lu","M\xe0","Ci","Ar","Ha","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-m\xe0ireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-d\xe8 aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",ss:"%d diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"m\xecos",MM:"%d m\xecosan",y:"bliadhna",yy:"%d bliadhna"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(h){return h+(1===h?"d":h%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n(56908))},4074:function(Ce,E,n){!function(S){"use strict";S.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xu\xf1o_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xu\xf1._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_m\xe9rcores_xoves_venres_s\xe1bado".split("_"),weekdaysShort:"dom._lun._mar._m\xe9r._xov._ven._s\xe1b.".split("_"),weekdaysMin:"do_lu_ma_m\xe9_xo_ve_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"\xe1s":"\xe1")+"] LT"},nextDay:function(){return"[ma\xf1\xe1 "+(1!==this.hours()?"\xe1s":"\xe1")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"\xe1s":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"\xe1":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"\xe1s":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(c){return 0===c.indexOf("un")?"n"+c:"en "+c},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un d\xeda",dd:"%d d\xedas",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},92762:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){var s={s:["\u0925\u094b\u0921\u092f\u093e \u0938\u0945\u0915\u0902\u0921\u093e\u0902\u0928\u0940","\u0925\u094b\u0921\u0947 \u0938\u0945\u0915\u0902\u0921"],ss:[c+" \u0938\u0945\u0915\u0902\u0921\u093e\u0902\u0928\u0940",c+" \u0938\u0945\u0915\u0902\u0921"],m:["\u090f\u0915\u093e \u092e\u093f\u0923\u091f\u093e\u0928","\u090f\u0915 \u092e\u093f\u0928\u0942\u091f"],mm:[c+" \u092e\u093f\u0923\u091f\u093e\u0902\u0928\u0940",c+" \u092e\u093f\u0923\u091f\u093e\u0902"],h:["\u090f\u0915\u093e \u0935\u0930\u093e\u0928","\u090f\u0915 \u0935\u0930"],hh:[c+" \u0935\u0930\u093e\u0902\u0928\u0940",c+" \u0935\u0930\u093e\u0902"],d:["\u090f\u0915\u093e \u0926\u093f\u0938\u093e\u0928","\u090f\u0915 \u0926\u0940\u0938"],dd:[c+" \u0926\u093f\u0938\u093e\u0902\u0928\u0940",c+" \u0926\u0940\u0938"],M:["\u090f\u0915\u093e \u092e\u094d\u0939\u092f\u0928\u094d\u092f\u093e\u0928","\u090f\u0915 \u092e\u094d\u0939\u092f\u0928\u094b"],MM:[c+" \u092e\u094d\u0939\u092f\u0928\u094d\u092f\u093e\u0928\u0940",c+" \u092e\u094d\u0939\u092f\u0928\u0947"],y:["\u090f\u0915\u093e \u0935\u0930\u094d\u0938\u093e\u0928","\u090f\u0915 \u0935\u0930\u094d\u0938"],yy:[c+" \u0935\u0930\u094d\u0938\u093e\u0902\u0928\u0940",c+" \u0935\u0930\u094d\u0938\u093e\u0902"]};return _?s[o][0]:s[o][1]}S.defineLocale("gom-deva",{months:{standalone:"\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u090f\u092a\u094d\u0930\u0940\u0932_\u092e\u0947_\u091c\u0942\u0928_\u091c\u0941\u0932\u092f_\u0911\u0917\u0938\u094d\u091f_\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930_\u0911\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930_\u0921\u093f\u0938\u0947\u0902\u092c\u0930".split("_"),format:"\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940\u091a\u094d\u092f\u093e_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940\u091a\u094d\u092f\u093e_\u092e\u093e\u0930\u094d\u091a\u093e\u091a\u094d\u092f\u093e_\u090f\u092a\u094d\u0930\u0940\u0932\u093e\u091a\u094d\u092f\u093e_\u092e\u0947\u092f\u093e\u091a\u094d\u092f\u093e_\u091c\u0942\u0928\u093e\u091a\u094d\u092f\u093e_\u091c\u0941\u0932\u092f\u093e\u091a\u094d\u092f\u093e_\u0911\u0917\u0938\u094d\u091f\u093e\u091a\u094d\u092f\u093e_\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930\u093e\u091a\u094d\u092f\u093e_\u0911\u0915\u094d\u091f\u094b\u092c\u0930\u093e\u091a\u094d\u092f\u093e_\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930\u093e\u091a\u094d\u092f\u093e_\u0921\u093f\u0938\u0947\u0902\u092c\u0930\u093e\u091a\u094d\u092f\u093e".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"\u091c\u093e\u0928\u0947._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a_\u090f\u092a\u094d\u0930\u0940._\u092e\u0947_\u091c\u0942\u0928_\u091c\u0941\u0932._\u0911\u0917._\u0938\u092a\u094d\u091f\u0947\u0902._\u0911\u0915\u094d\u091f\u094b._\u0928\u094b\u0935\u094d\u0939\u0947\u0902._\u0921\u093f\u0938\u0947\u0902.".split("_"),monthsParseExact:!0,weekdays:"\u0906\u092f\u0924\u093e\u0930_\u0938\u094b\u092e\u093e\u0930_\u092e\u0902\u0917\u0933\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u092c\u093f\u0930\u0947\u0938\u094d\u0924\u093e\u0930_\u0938\u0941\u0915\u094d\u0930\u093e\u0930_\u0936\u0947\u0928\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0906\u092f\u0924._\u0938\u094b\u092e._\u092e\u0902\u0917\u0933._\u092c\u0941\u0927._\u092c\u094d\u0930\u0947\u0938\u094d\u0924._\u0938\u0941\u0915\u094d\u0930._\u0936\u0947\u0928.".split("_"),weekdaysMin:"\u0906_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u092c\u094d\u0930\u0947_\u0938\u0941_\u0936\u0947".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]",LTS:"A h:mm:ss [\u0935\u093e\u091c\u0924\u093e\u0902]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]",llll:"ddd, D MMM YYYY, A h:mm [\u0935\u093e\u091c\u0924\u093e\u0902]"},calendar:{sameDay:"[\u0906\u092f\u091c] LT",nextDay:"[\u092b\u093e\u0932\u094d\u092f\u093e\u0902] LT",nextWeek:"[\u092b\u0941\u0921\u0932\u094b] dddd[,] LT",lastDay:"[\u0915\u093e\u0932] LT",lastWeek:"[\u092b\u093e\u091f\u0932\u094b] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s \u0906\u0926\u0940\u0902",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(\u0935\u0947\u0930)/,ordinal:function(u,o){return"D"===o?u+"\u0935\u0947\u0930":u},week:{dow:0,doy:3},meridiemParse:/\u0930\u093e\u0924\u0940|\u0938\u0915\u093e\u0933\u0940\u0902|\u0926\u0928\u092a\u093e\u0930\u093e\u0902|\u0938\u093e\u0902\u091c\u0947/,meridiemHour:function(u,o){return 12===u&&(u=0),"\u0930\u093e\u0924\u0940"===o?u<4?u:u+12:"\u0938\u0915\u093e\u0933\u0940\u0902"===o?u:"\u0926\u0928\u092a\u093e\u0930\u093e\u0902"===o?u>12?u:u+12:"\u0938\u093e\u0902\u091c\u0947"===o?u+12:void 0},meridiem:function(u,o,_){return u<4?"\u0930\u093e\u0924\u0940":u<12?"\u0938\u0915\u093e\u0933\u0940\u0902":u<16?"\u0926\u0928\u092a\u093e\u0930\u093e\u0902":u<20?"\u0938\u093e\u0902\u091c\u0947":"\u0930\u093e\u0924\u0940"}})}(n(56908))},5969:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){var s={s:["thoddea sekondamni","thodde sekond"],ss:[c+" sekondamni",c+" sekond"],m:["eka mintan","ek minut"],mm:[c+" mintamni",c+" mintam"],h:["eka voran","ek vor"],hh:[c+" voramni",c+" voram"],d:["eka disan","ek dis"],dd:[c+" disamni",c+" dis"],M:["eka mhoinean","ek mhoino"],MM:[c+" mhoineamni",c+" mhoine"],y:["eka vorsan","ek voros"],yy:[c+" vorsamni",c+" vorsam"]};return _?s[o][0]:s[o][1]}S.defineLocale("gom-latn",{months:{standalone:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),format:"Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Fuddlo] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fattlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(u,o){return"D"===o?u+"er":u},week:{dow:0,doy:3},meridiemParse:/rati|sokallim|donparam|sanje/,meridiemHour:function(u,o){return 12===u&&(u=0),"rati"===o?u<4?u:u+12:"sokallim"===o?u:"donparam"===o?u>12?u:u+12:"sanje"===o?u+12:void 0},meridiem:function(u,o,_){return u<4?"rati":u<12?"sokallim":u<16?"donparam":u<20?"sanje":"rati"}})}(n(56908))},82809:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0ae7",2:"\u0ae8",3:"\u0ae9",4:"\u0aea",5:"\u0aeb",6:"\u0aec",7:"\u0aed",8:"\u0aee",9:"\u0aef",0:"\u0ae6"},e={"\u0ae7":"1","\u0ae8":"2","\u0ae9":"3","\u0aea":"4","\u0aeb":"5","\u0aec":"6","\u0aed":"7","\u0aee":"8","\u0aef":"9","\u0ae6":"0"};S.defineLocale("gu",{months:"\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1\u0a86\u0ab0\u0ac0_\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1\u0a86\u0ab0\u0ac0_\u0aae\u0abe\u0ab0\u0acd\u0a9a_\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2_\u0aae\u0ac7_\u0a9c\u0ac2\u0aa8_\u0a9c\u0ac1\u0ab2\u0abe\u0a88_\u0a91\u0a97\u0ab8\u0acd\u0a9f_\u0ab8\u0aaa\u0acd\u0a9f\u0ac7\u0aae\u0acd\u0aac\u0ab0_\u0a91\u0a95\u0acd\u0a9f\u0acd\u0aac\u0ab0_\u0aa8\u0ab5\u0ac7\u0aae\u0acd\u0aac\u0ab0_\u0aa1\u0abf\u0ab8\u0ac7\u0aae\u0acd\u0aac\u0ab0".split("_"),monthsShort:"\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1._\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1._\u0aae\u0abe\u0ab0\u0acd\u0a9a_\u0a8f\u0aaa\u0acd\u0ab0\u0abf._\u0aae\u0ac7_\u0a9c\u0ac2\u0aa8_\u0a9c\u0ac1\u0ab2\u0abe._\u0a91\u0a97._\u0ab8\u0aaa\u0acd\u0a9f\u0ac7._\u0a91\u0a95\u0acd\u0a9f\u0acd._\u0aa8\u0ab5\u0ac7._\u0aa1\u0abf\u0ab8\u0ac7.".split("_"),monthsParseExact:!0,weekdays:"\u0ab0\u0ab5\u0abf\u0ab5\u0abe\u0ab0_\u0ab8\u0acb\u0aae\u0ab5\u0abe\u0ab0_\u0aae\u0a82\u0a97\u0ab3\u0ab5\u0abe\u0ab0_\u0aac\u0ac1\u0aa7\u0acd\u0ab5\u0abe\u0ab0_\u0a97\u0ac1\u0ab0\u0ac1\u0ab5\u0abe\u0ab0_\u0ab6\u0ac1\u0a95\u0acd\u0ab0\u0ab5\u0abe\u0ab0_\u0ab6\u0aa8\u0abf\u0ab5\u0abe\u0ab0".split("_"),weekdaysShort:"\u0ab0\u0ab5\u0abf_\u0ab8\u0acb\u0aae_\u0aae\u0a82\u0a97\u0ab3_\u0aac\u0ac1\u0aa7\u0acd_\u0a97\u0ac1\u0ab0\u0ac1_\u0ab6\u0ac1\u0a95\u0acd\u0ab0_\u0ab6\u0aa8\u0abf".split("_"),weekdaysMin:"\u0ab0_\u0ab8\u0acb_\u0aae\u0a82_\u0aac\u0ac1_\u0a97\u0ac1_\u0ab6\u0ac1_\u0ab6".split("_"),longDateFormat:{LT:"A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",LTS:"A h:mm:ss \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7",LLLL:"dddd, D MMMM YYYY, A h:mm \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7"},calendar:{sameDay:"[\u0a86\u0a9c] LT",nextDay:"[\u0a95\u0abe\u0ab2\u0ac7] LT",nextWeek:"dddd, LT",lastDay:"[\u0a97\u0a87\u0a95\u0abe\u0ab2\u0ac7] LT",lastWeek:"[\u0aaa\u0abe\u0a9b\u0ab2\u0abe] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0aae\u0abe",past:"%s \u0aaa\u0ab9\u0ac7\u0ab2\u0abe",s:"\u0a85\u0aae\u0ac1\u0a95 \u0aaa\u0ab3\u0acb",ss:"%d \u0ab8\u0ac7\u0a95\u0a82\u0aa1",m:"\u0a8f\u0a95 \u0aae\u0abf\u0aa8\u0abf\u0a9f",mm:"%d \u0aae\u0abf\u0aa8\u0abf\u0a9f",h:"\u0a8f\u0a95 \u0a95\u0ab2\u0abe\u0a95",hh:"%d \u0a95\u0ab2\u0abe\u0a95",d:"\u0a8f\u0a95 \u0aa6\u0abf\u0ab5\u0ab8",dd:"%d \u0aa6\u0abf\u0ab5\u0ab8",M:"\u0a8f\u0a95 \u0aae\u0ab9\u0abf\u0aa8\u0acb",MM:"%d \u0aae\u0ab9\u0abf\u0aa8\u0acb",y:"\u0a8f\u0a95 \u0ab5\u0ab0\u0acd\u0ab7",yy:"%d \u0ab5\u0ab0\u0acd\u0ab7"},preparse:function(o){return o.replace(/[\u0ae7\u0ae8\u0ae9\u0aea\u0aeb\u0aec\u0aed\u0aee\u0aef\u0ae6]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u0ab0\u0abe\u0aa4|\u0aac\u0aaa\u0acb\u0ab0|\u0ab8\u0ab5\u0abe\u0ab0|\u0ab8\u0abe\u0a82\u0a9c/,meridiemHour:function(o,_){return 12===o&&(o=0),"\u0ab0\u0abe\u0aa4"===_?o<4?o:o+12:"\u0ab8\u0ab5\u0abe\u0ab0"===_?o:"\u0aac\u0aaa\u0acb\u0ab0"===_?o>=10?o:o+12:"\u0ab8\u0abe\u0a82\u0a9c"===_?o+12:void 0},meridiem:function(o,_,s){return o<4?"\u0ab0\u0abe\u0aa4":o<10?"\u0ab8\u0ab5\u0abe\u0ab0":o<17?"\u0aac\u0aaa\u0acb\u0ab0":o<20?"\u0ab8\u0abe\u0a82\u0a9c":"\u0ab0\u0abe\u0aa4"},week:{dow:0,doy:6}})}(n(56908))},45402:function(Ce,E,n){!function(S){"use strict";S.defineLocale("he",{months:"\u05d9\u05e0\u05d5\u05d0\u05e8_\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8_\u05de\u05e8\u05e5_\u05d0\u05e4\u05e8\u05d9\u05dc_\u05de\u05d0\u05d9_\u05d9\u05d5\u05e0\u05d9_\u05d9\u05d5\u05dc\u05d9_\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8_\u05e1\u05e4\u05d8\u05de\u05d1\u05e8_\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8_\u05e0\u05d5\u05d1\u05de\u05d1\u05e8_\u05d3\u05e6\u05de\u05d1\u05e8".split("_"),monthsShort:"\u05d9\u05e0\u05d5\u05f3_\u05e4\u05d1\u05e8\u05f3_\u05de\u05e8\u05e5_\u05d0\u05e4\u05e8\u05f3_\u05de\u05d0\u05d9_\u05d9\u05d5\u05e0\u05d9_\u05d9\u05d5\u05dc\u05d9_\u05d0\u05d5\u05d2\u05f3_\u05e1\u05e4\u05d8\u05f3_\u05d0\u05d5\u05e7\u05f3_\u05e0\u05d5\u05d1\u05f3_\u05d3\u05e6\u05de\u05f3".split("_"),weekdays:"\u05e8\u05d0\u05e9\u05d5\u05df_\u05e9\u05e0\u05d9_\u05e9\u05dc\u05d9\u05e9\u05d9_\u05e8\u05d1\u05d9\u05e2\u05d9_\u05d7\u05de\u05d9\u05e9\u05d9_\u05e9\u05d9\u05e9\u05d9_\u05e9\u05d1\u05ea".split("_"),weekdaysShort:"\u05d0\u05f3_\u05d1\u05f3_\u05d2\u05f3_\u05d3\u05f3_\u05d4\u05f3_\u05d5\u05f3_\u05e9\u05f3".split("_"),weekdaysMin:"\u05d0_\u05d1_\u05d2_\u05d3_\u05d4_\u05d5_\u05e9".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [\u05d1]MMMM YYYY",LLL:"D [\u05d1]MMMM YYYY HH:mm",LLLL:"dddd, D [\u05d1]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[\u05d4\u05d9\u05d5\u05dd \u05d1\u05be]LT",nextDay:"[\u05de\u05d7\u05e8 \u05d1\u05be]LT",nextWeek:"dddd [\u05d1\u05e9\u05e2\u05d4] LT",lastDay:"[\u05d0\u05ea\u05de\u05d5\u05dc \u05d1\u05be]LT",lastWeek:"[\u05d1\u05d9\u05d5\u05dd] dddd [\u05d4\u05d0\u05d7\u05e8\u05d5\u05df \u05d1\u05e9\u05e2\u05d4] LT",sameElse:"L"},relativeTime:{future:"\u05d1\u05e2\u05d5\u05d3 %s",past:"\u05dc\u05e4\u05e0\u05d9 %s",s:"\u05de\u05e1\u05e4\u05e8 \u05e9\u05e0\u05d9\u05d5\u05ea",ss:"%d \u05e9\u05e0\u05d9\u05d5\u05ea",m:"\u05d3\u05e7\u05d4",mm:"%d \u05d3\u05e7\u05d5\u05ea",h:"\u05e9\u05e2\u05d4",hh:function(c){return 2===c?"\u05e9\u05e2\u05ea\u05d9\u05d9\u05dd":c+" \u05e9\u05e2\u05d5\u05ea"},d:"\u05d9\u05d5\u05dd",dd:function(c){return 2===c?"\u05d9\u05d5\u05de\u05d9\u05d9\u05dd":c+" \u05d9\u05de\u05d9\u05dd"},M:"\u05d7\u05d5\u05d3\u05e9",MM:function(c){return 2===c?"\u05d7\u05d5\u05d3\u05e9\u05d9\u05d9\u05dd":c+" \u05d7\u05d5\u05d3\u05e9\u05d9\u05dd"},y:"\u05e9\u05e0\u05d4",yy:function(c){return 2===c?"\u05e9\u05e0\u05ea\u05d9\u05d9\u05dd":c%10==0&&10!==c?c+" \u05e9\u05e0\u05d4":c+" \u05e9\u05e0\u05d9\u05dd"}},meridiemParse:/\u05d0\u05d7\u05d4"\u05e6|\u05dc\u05e4\u05e0\u05d4"\u05e6|\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05dc\u05e4\u05e0\u05d5\u05ea \u05d1\u05d5\u05e7\u05e8|\u05d1\u05d1\u05d5\u05e7\u05e8|\u05d1\u05e2\u05e8\u05d1/i,isPM:function(c){return/^(\u05d0\u05d7\u05d4"\u05e6|\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd|\u05d1\u05e2\u05e8\u05d1)$/.test(c)},meridiem:function(c,u,o){return c<5?"\u05dc\u05e4\u05e0\u05d5\u05ea \u05d1\u05d5\u05e7\u05e8":c<10?"\u05d1\u05d1\u05d5\u05e7\u05e8":c<12?o?'\u05dc\u05e4\u05e0\u05d4"\u05e6':"\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd":c<18?o?'\u05d0\u05d7\u05d4"\u05e6':"\u05d0\u05d7\u05e8\u05d9 \u05d4\u05e6\u05d4\u05e8\u05d9\u05d9\u05dd":"\u05d1\u05e2\u05e8\u05d1"}})}(n(56908))},315:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},e={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"},c=[/^\u091c\u0928/i,/^\u092b\u093c\u0930|\u092b\u0930/i,/^\u092e\u093e\u0930\u094d\u091a/i,/^\u0905\u092a\u094d\u0930\u0948/i,/^\u092e\u0908/i,/^\u091c\u0942\u0928/i,/^\u091c\u0941\u0932/i,/^\u0905\u0917/i,/^\u0938\u093f\u0924\u0902|\u0938\u093f\u0924/i,/^\u0905\u0915\u094d\u091f\u0942/i,/^\u0928\u0935|\u0928\u0935\u0902/i,/^\u0926\u093f\u0938\u0902|\u0926\u093f\u0938/i];S.defineLocale("hi",{months:{format:"\u091c\u0928\u0935\u0930\u0940_\u092b\u093c\u0930\u0935\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u0948\u0932_\u092e\u0908_\u091c\u0942\u0928_\u091c\u0941\u0932\u093e\u0908_\u0905\u0917\u0938\u094d\u0924_\u0938\u093f\u0924\u092e\u094d\u092c\u0930_\u0905\u0915\u094d\u091f\u0942\u092c\u0930_\u0928\u0935\u092e\u094d\u092c\u0930_\u0926\u093f\u0938\u092e\u094d\u092c\u0930".split("_"),standalone:"\u091c\u0928\u0935\u0930\u0940_\u092b\u0930\u0935\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u0948\u0932_\u092e\u0908_\u091c\u0942\u0928_\u091c\u0941\u0932\u093e\u0908_\u0905\u0917\u0938\u094d\u0924_\u0938\u093f\u0924\u0902\u092c\u0930_\u0905\u0915\u094d\u091f\u0942\u092c\u0930_\u0928\u0935\u0902\u092c\u0930_\u0926\u093f\u0938\u0902\u092c\u0930".split("_")},monthsShort:"\u091c\u0928._\u092b\u093c\u0930._\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u0948._\u092e\u0908_\u091c\u0942\u0928_\u091c\u0941\u0932._\u0905\u0917._\u0938\u093f\u0924._\u0905\u0915\u094d\u091f\u0942._\u0928\u0935._\u0926\u093f\u0938.".split("_"),weekdays:"\u0930\u0935\u093f\u0935\u093e\u0930_\u0938\u094b\u092e\u0935\u093e\u0930_\u092e\u0902\u0917\u0932\u0935\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u0917\u0941\u0930\u0942\u0935\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930_\u0936\u0928\u093f\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093f_\u0938\u094b\u092e_\u092e\u0902\u0917\u0932_\u092c\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094d\u0930_\u0936\u0928\u093f".split("_"),weekdaysMin:"\u0930_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u092c\u091c\u0947",LTS:"A h:mm:ss \u092c\u091c\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u092c\u091c\u0947",LLLL:"dddd, D MMMM YYYY, A h:mm \u092c\u091c\u0947"},monthsParse:c,longMonthsParse:c,shortMonthsParse:[/^\u091c\u0928/i,/^\u092b\u093c\u0930/i,/^\u092e\u093e\u0930\u094d\u091a/i,/^\u0905\u092a\u094d\u0930\u0948/i,/^\u092e\u0908/i,/^\u091c\u0942\u0928/i,/^\u091c\u0941\u0932/i,/^\u0905\u0917/i,/^\u0938\u093f\u0924/i,/^\u0905\u0915\u094d\u091f\u0942/i,/^\u0928\u0935/i,/^\u0926\u093f\u0938/i],monthsRegex:/^(\u091c\u0928\u0935\u0930\u0940|\u091c\u0928\.?|\u092b\u093c\u0930\u0935\u0930\u0940|\u092b\u0930\u0935\u0930\u0940|\u092b\u093c\u0930\.?|\u092e\u093e\u0930\u094d\u091a?|\u0905\u092a\u094d\u0930\u0948\u0932|\u0905\u092a\u094d\u0930\u0948\.?|\u092e\u0908?|\u091c\u0942\u0928?|\u091c\u0941\u0932\u093e\u0908|\u091c\u0941\u0932\.?|\u0905\u0917\u0938\u094d\u0924|\u0905\u0917\.?|\u0938\u093f\u0924\u092e\u094d\u092c\u0930|\u0938\u093f\u0924\u0902\u092c\u0930|\u0938\u093f\u0924\.?|\u0905\u0915\u094d\u091f\u0942\u092c\u0930|\u0905\u0915\u094d\u091f\u0942\.?|\u0928\u0935\u092e\u094d\u092c\u0930|\u0928\u0935\u0902\u092c\u0930|\u0928\u0935\.?|\u0926\u093f\u0938\u092e\u094d\u092c\u0930|\u0926\u093f\u0938\u0902\u092c\u0930|\u0926\u093f\u0938\.?)/i,monthsShortRegex:/^(\u091c\u0928\u0935\u0930\u0940|\u091c\u0928\.?|\u092b\u093c\u0930\u0935\u0930\u0940|\u092b\u0930\u0935\u0930\u0940|\u092b\u093c\u0930\.?|\u092e\u093e\u0930\u094d\u091a?|\u0905\u092a\u094d\u0930\u0948\u0932|\u0905\u092a\u094d\u0930\u0948\.?|\u092e\u0908?|\u091c\u0942\u0928?|\u091c\u0941\u0932\u093e\u0908|\u091c\u0941\u0932\.?|\u0905\u0917\u0938\u094d\u0924|\u0905\u0917\.?|\u0938\u093f\u0924\u092e\u094d\u092c\u0930|\u0938\u093f\u0924\u0902\u092c\u0930|\u0938\u093f\u0924\.?|\u0905\u0915\u094d\u091f\u0942\u092c\u0930|\u0905\u0915\u094d\u091f\u0942\.?|\u0928\u0935\u092e\u094d\u092c\u0930|\u0928\u0935\u0902\u092c\u0930|\u0928\u0935\.?|\u0926\u093f\u0938\u092e\u094d\u092c\u0930|\u0926\u093f\u0938\u0902\u092c\u0930|\u0926\u093f\u0938\.?)/i,monthsStrictRegex:/^(\u091c\u0928\u0935\u0930\u0940?|\u092b\u093c\u0930\u0935\u0930\u0940|\u092b\u0930\u0935\u0930\u0940?|\u092e\u093e\u0930\u094d\u091a?|\u0905\u092a\u094d\u0930\u0948\u0932?|\u092e\u0908?|\u091c\u0942\u0928?|\u091c\u0941\u0932\u093e\u0908?|\u0905\u0917\u0938\u094d\u0924?|\u0938\u093f\u0924\u092e\u094d\u092c\u0930|\u0938\u093f\u0924\u0902\u092c\u0930|\u0938\u093f\u0924?\.?|\u0905\u0915\u094d\u091f\u0942\u092c\u0930|\u0905\u0915\u094d\u091f\u0942\.?|\u0928\u0935\u092e\u094d\u092c\u0930|\u0928\u0935\u0902\u092c\u0930?|\u0926\u093f\u0938\u092e\u094d\u092c\u0930|\u0926\u093f\u0938\u0902\u092c\u0930?)/i,monthsShortStrictRegex:/^(\u091c\u0928\.?|\u092b\u093c\u0930\.?|\u092e\u093e\u0930\u094d\u091a?|\u0905\u092a\u094d\u0930\u0948\.?|\u092e\u0908?|\u091c\u0942\u0928?|\u091c\u0941\u0932\.?|\u0905\u0917\.?|\u0938\u093f\u0924\.?|\u0905\u0915\u094d\u091f\u0942\.?|\u0928\u0935\.?|\u0926\u093f\u0938\.?)/i,calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u0915\u0932] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u0932] LT",lastWeek:"[\u092a\u093f\u091b\u0932\u0947] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u092e\u0947\u0902",past:"%s \u092a\u0939\u0932\u0947",s:"\u0915\u0941\u091b \u0939\u0940 \u0915\u094d\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0902\u0921",m:"\u090f\u0915 \u092e\u093f\u0928\u091f",mm:"%d \u092e\u093f\u0928\u091f",h:"\u090f\u0915 \u0918\u0902\u091f\u093e",hh:"%d \u0918\u0902\u091f\u0947",d:"\u090f\u0915 \u0926\u093f\u0928",dd:"%d \u0926\u093f\u0928",M:"\u090f\u0915 \u092e\u0939\u0940\u0928\u0947",MM:"%d \u092e\u0939\u0940\u0928\u0947",y:"\u090f\u0915 \u0935\u0930\u094d\u0937",yy:"%d \u0935\u0930\u094d\u0937"},preparse:function(s){return s.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(h){return e[h]})},postformat:function(s){return s.replace(/\d/g,function(h){return t[h]})},meridiemParse:/\u0930\u093e\u0924|\u0938\u0941\u092c\u0939|\u0926\u094b\u092a\u0939\u0930|\u0936\u093e\u092e/,meridiemHour:function(s,h){return 12===s&&(s=0),"\u0930\u093e\u0924"===h?s<4?s:s+12:"\u0938\u0941\u092c\u0939"===h?s:"\u0926\u094b\u092a\u0939\u0930"===h?s>=10?s:s+12:"\u0936\u093e\u092e"===h?s+12:void 0},meridiem:function(s,h,b){return s<4?"\u0930\u093e\u0924":s<10?"\u0938\u0941\u092c\u0939":s<17?"\u0926\u094b\u092a\u0939\u0930":s<20?"\u0936\u093e\u092e":"\u0930\u093e\u0924"},week:{dow:0,doy:6}})}(n(56908))},10410:function(Ce,E,n){!function(S){"use strict";function t(c,u,o){var _=c+" ";switch(o){case"ss":return _+(1===c?"sekunda":2===c||3===c||4===c?"sekunde":"sekundi");case"m":return u?"jedna minuta":"jedne minute";case"mm":return _+(1===c?"minuta":2===c||3===c||4===c?"minute":"minuta");case"h":return u?"jedan sat":"jednog sata";case"hh":return _+(1===c?"sat":2===c||3===c||4===c?"sata":"sati");case"dd":return _+(1===c?"dan":"dana");case"MM":return _+(1===c?"mjesec":2===c||3===c||4===c?"mjeseca":"mjeseci");case"yy":return _+(1===c?"godina":2===c||3===c||4===c?"godine":"godina")}}S.defineLocale("hr",{months:{format:"sije\u010dnja_velja\u010de_o\u017eujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"sije\u010danj_velja\u010da_o\u017eujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._o\u017eu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"Do MMMM YYYY",LLL:"Do MMMM YYYY H:mm",LLLL:"dddd, Do MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010der u] LT",lastWeek:function(){switch(this.day()){case 0:return"[pro\u0161lu] [nedjelju] [u] LT";case 3:return"[pro\u0161lu] [srijedu] [u] LT";case 6:return"[pro\u0161le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[pro\u0161li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},38288:function(Ce,E,n){!function(S){"use strict";var t="vas\xe1rnap h\xe9tf\u0151n kedden szerd\xe1n cs\xfct\xf6rt\xf6k\xf6n p\xe9nteken szombaton".split(" ");function e(o,_,s,h){var b=o;switch(s){case"s":return h||_?"n\xe9h\xe1ny m\xe1sodperc":"n\xe9h\xe1ny m\xe1sodperce";case"ss":return b+(h||_)?" m\xe1sodperc":" m\xe1sodperce";case"m":return"egy"+(h||_?" perc":" perce");case"mm":return b+(h||_?" perc":" perce");case"h":return"egy"+(h||_?" \xf3ra":" \xf3r\xe1ja");case"hh":return b+(h||_?" \xf3ra":" \xf3r\xe1ja");case"d":return"egy"+(h||_?" nap":" napja");case"dd":return b+(h||_?" nap":" napja");case"M":return"egy"+(h||_?" h\xf3nap":" h\xf3napja");case"MM":return b+(h||_?" h\xf3nap":" h\xf3napja");case"y":return"egy"+(h||_?" \xe9v":" \xe9ve");case"yy":return b+(h||_?" \xe9v":" \xe9ve")}return""}function c(o){return(o?"":"[m\xfalt] ")+"["+t[this.day()]+"] LT[-kor]"}S.defineLocale("hu",{months:"janu\xe1r_febru\xe1r_m\xe1rcius_\xe1prilis_m\xe1jus_j\xfanius_j\xfalius_augusztus_szeptember_okt\xf3ber_november_december".split("_"),monthsShort:"jan._feb._m\xe1rc._\xe1pr._m\xe1j._j\xfan._j\xfal._aug._szept._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"vas\xe1rnap_h\xe9tf\u0151_kedd_szerda_cs\xfct\xf6rt\xf6k_p\xe9ntek_szombat".split("_"),weekdaysShort:"vas_h\xe9t_kedd_sze_cs\xfct_p\xe9n_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(_){return"u"===_.charAt(1).toLowerCase()},meridiem:function(_,s,h){return _<12?!0===h?"de":"DE":!0===h?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return c.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return c.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s m\xfalva",past:"%s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},67928:function(Ce,E,n){!function(S){"use strict";S.defineLocale("hy-am",{months:{format:"\u0570\u0578\u0582\u0576\u057e\u0561\u0580\u056b_\u0583\u0565\u057f\u0580\u057e\u0561\u0580\u056b_\u0574\u0561\u0580\u057f\u056b_\u0561\u057a\u0580\u056b\u056c\u056b_\u0574\u0561\u0575\u056b\u057d\u056b_\u0570\u0578\u0582\u0576\u056b\u057d\u056b_\u0570\u0578\u0582\u056c\u056b\u057d\u056b_\u0585\u0563\u0578\u057d\u057f\u0578\u057d\u056b_\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580\u056b_\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b_\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580\u056b_\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b".split("_"),standalone:"\u0570\u0578\u0582\u0576\u057e\u0561\u0580_\u0583\u0565\u057f\u0580\u057e\u0561\u0580_\u0574\u0561\u0580\u057f_\u0561\u057a\u0580\u056b\u056c_\u0574\u0561\u0575\u056b\u057d_\u0570\u0578\u0582\u0576\u056b\u057d_\u0570\u0578\u0582\u056c\u056b\u057d_\u0585\u0563\u0578\u057d\u057f\u0578\u057d_\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580_\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580_\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580_\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580".split("_")},monthsShort:"\u0570\u0576\u057e_\u0583\u057f\u0580_\u0574\u0580\u057f_\u0561\u057a\u0580_\u0574\u0575\u057d_\u0570\u0576\u057d_\u0570\u056c\u057d_\u0585\u0563\u057d_\u057d\u057a\u057f_\u0570\u056f\u057f_\u0576\u0574\u0562_\u0564\u056f\u057f".split("_"),weekdays:"\u056f\u056b\u0580\u0561\u056f\u056b_\u0565\u0580\u056f\u0578\u0582\u0577\u0561\u0562\u0569\u056b_\u0565\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b_\u0579\u0578\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b_\u0570\u056b\u0576\u0563\u0577\u0561\u0562\u0569\u056b_\u0578\u0582\u0580\u0562\u0561\u0569_\u0577\u0561\u0562\u0561\u0569".split("_"),weekdaysShort:"\u056f\u0580\u056f_\u0565\u0580\u056f_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),weekdaysMin:"\u056f\u0580\u056f_\u0565\u0580\u056f_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0569.",LLL:"D MMMM YYYY \u0569., HH:mm",LLLL:"dddd, D MMMM YYYY \u0569., HH:mm"},calendar:{sameDay:"[\u0561\u0575\u057d\u0585\u0580] LT",nextDay:"[\u057e\u0561\u0572\u0568] LT",lastDay:"[\u0565\u0580\u0565\u056f] LT",nextWeek:function(){return"dddd [\u0585\u0580\u0568 \u056a\u0561\u0574\u0568] LT"},lastWeek:function(){return"[\u0561\u0576\u0581\u0561\u056e] dddd [\u0585\u0580\u0568 \u056a\u0561\u0574\u0568] LT"},sameElse:"L"},relativeTime:{future:"%s \u0570\u0565\u057f\u0578",past:"%s \u0561\u057c\u0561\u057b",s:"\u0574\u056b \u0584\u0561\u0576\u056b \u057e\u0561\u0575\u0580\u056f\u0575\u0561\u0576",ss:"%d \u057e\u0561\u0575\u0580\u056f\u0575\u0561\u0576",m:"\u0580\u0578\u057a\u0565",mm:"%d \u0580\u0578\u057a\u0565",h:"\u056a\u0561\u0574",hh:"%d \u056a\u0561\u0574",d:"\u0585\u0580",dd:"%d \u0585\u0580",M:"\u0561\u0574\u056b\u057d",MM:"%d \u0561\u0574\u056b\u057d",y:"\u057f\u0561\u0580\u056b",yy:"%d \u057f\u0561\u0580\u056b"},meridiemParse:/\u0563\u056b\u0577\u0565\u0580\u057e\u0561|\u0561\u057c\u0561\u057e\u0578\u057f\u057e\u0561|\u0581\u0565\u0580\u0565\u056f\u057e\u0561|\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576/,isPM:function(c){return/^(\u0581\u0565\u0580\u0565\u056f\u057e\u0561|\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576)$/.test(c)},meridiem:function(c){return c<4?"\u0563\u056b\u0577\u0565\u0580\u057e\u0561":c<12?"\u0561\u057c\u0561\u057e\u0578\u057f\u057e\u0561":c<17?"\u0581\u0565\u0580\u0565\u056f\u057e\u0561":"\u0565\u0580\u0565\u056f\u0578\u0575\u0561\u0576"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(\u056b\u0576|\u0580\u0564)/,ordinal:function(c,u){switch(u){case"DDD":case"w":case"W":case"DDDo":return 1===c?c+"-\u056b\u0576":c+"-\u0580\u0564";default:return c}},week:{dow:1,doy:7}})}(n(56908))},71334:function(Ce,E,n){!function(S){"use strict";S.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(c,u){return 12===c&&(c=0),"pagi"===u?c:"siang"===u?c>=11?c:c+12:"sore"===u||"malam"===u?c+12:void 0},meridiem:function(c,u,o){return c<11?"pagi":c<15?"siang":c<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:0,doy:6}})}(n(56908))},86959:function(Ce,E,n){!function(S){"use strict";function t(u){return u%100==11||u%10!=1}function e(u,o,_,s){var h=u+" ";switch(_){case"s":return o||s?"nokkrar sek\xfandur":"nokkrum sek\xfandum";case"ss":return t(u)?h+(o||s?"sek\xfandur":"sek\xfandum"):h+"sek\xfanda";case"m":return o?"m\xedn\xfata":"m\xedn\xfatu";case"mm":return t(u)?h+(o||s?"m\xedn\xfatur":"m\xedn\xfatum"):o?h+"m\xedn\xfata":h+"m\xedn\xfatu";case"hh":return t(u)?h+(o||s?"klukkustundir":"klukkustundum"):h+"klukkustund";case"d":return o?"dagur":s?"dag":"degi";case"dd":return t(u)?o?h+"dagar":h+(s?"daga":"d\xf6gum"):o?h+"dagur":h+(s?"dag":"degi");case"M":return o?"m\xe1nu\xf0ur":s?"m\xe1nu\xf0":"m\xe1nu\xf0i";case"MM":return t(u)?o?h+"m\xe1nu\xf0ir":h+(s?"m\xe1nu\xf0i":"m\xe1nu\xf0um"):o?h+"m\xe1nu\xf0ur":h+(s?"m\xe1nu\xf0":"m\xe1nu\xf0i");case"y":return o||s?"\xe1r":"\xe1ri";case"yy":return t(u)?h+(o||s?"\xe1r":"\xe1rum"):h+(o||s?"\xe1r":"\xe1ri")}}S.defineLocale("is",{months:"jan\xfaar_febr\xfaar_mars_apr\xedl_ma\xed_j\xfan\xed_j\xfal\xed_\xe1g\xfast_september_okt\xf3ber_n\xf3vember_desember".split("_"),monthsShort:"jan_feb_mar_apr_ma\xed_j\xfan_j\xfal_\xe1g\xfa_sep_okt_n\xf3v_des".split("_"),weekdays:"sunnudagur_m\xe1nudagur_\xferi\xf0judagur_mi\xf0vikudagur_fimmtudagur_f\xf6studagur_laugardagur".split("_"),weekdaysShort:"sun_m\xe1n_\xferi_mi\xf0_fim_f\xf6s_lau".split("_"),weekdaysMin:"Su_M\xe1_\xder_Mi_Fi_F\xf6_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[\xed dag kl.] LT",nextDay:"[\xe1 morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[\xed g\xe6r kl.] LT",lastWeek:"[s\xed\xf0asta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s s\xed\xf0an",s:e,ss:e,m:e,mm:e,h:"klukkustund",hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},51124:function(Ce,E,n){!function(S){"use strict";S.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xec_marted\xec_mercoled\xec_gioved\xec_venerd\xec_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){return 0===this.day()?"[la scorsa] dddd [alle] LT":"[lo scorso] dddd [alle] LT"},sameElse:"L"},relativeTime:{future:function(c){return(/^[0-9].+$/.test(c)?"tra":"in")+" "+c},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},34864:function(Ce,E,n){!function(S){"use strict";S.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xec_marted\xec_mercoled\xec_gioved\xec_venerd\xec_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:function(){return"[Oggi a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextDay:function(){return"[Domani a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextWeek:function(){return"dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastDay:function(){return"[Ieri a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastWeek:function(){return 0===this.day()?"[La scorsa] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT":"[Lo scorso] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},sameElse:"L"},relativeTime:{future:"tra %s",past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",w:"una settimana",ww:"%d settimane",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},36141:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ja",{eras:[{since:"2019-05-01",offset:1,name:"\u4ee4\u548c",narrow:"\u32ff",abbr:"R"},{since:"1989-01-08",until:"2019-04-30",offset:1,name:"\u5e73\u6210",narrow:"\u337b",abbr:"H"},{since:"1926-12-25",until:"1989-01-07",offset:1,name:"\u662d\u548c",narrow:"\u337c",abbr:"S"},{since:"1912-07-30",until:"1926-12-24",offset:1,name:"\u5927\u6b63",narrow:"\u337d",abbr:"T"},{since:"1873-01-01",until:"1912-07-29",offset:6,name:"\u660e\u6cbb",narrow:"\u337e",abbr:"M"},{since:"0001-01-01",until:"1873-12-31",offset:1,name:"\u897f\u66a6",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"\u7d00\u5143\u524d",narrow:"BC",abbr:"BC"}],eraYearOrdinalRegex:/(\u5143|\d+)\u5e74/,eraYearOrdinalParse:function(c,u){return"\u5143"===u[1]?1:parseInt(u[1]||c,10)},months:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u65e5\u66dc\u65e5_\u6708\u66dc\u65e5_\u706b\u66dc\u65e5_\u6c34\u66dc\u65e5_\u6728\u66dc\u65e5_\u91d1\u66dc\u65e5_\u571f\u66dc\u65e5".split("_"),weekdaysShort:"\u65e5_\u6708_\u706b_\u6c34_\u6728_\u91d1_\u571f".split("_"),weekdaysMin:"\u65e5_\u6708_\u706b_\u6c34_\u6728_\u91d1_\u571f".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5(ddd) HH:mm"},meridiemParse:/\u5348\u524d|\u5348\u5f8c/i,isPM:function(c){return"\u5348\u5f8c"===c},meridiem:function(c,u,o){return c<12?"\u5348\u524d":"\u5348\u5f8c"},calendar:{sameDay:"[\u4eca\u65e5] LT",nextDay:"[\u660e\u65e5] LT",nextWeek:function(c){return c.week()!==this.week()?"[\u6765\u9031]dddd LT":"dddd LT"},lastDay:"[\u6628\u65e5] LT",lastWeek:function(c){return this.week()!==c.week()?"[\u5148\u9031]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}\u65e5/,ordinal:function(c,u){switch(u){case"y":return 1===c?"\u5143\u5e74":c+"\u5e74";case"d":case"D":case"DDD":return c+"\u65e5";default:return c}},relativeTime:{future:"%s\u5f8c",past:"%s\u524d",s:"\u6570\u79d2",ss:"%d\u79d2",m:"1\u5206",mm:"%d\u5206",h:"1\u6642\u9593",hh:"%d\u6642\u9593",d:"1\u65e5",dd:"%d\u65e5",M:"1\u30f6\u6708",MM:"%d\u30f6\u6708",y:"1\u5e74",yy:"%d\u5e74"}})}(n(56908))},29187:function(Ce,E,n){!function(S){"use strict";S.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(c,u){return 12===c&&(c=0),"enjing"===u?c:"siyang"===u?c>=11?c:c+12:"sonten"===u||"ndalu"===u?c+12:void 0},meridiem:function(c,u,o){return c<11?"enjing":c<15?"siyang":c<19?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",ss:"%d detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}})}(n(56908))},42136:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ka",{months:"\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8_\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8_\u10db\u10d0\u10e0\u10e2\u10d8_\u10d0\u10de\u10e0\u10d8\u10da\u10d8_\u10db\u10d0\u10d8\u10e1\u10d8_\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8_\u10d8\u10d5\u10da\u10d8\u10e1\u10d8_\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd_\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8_\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8_\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8_\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8".split("_"),monthsShort:"\u10d8\u10d0\u10dc_\u10d7\u10d4\u10d1_\u10db\u10d0\u10e0_\u10d0\u10de\u10e0_\u10db\u10d0\u10d8_\u10d8\u10d5\u10dc_\u10d8\u10d5\u10da_\u10d0\u10d2\u10d5_\u10e1\u10d4\u10e5_\u10dd\u10e5\u10e2_\u10dc\u10dd\u10d4_\u10d3\u10d4\u10d9".split("_"),weekdays:{standalone:"\u10d9\u10d5\u10d8\u10e0\u10d0_\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8_\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10d8_\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8".split("_"),format:"\u10d9\u10d5\u10d8\u10e0\u10d0\u10e1_\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1_\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10e1_\u10e8\u10d0\u10d1\u10d0\u10d7\u10e1".split("_"),isFormat:/(\u10ec\u10d8\u10dc\u10d0|\u10e8\u10d4\u10db\u10d3\u10d4\u10d2)/},weekdaysShort:"\u10d9\u10d5\u10d8_\u10dd\u10e0\u10e8_\u10e1\u10d0\u10db_\u10dd\u10d7\u10ee_\u10ee\u10e3\u10d7_\u10de\u10d0\u10e0_\u10e8\u10d0\u10d1".split("_"),weekdaysMin:"\u10d9\u10d5_\u10dd\u10e0_\u10e1\u10d0_\u10dd\u10d7_\u10ee\u10e3_\u10de\u10d0_\u10e8\u10d0".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u10d3\u10e6\u10d4\u10e1] LT[-\u10d6\u10d4]",nextDay:"[\u10ee\u10d5\u10d0\u10da] LT[-\u10d6\u10d4]",lastDay:"[\u10d2\u10e3\u10e8\u10d8\u10dc] LT[-\u10d6\u10d4]",nextWeek:"[\u10e8\u10d4\u10db\u10d3\u10d4\u10d2] dddd LT[-\u10d6\u10d4]",lastWeek:"[\u10ec\u10d8\u10dc\u10d0] dddd LT-\u10d6\u10d4",sameElse:"L"},relativeTime:{future:function(c){return c.replace(/(\u10ec\u10d0\u10db|\u10ec\u10e3\u10d7|\u10e1\u10d0\u10d0\u10d7|\u10ec\u10d4\u10da|\u10d3\u10e6|\u10d7\u10d5)(\u10d8|\u10d4)/,function(u,o,_){return"\u10d8"===_?o+"\u10e8\u10d8":o+_+"\u10e8\u10d8"})},past:function(c){return/(\u10ec\u10d0\u10db\u10d8|\u10ec\u10e3\u10d7\u10d8|\u10e1\u10d0\u10d0\u10d7\u10d8|\u10d3\u10e6\u10d4|\u10d7\u10d5\u10d4)/.test(c)?c.replace(/(\u10d8|\u10d4)$/,"\u10d8\u10e1 \u10ec\u10d8\u10dc"):/\u10ec\u10d4\u10da\u10d8/.test(c)?c.replace(/\u10ec\u10d4\u10da\u10d8$/,"\u10ec\u10da\u10d8\u10e1 \u10ec\u10d8\u10dc"):c},s:"\u10e0\u10d0\u10db\u10d3\u10d4\u10dc\u10d8\u10db\u10d4 \u10ec\u10d0\u10db\u10d8",ss:"%d \u10ec\u10d0\u10db\u10d8",m:"\u10ec\u10e3\u10d7\u10d8",mm:"%d \u10ec\u10e3\u10d7\u10d8",h:"\u10e1\u10d0\u10d0\u10d7\u10d8",hh:"%d \u10e1\u10d0\u10d0\u10d7\u10d8",d:"\u10d3\u10e6\u10d4",dd:"%d \u10d3\u10e6\u10d4",M:"\u10d7\u10d5\u10d4",MM:"%d \u10d7\u10d5\u10d4",y:"\u10ec\u10d4\u10da\u10d8",yy:"%d \u10ec\u10d4\u10da\u10d8"},dayOfMonthOrdinalParse:/0|1-\u10da\u10d8|\u10db\u10d4-\d{1,2}|\d{1,2}-\u10d4/,ordinal:function(c){return 0===c?c:1===c?c+"-\u10da\u10d8":c<20||c<=100&&c%20==0||c%100==0?"\u10db\u10d4-"+c:c+"-\u10d4"},week:{dow:1,doy:7}})}(n(56908))},94332:function(Ce,E,n){!function(S){"use strict";var t={0:"-\u0448\u0456",1:"-\u0448\u0456",2:"-\u0448\u0456",3:"-\u0448\u0456",4:"-\u0448\u0456",5:"-\u0448\u0456",6:"-\u0448\u044b",7:"-\u0448\u0456",8:"-\u0448\u0456",9:"-\u0448\u044b",10:"-\u0448\u044b",20:"-\u0448\u044b",30:"-\u0448\u044b",40:"-\u0448\u044b",50:"-\u0448\u0456",60:"-\u0448\u044b",70:"-\u0448\u0456",80:"-\u0448\u0456",90:"-\u0448\u044b",100:"-\u0448\u0456"};S.defineLocale("kk",{months:"\u049b\u0430\u04a3\u0442\u0430\u0440_\u0430\u049b\u043f\u0430\u043d_\u043d\u0430\u0443\u0440\u044b\u0437_\u0441\u04d9\u0443\u0456\u0440_\u043c\u0430\u043c\u044b\u0440_\u043c\u0430\u0443\u0441\u044b\u043c_\u0448\u0456\u043b\u0434\u0435_\u0442\u0430\u043c\u044b\u0437_\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a_\u049b\u0430\u0437\u0430\u043d_\u049b\u0430\u0440\u0430\u0448\u0430_\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d".split("_"),monthsShort:"\u049b\u0430\u04a3_\u0430\u049b\u043f_\u043d\u0430\u0443_\u0441\u04d9\u0443_\u043c\u0430\u043c_\u043c\u0430\u0443_\u0448\u0456\u043b_\u0442\u0430\u043c_\u049b\u044b\u0440_\u049b\u0430\u0437_\u049b\u0430\u0440_\u0436\u0435\u043b".split("_"),weekdays:"\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456_\u0434\u04af\u0439\u0441\u0435\u043d\u0431\u0456_\u0441\u0435\u0439\u0441\u0435\u043d\u0431\u0456_\u0441\u04d9\u0440\u0441\u0435\u043d\u0431\u0456_\u0431\u0435\u0439\u0441\u0435\u043d\u0431\u0456_\u0436\u04b1\u043c\u0430_\u0441\u0435\u043d\u0431\u0456".split("_"),weekdaysShort:"\u0436\u0435\u043a_\u0434\u04af\u0439_\u0441\u0435\u0439_\u0441\u04d9\u0440_\u0431\u0435\u0439_\u0436\u04b1\u043c_\u0441\u0435\u043d".split("_"),weekdaysMin:"\u0436\u043a_\u0434\u0439_\u0441\u0439_\u0441\u0440_\u0431\u0439_\u0436\u043c_\u0441\u043d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04af\u0433\u0456\u043d \u0441\u0430\u0493\u0430\u0442] LT",nextDay:"[\u0415\u0440\u0442\u0435\u04a3 \u0441\u0430\u0493\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0493\u0430\u0442] LT",lastDay:"[\u041a\u0435\u0448\u0435 \u0441\u0430\u0493\u0430\u0442] LT",lastWeek:"[\u04e8\u0442\u043a\u0435\u043d \u0430\u043f\u0442\u0430\u043d\u044b\u04a3] dddd [\u0441\u0430\u0493\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0456\u0448\u0456\u043d\u0434\u0435",past:"%s \u0431\u04b1\u0440\u044b\u043d",s:"\u0431\u0456\u0440\u043d\u0435\u0448\u0435 \u0441\u0435\u043a\u0443\u043d\u0434",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434",m:"\u0431\u0456\u0440 \u043c\u0438\u043d\u0443\u0442",mm:"%d \u043c\u0438\u043d\u0443\u0442",h:"\u0431\u0456\u0440 \u0441\u0430\u0493\u0430\u0442",hh:"%d \u0441\u0430\u0493\u0430\u0442",d:"\u0431\u0456\u0440 \u043a\u04af\u043d",dd:"%d \u043a\u04af\u043d",M:"\u0431\u0456\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0456\u0440 \u0436\u044b\u043b",yy:"%d \u0436\u044b\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0448\u0456|\u0448\u044b)/,ordinal:function(u){return u+(t[u]||t[u%10]||t[u>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},18607:function(Ce,E,n){!function(S){"use strict";var t={1:"\u17e1",2:"\u17e2",3:"\u17e3",4:"\u17e4",5:"\u17e5",6:"\u17e6",7:"\u17e7",8:"\u17e8",9:"\u17e9",0:"\u17e0"},e={"\u17e1":"1","\u17e2":"2","\u17e3":"3","\u17e4":"4","\u17e5":"5","\u17e6":"6","\u17e7":"7","\u17e8":"8","\u17e9":"9","\u17e0":"0"};S.defineLocale("km",{months:"\u1798\u1780\u179a\u17b6_\u1780\u17bb\u1798\u17d2\u1797\u17c8_\u1798\u17b8\u1793\u17b6_\u1798\u17c1\u179f\u17b6_\u17a7\u179f\u1797\u17b6_\u1798\u17b7\u1790\u17bb\u1793\u17b6_\u1780\u1780\u17d2\u1780\u178a\u17b6_\u179f\u17b8\u17a0\u17b6_\u1780\u1789\u17d2\u1789\u17b6_\u178f\u17bb\u179b\u17b6_\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6_\u1792\u17d2\u1793\u17bc".split("_"),monthsShort:"\u1798\u1780\u179a\u17b6_\u1780\u17bb\u1798\u17d2\u1797\u17c8_\u1798\u17b8\u1793\u17b6_\u1798\u17c1\u179f\u17b6_\u17a7\u179f\u1797\u17b6_\u1798\u17b7\u1790\u17bb\u1793\u17b6_\u1780\u1780\u17d2\u1780\u178a\u17b6_\u179f\u17b8\u17a0\u17b6_\u1780\u1789\u17d2\u1789\u17b6_\u178f\u17bb\u179b\u17b6_\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6_\u1792\u17d2\u1793\u17bc".split("_"),weekdays:"\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799_\u1785\u17d0\u1793\u17d2\u1791_\u17a2\u1784\u17d2\u1782\u17b6\u179a_\u1796\u17bb\u1792_\u1796\u17d2\u179a\u17a0\u179f\u17d2\u1794\u178f\u17b7\u17cd_\u179f\u17bb\u1780\u17d2\u179a_\u179f\u17c5\u179a\u17cd".split("_"),weekdaysShort:"\u17a2\u17b6_\u1785_\u17a2_\u1796_\u1796\u17d2\u179a_\u179f\u17bb_\u179f".split("_"),weekdaysMin:"\u17a2\u17b6_\u1785_\u17a2_\u1796_\u1796\u17d2\u179a_\u179f\u17bb_\u179f".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u1796\u17d2\u179a\u17b9\u1780|\u179b\u17d2\u1784\u17b6\u1785/,isPM:function(o){return"\u179b\u17d2\u1784\u17b6\u1785"===o},meridiem:function(o,_,s){return o<12?"\u1796\u17d2\u179a\u17b9\u1780":"\u179b\u17d2\u1784\u17b6\u1785"},calendar:{sameDay:"[\u1790\u17d2\u1784\u17c3\u1793\u17c1\u17c7 \u1798\u17c9\u17c4\u1784] LT",nextDay:"[\u179f\u17d2\u17a2\u17c2\u1780 \u1798\u17c9\u17c4\u1784] LT",nextWeek:"dddd [\u1798\u17c9\u17c4\u1784] LT",lastDay:"[\u1798\u17d2\u179f\u17b7\u179b\u1798\u17b7\u1789 \u1798\u17c9\u17c4\u1784] LT",lastWeek:"dddd [\u179f\u1794\u17d2\u178f\u17b6\u17a0\u17cd\u1798\u17bb\u1793] [\u1798\u17c9\u17c4\u1784] LT",sameElse:"L"},relativeTime:{future:"%s\u1791\u17c0\u178f",past:"%s\u1798\u17bb\u1793",s:"\u1794\u17c9\u17bb\u1793\u17d2\u1798\u17b6\u1793\u179c\u17b7\u1793\u17b6\u1791\u17b8",ss:"%d \u179c\u17b7\u1793\u17b6\u1791\u17b8",m:"\u1798\u17bd\u1799\u1793\u17b6\u1791\u17b8",mm:"%d \u1793\u17b6\u1791\u17b8",h:"\u1798\u17bd\u1799\u1798\u17c9\u17c4\u1784",hh:"%d \u1798\u17c9\u17c4\u1784",d:"\u1798\u17bd\u1799\u1790\u17d2\u1784\u17c3",dd:"%d \u1790\u17d2\u1784\u17c3",M:"\u1798\u17bd\u1799\u1781\u17c2",MM:"%d \u1781\u17c2",y:"\u1798\u17bd\u1799\u1786\u17d2\u1793\u17b6\u17c6",yy:"%d \u1786\u17d2\u1793\u17b6\u17c6"},dayOfMonthOrdinalParse:/\u1791\u17b8\d{1,2}/,ordinal:"\u1791\u17b8%d",preparse:function(o){return o.replace(/[\u17e1\u17e2\u17e3\u17e4\u17e5\u17e6\u17e7\u17e8\u17e9\u17e0]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},week:{dow:1,doy:4}})}(n(56908))},84305:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0ce7",2:"\u0ce8",3:"\u0ce9",4:"\u0cea",5:"\u0ceb",6:"\u0cec",7:"\u0ced",8:"\u0cee",9:"\u0cef",0:"\u0ce6"},e={"\u0ce7":"1","\u0ce8":"2","\u0ce9":"3","\u0cea":"4","\u0ceb":"5","\u0cec":"6","\u0ced":"7","\u0cee":"8","\u0cef":"9","\u0ce6":"0"};S.defineLocale("kn",{months:"\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf_\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf_\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd_\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd_\u0cae\u0cc6\u0cd5_\u0c9c\u0cc2\u0ca8\u0ccd_\u0c9c\u0cc1\u0cb2\u0cc6\u0cd6_\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd_\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd_\u0c85\u0c95\u0ccd\u0c9f\u0cc6\u0cc2\u0cd5\u0cac\u0cb0\u0ccd_\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd_\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd".split("_"),monthsShort:"\u0c9c\u0ca8_\u0cab\u0cc6\u0cac\u0ccd\u0cb0_\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd_\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd_\u0cae\u0cc6\u0cd5_\u0c9c\u0cc2\u0ca8\u0ccd_\u0c9c\u0cc1\u0cb2\u0cc6\u0cd6_\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd_\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82_\u0c85\u0c95\u0ccd\u0c9f\u0cc6\u0cc2\u0cd5_\u0ca8\u0cb5\u0cc6\u0c82_\u0ca1\u0cbf\u0cb8\u0cc6\u0c82".split("_"),monthsParseExact:!0,weekdays:"\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0_\u0cb8\u0cc6\u0cc2\u0cd5\u0cae\u0cb5\u0cbe\u0cb0_\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0_\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0_\u0c97\u0cc1\u0cb0\u0cc1\u0cb5\u0cbe\u0cb0_\u0cb6\u0cc1\u0c95\u0ccd\u0cb0\u0cb5\u0cbe\u0cb0_\u0cb6\u0ca8\u0cbf\u0cb5\u0cbe\u0cb0".split("_"),weekdaysShort:"\u0cad\u0cbe\u0ca8\u0cc1_\u0cb8\u0cc6\u0cc2\u0cd5\u0cae_\u0cae\u0c82\u0c97\u0cb3_\u0cac\u0cc1\u0ca7_\u0c97\u0cc1\u0cb0\u0cc1_\u0cb6\u0cc1\u0c95\u0ccd\u0cb0_\u0cb6\u0ca8\u0cbf".split("_"),weekdaysMin:"\u0cad\u0cbe_\u0cb8\u0cc6\u0cc2\u0cd5_\u0cae\u0c82_\u0cac\u0cc1_\u0c97\u0cc1_\u0cb6\u0cc1_\u0cb6".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0c87\u0c82\u0ca6\u0cc1] LT",nextDay:"[\u0ca8\u0cbe\u0cb3\u0cc6] LT",nextWeek:"dddd, LT",lastDay:"[\u0ca8\u0cbf\u0ca8\u0ccd\u0ca8\u0cc6] LT",lastWeek:"[\u0c95\u0cc6\u0cc2\u0ca8\u0cc6\u0caf] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0ca8\u0c82\u0ca4\u0cb0",past:"%s \u0cb9\u0cbf\u0c82\u0ca6\u0cc6",s:"\u0c95\u0cc6\u0cb2\u0cb5\u0cc1 \u0c95\u0ccd\u0cb7\u0ca3\u0c97\u0cb3\u0cc1",ss:"%d \u0cb8\u0cc6\u0c95\u0cc6\u0c82\u0ca1\u0cc1\u0c97\u0cb3\u0cc1",m:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca8\u0cbf\u0cae\u0cbf\u0cb7",mm:"%d \u0ca8\u0cbf\u0cae\u0cbf\u0cb7",h:"\u0c92\u0c82\u0ca6\u0cc1 \u0c97\u0c82\u0c9f\u0cc6",hh:"%d \u0c97\u0c82\u0c9f\u0cc6",d:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca6\u0cbf\u0ca8",dd:"%d \u0ca6\u0cbf\u0ca8",M:"\u0c92\u0c82\u0ca6\u0cc1 \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1",MM:"%d \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1",y:"\u0c92\u0c82\u0ca6\u0cc1 \u0cb5\u0cb0\u0ccd\u0cb7",yy:"%d \u0cb5\u0cb0\u0ccd\u0cb7"},preparse:function(o){return o.replace(/[\u0ce7\u0ce8\u0ce9\u0cea\u0ceb\u0cec\u0ced\u0cee\u0cef\u0ce6]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf|\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6|\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8|\u0cb8\u0c82\u0c9c\u0cc6/,meridiemHour:function(o,_){return 12===o&&(o=0),"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf"===_?o<4?o:o+12:"\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6"===_?o:"\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8"===_?o>=10?o:o+12:"\u0cb8\u0c82\u0c9c\u0cc6"===_?o+12:void 0},meridiem:function(o,_,s){return o<4?"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf":o<10?"\u0cac\u0cc6\u0cb3\u0cbf\u0c97\u0ccd\u0c97\u0cc6":o<17?"\u0cae\u0ca7\u0ccd\u0caf\u0cbe\u0cb9\u0ccd\u0ca8":o<20?"\u0cb8\u0c82\u0c9c\u0cc6":"\u0cb0\u0cbe\u0ca4\u0ccd\u0cb0\u0cbf"},dayOfMonthOrdinalParse:/\d{1,2}(\u0ca8\u0cc6\u0cd5)/,ordinal:function(o){return o+"\u0ca8\u0cc6\u0cd5"},week:{dow:0,doy:6}})}(n(56908))},70234:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ko",{months:"1\uc6d4_2\uc6d4_3\uc6d4_4\uc6d4_5\uc6d4_6\uc6d4_7\uc6d4_8\uc6d4_9\uc6d4_10\uc6d4_11\uc6d4_12\uc6d4".split("_"),monthsShort:"1\uc6d4_2\uc6d4_3\uc6d4_4\uc6d4_5\uc6d4_6\uc6d4_7\uc6d4_8\uc6d4_9\uc6d4_10\uc6d4_11\uc6d4_12\uc6d4".split("_"),weekdays:"\uc77c\uc694\uc77c_\uc6d4\uc694\uc77c_\ud654\uc694\uc77c_\uc218\uc694\uc77c_\ubaa9\uc694\uc77c_\uae08\uc694\uc77c_\ud1a0\uc694\uc77c".split("_"),weekdaysShort:"\uc77c_\uc6d4_\ud654_\uc218_\ubaa9_\uae08_\ud1a0".split("_"),weekdaysMin:"\uc77c_\uc6d4_\ud654_\uc218_\ubaa9_\uae08_\ud1a0".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY\ub144 MMMM D\uc77c",LLL:"YYYY\ub144 MMMM D\uc77c A h:mm",LLLL:"YYYY\ub144 MMMM D\uc77c dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY\ub144 MMMM D\uc77c",lll:"YYYY\ub144 MMMM D\uc77c A h:mm",llll:"YYYY\ub144 MMMM D\uc77c dddd A h:mm"},calendar:{sameDay:"\uc624\ub298 LT",nextDay:"\ub0b4\uc77c LT",nextWeek:"dddd LT",lastDay:"\uc5b4\uc81c LT",lastWeek:"\uc9c0\ub09c\uc8fc dddd LT",sameElse:"L"},relativeTime:{future:"%s \ud6c4",past:"%s \uc804",s:"\uba87 \ucd08",ss:"%d\ucd08",m:"1\ubd84",mm:"%d\ubd84",h:"\ud55c \uc2dc\uac04",hh:"%d\uc2dc\uac04",d:"\ud558\ub8e8",dd:"%d\uc77c",M:"\ud55c \ub2ec",MM:"%d\ub2ec",y:"\uc77c \ub144",yy:"%d\ub144"},dayOfMonthOrdinalParse:/\d{1,2}(\uc77c|\uc6d4|\uc8fc)/,ordinal:function(c,u){switch(u){case"d":case"D":case"DDD":return c+"\uc77c";case"M":return c+"\uc6d4";case"w":case"W":return c+"\uc8fc";default:return c}},meridiemParse:/\uc624\uc804|\uc624\ud6c4/,isPM:function(c){return"\uc624\ud6c4"===c},meridiem:function(c,u,o){return c<12?"\uc624\uc804":"\uc624\ud6c4"}})}(n(56908))},16003:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},e={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},c=["\u06a9\u0627\u0646\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645","\u0634\u0648\u0628\u0627\u062a","\u0626\u0627\u0632\u0627\u0631","\u0646\u06cc\u0633\u0627\u0646","\u0626\u0627\u06cc\u0627\u0631","\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646","\u062a\u06d5\u0645\u0645\u0648\u0632","\u0626\u0627\u0628","\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644","\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u0643\u06d5\u0645","\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645","\u0643\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"];S.defineLocale("ku",{months:c,monthsShort:c,weekdays:"\u06cc\u0647\u200c\u0643\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u062f\u0648\u0648\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0633\u06ce\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0686\u0648\u0627\u0631\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u067e\u06ce\u0646\u062c\u0634\u0647\u200c\u0645\u0645\u0647\u200c_\u0647\u0647\u200c\u06cc\u0646\u06cc_\u0634\u0647\u200c\u0645\u0645\u0647\u200c".split("_"),weekdaysShort:"\u06cc\u0647\u200c\u0643\u0634\u0647\u200c\u0645_\u062f\u0648\u0648\u0634\u0647\u200c\u0645_\u0633\u06ce\u0634\u0647\u200c\u0645_\u0686\u0648\u0627\u0631\u0634\u0647\u200c\u0645_\u067e\u06ce\u0646\u062c\u0634\u0647\u200c\u0645_\u0647\u0647\u200c\u06cc\u0646\u06cc_\u0634\u0647\u200c\u0645\u0645\u0647\u200c".split("_"),weekdaysMin:"\u06cc_\u062f_\u0633_\u0686_\u067e_\u0647_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/\u0626\u06ce\u0648\u0627\u0631\u0647\u200c|\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc/,isPM:function(_){return/\u0626\u06ce\u0648\u0627\u0631\u0647\u200c/.test(_)},meridiem:function(_,s,h){return _<12?"\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc":"\u0626\u06ce\u0648\u0627\u0631\u0647\u200c"},calendar:{sameDay:"[\u0626\u0647\u200c\u0645\u0631\u06c6 \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",nextDay:"[\u0628\u0647\u200c\u06cc\u0627\u0646\u06cc \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",nextWeek:"dddd [\u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",lastDay:"[\u062f\u0648\u06ce\u0646\u06ce \u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",lastWeek:"dddd [\u0643\u0627\u062a\u0698\u0645\u06ce\u0631] LT",sameElse:"L"},relativeTime:{future:"\u0644\u0647\u200c %s",past:"%s",s:"\u0686\u0647\u200c\u0646\u062f \u0686\u0631\u0643\u0647\u200c\u06cc\u0647\u200c\u0643",ss:"\u0686\u0631\u0643\u0647\u200c %d",m:"\u06cc\u0647\u200c\u0643 \u062e\u0648\u0644\u0647\u200c\u0643",mm:"%d \u062e\u0648\u0644\u0647\u200c\u0643",h:"\u06cc\u0647\u200c\u0643 \u0643\u0627\u062a\u0698\u0645\u06ce\u0631",hh:"%d \u0643\u0627\u062a\u0698\u0645\u06ce\u0631",d:"\u06cc\u0647\u200c\u0643 \u0695\u06c6\u0698",dd:"%d \u0695\u06c6\u0698",M:"\u06cc\u0647\u200c\u0643 \u0645\u0627\u0646\u06af",MM:"%d \u0645\u0627\u0646\u06af",y:"\u06cc\u0647\u200c\u0643 \u0633\u0627\u06b5",yy:"%d \u0633\u0627\u06b5"},preparse:function(_){return _.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(s){return e[s]}).replace(/\u060c/g,",")},postformat:function(_){return _.replace(/\d/g,function(s){return t[s]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}})}(n(56908))},75061:function(Ce,E,n){!function(S){"use strict";var t={0:"-\u0447\u04af",1:"-\u0447\u0438",2:"-\u0447\u0438",3:"-\u0447\u04af",4:"-\u0447\u04af",5:"-\u0447\u0438",6:"-\u0447\u044b",7:"-\u0447\u0438",8:"-\u0447\u0438",9:"-\u0447\u0443",10:"-\u0447\u0443",20:"-\u0447\u044b",30:"-\u0447\u0443",40:"-\u0447\u044b",50:"-\u0447\u04af",60:"-\u0447\u044b",70:"-\u0447\u0438",80:"-\u0447\u0438",90:"-\u0447\u0443",100:"-\u0447\u04af"};S.defineLocale("ky",{months:"\u044f\u043d\u0432\u0430\u0440\u044c_\u0444\u0435\u0432\u0440\u0430\u043b\u044c_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b\u044c_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c_\u043e\u043a\u0442\u044f\u0431\u0440\u044c_\u043d\u043e\u044f\u0431\u0440\u044c_\u0434\u0435\u043a\u0430\u0431\u0440\u044c".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u0416\u0435\u043a\u0448\u0435\u043c\u0431\u0438_\u0414\u04af\u0439\u0448\u04e9\u043c\u0431\u04af_\u0428\u0435\u0439\u0448\u0435\u043c\u0431\u0438_\u0428\u0430\u0440\u0448\u0435\u043c\u0431\u0438_\u0411\u0435\u0439\u0448\u0435\u043c\u0431\u0438_\u0416\u0443\u043c\u0430_\u0418\u0448\u0435\u043c\u0431\u0438".split("_"),weekdaysShort:"\u0416\u0435\u043a_\u0414\u04af\u0439_\u0428\u0435\u0439_\u0428\u0430\u0440_\u0411\u0435\u0439_\u0416\u0443\u043c_\u0418\u0448\u0435".split("_"),weekdaysMin:"\u0416\u043a_\u0414\u0439_\u0428\u0439_\u0428\u0440_\u0411\u0439_\u0416\u043c_\u0418\u0448".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04af\u0433\u04af\u043d \u0441\u0430\u0430\u0442] LT",nextDay:"[\u042d\u0440\u0442\u0435\u04a3 \u0441\u0430\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0430\u0442] LT",lastDay:"[\u041a\u0435\u0447\u044d\u044d \u0441\u0430\u0430\u0442] LT",lastWeek:"[\u04e8\u0442\u043a\u04e9\u043d \u0430\u043f\u0442\u0430\u043d\u044b\u043d] dddd [\u043a\u04af\u043d\u04af] [\u0441\u0430\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0438\u0447\u0438\u043d\u0434\u0435",past:"%s \u043c\u0443\u0440\u0443\u043d",s:"\u0431\u0438\u0440\u043d\u0435\u0447\u0435 \u0441\u0435\u043a\u0443\u043d\u0434",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434",m:"\u0431\u0438\u0440 \u043c\u04af\u043d\u04e9\u0442",mm:"%d \u043c\u04af\u043d\u04e9\u0442",h:"\u0431\u0438\u0440 \u0441\u0430\u0430\u0442",hh:"%d \u0441\u0430\u0430\u0442",d:"\u0431\u0438\u0440 \u043a\u04af\u043d",dd:"%d \u043a\u04af\u043d",M:"\u0431\u0438\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0438\u0440 \u0436\u044b\u043b",yy:"%d \u0436\u044b\u043b"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0447\u0438|\u0447\u044b|\u0447\u04af|\u0447\u0443)/,ordinal:function(u){return u+(t[u]||t[u%10]||t[u>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},32786:function(Ce,E,n){!function(S){"use strict";function t(_,s,h,b){var T={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return s?T[h][0]:T[h][1]}function u(_){if(_=parseInt(_,10),isNaN(_))return!1;if(_<0)return!0;if(_<10)return 4<=_&&_<=7;if(_<100){var s=_%10;return u(0===s?_/10:s)}if(_<1e4){for(;_>=10;)_/=10;return u(_)}return u(_/=1e3)}S.defineLocale("lb",{months:"Januar_Februar_M\xe4erz_Abr\xebll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_M\xe9indeg_D\xebnschdeg_M\xebttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._M\xe9._D\xeb._M\xeb._Do._Fr._Sa.".split("_"),weekdaysMin:"So_M\xe9_D\xeb_M\xeb_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[G\xebschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:function e(_){return u(_.substr(0,_.indexOf(" ")))?"a "+_:"an "+_},past:function c(_){return u(_.substr(0,_.indexOf(" ")))?"viru "+_:"virun "+_},s:"e puer Sekonnen",ss:"%d Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d M\xe9int",y:t,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},66183:function(Ce,E,n){!function(S){"use strict";S.defineLocale("lo",{months:"\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99_\u0e81\u0eb8\u0ea1\u0e9e\u0eb2_\u0ea1\u0eb5\u0e99\u0eb2_\u0ec0\u0ea1\u0eaa\u0eb2_\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2_\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2_\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94_\u0eaa\u0eb4\u0e87\u0eab\u0eb2_\u0e81\u0eb1\u0e99\u0e8d\u0eb2_\u0e95\u0eb8\u0ea5\u0eb2_\u0e9e\u0eb0\u0e88\u0eb4\u0e81_\u0e97\u0eb1\u0e99\u0ea7\u0eb2".split("_"),monthsShort:"\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99_\u0e81\u0eb8\u0ea1\u0e9e\u0eb2_\u0ea1\u0eb5\u0e99\u0eb2_\u0ec0\u0ea1\u0eaa\u0eb2_\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2_\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2_\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94_\u0eaa\u0eb4\u0e87\u0eab\u0eb2_\u0e81\u0eb1\u0e99\u0e8d\u0eb2_\u0e95\u0eb8\u0ea5\u0eb2_\u0e9e\u0eb0\u0e88\u0eb4\u0e81_\u0e97\u0eb1\u0e99\u0ea7\u0eb2".split("_"),weekdays:"\u0ead\u0eb2\u0e97\u0eb4\u0e94_\u0e88\u0eb1\u0e99_\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99_\u0e9e\u0eb8\u0e94_\u0e9e\u0eb0\u0eab\u0eb1\u0e94_\u0eaa\u0eb8\u0e81_\u0ec0\u0eaa\u0ebb\u0eb2".split("_"),weekdaysShort:"\u0e97\u0eb4\u0e94_\u0e88\u0eb1\u0e99_\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99_\u0e9e\u0eb8\u0e94_\u0e9e\u0eb0\u0eab\u0eb1\u0e94_\u0eaa\u0eb8\u0e81_\u0ec0\u0eaa\u0ebb\u0eb2".split("_"),weekdaysMin:"\u0e97_\u0e88_\u0ead\u0e84_\u0e9e_\u0e9e\u0eab_\u0eaa\u0e81_\u0eaa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"\u0ea7\u0eb1\u0e99dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0e95\u0ead\u0e99\u0ec0\u0e8a\u0ebb\u0ec9\u0eb2|\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87/,isPM:function(c){return"\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87"===c},meridiem:function(c,u,o){return c<12?"\u0e95\u0ead\u0e99\u0ec0\u0e8a\u0ebb\u0ec9\u0eb2":"\u0e95\u0ead\u0e99\u0ec1\u0ea5\u0e87"},calendar:{sameDay:"[\u0ea1\u0eb7\u0ec9\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",nextDay:"[\u0ea1\u0eb7\u0ec9\u0ead\u0eb7\u0ec8\u0e99\u0ec0\u0ea7\u0ea5\u0eb2] LT",nextWeek:"[\u0ea7\u0eb1\u0e99]dddd[\u0edc\u0ec9\u0eb2\u0ec0\u0ea7\u0ea5\u0eb2] LT",lastDay:"[\u0ea1\u0eb7\u0ec9\u0ea7\u0eb2\u0e99\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",lastWeek:"[\u0ea7\u0eb1\u0e99]dddd[\u0ec1\u0ea5\u0ec9\u0ea7\u0e99\u0eb5\u0ec9\u0ec0\u0ea7\u0ea5\u0eb2] LT",sameElse:"L"},relativeTime:{future:"\u0ead\u0eb5\u0e81 %s",past:"%s\u0e9c\u0ec8\u0eb2\u0e99\u0ea1\u0eb2",s:"\u0e9a\u0ecd\u0ec8\u0ec0\u0e97\u0ebb\u0ec8\u0eb2\u0ec3\u0e94\u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5",ss:"%d \u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5",m:"1 \u0e99\u0eb2\u0e97\u0eb5",mm:"%d \u0e99\u0eb2\u0e97\u0eb5",h:"1 \u0e8a\u0ebb\u0ec8\u0ea7\u0ec2\u0ea1\u0e87",hh:"%d \u0e8a\u0ebb\u0ec8\u0ea7\u0ec2\u0ea1\u0e87",d:"1 \u0ea1\u0eb7\u0ec9",dd:"%d \u0ea1\u0eb7\u0ec9",M:"1 \u0ec0\u0e94\u0eb7\u0ead\u0e99",MM:"%d \u0ec0\u0e94\u0eb7\u0ead\u0e99",y:"1 \u0e9b\u0eb5",yy:"%d \u0e9b\u0eb5"},dayOfMonthOrdinalParse:/(\u0e97\u0eb5\u0ec8)\d{1,2}/,ordinal:function(c){return"\u0e97\u0eb5\u0ec8"+c}})}(n(56908))},50029:function(Ce,E,n){!function(S){"use strict";var t={ss:"sekund\u0117_sekund\u017ei\u0173_sekundes",m:"minut\u0117_minut\u0117s_minut\u0119",mm:"minut\u0117s_minu\u010di\u0173_minutes",h:"valanda_valandos_valand\u0105",hh:"valandos_valand\u0173_valandas",d:"diena_dienos_dien\u0105",dd:"dienos_dien\u0173_dienas",M:"m\u0117nuo_m\u0117nesio_m\u0117nes\u012f",MM:"m\u0117nesiai_m\u0117nesi\u0173_m\u0117nesius",y:"metai_met\u0173_metus",yy:"metai_met\u0173_metus"};function c(h,b,T,y){return b?o(T)[0]:y?o(T)[1]:o(T)[2]}function u(h){return h%10==0||h>10&&h<20}function o(h){return t[h].split("_")}function _(h,b,T,y){var Y=h+" ";return 1===h?Y+c(0,b,T[0],y):b?Y+(u(h)?o(T)[1]:o(T)[0]):y?Y+o(T)[1]:Y+(u(h)?o(T)[1]:o(T)[2])}S.defineLocale("lt",{months:{format:"sausio_vasario_kovo_baland\u017eio_gegu\u017e\u0117s_bir\u017eelio_liepos_rugpj\u016b\u010dio_rugs\u0117jo_spalio_lapkri\u010dio_gruod\u017eio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegu\u017e\u0117_bir\u017eelis_liepa_rugpj\u016btis_rugs\u0117jis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadien\u012f_pirmadien\u012f_antradien\u012f_tre\u010diadien\u012f_ketvirtadien\u012f_penktadien\u012f_\u0161e\u0161tadien\u012f".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_tre\u010diadienis_ketvirtadienis_penktadienis_\u0161e\u0161tadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_\u0160e\u0161".split("_"),weekdaysMin:"S_P_A_T_K_Pn_\u0160".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[\u0160iandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Pra\u0117jus\u012f] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prie\u0161 %s",s:function e(h,b,T,y){return b?"kelios sekund\u0117s":y?"keli\u0173 sekund\u017ei\u0173":"kelias sekundes"},ss:_,m:c,mm:_,h:c,hh:_,d:c,dd:_,M:c,MM:_,y:c,yy:_},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(b){return b+"-oji"},week:{dow:1,doy:4}})}(n(56908))},24169:function(Ce,E,n){!function(S){"use strict";var t={ss:"sekundes_sekund\u0113m_sekunde_sekundes".split("_"),m:"min\u016btes_min\u016bt\u0113m_min\u016bte_min\u016btes".split("_"),mm:"min\u016btes_min\u016bt\u0113m_min\u016bte_min\u016btes".split("_"),h:"stundas_stund\u0101m_stunda_stundas".split("_"),hh:"stundas_stund\u0101m_stunda_stundas".split("_"),d:"dienas_dien\u0101m_diena_dienas".split("_"),dd:"dienas_dien\u0101m_diena_dienas".split("_"),M:"m\u0113ne\u0161a_m\u0113ne\u0161iem_m\u0113nesis_m\u0113ne\u0161i".split("_"),MM:"m\u0113ne\u0161a_m\u0113ne\u0161iem_m\u0113nesis_m\u0113ne\u0161i".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function e(s,h,b){return b?h%10==1&&h%100!=11?s[2]:s[3]:h%10==1&&h%100!=11?s[0]:s[1]}function c(s,h,b){return s+" "+e(t[b],s,h)}function u(s,h,b){return e(t[b],s,h)}S.defineLocale("lv",{months:"janv\u0101ris_febru\u0101ris_marts_apr\u012blis_maijs_j\u016bnijs_j\u016blijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_j\u016bn_j\u016bl_aug_sep_okt_nov_dec".split("_"),weekdays:"sv\u0113tdiena_pirmdiena_otrdiena_tre\u0161diena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[\u0160odien pulksten] LT",nextDay:"[R\u012bt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pag\u0101ju\u0161\u0101] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"p\u0113c %s",past:"pirms %s",s:function o(s,h){return h?"da\u017eas sekundes":"da\u017e\u0101m sekund\u0113m"},ss:c,m:u,mm:c,h:u,hh:c,d:u,dd:c,M:u,MM:c,y:u,yy:c},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},68577:function(Ce,E,n){!function(S){"use strict";var t={words:{ss:["sekund","sekunda","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(u,o){return 1===u?o[0]:u>=2&&u<=4?o[1]:o[2]},translate:function(u,o,_){var s=t.words[_];return 1===_.length?o?s[0]:s[1]:u+" "+t.correctGrammaticalCase(u,s)}};S.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010de u] LT",lastWeek:function(){return["[pro\u0161le] [nedjelje] [u] LT","[pro\u0161log] [ponedjeljka] [u] LT","[pro\u0161log] [utorka] [u] LT","[pro\u0161le] [srijede] [u] LT","[pro\u0161log] [\u010detvrtka] [u] LT","[pro\u0161log] [petka] [u] LT","[pro\u0161le] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},68177:function(Ce,E,n){!function(S){"use strict";S.defineLocale("mi",{months:"Kohi-t\u0101te_Hui-tanguru_Pout\u016b-te-rangi_Paenga-wh\u0101wh\u0101_Haratua_Pipiri_H\u014dngoingoi_Here-turi-k\u014dk\u0101_Mahuru_Whiringa-\u0101-nuku_Whiringa-\u0101-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_H\u014dngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"R\u0101tapu_Mane_T\u016brei_Wenerei_T\u0101ite_Paraire_H\u0101tarei".split("_"),weekdaysShort:"Ta_Ma_T\u016b_We_T\u0101i_Pa_H\u0101".split("_"),weekdaysMin:"Ta_Ma_T\u016b_We_T\u0101i_Pa_H\u0101".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te h\u0113kona ruarua",ss:"%d h\u0113kona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},50337:function(Ce,E,n){!function(S){"use strict";S.defineLocale("mk",{months:"\u0458\u0430\u043d\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0458_\u0458\u0443\u043d\u0438_\u0458\u0443\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438_\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438_\u043d\u043e\u0435\u043c\u0432\u0440\u0438_\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438".split("_"),monthsShort:"\u0458\u0430\u043d_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433_\u0441\u0435\u043f_\u043e\u043a\u0442_\u043d\u043e\u0435_\u0434\u0435\u043a".split("_"),weekdays:"\u043d\u0435\u0434\u0435\u043b\u0430_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0440\u0442\u043e\u043a_\u043f\u0435\u0442\u043e\u043a_\u0441\u0430\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434_\u043f\u043e\u043d_\u0432\u0442\u043e_\u0441\u0440\u0435_\u0447\u0435\u0442_\u043f\u0435\u0442_\u0441\u0430\u0431".split("_"),weekdaysMin:"\u043de_\u043fo_\u0432\u0442_\u0441\u0440_\u0447\u0435_\u043f\u0435_\u0441a".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u0435\u043d\u0435\u0441 \u0432\u043e] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432\u043e] LT",nextWeek:"[\u0412\u043e] dddd [\u0432\u043e] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432\u043e] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[\u0418\u0437\u043c\u0438\u043d\u0430\u0442\u0430\u0442\u0430] dddd [\u0432\u043e] LT";case 1:case 2:case 4:case 5:return"[\u0418\u0437\u043c\u0438\u043d\u0430\u0442\u0438\u043e\u0442] dddd [\u0432\u043e] LT"}},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"\u043f\u0440\u0435\u0434 %s",s:"\u043d\u0435\u043a\u043e\u043b\u043a\u0443 \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434\u0438",m:"\u0435\u0434\u043d\u0430 \u043c\u0438\u043d\u0443\u0442\u0430",mm:"%d \u043c\u0438\u043d\u0443\u0442\u0438",h:"\u0435\u0434\u0435\u043d \u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0435\u0434\u0435\u043d \u0434\u0435\u043d",dd:"%d \u0434\u0435\u043d\u0430",M:"\u0435\u0434\u0435\u043d \u043c\u0435\u0441\u0435\u0446",MM:"%d \u043c\u0435\u0441\u0435\u0446\u0438",y:"\u0435\u0434\u043d\u0430 \u0433\u043e\u0434\u0438\u043d\u0430",yy:"%d \u0433\u043e\u0434\u0438\u043d\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0435\u0432|\u0435\u043d|\u0442\u0438|\u0432\u0438|\u0440\u0438|\u043c\u0438)/,ordinal:function(c){var u=c%10,o=c%100;return 0===c?c+"-\u0435\u0432":0===o?c+"-\u0435\u043d":o>10&&o<20?c+"-\u0442\u0438":1===u?c+"-\u0432\u0438":2===u?c+"-\u0440\u0438":7===u||8===u?c+"-\u043c\u0438":c+"-\u0442\u0438"},week:{dow:1,doy:7}})}(n(56908))},65260:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ml",{months:"\u0d1c\u0d28\u0d41\u0d35\u0d30\u0d3f_\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41\u0d35\u0d30\u0d3f_\u0d2e\u0d3e\u0d7c\u0d1a\u0d4d\u0d1a\u0d4d_\u0d0f\u0d2a\u0d4d\u0d30\u0d3f\u0d7d_\u0d2e\u0d47\u0d2f\u0d4d_\u0d1c\u0d42\u0d7a_\u0d1c\u0d42\u0d32\u0d48_\u0d13\u0d17\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d_\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02\u0d2c\u0d7c_\u0d12\u0d15\u0d4d\u0d1f\u0d4b\u0d2c\u0d7c_\u0d28\u0d35\u0d02\u0d2c\u0d7c_\u0d21\u0d3f\u0d38\u0d02\u0d2c\u0d7c".split("_"),monthsShort:"\u0d1c\u0d28\u0d41._\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41._\u0d2e\u0d3e\u0d7c._\u0d0f\u0d2a\u0d4d\u0d30\u0d3f._\u0d2e\u0d47\u0d2f\u0d4d_\u0d1c\u0d42\u0d7a_\u0d1c\u0d42\u0d32\u0d48._\u0d13\u0d17._\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31._\u0d12\u0d15\u0d4d\u0d1f\u0d4b._\u0d28\u0d35\u0d02._\u0d21\u0d3f\u0d38\u0d02.".split("_"),monthsParseExact:!0,weekdays:"\u0d1e\u0d3e\u0d2f\u0d31\u0d3e\u0d34\u0d4d\u0d1a_\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d33\u0d3e\u0d34\u0d4d\u0d1a_\u0d1a\u0d4a\u0d35\u0d4d\u0d35\u0d3e\u0d34\u0d4d\u0d1a_\u0d2c\u0d41\u0d27\u0d28\u0d3e\u0d34\u0d4d\u0d1a_\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d3e\u0d34\u0d4d\u0d1a_\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u0d1a_\u0d36\u0d28\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u0d1a".split("_"),weekdaysShort:"\u0d1e\u0d3e\u0d2f\u0d7c_\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d7e_\u0d1a\u0d4a\u0d35\u0d4d\u0d35_\u0d2c\u0d41\u0d27\u0d7b_\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d02_\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f_\u0d36\u0d28\u0d3f".split("_"),weekdaysMin:"\u0d1e\u0d3e_\u0d24\u0d3f_\u0d1a\u0d4a_\u0d2c\u0d41_\u0d35\u0d4d\u0d2f\u0d3e_\u0d35\u0d46_\u0d36".split("_"),longDateFormat:{LT:"A h:mm -\u0d28\u0d41",LTS:"A h:mm:ss -\u0d28\u0d41",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -\u0d28\u0d41",LLLL:"dddd, D MMMM YYYY, A h:mm -\u0d28\u0d41"},calendar:{sameDay:"[\u0d07\u0d28\u0d4d\u0d28\u0d4d] LT",nextDay:"[\u0d28\u0d3e\u0d33\u0d46] LT",nextWeek:"dddd, LT",lastDay:"[\u0d07\u0d28\u0d4d\u0d28\u0d32\u0d46] LT",lastWeek:"[\u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d",past:"%s \u0d2e\u0d41\u0d7b\u0d2a\u0d4d",s:"\u0d05\u0d7d\u0d2a \u0d28\u0d3f\u0d2e\u0d3f\u0d37\u0d19\u0d4d\u0d19\u0d7e",ss:"%d \u0d38\u0d46\u0d15\u0d4d\u0d15\u0d7b\u0d21\u0d4d",m:"\u0d12\u0d30\u0d41 \u0d2e\u0d3f\u0d28\u0d3f\u0d31\u0d4d\u0d31\u0d4d",mm:"%d \u0d2e\u0d3f\u0d28\u0d3f\u0d31\u0d4d\u0d31\u0d4d",h:"\u0d12\u0d30\u0d41 \u0d2e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d42\u0d7c",hh:"%d \u0d2e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d42\u0d7c",d:"\u0d12\u0d30\u0d41 \u0d26\u0d3f\u0d35\u0d38\u0d02",dd:"%d \u0d26\u0d3f\u0d35\u0d38\u0d02",M:"\u0d12\u0d30\u0d41 \u0d2e\u0d3e\u0d38\u0d02",MM:"%d \u0d2e\u0d3e\u0d38\u0d02",y:"\u0d12\u0d30\u0d41 \u0d35\u0d7c\u0d37\u0d02",yy:"%d \u0d35\u0d7c\u0d37\u0d02"},meridiemParse:/\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f|\u0d30\u0d3e\u0d35\u0d3f\u0d32\u0d46|\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d|\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02|\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f/i,meridiemHour:function(c,u){return 12===c&&(c=0),"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f"===u&&c>=4||"\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d"===u||"\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02"===u?c+12:c},meridiem:function(c,u,o){return c<4?"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f":c<12?"\u0d30\u0d3e\u0d35\u0d3f\u0d32\u0d46":c<17?"\u0d09\u0d1a\u0d4d\u0d1a \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d4d":c<20?"\u0d35\u0d48\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d47\u0d30\u0d02":"\u0d30\u0d3e\u0d24\u0d4d\u0d30\u0d3f"}})}(n(56908))},52325:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){switch(o){case"s":return u?"\u0445\u044d\u0434\u0445\u044d\u043d \u0441\u0435\u043a\u0443\u043d\u0434":"\u0445\u044d\u0434\u0445\u044d\u043d \u0441\u0435\u043a\u0443\u043d\u0434\u044b\u043d";case"ss":return c+(u?" \u0441\u0435\u043a\u0443\u043d\u0434":" \u0441\u0435\u043a\u0443\u043d\u0434\u044b\u043d");case"m":case"mm":return c+(u?" \u043c\u0438\u043d\u0443\u0442":" \u043c\u0438\u043d\u0443\u0442\u044b\u043d");case"h":case"hh":return c+(u?" \u0446\u0430\u0433":" \u0446\u0430\u0433\u0438\u0439\u043d");case"d":case"dd":return c+(u?" \u04e9\u0434\u04e9\u0440":" \u04e9\u0434\u0440\u0438\u0439\u043d");case"M":case"MM":return c+(u?" \u0441\u0430\u0440":" \u0441\u0430\u0440\u044b\u043d");case"y":case"yy":return c+(u?" \u0436\u0438\u043b":" \u0436\u0438\u043b\u0438\u0439\u043d");default:return c}}S.defineLocale("mn",{months:"\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u043e\u043b\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440".split("_"),monthsShort:"1 \u0441\u0430\u0440_2 \u0441\u0430\u0440_3 \u0441\u0430\u0440_4 \u0441\u0430\u0440_5 \u0441\u0430\u0440_6 \u0441\u0430\u0440_7 \u0441\u0430\u0440_8 \u0441\u0430\u0440_9 \u0441\u0430\u0440_10 \u0441\u0430\u0440_11 \u0441\u0430\u0440_12 \u0441\u0430\u0440".split("_"),monthsParseExact:!0,weekdays:"\u041d\u044f\u043c_\u0414\u0430\u0432\u0430\u0430_\u041c\u044f\u0433\u043c\u0430\u0440_\u041b\u0445\u0430\u0433\u0432\u0430_\u041f\u04af\u0440\u044d\u0432_\u0411\u0430\u0430\u0441\u0430\u043d_\u0411\u044f\u043c\u0431\u0430".split("_"),weekdaysShort:"\u041d\u044f\u043c_\u0414\u0430\u0432_\u041c\u044f\u0433_\u041b\u0445\u0430_\u041f\u04af\u0440_\u0411\u0430\u0430_\u0411\u044f\u043c".split("_"),weekdaysMin:"\u041d\u044f_\u0414\u0430_\u041c\u044f_\u041b\u0445_\u041f\u04af_\u0411\u0430_\u0411\u044f".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY \u043e\u043d\u044b MMMM\u044b\u043d D",LLL:"YYYY \u043e\u043d\u044b MMMM\u044b\u043d D HH:mm",LLLL:"dddd, YYYY \u043e\u043d\u044b MMMM\u044b\u043d D HH:mm"},meridiemParse:/\u04ae\u04e8|\u04ae\u0425/i,isPM:function(u){return"\u04ae\u0425"===u},meridiem:function(u,o,_){return u<12?"\u04ae\u04e8":"\u04ae\u0425"},calendar:{sameDay:"[\u04e8\u043d\u04e9\u04e9\u0434\u04e9\u0440] LT",nextDay:"[\u041c\u0430\u0440\u0433\u0430\u0430\u0448] LT",nextWeek:"[\u0418\u0440\u044d\u0445] dddd LT",lastDay:"[\u04e8\u0447\u0438\u0433\u0434\u04e9\u0440] LT",lastWeek:"[\u04e8\u043d\u0433\u04e9\u0440\u0441\u04e9\u043d] dddd LT",sameElse:"L"},relativeTime:{future:"%s \u0434\u0430\u0440\u0430\u0430",past:"%s \u04e9\u043c\u043d\u04e9",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2} \u04e9\u0434\u04e9\u0440/,ordinal:function(u,o){switch(o){case"d":case"D":case"DDD":return u+" \u04e9\u0434\u04e9\u0440";default:return u}}})}(n(56908))},14695:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},e={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};function c(o,_,s,h){var b="";if(_)switch(s){case"s":b="\u0915\u093e\u0939\u0940 \u0938\u0947\u0915\u0902\u0926";break;case"ss":b="%d \u0938\u0947\u0915\u0902\u0926";break;case"m":b="\u090f\u0915 \u092e\u093f\u0928\u093f\u091f";break;case"mm":b="%d \u092e\u093f\u0928\u093f\u091f\u0947";break;case"h":b="\u090f\u0915 \u0924\u093e\u0938";break;case"hh":b="%d \u0924\u093e\u0938";break;case"d":b="\u090f\u0915 \u0926\u093f\u0935\u0938";break;case"dd":b="%d \u0926\u093f\u0935\u0938";break;case"M":b="\u090f\u0915 \u092e\u0939\u093f\u0928\u093e";break;case"MM":b="%d \u092e\u0939\u093f\u0928\u0947";break;case"y":b="\u090f\u0915 \u0935\u0930\u094d\u0937";break;case"yy":b="%d \u0935\u0930\u094d\u0937\u0947"}else switch(s){case"s":b="\u0915\u093e\u0939\u0940 \u0938\u0947\u0915\u0902\u0926\u093e\u0902";break;case"ss":b="%d \u0938\u0947\u0915\u0902\u0926\u093e\u0902";break;case"m":b="\u090f\u0915\u093e \u092e\u093f\u0928\u093f\u091f\u093e";break;case"mm":b="%d \u092e\u093f\u0928\u093f\u091f\u093e\u0902";break;case"h":b="\u090f\u0915\u093e \u0924\u093e\u0938\u093e";break;case"hh":b="%d \u0924\u093e\u0938\u093e\u0902";break;case"d":b="\u090f\u0915\u093e \u0926\u093f\u0935\u0938\u093e";break;case"dd":b="%d \u0926\u093f\u0935\u0938\u093e\u0902";break;case"M":b="\u090f\u0915\u093e \u092e\u0939\u093f\u0928\u094d\u092f\u093e";break;case"MM":b="%d \u092e\u0939\u093f\u0928\u094d\u092f\u093e\u0902";break;case"y":b="\u090f\u0915\u093e \u0935\u0930\u094d\u0937\u093e";break;case"yy":b="%d \u0935\u0930\u094d\u0937\u093e\u0902"}return b.replace(/%d/i,o)}S.defineLocale("mr",{months:"\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u090f\u092a\u094d\u0930\u093f\u0932_\u092e\u0947_\u091c\u0942\u0928_\u091c\u0941\u0932\u0948_\u0911\u0917\u0938\u094d\u091f_\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930_\u0911\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930_\u0921\u093f\u0938\u0947\u0902\u092c\u0930".split("_"),monthsShort:"\u091c\u093e\u0928\u0947._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a._\u090f\u092a\u094d\u0930\u093f._\u092e\u0947._\u091c\u0942\u0928._\u091c\u0941\u0932\u0948._\u0911\u0917._\u0938\u092a\u094d\u091f\u0947\u0902._\u0911\u0915\u094d\u091f\u094b._\u0928\u094b\u0935\u094d\u0939\u0947\u0902._\u0921\u093f\u0938\u0947\u0902.".split("_"),monthsParseExact:!0,weekdays:"\u0930\u0935\u093f\u0935\u093e\u0930_\u0938\u094b\u092e\u0935\u093e\u0930_\u092e\u0902\u0917\u0933\u0935\u093e\u0930_\u092c\u0941\u0927\u0935\u093e\u0930_\u0917\u0941\u0930\u0942\u0935\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930_\u0936\u0928\u093f\u0935\u093e\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093f_\u0938\u094b\u092e_\u092e\u0902\u0917\u0933_\u092c\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094d\u0930_\u0936\u0928\u093f".split("_"),weekdaysMin:"\u0930_\u0938\u094b_\u092e\u0902_\u092c\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u0935\u093e\u091c\u0924\u093e",LTS:"A h:mm:ss \u0935\u093e\u091c\u0924\u093e",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0935\u093e\u091c\u0924\u093e",LLLL:"dddd, D MMMM YYYY, A h:mm \u0935\u093e\u091c\u0924\u093e"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u0909\u0926\u094d\u092f\u093e] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u093e\u0932] LT",lastWeek:"[\u092e\u093e\u0917\u0940\u0932] dddd, LT",sameElse:"L"},relativeTime:{future:"%s\u092e\u0927\u094d\u092f\u0947",past:"%s\u092a\u0942\u0930\u094d\u0935\u0940",s:c,ss:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},preparse:function(_){return _.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(s){return e[s]})},postformat:function(_){return _.replace(/\d/g,function(s){return t[s]})},meridiemParse:/\u092a\u0939\u093e\u091f\u0947|\u0938\u0915\u093e\u0933\u0940|\u0926\u0941\u092a\u093e\u0930\u0940|\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940|\u0930\u093e\u0924\u094d\u0930\u0940/,meridiemHour:function(_,s){return 12===_&&(_=0),"\u092a\u0939\u093e\u091f\u0947"===s||"\u0938\u0915\u093e\u0933\u0940"===s?_:"\u0926\u0941\u092a\u093e\u0930\u0940"===s||"\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940"===s||"\u0930\u093e\u0924\u094d\u0930\u0940"===s?_>=12?_:_+12:void 0},meridiem:function(_,s,h){return _>=0&&_<6?"\u092a\u0939\u093e\u091f\u0947":_<12?"\u0938\u0915\u093e\u0933\u0940":_<17?"\u0926\u0941\u092a\u093e\u0930\u0940":_<20?"\u0938\u093e\u092f\u0902\u0915\u093e\u0933\u0940":"\u0930\u093e\u0924\u094d\u0930\u0940"},week:{dow:0,doy:6}})}(n(56908))},37151:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(c,u){return 12===c&&(c=0),"pagi"===u?c:"tengahari"===u?c>=11?c:c+12:"petang"===u||"malam"===u?c+12:void 0},meridiem:function(c,u,o){return c<11?"pagi":c<15?"tengahari":c<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n(56908))},75334:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(c,u){return 12===c&&(c=0),"pagi"===u?c:"tengahari"===u?c>=11?c:c+12:"petang"===u||"malam"===u?c+12:void 0},meridiem:function(c,u,o){return c<11?"pagi":c<15?"tengahari":c<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n(56908))},63570:function(Ce,E,n){!function(S){"use strict";S.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_\u0120unju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Di\u010bembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_\u0120un_Lul_Aww_Set_Ott_Nov_Di\u010b".split("_"),weekdays:"Il-\u0126add_It-Tnejn_It-Tlieta_L-Erbg\u0127a_Il-\u0126amis_Il-\u0120img\u0127a_Is-Sibt".split("_"),weekdaysShort:"\u0126ad_Tne_Tli_Erb_\u0126am_\u0120im_Sib".split("_"),weekdaysMin:"\u0126a_Tn_Tl_Er_\u0126a_\u0120i_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[G\u0127ada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-biera\u0127 fil-]LT",lastWeek:"dddd [li g\u0127adda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f\u2019 %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"sieg\u0127a",hh:"%d sieg\u0127at",d:"\u0121urnata",dd:"%d \u0121ranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},97963:function(Ce,E,n){!function(S){"use strict";var t={1:"\u1041",2:"\u1042",3:"\u1043",4:"\u1044",5:"\u1045",6:"\u1046",7:"\u1047",8:"\u1048",9:"\u1049",0:"\u1040"},e={"\u1041":"1","\u1042":"2","\u1043":"3","\u1044":"4","\u1045":"5","\u1046":"6","\u1047":"7","\u1048":"8","\u1049":"9","\u1040":"0"};S.defineLocale("my",{months:"\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e_\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e_\u1019\u1010\u103a_\u1027\u1015\u103c\u102e_\u1019\u1031_\u1007\u103d\u1014\u103a_\u1007\u1030\u101c\u102d\u102f\u1004\u103a_\u101e\u103c\u1002\u102f\u1010\u103a_\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c_\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c_\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c_\u1012\u102e\u1007\u1004\u103a\u1018\u102c".split("_"),monthsShort:"\u1007\u1014\u103a_\u1016\u1031_\u1019\u1010\u103a_\u1015\u103c\u102e_\u1019\u1031_\u1007\u103d\u1014\u103a_\u101c\u102d\u102f\u1004\u103a_\u101e\u103c_\u1005\u1000\u103a_\u1021\u1031\u102c\u1000\u103a_\u1014\u102d\u102f_\u1012\u102e".split("_"),weekdays:"\u1010\u1014\u1004\u103a\u1039\u1002\u1014\u103d\u1031_\u1010\u1014\u1004\u103a\u1039\u101c\u102c_\u1021\u1004\u103a\u1039\u1002\u102b_\u1017\u102f\u1012\u1039\u1013\u101f\u1030\u1038_\u1000\u103c\u102c\u101e\u1015\u1010\u1031\u1038_\u101e\u1031\u102c\u1000\u103c\u102c_\u1005\u1014\u1031".split("_"),weekdaysShort:"\u1014\u103d\u1031_\u101c\u102c_\u1002\u102b_\u101f\u1030\u1038_\u1000\u103c\u102c_\u101e\u1031\u102c_\u1014\u1031".split("_"),weekdaysMin:"\u1014\u103d\u1031_\u101c\u102c_\u1002\u102b_\u101f\u1030\u1038_\u1000\u103c\u102c_\u101e\u1031\u102c_\u1014\u1031".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u101a\u1014\u1031.] LT [\u1019\u103e\u102c]",nextDay:"[\u1019\u1014\u1000\u103a\u1016\u103c\u1014\u103a] LT [\u1019\u103e\u102c]",nextWeek:"dddd LT [\u1019\u103e\u102c]",lastDay:"[\u1019\u1014\u1031.\u1000] LT [\u1019\u103e\u102c]",lastWeek:"[\u1015\u103c\u102e\u1038\u1001\u1032\u1037\u101e\u1031\u102c] dddd LT [\u1019\u103e\u102c]",sameElse:"L"},relativeTime:{future:"\u101c\u102c\u1019\u100a\u103a\u1037 %s \u1019\u103e\u102c",past:"\u101c\u103d\u1014\u103a\u1001\u1032\u1037\u101e\u1031\u102c %s \u1000",s:"\u1005\u1000\u1039\u1000\u1014\u103a.\u1021\u1014\u100a\u103a\u1038\u1004\u101a\u103a",ss:"%d \u1005\u1000\u1039\u1000\u1014\u1037\u103a",m:"\u1010\u1005\u103a\u1019\u102d\u1014\u1005\u103a",mm:"%d \u1019\u102d\u1014\u1005\u103a",h:"\u1010\u1005\u103a\u1014\u102c\u101b\u102e",hh:"%d \u1014\u102c\u101b\u102e",d:"\u1010\u1005\u103a\u101b\u1000\u103a",dd:"%d \u101b\u1000\u103a",M:"\u1010\u1005\u103a\u101c",MM:"%d \u101c",y:"\u1010\u1005\u103a\u1014\u103e\u1005\u103a",yy:"%d \u1014\u103e\u1005\u103a"},preparse:function(o){return o.replace(/[\u1041\u1042\u1043\u1044\u1045\u1046\u1047\u1048\u1049\u1040]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},week:{dow:1,doy:4}})}(n(56908))},88028:function(Ce,E,n){!function(S){"use strict";S.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"s\xf8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xf8rdag".split("_"),weekdaysShort:"s\xf8._ma._ti._on._to._fr._l\xf8.".split("_"),weekdaysMin:"s\xf8_ma_ti_on_to_fr_l\xf8".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i g\xe5r kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",w:"en uke",ww:"%d uker",M:"en m\xe5ned",MM:"%d m\xe5neder",y:"ett \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},86638:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096a",5:"\u096b",6:"\u096c",7:"\u096d",8:"\u096e",9:"\u096f",0:"\u0966"},e={"\u0967":"1","\u0968":"2","\u0969":"3","\u096a":"4","\u096b":"5","\u096c":"6","\u096d":"7","\u096e":"8","\u096f":"9","\u0966":"0"};S.defineLocale("ne",{months:"\u091c\u0928\u0935\u0930\u0940_\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u0930\u0940_\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u093f\u0932_\u092e\u0908_\u091c\u0941\u0928_\u091c\u0941\u0932\u093e\u0908_\u0905\u0917\u0937\u094d\u091f_\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930_\u0905\u0915\u094d\u091f\u094b\u092c\u0930_\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930_\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930".split("_"),monthsShort:"\u091c\u0928._\u092b\u0947\u092c\u094d\u0930\u0941._\u092e\u093e\u0930\u094d\u091a_\u0905\u092a\u094d\u0930\u093f._\u092e\u0908_\u091c\u0941\u0928_\u091c\u0941\u0932\u093e\u0908._\u0905\u0917._\u0938\u0947\u092a\u094d\u091f._\u0905\u0915\u094d\u091f\u094b._\u0928\u094b\u092d\u0947._\u0921\u093f\u0938\u0947.".split("_"),monthsParseExact:!0,weekdays:"\u0906\u0907\u0924\u092c\u093e\u0930_\u0938\u094b\u092e\u092c\u093e\u0930_\u092e\u0919\u094d\u0917\u0932\u092c\u093e\u0930_\u092c\u0941\u0927\u092c\u093e\u0930_\u092c\u093f\u0939\u093f\u092c\u093e\u0930_\u0936\u0941\u0915\u094d\u0930\u092c\u093e\u0930_\u0936\u0928\u093f\u092c\u093e\u0930".split("_"),weekdaysShort:"\u0906\u0907\u0924._\u0938\u094b\u092e._\u092e\u0919\u094d\u0917\u0932._\u092c\u0941\u0927._\u092c\u093f\u0939\u093f._\u0936\u0941\u0915\u094d\u0930._\u0936\u0928\u093f.".split("_"),weekdaysMin:"\u0906._\u0938\u094b._\u092e\u0902._\u092c\u0941._\u092c\u093f._\u0936\u0941._\u0936.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A\u0915\u094b h:mm \u092c\u091c\u0947",LTS:"A\u0915\u094b h:mm:ss \u092c\u091c\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A\u0915\u094b h:mm \u092c\u091c\u0947",LLLL:"dddd, D MMMM YYYY, A\u0915\u094b h:mm \u092c\u091c\u0947"},preparse:function(o){return o.replace(/[\u0967\u0968\u0969\u096a\u096b\u096c\u096d\u096e\u096f\u0966]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u0930\u093e\u0924\u093f|\u092c\u093f\u0939\u093e\u0928|\u0926\u093f\u0909\u0901\u0938\u094b|\u0938\u093e\u0901\u091d/,meridiemHour:function(o,_){return 12===o&&(o=0),"\u0930\u093e\u0924\u093f"===_?o<4?o:o+12:"\u092c\u093f\u0939\u093e\u0928"===_?o:"\u0926\u093f\u0909\u0901\u0938\u094b"===_?o>=10?o:o+12:"\u0938\u093e\u0901\u091d"===_?o+12:void 0},meridiem:function(o,_,s){return o<3?"\u0930\u093e\u0924\u093f":o<12?"\u092c\u093f\u0939\u093e\u0928":o<16?"\u0926\u093f\u0909\u0901\u0938\u094b":o<20?"\u0938\u093e\u0901\u091d":"\u0930\u093e\u0924\u093f"},calendar:{sameDay:"[\u0906\u091c] LT",nextDay:"[\u092d\u094b\u0932\u093f] LT",nextWeek:"[\u0906\u0909\u0901\u0926\u094b] dddd[,] LT",lastDay:"[\u0939\u093f\u091c\u094b] LT",lastWeek:"[\u0917\u090f\u0915\u094b] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s\u092e\u093e",past:"%s \u0905\u0917\u093e\u0921\u093f",s:"\u0915\u0947\u0939\u0940 \u0915\u094d\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0947\u0923\u094d\u0921",m:"\u090f\u0915 \u092e\u093f\u0928\u0947\u091f",mm:"%d \u092e\u093f\u0928\u0947\u091f",h:"\u090f\u0915 \u0918\u0923\u094d\u091f\u093e",hh:"%d \u0918\u0923\u094d\u091f\u093e",d:"\u090f\u0915 \u0926\u093f\u0928",dd:"%d \u0926\u093f\u0928",M:"\u090f\u0915 \u092e\u0939\u093f\u0928\u093e",MM:"%d \u092e\u0939\u093f\u0928\u093e",y:"\u090f\u0915 \u092c\u0930\u094d\u0937",yy:"%d \u092c\u0930\u094d\u0937"},week:{dow:0,doy:6}})}(n(56908))},66782:function(Ce,E,n){!function(S){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),e="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),c=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],u=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;S.defineLocale("nl-be",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(s,h){return s?/-MMM-/.test(h)?e[s.month()]:t[s.month()]:t},monthsRegex:u,monthsShortRegex:u,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xe9\xe9n minuut",mm:"%d minuten",h:"\xe9\xe9n uur",hh:"%d uur",d:"\xe9\xe9n dag",dd:"%d dagen",M:"\xe9\xe9n maand",MM:"%d maanden",y:"\xe9\xe9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(s){return s+(1===s||8===s||s>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},50302:function(Ce,E,n){!function(S){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),e="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),c=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],u=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;S.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(s,h){return s?/-MMM-/.test(h)?e[s.month()]:t[s.month()]:t},monthsRegex:u,monthsShortRegex:u,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xe9\xe9n minuut",mm:"%d minuten",h:"\xe9\xe9n uur",hh:"%d uur",d:"\xe9\xe9n dag",dd:"%d dagen",w:"\xe9\xe9n week",ww:"%d weken",M:"\xe9\xe9n maand",MM:"%d maanden",y:"\xe9\xe9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(s){return s+(1===s||8===s||s>=20?"ste":"de")},week:{dow:1,doy:4}})}(n(56908))},33501:function(Ce,E,n){!function(S){"use strict";S.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"sundag_m\xe5ndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"su._m\xe5._ty._on._to._fr._lau.".split("_"),weekdaysMin:"su_m\xe5_ty_on_to_fr_la".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I g\xe5r klokka] LT",lastWeek:"[F\xf8reg\xe5ande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s sidan",s:"nokre sekund",ss:"%d sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",w:"ei veke",ww:"%d veker",M:"ein m\xe5nad",MM:"%d m\xe5nader",y:"eit \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},50563:function(Ce,E,n){!function(S){"use strict";S.defineLocale("oc-lnc",{months:{standalone:"geni\xe8r_febri\xe8r_mar\xe7_abril_mai_junh_julhet_agost_setembre_oct\xf2bre_novembre_decembre".split("_"),format:"de geni\xe8r_de febri\xe8r_de mar\xe7_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'oct\xf2bre_de novembre_de decembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._mar\xe7_abr._mai_junh_julh._ago._set._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"dimenge_diluns_dimars_dim\xe8cres_dij\xf2us_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dm._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dm_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:"[u\xe8i a] LT",nextDay:"[deman a] LT",nextWeek:"dddd [a] LT",lastDay:"[i\xe8r a] LT",lastWeek:"dddd [passat a] LT",sameElse:"L"},relativeTime:{future:"d'aqu\xed %s",past:"fa %s",s:"unas segondas",ss:"%d segondas",m:"una minuta",mm:"%d minutas",h:"una ora",hh:"%d oras",d:"un jorn",dd:"%d jorns",M:"un mes",MM:"%d meses",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|\xe8|a)/,ordinal:function(c,u){var o=1===c?"r":2===c?"n":3===c?"r":4===c?"t":"\xe8";return("w"===u||"W"===u)&&(o="a"),c+o},week:{dow:1,doy:4}})}(n(56908))},50869:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0a67",2:"\u0a68",3:"\u0a69",4:"\u0a6a",5:"\u0a6b",6:"\u0a6c",7:"\u0a6d",8:"\u0a6e",9:"\u0a6f",0:"\u0a66"},e={"\u0a67":"1","\u0a68":"2","\u0a69":"3","\u0a6a":"4","\u0a6b":"5","\u0a6c":"6","\u0a6d":"7","\u0a6e":"8","\u0a6f":"9","\u0a66":"0"};S.defineLocale("pa-in",{months:"\u0a1c\u0a28\u0a35\u0a30\u0a40_\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40_\u0a2e\u0a3e\u0a30\u0a1a_\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32_\u0a2e\u0a08_\u0a1c\u0a42\u0a28_\u0a1c\u0a41\u0a32\u0a3e\u0a08_\u0a05\u0a17\u0a38\u0a24_\u0a38\u0a24\u0a70\u0a2c\u0a30_\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30_\u0a28\u0a35\u0a70\u0a2c\u0a30_\u0a26\u0a38\u0a70\u0a2c\u0a30".split("_"),monthsShort:"\u0a1c\u0a28\u0a35\u0a30\u0a40_\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40_\u0a2e\u0a3e\u0a30\u0a1a_\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32_\u0a2e\u0a08_\u0a1c\u0a42\u0a28_\u0a1c\u0a41\u0a32\u0a3e\u0a08_\u0a05\u0a17\u0a38\u0a24_\u0a38\u0a24\u0a70\u0a2c\u0a30_\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30_\u0a28\u0a35\u0a70\u0a2c\u0a30_\u0a26\u0a38\u0a70\u0a2c\u0a30".split("_"),weekdays:"\u0a10\u0a24\u0a35\u0a3e\u0a30_\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30_\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30_\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30_\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30_\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30_\u0a38\u0a3c\u0a28\u0a40\u0a1a\u0a30\u0a35\u0a3e\u0a30".split("_"),weekdaysShort:"\u0a10\u0a24_\u0a38\u0a4b\u0a2e_\u0a2e\u0a70\u0a17\u0a32_\u0a2c\u0a41\u0a27_\u0a35\u0a40\u0a30_\u0a38\u0a3c\u0a41\u0a15\u0a30_\u0a38\u0a3c\u0a28\u0a40".split("_"),weekdaysMin:"\u0a10\u0a24_\u0a38\u0a4b\u0a2e_\u0a2e\u0a70\u0a17\u0a32_\u0a2c\u0a41\u0a27_\u0a35\u0a40\u0a30_\u0a38\u0a3c\u0a41\u0a15\u0a30_\u0a38\u0a3c\u0a28\u0a40".split("_"),longDateFormat:{LT:"A h:mm \u0a35\u0a1c\u0a47",LTS:"A h:mm:ss \u0a35\u0a1c\u0a47",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u0a35\u0a1c\u0a47",LLLL:"dddd, D MMMM YYYY, A h:mm \u0a35\u0a1c\u0a47"},calendar:{sameDay:"[\u0a05\u0a1c] LT",nextDay:"[\u0a15\u0a32] LT",nextWeek:"[\u0a05\u0a17\u0a32\u0a3e] dddd, LT",lastDay:"[\u0a15\u0a32] LT",lastWeek:"[\u0a2a\u0a3f\u0a1b\u0a32\u0a47] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0a35\u0a3f\u0a71\u0a1a",past:"%s \u0a2a\u0a3f\u0a1b\u0a32\u0a47",s:"\u0a15\u0a41\u0a1d \u0a38\u0a15\u0a3f\u0a70\u0a1f",ss:"%d \u0a38\u0a15\u0a3f\u0a70\u0a1f",m:"\u0a07\u0a15 \u0a2e\u0a3f\u0a70\u0a1f",mm:"%d \u0a2e\u0a3f\u0a70\u0a1f",h:"\u0a07\u0a71\u0a15 \u0a18\u0a70\u0a1f\u0a3e",hh:"%d \u0a18\u0a70\u0a1f\u0a47",d:"\u0a07\u0a71\u0a15 \u0a26\u0a3f\u0a28",dd:"%d \u0a26\u0a3f\u0a28",M:"\u0a07\u0a71\u0a15 \u0a2e\u0a39\u0a40\u0a28\u0a3e",MM:"%d \u0a2e\u0a39\u0a40\u0a28\u0a47",y:"\u0a07\u0a71\u0a15 \u0a38\u0a3e\u0a32",yy:"%d \u0a38\u0a3e\u0a32"},preparse:function(o){return o.replace(/[\u0a67\u0a68\u0a69\u0a6a\u0a6b\u0a6c\u0a6d\u0a6e\u0a6f\u0a66]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u0a30\u0a3e\u0a24|\u0a38\u0a35\u0a47\u0a30|\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30|\u0a38\u0a3c\u0a3e\u0a2e/,meridiemHour:function(o,_){return 12===o&&(o=0),"\u0a30\u0a3e\u0a24"===_?o<4?o:o+12:"\u0a38\u0a35\u0a47\u0a30"===_?o:"\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30"===_?o>=10?o:o+12:"\u0a38\u0a3c\u0a3e\u0a2e"===_?o+12:void 0},meridiem:function(o,_,s){return o<4?"\u0a30\u0a3e\u0a24":o<10?"\u0a38\u0a35\u0a47\u0a30":o<17?"\u0a26\u0a41\u0a2a\u0a39\u0a3f\u0a30":o<20?"\u0a38\u0a3c\u0a3e\u0a2e":"\u0a30\u0a3e\u0a24"},week:{dow:0,doy:6}})}(n(56908))},65302:function(Ce,E,n){!function(S){"use strict";var t="stycze\u0144_luty_marzec_kwiecie\u0144_maj_czerwiec_lipiec_sierpie\u0144_wrzesie\u0144_pa\u017adziernik_listopad_grudzie\u0144".split("_"),e="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrze\u015bnia_pa\u017adziernika_listopada_grudnia".split("_"),c=[/^sty/i,/^lut/i,/^mar/i,/^kwi/i,/^maj/i,/^cze/i,/^lip/i,/^sie/i,/^wrz/i,/^pa\u017a/i,/^lis/i,/^gru/i];function u(s){return s%10<5&&s%10>1&&~~(s/10)%10!=1}function o(s,h,b){var T=s+" ";switch(b){case"ss":return T+(u(s)?"sekundy":"sekund");case"m":return h?"minuta":"minut\u0119";case"mm":return T+(u(s)?"minuty":"minut");case"h":return h?"godzina":"godzin\u0119";case"hh":return T+(u(s)?"godziny":"godzin");case"ww":return T+(u(s)?"tygodnie":"tygodni");case"MM":return T+(u(s)?"miesi\u0105ce":"miesi\u0119cy");case"yy":return T+(u(s)?"lata":"lat")}}S.defineLocale("pl",{months:function(h,b){return h?/D MMMM/.test(b)?e[h.month()]:t[h.month()]:t},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_pa\u017a_lis_gru".split("_"),monthsParse:c,longMonthsParse:c,shortMonthsParse:c,weekdays:"niedziela_poniedzia\u0142ek_wtorek_\u015broda_czwartek_pi\u0105tek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_\u015br_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_\u015ar_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dzi\u015b o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedziel\u0119 o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W \u015brod\u0119 o] LT";case 6:return"[W sobot\u0119 o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zesz\u0142\u0105 niedziel\u0119 o] LT";case 3:return"[W zesz\u0142\u0105 \u015brod\u0119 o] LT";case 6:return"[W zesz\u0142\u0105 sobot\u0119 o] LT";default:return"[W zesz\u0142y] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:o,m:o,mm:o,h:o,hh:o,d:"1 dzie\u0144",dd:"%d dni",w:"tydzie\u0144",ww:o,M:"miesi\u0105c",MM:o,y:"rok",yy:o},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},74884:function(Ce,E,n){!function(S){"use strict";S.defineLocale("pt-br",{months:"janeiro_fevereiro_mar\xe7o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_ter\xe7a-feira_quarta-feira_quinta-feira_sexta-feira_s\xe1bado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_s\xe1b".split("_"),weekdaysMin:"do_2\xaa_3\xaa_4\xaa_5\xaa_6\xaa_s\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xe0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xe0s] HH:mm"},calendar:{sameDay:"[Hoje \xe0s] LT",nextDay:"[Amanh\xe3 \xe0s] LT",nextWeek:"dddd [\xe0s] LT",lastDay:"[Ontem \xe0s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[\xdaltimo] dddd [\xe0s] LT":"[\xdaltima] dddd [\xe0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"h\xe1 %s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xeas",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",invalidDate:"Data inv\xe1lida"})}(n(56908))},49687:function(Ce,E,n){!function(S){"use strict";S.defineLocale("pt",{months:"janeiro_fevereiro_mar\xe7o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"Domingo_Segunda-feira_Ter\xe7a-feira_Quarta-feira_Quinta-feira_Sexta-feira_S\xe1bado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_S\xe1b".split("_"),weekdaysMin:"Do_2\xaa_3\xaa_4\xaa_5\xaa_6\xaa_S\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje \xe0s] LT",nextDay:"[Amanh\xe3 \xe0s] LT",nextWeek:"dddd [\xe0s] LT",lastDay:"[Ontem \xe0s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[\xdaltimo] dddd [\xe0s] LT":"[\xdaltima] dddd [\xe0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"h\xe1 %s",s:"segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",w:"uma semana",ww:"%d semanas",M:"um m\xeas",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}\xba/,ordinal:"%d\xba",week:{dow:1,doy:4}})}(n(56908))},79107:function(Ce,E,n){!function(S){"use strict";function t(c,u,o){var s=" ";return(c%100>=20||c>=100&&c%100==0)&&(s=" de "),c+s+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",ww:"s\u0103pt\u0103m\xe2ni",MM:"luni",yy:"ani"}[o]}S.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminic\u0103_luni_mar\u021bi_miercuri_joi_vineri_s\xe2mb\u0103t\u0103".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_S\xe2m".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_S\xe2".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[m\xe2ine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s \xeen urm\u0103",s:"c\xe2teva secunde",ss:t,m:"un minut",mm:t,h:"o or\u0103",hh:t,d:"o zi",dd:t,w:"o s\u0103pt\u0103m\xe2n\u0103",ww:t,M:"o lun\u0103",MM:t,y:"un an",yy:t},week:{dow:1,doy:7}})}(n(56908))},33627:function(Ce,E,n){!function(S){"use strict";function e(o,_,s){return"m"===s?_?"\u043c\u0438\u043d\u0443\u0442\u0430":"\u043c\u0438\u043d\u0443\u0442\u0443":o+" "+function t(o,_){var s=o.split("_");return _%10==1&&_%100!=11?s[0]:_%10>=2&&_%10<=4&&(_%100<10||_%100>=20)?s[1]:s[2]}({ss:_?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434",mm:_?"\u043c\u0438\u043d\u0443\u0442\u0430_\u043c\u0438\u043d\u0443\u0442\u044b_\u043c\u0438\u043d\u0443\u0442":"\u043c\u0438\u043d\u0443\u0442\u0443_\u043c\u0438\u043d\u0443\u0442\u044b_\u043c\u0438\u043d\u0443\u0442",hh:"\u0447\u0430\u0441_\u0447\u0430\u0441\u0430_\u0447\u0430\u0441\u043e\u0432",dd:"\u0434\u0435\u043d\u044c_\u0434\u043d\u044f_\u0434\u043d\u0435\u0439",ww:"\u043d\u0435\u0434\u0435\u043b\u044f_\u043d\u0435\u0434\u0435\u043b\u0438_\u043d\u0435\u0434\u0435\u043b\u044c",MM:"\u043c\u0435\u0441\u044f\u0446_\u043c\u0435\u0441\u044f\u0446\u0430_\u043c\u0435\u0441\u044f\u0446\u0435\u0432",yy:"\u0433\u043e\u0434_\u0433\u043e\u0434\u0430_\u043b\u0435\u0442"}[s],+o)}var c=[/^\u044f\u043d\u0432/i,/^\u0444\u0435\u0432/i,/^\u043c\u0430\u0440/i,/^\u0430\u043f\u0440/i,/^\u043c\u0430[\u0439\u044f]/i,/^\u0438\u044e\u043d/i,/^\u0438\u044e\u043b/i,/^\u0430\u0432\u0433/i,/^\u0441\u0435\u043d/i,/^\u043e\u043a\u0442/i,/^\u043d\u043e\u044f/i,/^\u0434\u0435\u043a/i];S.defineLocale("ru",{months:{format:"\u044f\u043d\u0432\u0430\u0440\u044f_\u0444\u0435\u0432\u0440\u0430\u043b\u044f_\u043c\u0430\u0440\u0442\u0430_\u0430\u043f\u0440\u0435\u043b\u044f_\u043c\u0430\u044f_\u0438\u044e\u043d\u044f_\u0438\u044e\u043b\u044f_\u0430\u0432\u0433\u0443\u0441\u0442\u0430_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f_\u043e\u043a\u0442\u044f\u0431\u0440\u044f_\u043d\u043e\u044f\u0431\u0440\u044f_\u0434\u0435\u043a\u0430\u0431\u0440\u044f".split("_"),standalone:"\u044f\u043d\u0432\u0430\u0440\u044c_\u0444\u0435\u0432\u0440\u0430\u043b\u044c_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b\u044c_\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c_\u043e\u043a\u0442\u044f\u0431\u0440\u044c_\u043d\u043e\u044f\u0431\u0440\u044c_\u0434\u0435\u043a\u0430\u0431\u0440\u044c".split("_")},monthsShort:{format:"\u044f\u043d\u0432._\u0444\u0435\u0432\u0440._\u043c\u0430\u0440._\u0430\u043f\u0440._\u043c\u0430\u044f_\u0438\u044e\u043d\u044f_\u0438\u044e\u043b\u044f_\u0430\u0432\u0433._\u0441\u0435\u043d\u0442._\u043e\u043a\u0442._\u043d\u043e\u044f\u0431._\u0434\u0435\u043a.".split("_"),standalone:"\u044f\u043d\u0432._\u0444\u0435\u0432\u0440._\u043c\u0430\u0440\u0442_\u0430\u043f\u0440._\u043c\u0430\u0439_\u0438\u044e\u043d\u044c_\u0438\u044e\u043b\u044c_\u0430\u0432\u0433._\u0441\u0435\u043d\u0442._\u043e\u043a\u0442._\u043d\u043e\u044f\u0431._\u0434\u0435\u043a.".split("_")},weekdays:{standalone:"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043f\u044f\u0442\u043d\u0438\u0446\u0430_\u0441\u0443\u0431\u0431\u043e\u0442\u0430".split("_"),format:"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043f\u044f\u0442\u043d\u0438\u0446\u0443_\u0441\u0443\u0431\u0431\u043e\u0442\u0443".split("_"),isFormat:/\[ ?[\u0412\u0432] ?(?:\u043f\u0440\u043e\u0448\u043b\u0443\u044e|\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e|\u044d\u0442\u0443)? ?] ?dddd/},weekdaysShort:"\u0432\u0441_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u0432\u0441_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),monthsParse:c,longMonthsParse:c,shortMonthsParse:c,monthsRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044c\u044f]|\u044f\u043d\u0432\.?|\u0444\u0435\u0432\u0440\u0430\u043b[\u044c\u044f]|\u0444\u0435\u0432\u0440?\.?|\u043c\u0430\u0440\u0442\u0430?|\u043c\u0430\u0440\.?|\u0430\u043f\u0440\u0435\u043b[\u044c\u044f]|\u0430\u043f\u0440\.?|\u043c\u0430[\u0439\u044f]|\u0438\u044e\u043d[\u044c\u044f]|\u0438\u044e\u043d\.?|\u0438\u044e\u043b[\u044c\u044f]|\u0438\u044e\u043b\.?|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0430\u0432\u0433\.?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044c\u044f]|\u0441\u0435\u043d\u0442?\.?|\u043e\u043a\u0442\u044f\u0431\u0440[\u044c\u044f]|\u043e\u043a\u0442\.?|\u043d\u043e\u044f\u0431\u0440[\u044c\u044f]|\u043d\u043e\u044f\u0431?\.?|\u0434\u0435\u043a\u0430\u0431\u0440[\u044c\u044f]|\u0434\u0435\u043a\.?)/i,monthsShortRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044c\u044f]|\u044f\u043d\u0432\.?|\u0444\u0435\u0432\u0440\u0430\u043b[\u044c\u044f]|\u0444\u0435\u0432\u0440?\.?|\u043c\u0430\u0440\u0442\u0430?|\u043c\u0430\u0440\.?|\u0430\u043f\u0440\u0435\u043b[\u044c\u044f]|\u0430\u043f\u0440\.?|\u043c\u0430[\u0439\u044f]|\u0438\u044e\u043d[\u044c\u044f]|\u0438\u044e\u043d\.?|\u0438\u044e\u043b[\u044c\u044f]|\u0438\u044e\u043b\.?|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0430\u0432\u0433\.?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044c\u044f]|\u0441\u0435\u043d\u0442?\.?|\u043e\u043a\u0442\u044f\u0431\u0440[\u044c\u044f]|\u043e\u043a\u0442\.?|\u043d\u043e\u044f\u0431\u0440[\u044c\u044f]|\u043d\u043e\u044f\u0431?\.?|\u0434\u0435\u043a\u0430\u0431\u0440[\u044c\u044f]|\u0434\u0435\u043a\.?)/i,monthsStrictRegex:/^(\u044f\u043d\u0432\u0430\u0440[\u044f\u044c]|\u0444\u0435\u0432\u0440\u0430\u043b[\u044f\u044c]|\u043c\u0430\u0440\u0442\u0430?|\u0430\u043f\u0440\u0435\u043b[\u044f\u044c]|\u043c\u0430[\u044f\u0439]|\u0438\u044e\u043d[\u044f\u044c]|\u0438\u044e\u043b[\u044f\u044c]|\u0430\u0432\u0433\u0443\u0441\u0442\u0430?|\u0441\u0435\u043d\u0442\u044f\u0431\u0440[\u044f\u044c]|\u043e\u043a\u0442\u044f\u0431\u0440[\u044f\u044c]|\u043d\u043e\u044f\u0431\u0440[\u044f\u044c]|\u0434\u0435\u043a\u0430\u0431\u0440[\u044f\u044c])/i,monthsShortStrictRegex:/^(\u044f\u043d\u0432\.|\u0444\u0435\u0432\u0440?\.|\u043c\u0430\u0440[\u0442.]|\u0430\u043f\u0440\.|\u043c\u0430[\u044f\u0439]|\u0438\u044e\u043d[\u044c\u044f.]|\u0438\u044e\u043b[\u044c\u044f.]|\u0430\u0432\u0433\.|\u0441\u0435\u043d\u0442?\.|\u043e\u043a\u0442\.|\u043d\u043e\u044f\u0431?\.|\u0434\u0435\u043a\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., H:mm",LLLL:"dddd, D MMMM YYYY \u0433., H:mm"},calendar:{sameDay:"[\u0421\u0435\u0433\u043e\u0434\u043d\u044f, \u0432] LT",nextDay:"[\u0417\u0430\u0432\u0442\u0440\u0430, \u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430, \u0432] LT",nextWeek:function(_){if(_.week()===this.week())return 2===this.day()?"[\u0412\u043e] dddd, [\u0432] LT":"[\u0412] dddd, [\u0432] LT";switch(this.day()){case 0:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435] dddd, [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439] dddd, [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e] dddd, [\u0432] LT"}},lastWeek:function(_){if(_.week()===this.week())return 2===this.day()?"[\u0412\u043e] dddd, [\u0432] LT":"[\u0412] dddd, [\u0432] LT";switch(this.day()){case 0:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0435] dddd, [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u044b\u0439] dddd, [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u043f\u0440\u043e\u0448\u043b\u0443\u044e] dddd, [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0447\u0435\u0440\u0435\u0437 %s",past:"%s \u043d\u0430\u0437\u0430\u0434",s:"\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434",ss:e,m:e,mm:e,h:"\u0447\u0430\u0441",hh:e,d:"\u0434\u0435\u043d\u044c",dd:e,w:"\u043d\u0435\u0434\u0435\u043b\u044f",ww:e,M:"\u043c\u0435\u0441\u044f\u0446",MM:e,y:"\u0433\u043e\u0434",yy:e},meridiemParse:/\u043d\u043e\u0447\u0438|\u0443\u0442\u0440\u0430|\u0434\u043d\u044f|\u0432\u0435\u0447\u0435\u0440\u0430/i,isPM:function(_){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u0435\u0440\u0430)$/.test(_)},meridiem:function(_,s,h){return _<4?"\u043d\u043e\u0447\u0438":_<12?"\u0443\u0442\u0440\u0430":_<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u0435\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0439|\u0433\u043e|\u044f)/,ordinal:function(_,s){switch(s){case"M":case"d":case"DDD":return _+"-\u0439";case"D":return _+"-\u0433\u043e";case"w":case"W":return _+"-\u044f";default:return _}},week:{dow:1,doy:4}})}(n(56908))},30355:function(Ce,E,n){!function(S){"use strict";var t=["\u062c\u0646\u0648\u0631\u064a","\u0641\u064a\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u064a\u0644","\u0645\u0626\u064a","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0621\u0650","\u0622\u06af\u0633\u067d","\u0633\u064a\u067e\u067d\u0645\u0628\u0631","\u0622\u06aa\u067d\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u068a\u0633\u0645\u0628\u0631"],e=["\u0622\u0686\u0631","\u0633\u0648\u0645\u0631","\u0627\u06b1\u0627\u0631\u0648","\u0627\u0631\u0628\u0639","\u062e\u0645\u064a\u0633","\u062c\u0645\u0639","\u0687\u0646\u0687\u0631"];S.defineLocale("sd",{months:t,monthsShort:t,weekdays:e,weekdaysShort:e,weekdaysMin:e,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd\u060c D MMMM YYYY HH:mm"},meridiemParse:/\u0635\u0628\u062d|\u0634\u0627\u0645/,isPM:function(o){return"\u0634\u0627\u0645"===o},meridiem:function(o,_,s){return o<12?"\u0635\u0628\u062d":"\u0634\u0627\u0645"},calendar:{sameDay:"[\u0627\u0684] LT",nextDay:"[\u0633\u0680\u0627\u06bb\u064a] LT",nextWeek:"dddd [\u0627\u06b3\u064a\u0646 \u0647\u0641\u062a\u064a \u062a\u064a] LT",lastDay:"[\u06aa\u0627\u0644\u0647\u0647] LT",lastWeek:"[\u06af\u0632\u0631\u064a\u0644 \u0647\u0641\u062a\u064a] dddd [\u062a\u064a] LT",sameElse:"L"},relativeTime:{future:"%s \u067e\u0648\u0621",past:"%s \u0627\u06b3",s:"\u0686\u0646\u062f \u0633\u064a\u06aa\u0646\u068a",ss:"%d \u0633\u064a\u06aa\u0646\u068a",m:"\u0647\u06aa \u0645\u0646\u067d",mm:"%d \u0645\u0646\u067d",h:"\u0647\u06aa \u06aa\u0644\u0627\u06aa",hh:"%d \u06aa\u0644\u0627\u06aa",d:"\u0647\u06aa \u068f\u064a\u0646\u0647\u0646",dd:"%d \u068f\u064a\u0646\u0647\u0646",M:"\u0647\u06aa \u0645\u0647\u064a\u0646\u0648",MM:"%d \u0645\u0647\u064a\u0646\u0627",y:"\u0647\u06aa \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(o){return o.replace(/\u060c/g,",")},postformat:function(o){return o.replace(/,/g,"\u060c")},week:{dow:1,doy:4}})}(n(56908))},83427:function(Ce,E,n){!function(S){"use strict";S.defineLocale("se",{months:"o\u0111\u0111ajagem\xe1nnu_guovvam\xe1nnu_njuk\u010dam\xe1nnu_cuo\u014bom\xe1nnu_miessem\xe1nnu_geassem\xe1nnu_suoidnem\xe1nnu_borgem\xe1nnu_\u010dak\u010dam\xe1nnu_golggotm\xe1nnu_sk\xe1bmam\xe1nnu_juovlam\xe1nnu".split("_"),monthsShort:"o\u0111\u0111j_guov_njuk_cuo_mies_geas_suoi_borg_\u010dak\u010d_golg_sk\xe1b_juov".split("_"),weekdays:"sotnabeaivi_vuoss\xe1rga_ma\u014b\u014beb\xe1rga_gaskavahkku_duorastat_bearjadat_l\xe1vvardat".split("_"),weekdaysShort:"sotn_vuos_ma\u014b_gask_duor_bear_l\xe1v".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s gea\u017ees",past:"ma\u014bit %s",s:"moadde sekunddat",ss:"%d sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta m\xe1nnu",MM:"%d m\xe1nut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},11848:function(Ce,E,n){!function(S){"use strict";S.defineLocale("si",{months:"\u0da2\u0db1\u0dc0\u0dcf\u0dbb\u0dd2_\u0db4\u0dd9\u0db6\u0dbb\u0dc0\u0dcf\u0dbb\u0dd2_\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4_\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca_\u0db8\u0dd0\u0dba\u0dd2_\u0da2\u0dd6\u0db1\u0dd2_\u0da2\u0dd6\u0dbd\u0dd2_\u0d85\u0d9c\u0ddd\u0dc3\u0dca\u0dad\u0dd4_\u0dc3\u0dd0\u0db4\u0dca\u0dad\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca_\u0d94\u0d9a\u0dca\u0dad\u0ddd\u0db6\u0dbb\u0dca_\u0db1\u0ddc\u0dc0\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca_\u0daf\u0dd9\u0dc3\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca".split("_"),monthsShort:"\u0da2\u0db1_\u0db4\u0dd9\u0db6_\u0db8\u0dcf\u0dbb\u0dca_\u0d85\u0db4\u0dca_\u0db8\u0dd0\u0dba\u0dd2_\u0da2\u0dd6\u0db1\u0dd2_\u0da2\u0dd6\u0dbd\u0dd2_\u0d85\u0d9c\u0ddd_\u0dc3\u0dd0\u0db4\u0dca_\u0d94\u0d9a\u0dca_\u0db1\u0ddc\u0dc0\u0dd0_\u0daf\u0dd9\u0dc3\u0dd0".split("_"),weekdays:"\u0d89\u0dbb\u0dd2\u0daf\u0dcf_\u0dc3\u0db3\u0dd4\u0daf\u0dcf_\u0d85\u0d9f\u0dc4\u0dbb\u0dd4\u0dc0\u0dcf\u0daf\u0dcf_\u0db6\u0daf\u0dcf\u0daf\u0dcf_\u0db6\u0dca\u200d\u0dbb\u0dc4\u0dc3\u0dca\u0db4\u0dad\u0dd2\u0db1\u0dca\u0daf\u0dcf_\u0dc3\u0dd2\u0d9a\u0dd4\u0dbb\u0dcf\u0daf\u0dcf_\u0dc3\u0dd9\u0db1\u0dc3\u0dd4\u0dbb\u0dcf\u0daf\u0dcf".split("_"),weekdaysShort:"\u0d89\u0dbb\u0dd2_\u0dc3\u0db3\u0dd4_\u0d85\u0d9f_\u0db6\u0daf\u0dcf_\u0db6\u0dca\u200d\u0dbb\u0dc4_\u0dc3\u0dd2\u0d9a\u0dd4_\u0dc3\u0dd9\u0db1".split("_"),weekdaysMin:"\u0d89_\u0dc3_\u0d85_\u0db6_\u0db6\u0dca\u200d\u0dbb_\u0dc3\u0dd2_\u0dc3\u0dd9".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [\u0dc0\u0dd0\u0db1\u0dd2] dddd, a h:mm:ss"},calendar:{sameDay:"[\u0d85\u0daf] LT[\u0da7]",nextDay:"[\u0dc4\u0dd9\u0da7] LT[\u0da7]",nextWeek:"dddd LT[\u0da7]",lastDay:"[\u0d8a\u0dba\u0dda] LT[\u0da7]",lastWeek:"[\u0db4\u0dc3\u0dd4\u0d9c\u0dd2\u0dba] dddd LT[\u0da7]",sameElse:"L"},relativeTime:{future:"%s\u0d9a\u0dd2\u0db1\u0dca",past:"%s\u0d9a\u0da7 \u0db4\u0dd9\u0dbb",s:"\u0dad\u0dad\u0dca\u0db4\u0dbb \u0d9a\u0dd2\u0dc4\u0dd2\u0db4\u0dba",ss:"\u0dad\u0dad\u0dca\u0db4\u0dbb %d",m:"\u0db8\u0dd2\u0db1\u0dd2\u0dad\u0dca\u0dad\u0dd4\u0dc0",mm:"\u0db8\u0dd2\u0db1\u0dd2\u0dad\u0dca\u0dad\u0dd4 %d",h:"\u0db4\u0dd0\u0dba",hh:"\u0db4\u0dd0\u0dba %d",d:"\u0daf\u0dd2\u0db1\u0dba",dd:"\u0daf\u0dd2\u0db1 %d",M:"\u0db8\u0dcf\u0dc3\u0dba",MM:"\u0db8\u0dcf\u0dc3 %d",y:"\u0dc0\u0dc3\u0dbb",yy:"\u0dc0\u0dc3\u0dbb %d"},dayOfMonthOrdinalParse:/\d{1,2} \u0dc0\u0dd0\u0db1\u0dd2/,ordinal:function(c){return c+" \u0dc0\u0dd0\u0db1\u0dd2"},meridiemParse:/\u0db4\u0dd9\u0dbb \u0dc0\u0dbb\u0dd4|\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4|\u0db4\u0dd9.\u0dc0|\u0db4.\u0dc0./,isPM:function(c){return"\u0db4.\u0dc0."===c||"\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4"===c},meridiem:function(c,u,o){return c>11?o?"\u0db4.\u0dc0.":"\u0db4\u0dc3\u0dca \u0dc0\u0dbb\u0dd4":o?"\u0db4\u0dd9.\u0dc0.":"\u0db4\u0dd9\u0dbb \u0dc0\u0dbb\u0dd4"}})}(n(56908))},54590:function(Ce,E,n){!function(S){"use strict";var t="janu\xe1r_febru\xe1r_marec_apr\xedl_m\xe1j_j\xfan_j\xfal_august_september_okt\xf3ber_november_december".split("_"),e="jan_feb_mar_apr_m\xe1j_j\xfan_j\xfal_aug_sep_okt_nov_dec".split("_");function c(_){return _>1&&_<5}function u(_,s,h,b){var T=_+" ";switch(h){case"s":return s||b?"p\xe1r sek\xfand":"p\xe1r sekundami";case"ss":return s||b?T+(c(_)?"sekundy":"sek\xfand"):T+"sekundami";case"m":return s?"min\xfata":b?"min\xfatu":"min\xfatou";case"mm":return s||b?T+(c(_)?"min\xfaty":"min\xfat"):T+"min\xfatami";case"h":return s?"hodina":b?"hodinu":"hodinou";case"hh":return s||b?T+(c(_)?"hodiny":"hod\xedn"):T+"hodinami";case"d":return s||b?"de\u0148":"d\u0148om";case"dd":return s||b?T+(c(_)?"dni":"dn\xed"):T+"d\u0148ami";case"M":return s||b?"mesiac":"mesiacom";case"MM":return s||b?T+(c(_)?"mesiace":"mesiacov"):T+"mesiacmi";case"y":return s||b?"rok":"rokom";case"yy":return s||b?T+(c(_)?"roky":"rokov"):T+"rokmi"}}S.defineLocale("sk",{months:t,monthsShort:e,weekdays:"nede\u013ea_pondelok_utorok_streda_\u0161tvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_\u0161t_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_\u0161t_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nede\u013eu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo \u0161tvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[v\u010dera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minul\xfa nede\u013eu o] LT";case 1:case 2:case 4:case 5:return"[minul\xfd] dddd [o] LT";case 3:return"[minul\xfa stredu o] LT";case 6:return"[minul\xfa sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:u,ss:u,m:u,mm:u,h:u,hh:u,d:u,dd:u,M:u,MM:u,y:u,yy:u},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},20184:function(Ce,E,n){!function(S){"use strict";function t(c,u,o,_){var s=c+" ";switch(o){case"s":return u||_?"nekaj sekund":"nekaj sekundami";case"ss":return s+(1===c?u?"sekundo":"sekundi":2===c?u||_?"sekundi":"sekundah":c<5?u||_?"sekunde":"sekundah":"sekund");case"m":return u?"ena minuta":"eno minuto";case"mm":return s+(1===c?u?"minuta":"minuto":2===c?u||_?"minuti":"minutama":c<5?u||_?"minute":"minutami":u||_?"minut":"minutami");case"h":return u?"ena ura":"eno uro";case"hh":return s+(1===c?u?"ura":"uro":2===c?u||_?"uri":"urama":c<5?u||_?"ure":"urami":u||_?"ur":"urami");case"d":return u||_?"en dan":"enim dnem";case"dd":return s+(1===c?u||_?"dan":"dnem":2===c?u||_?"dni":"dnevoma":u||_?"dni":"dnevi");case"M":return u||_?"en mesec":"enim mesecem";case"MM":return s+(1===c?u||_?"mesec":"mesecem":2===c?u||_?"meseca":"mesecema":c<5?u||_?"mesece":"meseci":u||_?"mesecev":"meseci");case"y":return u||_?"eno leto":"enim letom";case"yy":return s+(1===c?u||_?"leto":"letom":2===c?u||_?"leti":"letoma":c<5?u||_?"leta":"leti":u||_?"let":"leti")}}S.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_\u010detrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._\u010det._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_\u010de_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[v\u010deraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prej\u0161njo] [nedeljo] [ob] LT";case 3:return"[prej\u0161njo] [sredo] [ob] LT";case 6:return"[prej\u0161njo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prej\u0161nji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"\u010dez %s",past:"pred %s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},56361:function(Ce,E,n){!function(S){"use strict";S.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_N\xebntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_N\xebn_Dhj".split("_"),weekdays:"E Diel_E H\xebn\xeb_E Mart\xeb_E M\xebrkur\xeb_E Enjte_E Premte_E Shtun\xeb".split("_"),weekdaysShort:"Die_H\xebn_Mar_M\xebr_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_M\xeb_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(c){return"M"===c.charAt(0)},meridiem:function(c,u,o){return c<12?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot n\xeb] LT",nextDay:"[Nes\xebr n\xeb] LT",nextWeek:"dddd [n\xeb] LT",lastDay:"[Dje n\xeb] LT",lastWeek:"dddd [e kaluar n\xeb] LT",sameElse:"L"},relativeTime:{future:"n\xeb %s",past:"%s m\xeb par\xeb",s:"disa sekonda",ss:"%d sekonda",m:"nj\xeb minut\xeb",mm:"%d minuta",h:"nj\xeb or\xeb",hh:"%d or\xeb",d:"nj\xeb dit\xeb",dd:"%d dit\xeb",M:"nj\xeb muaj",MM:"%d muaj",y:"nj\xeb vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},81287:function(Ce,E,n){!function(S){"use strict";var t={words:{ss:["\u0441\u0435\u043a\u0443\u043d\u0434\u0430","\u0441\u0435\u043a\u0443\u043d\u0434\u0435","\u0441\u0435\u043a\u0443\u043d\u0434\u0438"],m:["\u0458\u0435\u0434\u0430\u043d \u043c\u0438\u043d\u0443\u0442","\u0458\u0435\u0434\u043d\u043e\u0433 \u043c\u0438\u043d\u0443\u0442\u0430"],mm:["\u043c\u0438\u043d\u0443\u0442","\u043c\u0438\u043d\u0443\u0442\u0430","\u043c\u0438\u043d\u0443\u0442\u0430"],h:["\u0458\u0435\u0434\u0430\u043d \u0441\u0430\u0442","\u0458\u0435\u0434\u043d\u043e\u0433 \u0441\u0430\u0442\u0430"],hh:["\u0441\u0430\u0442","\u0441\u0430\u0442\u0430","\u0441\u0430\u0442\u0438"],d:["\u0458\u0435\u0434\u0430\u043d \u0434\u0430\u043d","\u0458\u0435\u0434\u043d\u043e\u0433 \u0434\u0430\u043d\u0430"],dd:["\u0434\u0430\u043d","\u0434\u0430\u043d\u0430","\u0434\u0430\u043d\u0430"],M:["\u0458\u0435\u0434\u0430\u043d \u043c\u0435\u0441\u0435\u0446","\u0458\u0435\u0434\u043d\u043e\u0433 \u043c\u0435\u0441\u0435\u0446\u0430"],MM:["\u043c\u0435\u0441\u0435\u0446","\u043c\u0435\u0441\u0435\u0446\u0430","\u043c\u0435\u0441\u0435\u0446\u0438"],y:["\u0458\u0435\u0434\u043d\u0443 \u0433\u043e\u0434\u0438\u043d\u0443","\u0458\u0435\u0434\u043d\u0435 \u0433\u043e\u0434\u0438\u043d\u0435"],yy:["\u0433\u043e\u0434\u0438\u043d\u0443","\u0433\u043e\u0434\u0438\u043d\u0435","\u0433\u043e\u0434\u0438\u043d\u0430"]},correctGrammaticalCase:function(u,o){return u%10>=1&&u%10<=4&&(u%100<10||u%100>=20)?u%10==1?o[0]:o[1]:o[2]},translate:function(u,o,_,s){var h=t.words[_];if(1===_.length)return"y"===_&&o?"\u0458\u0435\u0434\u043d\u0430 \u0433\u043e\u0434\u0438\u043d\u0430":s||o?h[0]:h[1];var b=t.correctGrammaticalCase(u,h);return"yy"===_&&o&&"\u0433\u043e\u0434\u0438\u043d\u0443"===b?u+" \u0433\u043e\u0434\u0438\u043d\u0430":u+" "+b}};S.defineLocale("sr-cyrl",{months:"\u0458\u0430\u043d\u0443\u0430\u0440_\u0444\u0435\u0431\u0440\u0443\u0430\u0440_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440_\u043e\u043a\u0442\u043e\u0431\u0430\u0440_\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440_\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440".split("_"),monthsShort:"\u0458\u0430\u043d._\u0444\u0435\u0431._\u043c\u0430\u0440._\u0430\u043f\u0440._\u043c\u0430\u0458_\u0458\u0443\u043d_\u0458\u0443\u043b_\u0430\u0432\u0433._\u0441\u0435\u043f._\u043e\u043a\u0442._\u043d\u043e\u0432._\u0434\u0435\u0446.".split("_"),monthsParseExact:!0,weekdays:"\u043d\u0435\u0434\u0435\u0459\u0430_\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u0430\u043a_\u0443\u0442\u043e\u0440\u0430\u043a_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0440\u0442\u0430\u043a_\u043f\u0435\u0442\u0430\u043a_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434._\u043f\u043e\u043d._\u0443\u0442\u043e._\u0441\u0440\u0435._\u0447\u0435\u0442._\u043f\u0435\u0442._\u0441\u0443\u0431.".split("_"),weekdaysMin:"\u043d\u0435_\u043f\u043e_\u0443\u0442_\u0441\u0440_\u0447\u0435_\u043f\u0435_\u0441\u0443".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D. M. YYYY.",LL:"D. MMMM YYYY.",LLL:"D. MMMM YYYY. H:mm",LLLL:"dddd, D. MMMM YYYY. H:mm"},calendar:{sameDay:"[\u0434\u0430\u043d\u0430\u0441 \u0443] LT",nextDay:"[\u0441\u0443\u0442\u0440\u0430 \u0443] LT",nextWeek:function(){switch(this.day()){case 0:return"[\u0443] [\u043d\u0435\u0434\u0435\u0459\u0443] [\u0443] LT";case 3:return"[\u0443] [\u0441\u0440\u0435\u0434\u0443] [\u0443] LT";case 6:return"[\u0443] [\u0441\u0443\u0431\u043e\u0442\u0443] [\u0443] LT";case 1:case 2:case 4:case 5:return"[\u0443] dddd [\u0443] LT"}},lastDay:"[\u0458\u0443\u0447\u0435 \u0443] LT",lastWeek:function(){return["[\u043f\u0440\u043e\u0448\u043b\u0435] [\u043d\u0435\u0434\u0435\u0459\u0435] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u0443\u0442\u043e\u0440\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u0435] [\u0441\u0440\u0435\u0434\u0435] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u0447\u0435\u0442\u0432\u0440\u0442\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u043e\u0433] [\u043f\u0435\u0442\u043a\u0430] [\u0443] LT","[\u043f\u0440\u043e\u0448\u043b\u0435] [\u0441\u0443\u0431\u043e\u0442\u0435] [\u0443] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"\u043f\u0440\u0435 %s",s:"\u043d\u0435\u043a\u043e\u043b\u0438\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:t.translate,dd:t.translate,M:t.translate,MM:t.translate,y:t.translate,yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},78965:function(Ce,E,n){!function(S){"use strict";var t={words:{ss:["sekunda","sekunde","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],d:["jedan dan","jednog dana"],dd:["dan","dana","dana"],M:["jedan mesec","jednog meseca"],MM:["mesec","meseca","meseci"],y:["jednu godinu","jedne godine"],yy:["godinu","godine","godina"]},correctGrammaticalCase:function(u,o){return u%10>=1&&u%10<=4&&(u%100<10||u%100>=20)?u%10==1?o[0]:o[1]:o[2]},translate:function(u,o,_,s){var h=t.words[_];if(1===_.length)return"y"===_&&o?"jedna godina":s||o?h[0]:h[1];var b=t.correctGrammaticalCase(u,h);return"yy"===_&&o&&"godinu"===b?u+" godina":u+" "+b}};S.defineLocale("sr",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljak_utorak_sreda_\u010detvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._\u010det._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010de_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D. M. YYYY.",LL:"D. MMMM YYYY.",LLL:"D. MMMM YYYY. H:mm",LLLL:"dddd, D. MMMM YYYY. H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[ju\u010de u] LT",lastWeek:function(){return["[pro\u0161le] [nedelje] [u] LT","[pro\u0161log] [ponedeljka] [u] LT","[pro\u0161log] [utorka] [u] LT","[pro\u0161le] [srede] [u] LT","[pro\u0161log] [\u010detvrtka] [u] LT","[pro\u0161log] [petka] [u] LT","[pro\u0161le] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:t.translate,dd:t.translate,M:t.translate,MM:t.translate,y:t.translate,yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n(56908))},25456:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(c,u,o){return c<11?"ekuseni":c<15?"emini":c<19?"entsambama":"ebusuku"},meridiemHour:function(c,u){return 12===c&&(c=0),"ekuseni"===u?c:"emini"===u?c>=11?c:c+12:"entsambama"===u||"ebusuku"===u?0===c?0:c+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}})}(n(56908))},70451:function(Ce,E,n){!function(S){"use strict";S.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xf6ndag_m\xe5ndag_tisdag_onsdag_torsdag_fredag_l\xf6rdag".split("_"),weekdaysShort:"s\xf6n_m\xe5n_tis_ons_tor_fre_l\xf6r".split("_"),weekdaysMin:"s\xf6_m\xe5_ti_on_to_fr_l\xf6".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Ig\xe5r] LT",nextWeek:"[P\xe5] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"f\xf6r %s sedan",s:"n\xe5gra sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en m\xe5nad",MM:"%d m\xe5nader",y:"ett \xe5r",yy:"%d \xe5r"},dayOfMonthOrdinalParse:/\d{1,2}(\:e|\:a)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?":e":1===u||2===u?":a":":e")},week:{dow:1,doy:4}})}(n(56908))},77558:function(Ce,E,n){!function(S){"use strict";S.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"hh:mm A",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"siku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}})}(n(56908))},51356:function(Ce,E,n){!function(S){"use strict";var t={1:"\u0be7",2:"\u0be8",3:"\u0be9",4:"\u0bea",5:"\u0beb",6:"\u0bec",7:"\u0bed",8:"\u0bee",9:"\u0bef",0:"\u0be6"},e={"\u0be7":"1","\u0be8":"2","\u0be9":"3","\u0bea":"4","\u0beb":"5","\u0bec":"6","\u0bed":"7","\u0bee":"8","\u0bef":"9","\u0be6":"0"};S.defineLocale("ta",{months:"\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf_\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf_\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd_\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd_\u0bae\u0bc7_\u0b9c\u0bc2\u0ba9\u0bcd_\u0b9c\u0bc2\u0bb2\u0bc8_\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd_\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bc6\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b85\u0b95\u0bcd\u0b9f\u0bc7\u0bbe\u0baa\u0bb0\u0bcd_\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd".split("_"),monthsShort:"\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf_\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf_\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd_\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd_\u0bae\u0bc7_\u0b9c\u0bc2\u0ba9\u0bcd_\u0b9c\u0bc2\u0bb2\u0bc8_\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd_\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bc6\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b85\u0b95\u0bcd\u0b9f\u0bc7\u0bbe\u0baa\u0bb0\u0bcd_\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd_\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd".split("_"),weekdays:"\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bcd\u0bb1\u0bc1\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0b9f\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0baa\u0bc1\u0ba4\u0ba9\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8_\u0b9a\u0ba9\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb4\u0bae\u0bc8".split("_"),weekdaysShort:"\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bc1_\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0bb3\u0bcd_\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd_\u0baa\u0bc1\u0ba4\u0ba9\u0bcd_\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0ba9\u0bcd_\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf_\u0b9a\u0ba9\u0bbf".split("_"),weekdaysMin:"\u0b9e\u0bbe_\u0ba4\u0bbf_\u0b9a\u0bc6_\u0baa\u0bc1_\u0bb5\u0bbf_\u0bb5\u0bc6_\u0b9a".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[\u0b87\u0ba9\u0bcd\u0bb1\u0bc1] LT",nextDay:"[\u0ba8\u0bbe\u0bb3\u0bc8] LT",nextWeek:"dddd, LT",lastDay:"[\u0ba8\u0bc7\u0bb1\u0bcd\u0bb1\u0bc1] LT",lastWeek:"[\u0b95\u0b9f\u0ba8\u0bcd\u0ba4 \u0bb5\u0bbe\u0bb0\u0bae\u0bcd] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0b87\u0bb2\u0bcd",past:"%s \u0bae\u0bc1\u0ba9\u0bcd",s:"\u0b92\u0bb0\u0bc1 \u0b9a\u0bbf\u0bb2 \u0bb5\u0bbf\u0ba8\u0bbe\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",ss:"%d \u0bb5\u0bbf\u0ba8\u0bbe\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",m:"\u0b92\u0bb0\u0bc1 \u0ba8\u0bbf\u0bae\u0bbf\u0b9f\u0bae\u0bcd",mm:"%d \u0ba8\u0bbf\u0bae\u0bbf\u0b9f\u0b99\u0bcd\u0b95\u0bb3\u0bcd",h:"\u0b92\u0bb0\u0bc1 \u0bae\u0ba3\u0bbf \u0ba8\u0bc7\u0bb0\u0bae\u0bcd",hh:"%d \u0bae\u0ba3\u0bbf \u0ba8\u0bc7\u0bb0\u0bae\u0bcd",d:"\u0b92\u0bb0\u0bc1 \u0ba8\u0bbe\u0bb3\u0bcd",dd:"%d \u0ba8\u0bbe\u0b9f\u0bcd\u0b95\u0bb3\u0bcd",M:"\u0b92\u0bb0\u0bc1 \u0bae\u0bbe\u0ba4\u0bae\u0bcd",MM:"%d \u0bae\u0bbe\u0ba4\u0b99\u0bcd\u0b95\u0bb3\u0bcd",y:"\u0b92\u0bb0\u0bc1 \u0bb5\u0bb0\u0bc1\u0b9f\u0bae\u0bcd",yy:"%d \u0b86\u0ba3\u0bcd\u0b9f\u0bc1\u0b95\u0bb3\u0bcd"},dayOfMonthOrdinalParse:/\d{1,2}\u0bb5\u0ba4\u0bc1/,ordinal:function(o){return o+"\u0bb5\u0ba4\u0bc1"},preparse:function(o){return o.replace(/[\u0be7\u0be8\u0be9\u0bea\u0beb\u0bec\u0bed\u0bee\u0bef\u0be6]/g,function(_){return e[_]})},postformat:function(o){return o.replace(/\d/g,function(_){return t[_]})},meridiemParse:/\u0baf\u0bbe\u0bae\u0bae\u0bcd|\u0bb5\u0bc8\u0b95\u0bb1\u0bc8|\u0b95\u0bbe\u0bb2\u0bc8|\u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd|\u0b8e\u0bb1\u0bcd\u0baa\u0bbe\u0b9f\u0bc1|\u0bae\u0bbe\u0bb2\u0bc8/,meridiem:function(o,_,s){return o<2?" \u0baf\u0bbe\u0bae\u0bae\u0bcd":o<6?" \u0bb5\u0bc8\u0b95\u0bb1\u0bc8":o<10?" \u0b95\u0bbe\u0bb2\u0bc8":o<14?" \u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd":o<18?" \u0b8e\u0bb1\u0bcd\u0baa\u0bbe\u0b9f\u0bc1":o<22?" \u0bae\u0bbe\u0bb2\u0bc8":" \u0baf\u0bbe\u0bae\u0bae\u0bcd"},meridiemHour:function(o,_){return 12===o&&(o=0),"\u0baf\u0bbe\u0bae\u0bae\u0bcd"===_?o<2?o:o+12:"\u0bb5\u0bc8\u0b95\u0bb1\u0bc8"===_||"\u0b95\u0bbe\u0bb2\u0bc8"===_||"\u0ba8\u0ba3\u0bcd\u0baa\u0b95\u0bb2\u0bcd"===_&&o>=10?o:o+12},week:{dow:0,doy:6}})}(n(56908))},73693:function(Ce,E,n){!function(S){"use strict";S.defineLocale("te",{months:"\u0c1c\u0c28\u0c35\u0c30\u0c3f_\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f_\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f_\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d_\u0c2e\u0c47_\u0c1c\u0c42\u0c28\u0c4d_\u0c1c\u0c41\u0c32\u0c48_\u0c06\u0c17\u0c38\u0c4d\u0c1f\u0c41_\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02\u0c2c\u0c30\u0c4d_\u0c05\u0c15\u0c4d\u0c1f\u0c4b\u0c2c\u0c30\u0c4d_\u0c28\u0c35\u0c02\u0c2c\u0c30\u0c4d_\u0c21\u0c3f\u0c38\u0c46\u0c02\u0c2c\u0c30\u0c4d".split("_"),monthsShort:"\u0c1c\u0c28._\u0c2b\u0c3f\u0c2c\u0c4d\u0c30._\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f_\u0c0f\u0c2a\u0c4d\u0c30\u0c3f._\u0c2e\u0c47_\u0c1c\u0c42\u0c28\u0c4d_\u0c1c\u0c41\u0c32\u0c48_\u0c06\u0c17._\u0c38\u0c46\u0c2a\u0c4d._\u0c05\u0c15\u0c4d\u0c1f\u0c4b._\u0c28\u0c35._\u0c21\u0c3f\u0c38\u0c46.".split("_"),monthsParseExact:!0,weekdays:"\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02_\u0c38\u0c4b\u0c2e\u0c35\u0c3e\u0c30\u0c02_\u0c2e\u0c02\u0c17\u0c33\u0c35\u0c3e\u0c30\u0c02_\u0c2c\u0c41\u0c27\u0c35\u0c3e\u0c30\u0c02_\u0c17\u0c41\u0c30\u0c41\u0c35\u0c3e\u0c30\u0c02_\u0c36\u0c41\u0c15\u0c4d\u0c30\u0c35\u0c3e\u0c30\u0c02_\u0c36\u0c28\u0c3f\u0c35\u0c3e\u0c30\u0c02".split("_"),weekdaysShort:"\u0c06\u0c26\u0c3f_\u0c38\u0c4b\u0c2e_\u0c2e\u0c02\u0c17\u0c33_\u0c2c\u0c41\u0c27_\u0c17\u0c41\u0c30\u0c41_\u0c36\u0c41\u0c15\u0c4d\u0c30_\u0c36\u0c28\u0c3f".split("_"),weekdaysMin:"\u0c06_\u0c38\u0c4b_\u0c2e\u0c02_\u0c2c\u0c41_\u0c17\u0c41_\u0c36\u0c41_\u0c36".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0c28\u0c47\u0c21\u0c41] LT",nextDay:"[\u0c30\u0c47\u0c2a\u0c41] LT",nextWeek:"dddd, LT",lastDay:"[\u0c28\u0c3f\u0c28\u0c4d\u0c28] LT",lastWeek:"[\u0c17\u0c24] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0c32\u0c4b",past:"%s \u0c15\u0c4d\u0c30\u0c3f\u0c24\u0c02",s:"\u0c15\u0c4a\u0c28\u0c4d\u0c28\u0c3f \u0c15\u0c4d\u0c37\u0c23\u0c3e\u0c32\u0c41",ss:"%d \u0c38\u0c46\u0c15\u0c28\u0c4d\u0c32\u0c41",m:"\u0c12\u0c15 \u0c28\u0c3f\u0c2e\u0c3f\u0c37\u0c02",mm:"%d \u0c28\u0c3f\u0c2e\u0c3f\u0c37\u0c3e\u0c32\u0c41",h:"\u0c12\u0c15 \u0c17\u0c02\u0c1f",hh:"%d \u0c17\u0c02\u0c1f\u0c32\u0c41",d:"\u0c12\u0c15 \u0c30\u0c4b\u0c1c\u0c41",dd:"%d \u0c30\u0c4b\u0c1c\u0c41\u0c32\u0c41",M:"\u0c12\u0c15 \u0c28\u0c46\u0c32",MM:"%d \u0c28\u0c46\u0c32\u0c32\u0c41",y:"\u0c12\u0c15 \u0c38\u0c02\u0c35\u0c24\u0c4d\u0c38\u0c30\u0c02",yy:"%d \u0c38\u0c02\u0c35\u0c24\u0c4d\u0c38\u0c30\u0c3e\u0c32\u0c41"},dayOfMonthOrdinalParse:/\d{1,2}\u0c35/,ordinal:"%d\u0c35",meridiemParse:/\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f|\u0c09\u0c26\u0c2f\u0c02|\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02|\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02/,meridiemHour:function(c,u){return 12===c&&(c=0),"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f"===u?c<4?c:c+12:"\u0c09\u0c26\u0c2f\u0c02"===u?c:"\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02"===u?c>=10?c:c+12:"\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02"===u?c+12:void 0},meridiem:function(c,u,o){return c<4?"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f":c<10?"\u0c09\u0c26\u0c2f\u0c02":c<17?"\u0c2e\u0c27\u0c4d\u0c2f\u0c3e\u0c39\u0c4d\u0c28\u0c02":c<20?"\u0c38\u0c3e\u0c2f\u0c02\u0c24\u0c4d\u0c30\u0c02":"\u0c30\u0c3e\u0c24\u0c4d\u0c30\u0c3f"},week:{dow:0,doy:6}})}(n(56908))},21243:function(Ce,E,n){!function(S){"use strict";S.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Ju\xf1u_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"segundu balun",ss:"segundu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},42500:function(Ce,E,n){!function(S){"use strict";var t={0:"-\u0443\u043c",1:"-\u0443\u043c",2:"-\u044e\u043c",3:"-\u044e\u043c",4:"-\u0443\u043c",5:"-\u0443\u043c",6:"-\u0443\u043c",7:"-\u0443\u043c",8:"-\u0443\u043c",9:"-\u0443\u043c",10:"-\u0443\u043c",12:"-\u0443\u043c",13:"-\u0443\u043c",20:"-\u0443\u043c",30:"-\u044e\u043c",40:"-\u0443\u043c",50:"-\u0443\u043c",60:"-\u0443\u043c",70:"-\u0443\u043c",80:"-\u0443\u043c",90:"-\u0443\u043c",100:"-\u0443\u043c"};S.defineLocale("tg",{months:{format:"\u044f\u043d\u0432\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0430\u043b\u0438_\u043c\u0430\u0440\u0442\u0438_\u0430\u043f\u0440\u0435\u043b\u0438_\u043c\u0430\u0439\u0438_\u0438\u044e\u043d\u0438_\u0438\u044e\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442\u0438_\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u0438_\u043e\u043a\u0442\u044f\u0431\u0440\u0438_\u043d\u043e\u044f\u0431\u0440\u0438_\u0434\u0435\u043a\u0430\u0431\u0440\u0438".split("_"),standalone:"\u044f\u043d\u0432\u0430\u0440_\u0444\u0435\u0432\u0440\u0430\u043b_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440_\u043e\u043a\u0442\u044f\u0431\u0440_\u043d\u043e\u044f\u0431\u0440_\u0434\u0435\u043a\u0430\u0431\u0440".split("_")},monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u044f\u043a\u0448\u0430\u043d\u0431\u0435_\u0434\u0443\u0448\u0430\u043d\u0431\u0435_\u0441\u0435\u0448\u0430\u043d\u0431\u0435_\u0447\u043e\u0440\u0448\u0430\u043d\u0431\u0435_\u043f\u0430\u043d\u04b7\u0448\u0430\u043d\u0431\u0435_\u04b7\u0443\u043c\u044a\u0430_\u0448\u0430\u043d\u0431\u0435".split("_"),weekdaysShort:"\u044f\u0448\u0431_\u0434\u0448\u0431_\u0441\u0448\u0431_\u0447\u0448\u0431_\u043f\u0448\u0431_\u04b7\u0443\u043c_\u0448\u043d\u0431".split("_"),weekdaysMin:"\u044f\u0448_\u0434\u0448_\u0441\u0448_\u0447\u0448_\u043f\u0448_\u04b7\u043c_\u0448\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0418\u043c\u0440\u04ef\u0437 \u0441\u043e\u0430\u0442\u0438] LT",nextDay:"[\u0424\u0430\u0440\u0434\u043e \u0441\u043e\u0430\u0442\u0438] LT",lastDay:"[\u0414\u0438\u0440\u04ef\u0437 \u0441\u043e\u0430\u0442\u0438] LT",nextWeek:"dddd[\u0438] [\u04b3\u0430\u0444\u0442\u0430\u0438 \u043e\u044f\u043d\u0434\u0430 \u0441\u043e\u0430\u0442\u0438] LT",lastWeek:"dddd[\u0438] [\u04b3\u0430\u0444\u0442\u0430\u0438 \u0433\u0443\u0437\u0430\u0448\u0442\u0430 \u0441\u043e\u0430\u0442\u0438] LT",sameElse:"L"},relativeTime:{future:"\u0431\u0430\u044a\u0434\u0438 %s",past:"%s \u043f\u0435\u0448",s:"\u044f\u043a\u0447\u0430\u043d\u0434 \u0441\u043e\u043d\u0438\u044f",m:"\u044f\u043a \u0434\u0430\u049b\u0438\u049b\u0430",mm:"%d \u0434\u0430\u049b\u0438\u049b\u0430",h:"\u044f\u043a \u0441\u043e\u0430\u0442",hh:"%d \u0441\u043e\u0430\u0442",d:"\u044f\u043a \u0440\u04ef\u0437",dd:"%d \u0440\u04ef\u0437",M:"\u044f\u043a \u043c\u043e\u04b3",MM:"%d \u043c\u043e\u04b3",y:"\u044f\u043a \u0441\u043e\u043b",yy:"%d \u0441\u043e\u043b"},meridiemParse:/\u0448\u0430\u0431|\u0441\u0443\u0431\u04b3|\u0440\u04ef\u0437|\u0431\u0435\u0433\u043e\u04b3/,meridiemHour:function(u,o){return 12===u&&(u=0),"\u0448\u0430\u0431"===o?u<4?u:u+12:"\u0441\u0443\u0431\u04b3"===o?u:"\u0440\u04ef\u0437"===o?u>=11?u:u+12:"\u0431\u0435\u0433\u043e\u04b3"===o?u+12:void 0},meridiem:function(u,o,_){return u<4?"\u0448\u0430\u0431":u<11?"\u0441\u0443\u0431\u04b3":u<16?"\u0440\u04ef\u0437":u<19?"\u0431\u0435\u0433\u043e\u04b3":"\u0448\u0430\u0431"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0443\u043c|\u044e\u043c)/,ordinal:function(u){return u+(t[u]||t[u%10]||t[u>=100?100:null])},week:{dow:1,doy:7}})}(n(56908))},55768:function(Ce,E,n){!function(S){"use strict";S.defineLocale("th",{months:"\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21_\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c_\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21_\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19_\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21_\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19_\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21_\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21_\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19_\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21_\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19_\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21".split("_"),monthsShort:"\u0e21.\u0e04._\u0e01.\u0e1e._\u0e21\u0e35.\u0e04._\u0e40\u0e21.\u0e22._\u0e1e.\u0e04._\u0e21\u0e34.\u0e22._\u0e01.\u0e04._\u0e2a.\u0e04._\u0e01.\u0e22._\u0e15.\u0e04._\u0e1e.\u0e22._\u0e18.\u0e04.".split("_"),monthsParseExact:!0,weekdays:"\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c_\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c_\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23_\u0e1e\u0e38\u0e18_\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35_\u0e28\u0e38\u0e01\u0e23\u0e4c_\u0e40\u0e2a\u0e32\u0e23\u0e4c".split("_"),weekdaysShort:"\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c_\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c_\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23_\u0e1e\u0e38\u0e18_\u0e1e\u0e24\u0e2b\u0e31\u0e2a_\u0e28\u0e38\u0e01\u0e23\u0e4c_\u0e40\u0e2a\u0e32\u0e23\u0e4c".split("_"),weekdaysMin:"\u0e2d\u0e32._\u0e08._\u0e2d._\u0e1e._\u0e1e\u0e24._\u0e28._\u0e2a.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0e40\u0e27\u0e25\u0e32 H:mm",LLLL:"\u0e27\u0e31\u0e19dddd\u0e17\u0e35\u0e48 D MMMM YYYY \u0e40\u0e27\u0e25\u0e32 H:mm"},meridiemParse:/\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07|\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07/,isPM:function(c){return"\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"===c},meridiem:function(c,u,o){return c<12?"\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07":"\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"},calendar:{sameDay:"[\u0e27\u0e31\u0e19\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",nextDay:"[\u0e1e\u0e23\u0e38\u0e48\u0e07\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",nextWeek:"dddd[\u0e2b\u0e19\u0e49\u0e32 \u0e40\u0e27\u0e25\u0e32] LT",lastDay:"[\u0e40\u0e21\u0e37\u0e48\u0e2d\u0e27\u0e32\u0e19\u0e19\u0e35\u0e49 \u0e40\u0e27\u0e25\u0e32] LT",lastWeek:"[\u0e27\u0e31\u0e19]dddd[\u0e17\u0e35\u0e48\u0e41\u0e25\u0e49\u0e27 \u0e40\u0e27\u0e25\u0e32] LT",sameElse:"L"},relativeTime:{future:"\u0e2d\u0e35\u0e01 %s",past:"%s\u0e17\u0e35\u0e48\u0e41\u0e25\u0e49\u0e27",s:"\u0e44\u0e21\u0e48\u0e01\u0e35\u0e48\u0e27\u0e34\u0e19\u0e32\u0e17\u0e35",ss:"%d \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35",m:"1 \u0e19\u0e32\u0e17\u0e35",mm:"%d \u0e19\u0e32\u0e17\u0e35",h:"1 \u0e0a\u0e31\u0e48\u0e27\u0e42\u0e21\u0e07",hh:"%d \u0e0a\u0e31\u0e48\u0e27\u0e42\u0e21\u0e07",d:"1 \u0e27\u0e31\u0e19",dd:"%d \u0e27\u0e31\u0e19",w:"1 \u0e2a\u0e31\u0e1b\u0e14\u0e32\u0e2b\u0e4c",ww:"%d \u0e2a\u0e31\u0e1b\u0e14\u0e32\u0e2b\u0e4c",M:"1 \u0e40\u0e14\u0e37\u0e2d\u0e19",MM:"%d \u0e40\u0e14\u0e37\u0e2d\u0e19",y:"1 \u0e1b\u0e35",yy:"%d \u0e1b\u0e35"}})}(n(56908))},77761:function(Ce,E,n){!function(S){"use strict";var t={1:"'inji",5:"'inji",8:"'inji",70:"'inji",80:"'inji",2:"'nji",7:"'nji",20:"'nji",50:"'nji",3:"'\xfcnji",4:"'\xfcnji",100:"'\xfcnji",6:"'njy",9:"'unjy",10:"'unjy",30:"'unjy",60:"'ynjy",90:"'ynjy"};S.defineLocale("tk",{months:"\xddanwar_Fewral_Mart_Aprel_Ma\xfd_I\xfdun_I\xfdul_Awgust_Sent\xfdabr_Okt\xfdabr_No\xfdabr_Dekabr".split("_"),monthsShort:"\xddan_Few_Mar_Apr_Ma\xfd_I\xfdn_I\xfdl_Awg_Sen_Okt_No\xfd_Dek".split("_"),weekdays:"\xddek\u015fenbe_Du\u015fenbe_Si\u015fenbe_\xc7ar\u015fenbe_Pen\u015fenbe_Anna_\u015eenbe".split("_"),weekdaysShort:"\xddek_Du\u015f_Si\u015f_\xc7ar_Pen_Ann_\u015een".split("_"),weekdaysMin:"\xddk_D\u015f_S\u015f_\xc7r_Pn_An_\u015en".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn sagat] LT",nextDay:"[ertir sagat] LT",nextWeek:"[indiki] dddd [sagat] LT",lastDay:"[d\xfc\xfdn] LT",lastWeek:"[ge\xe7en] dddd [sagat] LT",sameElse:"L"},relativeTime:{future:"%s so\u0148",past:"%s \xf6\u0148",s:"birn\xe4\xe7e sekunt",m:"bir minut",mm:"%d minut",h:"bir sagat",hh:"%d sagat",d:"bir g\xfcn",dd:"%d g\xfcn",M:"bir a\xfd",MM:"%d a\xfd",y:"bir \xfdyl",yy:"%d \xfdyl"},ordinal:function(u,o){switch(o){case"d":case"D":case"Do":case"DD":return u;default:if(0===u)return u+"'unjy";var _=u%10;return u+(t[_]||t[u%100-_]||t[u>=100?100:null])}},week:{dow:1,doy:7}})}(n(56908))},35780:function(Ce,E,n){!function(S){"use strict";S.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(c){return c},week:{dow:1,doy:4}})}(n(56908))},29590:function(Ce,E,n){!function(S){"use strict";var t="pagh_wa\u2019_cha\u2019_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function u(s,h,b,T){var y=function o(s){var h=Math.floor(s%1e3/100),b=Math.floor(s%100/10),T=s%10,y="";return h>0&&(y+=t[h]+"vatlh"),b>0&&(y+=(""!==y?" ":"")+t[b]+"maH"),T>0&&(y+=(""!==y?" ":"")+t[T]),""===y?"pagh":y}(s);switch(b){case"ss":return y+" lup";case"mm":return y+" tup";case"hh":return y+" rep";case"dd":return y+" jaj";case"MM":return y+" jar";case"yy":return y+" DIS"}}S.defineLocale("tlh",{months:"tera\u2019 jar wa\u2019_tera\u2019 jar cha\u2019_tera\u2019 jar wej_tera\u2019 jar loS_tera\u2019 jar vagh_tera\u2019 jar jav_tera\u2019 jar Soch_tera\u2019 jar chorgh_tera\u2019 jar Hut_tera\u2019 jar wa\u2019maH_tera\u2019 jar wa\u2019maH wa\u2019_tera\u2019 jar wa\u2019maH cha\u2019".split("_"),monthsShort:"jar wa\u2019_jar cha\u2019_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa\u2019maH_jar wa\u2019maH wa\u2019_jar wa\u2019maH cha\u2019".split("_"),monthsParseExact:!0,weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa\u2019leS] LT",nextWeek:"LLL",lastDay:"[wa\u2019Hu\u2019] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:function e(s){var h=s;return-1!==s.indexOf("jaj")?h.slice(0,-3)+"leS":-1!==s.indexOf("jar")?h.slice(0,-3)+"waQ":-1!==s.indexOf("DIS")?h.slice(0,-3)+"nem":h+" pIq"},past:function c(s){var h=s;return-1!==s.indexOf("jaj")?h.slice(0,-3)+"Hu\u2019":-1!==s.indexOf("jar")?h.slice(0,-3)+"wen":-1!==s.indexOf("DIS")?h.slice(0,-3)+"ben":h+" ret"},s:"puS lup",ss:u,m:"wa\u2019 tup",mm:u,h:"wa\u2019 rep",hh:u,d:"wa\u2019 jaj",dd:u,M:"wa\u2019 jar",MM:u,y:"wa\u2019 DIS",yy:u},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},33807:function(Ce,E,n){!function(S){"use strict";var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'\xfcnc\xfc",4:"'\xfcnc\xfc",100:"'\xfcnc\xfc",6:"'nc\u0131",9:"'uncu",10:"'uncu",30:"'uncu",60:"'\u0131nc\u0131",90:"'\u0131nc\u0131"};S.defineLocale("tr",{months:"Ocak_\u015eubat_Mart_Nisan_May\u0131s_Haziran_Temmuz_A\u011fustos_Eyl\xfcl_Ekim_Kas\u0131m_Aral\u0131k".split("_"),monthsShort:"Oca_\u015eub_Mar_Nis_May_Haz_Tem_A\u011fu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Sal\u0131_\xc7ar\u015famba_Per\u015fembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pzt_Sal_\xc7ar_Per_Cum_Cmt".split("_"),weekdaysMin:"Pz_Pt_Sa_\xc7a_Pe_Cu_Ct".split("_"),meridiem:function(u,o,_){return u<12?_?"\xf6\xf6":"\xd6\xd6":_?"\xf6s":"\xd6S"},meridiemParse:/\xf6\xf6|\xd6\xd6|\xf6s|\xd6S/,isPM:function(u){return"\xf6s"===u||"\xd6S"===u},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn saat] LT",nextDay:"[yar\u0131n saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[d\xfcn] LT",lastWeek:"[ge\xe7en] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \xf6nce",s:"birka\xe7 saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir g\xfcn",dd:"%d g\xfcn",w:"bir hafta",ww:"%d hafta",M:"bir ay",MM:"%d ay",y:"bir y\u0131l",yy:"%d y\u0131l"},ordinal:function(u,o){switch(o){case"d":case"D":case"Do":case"DD":return u;default:if(0===u)return u+"'\u0131nc\u0131";var _=u%10;return u+(t[_]||t[u%100-_]||t[u>=100?100:null])}},week:{dow:1,doy:7}})}(n(56908))},93857:function(Ce,E,n){!function(S){"use strict";function e(c,u,o,_){var s={s:["viensas secunds","'iensas secunds"],ss:[c+" secunds",c+" secunds"],m:["'n m\xedut","'iens m\xedut"],mm:[c+" m\xeduts",c+" m\xeduts"],h:["'n \xfeora","'iensa \xfeora"],hh:[c+" \xfeoras",c+" \xfeoras"],d:["'n ziua","'iensa ziua"],dd:[c+" ziuas",c+" ziuas"],M:["'n mes","'iens mes"],MM:[c+" mesen",c+" mesen"],y:["'n ar","'iens ar"],yy:[c+" ars",c+" ars"]};return _||u?s[o][0]:s[o][1]}S.defineLocale("tzl",{months:"Januar_Fevraglh_Mar\xe7_Avr\xefu_Mai_G\xfcn_Julia_Guscht_Setemvar_Listop\xe4ts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_G\xfcn_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"S\xfaladi_L\xfane\xe7i_Maitzi_M\xe1rcuri_Xh\xfaadi_Vi\xe9ner\xe7i_S\xe1turi".split("_"),weekdaysShort:"S\xfal_L\xfan_Mai_M\xe1r_Xh\xfa_Vi\xe9_S\xe1t".split("_"),weekdaysMin:"S\xfa_L\xfa_Ma_M\xe1_Xh_Vi_S\xe1".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiemParse:/d\'o|d\'a/i,isPM:function(u){return"d'o"===u.toLowerCase()},meridiem:function(u,o,_){return u>11?_?"d'o":"D'O":_?"d'a":"D'A"},calendar:{sameDay:"[oxhi \xe0] LT",nextDay:"[dem\xe0 \xe0] LT",nextWeek:"dddd [\xe0] LT",lastDay:"[ieiri \xe0] LT",lastWeek:"[s\xfcr el] dddd [lasteu \xe0] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n(56908))},8806:function(Ce,E,n){!function(S){"use strict";S.defineLocale("tzm-latn",{months:"innayr_br\u02e4ayr\u02e4_mar\u02e4s\u02e4_ibrir_mayyw_ywnyw_ywlywz_\u0263w\u0161t_\u0161wtanbir_kt\u02e4wbr\u02e4_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_br\u02e4ayr\u02e4_mar\u02e4s\u02e4_ibrir_mayyw_ywnyw_ywlywz_\u0263w\u0161t_\u0161wtanbir_kt\u02e4wbr\u02e4_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asi\u1e0dyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",ss:"%d imik",m:"minu\u1e0d",mm:"%d minu\u1e0d",h:"sa\u025ba",hh:"%d tassa\u025bin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}(n(56908))},60654:function(Ce,E,n){!function(S){"use strict";S.defineLocale("tzm",{months:"\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54_\u2d31\u2d55\u2d30\u2d62\u2d55_\u2d4e\u2d30\u2d55\u2d5a_\u2d49\u2d31\u2d54\u2d49\u2d54_\u2d4e\u2d30\u2d62\u2d62\u2d53_\u2d62\u2d53\u2d4f\u2d62\u2d53_\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63_\u2d56\u2d53\u2d5b\u2d5c_\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d3d\u2d5f\u2d53\u2d31\u2d55_\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d37\u2d53\u2d4a\u2d4f\u2d31\u2d49\u2d54".split("_"),monthsShort:"\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54_\u2d31\u2d55\u2d30\u2d62\u2d55_\u2d4e\u2d30\u2d55\u2d5a_\u2d49\u2d31\u2d54\u2d49\u2d54_\u2d4e\u2d30\u2d62\u2d62\u2d53_\u2d62\u2d53\u2d4f\u2d62\u2d53_\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63_\u2d56\u2d53\u2d5b\u2d5c_\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d3d\u2d5f\u2d53\u2d31\u2d55_\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54_\u2d37\u2d53\u2d4a\u2d4f\u2d31\u2d49\u2d54".split("_"),weekdays:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),weekdaysShort:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),weekdaysMin:"\u2d30\u2d59\u2d30\u2d4e\u2d30\u2d59_\u2d30\u2d62\u2d4f\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4f\u2d30\u2d59_\u2d30\u2d3d\u2d54\u2d30\u2d59_\u2d30\u2d3d\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d4e\u2d61\u2d30\u2d59_\u2d30\u2d59\u2d49\u2d39\u2d62\u2d30\u2d59".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u2d30\u2d59\u2d37\u2d45 \u2d34] LT",nextDay:"[\u2d30\u2d59\u2d3d\u2d30 \u2d34] LT",nextWeek:"dddd [\u2d34] LT",lastDay:"[\u2d30\u2d5a\u2d30\u2d4f\u2d5c \u2d34] LT",lastWeek:"dddd [\u2d34] LT",sameElse:"L"},relativeTime:{future:"\u2d37\u2d30\u2d37\u2d45 \u2d59 \u2d62\u2d30\u2d4f %s",past:"\u2d62\u2d30\u2d4f %s",s:"\u2d49\u2d4e\u2d49\u2d3d",ss:"%d \u2d49\u2d4e\u2d49\u2d3d",m:"\u2d4e\u2d49\u2d4f\u2d53\u2d3a",mm:"%d \u2d4e\u2d49\u2d4f\u2d53\u2d3a",h:"\u2d59\u2d30\u2d44\u2d30",hh:"%d \u2d5c\u2d30\u2d59\u2d59\u2d30\u2d44\u2d49\u2d4f",d:"\u2d30\u2d59\u2d59",dd:"%d o\u2d59\u2d59\u2d30\u2d4f",M:"\u2d30\u2d62o\u2d53\u2d54",MM:"%d \u2d49\u2d62\u2d62\u2d49\u2d54\u2d4f",y:"\u2d30\u2d59\u2d33\u2d30\u2d59",yy:"%d \u2d49\u2d59\u2d33\u2d30\u2d59\u2d4f"},week:{dow:6,doy:12}})}(n(56908))},30845:function(Ce,E,n){!function(S){"use strict";S.defineLocale("ug-cn",{months:"\u064a\u0627\u0646\u06cb\u0627\u0631_\u0641\u06d0\u06cb\u0631\u0627\u0644_\u0645\u0627\u0631\u062a_\u0626\u0627\u067e\u0631\u06d0\u0644_\u0645\u0627\u064a_\u0626\u0649\u064a\u06c7\u0646_\u0626\u0649\u064a\u06c7\u0644_\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a_\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631_\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631_\u0646\u0648\u064a\u0627\u0628\u0649\u0631_\u062f\u06d0\u0643\u0627\u0628\u0649\u0631".split("_"),monthsShort:"\u064a\u0627\u0646\u06cb\u0627\u0631_\u0641\u06d0\u06cb\u0631\u0627\u0644_\u0645\u0627\u0631\u062a_\u0626\u0627\u067e\u0631\u06d0\u0644_\u0645\u0627\u064a_\u0626\u0649\u064a\u06c7\u0646_\u0626\u0649\u064a\u06c7\u0644_\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a_\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631_\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631_\u0646\u0648\u064a\u0627\u0628\u0649\u0631_\u062f\u06d0\u0643\u0627\u0628\u0649\u0631".split("_"),weekdays:"\u064a\u06d5\u0643\u0634\u06d5\u0646\u0628\u06d5_\u062f\u06c8\u0634\u06d5\u0646\u0628\u06d5_\u0633\u06d5\u064a\u0634\u06d5\u0646\u0628\u06d5_\u0686\u0627\u0631\u0634\u06d5\u0646\u0628\u06d5_\u067e\u06d5\u064a\u0634\u06d5\u0646\u0628\u06d5_\u062c\u06c8\u0645\u06d5_\u0634\u06d5\u0646\u0628\u06d5".split("_"),weekdaysShort:"\u064a\u06d5_\u062f\u06c8_\u0633\u06d5_\u0686\u0627_\u067e\u06d5_\u062c\u06c8_\u0634\u06d5".split("_"),weekdaysMin:"\u064a\u06d5_\u062f\u06c8_\u0633\u06d5_\u0686\u0627_\u067e\u06d5_\u062c\u06c8_\u0634\u06d5".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649",LLL:"YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649\u060c HH:mm",LLLL:"dddd\u060c YYYY-\u064a\u0649\u0644\u0649M-\u0626\u0627\u064a\u0646\u0649\u06adD-\u0643\u06c8\u0646\u0649\u060c HH:mm"},meridiemParse:/\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5|\u0633\u06d5\u06be\u06d5\u0631|\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646|\u0686\u06c8\u0634|\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646|\u0643\u06d5\u0686/,meridiemHour:function(c,u){return 12===c&&(c=0),"\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5"===u||"\u0633\u06d5\u06be\u06d5\u0631"===u||"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646"===u?c:"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646"===u||"\u0643\u06d5\u0686"===u?c+12:c>=11?c:c+12},meridiem:function(c,u,o){var _=100*c+u;return _<600?"\u064a\u06d0\u0631\u0649\u0645 \u0643\u06d0\u0686\u06d5":_<900?"\u0633\u06d5\u06be\u06d5\u0631":_<1130?"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0628\u06c7\u0631\u06c7\u0646":_<1230?"\u0686\u06c8\u0634":_<1800?"\u0686\u06c8\u0634\u062a\u0649\u0646 \u0643\u06d0\u064a\u0649\u0646":"\u0643\u06d5\u0686"},calendar:{sameDay:"[\u0628\u06c8\u06af\u06c8\u0646 \u0633\u0627\u0626\u06d5\u062a] LT",nextDay:"[\u0626\u06d5\u062a\u06d5 \u0633\u0627\u0626\u06d5\u062a] LT",nextWeek:"[\u0643\u06d0\u0644\u06d5\u0631\u0643\u0649] dddd [\u0633\u0627\u0626\u06d5\u062a] LT",lastDay:"[\u062a\u06c6\u0646\u06c8\u06af\u06c8\u0646] LT",lastWeek:"[\u0626\u0627\u0644\u062f\u0649\u0646\u0642\u0649] dddd [\u0633\u0627\u0626\u06d5\u062a] LT",sameElse:"L"},relativeTime:{future:"%s \u0643\u06d0\u064a\u0649\u0646",past:"%s \u0628\u06c7\u0631\u06c7\u0646",s:"\u0646\u06d5\u0686\u0686\u06d5 \u0633\u06d0\u0643\u0648\u0646\u062a",ss:"%d \u0633\u06d0\u0643\u0648\u0646\u062a",m:"\u0628\u0649\u0631 \u0645\u0649\u0646\u06c7\u062a",mm:"%d \u0645\u0649\u0646\u06c7\u062a",h:"\u0628\u0649\u0631 \u0633\u0627\u0626\u06d5\u062a",hh:"%d \u0633\u0627\u0626\u06d5\u062a",d:"\u0628\u0649\u0631 \u0643\u06c8\u0646",dd:"%d \u0643\u06c8\u0646",M:"\u0628\u0649\u0631 \u0626\u0627\u064a",MM:"%d \u0626\u0627\u064a",y:"\u0628\u0649\u0631 \u064a\u0649\u0644",yy:"%d \u064a\u0649\u0644"},dayOfMonthOrdinalParse:/\d{1,2}(-\u0643\u06c8\u0646\u0649|-\u0626\u0627\u064a|-\u06be\u06d5\u067e\u062a\u06d5)/,ordinal:function(c,u){switch(u){case"d":case"D":case"DDD":return c+"-\u0643\u06c8\u0646\u0649";case"w":case"W":return c+"-\u06be\u06d5\u067e\u062a\u06d5";default:return c}},preparse:function(c){return c.replace(/\u060c/g,",")},postformat:function(c){return c.replace(/,/g,"\u060c")},week:{dow:1,doy:7}})}(n(56908))},19232:function(Ce,E,n){!function(S){"use strict";function e(_,s,h){return"m"===h?s?"\u0445\u0432\u0438\u043b\u0438\u043d\u0430":"\u0445\u0432\u0438\u043b\u0438\u043d\u0443":"h"===h?s?"\u0433\u043e\u0434\u0438\u043d\u0430":"\u0433\u043e\u0434\u0438\u043d\u0443":_+" "+function t(_,s){var h=_.split("_");return s%10==1&&s%100!=11?h[0]:s%10>=2&&s%10<=4&&(s%100<10||s%100>=20)?h[1]:h[2]}({ss:s?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u0438_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u0438_\u0441\u0435\u043a\u0443\u043d\u0434",mm:s?"\u0445\u0432\u0438\u043b\u0438\u043d\u0430_\u0445\u0432\u0438\u043b\u0438\u043d\u0438_\u0445\u0432\u0438\u043b\u0438\u043d":"\u0445\u0432\u0438\u043b\u0438\u043d\u0443_\u0445\u0432\u0438\u043b\u0438\u043d\u0438_\u0445\u0432\u0438\u043b\u0438\u043d",hh:s?"\u0433\u043e\u0434\u0438\u043d\u0430_\u0433\u043e\u0434\u0438\u043d\u0438_\u0433\u043e\u0434\u0438\u043d":"\u0433\u043e\u0434\u0438\u043d\u0443_\u0433\u043e\u0434\u0438\u043d\u0438_\u0433\u043e\u0434\u0438\u043d",dd:"\u0434\u0435\u043d\u044c_\u0434\u043d\u0456_\u0434\u043d\u0456\u0432",MM:"\u043c\u0456\u0441\u044f\u0446\u044c_\u043c\u0456\u0441\u044f\u0446\u0456_\u043c\u0456\u0441\u044f\u0446\u0456\u0432",yy:"\u0440\u0456\u043a_\u0440\u043e\u043a\u0438_\u0440\u043e\u043a\u0456\u0432"}[h],+_)}function u(_){return function(){return _+"\u043e"+(11===this.hours()?"\u0431":"")+"] LT"}}S.defineLocale("uk",{months:{format:"\u0441\u0456\u0447\u043d\u044f_\u043b\u044e\u0442\u043e\u0433\u043e_\u0431\u0435\u0440\u0435\u0437\u043d\u044f_\u043a\u0432\u0456\u0442\u043d\u044f_\u0442\u0440\u0430\u0432\u043d\u044f_\u0447\u0435\u0440\u0432\u043d\u044f_\u043b\u0438\u043f\u043d\u044f_\u0441\u0435\u0440\u043f\u043d\u044f_\u0432\u0435\u0440\u0435\u0441\u043d\u044f_\u0436\u043e\u0432\u0442\u043d\u044f_\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434\u0430_\u0433\u0440\u0443\u0434\u043d\u044f".split("_"),standalone:"\u0441\u0456\u0447\u0435\u043d\u044c_\u043b\u044e\u0442\u0438\u0439_\u0431\u0435\u0440\u0435\u0437\u0435\u043d\u044c_\u043a\u0432\u0456\u0442\u0435\u043d\u044c_\u0442\u0440\u0430\u0432\u0435\u043d\u044c_\u0447\u0435\u0440\u0432\u0435\u043d\u044c_\u043b\u0438\u043f\u0435\u043d\u044c_\u0441\u0435\u0440\u043f\u0435\u043d\u044c_\u0432\u0435\u0440\u0435\u0441\u0435\u043d\u044c_\u0436\u043e\u0432\u0442\u0435\u043d\u044c_\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434_\u0433\u0440\u0443\u0434\u0435\u043d\u044c".split("_")},monthsShort:"\u0441\u0456\u0447_\u043b\u044e\u0442_\u0431\u0435\u0440_\u043a\u0432\u0456\u0442_\u0442\u0440\u0430\u0432_\u0447\u0435\u0440\u0432_\u043b\u0438\u043f_\u0441\u0435\u0440\u043f_\u0432\u0435\u0440_\u0436\u043e\u0432\u0442_\u043b\u0438\u0441\u0442_\u0433\u0440\u0443\u0434".split("_"),weekdays:function c(_,s){var h={nominative:"\u043d\u0435\u0434\u0456\u043b\u044f_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a_\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a_\u0441\u0435\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u044f_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),accusative:"\u043d\u0435\u0434\u0456\u043b\u044e_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a_\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a_\u0441\u0435\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u044e_\u0441\u0443\u0431\u043e\u0442\u0443".split("_"),genitive:"\u043d\u0435\u0434\u0456\u043b\u0456_\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043a\u0430_\u0432\u0456\u0432\u0442\u043e\u0440\u043a\u0430_\u0441\u0435\u0440\u0435\u0434\u0438_\u0447\u0435\u0442\u0432\u0435\u0440\u0433\u0430_\u043f\u2019\u044f\u0442\u043d\u0438\u0446\u0456_\u0441\u0443\u0431\u043e\u0442\u0438".split("_")};return!0===_?h.nominative.slice(1,7).concat(h.nominative.slice(0,1)):_?h[/(\[[\u0412\u0432\u0423\u0443]\]) ?dddd/.test(s)?"accusative":/\[?(?:\u043c\u0438\u043d\u0443\u043b\u043e\u0457|\u043d\u0430\u0441\u0442\u0443\u043f\u043d\u043e\u0457)? ?\] ?dddd/.test(s)?"genitive":"nominative"][_.day()]:h.nominative},weekdaysShort:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0440.",LLL:"D MMMM YYYY \u0440., HH:mm",LLLL:"dddd, D MMMM YYYY \u0440., HH:mm"},calendar:{sameDay:u("[\u0421\u044c\u043e\u0433\u043e\u0434\u043d\u0456 "),nextDay:u("[\u0417\u0430\u0432\u0442\u0440\u0430 "),lastDay:u("[\u0412\u0447\u043e\u0440\u0430 "),nextWeek:u("[\u0423] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return u("[\u041c\u0438\u043d\u0443\u043b\u043e\u0457] dddd [").call(this);case 1:case 2:case 4:return u("[\u041c\u0438\u043d\u0443\u043b\u043e\u0433\u043e] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"%s \u0442\u043e\u043c\u0443",s:"\u0434\u0435\u043a\u0456\u043b\u044c\u043a\u0430 \u0441\u0435\u043a\u0443\u043d\u0434",ss:e,m:e,mm:e,h:"\u0433\u043e\u0434\u0438\u043d\u0443",hh:e,d:"\u0434\u0435\u043d\u044c",dd:e,M:"\u043c\u0456\u0441\u044f\u0446\u044c",MM:e,y:"\u0440\u0456\u043a",yy:e},meridiemParse:/\u043d\u043e\u0447\u0456|\u0440\u0430\u043d\u043a\u0443|\u0434\u043d\u044f|\u0432\u0435\u0447\u043e\u0440\u0430/,isPM:function(s){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u043e\u0440\u0430)$/.test(s)},meridiem:function(s,h,b){return s<4?"\u043d\u043e\u0447\u0456":s<12?"\u0440\u0430\u043d\u043a\u0443":s<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u043e\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0439|\u0433\u043e)/,ordinal:function(s,h){switch(h){case"M":case"d":case"DDD":case"w":case"W":return s+"-\u0439";case"D":return s+"-\u0433\u043e";default:return s}},week:{dow:1,doy:7}})}(n(56908))},47052:function(Ce,E,n){!function(S){"use strict";var t=["\u062c\u0646\u0648\u0631\u06cc","\u0641\u0631\u0648\u0631\u06cc","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u0626\u06cc","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0626\u06cc","\u0627\u06af\u0633\u062a","\u0633\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"],e=["\u0627\u062a\u0648\u0627\u0631","\u067e\u06cc\u0631","\u0645\u0646\u06af\u0644","\u0628\u062f\u06be","\u062c\u0645\u0639\u0631\u0627\u062a","\u062c\u0645\u0639\u06c1","\u06c1\u0641\u062a\u06c1"];S.defineLocale("ur",{months:t,monthsShort:t,weekdays:e,weekdaysShort:e,weekdaysMin:e,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd\u060c D MMMM YYYY HH:mm"},meridiemParse:/\u0635\u0628\u062d|\u0634\u0627\u0645/,isPM:function(o){return"\u0634\u0627\u0645"===o},meridiem:function(o,_,s){return o<12?"\u0635\u0628\u062d":"\u0634\u0627\u0645"},calendar:{sameDay:"[\u0622\u062c \u0628\u0648\u0642\u062a] LT",nextDay:"[\u06a9\u0644 \u0628\u0648\u0642\u062a] LT",nextWeek:"dddd [\u0628\u0648\u0642\u062a] LT",lastDay:"[\u06af\u0630\u0634\u062a\u06c1 \u0631\u0648\u0632 \u0628\u0648\u0642\u062a] LT",lastWeek:"[\u06af\u0630\u0634\u062a\u06c1] dddd [\u0628\u0648\u0642\u062a] LT",sameElse:"L"},relativeTime:{future:"%s \u0628\u0639\u062f",past:"%s \u0642\u0628\u0644",s:"\u0686\u0646\u062f \u0633\u06cc\u06a9\u0646\u0688",ss:"%d \u0633\u06cc\u06a9\u0646\u0688",m:"\u0627\u06cc\u06a9 \u0645\u0646\u0679",mm:"%d \u0645\u0646\u0679",h:"\u0627\u06cc\u06a9 \u06af\u06be\u0646\u0679\u06c1",hh:"%d \u06af\u06be\u0646\u0679\u06d2",d:"\u0627\u06cc\u06a9 \u062f\u0646",dd:"%d \u062f\u0646",M:"\u0627\u06cc\u06a9 \u0645\u0627\u06c1",MM:"%d \u0645\u0627\u06c1",y:"\u0627\u06cc\u06a9 \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"},preparse:function(o){return o.replace(/\u060c/g,",")},postformat:function(o){return o.replace(/,/g,"\u060c")},week:{dow:1,doy:4}})}(n(56908))},32233:function(Ce,E,n){!function(S){"use strict";S.defineLocale("uz-latn",{months:"Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr".split("_"),monthsShort:"Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek".split("_"),weekdays:"Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba".split("_"),weekdaysShort:"Yak_Dush_Sesh_Chor_Pay_Jum_Shan".split("_"),weekdaysMin:"Ya_Du_Se_Cho_Pa_Ju_Sha".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Bugun soat] LT [da]",nextDay:"[Ertaga] LT [da]",nextWeek:"dddd [kuni soat] LT [da]",lastDay:"[Kecha soat] LT [da]",lastWeek:"[O'tgan] dddd [kuni soat] LT [da]",sameElse:"L"},relativeTime:{future:"Yaqin %s ichida",past:"Bir necha %s oldin",s:"soniya",ss:"%d soniya",m:"bir daqiqa",mm:"%d daqiqa",h:"bir soat",hh:"%d soat",d:"bir kun",dd:"%d kun",M:"bir oy",MM:"%d oy",y:"bir yil",yy:"%d yil"},week:{dow:1,doy:7}})}(n(56908))},77967:function(Ce,E,n){!function(S){"use strict";S.defineLocale("uz",{months:"\u044f\u043d\u0432\u0430\u0440_\u0444\u0435\u0432\u0440\u0430\u043b_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0435\u043b_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043d\u0442\u044f\u0431\u0440_\u043e\u043a\u0442\u044f\u0431\u0440_\u043d\u043e\u044f\u0431\u0440_\u0434\u0435\u043a\u0430\u0431\u0440".split("_"),monthsShort:"\u044f\u043d\u0432_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u0438\u044e\u043d_\u0438\u044e\u043b_\u0430\u0432\u0433_\u0441\u0435\u043d_\u043e\u043a\u0442_\u043d\u043e\u044f_\u0434\u0435\u043a".split("_"),weekdays:"\u042f\u043a\u0448\u0430\u043d\u0431\u0430_\u0414\u0443\u0448\u0430\u043d\u0431\u0430_\u0421\u0435\u0448\u0430\u043d\u0431\u0430_\u0427\u043e\u0440\u0448\u0430\u043d\u0431\u0430_\u041f\u0430\u0439\u0448\u0430\u043d\u0431\u0430_\u0416\u0443\u043c\u0430_\u0428\u0430\u043d\u0431\u0430".split("_"),weekdaysShort:"\u042f\u043a\u0448_\u0414\u0443\u0448_\u0421\u0435\u0448_\u0427\u043e\u0440_\u041f\u0430\u0439_\u0416\u0443\u043c_\u0428\u0430\u043d".split("_"),weekdaysMin:"\u042f\u043a_\u0414\u0443_\u0421\u0435_\u0427\u043e_\u041f\u0430_\u0416\u0443_\u0428\u0430".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[\u0411\u0443\u0433\u0443\u043d \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",nextDay:"[\u042d\u0440\u0442\u0430\u0433\u0430] LT [\u0434\u0430]",nextWeek:"dddd [\u043a\u0443\u043d\u0438 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",lastDay:"[\u041a\u0435\u0447\u0430 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",lastWeek:"[\u0423\u0442\u0433\u0430\u043d] dddd [\u043a\u0443\u043d\u0438 \u0441\u043e\u0430\u0442] LT [\u0434\u0430]",sameElse:"L"},relativeTime:{future:"\u042f\u043a\u0438\u043d %s \u0438\u0447\u0438\u0434\u0430",past:"\u0411\u0438\u0440 \u043d\u0435\u0447\u0430 %s \u043e\u043b\u0434\u0438\u043d",s:"\u0444\u0443\u0440\u0441\u0430\u0442",ss:"%d \u0444\u0443\u0440\u0441\u0430\u0442",m:"\u0431\u0438\u0440 \u0434\u0430\u043a\u0438\u043a\u0430",mm:"%d \u0434\u0430\u043a\u0438\u043a\u0430",h:"\u0431\u0438\u0440 \u0441\u043e\u0430\u0442",hh:"%d \u0441\u043e\u0430\u0442",d:"\u0431\u0438\u0440 \u043a\u0443\u043d",dd:"%d \u043a\u0443\u043d",M:"\u0431\u0438\u0440 \u043e\u0439",MM:"%d \u043e\u0439",y:"\u0431\u0438\u0440 \u0439\u0438\u043b",yy:"%d \u0439\u0438\u043b"},week:{dow:1,doy:7}})}(n(56908))},98615:function(Ce,E,n){!function(S){"use strict";S.defineLocale("vi",{months:"th\xe1ng 1_th\xe1ng 2_th\xe1ng 3_th\xe1ng 4_th\xe1ng 5_th\xe1ng 6_th\xe1ng 7_th\xe1ng 8_th\xe1ng 9_th\xe1ng 10_th\xe1ng 11_th\xe1ng 12".split("_"),monthsShort:"Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12".split("_"),monthsParseExact:!0,weekdays:"ch\u1ee7 nh\u1eadt_th\u1ee9 hai_th\u1ee9 ba_th\u1ee9 t\u01b0_th\u1ee9 n\u0103m_th\u1ee9 s\xe1u_th\u1ee9 b\u1ea3y".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(c){return/^ch$/i.test(c)},meridiem:function(c,u,o){return c<12?o?"sa":"SA":o?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [n\u0103m] YYYY",LLL:"D MMMM [n\u0103m] YYYY HH:mm",LLLL:"dddd, D MMMM [n\u0103m] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[H\xf4m nay l\xfac] LT",nextDay:"[Ng\xe0y mai l\xfac] LT",nextWeek:"dddd [tu\u1ea7n t\u1edbi l\xfac] LT",lastDay:"[H\xf4m qua l\xfac] LT",lastWeek:"dddd [tu\u1ea7n tr\u01b0\u1edbc l\xfac] LT",sameElse:"L"},relativeTime:{future:"%s t\u1edbi",past:"%s tr\u01b0\u1edbc",s:"v\xe0i gi\xe2y",ss:"%d gi\xe2y",m:"m\u1ed9t ph\xfat",mm:"%d ph\xfat",h:"m\u1ed9t gi\u1edd",hh:"%d gi\u1edd",d:"m\u1ed9t ng\xe0y",dd:"%d ng\xe0y",w:"m\u1ed9t tu\u1ea7n",ww:"%d tu\u1ea7n",M:"m\u1ed9t th\xe1ng",MM:"%d th\xe1ng",y:"m\u1ed9t n\u0103m",yy:"%d n\u0103m"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(c){return c},week:{dow:1,doy:4}})}(n(56908))},12320:function(Ce,E,n){!function(S){"use strict";S.defineLocale("x-pseudo",{months:"J~\xe1\xf1\xfa\xe1~r\xfd_F~\xe9br\xfa~\xe1r\xfd_~M\xe1rc~h_\xc1p~r\xedl_~M\xe1\xfd_~J\xfa\xf1\xe9~_J\xfal~\xfd_\xc1\xfa~g\xfast~_S\xe9p~t\xe9mb~\xe9r_\xd3~ct\xf3b~\xe9r_\xd1~\xf3v\xe9m~b\xe9r_~D\xe9c\xe9~mb\xe9r".split("_"),monthsShort:"J~\xe1\xf1_~F\xe9b_~M\xe1r_~\xc1pr_~M\xe1\xfd_~J\xfa\xf1_~J\xfal_~\xc1\xfag_~S\xe9p_~\xd3ct_~\xd1\xf3v_~D\xe9c".split("_"),monthsParseExact:!0,weekdays:"S~\xfa\xf1d\xe1~\xfd_M\xf3~\xf1d\xe1\xfd~_T\xfa\xe9~sd\xe1\xfd~_W\xe9d~\xf1\xe9sd~\xe1\xfd_T~h\xfars~d\xe1\xfd_~Fr\xedd~\xe1\xfd_S~\xe1t\xfar~d\xe1\xfd".split("_"),weekdaysShort:"S~\xfa\xf1_~M\xf3\xf1_~T\xfa\xe9_~W\xe9d_~Th\xfa_~Fr\xed_~S\xe1t".split("_"),weekdaysMin:"S~\xfa_M\xf3~_T\xfa_~W\xe9_T~h_Fr~_S\xe1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[T~\xf3d\xe1~\xfd \xe1t] LT",nextDay:"[T~\xf3m\xf3~rr\xf3~w \xe1t] LT",nextWeek:"dddd [\xe1t] LT",lastDay:"[\xdd~\xe9st~\xe9rd\xe1~\xfd \xe1t] LT",lastWeek:"[L~\xe1st] dddd [\xe1t] LT",sameElse:"L"},relativeTime:{future:"\xed~\xf1 %s",past:"%s \xe1~g\xf3",s:"\xe1 ~f\xe9w ~s\xe9c\xf3~\xf1ds",ss:"%d s~\xe9c\xf3\xf1~ds",m:"\xe1 ~m\xed\xf1~\xfat\xe9",mm:"%d m~\xed\xf1\xfa~t\xe9s",h:"\xe1~\xf1 h\xf3~\xfar",hh:"%d h~\xf3\xfars",d:"\xe1 ~d\xe1\xfd",dd:"%d d~\xe1\xfds",M:"\xe1 ~m\xf3\xf1~th",MM:"%d m~\xf3\xf1t~hs",y:"\xe1 ~\xfd\xe9\xe1r",yy:"%d \xfd~\xe9\xe1rs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(c){var u=c%10;return c+(1==~~(c%100/10)?"th":1===u?"st":2===u?"nd":3===u?"rd":"th")},week:{dow:1,doy:4}})}(n(56908))},31313:function(Ce,E,n){!function(S){"use strict";S.defineLocale("yo",{months:"S\u1eb9\u0301r\u1eb9\u0301_E\u0300re\u0300le\u0300_\u1eb8r\u1eb9\u0300na\u0300_I\u0300gbe\u0301_E\u0300bibi_O\u0300ku\u0300du_Ag\u1eb9mo_O\u0300gu\u0301n_Owewe_\u1ecc\u0300wa\u0300ra\u0300_Be\u0301lu\u0301_\u1ecc\u0300p\u1eb9\u0300\u0300".split("_"),monthsShort:"S\u1eb9\u0301r_E\u0300rl_\u1eb8rn_I\u0300gb_E\u0300bi_O\u0300ku\u0300_Ag\u1eb9_O\u0300gu\u0301_Owe_\u1ecc\u0300wa\u0300_Be\u0301l_\u1ecc\u0300p\u1eb9\u0300\u0300".split("_"),weekdays:"A\u0300i\u0300ku\u0301_Aje\u0301_I\u0300s\u1eb9\u0301gun_\u1eccj\u1ecd\u0301ru\u0301_\u1eccj\u1ecd\u0301b\u1ecd_\u1eb8ti\u0300_A\u0300ba\u0301m\u1eb9\u0301ta".split("_"),weekdaysShort:"A\u0300i\u0300k_Aje\u0301_I\u0300s\u1eb9\u0301_\u1eccjr_\u1eccjb_\u1eb8ti\u0300_A\u0300ba\u0301".split("_"),weekdaysMin:"A\u0300i\u0300_Aj_I\u0300s_\u1eccr_\u1eccb_\u1eb8t_A\u0300b".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[O\u0300ni\u0300 ni] LT",nextDay:"[\u1ecc\u0300la ni] LT",nextWeek:"dddd [\u1eccs\u1eb9\u0300 to\u0301n'b\u1ecd] [ni] LT",lastDay:"[A\u0300na ni] LT",lastWeek:"dddd [\u1eccs\u1eb9\u0300 to\u0301l\u1ecd\u0301] [ni] LT",sameElse:"L"},relativeTime:{future:"ni\u0301 %s",past:"%s k\u1ecdja\u0301",s:"i\u0300s\u1eb9ju\u0301 aaya\u0301 die",ss:"aaya\u0301 %d",m:"i\u0300s\u1eb9ju\u0301 kan",mm:"i\u0300s\u1eb9ju\u0301 %d",h:"wa\u0301kati kan",hh:"wa\u0301kati %d",d:"\u1ecdj\u1ecd\u0301 kan",dd:"\u1ecdj\u1ecd\u0301 %d",M:"osu\u0300 kan",MM:"osu\u0300 %d",y:"\u1ecddu\u0301n kan",yy:"\u1ecddu\u0301n %d"},dayOfMonthOrdinalParse:/\u1ecdj\u1ecd\u0301\s\d{1,2}/,ordinal:"\u1ecdj\u1ecd\u0301 %d",week:{dow:1,doy:4}})}(n(56908))},64490:function(Ce,E,n){!function(S){"use strict";S.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u5468\u65e5_\u5468\u4e00_\u5468\u4e8c_\u5468\u4e09_\u5468\u56db_\u5468\u4e94_\u5468\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5Ah\u70b9mm\u5206",LLLL:"YYYY\u5e74M\u6708D\u65e5ddddAh\u70b9mm\u5206",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(c,u){return 12===c&&(c=0),"\u51cc\u6668"===u||"\u65e9\u4e0a"===u||"\u4e0a\u5348"===u?c:"\u4e0b\u5348"===u||"\u665a\u4e0a"===u?c+12:c>=11?c:c+12},meridiem:function(c,u,o){var _=100*c+u;return _<600?"\u51cc\u6668":_<900?"\u65e9\u4e0a":_<1130?"\u4e0a\u5348":_<1230?"\u4e2d\u5348":_<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929]LT",nextDay:"[\u660e\u5929]LT",nextWeek:function(c){return c.week()!==this.week()?"[\u4e0b]dddLT":"[\u672c]dddLT"},lastDay:"[\u6628\u5929]LT",lastWeek:function(c){return this.week()!==c.week()?"[\u4e0a]dddLT":"[\u672c]dddLT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u5468)/,ordinal:function(c,u){switch(u){case"d":case"D":case"DDD":return c+"\u65e5";case"M":return c+"\u6708";case"w":case"W":return c+"\u5468";default:return c}},relativeTime:{future:"%s\u540e",past:"%s\u524d",s:"\u51e0\u79d2",ss:"%d \u79d2",m:"1 \u5206\u949f",mm:"%d \u5206\u949f",h:"1 \u5c0f\u65f6",hh:"%d \u5c0f\u65f6",d:"1 \u5929",dd:"%d \u5929",w:"1 \u5468",ww:"%d \u5468",M:"1 \u4e2a\u6708",MM:"%d \u4e2a\u6708",y:"1 \u5e74",yy:"%d \u5e74"},week:{dow:1,doy:4}})}(n(56908))},55910:function(Ce,E,n){!function(S){"use strict";S.defineLocale("zh-hk",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(c,u){return 12===c&&(c=0),"\u51cc\u6668"===u||"\u65e9\u4e0a"===u||"\u4e0a\u5348"===u?c:"\u4e2d\u5348"===u?c>=11?c:c+12:"\u4e0b\u5348"===u||"\u665a\u4e0a"===u?c+12:void 0},meridiem:function(c,u,o){var _=100*c+u;return _<600?"\u51cc\u6668":_<900?"\u65e9\u4e0a":_<1200?"\u4e0a\u5348":1200===_?"\u4e2d\u5348":_<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929]LT",nextDay:"[\u660e\u5929]LT",nextWeek:"[\u4e0b]ddddLT",lastDay:"[\u6628\u5929]LT",lastWeek:"[\u4e0a]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(c,u){switch(u){case"d":case"D":case"DDD":return c+"\u65e5";case"M":return c+"\u6708";case"w":case"W":return c+"\u9031";default:return c}},relativeTime:{future:"%s\u5f8c",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}})}(n(56908))},98262:function(Ce,E,n){!function(S){"use strict";S.defineLocale("zh-mo",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"D/M/YYYY",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(c,u){return 12===c&&(c=0),"\u51cc\u6668"===u||"\u65e9\u4e0a"===u||"\u4e0a\u5348"===u?c:"\u4e2d\u5348"===u?c>=11?c:c+12:"\u4e0b\u5348"===u||"\u665a\u4e0a"===u?c+12:void 0},meridiem:function(c,u,o){var _=100*c+u;return _<600?"\u51cc\u6668":_<900?"\u65e9\u4e0a":_<1130?"\u4e0a\u5348":_<1230?"\u4e2d\u5348":_<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929] LT",nextDay:"[\u660e\u5929] LT",nextWeek:"[\u4e0b]dddd LT",lastDay:"[\u6628\u5929] LT",lastWeek:"[\u4e0a]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(c,u){switch(u){case"d":case"D":case"DDD":return c+"\u65e5";case"M":return c+"\u6708";case"w":case"W":return c+"\u9031";default:return c}},relativeTime:{future:"%s\u5167",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}})}(n(56908))},44223:function(Ce,E,n){!function(S){"use strict";S.defineLocale("zh-tw",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d".split("_"),weekdaysShort:"\u9031\u65e5_\u9031\u4e00_\u9031\u4e8c_\u9031\u4e09_\u9031\u56db_\u9031\u4e94_\u9031\u516d".split("_"),weekdaysMin:"\u65e5_\u4e00_\u4e8c_\u4e09_\u56db_\u4e94_\u516d".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5e74M\u6708D\u65e5",LLL:"YYYY\u5e74M\u6708D\u65e5 HH:mm",LLLL:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm",l:"YYYY/M/D",ll:"YYYY\u5e74M\u6708D\u65e5",lll:"YYYY\u5e74M\u6708D\u65e5 HH:mm",llll:"YYYY\u5e74M\u6708D\u65e5dddd HH:mm"},meridiemParse:/\u51cc\u6668|\u65e9\u4e0a|\u4e0a\u5348|\u4e2d\u5348|\u4e0b\u5348|\u665a\u4e0a/,meridiemHour:function(c,u){return 12===c&&(c=0),"\u51cc\u6668"===u||"\u65e9\u4e0a"===u||"\u4e0a\u5348"===u?c:"\u4e2d\u5348"===u?c>=11?c:c+12:"\u4e0b\u5348"===u||"\u665a\u4e0a"===u?c+12:void 0},meridiem:function(c,u,o){var _=100*c+u;return _<600?"\u51cc\u6668":_<900?"\u65e9\u4e0a":_<1130?"\u4e0a\u5348":_<1230?"\u4e2d\u5348":_<1800?"\u4e0b\u5348":"\u665a\u4e0a"},calendar:{sameDay:"[\u4eca\u5929] LT",nextDay:"[\u660e\u5929] LT",nextWeek:"[\u4e0b]dddd LT",lastDay:"[\u6628\u5929] LT",lastWeek:"[\u4e0a]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(\u65e5|\u6708|\u9031)/,ordinal:function(c,u){switch(u){case"d":case"D":case"DDD":return c+"\u65e5";case"M":return c+"\u6708";case"w":case"W":return c+"\u9031";default:return c}},relativeTime:{future:"%s\u5f8c",past:"%s\u524d",s:"\u5e7e\u79d2",ss:"%d \u79d2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5c0f\u6642",hh:"%d \u5c0f\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500b\u6708",MM:"%d \u500b\u6708",y:"1 \u5e74",yy:"%d \u5e74"}})}(n(56908))},56908:function(Ce,E,n){(Ce=n.nmd(Ce)).exports=function(){"use strict";var S,k;function t(){return S.apply(null,arguments)}function c(H){return H instanceof Array||"[object Array]"===Object.prototype.toString.call(H)}function u(H){return null!=H&&"[object Object]"===Object.prototype.toString.call(H)}function o(H,ye){return Object.prototype.hasOwnProperty.call(H,ye)}function _(H){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(H).length;var ye;for(ye in H)if(o(H,ye))return!1;return!0}function s(H){return void 0===H}function h(H){return"number"==typeof H||"[object Number]"===Object.prototype.toString.call(H)}function b(H){return H instanceof Date||"[object Date]"===Object.prototype.toString.call(H)}function T(H,ye){var Dt,rt=[],jt=H.length;for(Dt=0;Dt>>0;for(jt=0;jt0)for(rt=0;rt=0?rt?"+":"":"-")+Math.pow(10,Math.max(0,ye-Dt.length)).toString().substr(1)+Dt}var Me=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,ve=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,ue={},lt={};function Xe(H,ye,rt,Dt){var jt=Dt;"string"==typeof Dt&&(jt=function(){return this[Dt]()}),H&&(lt[H]=jt),ye&&(lt[ye[0]]=function(){return _e(jt.apply(this,arguments),ye[1],ye[2])}),rt&&(lt[rt]=function(){return this.localeData().ordinal(jt.apply(this,arguments),H)})}function mt(H){return H.match(/\[[\s\S]/)?H.replace(/^\[|\]$/g,""):H.replace(/\\/g,"")}function Pt(H,ye){return H.isValid()?(ye=Pe(ye,H.localeData()),ue[ye]=ue[ye]||function wt(H){var rt,Dt,ye=H.match(Me);for(rt=0,Dt=ye.length;rt=0&&ve.test(H);)H=H.replace(ve,Dt),ve.lastIndex=0,rt-=1;return H}var Fe={};function et(H,ye){var rt=H.toLowerCase();Fe[rt]=Fe[rt+"s"]=Fe[ye]=H}function Ht(H){return"string"==typeof H?Fe[H]||Fe[H.toLowerCase()]:void 0}function nn(H){var rt,Dt,ye={};for(Dt in H)o(H,Dt)&&(rt=Ht(Dt))&&(ye[rt]=H[Dt]);return ye}var an={};function kt(H,ye){an[H]=ye}function $e(H){return H%4==0&&H%100!=0||H%400==0}function Ae(H){return H<0?Math.ceil(H)||0:Math.floor(H)}function X(H){var ye=+H,rt=0;return 0!==ye&&isFinite(ye)&&(rt=Ae(ye)),rt}function ne(H,ye){return function(rt){return null!=rt?(Oe(this,H,rt),t.updateOffset(this,ye),this):me(this,H)}}function me(H,ye){return H.isValid()?H._d["get"+(H._isUTC?"UTC":"")+ye]():NaN}function Oe(H,ye,rt){H.isValid()&&!isNaN(rt)&&("FullYear"===ye&&$e(H.year())&&1===H.month()&&29===H.date()?(rt=X(rt),H._d["set"+(H._isUTC?"UTC":"")+ye](rt,H.month(),nr(rt,H.month()))):H._d["set"+(H._isUTC?"UTC":"")+ye](rt))}var tt,Ft=/\d/,sn=/\d\d/,Xt=/\d{3}/,gn=/\d{4}/,vn=/[+-]?\d{6}/,hn=/\d\d?/,jn=/\d\d\d\d?/,Jn=/\d\d\d\d\d\d?/,oi=/\d{1,3}/,ri=/\d{1,4}/,un=/[+-]?\d{1,6}/,mn=/\d+/,zt=/[+-]?\d+/,qe=/Z|[+-]\d\d:?\d\d/gi,pt=/Z|[+-]\d\d(?::?\d\d)?/gi,Re=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i;function Ke(H,ye,rt){tt[H]=d(ye)?ye:function(Dt,jt){return Dt&&rt?rt:ye}}function vt(H,ye){return o(tt,H)?tt[H](ye._strict,ye._locale):new RegExp(function Rt(H){return rn(H.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(ye,rt,Dt,jt,wn){return rt||Dt||jt||wn}))}(H))}function rn(H){return H.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}tt={};var Nn={};function $t(H,ye){var rt,jt,Dt=ye;for("string"==typeof H&&(H=[H]),h(ye)&&(Dt=function(Gn,Ki){Ki[ye]=X(Gn)}),jt=H.length,rt=0;rt68?1900:2e3)};var Ii=ne("FullYear",!0);function Ha(H,ye,rt,Dt,jt,wn,Gn){var Ki;return H<100&&H>=0?(Ki=new Date(H+400,ye,rt,Dt,jt,wn,Gn),isFinite(Ki.getFullYear())&&Ki.setFullYear(H)):Ki=new Date(H,ye,rt,Dt,jt,wn,Gn),Ki}function Oa(H){var ye,rt;return H<100&&H>=0?((rt=Array.prototype.slice.call(arguments))[0]=H+400,ye=new Date(Date.UTC.apply(null,rt)),isFinite(ye.getUTCFullYear())&&ye.setUTCFullYear(H)):ye=new Date(Date.UTC.apply(null,arguments)),ye}function Aa(H,ye,rt){var Dt=7+ye-rt;return-(7+Oa(H,0,Dt).getUTCDay()-ye)%7+Dt-1}function Qa(H,ye,rt,Dt,jt){var Ia,hr,Ki=1+7*(ye-1)+(7+rt-Dt)%7+Aa(H,Dt,jt);return Ki<=0?hr=_i(Ia=H-1)+Ki:Ki>_i(H)?(Ia=H+1,hr=Ki-_i(H)):(Ia=H,hr=Ki),{year:Ia,dayOfYear:hr}}function va(H,ye,rt){var wn,Gn,Dt=Aa(H.year(),ye,rt),jt=Math.floor((H.dayOfYear()-Dt-1)/7)+1;return jt<1?wn=jt+Ka(Gn=H.year()-1,ye,rt):jt>Ka(H.year(),ye,rt)?(wn=jt-Ka(H.year(),ye,rt),Gn=H.year()+1):(Gn=H.year(),wn=jt),{week:wn,year:Gn}}function Ka(H,ye,rt){var Dt=Aa(H,ye,rt),jt=Aa(H+1,ye,rt);return(_i(H)-Dt+jt)/7}Xe("w",["ww",2],"wo","week"),Xe("W",["WW",2],"Wo","isoWeek"),et("week","w"),et("isoWeek","W"),kt("week",5),kt("isoWeek",5),Ke("w",hn),Ke("ww",hn,sn),Ke("W",hn),Ke("WW",hn,sn),fn(["w","ww","W","WW"],function(H,ye,rt,Dt){ye[Dt.substr(0,1)]=X(H)});function Xn(H,ye){return H.slice(ye,7).concat(H.slice(0,ye))}Xe("d",0,"do","day"),Xe("dd",0,0,function(H){return this.localeData().weekdaysMin(this,H)}),Xe("ddd",0,0,function(H){return this.localeData().weekdaysShort(this,H)}),Xe("dddd",0,0,function(H){return this.localeData().weekdays(this,H)}),Xe("e",0,0,"weekday"),Xe("E",0,0,"isoWeekday"),et("day","d"),et("weekday","e"),et("isoWeekday","E"),kt("day",11),kt("weekday",11),kt("isoWeekday",11),Ke("d",hn),Ke("e",hn),Ke("E",hn),Ke("dd",function(H,ye){return ye.weekdaysMinRegex(H)}),Ke("ddd",function(H,ye){return ye.weekdaysShortRegex(H)}),Ke("dddd",function(H,ye){return ye.weekdaysRegex(H)}),fn(["dd","ddd","dddd"],function(H,ye,rt,Dt){var jt=rt._locale.weekdaysParse(H,Dt,rt._strict);null!=jt?ye.d=jt:B(rt).invalidWeekday=H}),fn(["d","e","E"],function(H,ye,rt,Dt){ye[Dt]=X(H)});var ni="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),pi="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Mi="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Wi=Re,Yi=Re,aa=Re;function oa(H,ye,rt){var Dt,jt,wn,Gn=H.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],Dt=0;Dt<7;++Dt)wn=Y([2e3,1]).day(Dt),this._minWeekdaysParse[Dt]=this.weekdaysMin(wn,"").toLocaleLowerCase(),this._shortWeekdaysParse[Dt]=this.weekdaysShort(wn,"").toLocaleLowerCase(),this._weekdaysParse[Dt]=this.weekdays(wn,"").toLocaleLowerCase();return rt?"dddd"===ye?-1!==(jt=_a.call(this._weekdaysParse,Gn))?jt:null:"ddd"===ye?-1!==(jt=_a.call(this._shortWeekdaysParse,Gn))?jt:null:-1!==(jt=_a.call(this._minWeekdaysParse,Gn))?jt:null:"dddd"===ye?-1!==(jt=_a.call(this._weekdaysParse,Gn))||-1!==(jt=_a.call(this._shortWeekdaysParse,Gn))||-1!==(jt=_a.call(this._minWeekdaysParse,Gn))?jt:null:"ddd"===ye?-1!==(jt=_a.call(this._shortWeekdaysParse,Gn))||-1!==(jt=_a.call(this._weekdaysParse,Gn))||-1!==(jt=_a.call(this._minWeekdaysParse,Gn))?jt:null:-1!==(jt=_a.call(this._minWeekdaysParse,Gn))||-1!==(jt=_a.call(this._weekdaysParse,Gn))||-1!==(jt=_a.call(this._shortWeekdaysParse,Gn))?jt:null}function Dn(){function H(Or,Uo){return Uo.length-Or.length}var wn,Gn,Ki,Ia,hr,ye=[],rt=[],Dt=[],jt=[];for(wn=0;wn<7;wn++)Gn=Y([2e3,1]).day(wn),Ki=rn(this.weekdaysMin(Gn,"")),Ia=rn(this.weekdaysShort(Gn,"")),hr=rn(this.weekdays(Gn,"")),ye.push(Ki),rt.push(Ia),Dt.push(hr),jt.push(Ki),jt.push(Ia),jt.push(hr);ye.sort(H),rt.sort(H),Dt.sort(H),jt.sort(H),this._weekdaysRegex=new RegExp("^("+jt.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+Dt.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+rt.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+ye.join("|")+")","i")}function qn(){return this.hours()%12||12}function Ji(H,ye){Xe(H,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),ye)})}function Vi(H,ye){return ye._meridiemParse}Xe("H",["HH",2],0,"hour"),Xe("h",["hh",2],0,qn),Xe("k",["kk",2],0,function bi(){return this.hours()||24}),Xe("hmm",0,0,function(){return""+qn.apply(this)+_e(this.minutes(),2)}),Xe("hmmss",0,0,function(){return""+qn.apply(this)+_e(this.minutes(),2)+_e(this.seconds(),2)}),Xe("Hmm",0,0,function(){return""+this.hours()+_e(this.minutes(),2)}),Xe("Hmmss",0,0,function(){return""+this.hours()+_e(this.minutes(),2)+_e(this.seconds(),2)}),Ji("a",!0),Ji("A",!1),et("hour","h"),kt("hour",13),Ke("a",Vi),Ke("A",Vi),Ke("H",hn),Ke("h",hn),Ke("k",hn),Ke("HH",hn,sn),Ke("hh",hn,sn),Ke("kk",hn,sn),Ke("hmm",jn),Ke("hmmss",Jn),Ke("Hmm",jn),Ke("Hmmss",Jn),$t(["H","HH"],3),$t(["k","kk"],function(H,ye,rt){var Dt=X(H);ye[3]=24===Dt?0:Dt}),$t(["a","A"],function(H,ye,rt){rt._isPm=rt._locale.isPM(H),rt._meridiem=H}),$t(["h","hh"],function(H,ye,rt){ye[3]=X(H),B(rt).bigHour=!0}),$t("hmm",function(H,ye,rt){var Dt=H.length-2;ye[3]=X(H.substr(0,Dt)),ye[4]=X(H.substr(Dt)),B(rt).bigHour=!0}),$t("hmmss",function(H,ye,rt){var Dt=H.length-4,jt=H.length-2;ye[3]=X(H.substr(0,Dt)),ye[4]=X(H.substr(Dt,2)),ye[5]=X(H.substr(jt)),B(rt).bigHour=!0}),$t("Hmm",function(H,ye,rt){var Dt=H.length-2;ye[3]=X(H.substr(0,Dt)),ye[4]=X(H.substr(Dt))}),$t("Hmmss",function(H,ye,rt){var Dt=H.length-4,jt=H.length-2;ye[3]=X(H.substr(0,Dt)),ye[4]=X(H.substr(Dt,2)),ye[5]=X(H.substr(jt))});var Ua=ne("Hours",!0);var Ea,Ra={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:_r,monthsShort:wa,week:{dow:0,doy:6},weekdays:ni,weekdaysMin:Mi,weekdaysShort:pi,meridiemParse:/[ap]\.?m?\.?/i},sa={},da={};function ba(H,ye){var rt,Dt=Math.min(H.length,ye.length);for(rt=0;rt0;){if(jt=no(wn.slice(0,rt).join("-")))return jt;if(Dt&&Dt.length>=rt&&ba(wn,Dt)>=rt-1)break;rt--}ye++}return Ea}(H)}function de(H){var ye,rt=H._a;return rt&&-2===B(H).overflow&&(ye=rt[1]<0||rt[1]>11?1:rt[2]<1||rt[2]>nr(rt[0],rt[1])?2:rt[3]<0||rt[3]>24||24===rt[3]&&(0!==rt[4]||0!==rt[5]||0!==rt[6])?3:rt[4]<0||rt[4]>59?4:rt[5]<0||rt[5]>59?5:rt[6]<0||rt[6]>999?6:-1,B(H)._overflowDayOfYear&&(ye<0||ye>2)&&(ye=2),B(H)._overflowWeeks&&-1===ye&&(ye=7),B(H)._overflowWeekday&&-1===ye&&(ye=8),B(H).overflow=ye),H}var we=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Qe=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Ge=/Z|[+-]\d\d(?::?\d\d)?/,Mt=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Nt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],yn=/^\/?Date\((-?\d+)/i,Ln=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,ei={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function li(H){var ye,rt,wn,Gn,Ki,Ia,Dt=H._i,jt=we.exec(Dt)||Qe.exec(Dt),hr=Mt.length,Or=Nt.length;if(jt){for(B(H).iso=!0,ye=0,rt=hr;ye7)&&(Ia=!0)):(wn=H._locale._week.dow,Gn=H._locale._week.doy,hr=va(Ni(),wn,Gn),rt=ie(ye.gg,H._a[0],hr.year),Dt=ie(ye.w,hr.week),null!=ye.d?((jt=ye.d)<0||jt>6)&&(Ia=!0):null!=ye.e?(jt=ye.e+wn,(ye.e<0||ye.e>6)&&(Ia=!0)):jt=wn),Dt<1||Dt>Ka(rt,wn,Gn)?B(H)._overflowWeeks=!0:null!=Ia?B(H)._overflowWeekday=!0:(Ki=Qa(rt,Dt,jt,wn,Gn),H._a[0]=Ki.year,H._dayOfYear=Ki.dayOfYear)}(H),null!=H._dayOfYear&&(Gn=ie(H._a[0],jt[0]),(H._dayOfYear>_i(Gn)||0===H._dayOfYear)&&(B(H)._overflowDayOfYear=!0),rt=Oa(Gn,0,H._dayOfYear),H._a[1]=rt.getUTCMonth(),H._a[2]=rt.getUTCDate()),ye=0;ye<3&&null==H._a[ye];++ye)H._a[ye]=Dt[ye]=jt[ye];for(;ye<7;ye++)H._a[ye]=Dt[ye]=null==H._a[ye]?2===ye?1:0:H._a[ye];24===H._a[3]&&0===H._a[4]&&0===H._a[5]&&0===H._a[6]&&(H._nextDay=!0,H._a[3]=0),H._d=(H._useUTC?Oa:Ha).apply(null,Dt),wn=H._useUTC?H._d.getUTCDay():H._d.getDay(),null!=H._tzm&&H._d.setUTCMinutes(H._d.getUTCMinutes()-H._tzm),H._nextDay&&(H._a[3]=24),H._w&&void 0!==H._w.d&&H._w.d!==wn&&(B(H).weekdayMismatch=!0)}}function bt(H){if(H._f!==t.ISO_8601)if(H._f!==t.RFC_2822){H._a=[],B(H).empty=!0;var rt,Dt,jt,wn,Gn,hr,Or,ye=""+H._i,Ki=ye.length,Ia=0;for(Or=(jt=Pe(H._f,H._locale).match(Me)||[]).length,rt=0;rt0&&B(H).unusedInput.push(Gn),ye=ye.slice(ye.indexOf(Dt)+Dt.length),Ia+=Dt.length),lt[wn]?(Dt?B(H).empty=!1:B(H).unusedTokens.push(wn),ln(wn,Dt,H)):H._strict&&!Dt&&B(H).unusedTokens.push(wn);B(H).charsLeftOver=Ki-Ia,ye.length>0&&B(H).unusedInput.push(ye),H._a[3]<=12&&!0===B(H).bigHour&&H._a[3]>0&&(B(H).bigHour=void 0),B(H).parsedDateParts=H._a.slice(0),B(H).meridiem=H._meridiem,H._a[3]=function xt(H,ye,rt){var Dt;return null==rt?ye:null!=H.meridiemHour?H.meridiemHour(ye,rt):(null!=H.isPM&&((Dt=H.isPM(rt))&&ye<12&&(ye+=12),!Dt&&12===ye&&(ye=0)),ye)}(H._locale,H._a[3],H._meridiem),null!==(hr=B(H).era)&&(H._a[0]=H._locale.erasConvertYear(hr,H._a[0])),fe(H),de(H)}else yt(H);else li(H)}function qi(H){var ye=H._i,rt=H._f;return H._locale=H._locale||ke(H._l),null===ye||void 0===rt&&""===ye?N({nullInput:!0}):("string"==typeof ye&&(H._i=ye=H._locale.preparse(ye)),re(ye)?new le(de(ye)):(b(ye)?H._d=ye:c(rt)?function Jt(H){var ye,rt,Dt,jt,wn,Gn,Ki=!1,Ia=H._f.length;if(0===Ia)return B(H).invalidFormat=!0,void(H._d=new Date(NaN));for(jt=0;jtthis?this:H:N()});function ia(H,ye){var rt,Dt;if(1===ye.length&&c(ye[0])&&(ye=ye[0]),!ye.length)return Ni();for(rt=ye[0],Dt=1;Dt=0?new Date(H+400,ye,rt)-Wc:new Date(H,ye,rt).valueOf()}function Se(H,ye,rt){return H<100&&H>=0?Date.UTC(H+400,ye,rt)-Wc:Date.UTC(H,ye,rt)}function qr(H,ye){return ye.erasAbbrRegex(H)}function rl(){var jt,wn,H=[],ye=[],rt=[],Dt=[],Gn=this.eras();for(jt=0,wn=Gn.length;jt(wn=Ka(H,Dt,jt))&&(ye=wn),Yl.call(this,H,ye,rt,Dt,jt))}function Yl(H,ye,rt,Dt,jt){var wn=Qa(H,ye,rt,Dt,jt),Gn=Oa(wn.year,0,wn.dayOfYear);return this.year(Gn.getUTCFullYear()),this.month(Gn.getUTCMonth()),this.date(Gn.getUTCDate()),this}Xe("N",0,0,"eraAbbr"),Xe("NN",0,0,"eraAbbr"),Xe("NNN",0,0,"eraAbbr"),Xe("NNNN",0,0,"eraName"),Xe("NNNNN",0,0,"eraNarrow"),Xe("y",["y",1],"yo","eraYear"),Xe("y",["yy",2],0,"eraYear"),Xe("y",["yyy",3],0,"eraYear"),Xe("y",["yyyy",4],0,"eraYear"),Ke("N",qr),Ke("NN",qr),Ke("NNN",qr),Ke("NNNN",function za(H,ye){return ye.erasNameRegex(H)}),Ke("NNNNN",function Ud(H,ye){return ye.erasNarrowRegex(H)}),$t(["N","NN","NNN","NNNN","NNNNN"],function(H,ye,rt,Dt){var jt=rt._locale.erasParse(H,Dt,rt._strict);jt?B(rt).era=jt:B(rt).invalidEra=H}),Ke("y",mn),Ke("yy",mn),Ke("yyy",mn),Ke("yyyy",mn),Ke("yo",function Zu(H,ye){return ye._eraYearOrdinalRegex||mn}),$t(["y","yy","yyy","yyyy"],0),$t(["yo"],function(H,ye,rt,Dt){var jt;rt._locale._eraYearOrdinalRegex&&(jt=H.match(rt._locale._eraYearOrdinalRegex)),ye[0]=rt._locale.eraYearOrdinalParse?rt._locale.eraYearOrdinalParse(H,jt):parseInt(H,10)}),Xe(0,["gg",2],0,function(){return this.weekYear()%100}),Xe(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Fo("gggg","weekYear"),Fo("ggggg","weekYear"),Fo("GGGG","isoWeekYear"),Fo("GGGGG","isoWeekYear"),et("weekYear","gg"),et("isoWeekYear","GG"),kt("weekYear",1),kt("isoWeekYear",1),Ke("G",zt),Ke("g",zt),Ke("GG",hn,sn),Ke("gg",hn,sn),Ke("GGGG",ri,gn),Ke("gggg",ri,gn),Ke("GGGGG",un,vn),Ke("ggggg",un,vn),fn(["gggg","ggggg","GGGG","GGGGG"],function(H,ye,rt,Dt){ye[Dt.substr(0,2)]=X(H)}),fn(["gg","GG"],function(H,ye,rt,Dt){ye[Dt]=t.parseTwoDigitYear(H)}),Xe("Q",0,"Qo","quarter"),et("quarter","Q"),kt("quarter",7),Ke("Q",Ft),$t("Q",function(H,ye){ye[1]=3*(X(H)-1)}),Xe("D",["DD",2],"Do","date"),et("date","D"),kt("date",9),Ke("D",hn),Ke("DD",hn,sn),Ke("Do",function(H,ye){return H?ye._dayOfMonthOrdinalParse||ye._ordinalParse:ye._dayOfMonthOrdinalParseLenient}),$t(["D","DD"],2),$t("Do",function(H,ye){ye[2]=X(H.match(hn)[0])});var pc=ne("Date",!0);Xe("DDD",["DDDD",3],"DDDo","dayOfYear"),et("dayOfYear","DDD"),kt("dayOfYear",4),Ke("DDD",oi),Ke("DDDD",Xt),$t(["DDD","DDDD"],function(H,ye,rt){rt._dayOfYear=X(H)}),Xe("m",["mm",2],0,"minute"),et("minute","m"),kt("minute",14),Ke("m",hn),Ke("mm",hn,sn),$t(["m","mm"],4);var Ao=ne("Minutes",!1);Xe("s",["ss",2],0,"second"),et("second","s"),kt("second",15),Ke("s",hn),Ke("ss",hn,sn),$t(["s","ss"],5);var ol,Dr,Iu=ne("Seconds",!1);for(Xe("S",0,0,function(){return~~(this.millisecond()/100)}),Xe(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Xe(0,["SSS",3],0,"millisecond"),Xe(0,["SSSS",4],0,function(){return 10*this.millisecond()}),Xe(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),Xe(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),Xe(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),Xe(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),Xe(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),et("millisecond","ms"),kt("millisecond",16),Ke("S",oi,Ft),Ke("SS",oi,sn),Ke("SSS",oi,Xt),ol="SSSS";ol.length<=9;ol+="S")Ke(ol,mn);function Bd(H,ye){ye[6]=X(1e3*("0."+H))}for(ol="S";ol.length<=9;ol+="S")$t(ol,Bd);Dr=ne("Milliseconds",!1),Xe("z",0,0,"zoneAbbr"),Xe("zz",0,0,"zoneName");var Ci=le.prototype;function Yd(H){return H}Ci.add=Rl,Ci.calendar=function ao(H,ye){1===arguments.length&&(arguments[0]?vs(arguments[0])?(H=arguments[0],ye=void 0):ys(arguments[0])&&(ye=arguments[0],H=void 0):(H=void 0,ye=void 0));var rt=H||Ni(),Dt=Va(rt,this).startOf("day"),jt=t.calendarFormat(this,Dt)||"sameElse",wn=ye&&(d(ye[jt])?ye[jt].call(this,rt):ye[jt]);return this.format(wn||this.localeData().calendar(jt,this,Ni(rt)))},Ci.clone=function as(){return new le(this)},Ci.diff=function Is(H,ye,rt){var Dt,jt,wn;if(!this.isValid())return NaN;if(!(Dt=Va(H,this)).isValid())return NaN;switch(jt=6e4*(Dt.utcOffset()-this.utcOffset()),ye=Ht(ye)){case"year":wn=Ms(this,Dt)/12;break;case"month":wn=Ms(this,Dt);break;case"quarter":wn=Ms(this,Dt)/3;break;case"second":wn=(this-Dt)/1e3;break;case"minute":wn=(this-Dt)/6e4;break;case"hour":wn=(this-Dt)/36e5;break;case"day":wn=(this-Dt-jt)/864e5;break;case"week":wn=(this-Dt-jt)/6048e5;break;default:wn=this-Dt}return rt?wn:Ae(wn)},Ci.endOf=function je(H){var ye,rt;if(void 0===(H=Ht(H))||"millisecond"===H||!this.isValid())return this;switch(rt=this._isUTC?Se:Be,H){case"year":ye=rt(this.year()+1,0,1)-1;break;case"quarter":ye=rt(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":ye=rt(this.year(),this.month()+1,1)-1;break;case"week":ye=rt(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":ye=rt(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":ye=rt(this.year(),this.month(),this.date()+1)-1;break;case"hour":ye=this._d.valueOf(),ye+=_u-De(ye+(this._isUTC?0:this.utcOffset()*os),_u)-1;break;case"minute":ye=this._d.valueOf(),ye+=os-De(ye,os)-1;break;case"second":ye=this._d.valueOf(),ye+=1e3-De(ye,1e3)-1}return this._d.setTime(ye),t.updateOffset(this,!0),this},Ci.format=function Lr(H){H||(H=this.isUtc()?t.defaultFormatUtc:t.defaultFormat);var ye=Pt(this,H);return this.localeData().postformat(ye)},Ci.from=function al(H,ye){return this.isValid()&&(re(H)&&H.isValid()||Ni(H).isValid())?ar({to:this,from:H}).locale(this.locale()).humanize(!ye):this.localeData().invalidDate()},Ci.fromNow=function Gr(H){return this.from(Ni(),H)},Ci.to=function xs(H,ye){return this.isValid()&&(re(H)&&H.isValid()||Ni(H).isValid())?ar({from:this,to:H}).locale(this.locale()).humanize(!ye):this.localeData().invalidDate()},Ci.toNow=function Ss(H){return this.to(Ni(),H)},Ci.get=function He(H){return d(this[H=Ht(H)])?this[H]():this},Ci.invalidAt=function Xa(){return B(this).overflow},Ci.isAfter=function Tr(H,ye){var rt=re(H)?H:Ni(H);return!(!this.isValid()||!rt.isValid())&&("millisecond"===(ye=Ht(ye)||"millisecond")?this.valueOf()>rt.valueOf():rt.valueOf()9999?Pt(rt,ye?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):d(Date.prototype.toISOString)?ye?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",Pt(rt,"Z")):Pt(rt,ye?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},Ci.inspect=function Fs(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var rt,Dt,H="moment",ye="";return this.isLocal()||(H=0===this.utcOffset()?"moment.utc":"moment.parseZone",ye="Z"),rt="["+H+'("]',Dt=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",this.format(rt+Dt+"-MM-DD[T]HH:mm:ss.SSS"+ye+'[")]')},"undefined"!=typeof Symbol&&null!=Symbol.for&&(Ci[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),Ci.toJSON=function di(){return this.isValid()?this.toISOString():null},Ci.toString=function Ls(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},Ci.unix=function Qt(){return Math.floor(this.valueOf()/1e3)},Ci.valueOf=function Et(){return this._d.valueOf()-6e4*(this._offset||0)},Ci.creationData=function fr(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},Ci.eraName=function mo(){var H,ye,rt,Dt=this.localeData().eras();for(H=0,ye=Dt.length;Hthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},Ci.isLocal=function Qn(){return!!this.isValid()&&!this._isUTC},Ci.isUtcOffset=function Vn(){return!!this.isValid()&&this._isUTC},Ci.isUtc=Di,Ci.isUTC=Di,Ci.zoneAbbr=function cf(){return this._isUTC?"UTC":""},Ci.zoneName=function Hl(){return this._isUTC?"Coordinated Universal Time":""},Ci.dates=$("dates accessor is deprecated. Use date instead.",pc),Ci.months=$("months accessor is deprecated. Use month instead",An),Ci.years=$("years accessor is deprecated. Use year instead",Ii),Ci.zone=$("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function _s(H,ye){return null!=H?("string"!=typeof H&&(H=-H),this.utcOffset(H,ye),this):-this.utcOffset()}),Ci.isDSTShifted=$("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function kn(){if(!s(this._isDSTShifted))return this._isDSTShifted;var ye,H={};return j(H,this),(H=qi(H))._a?(ye=H._isUTC?Y(H._a):Ni(H._a),this._isDSTShifted=this.isValid()&&function br(H,ye,rt){var Gn,Dt=Math.min(H.length,ye.length),jt=Math.abs(H.length-ye.length),wn=0;for(Gn=0;Gn0):this._isDSTShifted=!1,this._isDSTShifted});var Ga=te.prototype;function mc(H,ye,rt,Dt){var jt=ke(),wn=Y().set(Dt,ye);return jt[rt](wn,H)}function Hr(H,ye,rt){if(h(H)&&(ye=H,H=void 0),H=H||"",null!=ye)return mc(H,ye,rt,"month");var Dt,jt=[];for(Dt=0;Dt<12;Dt++)jt[Dt]=mc(H,Dt,rt,"month");return jt}function gu(H,ye,rt,Dt){"boolean"==typeof H?(h(ye)&&(rt=ye,ye=void 0),ye=ye||""):(rt=ye=H,H=!1,h(ye)&&(rt=ye,ye=void 0),ye=ye||"");var Gn,jt=ke(),wn=H?jt._week.dow:0,Ki=[];if(null!=rt)return mc(ye,(rt+wn)%7,Dt,"day");for(Gn=0;Gn<7;Gn++)Ki[Gn]=mc(ye,(Gn+wn)%7,Dt,"day");return Ki}Ga.calendar=function ce(H,ye,rt){var Dt=this._calendar[H]||this._calendar.sameElse;return d(Dt)?Dt.call(ye,rt):Dt},Ga.longDateFormat=function ft(H){var ye=this._longDateFormat[H],rt=this._longDateFormat[H.toUpperCase()];return ye||!rt?ye:(this._longDateFormat[H]=rt.match(Me).map(function(Dt){return"MMMM"===Dt||"MM"===Dt||"DD"===Dt||"dddd"===Dt?Dt.slice(1):Dt}).join(""),this._longDateFormat[H])},Ga.invalidDate=function Ee(){return this._invalidDate},Ga.ordinal=function at(H){return this._ordinal.replace("%d",H)},Ga.preparse=Yd,Ga.postformat=Yd,Ga.relativeTime=function xe(H,ye,rt,Dt){var jt=this._relativeTime[rt];return d(jt)?jt(H,ye,rt,Dt):jt.replace(/%d/i,H)},Ga.pastFuture=function ut(H,ye){var rt=this._relativeTime[H>0?"future":"past"];return d(rt)?rt(ye):rt.replace(/%s/i,ye)},Ga.set=function Q(H){var ye,rt;for(rt in H)o(H,rt)&&(d(ye=H[rt])?this[rt]=ye:this["_"+rt]=ye);this._config=H,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},Ga.eras=function Pr(H,ye){var rt,Dt,jt,wn=this._eras||ke("en")._eras;for(rt=0,Dt=wn.length;rt=0)return wn[Dt]},Ga.erasConvertYear=function Kr(H,ye){var rt=H.since<=H.until?1:-1;return void 0===ye?t(H.since).year():t(H.since).year()+(ye-H.offset)*rt},Ga.erasAbbrRegex=function Lo(H){return o(this,"_erasAbbrRegex")||rl.call(this),H?this._erasAbbrRegex:this._erasRegex},Ga.erasNameRegex=function Wt(H){return o(this,"_erasNameRegex")||rl.call(this),H?this._erasNameRegex:this._erasRegex},Ga.erasNarrowRegex=function yl(H){return o(this,"_erasNarrowRegex")||rl.call(this),H?this._erasNarrowRegex:this._erasRegex},Ga.months=function Pn(H,ye){return H?c(this._months)?this._months[H.month()]:this._months[(this._months.isFormat||or).test(ye)?"format":"standalone"][H.month()]:c(this._months)?this._months:this._months.standalone},Ga.monthsShort=function Tt(H,ye){return H?c(this._monthsShort)?this._monthsShort[H.month()]:this._monthsShort[or.test(ye)?"format":"standalone"][H.month()]:c(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},Ga.monthsParse=function qt(H,ye,rt){var Dt,jt,wn;if(this._monthsParseExact)return Le.call(this,H,ye,rt);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),Dt=0;Dt<12;Dt++){if(jt=Y([2e3,Dt]),rt&&!this._longMonthsParse[Dt]&&(this._longMonthsParse[Dt]=new RegExp("^"+this.months(jt,"").replace(".","")+"$","i"),this._shortMonthsParse[Dt]=new RegExp("^"+this.monthsShort(jt,"").replace(".","")+"$","i")),!rt&&!this._monthsParse[Dt]&&(wn="^"+this.months(jt,"")+"|^"+this.monthsShort(jt,""),this._monthsParse[Dt]=new RegExp(wn.replace(".",""),"i")),rt&&"MMMM"===ye&&this._longMonthsParse[Dt].test(H))return Dt;if(rt&&"MMM"===ye&&this._shortMonthsParse[Dt].test(H))return Dt;if(!rt&&this._monthsParse[Dt].test(H))return Dt}},Ga.monthsRegex=function Hi(H){return this._monthsParseExact?(o(this,"_monthsRegex")||ea.call(this),H?this._monthsStrictRegex:this._monthsRegex):(o(this,"_monthsRegex")||(this._monthsRegex=Cn),this._monthsStrictRegex&&H?this._monthsStrictRegex:this._monthsRegex)},Ga.monthsShortRegex=function vi(H){return this._monthsParseExact?(o(this,"_monthsRegex")||ea.call(this),H?this._monthsShortStrictRegex:this._monthsShortRegex):(o(this,"_monthsShortRegex")||(this._monthsShortRegex=Ta),this._monthsShortStrictRegex&&H?this._monthsShortStrictRegex:this._monthsShortRegex)},Ga.week=function Zt(H){return va(H,this._week.dow,this._week.doy).week},Ga.firstDayOfYear=function he(){return this._week.doy},Ga.firstDayOfWeek=function se(){return this._week.dow},Ga.weekdays=function xi(H,ye){var rt=c(this._weekdays)?this._weekdays:this._weekdays[H&&!0!==H&&this._weekdays.isFormat.test(ye)?"format":"standalone"];return!0===H?Xn(rt,this._week.dow):H?rt[H.day()]:rt},Ga.weekdaysMin=function ca(H){return!0===H?Xn(this._weekdaysMin,this._week.dow):H?this._weekdaysMin[H.day()]:this._weekdaysMin},Ga.weekdaysShort=function Ui(H){return!0===H?Xn(this._weekdaysShort,this._week.dow):H?this._weekdaysShort[H.day()]:this._weekdaysShort},Ga.weekdaysParse=function pr(H,ye,rt){var Dt,jt,wn;if(this._weekdaysParseExact)return oa.call(this,H,ye,rt);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),Dt=0;Dt<7;Dt++){if(jt=Y([2e3,1]).day(Dt),rt&&!this._fullWeekdaysParse[Dt]&&(this._fullWeekdaysParse[Dt]=new RegExp("^"+this.weekdays(jt,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[Dt]=new RegExp("^"+this.weekdaysShort(jt,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[Dt]=new RegExp("^"+this.weekdaysMin(jt,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[Dt]||(wn="^"+this.weekdays(jt,"")+"|^"+this.weekdaysShort(jt,"")+"|^"+this.weekdaysMin(jt,""),this._weekdaysParse[Dt]=new RegExp(wn.replace(".",""),"i")),rt&&"dddd"===ye&&this._fullWeekdaysParse[Dt].test(H))return Dt;if(rt&&"ddd"===ye&&this._shortWeekdaysParse[Dt].test(H))return Dt;if(rt&&"dd"===ye&&this._minWeekdaysParse[Dt].test(H))return Dt;if(!rt&&this._weekdaysParse[Dt].test(H))return Dt}},Ga.weekdaysRegex=function yr(H){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Dn.call(this),H?this._weekdaysStrictRegex:this._weekdaysRegex):(o(this,"_weekdaysRegex")||(this._weekdaysRegex=Wi),this._weekdaysStrictRegex&&H?this._weekdaysStrictRegex:this._weekdaysRegex)},Ga.weekdaysShortRegex=function Qi(H){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Dn.call(this),H?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(o(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Yi),this._weekdaysShortStrictRegex&&H?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},Ga.weekdaysMinRegex=function en(H){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Dn.call(this),H?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(o(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=aa),this._weekdaysMinStrictRegex&&H?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},Ga.isPM=function ya(H){return"p"===(H+"").toLowerCase().charAt(0)},Ga.meridiem=function zi(H,ye,rt){return H>11?rt?"pm":"PM":rt?"am":"AM"},Lt("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(ye){var rt=ye%10;return ye+(1===X(ye%100/10)?"th":1===rt?"st":2===rt?"nd":3===rt?"rd":"th")}}),t.lang=$("moment.lang is deprecated. Use moment.locale instead.",Lt),t.langData=$("moment.langData is deprecated. Use moment.localeData instead.",ke);var Po=Math.abs;function jl(H,ye,rt,Dt){var jt=ar(ye,rt);return H._milliseconds+=Dt*jt._milliseconds,H._days+=Dt*jt._days,H._months+=Dt*jt._months,H._bubble()}function Ts(H){return H<0?Math.floor(H):Math.ceil(H)}function Ml(H){return 4800*H/146097}function ho(H){return 146097*H/4800}function _o(H){return function(){return this.as(H)}}var Fu=_o("ms"),Rs=_o("s"),Xc=_o("m"),jd=_o("h"),Nu=_o("d"),Jd=_o("w"),Ru=_o("M"),$r=_o("Q"),Jl=_o("y");function Ro(H){return function(){return this.isValid()?this._data[H]:NaN}}var Wl=Ro("milliseconds"),Ps=Ro("seconds"),ed=Ro("minutes"),go=Ro("hours"),_c=Ro("days"),td=Ro("months"),nd=Ro("years");var Ko=Math.round,zl={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function wr(H,ye,rt,Dt,jt){return jt.relativeTime(ye||1,!!rt,H,Dt)}var Bu=Math.abs;function Gl(H){return(H>0)-(H<0)||+H}function Kl(){if(!this.isValid())return this.localeData().invalidDate();var Dt,jt,wn,Gn,Ia,hr,Or,Uo,H=Bu(this._milliseconds)/1e3,ye=Bu(this._days),rt=Bu(this._months),Ki=this.asSeconds();return Ki?(Dt=Ae(H/60),jt=Ae(Dt/60),H%=60,Dt%=60,wn=Ae(rt/12),rt%=12,Gn=H?H.toFixed(3).replace(/\.?0+$/,""):"",Ia=Ki<0?"-":"",hr=Gl(this._months)!==Gl(Ki)?"-":"",Or=Gl(this._days)!==Gl(Ki)?"-":"",Uo=Gl(this._milliseconds)!==Gl(Ki)?"-":"",Ia+"P"+(wn?hr+wn+"Y":"")+(rt?hr+rt+"M":"")+(ye?Or+ye+"D":"")+(jt||Dt||H?"T":"")+(jt?Uo+jt+"H":"")+(Dt?Uo+Dt+"M":"")+(H?Uo+Gn+"S":"")):"P0D"}var Ba=ii.prototype;return Ba.isValid=function hs(){return this._isValid},Ba.abs=function Cl(){var H=this._data;return this._milliseconds=Po(this._milliseconds),this._days=Po(this._days),this._months=Po(this._months),H.milliseconds=Po(H.milliseconds),H.seconds=Po(H.seconds),H.minutes=Po(H.minutes),H.hours=Po(H.hours),H.months=Po(H.months),H.years=Po(H.years),this},Ba.add=function hc(H,ye){return jl(this,H,ye,1)},Ba.subtract=function Vd(H,ye){return jl(this,H,ye,-1)},Ba.as=function No(H){if(!this.isValid())return NaN;var ye,rt,Dt=this._milliseconds;if("month"===(H=Ht(H))||"quarter"===H||"year"===H)switch(ye=this._days+Dt/864e5,rt=this._months+Ml(ye),H){case"month":return rt;case"quarter":return rt/3;case"year":return rt/12}else switch(ye=this._days+Math.round(ho(this._months)),H){case"week":return ye/7+Dt/6048e5;case"day":return ye+Dt/864e5;case"hour":return 24*ye+Dt/36e5;case"minute":return 1440*ye+Dt/6e4;case"second":return 86400*ye+Dt/1e3;case"millisecond":return Math.floor(864e5*ye)+Dt;default:throw new Error("Unknown unit "+H)}},Ba.asMilliseconds=Fu,Ba.asSeconds=Rs,Ba.asMinutes=Xc,Ba.asHours=jd,Ba.asDays=Nu,Ba.asWeeks=Jd,Ba.asMonths=Ru,Ba.asQuarters=$r,Ba.asYears=Jl,Ba.valueOf=function Lu(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*X(this._months/12):NaN},Ba._bubble=function $c(){var jt,wn,Gn,Ki,Ia,H=this._milliseconds,ye=this._days,rt=this._months,Dt=this._data;return H>=0&&ye>=0&&rt>=0||H<=0&&ye<=0&&rt<=0||(H+=864e5*Ts(ho(rt)+ye),ye=0,rt=0),Dt.milliseconds=H%1e3,jt=Ae(H/1e3),Dt.seconds=jt%60,wn=Ae(jt/60),Dt.minutes=wn%60,Gn=Ae(wn/60),Dt.hours=Gn%24,ye+=Ae(Gn/24),rt+=Ia=Ae(Ml(ye)),ye-=Ts(ho(Ia)),Ki=Ae(rt/12),rt%=12,Dt.days=ye,Dt.months=rt,Dt.years=Ki,this},Ba.clone=function Ql(){return ar(this)},Ba.get=function As(H){return H=Ht(H),this.isValid()?this[H+"s"]():NaN},Ba.milliseconds=Wl,Ba.seconds=Ps,Ba.minutes=ed,Ba.hours=go,Ba.days=_c,Ba.weeks=function vu(){return Ae(this.days()/7)},Ba.months=td,Ba.years=nd,Ba.humanize=function Us(H,ye){if(!this.isValid())return this.localeData().invalidDate();var jt,wn,rt=!1,Dt=zl;return"object"==typeof H&&(ye=H,H=!1),"boolean"==typeof H&&(rt=H),"object"==typeof ye&&(Dt=Object.assign({},zl,ye),null!=ye.s&&null==ye.ss&&(Dt.ss=ye.s-1)),wn=function Uu(H,ye,rt,Dt){var jt=ar(H).abs(),wn=Ko(jt.as("s")),Gn=Ko(jt.as("m")),Ki=Ko(jt.as("h")),Ia=Ko(jt.as("d")),hr=Ko(jt.as("M")),Or=Ko(jt.as("w")),Uo=Ko(jt.as("y")),Bs=wn<=rt.ss&&["s",wn]||wn0,Bs[4]=Dt,wr.apply(null,Bs)}(this,!rt,Dt,jt=this.localeData()),rt&&(wn=jt.pastFuture(+this,wn)),jt.postformat(wn)},Ba.toISOString=Kl,Ba.toString=Kl,Ba.toJSON=Kl,Ba.locale=Br,Ba.localeData=fo,Ba.toIsoString=$("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Kl),Ba.lang=Io,Xe("X",0,0,"unix"),Xe("x",0,0,"valueOf"),Ke("x",zt),Ke("X",/[+-]?\d+(\.\d{1,3})?/),$t("X",function(H,ye,rt){rt._d=new Date(1e3*parseFloat(H))}),$t("x",function(H,ye,rt){rt._d=new Date(X(H))}),t.version="2.29.2",function e(H){S=H}(Ni),t.fn=Ci,t.min=function Nl(){return ia("isBefore",[].slice.call(arguments,0))},t.max=function Os(){return ia("isAfter",[].slice.call(arguments,0))},t.now=function(){return Date.now?Date.now():+new Date},t.utc=Y,t.unix=function df(H){return Ni(1e3*H)},t.months=function Vl(H,ye){return Hr(H,ye,"months")},t.isDate=b,t.locale=Lt,t.invalid=N,t.duration=ar,t.isMoment=re,t.weekdays=function Hd(H,ye,rt){return gu(H,ye,rt,"weekdays")},t.parseZone=function Wo(){return Ni.apply(null,arguments).parseZone()},t.localeData=ke,t.isDuration=Li,t.monthsShort=function qd(H,ye){return Hr(H,ye,"monthsShort")},t.weekdaysMin=function Go(H,ye,rt){return gu(H,ye,rt,"weekdaysMin")},t.defineLocale=dt,t.updateLocale=function ge(H,ye){if(null!=ye){var rt,Dt,jt=Ra;null!=sa[H]&&null!=sa[H].parentLocale?sa[H].set(J(sa[H]._config,ye)):(null!=(Dt=no(H))&&(jt=Dt._config),ye=J(jt,ye),null==Dt&&(ye.abbr=H),(rt=new te(ye)).parentLocale=sa[H],sa[H]=rt),Lt(H)}else null!=sa[H]&&(null!=sa[H].parentLocale?(sa[H]=sa[H].parentLocale,H===Lt()&&Lt(H)):null!=sa[H]&&delete sa[H]);return sa[H]},t.locales=function gt(){return K(sa)},t.weekdaysShort=function zo(H,ye,rt){return gu(H,ye,rt,"weekdaysShort")},t.normalizeUnits=Ht,t.relativeTimeRounding=function Qd(H){return void 0===H?Ko:"function"==typeof H&&(Ko=H,!0)},t.relativeTimeThreshold=function gc(H,ye){return void 0!==zl[H]&&(void 0===ye?zl[H]:(zl[H]=ye,"s"===H&&(zl.ss=ye-1),!0))},t.calendarFormat=function Ul(H,ye){var rt=H.diff(ye,"days",!0);return rt<-6?"sameElse":rt<-1?"lastWeek":rt<0?"lastDay":rt<1?"sameDay":rt<2?"nextDay":rt<7?"nextWeek":"sameElse"},t.prototype=Ci,t.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},t}()},49241:function(Ce,E,n){"use strict";n.d(E,{s:function(){return y},Y:function(){return T}});var S=n(39117),t=n(1884),e=n(36362),c=n(86613);function u(Y,q){1&Y&&c._UZ(0,"div",9)}function o(Y,q){if(1&Y&&(c.TgZ(0,"span",10),c._uU(1),c.qZA()),2&Y){var B=c.oxw().$implicit;c.xp6(1),c.Oqu(B.description)}}function _(Y,q){if(1&Y&&(c.TgZ(0,"section",11),c._UZ(1,"ngx-json-viewer",12),c.qZA()),2&Y){var B=c.oxw().$implicit,k=c.oxw();c.xp6(1),c.Q6J("json",B.value)("expanded",k.expanded)}}var s=function(q){return["segment",q]},h=function(q,B){return{"segment-main":!0,expandable:q,expanded:B}};function b(Y,q){if(1&Y){var B=c.EpF();c.TgZ(0,"section",2),c.TgZ(1,"section",3),c.NdJ("click",function(){var L=c.CHM(B).$implicit;return c.oxw().toggle(L)}),c.YNc(2,u,1,0,"div",4),c.TgZ(3,"span",5),c._uU(4),c.qZA(),c.TgZ(5,"span",6),c._uU(6,": "),c.qZA(),c.YNc(7,o,2,1,"span",7),c.qZA(),c.YNc(8,_,2,2,"section",8),c.qZA()}if(2&Y){var k=q.$implicit,D=c.oxw();c.Q6J("ngClass",c.VKq(6,s,"segment-type-"+k.type)),c.xp6(1),c.Q6J("ngClass",c.WLB(8,h,D.isExpandable(k),k.expanded)),c.xp6(1),c.Q6J("ngIf",D.isExpandable(k)),c.xp6(2),c.Oqu(k.key),c.xp6(3),c.Q6J("ngIf",!k.expanded||!D.isExpandable(k)),c.xp6(1),c.Q6J("ngIf",k.expanded&&D.isExpandable(k))}}var T=function(){var Y=function(){function q(){(0,S.Z)(this,q),this.expanded=!0,this.cleanOnChange=!0,this.segments=[]}return(0,t.Z)(q,[{key:"ngOnChanges",value:function(){var k=this;this.cleanOnChange&&(this.segments=[]),"object"==typeof this.json?Object.keys(this.json).forEach(function(D){k.segments.push(k.parseKeyValue(D,k.json[D]))}):this.segments.push(this.parseKeyValue("(".concat(typeof this.json,")"),this.json))}},{key:"isExpandable",value:function(k){return"object"===k.type||"array"===k.type}},{key:"toggle",value:function(k){this.isExpandable(k)&&(k.expanded=!k.expanded)}},{key:"parseKeyValue",value:function(k,D){var N={key:k,value:D,type:void 0,description:""+D,expanded:this.expanded};switch(typeof N.value){case"number":N.type="number";break;case"boolean":N.type="boolean";break;case"function":N.type="function";break;case"string":N.type="string",N.description='"'+N.value+'"';break;case"undefined":N.type="undefined",N.description="undefined";break;case"object":null===N.value?(N.type="null",N.description="null"):Array.isArray(N.value)?(N.type="array",N.description="Array["+N.value.length+"] "+JSON.stringify(N.value)):N.value instanceof Date?N.type="date":(N.type="object",N.description="Object "+JSON.stringify(N.value))}return N}}]),q}();return Y.\u0275fac=function(B){return new(B||Y)},Y.\u0275cmp=c.Xpm({type:Y,selectors:[["ngx-json-viewer"]],inputs:{expanded:"expanded",cleanOnChange:"cleanOnChange",json:"json"},features:[c.TTD],decls:2,vars:1,consts:[[1,"ngx-json-viewer"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass"],[3,"ngClass","click"],["class","toggler",4,"ngIf"],[1,"segment-key"],[1,"segment-separator"],["class","segment-value",4,"ngIf"],["class","children",4,"ngIf"],[1,"toggler"],[1,"segment-value"],[1,"children"],[3,"json","expanded"]],template:function(B,k){1&B&&(c.TgZ(0,"section",0),c.YNc(1,b,9,11,"section",1),c.qZA()),2&B&&(c.xp6(1),c.Q6J("ngForOf",k.segments))},directives:[e.sg,e.mk,e.O5,Y],styles:['@charset "UTF-8";\n .ngx-json-viewer[_ngcontent-%COMP%] {\n font-family: monospace;\n font-size: 1em;\n width: 100%;\n height: 100%;\n overflow: hidden;\n position: relative; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] {\n padding: 2px;\n margin: 1px 1px 1px 12px; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] {\n word-wrap: break-word; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .toggler[_ngcontent-%COMP%] {\n position: absolute;\n margin-left: -14px;\n margin-top: 3px;\n font-size: .8em;\n line-height: 1.2em;\n vertical-align: middle;\n color: #787878; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .toggler[_ngcontent-%COMP%]::after {\n display: inline-block;\n content: "\u25ba";\n -webkit-transition: -webkit-transform 0.1s ease-in;\n transition: -webkit-transform 0.1s ease-in;\n transition: transform 0.1s ease-in;\n transition: transform 0.1s ease-in, -webkit-transform 0.1s ease-in; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .segment-key[_ngcontent-%COMP%] {\n color: #4E187C; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .segment-separator[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .segment-main[_ngcontent-%COMP%] .segment-value[_ngcontent-%COMP%] {\n color: #000; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment[_ngcontent-%COMP%] .children[_ngcontent-%COMP%] {\n margin-left: 12px; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-string[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #FF6B6B; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-number[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #009688; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-boolean[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #b938a4; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-date[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #05668D; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-array[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-object[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-function[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-null[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #fff; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-undefined[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n color: #fff; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-null[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n background-color: red; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-undefined[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-key[_ngcontent-%COMP%] {\n color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-undefined[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] > .segment-value[_ngcontent-%COMP%] {\n background-color: #999; }\n .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-object[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%], .ngx-json-viewer[_ngcontent-%COMP%] .segment-type-array[_ngcontent-%COMP%] > .segment-main[_ngcontent-%COMP%] {\n white-space: nowrap; }\n .ngx-json-viewer[_ngcontent-%COMP%] .expanded[_ngcontent-%COMP%] > .toggler[_ngcontent-%COMP%]::after {\n -webkit-transform: rotate(90deg);\n transform: rotate(90deg); }\n .ngx-json-viewer[_ngcontent-%COMP%] .expandable[_ngcontent-%COMP%], .ngx-json-viewer[_ngcontent-%COMP%] .expandable[_ngcontent-%COMP%] > .toggler[_ngcontent-%COMP%] {\n cursor: pointer; }']}),Y}(),y=function(){var Y=(0,t.Z)(function q(){(0,S.Z)(this,q)});return Y.\u0275fac=function(B){return new(B||Y)},Y.\u0275mod=c.oAB({type:Y}),Y.\u0275inj=c.cJS({imports:[[e.ez]]}),Y}()},76317:function(Ce,E,n){"use strict";n.d(E,{X:function(){return s}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),s=function(h){(0,u.Z)(T,h);var b=(0,o.Z)(T);function T(y){var Y;return(0,S.Z)(this,T),(Y=b.call(this))._value=y,Y}return(0,t.Z)(T,[{key:"value",get:function(){return this.getValue()}},{key:"_subscribe",value:function(Y){var q=(0,e.Z)((0,c.Z)(T.prototype),"_subscribe",this).call(this,Y);return!q.closed&&Y.next(this._value),q}},{key:"getValue",value:function(){var B=this._value;if(this.hasError)throw this.thrownError;return this._throwIfClosed(),B}},{key:"next",value:function(Y){(0,e.Z)((0,c.Z)(T.prototype),"next",this).call(this,this._value=Y)}}]),T}(n(50253).x)},83336:function(Ce,E,n){"use strict";n.d(E,{y:function(){return y}});var S=n(39117),t=n(1884),e=n(5463),c=n(17714),u=n(24585),o=n(89173);function s(k){return 0===k.length?o.y:1===k.length?k[0]:function(N){return k.reduce(function(I,L){return L(I)},N)}}var h=n(99057),b=n(92971),T=n(12309),y=function(){var k=function(){function D(N){(0,S.Z)(this,D),N&&(this._subscribe=N)}return(0,t.Z)(D,[{key:"lift",value:function(I){var L=new D;return L.source=this,L.operator=I,L}},{key:"subscribe",value:function(I,L,j){var le=this,re=function B(k){return k&&k instanceof e.Lv||function q(k){return k&&(0,b.m)(k.next)&&(0,b.m)(k.error)&&(0,b.m)(k.complete)}(k)&&(0,c.Nn)(k)}(I)?I:new e.Hp(I,L,j);return(0,T.x)(function(){var W=le.operator,$=le.source;re.add(W?W.call(re,$):$?le._subscribe(re):le._trySubscribe(re))}),re}},{key:"_trySubscribe",value:function(I){try{return this._subscribe(I)}catch(L){I.error(L)}}},{key:"forEach",value:function(I,L){var j=this;return new(L=Y(L))(function(le,re){var W=new e.Hp({next:function(be){try{I(be)}catch(z){re(z),W.unsubscribe()}},error:re,complete:le});j.subscribe(W)})}},{key:"_subscribe",value:function(I){var L;return null===(L=this.source)||void 0===L?void 0:L.subscribe(I)}},{key:u.L,value:function(){return this}},{key:"pipe",value:function(){for(var I=arguments.length,L=new Array(I),j=0;j0&&void 0!==arguments[0]?arguments[0]:1/0,B=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1/0,k=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.l;return(0,S.Z)(this,y),(Y=T.call(this))._bufferSize=q,Y._windowTime=B,Y._timestampProvider=k,Y._buffer=[],Y._infiniteTimeWindow=!0,Y._infiniteTimeWindow=B===1/0,Y._bufferSize=Math.max(1,q),Y._windowTime=Math.max(1,B),Y}return(0,t.Z)(y,[{key:"next",value:function(q){var k=this._buffer,D=this._infiniteTimeWindow,N=this._timestampProvider,I=this._windowTime;this.isStopped||(k.push(q),!D&&k.push(N.now()+I)),this._trimBuffer(),(0,e.Z)((0,c.Z)(y.prototype),"next",this).call(this,q)}},{key:"_subscribe",value:function(q){this._throwIfClosed(),this._trimBuffer();for(var B=this._innerSubscribe(q),k=this._infiniteTimeWindow,N=this._buffer.slice(),I=0;I0}},{key:"_trySubscribe",value:function(j){return this._throwIfClosed(),(0,c.Z)((0,u.Z)(I.prototype),"_trySubscribe",this).call(this,j)}},{key:"_subscribe",value:function(j){return this._throwIfClosed(),this._checkFinalizedStatuses(j),this._innerSubscribe(j)}},{key:"_innerSubscribe",value:function(j){var W=this.observers;return this.hasError||this.isStopped?h.Lc:(W.push(j),new h.w0(function(){return(0,y.P)(W,j)}))}},{key:"_checkFinalizedStatuses",value:function(j){var W=this.isStopped;this.hasError?j.error(this.thrownError):W&&j.complete()}},{key:"asObservable",value:function(){var j=new s.y;return j.source=this,j}}]),I}(s.y);return k.create=function(D,N){return new B(D,N)},k}(),B=function(k){(0,o.Z)(N,k);var D=(0,_.Z)(N);function N(I,L){var j;return(0,t.Z)(this,N),(j=D.call(this)).destination=I,j.source=L,j}return(0,e.Z)(N,[{key:"next",value:function(L){var j,le;null===(le=null===(j=this.destination)||void 0===j?void 0:j.next)||void 0===le||le.call(j,L)}},{key:"error",value:function(L){var j,le;null===(le=null===(j=this.destination)||void 0===j?void 0:j.error)||void 0===le||le.call(j,L)}},{key:"complete",value:function(){var L,j;null===(j=null===(L=this.destination)||void 0===L?void 0:L.complete)||void 0===j||j.call(L)}},{key:"_subscribe",value:function(L){var j,le;return null!==(le=null===(j=this.source)||void 0===j?void 0:j.subscribe(L))&&void 0!==le?le:h.Lc}}]),N}(q)},5463:function(Ce,E,n){"use strict";n.d(E,{Hp:function(){return re},Lv:function(){return I}});var S=n(39117),t=n(1884),e=n(45632),c=n(97424),u=n(28042),o=n(46751),_=n(56101),s=n(92971),h=n(17714),b=n(99057),T=n(84709),y=n(99635),Y=k("C",void 0,void 0);function k(d,Q,J){return{kind:d,value:Q,error:J}}var D=n(93542),N=n(12309),I=function(d){(0,o.Z)(J,d);var Q=(0,_.Z)(J);function J(te){var K;return(0,S.Z)(this,J),(K=Q.call(this)).isStopped=!1,te?(K.destination=te,(0,h.Nn)(te)&&te.add((0,e.Z)(K))):K.destination=z,K}return(0,t.Z)(J,[{key:"next",value:function(K){this.isStopped?be(function B(d){return k("N",d,void 0)}(K),this):this._next(K)}},{key:"error",value:function(K){this.isStopped?be(function q(d){return k("E",void 0,d)}(K),this):(this.isStopped=!0,this._error(K))}},{key:"complete",value:function(){this.isStopped?be(Y,this):(this.isStopped=!0,this._complete())}},{key:"unsubscribe",value:function(){this.closed||(this.isStopped=!0,(0,c.Z)((0,u.Z)(J.prototype),"unsubscribe",this).call(this),this.destination=null)}},{key:"_next",value:function(K){this.destination.next(K)}},{key:"_error",value:function(K){try{this.destination.error(K)}finally{this.unsubscribe()}}},{key:"_complete",value:function(){try{this.destination.complete()}finally{this.unsubscribe()}}}],[{key:"create",value:function(K,G,ce){return new re(K,G,ce)}}]),J}(h.w0),L=Function.prototype.bind;function j(d,Q){return L.call(d,Q)}var le=function(){function d(Q){(0,S.Z)(this,d),this.partialObserver=Q}return(0,t.Z)(d,[{key:"next",value:function(J){var te=this.partialObserver;if(te.next)try{te.next(J)}catch(K){W(K)}}},{key:"error",value:function(J){var te=this.partialObserver;if(te.error)try{te.error(J)}catch(K){W(K)}else W(J)}},{key:"complete",value:function(){var J=this.partialObserver;if(J.complete)try{J.complete()}catch(te){W(te)}}}]),d}(),re=function(d){(0,o.Z)(J,d);var Q=(0,_.Z)(J);function J(te,K,G){var ce,_e,Me;return(0,S.Z)(this,J),ce=Q.call(this),(0,s.m)(te)||!te?_e={next:null!=te?te:void 0,error:null!=K?K:void 0,complete:null!=G?G:void 0}:(0,e.Z)(ce)&&b.v.useDeprecatedNextContext?((Me=Object.create(te)).unsubscribe=function(){return ce.unsubscribe()},_e={next:te.next&&j(te.next,Me),error:te.error&&j(te.error,Me),complete:te.complete&&j(te.complete,Me)}):_e=te,ce.destination=new le(_e),ce}return(0,t.Z)(J)}(I);function W(d){b.v.useDeprecatedSynchronousErrorHandling?(0,N.O)(d):(0,T.h)(d)}function be(d,Q){var J=b.v.onStoppedNotification;J&&D.z.setTimeout(function(){return J(d,Q)})}var z={closed:!0,next:y.Z,error:function $(d){throw d},complete:y.Z}},17714:function(Ce,E,n){"use strict";n.d(E,{Lc:function(){return b},w0:function(){return h},Nn:function(){return T}});var Y,S=n(71340),t=n(44014),e=n(39117),c=n(1884),u=n(92971),_=(0,n(27543).d)(function(Y){return function(B){Y(this),this.message=B?"".concat(B.length," errors occurred during unsubscription:\n").concat(B.map(function(k,D){return"".concat(D+1,") ").concat(k.toString())}).join("\n ")):"",this.name="UnsubscriptionError",this.errors=B}}),s=n(39663),h=function(){function Y(q){(0,e.Z)(this,Y),this.initialTeardown=q,this.closed=!1,this._parentage=null,this._teardowns=null}return(0,c.Z)(Y,[{key:"unsubscribe",value:function(){var B;if(!this.closed){this.closed=!0;var k=this._parentage;if(k)if(this._parentage=null,Array.isArray(k)){var N,D=(0,t.Z)(k);try{for(D.s();!(N=D.n()).done;)N.value.remove(this)}catch($){D.e($)}finally{D.f()}}else k.remove(this);var L=this.initialTeardown;if((0,u.m)(L))try{L()}catch($){B=$ instanceof _?$.errors:[$]}var j=this._teardowns;if(j){this._teardowns=null;var re,le=(0,t.Z)(j);try{for(le.s();!(re=le.n()).done;){var W=re.value;try{y(W)}catch($){B=null!=B?B:[],$ instanceof _?B=[].concat((0,S.Z)(B),(0,S.Z)($.errors)):B.push($)}}}catch($){le.e($)}finally{le.f()}}if(B)throw new _(B)}}},{key:"add",value:function(B){var k;if(B&&B!==this)if(this.closed)y(B);else{if(B instanceof Y){if(B.closed||B._hasParent(this))return;B._addParent(this)}(this._teardowns=null!==(k=this._teardowns)&&void 0!==k?k:[]).push(B)}}},{key:"_hasParent",value:function(B){var k=this._parentage;return k===B||Array.isArray(k)&&k.includes(B)}},{key:"_addParent",value:function(B){var k=this._parentage;this._parentage=Array.isArray(k)?(k.push(B),k):k?[k,B]:B}},{key:"_removeParent",value:function(B){var k=this._parentage;k===B?this._parentage=null:Array.isArray(k)&&(0,s.P)(k,B)}},{key:"remove",value:function(B){var k=this._teardowns;k&&(0,s.P)(k,B),B instanceof Y&&B._removeParent(this)}}]),Y}();h.EMPTY=((Y=new h).closed=!0,Y);var b=h.EMPTY;function T(Y){return Y instanceof h||Y&&"closed"in Y&&(0,u.m)(Y.remove)&&(0,u.m)(Y.add)&&(0,u.m)(Y.unsubscribe)}function y(Y){(0,u.m)(Y)?Y():Y.unsubscribe()}},99057:function(Ce,E,n){"use strict";n.d(E,{v:function(){return S}});var S={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},26562:function(Ce,E,n){"use strict";n.d(E,{a:function(){return b}});var S=n(83336),t=n(45756),e=n(72957),c=n(89173),u=n(58385),o=n(10420),_=n(11054),s=n(93945),h=n(1817);function b(){for(var Y=arguments.length,q=new Array(Y),B=0;B2&&void 0!==arguments[2]?arguments[2]:c.y;return function(k){y(q,function(){for(var D=Y.length,N=new Array(D),I=D,L=D,j=function(W){y(q,function(){var $=(0,e.D)(Y[W],q),be=!1;$.subscribe((0,s.x)(k,function(z){N[W]=z,be||(be=!0,L--),L||k.next(B(N.slice()))},function(){--I||k.complete()}))},k)},le=0;le1&&void 0!==arguments[1]?arguments[1]:0;return(0,e.e)(function(z,d){z.subscribe((0,c.x)(d,function(Q){return(0,t.f)(d,$,function(){return d.next(Q)},be)},function(){return(0,t.f)(d,$,function(){return d.complete()},be)},function(Q){return(0,t.f)(d,$,function(){return d.error(Q)},be)}))})}function o($){var be=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return(0,e.e)(function(z,d){d.add($.schedule(function(){return z.subscribe(d)},be))})}var h=n(83336),T=n(67321),y=n(92971);function q($,be){if(!$)throw new Error("Iterable cannot be null");return new h.y(function(z){(0,t.f)(z,be,function(){var d=$[Symbol.asyncIterator]();(0,t.f)(z,be,function(){d.next().then(function(Q){Q.done?z.complete():z.next(Q.value)})},0,!0)})})}var B=n(21331),k=n(79548),D=n(99806),N=n(23433),I=n(80470),L=n(27785),j=n(20181);function W($,be){return be?function re($,be){if(null!=$){if((0,B.c)($))return function _($,be){return(0,S.Xf)($).pipe(o(be),u(be))}($,be);if((0,D.z)($))return function b($,be){return new h.y(function(z){var d=0;return be.schedule(function(){d===$.length?z.complete():(z.next($[d++]),z.closed||this.schedule())})})}($,be);if((0,k.t)($))return function s($,be){return(0,S.Xf)($).pipe(o(be),u(be))}($,be);if((0,I.D)($))return q($,be);if((0,N.T)($))return function Y($,be){return new h.y(function(z){var d;return(0,t.f)(z,be,function(){d=$[T.h](),(0,t.f)(z,be,function(){var Q,J;try{var te=d.next();Q=te.value,J=te.done}catch(K){return void z.error(K)}J?z.complete():z.next(Q)},0,!0)}),function(){return(0,y.m)(null==d?void 0:d.return)&&d.return()}})}($,be);if((0,j.L)($))return function le($,be){return q((0,j.Q)($),be)}($,be)}throw(0,L.z)($)}($,be):(0,S.Xf)($)}},23280:function(Ce,E,n){"use strict";n.d(E,{R:function(){return T}});var S=n(78170),t=n(54987),e=n(83336),c=n(49525),u=n(99806),o=n(92971),_=n(58385),s=["addListener","removeListener"],h=["addEventListener","removeEventListener"],b=["on","off"];function T(k,D,N,I){if((0,o.m)(N)&&(I=N,N=void 0),I)return T(k,D,N).pipe((0,_.Z)(I));var L=function B(k){return(0,o.m)(k.addEventListener)&&(0,o.m)(k.removeEventListener)}(k)?h.map(function(W){return function($){return k[W](D,$,N)}}):function Y(k){return(0,o.m)(k.addListener)&&(0,o.m)(k.removeListener)}(k)?s.map(y(k,D)):function q(k){return(0,o.m)(k.on)&&(0,o.m)(k.off)}(k)?b.map(y(k,D)):[],j=(0,S.Z)(L,2),le=j[0],re=j[1];if(!le&&(0,u.z)(k))return(0,c.z)(function(W){return T(W,D,N)})((0,t.Xf)(k));if(!le)throw new TypeError("Invalid event target");return new e.y(function(W){var $=function(){for(var z=arguments.length,d=new Array(z),Q=0;Q=0;--Fe){var et=this.tryEntries[Fe],Ht=et.completion;if("root"===et.tryLoc)return ut("end");if(et.tryLoc<=this.prev){var nn=$.call(et,"catchLoc"),an=$.call(et,"finallyLoc");if(nn&&an){if(this.prev=0;--ut){var Fe=this.tryEntries[ut];if(Fe.tryLoc<=this.prev&&$.call(Fe,"finallyLoc")&&this.prev=0;--xe){var ut=this.tryEntries[xe];if(ut.finallyLoc===We)return this.complete(ut.completion,ut.afterLoc),ct(ut),ce}},catch:function(We){for(var xe=this.tryEntries.length-1;xe>=0;--xe){var ut=this.tryEntries[xe];if(ut.tryLoc===We){var Fe=ut.completion;if("throw"===Fe.type){var et=Fe.arg;ct(ut)}return et}}throw new Error("illegal catch attempt")},delegateYield:function(We,xe,ut){return this.delegate={iterator:st(We),resultName:xe,nextLoc:ut},"next"===this.method&&(this.arg=void 0),ce}},re}function B(re){if(re instanceof u.y)return re;if(null!=re){if((0,o.c)(re))return function k(re){return new u.y(function(W){var $=re[Y.L]();if((0,T.m)($.subscribe))return $.subscribe(W);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(re);if((0,e.z)(re))return function D(re){return new u.y(function(W){for(var $=0;$0&&void 0!==arguments[0]?arguments[0]:0,_=arguments.length>1?arguments[1]:void 0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.P,h=-1;return null!=_&&((0,e.K)(_)?s=_:h=_),new S.y(function(b){var T=(0,c.q)(o)?+o-s.now():o;T<0&&(T=0);var y=0;return s.schedule(function(){b.closed||(b.next(y++),0<=h?this.schedule(void 0,h):b.complete())},T)})}},93945:function(Ce,E,n){"use strict";n.d(E,{x:function(){return h}});var S=n(39117),t=n(1884),e=n(45632),c=n(46751),u=n(56101),o=n(97424),_=n(28042);function h(T,y,Y,q,B){return new b(T,y,Y,q,B)}var b=function(T){(0,c.Z)(Y,T);var y=(0,u.Z)(Y);function Y(q,B,k,D,N,I){var L,j,le,re;return(0,S.Z)(this,Y),(re=y.call(this,q)).onFinalize=N,re.shouldUnsubscribe=I,re._next=B?function(W){try{B(W)}catch($){q.error($)}}:(0,o.Z)((L=(0,e.Z)(re),(0,_.Z)(Y.prototype)),"_next",L),re._error=D?function(W){try{D(W)}catch($){q.error($)}finally{this.unsubscribe()}}:(0,o.Z)((j=(0,e.Z)(re),(0,_.Z)(Y.prototype)),"_error",j),re._complete=k?function(){try{k()}catch(W){q.error(W)}finally{this.unsubscribe()}}:(0,o.Z)((le=(0,e.Z)(re),(0,_.Z)(Y.prototype)),"_complete",le),re}return(0,t.Z)(Y,[{key:"unsubscribe",value:function(){var B;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var k=this.closed;(0,o.Z)((0,_.Z)(Y.prototype),"unsubscribe",this).call(this),!k&&(null===(B=this.onFinalize)||void 0===B||B.call(this))}}}]),Y}(n(5463).Lv)},89211:function(Ce,E,n){"use strict";n.d(E,{e:function(){return _}});var S=n(96936),t=n(41944),e=n(54987),c=n(93945);function u(s){return(0,t.e)(function(h,b){var T=!1,y=null,Y=null,q=!1,B=function(){if(null==Y||Y.unsubscribe(),Y=null,T){T=!1;var N=y;y=null,b.next(N)}q&&b.complete()},k=function(){Y=null,q&&b.complete()};h.subscribe((0,c.x)(b,function(D){T=!0,y=D,Y||(0,e.Xf)(s(D)).subscribe(Y=(0,c.x)(b,B,k))},function(){q=!0,(!T||!Y||Y.closed)&&b.complete()}))})}var o=n(78947);function _(s){var h=arguments.length>1&&void 0!==arguments[1]?arguments[1]:S.z;return u(function(){return(0,o.H)(s,h)})}},53158:function(Ce,E,n){"use strict";n.d(E,{K:function(){return c}});var S=n(54987),t=n(93945),e=n(41944);function c(u){return(0,e.e)(function(o,_){var b,s=null,h=!1;s=o.subscribe((0,t.x)(_,void 0,void 0,function(T){b=(0,S.Xf)(u(T,c(u)(o))),s?(s.unsubscribe(),s=null,b.subscribe(_)):h=!0})),h&&(s.unsubscribe(),s=null,b.subscribe(_))})}},63853:function(Ce,E,n){"use strict";n.d(E,{b:function(){return e}});var S=n(49525),t=n(92971);function e(c,u){return(0,t.m)(u)?(0,S.z)(c,u,1):(0,S.z)(c,1)}},71989:function(Ce,E,n){"use strict";n.d(E,{b:function(){return c}});var S=n(96936),t=n(41944),e=n(93945);function c(u){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:S.z;return(0,t.e)(function(_,s){var h=null,b=null,T=null,y=function(){if(h){h.unsubscribe(),h=null;var B=b;b=null,s.next(B)}};function Y(){var q=T+u,B=o.now();if(B1&&void 0!==arguments[1]?arguments[1]:S.z,B=(0,T.H)(Y,q);return b(function(){return B})}},98977:function(Ce,E,n){"use strict";n.d(E,{x:function(){return c}});var S=n(89173),t=n(41944),e=n(93945);function c(o){var _=arguments.length>1&&void 0!==arguments[1]?arguments[1]:S.y;return o=null!=o?o:u,(0,t.e)(function(s,h){var b,T=!0;s.subscribe((0,e.x)(h,function(y){var Y=_(y);(T||!o(b,Y))&&(T=!1,b=Y,h.next(y))}))})}function u(o,_){return o===_}},60116:function(Ce,E,n){"use strict";n.d(E,{h:function(){return e}});var S=n(41944),t=n(93945);function e(c,u){return(0,S.e)(function(o,_){var s=0;o.subscribe((0,t.x)(_,function(h){return c.call(u,h,s++)&&_.next(h)}))})}},32313:function(Ce,E,n){"use strict";n.d(E,{x:function(){return t}});var S=n(41944);function t(e){return(0,S.e)(function(c,u){try{c.subscribe(u)}finally{u.add(e)}})}},50635:function(Ce,E,n){"use strict";n.d(E,{U:function(){return e}});var S=n(41944),t=n(93945);function e(c,u){return(0,S.e)(function(o,_){var s=0;o.subscribe((0,t.x)(_,function(h){_.next(c.call(u,h,s++))}))})}},73:function(Ce,E,n){"use strict";n.d(E,{h:function(){return t}});var S=n(50635);function t(e){return(0,S.U)(function(){return e})}},1308:function(Ce,E,n){"use strict";n.d(E,{J:function(){return e}});var S=n(49525),t=n(89173);function e(){var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0;return(0,S.z)(t.y,c)}},49525:function(Ce,E,n){"use strict";n.d(E,{z:function(){return s}});var S=n(50635),t=n(54987),e=n(41944),c=n(1817),u=n(93945);function o(h,b,T,y,Y,q,B,k){var D=[],N=0,I=0,L=!1,j=function(){L&&!D.length&&!N&&b.complete()},le=function($){return N2&&void 0!==arguments[2]?arguments[2]:1/0;return(0,_.m)(b)?s(function(y,Y){return(0,S.U)(function(q,B){return b(y,q,Y,B)})((0,t.Xf)(h(y,Y)))},T):("number"==typeof b&&(T=b),(0,e.e)(function(y,Y){return o(y,Y,h,T)}))}},81203:function(Ce,E,n){"use strict";n.d(E,{B:function(){return o}});var S=n(72957),t=n(59295),e=n(50253),c=n(5463),u=n(41944);function o(){var s=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},h=s.connector,b=void 0===h?function(){return new e.x}:h,T=s.resetOnError,y=void 0===T||T,Y=s.resetOnComplete,q=void 0===Y||Y,B=s.resetOnRefCountZero,k=void 0===B||B;return function(D){var N=null,I=null,L=null,j=0,le=!1,re=!1,W=function(){null==I||I.unsubscribe(),I=null},$=function(){W(),N=L=null,le=re=!1},be=function(){var d=N;$(),null==d||d.unsubscribe()};return(0,u.e)(function(z,d){j++,!re&&!le&&W();var Q=L=null!=L?L:b();d.add(function(){0==--j&&!re&&!le&&(I=_(be,k))}),Q.subscribe(d),N||(N=new c.Hp({next:function(te){return Q.next(te)},error:function(te){re=!0,W(),I=_($,y,te),Q.error(te)},complete:function(){le=!0,W(),I=_($,q),Q.complete()}}),(0,S.D)(z).subscribe(N))})(D)}}function _(s,h){if(!0===h)return s(),null;if(!1===h)return null;for(var b=arguments.length,T=new Array(b>2?b-2:0),y=2;y1&&void 0!==arguments[1]&&arguments[1];return(0,S.e)(function(o,_){var s=0;o.subscribe((0,t.x)(_,function(h){var b=c(h,s++);(b||u)&&_.next(h),!b&&_.complete()}))})}},19337:function(Ce,E,n){"use strict";n.d(E,{b:function(){return u}});var S=n(92971),t=n(41944),e=n(93945),c=n(89173);function u(o,_,s){var h=(0,S.m)(o)||_||s?{next:o,error:_,complete:s}:o;return h?(0,t.e)(function(b,T){var y;null===(y=h.subscribe)||void 0===y||y.call(h);var Y=!0;b.subscribe((0,e.x)(T,function(q){var B;null===(B=h.next)||void 0===B||B.call(h,q),T.next(q)},function(){var q;Y=!1,null===(q=h.complete)||void 0===q||q.call(h),T.complete()},function(q){var B;Y=!1,null===(B=h.error)||void 0===B||B.call(h,q),T.error(q)},function(){var q,B;Y&&(null===(q=h.unsubscribe)||void 0===q||q.call(h)),null===(B=h.finalize)||void 0===B||B.call(h)}))}):c.y}},75417:function(Ce,E,n){"use strict";n.d(E,{o:function(){return T}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),s=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B,k){return(0,S.Z)(this,q),Y.call(this)}return(0,t.Z)(q,[{key:"schedule",value:function(k){return this}}]),q}(n(17714).w0),h={setInterval:function(y){function Y(){return y.apply(this,arguments)}return Y.toString=function(){return y.toString()},Y}(function(){var y=h.delegate;return((null==y?void 0:y.setInterval)||setInterval).apply(void 0,arguments)}),clearInterval:function(y){function Y(q){return y.apply(this,arguments)}return Y.toString=function(){return y.toString()},Y}(function(y){var Y=h.delegate;return((null==Y?void 0:Y.clearInterval)||clearInterval)(y)}),delegate:void 0},b=n(39663),T=function(y){(0,u.Z)(q,y);var Y=(0,o.Z)(q);function q(B,k){var D;return(0,S.Z)(this,q),(D=Y.call(this,B,k)).scheduler=B,D.work=k,D.pending=!1,D}return(0,t.Z)(q,[{key:"schedule",value:function(k){var D=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(this.closed)return this;this.state=k;var N=this.id,I=this.scheduler;return null!=N&&(this.id=this.recycleAsyncId(I,N,D)),this.pending=!0,this.delay=D,this.id=this.id||this.requestAsyncId(I,this.id,D),this}},{key:"requestAsyncId",value:function(k,D){var N=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return h.setInterval(k.flush.bind(k,this),N)}},{key:"recycleAsyncId",value:function(k,D){var N=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!=N&&this.delay===N&&!1===this.pending)return D;h.clearInterval(D)}},{key:"execute",value:function(k,D){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var N=this._execute(k,D);if(N)return N;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}},{key:"_execute",value:function(k,D){var I,N=!1;try{this.work(k)}catch(L){N=!0,I=L||new Error("Scheduled action threw falsy error")}if(N)return this.unsubscribe(),I}},{key:"unsubscribe",value:function(){if(!this.closed){var k=this.id,D=this.scheduler,N=D.actions;this.work=this.state=this.scheduler=null,this.pending=!1,(0,b.P)(N,this),null!=k&&(this.id=this.recycleAsyncId(D,k,null)),this.delay=null,(0,e.Z)((0,c.Z)(q.prototype),"unsubscribe",this).call(this)}}}]),q}(s)},41010:function(Ce,E,n){"use strict";n.d(E,{v:function(){return _}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(67654),o=function(){function s(h){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.now;(0,S.Z)(this,s),this.schedulerActionCtor=h,this.now=b}return(0,t.Z)(s,[{key:"schedule",value:function(b){var T=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,y=arguments.length>2?arguments[2]:void 0;return new this.schedulerActionCtor(this,b).schedule(y,T)}}]),s}();o.now=u.l.now;var _=function(s){(0,e.Z)(b,s);var h=(0,c.Z)(b);function b(T){var y,Y=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.now;return(0,S.Z)(this,b),(y=h.call(this,T,Y)).actions=[],y._active=!1,y._scheduled=void 0,y}return(0,t.Z)(b,[{key:"flush",value:function(y){var Y=this.actions;if(this._active)Y.push(y);else{var q;this._active=!0;do{if(q=y.execute(y.state,y.delay))break}while(y=Y.shift());if(this._active=!1,q){for(;y=Y.shift();)y.unsubscribe();throw q}}}}]),b}(o)},83888:function(Ce,E,n){"use strict";n.d(E,{E:function(){return L}});var h,S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(75417),s=1,b={};function T(le){return le in b&&(delete b[le],!0)}var q=function(re){var W=s++;return b[W]=!0,h||(h=Promise.resolve()),h.then(function(){return T(W)&&re()}),W},B=function(re){T(re)},k={setImmediate:function(){var re=k.delegate;return((null==re?void 0:re.setImmediate)||q).apply(void 0,arguments)},clearImmediate:function(re){var W=k.delegate;return((null==W?void 0:W.clearImmediate)||B)(re)},delegate:void 0},D=function(le){(0,u.Z)(W,le);var re=(0,o.Z)(W);function W($,be){var z;return(0,S.Z)(this,W),(z=re.call(this,$,be)).scheduler=$,z.work=be,z}return(0,t.Z)(W,[{key:"requestAsyncId",value:function(be,z){var d=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==d&&d>0?(0,e.Z)((0,c.Z)(W.prototype),"requestAsyncId",this).call(this,be,z,d):(be.actions.push(this),be._scheduled||(be._scheduled=k.setImmediate(be.flush.bind(be,void 0))))}},{key:"recycleAsyncId",value:function(be,z){var d=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!=d&&d>0||null==d&&this.delay>0)return(0,e.Z)((0,c.Z)(W.prototype),"recycleAsyncId",this).call(this,be,z,d);be.actions.some(function(Q){return Q.id===z})||(k.clearImmediate(z),be._scheduled=void 0)}}]),W}(_.o),I=function(le){(0,u.Z)(W,le);var re=(0,o.Z)(W);function W(){return(0,S.Z)(this,W),re.apply(this,arguments)}return(0,t.Z)(W,[{key:"flush",value:function(be){this._active=!0;var z=this._scheduled;this._scheduled=void 0;var Q,d=this.actions;be=be||d.shift();do{if(Q=be.execute(be.state,be.delay))break}while((be=d[0])&&be.id===z&&d.shift());if(this._active=!1,Q){for(;(be=d[0])&&be.id===z&&d.shift();)be.unsubscribe();throw Q}}}]),W}(n(41010).v),L=new I(D)},96936:function(Ce,E,n){"use strict";n.d(E,{z:function(){return e},P:function(){return c}});var S=n(75417),e=new(n(41010).v)(S.o),c=e},67654:function(Ce,E,n){"use strict";n.d(E,{l:function(){return S}});var S={now:function(){return(S.delegate||Date).now()},delegate:void 0}},93542:function(Ce,E,n){"use strict";n.d(E,{z:function(){return S}});var S={setTimeout:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}(function(){var t=S.delegate;return((null==t?void 0:t.setTimeout)||setTimeout).apply(void 0,arguments)}),clearTimeout:function(t){function e(c){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}(function(t){var e=S.delegate;return((null==e?void 0:e.clearTimeout)||clearTimeout)(t)}),delegate:void 0}},67321:function(Ce,E,n){"use strict";n.d(E,{h:function(){return t}});var t=function S(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}()},24585:function(Ce,E,n){"use strict";n.d(E,{L:function(){return S}});var S="function"==typeof Symbol&&Symbol.observable||"@@observable"},10420:function(Ce,E,n){"use strict";n.d(E,{jO:function(){return c},yG:function(){return u},_6:function(){return o}});var S=n(92971),t=n(59867);function e(_){return _[_.length-1]}function c(_){return(0,S.m)(e(_))?_.pop():void 0}function u(_){return(0,t.K)(e(_))?_.pop():void 0}function o(_,s){return"number"==typeof e(_)?_.pop():s}},45756:function(Ce,E,n){"use strict";n.d(E,{D:function(){return u}});var S=Array.isArray,t=Object.getPrototypeOf,e=Object.prototype,c=Object.keys;function u(_){if(1===_.length){var s=_[0];if(S(s))return{args:s,keys:null};if(function o(_){return _&&"object"==typeof _&&t(_)===e}(s)){var h=c(s);return{args:h.map(function(b){return s[b]}),keys:h}}}return{args:_,keys:null}}},39663:function(Ce,E,n){"use strict";function S(t,e){if(t){var c=t.indexOf(e);0<=c&&t.splice(c,1)}}n.d(E,{P:function(){return S}})},27543:function(Ce,E,n){"use strict";function S(t){var c=t(function(o){Error.call(o),o.stack=(new Error).stack});return c.prototype=Object.create(Error.prototype),c.prototype.constructor=c,c}n.d(E,{d:function(){return S}})},11054:function(Ce,E,n){"use strict";function S(t,e){return t.reduce(function(c,u,o){return c[u]=e[o],c},{})}n.d(E,{n:function(){return S}})},12309:function(Ce,E,n){"use strict";n.d(E,{x:function(){return e},O:function(){return c}});var S=n(99057),t=null;function e(u){if(S.v.useDeprecatedSynchronousErrorHandling){var o=!t;if(o&&(t={errorThrown:!1,error:null}),u(),o){var _=t;if(t=null,_.errorThrown)throw _.error}}else u()}function c(u){S.v.useDeprecatedSynchronousErrorHandling&&t&&(t.errorThrown=!0,t.error=u)}},1817:function(Ce,E,n){"use strict";function S(t,e,c){var u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],_=e.schedule(function(){c(),o?t.add(this.schedule(null,u)):this.unsubscribe()},u);if(t.add(_),!o)return _}n.d(E,{f:function(){return S}})},89173:function(Ce,E,n){"use strict";function S(t){return t}n.d(E,{y:function(){return S}})},99806:function(Ce,E,n){"use strict";n.d(E,{z:function(){return S}});var S=function(e){return e&&"number"==typeof e.length&&"function"!=typeof e}},80470:function(Ce,E,n){"use strict";n.d(E,{D:function(){return t}});var S=n(92971);function t(e){return Symbol.asyncIterator&&(0,S.m)(null==e?void 0:e[Symbol.asyncIterator])}},97885:function(Ce,E,n){"use strict";function S(t){return t instanceof Date&&!isNaN(t)}n.d(E,{q:function(){return S}})},92971:function(Ce,E,n){"use strict";function S(t){return"function"==typeof t}n.d(E,{m:function(){return S}})},21331:function(Ce,E,n){"use strict";n.d(E,{c:function(){return e}});var S=n(24585),t=n(92971);function e(c){return(0,t.m)(c[S.L])}},23433:function(Ce,E,n){"use strict";n.d(E,{T:function(){return e}});var S=n(67321),t=n(92971);function e(c){return(0,t.m)(null==c?void 0:c[S.h])}},14437:function(Ce,E,n){"use strict";n.d(E,{b:function(){return e}});var S=n(83336),t=n(92971);function e(c){return!!c&&(c instanceof S.y||(0,t.m)(c.lift)&&(0,t.m)(c.subscribe))}},79548:function(Ce,E,n){"use strict";n.d(E,{t:function(){return t}});var S=n(92971);function t(e){return(0,S.m)(null==e?void 0:e.then)}},20181:function(Ce,E,n){"use strict";n.d(E,{Q:function(){return c},L:function(){return u}});var S=n(49126),t=n(92971);function e(){e=function(){return o};var o={},_=Object.prototype,s=_.hasOwnProperty,h=Object.defineProperty||function(ce,_e,Me){ce[_e]=Me.value},b="function"==typeof Symbol?Symbol:{},T=b.iterator||"@@iterator",y=b.asyncIterator||"@@asyncIterator",Y=b.toStringTag||"@@toStringTag";function q(ce,_e,Me){return Object.defineProperty(ce,_e,{value:Me,enumerable:!0,configurable:!0,writable:!0}),ce[_e]}try{q({},"")}catch(ce){q=function(Me,ve,ue){return Me[ve]=ue}}function B(ce,_e,Me,ve){var lt=Object.create((_e&&_e.prototype instanceof N?_e:N).prototype),Xe=new te(ve||[]);return h(lt,"_invoke",{value:z(ce,Me,Xe)}),lt}function k(ce,_e,Me){try{return{type:"normal",arg:ce.call(_e,Me)}}catch(ve){return{type:"throw",arg:ve}}}o.wrap=B;var D={};function N(){}function I(){}function L(){}var j={};q(j,T,function(){return this});var le=Object.getPrototypeOf,re=le&&le(le(K([])));re&&re!==_&&s.call(re,T)&&(j=re);var W=L.prototype=N.prototype=Object.create(j);function $(ce){["next","throw","return"].forEach(function(_e){q(ce,_e,function(Me){return this._invoke(_e,Me)})})}function be(ce,_e){function Me(ue,lt,Xe,mt){var wt=k(ce[ue],ce,lt);if("throw"!==wt.type){var Pt=wt.arg,Pe=Pt.value;return Pe&&"object"==typeof Pe&&s.call(Pe,"__await")?_e.resolve(Pe.__await).then(function(ze){Me("next",ze,Xe,mt)},function(ze){Me("throw",ze,Xe,mt)}):_e.resolve(Pe).then(function(ze){Pt.value=ze,Xe(Pt)},function(ze){return Me("throw",ze,Xe,mt)})}mt(wt.arg)}var ve;h(this,"_invoke",{value:function(lt,Xe){function mt(){return new _e(function(wt,Pt){Me(lt,Xe,wt,Pt)})}return ve=ve?ve.then(mt,mt):mt()}})}function z(ce,_e,Me){var ve="suspendedStart";return function(ue,lt){if("executing"===ve)throw new Error("Generator is already running");if("completed"===ve){if("throw"===ue)throw lt;return{value:void 0,done:!0}}for(Me.method=ue,Me.arg=lt;;){var Xe=Me.delegate;if(Xe){var mt=d(Xe,Me);if(mt){if(mt===D)continue;return mt}}if("next"===Me.method)Me.sent=Me._sent=Me.arg;else if("throw"===Me.method){if("suspendedStart"===ve)throw ve="completed",Me.arg;Me.dispatchException(Me.arg)}else"return"===Me.method&&Me.abrupt("return",Me.arg);ve="executing";var wt=k(ce,_e,Me);if("normal"===wt.type){if(ve=Me.done?"completed":"suspendedYield",wt.arg===D)continue;return{value:wt.arg,done:Me.done}}"throw"===wt.type&&(ve="completed",Me.method="throw",Me.arg=wt.arg)}}}function d(ce,_e){var Me=ce.iterator[_e.method];if(void 0===Me){if(_e.delegate=null,"throw"===_e.method){if(ce.iterator.return&&(_e.method="return",_e.arg=void 0,d(ce,_e),"throw"===_e.method))return D;_e.method="throw",_e.arg=new TypeError("The iterator does not provide a 'throw' method")}return D}var ve=k(Me,ce.iterator,_e.arg);if("throw"===ve.type)return _e.method="throw",_e.arg=ve.arg,_e.delegate=null,D;var ue=ve.arg;return ue?ue.done?(_e[ce.resultName]=ue.value,_e.next=ce.nextLoc,"return"!==_e.method&&(_e.method="next",_e.arg=void 0),_e.delegate=null,D):ue:(_e.method="throw",_e.arg=new TypeError("iterator result is not an object"),_e.delegate=null,D)}function Q(ce){var _e={tryLoc:ce[0]};1 in ce&&(_e.catchLoc=ce[1]),2 in ce&&(_e.finallyLoc=ce[2],_e.afterLoc=ce[3]),this.tryEntries.push(_e)}function J(ce){var _e=ce.completion||{};_e.type="normal",delete _e.arg,ce.completion=_e}function te(ce){this.tryEntries=[{tryLoc:"root"}],ce.forEach(Q,this),this.reset(!0)}function K(ce){if(ce){var _e=ce[T];if(_e)return _e.call(ce);if("function"==typeof ce.next)return ce;if(!isNaN(ce.length)){var Me=-1,ve=function ue(){for(;++Me=0;--ue){var lt=this.tryEntries[ue],Xe=lt.completion;if("root"===lt.tryLoc)return ve("end");if(lt.tryLoc<=this.prev){var mt=s.call(lt,"catchLoc"),wt=s.call(lt,"finallyLoc");if(mt&&wt){if(this.prev=0;--ve){var ue=this.tryEntries[ve];if(ue.tryLoc<=this.prev&&s.call(ue,"finallyLoc")&&this.prev=0;--Me){var ve=this.tryEntries[Me];if(ve.finallyLoc===_e)return this.complete(ve.completion,ve.afterLoc),J(ve),D}},catch:function(_e){for(var Me=this.tryEntries.length-1;Me>=0;--Me){var ve=this.tryEntries[Me];if(ve.tryLoc===_e){var ue=ve.completion;if("throw"===ue.type){var lt=ue.arg;J(ve)}return lt}}throw new Error("illegal catch attempt")},delegateYield:function(_e,Me,ve){return this.delegate={iterator:K(_e),resultName:Me,nextLoc:ve},"next"===this.method&&(this.arg=void 0),D}},o}function c(o){return(0,S.FC)(this,arguments,e().mark(function _(){var s,h,b;return e().wrap(function(Y){for(;;)switch(Y.prev=Y.next){case 0:s=o.getReader(),Y.prev=1;case 2:return Y.next=5,(0,S.qq)(s.read());case 5:if(b=(h=Y.sent).value,!h.done){Y.next=12;break}return Y.next=11,(0,S.qq)(void 0);case 11:return Y.abrupt("return",Y.sent);case 12:return Y.next=14,(0,S.qq)(b);case 14:return Y.next=16,Y.sent;case 16:Y.next=2;break;case 18:return Y.prev=18,s.releaseLock(),Y.finish(18);case 21:case"end":return Y.stop()}},_,null,[[1,,18,21]])}))}function u(o){return(0,t.m)(null==o?void 0:o.getReader)}},59867:function(Ce,E,n){"use strict";n.d(E,{K:function(){return t}});var S=n(92971);function t(e){return e&&(0,S.m)(e.schedule)}},41944:function(Ce,E,n){"use strict";n.d(E,{A:function(){return t},e:function(){return e}});var S=n(92971);function t(c){return(0,S.m)(null==c?void 0:c.lift)}function e(c){return function(u){if(t(u))return u.lift(function(o){try{return c(o,this)}catch(_){this.error(_)}});throw new TypeError("Unable to lift unknown Observable type")}}},58385:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return u}});var S=n(71340),t=n(50635),e=Array.isArray;function u(o){return(0,t.U)(function(_){return function c(o,_){return e(_)?o.apply(void 0,(0,S.Z)(_)):o(_)}(o,_)})}},99635:function(Ce,E,n){"use strict";function S(){}n.d(E,{Z:function(){return S}})},84709:function(Ce,E,n){"use strict";n.d(E,{h:function(){return e}});var S=n(99057),t=n(93542);function e(c){t.z.setTimeout(function(){var u=S.v.onUnhandledError;if(!u)throw c;u(c)})}},27785:function(Ce,E,n){"use strict";function S(t){return new TypeError("You provided ".concat(null!==t&&"object"==typeof t?"an invalid object":"'".concat(t,"'")," where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable."))}n.d(E,{z:function(){return S}})},89948:function(Ce,E){!function(n){var S={not_string:/[^s]/,number:/[diefg]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijosuxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[\+\-]/};function t(){var o=arguments[0],_=t.cache;return _[o]&&_.hasOwnProperty(o)||(_[o]=t.parse(o)),t.format.call(null,_[o],arguments)}function c(o){return Object.prototype.toString.call(o).slice(8,-1).toLowerCase()}function u(o,_){return Array(_+1).join(o)}t.format=function(o,_){var T,Y,q,B,k,D,N,s=1,h=o.length,b="",y=[],I=!0,L="";for(Y=0;Y=0),B[8]){case"b":T=T.toString(2);break;case"c":T=String.fromCharCode(T);break;case"d":case"i":T=parseInt(T,10);break;case"j":T=JSON.stringify(T,null,B[6]?parseInt(B[6]):0);break;case"e":T=B[7]?T.toExponential(B[7]):T.toExponential();break;case"f":T=B[7]?parseFloat(T).toFixed(B[7]):parseFloat(T);break;case"g":T=B[7]?parseFloat(T).toPrecision(B[7]):parseFloat(T);break;case"o":T=T.toString(8);break;case"s":T=(T=String(T))&&B[7]?T.substring(0,B[7]):T;break;case"u":T>>>=0;break;case"x":T=T.toString(16);break;case"X":T=T.toString(16).toUpperCase()}S.json.test(B[8])?y[y.length]=T:(!S.number.test(B[8])||I&&!B[3]?L="":(L=I?"+":"-",T=T.toString().replace(S.sign,"")),D=B[4]?"0"===B[4]?"0":B[4].charAt(1):" ",N=B[6]-(L+T).length,k=B[6]&&N>0?u(D,N):"",y[y.length]=B[5]?L+T+k:"0"===D?L+k+T:k+L+T)}return y.join("")},t.cache={},t.parse=function(o){for(var _=o,s=[],h=[],b=0;_;){if(null!==(s=S.text.exec(_)))h[h.length]=s[0];else if(null!==(s=S.modulo.exec(_)))h[h.length]="%";else{if(null===(s=S.placeholder.exec(_)))throw new SyntaxError("[sprintf] unexpected placeholder");if(s[2]){b|=1;var T=[],y=s[2],Y=[];if(null===(Y=S.key.exec(y)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(T[T.length]=Y[1];""!==(y=y.substring(Y[0].length));)if(null!==(Y=S.key_access.exec(y)))T[T.length]=Y[1];else{if(null===(Y=S.index_access.exec(y)))throw new SyntaxError("[sprintf] failed to parse named argument key");T[T.length]=Y[1]}s[2]=T}else b|=2;if(3===b)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");h[h.length]=s}_=_.substring(s[0].length)}return h},E.sprintf=t,E.vsprintf=function(_,s,h){return(h=(s||[]).slice(0)).splice(0,0,_),t.apply(null,h)}}("undefined"==typeof window||window)},65068:function(Ce){Ce.exports=function(n){return n&&"object"==typeof n&&"function"==typeof n.copy&&"function"==typeof n.fill&&"function"==typeof n.readUInt8}},54815:function(Ce,E,n){"use strict";var S=n(9102),t=n(17494),e=n(75709),c=n(37673);function u(Fe){return Fe.call.bind(Fe)}var o="undefined"!=typeof BigInt,_="undefined"!=typeof Symbol,s=u(Object.prototype.toString),h=u(Number.prototype.valueOf),b=u(String.prototype.valueOf),T=u(Boolean.prototype.valueOf);if(o)var y=u(BigInt.prototype.valueOf);if(_)var Y=u(Symbol.prototype.valueOf);function q(Fe,et){if("object"!=typeof Fe)return!1;try{return et(Fe),!0}catch(Ht){return!1}}function d(Fe){return"[object Map]"===s(Fe)}function J(Fe){return"[object Set]"===s(Fe)}function K(Fe){return"[object WeakMap]"===s(Fe)}function ce(Fe){return"[object WeakSet]"===s(Fe)}function Me(Fe){return"[object ArrayBuffer]"===s(Fe)}function ve(Fe){return"undefined"!=typeof ArrayBuffer&&(Me.working?Me(Fe):Fe instanceof ArrayBuffer)}function ue(Fe){return"[object DataView]"===s(Fe)}function lt(Fe){return"undefined"!=typeof DataView&&(ue.working?ue(Fe):Fe instanceof DataView)}E.isArgumentsObject=S,E.isGeneratorFunction=t,E.isTypedArray=c,E.isPromise=function B(Fe){return"undefined"!=typeof Promise&&Fe instanceof Promise||null!==Fe&&"object"==typeof Fe&&"function"==typeof Fe.then&&"function"==typeof Fe.catch},E.isArrayBufferView=function k(Fe){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(Fe):c(Fe)||lt(Fe)},E.isUint8Array=function D(Fe){return"Uint8Array"===e(Fe)},E.isUint8ClampedArray=function N(Fe){return"Uint8ClampedArray"===e(Fe)},E.isUint16Array=function I(Fe){return"Uint16Array"===e(Fe)},E.isUint32Array=function L(Fe){return"Uint32Array"===e(Fe)},E.isInt8Array=function j(Fe){return"Int8Array"===e(Fe)},E.isInt16Array=function le(Fe){return"Int16Array"===e(Fe)},E.isInt32Array=function re(Fe){return"Int32Array"===e(Fe)},E.isFloat32Array=function W(Fe){return"Float32Array"===e(Fe)},E.isFloat64Array=function $(Fe){return"Float64Array"===e(Fe)},E.isBigInt64Array=function be(Fe){return"BigInt64Array"===e(Fe)},E.isBigUint64Array=function z(Fe){return"BigUint64Array"===e(Fe)},d.working="undefined"!=typeof Map&&d(new Map),E.isMap=function Q(Fe){return"undefined"!=typeof Map&&(d.working?d(Fe):Fe instanceof Map)},J.working="undefined"!=typeof Set&&J(new Set),E.isSet=function te(Fe){return"undefined"!=typeof Set&&(J.working?J(Fe):Fe instanceof Set)},K.working="undefined"!=typeof WeakMap&&K(new WeakMap),E.isWeakMap=function G(Fe){return"undefined"!=typeof WeakMap&&(K.working?K(Fe):Fe instanceof WeakMap)},ce.working="undefined"!=typeof WeakSet&&ce(new WeakSet),E.isWeakSet=function _e(Fe){return ce(Fe)},Me.working="undefined"!=typeof ArrayBuffer&&Me(new ArrayBuffer),E.isArrayBuffer=ve,ue.working="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView&&ue(new DataView(new ArrayBuffer(1),0,1)),E.isDataView=lt;var Xe="undefined"!=typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function mt(Fe){return"[object SharedArrayBuffer]"===s(Fe)}function wt(Fe){return void 0!==Xe&&(void 0===mt.working&&(mt.working=mt(new Xe)),mt.working?mt(Fe):Fe instanceof Xe)}function Ee(Fe){return q(Fe,h)}function st(Fe){return q(Fe,b)}function nt(Fe){return q(Fe,T)}function at(Fe){return o&&q(Fe,y)}function We(Fe){return _&&q(Fe,Y)}E.isSharedArrayBuffer=wt,E.isAsyncFunction=function Pt(Fe){return"[object AsyncFunction]"===s(Fe)},E.isMapIterator=function Pe(Fe){return"[object Map Iterator]"===s(Fe)},E.isSetIterator=function ze(Fe){return"[object Set Iterator]"===s(Fe)},E.isGeneratorObject=function ft(Fe){return"[object Generator]"===s(Fe)},E.isWebAssemblyCompiledModule=function ct(Fe){return"[object WebAssembly.Module]"===s(Fe)},E.isNumberObject=Ee,E.isStringObject=st,E.isBooleanObject=nt,E.isBigIntObject=at,E.isSymbolObject=We,E.isBoxedPrimitive=function xe(Fe){return Ee(Fe)||st(Fe)||nt(Fe)||at(Fe)||We(Fe)},E.isAnyArrayBuffer=function ut(Fe){return"undefined"!=typeof Uint8Array&&(ve(Fe)||wt(Fe))},["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Fe){Object.defineProperty(E,Fe,{enumerable:!1,value:function(){throw new Error(Fe+" is not supported in userland")}})})},50074:function(Ce,E,n){var S=Object.getOwnPropertyDescriptors||function(lt){for(var Xe=Object.keys(lt),mt={},wt=0;wt=wt)return ze;switch(ze){case"%s":return String(mt[Xe++]);case"%d":return Number(mt[Xe++]);case"%j":try{return JSON.stringify(mt[Xe++])}catch(ft){return"[Circular]"}default:return ze}}),Pe=mt[Xe];Xe=3&&(Xe.depth=arguments[2]),arguments.length>=4&&(Xe.colors=arguments[3]),D(lt)?Xe.showHidden=lt:lt&&E._extend(Xe,lt),re(Xe.showHidden)&&(Xe.showHidden=!1),re(Xe.depth)&&(Xe.depth=2),re(Xe.colors)&&(Xe.colors=!1),re(Xe.customInspect)&&(Xe.customInspect=!0),Xe.colors&&(Xe.stylize=_),b(Xe,ue,Xe.depth)}function _(ue,lt){var Xe=o.styles[lt];return Xe?"\x1b["+o.colors[Xe][0]+"m"+ue+"\x1b["+o.colors[Xe][1]+"m":ue}function s(ue,lt){return ue}function b(ue,lt,Xe){if(ue.customInspect&<&&d(lt.inspect)&<.inspect!==E.inspect&&(!lt.constructor||lt.constructor.prototype!==lt)){var mt=lt.inspect(Xe,ue);return j(mt)||(mt=b(ue,mt,Xe)),mt}var wt=function T(ue,lt){if(re(lt))return ue.stylize("undefined","undefined");if(j(lt)){var Xe="'"+JSON.stringify(lt).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return ue.stylize(Xe,"string")}return L(lt)?ue.stylize(""+lt,"number"):D(lt)?ue.stylize(""+lt,"boolean"):N(lt)?ue.stylize("null","null"):void 0}(ue,lt);if(wt)return wt;var Pt=Object.keys(lt),Pe=function h(ue){var lt={};return ue.forEach(function(Xe,mt){lt[Xe]=!0}),lt}(Pt);if(ue.showHidden&&(Pt=Object.getOwnPropertyNames(lt)),z(lt)&&(Pt.indexOf("message")>=0||Pt.indexOf("description")>=0))return y(lt);if(0===Pt.length){if(d(lt))return ue.stylize("[Function"+(lt.name?": "+lt.name:"")+"]","special");if(W(lt))return ue.stylize(RegExp.prototype.toString.call(lt),"regexp");if(be(lt))return ue.stylize(Date.prototype.toString.call(lt),"date");if(z(lt))return y(lt)}var nt,ft="",ct=!1,Ee=["{","}"];return k(lt)&&(ct=!0,Ee=["[","]"]),d(lt)&&(ft=" [Function"+(lt.name?": "+lt.name:"")+"]"),W(lt)&&(ft=" "+RegExp.prototype.toString.call(lt)),be(lt)&&(ft=" "+Date.prototype.toUTCString.call(lt)),z(lt)&&(ft=" "+y(lt)),0!==Pt.length||ct&&0!=lt.length?Xe<0?W(lt)?ue.stylize(RegExp.prototype.toString.call(lt),"regexp"):ue.stylize("[Object]","special"):(ue.seen.push(lt),nt=ct?function Y(ue,lt,Xe,mt,wt){for(var Pt=[],Pe=0,ze=lt.length;Pe60?Xe[0]+(""===lt?"":lt+"\n ")+" "+ue.join(",\n ")+" "+Xe[1]:Xe[0]+lt+" "+ue.join(", ")+" "+Xe[1]}(nt,ft,Ee)):Ee[0]+ft+Ee[1]}function y(ue){return"["+Error.prototype.toString.call(ue)+"]"}function q(ue,lt,Xe,mt,wt,Pt){var Pe,ze,ft;if((ft=Object.getOwnPropertyDescriptor(lt,wt)||{value:lt[wt]}).get?ze=ue.stylize(ft.set?"[Getter/Setter]":"[Getter]","special"):ft.set&&(ze=ue.stylize("[Setter]","special")),ce(mt,wt)||(Pe="["+wt+"]"),ze||(ue.seen.indexOf(ft.value)<0?(ze=N(Xe)?b(ue,ft.value,null):b(ue,ft.value,Xe-1)).indexOf("\n")>-1&&(ze=Pt?ze.split("\n").map(function(ct){return" "+ct}).join("\n").substr(2):"\n"+ze.split("\n").map(function(ct){return" "+ct}).join("\n")):ze=ue.stylize("[Circular]","special")),re(Pe)){if(Pt&&wt.match(/^\d+$/))return ze;(Pe=JSON.stringify(""+wt)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(Pe=Pe.substr(1,Pe.length-2),Pe=ue.stylize(Pe,"name")):(Pe=Pe.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),Pe=ue.stylize(Pe,"string"))}return Pe+": "+ze}function k(ue){return Array.isArray(ue)}function D(ue){return"boolean"==typeof ue}function N(ue){return null===ue}function L(ue){return"number"==typeof ue}function j(ue){return"string"==typeof ue}function re(ue){return void 0===ue}function W(ue){return $(ue)&&"[object RegExp]"===J(ue)}function $(ue){return"object"==typeof ue&&null!==ue}function be(ue){return $(ue)&&"[object Date]"===J(ue)}function z(ue){return $(ue)&&("[object Error]"===J(ue)||ue instanceof Error)}function d(ue){return"function"==typeof ue}function J(ue){return Object.prototype.toString.call(ue)}function te(ue){return ue<10?"0"+ue.toString(10):ue.toString(10)}E.debuglog=function(ue){if(ue=ue.toUpperCase(),!e[ue])if(c.test(ue)){var lt=process.pid;e[ue]=function(){var Xe=E.format.apply(E,arguments);console.error("%s %d: %s",ue,lt,Xe)}}else e[ue]=function(){};return e[ue]},E.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},E.types=n(54815),E.isArray=k,E.isBoolean=D,E.isNull=N,E.isNullOrUndefined=function I(ue){return null==ue},E.isNumber=L,E.isString=j,E.isSymbol=function le(ue){return"symbol"==typeof ue},E.isUndefined=re,E.isRegExp=W,E.types.isRegExp=W,E.isObject=$,E.isDate=be,E.types.isDate=be,E.isError=z,E.types.isNativeError=z,E.isFunction=d,E.isPrimitive=function Q(ue){return null===ue||"boolean"==typeof ue||"number"==typeof ue||"string"==typeof ue||"symbol"==typeof ue||void 0===ue},E.isBuffer=n(65068);var K=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function G(){var ue=new Date,lt=[te(ue.getHours()),te(ue.getMinutes()),te(ue.getSeconds())].join(":");return[ue.getDate(),K[ue.getMonth()],lt].join(" ")}function ce(ue,lt){return Object.prototype.hasOwnProperty.call(ue,lt)}E.log=function(){console.log("%s - %s",G(),E.format.apply(E,arguments))},E.inherits=n(55035),E._extend=function(ue,lt){if(!lt||!$(lt))return ue;for(var Xe=Object.keys(lt),mt=Xe.length;mt--;)ue[Xe[mt]]=lt[Xe[mt]];return ue};var _e="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function Me(ue,lt){if(!ue){var Xe=new Error("Promise was rejected with a falsy value");Xe.reason=ue,ue=Xe}return lt(ue)}E.promisify=function(lt){if("function"!=typeof lt)throw new TypeError('The "original" argument must be of type Function');if(_e&<[_e]){var Xe;if("function"!=typeof(Xe=lt[_e]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Xe,_e,{value:Xe,enumerable:!1,writable:!1,configurable:!0}),Xe}function Xe(){for(var mt,wt,Pt=new Promise(function(ft,ct){mt=ft,wt=ct}),Pe=[],ze=0;ze=0};var S=e(n(48117)),t=e(n(77920));function e(u){return u&&u.__esModule?u:{default:u}}Ce.exports=E.default,Ce.exports.default=E.default},10942:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u){return(0,S.default)(c),c===u};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},49328:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c),c.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">").replace(/\//g,"/").replace(/\\/g,"\").replace(/`/g,"`")};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},65875:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:String(new Date);(0,S.default)(u);var _=(0,t.default)(o),s=(0,t.default)(u);return!!(s&&_&&s>_)};var S=e(n(48117)),t=e(n(65664));function e(u){return u&&u.__esModule?u:{default:u}}Ce.exports=E.default,Ce.exports.default=E.default},90886:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(o){var _=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"en-US";if((0,S.default)(o),_ in t.alpha)return t.alpha[_].test(o);throw new Error("Invalid locale '".concat(_,"'"))},E.locales=void 0;var S=function e(o){return o&&o.__esModule?o:{default:o}}(n(48117)),t=n(28270),u=Object.keys(t.alpha);E.locales=u},80426:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(o){var _=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"en-US";if((0,S.default)(o),_ in t.alphanumeric)return t.alphanumeric[_].test(o);throw new Error("Invalid locale '".concat(_,"'"))},E.locales=void 0;var S=function e(o){return o&&o.__esModule?o:{default:o}}(n(48117)),t=n(28270),u=Object.keys(t.alphanumeric);E.locales=u},60099:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^[\x00-\x7F]+$/;Ce.exports=E.default,Ce.exports.default=E.default},71176:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){(0,S.default)(u);var o=u.length;return!!(o>0&&o%8==0&&e.test(u))};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^[A-Z2-7]+=*$/;Ce.exports=E.default,Ce.exports.default=E.default},87061:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){(0,S.default)(u);var o=u.length;if(!o||o%4!=0||e.test(u))return!1;var _=u.indexOf("=");return-1===_||_===o-1||_===o-2&&"="===u[o-1]};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/[^A-Z0-9+\/=]/i;Ce.exports=E.default,Ce.exports.default=E.default},19030:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:String(new Date);(0,S.default)(u);var _=(0,t.default)(o),s=(0,t.default)(u);return!!(s&&_&&s<_)};var S=e(n(48117)),t=e(n(65664));function e(u){return u&&u.__esModule?u:{default:u}}Ce.exports=E.default,Ce.exports.default=E.default},16440:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c),["true","false","1","0"].indexOf(c)>=0};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},81869:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u,o){var _,s;(0,S.default)(u),"object"===e(o)?(_=o.min||0,s=o.max):(_=arguments[1],s=arguments[2]);var h=encodeURI(u).split(/%..|./).length-1;return h>=_&&(void 0===s||h<=s)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117));function e(u){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(_){return typeof _}:function(_){return _&&"function"==typeof Symbol&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _})(u)}Ce.exports=E.default,Ce.exports.default=E.default},67216:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){(0,S.default)(u);var o=u.replace(/[- ]+/g,"");if(!e.test(o))return!1;for(var s,h,b,_=0,T=o.length-1;T>=0;T--)s=o.substring(T,T+1),h=parseInt(s,10),b&&(h*=2)>=10?_+=h%10+1:_+=h,b=!b;return!(_%10!=0||!o)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14})$/;Ce.exports=E.default,Ce.exports.default=E.default},61621:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function o(_,s){return(0,t.default)(_),function c(_){var s="\\d{".concat(_.digits_after_decimal[0],"}");_.digits_after_decimal.forEach(function(D,N){0!==N&&(s="".concat(s,"|\\d{").concat(D,"}"))});var h="(\\".concat(_.symbol.replace(/\./g,"\\."),")").concat(_.require_symbol?"":"?"),b="-?",y="[1-9]\\d{0,2}(\\".concat(_.thousands_separator,"\\d{3})*"),q="(".concat(["0","[1-9]\\d*",y].join("|"),")?"),B="(\\".concat(_.decimal_separator,"(").concat(s,"))").concat(_.require_decimal?"":"?"),k=q+(_.allow_decimal||_.require_decimal?B:"");return _.allow_negatives&&!_.parens_for_negatives&&(_.negative_sign_after_digits?k+=b:_.negative_sign_before_digits&&(k=b+k)),_.allow_negative_sign_placeholder?k="( (?!\\-))?".concat(k):_.allow_space_after_symbol?k=" ?".concat(k):_.allow_space_after_digits&&(k+="( (?!$))?"),_.symbol_after_digits?k+=h:k=h+k,_.allow_negatives&&(_.parens_for_negatives?k="(\\(".concat(k,"\\)|").concat(k,")"):_.negative_sign_before_digits||_.negative_sign_after_digits||(k=b+k)),new RegExp("^(?!-? )(?=.*\\d)".concat(k,"$"))}(s=(0,S.default)(s,u)).test(_)};var S=e(n(3593)),t=e(n(48117));function e(_){return _&&_.__esModule?_:{default:_}}var u={symbol:"$",require_symbol:!1,allow_space_after_symbol:!1,symbol_after_digits:!1,allow_negatives:!0,parens_for_negatives:!1,negative_sign_before_digits:!1,negative_sign_after_digits:!1,allow_negative_sign_placeholder:!1,thousands_separator:",",decimal_separator:".",allow_decimal:!0,require_decimal:!1,digits_after_decimal:[2],allow_space_after_digits:!1};Ce.exports=E.default,Ce.exports.default=E.default},96484:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function o(_){(0,S.default)(_);var s=_.split(",");if(s.length<2)return!1;var h=s.shift().trim().split(";"),b=h.shift();if("data:"!==b.substr(0,5))return!1;var T=b.substr(5);if(""!==T&&!e.test(T))return!1;for(var y=0;y]/.test(re)){if(!le)return!1;if(re.split('"').length!==re.split('\\"').length)return!1}return!0}(W))return!1}else if(le.require_display_name)return!1}if(!le.ignore_max_length&&j.length>254)return!1;var be=j.split("@"),z=be.pop(),d=be.join("@"),Q=z.toLowerCase();if(le.domain_specific_validation&&("gmail.com"===Q||"googlemail.com"===Q)){var J=(d=d.toLowerCase()).split("+")[0];if(!(0,e.default)(J.replace(".",""),{min:6,max:30}))return!1;for(var te=J.split("."),K=0;K$/i,Y=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,q=/^[a-z\d]+$/,B=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,k=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,D=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i;Ce.exports=E.default,Ce.exports.default=E.default},20121:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o,_){return(0,S.default)(o),0===((_=(0,t.default)(_,c)).ignore_whitespace?o.trim().length:o.length)};var S=e(n(48117)),t=e(n(3593));function e(o){return o&&o.__esModule?o:{default:o}}var c={ignore_whitespace:!1};Ce.exports=E.default,Ce.exports.default=E.default},71478:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o,_){(0,S.default)(o),(_=(0,t.default)(_,c)).allow_trailing_dot&&"."===o[o.length-1]&&(o=o.substring(0,o.length-1));for(var s=o.split("."),h=0;h63)return!1;if(_.require_tld){var b=s.pop();if(!s.length||!/^([a-z\u00a1-\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(b)||/[\s\u2002-\u200B\u202F\u205F\u3000\uFEFF\uDB40\uDC20]/.test(b))return!1}for(var T,y=0;y=_.min)&&(!_.hasOwnProperty("max")||h<=_.max)&&(!_.hasOwnProperty("lt")||h<_.lt)&&(!_.hasOwnProperty("gt")||h>_.gt)},E.locales=void 0;var S=function e(o){return o&&o.__esModule?o:{default:o}}(n(48117)),t=n(28270),u=Object.keys(t.decimal);E.locales=u},8190:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)},E.fullWidth=void 0;var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;E.fullWidth=e},89288:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)},E.halfWidth=void 0;var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;E.halfWidth=e},20040:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u,o){return(0,S.default)(u),new RegExp("^[a-f0-9]{".concat(e[o],"}$")).test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e={md5:32,md4:32,sha1:40,sha256:64,sha384:96,sha512:128,ripemd128:32,ripemd160:40,tiger128:32,tiger160:40,tiger192:48,crc32:8,crc32b:8};Ce.exports=E.default,Ce.exports.default=E.default},66461:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^#?([0-9A-F]{3}|[0-9A-F]{6})$/i;Ce.exports=E.default,Ce.exports.default=E.default},62183:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^[0-9A-F]+$/i;Ce.exports=E.default,Ce.exports.default=E.default},95177:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o){var _=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if((0,S.default)(o),!(_=String(_)))return u(o,4)||u(o,6);if("4"===_){if(!e.test(o))return!1;var s=o.split(".").sort(function(q,B){return q-B});return s[3]<=255}if("6"===_){var h=o.split(":"),b=!1,T=u(h[h.length-1],4),y=T?7:8;if(h.length>y)return!1;if("::"===o)return!0;"::"===o.substr(0,2)?(h.shift(),h.shift(),b=!0):"::"===o.substr(o.length-2)&&(h.pop(),h.pop(),b=!0);for(var Y=0;Y0&&Y=1:h.length===y}return!1};var S=function t(o){return o&&o.__esModule?o:{default:o}}(n(48117)),e=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/,c=/^[0-9A-F]{1,4}$/i;Ce.exports=E.default,Ce.exports.default=E.default},35905:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o){(0,S.default)(o);var _=o.split("/");return!(2!==_.length||!c.test(_[1])||_[1].length>1&&_[1].startsWith("0"))&&(0,t.default)(_[0],4)&&_[1]<=32&&_[1]>=0};var S=e(n(48117)),t=e(n(95177));function e(o){return o&&o.__esModule?o:{default:o}}var c=/^\d{1,2}$/;Ce.exports=E.default,Ce.exports.default=E.default},86284:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function o(_){var s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if((0,S.default)(_),!(s=String(s)))return o(_,10)||o(_,13);var T,h=_.replace(/[\s-]+/g,""),b=0;if("10"===s){if(!e.test(h))return!1;for(T=0;T<9;T++)b+=(T+1)*h.charAt(T);if("X"===h.charAt(9)?b+=100:b+=10*h.charAt(9),b%11==0)return!!h}else if("13"===s){if(!c.test(h))return!1;for(T=0;T<12;T++)b+=u[T%2]*h.charAt(T);if(h.charAt(12)-(10-b%10)%10==0)return!!h}return!1};var S=function t(_){return _&&_.__esModule?_:{default:_}}(n(48117)),e=/^(?:[0-9]{9}X|[0-9]{10})$/,c=/^(?:[0-9]{13})$/,u=[1,3];Ce.exports=E.default,Ce.exports.default=E.default},27002:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){if((0,S.default)(u),!e.test(u))return!1;for(var s,h,o=u.replace(/[A-Z]/g,function(y){return parseInt(y,36)}),_=0,b=!0,T=o.length-2;T>=0;T--)s=o.substring(T,T+1),h=parseInt(s,10),b&&(h*=2)>=10?_+=h+1:_+=h,b=!b;return parseInt(u.substr(u.length-1),10)===(1e4-_)%10};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^[A-Z]{2}[0-9A-Z]{9}[0-9]$/;Ce.exports=E.default,Ce.exports.default=E.default},97593:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o){return(0,S.default)(o),(0,t.default)(c,o.toUpperCase())};var S=e(n(48117)),t=e(n(41985));function e(o){return o&&o.__esModule?o:{default:o}}var c=["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"];Ce.exports=E.default,Ce.exports.default=E.default},43289:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o){return(0,S.default)(o),(0,t.default)(c,o.toUpperCase())};var S=e(n(48117)),t=e(n(41985));function e(o){return o&&o.__esModule?o:{default:o}}var c=["AFG","ALA","ALB","DZA","ASM","AND","AGO","AIA","ATA","ATG","ARG","ARM","ABW","AUS","AUT","AZE","BHS","BHR","BGD","BRB","BLR","BEL","BLZ","BEN","BMU","BTN","BOL","BES","BIH","BWA","BVT","BRA","IOT","BRN","BGR","BFA","BDI","KHM","CMR","CAN","CPV","CYM","CAF","TCD","CHL","CHN","CXR","CCK","COL","COM","COG","COD","COK","CRI","CIV","HRV","CUB","CUW","CYP","CZE","DNK","DJI","DMA","DOM","ECU","EGY","SLV","GNQ","ERI","EST","ETH","FLK","FRO","FJI","FIN","FRA","GUF","PYF","ATF","GAB","GMB","GEO","DEU","GHA","GIB","GRC","GRL","GRD","GLP","GUM","GTM","GGY","GIN","GNB","GUY","HTI","HMD","VAT","HND","HKG","HUN","ISL","IND","IDN","IRN","IRQ","IRL","IMN","ISR","ITA","JAM","JPN","JEY","JOR","KAZ","KEN","KIR","PRK","KOR","KWT","KGZ","LAO","LVA","LBN","LSO","LBR","LBY","LIE","LTU","LUX","MAC","MKD","MDG","MWI","MYS","MDV","MLI","MLT","MHL","MTQ","MRT","MUS","MYT","MEX","FSM","MDA","MCO","MNG","MNE","MSR","MAR","MOZ","MMR","NAM","NRU","NPL","NLD","NCL","NZL","NIC","NER","NGA","NIU","NFK","MNP","NOR","OMN","PAK","PLW","PSE","PAN","PNG","PRY","PER","PHL","PCN","POL","PRT","PRI","QAT","REU","ROU","RUS","RWA","BLM","SHN","KNA","LCA","MAF","SPM","VCT","WSM","SMR","STP","SAU","SEN","SRB","SYC","SLE","SGP","SXM","SVK","SVN","SLB","SOM","ZAF","SGS","SSD","ESP","LKA","SDN","SUR","SJM","SWZ","SWE","CHE","SYR","TWN","TJK","TZA","THA","TLS","TGO","TKL","TON","TTO","TUN","TUR","TKM","TCA","TUV","UGA","UKR","ARE","GBR","USA","UMI","URY","UZB","VUT","VEN","VNM","VGB","VIR","WLF","ESH","YEM","ZMB","ZWE"];Ce.exports=E.default,Ce.exports.default=E.default},98253:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o,_){(0,S.default)(o);var s=e.test(o);return _&&s&&_.strict?function(_){var s=_.match(/^(\d{4})-?(\d{3})([ T]{1}\.*|$)/);if(s){var h=Number(s[1]),b=Number(s[2]);return h%4==0&&h%100!=0||h%400==0?b<=366:b<=365}var T=_.match(/(\d{4})-?(\d{0,2})-?(\d*)/).map(Number),y=T[1],Y=T[2],q=T[3],B=Y&&"0".concat(Y).slice(-2),k=q&&"0".concat(q).slice(-2),D=new Date("".concat(y,"-").concat(B||"01","-").concat(k||"01"));return!Y||!q||D.getUTCFullYear()===y&&D.getUTCMonth()+1===Y&&D.getUTCDate()===q}(o):s};var S=function t(o){return o&&o.__esModule?o:{default:o}}(n(48117)),e=/^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;Ce.exports=E.default,Ce.exports.default=E.default},32253:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^[A-Z]{2}[0-9A-Z]{3}\d{2}\d{5}$/;Ce.exports=E.default,Ce.exports.default=E.default},87950:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,S.default)(u);var _=e;if(_=o.require_hyphen?_.replace("?",""):_,!(_=o.case_sensitive?new RegExp(_):new RegExp(_,"i")).test(u))return!1;for(var s=u.replace("-","").toUpperCase(),h=0,b=0;b9?T-9:T;return b%10==0},"zh-TW":function(o){var _={A:10,B:11,C:12,D:13,E:14,F:15,G:16,H:17,I:34,J:18,K:19,L:20,M:21,N:22,O:35,P:23,Q:24,R:25,S:26,T:27,U:28,V:29,W:32,X:30,Y:31,Z:33},s=o.trim().toUpperCase();return!!/^[A-Z][0-9]{9}$/.test(s)&&Array.from(s).reduce(function(h,b,T){if(0===T){var y=_[b];return y%10*9+Math.floor(y/10)}return 9===T?(10-h%10-Number(b))%10==0:h+Number(b)*(9-T)},0)}};Ce.exports=E.default,Ce.exports.default=E.default},85632:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o,_){var s;if((0,S.default)(o),"[object Array]"===Object.prototype.toString.call(_)){var h=[];for(s in _)({}).hasOwnProperty.call(_,s)&&(h[s]=(0,t.default)(_[s]));return h.indexOf(o)>=0}return"object"===c(_)?_.hasOwnProperty(o):!(!_||"function"!=typeof _.indexOf)&&_.indexOf(o)>=0};var S=e(n(48117)),t=e(n(77920));function e(o){return o&&o.__esModule?o:{default:o}}function c(o){return(c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(s){return typeof s}:function(s){return s&&"function"==typeof Symbol&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s})(o)}Ce.exports=E.default,Ce.exports.default=E.default},39444:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o,_){(0,S.default)(o);var s=(_=_||{}).hasOwnProperty("allow_leading_zeroes")&&!_.allow_leading_zeroes?e:c,h=!_.hasOwnProperty("min")||o>=_.min,b=!_.hasOwnProperty("max")||o<=_.max,T=!_.hasOwnProperty("lt")||o<_.lt,y=!_.hasOwnProperty("gt")||o>_.gt;return s.test(o)&&h&&b&&T&&y};var S=function t(o){return o&&o.__esModule?o:{default:o}}(n(48117)),e=/^(?:[-+]?(?:0|[1-9][0-9]*))$/,c=/^[-+]?[0-9]+$/;Ce.exports=E.default,Ce.exports.default=E.default},20796:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){(0,S.default)(u);try{var o=JSON.parse(u);return!!o&&"object"===e(o)}catch(_){}return!1};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117));function e(u){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(_){return typeof _}:function(_){return _&&"function"==typeof Symbol&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _})(u)}Ce.exports=E.default,Ce.exports.default=E.default},22447:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^([A-Za-z0-9\-_~+\/]+[=]{0,2})\.([A-Za-z0-9\-_~+\/]+[=]{0,2})(?:\.([A-Za-z0-9\-_~+\/]+[=]{0,2}))?$/;Ce.exports=E.default,Ce.exports.default=E.default},21701:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o){if((0,S.default)(o),!o.includes(","))return!1;var _=o.split(",");return e.test(_[0])&&c.test(_[1])};var S=function t(o){return o&&o.__esModule?o:{default:o}}(n(48117)),e=/^\(?[+-]?(90(\.0+)?|[1-8]?\d(\.\d+)?)$/,c=/^\s?[+-]?(180(\.0+)?|1[0-7]\d(\.\d+)?|\d{1,2}(\.\d+)?)\)?$/;Ce.exports=E.default,Ce.exports.default=E.default},87881:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u,o){var _,s;(0,S.default)(u),"object"===e(o)?(_=o.min||0,s=o.max):(_=arguments[1],s=arguments[2]);var h=u.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g)||[],b=u.length-h.length;return b>=_&&(void 0===s||b<=s)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117));function e(u){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(_){return typeof _}:function(_){return _&&"function"==typeof Symbol&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _})(u)}Ce.exports=E.default,Ce.exports.default=E.default},44505:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c),c===c.toLowerCase()};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},9843:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o,_){return(0,S.default)(o),_&&_.no_colons?c.test(o):e.test(o)};var S=function t(o){return o&&o.__esModule?o:{default:o}}(n(48117)),e=/^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$/,c=/^([0-9a-fA-F]){12}$/;Ce.exports=E.default,Ce.exports.default=E.default},47543:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^[a-f0-9]{32}$/;Ce.exports=E.default,Ce.exports.default=E.default},37121:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u.trim())};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/^magnet:\?xt=urn:[a-z0-9]+:[a-z0-9]{32,40}&dn=.+&tr=.+$/i;Ce.exports=E.default,Ce.exports.default=E.default},58281:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function o(_){return(0,S.default)(_),e.test(_)||c.test(_)||u.test(_)};var S=function t(_){return _&&_.__esModule?_:{default:_}}(n(48117)),e=/^(application|audio|font|image|message|model|multipart|text|video)\/[a-zA-Z0-9\.\-\+]{1,100}$/i,c=/^text\/[a-zA-Z0-9\.\-\+]{1,100};\s?charset=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?$/i,u=/^multipart\/[a-zA-Z0-9\.\-\+]{1,100}(;\s?(boundary|charset)=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?){0,2}$/i;Ce.exports=E.default,Ce.exports.default=E.default},51943:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(o,_,s){if((0,S.default)(o),s&&s.strictMode&&!o.startsWith("+"))return!1;if(Array.isArray(_))return _.some(function(T){return!(!e.hasOwnProperty(T)||!e[T].test(o))});if(_ in e)return e[_].test(o);if(!_||"any"===_){for(var h in e)if(e.hasOwnProperty(h)&&e[h].test(o))return!0;return!1}throw new Error("Invalid locale '".concat(_,"'"))},E.locales=void 0;var S=function t(o){return o&&o.__esModule?o:{default:o}}(n(48117)),e={"ar-AE":/^((\+?971)|0)?5[024568]\d{7}$/,"ar-BH":/^(\+?973)?(3|6)\d{7}$/,"ar-DZ":/^(\+?213|0)(5|6|7)\d{8}$/,"ar-EG":/^((\+?20)|0)?1[0125]\d{8}$/,"ar-IQ":/^(\+?964|0)?7[0-9]\d{8}$/,"ar-JO":/^(\+?962|0)?7[789]\d{7}$/,"ar-KW":/^(\+?965)[569]\d{7}$/,"ar-SA":/^(!?(\+?966)|0)?5\d{8}$/,"ar-SY":/^(!?(\+?963)|0)?9\d{8}$/,"ar-TN":/^(\+?216)?[2459]\d{7}$/,"be-BY":/^(\+?375)?(24|25|29|33|44)\d{7}$/,"bg-BG":/^(\+?359|0)?8[789]\d{7}$/,"bn-BD":/^(\+?880|0)1[1356789][0-9]{8}$/,"cs-CZ":/^(\+?420)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/,"da-DK":/^(\+?45)?\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2}$/,"de-DE":/^(\+49)?0?1(5[0-25-9]\d|6([23]|0\d?)|7([0-57-9]|6\d))\d{7}$/,"el-GR":/^(\+?30|0)?(69\d{8})$/,"en-AU":/^(\+?61|0)4\d{8}$/,"en-GB":/^(\+?44|0)7\d{9}$/,"en-GH":/^(\+233|0)(20|50|24|54|27|57|26|56|23|28)\d{7}$/,"en-HK":/^(\+?852\-?)?[456789]\d{3}\-?\d{4}$/,"en-IE":/^(\+?353|0)8[356789]\d{7}$/,"en-IN":/^(\+?91|0)?[6789]\d{9}$/,"en-KE":/^(\+?254|0)(7|1)\d{8}$/,"en-MT":/^(\+?356|0)?(99|79|77|21|27|22|25)[0-9]{6}$/,"en-MU":/^(\+?230|0)?\d{8}$/,"en-NG":/^(\+?234|0)?[789]\d{9}$/,"en-NZ":/^(\+?64|0)[28]\d{7,9}$/,"en-PK":/^((\+92)|(0092))-{0,1}\d{3}-{0,1}\d{7}$|^\d{11}$|^\d{4}-\d{7}$/,"en-RW":/^(\+?250|0)?[7]\d{8}$/,"en-SG":/^(\+65)?[89]\d{7}$/,"en-TZ":/^(\+?255|0)?[67]\d{8}$/,"en-UG":/^(\+?256|0)?[7]\d{8}$/,"en-US":/^((\+1|1)?( |-)?)?(\([2-9][0-9]{2}\)|[2-9][0-9]{2})( |-)?([2-9][0-9]{2}( |-)?[0-9]{4})$/,"en-ZA":/^(\+?27|0)\d{9}$/,"en-ZM":/^(\+?26)?09[567]\d{7}$/,"es-CL":/^(\+?56|0)[2-9]\d{1}\d{7}$/,"es-ES":/^(\+?34)?(6\d{1}|7[1234])\d{7}$/,"es-MX":/^(\+?52)?(1|01)?\d{10,11}$/,"es-PY":/^(\+?595|0)9[9876]\d{7}$/,"es-UY":/^(\+598|0)9[1-9][\d]{6}$/,"et-EE":/^(\+?372)?\s?(5|8[1-4])\s?([0-9]\s?){6,7}$/,"fa-IR":/^(\+?98[\-\s]?|0)9[0-39]\d[\-\s]?\d{3}[\-\s]?\d{4}$/,"fi-FI":/^(\+?358|0)\s?(4(0|1|2|4|5|6)?|50)\s?(\d\s?){4,8}\d$/,"fj-FJ":/^(\+?679)?\s?\d{3}\s?\d{4}$/,"fo-FO":/^(\+?298)?\s?\d{2}\s?\d{2}\s?\d{2}$/,"fr-FR":/^(\+?33|0)[67]\d{8}$/,"he-IL":/^(\+972|0)([23489]|5[012345689]|77)[1-9]\d{6}$/,"hu-HU":/^(\+?36)(20|30|70)\d{7}$/,"id-ID":/^(\+?62|0)8(1[123456789]|2[1238]|3[1238]|5[12356789]|7[78]|9[56789]|8[123456789])([\s?|\d]{5,11})$/,"it-IT":/^(\+?39)?\s?3\d{2} ?\d{6,7}$/,"ja-JP":/^(\+?81|0)[789]0[ \-]?[1-9]\d{2}[ \-]?\d{5}$/,"kk-KZ":/^(\+?7|8)?7\d{9}$/,"kl-GL":/^(\+?299)?\s?\d{2}\s?\d{2}\s?\d{2}$/,"ko-KR":/^((\+?82)[ \-]?)?0?1([0|1|6|7|8|9]{1})[ \-]?\d{3,4}[ \-]?\d{4}$/,"lt-LT":/^(\+370|8)\d{8}$/,"ms-MY":/^(\+?6?01){1}(([0145]{1}(\-|\s)?\d{7,8})|([236789]{1}(\s|\-)?\d{7}))$/,"nb-NO":/^(\+?47)?[49]\d{7}$/,"nl-BE":/^(\+?32|0)4?\d{8}$/,"nl-NL":/^(\+?31|0)6?\d{8}$/,"nn-NO":/^(\+?47)?[49]\d{7}$/,"pl-PL":/^(\+?48)? ?[5-8]\d ?\d{3} ?\d{2} ?\d{2}$/,"pt-BR":/(?=^(\+?5{2}\-?|0)[1-9]{2}\-?\d{4}\-?\d{4}$)(^(\+?5{2}\-?|0)[1-9]{2}\-?[6-9]{1}\d{3}\-?\d{4}$)|(^(\+?5{2}\-?|0)[1-9]{2}\-?9[6-9]{1}\d{3}\-?\d{4}$)/,"pt-PT":/^(\+?351)?9[1236]\d{7}$/,"ro-RO":/^(\+?4?0)\s?7\d{2}(\/|\s|\.|\-)?\d{3}(\s|\.|\-)?\d{3}$/,"ru-RU":/^(\+?7|8)?9\d{9}$/,"sl-SI":/^(\+386\s?|0)(\d{1}\s?\d{3}\s?\d{2}\s?\d{2}|\d{2}\s?\d{3}\s?\d{3})$/,"sk-SK":/^(\+?421)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/,"sr-RS":/^(\+3816|06)[- \d]{5,9}$/,"sv-SE":/^(\+?46|0)[\s\-]?7[\s\-]?[02369]([\s\-]?\d){7}$/,"th-TH":/^(\+66|66|0)\d{9}$/,"tr-TR":/^(\+?90|0)?5\d{9}$/,"uk-UA":/^(\+?38|8)?0\d{9}$/,"vi-VN":/^(\+?84|0)((3([2-9]))|(5([2689]))|(7([0|6-9]))|(8([1-6|89]))|(9([0-9])))([0-9]{7})$/,"zh-CN":/^((\+|00)86)?1([358][0-9]|4[579]|6[67]|7[0135678]|9[189])[0-9]{8}$/,"zh-TW":/^(\+?886\-?|0)?9\d{8}$/};e["en-CA"]=e["en-US"],e["fr-BE"]=e["nl-BE"],e["zh-HK"]=e["en-HK"];var u=Object.keys(e);E.locales=u},65616:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),(0,t.default)(u)&&24===u.length};var S=e(n(48117)),t=e(n(62183));function e(u){return u&&u.__esModule?u:{default:u}}Ce.exports=E.default,Ce.exports.default=E.default},56752:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/[^\x00-\x7F]/;Ce.exports=E.default,Ce.exports.default=E.default},75381:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o,_){return(0,S.default)(o),_&&_.no_symbols?c.test(o):e.test(o)};var S=function t(o){return o&&o.__esModule?o:{default:o}}(n(48117)),e=/^[+-]?([0-9]*[.])?[0-9]+$/,c=/^[0-9]+$/;Ce.exports=E.default,Ce.exports.default=E.default},48145:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c,{min:0,max:65535})};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(39444));Ce.exports=E.default,Ce.exports.default=E.default},24490:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function h(b,T){if((0,S.default)(b),T in _)return _[T].test(b);if("any"===T){for(var y in _)if(_.hasOwnProperty(y)&&_[y].test(b))return!0;return!1}throw new Error("Invalid locale '".concat(T,"'"))},E.locales=void 0;var S=function t(b){return b&&b.__esModule?b:{default:b}}(n(48117)),c=/^\d{4}$/,u=/^\d{5}$/,o=/^\d{6}$/,_={AD:/^AD\d{3}$/,AT:c,AU:c,BE:c,BG:c,BR:/^\d{5}-\d{3}$/,CA:/^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][\s\-]?\d[ABCEGHJ-NPRSTV-Z]\d$/i,CH:c,CZ:/^\d{3}\s?\d{2}$/,DE:u,DK:c,DZ:u,EE:u,ES:u,FI:u,FR:/^\d{2}\s?\d{3}$/,GB:/^(gir\s?0aa|[a-z]{1,2}\d[\da-z]?\s?(\d[a-z]{2})?)$/i,GR:/^\d{3}\s?\d{2}$/,HR:/^([1-5]\d{4}$)/,HU:c,ID:u,IL:u,IN:o,IS:/^\d{3}$/,IT:u,JP:/^\d{3}\-\d{4}$/,KE:u,LI:/^(948[5-9]|949[0-7])$/,LT:/^LT\-\d{5}$/,LU:c,LV:/^LV\-\d{4}$/,MX:u,MT:/^[A-Za-z]{3}\s{0,1}\d{4}$/,NL:/^\d{4}\s?[a-z]{2}$/i,NO:c,NZ:c,PL:/^\d{2}\-\d{3}$/,PR:/^00[679]\d{2}([ -]\d{4})?$/,PT:/^\d{4}\-\d{3}?$/,RO:o,RU:o,SA:u,SE:/^\d{3}\s?\d{2}$/,SI:c,SK:/^\d{3}\s?\d{2}$/,TN:c,TW:/^\d{3}(\d{2})?$/,UA:u,US:/^\d{5}(-\d{4})?$/,ZA:c,ZM:u},s=Object.keys(_);E.locales=s},53609:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function k(D){return(0,S.default)(D),B.test(D)};var S=function t(D){return D&&D.__esModule?D:{default:D}}(n(48117)),o=/([01][0-9]|2[0-3])/,_=/[0-5][0-9]/,b=new RegExp("[-+]".concat(o.source,":").concat(_.source)),T=new RegExp("([zZ]|".concat(b.source,")")),y=new RegExp("".concat(o.source,":").concat(_.source,":").concat(/([0-5][0-9]|60)/.source).concat(/(\.[0-9]+)?/.source)),Y=new RegExp("".concat(/[0-9]{4}/.source,"-").concat(/(0[1-9]|1[0-2])/.source,"-").concat(/([12]\d|0[1-9]|3[01])/.source)),q=new RegExp("".concat(y.source).concat(T.source)),B=new RegExp("".concat(Y.source,"[ tT]").concat(q.source));Ce.exports=E.default,Ce.exports.default=E.default},77331:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u){return(0,S.default)(u),e.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/;Ce.exports=E.default,Ce.exports.default=E.default},72942:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function b(T,y){if((0,S.default)(T),!T||T.length>=2083||/[\s<>]/.test(T)||0===T.indexOf("mailto:"))return!1;var Y,q,B,k,D,N,I,L;if(y=(0,c.default)(y,o),I=T.split("#"),T=I.shift(),I=T.split("?"),T=I.shift(),(I=T.split("://")).length>1){if(Y=I.shift().toLowerCase(),y.require_valid_protocol&&-1===y.protocols.indexOf(Y))return!1}else{if(y.require_protocol)return!1;if("//"===T.substr(0,2)){if(!y.allow_protocol_relative_urls)return!1;I[0]=T.substr(2)}}if(""===(T=I.join("://")))return!1;if(I=T.split("/"),""===(T=I.shift())&&!y.require_host)return!0;if((I=T.split("@")).length>1&&(y.disallow_auth||(q=I.shift()).indexOf(":")>=0&&q.split(":").length>2))return!1;N=null,L=null;var j=(k=I.join("@")).match(_);return j?(B="",L=j[1],N=j[2]||null):(B=(I=k.split(":")).shift(),I.length&&(N=I.join(":"))),!(null!==N&&(D=parseInt(N,10),!/^[0-9]+$/.test(N)||D<=0||D>65535)||!(0,e.default)(B)&&!(0,t.default)(B,y)&&(!L||!(0,e.default)(L,6))||(B=B||L,y.host_whitelist&&!h(B,y.host_whitelist))||y.host_blacklist&&h(B,y.host_blacklist))};var S=u(n(48117)),t=u(n(71478)),e=u(n(95177)),c=u(n(3593));function u(T){return T&&T.__esModule?T:{default:T}}var o={protocols:["http","https","ftp"],require_tld:!0,require_protocol:!1,require_host:!0,require_valid_protocol:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_protocol_relative_urls:!1},_=/^\[([^\]]+)\](?::([0-9]+))?$/;function s(T){return"[object RegExp]"===Object.prototype.toString.call(T)}function h(T,y){for(var Y=0;Y1&&void 0!==arguments[1]?arguments[1]:"all";(0,S.default)(u);var _=e[o];return _&&_.test(u)};var S=function t(u){return u&&u.__esModule?u:{default:u}}(n(48117)),e={3:/^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,4:/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,5:/^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,all:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i};Ce.exports=E.default,Ce.exports.default=E.default},46887:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c),c===c.toUpperCase()};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},24433:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function u(o){return(0,S.default)(o),t.fullWidth.test(o)&&e.halfWidth.test(o)};var S=function c(o){return o&&o.__esModule?o:{default:o}}(n(48117)),t=n(8190),e=n(89288);Ce.exports=E.default,Ce.exports.default=E.default},72425:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u){(0,S.default)(c);for(var o=c.length-1;o>=0;o--)if(-1===u.indexOf(c[o]))return!1;return!0};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},11531:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u){(0,S.default)(c);var o=u?new RegExp("^[".concat(u.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"]+"),"g"):/^\s+/g;return c.replace(o,"")};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},71759:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u,o){return(0,S.default)(c),"[object RegExp]"!==Object.prototype.toString.call(u)&&(u=new RegExp(u,o)),u.test(c)};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},94355:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function h(b,T){T=(0,S.default)(T,e);var y=b.split("@"),Y=y.pop(),B=[y.join("@"),Y];if(B[1]=B[1].toLowerCase(),"gmail.com"===B[1]||"googlemail.com"===B[1]){if(T.gmail_remove_subaddress&&(B[0]=B[0].split("+")[0]),T.gmail_remove_dots&&(B[0]=B[0].replace(/\.+/g,s)),!B[0].length)return!1;(T.all_lowercase||T.gmail_lowercase)&&(B[0]=B[0].toLowerCase()),B[1]=T.gmail_convert_googlemaildotcom?"gmail.com":B[1]}else if(c.indexOf(B[1])>=0){if(T.icloud_remove_subaddress&&(B[0]=B[0].split("+")[0]),!B[0].length)return!1;(T.all_lowercase||T.icloud_lowercase)&&(B[0]=B[0].toLowerCase())}else if(u.indexOf(B[1])>=0){if(T.outlookdotcom_remove_subaddress&&(B[0]=B[0].split("+")[0]),!B[0].length)return!1;(T.all_lowercase||T.outlookdotcom_lowercase)&&(B[0]=B[0].toLowerCase())}else if(o.indexOf(B[1])>=0){if(T.yahoo_remove_subaddress){var k=B[0].split("-");B[0]=k.length>1?k.slice(0,-1).join("-"):k[0]}if(!B[0].length)return!1;(T.all_lowercase||T.yahoo_lowercase)&&(B[0]=B[0].toLowerCase())}else _.indexOf(B[1])>=0?((T.all_lowercase||T.yandex_lowercase)&&(B[0]=B[0].toLowerCase()),B[1]="yandex.ru"):T.all_lowercase&&(B[0]=B[0].toLowerCase());return B.join("@")};var S=function t(b){return b&&b.__esModule?b:{default:b}}(n(3593)),e={all_lowercase:!0,gmail_lowercase:!0,gmail_remove_dots:!0,gmail_remove_subaddress:!0,gmail_convert_googlemaildotcom:!0,outlookdotcom_lowercase:!0,outlookdotcom_remove_subaddress:!0,yahoo_lowercase:!0,yahoo_remove_subaddress:!0,yandex_lowercase:!0,icloud_lowercase:!0,icloud_remove_subaddress:!0},c=["icloud.com","me.com"],u=["hotmail.at","hotmail.be","hotmail.ca","hotmail.cl","hotmail.co.il","hotmail.co.nz","hotmail.co.th","hotmail.co.uk","hotmail.com","hotmail.com.ar","hotmail.com.au","hotmail.com.br","hotmail.com.gr","hotmail.com.mx","hotmail.com.pe","hotmail.com.tr","hotmail.com.vn","hotmail.cz","hotmail.de","hotmail.dk","hotmail.es","hotmail.fr","hotmail.hu","hotmail.id","hotmail.ie","hotmail.in","hotmail.it","hotmail.jp","hotmail.kr","hotmail.lv","hotmail.my","hotmail.ph","hotmail.pt","hotmail.sa","hotmail.sg","hotmail.sk","live.be","live.co.uk","live.com","live.com.ar","live.com.mx","live.de","live.es","live.eu","live.fr","live.it","live.nl","msn.com","outlook.at","outlook.be","outlook.cl","outlook.co.il","outlook.co.nz","outlook.co.th","outlook.com","outlook.com.ar","outlook.com.au","outlook.com.br","outlook.com.gr","outlook.com.pe","outlook.com.tr","outlook.com.vn","outlook.cz","outlook.de","outlook.dk","outlook.es","outlook.fr","outlook.hu","outlook.id","outlook.ie","outlook.in","outlook.it","outlook.jp","outlook.kr","outlook.lv","outlook.my","outlook.ph","outlook.pt","outlook.sa","outlook.sg","outlook.sk","passport.com"],o=["rocketmail.com","yahoo.ca","yahoo.co.uk","yahoo.com","yahoo.de","yahoo.fr","yahoo.in","yahoo.it","ymail.com"],_=["yandex.ru","yandex.ua","yandex.kz","yandex.com","yandex.by","ya.ru"];function s(b){return b.length>1?b:""}Ce.exports=E.default,Ce.exports.default=E.default},44464:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u){(0,S.default)(c);var o=u?new RegExp("[".concat(u.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"]+$"),"g"):/\s+$/g;return c.replace(o,"")};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},20880:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u,o){return(0,S.default)(u),(0,t.default)(u,o?"\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F":"\\x00-\\x1F\\x7F")};var S=e(n(48117)),t=e(n(39205));function e(u){return u&&u.__esModule?u:{default:u}}Ce.exports=E.default,Ce.exports.default=E.default},87550:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u){return(0,S.default)(c),u?"1"===c||"true"===c:"0"!==c&&"false"!==c&&""!==c};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},65664:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c),c=Date.parse(c),isNaN(c)?null:new Date(c)};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},48990:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c),parseFloat(c)};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},81854:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u){return(0,S.default)(c),parseInt(c,u||10)};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},83681:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function c(u,o){return(0,S.default)((0,t.default)(u,o),o)};var S=e(n(44464)),t=e(n(11531));function e(u){return u&&u.__esModule?u:{default:u}}Ce.exports=E.default,Ce.exports.default=E.default},49344:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c){return(0,S.default)(c),c.replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(///g,"/").replace(/\/g,"\\").replace(/`/g,"`")};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},48117:function(Ce,E){"use strict";function n(t){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(c){return typeof c}:function(c){return c&&"function"==typeof Symbol&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c})(t)}Object.defineProperty(E,"__esModule",{value:!0}),E.default=function S(t){var c;if(!("string"==typeof t||t instanceof String))throw c=null===t?"null":"object"===(c=n(t))&&t.constructor&&t.constructor.hasOwnProperty("name")?t.constructor.name:"a ".concat(c),new TypeError("Expected string but received ".concat(c,"."))},Ce.exports=E.default,Ce.exports.default=E.default},41985:function(Ce,E){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=void 0,E.default=function(e,c){return e.some(function(u){return c===u})},Ce.exports=E.default,Ce.exports.default=E.default},3593:function(Ce,E){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function n(){var S=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;for(var e in t)void 0===S[e]&&(S[e]=t[e]);return S},Ce.exports=E.default,Ce.exports.default=E.default},77920:function(Ce,E){"use strict";function n(t){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(c){return typeof c}:function(c){return c&&"function"==typeof Symbol&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c})(t)}Object.defineProperty(E,"__esModule",{value:!0}),E.default=function S(t){return"object"===n(t)&&null!==t?t="function"==typeof t.toString?t.toString():"[object Object]":(null==t||isNaN(t)&&!t.length)&&(t=""),String(t)},Ce.exports=E.default,Ce.exports.default=E.default},49057:function(Ce,E,n){"use strict";Object.defineProperty(E,"__esModule",{value:!0}),E.default=function e(c,u){return(0,S.default)(c),c.replace(new RegExp("[^".concat(u,"]+"),"g"),"")};var S=function t(c){return c&&c.__esModule?c:{default:c}}(n(48117));Ce.exports=E.default,Ce.exports.default=E.default},75709:function(Ce,E,n){"use strict";var S=n(83037),t=n(35271),e=n(4263),c=n(20253),u=e("Object.prototype.toString"),o=n(13261)(),_="undefined"==typeof globalThis?global:globalThis,s=t(),h=e("String.prototype.slice"),b={},T=Object.getPrototypeOf;o&&c&&T&&S(s,function(q){if("function"==typeof _[q]){var B=new _[q];if(Symbol.toStringTag in B){var k=T(B),D=c(k,Symbol.toStringTag);if(!D){var N=T(k);D=c(N,Symbol.toStringTag)}b[q]=D.get}}});var Y=n(37673);Ce.exports=function(B){return!!Y(B)&&(o&&Symbol.toStringTag in B?function(B){var k=!1;return S(b,function(D,N){if(!k)try{var I=D.call(B);I===N&&(k=I)}catch(L){}}),k}(B):h(u(B),8,-1))}},44802:function(Ce){"use strict";Ce.exports={INVALID_TYPE:"Expected type {0} but found type {1}",INVALID_FORMAT:"Object didn't pass validation for format {0}: {1}",ENUM_MISMATCH:"No enum match for: {0}",ENUM_CASE_MISMATCH:"Enum does not match case for: {0}",ANY_OF_MISSING:"Data does not match any schemas from 'anyOf'",ONE_OF_MISSING:"Data does not match any schemas from 'oneOf'",ONE_OF_MULTIPLE:"Data is valid against more than one schema from 'oneOf'",NOT_PASSED:"Data matches schema from 'not'",ARRAY_LENGTH_SHORT:"Array is too short ({0}), minimum {1}",ARRAY_LENGTH_LONG:"Array is too long ({0}), maximum {1}",ARRAY_UNIQUE:"Array items are not unique (indexes {0} and {1})",ARRAY_ADDITIONAL_ITEMS:"Additional items not allowed",MULTIPLE_OF:"Value {0} is not a multiple of {1}",MINIMUM:"Value {0} is less than minimum {1}",MINIMUM_EXCLUSIVE:"Value {0} is equal or less than exclusive minimum {1}",MAXIMUM:"Value {0} is greater than maximum {1}",MAXIMUM_EXCLUSIVE:"Value {0} is equal or greater than exclusive maximum {1}",OBJECT_PROPERTIES_MINIMUM:"Too few properties defined ({0}), minimum {1}",OBJECT_PROPERTIES_MAXIMUM:"Too many properties defined ({0}), maximum {1}",OBJECT_MISSING_REQUIRED_PROPERTY:"Missing required property: {0}",OBJECT_ADDITIONAL_PROPERTIES:"Additional properties not allowed: {0}",OBJECT_DEPENDENCY_KEY:"Dependency failed - key must exist: {0} (due to key: {1})",MIN_LENGTH:"String is too short ({0} chars), minimum {1}",MAX_LENGTH:"String is too long ({0} chars), maximum {1}",PATTERN:"String does not match pattern {0}: {1}",KEYWORD_TYPE_EXPECTED:"Keyword '{0}' is expected to be of type '{1}'",KEYWORD_UNDEFINED_STRICT:"Keyword '{0}' must be defined in strict mode",KEYWORD_UNEXPECTED:"Keyword '{0}' is not expected to appear in the schema",KEYWORD_MUST_BE:"Keyword '{0}' must be {1}",KEYWORD_DEPENDENCY:"Keyword '{0}' requires keyword '{1}'",KEYWORD_PATTERN:"Keyword '{0}' is not a valid RegExp pattern: {1}",KEYWORD_VALUE_TYPE:"Each element of keyword '{0}' array must be a '{1}'",UNKNOWN_FORMAT:"There is no validation function for format '{0}'",CUSTOM_MODE_FORCE_PROPERTIES:"{0} must define at least one property if present",REF_UNRESOLVED:"Reference has not been resolved during compilation: {0}",UNRESOLVABLE_REFERENCE:"Reference could not be resolved: {0}",SCHEMA_NOT_REACHABLE:"Validator was not able to read schema with uri: {0}",SCHEMA_TYPE_EXPECTED:"Schema is expected to be of type 'object'",SCHEMA_NOT_AN_OBJECT:"Schema is not an object: {0}",ASYNC_TIMEOUT:"{0} asynchronous task(s) have timed out after {1} ms",PARENT_SCHEMA_VALIDATION_FAILED:"Schema failed to validate against its parent schema, see inner errors for details.",REMOTE_NOT_VALID:"Remote reference didn't compile successfully: {0}"}},9576:function(Ce,E,n){var S=n(17150),t={date:function(c){if("string"!=typeof c)return!0;var u=/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/.exec(c);return!(null===u||u[2]<"01"||u[2]>"12"||u[3]<"01"||u[3]>"31")},"date-time":function(c){if("string"!=typeof c)return!0;var u=c.toLowerCase().split("t");if(!t.date(u[0]))return!1;var o=/^([0-9]{2}):([0-9]{2}):([0-9]{2})(.[0-9]+)?(z|([+-][0-9]{2}:[0-9]{2}))$/.exec(u[1]);return!(null===o||o[1]>"23"||o[2]>"59"||o[3]>"59")},email:function(c){return"string"!=typeof c||S.isEmail(c,{require_tld:!0})},hostname:function(c){if("string"!=typeof c)return!0;var u=/^[a-zA-Z](([-0-9a-zA-Z]+)?[0-9a-zA-Z])?(\.[a-zA-Z](([-0-9a-zA-Z]+)?[0-9a-zA-Z])?)*$/.test(c);if(u){if(c.length>255)return!1;for(var o=c.split("."),_=0;_63)return!1}return u},"host-name":function(c){return t.hostname.call(this,c)},ipv4:function(c){return"string"!=typeof c||S.isIP(c,4)},ipv6:function(c){return"string"!=typeof c||S.isIP(c,6)},regex:function(c){try{return RegExp(c),!0}catch(u){return!1}},uri:function(c){return this.options.strictUris?t["strict-uri"].apply(this,arguments):"string"!=typeof c||RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?").test(c)},"strict-uri":function(c){return"string"!=typeof c||S.isURL(c)}};Ce.exports=t},51579:function(Ce,E,n){"use strict";var S=n(9576),t=n(87101),e=n(8850),c=function(h,b){return h&&Array.isArray(h.includeErrors)&&h.includeErrors.length>0&&!b.some(function(T){return h.includeErrors.includes(T)})},u={multipleOf:function(h,b,T){if(!c(this.validateOptions,["MULTIPLE_OF"])&&"number"==typeof T){var y=String(b.multipleOf),Y=Math.pow(10,y.length-y.indexOf(".")-1);"integer"!==e.whatIs(T*Y/(b.multipleOf*Y))&&h.addError("MULTIPLE_OF",[T,b.multipleOf],null,b)}},maximum:function(h,b,T){c(this.validateOptions,["MAXIMUM","MAXIMUM_EXCLUSIVE"])||"number"==typeof T&&(!0!==b.exclusiveMaximum?T>b.maximum&&h.addError("MAXIMUM",[T,b.maximum],null,b):T>=b.maximum&&h.addError("MAXIMUM_EXCLUSIVE",[T,b.maximum],null,b))},exclusiveMaximum:function(){},minimum:function(h,b,T){c(this.validateOptions,["MINIMUM","MINIMUM_EXCLUSIVE"])||"number"==typeof T&&(!0!==b.exclusiveMinimum?Tb.maxLength&&h.addError("MAX_LENGTH",[T.length,b.maxLength],null,b)},minLength:function(h,b,T){c(this.validateOptions,["MIN_LENGTH"])||"string"==typeof T&&e.ucs2decode(T).lengthb.items.length&&h.addError("ARRAY_ADDITIONAL_ITEMS",null,null,b)},items:function(){},maxItems:function(h,b,T){c(this.validateOptions,["ARRAY_LENGTH_LONG"])||!Array.isArray(T)||T.length>b.maxItems&&h.addError("ARRAY_LENGTH_LONG",[T.length,b.maxItems],null,b)},minItems:function(h,b,T){c(this.validateOptions,["ARRAY_LENGTH_SHORT"])||!Array.isArray(T)||T.lengthb.maxProperties&&h.addError("OBJECT_PROPERTIES_MAXIMUM",[y,b.maxProperties],null,b)}},minProperties:function(h,b,T){if(!c(this.validateOptions,["OBJECT_PROPERTIES_MINIMUM"])&&"object"===e.whatIs(T)){var y=Object.keys(T).length;y0){var L=this.options.assumeAdditional.length;if(L)for(;L--;){var j=q.indexOf(this.options.assumeAdditional[L]);-1!==j&&q.splice(j,1)}var le=q.length;if(le)for(;le--;)h.addError("OBJECT_ADDITIONAL_PROPERTIES",[q[le]],null,b)}}}},dependencies:function(h,b,T){if(!c(this.validateOptions,["OBJECT_DEPENDENCY_KEY"])&&"object"===e.whatIs(T))for(var y=Object.keys(b.dependencies),Y=y.length;Y--;){var q=y[Y];if(T[q]){var B=b.dependencies[q];if("object"===e.whatIs(B))E.validate.call(this,h,B,T);else for(var k=B.length;k--;){var D=B[k];void 0===T[D]&&h.addError("OBJECT_DEPENDENCY_KEY",[D,q],null,b)}}}},enum:function(h,b,T){if(!c(this.validateOptions,["ENUM_CASE_MISMATCH","ENUM_MISMATCH"])){for(var y=!1,Y=!1,q=b.enum.length;q--;){if(e.areEqual(T,b.enum[q])){y=!0;break}e.areEqual(T,b.enum[q]),Y=!0}!1===y&&h.addError(Y&&this.options.enumCaseInsensitiveComparison?"ENUM_CASE_MISMATCH":"ENUM_MISMATCH",[T],null,b)}},type:function(h,b,T){if(!c(this.validateOptions,["INVALID_TYPE"])){var y=e.whatIs(T);"string"==typeof b.type?y!==b.type&&("integer"!==y||"number"!==b.type)&&h.addError("INVALID_TYPE",[b.type,y],null,b):-1===b.type.indexOf(y)&&("integer"!==y||-1===b.type.indexOf("number"))&&h.addError("INVALID_TYPE",[b.type,y],null,b)}},allOf:function(h,b,T){for(var y=b.allOf.length;y--;){var Y=E.validate.call(this,h,b.allOf[y],T);if(this.options.breakOnFirstError&&!1===Y)break}},anyOf:function(h,b,T){for(var y=[],Y=!1,q=b.anyOf.length;q--&&!1===Y;){var B=new t(h);y.push(B),Y=E.validate.call(this,B,b.anyOf[q],T)}!1===Y&&h.addError("ANY_OF_MISSING",void 0,y,b)},oneOf:function(h,b,T){for(var y=0,Y=[],q=b.oneOf.length;q--;){var B=new t(h,{maxErrors:1});Y.push(B),!0===E.validate.call(this,B,b.oneOf[q],T)&&y++}0===y?h.addError("ONE_OF_MISSING",void 0,Y,b):y>1&&h.addError("ONE_OF_MULTIPLE",null,null,b)},not:function(h,b,T){var y=new t(h);!0===E.validate.call(this,y,b.not,T)&&h.addError("NOT_PASSED",null,null,b)},definitions:function(){},format:function(h,b,T){var y=S[b.format];if("function"==typeof y){if(c(this.validateOptions,["INVALID_FORMAT"]))return;if(2===y.length){var Y=e.clone(h.path);h.addAsyncTask(y,[T],function(q){if(!0!==q){var B=h.path;h.path=Y,h.addError("INVALID_FORMAT",[b.format,T],null,b),h.path=B}})}else!0!==y.call(this,T)&&h.addError("INVALID_FORMAT",[b.format,T],null,b)}else!0!==this.options.ignoreUnknownFormats&&h.addError("UNKNOWN_FORMAT",[b.format],null,b)}},o=function(h,b,T){var y=T.length;if(Array.isArray(b.items))for(;y--;)y0;){if(!h.__$refResolved){s.addError("REF_UNRESOLVED",[h.$ref],null,h);break}if(h.__$refResolved===h)break;h=h.__$refResolved,y=Object.keys(h),q--}if(0===q)throw new Error("Circular dependency by $ref references!")}var B=e.whatIs(b);if(h.type&&(y.splice(y.indexOf("type"),1),u.type.call(this,s,h,b),s.errors.length&&this.options.breakOnFirstError))return!1;for(var k=y.length;k--&&!(u[y[k]]&&(u[y[k]].call(this,s,h,b),s.errors.length&&this.options.breakOnFirstError)););return(0===s.errors.length||!1===this.options.breakOnFirstError)&&("array"===B?o.call(this,s,h,b):"object"===B&&_.call(this,s,h,b)),"function"==typeof this.options.customValidator&&this.options.customValidator.call(this,s,h,b),Y&&(s.rootSchema=void 0),0===s.errors.length}},66905:function(){"function"!=typeof Number.isFinite&&(Number.isFinite=function(E){return!("number"!=typeof E||E!=E||E===1/0||E===-1/0)})},87101:function(Ce,E,n){"use strict";var S=n(90650),t=n(44802),e=n(8850);function c(u,o){this.parentReport=u instanceof c?u:void 0,this.options=u instanceof c?u.options:u||{},this.reportOptions=o||{},this.errors=[],this.path=[],this.asyncTasks=[],this.rootSchema=void 0,this.commonErrorMessage=void 0,this.json=void 0}c.prototype.isValid=function(){if(this.asyncTasks.length>0)throw new Error("Async tasks pending, can't answer isValid");return 0===this.errors.length},c.prototype.addAsyncTask=function(u,o,_){this.asyncTasks.push([u,o,_])},c.prototype.getAncestor=function(u){if(this.parentReport)return this.parentReport.getSchemaId()===u?this.parentReport:this.parentReport.getAncestor(u)},c.prototype.processAsyncTasks=function(u,o){var _=u||2e3,s=this.asyncTasks.length,h=s,b=!1,T=this;function y(){process.nextTick(function(){var B=0===T.errors.length;o(B?void 0:T.errors,B)})}function Y(B){return function(k){b||(B(k),0==--s&&y())}}if(0===s||this.errors.length>0&&this.options.breakOnFirstError)y();else{for(;h--;){var q=this.asyncTasks[h];q[0].apply(null,q[1].concat(Y(q[2])))}setTimeout(function(){s>0&&(b=!0,T.addError("ASYNC_TIMEOUT",[s,_]),o(T.errors,!1))},_)}},c.prototype.getPath=function(u){var o=[];return this.parentReport&&(o=o.concat(this.parentReport.path)),o=o.concat(this.path),!0!==u&&(o="#/"+o.map(function(_){return _=_.toString(),e.isAbsoluteUri(_)?"uri("+_+")":_.replace(/\~/g,"~0").replace(/\//g,"~1")}).join("/")),o},c.prototype.getSchemaId=function(){if(!this.rootSchema)return null;var u=[];for(this.parentReport&&(u=u.concat(this.parentReport.path)),u=u.concat(this.path);u.length>0;){var o=S(this.rootSchema,u);if(o&&o.id)return o.id;u.pop()}return this.rootSchema.id},c.prototype.hasError=function(u,o){for(var _=this.errors.length;_--;)if(this.errors[_].code===u){for(var s=!0,h=this.errors[_].params.length;h--;)this.errors[_].params[h]!==o[h]&&(s=!1);if(s)return s}return!1},c.prototype.addError=function(u,o,_,s){if(!u)throw new Error("No errorCode passed into addError()");this.addCustomError(u,t[u],o,_,s)},c.prototype.getJson=function(){for(var u=this;void 0===u.json;)if(void 0===(u=u.parentReport))return;return u.json},c.prototype.addCustomError=function(u,o,_,s,h){if(!(this.errors.length>=this.reportOptions.maxErrors)){if(!o)throw new Error("No errorMessage known for code "+u);for(var b=(_=_||[]).length;b--;){var T=e.whatIs(_[b]),y="object"===T||"null"===T?JSON.stringify(_[b]):_[b];o=o.replace("{"+b+"}",y)}var Y={code:u,params:_,message:o,path:this.getPath(this.options.reportPathAsArray),schemaId:this.getSchemaId()};if(Y[e.schemaSymbol]=h,Y[e.jsonSymbol]=this.getJson(),h&&"string"==typeof h?Y.description=h:h&&"object"==typeof h&&(h.title&&(Y.title=h.title),h.description&&(Y.description=h.description)),null!=s){for(Array.isArray(s)||(s=[s]),Y.inner=[],b=s.length;b--;)for(var q=s[b],B=q.errors.length;B--;)Y.inner.push(q.errors[B]);0===Y.inner.length&&(Y.inner=void 0)}this.errors.push(Y)}},Ce.exports=c},7464:function(Ce,E,n){"use strict";var S=n(57883),t=n(87101),e=n(7182),c=n(51941),u=n(8850);function o(b){return decodeURIComponent(b).replace(/~[0-1]/g,function(T){return"~1"===T?"/":"~"})}function _(b){var T=b.indexOf("#");return-1===T?b:b.slice(0,T)}function h(b,T){if("object"==typeof b&&null!==b){if(!T||b.id&&(b.id===T||"#"===b.id[0]&&b.id.substring(1)===T))return b;var y,Y;if(Array.isArray(b)){for(y=b.length;y--;)if(Y=h(b[y],T))return Y}else{var q=Object.keys(b);for(y=q.length;y--;){var B=q[y];if(0!==B.indexOf("__$")&&(Y=h(b[B],T)))return Y}}}}E.cacheSchemaByUri=function(b,T){var y=_(b);y&&(this.cache[y]=T)},E.removeFromCacheByUri=function(b){var T=_(b);T&&delete this.cache[T]},E.checkCacheForUri=function(b){var T=_(b);return!!T&&null!=this.cache[T]},E.getSchema=function(b,T){return"object"==typeof T&&(T=E.getSchemaByReference.call(this,b,T)),"string"==typeof T&&(T=E.getSchemaByUri.call(this,b,T)),T},E.getSchemaByReference=function(b,T){for(var y=this.referenceCache.length;y--;)if(S(this.referenceCache[y][0],T))return this.referenceCache[y][1];var Y=u.cloneDeep(T);return this.referenceCache.push([T,Y]),Y},E.getSchemaByUri=function(b,T,y){var Y=_(T),q=function s(b){var T=b.indexOf("#");return-1===T?void 0:b.slice(T+1)}(T),B=Y?this.cache[Y]:y;if(B&&Y&&B!==y){b.path.push(Y);var D,N=b.getAncestor(B.id);if(N)D=N;else if(D=new t(b),e.compileSchema.call(this,D,B)){var I=this.options;try{this.options=B.__$validationOptions||this.options,c.validateSchema.call(this,D,B)}finally{this.options=I}}var L=D.isValid();if(L||b.addError("REMOTE_NOT_VALID",[T],D),b.path.pop(),!L)return}if(B&&q)for(var j=q.split("/"),le=0,re=j.length;B&&le=55296&&u<=56319&&e0)throw new Error("This validation has async tasks and cannot be done in sync mode, please provide callback argument.");return this.lastReport=j,j.isValid()}j.processAsyncTasks(this.options.asyncTimeout,D)},Y.prototype.getLastError=function(){if(0===this.lastReport.errors.length)return null;var q=new Error;return q.name="z-schema validation error",q.message=this.lastReport.commonErrorMessage,q.details=this.lastReport.errors,q},Y.prototype.getLastErrors=function(){return this.lastReport&&this.lastReport.errors.length>0?this.lastReport.errors:void 0},Y.prototype.getMissingReferences=function(q){for(var B=[],k=(q=q||this.lastReport.errors).length;k--;){var D=q[k];if("UNRESOLVABLE_REFERENCE"===D.code){var N=D.params[0];-1===B.indexOf(N)&&B.push(N)}D.inner&&(B=B.concat(this.getMissingReferences(D.inner)))}return B},Y.prototype.getMissingRemoteReferences=function(){for(var q=this.getMissingReferences(),B=[],k=q.length;k--;){var D=u.getRemotePath(q[k]);D&&-1===B.indexOf(D)&&B.push(D)}return B},Y.prototype.setRemoteReference=function(q,B,k){B="string"==typeof B?JSON.parse(B):s.cloneDeep(B),k&&(B.__$validationOptions=y(k)),u.cacheSchemaByUri.call(this,q,B)},Y.prototype.getResolvedSchema=function(q){var B=new t(this.options);q=u.getSchema.call(this,B,q),q=s.cloneDeep(q);var k=[];if(function N(I){var L,j=s.whatIs(I);if(("object"===j||"array"===j)&&!I.___$visited){if(I.___$visited=!0,k.push(I),I.$ref&&I.__$refResolved){var le=I.__$refResolved,re=I;for(L in delete I.$ref,delete I.__$refResolved,le)le.hasOwnProperty(L)&&(re[L]=le[L])}for(L in I)I.hasOwnProperty(L)&&(0===L.indexOf("__$")?delete I[L]:N(I[L]))}}(q),k.forEach(function(N){delete N.___$visited}),this.lastReport=B,B.isValid())return q;throw this.getLastError()},Y.prototype.setSchemaReader=function(q){return Y.setSchemaReader(q)},Y.prototype.getSchemaReader=function(){return Y.schemaReader},Y.schemaReader=void 0,Y.setSchemaReader=function(q){Y.schemaReader=q},Y.registerFormat=function(q,B){e[q]=B},Y.unregisterFormat=function(q){delete e[q]},Y.getRegisteredFormats=function(){return Object.keys(e)},Y.getDefaultOptions=function(){return s.cloneDeep(T)},Y.schemaSymbol=s.schemaSymbol,Y.jsonSymbol=s.jsonSymbol,Ce.exports=Y},46700:function(Ce,E,n){var S={"./af":58685,"./af.js":58685,"./ar":254,"./ar-dz":4312,"./ar-dz.js":4312,"./ar-kw":32614,"./ar-kw.js":32614,"./ar-ly":18630,"./ar-ly.js":18630,"./ar-ma":28674,"./ar-ma.js":28674,"./ar-sa":49032,"./ar-sa.js":49032,"./ar-tn":24730,"./ar-tn.js":24730,"./ar.js":254,"./az":53052,"./az.js":53052,"./be":60150,"./be.js":60150,"./bg":63069,"./bg.js":63069,"./bm":13466,"./bm.js":13466,"./bn":18516,"./bn-bd":90557,"./bn-bd.js":90557,"./bn.js":18516,"./bo":26273,"./bo.js":26273,"./br":9588,"./br.js":9588,"./bs":19815,"./bs.js":19815,"./ca":83331,"./ca.js":83331,"./cs":21320,"./cs.js":21320,"./cv":72219,"./cv.js":72219,"./cy":68266,"./cy.js":68266,"./da":66427,"./da.js":66427,"./de":67435,"./de-at":52871,"./de-at.js":52871,"./de-ch":12994,"./de-ch.js":12994,"./de.js":67435,"./dv":82357,"./dv.js":82357,"./el":95649,"./el.js":95649,"./en-au":59961,"./en-au.js":59961,"./en-ca":19878,"./en-ca.js":19878,"./en-gb":3924,"./en-gb.js":3924,"./en-ie":70864,"./en-ie.js":70864,"./en-il":91579,"./en-il.js":91579,"./en-in":30940,"./en-in.js":30940,"./en-nz":16181,"./en-nz.js":16181,"./en-sg":44301,"./en-sg.js":44301,"./eo":85291,"./eo.js":85291,"./es":54529,"./es-do":53764,"./es-do.js":53764,"./es-mx":12584,"./es-mx.js":12584,"./es-us":63425,"./es-us.js":63425,"./es.js":54529,"./et":35203,"./et.js":35203,"./eu":70678,"./eu.js":70678,"./fa":83483,"./fa.js":83483,"./fi":96262,"./fi.js":96262,"./fil":52521,"./fil.js":52521,"./fo":34555,"./fo.js":34555,"./fr":63131,"./fr-ca":88239,"./fr-ca.js":88239,"./fr-ch":21702,"./fr-ch.js":21702,"./fr.js":63131,"./fy":267,"./fy.js":267,"./ga":23821,"./ga.js":23821,"./gd":71753,"./gd.js":71753,"./gl":4074,"./gl.js":4074,"./gom-deva":92762,"./gom-deva.js":92762,"./gom-latn":5969,"./gom-latn.js":5969,"./gu":82809,"./gu.js":82809,"./he":45402,"./he.js":45402,"./hi":315,"./hi.js":315,"./hr":10410,"./hr.js":10410,"./hu":38288,"./hu.js":38288,"./hy-am":67928,"./hy-am.js":67928,"./id":71334,"./id.js":71334,"./is":86959,"./is.js":86959,"./it":34864,"./it-ch":51124,"./it-ch.js":51124,"./it.js":34864,"./ja":36141,"./ja.js":36141,"./jv":29187,"./jv.js":29187,"./ka":42136,"./ka.js":42136,"./kk":94332,"./kk.js":94332,"./km":18607,"./km.js":18607,"./kn":84305,"./kn.js":84305,"./ko":70234,"./ko.js":70234,"./ku":16003,"./ku.js":16003,"./ky":75061,"./ky.js":75061,"./lb":32786,"./lb.js":32786,"./lo":66183,"./lo.js":66183,"./lt":50029,"./lt.js":50029,"./lv":24169,"./lv.js":24169,"./me":68577,"./me.js":68577,"./mi":68177,"./mi.js":68177,"./mk":50337,"./mk.js":50337,"./ml":65260,"./ml.js":65260,"./mn":52325,"./mn.js":52325,"./mr":14695,"./mr.js":14695,"./ms":75334,"./ms-my":37151,"./ms-my.js":37151,"./ms.js":75334,"./mt":63570,"./mt.js":63570,"./my":97963,"./my.js":97963,"./nb":88028,"./nb.js":88028,"./ne":86638,"./ne.js":86638,"./nl":50302,"./nl-be":66782,"./nl-be.js":66782,"./nl.js":50302,"./nn":33501,"./nn.js":33501,"./oc-lnc":50563,"./oc-lnc.js":50563,"./pa-in":50869,"./pa-in.js":50869,"./pl":65302,"./pl.js":65302,"./pt":49687,"./pt-br":74884,"./pt-br.js":74884,"./pt.js":49687,"./ro":79107,"./ro.js":79107,"./ru":33627,"./ru.js":33627,"./sd":30355,"./sd.js":30355,"./se":83427,"./se.js":83427,"./si":11848,"./si.js":11848,"./sk":54590,"./sk.js":54590,"./sl":20184,"./sl.js":20184,"./sq":56361,"./sq.js":56361,"./sr":78965,"./sr-cyrl":81287,"./sr-cyrl.js":81287,"./sr.js":78965,"./ss":25456,"./ss.js":25456,"./sv":70451,"./sv.js":70451,"./sw":77558,"./sw.js":77558,"./ta":51356,"./ta.js":51356,"./te":73693,"./te.js":73693,"./tet":21243,"./tet.js":21243,"./tg":42500,"./tg.js":42500,"./th":55768,"./th.js":55768,"./tk":77761,"./tk.js":77761,"./tl-ph":35780,"./tl-ph.js":35780,"./tlh":29590,"./tlh.js":29590,"./tr":33807,"./tr.js":33807,"./tzl":93857,"./tzl.js":93857,"./tzm":60654,"./tzm-latn":8806,"./tzm-latn.js":8806,"./tzm.js":60654,"./ug-cn":30845,"./ug-cn.js":30845,"./uk":19232,"./uk.js":19232,"./ur":47052,"./ur.js":47052,"./uz":77967,"./uz-latn":32233,"./uz-latn.js":32233,"./uz.js":77967,"./vi":98615,"./vi.js":98615,"./x-pseudo":12320,"./x-pseudo.js":12320,"./yo":31313,"./yo.js":31313,"./zh-cn":64490,"./zh-cn.js":64490,"./zh-hk":55910,"./zh-hk.js":55910,"./zh-mo":98262,"./zh-mo.js":98262,"./zh-tw":44223,"./zh-tw.js":44223};function t(c){var u=e(c);return n(u)}function e(c){if(!n.o(S,c)){var u=new Error("Cannot find module '"+c+"'");throw u.code="MODULE_NOT_FOUND",u}return S[c]}t.keys=function(){return Object.keys(S)},t.resolve=e,Ce.exports=t,t.id=46700},49126:function(Ce,E,n){"use strict";function s(d,Q,J,te){return new(J||(J=Promise))(function(G,ce){function _e(ue){try{ve(te.next(ue))}catch(lt){ce(lt)}}function Me(ue){try{ve(te.throw(ue))}catch(lt){ce(lt)}}function ve(ue){ue.done?G(ue.value):function K(G){return G instanceof J?G:new J(function(ce){ce(G)})}(ue.value).then(_e,Me)}ve((te=te.apply(d,Q||[])).next())})}function D(d){return this instanceof D?(this.v=d,this):new D(d)}function N(d,Q,J){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var K,te=J.apply(d,Q||[]),G=[];return K={},ce("next"),ce("throw"),ce("return"),K[Symbol.asyncIterator]=function(){return this},K;function ce(Xe){te[Xe]&&(K[Xe]=function(mt){return new Promise(function(wt,Pt){G.push([Xe,mt,wt,Pt])>1||_e(Xe,mt)})})}function _e(Xe,mt){try{!function Me(Xe){Xe.value instanceof D?Promise.resolve(Xe.value.v).then(ve,ue):lt(G[0][2],Xe)}(te[Xe](mt))}catch(wt){lt(G[0][3],wt)}}function ve(Xe){_e("next",Xe)}function ue(Xe){_e("throw",Xe)}function lt(Xe,mt){Xe(mt),G.shift(),G.length&&_e(G[0][0],G[0][1])}}function L(d){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var J,Q=d[Symbol.asyncIterator];return Q?Q.call(d):(d=function y(d){var Q="function"==typeof Symbol&&Symbol.iterator,J=Q&&d[Q],te=0;if(J)return J.call(d);if(d&&"number"==typeof d.length)return{next:function(){return d&&te>=d.length&&(d=void 0),{value:d&&d[te++],done:!d}}};throw new TypeError(Q?"Object is not iterable.":"Symbol.iterator is not defined.")}(d),J={},te("next"),te("throw"),te("return"),J[Symbol.asyncIterator]=function(){return this},J);function te(G){J[G]=d[G]&&function(ce){return new Promise(function(_e,Me){!function K(G,ce,_e,Me){Promise.resolve(Me).then(function(ve){G({value:ve,done:_e})},ce)}(_e,Me,(ce=d[G](ce)).done,ce.value)})}}}n.d(E,{mG:function(){return s},qq:function(){return D},FC:function(){return N},KL:function(){return L}})},34929:function(Ce,E,n){"use strict";function u(z,d,Q,J){var G,te=arguments.length,K=te<3?d:null===J?J=Object.getOwnPropertyDescriptor(d,Q):J;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)K=Reflect.decorate(z,d,Q,J);else for(var ce=z.length-1;ce>=0;ce--)(G=z[ce])&&(K=(te<3?G(K):te>3?G(d,Q,K):G(d,Q))||K);return te>3&&K&&Object.defineProperty(d,Q,K),K}function o(z,d){return function(Q,J){d(Q,J,z)}}function _(z,d){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(z,d)}n.d(E,{gn:function(){return u},fM:function(){return o},w6:function(){return _}})},35271:function(Ce){"use strict";var E=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],n="undefined"==typeof globalThis?global:globalThis;Ce.exports=function(){for(var t=[],e=0;en.length)&&(S=n.length);for(var t=0,e=new Array(S);t0&&h.selectedFile.emit(y.target.files[y.target.files.length-1]),y.preventDefault()},document.body.appendChild(this.fileInputElement);var b=this.fileInputElement;this.el.nativeElement.addEventListener("click",function(){b.click()})}}]),_}();return o.\u0275fac=function(s){return new(s||o)(e.Y36(e.SBq))},o.\u0275dir=e.lG2({type:o,selectors:[["","ncatsFileSelect",""]],inputs:{accept:"accept"},outputs:{selectedFile:"selectedFile"}}),o}(),u=function(){var o=(0,t.Z)(function _(){(0,S.Z)(this,_)});return o.\u0275fac=function(s){return new(s||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({imports:[[]]}),o}()},36513:function(Ce,E,n){"use strict";n.d(E,{wL:function(){return o},Pt:function(){return _}});var S=n(1884),t=n(39117),e=n(86613),c=n(36362),o=function(){var s=function(){function h(b){(0,t.Z)(this,h),this.platformId=b,this.jsDrawOnLoad=new e.vpe,this.randomId=Math.random().toString(36).replace("0.","")}return(0,S.Z)(h,[{key:"ngAfterViewInit",value:function(){this.loadEditor()}},{key:"loadEditor",value:function(){var T=this,y=0;(0,c.NF)(this.platformId)&&(window.JSDraw&&window.dojo&&window.scil&&window.scil.Utils&&window.scil.Utils._loadedAdditions?window.dojo.ready(function(){T.jsdraw=new window.JSDraw(T.randomId),T.jsDrawOnLoad.emit(T.jsdraw),window.afterSketcherMade&&window.afterSketcherMade()}):y<5e3&&(y++,setTimeout(function(){T.loadEditor()},10)))}}]),h}();return s.\u0275fac=function(b){return new(b||s)(e.Y36(e.Lbi))},s.\u0275cmp=e.Xpm({type:s,selectors:[["ncats-jsdraw-wrapper"]],outputs:{jsDrawOnLoad:"jsDrawOnLoad"},decls:1,vars:1,consts:[["dataformat","molfile",3,"id"]],template:function(b,T){1&b&&e._UZ(0,"div",0),2&b&&e.Q6J("id",T.randomId)},encapsulation:2}),s}(),_=function(){var s=(0,S.Z)(function h(){(0,t.Z)(this,h)});return s.\u0275fac=function(b){return new(b||s)},s.\u0275mod=e.oAB({type:s}),s.\u0275inj=e.cJS({imports:[[]]}),s}()},3380:function(Ce,E,n){"use strict";n.d(E,{XZ:function(){return _},QW:function(){return s}});var S=n(1884),t=n(39117),e=n(86613),c=n(50318),u=["ketcherFrame"],_=function(){var h=function(){function b(T){(0,t.Z)(this,b),this.sanitizer=T,this.ketcherOnLoad=new e.vpe}return(0,S.Z)(b,[{key:"ngOnInit",value:function(){var y=this;this.safeKetcherFilePath=this.sanitizer.bypassSecurityTrustResourceUrl(this.ketcherFilePath),this.ketcherFrame.nativeElement.onload=function(){y.ketcherOnLoad.emit(y.ketcherFrame.nativeElement.contentWindow.ketcher)}}}]),b}();return h.\u0275fac=function(T){return new(T||h)(e.Y36(c.H7))},h.\u0275cmp=e.Xpm({type:h,selectors:[["ncats-ketcher-wrapper"]],viewQuery:function(T,y){var Y;1&T&&e.Gf(u,7),2&T&&e.iGM(Y=e.CRH())&&(y.ketcherFrame=Y.first)},inputs:{ketcherFilePath:"ketcherFilePath"},outputs:{ketcherOnLoad:"ketcherOnLoad"},decls:2,vars:1,consts:[["id","ketcher-frame","scrolling","no",3,"src"],["ketcherFrame",""]],template:function(T,y){1&T&&e._UZ(0,"iframe",0,1),2&T&&e.Q6J("src",y.safeKetcherFilePath,e.uOi)},styles:["iframe[_ngcontent-%COMP%]{width:100%;height:100%;border:none}"]}),h}(),s=function(){var h=(0,S.Z)(function b(){(0,t.Z)(this,b)});return h.\u0275fac=function(T){return new(T||h)},h.\u0275mod=e.oAB({type:h}),h.\u0275inj=e.cJS({imports:[[]]}),h}()},31631:function(Ce,E,n){"use strict";n.d(E,{l3:function(){return u},_j:function(){return e},LC:function(){return c},ZN:function(){return L},jt:function(){return _},pV:function(){return B},F4:function(){return y},IO:function(){return D},vP:function(){return h},SB:function(){return T},oB:function(){return b},eR:function(){return Y},X$:function(){return o},ZE:function(){return j},k1:function(){return le}});var S=n(1884),t=n(39117),e=(0,S.Z)(function re(){(0,t.Z)(this,re)}),c=(0,S.Z)(function re(){(0,t.Z)(this,re)}),u="*";function o(re,W){return{type:7,name:re,definitions:W,options:{}}}function _(re){var W=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:4,styles:W,timings:re}}function h(re){var W=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:2,steps:re,options:W}}function b(re){return{type:6,styles:re,offset:null}}function T(re,W,$){return{type:0,name:re,styles:W,options:$}}function y(re){return{type:5,steps:re}}function Y(re,W){var $=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:1,expr:re,animation:W,options:$}}function B(){var re=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return{type:9,options:re}}function D(re,W){var $=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:11,selector:re,animation:W,options:$}}function I(re){Promise.resolve(null).then(re)}var L=function(){function re(){var W=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,$=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;(0,t.Z)(this,re),this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=W+$}return(0,S.Z)(re,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function($){return $()}),this._onDoneFns=[])}},{key:"onStart",value:function($){this._onStartFns.push($)}},{key:"onDone",value:function($){this._onDoneFns.push($)}},{key:"onDestroy",value:function($){this._onDestroyFns.push($)}},{key:"hasStarted",value:function(){return this._started}},{key:"init",value:function(){}},{key:"play",value:function(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}},{key:"triggerMicrotask",value:function(){var $=this;I(function(){return $._onFinish()})}},{key:"_onStart",value:function(){this._onStartFns.forEach(function($){return $()}),this._onStartFns=[]}},{key:"pause",value:function(){}},{key:"restart",value:function(){}},{key:"finish",value:function(){this._onFinish()}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(function($){return $()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this._started=!1}},{key:"setPosition",value:function($){this._position=this.totalTime?$*this.totalTime:1}},{key:"getPosition",value:function(){return this.totalTime?this._position/this.totalTime:1}},{key:"triggerCallback",value:function($){var be="start"==$?this._onStartFns:this._onDoneFns;be.forEach(function(z){return z()}),be.length=0}}]),re}(),j=function(){function re(W){var $=this;(0,t.Z)(this,re),this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=W;var be=0,z=0,d=0,Q=this.players.length;0==Q?I(function(){return $._onFinish()}):this.players.forEach(function(J){J.onDone(function(){++be==Q&&$._onFinish()}),J.onDestroy(function(){++z==Q&&$._onDestroy()}),J.onStart(function(){++d==Q&&$._onStart()})}),this.totalTime=this.players.reduce(function(J,te){return Math.max(J,te.totalTime)},0)}return(0,S.Z)(re,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function($){return $()}),this._onDoneFns=[])}},{key:"init",value:function(){this.players.forEach(function($){return $.init()})}},{key:"onStart",value:function($){this._onStartFns.push($)}},{key:"_onStart",value:function(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(function($){return $()}),this._onStartFns=[])}},{key:"onDone",value:function($){this._onDoneFns.push($)}},{key:"onDestroy",value:function($){this._onDestroyFns.push($)}},{key:"hasStarted",value:function(){return this._started}},{key:"play",value:function(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(function($){return $.play()})}},{key:"pause",value:function(){this.players.forEach(function($){return $.pause()})}},{key:"restart",value:function(){this.players.forEach(function($){return $.restart()})}},{key:"finish",value:function(){this._onFinish(),this.players.forEach(function($){return $.finish()})}},{key:"destroy",value:function(){this._onDestroy()}},{key:"_onDestroy",value:function(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(function($){return $.destroy()}),this._onDestroyFns.forEach(function($){return $()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this.players.forEach(function($){return $.reset()}),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"setPosition",value:function($){var be=$*this.totalTime;this.players.forEach(function(z){var d=z.totalTime?Math.min(1,be/z.totalTime):1;z.setPosition(d)})}},{key:"getPosition",value:function(){var $=this.players.reduce(function(be,z){return null===be||z.totalTime>be.totalTime?z:be},null);return null!=$?$.getPosition():0}},{key:"beforeDestroy",value:function(){this.players.forEach(function($){$.beforeDestroy&&$.beforeDestroy()})}},{key:"triggerCallback",value:function($){var be="start"==$?this._onStartFns:this._onDoneFns;be.forEach(function(z){return z()}),be.length=0}}]),re}(),le="!"},84128:function(Ce,E,n){"use strict";n.d(E,{rt:function(){return zt},s1:function(){return ue},$s:function(){return ce},Qr:function(){return gn},kH:function(){return Jn},mK:function(){return et},Em:function(){return lt},tE:function(){return jn},qV:function(){return Fe},qm:function(){return mn},ic:function(){return mt},Kd:function(){return Xt},X6:function(){return $e},yG:function(){return Ae}});var S=n(78170),t=n(97424),e=n(28042),c=n(46751),u=n(56101),o=n(39117),_=n(1884),s=n(36362),h=n(86613),b=n(14390),T=n(50253),y=n(17714),Y=n(76317),q=n(10745),B=n(75939),k=n(19337),D=n(71989),N=n(60116),I=n(50635),L=n(59295),j=n(87260),le=n(98977),re=n(68951),W=n(76484),$=n(35837);function Q(qe,pt){return(qe.getAttribute(pt)||"").match(/\S+/g)||[]}var te="cdk-describedby-message",K="cdk-describedby-host",G=0,ce=function(){var qe=function(){function pt(Ne,Re){(0,o.Z)(this,pt),this._platform=Re,this._messageRegistry=new Map,this._messagesContainer=null,this._id="".concat(G++),this._document=Ne}return(0,_.Z)(pt,[{key:"describe",value:function(Re,tt,Ke){if(this._canBeDescribed(Re,tt)){var vt=_e(tt,Ke);"string"!=typeof tt?(Me(tt),this._messageRegistry.set(vt,{messageElement:tt,referenceCount:0})):this._messageRegistry.has(vt)||this._createMessageElement(tt,Ke),this._isElementDescribedByMessage(Re,vt)||this._addMessageReference(Re,vt)}}},{key:"removeDescription",value:function(Re,tt,Ke){var vt;if(tt&&this._isElementNode(Re)){var Rt=_e(tt,Ke);if(this._isElementDescribedByMessage(Re,Rt)&&this._removeMessageReference(Re,Rt),"string"==typeof tt){var rn=this._messageRegistry.get(Rt);rn&&0===rn.referenceCount&&this._deleteMessageElement(Rt)}0===(null===(vt=this._messagesContainer)||void 0===vt?void 0:vt.childNodes.length)&&(this._messagesContainer.remove(),this._messagesContainer=null)}}},{key:"ngOnDestroy",value:function(){for(var Re,tt=this._document.querySelectorAll("[".concat(K,'="').concat(this._id,'"]')),Ke=0;Ke-1&&Ke!==Ne._activeItemIndex&&(Ne._activeItemIndex=Ke)}})}return(0,_.Z)(qe,[{key:"skipPredicate",value:function(Ne){return this._skipPredicateFn=Ne,this}},{key:"withWrap",value:function(){var Ne=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._wrap=Ne,this}},{key:"withVerticalOrientation",value:function(){var Ne=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._vertical=Ne,this}},{key:"withHorizontalOrientation",value:function(Ne){return this._horizontal=Ne,this}},{key:"withAllowedModifierKeys",value:function(Ne){return this._allowedModifierKeys=Ne,this}},{key:"withTypeAhead",value:function(){var Ne=this,Re=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200;return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe((0,k.b)(function(tt){return Ne._pressedLetters.push(tt)}),(0,D.b)(Re),(0,N.h)(function(){return Ne._pressedLetters.length>0}),(0,I.U)(function(){return Ne._pressedLetters.join("")})).subscribe(function(tt){for(var Ke=Ne._getItemsArray(),vt=1;vt0&&void 0!==arguments[0])||arguments[0];return this._homeAndEnd=Ne,this}},{key:"setActiveItem",value:function(Ne){var Re=this._activeItem;this.updateActiveItem(Ne),this._activeItem!==Re&&this.change.next(this._activeItemIndex)}},{key:"onKeydown",value:function(Ne){var Re=this,tt=Ne.keyCode,vt=["altKey","ctrlKey","metaKey","shiftKey"].every(function(Rt){return!Ne[Rt]||Re._allowedModifierKeys.indexOf(Rt)>-1});switch(tt){case B.Mf:return void this.tabOut.next();case B.JH:if(this._vertical&&vt){this.setNextItemActive();break}return;case B.LH:if(this._vertical&&vt){this.setPreviousItemActive();break}return;case B.SV:if(this._horizontal&&vt){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case B.oh:if(this._horizontal&&vt){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case B.Sd:if(this._homeAndEnd&&vt){this.setFirstItemActive();break}return;case B.uR:if(this._homeAndEnd&&vt){this.setLastItemActive();break}return;default:return void((vt||(0,B.Vb)(Ne,"shiftKey"))&&(Ne.key&&1===Ne.key.length?this._letterKeyStream.next(Ne.key.toLocaleUpperCase()):(tt>=B.A&&tt<=B.Z||tt>=B.xE&&tt<=B.aO)&&this._letterKeyStream.next(String.fromCharCode(tt))))}this._pressedLetters=[],Ne.preventDefault()}},{key:"activeItemIndex",get:function(){return this._activeItemIndex}},{key:"activeItem",get:function(){return this._activeItem}},{key:"isTyping",value:function(){return this._pressedLetters.length>0}},{key:"setFirstItemActive",value:function(){this._setActiveItemByIndex(0,1)}},{key:"setLastItemActive",value:function(){this._setActiveItemByIndex(this._items.length-1,-1)}},{key:"setNextItemActive",value:function(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}},{key:"setPreviousItemActive",value:function(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}},{key:"updateActiveItem",value:function(Ne){var Re=this._getItemsArray(),tt="number"==typeof Ne?Ne:Re.indexOf(Ne),Ke=Re[tt];this._activeItem=null==Ke?null:Ke,this._activeItemIndex=tt}},{key:"_setActiveItemByDelta",value:function(Ne){this._wrap?this._setActiveInWrapMode(Ne):this._setActiveInDefaultMode(Ne)}},{key:"_setActiveInWrapMode",value:function(Ne){for(var Re=this._getItemsArray(),tt=1;tt<=Re.length;tt++){var Ke=(this._activeItemIndex+Ne*tt+Re.length)%Re.length;if(!this._skipPredicateFn(Re[Ke]))return void this.setActiveItem(Ke)}}},{key:"_setActiveInDefaultMode",value:function(Ne){this._setActiveItemByIndex(this._activeItemIndex+Ne,Ne)}},{key:"_setActiveItemByIndex",value:function(Ne,Re){var tt=this._getItemsArray();if(tt[Ne]){for(;this._skipPredicateFn(tt[Ne]);)if(!tt[Ne+=Re])return;this.setActiveItem(Ne)}}},{key:"_getItemsArray",value:function(){return this._items instanceof h.n_E?this._items.toArray():this._items}}]),qe}(),ue=function(qe){(0,c.Z)(Ne,qe);var pt=(0,u.Z)(Ne);function Ne(){return(0,o.Z)(this,Ne),pt.apply(this,arguments)}return(0,_.Z)(Ne,[{key:"setActiveItem",value:function(tt){this.activeItem&&this.activeItem.setInactiveStyles(),(0,t.Z)((0,e.Z)(Ne.prototype),"setActiveItem",this).call(this,tt),this.activeItem&&this.activeItem.setActiveStyles()}}]),Ne}(ve),lt=function(qe){(0,c.Z)(Ne,qe);var pt=(0,u.Z)(Ne);function Ne(){var Re;return(0,o.Z)(this,Ne),(Re=pt.apply(this,arguments))._origin="program",Re}return(0,_.Z)(Ne,[{key:"setFocusOrigin",value:function(tt){return this._origin=tt,this}},{key:"setActiveItem",value:function(tt){(0,t.Z)((0,e.Z)(Ne.prototype),"setActiveItem",this).call(this,tt),this.activeItem&&this.activeItem.focus(this._origin)}}]),Ne}(ve),mt=function(){var qe=function(){function pt(Ne){(0,o.Z)(this,pt),this._platform=Ne}return(0,_.Z)(pt,[{key:"isDisabled",value:function(Re){return Re.hasAttribute("disabled")}},{key:"isVisible",value:function(Re){return function Pt(qe){return!!(qe.offsetWidth||qe.offsetHeight||"function"==typeof qe.getClientRects&&qe.getClientRects().length)}(Re)&&"visible"===getComputedStyle(Re).visibility}},{key:"isTabbable",value:function(Re){if(!this._platform.isBrowser)return!1;var tt=function wt(qe){try{return qe.frameElement}catch(pt){return null}}(function xe(qe){return qe.ownerDocument&&qe.ownerDocument.defaultView||window}(Re));if(tt&&(-1===nt(tt)||!this.isVisible(tt)))return!1;var Ke=Re.nodeName.toLowerCase(),vt=nt(Re);return Re.hasAttribute("contenteditable")?-1!==vt:!("iframe"===Ke||"object"===Ke||this._platform.WEBKIT&&this._platform.IOS&&!function at(qe){var pt=qe.nodeName.toLowerCase(),Ne="input"===pt&&qe.type;return"text"===Ne||"password"===Ne||"select"===pt||"textarea"===pt}(Re))&&("audio"===Ke?!!Re.hasAttribute("controls")&&-1!==vt:"video"===Ke?-1!==vt&&(null!==vt||this._platform.FIREFOX||Re.hasAttribute("controls")):Re.tabIndex>=0)}},{key:"isFocusable",value:function(Re,tt){return function We(qe){return!function ze(qe){return function ct(qe){return"input"==qe.nodeName.toLowerCase()}(qe)&&"hidden"==qe.type}(qe)&&(function Pe(qe){var pt=qe.nodeName.toLowerCase();return"input"===pt||"select"===pt||"button"===pt||"textarea"===pt}(qe)||function ft(qe){return function Ee(qe){return"a"==qe.nodeName.toLowerCase()}(qe)&&qe.hasAttribute("href")}(qe)||qe.hasAttribute("contenteditable")||st(qe))}(Re)&&!this.isDisabled(Re)&&((null==tt?void 0:tt.ignoreVisibility)||this.isVisible(Re))}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.LFG(b.t4))},qe.\u0275prov=h.Yz7({token:qe,factory:qe.\u0275fac,providedIn:"root"}),qe}();function st(qe){if(!qe.hasAttribute("tabindex")||void 0===qe.tabIndex)return!1;var pt=qe.getAttribute("tabindex");return!(!pt||isNaN(parseInt(pt,10)))}function nt(qe){if(!st(qe))return null;var pt=parseInt(qe.getAttribute("tabindex")||"",10);return isNaN(pt)?-1:pt}var ut=function(){function qe(pt,Ne,Re,tt){var Ke=this,vt=arguments.length>4&&void 0!==arguments[4]&&arguments[4];(0,o.Z)(this,qe),this._element=pt,this._checker=Ne,this._ngZone=Re,this._document=tt,this._hasAttached=!1,this.startAnchorListener=function(){return Ke.focusLastTabbableElement()},this.endAnchorListener=function(){return Ke.focusFirstTabbableElement()},this._enabled=!0,vt||this.attachAnchors()}return(0,_.Z)(qe,[{key:"enabled",get:function(){return this._enabled},set:function(Ne){this._enabled=Ne,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(Ne,this._startAnchor),this._toggleAnchorTabIndex(Ne,this._endAnchor))}},{key:"destroy",value:function(){var Ne=this._startAnchor,Re=this._endAnchor;Ne&&(Ne.removeEventListener("focus",this.startAnchorListener),Ne.remove()),Re&&(Re.removeEventListener("focus",this.endAnchorListener),Re.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}},{key:"attachAnchors",value:function(){var Ne=this;return!!this._hasAttached||(this._ngZone.runOutsideAngular(function(){Ne._startAnchor||(Ne._startAnchor=Ne._createAnchor(),Ne._startAnchor.addEventListener("focus",Ne.startAnchorListener)),Ne._endAnchor||(Ne._endAnchor=Ne._createAnchor(),Ne._endAnchor.addEventListener("focus",Ne.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}},{key:"focusInitialElementWhenReady",value:function(Ne){var Re=this;return new Promise(function(tt){Re._executeOnStable(function(){return tt(Re.focusInitialElement(Ne))})})}},{key:"focusFirstTabbableElementWhenReady",value:function(Ne){var Re=this;return new Promise(function(tt){Re._executeOnStable(function(){return tt(Re.focusFirstTabbableElement(Ne))})})}},{key:"focusLastTabbableElementWhenReady",value:function(Ne){var Re=this;return new Promise(function(tt){Re._executeOnStable(function(){return tt(Re.focusLastTabbableElement(Ne))})})}},{key:"_getRegionBoundary",value:function(Ne){var Re=this._element.querySelectorAll("[cdk-focus-region-".concat(Ne,"], ")+"[cdkFocusRegion".concat(Ne,"], ")+"[cdk-focus-".concat(Ne,"]"));return"start"==Ne?Re.length?Re[0]:this._getFirstTabbableElement(this._element):Re.length?Re[Re.length-1]:this._getLastTabbableElement(this._element)}},{key:"focusInitialElement",value:function(Ne){var Re=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(Re){if(!this._checker.isFocusable(Re)){var tt=this._getFirstTabbableElement(Re);return null==tt||tt.focus(Ne),!!tt}return Re.focus(Ne),!0}return this.focusFirstTabbableElement(Ne)}},{key:"focusFirstTabbableElement",value:function(Ne){var Re=this._getRegionBoundary("start");return Re&&Re.focus(Ne),!!Re}},{key:"focusLastTabbableElement",value:function(Ne){var Re=this._getRegionBoundary("end");return Re&&Re.focus(Ne),!!Re}},{key:"hasAttached",value:function(){return this._hasAttached}},{key:"_getFirstTabbableElement",value:function(Ne){if(this._checker.isFocusable(Ne)&&this._checker.isTabbable(Ne))return Ne;for(var Re=Ne.children,tt=0;tt=0;tt--){var Ke=Re[tt].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(Re[tt]):null;if(Ke)return Ke}return null}},{key:"_createAnchor",value:function(){var Ne=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,Ne),Ne.classList.add("cdk-visually-hidden"),Ne.classList.add("cdk-focus-trap-anchor"),Ne.setAttribute("aria-hidden","true"),Ne}},{key:"_toggleAnchorTabIndex",value:function(Ne,Re){Ne?Re.setAttribute("tabindex","0"):Re.removeAttribute("tabindex")}},{key:"toggleAnchors",value:function(Ne){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(Ne,this._startAnchor),this._toggleAnchorTabIndex(Ne,this._endAnchor))}},{key:"_executeOnStable",value:function(Ne){this._ngZone.isStable?Ne():this._ngZone.onStable.pipe((0,L.q)(1)).subscribe(Ne)}}]),qe}(),Fe=function(){var qe=function(){function pt(Ne,Re,tt){(0,o.Z)(this,pt),this._checker=Ne,this._ngZone=Re,this._document=tt}return(0,_.Z)(pt,[{key:"create",value:function(Re){var tt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new ut(Re,this._checker,this._ngZone,this._document,tt)}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.LFG(mt),h.LFG(h.R0b),h.LFG(s.K0))},qe.\u0275prov=h.Yz7({token:qe,factory:qe.\u0275fac,providedIn:"root"}),qe}(),et=function(){var qe=function(){function pt(Ne,Re,tt){(0,o.Z)(this,pt),this._elementRef=Ne,this._focusTrapFactory=Re,this._previouslyFocusedElement=null,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}return(0,_.Z)(pt,[{key:"enabled",get:function(){return this.focusTrap.enabled},set:function(Re){this.focusTrap.enabled=(0,W.Ig)(Re)}},{key:"autoCapture",get:function(){return this._autoCapture},set:function(Re){this._autoCapture=(0,W.Ig)(Re)}},{key:"ngOnDestroy",value:function(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}},{key:"ngAfterContentInit",value:function(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}},{key:"ngDoCheck",value:function(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}},{key:"ngOnChanges",value:function(Re){var tt=Re.autoCapture;tt&&!tt.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}},{key:"_captureFocus",value:function(){this._previouslyFocusedElement=(0,b.ht)(),this.focusTrap.focusInitialElementWhenReady()}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.Y36(h.SBq),h.Y36(Fe),h.Y36(s.K0))},qe.\u0275dir=h.lG2({type:qe,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:["cdkTrapFocus","enabled"],autoCapture:["cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["cdkTrapFocus"],features:[h.TTD]}),qe}();function $e(qe){return 0===qe.buttons||0===qe.offsetX&&0===qe.offsetY}function Ae(qe){var pt=qe.touches&&qe.touches[0]||qe.changedTouches&&qe.changedTouches[0];return!(!pt||-1!==pt.identifier||null!=pt.radiusX&&1!==pt.radiusX||null!=pt.radiusY&&1!==pt.radiusY)}var X=new h.OlP("cdk-input-modality-detector-options"),ne={ignoreKeys:[B.zL,B.jx,B.b2,B.MW,B.JU]},Oe=(0,b.i$)({passive:!0,capture:!0}),He=function(){var qe=function(){function pt(Ne,Re,tt,Ke){var vt=this;(0,o.Z)(this,pt),this._platform=Ne,this._mostRecentTarget=null,this._modality=new Y.X(null),this._lastTouchMs=0,this._onKeydown=function(Rt){var rn,Nn;(null===(Nn=null===(rn=vt._options)||void 0===rn?void 0:rn.ignoreKeys)||void 0===Nn?void 0:Nn.some(function($t){return $t===Rt.keyCode}))||(vt._modality.next("keyboard"),vt._mostRecentTarget=(0,b.sA)(Rt))},this._onMousedown=function(Rt){Date.now()-vt._lastTouchMs<650||(vt._modality.next($e(Rt)?"keyboard":"mouse"),vt._mostRecentTarget=(0,b.sA)(Rt))},this._onTouchstart=function(Rt){Ae(Rt)?vt._modality.next("keyboard"):(vt._lastTouchMs=Date.now(),vt._modality.next("touch"),vt._mostRecentTarget=(0,b.sA)(Rt))},this._options=Object.assign(Object.assign({},ne),Ke),this.modalityDetected=this._modality.pipe((0,j.T)(1)),this.modalityChanged=this.modalityDetected.pipe((0,le.x)()),Ne.isBrowser&&Re.runOutsideAngular(function(){tt.addEventListener("keydown",vt._onKeydown,Oe),tt.addEventListener("mousedown",vt._onMousedown,Oe),tt.addEventListener("touchstart",vt._onTouchstart,Oe)})}return(0,_.Z)(pt,[{key:"mostRecentModality",get:function(){return this._modality.value}},{key:"ngOnDestroy",value:function(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,Oe),document.removeEventListener("mousedown",this._onMousedown,Oe),document.removeEventListener("touchstart",this._onTouchstart,Oe))}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.LFG(b.t4),h.LFG(h.R0b),h.LFG(s.K0),h.LFG(X,8))},qe.\u0275prov=h.Yz7({token:qe,factory:qe.\u0275fac,providedIn:"root"}),qe}(),At=new h.OlP("liveAnnouncerElement",{providedIn:"root",factory:function Ft(){return null}}),sn=new h.OlP("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),Xt=function(){var qe=function(){function pt(Ne,Re,tt,Ke){(0,o.Z)(this,pt),this._ngZone=Re,this._defaultOptions=Ke,this._document=tt,this._liveElement=Ne||this._createLiveElement()}return(0,_.Z)(pt,[{key:"announce",value:function(Re){for(var vt,Rt,tt=this,Ke=this._defaultOptions,rn=arguments.length,Nn=new Array(rn>1?rn-1:0),$t=1;$t1&&void 0!==arguments[1]&&arguments[1],Ke=(0,W.fI)(Re);if(!this._platform.isBrowser||1!==Ke.nodeType)return(0,q.of)(null);var vt=(0,b.kV)(Ke)||this._getDocument(),Rt=this._elementInfo.get(Ke);if(Rt)return tt&&(Rt.checkChildren=!0),Rt.subject;var rn={checkChildren:tt,subject:new T.x,rootNode:vt};return this._elementInfo.set(Ke,rn),this._registerGlobalListeners(rn),rn.subject}},{key:"stopMonitoring",value:function(Re){var tt=(0,W.fI)(Re),Ke=this._elementInfo.get(tt);Ke&&(Ke.subject.complete(),this._setClasses(tt),this._elementInfo.delete(tt),this._removeGlobalListeners(Ke))}},{key:"focusVia",value:function(Re,tt,Ke){var vt=this,Rt=(0,W.fI)(Re);Rt===this._getDocument().activeElement?this._getClosestElementsInfo(Rt).forEach(function(Nn){var $t=(0,S.Z)(Nn,2);return vt._originChanged($t[0],tt,$t[1])}):(this._setOrigin(tt),"function"==typeof Rt.focus&&Rt.focus(Ke))}},{key:"ngOnDestroy",value:function(){var Re=this;this._elementInfo.forEach(function(tt,Ke){return Re.stopMonitoring(Ke)})}},{key:"_getDocument",value:function(){return this._document||document}},{key:"_getWindow",value:function(){return this._getDocument().defaultView||window}},{key:"_getFocusOrigin",value:function(Re){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(Re)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}},{key:"_shouldBeAttributedToTouch",value:function(Re){return 1===this._detectionMode||!!(null==Re?void 0:Re.contains(this._inputModalityDetector._mostRecentTarget))}},{key:"_setClasses",value:function(Re,tt){Re.classList.toggle("cdk-focused",!!tt),Re.classList.toggle("cdk-touch-focused","touch"===tt),Re.classList.toggle("cdk-keyboard-focused","keyboard"===tt),Re.classList.toggle("cdk-mouse-focused","mouse"===tt),Re.classList.toggle("cdk-program-focused","program"===tt)}},{key:"_setOrigin",value:function(Re){var tt=this,Ke=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._ngZone.runOutsideAngular(function(){tt._origin=Re,tt._originFromTouchInteraction="touch"===Re&&Ke,0===tt._detectionMode&&(clearTimeout(tt._originTimeoutId),tt._originTimeoutId=setTimeout(function(){return tt._origin=null},tt._originFromTouchInteraction?650:1))})}},{key:"_onFocus",value:function(Re,tt){var Ke=this._elementInfo.get(tt),vt=(0,b.sA)(Re);!Ke||!Ke.checkChildren&&tt!==vt||this._originChanged(tt,this._getFocusOrigin(vt),Ke)}},{key:"_onBlur",value:function(Re,tt){var Ke=this._elementInfo.get(tt);!Ke||Ke.checkChildren&&Re.relatedTarget instanceof Node&&tt.contains(Re.relatedTarget)||(this._setClasses(tt),this._emitOrigin(Ke.subject,null))}},{key:"_emitOrigin",value:function(Re,tt){this._ngZone.run(function(){return Re.next(tt)})}},{key:"_registerGlobalListeners",value:function(Re){var tt=this;if(this._platform.isBrowser){var Ke=Re.rootNode,vt=this._rootNodeFocusListenerCount.get(Ke)||0;vt||this._ngZone.runOutsideAngular(function(){Ke.addEventListener("focus",tt._rootNodeFocusAndBlurListener,hn),Ke.addEventListener("blur",tt._rootNodeFocusAndBlurListener,hn)}),this._rootNodeFocusListenerCount.set(Ke,vt+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(function(){tt._getWindow().addEventListener("focus",tt._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe((0,re.R)(this._stopInputModalityDetector)).subscribe(function(Rt){tt._setOrigin(Rt,!0)}))}}},{key:"_removeGlobalListeners",value:function(Re){var tt=Re.rootNode;if(this._rootNodeFocusListenerCount.has(tt)){var Ke=this._rootNodeFocusListenerCount.get(tt);Ke>1?this._rootNodeFocusListenerCount.set(tt,Ke-1):(tt.removeEventListener("focus",this._rootNodeFocusAndBlurListener,hn),tt.removeEventListener("blur",this._rootNodeFocusAndBlurListener,hn),this._rootNodeFocusListenerCount.delete(tt))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}},{key:"_originChanged",value:function(Re,tt,Ke){this._setClasses(Re,tt),this._emitOrigin(Ke.subject,tt),this._lastFocusOrigin=tt}},{key:"_getClosestElementsInfo",value:function(Re){var tt=[];return this._elementInfo.forEach(function(Ke,vt){(vt===Re||Ke.checkChildren&&vt.contains(Re))&&tt.push([vt,Ke])}),tt}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.LFG(h.R0b),h.LFG(b.t4),h.LFG(He),h.LFG(s.K0,8),h.LFG(vn,8))},qe.\u0275prov=h.Yz7({token:qe,factory:qe.\u0275fac,providedIn:"root"}),qe}(),Jn=function(){var qe=function(){function pt(Ne,Re){(0,o.Z)(this,pt),this._elementRef=Ne,this._focusMonitor=Re,this.cdkFocusChange=new h.vpe}return(0,_.Z)(pt,[{key:"ngAfterViewInit",value:function(){var Re=this,tt=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(tt,1===tt.nodeType&&tt.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(function(Ke){return Re.cdkFocusChange.emit(Ke)})}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.Y36(h.SBq),h.Y36(jn))},qe.\u0275dir=h.lG2({type:qe,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"}}),qe}(),oi="cdk-high-contrast-black-on-white",ri="cdk-high-contrast-white-on-black",un="cdk-high-contrast-active",mn=function(){var qe=function(){function pt(Ne,Re){(0,o.Z)(this,pt),this._platform=Ne,this._document=Re}return(0,_.Z)(pt,[{key:"getHighContrastMode",value:function(){if(!this._platform.isBrowser)return 0;var Re=this._document.createElement("div");Re.style.backgroundColor="rgb(1,2,3)",Re.style.position="absolute",this._document.body.appendChild(Re);var tt=this._document.defaultView||window,Ke=tt&&tt.getComputedStyle?tt.getComputedStyle(Re):null,vt=(Ke&&Ke.backgroundColor||"").replace(/ /g,"");switch(Re.remove(),vt){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}},{key:"_applyBodyHighContrastModeCssClasses",value:function(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){var Re=this._document.body.classList;Re.remove(un),Re.remove(oi),Re.remove(ri),this._hasCheckedHighContrastMode=!0;var tt=this.getHighContrastMode();1===tt?(Re.add(un),Re.add(oi)):2===tt&&(Re.add(un),Re.add(ri))}}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.LFG(b.t4),h.LFG(s.K0))},qe.\u0275prov=h.Yz7({token:qe,factory:qe.\u0275fac,providedIn:"root"}),qe}(),zt=function(){var qe=(0,_.Z)(function pt(Ne){(0,o.Z)(this,pt),Ne._applyBodyHighContrastModeCssClasses()});return qe.\u0275fac=function(Ne){return new(Ne||qe)(h.LFG(mn))},qe.\u0275mod=h.oAB({type:qe}),qe.\u0275inj=h.cJS({imports:[[b.ud,$.Q8]]}),qe}()},51588:function(Ce,E,n){"use strict";n.d(E,{vT:function(){return T},Is:function(){return h}});var S=n(39117),t=n(1884),e=n(86613),c=n(36362),u=new e.OlP("cdk-dir-doc",{providedIn:"root",factory:function o(){return(0,e.f3M)(c.K0)}}),_=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i,h=function(){var y=function(){function Y(q){(0,S.Z)(this,Y),this.value="ltr",this.change=new e.vpe,q&&(this.value=function s(y){var Y=(null==y?void 0:y.toLowerCase())||"";return"auto"===Y&&"undefined"!=typeof navigator&&(null==navigator?void 0:navigator.language)?_.test(navigator.language)?"rtl":"ltr":"rtl"===Y?"rtl":"ltr"}((q.body?q.body.dir:null)||(q.documentElement?q.documentElement.dir:null)||"ltr"))}return(0,t.Z)(Y,[{key:"ngOnDestroy",value:function(){this.change.complete()}}]),Y}();return y.\u0275fac=function(q){return new(q||y)(e.LFG(u,8))},y.\u0275prov=e.Yz7({token:y,factory:y.\u0275fac,providedIn:"root"}),y}(),T=function(){var y=(0,t.Z)(function Y(){(0,S.Z)(this,Y)});return y.\u0275fac=function(q){return new(q||y)},y.\u0275mod=e.oAB({type:y}),y.\u0275inj=e.cJS({}),y}()},76484:function(Ce,E,n){"use strict";n.d(E,{t6:function(){return u},Eq:function(){return o},Ig:function(){return e},HM:function(){return _},fI:function(){return s},su:function(){return c},du:function(){return h}});var S=n(44014),t=n(86613);function e(b){return null!=b&&"false"!=="".concat(b)}function c(b){var T=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return u(b)?Number(b):T}function u(b){return!isNaN(parseFloat(b))&&!isNaN(Number(b))}function o(b){return Array.isArray(b)?b:[b]}function _(b){return null==b?"":"string"==typeof b?b:"".concat(b,"px")}function s(b){return b instanceof t.SBq?b.nativeElement:b}function h(b){var T=arguments.length>1&&void 0!==arguments[1]?arguments[1]:/\s+/,y=[];if(null!=b){var B,Y=Array.isArray(b)?b:"".concat(b).split(T),q=(0,S.Z)(Y);try{for(q.s();!(B=q.n()).done;){var k=B.value,D="".concat(k).trim();D&&y.push(D)}}catch(N){q.e(N)}finally{q.f()}}return y}},89502:function(Ce,E,n){"use strict";n.d(E,{P3:function(){return y},o2:function(){return b},Ov:function(){return B},A8:function(){return D},yy:function(){return Y},eX:function(){return q},k:function(){return N},Z9:function(){return T}});var S=n(44014),t=n(46751),e=n(56101),c=n(1884),u=n(39117),o=n(14437),_=n(10745),s=n(50253),h=n(86613),b=(0,c.Z)(function I(){(0,u.Z)(this,I)});function T(I){return I&&"function"==typeof I.connect}var y=function(I){(0,t.Z)(j,I);var L=(0,e.Z)(j);function j(le){var re;return(0,u.Z)(this,j),(re=L.call(this))._data=le,re}return(0,c.Z)(j,[{key:"connect",value:function(){return(0,o.b)(this._data)?this._data:(0,_.of)(this._data)}},{key:"disconnect",value:function(){}}]),j}(b),Y=function(){function I(){(0,u.Z)(this,I)}return(0,c.Z)(I,[{key:"applyChanges",value:function(j,le,re,W,$){j.forEachOperation(function(be,z,d){var Q,J;if(null==be.previousIndex){var te=re(be,z,d);Q=le.createEmbeddedView(te.templateRef,te.context,te.index),J=1}else null==d?(le.remove(z),J=3):(Q=le.get(z),le.move(Q,d),J=2);$&&$({context:null==Q?void 0:Q.context,operation:J,record:be})})}},{key:"detach",value:function(){}}]),I}(),q=function(){function I(){(0,u.Z)(this,I),this.viewCacheSize=20,this._viewCache=[]}return(0,c.Z)(I,[{key:"applyChanges",value:function(j,le,re,W,$){var be=this;j.forEachOperation(function(z,d,Q){var J,te;null==z.previousIndex?te=(J=be._insertView(function(){return re(z,d,Q)},Q,le,W(z)))?1:0:null==Q?(be._detachAndCacheView(d,le),te=3):(J=be._moveView(d,Q,le,W(z)),te=2),$&&$({context:null==J?void 0:J.context,operation:te,record:z})})}},{key:"detach",value:function(){var le,j=(0,S.Z)(this._viewCache);try{for(j.s();!(le=j.n()).done;)le.value.destroy()}catch(W){j.e(W)}finally{j.f()}this._viewCache=[]}},{key:"_insertView",value:function(j,le,re,W){var $=this._insertViewFromCache(le,re);if(!$){var be=j();return re.createEmbeddedView(be.templateRef,be.context,be.index)}$.context.$implicit=W}},{key:"_detachAndCacheView",value:function(j,le){var re=le.detach(j);this._maybeCacheView(re,le)}},{key:"_moveView",value:function(j,le,re,W){var $=re.get(j);return re.move($,le),$.context.$implicit=W,$}},{key:"_maybeCacheView",value:function(j,le){if(this._viewCache.length0&&void 0!==arguments[0]&&arguments[0],le=arguments.length>1?arguments[1]:void 0,re=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];(0,u.Z)(this,I),this._multiple=j,this._emitChanges=re,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new s.x,le&&le.length&&(j?le.forEach(function(W){return L._markSelected(W)}):this._markSelected(le[0]),this._selectedToEmit.length=0)}return(0,c.Z)(I,[{key:"selected",get:function(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}},{key:"select",value:function(){for(var j=this,le=arguments.length,re=new Array(le),W=0;W1?ea-1:0),Ii=1;IiOe.height||me.scrollWidth>Oe.width}}]),Ae}(),z=function(){function Ae(X,ne,me,Oe){var He=this;(0,s.Z)(this,Ae),this._scrollDispatcher=X,this._ngZone=ne,this._viewportRuler=me,this._config=Oe,this._scrollSubscription=null,this._detach=function(){He.disable(),He._overlayRef.hasAttached()&&He._ngZone.run(function(){return He._overlayRef.detach()})}}return(0,h.Z)(Ae,[{key:"attach",value:function(ne){this._overlayRef=ne}},{key:"enable",value:function(){var ne=this;if(!this._scrollSubscription){var me=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=me.subscribe(function(){var Oe=ne._viewportRuler.getViewportScrollPosition().top;Math.abs(Oe-ne._initialScrollPosition)>ne._config.threshold?ne._detach():ne._overlayRef.updatePosition()})):this._scrollSubscription=me.subscribe(this._detach)}}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),Ae}(),d=function(){function Ae(){(0,s.Z)(this,Ae)}return(0,h.Z)(Ae,[{key:"enable",value:function(){}},{key:"disable",value:function(){}},{key:"attach",value:function(){}}]),Ae}();function Q(Ae,X){return X.some(function(ne){return Ae.bottomne.bottom||Ae.rightne.right})}function J(Ae,X){return X.some(function(ne){return Ae.topne.bottom||Ae.leftne.right})}var te=function(){function Ae(X,ne,me,Oe){(0,s.Z)(this,Ae),this._scrollDispatcher=X,this._viewportRuler=ne,this._ngZone=me,this._config=Oe,this._scrollSubscription=null}return(0,h.Z)(Ae,[{key:"attach",value:function(ne){this._overlayRef=ne}},{key:"enable",value:function(){var ne=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(ne._overlayRef.updatePosition(),ne._config&&ne._config.autoClose){var Oe=ne._overlayRef.overlayElement.getBoundingClientRect(),He=ne._viewportRuler.getViewportSize(),At=He.width,Ft=He.height;Q(Oe,[{width:At,height:Ft,bottom:Ft,right:At,top:0,left:0}])&&(ne.disable(),ne._ngZone.run(function(){return ne._overlayRef.detach()}))}}))}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),Ae}(),K=function(){var Ae=(0,h.Z)(function X(ne,me,Oe,He){var At=this;(0,s.Z)(this,X),this._scrollDispatcher=ne,this._viewportRuler=me,this._ngZone=Oe,this.noop=function(){return new d},this.close=function(Ft){return new z(At._scrollDispatcher,At._ngZone,At._viewportRuler,Ft)},this.block=function(){return new $(At._viewportRuler,At._document)},this.reposition=function(Ft){return new te(At._scrollDispatcher,At._viewportRuler,At._ngZone,Ft)},this._document=He});return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.LFG(b.mF),y.LFG(b.rL),y.LFG(y.R0b),y.LFG(T.K0))},Ae.\u0275prov=y.Yz7({token:Ae,factory:Ae.\u0275fac,providedIn:"root"}),Ae}(),G=(0,h.Z)(function Ae(X){if((0,s.Z)(this,Ae),this.scrollStrategy=new d,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,X)for(var me=0,Oe=Object.keys(X);meoi&&(oi=zt,Jn=mn)}}catch(qe){ri.e(qe)}finally{ri.f()}return this._isPushed=!1,void this._applyPosition(Jn.position,Jn.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(Ft.position,Ft.originPoint);this._applyPosition(Ft.position,Ft.originPoint)}}},{key:"detach",value:function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}},{key:"dispose",value:function(){this._isDisposed||(this._boundingBox&&Pe(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(mt),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}},{key:"reapplyLastPosition",value:function(){if(!this._isDisposed&&this._platform.isBrowser){var ne=this._lastPosition;if(ne){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();var me=this._getOriginPoint(this._originRect,this._containerRect,ne);this._applyPosition(ne,me)}else this.apply()}}},{key:"withScrollableContainers",value:function(ne){return this._scrollables=ne,this}},{key:"withPositions",value:function(ne){return this._preferredPositions=ne,-1===ne.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}},{key:"withViewportMargin",value:function(ne){return this._viewportMargin=ne,this}},{key:"withFlexibleDimensions",value:function(){var ne=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._hasFlexibleDimensions=ne,this}},{key:"withGrowAfterOpen",value:function(){var ne=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._growAfterOpen=ne,this}},{key:"withPush",value:function(){var ne=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._canPush=ne,this}},{key:"withLockedPosition",value:function(){var ne=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._positionLocked=ne,this}},{key:"setOrigin",value:function(ne){return this._origin=ne,this}},{key:"withDefaultOffsetX",value:function(ne){return this._offsetX=ne,this}},{key:"withDefaultOffsetY",value:function(ne){return this._offsetY=ne,this}},{key:"withTransformOriginOn",value:function(ne){return this._transformOriginSelector=ne,this}},{key:"_getOriginPoint",value:function(ne,me,Oe){var He,sn;if("center"==Oe.originX)He=ne.left+ne.width/2;else{var At=this._isRtl()?ne.right:ne.left,Ft=this._isRtl()?ne.left:ne.right;He="start"==Oe.originX?At:Ft}return me.left<0&&(He-=me.left),sn="center"==Oe.originY?ne.top+ne.height/2:"top"==Oe.originY?ne.top:ne.bottom,me.top<0&&(sn-=me.top),{x:He,y:sn}}},{key:"_getOverlayPoint",value:function(ne,me,Oe){var He;return He="center"==Oe.overlayX?-me.width/2:"start"===Oe.overlayX?this._isRtl()?-me.width:0:this._isRtl()?0:-me.width,{x:ne.x+He,y:ne.y+("center"==Oe.overlayY?-me.height/2:"top"==Oe.overlayY?0:-me.height)}}},{key:"_getOverlayFit",value:function(ne,me,Oe,He){var At=ft(me),Ft=ne.x,sn=ne.y,Xt=this._getOffset(He,"x"),gn=this._getOffset(He,"y");Xt&&(Ft+=Xt),gn&&(sn+=gn);var jn=0-sn,Jn=sn+At.height-Oe.height,oi=this._subtractOverflows(At.width,0-Ft,Ft+At.width-Oe.width),ri=this._subtractOverflows(At.height,jn,Jn),un=oi*ri;return{visibleArea:un,isCompletelyWithinViewport:At.width*At.height===un,fitsInViewportVertically:ri===At.height,fitsInViewportHorizontally:oi==At.width}}},{key:"_canFitWithFlexibleDimensions",value:function(ne,me,Oe){if(this._hasFlexibleDimensions){var He=Oe.bottom-me.y,At=Oe.right-me.x,Ft=ze(this._overlayRef.getConfig().minHeight),sn=ze(this._overlayRef.getConfig().minWidth);return(ne.fitsInViewportVertically||null!=Ft&&Ft<=He)&&(ne.fitsInViewportHorizontally||null!=sn&&sn<=At)}return!1}},{key:"_pushOverlayOnScreen",value:function(ne,me,Oe){if(this._previousPushAmount&&this._positionLocked)return{x:ne.x+this._previousPushAmount.x,y:ne.y+this._previousPushAmount.y};var vn,hn,He=ft(me),At=this._viewportRect,Ft=Math.max(ne.x+He.width-At.width,0),sn=Math.max(ne.y+He.height-At.height,0),Xt=Math.max(At.top-Oe.top-ne.y,0),gn=Math.max(At.left-Oe.left-ne.x,0);return this._previousPushAmount={x:vn=He.width<=At.width?gn||-Ft:ne.xgn&&!this._isInitialRender&&!this._growAfterOpen&&(Ft=ne.y-gn/2)}if("end"===me.overlayX&&!He||"start"===me.overlayX&&He)oi=Oe.width-ne.x+this._viewportMargin,jn=ne.x-this._viewportMargin;else if("start"===me.overlayX&&!He||"end"===me.overlayX&&He)Jn=ne.x,jn=Oe.right-ne.x;else{var ri=Math.min(Oe.right-ne.x+Oe.left,ne.x),un=this._lastBoundingBoxSize.width;Jn=ne.x-ri,(jn=2*ri)>un&&!this._isInitialRender&&!this._growAfterOpen&&(Jn=ne.x-un/2)}return{top:Ft,left:Jn,bottom:sn,right:oi,width:jn,height:At}}},{key:"_setBoundingBoxStyles",value:function(ne,me){var Oe=this._calculateBoundingBoxRect(ne,me);!this._isInitialRender&&!this._growAfterOpen&&(Oe.height=Math.min(Oe.height,this._lastBoundingBoxSize.height),Oe.width=Math.min(Oe.width,this._lastBoundingBoxSize.width));var He={};if(this._hasExactPosition())He.top=He.left="0",He.bottom=He.right=He.maxHeight=He.maxWidth="",He.width=He.height="100%";else{var At=this._overlayRef.getConfig().maxHeight,Ft=this._overlayRef.getConfig().maxWidth;He.height=(0,Y.HM)(Oe.height),He.top=(0,Y.HM)(Oe.top),He.bottom=(0,Y.HM)(Oe.bottom),He.width=(0,Y.HM)(Oe.width),He.left=(0,Y.HM)(Oe.left),He.right=(0,Y.HM)(Oe.right),He.alignItems="center"===me.overlayX?"center":"end"===me.overlayX?"flex-end":"flex-start",He.justifyContent="center"===me.overlayY?"center":"bottom"===me.overlayY?"flex-end":"flex-start",At&&(He.maxHeight=(0,Y.HM)(At)),Ft&&(He.maxWidth=(0,Y.HM)(Ft))}this._lastBoundingBoxSize=Oe,Pe(this._boundingBox.style,He)}},{key:"_resetBoundingBoxStyles",value:function(){Pe(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}},{key:"_resetOverlayElementStyles",value:function(){Pe(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}},{key:"_setOverlayElementStyles",value:function(ne,me){var Oe={},He=this._hasExactPosition(),At=this._hasFlexibleDimensions,Ft=this._overlayRef.getConfig();if(He){var sn=this._viewportRuler.getViewportScrollPosition();Pe(Oe,this._getExactOverlayY(me,ne,sn)),Pe(Oe,this._getExactOverlayX(me,ne,sn))}else Oe.position="static";var Xt="",gn=this._getOffset(me,"x"),vn=this._getOffset(me,"y");gn&&(Xt+="translateX(".concat(gn,"px) ")),vn&&(Xt+="translateY(".concat(vn,"px)")),Oe.transform=Xt.trim(),Ft.maxHeight&&(He?Oe.maxHeight=(0,Y.HM)(Ft.maxHeight):At&&(Oe.maxHeight="")),Ft.maxWidth&&(He?Oe.maxWidth=(0,Y.HM)(Ft.maxWidth):At&&(Oe.maxWidth="")),Pe(this._pane.style,Oe)}},{key:"_getExactOverlayY",value:function(ne,me,Oe){var He={top:"",bottom:""},At=this._getOverlayPoint(me,this._overlayRect,ne);return this._isPushed&&(At=this._pushOverlayOnScreen(At,this._overlayRect,Oe)),"bottom"===ne.overlayY?He.bottom="".concat(this._document.documentElement.clientHeight-(At.y+this._overlayRect.height),"px"):He.top=(0,Y.HM)(At.y),He}},{key:"_getExactOverlayX",value:function(ne,me,Oe){var He={left:"",right:""},At=this._getOverlayPoint(me,this._overlayRect,ne);return this._isPushed&&(At=this._pushOverlayOnScreen(At,this._overlayRect,Oe)),"right"==(this._isRtl()?"end"===ne.overlayX?"left":"right":"end"===ne.overlayX?"right":"left")?He.right="".concat(this._document.documentElement.clientWidth-(At.x+this._overlayRect.width),"px"):He.left=(0,Y.HM)(At.x),He}},{key:"_getScrollVisibility",value:function(){var ne=this._getOriginRect(),me=this._pane.getBoundingClientRect(),Oe=this._scrollables.map(function(He){return He.getElementRef().nativeElement.getBoundingClientRect()});return{isOriginClipped:J(ne,Oe),isOriginOutsideView:Q(ne,Oe),isOverlayClipped:J(me,Oe),isOverlayOutsideView:Q(me,Oe)}}},{key:"_subtractOverflows",value:function(ne){for(var me=arguments.length,Oe=new Array(me>1?me-1:0),He=1;He0&&void 0!==arguments[0]?arguments[0]:"";return this._bottomOffset="",this._topOffset=ne,this._alignItems="flex-start",this}},{key:"left",value:function(){var ne=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._rightOffset="",this._leftOffset=ne,this._justifyContent="flex-start",this}},{key:"bottom",value:function(){var ne=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._topOffset="",this._bottomOffset=ne,this._alignItems="flex-end",this}},{key:"right",value:function(){var ne=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._leftOffset="",this._rightOffset=ne,this._justifyContent="flex-end",this}},{key:"width",value:function(){var ne=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({width:ne}):this._width=ne,this}},{key:"height",value:function(){var ne=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({height:ne}):this._height=ne,this}},{key:"centerHorizontally",value:function(){var ne=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.left(ne),this._justifyContent="center",this}},{key:"centerVertically",value:function(){var ne=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.top(ne),this._alignItems="center",this}},{key:"apply",value:function(){if(this._overlayRef&&this._overlayRef.hasAttached()){var ne=this._overlayRef.overlayElement.style,me=this._overlayRef.hostElement.style,Oe=this._overlayRef.getConfig(),He=Oe.width,At=Oe.height,Ft=Oe.maxWidth,sn=Oe.maxHeight,Xt=!("100%"!==He&&"100vw"!==He||Ft&&"100%"!==Ft&&"100vw"!==Ft),gn=!("100%"!==At&&"100vh"!==At||sn&&"100%"!==sn&&"100vh"!==sn);ne.position=this._cssPosition,ne.marginLeft=Xt?"0":this._leftOffset,ne.marginTop=gn?"0":this._topOffset,ne.marginBottom=this._bottomOffset,ne.marginRight=this._rightOffset,Xt?me.justifyContent="flex-start":"center"===this._justifyContent?me.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?me.justifyContent="flex-end":"flex-end"===this._justifyContent&&(me.justifyContent="flex-start"):me.justifyContent=this._justifyContent,me.alignItems=gn?"flex-start":this._alignItems}}},{key:"dispose",value:function(){if(!this._isDisposed&&this._overlayRef){var ne=this._overlayRef.overlayElement.style,me=this._overlayRef.hostElement,Oe=me.style;me.classList.remove(ct),Oe.justifyContent=Oe.alignItems=ne.marginTop=ne.marginBottom=ne.marginLeft=ne.marginRight=ne.position="",this._overlayRef=null,this._isDisposed=!0}}}]),Ae}(),st=function(){var Ae=function(){function X(ne,me,Oe,He){(0,s.Z)(this,X),this._viewportRuler=ne,this._document=me,this._platform=Oe,this._overlayContainer=He}return(0,h.Z)(X,[{key:"global",value:function(){return new Ee}},{key:"flexibleConnectedTo",value:function(me){return new Pt(me,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}]),X}();return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.LFG(b.rL),y.LFG(T.K0),y.LFG(q.t4),y.LFG(Xe))},Ae.\u0275prov=y.Yz7({token:Ae,factory:Ae.\u0275fac,providedIn:"root"}),Ae}(),nt=function(){var Ae=function(){function X(ne){(0,s.Z)(this,X),this._attachedOverlays=[],this._document=ne}return(0,h.Z)(X,[{key:"ngOnDestroy",value:function(){this.detach()}},{key:"add",value:function(me){this.remove(me),this._attachedOverlays.push(me)}},{key:"remove",value:function(me){var Oe=this._attachedOverlays.indexOf(me);Oe>-1&&this._attachedOverlays.splice(Oe,1),0===this._attachedOverlays.length&&this.detach()}}]),X}();return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.LFG(T.K0))},Ae.\u0275prov=y.Yz7({token:Ae,factory:Ae.\u0275fac,providedIn:"root"}),Ae}(),at=function(){var Ae=function(X){(0,e.Z)(me,X);var ne=(0,c.Z)(me);function me(Oe){var He;return(0,s.Z)(this,me),(He=ne.call(this,Oe))._keydownListener=function(At){for(var Ft=He._attachedOverlays,sn=Ft.length-1;sn>-1;sn--)if(Ft[sn]._keydownEvents.observers.length>0){Ft[sn]._keydownEvents.next(At);break}},He}return(0,h.Z)(me,[{key:"add",value:function(He){(0,S.Z)((0,t.Z)(me.prototype),"add",this).call(this,He),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}},{key:"detach",value:function(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}]),me}(nt);return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.LFG(T.K0))},Ae.\u0275prov=y.Yz7({token:Ae,factory:Ae.\u0275fac,providedIn:"root"}),Ae}(),We=function(){var Ae=function(X){(0,e.Z)(me,X);var ne=(0,c.Z)(me);function me(Oe,He){var At;return(0,s.Z)(this,me),(At=ne.call(this,Oe))._platform=He,At._cursorStyleIsSet=!1,At._pointerDownListener=function(Ft){At._pointerDownEventTarget=(0,q.sA)(Ft)},At._clickListener=function(Ft){var sn=(0,q.sA)(Ft),Xt="click"===Ft.type&&At._pointerDownEventTarget?At._pointerDownEventTarget:sn;At._pointerDownEventTarget=null;for(var gn=At._attachedOverlays.slice(),vn=gn.length-1;vn>-1;vn--){var hn=gn[vn];if(!(hn._outsidePointerEvents.observers.length<1)&&hn.hasAttached()){if(hn.overlayElement.contains(sn)||hn.overlayElement.contains(Xt))break;hn._outsidePointerEvents.next(Ft)}}},At}return(0,h.Z)(me,[{key:"add",value:function(He){if((0,S.Z)((0,t.Z)(me.prototype),"add",this).call(this,He),!this._isAttached){var At=this._document.body;At.addEventListener("pointerdown",this._pointerDownListener,!0),At.addEventListener("click",this._clickListener,!0),At.addEventListener("auxclick",this._clickListener,!0),At.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=At.style.cursor,At.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}},{key:"detach",value:function(){if(this._isAttached){var He=this._document.body;He.removeEventListener("pointerdown",this._pointerDownListener,!0),He.removeEventListener("click",this._clickListener,!0),He.removeEventListener("auxclick",this._clickListener,!0),He.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(He.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}]),me}(nt);return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.LFG(T.K0),y.LFG(q.t4))},Ae.\u0275prov=y.Yz7({token:Ae,factory:Ae.\u0275fac,providedIn:"root"}),Ae}(),xe=0,ut=function(){var Ae=function(){function X(ne,me,Oe,He,At,Ft,sn,Xt,gn,vn,hn){(0,s.Z)(this,X),this.scrollStrategies=ne,this._overlayContainer=me,this._componentFactoryResolver=Oe,this._positionBuilder=He,this._keyboardDispatcher=At,this._injector=Ft,this._ngZone=sn,this._document=Xt,this._directionality=gn,this._location=vn,this._outsideClickDispatcher=hn}return(0,h.Z)(X,[{key:"create",value:function(me){var Oe=this._createHostElement(),He=this._createPaneElement(Oe),At=this._createPortalOutlet(He),Ft=new G(me);return Ft.direction=Ft.direction||this._directionality.value,new lt(At,Oe,He,Ft,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}},{key:"position",value:function(){return this._positionBuilder}},{key:"_createPaneElement",value:function(me){var Oe=this._document.createElement("div");return Oe.id="cdk-overlay-".concat(xe++),Oe.classList.add("cdk-overlay-pane"),me.appendChild(Oe),Oe}},{key:"_createHostElement",value:function(){var me=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(me),me}},{key:"_createPortalOutlet",value:function(me){return this._appRef||(this._appRef=this._injector.get(y.z2F)),new k.u0(me,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}]),X}();return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.LFG(K),y.LFG(Xe),y.LFG(y._Vd),y.LFG(st),y.LFG(at),y.LFG(y.zs3),y.LFG(y.R0b),y.LFG(T.K0),y.LFG(B.Is),y.LFG(T.Ye),y.LFG(We))},Ae.\u0275prov=y.Yz7({token:Ae,factory:Ae.\u0275fac}),Ae}(),Fe=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],et=new y.OlP("cdk-connected-overlay-scroll-strategy"),Ht=function(){var Ae=(0,h.Z)(function X(ne){(0,s.Z)(this,X),this.elementRef=ne});return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.Y36(y.SBq))},Ae.\u0275dir=y.lG2({type:Ae,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),Ae}(),nn=function(){var Ae=function(){function X(ne,me,Oe,He,At){(0,s.Z)(this,X),this._overlay=ne,this._dir=At,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=N.w0.EMPTY,this._attachSubscription=N.w0.EMPTY,this._detachSubscription=N.w0.EMPTY,this._positionSubscription=N.w0.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new y.vpe,this.positionChange=new y.vpe,this.attach=new y.vpe,this.detach=new y.vpe,this.overlayKeydown=new y.vpe,this.overlayOutsideClick=new y.vpe,this._templatePortal=new k.UE(me,Oe),this._scrollStrategyFactory=He,this.scrollStrategy=this._scrollStrategyFactory()}return(0,h.Z)(X,[{key:"offsetX",get:function(){return this._offsetX},set:function(me){this._offsetX=me,this._position&&this._updatePositionStrategy(this._position)}},{key:"offsetY",get:function(){return this._offsetY},set:function(me){this._offsetY=me,this._position&&this._updatePositionStrategy(this._position)}},{key:"hasBackdrop",get:function(){return this._hasBackdrop},set:function(me){this._hasBackdrop=(0,Y.Ig)(me)}},{key:"lockPosition",get:function(){return this._lockPosition},set:function(me){this._lockPosition=(0,Y.Ig)(me)}},{key:"flexibleDimensions",get:function(){return this._flexibleDimensions},set:function(me){this._flexibleDimensions=(0,Y.Ig)(me)}},{key:"growAfterOpen",get:function(){return this._growAfterOpen},set:function(me){this._growAfterOpen=(0,Y.Ig)(me)}},{key:"push",get:function(){return this._push},set:function(me){this._push=(0,Y.Ig)(me)}},{key:"overlayRef",get:function(){return this._overlayRef}},{key:"dir",get:function(){return this._dir?this._dir.value:"ltr"}},{key:"ngOnDestroy",value:function(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}},{key:"ngOnChanges",value:function(me){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),me.origin&&this.open&&this._position.apply()),me.open&&(this.open?this._attachOverlay():this._detachOverlay())}},{key:"_createOverlay",value:function(){var me=this;(!this.positions||!this.positions.length)&&(this.positions=Fe);var Oe=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=Oe.attachments().subscribe(function(){return me.attach.emit()}),this._detachSubscription=Oe.detachments().subscribe(function(){return me.detach.emit()}),Oe.keydownEvents().subscribe(function(He){me.overlayKeydown.next(He),He.keyCode===re.hY&&!me.disableClose&&!(0,re.Vb)(He)&&(He.preventDefault(),me._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(function(He){me.overlayOutsideClick.next(He)})}},{key:"_buildConfig",value:function(){var me=this._position=this.positionStrategy||this._createPositionStrategy(),Oe=new G({direction:this._dir,positionStrategy:me,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(Oe.width=this.width),(this.height||0===this.height)&&(Oe.height=this.height),(this.minWidth||0===this.minWidth)&&(Oe.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(Oe.minHeight=this.minHeight),this.backdropClass&&(Oe.backdropClass=this.backdropClass),this.panelClass&&(Oe.panelClass=this.panelClass),Oe}},{key:"_updatePositionStrategy",value:function(me){var Oe=this,He=this.positions.map(function(At){return{originX:At.originX,originY:At.originY,overlayX:At.overlayX,overlayY:At.overlayY,offsetX:At.offsetX||Oe.offsetX,offsetY:At.offsetY||Oe.offsetY,panelClass:At.panelClass||void 0}});return me.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(He).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}},{key:"_createPositionStrategy",value:function(){var me=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(me),me}},{key:"_getFlexibleConnectedPositionStrategyOrigin",value:function(){return this.origin instanceof Ht?this.origin.elementRef:this.origin}},{key:"_attachOverlay",value:function(){var me=this;this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(function(Oe){me.backdropClick.emit(Oe)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe((0,le.o)(function(){return me.positionChange.observers.length>0})).subscribe(function(Oe){me.positionChange.emit(Oe),0===me.positionChange.observers.length&&me._positionSubscription.unsubscribe()}))}},{key:"_detachOverlay",value:function(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}]),X}();return Ae.\u0275fac=function(ne){return new(ne||Ae)(y.Y36(ut),y.Y36(y.Rgc),y.Y36(y.s_b),y.Y36(et),y.Y36(B.Is,8))},Ae.\u0275dir=y.lG2({type:Ae,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[y.TTD]}),Ae}(),kt={provide:et,deps:[ut],useFactory:function an(Ae){return function(){return Ae.scrollStrategies.reposition()}}},It=function(){var Ae=(0,h.Z)(function X(){(0,s.Z)(this,X)});return Ae.\u0275fac=function(ne){return new(ne||Ae)},Ae.\u0275mod=y.oAB({type:Ae}),Ae.\u0275inj=y.cJS({providers:[ut,kt],imports:[[B.vT,k.eL,b.Cl],b.Cl]}),Ae}()},14390:function(Ce,E,n){"use strict";n.d(E,{t4:function(){return o},ud:function(){return _},sA:function(){return le},ht:function(){return j},kV:function(){return L},Oy:function(){return re},_i:function(){return D},qK:function(){return b},i$:function(){return Y},Mq:function(){return k}});var u,S=n(1884),t=n(39117),e=n(86613),c=n(36362);try{u="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(W){u=!1}var s,T,q,B,N,o=function(){var W=(0,S.Z)(function $(be){(0,t.Z)(this,$),this._platformId=be,this.isBrowser=this._platformId?(0,c.NF)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!u)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT});return W.\u0275fac=function(be){return new(be||W)(e.LFG(e.Lbi))},W.\u0275prov=e.Yz7({token:W,factory:W.\u0275fac,providedIn:"root"}),W}(),_=function(){var W=(0,S.Z)(function $(){(0,t.Z)(this,$)});return W.\u0275fac=function(be){return new(be||W)},W.\u0275mod=e.oAB({type:W}),W.\u0275inj=e.cJS({}),W}(),h=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function b(){if(s)return s;if("object"!=typeof document||!document)return s=new Set(h);var W=document.createElement("input");return s=new Set(h.filter(function($){return W.setAttribute("type",$),W.type===$}))}function Y(W){return function y(){if(null==T&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return T=!0}}))}finally{T=T||!1}return T}()?W:!!W.capture}function k(){if(null==B){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return B=!1;if("scrollBehavior"in document.documentElement.style)B=!0;else{var W=Element.prototype.scrollTo;B=!!W&&!/\{\s*\[native code\]\s*\}/.test(W.toString())}}return B}function D(){if("object"!=typeof document||!document)return 0;if(null==q){var W=document.createElement("div"),$=W.style;W.dir="rtl",$.width="1px",$.overflow="auto",$.visibility="hidden",$.pointerEvents="none",$.position="absolute";var be=document.createElement("div"),z=be.style;z.width="2px",z.height="1px",W.appendChild(be),document.body.appendChild(W),q=0,0===W.scrollLeft&&(W.scrollLeft=1,q=0===W.scrollLeft?1:2),W.remove()}return q}function L(W){if(function I(){if(null==N){var W="undefined"!=typeof document?document.head:null;N=!(!W||!W.createShadowRoot&&!W.attachShadow)}return N}()){var $=W.getRootNode?W.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&$ instanceof ShadowRoot)return $}return null}function j(){for(var W="undefined"!=typeof document&&document?document.activeElement:null;W&&W.shadowRoot;){var $=W.shadowRoot.activeElement;if($===W)break;W=$}return W}function le(W){return W.composedPath?W.composedPath()[0]:W.target}function re(){return"undefined"!=typeof __karma__&&!!__karma__||"undefined"!=typeof jasmine&&!!jasmine||"undefined"!=typeof jest&&!!jest||"undefined"!=typeof Mocha&&!!Mocha}},24476:function(Ce,E,n){"use strict";n.d(E,{en:function(){return L},ig:function(){return W},Pl:function(){return be},C5:function(){return D},u0:function(){return le},eL:function(){return d},UE:function(){return N}});var S=n(45632),t=n(97424),e=n(28042),c=n(46751),u=n(56101),o=n(39117),_=n(1884),s=n(86613),h=n(36362),k=function(){function J(){(0,o.Z)(this,J)}return(0,_.Z)(J,[{key:"attach",value:function(K){return this._attachedHost=K,K.attach(this)}},{key:"detach",value:function(){var K=this._attachedHost;null!=K&&(this._attachedHost=null,K.detach())}},{key:"isAttached",get:function(){return null!=this._attachedHost}},{key:"setAttachedHost",value:function(K){this._attachedHost=K}}]),J}(),D=function(J){(0,c.Z)(K,J);var te=(0,u.Z)(K);function K(G,ce,_e,Me){var ve;return(0,o.Z)(this,K),(ve=te.call(this)).component=G,ve.viewContainerRef=ce,ve.injector=_e,ve.componentFactoryResolver=Me,ve}return(0,_.Z)(K)}(k),N=function(J){(0,c.Z)(K,J);var te=(0,u.Z)(K);function K(G,ce,_e){var Me;return(0,o.Z)(this,K),(Me=te.call(this)).templateRef=G,Me.viewContainerRef=ce,Me.context=_e,Me}return(0,_.Z)(K,[{key:"origin",get:function(){return this.templateRef.elementRef}},{key:"attach",value:function(ce){var _e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.context;return this.context=_e,(0,t.Z)((0,e.Z)(K.prototype),"attach",this).call(this,ce)}},{key:"detach",value:function(){return this.context=void 0,(0,t.Z)((0,e.Z)(K.prototype),"detach",this).call(this)}}]),K}(k),I=function(J){(0,c.Z)(K,J);var te=(0,u.Z)(K);function K(G){var ce;return(0,o.Z)(this,K),(ce=te.call(this)).element=G instanceof s.SBq?G.nativeElement:G,ce}return(0,_.Z)(K)}(k),L=function(){function J(){(0,o.Z)(this,J),this._isDisposed=!1,this.attachDomPortal=null}return(0,_.Z)(J,[{key:"hasAttached",value:function(){return!!this._attachedPortal}},{key:"attach",value:function(K){return K instanceof D?(this._attachedPortal=K,this.attachComponentPortal(K)):K instanceof N?(this._attachedPortal=K,this.attachTemplatePortal(K)):this.attachDomPortal&&K instanceof I?(this._attachedPortal=K,this.attachDomPortal(K)):void 0}},{key:"detach",value:function(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}},{key:"dispose",value:function(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}},{key:"setDisposeFn",value:function(K){this._disposeFn=K}},{key:"_invokeDisposeFn",value:function(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}]),J}(),le=function(J){(0,c.Z)(K,J);var te=(0,u.Z)(K);function K(G,ce,_e,Me,ve){var ue,lt;return(0,o.Z)(this,K),(lt=te.call(this)).outletElement=G,lt._componentFactoryResolver=ce,lt._appRef=_e,lt._defaultInjector=Me,lt.attachDomPortal=function(Xe){var mt=Xe.element,wt=lt._document.createComment("dom-portal");mt.parentNode.insertBefore(wt,mt),lt.outletElement.appendChild(mt),lt._attachedPortal=Xe,(0,t.Z)((ue=(0,S.Z)(lt),(0,e.Z)(K.prototype)),"setDisposeFn",ue).call(ue,function(){wt.parentNode&&wt.parentNode.replaceChild(mt,wt)})},lt._document=ve,lt}return(0,_.Z)(K,[{key:"attachComponentPortal",value:function(ce){var ue,_e=this,ve=(ce.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(ce.component);return ce.viewContainerRef?(ue=ce.viewContainerRef.createComponent(ve,ce.viewContainerRef.length,ce.injector||ce.viewContainerRef.injector),this.setDisposeFn(function(){return ue.destroy()})):(ue=ve.create(ce.injector||this._defaultInjector),this._appRef.attachView(ue.hostView),this.setDisposeFn(function(){_e._appRef.detachView(ue.hostView),ue.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(ue)),this._attachedPortal=ce,ue}},{key:"attachTemplatePortal",value:function(ce){var _e=this,Me=ce.viewContainerRef,ve=Me.createEmbeddedView(ce.templateRef,ce.context);return ve.rootNodes.forEach(function(ue){return _e.outletElement.appendChild(ue)}),ve.detectChanges(),this.setDisposeFn(function(){var ue=Me.indexOf(ve);-1!==ue&&Me.remove(ue)}),this._attachedPortal=ce,ve}},{key:"dispose",value:function(){(0,t.Z)((0,e.Z)(K.prototype),"dispose",this).call(this),this.outletElement.remove()}},{key:"_getComponentRootNode",value:function(ce){return ce.hostView.rootNodes[0]}}]),K}(L),W=function(){var J=function(te){(0,c.Z)(G,te);var K=(0,u.Z)(G);function G(ce,_e){return(0,o.Z)(this,G),K.call(this,ce,_e)}return(0,_.Z)(G)}(N);return J.\u0275fac=function(K){return new(K||J)(s.Y36(s.Rgc),s.Y36(s.s_b))},J.\u0275dir=s.lG2({type:J,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[s.qOj]}),J}(),be=function(){var J=function(te){(0,c.Z)(G,te);var K=(0,u.Z)(G);function G(ce,_e,Me){var ve,ue;return(0,o.Z)(this,G),(ue=K.call(this))._componentFactoryResolver=ce,ue._viewContainerRef=_e,ue._isInitialized=!1,ue.attached=new s.vpe,ue.attachDomPortal=function(lt){var Xe=lt.element,mt=ue._document.createComment("dom-portal");lt.setAttachedHost((0,S.Z)(ue)),Xe.parentNode.insertBefore(mt,Xe),ue._getRootNode().appendChild(Xe),ue._attachedPortal=lt,(0,t.Z)((ve=(0,S.Z)(ue),(0,e.Z)(G.prototype)),"setDisposeFn",ve).call(ve,function(){mt.parentNode&&mt.parentNode.replaceChild(Xe,mt)})},ue._document=Me,ue}return(0,_.Z)(G,[{key:"portal",get:function(){return this._attachedPortal},set:function(_e){this.hasAttached()&&!_e&&!this._isInitialized||(this.hasAttached()&&(0,t.Z)((0,e.Z)(G.prototype),"detach",this).call(this),_e&&(0,t.Z)((0,e.Z)(G.prototype),"attach",this).call(this,_e),this._attachedPortal=_e||null)}},{key:"attachedRef",get:function(){return this._attachedRef}},{key:"ngOnInit",value:function(){this._isInitialized=!0}},{key:"ngOnDestroy",value:function(){(0,t.Z)((0,e.Z)(G.prototype),"dispose",this).call(this),this._attachedPortal=null,this._attachedRef=null}},{key:"attachComponentPortal",value:function(_e){_e.setAttachedHost(this);var Me=null!=_e.viewContainerRef?_e.viewContainerRef:this._viewContainerRef,ue=(_e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(_e.component),lt=Me.createComponent(ue,Me.length,_e.injector||Me.injector);return Me!==this._viewContainerRef&&this._getRootNode().appendChild(lt.hostView.rootNodes[0]),(0,t.Z)((0,e.Z)(G.prototype),"setDisposeFn",this).call(this,function(){return lt.destroy()}),this._attachedPortal=_e,this._attachedRef=lt,this.attached.emit(lt),lt}},{key:"attachTemplatePortal",value:function(_e){var Me=this;_e.setAttachedHost(this);var ve=this._viewContainerRef.createEmbeddedView(_e.templateRef,_e.context);return(0,t.Z)((0,e.Z)(G.prototype),"setDisposeFn",this).call(this,function(){return Me._viewContainerRef.clear()}),this._attachedPortal=_e,this._attachedRef=ve,this.attached.emit(ve),ve}},{key:"_getRootNode",value:function(){var _e=this._viewContainerRef.element.nativeElement;return _e.nodeType===_e.ELEMENT_NODE?_e:_e.parentNode}}]),G}(L);return J.\u0275fac=function(K){return new(K||J)(s.Y36(s._Vd),s.Y36(s.s_b),s.Y36(h.K0))},J.\u0275dir=s.lG2({type:J,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[s.qOj]}),J}(),d=function(){var J=(0,_.Z)(function te(){(0,o.Z)(this,te)});return J.\u0275fac=function(K){return new(K||J)},J.\u0275mod=s.oAB({type:J}),J.\u0275inj=s.cJS({}),J}()},24426:function(Ce,E,n){"use strict";n.d(E,{xd:function(){return ft},PQ:function(){return st},ZD:function(){return Ht},x0:function(){return et},N7:function(){return ut},mF:function(){return Ee},Cl:function(){return nn},rL:function(){return at}});var S=n(78170),t=n(44014),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(39117),s=n(1884),h=n(76484),b=n(86613),T=n(75417),y=n(17714),Y={schedule:function(kt){var It=requestAnimationFrame,$e=cancelAnimationFrame,Ae=Y.delegate;Ae&&(It=Ae.requestAnimationFrame,$e=Ae.cancelAnimationFrame);var X=It(function(ne){$e=void 0,kt(ne)});return new y.w0(function(){return null==$e?void 0:$e(X)})},requestAnimationFrame:function(an){function kt(){return an.apply(this,arguments)}return kt.toString=function(){return an.toString()},kt}(function(){var an=Y.delegate;return((null==an?void 0:an.requestAnimationFrame)||requestAnimationFrame).apply(void 0,arguments)}),cancelAnimationFrame:function(an){function kt(){return an.apply(this,arguments)}return kt.toString=function(){return an.toString()},kt}(function(){var an=Y.delegate;return((null==an?void 0:an.cancelAnimationFrame)||cancelAnimationFrame).apply(void 0,arguments)}),delegate:void 0},q=function(an){(0,u.Z)(It,an);var kt=(0,o.Z)(It);function It($e,Ae){var X;return(0,_.Z)(this,It),(X=kt.call(this,$e,Ae)).scheduler=$e,X.work=Ae,X}return(0,s.Z)(It,[{key:"requestAsyncId",value:function(Ae,X){var ne=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==ne&&ne>0?(0,e.Z)((0,c.Z)(It.prototype),"requestAsyncId",this).call(this,Ae,X,ne):(Ae.actions.push(this),Ae._scheduled||(Ae._scheduled=Y.requestAnimationFrame(function(){return Ae.flush(void 0)})))}},{key:"recycleAsyncId",value:function(Ae,X){var ne=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!=ne&&ne>0||null==ne&&this.delay>0)return(0,e.Z)((0,c.Z)(It.prototype),"recycleAsyncId",this).call(this,Ae,X,ne);Ae.actions.some(function(me){return me.id===X})||(Y.cancelAnimationFrame(X),Ae._scheduled=void 0)}}]),It}(T.o),k=function(an){(0,u.Z)(It,an);var kt=(0,o.Z)(It);function It(){return(0,_.Z)(this,It),kt.apply(this,arguments)}return(0,s.Z)(It,[{key:"flush",value:function(Ae){this._active=!0;var X=this._scheduled;this._scheduled=void 0;var me,ne=this.actions;Ae=Ae||ne.shift();do{if(me=Ae.execute(Ae.state,Ae.delay))break}while((Ae=ne[0])&&Ae.id===X&&ne.shift());if(this._active=!1,me){for(;(Ae=ne[0])&&Ae.id===X&&ne.shift();)Ae.unsubscribe();throw me}}}]),It}(n(41010).v),D=new k(q),I=n(50253),L=n(10745),j=n(83336),le=n(23280),re=n(83888),W=n(14437),$=n(41944),be=n(93945),d=n(26067),Q=n(81203),te=n(98977),K=n(89211),G=n(60116),ce=n(68951),_e=n(44874),Me=n(32673),ve=n(36362),ue=n(14390),lt=n(51588),Xe=n(89502),mt=["contentWrapper"],wt=["*"],Pt=new b.OlP("VIRTUAL_SCROLL_STRATEGY"),Pe=function(){function an(kt,It,$e){(0,_.Z)(this,an),this._scrolledIndexChange=new I.x,this.scrolledIndexChange=this._scrolledIndexChange.pipe((0,te.x)()),this._viewport=null,this._itemSize=kt,this._minBufferPx=It,this._maxBufferPx=$e}return(0,s.Z)(an,[{key:"attach",value:function(It){this._viewport=It,this._updateTotalContentSize(),this._updateRenderedRange()}},{key:"detach",value:function(){this._scrolledIndexChange.complete(),this._viewport=null}},{key:"updateItemAndBufferSize",value:function(It,$e,Ae){this._itemSize=It,this._minBufferPx=$e,this._maxBufferPx=Ae,this._updateTotalContentSize(),this._updateRenderedRange()}},{key:"onContentScrolled",value:function(){this._updateRenderedRange()}},{key:"onDataLengthChanged",value:function(){this._updateTotalContentSize(),this._updateRenderedRange()}},{key:"onContentRendered",value:function(){}},{key:"onRenderedOffsetChanged",value:function(){}},{key:"scrollToIndex",value:function(It,$e){this._viewport&&this._viewport.scrollToOffset(It*this._itemSize,$e)}},{key:"_updateTotalContentSize",value:function(){!this._viewport||this._viewport.setTotalContentSize(this._viewport.getDataLength()*this._itemSize)}},{key:"_updateRenderedRange",value:function(){if(this._viewport){var It=this._viewport.getRenderedRange(),$e={start:It.start,end:It.end},Ae=this._viewport.getViewportSize(),X=this._viewport.getDataLength(),ne=this._viewport.measureScrollOffset(),me=this._itemSize>0?ne/this._itemSize:0;if($e.end>X){var Oe=Math.ceil(Ae/this._itemSize),He=Math.max(0,Math.min(me,X-Oe));me!=He&&(me=He,ne=He*this._itemSize,$e.start=Math.floor(me)),$e.end=Math.max(0,Math.min(X,$e.start+Oe))}var At=ne-$e.start*this._itemSize;if(At0&&($e.end=Math.min(X,$e.end+Xt),$e.start=Math.max(0,Math.floor(me-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange($e),this._viewport.setRenderedContentOffset(this._itemSize*$e.start),this._scrolledIndexChange.next(Math.floor(me))}}}]),an}();function ze(an){return an._scrollStrategy}var ft=function(){var an=function(){function kt(){(0,_.Z)(this,kt),this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Pe(this.itemSize,this.minBufferPx,this.maxBufferPx)}return(0,s.Z)(kt,[{key:"itemSize",get:function(){return this._itemSize},set:function($e){this._itemSize=(0,h.su)($e)}},{key:"minBufferPx",get:function(){return this._minBufferPx},set:function($e){this._minBufferPx=(0,h.su)($e)}},{key:"maxBufferPx",get:function(){return this._maxBufferPx},set:function($e){this._maxBufferPx=(0,h.su)($e)}},{key:"ngOnChanges",value:function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}]),kt}();return an.\u0275fac=function(It){return new(It||an)},an.\u0275dir=b.lG2({type:an,selectors:[["cdk-virtual-scroll-viewport","itemSize",""]],inputs:{itemSize:"itemSize",minBufferPx:"minBufferPx",maxBufferPx:"maxBufferPx"},features:[b._Bn([{provide:Pt,useFactory:ze,deps:[(0,b.Gpc)(function(){return an})]}]),b.TTD]}),an}(),Ee=function(){var an=function(){function kt(It,$e,Ae){(0,_.Z)(this,kt),this._ngZone=It,this._platform=$e,this._scrolled=new I.x,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=Ae}return(0,s.Z)(kt,[{key:"register",value:function($e){var Ae=this;this.scrollContainers.has($e)||this.scrollContainers.set($e,$e.elementScrolled().subscribe(function(){return Ae._scrolled.next($e)}))}},{key:"deregister",value:function($e){var Ae=this.scrollContainers.get($e);Ae&&(Ae.unsubscribe(),this.scrollContainers.delete($e))}},{key:"scrolled",value:function(){var $e=this,Ae=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return this._platform.isBrowser?new j.y(function(X){$e._globalSubscription||$e._addGlobalListener();var ne=Ae>0?$e._scrolled.pipe((0,K.e)(Ae)).subscribe(X):$e._scrolled.subscribe(X);return $e._scrolledCount++,function(){ne.unsubscribe(),$e._scrolledCount--,$e._scrolledCount||$e._removeGlobalListener()}}):(0,L.of)()}},{key:"ngOnDestroy",value:function(){var $e=this;this._removeGlobalListener(),this.scrollContainers.forEach(function(Ae,X){return $e.deregister(X)}),this._scrolled.complete()}},{key:"ancestorScrolled",value:function($e,Ae){var X=this.getAncestorScrollContainers($e);return this.scrolled(Ae).pipe((0,G.h)(function(ne){return!ne||X.indexOf(ne)>-1}))}},{key:"getAncestorScrollContainers",value:function($e){var Ae=this,X=[];return this.scrollContainers.forEach(function(ne,me){Ae._scrollableContainsElement(me,$e)&&X.push(me)}),X}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_scrollableContainsElement",value:function($e,Ae){var X=(0,h.fI)(Ae),ne=$e.getElementRef().nativeElement;do{if(X==ne)return!0}while(X=X.parentElement);return!1}},{key:"_addGlobalListener",value:function(){var $e=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){var Ae=$e._getWindow();return(0,le.R)(Ae.document,"scroll").subscribe(function(){return $e._scrolled.next()})})}},{key:"_removeGlobalListener",value:function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}]),kt}();return an.\u0275fac=function(It){return new(It||an)(b.LFG(b.R0b),b.LFG(ue.t4),b.LFG(ve.K0,8))},an.\u0275prov=b.Yz7({token:an,factory:an.\u0275fac,providedIn:"root"}),an}(),st=function(){var an=function(){function kt(It,$e,Ae,X){var ne=this;(0,_.Z)(this,kt),this.elementRef=It,this.scrollDispatcher=$e,this.ngZone=Ae,this.dir=X,this._destroyed=new I.x,this._elementScrolled=new j.y(function(me){return ne.ngZone.runOutsideAngular(function(){return(0,le.R)(ne.elementRef.nativeElement,"scroll").pipe((0,ce.R)(ne._destroyed)).subscribe(me)})})}return(0,s.Z)(kt,[{key:"ngOnInit",value:function(){this.scrollDispatcher.register(this)}},{key:"ngOnDestroy",value:function(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}},{key:"elementScrolled",value:function(){return this._elementScrolled}},{key:"getElementRef",value:function(){return this.elementRef}},{key:"scrollTo",value:function($e){var Ae=this.elementRef.nativeElement,X=this.dir&&"rtl"==this.dir.value;null==$e.left&&($e.left=X?$e.end:$e.start),null==$e.right&&($e.right=X?$e.start:$e.end),null!=$e.bottom&&($e.top=Ae.scrollHeight-Ae.clientHeight-$e.bottom),X&&0!=(0,ue._i)()?(null!=$e.left&&($e.right=Ae.scrollWidth-Ae.clientWidth-$e.left),2==(0,ue._i)()?$e.left=$e.right:1==(0,ue._i)()&&($e.left=$e.right?-$e.right:$e.right)):null!=$e.right&&($e.left=Ae.scrollWidth-Ae.clientWidth-$e.right),this._applyScrollToOptions($e)}},{key:"_applyScrollToOptions",value:function($e){var Ae=this.elementRef.nativeElement;(0,ue.Mq)()?Ae.scrollTo($e):(null!=$e.top&&(Ae.scrollTop=$e.top),null!=$e.left&&(Ae.scrollLeft=$e.left))}},{key:"measureScrollOffset",value:function($e){var Ae="left",X="right",ne=this.elementRef.nativeElement;if("top"==$e)return ne.scrollTop;if("bottom"==$e)return ne.scrollHeight-ne.clientHeight-ne.scrollTop;var me=this.dir&&"rtl"==this.dir.value;return"start"==$e?$e=me?X:Ae:"end"==$e&&($e=me?Ae:X),me&&2==(0,ue._i)()?$e==Ae?ne.scrollWidth-ne.clientWidth-ne.scrollLeft:ne.scrollLeft:me&&1==(0,ue._i)()?$e==Ae?ne.scrollLeft+ne.scrollWidth-ne.clientWidth:-ne.scrollLeft:$e==Ae?ne.scrollLeft:ne.scrollWidth-ne.clientWidth-ne.scrollLeft}}]),kt}();return an.\u0275fac=function(It){return new(It||an)(b.Y36(b.SBq),b.Y36(Ee),b.Y36(b.R0b),b.Y36(lt.Is,8))},an.\u0275dir=b.lG2({type:an,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]}),an}(),at=function(){var an=function(){function kt(It,$e,Ae){var X=this;(0,_.Z)(this,kt),this._platform=It,this._change=new I.x,this._changeListener=function(ne){X._change.next(ne)},this._document=Ae,$e.runOutsideAngular(function(){if(It.isBrowser){var ne=X._getWindow();ne.addEventListener("resize",X._changeListener),ne.addEventListener("orientationchange",X._changeListener)}X.change().subscribe(function(){return X._viewportSize=null})})}return(0,s.Z)(kt,[{key:"ngOnDestroy",value:function(){if(this._platform.isBrowser){var $e=this._getWindow();$e.removeEventListener("resize",this._changeListener),$e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}},{key:"getViewportSize",value:function(){this._viewportSize||this._updateViewportSize();var $e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),$e}},{key:"getViewportRect",value:function(){var $e=this.getViewportScrollPosition(),Ae=this.getViewportSize(),X=Ae.width,ne=Ae.height;return{top:$e.top,left:$e.left,bottom:$e.top+ne,right:$e.left+X,height:ne,width:X}}},{key:"getViewportScrollPosition",value:function(){if(!this._platform.isBrowser)return{top:0,left:0};var $e=this._document,Ae=this._getWindow(),X=$e.documentElement,ne=X.getBoundingClientRect();return{top:-ne.top||$e.body.scrollTop||Ae.scrollY||X.scrollTop||0,left:-ne.left||$e.body.scrollLeft||Ae.scrollX||X.scrollLeft||0}}},{key:"change",value:function(){var $e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return $e>0?this._change.pipe((0,K.e)($e)):this._change}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_updateViewportSize",value:function(){var $e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:$e.innerWidth,height:$e.innerHeight}:{width:0,height:0}}}]),kt}();return an.\u0275fac=function(It){return new(It||an)(b.LFG(ue.t4),b.LFG(b.R0b),b.LFG(ve.K0,8))},an.\u0275prov=b.Yz7({token:an,factory:an.\u0275fac,providedIn:"root"}),an}(),xe="undefined"!=typeof requestAnimationFrame?D:re.E,ut=function(){var an=function(kt){(0,u.Z)($e,kt);var It=(0,o.Z)($e);function $e(Ae,X,ne,me,Oe,He,At){var Ft;return(0,_.Z)(this,$e),(Ft=It.call(this,Ae,He,ne,Oe)).elementRef=Ae,Ft._changeDetectorRef=X,Ft._scrollStrategy=me,Ft._detachedSubject=new I.x,Ft._renderedRangeSubject=new I.x,Ft._orientation="vertical",Ft._appendOnly=!1,Ft.scrolledIndexChange=new j.y(function(sn){return Ft._scrollStrategy.scrolledIndexChange.subscribe(function(Xt){return Promise.resolve().then(function(){return Ft.ngZone.run(function(){return sn.next(Xt)})})})}),Ft.renderedRangeStream=Ft._renderedRangeSubject,Ft._totalContentSize=0,Ft._totalContentWidth="",Ft._totalContentHeight="",Ft._renderedRange={start:0,end:0},Ft._dataLength=0,Ft._viewportSize=0,Ft._renderedContentOffset=0,Ft._renderedContentOffsetNeedsRewrite=!1,Ft._isChangeDetectionPending=!1,Ft._runAfterChangeDetection=[],Ft._viewportChanges=y.w0.EMPTY,Ft._viewportChanges=At.change().subscribe(function(){Ft.checkViewportSize()}),Ft}return(0,s.Z)($e,[{key:"orientation",get:function(){return this._orientation},set:function(X){this._orientation!==X&&(this._orientation=X,this._calculateSpacerSize())}},{key:"appendOnly",get:function(){return this._appendOnly},set:function(X){this._appendOnly=(0,h.Ig)(X)}},{key:"ngOnInit",value:function(){var X=this;(0,e.Z)((0,c.Z)($e.prototype),"ngOnInit",this).call(this),this.ngZone.runOutsideAngular(function(){return Promise.resolve().then(function(){X._measureViewportSize(),X._scrollStrategy.attach(X),X.elementScrolled().pipe((0,_e.O)(null),(0,K.e)(0,xe)).subscribe(function(){return X._scrollStrategy.onContentScrolled()}),X._markChangeDetectionNeeded()})})}},{key:"ngOnDestroy",value:function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),this._viewportChanges.unsubscribe(),(0,e.Z)((0,c.Z)($e.prototype),"ngOnDestroy",this).call(this)}},{key:"attach",value:function(X){var ne=this;this.ngZone.runOutsideAngular(function(){ne._forOf=X,ne._forOf.dataStream.pipe((0,ce.R)(ne._detachedSubject)).subscribe(function(me){var Oe=me.length;Oe!==ne._dataLength&&(ne._dataLength=Oe,ne._scrollStrategy.onDataLengthChanged()),ne._doChangeDetection()})})}},{key:"detach",value:function(){this._forOf=null,this._detachedSubject.next()}},{key:"getDataLength",value:function(){return this._dataLength}},{key:"getViewportSize",value:function(){return this._viewportSize}},{key:"getRenderedRange",value:function(){return this._renderedRange}},{key:"setTotalContentSize",value:function(X){this._totalContentSize!==X&&(this._totalContentSize=X,this._calculateSpacerSize(),this._markChangeDetectionNeeded())}},{key:"setRenderedRange",value:function(X){var ne=this;(function We(an,kt){return an.start==kt.start&&an.end==kt.end})(this._renderedRange,X)||(this.appendOnly&&(X={start:0,end:Math.max(this._renderedRange.end,X.end)}),this._renderedRangeSubject.next(this._renderedRange=X),this._markChangeDetectionNeeded(function(){return ne._scrollStrategy.onContentRendered()}))}},{key:"getOffsetToRenderedContentStart",value:function(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}},{key:"setRenderedContentOffset",value:function(X){var ne=this,me=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"to-start",Oe=this.dir&&"rtl"==this.dir.value,He="horizontal"==this.orientation,At=He?"X":"Y",Ft=He&&Oe?-1:1,sn="translate".concat(At,"(").concat(Number(Ft*X),"px)");this._renderedContentOffset=X,"to-end"===me&&(sn+=" translate".concat(At,"(-100%)"),this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=sn&&(this._renderedContentTransform=sn,this._markChangeDetectionNeeded(function(){ne._renderedContentOffsetNeedsRewrite?(ne._renderedContentOffset-=ne.measureRenderedContentSize(),ne._renderedContentOffsetNeedsRewrite=!1,ne.setRenderedContentOffset(ne._renderedContentOffset)):ne._scrollStrategy.onRenderedOffsetChanged()}))}},{key:"scrollToOffset",value:function(X){var ne=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto",me={behavior:ne};"horizontal"===this.orientation?me.start=X:me.top=X,this.scrollTo(me)}},{key:"scrollToIndex",value:function(X){var ne=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto";this._scrollStrategy.scrollToIndex(X,ne)}},{key:"measureScrollOffset",value:function(X){return X?(0,e.Z)((0,c.Z)($e.prototype),"measureScrollOffset",this).call(this,X):(0,e.Z)((0,c.Z)($e.prototype),"measureScrollOffset",this).call(this,"horizontal"===this.orientation?"start":"top")}},{key:"measureRenderedContentSize",value:function(){var X=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?X.offsetWidth:X.offsetHeight}},{key:"measureRangeSize",value:function(X){return this._forOf?this._forOf.measureRangeSize(X,this.orientation):0}},{key:"checkViewportSize",value:function(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}},{key:"_measureViewportSize",value:function(){var X=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?X.clientWidth:X.clientHeight}},{key:"_markChangeDetectionNeeded",value:function(X){var ne=this;X&&this._runAfterChangeDetection.push(X),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(function(){return Promise.resolve().then(function(){ne._doChangeDetection()})}))}},{key:"_doChangeDetection",value:function(){var X=this;this._isChangeDetectionPending=!1,this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform,this.ngZone.run(function(){return X._changeDetectorRef.markForCheck()});var ne=this._runAfterChangeDetection;this._runAfterChangeDetection=[];var Oe,me=(0,t.Z)(ne);try{for(me.s();!(Oe=me.n()).done;)(0,Oe.value)()}catch(At){me.e(At)}finally{me.f()}}},{key:"_calculateSpacerSize",value:function(){this._totalContentHeight="horizontal"===this.orientation?"":"".concat(this._totalContentSize,"px"),this._totalContentWidth="horizontal"===this.orientation?"".concat(this._totalContentSize,"px"):""}}]),$e}(st);return an.\u0275fac=function(It){return new(It||an)(b.Y36(b.SBq),b.Y36(b.sBO),b.Y36(b.R0b),b.Y36(Pt,8),b.Y36(lt.Is,8),b.Y36(Ee),b.Y36(at))},an.\u0275cmp=b.Xpm({type:an,selectors:[["cdk-virtual-scroll-viewport"]],viewQuery:function(It,$e){var Ae;1&It&&b.Gf(mt,7),2&It&&b.iGM(Ae=b.CRH())&&($e._contentWrapper=Ae.first)},hostAttrs:[1,"cdk-virtual-scroll-viewport"],hostVars:4,hostBindings:function(It,$e){2&It&&b.ekj("cdk-virtual-scroll-orientation-horizontal","horizontal"===$e.orientation)("cdk-virtual-scroll-orientation-vertical","horizontal"!==$e.orientation)},inputs:{orientation:"orientation",appendOnly:"appendOnly"},outputs:{scrolledIndexChange:"scrolledIndexChange"},features:[b._Bn([{provide:st,useExisting:an}]),b.qOj],ngContentSelectors:wt,decls:4,vars:4,consts:[[1,"cdk-virtual-scroll-content-wrapper"],["contentWrapper",""],[1,"cdk-virtual-scroll-spacer"]],template:function(It,$e){1&It&&(b.F$t(),b.TgZ(0,"div",0,1),b.Hsn(2),b.qZA(),b._UZ(3,"div",2)),2&It&&(b.xp6(3),b.Udp("width",$e._totalContentWidth)("height",$e._totalContentHeight))},styles:["cdk-virtual-scroll-viewport{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}.cdk-virtual-scroll-content-wrapper{position:absolute;top:0;left:0;contain:content}[dir=rtl] .cdk-virtual-scroll-content-wrapper{right:0;left:auto}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper{min-height:100%}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;outline:none}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{min-width:100%}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0;border-bottom-width:0;outline:none}.cdk-virtual-scroll-spacer{position:absolute;top:0;left:0;height:1px;width:1px;transform-origin:0 0}[dir=rtl] .cdk-virtual-scroll-spacer{right:0;left:auto;transform-origin:100% 0}\n"],encapsulation:2,changeDetection:0}),an}();function Fe(an,kt,It){if(!It.getBoundingClientRect)return 0;var Ae=It.getBoundingClientRect();return"horizontal"===an?"start"===kt?Ae.left:Ae.right:"start"===kt?Ae.top:Ae.bottom}var et=function(){var an=function(){function kt(It,$e,Ae,X,ne,me){var Oe=this;(0,_.Z)(this,kt),this._viewContainerRef=It,this._template=$e,this._differs=Ae,this._viewRepeater=X,this._viewport=ne,this.viewChange=new I.x,this._dataSourceChanges=new I.x,this.dataStream=this._dataSourceChanges.pipe((0,_e.O)(null),function z(){return(0,$.e)(function(an,kt){var It,$e=!1;an.subscribe((0,be.x)(kt,function(Ae){var X=It;It=Ae,$e&&kt.next([X,Ae]),$e=!0}))})}(),(0,Me.w)(function(He){var At=(0,S.Z)(He,2);return Oe._changeDataSource(At[0],At[1])}),function J(an,kt,It){var $e,Ae,X,ne=!1;return an&&"object"==typeof an?(X=null!==($e=an.bufferSize)&&void 0!==$e?$e:1/0,kt=null!==(Ae=an.windowTime)&&void 0!==Ae?Ae:1/0,ne=!!an.refCount,It=an.scheduler):X=null!=an?an:1/0,(0,Q.B)({connector:function(){return new d.t(X,kt,It)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:ne})}(1)),this._differ=null,this._needsUpdate=!1,this._destroyed=new I.x,this.dataStream.subscribe(function(He){Oe._data=He,Oe._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe((0,ce.R)(this._destroyed)).subscribe(function(He){Oe._renderedRange=He,me.run(function(){return Oe.viewChange.next(Oe._renderedRange)}),Oe._onRenderedDataChange()}),this._viewport.attach(this)}return(0,s.Z)(kt,[{key:"cdkVirtualForOf",get:function(){return this._cdkVirtualForOf},set:function($e){this._cdkVirtualForOf=$e,(0,Xe.Z9)($e)?this._dataSourceChanges.next($e):this._dataSourceChanges.next(new Xe.P3((0,W.b)($e)?$e:Array.from($e||[])))}},{key:"cdkVirtualForTrackBy",get:function(){return this._cdkVirtualForTrackBy},set:function($e){var Ae=this;this._needsUpdate=!0,this._cdkVirtualForTrackBy=$e?function(X,ne){return $e(X+(Ae._renderedRange?Ae._renderedRange.start:0),ne)}:void 0}},{key:"cdkVirtualForTemplate",set:function($e){$e&&(this._needsUpdate=!0,this._template=$e)}},{key:"cdkVirtualForTemplateCacheSize",get:function(){return this._viewRepeater.viewCacheSize},set:function($e){this._viewRepeater.viewCacheSize=(0,h.su)($e)}},{key:"measureRangeSize",value:function($e,Ae){if($e.start>=$e.end)return 0;for(var me,Oe,X=$e.start-this._renderedRange.start,ne=$e.end-$e.start,He=0;He-1;Ft--){var sn=this._viewContainerRef.get(Ft+X);if(sn&&sn.rootNodes.length){Oe=sn.rootNodes[sn.rootNodes.length-1];break}}return me&&Oe?Fe(Ae,"end",Oe)-Fe(Ae,"start",me):0}},{key:"ngDoCheck",value:function(){if(this._differ&&this._needsUpdate){var $e=this._differ.diff(this._renderedItems);$e?this._applyChanges($e):this._updateContext(),this._needsUpdate=!1}}},{key:"ngOnDestroy",value:function(){this._viewport.detach(),this._dataSourceChanges.next(void 0),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete(),this._viewRepeater.detach()}},{key:"_onRenderedDataChange",value:function(){var $e=this;!this._renderedRange||(this._renderedItems=this._data.slice(this._renderedRange.start,this._renderedRange.end),this._differ||(this._differ=this._differs.find(this._renderedItems).create(function(Ae,X){return $e.cdkVirtualForTrackBy?$e.cdkVirtualForTrackBy(Ae,X):X})),this._needsUpdate=!0)}},{key:"_changeDataSource",value:function($e,Ae){return $e&&$e.disconnect(this),this._needsUpdate=!0,Ae?Ae.connect(this):(0,L.of)()}},{key:"_updateContext",value:function(){for(var $e=this._data.length,Ae=this._viewContainerRef.length;Ae--;){var X=this._viewContainerRef.get(Ae);X.context.index=this._renderedRange.start+Ae,X.context.count=$e,this._updateComputedContextProperties(X.context),X.detectChanges()}}},{key:"_applyChanges",value:function($e){var Ae=this;this._viewRepeater.applyChanges($e,this._viewContainerRef,function(Oe,He,At){return Ae._getEmbeddedViewArgs(Oe,At)},function(Oe){return Oe.item}),$e.forEachIdentityChange(function(Oe){Ae._viewContainerRef.get(Oe.currentIndex).context.$implicit=Oe.item});for(var X=this._data.length,ne=this._viewContainerRef.length;ne--;){var me=this._viewContainerRef.get(ne);me.context.index=this._renderedRange.start+ne,me.context.count=X,this._updateComputedContextProperties(me.context)}}},{key:"_updateComputedContextProperties",value:function($e){$e.first=0===$e.index,$e.last=$e.index===$e.count-1,$e.even=$e.index%2==0,$e.odd=!$e.even}},{key:"_getEmbeddedViewArgs",value:function($e,Ae){return{templateRef:this._template,context:{$implicit:$e.item,cdkVirtualForOf:this._cdkVirtualForOf,index:-1,count:-1,first:!1,last:!1,odd:!1,even:!1},index:Ae}}}]),kt}();return an.\u0275fac=function(It){return new(It||an)(b.Y36(b.s_b),b.Y36(b.Rgc),b.Y36(b.ZZ4),b.Y36(Xe.k),b.Y36(ut,4),b.Y36(b.R0b))},an.\u0275dir=b.lG2({type:an,selectors:[["","cdkVirtualFor","","cdkVirtualForOf",""]],inputs:{cdkVirtualForOf:"cdkVirtualForOf",cdkVirtualForTrackBy:"cdkVirtualForTrackBy",cdkVirtualForTemplate:"cdkVirtualForTemplate",cdkVirtualForTemplateCacheSize:"cdkVirtualForTemplateCacheSize"},features:[b._Bn([{provide:Xe.k,useClass:Xe.eX}])]}),an}(),Ht=function(){var an=(0,s.Z)(function kt(){(0,_.Z)(this,kt)});return an.\u0275fac=function(It){return new(It||an)},an.\u0275mod=b.oAB({type:an}),an.\u0275inj=b.cJS({}),an}(),nn=function(){var an=(0,s.Z)(function kt(){(0,_.Z)(this,kt)});return an.\u0275fac=function(It){return new(It||an)},an.\u0275mod=b.oAB({type:an}),an.\u0275inj=b.cJS({imports:[[lt.vT,ue.ud,Ht],lt.vT,Ht]}),an}()},33865:function(Ce,E,n){"use strict";n.d(E,{pN:function(){return d},hD:function(){return lt},O_:function(){return J},Kb:function(){return We},fo:function(){return _e},QJ:function(){return ue},Z4:function(){return K},qM:function(){return ut},fe:function(){return nt},Af:function(){return ve},D5:function(){return te},xN:function(){return xe},s$:function(){return ct},r2:function(){return et},_J:function(){return Fe},Sq:function(){return at},zC:function(){return hn},HT:function(){return ri},Hx:function(){return Jn},T$:function(){return At},$E:function(){return sn},FT:function(){return Ft},bH:function(){return Xt},pF:function(){return Oe},nl:function(){return mt},oF:function(){return wt}});var S=n(97424),t=n(28042),e=n(44014),c=n(71340),u=n(39117),o=n(1884),_=n(46751),s=n(56101),h=n(76484),b=n(89502),T=n(36362),y=n(86613),Y=n(50253),q=n(72957),B=n(76317),k=n(14437),D=n(10745),N=n(68951),I=n(59295),L=n(51588),j=n(14390),le=n(24426),re=[[["caption"]],[["colgroup"],["col"]]],W=["caption","colgroup, col"];function $(un,mn){if(1&un&&(y.TgZ(0,"th",3),y._uU(1),y.qZA()),2&un){var zt=y.oxw();y.Udp("text-align",zt.justify),y.xp6(1),y.hij(" ",zt.headerText," ")}}function be(un,mn){if(1&un&&(y.TgZ(0,"td",4),y._uU(1),y.qZA()),2&un){var zt=mn.$implicit,qe=y.oxw();y.Udp("text-align",qe.justify),y.xp6(1),y.hij(" ",qe.dataAccessor(zt,qe.name)," ")}}function z(un){return function(mn){(0,_.Z)(qe,mn);var zt=(0,s.Z)(qe);function qe(){var pt;(0,u.Z)(this,qe);for(var Ne=arguments.length,Re=new Array(Ne),tt=0;tt4&&void 0!==arguments[4])||arguments[4],Re=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],tt=arguments.length>6?arguments[6]:void 0;(0,u.Z)(this,un),this._isNativeHtmlTable=mn,this._stickCellCss=zt,this.direction=qe,this._coalescedStyleScheduler=pt,this._isBrowser=Ne,this._needsPositionStickyOnElement=Re,this._positionListener=tt,this._cachedCellWidths=[],this._borderCellCss={top:"".concat(zt,"-border-elem-top"),bottom:"".concat(zt,"-border-elem-bottom"),left:"".concat(zt,"-border-elem-left"),right:"".concat(zt,"-border-elem-right")}}return(0,o.Z)(un,[{key:"clearStickyPositioning",value:function(zt,qe){var tt,pt=this,Ne=[],Re=(0,e.Z)(zt);try{for(Re.s();!(tt=Re.n()).done;){var Ke=tt.value;if(Ke.nodeType===Ke.ELEMENT_NODE){Ne.push(Ke);for(var vt=0;vt3&&void 0!==arguments[3])||arguments[3];if(zt.length&&this._isBrowser&&(qe.some(function(fn){return fn})||pt.some(function(fn){return fn}))){var tt=zt[0],Ke=tt.children.length,vt=this._getCellWidths(tt,Re),Rt=this._getStickyStartColumnPositions(vt,qe),rn=this._getStickyEndColumnPositions(vt,pt),Nn=qe.lastIndexOf(!0),$t=pt.indexOf(!0);this._coalescedStyleScheduler.schedule(function(){var In,fn="rtl"===Ne.direction,ln=fn?"right":"left",_n=fn?"left":"right",xn=(0,e.Z)(zt);try{for(xn.s();!(In=xn.n()).done;)for(var Yn=In.value,mi=0;mi1&&void 0!==arguments[1])||arguments[1];if(!qe&&this._cachedCellWidths.length)return this._cachedCellWidths;for(var pt=[],Ne=zt.children,Re=0;Re0;Re--)qe[Re]&&(pt[Re]=Ne,Ne+=zt[Re]);return pt}}]),un}(),Oe=new y.OlP("CDK_SPL"),At=function(){var un=(0,o.Z)(function mn(zt,qe){(0,u.Z)(this,mn),this.viewContainer=zt,this.elementRef=qe});return un.\u0275fac=function(zt){return new(zt||un)(y.Y36(y.s_b),y.Y36(y.SBq))},un.\u0275dir=y.lG2({type:un,selectors:[["","rowOutlet",""]]}),un}(),Ft=function(){var un=(0,o.Z)(function mn(zt,qe){(0,u.Z)(this,mn),this.viewContainer=zt,this.elementRef=qe});return un.\u0275fac=function(zt){return new(zt||un)(y.Y36(y.s_b),y.Y36(y.SBq))},un.\u0275dir=y.lG2({type:un,selectors:[["","headerRowOutlet",""]]}),un}(),sn=function(){var un=(0,o.Z)(function mn(zt,qe){(0,u.Z)(this,mn),this.viewContainer=zt,this.elementRef=qe});return un.\u0275fac=function(zt){return new(zt||un)(y.Y36(y.s_b),y.Y36(y.SBq))},un.\u0275dir=y.lG2({type:un,selectors:[["","footerRowOutlet",""]]}),un}(),Xt=function(){var un=(0,o.Z)(function mn(zt,qe){(0,u.Z)(this,mn),this.viewContainer=zt,this.elementRef=qe});return un.\u0275fac=function(zt){return new(zt||un)(y.Y36(y.s_b),y.Y36(y.SBq))},un.\u0275dir=y.lG2({type:un,selectors:[["","noDataRowOutlet",""]]}),un}(),hn=function(){var un=function(){function mn(zt,qe,pt,Ne,Re,tt,Ke,vt,Rt,rn,Nn,$t){(0,u.Z)(this,mn),this._differs=zt,this._changeDetectorRef=qe,this._elementRef=pt,this._dir=Re,this._platform=Ke,this._viewRepeater=vt,this._coalescedStyleScheduler=Rt,this._viewportRuler=rn,this._stickyPositioningListener=Nn,this._ngZone=$t,this._onDestroy=new Y.x,this._columnDefsByName=new Map,this._customColumnDefs=new Set,this._customRowDefs=new Set,this._customHeaderRowDefs=new Set,this._customFooterRowDefs=new Set,this._headerRowDefChanged=!0,this._footerRowDefChanged=!0,this._stickyColumnStylesNeedReset=!0,this._forceRecalculateCellWidths=!0,this._cachedRenderRowsMap=new Map,this.stickyCssClass="cdk-table-sticky",this.needsPositionStickyOnElement=!0,this._isShowingNoDataRow=!1,this._multiTemplateDataRows=!1,this._fixedLayout=!1,this.contentChanged=new y.vpe,this.viewChange=new B.X({start:0,end:Number.MAX_VALUE}),Ne||this._elementRef.nativeElement.setAttribute("role","table"),this._document=tt,this._isNativeHtmlTable="TABLE"===this._elementRef.nativeElement.nodeName}return(0,o.Z)(mn,[{key:"trackBy",get:function(){return this._trackByFn},set:function(qe){this._trackByFn=qe}},{key:"dataSource",get:function(){return this._dataSource},set:function(qe){this._dataSource!==qe&&this._switchDataSource(qe)}},{key:"multiTemplateDataRows",get:function(){return this._multiTemplateDataRows},set:function(qe){this._multiTemplateDataRows=(0,h.Ig)(qe),this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}},{key:"fixedLayout",get:function(){return this._fixedLayout},set:function(qe){this._fixedLayout=(0,h.Ig)(qe),this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}},{key:"ngOnInit",value:function(){var qe=this;this._setupStickyStyler(),this._isNativeHtmlTable&&this._applyNativeTableSections(),this._dataDiffer=this._differs.find([]).create(function(pt,Ne){return qe.trackBy?qe.trackBy(Ne.dataIndex,Ne.data):Ne}),this._viewportRuler.change().pipe((0,N.R)(this._onDestroy)).subscribe(function(){qe._forceRecalculateCellWidths=!0})}},{key:"ngAfterContentChecked",value:function(){this._cacheRowDefs(),this._cacheColumnDefs();var pt=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||pt,this._forceRecalculateCellWidths=pt,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}},{key:"ngOnDestroy",value:function(){[this._rowOutlet.viewContainer,this._headerRowOutlet.viewContainer,this._footerRowOutlet.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(function(qe){qe.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._onDestroy.next(),this._onDestroy.complete(),(0,b.Z9)(this.dataSource)&&this.dataSource.disconnect(this)}},{key:"renderRows",value:function(){var qe=this;this._renderRows=this._getAllRenderRows();var pt=this._dataDiffer.diff(this._renderRows);if(!pt)return this._updateNoDataRow(),void this.contentChanged.next();var Ne=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(pt,Ne,function(Re,tt,Ke){return qe._getEmbeddedViewArgs(Re.item,Ke)},function(Re){return Re.item.data},function(Re){1===Re.operation&&Re.context&&qe._renderCellTemplateForItem(Re.record.item.rowDef,Re.context)}),this._updateRowIndexContext(),pt.forEachIdentityChange(function(Re){Ne.get(Re.currentIndex).context.$implicit=Re.item.data}),this._updateNoDataRow(),this._ngZone&&y.R0b.isInAngularZone()?this._ngZone.onStable.pipe((0,I.q)(1),(0,N.R)(this._onDestroy)).subscribe(function(){qe.updateStickyColumnStyles()}):this.updateStickyColumnStyles(),this.contentChanged.next()}},{key:"addColumnDef",value:function(qe){this._customColumnDefs.add(qe)}},{key:"removeColumnDef",value:function(qe){this._customColumnDefs.delete(qe)}},{key:"addRowDef",value:function(qe){this._customRowDefs.add(qe)}},{key:"removeRowDef",value:function(qe){this._customRowDefs.delete(qe)}},{key:"addHeaderRowDef",value:function(qe){this._customHeaderRowDefs.add(qe),this._headerRowDefChanged=!0}},{key:"removeHeaderRowDef",value:function(qe){this._customHeaderRowDefs.delete(qe),this._headerRowDefChanged=!0}},{key:"addFooterRowDef",value:function(qe){this._customFooterRowDefs.add(qe),this._footerRowDefChanged=!0}},{key:"removeFooterRowDef",value:function(qe){this._customFooterRowDefs.delete(qe),this._footerRowDefChanged=!0}},{key:"setNoDataRow",value:function(qe){this._customNoDataRow=qe}},{key:"updateStickyHeaderRowStyles",value:function(){var qe=this._getRenderedRows(this._headerRowOutlet),Ne=this._elementRef.nativeElement.querySelector("thead");Ne&&(Ne.style.display=qe.length?"":"none");var Re=this._headerRowDefs.map(function(tt){return tt.sticky});this._stickyStyler.clearStickyPositioning(qe,["top"]),this._stickyStyler.stickRows(qe,Re,"top"),this._headerRowDefs.forEach(function(tt){return tt.resetStickyChanged()})}},{key:"updateStickyFooterRowStyles",value:function(){var qe=this._getRenderedRows(this._footerRowOutlet),Ne=this._elementRef.nativeElement.querySelector("tfoot");Ne&&(Ne.style.display=qe.length?"":"none");var Re=this._footerRowDefs.map(function(tt){return tt.sticky});this._stickyStyler.clearStickyPositioning(qe,["bottom"]),this._stickyStyler.stickRows(qe,Re,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,Re),this._footerRowDefs.forEach(function(tt){return tt.resetStickyChanged()})}},{key:"updateStickyColumnStyles",value:function(){var qe=this,pt=this._getRenderedRows(this._headerRowOutlet),Ne=this._getRenderedRows(this._rowOutlet),Re=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this._fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([].concat((0,c.Z)(pt),(0,c.Z)(Ne),(0,c.Z)(Re)),["left","right"]),this._stickyColumnStylesNeedReset=!1),pt.forEach(function(tt,Ke){qe._addStickyColumnStyles([tt],qe._headerRowDefs[Ke])}),this._rowDefs.forEach(function(tt){for(var Ke=[],vt=0;vt0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach(function(pt,Ne){return qe._renderRow(qe._headerRowOutlet,pt,Ne)}),this.updateStickyHeaderRowStyles()}},{key:"_forceRenderFooterRows",value:function(){var qe=this;this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach(function(pt,Ne){return qe._renderRow(qe._footerRowOutlet,pt,Ne)}),this.updateStickyFooterRowStyles()}},{key:"_addStickyColumnStyles",value:function(qe,pt){var Ne=this,Re=Array.from(pt.columns||[]).map(function(vt){return Ne._columnDefsByName.get(vt)}),tt=Re.map(function(vt){return vt.sticky}),Ke=Re.map(function(vt){return vt.stickyEnd});this._stickyStyler.updateStickyColumns(qe,tt,Ke,!this._fixedLayout||this._forceRecalculateCellWidths)}},{key:"_getRenderedRows",value:function(qe){for(var pt=[],Ne=0;Ne3&&void 0!==arguments[3]?arguments[3]:{},tt=qe.viewContainer.createEmbeddedView(pt.template,Re,Ne);return this._renderCellTemplateForItem(pt,Re),tt}},{key:"_renderCellTemplateForItem",value:function(qe,pt){var Re,Ne=(0,e.Z)(this._getCellTemplates(qe));try{for(Ne.s();!(Re=Ne.n()).done;)We.mostRecentCellOutlet&&We.mostRecentCellOutlet._viewContainer.createEmbeddedView(Re.value,pt)}catch(Ke){Ne.e(Ke)}finally{Ne.f()}this._changeDetectorRef.markForCheck()}},{key:"_updateRowIndexContext",value:function(){for(var qe=this._rowOutlet.viewContainer,pt=0,Ne=qe.length;pt0&&void 0!==arguments[0]&&arguments[0];if(this._enabled&&(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),this._cachedLineHeight)){var le=this._elementRef.nativeElement,re=le.value;if(j||this._minRows!==this._previousMinRows||re!==this._previousValue){var W=this._measureScrollHeight(),$=Math.max(W,this._cachedPlaceholderHeight||0);le.style.height="".concat($,"px"),this._ngZone.runOutsideAngular(function(){"undefined"!=typeof requestAnimationFrame?requestAnimationFrame(function(){return L._scrollToCaretPosition(le)}):setTimeout(function(){return L._scrollToCaretPosition(le)})}),this._previousValue=re,this._previousMinRows=this._minRows}}}},{key:"reset",value:function(){void 0!==this._initialHeight&&(this._textareaElement.style.height=this._initialHeight)}},{key:"_noopInputHandler",value:function(){}},{key:"_getDocument",value:function(){return this._document||document}},{key:"_getWindow",value:function(){return this._getDocument().defaultView||window}},{key:"_scrollToCaretPosition",value:function(L){!this._destroyed.isStopped&&this._hasFocus&&L.setSelectionRange(L.selectionStart,L.selectionEnd)}}]),N}();return D.\u0275fac=function(I){return new(I||D)(c.Y36(c.SBq),c.Y36(e.t4),c.Y36(c.R0b),c.Y36(T.K0,8))},D.\u0275dir=c.lG2({type:D,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(I,L){1&I&&c.NdJ("input",function(){return L._noopInputHandler()})},inputs:{minRows:["cdkAutosizeMinRows","minRows"],maxRows:["cdkAutosizeMaxRows","maxRows"],enabled:["cdkTextareaAutosize","enabled"],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"]}),D}(),k=function(){var D=(0,t.Z)(function N(){(0,S.Z)(this,N)});return D.\u0275fac=function(I){return new(I||D)},D.\u0275mod=c.oAB({type:D}),D.\u0275inj=c.cJS({imports:[[e.ud]]}),D}()},38205:function(Ce,E,n){"use strict";n.d(E,{HI:function(){return re},Xx:function(){return Me},_0:function(){return K},nZ:function(){return mt},Hs:function(){return G},rO:function(){return be},cu:function(){return W},XJ:function(){return ue},Ud:function(){return lt},C2:function(){return j},VY:function(){return le}});var S=n(97424),t=n(28042),e=n(44014),c=n(46751),u=n(56101),o=n(71340),_=n(39117),s=n(1884),h=n(89502),b=n(14437),T=n(50253),y=n(76317),Y=n(10745),q=n(59295),B=n(60116),k=n(68951),D=n(86613),N=n(76484),I=n(51588),L=function(){function wt(){(0,_.Z)(this,wt),this.expansionModel=new h.Ov(!0)}return(0,s.Z)(wt,[{key:"toggle",value:function(Pe){this.expansionModel.toggle(this._trackByValue(Pe))}},{key:"expand",value:function(Pe){this.expansionModel.select(this._trackByValue(Pe))}},{key:"collapse",value:function(Pe){this.expansionModel.deselect(this._trackByValue(Pe))}},{key:"isExpanded",value:function(Pe){return this.expansionModel.isSelected(this._trackByValue(Pe))}},{key:"toggleDescendants",value:function(Pe){this.expansionModel.isSelected(this._trackByValue(Pe))?this.collapseDescendants(Pe):this.expandDescendants(Pe)}},{key:"collapseAll",value:function(){this.expansionModel.clear()}},{key:"expandDescendants",value:function(Pe){var ze,ft=this,ct=[Pe];ct.push.apply(ct,(0,o.Z)(this.getDescendants(Pe))),(ze=this.expansionModel).select.apply(ze,(0,o.Z)(ct.map(function(Ee){return ft._trackByValue(Ee)})))}},{key:"collapseDescendants",value:function(Pe){var ze,ft=this,ct=[Pe];ct.push.apply(ct,(0,o.Z)(this.getDescendants(Pe))),(ze=this.expansionModel).deselect.apply(ze,(0,o.Z)(ct.map(function(Ee){return ft._trackByValue(Ee)})))}},{key:"_trackByValue",value:function(Pe){return this.trackBy?this.trackBy(Pe):Pe}}]),wt}(),j=function(wt){(0,c.Z)(Pe,wt);var Pt=(0,u.Z)(Pe);function Pe(ze,ft,ct){var Ee;return(0,_.Z)(this,Pe),(Ee=Pt.call(this)).getLevel=ze,Ee.isExpandable=ft,Ee.options=ct,Ee.options&&(Ee.trackBy=Ee.options.trackBy),Ee}return(0,s.Z)(Pe,[{key:"getDescendants",value:function(ft){for(var Ee=[],st=this.dataNodes.indexOf(ft)+1;st1&&void 0!==arguments[1]?arguments[1]:this._dataDiffer,Ee=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this._nodeOutlet.viewContainer,st=arguments.length>3?arguments[3]:void 0,nt=ct.diff(ze);!nt||(nt.forEachOperation(function(at,We,xe){if(null==at.previousIndex)ft.insertNode(ze[xe],xe,Ee,st);else if(null==xe)Ee.remove(We),ft._levels.delete(at.item);else{var ut=Ee.get(We);Ee.move(ut,xe)}}),this._changeDetectorRef.detectChanges())}},{key:"_getNodeDef",value:function(ze,ft){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(function(Ee){return Ee.when&&Ee.when(ft,ze)})||this._defaultNodeDef}},{key:"insertNode",value:function(ze,ft,ct,Ee){var st=this._getNodeDef(ze,ft),nt=new $(ze);nt.level=this.treeControl.getLevel?this.treeControl.getLevel(ze):void 0!==Ee&&this._levels.has(Ee)?this._levels.get(Ee)+1:0,this._levels.set(ze,nt.level),(ct||this._nodeOutlet.viewContainer).createEmbeddedView(st.template,nt,ft),G.mostRecentTreeNode&&(G.mostRecentTreeNode.data=ze)}}]),Pt}();return wt.\u0275fac=function(Pe){return new(Pe||wt)(D.Y36(D.ZZ4),D.Y36(D.sBO))},wt.\u0275cmp=D.Xpm({type:wt,selectors:[["cdk-tree"]],contentQueries:function(Pe,ze,ft){var ct;1&Pe&&D.Suo(ft,be,5),2&Pe&&D.iGM(ct=D.CRH())&&(ze._nodeDefs=ct)},viewQuery:function(Pe,ze){var ft;1&Pe&&D.Gf(W,7),2&Pe&&D.iGM(ft=D.CRH())&&(ze._nodeOutlet=ft.first)},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(Pe,ze){1&Pe&&D.GkF(0,0)},directives:[W],encapsulation:2}),wt}(),G=function(){var wt=function(){function Pt(Pe,ze){(0,_.Z)(this,Pt),this._elementRef=Pe,this._tree=ze,this._destroyed=new T.x,this._dataChanges=new T.x,Pt.mostRecentTreeNode=this,this.role="treeitem"}return(0,s.Z)(Pt,[{key:"role",get:function(){return"treeitem"},set:function(ze){this._elementRef.nativeElement.setAttribute("role",ze)}},{key:"data",get:function(){return this._data},set:function(ze){ze!==this._data&&(this._data=ze,this._setRoleFromData(),this._dataChanges.next())}},{key:"isExpanded",get:function(){return this._tree.treeControl.isExpanded(this._data)}},{key:"level",get:function(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}},{key:"ngOnInit",value:function(){this._parentNodeAriaLevel=function ce(wt){for(var Pt=wt.parentElement;Pt&&!_e(Pt);)Pt=Pt.parentElement;return Pt?Pt.classList.contains("cdk-nested-tree-node")?(0,N.su)(Pt.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level","".concat(this.level+1))}},{key:"ngOnDestroy",value:function(){Pt.mostRecentTreeNode===this&&(Pt.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"focus",value:function(){this._elementRef.nativeElement.focus()}},{key:"_setRoleFromData",value:function(){this.role="treeitem"}}]),Pt}();return wt.mostRecentTreeNode=null,wt.\u0275fac=function(Pe){return new(Pe||wt)(D.Y36(D.SBq),D.Y36(K))},wt.\u0275dir=D.lG2({type:wt,selectors:[["cdk-tree-node"]],hostAttrs:[1,"cdk-tree-node"],hostVars:1,hostBindings:function(Pe,ze){2&Pe&&D.uIk("aria-expanded",ze.isExpanded)},inputs:{role:"role"},exportAs:["cdkTreeNode"]}),wt}();function _e(wt){var Pt=wt.classList;return!(!(null==Pt?void 0:Pt.contains("cdk-nested-tree-node"))&&!(null==Pt?void 0:Pt.contains("cdk-tree")))}var Me=function(){var wt=function(Pt){(0,c.Z)(ze,Pt);var Pe=(0,u.Z)(ze);function ze(ft,ct,Ee){var st;return(0,_.Z)(this,ze),(st=Pe.call(this,ft,ct))._differs=Ee,st}return(0,s.Z)(ze,[{key:"ngAfterContentInit",value:function(){var ct=this;this._dataDiffer=this._differs.find([]).create(this._tree.trackBy);var Ee=this._tree.treeControl.getChildren(this.data);Array.isArray(Ee)?this.updateChildrenNodes(Ee):(0,b.b)(Ee)&&Ee.pipe((0,k.R)(this._destroyed)).subscribe(function(st){return ct.updateChildrenNodes(st)}),this.nodeOutlet.changes.pipe((0,k.R)(this._destroyed)).subscribe(function(){return ct.updateChildrenNodes()})}},{key:"ngOnInit",value:function(){(0,S.Z)((0,t.Z)(ze.prototype),"ngOnInit",this).call(this)}},{key:"ngOnDestroy",value:function(){this._clear(),(0,S.Z)((0,t.Z)(ze.prototype),"ngOnDestroy",this).call(this)}},{key:"updateChildrenNodes",value:function(ct){var Ee=this._getNodeOutlet();ct&&(this._children=ct),Ee&&this._children?this._tree.renderNodeChanges(this._children,this._dataDiffer,Ee.viewContainer,this._data):this._dataDiffer.diff([])}},{key:"_clear",value:function(){var ct=this._getNodeOutlet();ct&&(ct.viewContainer.clear(),this._dataDiffer.diff([]))}},{key:"_getNodeOutlet",value:function(){var ct=this,Ee=this.nodeOutlet;return Ee&&Ee.find(function(st){return!st._node||st._node===ct})}}]),ze}(G);return wt.\u0275fac=function(Pe){return new(Pe||wt)(D.Y36(D.SBq),D.Y36(K),D.Y36(D.ZZ4))},wt.\u0275dir=D.lG2({type:wt,selectors:[["cdk-nested-tree-node"]],contentQueries:function(Pe,ze,ft){var ct;1&Pe&&D.Suo(ft,W,5),2&Pe&&D.iGM(ct=D.CRH())&&(ze.nodeOutlet=ct)},hostAttrs:[1,"cdk-nested-tree-node"],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["cdkNestedTreeNode"],features:[D._Bn([{provide:G,useExisting:wt},{provide:re,useExisting:wt}]),D.qOj]}),wt}(),ve=/([A-Za-z%]+)$/,ue=function(){var wt=function(){function Pt(Pe,ze,ft,ct){var Ee=this;(0,_.Z)(this,Pt),this._treeNode=Pe,this._tree=ze,this._element=ft,this._dir=ct,this._destroyed=new T.x,this.indentUnits="px",this._indent=40,this._setPadding(),ct&&ct.change.pipe((0,k.R)(this._destroyed)).subscribe(function(){return Ee._setPadding(!0)}),Pe._dataChanges.subscribe(function(){return Ee._setPadding()})}return(0,s.Z)(Pt,[{key:"level",get:function(){return this._level},set:function(ze){this._setLevelInput(ze)}},{key:"indent",get:function(){return this._indent},set:function(ze){this._setIndentInput(ze)}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_paddingIndent",value:function(){var ze=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,ft=null==this._level?ze:this._level;return"number"==typeof ft?"".concat(ft*this._indent).concat(this.indentUnits):null}},{key:"_setPadding",value:function(){var ze=arguments.length>0&&void 0!==arguments[0]&&arguments[0],ft=this._paddingIndent();if(ft!==this._currentPadding||ze){var ct=this._element.nativeElement,Ee=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",st="paddingLeft"===Ee?"paddingRight":"paddingLeft";ct.style[Ee]=ft||"",ct.style[st]="",this._currentPadding=ft}}},{key:"_setLevelInput",value:function(ze){this._level=(0,N.su)(ze,null),this._setPadding()}},{key:"_setIndentInput",value:function(ze){var ft=ze,ct="px";if("string"==typeof ze){var Ee=ze.split(ve);ft=Ee[0],ct=Ee[1]||ct}this.indentUnits=ct,this._indent=(0,N.su)(ft),this._setPadding()}}]),Pt}();return wt.\u0275fac=function(Pe){return new(Pe||wt)(D.Y36(G),D.Y36(K),D.Y36(D.SBq),D.Y36(I.Is,8))},wt.\u0275dir=D.lG2({type:wt,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),wt}(),lt=function(){var wt=function(){function Pt(Pe,ze){(0,_.Z)(this,Pt),this._tree=Pe,this._treeNode=ze,this._recursive=!1}return(0,s.Z)(Pt,[{key:"recursive",get:function(){return this._recursive},set:function(ze){this._recursive=(0,N.Ig)(ze)}},{key:"_toggle",value:function(ze){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),ze.stopPropagation()}}]),Pt}();return wt.\u0275fac=function(Pe){return new(Pe||wt)(D.Y36(K),D.Y36(G))},wt.\u0275dir=D.lG2({type:wt,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(Pe,ze){1&Pe&&D.NdJ("click",function(ct){return ze._toggle(ct)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),wt}(),mt=function(){var wt=(0,s.Z)(function Pt(){(0,_.Z)(this,Pt)});return wt.\u0275fac=function(Pe){return new(Pe||wt)},wt.\u0275mod=D.oAB({type:wt}),wt.\u0275inj=D.cJS({}),wt}()},36362:function(Ce,E,n){"use strict";n.d(E,{mr:function(){return $},Ov:function(){return Wi},ez:function(){return Ua},K0:function(){return Y},uU:function(){return oa},JJ:function(){return Dn},Do:function(){return z},Ts:function(){return ir},V_:function(){return k},Ye:function(){return d},S$:function(){return re},mk:function(){return vi},sg:function(){return _i},O5:function(){return Ha},PC:function(){return ht},RF:function(){return va},n9:function(){return Ka},ED:function(){return Zt},tP:function(){return Vt},b0:function(){return be},lw:function(){return q},OU:function(){return ya},rS:function(){return xi},gd:function(){return Ui},EM:function(){return no},JF:function(){return gt},uf:function(){return wa},NF:function(){return Ea},w_:function(){return y},bD:function(){return zi},q:function(){return h},Mx:function(){return Wn},HT:function(){return T}});var S=n(44014),t=n(78170),e=n(46751),c=n(56101),u=n(1884),o=n(39117),_=n(86613),s=null;function h(){return s}function T(de){s||(s=de)}var y=(0,u.Z)(function de(){(0,o.Z)(this,de)}),Y=new _.OlP("DocumentToken"),q=function(){var de=function(){function we(){(0,o.Z)(this,we)}return(0,u.Z)(we,[{key:"historyGo",value:function(Ge){throw new Error("Not implemented")}}]),we}();return de.\u0275fac=function(Qe){return new(Qe||de)},de.\u0275prov=_.Yz7({token:de,factory:function(){return function B(){return(0,_.LFG)(D)}()},providedIn:"platform"}),de}(),k=new _.OlP("Location Initialized"),D=function(){var de=function(we){(0,e.Z)(Ge,we);var Qe=(0,c.Z)(Ge);function Ge(Mt){var Nt;return(0,o.Z)(this,Ge),(Nt=Qe.call(this))._doc=Mt,Nt._init(),Nt}return(0,u.Z)(Ge,[{key:"_init",value:function(){this.location=window.location,this._history=window.history}},{key:"getBaseHrefFromDOM",value:function(){return h().getBaseHref(this._doc)}},{key:"onPopState",value:function(Nt){var yn=h().getGlobalEventTarget(this._doc,"window");return yn.addEventListener("popstate",Nt,!1),function(){return yn.removeEventListener("popstate",Nt)}}},{key:"onHashChange",value:function(Nt){var yn=h().getGlobalEventTarget(this._doc,"window");return yn.addEventListener("hashchange",Nt,!1),function(){return yn.removeEventListener("hashchange",Nt)}}},{key:"href",get:function(){return this.location.href}},{key:"protocol",get:function(){return this.location.protocol}},{key:"hostname",get:function(){return this.location.hostname}},{key:"port",get:function(){return this.location.port}},{key:"pathname",get:function(){return this.location.pathname},set:function(Nt){this.location.pathname=Nt}},{key:"search",get:function(){return this.location.search}},{key:"hash",get:function(){return this.location.hash}},{key:"pushState",value:function(Nt,yn,Ln){N()?this._history.pushState(Nt,yn,Ln):this.location.hash=Ln}},{key:"replaceState",value:function(Nt,yn,Ln){N()?this._history.replaceState(Nt,yn,Ln):this.location.hash=Ln}},{key:"forward",value:function(){this._history.forward()}},{key:"back",value:function(){this._history.back()}},{key:"historyGo",value:function(){var Nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this._history.go(Nt)}},{key:"getState",value:function(){return this._history.state}}]),Ge}(q);return de.\u0275fac=function(Qe){return new(Qe||de)(_.LFG(Y))},de.\u0275prov=_.Yz7({token:de,factory:function(){return function I(){return new D((0,_.LFG)(Y))}()},providedIn:"platform"}),de}();function N(){return!!window.history.pushState}function L(de,we){if(0==de.length)return we;if(0==we.length)return de;var Qe=0;return de.endsWith("/")&&Qe++,we.startsWith("/")&&Qe++,2==Qe?de+we.substring(1):1==Qe?de+we:de+"/"+we}function j(de){var we=de.match(/#|\?|$/),Qe=we&&we.index||de.length;return de.slice(0,Qe-("/"===de[Qe-1]?1:0))+de.slice(Qe)}function le(de){return de&&"?"!==de[0]?"?"+de:de}var re=function(){var de=function(){function we(){(0,o.Z)(this,we)}return(0,u.Z)(we,[{key:"historyGo",value:function(Ge){throw new Error("Not implemented")}}]),we}();return de.\u0275fac=function(Qe){return new(Qe||de)},de.\u0275prov=_.Yz7({token:de,factory:function(){return function W(de){var we=(0,_.LFG)(Y).location;return new be((0,_.LFG)(q),we&&we.origin||"")}()},providedIn:"root"}),de}(),$=new _.OlP("appBaseHref"),be=function(){var de=function(we){(0,e.Z)(Ge,we);var Qe=(0,c.Z)(Ge);function Ge(Mt,Nt){var yn;if((0,o.Z)(this,Ge),(yn=Qe.call(this))._platformLocation=Mt,yn._removeListenerFns=[],null==Nt&&(Nt=yn._platformLocation.getBaseHrefFromDOM()),null==Nt)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return yn._baseHref=Nt,yn}return(0,u.Z)(Ge,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(Nt){this._removeListenerFns.push(this._platformLocation.onPopState(Nt),this._platformLocation.onHashChange(Nt))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"prepareExternalUrl",value:function(Nt){return L(this._baseHref,Nt)}},{key:"path",value:function(){var Nt=arguments.length>0&&void 0!==arguments[0]&&arguments[0],yn=this._platformLocation.pathname+le(this._platformLocation.search),Ln=this._platformLocation.hash;return Ln&&Nt?"".concat(yn).concat(Ln):yn}},{key:"pushState",value:function(Nt,yn,Ln,ei){var li=this.prepareExternalUrl(Ln+le(ei));this._platformLocation.pushState(Nt,yn,li)}},{key:"replaceState",value:function(Nt,yn,Ln,ei){var li=this.prepareExternalUrl(Ln+le(ei));this._platformLocation.replaceState(Nt,yn,li)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var yn,Ln,Nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(Ln=(yn=this._platformLocation).historyGo)||void 0===Ln||Ln.call(yn,Nt)}}]),Ge}(re);return de.\u0275fac=function(Qe){return new(Qe||de)(_.LFG(q),_.LFG($,8))},de.\u0275prov=_.Yz7({token:de,factory:de.\u0275fac}),de}(),z=function(){var de=function(we){(0,e.Z)(Ge,we);var Qe=(0,c.Z)(Ge);function Ge(Mt,Nt){var yn;return(0,o.Z)(this,Ge),(yn=Qe.call(this))._platformLocation=Mt,yn._baseHref="",yn._removeListenerFns=[],null!=Nt&&(yn._baseHref=Nt),yn}return(0,u.Z)(Ge,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(Nt){this._removeListenerFns.push(this._platformLocation.onPopState(Nt),this._platformLocation.onHashChange(Nt))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"path",value:function(){var yn=this._platformLocation.hash;return null==yn&&(yn="#"),yn.length>0?yn.substring(1):yn}},{key:"prepareExternalUrl",value:function(Nt){var yn=L(this._baseHref,Nt);return yn.length>0?"#"+yn:yn}},{key:"pushState",value:function(Nt,yn,Ln,ei){var li=this.prepareExternalUrl(Ln+le(ei));0==li.length&&(li=this._platformLocation.pathname),this._platformLocation.pushState(Nt,yn,li)}},{key:"replaceState",value:function(Nt,yn,Ln,ei){var li=this.prepareExternalUrl(Ln+le(ei));0==li.length&&(li=this._platformLocation.pathname),this._platformLocation.replaceState(Nt,yn,li)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var yn,Ln,Nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(Ln=(yn=this._platformLocation).historyGo)||void 0===Ln||Ln.call(yn,Nt)}}]),Ge}(re);return de.\u0275fac=function(Qe){return new(Qe||de)(_.LFG(q),_.LFG($,8))},de.\u0275prov=_.Yz7({token:de,factory:de.\u0275fac}),de}(),d=function(){var de=function(){function we(Qe,Ge){var Mt=this;(0,o.Z)(this,we),this._subject=new _.vpe,this._urlChangeListeners=[],this._platformStrategy=Qe;var Nt=this._platformStrategy.getBaseHref();this._platformLocation=Ge,this._baseHref=j(te(Nt)),this._platformStrategy.onPopState(function(yn){Mt._subject.emit({url:Mt.path(!0),pop:!0,state:yn.state,type:yn.type})})}return(0,u.Z)(we,[{key:"path",value:function(){var Ge=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.normalize(this._platformStrategy.path(Ge))}},{key:"getState",value:function(){return this._platformLocation.getState()}},{key:"isCurrentPathEqualTo",value:function(Ge){var Mt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this.path()==this.normalize(Ge+le(Mt))}},{key:"normalize",value:function(Ge){return we.stripTrailingSlash(function J(de,we){return de&&we.startsWith(de)?we.substring(de.length):we}(this._baseHref,te(Ge)))}},{key:"prepareExternalUrl",value:function(Ge){return Ge&&"/"!==Ge[0]&&(Ge="/"+Ge),this._platformStrategy.prepareExternalUrl(Ge)}},{key:"go",value:function(Ge){var Mt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",Nt=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.pushState(Nt,"",Ge,Mt),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ge+le(Mt)),Nt)}},{key:"replaceState",value:function(Ge){var Mt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",Nt=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.replaceState(Nt,"",Ge,Mt),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ge+le(Mt)),Nt)}},{key:"forward",value:function(){this._platformStrategy.forward()}},{key:"back",value:function(){this._platformStrategy.back()}},{key:"historyGo",value:function(){var Mt,Nt,Ge=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(Nt=(Mt=this._platformStrategy).historyGo)||void 0===Nt||Nt.call(Mt,Ge)}},{key:"onUrlChange",value:function(Ge){var Mt=this;this._urlChangeListeners.push(Ge),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(function(Nt){Mt._notifyUrlChangeListeners(Nt.url,Nt.state)}))}},{key:"_notifyUrlChangeListeners",value:function(){var Ge=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",Mt=arguments.length>1?arguments[1]:void 0;this._urlChangeListeners.forEach(function(Nt){return Nt(Ge,Mt)})}},{key:"subscribe",value:function(Ge,Mt,Nt){return this._subject.subscribe({next:Ge,error:Mt,complete:Nt})}}]),we}();return de.normalizeQueryParams=le,de.joinWithSlash=L,de.stripTrailingSlash=j,de.\u0275fac=function(Qe){return new(Qe||de)(_.LFG(re),_.LFG(q))},de.\u0275prov=_.Yz7({token:de,factory:function(){return function Q(){return new d((0,_.LFG)(re),(0,_.LFG)(q))}()},providedIn:"root"}),de}();function te(de){return de.replace(/\/index.html$/,"")}var G=function(){return(G=G||{})[G.Decimal=0]="Decimal",G[G.Percent=1]="Percent",G[G.Currency=2]="Currency",G[G.Scientific=3]="Scientific",G}(),ce=function(){return(ce=ce||{})[ce.Zero=0]="Zero",ce[ce.One=1]="One",ce[ce.Two=2]="Two",ce[ce.Few=3]="Few",ce[ce.Many=4]="Many",ce[ce.Other=5]="Other",ce}(),_e=function(){return(_e=_e||{})[_e.Format=0]="Format",_e[_e.Standalone=1]="Standalone",_e}(),Me=function(){return(Me=Me||{})[Me.Narrow=0]="Narrow",Me[Me.Abbreviated=1]="Abbreviated",Me[Me.Wide=2]="Wide",Me[Me.Short=3]="Short",Me}(),ve=function(){return(ve=ve||{})[ve.Short=0]="Short",ve[ve.Medium=1]="Medium",ve[ve.Long=2]="Long",ve[ve.Full=3]="Full",ve}(),ue=function(){return(ue=ue||{})[ue.Decimal=0]="Decimal",ue[ue.Group=1]="Group",ue[ue.List=2]="List",ue[ue.PercentSign=3]="PercentSign",ue[ue.PlusSign=4]="PlusSign",ue[ue.MinusSign=5]="MinusSign",ue[ue.Exponential=6]="Exponential",ue[ue.SuperscriptingExponent=7]="SuperscriptingExponent",ue[ue.PerMille=8]="PerMille",ue[ue.Infinity=9]="Infinity",ue[ue.NaN=10]="NaN",ue[ue.TimeSeparator=11]="TimeSeparator",ue[ue.CurrencyDecimal=12]="CurrencyDecimal",ue[ue.CurrencyGroup=13]="CurrencyGroup",ue}();function ct(de,we){return It((0,_.cg1)(de)[_.wAp.DateFormat],we)}function Ee(de,we){return It((0,_.cg1)(de)[_.wAp.TimeFormat],we)}function st(de,we){return It((0,_.cg1)(de)[_.wAp.DateTimeFormat],we)}function nt(de,we){var Qe=(0,_.cg1)(de),Ge=Qe[_.wAp.NumberSymbols][we];if(void 0===Ge){if(we===ue.CurrencyDecimal)return Qe[_.wAp.NumberSymbols][ue.Decimal];if(we===ue.CurrencyGroup)return Qe[_.wAp.NumberSymbols][ue.Group]}return Ge}var et=_.kL8;function Ht(de){if(!de[_.wAp.ExtraData])throw new Error('Missing extra locale data for the locale "'.concat(de[_.wAp.LocaleId],'". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.'))}function It(de,we){for(var Qe=we;Qe>-1;Qe--)if(void 0!==de[Qe])return de[Qe];throw new Error("Locale data API: locale data undefined")}function $e(de){var we=de.split(":"),Qe=(0,t.Z)(we,2);return{hours:+Qe[0],minutes:+Qe[1]}}var me=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,Oe={},He=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/,At=function(){return(At=At||{})[At.Short=0]="Short",At[At.ShortGMT=1]="ShortGMT",At[At.Long=2]="Long",At[At.Extended=3]="Extended",At}(),Ft=function(){return(Ft=Ft||{})[Ft.FullYear=0]="FullYear",Ft[Ft.Month=1]="Month",Ft[Ft.Date=2]="Date",Ft[Ft.Hours=3]="Hours",Ft[Ft.Minutes=4]="Minutes",Ft[Ft.Seconds=5]="Seconds",Ft[Ft.FractionalSeconds=6]="FractionalSeconds",Ft[Ft.Day=7]="Day",Ft}(),sn=function(){return(sn=sn||{})[sn.DayPeriods=0]="DayPeriods",sn[sn.Days=1]="Days",sn[sn.Months=2]="Months",sn[sn.Eras=3]="Eras",sn}();function Xt(de,we,Qe,Ge){var Mt=function fn(de){if(_n(de))return de;if("number"==typeof de&&!isNaN(de))return new Date(de);if("string"==typeof de){if(de=de.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(de)){var we=de.split("-").map(function(Ai){return+Ai}),Qe=(0,t.Z)(we,3),Mt=Qe[1],yn=Qe[2];return gn(Qe[0],(void 0===Mt?1:Mt)-1,void 0===yn?1:yn)}var li,ei=parseFloat(de);if(!isNaN(de-ei))return new Date(ei);if(li=de.match(me))return function ln(de){var we=new Date(0),Qe=0,Ge=0,Mt=de[8]?we.setUTCFullYear:we.setFullYear,Nt=de[8]?we.setUTCHours:we.setHours;de[9]&&(Qe=Number(de[9]+de[10]),Ge=Number(de[9]+de[11])),Mt.call(we,Number(de[1]),Number(de[2])-1,Number(de[3]));var yn=Number(de[4]||0)-Qe,Ln=Number(de[5]||0)-Ge,ei=Number(de[6]||0),li=Math.floor(1e3*parseFloat("0."+(de[7]||0)));return Nt.call(we,yn,Ln,ei,li),we}(li)}var Si=new Date(de);if(!_n(Si))throw new Error('Unable to convert "'.concat(de,'" into a date'));return Si}(de);we=vn(Qe,we)||we;for(var Ln,yn=[];we;){if(!(Ln=He.exec(we))){yn.push(we);break}var ei=(yn=yn.concat(Ln.slice(1))).pop();if(!ei)break;we=ei}var li=Mt.getTimezoneOffset();Ge&&(li=rn(Ge,li),Mt=function $t(de,we,Qe){var Ge=Qe?-1:1,Mt=de.getTimezoneOffset();return function Nn(de,we){return(de=new Date(de.getTime())).setMinutes(de.getMinutes()+we),de}(de,Ge*(rn(we,Mt)-Mt))}(Mt,Ge,!0));var Si="";return yn.forEach(function(Ai){var Fi=function Rt(de){if(vt[de])return vt[de];var we;switch(de){case"G":case"GG":case"GGG":we=un(sn.Eras,Me.Abbreviated);break;case"GGGG":we=un(sn.Eras,Me.Wide);break;case"GGGGG":we=un(sn.Eras,Me.Narrow);break;case"y":we=oi(Ft.FullYear,1,0,!1,!0);break;case"yy":we=oi(Ft.FullYear,2,0,!0,!0);break;case"yyy":we=oi(Ft.FullYear,3,0,!1,!0);break;case"yyyy":we=oi(Ft.FullYear,4,0,!1,!0);break;case"Y":we=Ke(1);break;case"YY":we=Ke(2,!0);break;case"YYY":we=Ke(3);break;case"YYYY":we=Ke(4);break;case"M":case"L":we=oi(Ft.Month,1,1);break;case"MM":case"LL":we=oi(Ft.Month,2,1);break;case"MMM":we=un(sn.Months,Me.Abbreviated);break;case"MMMM":we=un(sn.Months,Me.Wide);break;case"MMMMM":we=un(sn.Months,Me.Narrow);break;case"LLL":we=un(sn.Months,Me.Abbreviated,_e.Standalone);break;case"LLLL":we=un(sn.Months,Me.Wide,_e.Standalone);break;case"LLLLL":we=un(sn.Months,Me.Narrow,_e.Standalone);break;case"w":we=tt(1);break;case"ww":we=tt(2);break;case"W":we=tt(1,!0);break;case"d":we=oi(Ft.Date,1);break;case"dd":we=oi(Ft.Date,2);break;case"c":case"cc":we=oi(Ft.Day,1);break;case"ccc":we=un(sn.Days,Me.Abbreviated,_e.Standalone);break;case"cccc":we=un(sn.Days,Me.Wide,_e.Standalone);break;case"ccccc":we=un(sn.Days,Me.Narrow,_e.Standalone);break;case"cccccc":we=un(sn.Days,Me.Short,_e.Standalone);break;case"E":case"EE":case"EEE":we=un(sn.Days,Me.Abbreviated);break;case"EEEE":we=un(sn.Days,Me.Wide);break;case"EEEEE":we=un(sn.Days,Me.Narrow);break;case"EEEEEE":we=un(sn.Days,Me.Short);break;case"a":case"aa":case"aaa":we=un(sn.DayPeriods,Me.Abbreviated);break;case"aaaa":we=un(sn.DayPeriods,Me.Wide);break;case"aaaaa":we=un(sn.DayPeriods,Me.Narrow);break;case"b":case"bb":case"bbb":we=un(sn.DayPeriods,Me.Abbreviated,_e.Standalone,!0);break;case"bbbb":we=un(sn.DayPeriods,Me.Wide,_e.Standalone,!0);break;case"bbbbb":we=un(sn.DayPeriods,Me.Narrow,_e.Standalone,!0);break;case"B":case"BB":case"BBB":we=un(sn.DayPeriods,Me.Abbreviated,_e.Format,!0);break;case"BBBB":we=un(sn.DayPeriods,Me.Wide,_e.Format,!0);break;case"BBBBB":we=un(sn.DayPeriods,Me.Narrow,_e.Format,!0);break;case"h":we=oi(Ft.Hours,1,-12);break;case"hh":we=oi(Ft.Hours,2,-12);break;case"H":we=oi(Ft.Hours,1);break;case"HH":we=oi(Ft.Hours,2);break;case"m":we=oi(Ft.Minutes,1);break;case"mm":we=oi(Ft.Minutes,2);break;case"s":we=oi(Ft.Seconds,1);break;case"ss":we=oi(Ft.Seconds,2);break;case"S":we=oi(Ft.FractionalSeconds,1);break;case"SS":we=oi(Ft.FractionalSeconds,2);break;case"SSS":we=oi(Ft.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":we=zt(At.Short);break;case"ZZZZZ":we=zt(At.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":we=zt(At.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":we=zt(At.Long);break;default:return null}return vt[de]=we,we}(Ai);Si+=Fi?Fi(Mt,Qe,li):"''"===Ai?"'":Ai.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),Si}function gn(de,we,Qe){var Ge=new Date(0);return Ge.setFullYear(de,we,Qe),Ge.setHours(0,0,0),Ge}function vn(de,we){var Qe=function Xe(de){return(0,_.cg1)(de)[_.wAp.LocaleId]}(de);if(Oe[Qe]=Oe[Qe]||{},Oe[Qe][we])return Oe[Qe][we];var Ge="";switch(we){case"shortDate":Ge=ct(de,ve.Short);break;case"mediumDate":Ge=ct(de,ve.Medium);break;case"longDate":Ge=ct(de,ve.Long);break;case"fullDate":Ge=ct(de,ve.Full);break;case"shortTime":Ge=Ee(de,ve.Short);break;case"mediumTime":Ge=Ee(de,ve.Medium);break;case"longTime":Ge=Ee(de,ve.Long);break;case"fullTime":Ge=Ee(de,ve.Full);break;case"short":var Mt=vn(de,"shortTime"),Nt=vn(de,"shortDate");Ge=hn(st(de,ve.Short),[Mt,Nt]);break;case"medium":var yn=vn(de,"mediumTime"),Ln=vn(de,"mediumDate");Ge=hn(st(de,ve.Medium),[yn,Ln]);break;case"long":var ei=vn(de,"longTime"),li=vn(de,"longDate");Ge=hn(st(de,ve.Long),[ei,li]);break;case"full":var Si=vn(de,"fullTime"),Ai=vn(de,"fullDate");Ge=hn(st(de,ve.Full),[Si,Ai])}return Ge&&(Oe[Qe][we]=Ge),Ge}function hn(de,we){return we&&(de=de.replace(/\{([^}]+)}/g,function(Qe,Ge){return null!=we&&Ge in we?we[Ge]:Qe})),de}function jn(de,we){var Qe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",Ge=arguments.length>3?arguments[3]:void 0,Mt=arguments.length>4?arguments[4]:void 0,Nt="";(de<0||Mt&&de<=0)&&(Mt?de=1-de:(de=-de,Nt=Qe));for(var yn=String(de);yn.length2&&void 0!==arguments[2]?arguments[2]:0,Ge=arguments.length>3&&void 0!==arguments[3]&&arguments[3],Mt=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return function(Nt,yn){var Ln=ri(de,Nt);if((Qe>0||Ln>-Qe)&&(Ln+=Qe),de===Ft.Hours)0===Ln&&-12===Qe&&(Ln=12);else if(de===Ft.FractionalSeconds)return Jn(Ln,we);var ei=nt(yn,ue.MinusSign);return jn(Ln,we,ei,Ge,Mt)}}function ri(de,we){switch(de){case Ft.FullYear:return we.getFullYear();case Ft.Month:return we.getMonth();case Ft.Date:return we.getDate();case Ft.Hours:return we.getHours();case Ft.Minutes:return we.getMinutes();case Ft.Seconds:return we.getSeconds();case Ft.FractionalSeconds:return we.getMilliseconds();case Ft.Day:return we.getDay();default:throw new Error('Unknown DateType value "'.concat(de,'".'))}}function un(de,we){var Qe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:_e.Format,Ge=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return function(Mt,Nt){return mn(Mt,Nt,de,we,Qe,Ge)}}function mn(de,we,Qe,Ge,Mt,Nt){switch(Qe){case sn.Months:return function Pt(de,we,Qe){var Ge=(0,_.cg1)(de),Nt=It([Ge[_.wAp.MonthsFormat],Ge[_.wAp.MonthsStandalone]],we);return It(Nt,Qe)}(we,Mt,Ge)[de.getMonth()];case sn.Days:return function wt(de,we,Qe){var Ge=(0,_.cg1)(de),Nt=It([Ge[_.wAp.DaysFormat],Ge[_.wAp.DaysStandalone]],we);return It(Nt,Qe)}(we,Mt,Ge)[de.getDay()];case sn.DayPeriods:var yn=de.getHours(),Ln=de.getMinutes();if(Nt){var ei=function nn(de){var we=(0,_.cg1)(de);return Ht(we),(we[_.wAp.ExtraData][2]||[]).map(function(Ge){return"string"==typeof Ge?$e(Ge):[$e(Ge[0]),$e(Ge[1])]})}(we),li=function an(de,we,Qe){var Ge=(0,_.cg1)(de);Ht(Ge);var Nt=It([Ge[_.wAp.ExtraData][0],Ge[_.wAp.ExtraData][1]],we)||[];return It(Nt,Qe)||[]}(we,Mt,Ge),Si=ei.findIndex(function(Fi){if(Array.isArray(Fi)){var Ma=(0,t.Z)(Fi,2),ot=Ma[0],yt=Ma[1],St=yn>=ot.hours&&Ln>=ot.minutes,ie=yn0?Math.floor(Mt/60):Math.ceil(Mt/60);switch(de){case At.Short:return(Mt>=0?"+":"")+jn(yn,2,Nt)+jn(Math.abs(Mt%60),2,Nt);case At.ShortGMT:return"GMT"+(Mt>=0?"+":"")+jn(yn,1,Nt);case At.Long:return"GMT"+(Mt>=0?"+":"")+jn(yn,2,Nt)+":"+jn(Math.abs(Mt%60),2,Nt);case At.Extended:return 0===Ge?"Z":(Mt>=0?"+":"")+jn(yn,2,Nt)+":"+jn(Math.abs(Mt%60),2,Nt);default:throw new Error('Unknown zone width "'.concat(de,'"'))}}}function Ne(de){var we=gn(de,0,1).getDay();return gn(de,0,1+(we<=4?4:11)-we)}function Re(de){return gn(de.getFullYear(),de.getMonth(),de.getDate()+(4-de.getDay()))}function tt(de){var we=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return function(Qe,Ge){var Mt;if(we){var Nt=new Date(Qe.getFullYear(),Qe.getMonth(),1).getDay()-1,yn=Qe.getDate();Mt=1+Math.floor((yn+Nt)/7)}else{var Ln=Re(Qe),ei=Ne(Ln.getFullYear()),li=Ln.getTime()-ei.getTime();Mt=1+Math.round(li/6048e5)}return jn(Mt,de,nt(Ge,ue.MinusSign))}}function Ke(de){var we=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return function(Qe,Ge){return jn(Re(Qe).getFullYear(),de,nt(Ge,ue.MinusSign),we)}}var vt={};function rn(de,we){de=de.replace(/:/g,"");var Qe=Date.parse("Jan 01, 1970 00:00:00 "+de)/6e4;return isNaN(Qe)?we:Qe}function _n(de){return de instanceof Date&&!isNaN(de.valueOf())}var xn=/^(\d+)?\.((\d+)(-(\d+))?)?$/,mi="0";function wa(de,we,Qe){return function _a(de,we,Qe,Ge,Mt,Nt){var yn=arguments.length>6&&void 0!==arguments[6]&&arguments[6],Ln="",ei=!1;if(isFinite(de)){var li=Cn(de);yn&&(li=Ta(li));var Si=we.minInt,Ai=we.minFrac,Fi=we.maxFrac;if(Nt){var Ma=Nt.match(xn);if(null===Ma)throw new Error("".concat(Nt," is not a valid digit info"));var ot=Ma[1],yt=Ma[3],St=Ma[5];null!=ot&&(Si=Tt(ot)),null!=yt&&(Ai=Tt(yt)),null!=St?Fi=Tt(St):null!=yt&&Ai>Fi&&(Fi=Ai)}Pn(li,Ai,Fi);var ie=li.digits,Ye=li.integerLen,fe=li.exponent,oe=[];for(ei=ie.every(function(xt){return!xt});Ye0?oe=ie.splice(Ye,ie.length):(oe=ie,ie=[0]);var bt=[];for(ie.length>=we.lgSize&&bt.unshift(ie.splice(-we.lgSize,ie.length).join(""));ie.length>we.gSize;)bt.unshift(ie.splice(-we.gSize,ie.length).join(""));ie.length&&bt.unshift(ie.join("")),Ln=bt.join(nt(Qe,Ge)),oe.length&&(Ln+=nt(Qe,Mt)+oe.join("")),fe&&(Ln+=nt(Qe,ue.Exponential)+"+"+fe)}else Ln=nt(Qe,ue.Infinity);return de<0&&!ei?we.negPre+Ln+we.negSuf:we.posPre+Ln+we.posSuf}(de,function or(de){var we=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"-",Qe={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},Ge=de.split(";"),Mt=Ge[0],Nt=Ge[1],yn=-1!==Mt.indexOf(".")?Mt.split("."):[Mt.substring(0,Mt.lastIndexOf(mi)+1),Mt.substring(Mt.lastIndexOf(mi)+1)],Ln=yn[0],ei=yn[1]||"";Qe.posPre=Ln.substr(0,Ln.indexOf("#"));for(var li=0;li-1&&(we=we.replace(".","")),(Nt=we.search(/e/i))>0?(Mt<0&&(Mt=Nt),Mt+=+we.slice(Nt+1),we=we.substring(0,Nt)):Mt<0&&(Mt=we.length),Nt=0;we.charAt(Nt)===mi;Nt++);if(Nt===(Ln=we.length))Ge=[0],Mt=1;else{for(Ln--;we.charAt(Ln)===mi;)Ln--;for(Mt-=Nt,Ge=[],yn=0;Nt<=Ln;Nt++,yn++)Ge[yn]=Number(we.charAt(Nt))}return Mt>22&&(Ge=Ge.splice(0,21),Qe=Mt-1,Mt=1),{digits:Ge,exponent:Qe,integerLen:Mt}}function Pn(de,we,Qe){if(we>Qe)throw new Error("The minimum number of digits after fraction (".concat(we,") is higher than the maximum (").concat(Qe,")."));var Ge=de.digits,Mt=Ge.length-de.integerLen,Nt=Math.min(Math.max(we,Mt),Qe),yn=Nt+de.integerLen,Ln=Ge[yn];if(yn>0){Ge.splice(Math.max(de.integerLen,yn));for(var ei=yn;ei=5)if(yn-1<0){for(var Si=0;Si>yn;Si--)Ge.unshift(0),de.integerLen++;Ge.unshift(1),de.integerLen++}else Ge[yn-1]++;for(;Mt=Fi?ie.pop():Ai=!1),yt>=10?1:0},0);Ma&&(Ge.unshift(Ma),de.integerLen++)}function Tt(de){var we=parseInt(de);if(isNaN(we))throw new Error("Invalid integer literal when parsing "+de);return we}var Le=(0,u.Z)(function de(){(0,o.Z)(this,de)}),Gt=function(){var de=function(we){(0,e.Z)(Ge,we);var Qe=(0,c.Z)(Ge);function Ge(Mt){var Nt;return(0,o.Z)(this,Ge),(Nt=Qe.call(this)).locale=Mt,Nt}return(0,u.Z)(Ge,[{key:"getPluralCategory",value:function(Nt,yn){switch(et(yn||this.locale)(Nt)){case ce.Zero:return"zero";case ce.One:return"one";case ce.Two:return"two";case ce.Few:return"few";case ce.Many:return"many";default:return"other"}}}]),Ge}(Le);return de.\u0275fac=function(Qe){return new(Qe||de)(_.LFG(_.soG))},de.\u0275prov=_.Yz7({token:de,factory:de.\u0275fac}),de}();function Wn(de,we){we=encodeURIComponent(we);var Ge,Qe=(0,S.Z)(de.split(";"));try{for(Qe.s();!(Ge=Qe.n()).done;){var Mt=Ge.value,Nt=Mt.indexOf("="),yn=-1==Nt?[Mt,""]:[Mt.slice(0,Nt),Mt.slice(Nt+1)],Ln=(0,t.Z)(yn,2),li=Ln[1];if(Ln[0].trim()===we)return decodeURIComponent(li)}}catch(Si){Qe.e(Si)}finally{Qe.f()}return null}var vi=function(){var de=function(){function we(Qe,Ge,Mt,Nt){(0,o.Z)(this,we),this._iterableDiffers=Qe,this._keyValueDiffers=Ge,this._ngEl=Mt,this._renderer=Nt,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}return(0,u.Z)(we,[{key:"klass",set:function(Ge){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof Ge?Ge.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}},{key:"ngClass",set:function(Ge){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof Ge?Ge.split(/\s+/):Ge,this._rawClass&&((0,_.sIi)(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}},{key:"ngDoCheck",value:function(){if(this._iterableDiffer){var Ge=this._iterableDiffer.diff(this._rawClass);Ge&&this._applyIterableChanges(Ge)}else if(this._keyValueDiffer){var Mt=this._keyValueDiffer.diff(this._rawClass);Mt&&this._applyKeyValueChanges(Mt)}}},{key:"_applyKeyValueChanges",value:function(Ge){var Mt=this;Ge.forEachAddedItem(function(Nt){return Mt._toggleClass(Nt.key,Nt.currentValue)}),Ge.forEachChangedItem(function(Nt){return Mt._toggleClass(Nt.key,Nt.currentValue)}),Ge.forEachRemovedItem(function(Nt){Nt.previousValue&&Mt._toggleClass(Nt.key,!1)})}},{key:"_applyIterableChanges",value:function(Ge){var Mt=this;Ge.forEachAddedItem(function(Nt){if("string"!=typeof Nt.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got ".concat((0,_.AaK)(Nt.item)));Mt._toggleClass(Nt.item,!0)}),Ge.forEachRemovedItem(function(Nt){return Mt._toggleClass(Nt.item,!1)})}},{key:"_applyClasses",value:function(Ge){var Mt=this;Ge&&(Array.isArray(Ge)||Ge instanceof Set?Ge.forEach(function(Nt){return Mt._toggleClass(Nt,!0)}):Object.keys(Ge).forEach(function(Nt){return Mt._toggleClass(Nt,!!Ge[Nt])}))}},{key:"_removeClasses",value:function(Ge){var Mt=this;Ge&&(Array.isArray(Ge)||Ge instanceof Set?Ge.forEach(function(Nt){return Mt._toggleClass(Nt,!1)}):Object.keys(Ge).forEach(function(Nt){return Mt._toggleClass(Nt,!1)}))}},{key:"_toggleClass",value:function(Ge,Mt){var Nt=this;(Ge=Ge.trim())&&Ge.split(/\s+/g).forEach(function(yn){Mt?Nt._renderer.addClass(Nt._ngEl.nativeElement,yn):Nt._renderer.removeClass(Nt._ngEl.nativeElement,yn)})}}]),we}();return de.\u0275fac=function(Qe){return new(Qe||de)(_.Y36(_.ZZ4),_.Y36(_.aQg),_.Y36(_.SBq),_.Y36(_.Qsj))},de.\u0275dir=_.lG2({type:de,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),de}(),ea=function(){function de(we,Qe,Ge,Mt){(0,o.Z)(this,de),this.$implicit=we,this.ngForOf=Qe,this.index=Ge,this.count=Mt}return(0,u.Z)(de,[{key:"first",get:function(){return 0===this.index}},{key:"last",get:function(){return this.index===this.count-1}},{key:"even",get:function(){return this.index%2==0}},{key:"odd",get:function(){return!this.even}}]),de}(),_i=function(){var de=function(){function we(Qe,Ge,Mt){(0,o.Z)(this,we),this._viewContainer=Qe,this._template=Ge,this._differs=Mt,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}return(0,u.Z)(we,[{key:"ngForOf",set:function(Ge){this._ngForOf=Ge,this._ngForOfDirty=!0}},{key:"ngForTrackBy",get:function(){return this._trackByFn},set:function(Ge){this._trackByFn=Ge}},{key:"ngForTemplate",set:function(Ge){Ge&&(this._template=Ge)}},{key:"ngDoCheck",value:function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var Ge=this._ngForOf;!this._differ&&Ge&&(this._differ=this._differs.find(Ge).create(this.ngForTrackBy))}if(this._differ){var Mt=this._differ.diff(this._ngForOf);Mt&&this._applyChanges(Mt)}}},{key:"_applyChanges",value:function(Ge){var Mt=this,Nt=this._viewContainer;Ge.forEachOperation(function(Si,Ai,Fi){if(null==Si.previousIndex)Nt.createEmbeddedView(Mt._template,new ea(Si.item,Mt._ngForOf,-1,-1),null===Fi?void 0:Fi);else if(null==Fi)Nt.remove(null===Ai?void 0:Ai);else if(null!==Ai){var Ma=Nt.get(Ai);Nt.move(Ma,Fi),Ii(Ma,Si)}});for(var yn=0,Ln=Nt.length;yn1&&void 0!==arguments[1]?arguments[1]:"mediumDate",Nt=arguments.length>2?arguments[2]:void 0,yn=arguments.length>3?arguments[3]:void 0;if(null==Ge||""===Ge||Ge!=Ge)return null;try{return Xt(Ge,Mt,yn||this.locale,null!==(Ln=null!=Nt?Nt:this.defaultTimezone)&&void 0!==Ln?Ln:void 0)}catch(ei){throw Zn()}}}]),we}();return de.\u0275fac=function(Qe){return new(Qe||de)(_.Y36(_.soG,16),_.Y36(ca,24))},de.\u0275pipe=_.Yjl({name:"date",type:de,pure:!0}),de}(),ir=function(){var de=function(){function we(){(0,o.Z)(this,we)}return(0,u.Z)(we,[{key:"transform",value:function(Ge){return JSON.stringify(Ge,null,2)}}]),we}();return de.\u0275fac=function(Qe){return new(Qe||de)},de.\u0275pipe=_.Yjl({name:"json",type:de,pure:!1}),de}(),Dn=function(){var de=function(){function we(Qe){(0,o.Z)(this,we),this._locale=Qe}return(0,u.Z)(we,[{key:"transform",value:function(Ge,Mt,Nt){if(!function Ji(de){return!(null==de||""===de||de!=de)}(Ge))return null;Nt=Nt||this._locale;try{return wa(function Vi(de){if("string"==typeof de&&!isNaN(Number(de)-parseFloat(de)))return Number(de);if("number"!=typeof de)throw new Error("".concat(de," is not a number"));return de}(Ge),Nt,Mt)}catch(Ln){throw Zn()}}}]),we}();return de.\u0275fac=function(Qe){return new(Qe||de)(_.Y36(_.soG,16))},de.\u0275pipe=_.Yjl({name:"number",type:de,pure:!0}),de}();var ya=function(){var de=function(){function we(){(0,o.Z)(this,we)}return(0,u.Z)(we,[{key:"transform",value:function(Ge,Mt,Nt){if(null==Ge)return null;if(!this.supports(Ge))throw Zn();return Ge.slice(Mt,Nt)}},{key:"supports",value:function(Ge){return"string"==typeof Ge||Array.isArray(Ge)}}]),we}();return de.\u0275fac=function(Qe){return new(Qe||de)},de.\u0275pipe=_.Yjl({name:"slice",type:de,pure:!1}),de}(),Ua=function(){var de=(0,u.Z)(function we(){(0,o.Z)(this,we)});return de.\u0275fac=function(Qe){return new(Qe||de)},de.\u0275mod=_.oAB({type:de}),de.\u0275inj=_.cJS({providers:[{provide:Le,useClass:Gt}]}),de}(),zi="browser";function Ea(de){return de===zi}var no=function(){var de=(0,u.Z)(function we(){(0,o.Z)(this,we)});return de.\u0275prov=(0,_.Yz7)({token:de,providedIn:"root",factory:function(){return new Lt((0,_.LFG)(Y),window)}}),de}(),Lt=function(){function de(we,Qe){(0,o.Z)(this,de),this.document=we,this.window=Qe,this.offset=function(){return[0,0]}}return(0,u.Z)(de,[{key:"setOffset",value:function(Qe){this.offset=Array.isArray(Qe)?function(){return Qe}:Qe}},{key:"getScrollPosition",value:function(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}},{key:"scrollToPosition",value:function(Qe){this.supportsScrolling()&&this.window.scrollTo(Qe[0],Qe[1])}},{key:"scrollToAnchor",value:function(Qe){if(this.supportsScrolling()){var Ge=function ge(de,we){var Qe=de.getElementById(we)||de.getElementsByName(we)[0];if(Qe)return Qe;if("function"==typeof de.createTreeWalker&&de.body&&(de.body.createShadowRoot||de.body.attachShadow))for(var Ge=de.createTreeWalker(de.body,NodeFilter.SHOW_ELEMENT),Mt=Ge.currentNode;Mt;){var Nt=Mt.shadowRoot;if(Nt){var yn=Nt.getElementById(we)||Nt.querySelector('[name="'.concat(we,'"]'));if(yn)return yn}Mt=Ge.nextNode()}return null}(this.document,Qe);Ge&&(this.scrollToElement(Ge),Ge.focus())}}},{key:"setHistoryScrollRestoration",value:function(Qe){if(this.supportScrollRestoration()){var Ge=this.window.history;Ge&&Ge.scrollRestoration&&(Ge.scrollRestoration=Qe)}}},{key:"scrollToElement",value:function(Qe){var Ge=Qe.getBoundingClientRect(),Mt=Ge.left+this.window.pageXOffset,Nt=Ge.top+this.window.pageYOffset,yn=this.offset();this.window.scrollTo(Mt-yn[0],Nt-yn[1])}},{key:"supportScrollRestoration",value:function(){try{if(!this.supportsScrolling())return!1;var Qe=dt(this.window.history)||dt(Object.getPrototypeOf(this.window.history));return!(!Qe||!Qe.writable&&!Qe.set)}catch(Ge){return!1}}},{key:"supportsScrolling",value:function(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch(Qe){return!1}}}]),de}();function dt(de){return Object.getOwnPropertyDescriptor(de,"scrollRestoration")}var gt=(0,u.Z)(function de(){(0,o.Z)(this,de)})},28784:function(Ce,E,n){"use strict";n.d(E,{TP:function(){return Xe},eN:function(){return ue},Ed:function(){return $e},JF:function(){return It},LE:function(){return re}});var S=n(46751),t=n(56101),e=n(78170),c=n(71340),u=n(1884),o=n(39117),_=n(36362),s=n(86613),h=n(10745),b=n(83336),T=n(63853),y=n(60116),Y=n(50635),q=(0,u.Z)(function X(){(0,o.Z)(this,X)}),B=(0,u.Z)(function X(){(0,o.Z)(this,X)}),k=function(){function X(ne){var me=this;(0,o.Z)(this,X),this.normalizedNames=new Map,this.lazyUpdate=null,ne?this.lazyInit="string"==typeof ne?function(){me.headers=new Map,ne.split("\n").forEach(function(Oe){var He=Oe.indexOf(":");if(He>0){var At=Oe.slice(0,He),Ft=At.toLowerCase(),sn=Oe.slice(He+1).trim();me.maybeSetNormalizedName(At,Ft),me.headers.has(Ft)?me.headers.get(Ft).push(sn):me.headers.set(Ft,[sn])}})}:function(){me.headers=new Map,Object.keys(ne).forEach(function(Oe){var He=ne[Oe],At=Oe.toLowerCase();"string"==typeof He&&(He=[He]),He.length>0&&(me.headers.set(At,He),me.maybeSetNormalizedName(Oe,At))})}:this.headers=new Map}return(0,u.Z)(X,[{key:"has",value:function(me){return this.init(),this.headers.has(me.toLowerCase())}},{key:"get",value:function(me){this.init();var Oe=this.headers.get(me.toLowerCase());return Oe&&Oe.length>0?Oe[0]:null}},{key:"keys",value:function(){return this.init(),Array.from(this.normalizedNames.values())}},{key:"getAll",value:function(me){return this.init(),this.headers.get(me.toLowerCase())||null}},{key:"append",value:function(me,Oe){return this.clone({name:me,value:Oe,op:"a"})}},{key:"set",value:function(me,Oe){return this.clone({name:me,value:Oe,op:"s"})}},{key:"delete",value:function(me,Oe){return this.clone({name:me,value:Oe,op:"d"})}},{key:"maybeSetNormalizedName",value:function(me,Oe){this.normalizedNames.has(Oe)||this.normalizedNames.set(Oe,me)}},{key:"init",value:function(){var me=this;this.lazyInit&&(this.lazyInit instanceof X?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(Oe){return me.applyUpdate(Oe)}),this.lazyUpdate=null))}},{key:"copyFrom",value:function(me){var Oe=this;me.init(),Array.from(me.headers.keys()).forEach(function(He){Oe.headers.set(He,me.headers.get(He)),Oe.normalizedNames.set(He,me.normalizedNames.get(He))})}},{key:"clone",value:function(me){var Oe=new X;return Oe.lazyInit=this.lazyInit&&this.lazyInit instanceof X?this.lazyInit:this,Oe.lazyUpdate=(this.lazyUpdate||[]).concat([me]),Oe}},{key:"applyUpdate",value:function(me){var Oe=me.name.toLowerCase();switch(me.op){case"a":case"s":var He=me.value;if("string"==typeof He&&(He=[He]),0===He.length)return;this.maybeSetNormalizedName(me.name,Oe);var At=("a"===me.op?this.headers.get(Oe):void 0)||[];At.push.apply(At,(0,c.Z)(He)),this.headers.set(Oe,At);break;case"d":var Ft=me.value;if(Ft){var sn=this.headers.get(Oe);if(!sn)return;0===(sn=sn.filter(function(Xt){return-1===Ft.indexOf(Xt)})).length?(this.headers.delete(Oe),this.normalizedNames.delete(Oe)):this.headers.set(Oe,sn)}else this.headers.delete(Oe),this.normalizedNames.delete(Oe)}}},{key:"forEach",value:function(me){var Oe=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(He){return me(Oe.normalizedNames.get(He),Oe.headers.get(He))})}}]),X}(),D=function(){function X(){(0,o.Z)(this,X)}return(0,u.Z)(X,[{key:"encodeKey",value:function(me){return j(me)}},{key:"encodeValue",value:function(me){return j(me)}},{key:"decodeKey",value:function(me){return decodeURIComponent(me)}},{key:"decodeValue",value:function(me){return decodeURIComponent(me)}}]),X}();function N(X,ne){var me=new Map;return X.length>0&&X.replace(/^\?/,"").split("&").forEach(function(He){var At=He.indexOf("="),Ft=-1==At?[ne.decodeKey(He),""]:[ne.decodeKey(He.slice(0,At)),ne.decodeValue(He.slice(At+1))],sn=(0,e.Z)(Ft,2),Xt=sn[0],gn=sn[1],vn=me.get(Xt)||[];vn.push(gn),me.set(Xt,vn)}),me}var I=/%(\d[a-f0-9])/gi,L={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function j(X){return encodeURIComponent(X).replace(I,function(ne,me){var Oe;return null!==(Oe=L[me])&&void 0!==Oe?Oe:ne})}function le(X){return"".concat(X)}var re=function(){function X(){var ne=this,me=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.Z)(this,X),this.updates=null,this.cloneFrom=null,this.encoder=me.encoder||new D,me.fromString){if(me.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=N(me.fromString,this.encoder)}else me.fromObject?(this.map=new Map,Object.keys(me.fromObject).forEach(function(Oe){var He=me.fromObject[Oe];ne.map.set(Oe,Array.isArray(He)?He:[He])})):this.map=null}return(0,u.Z)(X,[{key:"has",value:function(me){return this.init(),this.map.has(me)}},{key:"get",value:function(me){this.init();var Oe=this.map.get(me);return Oe?Oe[0]:null}},{key:"getAll",value:function(me){return this.init(),this.map.get(me)||null}},{key:"keys",value:function(){return this.init(),Array.from(this.map.keys())}},{key:"append",value:function(me,Oe){return this.clone({param:me,value:Oe,op:"a"})}},{key:"appendAll",value:function(me){var Oe=[];return Object.keys(me).forEach(function(He){var At=me[He];Array.isArray(At)?At.forEach(function(Ft){Oe.push({param:He,value:Ft,op:"a"})}):Oe.push({param:He,value:At,op:"a"})}),this.clone(Oe)}},{key:"set",value:function(me,Oe){return this.clone({param:me,value:Oe,op:"s"})}},{key:"delete",value:function(me,Oe){return this.clone({param:me,value:Oe,op:"d"})}},{key:"toString",value:function(){var me=this;return this.init(),this.keys().map(function(Oe){var He=me.encoder.encodeKey(Oe);return me.map.get(Oe).map(function(At){return He+"="+me.encoder.encodeValue(At)}).join("&")}).filter(function(Oe){return""!==Oe}).join("&")}},{key:"clone",value:function(me){var Oe=new X({encoder:this.encoder});return Oe.cloneFrom=this.cloneFrom||this,Oe.updates=(this.updates||[]).concat(me),Oe}},{key:"init",value:function(){var me=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(Oe){return me.map.set(Oe,me.cloneFrom.map.get(Oe))}),this.updates.forEach(function(Oe){switch(Oe.op){case"a":case"s":var He=("a"===Oe.op?me.map.get(Oe.param):void 0)||[];He.push(le(Oe.value)),me.map.set(Oe.param,He);break;case"d":if(void 0===Oe.value){me.map.delete(Oe.param);break}var At=me.map.get(Oe.param)||[],Ft=At.indexOf(le(Oe.value));-1!==Ft&&At.splice(Ft,1),At.length>0?me.map.set(Oe.param,At):me.map.delete(Oe.param)}}),this.cloneFrom=this.updates=null)}}]),X}(),$=function(){function X(){(0,o.Z)(this,X),this.map=new Map}return(0,u.Z)(X,[{key:"set",value:function(me,Oe){return this.map.set(me,Oe),this}},{key:"get",value:function(me){return this.map.has(me)||this.map.set(me,me.defaultValue()),this.map.get(me)}},{key:"delete",value:function(me){return this.map.delete(me),this}},{key:"has",value:function(me){return this.map.has(me)}},{key:"keys",value:function(){return this.map.keys()}}]),X}();function z(X){return"undefined"!=typeof ArrayBuffer&&X instanceof ArrayBuffer}function d(X){return"undefined"!=typeof Blob&&X instanceof Blob}function Q(X){return"undefined"!=typeof FormData&&X instanceof FormData}var te=function(){function X(ne,me,Oe,He){var At;if((0,o.Z)(this,X),this.url=me,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=ne.toUpperCase(),function be(X){switch(X){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||He?(this.body=void 0!==Oe?Oe:null,At=He):At=Oe,At&&(this.reportProgress=!!At.reportProgress,this.withCredentials=!!At.withCredentials,At.responseType&&(this.responseType=At.responseType),At.headers&&(this.headers=At.headers),At.context&&(this.context=At.context),At.params&&(this.params=At.params)),this.headers||(this.headers=new k),this.context||(this.context=new $),this.params){var Ft=this.params.toString();if(0===Ft.length)this.urlWithParams=me;else{var sn=me.indexOf("?");this.urlWithParams=me+(-1===sn?"?":sn0&&void 0!==arguments[0]?arguments[0]:{},He=me.method||this.method,At=me.url||this.url,Ft=me.responseType||this.responseType,sn=void 0!==me.body?me.body:this.body,Xt=void 0!==me.withCredentials?me.withCredentials:this.withCredentials,gn=void 0!==me.reportProgress?me.reportProgress:this.reportProgress,vn=me.headers||this.headers,hn=me.params||this.params,jn=null!==(Oe=me.context)&&void 0!==Oe?Oe:this.context;return void 0!==me.setHeaders&&(vn=Object.keys(me.setHeaders).reduce(function(Jn,oi){return Jn.set(oi,me.setHeaders[oi])},vn)),me.setParams&&(hn=Object.keys(me.setParams).reduce(function(Jn,oi){return Jn.set(oi,me.setParams[oi])},hn)),new X(He,At,sn,{params:hn,headers:vn,context:jn,reportProgress:gn,responseType:Ft,withCredentials:Xt})}}]),X}(),K=function(){return(K=K||{})[K.Sent=0]="Sent",K[K.UploadProgress=1]="UploadProgress",K[K.ResponseHeader=2]="ResponseHeader",K[K.DownloadProgress=3]="DownloadProgress",K[K.Response=4]="Response",K[K.User=5]="User",K}(),G=(0,u.Z)(function X(ne){var me=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,Oe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"OK";(0,o.Z)(this,X),this.headers=ne.headers||new k,this.status=void 0!==ne.status?ne.status:me,this.statusText=ne.statusText||Oe,this.url=ne.url||null,this.ok=this.status>=200&&this.status<300}),ce=function(X){(0,S.Z)(me,X);var ne=(0,t.Z)(me);function me(){var Oe,He=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.Z)(this,me),(Oe=ne.call(this,He)).type=K.ResponseHeader,Oe}return(0,u.Z)(me,[{key:"clone",value:function(){var He=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new me({headers:He.headers||this.headers,status:void 0!==He.status?He.status:this.status,statusText:He.statusText||this.statusText,url:He.url||this.url||void 0})}}]),me}(G),_e=function(X){(0,S.Z)(me,X);var ne=(0,t.Z)(me);function me(){var Oe,He=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.Z)(this,me),(Oe=ne.call(this,He)).type=K.Response,Oe.body=void 0!==He.body?He.body:null,Oe}return(0,u.Z)(me,[{key:"clone",value:function(){var He=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new me({body:void 0!==He.body?He.body:this.body,headers:He.headers||this.headers,status:void 0!==He.status?He.status:this.status,statusText:He.statusText||this.statusText,url:He.url||this.url||void 0})}}]),me}(G),Me=function(X){(0,S.Z)(me,X);var ne=(0,t.Z)(me);function me(Oe){var He;return(0,o.Z)(this,me),(He=ne.call(this,Oe,0,"Unknown Error")).name="HttpErrorResponse",He.ok=!1,He.message=He.status>=200&&He.status<300?"Http failure during parsing for ".concat(Oe.url||"(unknown url)"):"Http failure response for ".concat(Oe.url||"(unknown url)",": ").concat(Oe.status," ").concat(Oe.statusText),He.error=Oe.error||null,He}return(0,u.Z)(me)}(G);function ve(X,ne){return{body:ne,headers:X.headers,context:X.context,observe:X.observe,params:X.params,reportProgress:X.reportProgress,responseType:X.responseType,withCredentials:X.withCredentials}}var ue=function(){var X=function(){function ne(me){(0,o.Z)(this,ne),this.handler=me}return(0,u.Z)(ne,[{key:"request",value:function(Oe,He){var sn,At=this,Ft=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(Oe instanceof te)sn=Oe;else{var Xt=void 0;Xt=Ft.headers instanceof k?Ft.headers:new k(Ft.headers);var gn=void 0;Ft.params&&(gn=Ft.params instanceof re?Ft.params:new re({fromObject:Ft.params})),sn=new te(Oe,He,void 0!==Ft.body?Ft.body:null,{headers:Xt,context:Ft.context,params:gn,reportProgress:Ft.reportProgress,responseType:Ft.responseType||"json",withCredentials:Ft.withCredentials})}var vn=(0,h.of)(sn).pipe((0,T.b)(function(jn){return At.handler.handle(jn)}));if(Oe instanceof te||"events"===Ft.observe)return vn;var hn=vn.pipe((0,y.h)(function(jn){return jn instanceof _e}));switch(Ft.observe||"body"){case"body":switch(sn.responseType){case"arraybuffer":return hn.pipe((0,Y.U)(function(jn){if(null!==jn.body&&!(jn.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return jn.body}));case"blob":return hn.pipe((0,Y.U)(function(jn){if(null!==jn.body&&!(jn.body instanceof Blob))throw new Error("Response is not a Blob.");return jn.body}));case"text":return hn.pipe((0,Y.U)(function(jn){if(null!==jn.body&&"string"!=typeof jn.body)throw new Error("Response is not a string.");return jn.body}));default:return hn.pipe((0,Y.U)(function(jn){return jn.body}))}case"response":return hn;default:throw new Error("Unreachable: unhandled observe type ".concat(Ft.observe,"}"))}}},{key:"delete",value:function(Oe){var He=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("DELETE",Oe,He)}},{key:"get",value:function(Oe){var He=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("GET",Oe,He)}},{key:"head",value:function(Oe){var He=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("HEAD",Oe,He)}},{key:"jsonp",value:function(Oe,He){return this.request("JSONP",Oe,{params:(new re).append(He,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}},{key:"options",value:function(Oe){var He=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("OPTIONS",Oe,He)}},{key:"patch",value:function(Oe,He){var At=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PATCH",Oe,ve(At,He))}},{key:"post",value:function(Oe,He){var At=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("POST",Oe,ve(At,He))}},{key:"put",value:function(Oe,He){var At=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PUT",Oe,ve(At,He))}}]),ne}();return X.\u0275fac=function(me){return new(me||X)(s.LFG(q))},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}(),lt=function(){function X(ne,me){(0,o.Z)(this,X),this.next=ne,this.interceptor=me}return(0,u.Z)(X,[{key:"handle",value:function(me){return this.interceptor.intercept(me,this.next)}}]),X}(),Xe=new s.OlP("HTTP_INTERCEPTORS"),mt=function(){var X=function(){function ne(){(0,o.Z)(this,ne)}return(0,u.Z)(ne,[{key:"intercept",value:function(Oe,He){return He.handle(Oe)}}]),ne}();return X.\u0275fac=function(me){return new(me||X)},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}(),wt=0,ft=(0,u.Z)(function X(){(0,o.Z)(this,X)}),ct=function(){var X=function(){function ne(me,Oe){(0,o.Z)(this,ne),this.callbackMap=me,this.document=Oe,this.resolvedPromise=Promise.resolve()}return(0,u.Z)(ne,[{key:"nextCallback",value:function(){return"ng_jsonp_callback_".concat(wt++)}},{key:"handle",value:function(Oe){var He=this;if("JSONP"!==Oe.method)throw new Error("JSONP requests must use JSONP request method.");if("json"!==Oe.responseType)throw new Error("JSONP requests must use Json response type.");return new b.y(function(At){var Ft=He.nextCallback(),sn=Oe.urlWithParams.replace(/=JSONP_CALLBACK(&|$)/,"=".concat(Ft,"$1")),Xt=He.document.createElement("script");Xt.src=sn;var gn=null,vn=!1,hn=!1;He.callbackMap[Ft]=function(ri){delete He.callbackMap[Ft],!hn&&(gn=ri,vn=!0)};var jn=function(){Xt.parentNode&&Xt.parentNode.removeChild(Xt),delete He.callbackMap[Ft]},Jn=function(un){hn||He.resolvedPromise.then(function(){jn(),vn?(At.next(new _e({body:gn,status:200,statusText:"OK",url:sn})),At.complete()):At.error(new Me({url:sn,status:0,statusText:"JSONP Error",error:new Error("JSONP injected script did not invoke callback.")}))})},oi=function(un){hn||(jn(),At.error(new Me({error:un,status:0,statusText:"JSONP Error",url:sn})))};return Xt.addEventListener("load",Jn),Xt.addEventListener("error",oi),He.document.body.appendChild(Xt),At.next({type:K.Sent}),function(){hn=!0,Xt.removeEventListener("load",Jn),Xt.removeEventListener("error",oi),jn()}})}}]),ne}();return X.\u0275fac=function(me){return new(me||X)(s.LFG(ft),s.LFG(_.K0))},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}(),Ee=function(){var X=function(){function ne(me){(0,o.Z)(this,ne),this.jsonp=me}return(0,u.Z)(ne,[{key:"intercept",value:function(Oe,He){return"JSONP"===Oe.method?this.jsonp.handle(Oe):He.handle(Oe)}}]),ne}();return X.\u0275fac=function(me){return new(me||X)(s.LFG(ct))},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}(),st=/^\)\]\}',?\n/,at=function(){var X=function(){function ne(me){(0,o.Z)(this,ne),this.xhrFactory=me}return(0,u.Z)(ne,[{key:"handle",value:function(Oe){var He=this;if("JSONP"===Oe.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new b.y(function(At){var Ft=He.xhrFactory.build();if(Ft.open(Oe.method,Oe.urlWithParams),Oe.withCredentials&&(Ft.withCredentials=!0),Oe.headers.forEach(function(mn,zt){return Ft.setRequestHeader(mn,zt.join(","))}),Oe.headers.has("Accept")||Ft.setRequestHeader("Accept","application/json, text/plain, */*"),!Oe.headers.has("Content-Type")){var sn=Oe.detectContentTypeHeader();null!==sn&&Ft.setRequestHeader("Content-Type",sn)}if(Oe.responseType){var Xt=Oe.responseType.toLowerCase();Ft.responseType="json"!==Xt?Xt:"text"}var gn=Oe.serializeBody(),vn=null,hn=function(){if(null!==vn)return vn;var zt=1223===Ft.status?204:Ft.status,qe=Ft.statusText||"OK",pt=new k(Ft.getAllResponseHeaders()),Ne=function nt(X){return"responseURL"in X&&X.responseURL?X.responseURL:/^X-Request-URL:/m.test(X.getAllResponseHeaders())?X.getResponseHeader("X-Request-URL"):null}(Ft)||Oe.url;return vn=new ce({headers:pt,status:zt,statusText:qe,url:Ne})},jn=function(){var zt=hn(),qe=zt.headers,pt=zt.status,Ne=zt.statusText,Re=zt.url,tt=null;204!==pt&&(tt=void 0===Ft.response?Ft.responseText:Ft.response),0===pt&&(pt=tt?200:0);var Ke=pt>=200&&pt<300;if("json"===Oe.responseType&&"string"==typeof tt){var vt=tt;tt=tt.replace(st,"");try{tt=""!==tt?JSON.parse(tt):null}catch(Rt){tt=vt,Ke&&(Ke=!1,tt={error:Rt,text:tt})}}Ke?(At.next(new _e({body:tt,headers:qe,status:pt,statusText:Ne,url:Re||void 0})),At.complete()):At.error(new Me({error:tt,headers:qe,status:pt,statusText:Ne,url:Re||void 0}))},Jn=function(zt){var qe=hn(),Ne=new Me({error:zt,status:Ft.status||0,statusText:Ft.statusText||"Unknown Error",url:qe.url||void 0});At.error(Ne)},oi=!1,ri=function(zt){oi||(At.next(hn()),oi=!0);var qe={type:K.DownloadProgress,loaded:zt.loaded};zt.lengthComputable&&(qe.total=zt.total),"text"===Oe.responseType&&!!Ft.responseText&&(qe.partialText=Ft.responseText),At.next(qe)},un=function(zt){var qe={type:K.UploadProgress,loaded:zt.loaded};zt.lengthComputable&&(qe.total=zt.total),At.next(qe)};return Ft.addEventListener("load",jn),Ft.addEventListener("error",Jn),Ft.addEventListener("timeout",Jn),Ft.addEventListener("abort",Jn),Oe.reportProgress&&(Ft.addEventListener("progress",ri),null!==gn&&Ft.upload&&Ft.upload.addEventListener("progress",un)),Ft.send(gn),At.next({type:K.Sent}),function(){Ft.removeEventListener("error",Jn),Ft.removeEventListener("abort",Jn),Ft.removeEventListener("load",jn),Ft.removeEventListener("timeout",Jn),Oe.reportProgress&&(Ft.removeEventListener("progress",ri),null!==gn&&Ft.upload&&Ft.upload.removeEventListener("progress",un)),Ft.readyState!==Ft.DONE&&Ft.abort()}})}}]),ne}();return X.\u0275fac=function(me){return new(me||X)(s.LFG(_.JF))},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}(),We=new s.OlP("XSRF_COOKIE_NAME"),xe=new s.OlP("XSRF_HEADER_NAME"),ut=(0,u.Z)(function X(){(0,o.Z)(this,X)}),Fe=function(){var X=function(){function ne(me,Oe,He){(0,o.Z)(this,ne),this.doc=me,this.platform=Oe,this.cookieName=He,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return(0,u.Z)(ne,[{key:"getToken",value:function(){if("server"===this.platform)return null;var Oe=this.doc.cookie||"";return Oe!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,_.Mx)(Oe,this.cookieName),this.lastCookieString=Oe),this.lastToken}}]),ne}();return X.\u0275fac=function(me){return new(me||X)(s.LFG(_.K0),s.LFG(s.Lbi),s.LFG(We))},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}(),et=function(){var X=function(){function ne(me,Oe){(0,o.Z)(this,ne),this.tokenService=me,this.headerName=Oe}return(0,u.Z)(ne,[{key:"intercept",value:function(Oe,He){var At=Oe.url.toLowerCase();if("GET"===Oe.method||"HEAD"===Oe.method||At.startsWith("http://")||At.startsWith("https://"))return He.handle(Oe);var Ft=this.tokenService.getToken();return null!==Ft&&!Oe.headers.has(this.headerName)&&(Oe=Oe.clone({headers:Oe.headers.set(this.headerName,Ft)})),He.handle(Oe)}}]),ne}();return X.\u0275fac=function(me){return new(me||X)(s.LFG(ut),s.LFG(xe))},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}(),Ht=function(){var X=function(){function ne(me,Oe){(0,o.Z)(this,ne),this.backend=me,this.injector=Oe,this.chain=null}return(0,u.Z)(ne,[{key:"handle",value:function(Oe){if(null===this.chain){var He=this.injector.get(Xe,[]);this.chain=He.reduceRight(function(At,Ft){return new lt(At,Ft)},this.backend)}return this.chain.handle(Oe)}}]),ne}();return X.\u0275fac=function(me){return new(me||X)(s.LFG(B),s.LFG(s.zs3))},X.\u0275prov=s.Yz7({token:X,factory:X.\u0275fac}),X}();function an(){return"object"==typeof window?window:{}}var kt=function(){var X=function(){function ne(){(0,o.Z)(this,ne)}return(0,u.Z)(ne,null,[{key:"disable",value:function(){return{ngModule:ne,providers:[{provide:et,useClass:mt}]}}},{key:"withOptions",value:function(){var Oe=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ngModule:ne,providers:[Oe.cookieName?{provide:We,useValue:Oe.cookieName}:[],Oe.headerName?{provide:xe,useValue:Oe.headerName}:[]]}}}]),ne}();return X.\u0275fac=function(me){return new(me||X)},X.\u0275mod=s.oAB({type:X}),X.\u0275inj=s.cJS({providers:[et,{provide:Xe,useExisting:et,multi:!0},{provide:ut,useClass:Fe},{provide:We,useValue:"XSRF-TOKEN"},{provide:xe,useValue:"X-XSRF-TOKEN"}]}),X}(),It=function(){var X=(0,u.Z)(function ne(){(0,o.Z)(this,ne)});return X.\u0275fac=function(me){return new(me||X)},X.\u0275mod=s.oAB({type:X}),X.\u0275inj=s.cJS({providers:[ue,{provide:q,useClass:Ht},at,{provide:B,useExisting:at}],imports:[[kt.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),X}(),$e=function(){var X=(0,u.Z)(function ne(){(0,o.Z)(this,ne)});return X.\u0275fac=function(me){return new(me||X)},X.\u0275mod=s.oAB({type:X}),X.\u0275inj=s.cJS({providers:[ct,{provide:ft,useFactory:an},{provide:Xe,useClass:Ee,multi:!0}]}),X}()},86613:function(Ce,E,n){"use strict";n.d(E,{deG:function(){return Bd},tb:function(){return Y1},AFp:function(){return R1},ip1:function(){return ub},CZH:function(){return $g},hGG:function(){return FM},z2F:function(){return Av},sBO:function(){return iC},Sil:function(){return db},_Vd:function(){return yv},EJc:function(){return H1},SBq:function(){return bv},a5r:function(){return hM},qLn:function(){return Pc},vpe:function(){return Nd},L6J:function(){return V0},tBr:function(){return Ba},XFs:function(){return vn},GSi:function(){return x},OlP:function(){return Dr},zs3:function(){return es},IIB:function(){return q0},ZZ4:function(){return my},aQg:function(){return hy},soG:function(){return fy},YKP:function(){return qb},h0i:function(){return zg},PXZ:function(){return rM},R0b:function(){return Rd},FiY:function(){return H},r_U:function(){return H0},Lbi:function(){return B1},g9A:function(){return U1},n_E:function(){return l1},Qsj:function(){return UC},FYo:function(){return Rb},JOm:function(){return js},q3G:function(){return Rr},tp0:function(){return rt},Rgc:function(){return Sv},dDg:function(){return J1},GfV:function(){return Ub},s_b:function(){return uy},ifc:function(){return pt},hM9:function(){return $C},eFA:function(){return z1},G48:function(){return dM},Gpc:function(){return K},f3M:function(){return Qd},_c5:function(){return wM},VLi:function(){return nM},c2e:function(){return q1},zSh:function(){return Vp},wAp:function(){return Sa},vHH:function(){return Me},EiD:function(){return xc},mCW:function(){return bc},qzn:function(){return yu},JVY:function(){return vf},pB0:function(){return tp},eBb:function(){return yf},L6k:function(){return Xd},LAX:function(){return ep},cg1:function(){return gv},kL8:function(){return Gv},yhl:function(){return yc},dqk:function(){return vt},sIi:function(){return Uc},CqO:function(){return J_},QGY:function(){return j_},F4k:function(){return Dg},RDi:function(){return Ai},AaK:function(){return Q},z3N:function(){return qs},qOj:function(){return Wp},TTD:function(){return Lt},_Bn:function(){return Lb},xp6:function(){return nm},uIk:function(){return Xp},Q2q:function(){return ef},Tol:function(){return Hg},Gre:function(){return Bv},ekj:function(){return Yg},Suo:function(){return _1},Xpm:function(){return wi},lG2:function(){return wa},Yz7:function(){return $e},cJS:function(){return X},oAB:function(){return _a},Yjl:function(){return or},Y36:function(){return Ld},_UZ:function(){return Tg},GkF:function(){return Ag},BQk:function(){return V_},ynx:function(){return H_},qZA:function(){return q_},TgZ:function(){return Y_},EpF:function(){return Pg},n5z:function(){return Kc},Ikx:function(){return hv},LFG:function(){return wr},$8M:function(){return ss},$Z:function(){return bo},NdJ:function(){return Fd},CRH:function(){return g1},kcU:function(){return Cs},O4$:function(){return bs},oxw:function(){return W_},ALo:function(){return a1},lcZ:function(){return r1},xi3:function(){return o1},Dn7:function(){return s1},Hsn:function(){return Og},F$t:function(){return Eo},Q6J:function(){return pu},s9C:function(){return z_},MGl:function(){return uh},hYB:function(){return G_},FAE:function(){return K_},DdM:function(){return Jb},VKq:function(){return Qb},WLB:function(){return Wb},kEZ:function(){return zb},l5B:function(){return Gb},HTZ:function(){return Kb},iGM:function(){return m1},MAs:function(){return kd},evT:function(){return lp},Jf7:function(){return sp},CHM:function(){return Ur},oJD:function(){return Sc},uOi:function(){return Qu},LSH:function(){return ud},B6R:function(){return Bi},kYT:function(){return nr},Udp:function(){return eg},WFA:function(){return of},d8E:function(){return _v},YNc:function(){return nf},W1O:function(){return C1},_uU:function(){return Mo},Oqu:function(){return qc},hij:function(){return Hc},AsE:function(){return Vg},lnq:function(){return ch},HOy:function(){return Vc},Gf:function(){return h1}});var S=n(97424),t=n(28042),e=n(45632);n(78170),n(70350),n(27035),n(29101),n(83448),n(68257);var T=n(44014),y=n(71340),Y=n(29814),q=n(45914);function B(a,p,m){return(B=(0,q.Z)()?Reflect.construct:function(P,U,ae){var Te=[null];Te.push.apply(Te,U);var Ct=new(Function.bind.apply(P,Te));return ae&&(0,Y.Z)(Ct,ae.prototype),Ct}).apply(null,arguments)}var k=n(1884),D=n(39117),N=n(46751),I=n(56101);function j(a){var p="function"==typeof Map?new Map:void 0;return j=function(M){if(null===M||!function L(a){return-1!==Function.toString.call(a).indexOf("[native code]")}(M))return M;if("function"!=typeof M)throw new TypeError("Super expression must either be null or a function");if(void 0!==p){if(p.has(M))return p.get(M);p.set(M,P)}function P(){return B(M,arguments,(0,t.Z)(this).constructor)}return P.prototype=Object.create(M.prototype,{constructor:{value:P,enumerable:!1,writable:!0,configurable:!0}}),(0,Y.Z)(P,M)},j(a)}var le=n(17714),re=n(50253),W=n(83336),$=n(36646),be=n(81203);function z(a){for(var p in a)if(a[p]===z)return p;throw Error("Could not find renamed property on target object.")}function d(a,p){for(var m in p)p.hasOwnProperty(m)&&!a.hasOwnProperty(m)&&(a[m]=p[m])}function Q(a){if("string"==typeof a)return a;if(Array.isArray(a))return"["+a.map(Q).join(", ")+"]";if(null==a)return""+a;if(a.overriddenName)return"".concat(a.overriddenName);if(a.name)return"".concat(a.name);var p=a.toString();if(null==p)return""+p;var m=p.indexOf("\n");return-1===m?p:p.substring(0,m)}function J(a,p){return null==a||""===a?null===p?"":p:null==p||""===p?a:a+" "+p}var te=z({__forward_ref__:z});function K(a){return a.__forward_ref__=K,a.toString=function(){return Q(this())},a}function G(a){return ce(a)?a():a}function ce(a){return"function"==typeof a&&a.hasOwnProperty(te)&&a.__forward_ref__===K}var Me=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(M,P){var U;return(0,D.Z)(this,m),(U=p.call(this,function ve(a,p){var m="NG0".concat(Math.abs(a));return"".concat(m).concat(p?": "+p:"")}(M,P))).code=M,U}return(0,k.Z)(m)}(j(Error));function ue(a){return"string"==typeof a?a:null==a?"":String(a)}function lt(a){return"function"==typeof a?a.name||a.toString():"object"==typeof a&&null!=a&&"function"==typeof a.type?a.type.name||a.type.toString():ue(a)}function Pt(a,p){var m=p?" in ".concat(p):"";throw new Me(-201,"No provider for ".concat(lt(a)," found").concat(m))}function Ht(a,p){null==a&&function nn(a,p,m,M){throw new Error("ASSERTION ERROR: ".concat(a)+(null==M?"":" [Expected=> ".concat(m," ").concat(M," ").concat(p," <=Actual]")))}(p,a,null,"!=")}function $e(a){return{token:a.token,providedIn:a.providedIn||null,factory:a.factory,value:void 0}}function X(a){return{providers:a.providers||[],imports:a.imports||[]}}function ne(a){return me(a,Ft)||me(a,Xt)}function me(a,p){return a.hasOwnProperty(p)?a[p]:null}function At(a){return a&&(a.hasOwnProperty(sn)||a.hasOwnProperty(gn))?a[sn]:null}var hn,Ft=z({"\u0275prov":z}),sn=z({"\u0275inj":z}),Xt=z({ngInjectableDef:z}),gn=z({ngInjectorDef:z}),vn=function(){return(vn=vn||{})[vn.Default=0]="Default",vn[vn.Host=1]="Host",vn[vn.Self=2]="Self",vn[vn.SkipSelf=4]="SkipSelf",vn[vn.Optional=8]="Optional",vn}();function jn(){return hn}function Jn(a){var p=hn;return hn=a,p}function oi(a,p,m){var M=ne(a);return M&&"root"==M.providedIn?void 0===M.value?M.value=M.factory():M.value:m&vn.Optional?null:void 0!==p?p:void Pt(Q(a),"Injector")}function un(a){return{toString:a}.toString()}var mn=function(){return(mn=mn||{})[mn.OnPush=0]="OnPush",mn[mn.Default=1]="Default",mn}(),pt=function(){return(a=pt||(pt={}))[a.Emulated=0]="Emulated",a[a.None=2]="None",a[a.ShadowDom=3]="ShadowDom",pt;var a}(),Ne="undefined"!=typeof globalThis&&globalThis,Re="undefined"!=typeof window&&window,tt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,Ke="undefined"!=typeof global&&global,vt=Ne||Ke||Re||tt,Nn={},$t=[],fn=z({"\u0275cmp":z}),ln=z({"\u0275dir":z}),_n=z({"\u0275pipe":z}),xn=z({"\u0275mod":z}),In=z({"\u0275fac":z}),Yn=z({__NG_ELEMENT_ID__:z}),mi=0;function wi(a){return un(function(){var m={},M={type:a.type,providersResolver:null,decls:a.decls,vars:a.vars,factory:null,template:a.template||null,consts:a.consts||null,ngContentSelectors:a.ngContentSelectors,hostBindings:a.hostBindings||null,hostVars:a.hostVars||0,hostAttrs:a.hostAttrs||null,contentQueries:a.contentQueries||null,declaredInputs:m,inputs:null,outputs:null,exportAs:a.exportAs||null,onPush:a.changeDetection===mn.OnPush,directiveDefs:null,pipeDefs:null,selectors:a.selectors||$t,viewQuery:a.viewQuery||null,features:a.features||null,data:a.data||{},encapsulation:a.encapsulation||pt.Emulated,id:"c",styles:a.styles||$t,_:null,setInput:null,schemas:a.schemas||null,tView:null},P=a.directives,U=a.features,ae=a.pipes;return M.id+=mi++,M.inputs=_r(a.inputs,m),M.outputs=_r(a.outputs),U&&U.forEach(function(Te){return Te(M)}),M.directiveDefs=P?function(){return("function"==typeof P?P():P).map(Xi)}:null,M.pipeDefs=ae?function(){return("function"==typeof ae?ae():ae).map(ka)}:null,M})}function Bi(a,p,m){var M=a.\u0275cmp;M.directiveDefs=function(){return p.map(Xi)},M.pipeDefs=function(){return m.map(ka)}}function Xi(a){return Ta(a)||function Cn(a){return a[ln]||null}(a)}function ka(a){return function Pn(a){return a[_n]||null}(a)}var Ja={};function _a(a){return un(function(){var p={type:a.type,bootstrap:a.bootstrap||$t,declarations:a.declarations||$t,imports:a.imports||$t,exports:a.exports||$t,transitiveCompileScopes:null,schemas:a.schemas||null,id:a.id||null};return null!=a.id&&(Ja[a.id]=a.type),p})}function nr(a,p){return un(function(){var m=Tt(a,!0);m.declarations=p.declarations||$t,m.imports=p.imports||$t,m.exports=p.exports||$t})}function _r(a,p){if(null==a)return Nn;var m={};for(var M in a)if(a.hasOwnProperty(M)){var P=a[M],U=P;Array.isArray(P)&&(U=P[1],P=P[0]),m[P]=M,p&&(p[P]=U)}return m}var wa=wi;function or(a){return{type:a.type,name:a.name,factory:null,pure:!1!==a.pure,onDestroy:a.type.prototype.ngOnDestroy||null}}function Ta(a){return a[fn]||null}function Tt(a,p){var m=a[xn]||null;if(!m&&!0===p)throw new Error("Type ".concat(Q(a)," does not have '\u0275mod' property."));return m}function Yi(a){return Array.isArray(a)&&"object"==typeof a[1]}function aa(a){return Array.isArray(a)&&!0===a[1]}function xi(a){return 0!=(8&a.flags)}function Ui(a){return 2==(2&a.flags)}function ca(a){return 1==(1&a.flags)}function oa(a){return null!==a.template}function pr(a){return 0!=(512&a[2])}function Cr(a,p){return a.hasOwnProperty(In)?a[In]:null}var no=function(){function a(p,m,M){(0,D.Z)(this,a),this.previousValue=p,this.currentValue=m,this.firstChange=M}return(0,k.Z)(a,[{key:"isFirstChange",value:function(){return this.firstChange}}]),a}();function Lt(){return dt}function dt(a){return a.type.prototype.ngOnChanges&&(a.setInput=ke),ge}function ge(){var a=de(this),p=null==a?void 0:a.current;if(p){var m=a.previous;if(m===Nn)a.previous=p;else for(var M in p)m[M]=p[M];a.current=null,this.ngOnChanges(p)}}function ke(a,p,m,M){var P=de(a)||function we(a,p){return a[gt]=p}(a,{previous:Nn,current:null}),U=P.current||(P.current={}),ae=P.previous,Te=this.declaredInputs[m],Ue=ae[Te];U[Te]=new no(Ue&&Ue.currentValue,p,ae===Nn),a[M]=p}Lt.ngInherit=!0;var gt="__ngSimpleChanges__";function de(a){return a[gt]||null}var Si=void 0;function Ai(a){Si=a}function Fi(){return void 0!==Si?Si:"undefined"!=typeof document?document:void 0}function ot(a){return!!a.listen}var yt={createRenderer:function(p,m){return Fi()}};function ie(a){for(;Array.isArray(a);)a=a[0];return a}function oe(a,p){return ie(p[a])}function bt(a,p){return ie(p[a.index])}function Jt(a,p){return a.data[p]}function zn(a,p){return a[p]}function hi(a,p){var m=p[a];return Yi(m)?m:m[0]}function qi(a){return 4==(4&a[2])}function Oi(a){return 128==(128&a[2])}function Ni(a,p){return null==p?null:a[p]}function cr(a){a[18]=0}function po(a,p){a[5]+=p;for(var m=a,M=a[3];null!==M&&(1===p&&1===m[5]||-1===p&&0===m[5]);)M[5]+=p,m=M,M=M[3]}var ia={lFrame:il(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function jo(){return ia.bindingsEnabled}function ii(){return ia.lFrame.lView}function Li(){return ia.lFrame.tView}function Ur(a){return ia.lFrame.contextLView=a,a[8]}function br(){for(var a=yi();null!==a&&64===a.type;)a=a.parent;return a}function yi(){return ia.lFrame.currentTNode}function ji(a,p){var m=ia.lFrame;m.currentTNode=a,m.isParent=p}function Va(){return ia.lFrame.isParent}function xr(){ia.lFrame.isParent=!1}function zr(){return ia.isInCheckNoChangesMode}function gs(a){ia.isInCheckNoChangesMode=a}function fa(){var a=ia.lFrame,p=a.bindingRootIndex;return-1===p&&(p=a.bindingRootIndex=a.tView.bindingStartIndex),p}function io(){return ia.lFrame.bindingIndex}function kn(){return ia.lFrame.bindingIndex++}function Qn(a){var p=ia.lFrame,m=p.bindingIndex;return p.bindingIndex=p.bindingIndex+a,m}function Gi(a,p){var m=ia.lFrame;m.bindingIndex=m.bindingRootIndex=a,ar(p)}function ar(a){ia.lFrame.currentDirectiveIndex=a}function ja(a){var p=ia.lFrame.currentDirectiveIndex;return-1===p?null:a[p]}function Es(){return ia.lFrame.currentQueryIndex}function hu(a){ia.lFrame.currentQueryIndex=a}function so(a){var p=a[1];return 2===p.type?p.declTNode:1===p.type?a[6]:null}function Zs(a,p,m){if(m&vn.SkipSelf){for(var M=p,P=a;!(null!==(M=M.parent)||m&vn.Host||null===(M=so(P))||(P=P[15],10&M.type)););if(null===M)return!1;p=M,a=P}var U=ia.lFrame=Ir();return U.currentTNode=p,U.lView=a,!0}function Rl(a){var p=Ir(),m=a[1];ia.lFrame=p,p.currentTNode=m.firstChild,p.lView=a,p.tView=m,p.contextLView=a,p.bindingIndex=m.bindingStartIndex,p.inI18n=!1}function Ir(){var a=ia.lFrame,p=null===a?null:a.child;return null===p?il(a):p}function il(a){var p={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:a,child:null,inI18n:!1};return null!==a&&(a.child=p),p}function vs(){var a=ia.lFrame;return ia.lFrame=a.parent,a.currentTNode=null,a.lView=null,a}var $a=vs;function ks(){var a=vs();a.isParent=!0,a.tView=null,a.selectedIndex=-1,a.contextLView=null,a.elementDepthCount=0,a.currentDirectiveIndex=-1,a.currentNamespace=null,a.bindingRootIndex=-1,a.bindingIndex=-1,a.currentQueryIndex=0}function ys(a){var p=ia.lFrame.contextLView=function Ul(a,p){for(;a>0;)p=p[15],a--;return p}(a,ia.lFrame.contextLView);return p[8]}function ao(){return ia.lFrame.selectedIndex}function as(a){ia.lFrame.selectedIndex=a}function Tr(){var a=ia.lFrame;return Jt(a.tView,a.selectedIndex)}function bs(){ia.lFrame.currentNamespace="svg"}function Cs(){!function vl(){ia.lFrame.currentNamespace=null}()}function Ms(a,p){for(var m=p.directiveStart,M=p.directiveEnd;m=M)break}else p[Ue]<0&&(a[18]+=65536),(Te>11>16&&(3&a[2])===p){a[2]+=2048;try{U.call(Te)}finally{}}}else try{U.call(Te)}finally{}}var xs=(0,k.Z)(function a(p,m,M){(0,D.Z)(this,a),this.factory=p,this.resolving=!1,this.canSeeViewProviders=m,this.injectImpl=M});function De(a,p,m){for(var M=ot(a),P=0;Pp){ae=U-1;break}}}for(;U>16}(a),M=p;m>0;)M=M[15],m--;return M}var Tn=!0;function di(a){var p=Tn;return Tn=a,p}var fr=0;function Yr(a,p){var m=mo(a,p);if(-1!==m)return m;var M=p[1];M.firstCreatePass&&(a.injectorIndex=p.length,Kr(M.data,a),Kr(p,null),Kr(M.blueprint,null));var P=To(a,p),U=a.injectorIndex;if(Et(P))for(var ae=Qt(P),Te=On(P,p),Ue=Te[1].data,Ct=0;Ct<8;Ct++)p[U+Ct]=Te[ae+Ct]|Ue[ae+Ct];return p[U+8]=P,U}function Kr(a,p){a.push(0,0,0,0,0,0,0,0,p)}function mo(a,p){return-1===a.injectorIndex||a.parent&&a.parent.injectorIndex===a.injectorIndex||null===p[a.injectorIndex+8]?-1:a.injectorIndex}function To(a,p){if(a.parent&&-1!==a.parent.injectorIndex)return a.parent.injectorIndex;for(var m=0,M=null,P=p;null!==P;){var U=P[1],ae=U.type;if(null===(M=2===ae?U.declTNode:1===ae?P[6]:null))return-1;if(m++,P=P[15],-1!==M.injectorIndex)return M.injectorIndex|m<<16}return-1}function Nr(a,p,m){!function Pr(a,p,m){var M;"string"==typeof m?M=m.charCodeAt(0)||0:m.hasOwnProperty(Yn)&&(M=m[Yn]),null==M&&(M=m[Yn]=fr++);var P=255&M;p.data[a+(P>>5)]|=1<3&&void 0!==arguments[3]?arguments[3]:vn.Default,P=arguments.length>4?arguments[4]:void 0;if(null!==a){var U=Fo(m);if("function"==typeof U){if(!Zs(p,a,M))return M&vn.Host?Wt(P,m,M):Lo(p,m,M,P);try{var ae=U(M);if(null!=ae||M&vn.Optional)return ae;Pt(m)}finally{$a()}}else if("number"==typeof U){var Te=null,Ue=mo(a,p),Ct=-1,Yt=M&vn.Host?p[16][6]:null;for((-1===Ue||M&vn.SkipSelf)&&(-1!==(Ct=-1===Ue?To(a,p):p[Ue+8])&&Gc(M,!1)?(Te=p[1],Ue=Qt(Ct),p=On(Ct,p)):Ue=-1);-1!==Ue;){var on=p[1];if(zc(U,Ue,on.data)){var pn=Ud(Ue,p,m,Te,M,Yt);if(pn!==qr)return pn}-1!==(Ct=p[Ue+8])&&Gc(M,p[1].data[Ue+8]===Yt)&&zc(U,Ue,p)?(Te=on,Ue=Qt(Ct),p=On(Ct,p)):Ue=-1}}}return Lo(p,m,M,P)}var qr={};function za(){return new Bl(br(),ii())}function Ud(a,p,m,M,P,U){var ae=p[1],Te=ae.data[a+8],Yt=Zu(Te,ae,m,null==M?Ui(Te)&&Tn:M!=ae&&0!=(3&Te.type),P&vn.Host&&U===Te);return null!==Yt?rl(p,ae,Yt,Te):qr}function Zu(a,p,m,M,P){for(var U=a.providerIndexes,ae=p.data,Te=1048575&U,Ue=a.directiveStart,Yt=U>>20,pn=P?Te+Yt:a.directiveEnd,Sn=M?Te:Te+Yt;Sn=Ue&&Hn.type===m)return Sn}if(P){var ci=ae[Ue];if(ci&&oa(ci)&&ci.type===m)return Ue}return null}function rl(a,p,m,M){var P=a[m],U=p.data;if(function Ss(a){return a instanceof xs}(P)){var ae=P;ae.resolving&&function Xe(a,p){var m=p?". Dependency path: ".concat(p.join(" > ")," > ").concat(a):"";throw new Me(-200,"Circular dependency in DI detected for ".concat(a).concat(m))}(lt(U[m]));var Te=di(ae.canSeeViewProviders);ae.resolving=!0;var Ue=ae.injectImpl?Jn(ae.injectImpl):null;Zs(a,M,vn.Default);try{P=a[m]=ae.factory(void 0,U,a,M),p.firstCreatePass&&m>=M.directiveStart&&function Is(a,p,m){var M=p.type.prototype,U=M.ngOnInit,ae=M.ngDoCheck;if(M.ngOnChanges){var Te=dt(p);(m.preOrderHooks||(m.preOrderHooks=[])).push(a,Te),(m.preOrderCheckHooks||(m.preOrderCheckHooks=[])).push(a,Te)}U&&(m.preOrderHooks||(m.preOrderHooks=[])).push(0-a,U),ae&&((m.preOrderHooks||(m.preOrderHooks=[])).push(a,ae),(m.preOrderCheckHooks||(m.preOrderCheckHooks=[])).push(a,ae))}(m,U[m],p)}finally{null!==Ue&&Jn(Ue),di(Te),ae.resolving=!1,$a()}}return P}function Fo(a){if("string"==typeof a)return a.charCodeAt(0)||0;var p=a.hasOwnProperty(Yn)?a[Yn]:void 0;return"number"==typeof p?p>=0?255&p:za:p}function zc(a,p,m){return!!(m[p+(a>>5)]&1<=a.length?a.push(m):a.splice(p,0,m)}function Cl(a,p){return p>=a.length-1?a.pop():a.splice(p,1)[0]}function jl(a,p){for(var m=[],M=0;M=0?a[1|M]=m:function Ts(a,p,m,M){var P=a.length;if(P==p)a.push(m,M);else if(1===P)a.push(M,a[0]),a[0]=m;else{for(P--,a.push(a[P-1],a[P]);P>p;)a[P]=a[P-2],P--;a[p]=m,a[p+1]=M}}(a,M=~M,p,m),M}function Lu(a,p){var m=_o(a,p);if(m>=0)return a[1|m]}function _o(a,p){return function Rs(a,p,m){for(var M=0,P=a.length>>m;P!==M;){var U=M+(P-M>>1),ae=a[U<p?P=U:M=U+1}return~(P<1&&void 0!==arguments[1]?arguments[1]:vn.Default;if(void 0===vu){var m="";throw new Me(203,m)}return null===vu?oi(a,void 0,p):vu.get(a,p&vn.Optional?null:void 0,p)}function wr(a){var p=arguments.length>1&&void 0!==arguments[1]?arguments[1]:vn.Default;return(jn()||zl)(G(a),p)}var Qd=wr;function gc(a){for(var p=[],m=0;m3&&void 0!==arguments[3]?arguments[3]:null;a=a&&"\n"===a.charAt(0)&&"\u0275"==a.charAt(1)?a.substr(2):a;var P=Q(p);if(Array.isArray(p))P=p.map(Q).join(" -> ");else if("object"==typeof p){var U=[];for(var ae in p)if(p.hasOwnProperty(ae)){var Te=p[ae];U.push(ae+":"+("string"==typeof Te?JSON.stringify(Te):Q(Te)))}P="{".concat(U.join(", "),"}")}return"".concat(m).concat(M?"("+M+")":"","[").concat(P,"]: ").concat(a.replace(go,"\n "))}("\n"+a.message,P,m,M),a.ngTokenPath=P,a[Ps]=null,a}var id,Yu,Ba=Us(Ao("Inject",function(a){return{token:a}}),-1),H=Us(Ao("Optional"),8),ye=Us(Ao("Self"),2),rt=Us(Ao("SkipSelf"),4),Dt=Us(Ao("Host"),1),jt=null;function Gn(a){return Ki(function wn(){return jt=jt||new $r}().parameters(a))}function Ki(a){return a.map(function(p){return function Ia(a){var p={token:null,attribute:null,host:!1,optional:!1,self:!1,skipSelf:!1};if(Array.isArray(a)&&a.length>0)for(var m=0;m"+m;try{var M=(new window.DOMParser).parseFromString(Da(m),"text/html").body;return null===M?this.inertDocumentHelper.getInertBodyElement(m):(M.removeChild(M.firstChild),M)}catch(P){return null}}}]),a}(),Xl=function(){function a(p){if((0,D.Z)(this,a),this.defaultDoc=p,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){var m=this.inertDocument.createElement("html");this.inertDocument.appendChild(m);var M=this.inertDocument.createElement("body");m.appendChild(M)}}return(0,k.Z)(a,[{key:"getInertBodyElement",value:function(m){var M=this.inertDocument.createElement("template");if("content"in M)return M.innerHTML=Da(m),M;var P=this.inertDocument.createElement("body");return P.innerHTML=Da(m),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(P),P}},{key:"stripCustomNsAttrs",value:function(m){for(var M=m.attributes,P=M.length-1;0"),!0}},{key:"endElement",value:function(m){var M=m.nodeName.toLowerCase();od.hasOwnProperty(M)&&!xf.hasOwnProperty(M)&&(this.buf.push(""))}},{key:"chars",value:function(m){this.buf.push(ip(m))}},{key:"checkClobberedElement",value:function(m,M){if(M&&(m.compareDocumentPosition(M)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: ".concat(m.outerHTML));return M}}]),a}(),Cc=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,vh=/([^\#-~ |!])/g;function ip(a){return a.replace(/&/g,"&").replace(Cc,function(p){return"&#"+(1024*(p.charCodeAt(0)-55296)+(p.charCodeAt(1)-56320)+65536)+";"}).replace(vh,function(p){return"&#"+p.charCodeAt(0)+";"}).replace(//g,">")}function xc(a,p){var m=null;try{Mc=Mc||function xl(a){var p=new Xl(a);return function bf(){try{return!!(new window.DOMParser).parseFromString(Da(""),"text/html")}catch(a){return!1}}()?new _h(p):p}(a);var M=p?String(p):"";m=Mc.getInertBodyElement(M);var P=5,U=M;do{if(0===P)throw new Error("Failed to sanitize html because the input is unstable");P--,M=U,U=m.innerHTML,m=Mc.getInertBodyElement(M)}while(M!==U);return Da((new Ju).sanitizeChildren(sd(m)||m))}finally{if(m)for(var Ue=sd(m)||m;Ue.firstChild;)Ue.removeChild(Ue.firstChild)}}function sd(a){return"content"in a&&function ld(a){return a.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===a.nodeName}(a)?a.content:null}var Rr=function(){return(Rr=Rr||{})[Rr.NONE=0]="NONE",Rr[Rr.HTML=1]="HTML",Rr[Rr.STYLE=2]="STYLE",Rr[Rr.SCRIPT=3]="SCRIPT",Rr[Rr.URL=4]="URL",Rr[Rr.RESOURCE_URL=5]="RESOURCE_URL",Rr}();function Sc(a){var p=eu();return p?Kd(p.sanitize(Rr.HTML,a)||""):yu(a,"HTML")?Kd(qs(a)):xc(Fi(),ue(a))}function ud(a){var p=eu();return p?p.sanitize(Rr.URL,a)||"":yu(a,"URL")?qs(a):bc(ue(a))}function Qu(a){var p=eu();if(p)return hf(p.sanitize(Rr.RESOURCE_URL,a)||"");if(yu(a,"ResourceURL"))return hf(qs(a));throw new Me(904,"")}function eu(){var a=ii();return a&&a[12]}var ll="__ngContext__";function ro(a,p){a[ll]=p}function Tc(a){var p=function ul(a){return a[ll]||null}(a);return p?Array.isArray(p)?p:p.lView:null}function cd(a){return a.ngOriginalError}function kf(a){for(var p=arguments.length,m=new Array(p>1?p-1:0),M=1;M0&&(a[m-1][4]=M[4]);var U=Cl(a,10+p);!function Oh(a,p){wc(a,p,p[11],2,null,null),p[0]=null,p[6]=null}(M[1],M);var ae=U[19];null!==ae&&ae.detachView(U[1]),M[3]=null,M[4]=null,M[2]&=-129}return M}}function Bf(a,p){if(!(256&p[2])){var m=p[11];ot(m)&&m.destroyNode&&wc(a,p,m,3,null,null),function kh(a){var p=a[13];if(!p)return _p(a[1],a);for(;p;){var m=null;if(Yi(p))m=p[13];else{var M=p[10];M&&(m=M)}if(!m){for(;p&&!p[4]&&p!==a;)Yi(p)&&_p(p[1],p),p=p[3];null===p&&(p=a),Yi(p)&&_p(p[1],p),m=p&&p[4]}p=m}}(p)}}function _p(a,p){if(!(256&p[2])){p[2]&=-129,p[2]|=256,function Yf(a,p){var m;if(null!=a&&null!=(m=a.destroyHooks))for(var M=0;M=0?M[P=Ct]():M[P=-Ct].unsubscribe(),U+=2}else{var Yt=M[P=m[U+1]];m[U].call(Yt)}if(null!==M){for(var on=P+1;onU?"":P[on+1].toLowerCase();var Sn=8&M?pn:null;if(Sn&&-1!==Gf(Sn,Ct,0)||2&M&&Ct!==pn){if(Ws(M))return!1;ae=!0}}}}else{if(!ae&&!Ws(M)&&!Ws(Ue))return!1;if(ae&&Ws(Ue))continue;ae=!1,M=Ue|1&M}}return Ws(M)||ae}function Ws(a){return 0==(1&a)}function Yh(a,p,m,M){if(null===p)return-1;var P=0;if(M||!m){for(var U=!1;P-1)for(m++;m2&&void 0!==arguments[2]&&arguments[2],M=0;M0?'="'+Te+'"':"")+"]"}else 8&M?P+="."+ae:4&M&&(P+=" "+ae);else""!==P&&!Ws(ae)&&(p+=tm(U,P),P=""),M=ae,U=U||!Ws(M);m++}return""!==P&&(p+=tm(U,P)),p}var Za={};function nm(a){xp(Li(),ii(),ao()+a,zr())}function xp(a,p,m,M){if(!M)if(3==(3&p[2])){var U=a.preOrderCheckHooks;null!==U&&Ls(p,U,m)}else{var ae=a.preOrderHooks;null!==ae&&rs(p,ae,0,m)}as(m)}function Tu(a,p){return a<<17|p<<2}function zs(a){return a>>17&32767}function Sp(a){return 2|a}function Yo(a){return(131068&a)>>2}function Tp(a,p){return-131069&a|p<<2}function Ap(a){return 1|a}function _m(a,p){var m=a.contentQueries;if(null!==m)for(var M=0;M20&&xp(a,p,20,zr()),m(M,P)}finally{as(U)}}function vm(a,p,m){if(xi(p))for(var P=p.directiveEnd,U=p.directiveStart;U2&&void 0!==arguments[2]?arguments[2]:bt,M=p.localNames;if(null!==M)for(var P=p.index+1,U=0;U0;){var m=a[--p];if("number"==typeof m&&m<0)return m}return 0})(Te)!=Ue&&Te.push(Ue),Te.push(M,P,ae)}}function Mm(a,p){null!==a.hostBindings&&a.hostBindings(1,p)}function Bp(a,p){p.flags|=2,(a.components||(a.components=[])).push(p.index)}function ic(a,p,m){if(m){if(p.exportAs)for(var M=0;M0&&fl(m)}}function fl(a){for(var p=Qs(a);null!==p;p=Mu(p))for(var m=10;m0&&fl(M)}var ae=a[1].components;if(null!==ae)for(var Te=0;Te0&&fl(Ue)}}function Ya(a,p){var m=hi(p,a),M=m[1];(function kc(a,p){for(var m=p.length;m1&&void 0!==arguments[1]?arguments[1]:Ro;if(M===Ro){var P=new Error("NullInjectorError: No provider for ".concat(Q(m),"!"));throw P.name="NullInjectorError",P}return M}}]),a}(),Vp=new Dr("Set Injector scope."),Lc={},km={},Xr=void 0;function Ho(){return void 0===Xr&&(Xr=new Ic),Xr}function Im(a){var p=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,m=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,M=arguments.length>3?arguments[3]:void 0,P=Lm(a,p,m,M);return P._resolveInjectorDefTypes(),P}function Lm(a){var p=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,m=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,M=arguments.length>3?arguments[3]:void 0;return new b_(a,m,p||Ho(),M)}var b_=function(){function a(p,m,M){var P=this,U=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,D.Z)(this,a),this.parent=M,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var ae=[];m&&Go(m,function(Ue){return P.processProvider(Ue,p,m)}),Go([p],function(Ue){return P.processInjectorType(Ue,[],ae)}),this.records.set(Dd,lu(void 0,this));var Te=this.records.get(Vp);this.scope=null!=Te?Te.value:null,this.source=U||("object"==typeof p?null:Q(p))}return(0,k.Z)(a,[{key:"destroyed",get:function(){return this._destroyed}},{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(function(m){return m.ngOnDestroy()})}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(m){var M=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ro,P=arguments.length>2&&void 0!==arguments[2]?arguments[2]:vn.Default;this.assertNotDestroyed();var U=Ko(this),ae=Jn(void 0);try{if(!(P&vn.SkipSelf)){var Te=this.records.get(m);if(void 0===Te){var Ue=x_(m)&&ne(m);Te=Ue&&this.injectableDefInScope(Ue)?lu(Fc(m),Lc):null,this.records.set(m,Te)}if(null!=Te)return this.hydrate(m,Te)}var Ct=P&vn.Self?Ho():this.parent;return Ct.get(m,M=P&vn.Optional&&M===Ro?null:M)}catch(on){if("NullInjectorError"===on.name){var Yt=on[Ps]=on[Ps]||[];if(Yt.unshift(Q(m)),U)throw on;return Gl(on,m,"R3InjectorError",this.source)}throw on}finally{Jn(ae),Ko(U)}}},{key:"_resolveInjectorDefTypes",value:function(){var m=this;this.injectorDefTypes.forEach(function(M){return m.get(M)})}},{key:"toString",value:function(){var m=[];return this.records.forEach(function(P,U){return m.push(Q(U))}),"R3Injector[".concat(m.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Me(205,!1)}},{key:"processInjectorType",value:function(m,M,P){var U=this;if(!(m=G(m)))return!1;var ae=At(m),Te=null==ae&&m.ngModule||void 0,Ue=void 0===Te?m:Te,on=-1!==P.indexOf(Ue);if(void 0!==Te&&(ae=At(Te)),null==ae)return!1;if(null!=ae.imports&&!on){var pn;P.push(Ue);try{Go(ae.imports,function(ti){U.processInjectorType(ti,M,P)&&(void 0===pn&&(pn=[]),pn.push(ti))})}finally{}if(void 0!==pn)for(var Sn=function(na){var ur=pn[na],Sr=ur.ngModule,oo=ur.providers;Go(oo,function(ms){return U.processProvider(ms,Sr,oo||$t)})},Hn=0;Hn0)throw jl(p,"?"),new Me(204,!1);var M=function Oe(a){var p=a&&(a[Ft]||a[Xt]);if(p){var m=function He(a){if(a.hasOwnProperty("name"))return a.name;var p=(""+a).match(/^function\s*([^\s(]+)/);return null===p?"":p[1]}(a);return console.warn('DEPRECATED: DI is instantiating a token "'.concat(m,'" that inherits its @Injectable decorator but does not provide one itself.\n')+'This will become an error in a future version of Angular. Please add @Injectable() to the "'.concat(m,'" class.')),p}return null}(a);return null!==M?function(){return M.factory(a)}:function(){return new a}}(a);throw new Me(204,!1)}function Nm(a,p,m){var M=void 0;if($s(a)){var P=G(a);return Cr(P)||Fc(P)}if(Nc(a))M=function(){return G(a.useValue)};else if(function wd(a){return!(!a||!a.useFactory)}(a))M=function(){return a.useFactory.apply(a,(0,y.Z)(gc(a.deps||[])))};else if(function jp(a){return!(!a||!a.useExisting)}(a))M=function(){return wr(G(a.useExisting))};else{var U=G(a&&(a.useClass||a.provide));if(!function Rm(a){return!!a.deps}(a))return Cr(U)||Fc(U);M=function(){return B(U,(0,y.Z)(gc(a.deps)))}}return M}function lu(a,p){var m=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return{factory:a,value:p,multi:m?[]:void 0}}function Nc(a){return null!==a&&"object"==typeof a&&nd in a}function $s(a){return"function"==typeof a}function x_(a){return"function"==typeof a||"object"==typeof a&&a instanceof Dr}var es=function(){var a=function(){function p(){(0,D.Z)(this,p)}return(0,k.Z)(p,null,[{key:"create",value:function(M,P){var U;if(Array.isArray(M))return Im({name:""},P,M,"");var ae=null!==(U=M.name)&&void 0!==U?U:"";return Im({name:ae},M.parent,M.providers,ae)}}]),p}();return a.THROW_IF_NOT_FOUND=Ro,a.NULL=new Ic,a.\u0275prov=$e({token:a,providedIn:"any",factory:function(){return wr(Dd)}}),a.__NG_ELEMENT_ID__=-1,a}();function Wm(a,p){Ms(Tc(a)[1],br())}function Wp(a){for(var p=function zm(a){return Object.getPrototypeOf(a.prototype).constructor}(a.type),m=!0,M=[a];p;){var P=void 0;if(oa(a))P=p.\u0275cmp||p.\u0275dir;else{if(p.\u0275cmp)throw new Me(903,"");P=p.\u0275dir}if(P){if(m){M.push(P);var ae=a;ae.inputs=zp(a.inputs),ae.declaredInputs=zp(a.declaredInputs),ae.outputs=zp(a.outputs);var Te=P.hostBindings;Te&&Km(a,Te);var Ue=P.viewQuery,Ct=P.contentQueries;if(Ue&&Gp(a,Ue),Ct&&Gm(a,Ct),d(a.inputs,P.inputs),d(a.declaredInputs,P.declaredInputs),d(a.outputs,P.outputs),oa(P)&&P.data.animation){var Yt=a.data;Yt.animation=(Yt.animation||[]).concat(P.data.animation)}}var on=P.features;if(on)for(var pn=0;pn=0;M--){var P=a[M];P.hostVars=p+=P.hostVars,P.hostAttrs=Ie(P.hostAttrs,m=Ie(m,P.hostAttrs))}}(M)}function zp(a){return a===Nn?{}:a===$t?[]:a}function Gp(a,p){var m=a.viewQuery;a.viewQuery=m?function(M,P){p(M,P),m(M,P)}:p}function Gm(a,p){var m=a.contentQueries;a.contentQueries=m?function(M,P,U){p(M,P,U),m(M,P,U)}:p}function Km(a,p){var m=a.hostBindings;a.hostBindings=m?function(M,P){p(M,P),m(M,P)}:p}var rc=null;function oc(){if(!rc){var a=vt.Symbol;if(a&&a.iterator)rc=a.iterator;else for(var p=Object.getOwnPropertyNames(Map.prototype),m=0;m1&&void 0!==arguments[1]?arguments[1]:vn.Default,m=ii();if(null===m)return wr(a,p);var M=br();return yl(M,m,G(a),p)}function bo(){throw new Error("invalid")}function pu(a,p,m){var M=ii();return Oo(M,kn(),p)&&ds(Li(),Tr(),M,a,p,M[11],m,!1),pu}function B_(a,p,m,M,P){var ae=P?"class":"style";Em(a,m,p.inputs[ae],ae,M)}function Y_(a,p,m,M){var P=ii(),U=Li(),ae=20+a,Te=P[11],Ue=P[ae]=mp(Te,p,function ko(){return ia.lFrame.currentNamespace}()),Ct=U.firstCreatePass?function tv(a,p,m,M,P,U,ae){var Te=p.consts,Ct=Xu(p,a,2,P,Ni(Te,U));return Fr(p,m,Ct,Ni(Te,ae)),null!==Ct.attrs&&Pd(Ct,Ct.attrs,!1),null!==Ct.mergedAttrs&&Pd(Ct,Ct.mergedAttrs,!0),null!==p.queries&&p.queries.elementStart(p,Ct),Ct}(ae,U,P,0,p,m,M):U.data[ae];ji(Ct,!0);var Yt=Ct.mergedAttrs;null!==Yt&&De(Te,Ue,Yt);var on=Ct.classes;null!==on&&Cp(Te,Ue,on);var pn=Ct.styles;null!==pn&&zf(Te,Ue,pn),64!=(64&Ct.flags)&&hd(U,P,Ue,Ct),0===function Os(){return ia.lFrame.elementDepthCount}()&&ro(Ue,P),function qa(){ia.lFrame.elementDepthCount++}(),ca(Ct)&&(cs(U,P,Ct),vm(U,Ct,P)),null!==M&&Lp(P,Ct)}function q_(){var a=br();Va()?xr():ji(a=a.parent,!1);var p=a;!function xo(){ia.lFrame.elementDepthCount--}();var m=Li();m.firstCreatePass&&(Ms(m,a),xi(a)&&m.queries.elementEnd(a)),null!=p.classesWithoutHost&&function Ns(a){return 0!=(16&a.flags)}(p)&&B_(m,p,ii(),p.classesWithoutHost,!0),null!=p.stylesWithoutHost&&function os(a){return 0!=(32&a.flags)}(p)&&B_(m,p,ii(),p.stylesWithoutHost,!1)}function Tg(a,p,m,M){Y_(a,p,m,M),q_()}function H_(a,p,m){var M=ii(),P=Li(),U=a+20,ae=P.firstCreatePass?function nv(a,p,m,M,P){var U=p.consts,ae=Ni(U,M),Te=Xu(p,a,8,"ng-container",ae);return null!==ae&&Pd(Te,ae,!0),Fr(p,m,Te,Ni(U,P)),null!==p.queries&&p.queries.elementStart(p,Te),Te}(U,P,M,p,m):P.data[U];ji(ae,!0);var Te=M[U]=M[11].createComment("");hd(P,M,Te,ae),ro(Te,M),ca(ae)&&(cs(P,M,ae),vm(P,ae,M)),null!=m&&Lp(M,ae)}function V_(){var a=br(),p=Li();Va()?xr():ji(a=a.parent,!1),p.firstCreatePass&&(Ms(p,a),xi(a)&&p.queries.elementEnd(a))}function Ag(a,p,m){H_(a,p,m),V_()}function Pg(){return ii()}function j_(a){return!!a&&"function"==typeof a.then}function Dg(a){return!!a&&"function"==typeof a.subscribe}var J_=Dg;function Fd(a,p,m,M){var P=ii(),U=Li(),ae=br();return wg(U,P,P[11],ae,a,p,!!m,M),Fd}function of(a,p){var m=br(),M=ii(),P=Li();return wg(P,M,wm(ja(P.data),m,M),m,a,p,!1),of}function wg(a,p,m,M,P,U,ae,Te){var Ue=ca(M),Yt=a.firstCreatePass&&Dm(a),on=p[8],pn=Pm(p),Sn=!0;if(3&M.type||Te){var Hn=bt(M,p),ci=Te?Te(Hn):Hn,Ti=pn.length,Ri=Te?function(Ov){return Te(ie(Ov[M.index]))}:M.index;if(ot(m)){var ti=null;if(!Te&&Ue&&(ti=function iv(a,p,m,M){var P=a.cleanup;if(null!=P)for(var U=0;UUe?Te[Ue]:null}"string"==typeof ae&&(U+=2)}return null}(a,p,P,M.index)),null!==ti)(ti.__ngLastListenerFn__||ti).__ngNextListenerFn__=U,ti.__ngLastListenerFn__=U,Sn=!1;else{U=lh(M,p,on,U,!1);var ur=m.listen(ci,P,U);pn.push(U,ur),Yt&&Yt.push(P,Ri,Ti,Ti+1)}}else U=lh(M,p,on,U,!0),ci.addEventListener(P,U,ae),pn.push(U),Yt&&Yt.push(P,Ri,Ti,ae)}else U=lh(M,p,on,U,!1);var oo,Sr=M.outputs;if(Sn&&null!==Sr&&(oo=Sr[P])){var ms=oo.length;if(ms)for(var Fl=0;Fl0&&void 0!==arguments[0]?arguments[0]:1;return ys(a)}function av(a,p){for(var m=null,M=function Mp(a){var p=a.attrs;if(null!=p){var m=p.indexOf(5);if(0==(1&m))return p[m+1]}return null}(a),P=0;P1&&void 0!==arguments[1]?arguments[1]:0,m=arguments.length>2?arguments[2]:void 0,M=ii(),P=Li(),U=Xu(P,20+a,16,null,m||null);null===U.projection&&(U.projection=p),xr(),64!=(64&U.flags)&&Fh(P,M,U)}function z_(a,p,m){return uh(a,"",p,"",m),z_}function uh(a,p,m,M,P){var U=ii(),ae=sc(U,p,m,M);return ae!==Za&&ds(Li(),Tr(),U,a,ae,U[11],P,!1),uh}function G_(a,p,m,M,P,U,ae){var Te=ii(),Ue=lc(Te,p,m,M,P,U);return Ue!==Za&&ds(Li(),Tr(),Te,a,Ue,Te[11],ae,!1),G_}function K_(a,p,m,M,P,U,ae,Te,Ue,Ct,Yt){var on=ii(),pn=Zl(on,p,m,M,P,U,ae,Te,Ue,Ct);return pn!==Za&&ds(Li(),Tr(),on,a,pn,on[11],Yt,!1),K_}function Ng(a,p,m,M,P){for(var U=a[m+1],ae=null===p,Te=M?zs(U):Yo(U),Ue=!1;0!==Te&&(!1===Ue||ae);){var Yt=a[Te+1];lv(a[Te],p)&&(Ue=!0,a[Te+1]=M?Ap(Yt):Sp(Yt)),Te=M?zs(Yt):Yo(Yt)}Ue&&(a[m+1]=M?Sp(U):Ap(U))}function lv(a,p){return null===a||null==p||(Array.isArray(a)?a[1]:a)===p||!(!Array.isArray(a)||"string"!=typeof p)&&_o(a,p)>=0}var Co={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Rg(a){return a.substring(Co.key,Co.keyEnd)}function Ug(a,p){var m=Co.textEnd;return m===p?-1:(p=Co.keyEnd=function pv(a,p,m){for(;p32;)p++;return p}(a,Co.key=p,m),uc(a,p,m))}function uc(a,p,m){for(;p=0;m=Ug(p,m))No(a,Rg(p),!0)}function v(a,p,m,M){var P=ii(),U=Li(),ae=Qn(2);U.firstUpdatePass&&r(U,a,ae,M),p!==Za&&Oo(P,ae,p)&&ki(U,U.data[ao()],P,P[11],a,P[ae+1]=function is(a,p){return null==a||("string"==typeof p?a+=p:"object"==typeof a&&(a=Q(qs(a)))),a}(p,m),M,ae)}function F(a,p,m,M){var P=Li(),U=Qn(2);P.firstUpdatePass&&r(P,null,U,M);var ae=ii();if(m!==Za&&Oo(ae,U,m)){var Te=P.data[ao()];if(eo(Te,M)&&!f(P,U)){var Ct=M?Te.classesWithoutHost:Te.stylesWithoutHost;null!==Ct&&(m=J(Ct,m||"")),B_(P,Te,ae,m,M)}else!function Pi(a,p,m,M,P,U,ae,Te){P===Za&&(P=$t);for(var Ue=0,Ct=0,Yt=0=a.expandoStartIndex}function r(a,p,m,M){var P=a.data;if(null===P[m+1]){var U=P[ao()],ae=f(a,m);eo(U,M)&&null===p&&!ae&&(p=!1),p=function O(a,p,m,M){var P=ja(a),U=M?p.residualClasses:p.residualStyles;if(null===P)0===(M?p.classBindings:p.styleBindings)&&(m=Kt(m=_t(null,a,p,m,M),p.attrs,M),U=null);else{var Te=p.directiveStylingLast;if(-1===Te||a[Te]!==P)if(m=_t(P,a,p,m,M),null===U){var Ct=function R(a,p,m){var M=m?p.classBindings:p.styleBindings;if(0!==Yo(M))return a[zs(M)]}(a,p,M);void 0!==Ct&&Array.isArray(Ct)&&function ee(a,p,m,M){a[zs(m?p.classBindings:p.styleBindings)]=M}(a,p,M,Ct=Kt(Ct=_t(null,a,p,Ct[1],M),p.attrs,M))}else U=function Je(a,p,m){for(var M=void 0,P=p.directiveEnd,U=1+p.directiveStylingLast;U0)&&(Ct=!0):Yt=m,P)if(0!==Ue){var Sn=zs(a[Te+1]);a[M+1]=Tu(Sn,Te),0!==Sn&&(a[Sn+1]=Tp(a[Sn+1],M)),a[Te+1]=function Qh(a,p){return 131071&a|p<<17}(a[Te+1],M)}else a[M+1]=Tu(Te,0),0!==Te&&(a[Te+1]=Tp(a[Te+1],M)),Te=M;else a[M+1]=Tu(Ue,0),0===Te?Te=M:a[Ue+1]=Tp(a[Ue+1],M),Ue=M;Ct&&(a[M+1]=Sp(a[M+1])),Ng(a,Yt,M,!0),Ng(a,Yt,M,!1),function sv(a,p,m,M,P){var U=P?a.residualClasses:a.residualStyles;null!=U&&"string"==typeof p&&_o(U,p)>=0&&(m[M+1]=Ap(m[M+1]))}(p,Yt,a,M,U),ae=Tu(Te,Ue),U?p.classBindings=ae:p.styleBindings=ae}(P,U,p,m,ae,M)}}function _t(a,p,m,M,P){var U=null,ae=m.directiveEnd,Te=m.directiveStylingLast;for(-1===Te?Te=m.directiveStart:Te++;Te0;){var Ue=a[P],Ct=Array.isArray(Ue),Yt=Ct?Ue[1]:Ue,on=null===Yt,pn=m[P+1];pn===Za&&(pn=on?$t:void 0);var Sn=on?Lu(pn,M):Yt===M?pn:void 0;if(Ct&&!kr(Sn)&&(Sn=Lu(Ue,M)),kr(Sn)&&(Te=Sn,ae))return Te;var Hn=a[P+1];P=ae?zs(Hn):Yo(Hn)}if(null!==p){var ci=U?p.residualClasses:p.residualStyles;null!=ci&&(Te=Lu(ci,M))}return Te}function kr(a){return void 0!==a}function eo(a,p){return 0!=(a.flags&(p?16:32))}function Mo(a){var p=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",m=ii(),M=Li(),P=a+20,U=M.firstCreatePass?Xu(M,P,1,p,null):M.data[P],ae=m[P]=fp(m[11],p);hd(M,m,ae,U),ji(U,!1)}function qc(a){return Hc("",a,""),qc}function Hc(a,p,m){var M=ii(),P=sc(M,a,p,m);return P!==Za&&Ol(M,ao(),P),Hc}function Vg(a,p,m,M,P){var U=ii(),ae=lc(U,a,p,m,M,P);return ae!==Za&&Ol(U,ao(),ae),Vg}function ch(a,p,m,M,P,U,ae){var Te=ii(),Ue=function El(a,p,m,M,P,U,ae,Te){var Ct=Od(a,io(),m,P,ae);return Qn(3),Ct?p+ue(m)+M+ue(P)+U+ue(ae)+Te:Za}(Te,a,p,m,M,P,U,ae);return Ue!==Za&&Ol(Te,ao(),Ue),ch}function Vc(a,p,m,M,P,U,ae,Te,Ue){var Ct=ii(),Yt=Zl(Ct,a,p,m,M,P,U,ae,Te,Ue);return Yt!==Za&&Ol(Ct,ao(),Yt),Vc}function Bv(a,p,m){F(No,fu,sc(ii(),a,p,m),!0)}function hv(a,p,m){var M=ii();return Oo(M,kn(),p)&&ds(Li(),Tr(),M,a,p,M[11],m,!0),hv}function _v(a,p,m){var M=ii();if(Oo(M,kn(),p)){var U=Li(),ae=Tr();ds(U,ae,M,a,p,wm(ja(U.data),ae,M),m,!0)}return _v}var lf=void 0,Iy=["en",[["a","p"],["AM","PM"],lf],[["AM","PM"],lf,lf],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],lf,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],lf,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",lf,"{1} 'at' {0}",lf],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function ky(a){var m=Math.floor(Math.abs(a)),M=a.toString().replace(/^[^.]*\.?/,"").length;return 1===m&&0===M?1:5}],dh={};function gv(a){var p=function Ly(a){return a.toLowerCase().replace(/_/g,"-")}(a),m=Kv(p);if(m)return m;var M=p.split("-")[0];if(m=Kv(M))return m;if("en"===M)return Iy;throw new Error('Missing locale data for the locale "'.concat(a,'".'))}function Gv(a){return gv(a)[Sa.PluralCase]}function Kv(a){return a in dh||(dh[a]=vt.ng&&vt.ng.common&&vt.ng.common.locales&&vt.ng.common.locales[a]),dh[a]}var Sa=function(){return(Sa=Sa||{})[Sa.LocaleId=0]="LocaleId",Sa[Sa.DayPeriodsFormat=1]="DayPeriodsFormat",Sa[Sa.DayPeriodsStandalone=2]="DayPeriodsStandalone",Sa[Sa.DaysFormat=3]="DaysFormat",Sa[Sa.DaysStandalone=4]="DaysStandalone",Sa[Sa.MonthsFormat=5]="MonthsFormat",Sa[Sa.MonthsStandalone=6]="MonthsStandalone",Sa[Sa.Eras=7]="Eras",Sa[Sa.FirstDayOfWeek=8]="FirstDayOfWeek",Sa[Sa.WeekendRange=9]="WeekendRange",Sa[Sa.DateFormat=10]="DateFormat",Sa[Sa.TimeFormat=11]="TimeFormat",Sa[Sa.DateTimeFormat=12]="DateTimeFormat",Sa[Sa.NumberSymbols=13]="NumberSymbols",Sa[Sa.NumberFormats=14]="NumberFormats",Sa[Sa.CurrencyCode=15]="CurrencyCode",Sa[Sa.CurrencySymbol=16]="CurrencySymbol",Sa[Sa.CurrencyName=17]="CurrencyName",Sa[Sa.Currencies=18]="Currencies",Sa[Sa.Directionality=19]="Directionality",Sa[Sa.PluralCase=20]="PluralCase",Sa[Sa.ExtraData=21]="ExtraData",Sa}(),jg="en-US";function OC(a,p,m){var M=Li();if(M.firstCreatePass){var P=oa(a);Wy(m,M.data,M.blueprint,P,!0),Wy(p,M.data,M.blueprint,P,!1)}}function Wy(a,p,m,M,P){if(a=G(a),Array.isArray(a))for(var U=0;U>20;if($s(a)||!a.multi){var Hn=new xs(Ct,P,Ld),ci=Gy(Ue,p,P?on:on+Sn,pn);-1===ci?(Nr(Yr(Yt,Te),ae,Ue),zy(ae,a,p.length),p.push(Ue),Yt.directiveStart++,Yt.directiveEnd++,P&&(Yt.providerIndexes+=1048576),m.push(Hn),Te.push(Hn)):(m[ci]=Hn,Te[ci]=Hn)}else{var Ti=Gy(Ue,p,on+Sn,pn),Ri=Gy(Ue,p,on,on+Sn),na=Ri>=0&&m[Ri];if(P&&!na||!P&&!(Ti>=0&&m[Ti])){Nr(Yr(Yt,Te),ae,Ue);var ur=function kC(a,p,m,M,P){var U=new xs(a,m,Ld);return U.multi=[],U.index=p,U.componentProviders=0,Ib(U,P,M&&!m),U}(P?ZC:EC,m.length,P,M,Ct);!P&&na&&(m[Ri].providerFactory=ur),zy(ae,a,p.length,0),p.push(Ue),Yt.directiveStart++,Yt.directiveEnd++,P&&(Yt.providerIndexes+=1048576),m.push(ur),Te.push(ur)}else zy(ae,a,Ti>-1?Ti:Ri,Ib(m[P?Ri:Ti],Ct,!P&&M));!P&&M&&na&&m[Ri].componentProviders++}}}function zy(a,p,m,M){var P=$s(p),U=function Rc(a){return!!a.useClass}(p);if(P||U){var Ue=(U?G(p.useClass):p).prototype.ngOnDestroy;if(Ue){var Ct=a.destroyHooks||(a.destroyHooks=[]);if(!P&&p.multi){var Yt=Ct.indexOf(m);-1===Yt?Ct.push(m,[M,Ue]):Ct[Yt+1].push(M,Ue)}else Ct.push(m,Ue)}}}function Ib(a,p,m){return m&&a.componentProviders++,a.multi.push(p)-1}function Gy(a,p,m,M){for(var P=m;P1&&void 0!==arguments[1]?arguments[1]:[];return function(m){m.providersResolver=function(M,P){return OC(M,P?P(a):a,p)}}}var IC=(0,k.Z)(function a(){(0,D.Z)(this,a)}),Fb=(0,k.Z)(function a(){(0,D.Z)(this,a)}),FC=function(){function a(){(0,D.Z)(this,a)}return(0,k.Z)(a,[{key:"resolveComponentFactory",value:function(m){throw function LC(a){var p=Error("No component factory found for ".concat(Q(a),". Did you add it to @NgModule.entryComponents?"));return p.ngComponent=a,p}(m)}}]),a}(),yv=function(){var a=(0,k.Z)(function p(){(0,D.Z)(this,p)});return a.NULL=new FC,a}();function NC(){return Wg(br(),ii())}function Wg(a,p){return new bv(bt(a,p))}var bv=function(){var a=(0,k.Z)(function p(m){(0,D.Z)(this,p),this.nativeElement=m});return a.__NG_ELEMENT_ID__=NC,a}();function RC(a){return a instanceof bv?a.nativeElement:a}var Rb=(0,k.Z)(function a(){(0,D.Z)(this,a)}),UC=function(){var a=(0,k.Z)(function p(){(0,D.Z)(this,p)});return a.__NG_ELEMENT_ID__=function(){return function YC(){var a=ii(),m=hi(br().index,a);return function BC(a){return a[11]}(Yi(m)?m:a)}()},a}(),qC=function(){var a=(0,k.Z)(function p(){(0,D.Z)(this,p)});return a.\u0275prov=$e({token:a,providedIn:"root",factory:function(){return null}}),a}(),Ub=(0,k.Z)(function a(p){(0,D.Z)(this,a),this.full=p,this.major=p.split(".")[0],this.minor=p.split(".")[1],this.patch=p.split(".").slice(2).join(".")}),HC=new Ub("13.2.1"),$y={};function sy(a,p,m,M){for(var P=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==m;){var U=p[m.index];if(null!==U&&M.push(ie(U)),aa(U))for(var ae=10;ae-1&&(pd(m,P),Cl(M,P))}this._attachedToViewContainer=!1}Bf(this._lView[1],this._lView)}},{key:"onDestroy",value:function(m){Cm(this._lView[1],this._lView,null,m)}},{key:"markForCheck",value:function(){Td(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){Yp(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function Ad(a,p,m){gs(!0);try{Yp(a,p,m)}finally{gs(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(){if(this._appRef)throw new Me(902,"");this._attachedToViewContainer=!0}},{key:"detachFromAppRef",value:function(){this._appRef=null,function Zh(a,p){wc(a,p,p[11],2,null,null)}(this._lView[1],this._lView)}},{key:"attachToAppRef",value:function(m){if(this._attachedToViewContainer)throw new Me(902,"");this._appRef=m}}]),a}(),VC=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(M){var P;return(0,D.Z)(this,m),(P=p.call(this,M))._view=M,P}return(0,k.Z)(m,[{key:"detectChanges",value:function(){qp(this._view)}},{key:"checkNoChanges",value:function(){!function __(a){gs(!0);try{qp(a)}finally{gs(!1)}}(this._view)}},{key:"context",get:function(){return null}}]),m}(Cv),Bb=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(M){var P;return(0,D.Z)(this,m),(P=p.call(this)).ngModule=M,P}return(0,k.Z)(m,[{key:"resolveComponentFactory",value:function(P){var U=Ta(P);return new Xy(U,this.ngModule)}}]),m}(yv);function Yb(a){var p=[];for(var m in a)a.hasOwnProperty(m)&&p.push({propName:a[m],templateName:m});return p}var JC=new Dr("SCHEDULER_TOKEN",{providedIn:"root",factory:function(){return dr}}),Xy=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(M,P){var U;return(0,D.Z)(this,m),(U=p.call(this)).componentDef=M,U.ngModule=P,U.componentType=M.type,U.selector=function jh(a){return a.map(Vh).join(",")}(M.selectors),U.ngContentSelectors=M.ngContentSelectors?M.ngContentSelectors:[],U.isBoundToModule=!!P,U}return(0,k.Z)(m,[{key:"inputs",get:function(){return Yb(this.componentDef.inputs)}},{key:"outputs",get:function(){return Yb(this.componentDef.outputs)}},{key:"create",value:function(P,U,ae,Te){var ti,na,Ue=(Te=Te||this.ngModule)?function QC(a,p){return{get:function(M,P,U){var ae=a.get(M,$y,U);return ae!==$y||P===$y?ae:p.get(M,P,U)}}}(P,Te.injector):P,Ct=Ue.get(Rb,yt),Yt=Ue.get(qC,null),on=Ct.createRenderer(null,this.componentDef),pn=this.componentDef.selectors[0][0]||"div",Sn=ae?function Vr(a,p,m){if(ot(a))return a.selectRootElement(p,m===pt.ShadowDom);var P="string"==typeof p?a.querySelector(p):p;return P.textContent="",P}(on,ae,this.componentDef.encapsulation):mp(Ct.createRenderer(null,this.componentDef),pn,function jC(a){var p=a.toLowerCase();return"svg"===p?"svg":"math"===p?"math":null}(pn)),Hn=this.componentDef.onPush?576:528,ci=function Qm(a,p){return{components:[],scheduler:a||dr,clean:g_,playerHandler:p||null,flags:0}}(),Ti=pl(0,null,null,1,0,null,null,null,null,null),Ri=Ec(null,Ti,ci,Hn,null,null,Ct,on,Yt,Ue);Rl(Ri);try{var ur=function jm(a,p,m,M,P,U){var ae=m[1];m[20]=a;var Ue=Xu(ae,20,2,"#host",null),Ct=Ue.mergedAttrs=p.hostAttrs;null!==Ct&&(Pd(Ue,Ct,!0),null!==a&&(De(P,a,Ct),null!==Ue.classes&&Cp(P,a,Ue.classes),null!==Ue.styles&&zf(P,a,Ue.styles)));var Yt=M.createRenderer(a,p),on=Ec(m,ym(p),null,p.onPush?64:16,m[20],Ue,M,Yt,U||null,null);return ae.firstCreatePass&&(Nr(Yr(Ue,m),ae,p.type),Bp(ae,Ue),xd(Ue,m.length,1)),qo(m,on),m[20]=on}(Sn,this.componentDef,Ri,Ct,on);if(Sn)if(ae)De(on,Sn,["ng-version",HC.full]);else{var Sr=function Jh(a){for(var p=[],m=[],M=1,P=2;M0&&Cp(on,Sn,ms.join(" "))}if(na=Jt(Ti,20),void 0!==U)for(var Fl=na.projection=[],Eu=0;Eu1&&void 0!==arguments[1]?arguments[1]:es.THROW_IF_NOT_FOUND,ae=arguments.length>2&&void 0!==arguments[2]?arguments[2]:vn.Default;return P===es||P===zg||P===Dd?this:this._r3Injector.get(P,U,ae)}},{key:"destroy",value:function(){var P=this._r3Injector;!P.destroyed&&P.destroy(),this.destroyCbs.forEach(function(U){return U()}),this.destroyCbs=null}},{key:"onDestroy",value:function(P){this.destroyCbs.push(P)}}]),m}(zg),eb=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(M){var P;return(0,D.Z)(this,m),(P=p.call(this)).moduleType=M,null!==Tt(M)&&function KC(a){var p=new Set;!function m(M){var P=Tt(M,!0),U=P.id;null!==U&&(function Hb(a,p,m){if(p&&p!==m)throw new Error("Duplicate module registered for ".concat(a," - ").concat(Q(p)," vs ").concat(Q(p.name)))}(U,Gg.get(U),M),Gg.set(U,M));var Ct,Te=dl(P.imports),Ue=(0,T.Z)(Te);try{for(Ue.s();!(Ct=Ue.n()).done;){var Yt=Ct.value;p.has(Yt)||(p.add(Yt),m(Yt))}}catch(on){Ue.e(on)}finally{Ue.f()}}(a)}(M),P}return(0,k.Z)(m,[{key:"create",value:function(P){return new jb(this.moduleType,P)}}]),m}(qb);function Jb(a,p,m){var M=fa()+a,P=ii();return P[M]===Za?ml(P,M,m?p.call(m):p()):Bc(P,M)}function Qb(a,p,m,M){return $b(ii(),fa(),a,p,m,M)}function Wb(a,p,m,M,P){return Xb(ii(),fa(),a,p,m,M,P)}function zb(a,p,m,M,P,U){return e1(ii(),fa(),a,p,m,M,P,U)}function Gb(a,p,m,M,P,U,ae){return function t1(a,p,m,M,P,U,ae,Te,Ue){var Ct=p+m;return ns(a,Ct,P,U,ae,Te)?ml(a,Ct+4,Ue?M.call(Ue,P,U,ae,Te):M(P,U,ae,Te)):Mv(a,Ct+4)}(ii(),fa(),a,p,m,M,P,U,ae)}function Kb(a,p,m,M,P,U,ae,Te,Ue){var Ct=fa()+a,Yt=ii(),on=ns(Yt,Ct,m,M,P,U);return Ds(Yt,Ct+4,ae,Te)||on?ml(Yt,Ct+6,Ue?p.call(Ue,m,M,P,U,ae,Te):p(m,M,P,U,ae,Te)):Bc(Yt,Ct+6)}function Mv(a,p){var m=a[p];return m===Za?void 0:m}function $b(a,p,m,M,P,U){var ae=p+m;return Oo(a,ae,P)?ml(a,ae+1,U?M.call(U,P):M(P)):Mv(a,ae+1)}function Xb(a,p,m,M,P,U,ae){var Te=p+m;return Ds(a,Te,P,U)?ml(a,Te+2,ae?M.call(ae,P,U):M(P,U)):Mv(a,Te+2)}function e1(a,p,m,M,P,U,ae,Te){var Ue=p+m;return Od(a,Ue,P,U,ae)?ml(a,Ue+3,Te?M.call(Te,P,U,ae):M(P,U,ae)):Mv(a,Ue+3)}function a1(a,p){var M,m=Li(),P=a+20;m.firstCreatePass?(M=function a0(a,p){if(p)for(var m=p.length-1;m>=0;m--){var M=p[m];if(a===M.name)return M}}(p,m.pipeRegistry),m.data[P]=M,M.onDestroy&&(m.destroyHooks||(m.destroyHooks=[])).push(P,M.onDestroy)):M=m.data[P];var U=M.factory||(M.factory=Cr(M.type)),ae=Jn(Ld);try{var Te=di(!1),Ue=U();return di(Te),function af(a,p,m,M){m>=a.data.length&&(a.data[m]=null,a.blueprint[m]=null),p[m]=M}(m,ii(),P,Ue),Ue}finally{Jn(ae)}}function r1(a,p,m){var M=a+20,P=ii(),U=zn(P,M);return xv(P,M)?$b(P,fa(),p,U.transform,m,U):U.transform(m)}function o1(a,p,m,M){var P=a+20,U=ii(),ae=zn(U,P);return xv(U,P)?Xb(U,fa(),p,ae.transform,m,M,ae):ae.transform(m,M)}function s1(a,p,m,M,P){var U=a+20,ae=ii(),Te=zn(ae,U);return xv(ae,U)?e1(ae,fa(),p,Te.transform,m,M,P,Te):Te.transform(m,M,P)}function xv(a,p){return a[1].data[p].pure}var s0=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(){var M,P=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,D.Z)(this,m),(M=p.call(this)).__isAsync=P,M}return(0,k.Z)(m,[{key:"emit",value:function(P){(0,S.Z)((0,t.Z)(m.prototype),"next",this).call(this,P)}},{key:"subscribe",value:function(P,U,ae){var Te,Ue,Ct,Yt=P,on=U||function(){return null},pn=ae;if(P&&"object"==typeof P){var Sn=P;Yt=null===(Te=Sn.next)||void 0===Te?void 0:Te.bind(Sn),on=null===(Ue=Sn.error)||void 0===Ue?void 0:Ue.bind(Sn),pn=null===(Ct=Sn.complete)||void 0===Ct?void 0:Ct.bind(Sn)}this.__isAsync&&(on=tb(on),Yt&&(Yt=tb(Yt)),pn&&(pn=tb(pn)));var Hn=(0,S.Z)((0,t.Z)(m.prototype),"subscribe",this).call(this,{next:Yt,error:on,complete:pn});return P instanceof le.w0&&P.add(Hn),Hn}}]),m}(re.x);function tb(a){return function(p){setTimeout(a,void 0,p)}}var Nd=s0;function l0(){return this._results[oc()]()}var l1=function(){function a(){var p=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(0,D.Z)(this,a),this._emitDistinctChangesOnly=p,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;var m=oc(),M=a.prototype;M[m]||(M[m]=l0)}return(0,k.Z)(a,[{key:"changes",get:function(){return this._changes||(this._changes=new Nd)}},{key:"get",value:function(m){return this._results[m]}},{key:"map",value:function(m){return this._results.map(m)}},{key:"filter",value:function(m){return this._results.filter(m)}},{key:"find",value:function(m){return this._results.find(m)}},{key:"reduce",value:function(m,M){return this._results.reduce(m,M)}},{key:"forEach",value:function(m){this._results.forEach(m)}},{key:"some",value:function(m){return this._results.some(m)}},{key:"toArray",value:function(){return this._results.slice()}},{key:"toString",value:function(){return this._results.toString()}},{key:"reset",value:function(m,M){var P=this;P.dirty=!1;var U=zo(m);(this._changesDetected=!function Hd(a,p,m){if(a.length!==p.length)return!1;for(var M=0;M0;)this.remove(this.length-1)}},{key:"get",value:function(P){var U=c1(this._lContainer);return null!==U&&U[P]||null}},{key:"length",get:function(){return this._lContainer.length-10}},{key:"createEmbeddedView",value:function(P,U,ae){var Te=P.createEmbeddedView(U||{});return this.insert(Te,ae),Te}},{key:"createComponent",value:function(P,U,ae,Te,Ue){var Yt,Ct=P&&!Vl(P);if(Ct)Yt=U;else{var on=U||{};Yt=on.index,ae=on.injector,Te=on.projectableNodes,Ue=on.ngModuleRef}var pn=Ct?P:new Xy(Ta(P)),Sn=ae||this.parentInjector;if(!Ue&&null==pn.ngModule&&Sn){var Hn=Sn.get(zg,null);Hn&&(Ue=Hn)}var ci=pn.create(Sn,Te,void 0,Ue);return this.insert(ci.hostView,Yt),ci}},{key:"insert",value:function(P,U){var ae=P._lView,Te=ae[1];if(function Wa(a){return aa(a[3])}(ae)){var Ue=this.indexOf(P);if(-1!==Ue)this.detach(Ue);else{var Ct=ae[3],Yt=new u1(Ct,Ct[6],Ct[3]);Yt.detach(Yt.indexOf(P))}}var on=this._adjustIndex(U),pn=this._lContainer;!function Ih(a,p,m,M){var P=10+M,U=m.length;M>0&&(m[P-1][4]=p),M1&&void 0!==arguments[1]?arguments[1]:0;return null==P?this.length+U:P}}]),m}(uy);function c1(a){return a[8]}function nb(a){return a[8]||(a[8]=[])}function d1(a,p){var m,M=p[a.index];if(aa(M))m=M;else{var P;if(8&a.type)P=ie(M);else{var U=p[11];P=U.createComment("");var ae=bt(a,p);xu(U,Bo(U,ae),P,function jf(a,p){return ot(a)?a.nextSibling(p):p.nextSibling}(U,ae),!1)}p[a.index]=m=Au(M,p,P,a),qo(p,m)}return new u1(m,a,p)}var _0=function(){function a(p){(0,D.Z)(this,a),this.queryList=p,this.matches=null}return(0,k.Z)(a,[{key:"clone",value:function(){return new a(this.queryList)}},{key:"setDirty",value:function(){this.queryList.setDirty()}}]),a}(),g0=function(){function a(){var p=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];(0,D.Z)(this,a),this.queries=p}return(0,k.Z)(a,[{key:"createEmbeddedView",value:function(m){var M=m.queries;if(null!==M){for(var P=null!==m.contentQueries?m.contentQueries[0]:M.length,U=[],ae=0;ae2&&void 0!==arguments[2]?arguments[2]:null;(0,D.Z)(this,a),this.predicate=p,this.flags=m,this.read=M}),v0=function(){function a(){var p=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];(0,D.Z)(this,a),this.queries=p}return(0,k.Z)(a,[{key:"elementStart",value:function(m,M){for(var P=0;P1&&void 0!==arguments[1]?arguments[1]:-1;(0,D.Z)(this,a),this.metadata=p,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=m}return(0,k.Z)(a,[{key:"elementStart",value:function(m,M){this.isApplyingToNode(M)&&this.matchTNode(m,M)}},{key:"elementEnd",value:function(m){this._declarationNodeIndex===m.index&&(this._appliesToNextNode=!1)}},{key:"template",value:function(m,M){this.elementStart(m,M)}},{key:"embeddedTView",value:function(m,M){return this.isApplyingToNode(m)?(this.crossesNgTemplate=!0,this.addMatch(-m.index,M),new a(this.metadata)):null}},{key:"isApplyingToNode",value:function(m){if(this._appliesToNextNode&&1!=(1&this.metadata.flags)){for(var M=this._declarationNodeIndex,P=m.parent;null!==P&&8&P.type&&P.index!==M;)P=P.parent;return M===(null!==P?P.index:-1)}return this._appliesToNextNode}},{key:"matchTNode",value:function(m,M){var P=this.metadata.predicate;if(Array.isArray(P))for(var U=0;U0)M.push(ae[Te/2]);else{for(var Ct=U[Te+1],Yt=p[-Ue],on=10;on0&&(Te=setTimeout(function(){ae._callbacks=ae._callbacks.filter(function(Ue){return Ue.timeoutId!==Te}),M(ae._didWork,ae.getPendingTasks())},P)),this._callbacks.push({doneCb:M,timeoutId:Te,updateCb:U})}},{key:"whenStable",value:function(M,P,U){if(U&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(M,P,U),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(M,P,U){return[]}}]),p}();return a.\u0275fac=function(m){return new(m||a)(wr(Rd))},a.\u0275prov=$e({token:a,factory:a.\u0275fac}),a}(),Q1=function(){var a=function(){function p(){(0,D.Z)(this,p),this._applications=new Map,hb.addToWindow(this)}return(0,k.Z)(p,[{key:"registerApplication",value:function(M,P){this._applications.set(M,P)}},{key:"unregisterApplication",value:function(M){this._applications.delete(M)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(M){return this._applications.get(M)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(M){var P=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return hb.findTestabilityInTree(this,M,P)}}]),p}();return a.\u0275fac=function(m){return new(m||a)},a.\u0275prov=$e({token:a,factory:a.\u0275fac}),a}();function nM(a){hb=a}var Qc,hb=new(function(){function a(){(0,D.Z)(this,a)}return(0,k.Z)(a,[{key:"addToWindow",value:function(m){}},{key:"findTestabilityInTree",value:function(m,M,P){return null}}]),a}());function iM(a,p,m){var M=new eb(m);return Promise.resolve(M)}var W1=new Dr("AllowMultipleToken"),rM=(0,k.Z)(function a(p,m){(0,D.Z)(this,a),this.name=p,this.token=m});function oM(a){if(Qc&&!Qc.destroyed&&!Qc.injector.get(W1,!1))throw new Me(400,"");Qc=a.get(K1);var m=a.get(U1,null);return m&&m.forEach(function(M){return M()}),Qc}function z1(a,p){var m=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],M="Platform: ".concat(p),P=new Dr(M);return function(){var U=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],ae=G1();if(!ae||ae.injector.get(W1,!1))if(a)a(m.concat(U).concat({provide:P,useValue:!0}));else{var Te=m.concat(U).concat({provide:P,useValue:!0},{provide:Vp,useValue:"platform"});oM(es.create({providers:Te,name:M}))}return sM()}}function sM(a){var p=G1();if(!p)throw new Me(401,"");return p}function G1(){return Qc&&!Qc.destroyed?Qc:null}var K1=function(){var a=function(){function p(m){(0,D.Z)(this,p),this._injector=m,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return(0,k.Z)(p,[{key:"bootstrapModuleFactory",value:function(M,P){var U=this,Ct=function lM(a,p){return"noop"===a?new eM:("zone.js"===a?void 0:a)||new Rd({enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:!!(null==p?void 0:p.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==p?void 0:p.ngZoneRunCoalescing)})}(P?P.ngZone:void 0,{ngZoneEventCoalescing:P&&P.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:P&&P.ngZoneRunCoalescing||!1}),Yt=[{provide:Rd,useValue:Ct}];return Ct.run(function(){var on=es.create({providers:Yt,parent:U.injector,name:M.moduleType.name}),pn=M.create(on),Sn=pn.injector.get(Pc,null);if(!Sn)throw new Me(402,"");return Ct.runOutsideAngular(function(){var ci=Ct.onError.subscribe({next:function(Ri){Sn.handleError(Ri)}});pn.onDestroy(function(){_b(U._modules,pn),ci.unsubscribe()})}),function uM(a,p,m){try{var M=m();return j_(M)?M.catch(function(P){throw p.runOutsideAngular(function(){return a.handleError(P)}),P}):M}catch(P){throw p.runOutsideAngular(function(){return a.handleError(P)}),P}}(Sn,Ct,function(){var ci=pn.injector.get($g);return ci.runInitializers(),ci.donePromise.then(function(){return function Uy(a){Ht(a,"Expected localeId to be defined"),"string"==typeof a&&a.toLowerCase().replace(/_/g,"-")}(pn.injector.get(fy,jg)||jg),U._moduleDoBootstrap(pn),pn})})})}},{key:"bootstrapModule",value:function(M){var P=this,U=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],ae=$1({},U);return iM(0,0,M).then(function(Te){return P.bootstrapModuleFactory(Te,ae)})}},{key:"_moduleDoBootstrap",value:function(M){var P=M.injector.get(Av);if(M._bootstrapComponents.length>0)M._bootstrapComponents.forEach(function(ae){return P.bootstrap(ae)});else{if(!M.instance.ngDoBootstrap)throw new Me(403,"");M.instance.ngDoBootstrap(P)}this._modules.push(M)}},{key:"onDestroy",value:function(M){this._destroyListeners.push(M)}},{key:"injector",get:function(){return this._injector}},{key:"destroy",value:function(){if(this._destroyed)throw new Me(404,"");this._modules.slice().forEach(function(P){return P.destroy()}),this._destroyListeners.forEach(function(P){return P()}),this._destroyed=!0}},{key:"destroyed",get:function(){return this._destroyed}}]),p}();return a.\u0275fac=function(m){return new(m||a)(wr(es))},a.\u0275prov=$e({token:a,factory:a.\u0275fac}),a}();function $1(a,p){return Array.isArray(p)?p.reduce($1,a):Object.assign(Object.assign({},a),p)}var Av=function(){var a=function(){function p(m,M,P,U,ae){var Te=this;(0,D.Z)(this,p),this._zone=m,this._injector=M,this._exceptionHandler=P,this._componentFactoryResolver=U,this._initStatus=ae,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:function(){Te._zone.run(function(){Te.tick()})}});var Ue=new W.y(function(Yt){Te._stable=Te._zone.isStable&&!Te._zone.hasPendingMacrotasks&&!Te._zone.hasPendingMicrotasks,Te._zone.runOutsideAngular(function(){Yt.next(Te._stable),Yt.complete()})}),Ct=new W.y(function(Yt){var on;Te._zone.runOutsideAngular(function(){on=Te._zone.onStable.subscribe(function(){Rd.assertNotInAngularZone(),pb(function(){!Te._stable&&!Te._zone.hasPendingMacrotasks&&!Te._zone.hasPendingMicrotasks&&(Te._stable=!0,Yt.next(!0))})})});var pn=Te._zone.onUnstable.subscribe(function(){Rd.assertInAngularZone(),Te._stable&&(Te._stable=!1,Te._zone.runOutsideAngular(function(){Yt.next(!1)}))});return function(){on.unsubscribe(),pn.unsubscribe()}});this.isStable=(0,$.T)(Ue,Ct.pipe((0,be.B)()))}return(0,k.Z)(p,[{key:"bootstrap",value:function(M,P){var Te,U=this;if(!this._initStatus.done)throw new Me(405,"");Te=M instanceof Fb?M:this._componentFactoryResolver.resolveComponentFactory(M),this.componentTypes.push(Te.componentType);var Ue=function aM(a){return a.isBoundToModule}(Te)?void 0:this._injector.get(zg),Yt=Te.create(es.NULL,[],P||Te.selector,Ue),on=Yt.location.nativeElement,pn=Yt.injector.get(J1,null),Sn=pn&&Yt.injector.get(Q1);return pn&&Sn&&Sn.registerApplication(on,pn),Yt.onDestroy(function(){U.detachView(Yt.hostView),_b(U.components,Yt),Sn&&Sn.unregisterApplication(on)}),this._loadComponent(Yt),Yt}},{key:"tick",value:function(){var M=this;if(this._runningTick)throw new Me(101,"");try{this._runningTick=!0;var ae,U=(0,T.Z)(this._views);try{for(U.s();!(ae=U.n()).done;)ae.value.detectChanges()}catch(on){U.e(on)}finally{U.f()}}catch(on){this._zone.runOutsideAngular(function(){return M._exceptionHandler.handleError(on)})}finally{this._runningTick=!1}}},{key:"attachView",value:function(M){var P=M;this._views.push(P),P.attachToAppRef(this)}},{key:"detachView",value:function(M){var P=M;_b(this._views,P),P.detachFromAppRef()}},{key:"_loadComponent",value:function(M){this.attachView(M.hostView),this.tick(),this.components.push(M),this._injector.get(Y1,[]).concat(this._bootstrapListeners).forEach(function(U){return U(M)})}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach(function(M){return M.destroy()}),this._onMicrotaskEmptySubscription.unsubscribe()}},{key:"viewCount",get:function(){return this._views.length}}]),p}();return a.\u0275fac=function(m){return new(m||a)(wr(Rd),wr(es),wr(Pc),wr(yv),wr($g))},a.\u0275prov=$e({token:a,factory:a.\u0275fac}),a}();function _b(a,p){var m=a.indexOf(p);m>-1&&a.splice(m,1)}function dM(){false}var iC=function(){var a=(0,k.Z)(function p(){(0,D.Z)(this,p)});return a.__NG_ELEMENT_ID__=pM,a}();function pM(a){return function fM(a,p,m){if(Ui(a)&&!m){var M=hi(a.index,p);return new Cv(M,M)}return 47&a.type?new Cv(p[16],p):null}(br(),ii(),16==(16&a))}var mM=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(){return(0,D.Z)(this,m),p.apply(this,arguments)}return(0,k.Z)(m)}(iC),hM=function(a){(0,N.Z)(m,a);var p=(0,I.Z)(m);function m(){return(0,D.Z)(this,m),p.apply(this,arguments)}return(0,k.Z)(m)}(mM),oC=function(){function a(){(0,D.Z)(this,a)}return(0,k.Z)(a,[{key:"supports",value:function(m){return Uc(m)}},{key:"create",value:function(m){return new yM(m)}}]),a}(),vM=function(p,m){return m},yM=function(){function a(p){(0,D.Z)(this,a),this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=p||vM}return(0,k.Z)(a,[{key:"forEachItem",value:function(m){var M;for(M=this._itHead;null!==M;M=M._next)m(M)}},{key:"forEachOperation",value:function(m){for(var M=this._itHead,P=this._removalsHead,U=0,ae=null;M||P;){var Te=!P||M&&M.currentIndexot?{max:{max:ot,actual:yt.value}}:null}}(St)}},{key:"required",value:function(St){return J(St)}},{key:"requiredTrue",value:function(St){return te(St)}},{key:"email",value:function(St){return K(St)}},{key:"minLength",value:function(St){return function G(ot){return function(yt){return le(yt.value)||!re(yt.value)?null:yt.value.lengthot?{maxlength:{requiredLength:ot,actualLength:yt.value.length}}:null}}(St)}},{key:"pattern",value:function(St){return function _e(ot){return ot?("string"==typeof ot?(St="","^"!==ot.charAt(0)&&(St+="^"),St+=ot,"$"!==ot.charAt(ot.length-1)&&(St+="$"),yt=new RegExp(St)):(St=ot.toString(),yt=ot),function(ie){if(le(ie.value))return null;var Ye=ie.value;return yt.test(Ye)?null:{pattern:{requiredPattern:St,actualValue:Ye}}}):Me;var yt,St}(St)}},{key:"nullValidator",value:function(St){return null}},{key:"compose",value:function(St){return Pt(St)}},{key:"composeAsync",value:function(St){return ze(St)}}]),ot}();function J(ot){return le(ot.value)?{required:!0}:null}function te(ot){return!0===ot.value?null:{required:!0}}function K(ot){return le(ot.value)||be.test(ot.value)?null:{email:!0}}function Me(ot){return null}function ve(ot){return null!=ot}function ue(ot){var yt=(0,s.QGY)(ot)?(0,b.D)(ot):ot;return(0,s.CqO)(yt),yt}function lt(ot){var yt={};return ot.forEach(function(St){yt=null!=St?Object.assign(Object.assign({},yt),St):yt}),0===Object.keys(yt).length?null:yt}function Xe(ot,yt){return yt.map(function(St){return St(ot)})}function wt(ot){return ot.map(function(yt){return function mt(ot){return!ot.validate}(yt)?yt:function(St){return yt.validate(St)}})}function Pt(ot){if(!ot)return null;var yt=ot.filter(ve);return 0==yt.length?null:function(St){return lt(Xe(St,yt))}}function Pe(ot){return null!=ot?Pt(wt(ot)):null}function ze(ot){if(!ot)return null;var yt=ot.filter(ve);return 0==yt.length?null:function(St){var ie=Xe(St,yt).map(ue);return(0,T.D)(ie).pipe((0,y.U)(lt))}}function ft(ot){return null!=ot?ze(wt(ot)):null}function ct(ot,yt){return null===ot?[yt]:Array.isArray(ot)?[].concat((0,e.Z)(ot),[yt]):[ot,yt]}function Ee(ot){return ot._rawValidators}function st(ot){return ot._rawAsyncValidators}function nt(ot){return ot?Array.isArray(ot)?ot:[ot]:[]}function at(ot,yt){return Array.isArray(ot)?ot.includes(yt):ot===yt}function We(ot,yt){var St=nt(yt);return nt(ot).forEach(function(Ye){at(St,Ye)||St.push(Ye)}),St}function xe(ot,yt){return nt(yt).filter(function(St){return!at(ot,St)})}var ut=function(){function ot(){(0,o.Z)(this,ot),this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}return(0,_.Z)(ot,[{key:"value",get:function(){return this.control?this.control.value:null}},{key:"valid",get:function(){return this.control?this.control.valid:null}},{key:"invalid",get:function(){return this.control?this.control.invalid:null}},{key:"pending",get:function(){return this.control?this.control.pending:null}},{key:"disabled",get:function(){return this.control?this.control.disabled:null}},{key:"enabled",get:function(){return this.control?this.control.enabled:null}},{key:"errors",get:function(){return this.control?this.control.errors:null}},{key:"pristine",get:function(){return this.control?this.control.pristine:null}},{key:"dirty",get:function(){return this.control?this.control.dirty:null}},{key:"touched",get:function(){return this.control?this.control.touched:null}},{key:"status",get:function(){return this.control?this.control.status:null}},{key:"untouched",get:function(){return this.control?this.control.untouched:null}},{key:"statusChanges",get:function(){return this.control?this.control.statusChanges:null}},{key:"valueChanges",get:function(){return this.control?this.control.valueChanges:null}},{key:"path",get:function(){return null}},{key:"_setValidators",value:function(St){this._rawValidators=St||[],this._composedValidatorFn=Pe(this._rawValidators)}},{key:"_setAsyncValidators",value:function(St){this._rawAsyncValidators=St||[],this._composedAsyncValidatorFn=ft(this._rawAsyncValidators)}},{key:"validator",get:function(){return this._composedValidatorFn||null}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn||null}},{key:"_registerOnDestroy",value:function(St){this._onDestroyCallbacks.push(St)}},{key:"_invokeOnDestroyCallbacks",value:function(){this._onDestroyCallbacks.forEach(function(St){return St()}),this._onDestroyCallbacks=[]}},{key:"reset",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.control&&this.control.reset(St)}},{key:"hasError",value:function(St,ie){return!!this.control&&this.control.hasError(St,ie)}},{key:"getError",value:function(St,ie){return this.control?this.control.getError(St,ie):null}}]),ot}(),Fe=function(ot){(0,c.Z)(St,ot);var yt=(0,u.Z)(St);function St(){var ie;return(0,o.Z)(this,St),(ie=yt.apply(this,arguments))._parent=null,ie.name=null,ie.valueAccessor=null,ie}return(0,_.Z)(St)}(ut),et=function(ot){(0,c.Z)(St,ot);var yt=(0,u.Z)(St);function St(){return(0,o.Z)(this,St),yt.apply(this,arguments)}return(0,_.Z)(St,[{key:"formDirective",get:function(){return null}},{key:"path",get:function(){return null}}]),St}(ut),Ht=function(){function ot(yt){(0,o.Z)(this,ot),this._cd=yt}return(0,_.Z)(ot,[{key:"is",value:function(St){var ie,Ye,fe;return"submitted"===St?!!(null===(ie=this._cd)||void 0===ie?void 0:ie.submitted):!!(null===(fe=null===(Ye=this._cd)||void 0===Ye?void 0:Ye.control)||void 0===fe?void 0:fe[St])}}]),ot}(),kt=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye){return(0,o.Z)(this,ie),St.call(this,Ye)}return(0,_.Z)(ie)}(Ht);return ot.\u0275fac=function(St){return new(St||ot)(s.Y36(Fe,2))},ot.\u0275dir=s.lG2({type:ot,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(St,ie){2&St&&s.ekj("ng-untouched",ie.is("untouched"))("ng-touched",ie.is("touched"))("ng-pristine",ie.is("pristine"))("ng-dirty",ie.is("dirty"))("ng-valid",ie.is("valid"))("ng-invalid",ie.is("invalid"))("ng-pending",ie.is("pending"))},features:[s.qOj]}),ot}(),It=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye){return(0,o.Z)(this,ie),St.call(this,Ye)}return(0,_.Z)(ie)}(Ht);return ot.\u0275fac=function(St){return new(St||ot)(s.Y36(et,10))},ot.\u0275dir=s.lG2({type:ot,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(St,ie){2&St&&s.ekj("ng-untouched",ie.is("untouched"))("ng-touched",ie.is("touched"))("ng-pristine",ie.is("pristine"))("ng-dirty",ie.is("dirty"))("ng-valid",ie.is("valid"))("ng-invalid",ie.is("invalid"))("ng-pending",ie.is("pending"))("ng-submitted",ie.is("submitted"))},features:[s.qOj]}),ot}();function oi(ot,yt){return[].concat((0,e.Z)(yt.path),[ot])}function ri(ot,yt){qe(ot,yt),yt.valueAccessor.writeValue(ot.value),function Ne(ot,yt){yt.valueAccessor.registerOnChange(function(St){ot._pendingValue=St,ot._pendingChange=!0,ot._pendingDirty=!0,"change"===ot.updateOn&&tt(ot,yt)})}(ot,yt),function Ke(ot,yt){var St=function(Ye,fe){yt.valueAccessor.writeValue(Ye),fe&&yt.viewToModelUpdate(Ye)};ot.registerOnChange(St),yt._registerOnDestroy(function(){ot._unregisterOnChange(St)})}(ot,yt),function Re(ot,yt){yt.valueAccessor.registerOnTouched(function(){ot._pendingTouched=!0,"blur"===ot.updateOn&&ot._pendingChange&&tt(ot,yt),"submit"!==ot.updateOn&&ot.markAsTouched()})}(ot,yt),function zt(ot,yt){if(yt.valueAccessor.setDisabledState){var St=function(Ye){yt.valueAccessor.setDisabledState(Ye)};ot.registerOnDisabledChange(St),yt._registerOnDestroy(function(){ot._unregisterOnDisabledChange(St)})}}(ot,yt)}function un(ot,yt){var ie=function(){};yt.valueAccessor&&(yt.valueAccessor.registerOnChange(ie),yt.valueAccessor.registerOnTouched(ie)),pt(ot,yt),ot&&(yt._invokeOnDestroyCallbacks(),ot._registerOnCollectionChange(function(){}))}function mn(ot,yt){ot.forEach(function(St){St.registerOnValidatorChange&&St.registerOnValidatorChange(yt)})}function qe(ot,yt){var St=Ee(ot);null!==yt.validator?ot.setValidators(ct(St,yt.validator)):"function"==typeof St&&ot.setValidators([St]);var ie=st(ot);null!==yt.asyncValidator?ot.setAsyncValidators(ct(ie,yt.asyncValidator)):"function"==typeof ie&&ot.setAsyncValidators([ie]);var Ye=function(){return ot.updateValueAndValidity()};mn(yt._rawValidators,Ye),mn(yt._rawAsyncValidators,Ye)}function pt(ot,yt){var St=!1;if(null!==ot){if(null!==yt.validator){var ie=Ee(ot);if(Array.isArray(ie)&&ie.length>0){var Ye=ie.filter(function(xt){return xt!==yt.validator});Ye.length!==ie.length&&(St=!0,ot.setValidators(Ye))}}if(null!==yt.asyncValidator){var fe=st(ot);if(Array.isArray(fe)&&fe.length>0){var oe=fe.filter(function(xt){return xt!==yt.asyncValidator});oe.length!==fe.length&&(St=!0,ot.setAsyncValidators(oe))}}}var bt=function(){};return mn(yt._rawValidators,bt),mn(yt._rawAsyncValidators,bt),St}function tt(ot,yt){ot._pendingDirty&&ot.markAsDirty(),ot.setValue(ot._pendingValue,{emitModelToViewChange:!1}),yt.viewToModelUpdate(ot._pendingValue),ot._pendingChange=!1}function vt(ot,yt){qe(ot,yt)}function $t(ot,yt){if(!ot.hasOwnProperty("model"))return!1;var St=ot.model;return!!St.isFirstChange()||!Object.is(yt,St.currentValue)}function ln(ot,yt){ot._syncPendingControls(),yt.forEach(function(St){var ie=St.control;"submit"===ie.updateOn&&ie._pendingChange&&(St.viewToModelUpdate(ie._pendingValue),ie._pendingChange=!1)})}function _n(ot,yt){if(!yt)return null;Array.isArray(yt);var St=void 0,ie=void 0,Ye=void 0;return yt.forEach(function(fe){fe.constructor===j?St=fe:function fn(ot){return Object.getPrototypeOf(ot.constructor)===q}(fe)?ie=fe:Ye=fe}),Ye||ie||St||null}function xn(ot,yt){var St=ot.indexOf(yt);St>-1&&ot.splice(St,1)}var mi="VALID",wi="INVALID",Bi="PENDING",Xi="DISABLED";function Ja(ot){return(wa(ot)?ot.validators:ot)||null}function _a(ot){return Array.isArray(ot)?Pe(ot):ot||null}function nr(ot,yt){return(wa(yt)?yt.asyncValidators:ot)||null}function _r(ot){return Array.isArray(ot)?ft(ot):ot||null}function wa(ot){return null!=ot&&!Array.isArray(ot)&&"object"==typeof ot}var or=function(yt){return yt instanceof Gt},Ta=function(yt){return yt instanceof An},Cn=function(yt){return yt instanceof Wn};function Pn(ot){return or(ot)?ot.value:ot.getRawValue()}function Tt(ot,yt){var St=Ta(ot),ie=ot.controls;if(!(St?Object.keys(ie):ie).length)throw new s.vHH(1e3,"");if(!ie[yt])throw new s.vHH(1001,"")}function Le(ot,yt){Ta(ot),ot._forEachChild(function(ie,Ye){if(void 0===yt[Ye])throw new s.vHH(1002,"")})}var qt=function(){function ot(yt,St){(0,o.Z)(this,ot),this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=function(){},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=yt,this._rawAsyncValidators=St,this._composedValidatorFn=_a(this._rawValidators),this._composedAsyncValidatorFn=_r(this._rawAsyncValidators)}return(0,_.Z)(ot,[{key:"validator",get:function(){return this._composedValidatorFn},set:function(St){this._rawValidators=this._composedValidatorFn=St}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn},set:function(St){this._rawAsyncValidators=this._composedAsyncValidatorFn=St}},{key:"parent",get:function(){return this._parent}},{key:"valid",get:function(){return this.status===mi}},{key:"invalid",get:function(){return this.status===wi}},{key:"pending",get:function(){return this.status==Bi}},{key:"disabled",get:function(){return this.status===Xi}},{key:"enabled",get:function(){return this.status!==Xi}},{key:"dirty",get:function(){return!this.pristine}},{key:"untouched",get:function(){return!this.touched}},{key:"updateOn",get:function(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}},{key:"setValidators",value:function(St){this._rawValidators=St,this._composedValidatorFn=_a(St)}},{key:"setAsyncValidators",value:function(St){this._rawAsyncValidators=St,this._composedAsyncValidatorFn=_r(St)}},{key:"addValidators",value:function(St){this.setValidators(We(St,this._rawValidators))}},{key:"addAsyncValidators",value:function(St){this.setAsyncValidators(We(St,this._rawAsyncValidators))}},{key:"removeValidators",value:function(St){this.setValidators(xe(St,this._rawValidators))}},{key:"removeAsyncValidators",value:function(St){this.setAsyncValidators(xe(St,this._rawAsyncValidators))}},{key:"hasValidator",value:function(St){return at(this._rawValidators,St)}},{key:"hasAsyncValidator",value:function(St){return at(this._rawAsyncValidators,St)}},{key:"clearValidators",value:function(){this.validator=null}},{key:"clearAsyncValidators",value:function(){this.asyncValidator=null}},{key:"markAsTouched",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!0,this._parent&&!St.onlySelf&&this._parent.markAsTouched(St)}},{key:"markAllAsTouched",value:function(){this.markAsTouched({onlySelf:!0}),this._forEachChild(function(St){return St.markAllAsTouched()})}},{key:"markAsUntouched",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!1,this._pendingTouched=!1,this._forEachChild(function(ie){ie.markAsUntouched({onlySelf:!0})}),this._parent&&!St.onlySelf&&this._parent._updateTouched(St)}},{key:"markAsDirty",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!1,this._parent&&!St.onlySelf&&this._parent.markAsDirty(St)}},{key:"markAsPristine",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!0,this._pendingDirty=!1,this._forEachChild(function(ie){ie.markAsPristine({onlySelf:!0})}),this._parent&&!St.onlySelf&&this._parent._updatePristine(St)}},{key:"markAsPending",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.status=Bi,!1!==St.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!St.onlySelf&&this._parent.markAsPending(St)}},{key:"disable",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},ie=this._parentMarkedDirty(St.onlySelf);this.status=Xi,this.errors=null,this._forEachChild(function(Ye){Ye.disable(Object.assign(Object.assign({},St),{onlySelf:!0}))}),this._updateValue(),!1!==St.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},St),{skipPristineCheck:ie})),this._onDisabledChange.forEach(function(Ye){return Ye(!0)})}},{key:"enable",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},ie=this._parentMarkedDirty(St.onlySelf);this.status=mi,this._forEachChild(function(Ye){Ye.enable(Object.assign(Object.assign({},St),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:St.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},St),{skipPristineCheck:ie})),this._onDisabledChange.forEach(function(Ye){return Ye(!1)})}},{key:"_updateAncestors",value:function(St){this._parent&&!St.onlySelf&&(this._parent.updateValueAndValidity(St),St.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}},{key:"setParent",value:function(St){this._parent=St}},{key:"updateValueAndValidity",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===mi||this.status===Bi)&&this._runAsyncValidator(St.emitEvent)),!1!==St.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!St.onlySelf&&this._parent.updateValueAndValidity(St)}},{key:"_updateTreeValidity",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{emitEvent:!0};this._forEachChild(function(ie){return ie._updateTreeValidity(St)}),this.updateValueAndValidity({onlySelf:!0,emitEvent:St.emitEvent})}},{key:"_setInitialStatus",value:function(){this.status=this._allControlsDisabled()?Xi:mi}},{key:"_runValidator",value:function(){return this.validator?this.validator(this):null}},{key:"_runAsyncValidator",value:function(St){var ie=this;if(this.asyncValidator){this.status=Bi,this._hasOwnPendingAsyncValidator=!0;var Ye=ue(this.asyncValidator(this));this._asyncValidationSubscription=Ye.subscribe(function(fe){ie._hasOwnPendingAsyncValidator=!1,ie.setErrors(fe,{emitEvent:St})})}}},{key:"_cancelExistingSubscription",value:function(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}},{key:"setErrors",value:function(St){var ie=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.errors=St,this._updateControlsErrors(!1!==ie.emitEvent)}},{key:"get",value:function(St){return function ka(ot,yt,St){if(null==yt||(Array.isArray(yt)||(yt=yt.split(St)),Array.isArray(yt)&&0===yt.length))return null;var ie=ot;return yt.forEach(function(Ye){ie=Ta(ie)?ie.controls.hasOwnProperty(Ye)?ie.controls[Ye]:null:Cn(ie)&&ie.at(Ye)||null}),ie}(this,St,".")}},{key:"getError",value:function(St,ie){var Ye=ie?this.get(ie):this;return Ye&&Ye.errors?Ye.errors[St]:null}},{key:"hasError",value:function(St,ie){return!!this.getError(St,ie)}},{key:"root",get:function(){for(var St=this;St._parent;)St=St._parent;return St}},{key:"_updateControlsErrors",value:function(St){this.status=this._calculateStatus(),St&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(St)}},{key:"_initObservables",value:function(){this.valueChanges=new s.vpe,this.statusChanges=new s.vpe}},{key:"_calculateStatus",value:function(){return this._allControlsDisabled()?Xi:this.errors?wi:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Bi)?Bi:this._anyControlsHaveStatus(wi)?wi:mi}},{key:"_anyControlsHaveStatus",value:function(St){return this._anyControls(function(ie){return ie.status===St})}},{key:"_anyControlsDirty",value:function(){return this._anyControls(function(St){return St.dirty})}},{key:"_anyControlsTouched",value:function(){return this._anyControls(function(St){return St.touched})}},{key:"_updatePristine",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!this._anyControlsDirty(),this._parent&&!St.onlySelf&&this._parent._updatePristine(St)}},{key:"_updateTouched",value:function(){var St=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=this._anyControlsTouched(),this._parent&&!St.onlySelf&&this._parent._updateTouched(St)}},{key:"_isBoxedValue",value:function(St){return"object"==typeof St&&null!==St&&2===Object.keys(St).length&&"value"in St&&"disabled"in St}},{key:"_registerOnCollectionChange",value:function(St){this._onCollectionChange=St}},{key:"_setUpdateStrategy",value:function(St){wa(St)&&null!=St.updateOn&&(this._updateOn=St.updateOn)}},{key:"_parentMarkedDirty",value:function(St){return!St&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}]),ot}(),Gt=function(ot){(0,c.Z)(St,ot);var yt=(0,u.Z)(St);function St(){var ie,Ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,fe=arguments.length>1?arguments[1]:void 0,oe=arguments.length>2?arguments[2]:void 0;return(0,o.Z)(this,St),(ie=yt.call(this,Ja(fe),nr(oe,fe))).defaultValue=null,ie._onChange=[],ie._pendingChange=!1,ie._applyFormState(Ye),ie._setUpdateStrategy(fe),ie._initObservables(),ie.updateValueAndValidity({onlySelf:!0,emitEvent:!!ie.asyncValidator}),wa(fe)&&fe.initialValueIsDefault&&(ie.defaultValue=ie._isBoxedValue(Ye)?Ye.value:Ye),ie}return(0,_.Z)(St,[{key:"setValue",value:function(Ye){var fe=this,oe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.value=this._pendingValue=Ye,this._onChange.length&&!1!==oe.emitModelToViewChange&&this._onChange.forEach(function(bt){return bt(fe.value,!1!==oe.emitViewToModelChange)}),this.updateValueAndValidity(oe)}},{key:"patchValue",value:function(Ye){var fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.setValue(Ye,fe)}},{key:"reset",value:function(){var Ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.defaultValue,fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._applyFormState(Ye),this.markAsPristine(fe),this.markAsUntouched(fe),this.setValue(this.value,fe),this._pendingChange=!1}},{key:"_updateValue",value:function(){}},{key:"_anyControls",value:function(Ye){return!1}},{key:"_allControlsDisabled",value:function(){return this.disabled}},{key:"registerOnChange",value:function(Ye){this._onChange.push(Ye)}},{key:"_unregisterOnChange",value:function(Ye){xn(this._onChange,Ye)}},{key:"registerOnDisabledChange",value:function(Ye){this._onDisabledChange.push(Ye)}},{key:"_unregisterOnDisabledChange",value:function(Ye){xn(this._onDisabledChange,Ye)}},{key:"_forEachChild",value:function(Ye){}},{key:"_syncPendingControls",value:function(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}},{key:"_applyFormState",value:function(Ye){this._isBoxedValue(Ye)?(this.value=this._pendingValue=Ye.value,Ye.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=Ye}}]),St}(qt),An=function(ot){(0,c.Z)(St,ot);var yt=(0,u.Z)(St);function St(ie,Ye,fe){var oe;return(0,o.Z)(this,St),(oe=yt.call(this,Ja(Ye),nr(fe,Ye))).controls=ie,oe._initObservables(),oe._setUpdateStrategy(Ye),oe._setUpControls(),oe.updateValueAndValidity({onlySelf:!0,emitEvent:!!oe.asyncValidator}),oe}return(0,_.Z)(St,[{key:"registerControl",value:function(Ye,fe){return this.controls[Ye]?this.controls[Ye]:(this.controls[Ye]=fe,fe.setParent(this),fe._registerOnCollectionChange(this._onCollectionChange),fe)}},{key:"addControl",value:function(Ye,fe){var oe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.registerControl(Ye,fe),this.updateValueAndValidity({emitEvent:oe.emitEvent}),this._onCollectionChange()}},{key:"removeControl",value:function(Ye){var fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[Ye]&&this.controls[Ye]._registerOnCollectionChange(function(){}),delete this.controls[Ye],this.updateValueAndValidity({emitEvent:fe.emitEvent}),this._onCollectionChange()}},{key:"setControl",value:function(Ye,fe){var oe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[Ye]&&this.controls[Ye]._registerOnCollectionChange(function(){}),delete this.controls[Ye],fe&&this.registerControl(Ye,fe),this.updateValueAndValidity({emitEvent:oe.emitEvent}),this._onCollectionChange()}},{key:"contains",value:function(Ye){return this.controls.hasOwnProperty(Ye)&&this.controls[Ye].enabled}},{key:"setValue",value:function(Ye){var fe=this,oe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Le(this,Ye),Object.keys(Ye).forEach(function(bt){Tt(fe,bt),fe.controls[bt].setValue(Ye[bt],{onlySelf:!0,emitEvent:oe.emitEvent})}),this.updateValueAndValidity(oe)}},{key:"patchValue",value:function(Ye){var fe=this,oe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=Ye&&(Object.keys(Ye).forEach(function(bt){fe.controls[bt]&&fe.controls[bt].patchValue(Ye[bt],{onlySelf:!0,emitEvent:oe.emitEvent})}),this.updateValueAndValidity(oe))}},{key:"reset",value:function(){var Ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(oe,bt){oe.reset(Ye[bt],{onlySelf:!0,emitEvent:fe.emitEvent})}),this._updatePristine(fe),this._updateTouched(fe),this.updateValueAndValidity(fe)}},{key:"getRawValue",value:function(){return this._reduceChildren({},function(Ye,fe,oe){return Ye[oe]=Pn(fe),Ye})}},{key:"_syncPendingControls",value:function(){var Ye=this._reduceChildren(!1,function(fe,oe){return!!oe._syncPendingControls()||fe});return Ye&&this.updateValueAndValidity({onlySelf:!0}),Ye}},{key:"_forEachChild",value:function(Ye){var fe=this;Object.keys(this.controls).forEach(function(oe){var bt=fe.controls[oe];bt&&Ye(bt,oe)})}},{key:"_setUpControls",value:function(){var Ye=this;this._forEachChild(function(fe){fe.setParent(Ye),fe._registerOnCollectionChange(Ye._onCollectionChange)})}},{key:"_updateValue",value:function(){this.value=this._reduceValue()}},{key:"_anyControls",value:function(Ye){for(var fe=0,oe=Object.keys(this.controls);fe0||this.disabled}}]),St}(qt),Wn=function(ot){(0,c.Z)(St,ot);var yt=(0,u.Z)(St);function St(ie,Ye,fe){var oe;return(0,o.Z)(this,St),(oe=yt.call(this,Ja(Ye),nr(fe,Ye))).controls=ie,oe._initObservables(),oe._setUpdateStrategy(Ye),oe._setUpControls(),oe.updateValueAndValidity({onlySelf:!0,emitEvent:!!oe.asyncValidator}),oe}return(0,_.Z)(St,[{key:"at",value:function(Ye){return this.controls[Ye]}},{key:"push",value:function(Ye){var fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls.push(Ye),this._registerControl(Ye),this.updateValueAndValidity({emitEvent:fe.emitEvent}),this._onCollectionChange()}},{key:"insert",value:function(Ye,fe){var oe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls.splice(Ye,0,fe),this._registerControl(fe),this.updateValueAndValidity({emitEvent:oe.emitEvent})}},{key:"removeAt",value:function(Ye){var fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[Ye]&&this.controls[Ye]._registerOnCollectionChange(function(){}),this.controls.splice(Ye,1),this.updateValueAndValidity({emitEvent:fe.emitEvent})}},{key:"setControl",value:function(Ye,fe){var oe=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[Ye]&&this.controls[Ye]._registerOnCollectionChange(function(){}),this.controls.splice(Ye,1),fe&&(this.controls.splice(Ye,0,fe),this._registerControl(fe)),this.updateValueAndValidity({emitEvent:oe.emitEvent}),this._onCollectionChange()}},{key:"length",get:function(){return this.controls.length}},{key:"setValue",value:function(Ye){var fe=this,oe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Le(this,Ye),Ye.forEach(function(bt,xt){Tt(fe,xt),fe.at(xt).setValue(bt,{onlySelf:!0,emitEvent:oe.emitEvent})}),this.updateValueAndValidity(oe)}},{key:"patchValue",value:function(Ye){var fe=this,oe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=Ye&&(Ye.forEach(function(bt,xt){fe.at(xt)&&fe.at(xt).patchValue(bt,{onlySelf:!0,emitEvent:oe.emitEvent})}),this.updateValueAndValidity(oe))}},{key:"reset",value:function(){var Ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],fe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(oe,bt){oe.reset(Ye[bt],{onlySelf:!0,emitEvent:fe.emitEvent})}),this._updatePristine(fe),this._updateTouched(fe),this.updateValueAndValidity(fe)}},{key:"getRawValue",value:function(){return this.controls.map(function(Ye){return Pn(Ye)})}},{key:"clear",value:function(){var Ye=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.controls.length<1||(this._forEachChild(function(fe){return fe._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity({emitEvent:Ye.emitEvent}))}},{key:"_syncPendingControls",value:function(){var Ye=this.controls.reduce(function(fe,oe){return!!oe._syncPendingControls()||fe},!1);return Ye&&this.updateValueAndValidity({onlySelf:!0}),Ye}},{key:"_forEachChild",value:function(Ye){this.controls.forEach(function(fe,oe){Ye(fe,oe)})}},{key:"_updateValue",value:function(){var Ye=this;this.value=this.controls.filter(function(fe){return fe.enabled||Ye.disabled}).map(function(fe){return fe.value})}},{key:"_anyControls",value:function(Ye){return this.controls.some(function(fe){return fe.enabled&&Ye(fe)})}},{key:"_setUpControls",value:function(){var Ye=this;this._forEachChild(function(fe){return Ye._registerControl(fe)})}},{key:"_allControlsDisabled",value:function(){var fe,Ye=(0,t.Z)(this.controls);try{for(Ye.s();!(fe=Ye.n()).done;)if(fe.value.enabled)return!1}catch(bt){Ye.e(bt)}finally{Ye.f()}return this.controls.length>0||this.disabled}},{key:"_registerControl",value:function(Ye){Ye.setParent(this),Ye._registerOnCollectionChange(this._onCollectionChange)}}]),St}(qt),vi={provide:et,useExisting:(0,s.Gpc)(function(){return ea})},Hi=function(){return Promise.resolve(null)}(),ea=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye,fe){var oe;return(0,o.Z)(this,ie),(oe=St.call(this)).submitted=!1,oe._directives=[],oe.ngSubmit=new s.vpe,oe.form=new An({},Pe(Ye),ft(fe)),oe}return(0,_.Z)(ie,[{key:"ngAfterViewInit",value:function(){this._setUpdateStrategy()}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"controls",get:function(){return this.form.controls}},{key:"addControl",value:function(fe){var oe=this;Hi.then(function(){var bt=oe._findContainer(fe.path);fe.control=bt.registerControl(fe.name,fe.control),ri(fe.control,fe),fe.control.updateValueAndValidity({emitEvent:!1}),oe._directives.push(fe)})}},{key:"getControl",value:function(fe){return this.form.get(fe.path)}},{key:"removeControl",value:function(fe){var oe=this;Hi.then(function(){var bt=oe._findContainer(fe.path);bt&&bt.removeControl(fe.name),xn(oe._directives,fe)})}},{key:"addFormGroup",value:function(fe){var oe=this;Hi.then(function(){var bt=oe._findContainer(fe.path),xt=new An({});vt(xt,fe),bt.registerControl(fe.name,xt),xt.updateValueAndValidity({emitEvent:!1})})}},{key:"removeFormGroup",value:function(fe){var oe=this;Hi.then(function(){var bt=oe._findContainer(fe.path);bt&&bt.removeControl(fe.name)})}},{key:"getFormGroup",value:function(fe){return this.form.get(fe.path)}},{key:"updateModel",value:function(fe,oe){var bt=this;Hi.then(function(){bt.form.get(fe.path).setValue(oe)})}},{key:"setValue",value:function(fe){this.control.setValue(fe)}},{key:"onSubmit",value:function(fe){return this.submitted=!0,ln(this.form,this._directives),this.ngSubmit.emit(fe),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(){var fe=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.form.reset(fe),this.submitted=!1}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}},{key:"_findContainer",value:function(fe){return fe.pop(),fe.length?this.form.get(fe):this.form}}]),ie}(et);return ot.\u0275fac=function(St){return new(St||ot)(s.Y36(W,10),s.Y36($,10))},ot.\u0275dir=s.lG2({type:ot,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(St,ie){1&St&&s.NdJ("submit",function(fe){return ie.onSubmit(fe)})("reset",function(){return ie.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[s._Bn([vi]),s.qOj]}),ot}(),va={provide:Fe,useExisting:(0,s.Gpc)(function(){return Zt})},Ka=function(){return Promise.resolve(null)}(),Zt=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye,fe,oe,bt,xt){var Jt;return(0,o.Z)(this,ie),(Jt=St.call(this))._changeDetectorRef=xt,Jt.control=new Gt,Jt._registered=!1,Jt.update=new s.vpe,Jt._parent=Ye,Jt._setValidators(fe),Jt._setAsyncValidators(oe),Jt.valueAccessor=_n((0,S.Z)(Jt),bt),Jt}return(0,_.Z)(ie,[{key:"ngOnChanges",value:function(fe){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in fe&&this._updateDisabled(fe),$t(fe,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeControl(this)}},{key:"path",get:function(){return this._parent?oi(this.name,this._parent):[this.name]}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"viewToModelUpdate",value:function(fe){this.viewModel=fe,this.update.emit(fe)}},{key:"_setUpControl",value:function(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}},{key:"_isStandalone",value:function(){return!this._parent||!(!this.options||!this.options.standalone)}},{key:"_setUpStandalone",value:function(){ri(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}},{key:"_checkForErrors",value:function(){this._isStandalone()||this._checkParentType(),this._checkName()}},{key:"_checkParentType",value:function(){}},{key:"_checkName",value:function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}},{key:"_updateValue",value:function(fe){var oe=this;Ka.then(function(){var bt;oe.control.setValue(fe,{emitViewToModelChange:!1}),null===(bt=oe._changeDetectorRef)||void 0===bt||bt.markForCheck()})}},{key:"_updateDisabled",value:function(fe){var oe=this,bt=fe.isDisabled.currentValue,xt=""===bt||bt&&"false"!==bt;Ka.then(function(){var Jt;xt&&!oe.control.disabled?oe.control.disable():!xt&&oe.control.disabled&&oe.control.enable(),null===(Jt=oe._changeDetectorRef)||void 0===Jt||Jt.markForCheck()})}}]),ie}(Fe);return ot.\u0275fac=function(St){return new(St||ot)(s.Y36(et,9),s.Y36(W,10),s.Y36($,10),s.Y36(B,10),s.Y36(s.sBO,8))},ot.\u0275dir=s.lG2({type:ot,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[s._Bn([va]),s.qOj,s.TTD]}),ot}(),Ve=function(){var ot=(0,_.Z)(function yt(){(0,o.Z)(this,yt)});return ot.\u0275fac=function(St){return new(St||ot)},ot.\u0275dir=s.lG2({type:ot,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),ot}(),se={provide:B,useExisting:(0,s.Gpc)(function(){return he}),multi:!0},he=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(){return(0,o.Z)(this,ie),St.apply(this,arguments)}return(0,_.Z)(ie,[{key:"writeValue",value:function(fe){this.setProperty("value",null==fe?"":fe)}},{key:"registerOnChange",value:function(fe){this.onChange=function(oe){fe(""==oe?null:parseFloat(oe))}}}]),ie}(q);return ot.\u0275fac=function(){var yt;return function(ie){return(yt||(yt=s.n5z(ot)))(ie||ot)}}(),ot.\u0275dir=s.lG2({type:ot,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(St,ie){1&St&&s.NdJ("input",function(fe){return ie.onChange(fe.target.value)})("blur",function(){return ie.onTouched()})},features:[s._Bn([se]),s.qOj]}),ot}(),ht={provide:B,useExisting:(0,s.Gpc)(function(){return Xn}),multi:!0},dn=function(){var ot=(0,_.Z)(function yt(){(0,o.Z)(this,yt)});return ot.\u0275fac=function(St){return new(St||ot)},ot.\u0275mod=s.oAB({type:ot}),ot.\u0275inj=s.cJS({}),ot}(),Zn=function(){var ot=function(){function yt(){(0,o.Z)(this,yt),this._accessors=[]}return(0,_.Z)(yt,[{key:"add",value:function(ie,Ye){this._accessors.push([ie,Ye])}},{key:"remove",value:function(ie){for(var Ye=this._accessors.length-1;Ye>=0;--Ye)if(this._accessors[Ye][1]===ie)return void this._accessors.splice(Ye,1)}},{key:"select",value:function(ie){var Ye=this;this._accessors.forEach(function(fe){Ye._isSameGroup(fe,ie)&&fe[1]!==ie&&fe[1].fireUncheck(ie.value)})}},{key:"_isSameGroup",value:function(ie,Ye){return!!ie[0].control&&ie[0]._parent===Ye._control._parent&&ie[1].name===Ye.name}}]),yt}();return ot.\u0275fac=function(St){return new(St||ot)},ot.\u0275prov=s.Yz7({token:ot,factory:ot.\u0275fac,providedIn:dn}),ot}(),Xn=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye,fe,oe,bt){var xt;return(0,o.Z)(this,ie),(xt=St.call(this,Ye,fe))._registry=oe,xt._injector=bt,xt.onChange=function(){},xt}return(0,_.Z)(ie,[{key:"ngOnInit",value:function(){this._control=this._injector.get(Fe),this._checkName(),this._registry.add(this._control,this)}},{key:"ngOnDestroy",value:function(){this._registry.remove(this)}},{key:"writeValue",value:function(fe){this._state=fe===this.value,this.setProperty("checked",this._state)}},{key:"registerOnChange",value:function(fe){var oe=this;this._fn=fe,this.onChange=function(){fe(oe.value),oe._registry.select(oe)}}},{key:"fireUncheck",value:function(fe){this.writeValue(fe)}},{key:"_checkName",value:function(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}]),ie}(q);return ot.\u0275fac=function(St){return new(St||ot)(s.Y36(s.Qsj),s.Y36(s.SBq),s.Y36(Zn),s.Y36(s.zs3))},ot.\u0275dir=s.lG2({type:ot,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(St,ie){1&St&&s.NdJ("change",function(){return ie.onChange()})("blur",function(){return ie.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[s._Bn([ht]),s.qOj]}),ot}(),Mi=new s.OlP("NgModelWithFormControlWarning"),Wi={provide:Fe,useExisting:(0,s.Gpc)(function(){return Yi})},Yi=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye,fe,oe,bt){var xt;return(0,o.Z)(this,ie),(xt=St.call(this))._ngModelWarningConfig=bt,xt.update=new s.vpe,xt._ngModelWarningSent=!1,xt._setValidators(Ye),xt._setAsyncValidators(fe),xt.valueAccessor=_n((0,S.Z)(xt),oe),xt}return(0,_.Z)(ie,[{key:"isDisabled",set:function(fe){}},{key:"ngOnChanges",value:function(fe){if(this._isControlChanged(fe)){var oe=fe.form.previousValue;oe&&un(oe,this),ri(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}$t(fe,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.form&&un(this.form,this)}},{key:"path",get:function(){return[]}},{key:"control",get:function(){return this.form}},{key:"viewToModelUpdate",value:function(fe){this.viewModel=fe,this.update.emit(fe)}},{key:"_isControlChanged",value:function(fe){return fe.hasOwnProperty("form")}}]),ie}(Fe);return ot._ngModelWarningSentOnce=!1,ot.\u0275fac=function(St){return new(St||ot)(s.Y36(W,10),s.Y36($,10),s.Y36(B,10),s.Y36(Mi,8))},ot.\u0275dir=s.lG2({type:ot,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[s._Bn([Wi]),s.qOj,s.TTD]}),ot}(),aa={provide:et,useExisting:(0,s.Gpc)(function(){return xi})},xi=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye,fe){var oe;return(0,o.Z)(this,ie),(oe=St.call(this)).validators=Ye,oe.asyncValidators=fe,oe.submitted=!1,oe._onCollectionChange=function(){return oe._updateDomValue()},oe.directives=[],oe.form=null,oe.ngSubmit=new s.vpe,oe._setValidators(Ye),oe._setAsyncValidators(fe),oe}return(0,_.Z)(ie,[{key:"ngOnChanges",value:function(fe){this._checkFormPresent(),fe.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}},{key:"ngOnDestroy",value:function(){this.form&&(pt(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(function(){}))}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"addControl",value:function(fe){var oe=this.form.get(fe.path);return ri(oe,fe),oe.updateValueAndValidity({emitEvent:!1}),this.directives.push(fe),oe}},{key:"getControl",value:function(fe){return this.form.get(fe.path)}},{key:"removeControl",value:function(fe){un(fe.control||null,fe),xn(this.directives,fe)}},{key:"addFormGroup",value:function(fe){this._setUpFormContainer(fe)}},{key:"removeFormGroup",value:function(fe){this._cleanUpFormContainer(fe)}},{key:"getFormGroup",value:function(fe){return this.form.get(fe.path)}},{key:"addFormArray",value:function(fe){this._setUpFormContainer(fe)}},{key:"removeFormArray",value:function(fe){this._cleanUpFormContainer(fe)}},{key:"getFormArray",value:function(fe){return this.form.get(fe.path)}},{key:"updateModel",value:function(fe,oe){this.form.get(fe.path).setValue(oe)}},{key:"onSubmit",value:function(fe){return this.submitted=!0,ln(this.form,this.directives),this.ngSubmit.emit(fe),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(){var fe=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.form.reset(fe),this.submitted=!1}},{key:"_updateDomValue",value:function(){var fe=this;this.directives.forEach(function(oe){var bt=oe.control,xt=fe.form.get(oe.path);bt!==xt&&(un(bt||null,oe),or(xt)&&(ri(xt,oe),oe.control=xt))}),this.form._updateTreeValidity({emitEvent:!1})}},{key:"_setUpFormContainer",value:function(fe){var oe=this.form.get(fe.path);vt(oe,fe),oe.updateValueAndValidity({emitEvent:!1})}},{key:"_cleanUpFormContainer",value:function(fe){if(this.form){var oe=this.form.get(fe.path);if(oe){var bt=function Rt(ot,yt){return pt(ot,yt)}(oe,fe);bt&&oe.updateValueAndValidity({emitEvent:!1})}}}},{key:"_updateRegistrations",value:function(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(function(){})}},{key:"_updateValidators",value:function(){qe(this.form,this),this._oldForm&&pt(this._oldForm,this)}},{key:"_checkFormPresent",value:function(){}}]),ie}(et);return ot.\u0275fac=function(St){return new(St||ot)(s.Y36(W,10),s.Y36($,10))},ot.\u0275dir=s.lG2({type:ot,selectors:[["","formGroup",""]],hostBindings:function(St,ie){1&St&&s.NdJ("submit",function(fe){return ie.onSubmit(fe)})("reset",function(){return ie.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[s._Bn([aa]),s.qOj,s.TTD]}),ot}(),Ca={provide:Fe,useExisting:(0,s.Gpc)(function(){return ir})},ir=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(Ye,fe,oe,bt,xt){var Jt;return(0,o.Z)(this,ie),(Jt=St.call(this))._ngModelWarningConfig=xt,Jt._added=!1,Jt.update=new s.vpe,Jt._ngModelWarningSent=!1,Jt._parent=Ye,Jt._setValidators(fe),Jt._setAsyncValidators(oe),Jt.valueAccessor=_n((0,S.Z)(Jt),bt),Jt}return(0,_.Z)(ie,[{key:"isDisabled",set:function(fe){}},{key:"ngOnChanges",value:function(fe){this._added||this._setUpControl(),$t(fe,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeControl(this)}},{key:"viewToModelUpdate",value:function(fe){this.viewModel=fe,this.update.emit(fe)}},{key:"path",get:function(){return oi(null==this.name?this.name:this.name.toString(),this._parent)}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"_checkParentType",value:function(){}},{key:"_setUpControl",value:function(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}]),ie}(Fe);return ot._ngModelWarningSentOnce=!1,ot.\u0275fac=function(St){return new(St||ot)(s.Y36(et,13),s.Y36(W,10),s.Y36($,10),s.Y36(B,10),s.Y36(Mi,8))},ot.\u0275dir=s.lG2({type:ot,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[s._Bn([Ca]),s.qOj,s.TTD]}),ot}(),yr={provide:B,useExisting:(0,s.Gpc)(function(){return Dn}),multi:!0};function Qi(ot,yt){return null==ot?"".concat(yt):(yt&&"object"==typeof yt&&(yt="Object"),"".concat(ot,": ").concat(yt).slice(0,50))}var Dn=function(){var ot=function(yt){(0,c.Z)(ie,yt);var St=(0,u.Z)(ie);function ie(){var Ye;return(0,o.Z)(this,ie),(Ye=St.apply(this,arguments))._optionMap=new Map,Ye._idCounter=0,Ye._compareWith=Object.is,Ye}return(0,_.Z)(ie,[{key:"compareWith",set:function(fe){this._compareWith=fe}},{key:"writeValue",value:function(fe){this.value=fe;var bt=Qi(this._getOptionId(fe),fe);this.setProperty("value",bt)}},{key:"registerOnChange",value:function(fe){var oe=this;this.onChange=function(bt){oe.value=oe._getOptionValue(bt),fe(oe.value)}}},{key:"_registerOption",value:function(){return(this._idCounter++).toString()}},{key:"_getOptionId",value:function(fe){for(var oe=0,bt=Array.from(this._optionMap.keys());oe-1)}}else bt=function(zn,hi){zn._setSelected(!1)};this._optionMap.forEach(bt)}},{key:"registerOnChange",value:function(fe){var oe=this;this.onChange=function(bt){var xt=[],Jt=bt.selectedOptions;if(void 0!==Jt)for(var zn=Jt,hi=0;hi1&&void 0!==arguments[1]?arguments[1]:null,fe=this._reduceControls(ie),oe=null,bt=null,xt=void 0;return null!=Ye&&(Ai(Ye)?(oe=null!=Ye.validators?Ye.validators:null,bt=null!=Ye.asyncValidators?Ye.asyncValidators:null,xt=null!=Ye.updateOn?Ye.updateOn:void 0):(oe=null!=Ye.validator?Ye.validator:null,bt=null!=Ye.asyncValidator?Ye.asyncValidator:null)),new An(fe,{asyncValidators:bt,updateOn:xt,validators:oe})}},{key:"control",value:function(ie,Ye,fe){return new Gt(ie,Ye,fe)}},{key:"array",value:function(ie,Ye,fe){var oe=this,bt=ie.map(function(xt){return oe._createControl(xt)});return new Wn(bt,Ye,fe)}},{key:"_reduceControls",value:function(ie){var Ye=this,fe={};return Object.keys(ie).forEach(function(oe){fe[oe]=Ye._createControl(ie[oe])}),fe}},{key:"_createControl",value:function(ie){return or(ie)||Ta(ie)||Cn(ie)?ie:Array.isArray(ie)?this.control(ie[0],ie.length>1?ie[1]:null,ie.length>2?ie[2]:null):this.control(ie)}}]),yt}();return ot.\u0275fac=function(St){return new(St||ot)},ot.\u0275prov=s.Yz7({token:ot,factory:ot.\u0275fac,providedIn:Si}),ot}()},43188:function(Ce,E,n){"use strict";n.d(E,{XC:function(){return mt},Bb:function(){return at},ZL:function(){return Ee}});var S=n(71340),t=n(46751),e=n(56101),c=n(1884),u=n(39117),o=n(84128),_=n(76484),s=n(86613),h=n(1130),b=n(17714),T=n(50253),y=n(21954),Y=n(36646),q=n(10745),B=n(23280),k=n(14390),D=n(36362),N=n(54244),I=n(24426),L=n(75939),j=n(24476),le=n(90587),re=n(44770),W=n(44874),$=n(32673),be=n(59295),z=n(60116),d=n(50635),Q=n(19337),J=n(46441),te=n(51588),K=["panel"];function G(We,xe){if(1&We&&(s.TgZ(0,"div",0,1),s.Hsn(2),s.qZA()),2&We){var ut=xe.id,Fe=s.oxw();s.Q6J("id",Fe.id)("ngClass",Fe._classList),s.uIk("aria-label",Fe.ariaLabel||null)("aria-labelledby",Fe._getPanelAriaLabelledby(ut))}}var ce=["*"],_e=0,Me=(0,c.Z)(function We(xe,ut){(0,u.Z)(this,We),this.source=xe,this.option=ut}),ve=(0,h.Kr)(function(){return(0,c.Z)(function We(){(0,u.Z)(this,We)})}()),ue=new s.OlP("mat-autocomplete-default-options",{providedIn:"root",factory:function lt(){return{autoActiveFirstOption:!1}}}),Xe=function(){var We=function(xe){(0,t.Z)(Fe,xe);var ut=(0,e.Z)(Fe);function Fe(et,Ht,nn,an){var kt;return(0,u.Z)(this,Fe),(kt=ut.call(this))._changeDetectorRef=et,kt._elementRef=Ht,kt._activeOptionChanges=b.w0.EMPTY,kt.showPanel=!1,kt._isOpen=!1,kt.displayWith=null,kt.optionSelected=new s.vpe,kt.opened=new s.vpe,kt.closed=new s.vpe,kt.optionActivated=new s.vpe,kt._classList={},kt.id="mat-autocomplete-".concat(_e++),kt.inertGroups=(null==an?void 0:an.SAFARI)||!1,kt._autoActiveFirstOption=!!nn.autoActiveFirstOption,kt}return(0,c.Z)(Fe,[{key:"isOpen",get:function(){return this._isOpen&&this.showPanel}},{key:"autoActiveFirstOption",get:function(){return this._autoActiveFirstOption},set:function(Ht){this._autoActiveFirstOption=(0,_.Ig)(Ht)}},{key:"classList",set:function(Ht){this._classList=Ht&&Ht.length?(0,_.du)(Ht).reduce(function(nn,an){return nn[an]=!0,nn},{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}},{key:"ngAfterContentInit",value:function(){var Ht=this;this._keyManager=new o.s1(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(function(nn){Ht.isOpen&&Ht.optionActivated.emit({source:Ht,option:Ht.options.toArray()[nn]||null})}),this._setVisibility()}},{key:"ngOnDestroy",value:function(){this._activeOptionChanges.unsubscribe()}},{key:"_setScrollTop",value:function(Ht){this.panel&&(this.panel.nativeElement.scrollTop=Ht)}},{key:"_getScrollTop",value:function(){return this.panel?this.panel.nativeElement.scrollTop:0}},{key:"_setVisibility",value:function(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}},{key:"_emitSelectEvent",value:function(Ht){var nn=new Me(this,Ht);this.optionSelected.emit(nn)}},{key:"_getPanelAriaLabelledby",value:function(Ht){return this.ariaLabel?null:this.ariaLabelledby?(Ht?Ht+" ":"")+this.ariaLabelledby:Ht}},{key:"_setVisibilityClasses",value:function(Ht){Ht[this._visibleClass]=this.showPanel,Ht[this._hiddenClass]=!this.showPanel}}]),Fe}(ve);return We.\u0275fac=function(ut){return new(ut||We)(s.Y36(s.sBO),s.Y36(s.SBq),s.Y36(ue),s.Y36(k.t4))},We.\u0275dir=s.lG2({type:We,viewQuery:function(ut,Fe){var et;1&ut&&(s.Gf(s.Rgc,7),s.Gf(K,5)),2&ut&&(s.iGM(et=s.CRH())&&(Fe.template=et.first),s.iGM(et=s.CRH())&&(Fe.panel=et.first))},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",panelWidth:"panelWidth",classList:["class","classList"]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[s.qOj]}),We}(),mt=function(){var We=function(xe){(0,t.Z)(Fe,xe);var ut=(0,e.Z)(Fe);function Fe(){var et;return(0,u.Z)(this,Fe),(et=ut.apply(this,arguments))._visibleClass="mat-autocomplete-visible",et._hiddenClass="mat-autocomplete-hidden",et}return(0,c.Z)(Fe)}(Xe);return We.\u0275fac=function(){var xe;return function(Fe){return(xe||(xe=s.n5z(We)))(Fe||We)}}(),We.\u0275cmp=s.Xpm({type:We,selectors:[["mat-autocomplete"]],contentQueries:function(ut,Fe,et){var Ht;1&ut&&(s.Suo(et,h.K7,5),s.Suo(et,h.ey,5)),2&ut&&(s.iGM(Ht=s.CRH())&&(Fe.optionGroups=Ht),s.iGM(Ht=s.CRH())&&(Fe.options=Ht))},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[s._Bn([{provide:h.HF,useExisting:We}]),s.qOj],ngContentSelectors:ce,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(ut,Fe){1&ut&&(s.F$t(),s.YNc(0,G,3,4,"ng-template"))},directives:[D.mk],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),We}(),wt=new s.OlP("mat-autocomplete-scroll-strategy"),Pe={provide:wt,deps:[N.aV],useFactory:function Pt(We){return function(){return We.scrollStrategies.reposition()}}},ze={provide:le.JU,useExisting:(0,s.Gpc)(function(){return Ee}),multi:!0},ct=function(){var We=function(){function xe(ut,Fe,et,Ht,nn,an,kt,It,$e,Ae,X){var ne=this;(0,u.Z)(this,xe),this._element=ut,this._overlay=Fe,this._viewContainerRef=et,this._zone=Ht,this._changeDetectorRef=nn,this._dir=kt,this._formField=It,this._document=$e,this._viewportRuler=Ae,this._defaults=X,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=b.w0.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new T.x,this._windowBlurHandler=function(){ne._canOpenOnNextFocus=ne._document.activeElement!==ne._element.nativeElement||ne.panelOpen},this._onChange=function(){},this._onTouched=function(){},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=(0,y.P)(function(){var me=ne.autocomplete?ne.autocomplete.options:null;return me?me.changes.pipe((0,W.O)(me),(0,$.w)(function(){return Y.T.apply(void 0,(0,S.Z)(me.map(function(Oe){return Oe.onSelectionChange})))})):ne._zone.onStable.pipe((0,be.q)(1),(0,$.w)(function(){return ne.optionSelections}))}),this._scrollStrategy=an}return(0,c.Z)(xe,[{key:"autocompleteDisabled",get:function(){return this._autocompleteDisabled},set:function(Fe){this._autocompleteDisabled=(0,_.Ig)(Fe)}},{key:"ngAfterViewInit",value:function(){var Fe=this,et=this._getWindow();void 0!==et&&this._zone.runOutsideAngular(function(){return et.addEventListener("blur",Fe._windowBlurHandler)})}},{key:"ngOnChanges",value:function(Fe){Fe.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}},{key:"ngOnDestroy",value:function(){var Fe=this._getWindow();void 0!==Fe&&Fe.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}},{key:"panelOpen",get:function(){return this._overlayAttached&&this.autocomplete.showPanel}},{key:"openPanel",value:function(){this._attachOverlay(),this._floatLabel()}},{key:"closePanel",value:function(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}},{key:"updatePosition",value:function(){this._overlayAttached&&this._overlayRef.updatePosition()}},{key:"panelClosingActions",get:function(){var Fe=this;return(0,Y.T)(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe((0,z.h)(function(){return Fe._overlayAttached})),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe((0,z.h)(function(){return Fe._overlayAttached})):(0,q.of)()).pipe((0,d.U)(function(et){return et instanceof h.rN?et:null}))}},{key:"activeOption",get:function(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}},{key:"_getOutsideClickStream",value:function(){var Fe=this;return(0,Y.T)((0,B.R)(this._document,"click"),(0,B.R)(this._document,"auxclick"),(0,B.R)(this._document,"touchend")).pipe((0,z.h)(function(et){var Ht=(0,k.sA)(et),nn=Fe._formField?Fe._formField._elementRef.nativeElement:null,an=Fe.connectedTo?Fe.connectedTo.elementRef.nativeElement:null;return Fe._overlayAttached&&Ht!==Fe._element.nativeElement&&(!nn||!nn.contains(Ht))&&(!an||!an.contains(Ht))&&!!Fe._overlayRef&&!Fe._overlayRef.overlayElement.contains(Ht)}))}},{key:"writeValue",value:function(Fe){var et=this;Promise.resolve().then(function(){return et._setTriggerValue(Fe)})}},{key:"registerOnChange",value:function(Fe){this._onChange=Fe}},{key:"registerOnTouched",value:function(Fe){this._onTouched=Fe}},{key:"setDisabledState",value:function(Fe){this._element.nativeElement.disabled=Fe}},{key:"_handleKeydown",value:function(Fe){var et=Fe.keyCode;if(et===L.hY&&!(0,L.Vb)(Fe)&&Fe.preventDefault(),this.activeOption&&et===L.K5&&this.panelOpen&&!(0,L.Vb)(Fe))this.activeOption._selectViaInteraction(),this._resetActiveItem(),Fe.preventDefault();else if(this.autocomplete){var Ht=this.autocomplete._keyManager.activeItem,nn=et===L.LH||et===L.JH;this.panelOpen||et===L.Mf?this.autocomplete._keyManager.onKeydown(Fe):nn&&this._canOpen()&&this.openPanel(),(nn||this.autocomplete._keyManager.activeItem!==Ht)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}},{key:"_handleInput",value:function(Fe){var et=Fe.target,Ht=et.value;"number"===et.type&&(Ht=""==Ht?null:parseFloat(Ht)),this._previousValue!==Ht&&(this._previousValue=Ht,this._onChange(Ht),this._canOpen()&&this._document.activeElement===Fe.target&&this.openPanel())}},{key:"_handleFocus",value:function(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}},{key:"_floatLabel",value:function(){var Fe=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this._formField&&"auto"===this._formField.floatLabel&&(Fe?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}},{key:"_resetLabel",value:function(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}},{key:"_subscribeToClosingActions",value:function(){var Fe=this,et=this._zone.onStable.pipe((0,be.q)(1)),Ht=this.autocomplete.options.changes.pipe((0,Q.b)(function(){return Fe._positionStrategy.reapplyLastPosition()}),(0,J.g)(0));return(0,Y.T)(et,Ht).pipe((0,$.w)(function(){var nn=Fe.panelOpen;return Fe._resetActiveItem(),Fe.autocomplete._setVisibility(),Fe.panelOpen&&(Fe._overlayRef.updatePosition(),nn!==Fe.panelOpen&&Fe.autocomplete.opened.emit()),Fe.panelClosingActions}),(0,be.q)(1)).subscribe(function(nn){return Fe._setValueAndClose(nn)})}},{key:"_destroyPanel",value:function(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}},{key:"_setTriggerValue",value:function(Fe){var et=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(Fe):Fe,Ht=null!=et?et:"";this._formField?this._formField._control.value=Ht:this._element.nativeElement.value=Ht,this._previousValue=Ht}},{key:"_setValueAndClose",value:function(Fe){var et=Fe&&Fe.source;et&&(this._clearPreviousSelectedOption(et),this._setTriggerValue(et.value),this._onChange(et.value),this.autocomplete._emitSelectEvent(et),this._element.nativeElement.focus()),this.closePanel()}},{key:"_clearPreviousSelectedOption",value:function(Fe){this.autocomplete.options.forEach(function(et){et!==Fe&&et.selected&&et.deselect()})}},{key:"_attachOverlay",value:function(){var et,Fe=this,Ht=this._overlayRef;Ht?(this._positionStrategy.setOrigin(this._getConnectedElement()),Ht.updateSize({width:this._getPanelWidth()})):(this._portal=new j.UE(this.autocomplete.template,this._viewContainerRef,{id:null===(et=this._formField)||void 0===et?void 0:et.getLabelId()}),Ht=this._overlay.create(this._getOverlayConfig()),this._overlayRef=Ht,Ht.keydownEvents().subscribe(function(an){(an.keyCode===L.hY&&!(0,L.Vb)(an)||an.keyCode===L.LH&&(0,L.Vb)(an,"altKey"))&&(Fe._closeKeyEventStream.next(),Fe._resetActiveItem(),an.stopPropagation(),an.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(function(){Fe.panelOpen&&Ht&&Ht.updateSize({width:Fe._getPanelWidth()})})),Ht&&!Ht.hasAttached()&&(Ht.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());var nn=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&nn!==this.panelOpen&&this.autocomplete.opened.emit()}},{key:"_getOverlayConfig",value:function(){var Fe;return new N.X_({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(Fe=this._defaults)||void 0===Fe?void 0:Fe.overlayPanelClass})}},{key:"_getOverlayPosition",value:function(){var Fe=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(Fe),this._positionStrategy=Fe,Fe}},{key:"_setStrategyPositions",value:function(Fe){var an,et=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Ht=this._aboveClass,nn=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:Ht},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:Ht}];an="above"===this.position?nn:"below"===this.position?et:[].concat(et,nn),Fe.withPositions(an)}},{key:"_getConnectedElement",value:function(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}},{key:"_getPanelWidth",value:function(){return this.autocomplete.panelWidth||this._getHostWidth()}},{key:"_getHostWidth",value:function(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}},{key:"_resetActiveItem",value:function(){var Fe=this.autocomplete;Fe.autoActiveFirstOption?Fe._keyManager.setFirstItemActive():Fe._keyManager.setActiveItem(-1)}},{key:"_canOpen",value:function(){var Fe=this._element.nativeElement;return!Fe.readOnly&&!Fe.disabled&&!this._autocompleteDisabled}},{key:"_getWindow",value:function(){var Fe;return(null===(Fe=this._document)||void 0===Fe?void 0:Fe.defaultView)||window}},{key:"_scrollToOption",value:function(Fe){var et=this.autocomplete,Ht=(0,h.CB)(Fe,et.options,et.optionGroups);if(0===Fe&&1===Ht)et._setScrollTop(0);else if(et.panel){var nn=et.options.toArray()[Fe];if(nn){var an=nn._getHostElement(),kt=(0,h.jH)(an.offsetTop,an.offsetHeight,et._getScrollTop(),et.panel.nativeElement.offsetHeight);et._setScrollTop(kt)}}}}]),xe}();return We.\u0275fac=function(ut){return new(ut||We)(s.Y36(s.SBq),s.Y36(N.aV),s.Y36(s.s_b),s.Y36(s.R0b),s.Y36(s.sBO),s.Y36(wt),s.Y36(te.Is,8),s.Y36(re.G_,9),s.Y36(D.K0,8),s.Y36(I.rL),s.Y36(ue,8))},We.\u0275dir=s.lG2({type:We,inputs:{autocomplete:["matAutocomplete","autocomplete"],position:["matAutocompletePosition","position"],connectedTo:["matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"]},features:[s.TTD]}),We}(),Ee=function(){var We=function(xe){(0,t.Z)(Fe,xe);var ut=(0,e.Z)(Fe);function Fe(){var et;return(0,u.Z)(this,Fe),(et=ut.apply(this,arguments))._aboveClass="mat-autocomplete-panel-above",et}return(0,c.Z)(Fe)}(ct);return We.\u0275fac=function(){var xe;return function(Fe){return(xe||(xe=s.n5z(We)))(Fe||We)}}(),We.\u0275dir=s.lG2({type:We,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(ut,Fe){1&ut&&s.NdJ("focusin",function(){return Fe._handleFocus()})("blur",function(){return Fe._onTouched()})("input",function(Ht){return Fe._handleInput(Ht)})("keydown",function(Ht){return Fe._handleKeydown(Ht)}),2&ut&&s.uIk("autocomplete",Fe.autocompleteAttribute)("role",Fe.autocompleteDisabled?null:"combobox")("aria-autocomplete",Fe.autocompleteDisabled?null:"list")("aria-activedescendant",Fe.panelOpen&&Fe.activeOption?Fe.activeOption.id:null)("aria-expanded",Fe.autocompleteDisabled?null:Fe.panelOpen.toString())("aria-owns",Fe.autocompleteDisabled||!Fe.panelOpen||null==Fe.autocomplete?null:Fe.autocomplete.id)("aria-haspopup",!Fe.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[s._Bn([ze]),s.qOj]}),We}(),at=function(){var We=(0,c.Z)(function xe(){(0,u.Z)(this,xe)});return We.\u0275fac=function(ut){return new(ut||We)},We.\u0275mod=s.oAB({type:We}),We.\u0275inj=s.cJS({providers:[Pe],imports:[[N.U8,h.Ng,h.BQ,D.ez],I.ZD,h.Ng,h.BQ]}),We}()},70178:function(Ce,E,n){"use strict";n.d(E,{k:function(){return Y},g:function(){return q}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(86613),o=n(1130),_=n(84128),s=n(76484),h=n(57481),b=0,T=(0,o.Id)(function(){return(0,e.Z)(function B(){(0,c.Z)(this,B)})}()),y="mat-badge-content",Y=function(){var B=function(k){(0,S.Z)(N,k);var D=(0,t.Z)(N);function N(I,L,j,le,re){var W;return(0,c.Z)(this,N),(W=D.call(this))._ngZone=I,W._elementRef=L,W._ariaDescriber=j,W._renderer=le,W._animationMode=re,W._color="primary",W._overlap=!0,W.position="above after",W.size="medium",W._id=b++,W._isInitialized=!1,W}return(0,e.Z)(N,[{key:"color",get:function(){return this._color},set:function(L){this._setColor(L),this._color=L}},{key:"overlap",get:function(){return this._overlap},set:function(L){this._overlap=(0,s.Ig)(L)}},{key:"content",get:function(){return this._content},set:function(L){this._updateRenderedContent(L)}},{key:"description",get:function(){return this._description},set:function(L){this._updateHostAriaDescription(L)}},{key:"hidden",get:function(){return this._hidden},set:function(L){this._hidden=(0,s.Ig)(L)}},{key:"isAbove",value:function(){return-1===this.position.indexOf("below")}},{key:"isAfter",value:function(){return-1===this.position.indexOf("before")}},{key:"getBadgeElement",value:function(){return this._badgeElement}},{key:"ngOnInit",value:function(){this._clearExistingBadges(),this.content&&!this._badgeElement&&(this._badgeElement=this._createBadgeElement(),this._updateRenderedContent(this.content)),this._isInitialized=!0}},{key:"ngOnDestroy",value:function(){this._renderer.destroyNode&&this._renderer.destroyNode(this._badgeElement),this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this.description)}},{key:"_createBadgeElement",value:function(){var L=this._renderer.createElement("span"),j="mat-badge-active";return L.setAttribute("id","mat-badge-content-".concat(this._id)),L.setAttribute("aria-hidden","true"),L.classList.add(y),"NoopAnimations"===this._animationMode&&L.classList.add("_mat-animation-noopable"),this._elementRef.nativeElement.appendChild(L),"function"==typeof requestAnimationFrame&&"NoopAnimations"!==this._animationMode?this._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){L.classList.add(j)})}):L.classList.add(j),L}},{key:"_updateRenderedContent",value:function(L){var j="".concat(null!=L?L:"").trim();this._isInitialized&&j&&!this._badgeElement&&(this._badgeElement=this._createBadgeElement()),this._badgeElement&&(this._badgeElement.textContent=j),this._content=j}},{key:"_updateHostAriaDescription",value:function(L){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this.description),L&&this._ariaDescriber.describe(this._elementRef.nativeElement,L),this._description=L}},{key:"_setColor",value:function(L){var j=this._elementRef.nativeElement.classList;j.remove("mat-badge-".concat(this._color)),L&&j.add("mat-badge-".concat(L))}},{key:"_clearExistingBadges",value:function(){for(var L=this._elementRef.nativeElement.querySelectorAll(":scope > .".concat(y)),j=0,le=Array.from(L);j void, visible => hidden",(0,q.jt)("".concat(h.mZ.COMPLEX," ").concat(h.yN.ACCELERATION_CURVE))),(0,q.eR)("void => visible",(0,q.jt)("".concat(h.mZ.EXITING," ").concat(h.yN.DECELERATION_CURVE)))])},$=new s.OlP("MatBottomSheetData"),be=(0,c.Z)(function G(){(0,u.Z)(this,G),this.data=null,this.hasBackdrop=!0,this.disableClose=!1,this.ariaLabel=null,this.closeOnNavigation=!0,this.autoFocus="dialog",this.restoreFocus=!0}),z=function(){var G=function(ce){(0,t.Z)(Me,ce);var _e=(0,e.Z)(Me);function Me(ve,ue,lt,Xe,mt,wt,Pt,Pe){var ze;return(0,u.Z)(this,Me),(ze=_e.call(this))._elementRef=ve,ze._changeDetectorRef=ue,ze._focusTrapFactory=lt,ze._interactivityChecker=Xe,ze._ngZone=mt,ze.bottomSheetConfig=Pe,ze._animationState="void",ze._animationStateChanged=new s.vpe,ze._elementFocusedBeforeOpened=null,ze.attachDomPortal=function(ft){return ze._validatePortalAttached(),ze._setPanelClass(),ze._savePreviouslyFocusedElement(),ze._portalOutlet.attachDomPortal(ft)},ze._document=Pt,ze._breakpointSubscription=wt.observe([T.u3.Medium,T.u3.Large,T.u3.XLarge]).subscribe(function(){ze._toggleClass("mat-bottom-sheet-container-medium",wt.isMatched(T.u3.Medium)),ze._toggleClass("mat-bottom-sheet-container-large",wt.isMatched(T.u3.Large)),ze._toggleClass("mat-bottom-sheet-container-xlarge",wt.isMatched(T.u3.XLarge))}),ze}return(0,c.Z)(Me,[{key:"attachComponentPortal",value:function(ue){return this._validatePortalAttached(),this._setPanelClass(),this._savePreviouslyFocusedElement(),this._portalOutlet.attachComponentPortal(ue)}},{key:"attachTemplatePortal",value:function(ue){return this._validatePortalAttached(),this._setPanelClass(),this._savePreviouslyFocusedElement(),this._portalOutlet.attachTemplatePortal(ue)}},{key:"enter",value:function(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges())}},{key:"exit",value:function(){this._destroyed||(this._animationState="hidden",this._changeDetectorRef.markForCheck())}},{key:"ngOnDestroy",value:function(){this._breakpointSubscription.unsubscribe(),this._destroyed=!0}},{key:"_onAnimationDone",value:function(ue){"hidden"===ue.toState?this._restoreFocus():"visible"===ue.toState&&this._trapFocus(),this._animationStateChanged.emit(ue)}},{key:"_onAnimationStart",value:function(ue){this._animationStateChanged.emit(ue)}},{key:"_toggleClass",value:function(ue,lt){this._elementRef.nativeElement.classList.toggle(ue,lt)}},{key:"_validatePortalAttached",value:function(){this._portalOutlet.hasAttached()}},{key:"_setPanelClass",value:function(){var ue;(ue=this._elementRef.nativeElement.classList).add.apply(ue,(0,S.Z)((0,b.Eq)(this.bottomSheetConfig.panelClass||[])))}},{key:"_forceFocus",value:function(ue,lt){this._interactivityChecker.isFocusable(ue)||(ue.tabIndex=-1,this._ngZone.runOutsideAngular(function(){ue.addEventListener("blur",function(){return ue.removeAttribute("tabindex")}),ue.addEventListener("mousedown",function(){return ue.removeAttribute("tabindex")})})),ue.focus(lt)}},{key:"_focusByCssSelector",value:function(ue,lt){var Xe=this._elementRef.nativeElement.querySelector(ue);Xe&&this._forceFocus(Xe,lt)}},{key:"_trapFocus",value:function(){var ue=this._elementRef.nativeElement;switch(this._focusTrap||(this._focusTrap=this._focusTrapFactory.create(ue)),this.bottomSheetConfig.autoFocus){case!1:case"dialog":var lt=(0,y.ht)();lt!==ue&&!ue.contains(lt)&&ue.focus();break;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady();break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.bottomSheetConfig.autoFocus)}}},{key:"_restoreFocus",value:function(){var ue=this._elementFocusedBeforeOpened;if(this.bottomSheetConfig.restoreFocus&&ue&&"function"==typeof ue.focus){var lt=(0,y.ht)(),Xe=this._elementRef.nativeElement;(!lt||lt===this._document.body||lt===Xe||Xe.contains(lt))&&ue.focus()}this._focusTrap&&this._focusTrap.destroy()}},{key:"_savePreviouslyFocusedElement",value:function(){var ue=this;this._elementFocusedBeforeOpened=(0,y.ht)(),this._elementRef.nativeElement.focus&&this._ngZone.runOutsideAngular(function(){Promise.resolve().then(function(){return ue._elementRef.nativeElement.focus()})})}}]),Me}(_.en);return G.\u0275fac=function(_e){return new(_e||G)(s.Y36(s.SBq),s.Y36(s.sBO),s.Y36(B.qV),s.Y36(B.ic),s.Y36(s.R0b),s.Y36(T.Yg),s.Y36(Y.K0,8),s.Y36(be))},G.\u0275cmp=s.Xpm({type:G,selectors:[["mat-bottom-sheet-container"]],viewQuery:function(_e,Me){var ve;1&_e&&s.Gf(_.Pl,7),2&_e&&s.iGM(ve=s.CRH())&&(Me._portalOutlet=ve.first)},hostAttrs:["tabindex","-1","role","dialog","aria-modal","true",1,"mat-bottom-sheet-container"],hostVars:2,hostBindings:function(_e,Me){1&_e&&s.WFA("@state.start",function(ue){return Me._onAnimationStart(ue)})("@state.done",function(ue){return Me._onAnimationDone(ue)}),2&_e&&(s.uIk("aria-label",null==Me.bottomSheetConfig?null:Me.bottomSheetConfig.ariaLabel),s.d8E("@state",Me._animationState))},features:[s.qOj],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(_e,Me){1&_e&&s.YNc(0,re,0,0,"ng-template",0)},directives:[_.Pl],styles:[".mat-bottom-sheet-container{padding:8px 16px;min-width:100vw;box-sizing:border-box;display:block;outline:0;max-height:80vh;overflow:auto}.cdk-high-contrast-active .mat-bottom-sheet-container{outline:1px solid}.mat-bottom-sheet-container-xlarge,.mat-bottom-sheet-container-large,.mat-bottom-sheet-container-medium{border-top-left-radius:4px;border-top-right-radius:4px}.mat-bottom-sheet-container-medium{min-width:384px;max-width:calc(100vw - 128px)}.mat-bottom-sheet-container-large{min-width:512px;max-width:calc(100vw - 256px)}.mat-bottom-sheet-container-xlarge{min-width:576px;max-width:calc(100vw - 384px)}\n"],encapsulation:2,data:{animation:[W.bottomSheetState]}}),G}(),d=function(){var G=(0,c.Z)(function ce(){(0,u.Z)(this,ce)});return G.\u0275fac=function(_e){return new(_e||G)},G.\u0275mod=s.oAB({type:G}),G.\u0275inj=s.cJS({imports:[[o.U8,h.BQ,_.eL],h.BQ]}),G}(),Q=function(){function G(ce,_e){var Me=this;(0,u.Z)(this,G),this._overlayRef=_e,this._afterDismissed=new D.x,this._afterOpened=new D.x,this.containerInstance=ce,this.disableClose=ce.bottomSheetConfig.disableClose,ce._animationStateChanged.pipe((0,j.h)(function(ve){return"done"===ve.phaseName&&"visible"===ve.toState}),(0,le.q)(1)).subscribe(function(){Me._afterOpened.next(),Me._afterOpened.complete()}),ce._animationStateChanged.pipe((0,j.h)(function(ve){return"done"===ve.phaseName&&"hidden"===ve.toState}),(0,le.q)(1)).subscribe(function(){clearTimeout(Me._closeFallbackTimeout),_e.dispose()}),_e.detachments().pipe((0,le.q)(1)).subscribe(function(){Me._afterDismissed.next(Me._result),Me._afterDismissed.complete()}),(0,N.T)(_e.backdropClick(),_e.keydownEvents().pipe((0,j.h)(function(ve){return ve.keyCode===L.hY}))).subscribe(function(ve){!Me.disableClose&&("keydown"!==ve.type||!(0,L.Vb)(ve))&&(ve.preventDefault(),Me.dismiss())})}return(0,c.Z)(G,[{key:"dismiss",value:function(_e){var Me=this;this._afterDismissed.closed||(this.containerInstance._animationStateChanged.pipe((0,j.h)(function(ve){return"start"===ve.phaseName}),(0,le.q)(1)).subscribe(function(ve){Me._closeFallbackTimeout=setTimeout(function(){Me._overlayRef.dispose()},ve.totalTime+100),Me._overlayRef.detachBackdrop()}),this._result=_e,this.containerInstance.exit())}},{key:"afterDismissed",value:function(){return this._afterDismissed}},{key:"afterOpened",value:function(){return this._afterOpened}},{key:"backdropClick",value:function(){return this._overlayRef.backdropClick()}},{key:"keydownEvents",value:function(){return this._overlayRef.keydownEvents()}}]),G}(),J=new s.OlP("mat-bottom-sheet-default-options"),te=function(){var G=function(){function ce(_e,Me,ve,ue){(0,u.Z)(this,ce),this._overlay=_e,this._injector=Me,this._parentBottomSheet=ve,this._defaultOptions=ue,this._bottomSheetRefAtThisLevel=null}return(0,c.Z)(ce,[{key:"_openedBottomSheetRef",get:function(){var Me=this._parentBottomSheet;return Me?Me._openedBottomSheetRef:this._bottomSheetRefAtThisLevel},set:function(Me){this._parentBottomSheet?this._parentBottomSheet._openedBottomSheetRef=Me:this._bottomSheetRefAtThisLevel=Me}},{key:"open",value:function(Me,ve){var ue=this,lt=function K(G,ce){return Object.assign(Object.assign({},G),ce)}(this._defaultOptions||new be,ve),Xe=this._createOverlay(lt),mt=this._attachContainer(Xe,lt),wt=new Q(mt,Xe);if(Me instanceof s.Rgc)mt.attachTemplatePortal(new _.UE(Me,null,{$implicit:lt.data,bottomSheetRef:wt}));else{var Pt=new _.C5(Me,void 0,this._createInjector(lt,wt)),Pe=mt.attachComponentPortal(Pt);wt.instance=Pe.instance}return wt.afterDismissed().subscribe(function(){ue._openedBottomSheetRef==wt&&(ue._openedBottomSheetRef=null)}),this._openedBottomSheetRef?(this._openedBottomSheetRef.afterDismissed().subscribe(function(){return wt.containerInstance.enter()}),this._openedBottomSheetRef.dismiss()):wt.containerInstance.enter(),this._openedBottomSheetRef=wt,wt}},{key:"dismiss",value:function(Me){this._openedBottomSheetRef&&this._openedBottomSheetRef.dismiss(Me)}},{key:"ngOnDestroy",value:function(){this._bottomSheetRefAtThisLevel&&this._bottomSheetRefAtThisLevel.dismiss()}},{key:"_attachContainer",value:function(Me,ve){var lt=s.zs3.create({parent:ve&&ve.viewContainerRef&&ve.viewContainerRef.injector||this._injector,providers:[{provide:be,useValue:ve}]}),Xe=new _.C5(z,ve.viewContainerRef,lt);return Me.attach(Xe).instance}},{key:"_createOverlay",value:function(Me){var ve=new o.X_({direction:Me.direction,hasBackdrop:Me.hasBackdrop,disposeOnNavigation:Me.closeOnNavigation,maxWidth:"100%",scrollStrategy:Me.scrollStrategy||this._overlay.scrollStrategies.block(),positionStrategy:this._overlay.position().global().centerHorizontally().bottom("0")});return Me.backdropClass&&(ve.backdropClass=Me.backdropClass),this._overlay.create(ve)}},{key:"_createInjector",value:function(Me,ve){var ue=Me&&Me.viewContainerRef&&Me.viewContainerRef.injector,lt=[{provide:Q,useValue:ve},{provide:$,useValue:Me.data}];return Me.direction&&(!ue||!ue.get(k.Is,null,s.XFs.Optional))&<.push({provide:k.Is,useValue:{value:Me.direction,change:(0,I.of)()}}),s.zs3.create({parent:ue||this._injector,providers:lt})}}]),ce}();return G.\u0275fac=function(_e){return new(_e||G)(s.LFG(o.aV),s.LFG(s.zs3),s.LFG(G,12),s.LFG(J,8))},G.\u0275prov=s.Yz7({token:G,factory:G.\u0275fac,providedIn:d}),G}()},31959:function(Ce,E,n){"use strict";n.d(E,{Yi:function(){return j},A9:function(){return I},vV:function(){return le}});var S=n(46751),t=n(56101),e=n(71340),c=n(1884),u=n(39117),o=n(76484),_=n(89502),s=n(86613),h=n(90587),b=n(1130),T=n(84128),y=["button"],Y=["*"],q=new s.OlP("MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS"),B=new s.OlP("MatButtonToggleGroup"),k={provide:h.JU,useExisting:(0,s.Gpc)(function(){return I}),multi:!0},D=0,N=(0,c.Z)(function re(W,$){(0,u.Z)(this,re),this.source=W,this.value=$}),I=function(){var re=function(){function W($,be){(0,u.Z)(this,W),this._changeDetector=$,this._vertical=!1,this._multiple=!1,this._disabled=!1,this._controlValueAccessorChangeFn=function(){},this._onTouched=function(){},this._name="mat-button-toggle-group-".concat(D++),this.valueChange=new s.vpe,this.change=new s.vpe,this.appearance=be&&be.appearance?be.appearance:"standard"}return(0,c.Z)(W,[{key:"name",get:function(){return this._name},set:function(be){var z=this;this._name=be,this._buttonToggles&&this._buttonToggles.forEach(function(d){d.name=z._name,d._markForCheck()})}},{key:"vertical",get:function(){return this._vertical},set:function(be){this._vertical=(0,o.Ig)(be)}},{key:"value",get:function(){var be=this._selectionModel?this._selectionModel.selected:[];return this.multiple?be.map(function(z){return z.value}):be[0]?be[0].value:void 0},set:function(be){this._setSelectionByValue(be),this.valueChange.emit(this.value)}},{key:"selected",get:function(){var be=this._selectionModel?this._selectionModel.selected:[];return this.multiple?be:be[0]||null}},{key:"multiple",get:function(){return this._multiple},set:function(be){this._multiple=(0,o.Ig)(be)}},{key:"disabled",get:function(){return this._disabled},set:function(be){this._disabled=(0,o.Ig)(be),this._buttonToggles&&this._buttonToggles.forEach(function(z){return z._markForCheck()})}},{key:"ngOnInit",value:function(){this._selectionModel=new _.Ov(this.multiple,void 0,!1)}},{key:"ngAfterContentInit",value:function(){var be;(be=this._selectionModel).select.apply(be,(0,e.Z)(this._buttonToggles.filter(function(z){return z.checked})))}},{key:"writeValue",value:function(be){this.value=be,this._changeDetector.markForCheck()}},{key:"registerOnChange",value:function(be){this._controlValueAccessorChangeFn=be}},{key:"registerOnTouched",value:function(be){this._onTouched=be}},{key:"setDisabledState",value:function(be){this.disabled=be}},{key:"_emitChangeEvent",value:function(){var be=this.selected,z=Array.isArray(be)?be[be.length-1]:be,d=new N(z,this.value);this._controlValueAccessorChangeFn(d.value),this.change.emit(d)}},{key:"_syncButtonToggle",value:function(be,z){var d=this,Q=arguments.length>2&&void 0!==arguments[2]&&arguments[2],J=arguments.length>3&&void 0!==arguments[3]&&arguments[3];!this.multiple&&this.selected&&!be.checked&&(this.selected.checked=!1),this._selectionModel?z?this._selectionModel.select(be):this._selectionModel.deselect(be):J=!0,J?Promise.resolve().then(function(){return d._updateModelValue(Q)}):this._updateModelValue(Q)}},{key:"_isSelected",value:function(be){return this._selectionModel&&this._selectionModel.isSelected(be)}},{key:"_isPrechecked",value:function(be){return void 0!==this._rawValue&&(this.multiple&&Array.isArray(this._rawValue)?this._rawValue.some(function(z){return null!=be.value&&z===be.value}):be.value===this._rawValue)}},{key:"_setSelectionByValue",value:function(be){var z=this;this._rawValue=be,this._buttonToggles&&(this.multiple&&be?(Array.isArray(be),this._clearSelection(),be.forEach(function(d){return z._selectValue(d)})):(this._clearSelection(),this._selectValue(be)))}},{key:"_clearSelection",value:function(){this._selectionModel.clear(),this._buttonToggles.forEach(function(be){return be.checked=!1})}},{key:"_selectValue",value:function(be){var z=this._buttonToggles.find(function(d){return null!=d.value&&d.value===be});z&&(z.checked=!0,this._selectionModel.select(z))}},{key:"_updateModelValue",value:function(be){be&&this._emitChangeEvent(),this.valueChange.emit(this.value)}}]),W}();return re.\u0275fac=function($){return new($||re)(s.Y36(s.sBO),s.Y36(q,8))},re.\u0275dir=s.lG2({type:re,selectors:[["mat-button-toggle-group"]],contentQueries:function($,be,z){var d;1&$&&s.Suo(z,j,5),2&$&&s.iGM(d=s.CRH())&&(be._buttonToggles=d)},hostAttrs:["role","group",1,"mat-button-toggle-group"],hostVars:5,hostBindings:function($,be){2&$&&(s.uIk("aria-disabled",be.disabled),s.ekj("mat-button-toggle-vertical",be.vertical)("mat-button-toggle-group-appearance-standard","standard"===be.appearance))},inputs:{appearance:"appearance",name:"name",vertical:"vertical",value:"value",multiple:"multiple",disabled:"disabled"},outputs:{valueChange:"valueChange",change:"change"},exportAs:["matButtonToggleGroup"],features:[s._Bn([k,{provide:B,useExisting:re}])]}),re}(),L=(0,b.Kr)(function(){return(0,c.Z)(function re(){(0,u.Z)(this,re)})}()),j=function(){var re=function(W){(0,S.Z)(be,W);var $=(0,t.Z)(be);function be(z,d,Q,J,te,K){var G;(0,u.Z)(this,be),(G=$.call(this))._changeDetectorRef=d,G._elementRef=Q,G._focusMonitor=J,G._isSingleSelector=!1,G._checked=!1,G.ariaLabelledby=null,G._disabled=!1,G.change=new s.vpe;var ce=Number(te);return G.tabIndex=ce||0===ce?ce:null,G.buttonToggleGroup=z,G.appearance=K&&K.appearance?K.appearance:"standard",G}return(0,c.Z)(be,[{key:"buttonId",get:function(){return"".concat(this.id,"-button")}},{key:"appearance",get:function(){return this.buttonToggleGroup?this.buttonToggleGroup.appearance:this._appearance},set:function(d){this._appearance=d}},{key:"checked",get:function(){return this.buttonToggleGroup?this.buttonToggleGroup._isSelected(this):this._checked},set:function(d){var Q=(0,o.Ig)(d);Q!==this._checked&&(this._checked=Q,this.buttonToggleGroup&&this.buttonToggleGroup._syncButtonToggle(this,this._checked),this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled||this.buttonToggleGroup&&this.buttonToggleGroup.disabled},set:function(d){this._disabled=(0,o.Ig)(d)}},{key:"ngOnInit",value:function(){var d=this.buttonToggleGroup;this._isSingleSelector=d&&!d.multiple,this.id=this.id||"mat-button-toggle-".concat(D++),this._isSingleSelector&&(this.name=d.name),d&&(d._isPrechecked(this)?this.checked=!0:d._isSelected(this)!==this._checked&&d._syncButtonToggle(this,this._checked))}},{key:"ngAfterViewInit",value:function(){this._focusMonitor.monitor(this._elementRef,!0)}},{key:"ngOnDestroy",value:function(){var d=this.buttonToggleGroup;this._focusMonitor.stopMonitoring(this._elementRef),d&&d._isSelected(this)&&d._syncButtonToggle(this,!1,!1,!0)}},{key:"focus",value:function(d){this._buttonElement.nativeElement.focus(d)}},{key:"_onButtonClick",value:function(){var d=!!this._isSingleSelector||!this._checked;d!==this._checked&&(this._checked=d,this.buttonToggleGroup&&(this.buttonToggleGroup._syncButtonToggle(this,this._checked,!0),this.buttonToggleGroup._onTouched())),this.change.emit(new N(this,this.value))}},{key:"_markForCheck",value:function(){this._changeDetectorRef.markForCheck()}}]),be}(L);return re.\u0275fac=function($){return new($||re)(s.Y36(B,8),s.Y36(s.sBO),s.Y36(s.SBq),s.Y36(T.tE),s.$8M("tabindex"),s.Y36(q,8))},re.\u0275cmp=s.Xpm({type:re,selectors:[["mat-button-toggle"]],viewQuery:function($,be){var z;1&$&&s.Gf(y,5),2&$&&s.iGM(z=s.CRH())&&(be._buttonElement=z.first)},hostAttrs:["role","presentation",1,"mat-button-toggle"],hostVars:12,hostBindings:function($,be){1&$&&s.NdJ("focus",function(){return be.focus()}),2&$&&(s.uIk("aria-label",null)("aria-labelledby",null)("id",be.id)("name",null),s.ekj("mat-button-toggle-standalone",!be.buttonToggleGroup)("mat-button-toggle-checked",be.checked)("mat-button-toggle-disabled",be.disabled)("mat-button-toggle-appearance-standard","standard"===be.appearance))},inputs:{disableRipple:"disableRipple",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",name:"name",value:"value",tabIndex:"tabIndex",appearance:"appearance",checked:"checked",disabled:"disabled"},outputs:{change:"change"},exportAs:["matButtonToggle"],features:[s.qOj],ngContentSelectors:Y,decls:6,vars:9,consts:[["type","button",1,"mat-button-toggle-button","mat-focus-indicator",3,"id","disabled","click"],["button",""],[1,"mat-button-toggle-label-content"],[1,"mat-button-toggle-focus-overlay"],["matRipple","",1,"mat-button-toggle-ripple",3,"matRippleTrigger","matRippleDisabled"]],template:function($,be){if(1&$&&(s.F$t(),s.TgZ(0,"button",0,1),s.NdJ("click",function(){return be._onButtonClick()}),s.TgZ(2,"span",2),s.Hsn(3),s.qZA(),s.qZA(),s._UZ(4,"span",3),s._UZ(5,"span",4)),2&$){var z=s.MAs(1);s.Q6J("id",be.buttonId)("disabled",be.disabled||null),s.uIk("tabindex",be.disabled?-1:be.tabIndex)("aria-pressed",be.checked)("name",be.name||null)("aria-label",be.ariaLabel)("aria-labelledby",be.ariaLabelledby),s.xp6(5),s.Q6J("matRippleTrigger",z)("matRippleDisabled",be.disableRipple||be.disabled)}},directives:[b.wG],styles:[".mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;border-radius:2px;-webkit-tap-highlight-color:transparent}.cdk-high-contrast-active .mat-button-toggle-standalone,.cdk-high-contrast-active .mat-button-toggle-group{outline:solid 1px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:4px}.cdk-high-contrast-active .mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.cdk-high-contrast-active .mat-button-toggle-group-appearance-standard{outline:0}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:1}.cdk-high-contrast-active .mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:.5}.mat-button-toggle-appearance-standard:not(.mat-button-toggle-disabled):hover .mat-button-toggle-focus-overlay{opacity:.04}.mat-button-toggle-appearance-standard.cdk-keyboard-focused:not(.mat-button-toggle-disabled) .mat-button-toggle-focus-overlay{opacity:.12}.cdk-high-contrast-active .mat-button-toggle-appearance-standard.cdk-keyboard-focused:not(.mat-button-toggle-disabled) .mat-button-toggle-focus-overlay{opacity:.5}@media(hover: none){.mat-button-toggle-appearance-standard:not(.mat-button-toggle-disabled):hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-block;line-height:36px;padding:0 16px;position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{border-radius:inherit;pointer-events:none;opacity:0;top:0;left:0;right:0;bottom:0;position:absolute}.mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 36px}.cdk-high-contrast-active .mat-button-toggle-checked .mat-button-toggle-focus-overlay{opacity:.5;height:0}.cdk-high-contrast-active .mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}\n"],encapsulation:2,changeDetection:0}),re}(),le=function(){var re=(0,c.Z)(function W(){(0,u.Z)(this,W)});return re.\u0275fac=function($){return new($||re)},re.\u0275mod=s.oAB({type:re}),re.\u0275inj=s.cJS({imports:[[b.BQ,b.si],b.BQ]}),re}()},87317:function(Ce,E,n){"use strict";n.d(E,{zs:function(){return I},lW:function(){return N},ot:function(){return L}});var S=n(97424),t=n(28042),e=n(44014),c=n(46751),u=n(56101),o=n(1884),_=n(39117),s=n(86613),h=n(1130),b=n(57481),T=n(84128),y=["mat-button",""],Y=["*"],k=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],D=(0,h.pj)((0,h.Id)((0,h.Kr)(function(){return(0,o.Z)(function j(le){(0,_.Z)(this,j),this._elementRef=le})}()))),N=function(){var j=function(le){(0,c.Z)(W,le);var re=(0,u.Z)(W);function W($,be,z){var d;(0,_.Z)(this,W),(d=re.call(this,$))._focusMonitor=be,d._animationMode=z,d.isRoundButton=d._hasHostAttributes("mat-fab","mat-mini-fab"),d.isIconButton=d._hasHostAttributes("mat-icon-button");var J,Q=(0,e.Z)(k);try{for(Q.s();!(J=Q.n()).done;){var te=J.value;d._hasHostAttributes(te)&&d._getHostElement().classList.add(te)}}catch(K){Q.e(K)}finally{Q.f()}return $.nativeElement.classList.add("mat-button-base"),d.isRoundButton&&(d.color="accent"),d}return(0,o.Z)(W,[{key:"ngAfterViewInit",value:function(){this._focusMonitor.monitor(this._elementRef,!0)}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"focus",value:function(be,z){be?this._focusMonitor.focusVia(this._getHostElement(),be,z):this._getHostElement().focus(z)}},{key:"_getHostElement",value:function(){return this._elementRef.nativeElement}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_hasHostAttributes",value:function(){for(var be=this,z=arguments.length,d=new Array(z),Q=0;Q*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),j}(),I=function(){var j=function(le){(0,c.Z)(W,le);var re=(0,u.Z)(W);function W($,be,z,d){var Q;return(0,_.Z)(this,W),(Q=re.call(this,be,$,z))._ngZone=d,Q._haltDisabledEvents=function(J){Q.disabled&&(J.preventDefault(),J.stopImmediatePropagation())},Q}return(0,o.Z)(W,[{key:"ngAfterViewInit",value:function(){var be=this;(0,S.Z)((0,t.Z)(W.prototype),"ngAfterViewInit",this).call(this),this._ngZone?this._ngZone.runOutsideAngular(function(){be._elementRef.nativeElement.addEventListener("click",be._haltDisabledEvents)}):this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}},{key:"ngOnDestroy",value:function(){(0,S.Z)((0,t.Z)(W.prototype),"ngOnDestroy",this).call(this),this._elementRef.nativeElement.removeEventListener("click",this._haltDisabledEvents)}}]),W}(N);return j.\u0275fac=function(re){return new(re||j)(s.Y36(T.tE),s.Y36(s.SBq),s.Y36(b.Qb,8),s.Y36(s.R0b,8))},j.\u0275cmp=s.Xpm({type:j,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(re,W){2&re&&(s.uIk("tabindex",W.disabled?-1:W.tabIndex||0)("disabled",W.disabled||null)("aria-disabled",W.disabled.toString()),s.ekj("_mat-animation-noopable","NoopAnimations"===W._animationMode)("mat-button-disabled",W.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[s.qOj],attrs:y,ngContentSelectors:Y,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(re,W){1&re&&(s.F$t(),s.TgZ(0,"span",0),s.Hsn(1),s.qZA(),s._UZ(2,"span",1),s._UZ(3,"span",2)),2&re&&(s.xp6(2),s.ekj("mat-button-ripple-round",W.isRoundButton||W.isIconButton),s.Q6J("matRippleDisabled",W._isRippleDisabled())("matRippleCentered",W.isIconButton)("matRippleTrigger",W._getHostElement()))},directives:[h.wG],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),j}(),L=function(){var j=(0,o.Z)(function le(){(0,_.Z)(this,le)});return j.\u0275fac=function(re){return new(re||j)},j.\u0275mod=s.oAB({type:j}),j.\u0275inj=s.cJS({imports:[[h.si,h.BQ],h.BQ]}),j}()},11961:function(Ce,E,n){"use strict";n.d(E,{a8:function(){return re},hq:function(){return B},dn:function(){return y},QW:function(){return be},n5:function(){return Y}});var S=n(1884),t=n(39117),e=n(86613),c=n(57481),u=n(1130),o=["*",[["mat-card-footer"]]],_=["*","mat-card-footer"],y=function(){var z=(0,S.Z)(function d(){(0,t.Z)(this,d)});return z.\u0275fac=function(Q){return new(Q||z)},z.\u0275dir=e.lG2({type:z,selectors:[["mat-card-content"],["","mat-card-content",""],["","matCardContent",""]],hostAttrs:[1,"mat-card-content"]}),z}(),Y=function(){var z=(0,S.Z)(function d(){(0,t.Z)(this,d)});return z.\u0275fac=function(Q){return new(Q||z)},z.\u0275dir=e.lG2({type:z,selectors:[["mat-card-title"],["","mat-card-title",""],["","matCardTitle",""]],hostAttrs:[1,"mat-card-title"]}),z}(),B=function(){var z=(0,S.Z)(function d(){(0,t.Z)(this,d),this.align="start"});return z.\u0275fac=function(Q){return new(Q||z)},z.\u0275dir=e.lG2({type:z,selectors:[["mat-card-actions"]],hostAttrs:[1,"mat-card-actions"],hostVars:2,hostBindings:function(Q,J){2&Q&&e.ekj("mat-card-actions-align-end","end"===J.align)},inputs:{align:"align"},exportAs:["matCardActions"]}),z}(),re=function(){var z=(0,S.Z)(function d(Q){(0,t.Z)(this,d),this._animationMode=Q});return z.\u0275fac=function(Q){return new(Q||z)(e.Y36(c.Qb,8))},z.\u0275cmp=e.Xpm({type:z,selectors:[["mat-card"]],hostAttrs:[1,"mat-card","mat-focus-indicator"],hostVars:2,hostBindings:function(Q,J){2&Q&&e.ekj("_mat-animation-noopable","NoopAnimations"===J._animationMode)},exportAs:["matCard"],ngContentSelectors:_,decls:2,vars:0,template:function(Q,J){1&Q&&(e.F$t(o),e.Hsn(0),e.Hsn(1,1))},styles:[".mat-card{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:block;position:relative;padding:16px;border-radius:4px}._mat-animation-noopable.mat-card{transition:none;animation:none}.mat-card .mat-divider-horizontal{position:absolute;left:0;width:100%}[dir=rtl] .mat-card .mat-divider-horizontal{left:auto;right:0}.mat-card .mat-divider-horizontal.mat-divider-inset{position:static;margin:0}[dir=rtl] .mat-card .mat-divider-horizontal.mat-divider-inset{margin-right:0}.cdk-high-contrast-active .mat-card{outline:solid 1px}.mat-card-actions,.mat-card-subtitle,.mat-card-content{display:block;margin-bottom:16px}.mat-card-title{display:block;margin-bottom:8px}.mat-card-actions{margin-left:-8px;margin-right:-8px;padding:8px 0}.mat-card-actions-align-end{display:flex;justify-content:flex-end}.mat-card-image{width:calc(100% + 32px);margin:0 -16px 16px -16px;display:block;overflow:hidden}.mat-card-image img{width:100%}.mat-card-footer{display:block;margin:0 -16px -16px -16px}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button,.mat-card-actions .mat-stroked-button{margin:0 8px}.mat-card-header{display:flex;flex-direction:row}.mat-card-header .mat-card-title{margin-bottom:12px}.mat-card-header-text{margin:0 16px}.mat-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.mat-card-title-group{display:flex;justify-content:space-between}.mat-card-sm-image{width:80px;height:80px}.mat-card-md-image{width:112px;height:112px}.mat-card-lg-image{width:152px;height:152px}.mat-card-xl-image{width:240px;height:240px;margin:-8px}.mat-card-title-group>.mat-card-xl-image{margin:-8px 0 8px}@media(max-width: 599px){.mat-card-title-group{margin:0}.mat-card-xl-image{margin-left:0;margin-right:0}}.mat-card>:first-child,.mat-card-content>:first-child{margin-top:0}.mat-card>:last-child:not(.mat-card-footer),.mat-card-content>:last-child:not(.mat-card-footer){margin-bottom:0}.mat-card-image:first-child{margin-top:-16px;border-top-left-radius:inherit;border-top-right-radius:inherit}.mat-card>.mat-card-actions:last-child{margin-bottom:-8px;padding-bottom:0}.mat-card-actions:not(.mat-card-actions-align-end) .mat-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-raised-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-stroked-button:first-child{margin-left:0;margin-right:0}.mat-card-actions-align-end .mat-button:last-child,.mat-card-actions-align-end .mat-raised-button:last-child,.mat-card-actions-align-end .mat-stroked-button:last-child{margin-left:0;margin-right:0}.mat-card-title:not(:first-child),.mat-card-subtitle:not(:first-child){margin-top:-4px}.mat-card-header .mat-card-subtitle:not(:first-child){margin-top:-8px}.mat-card>.mat-card-xl-image:first-child{margin-top:-8px}.mat-card>.mat-card-xl-image:last-child{margin-bottom:-8px}\n"],encapsulation:2,changeDetection:0}),z}(),be=function(){var z=(0,S.Z)(function d(){(0,t.Z)(this,d)});return z.\u0275fac=function(Q){return new(Q||z)},z.\u0275mod=e.oAB({type:z}),z.\u0275inj=e.cJS({imports:[[u.BQ],u.BQ]}),z}()},61534:function(Ce,E,n){"use strict";n.d(E,{oG:function(){return le},p9:function(){return be}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(76484),o=n(86613),_=n(90587),s=n(1130),h=n(57481),b=n(84128),T=n(35837),y=["input"],Y=function(d){return{enterDuration:d}},q=["*"],B=new o.OlP("mat-checkbox-default-options",{providedIn:"root",factory:k});function k(){return{color:"accent",clickAction:"check-indeterminate"}}var D=0,N=k(),I={provide:_.JU,useExisting:(0,o.Gpc)(function(){return le}),multi:!0},L=(0,e.Z)(function z(){(0,c.Z)(this,z)}),j=(0,s.sb)((0,s.pj)((0,s.Kr)((0,s.Id)(function(){return(0,e.Z)(function z(d){(0,c.Z)(this,z),this._elementRef=d})}())))),le=function(){var z=function(d){(0,S.Z)(J,d);var Q=(0,t.Z)(J);function J(te,K,G,ce,_e,Me,ve){var ue;return(0,c.Z)(this,J),(ue=Q.call(this,te))._changeDetectorRef=K,ue._focusMonitor=G,ue._ngZone=ce,ue._animationMode=Me,ue._options=ve,ue.ariaLabel="",ue.ariaLabelledby=null,ue._uniqueId="mat-checkbox-".concat(++D),ue.id=ue._uniqueId,ue.labelPosition="after",ue.name=null,ue.change=new o.vpe,ue.indeterminateChange=new o.vpe,ue._onTouched=function(){},ue._currentAnimationClass="",ue._currentCheckState=0,ue._controlValueAccessorChangeFn=function(){},ue._checked=!1,ue._disabled=!1,ue._indeterminate=!1,ue._options=ue._options||N,ue.color=ue.defaultColor=ue._options.color||N.color,ue.tabIndex=parseInt(_e)||0,ue}return(0,e.Z)(J,[{key:"inputId",get:function(){return"".concat(this.id||this._uniqueId,"-input")}},{key:"required",get:function(){return this._required},set:function(K){this._required=(0,u.Ig)(K)}},{key:"ngAfterViewInit",value:function(){var K=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(G){G||Promise.resolve().then(function(){K._onTouched(),K._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}},{key:"ngAfterViewChecked",value:function(){}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"checked",get:function(){return this._checked},set:function(K){K!=this.checked&&(this._checked=K,this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(K){var G=(0,u.Ig)(K);G!==this.disabled&&(this._disabled=G,this._changeDetectorRef.markForCheck())}},{key:"indeterminate",get:function(){return this._indeterminate},set:function(K){var G=K!=this._indeterminate;this._indeterminate=(0,u.Ig)(K),G&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_onLabelTextChange",value:function(){this._changeDetectorRef.detectChanges()}},{key:"writeValue",value:function(K){this.checked=!!K}},{key:"registerOnChange",value:function(K){this._controlValueAccessorChangeFn=K}},{key:"registerOnTouched",value:function(K){this._onTouched=K}},{key:"setDisabledState",value:function(K){this.disabled=K}},{key:"_getAriaChecked",value:function(){return this.checked?"true":this.indeterminate?"mixed":"false"}},{key:"_transitionCheckState",value:function(K){var G=this._currentCheckState,ce=this._elementRef.nativeElement;if(G!==K&&(this._currentAnimationClass.length>0&&ce.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(G,K),this._currentCheckState=K,this._currentAnimationClass.length>0)){ce.classList.add(this._currentAnimationClass);var _e=this._currentAnimationClass;this._ngZone.runOutsideAngular(function(){setTimeout(function(){ce.classList.remove(_e)},1e3)})}}},{key:"_emitChangeEvent",value:function(){var K=new L;K.source=this,K.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(K),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}},{key:"toggle",value:function(){this.checked=!this.checked}},{key:"_onInputClick",value:function(K){var ce,G=this,_e=null===(ce=this._options)||void 0===ce?void 0:ce.clickAction;K.stopPropagation(),this.disabled||"noop"===_e?!this.disabled&&"noop"===_e&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==_e&&Promise.resolve().then(function(){G._indeterminate=!1,G.indeterminateChange.emit(G._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}},{key:"focus",value:function(K,G){K?this._focusMonitor.focusVia(this._inputElement,K,G):this._inputElement.nativeElement.focus(G)}},{key:"_onInteractionEvent",value:function(K){K.stopPropagation()}},{key:"_getAnimationClassForCheckStateTransition",value:function(K,G){if("NoopAnimations"===this._animationMode)return"";var ce="";switch(K){case 0:if(1===G)ce="unchecked-checked";else{if(3!=G)return"";ce="unchecked-indeterminate"}break;case 2:ce=1===G?"unchecked-checked":"unchecked-indeterminate";break;case 1:ce=2===G?"checked-unchecked":"checked-indeterminate";break;case 3:ce=1===G?"indeterminate-checked":"indeterminate-unchecked"}return"mat-checkbox-anim-".concat(ce)}},{key:"_syncIndeterminate",value:function(K){var G=this._inputElement;G&&(G.nativeElement.indeterminate=K)}}]),J}(j);return z.\u0275fac=function(Q){return new(Q||z)(o.Y36(o.SBq),o.Y36(o.sBO),o.Y36(b.tE),o.Y36(o.R0b),o.$8M("tabindex"),o.Y36(h.Qb,8),o.Y36(B,8))},z.\u0275cmp=o.Xpm({type:z,selectors:[["mat-checkbox"]],viewQuery:function(Q,J){var te;1&Q&&(o.Gf(y,5),o.Gf(s.wG,5)),2&Q&&(o.iGM(te=o.CRH())&&(J._inputElement=te.first),o.iGM(te=o.CRH())&&(J.ripple=te.first))},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(Q,J){2&Q&&(o.Ikx("id",J.id),o.uIk("tabindex",null),o.ekj("mat-checkbox-indeterminate",J.indeterminate)("mat-checkbox-checked",J.checked)("mat-checkbox-disabled",J.disabled)("mat-checkbox-label-before","before"==J.labelPosition)("_mat-animation-noopable","NoopAnimations"===J._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],id:"id",required:"required",labelPosition:"labelPosition",name:"name",value:"value",checked:"checked",disabled:"disabled",indeterminate:"indeterminate"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[o._Bn([I]),o.qOj],ngContentSelectors:q,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(Q,J){if(1&Q&&(o.F$t(),o.TgZ(0,"label",0,1),o.TgZ(2,"span",2),o.TgZ(3,"input",3,4),o.NdJ("change",function(ce){return J._onInteractionEvent(ce)})("click",function(ce){return J._onInputClick(ce)}),o.qZA(),o.TgZ(5,"span",5),o._UZ(6,"span",6),o.qZA(),o._UZ(7,"span",7),o.TgZ(8,"span",8),o.O4$(),o.TgZ(9,"svg",9),o._UZ(10,"path",10),o.qZA(),o.kcU(),o._UZ(11,"span",11),o.qZA(),o.qZA(),o.TgZ(12,"span",12,13),o.NdJ("cdkObserveContent",function(){return J._onLabelTextChange()}),o.TgZ(14,"span",14),o._uU(15,"\xa0"),o.qZA(),o.Hsn(16),o.qZA(),o.qZA()),2&Q){var te=o.MAs(1),K=o.MAs(13);o.uIk("for",J.inputId),o.xp6(2),o.ekj("mat-checkbox-inner-container-no-side-margin",!K.textContent||!K.textContent.trim()),o.xp6(1),o.Q6J("id",J.inputId)("required",J.required)("checked",J.checked)("disabled",J.disabled)("tabIndex",J.tabIndex),o.uIk("value",J.value)("name",J.name)("aria-label",J.ariaLabel||null)("aria-labelledby",J.ariaLabelledby)("aria-checked",J._getAriaChecked())("aria-describedby",J.ariaDescribedby),o.xp6(2),o.Q6J("matRippleTrigger",te)("matRippleDisabled",J._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",o.VKq(19,Y,"NoopAnimations"===J._animationMode?0:150))}},directives:[s.wG,T.wD],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),z}(),$=function(){var z=(0,e.Z)(function d(){(0,c.Z)(this,d)});return z.\u0275fac=function(Q){return new(Q||z)},z.\u0275mod=o.oAB({type:z}),z.\u0275inj=o.cJS({}),z}(),be=function(){var z=(0,e.Z)(function d(){(0,c.Z)(this,d)});return z.\u0275fac=function(Q){return new(Q||z)},z.\u0275mod=o.oAB({type:z}),z.\u0275inj=o.cJS({imports:[[s.si,s.BQ,T.Q8,$],s.BQ,$]}),z}()},81196:function(Ce,E,n){"use strict";n.d(E,{HS:function(){return G},oH:function(){return ve},qn:function(){return mt},qH:function(){return ce},Hi:function(){return Pt}});var S=n(71340),t=n(45632),e=n(46751),c=n(56101),u=n(1884),o=n(39117),_=n(75939),s=n(86613),h=n(1130),b=n(76484),T=n(36362),y=n(57481),Y=n(50253),q=n(36646),B=n(59295),k=n(68951),D=n(44874),N=n(14390),I=n(84128),L=n(89502),j=n(90587),le=n(44770),re=n(51588),W=["*"],be=new s.OlP("MatChipRemove"),z=new s.OlP("MatChipAvatar"),d=new s.OlP("MatChipTrailingIcon"),J=(0,h.sb)((0,h.pj)((0,h.Kr)((0,u.Z)(function Pe(ze){(0,o.Z)(this,Pe),this._elementRef=ze})),"primary"),-1),G=function(){var Pe=function(ze){(0,e.Z)(ct,ze);var ft=(0,c.Z)(ct);function ct(Ee,st,nt,at,We,xe,ut,Fe){var et;return(0,o.Z)(this,ct),(et=ft.call(this,Ee))._ngZone=st,et._changeDetectorRef=We,et._hasFocus=!1,et.chipListSelectable=!0,et._chipListMultiple=!1,et._chipListDisabled=!1,et._selected=!1,et._selectable=!0,et._disabled=!1,et._removable=!0,et._onFocus=new Y.x,et._onBlur=new Y.x,et.selectionChange=new s.vpe,et.destroyed=new s.vpe,et.removed=new s.vpe,et._addHostClassName(),et._chipRippleTarget=xe.createElement("div"),et._chipRippleTarget.classList.add("mat-chip-ripple"),et._elementRef.nativeElement.appendChild(et._chipRippleTarget),et._chipRipple=new h.IR((0,t.Z)(et),st,et._chipRippleTarget,nt),et._chipRipple.setupTriggerEvents(Ee),et.rippleConfig=at||{},et._animationsDisabled="NoopAnimations"===ut,et.tabIndex=null!=Fe&&parseInt(Fe)||-1,et}return(0,u.Z)(ct,[{key:"rippleDisabled",get:function(){return this.disabled||this.disableRipple||this._animationsDisabled||!!this.rippleConfig.disabled}},{key:"selected",get:function(){return this._selected},set:function(st){var nt=(0,b.Ig)(st);nt!==this._selected&&(this._selected=nt,this._dispatchSelectionChange())}},{key:"value",get:function(){return void 0!==this._value?this._value:this._elementRef.nativeElement.textContent},set:function(st){this._value=st}},{key:"selectable",get:function(){return this._selectable&&this.chipListSelectable},set:function(st){this._selectable=(0,b.Ig)(st)}},{key:"disabled",get:function(){return this._chipListDisabled||this._disabled},set:function(st){this._disabled=(0,b.Ig)(st)}},{key:"removable",get:function(){return this._removable},set:function(st){this._removable=(0,b.Ig)(st)}},{key:"ariaSelected",get:function(){return this.selectable&&(this._chipListMultiple||this.selected)?this.selected.toString():null}},{key:"_addHostClassName",value:function(){var st="mat-basic-chip",nt=this._elementRef.nativeElement;nt.hasAttribute(st)||nt.tagName.toLowerCase()===st?nt.classList.add(st):nt.classList.add("mat-standard-chip")}},{key:"ngOnDestroy",value:function(){this.destroyed.emit({chip:this}),this._chipRipple._removeTriggerEvents()}},{key:"select",value:function(){this._selected||(this._selected=!0,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}},{key:"deselect",value:function(){this._selected&&(this._selected=!1,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}},{key:"selectViaInteraction",value:function(){this._selected||(this._selected=!0,this._dispatchSelectionChange(!0),this._changeDetectorRef.markForCheck())}},{key:"toggleSelected",value:function(){var st=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this._selected=!this.selected,this._dispatchSelectionChange(st),this._changeDetectorRef.markForCheck(),this.selected}},{key:"focus",value:function(){this._hasFocus||(this._elementRef.nativeElement.focus(),this._onFocus.next({chip:this})),this._hasFocus=!0}},{key:"remove",value:function(){this.removable&&this.removed.emit({chip:this})}},{key:"_handleClick",value:function(st){this.disabled&&st.preventDefault()}},{key:"_handleKeydown",value:function(st){if(!this.disabled)switch(st.keyCode){case _.yY:case _.ZH:this.remove(),st.preventDefault();break;case _.L_:this.selectable&&this.toggleSelected(!0),st.preventDefault()}}},{key:"_blur",value:function(){var st=this;this._ngZone.onStable.pipe((0,B.q)(1)).subscribe(function(){st._ngZone.run(function(){st._hasFocus=!1,st._onBlur.next({chip:st})})})}},{key:"_dispatchSelectionChange",value:function(){var st=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.selectionChange.emit({source:this,isUserInput:st,selected:this._selected})}}]),ct}(J);return Pe.\u0275fac=function(ft){return new(ft||Pe)(s.Y36(s.SBq),s.Y36(s.R0b),s.Y36(N.t4),s.Y36(h.Y2,8),s.Y36(s.sBO),s.Y36(T.K0),s.Y36(y.Qb,8),s.$8M("tabindex"))},Pe.\u0275dir=s.lG2({type:Pe,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(ft,ct,Ee){var st;1&ft&&(s.Suo(Ee,z,5),s.Suo(Ee,d,5),s.Suo(Ee,be,5)),2&ft&&(s.iGM(st=s.CRH())&&(ct.avatar=st.first),s.iGM(st=s.CRH())&&(ct.trailingIcon=st.first),s.iGM(st=s.CRH())&&(ct.removeIcon=st.first))},hostAttrs:["role","option",1,"mat-chip","mat-focus-indicator"],hostVars:14,hostBindings:function(ft,ct){1&ft&&s.NdJ("click",function(st){return ct._handleClick(st)})("keydown",function(st){return ct._handleKeydown(st)})("focus",function(){return ct.focus()})("blur",function(){return ct._blur()}),2&ft&&(s.uIk("tabindex",ct.disabled?null:ct.tabIndex)("disabled",ct.disabled||null)("aria-disabled",ct.disabled.toString())("aria-selected",ct.ariaSelected),s.ekj("mat-chip-selected",ct.selected)("mat-chip-with-avatar",ct.avatar)("mat-chip-with-trailing-icon",ct.trailingIcon||ct.removeIcon)("mat-chip-disabled",ct.disabled)("_mat-animation-noopable",ct._animationsDisabled))},inputs:{color:"color",disableRipple:"disableRipple",tabIndex:"tabIndex",selected:"selected",value:"value",selectable:"selectable",disabled:"disabled",removable:"removable"},outputs:{selectionChange:"selectionChange",destroyed:"destroyed",removed:"removed"},exportAs:["matChip"],features:[s.qOj]}),Pe}(),ce=function(){var Pe=function(){function ze(ft,ct){(0,o.Z)(this,ze),this._parentChip=ft,"BUTTON"===ct.nativeElement.nodeName&&ct.nativeElement.setAttribute("type","button")}return(0,u.Z)(ze,[{key:"_handleClick",value:function(ct){var Ee=this._parentChip;Ee.removable&&!Ee.disabled&&Ee.remove(),ct.stopPropagation()}}]),ze}();return Pe.\u0275fac=function(ft){return new(ft||Pe)(s.Y36(G),s.Y36(s.SBq))},Pe.\u0275dir=s.lG2({type:Pe,selectors:[["","matChipRemove",""]],hostAttrs:[1,"mat-chip-remove","mat-chip-trailing-icon"],hostBindings:function(ft,ct){1&ft&&s.NdJ("click",function(st){return ct._handleClick(st)})},features:[s._Bn([{provide:be,useExisting:Pe}])]}),Pe}(),_e=new s.OlP("mat-chips-default-options"),Me=0,ve=function(){var Pe=function(){function ze(ft,ct){(0,o.Z)(this,ze),this._elementRef=ft,this._defaultOptions=ct,this.focused=!1,this._addOnBlur=!1,this.separatorKeyCodes=this._defaultOptions.separatorKeyCodes,this.chipEnd=new s.vpe,this.placeholder="",this.id="mat-chip-list-input-".concat(Me++),this._disabled=!1,this.inputElement=this._elementRef.nativeElement}return(0,u.Z)(ze,[{key:"chipList",set:function(ct){ct&&(this._chipList=ct,this._chipList.registerInput(this))}},{key:"addOnBlur",get:function(){return this._addOnBlur},set:function(ct){this._addOnBlur=(0,b.Ig)(ct)}},{key:"disabled",get:function(){return this._disabled||this._chipList&&this._chipList.disabled},set:function(ct){this._disabled=(0,b.Ig)(ct)}},{key:"empty",get:function(){return!this.inputElement.value}},{key:"ngOnChanges",value:function(){this._chipList.stateChanges.next()}},{key:"ngOnDestroy",value:function(){this.chipEnd.complete()}},{key:"ngAfterContentInit",value:function(){this._focusLastChipOnBackspace=this.empty}},{key:"_keydown",value:function(ct){if(ct){if(ct.keyCode===_.Mf&&!(0,_.Vb)(ct,"shiftKey")&&this._chipList._allowFocusEscape(),ct.keyCode===_.ZH&&this._focusLastChipOnBackspace)return this._chipList._keyManager.setLastItemActive(),void ct.preventDefault();this._focusLastChipOnBackspace=!1}this._emitChipEnd(ct)}},{key:"_keyup",value:function(ct){!this._focusLastChipOnBackspace&&ct.keyCode===_.ZH&&this.empty&&(this._focusLastChipOnBackspace=!0,ct.preventDefault())}},{key:"_blur",value:function(){this.addOnBlur&&this._emitChipEnd(),this.focused=!1,this._chipList.focused||this._chipList._blur(),this._chipList.stateChanges.next()}},{key:"_focus",value:function(){this.focused=!0,this._focusLastChipOnBackspace=this.empty,this._chipList.stateChanges.next()}},{key:"_emitChipEnd",value:function(ct){!this.inputElement.value&&!!ct&&this._chipList._keydown(ct),(!ct||this._isSeparatorKey(ct))&&(this.chipEnd.emit({input:this.inputElement,value:this.inputElement.value,chipInput:this}),null==ct||ct.preventDefault())}},{key:"_onInput",value:function(){this._chipList.stateChanges.next()}},{key:"focus",value:function(ct){this.inputElement.focus(ct)}},{key:"clear",value:function(){this.inputElement.value="",this._focusLastChipOnBackspace=!0}},{key:"_isSeparatorKey",value:function(ct){return!(0,_.Vb)(ct)&&new Set(this.separatorKeyCodes).has(ct.keyCode)}}]),ze}();return Pe.\u0275fac=function(ft){return new(ft||Pe)(s.Y36(s.SBq),s.Y36(_e))},Pe.\u0275dir=s.lG2({type:Pe,selectors:[["input","matChipInputFor",""]],hostAttrs:[1,"mat-chip-input","mat-input-element"],hostVars:5,hostBindings:function(ft,ct){1&ft&&s.NdJ("keydown",function(st){return ct._keydown(st)})("keyup",function(st){return ct._keyup(st)})("blur",function(){return ct._blur()})("focus",function(){return ct._focus()})("input",function(){return ct._onInput()}),2&ft&&(s.Ikx("id",ct.id),s.uIk("disabled",ct.disabled||null)("placeholder",ct.placeholder||null)("aria-invalid",ct._chipList&&ct._chipList.ngControl?ct._chipList.ngControl.invalid:null)("aria-required",ct._chipList&&ct._chipList.required||null))},inputs:{chipList:["matChipInputFor","chipList"],addOnBlur:["matChipInputAddOnBlur","addOnBlur"],separatorKeyCodes:["matChipInputSeparatorKeyCodes","separatorKeyCodes"],placeholder:"placeholder",id:"id",disabled:"disabled"},outputs:{chipEnd:"matChipInputTokenEnd"},exportAs:["matChipInput","matChipInputFor"],features:[s.TTD]}),Pe}(),ue=(0,h.FD)(function(){return(0,u.Z)(function Pe(ze,ft,ct,Ee){(0,o.Z)(this,Pe),this._defaultErrorStateMatcher=ze,this._parentForm=ft,this._parentFormGroup=ct,this.ngControl=Ee})}()),lt=0,Xe=(0,u.Z)(function Pe(ze,ft){(0,o.Z)(this,Pe),this.source=ze,this.value=ft}),mt=function(){var Pe=function(ze){(0,e.Z)(ct,ze);var ft=(0,c.Z)(ct);function ct(Ee,st,nt,at,We,xe,ut){var Fe;return(0,o.Z)(this,ct),(Fe=ft.call(this,xe,at,We,ut))._elementRef=Ee,Fe._changeDetectorRef=st,Fe._dir=nt,Fe.controlType="mat-chip-list",Fe._lastDestroyedChipIndex=null,Fe._destroyed=new Y.x,Fe._uid="mat-chip-list-".concat(lt++),Fe._tabIndex=0,Fe._userTabIndex=null,Fe._onTouched=function(){},Fe._onChange=function(){},Fe._multiple=!1,Fe._compareWith=function(et,Ht){return et===Ht},Fe._disabled=!1,Fe.ariaOrientation="horizontal",Fe._selectable=!0,Fe.change=new s.vpe,Fe.valueChange=new s.vpe,Fe.ngControl&&(Fe.ngControl.valueAccessor=(0,t.Z)(Fe)),Fe}return(0,u.Z)(ct,[{key:"selected",get:function(){var st,nt;return this.multiple?(null===(st=this._selectionModel)||void 0===st?void 0:st.selected)||[]:null===(nt=this._selectionModel)||void 0===nt?void 0:nt.selected[0]}},{key:"role",get:function(){return this.empty?null:"listbox"}},{key:"multiple",get:function(){return this._multiple},set:function(st){this._multiple=(0,b.Ig)(st),this._syncChipsState()}},{key:"compareWith",get:function(){return this._compareWith},set:function(st){this._compareWith=st,this._selectionModel&&this._initializeSelection()}},{key:"value",get:function(){return this._value},set:function(st){this.writeValue(st),this._value=st}},{key:"id",get:function(){return this._chipInput?this._chipInput.id:this._uid}},{key:"required",get:function(){var st,nt,at,We;return null!==(We=null!==(st=this._required)&&void 0!==st?st:null===(at=null===(nt=this.ngControl)||void 0===nt?void 0:nt.control)||void 0===at?void 0:at.hasValidator(j.kI.required))&&void 0!==We&&We},set:function(st){this._required=(0,b.Ig)(st),this.stateChanges.next()}},{key:"placeholder",get:function(){return this._chipInput?this._chipInput.placeholder:this._placeholder},set:function(st){this._placeholder=st,this.stateChanges.next()}},{key:"focused",get:function(){return this._chipInput&&this._chipInput.focused||this._hasFocusedChip()}},{key:"empty",get:function(){return(!this._chipInput||this._chipInput.empty)&&(!this.chips||0===this.chips.length)}},{key:"shouldLabelFloat",get:function(){return!this.empty||this.focused}},{key:"disabled",get:function(){return this.ngControl?!!this.ngControl.disabled:this._disabled},set:function(st){this._disabled=(0,b.Ig)(st),this._syncChipsState()}},{key:"selectable",get:function(){return this._selectable},set:function(st){var nt=this;this._selectable=(0,b.Ig)(st),this.chips&&this.chips.forEach(function(at){return at.chipListSelectable=nt._selectable})}},{key:"tabIndex",set:function(st){this._userTabIndex=st,this._tabIndex=st}},{key:"chipSelectionChanges",get:function(){return q.T.apply(void 0,(0,S.Z)(this.chips.map(function(st){return st.selectionChange})))}},{key:"chipFocusChanges",get:function(){return q.T.apply(void 0,(0,S.Z)(this.chips.map(function(st){return st._onFocus})))}},{key:"chipBlurChanges",get:function(){return q.T.apply(void 0,(0,S.Z)(this.chips.map(function(st){return st._onBlur})))}},{key:"chipRemoveChanges",get:function(){return q.T.apply(void 0,(0,S.Z)(this.chips.map(function(st){return st.destroyed})))}},{key:"ngAfterContentInit",value:function(){var st=this;this._keyManager=new I.Em(this.chips).withWrap().withVerticalOrientation().withHomeAndEnd().withHorizontalOrientation(this._dir?this._dir.value:"ltr"),this._dir&&this._dir.change.pipe((0,k.R)(this._destroyed)).subscribe(function(nt){return st._keyManager.withHorizontalOrientation(nt)}),this._keyManager.tabOut.pipe((0,k.R)(this._destroyed)).subscribe(function(){st._allowFocusEscape()}),this.chips.changes.pipe((0,D.O)(null),(0,k.R)(this._destroyed)).subscribe(function(){st.disabled&&Promise.resolve().then(function(){st._syncChipsState()}),st._resetChips(),st._initializeSelection(),st._updateTabIndex(),st._updateFocusForDestroyedChips(),st.stateChanges.next()})}},{key:"ngOnInit",value:function(){this._selectionModel=new L.Ov(this.multiple,void 0,!1),this.stateChanges.next()}},{key:"ngDoCheck",value:function(){this.ngControl&&(this.updateErrorState(),this.ngControl.disabled!==this._disabled&&(this.disabled=!!this.ngControl.disabled))}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete(),this.stateChanges.complete(),this._dropSubscriptions()}},{key:"registerInput",value:function(st){this._chipInput=st,this._elementRef.nativeElement.setAttribute("data-mat-chip-input",st.id)}},{key:"setDescribedByIds",value:function(st){this._ariaDescribedby=st.join(" ")}},{key:"writeValue",value:function(st){this.chips&&this._setSelectionByValue(st,!1)}},{key:"registerOnChange",value:function(st){this._onChange=st}},{key:"registerOnTouched",value:function(st){this._onTouched=st}},{key:"setDisabledState",value:function(st){this.disabled=st,this.stateChanges.next()}},{key:"onContainerClick",value:function(st){this._originatesFromChip(st)||this.focus()}},{key:"focus",value:function(st){this.disabled||this._chipInput&&this._chipInput.focused||(this.chips.length>0?(this._keyManager.setFirstItemActive(),this.stateChanges.next()):(this._focusInput(st),this.stateChanges.next()))}},{key:"_focusInput",value:function(st){this._chipInput&&this._chipInput.focus(st)}},{key:"_keydown",value:function(st){var nt=st.target;nt&&nt.classList.contains("mat-chip")&&(this._keyManager.onKeydown(st),this.stateChanges.next())}},{key:"_updateTabIndex",value:function(){this._tabIndex=this._userTabIndex||(0===this.chips.length?-1:0)}},{key:"_updateFocusForDestroyedChips",value:function(){if(null!=this._lastDestroyedChipIndex)if(this.chips.length){var st=Math.min(this._lastDestroyedChipIndex,this.chips.length-1);this._keyManager.setActiveItem(st)}else this.focus();this._lastDestroyedChipIndex=null}},{key:"_isValidIndex",value:function(st){return st>=0&&st1&&void 0!==arguments[1])||arguments[1];if(this._clearSelection(),this.chips.forEach(function(xe){return xe.deselect()}),Array.isArray(st))st.forEach(function(xe){return nt._selectValue(xe,at)}),this._sortValues();else{var We=this._selectValue(st,at);We&&at&&this._keyManager.setActiveItem(We)}}},{key:"_selectValue",value:function(st){var nt=this,at=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],We=this.chips.find(function(xe){return null!=xe.value&&nt._compareWith(xe.value,st)});return We&&(at?We.selectViaInteraction():We.select(),this._selectionModel.select(We)),We}},{key:"_initializeSelection",value:function(){var st=this;Promise.resolve().then(function(){(st.ngControl||st._value)&&(st._setSelectionByValue(st.ngControl?st.ngControl.value:st._value,!1),st.stateChanges.next())})}},{key:"_clearSelection",value:function(st){this._selectionModel.clear(),this.chips.forEach(function(nt){nt!==st&&nt.deselect()}),this.stateChanges.next()}},{key:"_sortValues",value:function(){var st=this;this._multiple&&(this._selectionModel.clear(),this.chips.forEach(function(nt){nt.selected&&st._selectionModel.select(nt)}),this.stateChanges.next())}},{key:"_propagateChanges",value:function(st){var nt;nt=Array.isArray(this.selected)?this.selected.map(function(at){return at.value}):this.selected?this.selected.value:st,this._value=nt,this.change.emit(new Xe(this,nt)),this.valueChange.emit(nt),this._onChange(nt),this._changeDetectorRef.markForCheck()}},{key:"_blur",value:function(){var st=this;this._hasFocusedChip()||this._keyManager.setActiveItem(-1),this.disabled||(this._chipInput?setTimeout(function(){st.focused||st._markAsTouched()}):this._markAsTouched())}},{key:"_markAsTouched",value:function(){this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next()}},{key:"_allowFocusEscape",value:function(){var st=this;-1!==this._tabIndex&&(this._tabIndex=-1,setTimeout(function(){st._tabIndex=st._userTabIndex||0,st._changeDetectorRef.markForCheck()}))}},{key:"_resetChips",value:function(){this._dropSubscriptions(),this._listenToChipsFocus(),this._listenToChipsSelection(),this._listenToChipsRemoved()}},{key:"_dropSubscriptions",value:function(){this._chipFocusSubscription&&(this._chipFocusSubscription.unsubscribe(),this._chipFocusSubscription=null),this._chipBlurSubscription&&(this._chipBlurSubscription.unsubscribe(),this._chipBlurSubscription=null),this._chipSelectionSubscription&&(this._chipSelectionSubscription.unsubscribe(),this._chipSelectionSubscription=null),this._chipRemoveSubscription&&(this._chipRemoveSubscription.unsubscribe(),this._chipRemoveSubscription=null)}},{key:"_listenToChipsSelection",value:function(){var st=this;this._chipSelectionSubscription=this.chipSelectionChanges.subscribe(function(nt){nt.source.selected?st._selectionModel.select(nt.source):st._selectionModel.deselect(nt.source),st.multiple||st.chips.forEach(function(at){!st._selectionModel.isSelected(at)&&at.selected&&at.deselect()}),nt.isUserInput&&st._propagateChanges()})}},{key:"_listenToChipsFocus",value:function(){var st=this;this._chipFocusSubscription=this.chipFocusChanges.subscribe(function(nt){var at=st.chips.toArray().indexOf(nt.chip);st._isValidIndex(at)&&st._keyManager.updateActiveItem(at),st.stateChanges.next()}),this._chipBlurSubscription=this.chipBlurChanges.subscribe(function(){st._blur(),st.stateChanges.next()})}},{key:"_listenToChipsRemoved",value:function(){var st=this;this._chipRemoveSubscription=this.chipRemoveChanges.subscribe(function(nt){var at=nt.chip,We=st.chips.toArray().indexOf(nt.chip);st._isValidIndex(We)&&at._hasFocus&&(st._lastDestroyedChipIndex=We)})}},{key:"_originatesFromChip",value:function(st){for(var nt=st.target;nt&&nt!==this._elementRef.nativeElement;){if(nt.classList.contains("mat-chip"))return!0;nt=nt.parentElement}return!1}},{key:"_hasFocusedChip",value:function(){return this.chips&&this.chips.some(function(st){return st._hasFocus})}},{key:"_syncChipsState",value:function(){var st=this;this.chips&&this.chips.forEach(function(nt){nt._chipListDisabled=st._disabled,nt._chipListMultiple=st.multiple})}}]),ct}(ue);return Pe.\u0275fac=function(ft){return new(ft||Pe)(s.Y36(s.SBq),s.Y36(s.sBO),s.Y36(re.Is,8),s.Y36(j.F,8),s.Y36(j.sg,8),s.Y36(h.rD),s.Y36(j.a5,10))},Pe.\u0275cmp=s.Xpm({type:Pe,selectors:[["mat-chip-list"]],contentQueries:function(ft,ct,Ee){var st;1&ft&&s.Suo(Ee,G,5),2&ft&&s.iGM(st=s.CRH())&&(ct.chips=st)},hostAttrs:[1,"mat-chip-list"],hostVars:15,hostBindings:function(ft,ct){1&ft&&s.NdJ("focus",function(){return ct.focus()})("blur",function(){return ct._blur()})("keydown",function(st){return ct._keydown(st)}),2&ft&&(s.Ikx("id",ct._uid),s.uIk("tabindex",ct.disabled?null:ct._tabIndex)("aria-describedby",ct._ariaDescribedby||null)("aria-required",ct.role?ct.required:null)("aria-disabled",ct.disabled.toString())("aria-invalid",ct.errorState)("aria-multiselectable",ct.multiple)("role",ct.role)("aria-orientation",ct.ariaOrientation),s.ekj("mat-chip-list-disabled",ct.disabled)("mat-chip-list-invalid",ct.errorState)("mat-chip-list-required",ct.required))},inputs:{errorStateMatcher:"errorStateMatcher",multiple:"multiple",compareWith:"compareWith",value:"value",required:"required",placeholder:"placeholder",disabled:"disabled",ariaOrientation:["aria-orientation","ariaOrientation"],selectable:"selectable",tabIndex:"tabIndex"},outputs:{change:"change",valueChange:"valueChange"},exportAs:["matChipList"],features:[s._Bn([{provide:le.Eo,useExisting:Pe}]),s.qOj],ngContentSelectors:W,decls:2,vars:0,consts:[[1,"mat-chip-list-wrapper"]],template:function(ft,ct){1&ft&&(s.F$t(),s.TgZ(0,"div",0),s.Hsn(1),s.qZA())},styles:['.mat-chip{position:relative;box-sizing:border-box;-webkit-tap-highlight-color:transparent;transform:translateZ(0);border:none;-webkit-appearance:none;-moz-appearance:none}.mat-standard-chip{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:inline-flex;padding:7px 12px;border-radius:16px;align-items:center;cursor:default;min-height:32px;height:1px}._mat-animation-noopable.mat-standard-chip{transition:none;animation:none}.mat-standard-chip .mat-chip-remove{border:none;-webkit-appearance:none;-moz-appearance:none;padding:0;background:none}.mat-standard-chip .mat-chip-remove.mat-icon,.mat-standard-chip .mat-chip-remove .mat-icon{width:18px;height:18px;font-size:18px}.mat-standard-chip::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;opacity:0;content:"";pointer-events:none;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-standard-chip:hover::after{opacity:.12}.mat-standard-chip:focus{outline:none}.mat-standard-chip:focus::after{opacity:.16}.cdk-high-contrast-active .mat-standard-chip{outline:solid 1px}.cdk-high-contrast-active .mat-standard-chip:focus{outline:dotted 2px}.cdk-high-contrast-active .mat-standard-chip.mat-chip-selected{outline-width:3px}.mat-standard-chip.mat-chip-disabled::after{opacity:0}.mat-standard-chip.mat-chip-disabled .mat-chip-remove,.mat-standard-chip.mat-chip-disabled .mat-chip-trailing-icon{cursor:default}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar,.mat-standard-chip.mat-chip-with-avatar{padding-top:0;padding-bottom:0}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-right:8px;padding-left:0}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-left:8px;padding-right:0}.mat-standard-chip.mat-chip-with-trailing-icon{padding-top:7px;padding-bottom:7px;padding-right:8px;padding-left:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon{padding-left:8px;padding-right:12px}.mat-standard-chip.mat-chip-with-avatar{padding-left:0;padding-right:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-avatar{padding-right:0;padding-left:12px}.mat-standard-chip .mat-chip-avatar{width:24px;height:24px;margin-right:8px;margin-left:4px}[dir=rtl] .mat-standard-chip .mat-chip-avatar{margin-left:8px;margin-right:4px}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{width:18px;height:18px;cursor:pointer}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{margin-left:8px;margin-right:0}[dir=rtl] .mat-standard-chip .mat-chip-remove,[dir=rtl] .mat-standard-chip .mat-chip-trailing-icon{margin-right:8px;margin-left:0}.mat-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit;overflow:hidden}.mat-chip-list-wrapper{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;margin:-4px}.mat-chip-list-wrapper input.mat-input-element,.mat-chip-list-wrapper .mat-standard-chip{margin:4px}.mat-chip-list-stacked .mat-chip-list-wrapper{flex-direction:column;align-items:flex-start}.mat-chip-list-stacked .mat-chip-list-wrapper .mat-standard-chip{width:100%}.mat-chip-avatar{border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden;object-fit:cover}input.mat-chip-input{width:150px;margin:4px;flex:1 0 150px}\n'],encapsulation:2,changeDetection:0}),Pe}(),Pt=function(){var Pe=(0,u.Z)(function ze(){(0,o.Z)(this,ze)});return Pe.\u0275fac=function(ft){return new(ft||Pe)},Pe.\u0275mod=s.oAB({type:Pe}),Pe.\u0275inj=s.cJS({providers:[h.rD,{provide:_e,useValue:{separatorKeyCodes:[_.K5]}}],imports:[[h.BQ]]}),Pe}()},1130:function(Ce,E,n){"use strict";n.d(E,{yN:function(){return be},mZ:function(){return z},_A:function(){return wt},rD:function(){return at},sG:function(){return Pt},K7:function(){return vn},HF:function(){return Ft},Y2:function(){return ne},BQ:function(){return J},X2:function(){return We},uc:function(){return Fe},XK:function(){return st},ey:function(){return ri},Ng:function(){return zt},rN:function(){return Jn},nP:function(){return He},us:function(){return At},wG:function(){return me},si:function(){return Oe},IR:function(){return $e},CB:function(){return un},jH:function(){return mn},pj:function(){return _e},Kr:function(){return Me},Id:function(){return ce},FD:function(){return ue},dB:function(){return lt},sb:function(){return ve},E0:function(){return xe}});var S=n(45632),t=n(97424),e=n(28042),c=n(46751),u=n(56101),o=n(1884),_=n(39117),s=n(86613),h=n(51588),T=n(36362),y=n(14390),Y=n(84128),q=n(76484),B=n(50253),k=n(83336),D=n(44874),N=n(57481),I=n(75939);function le(qe,pt){if(1&qe&&s._UZ(0,"mat-pseudo-checkbox",4),2&qe){var Ne=s.oxw();s.Q6J("state",Ne.selected?"checked":"unchecked")("disabled",Ne.disabled)}}function re(qe,pt){if(1&qe&&(s.TgZ(0,"span",5),s._uU(1),s.qZA()),2&qe){var Ne=s.oxw();s.xp6(1),s.hij("(",Ne.group.label,")")}}var W=["*"],be=function(){var qe=(0,o.Z)(function pt(){(0,_.Z)(this,pt)});return qe.STANDARD_CURVE="cubic-bezier(0.4,0.0,0.2,1)",qe.DECELERATION_CURVE="cubic-bezier(0.0,0.0,0.2,1)",qe.ACCELERATION_CURVE="cubic-bezier(0.4,0.0,1,1)",qe.SHARP_CURVE="cubic-bezier(0.4,0.0,0.6,1)",qe}(),z=function(){var qe=(0,o.Z)(function pt(){(0,_.Z)(this,pt)});return qe.COMPLEX="375ms",qe.ENTERING="225ms",qe.EXITING="195ms",qe}(),Q=new s.OlP("mat-sanity-checks",{providedIn:"root",factory:function d(){return!0}}),J=function(){var qe=function(){function pt(Ne,Re,tt){(0,_.Z)(this,pt),this._sanityChecks=Re,this._document=tt,this._hasDoneGlobalChecks=!1,Ne._applyBodyHighContrastModeCssClasses(),this._hasDoneGlobalChecks||(this._hasDoneGlobalChecks=!0)}return(0,o.Z)(pt,[{key:"_checkIsEnabled",value:function(Re){return!(0,y.Oy)()&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[Re])}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(s.LFG(Y.qm),s.LFG(Q,8),s.LFG(T.K0))},qe.\u0275mod=s.oAB({type:qe}),qe.\u0275inj=s.cJS({imports:[[h.vT],h.vT]}),qe}();function ce(qe){return function(pt){(0,c.Z)(Re,pt);var Ne=(0,u.Z)(Re);function Re(){var tt;(0,_.Z)(this,Re);for(var Ke=arguments.length,vt=new Array(Ke),Rt=0;Rt1&&void 0!==arguments[1]?arguments[1]:0;return function(Ne){(0,c.Z)(tt,Ne);var Re=(0,u.Z)(tt);function tt(){var Ke;(0,_.Z)(this,tt);for(var vt=arguments.length,Rt=new Array(vt),rn=0;rn0?tt:Ne}}]),qe}(),Pt=new s.OlP("mat-date-formats"),Pe=/^\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))?)?$/;function ze(qe,pt){for(var Ne=Array(qe),Re=0;Re2&&void 0!==arguments[2]?arguments[2]:"mat";qe.changes.pipe((0,D.O)(qe)).subscribe(function(Re){var tt=Re.length;ut(pt,"".concat(Ne,"-2-line"),!1),ut(pt,"".concat(Ne,"-3-line"),!1),ut(pt,"".concat(Ne,"-multi-line"),!1),2===tt||3===tt?ut(pt,"".concat(Ne,"-").concat(tt,"-line"),!0):tt>3&&ut(pt,"".concat(Ne,"-multi-line"),!0)})}function ut(qe,pt,Ne){qe.nativeElement.classList.toggle(pt,Ne)}var Fe=function(){var qe=(0,o.Z)(function pt(){(0,_.Z)(this,pt)});return qe.\u0275fac=function(Ne){return new(Ne||qe)},qe.\u0275mod=s.oAB({type:qe}),qe.\u0275inj=s.cJS({imports:[[J],J]}),qe}(),et=function(){function qe(pt,Ne,Re){(0,_.Z)(this,qe),this._renderer=pt,this.element=Ne,this.config=Re,this.state=3}return(0,o.Z)(qe,[{key:"fadeOut",value:function(){this._renderer.fadeOutRipple(this)}}]),qe}(),Ht={enterDuration:225,exitDuration:150},an=(0,y.i$)({passive:!0}),kt=["mousedown","touchstart"],It=["mouseup","mouseleave","touchend","touchcancel"],$e=function(){function qe(pt,Ne,Re,tt){(0,_.Z)(this,qe),this._target=pt,this._ngZone=Ne,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,tt.isBrowser&&(this._containerElement=(0,q.fI)(Re))}return(0,o.Z)(qe,[{key:"fadeInRipple",value:function(Ne,Re){var tt=this,Ke=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},vt=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),Rt=Object.assign(Object.assign({},Ht),Ke.animation);Ke.centered&&(Ne=vt.left+vt.width/2,Re=vt.top+vt.height/2);var rn=Ke.radius||X(Ne,Re,vt),Nn=Ne-vt.left,$t=Re-vt.top,fn=Rt.enterDuration,ln=document.createElement("div");ln.classList.add("mat-ripple-element"),ln.style.left="".concat(Nn-rn,"px"),ln.style.top="".concat($t-rn,"px"),ln.style.height="".concat(2*rn,"px"),ln.style.width="".concat(2*rn,"px"),null!=Ke.color&&(ln.style.backgroundColor=Ke.color),ln.style.transitionDuration="".concat(fn,"ms"),this._containerElement.appendChild(ln),Ae(ln),ln.style.transform="scale(1)";var _n=new et(this,ln,Ke);return _n.state=0,this._activeRipples.add(_n),Ke.persistent||(this._mostRecentTransientRipple=_n),this._runTimeoutOutsideZone(function(){var xn=_n===tt._mostRecentTransientRipple;_n.state=1,!Ke.persistent&&(!xn||!tt._isPointerDown)&&_n.fadeOut()},fn),_n}},{key:"fadeOutRipple",value:function(Ne){var Re=this._activeRipples.delete(Ne);if(Ne===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),Re){var tt=Ne.element,Ke=Object.assign(Object.assign({},Ht),Ne.config.animation);tt.style.transitionDuration="".concat(Ke.exitDuration,"ms"),tt.style.opacity="0",Ne.state=2,this._runTimeoutOutsideZone(function(){Ne.state=3,tt.remove()},Ke.exitDuration)}}},{key:"fadeOutAll",value:function(){this._activeRipples.forEach(function(Ne){return Ne.fadeOut()})}},{key:"fadeOutAllNonPersistent",value:function(){this._activeRipples.forEach(function(Ne){Ne.config.persistent||Ne.fadeOut()})}},{key:"setupTriggerEvents",value:function(Ne){var Re=(0,q.fI)(Ne);!Re||Re===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=Re,this._registerEvents(kt))}},{key:"handleEvent",value:function(Ne){"mousedown"===Ne.type?this._onMousedown(Ne):"touchstart"===Ne.type?this._onTouchStart(Ne):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(It),this._pointerUpEventsRegistered=!0)}},{key:"_onMousedown",value:function(Ne){var Re=(0,Y.X6)(Ne),tt=this._lastTouchStartEvent&&Date.now()1&&void 0!==arguments[1]?arguments[1]:0;this._ngZone.runOutsideAngular(function(){return setTimeout(Ne,Re)})}},{key:"_registerEvents",value:function(Ne){var Re=this;this._ngZone.runOutsideAngular(function(){Ne.forEach(function(tt){Re._triggerElement.addEventListener(tt,Re,an)})})}},{key:"_removeTriggerEvents",value:function(){var Ne=this;this._triggerElement&&(kt.forEach(function(Re){Ne._triggerElement.removeEventListener(Re,Ne,an)}),this._pointerUpEventsRegistered&&It.forEach(function(Re){Ne._triggerElement.removeEventListener(Re,Ne,an)}))}}]),qe}();function Ae(qe){window.getComputedStyle(qe).getPropertyValue("opacity")}function X(qe,pt,Ne){var Re=Math.max(Math.abs(qe-Ne.left),Math.abs(qe-Ne.right)),tt=Math.max(Math.abs(pt-Ne.top),Math.abs(pt-Ne.bottom));return Math.sqrt(Re*Re+tt*tt)}var ne=new s.OlP("mat-ripple-global-options"),me=function(){var qe=function(){function pt(Ne,Re,tt,Ke,vt){(0,_.Z)(this,pt),this._elementRef=Ne,this._animationMode=vt,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=Ke||{},this._rippleRenderer=new $e(this,Re,Ne,tt)}return(0,o.Z)(pt,[{key:"disabled",get:function(){return this._disabled},set:function(Re){Re&&this.fadeOutAllNonPersistent(),this._disabled=Re,this._setupTriggerEventsIfEnabled()}},{key:"trigger",get:function(){return this._trigger||this._elementRef.nativeElement},set:function(Re){this._trigger=Re,this._setupTriggerEventsIfEnabled()}},{key:"ngOnInit",value:function(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}},{key:"ngOnDestroy",value:function(){this._rippleRenderer._removeTriggerEvents()}},{key:"fadeOutAll",value:function(){this._rippleRenderer.fadeOutAll()}},{key:"fadeOutAllNonPersistent",value:function(){this._rippleRenderer.fadeOutAllNonPersistent()}},{key:"rippleConfig",get:function(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}},{key:"rippleDisabled",get:function(){return this.disabled||!!this._globalOptions.disabled}},{key:"_setupTriggerEventsIfEnabled",value:function(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}},{key:"launch",value:function(Re){var tt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,Ke=arguments.length>2?arguments[2]:void 0;return"number"==typeof Re?this._rippleRenderer.fadeInRipple(Re,tt,Object.assign(Object.assign({},this.rippleConfig),Ke)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),Re))}}]),pt}();return qe.\u0275fac=function(Ne){return new(Ne||qe)(s.Y36(s.SBq),s.Y36(s.R0b),s.Y36(y.t4),s.Y36(ne,8),s.Y36(N.Qb,8))},qe.\u0275dir=s.lG2({type:qe,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(Ne,Re){2&Ne&&s.ekj("mat-ripple-unbounded",Re.unbounded)},inputs:{color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],radius:["matRippleRadius","radius"],animation:["matRippleAnimation","animation"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"]},exportAs:["matRipple"]}),qe}(),Oe=function(){var qe=(0,o.Z)(function pt(){(0,_.Z)(this,pt)});return qe.\u0275fac=function(Ne){return new(Ne||qe)},qe.\u0275mod=s.oAB({type:qe}),qe.\u0275inj=s.cJS({imports:[[J,y.ud],J]}),qe}(),He=function(){var qe=(0,o.Z)(function pt(Ne){(0,_.Z)(this,pt),this._animationMode=Ne,this.state="unchecked",this.disabled=!1});return qe.\u0275fac=function(Ne){return new(Ne||qe)(s.Y36(N.Qb,8))},qe.\u0275cmp=s.Xpm({type:qe,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(Ne,Re){2&Ne&&s.ekj("mat-pseudo-checkbox-indeterminate","indeterminate"===Re.state)("mat-pseudo-checkbox-checked","checked"===Re.state)("mat-pseudo-checkbox-disabled",Re.disabled)("_mat-animation-noopable","NoopAnimations"===Re._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(Ne,Re){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),qe}(),At=function(){var qe=(0,o.Z)(function pt(){(0,_.Z)(this,pt)});return qe.\u0275fac=function(Ne){return new(Ne||qe)},qe.\u0275mod=s.oAB({type:qe}),qe.\u0275inj=s.cJS({imports:[[J]]}),qe}(),Ft=new s.OlP("MAT_OPTION_PARENT_COMPONENT"),vn=new s.OlP("MatOptgroup"),jn=0,Jn=(0,o.Z)(function qe(pt){var Ne=arguments.length>1&&void 0!==arguments[1]&&arguments[1];(0,_.Z)(this,qe),this.source=pt,this.isUserInput=Ne}),oi=function(){var qe=function(){function pt(Ne,Re,tt,Ke){(0,_.Z)(this,pt),this._element=Ne,this._changeDetectorRef=Re,this._parent=tt,this.group=Ke,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-".concat(jn++),this.onSelectionChange=new s.vpe,this._stateChanges=new B.x}return(0,o.Z)(pt,[{key:"multiple",get:function(){return this._parent&&this._parent.multiple}},{key:"selected",get:function(){return this._selected}},{key:"disabled",get:function(){return this.group&&this.group.disabled||this._disabled},set:function(Re){this._disabled=(0,q.Ig)(Re)}},{key:"disableRipple",get:function(){return!(!this._parent||!this._parent.disableRipple)}},{key:"active",get:function(){return this._active}},{key:"viewValue",get:function(){return(this._getHostElement().textContent||"").trim()}},{key:"select",value:function(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"deselect",value:function(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"focus",value:function(Re,tt){var Ke=this._getHostElement();"function"==typeof Ke.focus&&Ke.focus(tt)}},{key:"setActiveStyles",value:function(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}},{key:"setInactiveStyles",value:function(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}},{key:"getLabel",value:function(){return this.viewValue}},{key:"_handleKeydown",value:function(Re){(Re.keyCode===I.K5||Re.keyCode===I.L_)&&!(0,I.Vb)(Re)&&(this._selectViaInteraction(),Re.preventDefault())}},{key:"_selectViaInteraction",value:function(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}},{key:"_getAriaSelected",value:function(){return this.selected||!this.multiple&&null}},{key:"_getTabIndex",value:function(){return this.disabled?"-1":"0"}},{key:"_getHostElement",value:function(){return this._element.nativeElement}},{key:"ngAfterViewChecked",value:function(){if(this._selected){var Re=this.viewValue;Re!==this._mostRecentViewValue&&(this._mostRecentViewValue=Re,this._stateChanges.next())}}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"_emitSelectionChangeEvent",value:function(){var Re=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.onSelectionChange.emit(new Jn(this,Re))}}]),pt}();return qe.\u0275fac=function(Ne){s.$Z()},qe.\u0275dir=s.lG2({type:qe,inputs:{value:"value",id:"id",disabled:"disabled"},outputs:{onSelectionChange:"onSelectionChange"}}),qe}(),ri=function(){var qe=function(pt){(0,c.Z)(Re,pt);var Ne=(0,u.Z)(Re);function Re(tt,Ke,vt,Rt){return(0,_.Z)(this,Re),Ne.call(this,tt,Ke,vt,Rt)}return(0,o.Z)(Re)}(oi);return qe.\u0275fac=function(Ne){return new(Ne||qe)(s.Y36(s.SBq),s.Y36(s.sBO),s.Y36(Ft,8),s.Y36(vn,8))},qe.\u0275cmp=s.Xpm({type:qe,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(Ne,Re){1&Ne&&s.NdJ("click",function(){return Re._selectViaInteraction()})("keydown",function(Ke){return Re._handleKeydown(Ke)}),2&Ne&&(s.Ikx("id",Re.id),s.uIk("tabindex",Re._getTabIndex())("aria-selected",Re._getAriaSelected())("aria-disabled",Re.disabled.toString()),s.ekj("mat-selected",Re.selected)("mat-option-multiple",Re.multiple)("mat-active",Re.active)("mat-option-disabled",Re.disabled))},exportAs:["matOption"],features:[s.qOj],ngContentSelectors:W,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(Ne,Re){1&Ne&&(s.F$t(),s.YNc(0,le,1,2,"mat-pseudo-checkbox",0),s.TgZ(1,"span",1),s.Hsn(2),s.qZA(),s.YNc(3,re,2,1,"span",2),s._UZ(4,"div",3)),2&Ne&&(s.Q6J("ngIf",Re.multiple),s.xp6(3),s.Q6J("ngIf",Re.group&&Re.group._inert),s.xp6(1),s.Q6J("matRippleTrigger",Re._getHostElement())("matRippleDisabled",Re.disabled||Re.disableRipple))},directives:[He,T.O5,me],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),qe}();function un(qe,pt,Ne){if(Ne.length){for(var Re=pt.toArray(),tt=Ne.toArray(),Ke=0,vt=0;vtNe+Re?Math.max(0,qe-Re+pt):Ne}var zt=function(){var qe=(0,o.Z)(function pt(){(0,_.Z)(this,pt)});return qe.\u0275fac=function(Ne){return new(Ne||qe)},qe.\u0275mod=s.oAB({type:qe}),qe.\u0275inj=s.cJS({imports:[[Oe,T.ez,J,At]]}),qe}()},5818:function(Ce,E,n){"use strict";n.d(E,{Mq:function(){return rn},hl:function(){return xn},FA:function(){return Ta},nW:function(){return Yn}});var S=n(45632),t=n(97424),e=n(28042),c=n(46751),u=n(56101),o=n(1884),_=n(39117),s=n(84128),h=n(54244),b=n(24476),T=n(36362),y=n(86613),Y=n(87317),q=n(24426),B=n(1130),k=n(50253),D=n(17714),N=n(36646),I=n(10745),L=n(75939),j=n(59295),le=n(44874),re=n(60116),W=n(51588),$=n(76484),be=n(14390),z=n(31631),d=n(90587),Q=n(44770),J=n(43365),te=["mat-calendar-body",""];function K(Cn,Pn){if(1&Cn&&(y.TgZ(0,"tr",2),y.TgZ(1,"td",3),y._uU(2),y.qZA(),y.qZA()),2&Cn){var Tt=y.oxw();y.xp6(1),y.Udp("padding-top",Tt._cellPadding)("padding-bottom",Tt._cellPadding),y.uIk("colspan",Tt.numCols),y.xp6(1),y.hij(" ",Tt.label," ")}}function G(Cn,Pn){if(1&Cn&&(y.TgZ(0,"td",3),y._uU(1),y.qZA()),2&Cn){var Tt=y.oxw(2);y.Udp("padding-top",Tt._cellPadding)("padding-bottom",Tt._cellPadding),y.uIk("colspan",Tt._firstRowOffset),y.xp6(1),y.hij(" ",Tt._firstRowOffset>=Tt.labelMinRequiredCells?Tt.label:""," ")}}function ce(Cn,Pn){if(1&Cn){var Tt=y.EpF();y.TgZ(0,"td",7),y.TgZ(1,"button",8),y.NdJ("click",function(vi){var ea=y.CHM(Tt).$implicit;return y.oxw(2)._cellClicked(ea,vi)}),y.TgZ(2,"div",9),y._uU(3),y.qZA(),y._UZ(4,"div",10),y.qZA(),y.qZA()}if(2&Cn){var Le=Pn.$implicit,qt=Pn.index,Gt=y.oxw().index,An=y.oxw();y.Udp("width",An._cellWidth)("padding-top",An._cellPadding)("padding-bottom",An._cellPadding),y.uIk("data-mat-row",Gt)("data-mat-col",qt),y.xp6(1),y.ekj("mat-calendar-body-disabled",!Le.enabled)("mat-calendar-body-active",An._isActiveCell(Gt,qt))("mat-calendar-body-range-start",An._isRangeStart(Le.compareValue))("mat-calendar-body-range-end",An._isRangeEnd(Le.compareValue))("mat-calendar-body-in-range",An._isInRange(Le.compareValue))("mat-calendar-body-comparison-bridge-start",An._isComparisonBridgeStart(Le.compareValue,Gt,qt))("mat-calendar-body-comparison-bridge-end",An._isComparisonBridgeEnd(Le.compareValue,Gt,qt))("mat-calendar-body-comparison-start",An._isComparisonStart(Le.compareValue))("mat-calendar-body-comparison-end",An._isComparisonEnd(Le.compareValue))("mat-calendar-body-in-comparison-range",An._isInComparisonRange(Le.compareValue))("mat-calendar-body-preview-start",An._isPreviewStart(Le.compareValue))("mat-calendar-body-preview-end",An._isPreviewEnd(Le.compareValue))("mat-calendar-body-in-preview",An._isInPreview(Le.compareValue)),y.Q6J("ngClass",Le.cssClasses)("tabindex",An._isActiveCell(Gt,qt)?0:-1),y.uIk("aria-label",Le.ariaLabel)("aria-disabled",!Le.enabled||null)("aria-pressed",An._isSelected(Le.compareValue))("aria-current",An.todayValue===Le.compareValue?"date":null),y.xp6(1),y.ekj("mat-calendar-body-selected",An._isSelected(Le.compareValue))("mat-calendar-body-comparison-identical",An._isComparisonIdentical(Le.compareValue))("mat-calendar-body-today",An.todayValue===Le.compareValue),y.xp6(1),y.hij(" ",Le.displayValue," ")}}function _e(Cn,Pn){if(1&Cn&&(y.TgZ(0,"tr",4),y.YNc(1,G,2,6,"td",5),y.YNc(2,ce,5,47,"td",6),y.qZA()),2&Cn){var Tt=Pn.$implicit,Le=Pn.index,qt=y.oxw();y.xp6(1),y.Q6J("ngIf",0===Le&&qt._firstRowOffset),y.xp6(1),y.Q6J("ngForOf",Tt)}}function Me(Cn,Pn){if(1&Cn&&(y.TgZ(0,"th",5),y.TgZ(1,"abbr",6),y._uU(2),y.qZA(),y.qZA()),2&Cn){var Tt=Pn.$implicit;y.uIk("aria-label",Tt.long),y.xp6(1),y.uIk("title",Tt.long),y.xp6(1),y.Oqu(Tt.narrow)}}var ve=["*"];function ue(Cn,Pn){}function lt(Cn,Pn){if(1&Cn){var Tt=y.EpF();y.TgZ(0,"mat-month-view",5),y.NdJ("activeDateChange",function(Gt){return y.CHM(Tt),y.oxw().activeDate=Gt})("_userSelection",function(Gt){return y.CHM(Tt),y.oxw()._dateSelected(Gt)}),y.qZA()}if(2&Cn){var Le=y.oxw();y.Q6J("activeDate",Le.activeDate)("selected",Le.selected)("dateFilter",Le.dateFilter)("maxDate",Le.maxDate)("minDate",Le.minDate)("dateClass",Le.dateClass)("comparisonStart",Le.comparisonStart)("comparisonEnd",Le.comparisonEnd)}}function Xe(Cn,Pn){if(1&Cn){var Tt=y.EpF();y.TgZ(0,"mat-year-view",6),y.NdJ("activeDateChange",function(Gt){return y.CHM(Tt),y.oxw().activeDate=Gt})("monthSelected",function(Gt){return y.CHM(Tt),y.oxw()._monthSelectedInYearView(Gt)})("selectedChange",function(Gt){return y.CHM(Tt),y.oxw()._goToDateInView(Gt,"month")}),y.qZA()}if(2&Cn){var Le=y.oxw();y.Q6J("activeDate",Le.activeDate)("selected",Le.selected)("dateFilter",Le.dateFilter)("maxDate",Le.maxDate)("minDate",Le.minDate)("dateClass",Le.dateClass)}}function mt(Cn,Pn){if(1&Cn){var Tt=y.EpF();y.TgZ(0,"mat-multi-year-view",7),y.NdJ("activeDateChange",function(Gt){return y.CHM(Tt),y.oxw().activeDate=Gt})("yearSelected",function(Gt){return y.CHM(Tt),y.oxw()._yearSelectedInMultiYearView(Gt)})("selectedChange",function(Gt){return y.CHM(Tt),y.oxw()._goToDateInView(Gt,"year")}),y.qZA()}if(2&Cn){var Le=y.oxw();y.Q6J("activeDate",Le.activeDate)("selected",Le.selected)("dateFilter",Le.dateFilter)("maxDate",Le.maxDate)("minDate",Le.minDate)("dateClass",Le.dateClass)}}function wt(Cn,Pn){}var Pt=["button"];function Pe(Cn,Pn){1&Cn&&(y.O4$(),y.TgZ(0,"svg",3),y._UZ(1,"path",4),y.qZA())}var ze=[[["","matDatepickerToggleIcon",""]]],ft=["[matDatepickerToggleIcon]"],at=(0,o.Z)(function Cn(Pn,Tt,Le,qt){var Gt=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},An=arguments.length>5&&void 0!==arguments[5]?arguments[5]:Pn,Wn=arguments.length>6?arguments[6]:void 0;(0,_.Z)(this,Cn),this.value=Pn,this.displayValue=Tt,this.ariaLabel=Le,this.enabled=qt,this.cssClasses=Gt,this.compareValue=An,this.rawValue=Wn}),We=function(){var Cn=function(){function Pn(Tt,Le){var qt=this;(0,_.Z)(this,Pn),this._elementRef=Tt,this._ngZone=Le,this.numCols=7,this.activeCell=0,this.isRange=!1,this.cellAspectRatio=1,this.previewStart=null,this.previewEnd=null,this.selectedValueChange=new y.vpe,this.previewChange=new y.vpe,this._enterHandler=function(Gt){if(qt._skipNextFocus&&"focus"===Gt.type)qt._skipNextFocus=!1;else if(Gt.target&&qt.isRange){var An=qt._getCellFromElement(Gt.target);An&&qt._ngZone.run(function(){return qt.previewChange.emit({value:An.enabled?An:null,event:Gt})})}},this._leaveHandler=function(Gt){null!==qt.previewEnd&&qt.isRange&&Gt.target&&qt._getCellFromElement(Gt.target)&&qt._ngZone.run(function(){return qt.previewChange.emit({value:null,event:Gt})})},Le.runOutsideAngular(function(){var Gt=Tt.nativeElement;Gt.addEventListener("mouseenter",qt._enterHandler,!0),Gt.addEventListener("focus",qt._enterHandler,!0),Gt.addEventListener("mouseleave",qt._leaveHandler,!0),Gt.addEventListener("blur",qt._leaveHandler,!0)})}return(0,o.Z)(Pn,[{key:"_cellClicked",value:function(Le,qt){Le.enabled&&this.selectedValueChange.emit({value:Le.value,event:qt})}},{key:"_isSelected",value:function(Le){return this.startValue===Le||this.endValue===Le}},{key:"ngOnChanges",value:function(Le){var qt=Le.numCols,Gt=this.rows,An=this.numCols;(Le.rows||qt)&&(this._firstRowOffset=Gt&&Gt.length&&Gt[0].length?An-Gt[0].length:0),(Le.cellAspectRatio||qt||!this._cellPadding)&&(this._cellPadding="".concat(50*this.cellAspectRatio/An,"%")),(qt||!this._cellWidth)&&(this._cellWidth="".concat(100/An,"%"))}},{key:"ngOnDestroy",value:function(){var Le=this._elementRef.nativeElement;Le.removeEventListener("mouseenter",this._enterHandler,!0),Le.removeEventListener("focus",this._enterHandler,!0),Le.removeEventListener("mouseleave",this._leaveHandler,!0),Le.removeEventListener("blur",this._leaveHandler,!0)}},{key:"_isActiveCell",value:function(Le,qt){var Gt=Le*this.numCols+qt;return Le&&(Gt-=this._firstRowOffset),Gt==this.activeCell}},{key:"_focusActiveCell",value:function(){var Le=this,qt=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this._ngZone.runOutsideAngular(function(){Le._ngZone.onStable.pipe((0,j.q)(1)).subscribe(function(){var Gt=Le._elementRef.nativeElement.querySelector(".mat-calendar-body-active");Gt&&(qt||(Le._skipNextFocus=!0),Gt.focus())})})}},{key:"_isRangeStart",value:function(Le){return ut(Le,this.startValue,this.endValue)}},{key:"_isRangeEnd",value:function(Le){return Fe(Le,this.startValue,this.endValue)}},{key:"_isInRange",value:function(Le){return et(Le,this.startValue,this.endValue,this.isRange)}},{key:"_isComparisonStart",value:function(Le){return ut(Le,this.comparisonStart,this.comparisonEnd)}},{key:"_isComparisonBridgeStart",value:function(Le,qt,Gt){if(!this._isComparisonStart(Le)||this._isRangeStart(Le)||!this._isInRange(Le))return!1;var An=this.rows[qt][Gt-1];if(!An){var Wn=this.rows[qt-1];An=Wn&&Wn[Wn.length-1]}return An&&!this._isRangeEnd(An.compareValue)}},{key:"_isComparisonBridgeEnd",value:function(Le,qt,Gt){if(!this._isComparisonEnd(Le)||this._isRangeEnd(Le)||!this._isInRange(Le))return!1;var An=this.rows[qt][Gt+1];if(!An){var Wn=this.rows[qt+1];An=Wn&&Wn[0]}return An&&!this._isRangeStart(An.compareValue)}},{key:"_isComparisonEnd",value:function(Le){return Fe(Le,this.comparisonStart,this.comparisonEnd)}},{key:"_isInComparisonRange",value:function(Le){return et(Le,this.comparisonStart,this.comparisonEnd,this.isRange)}},{key:"_isComparisonIdentical",value:function(Le){return this.comparisonStart===this.comparisonEnd&&Le===this.comparisonStart}},{key:"_isPreviewStart",value:function(Le){return ut(Le,this.previewStart,this.previewEnd)}},{key:"_isPreviewEnd",value:function(Le){return Fe(Le,this.previewStart,this.previewEnd)}},{key:"_isInPreview",value:function(Le){return et(Le,this.previewStart,this.previewEnd,this.isRange)}},{key:"_getCellFromElement",value:function(Le){var qt;if(xe(Le)?qt=Le:xe(Le.parentNode)&&(qt=Le.parentNode),qt){var Gt=qt.getAttribute("data-mat-row"),An=qt.getAttribute("data-mat-col");if(Gt&&An)return this.rows[parseInt(Gt)][parseInt(An)]}return null}}]),Pn}();return Cn.\u0275fac=function(Tt){return new(Tt||Cn)(y.Y36(y.SBq),y.Y36(y.R0b))},Cn.\u0275cmp=y.Xpm({type:Cn,selectors:[["","mat-calendar-body",""]],hostAttrs:[1,"mat-calendar-body"],inputs:{label:"label",rows:"rows",todayValue:"todayValue",startValue:"startValue",endValue:"endValue",labelMinRequiredCells:"labelMinRequiredCells",numCols:"numCols",activeCell:"activeCell",isRange:"isRange",cellAspectRatio:"cellAspectRatio",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",previewStart:"previewStart",previewEnd:"previewEnd"},outputs:{selectedValueChange:"selectedValueChange",previewChange:"previewChange"},exportAs:["matCalendarBody"],features:[y.TTD],attrs:te,decls:2,vars:2,consts:[["aria-hidden","true",4,"ngIf"],["role","row",4,"ngFor","ngForOf"],["aria-hidden","true"],[1,"mat-calendar-body-label"],["role","row"],["class","mat-calendar-body-label",3,"paddingTop","paddingBottom",4,"ngIf"],["role","gridcell","class","mat-calendar-body-cell-container",3,"width","paddingTop","paddingBottom",4,"ngFor","ngForOf"],["role","gridcell",1,"mat-calendar-body-cell-container"],["type","button",1,"mat-calendar-body-cell",3,"ngClass","tabindex","click"],[1,"mat-calendar-body-cell-content","mat-focus-indicator"],["aria-hidden","true",1,"mat-calendar-body-cell-preview"]],template:function(Tt,Le){1&Tt&&(y.YNc(0,K,3,6,"tr",0),y.YNc(1,_e,3,2,"tr",1)),2&Tt&&(y.Q6J("ngIf",Le._firstRowOffset.mat-calendar-body-cell-content,.cdk-high-contrast-active .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content{outline:dotted 2px}.cdk-high-contrast-active .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content.mat-calendar-body-selected,.cdk-high-contrast-active .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content.mat-calendar-body-selected{outline:solid 3px}.cdk-high-contrast-active .mat-calendar-body-cell::before,.cdk-high-contrast-active .mat-calendar-body-cell::after,.cdk-high-contrast-active .mat-calendar-body-selected{background:none}.cdk-high-contrast-active .mat-calendar-body-in-range::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-start::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-end::before{border-top:solid 1px;border-bottom:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:0;border-right:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:0;border-left:solid 1px}.cdk-high-contrast-active .mat-calendar-body-in-comparison-range::before{border-top:dashed 1px;border-bottom:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:0;border-right:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:0;border-left:dashed 1px}[dir=rtl] .mat-calendar-body-label{text-align:right}\n'],encapsulation:2,changeDetection:0}),Cn}();function xe(Cn){return"TD"===Cn.nodeName}function ut(Cn,Pn,Tt){return null!==Tt&&Pn!==Tt&&Cn=Pn&&Cn===Tt}function et(Cn,Pn,Tt,Le){return Le&&null!==Pn&&null!==Tt&&Pn!==Tt&&Cn>=Pn&&Cn<=Tt}var Ht=(0,o.Z)(function Cn(Pn,Tt){(0,_.Z)(this,Cn),this.start=Pn,this.end=Tt}),nn=function(){var Cn=function(){function Pn(Tt,Le){(0,_.Z)(this,Pn),this.selection=Tt,this._adapter=Le,this._selectionChanged=new k.x,this.selectionChanged=this._selectionChanged,this.selection=Tt}return(0,o.Z)(Pn,[{key:"updateSelection",value:function(Le,qt){var Gt=this.selection;this.selection=Le,this._selectionChanged.next({selection:Le,source:qt,oldValue:Gt})}},{key:"ngOnDestroy",value:function(){this._selectionChanged.complete()}},{key:"_isValidDateInstance",value:function(Le){return this._adapter.isDateInstance(Le)&&this._adapter.isValid(Le)}}]),Pn}();return Cn.\u0275fac=function(Tt){y.$Z()},Cn.\u0275prov=y.Yz7({token:Cn,factory:Cn.\u0275fac}),Cn}(),an=function(){var Cn=function(Pn){(0,c.Z)(Le,Pn);var Tt=(0,u.Z)(Le);function Le(qt){return(0,_.Z)(this,Le),Tt.call(this,null,qt)}return(0,o.Z)(Le,[{key:"add",value:function(Gt){(0,t.Z)((0,e.Z)(Le.prototype),"updateSelection",this).call(this,Gt,this)}},{key:"isValid",value:function(){return null!=this.selection&&this._isValidDateInstance(this.selection)}},{key:"isComplete",value:function(){return null!=this.selection}},{key:"clone",value:function(){var Gt=new Le(this._adapter);return Gt.updateSelection(this.selection,this),Gt}}]),Le}(nn);return Cn.\u0275fac=function(Tt){return new(Tt||Cn)(y.LFG(B._A))},Cn.\u0275prov=y.Yz7({token:Cn,factory:Cn.\u0275fac}),Cn}(),$e={provide:nn,deps:[[new y.FiY,new y.tp0,nn],B._A],useFactory:function It(Cn,Pn){return Cn||new an(Pn)}},ne=new y.OlP("MAT_DATE_RANGE_SELECTION_STRATEGY"),Ft=function(){var Cn=function(){function Pn(Tt,Le,qt,Gt,An){(0,_.Z)(this,Pn),this._changeDetectorRef=Tt,this._dateFormats=Le,this._dateAdapter=qt,this._dir=Gt,this._rangeStrategy=An,this._rerenderSubscription=D.w0.EMPTY,this.selectedChange=new y.vpe,this._userSelection=new y.vpe,this.activeDateChange=new y.vpe,this._activeDate=this._dateAdapter.today()}return(0,o.Z)(Pn,[{key:"activeDate",get:function(){return this._activeDate},set:function(Le){var qt=this._activeDate,Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Gt,this.minDate,this.maxDate),this._hasSameMonthAndYear(qt,this._activeDate)||this._init()}},{key:"selected",get:function(){return this._selected},set:function(Le){this._selected=Le instanceof Ht?Le:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le)),this._setRanges(this._selected)}},{key:"minDate",get:function(){return this._minDate},set:function(Le){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le))}},{key:"maxDate",get:function(){return this._maxDate},set:function(Le){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le))}},{key:"ngAfterContentInit",value:function(){var Le=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,le.O)(null)).subscribe(function(){return Le._init()})}},{key:"ngOnChanges",value:function(Le){var qt=Le.comparisonStart||Le.comparisonEnd;qt&&!qt.firstChange&&this._setRanges(this.selected)}},{key:"ngOnDestroy",value:function(){this._rerenderSubscription.unsubscribe()}},{key:"_dateSelected",value:function(Le){var vi,Hi,qt=Le.value,Gt=this._dateAdapter.getYear(this.activeDate),An=this._dateAdapter.getMonth(this.activeDate),Wn=this._dateAdapter.createDate(Gt,An,qt);this._selected instanceof Ht?(vi=this._getDateInCurrentMonth(this._selected.start),Hi=this._getDateInCurrentMonth(this._selected.end)):vi=Hi=this._getDateInCurrentMonth(this._selected),(vi!==qt||Hi!==qt)&&this.selectedChange.emit(Wn),this._userSelection.emit({value:Wn,event:Le.event}),this._previewStart=this._previewEnd=null,this._changeDetectorRef.markForCheck()}},{key:"_handleCalendarBodyKeydown",value:function(Le){var qt=this._activeDate,Gt=this._isRtl();switch(Le.keyCode){case L.oh:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Gt?1:-1);break;case L.SV:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Gt?-1:1);break;case L.LH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,-7);break;case L.JH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,7);break;case L.Sd:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,1-this._dateAdapter.getDate(this._activeDate));break;case L.uR:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,this._dateAdapter.getNumDaysInMonth(this._activeDate)-this._dateAdapter.getDate(this._activeDate));break;case L.Ku:this.activeDate=Le.altKey?this._dateAdapter.addCalendarYears(this._activeDate,-1):this._dateAdapter.addCalendarMonths(this._activeDate,-1);break;case L.VM:this.activeDate=Le.altKey?this._dateAdapter.addCalendarYears(this._activeDate,1):this._dateAdapter.addCalendarMonths(this._activeDate,1);break;case L.K5:case L.L_:return this._selectionKeyPressed=!0,void(this._canSelect(this._activeDate)&&Le.preventDefault());case L.hY:return void(null!=this._previewEnd&&!(0,L.Vb)(Le)&&(this._previewStart=this._previewEnd=null,this.selectedChange.emit(null),this._userSelection.emit({value:null,event:Le}),Le.preventDefault(),Le.stopPropagation()));default:return}this._dateAdapter.compareDate(qt,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),Le.preventDefault()}},{key:"_handleCalendarBodyKeyup",value:function(Le){(Le.keyCode===L.L_||Le.keyCode===L.K5)&&(this._selectionKeyPressed&&this._canSelect(this._activeDate)&&this._dateSelected({value:this._dateAdapter.getDate(this._activeDate),event:Le}),this._selectionKeyPressed=!1)}},{key:"_init",value:function(){this._setRanges(this.selected),this._todayDate=this._getCellCompareValue(this._dateAdapter.today()),this._monthLabel=this._dateFormats.display.monthLabel?this._dateAdapter.format(this.activeDate,this._dateFormats.display.monthLabel):this._dateAdapter.getMonthNames("short")[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();var Le=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),1);this._firstWeekOffset=(7+this._dateAdapter.getDayOfWeek(Le)-this._dateAdapter.getFirstDayOfWeek())%7,this._initWeekdays(),this._createWeekCells(),this._changeDetectorRef.markForCheck()}},{key:"_focusActiveCell",value:function(Le){this._matCalendarBody._focusActiveCell(Le)}},{key:"_previewChanged",value:function(Le){var Gt=Le.value;if(this._rangeStrategy){var Wn=this._rangeStrategy.createPreview(Gt?Gt.rawValue:null,this.selected,Le.event);this._previewStart=this._getCellCompareValue(Wn.start),this._previewEnd=this._getCellCompareValue(Wn.end),this._changeDetectorRef.detectChanges()}}},{key:"_initWeekdays",value:function(){var Le=this._dateAdapter.getFirstDayOfWeek(),qt=this._dateAdapter.getDayOfWeekNames("narrow"),An=this._dateAdapter.getDayOfWeekNames("long").map(function(Wn,vi){return{long:Wn,narrow:qt[vi]}});this._weekdays=An.slice(Le).concat(An.slice(0,Le))}},{key:"_createWeekCells",value:function(){var Le=this._dateAdapter.getNumDaysInMonth(this.activeDate),qt=this._dateAdapter.getDateNames();this._weeks=[[]];for(var Gt=0,An=this._firstWeekOffset;Gt=0)&&(!this.maxDate||this._dateAdapter.compareDate(Le,this.maxDate)<=0)&&(!this.dateFilter||this.dateFilter(Le))}},{key:"_getDateInCurrentMonth",value:function(Le){return Le&&this._hasSameMonthAndYear(Le,this.activeDate)?this._dateAdapter.getDate(Le):null}},{key:"_hasSameMonthAndYear",value:function(Le,qt){return!(!Le||!qt||this._dateAdapter.getMonth(Le)!=this._dateAdapter.getMonth(qt)||this._dateAdapter.getYear(Le)!=this._dateAdapter.getYear(qt))}},{key:"_getCellCompareValue",value:function(Le){if(Le){var qt=this._dateAdapter.getYear(Le),Gt=this._dateAdapter.getMonth(Le),An=this._dateAdapter.getDate(Le);return new Date(qt,Gt,An).getTime()}return null}},{key:"_isRtl",value:function(){return this._dir&&"rtl"===this._dir.value}},{key:"_setRanges",value:function(Le){Le instanceof Ht?(this._rangeStart=this._getCellCompareValue(Le.start),this._rangeEnd=this._getCellCompareValue(Le.end),this._isRange=!0):(this._rangeStart=this._rangeEnd=this._getCellCompareValue(Le),this._isRange=!1),this._comparisonRangeStart=this._getCellCompareValue(this.comparisonStart),this._comparisonRangeEnd=this._getCellCompareValue(this.comparisonEnd)}},{key:"_canSelect",value:function(Le){return!this.dateFilter||this.dateFilter(Le)}}]),Pn}();return Cn.\u0275fac=function(Tt){return new(Tt||Cn)(y.Y36(y.sBO),y.Y36(B.sG,8),y.Y36(B._A,8),y.Y36(W.Is,8),y.Y36(ne,8))},Cn.\u0275cmp=y.Xpm({type:Cn,selectors:[["mat-month-view"]],viewQuery:function(Tt,Le){var qt;1&Tt&&y.Gf(We,5),2&Tt&&y.iGM(qt=y.CRH())&&(Le._matCalendarBody=qt.first)},inputs:{activeDate:"activeDate",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd"},outputs:{selectedChange:"selectedChange",_userSelection:"_userSelection",activeDateChange:"activeDateChange"},exportAs:["matMonthView"],features:[y.TTD],decls:7,vars:13,consts:[["role","grid",1,"mat-calendar-table"],[1,"mat-calendar-table-header"],["scope","col",4,"ngFor","ngForOf"],["aria-hidden","true","colspan","7",1,"mat-calendar-table-header-divider"],["mat-calendar-body","",3,"label","rows","todayValue","startValue","endValue","comparisonStart","comparisonEnd","previewStart","previewEnd","isRange","labelMinRequiredCells","activeCell","selectedValueChange","previewChange","keyup","keydown"],["scope","col"],[1,"mat-calendar-abbr"]],template:function(Tt,Le){1&Tt&&(y.TgZ(0,"table",0),y.TgZ(1,"thead",1),y.TgZ(2,"tr"),y.YNc(3,Me,3,3,"th",2),y.qZA(),y.TgZ(4,"tr"),y._UZ(5,"th",3),y.qZA(),y.qZA(),y.TgZ(6,"tbody",4),y.NdJ("selectedValueChange",function(Gt){return Le._dateSelected(Gt)})("previewChange",function(Gt){return Le._previewChanged(Gt)})("keyup",function(Gt){return Le._handleCalendarBodyKeyup(Gt)})("keydown",function(Gt){return Le._handleCalendarBodyKeydown(Gt)}),y.qZA(),y.qZA()),2&Tt&&(y.xp6(3),y.Q6J("ngForOf",Le._weekdays),y.xp6(3),y.Q6J("label",Le._monthLabel)("rows",Le._weeks)("todayValue",Le._todayDate)("startValue",Le._rangeStart)("endValue",Le._rangeEnd)("comparisonStart",Le._comparisonRangeStart)("comparisonEnd",Le._comparisonRangeEnd)("previewStart",Le._previewStart)("previewEnd",Le._previewEnd)("isRange",Le._isRange)("labelMinRequiredCells",3)("activeCell",Le._dateAdapter.getDate(Le.activeDate)-1))},directives:[We,T.sg],encapsulation:2,changeDetection:0}),Cn}(),gn=function(){var Cn=function(){function Pn(Tt,Le,qt){(0,_.Z)(this,Pn),this._changeDetectorRef=Tt,this._dateAdapter=Le,this._dir=qt,this._rerenderSubscription=D.w0.EMPTY,this.selectedChange=new y.vpe,this.yearSelected=new y.vpe,this.activeDateChange=new y.vpe,this._activeDate=this._dateAdapter.today()}return(0,o.Z)(Pn,[{key:"activeDate",get:function(){return this._activeDate},set:function(Le){var qt=this._activeDate,Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Gt,this.minDate,this.maxDate),vn(this._dateAdapter,qt,this._activeDate,this.minDate,this.maxDate)||this._init()}},{key:"selected",get:function(){return this._selected},set:function(Le){this._selected=Le instanceof Ht?Le:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le)),this._setSelectedYear(Le)}},{key:"minDate",get:function(){return this._minDate},set:function(Le){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le))}},{key:"maxDate",get:function(){return this._maxDate},set:function(Le){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le))}},{key:"ngAfterContentInit",value:function(){var Le=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,le.O)(null)).subscribe(function(){return Le._init()})}},{key:"ngOnDestroy",value:function(){this._rerenderSubscription.unsubscribe()}},{key:"_init",value:function(){var Le=this;this._todayYear=this._dateAdapter.getYear(this._dateAdapter.today());var Gt=this._dateAdapter.getYear(this._activeDate)-hn(this._dateAdapter,this.activeDate,this.minDate,this.maxDate);this._years=[];for(var An=0,Wn=[];An<24;An++)Wn.push(Gt+An),4==Wn.length&&(this._years.push(Wn.map(function(vi){return Le._createCellForYear(vi)})),Wn=[]);this._changeDetectorRef.markForCheck()}},{key:"_yearSelected",value:function(Le){var qt=Le.value;this.yearSelected.emit(this._dateAdapter.createDate(qt,0,1));var Gt=this._dateAdapter.getMonth(this.activeDate),An=this._dateAdapter.getNumDaysInMonth(this._dateAdapter.createDate(qt,Gt,1));this.selectedChange.emit(this._dateAdapter.createDate(qt,Gt,Math.min(this._dateAdapter.getDate(this.activeDate),An)))}},{key:"_handleCalendarBodyKeydown",value:function(Le){var qt=this._activeDate,Gt=this._isRtl();switch(Le.keyCode){case L.oh:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Gt?1:-1);break;case L.SV:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Gt?-1:1);break;case L.LH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-4);break;case L.JH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,4);break;case L.Sd:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-hn(this._dateAdapter,this.activeDate,this.minDate,this.maxDate));break;case L.uR:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,24-hn(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)-1);break;case L.Ku:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Le.altKey?-240:-24);break;case L.VM:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Le.altKey?240:24);break;case L.K5:case L.L_:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(qt,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),Le.preventDefault()}},{key:"_handleCalendarBodyKeyup",value:function(Le){(Le.keyCode===L.L_||Le.keyCode===L.K5)&&(this._selectionKeyPressed&&this._yearSelected({value:this._dateAdapter.getYear(this._activeDate),event:Le}),this._selectionKeyPressed=!1)}},{key:"_getActiveCell",value:function(){return hn(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)}},{key:"_focusActiveCell",value:function(){this._matCalendarBody._focusActiveCell()}},{key:"_createCellForYear",value:function(Le){var qt=this._dateAdapter.createDate(Le,0,1),Gt=this._dateAdapter.getYearName(qt),An=this.dateClass?this.dateClass(qt,"multi-year"):void 0;return new at(Le,Gt,Gt,this._shouldEnableYear(Le),An)}},{key:"_shouldEnableYear",value:function(Le){if(null==Le||this.maxDate&&Le>this._dateAdapter.getYear(this.maxDate)||this.minDate&&LeGt||Le===Gt&&qt>An}return!1}},{key:"_isYearAndMonthBeforeMinDate",value:function(Le,qt){if(this.minDate){var Gt=this._dateAdapter.getYear(this.minDate),An=this._dateAdapter.getMonth(this.minDate);return Le enter-dropdown",(0,z.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,z.F4)([(0,z.oB)({opacity:0,transform:"scale(1, 0.8)"}),(0,z.oB)({opacity:1,transform:"scale(1, 1)"})]))),(0,z.eR)("void => enter-dialog",(0,z.jt)("150ms cubic-bezier(0, 0, 0.2, 1)",(0,z.F4)([(0,z.oB)({opacity:0,transform:"scale(0.7)"}),(0,z.oB)({transform:"none",opacity:1})]))),(0,z.eR)("* => void",(0,z.jt)("100ms linear",(0,z.oB)({opacity:0})))]),fadeInCalendar:(0,z.X$)("fadeInCalendar",[(0,z.SB)("void",(0,z.oB)({opacity:0})),(0,z.SB)("enter",(0,z.oB)({opacity:1})),(0,z.eR)("void => *",(0,z.jt)("120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"))])},pt=0,Ne=new y.OlP("mat-datepicker-scroll-strategy"),tt={provide:Ne,deps:[h.aV],useFactory:function Re(Cn){return function(){return Cn.scrollStrategies.reposition()}}},Ke=(0,B.pj)(function(){return(0,o.Z)(function Cn(Pn){(0,_.Z)(this,Cn),this._elementRef=Pn})}()),vt=function(){var Cn=function(Pn){(0,c.Z)(Le,Pn);var Tt=(0,u.Z)(Le);function Le(qt,Gt,An,Wn,vi,Hi){var ea;return(0,_.Z)(this,Le),(ea=Tt.call(this,qt))._changeDetectorRef=Gt,ea._globalModel=An,ea._dateAdapter=Wn,ea._rangeSelectionStrategy=vi,ea._subscriptions=new D.w0,ea._animationDone=new k.x,ea._actionsPortal=null,ea._closeButtonText=Hi.closeCalendarLabel,ea}return(0,o.Z)(Le,[{key:"ngOnInit",value:function(){this._model=this._actionsPortal?this._globalModel.clone():this._globalModel,this._animationState=this.datepicker.touchUi?"enter-dialog":"enter-dropdown"}},{key:"ngAfterViewInit",value:function(){var Gt=this;this._subscriptions.add(this.datepicker.stateChanges.subscribe(function(){Gt._changeDetectorRef.markForCheck()})),this._calendar.focusActiveCell()}},{key:"ngOnDestroy",value:function(){this._subscriptions.unsubscribe(),this._animationDone.complete()}},{key:"_handleUserSelection",value:function(Gt){var An=this._model.selection,Wn=Gt.value,vi=An instanceof Ht;if(vi&&this._rangeSelectionStrategy){var Hi=this._rangeSelectionStrategy.selectionFinished(Wn,An,Gt.event);this._model.updateSelection(Hi,this)}else Wn&&(vi||!this._dateAdapter.sameDate(Wn,An))&&this._model.add(Wn);(!this._model||this._model.isComplete())&&!this._actionsPortal&&this.datepicker.close()}},{key:"_startExitAnimation",value:function(){this._animationState="void",this._changeDetectorRef.markForCheck()}},{key:"_getSelected",value:function(){return this._model.selection}},{key:"_applyPendingSelection",value:function(){this._model!==this._globalModel&&this._globalModel.updateSelection(this._model.selection,this)}}]),Le}(Ke);return Cn.\u0275fac=function(Tt){return new(Tt||Cn)(y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(nn),y.Y36(B._A),y.Y36(ne,8),y.Y36(ri))},Cn.\u0275cmp=y.Xpm({type:Cn,selectors:[["mat-datepicker-content"]],viewQuery:function(Tt,Le){var qt;1&Tt&&y.Gf(zt,5),2&Tt&&y.iGM(qt=y.CRH())&&(Le._calendar=qt.first)},hostAttrs:[1,"mat-datepicker-content"],hostVars:3,hostBindings:function(Tt,Le){1&Tt&&y.WFA("@transformPanel.done",function(){return Le._animationDone.next()}),2&Tt&&(y.d8E("@transformPanel",Le._animationState),y.ekj("mat-datepicker-content-touch",Le.datepicker.touchUi))},inputs:{color:"color"},exportAs:["matDatepickerContent"],features:[y.qOj],decls:5,vars:22,consts:[["cdkTrapFocus","",1,"mat-datepicker-content-container"],[3,"id","ngClass","startAt","startView","minDate","maxDate","dateFilter","headerComponent","selected","dateClass","comparisonStart","comparisonEnd","yearSelected","monthSelected","viewChanged","_userSelection"],[3,"cdkPortalOutlet"],["type","button","mat-raised-button","",1,"mat-datepicker-close-button",3,"color","focus","blur","click"]],template:function(Tt,Le){1&Tt&&(y.TgZ(0,"div",0),y.TgZ(1,"mat-calendar",1),y.NdJ("yearSelected",function(Gt){return Le.datepicker._selectYear(Gt)})("monthSelected",function(Gt){return Le.datepicker._selectMonth(Gt)})("viewChanged",function(Gt){return Le.datepicker._viewChanged(Gt)})("_userSelection",function(Gt){return Le._handleUserSelection(Gt)}),y.qZA(),y.YNc(2,wt,0,0,"ng-template",2),y.TgZ(3,"button",3),y.NdJ("focus",function(){return Le._closeButtonFocused=!0})("blur",function(){return Le._closeButtonFocused=!1})("click",function(){return Le.datepicker.close()}),y._uU(4),y.qZA(),y.qZA()),2&Tt&&(y.ekj("mat-datepicker-content-container-with-custom-header",Le.datepicker.calendarHeaderComponent)("mat-datepicker-content-container-with-actions",Le._actionsPortal),y.xp6(1),y.Q6J("id",Le.datepicker.id)("ngClass",Le.datepicker.panelClass)("startAt",Le.datepicker.startAt)("startView",Le.datepicker.startView)("minDate",Le.datepicker._getMinDate())("maxDate",Le.datepicker._getMaxDate())("dateFilter",Le.datepicker._getDateFilter())("headerComponent",Le.datepicker.calendarHeaderComponent)("selected",Le._getSelected())("dateClass",Le.datepicker.dateClass)("comparisonStart",Le.comparisonStart)("comparisonEnd",Le.comparisonEnd)("@fadeInCalendar","enter"),y.xp6(1),y.Q6J("cdkPortalOutlet",Le._actionsPortal),y.xp6(1),y.ekj("cdk-visually-hidden",!Le._closeButtonFocused),y.Q6J("color",Le.color||"primary"),y.xp6(1),y.Oqu(Le._closeButtonText))},directives:[zt,Y.lW,s.mK,T.mk,b.Pl],styles:[".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"],encapsulation:2,data:{animation:[qe.transformPanel,qe.fadeInCalendar]},changeDetection:0}),Cn}(),Rt=function(){var Cn=function(){function Pn(Tt,Le,qt,Gt,An,Wn,vi){(0,_.Z)(this,Pn),this._overlay=Tt,this._ngZone=Le,this._viewContainerRef=qt,this._dateAdapter=An,this._dir=Wn,this._model=vi,this._inputStateChanges=D.w0.EMPTY,this.startView="month",this._touchUi=!1,this.xPosition="start",this.yPosition="below",this._restoreFocus=!0,this.yearSelected=new y.vpe,this.monthSelected=new y.vpe,this.viewChanged=new y.vpe(!0),this.openedStream=new y.vpe,this.closedStream=new y.vpe,this._opened=!1,this.id="mat-datepicker-".concat(pt++),this._focusedElementBeforeOpen=null,this._backdropHarnessClass="".concat(this.id,"-backdrop"),this.stateChanges=new k.x,this._scrollStrategy=Gt}return(0,o.Z)(Pn,[{key:"startAt",get:function(){return this._startAt||(this.datepickerInput?this.datepickerInput.getStartValue():null)},set:function(Le){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Le))}},{key:"color",get:function(){return this._color||(this.datepickerInput?this.datepickerInput.getThemePalette():void 0)},set:function(Le){this._color=Le}},{key:"touchUi",get:function(){return this._touchUi},set:function(Le){this._touchUi=(0,$.Ig)(Le)}},{key:"disabled",get:function(){return void 0===this._disabled&&this.datepickerInput?this.datepickerInput.disabled:!!this._disabled},set:function(Le){var qt=(0,$.Ig)(Le);qt!==this._disabled&&(this._disabled=qt,this.stateChanges.next(void 0))}},{key:"restoreFocus",get:function(){return this._restoreFocus},set:function(Le){this._restoreFocus=(0,$.Ig)(Le)}},{key:"panelClass",get:function(){return this._panelClass},set:function(Le){this._panelClass=(0,$.du)(Le)}},{key:"opened",get:function(){return this._opened},set:function(Le){(0,$.Ig)(Le)?this.open():this.close()}},{key:"_getMinDate",value:function(){return this.datepickerInput&&this.datepickerInput.min}},{key:"_getMaxDate",value:function(){return this.datepickerInput&&this.datepickerInput.max}},{key:"_getDateFilter",value:function(){return this.datepickerInput&&this.datepickerInput.dateFilter}},{key:"ngOnChanges",value:function(Le){var qt=Le.xPosition||Le.yPosition;if(qt&&!qt.firstChange&&this._overlayRef){var Gt=this._overlayRef.getConfig().positionStrategy;Gt instanceof h._G&&(this._setConnectedPositions(Gt),this.opened&&this._overlayRef.updatePosition())}this.stateChanges.next(void 0)}},{key:"ngOnDestroy",value:function(){this._destroyOverlay(),this.close(),this._inputStateChanges.unsubscribe(),this.stateChanges.complete()}},{key:"select",value:function(Le){this._model.add(Le)}},{key:"_selectYear",value:function(Le){this.yearSelected.emit(Le)}},{key:"_selectMonth",value:function(Le){this.monthSelected.emit(Le)}},{key:"_viewChanged",value:function(Le){this.viewChanged.emit(Le)}},{key:"registerInput",value:function(Le){var qt=this;return this._inputStateChanges.unsubscribe(),this.datepickerInput=Le,this._inputStateChanges=Le.stateChanges.subscribe(function(){return qt.stateChanges.next(void 0)}),this._model}},{key:"registerActions",value:function(Le){this._actionsPortal=Le}},{key:"removeActions",value:function(Le){Le===this._actionsPortal&&(this._actionsPortal=null)}},{key:"open",value:function(){this._opened||this.disabled||(this._focusedElementBeforeOpen=(0,be.ht)(),this._openOverlay(),this._opened=!0,this.openedStream.emit())}},{key:"close",value:function(){var Le=this;if(this._opened){if(this._componentRef){var qt=this._componentRef.instance;qt._startExitAnimation(),qt._animationDone.pipe((0,j.q)(1)).subscribe(function(){return Le._destroyOverlay()})}var Gt=function(){Le._opened&&(Le._opened=!1,Le.closedStream.emit(),Le._focusedElementBeforeOpen=null)};this._restoreFocus&&this._focusedElementBeforeOpen&&"function"==typeof this._focusedElementBeforeOpen.focus?(this._focusedElementBeforeOpen.focus(),setTimeout(Gt)):Gt()}}},{key:"_applyPendingSelection",value:function(){var Le,qt;null===(qt=null===(Le=this._componentRef)||void 0===Le?void 0:Le.instance)||void 0===qt||qt._applyPendingSelection()}},{key:"_forwardContentValues",value:function(Le){Le.datepicker=this,Le.color=this.color,Le._actionsPortal=this._actionsPortal}},{key:"_openOverlay",value:function(){var Le=this;this._destroyOverlay();var qt=this.touchUi,Gt=this.datepickerInput.getOverlayLabelId(),An=new b.C5(vt,this._viewContainerRef),Wn=this._overlayRef=this._overlay.create(new h.X_({positionStrategy:qt?this._getDialogStrategy():this._getDropdownStrategy(),hasBackdrop:!0,backdropClass:[qt?"cdk-overlay-dark-backdrop":"mat-overlay-transparent-backdrop",this._backdropHarnessClass],direction:this._dir,scrollStrategy:qt?this._overlay.scrollStrategies.block():this._scrollStrategy(),panelClass:"mat-datepicker-".concat(qt?"dialog":"popup")})),vi=Wn.overlayElement;vi.setAttribute("role","dialog"),Gt&&vi.setAttribute("aria-labelledby",Gt),qt&&vi.setAttribute("aria-modal","true"),this._getCloseStream(Wn).subscribe(function(Hi){Hi&&Hi.preventDefault(),Le.close()}),this._componentRef=Wn.attach(An),this._forwardContentValues(this._componentRef.instance),qt||this._ngZone.onStable.pipe((0,j.q)(1)).subscribe(function(){return Wn.updatePosition()})}},{key:"_destroyOverlay",value:function(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=this._componentRef=null)}},{key:"_getDialogStrategy",value:function(){return this._overlay.position().global().centerHorizontally().centerVertically()}},{key:"_getDropdownStrategy",value:function(){var Le=this._overlay.position().flexibleConnectedTo(this.datepickerInput.getConnectedOverlayOrigin()).withTransformOriginOn(".mat-datepicker-content").withFlexibleDimensions(!1).withViewportMargin(8).withLockedPosition();return this._setConnectedPositions(Le)}},{key:"_setConnectedPositions",value:function(Le){var qt="end"===this.xPosition?"end":"start",Gt="start"===qt?"end":"start",An="above"===this.yPosition?"bottom":"top",Wn="top"===An?"bottom":"top";return Le.withPositions([{originX:qt,originY:Wn,overlayX:qt,overlayY:An},{originX:qt,originY:An,overlayX:qt,overlayY:Wn},{originX:Gt,originY:Wn,overlayX:Gt,overlayY:An},{originX:Gt,originY:An,overlayX:Gt,overlayY:Wn}])}},{key:"_getCloseStream",value:function(Le){var qt=this;return(0,N.T)(Le.backdropClick(),Le.detachments(),Le.keydownEvents().pipe((0,re.h)(function(Gt){return Gt.keyCode===L.hY&&!(0,L.Vb)(Gt)||qt.datepickerInput&&(0,L.Vb)(Gt,"altKey")&&Gt.keyCode===L.LH})))}}]),Pn}();return Cn.\u0275fac=function(Tt){return new(Tt||Cn)(y.Y36(h.aV),y.Y36(y.R0b),y.Y36(y.s_b),y.Y36(Ne),y.Y36(B._A,8),y.Y36(W.Is,8),y.Y36(nn))},Cn.\u0275dir=y.lG2({type:Cn,inputs:{calendarHeaderComponent:"calendarHeaderComponent",startAt:"startAt",startView:"startView",color:"color",touchUi:"touchUi",disabled:"disabled",xPosition:"xPosition",yPosition:"yPosition",restoreFocus:"restoreFocus",dateClass:"dateClass",panelClass:"panelClass",opened:"opened"},outputs:{yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",openedStream:"opened",closedStream:"closed"},features:[y.TTD]}),Cn}(),rn=function(){var Cn=function(Pn){(0,c.Z)(Le,Pn);var Tt=(0,u.Z)(Le);function Le(){return(0,_.Z)(this,Le),Tt.apply(this,arguments)}return(0,o.Z)(Le)}(Rt);return Cn.\u0275fac=function(){var Pn;return function(Le){return(Pn||(Pn=y.n5z(Cn)))(Le||Cn)}}(),Cn.\u0275cmp=y.Xpm({type:Cn,selectors:[["mat-datepicker"]],exportAs:["matDatepicker"],features:[y._Bn([$e,{provide:Rt,useExisting:Cn}]),y.qOj],decls:0,vars:0,template:function(Tt,Le){},encapsulation:2,changeDetection:0}),Cn}(),Nn=(0,o.Z)(function Cn(Pn,Tt){(0,_.Z)(this,Cn),this.target=Pn,this.targetElement=Tt,this.value=this.target.value}),$t=function(){var Cn=function(){function Pn(Tt,Le,qt){var Gt=this;(0,_.Z)(this,Pn),this._elementRef=Tt,this._dateAdapter=Le,this._dateFormats=qt,this.dateChange=new y.vpe,this.dateInput=new y.vpe,this.stateChanges=new k.x,this._onTouched=function(){},this._validatorOnChange=function(){},this._cvaOnChange=function(){},this._valueChangesSubscription=D.w0.EMPTY,this._localeSubscription=D.w0.EMPTY,this._parseValidator=function(){return Gt._lastValueValid?null:{matDatepickerParse:{text:Gt._elementRef.nativeElement.value}}},this._filterValidator=function(An){var Wn=Gt._dateAdapter.getValidDateOrNull(Gt._dateAdapter.deserialize(An.value));return!Wn||Gt._matchesFilter(Wn)?null:{matDatepickerFilter:!0}},this._minValidator=function(An){var Wn=Gt._dateAdapter.getValidDateOrNull(Gt._dateAdapter.deserialize(An.value)),vi=Gt._getMinDate();return!vi||!Wn||Gt._dateAdapter.compareDate(vi,Wn)<=0?null:{matDatepickerMin:{min:vi,actual:Wn}}},this._maxValidator=function(An){var Wn=Gt._dateAdapter.getValidDateOrNull(Gt._dateAdapter.deserialize(An.value)),vi=Gt._getMaxDate();return!vi||!Wn||Gt._dateAdapter.compareDate(vi,Wn)>=0?null:{matDatepickerMax:{max:vi,actual:Wn}}},this._lastValueValid=!1,this._localeSubscription=Le.localeChanges.subscribe(function(){Gt._assignValueProgrammatically(Gt.value)})}return(0,o.Z)(Pn,[{key:"value",get:function(){return this._model?this._getValueFromModel(this._model.selection):this._pendingValue},set:function(Le){this._assignValueProgrammatically(Le)}},{key:"disabled",get:function(){return!!this._disabled||this._parentDisabled()},set:function(Le){var qt=(0,$.Ig)(Le),Gt=this._elementRef.nativeElement;this._disabled!==qt&&(this._disabled=qt,this.stateChanges.next(void 0)),qt&&this._isInitialized&&Gt.blur&&Gt.blur()}},{key:"_getValidators",value:function(){return[this._parseValidator,this._minValidator,this._maxValidator,this._filterValidator]}},{key:"_registerModel",value:function(Le){var qt=this;this._model=Le,this._valueChangesSubscription.unsubscribe(),this._pendingValue&&this._assignValue(this._pendingValue),this._valueChangesSubscription=this._model.selectionChanged.subscribe(function(Gt){if(qt._shouldHandleChangeEvent(Gt)){var An=qt._getValueFromModel(Gt.selection);qt._lastValueValid=qt._isValidValue(An),qt._cvaOnChange(An),qt._onTouched(),qt._formatValue(An),qt.dateInput.emit(new Nn(qt,qt._elementRef.nativeElement)),qt.dateChange.emit(new Nn(qt,qt._elementRef.nativeElement))}})}},{key:"ngAfterViewInit",value:function(){this._isInitialized=!0}},{key:"ngOnChanges",value:function(Le){(function fn(Cn,Pn){for(var Le=0,qt=Object.keys(Cn);Le enter",(0,I.jt)("150ms cubic-bezier(0, 0, 0.2, 1)",(0,I.oB)({transform:"none",opacity:1}))),(0,I.eR)("* => void, * => exit",(0,I.jt)("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",(0,I.oB)({opacity:0})))])},z=function(){var Ee=function(st){(0,S.Z)(at,st);var nt=(0,t.Z)(at);function at(We,xe,ut,Fe,et,Ht,nn,an){var kt;return(0,c.Z)(this,at),(kt=nt.call(this))._elementRef=We,kt._focusTrapFactory=xe,kt._changeDetectorRef=ut,kt._config=et,kt._interactivityChecker=Ht,kt._ngZone=nn,kt._focusMonitor=an,kt._animationStateChanged=new _.vpe,kt._elementFocusedBeforeDialogWasOpened=null,kt._closeInteractionType=null,kt.attachDomPortal=function(It){return kt._portalOutlet.hasAttached(),kt._portalOutlet.attachDomPortal(It)},kt._ariaLabelledBy=et.ariaLabelledBy||null,kt._document=Fe,kt}return(0,e.Z)(at,[{key:"_initializeWithAttachedContent",value:function(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement()}},{key:"attachComponentPortal",value:function(xe){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(xe)}},{key:"attachTemplatePortal",value:function(xe){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(xe)}},{key:"_recaptureFocus",value:function(){this._containsFocus()||this._trapFocus()}},{key:"_forceFocus",value:function(xe,ut){this._interactivityChecker.isFocusable(xe)||(xe.tabIndex=-1,this._ngZone.runOutsideAngular(function(){xe.addEventListener("blur",function(){return xe.removeAttribute("tabindex")}),xe.addEventListener("mousedown",function(){return xe.removeAttribute("tabindex")})})),xe.focus(ut)}},{key:"_focusByCssSelector",value:function(xe,ut){var Fe=this._elementRef.nativeElement.querySelector(xe);Fe&&this._forceFocus(Fe,ut)}},{key:"_trapFocus",value:function(){var xe=this,ut=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||ut.focus();break;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(function(Fe){Fe||xe._focusDialogContainer()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this._config.autoFocus)}}},{key:"_restoreFocus",value:function(){var xe=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&xe&&"function"==typeof xe.focus){var ut=(0,D.ht)(),Fe=this._elementRef.nativeElement;(!ut||ut===this._document.body||ut===Fe||Fe.contains(ut))&&(this._focusMonitor?(this._focusMonitor.focusVia(xe,this._closeInteractionType),this._closeInteractionType=null):xe.focus())}this._focusTrap&&this._focusTrap.destroy()}},{key:"_setupFocusTrap",value:function(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}},{key:"_capturePreviouslyFocusedElement",value:function(){this._document&&(this._elementFocusedBeforeDialogWasOpened=(0,D.ht)())}},{key:"_focusDialogContainer",value:function(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}},{key:"_containsFocus",value:function(){var xe=this._elementRef.nativeElement,ut=(0,D.ht)();return xe===ut||xe.contains(ut)}}]),at}(o.en);return Ee.\u0275fac=function(nt){return new(nt||Ee)(_.Y36(_.SBq),_.Y36(L.qV),_.Y36(_.sBO),_.Y36(N.K0,8),_.Y36(W),_.Y36(L.ic),_.Y36(_.R0b),_.Y36(L.tE))},Ee.\u0275dir=_.lG2({type:Ee,viewQuery:function(nt,at){var We;1&nt&&_.Gf(o.Pl,7),2&nt&&_.iGM(We=_.CRH())&&(at._portalOutlet=We.first)},features:[_.qOj]}),Ee}(),d=function(){var Ee=function(st){(0,S.Z)(at,st);var nt=(0,t.Z)(at);function at(){var We;return(0,c.Z)(this,at),(We=nt.apply(this,arguments))._state="enter",We}return(0,e.Z)(at,[{key:"_onAnimationDone",value:function(xe){var ut=xe.toState,Fe=xe.totalTime;"enter"===ut?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:Fe})):"exit"===ut&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:Fe}))}},{key:"_onAnimationStart",value:function(xe){var ut=xe.toState,Fe=xe.totalTime;"enter"===ut?this._animationStateChanged.next({state:"opening",totalTime:Fe}):("exit"===ut||"void"===ut)&&this._animationStateChanged.next({state:"closing",totalTime:Fe})}},{key:"_startExitAnimation",value:function(){this._state="exit",this._changeDetectorRef.markForCheck()}}]),at}(z);return Ee.\u0275fac=function(){var st;return function(at){return(st||(st=_.n5z(Ee)))(at||Ee)}}(),Ee.\u0275cmp=_.Xpm({type:Ee,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(nt,at){1&nt&&_.WFA("@dialogContainer.start",function(xe){return at._onAnimationStart(xe)})("@dialogContainer.done",function(xe){return at._onAnimationDone(xe)}),2&nt&&(_.Ikx("id",at._id),_.uIk("role",at._config.role)("aria-labelledby",at._config.ariaLabel?null:at._ariaLabelledBy)("aria-label",at._config.ariaLabel)("aria-describedby",at._config.ariaDescribedBy||null),_.d8E("@dialogContainer",at._state))},features:[_.qOj],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(nt,at){1&nt&&_.YNc(0,re,0,0,"ng-template",0)},directives:[o.Pl],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[$.dialogContainer]}}),Ee}(),Q=0,J=function(){function Ee(st,nt){var at=this,We=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"mat-dialog-".concat(Q++);(0,c.Z)(this,Ee),this._overlayRef=st,this._containerInstance=nt,this.id=We,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new b.x,this._afterClosed=new b.x,this._beforeClosed=new b.x,this._state=0,nt._id=We,nt._animationStateChanged.pipe((0,q.h)(function(xe){return"opened"===xe.state}),(0,B.q)(1)).subscribe(function(){at._afterOpened.next(),at._afterOpened.complete()}),nt._animationStateChanged.pipe((0,q.h)(function(xe){return"closed"===xe.state}),(0,B.q)(1)).subscribe(function(){clearTimeout(at._closeFallbackTimeout),at._finishDialogClose()}),st.detachments().subscribe(function(){at._beforeClosed.next(at._result),at._beforeClosed.complete(),at._afterClosed.next(at._result),at._afterClosed.complete(),at.componentInstance=null,at._overlayRef.dispose()}),st.keydownEvents().pipe((0,q.h)(function(xe){return xe.keyCode===j.hY&&!at.disableClose&&!(0,j.Vb)(xe)})).subscribe(function(xe){xe.preventDefault(),te(at,"keyboard")}),st.backdropClick().subscribe(function(){at.disableClose?at._containerInstance._recaptureFocus():te(at,"mouse")})}return(0,e.Z)(Ee,[{key:"close",value:function(nt){var at=this;this._result=nt,this._containerInstance._animationStateChanged.pipe((0,q.h)(function(We){return"closing"===We.state}),(0,B.q)(1)).subscribe(function(We){at._beforeClosed.next(nt),at._beforeClosed.complete(),at._overlayRef.detachBackdrop(),at._closeFallbackTimeout=setTimeout(function(){return at._finishDialogClose()},We.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}},{key:"afterOpened",value:function(){return this._afterOpened}},{key:"afterClosed",value:function(){return this._afterClosed}},{key:"beforeClosed",value:function(){return this._beforeClosed}},{key:"backdropClick",value:function(){return this._overlayRef.backdropClick()}},{key:"keydownEvents",value:function(){return this._overlayRef.keydownEvents()}},{key:"updatePosition",value:function(nt){var at=this._getPositionStrategy();return nt&&(nt.left||nt.right)?nt.left?at.left(nt.left):at.right(nt.right):at.centerHorizontally(),nt&&(nt.top||nt.bottom)?nt.top?at.top(nt.top):at.bottom(nt.bottom):at.centerVertically(),this._overlayRef.updatePosition(),this}},{key:"updateSize",value:function(){var nt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",at=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this._overlayRef.updateSize({width:nt,height:at}),this._overlayRef.updatePosition(),this}},{key:"addPanelClass",value:function(nt){return this._overlayRef.addPanelClass(nt),this}},{key:"removePanelClass",value:function(nt){return this._overlayRef.removePanelClass(nt),this}},{key:"getState",value:function(){return this._state}},{key:"_finishDialogClose",value:function(){this._state=2,this._overlayRef.dispose()}},{key:"_getPositionStrategy",value:function(){return this._overlayRef.getConfig().positionStrategy}}]),Ee}();function te(Ee,st,nt){return void 0!==Ee._containerInstance&&(Ee._containerInstance._closeInteractionType=st),Ee.close(nt)}var K=new _.OlP("MatDialogData"),G=new _.OlP("mat-dialog-default-options"),ce=new _.OlP("mat-dialog-scroll-strategy"),ve={provide:ce,deps:[u.aV],useFactory:function Me(Ee){return function(){return Ee.scrollStrategies.block()}}},ue=function(){var Ee=function(){function st(nt,at,We,xe,ut,Fe,et,Ht,nn,an){var kt=this;(0,c.Z)(this,st),this._overlay=nt,this._injector=at,this._defaultOptions=We,this._parentDialog=xe,this._overlayContainer=ut,this._dialogRefConstructor=et,this._dialogContainerType=Ht,this._dialogDataToken=nn,this._animationMode=an,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new b.x,this._afterOpenedAtThisLevel=new b.x,this._ariaHiddenElements=new Map,this._dialogAnimatingOpen=!1,this.afterAllClosed=(0,T.P)(function(){return kt.openDialogs.length?kt._getAfterAllClosed():kt._getAfterAllClosed().pipe((0,k.O)(void 0))}),this._scrollStrategy=Fe}return(0,e.Z)(st,[{key:"openDialogs",get:function(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}},{key:"afterOpened",get:function(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}},{key:"_getAfterAllClosed",value:function(){var at=this._parentDialog;return at?at._getAfterAllClosed():this._afterAllClosedAtThisLevel}},{key:"open",value:function(at,We){var xe=this;if(We=function Xe(Ee,st){return Object.assign(Object.assign({},st),Ee)}(We,this._defaultOptions||new W),We.id&&this.getDialogById(We.id),this._dialogAnimatingOpen)return this._lastDialogRef;var ut=this._createOverlay(We),Fe=this._attachDialogContainer(ut,We);if("NoopAnimations"!==this._animationMode){var et=Fe._animationStateChanged.subscribe(function(nn){"opening"===nn.state&&(xe._dialogAnimatingOpen=!0),"opened"===nn.state&&(xe._dialogAnimatingOpen=!1,et.unsubscribe())});this._animationStateSubscriptions||(this._animationStateSubscriptions=new y.w0),this._animationStateSubscriptions.add(et)}var Ht=this._attachDialogContent(at,Fe,ut,We);return this._lastDialogRef=Ht,this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(Ht),Ht.afterClosed().subscribe(function(){return xe._removeOpenDialog(Ht)}),this.afterOpened.next(Ht),Fe._initializeWithAttachedContent(),Ht}},{key:"closeAll",value:function(){this._closeDialogs(this.openDialogs)}},{key:"getDialogById",value:function(at){return this.openDialogs.find(function(We){return We.id===at})}},{key:"ngOnDestroy",value:function(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._animationStateSubscriptions&&this._animationStateSubscriptions.unsubscribe()}},{key:"_createOverlay",value:function(at){var We=this._getOverlayConfig(at);return this._overlay.create(We)}},{key:"_getOverlayConfig",value:function(at){var We=new u.X_({positionStrategy:this._overlay.position().global(),scrollStrategy:at.scrollStrategy||this._scrollStrategy(),panelClass:at.panelClass,hasBackdrop:at.hasBackdrop,direction:at.direction,minWidth:at.minWidth,minHeight:at.minHeight,maxWidth:at.maxWidth,maxHeight:at.maxHeight,disposeOnNavigation:at.closeOnNavigation});return at.backdropClass&&(We.backdropClass=at.backdropClass),We}},{key:"_attachDialogContainer",value:function(at,We){var ut=_.zs3.create({parent:We&&We.viewContainerRef&&We.viewContainerRef.injector||this._injector,providers:[{provide:W,useValue:We}]}),Fe=new o.C5(this._dialogContainerType,We.viewContainerRef,ut,We.componentFactoryResolver);return at.attach(Fe).instance}},{key:"_attachDialogContent",value:function(at,We,xe,ut){var Fe=new this._dialogRefConstructor(xe,We,ut.id);if(at instanceof _.Rgc)We.attachTemplatePortal(new o.UE(at,null,{$implicit:ut.data,dialogRef:Fe}));else{var et=this._createInjector(ut,Fe,We),Ht=We.attachComponentPortal(new o.C5(at,ut.viewContainerRef,et));Fe.componentInstance=Ht.instance}return Fe.updateSize(ut.width,ut.height).updatePosition(ut.position),Fe}},{key:"_createInjector",value:function(at,We,xe){var ut=at&&at.viewContainerRef&&at.viewContainerRef.injector,Fe=[{provide:this._dialogContainerType,useValue:xe},{provide:this._dialogDataToken,useValue:at.data},{provide:this._dialogRefConstructor,useValue:We}];return at.direction&&(!ut||!ut.get(h.Is,null,_.XFs.Optional))&&Fe.push({provide:h.Is,useValue:{value:at.direction,change:(0,Y.of)()}}),_.zs3.create({parent:ut||this._injector,providers:Fe})}},{key:"_removeOpenDialog",value:function(at){var We=this.openDialogs.indexOf(at);We>-1&&(this.openDialogs.splice(We,1),this.openDialogs.length||(this._ariaHiddenElements.forEach(function(xe,ut){xe?ut.setAttribute("aria-hidden",xe):ut.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}},{key:"_hideNonDialogContentFromAssistiveTechnology",value:function(){var at=this._overlayContainer.getContainerElement();if(at.parentElement)for(var We=at.parentElement.children,xe=We.length-1;xe>-1;xe--){var ut=We[xe];ut!==at&&"SCRIPT"!==ut.nodeName&&"STYLE"!==ut.nodeName&&!ut.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(ut,ut.getAttribute("aria-hidden")),ut.setAttribute("aria-hidden","true"))}}},{key:"_closeDialogs",value:function(at){for(var We=at.length;We--;)at[We].close()}}]),st}();return Ee.\u0275fac=function(nt){_.$Z()},Ee.\u0275dir=_.lG2({type:Ee}),Ee}(),lt=function(){var Ee=function(st){(0,S.Z)(at,st);var nt=(0,t.Z)(at);function at(We,xe,ut,Fe,et,Ht,nn,an){return(0,c.Z)(this,at),nt.call(this,We,xe,Fe,Ht,nn,et,J,d,K,an)}return(0,e.Z)(at)}(ue);return Ee.\u0275fac=function(nt){return new(nt||Ee)(_.LFG(u.aV),_.LFG(_.zs3),_.LFG(N.Ye,8),_.LFG(G,8),_.LFG(ce),_.LFG(Ee,12),_.LFG(u.Xj),_.LFG(le.Qb,8))},Ee.\u0275prov=_.Yz7({token:Ee,factory:Ee.\u0275fac}),Ee}(),mt=0,wt=function(){var Ee=function(){function st(nt,at,We){(0,c.Z)(this,st),this.dialogRef=nt,this._elementRef=at,this._dialog=We,this.type="button"}return(0,e.Z)(st,[{key:"ngOnInit",value:function(){this.dialogRef||(this.dialogRef=ft(this._elementRef,this._dialog.openDialogs))}},{key:"ngOnChanges",value:function(at){var We=at._matDialogClose||at._matDialogCloseResult;We&&(this.dialogResult=We.currentValue)}},{key:"_onButtonClick",value:function(at){te(this.dialogRef,0===at.screenX&&0===at.screenY?"keyboard":"mouse",this.dialogResult)}}]),st}();return Ee.\u0275fac=function(nt){return new(nt||Ee)(_.Y36(J,8),_.Y36(_.SBq),_.Y36(lt))},Ee.\u0275dir=_.lG2({type:Ee,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(nt,at){1&nt&&_.NdJ("click",function(xe){return at._onButtonClick(xe)}),2&nt&&_.uIk("aria-label",at.ariaLabel||null)("type",at.type)},inputs:{ariaLabel:["aria-label","ariaLabel"],type:"type",dialogResult:["mat-dialog-close","dialogResult"],_matDialogClose:["matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],features:[_.TTD]}),Ee}(),Pt=function(){var Ee=function(){function st(nt,at,We){(0,c.Z)(this,st),this._dialogRef=nt,this._elementRef=at,this._dialog=We,this.id="mat-dialog-title-".concat(mt++)}return(0,e.Z)(st,[{key:"ngOnInit",value:function(){var at=this;this._dialogRef||(this._dialogRef=ft(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(function(){var We=at._dialogRef._containerInstance;We&&!We._ariaLabelledBy&&(We._ariaLabelledBy=at.id)})}}]),st}();return Ee.\u0275fac=function(nt){return new(nt||Ee)(_.Y36(J,8),_.Y36(_.SBq),_.Y36(lt))},Ee.\u0275dir=_.lG2({type:Ee,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(nt,at){2&nt&&_.Ikx("id",at.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),Ee}(),Pe=function(){var Ee=(0,e.Z)(function st(){(0,c.Z)(this,st)});return Ee.\u0275fac=function(nt){return new(nt||Ee)},Ee.\u0275dir=_.lG2({type:Ee,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),Ee}(),ze=function(){var Ee=(0,e.Z)(function st(){(0,c.Z)(this,st)});return Ee.\u0275fac=function(nt){return new(nt||Ee)},Ee.\u0275dir=_.lG2({type:Ee,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-dialog-actions"]}),Ee}();function ft(Ee,st){for(var nt=Ee.nativeElement.parentElement;nt&&!nt.classList.contains("mat-dialog-container");)nt=nt.parentElement;return nt?st.find(function(at){return at.id===nt.id}):null}var ct=function(){var Ee=(0,e.Z)(function st(){(0,c.Z)(this,st)});return Ee.\u0275fac=function(nt){return new(nt||Ee)},Ee.\u0275mod=_.oAB({type:Ee}),Ee.\u0275inj=_.cJS({providers:[lt,ve],imports:[[u.U8,o.eL,s.BQ],s.BQ]}),Ee}()},19975:function(Ce,E,n){"use strict";n.d(E,{d:function(){return o},t:function(){return _}});var S=n(39117),t=n(1884),e=n(86613),c=n(76484),u=n(1130),o=function(){var s=function(){function h(){(0,S.Z)(this,h),this._vertical=!1,this._inset=!1}return(0,t.Z)(h,[{key:"vertical",get:function(){return this._vertical},set:function(T){this._vertical=(0,c.Ig)(T)}},{key:"inset",get:function(){return this._inset},set:function(T){this._inset=(0,c.Ig)(T)}}]),h}();return s.\u0275fac=function(b){return new(b||s)},s.\u0275cmp=e.Xpm({type:s,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(b,T){2&b&&(e.uIk("aria-orientation",T.vertical?"vertical":"horizontal"),e.ekj("mat-divider-vertical",T.vertical)("mat-divider-horizontal",!T.vertical)("mat-divider-inset",T.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(b,T){},styles:[".mat-divider{display:block;margin:0;border-top-width:1px;border-top-style:solid}.mat-divider.mat-divider-vertical{border-top:0;border-right-width:1px;border-right-style:solid}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}\n"],encapsulation:2,changeDetection:0}),s}(),_=function(){var s=(0,t.Z)(function h(){(0,S.Z)(this,h)});return s.\u0275fac=function(b){return new(b||s)},s.\u0275mod=e.oAB({type:s}),s.\u0275inj=e.cJS({imports:[[u.BQ],u.BQ]}),s}()},16531:function(Ce,E,n){"use strict";n.d(E,{pp:function(){return at},To:function(){return We},ib:function(){return Pe},u4:function(){return st},yz:function(){return Ee},yK:function(){return nt}});var S=n(97424),t=n(28042),e=n(46751),c=n(56101),u=n(1884),o=n(39117),_=n(86613),s=n(76484),h=n(50253),b=n(17714),T=n(89502),y=0,Y=new _.OlP("CdkAccordion"),q=function(){var xe=function(){function ut(){(0,o.Z)(this,ut),this._stateChanges=new h.x,this._openCloseAllActions=new h.x,this.id="cdk-accordion-".concat(y++),this._multi=!1}return(0,u.Z)(ut,[{key:"multi",get:function(){return this._multi},set:function(et){this._multi=(0,s.Ig)(et)}},{key:"openAll",value:function(){this._multi&&this._openCloseAllActions.next(!0)}},{key:"closeAll",value:function(){this._openCloseAllActions.next(!1)}},{key:"ngOnChanges",value:function(et){this._stateChanges.next(et)}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete(),this._openCloseAllActions.complete()}}]),ut}();return xe.\u0275fac=function(Fe){return new(Fe||xe)},xe.\u0275dir=_.lG2({type:xe,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:"multi"},exportAs:["cdkAccordion"],features:[_._Bn([{provide:Y,useExisting:xe}]),_.TTD]}),xe}(),B=0,k=function(){var xe=function(){function ut(Fe,et,Ht){var nn=this;(0,o.Z)(this,ut),this.accordion=Fe,this._changeDetectorRef=et,this._expansionDispatcher=Ht,this._openCloseAllSubscription=b.w0.EMPTY,this.closed=new _.vpe,this.opened=new _.vpe,this.destroyed=new _.vpe,this.expandedChange=new _.vpe,this.id="cdk-accordion-child-".concat(B++),this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=function(){},this._removeUniqueSelectionListener=Ht.listen(function(an,kt){nn.accordion&&!nn.accordion.multi&&nn.accordion.id===kt&&nn.id!==an&&(nn.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}return(0,u.Z)(ut,[{key:"expanded",get:function(){return this._expanded},set:function(et){et=(0,s.Ig)(et),this._expanded!==et&&(this._expanded=et,this.expandedChange.emit(et),et?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(et){this._disabled=(0,s.Ig)(et)}},{key:"ngOnDestroy",value:function(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}},{key:"toggle",value:function(){this.disabled||(this.expanded=!this.expanded)}},{key:"close",value:function(){this.disabled||(this.expanded=!1)}},{key:"open",value:function(){this.disabled||(this.expanded=!0)}},{key:"_subscribeToOpenCloseAllActions",value:function(){var et=this;return this.accordion._openCloseAllActions.subscribe(function(Ht){et.disabled||(et.expanded=Ht)})}}]),ut}();return xe.\u0275fac=function(Fe){return new(Fe||xe)(_.Y36(Y,12),_.Y36(_.sBO),_.Y36(T.A8))},xe.\u0275dir=_.lG2({type:xe,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[_._Bn([{provide:Y,useValue:void 0}])]}),xe}(),D=function(){var xe=(0,u.Z)(function ut(){(0,o.Z)(this,ut)});return xe.\u0275fac=function(Fe){return new(Fe||xe)},xe.\u0275mod=_.oAB({type:xe}),xe.\u0275inj=_.cJS({}),xe}(),N=n(24476),I=n(36362),L=n(1130),j=n(84128),le=n(98977),re=n(44874),W=n(60116),$=n(59295),be=n(75939),z=n(57481),d=n(20591),Q=n(36646),J=n(31631),te=["body"];function K(xe,ut){}var G=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],ce=["mat-expansion-panel-header","*","mat-action-row"];function _e(xe,ut){if(1&xe&&_._UZ(0,"span",2),2&xe){var Fe=_.oxw();_.Q6J("@indicatorRotate",Fe._getExpandedState())}}var Me=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],ve=["mat-panel-title","mat-panel-description","*"],ue=new _.OlP("MAT_ACCORDION"),lt="225ms cubic-bezier(0.4,0.0,0.2,1)",Xe={indicatorRotate:(0,J.X$)("indicatorRotate",[(0,J.SB)("collapsed, void",(0,J.oB)({transform:"rotate(0deg)"})),(0,J.SB)("expanded",(0,J.oB)({transform:"rotate(180deg)"})),(0,J.eR)("expanded <=> collapsed, void => collapsed",(0,J.jt)(lt))]),bodyExpansion:(0,J.X$)("bodyExpansion",[(0,J.SB)("collapsed, void",(0,J.oB)({height:"0px",visibility:"hidden"})),(0,J.SB)("expanded",(0,J.oB)({height:"*",visibility:"visible"})),(0,J.eR)("expanded <=> collapsed, void => collapsed",(0,J.jt)(lt))])},mt=function(){var xe=(0,u.Z)(function ut(Fe){(0,o.Z)(this,ut),this._template=Fe});return xe.\u0275fac=function(Fe){return new(Fe||xe)(_.Y36(_.Rgc))},xe.\u0275dir=_.lG2({type:xe,selectors:[["ng-template","matExpansionPanelContent",""]]}),xe}(),wt=0,Pt=new _.OlP("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),Pe=function(){var xe=function(ut){(0,e.Z)(et,ut);var Fe=(0,c.Z)(et);function et(Ht,nn,an,kt,It,$e,Ae){var X;return(0,o.Z)(this,et),(X=Fe.call(this,Ht,nn,an))._viewContainerRef=kt,X._animationMode=$e,X._hideToggle=!1,X.afterExpand=new _.vpe,X.afterCollapse=new _.vpe,X._inputChanges=new h.x,X._headerId="mat-expansion-panel-header-".concat(wt++),X._bodyAnimationDone=new h.x,X.accordion=Ht,X._document=It,X._bodyAnimationDone.pipe((0,le.x)(function(ne,me){return ne.fromState===me.fromState&&ne.toState===me.toState})).subscribe(function(ne){"void"!==ne.fromState&&("expanded"===ne.toState?X.afterExpand.emit():"collapsed"===ne.toState&&X.afterCollapse.emit())}),Ae&&(X.hideToggle=Ae.hideToggle),X}return(0,u.Z)(et,[{key:"hideToggle",get:function(){return this._hideToggle||this.accordion&&this.accordion.hideToggle},set:function(nn){this._hideToggle=(0,s.Ig)(nn)}},{key:"togglePosition",get:function(){return this._togglePosition||this.accordion&&this.accordion.togglePosition},set:function(nn){this._togglePosition=nn}},{key:"_hasSpacing",value:function(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}},{key:"_getExpandedState",value:function(){return this.expanded?"expanded":"collapsed"}},{key:"toggle",value:function(){this.expanded=!this.expanded}},{key:"close",value:function(){this.expanded=!1}},{key:"open",value:function(){this.expanded=!0}},{key:"ngAfterContentInit",value:function(){var nn=this;this._lazyContent&&this.opened.pipe((0,re.O)(null),(0,W.h)(function(){return nn.expanded&&!nn._portal}),(0,$.q)(1)).subscribe(function(){nn._portal=new N.UE(nn._lazyContent._template,nn._viewContainerRef)})}},{key:"ngOnChanges",value:function(nn){this._inputChanges.next(nn)}},{key:"ngOnDestroy",value:function(){(0,S.Z)((0,t.Z)(et.prototype),"ngOnDestroy",this).call(this),this._bodyAnimationDone.complete(),this._inputChanges.complete()}},{key:"_containsFocus",value:function(){if(this._body){var nn=this._document.activeElement,an=this._body.nativeElement;return nn===an||an.contains(nn)}return!1}}]),et}(k);return xe.\u0275fac=function(Fe){return new(Fe||xe)(_.Y36(ue,12),_.Y36(_.sBO),_.Y36(T.A8),_.Y36(_.s_b),_.Y36(I.K0),_.Y36(z.Qb,8),_.Y36(Pt,8))},xe.\u0275cmp=_.Xpm({type:xe,selectors:[["mat-expansion-panel"]],contentQueries:function(Fe,et,Ht){var nn;1&Fe&&_.Suo(Ht,mt,5),2&Fe&&_.iGM(nn=_.CRH())&&(et._lazyContent=nn.first)},viewQuery:function(Fe,et){var Ht;1&Fe&&_.Gf(te,5),2&Fe&&_.iGM(Ht=_.CRH())&&(et._body=Ht.first)},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(Fe,et){2&Fe&&_.ekj("mat-expanded",et.expanded)("_mat-animation-noopable","NoopAnimations"===et._animationMode)("mat-expansion-panel-spacing",et._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[_._Bn([{provide:ue,useValue:void 0}]),_.qOj,_.TTD],ngContentSelectors:ce,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(Fe,et){1&Fe&&(_.F$t(G),_.Hsn(0),_.TgZ(1,"div",0,1),_.NdJ("@bodyExpansion.done",function(nn){return et._bodyAnimationDone.next(nn)}),_.TgZ(3,"div",2),_.Hsn(4,1),_.YNc(5,K,0,0,"ng-template",3),_.qZA(),_.Hsn(6,2),_.qZA()),2&Fe&&(_.xp6(1),_.Q6J("@bodyExpansion",et._getExpandedState())("id",et.id),_.uIk("aria-labelledby",et._headerId),_.xp6(4),_.Q6J("cdkPortalOutlet",et._portal))},directives:[N.Pl],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[Xe.bodyExpansion]},changeDetection:0}),xe}(),ct=(0,L.sb)((0,u.Z)(function xe(){(0,o.Z)(this,xe)})),Ee=function(){var xe=function(ut){(0,e.Z)(et,ut);var Fe=(0,c.Z)(et);function et(Ht,nn,an,kt,It,$e,Ae){var X;(0,o.Z)(this,et),(X=Fe.call(this)).panel=Ht,X._element=nn,X._focusMonitor=an,X._changeDetectorRef=kt,X._animationMode=$e,X._parentChangeSubscription=b.w0.EMPTY;var ne=Ht.accordion?Ht.accordion._stateChanges.pipe((0,W.h)(function(me){return!(!me.hideToggle&&!me.togglePosition)})):d.E;return X.tabIndex=parseInt(Ae||"")||0,X._parentChangeSubscription=(0,Q.T)(Ht.opened,Ht.closed,ne,Ht._inputChanges.pipe((0,W.h)(function(me){return!!(me.hideToggle||me.disabled||me.togglePosition)}))).subscribe(function(){return X._changeDetectorRef.markForCheck()}),Ht.closed.pipe((0,W.h)(function(){return Ht._containsFocus()})).subscribe(function(){return an.focusVia(nn,"program")}),It&&(X.expandedHeight=It.expandedHeight,X.collapsedHeight=It.collapsedHeight),X}return(0,u.Z)(et,[{key:"disabled",get:function(){return this.panel.disabled}},{key:"_toggle",value:function(){this.disabled||this.panel.toggle()}},{key:"_isExpanded",value:function(){return this.panel.expanded}},{key:"_getExpandedState",value:function(){return this.panel._getExpandedState()}},{key:"_getPanelId",value:function(){return this.panel.id}},{key:"_getTogglePosition",value:function(){return this.panel.togglePosition}},{key:"_showToggle",value:function(){return!this.panel.hideToggle&&!this.panel.disabled}},{key:"_getHeaderHeight",value:function(){var nn=this._isExpanded();return nn&&this.expandedHeight?this.expandedHeight:!nn&&this.collapsedHeight?this.collapsedHeight:null}},{key:"_keydown",value:function(nn){switch(nn.keyCode){case be.L_:case be.K5:(0,be.Vb)(nn)||(nn.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(nn))}}},{key:"focus",value:function(nn,an){nn?this._focusMonitor.focusVia(this._element,nn,an):this._element.nativeElement.focus(an)}},{key:"ngAfterViewInit",value:function(){var nn=this;this._focusMonitor.monitor(this._element).subscribe(function(an){an&&nn.panel.accordion&&nn.panel.accordion._handleHeaderFocus(nn)})}},{key:"ngOnDestroy",value:function(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}]),et}(ct);return xe.\u0275fac=function(Fe){return new(Fe||xe)(_.Y36(Pe,1),_.Y36(_.SBq),_.Y36(j.tE),_.Y36(_.sBO),_.Y36(Pt,8),_.Y36(z.Qb,8),_.$8M("tabindex"))},xe.\u0275cmp=_.Xpm({type:xe,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(Fe,et){1&Fe&&_.NdJ("click",function(){return et._toggle()})("keydown",function(nn){return et._keydown(nn)}),2&Fe&&(_.uIk("id",et.panel._headerId)("tabindex",et.tabIndex)("aria-controls",et._getPanelId())("aria-expanded",et._isExpanded())("aria-disabled",et.panel.disabled),_.Udp("height",et._getHeaderHeight()),_.ekj("mat-expanded",et._isExpanded())("mat-expansion-toggle-indicator-after","after"===et._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===et._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===et._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[_.qOj],ngContentSelectors:ve,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(Fe,et){1&Fe&&(_.F$t(Me),_.TgZ(0,"span",0),_.Hsn(1),_.Hsn(2,1),_.Hsn(3,2),_.qZA(),_.YNc(4,_e,1,1,"span",1)),2&Fe&&(_.xp6(4),_.Q6J("ngIf",et._showToggle()))},directives:[I.O5],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}.cdk-high-contrast-active .mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}\n'],encapsulation:2,data:{animation:[Xe.indicatorRotate]},changeDetection:0}),xe}(),st=function(){var xe=(0,u.Z)(function ut(){(0,o.Z)(this,ut)});return xe.\u0275fac=function(Fe){return new(Fe||xe)},xe.\u0275dir=_.lG2({type:xe,selectors:[["mat-panel-description"]],hostAttrs:[1,"mat-expansion-panel-header-description"]}),xe}(),nt=function(){var xe=(0,u.Z)(function ut(){(0,o.Z)(this,ut)});return xe.\u0275fac=function(Fe){return new(Fe||xe)},xe.\u0275dir=_.lG2({type:xe,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]}),xe}(),at=function(){var xe=function(ut){(0,e.Z)(et,ut);var Fe=(0,c.Z)(et);function et(){var Ht;return(0,o.Z)(this,et),(Ht=Fe.apply(this,arguments))._ownHeaders=new _.n_E,Ht._hideToggle=!1,Ht.displayMode="default",Ht.togglePosition="after",Ht}return(0,u.Z)(et,[{key:"hideToggle",get:function(){return this._hideToggle},set:function(nn){this._hideToggle=(0,s.Ig)(nn)}},{key:"ngAfterContentInit",value:function(){var nn=this;this._headers.changes.pipe((0,re.O)(this._headers)).subscribe(function(an){nn._ownHeaders.reset(an.filter(function(kt){return kt.panel.accordion===nn})),nn._ownHeaders.notifyOnChanges()}),this._keyManager=new j.Em(this._ownHeaders).withWrap().withHomeAndEnd()}},{key:"_handleHeaderKeydown",value:function(nn){this._keyManager.onKeydown(nn)}},{key:"_handleHeaderFocus",value:function(nn){this._keyManager.updateActiveItem(nn)}},{key:"ngOnDestroy",value:function(){(0,S.Z)((0,t.Z)(et.prototype),"ngOnDestroy",this).call(this),this._ownHeaders.destroy()}}]),et}(q);return xe.\u0275fac=function(){var ut;return function(et){return(ut||(ut=_.n5z(xe)))(et||xe)}}(),xe.\u0275dir=_.lG2({type:xe,selectors:[["mat-accordion"]],contentQueries:function(Fe,et,Ht){var nn;1&Fe&&_.Suo(Ht,Ee,5),2&Fe&&_.iGM(nn=_.CRH())&&(et._headers=nn)},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(Fe,et){2&Fe&&_.ekj("mat-accordion-multi",et.multi)},inputs:{multi:"multi",hideToggle:"hideToggle",displayMode:"displayMode",togglePosition:"togglePosition"},exportAs:["matAccordion"],features:[_._Bn([{provide:ue,useExisting:xe}]),_.qOj]}),xe}(),We=function(){var xe=(0,u.Z)(function ut(){(0,o.Z)(this,ut)});return xe.\u0275fac=function(Fe){return new(Fe||xe)},xe.\u0275mod=_.oAB({type:xe}),xe.\u0275inj=_.cJS({imports:[[I.ez,L.BQ,D,N.eL]]}),xe}()},44770:function(Ce,E,n){"use strict";n.d(E,{G_:function(){return an},TO:function(){return lt},KE:function(){return kt},Eo:function(){return mt},lN:function(){return It},bx:function(){return ct},hX:function(){return Ee},R9:function(){return xe}});var S=n(71340),t=n(46751),e=n(56101),c=n(1884),u=n(39117),o=n(35837),_=n(36362),s=n(86613),h=n(1130),b=n(76484),T=n(50253),y=n(36646),Y=n(23280),q=n(44874),B=n(68951),k=n(59295),D=n(31631),N=n(57481),I=n(51588),L=n(14390),j=["connectionContainer"],le=["inputContainer"],re=["label"];function W($e,Ae){1&$e&&(s.ynx(0),s.TgZ(1,"div",14),s._UZ(2,"div",15),s._UZ(3,"div",16),s._UZ(4,"div",17),s.qZA(),s.TgZ(5,"div",18),s._UZ(6,"div",15),s._UZ(7,"div",16),s._UZ(8,"div",17),s.qZA(),s.BQk())}function $($e,Ae){if(1&$e){var X=s.EpF();s.TgZ(0,"div",19),s.NdJ("cdkObserveContent",function(){return s.CHM(X),s.oxw().updateOutlineGap()}),s.Hsn(1,1),s.qZA()}if(2&$e){var ne=s.oxw();s.Q6J("cdkObserveContentDisabled","outline"!=ne.appearance)}}function be($e,Ae){if(1&$e&&(s.ynx(0),s.Hsn(1,2),s.TgZ(2,"span"),s._uU(3),s.qZA(),s.BQk()),2&$e){var X=s.oxw(2);s.xp6(3),s.Oqu(X._control.placeholder)}}function z($e,Ae){1&$e&&s.Hsn(0,3,["*ngSwitchCase","true"])}function d($e,Ae){1&$e&&(s.TgZ(0,"span",23),s._uU(1," *"),s.qZA())}function Q($e,Ae){if(1&$e){var X=s.EpF();s.TgZ(0,"label",20,21),s.NdJ("cdkObserveContent",function(){return s.CHM(X),s.oxw().updateOutlineGap()}),s.YNc(2,be,4,1,"ng-container",12),s.YNc(3,z,1,0,"ng-content",12),s.YNc(4,d,2,0,"span",22),s.qZA()}if(2&$e){var ne=s.oxw();s.ekj("mat-empty",ne._control.empty&&!ne._shouldAlwaysFloat())("mat-form-field-empty",ne._control.empty&&!ne._shouldAlwaysFloat())("mat-accent","accent"==ne.color)("mat-warn","warn"==ne.color),s.Q6J("cdkObserveContentDisabled","outline"!=ne.appearance)("id",ne._labelId)("ngSwitch",ne._hasLabel()),s.uIk("for",ne._control.id)("aria-owns",ne._control.id),s.xp6(2),s.Q6J("ngSwitchCase",!1),s.xp6(1),s.Q6J("ngSwitchCase",!0),s.xp6(1),s.Q6J("ngIf",!ne.hideRequiredMarker&&ne._control.required&&!ne._control.disabled)}}function J($e,Ae){1&$e&&(s.TgZ(0,"div",24),s.Hsn(1,4),s.qZA())}function te($e,Ae){if(1&$e&&(s.TgZ(0,"div",25),s._UZ(1,"span",26),s.qZA()),2&$e){var X=s.oxw();s.xp6(1),s.ekj("mat-accent","accent"==X.color)("mat-warn","warn"==X.color)}}function K($e,Ae){if(1&$e&&(s.TgZ(0,"div"),s.Hsn(1,5),s.qZA()),2&$e){var X=s.oxw();s.Q6J("@transitionMessages",X._subscriptAnimationState)}}function G($e,Ae){if(1&$e&&(s.TgZ(0,"div",30),s._uU(1),s.qZA()),2&$e){var X=s.oxw(2);s.Q6J("id",X._hintLabelId),s.xp6(1),s.Oqu(X.hintLabel)}}function ce($e,Ae){if(1&$e&&(s.TgZ(0,"div",27),s.YNc(1,G,2,2,"div",28),s.Hsn(2,6),s._UZ(3,"div",29),s.Hsn(4,7),s.qZA()),2&$e){var X=s.oxw();s.Q6J("@transitionMessages",X._subscriptAnimationState),s.xp6(1),s.Q6J("ngIf",X.hintLabel)}}var _e=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Me=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],ve=0,ue=new s.OlP("MatError"),lt=function(){var $e=(0,c.Z)(function Ae(X,ne){(0,u.Z)(this,Ae),this.id="mat-error-".concat(ve++),X||ne.nativeElement.setAttribute("aria-live","polite")});return $e.\u0275fac=function(X){return new(X||$e)(s.$8M("aria-live"),s.Y36(s.SBq))},$e.\u0275dir=s.lG2({type:$e,selectors:[["mat-error"]],hostAttrs:["aria-atomic","true",1,"mat-error"],hostVars:1,hostBindings:function(X,ne){2&X&&s.uIk("id",ne.id)},inputs:{id:"id"},features:[s._Bn([{provide:ue,useExisting:$e}])]}),$e}(),Xe={transitionMessages:(0,D.X$)("transitionMessages",[(0,D.SB)("enter",(0,D.oB)({opacity:1,transform:"translateY(0%)"})),(0,D.eR)("void => enter",[(0,D.oB)({opacity:0,transform:"translateY(-5px)"}),(0,D.jt)("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},mt=function(){var $e=(0,c.Z)(function Ae(){(0,u.Z)(this,Ae)});return $e.\u0275fac=function(X){return new(X||$e)},$e.\u0275dir=s.lG2({type:$e}),$e}(),ze=0,ft=new s.OlP("MatHint"),ct=function(){var $e=(0,c.Z)(function Ae(){(0,u.Z)(this,Ae),this.align="start",this.id="mat-hint-".concat(ze++)});return $e.\u0275fac=function(X){return new(X||$e)},$e.\u0275dir=s.lG2({type:$e,selectors:[["mat-hint"]],hostAttrs:[1,"mat-hint"],hostVars:4,hostBindings:function(X,ne){2&X&&(s.uIk("id",ne.id)("align",null),s.ekj("mat-form-field-hint-end","end"===ne.align))},inputs:{align:"align",id:"id"},features:[s._Bn([{provide:ft,useExisting:$e}])]}),$e}(),Ee=function(){var $e=(0,c.Z)(function Ae(){(0,u.Z)(this,Ae)});return $e.\u0275fac=function(X){return new(X||$e)},$e.\u0275dir=s.lG2({type:$e,selectors:[["mat-label"]]}),$e}(),st=function(){var $e=(0,c.Z)(function Ae(){(0,u.Z)(this,Ae)});return $e.\u0275fac=function(X){return new(X||$e)},$e.\u0275dir=s.lG2({type:$e,selectors:[["mat-placeholder"]]}),$e}(),nt=new s.OlP("MatPrefix"),We=new s.OlP("MatSuffix"),xe=function(){var $e=(0,c.Z)(function Ae(){(0,u.Z)(this,Ae)});return $e.\u0275fac=function(X){return new(X||$e)},$e.\u0275dir=s.lG2({type:$e,selectors:[["","matSuffix",""]],features:[s._Bn([{provide:We,useExisting:$e}])]}),$e}(),ut=0,Ht=(0,h.pj)(function(){return(0,c.Z)(function $e(Ae){(0,u.Z)(this,$e),this._elementRef=Ae})}(),"primary"),nn=new s.OlP("MAT_FORM_FIELD_DEFAULT_OPTIONS"),an=new s.OlP("MatFormField"),kt=function(){var $e=function(Ae){(0,t.Z)(ne,Ae);var X=(0,e.Z)(ne);function ne(me,Oe,He,At,Ft,sn,Xt){var gn;return(0,u.Z)(this,ne),(gn=X.call(this,me))._changeDetectorRef=Oe,gn._dir=He,gn._defaults=At,gn._platform=Ft,gn._ngZone=sn,gn._outlineGapCalculationNeededImmediately=!1,gn._outlineGapCalculationNeededOnStable=!1,gn._destroyed=new T.x,gn._showAlwaysAnimate=!1,gn._subscriptAnimationState="",gn._hintLabel="",gn._hintLabelId="mat-hint-".concat(ut++),gn._labelId="mat-form-field-label-".concat(ut++),gn.floatLabel=gn._getDefaultFloatLabelState(),gn._animationsEnabled="NoopAnimations"!==Xt,gn.appearance=At&&At.appearance?At.appearance:"legacy",gn._hideRequiredMarker=!(!At||null==At.hideRequiredMarker)&&At.hideRequiredMarker,gn}return(0,c.Z)(ne,[{key:"appearance",get:function(){return this._appearance},set:function(Oe){var He=this._appearance;this._appearance=Oe||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&He!==Oe&&(this._outlineGapCalculationNeededOnStable=!0)}},{key:"hideRequiredMarker",get:function(){return this._hideRequiredMarker},set:function(Oe){this._hideRequiredMarker=(0,b.Ig)(Oe)}},{key:"_shouldAlwaysFloat",value:function(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}},{key:"_canLabelFloat",value:function(){return"never"!==this.floatLabel}},{key:"hintLabel",get:function(){return this._hintLabel},set:function(Oe){this._hintLabel=Oe,this._processHints()}},{key:"floatLabel",get:function(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel},set:function(Oe){Oe!==this._floatLabel&&(this._floatLabel=Oe||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}},{key:"_control",get:function(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic},set:function(Oe){this._explicitFormFieldControl=Oe}},{key:"getLabelId",value:function(){return this._hasFloatingLabel()?this._labelId:null}},{key:"getConnectedOverlayOrigin",value:function(){return this._connectionContainerRef||this._elementRef}},{key:"ngAfterContentInit",value:function(){var Oe=this;this._validateControlChild();var He=this._control;He.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-".concat(He.controlType)),He.stateChanges.pipe((0,q.O)(null)).subscribe(function(){Oe._validatePlaceholders(),Oe._syncDescribedByIds(),Oe._changeDetectorRef.markForCheck()}),He.ngControl&&He.ngControl.valueChanges&&He.ngControl.valueChanges.pipe((0,B.R)(this._destroyed)).subscribe(function(){return Oe._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(function(){Oe._ngZone.onStable.pipe((0,B.R)(Oe._destroyed)).subscribe(function(){Oe._outlineGapCalculationNeededOnStable&&Oe.updateOutlineGap()})}),(0,y.T)(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(function(){Oe._outlineGapCalculationNeededOnStable=!0,Oe._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe((0,q.O)(null)).subscribe(function(){Oe._processHints(),Oe._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe((0,q.O)(null)).subscribe(function(){Oe._syncDescribedByIds(),Oe._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe((0,B.R)(this._destroyed)).subscribe(function(){"function"==typeof requestAnimationFrame?Oe._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return Oe.updateOutlineGap()})}):Oe.updateOutlineGap()})}},{key:"ngAfterContentChecked",value:function(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}},{key:"ngAfterViewInit",value:function(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_shouldForward",value:function(Oe){var He=this._control?this._control.ngControl:null;return He&&He[Oe]}},{key:"_hasPlaceholder",value:function(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}},{key:"_hasLabel",value:function(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}},{key:"_shouldLabelFloat",value:function(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}},{key:"_hideControlPlaceholder",value:function(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}},{key:"_hasFloatingLabel",value:function(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}},{key:"_getDisplayedMessages",value:function(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}},{key:"_animateAndLockLabel",value:function(){var Oe=this;this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,(0,Y.R)(this._label.nativeElement,"transitionend").pipe((0,k.q)(1)).subscribe(function(){Oe._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}},{key:"_validatePlaceholders",value:function(){}},{key:"_processHints",value:function(){this._validateHints(),this._syncDescribedByIds()}},{key:"_validateHints",value:function(){}},{key:"_getDefaultFloatLabelState",value:function(){return this._defaults&&this._defaults.floatLabel||"auto"}},{key:"_syncDescribedByIds",value:function(){if(this._control){var Oe=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&Oe.push.apply(Oe,(0,S.Z)(this._control.userAriaDescribedBy.split(" "))),"hint"===this._getDisplayedMessages()){var He=this._hintChildren?this._hintChildren.find(function(Ft){return"start"===Ft.align}):null,At=this._hintChildren?this._hintChildren.find(function(Ft){return"end"===Ft.align}):null;He?Oe.push(He.id):this._hintLabel&&Oe.push(this._hintLabelId),At&&Oe.push(At.id)}else this._errorChildren&&Oe.push.apply(Oe,(0,S.Z)(this._errorChildren.map(function(Ft){return Ft.id})));this._control.setDescribedByIds(Oe)}}},{key:"_validateControlChild",value:function(){}},{key:"updateOutlineGap",value:function(){var Oe=this._label?this._label.nativeElement:null,He=this._connectionContainerRef.nativeElement,At=".mat-form-field-outline-start",Ft=".mat-form-field-outline-gap";if("outline"===this.appearance&&this._platform.isBrowser){if(!Oe||!Oe.children.length||!Oe.textContent.trim()){for(var sn=He.querySelectorAll("".concat(At,", ").concat(Ft)),Xt=0;Xt0?.75*mn+10:0}for(var qe=0;qe1&&void 0!==arguments[1]?arguments[1]:Ee;return this._fontCssClassesByAlias.set(Ee,st),this}},{key:"classNameForFontAlias",value:function(Ee){return this._fontCssClassesByAlias.get(Ee)||Ee}},{key:"setDefaultFontSetClass",value:function(Ee){return this._defaultFontSetClass=Ee,this}},{key:"getDefaultFontSetClass",value:function(){return this._defaultFontSetClass}},{key:"getSvgIconFromUrl",value:function(Ee){var st=this,nt=this._sanitizer.sanitize(o.q3G.RESOURCE_URL,Ee);if(!nt)throw d(Ee);var at=this._cachedIconsByUrl.get(nt);return at?(0,b.of)(ce(at)):this._loadSvgIconFromConfig(new J(Ee,null)).pipe((0,q.b)(function(We){return st._cachedIconsByUrl.set(nt,We)}),(0,B.U)(function(We){return ce(We)}))}},{key:"getNamedSvgIcon",value:function(Ee){var st=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",nt=_e(st,Ee),at=this._svgIconConfigs.get(nt);if(at)return this._getSvgFromConfig(at);if(at=this._getIconConfigFromResolvers(st,Ee))return this._svgIconConfigs.set(nt,at),this._getSvgFromConfig(at);var We=this._iconSetConfigs.get(st);return We?this._getSvgFromIconSetConfigs(Ee,We):(0,T._)(be(nt))}},{key:"ngOnDestroy",value:function(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}},{key:"_getSvgFromConfig",value:function(Ee){return Ee.svgText?(0,b.of)(ce(this._svgElementFromConfig(Ee))):this._loadSvgIconFromConfig(Ee).pipe((0,B.U)(function(st){return ce(st)}))}},{key:"_getSvgFromIconSetConfigs",value:function(Ee,st){var nt=this,at=this._extractIconWithNameFromAnySet(Ee,st);if(at)return(0,b.of)(at);var We=st.filter(function(xe){return!xe.svgText}).map(function(xe){return nt._loadSvgIconSetFromConfig(xe).pipe((0,k.K)(function(ut){var Fe=nt._sanitizer.sanitize(o.q3G.RESOURCE_URL,xe.url),et="Loading icon set URL: ".concat(Fe," failed: ").concat(ut.message);return nt._errorHandler.handleError(new Error(et)),(0,b.of)(null)}))});return(0,y.D)(We).pipe((0,B.U)(function(){var xe=nt._extractIconWithNameFromAnySet(Ee,st);if(!xe)throw be(Ee);return xe}))}},{key:"_extractIconWithNameFromAnySet",value:function(Ee,st){for(var nt=st.length-1;nt>=0;nt--){var at=st[nt];if(at.svgText&&at.svgText.toString().indexOf(Ee)>-1){var We=this._svgElementFromConfig(at),xe=this._extractSvgIconFromSet(We,Ee,at.options);if(xe)return xe}}return null}},{key:"_loadSvgIconFromConfig",value:function(Ee){var st=this;return this._fetchIcon(Ee).pipe((0,q.b)(function(nt){return Ee.svgText=nt}),(0,B.U)(function(){return st._svgElementFromConfig(Ee)}))}},{key:"_loadSvgIconSetFromConfig",value:function(Ee){return Ee.svgText?(0,b.of)(null):this._fetchIcon(Ee).pipe((0,q.b)(function(st){return Ee.svgText=st}))}},{key:"_extractSvgIconFromSet",value:function(Ee,st,nt){var at=Ee.querySelector('[id="'.concat(st,'"]'));if(!at)return null;var We=at.cloneNode(!0);if(We.removeAttribute("id"),"svg"===We.nodeName.toLowerCase())return this._setSvgAttributes(We,nt);if("symbol"===We.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(We),nt);var xe=this._svgElementFromString($(""));return xe.appendChild(We),this._setSvgAttributes(xe,nt)}},{key:"_svgElementFromString",value:function(Ee){var st=this._document.createElement("DIV");st.innerHTML=Ee;var nt=st.querySelector("svg");if(!nt)throw Error(" tag not found");return nt}},{key:"_toSvgElement",value:function(Ee){for(var st=this._svgElementFromString($("")),nt=Ee.attributes,at=0;at-1}},{key:"_isBadInput",value:function(){var $=this._elementRef.nativeElement.validity;return $&&$.badInput}},{key:"empty",get:function(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}},{key:"shouldLabelFloat",get:function(){if(this._isNativeSelect){var $=this._elementRef.nativeElement,be=$.options[0];return this.focused||$.multiple||!this.empty||!!($.selectedIndex>-1&&be&&be.label)}return this.focused||!this.empty}},{key:"setDescribedByIds",value:function($){$.length?this._elementRef.nativeElement.setAttribute("aria-describedby",$.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}},{key:"onContainerClick",value:function(){this.focused||this.focus()}},{key:"_isInlineSelect",value:function(){var $=this._elementRef.nativeElement;return this._isNativeSelect&&($.multiple||$.size>1)}}]),re}(D);return L.\u0275fac=function(le){return new(le||L)(_.Y36(_.SBq),_.Y36(o.t4),_.Y36(s.a5,10),_.Y36(s.F,8),_.Y36(s.sg,8),_.Y36(h.rD),_.Y36(q,10),_.Y36(y.Lq),_.Y36(_.R0b),_.Y36(b.G_,8))},L.\u0275dir=_.lG2({type:L,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:12,hostBindings:function(le,re){1&le&&_.NdJ("focus",function(){return re._focusChanged(!0)})("blur",function(){return re._focusChanged(!1)})("input",function(){return re._onInput()}),2&le&&(_.Ikx("disabled",re.disabled)("required",re.required),_.uIk("id",re.id)("data-placeholder",re.placeholder)("name",re.name||null)("readonly",re.readonly&&!re._isNativeSelect||null)("aria-invalid",re.empty&&re.required?null:re.errorState)("aria-required",re.required),_.ekj("mat-input-server",re._isServer)("mat-native-select-inline",re._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],features:[_._Bn([{provide:b.Eo,useExisting:L}]),_.qOj,_.TTD]}),L}(),I=function(){var L=(0,e.Z)(function j(){(0,c.Z)(this,j)});return L.\u0275fac=function(le){return new(le||L)},L.\u0275mod=_.oAB({type:L}),L.\u0275inj=_.cJS({providers:[h.rD],imports:[[y.Ky,b.lN,h.BQ],y.Ky,b.lN]}),L}()},26131:function(Ce,E,n){"use strict";n.d(E,{i$:function(){return te},Nh:function(){return G},Tg:function(){return _e},ie:function(){return wt},Hk:function(){return J}}),n(44014);var t=n(46751),e=n(56101),c=n(1884),u=n(39117),o=n(36362),_=n(86613),s=n(1130),h=n(76484),b=n(50253),T=n(68951),D=(n(44874),n(84128),n(89502),n(75939),n(90587),n(19975)),N=["*"],L=[[["","mat-list-avatar",""],["","mat-list-icon",""],["","matListAvatar",""],["","matListIcon",""]],[["","mat-line",""],["","matLine",""]],"*"],j=["[mat-list-avatar], [mat-list-icon], [matListAvatar], [matListIcon]","[mat-line], [matLine]","*"],be=(0,s.Id)((0,s.Kr)(function(){return(0,c.Z)(function Pt(){(0,u.Z)(this,Pt)})}())),z=(0,s.Kr)(function(){return(0,c.Z)(function Pt(){(0,u.Z)(this,Pt)})}()),d=new _.OlP("MatList"),Q=new _.OlP("MatNavList"),J=function(){var Pt=function(Pe){(0,t.Z)(ft,Pe);var ze=(0,e.Z)(ft);function ft(){var ct;return(0,u.Z)(this,ft),(ct=ze.apply(this,arguments))._stateChanges=new b.x,ct}return(0,c.Z)(ft,[{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),ft}(be);return Pt.\u0275fac=function(){var Pe;return function(ft){return(Pe||(Pe=_.n5z(Pt)))(ft||Pt)}}(),Pt.\u0275cmp=_.Xpm({type:Pt,selectors:[["mat-nav-list"]],hostAttrs:["role","navigation",1,"mat-nav-list","mat-list-base"],inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matNavList"],features:[_._Bn([{provide:Q,useExisting:Pt}]),_.qOj,_.TTD],ngContentSelectors:N,decls:1,vars:0,template:function(ze,ft){1&ze&&(_.F$t(),_.Hsn(0))},styles:['.mat-subheader{display:flex;box-sizing:border-box;padding:16px;align-items:center}.mat-list-base .mat-subheader{margin:0}.mat-list-base{padding-top:8px;display:block;-webkit-tap-highlight-color:transparent}.mat-list-base .mat-subheader{height:48px;line-height:16px}.mat-list-base .mat-subheader:first-child{margin-top:-8px}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{display:block;height:48px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base .mat-list-item .mat-list-item-content,.mat-list-base .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base .mat-list-item .mat-list-item-content-reverse,.mat-list-base .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base .mat-list-item .mat-list-item-ripple,.mat-list-base .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar,.mat-list-base .mat-list-option.mat-list-item-with-avatar{height:56px}.mat-list-base .mat-list-item.mat-2-line,.mat-list-base .mat-list-option.mat-2-line{height:72px}.mat-list-base .mat-list-item.mat-3-line,.mat-list-base .mat-list-option.mat-3-line{height:88px}.mat-list-base .mat-list-item.mat-multi-line,.mat-list-base .mat-list-option.mat-multi-line{height:auto}.mat-list-base .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base .mat-list-item .mat-list-text,.mat-list-base .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base .mat-list-item .mat-list-text>*,.mat-list-base .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base .mat-list-item .mat-list-text:empty,.mat-list-base .mat-list-option .mat-list-text:empty{display:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base .mat-list-item .mat-list-avatar,.mat-list-base .mat-list-option .mat-list-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;object-fit:cover}.mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:72px;width:calc(100% - 72px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:72px}.mat-list-base .mat-list-item .mat-list-icon,.mat-list-base .mat-list-option .mat-list-icon{flex-shrink:0;width:24px;height:24px;font-size:24px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:64px;width:calc(100% - 64px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:64px}.mat-list-base .mat-list-item .mat-divider,.mat-list-base .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base .mat-list-item .mat-divider,[dir=rtl] .mat-list-base .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-list-base[dense]{padding-top:4px;display:block}.mat-list-base[dense] .mat-subheader{height:40px;line-height:8px}.mat-list-base[dense] .mat-subheader:first-child{margin-top:-4px}.mat-list-base[dense] .mat-list-item,.mat-list-base[dense] .mat-list-option{display:block;height:40px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-item-content,.mat-list-base[dense] .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base[dense] .mat-list-item .mat-list-item-content-reverse,.mat-list-base[dense] .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base[dense] .mat-list-item .mat-list-item-ripple,.mat-list-base[dense] .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar{height:48px}.mat-list-base[dense] .mat-list-item.mat-2-line,.mat-list-base[dense] .mat-list-option.mat-2-line{height:60px}.mat-list-base[dense] .mat-list-item.mat-3-line,.mat-list-base[dense] .mat-list-option.mat-3-line{height:76px}.mat-list-base[dense] .mat-list-item.mat-multi-line,.mat-list-base[dense] .mat-list-option.mat-multi-line{height:auto}.mat-list-base[dense] .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base[dense] .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base[dense] .mat-list-item .mat-list-text,.mat-list-base[dense] .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-text>*,.mat-list-base[dense] .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base[dense] .mat-list-item .mat-list-text:empty,.mat-list-base[dense] .mat-list-option .mat-list-text:empty{display:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base[dense] .mat-list-item .mat-list-avatar,.mat-list-base[dense] .mat-list-option .mat-list-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;object-fit:cover}.mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:68px;width:calc(100% - 68px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:68px}.mat-list-base[dense] .mat-list-item .mat-list-icon,.mat-list-base[dense] .mat-list-option .mat-list-icon{flex-shrink:0;width:20px;height:20px;font-size:20px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:60px;width:calc(100% - 60px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:60px}.mat-list-base[dense] .mat-list-item .mat-divider,.mat-list-base[dense] .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-divider,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base[dense] .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-nav-list a{text-decoration:none;color:inherit}.mat-nav-list .mat-list-item{cursor:pointer;outline:none}mat-action-list button{background:none;color:inherit;border:none;font:inherit;outline:inherit;-webkit-tap-highlight-color:transparent;text-align:left}[dir=rtl] mat-action-list button{text-align:right}mat-action-list button::-moz-focus-inner{border:0}mat-action-list .mat-list-item{cursor:pointer;outline:inherit}.mat-list-option:not(.mat-list-item-disabled){cursor:pointer;outline:none}.mat-list-item-disabled{pointer-events:none}.cdk-high-contrast-active .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active :host .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active .mat-selection-list:focus{outline-style:dotted}.cdk-high-contrast-active .mat-list-option:hover,.cdk-high-contrast-active .mat-list-option:focus,.cdk-high-contrast-active .mat-nav-list .mat-list-item:hover,.cdk-high-contrast-active .mat-nav-list .mat-list-item:focus,.cdk-high-contrast-active mat-action-list .mat-list-item:hover,.cdk-high-contrast-active mat-action-list .mat-list-item:focus{outline:dotted 1px;z-index:1}.cdk-high-contrast-active .mat-list-single-selected-option::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}.cdk-high-contrast-active [dir=rtl] .mat-list-single-selected-option::after{right:auto;left:16px}@media(hover: none){.mat-list-option:not(.mat-list-single-selected-option):not(.mat-list-item-disabled):hover,.mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,.mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover{background:none}}\n'],encapsulation:2,changeDetection:0}),Pt}(),te=function(){var Pt=function(Pe){(0,t.Z)(ft,Pe);var ze=(0,e.Z)(ft);function ft(ct){var Ee;return(0,u.Z)(this,ft),(Ee=ze.call(this))._elementRef=ct,Ee._stateChanges=new b.x,"action-list"===Ee._getListType()&&ct.nativeElement.classList.add("mat-action-list"),Ee}return(0,c.Z)(ft,[{key:"_getListType",value:function(){var Ee=this._elementRef.nativeElement.nodeName.toLowerCase();return"mat-list"===Ee?"list":"mat-action-list"===Ee?"action-list":null}},{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),ft}(be);return Pt.\u0275fac=function(ze){return new(ze||Pt)(_.Y36(_.SBq))},Pt.\u0275cmp=_.Xpm({type:Pt,selectors:[["mat-list"],["mat-action-list"]],hostAttrs:[1,"mat-list","mat-list-base"],inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matList"],features:[_._Bn([{provide:d,useExisting:Pt}]),_.qOj,_.TTD],ngContentSelectors:N,decls:1,vars:0,template:function(ze,ft){1&ze&&(_.F$t(),_.Hsn(0))},styles:['.mat-subheader{display:flex;box-sizing:border-box;padding:16px;align-items:center}.mat-list-base .mat-subheader{margin:0}.mat-list-base{padding-top:8px;display:block;-webkit-tap-highlight-color:transparent}.mat-list-base .mat-subheader{height:48px;line-height:16px}.mat-list-base .mat-subheader:first-child{margin-top:-8px}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{display:block;height:48px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base .mat-list-item .mat-list-item-content,.mat-list-base .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base .mat-list-item .mat-list-item-content-reverse,.mat-list-base .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base .mat-list-item .mat-list-item-ripple,.mat-list-base .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar,.mat-list-base .mat-list-option.mat-list-item-with-avatar{height:56px}.mat-list-base .mat-list-item.mat-2-line,.mat-list-base .mat-list-option.mat-2-line{height:72px}.mat-list-base .mat-list-item.mat-3-line,.mat-list-base .mat-list-option.mat-3-line{height:88px}.mat-list-base .mat-list-item.mat-multi-line,.mat-list-base .mat-list-option.mat-multi-line{height:auto}.mat-list-base .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base .mat-list-item .mat-list-text,.mat-list-base .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base .mat-list-item .mat-list-text>*,.mat-list-base .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base .mat-list-item .mat-list-text:empty,.mat-list-base .mat-list-option .mat-list-text:empty{display:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base .mat-list-item .mat-list-avatar,.mat-list-base .mat-list-option .mat-list-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;object-fit:cover}.mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:72px;width:calc(100% - 72px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:72px}.mat-list-base .mat-list-item .mat-list-icon,.mat-list-base .mat-list-option .mat-list-icon{flex-shrink:0;width:24px;height:24px;font-size:24px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:64px;width:calc(100% - 64px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:64px}.mat-list-base .mat-list-item .mat-divider,.mat-list-base .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base .mat-list-item .mat-divider,[dir=rtl] .mat-list-base .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-list-base[dense]{padding-top:4px;display:block}.mat-list-base[dense] .mat-subheader{height:40px;line-height:8px}.mat-list-base[dense] .mat-subheader:first-child{margin-top:-4px}.mat-list-base[dense] .mat-list-item,.mat-list-base[dense] .mat-list-option{display:block;height:40px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-item-content,.mat-list-base[dense] .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base[dense] .mat-list-item .mat-list-item-content-reverse,.mat-list-base[dense] .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base[dense] .mat-list-item .mat-list-item-ripple,.mat-list-base[dense] .mat-list-option .mat-list-item-ripple{display:block;top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar{height:48px}.mat-list-base[dense] .mat-list-item.mat-2-line,.mat-list-base[dense] .mat-list-option.mat-2-line{height:60px}.mat-list-base[dense] .mat-list-item.mat-3-line,.mat-list-base[dense] .mat-list-option.mat-3-line{height:76px}.mat-list-base[dense] .mat-list-item.mat-multi-line,.mat-list-base[dense] .mat-list-option.mat-multi-line{height:auto}.mat-list-base[dense] .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base[dense] .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base[dense] .mat-list-item .mat-list-text,.mat-list-base[dense] .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-text>*,.mat-list-base[dense] .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base[dense] .mat-list-item .mat-list-text:empty,.mat-list-base[dense] .mat-list-option .mat-list-text:empty{display:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base[dense] .mat-list-item .mat-list-avatar,.mat-list-base[dense] .mat-list-option .mat-list-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;object-fit:cover}.mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:68px;width:calc(100% - 68px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:68px}.mat-list-base[dense] .mat-list-item .mat-list-icon,.mat-list-base[dense] .mat-list-option .mat-list-icon{flex-shrink:0;width:20px;height:20px;font-size:20px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:60px;width:calc(100% - 60px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:60px}.mat-list-base[dense] .mat-list-item .mat-divider,.mat-list-base[dense] .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-divider,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base[dense] .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-nav-list a{text-decoration:none;color:inherit}.mat-nav-list .mat-list-item{cursor:pointer;outline:none}mat-action-list button{background:none;color:inherit;border:none;font:inherit;outline:inherit;-webkit-tap-highlight-color:transparent;text-align:left}[dir=rtl] mat-action-list button{text-align:right}mat-action-list button::-moz-focus-inner{border:0}mat-action-list .mat-list-item{cursor:pointer;outline:inherit}.mat-list-option:not(.mat-list-item-disabled){cursor:pointer;outline:none}.mat-list-item-disabled{pointer-events:none}.cdk-high-contrast-active .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active :host .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active .mat-selection-list:focus{outline-style:dotted}.cdk-high-contrast-active .mat-list-option:hover,.cdk-high-contrast-active .mat-list-option:focus,.cdk-high-contrast-active .mat-nav-list .mat-list-item:hover,.cdk-high-contrast-active .mat-nav-list .mat-list-item:focus,.cdk-high-contrast-active mat-action-list .mat-list-item:hover,.cdk-high-contrast-active mat-action-list .mat-list-item:focus{outline:dotted 1px;z-index:1}.cdk-high-contrast-active .mat-list-single-selected-option::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}.cdk-high-contrast-active [dir=rtl] .mat-list-single-selected-option::after{right:auto;left:16px}@media(hover: none){.mat-list-option:not(.mat-list-single-selected-option):not(.mat-list-item-disabled):hover,.mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,.mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover{background:none}}\n'],encapsulation:2,changeDetection:0}),Pt}(),K=function(){var Pt=(0,c.Z)(function Pe(){(0,u.Z)(this,Pe)});return Pt.\u0275fac=function(ze){return new(ze||Pt)},Pt.\u0275dir=_.lG2({type:Pt,selectors:[["","mat-list-avatar",""],["","matListAvatar",""]],hostAttrs:[1,"mat-list-avatar"]}),Pt}(),G=function(){var Pt=(0,c.Z)(function Pe(){(0,u.Z)(this,Pe)});return Pt.\u0275fac=function(ze){return new(ze||Pt)},Pt.\u0275dir=_.lG2({type:Pt,selectors:[["","mat-list-icon",""],["","matListIcon",""]],hostAttrs:[1,"mat-list-icon"]}),Pt}(),_e=function(){var Pt=function(Pe){(0,t.Z)(ft,Pe);var ze=(0,e.Z)(ft);function ft(ct,Ee,st,nt){var at;(0,u.Z)(this,ft),(at=ze.call(this))._element=ct,at._isInteractiveList=!1,at._destroyed=new b.x,at._disabled=!1,at._isInteractiveList=!!(st||nt&&"action-list"===nt._getListType()),at._list=st||nt;var We=at._getHostElement();return"button"===We.nodeName.toLowerCase()&&!We.hasAttribute("type")&&We.setAttribute("type","button"),at._list&&at._list._stateChanges.pipe((0,T.R)(at._destroyed)).subscribe(function(){Ee.markForCheck()}),at}return(0,c.Z)(ft,[{key:"disabled",get:function(){return this._disabled||!(!this._list||!this._list.disabled)},set:function(Ee){this._disabled=(0,h.Ig)(Ee)}},{key:"ngAfterContentInit",value:function(){(0,s.E0)(this._lines,this._element)}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_isRippleDisabled",value:function(){return!this._isInteractiveList||this.disableRipple||!(!this._list||!this._list.disableRipple)}},{key:"_getHostElement",value:function(){return this._element.nativeElement}}]),ft}(z);return Pt.\u0275fac=function(ze){return new(ze||Pt)(_.Y36(_.SBq),_.Y36(_.sBO),_.Y36(Q,8),_.Y36(d,8))},Pt.\u0275cmp=_.Xpm({type:Pt,selectors:[["mat-list-item"],["a","mat-list-item",""],["button","mat-list-item",""]],contentQueries:function(ze,ft,ct){var Ee;1&ze&&(_.Suo(ct,K,5),_.Suo(ct,G,5),_.Suo(ct,s.X2,5)),2&ze&&(_.iGM(Ee=_.CRH())&&(ft._avatar=Ee.first),_.iGM(Ee=_.CRH())&&(ft._icon=Ee.first),_.iGM(Ee=_.CRH())&&(ft._lines=Ee))},hostAttrs:[1,"mat-list-item","mat-focus-indicator"],hostVars:6,hostBindings:function(ze,ft){2&ze&&_.ekj("mat-list-item-disabled",ft.disabled)("mat-list-item-avatar",ft._avatar||ft._icon)("mat-list-item-with-avatar",ft._avatar||ft._icon)},inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matListItem"],features:[_.qOj],ngContentSelectors:j,decls:6,vars:2,consts:[[1,"mat-list-item-content"],["mat-ripple","",1,"mat-list-item-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-list-text"]],template:function(ze,ft){1&ze&&(_.F$t(L),_.TgZ(0,"span",0),_._UZ(1,"span",1),_.Hsn(2),_.TgZ(3,"span",2),_.Hsn(4,1),_.qZA(),_.Hsn(5,2),_.qZA()),2&ze&&(_.xp6(1),_.Q6J("matRippleTrigger",ft._getHostElement())("matRippleDisabled",ft._isRippleDisabled()))},directives:[s.wG],encapsulation:2,changeDetection:0}),Pt}(),wt=function(){var Pt=(0,c.Z)(function Pe(){(0,u.Z)(this,Pe)});return Pt.\u0275fac=function(ze){return new(ze||Pt)},Pt.\u0275mod=_.oAB({type:Pt}),Pt.\u0275inj=_.cJS({imports:[[s.uc,s.si,s.BQ,s.us,o.ez],s.uc,s.BQ,s.us,D.t]}),Pt}()},82796:function(Ce,E,n){"use strict";n.d(E,{VK:function(){return We},OP:function(){return ct},Tx:function(){return kt},p6:function(){return an}});var S=n(78170),t=n(71340),e=n(45632),c=n(46751),u=n(56101),o=n(39117),_=n(1884),s=n(84128),h=n(76484),b=n(75939),T=n(86613),y=n(50253),Y=n(17714),q=n(36646),B=n(10745),k=n(83888),D=n(44874),N=n(32673),I=n(59295),L=n(68951),j=n(60116),le=n(46441),re=n(31631),W=n(24476),$=n(36362),be=n(1130),z=n(54244),d=n(14390),Q=n(51588),J=n(24426),te=["mat-menu-item",""];function K(It,$e){1&It&&(T.O4$(),T.TgZ(0,"svg",2),T._UZ(1,"polygon",3),T.qZA())}var G=["*"];function ce(It,$e){if(1&It){var Ae=T.EpF();T.TgZ(0,"div",0),T.NdJ("keydown",function(me){return T.CHM(Ae),T.oxw()._handleKeydown(me)})("click",function(){return T.CHM(Ae),T.oxw().closed.emit("click")})("@transformMenu.start",function(me){return T.CHM(Ae),T.oxw()._onAnimationStart(me)})("@transformMenu.done",function(me){return T.CHM(Ae),T.oxw()._onAnimationDone(me)}),T.TgZ(1,"div",1),T.Hsn(2),T.qZA(),T.qZA()}if(2&It){var X=T.oxw();T.Q6J("id",X.panelId)("ngClass",X._classList)("@transformMenu",X._panelAnimationState),T.uIk("aria-label",X.ariaLabel||null)("aria-labelledby",X.ariaLabelledby||null)("aria-describedby",X.ariaDescribedby||null)}}var _e={transformMenu:(0,re.X$)("transformMenu",[(0,re.SB)("void",(0,re.oB)({opacity:0,transform:"scale(0.8)"})),(0,re.eR)("void => enter",(0,re.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,re.oB)({opacity:1,transform:"scale(1)"}))),(0,re.eR)("* => void",(0,re.jt)("100ms 25ms linear",(0,re.oB)({opacity:0})))]),fadeInItems:(0,re.X$)("fadeInItems",[(0,re.SB)("showing",(0,re.oB)({opacity:1})),(0,re.eR)("void => *",[(0,re.oB)({opacity:0}),(0,re.jt)("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},ue=new T.OlP("MatMenuContent"),ze=new T.OlP("MAT_MENU_PANEL"),ft=(0,be.Kr)((0,be.Id)(function(){return(0,_.Z)(function It(){(0,o.Z)(this,It)})}())),ct=function(){var It=function($e){(0,c.Z)(X,$e);var Ae=(0,u.Z)(X);function X(ne,me,Oe,He,At){var Ft,sn;return(0,o.Z)(this,X),(Ft=Ae.call(this))._elementRef=ne,Ft._focusMonitor=Oe,Ft._parentMenu=He,Ft._changeDetectorRef=At,Ft.role="menuitem",Ft._hovered=new y.x,Ft._focused=new y.x,Ft._highlighted=!1,Ft._triggersSubmenu=!1,null===(sn=null==He?void 0:He.addItem)||void 0===sn||sn.call(He,(0,e.Z)(Ft)),Ft}return(0,_.Z)(X,[{key:"focus",value:function(me,Oe){this._focusMonitor&&me?this._focusMonitor.focusVia(this._getHostElement(),me,Oe):this._getHostElement().focus(Oe),this._focused.next(this)}},{key:"ngAfterViewInit",value:function(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}},{key:"ngOnDestroy",value:function(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}},{key:"_getTabIndex",value:function(){return this.disabled?"-1":"0"}},{key:"_getHostElement",value:function(){return this._elementRef.nativeElement}},{key:"_checkDisabled",value:function(me){this.disabled&&(me.preventDefault(),me.stopPropagation())}},{key:"_handleMouseEnter",value:function(){this._hovered.next(this)}},{key:"getLabel",value:function(){for(var me,Oe=this._elementRef.nativeElement.cloneNode(!0),He=Oe.querySelectorAll("mat-icon, .material-icons"),At=0;At0&&void 0!==arguments[0]?arguments[0]:"program";this.lazyContent?this._ngZone.onStable.pipe((0,I.q)(1)).subscribe(function(){return X._focusFirstItem(ne)}):this._focusFirstItem(ne)}},{key:"_focusFirstItem",value:function(X){var ne=this._keyManager;if(ne.setFocusOrigin(X).setFirstItemActive(),!ne.activeItem&&this._directDescendantItems.length)for(var me=this._directDescendantItems.first._getHostElement().parentElement;me;){if("menu"===me.getAttribute("role")){me.focus();break}me=me.parentElement}}},{key:"resetActiveItem",value:function(){this._keyManager.setActiveItem(-1)}},{key:"setElevation",value:function(X){var ne=this,me=Math.min(this._baseElevation+X,24),Oe="".concat(this._elevationPrefix).concat(me),He=Object.keys(this._classList).find(function(At){return At.startsWith(ne._elevationPrefix)});(!He||He===this._previousElevation)&&(this._previousElevation&&(this._classList[this._previousElevation]=!1),this._classList[Oe]=!0,this._previousElevation=Oe)}},{key:"setPositionClasses",value:function(){var X=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.xPosition,ne=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.yPosition,me=this._classList;me["mat-menu-before"]="before"===X,me["mat-menu-after"]="after"===X,me["mat-menu-above"]="above"===ne,me["mat-menu-below"]="below"===ne}},{key:"_startAnimation",value:function(){this._panelAnimationState="enter"}},{key:"_resetAnimation",value:function(){this._panelAnimationState="void"}},{key:"_onAnimationDone",value:function(X){this._animationDone.next(X),this._isAnimating=!1}},{key:"_onAnimationStart",value:function(X){this._isAnimating=!0,"enter"===X.toState&&0===this._keyManager.activeItemIndex&&(X.element.scrollTop=0)}},{key:"_updateDirectDescendants",value:function(){var X=this;this._allItems.changes.pipe((0,D.O)(this._allItems)).subscribe(function(ne){X._directDescendantItems.reset(ne.filter(function(me){return me._parentMenu===X})),X._directDescendantItems.notifyOnChanges()})}}]),$e}();return It.\u0275fac=function(Ae){return new(Ae||It)(T.Y36(T.SBq),T.Y36(T.R0b),T.Y36(Ee))},It.\u0275dir=T.lG2({type:It,contentQueries:function(Ae,X,ne){var me;1&Ae&&(T.Suo(ne,ue,5),T.Suo(ne,ct,5),T.Suo(ne,ct,4)),2&Ae&&(T.iGM(me=T.CRH())&&(X.lazyContent=me.first),T.iGM(me=T.CRH())&&(X._allItems=me),T.iGM(me=T.CRH())&&(X.items=me))},viewQuery:function(Ae,X){var ne;1&Ae&&T.Gf(T.Rgc,5),2&Ae&&T.iGM(ne=T.CRH())&&(X.templateRef=ne.first)},inputs:{backdropClass:"backdropClass",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:"overlapTrigger",hasBackdrop:"hasBackdrop",panelClass:["class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"}}),It}(),We=function(){var It=function($e){(0,c.Z)(X,$e);var Ae=(0,u.Z)(X);function X(ne,me,Oe){var He;return(0,o.Z)(this,X),(He=Ae.call(this,ne,me,Oe))._elevationPrefix="mat-elevation-z",He._baseElevation=4,He}return(0,_.Z)(X)}(at);return It.\u0275fac=function(Ae){return new(Ae||It)(T.Y36(T.SBq),T.Y36(T.R0b),T.Y36(Ee))},It.\u0275cmp=T.Xpm({type:It,selectors:[["mat-menu"]],hostVars:3,hostBindings:function(Ae,X){2&Ae&&T.uIk("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},exportAs:["matMenu"],features:[T._Bn([{provide:ze,useExisting:It}]),T.qOj],ngContentSelectors:G,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-menu-panel",3,"id","ngClass","keydown","click"],[1,"mat-menu-content"]],template:function(Ae,X){1&Ae&&(T.F$t(),T.YNc(0,ce,3,6,"ng-template"))},directives:[$.mk],styles:["mat-menu{display:none}.mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]{pointer-events:none}.cdk-high-contrast-active .mat-menu-item{margin-top:1px}.cdk-high-contrast-active .mat-menu-item.cdk-program-focused,.cdk-high-contrast-active .mat-menu-item.cdk-keyboard-focused,.cdk-high-contrast-active .mat-menu-item-highlighted{outline:dotted 1px}.mat-menu-item-submenu-trigger{padding-right:32px}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}.mat-menu-submenu-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%);width:5px;height:10px;fill:currentColor}[dir=rtl] .mat-menu-submenu-icon{right:auto;left:16px;transform:translateY(-50%) scaleX(-1)}.cdk-high-contrast-active .mat-menu-submenu-icon{fill:CanvasText}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}\n"],encapsulation:2,data:{animation:[_e.transformMenu,_e.fadeInItems]},changeDetection:0}),It}(),xe=new T.OlP("mat-menu-scroll-strategy"),Fe={provide:xe,deps:[z.aV],useFactory:function ut(It){return function(){return It.scrollStrategies.reposition()}}},Ht=(0,d.i$)({passive:!0}),nn=function(){var It=function(){function $e(Ae,X,ne,me,Oe,He,At,Ft){var sn=this;(0,o.Z)(this,$e),this._overlay=Ae,this._element=X,this._viewContainerRef=ne,this._menuItemInstance=He,this._dir=At,this._focusMonitor=Ft,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=Y.w0.EMPTY,this._hoverSubscription=Y.w0.EMPTY,this._menuCloseSubscription=Y.w0.EMPTY,this._handleTouchStart=function(Xt){(0,s.yG)(Xt)||(sn._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new T.vpe,this.onMenuOpen=this.menuOpened,this.menuClosed=new T.vpe,this.onMenuClose=this.menuClosed,this._scrollStrategy=me,this._parentMaterialMenu=Oe instanceof at?Oe:void 0,X.nativeElement.addEventListener("touchstart",this._handleTouchStart,Ht),He&&(He._triggersSubmenu=this.triggersSubmenu())}return(0,_.Z)($e,[{key:"_deprecatedMatMenuTriggerFor",get:function(){return this.menu},set:function(X){this.menu=X}},{key:"menu",get:function(){return this._menu},set:function(X){var ne=this;X!==this._menu&&(this._menu=X,this._menuCloseSubscription.unsubscribe(),X&&(this._menuCloseSubscription=X.close.subscribe(function(me){ne._destroyMenu(me),("click"===me||"tab"===me)&&ne._parentMaterialMenu&&ne._parentMaterialMenu.closed.emit(me)})))}},{key:"ngAfterContentInit",value:function(){this._checkMenu(),this._handleHover()}},{key:"ngOnDestroy",value:function(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,Ht),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}},{key:"menuOpen",get:function(){return this._menuOpen}},{key:"dir",get:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"triggersSubmenu",value:function(){return!(!this._menuItemInstance||!this._parentMaterialMenu)}},{key:"toggleMenu",value:function(){return this._menuOpen?this.closeMenu():this.openMenu()}},{key:"openMenu",value:function(){var X=this;if(!this._menuOpen){this._checkMenu();var ne=this._createOverlay(),me=ne.getConfig(),Oe=me.positionStrategy;this._setPosition(Oe),me.hasBackdrop=null==this.menu.hasBackdrop?!this.triggersSubmenu():this.menu.hasBackdrop,ne.attach(this._getPortal()),this.menu.lazyContent&&this.menu.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(function(){return X.closeMenu()}),this._initMenu(),this.menu instanceof at&&(this.menu._startAnimation(),this.menu._directDescendantItems.changes.pipe((0,L.R)(this.menu.close)).subscribe(function(){Oe.withLockedPosition(!1).reapplyLastPosition(),Oe.withLockedPosition(!0)}))}}},{key:"closeMenu",value:function(){this.menu.close.emit()}},{key:"focus",value:function(X,ne){this._focusMonitor&&X?this._focusMonitor.focusVia(this._element,X,ne):this._element.nativeElement.focus(ne)}},{key:"updatePosition",value:function(){var X;null===(X=this._overlayRef)||void 0===X||X.updatePosition()}},{key:"_destroyMenu",value:function(X){var ne=this;if(this._overlayRef&&this.menuOpen){var me=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===X||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,me instanceof at?(me._resetAnimation(),me.lazyContent?me._animationDone.pipe((0,j.h)(function(Oe){return"void"===Oe.toState}),(0,I.q)(1),(0,L.R)(me.lazyContent._attached)).subscribe({next:function(){return me.lazyContent.detach()},complete:function(){return ne._setIsMenuOpen(!1)}}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),me.lazyContent&&me.lazyContent.detach())}}},{key:"_initMenu",value:function(){this.menu.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,this.menu.direction=this.dir,this._setMenuElevation(),this.menu.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}},{key:"_setMenuElevation",value:function(){if(this.menu.setElevation){for(var X=0,ne=this.menu.parentMenu;ne;)X++,ne=ne.parentMenu;this.menu.setElevation(X)}}},{key:"_setIsMenuOpen",value:function(X){this._menuOpen=X,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(X)}},{key:"_checkMenu",value:function(){}},{key:"_createOverlay",value:function(){if(!this._overlayRef){var X=this._getOverlayConfig();this._subscribeToPositions(X.positionStrategy),this._overlayRef=this._overlay.create(X),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}},{key:"_getOverlayConfig",value:function(){return new z.X_({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:this.menu.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:this.menu.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}},{key:"_subscribeToPositions",value:function(X){var ne=this;this.menu.setPositionClasses&&X.positionChanges.subscribe(function(me){ne.menu.setPositionClasses("start"===me.connectionPair.overlayX?"after":"before","top"===me.connectionPair.overlayY?"below":"above")})}},{key:"_setPosition",value:function(X){var me=(0,S.Z)("before"===this.menu.xPosition?["end","start"]:["start","end"],2),Oe=me[0],He=me[1],Ft=(0,S.Z)("above"===this.menu.yPosition?["bottom","top"]:["top","bottom"],2),sn=Ft[0],Xt=Ft[1],gn=sn,vn=Xt,hn=Oe,jn=He,Jn=0;this.triggersSubmenu()?(jn=Oe="before"===this.menu.xPosition?"start":"end",He=hn="end"===Oe?"start":"end",Jn="bottom"===sn?8:-8):this.menu.overlapTrigger||(gn="top"===sn?"bottom":"top",vn="top"===Xt?"bottom":"top"),X.withPositions([{originX:Oe,originY:gn,overlayX:hn,overlayY:sn,offsetY:Jn},{originX:He,originY:gn,overlayX:jn,overlayY:sn,offsetY:Jn},{originX:Oe,originY:vn,overlayX:hn,overlayY:Xt,offsetY:-Jn},{originX:He,originY:vn,overlayX:jn,overlayY:Xt,offsetY:-Jn}])}},{key:"_menuClosingActions",value:function(){var X=this,ne=this._overlayRef.backdropClick(),me=this._overlayRef.detachments(),Oe=this._parentMaterialMenu?this._parentMaterialMenu.closed:(0,B.of)(),He=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe((0,j.h)(function(At){return At!==X._menuItemInstance}),(0,j.h)(function(){return X._menuOpen})):(0,B.of)();return(0,q.T)(ne,Oe,He,me)}},{key:"_handleMousedown",value:function(X){(0,s.X6)(X)||(this._openedBy=0===X.button?"mouse":void 0,this.triggersSubmenu()&&X.preventDefault())}},{key:"_handleKeydown",value:function(X){var ne=X.keyCode;(ne===b.K5||ne===b.L_)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(ne===b.SV&&"ltr"===this.dir||ne===b.oh&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}},{key:"_handleClick",value:function(X){this.triggersSubmenu()?(X.stopPropagation(),this.openMenu()):this.toggleMenu()}},{key:"_handleHover",value:function(){var X=this;!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe((0,j.h)(function(ne){return ne===X._menuItemInstance&&!ne.disabled}),(0,le.g)(0,k.E)).subscribe(function(){X._openedBy="mouse",X.menu instanceof at&&X.menu._isAnimating?X.menu._animationDone.pipe((0,I.q)(1),(0,le.g)(0,k.E),(0,L.R)(X._parentMaterialMenu._hovered())).subscribe(function(){return X.openMenu()}):X.openMenu()}))}},{key:"_getPortal",value:function(){return(!this._portal||this._portal.templateRef!==this.menu.templateRef)&&(this._portal=new W.UE(this.menu.templateRef,this._viewContainerRef)),this._portal}}]),$e}();return It.\u0275fac=function(Ae){return new(Ae||It)(T.Y36(z.aV),T.Y36(T.SBq),T.Y36(T.s_b),T.Y36(xe),T.Y36(ze,8),T.Y36(ct,10),T.Y36(Q.Is,8),T.Y36(s.tE))},It.\u0275dir=T.lG2({type:It,hostAttrs:["aria-haspopup","true"],hostVars:2,hostBindings:function(Ae,X){1&Ae&&T.NdJ("click",function(me){return X._handleClick(me)})("mousedown",function(me){return X._handleMousedown(me)})("keydown",function(me){return X._handleKeydown(me)}),2&Ae&&T.uIk("aria-expanded",X.menuOpen||null)("aria-controls",X.menuOpen?X.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:["mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:["matMenuTriggerFor","menu"],menuData:["matMenuTriggerData","menuData"],restoreFocus:["matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"}}),It}(),an=function(){var It=function($e){(0,c.Z)(X,$e);var Ae=(0,u.Z)(X);function X(){return(0,o.Z)(this,X),Ae.apply(this,arguments)}return(0,_.Z)(X)}(nn);return It.\u0275fac=function(){var $e;return function(X){return($e||($e=T.n5z(It)))(X||It)}}(),It.\u0275dir=T.lG2({type:It,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-menu-trigger"],exportAs:["matMenuTrigger"],features:[T.qOj]}),It}(),kt=function(){var It=(0,_.Z)(function $e(){(0,o.Z)(this,$e)});return It.\u0275fac=function(Ae){return new(Ae||It)},It.\u0275mod=T.oAB({type:It}),It.\u0275inj=T.cJS({providers:[Fe],imports:[[$.ez,be.BQ,be.si,z.U8],J.ZD,be.BQ]}),It}()},26439:function(Ce,E,n){"use strict";n.d(E,{NW:function(){return d},TU:function(){return Q}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(36362),o=n(86613),_=n(1130),s=n(87317),h=n(91434),b=n(40089),T=n(76484),y=n(50253),Y=n(44770);function q(J,te){if(1&J&&(o.TgZ(0,"mat-option",19),o._uU(1),o.qZA()),2&J){var K=te.$implicit;o.Q6J("value",K),o.xp6(1),o.hij(" ",K," ")}}function B(J,te){if(1&J){var K=o.EpF();o.TgZ(0,"mat-form-field",16),o.TgZ(1,"mat-select",17),o.NdJ("selectionChange",function(_e){return o.CHM(K),o.oxw(2)._changePageSize(_e.value)}),o.YNc(2,q,2,2,"mat-option",18),o.qZA(),o.qZA()}if(2&J){var G=o.oxw(2);o.Q6J("appearance",G._formFieldAppearance)("color",G.color),o.xp6(1),o.Q6J("value",G.pageSize)("disabled",G.disabled)("aria-label",G._intl.itemsPerPageLabel),o.xp6(1),o.Q6J("ngForOf",G._displayedPageSizeOptions)}}function k(J,te){if(1&J&&(o.TgZ(0,"div",20),o._uU(1),o.qZA()),2&J){var K=o.oxw(2);o.xp6(1),o.Oqu(K.pageSize)}}function D(J,te){if(1&J&&(o.TgZ(0,"div",12),o.TgZ(1,"div",13),o._uU(2),o.qZA(),o.YNc(3,B,3,6,"mat-form-field",14),o.YNc(4,k,2,1,"div",15),o.qZA()),2&J){var K=o.oxw();o.xp6(2),o.hij(" ",K._intl.itemsPerPageLabel," "),o.xp6(1),o.Q6J("ngIf",K._displayedPageSizeOptions.length>1),o.xp6(1),o.Q6J("ngIf",K._displayedPageSizeOptions.length<=1)}}function N(J,te){if(1&J){var K=o.EpF();o.TgZ(0,"button",21),o.NdJ("click",function(){return o.CHM(K),o.oxw().firstPage()}),o.O4$(),o.TgZ(1,"svg",7),o._UZ(2,"path",22),o.qZA(),o.qZA()}if(2&J){var G=o.oxw();o.Q6J("matTooltip",G._intl.firstPageLabel)("matTooltipDisabled",G._previousButtonsDisabled())("matTooltipPosition","above")("disabled",G._previousButtonsDisabled()),o.uIk("aria-label",G._intl.firstPageLabel)}}function I(J,te){if(1&J){var K=o.EpF();o.O4$(),o.kcU(),o.TgZ(0,"button",23),o.NdJ("click",function(){return o.CHM(K),o.oxw().lastPage()}),o.O4$(),o.TgZ(1,"svg",7),o._UZ(2,"path",24),o.qZA(),o.qZA()}if(2&J){var G=o.oxw();o.Q6J("matTooltip",G._intl.lastPageLabel)("matTooltipDisabled",G._nextButtonsDisabled())("matTooltipPosition","above")("disabled",G._nextButtonsDisabled()),o.uIk("aria-label",G._intl.lastPageLabel)}}var L=function(){var J=(0,e.Z)(function te(){(0,c.Z)(this,te),this.changes=new y.x,this.itemsPerPageLabel="Items per page:",this.nextPageLabel="Next page",this.previousPageLabel="Previous page",this.firstPageLabel="First page",this.lastPageLabel="Last page",this.getRangeLabel=function(K,G,ce){if(0==ce||0==G)return"0 of ".concat(ce);var _e=K*G,Me=_e<(ce=Math.max(ce,0))?Math.min(_e+G,ce):_e+G;return"".concat(_e+1," \u2013 ").concat(Me," of ").concat(ce)}});return J.\u0275fac=function(K){return new(K||J)},J.\u0275prov=o.Yz7({token:J,factory:J.\u0275fac,providedIn:"root"}),J}(),le={provide:L,deps:[[new o.FiY,new o.tp0,L]],useFactory:function j(J){return J||new L}},$=new o.OlP("MAT_PAGINATOR_DEFAULT_OPTIONS"),be=(0,_.Id)((0,_.dB)(function(){return(0,e.Z)(function J(){(0,c.Z)(this,J)})}())),z=function(){var J=function(te){(0,S.Z)(G,te);var K=(0,t.Z)(G);function G(ce,_e,Me){var ve;if((0,c.Z)(this,G),(ve=K.call(this))._intl=ce,ve._changeDetectorRef=_e,ve._pageIndex=0,ve._length=0,ve._pageSizeOptions=[],ve._hidePageSize=!1,ve._showFirstLastButtons=!1,ve.page=new o.vpe,ve._intlChanges=ce.changes.subscribe(function(){return ve._changeDetectorRef.markForCheck()}),Me){var ue=Me.pageSize,lt=Me.pageSizeOptions,Xe=Me.hidePageSize,mt=Me.showFirstLastButtons;null!=ue&&(ve._pageSize=ue),null!=lt&&(ve._pageSizeOptions=lt),null!=Xe&&(ve._hidePageSize=Xe),null!=mt&&(ve._showFirstLastButtons=mt)}return ve}return(0,e.Z)(G,[{key:"pageIndex",get:function(){return this._pageIndex},set:function(_e){this._pageIndex=Math.max((0,T.su)(_e),0),this._changeDetectorRef.markForCheck()}},{key:"length",get:function(){return this._length},set:function(_e){this._length=(0,T.su)(_e),this._changeDetectorRef.markForCheck()}},{key:"pageSize",get:function(){return this._pageSize},set:function(_e){this._pageSize=Math.max((0,T.su)(_e),0),this._updateDisplayedPageSizeOptions()}},{key:"pageSizeOptions",get:function(){return this._pageSizeOptions},set:function(_e){this._pageSizeOptions=(_e||[]).map(function(Me){return(0,T.su)(Me)}),this._updateDisplayedPageSizeOptions()}},{key:"hidePageSize",get:function(){return this._hidePageSize},set:function(_e){this._hidePageSize=(0,T.Ig)(_e)}},{key:"showFirstLastButtons",get:function(){return this._showFirstLastButtons},set:function(_e){this._showFirstLastButtons=(0,T.Ig)(_e)}},{key:"ngOnInit",value:function(){this._initialized=!0,this._updateDisplayedPageSizeOptions(),this._markInitialized()}},{key:"ngOnDestroy",value:function(){this._intlChanges.unsubscribe()}},{key:"nextPage",value:function(){if(this.hasNextPage()){var _e=this.pageIndex;this.pageIndex=this.pageIndex+1,this._emitPageEvent(_e)}}},{key:"previousPage",value:function(){if(this.hasPreviousPage()){var _e=this.pageIndex;this.pageIndex=this.pageIndex-1,this._emitPageEvent(_e)}}},{key:"firstPage",value:function(){if(this.hasPreviousPage()){var _e=this.pageIndex;this.pageIndex=0,this._emitPageEvent(_e)}}},{key:"lastPage",value:function(){if(this.hasNextPage()){var _e=this.pageIndex;this.pageIndex=this.getNumberOfPages()-1,this._emitPageEvent(_e)}}},{key:"hasPreviousPage",value:function(){return this.pageIndex>=1&&0!=this.pageSize}},{key:"hasNextPage",value:function(){var _e=this.getNumberOfPages()-1;return this.pageIndex<_e&&0!=this.pageSize}},{key:"getNumberOfPages",value:function(){return this.pageSize?Math.ceil(this.length/this.pageSize):0}},{key:"_changePageSize",value:function(_e){var ve=this.pageIndex;this.pageIndex=Math.floor(this.pageIndex*this.pageSize/_e)||0,this.pageSize=_e,this._emitPageEvent(ve)}},{key:"_nextButtonsDisabled",value:function(){return this.disabled||!this.hasNextPage()}},{key:"_previousButtonsDisabled",value:function(){return this.disabled||!this.hasPreviousPage()}},{key:"_updateDisplayedPageSizeOptions",value:function(){!this._initialized||(this.pageSize||(this._pageSize=0!=this.pageSizeOptions.length?this.pageSizeOptions[0]:50),this._displayedPageSizeOptions=this.pageSizeOptions.slice(),-1===this._displayedPageSizeOptions.indexOf(this.pageSize)&&this._displayedPageSizeOptions.push(this.pageSize),this._displayedPageSizeOptions.sort(function(_e,Me){return _e-Me}),this._changeDetectorRef.markForCheck())}},{key:"_emitPageEvent",value:function(_e){this.page.emit({previousPageIndex:_e,pageIndex:this.pageIndex,pageSize:this.pageSize,length:this.length})}}]),G}(be);return J.\u0275fac=function(K){o.$Z()},J.\u0275dir=o.lG2({type:J,inputs:{color:"color",pageIndex:"pageIndex",length:"length",pageSize:"pageSize",pageSizeOptions:"pageSizeOptions",hidePageSize:"hidePageSize",showFirstLastButtons:"showFirstLastButtons"},outputs:{page:"page"},features:[o.qOj]}),J}(),d=function(){var J=function(te){(0,S.Z)(G,te);var K=(0,t.Z)(G);function G(ce,_e,Me){var ve;return(0,c.Z)(this,G),ve=K.call(this,ce,_e,Me),Me&&null!=Me.formFieldAppearance&&(ve._formFieldAppearance=Me.formFieldAppearance),ve}return(0,e.Z)(G)}(z);return J.\u0275fac=function(K){return new(K||J)(o.Y36(L),o.Y36(o.sBO),o.Y36($,8))},J.\u0275cmp=o.Xpm({type:J,selectors:[["mat-paginator"]],hostAttrs:["role","group",1,"mat-paginator"],inputs:{disabled:"disabled"},exportAs:["matPaginator"],features:[o.qOj],decls:14,vars:14,consts:[[1,"mat-paginator-outer-container"],[1,"mat-paginator-container"],["class","mat-paginator-page-size",4,"ngIf"],[1,"mat-paginator-range-actions"],[1,"mat-paginator-range-label"],["mat-icon-button","","type","button","class","mat-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click",4,"ngIf"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-previous",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["viewBox","0 0 24 24","focusable","false",1,"mat-paginator-icon"],["d","M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-next",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"],["mat-icon-button","","type","button","class","mat-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click",4,"ngIf"],[1,"mat-paginator-page-size"],[1,"mat-paginator-page-size-label"],["class","mat-paginator-page-size-select",3,"appearance","color",4,"ngIf"],["class","mat-paginator-page-size-value",4,"ngIf"],[1,"mat-paginator-page-size-select",3,"appearance","color"],[3,"value","disabled","aria-label","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"mat-paginator-page-size-value"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"]],template:function(K,G){1&K&&(o.TgZ(0,"div",0),o.TgZ(1,"div",1),o.YNc(2,D,5,3,"div",2),o.TgZ(3,"div",3),o.TgZ(4,"div",4),o._uU(5),o.qZA(),o.YNc(6,N,3,5,"button",5),o.TgZ(7,"button",6),o.NdJ("click",function(){return G.previousPage()}),o.O4$(),o.TgZ(8,"svg",7),o._UZ(9,"path",8),o.qZA(),o.qZA(),o.kcU(),o.TgZ(10,"button",9),o.NdJ("click",function(){return G.nextPage()}),o.O4$(),o.TgZ(11,"svg",7),o._UZ(12,"path",10),o.qZA(),o.qZA(),o.YNc(13,I,3,5,"button",11),o.qZA(),o.qZA(),o.qZA()),2&K&&(o.xp6(2),o.Q6J("ngIf",!G.hidePageSize),o.xp6(3),o.hij(" ",G._intl.getRangeLabel(G.pageIndex,G.pageSize,G.length)," "),o.xp6(1),o.Q6J("ngIf",G.showFirstLastButtons),o.xp6(1),o.Q6J("matTooltip",G._intl.previousPageLabel)("matTooltipDisabled",G._previousButtonsDisabled())("matTooltipPosition","above")("disabled",G._previousButtonsDisabled()),o.uIk("aria-label",G._intl.previousPageLabel),o.xp6(3),o.Q6J("matTooltip",G._intl.nextPageLabel)("matTooltipDisabled",G._nextButtonsDisabled())("matTooltipPosition","above")("disabled",G._nextButtonsDisabled()),o.uIk("aria-label",G._intl.nextPageLabel),o.xp6(3),o.Q6J("ngIf",G.showFirstLastButtons))},directives:[Y.KE,h.gD,_.ey,s.lW,u.O5,u.sg,b.gM],styles:[".mat-paginator{display:block}.mat-paginator-outer-container{display:flex}.mat-paginator-container{display:flex;align-items:center;justify-content:flex-end;padding:0 8px;flex-wrap:wrap-reverse;width:100%}.mat-paginator-page-size{display:flex;align-items:baseline;margin-right:8px}[dir=rtl] .mat-paginator-page-size{margin-right:0;margin-left:8px}.mat-paginator-page-size-label{margin:0 4px}.mat-paginator-page-size-select{margin:6px 4px 0 4px;width:56px}.mat-paginator-page-size-select.mat-form-field-appearance-outline{width:64px}.mat-paginator-page-size-select.mat-form-field-appearance-fill{width:64px}.mat-paginator-range-label{margin:0 32px 0 24px}.mat-paginator-range-actions{display:flex;align-items:center}.mat-paginator-icon{width:28px;fill:currentColor}[dir=rtl] .mat-paginator-icon{transform:rotate(180deg)}.cdk-high-contrast-active .mat-paginator-icon{fill:CanvasText}\n"],encapsulation:2,changeDetection:0}),J}(),Q=function(){var J=(0,e.Z)(function te(){(0,c.Z)(this,te)});return J.\u0275fac=function(K){return new(K||J)},J.\u0275mod=o.oAB({type:J}),J.\u0275inj=o.cJS({providers:[le],imports:[[u.ez,s.ot,h.LD,b.AV,_.BQ]]}),J}()},60833:function(Ce,E,n){"use strict";n.d(E,{pW:function(){return I},Cv:function(){return j}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(86613),o=n(36362),_=n(1130),s=n(76484),h=n(57481),b=n(17714),T=n(23280),y=n(60116),Y=["primaryValueBar"],q=(0,_.pj)(function(){return(0,e.Z)(function le(re){(0,c.Z)(this,le),this._elementRef=re})}(),"primary"),B=new u.OlP("mat-progress-bar-location",{providedIn:"root",factory:function k(){var le=(0,u.f3M)(o.K0),re=le?le.location:null;return{getPathname:function(){return re?re.pathname+re.search:""}}}}),D=new u.OlP("MAT_PROGRESS_BAR_DEFAULT_OPTIONS"),N=0,I=function(){var le=function(re){(0,S.Z)($,re);var W=(0,t.Z)($);function $(be,z,d,Q,J,te){var K;(0,c.Z)(this,$),(K=W.call(this,be))._ngZone=z,K._animationMode=d,K._changeDetectorRef=te,K._isNoopAnimation=!1,K._value=0,K._bufferValue=0,K.animationEnd=new u.vpe,K._animationEndSubscription=b.w0.EMPTY,K.mode="determinate",K.progressbarId="mat-progress-bar-".concat(N++);var G=Q?Q.getPathname().split("#")[0]:"";return K._rectangleFillValue="url('".concat(G,"#").concat(K.progressbarId,"')"),K._isNoopAnimation="NoopAnimations"===d,J&&(J.color&&(K.color=K.defaultColor=J.color),K.mode=J.mode||K.mode),K}return(0,e.Z)($,[{key:"value",get:function(){return this._value},set:function(z){var d;this._value=L((0,s.su)(z)||0),null===(d=this._changeDetectorRef)||void 0===d||d.markForCheck()}},{key:"bufferValue",get:function(){return this._bufferValue},set:function(z){var d;this._bufferValue=L(z||0),null===(d=this._changeDetectorRef)||void 0===d||d.markForCheck()}},{key:"_primaryTransform",value:function(){return{transform:"scale3d(".concat(this.value/100,", 1, 1)")}}},{key:"_bufferTransform",value:function(){return"buffer"===this.mode?{transform:"scale3d(".concat(this.bufferValue/100,", 1, 1)")}:null}},{key:"ngAfterViewInit",value:function(){var z=this;this._ngZone.runOutsideAngular(function(){var d=z._primaryValueBar.nativeElement;z._animationEndSubscription=(0,T.R)(d,"transitionend").pipe((0,y.h)(function(Q){return Q.target===d})).subscribe(function(){("determinate"===z.mode||"buffer"===z.mode)&&z._ngZone.run(function(){return z.animationEnd.next({value:z.value})})})})}},{key:"ngOnDestroy",value:function(){this._animationEndSubscription.unsubscribe()}}]),$}(q);return le.\u0275fac=function(W){return new(W||le)(u.Y36(u.SBq),u.Y36(u.R0b),u.Y36(h.Qb,8),u.Y36(B,8),u.Y36(D,8),u.Y36(u.sBO))},le.\u0275cmp=u.Xpm({type:le,selectors:[["mat-progress-bar"]],viewQuery:function(W,$){var be;1&W&&u.Gf(Y,5),2&W&&u.iGM(be=u.CRH())&&($._primaryValueBar=be.first)},hostAttrs:["role","progressbar","aria-valuemin","0","aria-valuemax","100","tabindex","-1",1,"mat-progress-bar"],hostVars:4,hostBindings:function(W,$){2&W&&(u.uIk("aria-valuenow","indeterminate"===$.mode||"query"===$.mode?null:$.value)("mode",$.mode),u.ekj("_mat-animation-noopable",$._isNoopAnimation))},inputs:{color:"color",value:"value",bufferValue:"bufferValue",mode:"mode"},outputs:{animationEnd:"animationEnd"},exportAs:["matProgressBar"],features:[u.qOj],decls:10,vars:4,consts:[["aria-hidden","true"],["width","100%","height","4","focusable","false",1,"mat-progress-bar-background","mat-progress-bar-element"],["x","4","y","0","width","8","height","4","patternUnits","userSpaceOnUse",3,"id"],["cx","2","cy","2","r","2"],["width","100%","height","100%"],[1,"mat-progress-bar-buffer","mat-progress-bar-element",3,"ngStyle"],[1,"mat-progress-bar-primary","mat-progress-bar-fill","mat-progress-bar-element",3,"ngStyle"],["primaryValueBar",""],[1,"mat-progress-bar-secondary","mat-progress-bar-fill","mat-progress-bar-element"]],template:function(W,$){1&W&&(u.TgZ(0,"div",0),u.O4$(),u.TgZ(1,"svg",1),u.TgZ(2,"defs"),u.TgZ(3,"pattern",2),u._UZ(4,"circle",3),u.qZA(),u.qZA(),u._UZ(5,"rect",4),u.qZA(),u.kcU(),u._UZ(6,"div",5),u._UZ(7,"div",6,7),u._UZ(9,"div",8),u.qZA()),2&W&&(u.xp6(3),u.Q6J("id",$.progressbarId),u.xp6(2),u.uIk("fill",$._rectangleFillValue),u.xp6(1),u.Q6J("ngStyle",$._bufferTransform()),u.xp6(1),u.Q6J("ngStyle",$._primaryTransform()))},directives:[o.PC],styles:['.mat-progress-bar{display:block;height:4px;overflow:hidden;position:relative;transition:opacity 250ms linear;width:100%}._mat-animation-noopable.mat-progress-bar{transition:none;animation:none}.mat-progress-bar .mat-progress-bar-element,.mat-progress-bar .mat-progress-bar-fill::after{height:100%;position:absolute;width:100%}.mat-progress-bar .mat-progress-bar-background{width:calc(100% + 10px)}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-background{display:none}.mat-progress-bar .mat-progress-bar-buffer{transform-origin:top left;transition:transform 250ms ease}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-buffer{border-top:solid 5px;opacity:.5}.mat-progress-bar .mat-progress-bar-secondary{display:none}.mat-progress-bar .mat-progress-bar-fill{animation:none;transform-origin:top left;transition:transform 250ms ease}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-fill{border-top:solid 4px}.mat-progress-bar .mat-progress-bar-fill::after{animation:none;content:"";display:inline-block;left:0}.mat-progress-bar[dir=rtl],[dir=rtl] .mat-progress-bar{transform:rotateY(180deg)}.mat-progress-bar[mode=query]{transform:rotateZ(180deg)}.mat-progress-bar[mode=query][dir=rtl],[dir=rtl] .mat-progress-bar[mode=query]{transform:rotateZ(180deg) rotateY(180deg)}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-fill,.mat-progress-bar[mode=query] .mat-progress-bar-fill{transition:none}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-primary,.mat-progress-bar[mode=query] .mat-progress-bar-primary{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-primary-indeterminate-translate 2000ms infinite linear;left:-145.166611%}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-primary.mat-progress-bar-fill::after,.mat-progress-bar[mode=query] .mat-progress-bar-primary.mat-progress-bar-fill::after{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-primary-indeterminate-scale 2000ms infinite linear}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-secondary,.mat-progress-bar[mode=query] .mat-progress-bar-secondary{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-secondary-indeterminate-translate 2000ms infinite linear;left:-54.888891%;display:block}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-secondary.mat-progress-bar-fill::after,.mat-progress-bar[mode=query] .mat-progress-bar-secondary.mat-progress-bar-fill::after{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-secondary-indeterminate-scale 2000ms infinite linear}.mat-progress-bar[mode=buffer] .mat-progress-bar-background{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-background-scroll 250ms infinite linear;display:block}.mat-progress-bar._mat-animation-noopable .mat-progress-bar-fill,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-buffer,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-primary,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-primary.mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-secondary,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-secondary.mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-background{animation:none;transition-duration:1ms}@keyframes mat-progress-bar-primary-indeterminate-translate{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.67142%)}100%{transform:translateX(200.611057%)}}@keyframes mat-progress-bar-primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes mat-progress-bar-secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.651913%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.386165%)}100%{transform:translateX(160.277782%)}}@keyframes mat-progress-bar-secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes mat-progress-bar-background-scroll{to{transform:translateX(-8px)}}\n'],encapsulation:2,changeDetection:0}),le}();function L(le){var re=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,W=arguments.length>2&&void 0!==arguments[2]?arguments[2]:100;return Math.max(re,Math.min(W,le))}var j=function(){var le=(0,e.Z)(function re(){(0,c.Z)(this,re)});return le.\u0275fac=function(W){return new(W||le)},le.\u0275mod=u.oAB({type:le}),le.\u0275inj=u.cJS({imports:[[o.ez,_.BQ],_.BQ]}),le}()},74742:function(Ce,E,n){"use strict";n.d(E,{Ou:function(){return W},Cq:function(){return be},$g:function(){return $}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(86613),o=n(36362),_=n(1130),s=n(76484),h=n(14390),b=n(57481),T=n(17714),y=n(24426);function Y(z,d){if(1&z&&(u.O4$(),u._UZ(0,"circle",4)),2&z){var Q=u.oxw(),J=u.MAs(1);u.Udp("animation-name","mat-progress-spinner-stroke-rotate-"+Q._spinnerAnimationLabel)("stroke-dashoffset",Q._getStrokeDashOffset(),"px")("stroke-dasharray",Q._getStrokeCircumference(),"px")("stroke-width",Q._getCircleStrokeWidth(),"%")("transform-origin",Q._getCircleTransformOrigin(J)),u.uIk("r",Q._getCircleRadius())}}function q(z,d){if(1&z&&(u.O4$(),u._UZ(0,"circle",4)),2&z){var Q=u.oxw(),J=u.MAs(1);u.Udp("stroke-dashoffset",Q._getStrokeDashOffset(),"px")("stroke-dasharray",Q._getStrokeCircumference(),"px")("stroke-width",Q._getCircleStrokeWidth(),"%")("transform-origin",Q._getCircleTransformOrigin(J)),u.uIk("r",Q._getCircleRadius())}}function B(z,d){if(1&z&&(u.O4$(),u._UZ(0,"circle",4)),2&z){var Q=u.oxw(),J=u.MAs(1);u.Udp("animation-name","mat-progress-spinner-stroke-rotate-"+Q._spinnerAnimationLabel)("stroke-dashoffset",Q._getStrokeDashOffset(),"px")("stroke-dasharray",Q._getStrokeCircumference(),"px")("stroke-width",Q._getCircleStrokeWidth(),"%")("transform-origin",Q._getCircleTransformOrigin(J)),u.uIk("r",Q._getCircleRadius())}}function k(z,d){if(1&z&&(u.O4$(),u._UZ(0,"circle",4)),2&z){var Q=u.oxw(),J=u.MAs(1);u.Udp("stroke-dashoffset",Q._getStrokeDashOffset(),"px")("stroke-dasharray",Q._getStrokeCircumference(),"px")("stroke-width",Q._getCircleStrokeWidth(),"%")("transform-origin",Q._getCircleTransformOrigin(J)),u.uIk("r",Q._getCircleRadius())}}var L=(0,_.pj)(function(){return(0,e.Z)(function z(d){(0,c.Z)(this,z),this._elementRef=d})}(),"primary"),j=new u.OlP("mat-progress-spinner-default-options",{providedIn:"root",factory:function le(){return{diameter:100}}}),W=function(z){(0,S.Z)(Q,z);var d=(0,t.Z)(Q);function Q(J,te,K,G,ce,_e,Me,ve){var ue;(0,c.Z)(this,Q),(ue=d.call(this,J))._document=K,ue._diameter=100,ue._value=0,ue._resizeSubscription=T.w0.EMPTY,ue.mode="determinate";var lt=Q._diameters;return ue._spinnerAnimationLabel=ue._getSpinnerAnimationLabel(),lt.has(K.head)||lt.set(K.head,new Set([100])),ue._noopAnimations="NoopAnimations"===G&&!!ce&&!ce._forceAnimations,ce&&(ce.diameter&&(ue.diameter=ce.diameter),ce.strokeWidth&&(ue.strokeWidth=ce.strokeWidth)),te.isBrowser&&te.SAFARI&&Me&&_e&&ve&&(ue._resizeSubscription=Me.change(150).subscribe(function(){"indeterminate"===ue.mode&&ve.run(function(){return _e.markForCheck()})})),ue}return(0,e.Z)(Q,[{key:"diameter",get:function(){return this._diameter},set:function(te){this._diameter=(0,s.su)(te),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),this._styleRoot&&this._attachStyleNode()}},{key:"strokeWidth",get:function(){return this._strokeWidth||this.diameter/10},set:function(te){this._strokeWidth=(0,s.su)(te)}},{key:"value",get:function(){return"determinate"===this.mode?this._value:0},set:function(te){this._value=Math.max(0,Math.min(100,(0,s.su)(te)))}},{key:"ngOnInit",value:function(){var te=this._elementRef.nativeElement;this._styleRoot=(0,h.kV)(te)||this._document.head,this._attachStyleNode(),te.classList.add("mat-progress-spinner-indeterminate-animation")}},{key:"ngOnDestroy",value:function(){this._resizeSubscription.unsubscribe()}},{key:"_getCircleRadius",value:function(){return(this.diameter-10)/2}},{key:"_getViewBox",value:function(){var te=2*this._getCircleRadius()+this.strokeWidth;return"0 0 ".concat(te," ").concat(te)}},{key:"_getStrokeCircumference",value:function(){return 2*Math.PI*this._getCircleRadius()}},{key:"_getStrokeDashOffset",value:function(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:null}},{key:"_getCircleStrokeWidth",value:function(){return this.strokeWidth/this.diameter*100}},{key:"_getCircleTransformOrigin",value:function(te){var K,G=50*(null!==(K=te.currentScale)&&void 0!==K?K:1);return"".concat(G,"% ").concat(G,"%")}},{key:"_attachStyleNode",value:function(){var te=this._styleRoot,K=this._diameter,G=Q._diameters,ce=G.get(te);if(!ce||!ce.has(K)){var _e=this._document.createElement("style");_e.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),_e.textContent=this._getAnimationText(),te.appendChild(_e),ce||G.set(te,ce=new Set),ce.add(K)}}},{key:"_getAnimationText",value:function(){var te=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,"".concat(.95*te)).replace(/END_VALUE/g,"".concat(.2*te)).replace(/DIAMETER/g,"".concat(this._spinnerAnimationLabel))}},{key:"_getSpinnerAnimationLabel",value:function(){return this.diameter.toString().replace(".","_")}}]),Q}(L);W._diameters=new WeakMap,W.\u0275fac=function(d){return new(d||W)(u.Y36(u.SBq),u.Y36(h.t4),u.Y36(o.K0,8),u.Y36(b.Qb,8),u.Y36(j),u.Y36(u.sBO),u.Y36(y.rL),u.Y36(u.R0b))},W.\u0275cmp=u.Xpm({type:W,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(d,Q){2&d&&(u.uIk("aria-valuemin","determinate"===Q.mode?0:null)("aria-valuemax","determinate"===Q.mode?100:null)("aria-valuenow","determinate"===Q.mode?Q.value:null)("mode",Q.mode),u.Udp("width",Q.diameter,"px")("height",Q.diameter,"px"),u.ekj("_mat-animation-noopable",Q._noopAnimations))},inputs:{color:"color",diameter:"diameter",strokeWidth:"strokeWidth",mode:"mode",value:"value"},exportAs:["matProgressSpinner"],features:[u.qOj],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(d,Q){1&d&&(u.O4$(),u.TgZ(0,"svg",0,1),u.YNc(2,Y,1,11,"circle",2),u.YNc(3,q,1,9,"circle",3),u.qZA()),2&d&&(u.Udp("width",Q.diameter,"px")("height",Q.diameter,"px"),u.Q6J("ngSwitch","indeterminate"===Q.mode),u.uIk("viewBox",Q._getViewBox()),u.xp6(2),u.Q6J("ngSwitchCase",!0),u.xp6(1),u.Q6J("ngSwitchCase",!1))},directives:[o.RF,o.n9],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}\n"],encapsulation:2,changeDetection:0});var $=function(){var z=function(d){(0,S.Z)(J,d);var Q=(0,t.Z)(J);function J(te,K,G,ce,_e,Me,ve,ue){var lt;return(0,c.Z)(this,J),(lt=Q.call(this,te,K,G,ce,_e,Me,ve,ue)).mode="indeterminate",lt}return(0,e.Z)(J)}(W);return z.\u0275fac=function(Q){return new(Q||z)(u.Y36(u.SBq),u.Y36(h.t4),u.Y36(o.K0,8),u.Y36(b.Qb,8),u.Y36(j),u.Y36(u.sBO),u.Y36(y.rL),u.Y36(u.R0b))},z.\u0275cmp=u.Xpm({type:z,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(Q,J){2&Q&&(u.Udp("width",J.diameter,"px")("height",J.diameter,"px"),u.ekj("_mat-animation-noopable",J._noopAnimations))},inputs:{color:"color"},features:[u.qOj],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(Q,J){1&Q&&(u.O4$(),u.TgZ(0,"svg",0,1),u.YNc(2,B,1,11,"circle",2),u.YNc(3,k,1,9,"circle",3),u.qZA()),2&Q&&(u.Udp("width",J.diameter,"px")("height",J.diameter,"px"),u.Q6J("ngSwitch","indeterminate"===J.mode),u.uIk("viewBox",J._getViewBox()),u.xp6(2),u.Q6J("ngSwitchCase",!0),u.xp6(1),u.Q6J("ngSwitchCase",!1))},directives:[o.RF,o.n9],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}\n"],encapsulation:2,changeDetection:0}),z}(),be=function(){var z=(0,e.Z)(function d(){(0,c.Z)(this,d)});return z.\u0275fac=function(Q){return new(Q||z)},z.\u0275mod=u.oAB({type:z}),z.\u0275inj=u.cJS({imports:[[_.BQ,o.ez],_.BQ]}),z}()},68390:function(Ce,E,n){"use strict";n.d(E,{U0:function(){return be},VQ:function(){return le},Fk:function(){return z}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(86613),o=n(1130),_=n(76484),s=n(90587),h=n(57481),b=n(84128),T=n(89502),y=["input"],Y=function(Q){return{enterDuration:Q}},q=["*"],B=new u.OlP("mat-radio-default-options",{providedIn:"root",factory:function k(){return{color:"accent"}}}),D=0,N={provide:s.JU,useExisting:(0,u.Gpc)(function(){return le}),multi:!0},I=(0,e.Z)(function d(Q,J){(0,c.Z)(this,d),this.source=Q,this.value=J}),L=new u.OlP("MatRadioGroup"),j=function(){var d=function(){function Q(J){(0,c.Z)(this,Q),this._changeDetector=J,this._value=null,this._name="mat-radio-group-".concat(D++),this._selected=null,this._isInitialized=!1,this._labelPosition="after",this._disabled=!1,this._required=!1,this._controlValueAccessorChangeFn=function(){},this.onTouched=function(){},this.change=new u.vpe}return(0,e.Z)(Q,[{key:"name",get:function(){return this._name},set:function(te){this._name=te,this._updateRadioButtonNames()}},{key:"labelPosition",get:function(){return this._labelPosition},set:function(te){this._labelPosition="before"===te?"before":"after",this._markRadiosForCheck()}},{key:"value",get:function(){return this._value},set:function(te){this._value!==te&&(this._value=te,this._updateSelectedRadioFromValue(),this._checkSelectedRadioButton())}},{key:"_checkSelectedRadioButton",value:function(){this._selected&&!this._selected.checked&&(this._selected.checked=!0)}},{key:"selected",get:function(){return this._selected},set:function(te){this._selected=te,this.value=te?te.value:null,this._checkSelectedRadioButton()}},{key:"disabled",get:function(){return this._disabled},set:function(te){this._disabled=(0,_.Ig)(te),this._markRadiosForCheck()}},{key:"required",get:function(){return this._required},set:function(te){this._required=(0,_.Ig)(te),this._markRadiosForCheck()}},{key:"ngAfterContentInit",value:function(){this._isInitialized=!0}},{key:"_touch",value:function(){this.onTouched&&this.onTouched()}},{key:"_updateRadioButtonNames",value:function(){var te=this;this._radios&&this._radios.forEach(function(K){K.name=te.name,K._markForCheck()})}},{key:"_updateSelectedRadioFromValue",value:function(){var te=this;this._radios&&(null===this._selected||this._selected.value!==this._value)&&(this._selected=null,this._radios.forEach(function(G){G.checked=te.value===G.value,G.checked&&(te._selected=G)}))}},{key:"_emitChangeEvent",value:function(){this._isInitialized&&this.change.emit(new I(this._selected,this._value))}},{key:"_markRadiosForCheck",value:function(){this._radios&&this._radios.forEach(function(te){return te._markForCheck()})}},{key:"writeValue",value:function(te){this.value=te,this._changeDetector.markForCheck()}},{key:"registerOnChange",value:function(te){this._controlValueAccessorChangeFn=te}},{key:"registerOnTouched",value:function(te){this.onTouched=te}},{key:"setDisabledState",value:function(te){this.disabled=te,this._changeDetector.markForCheck()}}]),Q}();return d.\u0275fac=function(J){return new(J||d)(u.Y36(u.sBO))},d.\u0275dir=u.lG2({type:d,inputs:{color:"color",name:"name",labelPosition:"labelPosition",value:"value",selected:"selected",disabled:"disabled",required:"required"},outputs:{change:"change"}}),d}(),le=function(){var d=function(Q){(0,S.Z)(te,Q);var J=(0,t.Z)(te);function te(){return(0,c.Z)(this,te),J.apply(this,arguments)}return(0,e.Z)(te)}(j);return d.\u0275fac=function(){var Q;return function(te){return(Q||(Q=u.n5z(d)))(te||d)}}(),d.\u0275dir=u.lG2({type:d,selectors:[["mat-radio-group"]],contentQueries:function(J,te,K){var G;1&J&&u.Suo(K,be,5),2&J&&u.iGM(G=u.CRH())&&(te._radios=G)},hostAttrs:["role","radiogroup",1,"mat-radio-group"],exportAs:["matRadioGroup"],features:[u._Bn([N,{provide:L,useExisting:d}]),u.qOj]}),d}(),W=(0,o.Kr)((0,o.sb)((0,e.Z)(function d(Q){(0,c.Z)(this,d),this._elementRef=Q}))),$=function(){var d=function(Q){(0,S.Z)(te,Q);var J=(0,t.Z)(te);function te(K,G,ce,_e,Me,ve,ue,lt){var Xe;return(0,c.Z)(this,te),(Xe=J.call(this,G))._changeDetector=ce,Xe._focusMonitor=_e,Xe._radioDispatcher=Me,Xe._providerOverride=ue,Xe._uniqueId="mat-radio-".concat(++D),Xe.id=Xe._uniqueId,Xe.change=new u.vpe,Xe._checked=!1,Xe._value=null,Xe._removeUniqueSelectionListener=function(){},Xe.radioGroup=K,Xe._noopAnimations="NoopAnimations"===ve,lt&&(Xe.tabIndex=(0,_.su)(lt,0)),Xe._removeUniqueSelectionListener=Me.listen(function(mt,wt){mt!==Xe.id&&wt===Xe.name&&(Xe.checked=!1)}),Xe}return(0,e.Z)(te,[{key:"checked",get:function(){return this._checked},set:function(G){var ce=(0,_.Ig)(G);this._checked!==ce&&(this._checked=ce,ce&&this.radioGroup&&this.radioGroup.value!==this.value?this.radioGroup.selected=this:!ce&&this.radioGroup&&this.radioGroup.value===this.value&&(this.radioGroup.selected=null),ce&&this._radioDispatcher.notify(this.id,this.name),this._changeDetector.markForCheck())}},{key:"value",get:function(){return this._value},set:function(G){this._value!==G&&(this._value=G,null!==this.radioGroup&&(this.checked||(this.checked=this.radioGroup.value===G),this.checked&&(this.radioGroup.selected=this)))}},{key:"labelPosition",get:function(){return this._labelPosition||this.radioGroup&&this.radioGroup.labelPosition||"after"},set:function(G){this._labelPosition=G}},{key:"disabled",get:function(){return this._disabled||null!==this.radioGroup&&this.radioGroup.disabled},set:function(G){this._setDisabled((0,_.Ig)(G))}},{key:"required",get:function(){return this._required||this.radioGroup&&this.radioGroup.required},set:function(G){this._required=(0,_.Ig)(G)}},{key:"color",get:function(){return this._color||this.radioGroup&&this.radioGroup.color||this._providerOverride&&this._providerOverride.color||"accent"},set:function(G){this._color=G}},{key:"inputId",get:function(){return"".concat(this.id||this._uniqueId,"-input")}},{key:"focus",value:function(G,ce){ce?this._focusMonitor.focusVia(this._inputElement,ce,G):this._inputElement.nativeElement.focus(G)}},{key:"_markForCheck",value:function(){this._changeDetector.markForCheck()}},{key:"ngOnInit",value:function(){this.radioGroup&&(this.checked=this.radioGroup.value===this._value,this.checked&&(this.radioGroup.selected=this),this.name=this.radioGroup.name)}},{key:"ngAfterViewInit",value:function(){var G=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(ce){!ce&&G.radioGroup&&G.radioGroup._touch()})}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef),this._removeUniqueSelectionListener()}},{key:"_emitChangeEvent",value:function(){this.change.emit(new I(this,this._value))}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_onInputClick",value:function(G){G.stopPropagation()}},{key:"_onInputInteraction",value:function(G){if(G.stopPropagation(),!this.checked&&!this.disabled){var ce=this.radioGroup&&this.value!==this.radioGroup.value;this.checked=!0,this._emitChangeEvent(),this.radioGroup&&(this.radioGroup._controlValueAccessorChangeFn(this.value),ce&&this.radioGroup._emitChangeEvent())}}},{key:"_setDisabled",value:function(G){this._disabled!==G&&(this._disabled=G,this._changeDetector.markForCheck())}}]),te}(W);return d.\u0275fac=function(J){u.$Z()},d.\u0275dir=u.lG2({type:d,viewQuery:function(J,te){var K;1&J&&u.Gf(y,5),2&J&&u.iGM(K=u.CRH())&&(te._inputElement=K.first)},inputs:{id:"id",name:"name",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],checked:"checked",value:"value",labelPosition:"labelPosition",disabled:"disabled",required:"required",color:"color"},outputs:{change:"change"},features:[u.qOj]}),d}(),be=function(){var d=function(Q){(0,S.Z)(te,Q);var J=(0,t.Z)(te);function te(K,G,ce,_e,Me,ve,ue,lt){return(0,c.Z)(this,te),J.call(this,K,G,ce,_e,Me,ve,ue,lt)}return(0,e.Z)(te)}($);return d.\u0275fac=function(J){return new(J||d)(u.Y36(L,8),u.Y36(u.SBq),u.Y36(u.sBO),u.Y36(b.tE),u.Y36(T.A8),u.Y36(h.Qb,8),u.Y36(B,8),u.$8M("tabindex"))},d.\u0275cmp=u.Xpm({type:d,selectors:[["mat-radio-button"]],hostAttrs:[1,"mat-radio-button"],hostVars:17,hostBindings:function(J,te){1&J&&u.NdJ("focus",function(){return te._inputElement.nativeElement.focus()}),2&J&&(u.uIk("tabindex",null)("id",te.id)("aria-label",null)("aria-labelledby",null)("aria-describedby",null),u.ekj("mat-radio-checked",te.checked)("mat-radio-disabled",te.disabled)("_mat-animation-noopable",te._noopAnimations)("mat-primary","primary"===te.color)("mat-accent","accent"===te.color)("mat-warn","warn"===te.color))},inputs:{disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matRadioButton"],features:[u.qOj],ngContentSelectors:q,decls:13,vars:20,consts:[[1,"mat-radio-label"],["label",""],[1,"mat-radio-container"],[1,"mat-radio-outer-circle"],[1,"mat-radio-inner-circle"],["type","radio",1,"mat-radio-input","cdk-visually-hidden",3,"id","checked","disabled","tabIndex","required","change","click"],["input",""],["mat-ripple","",1,"mat-radio-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-radio-persistent-ripple"],[1,"mat-radio-label-content"],[2,"display","none"]],template:function(J,te){if(1&J&&(u.F$t(),u.TgZ(0,"label",0,1),u.TgZ(2,"span",2),u._UZ(3,"span",3),u._UZ(4,"span",4),u.TgZ(5,"input",5,6),u.NdJ("change",function(ce){return te._onInputInteraction(ce)})("click",function(ce){return te._onInputClick(ce)}),u.qZA(),u.TgZ(7,"span",7),u._UZ(8,"span",8),u.qZA(),u.qZA(),u.TgZ(9,"span",9),u.TgZ(10,"span",10),u._uU(11,"\xa0"),u.qZA(),u.Hsn(12),u.qZA(),u.qZA()),2&J){var K=u.MAs(1);u.uIk("for",te.inputId),u.xp6(5),u.Q6J("id",te.inputId)("checked",te.checked)("disabled",te.disabled)("tabIndex",te.tabIndex)("required",te.required),u.uIk("name",te.name)("value",te.value)("aria-label",te.ariaLabel)("aria-labelledby",te.ariaLabelledby)("aria-describedby",te.ariaDescribedby),u.xp6(2),u.Q6J("matRippleTrigger",K)("matRippleDisabled",te._isRippleDisabled())("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",u.VKq(18,Y,te._noopAnimations?0:150)),u.xp6(2),u.ekj("mat-radio-label-before","before"==te.labelPosition)}},directives:[o.wG],styles:[".mat-radio-button{display:inline-block;-webkit-tap-highlight-color:transparent;outline:0}.mat-radio-label{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;vertical-align:middle;width:100%}.mat-radio-container{box-sizing:border-box;display:inline-block;position:relative;width:20px;height:20px;flex-shrink:0}.mat-radio-outer-circle{box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;transition:border-color ease 280ms;width:20px;border-width:2px;border-style:solid;border-radius:50%}._mat-animation-noopable .mat-radio-outer-circle{transition:none}.mat-radio-inner-circle{border-radius:50%;box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;opacity:0;transition:transform ease 280ms,background-color ease 280ms,opacity linear 1ms 280ms;width:20px;transform:scale(0.001);-webkit-print-color-adjust:exact;color-adjust:exact}.mat-radio-checked .mat-radio-inner-circle{transform:scale(0.5);opacity:1;transition:transform ease 280ms,background-color ease 280ms}.cdk-high-contrast-active .mat-radio-checked .mat-radio-inner-circle{border:solid 10px}._mat-animation-noopable .mat-radio-inner-circle{transition:none}.mat-radio-label-content{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto;display:inline-block;order:0;line-height:inherit;padding-left:8px;padding-right:0}[dir=rtl] .mat-radio-label-content{padding-right:8px;padding-left:0}.mat-radio-label-content.mat-radio-label-before{order:-1;padding-left:0;padding-right:8px}[dir=rtl] .mat-radio-label-content.mat-radio-label-before{padding-right:0;padding-left:8px}.mat-radio-disabled,.mat-radio-disabled .mat-radio-label{cursor:default}.mat-radio-button .mat-radio-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-radio-button .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple){opacity:.16}.mat-radio-persistent-ripple{width:100%;height:100%;transform:none;top:0;left:0}.mat-radio-container:hover .mat-radio-persistent-ripple{opacity:.04}.mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-persistent-ripple,.mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-persistent-ripple{opacity:.12}.mat-radio-persistent-ripple,.mat-radio-disabled .mat-radio-container:hover .mat-radio-persistent-ripple{opacity:0}@media(hover: none){.mat-radio-container:hover .mat-radio-persistent-ripple{display:none}}.mat-radio-input{bottom:0;left:50%}.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-ripple,.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-ripple{outline:solid 3px}.cdk-high-contrast-active .mat-radio-disabled{opacity:.5}\n"],encapsulation:2,changeDetection:0}),d}(),z=function(){var d=(0,e.Z)(function Q(){(0,c.Z)(this,Q)});return d.\u0275fac=function(J){return new(J||d)},d.\u0275mod=u.oAB({type:d}),d.\u0275inj=u.cJS({imports:[[o.si,o.BQ],o.BQ]}),d}()},91434:function(Ce,E,n){"use strict";n.d(E,{gD:function(){return It},LD:function(){return $e},$L:function(){return an}});var S=n(97424),t=n(28042),e=n(71340),c=n(45632),u=n(46751),o=n(56101),_=n(1884),s=n(39117),h=n(54244),b=n(36362),T=n(86613),y=n(1130),Y=n(44770),q=n(24426),B=n(84128),k=n(76484),D=n(89502),N=n(75939),I=n(90587),L=n(50253),j=n(21954),le=n(36646),re=n(44874),W=n(32673),$=n(59295),be=n(60116),z=n(50635),d=n(98977),Q=n(68951),J=n(31631),te=n(51588),K=["trigger"],G=["panel"];function ce(Ae,X){if(1&Ae&&(T.TgZ(0,"span",8),T._uU(1),T.qZA()),2&Ae){var ne=T.oxw();T.xp6(1),T.Oqu(ne.placeholder)}}function _e(Ae,X){if(1&Ae&&(T.TgZ(0,"span",12),T._uU(1),T.qZA()),2&Ae){var ne=T.oxw(2);T.xp6(1),T.Oqu(ne.triggerValue)}}function Me(Ae,X){1&Ae&&T.Hsn(0,0,["*ngSwitchCase","true"])}function ve(Ae,X){if(1&Ae&&(T.TgZ(0,"span",9),T.YNc(1,_e,2,1,"span",10),T.YNc(2,Me,1,0,"ng-content",11),T.qZA()),2&Ae){var ne=T.oxw();T.Q6J("ngSwitch",!!ne.customTrigger),T.xp6(2),T.Q6J("ngSwitchCase",!0)}}function ue(Ae,X){if(1&Ae){var ne=T.EpF();T.TgZ(0,"div",13),T.TgZ(1,"div",14,15),T.NdJ("@transformPanel.done",function(He){return T.CHM(ne),T.oxw()._panelDoneAnimatingStream.next(He.toState)})("keydown",function(He){return T.CHM(ne),T.oxw()._handleKeydown(He)}),T.Hsn(3,1),T.qZA(),T.qZA()}if(2&Ae){var me=T.oxw();T.Q6J("@transformPanelWrap",void 0),T.xp6(1),T.Gre("mat-select-panel ",me._getPanelTheme(),""),T.Udp("transform-origin",me._transformOrigin)("font-size",me._triggerFontSize,"px"),T.Q6J("ngClass",me.panelClass)("@transformPanel",me.multiple?"showing-multiple":"showing"),T.uIk("id",me.id+"-panel")("aria-multiselectable",me.multiple)("aria-label",me.ariaLabel||null)("aria-labelledby",me._getPanelAriaLabelledby())}}var lt=[[["mat-select-trigger"]],"*"],Xe=["mat-select-trigger","*"],mt={transformPanelWrap:(0,J.X$)("transformPanelWrap",[(0,J.eR)("* => void",(0,J.IO)("@transformPanel",[(0,J.pV)()],{optional:!0}))]),transformPanel:(0,J.X$)("transformPanel",[(0,J.SB)("void",(0,J.oB)({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),(0,J.SB)("showing",(0,J.oB)({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),(0,J.SB)("showing-multiple",(0,J.oB)({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),(0,J.eR)("void => *",(0,J.jt)("120ms cubic-bezier(0, 0, 0.2, 1)")),(0,J.eR)("* => void",(0,J.jt)("100ms 25ms linear",(0,J.oB)({opacity:0})))])},ze=0,We=new T.OlP("mat-select-scroll-strategy"),ut=new T.OlP("MAT_SELECT_CONFIG"),Fe={provide:We,deps:[h.aV],useFactory:function xe(Ae){return function(){return Ae.scrollStrategies.reposition()}}},et=(0,_.Z)(function Ae(X,ne){(0,s.Z)(this,Ae),this.source=X,this.value=ne}),Ht=(0,y.Kr)((0,y.sb)((0,y.Id)((0,y.FD)(function(){return(0,_.Z)(function Ae(X,ne,me,Oe,He){(0,s.Z)(this,Ae),this._elementRef=X,this._defaultErrorStateMatcher=ne,this._parentForm=me,this._parentFormGroup=Oe,this.ngControl=He})}())))),nn=new T.OlP("MatSelectTrigger"),an=function(){var Ae=(0,_.Z)(function X(){(0,s.Z)(this,X)});return Ae.\u0275fac=function(ne){return new(ne||Ae)},Ae.\u0275dir=T.lG2({type:Ae,selectors:[["mat-select-trigger"]],features:[T._Bn([{provide:nn,useExisting:Ae}])]}),Ae}(),kt=function(){var Ae=function(X){(0,u.Z)(me,X);var ne=(0,o.Z)(me);function me(Oe,He,At,Ft,sn,Xt,gn,vn,hn,jn,Jn,oi,ri,un){var mn,zt,qe,pt;return(0,s.Z)(this,me),(mn=ne.call(this,sn,Ft,gn,vn,jn))._viewportRuler=Oe,mn._changeDetectorRef=He,mn._ngZone=At,mn._dir=Xt,mn._parentFormField=hn,mn._liveAnnouncer=ri,mn._defaultOptions=un,mn._panelOpen=!1,mn._compareWith=function(Ne,Re){return Ne===Re},mn._uid="mat-select-".concat(ze++),mn._triggerAriaLabelledBy=null,mn._destroy=new L.x,mn._onChange=function(){},mn._onTouched=function(){},mn._valueId="mat-select-value-".concat(ze++),mn._panelDoneAnimatingStream=new L.x,mn._overlayPanelClass=(null===(zt=mn._defaultOptions)||void 0===zt?void 0:zt.overlayPanelClass)||"",mn._focused=!1,mn.controlType="mat-select",mn._multiple=!1,mn._disableOptionCentering=null!==(pt=null===(qe=mn._defaultOptions)||void 0===qe?void 0:qe.disableOptionCentering)&&void 0!==pt&&pt,mn.ariaLabel="",mn.optionSelectionChanges=(0,j.P)(function(){var Ne=mn.options;return Ne?Ne.changes.pipe((0,re.O)(Ne),(0,W.w)(function(){return le.T.apply(void 0,(0,e.Z)(Ne.map(function(Re){return Re.onSelectionChange})))})):mn._ngZone.onStable.pipe((0,$.q)(1),(0,W.w)(function(){return mn.optionSelectionChanges}))}),mn.openedChange=new T.vpe,mn._openedStream=mn.openedChange.pipe((0,be.h)(function(Ne){return Ne}),(0,z.U)(function(){})),mn._closedStream=mn.openedChange.pipe((0,be.h)(function(Ne){return!Ne}),(0,z.U)(function(){})),mn.selectionChange=new T.vpe,mn.valueChange=new T.vpe,mn.ngControl&&(mn.ngControl.valueAccessor=(0,c.Z)(mn)),null!=(null==un?void 0:un.typeaheadDebounceInterval)&&(mn._typeaheadDebounceInterval=un.typeaheadDebounceInterval),mn._scrollStrategyFactory=oi,mn._scrollStrategy=mn._scrollStrategyFactory(),mn.tabIndex=parseInt(Jn)||0,mn.id=mn.id,mn}return(0,_.Z)(me,[{key:"focused",get:function(){return this._focused||this._panelOpen}},{key:"placeholder",get:function(){return this._placeholder},set:function(He){this._placeholder=He,this.stateChanges.next()}},{key:"required",get:function(){var He,At,Ft,sn;return null!==(sn=null!==(He=this._required)&&void 0!==He?He:null===(Ft=null===(At=this.ngControl)||void 0===At?void 0:At.control)||void 0===Ft?void 0:Ft.hasValidator(I.kI.required))&&void 0!==sn&&sn},set:function(He){this._required=(0,k.Ig)(He),this.stateChanges.next()}},{key:"multiple",get:function(){return this._multiple},set:function(He){this._multiple=(0,k.Ig)(He)}},{key:"disableOptionCentering",get:function(){return this._disableOptionCentering},set:function(He){this._disableOptionCentering=(0,k.Ig)(He)}},{key:"compareWith",get:function(){return this._compareWith},set:function(He){this._compareWith=He,this._selectionModel&&this._initializeSelection()}},{key:"value",get:function(){return this._value},set:function(He){(He!==this._value||this._multiple&&Array.isArray(He))&&(this.options&&this._setSelectionByValue(He),this._value=He)}},{key:"typeaheadDebounceInterval",get:function(){return this._typeaheadDebounceInterval},set:function(He){this._typeaheadDebounceInterval=(0,k.su)(He)}},{key:"id",get:function(){return this._id},set:function(He){this._id=He||this._uid,this.stateChanges.next()}},{key:"ngOnInit",value:function(){var He=this;this._selectionModel=new D.Ov(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe((0,d.x)(),(0,Q.R)(this._destroy)).subscribe(function(){return He._panelDoneAnimating(He.panelOpen)})}},{key:"ngAfterContentInit",value:function(){var He=this;this._initKeyManager(),this._selectionModel.changed.pipe((0,Q.R)(this._destroy)).subscribe(function(At){At.added.forEach(function(Ft){return Ft.select()}),At.removed.forEach(function(Ft){return Ft.deselect()})}),this.options.changes.pipe((0,re.O)(null),(0,Q.R)(this._destroy)).subscribe(function(){He._resetOptions(),He._initializeSelection()})}},{key:"ngDoCheck",value:function(){var He=this._getTriggerAriaLabelledby();if(He!==this._triggerAriaLabelledBy){var At=this._elementRef.nativeElement;this._triggerAriaLabelledBy=He,He?At.setAttribute("aria-labelledby",He):At.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}},{key:"ngOnChanges",value:function(He){He.disabled&&this.stateChanges.next(),He.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}},{key:"ngOnDestroy",value:function(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}},{key:"toggle",value:function(){this.panelOpen?this.close():this.open()}},{key:"open",value:function(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}},{key:"close",value:function(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}},{key:"writeValue",value:function(He){this.value=He}},{key:"registerOnChange",value:function(He){this._onChange=He}},{key:"registerOnTouched",value:function(He){this._onTouched=He}},{key:"setDisabledState",value:function(He){this.disabled=He,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}},{key:"panelOpen",get:function(){return this._panelOpen}},{key:"selected",get:function(){var He,At;return this.multiple?(null===(He=this._selectionModel)||void 0===He?void 0:He.selected)||[]:null===(At=this._selectionModel)||void 0===At?void 0:At.selected[0]}},{key:"triggerValue",get:function(){if(this.empty)return"";if(this._multiple){var He=this._selectionModel.selected.map(function(At){return At.viewValue});return this._isRtl()&&He.reverse(),He.join(", ")}return this._selectionModel.selected[0].viewValue}},{key:"_isRtl",value:function(){return!!this._dir&&"rtl"===this._dir.value}},{key:"_handleKeydown",value:function(He){this.disabled||(this.panelOpen?this._handleOpenKeydown(He):this._handleClosedKeydown(He))}},{key:"_handleClosedKeydown",value:function(He){var At=He.keyCode,Ft=At===N.JH||At===N.LH||At===N.oh||At===N.SV,sn=At===N.K5||At===N.L_,Xt=this._keyManager;if(!Xt.isTyping()&&sn&&!(0,N.Vb)(He)||(this.multiple||He.altKey)&&Ft)He.preventDefault(),this.open();else if(!this.multiple){var gn=this.selected;Xt.onKeydown(He);var vn=this.selected;vn&&gn!==vn&&this._liveAnnouncer.announce(vn.viewValue,1e4)}}},{key:"_handleOpenKeydown",value:function(He){var At=this._keyManager,Ft=He.keyCode,sn=Ft===N.JH||Ft===N.LH,Xt=At.isTyping();if(sn&&He.altKey)He.preventDefault(),this.close();else if(Xt||Ft!==N.K5&&Ft!==N.L_||!At.activeItem||(0,N.Vb)(He))if(!Xt&&this._multiple&&Ft===N.A&&He.ctrlKey){He.preventDefault();var gn=this.options.some(function(hn){return!hn.disabled&&!hn.selected});this.options.forEach(function(hn){hn.disabled||(gn?hn.select():hn.deselect())})}else{var vn=At.activeItemIndex;At.onKeydown(He),this._multiple&&sn&&He.shiftKey&&At.activeItem&&At.activeItemIndex!==vn&&At.activeItem._selectViaInteraction()}else He.preventDefault(),At.activeItem._selectViaInteraction()}},{key:"_onFocus",value:function(){this.disabled||(this._focused=!0,this.stateChanges.next())}},{key:"_onBlur",value:function(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}},{key:"_onAttached",value:function(){var He=this;this._overlayDir.positionChange.pipe((0,$.q)(1)).subscribe(function(){He._changeDetectorRef.detectChanges(),He._positioningSettled()})}},{key:"_getPanelTheme",value:function(){return this._parentFormField?"mat-".concat(this._parentFormField.color):""}},{key:"empty",get:function(){return!this._selectionModel||this._selectionModel.isEmpty()}},{key:"_initializeSelection",value:function(){var He=this;Promise.resolve().then(function(){He.ngControl&&(He._value=He.ngControl.value),He._setSelectionByValue(He._value),He.stateChanges.next()})}},{key:"_setSelectionByValue",value:function(He){var At=this;if(this._selectionModel.selected.forEach(function(sn){return sn.setInactiveStyles()}),this._selectionModel.clear(),this.multiple&&He)Array.isArray(He),He.forEach(function(sn){return At._selectValue(sn)}),this._sortValues();else{var Ft=this._selectValue(He);Ft?this._keyManager.updateActiveItem(Ft):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}},{key:"_selectValue",value:function(He){var At=this,Ft=this.options.find(function(sn){if(At._selectionModel.isSelected(sn))return!1;try{return null!=sn.value&&At._compareWith(sn.value,He)}catch(Xt){return!1}});return Ft&&this._selectionModel.select(Ft),Ft}},{key:"_initKeyManager",value:function(){var He=this;this._keyManager=new B.s1(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe((0,Q.R)(this._destroy)).subscribe(function(){He.panelOpen&&(!He.multiple&&He._keyManager.activeItem&&He._keyManager.activeItem._selectViaInteraction(),He.focus(),He.close())}),this._keyManager.change.pipe((0,Q.R)(this._destroy)).subscribe(function(){He._panelOpen&&He.panel?He._scrollOptionIntoView(He._keyManager.activeItemIndex||0):!He._panelOpen&&!He.multiple&&He._keyManager.activeItem&&He._keyManager.activeItem._selectViaInteraction()})}},{key:"_resetOptions",value:function(){var He=this,At=(0,le.T)(this.options.changes,this._destroy);this.optionSelectionChanges.pipe((0,Q.R)(At)).subscribe(function(Ft){He._onSelect(Ft.source,Ft.isUserInput),Ft.isUserInput&&!He.multiple&&He._panelOpen&&(He.close(),He.focus())}),le.T.apply(void 0,(0,e.Z)(this.options.map(function(Ft){return Ft._stateChanges}))).pipe((0,Q.R)(At)).subscribe(function(){He._changeDetectorRef.markForCheck(),He.stateChanges.next()})}},{key:"_onSelect",value:function(He,At){var Ft=this._selectionModel.isSelected(He);null!=He.value||this._multiple?(Ft!==He.selected&&(He.selected?this._selectionModel.select(He):this._selectionModel.deselect(He)),At&&this._keyManager.setActiveItem(He),this.multiple&&(this._sortValues(),At&&this.focus())):(He.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(He.value)),Ft!==this._selectionModel.isSelected(He)&&this._propagateChanges(),this.stateChanges.next()}},{key:"_sortValues",value:function(){var He=this;if(this.multiple){var At=this.options.toArray();this._selectionModel.sort(function(Ft,sn){return He.sortComparator?He.sortComparator(Ft,sn,At):At.indexOf(Ft)-At.indexOf(sn)}),this.stateChanges.next()}}},{key:"_propagateChanges",value:function(He){var At;At=this.multiple?this.selected.map(function(Ft){return Ft.value}):this.selected?this.selected.value:He,this._value=At,this.valueChange.emit(At),this._onChange(At),this.selectionChange.emit(this._getChangeEvent(At)),this._changeDetectorRef.markForCheck()}},{key:"_highlightCorrectOption",value:function(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}},{key:"_canOpen",value:function(){var He;return!this._panelOpen&&!this.disabled&&(null===(He=this.options)||void 0===He?void 0:He.length)>0}},{key:"focus",value:function(He){this._elementRef.nativeElement.focus(He)}},{key:"_getPanelAriaLabelledby",value:function(){var He;if(this.ariaLabel)return null;var At=null===(He=this._parentFormField)||void 0===He?void 0:He.getLabelId();return this.ariaLabelledby?(At?At+" ":"")+this.ariaLabelledby:At}},{key:"_getAriaActiveDescendant",value:function(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}},{key:"_getTriggerAriaLabelledby",value:function(){var He;if(this.ariaLabel)return null;var At=null===(He=this._parentFormField)||void 0===He?void 0:He.getLabelId(),Ft=(At?At+" ":"")+this._valueId;return this.ariaLabelledby&&(Ft+=" "+this.ariaLabelledby),Ft}},{key:"_panelDoneAnimating",value:function(He){this.openedChange.emit(He)}},{key:"setDescribedByIds",value:function(He){this._ariaDescribedby=He.join(" ")}},{key:"onContainerClick",value:function(){this.focus(),this.open()}},{key:"shouldLabelFloat",get:function(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}]),me}(Ht);return Ae.\u0275fac=function(ne){return new(ne||Ae)(T.Y36(q.rL),T.Y36(T.sBO),T.Y36(T.R0b),T.Y36(y.rD),T.Y36(T.SBq),T.Y36(te.Is,8),T.Y36(I.F,8),T.Y36(I.sg,8),T.Y36(Y.G_,8),T.Y36(I.a5,10),T.$8M("tabindex"),T.Y36(We),T.Y36(B.Kd),T.Y36(ut,8))},Ae.\u0275dir=T.lG2({type:Ae,viewQuery:function(ne,me){var Oe;1&ne&&(T.Gf(K,5),T.Gf(G,5),T.Gf(h.pI,5)),2&ne&&(T.iGM(Oe=T.CRH())&&(me.trigger=Oe.first),T.iGM(Oe=T.CRH())&&(me.panel=Oe.first),T.iGM(Oe=T.CRH())&&(me._overlayDir=Oe.first))},inputs:{panelClass:"panelClass",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:"typeaheadDebounceInterval",sortComparator:"sortComparator",id:"id"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[T.qOj,T.TTD]}),Ae}(),It=function(){var Ae=function(X){(0,u.Z)(me,X);var ne=(0,o.Z)(me);function me(){var Oe;return(0,s.Z)(this,me),(Oe=ne.apply(this,arguments))._scrollTop=0,Oe._triggerFontSize=0,Oe._transformOrigin="top",Oe._offsetY=0,Oe._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}],Oe}return(0,_.Z)(me,[{key:"_calculateOverlayScroll",value:function(He,At,Ft){var sn=this._getItemHeight();return Math.min(Math.max(0,sn*He-At+sn/2),Ft)}},{key:"ngOnInit",value:function(){var He=this;(0,S.Z)((0,t.Z)(me.prototype),"ngOnInit",this).call(this),this._viewportRuler.change().pipe((0,Q.R)(this._destroy)).subscribe(function(){He.panelOpen&&(He._triggerRect=He.trigger.nativeElement.getBoundingClientRect(),He._changeDetectorRef.markForCheck())})}},{key:"open",value:function(){var He=this;(0,S.Z)((0,t.Z)(me.prototype),"_canOpen",this).call(this)&&((0,S.Z)((0,t.Z)(me.prototype),"open",this).call(this),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe((0,$.q)(1)).subscribe(function(){He._triggerFontSize&&He._overlayDir.overlayRef&&He._overlayDir.overlayRef.overlayElement&&(He._overlayDir.overlayRef.overlayElement.style.fontSize="".concat(He._triggerFontSize,"px"))}))}},{key:"_scrollOptionIntoView",value:function(He){var At=(0,y.CB)(He,this.options,this.optionGroups),Ft=this._getItemHeight();this.panel.nativeElement.scrollTop=0===He&&1===At?0:(0,y.jH)((He+At)*Ft,Ft,this.panel.nativeElement.scrollTop,256)}},{key:"_positioningSettled",value:function(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}},{key:"_panelDoneAnimating",value:function(He){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),(0,S.Z)((0,t.Z)(me.prototype),"_panelDoneAnimating",this).call(this,He)}},{key:"_getChangeEvent",value:function(He){return new et(this,He)}},{key:"_calculateOverlayOffsetX",value:function(){var Xt,He=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),At=this._viewportRuler.getViewportSize(),Ft=this._isRtl(),sn=this.multiple?56:32;if(this.multiple)Xt=40;else if(this.disableOptionCentering)Xt=16;else{var gn=this._selectionModel.selected[0]||this.options.first;Xt=gn&&gn.group?32:16}Ft||(Xt*=-1);var vn=0-(He.left+Xt-(Ft?sn:0)),hn=He.right+Xt-At.width+(Ft?0:sn);vn>0?Xt+=vn+8:hn>0&&(Xt-=hn+8),this._overlayDir.offsetX=Math.round(Xt),this._overlayDir.overlayRef.updatePosition()}},{key:"_calculateOverlayOffsetY",value:function(He,At,Ft){var vn,sn=this._getItemHeight(),Xt=(sn-this._triggerRect.height)/2,gn=Math.floor(256/sn);return this.disableOptionCentering?0:(vn=0===this._scrollTop?He*sn:this._scrollTop===Ft?(He-(this._getItemCount()-gn))*sn+(sn-(this._getItemCount()*sn-256)%sn):At-sn/2,Math.round(-1*vn-Xt))}},{key:"_checkOverlayWithinViewport",value:function(He){var At=this._getItemHeight(),Ft=this._viewportRuler.getViewportSize(),sn=this._triggerRect.top-8,Xt=Ft.height-this._triggerRect.bottom-8,gn=Math.abs(this._offsetY),hn=Math.min(this._getItemCount()*At,256)-gn-this._triggerRect.height;hn>Xt?this._adjustPanelUp(hn,Xt):gn>sn?this._adjustPanelDown(gn,sn,He):this._transformOrigin=this._getOriginBasedOnOption()}},{key:"_adjustPanelUp",value:function(He,At){var Ft=Math.round(He-At);this._scrollTop-=Ft,this._offsetY-=Ft,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}},{key:"_adjustPanelDown",value:function(He,At,Ft){var sn=Math.round(He-At);if(this._scrollTop+=sn,this._offsetY+=sn,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=Ft)return this._scrollTop=Ft,this._offsetY=0,void(this._transformOrigin="50% top 0px")}},{key:"_calculateOverlayPosition",value:function(){var gn,He=this._getItemHeight(),At=this._getItemCount(),Ft=Math.min(At*He,256),Xt=At*He-Ft;gn=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),gn+=(0,y.CB)(gn,this.options,this.optionGroups);var vn=Ft/2;this._scrollTop=this._calculateOverlayScroll(gn,vn,Xt),this._offsetY=this._calculateOverlayOffsetY(gn,vn,Xt),this._checkOverlayWithinViewport(Xt)}},{key:"_getOriginBasedOnOption",value:function(){var He=this._getItemHeight(),At=(He-this._triggerRect.height)/2,Ft=Math.abs(this._offsetY)-At+He/2;return"50% ".concat(Ft,"px 0px")}},{key:"_getItemHeight",value:function(){return 3*this._triggerFontSize}},{key:"_getItemCount",value:function(){return this.options.length+this.optionGroups.length}}]),me}(kt);return Ae.\u0275fac=function(){var X;return function(me){return(X||(X=T.n5z(Ae)))(me||Ae)}}(),Ae.\u0275cmp=T.Xpm({type:Ae,selectors:[["mat-select"]],contentQueries:function(ne,me,Oe){var He;1&ne&&(T.Suo(Oe,nn,5),T.Suo(Oe,y.ey,5),T.Suo(Oe,y.K7,5)),2&ne&&(T.iGM(He=T.CRH())&&(me.customTrigger=He.first),T.iGM(He=T.CRH())&&(me.options=He),T.iGM(He=T.CRH())&&(me.optionGroups=He))},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(ne,me){1&ne&&T.NdJ("keydown",function(He){return me._handleKeydown(He)})("focus",function(){return me._onFocus()})("blur",function(){return me._onBlur()}),2&ne&&(T.uIk("id",me.id)("tabindex",me.tabIndex)("aria-controls",me.panelOpen?me.id+"-panel":null)("aria-expanded",me.panelOpen)("aria-label",me.ariaLabel||null)("aria-required",me.required.toString())("aria-disabled",me.disabled.toString())("aria-invalid",me.errorState)("aria-describedby",me._ariaDescribedby||null)("aria-activedescendant",me._getAriaActiveDescendant()),T.ekj("mat-select-disabled",me.disabled)("mat-select-invalid",me.errorState)("mat-select-required",me.required)("mat-select-empty",me.empty)("mat-select-multiple",me.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[T._Bn([{provide:Y.Eo,useExisting:Ae},{provide:y.HF,useExisting:Ae}]),T.qOj],ngContentSelectors:Xe,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(ne,me){if(1&ne&&(T.F$t(lt),T.TgZ(0,"div",0,1),T.NdJ("click",function(){return me.toggle()}),T.TgZ(3,"div",2),T.YNc(4,ce,2,1,"span",3),T.YNc(5,ve,3,2,"span",4),T.qZA(),T.TgZ(6,"div",5),T._UZ(7,"div",6),T.qZA(),T.qZA(),T.YNc(8,ue,4,14,"ng-template",7),T.NdJ("backdropClick",function(){return me.close()})("attach",function(){return me._onAttached()})("detach",function(){return me.close()})),2&ne){var Oe=T.MAs(1);T.uIk("aria-owns",me.panelOpen?me.id+"-panel":null),T.xp6(3),T.Q6J("ngSwitch",me.empty),T.uIk("id",me._valueId),T.xp6(1),T.Q6J("ngSwitchCase",!0),T.xp6(1),T.Q6J("ngSwitchCase",!1),T.xp6(3),T.Q6J("cdkConnectedOverlayPanelClass",me._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",me._scrollStrategy)("cdkConnectedOverlayOrigin",Oe)("cdkConnectedOverlayOpen",me.panelOpen)("cdkConnectedOverlayPositions",me._positions)("cdkConnectedOverlayMinWidth",null==me._triggerRect?null:me._triggerRect.width)("cdkConnectedOverlayOffsetY",me._offsetY)}},directives:[h.xu,b.RF,b.n9,b.ED,h.pI,b.mk],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[mt.transformPanelWrap,mt.transformPanel]},changeDetection:0}),Ae}(),$e=function(){var Ae=(0,_.Z)(function X(){(0,s.Z)(this,X)});return Ae.\u0275fac=function(ne){return new(ne||Ae)},Ae.\u0275mod=T.oAB({type:Ae}),Ae.\u0275inj=T.cJS({providers:[Fe],imports:[[b.ez,h.U8,y.Ng,y.BQ],q.ZD,Y.lN,y.Ng,y.BQ]}),Ae}()},7216:function(Ce,E,n){"use strict";n.d(E,{JX:function(){return ct},TM:function(){return Ee},Rh:function(){return ft},SJ:function(){return st}});var S=n(39117),t=n(1884),e=n(46751),c=n(56101),u=n(14390),o=n(24426),_=n(36362),s=n(86613),h=n(1130),b=n(76484),T=n(75939),y=n(50253),Y=n(23280),q=n(36646),B=n(60116),k=n(50635),D=n(73),N=n(68951),I=n(98977),L=n(59295),j=n(44874),le=n(71989),re=n(31631),W=n(57481),$=n(84128),be=n(51588),z=["*"],d=["content"];function Q(nt,at){if(1&nt){var We=s.EpF();s.TgZ(0,"div",2),s.NdJ("click",function(){return s.CHM(We),s.oxw()._onBackdropClicked()}),s.qZA()}if(2&nt){var xe=s.oxw();s.ekj("mat-drawer-shown",xe._isShowingBackdrop())}}function J(nt,at){1&nt&&(s.TgZ(0,"mat-drawer-content"),s.Hsn(1,2),s.qZA())}var te=[[["mat-drawer"]],[["mat-drawer-content"]],"*"],K=["mat-drawer","mat-drawer-content","*"];function G(nt,at){if(1&nt){var We=s.EpF();s.TgZ(0,"div",2),s.NdJ("click",function(){return s.CHM(We),s.oxw()._onBackdropClicked()}),s.qZA()}if(2&nt){var xe=s.oxw();s.ekj("mat-drawer-shown",xe._isShowingBackdrop())}}function ce(nt,at){1&nt&&(s.TgZ(0,"mat-sidenav-content"),s.Hsn(1,2),s.qZA())}var _e=[[["mat-sidenav"]],[["mat-sidenav-content"]],"*"],Me=["mat-sidenav","mat-sidenav-content","*"],ue={transformDrawer:(0,re.X$)("transform",[(0,re.SB)("open, open-instant",(0,re.oB)({transform:"none",visibility:"visible"})),(0,re.SB)("void",(0,re.oB)({"box-shadow":"none",visibility:"hidden"})),(0,re.eR)("void => open-instant",(0,re.jt)("0ms")),(0,re.eR)("void <=> open, open-instant => void",(0,re.jt)("400ms cubic-bezier(0.25, 0.8, 0.25, 1)"))])},Xe=new s.OlP("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:function wt(){return!1}}),mt=new s.OlP("MAT_DRAWER_CONTAINER"),Pt=function(){var nt=function(at){(0,e.Z)(xe,at);var We=(0,c.Z)(xe);function xe(ut,Fe,et,Ht,nn){var an;return(0,S.Z)(this,xe),(an=We.call(this,et,Ht,nn))._changeDetectorRef=ut,an._container=Fe,an}return(0,t.Z)(xe,[{key:"ngAfterContentInit",value:function(){var Fe=this;this._container._contentMarginChanges.subscribe(function(){Fe._changeDetectorRef.markForCheck()})}}]),xe}(o.PQ);return nt.\u0275fac=function(We){return new(We||nt)(s.Y36(s.sBO),s.Y36((0,s.Gpc)(function(){return ze})),s.Y36(s.SBq),s.Y36(o.mF),s.Y36(s.R0b))},nt.\u0275cmp=s.Xpm({type:nt,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:4,hostBindings:function(We,xe){2&We&&s.Udp("margin-left",xe._container._contentMargins.left,"px")("margin-right",xe._container._contentMargins.right,"px")},features:[s._Bn([{provide:o.PQ,useExisting:nt}]),s.qOj],ngContentSelectors:z,decls:1,vars:0,template:function(We,xe){1&We&&(s.F$t(),s.Hsn(0))},encapsulation:2,changeDetection:0}),nt}(),Pe=function(){var nt=function(){function at(We,xe,ut,Fe,et,Ht,nn,an){var kt=this;(0,S.Z)(this,at),this._elementRef=We,this._focusTrapFactory=xe,this._focusMonitor=ut,this._platform=Fe,this._ngZone=et,this._interactivityChecker=Ht,this._doc=nn,this._container=an,this._elementFocusedBeforeDrawerWasOpened=null,this._enableAnimations=!1,this._position="start",this._mode="over",this._disableClose=!1,this._opened=!1,this._animationStarted=new y.x,this._animationEnd=new y.x,this._animationState="void",this.openedChange=new s.vpe(!0),this._openedStream=this.openedChange.pipe((0,B.h)(function(It){return It}),(0,k.U)(function(){})),this.openedStart=this._animationStarted.pipe((0,B.h)(function(It){return It.fromState!==It.toState&&0===It.toState.indexOf("open")}),(0,D.h)(void 0)),this._closedStream=this.openedChange.pipe((0,B.h)(function(It){return!It}),(0,k.U)(function(){})),this.closedStart=this._animationStarted.pipe((0,B.h)(function(It){return It.fromState!==It.toState&&"void"===It.toState}),(0,D.h)(void 0)),this._destroyed=new y.x,this.onPositionChanged=new s.vpe,this._modeChanged=new y.x,this.openedChange.subscribe(function(It){It?(kt._doc&&(kt._elementFocusedBeforeDrawerWasOpened=kt._doc.activeElement),kt._takeFocus()):kt._isFocusWithinDrawer()&&kt._restoreFocus(kt._openedVia||"program")}),this._ngZone.runOutsideAngular(function(){(0,Y.R)(kt._elementRef.nativeElement,"keydown").pipe((0,B.h)(function(It){return It.keyCode===T.hY&&!kt.disableClose&&!(0,T.Vb)(It)}),(0,N.R)(kt._destroyed)).subscribe(function(It){return kt._ngZone.run(function(){kt.close(),It.stopPropagation(),It.preventDefault()})})}),this._animationEnd.pipe((0,I.x)(function(It,$e){return It.fromState===$e.fromState&&It.toState===$e.toState})).subscribe(function(It){var $e=It.fromState,Ae=It.toState;(0===Ae.indexOf("open")&&"void"===$e||"void"===Ae&&0===$e.indexOf("open"))&&kt.openedChange.emit(kt._opened)})}return(0,t.Z)(at,[{key:"position",get:function(){return this._position},set:function(xe){(xe="end"===xe?"end":"start")!==this._position&&(this._isAttached&&this._updatePositionInParent(xe),this._position=xe,this.onPositionChanged.emit())}},{key:"mode",get:function(){return this._mode},set:function(xe){this._mode=xe,this._updateFocusTrapState(),this._modeChanged.next()}},{key:"disableClose",get:function(){return this._disableClose},set:function(xe){this._disableClose=(0,b.Ig)(xe)}},{key:"autoFocus",get:function(){var xe=this._autoFocus;return null==xe?"side"===this.mode?"dialog":"first-tabbable":xe},set:function(xe){("true"===xe||"false"===xe||null==xe)&&(xe=(0,b.Ig)(xe)),this._autoFocus=xe}},{key:"opened",get:function(){return this._opened},set:function(xe){this.toggle((0,b.Ig)(xe))}},{key:"_forceFocus",value:function(xe,ut){this._interactivityChecker.isFocusable(xe)||(xe.tabIndex=-1,this._ngZone.runOutsideAngular(function(){xe.addEventListener("blur",function(){return xe.removeAttribute("tabindex")}),xe.addEventListener("mousedown",function(){return xe.removeAttribute("tabindex")})})),xe.focus(ut)}},{key:"_focusByCssSelector",value:function(xe,ut){var Fe=this._elementRef.nativeElement.querySelector(xe);Fe&&this._forceFocus(Fe,ut)}},{key:"_takeFocus",value:function(){var xe=this;if(this._focusTrap){var ut=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(function(Fe){!Fe&&"function"==typeof xe._elementRef.nativeElement.focus&&ut.focus()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus)}}}},{key:"_restoreFocus",value:function(xe){"dialog"!==this.autoFocus&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,xe):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}},{key:"_isFocusWithinDrawer",value:function(){var xe=this._doc.activeElement;return!!xe&&this._elementRef.nativeElement.contains(xe)}},{key:"ngAfterViewInit",value:function(){this._isAttached=!0,this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState(),"end"===this._position&&this._updatePositionInParent("end")}},{key:"ngAfterContentChecked",value:function(){this._platform.isBrowser&&(this._enableAnimations=!0)}},{key:"ngOnDestroy",value:function(){var xe;this._focusTrap&&this._focusTrap.destroy(),null===(xe=this._anchor)||void 0===xe||xe.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"open",value:function(xe){return this.toggle(!0,xe)}},{key:"close",value:function(){return this.toggle(!1)}},{key:"_closeViaBackdropClick",value:function(){return this._setOpen(!1,!0,"mouse")}},{key:"toggle",value:function(){var xe=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.opened,ut=arguments.length>1?arguments[1]:void 0;xe&&ut&&(this._openedVia=ut);var Fe=this._setOpen(xe,!xe&&this._isFocusWithinDrawer(),this._openedVia||"program");return xe||(this._openedVia=null),Fe}},{key:"_setOpen",value:function(xe,ut,Fe){var et=this;return this._opened=xe,xe?this._animationState=this._enableAnimations?"open":"open-instant":(this._animationState="void",ut&&this._restoreFocus(Fe)),this._updateFocusTrapState(),new Promise(function(Ht){et.openedChange.pipe((0,L.q)(1)).subscribe(function(nn){return Ht(nn?"open":"close")})})}},{key:"_getWidth",value:function(){return this._elementRef.nativeElement&&this._elementRef.nativeElement.offsetWidth||0}},{key:"_updateFocusTrapState",value:function(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&"side"!==this.mode)}},{key:"_updatePositionInParent",value:function(xe){var ut=this._elementRef.nativeElement,Fe=ut.parentNode;"end"===xe?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),Fe.insertBefore(this._anchor,ut)),Fe.appendChild(ut)):this._anchor&&this._anchor.parentNode.insertBefore(ut,this._anchor)}}]),at}();return nt.\u0275fac=function(We){return new(We||nt)(s.Y36(s.SBq),s.Y36($.qV),s.Y36($.tE),s.Y36(u.t4),s.Y36(s.R0b),s.Y36($.ic),s.Y36(_.K0,8),s.Y36(mt,8))},nt.\u0275cmp=s.Xpm({type:nt,selectors:[["mat-drawer"]],viewQuery:function(We,xe){var ut;1&We&&s.Gf(d,5),2&We&&s.iGM(ut=s.CRH())&&(xe._content=ut.first)},hostAttrs:["tabIndex","-1",1,"mat-drawer"],hostVars:12,hostBindings:function(We,xe){1&We&&s.WFA("@transform.start",function(Fe){return xe._animationStarted.next(Fe)})("@transform.done",function(Fe){return xe._animationEnd.next(Fe)}),2&We&&(s.uIk("align",null),s.d8E("@transform",xe._animationState),s.ekj("mat-drawer-end","end"===xe.position)("mat-drawer-over","over"===xe.mode)("mat-drawer-push","push"===xe.mode)("mat-drawer-side","side"===xe.mode)("mat-drawer-opened",xe.opened))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:z,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(We,xe){1&We&&(s.F$t(),s.TgZ(0,"div",0,1),s.Hsn(2),s.qZA())},directives:[o.PQ],encapsulation:2,data:{animation:[ue.transformDrawer]},changeDetection:0}),nt}(),ze=function(){var nt=function(){function at(We,xe,ut,Fe,et){var Ht=this,nn=arguments.length>5&&void 0!==arguments[5]&&arguments[5],an=arguments.length>6?arguments[6]:void 0;(0,S.Z)(this,at),this._dir=We,this._element=xe,this._ngZone=ut,this._changeDetectorRef=Fe,this._animationMode=an,this._drawers=new s.n_E,this.backdropClick=new s.vpe,this._destroyed=new y.x,this._doCheckSubject=new y.x,this._contentMargins={left:null,right:null},this._contentMarginChanges=new y.x,We&&We.change.pipe((0,N.R)(this._destroyed)).subscribe(function(){Ht._validateDrawers(),Ht.updateContentMargins()}),et.change().pipe((0,N.R)(this._destroyed)).subscribe(function(){return Ht.updateContentMargins()}),this._autosize=nn}return(0,t.Z)(at,[{key:"start",get:function(){return this._start}},{key:"end",get:function(){return this._end}},{key:"autosize",get:function(){return this._autosize},set:function(xe){this._autosize=(0,b.Ig)(xe)}},{key:"hasBackdrop",get:function(){return null==this._backdropOverride?!this._start||"side"!==this._start.mode||!this._end||"side"!==this._end.mode:this._backdropOverride},set:function(xe){this._backdropOverride=null==xe?null:(0,b.Ig)(xe)}},{key:"scrollable",get:function(){return this._userContent||this._content}},{key:"ngAfterContentInit",value:function(){var xe=this;this._allDrawers.changes.pipe((0,j.O)(this._allDrawers),(0,N.R)(this._destroyed)).subscribe(function(ut){xe._drawers.reset(ut.filter(function(Fe){return!Fe._container||Fe._container===xe})),xe._drawers.notifyOnChanges()}),this._drawers.changes.pipe((0,j.O)(null)).subscribe(function(){xe._validateDrawers(),xe._drawers.forEach(function(ut){xe._watchDrawerToggle(ut),xe._watchDrawerPosition(ut),xe._watchDrawerMode(ut)}),(!xe._drawers.length||xe._isDrawerOpen(xe._start)||xe._isDrawerOpen(xe._end))&&xe.updateContentMargins(),xe._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(function(){xe._doCheckSubject.pipe((0,le.b)(10),(0,N.R)(xe._destroyed)).subscribe(function(){return xe.updateContentMargins()})})}},{key:"ngOnDestroy",value:function(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}},{key:"open",value:function(){this._drawers.forEach(function(xe){return xe.open()})}},{key:"close",value:function(){this._drawers.forEach(function(xe){return xe.close()})}},{key:"updateContentMargins",value:function(){var xe=this,ut=0,Fe=0;if(this._left&&this._left.opened)if("side"==this._left.mode)ut+=this._left._getWidth();else if("push"==this._left.mode){var et=this._left._getWidth();ut+=et,Fe-=et}if(this._right&&this._right.opened)if("side"==this._right.mode)Fe+=this._right._getWidth();else if("push"==this._right.mode){var Ht=this._right._getWidth();Fe+=Ht,ut-=Ht}Fe=Fe||null,((ut=ut||null)!==this._contentMargins.left||Fe!==this._contentMargins.right)&&(this._contentMargins={left:ut,right:Fe},this._ngZone.run(function(){return xe._contentMarginChanges.next(xe._contentMargins)}))}},{key:"ngDoCheck",value:function(){var xe=this;this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(function(){return xe._doCheckSubject.next()})}},{key:"_watchDrawerToggle",value:function(xe){var ut=this;xe._animationStarted.pipe((0,B.h)(function(Fe){return Fe.fromState!==Fe.toState}),(0,N.R)(this._drawers.changes)).subscribe(function(Fe){"open-instant"!==Fe.toState&&"NoopAnimations"!==ut._animationMode&&ut._element.nativeElement.classList.add("mat-drawer-transition"),ut.updateContentMargins(),ut._changeDetectorRef.markForCheck()}),"side"!==xe.mode&&xe.openedChange.pipe((0,N.R)(this._drawers.changes)).subscribe(function(){return ut._setContainerClass(xe.opened)})}},{key:"_watchDrawerPosition",value:function(xe){var ut=this;!xe||xe.onPositionChanged.pipe((0,N.R)(this._drawers.changes)).subscribe(function(){ut._ngZone.onMicrotaskEmpty.pipe((0,L.q)(1)).subscribe(function(){ut._validateDrawers()})})}},{key:"_watchDrawerMode",value:function(xe){var ut=this;xe&&xe._modeChanged.pipe((0,N.R)((0,q.T)(this._drawers.changes,this._destroyed))).subscribe(function(){ut.updateContentMargins(),ut._changeDetectorRef.markForCheck()})}},{key:"_setContainerClass",value:function(xe){var ut=this._element.nativeElement.classList,Fe="mat-drawer-container-has-open";xe?ut.add(Fe):ut.remove(Fe)}},{key:"_validateDrawers",value:function(){var xe=this;this._start=this._end=null,this._drawers.forEach(function(ut){"end"==ut.position?xe._end=ut:xe._start=ut}),this._right=this._left=null,this._dir&&"rtl"===this._dir.value?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}},{key:"_isPushed",value:function(){return this._isDrawerOpen(this._start)&&"over"!=this._start.mode||this._isDrawerOpen(this._end)&&"over"!=this._end.mode}},{key:"_onBackdropClicked",value:function(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}},{key:"_closeModalDrawersViaBackdrop",value:function(){var xe=this;[this._start,this._end].filter(function(ut){return ut&&!ut.disableClose&&xe._canHaveBackdrop(ut)}).forEach(function(ut){return ut._closeViaBackdropClick()})}},{key:"_isShowingBackdrop",value:function(){return this._isDrawerOpen(this._start)&&this._canHaveBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._canHaveBackdrop(this._end)}},{key:"_canHaveBackdrop",value:function(xe){return"side"!==xe.mode||!!this._backdropOverride}},{key:"_isDrawerOpen",value:function(xe){return null!=xe&&xe.opened}}]),at}();return nt.\u0275fac=function(We){return new(We||nt)(s.Y36(be.Is,8),s.Y36(s.SBq),s.Y36(s.R0b),s.Y36(s.sBO),s.Y36(o.rL),s.Y36(Xe),s.Y36(W.Qb,8))},nt.\u0275cmp=s.Xpm({type:nt,selectors:[["mat-drawer-container"]],contentQueries:function(We,xe,ut){var Fe;1&We&&(s.Suo(ut,Pt,5),s.Suo(ut,Pe,5)),2&We&&(s.iGM(Fe=s.CRH())&&(xe._content=Fe.first),s.iGM(Fe=s.CRH())&&(xe._allDrawers=Fe))},viewQuery:function(We,xe){var ut;1&We&&s.Gf(Pt,5),2&We&&s.iGM(ut=s.CRH())&&(xe._userContent=ut.first)},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(We,xe){2&We&&s.ekj("mat-drawer-container-explicit-backdrop",xe._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[s._Bn([{provide:mt,useExisting:nt}])],ngContentSelectors:K,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(We,xe){1&We&&(s.F$t(te),s.YNc(0,Q,1,2,"div",0),s.Hsn(1),s.Hsn(2,1),s.YNc(3,J,2,0,"mat-drawer-content",1)),2&We&&(s.Q6J("ngIf",xe.hasBackdrop),s.xp6(3),s.Q6J("ngIf",!xe._content))},directives:[Pt,_.O5],styles:[".mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n"],encapsulation:2,changeDetection:0}),nt}(),ft=function(){var nt=function(at){(0,e.Z)(xe,at);var We=(0,c.Z)(xe);function xe(ut,Fe,et,Ht,nn){return(0,S.Z)(this,xe),We.call(this,ut,Fe,et,Ht,nn)}return(0,t.Z)(xe)}(Pt);return nt.\u0275fac=function(We){return new(We||nt)(s.Y36(s.sBO),s.Y36((0,s.Gpc)(function(){return Ee})),s.Y36(s.SBq),s.Y36(o.mF),s.Y36(s.R0b))},nt.\u0275cmp=s.Xpm({type:nt,selectors:[["mat-sidenav-content"]],hostAttrs:[1,"mat-drawer-content","mat-sidenav-content"],hostVars:4,hostBindings:function(We,xe){2&We&&s.Udp("margin-left",xe._container._contentMargins.left,"px")("margin-right",xe._container._contentMargins.right,"px")},features:[s._Bn([{provide:o.PQ,useExisting:nt}]),s.qOj],ngContentSelectors:z,decls:1,vars:0,template:function(We,xe){1&We&&(s.F$t(),s.Hsn(0))},encapsulation:2,changeDetection:0}),nt}(),ct=function(){var nt=function(at){(0,e.Z)(xe,at);var We=(0,c.Z)(xe);function xe(){var ut;return(0,S.Z)(this,xe),(ut=We.apply(this,arguments))._fixedInViewport=!1,ut._fixedTopGap=0,ut._fixedBottomGap=0,ut}return(0,t.Z)(xe,[{key:"fixedInViewport",get:function(){return this._fixedInViewport},set:function(Fe){this._fixedInViewport=(0,b.Ig)(Fe)}},{key:"fixedTopGap",get:function(){return this._fixedTopGap},set:function(Fe){this._fixedTopGap=(0,b.su)(Fe)}},{key:"fixedBottomGap",get:function(){return this._fixedBottomGap},set:function(Fe){this._fixedBottomGap=(0,b.su)(Fe)}}]),xe}(Pe);return nt.\u0275fac=function(){var at;return function(xe){return(at||(at=s.n5z(nt)))(xe||nt)}}(),nt.\u0275cmp=s.Xpm({type:nt,selectors:[["mat-sidenav"]],hostAttrs:["tabIndex","-1",1,"mat-drawer","mat-sidenav"],hostVars:17,hostBindings:function(We,xe){2&We&&(s.uIk("align",null),s.Udp("top",xe.fixedInViewport?xe.fixedTopGap:null,"px")("bottom",xe.fixedInViewport?xe.fixedBottomGap:null,"px"),s.ekj("mat-drawer-end","end"===xe.position)("mat-drawer-over","over"===xe.mode)("mat-drawer-push","push"===xe.mode)("mat-drawer-side","side"===xe.mode)("mat-drawer-opened",xe.opened)("mat-sidenav-fixed",xe.fixedInViewport))},inputs:{fixedInViewport:"fixedInViewport",fixedTopGap:"fixedTopGap",fixedBottomGap:"fixedBottomGap"},exportAs:["matSidenav"],features:[s.qOj],ngContentSelectors:z,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(We,xe){1&We&&(s.F$t(),s.TgZ(0,"div",0,1),s.Hsn(2),s.qZA())},directives:[o.PQ],encapsulation:2,data:{animation:[ue.transformDrawer]},changeDetection:0}),nt}(),Ee=function(){var nt=function(at){(0,e.Z)(xe,at);var We=(0,c.Z)(xe);function xe(){return(0,S.Z)(this,xe),We.apply(this,arguments)}return(0,t.Z)(xe)}(ze);return nt.\u0275fac=function(){var at;return function(xe){return(at||(at=s.n5z(nt)))(xe||nt)}}(),nt.\u0275cmp=s.Xpm({type:nt,selectors:[["mat-sidenav-container"]],contentQueries:function(We,xe,ut){var Fe;1&We&&(s.Suo(ut,ft,5),s.Suo(ut,ct,5)),2&We&&(s.iGM(Fe=s.CRH())&&(xe._content=Fe.first),s.iGM(Fe=s.CRH())&&(xe._allDrawers=Fe))},hostAttrs:[1,"mat-drawer-container","mat-sidenav-container"],hostVars:2,hostBindings:function(We,xe){2&We&&s.ekj("mat-drawer-container-explicit-backdrop",xe._backdropOverride)},exportAs:["matSidenavContainer"],features:[s._Bn([{provide:mt,useExisting:nt}]),s.qOj],ngContentSelectors:Me,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(We,xe){1&We&&(s.F$t(_e),s.YNc(0,G,1,2,"div",0),s.Hsn(1),s.Hsn(2,1),s.YNc(3,ce,2,0,"mat-sidenav-content",1)),2&We&&(s.Q6J("ngIf",xe.hasBackdrop),s.xp6(3),s.Q6J("ngIf",!xe._content))},directives:[ft,_.O5],styles:[".mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n"],encapsulation:2,changeDetection:0}),nt}(),st=function(){var nt=(0,t.Z)(function at(){(0,S.Z)(this,at)});return nt.\u0275fac=function(We){return new(We||nt)},nt.\u0275mod=s.oAB({type:nt}),nt.\u0275inj=s.cJS({imports:[[_.ez,h.BQ,u.ud,o.ZD],o.ZD,h.BQ]}),nt}()},61859:function(Ce,E,n){"use strict";n.d(E,{pH:function(){return $},KP:function(){return te}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(36362),o=n(86613),_=n(1130),s=n(76484),h=n(75939),b=n(90587),T=n(57481),y=n(14390),Y=n(17714),q=n(84128),B=n(51588),k=["sliderWrapper"],D=(0,y.i$)({passive:!1}),le={provide:b.JU,useExisting:(0,o.Gpc)(function(){return $}),multi:!0},re=(0,e.Z)(function K(){(0,c.Z)(this,K)}),W=(0,_.sb)((0,_.pj)((0,_.Id)(function(){return(0,e.Z)(function K(G){(0,c.Z)(this,K),this._elementRef=G})}()),"accent")),$=function(){var K=function(G){(0,S.Z)(_e,G);var ce=(0,t.Z)(_e);function _e(Me,ve,ue,lt,Xe,mt,wt,Pt){var Pe;return(0,c.Z)(this,_e),(Pe=ce.call(this,Me))._focusMonitor=ve,Pe._changeDetectorRef=ue,Pe._dir=lt,Pe._ngZone=mt,Pe._animationMode=Pt,Pe._invert=!1,Pe._max=100,Pe._min=0,Pe._step=1,Pe._thumbLabel=!1,Pe._tickInterval=0,Pe._value=null,Pe._vertical=!1,Pe.change=new o.vpe,Pe.input=new o.vpe,Pe.valueChange=new o.vpe,Pe.onTouched=function(){},Pe._percent=0,Pe._isSliding=null,Pe._isActive=!1,Pe._tickIntervalPercent=0,Pe._sliderDimensions=null,Pe._controlValueAccessorChangeFn=function(){},Pe._dirChangeSubscription=Y.w0.EMPTY,Pe._pointerDown=function(ze){Pe.disabled||Pe._isSliding||!z(ze)&&0!==ze.button||Pe._ngZone.run(function(){Pe._touchId=z(ze)?function J(K,G){for(var ce=0;ce0&&void 0!==arguments[0]?arguments[0]:this.value,ue=new re;return ue.source=this,ue.value=ve,ue}},{key:"_calculatePercentage",value:function(ve){var ue=((ve||0)-this.min)/(this.max-this.min);return be(ue)?ue:0}},{key:"_calculateValue",value:function(ve){return this.min+ve*(this.max-this.min)}},{key:"_clamp",value:function(ve){var ue=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,lt=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.max(ue,Math.min(ve,lt))}},{key:"_getSliderDimensions",value:function(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}},{key:"_focusHostElement",value:function(ve){this._elementRef.nativeElement.focus(ve)}},{key:"_blurHostElement",value:function(){this._elementRef.nativeElement.blur()}},{key:"writeValue",value:function(ve){this.value=ve}},{key:"registerOnChange",value:function(ve){this._controlValueAccessorChangeFn=ve}},{key:"registerOnTouched",value:function(ve){this.onTouched=ve}},{key:"setDisabledState",value:function(ve){this.disabled=ve}}]),_e}(W);return K.\u0275fac=function(ce){return new(ce||K)(o.Y36(o.SBq),o.Y36(q.tE),o.Y36(o.sBO),o.Y36(B.Is,8),o.$8M("tabindex"),o.Y36(o.R0b),o.Y36(u.K0),o.Y36(T.Qb,8))},K.\u0275cmp=o.Xpm({type:K,selectors:[["mat-slider"]],viewQuery:function(ce,_e){var Me;1&ce&&o.Gf(k,5),2&ce&&o.iGM(Me=o.CRH())&&(_e._sliderWrapper=Me.first)},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(ce,_e){1&ce&&o.NdJ("focus",function(){return _e._onFocus()})("blur",function(){return _e._onBlur()})("keydown",function(ve){return _e._onKeydown(ve)})("keyup",function(){return _e._onKeyup()})("mouseenter",function(){return _e._onMouseenter()})("selectstart",function(ve){return ve.preventDefault()}),2&ce&&(o.Ikx("tabIndex",_e.tabIndex),o.uIk("aria-disabled",_e.disabled)("aria-valuemax",_e.max)("aria-valuemin",_e.min)("aria-valuenow",_e.value)("aria-valuetext",null==_e.valueText?_e.displayValue:_e.valueText)("aria-orientation",_e.vertical?"vertical":"horizontal"),o.ekj("mat-slider-disabled",_e.disabled)("mat-slider-has-ticks",_e.tickInterval)("mat-slider-horizontal",!_e.vertical)("mat-slider-axis-inverted",_e._shouldInvertAxis())("mat-slider-invert-mouse-coords",_e._shouldInvertMouseCoords())("mat-slider-sliding",_e._isSliding)("mat-slider-thumb-label-showing",_e.thumbLabel)("mat-slider-vertical",_e.vertical)("mat-slider-min-value",_e._isMinValue())("mat-slider-hide-last-tick",_e.disabled||_e._isMinValue()&&_e._getThumbGap()&&_e._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===_e._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",displayWith:"displayWith",valueText:"valueText",vertical:"vertical"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[o._Bn([le]),o.qOj],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(ce,_e){1&ce&&(o.TgZ(0,"div",0,1),o.TgZ(2,"div",2),o._UZ(3,"div",3),o._UZ(4,"div",4),o.qZA(),o.TgZ(5,"div",5),o._UZ(6,"div",6),o.qZA(),o.TgZ(7,"div",7),o._UZ(8,"div",8),o._UZ(9,"div",9),o.TgZ(10,"div",10),o.TgZ(11,"span",11),o._uU(12),o.qZA(),o.qZA(),o.qZA(),o.qZA()),2&ce&&(o.xp6(3),o.Q6J("ngStyle",_e._getTrackBackgroundStyles()),o.xp6(1),o.Q6J("ngStyle",_e._getTrackFillStyles()),o.xp6(1),o.Q6J("ngStyle",_e._getTicksContainerStyles()),o.xp6(1),o.Q6J("ngStyle",_e._getTicksStyles()),o.xp6(1),o.Q6J("ngStyle",_e._getThumbContainerStyles()),o.xp6(5),o.Oqu(_e.displayValue))},directives:[u.PC],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),K}();function be(K){return!isNaN(K)&&isFinite(K)}function z(K){return"t"===K.type[0]}function d(K,G){var ce;return(ce=z(K)?"number"==typeof G?Q(K.touches,G)||Q(K.changedTouches,G):K.touches[0]||K.changedTouches[0]:K)?{x:ce.clientX,y:ce.clientY}:void 0}function Q(K,G){for(var ce=0;ce active-desc",(0,T.jt)(D))]),leftPointer:(0,T.X$)("leftPointer",[(0,T.SB)("active-asc, asc",(0,T.oB)({transform:"rotate(-45deg)"})),(0,T.SB)("active-desc, desc",(0,T.oB)({transform:"rotate(45deg)"})),(0,T.eR)("active-asc <=> active-desc",(0,T.jt)(D))]),rightPointer:(0,T.X$)("rightPointer",[(0,T.SB)("active-asc, asc",(0,T.oB)({transform:"rotate(45deg)"})),(0,T.SB)("active-desc, desc",(0,T.oB)({transform:"rotate(-45deg)"})),(0,T.eR)("active-asc <=> active-desc",(0,T.jt)(D))]),arrowOpacity:(0,T.X$)("arrowOpacity",[(0,T.SB)("desc-to-active, asc-to-active, active",(0,T.oB)({opacity:1})),(0,T.SB)("desc-to-hint, asc-to-hint, hint",(0,T.oB)({opacity:.54})),(0,T.SB)("hint-to-desc, active-to-desc, desc, hint-to-asc, active-to-asc, asc, void",(0,T.oB)({opacity:0})),(0,T.eR)("* => asc, * => desc, * => active, * => hint, * => void",(0,T.jt)("0ms")),(0,T.eR)("* <=> *",(0,T.jt)(D))]),arrowPosition:(0,T.X$)("arrowPosition",[(0,T.eR)("* => desc-to-hint, * => desc-to-active",(0,T.jt)(D,(0,T.F4)([(0,T.oB)({transform:"translateY(-25%)"}),(0,T.oB)({transform:"translateY(0)"})]))),(0,T.eR)("* => hint-to-desc, * => active-to-desc",(0,T.jt)(D,(0,T.F4)([(0,T.oB)({transform:"translateY(0)"}),(0,T.oB)({transform:"translateY(25%)"})]))),(0,T.eR)("* => asc-to-hint, * => asc-to-active",(0,T.jt)(D,(0,T.F4)([(0,T.oB)({transform:"translateY(25%)"}),(0,T.oB)({transform:"translateY(0)"})]))),(0,T.eR)("* => hint-to-asc, * => active-to-asc",(0,T.jt)(D,(0,T.F4)([(0,T.oB)({transform:"translateY(0)"}),(0,T.oB)({transform:"translateY(-25%)"})]))),(0,T.SB)("desc-to-hint, asc-to-hint, hint, desc-to-active, asc-to-active, active",(0,T.oB)({transform:"translateY(0)"})),(0,T.SB)("hint-to-desc, active-to-desc, desc",(0,T.oB)({transform:"translateY(-25%)"})),(0,T.SB)("hint-to-asc, active-to-asc, asc",(0,T.oB)({transform:"translateY(25%)"}))]),allowChildren:(0,T.X$)("allowChildren",[(0,T.eR)("* <=> *",[(0,T.IO)("@*",(0,T.pV)(),{optional:!0})])])},re=function(){var G=(0,e.Z)(function ce(){(0,c.Z)(this,ce),this.changes=new h.x});return G.\u0275fac=function(_e){return new(_e||G)},G.\u0275prov=u.Yz7({token:G,factory:G.\u0275fac,providedIn:"root"}),G}(),$={provide:re,deps:[[new u.FiY,new u.tp0,re]],useFactory:function W(G){return G||new re}},be=new u.OlP("MAT_SORT_DEFAULT_OPTIONS"),z=(0,s.dB)((0,s.Id)(function(){return(0,e.Z)(function G(){(0,c.Z)(this,G)})}())),d=function(){var G=function(ce){(0,S.Z)(Me,ce);var _e=(0,t.Z)(Me);function Me(ve){var ue;return(0,c.Z)(this,Me),(ue=_e.call(this))._defaultOptions=ve,ue.sortables=new Map,ue._stateChanges=new h.x,ue.start="asc",ue._direction="",ue.sortChange=new u.vpe,ue}return(0,e.Z)(Me,[{key:"direction",get:function(){return this._direction},set:function(ue){this._direction=ue}},{key:"disableClear",get:function(){return this._disableClear},set:function(ue){this._disableClear=(0,o.Ig)(ue)}},{key:"register",value:function(ue){this.sortables.set(ue.id,ue)}},{key:"deregister",value:function(ue){this.sortables.delete(ue.id)}},{key:"sort",value:function(ue){this.active!=ue.id?(this.active=ue.id,this.direction=ue.start?ue.start:this.start):this.direction=this.getNextSortDirection(ue),this.sortChange.emit({active:this.active,direction:this.direction})}},{key:"getNextSortDirection",value:function(ue){var lt,Xe,mt;if(!ue)return"";var wt=null!==(Xe=null!==(lt=null==ue?void 0:ue.disableClear)&&void 0!==lt?lt:this.disableClear)&&void 0!==Xe?Xe:!!(null===(mt=this._defaultOptions)||void 0===mt?void 0:mt.disableClear),Pt=function Q(G,ce){var _e=["asc","desc"];return"desc"==G&&_e.reverse(),ce||_e.push(""),_e}(ue.start||this.start,wt),Pe=Pt.indexOf(this.direction)+1;return Pe>=Pt.length&&(Pe=0),Pt[Pe]}},{key:"ngOnInit",value:function(){this._markInitialized()}},{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),Me}(z);return G.\u0275fac=function(_e){return new(_e||G)(u.Y36(be,8))},G.\u0275dir=u.lG2({type:G,selectors:[["","matSort",""]],hostAttrs:[1,"mat-sort"],inputs:{disabled:["matSortDisabled","disabled"],active:["matSortActive","active"],start:["matSortStart","start"],direction:["matSortDirection","direction"],disableClear:["matSortDisableClear","disableClear"]},outputs:{sortChange:"matSortChange"},exportAs:["matSort"],features:[u.qOj,u.TTD]}),G}(),J=(0,s.Id)(function(){return(0,e.Z)(function G(){(0,c.Z)(this,G)})}()),te=function(){var G=function(ce){(0,S.Z)(Me,ce);var _e=(0,t.Z)(Me);function Me(ve,ue,lt,Xe,mt,wt,Pt){var Pe;return(0,c.Z)(this,Me),(Pe=_e.call(this))._intl=ve,Pe._changeDetectorRef=ue,Pe._sort=lt,Pe._columnDef=Xe,Pe._focusMonitor=mt,Pe._elementRef=wt,Pe._ariaDescriber=Pt,Pe._showIndicatorHint=!1,Pe._viewState={},Pe._arrowDirection="",Pe._disableViewStateAnimation=!1,Pe.arrowPosition="after",Pe._sortActionDescription="Sort",Pe._handleStateChanges(),Pe}return(0,e.Z)(Me,[{key:"sortActionDescription",get:function(){return this._sortActionDescription},set:function(ue){this._updateSortActionDescription(ue)}},{key:"disableClear",get:function(){return this._disableClear},set:function(ue){this._disableClear=(0,o.Ig)(ue)}},{key:"ngOnInit",value:function(){!this.id&&this._columnDef&&(this.id=this._columnDef.name),this._updateArrowDirection(),this._setAnimationTransitionState({toState:this._isSorted()?"active":this._arrowDirection}),this._sort.register(this),this._sortButton=this._elementRef.nativeElement.querySelector('[role="button"]'),this._updateSortActionDescription(this._sortActionDescription)}},{key:"ngAfterViewInit",value:function(){var ue=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(lt){var Xe=!!lt;Xe!==ue._showIndicatorHint&&(ue._setIndicatorHintVisible(Xe),ue._changeDetectorRef.markForCheck())})}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef),this._sort.deregister(this),this._rerenderSubscription.unsubscribe()}},{key:"_setIndicatorHintVisible",value:function(ue){this._isDisabled()&&ue||(this._showIndicatorHint=ue,this._isSorted()||(this._updateArrowDirection(),this._setAnimationTransitionState(this._showIndicatorHint?{fromState:this._arrowDirection,toState:"hint"}:{fromState:"hint",toState:this._arrowDirection})))}},{key:"_setAnimationTransitionState",value:function(ue){this._viewState=ue||{},this._disableViewStateAnimation&&(this._viewState={toState:ue.toState})}},{key:"_toggleOnInteraction",value:function(){this._sort.sort(this),("hint"===this._viewState.toState||"active"===this._viewState.toState)&&(this._disableViewStateAnimation=!0)}},{key:"_handleClick",value:function(){this._isDisabled()||this._sort.sort(this)}},{key:"_handleKeydown",value:function(ue){!this._isDisabled()&&(ue.keyCode===_.L_||ue.keyCode===_.K5)&&(ue.preventDefault(),this._toggleOnInteraction())}},{key:"_isSorted",value:function(){return this._sort.active==this.id&&("asc"===this._sort.direction||"desc"===this._sort.direction)}},{key:"_getArrowDirectionState",value:function(){return"".concat(this._isSorted()?"active-":"").concat(this._arrowDirection)}},{key:"_getArrowViewState",value:function(){var ue=this._viewState.fromState;return(ue?"".concat(ue,"-to-"):"")+this._viewState.toState}},{key:"_updateArrowDirection",value:function(){this._arrowDirection=this._isSorted()?this._sort.direction:this.start||this._sort.start}},{key:"_isDisabled",value:function(){return this._sort.disabled||this.disabled}},{key:"_getAriaSortAttribute",value:function(){return this._isSorted()?"asc"==this._sort.direction?"ascending":"descending":"none"}},{key:"_renderArrow",value:function(){return!this._isDisabled()||this._isSorted()}},{key:"_updateSortActionDescription",value:function(ue){var lt,Xe;this._sortButton&&(null===(lt=this._ariaDescriber)||void 0===lt||lt.removeDescription(this._sortButton,this._sortActionDescription),null===(Xe=this._ariaDescriber)||void 0===Xe||Xe.describe(this._sortButton,ue)),this._sortActionDescription=ue}},{key:"_handleStateChanges",value:function(){var ue=this;this._rerenderSubscription=(0,b.T)(this._sort.sortChange,this._sort._stateChanges,this._intl.changes).subscribe(function(){ue._isSorted()&&(ue._updateArrowDirection(),("hint"===ue._viewState.toState||"active"===ue._viewState.toState)&&(ue._disableViewStateAnimation=!0),ue._setAnimationTransitionState({fromState:ue._arrowDirection,toState:"active"}),ue._showIndicatorHint=!1),!ue._isSorted()&&ue._viewState&&"active"===ue._viewState.toState&&(ue._disableViewStateAnimation=!1,ue._setAnimationTransitionState({fromState:"active",toState:ue._arrowDirection})),ue._changeDetectorRef.markForCheck()})}}]),Me}(J);return G.\u0275fac=function(_e){return new(_e||G)(u.Y36(re),u.Y36(u.sBO),u.Y36(d,8),u.Y36("MAT_SORT_HEADER_COLUMN_DEF",8),u.Y36(y.tE),u.Y36(u.SBq),u.Y36(y.$s,8))},G.\u0275cmp=u.Xpm({type:G,selectors:[["","mat-sort-header",""]],hostAttrs:[1,"mat-sort-header"],hostVars:3,hostBindings:function(_e,Me){1&_e&&u.NdJ("click",function(){return Me._handleClick()})("keydown",function(ue){return Me._handleKeydown(ue)})("mouseenter",function(){return Me._setIndicatorHintVisible(!0)})("mouseleave",function(){return Me._setIndicatorHintVisible(!1)}),2&_e&&(u.uIk("aria-sort",Me._getAriaSortAttribute()),u.ekj("mat-sort-header-disabled",Me._isDisabled()))},inputs:{disabled:"disabled",id:["mat-sort-header","id"],arrowPosition:"arrowPosition",start:"start",sortActionDescription:"sortActionDescription",disableClear:"disableClear"},exportAs:["matSortHeader"],features:[u.qOj],attrs:q,ngContentSelectors:k,decls:4,vars:6,consts:[["role","button",1,"mat-sort-header-container","mat-focus-indicator"],[1,"mat-sort-header-content"],["class","mat-sort-header-arrow",4,"ngIf"],[1,"mat-sort-header-arrow"],[1,"mat-sort-header-stem"],[1,"mat-sort-header-indicator"],[1,"mat-sort-header-pointer-left"],[1,"mat-sort-header-pointer-right"],[1,"mat-sort-header-pointer-middle"]],template:function(_e,Me){1&_e&&(u.F$t(),u.TgZ(0,"div",0),u.TgZ(1,"div",1),u.Hsn(2),u.qZA(),u.YNc(3,B,6,6,"div",2),u.qZA()),2&_e&&(u.ekj("mat-sort-header-sorted",Me._isSorted())("mat-sort-header-position-before","before"==Me.arrowPosition),u.uIk("tabindex",Me._isDisabled()?null:0),u.xp6(3),u.Q6J("ngIf",Me._renderArrow()))},directives:[Y.O5],styles:[".mat-sort-header-container{display:flex;cursor:pointer;align-items:center;letter-spacing:normal;outline:0}[mat-sort-header].cdk-keyboard-focused .mat-sort-header-container,[mat-sort-header].cdk-program-focused .mat-sort-header-container{border-bottom:solid 1px currentColor}.mat-sort-header-disabled .mat-sort-header-container{cursor:default}.mat-sort-header-content{text-align:center;display:flex;align-items:center}.mat-sort-header-position-before{flex-direction:row-reverse}.mat-sort-header-arrow{height:12px;width:12px;min-width:12px;position:relative;display:flex;opacity:0}.mat-sort-header-arrow,[dir=rtl] .mat-sort-header-position-before .mat-sort-header-arrow{margin:0 0 0 6px}.mat-sort-header-position-before .mat-sort-header-arrow,[dir=rtl] .mat-sort-header-arrow{margin:0 6px 0 0}.mat-sort-header-stem{background:currentColor;height:10px;width:2px;margin:auto;display:flex;align-items:center}.cdk-high-contrast-active .mat-sort-header-stem{width:0;border-left:solid 2px}.mat-sort-header-indicator{width:100%;height:2px;display:flex;align-items:center;position:absolute;top:0;left:0}.mat-sort-header-pointer-middle{margin:auto;height:2px;width:2px;background:currentColor;transform:rotate(45deg)}.cdk-high-contrast-active .mat-sort-header-pointer-middle{width:0;height:0;border-top:solid 2px;border-left:solid 2px}.mat-sort-header-pointer-left,.mat-sort-header-pointer-right{background:currentColor;width:6px;height:2px;position:absolute;top:0}.cdk-high-contrast-active .mat-sort-header-pointer-left,.cdk-high-contrast-active .mat-sort-header-pointer-right{width:0;height:0;border-left:solid 6px;border-top:solid 2px}.mat-sort-header-pointer-left{transform-origin:right;left:0}.mat-sort-header-pointer-right{transform-origin:left;right:0}\n"],encapsulation:2,data:{animation:[N.indicator,N.leftPointer,N.rightPointer,N.arrowOpacity,N.arrowPosition,N.allowChildren]},changeDetection:0}),G}(),K=function(){var G=(0,e.Z)(function ce(){(0,c.Z)(this,ce)});return G.\u0275fac=function(_e){return new(_e||G)},G.\u0275mod=u.oAB({type:G}),G.\u0275inj=u.cJS({providers:[$],imports:[[Y.ez,s.BQ]]}),G}()},97217:function(Ce,E,n){"use strict";n.d(E,{ev:function(){return te},Dz:function(){return $},w1:function(){return d},ge:function(){return Q},fO:function(){return be},XQ:function(){return _e},as:function(){return K},Gk:function(){return ve},nj:function(){return ce},BZ:function(){return W},by:function(){return Pe},p0:function(){return mt}});var S=n(78170),t=n(97424),e=n(28042),c=n(46751),u=n(56101),o=n(1884),_=n(39117),s=n(86613),h=n(33865),b=n(89502),T=n(1130),y=n(76484),Y=n(76317),q=n(50253),B=n(36646),k=n(10745),D=n(26562),N=n(50635),I=[[["caption"]],[["colgroup"],["col"]]],L=["caption","colgroup, col"],W=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){var st;return(0,_.Z)(this,Ee),(st=ct.apply(this,arguments)).stickyCssClass="mat-table-sticky",st.needsPositionStickyOnElement=!1,st}return(0,o.Z)(Ee)}(h.zC);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275cmp=s.Xpm({type:ze,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-table"],hostVars:2,hostBindings:function(ct,Ee){2&ct&&s.ekj("mat-table-fixed-layout",Ee.fixedLayout)},exportAs:["matTable"],features:[s._Bn([{provide:b.k,useClass:b.yy},{provide:h.zC,useExisting:ze},{provide:h.pN,useExisting:ze},{provide:h.nl,useClass:h.oF},{provide:h.pF,useValue:null}]),s.qOj],ngContentSelectors:L,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(ct,Ee){1&ct&&(s.F$t(I),s.Hsn(0),s.Hsn(1,1),s.GkF(2,0),s.GkF(3,1),s.GkF(4,2),s.GkF(5,3))},directives:[h.FT,h.T$,h.bH,h.$E],styles:["mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}table.mat-table{border-spacing:0}tr.mat-header-row{height:56px}tr.mat-row,tr.mat-footer-row{height:48px}th.mat-header-cell{text-align:left}[dir=rtl] th.mat-header-cell{text-align:right}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0;border-bottom-width:1px;border-bottom-style:solid}th.mat-header-cell:first-of-type,td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] th.mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}th.mat-header-cell:last-of-type,td.mat-cell:last-of-type,td.mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] th.mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}.mat-table-sticky{position:-webkit-sticky !important;position:sticky !important}.mat-table-fixed-layout{table-layout:fixed}\n"],encapsulation:2}),ze}(),$=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h.O_);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275dir=s.lG2({type:ze,selectors:[["","matCellDef",""]],features:[s._Bn([{provide:h.O_,useExisting:ze}]),s.qOj]}),ze}(),be=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h.D5);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275dir=s.lG2({type:ze,selectors:[["","matHeaderCellDef",""]],features:[s._Bn([{provide:h.D5,useExisting:ze}]),s.qOj]}),ze}(),d=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee,[{key:"name",get:function(){return this._name},set:function(nt){this._setNameInput(nt)}},{key:"_updateColumnCssClassName",value:function(){(0,t.Z)((0,e.Z)(Ee.prototype),"_updateColumnCssClassName",this).call(this),this._columnCssClassName.push("mat-column-".concat(this.cssClassFriendlyName))}}]),Ee}(h.fo);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275dir=s.lG2({type:ze,selectors:[["","matColumnDef",""]],inputs:{sticky:"sticky",name:["matColumnDef","name"]},features:[s._Bn([{provide:h.fo,useExisting:ze},{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:ze}]),s.qOj]}),ze}(),Q=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h.Af);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275dir=s.lG2({type:ze,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-header-cell"],features:[s.qOj]}),ze}(),te=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h.hD);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275dir=s.lG2({type:ze,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:["role","gridcell",1,"mat-cell"],features:[s.qOj]}),ze}(),K=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h.s$);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275dir=s.lG2({type:ze,selectors:[["","matHeaderRowDef",""]],inputs:{columns:["matHeaderRowDef","columns"],sticky:["matHeaderRowDefSticky","sticky"]},features:[s._Bn([{provide:h.s$,useExisting:ze}]),s.qOj]}),ze}(),ce=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h.Sq);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275dir=s.lG2({type:ze,selectors:[["","matRowDef",""]],inputs:{columns:["matRowDefColumns","columns"],when:["matRowDefWhen","when"]},features:[s._Bn([{provide:h.Sq,useExisting:ze}]),s.qOj]}),ze}(),_e=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h.xN);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275cmp=s.Xpm({type:ze,selectors:[["mat-header-row"],["tr","mat-header-row",""]],hostAttrs:["role","row",1,"mat-header-row"],exportAs:["matHeaderRow"],features:[s._Bn([{provide:h.xN,useExisting:ze}]),s.qOj],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ct,Ee){1&ct&&s.GkF(0,0)},directives:[h.Kb],encapsulation:2}),ze}(),ve=function(){var ze=function(ft){(0,c.Z)(Ee,ft);var ct=(0,u.Z)(Ee);function Ee(){return(0,_.Z)(this,Ee),ct.apply(this,arguments)}return(0,o.Z)(Ee)}(h._J);return ze.\u0275fac=function(){var ft;return function(Ee){return(ft||(ft=s.n5z(ze)))(Ee||ze)}}(),ze.\u0275cmp=s.Xpm({type:ze,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-row"],exportAs:["matRow"],features:[s._Bn([{provide:h._J,useExisting:ze}]),s.qOj],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ct,Ee){1&ct&&s.GkF(0,0)},directives:[h.Kb],encapsulation:2}),ze}(),mt=function(){var ze=(0,o.Z)(function ft(){(0,_.Z)(this,ft)});return ze.\u0275fac=function(ct){return new(ct||ze)},ze.\u0275mod=s.oAB({type:ze}),ze.\u0275inj=s.cJS({imports:[[h.HT,T.BQ],T.BQ]}),ze}(),wt=9007199254740991,Pt=function(ze){(0,c.Z)(ct,ze);var ft=(0,u.Z)(ct);function ct(){var Ee,st=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(0,_.Z)(this,ct),(Ee=ft.call(this))._renderData=new Y.X([]),Ee._filter=new Y.X(""),Ee._internalPageChanges=new q.x,Ee._renderChangesSubscription=null,Ee.sortingDataAccessor=function(nt,at){var We=nt[at];if((0,y.t6)(We)){var xe=Number(We);return xeHt?kt=1:et0)){var We=Math.ceil(at.length/at.pageSize)-1||0,xe=Math.min(at.pageIndex,We);xe!==at.pageIndex&&(at.pageIndex=xe,nt._internalPageChanges.next())}})}},{key:"connect",value:function(){return this._renderChangesSubscription||this._updateChangeSubscription(),this._renderData}},{key:"disconnect",value:function(){var st;null===(st=this._renderChangesSubscription)||void 0===st||st.unsubscribe(),this._renderChangesSubscription=null}}]),ct}(b.o2),Pe=function(ze){(0,c.Z)(ct,ze);var ft=(0,u.Z)(ct);function ct(){return(0,_.Z)(this,ct),ft.apply(this,arguments)}return(0,o.Z)(ct)}(Pt)},12379:function(Ce,E,n){"use strict";n.d(E,{uX:function(){return nn},Vc:function(){return We},SP:function(){return Jn},uD:function(){return Fe},Nh:function(){return Ne}});var S=n(71340),t=n(97424),e=n(28042),c=n(46751),u=n(56101),o=n(39117),_=n(1884),s=n(84128),h=n(35837),b=n(24476),T=n(36362),y=n(86613),Y=n(1130),q=n(57481),B=n(50253),k=n(17714),D=n(23280),N=n(10745),I=n(36646),L=n(78947),j=n(31631),le=n(44874),re=n(98977),W=n(68951),$=n(51588),be=n(76484),z=n(75939),d=n(14390),Q=n(24426);function J(Re,tt){1&Re&&y.Hsn(0)}var te=["*"];function K(Re,tt){}var G=function(tt){return{animationDuration:tt}},ce=function(tt,Ke){return{value:tt,params:Ke}},_e=["tabListContainer"],Me=["tabList"],ve=["tabListInner"],ue=["nextPaginator"],lt=["previousPaginator"],Xe=["tabBodyWrapper"],mt=["tabHeader"];function wt(Re,tt){}function Pt(Re,tt){if(1&Re&&y.YNc(0,wt,0,0,"ng-template",10),2&Re){var Ke=y.oxw().$implicit;y.Q6J("cdkPortalOutlet",Ke.templateLabel)}}function Pe(Re,tt){if(1&Re&&y._uU(0),2&Re){var Ke=y.oxw().$implicit;y.Oqu(Ke.textLabel)}}function ze(Re,tt){if(1&Re){var Ke=y.EpF();y.TgZ(0,"div",6),y.NdJ("click",function(){var fn=y.CHM(Ke),ln=fn.$implicit,_n=fn.index,xn=y.oxw(),In=y.MAs(1);return xn._handleClick(ln,In,_n)})("cdkFocusChange",function(fn){var _n=y.CHM(Ke).index;return y.oxw()._tabFocusChanged(fn,_n)}),y.TgZ(1,"div",7),y.YNc(2,Pt,1,1,"ng-template",8),y.YNc(3,Pe,1,1,"ng-template",null,9,y.W1O),y.qZA(),y.qZA()}if(2&Re){var vt=tt.$implicit,Rt=tt.index,rn=y.MAs(4),Nn=y.oxw();y.ekj("mat-tab-label-active",Nn.selectedIndex===Rt),y.Q6J("id",Nn._getTabLabelId(Rt))("ngClass",vt.labelClass)("disabled",vt.disabled)("matRippleDisabled",vt.disabled||Nn.disableRipple),y.uIk("tabIndex",Nn._getTabIndex(vt,Rt))("aria-posinset",Rt+1)("aria-setsize",Nn._tabs.length)("aria-controls",Nn._getTabContentId(Rt))("aria-selected",Nn.selectedIndex===Rt)("aria-label",vt.ariaLabel||null)("aria-labelledby",!vt.ariaLabel&&vt.ariaLabelledby?vt.ariaLabelledby:null),y.xp6(2),y.Q6J("ngIf",vt.templateLabel)("ngIfElse",rn)}}function ft(Re,tt){if(1&Re){var Ke=y.EpF();y.TgZ(0,"mat-tab-body",11),y.NdJ("_onCentered",function(){return y.CHM(Ke),y.oxw()._removeTabBodyWrapperHeight()})("_onCentering",function($t){return y.CHM(Ke),y.oxw()._setTabBodyWrapperHeight($t)}),y.qZA()}if(2&Re){var vt=tt.$implicit,Rt=tt.index,rn=y.oxw();y.ekj("mat-tab-body-active",rn.selectedIndex===Rt),y.Q6J("id",rn._getTabContentId(Rt))("ngClass",vt.bodyClass)("content",vt.content)("position",vt.position)("origin",vt.origin)("animationDuration",rn.animationDuration),y.uIk("tabindex",null!=rn.contentTabIndex&&rn.selectedIndex===Rt?rn.contentTabIndex:null)("aria-labelledby",rn._getTabLabelId(Rt))}}var Ee=new y.OlP("MatInkBarPositioner",{providedIn:"root",factory:function st(){return function(Ke){return{left:Ke?(Ke.offsetLeft||0)+"px":"0",width:Ke?(Ke.offsetWidth||0)+"px":"0"}}}}),nt=function(){var Re=function(){function tt(Ke,vt,Rt,rn){(0,o.Z)(this,tt),this._elementRef=Ke,this._ngZone=vt,this._inkBarPositioner=Rt,this._animationMode=rn}return(0,_.Z)(tt,[{key:"alignToElement",value:function(vt){var Rt=this;this.show(),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return Rt._setStyles(vt)})}):this._setStyles(vt)}},{key:"show",value:function(){this._elementRef.nativeElement.style.visibility="visible"}},{key:"hide",value:function(){this._elementRef.nativeElement.style.visibility="hidden"}},{key:"_setStyles",value:function(vt){var Rt=this._inkBarPositioner(vt),rn=this._elementRef.nativeElement;rn.style.left=Rt.left,rn.style.width=Rt.width}}]),tt}();return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36(y.R0b),y.Y36(Ee),y.Y36(q.Qb,8))},Re.\u0275dir=y.lG2({type:Re,selectors:[["mat-ink-bar"]],hostAttrs:[1,"mat-ink-bar"],hostVars:2,hostBindings:function(Ke,vt){2&Ke&&y.ekj("_mat-animation-noopable","NoopAnimations"===vt._animationMode)}}),Re}(),at=new y.OlP("MatTabContent"),We=function(){var Re=(0,_.Z)(function tt(Ke){(0,o.Z)(this,tt),this.template=Ke});return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.Rgc))},Re.\u0275dir=y.lG2({type:Re,selectors:[["","matTabContent",""]],features:[y._Bn([{provide:at,useExisting:Re}])]}),Re}(),xe=new y.OlP("MatTabLabel"),ut=new y.OlP("MAT_TAB"),Fe=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn,Nn){var $t;return(0,o.Z)(this,vt),($t=Ke.call(this,Rt,rn))._closestTab=Nn,$t}return(0,_.Z)(vt)}(b.ig);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.Rgc),y.Y36(y.s_b),y.Y36(ut,8))},Re.\u0275dir=y.lG2({type:Re,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[y._Bn([{provide:xe,useExisting:Re}]),y.qOj]}),Re}(),et=(0,Y.Id)(function(){return(0,_.Z)(function Re(){(0,o.Z)(this,Re)})}()),Ht=new y.OlP("MAT_TAB_GROUP"),nn=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn){var Nn;return(0,o.Z)(this,vt),(Nn=Ke.call(this))._viewContainerRef=Rt,Nn._closestTabGroup=rn,Nn.textLabel="",Nn._contentPortal=null,Nn._stateChanges=new B.x,Nn.position=null,Nn.origin=null,Nn.isActive=!1,Nn}return(0,_.Z)(vt,[{key:"templateLabel",get:function(){return this._templateLabel},set:function(rn){this._setTemplateLabelInput(rn)}},{key:"content",get:function(){return this._contentPortal}},{key:"ngOnChanges",value:function(rn){(rn.hasOwnProperty("textLabel")||rn.hasOwnProperty("disabled"))&&this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"ngOnInit",value:function(){this._contentPortal=new b.UE(this._explicitContent||this._implicitContent,this._viewContainerRef)}},{key:"_setTemplateLabelInput",value:function(rn){rn&&rn._closestTab===this&&(this._templateLabel=rn)}}]),vt}(et);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.s_b),y.Y36(Ht,8))},Re.\u0275cmp=y.Xpm({type:Re,selectors:[["mat-tab"]],contentQueries:function(Ke,vt,Rt){var rn;1&Ke&&(y.Suo(Rt,xe,5),y.Suo(Rt,at,7,y.Rgc)),2&Ke&&(y.iGM(rn=y.CRH())&&(vt.templateLabel=rn.first),y.iGM(rn=y.CRH())&&(vt._explicitContent=rn.first))},viewQuery:function(Ke,vt){var Rt;1&Ke&&y.Gf(y.Rgc,7),2&Ke&&y.iGM(Rt=y.CRH())&&(vt._implicitContent=Rt.first)},inputs:{disabled:"disabled",textLabel:["label","textLabel"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass"},exportAs:["matTab"],features:[y._Bn([{provide:ut,useExisting:Re}]),y.qOj,y.TTD],ngContentSelectors:te,decls:1,vars:0,template:function(Ke,vt){1&Ke&&(y.F$t(),y.YNc(0,J,1,0,"ng-template"))},encapsulation:2}),Re}(),an={translateTab:(0,j.X$)("translateTab",[(0,j.SB)("center, void, left-origin-center, right-origin-center",(0,j.oB)({transform:"none"})),(0,j.SB)("left",(0,j.oB)({transform:"translate3d(-100%, 0, 0)",minHeight:"1px"})),(0,j.SB)("right",(0,j.oB)({transform:"translate3d(100%, 0, 0)",minHeight:"1px"})),(0,j.eR)("* => left, * => right, left => center, right => center",(0,j.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")),(0,j.eR)("void => left-origin-center",[(0,j.oB)({transform:"translate3d(-100%, 0, 0)"}),(0,j.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")]),(0,j.eR)("void => right-origin-center",[(0,j.oB)({transform:"translate3d(100%, 0, 0)"}),(0,j.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")])])},kt=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn,Nn,$t){var fn;return(0,o.Z)(this,vt),(fn=Ke.call(this,Rt,rn,$t))._host=Nn,fn._centeringSub=k.w0.EMPTY,fn._leavingSub=k.w0.EMPTY,fn}return(0,_.Z)(vt,[{key:"ngOnInit",value:function(){var rn=this;(0,t.Z)((0,e.Z)(vt.prototype),"ngOnInit",this).call(this),this._centeringSub=this._host._beforeCentering.pipe((0,le.O)(this._host._isCenterPosition(this._host._position))).subscribe(function(Nn){Nn&&!rn.hasAttached()&&rn.attach(rn._host._content)}),this._leavingSub=this._host._afterLeavingCenter.subscribe(function(){rn.detach()})}},{key:"ngOnDestroy",value:function(){(0,t.Z)((0,e.Z)(vt.prototype),"ngOnDestroy",this).call(this),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}}]),vt}(b.Pl);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y._Vd),y.Y36(y.s_b),y.Y36((0,y.Gpc)(function(){return $e})),y.Y36(T.K0))},Re.\u0275dir=y.lG2({type:Re,selectors:[["","matTabBodyHost",""]],features:[y.qOj]}),Re}(),It=function(){var Re=function(){function tt(Ke,vt,Rt){var rn=this;(0,o.Z)(this,tt),this._elementRef=Ke,this._dir=vt,this._dirChangeSubscription=k.w0.EMPTY,this._translateTabComplete=new B.x,this._onCentering=new y.vpe,this._beforeCentering=new y.vpe,this._afterLeavingCenter=new y.vpe,this._onCentered=new y.vpe(!0),this.animationDuration="500ms",vt&&(this._dirChangeSubscription=vt.change.subscribe(function(Nn){rn._computePositionAnimationState(Nn),Rt.markForCheck()})),this._translateTabComplete.pipe((0,re.x)(function(Nn,$t){return Nn.fromState===$t.fromState&&Nn.toState===$t.toState})).subscribe(function(Nn){rn._isCenterPosition(Nn.toState)&&rn._isCenterPosition(rn._position)&&rn._onCentered.emit(),rn._isCenterPosition(Nn.fromState)&&!rn._isCenterPosition(rn._position)&&rn._afterLeavingCenter.emit()})}return(0,_.Z)(tt,[{key:"position",set:function(vt){this._positionIndex=vt,this._computePositionAnimationState()}},{key:"ngOnInit",value:function(){"center"==this._position&&null!=this.origin&&(this._position=this._computePositionFromOrigin(this.origin))}},{key:"ngOnDestroy",value:function(){this._dirChangeSubscription.unsubscribe(),this._translateTabComplete.complete()}},{key:"_onTranslateTabStarted",value:function(vt){var Rt=this._isCenterPosition(vt.toState);this._beforeCentering.emit(Rt),Rt&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}},{key:"_getLayoutDirection",value:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"_isCenterPosition",value:function(vt){return"center"==vt||"left-origin-center"==vt||"right-origin-center"==vt}},{key:"_computePositionAnimationState",value:function(){var vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this._getLayoutDirection();this._position=this._positionIndex<0?"ltr"==vt?"left":"right":this._positionIndex>0?"ltr"==vt?"right":"left":"center"}},{key:"_computePositionFromOrigin",value:function(vt){var Rt=this._getLayoutDirection();return"ltr"==Rt&&vt<=0||"rtl"==Rt&&vt>0?"left-origin-center":"right-origin-center"}}]),tt}();return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36($.Is,8),y.Y36(y.sBO))},Re.\u0275dir=y.lG2({type:Re,inputs:{_content:["content","_content"],origin:"origin",animationDuration:"animationDuration",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_afterLeavingCenter:"_afterLeavingCenter",_onCentered:"_onCentered"}}),Re}(),$e=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn,Nn){return(0,o.Z)(this,vt),Ke.call(this,Rt,rn,Nn)}return(0,_.Z)(vt)}(It);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36($.Is,8),y.Y36(y.sBO))},Re.\u0275cmp=y.Xpm({type:Re,selectors:[["mat-tab-body"]],viewQuery:function(Ke,vt){var Rt;1&Ke&&y.Gf(b.Pl,5),2&Ke&&y.iGM(Rt=y.CRH())&&(vt._portalHost=Rt.first)},hostAttrs:[1,"mat-tab-body"],features:[y.qOj],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(Ke,vt){1&Ke&&(y.TgZ(0,"div",0,1),y.NdJ("@translateTab.start",function(rn){return vt._onTranslateTabStarted(rn)})("@translateTab.done",function(rn){return vt._translateTabComplete.next(rn)}),y.YNc(2,K,0,0,"ng-template",2),y.qZA()),2&Ke&&y.Q6J("@translateTab",y.WLB(3,ce,vt._position,y.VKq(1,G,vt.animationDuration)))},directives:[kt],styles:[".mat-tab-body-content{height:100%;overflow:auto}.mat-tab-group-dynamic-height .mat-tab-body-content{overflow:hidden}\n"],encapsulation:2,data:{animation:[an.translateTab]}}),Re}(),Ae=new y.OlP("MAT_TABS_CONFIG"),X=(0,Y.Id)(function(){return(0,_.Z)(function Re(){(0,o.Z)(this,Re)})}()),ne=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt){var rn;return(0,o.Z)(this,vt),(rn=Ke.call(this)).elementRef=Rt,rn}return(0,_.Z)(vt,[{key:"focus",value:function(){this.elementRef.nativeElement.focus()}},{key:"getOffsetLeft",value:function(){return this.elementRef.nativeElement.offsetLeft}},{key:"getOffsetWidth",value:function(){return this.elementRef.nativeElement.offsetWidth}}]),vt}(X);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq))},Re.\u0275dir=y.lG2({type:Re,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(Ke,vt){2&Ke&&(y.uIk("aria-disabled",!!vt.disabled),y.ekj("mat-tab-disabled",vt.disabled))},inputs:{disabled:"disabled"},features:[y.qOj]}),Re}(),me=(0,d.i$)({passive:!0}),Ft=function(){var Re=function(){function tt(Ke,vt,Rt,rn,Nn,$t,fn){var ln=this;(0,o.Z)(this,tt),this._elementRef=Ke,this._changeDetectorRef=vt,this._viewportRuler=Rt,this._dir=rn,this._ngZone=Nn,this._platform=$t,this._animationMode=fn,this._scrollDistance=0,this._selectedIndexChanged=!1,this._destroyed=new B.x,this._showPaginationControls=!1,this._disableScrollAfter=!0,this._disableScrollBefore=!0,this._stopScrolling=new B.x,this.disablePagination=!1,this._selectedIndex=0,this.selectFocusedIndex=new y.vpe,this.indexFocused=new y.vpe,Nn.runOutsideAngular(function(){(0,D.R)(Ke.nativeElement,"mouseleave").pipe((0,W.R)(ln._destroyed)).subscribe(function(){ln._stopInterval()})})}return(0,_.Z)(tt,[{key:"selectedIndex",get:function(){return this._selectedIndex},set:function(vt){vt=(0,be.su)(vt),this._selectedIndex!=vt&&(this._selectedIndexChanged=!0,this._selectedIndex=vt,this._keyManager&&this._keyManager.updateActiveItem(vt))}},{key:"ngAfterViewInit",value:function(){var vt=this;(0,D.R)(this._previousPaginator.nativeElement,"touchstart",me).pipe((0,W.R)(this._destroyed)).subscribe(function(){vt._handlePaginatorPress("before")}),(0,D.R)(this._nextPaginator.nativeElement,"touchstart",me).pipe((0,W.R)(this._destroyed)).subscribe(function(){vt._handlePaginatorPress("after")})}},{key:"ngAfterContentInit",value:function(){var vt=this,Rt=this._dir?this._dir.change:(0,N.of)("ltr"),rn=this._viewportRuler.change(150),Nn=function(){vt.updatePagination(),vt._alignInkBarToSelectedTab()};this._keyManager=new s.Em(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap(),this._keyManager.updateActiveItem(this._selectedIndex),"undefined"!=typeof requestAnimationFrame?requestAnimationFrame(Nn):Nn(),(0,I.T)(Rt,rn,this._items.changes).pipe((0,W.R)(this._destroyed)).subscribe(function(){vt._ngZone.run(function(){return Promise.resolve().then(Nn)}),vt._keyManager.withHorizontalOrientation(vt._getLayoutDirection())}),this._keyManager.change.pipe((0,W.R)(this._destroyed)).subscribe(function($t){vt.indexFocused.emit($t),vt._setTabFocus($t)})}},{key:"ngAfterContentChecked",value:function(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}},{key:"_handleKeydown",value:function(vt){if(!(0,z.Vb)(vt))switch(vt.keyCode){case z.K5:case z.L_:this.focusIndex!==this.selectedIndex&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(vt));break;default:this._keyManager.onKeydown(vt)}}},{key:"_onContentChanges",value:function(){var vt=this,Rt=this._elementRef.nativeElement.textContent;Rt!==this._currentTextContent&&(this._currentTextContent=Rt||"",this._ngZone.run(function(){vt.updatePagination(),vt._alignInkBarToSelectedTab(),vt._changeDetectorRef.markForCheck()}))}},{key:"updatePagination",value:function(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}},{key:"focusIndex",get:function(){return this._keyManager?this._keyManager.activeItemIndex:0},set:function(vt){!this._isValidIndex(vt)||this.focusIndex===vt||!this._keyManager||this._keyManager.setActiveItem(vt)}},{key:"_isValidIndex",value:function(vt){if(!this._items)return!0;var Rt=this._items?this._items.toArray()[vt]:null;return!!Rt&&!Rt.disabled}},{key:"_setTabFocus",value:function(vt){if(this._showPaginationControls&&this._scrollToLabel(vt),this._items&&this._items.length){this._items.toArray()[vt].focus();var Rt=this._tabListContainer.nativeElement,rn=this._getLayoutDirection();Rt.scrollLeft="ltr"==rn?0:Rt.scrollWidth-Rt.offsetWidth}}},{key:"_getLayoutDirection",value:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"_updateTabScrollPosition",value:function(){if(!this.disablePagination){var vt=this.scrollDistance,Rt="ltr"===this._getLayoutDirection()?-vt:vt;this._tabList.nativeElement.style.transform="translateX(".concat(Math.round(Rt),"px)"),(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}}},{key:"scrollDistance",get:function(){return this._scrollDistance},set:function(vt){this._scrollTo(vt)}},{key:"_scrollHeader",value:function(vt){return this._scrollTo(this._scrollDistance+("before"==vt?-1:1)*this._tabListContainer.nativeElement.offsetWidth/3)}},{key:"_handlePaginatorClick",value:function(vt){this._stopInterval(),this._scrollHeader(vt)}},{key:"_scrollToLabel",value:function(vt){if(!this.disablePagination){var Rt=this._items?this._items.toArray()[vt]:null;if(Rt){var ln,_n,rn=this._tabListContainer.nativeElement.offsetWidth,Nn=Rt.elementRef.nativeElement,$t=Nn.offsetLeft,fn=Nn.offsetWidth;"ltr"==this._getLayoutDirection()?_n=(ln=$t)+fn:ln=(_n=this._tabListInner.nativeElement.offsetWidth-$t)-fn;var xn=this.scrollDistance,In=this.scrollDistance+rn;lnIn&&(this.scrollDistance+=_n-In+60)}}}},{key:"_checkPaginationEnabled",value:function(){if(this.disablePagination)this._showPaginationControls=!1;else{var vt=this._tabListInner.nativeElement.scrollWidth>this._elementRef.nativeElement.offsetWidth;vt||(this.scrollDistance=0),vt!==this._showPaginationControls&&this._changeDetectorRef.markForCheck(),this._showPaginationControls=vt}}},{key:"_checkScrollingControls",value:function(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=0==this.scrollDistance,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}},{key:"_getMaxScrollDistance",value:function(){return this._tabListInner.nativeElement.scrollWidth-this._tabListContainer.nativeElement.offsetWidth||0}},{key:"_alignInkBarToSelectedTab",value:function(){var vt=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,Rt=vt?vt.elementRef.nativeElement:null;Rt?this._inkBar.alignToElement(Rt):this._inkBar.hide()}},{key:"_stopInterval",value:function(){this._stopScrolling.next()}},{key:"_handlePaginatorPress",value:function(vt,Rt){var rn=this;Rt&&null!=Rt.button&&0!==Rt.button||(this._stopInterval(),(0,L.H)(650,100).pipe((0,W.R)((0,I.T)(this._stopScrolling,this._destroyed))).subscribe(function(){var Nn=rn._scrollHeader(vt),fn=Nn.distance;(0===fn||fn>=Nn.maxScrollDistance)&&rn._stopInterval()}))}},{key:"_scrollTo",value:function(vt){if(this.disablePagination)return{maxScrollDistance:0,distance:0};var Rt=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(Rt,vt)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:Rt,distance:this._scrollDistance}}}]),tt}();return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(Q.rL),y.Y36($.Is,8),y.Y36(y.R0b),y.Y36(d.t4),y.Y36(q.Qb,8))},Re.\u0275dir=y.lG2({type:Re,inputs:{disablePagination:"disablePagination"}}),Re}(),sn=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn,Nn,$t,fn,ln,_n){var xn;return(0,o.Z)(this,vt),(xn=Ke.call(this,Rt,rn,Nn,$t,fn,ln,_n))._disableRipple=!1,xn}return(0,_.Z)(vt,[{key:"disableRipple",get:function(){return this._disableRipple},set:function(rn){this._disableRipple=(0,be.Ig)(rn)}},{key:"_itemSelected",value:function(rn){rn.preventDefault()}}]),vt}(Ft);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(Q.rL),y.Y36($.Is,8),y.Y36(y.R0b),y.Y36(d.t4),y.Y36(q.Qb,8))},Re.\u0275dir=y.lG2({type:Re,inputs:{disableRipple:"disableRipple"},features:[y.qOj]}),Re}(),Xt=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn,Nn,$t,fn,ln,_n){return(0,o.Z)(this,vt),Ke.call(this,Rt,rn,Nn,$t,fn,ln,_n)}return(0,_.Z)(vt)}(sn);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(Q.rL),y.Y36($.Is,8),y.Y36(y.R0b),y.Y36(d.t4),y.Y36(q.Qb,8))},Re.\u0275cmp=y.Xpm({type:Re,selectors:[["mat-tab-header"]],contentQueries:function(Ke,vt,Rt){var rn;1&Ke&&y.Suo(Rt,ne,4),2&Ke&&y.iGM(rn=y.CRH())&&(vt._items=rn)},viewQuery:function(Ke,vt){var Rt;1&Ke&&(y.Gf(nt,7),y.Gf(_e,7),y.Gf(Me,7),y.Gf(ve,7),y.Gf(ue,5),y.Gf(lt,5)),2&Ke&&(y.iGM(Rt=y.CRH())&&(vt._inkBar=Rt.first),y.iGM(Rt=y.CRH())&&(vt._tabListContainer=Rt.first),y.iGM(Rt=y.CRH())&&(vt._tabList=Rt.first),y.iGM(Rt=y.CRH())&&(vt._tabListInner=Rt.first),y.iGM(Rt=y.CRH())&&(vt._nextPaginator=Rt.first),y.iGM(Rt=y.CRH())&&(vt._previousPaginator=Rt.first))},hostAttrs:[1,"mat-tab-header"],hostVars:4,hostBindings:function(Ke,vt){2&Ke&&y.ekj("mat-tab-header-pagination-controls-enabled",vt._showPaginationControls)("mat-tab-header-rtl","rtl"==vt._getLayoutDirection())},inputs:{selectedIndex:"selectedIndex"},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"},features:[y.qOj],ngContentSelectors:te,decls:14,vars:8,consts:[["aria-hidden","true","mat-ripple","",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-label-container",3,"keydown"],["tabListContainer",""],["role","tablist",1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-labels"],["tabListInner",""],["aria-hidden","true","mat-ripple","",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(Ke,vt){1&Ke&&(y.F$t(),y.TgZ(0,"div",0,1),y.NdJ("click",function(){return vt._handlePaginatorClick("before")})("mousedown",function(rn){return vt._handlePaginatorPress("before",rn)})("touchend",function(){return vt._stopInterval()}),y._UZ(2,"div",2),y.qZA(),y.TgZ(3,"div",3,4),y.NdJ("keydown",function(rn){return vt._handleKeydown(rn)}),y.TgZ(5,"div",5,6),y.NdJ("cdkObserveContent",function(){return vt._onContentChanges()}),y.TgZ(7,"div",7,8),y.Hsn(9),y.qZA(),y._UZ(10,"mat-ink-bar"),y.qZA(),y.qZA(),y.TgZ(11,"div",9,10),y.NdJ("mousedown",function(rn){return vt._handlePaginatorPress("after",rn)})("click",function(){return vt._handlePaginatorClick("after")})("touchend",function(){return vt._stopInterval()}),y._UZ(13,"div",2),y.qZA()),2&Ke&&(y.ekj("mat-tab-header-pagination-disabled",vt._disableScrollBefore),y.Q6J("matRippleDisabled",vt._disableScrollBefore||vt.disableRipple),y.xp6(5),y.ekj("_mat-animation-noopable","NoopAnimations"===vt._animationMode),y.xp6(6),y.ekj("mat-tab-header-pagination-disabled",vt._disableScrollAfter),y.Q6J("matRippleDisabled",vt._disableScrollAfter||vt.disableRipple))},directives:[Y.wG,h.wD,nt],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-ink-bar{transition:none;animation:none}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-labels{display:flex}[mat-align-tabs=center]>.mat-tab-header .mat-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-tab-header .mat-tab-labels{justify-content:flex-end}.mat-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}._mat-animation-noopable.mat-tab-list{transition:none;animation:none}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{min-width:72px}}\n"],encapsulation:2}),Re}(),gn=0,vn=(0,_.Z)(function Re(){(0,o.Z)(this,Re)}),hn=(0,Y.pj)((0,Y.Kr)(function(){return(0,_.Z)(function Re(tt){(0,o.Z)(this,Re),this._elementRef=tt})}()),"primary"),jn=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn,Nn,$t){var fn,ln;return(0,o.Z)(this,vt),(fn=Ke.call(this,Rt))._changeDetectorRef=rn,fn._animationMode=$t,fn._tabs=new y.n_E,fn._indexToSelect=0,fn._tabBodyWrapperHeight=0,fn._tabsSubscription=k.w0.EMPTY,fn._tabLabelSubscription=k.w0.EMPTY,fn._selectedIndex=null,fn.headerPosition="above",fn.selectedIndexChange=new y.vpe,fn.focusChange=new y.vpe,fn.animationDone=new y.vpe,fn.selectedTabChange=new y.vpe(!0),fn._groupId=gn++,fn.animationDuration=Nn&&Nn.animationDuration?Nn.animationDuration:"500ms",fn.disablePagination=!(!Nn||null==Nn.disablePagination)&&Nn.disablePagination,fn.dynamicHeight=!(!Nn||null==Nn.dynamicHeight)&&Nn.dynamicHeight,fn.contentTabIndex=null!==(ln=null==Nn?void 0:Nn.contentTabIndex)&&void 0!==ln?ln:null,fn}return(0,_.Z)(vt,[{key:"dynamicHeight",get:function(){return this._dynamicHeight},set:function(rn){this._dynamicHeight=(0,be.Ig)(rn)}},{key:"selectedIndex",get:function(){return this._selectedIndex},set:function(rn){this._indexToSelect=(0,be.su)(rn,null)}},{key:"animationDuration",get:function(){return this._animationDuration},set:function(rn){this._animationDuration=/^\d+$/.test(rn+"")?rn+"ms":rn}},{key:"contentTabIndex",get:function(){return this._contentTabIndex},set:function(rn){this._contentTabIndex=(0,be.su)(rn,null)}},{key:"backgroundColor",get:function(){return this._backgroundColor},set:function(rn){var Nn=this._elementRef.nativeElement;Nn.classList.remove("mat-background-".concat(this.backgroundColor)),rn&&Nn.classList.add("mat-background-".concat(rn)),this._backgroundColor=rn}},{key:"ngAfterContentChecked",value:function(){var rn=this,Nn=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=Nn){var $t=null==this._selectedIndex;if(!$t){this.selectedTabChange.emit(this._createChangeEvent(Nn));var fn=this._tabBodyWrapper.nativeElement;fn.style.minHeight=fn.clientHeight+"px"}Promise.resolve().then(function(){rn._tabs.forEach(function(ln,_n){return ln.isActive=_n===Nn}),$t||(rn.selectedIndexChange.emit(Nn),rn._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach(function(ln,_n){ln.position=_n-Nn,null!=rn._selectedIndex&&0==ln.position&&!ln.origin&&(ln.origin=Nn-rn._selectedIndex)}),this._selectedIndex!==Nn&&(this._selectedIndex=Nn,this._changeDetectorRef.markForCheck())}},{key:"ngAfterContentInit",value:function(){var rn=this;this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(function(){if(rn._clampTabIndex(rn._indexToSelect)===rn._selectedIndex)for(var $t=rn._tabs.toArray(),fn=0;fn<$t.length;fn++)if($t[fn].isActive){rn._indexToSelect=rn._selectedIndex=fn;break}rn._changeDetectorRef.markForCheck()})}},{key:"_subscribeToAllTabChanges",value:function(){var rn=this;this._allTabs.changes.pipe((0,le.O)(this._allTabs)).subscribe(function(Nn){rn._tabs.reset(Nn.filter(function($t){return $t._closestTabGroup===rn||!$t._closestTabGroup})),rn._tabs.notifyOnChanges()})}},{key:"ngOnDestroy",value:function(){this._tabs.destroy(),this._tabsSubscription.unsubscribe(),this._tabLabelSubscription.unsubscribe()}},{key:"realignInkBar",value:function(){this._tabHeader&&this._tabHeader._alignInkBarToSelectedTab()}},{key:"updatePagination",value:function(){this._tabHeader&&this._tabHeader.updatePagination()}},{key:"focusTab",value:function(rn){var Nn=this._tabHeader;Nn&&(Nn.focusIndex=rn)}},{key:"_focusChanged",value:function(rn){this.focusChange.emit(this._createChangeEvent(rn))}},{key:"_createChangeEvent",value:function(rn){var Nn=new vn;return Nn.index=rn,this._tabs&&this._tabs.length&&(Nn.tab=this._tabs.toArray()[rn]),Nn}},{key:"_subscribeToTabLabels",value:function(){var rn=this;this._tabLabelSubscription&&this._tabLabelSubscription.unsubscribe(),this._tabLabelSubscription=I.T.apply(void 0,(0,S.Z)(this._tabs.map(function(Nn){return Nn._stateChanges}))).subscribe(function(){return rn._changeDetectorRef.markForCheck()})}},{key:"_clampTabIndex",value:function(rn){return Math.min(this._tabs.length-1,Math.max(rn||0,0))}},{key:"_getTabLabelId",value:function(rn){return"mat-tab-label-".concat(this._groupId,"-").concat(rn)}},{key:"_getTabContentId",value:function(rn){return"mat-tab-content-".concat(this._groupId,"-").concat(rn)}},{key:"_setTabBodyWrapperHeight",value:function(rn){if(this._dynamicHeight&&this._tabBodyWrapperHeight){var Nn=this._tabBodyWrapper.nativeElement;Nn.style.height=this._tabBodyWrapperHeight+"px",this._tabBodyWrapper.nativeElement.offsetHeight&&(Nn.style.height=rn+"px")}}},{key:"_removeTabBodyWrapperHeight",value:function(){var rn=this._tabBodyWrapper.nativeElement;this._tabBodyWrapperHeight=rn.clientHeight,rn.style.height="",this.animationDone.emit()}},{key:"_handleClick",value:function(rn,Nn,$t){rn.disabled||(this.selectedIndex=Nn.focusIndex=$t)}},{key:"_getTabIndex",value:function(rn,Nn){return rn.disabled?null:this.selectedIndex===Nn?0:-1}},{key:"_tabFocusChanged",value:function(rn,Nn){rn&&"mouse"!==rn&&"touch"!==rn&&(this._tabHeader.focusIndex=Nn)}}]),vt}(hn);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(Ae,8),y.Y36(q.Qb,8))},Re.\u0275dir=y.lG2({type:Re,inputs:{dynamicHeight:"dynamicHeight",selectedIndex:"selectedIndex",headerPosition:"headerPosition",animationDuration:"animationDuration",contentTabIndex:"contentTabIndex",disablePagination:"disablePagination",backgroundColor:"backgroundColor"},outputs:{selectedIndexChange:"selectedIndexChange",focusChange:"focusChange",animationDone:"animationDone",selectedTabChange:"selectedTabChange"},features:[y.qOj]}),Re}(),Jn=function(){var Re=function(tt){(0,c.Z)(vt,tt);var Ke=(0,u.Z)(vt);function vt(Rt,rn,Nn,$t){return(0,o.Z)(this,vt),Ke.call(this,Rt,rn,Nn,$t)}return(0,_.Z)(vt)}(jn);return Re.\u0275fac=function(Ke){return new(Ke||Re)(y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(Ae,8),y.Y36(q.Qb,8))},Re.\u0275cmp=y.Xpm({type:Re,selectors:[["mat-tab-group"]],contentQueries:function(Ke,vt,Rt){var rn;1&Ke&&y.Suo(Rt,nn,5),2&Ke&&y.iGM(rn=y.CRH())&&(vt._allTabs=rn)},viewQuery:function(Ke,vt){var Rt;1&Ke&&(y.Gf(Xe,5),y.Gf(mt,5)),2&Ke&&(y.iGM(Rt=y.CRH())&&(vt._tabBodyWrapper=Rt.first),y.iGM(Rt=y.CRH())&&(vt._tabHeader=Rt.first))},hostAttrs:[1,"mat-tab-group"],hostVars:4,hostBindings:function(Ke,vt){2&Ke&&y.ekj("mat-tab-group-dynamic-height",vt.dynamicHeight)("mat-tab-group-inverted-header","below"===vt.headerPosition)},inputs:{color:"color",disableRipple:"disableRipple"},exportAs:["matTabGroup"],features:[y._Bn([{provide:Ht,useExisting:Re}]),y.qOj],decls:6,vars:7,consts:[[3,"selectedIndex","disableRipple","disablePagination","indexFocused","selectFocusedIndex"],["tabHeader",""],["class","mat-tab-label mat-focus-indicator","role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",3,"id","mat-tab-label-active","ngClass","disabled","matRippleDisabled","click","cdkFocusChange",4,"ngFor","ngForOf"],[1,"mat-tab-body-wrapper"],["tabBodyWrapper",""],["role","tabpanel",3,"id","mat-tab-body-active","ngClass","content","position","origin","animationDuration","_onCentered","_onCentering",4,"ngFor","ngForOf"],["role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",1,"mat-tab-label","mat-focus-indicator",3,"id","ngClass","disabled","matRippleDisabled","click","cdkFocusChange"],[1,"mat-tab-label-content"],[3,"ngIf","ngIfElse"],["tabTextLabel",""],[3,"cdkPortalOutlet"],["role","tabpanel",3,"id","ngClass","content","position","origin","animationDuration","_onCentered","_onCentering"]],template:function(Ke,vt){1&Ke&&(y.TgZ(0,"mat-tab-header",0,1),y.NdJ("indexFocused",function(rn){return vt._focusChanged(rn)})("selectFocusedIndex",function(rn){return vt.selectedIndex=rn}),y.YNc(2,ze,5,15,"div",2),y.qZA(),y.TgZ(3,"div",3,4),y.YNc(5,ft,1,10,"mat-tab-body",5),y.qZA()),2&Ke&&(y.Q6J("selectedIndex",vt.selectedIndex||0)("disableRipple",vt.disableRipple)("disablePagination",vt.disablePagination),y.xp6(2),y.Q6J("ngForOf",vt._tabs),y.xp6(1),y.ekj("_mat-animation-noopable","NoopAnimations"===vt._animationMode),y.xp6(2),y.Q6J("ngForOf",vt._tabs))},directives:[Xt,$e,T.sg,ne,Y.wG,s.kH,T.mk,T.O5,b.Pl],styles:[".mat-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-tab-group.mat-tab-group-inverted-header{flex-direction:column-reverse}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{padding:0 12px}}@media(max-width: 959px){.mat-tab-label{padding:0 12px}}.mat-tab-group[mat-stretch-tabs]>.mat-tab-header .mat-tab-label{flex-basis:0;flex-grow:1}.mat-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-tab-body-wrapper{transition:none;animation:none}.mat-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-tab-body.mat-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-tab-group.mat-tab-group-dynamic-height .mat-tab-body.mat-tab-body-active{overflow-y:hidden}\n"],encapsulation:2}),Re}(),Ne=function(){var Re=(0,_.Z)(function tt(){(0,o.Z)(this,tt)});return Re.\u0275fac=function(Ke){return new(Ke||Re)},Re.\u0275mod=y.oAB({type:Re}),Re.\u0275inj=y.cJS({imports:[[T.ez,Y.BQ,b.eL,Y.si,h.Q8,s.rt],Y.BQ]}),Re}()},19946:function(Ce,E,n){"use strict";n.d(E,{Ye:function(){return Y},g0:function(){return B}});var S=n(46751),t=n(56101),e=n(1884),c=n(39117),u=n(86613),o=n(1130),_=n(36362),s=n(14390),h=["*",[["mat-toolbar-row"]]],b=["*","mat-toolbar-row"],T=(0,o.pj)(function(){return(0,e.Z)(function k(D){(0,c.Z)(this,k),this._elementRef=D})}()),y=function(){var k=(0,e.Z)(function D(){(0,c.Z)(this,D)});return k.\u0275fac=function(N){return new(N||k)},k.\u0275dir=u.lG2({type:k,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),k}(),Y=function(){var k=function(D){(0,S.Z)(I,D);var N=(0,t.Z)(I);function I(L,j,le){var re;return(0,c.Z)(this,I),(re=N.call(this,L))._platform=j,re._document=le,re}return(0,e.Z)(I,[{key:"ngAfterViewInit",value:function(){var j=this;this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(function(){return j._checkToolbarMixedModes()}))}},{key:"_checkToolbarMixedModes",value:function(){}}]),I}(T);return k.\u0275fac=function(N){return new(N||k)(u.Y36(u.SBq),u.Y36(s.t4),u.Y36(_.K0))},k.\u0275cmp=u.Xpm({type:k,selectors:[["mat-toolbar"]],contentQueries:function(N,I,L){var j;1&N&&u.Suo(L,y,5),2&N&&u.iGM(j=u.CRH())&&(I._toolbarRows=j)},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(N,I){2&N&&u.ekj("mat-toolbar-multiple-rows",I._toolbarRows.length>0)("mat-toolbar-single-row",0===I._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[u.qOj],ngContentSelectors:b,decls:2,vars:0,template:function(N,I){1&N&&(u.F$t(h),u.Hsn(0),u.Hsn(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),k}(),B=function(){var k=(0,e.Z)(function D(){(0,c.Z)(this,D)});return k.\u0275fac=function(N){return new(N||k)},k.\u0275mod=u.oAB({type:k}),k.\u0275inj=u.cJS({imports:[[o.BQ],o.BQ]}),k}()},40089:function(Ce,E,n){"use strict";n.d(E,{gM:function(){return _e},AV:function(){return ue}});var S=n(46751),t=n(56101),e=n(78170),c=n(39117),u=n(1884),o=n(54244),_=n(84128),s=n(36362),h=n(86613),b=n(1130),T=n(24426),y=n(76484),Y=n(75939),q=n(39910),B=n(14390),k=n(24476),D=n(50253),N=n(68951),I=n(59295),L=n(31631),j=n(51588),le={tooltipState:(0,L.X$)("state",[(0,L.SB)("initial, void, hidden",(0,L.oB)({opacity:0,transform:"scale(0)"})),(0,L.SB)("visible",(0,L.oB)({transform:"scale(1)"})),(0,L.eR)("* => visible",(0,L.jt)("200ms cubic-bezier(0, 0, 0.2, 1)",(0,L.F4)([(0,L.oB)({opacity:0,transform:"scale(0)",offset:0}),(0,L.oB)({opacity:.5,transform:"scale(0.99)",offset:.5}),(0,L.oB)({opacity:1,transform:"scale(1)",offset:1})]))),(0,L.eR)("* => hidden",(0,L.jt)("100ms cubic-bezier(0, 0, 0.2, 1)",(0,L.oB)({opacity:0})))])},$="tooltip-panel",be=(0,B.i$)({passive:!0}),Q=new h.OlP("mat-tooltip-scroll-strategy"),te={provide:Q,deps:[o.aV],useFactory:function J(lt){return function(){return lt.scrollStrategies.reposition({scrollThrottle:20})}}},K=new h.OlP("mat-tooltip-default-options",{providedIn:"root",factory:function G(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),ce=function(){var lt=function(){function Xe(mt,wt,Pt,Pe,ze,ft,ct,Ee,st,nt,at,We){var xe=this;(0,c.Z)(this,Xe),this._overlay=mt,this._elementRef=wt,this._scrollDispatcher=Pt,this._viewContainerRef=Pe,this._ngZone=ze,this._platform=ft,this._ariaDescriber=ct,this._focusMonitor=Ee,this._dir=nt,this._defaultOptions=at,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this._showDelay=this._defaultOptions.showDelay,this._hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new D.x,this._scrollStrategy=st,this._document=We,at&&(at.position&&(this.position=at.position),at.touchGestures&&(this.touchGestures=at.touchGestures)),nt.change.pipe((0,N.R)(this._destroyed)).subscribe(function(){xe._overlayRef&&xe._updatePosition(xe._overlayRef)})}return(0,u.Z)(Xe,[{key:"position",get:function(){return this._position},set:function(wt){var Pt;wt!==this._position&&(this._position=wt,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(Pt=this._tooltipInstance)||void 0===Pt||Pt.show(0),this._overlayRef.updatePosition()))}},{key:"disabled",get:function(){return this._disabled},set:function(wt){this._disabled=(0,y.Ig)(wt),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}},{key:"showDelay",get:function(){return this._showDelay},set:function(wt){this._showDelay=(0,y.su)(wt)}},{key:"hideDelay",get:function(){return this._hideDelay},set:function(wt){this._hideDelay=(0,y.su)(wt)}},{key:"message",get:function(){return this._message},set:function(wt){var Pt=this;this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=wt?String(wt).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(function(){Promise.resolve().then(function(){Pt._ariaDescriber.describe(Pt._elementRef.nativeElement,Pt.message,"tooltip")})}))}},{key:"tooltipClass",get:function(){return this._tooltipClass},set:function(wt){this._tooltipClass=wt,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}},{key:"ngAfterViewInit",value:function(){var wt=this;this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe((0,N.R)(this._destroyed)).subscribe(function(Pt){Pt?"keyboard"===Pt&&wt._ngZone.run(function(){return wt.show()}):wt._ngZone.run(function(){return wt.hide(0)})})}},{key:"ngOnDestroy",value:function(){var wt=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(function(Pt){var Pe=(0,e.Z)(Pt,2);wt.removeEventListener(Pe[0],Pe[1],be)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(wt,this.message,"tooltip"),this._focusMonitor.stopMonitoring(wt)}},{key:"show",value:function(){var wt=this,Pt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.showDelay;if(!this.disabled&&this.message&&(!this._isTooltipVisible()||this._tooltipInstance._showTimeoutId||this._tooltipInstance._hideTimeoutId)){var Pe=this._createOverlay();this._detach(),this._portal=this._portal||new k.C5(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=Pe.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe((0,N.R)(this._destroyed)).subscribe(function(){return wt._detach()}),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(Pt)}}},{key:"hide",value:function(){var wt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.hideDelay;this._tooltipInstance&&this._tooltipInstance.hide(wt)}},{key:"toggle",value:function(){this._isTooltipVisible()?this.hide():this.show()}},{key:"_isTooltipVisible",value:function(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}},{key:"_createOverlay",value:function(){var wt=this;if(this._overlayRef)return this._overlayRef;var Pt=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),Pe=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(".".concat(this._cssClassPrefix,"-tooltip")).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(Pt);return Pe.positionChanges.pipe((0,N.R)(this._destroyed)).subscribe(function(ze){wt._updateCurrentPositionClass(ze.connectionPair),wt._tooltipInstance&&ze.scrollableViewProperties.isOverlayClipped&&wt._tooltipInstance.isVisible()&&wt._ngZone.run(function(){return wt.hide(0)})}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:Pe,panelClass:"".concat(this._cssClassPrefix,"-").concat($),scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe((0,N.R)(this._destroyed)).subscribe(function(){return wt._detach()}),this._overlayRef.outsidePointerEvents().pipe((0,N.R)(this._destroyed)).subscribe(function(){var ze;return null===(ze=wt._tooltipInstance)||void 0===ze?void 0:ze._handleBodyInteraction()}),this._overlayRef.keydownEvents().pipe((0,N.R)(this._destroyed)).subscribe(function(ze){wt._isTooltipVisible()&&ze.keyCode===Y.hY&&!(0,Y.Vb)(ze)&&(ze.preventDefault(),ze.stopPropagation(),wt._ngZone.run(function(){return wt.hide(0)}))}),this._overlayRef}},{key:"_detach",value:function(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}},{key:"_updatePosition",value:function(wt){var Pt=wt.getConfig().positionStrategy,Pe=this._getOrigin(),ze=this._getOverlayPosition();Pt.withPositions([this._addOffset(Object.assign(Object.assign({},Pe.main),ze.main)),this._addOffset(Object.assign(Object.assign({},Pe.fallback),ze.fallback))])}},{key:"_addOffset",value:function(wt){return wt}},{key:"_getOrigin",value:function(){var Pe,wt=!this._dir||"ltr"==this._dir.value,Pt=this.position;"above"==Pt||"below"==Pt?Pe={originX:"center",originY:"above"==Pt?"top":"bottom"}:"before"==Pt||"left"==Pt&&wt||"right"==Pt&&!wt?Pe={originX:"start",originY:"center"}:("after"==Pt||"right"==Pt&&wt||"left"==Pt&&!wt)&&(Pe={originX:"end",originY:"center"});var ze=this._invertPosition(Pe.originX,Pe.originY);return{main:Pe,fallback:{originX:ze.x,originY:ze.y}}}},{key:"_getOverlayPosition",value:function(){var Pe,wt=!this._dir||"ltr"==this._dir.value,Pt=this.position;"above"==Pt?Pe={overlayX:"center",overlayY:"bottom"}:"below"==Pt?Pe={overlayX:"center",overlayY:"top"}:"before"==Pt||"left"==Pt&&wt||"right"==Pt&&!wt?Pe={overlayX:"end",overlayY:"center"}:("after"==Pt||"right"==Pt&&wt||"left"==Pt&&!wt)&&(Pe={overlayX:"start",overlayY:"center"});var ze=this._invertPosition(Pe.overlayX,Pe.overlayY);return{main:Pe,fallback:{overlayX:ze.x,overlayY:ze.y}}}},{key:"_updateTooltipMessage",value:function(){var wt=this;this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe((0,I.q)(1),(0,N.R)(this._destroyed)).subscribe(function(){wt._tooltipInstance&&wt._overlayRef.updatePosition()}))}},{key:"_setTooltipClass",value:function(wt){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=wt,this._tooltipInstance._markForCheck())}},{key:"_invertPosition",value:function(wt,Pt){return"above"===this.position||"below"===this.position?"top"===Pt?Pt="bottom":"bottom"===Pt&&(Pt="top"):"end"===wt?wt="start":"start"===wt&&(wt="end"),{x:wt,y:Pt}}},{key:"_updateCurrentPositionClass",value:function(wt){var ft,Pt=wt.overlayY,Pe=wt.originX;if((ft="center"===Pt?this._dir&&"rtl"===this._dir.value?"end"===Pe?"left":"right":"start"===Pe?"left":"right":"bottom"===Pt&&"top"===wt.originY?"above":"below")!==this._currentPosition){var ct=this._overlayRef;if(ct){var Ee="".concat(this._cssClassPrefix,"-").concat($,"-");ct.removePanelClass(Ee+this._currentPosition),ct.addPanelClass(Ee+ft)}this._currentPosition=ft}}},{key:"_setupPointerEnterEventsIfNeeded",value:function(){var wt=this;this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",function(){wt._setupPointerExitEventsIfNeeded(),wt.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",function(){wt._setupPointerExitEventsIfNeeded(),clearTimeout(wt._touchstartTimeout),wt._touchstartTimeout=setTimeout(function(){return wt.show()},500)}])),this._addListeners(this._passiveListeners))}},{key:"_setupPointerExitEventsIfNeeded",value:function(){var Pt,wt=this;if(!this._pointerExitEventsInitialized){this._pointerExitEventsInitialized=!0;var Pe=[];if(this._platformSupportsMouseEvents())Pe.push(["mouseleave",function(){return wt.hide()}],["wheel",function(ft){return wt._wheelListener(ft)}]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();var ze=function(){clearTimeout(wt._touchstartTimeout),wt.hide(wt._defaultOptions.touchendHideDelay)};Pe.push(["touchend",ze],["touchcancel",ze])}this._addListeners(Pe),(Pt=this._passiveListeners).push.apply(Pt,Pe)}}},{key:"_addListeners",value:function(wt){var Pt=this;wt.forEach(function(Pe){var ze=(0,e.Z)(Pe,2);Pt._elementRef.nativeElement.addEventListener(ze[0],ze[1],be)})}},{key:"_platformSupportsMouseEvents",value:function(){return!this._platform.IOS&&!this._platform.ANDROID}},{key:"_wheelListener",value:function(wt){if(this._isTooltipVisible()){var Pt=this._document.elementFromPoint(wt.clientX,wt.clientY),Pe=this._elementRef.nativeElement;Pt!==Pe&&!Pe.contains(Pt)&&this.hide()}}},{key:"_disableNativeGesturesIfNecessary",value:function(){var wt=this.touchGestures;if("off"!==wt){var Pt=this._elementRef.nativeElement,Pe=Pt.style;("on"===wt||"INPUT"!==Pt.nodeName&&"TEXTAREA"!==Pt.nodeName)&&(Pe.userSelect=Pe.msUserSelect=Pe.webkitUserSelect=Pe.MozUserSelect="none"),("on"===wt||!Pt.draggable)&&(Pe.webkitUserDrag="none"),Pe.touchAction="none",Pe.webkitTapHighlightColor="transparent"}}}]),Xe}();return lt.\u0275fac=function(mt){h.$Z()},lt.\u0275dir=h.lG2({type:lt,inputs:{position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),lt}(),_e=function(){var lt=function(Xe){(0,S.Z)(wt,Xe);var mt=(0,t.Z)(wt);function wt(Pt,Pe,ze,ft,ct,Ee,st,nt,at,We,xe,ut){var Fe;return(0,c.Z)(this,wt),(Fe=mt.call(this,Pt,Pe,ze,ft,ct,Ee,st,nt,at,We,xe,ut))._tooltipComponent=ve,Fe}return(0,u.Z)(wt)}(ce);return lt.\u0275fac=function(mt){return new(mt||lt)(h.Y36(o.aV),h.Y36(h.SBq),h.Y36(T.mF),h.Y36(h.s_b),h.Y36(h.R0b),h.Y36(B.t4),h.Y36(_.$s),h.Y36(_.tE),h.Y36(Q),h.Y36(j.Is,8),h.Y36(K,8),h.Y36(s.K0))},lt.\u0275dir=h.lG2({type:lt,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[h.qOj]}),lt}(),Me=function(){var lt=function(){function Xe(mt){(0,c.Z)(this,Xe),this._changeDetectorRef=mt,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new D.x}return(0,u.Z)(Xe,[{key:"show",value:function(wt){var Pt=this;clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(function(){Pt._visibility="visible",Pt._showTimeoutId=void 0,Pt._onShow(),Pt._markForCheck()},wt)}},{key:"hide",value:function(wt){var Pt=this;clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(function(){Pt._visibility="hidden",Pt._hideTimeoutId=void 0,Pt._markForCheck()},wt)}},{key:"afterHidden",value:function(){return this._onHide}},{key:"isVisible",value:function(){return"visible"===this._visibility}},{key:"ngOnDestroy",value:function(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}},{key:"_animationStart",value:function(){this._closeOnInteraction=!1}},{key:"_animationDone",value:function(wt){var Pt=wt.toState;"hidden"===Pt&&!this.isVisible()&&this._onHide.next(),("visible"===Pt||"hidden"===Pt)&&(this._closeOnInteraction=!0)}},{key:"_handleBodyInteraction",value:function(){this._closeOnInteraction&&this.hide(0)}},{key:"_markForCheck",value:function(){this._changeDetectorRef.markForCheck()}},{key:"_onShow",value:function(){}}]),Xe}();return lt.\u0275fac=function(mt){return new(mt||lt)(h.Y36(h.sBO))},lt.\u0275dir=h.lG2({type:lt}),lt}(),ve=function(){var lt=function(Xe){(0,S.Z)(wt,Xe);var mt=(0,t.Z)(wt);function wt(Pt,Pe){var ze;return(0,c.Z)(this,wt),(ze=mt.call(this,Pt))._breakpointObserver=Pe,ze._isHandset=ze._breakpointObserver.observe(q.u3.Handset),ze}return(0,u.Z)(wt)}(Me);return lt.\u0275fac=function(mt){return new(mt||lt)(h.Y36(h.sBO),h.Y36(q.Yg))},lt.\u0275cmp=h.Xpm({type:lt,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(mt,wt){2&mt&&h.Udp("zoom","visible"===wt._visibility?1:null)},features:[h.qOj],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(mt,wt){var Pt;1&mt&&(h.TgZ(0,"div",0),h.NdJ("@state.start",function(){return wt._animationStart()})("@state.done",function(ze){return wt._animationDone(ze)}),h.ALo(1,"async"),h._uU(2),h.qZA()),2&mt&&(h.ekj("mat-tooltip-handset",null==(Pt=h.lcZ(1,5,wt._isHandset))?null:Pt.matches),h.Q6J("ngClass",wt.tooltipClass)("@state",wt._visibility),h.xp6(2),h.Oqu(wt.message))},directives:[s.mk],pipes:[s.Ov],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[le.tooltipState]},changeDetection:0}),lt}(),ue=function(){var lt=(0,u.Z)(function Xe(){(0,c.Z)(this,Xe)});return lt.\u0275fac=function(mt){return new(mt||lt)},lt.\u0275mod=h.oAB({type:lt}),lt.\u0275inj=h.cJS({providers:[te],imports:[[_.rt,s.ez,o.U8,b.BQ],b.BQ,T.ZD]}),lt}()},34972:function(Ce,E,n){"use strict";n.d(E,{GZ:function(){return I},gi:function(){return le},kc:function(){return z},JZ:function(){return be},dp:function(){return $},WX:function(){return d},uo:function(){return D},fQ:function(){return N},Ar:function(){return j},ah:function(){return L},eu:function(){return re}});var S=n(39117),t=n(1884),e=n(97424),c=n(28042),u=n(46751),o=n(56101),_=n(38205),s=n(86613),h=n(1130),b=n(76484),T=n(89502),y=n(76317),Y=n(36646),q=n(59295),B=n(50635),k=(0,h.sb)((0,h.Id)(_.Hs)),D=function(){var Q=function(J){(0,u.Z)(K,J);var te=(0,o.Z)(K);function K(G,ce,_e){var Me;return(0,S.Z)(this,K),(Me=te.call(this,G,ce)).tabIndex=Number(_e)||0,Me}return(0,t.Z)(K,[{key:"ngOnInit",value:function(){(0,e.Z)((0,c.Z)(K.prototype),"ngOnInit",this).call(this)}},{key:"ngOnDestroy",value:function(){(0,e.Z)((0,c.Z)(K.prototype),"ngOnDestroy",this).call(this)}}]),K}(k);return Q.\u0275fac=function(te){return new(te||Q)(s.Y36(s.SBq),s.Y36(_._0),s.$8M("tabindex"))},Q.\u0275dir=s.lG2({type:Q,selectors:[["mat-tree-node"]],hostAttrs:[1,"mat-tree-node"],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[s._Bn([{provide:_.Hs,useExisting:Q}]),s.qOj]}),Q}(),N=function(){var Q=function(J){(0,u.Z)(K,J);var te=(0,o.Z)(K);function K(){return(0,S.Z)(this,K),te.apply(this,arguments)}return(0,t.Z)(K)}(_.rO);return Q.\u0275fac=function(){var J;return function(K){return(J||(J=s.n5z(Q)))(K||Q)}}(),Q.\u0275dir=s.lG2({type:Q,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[s._Bn([{provide:_.rO,useExisting:Q}]),s.qOj]}),Q}(),I=function(){var Q=function(J){(0,u.Z)(K,J);var te=(0,o.Z)(K);function K(G,ce,_e,Me){var ve;return(0,S.Z)(this,K),(ve=te.call(this,G,ce,_e))._disabled=!1,ve.tabIndex=Number(Me)||0,ve}return(0,t.Z)(K,[{key:"disabled",get:function(){return this._disabled},set:function(ce){this._disabled=(0,b.Ig)(ce)}},{key:"tabIndex",get:function(){return this.disabled?-1:this._tabIndex},set:function(ce){this._tabIndex=null!=ce?ce:0}},{key:"ngOnInit",value:function(){(0,e.Z)((0,c.Z)(K.prototype),"ngOnInit",this).call(this)}},{key:"ngAfterContentInit",value:function(){(0,e.Z)((0,c.Z)(K.prototype),"ngAfterContentInit",this).call(this)}},{key:"ngOnDestroy",value:function(){(0,e.Z)((0,c.Z)(K.prototype),"ngOnDestroy",this).call(this)}}]),K}(_.Xx);return Q.\u0275fac=function(te){return new(te||Q)(s.Y36(s.SBq),s.Y36(_._0),s.Y36(s.ZZ4),s.$8M("tabindex"))},Q.\u0275dir=s.lG2({type:Q,selectors:[["mat-nested-tree-node"]],hostAttrs:[1,"mat-nested-tree-node"],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex",node:["matNestedTreeNode","node"]},exportAs:["matNestedTreeNode"],features:[s._Bn([{provide:_.Xx,useExisting:Q},{provide:_.Hs,useExisting:Q},{provide:_.HI,useExisting:Q}]),s.qOj]}),Q}(),L=function(){var Q=function(J){(0,u.Z)(K,J);var te=(0,o.Z)(K);function K(){return(0,S.Z)(this,K),te.apply(this,arguments)}return(0,t.Z)(K,[{key:"level",get:function(){return this._level},set:function(ce){this._setLevelInput(ce)}},{key:"indent",get:function(){return this._indent},set:function(ce){this._setIndentInput(ce)}}]),K}(_.XJ);return Q.\u0275fac=function(){var J;return function(K){return(J||(J=s.n5z(Q)))(K||Q)}}(),Q.\u0275dir=s.lG2({type:Q,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[s._Bn([{provide:_.XJ,useExisting:Q}]),s.qOj]}),Q}(),j=function(){var Q=(0,t.Z)(function J(te,K){(0,S.Z)(this,J),this.viewContainer=te,this._node=K});return Q.\u0275fac=function(te){return new(te||Q)(s.Y36(s.s_b),s.Y36(_.HI,8))},Q.\u0275dir=s.lG2({type:Q,selectors:[["","matTreeNodeOutlet",""]],features:[s._Bn([{provide:_.cu,useExisting:Q}])]}),Q}(),le=function(){var Q=function(J){(0,u.Z)(K,J);var te=(0,o.Z)(K);function K(){return(0,S.Z)(this,K),te.apply(this,arguments)}return(0,t.Z)(K)}(_._0);return Q.\u0275fac=function(){var J;return function(K){return(J||(J=s.n5z(Q)))(K||Q)}}(),Q.\u0275cmp=s.Xpm({type:Q,selectors:[["mat-tree"]],viewQuery:function(te,K){var G;1&te&&s.Gf(j,7),2&te&&s.iGM(G=s.CRH())&&(K._nodeOutlet=G.first)},hostAttrs:["role","tree",1,"mat-tree"],exportAs:["matTree"],features:[s._Bn([{provide:_._0,useExisting:Q}]),s.qOj],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(te,K){1&te&&s.GkF(0,0)},directives:[j],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),Q}(),re=function(){var Q=function(J){(0,u.Z)(K,J);var te=(0,o.Z)(K);function K(){return(0,S.Z)(this,K),te.apply(this,arguments)}return(0,t.Z)(K)}(_.Ud);return Q.\u0275fac=function(){var J;return function(K){return(J||(J=s.n5z(Q)))(K||Q)}}(),Q.\u0275dir=s.lG2({type:Q,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[s._Bn([{provide:_.Ud,useExisting:Q}]),s.qOj]}),Q}(),$=function(){var Q=(0,t.Z)(function J(){(0,S.Z)(this,J)});return Q.\u0275fac=function(te){return new(te||Q)},Q.\u0275mod=s.oAB({type:Q}),Q.\u0275inj=s.cJS({imports:[[_.nZ,h.BQ],h.BQ]}),Q}(),be=function(){function Q(J,te,K,G){(0,S.Z)(this,Q),this.transformFunction=J,this.getLevel=te,this.isExpandable=K,this.getChildren=G}return(0,t.Z)(Q,[{key:"_flattenNode",value:function(te,K,G,ce){var _e=this,Me=this.transformFunction(te,K);if(G.push(Me),this.isExpandable(Me)){var ve=this.getChildren(te);ve&&(Array.isArray(ve)?this._flattenChildren(ve,K,G,ce):ve.pipe((0,q.q)(1)).subscribe(function(ue){_e._flattenChildren(ue,K,G,ce)}))}return G}},{key:"_flattenChildren",value:function(te,K,G,ce){var _e=this;te.forEach(function(Me,ve){var ue=ce.slice();ue.push(ve!=te.length-1),_e._flattenNode(Me,K+1,G,ue)})}},{key:"flattenNodes",value:function(te){var K=this,G=[];return te.forEach(function(ce){return K._flattenNode(ce,0,G,[])}),G}},{key:"expandFlattenedNodes",value:function(te,K){var G=this,ce=[],_e=[];return _e[0]=!0,te.forEach(function(Me){for(var ve=!0,ue=0;ue<=G.getLevel(Me);ue++)ve=ve&&_e[ue];ve&&ce.push(Me),G.isExpandable(Me)&&(_e[G.getLevel(Me)+1]=K.isExpanded(Me))}),ce}}]),Q}(),z=function(Q){(0,u.Z)(te,Q);var J=(0,o.Z)(te);function te(K,G,ce){var _e;return(0,S.Z)(this,te),(_e=J.call(this))._treeControl=K,_e._treeFlattener=G,_e._flattenedData=new y.X([]),_e._expandedData=new y.X([]),_e._data=new y.X([]),ce&&(_e.data=ce),_e}return(0,t.Z)(te,[{key:"data",get:function(){return this._data.value},set:function(G){this._data.next(G),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}},{key:"connect",value:function(G){var ce=this;return(0,Y.T)(G.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe((0,B.U)(function(){return ce._expandedData.next(ce._treeFlattener.expandFlattenedNodes(ce._flattenedData.value,ce._treeControl)),ce._expandedData.value}))}},{key:"disconnect",value:function(){}}]),te}(T.o2),d=function(Q){(0,u.Z)(te,Q);var J=(0,o.Z)(te);function te(){var K;return(0,S.Z)(this,te),(K=J.apply(this,arguments))._data=new y.X([]),K}return(0,t.Z)(te,[{key:"data",get:function(){return this._data.value},set:function(G){this._data.next(G)}},{key:"connect",value:function(G){var ce=this;return Y.T.apply(void 0,[G.viewChange,this._data]).pipe((0,B.U)(function(){return ce.data}))}},{key:"disconnect",value:function(){}}]),te}(T.o2)},57481:function(Ce,E,n){"use strict";n.d(E,{Qb:function(){return Ea},PW:function(){return Cr}});var S=n(78170),t=n(39117),e=n(1884),c=n(46751),u=n(56101),o=n(86613),_=n(50318),s=n(31631),h=n(44014),b=n(71340);function T(){return"undefined"!=typeof window&&void 0!==window.document}function y(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function Y(Lt){switch(Lt.length){case 0:return new s.ZN;case 1:return Lt[0];default:return new s.ZE(Lt)}}function q(Lt,dt,ge,ke){var gt=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},de=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},we=[],Qe=[],Ge=-1,Mt=null;if(ke.forEach(function(yn){var Ln=yn.offset,ei=Ln==Ge,li=ei&&Mt||{};Object.keys(yn).forEach(function(Si){var Ai=Si,Fi=yn[Si];if("offset"!==Si)switch(Ai=dt.normalizePropertyName(Ai,we),Fi){case s.k1:Fi=gt[Si];break;case s.l3:Fi=de[Si];break;default:Fi=dt.normalizeStyleValue(Si,Ai,Fi,we)}li[Ai]=Fi}),ei||Qe.push(li),Mt=li,Ge=Ln}),we.length){var Nt="\n - ";throw new Error("Unable to animate due to the following errors:".concat(Nt).concat(we.join(Nt)))}return Qe}function B(Lt,dt,ge,ke){switch(dt){case"start":Lt.onStart(function(){return ke(ge&&k(ge,"start",Lt))});break;case"done":Lt.onDone(function(){return ke(ge&&k(ge,"done",Lt))});break;case"destroy":Lt.onDestroy(function(){return ke(ge&&k(ge,"destroy",Lt))})}}function k(Lt,dt,ge){var ke=ge.totalTime,de=D(Lt.element,Lt.triggerName,Lt.fromState,Lt.toState,dt||Lt.phaseName,null==ke?Lt.totalTime:ke,!!ge.disabled),we=Lt._data;return null!=we&&(de._data=we),de}function D(Lt,dt,ge,ke){var gt=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",de=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,we=arguments.length>6?arguments[6]:void 0;return{element:Lt,triggerName:dt,fromState:ge,toState:ke,phaseName:gt,totalTime:de,disabled:!!we}}function N(Lt,dt,ge){var ke;return Lt instanceof Map?(ke=Lt.get(dt))||Lt.set(dt,ke=ge):(ke=Lt[dt])||(ke=Lt[dt]=ge),ke}function I(Lt){var dt=Lt.indexOf(":");return[Lt.substring(1,dt),Lt.substr(dt+1)]}var L=function(dt,ge){return!1},j=function(dt,ge,ke){return[]};(y()||"undefined"!=typeof Element)&&(L=T()?function(dt,ge){for(;ge&&ge!==document.documentElement;){if(ge===dt)return!0;ge=ge.parentNode||ge.host}return!1}:function(dt,ge){return dt.contains(ge)},j=function(dt,ge,ke){if(ke)return Array.from(dt.querySelectorAll(ge));var gt=dt.querySelector(ge);return gt?[gt]:[]});var W=null,$=!1;function be(Lt){W||(W=function z(){return"undefined"!=typeof document?document.body:null}()||{},$=!!W.style&&"WebkitAppearance"in W.style);var dt=!0;return W.style&&!function re(Lt){return"ebkit"==Lt.substring(1,6)}(Lt)&&!(dt=Lt in W.style)&&$&&(dt="Webkit"+Lt.charAt(0).toUpperCase()+Lt.substr(1)in W.style),dt}var d=L,Q=j,te=function(){var Lt=function(){function dt(){(0,t.Z)(this,dt)}return(0,e.Z)(dt,[{key:"validateStyleProperty",value:function(ke){return be(ke)}},{key:"matchesElement",value:function(ke,gt){return!1}},{key:"containsElement",value:function(ke,gt){return d(ke,gt)}},{key:"query",value:function(ke,gt,de){return Q(ke,gt,de)}},{key:"computeStyle",value:function(ke,gt,de){return de||""}},{key:"animate",value:function(ke,gt,de,we,Qe){return new s.ZN(de,we)}}]),dt}();return Lt.\u0275fac=function(ge){return new(ge||Lt)},Lt.\u0275prov=o.Yz7({token:Lt,factory:Lt.\u0275fac}),Lt}(),K=function(){var Lt=(0,e.Z)(function dt(){(0,t.Z)(this,dt)});return Lt.NOOP=new te,Lt}(),Me="ng-enter",ve="ng-leave",ue="ng-trigger",lt=".ng-trigger",Xe="ng-animating",mt=".ng-animating";function wt(Lt){if("number"==typeof Lt)return Lt;var dt=Lt.match(/^(-?[\.\d]+)(m?s)/);return!dt||dt.length<2?0:Pt(parseFloat(dt[1]),dt[2])}function Pt(Lt,dt){return"s"===dt?1e3*Lt:Lt}function Pe(Lt,dt,ge){return Lt.hasOwnProperty("duration")?Lt:function ze(Lt,dt,ge){var gt,de=0,we="";if("string"==typeof Lt){var Qe=Lt.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===Qe)return dt.push('The provided timing value "'.concat(Lt,'" is invalid.')),{duration:0,delay:0,easing:""};gt=Pt(parseFloat(Qe[1]),Qe[2]);var Ge=Qe[3];null!=Ge&&(de=Pt(parseFloat(Ge),Qe[4]));var Mt=Qe[5];Mt&&(we=Mt)}else gt=Lt;if(!ge){var Nt=!1,yn=dt.length;gt<0&&(dt.push("Duration values below 0 are not allowed for this animation step."),Nt=!0),de<0&&(dt.push("Delay values below 0 are not allowed for this animation step."),Nt=!0),Nt&&dt.splice(yn,0,'The provided timing value "'.concat(Lt,'" is invalid.'))}return{duration:gt,delay:de,easing:we}}(Lt,dt,ge)}function ft(Lt){var dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(Lt).forEach(function(ge){dt[ge]=Lt[ge]}),dt}function Ee(Lt,dt){var ge=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(dt)for(var ke in Lt)ge[ke]=Lt[ke];else ft(Lt,ge);return ge}function st(Lt,dt,ge){return ge?dt+":"+ge+";":""}function nt(Lt){for(var dt="",ge=0;ge *";case":leave":return"* => void";case":increment":return function(ge,ke){return parseFloat(ke)>parseFloat(ge)};case":decrement":return function(ge,ke){return parseFloat(ke) *"}}(Lt,ge);if("function"==typeof ke)return void dt.push(ke);Lt=ke}var gt=Lt.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==gt||gt.length<4)return ge.push('The provided transition expression "'.concat(Lt,'" is not supported')),dt;var de=gt[1],we=gt[2],Qe=gt[3];dt.push(Xt(de,Qe)),"<"==we[0]&&!("*"==de&&"*"==Qe)&&dt.push(Xt(Qe,de))}(ke,ge,dt)}):ge.push(Lt),ge}var Ft=new Set(["true","1"]),sn=new Set(["false","0"]);function Xt(Lt,dt){var ge=Ft.has(Lt)||sn.has(Lt),ke=Ft.has(dt)||sn.has(dt);return function(gt,de){var we="*"==Lt||Lt==gt,Qe="*"==dt||dt==de;return!we&&ge&&"boolean"==typeof gt&&(we=gt?Ft.has(Lt):sn.has(Lt)),!Qe&&ke&&"boolean"==typeof de&&(Qe=de?Ft.has(dt):sn.has(dt)),we&&Qe}}var vn=new RegExp("s*".concat(":self","s*,?"),"g");function hn(Lt,dt,ge){return new Jn(Lt).build(dt,ge)}var Jn=function(){function Lt(dt){(0,t.Z)(this,Lt),this._driver=dt}return(0,e.Z)(Lt,[{key:"build",value:function(ge,ke){var gt=new un(ke);return this._resetContextStyleTimingState(gt),X(this,xe(ge),gt)}},{key:"_resetContextStyleTimingState",value:function(ge){ge.currentQuerySelector="",ge.collectedStyles={},ge.collectedStyles[""]={},ge.currentTime=0}},{key:"visitTrigger",value:function(ge,ke){var gt=this,de=ke.queryCount=0,we=ke.depCount=0,Qe=[],Ge=[];return"@"==ge.name.charAt(0)&&ke.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),ge.definitions.forEach(function(Mt){if(gt._resetContextStyleTimingState(ke),0==Mt.type){var Nt=Mt,yn=Nt.name;yn.toString().split(/\s*,\s*/).forEach(function(ei){Nt.name=ei,Qe.push(gt.visitState(Nt,ke))}),Nt.name=yn}else if(1==Mt.type){var Ln=gt.visitTransition(Mt,ke);de+=Ln.queryCount,we+=Ln.depCount,Ge.push(Ln)}else ke.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:ge.name,states:Qe,transitions:Ge,queryCount:de,depCount:we,options:null}}},{key:"visitState",value:function(ge,ke){var gt=this.visitStyle(ge.styles,ke),de=ge.options&&ge.options.params||null;if(gt.containsDynamicStyles){var we=new Set,Qe=de||{};if(gt.styles.forEach(function(Mt){if(zt(Mt)){var Nt=Mt;Object.keys(Nt).forEach(function(yn){et(Nt[yn]).forEach(function(Ln){Qe.hasOwnProperty(Ln)||we.add(Ln)})})}}),we.size){var Ge=nn(we.values());ke.errors.push('state("'.concat(ge.name,'", ...) must define default values for all the following style substitutions: ').concat(Ge.join(", ")))}}return{type:0,name:ge.name,style:gt,options:de?{params:de}:null}}},{key:"visitTransition",value:function(ge,ke){ke.queryCount=0,ke.depCount=0;var gt=X(this,xe(ge.animation),ke);return{type:1,matchers:Oe(ge.expr,ke.errors),animation:gt,queryCount:ke.queryCount,depCount:ke.depCount,options:pt(ge.options)}}},{key:"visitSequence",value:function(ge,ke){var gt=this;return{type:2,steps:ge.steps.map(function(de){return X(gt,de,ke)}),options:pt(ge.options)}}},{key:"visitGroup",value:function(ge,ke){var gt=this,de=ke.currentTime,we=0,Qe=ge.steps.map(function(Ge){ke.currentTime=de;var Mt=X(gt,Ge,ke);return we=Math.max(we,ke.currentTime),Mt});return ke.currentTime=we,{type:3,steps:Qe,options:pt(ge.options)}}},{key:"visitAnimate",value:function(ge,ke){var gt=function qe(Lt,dt){var ge=null;if(Lt.hasOwnProperty("duration"))ge=Lt;else if("number"==typeof Lt)return Ne(Pe(Lt,dt).duration,0,"");var gt=Lt,de=gt.split(/\s+/).some(function(Qe){return"{"==Qe.charAt(0)&&"{"==Qe.charAt(1)});if(de){var we=Ne(0,0,"");return we.dynamic=!0,we.strValue=gt,we}return Ne((ge=ge||Pe(gt,dt)).duration,ge.delay,ge.easing)}(ge.timings,ke.errors);ke.currentAnimateTimings=gt;var de,we=ge.styles?ge.styles:(0,s.oB)({});if(5==we.type)de=this.visitKeyframes(we,ke);else{var Qe=ge.styles,Ge=!1;if(!Qe){Ge=!0;var Mt={};gt.easing&&(Mt.easing=gt.easing),Qe=(0,s.oB)(Mt)}ke.currentTime+=gt.duration+gt.delay;var Nt=this.visitStyle(Qe,ke);Nt.isEmptyStep=Ge,de=Nt}return ke.currentAnimateTimings=null,{type:4,timings:gt,style:de,options:null}}},{key:"visitStyle",value:function(ge,ke){var gt=this._makeStyleAst(ge,ke);return this._validateStyleAst(gt,ke),gt}},{key:"_makeStyleAst",value:function(ge,ke){var gt=[];Array.isArray(ge.styles)?ge.styles.forEach(function(Qe){"string"==typeof Qe?Qe==s.l3?gt.push(Qe):ke.errors.push("The provided style string value ".concat(Qe," is not allowed.")):gt.push(Qe)}):gt.push(ge.styles);var de=!1,we=null;return gt.forEach(function(Qe){if(zt(Qe)){var Ge=Qe,Mt=Ge.easing;if(Mt&&(we=Mt,delete Ge.easing),!de)for(var Nt in Ge)if(Ge[Nt].toString().indexOf("{{")>=0){de=!0;break}}}),{type:6,styles:gt,easing:we,offset:ge.offset,containsDynamicStyles:de,options:null}}},{key:"_validateStyleAst",value:function(ge,ke){var gt=this,de=ke.currentAnimateTimings,we=ke.currentTime,Qe=ke.currentTime;de&&Qe>0&&(Qe-=de.duration+de.delay),ge.styles.forEach(function(Ge){"string"!=typeof Ge&&Object.keys(Ge).forEach(function(Mt){if(gt._driver.validateStyleProperty(Mt)){var Nt=ke.collectedStyles[ke.currentQuerySelector],yn=Nt[Mt],Ln=!0;yn&&(Qe!=we&&Qe>=yn.startTime&&we<=yn.endTime&&(ke.errors.push('The CSS property "'.concat(Mt,'" that exists between the times of "').concat(yn.startTime,'ms" and "').concat(yn.endTime,'ms" is also being animated in a parallel animation between the times of "').concat(Qe,'ms" and "').concat(we,'ms"')),Ln=!1),Qe=yn.startTime),Ln&&(Nt[Mt]={startTime:Qe,endTime:we}),ke.options&&function ut(Lt,dt,ge){var ke=dt.params||{},gt=et(Lt);gt.length&>.forEach(function(de){ke.hasOwnProperty(de)||ge.push("Unable to resolve the local animation param ".concat(de," in the given list of values"))})}(Ge[Mt],ke.options,ke.errors)}else ke.errors.push('The provided animation property "'.concat(Mt,'" is not a supported CSS property for animations'))})})}},{key:"visitKeyframes",value:function(ge,ke){var gt=this,de={type:5,styles:[],options:null};if(!ke.currentAnimateTimings)return ke.errors.push("keyframes() must be placed inside of a call to animate()"),de;var Qe=0,Ge=[],Mt=!1,Nt=!1,yn=0,Ln=ge.steps.map(function(ot){var yt=gt._makeStyleAst(ot,ke),St=null!=yt.offset?yt.offset:function mn(Lt){if("string"==typeof Lt)return null;var dt=null;if(Array.isArray(Lt))Lt.forEach(function(ke){if(zt(ke)&&ke.hasOwnProperty("offset")){var gt=ke;dt=parseFloat(gt.offset),delete gt.offset}});else if(zt(Lt)&&Lt.hasOwnProperty("offset")){var ge=Lt;dt=parseFloat(ge.offset),delete ge.offset}return dt}(yt.styles),ie=0;return null!=St&&(Qe++,ie=yt.offset=St),Nt=Nt||ie<0||ie>1,Mt=Mt||ie0&&Qe0?yt==Si?1:li*yt:Ge[yt],ie=St*Ma;ke.currentTime=Ai+Fi.delay+ie,Fi.duration=ie,gt._validateStyleAst(ot,ke),ot.offset=St,de.styles.push(ot)}),de}},{key:"visitReference",value:function(ge,ke){return{type:8,animation:X(this,xe(ge.animation),ke),options:pt(ge.options)}}},{key:"visitAnimateChild",value:function(ge,ke){return ke.depCount++,{type:9,options:pt(ge.options)}}},{key:"visitAnimateRef",value:function(ge,ke){return{type:10,animation:this.visitReference(ge.animation,ke),options:pt(ge.options)}}},{key:"visitQuery",value:function(ge,ke){var gt=ke.currentQuerySelector,de=ge.options||{};ke.queryCount++,ke.currentQuery=ge;var we=function oi(Lt){var dt=!!Lt.split(/\s*,\s*/).find(function(ge){return":self"==ge});return dt&&(Lt=Lt.replace(vn,"")),Lt=Lt.replace(/@\*/g,lt).replace(/@\w+/g,function(ge){return lt+"-"+ge.substr(1)}).replace(/:animating/g,mt),[Lt,dt]}(ge.selector),Qe=(0,S.Z)(we,2),Ge=Qe[0],Mt=Qe[1];ke.currentQuerySelector=gt.length?gt+" "+Ge:Ge,N(ke.collectedStyles,ke.currentQuerySelector,{});var Nt=X(this,xe(ge.animation),ke);return ke.currentQuery=null,ke.currentQuerySelector=gt,{type:11,selector:Ge,limit:de.limit||0,optional:!!de.optional,includeSelf:Mt,animation:Nt,originalSelector:ge.selector,options:pt(ge.options)}}},{key:"visitStagger",value:function(ge,ke){ke.currentQuery||ke.errors.push("stagger() can only be used inside of query()");var gt="full"===ge.timings?{duration:0,delay:0,easing:"full"}:Pe(ge.timings,ke.errors,!0);return{type:12,animation:X(this,xe(ge.animation),ke),timings:gt,options:null}}}]),Lt}(),un=(0,e.Z)(function Lt(dt){(0,t.Z)(this,Lt),this.errors=dt,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null});function zt(Lt){return!Array.isArray(Lt)&&"object"==typeof Lt}function pt(Lt){return Lt?(Lt=ft(Lt)).params&&(Lt.params=function ri(Lt){return Lt?ft(Lt):null}(Lt.params)):Lt={},Lt}function Ne(Lt,dt,ge){return{duration:Lt,delay:dt,easing:ge}}function Re(Lt,dt,ge,ke,gt,de){var we=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,Qe=arguments.length>7&&void 0!==arguments[7]&&arguments[7];return{type:1,element:Lt,keyframes:dt,preStyleProps:ge,postStyleProps:ke,duration:gt,delay:de,totalTime:gt+de,easing:we,subTimeline:Qe}}var tt=function(){function Lt(){(0,t.Z)(this,Lt),this._map=new Map}return(0,e.Z)(Lt,[{key:"get",value:function(ge){return this._map.get(ge)||[]}},{key:"append",value:function(ge,ke){var gt,de=this._map.get(ge);de||this._map.set(ge,de=[]),(gt=de).push.apply(gt,(0,b.Z)(ke))}},{key:"has",value:function(ge){return this._map.has(ge)}},{key:"clear",value:function(){this._map.clear()}}]),Lt}(),Rt=new RegExp(":enter","g"),Nn=new RegExp(":leave","g");function $t(Lt,dt,ge,ke,gt){var de=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},we=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},Qe=arguments.length>7?arguments[7]:void 0,Ge=arguments.length>8?arguments[8]:void 0,Mt=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];return(new fn).buildKeyframes(Lt,dt,ge,ke,gt,de,we,Qe,Ge,Mt)}var fn=function(){function Lt(){(0,t.Z)(this,Lt)}return(0,e.Z)(Lt,[{key:"buildKeyframes",value:function(ge,ke,gt,de,we,Qe,Ge,Mt,Nt){var yn=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];Nt=Nt||new tt;var Ln=new _n(ge,ke,Nt,de,we,yn,[]);Ln.options=Mt,Ln.currentTimeline.setStyles([Qe],null,Ln.errors,Mt),X(this,gt,Ln);var ei=Ln.timelines.filter(function(Fi){return Fi.containsAnimation()});if(Object.keys(Ge).length){for(var li,Si=ei.length-1;Si>=0;Si--){var Ai=ei[Si];if(Ai.element===ke){li=Ai;break}}li&&!li.allowOnlyTimelineStyles()&&li.setStyles([Ge],null,Ln.errors,Mt)}return ei.length?ei.map(function(Fi){return Fi.buildKeyframes()}):[Re(ke,[],[],[],0,0,"",!1)]}},{key:"visitTrigger",value:function(ge,ke){}},{key:"visitState",value:function(ge,ke){}},{key:"visitTransition",value:function(ge,ke){}},{key:"visitAnimateChild",value:function(ge,ke){var gt=ke.subInstructions.get(ke.element);if(gt){var de=ke.createSubContext(ge.options),we=ke.currentTimeline.currentTime,Qe=this._visitSubInstructions(gt,de,de.options);we!=Qe&&ke.transformIntoNewTimeline(Qe)}ke.previousNode=ge}},{key:"visitAnimateRef",value:function(ge,ke){var gt=ke.createSubContext(ge.options);gt.transformIntoNewTimeline(),this.visitReference(ge.animation,gt),ke.transformIntoNewTimeline(gt.currentTimeline.currentTime),ke.previousNode=ge}},{key:"_visitSubInstructions",value:function(ge,ke,gt){var we=ke.currentTimeline.currentTime,Qe=null!=gt.duration?wt(gt.duration):null,Ge=null!=gt.delay?wt(gt.delay):null;return 0!==Qe&&ge.forEach(function(Mt){var Nt=ke.appendInstructionToTimeline(Mt,Qe,Ge);we=Math.max(we,Nt.duration+Nt.delay)}),we}},{key:"visitReference",value:function(ge,ke){ke.updateOptions(ge.options,!0),X(this,ge.animation,ke),ke.previousNode=ge}},{key:"visitSequence",value:function(ge,ke){var gt=this,de=ke.subContextCount,we=ke,Qe=ge.options;if(Qe&&(Qe.params||Qe.delay)&&((we=ke.createSubContext(Qe)).transformIntoNewTimeline(),null!=Qe.delay)){6==we.previousNode.type&&(we.currentTimeline.snapshotCurrentStyles(),we.previousNode=ln);var Ge=wt(Qe.delay);we.delayNextStep(Ge)}ge.steps.length&&(ge.steps.forEach(function(Mt){return X(gt,Mt,we)}),we.currentTimeline.applyStylesToKeyframe(),we.subContextCount>de&&we.transformIntoNewTimeline()),ke.previousNode=ge}},{key:"visitGroup",value:function(ge,ke){var gt=this,de=[],we=ke.currentTimeline.currentTime,Qe=ge.options&&ge.options.delay?wt(ge.options.delay):0;ge.steps.forEach(function(Ge){var Mt=ke.createSubContext(ge.options);Qe&&Mt.delayNextStep(Qe),X(gt,Ge,Mt),we=Math.max(we,Mt.currentTimeline.currentTime),de.push(Mt.currentTimeline)}),de.forEach(function(Ge){return ke.currentTimeline.mergeTimelineCollectedStyles(Ge)}),ke.transformIntoNewTimeline(we),ke.previousNode=ge}},{key:"_visitTiming",value:function(ge,ke){if(ge.dynamic){var gt=ge.strValue;return Pe(ke.params?Ht(gt,ke.params,ke.errors):gt,ke.errors)}return{duration:ge.duration,delay:ge.delay,easing:ge.easing}}},{key:"visitAnimate",value:function(ge,ke){var gt=ke.currentAnimateTimings=this._visitTiming(ge.timings,ke),de=ke.currentTimeline;gt.delay&&(ke.incrementTime(gt.delay),de.snapshotCurrentStyles());var we=ge.style;5==we.type?this.visitKeyframes(we,ke):(ke.incrementTime(gt.duration),this.visitStyle(we,ke),de.applyStylesToKeyframe()),ke.currentAnimateTimings=null,ke.previousNode=ge}},{key:"visitStyle",value:function(ge,ke){var gt=ke.currentTimeline,de=ke.currentAnimateTimings;!de&>.getCurrentStyleProperties().length&>.forwardFrame();var we=de&&de.easing||ge.easing;ge.isEmptyStep?gt.applyEmptyStep(we):gt.setStyles(ge.styles,we,ke.errors,ke.options),ke.previousNode=ge}},{key:"visitKeyframes",value:function(ge,ke){var gt=ke.currentAnimateTimings,de=ke.currentTimeline.duration,we=gt.duration,Ge=ke.createSubContext().currentTimeline;Ge.easing=gt.easing,ge.styles.forEach(function(Mt){Ge.forwardTime((Mt.offset||0)*we),Ge.setStyles(Mt.styles,Mt.easing,ke.errors,ke.options),Ge.applyStylesToKeyframe()}),ke.currentTimeline.mergeTimelineCollectedStyles(Ge),ke.transformIntoNewTimeline(de+we),ke.previousNode=ge}},{key:"visitQuery",value:function(ge,ke){var gt=this,de=ke.currentTimeline.currentTime,we=ge.options||{},Qe=we.delay?wt(we.delay):0;Qe&&(6===ke.previousNode.type||0==de&&ke.currentTimeline.getCurrentStyleProperties().length)&&(ke.currentTimeline.snapshotCurrentStyles(),ke.previousNode=ln);var Ge=de,Mt=ke.invokeQuery(ge.selector,ge.originalSelector,ge.limit,ge.includeSelf,!!we.optional,ke.errors);ke.currentQueryTotal=Mt.length;var Nt=null;Mt.forEach(function(yn,Ln){ke.currentQueryIndex=Ln;var ei=ke.createSubContext(ge.options,yn);Qe&&ei.delayNextStep(Qe),yn===ke.element&&(Nt=ei.currentTimeline),X(gt,ge.animation,ei),ei.currentTimeline.applyStylesToKeyframe(),Ge=Math.max(Ge,ei.currentTimeline.currentTime)}),ke.currentQueryIndex=0,ke.currentQueryTotal=0,ke.transformIntoNewTimeline(Ge),Nt&&(ke.currentTimeline.mergeTimelineCollectedStyles(Nt),ke.currentTimeline.snapshotCurrentStyles()),ke.previousNode=ge}},{key:"visitStagger",value:function(ge,ke){var gt=ke.parentContext,de=ke.currentTimeline,we=ge.timings,Qe=Math.abs(we.duration),Ge=Qe*(ke.currentQueryTotal-1),Mt=Qe*ke.currentQueryIndex;switch(we.duration<0?"reverse":we.easing){case"reverse":Mt=Ge-Mt;break;case"full":Mt=gt.currentStaggerTime}var yn=ke.currentTimeline;Mt&&yn.delayNextStep(Mt);var Ln=yn.currentTime;X(this,ge.animation,ke),ke.previousNode=ge,gt.currentStaggerTime=de.currentTime-Ln+(de.startTime-gt.currentTimeline.startTime)}}]),Lt}(),ln={},_n=function(){function Lt(dt,ge,ke,gt,de,we,Qe,Ge){(0,t.Z)(this,Lt),this._driver=dt,this.element=ge,this.subInstructions=ke,this._enterClassName=gt,this._leaveClassName=de,this.errors=we,this.timelines=Qe,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=ln,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=Ge||new xn(this._driver,ge,0),Qe.push(this.currentTimeline)}return(0,e.Z)(Lt,[{key:"params",get:function(){return this.options.params}},{key:"updateOptions",value:function(ge,ke){var gt=this;if(ge){var de=ge,we=this.options;null!=de.duration&&(we.duration=wt(de.duration)),null!=de.delay&&(we.delay=wt(de.delay));var Qe=de.params;if(Qe){var Ge=we.params;Ge||(Ge=this.options.params={}),Object.keys(Qe).forEach(function(Mt){(!ke||!Ge.hasOwnProperty(Mt))&&(Ge[Mt]=Ht(Qe[Mt],Ge,gt.errors))})}}}},{key:"_copyOptions",value:function(){var ge={};if(this.options){var ke=this.options.params;if(ke){var gt=ge.params={};Object.keys(ke).forEach(function(de){gt[de]=ke[de]})}}return ge}},{key:"createSubContext",value:function(){var ge=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,ke=arguments.length>1?arguments[1]:void 0,gt=arguments.length>2?arguments[2]:void 0,de=ke||this.element,we=new Lt(this._driver,de,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(de,gt||0));return we.previousNode=this.previousNode,we.currentAnimateTimings=this.currentAnimateTimings,we.options=this._copyOptions(),we.updateOptions(ge),we.currentQueryIndex=this.currentQueryIndex,we.currentQueryTotal=this.currentQueryTotal,we.parentContext=this,this.subContextCount++,we}},{key:"transformIntoNewTimeline",value:function(ge){return this.previousNode=ln,this.currentTimeline=this.currentTimeline.fork(this.element,ge),this.timelines.push(this.currentTimeline),this.currentTimeline}},{key:"appendInstructionToTimeline",value:function(ge,ke,gt){var de={duration:null!=ke?ke:ge.duration,delay:this.currentTimeline.currentTime+(null!=gt?gt:0)+ge.delay,easing:""},we=new In(this._driver,ge.element,ge.keyframes,ge.preStyleProps,ge.postStyleProps,de,ge.stretchStartingKeyframe);return this.timelines.push(we),de}},{key:"incrementTime",value:function(ge){this.currentTimeline.forwardTime(this.currentTimeline.duration+ge)}},{key:"delayNextStep",value:function(ge){ge>0&&this.currentTimeline.delayNextStep(ge)}},{key:"invokeQuery",value:function(ge,ke,gt,de,we,Qe){var Ge=[];if(de&&Ge.push(this.element),ge.length>0){ge=(ge=ge.replace(Rt,"."+this._enterClassName)).replace(Nn,"."+this._leaveClassName);var Nt=this._driver.query(this.element,ge,1!=gt);0!==gt&&(Nt=gt<0?Nt.slice(Nt.length+gt,Nt.length):Nt.slice(0,gt)),Ge.push.apply(Ge,(0,b.Z)(Nt))}return!we&&0==Ge.length&&Qe.push('`query("'.concat(ke,'")` returned zero elements. (Use `query("').concat(ke,'", { optional: true })` if you wish to allow this.)')),Ge}}]),Lt}(),xn=function(){function Lt(dt,ge,ke,gt){(0,t.Z)(this,Lt),this._driver=dt,this.element=ge,this.startTime=ke,this._elementTimelineStylesLookup=gt,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(ge),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(ge,this._localTimelineStyles)),this._loadKeyframe()}return(0,e.Z)(Lt,[{key:"containsAnimation",value:function(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}},{key:"getCurrentStyleProperties",value:function(){return Object.keys(this._currentKeyframe)}},{key:"currentTime",get:function(){return this.startTime+this.duration}},{key:"delayNextStep",value:function(ge){var ke=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||ke?(this.forwardTime(this.currentTime+ge),ke&&this.snapshotCurrentStyles()):this.startTime+=ge}},{key:"fork",value:function(ge,ke){return this.applyStylesToKeyframe(),new Lt(this._driver,ge,ke||this.currentTime,this._elementTimelineStylesLookup)}},{key:"_loadKeyframe",value:function(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}},{key:"forwardFrame",value:function(){this.duration+=1,this._loadKeyframe()}},{key:"forwardTime",value:function(ge){this.applyStylesToKeyframe(),this.duration=ge,this._loadKeyframe()}},{key:"_updateStyle",value:function(ge,ke){this._localTimelineStyles[ge]=ke,this._globalTimelineStyles[ge]=ke,this._styleSummary[ge]={time:this.currentTime,value:ke}}},{key:"allowOnlyTimelineStyles",value:function(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}},{key:"applyEmptyStep",value:function(ge){var ke=this;ge&&(this._previousKeyframe.easing=ge),Object.keys(this._globalTimelineStyles).forEach(function(gt){ke._backFill[gt]=ke._globalTimelineStyles[gt]||s.l3,ke._currentKeyframe[gt]=s.l3}),this._currentEmptyStepKeyframe=this._currentKeyframe}},{key:"setStyles",value:function(ge,ke,gt,de){var we=this;ke&&(this._previousKeyframe.easing=ke);var Qe=de&&de.params||{},Ge=function mi(Lt,dt){var ke,ge={};return Lt.forEach(function(gt){"*"===gt?(ke=ke||Object.keys(dt)).forEach(function(de){ge[de]=s.l3}):Ee(gt,!1,ge)}),ge}(ge,this._globalTimelineStyles);Object.keys(Ge).forEach(function(Mt){var Nt=Ht(Ge[Mt],Qe,gt);we._pendingStyles[Mt]=Nt,we._localTimelineStyles.hasOwnProperty(Mt)||(we._backFill[Mt]=we._globalTimelineStyles.hasOwnProperty(Mt)?we._globalTimelineStyles[Mt]:s.l3),we._updateStyle(Mt,Nt)})}},{key:"applyStylesToKeyframe",value:function(){var ge=this,ke=this._pendingStyles,gt=Object.keys(ke);0!=gt.length&&(this._pendingStyles={},gt.forEach(function(de){ge._currentKeyframe[de]=ke[de]}),Object.keys(this._localTimelineStyles).forEach(function(de){ge._currentKeyframe.hasOwnProperty(de)||(ge._currentKeyframe[de]=ge._localTimelineStyles[de])}))}},{key:"snapshotCurrentStyles",value:function(){var ge=this;Object.keys(this._localTimelineStyles).forEach(function(ke){var gt=ge._localTimelineStyles[ke];ge._pendingStyles[ke]=gt,ge._updateStyle(ke,gt)})}},{key:"getFinalKeyframe",value:function(){return this._keyframes.get(this.duration)}},{key:"properties",get:function(){var ge=[];for(var ke in this._currentKeyframe)ge.push(ke);return ge}},{key:"mergeTimelineCollectedStyles",value:function(ge){var ke=this;Object.keys(ge._styleSummary).forEach(function(gt){var de=ke._styleSummary[gt],we=ge._styleSummary[gt];(!de||we.time>de.time)&&ke._updateStyle(gt,we.value)})}},{key:"buildKeyframes",value:function(){var ge=this;this.applyStylesToKeyframe();var ke=new Set,gt=new Set,de=1===this._keyframes.size&&0===this.duration,we=[];this._keyframes.forEach(function(yn,Ln){var ei=Ee(yn,!0);Object.keys(ei).forEach(function(li){var Si=ei[li];Si==s.k1?ke.add(li):Si==s.l3&>.add(li)}),de||(ei.offset=Ln/ge.duration),we.push(ei)});var Qe=ke.size?nn(ke.values()):[],Ge=gt.size?nn(gt.values()):[];if(de){var Mt=we[0],Nt=ft(Mt);Mt.offset=0,Nt.offset=1,we=[Mt,Nt]}return Re(this.element,we,Qe,Ge,this.duration,this.startTime,this.easing,!1)}}]),Lt}(),In=function(Lt){(0,c.Z)(ge,Lt);var dt=(0,u.Z)(ge);function ge(ke,gt,de,we,Qe,Ge){var Mt,Nt=arguments.length>6&&void 0!==arguments[6]&&arguments[6];return(0,t.Z)(this,ge),(Mt=dt.call(this,ke,gt,Ge.delay)).keyframes=de,Mt.preStyleProps=we,Mt.postStyleProps=Qe,Mt._stretchStartingKeyframe=Nt,Mt.timings={duration:Ge.duration,delay:Ge.delay,easing:Ge.easing},Mt}return(0,e.Z)(ge,[{key:"containsAnimation",value:function(){return this.keyframes.length>1}},{key:"buildKeyframes",value:function(){var gt=this.keyframes,de=this.timings,we=de.delay,Qe=de.duration,Ge=de.easing;if(this._stretchStartingKeyframe&&we){var Mt=[],Nt=Qe+we,yn=we/Nt,Ln=Ee(gt[0],!1);Ln.offset=0,Mt.push(Ln);var ei=Ee(gt[0],!1);ei.offset=Yn(yn),Mt.push(ei);for(var li=gt.length-1,Si=1;Si<=li;Si++){var Ai=Ee(gt[Si],!1);Ai.offset=Yn((we+Ai.offset*Qe)/Nt),Mt.push(Ai)}Qe=Nt,we=0,Ge="",gt=Mt}return Re(this.element,gt,this.preStyleProps,this.postStyleProps,Qe,we,Ge,!0)}}]),ge}(xn);function Yn(Lt){var dt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,ge=Math.pow(10,dt-1);return Math.round(Lt*ge)/ge}var Bi=(0,e.Z)(function Lt(){(0,t.Z)(this,Lt)}),ka=function(Lt){(0,c.Z)(ge,Lt);var dt=(0,u.Z)(ge);function ge(){return(0,t.Z)(this,ge),dt.apply(this,arguments)}return(0,e.Z)(ge,[{key:"normalizePropertyName",value:function(gt,de){return kt(gt)}},{key:"normalizeStyleValue",value:function(gt,de,we,Qe){var Ge="",Mt=we.toString().trim();if(Ja[de]&&0!==we&&"0"!==we)if("number"==typeof we)Ge="px";else{var Nt=we.match(/^[+-]?[\d\.]+([a-z]*)$/);Nt&&0==Nt[1].length&&Qe.push("Please provide a CSS unit value for ".concat(gt,":").concat(we))}return Mt+Ge}}]),ge}(Bi),Ja=function(){return function _a(Lt){var dt={};return Lt.forEach(function(ge){return dt[ge]=!0}),dt}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(","))}();function nr(Lt,dt,ge,ke,gt,de,we,Qe,Ge,Mt,Nt,yn,Ln){return{type:0,element:Lt,triggerName:dt,isRemovalTransition:gt,fromState:ge,fromStyles:de,toState:ke,toStyles:we,timelines:Qe,queriedElements:Ge,preStyleProps:Mt,postStyleProps:Nt,totalTime:yn,errors:Ln}}var _r={},wa=function(){function Lt(dt,ge,ke){(0,t.Z)(this,Lt),this._triggerName=dt,this.ast=ge,this._stateStyles=ke}return(0,e.Z)(Lt,[{key:"match",value:function(ge,ke,gt,de){return function or(Lt,dt,ge,ke,gt){return Lt.some(function(de){return de(dt,ge,ke,gt)})}(this.ast.matchers,ge,ke,gt,de)}},{key:"buildStyles",value:function(ge,ke,gt){var de=this._stateStyles["*"],we=this._stateStyles[ge],Qe=de?de.buildStyles(ke,gt):{};return we?we.buildStyles(ke,gt):Qe}},{key:"build",value:function(ge,ke,gt,de,we,Qe,Ge,Mt,Nt,yn){var Ln=[],ei=this.ast.options&&this.ast.options.params||_r,Si=this.buildStyles(gt,Ge&&Ge.params||_r,Ln),Ai=Mt&&Mt.params||_r,Fi=this.buildStyles(de,Ai,Ln),Ma=new Set,ot=new Map,yt=new Map,St="void"===de,ie={params:Object.assign(Object.assign({},ei),Ai)},Ye=yn?[]:$t(ge,ke,this.ast.animation,we,Qe,Si,Fi,ie,Nt,Ln),fe=0;if(Ye.forEach(function(bt){fe=Math.max(bt.duration+bt.delay,fe)}),Ln.length)return nr(ke,this._triggerName,gt,de,St,Si,Fi,[],[],ot,yt,fe,Ln);Ye.forEach(function(bt){var xt=bt.element,Jt=N(ot,xt,{});bt.preStyleProps.forEach(function(hi){return Jt[hi]=!0});var zn=N(yt,xt,{});bt.postStyleProps.forEach(function(hi){return zn[hi]=!0}),xt!==ke&&Ma.add(xt)});var oe=nn(Ma.values());return nr(ke,this._triggerName,gt,de,St,Si,Fi,Ye,oe,ot,yt,fe)}}]),Lt}(),Ta=function(){function Lt(dt,ge,ke){(0,t.Z)(this,Lt),this.styles=dt,this.defaultParams=ge,this.normalizer=ke}return(0,e.Z)(Lt,[{key:"buildStyles",value:function(ge,ke){var gt=this,de={},we=ft(this.defaultParams);return Object.keys(ge).forEach(function(Qe){var Ge=ge[Qe];null!=Ge&&(we[Qe]=Ge)}),this.styles.styles.forEach(function(Qe){if("string"!=typeof Qe){var Ge=Qe;Object.keys(Ge).forEach(function(Mt){var Nt=Ge[Mt];Nt.length>1&&(Nt=Ht(Nt,we,ke));var yn=gt.normalizer.normalizePropertyName(Mt,ke);Nt=gt.normalizer.normalizeStyleValue(Mt,yn,Nt,ke),de[yn]=Nt})}}),de}}]),Lt}(),Pn=function(){function Lt(dt,ge,ke){var gt=this;(0,t.Z)(this,Lt),this.name=dt,this.ast=ge,this._normalizer=ke,this.transitionFactories=[],this.states={},ge.states.forEach(function(de){gt.states[de.name]=new Ta(de.style,de.options&&de.options.params||{},ke)}),Le(this.states,"true","1"),Le(this.states,"false","0"),ge.transitions.forEach(function(de){gt.transitionFactories.push(new wa(dt,de,gt.states))}),this.fallbackTransition=function Tt(Lt,dt,ge){return new wa(Lt,{type:1,animation:{type:2,steps:[],options:null},matchers:[function(we,Qe){return!0}],options:null,queryCount:0,depCount:0},dt)}(dt,this.states)}return(0,e.Z)(Lt,[{key:"containsQueries",get:function(){return this.ast.queryCount>0}},{key:"matchTransition",value:function(ge,ke,gt,de){return this.transitionFactories.find(function(Qe){return Qe.match(ge,ke,gt,de)})||null}},{key:"matchStyles",value:function(ge,ke,gt){return this.fallbackTransition.buildStyles(ge,ke,gt)}}]),Lt}();function Le(Lt,dt,ge){Lt.hasOwnProperty(dt)?Lt.hasOwnProperty(ge)||(Lt[ge]=Lt[dt]):Lt.hasOwnProperty(ge)&&(Lt[dt]=Lt[ge])}var qt=new tt,Gt=function(){function Lt(dt,ge,ke){(0,t.Z)(this,Lt),this.bodyNode=dt,this._driver=ge,this._normalizer=ke,this._animations={},this._playersById={},this.players=[]}return(0,e.Z)(Lt,[{key:"register",value:function(ge,ke){var gt=[],de=hn(this._driver,ke,gt);if(gt.length)throw new Error("Unable to build the animation due to the following errors: ".concat(gt.join("\n")));this._animations[ge]=de}},{key:"_buildPlayer",value:function(ge,ke,gt){var de=ge.element,we=q(this._driver,this._normalizer,de,ge.keyframes,ke,gt);return this._driver.animate(de,we,ge.duration,ge.delay,ge.easing,[],!0)}},{key:"create",value:function(ge,ke){var Ge,gt=this,de=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},we=[],Qe=this._animations[ge],Mt=new Map;if(Qe?(Ge=$t(this._driver,ke,Qe,Me,ve,{},{},de,qt,we)).forEach(function(Ln){var ei=N(Mt,Ln.element,{});Ln.postStyleProps.forEach(function(li){return ei[li]=null})}):(we.push("The requested animation doesn't exist or has already been destroyed"),Ge=[]),we.length)throw new Error("Unable to create the animation due to the following errors: ".concat(we.join("\n")));Mt.forEach(function(Ln,ei){Object.keys(Ln).forEach(function(li){Ln[li]=gt._driver.computeStyle(ei,li,s.l3)})});var Nt=Ge.map(function(Ln){var ei=Mt.get(Ln.element);return gt._buildPlayer(Ln,{},ei)}),yn=Y(Nt);return this._playersById[ge]=yn,yn.onDestroy(function(){return gt.destroy(ge)}),this.players.push(yn),yn}},{key:"destroy",value:function(ge){var ke=this._getPlayer(ge);ke.destroy(),delete this._playersById[ge];var gt=this.players.indexOf(ke);gt>=0&&this.players.splice(gt,1)}},{key:"_getPlayer",value:function(ge){var ke=this._playersById[ge];if(!ke)throw new Error("Unable to find the timeline player referenced by ".concat(ge));return ke}},{key:"listen",value:function(ge,ke,gt,de){var we=D(ke,"","","");return B(this._getPlayer(ge),gt,we,de),function(){}}},{key:"command",value:function(ge,ke,gt,de){if("register"!=gt)if("create"!=gt){var Qe=this._getPlayer(ge);switch(gt){case"play":Qe.play();break;case"pause":Qe.pause();break;case"reset":Qe.reset();break;case"restart":Qe.restart();break;case"finish":Qe.finish();break;case"init":Qe.init();break;case"setPosition":Qe.setPosition(parseFloat(de[0]));break;case"destroy":this.destroy(ge)}}else this.create(ge,ke,de[0]||{});else this.register(ge,de[0])}}]),Lt}(),An="ng-animate-queued",vi="ng-animate-disabled",ea="ng-star-inserted",Ii=[],ga={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Ha={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Oa="__ng_removed",Aa=function(){function Lt(dt){var ge=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";(0,t.Z)(this,Lt),this.namespaceId=ge;var ke=dt&&dt.hasOwnProperty("value"),gt=ke?dt.value:dt;if(this.value=he(gt),ke){var de=ft(dt);delete de.value,this.options=de}else this.options={};this.options.params||(this.options.params={})}return(0,e.Z)(Lt,[{key:"params",get:function(){return this.options.params}},{key:"absorbOptions",value:function(ge){var ke=ge.params;if(ke){var gt=this.options.params;Object.keys(ke).forEach(function(de){null==gt[de]&&(gt[de]=ke[de])})}}}]),Lt}(),Qa="void",va=new Aa(Qa),Ka=function(){function Lt(dt,ge,ke){(0,t.Z)(this,Lt),this.id=dt,this.hostElement=ge,this._engine=ke,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+dt,ni(ge,this._hostClassName)}return(0,e.Z)(Lt,[{key:"listen",value:function(ge,ke,gt,de){var we=this;if(!this._triggers.hasOwnProperty(ke))throw new Error('Unable to listen on the animation trigger event "'.concat(gt,'" because the animation trigger "').concat(ke,"\" doesn't exist!"));if(null==gt||0==gt.length)throw new Error('Unable to listen on the animation trigger "'.concat(ke,'" because the provided event is undefined!'));if(!function Vt(Lt){return"start"==Lt||"done"==Lt}(gt))throw new Error('The provided animation trigger event "'.concat(gt,'" for the animation trigger "').concat(ke,'" is not supported!'));var Qe=N(this._elementListeners,ge,[]),Ge={name:ke,phase:gt,callback:de};Qe.push(Ge);var Mt=N(this._engine.statesByElement,ge,{});return Mt.hasOwnProperty(ke)||(ni(ge,ue),ni(ge,ue+"-"+ke),Mt[ke]=va),function(){we._engine.afterFlush(function(){var Nt=Qe.indexOf(Ge);Nt>=0&&Qe.splice(Nt,1),we._triggers[ke]||delete Mt[ke]})}}},{key:"register",value:function(ge,ke){return!this._triggers[ge]&&(this._triggers[ge]=ke,!0)}},{key:"_getTrigger",value:function(ge){var ke=this._triggers[ge];if(!ke)throw new Error('The provided animation trigger "'.concat(ge,'" has not been registered!'));return ke}},{key:"trigger",value:function(ge,ke,gt){var de=this,we=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],Qe=this._getTrigger(ke),Ge=new Ve(this.id,ke,ge),Mt=this._engine.statesByElement.get(ge);Mt||(ni(ge,ue),ni(ge,ue+"-"+ke),this._engine.statesByElement.set(ge,Mt={}));var Nt=Mt[ke],yn=new Aa(gt,this.id),Ln=gt&>.hasOwnProperty("value");!Ln&&Nt&&yn.absorbOptions(Nt.options),Mt[ke]=yn,Nt||(Nt=va);var ei=yn.value===Qa;if(ei||Nt.value!==yn.value){var Fi=N(this._engine.playersByElement,ge,[]);Fi.forEach(function(yt){yt.namespaceId==de.id&&yt.triggerName==ke&&yt.queued&&yt.destroy()});var Ma=Qe.matchTransition(Nt.value,yn.value,ge,yn.params),ot=!1;if(!Ma){if(!we)return;Ma=Qe.fallbackTransition,ot=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:ge,triggerName:ke,transition:Ma,fromState:Nt,toState:yn,player:Ge,isFallbackTransition:ot}),ot||(ni(ge,An),Ge.onStart(function(){pi(ge,An)})),Ge.onDone(function(){var yt=de.players.indexOf(Ge);yt>=0&&de.players.splice(yt,1);var St=de._engine.playersByElement.get(ge);if(St){var ie=St.indexOf(Ge);ie>=0&&St.splice(ie,1)}}),this.players.push(Ge),Fi.push(Ge),Ge}if(!aa(Nt.params,yn.params)){var li=[],Si=Qe.matchStyles(Nt.value,Nt.params,li),Ai=Qe.matchStyles(yn.value,yn.params,li);li.length?this._engine.reportError(li):this._engine.afterFlush(function(){We(ge,Si),at(ge,Ai)})}}},{key:"deregister",value:function(ge){var ke=this;delete this._triggers[ge],this._engine.statesByElement.forEach(function(gt,de){delete gt[ge]}),this._elementListeners.forEach(function(gt,de){ke._elementListeners.set(de,gt.filter(function(we){return we.name!=ge}))})}},{key:"clearElementCache",value:function(ge){this._engine.statesByElement.delete(ge),this._elementListeners.delete(ge);var ke=this._engine.playersByElement.get(ge);ke&&(ke.forEach(function(gt){return gt.destroy()}),this._engine.playersByElement.delete(ge))}},{key:"_signalRemovalForInnerTriggers",value:function(ge,ke){var gt=this,de=this._engine.driver.query(ge,lt,!0);de.forEach(function(we){if(!we[Oa]){var Qe=gt._engine.fetchNamespacesByElement(we);Qe.size?Qe.forEach(function(Ge){return Ge.triggerLeaveAnimation(we,ke,!1,!0)}):gt.clearElementCache(we)}}),this._engine.afterFlushAnimationsDone(function(){return de.forEach(function(we){return gt.clearElementCache(we)})})}},{key:"triggerLeaveAnimation",value:function(ge,ke,gt,de){var we=this,Qe=this._engine.statesByElement.get(ge),Ge=new Map;if(Qe){var Mt=[];if(Object.keys(Qe).forEach(function(Nt){if(Ge.set(Nt,Qe[Nt].value),we._triggers[Nt]){var yn=we.trigger(ge,Nt,Qa,de);yn&&Mt.push(yn)}}),Mt.length)return this._engine.markElementAsRemoved(this.id,ge,!0,ke,Ge),gt&&Y(Mt).onDone(function(){return we._engine.processLeaveNode(ge)}),!0}return!1}},{key:"prepareLeaveAnimationListeners",value:function(ge){var ke=this,gt=this._elementListeners.get(ge),de=this._engine.statesByElement.get(ge);if(gt&&de){var we=new Set;gt.forEach(function(Qe){var Ge=Qe.name;if(!we.has(Ge)){we.add(Ge);var Nt=ke._triggers[Ge].fallbackTransition,yn=de[Ge]||va,Ln=new Aa(Qa),ei=new Ve(ke.id,Ge,ge);ke._engine.totalQueuedPlayers++,ke._queue.push({element:ge,triggerName:Ge,transition:Nt,fromState:yn,toState:Ln,player:ei,isFallbackTransition:!0})}})}}},{key:"removeNode",value:function(ge,ke){var gt=this,de=this._engine;if(ge.childElementCount&&this._signalRemovalForInnerTriggers(ge,ke),!this.triggerLeaveAnimation(ge,ke,!0)){var we=!1;if(de.totalAnimations){var Qe=de.players.length?de.playersByQueriedElement.get(ge):[];if(Qe&&Qe.length)we=!0;else for(var Ge=ge;Ge=Ge.parentNode;)if(de.statesByElement.get(Ge)){we=!0;break}}if(this.prepareLeaveAnimationListeners(ge),we)de.markElementAsRemoved(this.id,ge,!1,ke);else{var Nt=ge[Oa];(!Nt||Nt===ga)&&(de.afterFlush(function(){return gt.clearElementCache(ge)}),de.destroyInnerAnimations(ge),de._onRemovalComplete(ge,ke))}}}},{key:"insertNode",value:function(ge,ke){ni(ge,this._hostClassName)}},{key:"drainQueuedTransitions",value:function(ge){var ke=this,gt=[];return this._queue.forEach(function(de){var we=de.player;if(!we.destroyed){var Qe=de.element,Ge=ke._elementListeners.get(Qe);Ge&&Ge.forEach(function(Mt){if(Mt.name==de.triggerName){var Nt=D(Qe,de.triggerName,de.fromState.value,de.toState.value);Nt._data=ge,B(de.player,Mt.phase,Nt,Mt.callback)}}),we.markedForDestroy?ke._engine.afterFlush(function(){we.destroy()}):gt.push(de)}}),this._queue=[],gt.sort(function(de,we){var Qe=de.transition.ast.depCount,Ge=we.transition.ast.depCount;return 0==Qe||0==Ge?Qe-Ge:ke._engine.driver.containsElement(de.element,we.element)?1:-1})}},{key:"destroy",value:function(ge){this.players.forEach(function(ke){return ke.destroy()}),this._signalRemovalForInnerTriggers(this.hostElement,ge)}},{key:"elementContainsData",value:function(ge){var ke=!1;return this._elementListeners.has(ge)&&(ke=!0),!!this._queue.find(function(gt){return gt.element===ge})||ke}}]),Lt}(),Zt=function(){function Lt(dt,ge,ke){(0,t.Z)(this,Lt),this.bodyNode=dt,this.driver=ge,this._normalizer=ke,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=function(gt,de){}}return(0,e.Z)(Lt,[{key:"_onRemovalComplete",value:function(ge,ke){this.onRemovalComplete(ge,ke)}},{key:"queuedPlayers",get:function(){var ge=[];return this._namespaceList.forEach(function(ke){ke.players.forEach(function(gt){gt.queued&&ge.push(gt)})}),ge}},{key:"createNamespace",value:function(ge,ke){var gt=new Ka(ge,ke,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,ke)?this._balanceNamespaceList(gt,ke):(this.newHostElements.set(ke,gt),this.collectEnterElement(ke)),this._namespaceLookup[ge]=gt}},{key:"_balanceNamespaceList",value:function(ge,ke){var gt=this._namespaceList.length-1;if(gt>=0){for(var de=!1,we=gt;we>=0;we--)if(this.driver.containsElement(this._namespaceList[we].hostElement,ke)){this._namespaceList.splice(we+1,0,ge),de=!0;break}de||this._namespaceList.splice(0,0,ge)}else this._namespaceList.push(ge);return this.namespacesByHostElement.set(ke,ge),ge}},{key:"register",value:function(ge,ke){var gt=this._namespaceLookup[ge];return gt||(gt=this.createNamespace(ge,ke)),gt}},{key:"registerTrigger",value:function(ge,ke,gt){var de=this._namespaceLookup[ge];de&&de.register(ke,gt)&&this.totalAnimations++}},{key:"destroy",value:function(ge,ke){var gt=this;if(ge){var de=this._fetchNamespace(ge);this.afterFlush(function(){gt.namespacesByHostElement.delete(de.hostElement),delete gt._namespaceLookup[ge];var we=gt._namespaceList.indexOf(de);we>=0&>._namespaceList.splice(we,1)}),this.afterFlushAnimationsDone(function(){return de.destroy(ke)})}}},{key:"_fetchNamespace",value:function(ge){return this._namespaceLookup[ge]}},{key:"fetchNamespacesByElement",value:function(ge){var ke=new Set,gt=this.statesByElement.get(ge);if(gt)for(var de=Object.keys(gt),we=0;we=0&&this.collectedLeaveElements.splice(Qe,1)}if(ge){var Ge=this._fetchNamespace(ge);Ge&&Ge.insertNode(ke,gt)}de&&this.collectEnterElement(ke)}}},{key:"collectEnterElement",value:function(ge){this.collectedEnterElements.push(ge)}},{key:"markElementAsDisabled",value:function(ge,ke){ke?this.disabledNodes.has(ge)||(this.disabledNodes.add(ge),ni(ge,vi)):this.disabledNodes.has(ge)&&(this.disabledNodes.delete(ge),pi(ge,vi))}},{key:"removeNode",value:function(ge,ke,gt,de){if(ht(ke)){var we=ge?this._fetchNamespace(ge):null;if(we?we.removeNode(ke,de):this.markElementAsRemoved(ge,ke,!1,de),gt){var Qe=this.namespacesByHostElement.get(ke);Qe&&Qe.id!==ge&&Qe.removeNode(ke,de)}}else this._onRemovalComplete(ke,de)}},{key:"markElementAsRemoved",value:function(ge,ke,gt,de,we){this.collectedLeaveElements.push(ke),ke[Oa]={namespaceId:ge,setForRemoval:de,hasAnimation:gt,removedBeforeQueried:!1,previousTriggersValues:we}}},{key:"listen",value:function(ge,ke,gt,de,we){return ht(ke)?this._fetchNamespace(ge).listen(ke,gt,de,we):function(){}}},{key:"_buildInstruction",value:function(ge,ke,gt,de,we){return ge.transition.build(this.driver,ge.element,ge.fromState.value,ge.toState.value,gt,de,ge.fromState.options,ge.toState.options,ke,we)}},{key:"destroyInnerAnimations",value:function(ge){var ke=this,gt=this.driver.query(ge,lt,!0);gt.forEach(function(de){return ke.destroyActiveAnimationsForElement(de)}),0!=this.playersByQueriedElement.size&&(gt=this.driver.query(ge,mt,!0)).forEach(function(de){return ke.finishActiveQueriedAnimationOnElement(de)})}},{key:"destroyActiveAnimationsForElement",value:function(ge){var ke=this.playersByElement.get(ge);ke&&ke.forEach(function(gt){gt.queued?gt.markedForDestroy=!0:gt.destroy()})}},{key:"finishActiveQueriedAnimationOnElement",value:function(ge){var ke=this.playersByQueriedElement.get(ge);ke&&ke.forEach(function(gt){return gt.finish()})}},{key:"whenRenderingDone",value:function(){var ge=this;return new Promise(function(ke){if(ge.players.length)return Y(ge.players).onDone(function(){return ke()});ke()})}},{key:"processLeaveNode",value:function(ge){var gt,ke=this,de=ge[Oa];if(de&&de.setForRemoval){if(ge[Oa]=ga,de.namespaceId){this.destroyInnerAnimations(ge);var we=this._fetchNamespace(de.namespaceId);we&&we.clearElementCache(ge)}this._onRemovalComplete(ge,de.setForRemoval)}(null===(gt=ge.classList)||void 0===gt?void 0:gt.contains(vi))&&this.markElementAsDisabled(ge,!1),this.driver.query(ge,".ng-animate-disabled",!0).forEach(function(Qe){ke.markElementAsDisabled(Qe,!1)})}},{key:"flush",value:function(){var ge=this,ke=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,gt=[];if(this.newHostElements.size&&(this.newHostElements.forEach(function(Ln,ei){return ge._balanceNamespaceList(Ln,ei)}),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(var de=0;de=0;Jt--)this._namespaceList[Jt].drainQueuedTransitions(ke).forEach(function(yi){var ra=yi.player,ji=yi.element;if(bt.push(ra),gt.collectedEnterElements.length){var Va=ji[Oa];if(Va&&Va.setForMove){if(Va.previousTriggersValues&&Va.previousTriggersValues.has(yi.triggerName)){var xr=Va.previousTriggersValues.get(yi.triggerName),So=gt.statesByElement.get(yi.element);So&&So[yi.triggerName]&&(So[yi.triggerName].value=xr)}return void ra.destroy()}}var _s=!ei||!gt.driver.containsElement(ei,ji),zr=fe.get(ji),gs=Ai.get(ji),fa=gt._buildInstruction(yi,de,gs,zr,_s);if(fa.errors&&fa.errors.length)xt.push(fa);else{if(_s)return ra.onStart(function(){return We(ji,fa.fromStyles)}),ra.onDestroy(function(){return at(ji,fa.toStyles)}),void we.push(ra);if(yi.isFallbackTransition)return ra.onStart(function(){return We(ji,fa.fromStyles)}),ra.onDestroy(function(){return at(ji,fa.toStyles)}),void we.push(ra);var io=[];fa.timelines.forEach(function(kn){kn.stretchStartingKeyframe=!0,gt.disabledNodes.has(kn.element)||io.push(kn)}),fa.timelines=io,de.append(ji,fa.timelines),Ge.push({instruction:fa,player:ra,element:ji}),fa.queriedElements.forEach(function(kn){return N(Mt,kn,[]).push(ra)}),fa.preStyleProps.forEach(function(kn,Qn){var Vn=Object.keys(kn);if(Vn.length){var Di=Nt.get(Qn);Di||Nt.set(Qn,Di=new Set),Vn.forEach(function(Gi){return Di.add(Gi)})}}),fa.postStyleProps.forEach(function(kn,Qn){var Vn=Object.keys(kn),Di=yn.get(Qn);Di||yn.set(Qn,Di=new Set),Vn.forEach(function(Gi){return Di.add(Gi)})})}});if(xt.length){var hi=[];xt.forEach(function(yi){hi.push("@".concat(yi.triggerName," has failed due to:\n")),yi.errors.forEach(function(ra){return hi.push("- ".concat(ra,"\n"))})}),bt.forEach(function(yi){return yi.destroy()}),this.reportError(hi)}var qi=new Map,Oi=new Map;Ge.forEach(function(yi){var ra=yi.element;de.has(ra)&&(Oi.set(ra,ra),gt._beforeAnimationBuild(yi.player.namespaceId,yi.instruction,qi))}),we.forEach(function(yi){var ra=yi.element;gt._getPreviousPlayers(ra,!1,yi.namespaceId,yi.triggerName,null).forEach(function(Va){N(qi,ra,[]).push(Va),Va.destroy()})});var Wa=Ma.filter(function(yi){return xi(yi,Nt,yn)}),Ni=new Map;Zn(Ni,this.driver,yt,yn,s.l3).forEach(function(yi){xi(yi,Nt,yn)&&Wa.push(yi)});var po=new Map;Si.forEach(function(yi,ra){Zn(po,gt.driver,new Set(yi),Nt,s.k1)}),Wa.forEach(function(yi){var ra=Ni.get(yi),ji=po.get(yi);Ni.set(yi,Object.assign(Object.assign({},ra),ji))});var ia=[],Nl=[],Os={};Ge.forEach(function(yi){var ra=yi.element,ji=yi.player,Va=yi.instruction;if(de.has(ra)){if(Ln.has(ra))return ji.onDestroy(function(){return at(ra,Va.toStyles)}),ji.disabled=!0,ji.overrideTotalTime(Va.totalTime),void we.push(ji);var xr=Os;if(Oi.size>1){for(var So=ra,_s=[];So=So.parentNode;){var zr=Oi.get(So);if(zr){xr=zr;break}_s.push(So)}_s.forEach(function(io){return Oi.set(io,xr)})}var gs=gt._buildAnimation(ji.namespaceId,Va,qi,Qe,po,Ni);if(ji.setRealPlayer(gs),xr===Os)ia.push(ji);else{var fa=gt.playersByElement.get(xr);fa&&fa.length&&(ji.parentPlayer=Y(fa)),we.push(ji)}}else We(ra,Va.fromStyles),ji.onDestroy(function(){return at(ra,Va.toStyles)}),Nl.push(ji),Ln.has(ra)&&we.push(ji)}),Nl.forEach(function(yi){var ra=Qe.get(yi.element);if(ra&&ra.length){var ji=Y(ra);yi.setRealPlayer(ji)}}),we.forEach(function(yi){yi.parentPlayer?yi.syncPlayerEvents(yi.parentPlayer):yi.destroy()});for(var qa=0;qa0?this.driver.animate(ge.element,ke,ge.duration,ge.delay,ge.easing,gt):new s.ZN(ge.duration,ge.delay)}}]),Lt}(),Ve=function(){function Lt(dt,ge,ke){(0,t.Z)(this,Lt),this.namespaceId=dt,this.triggerName=ge,this.element=ke,this._player=new s.ZN,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}return(0,e.Z)(Lt,[{key:"setRealPlayer",value:function(ge){var ke=this;this._containsRealPlayer||(this._player=ge,Object.keys(this._queuedCallbacks).forEach(function(gt){ke._queuedCallbacks[gt].forEach(function(de){return B(ge,gt,void 0,de)})}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(ge.totalTime),this.queued=!1)}},{key:"getRealPlayer",value:function(){return this._player}},{key:"overrideTotalTime",value:function(ge){this.totalTime=ge}},{key:"syncPlayerEvents",value:function(ge){var ke=this,gt=this._player;gt.triggerCallback&&ge.onStart(function(){return gt.triggerCallback("start")}),ge.onDone(function(){return ke.finish()}),ge.onDestroy(function(){return ke.destroy()})}},{key:"_queueEvent",value:function(ge,ke){N(this._queuedCallbacks,ge,[]).push(ke)}},{key:"onDone",value:function(ge){this.queued&&this._queueEvent("done",ge),this._player.onDone(ge)}},{key:"onStart",value:function(ge){this.queued&&this._queueEvent("start",ge),this._player.onStart(ge)}},{key:"onDestroy",value:function(ge){this.queued&&this._queueEvent("destroy",ge),this._player.onDestroy(ge)}},{key:"init",value:function(){this._player.init()}},{key:"hasStarted",value:function(){return!this.queued&&this._player.hasStarted()}},{key:"play",value:function(){!this.queued&&this._player.play()}},{key:"pause",value:function(){!this.queued&&this._player.pause()}},{key:"restart",value:function(){!this.queued&&this._player.restart()}},{key:"finish",value:function(){this._player.finish()}},{key:"destroy",value:function(){this.destroyed=!0,this._player.destroy()}},{key:"reset",value:function(){!this.queued&&this._player.reset()}},{key:"setPosition",value:function(ge){this.queued||this._player.setPosition(ge)}},{key:"getPosition",value:function(){return this.queued?0:this._player.getPosition()}},{key:"triggerCallback",value:function(ge){var ke=this._player;ke.triggerCallback&&ke.triggerCallback(ge)}}]),Lt}();function he(Lt){return null!=Lt?Lt:null}function ht(Lt){return Lt&&1===Lt.nodeType}function dn(Lt,dt){var ge=Lt.style.display;return Lt.style.display=null!=dt?dt:"none",ge}function Zn(Lt,dt,ge,ke,gt){var de=[];ge.forEach(function(Ge){return de.push(dn(Ge))});var we=[];ke.forEach(function(Ge,Mt){var Nt={};Ge.forEach(function(yn){var Ln=Nt[yn]=dt.computeStyle(Mt,yn,gt);(!Ln||0==Ln.length)&&(Mt[Oa]=Ha,we.push(Mt))}),Lt.set(Mt,Nt)});var Qe=0;return ge.forEach(function(Ge){return dn(Ge,de[Qe++])}),we}function Xn(Lt,dt){var ge=new Map;if(Lt.forEach(function(Qe){return ge.set(Qe,[])}),0==dt.length)return ge;var gt=new Set(dt),de=new Map;function we(Qe){if(!Qe)return 1;var Ge=de.get(Qe);if(Ge)return Ge;var Mt=Qe.parentNode;return Ge=ge.has(Mt)?Mt:gt.has(Mt)?1:we(Mt),de.set(Qe,Ge),Ge}return dt.forEach(function(Qe){var Ge=we(Qe);1!==Ge&&ge.get(Ge).push(Qe)}),ge}function ni(Lt,dt){var ge;null===(ge=Lt.classList)||void 0===ge||ge.add(dt)}function pi(Lt,dt){var ge;null===(ge=Lt.classList)||void 0===ge||ge.remove(dt)}function Mi(Lt,dt,ge){Y(ge).onDone(function(){return Lt.processLeaveNode(dt)})}function Yi(Lt,dt){for(var ge=0;ge0&&void 0!==arguments[0]?arguments[0]:-1;this._transitionEngine.flush(ge)}},{key:"players",get:function(){return this._transitionEngine.players.concat(this._timelineEngine.players)}},{key:"whenRenderingDone",value:function(){return this._transitionEngine.whenRenderingDone()}}]),Lt}();function ca(Lt,dt){var ge=null,ke=null;return Array.isArray(dt)&&dt.length?(ge=pr(dt[0]),dt.length>1&&(ke=pr(dt[dt.length-1]))):dt&&(ge=pr(dt)),ge||ke?new oa(Lt,ge,ke):null}var oa=function(){var Lt=function(){function dt(ge,ke,gt){(0,t.Z)(this,dt),this._element=ge,this._startStyles=ke,this._endStyles=gt,this._state=0;var de=dt.initialStylesByElement.get(ge);de||dt.initialStylesByElement.set(ge,de={}),this._initialStyles=de}return(0,e.Z)(dt,[{key:"start",value:function(){this._state<1&&(this._startStyles&&at(this._element,this._startStyles,this._initialStyles),this._state=1)}},{key:"finish",value:function(){this.start(),this._state<2&&(at(this._element,this._initialStyles),this._endStyles&&(at(this._element,this._endStyles),this._endStyles=null),this._state=1)}},{key:"destroy",value:function(){this.finish(),this._state<3&&(dt.initialStylesByElement.delete(this._element),this._startStyles&&(We(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(We(this._element,this._endStyles),this._endStyles=null),at(this._element,this._initialStyles),this._state=3)}}]),dt}();return Lt.initialStylesByElement=new WeakMap,Lt}();function pr(Lt){for(var dt=null,ge=Object.keys(Lt),ke=0;ke5&&void 0!==arguments[5]?arguments[5]:[],Ge=0==de?"both":"forwards",Mt={duration:gt,delay:de,fill:Ge};we&&(Mt.easing=we);var Nt={},yn=Qe.filter(function(ei){return ei instanceof Ca});$e(gt,de)&&yn.forEach(function(ei){var li=ei.currentSnapshot;Object.keys(li).forEach(function(Si){return Nt[Si]=li[Si]})});var Ln=ca(ge,ke=Ae(ge,ke=ke.map(function(ei){return Ee(ei,!1)}),Nt));return new Ca(ge,ke,Mt,Ln)}}]),Lt}(),yr=n(36362),Qi=function(){var Lt=function(dt){(0,c.Z)(ke,dt);var ge=(0,u.Z)(ke);function ke(gt,de){var we;return(0,t.Z)(this,ke),(we=ge.call(this))._nextAnimationId=0,we._renderer=gt.createRenderer(de.body,{id:"0",encapsulation:o.ifc.None,styles:[],data:{animation:[]}}),we}return(0,e.Z)(ke,[{key:"build",value:function(de){var we=this._nextAnimationId.toString();this._nextAnimationId++;var Qe=Array.isArray(de)?(0,s.vP)(de):de;return qn(this._renderer,null,we,"register",[Qe]),new en(we,this._renderer)}}]),ke}(s._j);return Lt.\u0275fac=function(ge){return new(ge||Lt)(o.LFG(o.FYo),o.LFG(yr.K0))},Lt.\u0275prov=o.Yz7({token:Lt,factory:Lt.\u0275fac}),Lt}(),en=function(Lt){(0,c.Z)(ge,Lt);var dt=(0,u.Z)(ge);function ge(ke,gt){var de;return(0,t.Z)(this,ge),(de=dt.call(this))._id=ke,de._renderer=gt,de}return(0,e.Z)(ge,[{key:"create",value:function(gt,de){return new Dn(this._id,gt,de||{},this._renderer)}}]),ge}(s.LC),Dn=function(){function Lt(dt,ge,ke,gt){(0,t.Z)(this,Lt),this.id=dt,this.element=ge,this._renderer=gt,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",ke)}return(0,e.Z)(Lt,[{key:"_listen",value:function(ge,ke){return this._renderer.listen(this.element,"@@".concat(this.id,":").concat(ge),ke)}},{key:"_command",value:function(ge){for(var ke=arguments.length,gt=new Array(ke>1?ke-1:0),de=1;de=0&&ke3&&void 0!==arguments[3])||arguments[3];this.delegate.insertBefore(ge,ke,gt),this.engine.onInsert(this.namespaceId,ke,ge,de)}},{key:"removeChild",value:function(ge,ke,gt){this.engine.onRemove(this.namespaceId,ke,this.delegate,gt)}},{key:"selectRootElement",value:function(ge,ke){return this.delegate.selectRootElement(ge,ke)}},{key:"parentNode",value:function(ge){return this.delegate.parentNode(ge)}},{key:"nextSibling",value:function(ge){return this.delegate.nextSibling(ge)}},{key:"setAttribute",value:function(ge,ke,gt,de){this.delegate.setAttribute(ge,ke,gt,de)}},{key:"removeAttribute",value:function(ge,ke,gt){this.delegate.removeAttribute(ge,ke,gt)}},{key:"addClass",value:function(ge,ke){this.delegate.addClass(ge,ke)}},{key:"removeClass",value:function(ge,ke){this.delegate.removeClass(ge,ke)}},{key:"setStyle",value:function(ge,ke,gt,de){this.delegate.setStyle(ge,ke,gt,de)}},{key:"removeStyle",value:function(ge,ke,gt){this.delegate.removeStyle(ge,ke,gt)}},{key:"setProperty",value:function(ge,ke,gt){"@"==ke.charAt(0)&&ke==Ji?this.disableAnimations(ge,!!gt):this.delegate.setProperty(ge,ke,gt)}},{key:"setValue",value:function(ge,ke){this.delegate.setValue(ge,ke)}},{key:"listen",value:function(ge,ke,gt){return this.delegate.listen(ge,ke,gt)}},{key:"disableAnimations",value:function(ge,ke){this.engine.disableAnimations(ge,ke)}}]),Lt}(),Na=function(Lt){(0,c.Z)(ge,Lt);var dt=(0,u.Z)(ge);function ge(ke,gt,de,we){var Qe;return(0,t.Z)(this,ge),(Qe=dt.call(this,gt,de,we)).factory=ke,Qe.namespaceId=gt,Qe}return(0,e.Z)(ge,[{key:"setProperty",value:function(gt,de,we){"@"==de.charAt(0)?"."==de.charAt(1)&&de==Ji?this.disableAnimations(gt,we=void 0===we||!!we):this.engine.process(this.namespaceId,gt,de.substr(1),we):this.delegate.setProperty(gt,de,we)}},{key:"listen",value:function(gt,de,we){var Qe=this;if("@"==de.charAt(0)){var Ge=function Ua(Lt){switch(Lt){case"body":return document.body;case"document":return document;case"window":return window;default:return Lt}}(gt),Mt=de.substr(1),Nt="";if("@"!=Mt.charAt(0)){var yn=function zi(Lt){var dt=Lt.indexOf(".");return[Lt.substring(0,dt),Lt.substr(dt+1)]}(Mt),Ln=(0,S.Z)(yn,2);Mt=Ln[0],Nt=Ln[1]}return this.engine.listen(this.namespaceId,Ge,Mt,Nt,function(ei){Qe.factory.scheduleListenerCallback(ei._data||-1,we,ei)})}return this.delegate.listen(gt,de,we)}}]),ge}(ya),Ra=function(){var Lt=function(dt){(0,c.Z)(ke,dt);var ge=(0,u.Z)(ke);function ke(gt,de,we){return(0,t.Z)(this,ke),ge.call(this,gt.body,de,we)}return(0,e.Z)(ke,[{key:"ngOnDestroy",value:function(){this.flush()}}]),ke}(Ui);return Lt.\u0275fac=function(ge){return new(ge||Lt)(o.LFG(yr.K0),o.LFG(K),o.LFG(Bi))},Lt.\u0275prov=o.Yz7({token:Lt,factory:Lt.\u0275fac}),Lt}(),Ea=new o.OlP("AnimationModuleType"),ba=[{provide:s._j,useClass:Qi},{provide:Bi,useFactory:function sa(){return new ka}},{provide:Ui,useClass:Ra},{provide:o.FYo,useFactory:function da(Lt,dt,ge){return new Vi(Lt,dt,ge)},deps:[_.se,Ui,o.R0b]}],Ar=[{provide:K,useFactory:function(){return new ir}},{provide:Ea,useValue:"BrowserAnimations"}].concat(ba),gr=[{provide:K,useClass:te},{provide:Ea,useValue:"NoopAnimations"}].concat(ba),Cr=function(){var Lt=function(){function dt(){(0,t.Z)(this,dt)}return(0,e.Z)(dt,null,[{key:"withConfig",value:function(ke){return{ngModule:dt,providers:ke.disableAnimations?gr:Ar}}}]),dt}();return Lt.\u0275fac=function(ge){return new(ge||Lt)},Lt.\u0275mod=o.oAB({type:Lt}),Lt.\u0275inj=o.cJS({providers:Ar,imports:[_.b2]}),Lt}()},50318:function(Ce,E,n){"use strict";n.d(E,{b2:function(){return Ht},H7:function(){return vt},Dx:function(){return $e},q6:function(){return Fe},se:function(){return ve}});var Y,S=n(97424),t=n(28042),e=n(1884),c=n(39117),u=n(46751),o=n(56101),_=n(36362),s=n(86613),h=function($t){(0,u.Z)(ln,$t);var fn=(0,o.Z)(ln);function ln(){var _n;return(0,c.Z)(this,ln),(_n=fn.apply(this,arguments)).supportsDOMEvents=!0,_n}return(0,e.Z)(ln)}(_.w_),b=function($t){(0,u.Z)(ln,$t);var fn=(0,o.Z)(ln);function ln(){return(0,c.Z)(this,ln),fn.apply(this,arguments)}return(0,e.Z)(ln,[{key:"onAndCancel",value:function(xn,In,Yn){return xn.addEventListener(In,Yn,!1),function(){xn.removeEventListener(In,Yn,!1)}}},{key:"dispatchEvent",value:function(xn,In){xn.dispatchEvent(In)}},{key:"remove",value:function(xn){xn.parentNode&&xn.parentNode.removeChild(xn)}},{key:"createElement",value:function(xn,In){return(In=In||this.getDefaultDocument()).createElement(xn)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(xn){return xn.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(xn){return xn instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(xn,In){return"window"===In?window:"document"===In?xn:"body"===In?xn.body:null}},{key:"getBaseHref",value:function(xn){var In=function y(){return(T=T||document.querySelector("base"))?T.getAttribute("href"):null}();return null==In?null:function q($t){(Y=Y||document.createElement("a")).setAttribute("href",$t);var fn=Y.pathname;return"/"===fn.charAt(0)?fn:"/".concat(fn)}(In)}},{key:"resetBaseElement",value:function(){T=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"getCookie",value:function(xn){return(0,_.Mx)(document.cookie,xn)}}],[{key:"makeCurrent",value:function(){(0,_.HT)(new ln)}}]),ln}(h),T=null,B=new s.OlP("TRANSITION_ID"),D=[{provide:s.ip1,useFactory:function k($t,fn,ln){return function(){ln.get(s.CZH).donePromise.then(function(){for(var _n=(0,_.q)(),xn=fn.querySelectorAll('style[ng-transition="'.concat($t,'"]')),In=0;In1&&void 0!==arguments[1])||arguments[1],Yn=ln.findTestabilityInTree(xn,In);if(null==Yn)throw new Error("Could not find testability for element.");return Yn},s.dqk.getAllAngularTestabilities=function(){return ln.getAllTestabilities()},s.dqk.getAllAngularRootElements=function(){return ln.getAllRootElements()},s.dqk.frameworkStabilizers||(s.dqk.frameworkStabilizers=[]),s.dqk.frameworkStabilizers.push(function(In){var Yn=s.dqk.getAllAngularTestabilities(),mi=Yn.length,wi=!1,Bi=function(ka){wi=wi||ka,0==--mi&&In(wi)};Yn.forEach(function(Xi){Xi.whenStable(Bi)})})}},{key:"findTestabilityInTree",value:function(ln,_n,xn){if(null==_n)return null;var In=ln.getTestability(_n);return null!=In?In:xn?(0,_.q)().isShadowRoot(_n)?this.findTestabilityInTree(ln,_n.host,!0):this.findTestabilityInTree(ln,_n.parentElement,!0):null}}],[{key:"init",value:function(){(0,s.VLi)(new $t)}}]),$t}(),I=function(){var $t=function(){function fn(){(0,c.Z)(this,fn)}return(0,e.Z)(fn,[{key:"build",value:function(){return new XMLHttpRequest}}]),fn}();return $t.\u0275fac=function(ln){return new(ln||$t)},$t.\u0275prov=s.Yz7({token:$t,factory:$t.\u0275fac}),$t}(),L=new s.OlP("EventManagerPlugins"),j=function(){var $t=function(){function fn(ln,_n){var xn=this;(0,c.Z)(this,fn),this._zone=_n,this._eventNameToPlugin=new Map,ln.forEach(function(In){return In.manager=xn}),this._plugins=ln.slice().reverse()}return(0,e.Z)(fn,[{key:"addEventListener",value:function(_n,xn,In){return this._findPluginFor(xn).addEventListener(_n,xn,In)}},{key:"addGlobalEventListener",value:function(_n,xn,In){return this._findPluginFor(xn).addGlobalEventListener(_n,xn,In)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(_n){var xn=this._eventNameToPlugin.get(_n);if(xn)return xn;for(var In=this._plugins,Yn=0;Yn-1&&(Yn.splice(Ja,1),Bi+=ka+".")}),Bi+=wi,0!=Yn.length||0===wi.length)return null;var Xi={};return Xi.domEventName=mi,Xi.fullKey=Bi,Xi}},{key:"getEventFullKey",value:function(In){var Yn="",mi=function nt($t){var fn=$t.key;if(null==fn){if(null==(fn=$t.keyIdentifier))return"Unidentified";fn.startsWith("U+")&&(fn=String.fromCharCode(parseInt(fn.substring(2),16)),3===$t.location&&ct.hasOwnProperty(fn)&&(fn=ct[fn]))}return ft[fn]||fn}(In);return" "===(mi=mi.toLowerCase())?mi="space":"."===mi&&(mi="dot"),Pe.forEach(function(wi){wi!=mi&&(0,Ee[wi])(In)&&(Yn+=wi+".")}),Yn+=mi}},{key:"eventCallback",value:function(In,Yn,mi){return function(wi){_n.getEventFullKey(wi)===In&&mi.runGuarded(function(){return Yn(wi)})}}},{key:"_normalizeKey",value:function(In){return"esc"===In?"escape":In}}]),_n}(le);return $t.\u0275fac=function(ln){return new(ln||$t)(s.LFG(_.K0))},$t.\u0275prov=s.Yz7({token:$t,factory:$t.\u0275fac}),$t}(),Fe=(0,s.eFA)(s._c5,"browser",[{provide:s.Lbi,useValue:_.bD},{provide:s.g9A,useValue:function at(){b.makeCurrent(),N.init()},multi:!0},{provide:_.K0,useFactory:function xe(){return(0,s.RDi)(document),document},deps:[]}]),et=[{provide:s.zSh,useValue:"root"},{provide:s.qLn,useFactory:function We(){return new s.qLn},deps:[]},{provide:L,useClass:Pt,multi:!0,deps:[_.K0,s.R0b,s.Lbi]},{provide:L,useClass:st,multi:!0,deps:[_.K0]},{provide:ve,useClass:ve,deps:[j,W,s.AFp]},{provide:s.FYo,useExisting:ve},{provide:re,useExisting:W},{provide:W,useClass:W,deps:[_.K0]},{provide:s.dDg,useClass:s.dDg,deps:[s.R0b]},{provide:j,useClass:j,deps:[L,s.R0b]},{provide:_.JF,useClass:I,deps:[]}],Ht=function(){var $t=function(){function fn(ln){if((0,c.Z)(this,fn),ln)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return(0,e.Z)(fn,null,[{key:"withServerTransition",value:function(_n){return{ngModule:fn,providers:[{provide:s.AFp,useValue:_n.appId},{provide:B,useExisting:s.AFp},D]}}}]),fn}();return $t.\u0275fac=function(ln){return new(ln||$t)(s.LFG($t,12))},$t.\u0275mod=s.oAB({type:$t}),$t.\u0275inj=s.cJS({providers:et,imports:[_.ez,s.hGG]}),$t}(),$e=function(){var $t=function(){function fn(ln){(0,c.Z)(this,fn),this._doc=ln}return(0,e.Z)(fn,[{key:"getTitle",value:function(){return this._doc.title}},{key:"setTitle",value:function(_n){this._doc.title=_n||""}}]),fn}();return $t.\u0275fac=function(ln){return new(ln||$t)(s.LFG(_.K0))},$t.\u0275prov=s.Yz7({token:$t,factory:function(ln){return ln?new ln:function It(){return new $e((0,s.LFG)(_.K0))}()},providedIn:"root"}),$t}();"undefined"!=typeof window&&window;var vt=function(){var $t=(0,e.Z)(function fn(){(0,c.Z)(this,fn)});return $t.\u0275fac=function(ln){return new(ln||$t)},$t.\u0275prov=s.Yz7({token:$t,factory:function(ln){return ln?new(ln||$t):s.LFG(rn)},providedIn:"root"}),$t}(),rn=function(){var $t=function(fn){(0,u.Z)(_n,fn);var ln=(0,o.Z)(_n);function _n(xn){var In;return(0,c.Z)(this,_n),(In=ln.call(this))._doc=xn,In}return(0,e.Z)(_n,[{key:"sanitize",value:function(In,Yn){if(null==Yn)return null;switch(In){case s.q3G.NONE:return Yn;case s.q3G.HTML:return(0,s.qzn)(Yn,"HTML")?(0,s.z3N)(Yn):(0,s.EiD)(this._doc,String(Yn)).toString();case s.q3G.STYLE:return(0,s.qzn)(Yn,"Style")?(0,s.z3N)(Yn):Yn;case s.q3G.SCRIPT:if((0,s.qzn)(Yn,"Script"))return(0,s.z3N)(Yn);throw new Error("unsafe value used in a script context");case s.q3G.URL:return(0,s.yhl)(Yn),(0,s.qzn)(Yn,"URL")?(0,s.z3N)(Yn):(0,s.mCW)(String(Yn));case s.q3G.RESOURCE_URL:if((0,s.qzn)(Yn,"ResourceURL"))return(0,s.z3N)(Yn);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error("Unexpected SecurityContext ".concat(In," (see https://g.co/ng/security#xss)"))}}},{key:"bypassSecurityTrustHtml",value:function(In){return(0,s.JVY)(In)}},{key:"bypassSecurityTrustStyle",value:function(In){return(0,s.L6k)(In)}},{key:"bypassSecurityTrustScript",value:function(In){return(0,s.eBb)(In)}},{key:"bypassSecurityTrustUrl",value:function(In){return(0,s.LAX)(In)}},{key:"bypassSecurityTrustResourceUrl",value:function(In){return(0,s.pB0)(In)}}]),_n}(vt);return $t.\u0275fac=function(ln){return new(ln||$t)(s.LFG(_.K0))},$t.\u0275prov=s.Yz7({token:$t,factory:function(ln){var _n;return _n=ln?new ln:function Rt($t){return new rn($t.get(_.K0))}(s.LFG(s.zs3)),_n},providedIn:"root"}),$t}()},98002:function(Ce,E,n){"use strict";n.d(E,{gz:function(){return Ii},m2:function(){return st},OD:function(){return Ee},Z6:function(){return Gi},Av:function(){return et},F0:function(){return Ir},rH:function(){return $a},yS:function(){return ks},Bz:function(){return rs},lC:function(){return Ea}});var S=n(70350),t=n(45632),e=n(44014),c=n(71340),u=n(46751),o=n(56101),_=n(1884),s=n(39117),h=n(86613),T=(0,n(27543).d)(function(De){return function(){De(this),this.name="EmptyError",this.message="no elements in sequence"}}),y=n(83336),Y=n(17714),q=n(41944),B=n(93945);function k(){return(0,q.e)(function(De,Be){var Se=null;De._refCount++;var Ie=(0,B.x)(Be,void 0,void 0,void 0,function(){if(!De||De._refCount<=0||0<--De._refCount)Se=null;else{var je=De._connection,Et=Se;Se=null,je&&(!Et||je===Et)&&je.unsubscribe(),Be.unsubscribe()}});De.subscribe(Ie),Ie.closed||(Se=De.connect())})}var D=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je){var Et;return(0,s.Z)(this,Se),(Et=Be.call(this)).source=Ie,Et.subjectFactory=je,Et._subject=null,Et._refCount=0,Et._connection=null,(0,q.A)(Ie)&&(Et.lift=Ie.lift),Et}return(0,_.Z)(Se,[{key:"_subscribe",value:function(je){return this.getSubject().subscribe(je)}},{key:"getSubject",value:function(){var je=this._subject;return(!je||je.isStopped)&&(this._subject=this.subjectFactory()),this._subject}},{key:"_teardown",value:function(){this._refCount=0;var je=this._connection;this._subject=this._connection=null,null==je||je.unsubscribe()}},{key:"connect",value:function(){var je=this,Et=this._connection;if(!Et){Et=this._connection=new Y.w0;var Qt=this.getSubject();Et.add(this.source.subscribe((0,B.x)(Qt,void 0,function(){je._teardown(),Qt.complete()},function(bn){je._teardown(),Qt.error(bn)},function(){return je._teardown()}))),Et.closed&&(this._connection=null,Et=Y.w0.EMPTY)}return Et}},{key:"refCount",value:function(){return k()(this)}}]),Se}(y.y),N=n(72957),I=n(10745),L=n(76317),j=n(26562),le=n(59319),re=n(21954),W=n(20591),$=n(50253);function be(De,Be,Se,Ie,je){return function(Et,Qt){var bn=Se,On=Be,Tn=0;Et.subscribe((0,B.x)(Qt,function(di){var Ei=Tn++;On=bn?De(On,di,Ei):(bn=!0,di),Ie&&Qt.next(On)},je&&function(){bn&&Qt.next(On),Qt.complete()}))}}function z(De,Be){return(0,q.e)(be(De,Be,arguments.length>=2,!0))}var d=n(60116);function Q(De){return De<=0?function(){return W.E}:(0,q.e)(function(Be,Se){var Ie=[];Be.subscribe((0,B.x)(Se,function(je){Ie.push(je),De0&&void 0!==arguments[0]?arguments[0]:te;return(0,q.e)(function(Be,Se){var Ie=!1;Be.subscribe((0,B.x)(Se,function(je){Ie=!0,Se.next(je)},function(){return Ie?Se.complete():Se.error(De())}))})}function te(){return new T}function K(De){return(0,q.e)(function(Be,Se){var Ie=!1;Be.subscribe((0,B.x)(Se,function(je){Ie=!0,Se.next(je)},function(){Ie||Se.next(De),Se.complete()}))})}var G=n(89173),_e=n(59295);function Me(De,Be){var Se=arguments.length>=2;return function(Ie){return Ie.pipe(De?(0,d.h)(function(je,Et){return De(je,Et,Ie)}):G.y,(0,_e.q)(1),Se?K(Be):J(function(){return new T}))}}var ve=n(50635),ue=n(32673),lt=n(44874),Xe=n(53158),mt=n(63853),wt=n(49525),Pt=n(19337),Pe=n(32313),ze=n(1308),ft=n(36362),ct=(0,_.Z)(function De(Be,Se){(0,s.Z)(this,De),this.id=Be,this.url=Se}),Ee=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je){var Et,Qt=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"imperative",bn=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return(0,s.Z)(this,Se),(Et=Be.call(this,Ie,je)).navigationTrigger=Qt,Et.restoredState=bn,Et}return(0,_.Z)(Se,[{key:"toString",value:function(){return"NavigationStart(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),Se}(ct),st=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et){var Qt;return(0,s.Z)(this,Se),(Qt=Be.call(this,Ie,je)).urlAfterRedirects=Et,Qt}return(0,_.Z)(Se,[{key:"toString",value:function(){return"NavigationEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"')")}}]),Se}(ct),nt=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et){var Qt;return(0,s.Z)(this,Se),(Qt=Be.call(this,Ie,je)).reason=Et,Qt}return(0,_.Z)(Se,[{key:"toString",value:function(){return"NavigationCancel(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),Se}(ct),at=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et){var Qt;return(0,s.Z)(this,Se),(Qt=Be.call(this,Ie,je)).error=Et,Qt}return(0,_.Z)(Se,[{key:"toString",value:function(){return"NavigationError(id: ".concat(this.id,", url: '").concat(this.url,"', error: ").concat(this.error,")")}}]),Se}(ct),We=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et,Qt){var bn;return(0,s.Z)(this,Se),(bn=Be.call(this,Ie,je)).urlAfterRedirects=Et,bn.state=Qt,bn}return(0,_.Z)(Se,[{key:"toString",value:function(){return"RoutesRecognized(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),Se}(ct),xe=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et,Qt){var bn;return(0,s.Z)(this,Se),(bn=Be.call(this,Ie,je)).urlAfterRedirects=Et,bn.state=Qt,bn}return(0,_.Z)(Se,[{key:"toString",value:function(){return"GuardsCheckStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),Se}(ct),ut=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et,Qt,bn){var On;return(0,s.Z)(this,Se),(On=Be.call(this,Ie,je)).urlAfterRedirects=Et,On.state=Qt,On.shouldActivate=bn,On}return(0,_.Z)(Se,[{key:"toString",value:function(){return"GuardsCheckEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,", shouldActivate: ").concat(this.shouldActivate,")")}}]),Se}(ct),Fe=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et,Qt){var bn;return(0,s.Z)(this,Se),(bn=Be.call(this,Ie,je)).urlAfterRedirects=Et,bn.state=Qt,bn}return(0,_.Z)(Se,[{key:"toString",value:function(){return"ResolveStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),Se}(ct),et=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je,Et,Qt){var bn;return(0,s.Z)(this,Se),(bn=Be.call(this,Ie,je)).urlAfterRedirects=Et,bn.state=Qt,bn}return(0,_.Z)(Se,[{key:"toString",value:function(){return"ResolveEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),Se}(ct),Ht=function(){function De(Be){(0,s.Z)(this,De),this.route=Be}return(0,_.Z)(De,[{key:"toString",value:function(){return"RouteConfigLoadStart(path: ".concat(this.route.path,")")}}]),De}(),nn=function(){function De(Be){(0,s.Z)(this,De),this.route=Be}return(0,_.Z)(De,[{key:"toString",value:function(){return"RouteConfigLoadEnd(path: ".concat(this.route.path,")")}}]),De}(),an=function(){function De(Be){(0,s.Z)(this,De),this.snapshot=Be}return(0,_.Z)(De,[{key:"toString",value:function(){return"ChildActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),De}(),kt=function(){function De(Be){(0,s.Z)(this,De),this.snapshot=Be}return(0,_.Z)(De,[{key:"toString",value:function(){return"ChildActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),De}(),It=function(){function De(Be){(0,s.Z)(this,De),this.snapshot=Be}return(0,_.Z)(De,[{key:"toString",value:function(){return"ActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),De}(),$e=function(){function De(Be){(0,s.Z)(this,De),this.snapshot=Be}return(0,_.Z)(De,[{key:"toString",value:function(){return"ActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),De}(),Ae=function(){function De(Be,Se,Ie){(0,s.Z)(this,De),this.routerEvent=Be,this.position=Se,this.anchor=Ie}return(0,_.Z)(De,[{key:"toString",value:function(){var Se=this.position?"".concat(this.position[0],", ").concat(this.position[1]):null;return"Scroll(anchor: '".concat(this.anchor,"', position: '").concat(Se,"')")}}]),De}(),X="primary",ne=function(){function De(Be){(0,s.Z)(this,De),this.params=Be||{}}return(0,_.Z)(De,[{key:"has",value:function(Se){return Object.prototype.hasOwnProperty.call(this.params,Se)}},{key:"get",value:function(Se){if(this.has(Se)){var Ie=this.params[Se];return Array.isArray(Ie)?Ie[0]:Ie}return null}},{key:"getAll",value:function(Se){if(this.has(Se)){var Ie=this.params[Se];return Array.isArray(Ie)?Ie:[Ie]}return[]}},{key:"keys",get:function(){return Object.keys(this.params)}}]),De}();function me(De){return new ne(De)}var Oe="ngNavigationCancelingError";function He(De){var Be=Error("NavigationCancelingError: "+De);return Be[Oe]=!0,Be}function Ft(De,Be,Se){var Ie=Se.path.split("/");if(Ie.length>De.length||"full"===Se.pathMatch&&(Be.hasChildren()||Ie.length0?De[De.length-1]:null}function Jn(De,Be){for(var Se in De)De.hasOwnProperty(Se)&&Be(De[Se],Se)}function oi(De){return(0,h.CqO)(De)?De:(0,h.QGY)(De)?(0,N.D)(Promise.resolve(De)):(0,I.of)(De)}var un={exact:function pt(De,Be,Se){if(!$t(De.segments,Be.segments)||!Ke(De.segments,Be.segments,Se)||De.numberOfChildren!==Be.numberOfChildren)return!1;for(var Ie in Be.children)if(!De.children[Ie]||!pt(De.children[Ie],Be.children[Ie],Se))return!1;return!0},subset:Re},mn={exact:function qe(De,Be){return Xt(De,Be)},subset:function Ne(De,Be){return Object.keys(Be).length<=Object.keys(De).length&&Object.keys(Be).every(function(Se){return gn(De[Se],Be[Se])})},ignored:function(){return!0}};function zt(De,Be,Se){return un[Se.paths](De.root,Be.root,Se.matrixParams)&&mn[Se.queryParams](De.queryParams,Be.queryParams)&&!("exact"===Se.fragment&&De.fragment!==Be.fragment)}function Re(De,Be,Se){return tt(De,Be,Be.segments,Se)}function tt(De,Be,Se,Ie){if(De.segments.length>Se.length){var je=De.segments.slice(0,Se.length);return!(!$t(je,Se)||Be.hasChildren()||!Ke(je,Se,Ie))}if(De.segments.length===Se.length){if(!$t(De.segments,Se)||!Ke(De.segments,Se,Ie))return!1;for(var Et in Be.children)if(!De.children[Et]||!Re(De.children[Et],Be.children[Et],Ie))return!1;return!0}var Qt=Se.slice(0,De.segments.length),bn=Se.slice(De.segments.length);return!!($t(De.segments,Qt)&&Ke(De.segments,Qt,Ie)&&De.children[X])&&tt(De.children[X],Be,bn,Ie)}function Ke(De,Be,Se){return Be.every(function(Ie,je){return mn[Se](De[je].parameters,Ie.parameters)})}var vt=function(){function De(Be,Se,Ie){(0,s.Z)(this,De),this.root=Be,this.queryParams=Se,this.fragment=Ie}return(0,_.Z)(De,[{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=me(this.queryParams)),this._queryParamMap}},{key:"toString",value:function(){return xn.serialize(this)}}]),De}(),Rt=function(){function De(Be,Se){var Ie=this;(0,s.Z)(this,De),this.segments=Be,this.children=Se,this.parent=null,Jn(Se,function(je,Et){return je.parent=Ie})}return(0,_.Z)(De,[{key:"hasChildren",value:function(){return this.numberOfChildren>0}},{key:"numberOfChildren",get:function(){return Object.keys(this.children).length}},{key:"toString",value:function(){return In(this)}}]),De}(),rn=function(){function De(Be,Se){(0,s.Z)(this,De),this.path=Be,this.parameters=Se}return(0,_.Z)(De,[{key:"parameterMap",get:function(){return this._parameterMap||(this._parameterMap=me(this.parameters)),this._parameterMap}},{key:"toString",value:function(){return _a(this)}}]),De}();function $t(De,Be){return De.length===Be.length&&De.every(function(Se,Ie){return Se.path===Be[Ie].path})}var ln=(0,_.Z)(function De(){(0,s.Z)(this,De)}),_n=function(){function De(){(0,s.Z)(this,De)}return(0,_.Z)(De,[{key:"parse",value:function(Se){var Ie=new Le(Se);return new vt(Ie.parseRootSegment(),Ie.parseQueryParams(),Ie.parseFragment())}},{key:"serialize",value:function(Se){var Ie="/".concat(Yn(Se.root,!0)),je=function _r(De){var Be=Object.keys(De).map(function(Se){var Ie=De[Se];return Array.isArray(Ie)?Ie.map(function(je){return"".concat(wi(Se),"=").concat(wi(je))}).join("&"):"".concat(wi(Se),"=").concat(wi(Ie))}).filter(function(Se){return!!Se});return Be.length?"?".concat(Be.join("&")):""}(Se.queryParams),Et="string"==typeof Se.fragment?"#".concat(function Bi(De){return encodeURI(De)}(Se.fragment)):"";return"".concat(Ie).concat(je).concat(Et)}}]),De}(),xn=new _n;function In(De){return De.segments.map(function(Be){return _a(Be)}).join("/")}function Yn(De,Be){if(!De.hasChildren())return In(De);if(Be){var Se=De.children[X]?Yn(De.children[X],!1):"",Ie=[];return Jn(De.children,function(Et,Qt){Qt!==X&&Ie.push("".concat(Qt,":").concat(Yn(Et,!1)))}),Ie.length>0?"".concat(Se,"(").concat(Ie.join("//"),")"):Se}var je=function fn(De,Be){var Se=[];return Jn(De.children,function(Ie,je){je===X&&(Se=Se.concat(Be(Ie,je)))}),Jn(De.children,function(Ie,je){je!==X&&(Se=Se.concat(Be(Ie,je)))}),Se}(De,function(Et,Qt){return Qt===X?[Yn(De.children[X],!1)]:["".concat(Qt,":").concat(Yn(Et,!1))]});return 1===Object.keys(De.children).length&&null!=De.children[X]?"".concat(In(De),"/").concat(je[0]):"".concat(In(De),"/(").concat(je.join("//"),")")}function mi(De){return encodeURIComponent(De).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function wi(De){return mi(De).replace(/%3B/gi,";")}function Xi(De){return mi(De).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function ka(De){return decodeURIComponent(De)}function Ja(De){return ka(De.replace(/\+/g,"%20"))}function _a(De){return"".concat(Xi(De.path)).concat(function nr(De){return Object.keys(De).map(function(Be){return";".concat(Xi(Be),"=").concat(Xi(De[Be]))}).join("")}(De.parameters))}var wa=/^[^\/()?;=#]+/;function or(De){var Be=De.match(wa);return Be?Be[0]:""}var Ta=/^[^=?&#]+/,Pn=/^[^&#]+/,Le=function(){function De(Be){(0,s.Z)(this,De),this.url=Be,this.remaining=Be}return(0,_.Z)(De,[{key:"parseRootSegment",value:function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Rt([],{}):new Rt([],this.parseChildren())}},{key:"parseQueryParams",value:function(){var Se={};if(this.consumeOptional("?"))do{this.parseQueryParam(Se)}while(this.consumeOptional("&"));return Se}},{key:"parseFragment",value:function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}},{key:"parseChildren",value:function(){if(""===this.remaining)return{};this.consumeOptional("/");var Se=[];for(this.peekStartsWith("(")||Se.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),Se.push(this.parseSegment());var Ie={};this.peekStartsWith("/(")&&(this.capture("/"),Ie=this.parseParens(!0));var je={};return this.peekStartsWith("(")&&(je=this.parseParens(!1)),(Se.length>0||Object.keys(Ie).length>0)&&(je[X]=new Rt(Se,Ie)),je}},{key:"parseSegment",value:function(){var Se=or(this.remaining);if(""===Se&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '".concat(this.remaining,"'."));return this.capture(Se),new rn(ka(Se),this.parseMatrixParams())}},{key:"parseMatrixParams",value:function(){for(var Se={};this.consumeOptional(";");)this.parseParam(Se);return Se}},{key:"parseParam",value:function(Se){var Ie=or(this.remaining);if(Ie){this.capture(Ie);var je="";if(this.consumeOptional("=")){var Et=or(this.remaining);Et&&this.capture(je=Et)}Se[ka(Ie)]=ka(je)}}},{key:"parseQueryParam",value:function(Se){var Ie=function Cn(De){var Be=De.match(Ta);return Be?Be[0]:""}(this.remaining);if(Ie){this.capture(Ie);var je="";if(this.consumeOptional("=")){var Et=function Tt(De){var Be=De.match(Pn);return Be?Be[0]:""}(this.remaining);Et&&this.capture(je=Et)}var Qt=Ja(Ie),bn=Ja(je);if(Se.hasOwnProperty(Qt)){var On=Se[Qt];Array.isArray(On)||(Se[Qt]=On=[On]),On.push(bn)}else Se[Qt]=bn}}},{key:"parseParens",value:function(Se){var Ie={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var je=or(this.remaining),Et=this.remaining[je.length];if("/"!==Et&&")"!==Et&&";"!==Et)throw new Error("Cannot parse url '".concat(this.url,"'"));var Qt=void 0;je.indexOf(":")>-1?(Qt=je.substr(0,je.indexOf(":")),this.capture(Qt),this.capture(":")):Se&&(Qt=X);var bn=this.parseChildren();Ie[Qt]=1===Object.keys(bn).length?bn[X]:new Rt([],bn),this.consumeOptional("//")}return Ie}},{key:"peekStartsWith",value:function(Se){return this.remaining.startsWith(Se)}},{key:"consumeOptional",value:function(Se){return!!this.peekStartsWith(Se)&&(this.remaining=this.remaining.substring(Se.length),!0)}},{key:"capture",value:function(Se){if(!this.consumeOptional(Se))throw new Error('Expected "'.concat(Se,'".'))}}]),De}(),qt=function(){function De(Be){(0,s.Z)(this,De),this._root=Be}return(0,_.Z)(De,[{key:"root",get:function(){return this._root.value}},{key:"parent",value:function(Se){var Ie=this.pathFromRoot(Se);return Ie.length>1?Ie[Ie.length-2]:null}},{key:"children",value:function(Se){var Ie=Gt(Se,this._root);return Ie?Ie.children.map(function(je){return je.value}):[]}},{key:"firstChild",value:function(Se){var Ie=Gt(Se,this._root);return Ie&&Ie.children.length>0?Ie.children[0].value:null}},{key:"siblings",value:function(Se){var Ie=An(Se,this._root);return Ie.length<2?[]:Ie[Ie.length-2].children.map(function(Et){return Et.value}).filter(function(Et){return Et!==Se})}},{key:"pathFromRoot",value:function(Se){return An(Se,this._root).map(function(Ie){return Ie.value})}}]),De}();function Gt(De,Be){if(De===Be.value)return Be;var Ie,Se=(0,e.Z)(Be.children);try{for(Se.s();!(Ie=Se.n()).done;){var Et=Gt(De,Ie.value);if(Et)return Et}}catch(Qt){Se.e(Qt)}finally{Se.f()}return null}function An(De,Be){if(De===Be.value)return[Be];var Ie,Se=(0,e.Z)(Be.children);try{for(Se.s();!(Ie=Se.n()).done;){var Et=An(De,Ie.value);if(Et.length)return Et.unshift(Be),Et}}catch(Qt){Se.e(Qt)}finally{Se.f()}return[]}var Wn=function(){function De(Be,Se){(0,s.Z)(this,De),this.value=Be,this.children=Se}return(0,_.Z)(De,[{key:"toString",value:function(){return"TreeNode(".concat(this.value,")")}}]),De}();function vi(De){var Be={};return De&&De.children.forEach(function(Se){return Be[Se.value.outlet]=Se}),Be}var Hi=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je){var Et;return(0,s.Z)(this,Se),(Et=Be.call(this,Ie)).snapshot=je,Qa((0,t.Z)(Et),Ie),Et}return(0,_.Z)(Se,[{key:"toString",value:function(){return this.snapshot.toString()}}]),Se}(qt);function ea(De,Be){var Se=function _i(De,Be){var Qt=new Oa([],{},{},"",{},X,Be,null,De.root,-1,{});return new Aa("",new Wn(Qt,[]))}(De,Be),Ie=new L.X([new rn("",{})]),je=new L.X({}),Et=new L.X({}),Qt=new L.X({}),bn=new L.X(""),On=new Ii(Ie,je,Qt,bn,Et,X,Be,Se.root);return On.snapshot=Se.root,new Hi(new Wn(On,[]),Se)}var Ii=function(){function De(Be,Se,Ie,je,Et,Qt,bn,On){(0,s.Z)(this,De),this.url=Be,this.params=Se,this.queryParams=Ie,this.fragment=je,this.data=Et,this.outlet=Qt,this.component=bn,this._futureSnapshot=On}return(0,_.Z)(De,[{key:"routeConfig",get:function(){return this._futureSnapshot.routeConfig}},{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=this.params.pipe((0,ve.U)(function(Se){return me(Se)}))),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,ve.U)(function(Se){return me(Se)}))),this._queryParamMap}},{key:"toString",value:function(){return this.snapshot?this.snapshot.toString():"Future(".concat(this._futureSnapshot,")")}}]),De}();function ga(De){var Be=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"emptyOnly",Se=De.pathFromRoot,Ie=0;if("always"!==Be)for(Ie=Se.length-1;Ie>=1;){var je=Se[Ie],Et=Se[Ie-1];if(je.routeConfig&&""===je.routeConfig.path)Ie--;else{if(Et.component)break;Ie--}}return Ha(Se.slice(Ie))}function Ha(De){return De.reduce(function(Be,Se){return{params:Object.assign(Object.assign({},Be.params),Se.params),data:Object.assign(Object.assign({},Be.data),Se.data),resolve:Object.assign(Object.assign({},Be.resolve),Se._resolvedData)}},{params:{},data:{},resolve:{}})}var Oa=function(){function De(Be,Se,Ie,je,Et,Qt,bn,On,Tn,di,Ei){(0,s.Z)(this,De),this.url=Be,this.params=Se,this.queryParams=Ie,this.fragment=je,this.data=Et,this.outlet=Qt,this.component=bn,this.routeConfig=On,this._urlSegment=Tn,this._lastPathIndex=di,this._resolve=Ei}return(0,_.Z)(De,[{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=me(this.params)),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=me(this.queryParams)),this._queryParamMap}},{key:"toString",value:function(){var Se=this.url.map(function(je){return je.toString()}).join("/"),Ie=this.routeConfig?this.routeConfig.path:"";return"Route(url:'".concat(Se,"', path:'").concat(Ie,"')")}}]),De}(),Aa=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(Ie,je){var Et;return(0,s.Z)(this,Se),(Et=Be.call(this,je)).url=Ie,Qa((0,t.Z)(Et),je),Et}return(0,_.Z)(Se,[{key:"toString",value:function(){return va(this._root)}}]),Se}(qt);function Qa(De,Be){Be.value._routerState=De,Be.children.forEach(function(Se){return Qa(De,Se)})}function va(De){var Be=De.children.length>0?" { ".concat(De.children.map(va).join(", ")," } "):"";return"".concat(De.value).concat(Be)}function Ka(De){if(De.snapshot){var Be=De.snapshot,Se=De._futureSnapshot;De.snapshot=Se,Xt(Be.queryParams,Se.queryParams)||De.queryParams.next(Se.queryParams),Be.fragment!==Se.fragment&&De.fragment.next(Se.fragment),Xt(Be.params,Se.params)||De.params.next(Se.params),function sn(De,Be){if(De.length!==Be.length)return!1;for(var Se=0;Seje;){if(Et-=je,!(Ie=Ie.parent))throw new Error("Invalid number of '../'");je=Ie.segments.length}return new Wi(Ie,!1,je-Et)}(Se.snapshot._urlSegment,Se.snapshot._lastPathIndex+Et,De.numberOfDoubleDots)}(Et,Be,De),bn=Qt.processChildren?ca(Qt.segmentGroup,Qt.index,Et.commands):Ui(Qt.segmentGroup,Qt.index,Et.commands);return Xn(Qt.segmentGroup,bn,Be,Ie,je)}function dn(De){return"object"==typeof De&&null!=De&&!De.outlets&&!De.segmentPath}function Zn(De){return"object"==typeof De&&null!=De&&De.outlets}function Xn(De,Be,Se,Ie,je){var Et={};return Ie&&Jn(Ie,function(Qt,bn){Et[bn]=Array.isArray(Qt)?Qt.map(function(On){return"".concat(On)}):"".concat(Qt)}),new vt(Se.root===De?Be:ni(Se.root,De,Be),Et,je)}function ni(De,Be,Se){var Ie={};return Jn(De.children,function(je,Et){Ie[Et]=je===Be?Se:ni(je,Be,Se)}),new Rt(De.segments,Ie)}var pi=function(){function De(Be,Se,Ie){if((0,s.Z)(this,De),this.isAbsolute=Be,this.numberOfDoubleDots=Se,this.commands=Ie,Be&&Ie.length>0&&dn(Ie[0]))throw new Error("Root segment cannot have matrix parameters");var je=Ie.find(Zn);if(je&&je!==hn(Ie))throw new Error("{outlets:{}} has to be the last command")}return(0,_.Z)(De,[{key:"toRoot",value:function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}]),De}(),Wi=(0,_.Z)(function De(Be,Se,Ie){(0,s.Z)(this,De),this.segmentGroup=Be,this.processChildren=Se,this.index=Ie});function Ui(De,Be,Se){if(De||(De=new Rt([],{})),0===De.segments.length&&De.hasChildren())return ca(De,Be,Se);var Ie=function oa(De,Be,Se){for(var Ie=0,je=Be,Et={match:!1,pathIndex:0,commandIndex:0};je=Se.length)return Et;var Qt=De.segments[je],bn=Se[Ie];if(Zn(bn))break;var On="".concat(bn),Tn=Ie0&&void 0===On)break;if(On&&Tn&&"object"==typeof Tn&&void 0===Tn.outlets){if(!ir(On,Tn,Qt))return Et;Ie+=2}else{if(!ir(On,{},Qt))return Et;Ie++}je++}return{match:!0,pathIndex:je,commandIndex:Ie}}(De,Be,Se),je=Se.slice(Ie.commandIndex);if(Ie.match&&Ie.pathIndex1&&void 0!==arguments[1]?arguments[1]:"",Se=0;Se0)?Object.assign({},ke):{matched:!0,consumedSegments:[],lastChild:0,parameters:{},positionalParamSegments:{}};var Et=(Be.matcher||Ft)(Se,De,Be);if(!Et)return Object.assign({},ke);var Qt={};Jn(Et.posParams,function(On,Tn){Qt[Tn]=On.path});var bn=Et.consumed.length>0?Object.assign(Object.assign({},Qt),Et.consumed[Et.consumed.length-1].parameters):Qt;return{matched:!0,consumedSegments:Et.consumed,lastChild:Et.consumed.length,parameters:bn,positionalParamSegments:null!==(Ie=Et.posParams)&&void 0!==Ie?Ie:{}}}function de(De,Be,Se,Ie){var je=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"corrected";if(Se.length>0&&Ge(De,Se,Ie)){var Et=new Rt(Be,Qe(De,Be,Ie,new Rt(Se,De.children)));return Et._sourceSegment=De,Et._segmentIndexShift=Be.length,{segmentGroup:Et,slicedSegments:[]}}if(0===Se.length&&Mt(De,Se,Ie)){var Qt=new Rt(De.segments,we(De,Be,Se,Ie,De.children,je));return Qt._sourceSegment=De,Qt._segmentIndexShift=Be.length,{segmentGroup:Qt,slicedSegments:Se}}var bn=new Rt(De.segments,De.children);return bn._sourceSegment=De,bn._segmentIndexShift=Be.length,{segmentGroup:bn,slicedSegments:Se}}function we(De,Be,Se,Ie,je,Et){var On,Qt={},bn=(0,e.Z)(Ie);try{for(bn.s();!(On=bn.n()).done;){var Tn=On.value;if(Nt(De,Se,Tn)&&!je[dt(Tn)]){var di=new Rt([],{});di._sourceSegment=De,di._segmentIndexShift="legacy"===Et?De.segments.length:Be.length,Qt[dt(Tn)]=di}}}catch(Ei){bn.e(Ei)}finally{bn.f()}return Object.assign(Object.assign({},je),Qt)}function Qe(De,Be,Se,Ie){var je={};je[X]=Ie,Ie._sourceSegment=De,Ie._segmentIndexShift=Be.length;var Qt,Et=(0,e.Z)(Se);try{for(Et.s();!(Qt=Et.n()).done;){var bn=Qt.value;if(""===bn.path&&dt(bn)!==X){var On=new Rt([],{});On._sourceSegment=De,On._segmentIndexShift=Be.length,je[dt(bn)]=On}}}catch(Tn){Et.e(Tn)}finally{Et.f()}return je}function Ge(De,Be,Se){return Se.some(function(Ie){return Nt(De,Be,Ie)&&dt(Ie)!==X})}function Mt(De,Be,Se){return Se.some(function(Ie){return Nt(De,Be,Ie)})}function Nt(De,Be,Se){return(!(De.hasChildren()||Be.length>0)||"full"!==Se.pathMatch)&&""===Se.path}function yn(De,Be,Se,Ie){return!!(dt(De)===Ie||Ie!==X&&Nt(Be,Se,De))&&("**"===De.path||gt(Be,De,Se).matched)}function Ln(De,Be,Se){return 0===Be.length&&!De.children[Se]}var ei=(0,_.Z)(function De(Be){(0,s.Z)(this,De),this.segmentGroup=Be||null}),li=(0,_.Z)(function De(Be){(0,s.Z)(this,De),this.urlTree=Be});function Si(De){return new y.y(function(Be){return Be.error(new ei(De))})}function Ai(De){return new y.y(function(Be){return Be.error(new li(De))})}function Fi(De){return new y.y(function(Be){return Be.error(new Error("Only absolute redirects can have named outlets. redirectTo: '".concat(De,"'")))})}var yt=function(){function De(Be,Se,Ie,je,Et){(0,s.Z)(this,De),this.configLoader=Se,this.urlSerializer=Ie,this.urlTree=je,this.config=Et,this.allowRedirects=!0,this.ngModule=Be.get(h.h0i)}return(0,_.Z)(De,[{key:"apply",value:function(){var Se=this,Ie=de(this.urlTree.root,[],[],this.config).segmentGroup,je=new Rt(Ie.segments,Ie.children);return this.expandSegmentGroup(this.ngModule,this.config,je,X).pipe((0,ve.U)(function(bn){return Se.createUrlTree(ie(bn),Se.urlTree.queryParams,Se.urlTree.fragment)})).pipe((0,Xe.K)(function(bn){if(bn instanceof li)return Se.allowRedirects=!1,Se.match(bn.urlTree);throw bn instanceof ei?Se.noMatchError(bn):bn}))}},{key:"match",value:function(Se){var Ie=this;return this.expandSegmentGroup(this.ngModule,this.config,Se.root,X).pipe((0,ve.U)(function(Qt){return Ie.createUrlTree(ie(Qt),Se.queryParams,Se.fragment)})).pipe((0,Xe.K)(function(Qt){throw Qt instanceof ei?Ie.noMatchError(Qt):Qt}))}},{key:"noMatchError",value:function(Se){return new Error("Cannot match any routes. URL Segment: '".concat(Se.segmentGroup,"'"))}},{key:"createUrlTree",value:function(Se,Ie,je){var Et=Se.segments.length>0?new Rt([],(0,S.Z)({},X,Se)):Se;return new vt(Et,Ie,je)}},{key:"expandSegmentGroup",value:function(Se,Ie,je,Et){return 0===je.segments.length&&je.hasChildren()?this.expandChildren(Se,Ie,je).pipe((0,ve.U)(function(Qt){return new Rt([],Qt)})):this.expandSegment(Se,je,Ie,je.segments,Et,!0)}},{key:"expandChildren",value:function(Se,Ie,je){for(var Et=this,Qt=[],bn=0,On=Object.keys(je.children);bn=2;return function(Ie){return Ie.pipe(De?(0,d.h)(function(je,Et){return De(je,Et,Ie)}):G.y,Q(1),Se?K(Be):J(function(){return new T}))}}())}},{key:"expandSegment",value:function(Se,Ie,je,Et,Qt,bn){var On=this;return(0,N.D)(je).pipe((0,mt.b)(function(Tn){return On.expandSegmentAgainstRoute(Se,Ie,je,Tn,Et,Qt,bn).pipe((0,Xe.K)(function(Ei){if(Ei instanceof ei)return(0,I.of)(null);throw Ei}))}),Me(function(Tn){return!!Tn}),(0,Xe.K)(function(Tn,di){if(Tn instanceof T||"EmptyError"===Tn.name){if(Ln(Ie,Et,Qt))return(0,I.of)(new Rt([],{}));throw new ei(Ie)}throw Tn}))}},{key:"expandSegmentAgainstRoute",value:function(Se,Ie,je,Et,Qt,bn,On){return yn(Et,Ie,Qt,bn)?void 0===Et.redirectTo?this.matchSegmentAgainstRoute(Se,Ie,Et,Qt,bn):On&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(Se,Ie,je,Et,Qt,bn):Si(Ie):Si(Ie)}},{key:"expandSegmentAgainstRouteUsingRedirect",value:function(Se,Ie,je,Et,Qt,bn){return"**"===Et.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(Se,je,Et,bn):this.expandRegularSegmentAgainstRouteUsingRedirect(Se,Ie,je,Et,Qt,bn)}},{key:"expandWildCardWithParamsAgainstRouteUsingRedirect",value:function(Se,Ie,je,Et){var Qt=this,bn=this.applyRedirectCommands([],je.redirectTo,{});return je.redirectTo.startsWith("/")?Ai(bn):this.lineralizeSegments(je,bn).pipe((0,wt.z)(function(On){var Tn=new Rt(On,{});return Qt.expandSegment(Se,Tn,Ie,On,Et,!1)}))}},{key:"expandRegularSegmentAgainstRouteUsingRedirect",value:function(Se,Ie,je,Et,Qt,bn){var On=this,Tn=gt(Ie,Et,Qt),Ei=Tn.consumedSegments,xa=Tn.lastChild,Xa=Tn.positionalParamSegments;if(!Tn.matched)return Si(Ie);var fr=this.applyRedirectCommands(Ei,Et.redirectTo,Xa);return Et.redirectTo.startsWith("/")?Ai(fr):this.lineralizeSegments(Et,fr).pipe((0,wt.z)(function(Pr){return On.expandSegment(Se,Ie,je,Pr.concat(Qt.slice(xa)),bn,!1)}))}},{key:"matchSegmentAgainstRoute",value:function(Se,Ie,je,Et,Qt){var bn=this;if("**"===je.path)return je.loadChildren?(je._loadedConfig?(0,I.of)(je._loadedConfig):this.configLoader.load(Se.injector,je)).pipe((0,ve.U)(function(Pr){return je._loadedConfig=Pr,new Rt(Et,{})})):(0,I.of)(new Rt(Et,{}));var Tn=gt(Ie,je,Et),Ei=Tn.consumedSegments,xa=Tn.lastChild;if(!Tn.matched)return Si(Ie);var Xa=Et.slice(xa);return this.getChildConfig(Se,je,Et).pipe((0,wt.z)(function(Pr){var Yr=Pr.module,Kr=Pr.routes,mo=de(Ie,Ei,Xa,Kr),To=mo.segmentGroup,Nr=mo.slicedSegments,vr=new Rt(To.segments,To.children);if(0===Nr.length&&vr.hasChildren())return bn.expandChildren(Yr,Kr,vr).pipe((0,ve.U)(function(qr){return new Rt(Ei,qr)}));if(0===Kr.length&&0===Nr.length)return(0,I.of)(new Rt(Ei,{}));var Lo=dt(je)===Qt;return bn.expandSegment(Yr,vr,Kr,Nr,Lo?X:Qt,!0).pipe((0,ve.U)(function(qr){return new Rt(Ei.concat(qr.segments),qr.children)}))}))}},{key:"getChildConfig",value:function(Se,Ie,je){var Et=this;return Ie.children?(0,I.of)(new Dn(Ie.children,Se)):Ie.loadChildren?void 0!==Ie._loadedConfig?(0,I.of)(Ie._loadedConfig):this.runCanLoadGuards(Se.injector,Ie,je).pipe((0,wt.z)(function(Qt){return Qt?Et.configLoader.load(Se.injector,Ie).pipe((0,ve.U)(function(bn){return Ie._loadedConfig=bn,bn})):function Ma(De){return new y.y(function(Be){return Be.error(He("Cannot load children because the guard of the route \"path: '".concat(De.path,"'\" returned false")))})}(Ie)})):(0,I.of)(new Dn([],Se))}},{key:"runCanLoadGuards",value:function(Se,Ie,je){var Et=this,Qt=Ie.canLoad;if(!Qt||0===Qt.length)return(0,I.of)(!0);var bn=Qt.map(function(On){var di,Tn=Se.get(On);if(function Vi(De){return De&&qn(De.canLoad)}(Tn))di=Tn.canLoad(Ie,je);else{if(!qn(Tn))throw new Error("Invalid CanLoad guard");di=Tn(Ie,je)}return oi(di)});return(0,I.of)(bn).pipe(Ra(),(0,Pt.b)(function(On){if(Ji(On)){var Tn=He('Redirecting to "'.concat(Et.urlSerializer.serialize(On),'"'));throw Tn.url=On,Tn}}),(0,ve.U)(function(On){return!0===On}))}},{key:"lineralizeSegments",value:function(Se,Ie){for(var je=[],Et=Ie.root;;){if(je=je.concat(Et.segments),0===Et.numberOfChildren)return(0,I.of)(je);if(Et.numberOfChildren>1||!Et.children[X])return Fi(Se.redirectTo);Et=Et.children[X]}}},{key:"applyRedirectCommands",value:function(Se,Ie,je){return this.applyRedirectCreatreUrlTree(Ie,this.urlSerializer.parse(Ie),Se,je)}},{key:"applyRedirectCreatreUrlTree",value:function(Se,Ie,je,Et){var Qt=this.createSegmentGroup(Se,Ie.root,je,Et);return new vt(Qt,this.createQueryParams(Ie.queryParams,this.urlTree.queryParams),Ie.fragment)}},{key:"createQueryParams",value:function(Se,Ie){var je={};return Jn(Se,function(Et,Qt){if("string"==typeof Et&&Et.startsWith(":")){var On=Et.substring(1);je[Qt]=Ie[On]}else je[Qt]=Et}),je}},{key:"createSegmentGroup",value:function(Se,Ie,je,Et){var Qt=this,bn=this.createSegments(Se,Ie.segments,je,Et),On={};return Jn(Ie.children,function(Tn,di){On[di]=Qt.createSegmentGroup(Se,Tn,je,Et)}),new Rt(bn,On)}},{key:"createSegments",value:function(Se,Ie,je,Et){var Qt=this;return Ie.map(function(bn){return bn.path.startsWith(":")?Qt.findPosParam(Se,bn,Et):Qt.findOrReturn(bn,je)})}},{key:"findPosParam",value:function(Se,Ie,je){var Et=je[Ie.path.substring(1)];if(!Et)throw new Error("Cannot redirect to '".concat(Se,"'. Cannot find '").concat(Ie.path,"'."));return Et}},{key:"findOrReturn",value:function(Se,Ie){var Qt,je=0,Et=(0,e.Z)(Ie);try{for(Et.s();!(Qt=Et.n()).done;){var bn=Qt.value;if(bn.path===Se.path)return Ie.splice(je),bn;je++}}catch(On){Et.e(On)}finally{Et.f()}return Se}}]),De}();function ie(De){for(var Be={},Se=0,Ie=Object.keys(De.children);Se0||Qt.hasChildren())&&(Be[je]=Qt)}return function St(De){if(1===De.numberOfChildren&&De.children[X]){var Be=De.children[X];return new Rt(De.segments.concat(Be.segments),Be.children)}return De}(new Rt(De.segments,Be))}var fe=(0,_.Z)(function De(Be){(0,s.Z)(this,De),this.path=Be,this.route=this.path[this.path.length-1]}),oe=(0,_.Z)(function De(Be,Se){(0,s.Z)(this,De),this.component=Be,this.route=Se});function bt(De,Be,Se){var Ie=De._root;return hi(Ie,Be?Be._root:null,Se,[Ie.value])}function Jt(De,Be,Se){var Ie=function zn(De){if(!De)return null;for(var Be=De.parent;Be;Be=Be.parent){var Se=Be.routeConfig;if(Se&&Se._loadedConfig)return Se._loadedConfig}return null}(Be);return(Ie?Ie.module.injector:Se).get(De)}function hi(De,Be,Se,Ie){var je=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},Et=vi(Be);return De.children.forEach(function(Qt){qi(Qt,Et[Qt.value.outlet],Se,Ie.concat([Qt.value]),je),delete Et[Qt.value.outlet]}),Jn(Et,function(Qt,bn){return Wa(Qt,Se.getContext(bn),je)}),je}function qi(De,Be,Se,Ie){var je=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},Et=De.value,Qt=Be?Be.value:null,bn=Se?Se.getContext(De.value.outlet):null;if(Qt&&Et.routeConfig===Qt.routeConfig){var On=Oi(Qt,Et,Et.routeConfig.runGuardsAndResolvers);On?je.canActivateChecks.push(new fe(Ie)):(Et.data=Qt.data,Et._resolvedData=Qt._resolvedData),hi(De,Be,Et.component?bn?bn.children:null:Se,Ie,je),On&&bn&&bn.outlet&&bn.outlet.isActivated&&je.canDeactivateChecks.push(new oe(bn.outlet.component,Qt))}else Qt&&Wa(Be,bn,je),je.canActivateChecks.push(new fe(Ie)),hi(De,null,Et.component?bn?bn.children:null:Se,Ie,je);return je}function Oi(De,Be,Se){if("function"==typeof Se)return Se(De,Be);switch(Se){case"pathParamsChange":return!$t(De.url,Be.url);case"pathParamsOrQueryParamsChange":return!$t(De.url,Be.url)||!Xt(De.queryParams,Be.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Zt(De,Be)||!Xt(De.queryParams,Be.queryParams);default:return!Zt(De,Be)}}function Wa(De,Be,Se){var Ie=vi(De),je=De.value;Jn(Ie,function(Et,Qt){Wa(Et,je.component?Be?Be.children.getContext(Qt):null:Be,Se)}),Se.canDeactivateChecks.push(new oe(je.component&&Be&&Be.outlet&&Be.outlet.isActivated?Be.outlet.component:null,je))}var jo=(0,_.Z)(function De(){(0,s.Z)(this,De)});function hs(De){return new y.y(function(Be){return Be.error(De)})}var ii=function(){function De(Be,Se,Ie,je,Et,Qt){(0,s.Z)(this,De),this.rootComponentType=Be,this.config=Se,this.urlTree=Ie,this.url=je,this.paramsInheritanceStrategy=Et,this.relativeLinkResolution=Qt}return(0,_.Z)(De,[{key:"recognize",value:function(){var Se=de(this.urlTree.root,[],[],this.config.filter(function(bn){return void 0===bn.redirectTo}),this.relativeLinkResolution).segmentGroup,Ie=this.processSegmentGroup(this.config,Se,X);if(null===Ie)return null;var je=new Oa([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},X,this.rootComponentType,null,this.urlTree.root,-1,{}),Et=new Wn(je,Ie),Qt=new Aa(this.url,Et);return this.inheritParamsAndData(Qt._root),Qt}},{key:"inheritParamsAndData",value:function(Se){var Ie=this,je=Se.value,Et=ga(je,this.paramsInheritanceStrategy);je.params=Object.freeze(Et.params),je.data=Object.freeze(Et.data),Se.children.forEach(function(Qt){return Ie.inheritParamsAndData(Qt)})}},{key:"processSegmentGroup",value:function(Se,Ie,je){return 0===Ie.segments.length&&Ie.hasChildren()?this.processChildren(Se,Ie):this.processSegment(Se,Ie,Ie.segments,je)}},{key:"processChildren",value:function(Se,Ie){for(var je=[],Et=0,Qt=Object.keys(Ie.children);Et0?hn(je).parameters:{};Qt=new Oa(je,Tn,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,xr(Se),dt(Se),Se.component,Se,ji(Ie),Va(Ie)+je.length,So(Se))}else{var di=gt(Ie,Se,je);if(!di.matched)return null;bn=di.consumedSegments,On=je.slice(di.lastChild),Qt=new Oa(bn,di.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,xr(Se),dt(Se),Se.component,Se,ji(Ie),Va(Ie)+bn.length,So(Se))}var Ei=function Ur(De){return De.children?De.children:De.loadChildren?De._loadedConfig.routes:[]}(Se),xa=de(Ie,bn,On,Ei.filter(function(mo){return void 0===mo.redirectTo}),this.relativeLinkResolution),Xa=xa.segmentGroup,fr=xa.slicedSegments;if(0===fr.length&&Xa.hasChildren()){var Pr=this.processChildren(Ei,Xa);return null===Pr?null:[new Wn(Qt,Pr)]}if(0===Ei.length&&0===fr.length)return[new Wn(Qt,[])];var Yr=dt(Se)===Et,Kr=this.processSegment(Ei,Xa,fr,Yr?X:Et);return null===Kr?null:[new Wn(Qt,Kr)]}}]),De}();function yi(De){var je,Be=[],Se=new Set,Ie=(0,e.Z)(De);try{var Et=function(){var xa=je.value;if(!function br(De){var Be=De.value.routeConfig;return Be&&""===Be.path&&void 0===Be.redirectTo}(xa))return Be.push(xa),"continue";var fr,Xa=Be.find(function(Pr){return xa.value.routeConfig===Pr.value.routeConfig});void 0!==Xa?((fr=Xa.children).push.apply(fr,(0,c.Z)(xa.children)),Se.add(Xa)):Be.push(xa)};for(Ie.s();!(je=Ie.n()).done;)Et()}catch(Ei){Ie.e(Ei)}finally{Ie.f()}var On,bn=(0,e.Z)(Se);try{for(bn.s();!(On=bn.n()).done;){var Tn=On.value,di=yi(Tn.children);Be.push(new Wn(Tn.value,di))}}catch(Ei){bn.e(Ei)}finally{bn.f()}return Be.filter(function(Ei){return!Se.has(Ei)})}function ji(De){for(var Be=De;Be._sourceSegment;)Be=Be._sourceSegment;return Be}function Va(De){for(var Be=De,Se=Be._segmentIndexShift?Be._segmentIndexShift:0;Be._sourceSegment;)Se+=(Be=Be._sourceSegment)._segmentIndexShift?Be._segmentIndexShift:0;return Se-1}function xr(De){return De.data||{}}function So(De){return De.resolve||{}}function io(De){return[].concat((0,c.Z)(Object.keys(De)),(0,c.Z)(Object.getOwnPropertySymbols(De)))}function kn(De){return(0,ue.w)(function(Be){var Se=De(Be);return Se?(0,N.D)(Se).pipe((0,ve.U)(function(){return Be})):(0,I.of)(Be)})}var Qn=(0,_.Z)(function De(){(0,s.Z)(this,De)}),Di=function(De){(0,u.Z)(Se,De);var Be=(0,o.Z)(Se);function Se(){return(0,s.Z)(this,Se),Be.apply(this,arguments)}return(0,_.Z)(Se)}(function(){function De(){(0,s.Z)(this,De)}return(0,_.Z)(De,[{key:"shouldDetach",value:function(Se){return!1}},{key:"store",value:function(Se,Ie){}},{key:"shouldAttach",value:function(Se){return!1}},{key:"retrieve",value:function(Se){return null}},{key:"shouldReuseRoute",value:function(Se,Ie){return Se.routeConfig===Ie.routeConfig}}]),De}()),Gi=new h.OlP("ROUTES"),tr=function(){function De(Be,Se,Ie,je){(0,s.Z)(this,De),this.injector=Be,this.compiler=Se,this.onLoadStartListener=Ie,this.onLoadEndListener=je}return(0,_.Z)(De,[{key:"load",value:function(Se,Ie){var je=this;if(Ie._loader$)return Ie._loader$;this.onLoadStartListener&&this.onLoadStartListener(Ie);var Qt=this.loadModuleFactory(Ie.loadChildren).pipe((0,ve.U)(function(bn){je.onLoadEndListener&&je.onLoadEndListener(Ie);var On=bn.create(Se);return new Dn(vn(On.injector.get(Gi,void 0,h.XFs.Self|h.XFs.Optional)).map(Lt),On)}),(0,Xe.K)(function(bn){throw Ie._loader$=void 0,bn}));return Ie._loader$=new D(Qt,function(){return new $.x}).pipe(k()),Ie._loader$}},{key:"loadModuleFactory",value:function(Se){var Ie=this;return oi(Se()).pipe((0,wt.z)(function(je){return je instanceof h.YKP?(0,I.of)(je):(0,N.D)(Ie.compiler.compileModuleAsync(je))}))}}]),De}(),ar=(0,_.Z)(function De(){(0,s.Z)(this,De)}),ja=function(){function De(){(0,s.Z)(this,De)}return(0,_.Z)(De,[{key:"shouldProcessUrl",value:function(Se){return!0}},{key:"extract",value:function(Se){return Se}},{key:"merge",value:function(Se,Ie){return Se}}]),De}();function Es(De){throw De}function hu(De,Be,Se){return Be.parse("/")}function so(De,Be){return(0,I.of)(null)}var Zs={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Rl={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Ir=function(){var De=function(){function Be(Se,Ie,je,Et,Qt,bn,On){var Tn=this;(0,s.Z)(this,Be),this.rootComponentType=Se,this.urlSerializer=Ie,this.rootContexts=je,this.location=Et,this.config=On,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.disposed=!1,this.navigationId=0,this.currentPageId=0,this.isNgZoneEnabled=!1,this.events=new $.x,this.errorHandler=Es,this.malformedUriErrorHandler=hu,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:so,afterPreactivation:so},this.urlHandlingStrategy=new ja,this.routeReuseStrategy=new Di,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.canceledNavigationResolution="replace",this.ngModule=Qt.get(h.h0i),this.console=Qt.get(h.c2e);var xa=Qt.get(h.R0b);this.isNgZoneEnabled=xa instanceof h.R0b&&h.R0b.isInAngularZone(),this.resetConfig(On),this.currentUrlTree=function ri(){return new vt(new Rt([],{}),{},null)}(),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new tr(Qt,bn,function(fr){return Tn.triggerEvent(new Ht(fr))},function(fr){return Tn.triggerEvent(new nn(fr))}),this.routerState=ea(this.currentUrlTree,this.rootComponentType),this.transitions=new L.X({id:0,targetPageId:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return(0,_.Z)(Be,[{key:"browserPageId",get:function(){var Ie;return null===(Ie=this.location.getState())||void 0===Ie?void 0:Ie.\u0275routerPageId}},{key:"setupNavigations",value:function(Ie){var je=this,Et=this.events;return Ie.pipe((0,d.h)(function(Qt){return 0!==Qt.id}),(0,ve.U)(function(Qt){return Object.assign(Object.assign({},Qt),{extractedUrl:je.urlHandlingStrategy.extract(Qt.rawUrl)})}),(0,ue.w)(function(Qt){var bn=!1,On=!1;return(0,I.of)(Qt).pipe((0,Pt.b)(function(Tn){je.currentNavigation={id:Tn.id,initialUrl:Tn.currentRawUrl,extractedUrl:Tn.extractedUrl,trigger:Tn.source,extras:Tn.extras,previousNavigation:je.lastSuccessfulNavigation?Object.assign(Object.assign({},je.lastSuccessfulNavigation),{previousNavigation:null}):null}}),(0,ue.w)(function(Tn){var di=je.browserUrlTree.toString(),Ei=!je.navigated||Tn.extractedUrl.toString()!==di||di!==je.currentUrlTree.toString();if(("reload"===je.onSameUrlNavigation||Ei)&&je.urlHandlingStrategy.shouldProcessUrl(Tn.rawUrl))return vs(Tn.source)&&(je.browserUrlTree=Tn.extractedUrl),(0,I.of)(Tn).pipe((0,ue.w)(function(vr){var Wt=je.transitions.getValue();return Et.next(new Ee(vr.id,je.serializeUrl(vr.extractedUrl),vr.source,vr.restoredState)),Wt!==je.transitions.getValue()?W.E:Promise.resolve(vr)}),function Ye(De,Be,Se,Ie){return(0,ue.w)(function(je){return function ot(De,Be,Se,Ie,je){return new yt(De,Be,Se,Ie,je).apply()}(De,Be,Se,je.extractedUrl,Ie).pipe((0,ve.U)(function(Et){return Object.assign(Object.assign({},je),{urlAfterRedirects:Et})}))})}(je.ngModule.injector,je.configLoader,je.urlSerializer,je.config),(0,Pt.b)(function(vr){je.currentNavigation=Object.assign(Object.assign({},je.currentNavigation),{finalUrl:vr.urlAfterRedirects})}),function _s(De,Be,Se,Ie,je){return(0,wt.z)(function(Et){return function gl(De,Be,Se,Ie){var je=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"emptyOnly",Et=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"legacy";try{var Qt=new ii(De,Be,Se,Ie,je,Et).recognize();return null===Qt?hs(new jo):(0,I.of)(Qt)}catch(bn){return hs(bn)}}(De,Be,Et.urlAfterRedirects,Se(Et.urlAfterRedirects),Ie,je).pipe((0,ve.U)(function(Qt){return Object.assign(Object.assign({},Et),{targetSnapshot:Qt})}))})}(je.rootComponentType,je.config,function(vr){return je.serializeUrl(vr)},je.paramsInheritanceStrategy,je.relativeLinkResolution),(0,Pt.b)(function(vr){if("eager"===je.urlUpdateStrategy){if(!vr.extras.skipLocationChange){var Wt=je.urlHandlingStrategy.merge(vr.urlAfterRedirects,vr.rawUrl);je.setBrowserUrl(Wt,vr)}je.browserUrlTree=vr.urlAfterRedirects}var Lo=new We(vr.id,je.serializeUrl(vr.extractedUrl),je.serializeUrl(vr.urlAfterRedirects),vr.targetSnapshot);Et.next(Lo)}));if(Ei&&je.rawUrlTree&&je.urlHandlingStrategy.shouldProcessUrl(je.rawUrlTree)){var Pr=Tn.extractedUrl,Yr=Tn.source,Kr=Tn.restoredState,mo=Tn.extras,To=new Ee(Tn.id,je.serializeUrl(Pr),Yr,Kr);Et.next(To);var Nr=ea(Pr,je.rootComponentType).snapshot;return(0,I.of)(Object.assign(Object.assign({},Tn),{targetSnapshot:Nr,urlAfterRedirects:Pr,extras:Object.assign(Object.assign({},mo),{skipLocationChange:!1,replaceUrl:!1})}))}return je.rawUrlTree=Tn.rawUrl,Tn.resolve(null),W.E}),kn(function(Tn){var fr=Tn.extras;return je.hooks.beforePreactivation(Tn.targetSnapshot,{navigationId:Tn.id,appliedUrlTree:Tn.extractedUrl,rawUrlTree:Tn.rawUrl,skipLocationChange:!!fr.skipLocationChange,replaceUrl:!!fr.replaceUrl})}),(0,Pt.b)(function(Tn){var di=new xe(Tn.id,je.serializeUrl(Tn.extractedUrl),je.serializeUrl(Tn.urlAfterRedirects),Tn.targetSnapshot);je.triggerEvent(di)}),(0,ve.U)(function(Tn){return Object.assign(Object.assign({},Tn),{guards:bt(Tn.targetSnapshot,Tn.currentSnapshot,je.rootContexts)})}),function Ni(De,Be){return(0,wt.z)(function(Se){var Ie=Se.targetSnapshot,je=Se.currentSnapshot,Et=Se.guards,Qt=Et.canActivateChecks,bn=Et.canDeactivateChecks;return 0===bn.length&&0===Qt.length?(0,I.of)(Object.assign(Object.assign({},Se),{guardsResult:!0})):function cr(De,Be,Se,Ie){return(0,N.D)(De).pipe((0,wt.z)(function(je){return function xo(De,Be,Se,Ie,je){var Et=Be&&Be.routeConfig?Be.routeConfig.canDeactivate:null;if(!Et||0===Et.length)return(0,I.of)(!0);var Qt=Et.map(function(bn){var Tn,On=Jt(bn,Be,je);if(function Ua(De){return De&&qn(De.canDeactivate)}(On))Tn=oi(On.canDeactivate(De,Be,Se,Ie));else{if(!qn(On))throw new Error("Invalid CanDeactivate guard");Tn=oi(On(De,Be,Se,Ie))}return Tn.pipe(Me())});return(0,I.of)(Qt).pipe(Ra())}(je.component,je.route,Se,Be,Ie)}),Me(function(je){return!0!==je},!0))}(bn,Ie,je,De).pipe((0,wt.z)(function(On){return On&&function bi(De){return"boolean"==typeof De}(On)?function po(De,Be,Se,Ie){return(0,N.D)(Be).pipe((0,mt.b)(function(je){return(0,le.z)(function Nl(De,Be){return null!==De&&Be&&Be(new an(De)),(0,I.of)(!0)}(je.route.parent,Ie),function ia(De,Be){return null!==De&&Be&&Be(new It(De)),(0,I.of)(!0)}(je.route,Ie),function qa(De,Be,Se){var Ie=Be[Be.length-1],je=Be.slice(0,Be.length-1).reverse().map(function(Qt){return function xt(De){var Be=De.routeConfig?De.routeConfig.canActivateChild:null;return Be&&0!==Be.length?{node:De,guards:Be}:null}(Qt)}).filter(function(Qt){return null!==Qt}),Et=je.map(function(Qt){return(0,re.P)(function(){var bn=Qt.guards.map(function(On){var di,Tn=Jt(On,Qt.node,Se);if(function Na(De){return De&&qn(De.canActivateChild)}(Tn))di=oi(Tn.canActivateChild(Ie,De));else{if(!qn(Tn))throw new Error("Invalid CanActivateChild guard");di=oi(Tn(Ie,De))}return di.pipe(Me())});return(0,I.of)(bn).pipe(Ra())})});return(0,I.of)(Et).pipe(Ra())}(De,je.path,Se),function Os(De,Be,Se){var Ie=Be.routeConfig?Be.routeConfig.canActivate:null;if(!Ie||0===Ie.length)return(0,I.of)(!0);var je=Ie.map(function(Et){return(0,re.P)(function(){var bn,Qt=Jt(Et,Be,Se);if(function ya(De){return De&&qn(De.canActivate)}(Qt))bn=oi(Qt.canActivate(Be,De));else{if(!qn(Qt))throw new Error("Invalid CanActivate guard");bn=oi(Qt(Be,De))}return bn.pipe(Me())})});return(0,I.of)(je).pipe(Ra())}(De,je.route,Se))}),Me(function(je){return!0!==je},!0))}(Ie,Qt,De,Be):(0,I.of)(On)}),(0,ve.U)(function(On){return Object.assign(Object.assign({},Se),{guardsResult:On})}))})}(je.ngModule.injector,function(Tn){return je.triggerEvent(Tn)}),(0,Pt.b)(function(Tn){if(Ji(Tn.guardsResult)){var di=He('Redirecting to "'.concat(je.serializeUrl(Tn.guardsResult),'"'));throw di.url=Tn.guardsResult,di}var Ei=new ut(Tn.id,je.serializeUrl(Tn.extractedUrl),je.serializeUrl(Tn.urlAfterRedirects),Tn.targetSnapshot,!!Tn.guardsResult);je.triggerEvent(Ei)}),(0,d.h)(function(Tn){return!!Tn.guardsResult||(je.restoreHistory(Tn),je.cancelNavigationTransition(Tn,""),!1)}),kn(function(Tn){if(Tn.guards.canActivateChecks.length)return(0,I.of)(Tn).pipe((0,Pt.b)(function(di){var Ei=new Fe(di.id,je.serializeUrl(di.extractedUrl),je.serializeUrl(di.urlAfterRedirects),di.targetSnapshot);je.triggerEvent(Ei)}),(0,ue.w)(function(di){var Ei=!1;return(0,I.of)(di).pipe(function zr(De,Be){return(0,wt.z)(function(Se){var Ie=Se.targetSnapshot,je=Se.guards.canActivateChecks;if(!je.length)return(0,I.of)(Se);var Et=0;return(0,N.D)(je).pipe((0,mt.b)(function(Qt){return function gs(De,Be,Se,Ie){return function fa(De,Be,Se,Ie){var je=io(De);if(0===je.length)return(0,I.of)({});var Et={};return(0,N.D)(je).pipe((0,wt.z)(function(Qt){return function Jo(De,Be,Se,Ie){var je=Jt(De,Be,Ie);return oi(je.resolve?je.resolve(Be,Se):je(Be,Se))}(De[Qt],Be,Se,Ie).pipe((0,Pt.b)(function(bn){Et[Qt]=bn}))}),Q(1),(0,wt.z)(function(){return io(Et).length===je.length?(0,I.of)(Et):W.E}))}(De._resolve,De,Be,Ie).pipe((0,ve.U)(function(Et){return De._resolvedData=Et,De.data=Object.assign(Object.assign({},De.data),ga(De,Se).resolve),null}))}(Qt.route,Ie,De,Be)}),(0,Pt.b)(function(){return Et++}),Q(1),(0,wt.z)(function(Qt){return Et===je.length?(0,I.of)(Se):W.E}))})}(je.paramsInheritanceStrategy,je.ngModule.injector),(0,Pt.b)({next:function(){return Ei=!0},complete:function(){Ei||(je.restoreHistory(di),je.cancelNavigationTransition(di,"At least one route resolver didn't emit any value."))}}))}),(0,Pt.b)(function(di){var Ei=new et(di.id,je.serializeUrl(di.extractedUrl),je.serializeUrl(di.urlAfterRedirects),di.targetSnapshot);je.triggerEvent(Ei)}))}),kn(function(Tn){var fr=Tn.extras;return je.hooks.afterPreactivation(Tn.targetSnapshot,{navigationId:Tn.id,appliedUrlTree:Tn.extractedUrl,rawUrlTree:Tn.rawUrl,skipLocationChange:!!fr.skipLocationChange,replaceUrl:!!fr.replaceUrl})}),(0,ve.U)(function(Tn){var di=function Ve(De,Be,Se){var Ie=se(De,Be._root,Se?Se._root:void 0);return new Hi(Ie,Be)}(je.routeReuseStrategy,Tn.targetSnapshot,Tn.currentRouterState);return Object.assign(Object.assign({},Tn),{targetRouterState:di})}),(0,Pt.b)(function(Tn){je.currentUrlTree=Tn.urlAfterRedirects,je.rawUrlTree=je.urlHandlingStrategy.merge(Tn.urlAfterRedirects,Tn.rawUrl),je.routerState=Tn.targetRouterState,"deferred"===je.urlUpdateStrategy&&(Tn.extras.skipLocationChange||je.setBrowserUrl(je.rawUrlTree,Tn),je.browserUrlTree=Tn.urlAfterRedirects)}),function(Be,Se,Ie){return(0,ve.U)(function(je){return new Qi(Se,je.targetRouterState,je.currentRouterState,Ie).activate(Be),je})}(je.rootContexts,je.routeReuseStrategy,function(Tn){return je.triggerEvent(Tn)}),(0,Pt.b)({next:function(){bn=!0},complete:function(){bn=!0}}),(0,Pe.x)(function(){var Tn;if(!bn&&!On){var di="Navigation ID ".concat(Qt.id," is not equal to the current navigation id ").concat(je.navigationId);je.cancelNavigationTransition(Qt,di)}(null===(Tn=je.currentNavigation)||void 0===Tn?void 0:Tn.id)===Qt.id&&(je.currentNavigation=null)}),(0,Xe.K)(function(Tn){if(On=!0,function At(De){return De&&De[Oe]}(Tn)){var di=Ji(Tn.url);di||(je.navigated=!0,je.restoreHistory(Qt,!0));var Ei=new nt(Qt.id,je.serializeUrl(Qt.extractedUrl),Tn.message);Et.next(Ei),di?setTimeout(function(){var Xa=je.urlHandlingStrategy.merge(Tn.url,je.rawUrlTree),fr={skipLocationChange:Qt.extras.skipLocationChange,replaceUrl:"eager"===je.urlUpdateStrategy||vs(Qt.source)};je.scheduleNavigation(Xa,"imperative",null,fr,{resolve:Qt.resolve,reject:Qt.reject,promise:Qt.promise})},0):Qt.resolve(!1)}else{je.restoreHistory(Qt,!0);var xa=new at(Qt.id,je.serializeUrl(Qt.extractedUrl),Tn);Et.next(xa);try{Qt.resolve(je.errorHandler(Tn))}catch(Xa){Qt.reject(Xa)}}return W.E}))}))}},{key:"resetRootComponentType",value:function(Ie){this.rootComponentType=Ie,this.routerState.root.component=this.rootComponentType}},{key:"setTransition",value:function(Ie){this.transitions.next(Object.assign(Object.assign({},this.transitions.value),Ie))}},{key:"initialNavigation",value:function(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}},{key:"setUpLocationChangeListener",value:function(){var Ie=this;this.locationSubscription||(this.locationSubscription=this.location.subscribe(function(je){var Et="popstate"===je.type?"popstate":"hashchange";"popstate"===Et&&setTimeout(function(){var Qt,bn={replaceUrl:!0},On=(null===(Qt=je.state)||void 0===Qt?void 0:Qt.navigationId)?je.state:null;if(On){var Tn=Object.assign({},On);delete Tn.navigationId,delete Tn.\u0275routerPageId,0!==Object.keys(Tn).length&&(bn.state=Tn)}var di=Ie.parseUrl(je.url);Ie.scheduleNavigation(di,Et,On,bn)},0)}))}},{key:"url",get:function(){return this.serializeUrl(this.currentUrlTree)}},{key:"getCurrentNavigation",value:function(){return this.currentNavigation}},{key:"triggerEvent",value:function(Ie){this.events.next(Ie)}},{key:"resetConfig",value:function(Ie){gr(Ie),this.config=Ie.map(Lt),this.navigated=!1,this.lastSuccessfulId=-1}},{key:"ngOnDestroy",value:function(){this.dispose()}},{key:"dispose",value:function(){this.transitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}},{key:"createUrlTree",value:function(Ie){var je=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Et=je.relativeTo,Qt=je.queryParams,bn=je.fragment,On=je.queryParamsHandling,Tn=je.preserveFragment,di=Et||this.routerState.root,Ei=Tn?this.currentUrlTree.fragment:bn,xa=null;switch(On){case"merge":xa=Object.assign(Object.assign({},this.currentUrlTree.queryParams),Qt);break;case"preserve":xa=this.currentUrlTree.queryParams;break;default:xa=Qt||null}return null!==xa&&(xa=this.removeEmptyProps(xa)),Vt(di,this.currentUrlTree,Ie,xa,null!=Ei?Ei:null)}},{key:"navigateByUrl",value:function(Ie){var je=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1},Et=Ji(Ie)?Ie:this.parseUrl(Ie),Qt=this.urlHandlingStrategy.merge(Et,this.rawUrlTree);return this.scheduleNavigation(Qt,"imperative",null,je)}},{key:"navigate",value:function(Ie){var je=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1};return il(Ie),this.navigateByUrl(this.createUrlTree(Ie,je),je)}},{key:"serializeUrl",value:function(Ie){return this.urlSerializer.serialize(Ie)}},{key:"parseUrl",value:function(Ie){var je;try{je=this.urlSerializer.parse(Ie)}catch(Et){je=this.malformedUriErrorHandler(Et,this.urlSerializer,Ie)}return je}},{key:"isActive",value:function(Ie,je){var Et;if(Et=!0===je?Object.assign({},Zs):!1===je?Object.assign({},Rl):je,Ji(Ie))return zt(this.currentUrlTree,Ie,Et);var Qt=this.parseUrl(Ie);return zt(this.currentUrlTree,Qt,Et)}},{key:"removeEmptyProps",value:function(Ie){return Object.keys(Ie).reduce(function(je,Et){var Qt=Ie[Et];return null!=Qt&&(je[Et]=Qt),je},{})}},{key:"processNavigations",value:function(){var Ie=this;this.navigations.subscribe(function(je){Ie.navigated=!0,Ie.lastSuccessfulId=je.id,Ie.currentPageId=je.targetPageId,Ie.events.next(new st(je.id,Ie.serializeUrl(je.extractedUrl),Ie.serializeUrl(Ie.currentUrlTree))),Ie.lastSuccessfulNavigation=Ie.currentNavigation,je.resolve(!0)},function(je){Ie.console.warn("Unhandled Navigation Error: ".concat(je))})}},{key:"scheduleNavigation",value:function(Ie,je,Et,Qt,bn){var On,Tn,di;if(this.disposed)return Promise.resolve(!1);var Yr,Kr,mo,Ei=this.transitions.value,xa=vs(je)&&Ei&&!vs(Ei.source),Xa=Ei.rawUrl.toString()===Ie.toString(),fr=Ei.id===(null===(On=this.currentNavigation)||void 0===On?void 0:On.id);if(xa&&Xa&&fr)return Promise.resolve(!0);bn?(Yr=bn.resolve,Kr=bn.reject,mo=bn.promise):mo=new Promise(function(Wt,Lo){Yr=Wt,Kr=Lo});var Nr,To=++this.navigationId;return"computed"===this.canceledNavigationResolution?(0===this.currentPageId&&(Et=this.location.getState()),Nr=Et&&Et.\u0275routerPageId?Et.\u0275routerPageId:Qt.replaceUrl||Qt.skipLocationChange?null!==(Tn=this.browserPageId)&&void 0!==Tn?Tn:0:(null!==(di=this.browserPageId)&&void 0!==di?di:0)+1):Nr=0,this.setTransition({id:To,targetPageId:Nr,source:je,restoredState:Et,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:Ie,extras:Qt,resolve:Yr,reject:Kr,promise:mo,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),mo.catch(function(Wt){return Promise.reject(Wt)})}},{key:"setBrowserUrl",value:function(Ie,je){var Et=this.urlSerializer.serialize(Ie),Qt=Object.assign(Object.assign({},je.extras.state),this.generateNgRouterState(je.id,je.targetPageId));this.location.isCurrentPathEqualTo(Et)||je.extras.replaceUrl?this.location.replaceState(Et,"",Qt):this.location.go(Et,"",Qt)}},{key:"restoreHistory",value:function(Ie){var Et,Qt,je=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("computed"===this.canceledNavigationResolution){var bn=this.currentPageId-Ie.targetPageId,On="popstate"===Ie.source||"eager"===this.urlUpdateStrategy||this.currentUrlTree===(null===(Et=this.currentNavigation)||void 0===Et?void 0:Et.finalUrl);On&&0!==bn?this.location.historyGo(bn):this.currentUrlTree===(null===(Qt=this.currentNavigation)||void 0===Qt?void 0:Qt.finalUrl)&&0===bn&&(this.resetState(Ie),this.browserUrlTree=Ie.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(je&&this.resetState(Ie),this.resetUrlToCurrentUrlTree())}},{key:"resetState",value:function(Ie){this.routerState=Ie.currentRouterState,this.currentUrlTree=Ie.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,Ie.rawUrl)}},{key:"resetUrlToCurrentUrlTree",value:function(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}},{key:"cancelNavigationTransition",value:function(Ie,je){var Et=new nt(Ie.id,this.serializeUrl(Ie.extractedUrl),je);this.triggerEvent(Et),Ie.resolve(!1)}},{key:"generateNgRouterState",value:function(Ie,je){return"computed"===this.canceledNavigationResolution?{navigationId:Ie,"\u0275routerPageId":je}:{navigationId:Ie}}}]),Be}();return De.\u0275fac=function(Se){h.$Z()},De.\u0275prov=h.Yz7({token:De,factory:De.\u0275fac}),De}();function il(De){for(var Be=0;Be2&&void 0!==arguments[2]?arguments[2]:{};(0,s.Z)(this,Be),this.router=Se,this.viewportScroller=Ie,this.options=je,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},je.scrollPositionRestoration=je.scrollPositionRestoration||"disabled",je.anchorScrolling=je.anchorScrolling||"disabled"}return(0,_.Z)(Be,[{key:"init",value:function(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}},{key:"createScrollEvents",value:function(){var Ie=this;return this.router.events.subscribe(function(je){je instanceof Ee?(Ie.store[Ie.lastId]=Ie.viewportScroller.getScrollPosition(),Ie.lastSource=je.navigationTrigger,Ie.restoredId=je.restoredState?je.restoredState.navigationId:0):je instanceof st&&(Ie.lastId=je.id,Ie.scheduleScrollEvent(je,Ie.router.parseUrl(je.urlAfterRedirects).fragment))})}},{key:"consumeScrollEvents",value:function(){var Ie=this;return this.router.events.subscribe(function(je){je instanceof Ae&&(je.position?"top"===Ie.options.scrollPositionRestoration?Ie.viewportScroller.scrollToPosition([0,0]):"enabled"===Ie.options.scrollPositionRestoration&&Ie.viewportScroller.scrollToPosition(je.position):je.anchor&&"enabled"===Ie.options.anchorScrolling?Ie.viewportScroller.scrollToAnchor(je.anchor):"disabled"!==Ie.options.scrollPositionRestoration&&Ie.viewportScroller.scrollToPosition([0,0]))})}},{key:"scheduleScrollEvent",value:function(Ie,je){this.router.triggerEvent(new Ae(Ie,"popstate"===this.lastSource?this.store[this.restoredId]:null,je))}},{key:"ngOnDestroy",value:function(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}]),Be}();return De.\u0275fac=function(Se){h.$Z()},De.\u0275prov=h.Yz7({token:De,factory:De.\u0275fac}),De}(),ko=new h.OlP("ROUTER_CONFIGURATION"),Is=new h.OlP("ROUTER_FORROOT_GUARD"),Ms=[ft.Ye,{provide:ln,useClass:_n},{provide:Ir,useFactory:function xs(De,Be,Se,Ie,je,Et){var Qt=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},bn=arguments.length>7?arguments[7]:void 0,On=arguments.length>8?arguments[8]:void 0,Tn=new Ir(null,De,Be,Se,Ie,je,vn(Et));return bn&&(Tn.urlHandlingStrategy=bn),On&&(Tn.routeReuseStrategy=On),Ss(Qt,Tn),Qt.enableTracing&&Tn.events.subscribe(function(di){var Ei,xa;null===(Ei=console.group)||void 0===Ei||Ei.call(console,"Router Event: ".concat(di.constructor.name)),console.log(di.toString()),console.log(di),null===(xa=console.groupEnd)||void 0===xa||xa.call(console)}),Tn},deps:[ln,da,ft.Ye,h.zs3,h.Sil,Gi,ko,[ar,new h.FiY],[Qn,new h.FiY]]},da,{provide:Ii,useFactory:function Br(De){return De.routerState.root},deps:[Ir]},Qo,bs,Tr,{provide:ko,useValue:{enableTracing:!1}}];function Ls(){return new h.PXZ("Router",Ir)}var rs=function(){var De=function(){function Be(Se,Ie){(0,s.Z)(this,Be)}return(0,_.Z)(Be,null,[{key:"forRoot",value:function(Ie,je){return{ngModule:Be,providers:[Ms,Gr(Ie),{provide:Is,useFactory:al,deps:[[Ir,new h.FiY,new h.tp0]]},{provide:ko,useValue:je||{}},{provide:ft.S$,useFactory:Lr,deps:[ft.lw,[new h.tBr(ft.mr),new h.FiY],ko]},{provide:Cs,useFactory:Fs,deps:[Ir,ft.EM,ko]},{provide:as,useExisting:je&&je.preloadingStrategy?je.preloadingStrategy:bs},{provide:h.PXZ,multi:!0,useFactory:Ls},[Io,{provide:h.ip1,multi:!0,useFactory:fo,deps:[Io]},{provide:os,useFactory:Ns,deps:[Io]},{provide:h.tb,multi:!0,useExisting:os}]]}}},{key:"forChild",value:function(Ie){return{ngModule:Be,providers:[Gr(Ie)]}}}]),Be}();return De.\u0275fac=function(Se){return new(Se||De)(h.LFG(Is,8),h.LFG(Ir,8))},De.\u0275mod=h.oAB({type:De}),De.\u0275inj=h.cJS({}),De}();function Fs(De,Be,Se){return Se.scrollOffset&&Be.setOffset(Se.scrollOffset),new Cs(De,Be,Se)}function Lr(De,Be){var Se=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return Se.useHash?new ft.Do(De,Be):new ft.b0(De,Be)}function al(De){return"guarded"}function Gr(De){return[{provide:h.deG,multi:!0,useValue:De},{provide:Gi,multi:!0,useValue:De}]}function Ss(De,Be){De.errorHandler&&(Be.errorHandler=De.errorHandler),De.malformedUriErrorHandler&&(Be.malformedUriErrorHandler=De.malformedUriErrorHandler),De.onSameUrlNavigation&&(Be.onSameUrlNavigation=De.onSameUrlNavigation),De.paramsInheritanceStrategy&&(Be.paramsInheritanceStrategy=De.paramsInheritanceStrategy),De.relativeLinkResolution&&(Be.relativeLinkResolution=De.relativeLinkResolution),De.urlUpdateStrategy&&(Be.urlUpdateStrategy=De.urlUpdateStrategy),De.canceledNavigationResolution&&(Be.canceledNavigationResolution=De.canceledNavigationResolution)}var Io=function(){var De=function(){function Be(Se){(0,s.Z)(this,Be),this.injector=Se,this.initNavigation=!1,this.destroyed=!1,this.resultOfPreactivationDone=new $.x}return(0,_.Z)(Be,[{key:"appInitializer",value:function(){var Ie=this;return this.injector.get(ft.V_,Promise.resolve(null)).then(function(){if(Ie.destroyed)return Promise.resolve(!0);var Et=null,Qt=new Promise(function(Tn){return Et=Tn}),bn=Ie.injector.get(Ir),On=Ie.injector.get(ko);return"disabled"===On.initialNavigation?(bn.setUpLocationChangeListener(),Et(!0)):"enabled"===On.initialNavigation||"enabledBlocking"===On.initialNavigation?(bn.hooks.afterPreactivation=function(){return Ie.initNavigation?(0,I.of)(null):(Ie.initNavigation=!0,Et(!0),Ie.resultOfPreactivationDone)},bn.initialNavigation()):Et(!0),Qt})}},{key:"bootstrapListener",value:function(Ie){var je=this.injector.get(ko),Et=this.injector.get(Qo),Qt=this.injector.get(Cs),bn=this.injector.get(Ir),On=this.injector.get(h.z2F);Ie===On.components[0]&&(("enabledNonBlocking"===je.initialNavigation||void 0===je.initialNavigation)&&bn.initialNavigation(),Et.setUpPreloading(),Qt.init(),bn.resetRootComponentType(On.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}},{key:"ngOnDestroy",value:function(){this.destroyed=!0}}]),Be}();return De.\u0275fac=function(Se){return new(Se||De)(h.LFG(h.zs3))},De.\u0275prov=h.Yz7({token:De,factory:De.\u0275fac}),De}();function fo(De){return De.appInitializer.bind(De)}function Ns(De){return De.bootstrapListener.bind(De)}var os=new h.OlP("Router Initializer")},68458:function(Ce,E,n){"use strict";n.d(E,{OA:function(){return jn},H_:function(){return It},qd:function(){return tt},dJ:function(){return zt},Ur:function(){return Ha},QQ:function(){return Ka},uU:function(){return qe},LY:function(){return pt},Bl:function(){return At}});var S=n(97424),t=n(28042),e=n(71340),c=n(44014),u=n(46751),o=n(56101),_=n(1884),s=n(39117),h=n(86613),b=n(90587),T=n(34929),y=n(50253),Y=n(76317),q=n(26562),B=n(36362),k=n(50635),D=n(98977),N=n(30983),I=n(19537),L=["target"];function j(Zt,Ve){}function le(Zt,Ve){if(1&Zt&&h._UZ(0,"sf-form-element-action",3),2&Zt){var se=Ve.$implicit,he=h.oxw(2);h.Q6J("button",se)("formProperty",he.formProperty)}}function re(Zt,Ve){if(1&Zt){var se=h.EpF();h.TgZ(0,"div"),h.TgZ(1,"sf-widget-chooser",1),h.NdJ("widgetInstanciated",function(Vt){return h.CHM(se),h.oxw().onWidgetInstanciated(Vt)}),h.qZA(),h.YNc(2,le,1,2,"sf-form-element-action",2),h.qZA()}if(2&Zt){var he=h.oxw();h.ekj("has-error",!he.control.valid)("has-success",he.control.valid),h.xp6(1),h.Q6J("widgetInfo",he.formProperty.schema.widget),h.xp6(1),h.Q6J("ngForOf",he.buttons)}}function W(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",5),h._uU(1),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.Oqu(se.schema.description)}}function $(Zt,Ve){if(1&Zt){var se=h.EpF();h.TgZ(0,"button",8),h.NdJ("click",function(){h.CHM(se);var Vt=h.oxw().$implicit;return h.oxw().removeItem(Vt)}),h._UZ(1,"span",9),h._uU(2," Remove "),h.qZA()}if(2&Zt){var he=h.oxw(2);h.Q6J("disabled",he.isRemoveButtonDisabled())}}function be(Zt,Ve){if(1&Zt&&(h.TgZ(0,"div"),h._UZ(1,"sf-form-element",6),h.YNc(2,$,3,1,"button",7),h.qZA()),2&Zt){var se=Ve.$implicit,he=h.oxw();h.xp6(1),h.Q6J("formProperty",se),h.xp6(1),h.Q6J("ngIf",!(he.schema.hasOwnProperty("minItems")&&he.schema.hasOwnProperty("maxItems")&&he.schema.minItems===he.schema.maxItems))}}function z(Zt,Ve){if(1&Zt){var se=h.EpF();h.TgZ(0,"button",10),h.NdJ("click",function(){return h.CHM(se),h.oxw().addItem()}),h._UZ(1,"span",11),h._uU(2," Add "),h.qZA()}if(2&Zt){var he=h.oxw();h.Q6J("disabled",he.isAddButtonDisabled())}}function d(Zt,Ve){if(1&Zt&&h._UZ(0,"input",7),2&Zt){var se=h.oxw(2);h.Q6J("formControl",se.control),h.uIk("name",se.name)}}function Q(Zt,Ve){if(1&Zt&&(h.TgZ(0,"div",4),h.TgZ(1,"label",1),h._UZ(2,"input",5),h.YNc(3,d,1,2,"input",6),h._uU(4),h.qZA(),h.qZA()),2&Zt){var se=h.oxw();h.xp6(2),h.Q6J("formControl",se.control)("indeterminate",!1!==se.control.value&&!0!==se.control.value||null)("disabled",se.schema.readOnly),h.uIk("name",se.name)("id",se.id),h.xp6(1),h.Q6J("ngIf",se.schema.readOnly),h.xp6(1),h.hij(" ",se.schema.description," ")}}function J(Zt,Ve){if(1&Zt){var se=h.EpF();h.TgZ(0,"div",4),h.TgZ(1,"label",1),h.TgZ(2,"input",9),h.NdJ("change",function(dn){return h.CHM(se),h.oxw(2).onCheck(dn.target)}),h.qZA(),h._uU(3),h.qZA(),h.qZA()}if(2&Zt){var he=Ve.$implicit,ht=h.oxw(2);h.xp6(2),h.s9C("value",he.enum[0]),h.uIk("name",ht.name)("disabled",ht.schema.readOnly)("checked",!!ht.checked[he.enum[0]]||null)("id",ht.id+"."+he.enum[0]),h.xp6(1),h.hij(" ",he.description," ")}}function te(Zt,Ve){if(1&Zt&&(h.ynx(0),h.YNc(1,J,4,6,"div",8),h.BQk()),2&Zt){var se=h.oxw();h.xp6(1),h.Q6J("ngForOf",se.schema.items.oneOf)}}function K(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",5),h._uU(1),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.Oqu(se.schema.description)}}function G(Zt,Ve){if(1&Zt&&h._UZ(0,"input",6),2&Zt){var se=h.oxw();h.Q6J("formControl",se.control),h.uIk("name",se.name)}}function ce(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",4),h._uU(1),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.Oqu(se.schema.description)}}function _e(Zt,Ve){if(1&Zt&&(h.TgZ(0,"legend"),h._uU(1),h.qZA()),2&Zt){var se=h.oxw().$implicit;h.xp6(1),h.Oqu(se.title)}}function Me(Zt,Ve){if(1&Zt&&(h.TgZ(0,"div"),h._uU(1),h.qZA()),2&Zt){var se=h.oxw().$implicit;h.xp6(1),h.Oqu(se.description)}}function ve(Zt,Ve){if(1&Zt&&(h.TgZ(0,"div"),h._UZ(1,"sf-form-element",2),h.qZA()),2&Zt){var se=Ve.$implicit,he=h.oxw(2);h.xp6(1),h.Q6J("formProperty",he.formProperty.getProperty(se))}}function ue(Zt,Ve){if(1&Zt&&(h.TgZ(0,"fieldset"),h.YNc(1,_e,2,1,"legend",1),h.YNc(2,Me,2,1,"div",1),h.YNc(3,ve,2,1,"div",0),h.qZA()),2&Zt){var se=Ve.$implicit;h.xp6(1),h.Q6J("ngIf",se.title),h.xp6(1),h.Q6J("ngIf",se.description),h.xp6(1),h.Q6J("ngForOf",se.fields)}}function lt(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",4),h._uU(1),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.Oqu(se.schema.description)}}function Xe(Zt,Ve){if(1&Zt&&(h.TgZ(0,"div",5),h.TgZ(1,"label",6),h._UZ(2,"input",7),h._uU(3),h.qZA(),h.qZA()),2&Zt){var se=Ve.$implicit,he=h.oxw();h.xp6(2),h.s9C("value",se.enum[0]),h.Q6J("formControl",he.control)("disabled",he.schema.readOnly||se.readOnly),h.uIk("name",he.name)("id",he.id+"."+se.enum[0]),h.xp6(1),h.hij(" ",se.description," ")}}function mt(Zt,Ve){if(1&Zt&&h._UZ(0,"input",8),2&Zt){var se=h.oxw();h.Q6J("formControl",se.control),h.uIk("name",se.name)}}function wt(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",5),h._uU(1),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.Oqu(se.schema.description)}}function Pt(Zt,Ve){if(1&Zt&&h._UZ(0,"input",6),2&Zt){var se=h.oxw();h.uIk("name",se.name)}}function Pe(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",6),h._uU(1),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.hij(" ",se.schema.description," ")}}function ze(Zt,Ve){if(1&Zt&&(h.TgZ(0,"option",11),h._uU(1),h.qZA()),2&Zt){var se=Ve.$implicit;h.Q6J("ngValue",se.enum[0]),h.xp6(1),h.Oqu(se.description)}}function ft(Zt,Ve){if(1&Zt&&(h.ynx(0),h.YNc(1,ze,2,2,"option",10),h.BQk()),2&Zt){var se=h.oxw(2);h.xp6(1),h.Q6J("ngForOf",se.schema.oneOf)}}function ct(Zt,Ve){if(1&Zt&&(h.TgZ(0,"option",11),h._uU(1),h.qZA()),2&Zt){var se=Ve.$implicit;h.Q6J("ngValue",se),h.xp6(1),h.Oqu(se)}}function Ee(Zt,Ve){if(1&Zt&&h.YNc(0,ct,2,2,"option",10),2&Zt){var se=h.oxw(2);h.Q6J("ngForOf",se.schema.enum)}}function st(Zt,Ve){if(1&Zt&&(h.TgZ(0,"select",7),h.YNc(1,ft,2,1,"ng-container",8),h.YNc(2,Ee,1,1,"ng-template",null,9,h.W1O),h.qZA()),2&Zt){var se=h.MAs(3),he=h.oxw();h.Q6J("formControl",he.control)("disabled",he.schema.readOnly)("disableControl",he.schema.readOnly),h.uIk("name",he.name)("id",he.id),h.xp6(1),h.Q6J("ngIf",he.schema.oneOf)("ngIfElse",se)}}function nt(Zt,Ve){if(1&Zt&&(h.TgZ(0,"option",14),h._uU(1),h.qZA()),2&Zt){var se=Ve.$implicit;h.Q6J("ngValue",se.enum[0])("disabled",se.readOnly),h.xp6(1),h.Oqu(se.description)}}function at(Zt,Ve){if(1&Zt&&(h.TgZ(0,"select",12),h.YNc(1,nt,2,3,"option",13),h.qZA()),2&Zt){var se=h.oxw();h.Q6J("formControl",se.control)("disabled",se.schema.readOnly)("disableControl",se.schema.readOnly),h.uIk("name",se.name)("id",se.id),h.xp6(1),h.Q6J("ngForOf",se.schema.items.oneOf)}}function We(Zt,Ve){if(1&Zt&&h._UZ(0,"input",15),2&Zt){var se=h.oxw();h.Q6J("formControl",se.control),h.uIk("name",se.name)}}function xe(Zt,Ve){if(1&Zt&&h._UZ(0,"input",2),2&Zt){var se=h.oxw();h.Q6J("formControl",se.control),h.uIk("name",se.name)}}function ut(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",8),h._uU(1),h.qZA()),2&Zt){var se=h.oxw(2);h.xp6(1),h.Oqu(se.schema.description)}}function Fe(Zt,Ve){if(1&Zt&&h._UZ(0,"input",2),2&Zt){var se=h.oxw(2);h.Q6J("formControl",se.control),h.uIk("name",se.name)}}function et(Zt,Ve){if(1&Zt&&(h.TgZ(0,"div",3),h.TgZ(1,"label",4),h._uU(2),h.qZA(),h.YNc(3,ut,2,1,"span",5),h._UZ(4,"input",6),h.YNc(5,Fe,1,2,"input",7),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.uIk("for",se.id),h.xp6(1),h.hij(" ",se.schema.title," "),h.xp6(1),h.Q6J("ngIf",se.schema.description),h.xp6(1),h.Q6J("name",se.name)("formControl",se.control),h.uIk("readonly",!("color"===se.schema.widget.id||!se.schema.readOnly)||null)("type",se.schema.widget.id&&"string"!==se.schema.widget.id?se.schema.widget.id:"text")("id",se.id)("placeholder",se.schema.placeholder)("maxLength",se.schema.maxLength||null)("minLength",se.schema.minLength||null)("required",se.schema.isRequired||null)("disabled",!("color"!=se.schema.widget.id||!se.schema.readOnly)||null),h.xp6(1),h.Q6J("ngIf","color"===se.schema.widget.id&&se.schema.readOnly)}}function Ht(Zt,Ve){if(1&Zt&&(h.TgZ(0,"span",4),h._uU(1),h.qZA()),2&Zt){var se=h.oxw();h.xp6(1),h.Oqu(se.schema.description)}}function an(Zt,Ve){if(1&Zt&&(h.TgZ(0,"form"),h._UZ(1,"sf-form-element",1),h.qZA()),2&Zt){var se=h.oxw();h.uIk("name",se.rootProperty.rootName)("id",se.rootProperty.rootName),h.xp6(1),h.Q6J("formProperty",se.rootProperty)}}var kt=(0,_.Z)(function Zt(){(0,s.Z)(this,Zt),this.id="",this.name="",this.schema={}}),It=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he,[{key:"ngAfterViewInit",value:function(){var Vt=this,dn=this.control;this.formProperty.valueChanges.subscribe(function(Zn){dn.value!==Zn&&dn.setValue(Zn,{emitEvent:!1})}),this.formProperty.errorsChanges.subscribe(function(Zn){dn.setErrors(Zn,{emitEvent:!0});var Xn=(Zn||[]).filter(function(ni){return ni.path&&ni.path.slice(1)===Vt.formProperty.path}).map(function(ni){return ni.message});Vt.errorMessages=Xn.filter(function(ni,pi){return Xn.indexOf(ni)===pi})}),dn.valueChanges.subscribe(function(Zn){Vt.formProperty.setValue(Zn,!1)})}}]),he}(kt);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275dir=h.lG2({type:Zt,features:[h.qOj]}),Zt}(),$e=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he,[{key:"ngAfterViewInit",value:function(){var Vt=this.control;this.formProperty.errorsChanges.subscribe(function(dn){Vt.setErrors(dn,{emitEvent:!0})})}}]),he}(kt);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275dir=h.lG2({type:Zt,features:[h.qOj]}),Zt}(),Ae=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he,[{key:"ngAfterViewInit",value:function(){var Vt=this.control;this.formProperty.errorsChanges.subscribe(function(dn){Vt.setErrors(dn,{emitEvent:!0})})}}]),he}(kt);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275dir=h.lG2({type:Zt,features:[h.qOj]}),Zt}(),X=function(){var Zt=function(){function Ve(){(0,s.Z)(this,Ve),this.actions={}}return(0,_.Z)(Ve,[{key:"clear",value:function(){this.actions={}}},{key:"register",value:function(he,ht){this.actions[he]=ht}},{key:"get",value:function(he){return this.actions[he]}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275prov=h.Yz7({token:Zt,factory:Zt.\u0275fac}),Zt}(),ne=function(){var Zt=function(){function Ve(){(0,s.Z)(this,Ve),this.bindings=[]}return(0,_.Z)(Ve,[{key:"clear",value:function(){this.bindings=[]}},{key:"register",value:function(he,ht){this.bindings[he]=[].concat(ht)}},{key:"get",value:function(he){return this.bindings[he]}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275prov=h.Yz7({token:Zt,factory:Zt.\u0275fac}),Zt}(),me=new h.OlP("Logging level"),Oe=function(){var Zt=function(){function Ve(se){(0,s.Z)(this,Ve),this.level=se,this.logLevel=3,this.logLevel=se}return(0,_.Z)(Ve,[{key:"isWarnEnabled",value:function(){return 4===this.logLevel||1===this.logLevel}},{key:"isErrorEnabled",value:function(){return 4===this.logLevel||2===this.logLevel}},{key:"isLogEnabled",value:function(){return 4===this.logLevel||0===this.logLevel}}]),Ve}();return(0,T.gn)([(0,T.fM)(0,(0,h.FiY)()),(0,T.fM)(0,(0,h.tBr)(me))],Zt)}(),He=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(ht){var Vt;return(0,s.Z)(this,he),(Vt=se.call(this,ht)).logLevel=ht,Vt.warn=Vt.isWarnEnabled()?console.warn:function(){},Vt.error=Vt.isErrorEnabled()?console.error:function(){},Vt.log=Vt.isLogEnabled()?console.log:function(){},Vt.logLevel=ht,Vt}return(0,_.Z)(he)}(Oe);return Zt.\u0275fac=function(se){return new(se||Zt)(h.LFG(me,8))},Zt.\u0275prov=h.Yz7({token:Zt,factory:Zt.\u0275fac}),Zt}(),At=function(){function Zt(){(0,s.Z)(this,Zt),this.widgets={}}return(0,_.Z)(Zt,[{key:"setDefaultWidget",value:function(se){this.defaultWidget=se}},{key:"getDefaultWidget",value:function(){return this.defaultWidget}},{key:"hasWidget",value:function(se){return this.widgets.hasOwnProperty(se)}},{key:"register",value:function(se,he){this.widgets[se]=he}},{key:"getWidgetType",value:function(se){return this.hasWidget(se)?this.widgets[se]:this.defaultWidget}}]),Zt}(),Ft=function(){var Zt=function(){function Ve(se,he){(0,s.Z)(this,Ve),this.registry=se,this.resolver=he}return(0,_.Z)(Ve,[{key:"createWidget",value:function(he,ht){var Vt=this.registry.getWidgetType(ht),dn=this.resolver.resolveComponentFactory(Vt);return he.createComponent(dn)}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)(h.LFG(At),h.LFG(h._Vd))},Zt.\u0275prov=h.Yz7({token:Zt,factory:Zt.\u0275fac}),Zt}(),sn=function(){var Zt=function(){function Ve(){(0,s.Z)(this,Ve),this.onDestroy=new y.x}return(0,_.Z)(Ve,[{key:"destroy",value:function(){this.onDestroy.next(!0)}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275prov=h.Yz7({token:Zt,factory:Zt.\u0275fac}),Zt}(),Xt=function(){var Zt=function(){function Ve(){var se=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,he=arguments.length>1?arguments[1]:void 0,ht=arguments.length>2?arguments[2]:void 0;(0,s.Z)(this,Ve),this.widgetFactory=se,this.cdr=he,this.terminator=ht,this.widgetInstanciated=new h.vpe}return(0,_.Z)(Ve,[{key:"ngOnInit",value:function(){var he=this;this.subs=this.terminator.onDestroy.subscribe(function(ht){ht&&he.ref.destroy()})}},{key:"ngOnChanges",value:function(){this.ref=this.widgetFactory.createWidget(this.container,this.widgetInfo.id),this.widgetInstanciated.emit(this.ref.instance),this.widgetInstance=this.ref.instance,this.cdr.detectChanges()}},{key:"ngOnDestroy",value:function(){this.subs.unsubscribe()}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)(h.Y36(Ft),h.Y36(h.sBO),h.Y36(sn))},Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-widget-chooser"]],viewQuery:function(se,he){var ht;1&se&&h.Gf(L,7,h.s_b),2&se&&h.iGM(ht=h.CRH())&&(he.container=ht.first)},inputs:{widgetInfo:"widgetInfo"},outputs:{widgetInstanciated:"widgetInstanciated"},features:[h.TTD],decls:2,vars:0,consts:[["target",""]],template:function(se,he){1&se&&h._UZ(0,"div",null,0)},encapsulation:2}),Zt}(),gn=function(){var Zt=function(){function Ve(){var se=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,he=arguments.length>1?arguments[1]:void 0;(0,s.Z)(this,Ve),this.widgetFactory=se,this.terminator=he}return(0,_.Z)(Ve,[{key:"ngOnInit",value:function(){var he=this;this.subs=this.terminator.onDestroy.subscribe(function(ht){ht&&he.ref.destroy()})}},{key:"ngOnChanges",value:function(){this.ref=this.widgetFactory.createWidget(this.container,this.button.widget||"button"),this.ref.instance.button=this.button,this.ref.instance.formProperty=this.formProperty}},{key:"ngOnDestroy",value:function(){this.subs.unsubscribe()}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)(h.Y36(Ft),h.Y36(sn))},Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-form-element-action"]],viewQuery:function(se,he){var ht;1&se&&h.Gf(L,7,h.s_b),2&se&&h.iGM(ht=h.CRH())&&(he.container=ht.first)},inputs:{button:"button",formProperty:"formProperty"},features:[h.TTD],decls:2,vars:0,consts:[["target",""]],template:function(se,he){1&se&&h.YNc(0,j,0,0,"ng-template",null,0,h.W1O)},encapsulation:2}),Zt}(),vn=function(){var Zt=function(){function Ve(se,he,ht,Vt,dn){(0,s.Z)(this,Ve),this.actionRegistry=se,this.bindingRegistry=he,this.renderer=ht,this.elementRef=Vt,this.logger=dn,this.control=new b.NI("",function(){return null}),this.widget=null,this.buttons=[],this.unlisten=[]}return(0,_.Z)(Ve,[{key:"ngOnInit",value:function(){this.parseButtons(),this.setupBindings()}},{key:"setupBindings",value:function(){var he=this,ht=this.bindingRegistry.get(this.formProperty.path);(ht||[]).length&&ht.forEach(function(Vt){for(var dn in Vt)he.createBinding(dn,Vt[dn])})}},{key:"createBinding",value:function(he,ht){var Vt=this;this.unlisten.push(this.renderer.listen(this.elementRef.nativeElement,he,function(dn){var ni,Zn=Array.isArray(ht)?ht:[ht],Xn=(0,c.Z)(Zn);try{for(Xn.s();!(ni=Xn.n()).done;){var pi=ni.value;if(pi instanceof Function)try{pi(dn,Vt.formProperty)}catch(Mi){Vt.logger.error("Error calling bindings event listener for '".concat(he,"'"),Mi)}else Vt.logger.warn("Calling non function handler for eventId "+he+" for path "+Vt.formProperty.path)}}catch(Mi){Xn.e(Mi)}finally{Xn.f()}}))}},{key:"parseButtons",value:function(){if(void 0!==this.formProperty.schema.buttons){this.buttons=this.formProperty.schema.buttons;var ht,he=(0,c.Z)(this.buttons);try{for(he.s();!(ht=he.n()).done;)this.createButtonCallback(ht.value)}catch(dn){he.e(dn)}finally{he.f()}}}},{key:"createButtonCallback",value:function(he){var ht=this;he.action=function(Vt){var dn;he.id&&(dn=ht.actionRegistry.get(he.id))&&dn&&dn(ht.formProperty,he.parameters),Vt.preventDefault()}}},{key:"onWidgetInstanciated",value:function(he){this.widget=he;var ht=this.formProperty.canonicalPathNotation||"field"+Ve.counter++;this.formProperty.root.rootName&&(ht="".concat(this.formProperty.root.rootName,":").concat(ht)),this.widget.formProperty=this.formProperty,this.widget.schema=this.formProperty.schema,this.widget.name=ht,this.widget.id=ht,this.widget.control=this.control}},{key:"ngOnDestroy",value:function(){this.unlisten&&this.unlisten.forEach(function(he){he()})}}]),Ve}();return Zt.counter=0,Zt.\u0275fac=function(se){return new(se||Zt)(h.Y36(X),h.Y36(ne),h.Y36(h.Qsj),h.Y36(h.SBq),h.Y36(Oe))},Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-form-element"]],inputs:{formProperty:"formProperty"},decls:1,vars:1,consts:[[3,"has-error","has-success",4,"ngIf"],[3,"widgetInfo","widgetInstanciated"],[3,"button","formProperty",4,"ngFor","ngForOf"],[3,"button","formProperty"]],template:function(se,he){1&se&&h.YNc(0,re,3,6,"div",0),2&se&&h.Q6J("ngIf",he.formProperty.visible)},directives:[Xt,gn,B.O5,B.sg],encapsulation:2}),Zt}(),hn=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he,[{key:"addItem",value:function(){this.formProperty.addItem(),this.updateButtonDisabledState()}},{key:"removeItem",value:function(Vt){this.formProperty.removeItem(Vt),this.updateButtonDisabledState()}},{key:"trackByIndex",value:function(Vt,dn){return Vt}},{key:"updateButtonDisabledState",value:function(){this.buttonDisabledAdd=this.isAddButtonDisabled(),this.buttonDisabledRemove=this.isRemoveButtonDisabled()}},{key:"isAddButtonDisabled",value:function(){return!!(this.schema.hasOwnProperty("maxItems")&&Array.isArray(this.formProperty.properties)&&this.formProperty.properties.length>=this.schema.maxItems)}},{key:"isRemoveButtonDisabled",value:function(){return!!(this.schema.hasOwnProperty("minItems")&&Array.isArray(this.formProperty.properties)&&this.formProperty.properties.length<=this.schema.minItems)}}]),he}($e);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-array-widget"]],features:[h.qOj],decls:6,vars:5,consts:[[1,"widget","form-group"],[1,"horizontal","control-label"],["class","formHelp",4,"ngIf"],[4,"ngFor","ngForOf"],["class","btn btn-default array-add-button",3,"disabled","click",4,"ngIf"],[1,"formHelp"],[3,"formProperty"],["class","btn btn-default array-remove-button",3,"disabled","click",4,"ngIf"],[1,"btn","btn-default","array-remove-button",3,"disabled","click"],["aria-hidden","true",1,"glyphicon","glyphicon-minus"],[1,"btn","btn-default","array-add-button",3,"disabled","click"],["aria-hidden","true",1,"glyphicon","glyphicon-plus"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label",1),h._uU(2),h.qZA(),h.YNc(3,W,2,1,"span",2),h.YNc(4,be,3,2,"div",3),h.YNc(5,z,3,1,"button",4),h.qZA()),2&se&&(h.xp6(1),h.uIk("for",he.id),h.xp6(1),h.hij(" ",he.schema.title," "),h.xp6(1),h.Q6J("ngIf",he.schema.description),h.xp6(1),h.Q6J("ngForOf",he.formProperty.properties),h.xp6(1),h.Q6J("ngIf",!(he.schema.hasOwnProperty("minItems")&&he.schema.hasOwnProperty("maxItems")&&he.schema.minItems===he.schema.maxItems)))},directives:[vn,B.O5,B.sg],encapsulation:2}),Zt}(),jn=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){var ht;return(0,s.Z)(this,he),(ht=se.apply(this,arguments)).checked={},ht}return(0,_.Z)(he,[{key:"ngAfterViewInit",value:function(){var Vt=this,dn=this.control;this.formProperty.valueChanges.subscribe(function(Zn){dn.value!==Zn&&(dn.setValue(Zn,{emitEvent:!1}),Zn&&Array.isArray(Zn)&&Zn.map(function(Xn){return Vt.checked[Xn]=!0}))}),this.formProperty.errorsChanges.subscribe(function(Zn){dn.setErrors(Zn,{emitEvent:!0})}),dn.valueChanges.subscribe(function(Zn){Vt.formProperty.setValue(Zn,!1)})}},{key:"onCheck",value:function(Vt){Vt.checked?this.checked[Vt.value]=!0:delete this.checked[Vt.value],this.formProperty.setValue(Object.keys(this.checked),!1)}}]),he}(It);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-checkbox-widget"]],features:[h.qOj],decls:5,vars:4,consts:[[1,"widget","form-group"],[1,"horizontal","control-label"],["class","checkbox",4,"ngIf"],[4,"ngIf"],[1,"checkbox"],["type","checkbox",3,"formControl","indeterminate","disabled"],["type","hidden",3,"formControl",4,"ngIf"],["type","hidden",3,"formControl"],["class","checkbox",4,"ngFor","ngForOf"],["type","checkbox",3,"value","change"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label",1),h._uU(2),h.qZA(),h.YNc(3,Q,5,7,"div",2),h.YNc(4,te,2,1,"ng-container",3),h.qZA()),2&se&&(h.xp6(1),h.uIk("for",he.id),h.xp6(1),h.hij(" ",he.schema.title," "),h.xp6(1),h.Q6J("ngIf","array"!=he.schema.type),h.xp6(1),h.Q6J("ngIf","array"===he.schema.type))},directives:[B.O5,b.Wl,b.JJ,b.oH,b.Fj,B.sg],encapsulation:2}),Zt}(),Jn=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){var ht;return(0,s.Z)(this,he),(ht=se.call(this)).reader=new FileReader,ht.filedata={},ht}return(0,_.Z)(he,[{key:"ngAfterViewInit",value:function(){var Vt=this,dn=this.control;this.formProperty.errorsChanges.subscribe(function(Zn){dn.setErrors(Zn,{emitEvent:!0})}),this.reader.onloadend=function(){Vt.filedata.data=window.btoa(Vt.reader.result),Vt.formProperty.setValue(Vt.filedata,!1)}}},{key:"onFileChange",value:function(Vt){var dn=Vt.target.files[0];this.filedata.filename=dn.name,this.filedata.size=dn.size,this.filedata["content-type"]=dn.type,this.filedata.encoding="base64",this.reader.readAsBinaryString(dn)}}]),he}(It);return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-file-widget"]],features:[h.qOj],decls:6,vars:8,consts:[[1,"widget","form-group"],[1,"horizontal","control-label"],["class","formHelp",4,"ngIf"],["type","file",1,"text-widget","file-widget",3,"name","formControl","change"],["type","hidden",3,"formControl",4,"ngIf"],[1,"formHelp"],["type","hidden",3,"formControl"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label",1),h._uU(2),h.qZA(),h.YNc(3,K,2,1,"span",2),h.TgZ(4,"input",3),h.NdJ("change",function(Vt){return he.onFileChange(Vt)}),h.qZA(),h.YNc(5,G,1,2,"input",4),h.qZA()),2&se&&(h.xp6(1),h.uIk("for",he.id),h.xp6(1),h.hij(" ",he.schema.title," "),h.xp6(1),h.Q6J("ngIf",he.schema.description),h.xp6(1),h.Q6J("name",he.name)("formControl",he.control),h.uIk("id",he.id)("disabled",!!he.schema.readOnly||null),h.xp6(1),h.Q6J("ngIf",he.schema.readOnly))},directives:[B.O5,b.Fj,b.JJ,b.oH],encapsulation:2}),Zt}(),oi=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he)}(It);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-integer-widget"]],features:[h.qOj],decls:5,vars:13,consts:[[1,"widget","form-group"],[1,"horizontal","control-label"],["class","formHelp",4,"ngIf"],[1,"text-widget","integer-widget","form-control",3,"formControl"],[1,"formHelp"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label",1),h._uU(2),h.qZA(),h.YNc(3,ce,2,1,"span",2),h._UZ(4,"input",3),h.qZA()),2&se&&(h.xp6(1),h.uIk("for",he.id),h.xp6(1),h.hij(" ",he.schema.title," "),h.xp6(1),h.Q6J("ngIf",he.schema.description),h.xp6(1),h.Q6J("formControl",he.control),h.uIk("readonly",!!he.schema.readOnly||null)("name",he.name)("id",he.id)("type","number")("min",he.schema.minimum)("max",he.schema.maximum)("placeholder",he.schema.placeholder)("maxLength",he.schema.maxLength||null)("minLength",he.schema.minLength||null))},directives:[B.O5,b.Fj,b.JJ,b.oH],encapsulation:2}),Zt}(),ri=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he)}(Ae);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-form-object"]],features:[h.qOj],decls:1,vars:1,consts:[[4,"ngFor","ngForOf"],[4,"ngIf"],[3,"formProperty"]],template:function(se,he){1&se&&h.YNc(0,ue,4,3,"fieldset",0),2&se&&h.Q6J("ngForOf",he.formProperty.schema.fieldsets)},directives:[vn,B.sg,B.O5],encapsulation:2}),Zt}(),un=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he)}(It);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-radio-widget"]],features:[h.qOj],decls:6,vars:4,consts:[[1,"widget","form-group"],["class","formHelp",4,"ngIf"],["class","radio",4,"ngFor","ngForOf"],["type","hidden",3,"formControl",4,"ngIf"],[1,"formHelp"],[1,"radio"],[1,"horizontal","control-label"],["type","radio",3,"formControl","value","disabled"],["type","hidden",3,"formControl"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label"),h._uU(2),h.qZA(),h.YNc(3,lt,2,1,"span",1),h.YNc(4,Xe,4,6,"div",2),h.YNc(5,mt,1,2,"input",3),h.qZA()),2&se&&(h.xp6(2),h.Oqu(he.schema.title),h.xp6(1),h.Q6J("ngIf",he.schema.description),h.xp6(1),h.Q6J("ngForOf",he.schema.oneOf),h.xp6(1),h.Q6J("ngIf",he.schema.readOnly))},directives:[B.O5,B.sg,b._,b.Fj,b.JJ,b.oH],encapsulation:2}),Zt}(),mn=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he)}(It);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-range-widget"]],features:[h.qOj],decls:6,vars:11,consts:[[1,"widget","form-group"],[1,"horizontal","control-label"],["class","formHelp",4,"ngIf"],[1,"text-widget","range-widget",3,"name","formControl","disabled"],["type","hidden",4,"ngIf"],[1,"formHelp"],["type","hidden"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label",1),h._uU(2),h.qZA(),h.YNc(3,wt,2,1,"span",2),h._UZ(4,"input",3),h.YNc(5,Pt,1,1,"input",4),h.qZA()),2&se&&(h.xp6(1),h.uIk("for",he.id),h.xp6(1),h.hij(" ",he.schema.title," "),h.xp6(1),h.Q6J("ngIf",he.schema.description),h.xp6(1),h.Q6J("name",he.name)("formControl",he.control)("disabled",!!he.schema.readOnly||null),h.uIk("id",he.id)("type","range")("min",he.schema.minimum)("max",he.schema.maximum),h.xp6(1),h.Q6J("ngIf",he.schema.readOnly))},directives:[B.O5,b.Fj,b.JJ,b.oH],encapsulation:2}),Zt}(),zt=function(){var Zt=function(){function Ve(se){(0,s.Z)(this,Ve),this.ngControl=se}return(0,_.Z)(Ve,[{key:"disableControl",set:function(he){this.ngControl.control[he?"disable":"enable"]()}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)(h.Y36(b.a5))},Zt.\u0275dir=h.lG2({type:Zt,selectors:[["","disableControl",""]],inputs:{disableControl:"disableControl"}}),Zt}(),qe=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he)}(It);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-select-widget"]],features:[h.qOj],decls:7,vars:6,consts:[[1,"widget","form-group"],[1,"horizontal","control-label"],["class","formHelp",4,"ngIf"],["class","form-control",3,"formControl","disabled","disableControl",4,"ngIf"],["multiple","","class","form-control",3,"formControl","disabled","disableControl",4,"ngIf"],["type","hidden",3,"formControl",4,"ngIf"],[1,"formHelp"],[1,"form-control",3,"formControl","disabled","disableControl"],[4,"ngIf","ngIfElse"],["use_enum",""],[3,"ngValue",4,"ngFor","ngForOf"],[3,"ngValue"],["multiple","",1,"form-control",3,"formControl","disabled","disableControl"],[3,"ngValue","disabled",4,"ngFor","ngForOf"],[3,"ngValue","disabled"],["type","hidden",3,"formControl"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label",1),h._uU(2),h.qZA(),h.YNc(3,Pe,2,1,"span",2),h.YNc(4,st,4,7,"select",3),h.YNc(5,at,2,6,"select",4),h.YNc(6,We,1,2,"input",5),h.qZA()),2&se&&(h.xp6(1),h.uIk("for",he.id),h.xp6(1),h.hij(" ",he.schema.title," "),h.xp6(1),h.Q6J("ngIf",he.schema.description),h.xp6(1),h.Q6J("ngIf","array"!=he.schema.type),h.xp6(1),h.Q6J("ngIf","array"===he.schema.type),h.xp6(1),h.Q6J("ngIf",he.schema.readOnly))},directives:[B.O5,b.EJ,b.JJ,b.oH,zt,B.sg,b.YN,b.Kr,b.K7,b.Fj],encapsulation:2}),Zt}(),pt=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he,[{key:"getInputType",value:function(){return this.schema.widget.id&&"string"!==this.schema.widget.id?this.schema.widget.id:"text"}}]),he}(It);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-string-widget"]],features:[h.qOj],decls:3,vars:2,consts:[["type","hidden",3,"formControl",4,"ngIf","ngIfElse"],["notHiddenFieldBlock",""],["type","hidden",3,"formControl"],[1,"widget","form-group"],[1,"horizontal","control-label"],["class","formHelp",4,"ngIf"],[1,"text-widget.id","textline-widget","form-control",3,"name","formControl"],["type","hidden",3,"formControl",4,"ngIf"],[1,"formHelp"]],template:function(se,he){if(1&se&&(h.YNc(0,xe,1,2,"input",0),h.YNc(1,et,6,14,"ng-template",null,1,h.W1O)),2&se){var ht=h.MAs(2);h.Q6J("ngIf","hidden"===he.schema.widget.id)("ngIfElse",ht)}},directives:[B.O5,b.Fj,b.JJ,b.oH,b.Q7],encapsulation:2}),Zt}(),Ne=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){return(0,s.Z)(this,he),se.apply(this,arguments)}return(0,_.Z)(he)}(It);return Zt.\u0275fac=function(){var Ve;return function(he){return(Ve||(Ve=h.n5z(Zt)))(he||Zt)}}(),Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-textarea-widget"]],features:[h.qOj],decls:5,vars:10,consts:[[1,"widget","form-group"],[1,"horizontal","control-label"],["class","formHelp",4,"ngIf"],[1,"text-widget","textarea-widget","form-control",3,"readonly","name","formControl"],[1,"formHelp"]],template:function(se,he){1&se&&(h.TgZ(0,"div",0),h.TgZ(1,"label",1),h._uU(2),h.qZA(),h.YNc(3,Ht,2,1,"span",2),h._UZ(4,"textarea",3),h.qZA()),2&se&&(h.xp6(1),h.uIk("for",he.id),h.xp6(1),h.hij(" ",he.schema.title," "),h.xp6(1),h.Q6J("ngIf",he.schema.description),h.xp6(1),h.Q6J("readonly",he.schema.readOnly)("name",he.name)("formControl",he.control),h.uIk("id",he.id)("placeholder",he.schema.placeholder)("maxLength",he.schema.maxLength||null)("minLength",he.schema.minLength||null))},directives:[B.O5,b.Fj,b.JJ,b.oH],encapsulation:2}),Zt}(),Re=function(){var Zt=(0,_.Z)(function Ve(){(0,s.Z)(this,Ve)});return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-button-widget"]],decls:2,vars:1,consts:[[3,"click"]],template:function(se,he){1&se&&(h.TgZ(0,"button",0),h.NdJ("click",function(Vt){return he.button.action(Vt)}),h._uU(1),h.qZA()),2&se&&(h.xp6(1),h.Oqu(he.button.label))},encapsulation:2}),Zt}(),tt=function(){var Zt=function(Ve){(0,u.Z)(he,Ve);var se=(0,o.Z)(he);function he(){var ht;return(0,s.Z)(this,he),(ht=se.call(this)).register("array",hn),ht.register("object",ri),ht.register("string",pt),ht.register("search",pt),ht.register("tel",pt),ht.register("url",pt),ht.register("email",pt),ht.register("password",pt),ht.register("color",pt),ht.register("date",pt),ht.register("date-time",pt),ht.register("time",pt),ht.register("integer",oi),ht.register("number",oi),ht.register("range",mn),ht.register("textarea",Ne),ht.register("file",Jn),ht.register("select",qe),ht.register("radio",un),ht.register("boolean",jn),ht.register("checkbox",jn),ht.register("button",Re),ht.setDefaultWidget(pt),ht}return(0,_.Z)(he)}(At);return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275prov=h.Yz7({token:Zt,factory:Zt.\u0275fac}),Zt}(),Ke=function(){return(Zt=Ke||(Ke={})).String="string",Zt.Object="object",Zt.Array="array",Zt.Boolean="boolean",Zt.Integer="integer",Zt.Number="number",Zt.Null="null",Ke;var Zt}();function rn(Zt){for(var Ve in Zt)return!0;return!1}var Nn=function(){function Zt(Ve,se,he,ht,Vt,dn,Zn){(0,s.Z)(this,Zt),this.validatorRegistry=se,this.schema=ht,this.logger=Zn,this._value=null,this._errors=null,this._valueChanges=new Y.X(null),this._errorsChanges=new Y.X(null),this._visible=!0,this._visibilityChanges=new Y.X(!0),this.schemaValidator=Ve.createValidatorFn(this.schema),this.expressionCompilerVisibiltyIf=he.createExpressionCompilerVisibilityIf(),this._parent=Vt,Vt?this._root=Vt.root:this instanceof $t&&(this._root=this,this._rootName=this.createRootName()),this._path=dn}return(0,_.Z)(Zt,[{key:"_canonicalPath",get:function(){return this.__canonicalPath},set:function(se){this.__canonicalPath=se,this.__canonicalPathNotation=(this.__canonicalPath||"").replace(new RegExp("^/","ig"),"").replace(new RegExp("/$","ig"),"").replace(new RegExp("/","ig"),".")}},{key:"canonicalPathNotation",get:function(){return this.__canonicalPathNotation}},{key:"rootName",get:function(){return this._rootName}},{key:"createRootName",value:function(){return this.schema&&this.schema.name?this._rootName=this.schema.name.replace(new RegExp("[\\s]+","ig"),"_"):""}},{key:"valueChanges",get:function(){return this._valueChanges}},{key:"errorsChanges",get:function(){return this._errorsChanges}},{key:"type",get:function(){return this.schema.type}},{key:"isNullableType",get:function(){return Array.isArray(this.schema.type)&&this.schema.type.some(function(se){return se===Ke.Null})}},{key:"parent",get:function(){return this._parent}},{key:"root",get:function(){return this._root||this}},{key:"path",get:function(){return this._path}},{key:"value",get:function(){return this._value}},{key:"visible",get:function(){return this._visible}},{key:"valid",get:function(){return null===this._errors}},{key:"updateValueAndValidity",value:function(){var se=arguments.length>0&&void 0!==arguments[0]&&arguments[0],he=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this._updateValue(),he&&this.valueChanges.next(this.value),this._runValidation(),this.parent&&!se&&this.parent.updateValueAndValidity(se,he)}},{key:"_runValidation",value:function(){var se=this.schemaValidator(this._value)||[],he=this.validatorRegistry.get(this.path);if(he){var ht=he(this.value,this,this.findRoot());se=this.mergeErrors(se,ht)}0===se.length&&(se=null),this._errors=se,this.setErrors(this._errors)}},{key:"mergeErrors",value:function(se,he){if(he)if(Array.isArray(he)){var ht;se=(ht=se).concat.apply(ht,(0,e.Z)(he))}else se.push(he);return se}},{key:"setErrors",value:function(se){this._errors=se,this._errorsChanges.next(se)}},{key:"extendErrors",value:function(se){se=this.mergeErrors(this._errors||[],se),this.setErrors(se)}},{key:"searchProperty",value:function(se){var he=this,ht=null,Vt=null;if("/"===se[0])Vt=(ht=this.findRoot()).getProperty(se.substr(1));else for(;null===Vt&&null!==he.parent;)he=ht=he.parent,Vt=ht.getProperty(se);return Vt}},{key:"findRoot",value:function(){for(var se=this;null!==se.parent;)se=se.parent;return se}},{key:"setVisible",value:function(se){this._visible=se,this._visibilityChanges.next(se),this.updateValueAndValidity()}},{key:"__evaluateVisibilityIf",value:function(se,he,ht){var Vt=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",dn=arguments.length>4?arguments[4]:void 0;try{var pi,Zn=!1,Xn=Array.isArray(dn)?dn:[dn],ni=(0,c.Z)(Xn);try{for(ni.s();!(pi=ni.n()).done;){var Mi=pi.value;if("boolean"==typeof Mi)Zn=Mi?Vt:!Vt;else if("number"==typeof Mi)Zn=!!Vt&&"".concat(Mi)==="".concat(Vt);else if(-1!=="".concat(Mi).indexOf("$ANY$"))Array.isArray(Vt)?Zn=Vt.length>0:"number"==typeof Vt||"boolean"==typeof Vt?Zn=!0:"string"==typeof Vt?Zn=""!==Vt:"object"==typeof Vt&&(Zn=!rn(Vt));else if(0==="".concat(Mi).indexOf("$EXP$")){var Wi=Mi.substring("$EXP$".length);Zn=!0===this.expressionCompilerVisibiltyIf.evaluate(Wi,{source:se,target:he})}else Zn=!!Vt&&"".concat(Mi)==="".concat(Vt);if(Zn)break}}catch(Yi){ni.e(Yi)}finally{ni.f()}return Zn}catch(Yi){this.logger.error('Error processing "VisibileIf" expression for path: ',ht,"source - ".concat(se?se._canonicalPath:"",": "),se,"target - ".concat(he?he._canonicalPath:"",": "),he,"value:",Vt,"expression: ",dn,"error: ",Yi)}}},{key:"__bindVisibility_oneOf_or_allOf",value:function(){var se=this,he=this.schema.visibleIf,ht=(he||{}).oneOf||(he||{}).allOf;if(ht){var dn,Vt=(0,c.Z)(ht);try{for(Vt.s();!(dn=Vt.n()).done;){var Zn=dn.value;if("object"==typeof Zn&&0===Object.keys(Zn).length)this.setVisible(!1);else if(void 0!==Zn){var Xn=[],ni=function(Wi){if(Zn.hasOwnProperty(Wi)){var Yi=se.findProperties(se,Wi);if((Yi||[]).length){var xi,aa=(0,c.Z)(Yi);try{for(aa.s();!(xi=aa.n()).done;){var Ui=xi.value;if(Ui){var ca=void 0;se.schema.visibleIf.oneOf?ca=Ui.valueChanges.pipe((0,k.U)(function(yr){var en,Qi=(0,c.Z)(se.schema.visibleIf.oneOf);try{for(Qi.s();!(en=Qi.n()).done;)for(var Dn=en.value,qn=0,bi=Object.keys(Dn);qn-1?he.substring(0,Vt-1):he,Zn=Vt>-1?he.substring(Vt+1):he,Xn=se.searchProperty(dn),ni=[];if(Xn instanceof $t)for(var pi=Xn.properties,Mi=0;Mi1&&void 0!==arguments[1]?arguments[1]:null,ht=arguments.length>2?arguments[2]:void 0,Vt=null,dn="",Zn="";if(he){if(dn+=he.path,null!==he.parent&&(dn+="/",Zn+="/"),"object"===he.type)dn+=ht,Zn+=ht;else{if("array"!==he.type)throw new Error("Instanciation of a FormProperty with an unknown parent type: "+he.type);dn+="*",Zn+="*"}Zn=(he._canonicalPath||he.path)+Zn}else dn="/",Zn="/";if(se.$ref){var Xn=this.schemaValidatorFactory.getSchema(he.root.schema,se.$ref);Vt=this.createProperty(Xn,he,dn)}else{var ni=this.isUnionType(se.type)&&this.isValidNullableUnionType(se.type)?this.extractTypeFromNullableUnionType(se.type):se.type;if(!ln[ni])throw new TypeError("Undefined type ".concat(ni," (existing: ").concat(Object.keys(ln),")"));Vt="object"===ni||"array"===ni?ln[ni](this.schemaValidatorFactory,this.validatorRegistry,this.expressionCompilerFactory,se,he,dn,this,this.logger):ln[ni](this.schemaValidatorFactory,this.validatorRegistry,this.expressionCompilerFactory,se,he,dn,this.logger)}return Vt._propertyBindingRegistry=this.propertyBindingRegistry,Vt._canonicalPath=Zn,Vt instanceof $t&&this.initializeRoot(Vt),Vt}},{key:"initializeRoot",value:function(se){se.reset(null,!0),se._bindVisibility()}},{key:"isUnionType",value:function(se){return Array.isArray(se)&&se.length>1}},{key:"isValidNullableUnionType",value:function(se){if(!se.some(function(ht){return ht===Ke.Null}))throw new TypeError("Unsupported union type ".concat(se,'. Supports only nullable union types, for example ["string", "null"]'));if(2!==se.length)throw new TypeError("Unsupported count of types in nullable union type ".concat(se,'. Supports only two types one of the which should be "null"'));var he=this.extractTypeFromNullableUnionType(se);if(!he||[Ke.Object,Ke.Array].includes(he))throw new TypeError("Unsupported second type ".concat(he,' for nullable union. Allowed types are "').concat(Ke.Number,'", "').concat(Ke.Integer,'", "').concat(Ke.Boolean,'", "').concat(Ke.String,'"'));return!0}},{key:"extractTypeFromNullableUnionType",value:function(se){var he;return null===(he=se.filter(function(ht){return"null"!==ht}))||void 0===he?void 0:he[0]}}]),Zt}(),xn=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(){return(0,s.Z)(this,se),Ve.apply(this,arguments)}return(0,_.Z)(se,[{key:"setValue",value:function(ht){var Vt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._value=ht,this.updateValueAndValidity(Vt,!0)}},{key:"reset",value:function(){var ht=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,Vt=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.resetValue(ht),this.updateValueAndValidity(Vt,!0)}},{key:"resetValue",value:function(ht){null===ht&&(ht=void 0!==this.schema.default?this.schema.default:this.fallbackValue()),this._value=ht}},{key:"_hasValue",value:function(){return this.fallbackValue()!==this.value}},{key:"_updateValue",value:function(){}}]),se}(Nn),In=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(he,ht,Vt,dn,Zn,Xn,ni,pi){var Mi;return(0,s.Z)(this,se),(Mi=Ve.call(this,ht,Vt,dn,Zn,Xn,ni,pi)).formPropertyFactory=he,Mi.propertiesId=[],Mi.createProperties(),Mi}return(0,_.Z)(se,[{key:"setValue",value:function(ht,Vt){for(var dn in ht)ht.hasOwnProperty(dn)&&this.properties[dn].setValue(ht[dn],!0);this.updateValueAndValidity(Vt,!0)}},{key:"reset",value:function(ht){var Vt=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.resetProperties(ht=ht||this.schema.default||{}),this.updateValueAndValidity(Vt,!0)}},{key:"resetProperties",value:function(ht){for(var Vt in this.schema.properties)this.schema.properties.hasOwnProperty(Vt)&&this.properties[Vt].reset(ht[Vt],!0)}},{key:"createProperties",value:function(){for(var ht in this.properties={},this.propertiesId=[],this.schema.properties)this.schema.properties.hasOwnProperty(ht)&&(this.properties[ht]=this.formPropertyFactory.createProperty(this.schema.properties[ht],this,ht),this.propertiesId.push(ht))}},{key:"_hasValue",value:function(){return!!Object.keys(this.value).length}},{key:"_updateValue",value:function(){this.reduceValue()}},{key:"_runValidation",value:function(){var ht=this;(0,S.Z)((0,t.Z)(se.prototype),"_runValidation",this).call(this),this._errors&&this._errors.forEach(function(Vt){var dn=ht.searchProperty(Vt.path.slice(1));dn&&dn.extendErrors(Vt)})}},{key:"reduceValue",value:function(){var ht={};this.forEachChild(function(Vt,dn){Vt.visible&&Vt._hasValue()&&(ht[dn]=Vt.value)}),this._value=ht}}]),se}($t);ln.object=function(Zt,Ve,se,he,ht,Vt,dn,Zn){return new In(dn,Zt,Ve,se,he,ht,Vt,Zn)};var Yn=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(he,ht,Vt,dn,Zn,Xn,ni,pi){var Mi;return(0,s.Z)(this,se),(Mi=Ve.call(this,ht,Vt,dn,Zn,Xn,ni,pi)).formPropertyFactory=he,Mi}return(0,_.Z)(se,[{key:"addItem",value:function(){var ht=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,Vt=this.addProperty();return Vt.reset(ht,!1),Vt}},{key:"addProperty",value:function(){var ht=this.schema.items;if(Array.isArray(this.schema.items))if(this.schema.items.length>this.properties.length)ht=ht[this.properties.length];else{if(!this.schema.additionalItems)return null;ht=this.schema.additionalItems}var dn=this.formPropertyFactory.createProperty(ht,this);return this.properties.push(dn),dn}},{key:"removeItem",value:function(ht){this.properties=this.properties.filter(function(Vt){return Vt!==ht}),this.updateValueAndValidity(!1,!0)}},{key:"setValue",value:function(ht,Vt){this.createProperties(),this.resetProperties(ht),this.updateValueAndValidity(Vt,!0)}},{key:"_hasValue",value:function(){return!0}},{key:"_updateValue",value:function(){this.reduceValue()}},{key:"reduceValue",value:function(){var ht=[];this.forEachChild(function(Vt,dn){Vt.visible&&Vt._hasValue()&&ht.push(Vt.value)}),this._value=ht}},{key:"reset",value:function(ht){var Vt=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];ht=ht||this.schema.default||[],this.properties=[],this.resetProperties(ht),this.updateValueAndValidity(Vt,!0)}},{key:"createProperties",value:function(){this.properties=[]}},{key:"resetProperties",value:function(ht){for(var Vt in ht)ht.hasOwnProperty(Vt)&&this.addProperty().reset(ht[Vt],!0)}}]),se}($t);ln.array=function(Zt,Ve,se,he,ht,Vt,dn,Zn){return new Yn(dn,Zt,Ve,se,he,ht,Vt,Zn)};var mi=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(){return(0,s.Z)(this,se),Ve.apply(this,arguments)}return(0,_.Z)(se,[{key:"fallbackValue",value:function(){return this.isNullableType?null:""}}]),se}(xn);ln.string=function(Zt,Ve,se,he,ht,Vt,dn){return new mi(Zt,Ve,se,he,ht,Vt,dn)};var wi=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(){return(0,s.Z)(this,se),Ve.apply(this,arguments)}return(0,_.Z)(se,[{key:"fallbackValue",value:function(){return null}}]),se}(xn);ln.boolean=function(Zt,Ve,se,he,ht,Vt,dn){return new wi(Zt,Ve,se,he,ht,Vt,dn)};var Bi=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(){return(0,s.Z)(this,se),Ve.apply(this,arguments)}return(0,_.Z)(se,[{key:"fallbackValue",value:function(){return null}},{key:"setValue",value:function(ht){var Vt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"string"==typeof ht&&(ht=ht.length?ht.indexOf(".")>-1?parseFloat(ht):parseInt(ht,10):null),this._value=ht,this.updateValueAndValidity(Vt,!0)}}]),se}(xn);ln.integer=function(Zt,Ve,se,he,ht,Vt,dn){return new Bi(Zt,Ve,se,he,ht,Vt,dn)},ln.number=function(Zt,Ve,se,he,ht,Vt,dn){return new Bi(Zt,Ve,se,he,ht,Vt,dn)};var Xi=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(){return(0,s.Z)(this,se),Ve.apply(this,arguments)}return(0,_.Z)(se,[{key:"fallbackValue",value:function(){return null}}]),se}(xn);ln.null=function(Zt,Ve,se,he,ht,Vt,dn){return new Xi(Zt,Ve,se,he,ht,Vt,dn)};var ka=function(){var Zt=function(){function Ve(){(0,s.Z)(this,Ve),this.validators=[]}return(0,_.Z)(Ve,[{key:"register",value:function(he,ht){this.validators[he]=ht}},{key:"get",value:function(he){return this.validators[he]}},{key:"clear",value:function(){this.validators=[]}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275prov=h.Yz7({token:Zt,factory:Zt.\u0275fac}),Zt}();function Ja(Zt,Ve){return"Parsing error on ".concat(Ve,": ").concat(Zt)}function _a(Zt,Ve){var se=Ja(Zt,Ve);throw new Error(se)}function nr(Zt,Ve){var se=Ja(Zt,Ve);throw new Error(se)}var _r=function(){var Zt=function(){function Ve(){(0,s.Z)(this,Ve)}return(0,_.Z)(Ve,null,[{key:"preprocess",value:function(he){var ht=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/";Ve.normalizeExtensions(he=he||{}),"object"===he.type?(Ve.checkProperties(he,ht),Ve.checkAndCreateFieldsets(he,ht)):"array"===he.type&&Ve.checkItems(he,ht),Ve.normalizeWidget(he),Ve.recursiveCheck(he,ht)}},{key:"checkProperties",value:function(he,ht){(function Rt(Zt){return null==Zt})(he.properties)&&(he.properties={},nr("Provided json schema does not contain a 'properties' entry. Output schema will be empty",ht))}},{key:"checkAndCreateFieldsets",value:function(he,ht){void 0===he.fieldsets&&(void 0!==he.order?Ve.replaceOrderByFieldsets(he):Ve.createFieldsets(he)),Ve.checkFieldsUsage(he,ht)}},{key:"checkFieldsUsage",value:function(he,ht){var Xn,Vt=Object.keys(he.properties),dn={},Zn=(0,c.Z)(he.fieldsets);try{for(Zn.s();!(Xn=Zn.n()).done;){var Mi,ni=Xn.value,pi=(0,c.Z)(ni.fields);try{for(pi.s();!(Mi=pi.n()).done;){var Wi=Mi.value;void 0===dn[Wi]&&(dn[Wi]=[]),dn[Wi].push(ni.id)}}catch(oa){pi.e(oa)}finally{pi.f()}}}catch(oa){Zn.e(oa)}finally{Zn.f()}for(var Yi=0,aa=Vt;Yi-1;Ui&&he.properties[xi]&&(he.properties[xi].isRequired=!0),dn.hasOwnProperty(xi)?(dn[xi].length>1&&_a("".concat(xi," is referenced by more than one fieldset: ").concat(dn[xi]),ht),delete dn[xi]):Ui?_a("".concat(xi," is a required field but it is not referenced as part of a 'order' or a 'fieldset' property"),ht):(delete he[xi],nr("Removing unreferenced field ".concat(xi),ht))}for(var ca in dn)dn.hasOwnProperty(ca)&&nr("Referencing non-existent field ".concat(ca," in one or more fieldsets"),ht)}},{key:"createFieldsets",value:function(he){he.order=Object.keys(he.properties),Ve.replaceOrderByFieldsets(he)}},{key:"replaceOrderByFieldsets",value:function(he){he.fieldsets=[{id:"fieldset-default",title:he.title||"",description:he.description||"",name:he.name||"",fields:he.order}],delete he.order}},{key:"normalizeWidget",value:function(he){var ht=he.widget;void 0===ht?ht={id:he.type}:"string"==typeof ht&&(ht={id:ht}),he.widget=ht}},{key:"checkItems",value:function(he,ht){void 0===he.items&&_a("No 'items' property in array",ht)}},{key:"recursiveCheck",value:function(he,ht){if(he.type===Ke.Object){for(var Vt in he.properties)he.properties.hasOwnProperty(Vt)&&Ve.preprocess(he.properties[Vt],ht+Vt+"/");if(he.hasOwnProperty("definitions"))for(var Zn in he.definitions)if(he.definitions.hasOwnProperty(Zn)){var Xn=he.definitions[Zn];Ve.removeRecursiveRefProperties(Xn,"#/definitions/".concat(Zn)),Ve.preprocess(Xn,ht+Zn+"/")}}else if("array"===he.type){if(Array.isArray(he.items||{}))for(var ni=0;ni0),!Ui||!Ui.length||!ca)break;var pr=this.__findIndex(he,Ui,ca,oa);Wi=Wi.concat(pr)}}catch(sr){Yi.e(sr)}finally{Yi.f()}return Wi}}]),Ve}();return Zt.MARKER="$____value",Zt}(),Hi=(0,_.Z)(function Zt(){(0,s.Z)(this,Zt)}),ea=function(Zt){(0,u.Z)(se,Zt);var Ve=(0,o.Z)(se);function se(){return(0,s.Z)(this,se),Ve.apply(this,arguments)}return(0,_.Z)(se,[{key:"createExpressionCompiler",value:function(){return new _i}},{key:"createExpressionCompilerVisibilityIf",value:function(){return new Ii}}]),se}(Hi),_i=function(){function Zt(){(0,s.Z)(this,Zt)}return(0,_.Z)(Zt,[{key:"evaluate",value:function(se){var he=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(new I.Jexl).evalSync(se,he)}}]),Zt}(),Ii=function(){function Zt(){(0,s.Z)(this,Zt)}return(0,_.Z)(Zt,[{key:"evaluate",value:function(se){var he=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{source:{},target:{}};return(new I.Jexl).evalSync(se,he)}}]),Zt}();function ga(Zt,Ve,se,he,ht){return new _n(Zt,Ve,se,he,ht)}var Ha=function(){var Zt=function(){function Ve(se,he,ht,Vt,dn,Zn){(0,s.Z)(this,Ve),this.formPropertyFactory=se,this.actionRegistry=he,this.validatorRegistry=ht,this.bindingRegistry=Vt,this.cdr=dn,this.terminator=Zn,this.schema=null,this.actions={},this.validators={},this.bindings={},this.onChange=new h.vpe,this.modelChange=new h.vpe,this.isValid=new h.vpe,this.onErrorChange=new h.vpe,this.onErrorsChange=new h.vpe,this.rootProperty=null}return(0,_.Z)(Ve,[{key:"writeValue",value:function(he){this.rootProperty&&this.rootProperty.reset(he,!1)}},{key:"registerOnChange",value:function(he){this.onChangeCallback=he,this.rootProperty&&this.rootProperty.valueChanges.subscribe(this.onValueChanges.bind(this))}},{key:"registerOnTouched",value:function(he){}},{key:"ngOnChanges",value:function(he){var ht=this;he.validators&&this.setValidators(),he.actions&&this.setActions(),he.bindings&&this.setBindings(),this.schema&&!this.schema.type&&(this.schema.type="object"),this.schema&&he.schema&&(he.schema.firstChange||this.terminator.destroy(),_r.preprocess(this.schema),this.rootProperty=this.formPropertyFactory.createProperty(this.schema),this.rootProperty.valueChanges.subscribe(this.onValueChanges.bind(this)),this.rootProperty.errorsChanges.subscribe(function(Vt){ht.onErrorChange.emit({value:Vt}),ht.isValid.emit(!(Vt&&Vt.length))})),this.schema&&(he.model||he.schema)&&(this.rootProperty.reset(this.model,!1),this.cdr.detectChanges())}},{key:"setValidators",value:function(){if(this.validatorRegistry.clear(),this.validators)for(var he in this.validators)this.validators.hasOwnProperty(he)&&this.validatorRegistry.register(he,this.validators[he])}},{key:"setActions",value:function(){if(this.actionRegistry.clear(),this.actions)for(var he in this.actions)this.actions.hasOwnProperty(he)&&this.actionRegistry.register(he,this.actions[he])}},{key:"setBindings",value:function(){if(this.bindingRegistry.clear(),this.bindings)for(var he in this.bindings)this.bindings.hasOwnProperty(he)&&this.bindingRegistry.register(he,this.bindings[he])}},{key:"reset",value:function(){this.rootProperty.reset(null,!0)}},{key:"setModel",value:function(he){this.model?Object.assign(this.model,he):this.model=he}},{key:"onValueChanges",value:function(he){this.onChangeCallback&&(this.setModel(he),this.onChangeCallback(he)),this.modelChange.observers.length>0&&(this.onChangeCallback||this.setModel(he)),this.onChange.emit({value:he})}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)(h.Y36(_n),h.Y36(X),h.Y36(ka),h.Y36(ne),h.Y36(h.sBO),h.Y36(sn))},Zt.\u0275cmp=h.Xpm({type:Zt,selectors:[["sf-form"]],inputs:{schema:"schema",model:"model",actions:"actions",validators:"validators",bindings:"bindings"},outputs:{onChange:"onChange",modelChange:"modelChange",isValid:"isValid",onErrorChange:"onErrorChange",onErrorsChange:"onErrorsChange"},features:[h._Bn([X,ka,Gt,ne,_r,Ft,{provide:_n,useFactory:ga,deps:[Le,ka,Gt,Hi,Oe]},sn,{provide:b.JU,useExisting:Zt,multi:!0}]),h.TTD],decls:1,vars:1,consts:[[4,"ngIf"],[3,"formProperty"]],template:function(se,he){1&se&&h.YNc(0,an,2,3,"form",0),2&se&&h.Q6J("ngIf",he.rootProperty)},directives:[vn,B.O5,b._Y,b.JL,b.F],encapsulation:2}),Zt}(),va=[{provide:At,useClass:tt},{provide:Le,useClass:qt},{provide:Hi,useClass:ea},{provide:me,useValue:3},{provide:Oe,useClass:He}],Ka=function(){var Zt=function(){function Ve(){(0,s.Z)(this,Ve)}return(0,_.Z)(Ve,null,[{key:"forRoot",value:function(){return{ngModule:Ve,providers:[].concat(va)}}}]),Ve}();return Zt.\u0275fac=function(se){return new(se||Zt)},Zt.\u0275mod=h.oAB({type:Zt}),Zt.\u0275inj=h.cJS({imports:[[B.ez,b.u5,b.UX]]}),Zt}()},4440:function(Ce,E,n){"use strict";function S(t,e){(null==e||e>t.length)&&(e=t.length);for(var c=0,u=new Array(e);c=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(y){throw y},f:_}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,s=!0,h=!1;return{s:function(){u=u.call(e)},n:function(){var y=u.next();return s=y.done,y},e:function(y){h=!0,b=y},f:function(){try{!s&&null!=u.return&&u.return()}finally{if(h)throw b}}}}},56101:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return o}});var S=n(28042),t=n(45914);function e(_){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(s){return typeof s}:function(s){return s&&"function"==typeof Symbol&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s})(_)}var c=n(45632);function u(_,s){if(s&&("object"===e(s)||"function"==typeof s))return s;if(void 0!==s)throw new TypeError("Derived constructors may only return object or undefined");return(0,c.Z)(_)}function o(_){var s=(0,t.Z)();return function(){var T,b=(0,S.Z)(_);if(s){var y=(0,S.Z)(this).constructor;T=Reflect.construct(b,arguments,y)}else T=b.apply(this,arguments);return u(this,T)}}},70350:function(Ce,E,n){"use strict";function S(t,e,c){return e in t?Object.defineProperty(t,e,{value:c,enumerable:!0,configurable:!0,writable:!0}):t[e]=c,t}n.d(E,{Z:function(){return S}})},97424:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return e}});var S=n(28042);function t(c,u){for(;!Object.prototype.hasOwnProperty.call(c,u)&&null!==(c=(0,S.Z)(c)););return c}function e(){return e="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(u,o,_){var s=t(u,o);if(s){var h=Object.getOwnPropertyDescriptor(s,o);return h.get?h.get.call(arguments.length<3?u:_):h.value}},e.apply(this,arguments)}},28042:function(Ce,E,n){"use strict";function S(t){return(S=Object.setPrototypeOf?Object.getPrototypeOf:function(c){return c.__proto__||Object.getPrototypeOf(c)})(t)}n.d(E,{Z:function(){return S}})},46751:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return t}});var S=n(29814);function t(e,c){if("function"!=typeof c&&null!==c)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(c&&c.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),c&&(0,S.Z)(e,c)}},45914:function(Ce,E,n){"use strict";function S(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(t){return!1}}n.d(E,{Z:function(){return S}})},29101:function(Ce,E,n){"use strict";function S(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}n.d(E,{Z:function(){return S}})},68257:function(Ce,E,n){"use strict";function S(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}n.d(E,{Z:function(){return S}})},29814:function(Ce,E,n){"use strict";function S(t,e){return(S=Object.setPrototypeOf||function(u,o){return u.__proto__=o,u})(t,e)}n.d(E,{Z:function(){return S}})},78170:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return u}});var S=n(27035),e=n(83448),c=n(68257);function u(o,_){return(0,S.Z)(o)||function t(o,_){var s=null==o?null:"undefined"!=typeof Symbol&&o[Symbol.iterator]||o["@@iterator"];if(null!=s){var y,Y,h=[],b=!0,T=!1;try{for(s=s.call(o);!(b=(y=s.next()).done)&&(h.push(y.value),!_||h.length!==_);b=!0);}catch(q){T=!0,Y=q}finally{try{!b&&null!=s.return&&s.return()}finally{if(T)throw Y}}return h}}(o,_)||(0,e.Z)(o,_)||(0,c.Z)()}},71340:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return o}});var S=n(4440),e=n(29101),c=n(83448);function o(_){return function t(_){if(Array.isArray(_))return(0,S.Z)(_)}(_)||(0,e.Z)(_)||(0,c.Z)(_)||function u(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},83448:function(Ce,E,n){"use strict";n.d(E,{Z:function(){return t}});var S=n(4440);function t(e,c){if(e){if("string"==typeof e)return(0,S.Z)(e,c);var u=Object.prototype.toString.call(e).slice(8,-1);if("Object"===u&&e.constructor&&(u=e.constructor.name),"Map"===u||"Set"===u)return Array.from(e);if("Arguments"===u||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(u))return(0,S.Z)(e,c)}}},2619:function(Ce){"use strict";Ce.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-04/hyper-schema#","id":"http://json-schema.org/draft-04/hyper-schema#","title":"JSON Hyper-Schema","allOf":[{"$ref":"http://json-schema.org/draft-04/schema#"}],"properties":{"additionalItems":{"anyOf":[{"type":"boolean"},{"$ref":"#"}]},"additionalProperties":{"anyOf":[{"type":"boolean"},{"$ref":"#"}]},"dependencies":{"additionalProperties":{"anyOf":[{"$ref":"#"},{"type":"array"}]}},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}]},"definitions":{"additionalProperties":{"$ref":"#"}},"patternProperties":{"additionalProperties":{"$ref":"#"}},"properties":{"additionalProperties":{"$ref":"#"}},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"},"links":{"type":"array","items":{"$ref":"#/definitions/linkDescription"}},"fragmentResolution":{"type":"string"},"media":{"type":"object","properties":{"type":{"description":"A media type, as described in RFC 2046","type":"string"},"binaryEncoding":{"description":"A content encoding scheme, as described in RFC 2045","type":"string"}}},"pathStart":{"description":"Instances\' URIs must start with this value for this schema to apply to them","type":"string","format":"uri"}},"definitions":{"schemaArray":{"type":"array","items":{"$ref":"#"}},"linkDescription":{"title":"Link Description Object","type":"object","required":["href","rel"],"properties":{"href":{"description":"a URI template, as defined by RFC 6570, with the addition of the $, ( and ) characters for pre-processing","type":"string"},"rel":{"description":"relation to the target resource of the link","type":"string"},"title":{"description":"a title for the link","type":"string"},"targetSchema":{"description":"JSON Schema describing the link target","$ref":"#"},"mediaType":{"description":"media type (as defined by RFC 2046) describing the link target","type":"string"},"method":{"description":"method for requesting the target of the link (e.g. for HTTP this might be \\"GET\\" or \\"DELETE\\")","type":"string"},"encType":{"description":"The media type in which to submit data along with the request","type":"string","default":"application/json"},"schema":{"description":"Schema describing the data to submit along with the request","$ref":"#"}}}}}')},11319:function(Ce){"use strict";Ce.exports=JSON.parse('{"id":"http://json-schema.org/draft-04/schema#","$schema":"http://json-schema.org/draft-04/schema#","description":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"positiveInteger":{"type":"integer","minimum":0},"positiveIntegerDefault0":{"allOf":[{"$ref":"#/definitions/positiveInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"minItems":1,"uniqueItems":true}},"type":"object","properties":{"id":{"type":"string","format":"uri"},"$schema":{"type":"string","format":"uri"},"title":{"type":"string"},"description":{"type":"string"},"default":{},"multipleOf":{"type":"number","minimum":0,"exclusiveMinimum":true},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"boolean","default":false},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"boolean","default":false},"maxLength":{"$ref":"#/definitions/positiveInteger"},"minLength":{"$ref":"#/definitions/positiveIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"anyOf":[{"type":"boolean"},{"$ref":"#"}],"default":{}},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":{}},"maxItems":{"$ref":"#/definitions/positiveInteger"},"minItems":{"$ref":"#/definitions/positiveIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"maxProperties":{"$ref":"#/definitions/positiveInteger"},"minProperties":{"$ref":"#/definitions/positiveIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"anyOf":[{"type":"boolean"},{"$ref":"#"}],"default":{}},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"enum":{"type":"array","minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"dependencies":{"exclusiveMaximum":["maximum"],"exclusiveMinimum":["minimum"]},"default":{}}')}},function(Ce){Ce(Ce.s=79758)}]); +//# sourceMappingURL=main.70d2db01a2347076.js.map \ No newline at end of file diff --git a/frontend/src/main/resources/static/main.5b82d623a407e527.js.map b/frontend/src/main/resources/static/main.70d2db01a2347076.js.map similarity index 56% rename from frontend/src/main/resources/static/main.5b82d623a407e527.js.map rename to frontend/src/main/resources/static/main.70d2db01a2347076.js.map index ec2cffb..8fdb987 100644 --- a/frontend/src/main/resources/static/main.5b82d623a407e527.js.map +++ b/frontend/src/main/resources/static/main.70d2db01a2347076.js.map @@ -1 +1 @@ -{"version":3,"mappings":"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X,UAAU,YAAO,OAAI+Y,EAAc9F,gBAAkBgG,EAAQhG,gBACjG+F,GAAe,IACjBtjC,KAAKk1B,UAAUkN,QAAQC,eAAeryB,OAAOszB,EAAc,GAC3DtjC,KAAKojC,6BAxFX,qCA4FE,WACEpjC,KAAKk1B,UAAUkN,QAAQC,eAAiB,GACxCriC,KAAKojC,4BA9FT,qCAiGE,WACEpjC,KAAKg9B,qBAAqBwG,oBAAoB,aAC9CxjC,KAAKo9B,gBAAgBh1B,KAAKpI,KAAKk1B,UAAUkN,QAAQC,gBACjDriC,KAAKg9B,qBAAqByG,wBApG9B,kCAuGE,WACE,OAAOzjC,KAAK8iC,yBAAyB9iB,iBAxGzC,4BA2GE,SAAeijB,GACbjjC,KAAKojC,8BA5GTnjB,GAAwDwd,kDAA3C0E,GAAkCljC,uCAAlCkjC,EAAkCz2B,QAAlCy2B,EAAkC,YAAlCA,EAAb,wECPO,IAAMuB,EAA2D,CACpEC,SAAU,CACN,4BACA,uBACA,2BACA,0BACA,4BACA,+BACA,uBACA,4BACA,4BACA,gCAENvB,QAAS,CACP,4BACA,uBACA,iCACA,0BACA,6BACA,iCACA,+BACA,0CACA,0CACA,wCACA,4BACA,+BACA,uBACA,4BACA,4BACA,gCAEFwB,YAAa,CACX,4BACA,uBACA,4BACA,0BACA,uBACA,wBACA,wCACA,0CACA,0CACA,4BACA,+BACA,4BACA,uBACA,4BACA,gCAEFC,QAAS,CACP,4BACA,uBACA,iCACA,oCACA,0CACA,0CACA,wCACA,4BACA,+BACA,uBACA,4BACA,4BACA,gCAEFC,oBAAqB,CACnB,4BACA,uBACA,6CACA,+CACA,0CACA,0CACA,wCACA,4BACA,+BACA,uBACA,4BACA,4BACA,gCAEFC,QAAS,CACP,4BACA,uBACA,4BACA,+BACA,uBACA,4BACA,4BACA,gCAEFC,qBAAsB,CACpB,4BACA,uBACA,8BACA,0CACA,0CACA,wCACA,4BACA,+BACA,uBACA,4BACA,4BACA,gCAEFC,QAAS,CACP,4BACA,uBACA,wCACA,0BACA,2BACA,kCACA,0CACA,0CACA,wCACA,4BACA,+BACA,uBACA,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B,IACA0iC,KACAlsC,IACAC,KACAF,KACAgJ,KACA7I,KACA4T,KACAq4B,IACAC,QAUSH,GAAb,8MCrBaG,EAAb,eAAaA,KAAb9/C,iFAAa8/C,4DAlBF,CACPx4C,KACAoV,KACA/I,KACAI,KACAF,KACAowB,KACA/mB,IACAqmB,IACA5mB,QASSmjC,EAAb,2PCYaD,EAAb,eAAaA,KAAb7/C,iFAAa6/C,4DAxBF,CACPv4C,KACAi8B,IACAG,IACA7vB,KACA4vB,KACA1vB,KACAmJ,IACAzJ,KACAgJ,KACA7I,KACAgsC,KACAlsC,IACAowB,IACAic,QAUSF,EAAb,wcCVaG,GAAb,eAAaA,MAAb1nD,sFAAa0nD,kEApBF,CACPvjC,KACAhJ,KACAG,KACAF,IACAK,KACAF,KACA4vB,KACAF,KACAhe,KACAye,IACA18B,SASS04C,GAAb,eC4CaC,GAAb,eAAaA,MAAb3nD,sFAAa2nD,kEA1CF,CACP34C,KACAmV,KACA7I,KACAH,KACAgS,KACA9R,KACAI,KACAF,KACA4vB,KACAjc,KACAkc,IACAne,KACA7R,IACAiwB,KACAC,KACA1mB,IACAsI,KACAqe,KACArwB,MACAswB,IACAC,KACA18B,IACA28B,IACAC,MACAre,IACAse,KACAC,IACAznB,KACA5I,MACAyF,KACAoD,KACAqnB,IACAT,SASS0c,GAAb,GCEaC,GAAb,eAAaA,MAAb5nD,sFAAa4nD,kEA3CF,CACP54C,KACAmV,KACA7I,KACAH,KACAgS,KACA9R,KACAI,KACAF,KACA4vB,KACAjc,KACAkc,IACAne,KACA7R,IACAiwB,KACAC,KACA1mB,IACAsI,KACAqe,KACArwB,MACAswB,IACAC,KACA18B,IACA28B,IACAC,MACAre,IACAse,KACAC,IACAznB,KACA5I,MACAyF,KACAoD,KACAqnB,IACAT,SAUS2c,GAAb,cCwCaH,GAAb,eAAaA,GAAb,sFACE,WACE,MAAO,CACLr7C,SAAUq7C,GACVp7C,UAAW,QAJjBw7C,sDAAaJ,kEA9DF,CACPz4C,KACAmV,KACA7I,KACAH,KACAgS,KACA9R,KACAI,KACAF,KACA4vB,KACAjc,KACAkc,IACAne,KACA7R,IACAiwB,KACAC,KACA1mB,IACAsI,KACAqe,KACArwB,MACAswB,IACAC,KACA18B,IACA28B,IACAC,MACAre,IACAse,KACAC,IACAznB,KACAC,KACA7I,MACAyF,KACAgqB,KACAyc,GACAI,KACAH,GACAC,GACAJ,SAyBSC,GAAb,wcC1CaK,GAAb,eAAaA,MAAbpgD,sFAAaogD,kEA1CF,CACP94C,KACAmV,KACA7I,KACAH,KACAgS,KACA9R,KACAI,KACAF,KACA4vB,KACAjc,KACAkc,IACAne,KACA7R,IACAiwB,KACAC,KACA1mB,IACAsI,KACAqe,KACArwB,MACAswB,IACAC,KACA18B,IACA28B,KACAC,MACAre,IACAse,KACAC,IACAznB,KACA5I,MACAyF,KACAoD,IACAqnB,KACAT,SASS6c,GAAb,sTCzEM/sD,oBAA8BA,SAAeA,4BAAfA,yDAC9BA,qBAAyCA,SAAgBA,4BAAhBA,2DASrCA,yBACEA,kBAAwEA,SAAkBA,QAC5FA,4CAFiFA,qBAC1EA,qDAAmEA,kDAH5EA,eACEA,kBAAwCA,mBAA4BA,aAAGA,SAAoBA,QAAIA,QAAOA,QACtGA,gCAGFA,2CAJyEA,0BACpCA,gECCtC,IAAMgtD,EAAb,eAAaA,EAAb,WAqBE,YACUr2C,EACA4M,EACDzM,EACAxO,EACCs0B,OAAsCjwB,cAJtC5L,oBACAA,eACDA,iBACAA,qBACCA,kBAzBVA,mBAAgB,IAAIonB,KAGpBpnB,cAAU,EAMAA,qBAAkB,IAAIC,MACtBD,oBAAiB,IAAIC,MACtBD,iBAAc,SACdA,iBAAc,GACfA,yBAAsB,GACpBA,YAAS,IAAIC,MACbD,YAAS,IAAIC,MAEfD,gBAAa,MAlBvB,wCA6BE,WAAQ,WACNA,KAAK67B,UAAU3sB,oBAAoB,eAAerH,MAAKC,OAAK,IAAInG,UAAU,YACxE,IAAI6c,EACJA,EAAO5c,EAASsqD,YAAer8C,WAC/B3I,EAAKilD,gBAAkBvqD,EAASsqD,YAAer8C,WAC3C2O,EAAK4tC,MACPllD,EAAKmlD,WAAa7tC,EAAK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QAC9FA,wCACAA,qBAAmCA,4BAAiBA,qBAC1BA,UAA0BA,QAAOA,QAC7DA,QAEAA,gBACEA,kBACEA,UACFA,QACFA,QACFA,QAEAA,6BAEEA,oBAGEA,oBACEA,oBAEEA,oBAGEA,2BAmKAA,+CAmBFA,QAEFA,QAGAA,oBACEA,oBACEA,qBACFA,QACAA,oBACEA,UACFA,QACFA,QAEAA,oBACEA,oBACEA,4BACFA,QACAA,oBACEA,UACFA,QACFA,QAEAA,oBACEA,oBACEA,oBACEA,2BACFA,QACAA,oBACEA,UACFA,QACFA,QACAA,oBACEA,oBACEA,2BAKFA,QACAA,oBACEA,mBACAA,2BAOFA,QACFA,QACFA,QAEAA,oBACEA,oBACEA,oBACEA,2BACFA,QACAA,oBACEA,UACFA,QACFA,QAEAA,oBACEA,oBACEA,+BAIFA,QACAA,oBACEA,2BAKFA,QACFA,QACFA,QAgCFA,QAKAA,oBAGEA,iBACEA,oBACEA,oBACEA,yBACFA,QACAA,oBACEA,UACFA,QACFA,QAEAA,oBACEA,oBACEA,2BACFA,QACAA,oBACEA,2BACFA,QACFA,QAEAA,oBACEA,oBACEA,yBACFA,QACAA,oBACEA,UACFA,QACFA,QAEAA,oBACEA,oBACEA,yBACFA,QACAA,oBACEA,2BACFA,QACFA,QACFA,QAEFA,QAEFA,QAEFA,QAEFA,uDA3XgCA,+CACxBA,qDAG0EA,iCAOXA,yBAGvCA,6BAIHA,+CACrBA,yCAgBUA,yDAAqD,cAgM3DA,gCASAA,sCAUEA,yCAKOA,4CAQ4BA,+CAiBnCA,yCAY8BA,sDAqD9BA,oCASAA,wEASAA,qCASAA,uGApXhBA,mBACEA,iCA+XFA,4BA/XoCA,wICnQ/B07D,GAAb,eAAaA,EAAb,WAuDE,WACS3D,EACAC,EACCthD,EACAM,EACA2kD,EACA5kD,GACAsd,GACDvd,GACAxO,GACC5H,GACAk7D,GACA/kD,GACAhW,GACAoW,GACAN,GACAirB,GACAxI,KAAmB,eAhBpBr4B,0BACAA,sBACCA,sBACAA,gBACAA,wBACAA,eACAA,kBACDA,kBACAA,sBACCA,uBACAA,4BACAA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CEA,2CACFA,QACAA,mBACEA,oBACsCA,cAAGA,UAAsDA,QAAIA,QACrGA,QACFA,QACAA,mBACEA,mBACEA,sBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,4BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,oCACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,qBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,8BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,oCACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,mCACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,kCACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,6BACFA,QACAA,mBACEA,UACFA,QACFA,QAWFA,QAEAA,kBACEA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,0BAKFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,+BACFA,QACAA,mBACEA,0BA+BFA,QACFA,QACFA,QAEFA,QACFA,QACFA,QAGAA,2BAiCAA,2BAyBAA,4BAwBAA,gBACAA,oBACEA,wBACEA,8BACEA,6BA6KFA,QACFA,QACFA,QAEFA,4BAlewFA,iCAKWA,iCAKxCA,iCAmBJA,2EAQzCA,6CAWAA,kDAQAA,yDAWAA,4CAQAA,oDAWAA,iDAQAA,wDAWAA,6CAQAA,iDAWAA,iDAQAA,iDAWAA,mDAqBqBA,kEAefA,gEAwCHA,qEAiCAA,oEAyBAA,kEA4BaA,gEC1SvB,IAAM6gE,GAAb,eAAaA,EAAb,4CAEE,WACE9I,EACOC,EACAthD,EACPhW,GACAq4B,GACAhiB,GACAD,GACAH,GACOE,GACPuiB,IAAmB,8BAEnB0nC,eAAM/I,EAAoBC,EAAgBthD,EAAgBhW,GAAgBq4B,GAAyBhiB,GAAQD,GAAWH,GAAcyiB,KAV7H4+B,iBACA8I,oBAMAA,kBACYA,GAZvB,uCAiBE,WAAQ,WACN//D,KAAK8V,YAAYgqB,iBAAiB,QAAS,UAAW,gBAAgBn+B,UAAU,YAC9E28D,EAAKh9B,QAAU1/B,IAGjB5B,KAAKqL,GAAKrL,KAAK2V,eAAe6B,SAAStM,OAAOG,GAC9CrL,KAAKs1D,QAAUt1D,KAAK2V,eAAe6B,SAAStM,OAAOoqD,QACnDt1D,KAAKu1D,UAAYv1D,KAAK2V,eAAe6B,SAAStM,OAAOqqD,WACrD,8DAzBJ1wD,GAAiD25D,iDAApCsB,GAA2B7gE,iJAA3B6gE,EAA2B14D,4iDDnBxCnI,wBAIAA,2BAifAA,cAAIA,cAAIA,cAAIA,qBArfNA,wBAIAA,qmLCeO6gE,EAAb,wCCnBA7gE,iBACEA,cAAIA,cAAIA,cAAIA,cACZA,SACFA,4BADEA,8DAiHcA,eACEA,SAA+BA,cACjCA,gCADEA,sHAuCEA,eACEA,gBAAoEA,SAAqBA,QAC3FA,uCADKA,0DAAiEA,4DAGpEA,mGALJA,eACEA,yBAGAA,4CAGFA,iDANQA,wCAAwB,yCAShCA,eACEA,kBACFA,sCAD+CA,uEAhBnDA,cACEA,cAAIA,SAASA,QACbA,cAAIA,SAAiBA,QACrBA,cAAIA,SAAcA,QAClBA,cACEA,wBAQFA,QACAA,cACEA,yBAGFA,QACAA,eAAIA,UAAoBA,QACxBA,eAAIA,UAAmBA,QACvBA,eAAIA,UAAgBA,QACpBA,eAAIA,UAAeA,QACnBA,eAAIA,UAA2BA,QAC/BA,eAAIA,UAA0BA,QAChCA,0CAxBMA,oBACAA,4BACAA,yBAEIA,yCAUAA,wCAIJA,+BACAA,8BACAA,2BACAA,0BACAA,sCACAA,gEAxKlBA,eACEA,iBACEA,sBACEA,0BACEA,oCAAyBA,kBAAiCA,oBAAQA,QACpEA,QAEAA,4BAEEA,iBACEA,iBACEA,kBACEA,4BACFA,QACAA,kBACEA,oBAA4CA,UAA2BA,QACzEA,QACFA,QACAA,kBACEA,kBACEA,uCACFA,QACAA,kBACEA,oBAA0CA,cAAGA,UAAsDA,QAAIA,QACzGA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,4BACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,gCACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,kCACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,2BACFA,QACAA,kBACEA,2BACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,qCACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,mCACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,yCACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,uCACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,0BAGFA,QACFA,QACFA,QAEFA,QACFA,QACFA,QAEAA,mBACEA,uBACEA,8BACEA,UACFA,QACAA,6BACEA,qBACEA,kBACEA,kBACEA,eAAIA,cAACA,QACLA,eAAIA,uBAAUA,QACdA,eAAIA,oBAAOA,QACXA,eAAIA,2BAAcA,QAClBA,eAAIA,sBAASA,QACbA,eAAIA,0BAAaA,QACjBA,eAAIA,iBAAIA,QACRA,eAAIA,qBAAQA,QACZA,eAAIA,oBAAOA,QACXA,eAAIA,0BAAYA,QAChBA,gBAAIA,mCAAqBA,QAC3BA,QACFA,QACAA,mBACEA,4BA0BFA,QACFA,QACFA,QACFA,QACFA,QACFA,6BAhK0DA,2CAQCA,2EAW7CA,kDAQAA,qDAWAA,6CAQAA,2EAWAA,oDAQAA,wDAWAA,qDAQAA,mDAWqBA,uDAc3BA,wFAoBsBA,mFAjJhCA,eACEA,2BAsLFA,4BAtLQA,uECcD,IAAM+gE,GAAb,eAAaA,EAAb,4CAEE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QACAA,6BACEA,mBACEA,oBACEA,kBACEA,kBACEA,eAAIA,4BAAeA,QACnBA,eAAIA,8BAAiBA,QACrBA,eAAIA,4BAAeA,QACnBA,eAAIA,gCAAmBA,QACvBA,eAAIA,oBAAOA,QACXA,eAAIA,gBAAGA,QACPA,eAAIA,iBAAIA,QACRA,eAAIA,iBAAIA,QACRA,eAAIA,wBAAWA,QACfA,eAAIA,mBAAMA,QACVA,eAAIA,kBAAKA,QACTA,eAAIA,oCAAuBA,QAC3BA,eAAIA,kBAAKA,QACXA,QACFA,QACAA,kBACEA,2BAsCFA,QACFA,QACFA,QACFA,QACFA,QACAA,eAEFA,0CAlH6BA,8BASrBA,gCAQAA,kCAQAA,qCAQAA,0CAWAA,0FAyB2BA,8EAzL7CA,sBAIEA,oBACEA,4BACEA,kBACEA,SACFA,QAEAA,cACAA,kBACEA,kBACEA,kBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,sBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,oBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,oBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,yBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,oBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,4BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,mCACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAMAA,uBACEA,6BACEA,2BAqHFA,QACFA,QAEFA,QACFA,QAGFA,0CA9OSA,0CAODA,6CAUIA,qCAQAA,iCAQAA,+BAWAA,0CAQAA,8CAQAA,mCAQAA,0CAWAA,oCAQAA,qCAQAA,oCAQAA,2CAWmBA,sEAjZvCA,eACEA,iBACEA,sBACEA,0BACEA,iBACEA,eACEA,8CAEAA,sBAIAA,gBACEA,6BAEFA,QACFA,QAEAA,2BAOFA,QACFA,QACAA,6BAEEA,oBACEA,kBACEA,kBACEA,eAAIA,8BAAiBA,QACrBA,eAAIA,yBAAYA,QAChBA,eAAIA,+BAAkBA,QACxBA,QACFA,QACAA,kBACEA,yBAaAA,wBAMFA,QACFA,QAGAA,eACAA,mBACEA,mBACEA,mBACEA,+DACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,8CACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,qDACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,oCACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,sCACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,uCACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,4BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,wBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,4BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,6BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,qBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,oCACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,uCACFA,QACAA,oBACEA,WACFA,QACFA,QACFA,QAEAA,oBACEA,oBACEA,oBACEA,uBACFA,QACAA,oBACEA,WACFA,QACFA,QAEAA,oBACEA,oBACEA,wCACFA,QACAA,oBACEA,WACFA,QACFA,QA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,oBACEA,iBACEA,cACEA,cAAIA,aAACA,QACLA,cAAIA,gBAAIA,QACRA,cAAIA,8BAAkBA,QACtBA,eAAIA,sBAASA,QACbA,eAAIA,iBAAIA,QACRA,eAAIA,mCAAsBA,QAC5BA,QACFA,QACAA,kBACEA,0BAgCFA,QACFA,QACFA,6BAlCwBA,oFA0DZA,eACEA,gBAAoEA,SAAUA,QAChFA,uCADKA,0DAAiEA,iDAGpEA,wFALJA,eACEA,yBAGAA,4CAGFA,iDANQA,wCAAwB,yCAJpCA,cACEA,cAAIA,SAASA,QACbA,cACEA,wBAQFA,QACAA,cAAIA,SAAYA,QAChBA,cAAIA,SAAmDA,QACzDA,0CAbMA,oBAEIA,8BASJA,uBACAA,8FAxBZA,4BACEA,oBACEA,iBACEA,cACEA,cAAIA,aAACA,QACLA,cAAIA,gBAAIA,QACRA,cAAIA,gBAAIA,QACRA,eAAIA,mCAAsBA,QAC5BA,QACFA,QACAA,kBACEA,yBAeFA,QACFA,QACFA,6BAjBwBA,sFAxU9BA,eACEA,iBACEA,sBACEA,0BACEA,gCAAqBA,kBAAiCA,iBAAKA,QAC7DA,QACAA,4BAEEA,iBACEA,iBACEA,kBACEA,2BACFA,QACAA,kBACEA,kCASFA,QACFA,QACAA,kBACEA,kBACEA,kCACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,4BACFA,QACAA,kBACEA,oBAA4CA,UAAuBA,QACrEA,QACFA,QACAA,kBACEA,kBACEA,4BACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,oCACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,uCACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,4BACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,gCACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,gCACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,uCACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,uCACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,oCACFA,QACAA,kBACEA,2BACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,0BACFA,QACAA,kBACEA,yBAKFA,QACFA,QACAA,kBACEA,kBACEA,kCACFA,QACAA,kBACEA,2BACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,qBACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,sBACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,sBACFA,QACAA,mBACEA,WACFA,QACFA,QAEAA,mBACEA,mBACEA,6BACFA,QACAA,mBACEA,WACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,WACFA,QACFA,QACAA,mBACEA,mBACEA,oCACFA,QACAA,mBACEA,WACFA,QACFA,QACFA,QAEFA,QACFA,QACFA,QAGAA,2BAwCAA,oBACEA,wBACEA,+BACEA,WACFA,QACAA,wCAgDFA,QACFA,QAEAA,oBACEA,yBACEA,+BACEA,WACFA,QACAA,wCA6BFA,QACFA,QACFA,4BA9U6BA,oDAgBfA,oDAW4CA,sCAQ5CA,kDAWAA,qDAQAA,wDAWAA,8CAQAA,iDAWAA,kDAQAA,wDAWAA,wDAQAA,+EAWMA,6DAYNA,6EAWAA,0DAQAA,2DAWAA,0DASAA,4DAWAA,uDAQAA,kEAUNA,qEA2CAA,iFAEiBA,8DAsDjBA,wFAEiBA,iEC5SlB,IAAMuqE,GAAb,eAAaA,EAAb,4CAME,WACEC,EACAxS,EACAthD,EACAhW,GACAq4B,GACAhiB,GACAD,GACAH,GACOrO,GACP8wB,IAAmB,8BAEnB0nC,eAAM0J,EAAexS,EAAgBthD,EAAgBhW,GAAgBq4B,GACnEhiB,GAAQD,GAAWH,GAAcyiB,KAJ5B9wB,iBAbTw4D,eAAc,GAEdA,gBAAc,EAYOA,GAhBvB,uCAsBE,WAC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eACEA,kBACFA,sCAD+CA,sEAVnDA,cACEA,cAAIA,SAAOA,QACXA,cACEA,wBAIFA,QACAA,cACEA,wBAGFA,QACFA,0CAZMA,oBAEIA,uCAMAA,kEAnBhBA,eACEA,oBACEA,iBACEA,iBACEA,iBAAiBA,aAACA,QAClBA,iBAAkBA,0BAAcA,QAChCA,iBAAkBA,qBAASA,QAC7BA,QACFA,QACAA,kBACEA,yBAcFA,QACFA,QACFA,6BAhBwBA,uFAkBtBA,aAAGA,cACDA,gEACFA,mCArYlBA,eAEEA,iBAEEA,iBACEA,iBACEA,iBACAA,iBAAMA,aAAGA,qCAAyBA,QAClCA,8BACAA,sBAIFA,QAGAA,kBACEA,kBACEA,4BACFA,QACAA,mBACEA,iBAAgDA,oBACNA,UAA6BA,QAAOA,QAC9EA,2BAIFA,QACFA,QAEAA,kBACEA,kBACEA,qBACFA,QACAA,mBACEA,UACFA,QACFA,QAEAA,kBACEA,kBACEA,4BACFA,QACAA,mBACEA,UACFA,QACFA,QAEFA,QACFA,QAEAA,mBAEEA,mBACEA,0BAEEA,uBACEA,mBACEA,qBACEA,mBAAmBA,8BAAiBA,QACpCA,6BAEEA,kBACEA,mBACEA,mBACEA,4BACFA,QACAA,mBACEA,iBAAgDA,oBACNA,UAA6BA,QAAOA,QAChFA,QACFA,QACAA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,qBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,4BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,4BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,sBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,mBACEA,mBACEA,6BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,oBACEA,oBACEA,uBACFA,QACAA,oBACEA,WACFA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,oBACEA,8BACFA,QACAA,oBACEA,WACFA,QACFA,QACAA,oBACEA,oBACEA,2BACFA,QACAA,oBACEA,WACFA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,oBACEA,0BACFA,QACAA,oBACEA,WACFA,QACFA,QACAA,oBACEA,oBACEA,wBACFA,QACAA,oBACEA,WACFA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,oBACEA,iCACFA,QACAA,oBACEA,6BACFA,QACFA,QACAA,oBACEA,oBACEA,8BACFA,QACAA,oBACEA,6BACFA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,oBACEA,sCACFA,QACAA,oBACEA,6BACFA,QACFA,QACAA,oBACEA,oBACEA,wCACFA,QACAA,oBACEA,6BACFA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,oBACEA,+BACFA,QACAA,oBACEA,6BACFA,QACFA,QACAA,oBACEA,oBACEA,6BACFA,QACAA,oBACEA,6BACFA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,oBACEA,4BACFA,QACAA,oBACEA,kBAAgDA,WAAqBA,QACvEA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,mBACEA,iCACFA,QACAA,oBACEA,WACFA,QACFA,QACFA,QAEAA,mBACEA,oBACEA,mBACEA,0BACFA,QACAA,oBACEA,0BAKFA,QACFA,QACFA,QAEFA,QACFA,QACFA,QACFA,QAEAA,wBACEA,oBACEA,sBACEA,oBAAmBA,6CAA+BA,QAClDA,8BACEA,2BAyBAA,8CAKFA,QACFA,QACFA,QACFA,QAEAA,wBACEA,oBACEA,sBACEA,oBAAmBA,2CAA6BA,QAChDA,8BACEA,2BA2BAA,8CAKFA,QACFA,QACFA,QACFA,QAEFA,QAEFA,Q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M+1E,GAAb,eAAaA,EAAb,4CAGE,WACE3E,EACA16D,EACAhW,EACAq4B,GACAhiB,GACAD,GACAH,GACQrO,IAA4B,8BAClCooE,eAAMU,EAAsB16D,EAAgBhW,EAAgBq4B,GAC9DhiB,GAAQD,GAAWH,KAFXrO,iBAGRooE,GAAKrjE,YAAc/E,GAAc+E,YAHGqjE,GAXxC,uCAiBE,cACEsF,wDAEAj1E,KAAK+0E,gBAAL,UAA0B/0E,KAAKsM,YAAYG,UAAY,GAAvD,2CApBJ5H,GAAyD+vE,iDAA5CI,GAAmC/1E,0HAAnC+1E,EAAmC5tE,g3BDjBhDnI,yBAqCAA,iBAEEA,iBACEA,yBAEEA,qBACEA,iBACEA,oBACEA,iBAAmBA,iCAAqBA,QACxCA,4BACEA,kBACEA,kBACEA,kBACEA,8BACFA,QACAA,kBACEA,gBAAgDA,oBACNA,UAA+BA,QAAOA,QAClFA,QACFA,QACAA,kBACEA,kBACEA,4BACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,qBACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,6BACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,4BACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,qCACFA,QACAA,kBACEA,2BACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,4CACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,qDACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,iDACFA,QACAA,kBACEA,2BACFA,QACFA,QACAA,kBACEA,kBACEA,iDACFA,QACAA,kBACEA,UACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,+CACFA,QACAA,kBACEA,UACFA,QACFA,QACAA,kBACEA,kBACEA,oDACFA,QACAA,kBACEA,2BACFA,QACFA,QACFA,QAEAA,kBACEA,kBACEA,kBACEA,uBACFA,QACAA,kBACEA,UACFA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A,oBACAA,+BACAA,2BACAA,4BACAA,6BACAA,uBACAA,2BAE4BA,4EAvIhDA,eACEA,uBACEA,qBACEA,SACAA,mBAAuBA,SAAwBA,QACjDA,QAEAA,kBACEA,kBACEA,kBACEA,mBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,yBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,gCACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,wBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAIAA,mBACEA,uBACEA,8BACEA,UACFA,QACAA,6BACEA,qBACEA,kBACEA,eACEA,eAAIA,cAACA,QACLA,kBAAuBA,8BAAiBA,QACxCA,eAAIA,iCAAoBA,QACxBA,eAAIA,0BAAaA,QACjBA,eAAIA,uBAAUA,QACdA,eAAIA,wBAAWA,QACfA,eAAIA,iBAAIA,QACRA,eAAIA,qBAAQA,QACZA,eAAIA,8BAAiBA,QACvBA,QACFA,QACAA,kBACEA,0BA4BFA,QACFA,QACFA,QACFA,QACFA,QAMAA,mBACEA,uBACEA,8BACEA,UACFA,QACAA,6BACEA,qBACEA,kBACEA,eACEA,eAAIA,cAACA,QACLA,eAAIA,0BAAaA,QACjBA,eAAIA,sBAASA,QACbA,eAAIA,uBAAUA,QACdA,eAAIA,wBAAWA,QACfA,eAAIA,iBAAIA,QACRA,eAAIA,qBAAQA,QACZA,eAAIA,8BAAiBA,QACvBA,QACFA,QACAA,kBACEA,0BAiBFA,QACFA,QACFA,QACFA,QACFA,QAIFA,QACAA,eAAIA,eACNA,8DAtJMA,oEACuBA,wCASnBA,+BAQAA,mCAWAA,0CAQAA,mCAUAA,oEAkBsBA,mDAyCtBA,oFAiBsBA,kFA2DhBA,eAAoCA,cAAIA,SAA0BA,uCAA1BA,kEAL1CA,eACEA,eACEA,gBACkBA,SAAmBA,QACvCA,QACAA,wBACAA,kBACFA,sCALOA,gEACeA,gCAEdA,8CACyCA,6EATrDA,cACEA,cAAIA,SAASA,QACbA,iBACEA,wBAQFA,QACAA,cAAIA,SAA2BA,QAC/BA,cAAIA,SAAgBA,QACpBA,cAAIA,UAAiBA,QACrBA,eAAIA,UAAkBA,QACtBA,eAAIA,UAAYA,QAChBA,eAAIA,UAAgBA,QACtBA,0CAjBMA,oBAEIA,8CASJA,sCACAA,2BACAA,4BACAA,6BACAA,uBACAA,sDAsCAA,eAAoCA,cAAIA,SAA0BA,uCAA1BA,kEAL1CA,eACEA,eACEA,gBACkBA,SAAmBA,QACvCA,QACAA,wBACAA,kBACFA,sCALOA,gEACeA,gCAEdA,8CACyCA,6EATrDA,cACEA,cAAIA,SAASA,QACbA,iBACEA,wBAQFA,QACAA,cAAIA,SAAgBA,QACpBA,cAAIA,SAAiBA,QACrBA,cAAIA,UAAkBA,QACtBA,eAAIA,UAAYA,QAChBA,eAAIA,UAAgBA,QACtBA,0CAhBMA,oBAEIA,8CASJA,2BACAA,4BACAA,6BACAA,uBACAA,sDAzSxBA,kBAGEA,wBAGAA,kBACEA,aAAGA,SAAqFA,QAC1FA,QAEAA,iBACEA,oBAMEA,4BAEEA,kBACEA,kBACEA,mBACEA,8BACFA,QACAA,mBACEA,gBACEA,iBACEA,oBAA4CA,UAAsBA,QACpEA,QACFA,QACAA,yBACAA,yBAGFA,QACFA,QACAA,mBACEA,mBACEA,wBAAUA,eAAIA,eACdA,yBAAWA,eAAIA,eACfA,mBAAKA,eAAIA,eACTA,uBAASA,eACXA,QACAA,mBACEA,UAAYA,eAAIA,eAChBA,UAAaA,eAAIA,eACjBA,UAAaA,eAAIA,eACjBA,UAAiBA,eACnBA,QACFA,QACFA,QAOAA,4BA6JAA,mBACEA,uBACEA,8BACEA,UACFA,QACAA,6BACEA,qBACEA,kBACEA,eACEA,eAAIA,cAACA,QACLA,kBAAuBA,8BAAiBA,QACxCA,eAAIA,iCAAoBA,QACxBA,eAAIA,sBAASA,QACbA,eAAIA,uBAAUA,QACdA,eAAIA,wBAAWA,QACfA,eAAIA,iBAAIA,QACRA,eAAIA,qBAAQA,QACdA,QACFA,QACAA,kBACEA,0BAmBFA,QACFA,QACFA,QACFA,QACFA,QAKAA,mBACEA,uBACEA,8BACEA,UACFA,QACAA,6BACEA,qBACEA,kBACEA,eACEA,eAAIA,cAACA,QACLA,kBAAuBA,8BAAiBA,QACxCA,eAAIA,sBAASA,QACbA,eAAIA,uBAAUA,QACdA,eAAIA,wBAAWA,QACfA,eAAIA,iBAAIA,QACRA,eAAIA,qBAAQA,QACdA,QACFA,QACAA,kBACEA,0BAkBFA,QACFA,QACFA,QACFA,QACFA,QAGFA,QACFA,QACFA,QAGFA,qDApTQA,2BAIDA,oGAmBYA,2DAC2CA,gCAG1CA,oCACAA,uCAaNA,8BACAA,8BACAA,8BACAA,kCAUmBA,+CAgKnBA,+FAiBsBA,4DA+BtBA,gFAgBsBA,gFAxZ5CA,eACEA,iBAEEA,sBACEA,0BACEA,iBACEA,gDAEAA,sBAKAA,sBAIFA,QACAA,iBACEA,kBAAwBA,wBAAWA,QAAQA,UAC3CA,mBAAwBA,yBACjBA,QAAOA,2BACdA,mBAAwBA,yBAAYA,QAAQA,UAC5CA,mBAAwBA,yBAAYA,QAAQA,2BAC9CA,QACFA,QAEAA,6BAEEA,eACAA,mBACEA,mBACEA,mBACEA,2BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,sBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,yBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,oBACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,yBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,yBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,8BACFA,QACAA,mBACEA,2BACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,sCACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,8BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAIAA,4BA4TAA,mBACEA,uBACEA,8BACEA,+BACFA,QACAA,6BACEA,mBA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BACEA,mBACEA,mBACEA,+BACFA,QACAA,mBACEA,iBACkBA,UAAwBA,QAC5CA,QACFA,QACAA,mBACEA,mBACEA,6BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,6BACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,0BACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,yBACFA,QACAA,mBACEA,UACFA,QACFA,QACAA,mBACEA,mBACEA,iCACFA,QACAA,mBACEA,UACFA,QACFA,QACFA,QAEAA,mBACEA,mBACEA,mBACEA,oCACFA,QACAA,mBACEA,6BACFA,QACFA,QACFA,QAEFA,QACFA,gCAjFkDA,2CAiBrCA,wDACeA,uBAQlBA,uCAWAA,uCAQAA,oCAWAA,mCAQAA,0CAWAA,uFA/EZA,kBACEA,gCAqFFA,4BArFwCA,2ICpMnCuoF,GAAb,eAAaA,EAAb,WA+CE,WACSnJ,EACApnB,EACCthD,EACAM,EACA2kD,EACA5kD,GACAsd,GACDvd,GACAxO,GACC5H,GACAk7D,GACA/kD,GACAhW,GACAoW,GACAN,GACAirB,GACAxI,KAAmB,eAhBpBr4B,2BACAA,sBACCA,sBACAA,gBACAA,wBACAA,eACAA,kBACDA,kBACAA,sBACCA,uBACAA,4BACAA,oBACAA,gCACAA,4BACAA,qBACAA,eACAA,qBA/DAA,6BAAgD,IAAIC,MAE9DD,iBAAa,EACbA,gBAAY,EACZA,cAAU,EACVA,kBAAc,EACNA,sBAAkB,EAC1BA,oBAAgB,EAChBA,uBAAmB,EAEnBA,6BAAmF,GACnFA,gBAA6B,GAC7BA,kCAA+B,EAE/BA,mBAA+B,GAI/BA,gBAAa,OACLA,yBAAqB,EAItBA,mBAAqC,GACpCA,mBAAqC,GAE7CA,UAAO,QACPA,WAAQ,iBACRA,UAAO,GACPA,0BAAuB,EAIhBA,gBAAao0D,KAGpBp0D,sBAA6B,CAC3B,eACA,eACA,iBACA,YACA,WACA,kBACA,kBA5CJ,yCAoEE,SAAWqW,GAAK,WACdnV,WAAW,WAC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CEA,4BACIA,iBACEA,wBACAA,uBACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACAA,wBACAA,iBACEA,wBACAA,2BACFA,QACAA,wBACAA,iBACEA,wBACAA,mCACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACEA,wBAEAA,iBACEA,wBAEAA,0CACFA,QAEJA,QACJA,UAGFA,QACAA,0CAkGEA,QACNA,QACFA,QACFA,QACFA,QACAA,gCACEA,sBAAkFA,gCAASoI,kBACzFpI,wBACFA,QACJA,mBACIA,+BAYJA,wBAEIA,mBACEA,mBACEA,mBACFA,QACAA,mBACIA,mBACFA,QACAA,mBACIA,mBACFA,QACAA,mBACIA,mBACFA,QACLA,QAELA,mBACEA,kBAAmBA,wDAA2CA,QAC9DA,mBACEA,mbACFA,QAEFA,QACAA,mBACIA,yCACAA,4CAAmBoI,8BAAnBpI,CAAkD,2BAAqCoI,wBAAvFpI,CAAkD,2BACxCoI,mBACZpI,QACFA,QACFA,mBACIA,mBACIA,iBAAuEA,8BAAiBA,QAC1FA,QACAA,0BAIAA,mBACIA,iBAAuEA,6BAAgBA,QACzFA,QACAA,oBACIA,kBAAsEA,6BAAeA,QACvFA,QACFA,QACFA,4BAENA,oBACEA,oBACIA,+BACJA,QACAA,QACAA,oBACEA,2BAUJA,QACAA,oBAEAA,QAEAA,yBACAA,mBAA+CA,+BAAiBA,QAClEA,QACEA,oBACEA,gCAWIA,gCAQAA,gCAQFA,gCAQFA,QACAA,oBACAA,gCAWIA,gCAUAA,yBACUA,mBAA6BA,kBAAmKA,oCAAsBA,QAAIA,QAC1NA,oBACIA,oBACHA,QACDA,oBAAoCA,2GACpCA,QACVA,QACFA,QACAA,oBACIA,yBAEEA,mBAA6BA,kBAA+GA,2DAAWoI,kBAAoBpI,8BAAgBA,QAAIA,QAC/LA,oBACIA,oBACHA,QACGA,oBAAiCA,8KAC/BA,QACFA,QACAA,yBACIA,mBAA6BA,kBAAmMA,gCAAkBA,QAAIA,QACtPA,oBACIA,oBACHA,QACDA,oBAAoCA,2QAClCA,QACFA,QACAA,QAIpBA,8CAUAA,8CAUAA,8CAUAA,8CAoOEA,QACAA,QACAA,QAtrBJA,cACyBA,4CACPA,8CAYIA,8BAgCkBA,2CAqDtBA,8BAsDqBA,2CA2GLA,kEACmBA,6DAYpBA,6BAIQA,uDAGEA,2DAGEA,0DAGEA,oDAYiEA,4CASvEA,2EAe/BA,+EAIsBA,wCAmB0BA,oCAWIA,mCAQCA,mCAQFA,oCAUHA,wCAWIA,yCAalBA,oDAWNA,qDAQQA,04hBCvZjC+0F,EAAb,kCCAc/0F,wBACEA,uBAEAA,gBACEA,uBACAA,8BACFA,QACAA,uBACAA,gBACEA,uBACAA,6BACFA,QACAA,uBACAA,iBACEA,wBACAA,8BACFA,QACFA,gCAEEA,gBACAA,uBAEAA,gBACEA,sBACAA,iCACFA,QACFA,gCACAA,gBACEA,uBACAA,gBACEA,sBACAA,6BACFA,QACFA,gCACAA,gBACEA,uBACAA,gBACEA,sBACAA,oCACFA,QACFA,mCAEEA,eACEA,uBACAA,gBACEA,sBACAA,mCACFA,QACFA,6BAJmBA,uFAHrBA,gBACEA,wBAOAA,6BAPMA,kGAxBRA,wBACEA,yBAQFA,yBAOAA,yBAOAA,yBASEA,uBACAA,gBACEA,uBACAA,8BACFA,QACAA,uBACAA,iBACEA,wBACAA,8BACFA,QACAA,wBACAA,iBACEA,wBACAA,8BACAA,wBACFA,QACFA,4BA/CSA,2EAQFA,uEAOAA,6EAOAA,oGA+BDA,gBAAgCA,gCAAmBA,gCAqDnDA,gBACIA,uBACAA,gBACEA,uBACAA,qBACFA,QACFA,gCACAA,gBACEA,uBACAA,gBACEA,uBACAA,yBACHA,QACDA,gCACAA,gBACEA,uBACAA,gBACEA,uBACAA,wBACFA,QACFA,mCArBJA,gBACEA,yBAOEA,yBAOAA,yBAuBAA,4BArCKA,uEAOEA,2EAOAA,gGAuGGA,iIAZJA,gBACIA,gBAEQA,kBACQA,kBACIA,SACFA,QACAA,kBACEA,2BACFA,QACNA,QACZA,QACAA,gCACJA,mDAZqBA,yCAAsC,0CAInCA,kCAGAA,mEAINA,uDAItBA,+BAAaA,2CAkBTA,8DAZRA,gBACQA,gBAC8CA,kEAAW86C,oBACjD96C,kBACQA,kBACIA,SACFA,QACAA,kBACEA,2BACFA,QACNA,QACZA,QACAA,gCACRA,2CAZyBA,yCAAsC,0CAInCA,kCAGAA,mEAINA,2BC7QnC,IAAMk2F,GAAb,eAAaA,EAAb,WAsBE,WACUp/E,EACAxO,EACAuO,EACAqR,EACAnR,KAAc,eAJdhW,iBACAA,qBACAA,mBACAA,wBACAA,eAvBVA,sBAAkB,EAElBA,6BAAyB,EAazBA,uCAAmC,EAUjCA,KAAKiN,aAAejN,KAAKuH,cAAcc,WAAW4E,aAClDjN,KAAKyqF,eAAiBzqF,KAAKuH,cAAc+E,YAAYm+E,eA9BzD,uCAiCE,WAAQ,WACNzqF,KAAKsM,YAActM,KAAKuH,cAAc+E,YACtCtM,KAAK21D,YAAL,UAAsB31D,KAAKuH,cAAc+E,YAAYG,UAAY,GAAjE,0CACAzM,KAAKk0F,UAAL,UAAoBl0F,KAAKuH,cAAc+E,YAAYG,UAAY,GAA/D,wCACAzM,KAAKm0F,SAAL,UAAmBn0F,KAAKuH,cAAc+E,YAAYG,UAAY,GAA9D,gDACAzM,KAAKk3D,iBAAmBl3D,KAAKuH,cAAcc,WAAW6uD,kBAAoB,KAC1El3D,KAAK2qF,MAAQ3qF,KAAKuH,cAAc+E,YAAYq+E,MAE5C3qF,KAAK8V,YAAYgqB,iBAAiB,YAAa,iBAAkB,SAASn+B,UAAU,YAClF4pF,EAAKkJ,gBAAkB7yF,IAEzB5B,KAAK+V,UAAU0iB,aAAf,QACAz4B,KAAK2xF,WAAa3xF,KAAKuH,cAAcc,WAAWyE,aAChD9M,KAAKo1F,aAAep1F,KAAKuH,cAAcc,WAAWgtF,sBAClDr1F,KAAKs1F,aAAet1F,KAAKuH,cAAcc,WAAWktF,uBAElDv1F,KAAKo1F,aAAar0F,QAAS,YAEzB,QADIkB,EAAM,GACD0B,GAAI,EAAGA,GAAIg/B,EAAKhvB,OAAO5R,OAAQ4B,KAE5B,IAANA,GACA1B,EAAM,SAAW0gC,EAAKhvB,OAAOhQ,IAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,IAAGwZ,WAEnElb,GAAO,UAAY0gC,EAAKhvB,OAAOhQ,IAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,IAAGwZ,WAGvEouE,EAAKpkE,iBAAiBquE,iBAAiBvzF,GAAK4F,MAAKC,OAAK,IAAInG,UAAW,aACnEghC,EAAK8G,MAAQ7nC,GAAS6nC,UAG1BzpC,KAAKs1F,aAAav0F,QAAS,YAEzB,QADIkB,EAAM,GACD0B,GAAI,EAAGA,GAAIg/B,EAAKhvB,OAAO5R,OAAQ4B,KAE5B,IAANA,GACA1B,EAAM,SAAW0gC,EAAKhvB,OAAOhQ,IAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,IAAGwZ,WAEnElb,GAAO,UAAY0gC,EAAKhvB,OAAOhQ,IAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,IAAGwZ,WAGvEouE,EAAKpkE,iBAAiBquE,iBAAiBvzF,GAAK4F,MAAKC,OAAK,IAAInG,UAAW,aACnEghC,EAAK8G,MAASpd,OAAOzqB,GAAS6nC,WAGlCzpC,KAAK80F,uBAA4E,SAAnD35B,aAAa3D,QAAQ,0BACnDx3D,KAAKy1F,kBA9ET,2BAiFE,SAAc9yD,GACZ,QAASh/B,EAAI,EAAGA,EAAIg/B,EAAKhvB,OAAO5R,OAAQ4B,KAWxC3D,KAAKgW,OAAOwlB,SAAS,CAAC,qBAHqB,CACzC/jB,YAAa,CAAE9D,OAAUgvB,EAAKtlB,UAAY,IAAMslB,EAAKxlB,WAAa,aA3FxE,2BAgGE,WACEnd,KAAKo1F,aAAar0F,QAAQ,YAExB,QADIkB,EAAM,GACD0B,EAAI,EAAGA,EAAIg/B,EAAKhvB,OAAO5R,OAAQ4B,IAGlC1B,GADM,IAAN0B,EACYg/B,EAAKhvB,OAAOhQ,GAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,GAAGwZ,WAAa,QAEpE,IAAMwlB,EAAKhvB,OAAOhQ,GAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,GAAGwZ,WAAa,QAI9EwlB,EAAKlrB,YAAcxV,IAGrBjC,KAAKs1F,aAAav0F,QAAQ,YAExB,QADIkB,EAAM,GACD0B,EAAI,EAAGA,EAAIg/B,EAAKhvB,OAAO5R,OAAQ4B,IAGlC1B,GADM,IAAN0B,EACYg/B,EAAKhvB,OAAOhQ,GAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,GAAGwZ,WAAa,QAEpE,IAAMwlB,EAAKhvB,OAAOhQ,GAAG0Z,UAAY,IAAMslB,EAAKhvB,OAAOhQ,GAAGwZ,WAAa,QAI9EwlB,EAAKlrB,YAAcxV,QA1HzB4oF,kDAAasK,GAAmBl2F,sFAAnBk2F,EAAmB/tF,4/FDbhCnI,iBAEQA,sBACEA,0BACEA,oBACFA,QAEAA,8BACEA,wBACEA,gBACEA,iBACAA,wBAAWA,QACbA,eACEA,uBACIA,0BAA8SA,mBAA0tBA,QAC5gCA,QACAA,gCACFA,QACAA,2BAkBAA,2BAiDFA,QACFA,QACFA,QACAA,gCACEA,2BACEA,sBAAQA,0BACVA,QACAA,6BACEA,mBACEA,mBACEA,4BACEA,iBACEA,kBACAA,kCAAoBA,QACtBA,iBACEA,wBACAA,uBACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACAA,wBACAA,iBACEA,wBACAA,2BACFA,QACAA,wBACAA,iBACEA,wBACAA,mCACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACAA,wBACAA,iBACEA,wBACAA,sBACFA,QACAA,iBACEA,wBAEAA,iBACEA,wBAEAA,0CACFA,QACFA,QACAA,0BAwCFA,QACFA,QAkDFA,QACFA,QACFA,QAEAA,wBACQA,2BACOA,sCACDA,QACNA,6BACQA,mBACQA,mBACRA,kBACQA,kBACAA,sCAAwBA,QAChCA,4BACIA,4BAcJA,QACAA,QACAA,kCACVA,mBACEA,4BAEIA,mBAEAA,4BAeAA,QACJA,QACAA,QACAA,QACRA,QAEFA,eAzRgCA,wCAQjBA,2CAkBAA,0CAsDMA,0CAOeA,uCA6CjBA,2CAuG6BA,wCAGAA,yCAgB2BA,sCAMnCA,o7JCjQjCk2F,EAAb,+GCRaO,GAAb,eAAaA,KAAb/gF,KAEE,WAAmBghF,IAAkC,eAAlC31F,uEAFR01F,GAAmCz2F,uCAAnCy2F,EAAmCtuF,sDAAnCsuF,EAAb,2BCAaE,GAAb,eAAaA,EAAb,WAHA,6BAKW51F,aAAiC,IAAIC,MACrCD,YAAgC,IAAIC,MAH/C,yCAKW,SAAWC,GACdkC,QAAQC,IAAI,sBAAuBnC,GACnCF,KAAK61F,QAAQ5uF,KAAK/G,KAP1B,uBAUW,SAAUA,GACbkC,QAAQC,IAAI,qBAAsBnC,GAClCF,KAAK81F,OAAO7uF,KAAK/G,OAZzB2qF,kDAAa+K,gCAAuBlqF,QAAvBkqF,EAAuB,qBAFpB,SAEHA,EAAb,8DCAaG,GAAb,eAAaA,KAAbphF,KACE,WAAmBghF,IAAkC,eAAlC31F,uEADR+1F,GAA2B92F,uCAA3B82F,EAA2B3uF,8CAA3B2uF,EAAb,wCCDQ92F,yCAA4BA,4BCM7B,IAAM+2F,GAAb,eAAaA,EAAb,WAEE,WACSn2F,EACCD,EACwBG,IAAS,eAFlCC,iBACCA,wBACwBA,YALpC,uCAUE,WAAQ,WAENA,KAAKJ,iBAAiBirB,WAAW7qB,KAAKD,KAAKsyB,MAAM1wB,UAAW,YAC1D4pF,EAAKnoF,QAAUxB,QAbrBipF,kDAAamL,GAA0B/2F,gCAK3BkI,iCALC6uF,EAA0B5uF,sVDVvCnI,iBAAsBA,cAAIA,wBAAYA,QAAKA,QAE3CA,iBAEQA,6BAGRA,QACAA,iBACQA,kBACAA,oBAAoCA,kBAAMA,QAC9CA,eAPeA,gHCMN+2F,EAAb,gECLE/2F,iBAEAA,4CAF8CA,2BCGzC,IAAMg3F,GAAb,eAAaA,EAAb,WAIE,6BAJF,uCAME,WACMj2F,KAAKk2F,gBAAkBl2F,KAAKk2F,eAAeC,YAAcn2F,KAAKk2F,eAAeC,WAAWp0F,SAC1F/B,KAAKo2F,UAAYp2F,KAAKk2F,eAAeC,WAAW,GAChDn2F,KAAK8wB,KAAO,GACR9wB,KAAKo2F,UAAUvwE,SACjB7lB,KAAK8wB,MAAQ,eAAiB9wB,KAAKo2F,UAAUvwE,OAAOwwE,QAAQ,GAAGloF,WAAa,OAE1EnO,KAAKo2F,UAAUE,OACjBt2F,KAAK8wB,MAAQ,eAAiB9wB,KAAKo2F,UAAUE,KAAKD,QAAQ,GAAGloF,WAAa,OAExEnO,KAAKo2F,UAAUt6E,MACjB9b,KAAK8wB,MAAQ,eAAiB9wB,KAAKo2F,UAAUt6E,IAAOu6E,QAAQ,GAAGloF,WAAa,OAE1EnO,KAAKo2F,UAAUG,QACjBv2F,KAAK8wB,MAAQ,eAAiB9wB,KAAKo2F,UAAUG,MAAMpoF,WAAa,OAE9DnO,KAAKo2F,UAAUG,QACjBv2F,KAAK8wB,MAAQ9wB,KAAKo2F,UAAUA,gBAvBpCvL,kDAAaoL,8BAA0B7uF,6SDRvCnI,iBACEA,iBACEA,kBAAwBA,SAAuCA,QAC/DA,kBAA6BA,SAAqBA,QACpDA,QACAA,wBAIFA,eAP4BA,4DACKA,oCAECA,udCGrBg3F,EAAb,iDCMch3F,iDAOFA,mBAAwDA,SAAqBA,sCAArBA,mNAlBhEA,2BACEA,gBAAqGA,mFACnGA,oBACAA,iBACEA,iBACEA,gBAEEA,SACFA,QACAA,gBACuIA,mBAAaA,2BAAeA,QACjKA,+BACFA,QACFA,QACAA,mBAEAA,mBACEA,oBAAyBA,UAA4DA,QACrFA,2BAEFA,QACFA,QACFA,QACFA,6CAtB4BA,wEAC+BA,oCAISA,uEADEA,4CAA6C,+CAEzGA,yCAG6DA,kFADnCA,qDAEfA,iCAMYA,gEACJA,kEAuBjBA,iDAKDA,mBAAwDA,SAAqBA,sCAArBA,8EAtBnEA,gCACEA,iBACEA,iBACKA,mFAA2B,6EAG9BA,qBAEEA,uBACFA,QACAA,kBACEA,iBACEA,gBAEEA,SACFA,QACAA,gBACEA,+BACFA,QACFA,QACAA,mBACEA,oBAAyBA,UAAsCA,QAC9DA,2BACFA,QACDA,QACFA,QACFA,eACEA,aACFA,QACFA,QACFA,6CA5B+BA,wEAKjBA,8CACIA,qFAIuDA,qDAA6C,+CAE1GA,yCAE2FA,kFAAjEA,qDACfA,iCAIYA,8CACHA,2CAIxBA,mGAnDVA,sBACEA,oCAwBAA,2CA+BFA,4BAxDkEA,iCAAyB,6BAyBxCA,iDCf9C,IAAMu3F,GAAb,eAAaA,EAAb,WAWE,WACUrvE,EACArR,IAAwB,eADxB9V,wBACAA,mBARVA,iBAAc,IAAIy2F,MAAuB,YAAI,OAAIv1E,EAAKjV,WACtDjM,gBAAa,IAAI02F,MAIjB12F,cAAW,SAAC0F,EAAWwb,GAAZ,QAA4BA,EAAKjV,UAAYiV,EAAKjV,SAASlK,OAAS,GAVjF,uCAgBE,WAAQ,WACN/B,KAAK22F,SAAW,CACdtrF,GAAM,EACNuJ,KAAQ,OACRgiF,OAAU,IACVC,YAAc,EACd32F,MAAS,CACPmlD,QAAWrlD,KAAKqyB,KAChB5oB,KAAQzJ,KAAKyJ,KACbmpB,WAAc5yB,KAAK4yB,YAAc,IAEnC+Y,aAAgB,IAEhB3rC,KAAKmnB,iBAAiB2vE,aAAa92F,KAAKqyB,MAAM1wB,UAAU,YACtD4pF,EAAKwL,cAAcv4E,IAClB,YACF+sE,EAAKwL,cAAc,CAACxL,EAAKoL,aAE1B32F,KAAKshC,QAAUthC,KAAK8V,YAAYhL,YAAY,QAAS,UAAW,kBAlCtE,2BAqCE,SAAcksF,GAEQ,IAAhBA,EAAKj1F,QACPi1F,EAAKv1F,KAAKzB,KAAK22F,UAGjB,QAAShzF,EAAI,EAAGA,EAAIqzF,EAAKj1F,OAAQ4B,IAAK,CACpC,IAAMszF,EAAWD,EAAKrzF,GACJ,IAAdszF,EAAIC,QACND,EAAIL,OAAS,KAGbI,EAAKj1F,OAAS,IAChBi1F,EAAOh3F,KAAKm3F,gBAAgBH,IAE9B,IAAMI,GAAQp3F,KAAKq3F,aAAaL,GAChCh3F,KAAK+7D,WAAWh8D,KAAOq3F,GACvBp3F,KAAKs3F,WAAat3F,KAAK+7D,WAAWh8D,KAAK,KAtD3C,6BAyDI,SAAgBA,GAKhB,QAJIw3F,EAAS,GACTC,EAAW,GACTC,GAAc,GAEX9zF,GAAK5D,EAAKgC,OAAS,EAAI4B,IAAK,EAAGA,KAAK,CACrB,IAAlB5D,EAAK4D,IAAGuzF,QACVn3F,EAAK4D,IAAGizF,OAAS,KAEnB,IAAMc,GAAS33F,EAAK4D,IAAGzD,MASvB,GARAH,EAAK4D,IAAGgoC,aAAe,GACnB+rD,GAAOryC,UAAYrlD,KAAKqyB,OAC1BtyB,EAAK4D,IAAGg0F,MAAO,IAGZD,GAAO9kE,YAAc8kE,GAAOE,WAAyC,KAA5BF,GAAOE,UAAU71F,SAC7DhC,EAAK4D,IAAGzD,MAAM0yB,WAAa7yB,EAAK4D,IAAGzD,MAAM03F,YAEtC73F,EAAK4D,IAAGzD,MAAM0yB,WAAY,CAC7B,IAAMilE,GAAU93F,EAAK4D,IAAGmtB,KAAK9T,MAAM,aAC/B66E,KACF93F,EAAK4D,IAAGzD,MAAM0yB,WAAailE,GAAQ,IAIlCH,GAAOryC,UAAYkyC,GAAYC,EAASzjE,SAAS,uBACpD0jE,GAAYh2F,KAAK,CAAC1B,EAAK4D,GAAI,GAAG0H,GAAItL,EAAK4D,IAAG0H,KAC1CtL,EAAKiQ,OAAOrM,GAAI,EAAG,GACnB5D,EAAK4D,IAAGgoC,cAAgB,oBAE1B4/C,EAAS5nF,IAAGiR,KAAKmf,SAAS,qBACxBh0B,EAAK4D,IAAGgoC,cAAgB,iBACnB4/C,EAAS5nF,IAAGiR,KAAKmf,SAAS,sBAC/Bh0B,EAAK4D,IAAGgoC,cAAgB,kBACf5rC,EAAK4D,IAAGiR,KAAKmf,SAAS,oBAC/Bh0B,EAAK4D,IAAGgoC,cAAgB,gBACnB4/C,EAAS5nF,IAAGiR,KAAKmf,SAAS,0BAC/Bh0B,EAAK4D,IAAGgoC,cAAgB,UACd5rC,EAAK4D,IAAGiR,KAAK7S,OAAS,IAAQhC,EAAK4D,IAAGgoC,aAAe,MAC/D5rC,EAAK4D,IAAGgoC,cAAgB,KAAO5rC,EAAK4D,IAAGiR,KAAO,MAIhD7U,EAAK4D,IAAG0hD,QAAUtlD,EAAK4D,IAAGzD,MAAMmlD,QAChCkyC,EAASx3F,EAAK4D,IAAG0hD,QACjBmyC,EAAWz3F,EAAK4D,IAAGiR,KAGrB7U,EAAKwN,KAAK,SAAS1I,GAAG2I,IACpB,IAAMsqF,GAAQjzF,GAAEwgD,QAAQj7C,cAClB2tF,GAAQvqF,GAAE63C,QAAQj7C,cACxB,OAAI0tF,KAAUC,GACJlzF,GAAE+xF,OAASppF,GAAEopF,QAAU,EAAM/xF,GAAE+xF,OAASppF,GAAEopF,OAAU,EAAI,EAExDkB,GAAQC,IAAS,EAAMD,GAAQC,GAAS,EAAI,IAKxD,QAASp0F,GAAK5D,EAAKgC,OAAS,EAAI4B,IAAK,EAAGA,KAClCA,KAAM5D,EAAKgC,OAAS,GACjBhC,EAAK4D,IAAGzD,MAAMmlD,UAAYtlD,EAAK4D,GAAI,GAAGzD,MAAMmlD,SAC1CtlD,EAAK4D,IAAGizF,SAAW72F,EAAK4D,GAAI,GAAGizF,SAC9B72F,EAAK4D,IAAGiR,KAAKmf,SAAS,sBAAwBh0B,EAAK4D,GAAI,GAAGiR,KAAKmf,SAAS,uBAC1E0jE,GAAYh2F,KAAK,CAAC1B,EAAK4D,IAAG0H,GAAItL,EAAK4D,GAAI,GAAG0H,KAC1CtL,EAAKiQ,OAAOrM,GAAG,IACN5D,EAAK4D,GAAI,GAAGiR,KAAKmf,SAAS,sBAAwBh0B,EAAK4D,IAAGiR,KAAKmf,SAAS,wBACjF0jE,GAAYh2F,KAAK,CAAC1B,EAAK4D,GAAI,GAAG0H,GAAItL,EAAK4D,IAAG0H,KAC1CtL,EAAKiQ,OAAOrM,GAAI,EAAG,KAM7B5D,EAAKwN,KAAK,SAAS1I,GAAG2I,IACpB,OAAO3I,GAAEwG,GAAKmC,GAAEnC,KAGlB,QAAS1H,GAAI5D,EAAKgC,OAAS,EAAG4B,IAAK,EAAGA,KACpC,QAASqK,GAAI,EAAGA,GAAIypF,GAAY11F,OAAQiM,KAClCjO,EAAK4D,IAAGizF,SAAWa,GAAYzpF,IAAG,KACpCjO,EAAK4D,IAAGizF,OAASa,GAAYzpF,IAAG,IAItC,OAAOjO,IA9IX,0BAiJE,SAAa0E,GACX,IACIyc,GAAMvd,GADJgC,EAAM,GAAIqyF,EAAQ,GAExB,IAAKr0F,GAAI,EAAGA,GAAIc,EAAK1C,OAAQ4B,IAAK,EAChCgC,EAAIlB,EAAKd,IAAG0H,IAAM1H,GAClBc,EAAKd,IAAGsI,SAAW,GAEjBxH,EAAKd,IAAGqI,MADA,IAANrI,GACc,UAEPA,GAAI,GAAM,EACH,OAEA,MAGpB,IAAKA,GAAI,EAAGA,GAAIc,EAAK1C,OAAQ4B,IAAK,EAEZ,OADpBud,GAAOzc,EAAKd,KACHizF,OACPnyF,EAAKkB,EAAIub,GAAK01E,SAAS3qF,SAASxK,KAAKyf,IAErC82E,EAAMv2F,KAAKyf,IAGf,OAAO82E,MAxKXnN,kDAAa2L,GAA2Bv3F,kDAA3Bu3F,EAA2BpvF,2uCDZxCnI,eACEA,iBAAgCA,+BAAmBA,QACnDA,6BAyDFA,eAzDaA,4uECUAu3F,EAAb,eCRayB,GAAb,eAAaA,EAAb,gFACE,SAAUxlE,GACRA,SAAQA,EAAMtoB,QAAQoD,KAAK,SAAC1I,EAAG2I,GAC7B,IAAI0qF,IAAW,EACf,OAAIrzF,EAAEguB,YACJqlE,IAAW,IACiB,IAAlB1qF,EAAEqlB,cAEa,IAAhBrlB,EAAE2qF,YAAwC,IAAlBtzF,EAAEguB,cAEzBrlB,EAAEqlB,cAAgBhuB,EAAEguB,aAAehuB,EAAE4E,KAAO+D,EAAE/D,QACxDyuF,GAAW,GAENA,MAEK/tF,MAAM,EAAG,OAf3B0gF,kDAAaoN,wDAAgBxkF,UAAhBwkF,EAAb,GCCaG,GAAb,eAAaA,EAAb,gFAEE,SAAUlrE,EAAmB0yC,GAC3B,OAAI1yC,GAASA,EAAMnrB,QAAUmrB,EAAMnrB,OAAS69D,EACnC1yC,EAAM/iB,MAAM,EAAGy1D,GAEf1yC,MANb29D,kDAAauN,2CAAQ3kF,UAAR2kF,EAAb,eCCaC,GAAb,eAAaA,EAAb,WACI,WAAmB9wF,IAA4B,eAA5BvH,qBADvB,wCAIE,SAAUyJ,EAAcsoD,GAEvB,MAAY,aAATtoD,EACIzJ,KAAKuH,cAAcc,YAAcrI,KAAKuH,cAAcc,WAAWiL,iBACvD,cAAgBtT,KAAKuH,cAAcc,WAAWiL,iBAAmB,IAEjE,mBAGJ7J,MAbdohF,kDAAawN,GAAmBp5F,+DAAnBo5F,EAAmB5kF,UAAnB4kF,EAAb,yBCDIp5F,iDAYMA,kBACEA,4BACEA,uBAAmCA,SAAuCA,QAC5EA,QACFA,6BAFuCA,iFAHzCA,eACEA,yBAKFA,4BALwCA,wFAMxCA,eACEA,kBACEA,4BACEA,uBAAmCA,sDACnCA,QACFA,QACFA,QACFA,4BAJyCA,wHAMvCA,eACEA,gBAAqEA,uDAASk7D,gCAC5El7D,kBAEFA,QACFA,8BAH2BA,4CAA2B,2GAItDA,eACEA,kBAEFA,4BAFyBA,4CAA2B,2GAItDA,eACEA,mBAA8BA,uBAAWA,QAAQA,mBAC5BA,SAAiDA,QACxEA,4BADuBA,2FAEvBA,kBACEA,SACFA,4BADEA,0FAOAA,qBAEEA,uBACFA,sCAFkBA,0IAUlBA,gBAGEA,uBACFA,4BAFEA,gCAAmC,kIAQrCA,gBAEEA,uBACFA,4BAFkCA,4EAWlCA,qBAEEA,uBACFA,sCAFEA,wDAIFA,qBAEEA,uBACFA,sCAFEA,mKAMFA,gBAEEA,SACFA,0CAH+DA,gCAAmC,8EAEhGA,gJASFA,gBAAiBA,iDAASi/E,iBACxBj/E,gBAAMA,wBAAYA,QACpBA,gDACAA,gBACEA,uDAASo7D,kDAA8CA,kCAAkCA,6BAA2B,UACpHp7D,gBAAMA,4BAAgBA,QACxBA,gDACAA,gBACEA,uDAASsrE,kDAA8CA,kCAAkCA,6BAA2B,UACpHtrE,gBAAMA,4BAAgBA,QACxBA,gDACAA,gBACEA,uDAASq5F,oDAAgDA,kCAAkCA,6BAA2B,UACtHr5F,gBAAMA,0BAAcA,QACtBA,kFAIAA,gBAEEA,gBAAMA,4BAAgBA,QACxBA,4BAH6CA,gCAAoC,+EAIjFA,gBAEEA,gBAAMA,4BAAgBA,QACxBA,4BAH2CA,gCAAoC,8FAO/EA,gBAEEA,gBAAMA,8BAAkBA,QAC1BA,4BAH6CA,gCAAmC,4EAyB5EA,mBACEA,uBACFA,mCAJFA,kBACEA,mBACAA,0BAGFA,gCAJQA,iEACCA,gEASLA,mBACAA,uBACFA,gCACAA,mBACEA,uBACFA,mCAPFA,kBACEA,mBACEA,0BAGFA,0BAGFA,gCAPQA,iEACGA,wCAGFA,8EAjBbA,kBACEA,kBAAmBA,kBAAMA,QACzBA,kBACEA,sDAMAA,kBAA+CA,iDAASu7D,sBAAuCv7D,SAA6BA,QAC9HA,QACAA,kBACEA,yBASAA,mBAAKA,iDAAS2kF,sBAAuC3kF,iBAAIA,QAC3DA,QACFA,8BArBOA,0CACoDA,6CAMlDA,2DAA0FA,gDAE5FA,yCACoDA,6DA4B3CA,mBACqBA,SAAqBA,uCAArBA,0DANzBA,gBACEA,gBAEEA,mBAAaA,gCAAoBA,QAAOA,SAExCA,0BAGFA,QACFA,sEAPwDA,0EADlBA,0BAEMA,qCAEjCA,gGAMTA,mBACuBA,SAAqBA,uCAArBA,0DAFzBA,gBAA8BA,SAC5BA,0BAEFA,sEAH8BA,qCACrBA,6FAITA,gBAAsBA,cAAEA,mCAhB1BA,gBACEA,yBAUAA,yBAKAA,yBACFA,mDAhBSA,6BAUAA,8BAKAA,qDAlBXA,mBAEEA,yBAkBFA,2DAlBSA,oGAmBTA,gBACEA,gBACEA,8EAAoGs5F,gBAApGC,iBAAgG,IAA/BD,iBAAyGt5F,SAAsDA,QACpOA,mDAD8KA,gFA5BlLA,kBACEA,kBACEA,mBAAoBA,uDAEpBA,QAAOA,kBACPA,0BAqBAA,yBAIFA,QACFA,2CA7BwBA,+CAIKA,2CAoBlBA,4EAqBDA,mBACuBA,SAAqBA,uCAArBA,0DAN3BA,gBACEA,gBAEEA,mBAAaA,gCAAoBA,QAAOA,SAExCA,0BAGFA,QACFA,sEARsCA,mCAEMA,qCAEjCA,gGAMPA,mBACuBA,SAAqBA,uCAArBA,0DAF3BA,gBAA8BA,SAC1BA,0BAEJA,sEAH8BA,qCACnBA,6FAIXA,gBAAsBA,cAAEA,mCAhBxBA,gBACAA,yBAUAA,yBAKAA,yBACAA,mDAhBOA,6BAUAA,8BAKAA,qDAjBTA,mBACEA,yBAkBFA,2DAlBSA,oGAmBTA,gBACEA,gBAAsBA,8EAAsGw5F,gBAAtGD,iBAAkG,IAA/BC,iBAAyGx5F,SAAsDA,QAC1PA,mDADoMA,gFA1BxMA,kBACEA,kBACEA,mBAAoBA,uDAElBA,QAAOA,kBACTA,0BAoBAA,yBAGFA,QACFA,2CA3BwBA,+CAGuBA,2CAoBpCA,yFA/DfA,kBACEA,kBAAmBA,kBAAMA,QACzBA,kBACEA,yCAgCAA,kBAAyDA,iDAASy5F,sBAAuCz5F,SAAuCA,QAClJA,QACAA,kBACEA,yBA8BAA,mBAAKA,iDAAS05F,sBAAuC15F,iBAAIA,QAC3DA,QACFA,8BApEOA,0CACmDA,yDAgCjDA,qEAAoGA,0DAEtGA,yCACmDA,uEAiC1DA,kBAEEA,kBAAmBA,0BAAcA,QACjCA,kBACEA,SACFA,QACFA,4BAFIA,oFAGJA,kBAEEA,kBAAmBA,uBAAWA,QAC9BA,eACEA,mBAAoBA,SAAuCA,QAC7DA,QACFA,4BAFwBA,iFAGxBA,kBACEA,kBAAmBA,yBAAaA,QAChCA,eACEA,mBAAoBA,SAAoDA,QAC1EA,QACFA,4BAFwBA,8FAGxBA,kBACEA,kBAAmBA,qBAASA,QAC5BA,eACEA,mBAAoBA,SAAyCA,QAC/DA,QACFA,4BAFwBA,mFAGxBA,kBACEA,kBAAmBA,wBAAYA,QAC/BA,eACEA,mBAAoBA,2BAA+CA,QACrEA,QACFA,4BAFwBA,2FAGxBA,kBACEA,kBAAmBA,oBAAQA,QAC3BA,eACEA,mBACFA,QACFA,4BAFwBA,wFAShBA,gBAAsBA,cAAEA,mCAF1BA,gBACEA,SACAA,yBACFA,yCAFEA,0BACOA,qDANfA,kBACEA,kBAAmBA,iBAAKA,QACxBA,eACEA,mBACEA,0BAIFA,QACFA,QACFA,4BAN6BA,0FAU7BA,kBACEA,gBAEEA,2BAAcA,uBAChBA,QACFA,4BAHEA,gEADoBA,4DA8BpBA,kBACEA,kBAAmBA,0BAAcA,QACjCA,eACEA,mBACEA,SACFA,QACFA,QACFA,6BAHMA,0EAINA,kBACEA,kBAAmBA,4BAAgBA,QACnCA,eACEA,mBACEA,yBACFA,QACFA,QACFA,6BAHMA,2FArCRA,eACEA,kBACEA,kBAAmBA,qBAASA,QAC5BA,eACEA,mBACEA,yBACFA,QACFA,QACFA,QACAA,kBACEA,kBAAmBA,yBAAYA,QAC/BA,gBACEA,oBACEA,UACFA,QACFA,QACFA,QACAA,mBACEA,mBAAmBA,qBAAQA,QAC3BA,gBACEA,oBACEA,oCACFA,QACFA,QACFA,QACAA,0BAQAA,0BAQAA,mBACEA,mBAAmBA,4BAAeA,QAClCA,gBACEA,oBACEA,2BACFA,QACFA,QACFA,QACAA,mBACEA,mBAAmBA,+BAAkBA,QACrCA,gBACEA,oBACEA,UACFA,QACFA,QACFA,QACAA,mBACEA,mBAAmBA,sBAASA,QAC5BA,gBACEA,oBACEA,UACFA,QACFA,QACFA,QACFA,4BA5DQA,mEAQAA,8CAQAA,wDAIuBA,uDAQAA,4CAYvBA,wEAQAA,iDAQAA,mEAQVA,0CAA6DA,8DAD/DA,eACEA,4CAEFA,4BAFgDA,2OC/VvC25F,GAAb,eAAaA,EAAb,WAuBE,WACShjF,EACAG,EACAD,EACCqR,EACAvnB,GACA+S,GACAqD,GACAlW,GACA+gC,GACAt5B,GACqCsxF,KAAoD,eAV1F74F,oBACAA,iBACAA,mBACCA,wBACAA,yBACAA,iCACAA,eACAA,gCACAA,eACAA,sBACqCA,4BAhCrCA,eAAY,IAAIC,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,KAAb9pG,iFAAa8pG,4DAVF,CACPvrG,MACAyM,KACAF,KACAisC,SAMS+yD,EAAb,GC4FaC,GAAb,eAAaA,EAAb,mFACE,WACE,MAAO,CACLpuG,SAAUouG,EACVnuG,UAAW,QAJjBs6E,kDAAa6zB,4DA1DF,CACPxrG,MACAmV,KACA7I,KACAH,MACAgS,MACA9R,MACAI,KACAF,KACA4vB,MACAjc,MACAkc,KACAne,MACA7R,KACAiwB,MACAC,MACA1mB,KACAsI,MACAqe,MACArwB,MACAswB,KACAC,MACA18B,KACA28B,KACAC,MACAre,KACAse,MACAC,KACAznB,KACAC,KACA7I,MACAyF,MACAs5F,OA0BSC,EAAb,0ECiGaC,GAAb,eAAaA,KAAbhqG,iFAAagqG,8BAASC,WATR1F,mCAfD,CACT,CACEzoG,QAASouG,MACTC,SAAUN,IAEZD,GACAryG,IACA,CACIuE,QAASq4E,MACTC,WAAYg2B,GACZ91B,KAAM,CAAC/8E,KACP0E,OAAO,GAEX,CAAEH,QAASuuG,KAAmBF,SAAUd,GAAiBptG,OAAO,IACjEi3D,SA5EQ,CACPo3C,0BAAmC,CAAEt0B,MAAO,SAC5CsuB,GACA8E,MACAj2C,MACAC,MACAC,MACAk3C,KACA1vE,MACAnnB,KACA7I,KACAH,MACAC,KACAK,KACAF,KACAy/F,KACAC,KACA5vE,MACAG,KACAtwB,MACAG,MACA2F,KACAu0F,GACAhqE,MACA+b,MACAr6B,MACA82C,MACA72C,MACAF,KACAM,KACAqe,MACA3/B,aAAqCwpG,IACrC5wF,KACAs2F,eACA/tF,MACAye,MACAT,MACAjc,MACAuuB,KACAlrB,aAA6BhB,OAC7BqoF,GACA3uE,eACAk5B,MACAjgD,KACA8/C,KACAxoD,MACA6I,KACAkJ,KACA4sF,MACAl/F,KACAm/F,GACAl2C,MACAg2C,GACAj/F,KACAS,KACA8+F,GACAnzD,+BACAE,KACAtmC,MACAwmC,KACAK,SA0BS2yD,EAAb,SAzGIhf,GAAwB,4EChGxBrzF,oBACF+yG,SAGFC,OAAyBC,gBAAgBZ,IACtCjxG,MAAM,YAAG,OA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A,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,gBACA,mBACA,gBACA,mBACA,eACA,kBACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,cACA,iBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,mBACA,gBACA,WACA,cACA,aACA,gBACA,aACA,gBACA,YACA,eACA,mBACA,sBACA,kBACA,qBACA,aACA,gBACA,aACA,gBACA,WACA,cACA,aACA,gBACA,aACA,gBACA,gBACA,mBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,iBACA,oBACA,gBACA,mBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,kBACA,qBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,cACA,iBACA,aACA,gBACA,aACA,gBACA,gBACA,mBACA,cACA,iBACA,aACA,gBACA,cACA,iBACA,cACA,kBACA,qBACA,iBACA,gBACA,mBACA,aACA,gBACA,aACA,gBACA,aACA,kBACA,qBACA,gBACA,aACA,gBACA,mBACA,sBACA,aACA,gBACA,gBACA,mBACA,g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","names":["i0","ctx_r16","ctx_r18","ctx_r21","ctx_r24","ctx_r29","ctx_r31","ctx_r32","FragmentWizardComponent","CVService","loadingService","structureService","dialogRef","overlayContainerService","data","this","EventEmitter","value","display","vocabulary","vocab","domain","privateTerm","term","asDialog","adminPanel","val","close","extant","terms","forEach","Y","message","setTimeout","privateCopy","JSON","parse","stringify","simpleSrc","fragmentSrc","push","validateVocab","subscribe","response","valid","addVocabTerm","length","pop","str","error","validationMessages","console","log","simplifiedStructure","getStructureUrl","fragmentStructure","overlayContainer","getContainerElement","mol","editor","setMolecule","setLoading","pos","substring","indexOf","interpretStructure","structure","molfile","test","replace","se","style","zIndex","ll","i","cur","ret","i2","elm","rr","n","t","c","fact","getCombination","smi","temp","alias","list","smiles","stars","add","a","asAlias","join","eachForm","labs","tot","forEachCombination","asFullSmiles","getMarkers","current","selected","domains","rgs","_","map","filter","split","flatMap","uniq","tt","getPossibleSmiles","getSmiles","dom","alert","smilesforms","forms","form","url","X","fragmentType","getFragmentCV","dat","content","getStructureUrlFragment","checkImg","termUpdated","emit","r","MAT_DIALOG_DATA","selectors","ctx","AuthService","configService","http","platformId","Subject","isLoading","fetchAuth","pipe","take","N","_auth","auth","computedToken","_authUpdate","next","configData","apiBaseUrl","get","username","password","options","headers","isPlatformBrowser","sessionStorage","setItem","Observable","Z","observer","logout","removeItem","E","cookies","document","cookie","eqPos","name","substr","H","identifier","roles","rolesList","q","role","charAt","toLowerCase","slice","toUpperCase","group","groupList","groups","ce","ie","hasRoles","apply","complete","getAuth","hasAnyRoles","fullUrl","privateExport","filename","params","HttpParams","append","id","delete","observe","Q","PLATFORM_ID","factory","BaseHttpService","P","baseUrl","navItems","path","order","children","ConfigService","_configData","set","_environment","environment","configFilePath","configFileLocation","baseHref","toPromise","then","config","parts","apiUrlDomain","googleAnalyticsId","version","contactEmail","navItemsCopy","filteredNavItems","navItem","isNotExisting","concat","sort","b","I","catch","err","Promise","resolve","f","ControlledVocabularyService","k","pageSize","skip","toString","domainArgs","vocabularyDictionary","missingDomains","tasks$","vocabularyLoadingIndicators","vocabularySubject","fetchVocabulariesFromServer","subscription","forkJoin","responses","Object","assign","unsubscribe","query","getDomainVocabulary","filteredTerms","sortedTerms","termA","termB","domainLuceneQuery","post","put","unProcessedDomains","responseDomainVocabulary","index","dictionary","singleDomainVocabulary","vocabularyTerm","splice","A","DynamicComponentLoaderModule","lazyLoadedManifests","arguments","dynamicManifests","ngModule","providers","DynamicComponentLoader","provide","ROUTES","useValue","multi","LAZY_LOADED_COMPONENT_MANIFESTS","DYNAMIC_COMPONENT_MANIFESTS","manifest","ANALYZE_FOR_ENTRY_COMPONENTS","DYNAMIC_MODULE","component","DYNAMIC_COMPONENT","T","manifests","injector","compiler","componentId","reduce","acc","find","m","throwError","loadChildren","Error","_wrapIntoObservable","mergeMap","loadFactory","module","moduleRef","createNgModuleRef","dynamicComponentType","dynamicModule","moduleFactory","Compiler","compileModuleSync","componentFactoryResolver","resolveComponentFactory","from","of","v","InjectionToken","ExpandDetailsModule","CommonModule","FacetDisplayPipe","args","codeTerm","approvalCodeName","trim","h","pure","FacetHttpParams","facets","deprecated","clone","fromString","encoder","CustomEncoder","hasDeprecated","keys","facetKey","facetValueKey","isAllMatch","param","key","encodeURIComponent","decodeURIComponent","DisplayFacet","e","type","bool","onRemove","removeFacet","ctx_r2","ctx_r19","ctx_r25","ctx_r41","ctx_r51","ctx_r57","ctx_r61","ctx_r77","ctx_r80","ctx_r83","FacetsManagerComponent","activatedRoute","utilsService","facetsService","authService","gaService","router","location","facetManagerService","privateFacetParams","facetBuilder","event","St","previousState","previousFacets","ngOnInit","privateRawFacets","populateFacets","configName","facetsConfig","_configName","hideDeprecatedCheckbox","bt","facetDisplayType","_facetDisplayType","facetViewCategorySelected","_facetViewCategorySelected","facetNameText","_facetNameText","facetString","snapshot","queryParams","showDeprecated","facetsFromParams","setDisplayFacets","facetsParamsUpdated","facetParam","displayFacets","deleteEventSubscription","clearSelectionsEvent","clearFacetSelection","subscriptions","loggedIn","includeFacetSearch","facetSearchSubscription","facetSearchChanged","debounceTime","distinctUntilChanged","switchMap","getFacetsHandler","activeSearchedFaced","values","_e","isInSearhResults","we","label","Ae","searchText","Pt","categoryArray","escapedSplit","categorySplit","category","fieldsArr","hasSelections","hasExcludeOption","includeOptionsLength","Bt","field","_n","decodeValue","Un","showAllMatchOption","paramsString","newHash","hashCode","currentStateHash","populateUrlQueryParameters","facetsAuthSubscription","facetsCopy","newFacets","showAudit","facetKeys","facetIndex","toggle","facet","facetNameTextFound","hasValues","valueIndex","count","facetToAdd","facetView","categoryRow","position","object","unshift","facetsLoaded","cleanFacets","facetParamsKeys","undefined","sub","navigationExtras","catArr","yt","be","Deprecated","cat","valArr","subkey","ft","encodeValue","isUpdated","urlTree","createUrlTree","queryParamsHandling","preserveFragment","go","delim","match","RegExp","d","facetValue","encFV","facetName","eventLabel","isAnalyticsPrivate","eventValue","sendEvent","updateFacetSelection","checked","source","ut","applyFacetsFilter","facetValueLabel","include","isAllMatchString","stateHash","facetValueKeys","calledFrom","$isLoading","$next","_self","resp","nextPageUri","$previous","previousPageUri","$fetched","$total","ftotal","searchTerm","faceName","filterFacets","Nt","FacetsManagerModule","MatExpansionModule","MatFormFieldModule","MatInputModule","MatCheckboxModule","FormsModule","MatIconModule","MatProgressBarModule","MatButtonModule","CodeDisplayModule","FacetsManagerService","handler","clearSelectionsSubject","asObservable","J","GoogleAnalyticsService","googleAnanlyticsId","init","analyticsObjectKey","Math","random","window","GoogleAnalyticsObject","l","Date","isActive","cookieName","screen","availWidth","availHeight","hostname","node","createElement","src","async","getElementsByTagName","appendChild","errorDescription","lineno","colno","sendException","title","sendFields","hitType","page","viewportSize","innerHeight","innerWidth","eventCategory","eventAction","exDescription","exFatal","TrackLinkEventDirective","element","evLabel","href","evCategory","evAction","evValue","inputTypes","typeCommandOptions","string","commandInputs","constructQuery","queryValue","condition","queryableProperty","lucenePath","eventEmitter","word","command","commandInputValues","example","Contains","timestamp","on","date","timestampStart","moment","hour","minute","second","millisecond","utc","valueOf","timestampEnd","before","after","between","queryParts","boolean","true","commandValue","false","number","LoadingModule","MatProgressSpinnerModule","LoadingOverlayComponent","B","LoadingService","overlayService","overlayRef","create","hasBackdrop","backdropClass","positionStrategy","global","centerHorizontally","centerVertically","scrollStrategy","scrollStrategies","reposition","loadingPortal","ComponentPortal","numProcesses","setOverlay","removeOverlay","loadingEventSubject","isOverlayAttached","attach","detach","MainNotificationService","notification","notificationEvent","NotificationType","ctx_r3","ctx_r8","NameResolverComponent","substanceService","FormControl","startingName","resolverControl","setValue","ue","resolveName","keyCode","errorMessage","resolvedNames","matchedNames","searchStr","getQuickSubstancesSummaries","local","remote","R","structureSelected","NameResolverModule","ReactiveFormsModule","RouterModule","SubstanceImageModule","ScrollToTargetDirective","elementRef","scrollToService","nativeElement","registerTargetElement","unregisterTargetElement","ScrollToModule","ScrollToRegistration","triggerElement","vAlign","targetElement","registrationTerminatedSubject","scrollIntoView","behavior","block","classList","remove","registerEventHandler","addEventListener","scrollToEventHandler","removeEventListener","ScrollToService","targetElementId","targetElements","elementItem","registration","triggerElementsDictionary","registrationTerminated","indexToRemove","j","findIndex","registrationInstance","isEqualNode","inactivateRegistration","EditorImplementation","ketcher","jsdraw","getMolfile","chargeLine","getMCharge","mfile","lines","old","clean","dupCount","tset","Array","pushundo","setMolfile","ondatachange","molFile","xml","getXml","aai","xmlDoc","DOMParser","parseFromString","charges","hasAttribute","getAttribute","ac","Number","o","leftPad","arr","item","idx","ic","p","rep","DragDropPasteDirective","dragging","preventDefault","handleInputChange","items","clipboardData","invalidFlag","blob","getAsFile","reader","FileReader","file","onload","handleReaderLoaded","bind","readAsDataURL","dropHandler","dataTransfer","files","loaded","imageSrc","target","result","backup","V","ctx_r6","StructureEditorComponent","stopPropagation","stopImmediatePropagation","activated","catchPaste","tempClass","preventDrag","checkPaste","myCanvas","click","context","getContext","canvasCopy","ketcherFilePath","structureEditor","JSDraw","defaultDocumentWriteFunction","write","styleElement","innerHTML","jsdrawScriptUrls","editorOnLoad","canvasMessage","createImage","img","molvec","loadedMolfile","Image","canvasToggle","height","width","drawImage","toDataURL","clearRect","sendToMolvec","send","that","onloadend","text","getData","cleanStructureSmiles","standard","StructureEditorModule","MatSelectModule","MatDialogModule","MatMenuModule","KetcherWrapperModule","JsdrawWrapperModule","FileSelectModule","StructureModule","StructureExportComponent","anchorElement","downloadFile","Blob","download","selectedIndex","downloadFunctions","URL","createObjectURL","StructureImageModalComponent","getOtherInchi","uuid","inchi","getInchi","inchiKey","names","ne","Re","approvalID","displayName","z","StructureImportComponent","importTextControl","messageClass","fileReader","readAsText","MatTabsModule","StructureService","sanitizer","structureId","size","imgUrl","bypassSecurityTrustUrl","responseType","formula","HTMLFormula","charge","includes","sCharge","sSign","mode","standardize","SubstanceCardBaseFilteredList","pageEvent","analyticsEventCategory","pageIndex","paged","startIndex","filtered","searchInput","listToFilter","searchTimer","clearTimeout","pageChange","SubstanceCardBase","SUBSTANCE_CARDS_FILTERS","substance","propertyToCheck","properties","evaluatedObject","lastIndex","prototype","call","substanceCardsFilters","isApproved","propertyInArray","evaluatedProperty","getEvaluatedProperty","property","countMin","countMinimum","countMax","countMaximum","codes","_isClassification","relationships","typeParts","isInExcludeValues","isInGroups","SubstanceCardsModule","filters","SubstanceCardsService","SubstanceDetailsProperty","dynamicComponentId","isLoaded","FilterResolver","filterParameters","registeredFilters","registeredFilter","_filter","filterParameter","filterName","configCards","substanceDetailsCards","card","substanceDetailsProperty","ScrollToTriggerDirective","scrollToElementId","registerTriggerElement","triggerElementRegistration","unregister","SubstanceDetailsComponent","mainNotificationService","route","dynamicComponentLoader","substanceCardsService","activeRoute","titleService","ot","matSideNav","open","sendPageView","checkVersion","latestVersion","routeParams","getSubstanceDetails","handleSubstanceRetrivalError","dynamicComponents","changes","cRef","substanceProperty","substanceDetailsProperties","getComponentFactory","ref","createComponent","componentFactory","instance","countUpdate","updateCount","substanceUpdated","toCamelCase","changeDetectorRef","detectChanges","openedStart","handleMatSidenavOpen","closedStart","handleMatSidenavClose","processResponsiveness","Ee","setTitle","_name","getSubstanceDetailsPropertiesAsync","insertSubstanceProperty","getMixtureParent","response2","$$mixtureParents","getConstituentParent","response3","$$constituentParents","startVal","endVal","start","end","floor","prop","setNotification","milisecondsToShow","search","navigate","substancePropertyTitle","ViewContainerRef","$event","AccessManagerComponent","cvService","FormGroup","privateAccess","access","getVocabularies","accessOptions","ACCESS_GROUP","createAccessFromGroup","crosscheckAccesses","accessOption","accessFormGroup","tooltipMessage","controls","accessOut","Event","bubbles","cancelable","dispatchEvent","SubstanceFormAgentModificationsService","substanceFormService","modifications","agentModifications","resetState","propertyEmitter","agentModification","agentModIndex","$$deletedCode","agentMod","SubstanceFormServiceBase","ctx_r11","AmountFormComponent","Validators","privateSubstanceAmount","amount","typeControl","valueChanges","averageControl","average","lowControl","low","highControl","high","lowLimitControl","lowLimit","highLimitControl","highLimit","unitsControl","units","nonNumericValueControl","nonNumericValue","substanceAmount","amountTypeList","AMOUNT_TYPE","amountUnitList","AMOUNT_UNIT","some","AuditInfoComponent","SubstanceFormBase","ReplaySubject","substanceFormAction","action","initSubtanceForm","unloadSubstance","CanActivateSubstanceForm","state","hasAnyRolesAsync","parseUrl","CanRegisterSubstanceForm","SubstanceFormCodesService","references","code","subCodeIndex","subCode","SubstanceFormConstituentsService","specifiedSubstance","constituents","sugar","constituentIndex","CvDialogComponent","CvInputComponent","dialog","dictionaryService","addOtherOption","privateMod","getDictionaryRow","fieldName","vocabName","CVDomain","cvSubscription","isAdmin","mod","valueChange","vocabSubscription","fetchFullVocabulary","openDialog","thisy","pageYOffset","scroll","top","left","dialogSubscription","afterClosed","SubstanceFormDisulfideLinksService","protein","disulfideLinks","available","subunits","sequence","residueIndex","subunitIndex","link","sites","site","substanceCysteineEmitter","cysteineUpdatedSubscription","cysteineUpdated","cysteine","linksUpdatedSubscription","disulfideLinksUpdated","emitDisulfideLinkUpdate","disulfideLink","subLinkIndex","subLink","recalculateAllSites","recalculateCysteine","formSections","chemical","nucleicAcid","mixture","structurallyDiverse","concept","specifiedSubstanceG1","polymer","specifiedSubstanceG3","specifiedSubstanceG4m","SubstanceFormGlycosylationService","substanceSubscription","glycosylation","glycosylationUpdatedSubscription","glycosylationUpdated","SubstanceFormLinksService","linkages","linksUpdated","SubstanceFormMixtureComponentsService","components","mix","subNameIndex","subName","SubstanceFormMonomersService","monomers","SubstanceFormNamesService","namesUpdatedSubscription","namesUpdated","bad","s","charCodeAt","got","replacer","SubstanceFormNotesService","notes","note","subNoteIndex","subNote","SubstanceFormOtherLinksService","otherLinks","otherLinksUpdatedSubscription","otherLinksUpdated","links","SubstanceFormPhysicalModificationsService","physicalModifications","physicalModification","physicalModIndex","physicalMod","SubstanceFormPolymerClassificationService","classification","SubstanceFormPropertiesService","feature","substanceClass","siteRange","propertyType","subPropertyIndex","subProperty","PropertyParameterFormComponent","privateParameter","parameter","propertyTypeList","PROPERTY_TYPE","ctx_r4","PropertyParameterDialogComponent","subsParameter","isNew","ctx_r5","ctx_r15","ctx_r20","ctx_r30","ctx_r33","ApplyReferenceComponent","substanceFormReferencesService","domainKeys","domainsWithReferences","setChecked","privateSubReferenceUuid","applyReference","definition","emitReferencesUpdate","domainKey","removeReference","obj","defaultValue","String","Boolean","hasOwnProperty","domainDisplayKeys","ctx_r17","PreviousReferencesComponent","user","getUser","getSubstanceReferences","ve","refCount","total","getPreviousReferences","lastEditedBy","docType","citation","oldReferences","loading","selectedReference","PreviousReferencesDialogComponent","ctx_r13","ReferenceFormComponent","reference","tags","newUUID","uploadedFile","deleteTimer","referenceDeleted","uploadFile","fillReference","showPrev","publicDomain","bypassUpdateCheck","SubstanceFormReferencesService","privateDomainsWithReferences","domainsWithReferencesEmitter","getDomainReferences","subClass","trimmedDomain","listDisplay","displayKey","subRefIndex","subReference","SubstanceFormRelationshipsService","relatedSubstance","relationship","subRelationshipIndex","subRelationship","SubstanceFormStructuralModificationsService","structuralModifications","structuralModification","structuralModIndex","structuralMod","SubstanceFormStructuralUnitsService","structuralUnits","setSRUConnectivityDisplay","unit","SRUs","srus","rmap","getAttachmentMapUnits","disp","sruConnectivityToDisplay","attachmentMap","_displayConnectivity","lab","amap","errors","connections","regex","con","res","exec","SubstanceFormStructurallyDiverseService","$$diverseType","part","SubstanceFormStructureService","idealizedStructure","substanceIdealizedStructureEmitter","setMoities","substanceMoietiesEmitter","moieties","computedMoieties","moietiesCopy","substanceMoietiesCopy","subMoiety","matchingMoietyIndex","moiety","hash","matchingComputedMoiety","computedMoiety","countAmount","substanceIndexToRemove","moietyCopy","moietyIndexToRemove","moietyIndexInDeleted","deletedMoieties","deletedMoiety","undeletedMoiety","indexToDelete","subMoietyCopy","SubstanceFormModule","SubstanceFormService","MatTooltipModule","MatDividerModule","MatChipsModule","MatAutocompleteModule","MatTableModule","MatBadgeModule","MatRadioModule","SubstanceSelectorModule","MatListModule","MatButtonToggleModule","NgxJsonViewerModule","MatSortModule","i5","TagSelectorComponent","i9","SugarFormComponent","nameResolver","substanceEmitter","method","mergeConcept","privateSubstance","proteinType","parentSubstance","grade","process","definitionLevel","definitionType","initForm","substanceFormActionEmitter","substanceString","substanceStateHash","allSitesArr","displaySequences","substanceDisulfideLinksEmitter","substanceGlycosylationEmitter","substanceLinksEmitter","substanceNamesEmitter","substanceOtherLinksEmitter","substanceStructuralModificationsEmitter","definitionEmitter","getDefinition","apid","prompt","newClass","fieldGetter","x","setPrivate","setPublic","status","approved","approvedBy","_bypassUpdateCheck","previousHash","ready","created","createdBy","lastEdited","getAllSites","allSitesEmitter","residue","subunit","CGlycosylationSites","NGlycosylationSites","OGlycosylationSites","newLink","newSites","acid","nucleicAcidType","nucleicAcidSubType","sequenceOrigin","sequenceType","substanceNucleicAcidEmitter","substanceSubunitsEmitter","createSubunitDisplay","displaySequencesEmitter","newDisplay","emitSugarUpdate","emitLinkUpdate","subUnit","rearrangeSubunitIndexes","rearrangeNAIndexes","arrIndex","sugars","emitOtherLinkUpdate","emitGlycosylationUpdate","emitStructuralModificationsUpdate","to","test3","copy","sitesShorthand","substanceSugarsEmitter","subSugarIndex","changeReason","substanceChangeReasonEmitter","substanceCopy","cleanSubstance","validateSubstance","results","actionType","appliedChange","messageType","suggestedChange","monomerSubstance","present","parameters","parameterName","physicalModificationRole","$$storedPart","displayStructure","deletedUuids","cleanObject","hasDeleletedCode","childProperty","isDeleted","duplicateCheck","_approvalIDDisplay","isSuccessfull","approveSubstance","serverError","saveSubstance","subres","slist","toks","rng","site1","siteDisplayToSite","site2","siteType","csub","cres","rres","finish","performance","now","subunitSequences","subsections","currentSections","thisTest","subgroups","indexEnd","unitIndex","unitValue","class","KNOWN_DISULFIDE_PATTERNS","tup","prot","pattern","proteinSubType","confirm","realList","cst","cs","sid","i1","su","ri","c1","real","newDS","sl","s1","gsites","proteinSubstance","sn","seq","xArray","re","gfinder","proteinGlycFinder","ctx_r9","ctx_r23","ctx_r27","ctx_r28","ctx_r36","ctx_r38","ctx_r50","SubunitSelectorComponent","substanceFormLinksService","render","privateFeature","feat","Te","substanceType","allSites","updateDisplay","sitesUpdate","convertFeature","selectState","startingCard","siteTotal","subunitsSubscription","subunitDisplaySequences","testSequence","sequenceUnit","showStyle","allSitesSubscription","linksSubscription","substanceLinks","Links","sugarSubscription","substanceSugars","addStyle","featureName","featureUpdate","AMINO_ACID_RESIDUE","features","sitesDisplay","cardTypeUpdate","formatted","modification","other","disulfide","splitDisplay","_type","s2","subUnitIndex","siteString","newobj","addClass","removeClass","disulfideArray","renderDisulfideArray","disulfidesUpdate","vt","toggleFeatureSite","toggleMultiDisulfide","inSites","je","innerText","Ft","cysteineMessage","drawFeature","newsites","stringToSites","newFeature","addFeature","reverse","newFeatureArray","siterange","pushFeature","pair","newArr","ct","trigger","backgroundColor","transition","animate","SubunitSelectorDialogComponent","disableClose","backdropClick","invalidFeatureConfirm","disulfides","cloneDeep","warning","sentFeature","privateSugar","remaining","found","NUCLEIC_ACID_SUGAR","siteDisplay","sugarDeleted","sugarTypes","getStructure","newLinks","ENTER","COMMA","cvDomain","allOptions","cvOptions","inCV","option","optionsDictionary","filteredOptions","tagControl","startWith","tag","privateTags","tagInput","matAutocomplete","isOpen","tagsUpdate","clearTagsInput","addedTag","disableCV","input","filterValue","SubstanceSelectorComponent","hideImage","substanceSelectorProperties","getSubstanceSummary","selectedSubstance","searchValue","selectionUpdated","previousSubstance","SubstanceTextSearchModule","SubstanceFormSsg4mSitesService","ae","processIndex","siteName","stages","ze","Injectable","SubstanceFormSsg4mProcessService","substanceFormSsg4mSitesService","de","processName","addSite","ctx_r42","ctx_r55","ctx_r75","Ssg4mSchemeViewComponent","substanceFormSsg4mProcessService","processSubscription","specifiedSubstanceG4mProcess","Se","processList","imageLoc","subUuid","panelClass","ye","amt","propertyName","displayAmountCompose","tabSelectedIndexOut","showSubstanceRole","showCriticalParameter","addedunits","unittext","formatValue","atype","$t","Ssg4mStepViewDialogComponent","siteIndex","stageIndex","showProcessIndex","showSiteIndex","showStageIndex","tabIndex","tabSelectedIndex","SubstanceFormSsg4mStagesService","stageNumber","criticalParameters","startingMaterials","processingMaterials","resultingMaterials","lastStageIndex","copyResultingToStarting","substanceRole","resultingMaterialIndex","resultMatRefUuid","thisResultMatSubName","substanceName","refuuid","nextStageObj","copyToStartingFields","startMatSubName","thisResultMatObj","addStartingMaterials","nextStartMat","verbatimName","comments","ctx_r12","Ssg4mStartingMaterialsFormComponent","privateStartingMaterial","startingMaterial","privateProcessIndex","privateSiteIndex","privateStageIndex","privateShowAdvancedSettings","showAdvancedSettings","getConfigSettings","startingMaterialIndex","relatedSubstanceUuid","confSettings","ssg4Form","settingsDisplay","configSettingsDisplay","refPname","ConfirmDialogComponent","deleteStartingMaterial","Ssg4mProcessingMaterialsFormComponent","privateProcessingMaterial","processingMaterialIndex","processingMaterial","deleteProcessingMaterial","Ssg4mResultingMaterialsFormComponent","substanceFormSsg4mStagesService","privateResultingMaterial","resultingMaterial","deleteResultingMaterial","ctx_r66","ctx_r68","ctx_r69","Ssg4mCriticalParameterFormComponent","substanceFormPropertiesService","privateCriticalParameter","criticalParameter","setSubstanceAmount","criteriaParameter","criticalParameterIndex","deleteCriticalParameter","parameterCopyString","newParameter","Ssg4mStagesFormComponent","privateStage","stage","privateTabSelectedView","tabSelectedView","configSsg4Form","configTitleStage","configTitleProcessingMaterials","titles","addCriticalParameter","scrollToElement","addProcessingMaterials","addResultingMaterials","deleteStage","Ssg4mSitesComponent","privateSite","addStage","deleteSite","ctx_r7","ctx_r22","Ssg4mProcessFormComponent","privateProcess","deleteProcess","ctx_r10","SubstanceFormSsg4mProcessCardComponent","ni","canAddItemUpdate","menuLabelUpdate","setInterval","schemeUtil","debug","apiBaseURL","onClickReaction","showStepViewDialog","stepIndex","onClickMaterial","openImageModal","bottomText","componentDestroyed","addProcess","nt","textLabel","tab","ssgjs","renderScheme","makeDisplayGraph","localTabSelectedIndex","SubstanceSsg4mProcessModule","MatPaginatorModule","Ssg4mSitesModule","Ssg4mSchemeViewModule","Ssg4mStagesModule","Ssg4mCriticalParameterModule","SubstanceFormSsg4mProcessingMaterialsModule","SubstanceFormSsg4mResultingMaterialsModule","Lt","SubstanceFormSsg4mStartingMaterialsModule","SubstanceTextSearchComponent","CODE_SYSTEM","codeSystemVocab","CAS","CasDisplay","searchControl","searchValueOut","getStructureSearchSuggestions","substanceSuggestionsGroup","showTypes","typeaheadFields","suggestionsFields","y","matOpen","opened","privateErrorMessage","markAsTouched","setErrors","closed","searchContainerElement","querySelector","topSearchClean","searchPerformed","testElem","scrollWidth","offsetWidth","looksComplex","looksLikeComplexSearchTerm","SubstanceImageDirective","el","imageElement","isAfterViewInit","setImageSrc","privateVersion","entityId","privateEntityId","privateSize","showStereo","privateStereo","atomMaps","privateAtomMaps","srcUrl","getStructureImgUrl","alt","SubstanceService","searchResult","etag","uuids","resultEmitter","structureSearchTerm","searchSubstanceStructures","cutoff","sequenceSearchKey","sequenceSearchTerm","searchSubstanceSequences","seqType","searchSubstances","appendFacetParams","appendDictionary","querySearchTerm","sync","structureFacetsKey","searchKeys","resultKey","processAsyncSearchResults","searchKey","asyncCallResponse","httpCallOptions","view","getAsyncSearchResults","finished","searchResponse","structureSearchKey","cache","getFacets","withCredentials","editurl","oldValue","verurl","request","body","keyid","oid","codeSystem","catchError","getPrimaryCode","primaryCode","nextUrl","ID","jsonp","ExportDialogComponent","format","extension","CodeSystemDisplayPipe","item2","DataDictionary","fieldPath","finalField","dataType","luceneQueryable","Mixture","Modifications","SpecifiedSubstance","Constituent","Note","DataDictionaryService","dataDictionary","newObj","cv","searchSortValues","UtilsService","stereo","randomKey","widthBreakingPoint","bodyElement","matSidenavContentElement","overflowX","phrase","stringArray","stringToHash","$1","formData","FormData","mapper","$errors","isAsc","strings","targetField","adverseEventCvmSearchSortValues","displayedColumns","direction","adverseEventDmeSearchSortValues","adverseEventPtSearchSortValues","AdverseEventService","apiBaseUrlWithEntityPtContext","apiBaseUrlWithEntityDmeContext","apiBaseUrlWithEntityCvmContext","bdnum","orderBy","ascDescDir","totalRecords","recordsTotal","ApplicationService","apiBaseUrlWithApplicationEntityUrl","apiBaseUrlWithApplicationAllEntityUrl","substanceKey","center","fromTable","applicationId","appType","appNumber","apiBaseUrlWithApplicationDarrtsEntityUrl","substanceId","applicationString","application","applicationStateHash","applicationIndicationList","applicationProductList","applicationProductNameList","applicationIngredientList","validateApp","indIndex","prodIndex","prodNameIndex","product","newProduct","reviewedBy","reviewDate","ingredIndex","ingredient","newIngredient","ClinicalTrialService","searchClinicalTrials","trialNumber","SubstanceCountsComponent","applicationService","generalService","loadedComponents","applications","getSearchCount","getAppIngredMatchListCount","searchCount","isShowMatchList","getItem","getSubstanceNames","getSubstanceNamesBySubstanceUuid","substanceNames","fullFacetField","getApplicationIngredientMatchList","getApplications","appMatchListCount","pagingResponse","privateSearch","APPALL_SEARCH_SUBSTANCE_KEY","getApplicationAll","appCountConcat","D","ctx_r14","fdaLazyLoadedComponentManifests","SubstanceProductsModule","fdaDynamicBrowseComponentManifests","ShowApplicationToggleComponent","isDisplayAppToMatchConfig","subscriptionResult","searchResults","totalSubstance","getExportOptions","displayMatchApplication","displayMatchApplicationConfig","displayMatchAppCheckBoxValue","checkBoxValue","routeReuseStrategy","shouldReuseRoute","onSameUrlNavigation","getApiExportUrl","startUserDownload","getApiExportUrlBrowseSubstance","exportOptions","hasAdditionalDownloads","additionalExportOptions","componentType","fdaDynamicSubSummaryComponentManifests","applicationSearchSortValues","ApplicationTextSearchComponent","getApplicationSearchSuggestions","W","ctx_r39","ctx_r44","ctx_r45","ctx_r52","facet_r54","ctx_r58","ctx_r88","ctx_r147","ApplicationsBrowseComponent","locationStrategy","notificationService","registerGetFacetsHandler","getApplicationFacets","privateSearchTerm","searchTermHash","isSearchEditable","localStorage","parseInt","authSubscription","isLoggedIn","paramsSubscription","queryParamMap","isComponentInit","loadComponent","unregisterFacetSearchHandler","isFacetsParamsInit","searchApplications","isError","dataSource","totalApplications","lastPage","rawFacets","narrowSearchSuggestions","matchTypes","narrowSearchSuggestionsCount","suggestion","matchType","Le","getSubstanceBySubstanceKey","getClinicalTrialApplication","displayFacet","clearSearch","clearSelections","active","orderIndex","sortValues","sortValue","validatePageInput","invalidPage","newpage","isNaN","isInteger","facetsUpdateEvent","numFacetsLoaded","elementProd","indexProd","creationDate","elementIngred","indexIngred","getSubstanceByAnyId","responseInactive","_substanceUuid","_ingredientName","getUpdateApplicationUrl","app","clinicalSubscription","_clinicalTrialList","O","setSearchTermValue","ApplicationDetailsBaseComponent","isNumber","getApplicationDetails","appIdSubscription","getApplicationById","appHistSubscription","getApplicationHistory","applicationHistoryList","prodTechEffectSubscription","getProductTechnicalEffect","productTechEffectList","prodEffectedSubscription","getProductEffected","productEffectedList","clinicalTrialList","ingSubscription","basisOfStrengthSubstanceKey","basisSubscription","_basisOfStrengthSubstanceUuid","_basisOfStrengthIngredientName","num","getSafeStructureImgUrl","ApplicationDetailsComponent","qi","ApplicationDarrtsDetailsComponent","Mi","getApplicationDarrtsDetails","appDarrtsSubscription","ingredientList","subSubscription","_ingredientname","_approvalID","conceptSubscription","getSubstanceParentConcept","_parentSubstanceKey","parentSubstanceKey","_parentDisplayTerm","parentDisplayTerm","JsonDialogFdaComponent","json","uri","downloadJsonHref","ctx_r37","ctx_r46","ctx_r54","ApplicationFormComponent","fb","routeSubscription","loadApplication","newType","provenance","isDisableData","handleApplicationRetrivalError","validationType","validateClient","validateApplication","submissionMessage","validationResult","showSubmissionMessages","addServerError","validate","setValidationMessage","submitDateMessage","statusDateMessage","$$ingredientNameValidation","$$basisOfStrengthValidation","cleanApplication","saveApplication","deleteApplication","displayMessageAfterDeleteApp","applicationStr","applicationCopy","addNewIndication","indication","deleteIndication","validateDate","submitDate","validateSubmitDateWithStatusDate","statusDate","isValid","validateFutureDate","dateinput","nowDate","setHours","submitDateInput","statusDateInput","formDate","datepipe","DatePipe","transform","ctx_r34","ApplicationProductFormComponent","addNewProduct","addNewProductName","deleteProduct","deleteProductName","copyProduct","reviewProduct","currentDate","getCurrentDate","addNewIngredient","routeAdmins","routeAdmin","IngredientFormComponent","ingredientNameBdnumOld","basisofStrengthBdnumOld","substanceKeyTypeConfig","getSubstanceKeyType","deleteIngredient","copyIngredient","reviewIngredient","deleteIngredientName","ingredientNameMessage","ingredientName","ingredientNameSubstanceUuid","substanceKeyType","deleteBasisOfStrength","basisOfStrengthMessage","basisOfStrengthIngredientName","basisOfStrengthSubstanceUuid","basisOfStrengthSubstanceKeyType","substanceUuid","subCodesSubscription","getSubstanceCodesBySubstanceUuid","substanceCodes","subIdSubscription","getActiveMoiety","getSubstanceRelationships","responseRel","relType","ingredientNameActiveMoiety","basisOfStrengthActiveMoiety","getSubstanceCode","SubstanceSearchSelectorModule","JsonDialogFdaModule","ConfirmDialogModule","ApplicationTextSearchModule","CanActivateRegisterApplicationFormComponent","CanActivateUpdateApplicationFormComponent","CanDeactivateApplicationFormComponent","isApplicationUpdated","ApplicationLoadedComponent","SubstanceSearchSelectorComponent","loadingStructure","showMessage","applicationRoutes","canActivate","canDeactivate","ApplicationModule","imports","MatToolbarModule","MatSidenavModule","MatCardModule","MatSliderModule","MatBottomSheetModule","MatDatepickerModule","MatNativeDateModule","OverlayModule","SubstanceApplicationMatchListModule","ProductDetailsBaseComponent","productService","productId","getProduct","prodSubscription","prodCode","productCodeList","elementProdCode","indexProdCode","productCode","productComponentList","elementComp","productLotList","elementLot","productIngredientList","subBasisSubscription","ProductDetailsComponent","ProductElistDetailsComponent","producService","iconSrcPath","getProductElist","productNDC","getSubstanceByApprovalID","dailyMedUrl","prodActiveElistList","elementActive","unii","subActiveSubscription","prodInactiveElistList","elementInactive","subInactiveSubscription","ctx_r35","ctx_r47","ctx_r48","ctx_r62","ctx_r74","ctx_r79","ctx_r99","ProductFormComponent","getProductDetails","loadProduct","codeObj","Ht","ei","handleProductRetrivalError","validateProduct","expiryDateMessage","manufactureDateMessage","cleanProduct","saveProduct","productStr","productCopy","displayMessageAfterDeleteProd","addNewTermAndTermPart","prodNameTermIndex","deleteTermAndTermPart","addNewProductCode","prodCodeIndex","deleteProductCode","addNewProductCompany","prodCompanyIndex","deleteProductCompany","addNewProductComponent","getViewProductUrl","ProductComponentFormComponent","prodComponentIndex","deleteProductComponent","addNewProductLot","copyProductComponent","productComponent","expiryDateMessageOut","manufactureDateMessageOut","ProductIngredientFormComponent","loadIngredientLocation","substanceKeyOld","basisofStrengthSubstanceKeyOld","ingredientLocation","arrLoc","locationList","checkbox","selStr","checkBox","checkbox1","data1","prodLotIndex","prodIngredientIndex","deleteProductIngredient","copyProductIngredient","subCodeSubscription","ProductLotFormComponent","deleteProductLot","addNewProductIngredient","copyProductLot","productLot","expiryDate","manufactureDate","ProductTextSearchModule","productSearchSortValues","ProductTextSearchComponent","getProductSearchSuggestions","ctx_r91","ctx_r173","ctx_r187","ProductsBrowseComponent","getProductFacets","searchProducts","getProducts","products","totalProducts","separateAppTypeNumber","appTypeNumber","In","apt","apn","done","char","_i","CanActivateRegisterProductFormComponent","CanActivateUpdateProductFormComponent","CanDeactivateProductFormComponent","isProductUpdated","ActivateProductsComponent","productRoutes","ProductModule","ProductService","ClinicalTrialsBrowseComponent","clinicalTrialService","MatTableDataSource","isCollapsed","getClinicalTrialsFacets","privateSearchType","privateSearchCutoff","searchTypes","openSubscription","closeSubscription","newArgsHash","argsHash","getClinicalTrials","clinicalTrials","totalClinicalTrials","deleteClinicalTrial","deletedClinicalTrials","showExactMatches","showHelp","MiniSearchComponent","suggestions","Name","mainPathSegment","getMainPathSegmentFromUrl","routerState","events","NavigationEnd","myInitialSearch","panelClosingActions","miniSearchOutput","myIndex","search_term","MatAutocompleteTrigger","ctx_r70","ClinicalTrialEditComponent","paramMap","_trialNumber","getClinicalTrial","getSubstanceDetailsFromName","pageResult","getSubstanceDetailsFromSubstanceKey","orgSubstanceKey","getOrgSubstanceKeyFromSubstance","substanceDetails","defaultSubstanceKeyType","trialObs","substanceObs","_data","clinicalTrialUSDrug","protectedMatch","clinicalTrial","complements","substances","rt","_observables","newClinicalTrial","newClinicalTrialUSDrugs","ctd","updateClinicalTrial","inputElement","select","execCommand","textArray","copyTextAreaToClipBoard","textArray1","textArray2","cleanText","removeChild","MatTable","ClinicalTrialAddComponent","canEdit","addClinicalTrial","ClinicalTrialDetailsBaseComponent","getClinicalTrialDetails","ClinicalTrialDetailsComponent","flagIconSrcPath","ClinicalTrialEuropeDetailsComponent","wr","ActivateClinicalTrialsComponent","clinicaltrials","clinicalTrialsRoutes","ClinicalTrialsModule","UserManualModule","JiraSubmitTicketModule","SubstanceApplicationMatchListComponent","hasRolesAsync","preferredTerm","matchObject","appSubType","productName","exactMatchName","elementProdName","indexProdName","indexNames","substanceApplicationMatchList","autoUpdateMessage","isDisableButton","ingredientType","applicantIngredName","fdaSubstanceCardsFilters","SsoRefreshService","iframe","opacity","pathname","refreshInterval","clearInterval","JiraSubmitTicketComponent","loadJiraScript","initCollectorDialog","showCollectorDialog","UserManualComponent","getUserManual","getManualFile","binaryData","downloadLink","setAttribute","ctx_r40","ImpuritiesFormComponent","impuritiesService","rolesSubscription","getImpurities","loadImpurities","impurities","getImpuritySubscribe","scrub","impuritiesSubstanceList","elementSub","saveImpurities","deleteImpurities","displayMessageAfterDeleteImpurities","addNewImpuritiesSubstance","addNewImpuritiesTotal","oldraw","idHolders","defiant","createHolders","createdByHolders","modifyHolders","lastModifiedDate","modifiedByHolders","modifiedBy","intVersionHolders","internalVersion","$$update","impDate","dateTypeDate","ImpuritiesDetailsFormComponent","impuritiesDetails","relatedSubstanceUnii","addNewImpuritiesDetails","impuritiesSubstanceIndex","impuritiesTestIndex","identityCriteriaList","impuritiesDetailsIndex","deleteImpuritiesDetails","identityCriteriaIndex","deleteIdentityCriteria","ImpuritiesDetailsComponent","getImpuritiesSubscribe","elementRel","indexRel","impSubNameSubscription","getSubstanceBySubstanceUuid","elementRelSub","impuritiesTestList","elementRelTest","impuritiesDetailsList","elementRelImpuDet","impDetNameSubscription","impuritiesResidualSolventsList","elementRelResidual","impResidualNameSubscription","impuritiesInorganicList","elementRelInorganic","impInorganicNameSubscription","getSubstanceDetailsBySubstanceId","getSubDetailsSubscribe","ImpuritiesUnspecifiedFormComponent","impuritiesUnspecifiedIndex","deleteImpuritiesUnspecified","addNewIdentityCriteriaUnspecified","identityCriteriaUnspecIndex","deleteIdentityCriteriaUnspecified","ImpuritiesTotalFormComponent","ImpuritiesTestFormComponent","createNewImpurities","relationshipUuid","newImpuritiesDetails","impuritiesTest","addNewImpuritiesUnspecified","deleteImpuritiesTest","ImpuritiesSubstanceFormComponent","impuritiesSubstance","getRelImpuritySubscribe","getRelationshipImpurity","relImpurities","existingImpurities","loadExistingImpurities","addNewTest","relationshipUnii","addNewImpuritiesResidualSolvents","addNewImpuritiesInorganic","deleteImpuritiesSubstance","ImpuritiesResidualSolventsFormComponent","impuritiesResidualIndex","deleteImpuritiesResidualSolvents","impuritiesResidualSolvents","ImpuritiesInorganicFormComponent","impuritiesInorganic","impuritiesInorganicIndex","deleteImpuritiesInorganic","CanActivateRegisterImpuritiesFormComponent","CanActivateUpdateImpuritiesFormComponent","CanDeactivateImpuritiesFormComponent","isImpuritiesUpdated","ActivateImpuritiesComponent","impurityRoutes","ImpuritiesModule","AdvancedSearchService","apiBaseUrlWithProductBrowseEntityUrl","apiBaseUrlWithClinicalTrialEntityUrl","entityUrl","ctx_r43","AdvancedSearchComponent","advancedSearchService","adverseEventService","utilitiesService","searchType","_searchtype","showSpinner","advancedSearchFacetDisplay","advancedSearchHash","queryStatementHashesString","queryStatementHashes","categoryStored","categoryOptions","getBrowseSubstanceDetails","getBrowseApplicationDetails","getBrowseProductDetails","adverseevents","getBrowseAdverseEventPtDetails","getBrowseAdverseEventDmeDetails","getBrowseAdverseEventCvmDetails","loadFileName","loadFacetViewFromConfig","facetViewControl","facetViewCategory","subscriptionBrowseSub","getSubstances","substanceCount","formatNumber","rawFacetsSubstance","subscriptionBrowseApp","applicationCount","rawFacetsApplication","subscriptionBrowseProd","productCount","rawFacetsProduct","subscriptionBrowseClinical","clinicalTrialCount","rawFacetsClinicalTrial","subscriptionBrowseAdvPt","getAdverseEventPt","adverseEventPt","adverseEventPtCount","rawFacetsAdverseEventPt","subscriptionBrowseAdvDme","getAdverseEventDme","adverseEventDme","adverseEventDmeCount","rawFacetsAdverseEventDme","subscriptionBrowseAdvCvm","getAdverseEventCvm","adverseEventCvm","adverseEventCvmCount","rawFacetsAdverseEventCvm","tabClicked","dictionaryFileName","getSubstanceFacets","getAdverseEventPtFacets","getSearchField","All","description","queryableSubstanceDict","displayProperties","displayPropertiesCommon","priority","queryStatements","queryHash","queryStatementHash","queryStatement","statement","facetQueryConstruct","queryDisplay","queryFacet","panelExpanded","applyReady","setFacetLocationUrl","processSearch","navigationExtrasFacet","categoryHash","queryStatementString","navigationExtras2","history","pushState","structure_search","similarityCutoff","has","showSimilarityCutoff","searchTypeControl","structurePostResponse","commandInput_r25","ctx_r60","ctx_r72","AdvancedQueryStatementComponent","categoryinput","queryableSubstanceDictionary","_queryableDictionary","queryableOptionsAll","_index","selectedCondition","refreshQuery","commandInputValueDict","queryablePropertiesControl","queryablePropertySelected","allQueriablePropertiesSubscription","queryablePropertiesAutocompleteControl","commandSubscription","commandControl","setCommand","conditionControl","conditionSubscription","commandObject","emitEvent","selectedQueryableSuggest","suggest","isShowCommonFields","queryableOptionsCommon","processQueriablePropertyChange","getTypeAheadSearchText","commandOptions","queryablePropertyType","selectedQueryablePropertyType","selectedQueryableProperty","setCvOptions","selectedLucenePath","isShowAllCommandOptions","commandOptionsExample","commandInput","queryUpdated","selectedCommandOption","decreaseOverlayZindex","inputValue","commandObj","navigateToSearchResults","increaseOverlayZindex","processSearchOut","advSearchRoutes","AdvancedSearchModule","i6","AdverseEventTextSearchModule","AdverseEventTextSearchComponent","getAdverseEventSearchSuggestions","facet_r50","ctx_r56","AdverseEventsPtBrowseComponent","searchAdverseEventPt","adverseEventPtList","totalAdverseEventPt","countAdverseEventPtOut","getApiExportUrlPt","facet_r52","AdverseEventsDmeBrowseComponent","getAdverseEventDmeFacets","searchAdverseEventDme","totalAdverseEventDme","countAdverseEventDmeOut","getApiExportUrlDme","facet_r48","AdverseEventsCvmBrowseComponent","getAdverseEventCvmFacets","searchAdverseEventCvm","totalAdverseEventCvm","countAdverseEventCvmOut","getApiExportUrlCvm","AdverseEventsBrowseComponent","setFacetsforTabs","ActivateAdverseeventsComponent","advEventRoutes","AdverseEventsBrowseModule","fdaRoutes","ssoService","FdaModule","GeneralService","APP_INITIALIZER","useFactory","init_sso_refresh_service","deps","ImpuritiesService","impuritiestring","impuritiesStateHash","apiBaseUrlWithEntityContext","impuritiesTotal","validateImpur","impuritiesUnspecifiedList","apiBaseUrlWithProductElistEntityUrl","productString","productStateHash","apiBaseUrlWithProductEntityUrl","productNameList","productCompanyList","validateProd","productTermAndTermPartList","productComp","productIngredient","responseNames","fullname","Accept","linking","keyType","default","clasicBaseHref","production","appId","PageNotFoundComponent","L","HighlightedSearchActionComponent","bottomSheetRef","dismiss","MAT_BOTTOM_SHEET_DATA","AdminService","job","configOrCount","Infinity","g","u","delay","resetOnSuccess","identity","operate","subscriber","innerSub","soFar","syncUnsub","createOperatorSubscriber","resub","subscribeForRetry","notifier","timer","innerFrom","notifierSubscriber","retry","newpass","newPassword","oldpass","body3","oldPassword","ctx_r26","SubstanceDraftsComponent","fetchDrafts","time","getTime","fileName","onlyRegister","onlyCurrent","M","compare","draft","readFile","getElementById","startsWith","entry","fromNow","filterToggle","primary","UserProfileComponent","adminService","newPasswordConfirm","changeMyPassword","changePassword","isString","maxHeight","profile","SubstanceEditImportDialogComponent","jsonValid","record","uploaded","pastedJSON","SubstanceTextSearchService","registeredSearchComponents","WildcardService","wildCardObservable","wildcardText","topSearchObservable","topSearchBox","MainNotificationComponent","appNotification","notificationTimer","notifcationType","notificationMessage","removeNotification","notificationType","LoadingComponent","loadingEvent","ctx_r59","ctx_r63","ctx_r64","ctx_r65","ctx_r67","BaseComponent","bottomSheet","substanceTextSearchService","wildCardService","classicLinkPath","classicLinkQueryParamsString","oi","wildCardText","selection","activeEl","activeElement","activeElTagName","tagName","selectionStart","selectionEnd","getSelection","rangeCount","getRangeAt","bottomSheetOpenTimer","selectedText","showHeaderBar","header","notempty","roleSubscription","regSubscription","canRegister","baseDomain","getBuildInfo","buildInfo","versionTooltipMessage","buildTime","registerNav","urlPath","setClassicLinkPath","setClassicLinkQueryParams","authSubscription2","checkAuth","logoSrcPath","routerSubscription","ResolveEnd","NavigationStart","classicLinkQueryParams","resetLoading","registerSearchComponent","cleanSearchSubscription","setSearchComponentValueEvent","bottomSheetCloseTimer","getTopSearchBoxText","closeOnNavigation","openedSubscription","afterOpened","dismissedSubscription","afterDismissed","basePath","pathParts","pathKey","kind","paramsDict","identityType","U","queryParamsString","autoFocus","navigateByUrl","HomeComponent","bn","browseAll","chemicon","bannerMessage","usefulLinks","excelCard","guideCard","dictionaryCard","isAuthenticated","customLinks","homeDynamicLinks","searchSingleFacetSimpleCount","getRecordCount","isClosedWelcomeMessage","getAdverseEventShinyConfig","templateRef","adverseEventShinyHomepageDisplay","adverseEventShinyHomepageURL","RegistrarsComponent","customLinks1","registrarDynamicLinks","customLinks2","registrarDynamicLinks2","searchFromString","processFacets","BrowseHeaderDynamicSectionDirective","viewContainerRef","SubBrowseEmitterService","refresh","cancel","CardDynamicSectionDirective","ShowMolfileDialogComponent","SequenceAlignmentComponent","alignmentArray","alignments","alignment","toFixed","iden","score","SubstanceHierarchyComponent","NestedTreeControl","MatTreeNestedDataSource","selfNode","parent","expandable","getHierarchy","loadHierarchy","orig","row","depth","formatHierarchy","temp2","list_to_tree","activeNode","lastID","lastProp","parentRemap","subref","self","linkingID","matches","textA","textB","roots","NamesDisplayPipe","returned","preferred","TakePipe","SubstanceStatusPipe","ctx_r49","ctx_r84","lt","ctx_r109","ctx_r113","ctx_r115","SubstanceSummaryCardComponent","dynamicContentItems","canCreate","getAlignments","formatFormula","hasInxightLink","inxightLink","inxightUrl","getApprovalID","molWeightRounding","rounding","loadDynamicContent","privateCodeSystems","codeSystems","codeSystemNames","formatCodeSystems","testing","allPrimary","sysName","openImage","getFasta","downloadMolfile","dynamicContentContainer","clear","dynamicContentItem","_matchContext","minWidth","maxWidth","approval","showLessNames","showLessCodes","facet_r61","ctx_r76","ctx_r105","ctx_r108","ctx_r149","substance_r133","ctx_r152","ctx_r155","ctx_r163","ctx_r188","ctx_r199","substance_r166","ctx_r202","ctx_r205","ctx_r212","ctx_r214","ctx_r216","ctx_r217","ctx_r218","ctx_r219","ctx_r223","ctx_r224","ctx_r225","ctx_r226","ctx_r227","ctx_r228","ctx_r230","ctx_r231","ctx_r232","ctx_r235","SubstancesBrowseComponent","emitService","or","getWildCardText","setUpPrivateSearchTerm","privateStructureSearchTerm","privateSequenceSearchTerm","sequence_search","privateSequenceSearchKey","sequence_key","sequenceID","source_id","privateSearchSeqType","seq_type","searchHashFromAdvanced","dynamicSubscription","comps","container","toArray","dynamicContentItemsFlat","isRefresher","setData","disableExport","getSubstancesSummaries","totalSubstances","exactMatches","sideway","exactMatchSubstances","displayField","lq","makeBeginsWithSearchTerm","luceneField","luceneQuery","nn","exp","setResult","setSubstanceNames","setSubstanceCodes","setSearchValue","dialogReference","getSubstanceCodes","sortCodeSystems","advSearchTerm","clearStructureSearch","clearSequenceSearch","setRefresh","setCancel","codeSystemOrder","selBox","focus","StructureSearchComponent","renderer","contentContainer","navigateToBrowseSubstance","SequenceSearchComponent","Wt","sequenceSearchForm","getSequence","filterbychr","getSequenceByID","reg","possible","makeRandom","getSubstanceSequenceResults","ctx_r1","LoginComponent","login","loginForm","SubstanceFormSection","dynamicComponentName","addItemEmitter","JsonDialogComponent","SubmitSuccessDialogComponent","MergeConceptDialogComponent","getSubconcepts","subconcepts","getBDNUM","$$bdnum","oldSub","showButtons","newSub","newBdnum","BDNUM_MAPPER","oldBdnum","l1","l2","mapName","bdref","guid","oldref","addAll","loadSubstance","addmergebutton","depRef","importType","s4","uuidHolders","ouuid","nid","refHolders","refs","rec","originHolders","originatorUuid","refSet","refHolders2","nrefs","DefinitionSwitchDialogComponent","defSwitch","getJson","primeVersion","altversion","full_prom","oldAlt","oldPrime","uuidNew","newstructureid","structureuuid","structureid","currentAlts","sourceMaterialClass","sourceMaterialType","opticalActivity","digest","stereoCenters","definedStereo","ezCenters","mwt","stereochemistry","test1","test2","updateRecord","AltNewType","AltNewDef","didStep5","altSwitch","altReferences","objectsA","isObject","toPush","primeNewDef","reload","nsub","cb","step","errorString","undo","_typeof2","Symbol","iterator","_obj","constructor","_typeof","section_r43","SubstanceFormComponent","showImagePopup","Ui","hidePopup","imagePopupUnit","autoSave","saveDraft","autoSaveWait","read","importSubstance","draftCount","drafts","navigated","approvalType","isUpdater","imported","getDetailsFromImport","getPartialSubstanceDetails","copyType","setFormSections","approving","definitionSubscription","canApprove","canBeApproved","getDrafts","forceChange","startTime","dynamicComponentRef","matExpansionPanel","matExpansionPanels","panelIndex","menuLabel","hiddenStateSubscription","hiddenStateUpdate","isHidden","canAddItem","isList","aieSubscription","addItem","UNII","getUNII","glyco","unapproveRecord","setDefinitionPrivate","setDefinitionPublic","changeStatus","definitionSwitch","changeApproval","openFragmentDialog","switch","conceptNonApproved","predictSites","creator","lastEdit","switchType","same","sectionNames","formSection","sectionName","openSuccessDialog","isSubstanceUpdated","returnValue","idMap","_map","filteredDuplicationCodes","oldLinkFix","auto","opt","auto1","auto2","auto3","pi","MatExpansionPanel","CanDeactivateSubstanceFormGuard","QueryStatementComponent","GuidedSearchComponent","guidedSearchHash","CacheSummaryComponent","getEnvironmentHealth","health","setStart","epoch","duration","timestring","years","months","days","hours","minutes","seconds","runtime","UserEditDialogComponent","hasRole","userID","submitted","submission","userLoggedIn","checkRoles","originalName","newUser","userHasAdminRole","checkIfUserHasAdminRole","getGroups","grp","hasGroup","getUserByID","toReturn","rolesArr","newGroup","userEditObj","admin","email","editUser","successfulChange","addUser","getUserByName","UserManagementComponent","paginator","showAllUsers","filterList","users","showHideActions","checkedList","extraWarning","setSelectedToInactive","getPagedIndex","deleteUsers","showAll","getAllUsers","showInactiveUsers","showInactive","searchFields","updateLocalData","deleteUser","sortData","lastSort","modified","itemString","emailString","MatPaginator","DataManagementComponent","formBuilder","uploadForm","fileType","audit","loadData","CvTermDialogComponent","vocabularyTermType","myScrollContainer","scrollTop","scrollHeight","CvManagementComponent","getVocab","getCVDomainRows","vocabularies","vocabType","downloadHref","NGX_MOMENT_OPTIONS","momentConstructor$a","TimeAgoPipe","cdRef","ngZone","lastOmitSuffix","omitSuffix","formatFn","hasChanged","lastTime","lastValue","lastLocale","getLocale","removeTimer","createTimer","lastText","currentTimer","momentInstance","timeToUpdate","getSecondsUntilUpdate","runOutsideAngular","run","markForCheck","howOld","abs","diff","isDate","isMoment","locale","ɵfac","ɵngcc0","ɵpipe","MomentModule","ɵmod","ɵinj","ScheduledJobComponent","monitor","pollIn","stopMonitor","cronstrue","spawn","fetchJob","running","lastFinished","lastStarted","lastDurationHuman","quickLoad","mess","min","untilNextRun","nextRun","runJob","ts","ScheduledJobsComponent","fetchJobs","jobs","AllFilesComponent","level","hasLink","FlatTreeControl","MatTreeFlattener","_transformer","MatTreeFlatDataSource","treeControl","treeFlattener","getFiles","isDir","getDownloadLink","listToTree","Xn","AdminComponent","function","activeTab","DecodeUriPipe","FileSizePipe","parseFloat","DownloadMonitorComponent","stop","getUpdateStatus","originalQuery","processQuery","exists","started","startedHuman","finishedHuman","killed","changeDownload","cancelUrl","downloadUrl","deleteDownload","removeUrl","deleted","browseLink","urlParams","URLSearchParams","facetArray","getAll","valueString","displayOrder","facetVal","UserDownloadsComponent","getAllDownloads","downloads","MonitorComponent","jobId","queryLoad","statistics","max","loadJob","stats","extractFail","extractPass","persistFail","persistPass","processedFail","processedPass","humanizeFields","mixResultDisplay","changeEllipses","recordsExtractedFailed","recordsExtractedSuccess","recordsPersistedFailed","recordsPersistedSuccess","recordsProcessedFailed","recordsProcessedSuccess","dynamic","estimatedTimeLeft","humanTimeLeft","humanize","averagePersistRate","averageTimeToPersist","humanTimeTotal","humanTimeEstimate","sent","ellipses","CanActivateAdmin","UnauthorizedComponent","SubstanceSsg4mService","La","section_r29","SubstanceSsg4ManufactureFormComponent","substanceSsg4mService","jsLibScriptUrls","jsonFileName","routes","AppRoutingModule","AppComponent","iconRegistry","googleAnalyticsService","addSvgIcon","bypassSecurityTrustResourceUrl","startupService","load","MainNotificationModule","dynamicComponentManifests","StructureDetailsModule","SubstanceAuditInfoModule","SubstanceCodesModule","SubstanceSubunitsModule","SubstanceMoietiesModule","SubstanceNamesModule","SubstanceNotesModule","SubstanceOverviewModule","SubstanceReferencesModule","SubstanceRelationshipsVisualizationModule","SubstanceRelationshipsModule","SubstanceConceptDefinitionModule","SubstancePolymerStructureModule","SubstanceMonomersModule","SubstanceStructuralUnitsModule","SubstanceMixtureComponentsModule","SubstanceModificationsModule","SubstanceDisulfideLinksModule","SubstanceOtherLinksModule","SubstanceGlycosylationModule","SubstanceNaSugarsModule","SubstanceNaLinkagesModule","SubstancePropertiesModule","SubstanceConstituentsModule","SubstancePrimaryDefinitionModule","SubstanceAlternativeDefinitionModule","SubstanceVariantConceptsModule","SubstanceMixtureSourceModule","SubstanceMixtureParentModule","SubstanceHierarchyModule","SubstanceHistoryModule","SubstanceSsgParentSubstanceModule","SubstanceSsg1ParentModule","SubstanceSsgGradeModule","SubstanceSsgDefinitionModule","SubstanceFormDefinitionModule","SubstanceFormReferencesModule","SubstanceFormNamesModule","SubstanceFormStructureModule","SubstanceFormMoietiesModule","SubstanceFormCodesModule","SubstanceFormRelationshipsModule","SubstanceFormNotesModule","SubstanceFormPropertiesModule","SubstanceFormSubunitsModule","SubstanceFormOtherLinksModule","SubstanceFormDisulfideLinksModule","SubstanceFormGlycosylationModule","SubstanceFormStructuralModificationsModule","SubstanceFormAgentModificationsModule","SubstanceFormPhysicalModificationsModule","SubstanceFormProteinDetailsModule","NucleicAcidDetailsFormModule","SubstanceFormLinksModule","SubstanceFormSugarsModule","SubstanceFormMixtureDetailsModule","SubstanceFormMixtureComponentsModule","SubstanceFormStructurallyDiverseSourceModule","SubstanceFormStructurallyDiverseOrganismModule","SubstanceFormConstituentsModule","SubstanceFormPolymerClassificationModule","SubstanceFormMonomersModule","SubstanceFormStructuralUnitsModule","SubstanceFormChangeReasonModule","SsgParentSubstanceFormModule","SsgGradeFormModule","SsgDefinitionFormModule","AuthModule","BrowserAnimationsModule","AuthInterceptor","req","authToken","handle","AdminModule","MatTreeModule","GuidedSearchModule","CanActivateAdminPage","GlobalErrorHandler","Ssg4mStepViewDialogModule","SubstanceSsg4mModule","AppModule","bootstrap","ErrorHandler","useClass","configServiceFactory","HTTP_INTERCEPTORS","BrowserModule","HttpClientModule","HttpClientJsonpModule","EnvironmentModule","enableProdMode","__NgCli_bootstrap_1","bootstrapModule","GetIntrinsic","require","callBind","$indexOf","exports","allowMissing","intrinsic","$apply","$call","$reflectApply","$gOPD","$defineProperty","$max","originalFunction","func","desc","configurable","applyBind","modules","installedModules","moduleId","__webpack_require__","getter","defineProperty","enumerable","toStringTag","__esModule","ns","stringUtilities_1","cronParser_1","ExpressionDescriptor","expression","expressionParts","locales","i18n","warn","en","use24HourTimeFormat","use24HourTimeFormatByDefault","_a","_b","_c","throwExceptionOnParseError","_d","verbose","dayOfWeekStartIndexZero","_f","getFullDescription","initialize","localesLoader","specialCharacters","parser","CronParser","timeSegment","getTimeOfDayDescription","dayOfMonthDesc","getDayOfMonthDescription","monthDesc","getMonthDescription","dayOfWeekDesc","getDayOfWeekDescription","yearDesc","getYearDescription","transformVerbosity","toLocaleUpperCase","ex","anErrorOccuredWhenGeneratingTheExpressionD","secondsExpression","minuteExpression","hourExpression","StringUtilities","containsAny","hourParts","at","formatTime","spaceAnd","secondsDescription","getSecondsDescription","minutesDescription","getMinutesDescription","hoursDescription","getHoursDescription","minuteParts","everyMinuteBetweenX0AndX1","atSpace","_this","getSegmentDescription","everySecond","everyX0Seconds","secondsX0ThroughX1PastTheMinute","atX0SecondsPastTheMinute","atX0SecondsPastTheMinuteGt20","everyMinute","everyX0Minutes","minutesX0ThroughX1PastTheHour","everyHour","atX0MinutesPastTheHour","atX0MinutesPastTheHourGt20","everyX0Hours","betweenX0AndX1","atX0","daysOfWeekNames","daysOfTheWeek","commaEveryDay","commaEveryX0DaysOfTheWeek","commaX0ThroughX1","dayOfWeekOfMonthDescription","dayOfWeekOfMonthNumber","first","third","fourth","fifth","commaOnThe","spaceX0OfTheMonth","commaOnTheLastX0OfTheMonth","commaAndOnX0","commaOnlyOnX0","monthNames","monthsOfTheYear","commaEveryX0Months","commaMonthX0ThroughMonthX1","commaOnlyInMonthX0","commaOnlyInX0","commaOnTheLastDayOfTheMonth","commaOnTheLastWeekdayOfTheMonth","weekDayNumberMatches","dayNumber","dayString","firstWeekday","weekdayNearestDayX0","commaOnTheX0OfTheMonth","lastDayOffSetMatches","offSetDays","commaDaysBeforeTheLastDayOfTheMonth","lastDay","dayX0","commaEveryX0Days","commaBetweenDayX0AndX1OfTheMonth","commaOnDayX0OfTheMonth","getFullYear","commaEveryX0Years","commaYearX0ThroughYearX1","commaOnlyInYearX0","allDescription","getSingleItemDescription","getIntervalDescriptionFormat","getBetweenDescriptionFormat","getDescriptionFormat","segments","betweenSegmentDescription","generateBetweenSegmentDescription","rangeItemDescription","commaStartingX0","descriptionContent","betweenExpression","betweenSegments","betweenSegment1Description","betweenSegment2Description","betweenDescriptionFormat","secondExpression","period","setPeriodBeforeTime","getPeriod","useVerboseFormat","pm","am","template","shift","searchStrings","parsed","extractParts","normalize","dowDigits","dowDigitsAdjusted","SUN","MON","TUE","WED","THU","FRI","SAT","day","JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC","month","stepRangeThrough","assertNoInvalidCharacters","partDescription","invalidChars","commaEveryHour","expressionDescriptor_1","enLocaleLoader_1","enLocaleLoader","en_1","availableLocales","is_ie","navigator","userAgent","is_safari","env","xml_decl","namespace","tabsize","snapshots","renderXml","XSLTProcessor","selectSingleNode","xsl_template","importStylesheet","transformToFragment","removeAttribute","extend","nodeType","toXML","gatherTemplates","sorter","defer","xmlFromString","registerTemplate","getSnapshot","createSnapshot","doc","cloneNode","childNodes","nodeName","createFacetTemplate","selectNodes","parentNode","concatFacet","ActiveXObject","loadXML","setProperty","evaluate","createNSResolver","documentElement","XPathResult","ORDERED_NODE_SNAPSHOT_TYPE","snapshotLength","snapshotItem","prettyPrint","XMLSerializer","serializeToString","fill","toJSON","textContent","attributes","nodeValue","hasChildNodes","firstChild","ownerDocument","interpreter","rx_validate_name","rx_node","rx_constructor","rx_namespace","rx_data","rx_function","to_xml_str","hash_to_xml","escape_xml","scalar_to_xml","Function","compiled","xTransform","trace","matchTrace","ownerElement","x10","work_handler","tree","postMessage","setup","webkitURL","Worker","onmessage","off","call_handler","detail","compile","stack","isCanceled","cancelBubble","sJSON","eval","NodeList","xsldoc","transformNode","hasOwn","fn","TypeError","ERROR_MESSAGE","toStr","funcType","bound","binder","boundLength","boundArgs","Empty","implementation","$SyntaxError","SyntaxError","$Function","$TypeError","getEvalledConstructor","expressionSyntax","getOwnPropertyDescriptor","throwTypeError","ThrowTypeError","calleeThrows","gOPDthrows","hasSymbols","getProto","getPrototypeOf","__proto__","needsEval","TypedArray","Uint8Array","INTRINSICS","AggregateError","ArrayBuffer","Atomics","BigInt","DataView","decodeURI","encodeURI","EvalError","Float32Array","Float64Array","FinalizationRegistry","Int8Array","Int16Array","Int32Array","isFinite","Map","Proxy","RangeError","ReferenceError","Reflect","Set","SharedArrayBuffer","Uint8ClampedArray","Uint16Array","Uint32Array","URIError","WeakMap","WeakRef","WeakSet","doEval","gen","LEGACY_ALIASES","$concat","$spliceApply","$replace","$strSlice","rePropName","reEscapeChar","stringToPath","last","quote","subString","getBaseIntrinsic","intrinsicName","intrinsicBaseName","intrinsicRealName","skipFurtherCaching","isOwn","exportName","VENDOR_PREFIXES","TEST_ELEMENT","round","timeout","bindFn","arg","isArray","each","deprecationMessage","output","nextKey","deprecate","dest","merge","child","base","childP","baseP","_super","val1","val2","types","splitStr","findByKey","inArray","prefix","camelProp","_uniqueId","defaultView","parentWindow","SUPPORT_TOUCH","SUPPORT_POINTER_EVENTS","prefixed","SUPPORT_ONLY_TOUCH","INPUT_TYPE_TOUCH","INPUT_TYPE_MOUSE","PROPS_XY","PROPS_CLIENT_XY","manager","callback","inputTarget","domHandler","ev","boolOrFn","enable","eventType","pointersLen","pointers","changedPointersLen","changedPointers","isFirst","isFinal","INPUT_END","session","pointersLength","firstInput","simpleCloneInputData","Hn","firstMultiple","offsetCenter","getCenter","timeStamp","deltaTime","angle","getAngle","distance","getDistance","offset","offsetDelta","prevDelta","prevInput","deltaX","deltaY","computeDeltaXY","offsetDirection","getDirection","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","scale","getScale","rotation","getRotation","maxPointers","Xt","velocity","velocityX","velocityY","lastInterval","computeIntervalInputData","hasParent","srcEvent","computeInputData","recognize","clientX","clientY","p1","p2","props","sqrt","atan2","PI","Input","evEl","addEventListeners","evTarget","evWin","getWindowForElement","destroy","removeEventListeners","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","MOUSE_ELEMENT_EVENTS","MOUSE_WINDOW_EVENTS","pressed","inherit","MouseInput","button","which","pointerType","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","MSPointerEvent","PointerEvent","PointerEventInput","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","Gn","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","all","touches","changed","changedTouches","uniqueArray","SingleTouchInput","normalizeSingleTouches","TOUCH_INPUT_MAP","TOUCH_TARGET_EVENTS","targetIds","allTouches","INPUT_START","targetTouches","changedTargetTouches","touch","TouchInput","mouse","primaryTouch","lastTouches","eventData","setLastTouch","lastTouch","lts","dx","dy","getTouches","TouchMouseInput","inputEvent","inputData","isMouse","sourceCapabilities","firesTouchEvents","recordTouches","isSyntheticEvent","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_NONE","TOUCH_ACTION_PAN_X","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MAP","touchMap","cssSupports","CSS","supports","getTouchActionProps","defaults","uniqueId","ifUndefined","simultaneous","requireFail","otherRecognizer","recognizer","Recognizer","AttrRecognizer","pX","pY","_timer","_input","pTime","pCenter","recognizers","Hammer","preset","Manager","handlers","oldCssProps","inputClass","ge","inputHandler","createInputInstance","touchAction","TouchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","Ot","compute","actions","update","getTouchAction","inStr","hasPanX","hasPanY","cleanTouchActions","preventDefaults","prevented","hasNone","DIRECTION_LEFT","DIRECTION_UP","preventSrc","invokeArrayArg","getRecognizerByNameIfManager","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","stateStr","additionalEvent","tryEmit","canEmit","STATE_FAILED","inputDataClone","reset","STATE_RECOGNIZED","STATE_BEGAN","attrTest","optionPointers","isRecognized","PanRecognizer","threshold","DIRECTION_HORIZONTAL","directionTest","hasMoved","directionStr","PinchRecognizer","PressRecognizer","validPointers","validMovement","validTime","setTimeoutContext","RotateRecognizer","SwipeRecognizer","TapRecognizer","taps","interval","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","force","stopped","curRecognizer","existing","gestureEvent","createEvent","initEvent","gesture","triggerDomEvent","INPUT_MOVE","INPUT_CANCEL","STATE_POSSIBLE","STATE_CHANGED","STATE_ENDED","STATE_CANCELLED","DIRECTION_NONE","DIRECTION_RIGHT","DIRECTION_DOWN","DIRECTION_VERTICAL","DIRECTION_ALL","Tap","Pan","Swipe","Pinch","Rotate","Press","define","origSymbol","hasSymbolSham","getOwnPropertySymbols","sym","symObj","getOwnPropertyNames","syms","propertyIsEnumerable","descriptor","ctor","superCtor","super_","writable","TempCtor","hasToStringTag","isStandardArguments","isLegacyArguments","callee","supportsStandardArguments","GeneratorFunction","fnToStr","isFnRegex","generatorFunc","getGeneratorFunc","availableTypedArrays","callBound","$toString","globalThis","typedArrays","array","$slice","toStrTags","gOPD","typedArray","proto","superProto","anyTrue","tryTypedArrays","FUNC_ERROR_TEXT","HASH_UNDEFINED","PLACEHOLDER","WRAP_PARTIAL_FLAG","INFINITY","MAX_SAFE_INTEGER","MAX_ARRAY_LENGTH","wrapFlags","argsTag","arrayTag","boolTag","dateTag","errorTag","funcTag","genTag","mapTag","numberTag","objectTag","promiseTag","regexpTag","setTag","stringTag","symbolTag","weakMapTag","arrayBufferTag","dataViewTag","float32Tag","float64Tag","int8Tag","int16Tag","int32Tag","uint8Tag","uint8ClampedTag","uint16Tag","uint32Tag","reEmptyStringLeading","reEmptyStringMiddle","reEmptyStringTrailing","reEscapedHtml","reUnescapedHtml","reHasEscapedHtml","reHasUnescapedHtml","reEscape","reEvaluate","reInterpolate","reIsDeepProp","reIsPlainProp","reRegExpChar","reHasRegExpChar","reTrimStart","reWhitespace","reWrapComment","reWrapDetails","reSplitDetails","reAsciiWord","reForbiddenIdentifierChars","reEsTemplate","reFlags","reIsBadHex","reIsBinary","reIsHostCtor","reIsOctal","reIsUint","reLatin","reNoMatch","reUnescapedString","rsAstralRange","rsComboRange","rsComboMarksRange","rsDingbatRange","rsLowerRange","rsUpperRange","rsVarRange","rsBreakRange","rsMathOpRange","rsAstral","rsBreak","rsCombo","rsDigits","rsDingbat","rsLower","rsMisc","rsFitz","rsNonAstral","rsRegional","rsSurrPair","rsUpper","rsMiscLower","rsMiscUpper","rsOptContrLower","rsOptContrUpper","reOptMod","rsModifier","rsOptVar","rsSeq","rsEmoji","rsSymbol","reApos","reComboMark","reUnicode","reUnicodeWord","reHasUnicode","reHasUnicodeWord","contextProps","templateCounter","typedArrayTags","cloneableTags","stringEscapes","freeParseFloat","freeParseInt","freeGlobal","freeSelf","root","freeExports","freeModule","moduleExports","freeProcess","nodeUtil","binding","nodeIsArrayBuffer","isArrayBuffer","nodeIsDate","nodeIsMap","isMap","nodeIsRegExp","isRegExp","nodeIsSet","isSet","nodeIsTypedArray","isTypedArray","thisArg","setter","iteratee","accumulator","predicate","resIndex","baseIndexOf","comparator","initAccum","asciiSize","baseProperty","collection","eachFunc","fromIndex","fromRight","strictIndexOf","baseFindIndex","baseIsNaN","baseSum","trimmedEndIndex","arrayMap","strSymbols","chrSymbols","placeholder","deburrLetter","basePropertyOf","escapeHtmlChar","chr","hasUnicode","unicodeSize","unicodeToArray","asciiToArray","unescapeHtmlChar","uid","pick","arrayProto","objectProto","coreJsData","funcToString","idCounter","maskSrcKey","IE_PROTO","nativeObjectToString","objectCtorString","oldDash","reIsNative","Buffer","allocUnsafe","getPrototype","overArg","objectCreate","spreadableSymbol","isConcatSpreadable","symIterator","symToStringTag","getNative","ctxClearTimeout","ctxNow","ctxSetTimeout","nativeCeil","ceil","nativeFloor","nativeGetSymbols","nativeIsBuffer","isBuffer","nativeIsFinite","nativeJoin","nativeKeys","nativeMax","nativeMin","nativeNow","nativeParseInt","nativeRandom","nativeReverse","nativeCreate","metaMap","realNames","dataViewCtorString","toSource","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","symbolProto","symbolValueOf","symbolToString","isObjectLike","LazyWrapper","LodashWrapper","wrapperClone","baseCreate","chainAll","__wrapped__","__actions__","__chain__","__index__","__values__","__dir__","__filtered__","__iteratees__","__takeCount__","__views__","entries","__data__","MapCache","ListCache","inherited","isArr","isArg","isArguments","isBuff","isType","skipIndexes","baseTimes","isIndex","baseRandom","shuffleSelf","copyArray","baseClamp","eq","baseAssignValue","objValue","baseEach","copyObject","paths","lower","upper","bitmask","customizer","isDeep","isFlat","isFull","initCloneArray","getTag","isFunc","cloneBuffer","initCloneObject","getSymbolsIn","copySymbolsIn","keysIn","baseAssignIn","getSymbols","copySymbols","baseAssign","Ctor","cloneArrayBuffer","dataView","buffer","byteOffset","byteLength","cloneDataView","cloneTypedArray","regexp","cloneRegExp","symbol","cloneSymbol","initCloneByTag","Stack","stacked","Ef","subValue","baseClone","getAllKeysIn","getAllKeys","arrayEach","assignValue","wait","arrayIncludes","isCommon","valuesLength","baseUnary","He","arrayIncludesWith","cacheHas","SetCache","outer","computed","valuesIndex","lodash","templateSettings","escape","interpolate","variable","baseLodash","Hash","assocIndexOf","getMapData","pairs","LARGE_ARRAY_SIZE","createBaseEach","baseForOwn","baseEachRight","baseForOwnRight","isSymbol","isStrict","isFlattenable","S","baseFlatten","arrayPush","baseFor","createBaseFor","baseForRight","arrayFilter","isFunction","castPath","toKey","keysFunc","symbolsFunc","unmasked","getRawTag","objectToString","arrays","othLength","othIndex","caches","maxLength","seen","baseGetTag","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","equalArrays","convert","mapToArray","setToArray","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","isPartial","objProps","objLength","objStacked","othStacked","skipCtor","othValue","compared","objCtor","othCtor","equalObjects","baseIsEqualDeep","baseIsEqual","matchData","noCustomizer","srcValue","COMPARE_PARTIAL_FLAG","isMasked","baseMatchesProperty","baseMatches","isPrototype","isArrayLike","getMatchData","matchesStrictComparable","baseIsMatch","isKey","isStrictComparable","hasIn","srcIndex","mergeFunc","safeGet","assignMergeValue","newValue","isTyped","isArrayLikeObject","Ei","Hi","isPlainObject","yl","toPlainObject","baseMergeDeep","baseMerge","iteratees","orders","baseGet","getIteratee","comparer","baseSortBy","baseMap","criteria","objCriteria","othCriteria","ordersLength","compareAscending","compareMultiple","baseSet","baseIndexOfWith","indexes","previous","baseUnset","setToString","overRest","arraySample","nested","baseSetData","Ji","baseSetToString","al","constant","retHighest","mid","baseSortedIndexBy","valIsNaN","valIsNull","valIsSymbol","valIsUndefined","othIsDefined","othIsNull","othIsReflexive","othIsSymbol","setLow","En","baseToString","createSet","seenIndex","updater","isDrop","baseSlice","arrayReduce","baseUniq","baseDifference","assignFunc","valsLength","castRest","baseRest","arrayBuffer","valIsDefined","valIsReflexive","partials","holders","isCurried","argsIndex","argsLength","holdersLength","leftIndex","leftLength","rangeLength","isUncurried","holdersIndex","rightIndex","rightLength","initializer","arrayAggregator","baseAggregator","assigner","sources","guard","isIterateeCall","iterable","methodName","stringToArray","trailing","castSlice","words","deburr","thisBinding","findIndexFunc","flatRest","funcs","prereq","thru","wrapper","getFuncName","funcName","isLaziable","WRAP_ARY_FLAG","plant","partialsRight","holdersRight","argPos","ary","arity","isAry","isBind","isBindKey","WRAP_CURRY_FLAG","isFlip","createCtor","getHolder","holdersCount","countHolders","composeArgs","composeArgsRight","newHolders","replaceHolders","createRecurry","createHybrid","xn","reorder","toIteratee","baseInverter","operator","baseToNumber","arrayFunc","chars","charsLength","baseRepeat","stringSize","toFinite","baseRange","toNumber","wrapFunc","isCurry","newData","setWrapToString","precision","toInteger","hn","noop","setToPairs","baseToPairs","srcBitmask","newBitmask","WRAP_BIND_FLAG","mergeData","createCurry","createPartial","createBind","customDefaultsMerge","arrLength","arrStacked","arrValue","arraySome","flatten","baseGetAllKeys","otherFunc","baseIteratee","isKeyable","getValue","baseIsNative","stubArray","hasFunc","isLength","ctorString","isMaskable","stubFalse","otherArgs","oldArray","shortOut","details","insertWrapDetails","updateWrapDetails","getWrapDetails","lastCalled","stamp","rand","memoize","memoizeCapped","difference","differenceBy","differenceWith","intersection","mapped","castArrayLikeObject","baseIntersection","intersectionBy","intersectionWith","pull","pullAll","basePullAll","pullAt","baseAt","basePullAt","union","unionBy","unionWith","unzip","without","xor","baseXor","xorBy","xorWith","zip","zipWith","unzipWith","interceptor","wrapperAt","countBy","createAggregator","createFind","findLast","findLastIndex","arrayEachRight","groupBy","invokeMap","baseInvoke","keyBy","partition","sortBy","baseOrderBy","createWrap","bindKey","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","timerExpired","invokeFunc","timeSinceLastCall","shouldInvoke","trailingEdge","timeWaiting","remainingWait","isInvoking","leadingEdge","debounced","flush","baseDelay","resolver","memoized","Cache","overArgs","transforms","funcsLength","partial","partialRight","rearg","gt","createRelationalOperation","baseGt","gte","baseIsArguments","baseLt","lte","iteratorToArray","remainder","baseTrim","isBinary","createAssigner","assignIn","assignInWith","assignWith","propsIndex","propsLength","defaultsDeep","mergeWith","hasPath","baseHasIn","invert","createInverter","invertBy","invoke","arrayLikeKeys","baseKeys","nativeKeysIn","isProto","baseKeysIn","omit","CLONE_DEEP_FLAG","customOmitClone","basePickBy","basePick","toPairs","createToPairs","toPairsIn","baseValues","camelCase","createCompounder","capitalize","upperFirst","kebabCase","lowerCase","lowerFirst","createCaseFirst","snakeCase","startCase","upperCase","hasUnicodeWord","unicodeWords","asciiWords","attempt","bindAll","methodNames","flow","createFlow","flowRight","methodOf","baseFunctions","chain","over","createOver","overEvery","arrayEvery","overSome","basePropertyDeep","range","createRange","rangeRight","createMathOperation","augend","addend","createRound","divide","dividend","divisor","multiply","multiplier","multiplicand","subtract","minuend","subtrahend","castArray","chunk","compact","cond","conforms","baseConformsTo","baseConforms","curry","curryRight","debounce","drop","dropRight","dropRightWhile","baseWhile","dropWhile","toLength","baseFill","baseFilter","flatMapDeep","flatMapDepth","flattenDeep","flattenDepth","flip","fromPairs","functions","functionsIn","initial","mapKeys","mapValues","matchesProperty","mixin","negate","nthArg","baseNth","omitBy","pickBy","once","propertyOf","pullAllBy","pullAllWith","reject","rest","sampleSize","arraySampleSize","baseSampleSize","setWith","shuffle","arrayShuffle","baseShuffle","sortedUniq","baseSortedUniq","sortedUniqBy","separator","limit","spread","tail","takeRight","takeRightWhile","takeWhile","tap","throttle","toPath","isArrLike","unary","uniqBy","uniqWith","unset","baseUpdate","castFunction","updateWith","valuesIn","wrap","zipObject","baseZipObject","zipObjectDeep","entriesIn","extendWith","clamp","cloneDeepWith","cloneWith","conformsTo","defaultTo","endsWith","escapeRegExp","every","baseEvery","findKey","baseFindKey","findLastKey","forEachRight","forIn","forInRight","forOwn","forOwnRight","baseHas","head","inRange","te","baseInRange","isBoolean","isElement","isEmpty","isEqual","isEqualWith","isMatch","isMatchWith","isNative","isNil","isNull","isSafeInteger","isUndefined","isWeakMap","isWeakSet","lastIndexOf","strictLastIndexOf","baseExtremum","maxBy","mean","baseMean","meanBy","minBy","stubObject","stubString","stubTrue","nth","noConflict","pad","strLength","createPadding","padEnd","padStart","radix","floating","baseReduce","reduceRight","arrayReduceRight","repeat","runInContext","sample","baseSample","baseSome","sortedIndex","baseSortedIndex","sortedIndexBy","sortedIndexOf","sortedLastIndex","sortedLastIndexBy","sortedLastIndexOf","sum","sumBy","settings","customDefaultsAssignIn","isEscaping","isEvaluating","importsKeys","importsValues","reDelimiters","sourceURL","escapeValue","interpolateValue","esTemplateValue","evaluateValue","escapeStringChar","times","toLower","toSafeInteger","toUpper","charsStartIndex","charsEndIndex","trimEnd","trimStart","truncate","omission","newEnd","unescape","eachRight","isFilter","takeName","dropName","checkIteratee","isTaker","lodashFunc","retUnwrapped","isLazy","useLazy","isHybrid","isUnwrapped","onlyLazy","chainName","dir","isRight","getView","iterLength","takeCount","baseWrapperValue","iterIndex","commit","wrapped","defineLocale","monthsShort","weekdays","weekdaysShort","weekdaysMin","meridiemParse","isPM","meridiem","isLower","longDateFormat","LT","LTS","LL","LLL","LLLL","calendar","sameDay","nextDay","nextWeek","lastWeek","sameElse","relativeTime","future","past","ss","mm","hh","dd","MM","yy","dayOfMonthOrdinalParse","ordinal","week","dow","doy","pluralForm","plurals","pluralize","withoutSuffix","isFuture","weekdaysParseExact","postformat","symbolMap","preparse","numberMap","suffixes","plural","standalone","isFormat","relativeTimeWithPlural","lastDigit","last2Digits","meridiemHour","monthsShortRegex","monthsParseExact","mutationTable","softMutation","mutation","lastNumber","monthsParse","monthsRegex","minWeekdaysParse","weekdaysParse","fullWeekdaysParse","shortWeekdaysParse","monthsStrictRegex","monthsShortStrictRegex","longMonthsParse","shortMonthsParse","relativeTimeWithMutation","token","translate","lll","llll","processRelativeTime","monthsNominativeEl","monthsGenitiveEl","momentToFormat","_monthsGenitiveEl","_monthsNominativeEl","calendarEl","mom","_calendarEl","monthsShortDot","invalidDate","numbersPast","numbersFuture","verbalNumber","monthsShortWithDots","monthsShortWithoutDots","weekEndings","eras","since","narrow","abbr","until","eraYearOrdinalRegex","eraYearOrdinalParse","$0","$2","isUpper","eifelerRegelAppliesToNumber","translateSingular","special","relativeTimeWithSingular","translator","correctGrammaticalCase","wordKey","relativeTimeMr","monthsNominative","monthsSubjective","numbersNouns","numberNoun","hundred","ten","one","numberAsNoun","hm","nominative","accusative","genitive","processHoursFunction","hookCallback","hasOwnProp","strict","createLocalOrUTC","_pf","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","rfc2822","weekdayMismatch","_isValid","flags","getParsingFlags","parsedParts","isNowValid","invalidWeekday","_strict","bigHour","isFrozen","createUTC","NaN","fun","len","momentProperties","hooks","updateInProgress","_isAMomentObject","_l","_tzm","_isUTC","_offset","_locale","copyConfig","updateOffset","Moment","msg","suppressDeprecationWarnings","firstTime","deprecationHandler","deprecations","parentConfig","childConfig","le","targetLength","forceSign","absNumber","pow","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","padded","zeroFill","localeData","expandFormat","removeFormattingTokens","makeFormatFunction","replaceLongDateFormatTokens","aliases","shorthand","inputObject","normalizedProp","normalizedInput","normalizeUnits","priorities","year","argumentForCoercion","coercedNumber","absFloor","keepTime","set$1","isLeapYear","toInt","daysInMonth","regexes","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchWord","strictRegex","regexEscape","matched","p3","p4","unescapeFormat","tokens","addParseToken","_w","modMonth","addFormatToken","addUnitAlias","addUnitPriority","addRegexToken","defaultLocaleMonths","defaultLocaleMonthsShort","MONTHS_IN_FORMAT","defaultMonthsShortRegex","defaultMonthsRegex","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","dayOfMonth","setMonth","shortPieces","longPieces","mixedPieces","cmpLenRev","_monthsRegex","_monthsShortRegex","_monthsStrictRegex","_monthsShortStrictRegex","parseTwoDigitYear","getSetYear","makeGetSet","ms","setFullYear","UTC","getUTCFullYear","setUTCFullYear","fwd","createUTCDate","getUTCDay","weekday","resYear","resDayOfYear","dayOfYear","firstWeekOffset","daysInYear","Di","resWeek","weekOffset","weeksInYear","weekOffsetNext","addWeekParseToken","ws","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","minp","shortp","longp","minPieces","_weekdaysRegex","_weekdaysShortRegex","_weekdaysMinRegex","_weekdaysStrictRegex","_weekdaysShortStrictRegex","_weekdaysMinStrictRegex","lowercase","_meridiemParse","hFormat","matchMeridiem","kInput","_isPm","_meridiem","pos1","pos2","getSetHour","globalLocale","baseConfig","w","ww","localeFamilies","arr1","arr2","minl","oldLocale","_abbr","aliasedRequire","getSetGlobalLocale","deprecateSimple","_config","parentLocale","loadLocale","Locale","mergeConfigs","normalizeLocale","commonPrefix","chooseLocale","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","allowTime","dateFormat","timeFormat","tzFormat","configFromStringAndFormat","yearStr","parsedArray","preprocessRFC2822","monthStr","dayStr","hourStr","minuteStr","secondStr","untruncateYear","extractFromRFC2822Strings","weekdayStr","parsedInput","getDay","checkWeekday","obsOffset","militaryOffset","numOffset","calculateOffset","setUTCMinutes","getUTCMinutes","expectedWeekday","yearToUse","nowValue","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","currentDateArray","weekYear","weekdayOverflow","curWeek","GG","weekOfYear","createLocal","_week","gg","Mt","dayOfYearFromWeeks","_dayOfYear","dayOfYearFromWeekInfo","_nextDay","createDate","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","getParseRegexForToken","addTimeToArrayFromToken","isPm","meridiemFixWrap","erasConvertYear","configFromArray","checkOverflow","configFromRFC2822","configFromISO","createInvalid","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","configFromStringAndArray","createFromInputFallback","configFromString","normalizeObjectUnits","configFromObject","configFromInput","isUTC","isObjectEmpty","prepareConfig","createFromConfig","prototypeMin","prototypeMax","moments","ordering","quarters","quarter","weeks","isoWeek","milliseconds","unitHasDecimal","isDurationValid","_milliseconds","_days","_months","_bubble","Duration","utcOffset","sign","offsetFromString","chunkOffset","matcher","model","setTime","getTimezoneOffset","aspNetRegex","isoRegex","diffRes","isDuration","absRound","parseIso","We","cloneWithOffset","isBefore","positiveMomentsDifference","momentsDifference","inp","isAfter","tmp","addSubtract","createDuration","isAdding","invalid","createAdder","arrayTest","dataTypeTest","isNumberOrStringArray","objectTest","propertyTest","isMomentInputObject","monthDiff","wholeMonthDiff","anchor","newLocaleData","defaultFormat","defaultFormatUtc","lang","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_400_YEARS","erasAbbrRegex","abbrPieces","namePieces","narrowPieces","_erasRegex","_erasNameRegex","_erasAbbrRegex","_erasNarrowRegex","weeksTarget","setWeekAll","dayOfYearData","matchEraAbbr","erasNameRegex","erasNarrowRegex","erasParse","_eraYearOrdinalRegex","isoWeekYear","addWeekYearFormatToken","_dayOfMonthOrdinalParse","_ordinalParse","_dayOfMonthOrdinalParseLenient","getSetDayOfMonth","getSetMinute","getSetMillisecond","getSetSecond","parseMs","formats","isMomentInput","isCalendarSpec","sod","startOf","calendarFormat","asFloat","zoneDelta","endOf","startOfDate","utcStartOfDate","localStartOfDate","isoWeekday","mod$1","inputString","isUtc","formatMoment","toNow","invalidAt","localInput","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","parsingFlags","prioritized","unitsObj","getPrioritizedUnits","toObject","toDate","toISOString","keepOffset","inspect","zone","isLocal","for","unix","creationData","eraName","eraNarrow","eraAbbr","eraYear","getSetWeekYearHelper","getSetMonth","isoWeeks","weekInfo","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","parseWeekday","parseIsoWeekday","keepLocalTime","keepMinutes","localAdjust","getDateOffset","_changeInProgress","parseZone","tZone","hasAlignedHourOffset","isDST","isUtcOffset","zoneAbbr","zoneName","dates","isDSTShifted","_isDSTShifted","array1","array2","dontConvert","lengthDiff","diffs","compareArrays","proto$1","get$1","out","localeSorted","_calendar","_longDateFormat","formatUpper","tok","_invalidDate","_ordinal","preParsePostFormat","_relativeTime","pastFuture","_eras","computeErasParse","_monthsShort","_monthsParseExact","handleStrictParse","computeMonthsParse","firstDayOfYear","firstDayOfWeek","_weekdays","shiftWeekdays","_weekdaysMin","_weekdaysShort","_weekdaysParseExact","handleStrictParse$1","_fullWeekdaysParse","computeWeekdaysParse","langData","mathAbs","as","asMilliseconds","makeAs","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","makeGetter","thresholds","abs$1","totalSign","ymSign","daysSign","hmsSign","proto$2","addSubtract$1","daysToMonths","monthsToDays","monthsFromDays","absCeil","argWithSuffix","argThresholds","withSuffix","th","posNegDuration","substituteTimeAgo","relativeTime$1","toISOString$1","toIsoString","setHookCallback","listMonthsImpl","listWeekdaysImpl","updateLocale","tmpLocale","relativeTimeRounding","roundingFunction","relativeTimeThreshold","myMoment","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","DATE","TIME","TIME_SECONDS","TIME_MS","WEEK","MONTH","rf","segment_r1","$implicit","expanded","_c0","a1","_c1","a2","_r8","NgxJsonViewerComponent_section_1_div_2_Template","NgxJsonViewerComponent_section_1_span_7_Template","NgxJsonViewerComponent_section_1_section_8_Template","ctx_r0","isExpandable","NgxJsonViewerComponent","cleanOnChange","parseKeyValue","segment","ɵcmp","inputs","decls","vars","consts","NgxJsonViewerComponent_section_1_Template","directives","ɵngcc1","styles","Op","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","innerFn","outerFn","tryLocsList","generator","Generator","Context","_invoke","GenStateSuspendedStart","GenStateExecuting","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","_sent","dispatchException","abrupt","tryCatch","GenStateSuspendedYield","makeInvokeMethod","IteratorPrototype","NativeIteratorPrototype","Gp","GeneratorFunctionPrototype","PromiseImpl","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","return","info","resultName","nextLoc","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","completion","pushTryEntry","iteratorMethod","isGeneratorFunction","genFun","mark","setPrototypeOf","awrap","defineIteratorMethods","AsyncIterator","iter","skipTempReset","prev","resetTryEntry","rootRecord","rval","exception","loc","caught","hasCatch","hasFinally","finallyEntry","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","BehaviorSubject","_value","hasError","thrownError","_throwIfClosed","fns","_subscribe","observable","observerOrNext","Subscriber","isObserver","isSubscription","isSubscriber","SafeSubscriber","errorContext","_trySubscribe","sink","promiseCtor","getPromiseCtor","Symbol_observable","operations","pipeFromArray","_bufferSize","_windowTime","_timestampProvider","dateTimestampProvider","_buffer","_infiniteTimeWindow","isStopped","_trimBuffer","_innerSubscribe","_checkFinalizedStatuses","adjustedBufferSize","ObjectUnsubscribedError","createErrorClass","observers","subject","AnonymousSubject","EMPTY_SUBSCRIPTION","Subscription","arrRemove","destination","COMPLETE_NOTIFICATION","createNotification","EMPTY_OBSERVER","handleStoppedNotification","nextNotification","_next","errorNotification","_error","_complete","_bind","ConsumerObserver","partialObserver","handleUnhandledError","captureError","reportUnhandledError","onStoppedNotification","timeoutProvider","UnsubscriptionError","initialTeardown","_parentage","_teardowns","teardown","execTeardown","_hasParent","_addParent","_removeParent","EMPTY","onUnhandledError","useDeprecatedSynchronousErrorHandling","useDeprecatedNextContext","scheduler","popScheduler","resultSelector","popResultSelector","argsArgArrayOrObject","observables","combineLatestInit","createObject","mapOneOrManyArgs","valueTransform","maybeSchedule","remainingFirstValues","hasFirstValue","execute","executeSchedule","mergeAll","concatAll","observableFactory","remainingCompletions","remainingEmissions","sourceIndex","hasValue","schedule","isInteropObservable","subscribeOn","observeOn","scheduleObservable","scheduleArray","isPromise","schedulePromise","isAsyncIterable","scheduleAsyncIterable","isIterable","Symbol_iterator","scheduleIterable","isReadableStreamLike","readableStreamLikeToAsyncGenerator","scheduleReadableStreamLike","createInvalidObservableTypeError","scheduled","nodeEventEmitterMethods","eventTargetMethods","jqueryMethods","eventName","fromEvent","isEventTarget","addListener","removeListener","isNodeStyleEventEmitter","toCommonHandlerRegistry","isJQueryStyleEventEmitter","subTarget","obs","fromInteropObservable","fromArrayLike","promise","fromPromise","fromAsyncIterable","fromIterable","readableStream","fromReadableStreamLike","asyncIterable","asyncIterable_1","asyncIterable_1_1","e_1","__awaiter","__asyncValues","concurrent","popNumber","errorOrErrorFactory","errorFactory","dueTime","intervalOrScheduler","asyncScheduler","intervalDuration","isScheduler","due","isValidDate","onNext","onComplete","onError","onFinalize","OperatorSubscriber","shouldUnsubscribe","durationSelector","durationSubscriber","isComplete","endDuration","cleanupDuration","selector","handledResult","project","activeTask","targetTime","emitWhenIdle","delayDurationSelector","subscriptionDelay","ignoreElements","delayWhen","mapTo","keySelector","defaultCompare","previousKey","currentKey","onBeforeNext","expand","innerSubScheduler","additionalTeardown","checkComplete","outerNext","doInnerSub","innerComplete","innerValue","bufferedValue","mergeInternals","connector","resetOnError","resetOnComplete","resetOnRefCountZero","wrapperSource","connection","resetConnection","hasCompleted","hasErrored","cancelReset","resetAndUnsubscribe","conn","handleReset","innerSubscriber","innerIndex","outerIndex","tapObserver","isUnsub","finalize","Action","work","intervalProvider","AsyncAction","pending","recycleAsyncId","requestAsyncId","_id","_scheduler","_execute","_delay","errorValue","errored","Scheduler","schedulerActionCtor","AsyncScheduler","SchedulerAction","_active","_scheduled","resolved","nextHandle","activeHandles","setImmediate","findAndClearHandle","clearImmediate","immediateProvider","AsapAction","AsapScheduler","flushId","asapScheduler","getSymbolIterator","getKeys","isPOJO","createImpl","ctorFunc","isRoot","errorThrown","parentSubscription","scheduleSubscription","lift","__asyncGenerator","getReader","releaseLock","readableStreamLikeToAsyncGenerator_1","hasLift","liftedSource","callOrApply","readUInt8","isArgumentsObject","whichTypedArray","BigIntSupported","SymbolSupported","ObjectToString","uncurryThis","numberValue","stringValue","booleanValue","bigIntValue","symbolValue","prototypeValueOf","isArrayBufferToString","working","isDataViewToString","isView","isDataView","isMapToString","isSetToString","isWeakMapToString","isWeakSetToString","SharedArrayBufferCopy","isSharedArrayBufferToString","checkBoxedPrimitive","isSharedArrayBuffer","isNumberObject","isStringObject","isBooleanObject","isBigIntObject","isSymbolObject","getOwnPropertyDescriptors","descriptors","formatRegExp","objects","noDeprecation","warned","throwDeprecation","traceDeprecation","debugs","debugEnvRegex","NODE_DEBUG","debugEnv","opts","stylize","stylizeNoColor","colors","showHidden","_extend","customInspect","stylizeWithColor","styleType","recurseTimes","primitive","simple","formatPrimitive","visibleKeys","arrayToHash","formatError","braces","toUTCString","formatProperty","formatArray","numLinesEst","reduceToSingleString","line","ar","pid","bold","italic","underline","inverse","white","grey","black","blue","cyan","green","magenta","red","yellow","null","getHours","getMinutes","getSeconds","origin","kCustomPromisifiedSymbol","reason","newReason","original","promiseResolve","promiseReject","defineProperties","maybeCb","nextTick","rej","callbackifyOnRejected","callbackified","foundName","dt","Ie","_t","qt","possibleNames","FileSelectDirective","addHiddenFileInput","fileInputElement","accept","onchange","selectedFile","JsdrawWrapperComponent","randomId","loadEditor","dojo","scil","Utils","_loadedAdditions","jsDrawOnLoad","afterSketcherMade","KetcherWrapperComponent","safeKetcherFilePath","ketcherFrame","ketcherOnLoad","contentWindow","AnimationBuilder","AnimationFactory","AUTO_STYLE","definitions","timings","steps","stateChangeExpr","expr","animation","NoopAnimationPlayer","_onDoneFns","_onStartFns","_onDestroyFns","_started","_destroyed","_finished","_position","parentPlayer","totalTime","hasStarted","_onStart","triggerMicrotask","scheduleMicroTask","_onFinish","phaseName","methods","AnimationGroupPlayer","_players","players","doneCount","destroyCount","startCount","player","onDone","onDestroy","_onDestroy","onStart","play","pause","restart","timeAtPosition","setPosition","longestPlayer","longestSoFar","getPosition","beforeDestroy","ɵPRE_STYLE","attr","CDK_DESCRIBEDBY_ID_PREFIX","CDK_DESCRIBEDBY_HOST_ATTRIBUTE","nextId","AriaDescriber","_document","_platform","_messageRegistry","_messagesContainer","hostElement","_canBeDescribed","getKey","setMessageId","messageElement","referenceCount","_createMessageElement","_isElementDescribedByMessage","_addMessageReference","_isElementNode","_removeMessageReference","registeredMessage","_deleteMessageElement","describedElements","querySelectorAll","_removeCdkDescribedByReferenceIds","_createMessagesContainer","containerClassName","serverContainers","messagesContainer","visibility","isBrowser","originalReferenceIds","getAriaReferenceIds","ids","existingId","addAriaReferencedId","filteredIds","removeAriaReferencedId","referenceIds","messageId","trimmedMessage","ariaLabel","ELEMENT_NODE","DOCUMENT","ɵprov","ListKeyManager","_items","_activeItemIndex","_activeItem","_wrap","_letterKeyStream","_typeaheadSubscription","_vertical","_allowedModifierKeys","_homeAndEnd","_skipPredicateFn","disabled","_pressedLetters","tabOut","change","QueryList","newItems","De","newIndex","shouldWrap","enabled","_horizontal","debounceInterval","letter","_getItemsArray","getLabel","setActiveItem","previousActiveItem","updateActiveItem","isModifierAllowed","modifier","Ze","TAB","DOWN_ARROW","setNextItemActive","UP_ARROW","setPreviousItemActive","RIGHT_ARROW","LEFT_ARROW","HOME","setFirstItemActive","END","setLastItemActive","hasModifierKey","ZERO","NINE","fromCharCode","_setActiveItemByIndex","_setActiveItemByDelta","itemArray","activeItem","delta","_setActiveInWrapMode","_setActiveInDefaultMode","fallbackDelta","ActiveDescendantKeyManager","setInactiveStyles","setActiveStyles","FocusKeyManager","_origin","InteractivityChecker","offsetHeight","getClientRects","hasGeometry","getComputedStyle","frameElement","getFrameElement","getWindow","getTabIndexValue","isVisible","tabIndexValue","WEBKIT","IOS","inputType","isPotentiallyTabbableIOS","FIREFOX","isInputElement","isHiddenInput","isNativeFormElement","isAnchorElement","isAnchorWithHref","hasValidTabIndex","isPotentiallyFocusable","isDisabled","ignoreVisibility","FocusTrap","_element","_checker","_ngZone","deferAnchors","_hasAttached","startAnchorListener","Ve","focusLastTabbableElement","endAnchorListener","focusFirstTabbableElement","_enabled","attachAnchors","_startAnchor","_endAnchor","_toggleAnchorTabIndex","startAnchor","endAnchor","_createAnchor","insertBefore","nextSibling","_executeOnStable","focusInitialElement","markers","_getFirstTabbableElement","_getLastTabbableElement","redirectToElement","isFocusable","focusableChild","_getRegionBoundary","isTabbable","tabbableChild","isEnabled","isStable","onStable","FocusTrapFactory","deferCaptureElements","CdkTrapFocus","_elementRef","_focusTrapFactory","_previouslyFocusedElement","focusTrap","coerceBooleanProperty","_autoCapture","autoCapture","_captureFocus","hasAttached","autoCaptureChange","firstChange","_getFocusedElementPierceShadowDom","focusInitialElementWhenReady","ɵdir","buttons","offsetX","offsetY","radiusX","radiusY","INPUT_MODALITY_DETECTOR_OPTIONS","INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS","ignoreKeys","ALT","CONTROL","MAC_META","META","SHIFT","modalityEventListenerOptions","normalizePassiveListenerOptions","passive","capture","InputModalityDetector","_mostRecentTarget","_modality","_lastTouchMs","_onKeydown","pt","_options","_getEventTarget","_onMousedown","isFakeMousedownFromScreenReader","_onTouchstart","isFakeTouchstartFromScreenReader","modalityDetected","modalityChanged","LIVE_ANNOUNCER_ELEMENT_TOKEN","providedIn","LIVE_ANNOUNCER_DEFAULT_OPTIONS","LiveAnnouncer","elementToken","_defaultOptions","_liveElement","_createLiveElement","politeness","Je","defaultOptions","zt","_previousTimeout","elementClass","previousElements","getElementsByClassName","liveEl","CdkAriaLive","_liveAnnouncer","_contentObserver","_politeness","_subscription","elementText","_previousAnnouncedText","announce","i1$1","FOCUS_MONITOR_DEFAULT_OPTIONS","captureEventListenerOptions","FocusMonitor","_inputModalityDetector","_windowFocused","_originFromTouchInteraction","_elementInfo","_monitoredElementCount","_rootNodeFocusListenerCount","_windowFocusListener","kt","_windowFocusTimeoutId","_stopInputModalityDetector","_rootNodeFocusAndBlurListener","_onFocus","_onBlur","parentElement","_detectionMode","detectionMode","checkChildren","coerceElement","rootNode","_getShadowRoot","_getDocument","cachedInfo","_registerGlobalListeners","elementInfo","_setClasses","_removeGlobalListeners","_getClosestElementsInfo","_originChanged","_setOrigin","_info","stopMonitoring","focusEventTarget","_shouldBeAttributedToTouch","_lastFocusOrigin","contains","isFromInteraction","_originTimeoutId","_getFocusOrigin","relatedTarget","Node","_emitOrigin","rootNodeFocusListeners","_getWindow","takeUntil","modality","currentElement","CdkMonitorFocus","_focusMonitor","cdkFocusChange","_monitorSubscription","BLACK_ON_WHITE_CSS_CLASS","WHITE_ON_BLACK_CSS_CLASS","HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS","HighContrastModeDetector","testElement","documentWindow","computedStyle","computedColor","_hasCheckedHighContrastMode","bodyClasses","getHighContrastMode","A11yModule","highContrastModeDetector","_applyBodyHighContrastModeCssClasses","PlatformModule","ObserversModule","DIR_DOCUMENT","inject","RTL_LOCALE_PATTERN","Directionality","rawValue","language","_resolveDirectionality","BidiModule","fallbackValue","_isNumberValue","elementOrRef","ElementRef","sourceValues","sourceValue","trimmedString","DataSource","connect","ArrayDataSource","isObservable","_DisposeViewRepeaterStrategy","itemContextFactory","itemValueResolver","itemViewChanged","forEachOperation","adjustedPreviousIndex","currentIndex","operation","previousIndex","insertContext","createEmbeddedView","move","_RecycleViewRepeaterStrategy","viewCacheSize","_viewCache","_insertView","_detachAndCacheView","_moveView","viewArgsFactory","cachedView","_insertViewFromCache","viewArgs","detachedView","_maybeCacheView","insert","SelectionModel","_multiple","initiallySelectedValues","_emitChanges","_selection","_deselectedToEmit","_selectedToEmit","_markSelected","_selected","_verifyValueAssignment","_emitChangeEvent","_unmarkSelected","isSelected","deselect","_unmarkAll","added","removed","UniqueSelectionDispatcher","_listeners","listener","registered","_VIEW_REPEATER_STRATEGY","BACKSPACE","ESCAPE","SPACE","PAGE_UP","PAGE_DOWN","DELETE","modifiers","Ci","altKey","shiftKey","ctrlKey","metaKey","mediaQueryStyleNode","mediaQueriesForWebkitCompatibility","MediaMatcher","_matchMedia","matchMedia","noopMatchMedia","BLINK","sheet","insertRule","createEmptyStyleRule","media","BreakpointObserver","_mediaMatcher","_zone","_queries","_destroySubject","splitQueries","coerceArray","_registerQuery","mediaQuery","mql","stateObservable","combineLatest","breakpoints","breakpointStates","queries","Breakpoints","XSmall","Small","Medium","Large","XLarge","Handset","Tablet","Web","HandsetPortrait","TabletPortrait","WebPortrait","HandsetLandscape","TabletLandscape","WebLandscape","MutationObserverFactory","MutationObserver","ContentObserver","_mutationObserverFactory","_observedElements","_cleanupObserver","_observeElement","_unobserveElement","stream","mutations","characterData","childList","subtree","disconnect","CdkObserveContent","_disabled","_currentSubscription","_unsubscribe","_debounce","coerceNumberProperty","scrollBehaviorSupported","supportsScrollBehavior","BlockScrollStrategy","_viewportRuler","_previousHTMLStyles","_isEnabled","_canBeEnabled","_previousScrollPosition","getViewportScrollPosition","coerceCssPixelValue","html","htmlStyle","bodyStyle","previousHtmlScrollBehavior","scrollBehavior","previousBodyScrollBehavior","viewport","getViewportSize","CloseScrollStrategy","_scrollDispatcher","_scrollSubscription","_detach","disable","_overlayRef","scrolled","_initialScrollPosition","scrollPosition","$","updatePosition","NoopScrollStrategy","scrollContainers","bottom","containerBounds","right","scrollContainerRect","RepositionScrollStrategy","scrollThrottle","autoClose","overlayRect","overlayElement","getBoundingClientRect","isElementScrolledOutsideView","ScrollStrategyOptions","OverlayConfig","disposeOnNavigation","ConnectedOverlayPositionChange","connectionPair","scrollableViewProperties","OverlayRef","_portalOutlet","_host","_pane","_keyboardDispatcher","_location","_outsideClickDispatcher","_backdropElement","_backdropClick","_attachments","_detachments","_locationChanges","_backdropClickHandler","On","_keydownEvents","_outsidePointerEvents","_scrollStrategy","_positionStrategy","portal","attachResult","_previousHostParent","_updateStackingOrder","_updateElementSize","_updateElementDirection","_togglePointerEvents","_attachBackdrop","_toggleClasses","dispose","detachBackdrop","detachmentResult","_detachContentWhenStable","isAttached","_disposeScrollStrategy","_disposeBackdrop","strategy","sizeConfig","classes","minHeight","enablePointer","showingClass","requestAnimationFrame","backdropToDetach","timeoutId","finishDetach","cssClasses","isAdd","backdrop","OverlayContainer","_containerElement","_createContainer","containerClass","_isTestEnvironment","oppositePlatformContainers","boundingBoxClass","cssUnitPattern","FlexibleConnectedPositionStrategy","connectedTo","_overlayContainer","_lastBoundingBoxSize","_isPushed","_canPush","_growAfterOpen","_hasFlexibleDimensions","_positionLocked","_viewportMargin","_scrollables","_preferredPositions","_positionChanges","_resizeSubscription","_offsetX","_offsetY","_appliedPanelClasses","positionChanges","setOrigin","_validatePositions","_boundingBox","_isDisposed","_isInitialRender","_lastPosition","reapplyLastPosition","_clearPanelClasses","_resetOverlayElementStyles","_resetBoundingBoxStyles","_viewportRect","_getNarrowedViewportRect","_originRect","_getOriginRect","_overlayRect","_containerRect","fallback","Tn","originRect","viewportRect","containerRect","flexibleFits","wn","originPoint","_getOriginPoint","overlayPoint","_getOverlayPoint","overlayFit","_getOverlayFit","isCompletelyWithinViewport","_applyPosition","_canFitWithFlexibleDimensions","boundingBoxRect","_calculateBoundingBoxRect","visibleArea","jt","bestFit","bestScore","fit","weight","_previousPushAmount","extendStyles","alignItems","justifyContent","lastPosition","scrollables","positions","margin","flexibleDimensions","growAfterOpen","canPush","isLocked","_transformOriginSelector","originX","startX","_isRtl","endX","originY","overlayStartX","overlayX","overlayY","point","rawOverlayRect","overlay","getRoundedBoundingClientRect","_getOffset","topOverflow","bottomOverflow","visibleWidth","_subtractOverflows","visibleHeight","fitsInViewportVertically","fitsInViewportHorizontally","availableHeight","availableWidth","getPixelValue","getConfig","pushX","pushY","overflowRight","overflowBottom","overflowTop","overflowLeft","_setTransformOrigin","_setOverlayElementStyles","_setBoundingBoxStyles","_addPanelClasses","_getScrollVisibility","changeEvent","xOrigin","elements","yOrigin","transformOrigin","isRtl","smallestDistanceToViewportEdge","previousHeight","previousWidth","_hasExactPosition","hasExactPosition","hasFlexibleDimensions","_getExactOverlayY","_getExactOverlayX","transformString","_pushOverlayOnScreen","clientHeight","clientWidth","originBounds","overlayBounds","scrollContainerBounds","scrollable","getElementRef","isOriginClipped","isElementClippedByScrolling","isOriginOutsideView","isOverlayClipped","isOverlayOutsideView","overflows","currentValue","currentOverflow","axis","cssClass","Element","clientRect","wrapperClass","GlobalPositionStrategy","_cssPosition","_topOffset","_bottomOffset","_leftOffset","_rightOffset","_alignItems","_justifyContent","_width","_height","updateSize","parentStyles","shouldBeFlushHorizontally","shouldBeFlushVertically","marginLeft","marginTop","marginBottom","marginRight","OverlayPositionBuilder","BaseOverlayDispatcher","_attachedOverlays","OverlayKeyboardDispatcher","_keydownListener","overlays","_isAttached","OverlayOutsideClickDispatcher","_cursorStyleIsSet","_pointerDownListener","_pointerDownEventTarget","_clickListener","_cursorOriginalValue","cursor","nextUniqueId","Overlay","_componentFactoryResolver","_positionBuilder","_injector","_directionality","host","_createHostElement","pane","_createPaneElement","portalOutlet","_createPortalOutlet","overlayConfig","_appRef","ApplicationRef","DomPortalOutlet","defaultPositionList","CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY","CdkOverlayOrigin","CdkConnectedOverlay","_overlay","scrollStrategyFactory","_dir","_hasBackdrop","_lockPosition","_flexibleDimensions","_push","_backdropSubscription","_attachSubscription","_detachSubscription","_positionSubscription","viewportMargin","positionChange","overlayKeydown","overlayOutsideClick","_templatePortal","TemplatePortal","_scrollStrategyFactory","_updatePositionStrategy","_attachOverlay","_detachOverlay","_buildConfig","attachments","detachments","keydownEvents","outsidePointerEvents","_createPositionStrategy","currentPosition","_getFlexibleConnectedPositionStrategyOrigin","withPositions","withFlexibleDimensions","withPush","withGrowAfterOpen","withViewportMargin","withLockedPosition","lockPosition","withTransformOriginOn","transformOriginSelector","flexibleConnectedTo","_createOverlay","inclusive","CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER","PortalModule","ScrollingModule","hasV8BreakIterator","Intl","v8BreakIterator","supportedInputTypes","supportsPassiveEvents","rtlScrollAxisType","shadowDomIsSupported","Platform","_platformId","EDGE","TRIDENT","chrome","ANDROID","SAFARI","candidateInputTypes","featureTestInput","supportsPassiveEventListeners","scrollToFunction","scrollTo","scrollContainer","containerStyle","contentStyle","scrollLeft","createShadowRoot","attachShadow","_supportsShadowDom","getRootNode","ShadowRoot","shadowRoot","newActiveElement","composedPath","__karma__","jasmine","jest","Mocha","Portal","_attachedHost","DomPortal","BasePortalOutlet","attachDomPortal","_attachedPortal","attachComponentPortal","attachTemplatePortal","setAttachedHost","_invokeDisposeFn","_disposeFn","outletElement","_defaultInjector","anchorNode","createComment","replaceChild","componentRef","setDisposeFn","attachView","hostView","detachView","_getComponentRootNode","viewContainer","viewRef","rootNodes","CdkPortal","CdkPortalOutlet","_viewContainerRef","_isInitialized","attached","_getRootNode","_attachedRef","animationFrameProvider","cancelAnimationFrame","AnimationFrameAction","AnimationFrameScheduler","animationFrameScheduler","VIRTUAL_SCROLL_STRATEGY","FixedSizeVirtualScrollStrategy","itemSize","minBufferPx","maxBufferPx","_scrolledIndexChange","scrolledIndexChange","_viewport","_itemSize","_minBufferPx","_maxBufferPx","_updateTotalContentSize","_updateRenderedRange","scrollToOffset","setTotalContentSize","getDataLength","renderedRange","getRenderedRange","newRange","dataLength","scrollOffset","measureScrollOffset","firstVisibleIndex","maxVisibleItems","newVisibleIndex","startBuffer","expandStart","endBuffer","expandEnd","setRenderedRange","setRenderedContentOffset","fixedSizeDir","CdkFixedSizeVirtualScroll","updateItemAndBufferSize","_fixedSizeVirtualScrollStrategyFactory","forwardRef","ScrollDispatcher","_scrolled","_globalSubscription","_scrolledCount","elementScrolled","scrollableReference","auditTimeInMs","_addGlobalListener","auditTime","_removeGlobalListener","deregister","elementOrElementRef","ancestors","getAncestorScrollContainers","scrollingContainers","_scrollableContainsElement","scrollableElement","CdkScrollable","scrollDispatcher","_elementScrolled","register","getRtlScrollAxisType","_applyScrollToOptions","LEFT","ViewportRuler","_change","_changeListener","_viewportSize","_updateViewportSize","documentRect","scrollY","scrollX","throttleTime","SCROLL_SCHEDULER","CdkVirtualScrollViewport","_changeDetectorRef","viewportRuler","_detachedSubject","_renderedRangeSubject","_orientation","_appendOnly","renderedRangeStream","_totalContentSize","_totalContentWidth","_totalContentHeight","_renderedRange","_dataLength","_renderedContentOffset","_renderedContentOffsetNeedsRewrite","_isChangeDetectionPending","_runAfterChangeDetection","_viewportChanges","checkViewportSize","orientation","_calculateSpacerSize","_measureViewportSize","onContentScrolled","_markChangeDetectionNeeded","forOf","_forOf","dataStream","newLength","onDataLengthChanged","_doChangeDetection","r1","r2","rangesEqual","appendOnly","onContentRendered","isHorizontal","axisDirection","_renderedContentTransform","measureRenderedContentSize","onRenderedOffsetChanged","scrollToIndex","contentEl","_contentWrapper","measureRangeSize","viewportEl","runAfter","runAfterChangeDetection","useExisting","ngContentSelectors","rect","CdkVirtualForOf","_template","_differs","_viewRepeater","viewChange","_dataSourceChanges","hasPrev","pairwise","_changeDataSource","configOrBufferSize","windowTime","bufferSize","share","shareReplay","_differ","_needsUpdate","_onRenderedDataChange","_cdkVirtualForOf","isDataSource","_cdkVirtualForTrackBy","firstNode","lastNode","renderedStartIndex","rangeLen","getOffset","_renderedItems","_applyChanges","_updateContext","cdkVirtualForTrackBy","oldDs","newDs","_updateComputedContextProperties","applyChanges","_adjustedPreviousIndex","_getEmbeddedViewArgs","forEachIdentityChange","even","odd","cdkVirtualForOf","CdkScrollableModule","_sticky","et","_hasStickyChanged","prevValue","hasStickyChanged","Ue","CDK_TABLE","TEXT_COLUMN_OPTIONS","CdkCellDef","CdkHeaderCellDef","CdkFooterCellDef","_CdkColumnDefBase","mixinHasStickyInput","CdkColumnDefBase","CdkColumnDef","_table","_stickyEnd","_setNameInput","_columnCssClassName","cssClassFriendlyName","_updateColumnCssClassName","BaseCdkCell","columnDef","CdkHeaderCell","CdkFooterCell","tableRole","CdkCell","_Schedule","tasks","endTasks","_COALESCED_STYLE_SCHEDULER","_CoalescedStyleScheduler","_currentSchedule","task","_createScheduleIfNeeded","_getScheduleObservable","BaseRowDef","_columnsDiffer","columns","column","CdkHeaderRowDef","headerCell","CdkFooterRowDef","footerCell","cell","CdkHeaderRowDefBase","_CdkHeaderRowDefBase","CdkFooterRowDefBase","_CdkFooterRowDefBase","CdkRowDef","CdkCellOutlet","_viewContainer","mostRecentCellOutlet","CdkHeaderRow","encapsulation","CdkFooterRow","CdkRow","CdkNoDataRow","_contentClassName","STICKY_DIRECTIONS","StickyStyler","_isNativeHtmlTable","_stickCellCss","_coalescedStyleScheduler","_isBrowser","_needsPositionStickyOnElement","_positionListener","_cachedCellWidths","_borderCellCss","rows","stickyDirections","elementsToClear","_removeStickyStyle","stickyStartStates","stickyEndStates","recalculateCellWidths","firstRow","numCells","cellWidths","_getCellWidths","startPositions","_getStickyStartColumnPositions","endPositions","_getStickyEndColumnPositions","lastStickyStart","firstStickyEnd","An","gn","_addStickyStyle","Si","stickyColumnsUpdated","sizes","stickyEndColumnsUpdated","rowsToStick","stickyStates","states","stickyOffsets","stickyCellHeights","elementsToStick","rowIndex","stickyOffset","borderedRowIndex","isBorderedRowIndex","gi","Oa","stickyHeaderRowsUpdated","offsets","stickyFooterRowsUpdated","tableElement","tfoot","_getCalculatedZIndex","dirValue","isBorderElement","cssText","zIndexIncrements","firstRowCells","widths","nextPosition","STICKY_POSITIONING_LISTENER","DataRowOutlet","HeaderRowOutlet","FooterRowOutlet","NoDataRowOutlet","CdkTable","_stickyPositioningListener","_columnDefsByName","_customColumnDefs","_customRowDefs","_customHeaderRowDefs","_customFooterRowDefs","_headerRowDefChanged","_footerRowDefChanged","_stickyColumnStylesNeedReset","_forceRecalculateCellWidths","_cachedRenderRowsMap","stickyCssClass","needsPositionStickyOnElement","_isShowingNoDataRow","_multiTemplateDataRows","_fixedLayout","contentChanged","MAX_VALUE","_trackByFn","_dataSource","_switchDataSource","_rowOutlet","_forceRenderDataRows","updateStickyColumnStyles","_setupStickyStyler","_applyNativeTableSections","_dataDiffer","dataRow","trackBy","dataIndex","_cacheRowDefs","_cacheColumnDefs","rowDefsChanged","_renderUpdatedColumns","_forceRenderHeaderRows","_forceRenderFooterRows","_rowDefs","_renderChangeSubscription","_observeRenderChanges","_checkStickyStates","_headerRowOutlet","_footerRowOutlet","def","_headerRowDefs","_footerRowDefs","_defaultRowDef","_renderRows","_getAllRenderRows","_updateNoDataRow","_renderCellTemplateForItem","rowDef","_updateRowIndexContext","NgZone","headerRowDef","footerRowDef","noDataRow","_customNoDataRow","headerRows","_getRenderedRows","thead","sticky","_stickyStyler","clearStickyPositioning","stickRows","resetStickyChanged","footerRows","updateStickyFooterContainer","dataRows","headerRow","_addStickyColumnStyles","footerRow","renderRows","prevCachedRenderRows","renderRowsForData","_getRenderRowsForData","renderRow","_getRowDefs","cachedRenderRows","mergeArrayAndSet","_getOwnDefs","_contentColumnDefs","_contentHeaderRowDefs","_contentFooterRowDefs","_contentRowDefs","defaultRowDefs","when","columnsDiffReducer","getColumnsDiff","dataColumnsChanged","headerColumnsChanged","footerColumnsChanged","_renderRow","updateStickyHeaderRowStyles","updateStickyFooterRowStyles","columnDefs","columnName","stickyEnd","updateStickyColumns","rowOutlet","renderedRows","rowDefs","multiTemplateDataRows","outlet","_getCellTemplates","renderIndex","columnId","extractCellTemplate","documentFragment","createDocumentFragment","outlets","_noDataRowOutlet","section","Zn","stickyCheckReducer","_noDataRow","shouldShow","i3","CdkTextColumn","justify","_syncColumnDefName","headerText","_createDefaultHeaderText","dataAccessor","defaultDataAccessor","addColumnDef","removeColumnDef","defaultHeaderTextTransform","CdkTableModule","listenerOptions","AutofillMonitor","_monitoredElements","animationName","isAutofilled","unlisten","CdkTextareaAutosize","_previousMinRows","_isViewInited","_handleFocusEvent","_hasFocus","_textareaElement","_minRows","_setMinHeight","_maxRows","_setMaxHeight","resizeToFitContent","_cachedPlaceholderHeight","_cacheTextareaPlaceholderHeight","minRows","_cachedLineHeight","maxRows","_initialHeight","textareaClone","border","padding","previousMargin","isFirefox","needsMarginFiller","measuringClass","_measureScrollHeight","_cacheTextareaLineHeight","textarea","_previousValue","_scrollToCaretPosition","setSelectionRange","TextFieldModule","BaseTreeControl","expansionModel","dataNode","_trackByValue","collapseDescendants","expandDescendants","toBeProcessed","getDescendants","Qe","getLevel","xe","dataNodes","getChildren","allNodes","descendants","_getDescendants","childrenNodes","Xe","CDK_TREE_NODE_OUTLET_NODE","CdkTreeNodeOutlet","_node","CdkTreeNodeOutletContext","CdkTreeNodeDef","CdkTree","_levels","_nodeOutlet","_dataSubscription","defaultNodeDefs","_nodeDefs","_defaultNodeDef","renderNodeChanges","dataDiffer","parentData","insertNode","nodeData","_getNodeDef","CdkTreeNode","mostRecentTreeNode","_tree","_dataChanges","_role","_setRoleFromData","isExpanded","_parentNodeAriaLevel","nodeElement","isNodeElement","getParentNodeAriaLevel","CdkNestedTreeNode","$e","updateChildrenNodes","nodeOutlet","_clear","_getNodeOutlet","_children","CdkTreeNodePadding","_treeNode","indentUnits","_indent","_setPadding","_level","_setLevelInput","indent","_setIndentInput","nodeLevel","_paddingIndent","_currentPadding","paddingProp","resetProp","CdkTreeNodeToggle","_recursive","recursive","toggleDescendants","CdkTreeModule","_DOM","adapter","DomAdapter","PlatformLocation","relativePosition","ɵɵinject","BrowserPlatformLocation","useBrowserPlatformLocation","LOCATION_INITIALIZED","_doc","At","_init","_history","getDOM","getBaseHref","getGlobalEventTarget","protocol","port","newPath","supportsState","replaceState","forward","back","createBrowserPlatformLocation","slashes","pathEndIdx","LocationStrategy","platformLocation","PathLocationStrategy","provideLocationStrategy","APP_BASE_HREF","_platformLocation","_removeListenerFns","getBaseHrefFromDOM","_baseHref","onPopState","onHashChange","internal","joinWithSlash","includeHash","normalizeQueryParams","externalUrl","prepareExternalUrl","historyGo","HashLocationStrategy","Location","platformStrategy","_subject","_urlChangeListeners","_platformStrategy","browserBaseHref","stripTrailingSlash","_stripIndexHtml","ht","getState","_stripBaseHref","_notifyUrlChangeListeners","_urlChangeSubscription","onThrow","onReturn","createLocation","NumberFormatStyle","Decimal","Percent","Currency","Scientific","Plural","Zero","One","Two","Few","Many","Other","FormStyle","Format","Standalone","TranslationWidth","Narrow","Abbreviated","Wide","Short","FormatWidth","Long","Full","NumberSymbol","Group","List","PercentSign","PlusSign","MinusSign","Exponential","SuperscriptingExponent","PerMille","TimeSeparator","CurrencyDecimal","CurrencyGroup","getLastDefinedValue","ɵfindLocaleData","ɵLocaleDataIndex","getLocalePluralCase","ɵgetLocalePluralCase","Ne","ISO8601_DATE_REGEX","NAMED_FORMATS","DATE_FORMATS_SPLIT","ZoneWidth","ShortGMT","Extended","DateType","FullYear","Month","Hours","Minutes","Seconds","FractionalSeconds","Day","TranslationType","DayPeriods","Days","Months","Eras","timezone","parsedNb","tzHour","tzMin","dateSetter","timeSetter","setUTCHours","isoStringToDate","getNamedFormat","dateTimezoneOffset","timezoneToOffset","reverseValue","setMinutes","addDateMinutes","convertTimezoneToLocal","dateFormatter","DATE_FORMATS","formatter","dateStrGetter","dateGetter","weekNumberingYearGetter","weekGetter","timeZoneGetter","getDateFormatter","newDate","localeId","getLocaleId","getLocaleDateFormat","getLocaleTimeFormat","shortTime","shortDate","formatDateTime","getLocaleDateTimeFormat","mediumTime","mediumDate","longTime","longDate","fullTime","fullDate","opt_values","digits","minusSign","negWrap","neg","strNum","padNumber","getDatePart","formatFractionalSeconds","localeMinus","getLocaleNumberSymbol","getMilliseconds","extended","getDateTranslation","formStyle","getLocaleMonthNames","getLocaleDayNames","currentHours","currentMinutes","rules","checkFullData","rule","extractTime","getLocaleExtraDayPeriodRules","dayPeriods","getLocaleExtraDayPeriods","afterFrom","beforeTo","amPm","getLocaleDayPeriods","getLocaleEraNames","THURSDAY","datetime","monthBased","nbDaysBefore1stDayOfMonth","today","thisThurs","getThursdayThisWeek","firstThurs","getFirstThursdayOfYear","requestedTimezoneOffset","NUMBER_FORMAT_REGEXP","ZERO_CHAR","digitsInfo","groupSymbol","decimalSymbol","isPercent","formattedText","isZero","parsedNumber","parseNumber","toPercent","minInt","minFraction","minFrac","maxFraction","maxFrac","minIntPart","minFractionPart","maxFractionPart","parseIntAutoRadix","roundNumber","integerLen","exponent","decimals","lgSize","gSize","negPre","negSuf","posPre","posSuf","formatNumberToLocaleString","patternParts","positive","negative","positiveParts","integer","fraction","ch","st","trunkLen","parseNumberFormat","getLocaleNumberFormat","fractionLen","zeros","numStr","MAX_DIGITS","fractionSize","roundAt","digit","dropTrailingZeros","minLen","carry","NgLocalization","NgLocaleLocalization","LOCALE_ID","cookieStr","Ye","eqIndex","Pn","cookieValue","NgClass","_iterableDiffers","_keyValueDiffers","_ngEl","_renderer","_iterableDiffer","_keyValueDiffer","_initialClasses","_rawClass","_removeClasses","_applyClasses","ɵisListLikeIterable","iterableChanges","_applyIterableChanges","keyValueChanges","_applyKeyValueChanges","forEachAddedItem","_toggleClass","forEachChangedItem","forEachRemovedItem","previousValue","ɵstringify","rawClassVal","klass","NgForOfContext","ngForOf","NgForOf","_ngForOf","_ngForOfDirty","ngForTrackBy","applyViewChange","ilen","NgIf","_context","NgIfContext","_thenTemplateRef","_elseTemplateRef","_thenViewRef","_elseViewRef","ngIf","_updateView","assertTemplate","SwitchView","_templateRef","_created","NgSwitch","_defaultUsed","_caseCount","_lastCaseCheckIndex","_lastCasesMatched","_ngSwitch","_updateDefaultCases","_defaultViews","useDefault","enforceState","NgSwitchCase","ngSwitch","_addCase","_view","_matchCase","ngSwitchCase","NgSwitchDefault","_addDefault","NgStyle","_ngStyle","nameAndUnit","setStyle","removeStyle","_setStyle","NgTemplateOutlet","_viewRef","ngTemplateOutletContext","ngTemplateOutlet","ɵRuntimeError","SubscribableStrategy","updateLatestValue","_promiseStrategy","PromiseStrategy","_subscribableStrategy","AsyncPipe","_ref","_latestValue","_strategy","_dispose","_selectStrategy","createSubscription","_updateLatestValue","ɵisPromise","ɵisSubscribable","invalidPipeArgumentError","unicodeWordMatch","TitleCasePipe","txt","UpperCasePipe","DATE_PIPE_DEFAULT_TIMEZONE","defaultTimezone","formatDate","JsonPipe","DecimalPipe","isValue","strToNumber","SlicePipe","PLATFORM_BROWSER_ID","ViewportScroller","ɵɵdefineInjectable","BrowserViewportScroller","supportsScrolling","pageXOffset","elSelected","documentResult","getElementsByName","createTreeWalker","treeWalker","NodeFilter","SHOW_ELEMENT","currentNode","nextNode","findAnchorFromDocument","scrollRestoration","supportScrollRestoration","scrollRestorationDescriptor","getScrollRestorationProperty","XhrFactory","HttpHandler","HttpBackend","HttpHeaders","normalizedNames","lazyUpdate","lazyInit","maybeSetNormalizedName","op","lcName","copyFrom","applyUpdate","toDelete","HttpUrlEncodingCodec","standardEncoding","rawParams","codec","eqIdx","decodeKey","STANDARD_ENCODING_REGEX","STANDARD_ENCODING_REPLACEMENTS","updates","cloneFrom","fromObject","paramParser","eKey","encodeKey","valueToString","HttpContext","HttpRequest","reportProgress","urlWithParams","qIdx","isBlob","isFormData","isUrlSearchParams","setHeaders","setParams","HttpEventType","Sent","UploadProgress","ResponseHeader","DownloadProgress","Response","User","HttpResponseBase","defaultStatus","defaultStatusText","statusText","ok","HttpHeaderResponse","HttpResponse","HttpErrorResponse","HttpClient","events$","concatMap","res$","callbackParam","addBody","HttpInterceptorHandler","intercept","NoopInterceptor","nextRequestId","JsonpCallbackContext","JsonpClientBackend","callbackMap","resolvedPromise","nextCallback","cancelled","cleanup","onLoad","JsonpInterceptor","XSSI_PREFIX","HttpXhrBackend","xhrFactory","xhr","build","setRequestHeader","detectedType","detectContentTypeHeader","reqBody","serializeBody","headerResponse","partialFromXhr","getAllResponseHeaders","responseURL","getResponseHeader","getResponseUrl","responseText","originalBody","sentHeaders","onDownProgress","progressEvent","lengthComputable","partialText","onUpProgress","progress","upload","readyState","DONE","abort","XSRF_COOKIE_NAME","XSRF_HEADER_NAME","HttpXsrfTokenExtractor","HttpXsrfCookieExtractor","platform","lastCookieString","lastToken","parseCount","cookieString","ɵparseCookieValue","HttpXsrfInterceptor","tokenService","headerName","lcUrl","getToken","HttpInterceptingHandler","backend","interceptors","HttpClientXsrfModule","withOptions","jsonpCallbackContext","fe","mt","C","objWithPropertyToExtract","getClosureSafeProperty","overriddenName","newLineIndex","__forward_ref__","forwardRefFn","isForwardRef","RuntimeError","fullCode","formatRuntimeError","renderStringify","injectorName","injectorDetails","stringifyForError","actual","expected","comparison","getOwnDefinition","NG_PROV_DEF","NG_INJECTABLE_DEF","NG_INJ_DEF","NG_INJECTOR_DEF","_injectImplementation","ngInjectableDef","ngInjectorDef","InjectFlags","Default","Host","Self","SkipSelf","Optional","impl","notFoundValue","injectableDef","getInjectableDef","throwProviderNotFoundError","ChangeDetectionStrategy","OnPush","ViewEncapsulation$1","ViewEncapsulation","Emulated","None","ShadowDom","__globalThis","__window","__self","WorkerGlobalScope","__global","_global","EMPTY_OBJ","EMPTY_ARRAY","NG_COMP_DEF","NG_DIR_DEF","NG_PIPE_DEF","NG_MOD_DEF","NG_FACTORY_DEF","NG_ELEMENT_ID","__NG_ELEMENT_ID__","_renderCompCount","componentDefinition","noSideEffects","declaredInputs","providersResolver","hostBindings","hostVars","hostAttrs","contentQueries","outputs","exportAs","onPush","changeDetection","directiveDefs","pipeDefs","viewQuery","setInput","schemas","tView","directiveTypes","pipeTypes","pipes","invertObject","extractDirectiveDef","extractPipeDef","getComponentDef","getDirectiveDef","getPipeDef$1","autoRegisterModuleById","declarations","transitiveCompileScopes","scope","ngModuleDef","getNgModuleDef","secondary","newLookup","minifiedKey","publicName","declaredName","ɵɵdefineDirective","ɵɵdefineComponent","pipeDef","ngOnDestroy","throwNotFound","tNode","SimpleChange","NgOnChangesFeatureImpl","ngOnChanges","ngOnChangesSetInput","rememberChangeHistoryAndInvokeOnChangesHook","simpleChangesStore","getSimpleChangesStore","privateName","SIMPLE_CHANGES_STORE","setSimpleChangesStore","previousChange","ɵɵNgOnChangesFeature","ngInherit","listen","domRendererFactory3","createRenderer","rendererType","getDocument","lView","unwrapRNode","nodeIndex","slotValue","isLView","lContainer","viewOrContainer","instructionState","lFrame","createLFrame","bindingsEnabled","isInCheckNoChangesMode","viewToRestore","contextLView","currentTNode","getCurrentTNodePlaceholderOk","isParent","bindingRootIndex","bindingStartIndex","bindingIndex","currentDirectiveIndex","setCurrentDirectiveIndex","tData","currentQueryIndex","declTNode","parentTNode","parentLView","getDeclarationTNode","allocLFrame","newView","newLFrame","inI18n","currentLFrame","childLFrame","elementDepthCount","currentNamespace","oldLFrame","leaveDI","leaveViewLight","nestingLevel","currentView","walkUpViews","getTNode","namespaceHTMLInternal","directiveStart","directiveEnd","lifecycleHooks","ngAfterContentInit","ngAfterContentChecked","ngAfterViewInit","ngAfterViewChecked","contentHooks","contentCheckHooks","viewHooks","viewCheckHooks","destroyHooks","callHooks","initPhase","currentNodeIndex","nodeIndexLimit","lastNodeIndexFound","callHook","isInitHook","hook","directive","NodeInjectorFactory","isViewProvider","injectImplementation","resolving","canSeeViewProviders","injectImpl","native","attrs","isProc","isProceduralRenderer","namespaceURI","attrName","attrVal","setAttributeNS","isAnimationProp","marker","dst","srcMarker","mergeHostAttribute","key1","key2","markerInsertPosition","dstValue","parentLocation","startView","viewOffset","getParentInjectorViewOffset","parentView","includeViewProviders","nextNgElementId","existingInjectorIndex","getInjectorIndex","firstCreatePass","injectorIndex","insertBloom","blueprint","parentLoc","getParentInjectorLocation","hasParentInjector","parentIndex","getParentInjectorIndex","getParentInjectorView","footer","declarationViewOffset","lViewCursor","tViewType","G","bloomHash","BLOOM_SIZE","bloomAdd","moduleInjector","previousInjectImplementation","setInjectImplementation","injectRootLimpMode","notFoundValueOrThrow","bloomHashBitOrFactory","enterDI","lookupTokenUsingModuleInjector","previousTView","hostTElementNode","shouldSearchParent","bloomHasToken","searchTokensOnInjector","NOT_FOUND","NodeInjector","getCurrentTNode","getLView","currentTView","injectableIdx","locateDirectiveOrProvider","isComponentHost","getNodeInjectable","canAccessViewProviders","isHostSpecialCase","nodeProviderIndexes","providerIndexes","tInjectables","injectablesStart","directivesStart","cptViewProvidersCount","endIndex","providerTokenOrDef","dirDef","isComponentDef","isFactory","depPath","throwCyclicDependencyError","previousIncludeViewProviders","setIncludeViewProviders","directiveIndex","directiveDef","ngDoCheck","wrappedOnChanges","preOrderHooks","preOrderCheckHooks","registerPreOrderHooks","tokenId","createNodeInjector","injectorView","isFirstHostTNode","_tNode","_lView","getOrCreateInjectable","ownConstructor","ownFactory","getFactoryOf","objectPrototype","resolveForwardRef","getFactoryDef","attrNameToInject","attrsLength","isNameOnlyAttributeMarker","injectAttributeImpl","ANNOTATIONS","PARAMETERS","PROP_METADATA","parentClass","additionalProcessing","typeFn","metaCtor","makeMetadataCtor","DecoratorFactory","annotationInstance","cls","annotations","ngMetadataName","annotationCls","propName","ParamDecoratorFactory","ParamDecorator","annotation","unusedKey","Oe","PropDecoratorFactory","decoratorInstance","meta","PropDecorator","Attribute","makeParamDecorator","attributeName","ɵɵinjectAttribute","_desc","globalNg","ng","ɵcompilerFacade","Type","deepForEach","keyValueArray","keyValueArrayIndexOf","value1","value2","arrayInsert2","middle","_arrayIndexOfSorted","ES5_DELEGATE_CTOR","ES2015_INHERITED_CLASS","ES2015_INHERITED_CLASS_WITH_CTOR","ES2015_INHERITED_CLASS_WITH_DELEGATE_CTOR","ReflectionCapabilities","reflect","_reflect","paramTypes","paramAnnotations","newArray","parentCtor","typeStr","isDelegateCtor","tsickleCtorParams","ctorParameters","ctorParam","convertTsickleDecoratorIntoMetadata","decorators","_zipTypesAndAnnotations","getOwnMetadata","getParentCtor","_ownParameters","typeOrFunc","ownAnnotations","_ownAnnotations","propMetadata","propDecorators","parentPropMetadata","ownPropMetadata","_ownPropMetadata","lcProperty","functionBody","filePath","moduleUrl","members","enumIdentifier","decoratorInvocations","decoratorInvocation","parentProto","THROW_IF_NOT_FOUND","DI_DECORATOR_FLAG","NG_TEMP_TOKEN_PATH","NEW_LINE","SOURCE","USE_VALUE$1","_currentInjector","former","getInjectImplementation","injectInjectorOnly","flag","getInjectFlag","decorator","injectorErrorName","tokenPath","NG_TOKEN_PATH","policy$1","policy","Inject","attachInjectFlag","convertDependencies","getReflect","dep","attribute","optional","skipSelf","reflectDependency","trustedTypes","createPolicy","createHTML","createScript","createScriptURL","getPolicy$1","getPolicy","SafeValueImpl","changingThisBreaksApplicationSecurity","SafeHtmlImpl","SafeStyleImpl","SafeScriptImpl","SafeUrlImpl","SafeResourceUrlImpl","actualType","getSanitizationBypassType","getTypeName","trustedHtml","trustedStyle","trustedScript","trustedUrl","trustedResourceUrl","DOMParserHelper","inertDocumentHelper","trustedHTMLFromString","getInertBodyElement","InertDocumentHelper","defaultDoc","inertDocument","createHTMLDocument","inertHtml","inertBodyElement","templateEl","inertBody","documentMode","stripCustomNsAttrs","elAttrs","childNode","SAFE_URL_PATTERN","DATA_URL_PATTERN","srcset","_sanitizeUrl","sets","inertBodyHelper","VOID_ELEMENTS","tagSet","OPTIONAL_END_TAG_BLOCK_ELEMENTS","OPTIONAL_END_TAG_INLINE_ELEMENTS","OPTIONAL_END_TAG_ELEMENTS","VALID_ELEMENTS","URI_ATTRS","SRCSET_ATTRS","VALID_ATTRS","SKIP_TRAVERSING_CONTENT_IF_INVALID_ELEMENTS","SanitizingHtmlSerializer","sanitizedSomething","buf","traverseContent","startElement","TEXT_NODE","endElement","checkClobberedElement","elAttr","sanitizeSrcset","encodeEntities","compareDocumentPosition","DOCUMENT_POSITION_CONTAINED_BY","outerHTML","SURROGATE_PAIR_REGEXP","NON_ALPHANUMERIC_REGEXP","unsafeHtmlInput","isDOMParserAvailable","getInertBodyHelper","unsafeHtml","mXSSAttempts","parsedHtml","sanitizeChildren","getTemplateContent","safeHtml","isTemplateElement","SecurityContext","NONE","HTML","STYLE","SCRIPT","RESOURCE_URL","getSanitizer","trustedHTMLFromStringBypass","sanitize","allowSanitizationBypassAndThrow","unwrapSafeValue","_sanitizeHtml","unsafeUrl","unsafeResourceUrl","trustedScriptURLFromStringBypass","MONKEY_PATCH_KEY_NAME","readPatchedData","ERROR_ORIGINAL_ERROR","_console","originalError","_findOriginalError","errorLogger","ERROR_LOGGER","defaultErrorLogger","getErrorLogger","getOriginalError","defaultScheduler","RendererStyleFlags2","Important","DashCase","tIcuContainerNode","_icuContainerIterate","isLContainer","getNearestLContainer","lNodeToHandle","beforeNode","isComponent","rNode","nativeAppendChild","nativeInsertBefore","isHostElement","nativeParent","nativeParentNode","nativeRemoveChild","nativeRemoveNode","destroyNode","parentRElement","applyToElementOrContainer","applyView","applyContainer","createText","createTextNode","namespaceUri","getNamespaceUri","createElementNS","declarationContainer","movedViews","declarationViewIndex","insertionLContainer","updateTransplantedViewCount","removeIndex","indexInContainer","viewToDetach","declarationLContainer","detachMovedView","removedLView","removeFromArray","removeViewFromContainer","lQueries","rootView","lViewOrLContainer","cleanUpView","firstView","destroyViewTree","toCall","callContext","executeOnDestroys","tCleanup","lCleanup","lastLCleanupIndex","idxOrTargetGetter","useCaptureOrSubIdx","instanceCleanupFn","processCleanups","getNativeByTNode","getClosestRElement","isMove","_getInsertInFrontOfRNodeWithI18n","childRNode","childTNode","parentRNode","getParentRElement","getInsertInFrontOfRNode","nativeAppendOrInsertBefore","tNodeType","getBeforeNodeForView","elIcuContainerChild","getFirstNativeNode","rNodeOrLContainer","icuContainerIterate","nextRNode","projectionNodes","getProjectionNodes","getLViewParent","projection","viewIndexInContainer","nextViewIndex","firstTNodeOfView","isProjection","rawSlotValue","attachPatchData","applyNodes","applyProjectionRecursive","projectionNext","tProjectionNode","componentLView","nodeToProjectOrRNodes","className","classToSearch","startingIndex","foundIndex","NG_TEMPLATE_SELECTOR","cssClassToMatch","isProjectionMode","classIndexOf","currentSelector","nodeAttrs","nameOnlyMarkerIdx","getNameOnlyMarkerIndex","skipToNextSelector","hasTagAndTypeMatch","isPositive","selectorAttrValue","isCssClassMatching","attrIndexInNode","findAttrIndexInNode","isInlineTemplate","nodeAttrValue","compareAgainstClassName","bindingsMode","maybeAttrName","matchTemplateAttribute","isNodeMatchingSelector","selectorListLoop","currentSelectorInList","isNegativeMode","currentChunk","valueOrMarker","attrValue","maybeWrapInNotSelector","NO_CHANGE","selectIndexInternal","getTView","getSelectedIndex","checkNoChangesMode","executeCheckHooks","executeInitAndCheckHooks","setSelectedIndex","tStylingRange","directiveDefIdx","setCurrentQueryIndex","tHostNode","rendererFactory","resetPreOrderHookFlags","isCurrentTNodeParent","tParent","insertBeforeIndex","directiveStylingLast","propertyBindings","mergedAttrs","localNames","initialInputs","tViews","stylesWithoutHost","residualStyles","classesWithoutHost","residualClasses","classBindings","styleBindings","createTNode","createTNodeAtIndex","isInI18nBlock","getCurrentParentTNode","setCurrentTNode","numSlotsToAlloc","initialValue","allocIdx","enterView","executeViewQueryFn","templateFn","executeTemplate","staticContentQueries","refreshContentQueries","staticViewQueries","hostLView","renderComponent$1","renderChildComponents","incompleteFirstPass","leaveView","isInCheckNoChangesPass","setBindingIndex","hooksInitPhaseCompleted","incrementInitPhaseFlags","getFirstLContainer","getNextLContainer","movedLView","markTransplantedViewsForRefresh","embeddedLView","embeddedTView","viewAttachedToChangeDetector","refreshView","refreshEmbeddedViews","hostBindingOpCodes","opCode","directiveIdx","bindingRootIndx","hostBindingFn","setBindingRootForHostBindings","processHostBindingOpCodes","refreshComponent","refreshChildComponents","firstUpdatePass","normalExecutionPath","creationModeIsActive","isCreationMode","begin","renderView","prevSelectedIndex","isUpdatePhase","isContentQueryHost","getBindingsEnabled","getOrCreateNodeInjectorForNode","addComponentLogic","setInputsFromAttrs","getComponentLViewByIndex","instantiateAllDirectives","elementIndex","getCurrentDirectiveIndex","dirIndex","invokeHostBindingsInCreationMode","invokeDirectivesHostBindings","viewData","localRefExtractor","localIndex","createTView","constsOrFactory","initialViewLength","createViewBlueprint","expandoStartIndex","directiveRegistry","pipeRegistry","cleanupFn","getOrCreateLViewCleanup","getOrCreateTViewCleanup","inputAliasMap","propStore","internalName","nativeOnly","dataValue","setInputsForProperty","viewIndex","childComponentLView","markDirtyIfOnPush","mapPropName","localRefs","hasDirectives","registry","isNodeMatchingSelectorList","diPublicInInjector","markAsComponentHost","findDirectiveDefMatches","exportsMap","initTNodeFlags","preOrderHooksFound","preOrderCheckHooksFound","allocExpando","mergeHostAttrs","configureViewWithDirective","saveNameToExportMap","lifeCycleHooks","tViewData","tNodeAttrs","inputsFromAttrs","inputsStore","outputsStore","directiveInputs","generateInitialInputs","generatePropertyAliases","initializeInputAndOutputAliases","ngDevMode","cacheMatchingLocalNames","directiveVarsIdx","elementIndx","lastSelectedElementIdx","hostTNode","numberOfDirectives","directiveFactory","nodeInjectorFactory","registerHostBindingOpCodes","getOrCreateTComponentView","componentView","addToViewTree","createLView","strValue","setElementAttribute","initialInputData","inputsToStore","hostNative","componentHostIdx","refreshContainsDirtyView","componentTView","syncViewWithBlueprint","isRootView","handleError","rootContext","rootComponent","readPatchedLView","renderComponentOrTemplate","tickRootContext","viewQueryFn","CLEAN_PROMISE","currentDef","unwrapLView","errorHandler","getNativeByIndex","updateTextNode","writeToHost","concatStringsWithSpace","INJECTOR","NullInjector","INJECTOR_SCOPE","NOT_YET","CIRCULAR","NULL_INJECTOR$1","defType","additionalProviders","createInjectorWithoutInjectorInstances","_resolveInjectorDefTypes","R3Injector","getNullInjector","records","injectorDefTypes","dedupStack","processProvider","provider","processInjectorType","injectorDef","makeRecord","assertNotDestroyed","service","previousInjector","setCurrentInjector","couldBeInjectableType","injectableDefInScope","injectableDefOrInjectorDefFactory","hydrate","nextInjector","catchInjectorError","defOrWrappedDef","parents","getInjectorDef","isDuplicate","importTypesWithProviders","mn","wa","defProviders","injectorType","ngModuleType","isTypeProvider","isValueProvider","providerToFactory","providerToRecord","multiRecord","injectArgs","hasOnDestroy","paramLength","inheritedInjectableDef","typeName","getInheritedInjectableDef","getUndecoratedInjectableFactory","unwrappedProvider","isFactoryProvider","isExistingProvider","classRef","hasDeps","Injector","createInjector","NULL","registerPostOrderHooks","superType","getSuperType","shouldInheritFields","inheritanceChain","superDef","writeableDef","maybeUnwrapEmpty","superHostBindings","inheritHostBindings","superViewQuery","superContentQueries","inheritViewQuery","inheritContentQueries","fillProperties","defData","ɵɵInheritDefinitionFeature","mergeHostAttrsAcrossInheritance","prevViewQuery","prevContentQueries","prevHostBindings","_symbolIterator","isJsObject","is","exp1","exp2","different","bindingUpdated","exp3","bindingUpdated2","exp4","nextBindingIndex","elementAttributeInternal","getSelectedTNode","ɵɵattribute","v0","suffix","v1","getBindingIndex","incrementBindingIndex","v2","v3","bindingUpdated4","interpolatedValue","interpolation1","ɵɵattributeInterpolate1","attrsIndex","localRefsIndex","adjustedIndex","tViewConsts","getOrCreateTNode","getConstant","resolveDirectives","templateFirstCreatePass","comment","createLContainer","isDirectiveHost","createDirectivesInstances","saveResolvedLocalsInData","getContextLView","angularCoreDiEnv","ɵɵdefineInjector","USE_VALUE","makeDecorator","ngFactoryDef","getCompilerFacade","compileInjectable","srcMeta","compilerMeta","typeArgumentCount","isUseClassProvider","isUseFactoryProvider","S_","l_","isUseExistingProvider","getInjectableMetadata","compileFactory","reflectDependencies","FactoryTarget","elementPropertyInternal","ɵɵproperty","isClassBased","createElementNode","getNamespace$1","computeStaticStyling","elementStart","elementStartFirstCreatePass","setUpAttributes","writeDirectClass","writeDirectStyle","getElementDepthCount","increaseElementDepthCount","executeContentQueries","setCurrentTNodeAsNotParent","decreaseElementDepthCount","elementEnd","hasClassInput","setDirectiveInputsWhichShadowsStyling","hasStyleInput","ɵɵelementStart","ɵɵelementEnd","elementContainerStartFirstCreatePass","ɵɵelementContainerStart","ɵɵelementContainerEnd","isSubscribable","listenerFn","useCapture","eventTargetResolver","listenerInternal","ɵɵlistener","loadComponentRenderer","getCurrentDirectiveDef","ɵɵsyntheticHostListener","isTNodeDirectiveHost","processOutputs","lCleanupIndex","existingListener","tNodeIdx","cleanupEventName","listenerIdxInLCleanup","findExistingListener","__ngLastListenerFn__","__ngNextListenerFn__","wrapListener","profiler","wrapWithPreventDefault","markViewDirty","executeListenerWithErrorHandling","nextListenerFn","wrapListenerIn_markDirtyAndPreventDefault","nextContextImpl","projectionSlots","wildcardNgContentIndex","ngProjectAsAttrVal","ngProjectAsAttrIdx","getProjectAsAttrValue","isSelectorInSelectorList","componentNode","projectionHeads","tails","componentChild","slotIndex","matchingProjectionSlotIndex","selectorIndex","applyProjection","ɵɵpropertyInterpolate1","ɵɵpropertyInterpolate","interpolation2","ɵɵpropertyInterpolate2","interpolation4","ɵɵpropertyInterpolate4","tStylingKey","isPrevDir","isClassBinding","tStylingAtIndex","getTStylingRangePrev","getTStylingRangeNext","foundDuplicate","tStyleRangeAtCursor","isStylingMatch","setTStylingRangeNextDuplicate","setTStylingRangePrevDuplicate","tStylingKeyCursor","parserState","textEnd","keyEnd","valueEnd","consumeClassToken","consumeWhitespace","checkStylingProperty","ɵɵstyleProp","ɵɵclassProp","checkStylingMap","keyValueArraySet","classStringParser","resetParserState","parseClassNameNext","parseClassName","getLastParsedKey","stylingFirstUpdatePass","updateStyling","normalizeSuffix","stringParser","hasStylingInputShadow","isInHostBindings","staticPrefix","oldKeyValueArray","newKeyValueArray","oldIndex","oldKey","newKey","setKey","Kt","updateStylingMap","styleKeyValueArray","unwrappedValue","toStylingKeyValueArray","isHostBindings","stylingKey","hostDirectiveDef","residual","collectStylingFromTAttrs","collectStylingFromDirectives","templateStylingKey","bindings","getTemplateHeadTStylingKey","setTemplateHeadTStylingKey","collectResidual","wrapInStaticStylingKey","tStylingKeyWithStatic","isHostBinding","tBindings","tmplHead","tmplTail","isKeyDuplicateOfStatic","previousNode","toTStylingRange","setTStylingRangeNext","setTStylingRangePrev","markDuplicates","markDuplicateOfResidualStyling","insertTStylingBinding","currentDirective","desiredMarker","currentMarker","tRange","isStylingValuePresent","getTStylingRangeNextDuplicate","findStylingValue","getTStylingRangePrevDuplicate","isProcedural","removeProperty","isImportant","applyStyling","isPrevDirection","rawKey","containsStatics","isStylingMap","valueAtLViewIndex","keyValueArrayGet","textNative","ɵɵtextInterpolate1","ɵɵtextInterpolate","interpolated","textBindingInternal","ɵɵtextInterpolate2","bindingUpdated3","interpolation3","ɵɵtextInterpolate3","ɵɵtextInterpolate4","ɵɵhostProperty","ɵɵsyntheticHostProperty","localeEn","LOCALE_DATA","normalizedLocale","getLocaleData","findLocaleData","LocaleDataIndex","PluralCase","common","LocaleId","DayPeriodsFormat","DayPeriodsStandalone","DaysFormat","DaysStandalone","MonthsFormat","MonthsStandalone","FirstDayOfWeek","WeekendRange","DateFormat","TimeFormat","DateTimeFormat","NumberSymbols","NumberFormats","CurrencyCode","CurrencySymbol","CurrencyName","Currencies","ExtraData","DEFAULT_LOCALE_ID","viewProviders","resolveProvider","lInjectablesBlueprint","providerFactory","beginIndex","ɵɵdirectiveInject","existingFactoryIndex","registerDestroyHooksIfSupported","existingProvidersFactoryIndex","existingViewProvidersFactoryIndex","doesViewProvidersFactoryExist","factoryFn","componentProviders","multiFactoryAdd","multiFactory","multiViewProvidersFactoryResolver","multiProvidersFactoryResolver","contextIndex","indexInFactory","providerIsTypeProvider","providerIsClassProvider","isClassProvider","existingCallbacksIndex","isComponentProvider","lData","multiResolve","factories","componentCount","multiProviders","processProvidersFn","ComponentRef$1","ComponentFactory$1","_NullComponentFactoryResolver","ERROR_COMPONENT","noComponentFactoryError","ComponentFactoryResolver$1","createElementRef","injectElementRef","RendererFactory2","Renderer2","nodeAtIndex","getOrCreateRenderer2","injectRenderer2","Sanitizer","Version","full","major","minor","patch","NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR","lNode","lViewInAContainer","lViewFirstChildTNode","collectNativeNodes","nodesInSlot","ViewRef$1","_cdRefInjectingView","_attachedToViewContainer","viewRefs","destroyLView","storeCleanupWithContext","detectChangesInternal","setIsInCheckNoChangesMode","checkNoChangesInternal","renderDetachView","appRef","RootViewRef","detectChangesInRootView","checkNoChangesInRootView","ComponentFactoryResolver","componentDef","ComponentFactory","nonMinified","templateName","SCHEDULER","selectorList","stringifyCSSSelector","stringifyCSSSelectorList","isBoundToModule","toRefArray","projectableNodes","rootSelectorOrNode","tElementNode","rootViewInjector","createChainedInjector","hostRenderer","elementName","hostRNode","elementOrSelector","selectRootElement","rElement","locateHostElement","getNamespace","rootFlags","playerHandler","createRootContext","rootTView","rootLView","viewRenderer","createRootComponentView","extractAttrsAndClassesFromSelector","Wa","nodesforSlot","hostFeatures","rootTNode","instantiateRootComponent","createRootComponent","LifecycleHooksFeature","ComponentRef","_rootLView","NgModuleRef$1","NgModuleFactory$1","parentInjector","NgModuleRef","_parent","_bootstrapComponents","destroyCbs","maybeUnwrapFn","_r3Injector","injectFlags","destroyed","NgModuleFactory","moduleType","visited","incoming","assertSameOrNotExisting","recurse","registerNgModuleType","slotOffset","pureFn","getBindingRoot","updateBinding","getBinding","pureFunction1Internal","pureFunction2Internal","pureFunction3Internal","bindingRoot","getPureFunctionReturnValue","pureFunction4Internal","exp5","exp6","returnValueIndex","lastReturnValue","pipeName","getPipeDef","pipeFactory","pipeInstance","isPure","EventEmitter_","isAsync","__isAsync","nextFn","errorFn","completeFn","_wrapInTimeout","_results","_emitDistinctChangesOnly","dirty","_changesDetected","_changes","symbolIterator","resultsTree","identityAccessor","newResultFlat","valueA","valueB","arrayEquals","TemplateRef","injectTemplateRef","R3TemplateRef","_declarationLView","_declarationTContainer","declarationViewLQueries","createTemplateRef","injectViewContainerRef","createContainerRef","R3ViewContainerRef","_lContainer","_hostTNode","_hostLView","getViewRefs","componentFactoryOrType","indexOrOptions","ngModuleRef","isComponentFactory","contextInjector","viewAttachedToContainer","prevIdx","prevLContainer","prevVCRef","adjustedIdx","_adjustIndex","containerLength","addToArray","trackMovedView","insertView","parentNativeNode","addViewToContainer","attachToViewContainerRef","getOrCreateViewRefs","viewRefsArr","commentNode","nativeNextSibling","LQuery_","queryList","setDirty","LQueries_","tQueries","noOfInheritedQueries","viewLQueries","tQuery","getByIndex","indexInDeclarationView","dirtyQueriesWithMatches","getTQuery","TQueryMetadata_","TQueries_","queriesForTemplateRef","childQueryIndex","tqueryClone","tquery","TQuery_","metadata","crossesNgTemplate","_appliesToNextNode","_declarationNodeIndex","isApplyingToNode","matchTNode","addMatch","declarationNodeIdx","matchTNodeWithReadOption","getIdxOfMatchingSelector","nodeMatchIdx","directiveOrProviderIdx","matchIdx","matchingIdx","createResultByTNodeType","createSpecialToken","queryIndex","lQuery","tQueryMatches","matchedNodeIdx","createResultForNode","lViewResults","materializeViewResults","collectQueryResults","embeddedLViews","getCurrentQueryIndex","unwrapElementRef","notifyOnChanges","createTQuery","createLQuery","tViewContentQueries","saveContentQueryAndDirectiveIndex","loadQueryInternal","track","makePropDecorator","bindingPropertyName","Output","HostListener","ApplicationInitStatus","appInits","initialized","donePromise","asyncInitPromises","initResult","observableAsPromise","APP_ID","APP_ID_RANDOM_PROVIDER","_randomChar","PLATFORM_INITIALIZER","APP_BOOTSTRAP_LISTENER","Console","DEFAULT_CURRENCY_CODE","ModuleWithComponentFactories","ngModuleFactory","componentFactories","declaration","compileModuleAndAllComponentsSync","Zone","enableLongStackTrace","shouldCoalesceEventChangeDetection","shouldCoalesceRunChangeDetection","hasPendingMacrotasks","hasPendingMicrotasks","onUnstable","onMicrotaskEmpty","assertZonePatched","_nesting","_outer","_inner","TaskTrackingZoneSpec","fork","longStackTraceZoneSpec","lastRequestAnimationFrameId","nativeRequestAnimationFrame","nativeCancelAnimationFrame","unpatchedRequestAnimationFrame","__symbol__","unpatchedCancelAnimationFrame","getNativeRequestAnimationFrame","delayChangeDetectionForEventsDelegate","isCheckStableRunning","fakeTopEventTask","scheduleEventTask","updateMicroTaskStatus","checkStable","delayChangeDetectionForEvents","isAngularZone","onInvokeTask","applyThis","applyArgs","onEnter","invokeTask","onLeave","onInvoke","onHasTask","hasTaskState","hasTask","_hasPendingMicrotasks","microTask","macroTask","onHandleError","forkInnerZoneWithAngularBehavior","EMPTY_PAYLOAD","runTask","cancelTask","runGuarded","isInAngularZone","NoopNgZone","Testability","_pendingCount","_isZoneStable","_didWork","_callbacks","taskTrackingZone","_watchAngularEvents","assertNotInAngularZone","_runCallbacksIfReady","doneCb","getPendingTasks","updateCb","macroTasks","creationLocation","addCallback","using","exactMatch","TestabilityRegistry","_applications","_testabilityGetter","addToWindow","testability","elem","findInAncestors","findTestabilityInTree","_NoopGetTestability","ALLOW_MULTIPLE_PLATFORMS","NgProbeToken","PlatformRef","inits","parentPlatformFactory","extraProviders","getPlatform","injectedProviders","createPlatform","assertPlatform","requiredToken","_modules","_destroyListeners","ngZoneOption","extra","ngZoneEventCoalescing","ngZoneRunCoalescing","getNgZone","ngZoneInjector","exceptionHandler","_callAndReportToErrorHandler","initStatus","runInitializers","setLocaleId","assertDefined","_moduleDoBootstrap","compilerOptions","optionsReducer","compileNgModuleFactory","bootstrapModuleFactory","ngDoBootstrap","objs","_exceptionHandler","_initStatus","_bootstrapListeners","_views","_runningTick","_stable","componentTypes","_onMicrotaskEmptySubscription","tick","isCurrentlyStable","stableSub","unstableSub","assertInAngularZone","merge$1","componentOrFactory","cf","compRef","testabilityRegistry","registerApplication","unregisterApplication","_loadComponent","attachToAppRef","detachFromAppRef","ChangeDetectorRef","injectChangeDetectorRef","isPipe","createViewRef","ViewRef","EmbeddedViewRef","DefaultIterableDifferFactory","isListLikeIterable","trackByFn","DefaultIterableDiffer","trackByIdentity","_linkedRecords","_unlinkedRecords","_previousItHead","_itHead","_itTail","_additionsHead","_additionsTail","_movesHead","_movesTail","_removalsHead","_removalsTail","_identityChangesHead","_identityChangesTail","nextIt","nextRemove","addRemoveOffset","moveOffsets","getPreviousIndex","adjPreviousIndex","_nextRemoved","localMovePreviousIndex","localCurrentIndex","_nextPrevious","_nextAdded","_nextMoved","_nextIdentityChange","check","_reset","itemTrackBy","mayBeDirty","trackById","_verifyReinsertion","_addIdentityChange","_mismatch","iterateListLike","_truncate","isDirty","previousRecord","_prev","_remove","_reinsertAfter","_moveAfter","_addAfter","IterableChangeRecord_","reinsertRecord","_addToMoves","nextRecord","_addToRemovals","_unlink","prevRecord","_prevRemoved","_insertAfter","_DuplicateMap","toIndex","_prevDup","_nextDup","_DuplicateItemRecordList","_head","_tail","atOrAfterIndex","duplicates","recordList","moveOffset","DefaultKeyValueDifferFactory","DefaultKeyValueDiffer","_records","_mapHead","_appendAfter","_previousMapHead","_changesHead","_changesTail","_nextChanged","_forEach","_maybeAddToChanges","_getOrCreateRecordForKey","_insertBeforeOrAppend","KeyValueChangeRecord_","_addToAdditions","_addToChanges","IterableDiffers","copied","defaultIterableDiffersFactory","KeyValueDiffers","kv","defaultKeyValueDiffersFactory","keyValDiff","defaultIterableDiffers","defaultKeyValueDiffers","platformCore","createPlatformFactory","APPLICATION_MODULE_PROVIDERS","queue","$localize","getGlobalLocale","ɵɵdefineNgModule","BaseControlValueAccessor","onChange","onTouched","BuiltInControlValueAccessor","Be","NG_VALUE_ACCESSOR","DEFAULT_VALUE_ACCESSOR","DefaultValueAccessor","COMPOSITION_BUFFER_MODE","_compositionMode","kn","_composing","ɵgetDOM","getUserAgent","_isAndroid","NG_VALIDATORS","NG_ASYNC_VALIDATORS","EMAIL_REGEXP","control","isEmptyInputValue","minValidator","maxValidator","requiredValidator","requiredTrueValidator","emailValidator","minLength","hasValidLength","minlength","requiredLength","actualLength","minLengthValidator","maxlength","maxLengthValidator","regexStr","requiredPattern","actualValue","nullValidator","patternValidator","validators","compose","composeAsync","required","ɵisObservable","arrayOfErrors","validator","isValidatorFn","presentValidators","isPresent","mergeErrors","executeValidators","normalizeValidators","toObservable","controlValidators","dirValidator","_rawValidators","_rawAsyncValidators","currentValidators","makeValidatorsArray","validatorsToAdd","hasValidator","AbstractControlDirective","_onDestroyCallbacks","pristine","touched","untouched","statusChanges","_composedValidatorFn","composeValidators","_composedAsyncValidatorFn","composeAsyncValidators","errorCode","getError","NgControl","valueAccessor","ControlContainer","AbstractControlStatus","cd","_cd","NgControlStatus","NgControlStatusGroup","setUpValidators","writeValue","registerOnChange","_pendingValue","_pendingChange","_pendingDirty","updateOn","updateControl","setUpViewChangePipeline","emitModelEvent","viewToModelUpdate","_registerOnDestroy","_unregisterOnChange","setUpModelChangePipeline","registerOnTouched","_pendingTouched","setUpBlurPipeline","setDisabledState","onDisabledChange","registerOnDisabledChange","_unregisterOnDisabledChange","setUpDisabledChangeHandler","cleanUpValidators","_invokeOnDestroyCallbacks","_registerOnCollectionChange","registerOnValidatorChange","getControlValidators","setValidators","mergeValidators","asyncValidators","getControlAsyncValidators","asyncValidator","setAsyncValidators","onValidatorChange","updateValueAndValidity","isControlUpdated","updatedValidators","updatedAsyncValidators","markAsDirty","emitModelToViewChange","viewModel","isFirstChange","_syncPendingControls","valueAccessors","defaultAccessor","builtinAccessor","customAccessor","un","VALID","INVALID","PENDING","DISABLED","validatorOrOpts","isOptionsObj","isFormControl","isFormGroup","isFormArray","FormArray","getRawValue","isGroup","_forEachChild","AbstractControl","_hasOwnPendingAsyncValidator","_onCollectionChange","_onDisabledChange","coerceToValidator","coerceToAsyncValidator","validatorFn","asyncValidatorFn","_updateOn","addValidators","removeValidators","onlySelf","markAllAsTouched","markAsUntouched","_updateTouched","markAsPristine","_updatePristine","markAsPending","skipPristineCheck","_parentMarkedDirty","_updateValue","_updateAncestors","changeFn","_setInitialStatus","_cancelExistingSubscription","_runValidator","_calculateStatus","_runAsyncValidator","ctrl","_updateTreeValidity","_allControlsDisabled","_asyncValidationSubscription","_updateControlsErrors","delimiter","controlToFind","_find","_anyControlsHaveStatus","_anyControls","_anyControlsDirty","_anyControlsTouched","formState","pickValidators","pickAsyncValidators","_onChange","_applyFormState","_setUpdateStrategy","_initObservables","initialValueIsDefault","_isBoxedValue","Dt","emitViewToModelChange","removeListItem","cn","_setUpControls","setParent","registerControl","controlName","assertAllValuesPresent","assertControlPresent","patchValue","_reduceChildren","subtreeUpdated","updated","_reduceValue","initValue","_registerControl","formDirectiveProvider$1","NgForm","resolvedPromise$1","_directives","ngSubmit","_findContainer","setUpControl","removeControl","setUpFormContainer","syncPendingControls","resetForm","formControlBinding$1","NgModel","Ti","_registered","_setValidators","_setAsyncValidators","selectValueAccessor","_checkForErrors","_setUpControl","_updateDisabled","isPropertyUpdated","formDirective","controlPath","_isStandalone","_setUpStandalone","addControl","_checkParentType","_checkName","disabledValue","ɵNgNoValidate","NUMBER_VALUE_ACCESSOR","NumberValueAccessor","RadioControlRegistryModule","NG_MODEL_WITH_FORM_CONTROL_WARNING","formControlBinding","FormControlDirective","_ngModelWarningConfig","_ngModelWarningSent","_isControlChanged","previousForm","cleanUpControl","_ngModelWarningSentOnce","formDirectiveProvider","FormGroupDirective","_updateDomValue","_checkFormPresent","_updateValidators","_updateRegistrations","_oldForm","_setUpFormContainer","_cleanUpFormContainer","oldCtrl","newCtrl","cleanUpFormContainer","controlNameBinding","FormControlName","_added","updateModel","AbstractValidatorDirective","_validator","inputName","normalizeInput","createValidator","REQUIRED_VALIDATOR","RequiredValidator","CHECKBOX_REQUIRED_VALIDATOR","CheckboxRequiredValidator","toBoolean","ɵInternalFormsSharedModule","warnOnNgModelWithFormControl","FormBuilder","controlsConfig","_reduceControls","isAbstractControlOptions","_createControl","controlConfig","_uniqueAutocompleteIdCounter","MatAutocompleteSelectedEvent","_MatAutocompleteMixinBase","mixinDisableRipple","MAT_AUTOCOMPLETE_DEFAULT_OPTIONS","autoActiveFirstOption","_MatAutocompleteBase","_activeOptionChanges","showPanel","_isOpen","displayWith","optionSelected","optionActivated","_classList","inertGroups","_autoActiveFirstOption","coerceStringArray","_setVisibilityClasses","_keyManager","withWrap","_setVisibility","panel","labelId","ariaLabelledby","_visibleClass","_hiddenClass","qe","MatAutocomplete","MAT_OPTGROUP","MatOption","MAT_OPTION_PARENT_COMPONENT","MAT_AUTOCOMPLETE_SCROLL_STRATEGY","MAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER","MAT_AUTOCOMPLETE_VALUE_ACCESSOR","_MatAutocompleteTriggerBase","_formField","_defaults","_componentDestroyed","_autocompleteDisabled","_manuallyFloatingLabel","_viewportSubscription","_canOpenOnNextFocus","_closeKeyEventStream","_windowBlurHandler","panelOpen","_onTouched","autocompleteAttribute","_overlayAttached","optionSelections","autocomplete","onSelectionChange","_setStrategyPositions","_destroyPanel","_floatLabel","_resetLabel","_closingActionsSubscription","_getOutsideClickStream","MatOptionSelectionChange","clickTarget","formField","customOrigin","_setTriggerValue","activeOption","_selectViaInteraction","_resetActiveItem","prevActiveItem","isArrowKey","onKeydown","_canOpen","openPanel","_scrollToOption","activeItemIndex","shouldAnimate","floatLabel","_animateAndLockLabel","firstStable","optionChanges","wasOpen","_setValueAndClose","closePanel","toDisplay","_control","_clearPreviousSelectedOption","_emitSelectEvent","_getConnectedElement","_getPanelWidth","_portal","getLabelId","_getOverlayConfig","_subscribeToClosingActions","_getOverlayPosition","overlayPanelClass","belowPositions","_aboveClass","abovePositions","getConnectedOverlayOrigin","panelWidth","_getHostWidth","readOnly","labelCount","_countGroupLabelsBeforeOption","optionGroups","_setScrollTop","_getHostElement","newScrollPosition","_getOptionScrollPosition","offsetTop","_getScrollTop","i2$1","MAT_FORM_FIELD","MatOptionModule","MatCommonModule","_MatBadgeBase","mixinDisabled","BADGE_CONTENT_CLASS","MatBadge","_ariaDescriber","_animationMode","_color","_overlap","_setColor","_content","newContent","_updateRenderedContent","_description","newDescription","_updateHostAriaDescription","_hidden","_badgeElement","_clearExistingBadges","_createBadgeElement","removeDescription","badgeElement","activeClass","newContentNormalized","describe","colorPalette","badges","ANIMATION_MODULE_TYPE","matBottomSheetAnimations","bottomSheetState","AnimationDurations","AnimationCurves","MatBottomSheetConfig","restoreFocus","MatBottomSheetContainer","_interactivityChecker","breakpointObserver","bottomSheetConfig","_animationState","_animationStateChanged","_elementFocusedBeforeOpened","_validatePortalAttached","_setPanelClass","_savePreviouslyFocusedElement","_breakpointSubscription","isMatched","toState","_restoreFocus","_trapFocus","elementToFocus","_forceFocus","_focusTrap","_focusByCssSelector","toFocus","i4","MatBottomSheetRef","containerInstance","_afterDismissed","_afterOpened","_closeFallbackTimeout","_result","exit","MAT_BOTTOM_SHEET_DEFAULT_OPTIONS","MatBottomSheet","_parentBottomSheet","_bottomSheetRefAtThisLevel","_openedBottomSheetRef","componentOrTemplateRef","_applyConfigDefaults","_attachContainer","_createInjector","contentRef","enter","containerPortal","userInjector","MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS","MAT_BUTTON_TOGGLE_GROUP","MAT_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR","MatButtonToggleGroup","uniqueIdCounter","MatButtonToggleChange","_changeDetector","_controlValueAccessorChangeFn","appearance","_buttonToggles","_markForCheck","_selectionModel","multiple","_setSelectionByValue","isUserInput","deferEvents","_updateModelValue","_rawValue","_clearSelection","_selectValue","correspondingOption","MatButtonToggle","_MatButtonToggleBase","toggleGroup","defaultTabIndex","_isSingleSelector","_checked","parsedTabIndex","buttonToggleGroup","_appearance","_isSelected","_syncButtonToggle","_isPrechecked","_buttonElement","newChecked","MatRippleModule","BUTTON_HOST_ATTRIBUTES","_MatButtonBase","mixinColor","MatButton","isRoundButton","_hasHostAttributes","isIconButton","color","focusVia","disableRipple","MatRipple","MatAnchor","focusMonitor","animationMode","_haltDisabledEvents","MatCardContent","MatCardTitle","MatCardActions","align","MatCard","MAT_CHECKBOX_DEFAULT_OPTIONS","MAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY","clickAction","MAT_CHECKBOX_CONTROL_VALUE_ACCESSOR","MatCheckbox","MatCheckboxChange","_MatCheckboxBase","mixinTabIndex","labelPosition","indeterminateChange","_currentAnimationClass","_currentCheckState","_indeterminate","defaultColor","_required","focusOrigin","_syncIndeterminate","_transitionCheckState","indeterminate","newState","oldState","_getAnimationClassForCheckStateTransition","animationClass","_inputElement","animSuffix","nativeCheckbox","_MatCheckboxRequiredValidatorModule","MAT_CHIP_REMOVE","MAT_CHIP_AVATAR","MAT_CHIP_TRAILING_ICON","_MatChipMixinBase","MatChipBase","MatChip","globalRippleOptions","chipListSelectable","_chipListMultiple","_chipListDisabled","_selectable","_removable","selectionChange","_addHostClassName","_chipRippleTarget","_chipRipple","RippleRenderer","setupTriggerEvents","rippleConfig","_animationsDisabled","coercedValue","_dispatchSelectionChange","selectable","basicChipAttrName","chip","_removeTriggerEvents","removable","toggleSelected","MAT_RIPPLE_GLOBAL_OPTIONS","MatChipRemove","_parentChip","parentChip","MAT_CHIPS_DEFAULT_OPTIONS","nextUniqueId$1","MatChipInput","focused","_addOnBlur","separatorKeyCodes","chipEnd","_chipList","registerInput","stateChanges","_focusLastChipOnBackspace","_allowFocusEscape","_emitChipEnd","addOnBlur","_blur","_keydown","_isSeparatorKey","chipInput","_MatChipListBase","mixinErrorState","_defaultErrorStateMatcher","_parentForm","_parentFormGroup","ngControl","MatChipListChange","MatChipList","controlType","_lastDestroyedChipIndex","_uid","_tabIndex","_userTabIndex","_compareWith","o1","o2","ariaOrientation","_syncChipsState","_initializeSelection","_chipInput","_placeholder","_hasFocusedChip","chips","Ge","withVerticalOrientation","withHomeAndEnd","withHorizontalOrientation","_resetChips","_updateTabIndex","_updateFocusForDestroyedChips","updateErrorState","_dropSubscriptions","_ariaDescribedby","_originatesFromChip","_focusInput","newChipIndex","_sortValues","correspondingChip","selectViaInteraction","valueToEmit","_markAsTouched","_listenToChipsFocus","_listenToChipsSelection","_listenToChipsRemoved","_chipFocusSubscription","_chipBlurSubscription","_chipSelectionSubscription","_chipRemoveSubscription","chipSelectionChanges","_propagateChanges","chipFocusChanges","chipIndex","_isValidIndex","chipBlurChanges","chipRemoveChanges","MatFormFieldControl","ErrorStateMatcher","STANDARD_CURVE","DECELERATION_CURVE","ACCELERATION_CURVE","SHARP_CURVE","COMPLEX","ENTERING","EXITING","MATERIAL_SANITY_CHECKS","_sanityChecks","_hasDoneGlobalChecks","_disableRipple","errorState","errorStateMatcher","isErrorState","_pendingSubscribers","_notifySubscriber","MAT_DATE_LOCALE","DateAdapter","_localeChanges","localeChanges","isDateInstance","getYear","firstValid","secondValid","compareDate","MAT_DATE_FORMATS","ISO_8601_REGEX","valueFunction","valuesArray","NativeDateAdapter","matDateLocale","useUtcForDisplay","dtf","timeZone","_format","_createDateWithOverflow","displayFormat","addCalendarMonths","_2digit","MAT_NATIVE_DATE_FORMATS","dateInput","monthYearLabel","dateA11yLabel","monthYearA11yLabel","NativeDateModule","MatLine","setClass","MatLineModule","RippleRef","fadeOutRipple","defaultRippleAnimationConfig","enterDuration","exitDuration","passiveEventOptions","pointerDownEvents","pointerUpEvents","_target","_isPointerDown","_activeRipples","_pointerUpEventsRegistered","animationConfig","centered","radius","distanceToFurthestCorner","ripple","transitionDuration","enforceStyleRecalculation","rippleRef","persistent","_mostRecentTransientRipple","_runTimeoutOutsideZone","isMostRecentTransientRipple","fadeOut","wasActive","rippleEl","_triggerElement","_registerEvents","_onTouchStart","_onPointerUp","isFakeMousedown","_lastTouchStartEvent","rippleDisabled","fadeInRipple","terminateOnPointerUp","eventTypes","getPropertyValue","distX","distY","globalOptions","_globalOptions","_rippleRenderer","fadeOutAllNonPersistent","_setupTriggerEventsIfEnabled","_trigger","fadeOutAll","configOrX","MatPseudoCheckbox","MatPseudoCheckboxModule","_uniqueIdCounter","_MatOptionBase","_mostRecentViewValue","_stateChanges","_emitSelectionChangeEvent","viewValue","optionIndex","optionsArray","groupCounter","optionOffset","optionHeight","currentScrollPosition","panelHeight","Ct","_cellClicked","activeDate","_dateSelected","_monthSelectedInYearView","_goToDateInView","_yearSelectedInMultiYearView","MatCalendarCell","displayValue","compareValue","MatCalendarBody","numCols","activeCell","isRange","cellAspectRatio","previewStart","previewEnd","selectedValueChange","previewChange","_enterHandler","It","_skipNextFocus","_getCellFromElement","_leaveHandler","startValue","endValue","columnChanges","_firstRowOffset","_cellPadding","_cellWidth","colIndex","cellNumber","movePreview","Pe","isStart","isEnd","isInRange","comparisonStart","comparisonEnd","_isComparisonStart","_isRangeStart","_isInRange","previousCell","previousRow","_isRangeEnd","_isComparisonEnd","nextCell","nextRow","isTableCell","col","rangeEnabled","DateRange","MatDateSelectionModel","_adapter","_selectionChanged","selectionChanged","MatSingleDateSelectionModel","_isValidDateInstance","updateSelection","MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER","MAT_DATE_RANGE_SELECTION_STRATEGY","MatMonthView","_dateFormats","_dateAdapter","_rangeStrategy","_rerenderSubscription","selectedChange","_userSelection","activeDateChange","_activeDate","oldActiveDate","validDate","getValidDateOrNull","deserialize","clampDate","minDate","maxDate","_hasSameMonthAndYear","_setRanges","_minDate","_maxDate","comparisonChange","rangeStartDate","rangeEndDate","selectedYear","selectedMonth","selectedDate","_getDateInCurrentMonth","_previewStart","_previewEnd","addCalendarDays","getNumDaysInMonth","addCalendarYears","_selectionKeyPressed","_canSelect","_focusActiveCell","_todayDate","_getCellCompareValue","_monthLabel","monthLabel","getMonthNames","firstOfMonth","_firstWeekOffset","getDayOfWeek","getFirstDayOfWeek","_initWeekdays","_createWeekCells","_matCalendarBody","previewRange","createPreview","narrowWeekdays","getDayOfWeekNames","long","dateNames","getDateNames","_weeks","_shouldEnableDate","cellClasses","dateClass","dateFilter","d1","d2","selectedValue","_rangeStart","_rangeEnd","_isRange","_comparisonRangeStart","_comparisonRangeEnd","MatMultiYearView","yearSelected","isSameMultiYearView","_setSelectedYear","_todayYear","minYearOfPage","getActiveOffset","_years","_createCellForYear","yearsPerPage","_yearSelected","yearName","getYearName","_shouldEnableYear","_selectedYear","dateAdapter","date1","date2","year1","year2","startingYear","getStartingYear","euclideanModulo","MatYearView","monthSelected","_setSelectedMonth","normalizedDate","_monthSelected","_todayMonth","_getMonthInCurrentYear","_yearLabel","_createCellForMonth","_shouldEnableMonth","activeYear","_isYearAndMonthAfterMaxDate","_isYearAndMonthBeforeMinDate","maxYear","maxMonth","minYear","minMonth","_selectedMonth","MatDatepickerIntl","calendarLabel","openCalendarLabel","closeCalendarLabel","prevMonthLabel","nextMonthLabel","prevYearLabel","nextYearLabel","prevMultiYearLabel","nextMultiYearLabel","switchToMonthViewLabel","switchToMultiYearViewLabel","MatCalendarHeader","_intl","_buttonDescriptionId","maxYearOfPage","minYearName","maxYearName","formatYearRange","_isSameView","MatCalendar","_moveFocusOnNextTick","viewChanged","_intlChanges","vn","_startAt","_clampedActiveDate","_currentView","viewChangedResult","_calendarHeaderPortal","headerComponent","startAt","focusActiveCell","_getCurrentViewComponent","sameDate","normalizedYear","normalizedMonth","monthView","yearView","multiYearView","i8","matDatepickerAnimations","transformPanel","keyframes","fadeInCalendar","datepickerUid","MAT_DATEPICKER_SCROLL_STRATEGY","MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER","_MatDatepickerContentBase","MatDatepickerContent","_globalModel","_rangeSelectionStrategy","intl","Ii","_subscriptions","_animationDone","_actionsPortal","_closeButtonText","_model","datepicker","touchUi","Jt","newSelection","selectionFinished","MatDatepickerBase","_inputStateChanges","_touchUi","xPosition","yPosition","openedStream","closedStream","_opened","_focusedElementBeforeOpen","_backdropHarnessClass","datepickerInput","getStartValue","getThemePalette","_panelClass","_setConnectedPositions","_destroyOverlay","_openOverlay","_componentRef","_startExitAnimation","completeClose","_applyPendingSelection","isDialog","getOverlayLabelId","_getDialogStrategy","_getDropdownStrategy","_getCloseStream","_forwardContentValues","primaryX","secondaryX","primaryY","secondaryY","MatDatepicker","MatDatepickerInputEvent","MatDatepickerInputBase","dateChange","_validatorOnChange","_cvaOnChange","_valueChangesSubscription","_localeSubscription","_parseValidator","_lastValueValid","matDatepickerParse","_filterValidator","controlValue","_matchesFilter","matDatepickerFilter","_minValidator","_getMinDate","matDatepickerMin","_maxValidator","_getMaxDate","matDatepickerMax","_assignValueProgrammatically","_getValueFromModel","_parentDisabled","blur","_assignValue","_shouldHandleChangeEvent","_isValidValue","_formatValue","dateInputsHaveChanged","_openPopup","lastValueWasValid","_assignValueToModel","_getDateFilter","MAT_DATEPICKER_VALUE_ACCESSOR","MatDatepickerInput","MAT_DATEPICKER_VALIDATORS","dateFormats","ki","_closedSubscription","_datepicker","_registerModel","_min","validValue","_max","_dateFilter","wasMatchingValue","modelValue","MAT_INPUT_VALUE_ACCESSOR","MatDatepickerToggleIcon","MatDatepickerToggle","_watchStateChanges","datepickerStateChanged","inputStateChanged","datepickerToggled","Rt","MatDialogConfig","ariaDescribedBy","ariaLabelledBy","matDialogAnimations","dialogContainer","_MatDialogContainerBase","_elementFocusedBeforeDialogWasOpened","_closeInteractionType","_ariaLabelledBy","_setupFocusTrap","_capturePreviouslyFocusedElement","_containsFocus","focusedSuccessfully","_focusDialogContainer","previousElement","MatDialogContainer","_state","MatDialogRef","_containerInstance","_afterClosed","_beforeClosed","_finishDialogClose","componentInstance","_closeDialogVia","_recaptureFocus","dialogResult","_getPositionStrategy","addPanelClass","removePanelClass","interactionType","MAT_DIALOG_DEFAULT_OPTIONS","MAT_DIALOG_SCROLL_STRATEGY","MAT_DIALOG_SCROLL_STRATEGY_PROVIDER","_MatDialogBase","_parentDialog","_dialogRefConstructor","_dialogContainerType","_dialogDataToken","_openDialogsAtThisLevel","_afterAllClosedAtThisLevel","_afterOpenedAtThisLevel","_ariaHiddenElements","_dialogAnimatingOpen","afterAllClosed","openDialogs","_getAfterAllClosed","getDialogById","_lastDialogRef","_attachDialogContainer","animationStateSubscription","dialogAnimationEvent","_animationStateSubscriptions","_attachDialogContent","_hideNonDialogContentFromAssistiveTechnology","_removeOpenDialog","_initializeWithAttachedContent","_closeDialogs","dialogConfig","siblings","sibling","dialogs","MatDialog","parentDialog","dialogElementUid","MatDialogClose","_dialog","getClosestDialog","proxiedChange","_matDialogClose","_matDialogCloseResult","screenX","screenY","MatDialogTitle","_dialogRef","MatDialogContent","MatDialogActions","MatDivider","_inset","nextId$1","CDK_ACCORDION","CdkAccordion","_openCloseAllActions","_multi","CdkAccordionItem","accordion","_expansionDispatcher","_openCloseAllSubscription","expandedChange","_expanded","_removeUniqueSelectionListener","accordionId","_subscribeToOpenCloseAllActions","notify","CdkAccordionModule","MAT_ACCORDION","EXPANSION_PANEL_ANIMATION_TIMING","matExpansionAnimations","indicatorRotate","bodyExpansion","MatExpansionPanelContent","MAT_EXPANSION_PANEL_DEFAULT_OPTIONS","_uniqueSelectionDispatcher","_hideToggle","afterExpand","afterCollapse","_inputChanges","_headerId","_bodyAnimationDone","fromState","hideToggle","_togglePosition","togglePosition","displayMode","_lazyContent","_body","focusedElement","_MatExpansionPanelHeaderMixinBase","MatExpansionPanelHeaderBase","MatExpansionPanelHeader","_parentChangeSubscription","accordionHideToggleChange","expandedHeight","collapsedHeight","_getExpandedState","_isExpanded","_toggle","_handleHeaderKeydown","_handleHeaderFocus","MatExpansionPanelDescription","MatExpansionPanelTitle","MatAccordion","_ownHeaders","show","_headers","updateOutlineGap","nextUniqueId$2","MAT_ERROR","MatError","ariaLive","matFormFieldAnimations","transitionMessages","_MAT_HINT","MatHint","MatLabel","MatPlaceholder","MAT_PREFIX","MAT_SUFFIX","MatSuffix","_MatFormFieldBase","MAT_FORM_FIELD_DEFAULT_OPTIONS","MatFormField","_outlineGapCalculationNeededImmediately","_outlineGapCalculationNeededOnStable","_showAlwaysAnimate","_subscriptAnimationState","_hintLabel","_hintLabelId","_labelId","_getDefaultFloatLabelState","_animationsEnabled","_hideRequiredMarker","hideRequiredMarker","_processHints","_explicitFormFieldControl","_controlNonStatic","_controlStatic","_hasFloatingLabel","_connectionContainerRef","_validateControlChild","_validatePlaceholders","_syncDescribedByIds","_prefixChildren","_suffixChildren","_hintChildren","_errorChildren","_placeholderChild","_labelChildNonStatic","_labelChildStatic","_canLabelFloat","shouldLabelFloat","_shouldAlwaysFloat","_hasLabel","_shouldLabelFloat","_hasPlaceholder","_label","_validateHints","userAriaDescribedBy","_getDisplayedMessages","startHint","hint","endHint","setDescribedByIds","labelEl","outlineStartSelector","outlineGapSelector","gapElements","_isAttachedToDOM","startWidth","gapWidth","startEls","gapEls","containerStart","_getStartEnd","labelChildren","labelStart","labelWidth","outlineGapPadding","ttWindow","iconName","literal","SvgIconConfig","svgText","MatIconRegistry","_httpClient","_sanitizer","_errorHandler","_svgIconConfigs","_iconSetConfigs","_cachedIconsByUrl","_inProgressUrlFetches","_fontCssClassesByAlias","_resolvers","_defaultFontSetClass","addSvgIconInNamespace","addSvgIconLiteralInNamespace","_addSvgIconConfig","cleanLiteral","getMatIconFailedToSanitizeLiteralError","trustedLiteral","addSvgIconSetInNamespace","addSvgIconSetLiteralInNamespace","_addSvgIconSetConfig","safeUrl","getMatIconFailedToSanitizeUrlError","cachedIcon","cloneSvg","_loadSvgIconFromConfig","svg","iconKey","_getSvgFromConfig","_getIconConfigFromResolvers","iconSetConfigs","_getSvgFromIconSetConfigs","getMatIconNameNotFoundError","_svgElementFromConfig","namedIcon","_extractIconWithNameFromAnySet","iconSetFetchRequests","iconSetConfig","_loadSvgIconSetFromConfig","foundIcon","_extractSvgIconFromSet","_fetchIcon","iconSet","iconSource","iconElement","_setSvgAttributes","_toSvgElement","_svgElementFromString","div","viewBox","iconConfig","getMatIconNoHttpProviderError","inProgressFetch","configNamespace","svgElement","isSafeUrlWithOptions","_MatIconBase","MAT_ICON_LOCATION","getPathname","funcIriAttributes","funcIriAttributeSelector","funcIriPattern","MatIcon","_iconRegistry","ariaHidden","_inline","_currentIconFetch","inline","_svgIcon","_updateSvgIcon","_clearSvgElement","_fontSet","_cleanupFontValue","_updateFontIconClasses","_fontIcon","cachedElements","_elementsWithExternalReferences","_previousPath","_prependPathToReferences","svgIcon","styleTags","_cacheChildrenWithExternalReferences","layoutElement","childCount","_usingFontIcon","fontSetClass","fontSet","classNameForFontAlias","getDefaultFontSetClass","_previousFontSetClass","fontIcon","_previousFontIconClass","elementsWithFuncIri","elementWithReference","rawName","_svgNamespace","_svgName","_splitIconName","getNamedSvgIcon","_setSvgElement","MAT_INPUT_INVALID_TYPES","_MatInputBase","MatInput","inputValueAccessor","_autofillMonitor","autofilled","_readonly","_neverEmptyInputTypes","getSupportedInputTypes","_inputValueAccessor","_previousNativeValue","_isServer","_isNativeSelect","_isTextarea","_isInFormField","_validateType","_dirtyCheckNativeValue","_dirtyCheckPlaceholder","isFocused","_hideControlPlaceholder","_previousPlaceholder","validity","badInput","_isNeverEmpty","_isBadInput","selectElement","firstOption","_MatListBase","_MatListItemMixinBase","MAT_LIST","MAT_NAV_LIST","MatNavList","MatList","_getListType","MatListAvatarCssMatStyler","MatListIconCssMatStyler","MatListItem","navList","_isInteractiveList","_list","setLines","_lines","_handleKeydown","_onAnimationStart","_onAnimationDone","matMenuAnimations","transformMenu","fadeInItems","MAT_MENU_CONTENT","MAT_MENU_PANEL","_MatMenuItemBase","MatMenuItem","_parentMenu","_hovered","_focused","_highlighted","_triggersSubmenu","icons","isHighlighted","MAT_MENU_DEFAULT_OPTIONS","overlapTrigger","menuPanelUid","_MatMenuBase","_xPosition","_yPosition","_directDescendantItems","_tabSubscription","_panelAnimationState","_overlapTrigger","panelId","setPositionClasses","previousPanelClass","_previousPanelClass","_updateDirectDescendants","withTypeAhead","focusedItem","_item","parentMenu","setFocusOrigin","lazyContent","_focusFirstItem","elevation","_baseElevation","newElevation","_elevationPrefix","customElevation","_previousElevation","posX","posY","_isAnimating","_allItems","MatMenu","MAT_MENU_SCROLL_STRATEGY","MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER","passiveEventListenerOptions","_MatMenuTriggerBase","_menuItemInstance","_menuOpen","_hoverSubscription","_menuCloseSubscription","_handleTouchStart","_openedBy","menuOpened","onMenuOpen","menuClosed","onMenuClose","_parentMaterialMenu","triggersSubmenu","menu","_menu","_destroyMenu","_checkMenu","_handleHover","closeMenu","openMenu","_setPosition","_getPortal","menuData","_menuClosingActions","_initMenu","_startAnimation","menuOpen","_resetAnimation","_attached","_setIsMenuOpen","_setMenuElevation","focusFirstItem","setElevation","_setHighlighted","_subscribeToPositions","originFallbackX","overlayFallbackY","originFallbackY","overlayFallbackX","parentClose","hover","toggleMenu","i3$1","MatMenuTrigger","_changePageSize","firstPage","MatPaginatorIntl","itemsPerPageLabel","nextPageLabel","previousPageLabel","firstPageLabel","lastPageLabel","getRangeLabel","MAT_PAGINATOR_INTL_PROVIDER","parentIntl","MAT_PAGINATOR_DEFAULT_OPTIONS","_MatPaginatorMixinBase","mixinInitialized","_MatPaginatorBase","_pageIndex","_length","_pageSizeOptions","_hidePageSize","_showFirstLastButtons","pageSizeOptions","hidePageSize","showFirstLastButtons","_pageSize","_updateDisplayedPageSizeOptions","_initialized","_markInitialized","hasNextPage","previousPageIndex","_emitPageEvent","hasPreviousPage","getNumberOfPages","maxPageIndex","_displayedPageSizeOptions","formFieldAppearance","_formFieldAppearance","i7","_MatProgressBarBase","MAT_PROGRESS_BAR_LOCATION","MAT_PROGRESS_BAR_DEFAULT_OPTIONS","progressbarId","MatProgressBar","_isNoopAnimation","_bufferValue","animationEnd","_animationEndSubscription","_rectangleFillValue","bufferValue","_primaryValueBar","_MatProgressSpinnerBase","MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS","diameter","MatProgressSpinner","_diameter","trackedDiameters","_diameters","_spinnerAnimationLabel","_getSpinnerAnimationLabel","_noopAnimations","_forceAnimations","strokeWidth","_styleRoot","_attachStyleNode","_strokeWidth","_getCircleRadius","_getStrokeCircumference","currentScale","styleRoot","currentDiameter","diameters","diametersForElement","styleTag","_getAnimationText","strokeCircumference","MatSpinner","MAT_RADIO_DEFAULT_OPTIONS","MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR","MatRadioGroup","MatRadioChange","MAT_RADIO_GROUP","_MatRadioGroupBase","_labelPosition","_updateRadioButtonNames","_markRadiosForCheck","_updateSelectedRadioFromValue","_checkSelectedRadioButton","_radios","radio","MatRadioButton","_MatRadioButtonMixinBase","MatRadioButtonBase","_MatRadioButtonBase","radioGroup","_radioDispatcher","_providerOverride","wt","newCheckedState","_setDisabled","_touch","groupValueChanged","changeDetector","radioDispatcher","providerOverride","_panelDoneAnimatingStream","matSelectAnimations","transformPanelWrap","animateChild","MAT_SELECT_SCROLL_STRATEGY","MAT_SELECT_CONFIG","MAT_SELECT_SCROLL_STRATEGY_PROVIDER","MatSelectChange","_MatSelectMixinBase","MAT_SELECT_TRIGGER","MatSelectTrigger","_MatSelectBase","_parentFormField","_panelOpen","_triggerAriaLabelledBy","_destroy","_valueId","_overlayPanelClass","_disableOptionCentering","disableOptionCentering","optionSelectionChanges","openedChange","_openedStream","_closedStream","typeaheadDebounceInterval","_typeaheadDebounceInterval","_panelDoneAnimating","_initKeyManager","_resetOptions","newAriaLabelledby","_getTriggerAriaLabelledby","_highlightCorrectOption","selectedOptions","_handleOpenKeydown","_handleClosedKeydown","isOpenKey","isTyping","previouslySelectedOption","selectedOption","hasDeselectedOptions","previouslyFocusedIndex","_overlayDir","_positioningSettled","withAllowedModifierKeys","_scrollOptionIntoView","changedOrDestroyed","_onSelect","wasSelected","sortComparator","_getChangeEvent","MatSelect","_scrollTop","_triggerFontSize","_transformOrigin","_positions","scrollBuffer","maxScroll","itemHeight","_getItemHeight","_triggerRect","fontSize","_calculateOverlayPosition","_calculateOverlayOffsetX","paddingWidth","SELECT_MULTIPLE_PANEL_PADDING_X","SELECT_PANEL_PADDING_X","leftOverflow","rightOverflow","optionOffsetFromPanelTop","optionHeightAdjustment","maxOptionsDisplayed","_getItemCount","topSpaceAvailable","bottomSpaceAvailable","panelHeightTop","panelHeightBottom","_adjustPanelUp","_adjustPanelDown","_getOriginBasedOnOption","distanceBelowViewport","distanceAboveViewport","selectedOptionOffset","_calculateOverlayScroll","_calculateOverlayOffsetY","_checkOverlayWithinViewport","_onBackdropClicked","matDrawerAnimations","transformDrawer","MAT_DRAWER_DEFAULT_AUTOSIZE","MAT_DRAWER_CONTAINER","MatDrawerContent","_container","_contentMarginChanges","MatDrawerContainer","MatDrawer","_elementFocusedBeforeDrawerWasOpened","_enableAnimations","_mode","_disableClose","_animationStarted","_animationEnd","onPositionChanged","_modeChanged","_takeFocus","_isFocusWithinDrawer","_openedVia","_updatePositionInParent","_updateFocusTrapState","_autoFocus","hasMovedFocus","_anchor","openedVia","_setOpen","newPosition","defaultAutosize","_drawers","_doCheckSubject","_contentMargins","_validateDrawers","updateContentMargins","_autosize","_start","_end","_backdropOverride","_userContent","_allDrawers","drawer","_watchDrawerToggle","_watchDrawerPosition","_watchDrawerMode","_isDrawerOpen","_left","_getWidth","_right","_setContainerClass","_closeModalDrawersViaBackdrop","_canHaveBackdrop","_closeViaBackdropClick","MatSidenavContent","MatSidenavContainer","MatSidenav","_fixedInViewport","_fixedTopGap","_fixedBottomGap","activeEventOptions","MAT_SLIDER_VALUE_ACCESSOR","MatSlider","MatSliderChange","_MatSliderBase","it","_invert","_step","_thumbLabel","_tickInterval","_percent","_isSliding","_isActive","_tickIntervalPercent","_sliderDimensions","_dirChangeSubscription","_pointerDown","isTouchEvent","_touchId","sliderHost","getTouchIdForSlider","pointerPosition","getPointerPositionOnPage","_lastPointerEvent","_focusHostElement","_onMouseenter","_bindGlobalEvents","_updateValueFromPosition","_valueOnSlideStart","_emitInputEvent","_pointerMove","_pointerUp","findMatchingTouch","_removeGlobalEvents","_windowBlur","_calculatePercentage","_roundToDecimal","_blurHostElement","_clamp","vertical","percent","_isMinValue","thumbLabel","_shouldInvertMouseCoords","_getThumbGap","_getDirection","tickSize","backgroundSize","rotate","shouldInvertAxis","_shouldInvertAxis","_getSliderDimensions","_updateTickIntervalPercent","_increment","triggerEvent","endEventName","numSteps","clampedValue","exactValue","_calculateValue","closestValue","_createChangeEvent","tickInterval","tickIntervalPercent","trackSize","isSafeNumber","percentage","_sliderWrapper","_disableViewStateAnimation","SORT_ANIMATION_TRANSITION","matSortAnimations","indicator","leftPointer","rightPointer","arrowOpacity","arrowPosition","allowChildren","MatSortHeaderIntl","MAT_SORT_HEADER_INTL_PROVIDER","MAT_SORT_DEFAULT_OPTIONS","_MatSortBase","MatSort","sortables","_direction","sortChange","_disableClear","sortable","getNextSortDirection","disableClear","sortDirectionCycle","sortOrder","getSortDirectionCycle","nextDirectionIndex","_MatSortHeaderBase","MatSortHeader","_sort","_columnDef","_showIndicatorHint","_viewState","_arrowDirection","_sortActionDescription","_handleStateChanges","_updateSortActionDescription","_updateArrowDirection","_setAnimationTransitionState","_isSorted","_sortButton","_setIndicatorHintVisible","visible","_isDisabled","viewState","_toggleOnInteraction","MatCellDef","MatHeaderCellDef","MatColumnDef","MatHeaderCell","MatCell","MatHeaderRowDef","MatRowDef","MatHeaderRow","MatRow","_MatTableDataSource","initialData","_renderData","_internalPageChanges","_renderChangesSubscription","sortingDataAccessor","sortHeaderId","valueAType","valueBType","comparatorResult","filterPredicate","dataStr","currentTerm","transformedFilter","_updateChangeSubscription","_filterData","_paginator","filteredData","orderedData","_orderData","paginatedData","_pageData","_updatePaginator","filteredDataLength","lastPageIndex","newPageIndex","_tabFocusChanged","_removeTabBodyWrapperHeight","_setTabBodyWrapperHeight","_MAT_INK_BAR_POSITIONER","offsetLeft","MatInkBar","_inkBarPositioner","_setStyles","inkBar","MAT_TAB_CONTENT","MatTabContent","MAT_TAB_LABEL","MAT_TAB","MatTabLabel","_closestTab","_MatTabBase","MAT_TAB_GROUP","MatTab","_closestTabGroup","_contentPortal","_templateLabel","_setTemplateLabelInput","_explicitContent","_implicitContent","matTabsAnimations","translateTab","MatTabBodyPortal","_centeringSub","_leavingSub","_beforeCentering","_isCenterPosition","isCentering","_afterLeavingCenter","MatTabBody","_MatTabBodyBase","_translateTabComplete","_onCentering","_onCentered","animationDuration","_computePositionAnimationState","_positionIndex","_computePositionFromOrigin","_getLayoutDirection","MAT_TABS_CONFIG","_MatTabLabelWrapperBase","MatTabLabelWrapper","MatPaginatedTabHeader","_scrollDistance","_selectedIndexChanged","_showPaginationControls","_disableScrollAfter","_disableScrollBefore","_stopScrolling","disablePagination","_selectedIndex","selectFocusedIndex","indexFocused","tn","_stopInterval","_previousPaginator","_handlePaginatorPress","_nextPaginator","dirChange","resize","realign","updatePagination","_alignInkBarToSelectedTab","newFocusIndex","_setTabFocus","_tabLabelCount","_scrollToLabel","_checkScrollingControls","_scrollDistanceChanged","_updateTabScrollPosition","focusIndex","_itemSelected","_currentTextContent","_checkPaginationEnabled","containerEl","_tabListContainer","scrollDistance","translateX","_tabList","_scrollTo","_scrollHeader","labelIndex","selectedLabel","labelBeforePos","labelAfterPos","viewLength","_tabListInner","beforeVisiblePos","afterVisiblePos","_getMaxScrollDistance","selectedItem","selectedLabelWrapper","_inkBar","alignToElement","hide","mouseEvent","maxScrollDistance","_MatTabHeaderBase","MatTabHeader","MatTabChangeEvent","_MatTabGroupMixinBase","_MatTabGroupBase","defaultConfig","_tabs","_indexToSelect","_tabBodyWrapperHeight","_tabsSubscription","_tabLabelSubscription","headerPosition","selectedIndexChange","focusChange","animationDone","selectedTabChange","_groupId","dynamicHeight","contentTabIndex","_dynamicHeight","_animationDuration","_contentTabIndex","_backgroundColor","indexToSelect","_clampTabIndex","isFirstRun","_tabBodyWrapper","_subscribeToAllTabChanges","_subscribeToTabLabels","tabs","_allTabs","_tabHeader","tabHeight","tabHeader","MatTabGroup","i7$1","_MatToolbarBase","MatToolbarRow","MatToolbar","_checkToolbarMixedModes","_toolbarRows","matTooltipAnimations","tooltipState","PANEL_CLASS","passiveListenerOptions","MAT_TOOLTIP_SCROLL_STRATEGY","MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER","MAT_TOOLTIP_DEFAULT_OPTIONS","showDelay","hideDelay","touchendHideDelay","_MatTooltipBase","_viewInitialized","_pointerExitEventsInitialized","_cssClassPrefix","_showDelay","_hideDelay","touchGestures","_message","_passiveListeners","_updatePosition","_tooltipInstance","_setupPointerEnterEventsIfNeeded","_isTooltipVisible","_updateTooltipMessage","_tooltipClass","_setTooltipClass","_touchstartTimeout","_showTimeoutId","_hideTimeoutId","_tooltipComponent","afterHidden","scrollableAncestors","withScrollableContainers","_updateCurrentPositionClass","_handleBodyInteraction","_getOrigin","_addOffset","main","originPosition","isLtr","_invertPosition","overlayPosition","tooltipClass","_currentPosition","classPrefix","_platformSupportsMouseEvents","_setupPointerExitEventsIfNeeded","_disableNativeGesturesIfNecessary","_addListeners","exitListeners","_wheelListener","touchendListener","listeners","elementUnderPointer","elementFromPoint","gestures","msUserSelect","webkitUserSelect","MozUserSelect","draggable","webkitUserDrag","webkitTapHighlightColor","MatTooltip","ariaDescriber","TooltipComponent","_TooltipComponentBase","_visibility","_closeOnInteraction","_onHide","_onShow","_breakpointObserver","_isHandset","_MatTreeNodeBase","MatTreeNode","MatTreeNodeDef","MatNestedTreeNode","differs","MatTreeNodePadding","MatTreeNodeOutlet","MatTree","MatTreeNodeToggle","transformFunction","resultNodes","parentMap","flatNode","_flattenChildren","childParentMap","_flattenNode","structuredData","nodes","currentExpand","_treeControl","_treeFlattener","_flattenedData","_expandedData","flattenNodes","collectionViewer","expandFlattenedNodes","ɵAnimationGroupPlayer","driver","normalizer","preStyles","postStyles","normalizedKeyframes","previousOffset","previousKeyframe","kf","isSameOffset","normalizedKeyframe","normalizedValue","normalizePropertyName","normalizeStyleValue","LINE_START","copyAnimationEvent","makeAnimationEvent","triggerName","separatorPos","_contains","elm1","elm2","_query","isNode","_CACHED_BODY","_IS_WEBKIT","getBodyNode","containsVendorPrefix","containsElement","invokeQuery","NoopAnimationDriver","validateStyleProperty","_selector","easing","AnimationDriver","NOOP","ENTER_CLASSNAME","LEAVE_CLASSNAME","NG_TRIGGER_CLASSNAME","NG_TRIGGER_SELECTOR","NG_ANIMATING_CLASSNAME","NG_ANIMATING_SELECTOR","_convertTimeValueToMS","allowNegativeValues","delayMatch","easingVal","containsErrors","parseTimeExpression","readPrototype","copyObj","styleAttrValue","getStyleAttributeString","camelCaseToDashCase","formerStyles","dashCaseToCamelCase","writeStyleAttribute","PARAM_REGEX","varName","localVal","DASH_CASE_REGEXP","Ce","previousStyles","previousStyleProps","startingKeyframe","missingStyleProps","me","computeStyle","visitor","visitTrigger","visitState","visitTransition","visitSequence","visitGroup","visitAnimate","visitKeyframes","visitStyle","visitReference","visitAnimateChild","visitAnimateRef","visitQuery","visitStagger","transitionValue","expressions","eventStr","parseAnimationAlias","makeLambdaFromStates","parseInnerTransitionStr","TRUE_BOOLEAN_VALUES","FALSE_BOOLEAN_VALUES","lhs","rhs","LHS_MATCH_BOOLEAN","RHS_MATCH_BOOLEAN","lhsMatch","rhsMatch","SELF_TOKEN_REGEX","AnimationAstBuilderVisitor","_driver","AnimationAstBuilderContext","_resetContextStyleTimingState","visitDslNode","normalizeAnimationEntry","currentQuerySelector","collectedStyles","currentTime","queryCount","depCount","transitions","stateDef","styleAst","astParams","containsDynamicStyles","missingSubs","stylesObj","extractStyleParams","missingSubsArr","matchers","parseTransitionExpr","normalizeAnimationOptions","furthestTime","innerAst","timingAst","makeTimingAst","resolveTiming","isDynamic","ast","constructTimingAst","currentAnimateTimings","styleMetadata","newStyleData","_styleAst","isEmptyStep","_makeStyleAst","_validateStyleAst","styleTuple","collectedEasing","styleData","styleMap","endTime","tuple","collectedEntry","updateCollectedStyle","validateStyleParams","totalKeyframesWithOffsets","offsetsOutOfOrder","keyframesOutOfRange","offsetVal","consumeOffset","generatedOffset","animateDuration","durationUpToThisFrame","parentSelector","currentQuery","hasAmpersand","normalizeSelector","includeSelf","getOrSetAsInMap","originalSelector","currentTransition","normalizeParams","preStyleProps","postStyleProps","subTimeline","ElementInstructionMap","instructions","existingInstructions","ENTER_TOKEN_REGEX","LEAVE_TOKEN_REGEX","rootElement","enterClassName","leaveClassName","startingStyles","finalStyles","subInstructions","AnimationTimelineBuilderVisitor","buildKeyframes","AnimationTimelineContext","currentTimeline","setStyles","timelines","timeline","containsAnimation","lastRootTimeline","allowOnlyTimelineStyles","createTimelineInstruction","elementInstructions","innerContext","createSubContext","_visitSubInstructions","transformIntoNewTimeline","resolveTimingValue","instructionTimings","appendInstructionToTimeline","instruction","updateOptions","subContextCount","snapshotCurrentStyles","DEFAULT_NOOP_PREVIOUS_NODE","delayNextStep","applyStylesToKeyframe","innerTimelines","mergeTimelineCollectedStyles","interpolateParams","_visitTiming","incrementTime","getCurrentStyleProperties","forwardFrame","applyEmptyStep","innerTimeline","forwardTime","elms","currentQueryTotal","sameElementTimeline","parentContext","tl","maxTime","staggerTransformer","currentStaggerTime","startingTime","_enterClassName","_leaveClassName","initialTimeline","TimelineBuilder","skipIfExists","newOptions","optionsToUpdate","newParams","paramsToUpdate","oldParams","newTime","_copyOptions","updatedTimings","builder","SubTimelineBuilder","stretchStartingKeyframe","_elementTimelineStylesLookup","_previousKeyframe","_currentKeyframe","_keyframes","_styleSummary","_pendingStyles","_backFill","_currentEmptyStepKeyframe","_localTimelineStyles","_globalTimelineStyles","_loadKeyframe","hasPreStyleStep","allStyles","allProperties","copyStyles","flattenStyles","_updateStyle","oe","details0","details1","finalKeyframes","keyframe","finalKeyframe","preProps","postProps","kf0","kf1","_stretchStartingKeyframe","ee","newKeyframes","startingGap","newFirstKeyframe","oldFirstKeyframe","roundOffset","decimalPoints","mult","AnimationStyleNormalizer","WebAnimationsStyleNormalizer","userProvidedProperty","normalizedProperty","strVal","DIMENSIONAL_PROP_MAP","valAndSuffixMatch","makeBooleanMap","isRemovalTransition","fromStyles","toStyles","queriedElements","EMPTY_OBJECT","AnimationTransitionFactory","_triggerName","_stateStyles","currentState","nextState","matchFns","oneOrMoreTransitionsMatch","stateName","backupStateStyler","stateStyler","backupStyles","buildStyles","currentOptions","nextOptions","skipAstBuild","transitionAnimationParams","currentStateStyles","nextAnimationParams","nextStateStyles","preStyleMap","postStyleMap","isRemoval","animationOptions","buildAnimationTimelines","createTransitionInstruction","queriedElementsList","AnimationStateStyles","defaultParams","combinedParams","styleObj","AnimationTrigger","_normalizer","transitionFactories","balanceProperties","fallbackTransition","createFallbackTransition","EMPTY_INSTRUCTION_MAP","TimelineAnimationEngine","bodyNode","_animations","_playersById","buildAnimationAst","normalizeKeyframes","autoStylesMap","inst","_buildPlayer","optimizeGroupPlayer","_getPlayer","baseEvent","listenOnPlayer","QUEUED_CLASSNAME","DISABLED_CLASSNAME","STAR_CLASSNAME","EMPTY_PLAYER_ARRAY","NULL_REMOVAL_STATE","namespaceId","setForRemoval","setForMove","hasAnimation","removedBeforeQueried","NULL_REMOVED_QUERIED_STATE","REMOVAL_FLAG","StateValue","isObj","normalizeTriggerValue","VOID_VALUE","DEFAULT_STATE_VALUE","AnimationTransitionNamespace","_engine","_triggers","_queue","_elementListeners","_hostClassName","phase","isTriggerEventValid","triggersWithStates","statesByElement","afterFlush","defaultToFallback","_getTrigger","TransitionAnimationPlayer","absorbOptions","playersOnElement","playersByElement","queued","matchTransition","isFallbackTransition","totalQueuedPlayers","objEquals","matchStyles","reportError","eraseStyles","stateMap","elementPlayers","namespaces","fetchNamespacesByElement","triggerLeaveAnimation","clearElementCache","afterFlushAnimationsDone","destroyAfterComplete","triggerStates","previousTriggersValues","markElementAsRemoved","processLeaveNode","elementStates","visitedTriggers","engine","childElementCount","_signalRemovalForInnerTriggers","containsPotentialParentTransition","totalAnimations","currentPlayers","playersByQueriedElement","prepareLeaveAnimationListeners","removalFlag","destroyInnerAnimations","_onRemovalComplete","microtaskId","markedForDestroy","d0","containsData","TransitionAnimationEngine","newHostElements","disabledNodes","_namespaceLookup","_namespaceList","_flushFns","_whenQuietFns","namespacesByHostElement","collectedEnterElements","collectedLeaveElements","onRemovalComplete","_balanceNamespaceList","collectEnterElement","createNamespace","_fetchNamespace","nsId","isElementNode","removeNode","hostNS","subTimelines","skipBuildAst","containerElement","destroyActiveAnimationsForElement","finishActiveQueriedAnimationOnElement","markElementAsDisabled","cleanupFns","_flushAnimations","quietFns","skippedPlayers","skippedPlayersMap","queuedInstructions","allPreStyleElements","allPostStyleElements","disabledElementsSet","nodesThatAreDisabled","allTriggerElements","enterNodeMap","buildRootMap","enterNodeMapIds","allLeaveNodes","mergedLeaveNodes","leaveNodesWithoutAnimations","leaveNodeMapIds","leaveNodeMap","allPlayers","erroneousTransitions","drainQueuedTransitions","nodeIsOrphaned","_buildInstruction","stringMap","setVal","allPreviousPlayersMap","animationElementMap","_beforeAnimationBuild","_getPreviousPlayers","prevPlayer","replaceNodes","replacePostStylesAsPre","postStylesMap","cloakAndComputeStyles","preStylesMap","pre","rootPlayers","subPlayers","NO_PARENT_ANIMATION_ELEMENT_DETECTED","overrideTotalTime","parentWithAnimation","parentsToAdd","detectedParent","innerPlayer","_buildAnimation","setRealPlayer","parentPlayers","playersForElement","syncPlayerEvents","queriedPlayerResults","queriedInnerElements","queriedPlayers","activePlayers","removeNodesAfterAnimationDone","elementContainsData","isQueriedElement","toStateValue","queriedElementPlayers","isRemovalAnimation","targetNameSpaceId","targetTriggerName","realPlayer","getRealPlayer","Yn","allQueriedPlayers","allConsumedElements","allSubElements","allNewPlayers","timelineInstruction","previousPlayers","finalPlayers","_flattenGroupPlayersRecur","flattenGroupPlayers","wrappedPlayer","currentValues","deleteOrUnsetInMap","_player","_containsRealPlayer","_queuedCallbacks","triggerCallback","_queueEvent","valuesMap","elementPropsMap","defaultStyle","cloakVals","cloakElement","failedElements","rootMap","nodeSet","localRootMap","getRoot","k1","k2","postEntry","preEntry","AnimationEngine","_triggerCache","_transitionEngine","_timelineEngine","cacheKey","buildTrigger","registerTrigger","parseTimelineCommand","eventPhase","whenRenderingDone","startStyles","endStyles","filterNonAnimatableStyles","SpecialCasedStyles","_startStyles","_endStyles","initialStyles","initialStylesByElement","_initialStyles","isNonAnimatableStyle","WebAnimationsPlayer","_specialStyles","currentSnapshot","_duration","_preparePlayerBeforeStart","domPlayer","_triggerWebAnimation","_finalKeyframe","_resetDomPlayerState","WebAnimationsDriver","playerOptions","previousWebAnimationPlayers","allowPreviousPlayerStylesMerge","specialStyles","packageNonAnimatableStyles","balancePreviousStylesIntoKeyframes","BrowserAnimationBuilder","rootRenderer","_nextAnimationId","issueAnimationCommand","BrowserAnimationFactory","RendererAnimationPlayer","_command","_listen","DISABLE_ANIMATIONS_FLAG","AnimationRendererFactory","_currentId","_microtaskId","_animationCallbacksBuffer","_rendererCache","_cdRecurDepth","BaseAnimationRenderer","animationTriggers","AnimationRenderer","_scheduleCountTask","newChild","onInsert","refChild","oldChild","selectorOrNode","preserveContent","disableAnimations","resolveElementFromTarget","dotIndex","parseTriggerCallbackName","scheduleListenerCallback","InjectableAnimationEngine","ɵAnimationEngine","SHARED_ANIMATION_PROVIDERS","ɵAnimationStyleNormalizer","ɵWebAnimationsStyleNormalizer","ɵDomRendererFactory2","BROWSER_ANIMATIONS_PROVIDERS","ɵWebAnimationsDriver","BROWSER_NOOP_ANIMATIONS_PROVIDERS","ɵNoopAnimationDriver","urlParsingNode","GenericBrowserDomAdapter","ln","supportsDOMEvents","ɵDomAdapter","BrowserDomAdapter","evt","getDefaultDocument","DocumentFragment","baseElement","getBaseElementHref","pathName","relativePath","ɵsetRootDomAdapter","TRANSITION_ID","SERVER_TRANSITION_PROVIDERS","transitionId","BrowserGetTestability","ɵglobal","getAllTestabilities","getAllRootElements","testabilities","didWork","decrement","didWork_","whenStable","getTestability","isShadowRoot","setTestabilityGetter","BrowserXhr","XMLHttpRequest","EVENT_MANAGER_PLUGINS","EventManager","plugins","_eventNameToPlugin","_plugins","_findPluginFor","addGlobalEventListener","plugin","EventManagerPlugin","SharedStylesHost","_stylesSet","additions","onStylesAdded","DomSharedStylesHost","_hostNodes","styleNodes","styleEl","hostNode","_addStylesToHost","Nn","styleNode","NAMESPACE_URIS","xhtml","xlink","xmlns","math","COMPONENT_REGEX","COMPONENT_VARIABLE","HOST_ATTR","CONTENT_ATTR","compId","eventHandler","DomRendererFactory2","eventManager","sharedStylesHost","rendererByCompId","defaultRenderer","DefaultDomRenderer2","EmulatedEncapsulationDomRenderer2","applyToHost","ShadowDomRenderer","addStyles","removeAttributeNS","decoratePreventDefault","ai","contentAttr","componentShortId","shimContentAttribute","hostAttr","shimHostAttribute","hostEl","addHost","removeHost","nodeOrShadowRoot","DomEventsPlugin","MODIFIER_KEYS","_keyMap","Del","Esc","Left","Right","Up","Down","Menu","Scroll","Win","_chromeNumKeyPadMap","F","K","MODIFIER_KEY_GETTERS","KeyEventsPlugin","parseEventName","parsedEvent","outsideHandler","eventCallback","fullKey","getZone","onAndCancel","domEventName","_normalizeKey","modifierName","keyIdentifier","getEventKey","modifierGetter","getEventFullKey","keyName","platformBrowser","ɵPLATFORM_BROWSER_ID","makeCurrent","ɵsetDocument","BROWSER_MODULE_PROVIDERS","ɵINJECTOR_SCOPE","parentModule","Title","newTitle","createTitle","DomSanitizer","DomSanitizerImpl","ɵallowSanitizationBypassAndThrow","ɵunwrapSafeValue","ɵ_sanitizeHtml","ɵgetSanitizationBypassType","ɵ_sanitizeUrl","ɵbypassSanitizationTrustHtml","ɵbypassSanitizationTrustStyle","ɵbypassSanitizationTrustScript","ɵbypassSanitizationTrustUrl","ɵbypassSanitizationTrustResourceUrl","domSanitizerImplFactory","EmptyError","_refCount","refCounter","sharedConnection","_connection","ConnectableObservable","subjectFactory","xt","getSubject","Fe","_teardown","higherOrderRefCount","pe","seed","hasSeed","emitOnNext","emitBeforeComplete","hasState","scanInternals","dn","defaultErrorFactory","hasDefaultValue","defaultIfEmpty","throwIfEmpty","RouterEvent","navigationTrigger","restoredState","urlAfterRedirects","Ut","NavigationCancel","NavigationError","RoutesRecognized","GuardsCheckStart","GuardsCheckEnd","shouldActivate","Mn","ResolveStart","RouteConfigLoadStart","RouteConfigLoadEnd","ChildActivationStart","routeConfig","ChildActivationEnd","ActivationStart","ActivationEnd","routerEvent","PRIMARY_OUTLET","ParamsAsMap","NAVIGATION_CANCELING_ERROR","segmentGroup","pathMatch","hasChildren","posParams","consumed","equalArraysOrString","aSorted","bSorted","pathCompareMap","exact","containee","matrixParams","equalPath","matrixParamsMatch","numberOfChildren","equalSegmentGroups","subset","containsSegmentGroup","paramCompareMap","shallowEqual","ignored","fragment","containsSegmentGroupHelper","containeePaths","containerPaths","containeeSegment","UrlTree","_queryParamMap","convertToParamMap","DEFAULT_SERIALIZER","serialize","UrlSegmentGroup","Me","serializePaths","UrlSegment","_parameterMap","serializePath","bs","UrlSerializer","DefaultUrlSerializer","UrlParser","parseRootSegment","parseQueryParams","parseFragment","serializeSegment","strParams","encodeUriQuery","serializeQueryParams","encodeUriFragment","childOutlet","mapChildrenIntoArray","encodeUriString","decode","encodeUriSegment","serializeMatrixParams","SEGMENT_RE","QUERY_PARAM_RE","QUERY_PARAM_VALUE_RE","consumeOptional","peekStartsWith","parseChildren","parseQueryParam","parseSegment","parseParens","matchSegments","parseMatrixParams","parseParam","valueMatch","matchQueryParams","matchUrlQueryParamValue","decodedKey","decodeQuery","decodedVal","currentVal","allowPrimary","outletName","Tree","_root","pathFromRoot","findNode","findPath","cc","TreeNode","RouterState","setRouterState","ActivatedRouteSnapshot","RouterStateSnapshot","createEmptyStateSnapshot","emptyUrl","emptyParams","emptyData","emptyQueryParams","ActivatedRoute","futureSnapshot","_futureSnapshot","_routerState","_paramMap","paramsInheritanceStrategy","inheritingStartingFrom","flattenInherited","curr","_resolvedData","urlSegment","lastPathIndex","_urlSegment","_lastPathIndex","_resolve","serializeNode","nextSnapshot","shallowEqualArrays","equalUrlParams","equalSegments","equalParamsAndUrlSegments","prevState","createNode","createOrReuseChildren","shouldAttach","detachedRouteHandle","retrieve","createActivatedRoute","commands","nav","Navigation","numberOfDoubleDots","isAbsolute","cmd","cmdIdx","segmentPath","urlPart","partIndex","computeNavigation","toRoot","startingPosition","Position","isMatrixParams","ci","createPositionApplyingDoubleDots","findStartingPosition","processChildren","updateSegmentGroupChildren","updateSegmentGroup","oldSegmentGroup","newSegmentGroup","qp","replaceSegment","oldSegment","newSegment","cmdWithOutlet","isCommandWithOutlets","currentCommandIndex","currentPathIndex","noMatch","pathIndex","commandIndex","prefixedWith","slicedCommands","createNewSegmentGroup","getOutlets","createNewSegmentChildren","ActivateRoutes","futureState","currState","forwardEvent","parentContexts","futureRoot","currRoot","deactivateChildRoutes","advanceActivatedRoute","activateChildRoutes","futureNode","currNode","contexts","nodeChildrenAsMap","childOutletName","futureChild","deactivateRoutes","childName","deactivateRouteAndItsChildren","shouldDetach","detachAndStoreRouteSubtree","deactivateRouteAndOutlet","onOutletDeactivated","deactivate","attachRef","activateRoutes","getOrCreateContext","stored","onOutletReAttached","_loadedConfig","parentLoadedConfig","cmpFactoryResolver","activateWith","LoadedRouterConfig","INITIAL_VALUE","scan","isPending","innerAcc","isUrlTree","OutletContext","ChildrenOutletContexts","RouterOutlet","_activatedRoute","activateEvents","deactivateEvents","attachEvents","detachEvents","onChildOutletCreated","onChildOutletDestroyed","cmp","isActivated","childContexts","OutletInjector","ɵEmptyOutletComponent","parentPath","fullPath","getFullPath","validateNode","validateConfig","currentRoute","standardizeConfig","sortedConfig","getOutlet","noMatch$1","consumedSegments","lastChild","positionalParamSegments","defaultUrlMatcher","slicedSegments","relativeLinkResolution","containsEmptyPathMatchesWithNamedOutlets","createChildrenForEmptyPaths","_sourceSegment","_segmentIndexShift","containsEmptyPathMatches","addEmptyPathsToChildrenIfNeeded","emptyPathMatch","hi","primarySegment","rawSegment","NoMatch$1","AbsoluteRedirect","newTree","redirectTo","ApplyRedirects","configLoader","urlSerializer","allowRedirects","splitGroup","rootSegmentGroup","expandSegmentGroup","squashSegmentGroup","noMatchError","rootCandidate","expandChildren","expandSegment","childOutlets","sortedRoutes","sortByMatchingOutlets","expandedChild","takeLast","last$1","expandSegmentAgainstRoute","noLeftoversInUrl","isImmediateMatch","matchSegmentAgainstRoute","expandSegmentAgainstRouteUsingRedirect","expandWildCardWithParamsAgainstRouteUsingRedirect","expandRegularSegmentAgainstRouteUsingRedirect","applyRedirectCommands","absoluteRedirect","lineralizeSegments","newSegments","rawSegmentGroup","cfg","rawSlicedSegments","getChildConfig","routerConfig","childModule","no","splitSegmentGroup","matchedOnOutlet","runCanLoadGuards","shouldLoadResult","navigationCancelingError","canLoadFails","canLoad","canLoadObservables","injectionToken","guardVal","isCanLoad","wrapIntoObservable","prioritizedGuardValue","namedOutletsRedirect","applyRedirectCreatreUrlTree","newRoot","createSegmentGroup","createQueryParams","redirectToParams","actualParams","sourceName","updatedSegments","createSegments","redirectToSegments","actualSegments","findPosParam","findOrReturn","redirectToUrlSegment","newChildren","childCandidate","mergeTrivialChildren","CanActivate","CanDeactivate","getChildRouteGuards","getClosestLoadedConfig","futurePath","checks","canDeactivateChecks","canActivateChecks","prevChildren","getRouteGuards","shouldRun","shouldRunGuardsAndResolvers","runGuardsAndResolvers","ke","NoMatch","rootComponentType","processSegmentGroup","freeze","routeState","inheritParamsAndData","routeNode","inheritedParamsDataResolve","processSegment","outletChildren","mergedChildren","mergeEmptyPathMatches","sortActivatedRouteSnapshots","localeCompare","processSegmentAgainstRoute","$n","getSourceSegmentGroup","getPathIndexShift","getResolve","mergedNodes","hasEmptyPathConfig","Ya","duplicateEmptyPathNode","resultNode","mergedNode","nextResult","RouteReuseStrategy","DefaultRouteReuseStrategy","BaseRouteReuseStrategy","detachedTree","RouterConfigLoader","onLoadStartListener","onLoadEndListener","_loader$","loadRunner","loadModuleFactory","compileModuleAsync","UrlHandlingStrategy","DefaultUrlHandlingStrategy","newUrlPart","wholeUrl","runExtras","exactMatchOptions","subsetMatchOptions","Router","rootContexts","lastSuccessfulNavigation","currentNavigation","disposed","navigationId","currentPageId","isNgZoneEnabled","defaultErrorHandler","malformedUriErrorHandler","defaultMalformedUriErrorHandler","lastSuccessfulId","beforePreactivation","defaultRouterHook","afterPreactivation","urlHandlingStrategy","urlUpdateStrategy","canceledNavigationResolution","ɵConsole","resetConfig","currentUrlTree","createEmptyUrlTree","rawUrlTree","browserUrlTree","createEmptyState","targetPageId","currentRawUrl","extractedUrl","extract","rawUrl","extras","targetSnapshot","currentRouterState","targetRouterState","guards","guardsResult","navigations","setupNavigations","processNavigations","ɵrouterPageId","eventsSubject","completed","initialUrl","previousNavigation","urlTransition","shouldProcessUrl","isBrowserTriggeredNavigation","serializeUrl","applyRedirects$1","applyRedirects","finalUrl","serializer","newObservableError","recognize$1","skipLocationChange","setBrowserUrl","routesRecognized","navStart","replaceUrl","switchTap","appliedUrlTree","guardsStart","getAllRouteGuards","futureRSS","currRSS","currARS","canDeactivateObservables","isCanDeactivate","runCanDeactivate","runCanDeactivateChecks","fireChildActivationStart","fireActivationStart","futureARS","canActivateChildGuards","canActivateChild","getCanActivateChild","canActivateChildGuardsMapped","guardsMapped","isCanActivateChild","runCanActivateChild","canActivateObservables","isCanActivate","runCanActivate","runCanActivateChecks","checkGuards","guardsEnd","restoreHistory","cancelNavigationTransition","resolveStart","dataResolved","canActivateChecksResolved","getDataKeys","getResolver","resolveNode","resolvedData","runResolve","resolveData","resolveEnd","createRouterState","activate","cancelationReason","isNavigationCancelingError","redirecting","navCancel","mergedTree","scheduleNavigation","navError","setUpLocationChangeListener","locationSubscription","stateCopy","relativeTo","removeEmptyProps","validateCommands","matchOptions","containsTree","priorPromise","lastNavigation","browserNavPrecededByRouterNav","navToSameUrl","lastNavigationInProgress","browserPageId","setTransition","generateNgRouterState","isCurrentPathEqualTo","restoringFromCaughtError","targetPagePosition","browserUrlUpdateOccurred","resetUrlToCurrentUrlTree","routerPageId","RouterLink","tabIndexAttribute","onChanges","setTabIndexIfNotOnNativeEl","newTabIndex","attrBoolValue","RouterLinkWithHref","updateTargetUrlAndHref","PreloadingStrategy","PreloadAllModules","NoPreloading","RouterPreloader","preloadingStrategy","loader","preload","processRoutes","preloadConfig","RouterScroller","viewportScroller","lastId","lastSource","restoredId","scrollPositionRestoration","anchorScrolling","setHistoryScrollRestoration","routerEventsSubscription","createScrollEvents","scrollEventsSubscription","consumeScrollEvents","getScrollPosition","scheduleScrollEvent","scrollToPosition","scrollToAnchor","ROUTER_CONFIGURATION","ROUTER_FORROOT_GUARD","ROUTER_PROVIDERS","assignExtraOptionsToRouter","enableTracing","groupEnd","provideRoutes","provideForRootGuard","createRouterScroller","routerNgProbeToken","RouterInitializer","getAppInitializer","ROUTER_INITIALIZER","getBootstrapListener","setOffset","platformLocationStrategy","useHash","initNavigation","resultOfPreactivationDone","initialNavigation","bootstrappedComponentRef","preloader","routerScroller","setUpPreloading","resetRootComponentType","appInitializer","bootstrapListener"],"sources":["./src/app/core/admin/fragment-wizard/fragment-wizard.component.html","./src/app/core/admin/fragment-wizard/fragment-wizard.component.ts","./src/app/core/auth/auth.service.ts","./src/app/core/base/base-http.service.ts","./src/app/core/config/nav-items.constant.ts","./src/app/core/config/config.service.ts","./src/app/core/controlled-vocabulary/controlled-vocabulary.service.ts","./src/app/core/dynamic-component-loader/dynamic-component-loader.module.ts","./src/app/core/dynamic-component-loader/dynamic-component-loader.service.ts","./src/app/core/dynamic-component-loader/dynamic-component-manifest.ts","./src/app/core/expand-details/expand-details.module.ts","./src/app/core/facets-manager/facet-display.pipe.ts","./src/app/core/facets-manager/facet-http-params.ts","./src/app/core/facets-manager/display-facet.ts","./src/app/core/facets-manager/facets-manager.component.html","./src/app/core/facets-manager/facets-manager.component.ts","./src/app/core/facets-manager/facets-manager.module.ts","./src/app/core/facets-manager/facets-manager.service.ts","./src/app/core/google-analytics/google-analytics.service.ts","./src/app/core/google-analytics/track-link-event/track-link-event.directive.ts","./src/app/core/guided-search/query-statement/type-command-options.constant.ts","./src/app/core/loading/loading.module.ts","./src/app/core/loading/loading-overlay/loading-overlay.component.ts","./src/app/core/loading/loading.service.ts","./src/app/core/main-notification/main-notification.service.ts","./src/app/core/main-notification/notification.model.ts","./src/app/core/name-resolver/name-resolver.component.html","./src/app/core/name-resolver/name-resolver.component.ts","./src/app/core/name-resolver/name-resolver.module.ts","./src/app/core/scroll-to/scroll-to-target.directive.ts","./src/app/core/scroll-to/scroll-to.module.ts","./src/app/core/scroll-to/scroll-to-registration.class.ts","./src/app/core/scroll-to/scroll-to.service.ts","./src/app/core/structure-editor/structure-editor-implementation.model.ts","./src/app/core/substance-form/structure/drag-drop-paste.component.ts","./src/app/core/structure-editor/structure-editor.component.html","./src/app/core/structure-editor/structure-editor.component.ts","./src/app/core/structure-editor/structure-editor.module.ts","./src/app/core/structure/structure-export/structure-export.component.html","./src/app/core/structure/structure-export/structure-export.component.ts","./src/app/core/structure/structure-image-modal/structure-image-modal.component.html","./src/app/core/structure/structure-image-modal/structure-image-modal.component.ts","./src/app/core/structure/structure-import/structure-import.component.html","./src/app/core/structure/structure-import/structure-import.component.ts","./src/app/core/structure/structure.module.ts","./src/app/core/structure/structure.service.ts","./src/app/core/substance-details/substance-card-base-filtered-list.ts","./src/app/core/substance-details/substance-card-base.ts","./src/app/core/substance-details/substance-cards-filter.model.ts","./src/app/core/substance-details/substance-cards-utils.ts","./src/app/core/substance-details/substance-cards-filters.constant.ts","./src/app/core/substance-details/substance-cards.module.ts","./src/app/core/substance/substance-utilities.model.ts","./src/app/core/substance-details/filter-resolver.ts","./src/app/core/substance-details/substance-cards.service.ts","./src/app/core/scroll-to/scroll-to-trigger.directive.ts","./src/app/core/substance-details/substance-details.component.html","./src/app/core/substance-details/substance-details.component.ts","./src/app/core/substance-form/access-manager/access-manager.component.html","./src/app/core/substance-form/access-manager/access-manager.component.ts","./src/app/core/substance-form/agent-modifications/substance-form-agent-modifications.service.ts","./src/app/core/substance-form/amount-form/amount-form.component.html","./src/app/core/substance-form/amount-form/amount-form.component.ts","./src/app/core/substance-form/audit-info/audit-info.component.html","./src/app/core/substance-form/audit-info/audit-info.component.ts","./src/app/core/substance-form/base-classes/substance-form-base-filtered-list.ts","./src/app/core/substance-form/base-classes/substance-form-base.ts","./src/app/core/substance-form/base-classes/substance-form-service-base.ts","./src/app/core/substance-form/can-activate-substance-form.ts","./src/app/core/substance-form/can-register-substance-form.ts","./src/app/core/substance-form/codes/substance-form-codes.service.ts","./src/app/core/substance-form/constituents/substance-form-constituents.service.ts","./src/app/core/substance-form/cv-dialog/cv-dialog.component.html","./src/app/core/substance-form/cv-dialog/cv-dialog.component.ts","./src/app/core/substance-form/cv-input/cv-input.component.html","./src/app/core/substance-form/cv-input/cv-input.component.ts","./src/app/core/substance-form/disulfide-links/substance-form-disulfide-links.service.ts","./src/app/core/substance-form/form-sections.constant.ts","./src/app/core/substance-form/glycosylation/substance-form-glycosylation.service.ts","./src/app/core/substance-form/links/substance-form-links.service.ts","./src/app/core/substance-form/mixture-components/substance-form-mixture-components.service.ts","./src/app/core/substance-form/monomers/substance-form-monomers.service.ts","./src/app/core/substance-form/names/substance-form-names.service.ts","./src/app/core/substance-form/notes/substance-form-notes.service.ts","./src/app/core/substance-form/other-links/substance-form-other-links.service.ts","./src/app/core/substance-form/physical-modifications/substance-form-physical-modifications.service.ts","./src/app/core/substance-form/polymer-classification/substance-form-polymer-classification.service.ts","./src/app/core/substance-form/properties/substance-form-properties.service.ts","./src/app/core/substance-form/property-parameter-form/property-parameter-form.component.html","./src/app/core/substance-form/property-parameter-form/property-parameter-form.component.ts","./src/app/core/substance-form/property-parameter-dialog/property-parameter-dialog.component.html","./src/app/core/substance-form/property-parameter-dialog/property-parameter-dialog.component.ts","./src/app/core/substance-form/references/apply-reference/apply-reference.component.html","./src/app/core/substance-form/references/apply-reference/apply-reference.component.ts","./src/app/core/substance-form/references/domain-references/domain-keys.constant.ts","./src/app/core/substance-form/references/previous-references/previous-references.component.html","./src/app/core/substance-form/references/previous-references/previous-references.component.ts","./src/app/core/substance-form/references/previous-references/previous-references-dialog/previous-references-dialog.component.ts","./src/app/core/substance-form/references/previous-references/previous-references-dialog/previous-references-dialog.component.html","./src/app/core/substance-form/references/reference-form.component.html","./src/app/core/substance-form/references/reference-form.component.ts","./src/app/core/substance-form/references/substance-form-references.service.ts","./src/app/core/substance-form/relationships/substance-form-relationships.service.ts","./src/app/core/substance-form/structural-modifications/substance-form-structural-modifications.service.ts","./src/app/core/substance-form/structural-units/substance-form-structural-units.service.ts","./src/app/core/substance-form/structurally-diverse/substance-form-structurally-diverse.service.ts","./src/app/core/substance-form/structure/substance-form-structure.service.ts","./src/app/core/substance-form/substance-form.module.ts","./src/app/core/substance-form/substance-form.service.ts","./src/app/core/substance-form/subunit-selector/subunit-selector.component.html","./src/app/core/substance-form/subunit-selector/subunit-selector.component.ts","./src/app/core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component.html","./src/app/core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component.ts","./src/app/core/substance-form/sugar-form/sugar-form.component.html","./src/app/core/substance-form/sugar-form/sugar-form.component.ts","./src/app/core/substance-form/tag-selector/tag-selector.component.html","./src/app/core/substance-form/tag-selector/tag-selector.component.ts","./src/app/core/substance-selector/substance-selector.component.html","./src/app/core/substance-selector/substance-selector.component.ts","./src/app/core/substance-selector/substance-selector.module.ts","./src/app/core/substance-ssg4m/ssg4m-sites/substance-form-ssg4m-sites.service.ts","./src/app/core/substance-ssg4m/ssg4m-process/substance-form-ssg4m-process.service.ts","./src/app/core/substance-ssg4m/ssg4m-scheme-view/ssg4m-scheme-view.component.html","./src/app/core/substance-ssg4m/ssg4m-scheme-view/ssg4m-scheme-view.component.ts","./src/app/core/substance-ssg4m/ssg4m-step-view-dialog/ssg4m-step-view-dialog.component.ts","./src/app/core/substance-ssg4m/ssg4m-step-view-dialog/ssg4m-step-view-dialog.component.html","./src/app/core/substance-ssg4m/ssg4m-stages/substance-form-ssg4m-stages.service.ts","./src/app/core/substance-ssg4m/ssg4m-starting-materials/ssg4m-starting-materials-form.component.html","./src/app/core/substance-ssg4m/ssg4m-starting-materials/ssg4m-starting-materials-form.component.ts","./src/app/core/substance-ssg4m/ssg4m-processing-materials/ssg4m-processing-materials-form.component.html","./src/app/core/substance-ssg4m/ssg4m-processing-materials/ssg4m-processing-materials-form.component.ts","./src/app/core/substance-ssg4m/ssg4m-resulting-materials/ssg4m-resulting-materials-form.component.html","./src/app/core/substance-ssg4m/ssg4m-resulting-materials/ssg4m-resulting-materials-form.component.ts","./src/app/core/substance-ssg4m/ssg4m-critical-parameter/ssg4m-critical-parameter-form.component.html","./src/app/core/substance-ssg4m/ssg4m-critical-parameter/ssg4m-critical-parameter-form.component.ts","./src/app/core/substance-ssg4m/ssg4m-stages/ssg4m-stages-form.component.html","./src/app/core/substance-ssg4m/ssg4m-stages/ssg4m-stages-form.component.ts","./src/app/core/substance-ssg4m/ssg4m-sites/ssg4m-sites.component.html","./src/app/core/substance-ssg4m/ssg4m-sites/ssg4m-sites.component.ts","./src/app/core/substance-ssg4m/ssg4m-process/ssg4m-process-form.component.html","./src/app/core/substance-ssg4m/ssg4m-process/ssg4m-process-form.component.ts","./src/app/core/substance-ssg4m/ssg4m-process/substance-form-ssg4m-process-card.component.html","./src/app/core/substance-ssg4m/ssg4m-process/substance-form-ssg4m-process-card.component.ts","./src/app/core/substance-ssg4m/ssg4m-process/substance-form-ssg4m-process.module.ts","./src/app/core/substance-ssg4m/ssg4m-scheme-view/ssg4m-scheme-view.module.ts","./src/app/core/substance-ssg4m/ssg4m-sites/ssg4m-sites.module.ts","./src/app/core/substance-ssg4m/ssg4m-critical-parameter/ssg4m-critical-parameter.module.ts","./src/app/core/substance-ssg4m/ssg4m-processing-materials/substance-form-ssg4m-processing-materials.module.ts","./src/app/core/substance-ssg4m/ssg4m-resulting-materials/substance-form-ssg4m-resulting-materials.module.ts","./src/app/core/substance-ssg4m/ssg4m-stages/substance-form-ssg4m-stages.module.ts","./src/app/core/substance-ssg4m/ssg4m-starting-materials/substance-form-ssg4m-starting-materials.module.ts","./src/app/core/substance-text-search/substance-text-search.component.html","./src/app/core/substance-text-search/substance-text-search.component.ts","./src/app/core/substance-text-search/substance-text-search.module.ts","./src/app/core/substance/substance-image.directive.ts","./src/app/core/substance/substance-image.module.ts","./src/app/core/substance/substance.service.ts","./src/app/core/substances-browse/export-dialog/export-dialog.component.ts","./src/app/core/substances-browse/export-dialog/export-dialog.component.html","./src/app/core/utils/code-display.module.ts","./src/app/core/utils/code-system-display.pipe.ts","./src/app/core/utils/data-dictionary.ts","./src/app/core/utils/data-dictionary.service.ts","./src/app/core/utils/search-sort-values.ts","./src/app/core/utils/utils.service.ts","./src/app/fda/adverse-event/adverse-events-cvm-browse/adverse-events-cvm-search-sort-values.ts","./src/app/fda/adverse-event/adverse-events-dme-browse/adverse-events-dme-search-sort-values.ts","./src/app/fda/adverse-event/adverse-events-pt-browse/adverse-events-pt-search-sort-values.ts","./src/app/fda/adverse-event/service/adverseevent.service.ts","./src/app/fda/application/service/application.service.ts","./src/app/fda/clinical-trials/clinical-trial/clinical-trial.service.ts","./src/app/fda/confirm-dialog/confirm-dialog.component.html","./src/app/fda/confirm-dialog/confirm-dialog.component.ts","./src/app/fda/substance-browse/substance-counts/substance-counts.component.html","./src/app/fda/substance-browse/substance-counts/substance-counts.component.ts","./src/app/fda/substance-browse/show-application-toggle/show-application-toggle.component.html","./src/app/fda/substance-browse/show-application-toggle/show-application-toggle.component.ts","./src/app/fda/fda-dynamic-componet-manifests.ts","./src/app/fda/application/applications-browse/application-search-sort-values.ts","./src/app/fda/application/application-text-search/application-text-search.component.html","./src/app/fda/application/application-text-search/application-text-search.component.ts","./src/app/fda/application/applications-browse/applications-browse.component.html","./src/app/fda/application/applications-browse/applications-browse.component.ts","./src/app/fda/application/application-details/application-details-base.component.ts","./src/app/fda/application/application-details/application-details/application-details.component.html","./src/app/fda/application/application-details/application-details/application-details.component.ts","./src/app/fda/application/application-details/application-darrts-details/application-darrts-details.component.html","./src/app/fda/application/application-details/application-darrts-details/application-darrts-details.component.ts","./src/app/fda/json-dialog-fda/json-dialog-fda.component.html","./src/app/fda/json-dialog-fda/json-dialog-fda.component.ts","./src/app/fda/application/application-form/application-form.component.html","./src/app/fda/application/application-form/application-form.component.ts","./src/app/fda/application/application-form/application-product-form/application-product-form.component.html","./src/app/fda/application/application-form/application-product-form/application-product-form.component.ts","./src/app/fda/application/application-form/ingredient-form/ingredient-form.component.html","./src/app/fda/application/application-form/ingredient-form/ingredient-form.component.ts","./src/app/fda/substance-search-select/substance-search-selector.module.ts","./src/app/fda/json-dialog-fda/json-dialog-fda.module.ts","./src/app/fda/confirm-dialog/confirm-dialog.module.ts","./src/app/fda/application/application-text-search/application-text-search.module.ts","./src/app/fda/application/application-form/can-activate-register-application-form.component.ts","./src/app/fda/application/application-form/can-activate-update-application-form.component.ts","./src/app/fda/application/application-form/can-deactivate-application-form.component.ts","./src/app/fda/application/application-loaded.component.ts","./src/app/fda/substance-search-select/substance-search-selector.component.html","./src/app/fda/substance-search-select/substance-search-selector.component.ts","./src/app/fda/application/application.module.ts","./src/app/fda/substance-browse/substance-application-match-list/substance-application-match-list.module.ts","./src/app/fda/product/product-details/product-details-base.component.ts","./src/app/fda/product/product-details/product-details/product-details.component.html","./src/app/fda/product/product-details/product-details/product-details.component.ts","./src/app/fda/product/product-details/product-elist-details/product-elist-details.component.html","./src/app/fda/product/product-details/product-elist-details/product-elist-details.component.ts","./src/app/fda/product/product-form/product-form.component.html","./src/app/fda/product/product-form/product-form.component.ts","./src/app/fda/product/product-form/product-component/product-component-form.component.html","./src/app/fda/product/product-form/product-component/product-component-form.component.ts","./src/app/fda/product/product-form/product-ingredient-form/product-ingredient-form.component.html","./src/app/fda/product/product-form/product-ingredient-form/product-ingredient-form.component.ts","./src/app/fda/product/product-form/product-lot-form/product-lot-form.component.html","./src/app/fda/product/product-form/product-lot-form/product-lot-form.component.ts","./src/app/fda/product/product-text-search/product-text-search.module.ts","./src/app/fda/product/products-browse/product-search-sort-values.ts","./src/app/fda/product/product-text-search/product-text-search.component.html","./src/app/fda/product/product-text-search/product-text-search.component.ts","./src/app/fda/product/products-browse/products-browse.component.html","./src/app/fda/product/products-browse/products-browse.component.ts","./src/app/fda/product/product-form/can-activate-register-product-form.component.ts","./src/app/fda/product/product-form/can-activate-update-product-form.component.ts","./src/app/fda/product/product-form/can-deactivate-product-form.component.ts","./src/app/fda/product/activate-products.component.ts","./src/app/fda/product/product.module.ts","./src/app/fda/clinical-trials/clinical-trials-browse/clinical-trials-browse.component.html","./src/app/fda/clinical-trials/clinical-trials-browse/clinical-trials-browse.component.ts","./src/app/fda/clinical-trials/mini-search/mini-search.component.html","./src/app/fda/clinical-trials/mini-search/mini-search.component.ts","./src/app/fda/clinical-trials/clinical-trial-edit/clinical-trial-edit.component.html","./src/app/fda/clinical-trials/clinical-trial-edit/clinical-trial-edit.component.ts","./src/app/fda/clinical-trials/clinical-trial-add/clinical-trial-add.component.html","./src/app/fda/clinical-trials/clinical-trial-add/clinical-trial-add.component.ts","./src/app/fda/clinical-trials/clinical-trial-details/clinical-trial-details-base.component.ts","./src/app/fda/clinical-trials/clinical-trial-details/clinical-trial-details/clinical-trial-details.component.html","./src/app/fda/clinical-trials/clinical-trial-details/clinical-trial-details/clinical-trial-details.component.ts","./src/app/fda/clinical-trials/clinical-trial-details/clinical-trial-europe-details/clinical-trial-europe-details.component.html","./src/app/fda/clinical-trials/clinical-trial-details/clinical-trial-europe-details/clinical-trial-europe-details.component.ts","./src/app/fda/clinical-trials/activate-clinical-trials.component.ts","./src/app/fda/clinical-trials/clinical-trials.module.ts","./src/app/fda/user-manual/user-manual.module.ts","./src/app/fda/jira-submit-ticket/jira-submit-ticket.module.ts","./src/app/fda/substance-browse/substance-application-match-list/substance-application-match-list.component.html","./src/app/fda/substance-browse/substance-application-match-list/substance-application-match-list.component.ts","./src/app/fda/substance-details/fda-substance-cards-filters.constant.ts","./src/app/fda/service/sso-refresh.service.ts","./src/app/fda/jira-submit-ticket/jira-submit-ticket.component.ts","./src/app/fda/jira-submit-ticket/jira-submit-ticket.component.html","./src/app/fda/user-manual/user-manual.component.ts","./src/app/fda/user-manual/user-manual.component.html","./src/app/fda/impurities/impurities-form/impurities-form.component.html","./src/app/fda/impurities/impurities-form/impurities-form.component.ts","./src/app/fda/impurities/impurities-form/impurities-details-form/impurities-details-form.component.html","./src/app/fda/impurities/impurities-form/impurities-details-form/impurities-details-form.component.ts","./src/app/fda/impurities/impurities-details/impurities-details.component.html","./src/app/fda/impurities/impurities-details/impurities-details.component.ts","./src/app/fda/impurities/impurities-form/impurities-unspecified-form/impurities-unspecified-form.component.html","./src/app/fda/impurities/impurities-form/impurities-unspecified-form/impurities-unspecified-form.component.ts","./src/app/fda/impurities/impurities-form/impurities-total-form/impurities-total-form.component.ts","./src/app/fda/impurities/impurities-form/impurities-total-form/impurities-total-form.component.html","./src/app/fda/impurities/impurities-form/impurities-test-form/impurities-test-form.component.html","./src/app/fda/impurities/impurities-form/impurities-test-form/impurities-test-form.component.ts","./src/app/fda/impurities/impurities-form/impurities-substance-form/impurities-substance-form.component.html","./src/app/fda/impurities/impurities-form/impurities-substance-form/impurities-substance-form.component.ts","./src/app/fda/impurities/impurities-form/impurities-residual-solvents-form/impurities-residual-solvents-form.component.html","./src/app/fda/impurities/impurities-form/impurities-residual-solvents-form/impurities-residual-solvents-form.component.ts","./src/app/fda/impurities/impurities-form/impurities-inorganic-form/impurities-inorganic-form.component.html","./src/app/fda/impurities/impurities-form/impurities-inorganic-form/impurities-inorganic-form.component.ts","./src/app/fda/impurities/impurities-form/can-activate-register-impurities-form.component.ts","./src/app/fda/impurities/impurities-form/can-activate-update-impurities-form.component.ts","./src/app/fda/impurities/impurities-form/can-deactivate-impurities-form.component.ts","./src/app/fda/impurities/activate-impurities.component.ts","./src/app/fda/impurities/impurities.module.ts","./src/app/fda/advanced-search/service/advanced-search.service.ts","./src/app/fda/advanced-search/advanced-search.component.html","./src/app/fda/advanced-search/advanced-search.component.ts","./src/app/fda/advanced-search/advanced-query-statement/advanced-query-statement.component.html","./src/app/fda/advanced-search/advanced-query-statement/advanced-query-statement.component.ts","./src/app/fda/advanced-search/advanced-search.module.ts","./src/app/fda/adverse-event/adverse-event-text-search/adverse-event-text-search.module.ts","./src/app/fda/adverse-event/adverse-event-text-search/adverse-event-text-search.component.html","./src/app/fda/adverse-event/adverse-event-text-search/adverse-event-text-search.component.ts","./src/app/fda/adverse-event/adverse-events-pt-browse/adverse-events-pt-browse.component.html","./src/app/fda/adverse-event/adverse-events-pt-browse/adverse-events-pt-browse.component.ts","./src/app/fda/adverse-event/adverse-events-dme-browse/adverse-events-dme-browse.component.html","./src/app/fda/adverse-event/adverse-events-dme-browse/adverse-events-dme-browse.component.ts","./src/app/fda/adverse-event/adverse-events-cvm-browse/adverse-events-cvm-browse.component.html","./src/app/fda/adverse-event/adverse-events-cvm-browse/adverse-events-cvm-browse.component.ts","./src/app/fda/adverse-event/adverse-events-browse/adverse-events-browse.component.html","./src/app/fda/adverse-event/adverse-events-browse/adverse-events-browse.component.ts","./src/app/fda/adverse-event/activate-adverse-events.component.ts","./src/app/fda/adverse-event/adverse-events-browse.module.ts","./src/app/fda/fda.module.ts","./src/app/fda/impurities/service/impurities.service.ts","./src/app/fda/product/service/product.service.ts","./src/app/fda/service/general.service.ts","./src/environments/_base-environment.ts","./src/environments/environment.fda.prod.ts","./src/app/core/page-not-found/page-not-found.component.ts","./src/app/core/highlighted-search-action/highlighted-search-action.component.ts","./src/app/core/highlighted-search-action/highlighted-search-action.component.html","./src/app/core/admin/admin.service.ts","./node_modules/rxjs/dist/esm/internal/operators/retry.js","./src/app/core/substance-form/substance-drafts/substance-drafts.component.html","./src/app/core/substance-form/substance-drafts/substance-drafts.component.ts","./src/app/core/auth/user-profile/user-profile.component.html","./src/app/core/auth/user-profile/user-profile.component.ts","./src/app/core/substance-edit-import-dialog/substance-edit-import-dialog.component.html","./src/app/core/substance-edit-import-dialog/substance-edit-import-dialog.component.ts","./src/app/core/substance-text-search/substance-text-search.service.ts","./src/app/core/utils/wildcard.service.ts","./src/app/core/main-notification/main-notification/main-notification.component.ts","./src/app/core/main-notification/main-notification/main-notification.component.html","./src/app/core/loading/loading/loading.component.html","./src/app/core/loading/loading/loading.component.ts","./src/app/core/base/base.component.html","./src/app/core/base/base.component.ts","./src/app/core/home/home.component.html","./src/app/core/home/home.component.ts","./src/app/core/registrars/registrars.component.html","./src/app/core/registrars/registrars.component.ts","./src/app/core/substances-browse/browse-header-dynamic-section/browse-header-dynamic-section.directive.ts","./src/app/core/substances-browse/sub-browse-emitter.service.ts","./src/app/core/substances-browse/card-dynamic-section/card-dynamic-section.directive.ts","./src/app/core/substances-browse/substance-summary-card/show-molfile-dialog/show-molfile-dialog.component.html","./src/app/core/substances-browse/substance-summary-card/show-molfile-dialog/show-molfile-dialog.component.ts","./src/app/core/substances-browse/sequence-alignment/sequence-alignment.component.html","./src/app/core/substances-browse/sequence-alignment/sequence-alignment.component.ts","./src/app/core/substances-browse/substance-hierarchy/substance-hierarchy.component.html","./src/app/core/substances-browse/substance-hierarchy/substance-hierarchy.component.ts","./src/app/core/utils/names-display-order.pipe.ts","./src/app/core/utils/take.pipe.ts","./src/app/core/utils/substance-status.pipe.ts","./src/app/core/substances-browse/substance-summary-card/substance-summary-card.component.html","./src/app/core/substances-browse/substance-summary-card/substance-summary-card.component.ts","./src/app/core/substances-browse/substances-browse.component.html","./src/app/core/substances-browse/substances-browse.component.ts","./src/app/core/structure-search/structure-search.component.html","./src/app/core/structure-search/structure-search.component.ts","./src/app/core/sequence-search/sequence-search.component.html","./src/app/core/sequence-search/sequence-search.component.ts","./src/app/core/auth/login/login.component.html","./src/app/core/auth/login/login.component.ts","./src/app/core/substance-form/substance-form-section.ts","./src/app/core/substance-form/json-dialog/json-dialog.component.html","./src/app/core/substance-form/json-dialog/json-dialog.component.ts","./src/app/core/substance-form/submit-success-dialog/submit-success-dialog.component.ts","./src/app/core/substance-form/submit-success-dialog/submit-success-dialog.component.html","./src/app/core/substance-form/merge-concept-dialog/merge-concept-dialog.component.html","./src/app/core/substance-form/merge-concept-dialog/merge-concept-dialog.component.ts","./src/app/core/substance-form/definition-switch-dialog/definition-switch-dialog.component.html","./src/app/core/substance-form/definition-switch-dialog/definition-switch-dialog.component.ts","./src/app/core/substance-form/substance-form.component.html","./src/app/core/substance-form/substance-form.component.ts","./src/app/core/substance-form/can-deactivate-substance-form.guard.ts","./src/app/core/guided-search/query-statement/query-statement.component.html","./src/app/core/guided-search/query-statement/query-statement.component.ts","./src/app/core/guided-search/guided-search.component.html","./src/app/core/guided-search/guided-search.component.ts","./src/app/core/admin/cache-summary/cache-summary.component.html","./src/app/core/admin/cache-summary/cache-summary.component.ts","./src/app/core/admin/user-management/user-edit-dialog/user-edit-dialog.component.html","./src/app/core/admin/user-management/user-edit-dialog/user-edit-dialog.component.ts","./src/app/core/admin/user-management/user-management.component.html","./src/app/core/admin/user-management/user-management.component.ts","./src/app/core/admin/data-management/data-management.component.html","./src/app/core/admin/data-management/data-management.component.ts","./src/app/core/admin/cv-management/cv-term-dialog/cv-term-dialog.component.html","./src/app/core/admin/cv-management/cv-term-dialog/cv-term-dialog.component.ts","./src/app/core/admin/cv-management/cv-management.component.html","./src/app/core/admin/cv-management/cv-management.component.ts","./node_modules/ngx-moment/__ivy_ngcc__/fesm2015/ngx-moment.js","./src/app/core/admin/scheduled-jobs/scheduled-job/scheduled-job.component.html","./src/app/core/admin/scheduled-jobs/scheduled-job/scheduled-job.component.ts","./src/app/core/admin/scheduled-jobs/scheduled-jobs.component.html","./src/app/core/admin/scheduled-jobs/scheduled-jobs.component.ts","./src/app/core/admin/all-files/all-files.component.html","./src/app/core/admin/all-files/all-files.component.ts","./src/app/core/admin/admin.component.html","./src/app/core/admin/admin.component.ts","./src/app/core/auth/user-downloads/download-monitor/decodeURI.pipe.ts","./src/app/core/auth/user-downloads/download-monitor/fileSize.pipe.ts","./src/app/core/auth/user-downloads/download-monitor/download-monitor.component.html","./src/app/core/auth/user-downloads/download-monitor/download-monitor.component.ts","./src/app/core/auth/user-downloads/user-downloads.component.html","./src/app/core/auth/user-downloads/user-downloads.component.ts","./src/app/core/admin/monitor/monitor.component.html","./src/app/core/admin/monitor/monitor.component.ts","./src/app/core/admin/can-activate-admin.ts","./src/app/core/unauthorized/unauthorized.component.html","./src/app/core/unauthorized/unauthorized.component.ts","./src/app/core/substance-ssg4m/substance-ssg4m-form.service.ts","./src/app/core/substance-ssg4m/substance-ssg4m-form.component.html","./src/app/core/substance-ssg4m/substance-ssg4m-form.component.ts","./src/app/core/app-routing.module.ts","./src/app/core/app.component.ts","./src/app/core/app.component.html","./src/app/core/config/config.factory.ts","./src/app/core/main-notification/main-notification.module.ts","./src/app/core/app-dynamic-component-manifests.ts","./src/app/core/auth/auth.module.ts","./src/app/core/auth/auth.interceptor.ts","./src/app/core/admin/admin.module.ts","./src/app/core/guided-search/guided-search.module.ts","./src/app/core/admin/can-activate-admin-page.ts","./src/app/core/error-handler/error-handler.ts","./src/app/core/substance-ssg4m/ssg4m-step-view-dialog/ssg4m-step-view-dialog.module.ts","./src/app/core/substance-ssg4m/substance-ssg4m.module.ts","./src/app/core/app.module.ts","./src/main.ts","./node_modules/call-bind/callBound.js","./node_modules/call-bind/index.js","./node_modules/cronstrue/dist/cronstrue.js","./node_modules/defiant.js/dist/defiant.min.js","./node_modules/foreach/index.js","./node_modules/function-bind/implementation.js","./node_modules/function-bind/index.js","./node_modules/get-intrinsic/index.js","./node_modules/hammerjs/hammer.js","./node_modules/has-symbols/index.js","./node_modules/has-symbols/shams.js","./node_modules/has-tostringtag/node_modules/has-symbols/shams.js","./node_modules/has-tostringtag/shams.js","./node_modules/has/src/index.js","./node_modules/inherits/inherits_browser.js","./node_modules/is-arguments/index.js","./node_modules/is-generator-function/index.js","./node_modules/is-typed-array/index.js","./node_modules/lodash/lodash.js","./node_modules/moment/locale/af.js","./node_modules/moment/locale/ar-dz.js","./node_modules/moment/locale/ar-kw.js","./node_modules/moment/locale/ar-ly.js","./node_modules/moment/locale/ar-ma.js","./node_modules/moment/locale/ar-sa.js","./node_modules/moment/locale/ar-tn.js","./node_modules/moment/locale/ar.js","./node_modules/moment/locale/az.js","./node_modules/moment/locale/be.js","./node_modules/moment/locale/bg.js","./node_modules/moment/locale/bm.js","./node_modules/moment/locale/bn.js","./node_modules/moment/locale/bo.js","./node_modules/moment/locale/br.js","./node_modules/moment/locale/bs.js","./node_modules/moment/locale/ca.js","./node_modules/moment/locale/cs.js","./node_modules/moment/locale/cv.js","./node_modules/moment/locale/cy.js","./node_modules/moment/locale/da.js","./node_modules/moment/locale/de-at.js","./node_modules/moment/locale/de-ch.js","./node_modules/moment/locale/de.js","./node_modules/moment/locale/dv.js","./node_modules/moment/locale/el.js","./node_modules/moment/locale/en-au.js","./node_modules/moment/locale/en-ca.js","./node_modules/moment/locale/en-gb.js","./node_modules/moment/locale/en-ie.js","./node_modules/moment/locale/en-il.js","./node_modules/moment/locale/en-in.js","./node_modules/moment/locale/en-nz.js","./node_modules/moment/locale/en-sg.js","./node_modules/moment/locale/eo.js","./node_modules/moment/locale/es-do.js","./node_modules/moment/locale/es-us.js","./node_modules/moment/locale/es.js","./node_modules/moment/locale/et.js","./node_modules/moment/locale/eu.js","./node_modules/moment/locale/fa.js","./node_modules/moment/locale/fi.js","./node_modules/moment/locale/fil.js","./node_modules/moment/locale/fo.js","./node_modules/moment/locale/fr-ca.js","./node_modules/moment/locale/fr-ch.js","./node_modules/moment/locale/fr.js","./node_modules/moment/locale/fy.js","./node_modules/moment/locale/ga.js","./node_modules/moment/locale/gd.js","./node_modules/moment/locale/gl.js","./node_modules/moment/locale/gom-deva.js","./node_modules/moment/locale/gom-latn.js","./node_modules/moment/locale/gu.js","./node_modules/moment/locale/he.js","./node_modules/moment/locale/hi.js","./node_modules/moment/locale/hr.js","./node_modules/moment/locale/hu.js","./node_modules/moment/locale/hy-am.js","./node_modules/moment/locale/id.js","./node_modules/moment/locale/is.js","./node_modules/moment/locale/it-ch.js","./node_modules/moment/locale/it.js","./node_modules/moment/locale/ja.js","./node_modules/moment/locale/jv.js","./node_modules/moment/locale/ka.js","./node_modules/moment/locale/kk.js","./node_modules/moment/locale/km.js","./node_modules/moment/locale/kn.js","./node_modules/moment/locale/ko.js","./node_modules/moment/locale/ku.js","./node_modules/moment/locale/ky.js","./node_modules/moment/locale/lb.js","./node_modules/moment/locale/lo.js","./node_modules/moment/locale/lt.js","./node_modules/moment/locale/lv.js","./node_modules/moment/locale/me.js","./node_modules/moment/locale/mi.js","./node_modules/moment/locale/mk.js","./node_modules/moment/locale/ml.js","./node_modules/moment/locale/mn.js","./node_modules/moment/locale/mr.js","./node_modules/moment/locale/ms-my.js","./node_modules/moment/locale/ms.js","./node_modules/moment/locale/mt.js","./node_modules/moment/locale/my.js","./node_modules/moment/locale/nb.js","./node_modules/moment/locale/ne.js","./node_modules/moment/locale/nl-be.js","./node_modules/moment/locale/nl.js","./node_modules/moment/locale/nn.js","./node_modules/moment/locale/oc-lnc.js","./node_modules/moment/locale/pa-in.js","./node_modules/moment/locale/pl.js","./node_modules/moment/locale/pt-br.js","./node_modules/moment/locale/pt.js","./node_modules/moment/locale/ro.js","./node_modules/moment/locale/ru.js","./node_modules/moment/locale/sd.js","./node_modules/moment/locale/se.js","./node_modules/moment/locale/si.js","./node_modules/moment/locale/sk.js","./node_modules/moment/locale/sl.js","./node_modules/moment/locale/sq.js","./node_modules/moment/locale/sr-cyrl.js","./node_modules/moment/locale/sr.js","./node_modules/moment/locale/ss.js","./node_modules/moment/locale/sv.js","./node_modules/moment/locale/sw.js","./node_modules/moment/locale/ta.js","./node_modules/moment/locale/te.js","./node_modules/moment/locale/tet.js","./node_modules/moment/locale/tg.js","./node_modules/moment/locale/th.js","./node_modules/moment/locale/tl-ph.js","./node_modules/moment/locale/tlh.js","./node_modules/moment/locale/tr.js","./node_modules/moment/locale/tzl.js","./node_modules/moment/locale/tzm-latn.js","./node_modules/moment/locale/tzm.js","./node_modules/moment/locale/ug-cn.js","./node_modules/moment/locale/uk.js","./node_modules/moment/locale/ur.js","./node_modules/moment/locale/uz-latn.js","./node_modules/moment/locale/uz.js","./node_modules/moment/locale/vi.js","./node_modules/moment/locale/x-pseudo.js","./node_modules/moment/locale/yo.js","./node_modules/moment/locale/zh-cn.js","./node_modules/moment/locale/zh-hk.js","./node_modules/moment/locale/zh-mo.js","./node_modules/moment/locale/zh-tw.js","./node_modules/moment/moment.js","./node_modules/ngx-json-viewer/__ivy_ngcc__/ngx-json-viewer.js","./node_modules/regenerator-runtime/runtime.js","./node_modules/rxjs/dist/esm/internal/BehaviorSubject.js","./node_modules/rxjs/dist/esm/internal/util/pipe.js","./node_modules/rxjs/dist/esm/internal/Observable.js","./node_modules/rxjs/dist/esm/internal/ReplaySubject.js","./node_modules/rxjs/dist/esm/internal/util/ObjectUnsubscribedError.js","./node_modules/rxjs/dist/esm/internal/Subject.js","./node_modules/rxjs/dist/esm/internal/NotificationFactories.js","./node_modules/rxjs/dist/esm/internal/Subscriber.js","./node_modules/rxjs/dist/esm/internal/Subscription.js","./node_modules/rxjs/dist/esm/internal/util/UnsubscriptionError.js","./node_modules/rxjs/dist/esm/internal/config.js","./node_modules/rxjs/dist/esm/internal/observable/combineLatest.js","./node_modules/rxjs/dist/esm/internal/operators/concatAll.js","./node_modules/rxjs/dist/esm/internal/observable/concat.js","./node_modules/rxjs/dist/esm/internal/observable/defer.js","./node_modules/rxjs/dist/esm/internal/observable/empty.js","./node_modules/rxjs/dist/esm/internal/observable/forkJoin.js","./node_modules/rxjs/dist/esm/internal/operators/observeOn.js","./node_modules/rxjs/dist/esm/internal/operators/subscribeOn.js","./node_modules/rxjs/dist/esm/internal/scheduled/scheduleAsyncIterable.js","./node_modules/rxjs/dist/esm/internal/observable/from.js","./node_modules/rxjs/dist/esm/internal/scheduled/scheduled.js","./node_modules/rxjs/dist/esm/internal/scheduled/scheduleObservable.js","./node_modules/rxjs/dist/esm/internal/scheduled/scheduleArray.js","./node_modules/rxjs/dist/esm/internal/scheduled/schedulePromise.js","./node_modules/rxjs/dist/esm/internal/scheduled/scheduleIterable.js","./node_modules/rxjs/dist/esm/internal/scheduled/scheduleReadableStreamLike.js","./node_modules/rxjs/dist/esm/internal/observable/fromEvent.js","./node_modules/rxjs/dist/esm/internal/observable/innerFrom.js","./node_modules/rxjs/dist/esm/internal/observable/merge.js","./node_modules/rxjs/dist/esm/internal/observable/of.js","./node_modules/rxjs/dist/esm/internal/observable/throwError.js","./node_modules/rxjs/dist/esm/internal/util/isDate.js","./node_modules/rxjs/dist/esm/internal/observable/timer.js","./node_modules/rxjs/dist/esm/internal/operators/OperatorSubscriber.js","./node_modules/rxjs/dist/esm/internal/operators/audit.js","./node_modules/rxjs/dist/esm/internal/operators/auditTime.js","./node_modules/rxjs/dist/esm/internal/operators/catchError.js","./node_modules/rxjs/dist/esm/internal/operators/concatMap.js","./node_modules/rxjs/dist/esm/internal/operators/debounceTime.js","./node_modules/rxjs/dist/esm/internal/operators/delayWhen.js","./node_modules/rxjs/dist/esm/internal/operators/ignoreElements.js","./node_modules/rxjs/dist/esm/internal/operators/delay.js","./node_modules/rxjs/dist/esm/internal/operators/distinctUntilChanged.js","./node_modules/rxjs/dist/esm/internal/operators/filter.js","./node_modules/rxjs/dist/esm/internal/operators/finalize.js","./node_modules/rxjs/dist/esm/internal/operators/map.js","./node_modules/rxjs/dist/esm/internal/operators/mapTo.js","./node_modules/rxjs/dist/esm/internal/operators/mergeAll.js","./node_modules/rxjs/dist/esm/internal/operators/mergeInternals.js","./node_modules/rxjs/dist/esm/internal/operators/mergeMap.js","./node_modules/rxjs/dist/esm/internal/operators/share.js","./node_modules/rxjs/dist/esm/internal/operators/skip.js","./node_modules/rxjs/dist/esm/internal/operators/startWith.js","./node_modules/rxjs/dist/esm/internal/operators/switchMap.js","./node_modules/rxjs/dist/esm/internal/operators/take.js","./node_modules/rxjs/dist/esm/internal/operators/takeUntil.js","./node_modules/rxjs/dist/esm/internal/operators/tap.js","./node_modules/rxjs/dist/esm/internal/scheduler/Action.js","./node_modules/rxjs/dist/esm/internal/scheduler/intervalProvider.js","./node_modules/rxjs/dist/esm/internal/scheduler/AsyncAction.js","./node_modules/rxjs/dist/esm/internal/Scheduler.js","./node_modules/rxjs/dist/esm/internal/scheduler/AsyncScheduler.js","./node_modules/rxjs/dist/esm/internal/util/Immediate.js","./node_modules/rxjs/dist/esm/internal/scheduler/immediateProvider.js","./node_modules/rxjs/dist/esm/internal/scheduler/AsapAction.js","./node_modules/rxjs/dist/esm/internal/scheduler/AsapScheduler.js","./node_modules/rxjs/dist/esm/internal/scheduler/asap.js","./node_modules/rxjs/dist/esm/internal/scheduler/async.js","./node_modules/rxjs/dist/esm/internal/scheduler/dateTimestampProvider.js","./node_modules/rxjs/dist/esm/internal/scheduler/timeoutProvider.js","./node_modules/rxjs/dist/esm/internal/symbol/iterator.js","./node_modules/rxjs/dist/esm/internal/symbol/observable.js","./node_modules/rxjs/dist/esm/internal/util/args.js","./node_modules/rxjs/dist/esm/internal/util/argsArgArrayOrObject.js","./node_modules/rxjs/dist/esm/internal/util/arrRemove.js","./node_modules/rxjs/dist/esm/internal/util/createErrorClass.js","./node_modules/rxjs/dist/esm/internal/util/createObject.js","./node_modules/rxjs/dist/esm/internal/util/errorContext.js","./node_modules/rxjs/dist/esm/internal/util/executeSchedule.js","./node_modules/rxjs/dist/esm/internal/util/identity.js","./node_modules/rxjs/dist/esm/internal/util/isArrayLike.js","./node_modules/rxjs/dist/esm/internal/util/isAsyncIterable.js","./node_modules/rxjs/dist/esm/internal/util/isFunction.js","./node_modules/rxjs/dist/esm/internal/util/isInteropObservable.js","./node_modules/rxjs/dist/esm/internal/util/isIterable.js","./node_modules/rxjs/dist/esm/internal/util/isObservable.js","./node_modules/rxjs/dist/esm/internal/util/isPromise.js","./node_modules/rxjs/dist/esm/internal/util/isReadableStreamLike.js","./node_modules/rxjs/dist/esm/internal/util/isScheduler.js","./node_modules/rxjs/dist/esm/internal/util/lift.js","./node_modules/rxjs/dist/esm/internal/util/mapOneOrManyArgs.js","./node_modules/rxjs/dist/esm/internal/util/noop.js","./node_modules/rxjs/dist/esm/internal/util/reportUnhandledError.js","./node_modules/rxjs/dist/esm/internal/util/throwUnobservableError.js","./node_modules/util/support/isBufferBrowser.js","./node_modules/util/support/types.js","./node_modules/util/util.js","./node_modules/which-typed-array/index.js","/home/andersonng/VSCode/GSRSFrontend/node_modules/moment/locale|sync|/^\\.\\/.*$/","./node_modules/source-map-loader/dist/cjs.js","./node_modules/available-typed-arrays/index.js","./node_modules/which-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js","./projects/file-select/src/lib/file-select.directive.ts","./projects/file-select/src/lib/file-select.module.ts","./projects/jsdraw-wrapper/src/lib/jsdraw-wrapper.component.ts","./projects/jsdraw-wrapper/src/lib/jsdraw-wrapper.module.ts","./projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.ts","./projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.html","./projects/ketcher-wrapper/src/lib/ketcher-wrapper.module.ts","./node_modules/@angular/animations/fesm2015/animations.mjs","./node_modules/@angular/cdk/fesm2015/a11y.mjs","./node_modules/@angular/cdk/fesm2015/bidi.mjs","./node_modules/@angular/cdk/fesm2015/coercion.mjs","./node_modules/@angular/cdk/fesm2015/collections.mjs","./node_modules/@angular/cdk/fesm2015/keycodes.mjs","./node_modules/@angular/cdk/fesm2015/layout.mjs","./node_modules/@angular/cdk/fesm2015/observers.mjs","./node_modules/@angular/cdk/fesm2015/overlay.mjs","./node_modules/rxjs/dist/esm/internal/operators/takeWhile.js","./node_modules/@angular/cdk/fesm2015/platform.mjs","./node_modules/@angular/cdk/fesm2015/portal.mjs","./node_modules/rxjs/dist/esm/internal/scheduler/animationFrameProvider.js","./node_modules/rxjs/dist/esm/internal/scheduler/AnimationFrameAction.js","./node_modules/rxjs/dist/esm/internal/scheduler/AnimationFrameScheduler.js","./node_modules/rxjs/dist/esm/internal/scheduler/animationFrame.js","./node_modules/@angular/cdk/fesm2015/scrolling.mjs","./node_modules/rxjs/dist/esm/internal/operators/pairwise.js","./node_modules/rxjs/dist/esm/internal/operators/shareReplay.js","./node_modules/@angular/cdk/fesm2015/table.mjs","./node_modules/@angular/cdk/fesm2015/text-field.mjs","./node_modules/@angular/cdk/fesm2015/tree.mjs","./node_modules/@angular/common/fesm2015/common.mjs","./node_modules/@angular/common/fesm2015/http.mjs","javascript/esm|/home/andersonng/VSCode/GSRSFrontend/node_modules/source-map-loader/dist/cjs.js","./node_modules/@angular/core/fesm2015/core.mjs","./node_modules/@angular/forms/fesm2015/forms.mjs","./node_modules/@angular/material/fesm2015/autocomplete.mjs","./node_modules/@angular/material/fesm2015/badge.mjs","./node_modules/@angular/material/fesm2015/bottom-sheet.mjs","./node_modules/@angular/material/fesm2015/button-toggle.mjs","./node_modules/@angular/material/fesm2015/button.mjs","./node_modules/@angular/material/fesm2015/card.mjs","./node_modules/@angular/material/fesm2015/checkbox.mjs","./node_modules/@angular/material/fesm2015/chips.mjs","./node_modules/@angular/material/fesm2015/core.mjs","./node_modules/@angular/material/fesm2015/datepicker.mjs","./node_modules/@angular/material/fesm2015/dialog.mjs","./node_modules/@angular/material/fesm2015/divider.mjs","./node_modules/@angular/cdk/fesm2015/accordion.mjs","./node_modules/@angular/material/fesm2015/expansion.mjs","./node_modules/@angular/material/fesm2015/form-field.mjs","./node_modules/@angular/material/fesm2015/icon.mjs","./node_modules/@angular/material/fesm2015/input.mjs","./node_modules/@angular/material/fesm2015/list.mjs","./node_modules/@angular/material/fesm2015/menu.mjs","./node_modules/@angular/material/fesm2015/paginator.mjs","./node_modules/@angular/material/fesm2015/progress-bar.mjs","./node_modules/@angular/material/fesm2015/progress-spinner.mjs","./node_modules/@angular/material/fesm2015/radio.mjs","./node_modules/@angular/material/fesm2015/select.mjs","./node_modules/@angular/material/fesm2015/sidenav.mjs","./node_modules/@angular/material/fesm2015/slider.mjs","./node_modules/@angular/material/fesm2015/sort.mjs","./node_modules/@angular/material/fesm2015/table.mjs","./node_modules/@angular/material/fesm2015/tabs.mjs","./node_modules/@angular/material/fesm2015/toolbar.mjs","./node_modules/@angular/material/fesm2015/tooltip.mjs","./node_modules/@angular/material/fesm2015/tree.mjs","./node_modules/@angular/animations/fesm2015/browser.mjs","./node_modules/@angular/platform-browser/fesm2015/animations.mjs","./node_modules/@angular/platform-browser/fesm2015/platform-browser.mjs","./node_modules/rxjs/dist/esm/internal/util/EmptyError.js","./node_modules/rxjs/dist/esm/internal/operators/refCount.js","./node_modules/rxjs/dist/esm/internal/observable/ConnectableObservable.js","./node_modules/rxjs/dist/esm/internal/operators/scanInternals.js","./node_modules/rxjs/dist/esm/internal/operators/scan.js","./node_modules/rxjs/dist/esm/internal/operators/takeLast.js","./node_modules/rxjs/dist/esm/internal/operators/throwIfEmpty.js","./node_modules/rxjs/dist/esm/internal/operators/defaultIfEmpty.js","./node_modules/rxjs/dist/esm/internal/operators/first.js","./node_modules/@angular/router/fesm2015/router.mjs","./node_modules/rxjs/dist/esm/internal/operators/last.js"],"sourcesContent":["\n
        \n

        Add Fragment to CV

        \n
        \n
        \n

        Fragment Structure Wizard

        \n
        \n
        \n
        \n \n \n \n \n \n \n \n \n \n\n
        \n
        \n \n \n \n
        \n
        \n \n
        \n \n
        \n
        \n
        \n \n \n \n
        \n
        \n \n
        \n \n
        \n\n\n
        \n
        \n \n \n
        \n
        \n
        \n
        \n \n
        \n
        \n\n\n
        \n
        \n \n
        \n
        \n
        0 && adminPanel\">\n
        Click on a form to set the fragment term structure
        \n
        \n
        \n
        Set Connection points using \"*\" atoms in the periodic table element selector.
        \n
        \n\n\n
        \n
        \n
        0\">
        CV not valid:
        \n
        {{message.messageType}} :{{message.message}}
        \n \n
        \n
        \n
        {{message}}
        \n \n \n \n
        \n
        \n
        \n \n
        \n
        {{message}}
        \n \n \n \n
        \n
        ","import { Component, OnInit, Input, Output, Inject } from '@angular/core';\nimport { Editor } from '@gsrs-core/structure-editor';\nimport * as _ from 'lodash';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { EventEmitter } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { StructureService } from '@gsrs-core/structure';\nimport { OverlayContainer } from '@angular/cdk/overlay';\n\n\n@Component({\n selector: 'app-fragment-wizard',\n templateUrl: './fragment-wizard.component.html',\n styleUrls: ['./fragment-wizard.component.scss']\n})\nexport class FragmentWizardComponent implements OnInit {\n @Output() termUpdated = new EventEmitter();\n private editor: Editor;\n @Input() vocab?: any;\n connectivity: Array;\n dat: any;\n domains: any;\n forms: Array = [];\n term2: any = {value: '', display: ''};\n privateTerm: any = {value: '', display: ''};\n asDialog = false;\n vocabulary: any;\n message: string;\n validationMessages =[];\n adminPanel?: boolean;\nsmiles?: any;\nprivate overlayContainer: HTMLElement;\n\n\n constructor(\n private CVService: ControlledVocabularyService,\n private loadingService: LoadingService,\n private structureService: StructureService,\n public dialogRef: MatDialogRef,\n private overlayContainerService: OverlayContainer,\n\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.vocabulary = data.vocabulary;\n this.vocab = data.vocabulary.domain;\n this.privateTerm.value = data.term;\n this.privateTerm.display = data.term;\n this.asDialog = true;\n this.adminPanel = data.adminPanel;\n }\n \n\n @Input()\n set term(val: any) {\n if (val != null) {\n this.privateTerm = val;\n }\n }\n\n get standardized(): boolean {\n return this.privateTerm;\n }\n\n close() {\n this.dialogRef.close();\n }\n\n save() {\n let extant = false;\n this.vocabulary.terms.forEach(term => {\n if (term.value === this.privateTerm.value) {\n extant = true;\n }\n });\n if (!extant) {\n let privateCopy = JSON.parse(JSON.stringify(this.privateTerm));\n delete privateCopy.simpleSrc;\n delete privateCopy.fragmentSrc;\n this.vocabulary.terms.push(privateCopy);\n this.CVService.validateVocab(this.vocabulary).subscribe(response => {\n if(response && response.valid) {\n this.CVService.addVocabTerm( this.vocabulary).subscribe (response => {\n if (response.terms && response.terms.length === this.vocabulary.terms.length) {\n this.message = 'Term ' + this.privateTerm.value + ' Added to ' + this.vocabulary.domain + '';\n setTimeout(() => {this.dialogRef.close(this.privateTerm); }, 3000);\n }\n }, error => {\n this.vocabulary.terms.pop();\n let str = 'Server Error';\n if (error.error && error.error.message) {\n str += ' - ' + error.error.message;\n \n }\n else if(error.message) {\n str += ' - ' + error.message;\n }\n this.message = str;\n \n });\n\n } else {\n if(response.validationMessages) {\n response.validationMessages.forEach(message => {\n this.validationMessages.push(message);\n });\n }\n this.vocabulary.terms.pop();\n }\n },error => {\n console.log(error);\n this.vocabulary.terms.pop();\n let str = 'Validation Error';\n if (error.error && error.error.message) {\n str += ' - ' + error.error.message;\n\n }\n else if(error.message) {\n str += ' - ' + error.message;\n }\n this.message = str;\n\n });\n \n } else {\n this.message = 'Term already exists';\n setTimeout(() => {\n this.message = '';\n }, 1000);\n }\n }\n\n ngOnInit(): void { \n if (this.privateTerm.simplifiedStructure) {\n this.privateTerm.simpleSrc = this.CVService.getStructureUrl(this.privateTerm.simplifiedStructure);\n }\n if (this.privateTerm.fragmentStructure) {\n this.privateTerm.fragmentSrc = this.CVService.getStructureUrl(this.privateTerm.fragmentStructure);\n }\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n }\n\n\n molvecUpdate(mol: any) {\n this.editor.setMolecule(mol);\n }\n\n editorOnLoad(editor: Editor): void {\n this.loadingService.setLoading(false);\n this.editor = editor;\n if(this.privateTerm.value && this.privateTerm.value.fragmentStructure) {\n const pos = this.privateTerm.value.fragmentStructure.substring(0, this.privateTerm.value.fragmentStructure.indexOf(' '));\n this.structureService.interpretStructure(pos).subscribe(response => {\n if (response.structure && response.structure.molfile) {\n\n let test = response.structure.molfile;\n test = test.replace(/ A /g, ' * ');\n this.editor.setMolecule(test);\n }\n });\n } else {\n \n }\n setTimeout(() => {\n // re-adjust z-index after editor messes it up\n this.overlayContainer.style.zIndex = '1003';\n \n this.overlayContainer.style.zIndex = '10003';\n });\n }\n\n getCombination(ll, i) {\n var cur = ll;\n var ret = [];\n\n for (var i2 = 0; i2 < ll.length; i2++) {\n var elm = i % cur.length;\n ret.push(cur[elm]);\n var rr = [];\n\n for (var n = 0; n < cur.length; n++) {\n if (n !== elm) {\n rr.push(cur[n]);\n }\n }\n\n cur = rr;\n }\n\n return ret;\n }\n\n fact(i) {\n var t = 1;\n\n for (; i > 1; i--) {\n t = t * i;\n }\n\n return t;\n }\n\n forEachCombination(ll, c) {\n for (var i = 0; i < this.fact(ll.length); i++) {\n c(this.getCombination(ll, i));\n }\n }\n\n\n getPossibleSmiles(smi) {\n\n function getMarkers(smi) {\n let temp = smi.replace(/@H/g, '').replace(/[^A-Z*]/g, '');\n var alias: any = {\n list: []\n };\n\n \n\n alias.smiles = smi;\n alias.stars = [];\n\n alias.add = function (a) {\n alias.list.push(a);\n\n if (a === '*') {\n alias.stars.push(alias.list.length - 1);\n }\n return alias;\n };\n\n alias.asAlias = function () {\n return '|$' + alias.list.join(';') + '$|';\n };\n\n function fact(i) {\n var t = 1;\n \n for (; i > 1; i--) {\n t = t * i;\n }\n \n return t;\n }\n\n function getCombination(ll, i) {\n var cur = ll;\n var ret = [];\n \n for (var i2 = 0; i2 < ll.length; i2++) {\n var elm = i % cur.length;\n ret.push(cur[elm]);\n var rr = [];\n \n for (var n = 0; n < cur.length; n++) {\n if (n !== elm) {\n rr.push(cur[n]);\n }\n }\n \n cur = rr;\n }\n \n return ret;\n }\n\n function forEachCombination(ll, c) {\n for (var i = 0; i < fact(ll.length); i++) {\n c(getCombination(ll, i));\n }\n }\n\n alias.eachForm = function (labs) {\n var tot = [];\n forEachCombination(labs, function (a) {\n for (var i = 0; i < a.length; i++) {\n alias.list[alias.stars[i]] = a[i];\n }\n\n tot.push(alias.asFullSmiles());\n });\n return tot;\n };\n\n alias.asFullSmiles = function () {\n return alias.smiles + ' ' + alias.asAlias();\n };\n\n for (var i in temp) {\n if (temp[i] === '*') {\n alias.add('*');\n } else {\n alias.add('');\n }\n }\n return alias;\n }\n\n return getMarkers(smi);\n }\n\n fragmentType(domain: any, current?: any) {\n let selected = null;\n if(!current) {\n this.domains.forEach(val => {\n if (val.domain === domain) {\n \n selected = val;\n }\n });\n } else {\n selected = this.vocabulary;\n }\n var rgs = _.chain(selected.terms).map(function (t) {\n return t.fragmentStructure;\n }).filter(function (t) {\n return typeof t !== 'undefined';\n }).map(function (t) {\n return t.split(' ')[1];\n }).filter(function (t) {\n return typeof t !== 'undefined';\n }).flatMap(function (t) {\n return t.replace(/[|]/g, '').replace(/[$]/g, '').split(';');\n }).uniq().filter(function (t) {\n return t.indexOf('_') == 0;\n }).value();\n\n\n\n\n var tt = this.getPossibleSmiles(this.editor.getSmiles());\n let stars = 0;\n let dom = \"\";\n // this.vocab is only used when not editing in admin menu, otherwise full vocabulary is sent since it was fetched earlier\n if (this.vocabulary) {\n dom = this.vocabulary.domain;\n } else {\n dom = this.vocab;\n }\n\n\n\n switch (dom) {\n case 'NUCLEIC_ACID_LINKAGE' : stars = 2; break;\n case 'NUCLEIC_ACID_BASE' : stars = 1; break;\n case 'NUCLEIC_ACID_SUGAR' : stars = 3; break;\n case 'AMINO_ACID_RESIDUE' : stars = 2; break;\n }\n\n if (tt.stars.length <= 0) {\n alert('No star atoms specified, expecting:' + stars + ' star atoms. Use the star atom selector under the periodic table menu to set');\n return;\n } else if (tt.stars.length != stars) {\n alert('Expected ' + stars + ' star atoms, but found:' + tt.stars.length);\n }\n var smilesforms = tt.eachForm(rgs);\n this.forms = [];\n smilesforms.forEach(form => {\n let temp = {'value':form, 'url':this.CVService.getStructureUrl(form)};\n this.forms.push(temp);\n });\n\n }\n\n getFragmentCV() {\n if (this.editor.getSmiles() && this.editor.getSmiles() !== '') {\n \n if(!this.vocabulary) {\n this.CVService.getFragmentCV().subscribe(data => {\n this.dat = {};\n \n this.domains = data.content;\n \n if (this.vocab) {\n this.fragmentType(this.vocab);\n }\n \n \n });\n } else {\n if (this.vocab) {\n this.fragmentType(this.vocab, this.vocabulary);\n }\n }\n } else {\n this.message = \"No Structure Detected in editor\";\n setTimeout(() => {\n this.message = null;\n }, 4000);\n }\n \n \n }\n checkImg(term: any) {\n term.fragmentSrc = this.CVService.getStructureUrlFragment(term.fragmentStructure);\n term.simpleSrc = this.CVService.getStructureUrlFragment(term.simplifiedStructure);\n\n }\n setTermStructure(structure) {\n this.privateTerm.fragmentStructure = structure;\n this.privateTerm.simplifiedStructure = structure.substring(0, structure.indexOf(' '));;\n this.checkImg(this.privateTerm);\n this.termUpdated.emit(this.privateTerm);\n this.forms = [];\n if(this.adminPanel) {\n this.dialogRef.close(structure);\n }\n }\n}\n","import { Injectable, PLATFORM_ID, Inject } from '@angular/core';\r\nimport { ConfigService } from '../config/config.service';\r\nimport { Auth, Role, UserGroup } from './auth.model';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { map, take, catchError } from 'rxjs/operators';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { UserDownload, AllUserDownloads } from '@gsrs-core/auth/user-downloads/download.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n private _auth: Auth;\r\n private _authUpdate: Subject = new Subject();\r\n private isLoading: boolean;\r\n\r\n constructor(\r\n public configService: ConfigService,\r\n private http: HttpClient,\r\n @Inject(PLATFORM_ID) private platformId: any\r\n ) {\r\n this.isLoading = true;\r\n this.fetchAuth().pipe(take(1)).subscribe(auth => {\r\n if (auth && auth.computedToken != null) {\r\n this._auth = auth;\r\n } else {\r\n this._auth = null;\r\n }\r\n this._authUpdate.next(this._auth);\r\n this.isLoading = false;\r\n }, error => {\r\n this._authUpdate.next(null);\r\n this.isLoading = false;\r\n });\r\n }\r\n\r\n get auth(): Auth {\r\n return this._auth;\r\n }\r\n\r\n public checkAuth(): Observable {\r\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\r\n return this.http.get(`${url}whoami`);\r\n }\r\n\r\n login(username: string, password: string): Observable {\r\n\r\n const options = {\r\n headers: {\r\n 'auth-username': username,\r\n 'auth-password': password\r\n }\r\n };\r\n\r\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\r\n return this.http.get(`${url}whoami`, options).pipe(\r\n map(auth => {\r\n if (auth && auth.computedToken) {\r\n this._auth = auth;\r\n if (isPlatformBrowser(this.platformId)) {\r\n sessionStorage.setItem('authToken', auth.computedToken);\r\n }\r\n } else {\r\n this._auth = null;\r\n }\r\n\r\n this._authUpdate.next(this._auth);\r\n return this._auth;\r\n })\r\n );\r\n }\r\n\r\n getAuth(): Observable< Auth > {\r\n return new Observable(observer => {\r\n\r\n if (this._auth != null) {\r\n observer.next(this._auth);\r\n } else if (!this.isLoading) {\r\n this.isLoading = true;\r\n this.fetchAuth().pipe(take(1)).subscribe(auth => {\r\n if (auth && auth.computedToken != null) {\r\n this._auth = auth;\r\n } else {\r\n this._auth = null;\r\n }\r\n\r\n observer.next(this._auth);\r\n this._authUpdate.next(this._auth);\r\n this.isLoading = false;\r\n }, error => {\r\n this.logout();\r\n this.isLoading = false;\r\n });\r\n }\r\n\r\n this._authUpdate.subscribe(auth => {\r\n\r\n observer.next(auth);\r\n }, error => {\r\n observer.next(null);\r\n });\r\n });\r\n }\r\n\r\n logout(): void {\r\n // if (\r\n // !this.configService.configData\r\n // || !this.configService.configData.apiBaseUrl\r\n // || this.configService.configData.apiBaseUrl.startsWith('/')\r\n // ) {\r\n // const url = (this.configService.configData && this.configService.configData.apiBaseUrl || '/') + 'logout';\r\n // this.http.get(url).pipe(take(1)).subscribe(response => {}, error => {});\r\n // }\r\n if (isPlatformBrowser(this.platformId)) {\r\n sessionStorage.removeItem('authToken');\r\n const cookies = document.cookie.split(';');\r\n for (const cookie of cookies) {\r\n const eqPos = cookie.indexOf('=');\r\n const name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;\r\n document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:00 GMT';\r\n }\r\n }\r\n const url = `${this.configService.configData.apiBaseUrl}logout`;\r\n this.http.get(url).subscribe(() => {\r\n this._auth = null;\r\n this._authUpdate.next(null);\r\n }, error => {\r\n this._auth = null;\r\n this._authUpdate.next(null);\r\n });\r\n }\r\n\r\n public getUser(): string {\r\n if (this._auth && this._auth.identifier) {\r\n return this._auth.identifier;\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n hasRoles(...roles: Array): boolean {\r\n const rolesList = [...roles];\r\n\r\n if (this._auth && this._auth.roles && rolesList && rolesList.length) {\r\n for (const r of rolesList) {\r\n let role = r.charAt(0).toLowerCase() + r.slice(1);\r\n role = role.charAt(0).toUpperCase() + role.slice(1);\r\n if (this._auth.roles.indexOf(role as Role) === -1) {\r\n return false;\r\n }\r\n }\r\n } else {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n isInGroups(...group: Array): boolean {\r\n const groupList = [...group];\r\n\r\n if (this._auth && this._auth.groups && groupList && groupList.length) {\r\n for (const r of groupList) {\r\n let role = r.charAt(0).toLowerCase() + r.slice(1);\r\n role = role.charAt(0).toUpperCase() + role.slice(1);\r\n this._auth.groups.forEach(group => {\r\n if (group.name === role) {\r\n return true;\r\n }\r\n });\r\n }\r\n return false;\r\n } else {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n hasRolesAsync(...roles: Array): Observable< boolean > {\r\n return new Observable(observer => {\r\n if (this.auth != null) {\r\n observer.next(this.hasRoles(...roles));\r\n observer.complete();\r\n } else {\r\n this.getAuth().pipe(take(1)).subscribe(auth => {\r\n observer.next(this.hasRoles(...roles));\r\n observer.complete();\r\n });\r\n }\r\n });\r\n }\r\n\r\n hasAnyRoles(...roles: Array): boolean {\r\n const rolesList = [...roles];\r\n if (this._auth && this._auth.roles && rolesList && rolesList.length) {\r\n for (const r of rolesList) {\r\n let role = r.charAt(0).toLowerCase() + r.slice(1);\r\n role = role.charAt(0).toUpperCase() + role.slice(1);\r\n if (this._auth.roles.indexOf(role as Role) > -1) {\r\n return true;\r\n }\r\n }\r\n } else {\r\n return false;\r\n }\r\n return false;\r\n }\r\n\r\n hasAnyRolesAsync(...roles: Array): Observable< boolean > {\r\n return new Observable(observer => {\r\n if (this.auth != null) {\r\n observer.next(this.hasAnyRoles(...roles));\r\n observer.complete();\r\n } else {\r\n this.getAuth().pipe(take(1)).subscribe(auth => {\r\n observer.next(this.hasAnyRoles(...roles));\r\n observer.complete();\r\n });\r\n }\r\n });\r\n }\r\n\r\n startUserDownload(fullUrl: string, privateExport: boolean, filename?: string): Observable< any > {\r\n let params = new HttpParams();\r\n if (privateExport) {\r\n params = params.append('publicOnly', 'false');\r\n }\r\n if (filename && filename !== '') {\r\n params = params.append('filename', filename);\r\n }\r\n const options = {\r\n params: params\r\n };\r\n return this.http.get< any >(fullUrl, options);\r\n }\r\n\r\n getUpdateStatus(id: string): Observable< UserDownload > {\r\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\r\n return this.http.get< any >(`${url}profile/downloads/${id}`);\r\n }\r\n\r\n changeDownload(url: string): Observable< UserDownload > {\r\n return this.http.get< any >(url);\r\n }\r\n\r\n deleteDownload(url: string): any {\r\n return this.http.delete< any >(url, {observe: 'response'});\r\n }\r\n\r\n getAllDownloads(): Observable< AllUserDownloads > {\r\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\r\n return this.http.get< any >(`${url}profile/downloads`);\r\n\r\n }\r\n\r\n private fetchAuth(): Observable {\r\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\r\n return this.http.get(`${url}whoami`);\r\n }\r\n}\r\n","import { ConfigService } from '../config/config.service';\n\nexport abstract class BaseHttpService {\n public apiBaseUrl: string;\n public baseUrl: string;\n\n constructor(\n public configService: ConfigService\n ) {\n this.apiBaseUrl = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n this.baseUrl = (this.configService.configData && this.configService.configData.apiBaseUrl) || '/';\n }\n}\n","import { NavItem } from '@gsrs-core/config';\n\nexport const navItems: Array = [\n {\n display: 'Browse Substances',\n path: 'browse-substance',\n order: 10\n },\n {\n display: 'Structure Search',\n path: 'structure-search',\n order: 20\n },\n {\n display: 'Sequence Search',\n path: 'sequence-search',\n order: 30\n },\n {\n display: 'Register',\n order: 40,\n children: [\n {\n display: 'Chemical',\n path: 'substances/register/chemical',\n order: 10\n },\n {\n display: 'Protein',\n path: 'substances/register/protein',\n order: 20\n },\n {\n display: 'Polymer',\n path: 'substances/register/polymer',\n order: 30\n },\n {\n display: 'Nucleic Acid',\n path: 'substances/register/nucleicAcid',\n order: 40\n },\n {\n display: 'Mixture',\n path: 'substances/register/mixture',\n order: 50\n },\n {\n display: 'Structurally Diverse',\n path: 'substances/register/structurallyDiverse',\n order: 60\n },\n {\n display: 'Concept',\n path: 'substances/register/concept',\n order: 70\n },\n {\n display: 'G1 Specified Substance',\n path: 'substances/register/specifiedSubstanceG1',\n order: 80\n }\n ]\n }\n];\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Config } from './config.model';\r\nimport { Environment } from '../../../environments/environment.model';\r\nimport { navItems } from './nav-items.constant';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ConfigService {\r\n private _configData: Config;\r\n private _environment: Environment;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n get configData(): Config {\r\n return this._configData;\r\n }\r\n\r\n set configData(configData: Config) {\r\n this._configData = configData;\r\n }\r\n\r\n get environment(): Environment {\r\n return this._environment;\r\n }\r\n\r\n // This is the method you want to call at bootstrap\r\n // Important: It should return a Promise\r\n load(environment: Environment): Promise {\r\n this._environment = environment;\r\n this._configData = null;\r\n\r\n const configFilePath = environment.configFileLocation ?\r\n environment.configFileLocation : `${environment.baseHref || ''}assets/data/config.json`;\r\n\r\n return this.http\r\n .get(configFilePath)\r\n .toPromise()\r\n .then((config: Config) => {\r\n if (config.apiBaseUrl == null && environment.apiBaseUrl != null) {\r\n config.apiBaseUrl = environment.apiBaseUrl;\r\n }\r\n if (config.apiBaseUrl.indexOf('//') > -1) {\r\n const parts = config.apiBaseUrl.split('/');\r\n config.apiUrlDomain = `${parts[0]}//${parts[2]}`;\r\n } else {\r\n config.apiUrlDomain = '';\r\n }\r\n if (config.googleAnalyticsId == null && environment.googleAnalyticsId != null) {\r\n config.googleAnalyticsId = environment.googleAnalyticsId;\r\n }\r\n if (config.version == null && environment.version != null) {\r\n config.version = environment.version;\r\n }\r\n if (config.contactEmail == null && environment.contactEmail != null) {\r\n config.contactEmail = environment.contactEmail;\r\n }\r\n\r\n let navItemsCopy = navItems.slice();\r\n if (config.navItems && config.navItems.length) {\r\n const filteredNavItems = config.navItems.filter(navItem => {\r\n if (navItem.children != null && navItem.children.length > 0) {\r\n let isNotExisting = true;\r\n // eslint-disable-next-line prefer-for-of\r\n for (let i = 0; i < navItemsCopy.length; i++) {\r\n if (navItemsCopy[i].display === navItem.display && navItemsCopy[i].children != null) {\r\n navItemsCopy[i].children = navItemsCopy[i].children.concat(navItem.children);\r\n // eslint-disable-next-line arrow-body-style\r\n navItemsCopy[i].children.sort((a, b) => {\r\n return a.order - b.order;\r\n });\r\n isNotExisting = false;\r\n break;\r\n }\r\n }\r\n return isNotExisting;\r\n } else {\r\n return true;\r\n }\r\n });\r\n navItemsCopy = navItemsCopy.concat(filteredNavItems);\r\n navItemsCopy.sort((a, b) => {\r\n return a.order - b.order;\r\n });\r\n }\r\n config.navItems = navItemsCopy;\r\n this._configData = config;\r\n })\r\n .catch((err: any) => Promise.resolve());\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { BaseHttpService } from '@gsrs-core/base/base-http.service';\nimport { Observable, Subject, forkJoin } from 'rxjs';\nimport { Vocabulary, VocabularyTerm, VocabularyDictionary } from '@gsrs-core/controlled-vocabulary/vocabulary.model';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { PagingResponse } from '@gsrs-core/utils/paging-response.model';\nimport { map } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ControlledVocabularyService extends BaseHttpService {\n private vocabularyDictionary: VocabularyDictionary = {};\n private vocabularySubject: { [domain: string]: Subject } = {};\n private vocabularyLoadingIndicators: { [domain: string]: boolean } = {};\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService\n ) {\n super(configService);\n }\n\n getVocabularies(filter?: string, pageSize?: number, skip?: number): Observable> {\n\n const url = `${this.apiBaseUrl}vocabularies`;\n\n let params = new HttpParams();\n\n if (filter != null) {\n params = params.append('filter', filter);\n }\n\n if (skip != null) {\n params = params.append('skip', skip.toString());\n }\n\n if (pageSize != null) {\n params = params.append('top', pageSize.toString());\n }\n\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getDomainVocabulary(...domainArgs: Array): Observable {\n\n const domains = [...domainArgs];\n let vocabularyDictionary = {};\n const missingDomains = [];\n const tasks$ = [];\n\n domains.forEach(domain => {\n\n if (this.vocabularyDictionary[domain] != null) {\n vocabularyDictionary[domain] = this.vocabularyDictionary[domain];\n } else if (this.vocabularyLoadingIndicators[domain] === true) {\n tasks$.push(this.vocabularySubject[domain]);\n } else {\n this.vocabularyLoadingIndicators[domain] = true;\n if (this.vocabularySubject[domain] == null) {\n this.vocabularySubject[domain] = new Subject();\n }\n missingDomains.push(domain);\n }\n });\n\n return new Observable(observer => {\n if (missingDomains.length > 0) {\n tasks$.push(this.fetchVocabulariesFromServer(...missingDomains));\n }\n\n if (tasks$.length > 0) {\n const subscription = forkJoin(tasks$).subscribe(responses => {\n responses.forEach(response => {\n vocabularyDictionary = Object.assign(vocabularyDictionary, response);\n });\n observer.next(vocabularyDictionary);\n observer.complete();\n subscription.unsubscribe();\n }, error => {\n observer.error(error);\n observer.complete();\n subscription.unsubscribe();\n });\n } else {\n observer.next(vocabularyDictionary);\n observer.complete();\n }\n });\n }\n\n getStructure(structure: string) {\n const url = this.baseUrl + 'render?structure=' + structure + '&size=150&standardize=true';\n return this.http.get(url);\n }\n getStructureUrl(structure: string) {\n structure = structure.replace(/[;]/g, '%3B')\n .replace(/[#]/g, '%23')\n .replace(/[+]/g, '%2B')\n .replace(/[|]/g, '%7C');\n const url = this.baseUrl + 'render?structure=' + structure + '&size=150&standardize=true';\n return url;\n }\n\n getStructureUrlFragment(structure: string) {\n structure = structure.replace(/%/g, \"%25\").replace(/#/g, \"%23\").replace(/[;]/g, \"%3B\").replace(/[+]/g, \"%2B\");\n const url = this.baseUrl + 'render?structure=' + structure + '&size=150&standardize=true';\n return url;\n }\n \n \n search(domain: string, query: string): Observable> {\n return new Observable(observer => {\n const subscription = this.getDomainVocabulary(domain).subscribe(response => {\n const filteredTerms = response[domain].list.filter(term => term.value.toLowerCase().indexOf(query.toLowerCase()) > -1);\n let sortedTerms = [];\n\n if (filteredTerms != null && filteredTerms.length) {\n sortedTerms = filteredTerms.sort((termA, termB) => {\n if (termA < termB) {\n return -1;\n }\n if (termA > termB) {\n return 1;\n }\n return 0;\n });\n }\n\n observer.next(sortedTerms);\n subscription.unsubscribe();\n });\n });\n }\n\n public fetchFullVocabulary(domain: string): Observable {\n\n const url = `${this.apiBaseUrl}vocabularies/search`;\n let params = new HttpParams();\n params = params.append('top', '100000');\n\n let domainLuceneQuery = '';\n const responseDomainVocabulary: VocabularyDictionary = {};\n this.vocabularyLoadingIndicators[domain] = true;\n if (this.vocabularySubject[domain] == null) {\n this.vocabularySubject[domain] = new Subject();\n }\n\n responseDomainVocabulary[domain] = {\n dictionary: {},\n list: []\n };\n\n domainLuceneQuery += `root_domain:${domain}`;\n params = params.append('q', domainLuceneQuery);\n const options = {\n params: params\n };\n return this.http.get>(url, options);\n }\n\n public validateVocab(vocab: any): Observable {\n const url = `${this.apiBaseUrl}vocabularies/@validate`;\n return this.http.post( url, vocab);\n }\n\n\n public addVocabTerm(vocab: any): Observable {\n const url = `${this.apiBaseUrl}vocabularies`;\n return this.http.put( url, vocab);\n }\n\n public getFragmentCV(): Observable {\n const url = `${this.apiBaseUrl}vocabularies/search?facet=ix.Class/ix.ginas.models.v1.FragmentControlledVocabulary`;\n return this.http.get(url);\n \n }\n\n private fetchVocabulariesFromServer(...domainArgs: Array): Observable {\n\n const url = `${this.apiBaseUrl}vocabularies/search`;\n let params = new HttpParams();\n params = params.append('top', '100000');\n\n const domains = [...domainArgs];\n const unProcessedDomains = domains.slice();\n\n let domainLuceneQuery = '';\n\n const responseDomainVocabulary: VocabularyDictionary = {};\n\n domains.forEach((domain, index) => {\n this.vocabularyLoadingIndicators[domain] = true;\n if (this.vocabularySubject[domain] == null) {\n this.vocabularySubject[domain] = new Subject();\n }\n\n responseDomainVocabulary[domain] = {\n dictionary: {},\n list: []\n };\n\n if (index > 0) {\n domainLuceneQuery += ' OR ';\n }\n\n domainLuceneQuery += `root_domain:${domain}`;\n\n });\n\n params = params.append('q', domainLuceneQuery);\n\n const options = {\n params: params\n };\n\n return this.http.get>(url, options).pipe(\n map((response: PagingResponse) => {\n\n if (response.content && response.content.length) {\n\n response.content.forEach(vocabulary => {\n\n const singleDomainVocabulary: VocabularyDictionary = {};\n\n if (vocabulary.terms && vocabulary.terms.length) {\n\n if (!singleDomainVocabulary[vocabulary.domain]) {\n singleDomainVocabulary[vocabulary.domain] = {\n dictionary: {}\n };\n }\n // eslint-disable-next-line prefer-arrow-functions\n singleDomainVocabulary[vocabulary.domain].list = vocabulary.terms.sort(function(a, b) {\n const termA = (a.display && a.display.toUpperCase()) || (a.value && a.value.toUpperCase()) || '';\n const termB = (b.display && b.display.toUpperCase()) || (b.value && b.value.toUpperCase()) || '';\n if (termA < termB) {\n return -1;\n }\n if (termA > termB) {\n return 1;\n }\n return 0;\n });\n\n\n vocabulary.terms.forEach(vocabularyTerm => {\n singleDomainVocabulary[vocabulary.domain].dictionary[vocabularyTerm.value] = vocabularyTerm;\n });\n }\n\n if (this.vocabularySubject[vocabulary.domain] != null) {\n this.vocabularySubject[vocabulary.domain].next(singleDomainVocabulary);\n this.vocabularySubject[vocabulary.domain].complete();\n this.vocabularySubject[vocabulary.domain] = null;\n responseDomainVocabulary[vocabulary.domain] = singleDomainVocabulary[vocabulary.domain];\n this.vocabularyDictionary[vocabulary.domain] = responseDomainVocabulary[vocabulary.domain];\n this.vocabularyLoadingIndicators[vocabulary.domain] = false;\n }\n\n unProcessedDomains.splice(unProcessedDomains.indexOf(vocabulary.domain), 1);\n });\n\n if (unProcessedDomains && unProcessedDomains.length) {\n unProcessedDomains.forEach(domain => {\n const singleDomainVocabulary: VocabularyDictionary = {};\n singleDomainVocabulary[domain] = { dictionary: {}, list: [] };\n this.vocabularySubject[domain].next(singleDomainVocabulary);\n this.vocabularySubject[domain].complete();\n this.vocabularySubject[domain] = null;\n });\n }\n\n } else {\n domains.forEach((domain, index) => {\n const singleDomainVocabulary: VocabularyDictionary = {};\n singleDomainVocabulary[domain] = { dictionary: {}, list: [] };\n this.vocabularySubject[domain].next(singleDomainVocabulary);\n this.vocabularySubject[domain].complete();\n this.vocabularyLoadingIndicators[domain] = false;\n });\n }\n\n return responseDomainVocabulary;\n })\n );\n }\n}\n","import {\r\n ANALYZE_FOR_ENTRY_COMPONENTS,\r\n ModuleWithProviders,\r\n NgModule,\r\n Type,\r\n} from '@angular/core';\r\nimport { ROUTES } from '@angular/router';\r\n\r\nimport { DynamicComponentLoader } from './dynamic-component-loader.service';\r\nimport {\r\n DYNAMIC_COMPONENT,\r\n LAZY_LOADED_COMPONENT_MANIFESTS,\r\n DYNAMIC_MODULE,\r\n DYNAMIC_COMPONENT_MANIFESTS,\r\n LazyLoadedComponentManifest,\r\n DynamicComponentManifest\r\n} from './dynamic-component-manifest';\r\n\r\n@NgModule()\r\nexport class DynamicComponentLoaderModule {\r\n static forRoot(\r\n lazyLoadedManifests: LazyLoadedComponentManifest[] = [],\r\n dynamicManifests: DynamicComponentManifest[] = []\r\n ): ModuleWithProviders {\r\n return {\r\n ngModule: DynamicComponentLoaderModule,\r\n providers: [\r\n DynamicComponentLoader,\r\n // provider for Angular CLI to analyze\r\n { provide: ROUTES, useValue: lazyLoadedManifests, multi: true },\r\n // provider for DynamicComponentLoader to analyze\r\n { provide: LAZY_LOADED_COMPONENT_MANIFESTS, useValue: lazyLoadedManifests, multi: true },\r\n { provide: DYNAMIC_COMPONENT_MANIFESTS, useValue: dynamicManifests, multi: true }\r\n ],\r\n };\r\n }\r\n static forModule(manifest: LazyLoadedComponentManifest): ModuleWithProviders {\r\n return {\r\n ngModule: DynamicComponentLoaderModule,\r\n providers: [\r\n { provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: manifest, multi: true },\r\n // provider for @angular/router to parse\r\n { provide: ROUTES, useValue: manifest, multi: true },\r\n // provider for DynamicComponentLoader to analyze\r\n { provide: DYNAMIC_MODULE, useValue: manifest }\r\n ],\r\n };\r\n }\r\n static forChild(component: Type): ModuleWithProviders {\r\n return {\r\n ngModule: DynamicComponentLoaderModule,\r\n providers: [\r\n { provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: component, multi: true },\r\n // provider for @angular/router to parse\r\n { provide: ROUTES, useValue: [], multi: true },\r\n // provider for DynamicComponentLoader to analyze\r\n { provide: DYNAMIC_COMPONENT, useValue: component },\r\n ],\r\n };\r\n }\r\n}\r\n","import {\r\n ComponentFactory,\r\n Inject,\r\n Injectable,\r\n Injector,\r\n NgModuleFactory,\r\n Compiler,\r\n createNgModuleRef\r\n} from '@angular/core';\r\nimport { from, Observable, throwError, of } from 'rxjs';\r\nimport { mergeMap } from 'rxjs/operators';\r\n\r\nimport {\r\n DYNAMIC_COMPONENT,\r\n LAZY_LOADED_COMPONENT_MANIFESTS,\r\n DYNAMIC_MODULE,\r\n LazyLoadedComponentManifest,\r\n} from './dynamic-component-manifest';\r\n\r\n@Injectable()\r\nexport class DynamicComponentLoader {\r\n\r\n constructor(\r\n @Inject(LAZY_LOADED_COMPONENT_MANIFESTS) private manifests: LazyLoadedComponentManifest[],\r\n private injector: Injector,\r\n private compiler: Compiler\r\n ) {\r\n }\r\n\r\n /**\r\n * Retrieve a ComponentFactory, based on the specified componentId\r\n * (defined in the DynamicComponentManifest array).\r\n *\r\n * @template T\r\n * @param componentId\r\n * @param injector\r\n * @returns\r\n * @memberof DynamicComponentLoader\r\n */\r\n getComponentFactory(componentId: string, injector?: Injector): Observable> {\r\n const manifestsFlat = this.manifests.reduce((acc, val) => acc.concat(val), []);\r\n const manifest = manifestsFlat\r\n .find(m => m.componentId === componentId);\r\n if (!manifest) {\r\n return throwError(`DynamicComponentLoader: Unknown componentId \"${componentId}\"`);\r\n }\r\n\r\n const path = manifest.loadChildren;\r\n\r\n if (!path) {\r\n throw new Error(`${componentId} unknown!`);\r\n }\r\n\r\n return this._wrapIntoObservable(path()).pipe(mergeMap((t: any) => {\r\n // let moduleFactory = null;\r\n const offlineMode = this.compiler instanceof Compiler;\r\n // true means AOT enalbed compiler (Prod build), false means JIT enabled compiler (Dev build)\r\n // moduleFactory = offlineMode ? t : this.compiler.compileModuleSync(t);\r\n return this.loadFactory(t, componentId, injector);\r\n }));\r\n }\r\n\r\n /**\r\n * Load the factory object\r\n *\r\n * @template T\r\n * @param ngModuleFactory\r\n * @param componentId\r\n * @param injector\r\n * @returns\r\n * @memberof DynamicComponentLoader\r\n */\r\n loadFactory(module: any, componentId: string, injector?: Injector): Promise> {\r\n const moduleRef = createNgModuleRef(module, injector || this.injector);\r\n const dynamicComponentType = moduleRef.injector.get(DYNAMIC_COMPONENT, null);\r\n if (!dynamicComponentType) {\r\n const dynamicModule: LazyLoadedComponentManifest = moduleRef.injector.get(DYNAMIC_MODULE, null);\r\n\r\n if (!dynamicModule) {\r\n throw new Error(\r\n 'DynamicComponentLoader: Dynamic module for'\r\n + ` componentId \"${componentId}\" does not contain`\r\n + ' DYNAMIC_COMPONENT or DYNAMIC_MODULE as a provider.',\r\n );\r\n }\r\n if (dynamicModule.componentId !== componentId) {\r\n throw new Error(\r\n 'DynamicComponentLoader: Dynamic module for'\r\n + `${componentId} does not match manifest.`,\r\n );\r\n }\r\n\r\n const path = dynamicModule.loadChildren as any;\r\n\r\n if (!path) {\r\n throw new Error(`${componentId} unknown!`);\r\n }\r\n\r\n return this._wrapIntoObservable(path()).pipe(mergeMap((t: any) => {\r\n let moduleFactory = null;\r\n const offlineMode = this.compiler instanceof Compiler;\r\n // true means AOT enalbed compiler (Prod build), false means JIT enabled compiler (Dev build)\r\n moduleFactory = offlineMode ? t : this.compiler.compileModuleSync(t);\r\n return this.loadFactory(moduleFactory, componentId, injector);\r\n })).toPromise();\r\n }\r\n\r\n return Promise.resolve(moduleRef.componentFactoryResolver.resolveComponentFactory(dynamicComponentType));\r\n }\r\n\r\n /**\r\n * Get the value as an observable\r\n *\r\n * @template T\r\n * @param value\r\n * @returns\r\n * @memberof LibConfigService\r\n */\r\n private _wrapIntoObservable(value: T | NgModuleFactory | Promise | Observable) {\r\n if (value instanceof Observable) {\r\n return value;\r\n } else if (value instanceof Promise) {\r\n return from(value);\r\n } else {\r\n return of(value);\r\n }\r\n }\r\n}\r\n","import { InjectionToken, Type } from '@angular/core';\r\n\r\nexport const DYNAMIC_COMPONENT = new InjectionToken('DYNAMIC_COMPONENT');\r\n\r\nexport const DYNAMIC_MODULE = new InjectionToken('DYNAMIC_MODULE');\r\n\r\nexport const LAZY_LOADED_COMPONENT_MANIFESTS = new InjectionToken('LAZY_LOADED_COMPONENT_MANIFESTS');\r\n\r\nexport const DYNAMIC_COMPONENT_MANIFESTS = new InjectionToken('DYNAMIC_COMPONENT_MANIFESTS');\r\n\r\nexport interface LazyLoadedComponentManifest {\r\n\r\n /** Unique identifier, used in the application to retrieve a ComponentFactory. */\r\n componentId: string;\r\n\r\n /** Unique identifier, used internally by Angular. */\r\n path: string;\r\n\r\n /** Path to component module. */\r\n loadChildren: string | any; // Support for angular 8 style module imports\r\n}\r\n\r\nexport interface DynamicComponentManifest {\r\n component: Type;\r\n componentType: string;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ExpandDetailsDirective } from './expand-details.directive';\r\nimport { ExpandableDetailsDirective } from './expandable-details.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n ExpandDetailsDirective,\r\n ExpandableDetailsDirective\r\n ],\r\n exports: [\r\n ExpandDetailsDirective,\r\n ExpandableDetailsDirective\r\n ]\r\n})\r\nexport class ExpandDetailsModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ConfigService } from '../config/config.service';\n\n@Pipe({\n name: 'facetDisplay'\n})\nexport class FacetDisplayPipe implements PipeTransform {\n constructor(\n public configService: ConfigService\n ) { }\n\n transform(name: any, args?: any): any {\n //TODO: move this snippet to the constructor to be run only once\n let codeTerm = 'UNII';\n if (this.configService.configData && this.configService.configData.approvalCodeName) {\n\t codeTerm = this.configService.configData.approvalCodeName;\n\t }\n\n\n\n if (args) {\n if (args === 'types') {\n if (name === 'structurallyDiverse') {\n return 'Structurally Diverse';\n } else if (name === 'nucleicAcid') {\n return 'Nucleic Acid';\n } else if (name === 'specifiedSubstanceG1') {\n return 'Group 1 Specified Substance';\n } else if (name === 'specifiedSubstanceG3') {\n return 'Group 3 Specified Substance';\n } else {\n return name.charAt(0).toUpperCase() + name.slice(1);\n }\n } else if (args === 'status') {\n if (name === 'approved') {\n return 'Validated (' + codeTerm + ')';\n } else if (name === 'non-approved') {\n return 'non-Validated';\n }\n }\n }\n if (name.toLowerCase() === 'substancestereochemistry') {\n return 'Stereochemistry';\n }\n if (name === 'root_lastEdited') {\n return 'Last Edited Date';\n }\n if (name === 'root_approved') {\n return 'Last Validated Date';\n }\n if (name === 'root_created') {\n return 'Created Date';\n }\n if (name === 'Approved By') {\n return 'Validated By';\n }\n if (name === 'root_lastEditedBy') {\n return 'Last Edited By';\n }\n if (name === 'Substance Class') {\n return 'Substance Type';\n }\n if (name === 'GInAS Tag') {\n return 'Source Tag';\n }\n if (name === 'GInAS Domain') {\n return 'Domain';\n }\n return name.trim();\n }\n\n}\n","import { HttpParams, HttpParameterCodec } from '@angular/common/http';\nimport { FacetParam } from '@gsrs-core/facets-manager';\n\nexport class FacetHttpParams extends HttpParams {\n\n constructor(options?: any) {\n super(options);\n }\n\n appendFacetParams(facets: FacetParam, deprecated?: boolean): FacetHttpParams {\n let clone = new FacetHttpParams({ fromString: super.toString() , encoder: new CustomEncoder()});\n let hasDeprecated = false;\n if (facets != null) {\n const facetsKeys = Object.keys(facets);\n facetsKeys.forEach(facetKey => {\n if (facets[facetKey] != null) {\n const facetValueKeys = Object.keys(facets[facetKey].params);\n facetValueKeys.forEach((facetValueKey) => {\n if (facets[facetKey].params[facetValueKey] != null) {\n if (facetValueKey === 'Deprecated' && facets[facetKey].params[facetValueKey] !== true) {\n hasDeprecated = true;\n } else {\n const paramPrefix = !facets[facetKey].params[facetValueKey] ? '!' :\n facets[facetKey].isAllMatch ? '^' : '';\n\n clone = clone.append(\n 'facet',\n (`${paramPrefix}${facetKey.replace(/\\//g, '$$$')}/${facetValueKey.replace(/\\//g, '$$$')}`));\n }\n }\n });\n }\n });\n }\n if ( deprecated ) {\n } else if (!hasDeprecated ) {\n clone = clone.append('facet', 'Deprecated/Not Deprecated');\n }\n return clone;\n }\n\n append(param: string, value: string): FacetHttpParams {\n const httpParamsClone = super.append(param, value);\n const clone = new FacetHttpParams({ fromString: httpParamsClone.toString() , encoder: new CustomEncoder()});\n return clone;\n }\n\n appendDictionary(params: {\n [name: string]: string;\n }): FacetHttpParams {\n let clone = new FacetHttpParams({ fromString: super.toString() , encoder: new CustomEncoder()});\n if (params != null) {\n const keys = Object.keys(params);\n\n if (keys != null && keys.length) {\n keys.forEach(key => {\n if (params[key] != null && params[key] !== '') {\n clone = clone.append(key, params[key].toString());\n }\n });\n }\n }\n return clone;\n }\n}\n\n\nclass CustomEncoder implements HttpParameterCodec {\n encodeKey(key: string): string {\n return encodeURIComponent(key);\n }\n\n encodeValue(value: string): string {\n return encodeURIComponent(value);\n }\n\n decodeKey(key: string): string {\n return decodeURIComponent(key);\n }\n\n decodeValue(value: string): string {\n return decodeURIComponent(value);\n }\n }\n","export class DisplayFacet {\n type: string;\n bool: boolean;\n val: string;\n removeFacet: (type: string, bool: boolean, val: string) => void;\n\n constructor(type: string, bool: boolean, val: string, onRemove: (type: string, bool: boolean, val: string) => void) {\n this.type = type;\n this.bool = bool;\n this.val = val;\n this.removeFacet = onRemove;\n }\n}\n","Show Deprecated Records\n\n
        \n\n \n\n\n\n\n\n \n \n \n {{facet.name | facetDisplay}}\n \n \n\n
        \n\n
        \n
        \n \n \n \n \n \n
        \n \n
        \n \n
        \n
        \n \n \n \n \n
        \n
        \n \n {{value.label}}\n \n \n {{value.label | facetDisplay: 'types'}}\n \n \n {{value.label | facetDisplay: 'status'}}\n \n \n {{value.label | codeSystemDisplay | async }}\n \n
        \n
        \n
        \n {{value.count}}\n
        \n
        \n
        \n \n \n
        \n \n All Match\n \n
        \n \n \n\n
        \n
        \n
        \n
        \n\n
        \n\n
        \n","import { Component, OnInit, OnDestroy, EventEmitter, Input, Output, AfterViewInit, HostListener } from '@angular/core';\nimport { Facet, FacetUpdateEvent } from './facet.model';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { Subject, Subscription } from 'rxjs';\nimport { ActivatedRoute, NavigationExtras, Router } from '@angular/router';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { debounceTime, distinctUntilChanged, switchMap, take } from 'rxjs/operators';\nimport { FacetsManagerService } from './facets-manager.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { ConfigService } from '@gsrs-core/config';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { Environment } from 'src/environments/environment.model';\nimport { Location } from '@angular/common';\nimport { DisplayFacet } from './display-facet';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'app-facets-manager',\n templateUrl: './facets-manager.component.html',\n styleUrls: ['./facets-manager.component.scss']\n})\nexport class FacetsManagerComponent implements OnInit, OnDestroy, AfterViewInit {\n @Output() facetsParamsUpdated = new EventEmitter();\n @Output() facetsLoaded = new EventEmitter();\n @Input() includeFacetSearch = false;\n @Input() calledFrom = 'default';\n @Input() panelExpanded = false;\n facetString: string;\n public facets: Array;\n public displayFacets: Array = [];\n public facetBuilder: FacetParam;\n searchText: { [faceName: string]: { value: string; isLoading: boolean; } } = {};\n showAudit: boolean;\n toggle: Array = [];\n showDeprecated = false;\n loggedIn = false;\n hideDeprecatedCheckbox = false;\n previousState: Array = [];\n previousFacets: Array = [];\n _facetDisplayType = 'default';\n _facetViewCategorySelected: string;\n _configName: string;\n _facetNameText: string;\n private privateFacetParams: FacetParam;\n private privateRawFacets: Array;\n private facetSearchChanged = new Subject<{ index: number; query: any; }>();\n private activeSearchedFaced: Facet;\n private facetsAuthSubscription: Subscription;\n private subscriptions: Array = [];\n private facetsConfig: { [permission: string]: Array };\n private environment: Environment;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n public utilsService: UtilsService,\n private facetsService: FacetsManagerService,\n private authService: AuthService,\n private configService: ConfigService,\n private gaService: GoogleAnalyticsService,\n private router: Router,\n private location: Location,\n private facetManagerService: FacetsManagerService\n ) {\n this.privateFacetParams = {};\n this.facetBuilder = {};\n this.facets = [];\n this.environment = configService.environment;\n }\n\n /*@HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if(this.router.url === '/browse-substance') {\n this.privateFacetParams = {};\n this.ngOnInit();\n }\n }, 50);\n }*/\n\n @HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if (this.router.url === this.previousState[0]) {\n if (this.router.url === '/browse-substance') {\n this.privateFacetParams = {};\n } else {\n this.privateFacetParams = this.previousFacets[0];\n this.facetBuilder = {};\n }\n this.ngOnInit();\n }\n\n }, 50);\n }\n\n @Input()\n set rawFacets(facets: Array) {\n this.privateRawFacets = facets || [];\n this.populateFacets();\n }\n\n @Input()\n set configName(configName: string) {\n this.facetsConfig = this.configService.configData.facets && this.configService.configData.facets[configName] || {};\n this._configName = configName;\n if (configName === 'applications' || configName === 'clinicaltrialsus' || configName === 'products'\n || configName === 'adverseeventpt' || configName === 'adverseeventdme' || configName === 'adverseeventcvm') {\n this.hideDeprecatedCheckbox = true;\n } else {\n this.hideDeprecatedCheckbox = false;\n }\n this.populateFacets();\n }\n\n @Input()\n set facetDisplayType(facetDisplayType: string) {\n this._facetDisplayType = facetDisplayType;\n this.populateFacets();\n }\n\n @Input()\n set facetViewCategorySelected(facetViewCategorySelected: string) {\n this._facetViewCategorySelected = facetViewCategorySelected;\n this.populateFacets();\n }\n\n @Input()\n set facetNameText(facetNameText: string) {\n this._facetNameText = facetNameText;\n this.populateFacets();\n }\n\n ngOnInit() {\n this.facetString = this.activatedRoute.snapshot.queryParams['facets'] || '';\n const show = this.activatedRoute.snapshot.queryParams['showDeprecated'] || 'false';\n if (show === 'true') {\n this.showDeprecated = true;\n }\n this.facetsFromParams();\n this.setDisplayFacets();\n this.facetsParamsUpdated.emit({\n facetParam: this.privateFacetParams,\n displayFacets: this.displayFacets,\n deprecated: this.showDeprecated\n });\n const deleteEventSubscription = this.facetManagerService.clearSelectionsEvent.subscribe(() => {\n this.clearFacetSelection();\n });\n this.subscriptions.push(deleteEventSubscription);\n\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n if (auth) {\n this.loggedIn = true;\n }\n });\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n ngAfterViewInit() {\n if (this.includeFacetSearch) {\n const facetSearchSubscription = this.facetSearchChanged.pipe(\n debounceTime(500),\n distinctUntilChanged(),\n switchMap(event => {\n const facet = this.facets[event.index];\n return this.facetsService.getFacetsHandler(facet, event.query).pipe(take(1));\n })\n ).subscribe(response => {\n this.activeSearchedFaced.values = this.activeSearchedFaced.values.filter(value => {\n let removeFacet = true;\n\n let isInSearhResults = false;\n\n for (const r of response.content) {\n if (r.label === value.label) {\n isInSearhResults = true;\n break;\n }\n }\n\n if (!isInSearhResults\n && this.privateFacetParams[this.activeSearchedFaced.name] != null\n && (this.privateFacetParams[this.activeSearchedFaced.name].params[value.label] === true\n || this.privateFacetParams[this.activeSearchedFaced.name].params[value.label] === false)) {\n removeFacet = false;\n }\n return !removeFacet;\n });\n this.activeSearchedFaced.values = this.activeSearchedFaced.values.concat(response.content);\n this.searchText[this.activeSearchedFaced.name].isLoading = false;\n }, error => {\n this.searchText[this.activeSearchedFaced.name].isLoading = false;\n });\n this.subscriptions.push(facetSearchSubscription);\n }\n }\n\n facetsFromParams() {\n if (this.facetString !== '') {\n const categoryArray = this.escapedSplit(this.facetString, ',');\n for (const c of categoryArray) {\n const categorySplit = this.escapedSplit(c, '*');\n const category = categorySplit[0];\n const fieldsArr = this.escapedSplit(categorySplit[1], '+');\n const params: { [facetValueLabel: string]: boolean } = {};\n let hasSelections = false;\n let isAllMatch = false;\n let hasExcludeOption = false;\n let includeOptionsLength = 0;\n for (const f of fieldsArr) {\n const field = this.escapedSplit(f, '.');\n field[0] = this.decodeValue(decodeURIComponent(field[0]));\n if (field[0] === 'is_all_match') {\n isAllMatch = true;\n } else {\n if (field[1] === 'true') {\n params[field[0]] = true;\n hasSelections = true;\n includeOptionsLength++;\n } else if (field[1] === 'false') {\n params[field[0]] = false;\n hasSelections = true;\n hasExcludeOption = true;\n }\n }\n }\n if (hasSelections === true) {\n this.facetBuilder[category] = { params: params, hasSelections: true, isAllMatch: isAllMatch };\n if (!hasExcludeOption && includeOptionsLength > 1) {\n this.facetBuilder[category].showAllMatchOption = true;\n }\n const paramsString = JSON.stringify(params);\n const newHash = this.utilsService.hashCode(paramsString,\n this.facetBuilder[category].isAllMatch.toString(),\n this.showDeprecated.toString());\n this.facetBuilder[category].currentStateHash = newHash;\n }\n }\n this.privateFacetParams = this.facetBuilder;\n this.previousFacets.push(JSON.parse(JSON.stringify(this.privateFacetParams)));\n }\n }\n\n toggleDeprecated(): void {\n this.showDeprecated = !this.showDeprecated;\n setTimeout(() => {\n this.populateUrlQueryParameters(this.showDeprecated);\n this.facetsParamsUpdated.emit({\n facetParam: this.privateFacetParams, displayFacets: this.displayFacets,\n deprecated: this.showDeprecated\n });\n });\n }\n\n private populateFacets(): void {\n if (this.privateRawFacets && this.facetsConfig) {\n if (this.facetsAuthSubscription != null) {\n this.facetsAuthSubscription.unsubscribe();\n this.facetsAuthSubscription = null;\n }\n this.facetsAuthSubscription = this.authService.getAuth().subscribe(auth => {\n const facetsCopy = this.privateRawFacets.slice();\n const newFacets = [];\n this.showAudit = this.authService.hasRoles('admin');\n const facetKeys = Object.keys(this.facetsConfig) || [];\n\n if (this._facetDisplayType) {\n if (this._facetDisplayType === 'default') {\n facetKeys.forEach(facetKey => {\n if (this.facetsConfig[facetKey].length\n && (facetKey === 'default' || this.authService.hasRoles(facetKey))) {\n this.facetsConfig[facetKey].forEach(facet => {\n for (let facetIndex = 0; facetIndex < facetsCopy.length; facetIndex++) {\n this.toggle[facetIndex] = true;\n if (facet === facetsCopy[facetIndex].name) {\n\n // Facet Name Search\n let facetNameTextFound = true;\n if ((this._facetNameText) && (this._facetNameText.length > 0)) {\n facetNameTextFound = false;\n if (facetsCopy[facetIndex].name.toLowerCase().indexOf(this._facetNameText.toLowerCase().trim()) > -1) {\n facetNameTextFound = true;\n }\n }\n\n if (facetNameTextFound === true) {\n if (facetsCopy[facetIndex].values != null && facetsCopy[facetIndex].values.length) {\n let hasValues = false;\n for (let valueIndex = 0; valueIndex < facetsCopy[facetIndex].values.length; valueIndex++) {\n if (facetsCopy[facetIndex].values[valueIndex].count) {\n hasValues = true;\n break;\n }\n }\n\n if (hasValues) {\n if (this.showDeprecated === false && facet === 'Deprecated') {\n } else {\n const facetToAdd = facetsCopy.splice(facetIndex, 1);\n facetIndex--;\n newFacets.push(facetToAdd[0]);\n this.searchText[facetToAdd[0].name] = { value: '', isLoading: false };\n }\n }\n }\n }\n\n break;\n }\n }\n });\n }\n });\n } else if (this._facetDisplayType === 'facetView' && this._facetViewCategorySelected !== 'All') {\n if (this._configName && this._configName === 'substances') {\n this.facetsConfig['facetView'].forEach(categoryRow => {\n const category = categoryRow['category'];\n const categoryFacets = categoryRow['facets'];\n if (category === this._facetViewCategorySelected) {\n categoryFacets.forEach(facet => {\n for (let facetIndex = 0; facetIndex < facetsCopy.length; facetIndex++) {\n this.toggle[facetIndex] = true;\n if (facet === facetsCopy[facetIndex].name) {\n // Facet Name Search\n let facetNameTextFound = true;\n if ((this._facetNameText) && (this._facetNameText.length > 0)) {\n facetNameTextFound = false;\n if (facetsCopy[facetIndex].name.toLowerCase().indexOf(this._facetNameText.toLowerCase().trim()) > -1) {\n facetNameTextFound = true;\n }\n }\n\n if (facetNameTextFound === true) {\n if (facetsCopy[facetIndex].values != null && facetsCopy[facetIndex].values.length) {\n let hasValues = false;\n for (let valueIndex = 0; valueIndex < facetsCopy[facetIndex].values.length; valueIndex++) {\n if (facetsCopy[facetIndex].values[valueIndex].count) {\n hasValues = true;\n break;\n }\n }\n\n if (hasValues) {\n if (this.showDeprecated === false && facet === 'Deprecated') {\n } else {\n const facetToAdd = facetsCopy.splice(facetIndex, 1);\n facetIndex--;\n newFacets.push(facetToAdd[0]);\n this.searchText[facetToAdd[0].name] = { value: '', isLoading: false };\n }\n }\n }\n }\n\n break;\n }\n }\n });\n }\n });\n }\n } else { // Show ALL Facets\n for (let facetIndex = 0; facetIndex < facetsCopy.length; facetIndex++) {\n this.searchText[facetsCopy[facetIndex].name] = { value: '', isLoading: false };\n newFacets.push(facetsCopy[facetIndex]);\n }\n }\n }\n\n // Set any facets being used to filter results to the top of the facet display\n Object.keys(this.privateFacetParams).forEach(key => {\n const position = newFacets.map(object => object.name).indexOf(key);\n if (position > 0 ) {\n newFacets.unshift(newFacets.splice(position, 1)[0]);\n }\n });\n this.facets = newFacets;\n this.facetsLoaded.emit(this.facets.length);\n this.cleanFacets();\n this.setDisplayFacets();\n });\n }\n }\n\n cleanFacets(): void {\n if (this.privateFacetParams != null) {\n const facetParamsKeys = Object.keys(this.privateFacetParams);\n if (facetParamsKeys && facetParamsKeys.length > 0) {\n facetParamsKeys.forEach(key => {\n if (this.privateFacetParams[key]) {\n if ((Object.keys(this.privateFacetParams[key].params).length < 1) || (this.privateFacetParams[key].hasSelections === false)) {\n this.privateFacetParams[key] = undefined;\n }\n }\n });\n }\n }\n }\n\n setDisplayFacets() {\n if (this.privateFacetParams != null) {\n this.displayFacets = [];\n Object.keys(this.privateFacetParams).forEach(key => {\n if (this.privateFacetParams[key] && this.privateFacetParams[key].params) {\n Object.keys(this.privateFacetParams[key].params).forEach(sub => {\n if (this.privateFacetParams[key].params[sub] !== undefined) {\n const facet = new DisplayFacet(\n key,\n this.privateFacetParams[key].params[sub],\n sub,\n (type: string, bool: boolean, val: string) => {\n this.removeFacet(type, bool, val);\n }\n );\n this.displayFacets.push(facet);\n }\n });\n }\n });\n }\n }\n\n populateUrlQueryParameters(deprecated?: boolean): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n const catArr = [];\n let facetString = '';\n for (const key of Object.keys(this.privateFacetParams)) {\n if (this.privateFacetParams[key] !== undefined &&\n this.privateFacetParams[key].hasSelections === true &&\n !(this.showDeprecated && key === 'Deprecated' && this.privateFacetParams[key] !== undefined &&\n this.privateFacetParams[key].params &&\n this.privateFacetParams[key].params['Deprecated'] === true)) {\n const cat = this.privateFacetParams[key];\n const valArr = [];\n for (const subkey of Object.keys(cat.params)) {\n if (typeof cat.params[subkey] === 'boolean') {\n valArr.push(this.encodeValue(subkey) + '.' + cat.params[subkey]);\n }\n }\n if (cat.isAllMatch) {\n valArr.push('is_all_match.true');\n }\n catArr.push(key + '*' + valArr.join('+'));\n const paramsString = JSON.stringify(this.privateFacetParams[key].params);\n const newHash = this.utilsService.hashCode(paramsString, this.privateFacetParams[key].isAllMatch.toString());\n this.privateFacetParams[key].currentStateHash = newHash;\n this.privateFacetParams[key].isUpdated = false;\n }\n }\n facetString = catArr.join(',');\n if (facetString !== '') {\n navigationExtras.queryParams['facets'] = facetString;\n }\n if (this.showDeprecated) {\n navigationExtras.queryParams['showDeprecated'] = 'true';\n } else {\n navigationExtras.queryParams['showDeprecated'] = null;\n }\n\n this.previousState.push(this.router.url);\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n\n private escapedSplit(value: string, delim: string) {\n return value.match(new RegExp('((.|^)*?([^!]|^))([' + delim + ']|$)', 'g'))\n .map(d => d.replace(new RegExp('[' + delim + ']$', 'g'), ''));\n }\n\n private encodeValue(facetValue: string) {\n let encFV = facetValue.replace('!', '!@');\n encFV = encFV.replace(/[.]/g, '!.');\n encFV = encFV.replace(/[\\+]/g, '!+');\n encFV = encFV.replace(/[,]/g, '!,');\n encFV = encFV.replace(/[\\*]/g, '!*');\n return encFV;\n }\n\n private decodeValue(encFV: string) {\n const decFV = encFV.replace(/!([^@])/g, '$1').replace(/[!][@]/g, '!');\n return decFV;\n }\n\n private applyFacetsFilter(facetName: string) {\n const eventLabel = this.environment.isAnalyticsPrivate ? 'facet' : `${facetName}`;\n let eventValue = 0;\n Object.keys(this.privateFacetParams).forEach(key => {\n if (this.privateFacetParams[key] && this.privateFacetParams[key].params) {\n eventValue = eventValue + Object.keys(this.privateFacetParams[key].params).length || 0;\n }\n });\n this.gaService.sendEvent('substancesFiltering', 'button:apply-facet', eventLabel, eventValue);\n this.populateUrlQueryParameters();\n this.setDisplayFacets();\n this.facetsParamsUpdated.emit({\n facetParam: this.privateFacetParams,\n displayFacets: this.displayFacets,\n deprecated: this.showDeprecated\n });\n }\n\n removeFacet(type: string, bool: boolean, val: string): void {\n const mockEvent = { 'checked': false, source: null };\n this.updateFacetSelection(mockEvent, type, val, bool);\n\n setTimeout(() => {\n this.applyFacetsFilter(type);\n });\n }\n\n updateFacetSelection(\n event: MatCheckboxChange,\n facetName: string,\n facetValueLabel: string,\n include: boolean\n ): void {\n const eventLabel = this.environment.isAnalyticsPrivate ? 'facet' : `${facetName} > ${facetValueLabel}`;\n const eventValue = event.checked ? 1 : 0;\n const eventAction = include ? 'include' : 'exclude';\n this.gaService.sendEvent('substancesFiltering', `check:facet-${eventAction}`, eventLabel, eventValue);\n\n let paramsString: string;\n let isAllMatchString: string;\n if (this.privateFacetParams[facetName] == null) {\n this.privateFacetParams[facetName] = {\n params: {},\n isAllMatch: false\n };\n paramsString = JSON.stringify(this.privateFacetParams[facetName].params);\n isAllMatchString = this.privateFacetParams[facetName].isAllMatch.toString();\n const stateHash = this.utilsService.hashCode(paramsString, isAllMatchString);\n this.privateFacetParams[facetName].currentStateHash = stateHash;\n }\n\n if (include) {\n this.privateFacetParams[facetName].params[facetValueLabel] = event.checked || undefined;\n } else {\n this.privateFacetParams[facetName].params[facetValueLabel] = event.checked === true ? false : undefined;\n }\n\n let hasSelections = false;\n let hasExcludeOption = false;\n let includeOptionsLength = 0;\n\n const facetValueKeys = Object.keys(this.privateFacetParams[facetName].params);\n for (let i = 0; i < facetValueKeys.length; i++) {\n if (this.privateFacetParams[facetName].params[facetValueKeys[i]] != null) {\n hasSelections = true;\n if (this.privateFacetParams[facetName].params[facetValueKeys[i]] === false) {\n hasExcludeOption = true;\n } else {\n includeOptionsLength++;\n }\n }\n }\n\n this.privateFacetParams[facetName].hasSelections = hasSelections;\n\n if (!hasExcludeOption && includeOptionsLength > 1) {\n this.privateFacetParams[facetName].showAllMatchOption = true;\n } else {\n this.privateFacetParams[facetName].showAllMatchOption = false;\n this.privateFacetParams[facetName].isAllMatch = false;\n }\n\n paramsString = JSON.stringify(this.privateFacetParams[facetName].params);\n isAllMatchString = this.privateFacetParams[facetName].isAllMatch.toString();\n const newHash = this.utilsService.hashCode(paramsString, isAllMatchString);\n this.privateFacetParams[facetName].isUpdated = newHash !== this.privateFacetParams[facetName].currentStateHash;\n\n // Pass which facet is selected when calling from Advanced Search.\n if (this.calledFrom && this.calledFrom === 'advancedsearch') {\n this.setDisplayFacets();\n this.facetsParamsUpdated.emit({\n facetParam: this.privateFacetParams,\n displayFacets: this.displayFacets,\n deprecated: this.showDeprecated\n });\n }\n }\n\n updateAllMatch(facetName: string): void {\n const eventLabel = this.environment.isAnalyticsPrivate ? 'facet' : `${facetName}`;\n const eventValue = this.privateFacetParams[facetName].isAllMatch ? 1 : 0;\n this.gaService.sendEvent('substancesFiltering', `check:facet-all_match`, eventLabel, eventValue);\n\n const paramsString = JSON.stringify(this.privateFacetParams[facetName].params);\n const isAllMatchString = this.privateFacetParams[facetName].isAllMatch.toString();\n const newHash = this.utilsService.hashCode(paramsString, isAllMatchString);\n this.privateFacetParams[facetName].isUpdated = newHash !== this.privateFacetParams[facetName].currentStateHash;\n }\n\n clearFacetSelection(\n facetName?: string\n ) {\n\n const eventLabel = this.environment.isAnalyticsPrivate ? 'facet' : `facet: ${facetName}`;\n let eventValue = 0;\n\n const facetKeys = facetName != null ? [facetName] : Object.keys(this.privateFacetParams);\n\n if (facetKeys != null && facetKeys.length) {\n facetKeys.forEach(facetKey => {\n if (this.privateFacetParams[facetKey] != null && this.privateFacetParams[facetKey].params != null) {\n const facetValueKeys = Object.keys(this.privateFacetParams[facetKey].params);\n facetValueKeys.forEach(facetParam => {\n eventValue++;\n this.privateFacetParams[facetKey].params[facetParam] = undefined;\n });\n\n this.privateFacetParams[facetKey].isAllMatch = false;\n this.privateFacetParams[facetKey].showAllMatchOption = false;\n this.privateFacetParams[facetKey].hasSelections = false;\n\n if (facetName != null) {\n const paramsString = JSON.stringify(this.privateFacetParams[facetName].params);\n const isAllMatchString = this.privateFacetParams[facetName].isAllMatch.toString();\n const newHash = this.utilsService.hashCode(paramsString, isAllMatchString);\n this.privateFacetParams[facetName].isUpdated = newHash !== this.privateFacetParams[facetName].currentStateHash;\n }\n }\n });\n }\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n facets: ''\n }\n };\n\n setTimeout(() => {\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n });\n\n this.gaService.sendEvent('substancesFiltering', 'button:clear-facet', eventLabel, eventValue);\n }\n\n moreFacets(index: number, facet: Facet) {\n this.facets[index].$isLoading = true;\n if (facet.$next == null) {\n facet.$next = facet._self.replace('fskip=0', 'fskip=10');\n }\n this.facetManagerService.getFacetsHandler(this.facets[index], '', facet.$next).pipe(take(1)).subscribe(resp => {\n this.facets[index].$next = resp.nextPageUri;\n this.facets[index].$previous = resp.previousPageUri;\n this.facets[index].values = this.facets[index].values.concat(resp.content);\n this.facets[index].$fetched = this.facets[index].values;\n this.facets[index].$total = resp.ftotal;\n this.facets[index].$isLoading = false;\n }, error => {\n this.facets[index].$isLoading = false;\n });\n }\n\n lessFacets(index: number) {\n this.facets[index].$isLoading = true;\n const nextUrl = this.facets[index].$next;\n this.facetManagerService.getFacetsHandler(this.facets[index], null, null).pipe(take(1)).subscribe(response => {\n this.facets[index].values = response.content;\n this.facets[index].$fetched = response.content;\n this.facets[index].$next = response.nextPageUri;\n this.facets[index].$previous = response.previousPageUri;\n this.facets[index].$isLoading = false;\n }, error => {\n this.facets[index].$isLoading = false;\n });\n }\n\n filterFacets(index: number, searchTerm: string, faceName: string): void {\n this.searchText[faceName].isLoading = true;\n this.activeSearchedFaced = this.facets[index];\n this.facetSearchChanged.next({ index: index, query: searchTerm });\n }\n\n clearFacetSearch(index: number, facetName: string): void {\n this.searchText[facetName].value = '';\n this.filterFacets(index, '', facetName);\n }\n\n get facetParams(): FacetParam | { showAllMatchOption?: boolean } {\n return this.privateFacetParams;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FacetsManagerComponent } from './facets-manager.component';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { FormsModule } from '@angular/forms';\nimport { FacetDisplayPipe } from './facet-display.pipe';\nimport { FacetFilterPipe } from './facet-filter.pipe';\nimport { CodeDisplayModule } from '@gsrs-core/utils/code-display.module';\n\n@NgModule({\n declarations: [\n FacetsManagerComponent,\n FacetDisplayPipe,\n FacetFilterPipe\n ],\n imports: [\n CommonModule,\n MatExpansionModule,\n MatFormFieldModule,\n MatInputModule,\n MatCheckboxModule,\n FormsModule,\n MatIconModule,\n MatProgressBarModule,\n MatButtonModule,\n CodeDisplayModule\n ],\n exports: [\n FacetsManagerComponent,\n FacetDisplayPipe,\n FacetFilterPipe\n ]\n})\nexport class FacetsManagerModule { }\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { ConfigService } from '@gsrs-core/config';\nimport { HttpClient } from '@angular/common/http';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { Facet, FacetQueryResponse } from './facet.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FacetsManagerService extends BaseHttpService {\n getFacetsHandler: (facet: Facet, searchTerm?: string, nextUrl?: string) => Observable;\n private clearSelectionsSubject = new Subject();\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService,\n private utilsService: UtilsService\n ) {\n super(configService);\n }\n\n registerGetFacetsHandler(handler: (facet: Facet, searchTerm?: string, nextUrl?: string) => Observable): void {\n this.getFacetsHandler = handler;\n }\n\n unregisterFacetSearchHandler(): void {\n this.getFacetsHandler = null;\n }\n\n get clearSelectionsEvent(): Observable {\n return this.clearSelectionsSubject.asObservable();\n }\n\n clearSelections(): void {\n this.clearSelectionsSubject.next();\n }\n}\n","import { Injectable, PLATFORM_ID, Inject, HostListener } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nimport { ConfigService } from '../config/config.service';\nimport { SendFields } from './google-analytics.model';\nimport { Environment } from '../../../environments/environment.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GoogleAnalyticsService {\n private googleAnanlyticsId: string;\n private analyticsObjectKey: string;\n private isActive = false;\n private environment: Environment;\n\n constructor(\n public configService: ConfigService,\n @Inject(PLATFORM_ID) private platformId: Object\n ) {\n this.environment = configService.environment;\n if (isPlatformBrowser(this.platformId)\n && configService.configData\n && configService.configData.googleAnalyticsId) {\n this.googleAnanlyticsId = configService.configData.googleAnalyticsId;\n this.init();\n }\n }\n\n init() {\n\n let analyticsObjectKey;\n\n this.analyticsObjectKey = analyticsObjectKey = Math.random().toString(36).replace('0.', '');\n\n window['GoogleAnalyticsObject'] = this.analyticsObjectKey;\n\n window[this.analyticsObjectKey] = window[this.analyticsObjectKey] || function() {\n (window[analyticsObjectKey]['q'] = window[analyticsObjectKey] && window[analyticsObjectKey]['q'] || []).push(arguments);\n };\n\n window[this.analyticsObjectKey].l = + new Date;\n\n this.isActive = true;\n\n window[this.analyticsObjectKey]('create', this.googleAnanlyticsId, { cookieName: 'gsrsCookie' });\n window[this.analyticsObjectKey]('set', 'screenResolution', `${window.screen.availWidth}x${window.screen.availHeight}`);\n\n window[this.analyticsObjectKey]('set', 'hostname', window.location.hostname);\n\n if (this.environment.isAnalyticsPrivate) {\n window[this.analyticsObjectKey]('set', 'allowAdFeatures', false);\n window[this.analyticsObjectKey]('set', 'anonymizeIp', true);\n window[this.analyticsObjectKey]('set', 'referrer', 'https://none.com');\n window[this.analyticsObjectKey]('set', 'location', 'https://none.com');\n }\n\n this.isActive = true;\n\n const node = document.createElement('script');\n node.src = 'https://www.google-analytics.com/analytics.js';\n node.type = 'text/javascript';\n node.async = true;\n // node.charset = 'utf-8';\n document.getElementsByTagName('head')[0].appendChild(node);\n }\n\n @HostListener('window:error', ['$event'])\n onGlobalError(event) {\n const errorDescription = `message: ${event.message} | filenname: ${event.filename} | lineno: ${event.lineno} | colno: ${event.colno}`;\n this.sendException(errorDescription);\n }\n\n sendPageView(title?: string, path?: string): void {\n\n if (this.isActive) {\n if (path == null && title != null) {\n path = `/${title.replace(/ /g, '-').toLowerCase()}`;\n }\n\n const sendFields: SendFields = {\n hitType: 'pageview',\n title: title,\n page: path,\n viewportSize: `${window.innerHeight}x${window.innerWidth}`\n };\n window[this.analyticsObjectKey]('send', sendFields);\n }\n }\n\n sendEvent(eventCategory?: string, eventAction?: string, eventLabel?: string, eventValue?: number): void {\n\n if (this.isActive) {\n const sendFields: SendFields = {\n hitType: 'event',\n eventCategory: eventCategory,\n eventAction: eventAction,\n eventLabel: eventLabel,\n eventValue: eventValue,\n viewportSize: `${window.innerHeight}x${window.innerWidth}`\n };\n\n window[this.analyticsObjectKey]('send', sendFields);\n }\n }\n\n sendException(exDescription: string, exFatal: boolean = false): void {\n if (this.isActive) {\n const sendFields: SendFields = {\n hitType: 'exception',\n exDescription: exDescription,\n exFatal: exFatal,\n viewportSize: `${window.innerHeight}x${window.innerWidth}`\n };\n\n window[this.analyticsObjectKey]('send', sendFields);\n }\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\r\nimport { Environment } from '../../../../environments/environment.model';\r\nimport { GoogleAnalyticsService } from '../google-analytics.service';\r\nimport { ConfigService } from '../../config/config.service';\r\n\r\n@Directive({\r\n selector: '[appTrackLinkEvent]'\r\n})\r\nexport class TrackLinkEventDirective {\r\n @Input() evCategory = 'Undefined';\r\n @Input() evAction = 'click-link';\r\n @Input() evLabel: string;\r\n @Input() evValue: number;\r\n environment: Environment;\r\n\r\n constructor(\r\n private gaService: GoogleAnalyticsService,\r\n private configService: ConfigService\r\n ) {\r\n this.environment = this.configService.environment;\r\n }\r\n\r\n @HostListener('click', ['$event.target'])\r\n onClick(element) {\r\n\r\n if (this.environment.isAnalyticsPrivate) {\r\n this.evLabel = 'link';\r\n } else if (!this.evLabel && element.href) {\r\n this.evLabel = element.href;\r\n }\r\n\r\n this.gaService.sendEvent(this.evCategory, this.evAction, this.evLabel, this.evValue);\r\n }\r\n}\r\n","import { CommandTypesDict, CommandDict } from '../queryable-substance-dictionary.model';\nimport { EventEmitter } from '@angular/core';\nimport * as moment from 'moment';\nimport { QueryStatement } from './query-statement.model';\n\n\nexport const inputTypes = [\n 'text',\n 'datetime',\n 'number',\n 'select'\n];\n\nexport const typeCommandOptions: CommandTypesDict = {\n string: {\n 'ANY of the following words in any order or position': {\n commandInputs: [\n {\n type: 'text',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const parts = queryValue.split(' ');\n let query = parts.map(word => {\n return lucenePath + word;\n }).join(' OR ');\n if (parts.length > 1) {\n query = `(${query})`;\n }\n query = `${condition}${query}`;\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'ANY of the following words in any order or position',\n commandInputValues: [queryValue],\n query: query\n });\n\n }\n }\n ]\n },\n 'the following exact phrase, which must match completely (no partial words)': {\n commandInputs: [\n {\n type: 'text',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue.trim() && `${condition}${lucenePath}\"^${queryValue.trim()}$\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'the following exact phrase, which must match completely (no partial words)',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n // 'the following contained phrase, which must be found as written (no partial words)': {\n 'Exact Match': {\n commandInputs: [\n {\n type: 'text',\n example: 'Example: aspirin sodium',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n if (queryValue) {\n queryValue = queryValue.replace(/['\"]+/g, '');\n }\n const query = queryValue.trim() && `${condition}${lucenePath}\"^${queryValue.trim()}$\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'Exact Match',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'ALL of the following words in any order or position': {\n commandInputs: [\n {\n type: 'text',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const parts = queryValue.split(' ');\n let query = parts.map(word => {\n return lucenePath + word;\n }).join(' AND ');\n if (parts.length > 1) {\n query = `(${query})`;\n }\n query = `${condition}${query}`;\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'ALL of the following words in any order or position',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n // 'a WORD that contains': {\n 'Contains': {\n commandInputs: [\n {\n type: 'text',\n example: 'Example: sodium',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n if (queryValue) {\n // Remove single and double quotes\n queryValue = queryValue.replace(/['\"]+/g, '');\n // Put slash \\\\ in front of AND in the text for scape\n queryValue = queryValue.replace(/[ ]AND[ ]/g, ' \\\\\\\\AND ');\n // Put slash \\\\ in front of OR in the text for scape\n queryValue = queryValue.replace(/[ ]OR[ ]/g, ' \\\\\\\\OR ');\n // Put slash \\\\ in front of OR in the text for scape\n queryValue = queryValue.replace(/[ ]NOT[ ]/g, ' \\\\\\\\NOT ');\n queryValue = queryValue.replace(/^NOT[ ]/g, '\\\\\\\\NOT ');\n\n //TODO: Fix the underlying issues on backend with this eventually\n // Replace hypen - with space for scape\n queryValue = queryValue.replace(/[-]+/g, ' ');\n // Remove dot . for scape\n queryValue = queryValue.replace(/[.]+/g, '');\n // Remove parentheses ( for scape\n queryValue = queryValue.replace(/[()]+/g, ' ').trim();\n // remove commas that are before spaces\n queryValue = queryValue.replace(/[,][ ]/g, ' ');\n }\n const query = queryValue.trim() && `${condition}${lucenePath}\"*${queryValue.trim()}*\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'Contains',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n // 'a WORD that starts with': {\n 'Starts With': {\n commandInputs: [\n {\n type: 'text',\n example: 'Example: aspir',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n if (queryValue) {\n queryValue = queryValue.replace(/['\"]+/g, '');\n }\n const query = queryValue.trim() && `${condition}${lucenePath}\"^${queryValue.trim()}*\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'Starts With',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'Ends With': {\n commandInputs: [\n {\n type: 'text',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue.trim() && `${condition}${lucenePath}\"*${queryValue.trim()}$\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'Ends With',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n // 'the following contained phrase, which must be found as written (no partial words)': {\n 'Manual Query Entry': {\n commandInputs: [\n {\n type: 'text',\n example: 'Example: aspirin sodium',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n /* if (queryValue) {\n queryValue = queryValue.replace(/['\"]+/g, '');\n } */\n const query = queryValue.trim();\n // const query = queryValue.trim() && `${condition}${lucenePath}\"^${queryValue.trim()}$\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'Manual Query Entry',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'a value that starts with with the word(s)': {\n commandInputs: [\n {\n type: 'text',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue.trim() && `${condition}${lucenePath}\"^${queryValue.trim()}\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'a value that starts with with the word(s)',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'a WORD that ends with': {\n commandInputs: [\n {\n type: 'text',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue.trim() && `${condition}${lucenePath}*${queryValue.trim()}` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'a WORD that ends with',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'a value that ends with the word(s)': {\n commandInputs: [\n {\n type: 'text',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue.trim() && `${condition}${lucenePath}\"${queryValue.trim()}$\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'a value that ends with the word(s)',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'values that are not empty': {\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = `${condition}${lucenePath}*`;\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'values that are not empty',\n commandInputValues: [queryValue],\n query: query\n });\n }\n },\n 'the following exact default values': {\n commandInputs: [\n {\n type: 'select',\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue.trim() && `${condition}${lucenePath}\"^${queryValue.trim()}$\"` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'the following exact default values',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n }\n },\n timestamp: {\n 'on': {\n commandInputs: [\n {\n type: 'datetime',\n constructQuery: (\n date: Date,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n let query = '';\n if (date != null) {\n const timestampStart = moment(date)\n .set({ hour: 0, minute: 0, second: 0, millisecond: 0 }).utc().valueOf();\n const timestampEnd = moment(date)\n .set({ hour: 23, minute: 59, second: 59, millisecond: 999 }).utc().valueOf();\n query = `${condition}${lucenePath}[${timestampStart} TO ${timestampEnd}]`;\n }\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'on',\n commandInputValues: [date],\n query: query\n });\n }\n }\n ]\n },\n 'before': {\n commandInputs: [\n {\n type: 'datetime',\n constructQuery: (\n date: Date,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n let query = '';\n if (date != null) {\n const timestampEnd = moment(date)\n .set({ hour: 23, minute: 59, second: 59, millisecond: 999 }).utc().valueOf();\n query = `${condition}${lucenePath}[-10E50 TO ${timestampEnd}]`;\n }\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'before',\n commandInputValues: [date],\n query: query\n });\n }\n }\n ]\n },\n 'after': {\n commandInputs: [\n {\n type: 'datetime',\n constructQuery: (\n date: Date,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n let query = '';\n if (date != null) {\n const timestampStart = moment(date)\n .set({ hour: 0, minute: 0, second: 0, millisecond: 0 }).utc().valueOf();\n query = `${condition}${lucenePath}[${timestampStart} TO 10E50]`;\n }\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'after',\n commandInputValues: [date],\n query: query\n });\n }\n }\n ]\n },\n 'between': {\n commandInputs: [\n {\n type: 'datetime',\n constructQuery: (\n date: Date,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter,\n queryParts?: Array,\n commandInputValues?: Array\n ) => {\n let query = '';\n if (date != null) {\n const timestampStart = moment(date)\n .set({ hour: 0, minute: 0, second: 0, millisecond: 0 }).utc().valueOf();\n\n queryParts[0] = `${condition}${lucenePath}[${timestampStart} TO `;\n query = queryParts.join('');\n }\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'between',\n commandInputValues: [date, (commandInputValues && commandInputValues[1] || null)],\n query: query,\n queryParts: queryParts\n });\n }\n },\n {\n type: 'datetime',\n constructQuery: (\n date: Date,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter,\n queryParts?: Array,\n commandInputValues?: Array\n ) => {\n let query = '';\n if (date != null) {\n const timestampEnd = moment(date)\n .set({ hour: 23, minute: 59, second: 59, millisecond: 999 }).utc().valueOf();\n queryParts[1] = `${timestampEnd}]`;\n query = queryParts.join('');\n }\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'between',\n commandInputValues: [(commandInputValues && commandInputValues[0] || null), date],\n query: query,\n queryParts: queryParts\n });\n }\n }\n ]\n }\n },\n boolean: {\n 'true': {\n constructQuery: (\n commandValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = `${condition}${lucenePath}\"^${commandValue}$\"`;\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'true',\n query: query\n });\n }\n },\n 'false': {\n constructQuery: (\n commandValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = `${condition}${lucenePath}\"^${commandValue}$\"`;\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'false',\n query: query\n });\n }\n }\n },\n number: {\n 'exact number': {\n commandInputs: [\n {\n type: 'number',\n constructQuery: (\n queryValue: number | string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue != null && queryValue !== '' && `${condition}${lucenePath}${queryValue}` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'exact number',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'number that begins with': {\n commandInputs: [\n {\n type: 'number',\n constructQuery: (\n queryValue: number | string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue != null && queryValue !== '' && `${condition}${lucenePath}[${queryValue} TO 10E50]` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'number that begins with',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'number that ends with': {\n commandInputs: [\n {\n type: 'number',\n constructQuery: (\n queryValue: number | string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = queryValue != null && queryValue !== '' && `${condition}${lucenePath}[-10E50 TO ${queryValue}]` || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'number that ends with',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n ]\n },\n 'between': {\n commandInputs: [\n {\n type: 'number',\n constructQuery: (\n queryValue: number | string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter,\n queryParts?: Array,\n commandInputValues?: Array\n ) => {\n queryParts[0] = queryValue != null && queryValue !== '' && `${condition}${lucenePath}[${queryValue} TO ` || '';\n const query = queryParts[0] && queryParts[1] && queryParts.join('') || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'between',\n commandInputValues: [queryValue, (commandInputValues && commandInputValues[1] || null)],\n query: query,\n queryParts: queryParts\n });\n }\n },\n {\n type: 'number',\n constructQuery: (\n queryValue: number | string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter,\n queryParts?: Array,\n commandInputValues?: Array\n ) => {\n queryParts[1] = queryValue != null && queryValue !== '' && `${queryValue}]` || '';\n const query = queryParts[0] && queryParts[1] && queryParts.join('') || '';\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'between',\n commandInputValues: [(commandInputValues && commandInputValues[0] || null), queryValue],\n query: query,\n queryParts: queryParts\n });\n }\n }\n ]\n },\n 'values that are not empty': {\n constructQuery: (\n queryValue: string,\n condition: string,\n queryableProperty: string,\n lucenePath: string,\n eventEmitter: EventEmitter\n ) => {\n const query = `${condition}${lucenePath}*`;\n eventEmitter.emit({\n condition: condition,\n queryableProperty: queryableProperty,\n command: 'values that are not empty',\n commandInputValues: [queryValue],\n query: query\n });\n }\n }\n }\n};\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LoadingComponent } from './loading/loading.component';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { LoadingOverlayComponent } from './loading-overlay/loading-overlay.component';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatProgressBarModule,\r\n MatProgressSpinnerModule\r\n ],\r\n declarations: [\r\n LoadingComponent,\r\n LoadingOverlayComponent\r\n ],\r\n exports: [\r\n LoadingComponent\r\n ],\r\n entryComponents: [\r\n LoadingOverlayComponent\r\n ]\r\n})\r\nexport class LoadingModule { }\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-loading-overlay',\n template: `
        `,\n styleUrls: ['./loading-overlay.component.scss']\n})\nexport class LoadingOverlayComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Subject, Observable } from 'rxjs';\nimport { OverlayContainer, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { LoadingOverlayComponent } from './loading-overlay/loading-overlay.component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingService {\n private isLoading = false;\n private loadingEventSubject: Subject = new Subject();\n numProcesses = 0;\n private overlayRef: OverlayRef;\n private loadingPortal: ComponentPortal;\n private overlayContainer: HTMLElement;\n private isOverlayAttached = false;\n\n constructor(\n private overlayService: Overlay,\n private overlayContainerService: OverlayContainer,\n ) {\n this.overlayRef = this.overlayService.create({\n hasBackdrop: true,\n backdropClass: 'loading-overlay-backdrop',\n positionStrategy: this.overlayService.position().global().centerHorizontally().centerVertically(),\n scrollStrategy: this.overlayService.scrollStrategies.reposition()\n });\n this.loadingPortal = new ComponentPortal(LoadingOverlayComponent);\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n setLoading(isLoading: boolean): void {\n if (isLoading) {\n this.numProcesses++;\n } else {\n this.numProcesses--;\n }\n this.isLoading = this.numProcesses > 0;\n if (this.numProcesses < 0) {\n this.numProcesses = 0;\n }\n\n if (this.isLoading) {\n this.setOverlay();\n } else {\n this.removeOverlay();\n }\n this.loadingEventSubject.next(this.isLoading);\n }\n\n resetLoading(): void {\n this.isLoading = false;\n this.numProcesses = 0;\n this.loadingEventSubject.next(this.isLoading);\n }\n\n get loadingEvent(): Observable {\n return this.loadingEventSubject.asObservable();\n }\n\n private setOverlay(): void {\n if (!this.isOverlayAttached) {\n this.isOverlayAttached = true;\n this.overlayRef.attach(this.loadingPortal);\n this.overlayContainer.style.zIndex = '1002';\n }\n }\n\n private removeOverlay(): void {\n this.isOverlayAttached = false;\n this.overlayRef.detach();\n this.overlayContainer.style.zIndex = null;\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { AppNotification } from './notification.model';\r\n\r\n@Injectable()\r\nexport class MainNotificationService {\r\n notificationEvent: Subject = new Subject();\r\n\r\n constructor() { }\r\n\r\n setNotification(notification: AppNotification): void {\r\n this.notificationEvent.next(notification);\r\n }\r\n}\r\n","export interface AppNotification {\r\n message: string;\r\n type?: NotificationType;\r\n milisecondsToShow?: number;\r\n}\r\n\r\nexport enum NotificationType {\r\n default = 1,\r\n success = 2,\r\n error = 3\r\n}\r\n","
        \r\n
        \r\n \r\n \r\n \r\n \r\n\r\n
        \r\n\r\n
        \r\n {{errorMessage}}\r\n
        \r\n
        \r\n {{name.source}}

        \r\n \r\n {{errorMessage}}\r\n
        \r\n\r\n \r\n
        \r\n
        \r\n GSRS Record
        \r\n {{ name._name}}\r\n
        \r\n
        \r\n \r\n
        \r\n
        \r\n\r\n
        \r\n
        \r\n","import {Component, OnInit, Output, EventEmitter, Input} from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { LoadingService } from '../loading/loading.service';\r\nimport { SubstanceSummary} from '../substance/substance.model';\r\nimport {PagingResponse} from '../utils/paging-response.model';\r\nimport {forkJoin} from 'rxjs';\r\nimport { ResolverResponse } from '../structure/structure-post-response.model';\r\nimport { SubstanceService } from '../substance/substance.service';\r\nimport { StructureService } from '../structure/structure.service';\r\nimport {SafeUrl} from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-name-resolver',\r\n templateUrl: './name-resolver.component.html',\r\n styleUrls: ['./name-resolver.component.scss']\r\n})\r\nexport class NameResolverComponent implements OnInit {\r\n resolverControl = new FormControl();\r\n resolved: string;\r\n errorMessage: string;\r\n resolvedNames: Array;\r\n matchedNames: PagingResponse;\r\n @Output() structureSelected = new EventEmitter();\r\n @Input() startingName?: string;\r\n\r\n constructor(\r\n private loadingService: LoadingService,\r\n private substanceService: SubstanceService,\r\n private structureService: StructureService\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (this.startingName) {\r\n this.resolverControl.setValue(this.startingName);\r\n setTimeout( () => {\r\n this.resolveName(this.startingName);\r\n });\r\n }\r\n }\r\n\r\n resolveNameKey(event: any): void {\r\n if (event.keyCode === 13) {\r\n this.resolveName(this.resolverControl.value);\r\n }\r\n }\r\n\r\n resolveName(name: string): void {\r\n this.errorMessage = '';\r\n this.resolvedNames = [];\r\n this.matchedNames = null;\r\n this.loadingService.setLoading(true);\r\n const n = name.replace('\"', '');\r\n const searchStr = `root_names_name:\"^${n}$\" OR root_approvalID:\"^${n}$\" OR root_codes_BDNUM:\"^${n}$\"`;\r\n forkJoin([this.substanceService.getQuickSubstancesSummaries(searchStr),\r\n this.structureService.resolveName(name)]).subscribe(([local, remote]) => {\r\n this.loadingService.setLoading(false);\r\n this.resolvedNames = remote;\r\n this.matchedNames = local;\r\n if (this.matchedNames.content.length === 0 && this.resolvedNames.length === 0) {\r\n this.errorMessage = 'no results found for \\'' + name + '\\'';\r\n }\r\n },\r\n error => {\r\n this.errorMessage = 'there was a problem returning your query';\r\n\r\n this.loadingService.setLoading(false);\r\n });\r\n }\r\n\r\n applyStructure(molfile: string) {\r\n this.structureSelected.emit(molfile);\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NameResolverComponent } from './name-resolver.component';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { RouterModule } from '@angular/router';\r\nimport { LoadingModule } from '../loading/loading.module';\r\nimport { NameResolverDialogComponent } from './name-resolver-dialog.component';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n RouterModule,\r\n LoadingModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [\r\n NameResolverComponent,\r\n NameResolverDialogComponent\r\n ],\r\n exports: [\r\n NameResolverComponent,\r\n NameResolverDialogComponent\r\n ],\r\n entryComponents: [\r\n NameResolverDialogComponent\r\n ]\r\n})\r\nexport class NameResolverModule { }\r\n","import { Directive, AfterViewInit, ElementRef, OnDestroy } from '@angular/core';\r\nimport { ScrollToService } from './scroll-to.service';\r\n\r\n@Directive({\r\n selector: '[appScrollToTarget]'\r\n})\r\nexport class ScrollToTargetDirective implements AfterViewInit, OnDestroy {\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private scrollToService: ScrollToService\r\n ) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.elementRef.nativeElement.id != null) {\r\n this.scrollToService.registerTargetElement(this.elementRef.nativeElement);\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.scrollToService.unregisterTargetElement(this.elementRef.nativeElement);\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ScrollToTriggerDirective } from './scroll-to-trigger.directive';\r\nimport { ScrollToTargetDirective } from './scroll-to-target.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n ScrollToTriggerDirective,\r\n ScrollToTargetDirective\r\n ],\r\n exports: [\r\n ScrollToTriggerDirective,\r\n ScrollToTargetDirective\r\n ]\r\n})\r\nexport class ScrollToModule { }\r\n","import { Subject, Observable } from 'rxjs';\r\n\r\nexport class ScrollToRegistration {\r\n triggerElement: HTMLAnchorElement | HTMLButtonElement | HTMLElement;\r\n targetElement?: HTMLElement;\r\n\r\n private registrationTerminatedSubject = new Subject();\r\n registrationTerminated = this.registrationTerminatedSubject.asObservable();\r\n\r\n constructor(\r\n triggerElement: HTMLAnchorElement | HTMLButtonElement | HTMLElement,\r\n private vAlign: 'start' | 'center' | 'end' | 'nearest',\r\n targetElement?: HTMLElement) {\r\n this.triggerElement = triggerElement;\r\n if (targetElement != null) {\r\n this.registerEventHandler(targetElement);\r\n }\r\n }\r\n\r\n registerEventHandler(targetElement?: HTMLElement): void {\r\n this.targetElement = targetElement;\r\n this.triggerElement.addEventListener('click', this.scrollToEventHandler);\r\n }\r\n\r\n private scrollToEventHandler = () => {\r\n if (this.targetElement != null) {\r\n this.targetElement.scrollIntoView({behavior: 'smooth', block: this.vAlign});\r\n setTimeout(() => {\r\n this.targetElement.classList.add('blink_me');\r\n setTimeout(() => {\r\n this.targetElement.classList.remove('blink_me');\r\n }, 400);\r\n }, 500);\r\n }\r\n }\r\n\r\n unregister(): void {\r\n this.triggerElement.removeEventListener('click', this.scrollToEventHandler);\r\n this.registrationTerminatedSubject.next(0);\r\n }\r\n\r\n inactivateRegistration(): void {\r\n this.triggerElement.removeEventListener('click', this.scrollToEventHandler);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ScrollToRegistration } from './scroll-to-registration.class';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ScrollToService {\r\n triggerElementsDictionary: { [targetElementId: string]: Array } = {};\r\n targetElements: Array = [];\r\n\r\n constructor() { }\r\n\r\n registerTriggerElement(\r\n targetElementId: string,\r\n triggerElement: HTMLAnchorElement | HTMLButtonElement | HTMLElement,\r\n vAlign: 'start' | 'center' | 'end' | 'nearest' | 'start'): ScrollToRegistration {\r\n\r\n const targetElement = this.targetElements.find(elementItem => elementItem.id === targetElementId);\r\n\r\n const registration = new ScrollToRegistration(triggerElement, vAlign, targetElement);\r\n\r\n if (this.triggerElementsDictionary[targetElementId] == null) {\r\n this.triggerElementsDictionary[targetElementId] = [];\r\n }\r\n\r\n this.triggerElementsDictionary[targetElementId].push(registration);\r\n\r\n registration.registrationTerminated.subscribe(() => {\r\n const indexToRemove = this.triggerElementsDictionary[targetElementId].findIndex(registrationInstance => {\r\n return registrationInstance.triggerElement.isEqualNode(registration.triggerElement);\r\n });\r\n\r\n if (indexToRemove > -1) {\r\n this.triggerElementsDictionary[targetElementId].splice(indexToRemove, 1);\r\n }\r\n });\r\n\r\n return registration;\r\n }\r\n\r\n registerTargetElement(targetElement: HTMLElement): void {\r\n this.targetElements.push(targetElement);\r\n if (this.triggerElementsDictionary[targetElement.id] != null) {\r\n this.triggerElementsDictionary[targetElement.id].forEach((registration) => {\r\n registration.registerEventHandler(targetElement);\r\n });\r\n }\r\n }\r\n\r\n unregisterTargetElement(targetElement: HTMLElement): void {\r\n if (this.triggerElementsDictionary[targetElement.id] != null) {\r\n this.triggerElementsDictionary[targetElement.id].forEach((registration) => {\r\n registration.inactivateRegistration();\r\n });\r\n }\r\n const indexToRemove = this.targetElements.findIndex(element => element.id === targetElement.id);\r\n\r\n if (indexToRemove > -1) {\r\n this.targetElements.splice(indexToRemove, 1);\r\n }\r\n }\r\n\r\n scrollToElement(id: string, vAlign: 'start' | 'center' | 'end' | 'nearest' = 'start'): void {\r\n const targetElement = this.targetElements.find(element => element.id === id);\r\n if (targetElement != null) {\r\n targetElement.scrollIntoView({ behavior: 'smooth', block: vAlign });\r\n setTimeout(() => {\r\n targetElement.classList.add('blink_me');\r\n setTimeout(() => {\r\n targetElement.classList.remove('blink_me');\r\n }, 400);\r\n }, 500);\r\n }\r\n }\r\n\r\n}\r\n","import { Ketcher } from 'ketcher-wrapper';\r\nimport { JSDraw } from 'jsdraw-wrapper';\r\nimport { Editor } from './structure.editor.model';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport class EditorImplementation implements Editor {\r\n private ketcher?: Ketcher;\r\n private jsdraw?: JSDraw;\r\n\r\n constructor(ketcher?: Ketcher, jsdraw?: JSDraw) {\r\n this.ketcher = ketcher;\r\n this.jsdraw = jsdraw;\r\n }\r\n\r\n getMolfile(): string {\r\n if (this.ketcher != null) {\r\n return this.ketcher.getMolfile();\r\n } else if (this.jsdraw != null) {\r\n const chargeLine = this.getMCharge();\r\n let mfile = this.jsdraw.getMolfile();\r\n mfile = mfile.replace(/0.0000[ ]D[ ][ ][ ]/g, '0.0000 H ');\r\n\r\n if (mfile.indexOf('M CHG') < 0) {\r\n if (chargeLine !== null) {\r\n const lines = mfile.split('\\n');\r\n for (let i = lines.length - 1; i >= 3; i--) {\r\n if (lines[i] === 'M END') {\r\n const old = lines[i];\r\n lines[i] = chargeLine;\r\n lines[i + 1] = old;\r\n mfile = lines.join('\\n');\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return this.clean(mfile);\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n getSmiles(): string {\r\n if (this.ketcher != null) {\r\n return this.ketcher.getSmiles();\r\n } else if (this.jsdraw != null) {\r\n return this.jsdraw.getSmiles();\r\n }\r\n }\r\n\r\n private clean(molfile: string): string {\r\n molfile = molfile.replace(/M[ ]*SMT.*mul.*/g, '@')\r\n .replace(/\\n/g, '|_|')\r\n .replace(/[@][|][_][|]/g, '')\r\n .replace(/[|][_][|]/g, '\\n');\r\n \r\n // This corrects a rather silly bug\r\n // where JSDraw repeats SMT groups for polymers,\r\n // causing a lot of unforunate side effects\r\n\r\n if (molfile.indexOf('M STY') >= 0) {\r\n const lines = molfile.split('\\n');\r\n let dupCount = 0;\r\n let tset = {};\r\n Array.from(lines)\r\n .filter(l=>l.indexOf('M SMT')>=0)\r\n .map(l=>l.substring(0,10))\r\n .map(l=>{\r\n if(tset[l]){\r\n dupCount++;\r\n }\r\n tset[l]=1;\r\n });\r\n if(dupCount>0){\r\n // This just replaces each SMT line with the STY group number defined before it\r\n // The '!#!' and '@' symbols are used as temporary \"protecting groups\"\r\n molfile = molfile.replace(/@/g,'!#!')\r\n .replace(/STY/g,'@')\r\n .replace(/(M[ ][ ]@[ ][ ]1)([ ]*[0-9]*)([^@]*)SMT([ ]*[0-9]*)/g,'$1$2$3SMT$2')\r\n .replace(/@/g,'STY')\r\n .replace(/!#!/g,'@');\r\n }\r\n }\r\n return molfile;\r\n }\r\n\r\n setMolecule(molfile: string): void {\r\n if (this.ketcher != null) {\r\n this.ketcher.setMolecule(molfile);\r\n } else if (this.jsdraw != null) {\r\n // from simple tests, this should push the current molecule down\r\n // on the undo stack.\r\n this.jsdraw.pushundo();\r\n this.jsdraw.options.data = molfile;\r\n this.jsdraw.setMolfile(molfile);\r\n }\r\n }\r\n\r\n structureUpdated(): Observable {\r\n return new Observable(observer => {\r\n if (this.jsdraw != null) {\r\n this.jsdraw.options.ondatachange = () => {\r\n const molFile = this.getMolfile();\r\n observer.next(molFile);\r\n };\r\n } else {\r\n observer.next('');\r\n }\r\n });\r\n }\r\n\r\n getMCharge(): string {\r\n if (this.jsdraw != null) {\r\n const xml = this.jsdraw.getXml();\r\n\r\n let aai = 1;\r\n\r\n const parser = new DOMParser();\r\n const xmlDoc = parser.parseFromString(xml, 'text/xml');\r\n\r\n const charges = Array.from(xmlDoc.getElementsByTagName('a'))\r\n .filter(element => element.hasAttribute('i'))\r\n .map(a => {\r\n const ai = a.getAttribute('i');\r\n let ac = Number(a.getAttribute('c'));\r\n if (typeof ac === 'undefined') {\r\n ac = 0;\r\n }\r\n const o: any = {\r\n i: (aai++),\r\n c: (ac - 0)\r\n };\r\n o.toString = () => {\r\n return this.leftPad(o.i + '', 4) + this.leftPad(o.c + '', 4);\r\n };\r\n return o;\r\n })\r\n .filter(a => {\r\n return a.c !== 0;\r\n });\r\n\r\n if (charges.length > 0) {\r\n return charges.reduce((arr, item, idx) => {\r\n return idx % 8 === 0\r\n ? [...arr, [item]]\r\n : [...arr.slice(0, -1), [...arr.slice(-1)[0], item]];\r\n }, [])\r\n .map(c => {\r\n return 'M CHG' + this.leftPad(c.length + '', 3) +\r\n c.map(ic => ic.toString()).join('');\r\n });\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n private rep(v: string, n: number) {\r\n let t = '';\r\n for (let i = 0; i < n; i++) {\r\n t = t + v;\r\n }\r\n return t;\r\n }\r\n\r\n private leftPad (v: string, p: number) {\r\n return this.rep(' ', p - v.length) + v;\r\n }\r\n}\r\n","import { Directive, Output, HostListener, EventEmitter, Input , OnInit } from '@angular/core';\n\n@Directive({\n selector: '[appDragDropPaste]',\n})\nexport class DragDropPasteDirective {\n\n @Output() dropHandler: EventEmitter = new EventEmitter();\n\n public dragging: boolean;\n public loaded: boolean;\n public imageSrc: string;\n public invalidFlag: boolean;\n public file: any;\n\n\n @HostListener('dragover') onDragOver() {\n return false;\n }\n @HostListener('dragenter') handleDragEnter() {\n this.dragging = true;\n }\n @HostListener('dragleave') handleDragLeave() {\n this.dragging = false;\n }\n @HostListener('drop', ['$event']) handleDrop(e) {\n e.preventDefault();\n this.dragging = false;\n this.handleInputChange(e);\n }\n\n OnInit() {\n }\n\n handlePaste(e): void {\n const items = e.clipboardData.items;\n this.invalidFlag = true;\n for (let i = 0; i < items.length; i++) {\n const blob = items[i].getAsFile();\n if (items[i].type.indexOf('image') !== -1) {\n const reader = new FileReader();\n this.invalidFlag = false;\n this.file = blob;\n reader.onload = this.handleReaderLoaded.bind(this);\n reader.readAsDataURL(blob);\n }\n }\n if (this.invalidFlag === true) {\n this.dropHandler.emit({ event: e, invalidFlag: this.invalidFlag });\n }\n }\n\n handleInputChange(e): void {\n const file = e.dataTransfer ? e.dataTransfer.files[0] : 'null';\n this.invalidFlag = false;\n const pattern = /image-*/;\n const reader = new FileReader();\n if (!file.type.match(pattern)) {\n this.invalidFlag = true;\n return this.dropHandler.emit({ event: e, invalidFlag: this.invalidFlag });\n }\n this.loaded = false;\n this.file = file;\n reader.onload = this.handleReaderLoaded.bind(this);\n reader.readAsDataURL(file);\n }\n\n handleReaderLoaded(e): void {\n const reader = e.target;\n this.imageSrc = reader.result;\n this.loaded = true;\n this.dropHandler.emit({ event: e, backup: this.file, invalidFlag: this.invalidFlag });\n }\n\n}\n","
        \r\n\r\n\r\n\r\n\r\n\r\n
        \r\n
        \r\n \r\n
        \r\n Load an image by pasting a copied image into the canvas with ctrl + v, or dragging a local image file\r\n
        \r\n \r\n
        \r\n \r\n
        \r\n
        \r\n \r\n
        \r\n
        \r\n
        0\">Original Image:\r\n {{canvasToggle? 'hide': 'show'}}\r\n
        \r\n
        \r\n
        {{canvasMessage}}
        \r\n \r\n \r\n
        \r\n
        \r\n
        \r\n\r\n\r\n \r\n \r\n \r\n ","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n PLATFORM_ID,\r\n Inject,\r\n OnDestroy,\r\n ViewChild,\r\n ElementRef, AfterViewInit\r\n} from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { Ketcher } from 'ketcher-wrapper';\r\nimport { EditorImplementation } from './structure-editor-implementation.model';\r\nimport { JSDraw } from 'jsdraw-wrapper';\r\nimport { environment } from '../../../environments/environment';\r\nimport { StructureService } from '@gsrs-core/structure';\r\nimport { LoadingService } from '@gsrs-core/loading';\r\nimport { take } from 'rxjs/operators';\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-structure-editor',\r\n templateUrl: './structure-editor.component.html',\r\n styleUrls: ['./structure-editor.component.scss']\r\n})\r\nexport class StructureEditorComponent implements OnInit, AfterViewInit, OnDestroy {\r\n editor: EditorImplementation;\r\n @Output() editorOnLoad = new EventEmitter();\r\n @Output() loadedMolfile = new EventEmitter();\r\n private ketcher: Ketcher;\r\n private jsdraw: JSDraw;\r\n structureEditor: string;\r\n anchorElement: HTMLAnchorElement;\r\n smiles: string;\r\n mol: string;\r\n height = 0;\r\n width = 0;\r\n canvasToggle = true;\r\n canvasMessage = '';\r\n tempClass = \"\";\r\n @ViewChild('structure_canvas', { static: false }) myCanvas: ElementRef;\r\n public context: CanvasRenderingContext2D;\r\n public canvasCopy: HTMLCanvasElement;\r\n private jsdrawScriptUrls = [\r\n `${environment.baseHref || ''}assets/dojo/dojo.js`,\r\n `${environment.baseHref || ''}assets/jsdraw/Scilligence.JSDraw2.Pro.js`,\r\n `${environment.baseHref || ''}assets/jsdraw/Scilligence.JSDraw2.Resources.js`,\r\n `${environment.baseHref || ''}assets/jsdraw/JSDraw.extensions.js`\r\n\r\n ];\r\n ketcherFilePath: string;\r\n\r\n constructor(\r\n @Inject(PLATFORM_ID) private platformId: Object,\r\n private structureService: StructureService,\r\n private loadingService: LoadingService,\r\n private elementRef: ElementRef\r\n ) { }\r\n\r\n ngOnDestroy(): void {\r\n window.removeEventListener('drop', this.preventDrag);\r\n window.removeEventListener('dragover', this.preventDrag);\r\n window.removeEventListener('paste', this.checkPaste);\r\n (this.myCanvas.nativeElement).removeEventListener('click', this.click);\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.context = (this.myCanvas.nativeElement).getContext('2d');\r\n this.canvasCopy = this.myCanvas.nativeElement;\r\n const test = (this.myCanvas.nativeElement);\r\n if (test) {\r\n test.addEventListener('click', this.click);\r\n }\r\n }\r\n\r\n private preventDrag = (event: DragEvent) => {\r\n event.preventDefault();\r\n }\r\n\r\n// override JSDraw for Molvec paste event. Using the JSDraw menu copy function seems to ignore this at first\r\n checkPaste = (event: ClipboardEvent ) => {\r\n event.stopPropagation();\r\n event.stopImmediatePropagation();\r\n if (this.jsdraw && this.jsdraw.activated) {\r\n this.catchPaste(event);\r\n }\r\n }\r\n\r\n\r\n// when a dialog is opened / z-index changes occur, the editor loses it's reference this resets it when it's focused\r\n// there is probably a better way of doing this by applying something to all dialog close events. you must first set it to 0 to take\r\n click = (event: Event ) => {\r\n this.tempClass = 'high';\r\n setTimeout(() => {\r\n this.tempClass = 'higher';\r\n }, 10);\r\n }\r\n\r\n ngOnInit() {\r\n if (isPlatformBrowser(this.platformId)) {\r\n\r\n window.addEventListener('dragover', this.preventDrag);\r\n window.addEventListener('drop', this.preventDrag);\r\n window.addEventListener('paste', this.checkPaste);\r\n\r\n this.ketcherFilePath = `${environment.baseHref || ''}assets/ketcher/ketcher.html`;\r\n\r\n this.structureEditor = environment.structureEditor;\r\n\r\n if (environment.structureEditor === 'jsdraw' && !window['JSDraw']) {\r\n\r\n // this is extremely hacky but no way around it\r\n\r\n const defaultDocumentWriteFunction = document.write;\r\n\r\n document.write = (content) => {\r\n if (content === '') {\r\n const styleElement = document.createElement('style');\r\n styleElement.innerHTML = 'input._scil_dropdown::-ms-clear {display: none;}';\r\n document.getElementsByTagName('head')[0].appendChild(styleElement);\r\n } else {\r\n defaultDocumentWriteFunction(content);\r\n }\r\n };\r\n\r\n for (let i = 0; i < this.jsdrawScriptUrls.length; i++) {\r\n const node = document.createElement('script');\r\n node.src = this.jsdrawScriptUrls[i];\r\n node.type = 'text/javascript';\r\n node.async = false;\r\n document.getElementsByTagName('head')[0].appendChild(node);\r\n }\r\n }\r\n }\r\n }\r\n\r\n ketcherOnLoad(ketcher: Ketcher): void {\r\n this.ketcher = ketcher;\r\n this.editor = new EditorImplementation(this.ketcher);\r\n this.editorOnLoad.emit(this.editor);\r\n }\r\n\r\n jsDrawOnLoad(jsdraw: JSDraw): void {\r\n this.jsdraw = jsdraw;\r\n this.editor = new EditorImplementation(null, this.jsdraw);\r\n this.editorOnLoad.emit(this.editor);\r\n }\r\n\r\n get _jsdrawScriptUrls(): Array {\r\n return this.jsdrawScriptUrls;\r\n }\r\n\r\n onDropHandler(object: any): void {\r\n if (object.invalidFlag) {\r\n this.canvasMessage = 'The selected file could not be read';\r\n } else {\r\n const img = object.event.target.result;\r\n this.createImage(img);\r\n }\r\n }\r\n\r\n\r\n sendToMolvec(img: string) {\r\n this.canvasMessage = '';\r\n this.loadingService.setLoading(true);\r\n this.structureService.molvec(img).subscribe(response => {\r\n const mol = response.molfile;\r\n this.loadedMolfile.emit(mol);\r\n this.loadingService.setLoading(false);\r\n }, error => {\r\n this.canvasMessage = 'Structure not detectable';\r\n this.loadingService.setLoading(false);\r\n });\r\n }\r\n\r\n createImage(url: string): void {\r\n const img = new Image;\r\n img.src = url;\r\n img.onload = () => {\r\n this.canvasToggle = true;\r\n this.height = img.height;\r\n this.width = img.width;\r\n setTimeout(() => {\r\n // drawing on canvas and using it to get another data url yields better results.\r\n this.context.drawImage(img, 0, 0, img.width, img.height);\r\n url = this.canvasCopy.toDataURL();\r\n setTimeout(() => {\r\n // compress data url to below molvec max\r\n if (url.length > 100000) {\r\n url = this.canvasCopy.toDataURL('image/jpeg', 100000 / url.length);\r\n }\r\n this.context.clearRect(0, 0, this.canvasCopy.width, this.canvasCopy.height);\r\n while ((img.height > 700) || (img.width > 900)) {\r\n img.height = img.height * .9;\r\n img.width = img.width * .9;\r\n }\r\n this.canvasCopy.width = img.width;\r\n this.canvasCopy.height = img.height;\r\n this.context.drawImage(img, 0, 0, img.width, img.height);\r\n this.sendToMolvec(url);\r\n });\r\n });\r\n };\r\n }\r\n\r\n catchPaste(event: ClipboardEvent): void {\r\n const send: any = {};\r\n let valid = false;\r\n const items = event.clipboardData.items;\r\n for (let i = 0; i < items.length; i++) {\r\n const blob = items[i].getAsFile();\r\n if (items[i].type.indexOf('image') !== -1) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n valid = true;\r\n send.type = 'image';\r\n const reader = new FileReader();\r\n send.file = blob;\r\n reader.readAsDataURL(blob);\r\n const that = this;\r\n reader.onloadend = () => {\r\n setTimeout(() => {\r\n const img = reader.result.toString();\r\n that.createImage(img);\r\n });\r\n };\r\n } else if (items[i].type === 'text/plain') {\r\n const text = event.clipboardData.getData('text/plain');\r\n if (text.indexOf(' {\r\n if (response.structure && response.structure.molfile) {\r\n this.loadedMolfile.emit(response.structure.molfile);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n cleanStructure() {\r\n const molfile = this.editor.getMolfile();\r\n\r\n if (molfile != null && molfile !== '') {\r\n this.structureService.interpretStructure(molfile).pipe(take(1)).subscribe(response => {\r\n if (response && response.structure && response.structure.smiles) {\r\n this.cleanStructureSmiles(response.structure.smiles);\r\n }\r\n });\r\n }\r\n }\r\n\r\n cleanStructureSmiles(smiles: string) {\r\n if (smiles != null && smiles !== '') {\r\n this.structureService.interpretStructure(smiles).pipe(take(1)).subscribe(response => {\r\n if (response && response.structure && response.structure.molfile) {\r\n this.editor.setMolecule(response.structure.molfile);\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n standardize(standard: string): void {\r\n this.loadingService.setLoading(true);\r\n const mol = this.editor.getMolfile();\r\n this.structureService.interpretStructure(mol, '', standard).pipe(take(1)).subscribe((response: any) => {\r\n if (response && response.structure && response.structure.molfile) {\r\n this.editor.setMolecule(response.structure.molfile);\r\n }\r\n this.loadingService.setLoading(false);\r\n }, () => {this.loadingService.setLoading(false); });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { KetcherWrapperModule } from 'ketcher-wrapper';\r\nimport { JsdrawWrapperModule } from 'jsdraw-wrapper';\r\nimport { FileSelectModule } from 'file-select';\r\n\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { StructureEditorComponent } from './structure-editor.component';\r\nimport {DragDropPasteDirective} from '@gsrs-core/substance-form/structure/drag-drop-paste.component';\r\nimport { StructureModule } from '@gsrs-core/structure/structure.module';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatProgressBarModule,\r\n MatMenuModule,\r\n ReactiveFormsModule,\r\n KetcherWrapperModule,\r\n JsdrawWrapperModule,\r\n FileSelectModule,\r\n StructureModule\r\n ],\r\n declarations: [\r\n StructureEditorComponent,\r\n DragDropPasteDirective\r\n ],\r\n exports: [\r\n StructureEditorComponent\r\n ]\r\n})\r\nexport class StructureEditorModule { }\r\n","

        \n Export\n

        \n
        \n \n \n \n \n \n \n \n \n
        \n
        \n \n \n \n
        \n","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { FormControl } from '@angular/forms';\n\n@Component({\n selector: 'app-structure-export',\n templateUrl: './structure-export.component.html',\n styleUrls: ['./structure-export.component.scss']\n})\nexport class StructureExportComponent implements OnInit {\n anchorElement: HTMLAnchorElement;\n selectedIndex = 0;\n private downloadFunctions = [\n function downloadMol(\n data: { molfile: string, smiles: string},\n anchorElement: HTMLAnchorElement,\n downloadFile: any): void {\n if (data.molfile != null) {\n const file = new Blob([data.molfile], { type: 'chemical/x-mdl-molfile' });\n anchorElement.download = 'substance_structure.mol';\n downloadFile(file, anchorElement);\n }\n },\n function downloadSmiles(\n data: { molfile: string, smiles: string },\n anchorElement: HTMLAnchorElement,\n downloadFile: any): void {\n if (data.smiles != null) {\n const file = new Blob([data.smiles], { type: 'text/plain' });\n anchorElement.download = 'substance_smiles.smi';\n downloadFile(file, anchorElement);\n }\n }\n ];\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: { molfile: string, smiles: string, type: string }\n ) {\n this.anchorElement = document.createElement('a') as HTMLAnchorElement;\n }\n\n ngOnInit() {\n }\n\n selectedIndexChange(index: number): void {\n this.selectedIndex = index;\n }\n\n download(): void {\n this.downloadFunctions[this.selectedIndex](this.data, this.anchorElement, this.downloadFile);\n }\n\n private downloadFile(file: Blob, anchorElement: HTMLAnchorElement): void {\n anchorElement.href = window.URL.createObjectURL(file);\n anchorElement.click();\n }\n\n dismissDialog(): void {\n this.dialogRef.close();\n }\n}\n","
        \r\n
        \r\n \r\n
        \r\n \r\n \r\n {{approvalID}}\r\n \r\n
        \r\n
        \r\n \r\n
        \r\n
        \r\n \r\n \r\n {{displayName}}\r\n \r\n
        \r\n 0) || inchi || inchiKey\">\r\n 0\">\r\n
          \r\n
        • \r\n {{name}}\r\n
        • \r\n
        \r\n
        \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
        \r\n
        \r\n
        \r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport {MAT_DIALOG_DATA, MatDialogRef, } from '@angular/material/dialog';\r\nimport { SafeUrl } from '@angular/platform-browser';\r\nimport { StructureService } from '../structure.service';\r\n\r\n@Component({\r\n selector: 'app-structure-image-modal',\r\n templateUrl: './structure-image-modal.component.html',\r\n styleUrls: ['./structure-image-modal.component.scss']\r\n})\r\nexport class StructureImageModalComponent implements OnInit {\r\n structure: string;\r\n smiles: string;\r\n inchi: string;\r\n inchiKey: string;\r\n approvalID: string;\r\n uuid: string;\r\n displayName: string;\r\n names: string[] = [];\r\n constructor(\r\n private utilsService: UtilsService,\r\n private structureService: StructureService,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.structure = (this.data && this.data.structure) ? this.data.structure : null;\r\n if (this.data.smiles) {\r\n this.smiles = this.data.smiles;\r\n this.structureService.getOtherInchi(this.data.uuid).subscribe(inchi => {\r\n this.inchi = inchi;\r\n });\r\n this.structureService.getInchi(this.data.uuid).subscribe(inchiKey=> {\r\n this.inchiKey = inchiKey;\r\n });\r\n }\r\n if (this.data && this.data.names && this.data.names.length) {\r\n for (const name of this.data.names) {\r\n if (name.type === 'sys') {\r\n this.names.push(name.name);\r\n }\r\n }\r\n }\r\n if (this.data && this.data.approvalID) {\r\n this.approvalID = this.data.approvalID;\r\n }\r\n if (this.data && this.data.uuid) {\r\n this.uuid = this.data.uuid;\r\n }\r\n if (this.data && this.data.displayName) {\r\n this.displayName = this.data.displayName;\r\n }\r\n }\r\n\r\n dismissDialog(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","

        \r\n Import Structure\r\n

        \r\n
        \r\n
        Enter molfile or smiles:
        \r\n
        \r\n \r\n
        \r\n
        \r\n\r\n
        \r\n {{message}}\r\n
        \r\n
        \r\n \r\n \r\n \r\n \r\n
        \r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { FormControl } from '@angular/forms';\r\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\r\nimport { StructureService } from '../structure.service';\r\n\r\n@Component({\r\n selector: 'app-structure-import',\r\n templateUrl: './structure-import.component.html',\r\n styleUrls: ['./structure-import.component.scss']\r\n})\r\nexport class StructureImportComponent implements OnInit {\r\n isLoading = false;\r\n importTextControl = new FormControl();\r\n messageClass = 'error';\r\n message: string;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n public gaService: GoogleAnalyticsService,\r\n private structureService: StructureService\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n importStructure(): void {\r\n this.message = null;\r\n if (this.importTextControl.value) {\r\n this.isLoading = true;\r\n this.structureService.interpretStructure(this.importTextControl.value).subscribe(response => {\r\n this.isLoading = false;\r\n if (response && response.structure && response.structure.molfile) {\r\n this.gaService.sendEvent('structureImport', 'button:import', 'file imported');\r\n this.dialogRef.close(response);\r\n } else {\r\n this.messageClass = 'error';\r\n this.message = 'You need to enter a valid molfile or smiles';\r\n this.gaService.sendException('wrong structure data imported');\r\n }\r\n\r\n }, error => {\r\n this.isLoading = false;\r\n this.messageClass = 'error';\r\n this.message = 'There was an error importing your structure. Please refresh and try again.';\r\n this.gaService.sendException('postSubstanceStructure error');\r\n });\r\n } else {\r\n this.messageClass = 'error';\r\n this.message = 'You have not entered anything to import';\r\n this.gaService.sendException('no structure data entered for import');\r\n }\r\n }\r\n\r\n fileBrowse() {\r\n this.gaService.sendEvent('structureImport', 'button:browse-file', 'browse file');\r\n }\r\n\r\n fileSelected(file: File): void {\r\n this.gaService.sendEvent('structureImport', 'file-selected', 'file selected');\r\n if (file) {\r\n const fileReader = new FileReader();\r\n fileReader.onload = () => {\r\n this.importTextControl.setValue(fileReader.result);\r\n };\r\n fileReader.readAsText(file);\r\n }\r\n }\r\n\r\n dismissDialog(): void {\r\n this.gaService.sendEvent('structureImport', 'button:close', 'no file imported');\r\n this.dialogRef.close();\r\n }\r\n\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { StructureExportComponent } from './structure-export/structure-export.component';\nimport { StructureImageModalComponent } from './structure-image-modal/structure-image-modal.component';\nimport { StructureImportComponent } from './structure-import/structure-import.component';\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatTabsModule} from '@angular/material/tabs';\nimport {MatButtonModule} from '@angular/material/button';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { Router, NavigationExtras, RouterModule } from '@angular/router';\nimport { FileSelectModule } from 'file-select';\n\n\n@NgModule({\n declarations: [\n StructureExportComponent,\n StructureImageModalComponent,\n StructureImportComponent\n ],\n imports: [\n CommonModule,\n MatIconModule,\n MatTabsModule,\n SubstanceImageModule,\n FormsModule,\n ReactiveFormsModule,\n MatProgressBarModule,\n MatButtonModule,\n RouterModule,\n FileSelectModule\n ],\n exports: [\n StructureExportComponent,\n StructureImageModalComponent,\n StructureImportComponent\n ],\n entryComponents: [\n StructureExportComponent,\n StructureImageModalComponent,\n StructureImportComponent\n ]\n})\nexport class StructureModule { }\n","import { Injectable } from '@angular/core';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { ConfigService } from '../config/config.service';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { SubstanceDetail, SubstanceStructure, SubstanceMoiety } from '../substance/substance.model';\r\nimport { ResolverResponse } from './structure-post-response.model';\r\nimport { InterpretStructureResponse } from './structure-post-response.model';\r\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StructureService {\r\n\r\n constructor(\r\n private sanitizer: DomSanitizer,\r\n public configService: ConfigService,\r\n private http: HttpClient\r\n ) {\r\n }\r\n\r\n getSafeStructureImgUrl(structureId: string, size: number = 150): SafeUrl {\r\n const imgUrl = `${this.configService.configData.apiBaseUrl}img/${structureId}.svg?size=${size.toString()}`;\r\n return this.sanitizer.bypassSecurityTrustUrl(imgUrl);\r\n }\r\n\r\n getMolfile(id: string): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}img/${id}.mol`;\r\n return this.http.get(url, {responseType: 'text'});\r\n }\r\n\r\n downloadMolfile(id: string): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}img/${id}.mol`;\r\n return this.http.get(url, {responseType: 'blob' as 'json'});\r\n }\r\n //TODO: this is the inchikey, should be renamed\r\n getInchi(id: string): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances(${id})/$structure!$inchikey()`;\r\n return this.http.get(url, {responseType: 'text'});\r\n }\r\n\r\n getSDFile(id: string): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}api/v1/export/${id}.SDFile`;\r\n return this.http.get(url, {responseType: 'text'});\r\n }\r\n\r\n //TODO: this is the full inchi, should be renamed\r\n getOtherInchi(id: string): Observable {\r\n // get the other half of the inchi\r\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances(${id})/$structure!$inchi()`;\r\n return this.http.get(url, {responseType: 'text'});\r\n }\r\n\r\n resolveName(name: string): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}resolve?name=${encodeURIComponent(name)}`;\r\n return this.http.get(url);\r\n }\r\n\r\n formatFormula(structure: SubstanceStructure ):string {\r\n if (structure.formula == null) {\r\n return '';\r\n }\r\n let HTMLFormula = structure.formula.replace(/([a-zA-Z])([0-9]+)/g, '$1$2');\r\n if (structure.charge != null && structure.charge !== 0 && !HTMLFormula.includes('.')) {\r\n let sCharge = structure.charge.toString();\r\n console.log(sCharge);\r\n let sSign = '+';\r\n if (structure.charge < 0) {\r\n sCharge = sCharge.substring(1);\r\n sSign = '-';\r\n console.log(sCharge);\r\n\r\n }\r\n if ('1' === (sCharge)) {\r\n sCharge = '';\r\n }\r\n HTMLFormula = HTMLFormula + '' + sCharge + sSign + '';\r\n console.log(HTMLFormula);\r\n\r\n }\r\n return HTMLFormula;\r\n}\r\n\r\n getName(name: string): Observable {\r\n let params = new HttpParams();\r\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/search`;\r\n const n = name.replace('\"', '');\r\n // Needs sanitation\r\n params = params.append('q', 'root_names_name:\"^' + n + '$\" OR ' +\r\n 'root_approvalID:\"^' + n + '$\" OR ' +\r\n 'root_codes_BDNUM:\"^' + n + '$\"');\r\n const options = {\r\n params: params\r\n };\r\n return this.http.get(url, options);\r\n }\r\n\r\n interpretStructure(mol: string, mode?: string, standardize?: string ): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/interpretStructure?mode=${mode ? mode:''}&standardize=${(standardize ? standardize:'')}`;\r\n return this.http.post(url, mol);\r\n }\r\n\r\n molvec(file: any): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/ocrStructure`;\r\n return this.http.post(url, file);\r\n\r\n }\r\n\r\n duplicateCheck(sub: SubstanceDetail): Observable {\r\n const url = `${this.configService.configData.apiBaseUrl}register/duplicateCheck`;\r\n return this.http.post(url, sub);\r\n }\r\n}\r\n","import { SubstanceCardBase } from './substance-card-base';\r\nimport { PageEvent } from '@angular/material/paginator';\r\nimport { FormControl } from '@angular/forms';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\nimport { environment } from '../../../environments/environment';\r\n\r\nexport class SubstanceCardBaseFilteredList extends SubstanceCardBase {\r\n filtered: Array;\r\n paged: Array;\r\n page = 0;\r\n pageSize = 5;\r\n private searchTimer: any;\r\n searchControl = new FormControl();\r\n\r\n constructor(\r\n public gaService: GoogleAnalyticsService\r\n ) {\r\n super();\r\n }\r\n\r\n pageChange(pageEvent?: PageEvent, analyticsEventCategory?: string): void {\r\n\r\n if (pageEvent != null) {\r\n\r\n let eventAction;\r\n let eventValue;\r\n\r\n if (this.pageSize !== pageEvent.pageSize) {\r\n eventAction = 'select:page-size';\r\n eventValue = pageEvent.pageSize;\r\n } else if (this.page !== pageEvent.pageIndex) {\r\n eventAction = 'icon-button:page-number';\r\n eventValue = pageEvent.pageIndex + 1;\r\n }\r\n\r\n this.gaService.sendEvent(analyticsEventCategory, eventAction, 'pager', eventValue);\r\n\r\n this.page = pageEvent.pageIndex;\r\n this.pageSize = pageEvent.pageSize;\r\n }\r\n\r\n this.paged = [];\r\n const startIndex = this.page * this.pageSize;\r\n for (let i = startIndex; i < (startIndex + this.pageSize); i++) {\r\n if (this.filtered[i] != null) {\r\n this.paged.push(this.filtered[i]);\r\n } else {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n filterList(searchInput: string, listToFilter: Array, analyticsEventCategory: string = 'substance card'): void {\r\n if (this.searchTimer != null) {\r\n clearTimeout(this.searchTimer);\r\n }\r\n\r\n this.searchTimer = setTimeout(() => {\r\n\r\n const eventLabel = !environment.isAnalyticsPrivate && searchInput || 'input value';\r\n\r\n this.gaService.sendEvent(analyticsEventCategory, 'search', eventLabel);\r\n\r\n this.filtered = [];\r\n listToFilter.forEach(item => {\r\n\r\n const itemString = JSON.stringify(item).toLowerCase();\r\n if (itemString.indexOf(searchInput.toLowerCase()) > -1) {\r\n this.filtered.push(item);\r\n }\r\n });\r\n clearTimeout(this.searchTimer);\r\n this.searchTimer = null;\r\n this.page = 0;\r\n this.pageChange();\r\n }, 700);\r\n }\r\n}\r\n","import { SubstanceDetail } from '../substance/substance.model';\r\nimport { Output, EventEmitter, Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport abstract class SubstanceCardBase {\r\n substance: SubstanceDetail;\r\n title: string;\r\n analyticsEventCategory: string;\r\n @Output() countUpdate = new EventEmitter();\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { SubstanceDetail } from '../substance/substance.model';\r\nimport { SubstanceCardFilterParameters } from '../config/config.model';\r\nimport { Observable } from 'rxjs';\r\nimport {AuthService} from '@gsrs-core/auth/auth.service';\r\n\r\nexport const SUBSTANCE_CARDS_FILTERS = new InjectionToken('SUBSTANCE_CARDS_FILTERS');\r\n\r\nexport interface SubstanceCardFilter {\r\n name: string;\r\n filter: (\r\n substance: SubstanceDetail,\r\n filterParameters: SubstanceCardFilterParameters,\r\n http?: HttpClient,\r\n auth?: AuthService\r\n ) => Observable;\r\n}\r\n","export function getEvaluatedProperty(substance: any, propertyToCheck?: string): any {\r\n\r\n if (propertyToCheck == null) {\r\n return null;\r\n } else if (propertyToCheck.indexOf('.') > -1) {\r\n const properties = propertyToCheck.split('.');\r\n let evaluatedObject = substance;\r\n const lastIndex = properties.length - 1;\r\n for (let i = 0; i < properties.length; i++) {\r\n if (i !== lastIndex) {\r\n if (evaluatedObject[properties[i]] != null\r\n && Object.prototype.toString.call(evaluatedObject[properties[i]]) === '[object Object]') {\r\n evaluatedObject = evaluatedObject[properties[i]];\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n return evaluatedObject[properties[i]];\r\n }\r\n }\r\n } else {\r\n return substance[propertyToCheck];\r\n }\r\n}\r\n","import { SubstanceCardFilter } from './substance-cards-filter.model';\r\nimport { SubstanceDetail } from '../substance/substance.model';\r\nimport { SubstanceCardFilterParameters } from '../config/config.model';\r\nimport { getEvaluatedProperty } from './substance-cards-utils';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService} from '@gsrs-core/auth/auth.service';\r\nimport {HttpClient} from '@angular/common/http';\r\n\r\nexport const substanceCardsFilters: Array = [\r\n {\r\n name: 'equals',\r\n filter: equalsFilter\r\n },\r\n {\r\n name: 'equals_in_array',\r\n filter: equalsInArrayFilter\r\n },\r\n {\r\n name: 'exists',\r\n filter: existsFilter\r\n },\r\n {\r\n name: 'anyExists',\r\n filter: anyExistsFilter\r\n },\r\n {\r\n name: 'countFilter',\r\n filter: countFilter\r\n },\r\n {\r\n name: 'substanceCodes',\r\n filter: substanceCodesFilter\r\n },\r\n {\r\n name: 'substanceRelationships',\r\n filter: substanceRelationshipsFilter\r\n },\r\n {\r\n name: 'hasCredentials',\r\n filter: credentialsFilter\r\n },\r\n {\r\n name: 'isInGroups',\r\n filter: groupFilter\r\n }\r\n];\r\n\r\n\r\nexport function equalsFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters\r\n): Observable {\r\n return new Observable(observer => {\r\n let isApproved = false;\r\n if (filter.value != null && filter.propertyToCheck != null) {\r\n if (!filter.value.indexOf('|') && substance[filter.propertyToCheck] === filter.value) {\r\n isApproved = true;\r\n } else if (filter.value.indexOf('|')) {\r\n const values = filter.value.split('|');\r\n for (let i = 0; i < values.length; i++) {\r\n if (substance[filter.propertyToCheck] === values[i]) {\r\n isApproved = true;\r\n break;\r\n }\r\n }\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n }\r\n });\r\n}\r\n\r\nexport function equalsInArrayFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters\r\n): Observable {\r\n return new Observable(observer => {\r\n let isApproved = false;\r\n if (filter.value != null && filter.propertyToCheck != null && filter.propertyInArray != null) {\r\n for (let i = 0; i < substance[filter.propertyToCheck].length; i++) {\r\n if ((substance[filter.propertyToCheck][i][filter.propertyInArray]) === filter.value) {\r\n isApproved = true;\r\n break;\r\n }\r\n }\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\nexport function existsFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters\r\n): Observable {\r\n return new Observable(observer => {\r\n let isApproved = false;\r\n if (filter.propertyToCheck != null) {\r\n const evaluatedProperty = getEvaluatedProperty(substance, filter.propertyToCheck);\r\n if (evaluatedProperty != null\r\n && (Object.prototype.toString.call(evaluatedProperty) !== '[object Array]'\r\n || evaluatedProperty.length)) {\r\n isApproved = true;\r\n }\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\nexport function anyExistsFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters\r\n): Observable {\r\n return new Observable(observer => {\r\n let isApproved = false;\r\n if (filter.propertyToCheck != null) {\r\n const evaluatedProperties = filter.propertyToCheck.split('|');\r\n evaluatedProperties.forEach( property => {\r\n const evaluatedProperty = getEvaluatedProperty(substance, property);\r\n if (evaluatedProperty != null\r\n && (evaluatedProperty.length && evaluatedProperty.length > 0)) {\r\n isApproved = true;\r\n }\r\n });\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\nexport function countFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters\r\n): Observable {\r\n return new Observable(observer => {\r\n let isApproved = false;\r\n let countMin = (filter.countMinimum!=null)?filter.countMinimum:1;\r\n let countMax = (filter.countMaximum!=null)?filter.countMaximum:9999999;\r\n\r\n if (filter.propertyToCheck != null) {\r\n const evaluatedProperty = getEvaluatedProperty(substance, filter.propertyToCheck);\r\n if (evaluatedProperty != null\r\n && (Object.prototype.toString.call(evaluatedProperty) === '[object Array]'\r\n && (evaluatedProperty.length)\r\n && (evaluatedProperty.length >= countMin && evaluatedProperty.length <= countMax))) {\r\n isApproved = true;\r\n }\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\nexport function substanceCodesFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters\r\n): Observable {\r\n return new Observable(observer => {\r\n\r\n let isApproved = false;\r\n\r\n if (substance.codes && substance.codes.length > 0) {\r\n for (let i = 0; i < substance.codes.length; i++) {\r\n if (substance.codes[i]._isClassification && filter.value === 'classification') {\r\n isApproved = true;\r\n break;\r\n } else if (filter.value === 'identifiers') {\r\n isApproved = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\nexport function substanceRelationshipsFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters\r\n): Observable {\r\n return new Observable(observer => {\r\n\r\n let isApproved = false;\r\n\r\n if (substance.relationships && substance.relationships.length > 0) {\r\n\r\n for (let i = 0; i < substance.relationships.length; i++) {\r\n const typeParts = substance.relationships[i].type;\r\n const property = typeParts && typeParts.trim() || '';\r\n\r\n if (filter.value instanceof Array) {\r\n let isInExcludeValues = false;\r\n filter.value.forEach(value => {\r\n if (property.toLowerCase().indexOf(value.toLowerCase()) > -1) {\r\n isInExcludeValues = true;\r\n }\r\n });\r\n if (!isInExcludeValues) {\r\n isApproved = true;\r\n break;\r\n }\r\n } else if (property.toLowerCase().indexOf(filter.value.toLowerCase()) > -1) {\r\n isApproved = true;\r\n break;\r\n }\r\n }\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\n export function credentialsFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters,\r\n http: HttpClient,\r\n auth: AuthService\r\n ): Observable {\r\n return new Observable(observer => {\r\n\r\n let isApproved = false;\r\n if (filter.propertyToCheck != null) {\r\n if (auth.hasRoles(filter.propertyToCheck) === true) {\r\n isApproved = true;\r\n }\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\nexport function groupFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters,\r\n http: HttpClient,\r\n auth: AuthService\r\n ): Observable {\r\n return new Observable(observer => {\r\n\r\n let isApproved = false;\r\n if (filter.propertyToCheck != null) {\r\n if (auth.isInGroups(filter.propertyToCheck) === true) {\r\n isApproved = true;\r\n }\r\n }\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n}\r\n\r\n","import {\r\n ModuleWithProviders,\r\n NgModule\r\n} from '@angular/core';\r\nimport { SubstanceCardFilter, SUBSTANCE_CARDS_FILTERS } from './substance-cards-filter.model';\r\nimport { SubstanceCardsService } from './substance-cards.service';\r\n\r\n@NgModule()\r\nexport class SubstanceCardsModule {\r\n static forRoot(filters: Array): ModuleWithProviders {\r\n return {\r\n ngModule: SubstanceCardsModule,\r\n providers: [\r\n SubstanceCardsService,\r\n { provide: SUBSTANCE_CARDS_FILTERS, useValue: filters, multi: true }\r\n ],\r\n };\r\n }\r\n}\r\n","export class SubstanceDetailsProperty {\r\n title?: string;\r\n count?: number;\r\n dynamicComponentId?: string;\r\n type?: string;\r\n order?: number;\r\n isLoaded: boolean;\r\n\r\n constructor(title?: string, count?: number, dynamicComponentId?: string, type?: string, order?: number) {\r\n this.title = title;\r\n this.count = count;\r\n this.dynamicComponentId = dynamicComponentId;\r\n this.type = type;\r\n this.order = order;\r\n this.isLoaded = false;\r\n }\r\n\r\n updateCount(count: number): void {\r\n this.count = count;\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { SubstanceCardFilterParameters } from '../config/config.model';\r\nimport { Observable } from 'rxjs';\r\nimport { SubstanceCardFilter } from './substance-cards-filter.model';\r\nimport { SubstanceDetail } from '../substance/substance.model';\r\nimport { forkJoin } from 'rxjs';\r\nimport {AuthService} from '@gsrs-core/auth/auth.service';\r\n\r\nexport class FilterResolver {\r\n private filters = [];\r\n\r\n constructor(\r\n private substance: SubstanceDetail,\r\n filterParameters: Array,\r\n registeredFilters: Array,\r\n http: HttpClient,\r\n auth: AuthService\r\n ) {\r\n filterParameters.forEach(filterParameter => {\r\n const registeredFilter = registeredFilters.find(_filter => _filter.name === filterParameter.filterName);\r\n if (registeredFilter != null) {\r\n this.filters.push(registeredFilter.filter(substance, filterParameter, http, auth));\r\n }\r\n });\r\n }\r\n\r\n resolve(): Observable {\r\n return new Observable(observer => {\r\n if (this.filters.length > 0) {\r\n forkJoin(this.filters).subscribe(responses => {\r\n let isApproved = true;\r\n responses.forEach(response => {\r\n if (!response) {\r\n isApproved = false;\r\n }\r\n });\r\n observer.next(isApproved);\r\n observer.complete();\r\n });\r\n } else {\r\n observer.next(true);\r\n observer.complete();\r\n }\r\n });\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ConfigService } from '../config/config.service';\r\nimport { SubstanceDetailsProperty } from '../substance/substance-utilities.model';\r\nimport { SubstanceDetail } from '../substance/substance.model';\r\nimport { SUBSTANCE_CARDS_FILTERS } from './substance-cards-filter.model';\r\nimport { SubstanceCardFilter } from './substance-cards-filter.model';\r\nimport { Observable } from 'rxjs';\r\nimport { FilterResolver } from './filter-resolver';\r\nimport {AuthService} from '@gsrs-core/auth/auth.service';\r\n\r\n@Injectable()\r\nexport class SubstanceCardsService {\r\n\r\n constructor(\r\n public configService: ConfigService,\r\n @Inject(SUBSTANCE_CARDS_FILTERS) private filters: Array>,\r\n public http: HttpClient,\r\n public auth: AuthService\r\n ) { }\r\n\r\n getSubstanceDetailsPropertiesAsync(substance: SubstanceDetail): Observable {\r\n return new Observable(observer => {\r\n const registeredFilters = this.filters.reduce((acc, val) => acc.concat(val), []);\r\n const configCards = this.configService.configData.substanceDetailsCards;\r\n if (configCards != null && configCards.length) {\r\n configCards.forEach((card, index) => {\r\n const order = card.order != null ? card.order : index;\r\n const substanceDetailsProperty = new SubstanceDetailsProperty(\r\n card.title || card.type || '',\r\n null,\r\n card.card,\r\n card.type,\r\n order\r\n );\r\n if (card.filters && card.filters.length) {\r\n const filterResolver = new FilterResolver(substance, card.filters, registeredFilters, this.http, this.auth);\r\n filterResolver.resolve().subscribe(response => {\r\n if (response) {\r\n observer.next(substanceDetailsProperty);\r\n } else {\r\n observer.next(null);\r\n }\r\n });\r\n } else {\r\n observer.next(substanceDetailsProperty);\r\n }\r\n });\r\n }\r\n\r\n });\r\n }\r\n}\r\n","import {\r\n Directive,\r\n Input,\r\n AfterViewInit,\r\n ElementRef,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { ScrollToRegistration } from './scroll-to-registration.class';\r\nimport { ScrollToService } from './scroll-to.service';\r\n\r\n@Directive({\r\n selector: '[appScrollToTrigger]'\r\n})\r\nexport class ScrollToTriggerDirective implements AfterViewInit, OnDestroy {\r\n @Input() scrollToElementId: string;\r\n @Input() vAlign: 'start' | 'center' | 'end' | 'nearest' | 'start' = 'center';\r\n scrollToElement: HTMLElement;\r\n triggerElementRegistration: ScrollToRegistration;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private scrollToService: ScrollToService\r\n ) { }\r\n\r\n ngAfterViewInit() {\r\n if (this.scrollToElementId != null) {\r\n this.registerTriggerElement();\r\n } else {\r\n console.error('You need to enter a value for scrollToElementId');\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.triggerElementRegistration.unregister();\r\n }\r\n\r\n registerTriggerElement(): void {\r\n this.triggerElementRegistration\r\n = this.scrollToService.registerTriggerElement(this.scrollToElementId, this.elementRef.nativeElement, this.vAlign);\r\n }\r\n}\r\n","\n \n \n \n {{property.title}}\n {{property.count}}\n \n \n \n \n \n \n \n
        \n
        \n
        \n

        \n \n
        {{substance.approvalID}}
        \n
        \n \n \n \n \n

        {{property.title}}

        \n
        \n
        \n
        \n
        \n
        \n
        \n
        \n
        \n
        \n","import {\r\n Component,\r\n OnInit,\r\n AfterViewInit,\r\n ViewChildren,\r\n ViewContainerRef,\r\n QueryList,\r\n ViewChild,\r\n OnDestroy,\r\n HostListener\r\n} from '@angular/core';\r\nimport { ActivatedRoute, NavigationExtras, Router } from '@angular/router';\r\nimport { SubstanceService } from '../substance/substance.service';\r\nimport { SubstanceDetail } from '../substance/substance.model';\r\nimport { LoadingService } from '../loading/loading.service';\r\nimport { MainNotificationService } from '../main-notification/main-notification.service';\r\nimport { AppNotification, NotificationType } from '../main-notification/notification.model';\r\nimport { SubstanceDetailsProperty } from '../substance/substance-utilities.model';\r\nimport { DynamicComponentLoader } from '../dynamic-component-loader/dynamic-component-loader.service';\r\nimport { SubstanceCardsService } from './substance-cards.service';\r\nimport { MatSidenav } from '@angular/material/sidenav';\r\nimport { UtilsService } from '../utils/utils.service';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\nimport { environment } from '../../../environments/environment';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport {Title} from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-substance-details',\r\n templateUrl: './substance-details.component.html',\r\n styleUrls: ['./substance-details.component.scss']\r\n})\r\nexport class SubstanceDetailsComponent implements OnInit, AfterViewInit, OnDestroy {\r\n id: string;\r\n version: number;\r\n latestVersion: number;\r\n termSubscriber: Subscription;\r\n substance: SubstanceDetail;\r\n substanceDetailsProperties: Array = [];\r\n @ViewChildren('dynamicComponent', { read: ViewContainerRef }) dynamicComponents: QueryList;\r\n @ViewChild('matSideNavInstance', { static: true }) matSideNav: MatSidenav;\r\n hasBackdrop = false;\r\n substanceUpdated = new Subject();\r\n constructor(\r\n private activatedRoute: ActivatedRoute,\r\n private substanceService: SubstanceService,\r\n private loadingService: LoadingService,\r\n private mainNotificationService: MainNotificationService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private dynamicComponentLoader: DynamicComponentLoader,\r\n private substanceCardsService: SubstanceCardsService,\r\n private utilsService: UtilsService,\r\n private gaService: GoogleAnalyticsService,\r\n private activeRoute: ActivatedRoute,\r\n private titleService: Title\r\n ) { }\r\n\r\n // use aspirin for initial development a05ec20c-8fe2-4e02-ba7f-df69e5e30248\r\n ngOnInit() {\r\n this.gaService.sendPageView(`Substance Details`);\r\n this.id = this.activatedRoute.snapshot.params['id'];\r\n this.version = this.activatedRoute.snapshot.params['version'];\r\n this.loadingService.setLoading(true);\r\n this.checkVersion().subscribe((result: number) => {this.latestVersion = result;\r\n this.activeRoute.params.subscribe(routeParams => {\r\n this.id = routeParams.id;\r\n this.version = routeParams.version;\r\n if (this.version) {\r\n if (Number(this.latestVersion) > Number(this.version)) {\r\n this.getSubstanceDetails(this.id, this.version.toString());\r\n } else {\r\n this.getSubstanceDetails(this.id);\r\n }\r\n } else {\r\n this.getSubstanceDetails(this.id);\r\n }\r\n\r\n\r\n });\r\n\r\n }, error => {\r\n this.gaService.sendException('checkVersionCall: error from API call');\r\n this.loadingService.setLoading(false);\r\n this.handleSubstanceRetrivalError();\r\n });\r\n\r\n\r\n }\r\n\r\n\r\n\r\n ngAfterViewInit(): void {\r\n\r\n\r\n\r\n this.dynamicComponents.changes\r\n .subscribe(() => {\r\n this.dynamicComponents.forEach((cRef, index) => {\r\n const substanceProperty = this.substanceDetailsProperties[index];\r\n if (!substanceProperty.isLoaded) {\r\n substanceProperty.isLoaded = true;\r\n this.dynamicComponentLoader\r\n .getComponentFactory(substanceProperty.dynamicComponentId)\r\n .subscribe(componentFactory => {\r\n const ref = cRef.createComponent(componentFactory);\r\n ref.instance.countUpdate.subscribe(count => {\r\n substanceProperty.updateCount(count);\r\n });\r\n ref.instance.substance = this.substance;\r\n ref.instance.substanceUpdated = this.substanceUpdated.asObservable();\r\n ref.instance.title = substanceProperty.title;\r\n ref.instance.analyticsEventCategory = !environment.isAnalyticsPrivate\r\n && this.utilsService.toCamelCase(`substance ${substanceProperty.title}`)\r\n || 'substanceCard';\r\n if (substanceProperty.type != null) {\r\n ref.instance.type = substanceProperty.type;\r\n }\r\n ref.changeDetectorRef.detectChanges();\r\n this.substanceUpdated.next(this.substance);\r\n });\r\n }\r\n });\r\n });\r\n this.matSideNav.openedStart.subscribe(() => {\r\n this.utilsService.handleMatSidenavOpen(1100);\r\n });\r\n this.matSideNav.closedStart.subscribe(() => {\r\n this.utilsService.handleMatSidenavClose();\r\n });\r\n\r\n setTimeout(() => {\r\n this.processResponsiveness();\r\n });\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize() {\r\n this.processResponsiveness();\r\n }\r\n\r\n ngOnDestroy() {\r\n // window.removeEventListener('resize', this.processResponsiveness);\r\n }\r\n checkVersion() {\r\n return this.substanceService.checkVersion(this.id);\r\n }\r\n getSubstanceDetails(id: string, version?: string) {\r\n this.substanceService.getSubstanceDetails(id, version).subscribe(response => {\r\n if (response) {\r\n this.titleService.setTitle(response._name);\r\n this.substance = response;\r\n this.substanceUpdated.next(response);\r\n this.substanceCardsService.getSubstanceDetailsPropertiesAsync(this.substance).subscribe(substanceProperty => {\r\n if (substanceProperty != null) {\r\n this.insertSubstanceProperty(substanceProperty);\r\n }\r\n });\r\n this.substanceService.getMixtureParent(id).subscribe(response2 => {\r\n if (response2 && response2.content && response2.content.length > 0) {\r\n this.substance.$$mixtureParents = response2.content;\r\n this.substanceCardsService.getSubstanceDetailsPropertiesAsync(this.substance).subscribe(substanceProperty => {\r\n if (substanceProperty != null) {\r\n this.insertSubstanceProperty(substanceProperty);\r\n }\r\n });\r\n }\r\n });\r\n this.substanceService.getConstituentParent(id).subscribe(response3 => {\r\n if (response3 && response3.content && response3.content.length > 0) {\r\n this.substance.$$constituentParents = response3.content;\r\n this.substanceCardsService.getSubstanceDetailsPropertiesAsync(this.substance).subscribe(substanceProperty => {\r\n if (substanceProperty != null) {\r\n this.insertSubstanceProperty(substanceProperty);\r\n }\r\n });\r\n }\r\n });\r\n } else {\r\n this.handleSubstanceRetrivalError();\r\n }\r\n this.loadingService.setLoading(false);\r\n }, error => {\r\n this.gaService.sendException('getSubstanceDetails: error from API call');\r\n this.loadingService.setLoading(false);\r\n this.handleSubstanceRetrivalError();\r\n });\r\n }\r\n\r\n private insertSubstanceProperty(property: SubstanceDetailsProperty, startVal?: number, endVal?: number): void {\r\n const length = this.substanceDetailsProperties.length;\r\n const start = startVal != null ? startVal : 0;\r\n const end = endVal != null ? endVal : length - 1;\r\n const m = start + Math.floor((end - start) / 2);\r\n\r\n\r\n if (length === 0) {\r\n this.substanceDetailsProperties.push(property);\r\n return;\r\n }\r\n if (property.order > this.substanceDetailsProperties[end].order) {\r\n this.substanceDetailsProperties.splice(end + 1, 0, property);\r\n return;\r\n }\r\n\r\n if (property.order < this.substanceDetailsProperties[start].order) {\r\n this.substanceDetailsProperties.splice(start, 0, property);\r\n return;\r\n }\r\n\r\n if (start >= end) {\r\n return;\r\n }\r\n\r\n if (property.order < this.substanceDetailsProperties[m].order) {\r\n this.insertSubstanceProperty(property, start, m - 1);\r\n return;\r\n }\r\n\r\n if (property.order > this.substanceDetailsProperties[m].order) {\r\n this.insertSubstanceProperty(property, m + 1, end);\r\n return;\r\n }\r\n\r\n\r\n this.substanceDetailsProperties.forEach(prop => {\r\n if (prop.title === 'identifiers') {\r\n prop.title = 'Codes - Identifiers';\r\n }\r\n if (prop.title === 'classification') {\r\n prop.title = 'Codes - Classification';\r\n }\r\n });\r\n }\r\n\r\n private handleSubstanceRetrivalError() {\r\n const notification: AppNotification = {\r\n message: 'The web address above is incorrect or the substance you\\'re trying to see doesn\\'t exist. We\\'re forwarding you to Browse Substances',\r\n type: NotificationType.error,\r\n milisecondsToShow: 5000\r\n };\r\n this.mainNotificationService.setNotification(notification);\r\n setTimeout(() => {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {}\r\n };\r\n navigationExtras.queryParams['search'] = this.id || null;\r\n this.router.navigate(['/browse-substance'], navigationExtras);\r\n }, 5000);\r\n }\r\n\r\n private processResponsiveness = () => {\r\n if (window) {\r\n if (window.innerWidth < 1100) {\r\n this.matSideNav.close();\r\n this.hasBackdrop = true;\r\n } else {\r\n this.matSideNav.open();\r\n this.hasBackdrop = false;\r\n }\r\n }\r\n }\r\n\r\n openSideNav() {\r\n this.gaService.sendEvent('substanceNav', 'button:sidenav', 'open');\r\n this.matSideNav.open();\r\n }\r\n\r\n handleSidenavClick(substancePropertyTitle: string): void {\r\n\r\n const eventLabel = environment.isAnalyticsPrivate ? 'substance card' : substancePropertyTitle;\r\n\r\n this.gaService.sendEvent('substanceNav', 'link:nav-to', eventLabel);\r\n\r\n if (window && window.innerWidth < 1100) {\r\n this.matSideNav.close();\r\n this.hasBackdrop = true;\r\n }\r\n }\r\n}\r\n","
        \r\n \r\n \r\n \r\n {{label? label: \"Access\"}}\r\n \r\n \r\n
        \r\n
        \r\n \r\n {{accessOption.display}}\r\n \r\n
        \r\n
        \r\n
        \r\n
        ","import { Component, OnInit, Input, AfterViewInit, Output, EventEmitter, ElementRef } from '@angular/core';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, FormGroup } from '@angular/forms';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'app-access-manager',\n templateUrl: './access-manager.component.html',\n styleUrls: ['./access-manager.component.scss']\n})\nexport class AccessManagerComponent implements OnInit, AfterViewInit {\n accessOptions: Array;\n privateAccess: Array = [];\n @Output() accessOut = new EventEmitter>();\n tooltipMessage: string;\n @Input() label?: string;\n accessFormGroup = new FormGroup({});\n\n constructor(\n private cvService: ControlledVocabularyService,\n private element: ElementRef\n ) { }\n\n ngOnInit() { }\n\n ngAfterViewInit() {}\n\n @Input()\n set access(access: Array) {\n if (access != null) {\n this.privateAccess = access;\n this.getVocabularies();\n } else {\n this.privateAccess = [];\n this.getVocabularies();\n }\n }\n\n get access(): Array {\n return this.privateAccess;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('ACCESS_GROUP').subscribe(response => {\n const accessOptions = response['ACCESS_GROUP'].list;\n this.createAccessFromGroup(accessOptions);\n this.accessOptions = accessOptions;\n this.crosscheckAccesses();\n });\n }\n\n private createAccessFromGroup(accessOptions: Array = []): void {\n const group: any = {};\n accessOptions.forEach(accessOption => {\n group[accessOption.value] = new FormControl();\n });\n this.accessFormGroup = new FormGroup(group);\n }\n\n private crosscheckAccesses() {\n this.tooltipMessage = 'Access is set to: ';\n\n if (this.privateAccess.length > 0) {\n this.privateAccess.forEach(accessOption => {\n for (let i = 0; i < this.accessOptions.length; i++) {\n if (accessOption === this.accessOptions[i].value) {\n this.accessFormGroup.controls[accessOption].setValue(true);\n this.tooltipMessage += (this.accessOptions[i].display + ', ');\n break;\n }\n }\n });\n this.tooltipMessage = this.tooltipMessage.replace(/(, )$/, '');\n } else {\n this.tooltipMessage += 'public';\n }\n }\n\n updateAccess(event: MatCheckboxChange, accessOption: VocabularyTerm): void {\n\n if (this.privateAccess.length === 0) {\n this.tooltipMessage = this.tooltipMessage.replace('public', '');\n }\n\n if (event.checked) {\n this.privateAccess.push(accessOption.value);\n\n if (this.privateAccess.length > 1) {\n this.tooltipMessage += ', ';\n }\n\n this.tooltipMessage += (accessOption.display);\n\n } else {\n\n const indexToRemove = this.privateAccess.indexOf(accessOption.value);\n\n if (indexToRemove > -1) {\n this.privateAccess.splice(indexToRemove, 1);\n }\n\n this.tooltipMessage = this.tooltipMessage.replace(accessOption.display, '')\n .replace(': , ', ': ')\n .replace(', ,', ',')\n .replace(/,$/, '')\n .replace(/(, )$/, '');\n\n if (this.privateAccess.length === 0) {\n this.tooltipMessage += 'public';\n }\n }\n\n this.accessOut.emit(this.privateAccess);\n }\n\n menuOpened(): void {\n const event: Event = new Event('focusin', { bubbles: true, cancelable: true} );\n this.element.nativeElement.dispatchEvent(event);\n }\n\n menuClosed(): void {\n const event: Event = new Event('focusout', { bubbles: true, cancelable: true} );\n this.element.nativeElement.dispatchEvent(event);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormAgentModificationsModule } from './substance-form-agent-modifications.module';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { AgentModification } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\n\n@Injectable()\nexport class SubstanceFormAgentModificationsService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (!this.substance.modifications) {\n this.substance.modifications = {};\n }\n if (!this.substance.modifications.agentModifications) {\n this.substance.modifications.agentModifications = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.modifications.agentModifications);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceAgentModifications(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceAgentModification(): void {\n const newAgentModifications: AgentModification = {};\n this.substance.modifications.agentModifications.unshift(newAgentModifications);\n this.propertyEmitter.next(this.substance.modifications.agentModifications);\n }\n\n deleteSubstanceAgentModification(agentModification: AgentModification): void {\n const agentModIndex = this.substance.modifications.agentModifications.findIndex(\n agentMod => agentModification.$$deletedCode === agentMod.$$deletedCode);\n if (agentModIndex > -1) {\n this.substance.modifications.agentModifications.splice(agentModIndex, 1);\n this.propertyEmitter.next(this.substance.modifications.agentModifications);\n }\n }\n}\n","
        \r\n \r\n \r\n
        \r\n
        \r\n
        \r\n
        \r\n
        \r\n \r\n Type *\r\n \r\n Clear selection\r\n \r\n {{type.display}}\r\n \r\n {{privateSubstanceAmount.type}} (not in CV)\r\n Other (New Value)\r\n \r\n \r\n
        \r\n
        \r\n \r\n
        \r\n
        \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
        \r\n
        \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
        \r\n
        \r\n \r\n Units\r\n \r\n Clear selection\r\n \r\n {{unit.display}}\r\n \r\n {{privateSubstanceAmount.units}} (not in CV)\r\n Other (New Value)\r\n \r\n \r\n
        \r\n
        \r\n \r\n
        \r\n
        \r\n \r\n \r\n \r\n
        \r\n
        \r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { SubstanceAmount } from '@gsrs-core/substance/substance.model';\r\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\r\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\r\nimport { FormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-amount-form',\r\n templateUrl: './amount-form.component.html',\r\n styleUrls: ['./amount-form.component.scss']\r\n})\r\nexport class AmountFormComponent implements OnInit {\r\n private privateSubstanceAmount: SubstanceAmount;\r\n amountTypeList: Array = [];\r\n amountUnitList: Array = [];\r\n typeControl = new FormControl('', Validators.required);\r\n averageControl = new FormControl('');\r\n lowControl = new FormControl('');\r\n highControl = new FormControl('');\r\n lowLimitControl = new FormControl('');\r\n highLimitControl = new FormControl('');\r\n unitsControl = new FormControl('');\r\n nonNumericValueControl = new FormControl('');\r\n\r\n constructor(\r\n private cvService: ControlledVocabularyService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.getVocabularies();\r\n }\r\n\r\n @Input()\r\n set substanceAmount(amount: SubstanceAmount) {\r\n if (amount != null) {\r\n this.privateSubstanceAmount = amount;\r\n\r\n this.typeControl.setValue(this.privateSubstanceAmount.type);\r\n this.typeControl.valueChanges.subscribe(value => {\r\n this.privateSubstanceAmount.type = value;\r\n });\r\n this.averageControl.setValue(this.privateSubstanceAmount.average);\r\n this.averageControl.valueChanges.subscribe(value => {\r\n if(value === null) {\r\n this.averageControl.setValue('');\r\n } else if(value.length === 1 && value.match(/[a-z]/i)) {\r\n this.averageControl.setValue('');\r\n } else if(value.match(/^[0-9,.]*$/)) { // what we want\r\n } else {\r\n this.averageControl.setValue('');\r\n }\r\n this.privateSubstanceAmount.average = value;\r\n });\r\n this.lowControl.setValue(this.privateSubstanceAmount.low);\r\n this.lowControl.valueChanges.subscribe(value => {\r\n if(value === null) {\r\n this.lowControl.setValue('');\r\n } else if(value.length === 1 && value.match(/[a-z]/i)) {\r\n this.lowControl.setValue('');\r\n } else if(value.match(/^[0-9,.]*$/)) { // what we want\r\n } else {\r\n this.lowControl.setValue('');\r\n }\r\n this.privateSubstanceAmount.low = value;\r\n });\r\n this.highControl.setValue(this.privateSubstanceAmount.high);\r\n this.highControl.valueChanges.subscribe(value => {\r\n if(value === null) {\r\n this.highControl.setValue('');\r\n } else if(value.length === 1 && value.match(/[a-z]/i)) {\r\n this.highControl.setValue('');\r\n } else if(value.match(/^[0-9,.]*$/)) { // what we want\r\n } else {\r\n this.highControl.setValue('');\r\n }\r\n this.privateSubstanceAmount.high = value;\r\n });\r\n this.lowLimitControl.setValue(this.privateSubstanceAmount.lowLimit);\r\n this.lowLimitControl.valueChanges.subscribe(value => {\r\n if(value === null) {\r\n this.lowLimitControl.setValue('');\r\n } else if(value.length === 1 && value.match(/[a-z]/i)) {\r\n this.lowLimitControl.setValue('');\r\n } else if(value.match(/^[0-9,.]*$/)) { // what we want\r\n } else {\r\n this.lowLimitControl.setValue('');\r\n }\r\n this.privateSubstanceAmount.lowLimit = value;\r\n });\r\n this.highLimitControl.setValue(this.privateSubstanceAmount.highLimit);\r\n this.highLimitControl.valueChanges.subscribe(value => {\r\n if(value === null) {\r\n this.highLimitControl.setValue('');\r\n } else if(value.length === 1 && value.match(/[a-z]/i)) {\r\n this.highLimitControl.setValue('');\r\n } else if(value.match(/^[0-9,.]*$/)) { // what we want\r\n } else {\r\n this.highLimitControl.setValue('');\r\n }\r\n this.privateSubstanceAmount.highLimit = value;\r\n });\r\n this.unitsControl.setValue(this.privateSubstanceAmount.units);\r\n this.unitsControl.valueChanges.subscribe(value => {\r\n this.privateSubstanceAmount.units = value;\r\n });\r\n this.nonNumericValueControl.setValue(this.privateSubstanceAmount.nonNumericValue);\r\n this.nonNumericValueControl.valueChanges.subscribe(value => {\r\n this.privateSubstanceAmount.nonNumericValue = value;\r\n });\r\n }\r\n }\r\n\r\n get substanceAmount(): SubstanceAmount {\r\n return this.privateSubstanceAmount;\r\n }\r\n\r\n updateAccess(access: Array): void {\r\n this.privateSubstanceAmount.access = access;\r\n this.substanceAmount.access = access;\r\n }\r\n\r\n updateType(event: any) {\r\n setTimeout(() => {\r\n this.typeControl.setValue(event.value);\r\n });\r\n this.privateSubstanceAmount.type = event.value;\r\n }\r\n\r\n updateUnits(event: any) {\r\n setTimeout(() => {\r\n this.unitsControl.setValue(event.value);\r\n });\r\n this.privateSubstanceAmount.units = event.value;\r\n }\r\n\r\n getVocabularies(): void {\r\n this.cvService.getDomainVocabulary('AMOUNT_TYPE', 'AMOUNT_UNIT').subscribe(response => {\r\n this.amountTypeList = response['AMOUNT_TYPE'].list;\r\n this.amountUnitList = response['AMOUNT_UNIT'].list;\r\n });\r\n }\r\n\r\n inCV(vocab: Array, property: string) {\r\n return vocab.some(r => property === r.value);\r\n }\r\n\r\n}\r\n","
        \n
        Created By: {{ source.createdBy}}
        \n
        on {{ source.created | date:'medium'}}
        \n
        -
        \n
        Last Edited By: {{ source.lastEditedBy}}
        \n
        on {{ source.lastEdited | date:'medium'}}
        \n
        \n\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n selector: 'app-audit-info',\n templateUrl: './audit-info.component.html',\n styleUrls: ['./audit-info.component.scss']\n})\nexport class AuditInfoComponent implements OnInit {\n @Input() source: any;\n constructor() { }\n\n ngOnInit() {\n\n }\n\n}\n","import { SubstanceFormBase } from './substance-form-base';\nimport { PageEvent } from '@angular/material/paginator';\nimport { FormControl } from '@angular/forms';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { environment } from '../../../../environments/environment';\n\nexport class SubstanceCardBaseFilteredList extends SubstanceFormBase {\n filtered: Array;\n paged: Array;\n page = 0;\n pageSize = 5;\n private searchTimer: any;\n searchControl = new FormControl();\n\n constructor(\n public gaService: GoogleAnalyticsService\n ) {\n super();\n }\n\n pageChange(pageEvent?: PageEvent, analyticsEventCategory?: string): void {\n\n if (pageEvent != null) {\n\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.page !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent(analyticsEventCategory, eventAction, 'pager', eventValue);\n\n this.page = pageEvent.pageIndex;\n this.pageSize = pageEvent.pageSize;\n }\n\n this.paged = [];\n const startIndex = this.page * this.pageSize;\n for (let i = startIndex; i < (startIndex + this.pageSize); i++) {\n if (this.filtered[i] != null) {\n this.paged.push(this.filtered[i]);\n } else {\n break;\n }\n }\n }\n\n filterList(searchInput: string, listToFilter: Array, analyticsEventCategory: string = 'substance card'): void {\n if (this.searchTimer != null) {\n clearTimeout(this.searchTimer);\n }\n\n this.searchTimer = setTimeout(() => {\n\n const eventLabel = !environment.isAnalyticsPrivate && searchInput || 'input value';\n\n this.gaService.sendEvent(analyticsEventCategory, 'search', eventLabel);\n\n this.filtered = [];\n listToFilter.forEach(item => {\n\n const itemString = JSON.stringify(item).toLowerCase();\n if (itemString.indexOf(searchInput.toLowerCase()) > -1) {\n this.filtered.push(item);\n }\n });\n clearTimeout(this.searchTimer);\n this.searchTimer = null;\n this.page = 0;\n this.pageChange();\n }, 700);\n }\n}\n\nexport interface SubstanceCardBaseList {\n addItem(): void;\n}\n","import { Output, EventEmitter, Injectable } from '@angular/core';\n\n@Injectable()\nexport abstract class SubstanceFormBase {\n analyticsEventCategory: string;\n @Output() menuLabelUpdate = new EventEmitter();\n @Output() hiddenStateUpdate = new EventEmitter();\n @Output() canAddItemUpdate = new EventEmitter();\n @Output() componentDestroyed = new EventEmitter();\n}\n","import { OnDestroy } from '@angular/core';\nimport { Subscription, ReplaySubject } from 'rxjs';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\n\nexport abstract class SubstanceFormServiceBase {\n substance: SubstanceDetail;\n subscriptions: Array = [];\n propertyEmitter: ReplaySubject;\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n this.propertyEmitter = new ReplaySubject();\n this.substanceFormService.substanceFormAction.subscribe(action => {\n setTimeout(() => {\n if (action === 'load') {\n this.initSubtanceForm();\n } else {\n this.unloadSubstance();\n }\n });\n });\n }\n\n initSubtanceForm(): void {\n }\n\n unloadSubstance(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n this.subscriptions = [];\n this.propertyEmitter.complete();\n this.propertyEmitter = new ReplaySubject();\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\r\nimport { AuthService } from '../auth/auth.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class CanActivateSubstanceForm implements CanActivate {\r\n\r\n constructor(\r\n private router: Router,\r\n private authService: AuthService\r\n ) { }\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | Promise | (boolean | UrlTree) {\r\n return new Observable(observer => {\r\n this.authService.getAuth().subscribe(auth => {\r\n if (auth) {\r\n this.authService.hasAnyRolesAsync('Updater', 'SuperUpdater').subscribe(response => {\r\n if (response) {\r\n observer.next(true);\r\n observer.complete();\r\n } else {\r\n observer.next(this.router.parseUrl('/browse-substance'));\r\n observer.complete();\r\n }\r\n });\r\n } else {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n path: state.url\r\n }\r\n };\r\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\r\n observer.complete();\r\n }\r\n });\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { AuthService } from '../auth/auth.service';\nimport { Observable } from 'rxjs';\nimport {Role} from '@gsrs-core/auth/auth.model';\n\n@Injectable()\nexport class CanRegisterSubstanceForm implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) {}\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('DataEntry', 'SuperDataEntry').subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/browse-substance'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceCode } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\n\n@Injectable()\nexport class SubstanceFormCodesService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.codes == null) {\n this.substance.codes = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.codes);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceCodes(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceCode(): void {\n const newCode: SubstanceCode = {\n references: [],\n access: []\n };\n this.substance.codes.unshift(newCode);\n this.propertyEmitter.next(this.substance.codes);\n }\n\n deleteSubstanceCode(code: SubstanceCode): void {\n const subCodeIndex = this.substance.codes.findIndex(subCode => code.$$deletedCode === subCode.$$deletedCode);\n if (subCodeIndex > -1) {\n this.substance.codes.splice(subCodeIndex, 1);\n this.propertyEmitter.next(this.substance.codes);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormConstituentsModule } from './substance-form-constituents.module';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { Constituent } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\n\n@Injectable()\nexport class SubstanceFormConstituentsService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.specifiedSubstance.constituents == null) {\n this.substance.specifiedSubstance.constituents = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.specifiedSubstance.constituents);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceConstituents(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceConstituent(): void {\n const constituent: Constituent = {references:[], access:['protected']};\n this.substance.specifiedSubstance.constituents.unshift(constituent);\n this.propertyEmitter.next(this.substance.specifiedSubstance.constituents);\n }\n\n deleteSubstanceConstituent(sugar: Constituent): void {\n const constituentIndex = this.substance.specifiedSubstance.constituents.findIndex(\n subCode => sugar.$$deletedCode === subCode.$$deletedCode);\n if (constituentIndex > -1) {\n this.substance.specifiedSubstance.constituents.splice(constituentIndex, 1);\n this.propertyEmitter.next(this.substance.specifiedSubstance.constituents);\n }\n }\n}\n","

        Add Term to CV - {{vocabulary.domain}}

        \n
        \n\n
        \n
        true\n \n
        \n
        \n \n \n \n \n \n \n \n \n \n
        \n\n

        \n
        {{message}}
        \n
        0\">
        CV not valid:
        \n
        {{message.messageType}} :{{message.message}}
        \n \n
        \n
        \n \n \n \n
        \n
        \n
        \n","import {Component, Inject, OnInit} from '@angular/core';\nimport {SubstanceAmount} from '@gsrs-core/substance';\nimport {MAT_DIALOG_DATA, MatDialog, MatDialogRef} from '@angular/material/dialog';\nimport {ControlledVocabularyService, Vocabulary, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {UtilsService} from '@gsrs-core/utils';\n\n@Component({\n selector: 'app-cv-dialog',\n templateUrl: './cv-dialog.component.html',\n styleUrls: ['./cv-dialog.component.scss']\n})\nexport class CvDialogComponent implements OnInit {\n isNew: boolean;\n term: VocabularyTerm = {value: '', display: ''};\n vocabulary: Vocabulary;\n message: string;\n validationMessages = [];\n\n constructor(\n public cvService: ControlledVocabularyService,\n private utilsService: UtilsService,\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.vocabulary = data.vocabulary;\n this.term.value = data.term;\n this.term.display = data.term;\n }\n\n ngOnInit() {\n // this.vocabulary = this.data.vocabulary;\n // this.term.value = this.data.term;\n // this.term.display = this.data.term;\n }\n\n submit(): void {\n let extant = false;\n this.message = '';\n this.validationMessages = [];\n this.vocabulary.terms.forEach(term => {\n if (term.value === this.term.value) {\n extant = true;\n }\n });\n if (!extant) {\n this.vocabulary.terms.push(this.term);\n this.cvService.validateVocab(this.vocabulary).subscribe(response => {\n if(response && response.valid) {\n this.cvService.addVocabTerm( this.vocabulary).subscribe (response => {\n if (response.terms && response.terms.length === this.vocabulary.terms.length) {\n this.message = 'Term ' + this.term.value + ' Added to ' + this.vocabulary.domain + '';\n setTimeout(() => {this.dialogRef.close(this.term); }, 3000);\n }\n }, error => {\n console.log(error);\n this.vocabulary.terms.pop();\n let str = 'Server Error';\n if (error.error && error.error.message) {\n str += ' - ' + error.error.message;\n \n }\n else if(error.message) {\n str += ' - ' + error.message;\n }\n this.message = str;\n \n });\n\n } else {\n if(response.validationMessages) {\n response.validationMessages.forEach(message => {\n this.validationMessages.push(message);\n });\n }\n this.vocabulary.terms.pop();\n }\n },error => {\n console.log(error);\n this.vocabulary.terms.pop();\n let str = 'Validation Error';\n if (error.error && error.error.message) {\n str += ' - ' + error.error.message;\n\n }\n else if(error.message) {\n str += ' - ' + error.message;\n }\n this.message = str;\n\n });\n \n } else {\n \n this.message = 'Term already exists';\n setTimeout(() => {\n this.message = '';\n }, 3000);\n }\n }\n\n updateStructure(value) {\n this.term = value;\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n}\n","\n
        \n\n {{title}} {{required? ' *':''}}\n \n Clear selection\n \n {{term.display}}\n \n {{privateMod}} (not in CV)\n Other (New Value)\n\n\n \n add\n \n
        \n
        \n \n
        \n","import {Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {ControlledVocabularyService, VocabularyTerm} from '@gsrs-core/controlled-vocabulary';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {Subscription} from 'rxjs';\nimport {CvDialogComponent} from '@gsrs-core/substance-form/cv-dialog/cv-dialog.component';\nimport {DataDictionaryService} from '@gsrs-core/utils/data-dictionary.service';\nimport {AuthService} from '@gsrs-core/auth';\nimport { FragmentWizardComponent } from '@gsrs-core/admin/fragment-wizard/fragment-wizard.component';\n\n/*\n used for any input that uses cv vocabulary to handle custom values after selecting 'other'\n */\n\n@Component({\n selector: 'app-cv-input',\n templateUrl: './cv-input.component.html',\n styleUrls: ['./cv-input.component.scss']\n})\nexport class CvInputComponent implements OnInit, OnDestroy {\n @Input() vocabulary?: any;\n @Input() title?: string;\n @Input() domain?: string;\n @Input() key?: string;\n @Input() required?: boolean;\n @Input() disable?: boolean;\n @Output()\n valueChange = new EventEmitter();\n vocabName = '';\n privateMod: any;\n dictionary: any;\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n isAdmin: boolean;\n\n constructor(\n public cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private dictionaryService: DataDictionaryService,\n private authService: AuthService\n ) { }\n\n ngOnInit() {\n if (this.vocabulary) {\n this.vocabulary = this.addOtherOption(this.vocabulary, this.privateMod);\n } else if (this.key) {\n this.dictionary = this.dictionaryService.getDictionaryRow(this.key);\n if (!this.title) {\n this.title = this.dictionary.fieldName;\n }\n this.vocabName = this.dictionary.CVDomain;\n const cvSubscription = this.cvService.getDomainVocabulary(this.vocabName).subscribe(response => {\n this.vocabulary = response[this.vocabName].list;\n });\n this.subscriptions.push(cvSubscription);\n } else {\n this.vocabulary = [];\n this.vocabName = this.domain;\n const cvSubscription = this.cvService.getDomainVocabulary(this.vocabName).subscribe(response => {\n this.vocabulary = response[this.vocabName].list;\n });\n this.subscriptions.push(cvSubscription);\n\n }\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.isAdmin = this.authService.hasRoles('admin');\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set model(mod: any) {\n this.privateMod = mod;\n\n }\n\n get model(): any {\n return this.privateMod;\n }\n\n select(event: any): void {\n this.privateMod = event;\n this.valueChange.emit(this.privateMod);\n }\n\n addOtherOption(vocab: Array, property: string): any {\n if ((vocab) && (vocab.some(r => property === r.value))) {\n } else {\n }\n return vocab;\n }\n\n inCV(vocab: Array, property: string): boolean {\n if (vocab) {\n return vocab.some(r => property === r.value);\n } else {\n return true;\n }\n\n }\n\n addToVocab() {\n const vocabSubscription = this.cvService.fetchFullVocabulary(this.vocabName).subscribe ( response => {\n if (response.content && response.content.length > 0) {\n const toPut = response.content[0];\n this.openDialog(toPut, this.privateMod);\n }\n });\n this.subscriptions.push(vocabSubscription);\n }\n\n updateOrigin(event): void {\n if (event && event.value !== '') {\n this.privateMod = event.value;\n this.valueChange.emit(this.privateMod);\n }\n }\n\n openDialog(vocab: any, term: string): void {\n let thisy = window.pageYOffset;\n window.scroll({ \n top: 0, \n left: 0, \n behavior: 'auto' \n});\n\n // this.overlayContainer = this.overlayContainerService.getContainerElement();\n if (vocab.domain === 'NUCLEIC_ACID_LINKAGE' || vocab.domain === 'NUCLEIC_ACID_SUGAR'){\n this.overlayContainer.style.zIndex = '1005';\n\n let dialogRef = this.dialog.open(FragmentWizardComponent, {\n data: {'vocabulary': vocab, 'term': term},\n width: '1040px',\n height: '85%'\n });\n this.overlayContainer.style.zIndex = '1005';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n window.scroll({ \n top: thisy, \n left: 0, \n behavior: 'auto' \n });\n this.overlayContainer.style.zIndex = null;\n if (response ) {\n this.privateMod = response.display;\n this.vocabulary.push(response);\n this.valueChange.emit(this.privateMod);\n }\n });\n this.subscriptions.push(dialogSubscription);\n } else {\n let dialogRef = this.dialog.open(CvDialogComponent, {\n data: {'vocabulary': vocab, 'term': term},\n width: '1040px'\n });\n // this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n window.scroll({ \n top: thisy, \n left: 0, \n behavior: 'auto' \n});\n if (response ) {\n this.privateMod = response.display;\n this.vocabulary.push(response);\n this.valueChange.emit(this.privateMod);\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { DisulfideLink, Site } from '@gsrs-core/substance/substance.model';\nimport { Observable, ReplaySubject } from 'rxjs';\n\n@Injectable()\nexport class SubstanceFormDisulfideLinksService extends SubstanceFormServiceBase> {\n private substanceCysteineEmitter = new ReplaySubject>();\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.protein) {\n if (this.substance.protein.disulfideLinks == null) {\n this.substance.protein.disulfideLinks = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.protein.disulfideLinks);\n let available = [];\n for (let i = 0; i < this.substance.protein.subunits.length; i++) {\n const sequence = this.substance.protein.subunits[i].sequence;\n if (sequence != null && sequence.length > 0) {\n for (let j = 0; j < sequence.length; j++) {\n const site = sequence[j];\n if (site.toUpperCase() === 'C') {\n available.push({ 'residueIndex': (j + 1), 'subunitIndex': (i + 1) });\n }\n }\n }\n }\n\n this.substance.protein.disulfideLinks.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n available = available.filter(r => (r.residueIndex !== site.residueIndex) || (r.subunitIndex !== site.subunitIndex));\n });\n }\n });\n this.substanceCysteineEmitter.next(available);\n const cysteineUpdatedSubscription = this.substanceFormService.cysteineUpdated().subscribe(cysteine => {\n this.substanceCysteineEmitter.next(cysteine);\n });\n this.subscriptions.push(cysteineUpdatedSubscription);\n }\n const linksUpdatedSubscription = this.substanceFormService.disulfideLinksUpdated().subscribe(disulfideLinks => {\n this.propertyEmitter.next(disulfideLinks);\n });\n this.subscriptions.push(linksUpdatedSubscription);\n });\n this.subscriptions.push(subscription);\n }\n\n unloadSubstance(): void {\n this.substanceCysteineEmitter.complete();\n this.substanceCysteineEmitter = new ReplaySubject>();\n super.unloadSubstance();\n }\n\n get substanceDisulfideLinks(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceDisulfideLink(): void {\n const newDisulfideLinks: DisulfideLink = {};\n this.substance.protein.disulfideLinks.unshift(newDisulfideLinks);\n this.propertyEmitter.next(this.substance.protein.disulfideLinks);\n }\n\n addCompleteDisulfideLinks(sites: Array): void {\n sites.forEach(link => {\n const newSites = [{ subunitIndex: link[0].subunitIndex, residueIndex: link[0].residueIndex },\n { subunitIndex: link[1].subunitIndex, residueIndex: link[1].residueIndex },\n ];\n const newDisulfideLinks: DisulfideLink = {\n sites:\n newSites\n };\n this.substance.protein.disulfideLinks.unshift(newDisulfideLinks);\n });\n this.emitDisulfideLinkUpdate();\n }\n\n deleteSubstanceDisulfideLink(disulfideLink: DisulfideLink): void {\n const subLinkIndex =\n this.substance.protein.disulfideLinks.findIndex(subLink => disulfideLink.$$deletedCode === subLink.$$deletedCode);\n if (subLinkIndex > -1) {\n this.substance.protein.disulfideLinks.splice(subLinkIndex, 1);\n this.emitDisulfideLinkUpdate();\n }\n }\n\n deleteAllDisulfideLinks(): void {\n this.substance.protein.disulfideLinks = [];\n this.emitDisulfideLinkUpdate();\n }\n\n emitDisulfideLinkUpdate(): void {\n this.substanceFormService.recalculateAllSites('disulfide');\n this.propertyEmitter.next(this.substance.protein.disulfideLinks);\n this.substanceFormService.recalculateCysteine();\n }\n\n get substanceCysteineSites(): Observable> {\n return this.substanceCysteineEmitter.asObservable();\n }\n\n updateCysteine(cysteine: Array): void {\n this.emitDisulfideLinkUpdate();\n }\n}\n","export const formSections: { [substanceType: string]: Array } = {\n chemical: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-structure',\n 'substance-form-moieties',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-notes',\n 'substance-form-properties',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n protein: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-protein-details',\n 'substance-form-subunits',\n 'substance-form-other-links',\n 'substance-form-disulfide-links',\n 'substance-form-glycosylation',\n 'substance-form-agent-modifications-card',\n 'substance-form-structural-modifications',\n 'substance-form-physical-modifications',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-notes',\n 'substance-form-properties',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n nucleicAcid: [\n 'substance-form-definition',\n 'substance-form-names',\n 'nucleic-acid-details-form',\n 'substance-form-subunits',\n 'substance-form-links',\n 'substance-form-sugars',\n 'substance-form-physical-modifications',\n 'substance-form-agent-modifications-card',\n 'substance-form-structural-modifications',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-properties',\n 'substance-form-notes',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n mixture: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-mixture-details',\n 'substance-form-mixture-components',\n 'substance-form-agent-modifications-card',\n 'substance-form-structural-modifications',\n 'substance-form-physical-modifications',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-notes',\n 'substance-form-properties',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n structurallyDiverse: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-structurally-diverse-source',\n 'substance-form-structurally-diverse-organism',\n 'substance-form-agent-modifications-card',\n 'substance-form-structural-modifications',\n 'substance-form-physical-modifications',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-notes',\n 'substance-form-properties',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n concept: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-notes',\n 'substance-form-properties',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n specifiedSubstanceG1: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-constituents',\n 'substance-form-agent-modifications-card',\n 'substance-form-structural-modifications',\n 'substance-form-physical-modifications',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-notes',\n 'substance-form-properties',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n polymer: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-polymer-classification',\n 'substance-form-monomers',\n 'substance-form-structure',\n 'substance-form-structural-units',\n 'substance-form-agent-modifications-card',\n 'substance-form-structural-modifications',\n 'substance-form-physical-modifications',\n 'substance-form-codes-card',\n 'substance-form-relationships',\n 'substance-form-notes',\n 'substance-form-properties',\n 'substance-form-references',\n 'substance-form-change-reason'\n ],\n specifiedSubstanceG3: [\n 'substance-form-definition',\n 'substance-form-names',\n 'substance-form-ssg-parent-substance',\n 'substance-form-ssg-definition',\n 'substance-form-ssg-grade',\n 'substance-form-codes-card',\n 'substance-form-notes',\n 'substance-form-references'\n ],\n specifiedSubstanceG4m: [\n // 'substance-form-definition',\n // 'substance-form-names',\n 'substance-form-ssg-parent-substance',\n 'substance-form-ssg4m-process',\n // 'substance-form-ssg-definition',\n // 'substance-form-ssg-grade',\n // 'substance-form-codes-card',\n // 'substance-form-notes',\n // 'substance-form-references'\n ]\n};\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { Glycosylation } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormGlycosylationService extends SubstanceFormServiceBase {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.protein) {\n if (this.substance.protein.glycosylation == null) {\n this.substance.protein.glycosylation = {};\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.protein.glycosylation);\n }\n });\n this.subscriptions.push(substanceSubscription);\n const glycosylationUpdatedSubscription = this.substanceFormService.glycosylationUpdated().subscribe(glycosylation => {\n this.propertyEmitter.next(glycosylation);\n });\n this.subscriptions.push(glycosylationUpdatedSubscription);\n }\n\n get substanceGlycosylation(): Observable {\n return this.propertyEmitter.asObservable();\n }\n\n emitGlycosylationUpdate(): void {\n this.substanceFormService.recalculateAllSites('glycosylation');\n this.propertyEmitter.next(this.substance.protein.glycosylation);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { Observable } from 'rxjs';\nimport { Linkage, Link } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormLinksService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.nucleicAcid) {\n if (this.substance.nucleicAcid.linkages == null) {\n this.substance.nucleicAcid.linkages = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.nucleicAcid.linkages);\n }\n });\n this.subscriptions.push(subscription);\n const linksUpdatedSubscription = this.substanceFormService.linksUpdated().subscribe(linkages => {\n this.propertyEmitter.next(linkages);\n });\n this.subscriptions.push(linksUpdatedSubscription);\n }\n\n get substanceLinks(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceLink(): void {\n const newLinks: Linkage = {\n sites: []\n };\n this.substance.nucleicAcid.linkages.unshift(newLinks);\n this.propertyEmitter.next(this.substance.nucleicAcid.linkages);\n }\n\n deleteSubstanceLink(link: Link): void {\n const subLinkIndex = this.substance.nucleicAcid.linkages.findIndex(subCode => link.$$deletedCode === subCode.$$deletedCode);\n if (subLinkIndex > -1) {\n this.substance.nucleicAcid.linkages.splice(subLinkIndex, 1);\n this.propertyEmitter.next(this.substance.nucleicAcid.linkages);\n }\n }\n\n emitLinkUpdate(): void {\n this.propertyEmitter.next(this.substance.nucleicAcid.linkages);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { MixtureComponents } from '@gsrs-core/substance/substance.model';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class SubstanceFormMixtureComponentsService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.mixture != null) {\n if (this.substance.mixture.components == null) {\n this.substance.mixture.components = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.mixture.components);\n }\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceMixtureComponents(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceMixtureComponent(): void {\n const newMix: MixtureComponents = {};\n this.substance.mixture.components.unshift(newMix);\n this.propertyEmitter.next(this.substance.mixture.components);\n }\n\n deleteSubstanceMixtureComponent(mix: MixtureComponents): void {\n const subNameIndex = this.substance.mixture.components.findIndex(subName => mix.$$deletedCode === subName.$$deletedCode);\n if (subNameIndex > -1) {\n this.substance.mixture.components.splice(subNameIndex, 1);\n this.propertyEmitter.next(this.substance.mixture.components);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { Monomer } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormMonomersService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.polymer) {\n if (this.substance.polymer.monomers == null) {\n this.substance.polymer.monomers = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.polymer.monomers);\n }\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceMonomers(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceMonomer(): void {\n const newMix: Monomer = {};\n this.substance.polymer.monomers.unshift(newMix);\n this.propertyEmitter.next(this.substance.polymer.monomers);\n }\n\n deleteSubstanceMonomer(mix: Monomer): void {\n const subNameIndex = this.substance.polymer.monomers.findIndex(subName => mix.$$deletedCode === subName.$$deletedCode);\n if (subNameIndex > -1) {\n this.substance.polymer.monomers.splice(subNameIndex, 1);\n this.propertyEmitter.next(this.substance.polymer.monomers);\n }\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { SubstanceFormNamesModule } from './substance-form-names.module';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { ReplaySubject, Observable } from 'rxjs';\nimport { SubstanceName } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormNamesService extends SubstanceFormServiceBase> implements OnDestroy {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n ngOnDestroy() {\n}\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n\n this.substance = substance;\n if (this.substance.names == null) {\n this.substance.names = [];\n }\n // sort the names by display / primary name first, then alphabetically on initialization.\n substance.names.sort(function (a, b) {\n if (a.displayName) {\n return -1;\n } else {\n if (b.displayName) {\n return 1;\n }\n if (a.name < b.name) {\n return -1;\n }\n if (a.name > b.name) {\n return 1;\n }\n return 0;\n }\n });\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.names);\n });\n this.subscriptions.push(subscription);\n const namesUpdatedSubscription = this.substanceFormService.namesUpdated().subscribe(names => {\n this.propertyEmitter.next(names);\n });\n this.subscriptions.push(namesUpdatedSubscription);\n return;\n }\n\n get substanceNames(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceName(): void {\n const newName: SubstanceName = {\n references: [],\n access: []\n };\n this.substance.names.unshift(newName);\n this.propertyEmitter.next(this.substance.names);\n }\n\n deleteSubstanceName(name: SubstanceName): void {\n const subNameIndex = this.substance.names.findIndex(subName => name.$$deletedCode === subName.$$deletedCode);\n if (subNameIndex > -1) {\n this.substance.names.splice(subNameIndex, 1);\n this.propertyEmitter.next(this.substance.names);\n }\n }\n\n standardizeNames() {\n const bad = /[^ -~\\t\\n\\r]/g;\n const rep = '\\u2032;\\';\\u201b;\\';\\u2018;\\';\\u2019;\\';\\u03B1;.ALPHA.;\\u03B2;.BETA.;\\u03B3;.GAMMA.;\\u03B4;.DELTA.;\\u03B5;.EPSILON.;\\u03B6;.ZETA.;\\u03B7;.ETA.;\\u03B8;.THETA.;\\u03B9;.IOTA.;\\u03BA;.KAPPA.;\\u03BB;.LAMBDA.;\\u03BC;.MU.;\\u03BD;.NU.;\\u03BE;.XI.;\\u03BF;.OMICRON.;\\u03C0;.PI.;\\u03C1;.RHO.;\\u03C2;.SIGMA.;\\u03C3;.SIGMA.;\\u03C4;.TAU.;\\u03C5;.UPSILON.;\\u03C6;.PHI.;\\u03C7;.CHI.;\\u03C8;.PSI.;\\u03C9;.OMEGA.;\\u0391;.ALPHA.;\\u0392;.BETA.;\\u0393;.GAMMA.;\\u0394;.DELTA.;\\u0395;.EPSILON.;\\u0396;.ZETA.;\\u0397;.ETA.;\\u0398;.THETA.;\\u0399;.IOTA.;\\u039A;.KAPPA.;\\u039B;.LAMBDA.;\\u039C;.MU.;\\u039D;.NU.;\\u039E;.XI.;\\u039F;.OMICRON.;\\u03A0;.PI.;\\u03A1;.RHO.;\\u03A3;.SIGMA.;\\u03A4;.TAU.;\\u03A5;.UPSILON.;\\u03A6;.PHI.;\\u03A7;.CHI.;\\u03A8;.PSI.;\\u03A9;.OMEGA.;\\u2192;->;\\xB1;+/-;\\u2190;<-;\\xB2;2;\\xB3;3;\\xB9;1;\\u2070;0;\\u2071;1;\\u2072;2;\\u2073;3;\\u2074;4;\\u2075;5;\\u2076;6;\\u2077;7;\\u2078;8;\\u2079;9;\\u207A;+;\\u207B;-;\\u2080;0;\\u2081;1;\\u2082;2;\\u2083;3;\\u2084;4;\\u2085;5;\\u2086;6;\\u2087;7;\\u2088;8;\\u2089;9;\\u208A;+;\\u208B;-;\\u002d;-;\\u058a;-;\\u05be;-;\\u1400;-;\\u1806;-;\\u2011;-;\\u2012;-;\\u2013;-;\\u2014;-;\\u2015;-;\\u2e17;-;\\u2e1a;-;\\u2e3a;-;\\u2e3b;-;\\u2e40;-;\\u301c;-;\\u3030;-;\\u30a0;-;\\ufe31;-;\\ufe32;-;\\ufe58;-;\\ufe63;-;\\uff0d;-;\\u10ead;-;\\u2010;-;\\u2122;-;'.split(';');\n const map = {};\n for (let s = 0; s < rep.length; s++) {\n if (s % 2 === 0) {\n const id = rep[s].charCodeAt(0);\n map[id] = rep[s + 1];\n }\n }\n\n function replacer(match, got) {\n const temp = map[got.charCodeAt(0)];\n if (temp + '' === 'undefined') {\n return '';\n }\n return temp;\n }\n\n this.substance.names.forEach(n => {\n if (n.name) {\n let name = n.name;\n name = name.replace(/([\\u002d|\\u0390-\\u03C9|\\u2122|\\u2192|\\u00B1-\\u00B9|\\u2000-\\u208F|\\u2e17-\\u2e40|\\u301c-\\u30a0|\\ufe31-\\uff0d|\\u2190|])/g, replacer).trim();\n name = name.replace(' -', '-');\n name = name.replace('- ', '-');\n name = name.replace(bad, '');\n name = name.replace(/[[]([A-Z -.]*)\\]$/g, ' !!@!$1_!@!');\n name = name.replace(/[ \\t]+/g, ' ');\n name = name.replace(/[[]/g, '(');\n name = name.replace(/[{]/g, '(');\n name = name.replace(/\\]/g, ')');\n name = name.replace(/\\\"/g, '\\'\\'');\n name = name.replace(/[}]/g, ')');\n name = name.replace(/\\(([0-9]*CI,)*([0-9]*CI)\\)$/gm, '');\n name = name.replace(/[ ]*-[ ]*/g, '-');\n name = name.trim();\n name = name.replace('!!@!', '[');\n name = name.replace('_!@!', ']');\n n.name = name.toUpperCase();\n }\n });\n this.propertyEmitter.next(this.substance.names);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { SubstanceNote } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormNotesService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.notes == null) {\n this.substance.notes = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.notes);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceNotes(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceNote(): void {\n const newNote: SubstanceNote = {\n references: [],\n access: []\n };\n this.substance.notes.unshift(newNote);\n this.propertyEmitter.next(this.substance.notes);\n }\n\n deleteSubstanceNote(note: SubstanceNote): void {\n const subNoteIndex = this.substance.notes.findIndex(subNote => note.$$deletedCode === subNote.$$deletedCode);\n if (subNoteIndex > -1) {\n this.substance.notes.splice(subNoteIndex, 1);\n this.propertyEmitter.next(this.substance.notes);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { Link } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormOtherLinksService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.protein) {\n if (this.substance.protein.otherLinks == null) {\n this.substance.protein.otherLinks = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.protein.otherLinks);\n }\n });\n this.subscriptions.push(subscription);\n const otherLinksUpdatedSubscription = this.substanceFormService.otherLinksUpdated().subscribe(links => {\n this.propertyEmitter.next(links);\n });\n this.subscriptions.push(otherLinksUpdatedSubscription);\n }\n\n get substanceOtherLinks(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceOtherLink(): void {\n const newOtherLinks: Link = {\n references: [],\n access: []\n };\n this.substance.protein.otherLinks.unshift(newOtherLinks);\n this.propertyEmitter.next(this.substance.protein.otherLinks);\n }\n\n deleteSubstanceOtherLink(link: Link): void {\n const subLinkIndex = this.substance.protein.otherLinks.findIndex(subCode => link.$$deletedCode === subCode.$$deletedCode);\n if (subLinkIndex > -1) {\n this.substance.protein.otherLinks.splice(subLinkIndex, 1);\n this.propertyEmitter.next(this.substance.protein.otherLinks);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { PhysicalModification } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormPhysicalModificationsService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (!this.substance.modifications) {\n this.substance.modifications = {};\n }\n if (!this.substance.modifications.physicalModifications) {\n this.substance.modifications.physicalModifications = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.modifications.physicalModifications);\n });\n this.subscriptions.push(subscription);\n }\n\n get substancePhysicalModifications(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstancePhysicalModification(): void {\n const newPhysicalModifications: PhysicalModification = {};\n this.substance.modifications.physicalModifications.unshift(newPhysicalModifications);\n this.propertyEmitter.next(this.substance.modifications.physicalModifications);\n }\n\n deleteSubstancePhysicalModification(physicalModification: PhysicalModification): void {\n const physicalModIndex = this.substance.modifications.physicalModifications.findIndex(\n physicalMod => physicalModification.$$deletedCode === physicalMod.$$deletedCode);\n if (physicalModIndex > -1) {\n this.substance.modifications.physicalModifications.splice(physicalModIndex, 1);\n this.propertyEmitter.next(this.substance.modifications.physicalModifications);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { PolymerClassification } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormPolymerClassificationService extends SubstanceFormServiceBase {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.polymer) {\n if (this.substance.polymer.classification == null) {\n this.substance.polymer.classification = {};\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.polymer.classification);\n }\n });\n this.subscriptions.push(subscription);\n }\n\n get substancePolymerClassification(): Observable {\n return this.propertyEmitter.asObservable();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { SubstanceProperty } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormPropertiesService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.properties == null) {\n this.substance.properties = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.properties);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceProperties(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceProperty(): void {\n const newProperty: SubstanceProperty = {\n value: {},\n references: [],\n access: []\n };\n this.substance.properties.unshift(newProperty);\n this.propertyEmitter.next(this.substance.properties);\n }\n\n addSubstancePropertyFromFeature(feature: any): void {\n let type = 'NUCLEIC ACID FEATURE';\n if (this.substance.substanceClass === 'protein') {\n type = 'PROTEIN FEATURE';\n }\n const newProperty: SubstanceProperty = {\n value: { 'nonNumericValue': feature.siteRange, 'type': 'Site Range' },\n propertyType: type,\n name: feature.name,\n references: [],\n access: []\n };\n this.substance.properties.unshift(newProperty);\n this.substanceFormService.recalculateAllSites('features');\n this.propertyEmitter.next(this.substance.properties);\n }\n\n deleteSubstanceProperty(property: SubstanceProperty): void {\n const subPropertyIndex =\n this.substance.properties.findIndex(subProperty => property.$$deletedCode === subProperty.$$deletedCode);\n if (subPropertyIndex > -1) {\n this.substance.properties.splice(subPropertyIndex, 1);\n this.propertyEmitter.next(this.substance.properties);\n }\n }\n}\n","
        \r\n
        \r\n \r\n \r\n \r\n \r\n Type\r\n \r\n \r\n {{propertyType.display}}\r\n \r\n \r\n \r\n
        \r\n
        \r\n
        Amount
        \r\n \r\n
        \r\n
        ","import { Component, OnInit, Input } from '@angular/core';\r\nimport { SubstanceParameter } from '@gsrs-core/substance/substance.model';\r\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\r\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\r\nimport { FormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-property-parameter-form',\r\n templateUrl: './property-parameter-form.component.html',\r\n styleUrls: ['./property-parameter-form.component.scss']\r\n})\r\nexport class PropertyParameterFormComponent implements OnInit {\r\n private privateParameter: SubstanceParameter;\r\n propertyTypeList: Array = [];\r\n\r\n constructor(\r\n private cvService: ControlledVocabularyService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.getVocabularies();\r\n }\r\n\r\n @Input()\r\n set parameter(parameter: SubstanceParameter) {\r\n this.privateParameter = parameter;\r\n }\r\n\r\n get parameter(): SubstanceParameter {\r\n return this.privateParameter;\r\n }\r\n\r\n getVocabularies(): void {\r\n this.cvService.getDomainVocabulary('PROPERTY_TYPE').subscribe(response => {\r\n this.propertyTypeList = response['PROPERTY_TYPE'].list;\r\n });\r\n }\r\n\r\n get isValid(): boolean {\r\n return (this.privateParameter.name != null && this.privateParameter.name !== '')\r\n && (this.privateParameter.type != null && this.privateParameter.type !== '');\r\n }\r\n}\r\n","

        {{isNew ? 'Add' : 'Edit'}} Parameter

        \r\n
        \r\n
        \r\n \r\n \r\n
        \r\n \r\n \r\n \r\n
        \r\n
        \r\n
        \r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { SubstanceParameter } from '../../substance/substance.model';\r\n\r\n@Component({\r\n selector: 'app-property-parameter-dialog',\r\n templateUrl: './property-parameter-dialog.component.html',\r\n styleUrls: ['./property-parameter-dialog.component.scss']\r\n})\r\nexport class PropertyParameterDialogComponent implements OnInit {\r\n isNew: boolean;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public subsParameter: SubstanceParameter\r\n ) {\r\n this.isNew = Object.keys(subsParameter).length < 2;\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n save(): void {\r\n this.dialogRef.close(this.subsParameter);\r\n }\r\n\r\n cancel(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","\n\n \n \n
        \n
        \n \n {{domainsWithReferences.definition.subClass}}\n \n
        \n \n
        \n \n \n \n \n
        \n \n {{(domain[domainsWithReferences[domainKey].displayKey].length>50)? (domain[domainsWithReferences[domainKey].displayKey] | slice:0:50)+'...':(domain[domainsWithReferences[domainKey].displayKey])}}\n \n \n {{(domain.relatedSubstance.name.length>40)? (domain.relatedSubstance.name | slice:0:40)+'...':(domain.relatedSubstance.name)}}\n \n \n {{(domain.substance.name.length > 40)? (domain.substance.name | slice:0:40)+'...':(domain.substance.name)}}\n \n
        \n
        \n
        \n
        \n
        \n
        ","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\nimport { domainKeys } from '../domain-references/domain-keys.constant';\nimport { DomainsWithReferences } from '../domain-references/domain.references.model';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { Subscription } from 'rxjs';\nimport { SubstanceFormReferencesService } from '../substance-form-references.service';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-apply-reference',\n templateUrl: './apply-reference.component.html',\n styleUrls: ['./apply-reference.component.scss']\n})\nexport class ApplyReferenceComponent implements OnInit, OnDestroy {\n domainKeys = domainKeys;\n domainsWithReferences: DomainsWithReferences;\n private privateSubReferenceUuid: string;\n private subscriptions: Array< Subscription > = [];\n open = false;\n\n constructor(\n private substanceFormReferencesService: SubstanceFormReferencesService\n ) { }\n\n ngOnInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n setOpen() {\n this.open = true;\n const subscription = this.substanceFormReferencesService.domainsWithReferences.pipe(take(1)).subscribe(domainsWithReferences => {\n this.domainsWithReferences = domainsWithReferences;\n this.setChecked();\n });\n this.subscriptions.push(subscription);\n }\n\n @Input()\n set subReferenceUuid(uuid: string) {\n this.privateSubReferenceUuid = uuid;\n }\n\n applyToAll(): void {\n this.applyReference(this.domainsWithReferences.definition.domain);\n this.domainKeys.forEach(key => {\n if (this.domainsWithReferences[key]) {\n this.domainsWithReferences[key].domains.forEach(domain => {\n this.applyReference(domain);\n });\n }\n });\n this.substanceFormReferencesService.emitReferencesUpdate();\n\n\n }\n\n applyToAllWithoutRef(): void {\n if (this.domainsWithReferences.definition.domain.references == null\n || this.domainsWithReferences.definition.domain.references.length === 0) {\n this.applyReference(this.domainsWithReferences.definition.domain);\n }\n\n this.domainKeys.forEach(key => {\n if (this.domainsWithReferences[key] && this.domainsWithReferences[key].domains && this.domainsWithReferences[key].domains.length) {\n this.domainsWithReferences[key].domains.forEach(domain => {\n if (!domain.references || domain.references.length === 0) {\n this.applyReference(domain);\n }\n });\n }\n });\n this.substanceFormReferencesService.emitReferencesUpdate();\n\n }\n\n applyToAllDomain(domainKey: string): void {\n\n this.domainsWithReferences[domainKey].domains.forEach(domain => {\n this.applyReference(domain);\n });\n this.substanceFormReferencesService.emitReferencesUpdate();\n }\n\n close() {\n this.domainsWithReferences = null;\n this.open = false;\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n setChecked() {\n if(this.domainsWithReferences.definition && this.domainsWithReferences.definition.domain) {\n this.domainsWithReferences.definition.domain.checked = this.domainsWithReferences.definition.domain.references &&\n this.domainsWithReferences.definition.domain.references.indexOf(this.privateSubReferenceUuid) > -1;\n }\n this.domainKeys.forEach(domain => {\n if (this.domainsWithReferences[domain]) {\n if(this.domainsWithReferences[domain].domains) {\n this.domainsWithReferences[domain].domains.forEach(element => {\n element.checked = element.references && element.references.indexOf(this.privateSubReferenceUuid) > -1;\n });\n }\n }\n });\n\n }\n\n applyToAllDomainWithoutRef(domainKey: string): void {\n if (this.domainsWithReferences[domainKey] && this.domainsWithReferences[domainKey].domains\n && this.domainsWithReferences[domainKey].domains.length) {\n this.domainsWithReferences[domainKey].domains.forEach(domain => {\n if (!domain.references || domain.references.length === 0) {\n this.applyReference(domain);\n }\n });\n }\n this.substanceFormReferencesService.emitReferencesUpdate();\n }\n\n updateAppliedOtion(event: MatCheckboxChange, domain: any): void {\n if (event.checked) {\n this.applyReference(domain);\n } else {\n this.removeReference(domain);\n }\n this.substanceFormReferencesService.emitReferencesUpdate();\n }\n\n applyReference(domain: any): void {\n if (!domain.references) {\n domain.references = [];\n }\n if (domain.references.indexOf(this.privateSubReferenceUuid) === -1) {\n domain.references.push(this.privateSubReferenceUuid);\n }\n }\n\n removeReference(domain: any): void {\n if (domain.references && domain.references.length) {\n const referenceUuidIndex = domain.references.indexOf(this.privateSubReferenceUuid);\n\n if (referenceUuidIndex > -1) {\n domain.references.splice(this.privateSubReferenceUuid, 1);\n }\n }\n }\n\n getDomainDisplay(obj: any, path: string, defaultValue: any = null): string {\n return String.prototype.split.call(path, /[,[\\].]+?/)\n .filter(Boolean)\n .reduce((a: any, c: string) => (Object.hasOwnProperty.call(a, c) ? a[c] : defaultValue), obj);\n }\n\n isApplied(domain: any): boolean {\n return domain && domain.references && domain.references.indexOf(this.privateSubReferenceUuid) > -1;\n }\n\n}\n","export const domainKeys = [\n 'names',\n 'codes',\n 'relationships',\n 'notes',\n 'properties',\n 'constituents'\n];\n\nexport const domainDisplayKeys = {\n names: 'name',\n codes: 'code',\n relationships: 'relatedSubstance.name',\n notes: 'note',\n properties: 'name',\n constituents: 'substance.name'\n};\n","
        \n \n \n
        \n
        \n\n \n
        0\">\n Select a recently submitted reference to populate the form\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        Use select Citation \n {{reference.citation}} \n {{reference.citation}} \n Type {{reference.docType}} Tags \n {{tag}}\n Date Accessed {{reference.lastEdited | date : 'short'}}
        \n
        \n
        \n No previous references found for this user\n
        \n\n
        ","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { SubstanceReference } from '@gsrs-core/substance/substance.model';\n\n@Component({\n selector: 'app-previous-references',\n templateUrl: './previous-references.component.html',\n styleUrls: ['./previous-references.component.scss']\n})\nexport class PreviousReferencesComponent implements OnInit {\n user: string;\n refCount: number;\n loading = true;\noldReferences: Array = [];\ndisplayedColumns: string[] = ['use', 'citation', 'type', 'tags', 'dateAcessed'];\n@Output() selectedReference = new EventEmitter();\n constructor(\n private substanceService: SubstanceService,\n private authService: AuthService) { }\n\n ngOnInit() {\n this.user = this.authService.getUser();\n this.substanceService.getSubstanceReferences(1, this.user).subscribe( response => {\n if (response.total) {\n this.refCount = response.total;\n } else {\n this.refCount = 0;\n }\n this.getPreviousReferences();\n });\n }\n\n getPreviousReferences(): void {\n let skip = this.refCount - 100;\n\n if (this.refCount < 100) {\n skip = 0;\n }\n this.substanceService.getSubstanceReferences(12, this.user).subscribe( response => {\n if (response.count && response.content) {\n for (let i = (response.content.length - 1); i >= 0; i--) {\n\n if (this.user === response.content[i]['lastEditedBy']\n && response.content[i]['docType']\n && response.content[i]['citation']\n && response.content[i]['docType'] !== 'VALIDATION_MESSAGE'\n && response.content[i]['docType'] !== 'SYSTEM'\n && response.content[i]['docType'] !== 'BATCH_IMPORT'\n && response.content[i]['docType'] !== 'VALIDATION_MESSAGE' ) {\n this.oldReferences.push(response.content[i]);\n if (this.oldReferences.length >= 12) {\n break;\n }\n }\n }\n this.loading = false;\n } else {\n this.loading = false;\n }\n });\n }\n\n selectReference(ref: SubstanceReference) {\n this.selectedReference.emit(ref);\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { SubstanceReference } from '@gsrs-core/substance/substance.model';\n\n@Component({\n selector: 'app-previous-references-dialog',\n templateUrl: './previous-references-dialog.component.html',\n styleUrls: ['./previous-references-dialog.component.scss']\n})\nexport class PreviousReferencesDialogComponent implements OnInit {\n\n constructor( public dialogRef: MatDialogRef,\n ) { }\n\n ngOnInit() {\n }\n cancel(): void {\n this.dialogRef.close();\n }\n\n fillReference(ref: SubstanceReference) {\n this.dialogRef.close(ref);\n }\n}\n","
        \n

        Select Previously Used Reference

        \n
        \n
        \n \n
        \n
        \n \n \n
        ","
        \n
        \n Deleted \n \n
        \n
        \n \n \n \n \n \n
        \n \n Public Domain\n \n
        \n
        \n \n \n
        \n
        \n
        \n
        \n \n \n \n \n \n \n \n
        \n
        \n
        \n \n
        \n
        \n \n
        \n
        \n \n \n Download\n \n \n \n
        \n
        \n
        \n \n \n
        \n \n Uploading\n
        \n
        \n Error: There was a problem uploading this document\n
        \n
        \n \n
        \n
        \n \n
        \n \n
        \n \n
        \n
        \n
        \n
        \n \n
        \n
        \n \n
        \n
        \n","import { Component, OnInit, Input, AfterViewInit, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { SubstanceReference } from '../../substance/substance.model';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UtilsService } from '../../utils/utils.service';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceFormReferencesService } from './substance-form-references.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { MatDialog } from '@angular/material/dialog';\nimport { PreviousReferencesDialogComponent } from '@gsrs-core/substance-form/references/previous-references/previous-references-dialog/previous-references-dialog.component';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-reference-form',\n templateUrl: './reference-form.component.html',\n styleUrls: ['./reference-form.component.scss']\n})\nexport class ReferenceFormComponent implements OnInit, AfterViewInit, OnDestroy {\n @Input() reference: SubstanceReference;\n @Output() referenceDeleted = new EventEmitter();\n @Input() hideDelete = false;\n private overlayContainer: HTMLElement;\n deleteTimer: any;\n showPrev = false;\n loading = false;\n error = false;\n private subscriptions: Array = [];\n constructor(\n private cvService: ControlledVocabularyService,\n private utilsService: UtilsService,\n private substanceFormReferencesService: SubstanceFormReferencesService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n updateAccess(access: Array): void {\n this.reference.access = access;\n }\n\n updateTags(tags: Array): void {\n this.reference.tags = tags;\n }\n\n get isValid(): boolean {\n if (this.reference.docType\n && this.reference.citation) {\n return true;\n } else {\n return false;\n }\n }\n\n deleteReference(): void {\n this.reference.$$deletedCode = this.utilsService.newUUID();\n if (!this.reference.docType\n && !this.reference.citation\n && !this.reference.uploadedFile\n ) {\n this.deleteTimer = setTimeout(() => {\n this.referenceDeleted.emit(this.reference);\n }, 2000);\n } else {\n this.substanceFormReferencesService.emitReferencesUpdate();\n }\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.reference.$$deletedCode;\n this.substanceFormReferencesService.emitReferencesUpdate();\n }\n\n fileSelected(file: File): void {\n this.error = false;\n if (file != null) {\n this.loading = true;\n this.utilsService.uploadFile(file).subscribe(response => {\n this.reference.uploadedFile = response;\n this.loading = false;\n\n }, error => {\n this.loading = false;\n this.error = true;\n\n });\n }\n }\n\n openPreviousDialog(): void {\n const dialogRef = this.dialog.open(PreviousReferencesDialogComponent, {\n data: {},\n width: '990px'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(ref => {\n this.overlayContainer.style.zIndex = null;\n if (ref) {\n if (ref.citation && ref.citation !== '' && ref.docType && ref.docType !== '') {\n this.fillReference(ref);\n }\n }\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n fillReference(ref: SubstanceReference) {\n this.showPrev = false;\n this.reference.access = ref.access;\n this.reference.citation = ref.citation;\n this.reference.deprecated = ref.deprecated;\n this.reference.docType = ref.docType;\n this.reference.publicDomain = ref.publicDomain;\n this.reference.tags = ref.tags;\n this.reference.uploadedFile = ref.uploadedFile;\n this.reference.url = ref.url || null;\n this.reference.id = ref.id || null;\n }\n\n downloadDocument(url: string): void {\n this.substanceFormService.bypassUpdateCheck();\n window.open(url);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { domainKeys, domainDisplayKeys } from './domain-references/domain-keys.constant';\nimport { DomainsWithReferences } from './domain-references/domain.references.model';\nimport { SubstanceReference } from '@gsrs-core/substance/substance.model';\nimport { ReplaySubject, Observable } from 'rxjs';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { UtilsService } from '@gsrs-core/utils';\n\n@Injectable()\nexport class SubstanceFormReferencesService extends SubstanceFormServiceBase> {\n private privateDomainsWithReferences: DomainsWithReferences;\n private domainsWithReferencesEmitter = new ReplaySubject();\n\n constructor(\n public substanceFormService: SubstanceFormService,\n private utilsService: UtilsService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.privateDomainsWithReferences = null;\n this.substance = substance;\n if (this.substance.references == null) {\n this.substance.references = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.references);\n this.domainsWithReferencesEmitter.next(this.getDomainReferences());\n });\n this.subscriptions.push(subscription);\n }\n\n unloadSubstance() {\n super.unloadSubstance();\n this.domainsWithReferencesEmitter.complete();\n this.domainsWithReferencesEmitter = new ReplaySubject();\n }\n\n get substanceReferences(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceReference(reference: SubstanceReference): SubstanceReference {\n reference.uuid = this.utilsService.newUUID();\n if (this.substance.references == null) {\n this.substance.references = [];\n }\n this.substance.references.unshift(reference);\n this.propertyEmitter.next(this.substance.references);\n return reference;\n }\n\n get domainsWithReferences(): Observable {\n return this.domainsWithReferencesEmitter.asObservable();\n }\n\n getDomainReferences(): DomainsWithReferences {\n let subClass = this.substance.substanceClass;\n if (this.substance.substanceClass === 'chemical') {\n subClass = 'structure';\n } else if (this.substance.substanceClass === 'specifiedSubstanceG1') {\n subClass = 'specifiedSubstance';\n }\n\n const trimmedDomain = {\n uuid: this.substance[subClass]['uuid'],\n references: this.substance[subClass]['references'],\n };\n this.privateDomainsWithReferences = {\n definition: {\n subClass: this.substance.substanceClass,\n domain: trimmedDomain\n }\n };\n if (subClass === 'specifiedSubstance') {\n this.privateDomainsWithReferences = {\n definition: {\n subClass: this.substance.substanceClass,\n domain: trimmedDomain\n }\n };\n }\n\n this.privateDomainsWithReferences = {\n definition: {\n subClass: this.substance.substanceClass,\n domain: this.substance[subClass]\n }\n };\n domainKeys.forEach(key => {\n if (key !== 'constituents') {\n this.privateDomainsWithReferences[key] = {\n listDisplay: key,\n displayKey: domainDisplayKeys[key],\n domains: this.substance[key] || []\n };\n } else {\n let dom = [];\n if (subClass === 'specifiedSubstance' && this.substance.specifiedSubstance &&\n this.substance.specifiedSubstance.constituents) {\n dom = this.substance.specifiedSubstance.constituents;\n }\n this.privateDomainsWithReferences[key] = {\n listDisplay: 'constituents',\n displayKey: 'constituent',\n domains: dom\n };\n }\n });\n\n /* domainKeys.forEach(key => {\n const temp = [];\n let keyFix = key;\n if (key === 'constituents' && subClass === 'specifiedSubstance') {\n keyFix = 'specifiedSubstance[\"constituents\"]';\n if (this.substance.specifiedSubstance && this.substance.specifiedSubstance.constituents) {\n this.substance.specifiedSubstance.constituents.forEach( object => {\n let toAdd = {\n uuid: object.uuid,\n display: '',\n references: object.references\n };\n if (object && object.substance) {\n toAdd.display = object.substance.name;\n temp.push(toAdd);\n }\n });\n }\n } else {\n if (this.substance[keyFix]) {\n this.substance[keyFix].forEach( object => {\n let toAdd = {\n uuid: object.uuid,\n display: '',\n references: object.references\n };\n if (object) {\n if (domainDisplayKeys[key].indexOf('.') > 0) {\n const split = domainDisplayKeys[key].split('.');\n\n toAdd[domainDisplayKeys[key]] = object[split[0]][split[1]];\n toAdd.display = object[split[0]][split[1]];\n\n } else {\n toAdd[domainDisplayKeys[key]] = object[domainDisplayKeys[key]];\n toAdd.display = object[domainDisplayKeys[key]];\n }\n temp.push(toAdd);\n }\n });\n }\n }\n this.privateDomainsWithReferences[key] = {\n listDisplay: key,\n displayKey: domainDisplayKeys[key],\n domains: temp\n };\n }); */\n return this.privateDomainsWithReferences;\n }\n\n\n deleteSubstanceReference(reference: SubstanceReference): void {\n const subRefIndex = this.substance.references.findIndex(subReference => reference.$$deletedCode === subReference.$$deletedCode);\n if (subRefIndex > -1) {\n this.substance.references.splice(subRefIndex, 1);\n this.propertyEmitter.next(this.substance.references);\n }\n }\n\n emitReferencesUpdate(): void {\n this.propertyEmitter.next(this.substance.references);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { SubstanceRelationship } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormRelationshipsService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.relationships == null) {\n this.substance.relationships = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.relationships);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceRelationships(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceRelationship(): void {\n const newRelationship: SubstanceRelationship = {\n relatedSubstance: {},\n amount: {},\n references: [],\n access: []\n };\n this.substance.relationships.unshift(newRelationship);\n this.propertyEmitter.next(this.substance.relationships);\n }\n\n deleteSubstanceRelationship(relationship: SubstanceRelationship): void {\n const subRelationshipIndex = this.substance.relationships\n .findIndex(subRelationship => relationship.$$deletedCode === subRelationship.$$deletedCode);\n if (subRelationshipIndex > -1) {\n this.substance.relationships.splice(subRelationshipIndex, 1);\n this.propertyEmitter.next(this.substance.relationships);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { Observable } from 'rxjs';\nimport { StructuralModification } from '@gsrs-core/substance/substance.model';\n\n@Injectable()\nexport class SubstanceFormStructuralModificationsService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (!this.substance.modifications) {\n this.substance.modifications = {};\n }\n if (!this.substance.modifications.structuralModifications) {\n this.substance.modifications.structuralModifications = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.modifications.structuralModifications);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceStructuralModifications(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSubstanceStructuralModification(): void {\n if (!this.substance.modifications) {\n this.substance.modifications = {};\n }\n if (!this.substance.modifications.structuralModifications) {\n this.substance.modifications.structuralModifications = [];\n }\n const newStructuralModifications: StructuralModification = { references: [], sites: [], access: [] };\n this.substance.modifications.structuralModifications.unshift(newStructuralModifications);\n this.propertyEmitter.next(this.substance.modifications.structuralModifications);\n }\n\n deleteSubstanceStructuralModification(structuralModification: StructuralModification): void {\n const structuralModIndex = this.substance.modifications.structuralModifications.findIndex(\n structuralMod => structuralModification.$$deletedCode === structuralMod.$$deletedCode);\n if (structuralModIndex > -1) {\n this.substance.modifications.structuralModifications.splice(structuralModIndex, 1);\n this.propertyEmitter.next(this.substance.modifications.structuralModifications);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { StructuralUnit } from '@gsrs-core/substance/structural-unit.model';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class SubstanceFormStructuralUnitsService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.polymer != null) {\n if (this.substance.polymer.structuralUnits == null) {\n this.substance.polymer.structuralUnits = [];\n } else {\n this.setSRUConnectivityDisplay(this.substance.polymer.structuralUnits);\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.polymer.structuralUnits);\n }\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceSRUs(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n deleteSubstanceSRU(unit: StructuralUnit): void {\n const subNameIndex = this.substance.polymer.structuralUnits.findIndex(subName => unit.$$deletedCode === subName.$$deletedCode);\n if (subNameIndex > -1) {\n this.substance.polymer.structuralUnits.splice(subNameIndex, 1);\n this.propertyEmitter.next(this.substance.polymer.structuralUnits);\n }\n }\n\n updateSRUs(SRUs: Array): void {\n this.setSRUConnectivityDisplay(SRUs);\n this.substance.polymer.structuralUnits = SRUs;\n this.propertyEmitter.next(this.substance.polymer.structuralUnits);\n }\n\n private setSRUConnectivityDisplay(srus: any) {\n const rmap = this.getAttachmentMapUnits(srus);\n // eslint-disable-next-line guard-for-in\n for (const i in srus) {\n const disp = this.sruConnectivityToDisplay(srus[i].attachmentMap, rmap);\n srus[i]._displayConnectivity = disp;\n }\n }\n\n private getAttachmentMapUnits(srus: any) {\n const rmap = {};\n // eslint-disable-next-line guard-for-in\n for (const i in srus) {\n let lab = srus[i].label;\n if (!lab) {\n lab = '{' + i + '}';\n }\n for (const k in srus[i].attachmentMap) {\n if (srus[i].attachmentMap.hasOwnProperty(k)) {\n rmap[k] = lab;\n }\n }\n }\n return rmap;\n }\n\n private sruConnectivityToDisplay(amap: any, rmap: any) {\n let disp = '';\n for (const k in amap) {\n if (amap.hasOwnProperty(k)) {\n const start = rmap[k] + '_' + k;\n // eslint-disable-next-line guard-for-in\n for (const i in amap[k]) {\n const end = rmap[amap[k][i]] + '_' + amap[k][i];\n disp += start + '-' + end + ';\\n';\n }\n }\n }\n if (disp === '') { return undefined; }\n return disp;\n }\n\n // This function not being used anywhere. Consider removing\n private sruDisplayToConnectivity(display: any) {\n if (!display) {\n return {};\n }\n const errors = [];\n const connections = display.split(';');\n const regex = /^\\s*[A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)[-][A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)\\s*$/g;\n const map = {};\n for (let i = 0; i < connections.length; i++) {\n const con = connections[i].trim();\n if (con === '') { continue; }\n regex.lastIndex = 0;\n const res = regex.exec(con);\n if (res == null) {\n const text = 'Connection \\'' + con + '\\' is not properly formatted';\n errors.push({\n text: text,\n type: 'warning'\n });\n } else {\n if (!map[res[1]]) {\n map[res[1]] = [];\n }\n map[res[1]].push(res[2]);\n }\n }\n if (errors.length > 0) {\n // map.$errors = errors;\n }\n return map;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { StructurallyDiverse } from '@gsrs-core/substance/substance.model';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class SubstanceFormStructurallyDiverseService extends SubstanceFormServiceBase {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.structurallyDiverse == null) {\n this.substance.structurallyDiverse = { $$diverseType: 'whole', part: ['WHOLE'] };\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.structurallyDiverse);\n });\n this.subscriptions.push(subscription);\n }\n\n get substanceStructurallyDiverse(): Observable {\n return this.propertyEmitter.asObservable();\n }\n\n emitStructurallyDiverseUpdate(): void {\n this.propertyEmitter.next(this.substance.structurallyDiverse);\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { SubstanceFormServiceBase } from '../base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../substance-form.service';\nimport { ReplaySubject, Observable } from 'rxjs';\nimport { SubstanceStructure, SubstanceMoiety, PolymerClassification } from '@gsrs-core/substance/substance.model';\nimport { StructureService } from '@gsrs-core/structure';\nimport { take } from 'rxjs/operators';\n\n@Injectable()\nexport class SubstanceFormStructureService extends SubstanceFormServiceBase {\n private substanceIdealizedStructureEmitter = new ReplaySubject();\n private substanceMoietiesEmitter = new ReplaySubject>();\n private computedMoieties: Array;\n private deletedMoieties: Array = [];\n\n constructor(\n public substanceFormService: SubstanceFormService,\n public structureService: StructureService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const substanceSubscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (this.substance.polymer != null || this.substance.structure != null) {\n if (this.substance.polymer != null) {\n if (this.substance.polymer.idealizedStructure == null) {\n this.substance.polymer.idealizedStructure = {\n references: [],\n access: []\n };\n }\n this.substanceIdealizedStructureEmitter.next(this.substance.polymer.idealizedStructure);\n } else if (this.substance.structure != null) {\n if (this.substance.structure == null) {\n this.substance.structure = {\n references: [],\n access: []\n };\n }\n this.propertyEmitter.next(this.substance.structure);\n }\n this.setMoities();\n this.substanceFormService.resetState();\n this.substanceMoietiesEmitter.next(this.substance.moieties);\n }\n });\n this.subscriptions.push(substanceSubscription);\n }\n\n setMoities(): void {\n if (this.substance.structure != null && this.substance.structure.molfile != null) {\n this.structureService.interpretStructure(this.substance.structure.molfile).pipe(take(1)).subscribe(response => {\n this.computedMoieties = response.moieties;\n });\n }\n if (this.substance.substanceClass === 'polymer') {\n this.substance.moieties = [];\n if (this.substance.polymer.idealizedStructure != null && this.substance.polymer.idealizedStructure.molfile != null) {\n this.structureService.interpretStructure(this.substance.polymer.idealizedStructure.molfile).pipe(take(1)).subscribe(response => {\n this.computedMoieties = response.moieties;\n this.substance.moieties = response.moieties;\n });\n }\n }\n if (this.substance.moieties == null) {\n this.substance.moieties = [];\n }\n }\n\n unloadSubstance() {\n this.substanceIdealizedStructureEmitter.complete();\n this.substanceIdealizedStructureEmitter = new ReplaySubject();\n this.substanceMoietiesEmitter.complete();\n this.substanceMoietiesEmitter = new ReplaySubject>();\n super.unloadSubstance();\n }\n\n get substanceIdealizedStructure(): Observable {\n return this.substanceIdealizedStructureEmitter.asObservable();\n }\n\n get substanceStructure(): Observable {\n return this.propertyEmitter.asObservable();\n }\n\n get substanceMoieties(): Observable> {\n return this.substanceMoietiesEmitter.asObservable();\n }\n\n updateMoieties(moieties: Array): void {\n\n const moietiesCopy = moieties.slice();\n const substanceMoietiesCopy = this.substance.moieties ? this.substance.moieties.slice() : [];\n\n if (this.substance.moieties) {\n this.substance.moieties.forEach((subMoiety, index) => {\n const matchingMoietyIndex = moietiesCopy.findIndex(moiety => moiety.hash === subMoiety.hash);\n\n if (matchingMoietyIndex > -1) {\n subMoiety.molfile = moietiesCopy[matchingMoietyIndex].molfile;\n\n const matchingComputedMoiety = this.computedMoieties.find(computedMoiety => computedMoiety.hash === subMoiety.hash);\n\n if (matchingComputedMoiety != null && moietiesCopy[matchingMoietyIndex].count !== matchingComputedMoiety.count) {\n subMoiety.count = moietiesCopy[matchingMoietyIndex].count;\n subMoiety.countAmount = moietiesCopy[matchingMoietyIndex].countAmount;\n }\n\n const substanceIndexToRemove = substanceMoietiesCopy.findIndex(moietyCopy => moietyCopy.hash === subMoiety.hash);\n const moietyIndexToRemove = moietiesCopy.findIndex(moietyCopy => moietyCopy.hash === subMoiety.hash);\n substanceMoietiesCopy.splice(substanceIndexToRemove, 1);\n moietiesCopy.splice(moietyIndexToRemove, 1);\n }\n });\n }\n\n if (moietiesCopy.length > 0) {\n moietiesCopy.forEach(moietyCopy => {\n const moietyIndexInDeleted = this.deletedMoieties.findIndex(deletedMoiety => deletedMoiety.hash === moietyCopy.hash);\n\n if (moietyIndexInDeleted > -1) {\n const undeletedMoiety = this.deletedMoieties.splice(moietyIndexInDeleted, 1)[0];\n\n undeletedMoiety.molfile = moietyCopy.molfile;\n\n const matchingComputedMoiety = this.computedMoieties.find(computedMoiety => computedMoiety.hash === undeletedMoiety.hash);\n\n if (matchingComputedMoiety != null && moietyCopy.count !== matchingComputedMoiety.count) {\n undeletedMoiety.count = moietyCopy.count;\n undeletedMoiety.countAmount = moietyCopy.countAmount;\n }\n\n this.substance.moieties.push(undeletedMoiety);\n } else {\n moietyCopy.uuid = '';\n if (this.substance.moieties) {\n this.substance.moieties.push(moietyCopy);\n }\n }\n });\n }\n\n if (substanceMoietiesCopy.length > 0) {\n substanceMoietiesCopy.forEach(subMoietyCopy => {\n const indexToDelete = this.substance.moieties.findIndex(subMoiety => subMoiety.hash === subMoietyCopy.hash);\n if (indexToDelete > -1) {\n const deletedMoiety = this.substance.moieties.splice(indexToDelete, 1)[0];\n this.deletedMoieties.push(deletedMoiety);\n }\n });\n }\n\n this.computedMoieties = moieties;\n this.substanceMoietiesEmitter.next(this.substance.moieties);\n }\n\n get substanceDisplayStructure(): Observable {\n return this.substanceIdealizedStructureEmitter.asObservable();\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AccessManagerComponent } from './access-manager/access-manager.component';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { TagSelectorComponent } from './tag-selector/tag-selector.component';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { ScrollToModule } from '../scroll-to/scroll-to.module';\nimport { DomainReferencesComponent } from './references/domain-references/domain-references.component';\nimport { ReferenceFormComponent } from './references/reference-form.component';\nimport { RefernceFormDialogComponent } from './references/references-dialogs/refernce-form-dialog.component';\nimport { ReuseReferencesDialogComponent } from './references/references-dialogs/reuse-references-dialog.component';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { ExpandDetailsModule } from '../expand-details/expand-details.module';\nimport { StructureFormComponent } from './structure/structure-form.component';\nimport { AmountFormComponent } from './amount-form/amount-form.component';\nimport { SubstanceSelectorModule } from '../substance-selector/substance-selector.module';\nimport { ApplyReferenceComponent } from './references/apply-reference/apply-reference.component';\nimport { PropertyParameterFormComponent } from './property-parameter-form/property-parameter-form.component';\nimport { PropertyParameterDialogComponent } from './property-parameter-dialog/property-parameter-dialog.component';\nimport { MatListModule } from '@angular/material/list';\nimport { FileSelectModule } from 'file-select';\nimport { SubunitFormComponent } from './subunit-form/subunit-form.component';\nimport {SubunitDisplayPipe} from '@gsrs-core/utils/subunit-display.pipe';\nimport {SubunitSelectorComponent} from '@gsrs-core/substance-form/subunit-selector/subunit-selector.component';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport {AmountFormDialogComponent} from '@gsrs-core/substance-form/amount-form-dialog/amount-form-dialog.component';\nimport {PhysicalParameterFormDialogComponent} from '@gsrs-core/substance-form/physical-parameter-form-dialog/physical-parameter-form-dialog.component';\nimport {PhysicalParameterFormComponent} from '@gsrs-core/substance-form/physical-parameter-form/physical-parameter-form.component';\nimport {CvInputComponent} from '@gsrs-core/substance-form/cv-input/cv-input.component';\nimport {SugarFormComponent} from '@gsrs-core/substance-form/sugar-form/sugar-form.component';\nimport {CvDialogComponent} from '@gsrs-core/substance-form/cv-dialog/cv-dialog.component';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {JsonDialogComponent} from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport {NgxJsonViewerModule} from 'ngx-json-viewer';\nimport {AuditInfoComponent} from '@gsrs-core/substance-form/audit-info/audit-info.component';\nimport { RouterModule } from '@angular/router';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { SubmitSuccessDialogComponent } from './submit-success-dialog/submit-success-dialog.component';\nimport {MergeConceptDialogComponent} from '@gsrs-core/substance-form/merge-concept-dialog/merge-concept-dialog.component';\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\nimport {DefinitionSwitchDialogComponent} from '@gsrs-core/substance-form/definition-switch-dialog/definition-switch-dialog.component';\nimport { SubstanceFormComponent } from './substance-form.component';\nimport { CanActivateSubstanceForm } from './can-activate-substance-form';\nimport { CanRegisterSubstanceForm } from './can-register-substance-form';\nimport { SubstanceFormService } from './substance-form.service';\nimport { SubstanceFormStructureService } from './structure/substance-form-structure.service';\nimport { SubstanceFormDisulfideLinksService } from './disulfide-links/substance-form-disulfide-links.service';\nimport { SubstanceFormGlycosylationService } from './glycosylation/substance-form-glycosylation.service';\nimport { SubstanceFormPropertiesService } from './properties/substance-form-properties.service';\nimport { SubstanceFormReferencesService } from './references/substance-form-references.service';\nimport { SubstanceFormStructuralUnitsService } from './structural-units/substance-form-structural-units.service';\nimport { SubstanceFormStructurallyDiverseService } from './structurally-diverse/substance-form-structurally-diverse.service';\nimport { SubstanceFormNamesService } from './names/substance-form-names.service';\nimport { SubstanceFormLinksService } from './links/substance-form-links.service';\nimport { SubstanceFormCodesService } from './codes/substance-form-codes.service';\nimport { SubstanceFormAgentModificationsService } from './agent-modifications/substance-form-agent-modifications.service';\nimport { SubstanceFormConstituentsService } from './constituents/substance-form-constituents.service';\nimport { SubstanceFormMixtureComponentsService } from './mixture-components/substance-form-mixture-components.service';\nimport { SubstanceFormMonomersService } from './monomers/substance-form-monomers.service';\nimport { SubstanceFormNotesService } from './notes/substance-form-notes.service';\nimport { SubstanceFormOtherLinksService } from './other-links/substance-form-other-links.service';\nimport { SubstanceFormPhysicalModificationsService } from './physical-modifications/substance-form-physical-modifications.service';\nimport { SubstanceFormPolymerClassificationService } from './polymer-classification/substance-form-polymer-classification.service';\nimport { SubstanceFormRelationshipsService } from './relationships/substance-form-relationships.service';\nimport { SubstanceFormStructuralModificationsService } from './structural-modifications/substance-form-structural-modifications.service';\nimport { PreviousReferencesComponent } from '@gsrs-core/substance-form/references/previous-references/previous-references.component';\nimport { PreviousReferencesDialogComponent } from '@gsrs-core/substance-form/references/previous-references/previous-references-dialog/previous-references-dialog.component';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { CopyDisulfideDialogComponent } from '@gsrs-core/substance-form/copy-disulfide-dialog/copy-disulfide-dialog.component';\nimport { FragmentWizardComponent } from '@gsrs-core/admin/fragment-wizard/fragment-wizard.component';\nimport { SubstanceDraftsComponent } from '@gsrs-core/substance-form/substance-drafts/substance-drafts.component';\nimport { MatSortModule } from '@angular/material/sort';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatDividerModule,\n MatSelectModule,\n MatInputModule,\n MatChipsModule,\n MatAutocompleteModule,\n ScrollToModule,\n MatDialogModule,\n MatTableModule,\n MatExpansionModule,\n MatBadgeModule,\n MatRadioModule,\n ExpandDetailsModule,\n SubstanceSelectorModule,\n MatListModule,\n FileSelectModule,\n MatButtonToggleModule,\n NgxJsonViewerModule,\n RouterModule,\n SubstanceImageModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatSortModule\n ],\n declarations: [\n SubstanceFormComponent,\n AccessManagerComponent,\n TagSelectorComponent,\n DomainReferencesComponent,\n ReferenceFormComponent,\n RefernceFormDialogComponent,\n PreviousReferencesComponent,\n ReuseReferencesDialogComponent,\n StructureFormComponent,\n AmountFormComponent,\n ApplyReferenceComponent,\n PropertyParameterFormComponent,\n PropertyParameterDialogComponent,\n SubunitFormComponent,\n SubunitDisplayPipe,\n SugarFormComponent,\n SubunitSelectorComponent,\n SubunitSelectorDialogComponent,\n AmountFormDialogComponent,\n PhysicalParameterFormDialogComponent,\n PhysicalParameterFormComponent,\n CvInputComponent,\n CvDialogComponent,\n JsonDialogComponent,\n AuditInfoComponent,\n SubmitSuccessDialogComponent,\n MergeConceptDialogComponent,\n DefinitionSwitchDialogComponent,\n PreviousReferencesDialogComponent,\n CopyDisulfideDialogComponent,\n SubstanceDraftsComponent\n ],\n exports: [\n SubstanceFormComponent,\n AccessManagerComponent,\n DomainReferencesComponent,\n ReferenceFormComponent,\n PreviousReferencesComponent,\n RefernceFormDialogComponent,\n ReuseReferencesDialogComponent,\n StructureFormComponent,\n AmountFormComponent,\n PropertyParameterFormComponent,\n PropertyParameterDialogComponent,\n SubunitFormComponent,\n SubunitDisplayPipe,\n SubunitSelectorComponent,\n SubunitSelectorDialogComponent,\n AmountFormDialogComponent,\n PhysicalParameterFormDialogComponent,\n PhysicalParameterFormComponent,\n TagSelectorComponent,\n SugarFormComponent,\n CvInputComponent,\n CvDialogComponent,\n JsonDialogComponent,\n AuditInfoComponent,\n MergeConceptDialogComponent,\n DefinitionSwitchDialogComponent,\n PreviousReferencesDialogComponent,\n CopyDisulfideDialogComponent,\n SubstanceDraftsComponent\n ],\n entryComponents: [\n RefernceFormDialogComponent,\n ReuseReferencesDialogComponent,\n ApplyReferenceComponent,\n PreviousReferencesComponent,\n PropertyParameterDialogComponent,\n SubunitSelectorComponent,\n SubunitSelectorDialogComponent,\n AmountFormDialogComponent,\n PhysicalParameterFormDialogComponent,\n CvDialogComponent,\n JsonDialogComponent,\n AuditInfoComponent,\n SubmitSuccessDialogComponent,\n MergeConceptDialogComponent,\n DefinitionSwitchDialogComponent,\n PreviousReferencesDialogComponent,\n CopyDisulfideDialogComponent,\n SubstanceDraftsComponent\n ]\n})\nexport class SubstanceFormModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: SubstanceFormModule,\n providers: [\n SubstanceFormService,\n CanActivateSubstanceForm,\n CanRegisterSubstanceForm,\n SubstanceFormStructureService,\n SubstanceFormDisulfideLinksService,\n SubstanceFormGlycosylationService,\n SubstanceFormPropertiesService,\n SubstanceFormReferencesService,\n SubstanceFormStructuralUnitsService,\n SubstanceFormStructurallyDiverseService,\n SubstanceFormNamesService,\n SubstanceFormLinksService,\n SubstanceFormCodesService,\n SubstanceFormAgentModificationsService,\n SubstanceFormConstituentsService,\n SubstanceFormMixtureComponentsService,\n SubstanceFormMonomersService,\n SubstanceFormNotesService,\n SubstanceFormOtherLinksService,\n SubstanceFormPhysicalModificationsService,\n SubstanceFormPolymerClassificationService,\n SubstanceFormRelationshipsService,\n SubstanceFormStructuralModificationsService\n ]\n };\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport {\n SubstanceDetail,\n SubstanceName,\n SubstanceStructure,\n SubstanceMoiety,\n Subunit,\n Link,\n DisulfideLink,\n Glycosylation,\n Site,\n StructuralModification,\n Sugar,\n Linkage,\n NucleicAcid,\n StructurallyDiverse, DisplayStructure, Monomer, PolymerClassification\n} from '../substance/substance.model';\nimport {\n SequenceUnit,\n SubstanceFormDefinition,\n SubstanceFormResults, SubunitSequence, ValidationResults, ValidationMessage\n} from './substance-form.model';\nimport { Observable, Subject, ReplaySubject, Subscription } from 'rxjs';\nimport { SubstanceService } from '../substance/substance.service';\nimport { UtilsService } from '../utils/utils.service';\nimport { StructureService } from '@gsrs-core/structure';\nimport * as _ from 'lodash';\nimport { take } from 'rxjs/operators';\n\n@Injectable()\nexport class SubstanceFormService implements OnDestroy {\n private privateSubstance: SubstanceDetail;\n private substanceStateHash?: number;\n private substanceEmitter: ReplaySubject;\n private substanceDisulfideLinksEmitter = new ReplaySubject>();\n private substanceGlycosylationEmitter = new ReplaySubject();\n private substanceLinksEmitter = new ReplaySubject>();\n private substanceNamesEmitter = new ReplaySubject>();\n private substanceOtherLinksEmitter = new ReplaySubject>();\n private substanceStructuralModificationsEmitter = new ReplaySubject>();\n private substanceCysteineEmitter = new ReplaySubject>();\n private substanceFormActionEmitter = new ReplaySubject<'load' | 'unload'>();\n\n private definitionEmitter = new Subject();\n private subClass: string;\n private substanceSubunitsEmitter = new Subject>();\n private substanceSugarsEmitter = new Subject>();\n private substanceNucleicAcidEmitter = new Subject();\n private allSitesArr: Array;\n private allSitesEmitter = new Subject>();\n private displaySequences: Array;\n private displaySequencesEmitter = new Subject>();\n private substanceChangeReasonEmitter = new Subject();\n private nameResolver = new Subject();\n resolvedMol = this.nameResolver.asObservable();\n private _bypassUpdateCheck = false;\n private method?: string;\n private previousHash?: number;\n\n constructor(\n private substanceService: SubstanceService,\n public utilsService: UtilsService,\n private structureService: StructureService\n ) {\n this.substanceEmitter = new ReplaySubject();\n }\n\n ngOnDestroy() {\n this.unloadSubstance();\n }\n\n loadSubstance(substanceClass: string = 'chemical', substance?: SubstanceDetail, method?: string, mergeConcept?: boolean): Observable {\n if (method) {\n this.method = method;\n } else {\n this.method = null;\n }\n if (mergeConcept) {\n this.privateSubstance = substance;\n this.substanceEmitter.next(substance);\n this.namesUpdated();\n }\n\n this.substanceEmitter.subscribe(val => {\n });\n return new Observable(observer => {\n if (substance != null) {\n this.privateSubstance = substance;\n substanceClass = this.privateSubstance.substanceClass;\n } else {\n // the second case happens in the forms sometimes but really shouldn't\n if (substanceClass === 'chemical' || substanceClass === 'structure') {\n this.privateSubstance = {\n substanceClass: 'chemical',\n references: [],\n names: [],\n structure: {\n molfile: '\\n\\n\\n 0 0 0 0 0 0 999 V2000\\nM END'\n },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'protein') {\n this.privateSubstance = {\n substanceClass: 'protein',\n references: [],\n names: [],\n protein: { proteinType: '' },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'nucleicAcid') {\n this.privateSubstance = {\n substanceClass: 'nucleicAcid',\n references: [],\n names: [],\n nucleicAcid: {},\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'mixture') {\n this.privateSubstance = {\n substanceClass: 'mixture',\n references: [],\n names: [],\n mixture: {},\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'structurallyDiverse') {\n this.privateSubstance = {\n substanceClass: 'structurallyDiverse',\n references: [],\n names: [],\n structurallyDiverse: {\n part: ['whole'],\n $$diverseType: 'whole'\n },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'specifiedSubstance' || (substanceClass === 'specifiedSubstanceG1')) {\n this.privateSubstance = {\n substanceClass: 'specifiedSubstanceG1',\n references: [],\n names: [],\n specifiedSubstance: {\n constituents: [],\n references: []\n },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'specifiedSubstanceG3') {\n this.privateSubstance = {\n substanceClass: substanceClass,\n references: [],\n names: [],\n specifiedSubstanceG3: {\n parentSubstance: {},\n definition: { references: [] },\n grade: { references: [] }\n },\n codes: [],\n properties: []\n };\n } else if (substanceClass === 'specifiedSubstanceG4m') {\n this.privateSubstance = {\n substanceClass: substanceClass,\n // references: [],\n specifiedSubstanceG4m: {\n parentSubstance: {},\n process: []\n }\n // codes: [],\n // properties: []\n };\n } else if (substanceClass === 'polymer') {\n this.privateSubstance = {\n substanceClass: substanceClass,\n references: [],\n names: [],\n polymer: {\n idealizedStructure: {},\n monomers: [],\n },\n codes: [],\n moieties: [],\n relationships: [],\n properties: []\n };\n } else {\n this.privateSubstance = {\n substanceClass: substanceClass,\n references: [],\n names: [],\n codes: []\n };\n }\n // default values\n\n // TP: default to protected for root level record.\n // ***** AN: Adding this right now for SSG4m ******\n if (substanceClass !== 'specifiedSubstanceG4m') {\n this.privateSubstance.access = [\"protected\"];\n this.privateSubstance.definitionLevel = \"COMPLETE\";\n this.privateSubstance.definitionType = \"PRIMARY\";\n }\n }\n\n this.subClass = this.privateSubstance.substanceClass;\n\n // Only these two substance classes differ from\n // the name of their JSON defintional element\n // That's why they are used as exceptions\n\n if (this.subClass === 'chemical') {\n this.subClass = 'structure';\n } else if (this.subClass === 'specifiedSubstanceG1') {\n this.subClass = 'specifiedSubstance';\n }\n\n if (this.privateSubstance[this.subClass] == null) {\n this.privateSubstance[this.subClass] = {};\n }\n this.initForm();\n this.substanceEmitter.next(this.privateSubstance);\n observer.next();\n observer.complete();\n });\n }\n\n get substanceFormAction(): Observable<'load' | 'unload'> {\n return this.substanceFormActionEmitter.asObservable();\n }\n\n initForm(): void {\n this.substanceFormActionEmitter.next('load');\n }\n\n get substance(): Observable {\n return this.substanceEmitter.asObservable();\n }\n\n resetState(): void {\n const substanceString = JSON.stringify(this.privateSubstance);\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n\n unloadSubstance(): void {\n // this.privateSubstance = null;\n this.allSitesArr = null;\n this.displaySequences = null;\n this.substanceEmitter.complete();\n this.substanceDisulfideLinksEmitter.complete();\n this.substanceGlycosylationEmitter.complete();\n this.substanceLinksEmitter.complete();\n this.substanceNamesEmitter.complete();\n this.substanceOtherLinksEmitter.complete();\n this.substanceStructuralModificationsEmitter.complete();\n this.substanceCysteineEmitter.complete();\n this.substanceEmitter = new ReplaySubject();\n this.substanceDisulfideLinksEmitter = new ReplaySubject>();\n this.substanceGlycosylationEmitter = new ReplaySubject();\n this.substanceLinksEmitter = new ReplaySubject>();\n this.substanceLinksEmitter = new ReplaySubject>();\n this.substanceOtherLinksEmitter = new ReplaySubject>();\n this.substanceStructuralModificationsEmitter = new ReplaySubject>();\n this.substanceCysteineEmitter = new ReplaySubject>();\n this.substanceFormActionEmitter.next('unload');\n }\n\n ready(): Observable {\n return new Observable(observer => {\n this.substanceEmitter.pipe(take(1)).subscribe(substance => {\n observer.next();\n observer.complete();\n });\n });\n }\n\n setDefinitionFromDefRef(access: any) {\n\n if (this.privateSubstance.structurallyDiverse) {\n this.privateSubstance.structurallyDiverse.access = access;\n } else if (this.privateSubstance.protein) {\n this.privateSubstance.protein.access = access;\n } else if (this.privateSubstance.structure) {\n this.privateSubstance.structure.access = access;\n } else if (this.privateSubstance.mixture) {\n this.privateSubstance.mixture.access = access;\n } else if (this.privateSubstance.polymer) {\n this.privateSubstance.polymer.access = access;\n } else if (this.privateSubstance.nucleicAcid) {\n this.privateSubstance.nucleicAcid.access = access;\n } else if (this.privateSubstance.specifiedSubstance) {\n this.privateSubstance.specifiedSubstance.access = access;\n } else {\n }\n this.substanceEmitter.next(this.privateSubstance);\n }\n\n getDefinitionForDefRef() {\n\n if (this.privateSubstance.structurallyDiverse) {\n return this.privateSubstance.structurallyDiverse.access;\n } else if (this.privateSubstance.protein) {\n return this.privateSubstance.protein.access;\n } else if (this.privateSubstance.structure) {\n return this.privateSubstance.structure.access;\n } else if (this.privateSubstance.mixture) {\n return this.privateSubstance.mixture.access;\n } else if (this.privateSubstance.polymer) {\n return this.privateSubstance.polymer.access;\n } else if (this.privateSubstance.nucleicAcid) {\n return this.privateSubstance.nucleicAcid.access;\n } else if (this.privateSubstance.specifiedSubstance) {\n return this.privateSubstance.specifiedSubstance.access;\n } else {\n }\n this.definitionEmitter.next(this.getDefinition());\n }\n\n changeApproval() {\n const apid = prompt('Enter new ApprovalID:');\n\n if (apid) {\n const old = this.privateSubstance.approvalID;\n this.privateSubstance.approvalID = apid;\n alert('Approval ID changed from\"' + old + '\" to \"' + apid + '\". Submit changes to save');\n this.definitionEmitter.next(this.getDefinition());\n }\n }\n\n switchType(substance: SubstanceDetail, newClass: string) {\n const fieldGetter = {\n 'protein': ['protein', 'modifications', 'properties'],\n 'chemical': ['structure', 'moieties', 'modifications', 'properties'],\n 'structurallyDiverse': ['structurallyDiverse', 'modifications', 'properties'],\n 'polymer': ['polymer', 'modifications', 'properties'],\n 'nucleicAcid': ['nucleicAcid', 'modifications', 'properties'],\n 'mixture': ['mixture', 'modifications', 'properties'],\n 'specifiedSubstanceG1': []\n };\n if (fieldGetter[newClass]) {\n fieldGetter[newClass].forEach(function (x) {\n if (substance[x]) {\n delete substance[x];\n }\n });\n }\n substance.substanceClass = newClass;\n if (newClass === 'chemical') {\n substance.structure = {};\n } else if (newClass === 'protein') {\n substance.protein = { proteinType: '' };\n\n } else if (newClass === 'nucleicAcid') {\n substance.nucleicAcid = {};\n } else if (newClass === 'mixture') {\n substance.mixture = {};\n } else if (newClass === 'structurallyDiverse') {\n substance.structurallyDiverse = {\n part: ['whole'],\n $$diverseType: 'whole'\n };\n } else if (newClass === 'specifiedSubstanceG1') {\n substance.specifiedSubstance = {\n };\n } else if (newClass === 'polymer') {\n substance.polymer = {\n idealizedStructure: {},\n monomers: [],\n };\n }\n alert('Substance type switched. Submit changes to save');\n return substance;\n }\n\n setDefinitionPrivate() {\n if (this.privateSubstance.structurallyDiverse) {\n this.setPrivate(this.privateSubstance.structurallyDiverse);\n } else if (this.privateSubstance.protein) {\n this.setPrivate(this.privateSubstance.protein);\n } else if (this.privateSubstance.structure) {\n this.setPrivate(this.privateSubstance.structure);\n } else if (this.privateSubstance.mixture) {\n this.setPrivate(this.privateSubstance.mixture);\n } else if (this.privateSubstance.polymer) {\n this.setPrivate(this.privateSubstance.polymer);\n } else if (this.privateSubstance.nucleicAcid) {\n this.setPrivate(this.privateSubstance.nucleicAcid);\n } else if (this.privateSubstance.specifiedSubstance) {\n this.setPrivate(this.privateSubstance.specifiedSubstance);\n } else {\n }\n }\n setPrivate(e) {\n e.access = ['protected'];\n alert('Substance definition now set to protected, please submit to save change');\n }\n\n\n setDefinitionPublic() {\n\n if (this.privateSubstance.structurallyDiverse) {\n this.setPublic(this.privateSubstance.structurallyDiverse);\n } else if (this.privateSubstance.protein) {\n this.setPublic(this.privateSubstance.protein);\n } else if (this.privateSubstance.structure) {\n this.setPublic(this.privateSubstance.structure);\n } else if (this.privateSubstance.mixture) {\n this.setPublic(this.privateSubstance.mixture);\n } else if (this.privateSubstance.polymer) {\n this.setPublic(this.privateSubstance.polymer);\n } else if (this.privateSubstance.nucleicAcid) {\n this.setPublic(this.privateSubstance.nucleicAcid);\n } else if (this.privateSubstance.specifiedSubstance) {\n this.setPublic(this.privateSubstance.specifiedSubstance);\n } else {\n }\n }\n\n conceptNonApproved() {\n if (this.privateSubstance.substanceClass === 'concept') {\n this.privateSubstance.status = 'non-approved';\n alert('Concept status set to \"non approved\", please submit to save changes');\n } else {\n alert('Can only change status of concept records');\n }\n }\n\n unapproveRecord() {\n const old = this.privateSubstance.approvalID;\n this.privateSubstance.approvalID = null;\n this.privateSubstance.status = null;\n this.privateSubstance.approved = null;\n this.privateSubstance.approvedBy = null;\n alert('Removed approvalID \\'' + old + '\\'. Submit record to save.');\n }\n\n setPublic(e) {\n e.access = [];\n alert('Substance definition set to be PUBLIC, please submit to save change');\n }\n\n get isSubstanceUpdated(): boolean {\n const substanceString = JSON.stringify(this.privateSubstance);\n if (this._bypassUpdateCheck) {\n this._bypassUpdateCheck = false;\n return false;\n } else {\n return this.substanceStateHash !== this.utilsService.hashCode(substanceString);\n }\n }\n\n autoSave(): boolean {\n const substanceString = JSON.stringify(this.privateSubstance);\n if (!this.previousHash) {\n this.previousHash = this.utilsService.hashCode(substanceString);\n return false;\n } else {\n const match = this.previousHash !== this.utilsService.hashCode(substanceString);\n if (match) {\n this.previousHash = this.utilsService.hashCode(substanceString);\n return true;\n } else {\n return false;\n }\n }\n }\n\n bypassUpdateCheck(): void {\n this._bypassUpdateCheck = true;\n }\n\n // Definition Start\n\n get definition(): Observable {\n return new Observable(observer => {\n this.ready().subscribe(() => {\n const definition = this.getDefinition();\n observer.next(definition);\n // eslint-disable-next-line @typescript-eslint/no-shadow\n this.definitionEmitter.subscribe(definition => {\n observer.next(definition);\n });\n });\n });\n }\n\n updateDefinition(definition: SubstanceFormDefinition): void {\n this.privateSubstance.definitionLevel = definition.definitionLevel;\n this.privateSubstance.deprecated = definition.deprecated;\n this.privateSubstance.access = definition.access;\n this.privateSubstance.created = definition.created;\n this.privateSubstance.createdBy = definition.createdBy;\n this.privateSubstance.lastEdited = definition.lastEdited;\n this.privateSubstance.lastEditedBy = definition.lastEditedBy;\n if (definition.status) {\n this.privateSubstance.status = definition.status;\n }\n if (definition.approvalID) {\n this.privateSubstance.approvalID = definition.approvalID;\n }\n if (this.privateSubstance[definition.substanceClass]) {\n this.privateSubstance[definition.substanceClass].references = definition.references;\n } else {\n this.privateSubstance[definition.substanceClass] = {\n references: definition.references\n };\n }\n\n if (this.privateSubstance.definitionType !== definition.definitionType) {\n if (definition.definitionType === 'ALTERNATIVE') {\n this.privateSubstance.names = [];\n this.privateSubstance.codes = [];\n this.substanceNamesEmitter.next(this.privateSubstance.names);\n }\n }\n this.privateSubstance.definitionType = definition.definitionType;\n this.definitionEmitter.next(this.getDefinition());\n }\n\n getJson() {\n return this.privateSubstance;\n }\n\n getUuid(): string {\n return this.privateSubstance.uuid;\n }\n\n getClass(): string {\n return this.privateSubstance.substanceClass;\n }\n\n changeStatus(status: string): void {\n this.privateSubstance.status = status;\n alert('Status changed to ' + status);\n }\n\n private getDefinition(): SubstanceFormDefinition {\n\n if (!this.privateSubstance[this.subClass]) {\n this.privateSubstance[this.subClass] = {\n references: []\n };\n const substanceString = JSON.stringify(this.privateSubstance);\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n\n if (!this.privateSubstance[this.subClass].references) {\n this.privateSubstance[this.subClass].references = [];\n const substanceString = JSON.stringify(this.privateSubstance);\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n\n if (!this.privateSubstance.tags) {\n this.privateSubstance.tags = [];\n const substanceString = JSON.stringify(this.privateSubstance);\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n\n\n const definition: SubstanceFormDefinition = {\n uuid: this.privateSubstance[this.subClass].uuid || this.privateSubstance[this.subClass].id,\n substanceClass: this.subClass,\n definitionType: this.privateSubstance.definitionType,\n definitionLevel: this.privateSubstance.definitionLevel,\n deprecated: this.privateSubstance.deprecated,\n references: this.privateSubstance[this.subClass].references,\n access: this.privateSubstance.access,\n relationships: this.privateSubstance.relationships,\n created: this.privateSubstance.created,\n createdBy: this.privateSubstance.createdBy,\n lastEdited: this.privateSubstance.lastEdited,\n lastEditedBy: this.privateSubstance.lastEditedBy,\n _name: this.privateSubstance._name,\n tags: this.privateSubstance.tags\n };\n if (this.privateSubstance.status) {\n definition.status = this.privateSubstance.status;\n }\n if (this.privateSubstance.approvalID) {\n definition.approvalID = this.privateSubstance.approvalID;\n }\n\n return definition;\n }\n\n // Definition end\n\n\n get allSites(): Observable> {\n return new Observable(observer => {\n if (!this.allSitesArr) {\n this.allSitesArr = this.getAllSites();\n }\n observer.next(this.allSitesArr);\n this.allSitesEmitter.subscribe(sites => {\n observer.next(this.allSitesArr);\n });\n });\n }\n\n emitAllsitesUpdate(): void {\n this.allSitesEmitter.next(this.getAllSites());\n }\n\n\n getAllSites(): Array {\n\n const allSitesArr = [];\n\n if (this.privateSubstance.substanceClass === 'protein') {\n if (this.privateSubstance.protein.disulfideLinks) {\n this.privateSubstance.protein.disulfideLinks.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n if (site.subunitIndex && site.residueIndex) {\n const newLink: DisplaySite = {\n residue: site.residueIndex,\n subunit: site.subunitIndex,\n type: 'disulfide'\n };\n allSitesArr.push(newLink);\n }\n });\n }\n });\n }\n if (this.privateSubstance.protein.otherLinks) {\n this.privateSubstance.protein.otherLinks.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n if (site.subunitIndex && site.residueIndex) {\n const newLink: DisplaySite = { residue: site.residueIndex, subunit: site.subunitIndex, type: 'other' };\n allSitesArr.push(newLink);\n }\n });\n }\n });\n }\n if (this.privateSubstance.protein.glycosylation) {\n const glycosylation = this.privateSubstance.protein.glycosylation;\n if (glycosylation.CGlycosylationSites) {\n glycosylation.CGlycosylationSites.forEach(site => {\n const newLink: DisplaySite = {\n residue: site.residueIndex,\n subunit: site.subunitIndex,\n type: 'C-Glycosylation'\n };\n allSitesArr.push(newLink);\n });\n }\n if (glycosylation.NGlycosylationSites) {\n glycosylation.NGlycosylationSites.forEach(site => {\n const newLink: DisplaySite = {\n residue: site.residueIndex,\n subunit: site.subunitIndex,\n type: 'N-Glycosylation'\n };\n allSitesArr.push(newLink);\n });\n }\n\n if (glycosylation.OGlycosylationSites) {\n glycosylation.OGlycosylationSites.forEach(site => {\n if (site.subunitIndex && site.residueIndex) {\n const newLink: DisplaySite = {\n residue: site.residueIndex,\n subunit: site.subunitIndex,\n type: 'O-Glycosylation'\n };\n allSitesArr.push(newLink);\n }\n });\n }\n }\n }\n if (this.privateSubstance.modifications.structuralModifications) {\n this.privateSubstance.modifications.structuralModifications.forEach(mod => {\n if (mod.sites) {\n mod.sites.forEach(site => {\n if (site.subunitIndex && site.residueIndex) {\n const newLink: DisplaySite = {\n residue: site.residueIndex,\n subunit: site.subunitIndex,\n type: 'modification'\n };\n allSitesArr.push(newLink);\n }\n });\n }\n });\n }\n if (this.privateSubstance.properties) {\n this.privateSubstance.properties.forEach(prop => {\n if (prop.propertyType === 'PROTEIN FEATURE' || prop.propertyType === 'NUCLEIC ACID FEATURE') {\n const featArr = prop.value.nonNumericValue.split(';');\n featArr.forEach(f => {\n const sites = f.split('-');\n const subunitIndex = Number(sites[0].split('_')[0]);\n for (let i = Number(sites[0].split('_')[1]); i <= Number(sites[1].split('_')[1]); i++) {\n const newLink: DisplaySite = { residue: Number(i), subunit: subunitIndex, type: 'feature' };\n allSitesArr.push(newLink);\n }\n });\n }\n });\n }\n return allSitesArr;\n }\n\n // ### possibly use type to only partially calculate allsites?\n recalculateAllSites(type?: string): void {\n const newSites = this.getAllSites();\n if (newSites !== this.allSitesArr) {\n this.allSitesArr = newSites;\n this.allSitesEmitter.next(this.allSitesArr);\n }\n }\n\n resolvedName(mol: string): void {\n this.nameResolver.next(mol);\n }\n\n updateNucleicAcidDetails(acid: NucleicAcid): void {\n this.privateSubstance.nucleicAcid.nucleicAcidType = acid.nucleicAcidType;\n this.privateSubstance.nucleicAcid.nucleicAcidSubType = acid.nucleicAcidSubType;\n this.privateSubstance.nucleicAcid.sequenceOrigin = acid.sequenceOrigin;\n this.privateSubstance.nucleicAcid.sequenceType = acid.sequenceType;\n }\n\n get substanceNucleicAcid(): Observable {\n return new Observable(observer => {\n this.ready().subscribe(substance => {\n if (this.privateSubstance.nucleicAcid == null) {\n this.privateSubstance.nucleicAcid = { nucleicAcidType: '' };\n\n }\n observer.next(this.privateSubstance.nucleicAcid);\n this.substanceNucleicAcidEmitter.subscribe(protein => {\n observer.next(this.privateSubstance.nucleicAcid);\n });\n });\n });\n }\n\n // Names start\n\n namesUpdated(): Observable> {\n return this.substanceNamesEmitter.asObservable();\n }\n\n // Names end\n\n // Subunits start\n\n get substanceSubunits(): Observable> {\n return new Observable(observer => {\n this.ready().subscribe(() => {\n if (this.privateSubstance.substanceClass === 'protein') {\n if (!this.privateSubstance.protein.subunits) {\n this.privateSubstance.protein.subunits = [];\n const substanceString = JSON.stringify(this.privateSubstance);\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n observer.next(this.privateSubstance.protein.subunits);\n this.substanceSubunitsEmitter.subscribe(subunits => {\n observer.next(this.privateSubstance.protein.subunits);\n });\n } else {\n if (!this.privateSubstance.nucleicAcid.subunits) {\n this.privateSubstance.nucleicAcid.subunits = [];\n const substanceString = JSON.stringify(this.privateSubstance);\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n observer.next(this.privateSubstance.nucleicAcid.subunits);\n this.substanceSubunitsEmitter.subscribe(subunits => {\n observer.next(this.privateSubstance.nucleicAcid.subunits);\n });\n }\n });\n });\n }\n\n get subunitDisplaySequences(): Observable> {\n return new Observable(observer => {\n this.ready().subscribe(() => {\n if (!this.displaySequences) {\n this.displaySequences = this.createSubunitDisplay();\n }\n observer.next(this.displaySequences);\n this.displaySequencesEmitter.subscribe(newDisplay => {\n this.displaySequences = newDisplay;\n observer.next(this.displaySequences);\n });\n });\n });\n }\n\n\n addSubstanceSubunit(): void {\n if (this.privateSubstance.substanceClass === 'protein') {\n const index: number = this.privateSubstance.protein.subunits.length + 1;\n const newSubunit: Subunit = {\n references: [],\n access: [],\n sequence: '',\n subunitIndex: index\n };\n this.privateSubstance.protein.subunits.push(newSubunit);\n this.displaySequencesEmitter.next(this.createSubunitDisplay());\n this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);\n } else {\n let index = this.privateSubstance.nucleicAcid.subunits.length || 0;\n index = index + 1;\n const newSubunit: Subunit = {\n references: [],\n access: [],\n sequence: '',\n subunitIndex: index\n };\n this.privateSubstance.nucleicAcid.subunits.push(newSubunit);\n this.displaySequencesEmitter.next(this.createSubunitDisplay());\n this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits);\n this.emitSugarUpdate();\n this.emitLinkUpdate();\n }\n\n }\n\n deleteSubstanceSubunit(subunit: Subunit): void {\n if (this.privateSubstance.substanceClass === 'protein') {\n const subUnitIndex = this.privateSubstance.protein.subunits.findIndex(subUnit => subunit.subunitIndex === subUnit.subunitIndex);\n if (subUnitIndex > -1) {\n this.rearrangeSubunitIndexes('protein', subunit.subunitIndex);\n this.displaySequencesEmitter.next(this.createSubunitDisplay());\n this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);\n }\n } else {\n const subUnitIndex = this.privateSubstance.nucleicAcid.subunits.findIndex(subUnit => subunit.subunitIndex === subUnit.subunitIndex);\n if (subUnitIndex > -1) {\n this.rearrangeNAIndexes('nucleicAdid', subunit.subunitIndex);\n this.displaySequencesEmitter.next(this.createSubunitDisplay());\n this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits);\n this.emitSugarUpdate();\n this.emitLinkUpdate();\n }\n }\n\n }\n\n rearrangeNAIndexes(type: string, index: number) {\n const arrIndex = this.privateSubstance.nucleicAcid.subunits.findIndex(subUnit => index === subUnit.subunitIndex);\n this.privateSubstance.nucleicAcid.subunits.splice(arrIndex, 1);\n if (this.privateSubstance.nucleicAcid.subunits.length > (arrIndex - 1)) {\n this.privateSubstance.nucleicAcid.subunits.forEach(subunit => {\n if (subunit.subunitIndex > index) {\n\n const newIndex = subunit.subunitIndex - 1;\n subunit.subunitIndex = newIndex;\n }\n });\n if (this.privateSubstance.nucleicAcid.sugars) {\n this.privateSubstance.nucleicAcid.sugars.forEach(link => {\n if (link.sites) {\n link.sites = link.sites.filter(site => (site.subunitIndex !== index));\n link.sites.forEach(site => {\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n });\n this.emitSugarUpdate();\n }\n if (this.privateSubstance.nucleicAcid.linkages) {\n this.privateSubstance.nucleicAcid.linkages.forEach(link => {\n if (link.sites) {\n link.sites = link.sites.filter(site => (site.subunitIndex !== index));\n link.sites.forEach(site => {\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n });\n this.emitSugarUpdate();\n }\n }\n }\n\n rearrangeSubunitIndexes(type: string, index: number) {\n const arrIndex = this.privateSubstance.protein.subunits.findIndex(subUnit => index === subUnit.subunitIndex);\n this.privateSubstance.protein.subunits.splice(arrIndex, 1);\n if (this.privateSubstance.protein.subunits.length > (arrIndex - 1)) {\n this.privateSubstance.protein.subunits.forEach(subunit => {\n if (subunit.subunitIndex > index) {\n\n const newIndex = subunit.subunitIndex - 1;\n subunit.subunitIndex = newIndex;\n }\n });\n if (this.privateSubstance.protein.disulfideLinks) {\n this.privateSubstance.protein.disulfideLinks.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n if (site.subunitIndex === index) {\n site = {};\n }\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n });\n\n this.emitDisulfideLinkUpdate();\n }\n if (this.privateSubstance.protein.otherLinks) {\n this.privateSubstance.protein.otherLinks.forEach(link => {\n if (link.sites) {\n link.sites = link.sites.filter(site => (site.subunitIndex !== index));\n link.sites.forEach(site => {\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n });\n this.emitOtherLinkUpdate();\n }\n if (this.privateSubstance.protein.glycosylation) {\n const glycosylation = this.privateSubstance.protein.glycosylation;\n if (glycosylation.CGlycosylationSites) {\n glycosylation.CGlycosylationSites = glycosylation.CGlycosylationSites.filter(site => (site.subunitIndex !== index));\n glycosylation.CGlycosylationSites.forEach(site => {\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n if (glycosylation.NGlycosylationSites) {\n glycosylation.NGlycosylationSites = glycosylation.NGlycosylationSites.filter(site => (site.subunitIndex !== index));\n glycosylation.NGlycosylationSites.forEach(site => {\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n\n if (glycosylation.OGlycosylationSites) {\n glycosylation.OGlycosylationSites = glycosylation.OGlycosylationSites.filter(site => (site.subunitIndex !== index));\n glycosylation.OGlycosylationSites.forEach(site => {\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n this.emitGlycosylationUpdate();\n }\n if (this.privateSubstance.modifications.structuralModifications) {\n this.privateSubstance.modifications.structuralModifications.forEach(link => {\n if (link.sites) {\n link.sites = link.sites.filter(site => (site.subunitIndex !== index));\n link.sites.forEach(site => {\n if (site.subunitIndex && (site.subunitIndex > index)) {\n site.subunitIndex = site.subunitIndex - 1;\n }\n });\n }\n });\n this.emitStructuralModificationsUpdate();\n }\n if (this.privateSubstance.properties) {\n this.privateSubstance.properties.forEach(prop => {\n if (prop.propertyType === 'PROTEIN FEATURE' || prop.propertyType === 'NUCLEIC ACID FEATURE') {\n const featArr = prop.value.nonNumericValue.split(';');\n featArr.forEach(f => {\n });\n }\n });\n }\n }\n }\n\n emitSubunitUpdate(): void {\n if (this.privateSubstance.substanceClass === 'protein') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);\n this.displaySequencesEmitter.next(this.createSubunitDisplay());\n } else {\n this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits);\n this.displaySequencesEmitter.next(this.createSubunitDisplay());\n this.emitSugarUpdate();\n this.emitLinkUpdate();\n }\n }\n\n // subunits end\n\n // other links start\n\n otherLinksUpdated(): Observable> {\n return this.substanceOtherLinksEmitter.asObservable();\n }\n\n emitOtherLinkUpdate(): void {\n this.recalculateAllSites('other');\n this.substanceOtherLinksEmitter.next(this.privateSubstance.protein.otherLinks);\n }\n\n // other links end\n\n // disulfide links start\n copyDisulfideLinks(to: number, from: number): any {\n const test = JSON.parse(JSON.stringify(this.privateSubstance.protein.disulfideLinks));\n const push = [];\n const test3 = [];\n for (let i = 0; i < test.length; i++) {\n const link = JSON.parse(JSON.stringify(test[i]));\n if (link['sites'][0].subunitIndex === to || (link['sites'][1].subunitIndex === to)) {\n } else if (link['sites'][0].subunitIndex === from && link['sites'][1].subunitIndex === from) {\n const copy = JSON.parse(JSON.stringify(test[i]));\n copy.sites[0].subunitIndex = to;\n copy.sites[1].subunitIndex = to;\n copy.sitesShorthand = copy.sites[0].subunitIndex + '_' + copy.sites[0].residueIndex +\n ';' + copy.sites[1].subunitIndex + '_' + copy.sites[1].residueIndex;\n test3.push(link);\n test3.push(copy);\n } else {\n test3.push(link);\n }\n }\n\n this.privateSubstance.protein.disulfideLinks = test3;\n this.emitDisulfideLinkUpdate();\n }\n\n disulfideLinksUpdated(): Observable> {\n return this.substanceDisulfideLinksEmitter.asObservable();\n }\n\n private emitDisulfideLinkUpdate(): void {\n this.recalculateAllSites('disulfide');\n this.substanceDisulfideLinksEmitter.next(this.privateSubstance.protein.disulfideLinks);\n this.recalculateCysteine();\n }\n\n // disulfide links end\n\n // Glycosylation start\n\n glycosylationUpdated(): Observable {\n return this.substanceGlycosylationEmitter.asObservable();\n }\n\n emitGlycosylationUpdate(): void {\n this.recalculateAllSites('glycosylation');\n this.substanceGlycosylationEmitter.next(this.privateSubstance.protein.glycosylation);\n }\n\n // Glycosylation end\n\n // modifications start\n\n structuralModificationsUpdated(): Observable> {\n return this.substanceStructuralModificationsEmitter.asObservable();\n }\n\n emitStructuralModificationsUpdate(): void {\n if (this.privateSubstance.substanceClass === 'protein' || 'nucleic acid') {\n this.recalculateAllSites('glycosylation');\n }\n this.substanceStructuralModificationsEmitter.next(this.privateSubstance.modifications.structuralModifications);\n }\n\n // modifications end\n\n cysteineUpdated(): Observable> {\n return this.substanceCysteineEmitter.asObservable();\n }\n\n recalculateCysteine(): void {\n let available = [];\n if (this.privateSubstance.substanceClass === 'protein') {\n for (let i = 0; i < this.privateSubstance.protein.subunits.length; i++) {\n const sequence = this.privateSubstance.protein.subunits[i].sequence;\n if (sequence != null && sequence.length > 0) {\n for (let j = 0; j < sequence.length; j++) {\n const site = sequence[j];\n if (site.toUpperCase() === 'C') {\n available.push({ 'residueIndex': (j + 1), 'subunitIndex': (i + 1) });\n }\n }\n }\n }\n\n this.privateSubstance.protein.disulfideLinks.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n available = available.filter(r => (r.residueIndex !== site.residueIndex) || (r.subunitIndex !== site.subunitIndex));\n });\n }\n });\n }\n this.substanceCysteineEmitter.next(available);\n }\n\n // ################################ Start Nucleic acid (break into new file, one for each class or on with only class specific?\n\n // begin link\n\n linksUpdated(): Observable> {\n return this.substanceLinksEmitter.asObservable();\n }\n\n emitLinkUpdate(): void {\n this.substanceLinksEmitter.next(this.privateSubstance.nucleicAcid.linkages);\n }\n\n\n // begin sugars\n\n get substanceSugars(): Observable> {\n return new Observable(observer => {\n this.ready().subscribe(() => {\n if (this.privateSubstance.nucleicAcid.sugars == null) {\n this.privateSubstance.nucleicAcid.sugars = [];\n const substanceString = JSON.stringify(this.privateSubstance);\n\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n observer.next(this.privateSubstance.nucleicAcid.sugars);\n this.substanceSugarsEmitter.subscribe(sugars => {\n observer.next(this.privateSubstance.nucleicAcid.sugars);\n });\n });\n });\n }\n\n addSubstanceSugar(): void {\n const newSugars: Sugar = {\n sites: [],\n sugar: ''\n };\n this.privateSubstance.nucleicAcid.sugars.unshift(newSugars);\n this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars);\n }\n\n deleteSubstanceSugar(sugar: Sugar): void {\n const subSugarIndex = this.privateSubstance.nucleicAcid.sugars.findIndex(subCode => sugar.$$deletedCode === subCode.$$deletedCode);\n if (subSugarIndex > -1) {\n this.privateSubstance.nucleicAcid.sugars.splice(subSugarIndex, 1);\n this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars);\n }\n }\n\n emitSugarUpdate(): void {\n this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars);\n }\n\n // end sugars\n\n // start change reason\n\n get changeReason(): Observable {\n return new Observable(observer => {\n this.ready().subscribe(() => {\n observer.next(this.privateSubstance.changeReason);\n this.substanceChangeReasonEmitter.subscribe(changeReason => {\n observer.next(this.privateSubstance.changeReason);\n });\n });\n });\n }\n\n updateChangeReason(changeReason: string): void {\n this.privateSubstance.changeReason = changeReason;\n this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason);\n }\n\n\n\n // end change reason\n\n validateSubstance(): Observable {\n return new Observable(observer => {\n const substanceCopy = this.cleanSubstance();\n this.substanceService.validateSubstance(substanceCopy).subscribe(results => {\n // check for missing required reference fields and append a validationMessage\n if (results.validationMessages) {\n for (let i = 0; i < substanceCopy.references.length; i++) {\n const ref = substanceCopy.references[i];\n if (ref.docType !== 'SYSTEM') {\n if ((!ref.citation || ref.citation === '') || (!ref.docType || ref.docType === '')) {\n const invalidReferenceMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'All references require a non-empty source type and text/citation value',\n messageType: 'WARNING',\n suggestedChange: true\n };\n results.validationMessages.push(invalidReferenceMessage);\n break;\n }\n }\n }\n if (substanceCopy.properties) {\n for (let i = 0; i < substanceCopy.properties.length; i++) {\n const prop = substanceCopy.properties[i];\n if (!prop.propertyType || !prop.name) {\n const invalidPropertyMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Property #' + (i + 1) + ' requires a non-empty name and type',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidPropertyMessage);\n results.valid = false;\n }\n }\n }\n if (substanceCopy.relationships) {\n for (let i = 0; i < substanceCopy.relationships.length; i++) {\n const relationship = substanceCopy.relationships[i];\n if (!relationship.relatedSubstance || !relationship.type || relationship.type === '') {\n const invalidRelationshipMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Relationship #' + (i + 1) + ' requires a non-empty related substance and type',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidRelationshipMessage);\n results.valid = false;\n }\n }\n }\n if (substanceCopy.polymer && substanceCopy.polymer.monomers) {\n for (let i = 0; i < substanceCopy.polymer.monomers.length; i++) {\n const prop = substanceCopy.polymer.monomers[i];\n if (!prop.monomerSubstance || prop.monomerSubstance === {}) {\n const invalidPropertyMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Monomer #' + (i + 1) + ' requires a selected substance',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidPropertyMessage);\n results.valid = false;\n }\n }\n }\n if (substanceCopy.modifications && substanceCopy.modifications.physicalModifications) {\n for (let i = 0; i < substanceCopy.modifications.physicalModifications.length; i++) {\n const prop = substanceCopy.modifications.physicalModifications[i];\n let present = false;\n prop.parameters.forEach(param => {\n if (param.parameterName) {\n present = true;\n }\n });\n\n if (!prop.physicalModificationRole && !present) {\n const invalidPropertyMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Physical Modification #' + (i + 1) + ' requires a modification role or valid parameter',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidPropertyMessage);\n results.valid = false;\n }\n }\n }\n }\n observer.next(results);\n observer.complete();\n }, error => {\n observer.error(error);\n observer.complete();\n });\n });\n }\n\n cleanSubstance(): SubstanceDetail {\n if (this.privateSubstance.structurallyDiverse) {\n if (this.privateSubstance.structurallyDiverse.$$diverseType) {\n delete this.privateSubstance.structurallyDiverse.$$diverseType;\n }\n if (this.privateSubstance.structurallyDiverse.$$storedPart) {\n delete this.privateSubstance.structurallyDiverse.$$storedPart;\n }\n\n const toclean = ['organismFamily', 'organismGenus', 'organismSpecies', 'organismAuthor', 'infraSpecificName', 'infraSpecificType', 'fractionMaterialType', 'fractionName', 'developmentalStage'];\n toclean.forEach(field => {\n if (this.privateSubstance.structurallyDiverse[field] && this.privateSubstance.structurallyDiverse[field] !== null &&\n this.privateSubstance.structurallyDiverse[field] !== '') {\n this.privateSubstance.structurallyDiverse[field] = this.privateSubstance.structurallyDiverse[field].trim();\n }\n });\n }\n /*\n if (this.privateSubstance.nucleicAcid) {\n if (this.privateSubstance.nucleicAcid.sugars) {\n this.privateSubstance.nucleicAcid.sugars.forEach((sugar, index) => {\n if (sugar.sites.length === 0) {\n this.privateSubstance.nucleicAcid.sugars.splice(index, 1);\n }\n });\n }\n if (this.privateSubstance.nucleicAcid.linkages) {\n this.privateSubstance.nucleicAcid.linkages.forEach((linkage, index) => {\n if (linkage.sites.length === 0) {\n this.privateSubstance.nucleicAcid.linkages.splice(index, 1);\n }\n });\n }\n }\n */\n\n /*the substance API call for view=internal vs the usual 'view=full' adds some properties that should not be submitted\n and can cause errors upon submission. the view change was to allow the stdName property to be visible to the forms*/\n if (this.privateSubstance.structure) {\n\n if (this.privateSubstance.structure.properties) {\n delete this.privateSubstance.structure.properties;\n }\n if (this.privateSubstance.structure.links) {\n delete this.privateSubstance.structure.links;\n }\n }\n if (this.privateSubstance.polymer && this.privateSubstance.polymer.displayStructure) {\n\n if (this.privateSubstance.polymer.displayStructure.properties) {\n delete this.privateSubstance.polymer.displayStructure.properties;\n }\n if (this.privateSubstance.polymer.displayStructure.links) {\n delete this.privateSubstance.polymer.displayStructure.links;\n }\n }\n if (this.privateSubstance.polymer && this.privateSubstance.polymer.idealizedStructure) {\n\n if (this.privateSubstance.polymer.idealizedStructure.properties) {\n delete this.privateSubstance.polymer.idealizedStructure.properties;\n }\n if (this.privateSubstance.polymer.idealizedStructure.links) {\n delete this.privateSubstance.polymer.idealizedStructure.links;\n }\n }\n\n if (this.privateSubstance.moieties) {\n this.privateSubstance.moieties.forEach(moiety => {\n if (moiety.properties) {\n delete moiety.properties;\n }\n if (moiety.links) {\n delete moiety.links;\n }\n });\n }\n\n if (this.privateSubstance.protein && this.privateSubstance.protein.disulfideLinks\n && this.privateSubstance.protein.disulfideLinks.length > 0) {\n for (let i = this.privateSubstance.protein.disulfideLinks.length; i >= 0; i--) {\n if (this.privateSubstance.protein.disulfideLinks[i] && this.privateSubstance.protein.disulfideLinks[i].sites &&\n this.privateSubstance.protein.disulfideLinks[i].sites[0] && this.privateSubstance.protein.disulfideLinks[i].sites[1] &&\n Object.keys(this.privateSubstance.protein.disulfideLinks[i].sites[0]).length === 0 &&\n Object.keys(this.privateSubstance.protein.disulfideLinks[i].sites[1]).length === 0) {\n this.privateSubstance.protein.disulfideLinks.splice(i, 1);\n }\n }\n }\n // end view=internal changes\n\n let substanceString = JSON.stringify(this.privateSubstance);\n let substanceCopy: SubstanceDetail = JSON.parse(substanceString);\n\n const response = this.cleanObject(substanceCopy);\n const deletedUuids = response.deletedUuids;\n\n if (deletedUuids.length > 0) {\n substanceString = JSON.stringify(substanceCopy);\n\n deletedUuids.forEach(uuid => {\n substanceString = substanceString.replace(new RegExp(`\"${uuid}\"`, 'g'), '');\n });\n substanceString = substanceString.replace(/,[,]+/g, ',');\n substanceString = substanceString.replace(/\\[,/g, '[');\n substanceString = substanceString.replace(/,\\]/g, ']');\n substanceCopy = JSON.parse(substanceString);\n }\n\n return substanceCopy;\n }\n\n private cleanObject(substanceProperty: any, deletedUuids: Array = []): { deletedUuids: Array, isDeleted: boolean } {\n if (Object.prototype.toString.call(substanceProperty) === '[object Object]') {\n\n const hasDeleletedCode = substanceProperty.$$deletedCode != null;\n if (!hasDeleletedCode) {\n delete substanceProperty.$$deletedCode;\n Object.keys(substanceProperty).forEach(key => {\n if (Object.prototype.toString.call(substanceProperty[key]) === '[object Array]') {\n substanceProperty[key] = substanceProperty[key].filter(childProperty => {\n const response = this.cleanObject(childProperty, deletedUuids);\n return !response.isDeleted;\n });\n } else if (Object.prototype.toString.call(substanceProperty[key]) === '[object Object]') {\n this.cleanObject(substanceProperty[key], deletedUuids);\n }\n });\n } else if (substanceProperty.uuid != null) {\n deletedUuids.push(substanceProperty.uuid);\n }\n\n return {\n deletedUuids: deletedUuids,\n isDeleted: hasDeleletedCode\n };\n } else if (Object.prototype.toString.call(substanceProperty) === '[object Array]') {\n substanceProperty.forEach(childProperty => {\n this.cleanObject(childProperty, deletedUuids);\n });\n } else {\n return {\n deletedUuids: deletedUuids,\n isDeleted: false\n };\n }\n }\n\n getMethod(): string {\n return this.method;\n }\n\n structureDuplicateCheck(): any {\n return new Observable(observer => {\n this.structureService.duplicateCheck(this.privateSubstance).subscribe(response => {\n observer.next(response);\n observer.complete();\n });\n });\n }\n\n getUNII() {\n return this.privateSubstance._approvalIDDisplay;\n }\n\n approveSubstance(): Observable {\n return new Observable(observer => {\n const results: SubstanceFormResults = {\n isSuccessfull: true\n };\n this.substanceService.approveSubstance(this.privateSubstance.uuid).subscribe(substance => {\n this.privateSubstance = substance;\n results.uuid = substance.uuid;\n this.definitionEmitter.next(this.getDefinition());\n if (this.privateSubstance.substanceClass === 'protein') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);\n } else if (this.privateSubstance.substanceClass === 'nucleicAcid') {\n this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars);\n this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits);\n } else if (this.privateSubstance.substanceClass === 'mixture') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.mixture.components);\n }\n this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason);\n this.resetState();\n this.substanceEmitter.next(this.privateSubstance);\n observer.next(results);\n observer.complete();\n }, error => {\n results.isSuccessfull = false;\n if (error && error.error && error.error.validationMessages) {\n results.validationMessages = error.error.validationMessages;\n } else {\n results.serverError = error;\n }\n observer.error(results);\n observer.complete();\n });\n });\n }\n\n saveSubstance(): Observable {\n return new Observable(observer => {\n const results: SubstanceFormResults = {\n isSuccessfull: true\n };\n if (this.privateSubstance.structure != null && !this.privateSubstance.structure.uuid) {\n this.privateSubstance.structure.id = this.utilsService.newUUID();\n this.privateSubstance.structure.uuid = this.privateSubstance.structure.id;\n }\n if (this.privateSubstance.moieties != null && this.privateSubstance.moieties.length) {\n this.privateSubstance.moieties.forEach(moiety => {\n if (!moiety.uuid) {\n moiety.id = this.utilsService.newUUID();\n moiety.uuid = moiety.id;\n }\n });\n }\n\n const substanceCopy = this.cleanSubstance();\n this.substanceService.saveSubstance(substanceCopy, this.method).subscribe(substance => {\n this.privateSubstance = substance;\n results.uuid = substance.uuid;\n this.definitionEmitter.next(this.getDefinition());\n if (this.privateSubstance.substanceClass === 'protein') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);\n } else if (this.privateSubstance.substanceClass === 'nucleicAcid') {\n this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars);\n this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits);\n } else if (this.privateSubstance.substanceClass === 'mixture') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.mixture.components);\n }\n this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason);\n this.substanceService.getSubstanceDetails(results.uuid).subscribe(resp => {\n this.privateSubstance = resp;\n this.resetState();\n this.substanceEmitter.next(this.privateSubstance);\n observer.next(results);\n observer.complete();\n }, error => {\n observer.next(results);\n observer.complete();\n });\n }, error => {\n results.isSuccessfull = false;\n if (error && error.error && error.error.validationMessages) {\n results.validationMessages = error.error.validationMessages;\n } else {\n results.serverError = error;\n }\n observer.error(results);\n observer.complete();\n });\n });\n }\n\n siteDisplayToSite(site) {\n const subres = site.split('_');\n\n if (site.match(/^[0-9][0-9]*_[0-9][0-9]*$/g) === null) {\n throw new Error('\"' + site + '\" is not a valid shorthand for a site. Must be of form \"{subunit}_{residue}\"');\n }\n\n return {\n subunitIndex: subres[0] - 0,\n residueIndex: subres[1] - 0\n };\n }\n\n importSubstance(substance, method?: string) {\n this.privateSubstance = substance;\n if (!method || method !== 'update') {\n this.method = 'import';\n } else {\n this.method = null;\n }\n this.definitionEmitter.next(this.getDefinition());\n if (this.privateSubstance.substanceClass === 'protein') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);\n } else if (this.privateSubstance.substanceClass === 'nucleicAcid') {\n this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars);\n this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits);\n } else if (this.privateSubstance.substanceClass === 'mixture') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.mixture.components);\n }\n this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason);\n this.resetState();\n this.substanceEmitter.next(this.privateSubstance);\n }\n\n stringToSites(slist: string): Array {\n slist = slist.replace(/ /g, '');\n if (!slist) {\n return [];\n }\n const toks = slist.split(';');\n const sites = [];\n // eslint-disable-next-line guard-for-in\n for (const i in toks) {\n const l = toks[i];\n if (l === '') {\n continue;\n }\n const rng = l.split('-');\n if (rng.length > 1) {\n const site1 = this.siteDisplayToSite(rng[0]);\n const site2 = this.siteDisplayToSite(rng[1]);\n if (site1.subunitIndex !== site2.subunitIndex) {\n throw new Error('\"' + rng + '\" is not a valid shorthand for a site range. Must be between the same subunits.');\n }\n if (site2.residueIndex <= site1.residueIndex) {\n throw new Error('\"' + rng + '\" is not a valid shorthand for a site range. Second residue index must be greater than first.');\n }\n sites.push(site1);\n for (let j = site1.residueIndex + 1; j < site2.residueIndex; j++) {\n sites.push({\n subunitIndex: site1.subunitIndex,\n residueIndex: j\n });\n }\n sites.push(site2);\n } else {\n sites.push(this.siteDisplayToSite(rng[0]));\n }\n }\n return sites;\n }\n\n addAnySiteType(data: any) {\n if (data.siteType === 'CGlycosylation') {\n this.privateSubstance.protein.glycosylation.CGlycosylationSites =\n this.privateSubstance.protein.glycosylation.CGlycosylationSites.concat(data.links);\n this.emitGlycosylationUpdate();\n } else if (data.siteType === 'NGlycosylation') {\n this.privateSubstance.protein.glycosylation.NGlycosylationSites =\n this.privateSubstance.protein.glycosylation.NGlycosylationSites.concat(data.links);\n this.emitGlycosylationUpdate();\n } else if (data.siteType === 'OGlycosylation') {\n this.privateSubstance.protein.glycosylation.OGlycosylationSites =\n this.privateSubstance.protein.glycosylation.OGlycosylationSites.concat(data.links);\n this.emitGlycosylationUpdate();\n } else if (data.siteType === 'disulfide') {\n const newLink: Link = { sites: data.links };\n this.privateSubstance.protein.disulfideLinks.unshift(newLink);\n this.emitDisulfideLinkUpdate();\n\n }\n }\n\n siteString(sites: Array): string {\n\n if (!sites || sites.length === 0) {\n return '';\n }\n if (sites.length === 1) {\n return sites[0].subunitIndex + '_' + sites[0].residueIndex;\n }\n {\n sites.sort(function (site1, site2) {\n let d = site1.subunitIndex - site2.subunitIndex;\n if (d === 0) {\n d = site1.residueIndex - site2.residueIndex;\n }\n return d;\n\n });\n let csub = 0;\n let cres = 0;\n let rres = 0;\n let finish = false;\n let disp = '';\n for (let i = 0; i < sites.length; i++) {\n\n const site = sites[i];\n if (site.subunitIndex === csub && site.residueIndex === cres) {\n continue;\n }\n finish = false;\n if (site.subunitIndex === csub) {\n if (site.residueIndex === cres + 1) {\n if (rres === 0) {\n rres = cres;\n }\n } else {\n finish = true;\n }\n } else {\n finish = true;\n }\n if (finish && csub !== 0) {\n if (rres !== 0) {\n disp += csub + '_' + rres + '-' + csub + '_' + cres + '; ';\n } else {\n disp += csub + '_' + cres + '; ';\n }\n rres = 0;\n }\n csub = site.subunitIndex;\n cres = site.residueIndex;\n }\n if (sites.length > 0) {\n if (rres !== 0) {\n disp += csub + '_' + rres + '-' + csub + '_' + cres;\n } else {\n disp += csub + '_' + cres;\n }\n }\n return disp;\n }\n }\n\n createSubunitDisplay(): Array {\n let subunits = [];\n if (this.privateSubstance.substanceClass === 'protein') {\n subunits = this.privateSubstance.protein.subunits;\n } else {\n subunits = this.privateSubstance.nucleicAcid.subunits;\n }\n const t0 = performance.now();\n const subunitSequences = [];\n let subunitIndex = 1;\n subunits.forEach(subunit => {\n const subsections = [];\n let currentSections = [];\n if (subunit.sequence != null && subunit.sequence.length > 0) {\n for (let count = 0; count < subunit.sequence.length; count = count + 10) {\n if ((count + 10) >= subunit.sequence.length) {\n currentSections.push([count, subunit.sequence.length]);\n if ((count + 10) % 50 !== 0) {\n subsections.push(currentSections);\n }\n } else {\n currentSections.push([count, count + 10]);\n }\n if ((count + 10) % 50 === 0) {\n subsections.push(currentSections);\n currentSections = [];\n }\n }\n }\n const thisTest: TestSequence = {\n subunitIndex: subunitIndex,\n subunits: [],\n subsections: subsections,\n subgroups: currentSections\n };\n let index = 0;\n const indexEnd = subunit.sequence && subunit.sequence.length || 0;\n while (index < indexEnd) {\n if (subunit.sequence[index]) {\n const sequenceUnit: SequenceUnit = {\n unitIndex: index + 1,\n unitValue: subunit.sequence[index],\n class: ''\n };\n thisTest.subunits.push(sequenceUnit);\n }\n index++;\n }\n subunitSequences.push(thisTest);\n subunitIndex++;\n });\n // this.addStyle();\n const t1 = performance.now();\n const totaltime = t1 - t0;\n return subunitSequences;\n }\n\n disulfideLinks() {\n\n const KNOWN_DISULFIDE_PATTERNS = {};\n ('IGG4\t0-1,11-12,13-31,14-15,18-19,2-26,20-21,22-23,24-25,27-28,29-30,3-4,5-16,6-17,7-8,9-10\\n' +\n 'IGG2\t0-1,11-12,13-14,15-35,16-17,2-30,22-23,24-25,26-27,28-29,3-4,31-32,33-34,5-18,6-19,7-20,8-21,9-10\\n' +\n 'IGG1\t0-1,11-12,13-14,15-31,18-19,2-3,20-21,22-23,24-25,27-28,29-30,4-26,5-16,6-17,7-8,9-10').split('\\n').map(function (s) {\n const tup = s.split('\\t');\n\n const list = _.chain(tup[1].split(',')).map(function (t) {\n return _.map(t.split('-'), function (temp) {\n return +temp - 0;\n });\n }).value();\n\n KNOWN_DISULFIDE_PATTERNS[tup[0]] = list;\n });\n const proteinSubstance = this.privateSubstance;\n const prot = proteinSubstance.protein;\n const pattern = KNOWN_DISULFIDE_PATTERNS[prot.proteinSubType];\n\n if (!pattern) {\n alert('Unknown disulfide pattern for protein subtype:\"' + prot.proteinSubType + '\"');\n return;\n } else {\n if (!confirm('Would you like to set the disulfide pattern for:\"' + prot.proteinSubType + '\"')) {\n return;\n }\n }\n let ng = '';\n let og = '';\n let cg = '';\n const realList = [];\n const cst = [];\n\n let cs = _.chain(prot.subunits).map(function (s) {\n const sid = s.subunitIndex;\n let i1 = 1;\n\n const v = _.chain(s.sequence).map(function (r) {\n return {\n 'i': i1++,\n 'r': r\n };\n }).filter(function (r) {\n return r.r === 'C';\n }).map(function (r) {\n return {\n 'su': sid,\n 'r': r.r,\n 'ri': r.i\n };\n }).value();\n\n for (let i = 0; i < v.length; i++) {\n cst.push(v[i]);\n }\n\n return v;\n }).value();\n cs = cst;\n for (let i = 0; i < cs.length; i++) {\n const c1 = cs[i];\n const real: any = {};\n real.subunitIndex = c1['su'];\n real.residueIndex = c1['ri'];\n real.display = c1['su'] + '_' + c1['ri'];\n real.value = real.display;\n realList.push(real);\n }\n const newDS = _.chain(pattern).map(function (sl) {\n return [realList[sl[0]], realList[sl[1]]];\n }).map(function (s) {\n return {\n 'sites': s,\n 'sitesShorthand': s[0].display + ';' + s[1].display\n };\n }).value();\n\n if (prot.glycosylation) {\n if (prot.glycosylation.NGlycosylationSites) {\n const s = prot.glycosylation.NGlycosylationSites;\n ng = _.chain(s).map(function (s1) {\n return s1.subunitIndex + '_' + s1.residueIndex;\n }).value().join(';');\n }\n\n if (prot.glycosylation.CGlycosylationSites) {\n const s = prot.glycosylation.CGlycosylationSites;\n cg = _.chain(s).map(function (s1) {\n return s1.subunitIndex + '_' + s1.residueIndex;\n }).value().join(';');\n }\n\n if (prot.glycosylation.OGlycosylationSites) {\n const s = prot.glycosylation.OGlycosylationSites;\n og = _.chain(s).map(function (s1) {\n return s1.subunitIndex + '_' + s1.residueIndex;\n }).value().join(';');\n }\n }\n\n this.privateSubstance.protein.disulfideLinks = newDS;\n this.emitDisulfideLinkUpdate();\n alert('Found and added ' + newDS.length + 'sites');\n }\n\n\n predictSites() {\n function setJson(json) {\n\n }\n\n function gfinder(sn, seq) {\n const re = new RegExp('N[^P][ST]', 'g');\n let xArray;\n const sites = [];\n\n while (xArray = re.exec(seq)) {\n const ri = xArray.index + 1;\n sites.push({\n subunitIndex: sn,\n residueIndex: ri\n });\n }\n\n return sites;\n }\n\n function proteinGlycFinder(proteinSubstance) {\n return _.chain(proteinSubstance.protein.subunits).flatMap(function (su) {\n return gfinder(su.subunitIndex, su.sequence);\n }).value();\n }\n\n const sub = this.privateSubstance;\n const gsites = proteinGlycFinder(sub);\n\n if (gsites.length === 0) {\n alert('No potential N-Glycosylation sites found');\n\n } else {\n alert('Found: ' + gsites.length + ' glycosylation sites. Submit record to save changes');\n sub.protein.glycosylation.NGlycosylationSites = gsites;\n setJson(sub);\n }\n\n // gsites.$$displayString = angular.element(document.body).injector().get('siteList').siteString(gsites);\n\n }\n\n}\n\n\n\ninterface DisplaySite {\n type: string;\n subunit: number;\n residue: number;\n}\n\ninterface TestSequence {\n subunitIndex?: number;\n subsections?: Array;\n subgroups?: Array;\n subunits?: Array;\n}\n\n","
        \n
        \n
        \n Sites:\n
        \n \n
        \n
        \n \n\n
        \n \n
        \n
        {{cysteineMessage}}
        \n\n
        \n
        \n
        \n
        \n \n Name\n \n \n
        \n
        \n Site Range\n
        \n
        \n \n \n {{feat[0].subunitIndex}}_{{feat[0].residueIndex}}-{{feat[1].subunitIndex}}_{{feat[1].residueIndex}};\n \n \n \n \n {{newFeature[0].subunitIndex}}_{{newFeature[0].residueIndex}} -\n \n \n {{newFeature[1].subunitIndex}}_{{newFeature[1].residueIndex}}\n \n \n
        \n
        \n \n
        \n\n
        \n\n\n
        \n\n
        \n
        \n Select Starting Site\n Select Ending Site\n Enter a Feature Name \n Click a new site to add an additional range\n
        \n
        \n\n
        \n\n
        \n Links:\n \n \n {{set[0].subunitIndex}}_{{set[0].residueIndex}}, {{set[1].subunitIndex}}_{{set[1].residueIndex}};\n \n \n \n \n {{sites[0].subunitIndex}}_{{sites[0].residueIndex}} -\n \n \n {{sites[1].subunitIndex}}_{{sites[1].residueIndex}}\n \n \n
        \n
        click on a link above to delete it, or another starting site to add additional links
        \n
        Click on a starting site, then an ending site to create a new link
        \n
        \n
        \n \n Select link type to add\n \n \n \n Other Link\n \n \n C-Glycosylation Sites\n \n \n N-Glycosylation Sites\n \n \n O-Glycosylation Sites\n \n \n Disulfide Link\n \n \n Structural Modification\n \n \n \n\n
        \n
        \n
        \n Key:\n
        \n
        \n
        C-Glycosylation
        \n
        Other Link
        \n
        \n
        \n
        O-Glycosylation
        \n
        Modification
        \n
        \n
        \n
        N-Glycosylation
        \n
        Disulfide Link
        \n
        \n
        \n
        Feature
        \n
        currently selected
        \n
        \n\n
        \n
        \n\n\n
        \n

        Subunit {{sequence.subunitIndex}}

        \n
        \n
        \n
        \n
        {{num[1]}}
        \n \n
        \n
        \n
        \n
        \n
        \n
        \n Total sequence length of {{siteTotal}} is too long to display. Please enter sites manually\n
        \n\n
        \n","import { AfterViewInit, Component, EventEmitter, Input, OnDestroy, OnInit, Output, Renderer2 } from '@angular/core';\nimport { Feature, Glycosylation, Link, Site, SubstanceAmount, Subunit } from '@gsrs-core/substance';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { Subscription } from 'rxjs';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { SubstanceFormLinksService } from '../links/substance-form-links.service';\n\n@Component({\n selector: 'app-subunit-selector',\n templateUrl: './subunit-selector.component.html',\n styleUrls: ['./subunit-selector.component.scss'],\n animations: [\n trigger('errorFlash', [\n state('initial', style({\n backgroundColor: 'white'\n })),\n state('final', style({\n backgroundColor: 'pink'\n })),\n transition('initial=>final', animate('1000ms')),\n transition('final=>initial', animate('500ms'))\n ]),\n ]\n})\nexport class SubunitSelectorComponent implements OnInit, AfterViewInit, OnDestroy {\n @Input() card: any;\n @Input() link?: Array;\n @Output() sitesUpdate = new EventEmitter>();\n @Output() featureUpdate = new EventEmitter();\n @Output() disulfidesUpdate = new EventEmitter();\n @Output() cardTypeUpdate = new EventEmitter();\n\n privateFeature: Feature = { name: '', siteRange: '' };\n sites: Array = [];\n sitesDisplay: string;\n substanceType: string;\n subunits: Array;\n otherLinks: Array;\n glycosylation: Glycosylation;\n allSites: Array = [];\n vocabulary: { [vocabularyTermValue: string]: VocabularyTerm } = {};\n private subscriptions: Array = [];\n features: Array;\n featureName?: string;\n selectState: string;\n newFeature: Array = [];\n subunitSequences: Array = [];\n currentState = 'initial';\n newFeatureArray: Array> = [];\n valid = true;\n cysteineMessage: string;\n siteTotal: number;\n disulfideArray: Array> = [];\n showStyle = true;\n startingCard: string;\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceFormLinksService: SubstanceFormLinksService,\n public gaService: GoogleAnalyticsService,\n private cvService: ControlledVocabularyService,\n private render: Renderer2\n ) {\n }\n\n @Input()\n set feature(feat: Feature) {\n this.privateFeature = feat;\n }\n\n get feature(): Feature {\n return this.privateFeature;\n }\n\n ngOnInit() {\n const definitionSubscription = this.substanceFormService.definition.subscribe(definition => {\n this.substanceType = definition.substanceClass;\n });\n definitionSubscription.unsubscribe();\n this.getVocabularies();\n if (this.link && this.link.length > 0) {\n this.sites = this.link;\n this.allSites = [];\n this.updateDisplay();\n this.sitesUpdate.emit(this.sites);\n } else {\n this.link = [];\n }\n if (this.feature) {\n this.convertFeature();\n }\n this.selectState = 'first';\n this.startingCard = this.card;\n }\n\n ngAfterViewInit() {\n this.siteTotal = 0;\n if ((!this.link.length) || (this.link.length === 0)) {\n this.selectState = 'first';\n } else if (this.link.length === 1) {\n this.selectState = 'last';\n } else if (this.link.length === 2) {\n this.selectState = 'finished';\n }\n setTimeout(() => {\n const subunitsSubscription = this.substanceFormService.subunitDisplaySequences.subscribe(subunits => {\n this.subunitSequences = subunits;\n this.subunitSequences.forEach(testSequence => {\n this.siteTotal = this.siteTotal + testSequence.subunits.length;\n if (this.card === 'disulfide') {\n testSequence.subunits.forEach(sequenceUnit => {\n if (sequenceUnit.unitValue !== 'C') {\n sequenceUnit.class = 'unavailable';\n } else {\n sequenceUnit.class = 'cys';\n }\n });\n }\n this.siteTotal > 5000 ? this.showStyle = false : this.showStyle = true;\n });\n\n if (this.feature) {\n this.convertFeature();\n }\n });\n this.subscriptions.push(subunitsSubscription);\n\n\n const allSitesSubscription = this.substanceFormService.allSites.subscribe(allSites => {\n this.allSites = this.allSites.concat(allSites);\n });\n this.subscriptions.push(allSitesSubscription);\n\n if (this.card === 'link') {\n const linksSubscription = this.substanceFormLinksService.substanceLinks.subscribe(Links => {\n Links.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n const newLink: DisplaySite = { residue: site.residueIndex, subunit: site.subunitIndex, type: 'other' };\n this.allSites.push(newLink);\n });\n }\n });\n\n });\n this.subscriptions.push(linksSubscription);\n } else if (this.card === 'sugar') {\n const sugarSubscription = this.substanceFormService.substanceSugars.subscribe(Links => {\n Links.forEach(link => {\n if (link.sites) {\n link.sites.forEach(site => {\n const newLink: DisplaySite = { residue: site.residueIndex, subunit: site.subunitIndex, type: 'other' };\n this.allSites.push(newLink);\n });\n }\n });\n });\n this.subscriptions.push(sugarSubscription);\n }\n setTimeout(() => {\n this.addStyle();\n }, 100);\n });\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n emitUpdate(event): void {\n // ### no idea why this would be undefined if it's declared earlier\n if (!this.privateFeature) {\n this.privateFeature = { name: this.featureName, siteRange: '' };\n }\n this.featureUpdate.emit(this.privateFeature);\n this.privateFeature.name = this.featureName;\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('AMINO_ACID_RESIDUE').subscribe(response => {\n this.vocabulary = response['AMINO_ACID_RESIDUE'].dictionary;\n }, error => {\n });\n }\n\n switchType(event): void {\n const type = event;\n this.card = type;\n this.sites = [];\n this.features = [];\n this.sitesDisplay = '';\n this.selectState = 'first';\n this.cardTypeUpdate.emit(type);\n this.addStyle();\n }\n\n getTooltipMessage(subunitIndex: number, unitIndex: number, unitValue: string, type: string): any {\n const vocab = (this.vocabulary[unitValue] === undefined ? 'UNDEFINED' : this.vocabulary[unitValue].display);\n const arr = [];\n const formatted = {\n 'modification': 'Structural Modification',\n 'other': 'Other Link',\n 'C-Glycosylation': 'C-Glycosylation',\n 'N-Glycosylation': 'N-Glycosylation',\n 'O-Glycosylation': 'O-Glycosylation',\n 'feature': this.substanceType.toUpperCase() + ' Feature',\n 'disulfide': 'Disulfide Link'\n };\n arr.push(`${subunitIndex} - ${unitIndex}: ${unitValue.toUpperCase()} (${vocab})`);\n const splitDisplay = type.split(' ');\n splitDisplay.forEach(_type => {\n arr.push(formatted[_type] || '');\n });\n return arr;\n }\n\n updateDisplay(): void {\n this.sites = this.sites.sort(function (s1, s2) {\n if (s1.subUnitIndex > s2.subunitIndex) {\n return 1;\n } else if (s1.subunitIndex < s2.subunitIndex) {\n return -1;\n } else if (s1.residueIndex > s2.residueIndex) {\n return 1;\n } else if (s1.residueIndex < s2.residueIndex) {\n } else {\n return 1;\n }\n });\n this.sitesDisplay = this.substanceFormService.siteString(this.sites);\n }\n\n toggleMultiDisulfide(subunit: any, residue: any, value: any, event): void {\n const newobj = { subunitIndex: subunit, residueIndex: residue, event: event.target };\n if (this.selectState === 'first') {\n this.sites[0] = newobj;\n this.render.addClass(event.target, 'chosen');\n this.selectState = 'last';\n } else if (this.selectState === 'last') {\n if (this.sites[0] === newobj) {\n this.selectState = 'first';\n this.render.removeClass(event.target, 'chosen');\n } else {\n this.sites[1] = newobj;\n this.disulfideArray.push(this.sites);\n this.sites = [];\n this.selectState = 'first';\n this.renderDisulfideArray();\n this.disulfidesUpdate.emit(this.disulfideArray);\n }\n }\n }\n\n deleteDisulfide(index: number): void {\n this.disulfideArray[index].forEach(site => {\n this.render.removeClass(site.event, 'new-disulfide');\n });\n this.disulfideArray.splice(index, 1);\n this.disulfidesUpdate.emit(this.disulfideArray);\n }\n\n renderDisulfideArray(): void {\n this.disulfideArray.forEach(set => {\n set.forEach(site => {\n this.render.removeClass(site.event, 'chosen');\n this.render.addClass(site.event, 'new-disulfide');\n });\n });\n\n }\n\n\n toggleSite(subunit: any, residue: any, value: any, event): void {\n const newobj = { subunitIndex: subunit, residueIndex: residue };\n if (this.card === 'feature') {\n this.toggleFeatureSite(subunit, residue, value, event);\n } else if (this.card === 'multi-disulfide') {\n this.toggleMultiDisulfide(subunit, residue, value, event);\n } else {\n const inSites = this.sites.some(r => (r.residueIndex === residue) && (r.subunitIndex === subunit));\n if (this.card !== 'disulfide') {\n if (inSites) {\n this.sites = this.sites.filter(function (r) {\n return (r.residueIndex !== residue) || (r.subunitIndex !== subunit);\n });\n this.render.removeClass(event.target, 'chosen');\n\n } else {\n this.sites.push(newobj);\n this.render.addClass(event.target, 'chosen');\n }\n this.updateDisplay();\n this.sitesUpdate.emit(this.sites);\n\n } else {\n if (inSites) {\n this.render.removeClass(event.target, 'chosen');\n } else if (this.selectState !== 'finished') {\n this.render.removeClass(event.target, 'chosen');\n }\n if (event.target.innerText === 'C') {\n\n if (this.selectState === 'first') {\n if (!inSites) {\n this.selectState = 'last';\n\n this.render.addClass(event.target, 'chosen');\n this.sites[0] = newobj;\n } else {\n this.render.removeClass(event.target, 'chosen');\n this.sites = this.sites.filter(function (r) {\n return (r.residueIndex !== residue) || (r.subunitIndex !== subunit);\n });\n }\n } else if (this.selectState === 'last') {\n if (!inSites) {\n this.selectState = 'finished';\n this.sites[1] = newobj;\n this.render.addClass(event.target, 'chosen');\n } else {\n this.selectState = 'first';\n this.sites = [];\n this.render.removeClass(event.target, 'chosen');\n }\n } else if (this.selectState === 'finished') {\n if (inSites) {\n this.selectState = 'last';\n this.sites = this.sites.filter(function (r) {\n return (r.residueIndex !== residue) || (r.subunitIndex !== subunit);\n });\n } else {\n this.cysteineMessage = 'You must clear existing sites to select new ones';\n }\n }\n this.updateDisplay();\n this.sitesUpdate.emit(this.sites);\n } else {\n this.render.addClass(event.target, 'invalid_blink');\n setTimeout(\n function () { this.render.removeClass(event.target, 'invalid_blink'); }, 2000);\n }\n }\n }\n\n }\n\n clearSites(): void {\n this.sites.forEach(site => {\n this.subunitSequences[site.subunitIndex - 1].subunits[site.residueIndex - 1].class = '';\n });\n this.sites = [];\n this.cysteineMessage = '';\n this.selectState = 'first';\n this.updateDisplay();\n\n }\n\n addStyle(): void {\n if (this.subunitSequences && this.subunitSequences[0] && this.subunitSequences[0].subunits) {\n this.subunitSequences.forEach(sites => {\n sites.subunits.forEach(site => {\n if (this.card === 'disulfide' || this.card === 'multi-disulfide') {\n if (site.unitValue !== 'C') {\n site.class = 'unavailable';\n } else {\n site.class = 'cys';\n }\n } else {\n site.class = '';\n }\n });\n });\n this.allSites.forEach(site => {\n if (this.subunitSequences[site.subunit - 1].subunits) {\n if (this.subunitSequences[site.subunit - 1].subunits[site.residue - 1]){\n if (this.subunitSequences[site.subunit - 1].subunits[site.residue - 1].class !== '') {\n this.subunitSequences[site.subunit - 1].subunits[site.residue - 1].class\n = this.subunitSequences[site.subunit - 1].subunits[site.residue - 1].class + ' ' + site.type;\n } else {\n this.subunitSequences[site.subunit - 1].subunits[site.residue - 1].class = site.type;\n }\n }\n }\n });\n this.sites.forEach(site => {\n if (this.subunitSequences[site.subunitIndex - 1].subunits) {\n this.subunitSequences[site.subunitIndex - 1].subunits[site.residueIndex - 1].class = 'chosen';\n } else {\n }\n });\n if (this.features) {\n this.features.forEach(feat => {\n this.drawFeature(feat);\n });\n }\n }\n\n }\n\n manualInput(event): void {\n try {\n const newsites = this.substanceFormService.stringToSites(event.replace(/ /g, ''));\n if (this.sites !== newsites) {\n if (this.card === 'disulfide') {\n if (newsites.length < 3 && newsites.length > 0) {\n this.sites[0] = newsites[0] ? newsites[0] : {};\n this.sites[1] = newsites[1] ? newsites[1] : {};\n this.valid = true;\n this.sitesDisplay = event;\n this.addStyle();\n } else {\n this.valid = false;\n }\n } else {\n this.sites = newsites;\n this.addStyle();\n this.sitesUpdate.emit(this.sites);\n }\n } else {\n }\n this.valid = true;\n this.sitesDisplay = event;\n } catch (e) {\n console.log(e);\n this.valid = false;\n }\n }\n\n // start feature specific\n\n removeFeature(): void {\n if (this.newFeature[1]) {\n this.addFeature(this.newFeature, true);\n this.addStyle();\n this.selectState = 'first';\n } else if (this.newFeature[0]) {\n this.subunitSequences[this.newFeature[0].subunitIndex - 1].subunits[this.newFeature[0].residueIndex - 1].class = '';\n }\n this.newFeature = [];\n }\n\n addFeature(feature: Array, reverse?: boolean): void {\n if (feature[0].subunitIndex === feature[1].subunitIndex) {\n const subunitIndex = feature[0].subunitIndex;\n let start = feature[0].residueIndex;\n let end = feature[1].residueIndex;\n if (feature[0].residueIndex > feature[1].residueIndex) {\n start = feature[1].residueIndex;\n end = feature[0].residueIndex;\n }\n for (let i = start; i <= end; i++) {\n if (reverse) {\n this.subunitSequences[subunitIndex - 1].subunits[i - 1].class = '';\n } else {\n this.subunitSequences[subunitIndex - 1].subunits[i - 1].class = 'chosen';\n }\n\n }\n }\n }\n\n deleteFeature(event): void {\n for (let i = event[0].residueIndex; i <= event[1].residueIndex; i++) {\n this.subunitSequences[event[0].subunitIndex - 1].subunits[i - 1].class = '';\n }\n this.newFeatureArray = this.newFeatureArray.filter(feat => ((event[0] !== feat[0]) && (event[1] !== feat[1])));\n\n }\n\n pushFeature(): void {\n if (this.newFeature.length === 2) {\n this.newFeatureArray.push(this.newFeature);\n this.newFeature = [];\n this.selectState = 'first';\n }\n }\n\n drawFeature(feature: Feature): void {\n const sites = feature.siteRange.split('-');\n const start = Number(sites[0].split('_')[1]);\n const end = Number(sites[1].split('_')[1]);\n const subunit = Number(sites[0].split('_')[0]);\n for (let i = start; i <= end; i++) {\n this.subunitSequences[subunit - 1].subunits[i - 1].class = 'feature';\n }\n\n }\n\n toggleFeatureSite(subunit: any, residue: any, value: any, event): void {\n const newobj = { subunitIndex: subunit, residueIndex: residue };\n if (this.selectState === 'first') {\n this.newFeature[0] = newobj;\n this.render.addClass(event.target, 'chosen');\n this.selectState = 'last';\n } else if (this.selectState === 'last') {\n if ((this.newFeature[0].subunitIndex === newobj.subunitIndex) &&\n (this.newFeature[0].residueIndex === newobj.residueIndex)) {\n\n this.selectState = 'first';\n this.render.removeClass(event.target, 'chosen');\n } else {\n this.newFeature[1] = newobj;\n this.addFeature(this.newFeature);\n this.selectState = 'finished';\n let siterange = '';\n this.newFeatureArray.forEach(feat => {\n siterange = siterange + (feat[0].subunitIndex +\n '_' + feat[0].residueIndex + '-' + feat[1].subunitIndex + '_' + feat[1].residueIndex + ';');\n });\n siterange = siterange + (this.newFeature[0].subunitIndex +\n '_' + this.newFeature[0].residueIndex + '-' + this.newFeature[1].subunitIndex + '_' + this.newFeature[1].residueIndex);\n this.privateFeature = { 'name': this.featureName || '', 'siteRange': siterange };\n this.featureUpdate.emit(this.privateFeature);\n }\n } else if (this.selectState === 'finished') {\n this.pushFeature();\n this.newFeature[0] = newobj;\n this.render.addClass(event.target, 'chosen');\n this.selectState = 'last';\n let siterange = '';\n this.newFeatureArray.forEach(feat => {\n siterange = siterange + (feat[0].subunitIndex +\n '_' + feat[0].residueIndex + '-' + feat[1].subunitIndex + '_' + feat[1].residueIndex);\n });\n this.privateFeature = { 'name': this.featureName || '', 'siteRange': siterange };\n this.featureUpdate.emit(this.privateFeature);\n }\n }\n\n convertFeature(): void {\n this.newFeatureArray = [];\n const siteSplit = this.feature.siteRange.split(';');\n siteSplit.forEach(pair => {\n const sites = pair.split('-');\n const start = Number(sites[0].split('_')[1]);\n const end = Number(sites[1].split('_')[1]);\n const subunit = Number(sites[0].split('_')[0]);\n const newArr = [{ subunitIndex: subunit, residueIndex: start }, { subunitIndex: subunit, residueIndex: end }];\n this.newFeatureArray.push(newArr);\n this.addFeature(newArr);\n });\n this.newFeature = [];\n this.featureName = this.feature.name;\n this.selectState = 'first';\n }\n\n // end Feature specific\n\n}\n\n\n\ninterface SequenceUnit {\n unitIndex: number;\n unitValue: string;\n class?: string;\n type?: string;\n event?: any;\n}\n\ninterface DisplaySite {\n type: string;\n subunit: number;\n residue: number;\n}\n\n\ninterface TestSequence {\n subunitIndex?: number;\n subsections?: Array;\n subgroups?: Array;\n subunits?: Array;\n}\n","

        Select Sites

        \n

        Add / Modify Feature

        \n\n \n\n\n \n\n
        \n \n \n
        \n
        {{warning}}
        \n
        \n\n\n","import {AfterViewInit, Component, Inject, OnInit} from '@angular/core';\nimport {MAT_DIALOG_DATA, MatDialogRef} from '@angular/material/dialog';\nimport {cloneDeep} from 'lodash';\n\n@Component({\n selector: 'app-subunit-selector-dialog',\n templateUrl: './subunit-selector-dialog.component.html',\n styleUrls: ['./subunit-selector-dialog.component.scss']\n})\nexport class SubunitSelectorDialogComponent implements OnInit, AfterViewInit {\n feature: any;\n warning = '';\n disulfides: any;\n siteType: string;\n dataToSend: any;\n backup: any;\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any = {}\n ) {dialogRef.disableClose = true; }\n\n ngOnInit() {\n this.dialogRef.backdropClick().subscribe(fun => {\n if (this.data.card === 'feature') {\n if (this.feature && this.feature.name && this.feature.name !== '') {\n if (this.feature.siteRange) {\n this.dialogRef.close(this.feature);\n } else {\n this.invalidFeatureConfirm();\n }\n } else {\n this.invalidFeatureConfirm();\n }\n } else if (this.data.card === 'multi-disulfide') {\n this.dialogRef.close(this.disulfides);\n } else {\n this.dialogRef.close(this.data.links);\n }\n });\n }\n\n invalidFeatureConfirm(): void {\n const cn = confirm('Feature is missing information and will not be saved. Close the dialog anyway?');\n if (cn) {\n this.dialogRef.close();\n }\n }\n\n ngAfterViewInit() {\n if (this.data.card === 'feature') {\n if (this.feature && this.feature.name && this.feature.name !== '') {\n if (this.feature.siteRange) {\n this.backup = JSON.parse(JSON.stringify(this.feature));\n\n } else {\n this.backup = {};\n }\n } else {\n this.backup = {};\n }\n } else if (this.data.card === 'multi-disulfide') {\n this.backup = cloneDeep(this.disulfides);\n } else {\n const myClonedArray = Object.assign([], this.data.links);\n this.backup = cloneDeep(this.data.links);\n }\n }\n\n save(): void {\n if (this.data.card === 'feature') {\n if (this.feature && this.feature.name && this.feature.name !== '') {\n if (this.feature.siteRange) {\n this.dialogRef.close(this.feature);\n } else {\n this.warning = 'Select site Range(s) before saving';\n }\n } else {\n this.warning = 'Enter a feature name before saving';\n }\n } else if (this.data.card === 'multi-disulfide') {\n this.dialogRef.close(this.disulfides);\n } else if (this.data.card === 'any') {\n\n this.dialogRef.close(this.data);\n } else {\n this.dialogRef.close(this.data.links);\n }\n }\n\n cancel(): void {\n this.dialogRef.close(this.backup);\n }\n updateSites(sites: any): void {\n this.data.links = sites;\n }\n\n updateFeature(feature: any): void {\n this.feature = feature;\n this.data.sentFeature = feature;\n }\n\n updateDisulfides(sites: any): void {\n this.disulfides = sites;\n }\n\n updateCardType(type: string) {\n this.data.siteType = type;\n }\n\n}\n\n","
        \n
        \n Deleted \n \n
        \n
        \n
        \n \n
        \n
        \n \n
        \n
        \n \n
        \n
        \n \n
        \n\n
        \n
        Sites
        \n {{siteDisplay}}\n \n
        \n
        \n \n
        \n","import {AfterViewInit, Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\nimport {Link, Linkage, Site, Sugar} from '@gsrs-core/substance';\nimport {Subscription} from 'rxjs';\nimport {ControlledVocabularyService} from '@gsrs-core/controlled-vocabulary';\nimport {MatDialog} from '@angular/material/dialog';\nimport {UtilsService} from '@gsrs-core/utils';\nimport {OverlayContainer} from '@angular/cdk/overlay';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {SubunitSelectorDialogComponent} from '@gsrs-core/substance-form/subunit-selector-dialog/subunit-selector-dialog.component';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-sugar-form',\n templateUrl: './sugar-form.component.html',\n styleUrls: ['./sugar-form.component.scss']\n})\nexport class SugarFormComponent implements OnInit, OnDestroy, AfterViewInit {\n\n\n private privateSugar: Sugar;\n @Output() sugarDeleted = new EventEmitter();\n @Input() remaining: Array;\n deleteTimer: any;\n sugarTypes: any;\n vocabulary: any;\n smiles: any;\n structure: any = null;\n private subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n siteDisplay: string;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private utilsService: UtilsService,\n private overlayContainerService: OverlayContainer,\n private substanceFormService: SubstanceFormService\n ) { }\n\n ngOnInit() {\n this.getVocabularies();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.updateDisplay();\n }\n\n ngAfterViewInit() {\n this.updateDisplay();\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set sugar(sugar: Sugar) {\n this.privateSugar = sugar;\n }\n\n get sugar(): Sugar {\n this.updateDisplay();\n return this.privateSugar;\n }\n\n addRemainingSites(): void {\n if (this.privateSugar.sites) {\n this.privateSugar.sites = this.privateSugar.sites.concat(this.remaining);\n } else {\n this.privateSugar.sites = this.remaining;\n }\n this.updateDisplay();\n this.substanceFormService.emitSugarUpdate();\n }\n\n getStructure() {\n this.smiles = this.vocabulary[this.privateSugar.sugar];\n if (this.smiles && this.smiles.fragmentStructure) {\n this.structure = this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure);\n } else {\n this.cvService.getDomainVocabulary('NUCLEIC_ACID_SUGAR').pipe(take(1)).subscribe(response => {\n let list = response['NUCLEIC_ACID_SUGAR'].list;\n let found = false;\n list.forEach(val => {\n if (val.value === this.privateSugar.sugar) {\n this.smiles = val;\n found = true;\n this.structure = this.cvService.getStructureUrlFragment(this.smiles.fragmentStructure);\n }\n });\n if (!found) {\n this.structure = null;\n }\n });\n }\n }\n\n updateDisplay(sugar?: Sugar): void {\n if (sugar) {\n this.siteDisplay = this.substanceFormService.siteString(sugar.sites);\n } else {\n if (this.privateSugar) {\n this.siteDisplay = this.substanceFormService.siteString(this.privateSugar.sites);\n }\n }\n\n }\n\n deleteLink(): void {\n this.privateSugar.$$deletedCode = this.utilsService.newUUID();\n this.deleteTimer = setTimeout(() => {\n this.sugarDeleted.emit(this.sugar);\n this.substanceFormService.emitSugarUpdate();\n }, 2000);\n }\n\n undoDelete(): void {\n clearTimeout(this.deleteTimer);\n delete this.privateSugar.$$deletedCode;\n }\n\n getVocabularies(): void {\n const subscription = this.cvService.getDomainVocabulary('NUCLEIC_ACID_SUGAR').subscribe(response => {\n this.sugarTypes = response['NUCLEIC_ACID_SUGAR'].list;\n this.vocabulary = response['NUCLEIC_ACID_SUGAR'].dictionary;\n this.smiles = this.vocabulary[this.privateSugar.sugar];\n this.getStructure();\n });\n this.subscriptions.push(subscription);\n }\n\n updateSugar(event: any) {\n this.privateSugar.sugar = event;\n this.getStructure();\n }\n\n openDialog(): void {\n\n const dialogRef = this.dialog.open(SubunitSelectorDialogComponent, {\n data: {'card': 'sugar', 'link': this.privateSugar.sites},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().subscribe(newLinks => {\n this.overlayContainer.style.zIndex = null;\n if (newLinks) {\n this.privateSugar.sites = newLinks;\n }\n this.updateDisplay();\n this.substanceFormService.emitSugarUpdate();\n });\n this.subscriptions.push(dialogSubscription);\n }\n}\n","\r\n \r\n \r\n {{optionsDictionary[tag] && optionsDictionary[tag].display || tag}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{option.display}}\r\n \r\n \r\n Press enter to add custom value\r\n \r\n \r\n","import { Component, OnInit, Input, Output, EventEmitter, ViewChild, ElementRef, AfterViewInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { MatAutocompleteSelectedEvent, MatAutocomplete } from '@angular/material/autocomplete';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { FormControl } from '@angular/forms';\nimport { map, startWith } from 'rxjs/operators';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatChipInputEvent } from '@angular/material/chips';\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { AuthService } from '@gsrs-core/auth';\nimport { CvDialogComponent } from '@gsrs-core/substance-form/cv-dialog/cv-dialog.component';\n\n@Component({\n selector: 'app-tag-selector',\n templateUrl: './tag-selector.component.html',\n styleUrls: ['./tag-selector.component.scss']\n})\nexport class TagSelectorComponent implements OnInit, AfterViewInit {\n @Input() cvDomain: string;\n @Output() tagsUpdate = new EventEmitter>();\n @Input() placeholder = 'Tags';\n @Input() disableCV?: boolean;\n privateTags: Array = [];\n allOptions: Array; \n cvOptions: Array;\n filteredOptions: Observable>;\n tagControl = new FormControl();\n readonly separatorKeysCodes: number[] = [ENTER, COMMA];\n @ViewChild('tagInput', {static: true}) tagInput: ElementRef;\n @ViewChild('tagsAuto', {static: true}) matAutocomplete: MatAutocomplete;\n optionsDictionary: { [dictionaryValue: string]: VocabularyTerm } = {};\n private overlayContainer: HTMLElement;\n isAdmin: boolean;\n\n constructor(\n private cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private authService: AuthService\n\n ) {\n }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.isAdmin = this.authService.hasRoles('admin');\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n this.cvService.getDomainVocabulary(this.cvDomain).subscribe(response => {\n this.allOptions = response[this.cvDomain].list;\n this.cvOptions = response[this.cvDomain].list;\n let inCV = false;\n this.allOptions.forEach(option => {\n if (option.display.toLowerCase() === 'other') {\n inCV = true;\n }\n });\n if (inCV === false) {\n const other = {\n display: 'Other',\n value: 'Other',\n filter: ' = ',\n selected: false\n };\n this.allOptions.push(other);\n }\n this.optionsDictionary = response[this.cvDomain].dictionary;\n\n this.filteredOptions = this.tagControl.valueChanges.pipe(\n startWith(null),\n map((tag: string | null) => tag ? this._filter(tag)\n : this.allOptions.filter(option => this.privateTags.indexOf(option.value) === -1)));\n });\n });\n }\n\n @Input()\n set tags(tags: Array) {\n this.privateTags = tags || [];\n }\n\n get tags(): Array {\n return this.privateTags;\n }\n\n clearTagsInput(): void {\n setTimeout(() => {\n this.tagInput.nativeElement.value = '';\n if (!this.matAutocomplete.isOpen) {\n this.tagControl.setValue(null);\n }\n });\n }\n\n remove(tag: string): void {\n const index = this.privateTags.indexOf(tag);\n if (index > -1) {\n this.privateTags.splice(index, 1);\n }\n this.tagsUpdate.emit(this.privateTags);\n }\n\n selected(event: MatAutocompleteSelectedEvent): void {\n this.privateTags.push(event.option.value);\n this.tagsUpdate.emit(this.privateTags);\n this.clearTagsInput();\n }\n\n inCV(vocab: Array, property: string): boolean {\n if (vocab) {\n return vocab.some(r => property === r.value);\n } else {\n return true;\n }\n }\n\n tagAdded(event: MatChipInputEvent): void {\n if ((event.value || '').trim()) {\n const addedTag = event.value.trim();\n this.privateTags.push(addedTag);\n this.tagsUpdate.emit(this.privateTags);\n if (this.isAdmin && !this.inCV(this.allOptions, addedTag) && !this.disableCV) {\n if (confirm('Add new option to the CV?')) {\n const vocabSubscription = this.cvService.fetchFullVocabulary(this.cvDomain).subscribe ( response => {\n if (response.content && response.content.length > 0) {\n const toPut = response.content[0];\n this.openDialog(toPut, addedTag);\n }\n });\n }\n }\n this.clearTagsInput();\n }\n if (event.input) {\n event.input.value = '';\n }\n }\n\n\n\n private _filter(value: string): Array {\n const filterValue = value.toLowerCase();\n\n return this.allOptions.filter(option => {\n return this.privateTags.indexOf(option.value) === -1 && option.display.toLowerCase().indexOf(filterValue) > -1;\n });\n }\n\n openDialog(vocab: any, term: string): void {\n const dialogRef = this.dialog.open(CvDialogComponent, {\n data: {'vocabulary': vocab, 'term': term},\n width: '1040px'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n if (response ) {\n }\n });\n }\n}\n","
        \n \n \n \n
        \n \n
        \n \n
        \n
        \n \n \n \n \n \n
        \n
        {{header}}
        \n \n
        \n {{selectedSubstance._name}}\n
        NOT IN DATABASE
        \n
        \n
        \n
        NO SUBSTANCES FOUND
        \n
        \n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceService } from '../substance/substance.service';\nimport { SubstanceSummary } from '../substance/substance.model';\nimport { ConfigService } from '@gsrs-core/config';\n\n@Component({\n selector: 'app-substance-selector',\n templateUrl: './substance-selector.component.html',\n styleUrls: ['./substance-selector.component.scss']\n})\nexport class SubstanceSelectorComponent implements OnInit {\n selectedSubstance?: SubstanceSummary;\n @Input() eventCategory: string;\n @Output() selectionUpdated = new EventEmitter();\n @Input() placeholder = 'Search';\n @Input() hintMessage = '';\n @Input() header = 'Substance';\n @Input() name?: string;\n @Input() hideImage?: boolean;\n errorMessage: string;\n showOptions: boolean;\n previousSubstance: SubstanceSummary;\n displayName: string;\n // Change to configuration approach.\n private substanceSelectorProperties: Array = null;\n /*\n 'root_names_name',\n 'root_names_stdName',\n 'root_approvalID',\n 'CAS',\n 'ECHA\\ \\(EC\\/EINECS\\)'\n ];\n */\n constructor(\n public substanceService: SubstanceService,\n public configService: ConfigService\n ) { }\n\n ngOnInit() {\n if (!this.hideImage) {\n this.hideImage = false;\n }\n if (this.configService.configData.substanceSelectorProperties != null) {\n this.substanceSelectorProperties = this.configService.configData.substanceSelectorProperties;\n } else {\n console.log(\"The config value for substanceSelectorProperties is null.\");\n }\n }\n\n @Input()\n set subuuid(uuid: string) {\n if (uuid) {\n this.substanceService.getSubstanceSummary(uuid).subscribe(response => {\n this.selectedSubstance = response;\n }, error => {\n if (this.name && this.name !== '') {\n this.selectedSubstance = {_name: this.name};\n } else {\n this.selectedSubstance = {_name: ''};\n }\n this.errorMessage = 'Not in database';\n });\n }\n }\n\n processSubstanceSearch(searchValue: string = ''): void {\n const q = searchValue.replace('\\\"', '');\n\n const searchStr = this.substanceSelectorProperties.map(property => `${property}:\\\"^${q}$\\\"`).join(' OR ');\n\n this.substanceService.getQuickSubstancesSummaries(searchStr, true).subscribe(response => {\n if (response.content && response.content.length) {\n this.selectedSubstance = response.content[0];\n this.selectionUpdated.emit(this.selectedSubstance);\n this.errorMessage = '';\n } else {\n this.errorMessage = 'No substances found';\n }\n });\n }\n\n editSelectedSubstance(): void {\n this.previousSubstance = JSON.parse(JSON.stringify(this.selectedSubstance));\n this.selectedSubstance = null;\n this.selectionUpdated.emit(this.selectedSubstance);\n }\n\n revertEdit(): void {\n this.selectedSubstance = JSON.parse(JSON.stringify(this.previousSubstance));\n this.selectionUpdated.emit(this.selectedSubstance);\n }\n\n delete(): void {\n this.selectedSubstance = null;\n this.selectionUpdated.emit(null);\n }\n\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceSelectorComponent } from './substance-selector.component';\r\nimport { SubstanceTextSearchModule } from '../substance-text-search/substance-text-search.module';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n SubstanceTextSearchModule,\r\n MatIconModule,\r\n MatButtonModule,\r\n MatTooltipModule,\r\n RouterModule,\r\n SubstanceImageModule\r\n ],\r\n declarations: [\r\n SubstanceSelectorComponent\r\n ],\r\n exports: [\r\n SubstanceSelectorComponent\r\n ]\r\n})\r\nexport class SubstanceSelectorModule { }\r\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { SubstanceFormServiceBase } from '../../substance-form/base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\nimport { SpecifiedSubstanceG4mSite, SpecifiedSubstanceG4mStage } from '@gsrs-core/substance/substance.model';\n\n@Injectable({\n providedIn: 'root'\n})\n\n@Injectable()\nexport class SubstanceFormSsg4mSitesService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (!this.substance.specifiedSubstanceG4m) {\n this.substance.specifiedSubstanceG4m = {};\n }\n if (!this.substance.specifiedSubstanceG4m.process) {\n this.substance.specifiedSubstanceG4m.process = [{sites:[]}];\n }\n if (!this.substance.specifiedSubstanceG4m.process) {\n this.substance.specifiedSubstanceG4m.process = [{sites:[]}];\n }\n\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process);\n });\n this.subscriptions.push(subscription);\n }\n\n get specifiedSubstanceG4mSite(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addSite(processIndex): void {\n const newSite: SpecifiedSubstanceG4mSite = {\n // references: [],\n // access: [],\n siteName: '',\n stages: []\n };\n this.substance.specifiedSubstanceG4m.process[processIndex].sites.push(newSite);\n this.propertyEmitter.next( this.substance.specifiedSubstanceG4m.process[processIndex].sites);\n }\n\n deleteSite(site: SpecifiedSubstanceG4mSite): void {\n /*\n const siteIndex = this.substance.specifiedSubstanceG4m.process.findIndex(pro => pro.$$deletedCode === pro.$$deletedCode);\n if (processIndex > -1) {\n this.substance.specifiedSubstanceG4m.process.splice(processIndex, 1);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process);\n }*/\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { SubstanceFormServiceBase } from '../../substance-form/base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\nimport { SubstanceFormSsg4mSitesService } from '../ssg4m-sites/substance-form-ssg4m-sites.service';\nimport { SpecifiedSubstanceG4mProcess, SpecifiedSubstanceG4mSite } from '@gsrs-core/substance/substance.model';\n\n@Injectable({\n providedIn: 'root'\n})\n\n@Injectable()\nexport class SubstanceFormSsg4mProcessService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService,\n private substanceFormSsg4mSitesService: SubstanceFormSsg4mSitesService,\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (!this.substance.specifiedSubstanceG4m) {\n this.substance.specifiedSubstanceG4m = {};\n }\n if (!this.substance.specifiedSubstanceG4m.process) {\n this.substance.specifiedSubstanceG4m.process = [];\n }\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process);\n });\n this.subscriptions.push(subscription);\n }\n\n get specifiedSubstanceG4mProcess(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addProcess(): void {\n const newProcess: SpecifiedSubstanceG4mProcess = {\n processName: 'Process ',\n sites: []\n };\n const processIndex = this.substance.specifiedSubstanceG4m.process.push(newProcess);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process);\n //Add Site\n this.substanceFormSsg4mSitesService.addSite(processIndex-1);\n }\n\n deleteProcess(process: SpecifiedSubstanceG4mProcess, processIndex: number): void {\n // const processIndex = this.substance.specifiedSubstanceG4m.process.findIndex(pro => pro.$$deletedCode === pro.$$deletedCode);\n if (processIndex > -1) {\n this.substance.specifiedSubstanceG4m.process.splice(processIndex, 1);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process);\n }\n }\n\n addSite(processIndex: number): void {\n\n }\n\n /*\n addSite(processIndex: number): void {\n const newSite: SpecifiedSubstanceG4mSite = {\n // references: [],\n // access: [],\n stages: []\n };\n this.substance.specifiedSubstanceG4m.process[processIndex].sites.unshift(newSite);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process);\n }\n */\n}\n","
        \n \n Show Substance Role\n \n    \n \n Show Critical Parameter\n \n
        \n\n
        \n
        -1 && showProcessIndex === processIndex))\">\n
        \n Process  {{processIndex + 1}}\n \n\n \n
        \n
        -1 && showSiteIndex === siteIndex))\">\n
        \n\n
        -1 && showStageIndex === stageIndex))\">\n
        \n
        \n Step {{stageIndex+1}}\n
        \n
        \n \n
        \n
        \n\n \n \n \n \n\n \n \n\n \n \n\n \n
        \n
        \n
        \n
        1 && startingMaterialIndex != 0)\">\n +\n
        \n \n \n \n
        \n \n {{startingMaterial.substanceName.refPname}}\n \n
        \n Material Display Name:{{startingMaterial.verbatimName}}\n
        \n \n
        \n ({{startingMaterial.substanceRole}})\n
        \n
        \n
        \n
        \n
        \n \n \n
        \n
        \n
        \n
        \n
        \n \n \n
        \n
        \n \n {{processingMaterial.substanceName.refPname}}\n \n \n  ({{processingMaterial.substanceRole}})\n \n
        \n
        \n
        \n
        \n
        \n \n\n \n
        0\">\n \n
        \n\n \n \n
        \n
        \n
        \n
        \n
        \n \n \n
        \n
        \n \n {{processingMaterial.substanceName.refPname}}\n \n \n  ({{processingMaterial.substanceRole}})\n \n
        \n
        \n
        \n
        \n
        \n \n\n \n
        \n \n
        \n {{displayAmount(criticalParameter.value, criticalParameter.name)}}\n
        \n
        \n
        \n
        \n
        \n
        \n
        1 && resultingMaterialIndex != 0)\">\n +\n
        \n \n \n \n
        \n \n {{resultingMaterial.substanceName.refPname}}\n \n \n
        \n Material Display Name:{{resultingMaterial.verbatimName}}\n
        \n \n
        \n ({{resultingMaterial.substanceRole}})\n
        \n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n
        \n\n","import { Component, OnInit, OnDestroy, Output, EventEmitter, Input } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Environment } from 'src/environments/environment.model';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { StructureImageModalComponent, StructureService } from '@gsrs-core/structure';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\nimport { SubstanceFormSsg4mProcessService } from '../ssg4m-process/substance-form-ssg4m-process.service';\nimport { SubstanceDetail, SpecifiedSubstanceG4mProcess } from '@gsrs-core/substance/substance.model';\n\n@Component({\n selector: 'app-ssg4m-scheme-view',\n templateUrl: './ssg4m-scheme-view.component.html',\n styleUrls: ['./ssg4m-scheme-view.component.scss']\n})\nexport class Ssg4mSchemeViewComponent implements OnInit, OnDestroy {\n @Output() tabSelectedIndexOut = new EventEmitter();\n @Input() showProcessIndex = -1; // -1 Show all records\n @Input() showSiteIndex = -1; // -1 Show all records\n @Input() showStageIndex = -1; // -1 Show all records\n showSubstanceRole = true;\n showCriticalParameter = false;\n imageLoc: any;\n environment: Environment;\n substance: SubstanceDetail;\n processList: Array;\n subscriptions: Array = [];\n private overlayContainer: HTMLElement;\n\n constructor(\n private configService: ConfigService,\n private substanceFormSsg4mProcessService: SubstanceFormSsg4mProcessService,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog,\n ) { }\n\n ngOnInit(): void {\n const processSubscription = this.substanceFormSsg4mProcessService.specifiedSubstanceG4mProcess.subscribe(process => {\n this.processList = process;\n });\n // const subscription = this.substanceFormService.substance.subscribe(substance => {\n // this.substance = JSON.stringify(substance);\n // this.process = JSON.stringify(this.substance);\n // alert(\"JSON: \" + JSON.stringify(this.substance));\n // });\n this.subscriptions.push(processSubscription);\n this.environment = this.configService.environment;\n this.imageLoc = `${this.environment.baseHref || ''}assets/images/home/arrow.png`;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n openImageModal(subUuid: string, approvalID: string, displayName: string): void {\n // const eventLabel = environment.isAnalyticsPrivate ? 'substance' : substance._name;\n\n // this.gaService.sendEvent('substancesContent', 'link:structure-zoom', eventLabel);\n\n let data: any;\n // if (substance.substanceClass === 'chemical') {\n data = {\n structure: subUuid,\n uuid: subUuid,\n approvalID: approvalID,\n displayName: displayName\n };\n // }\n\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\n height: '96%',\n width: '650px',\n panelClass: 'structure-image-panel',\n data: data\n });\n\n this.overlayContainer.style.zIndex = '1001';\n\n const subscription = dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = '1001';\n subscription.unsubscribe();\n }, () => {\n this.overlayContainer.style.zIndex = '1001';\n subscription.unsubscribe();\n });\n }\n\n displayAmount(amt, propertyName: string): string {\n return this.displayAmountCompose(amt, propertyName);\n }\n\n editInForm() {\n this.tabSelectedIndexOut.emit(0);\n }\n\n updateShowSubstanceRole(event) {\n this.showSubstanceRole = event.checked;\n }\n\n updateShowCriticalParameter(event) {\n this.showCriticalParameter = event.checked;\n }\n\n displayAmountCompose(amt, propertyType: string): string {\n function formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n let ret = '';\n if (amt) {\n if (typeof amt === 'object') {\n if (amt) {\n let addedunits = false;\n let unittext = formatValue(amt.units);\n if (!unittext) {\n unittext = '';\n }\n /* const atype = formatValue(amt.type); */\n const atype = formatValue(propertyType);\n if (atype) {\n ret += atype + ':' + '\\n';\n }\n if (amt.average || amt.high || amt.low) {\n if (amt.average) {\n ret += amt.average;\n if (amt.units) {\n ret += ' ' + unittext;\n addedunits = true;\n }\n }\n if (amt.high || amt.low) {\n ret += ' [';\n if (amt.high && !amt.low) {\n ret += '<' + amt.high;\n } else if (!amt.high && amt.low) {\n ret += '>' + amt.low;\n } else if (amt.high && amt.low) {\n ret += amt.low + ' to ' + amt.high;\n }\n ret += '] ';\n if (!addedunits) {\n if (amt.units) {\n ret += ' ' + unittext;\n addedunits = true;\n }\n }\n }\n ret += ' (average) ';\n }\n if (amt.highLimit || amt.lowLimit) {\n ret += '\\n[';\n }\n if (amt.highLimit && !amt.lowLimit) {\n ret += '<' + amt.highLimit;\n } else if (!amt.highLimit && amt.lowLimit) {\n ret += '>' + amt.lowLimit;\n } else if (amt.highLimit && amt.lowLimit) {\n ret += amt.lowLimit + ' to ' + amt.highLimit;\n }\n if (amt.highLimit || amt.lowLimit) {\n ret += '] ';\n if (!addedunits) {\n if (amt.units) {\n ret += ' ' + unittext;\n addedunits = true;\n }\n }\n ret += ' (limits)';\n }\n }\n if (amt.nonNumericValue) {\n ret += ' ' + amt.nonNumericValue;\n }\n }\n }\n return ret;\n }\n}\n","import { Component, Inject, OnInit, Input } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-ssg4m-step-view-dialog',\n templateUrl: './ssg4m-step-view-dialog.component.html',\n styleUrls: ['./ssg4m-step-view-dialog.component.scss']\n})\n\nexport class Ssg4mStepViewDialogComponent implements OnInit {\n stage: any;\n showProcessIndex: number;\n showSiteIndex: number;\n showStageIndex: number;\n tabSelectedIndex: number;\n\n constructor(\n private sanitizer: DomSanitizer,\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n\n ) { }\n\n ngOnInit() {\n if (this.data.processIndex >= -1 && this.data.siteIndex >= -1 && this.data.stageIndex >= -1) {\n this.showProcessIndex = this.data.processIndex;\n this.showSiteIndex = this.data.siteIndex;\n this.showStageIndex = this.data.stageIndex;\n }\n }\n\n close() {\n this.dialogRef.close();\n }\n\n dismissDialog(): void {\n this.dialogRef.close();\n }\n\n tabSelectedIndexOutChange(tabIndex: number) {\n this.tabSelectedIndex = tabIndex;\n\n // Close the Dialog and go to Form View\n this.dialogRef.close(tabIndex);\n }\n\n}\n","
        \n
        \n \n


        \n \n \n
        \n
        ","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { SubstanceFormServiceBase } from '../../substance-form/base-classes/substance-form-service-base';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\nimport { SpecifiedSubstanceG4mCriticalParameter, SpecifiedSubstanceG4mStage, SpecifiedSubstanceG4mStartingMaterial } from '@gsrs-core/substance/substance.model';\nimport { SpecifiedSubstanceG4mProcessingMaterial, SpecifiedSubstanceG4mResultingMaterial } from '@gsrs-core/substance/substance.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SubstanceFormSsg4mStagesService extends SubstanceFormServiceBase> {\n\n constructor(\n public substanceFormService: SubstanceFormService\n ) {\n super(substanceFormService);\n }\n\n initSubtanceForm(): void {\n super.initSubtanceForm();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n if (!this.substance.specifiedSubstanceG4m) {\n this.substance.specifiedSubstanceG4m = {};\n }\n if (!this.substance.specifiedSubstanceG4m.process) {\n this.substance.specifiedSubstanceG4m.process = [{ sites: [] }];\n }\n\n this.substanceFormService.resetState();\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process);\n });\n this.subscriptions.push(subscription);\n }\n\n get specifiedSubstanceG4mStage(): Observable> {\n return this.propertyEmitter.asObservable();\n }\n\n addStage(processIndex: number, siteIndex: number): void {\n const newStage: SpecifiedSubstanceG4mStage = {\n stageNumber: '',\n criticalParameters: [],\n startingMaterials: [],\n processingMaterials: [],\n resultingMaterials: []\n };\n this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages.push(newStage);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages);\n\n // When adding a new Stage, and if there is Substance Name in the previous Resulting Material, copy/add to\n // Starting Material in the new Stage.\n // Get the last index or push/add/copy to the Starting Material at the Last\n // Get New/Next Stage\n const lastStageIndex = this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages.length - 2;\n // Get Last Stage to copy Resulting Materials\n if (lastStageIndex >= 0) {\n const lastStageObj = this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[lastStageIndex];\n const lastResultIndex = lastStageObj.resultingMaterials.length - 1;\n this.copyResultingToStarting(processIndex, siteIndex, lastStageIndex, lastResultIndex);\n }\n }\n\n addCriticalParameter(processIndex: number, siteIndex: number, stageIndex: number): void {\n const newCriticalParam: SpecifiedSubstanceG4mCriticalParameter = { value: {} };\n this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].criticalParameters.push(newCriticalParam);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].criticalParameters);\n }\n\n addStartingMaterials(processIndex: number, siteIndex: number, stageIndex: number): void {\n const newStartMat: SpecifiedSubstanceG4mStartingMaterial = {substanceRole: 'Starting Material'};\n this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].startingMaterials.push(newStartMat);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].startingMaterials);\n }\n\n addProcessingMaterials(processIndex: number, siteIndex: number, stageIndex: number): void {\n const newProcessMat: SpecifiedSubstanceG4mProcessingMaterial = {substanceRole: 'Solvent'};\n this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].processingMaterials.push(newProcessMat);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].processingMaterials);\n }\n\n addResultingMaterials(processIndex: number, siteIndex: number, stageIndex: number): void {\n const newResultingMat: SpecifiedSubstanceG4mResultingMaterial = {substanceRole: 'Intermediate'};\n this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].resultingMaterials.push(newResultingMat);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].resultingMaterials);\n }\n\n copyResultingToStarting(processIndex: number, siteIndex: number, stageIndex: number, resultingMaterialIndex: number) {\n let found = false;\n let resultMatRefUuid = '';\n let startMatRefUuid = '';\n if (this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].resultingMaterials.length > 0) {\n // Get this/current Resulting Material Object\n const thisResultMatObj = this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].resultingMaterials[resultingMaterialIndex];\n const thisResultMatSubName = thisResultMatObj.substanceName;\n // Get this Resulting Material refUuid from Substance Name\n if (thisResultMatSubName) {\n resultMatRefUuid = thisResultMatSubName.refuuid;\n }\n // Get Next Stage\n const nextStageObj = this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex + 1];\n\n // If next Stage exists\n if (nextStageObj !== null && nextStageObj !== undefined) {\n if (nextStageObj.startingMaterials.length == 0) {\n // if there is no Starting Material, add a new one and copy\n this.copyToStartingFields(processIndex, siteIndex, stageIndex, resultingMaterialIndex);\n } else {\n // if Starting Material exists, loop through to find same refuuid\n nextStageObj.startingMaterials.forEach(element => {\n if (element) {\n // Get this Starting Material refUuid from Substance Name\n const startMatSubName = element.substanceName;\n if (startMatSubName) {\n startMatRefUuid = startMatSubName.refuuid;\n // If the refuuid for the Resulting Material is same as FIRST Starting Material in the next Stage\n if (resultMatRefUuid === startMatRefUuid) {\n found = true;\n alert('This Substance ' + startMatSubName.name + ' already exists in the Starting Material in the next Stage');\n }\n }\n }\n }); // for each Starting Material in next Stage\n if (found === false) {\n this.copyToStartingFields(processIndex, siteIndex, stageIndex, resultingMaterialIndex);\n }\n }\n }\n // Add a next Stage if it does not exists\n if (!nextStageObj) {\n // this.addStage(processIndex, siteIndex);\n const newStage: SpecifiedSubstanceG4mStage = {\n stageNumber: '',\n criticalParameters: [],\n startingMaterials: [],\n processingMaterials: [],\n resultingMaterials: []\n };\n this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages.push(newStage);\n this.propertyEmitter.next(this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages);\n\n this.copyToStartingFields(processIndex, siteIndex, stageIndex, resultingMaterialIndex);\n }\n } // if this/current Resulting Material > 0\n }\n\n copyToStartingFields(processIndex: number, siteIndex: number, stageIndex: number, resultingMaterialIndex: number) {\n // Get this Resulting Material Object\n const thisResultMatObj = this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex].resultingMaterials[resultingMaterialIndex];\n const thisResultMatSubName = thisResultMatObj.substanceName;\n // Add New Starting Material in the NEXT stage\n this.addStartingMaterials(processIndex, siteIndex, stageIndex + 1);\n // Next Stage and Next New Starting Material\n // Get Next Stage\n const nextStageObj = this.substance.specifiedSubstanceG4m.process[processIndex].sites[siteIndex].stages[stageIndex + 1];\n // Get the last index or push/add/copy to the Starting Material at the Last\n const nextStartIndex = nextStageObj.startingMaterials.length - 1;\n const nextStartMat = nextStageObj.startingMaterials[nextStartIndex];\n nextStartMat.substanceName = thisResultMatSubName;\n nextStartMat.verbatimName = thisResultMatObj.verbatimName;\n nextStartMat.substanceRole = 'Intermediate'; // thisResultMatObj.substanceRole;\n nextStartMat.comments = thisResultMatObj.comments;\n }\n}\n","
        0\">\n
        \n
        \n
        \n
        \n Deleted \n \n
        \n\n
        \n
        \n \n
        \n
        \n\n
        \n \n \n
        \n \n \n
        \n\n \n \n \n\n \n
        \n\n
        \n
        \n \n \n Register New\n \n                     \n \n \n Search By Structure\n \n
        \n
        \n\n
        \n
         
        \n \n \n \n
        \n
        ","import { Component, OnInit, OnDestroy, Input } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Subscription } from 'rxjs';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { SubstanceRelated, SubstanceSummary } from '@gsrs-core/substance';\nimport { SpecifiedSubstanceG4mStartingMaterial } from '@gsrs-core/substance/substance.model';\nimport { ConfirmDialogComponent } from '../../../fda/confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-ssg4m-starting-materials-form',\n templateUrl: './ssg4m-starting-materials-form.component.html',\n styleUrls: ['./ssg4m-starting-materials-form.component.scss']\n})\nexport class Ssg4mStartingMaterialsFormComponent implements OnInit, OnDestroy {\n\n @Input() startingMaterialIndex: number;\n privateProcessIndex: number;\n privateSiteIndex: number;\n privateStageIndex: number;\n public configSettingsDisplay = {};\n privateShowAdvancedSettings: boolean;\n privateStartingMaterial: SpecifiedSubstanceG4mStartingMaterial;\n relatedSubstanceUuid: string;\n substance: SubstanceDetail;\n subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService,\n public configService: ConfigService,\n private dialog: MatDialog\n ) { }\n\n @Input()\n set startingMaterial(startingMaterial: SpecifiedSubstanceG4mStartingMaterial) {\n this.privateStartingMaterial = startingMaterial;\n }\n\n get startingMaterial(): SpecifiedSubstanceG4mStartingMaterial {\n return this.privateStartingMaterial;\n }\n\n @Input()\n set processIndex(processIndex: number) {\n this.privateProcessIndex = processIndex;\n }\n\n get processIndex(): number {\n return this.privateProcessIndex;\n }\n\n @Input()\n set siteIndex(siteIndex: number) {\n this.privateSiteIndex = siteIndex;\n }\n\n get siteIndex(): number {\n return this.privateSiteIndex;\n }\n\n @Input()\n set stageIndex(stageIndex: number) {\n this.privateStageIndex = stageIndex;\n }\n\n get stageIndex(): number {\n return this.privateStageIndex;\n }\n\n @Input()\n set showAdvancedSettings(showAdvancedSettings: boolean) {\n this.privateShowAdvancedSettings = showAdvancedSettings;\n // Get Config Settins from config file\n this.getConfigSettings();\n }\n\n get showAdvancedSettings(): boolean {\n return this.privateShowAdvancedSettings;\n }\n\n ngOnInit(): void {\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n });\n this.subscriptions.push(subscription);\n\n // Load Substance Name\n if (this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials[this.startingMaterialIndex].substanceName) {\n let substanceRelated = this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials[this.startingMaterialIndex].substanceName;\n this.relatedSubstanceUuid = substanceRelated.refuuid;\n }\n }\n\n ngOnDestroy(): void {\n // this.substanceFormService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getConfigSettings(): void {\n // Get SSG4 Config Settings from config.json file to show and hide fields in the form\n let configSsg4Form: any;\n configSsg4Form = this.configService.configData && this.configService.configData.ssg4Form || null;\n // *** IMPORTANT: get the correct value. Get 'startingMaterial' json values from config\n const confSettings = configSsg4Form.settingsDisplay.startingMaterial;\n Object.keys(confSettings).forEach(key => {\n if (confSettings[key] != null) {\n if (confSettings[key] === 'simple') {\n this.configSettingsDisplay[key] = true;\n } else if (confSettings[key] === 'advanced') {\n if (this.privateShowAdvancedSettings === true) {\n this.configSettingsDisplay[key] = true;\n } else {\n this.configSettingsDisplay[key] = false;\n }\n } else if (confSettings[key] === 'removed') {\n this.configSettingsDisplay[key] = false;\n }\n }\n });\n }\n\n updateSubstanceRole(role: string): void {\n this.privateStartingMaterial.substanceRole = role;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n this.privateStartingMaterial.substanceName = relatedSubstance;\n }\n }\n\n confirmDeleteStartingMaterial() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Starting Material ' + (this.startingMaterialIndex + 1) + ' for Stage ' + (this.stageIndex + 1) + ' for Site ' + (this.siteIndex + 1) + ' for Process ' + (this.processIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteStartingMaterial();\n }\n });\n }\n\n deleteStartingMaterial(): void {\n this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].startingMaterials.splice(this.startingMaterialIndex, 1);\n }\n\n copyResultingToStarting(processIndex:number, siteIndex:number, stageIndex:number) {\n\n }\n\n /*\n deleteProductLot(prodComponentIndex: number, prodLotIndex: number) {\n this.productService.deleteProductLot(prodComponentIndex, prodLotIndex);\n }\n\n deleteProductLot(prodComponentIndex: number, prodLotIndex: number): void {\n this.product.productComponentList[prodComponentIndex].productLotList.splice(prodLotIndex, 1);\n }\n */\n}\n","
        0\">\n
        \n
        \n
        \n
        \n Deleted \n \n
        \n\n
        \n
        \n \n
        \n
        \n\n
        \n \n\n
        \n \n \n
        \n\n \n \n \n\n \n
        \n\n
        \n
        \n \n \n Register New\n \n                     \n \n \n Search By Structure\n \n
        \n
        \n\n
        \n
         
        \n \n \n \n
        \n\n
        ","import { Component, OnInit, OnDestroy, Input } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Subscription } from 'rxjs';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { SubstanceRelated, SubstanceSummary } from '@gsrs-core/substance';\nimport { SpecifiedSubstanceG4mProcessingMaterial } from '@gsrs-core/substance/substance.model';\nimport { ConfirmDialogComponent } from '../../../fda/confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-ssg4m-processing-materials-form',\n templateUrl: './ssg4m-processing-materials-form.component.html',\n styleUrls: ['./ssg4m-processing-materials-form.component.scss']\n})\nexport class Ssg4mProcessingMaterialsFormComponent implements OnInit, OnDestroy {\n\n @Input() processingMaterialIndex: number;\n privateProcessIndex: number;\n privateSiteIndex: number;\n privateStageIndex: number;\n public configSettingsDisplay = {};\n privateShowAdvancedSettings: boolean;\n privateProcessingMaterial: SpecifiedSubstanceG4mProcessingMaterial;\n relatedSubstanceUuid: string;\n substance: SubstanceDetail;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService,\n public configService: ConfigService,\n private dialog: MatDialog\n ) { }\n\n @Input()\n set processingMaterial(startingMaterial: SpecifiedSubstanceG4mProcessingMaterial) {\n this.privateProcessingMaterial = startingMaterial;\n }\n\n get processingMaterial(): SpecifiedSubstanceG4mProcessingMaterial {\n return this.privateProcessingMaterial;\n }\n\n @Input()\n set processIndex(processIndex: number) {\n this.privateProcessIndex = processIndex;\n }\n\n get processIndex(): number {\n return this.privateProcessIndex;\n }\n\n @Input()\n set siteIndex(siteIndex: number) {\n this.privateSiteIndex = siteIndex;\n }\n\n get siteIndex(): number {\n return this.privateSiteIndex;\n }\n\n @Input()\n set stageIndex(stageIndex: number) {\n this.privateStageIndex = stageIndex;\n }\n\n get stageIndex(): number {\n return this.privateStageIndex;\n }\n\n @Input()\n set showAdvancedSettings(showAdvancedSettings: boolean) {\n this.privateShowAdvancedSettings = showAdvancedSettings;\n // Get Config Settins from config file\n this.getConfigSettings();\n }\n\n get showAdvancedSettings(): boolean {\n return this.privateShowAdvancedSettings;\n }\n\n ngOnInit(): void {\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n });\n this.subscriptions.push(subscription);\n\n // Load Substance Name\n if (this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials[this.processingMaterialIndex].substanceName) {\n let substanceRelated = this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials[this.processingMaterialIndex].substanceName;\n this.relatedSubstanceUuid = substanceRelated.refuuid;\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getConfigSettings(): void {\n // Get SSG4 Config Settings from config.json file to show and hide fields in the form\n let configSsg4Form: any;\n configSsg4Form = this.configService.configData && this.configService.configData.ssg4Form || null;\n // *** IMPORTANT: get the correct value. Get 'processingMaterial' json values from config\n const confSettings = configSsg4Form.settingsDisplay.processingMaterial;\n Object.keys(confSettings).forEach(key => {\n if (confSettings[key] != null) {\n if (confSettings[key] === 'simple') {\n this.configSettingsDisplay[key] = true;\n } else if (confSettings[key] === 'advanced') {\n if (this.privateShowAdvancedSettings === true) {\n this.configSettingsDisplay[key] = true;\n } else {\n this.configSettingsDisplay[key] = false;\n }\n } else if (confSettings[key] === 'removed') {\n this.configSettingsDisplay[key] = false;\n }\n }\n });\n }\n\n updateSubstanceRole(role: string): void {\n this.privateProcessingMaterial.substanceRole = role;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n this.privateProcessingMaterial.substanceName = relatedSubstance;\n }\n }\n\n confirmDeleteProcessingMaterial() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Processing Material ' + (this.processingMaterialIndex + 1) + ' for Stage ' + (this.stageIndex + 1) + ' for Site ' + (this.siteIndex + 1) + ' for Process ' + (this.processIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProcessingMaterial();\n }\n });\n }\n\n deleteProcessingMaterial(): void {\n this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].processingMaterials.splice(this.processingMaterialIndex, 1);\n }\n\n}\n","
        0\">\n
        \n
        \n
        \n
        \n Deleted \n \n
        \n\n
        \n
        \n \n \n
        \n
        \n\n
        \n \n\n
        \n \n \n
        \n\n \n\n \n \n \n\n \n
        \n\n
        \n
        \n \n \n Register New\n \n                     \n \n \n Search By Structure\n \n
        \n
        \n\n
        \n
         
        \n \n \n \n
        \n
        ","import { Component, OnInit, OnDestroy, Input } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Subscription } from 'rxjs';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { SubstanceRelated, SubstanceSummary } from '@gsrs-core/substance';\nimport { SpecifiedSubstanceG4mResultingMaterial } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormSsg4mStagesService } from '../ssg4m-stages/substance-form-ssg4m-stages.service';\nimport { ConfirmDialogComponent } from '../../../fda/confirm-dialog/confirm-dialog.component';\nimport { forEach } from 'lodash';\n\n@Component({\n selector: 'app-ssg4m-resulting-materials-form',\n templateUrl: './ssg4m-resulting-materials-form.component.html',\n styleUrls: ['./ssg4m-resulting-materials-form.component.scss']\n})\nexport class Ssg4mResultingMaterialsFormComponent implements OnInit, OnDestroy {\n\n @Input() resultingMaterialIndex: number;\n privateProcessIndex: number;\n privateSiteIndex: number;\n privateStageIndex: number;\n public configSettingsDisplay = {};\n privateShowAdvancedSettings: boolean;\n privateResultingMaterial: SpecifiedSubstanceG4mResultingMaterial;\n relatedSubstanceUuid: string;\n substance: SubstanceDetail;\n subscriptions: Array = [];\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceFormSsg4mStagesService: SubstanceFormSsg4mStagesService,\n public configService: ConfigService,\n private dialog: MatDialog\n ) { }\n\n @Input()\n set resultingMaterial(resultingMaterial: SpecifiedSubstanceG4mResultingMaterial) {\n this.privateResultingMaterial = resultingMaterial;\n }\n\n get resultingMaterial(): SpecifiedSubstanceG4mResultingMaterial {\n return this.privateResultingMaterial;\n }\n\n @Input()\n set processIndex(processIndex: number) {\n this.privateProcessIndex = processIndex;\n }\n\n get processIndex(): number {\n return this.privateProcessIndex;\n }\n\n @Input()\n set siteIndex(siteIndex: number) {\n this.privateSiteIndex = siteIndex;\n }\n\n get siteIndex(): number {\n return this.privateSiteIndex;\n }\n\n @Input()\n set stageIndex(stageIndex: number) {\n this.privateStageIndex = stageIndex;\n }\n\n get stageIndex(): number {\n return this.privateStageIndex;\n }\n\n @Input()\n set showAdvancedSettings(showAdvancedSettings: boolean) {\n this.privateShowAdvancedSettings = showAdvancedSettings;\n // Get Config Settins from config file\n this.getConfigSettings();\n }\n\n get showAdvancedSettings(): boolean {\n return this.privateShowAdvancedSettings;\n }\n\n ngOnInit(): void {\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n });\n this.subscriptions.push(subscription);\n\n // Load Substance Name\n if (this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex].substanceName) {\n let substanceRelated = this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex].substanceName;\n this.relatedSubstanceUuid = substanceRelated.refuuid;\n }\n }\n\n ngOnDestroy(): void {\n // this.substanceFormService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getConfigSettings(): void {\n // Get SSG4 Config Settings from config.json file to show and hide fields in the form\n let configSsg4Form: any;\n configSsg4Form = this.configService.configData && this.configService.configData.ssg4Form || null;\n // *** IMPORTANT: get the correct value. Get 'resultingMaterial' json values from config\n const confSettings = configSsg4Form.settingsDisplay.resultingMaterial;\n Object.keys(confSettings).forEach(key => {\n if (confSettings[key] != null) {\n if (confSettings[key] === 'simple') {\n this.configSettingsDisplay[key] = true;\n } else if (confSettings[key] === 'advanced') {\n if (this.privateShowAdvancedSettings === true) {\n this.configSettingsDisplay[key] = true;\n } else {\n this.configSettingsDisplay[key] = false;\n }\n } else if (confSettings[key] === 'removed') {\n this.configSettingsDisplay[key] = false;\n }\n }\n });\n }\n\n updateSubstanceRole(role: string): void {\n this.privateResultingMaterial.substanceRole = role;\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n this.privateResultingMaterial.substanceName = relatedSubstance;\n }\n }\n\n confirmDeleteResultingMaterial() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Resulting Material ' + (this.resultingMaterialIndex + 1) + ' for Stage ' + (this.stageIndex + 1) + ' for Site ' + (this.siteIndex + 1) + ' for Process ' + (this.processIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteResultingMaterial();\n }\n });\n }\n\n deleteResultingMaterial(): void {\n this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials.splice(this.resultingMaterialIndex, 1);\n }\n\n copyResultingToStarting() {\n this.substanceFormSsg4mStagesService.copyResultingToStarting(this.processIndex, this.siteIndex, this.stageIndex, this.resultingMaterialIndex);\n }\n /*\n copyResultingToStarting() {\n let found = false;\n let resultMatRefUuid = '';\n let startMatRefUuid = '';\n const thisResultMatObj = this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex];\n const thisResultMatSubName = thisResultMatObj.substanceName;\n // Get Next Stage\n const nextStageObj = this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex + 1];\n // Get this Resulting Material refUuid from Substance Name\n if (thisResultMatSubName) {\n resultMatRefUuid = thisResultMatSubName.refuuid;\n }\n // If next Stage exists\n if (nextStageObj !== null && nextStageObj !== undefined) {\n if (nextStageObj.startingMaterials.length == 0) {\n // if there is no Starting Material, add a new one and copy\n this.copyToStartingFields();\n } else {\n // if Starting Material exists, loop through to find same refuuid\n nextStageObj.startingMaterials.forEach(element => {\n if (element) {\n // Get this Starting Material refUuid from Substance Name\n const startMatSubName = element.substanceName;\n if (startMatSubName) {\n startMatRefUuid = startMatSubName.refuuid;\n // If the refuuid for the Resulting Material is same as FIRST Starting Material in the next Stage\n if (resultMatRefUuid === startMatRefUuid) {\n found = true;\n alert('This Substance ' + startMatSubName.name + ' already exists in the Starting Material in the next Stage');\n }\n }\n }\n }); // for each Starting Material in next Stage\n if (found === false) {\n this.copyToStartingFields();\n }\n }\n }\n // Add a next Stage if it does not exists\n if (!nextStageObj) {\n this.addStage();\n this.copyToStartingFields();\n }\n }\n\n copyToStartingFields() {\n const thisResultMatObj = this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].resultingMaterials[this.resultingMaterialIndex];\n const thisResultMatSubName = thisResultMatObj.substanceName;\n // Add New Starting Material\n this.addStartingMaterial();\n // Next Stage and Next New Starting Material\n // Get Next Stage\n const nextStageObj = this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex + 1];\n // Get the last index or push/add/copy to the Starting Material at the Last\n const nextStartIndex = nextStageObj.startingMaterials.length-1;\n const nextStartMat = nextStageObj.startingMaterials[nextStartIndex];\n nextStartMat.substanceName = thisResultMatSubName;\n nextStartMat.verbatimName = thisResultMatObj.verbatimName;\n nextStartMat.substanceRole = thisResultMatObj.substanceRole;\n nextStartMat.comments = thisResultMatObj.comments;\n }\n\n addStage() {\n this.substanceFormSsg4mStagesService.addStage(this.processIndex, this.siteIndex);\n setTimeout(() => {\n // this.scrollToService.scrollToElement(`substance-process-site-0`, 'center');\n });\n }\n\n addStartingMaterial() {\n // Add Starting Material in the next stage\n this.substanceFormSsg4mStagesService.addStartingMaterials(this.processIndex, this.siteIndex, this.stageIndex + 1);\n setTimeout(() => {\n // this.scrollToService.scrollToElement(`substance-process-site-stage-startMat-0`, 'center');\n });\n }\n */\n}\n","
        0\">\n
        \n
        \n
        \n
        \n Deleted \n \n
        \n\n
        \n
        \n \n
        \n
        \n\n
        \n \n\n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n Units\n \n Clear selection\n \n {{unit.display}}\n \n {{privateSubstanceAmount.units}} (not in CV)\n Other (New Value)\n \n \n
        \n \n
        \n\n
        \n\n
        \n \n \n\n
        \n \n \n
        \n\n \n Amount Type\n \n Clear selection\n \n {{type.display}}\n \n {{privateSubstanceAmount.type}} (not in CV)\n Other (New Value)\n \n \n
        \n \n
        \n
        \n\n
        \n \n \n \n\n \n \n \n\n \n \n \n
        \n\n \n
        \n
        \n

        \n Parameters\n \n

        \n\n \n
        \n \n\n {{parameter.name}}\n \n \n  \n {{parameter.value.type}}\n \n \n  -\n  \n {{parameter.value.average}}\n  \n {{parameter.value.units}}\n \n \n \n  \n -\n \n  \n [\n \n >\n \n \n < \n \n {{parameter.value.low}}\n \n \n  to \n \n \n {{parameter.value.high}}\n \n ]\n \n  \n {{parameter.value.units}}\n  \n (average)\n \n \n \n  \n (average)\n \n \n  -\n  \n [\n \n >\n \n \n < \n \n {{parameter.value.lowLimit}}\n \n \n  to \n \n \n {{parameter.value.highLimit}}\n \n ]\n  (limits)\n \n \n  - \n {{parameter.value.nonNumericValue}}\n \n \n \n
        \n
        \n\n
        \n
        \n \n\n \n \n\n \n \n \n \n \n
        ","import { Component, OnInit, OnDestroy, Input } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Subscription } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { FormControl, Validators } from '@angular/forms';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { SubstanceFormPropertiesService } from '@gsrs-core/substance-form/properties/substance-form-properties.service';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { SubstanceRelated, SubstanceSummary, SubstanceProperty, SubstanceParameter } from '@gsrs-core/substance';\nimport { PropertyParameterDialogComponent } from '@gsrs-core/substance-form/property-parameter-dialog/property-parameter-dialog.component';\nimport { SpecifiedSubstanceG4mCriticalParameter, SubstanceAmount } from '@gsrs-core/substance/substance.model';\nimport { ConfirmDialogComponent } from '../../../fda/confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-ssg4m-critical-parameter-form',\n templateUrl: './ssg4m-critical-parameter-form.component.html',\n styleUrls: ['./ssg4m-critical-parameter-form.component.scss']\n})\nexport class Ssg4mCriticalParameterFormComponent implements OnInit, OnDestroy {\n\n @Input() criticalParameterIndex: number;\n privateProcessIndex: number;\n privateSiteIndex: number;\n privateStageIndex: number;\n public configSettingsDisplay = {};\n privateShowAdvancedSettings: boolean;\n privateCriticalParameter: SpecifiedSubstanceG4mCriticalParameter;\n properties: Array;\n relatedSubstanceUuid: string;\n substance: SubstanceDetail;\n _nonNumeric: string;\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n privateSubstanceAmount: SubstanceAmount;\n amountTypeList: Array = [];\n amountUnitList: Array = [];\n typeControl = new FormControl('');\n averageControl = new FormControl('');\n lowControl = new FormControl('');\n highControl = new FormControl('');\n lowLimitControl = new FormControl('');\n highLimitControl = new FormControl('');\n unitsControl = new FormControl('');\n nonNumericValueControl = new FormControl('');\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceFormPropertiesService: SubstanceFormPropertiesService,\n private cvService: ControlledVocabularyService,\n public configService: ConfigService,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog\n ) { }\n\n @Input()\n set criticalParameter(criticalParameter: SpecifiedSubstanceG4mCriticalParameter) {\n this.privateCriticalParameter = criticalParameter;\n }\n\n get criticalParameter(): SpecifiedSubstanceG4mCriticalParameter {\n return this.privateCriticalParameter;\n }\n\n @Input()\n set processIndex(processIndex: number) {\n this.privateProcessIndex = processIndex;\n }\n\n get processIndex(): number {\n return this.privateProcessIndex;\n }\n\n @Input()\n set siteIndex(siteIndex: number) {\n this.privateSiteIndex = siteIndex;\n }\n\n get siteIndex(): number {\n return this.privateSiteIndex;\n }\n\n @Input()\n set stageIndex(stageIndex: number) {\n this.privateStageIndex = stageIndex;\n }\n\n get stageIndex(): number {\n return this.privateStageIndex;\n }\n\n @Input()\n set showAdvancedSettings(showAdvancedSettings: boolean) {\n this.privateShowAdvancedSettings = showAdvancedSettings;\n // Get Config Settins from config file\n this.getConfigSettings();\n }\n\n get showAdvancedSettings(): boolean {\n return this.privateShowAdvancedSettings;\n }\n\n ngOnInit(): void {\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n });\n this.subscriptions.push(subscription);\n\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n if (!this.criticalParameter.value) {\n this.criticalParameter.value = {};\n }\n this.privateSubstanceAmount = this.criticalParameter.value;\n this.setSubstanceAmount();\n this.getVocabularies();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getConfigSettings(): void {\n // Get SSG4 Config Settings from config.json file to show and hide fields in the form\n let configSsg4Form: any;\n configSsg4Form = this.configService.configData && this.configService.configData.ssg4Form || null;\n // Get 'criteriaParameter' json values from config\n const confSettings = configSsg4Form.settingsDisplay.criteriaParameter;\n Object.keys(confSettings).forEach(key => {\n if (confSettings[key] != null) {\n if (confSettings[key] === 'simple') {\n this.configSettingsDisplay[key] = true;\n } else if (confSettings[key] === 'advanced') {\n if (this.privateShowAdvancedSettings === true) {\n this.configSettingsDisplay[key] = true;\n } else {\n this.configSettingsDisplay[key] = false;\n }\n } else if (confSettings[key] === 'removed') {\n this.configSettingsDisplay[key] = false;\n }\n }\n });\n }\n\n confirmDeleteCriticalParameter() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Critical Parameter ' + (this.criticalParameterIndex + 1) + ' for Stage ' + (this.stageIndex + 1) + ' for Site ' + (this.siteIndex + 1) + ' for Process ' + (this.processIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteCriticalParameter();\n }\n });\n }\n\n deleteCriticalParameter(): void {\n this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages[this.stageIndex].criticalParameters.splice(this.criticalParameterIndex, 1);\n }\n\n relatedSubstanceUpdated(substance: SubstanceSummary): void {\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n // this.privateCriticalParameter.substanceName = relatedSubstance;\n }\n }\n\n openPropertyParameter(parameter?: SubstanceParameter): void {\n let isNew: boolean;\n if (parameter == null) {\n isNew = true;\n parameter = { value: {} };\n }\n const parameterCopyString = JSON.stringify(parameter);\n\n const dialogRef = this.dialog.open(PropertyParameterDialogComponent, {\n data: JSON.parse(parameterCopyString),\n width: '1200px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(newParameter => {\n this.overlayContainer.style.zIndex = null;\n if (newParameter != null) {\n if (this.criticalParameter.parameters == null) {\n this.criticalParameter.parameters = [];\n }\n if (isNew) {\n this.criticalParameter.parameters.unshift(newParameter);\n } else {\n Object.keys(newParameter).forEach(key => {\n parameter[key] = newParameter[key];\n });\n }\n }\n });\n }\n\n deleteParameter(id: number): void {\n this.criticalParameter.parameters.splice(id, 1);\n }\n\n setSubstanceAmount() {\n this.typeControl.setValue(this.privateSubstanceAmount.type);\n this.typeControl.valueChanges.subscribe(value => {\n this.privateSubstanceAmount.type = value;\n });\n this.averageControl.setValue(this.privateSubstanceAmount.average);\n this.averageControl.valueChanges.subscribe(value => {\n if (value === null) {\n this.averageControl.setValue('');\n } else if (value.length === 1 && value.match(/[a-z]/i)) {\n this.averageControl.setValue('');\n }\n this.privateSubstanceAmount.average = value;\n });\n this.lowControl.setValue(this.privateSubstanceAmount.low);\n this.lowControl.valueChanges.subscribe(value => {\n if (value === null) {\n this.lowControl.setValue('');\n } else if (value.length === 1 && value.match(/[a-z]/i)) {\n this.lowControl.setValue('');\n }\n this.privateSubstanceAmount.low = value;\n });\n this.highControl.setValue(this.privateSubstanceAmount.high);\n this.highControl.valueChanges.subscribe(value => {\n if (value === null) {\n this.highControl.setValue('');\n } else if (value.length === 1 && value.match(/[a-z]/i)) {\n this.highControl.setValue('');\n }\n this.privateSubstanceAmount.high = value;\n });\n this.lowLimitControl.setValue(this.privateSubstanceAmount.lowLimit);\n this.lowLimitControl.valueChanges.subscribe(value => {\n if (value === null) {\n this.lowLimitControl.setValue('');\n } else if (value.length === 1 && value.match(/[a-z]/i)) {\n this.lowLimitControl.setValue('');\n }\n this.privateSubstanceAmount.lowLimit = value;\n });\n this.highLimitControl.setValue(this.privateSubstanceAmount.highLimit);\n this.highLimitControl.valueChanges.subscribe(value => {\n if (value === null) {\n this.highLimitControl.setValue('');\n } else if (value.length === 1 && value.match(/[a-z]/i)) {\n this.highLimitControl.setValue('');\n }\n this.privateSubstanceAmount.highLimit = value;\n });\n this.unitsControl.setValue(this.privateSubstanceAmount.units);\n this.unitsControl.valueChanges.subscribe(value => {\n this.privateSubstanceAmount.units = value;\n });\n this.nonNumericValueControl.setValue(this.privateSubstanceAmount.nonNumericValue);\n this.nonNumericValueControl.valueChanges.subscribe(value => {\n this.privateSubstanceAmount.nonNumericValue = value;\n });\n }\n\n get substanceAmount(): SubstanceAmount {\n return this.privateSubstanceAmount;\n }\n\n updateAccess(access: Array): void {\n this.privateSubstanceAmount.access = access;\n this.substanceAmount.access = access;\n }\n\n updateType(event: any) {\n setTimeout(() => {\n this.typeControl.setValue(event.value);\n });\n this.privateSubstanceAmount.type = event.value;\n }\n\n updateUnits(event: any) {\n setTimeout(() => {\n this.unitsControl.setValue(event.value);\n });\n this.privateSubstanceAmount.units = event.value;\n }\n\n updatePropertyName(event: any): void {\n this.criticalParameter.propertyType = event;\n\n if (event && event === 'Temperature') {\n // if Temperature is selected, set the Unit value to C\n setTimeout(() => {\n this.unitsControl.setValue('°C');\n });\n }\n }\n\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('AMOUNT_TYPE', 'AMOUNT_UNIT').subscribe(response => {\n this.amountTypeList = response['AMOUNT_TYPE'].list;\n this.amountUnitList = response['AMOUNT_UNIT'].list;\n });\n }\n\n inCV(vocab: Array, property: string) {\n return vocab.some(r => property === r.value);\n }\n}\n","
        0\">\n
        \n
        \n
        \n
        \n
        \n Deleted \n \n
        \n\n
        \n
        \n \n
        \n
        \n\n
        \n \n \n \n \n\n \n \n\n \n \n\n \n \n \n
        \n\n
        \n \n \n \n
        \n\n \n
        \n
        \n \n \n Starting Materials\n \n \n \n \n \n
        \n \n \n
        \n \n \n
        \n \n \n
        \n
        \n
        \n \n\n\n \n
        \n
        \n \n \n {{configTitleProcessingMaterials}}\n \n \n \n \n \n\n
        \n \n \n
        \n \n \n
        \n \n \n
        \n
        \n
        \n \n\n\n \n
        \n
        \n \n \n Resulting Materials\n \n \n \n \n \n
        \n \n \n
        \n \n \n
        \n \n \n
        \n
        \n
        \n \n\n \n
        \n
        \n \n Process Controls \n \n \n \n
        \n \n \n
        \n \n
        \n \n \n
        \n
        \n
        \n
        \n \n\n
        \n
        ","import { Component, OnInit, OnDestroy, AfterViewInit, Input } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { Subscription } from 'rxjs';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../../substance-form/base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\n/*\nimport { take } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { SubstanceFormBase } from '../../substance-form/base-classes/substance-form-base';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\n*/\nimport { SubstanceService } from '../../substance/substance.service';\nimport { SubstanceSummary, SubstanceRelationship } from '../../substance/substance.model';\nimport { SpecifiedSubstanceG4mProcess, SubstanceRelated } from '../../substance/substance.model';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormSsg4mStagesService } from './substance-form-ssg4m-stages.service';\nimport { SpecifiedSubstanceG4mStage } from '@gsrs-core/substance/substance.model';\nimport { ConfirmDialogComponent } from '../../../fda/confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-ssg4m-stages-form',\n templateUrl: './ssg4m-stages-form.component.html',\n styleUrls: ['./ssg4m-stages-form.component.scss']\n})\nexport class Ssg4mStagesFormComponent implements OnInit, OnDestroy {\n public configSettingsDisplay = {};\n configSsg4Form: any;\n configTitleStage: string;\n configTitleProcessingMaterials: string;\n privateStage: SpecifiedSubstanceG4mStage;\n privateProcessIndex: number;\n privateSiteIndex: number;\n privateStageIndex: number;\n privateShowAdvancedSettings: boolean;\n privateTabSelectedView: string;\n substance: SubstanceDetail;\n subscriptions: Array = [];\n\n constructor(\n public substanceFormSsg4mStagesService: SubstanceFormSsg4mStagesService,\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer,\n private scrollToService: ScrollToService,\n public configService: ConfigService,\n private dialog: MatDialog\n ) { }\n\n @Input()\n set stage(stage: SpecifiedSubstanceG4mStage) {\n this.privateStage = stage;\n }\n\n get stage(): SpecifiedSubstanceG4mStage {\n return this.privateStage;\n }\n\n @Input()\n set processIndex(processIndex: number) {\n this.privateProcessIndex = processIndex;\n }\n\n get processIndex(): number {\n return this.privateProcessIndex;\n }\n\n @Input()\n set siteIndex(siteIndex: number) {\n this.privateSiteIndex = siteIndex;\n }\n\n get siteIndex(): number {\n return this.privateSiteIndex;\n }\n\n @Input()\n set stageIndex(stageIndex: number) {\n this.privateStageIndex = stageIndex;\n // Set the Stage Name\n this.privateStage.stageNumber = String(this.privateStageIndex + 1);\n }\n\n get stageIndex(): number {\n return this.privateStageIndex;\n }\n\n @Input()\n set showAdvancedSettings(showAdvancedSettings: boolean) {\n this.privateShowAdvancedSettings = showAdvancedSettings;\n // Get Config Settins from config file\n this.getConfigSettings();\n }\n\n get showAdvancedSettings(): boolean {\n return this.privateShowAdvancedSettings;\n }\n\n @Input()\n set tabSelectedView(tabSelectedView: string) {\n this.privateTabSelectedView = tabSelectedView;\n }\n\n get tabSelectedView(): string {\n return this.privateTabSelectedView;\n }\n\n ngOnInit(): void {\n // this.substance = this.substanceFormSsg4mStagesService.substance;\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n });\n this.subscriptions.push(subscription);\n\n // Get Config variables for SSG4m\n this.configSsg4Form = (this.configService.configData && this.configService.configData.ssg4Form) || null;\n this.configTitleStage = 'Stage';\n this.configTitleProcessingMaterials = \"Processing Materials\";\n if (this.configSsg4Form) {\n this.configTitleStage = this.configSsg4Form.titles.stage || null;\n if (!this.configTitleStage) {\n this.configTitleStage = 'Stage';\n }\n this.configTitleProcessingMaterials = this.configSsg4Form.titles.processingMaterials || null;\n if (!this.configTitleProcessingMaterials) {\n this.configTitleProcessingMaterials = 'Processing Materials';\n }\n }\n }\n\n ngOnDestroy(): void {\n // this.substanceFormService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getConfigSettings(): void {\n // Get SSG4 Config Settings from config.json file to show and hide fields in the form\n let configSsg4Form: any;\n configSsg4Form = this.configService.configData && this.configService.configData.ssg4Form || null;\n // Get 'stage' json values from config\n const confSettings = configSsg4Form.settingsDisplay.stage;\n Object.keys(confSettings).forEach(key => {\n if (confSettings[key] != null) {\n if (confSettings[key] === 'simple') {\n this.configSettingsDisplay[key] = true;\n } else if (confSettings[key] === 'advanced') {\n if (this.privateShowAdvancedSettings === true) {\n this.configSettingsDisplay[key] = true;\n } else {\n this.configSettingsDisplay[key] = false;\n }\n } else if (confSettings[key] === 'removed') {\n this.configSettingsDisplay[key] = false;\n }\n }\n });\n }\n\n addCriticalParameter(processIndex: number, siteIndex: number, stageIndex: number) {\n this.substanceFormSsg4mStagesService.addCriticalParameter(processIndex, siteIndex, stageIndex);\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-process-site-stage-criticalParam-0`, 'center');\n });\n }\n\n addStartingMaterial(processIndex: number, siteIndex: number, stageIndex: number) {\n this.substanceFormSsg4mStagesService.addStartingMaterials(processIndex, siteIndex, stageIndex);\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-process-site-stage-startMat-0`, 'center');\n });\n }\n\n addProcessingMaterial(processIndex: number, siteIndex: number, stageIndex: number) {\n this.substanceFormSsg4mStagesService.addProcessingMaterials(processIndex, siteIndex, stageIndex);\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-process-site-stage-processMat-0`, 'center');\n });\n }\n\n addResultingMaterial(processIndex: number, siteIndex: number, stageIndex: number) {\n this.substanceFormSsg4mStagesService.addResultingMaterials(processIndex, siteIndex, stageIndex);\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-process-site-stage-resultMat-0`, 'center');\n });\n }\n\n confirmDeleteStage() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Stage ' + (this.stageIndex + 1) + ' for Site ' + (this.siteIndex + 1) + ' for Process ' + (this.processIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteStage();\n }\n });\n }\n\n deleteStage(): void {\n this.substance.specifiedSubstanceG4m.process[this.processIndex].sites[this.siteIndex].stages.splice(this.stageIndex, 1);\n }\n\n /*\n addStage(processIndex: number, siteIndex: number) {\n this.substanceFormSsg4mStagesService.addStage(processIndex, siteIndex);\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-process-site-stage-0`, 'center');\n });\n }\n */\n}\n\n","\n
        \n \n\n
        \n
        \n \n
        \n
        \n\n
        \n \n\n \n \n \n\n \n \n\n \n \n \n
        \n\n
        \n \n \n \n \n\n \n \n \n\n \n \n
        \n\n
        \n \n \n \n \n
        \n\n \n \n
        \n \n \n\n
        \n {{configTitleStage}} \n 0\">\n {{site.stages.length}}\n   \n \n \n \n
        \n \n \n
        \n \n \n
        \n \n \n
        \n
        \n\n
        \n \n\n \n \n\n \n
        ","import { Component, OnInit, AfterViewInit, Input, OnDestroy, Output, EventEmitter } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { Subscription } from 'rxjs';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../../substance-form/base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\n/*\nimport { take } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { SubstanceFormBase } from '../../substance-form/base-classes/substance-form-base';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\n*/\nimport { SubstanceService } from '../../substance/substance.service';\nimport { SubstanceSummary, SubstanceRelationship } from '../../substance/substance.model';\nimport { SpecifiedSubstanceG4mProcess, SubstanceRelated } from '../../substance/substance.model';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { SubstanceFormSsg4mSitesService } from './substance-form-ssg4m-sites.service';\nimport { SubstanceFormSsg4mStagesService } from '../ssg4m-stages/substance-form-ssg4m-stages.service';\nimport { SpecifiedSubstanceG4mSite } from '@gsrs-core/substance/substance.model';\nimport { ConfirmDialogComponent } from '../../../fda/confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-ssg4m-sites',\n templateUrl: './ssg4m-sites.component.html',\n styleUrls: ['./ssg4m-sites.component.scss']\n})\nexport class Ssg4mSitesComponent implements OnInit {\n @Output() tabSelectedIndexOut = new EventEmitter();\n\n privateShowAdvancedSettings: boolean;\n public configSettingsDisplay = {};\n configTitleStage: string;\n privateTabSelectedView: string;\n privateSite: SpecifiedSubstanceG4mSite;\n privateProcessIndex: number;\n privateSiteIndex: number;\n substance: SubstanceDetail;\n subscriptions: Array = [];\n\n constructor(\n public substanceFormSsg4mSitesService: SubstanceFormSsg4mSitesService,\n private substanceFormSsg4mStagesService: SubstanceFormSsg4mStagesService,\n private substanceFormService: SubstanceFormService,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer,\n private scrollToService: ScrollToService,\n public configService: ConfigService,\n private dialog: MatDialog\n ) { }\n\n @Input()\n set site(site: SpecifiedSubstanceG4mSite) {\n this.privateSite = site;\n }\n\n get site(): SpecifiedSubstanceG4mSite {\n return this.privateSite;\n }\n\n @Input()\n set processIndex(processIndex: number) {\n this.privateProcessIndex = processIndex;\n }\n\n get processIndex(): number {\n return this.privateProcessIndex;\n }\n\n @Input()\n set siteIndex(siteIndex: number) {\n this.privateSiteIndex = siteIndex;\n // Set the Site Name\n this.privateSite.siteName = 'Site ' + (this.privateSiteIndex + 1);\n }\n\n get siteIndex(): number {\n return this.privateSiteIndex;\n }\n\n @Input()\n set showAdvancedSettings(showAdvancedSettings: boolean) {\n this.privateShowAdvancedSettings = showAdvancedSettings;\n // Get Config Settins from config file\n this.getConfigSettings();\n }\n\n get showAdvancedSettings(): boolean {\n return this.privateShowAdvancedSettings;\n }\n\n @Input()\n set tabSelectedView(tabSelectedView: string) {\n this.privateTabSelectedView = tabSelectedView;\n }\n\n get tabSelectedView(): string {\n return this.privateTabSelectedView;\n }\n\n ngOnInit(): void {\n // this.substance = this.substanceFormSsg4mSitesService.substance;\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n });\n this.subscriptions.push(subscription);\n // Get Config variables for SSG4\n let configSsg4Form: any;\n configSsg4Form = (this.configService.configData && this.configService.configData.ssg4Form) || null;\n this.configTitleStage = 'Stage';\n if (configSsg4Form) {\n this.configTitleStage = configSsg4Form.titles.stage || null;\n if (!this.configTitleStage) {\n this.configTitleStage = 'Stage';\n }\n }\n }\n\n ngOnDestroy(): void {\n // this.substanceFormService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getConfigSettings(): void {\n // Get SSG4 Config Settings from config.json file to show and hide fields in the form\n let configSsg4Form: any;\n configSsg4Form = this.configService.configData && this.configService.configData.ssg4Form || null;\n // *** IMPORTANT: get the correct value. Get 'site' json values from config\n const confSettings = configSsg4Form.settingsDisplay.site;\n Object.keys(confSettings).forEach(key => {\n if (confSettings[key] != null) {\n if (confSettings[key] === 'simple') {\n this.configSettingsDisplay[key] = true;\n } else if (confSettings[key] === 'advanced') {\n if (this.privateShowAdvancedSettings === true) {\n this.configSettingsDisplay[key] = true;\n } else {\n this.configSettingsDisplay[key] = false;\n }\n } else if (confSettings[key] === 'removed') {\n this.configSettingsDisplay[key] = false;\n }\n }\n });\n }\n\n addStage(processIndex: number, siteIndex: number) {\n this.substanceFormSsg4mStagesService.addStage(processIndex, siteIndex);\n setTimeout(() => {\n this.scrollToService.scrollToElement(`stage-0`, 'center');\n });\n }\n\n confirmDeleteSite() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Site ' + (this.siteIndex + 1) + ' for Process ' + (this.processIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteSite();\n }\n });\n }\n\n deleteSite(): void {\n this.substance.specifiedSubstanceG4m.process[this.processIndex].sites.splice(this.siteIndex, 1);\n }\n\n showSchemePreview() {\n this.tabSelectedIndexOut.emit(1);\n }\n\n}\n","
        \n
        \n
        \n Deleted \n \n
        \n\n \n
        \n \n\n \n \n \n \n\n \n \n\n \n \n
        \n\n
        \n
        \n \n \n \n\n \n \n \n
        \n
        \n\n \n \n \n
        \n \n
        \n
        \n Site  {{siteIndex + 1}} of\n {{process.sites.length}}\n \n\n \n \n\n \n \n
        \n \n \n
        \n
        \n
        \n\n \n\n \n
        \n
        \n
        ","import { Component, OnInit, AfterViewInit, Input, OnDestroy, Output, EventEmitter } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatSelectChange } from '@angular/material/select';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { ControlledVocabularyService } from '../../controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../controlled-vocabulary/vocabulary.model';\nimport { ConfigService } from '@gsrs-core/config';\nimport { SubstanceService } from '../../substance/substance.service';\nimport { SubstanceFormBase } from '../../substance-form/base-classes/substance-form-base';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { SpecifiedSubstanceG4mProcess, SubstanceRelated } from '../../substance/substance.model';\nimport { SubstanceFormSsg4mProcessService } from './substance-form-ssg4m-process.service';\nimport { SubstanceFormSsg4mSitesService } from '../ssg4m-sites/substance-form-ssg4m-sites.service';\nimport { ConfirmDialogComponent } from '../../../fda/confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-ssg4m-process-form',\n templateUrl: './ssg4m-process-form.component.html',\n styleUrls: ['./ssg4m-process-form.component.scss']\n})\nexport class Ssg4mProcessFormComponent implements OnInit, OnDestroy {\n @Output() tabSelectedIndexOut = new EventEmitter();\n\n tabSelectedIndex: number;\n private privateShowAdvancedSettings: boolean;\n public configSettingsDisplay = {};\n private privateProcessIndex: number;\n private privateTabSelectedView: string;\n private privateProcess: SpecifiedSubstanceG4mProcess;\n parent: SubstanceRelated;\n private substance: SubstanceDetail;\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n\n constructor(\n private substanceFormSsg4mProcessService: SubstanceFormSsg4mProcessService,\n private substanceFormSsg4mSitesService: SubstanceFormSsg4mSitesService,\n private substanceFormService: SubstanceFormService,\n private configService: ConfigService,\n public gaService: GoogleAnalyticsService,\n public cvService: ControlledVocabularyService,\n private overlayContainerService: OverlayContainer,\n private scrollToService: ScrollToService,\n private dialog: MatDialog\n ) {\n }\n\n ngAfterViewInit(): void {\n }\n\n @Input()\n set process(process: SpecifiedSubstanceG4mProcess) {\n this.privateProcess = process;\n }\n\n get process(): SpecifiedSubstanceG4mProcess {\n return this.privateProcess;\n }\n\n @Input()\n set processIndex(processIndex: number) {\n this.privateProcessIndex = processIndex;\n // Set the Process Name\n this.privateProcess.processName = 'Process ' + (this.processIndex + 1);\n }\n\n get processIndex(): number {\n return this.privateProcessIndex;\n }\n\n @Input()\n set showAdvancedSettings(showAdvancedSettings: boolean) {\n this.privateShowAdvancedSettings = showAdvancedSettings;\n // Get Config Settins from config file\n this.getConfigSettings();\n }\n\n get showAdvancedSettings(): boolean {\n return this.privateShowAdvancedSettings;\n }\n\n @Input()\n set tabSelectedView(tabSelectedView: string) {\n this.privateTabSelectedView = tabSelectedView;\n }\n\n get tabSelectedView(): string {\n return this.privateTabSelectedView;\n }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const subscription = this.substanceFormService.substance.subscribe(substance => {\n this.substance = substance;\n });\n this.subscriptions.push(subscription);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getConfigSettings(): void {\n // Get SSG4 Config Settings from config.json file to show and hide fields in the form\n let configSsg4Form: any;\n configSsg4Form = this.configService.configData && this.configService.configData.ssg4Form || null;\n // Get 'process' json values from config\n const confSettings = configSsg4Form.settingsDisplay.process;\n Object.keys(confSettings).forEach(key => {\n if (confSettings[key] != null) {\n if (confSettings[key] === 'simple') {\n this.configSettingsDisplay[key] = true;\n } else if (confSettings[key] === 'advanced') {\n if (this.privateShowAdvancedSettings === true) {\n this.configSettingsDisplay[key] = true;\n } else {\n this.configSettingsDisplay[key] = false;\n }\n } else if (confSettings[key] === 'removed') {\n this.configSettingsDisplay[key] = false;\n }\n }\n });\n }\n\n updateAccess() {\n\n }\n\n addSite() {\n this.substanceFormSsg4mSitesService.addSite(this.processIndex);\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-process-site-0`, 'center');\n });\n }\n\n confirmDeleteProcess() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Process ' + (this.processIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProcess();\n }\n });\n }\n\n deleteProcess() {\n this.substanceFormSsg4mProcessService.deleteProcess(this.privateProcess, this.processIndex);\n }\n\n tabSelectedIndexOutChange(index: number) {\n this.tabSelectedIndexOut.emit(index);\n }\n}\n\n","\n\n\n \n
        \n
        \n \n Show Advanced Settings\n \n
        \n\n pageSize\">\n \n \n \n
        \n\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\"\n [pageSize]=\"5\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n\n
        \n
        \n Process  {{processIndex + 1}} of\n {{paged.length}}\n \n \n \n \n \n
        \n \n \n
        \n
        \n
        \n\n 5\" [length]=\"filtered && filtered.length || 0\" [pageIndex]=\"page\"\n [pageSize]=\"5\" showFirstLastButtons=\"true\" (page)=\"pageChange($event, analyticsEventCategory)\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\">\n \n\n
        \n\n \n\n \n \n \n\n \n\n \n \n

        \n    \n
        \n
        \n\n
        ","import { Component, OnInit, AfterViewInit, OnDestroy, Input } from '@angular/core';\nimport { ScrollToService } from '../../scroll-to/scroll-to.service';\nimport { Subscription } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { MatDialog } from '@angular/material/dialog';\nimport { GoogleAnalyticsService } from '../../google-analytics/google-analytics.service';\nimport { SubstanceCardBaseFilteredList, SubstanceCardBaseList } from '../../substance-form/base-classes/substance-form-base-filtered-list';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\nimport { SubstanceFormSsg4mProcessService } from './substance-form-ssg4m-process.service';\nimport { SubstanceFormSsg4mSitesService } from '../ssg4m-sites/substance-form-ssg4m-sites.service';\nimport { SpecifiedSubstanceG4mProcess } from '@gsrs-core/substance/substance.model';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { StructureImageModalComponent, StructureService } from '@gsrs-core/structure';\nimport { Ssg4mStepViewDialogComponent } from '../ssg4m-step-view-dialog/ssg4m-step-view-dialog.component';\n\n@Component({\n selector: 'app-substance-form-ssg4m-process-card',\n templateUrl: './substance-form-ssg4m-process-card.component.html',\n styleUrls: ['./substance-form-ssg4m-process-card.component.scss']\n})\n\nexport class SubstanceFormSsg4mProcessCardComponent extends SubstanceCardBaseFilteredList\n implements OnInit, AfterViewInit, OnDestroy, SubstanceCardBaseList {\n\n process: Array;\n private subscriptions: Array = [];\n showAdvancedSettings = false;\n tabSelectedView = 'Form View';\n tabSelectedIndex = 0;\n private overlayContainer: HTMLElement;\n constructor(\n private substanceFormSsg4mProcessService: SubstanceFormSsg4mProcessService,\n private substanceFormSsg4mSitesService: SubstanceFormSsg4mSitesService,\n private substanceFormService: SubstanceFormService,\n public configService: ConfigService,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog,\n private scrollToService: ScrollToService,\n public gaService: GoogleAnalyticsService\n ) {\n super(gaService);\n // this.analyticsEventCategory = 'substance form ssg4m process';\n }\n\n ngOnInit() {\n this.canAddItemUpdate.emit(true);\n this.menuLabelUpdate.emit('Process');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n let loaded = false;\n setInterval(() => {\n if (window['schemeUtil'] && !loaded) {\n loaded = true;\n //setup viz stuff\n //TODO: make more configurable and standardized\n window['schemeUtil'].debug = false;\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/'}api/v1/`;\n window['schemeUtil'].apiBaseURL = url;\n //TODO:\n window['schemeUtil'].onClickReaction = (d) => {\n //Can we add a popup dialog that would show the specific step here?\n let pindex = d.processIndex;\n let sindex = d.stepIndex;\n let siteIndex= d.siteIndex;\n if(typeof siteIndex === \"undefined\"){\n siteIndex=0;\n }\n \n this.showStepViewDialog(pindex, siteIndex, sindex);\n \n //I just want to show a dialog that shows the step/stage component rendered in a popup for now.\n //maybe in the future it should instead be a side window, I don't know.\n };\n //TODO:\n window['schemeUtil'].onClickMaterial = (d) => {\n this.openImageModal(d.refuuid, d.name, d.bottomText);\n };\n }\n }, 100);\n }\n\n ngAfterViewInit() {\n const processSubscription = this.substanceFormSsg4mProcessService.specifiedSubstanceG4mProcess.subscribe(process => {\n this.process = process;\n this.filtered = process;\n /*\n const searchSubscription = this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.notes, this.analyticsEventCategory);\n }, error => {\n console.log(error);\n });\n */\n // this.subscriptions.push(searchSubscription);\n this.page = 0;\n this.pageChange();\n });\n this.subscriptions.push(processSubscription);\n }\n\n ngOnDestroy() {\n this.componentDestroyed.emit();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addItem(): void {\n this.addProcess();\n }\n\n openImageModal(subUuid: string, approvalID: string, displayName: string): void {\n\n let data: any;\n data = {\n structure: subUuid,\n uuid: subUuid,\n approvalID: approvalID,\n displayName: displayName\n };\n\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\n height: '96%',\n width: '650px',\n panelClass: 'structure-image-panel',\n data: data\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n const subscription = dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n }, () => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n });\n }\n\n addProcess(): void {\n this.substanceFormSsg4mProcessService.addProcess();\n setTimeout(() => {\n this.scrollToService.scrollToElement(`substance-process-0`, 'center');\n });\n }\n\n deleteProcess(process: SpecifiedSubstanceG4mProcess): void {\n // this.substanceFormSsg4mProcessService.deleteProcess(process);\n }\n\n updateProcess($event) {\n\n }\n\n updateAdvancedSettings(event): void {\n this.showAdvancedSettings = event.checked;\n }\n\n tabSelected($event) {\n if ($event) {\n const evt: any = $event.tab;\n const textLabel: string = evt.textLabel;\n if (textLabel != null) {\n this.tabSelectedView = textLabel;\n }\n const ssgjs = JSON.stringify(this.substanceFormService.cleanSubstance());\n window['schemeUtil'].renderScheme(window['schemeUtil'].makeDisplayGraph(JSON.parse(ssgjs)), \"#scheme-viz-view\");\n }\n\n }\n\n onSelectedIndexChange(tabIndex: number) {\n this.tabSelectedIndex = tabIndex;\n //This is a hacky placeholder way to force viz\n //TODO finish this\n const ssgjs = JSON.stringify(this.substanceFormService.cleanSubstance());\n window['schemeUtil'].renderScheme(window['schemeUtil'].makeDisplayGraph(JSON.parse(ssgjs)), \"#scheme-viz-view\");\n }\n\n tabSelectedIndexOutChange(tabIndex: number) {\n this.tabSelectedIndex = tabIndex;\n }\n\n showStepViewDialog(processIndex: number, siteIndex: number, stageIndex: number) {\n const data = {\n processIndex: processIndex,\n siteIndex: siteIndex,\n stageIndex: stageIndex\n };\n\n const dialogRef = this.dialog.open(Ssg4mStepViewDialogComponent, {\n width: '90%',\n height: '80%',\n panelClass: 'structure-image-panel',\n data: data\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n let localTabSelectedIndex = -1;\n const subscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n localTabSelectedIndex = response;\n subscription.unsubscribe();\n if (localTabSelectedIndex > -1) {\n this.tabSelectedIndex = localTabSelectedIndex;\n }\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n// import { SubstanceFormNotesCardComponent } from './substance-form-notes-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../../substance-form/substance-form.module';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTabsModule } from '@angular/material/tabs';\n// import { SubstanceFormSsg4mSitesCardComponent} from '../ssg4m-sites/ssg4m-sites.module'\nimport { Ssg4mSitesModule } from '../ssg4m-sites/ssg4m-sites.module';\nimport { Ssg4mSchemeViewModule } from '../ssg4m-scheme-view/ssg4m-scheme-view.module';\nimport { SubstanceFormSsg4mProcessCardComponent } from './substance-form-ssg4m-process-card.component';\nimport { Ssg4mProcessFormComponent } from './ssg4m-process-form.component';\nimport { Ssg4mSitesComponent } from '../ssg4m-sites/ssg4m-sites.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DynamicComponentLoaderModule.forChild(SubstanceFormSsg4mProcessCardComponent),\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatTooltipModule,\n MatButtonModule,\n MatBadgeModule,\n ScrollToModule,\n MatPaginatorModule,\n MatInputModule,\n MatCheckboxModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatTabsModule,\n Ssg4mSitesModule,\n Ssg4mSchemeViewModule\n ],\n exports: [\n Ssg4mProcessFormComponent\n ],\n declarations: [\n SubstanceFormSsg4mProcessCardComponent,\n Ssg4mProcessFormComponent\n ]\n})\nexport class SubstanceSsg4mProcessModule { }\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { ScrollToModule } from '@gsrs-core/scroll-to/scroll-to.module';\nimport { SubstanceFormService } from '../../substance-form/substance-form.service';\nimport { SubstanceFormModule } from '../../substance-form/substance-form.module';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { Ssg4mSchemeViewComponent } from './ssg4m-scheme-view.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatListModule,\n ScrollToModule,\n SubstanceFormModule,\n SubstanceImageModule\n ],\n declarations: [\n Ssg4mSchemeViewComponent\n ],\n exports: [\n Ssg4mSchemeViewComponent\n ]\n})\nexport class Ssg4mSchemeViewModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { ScrollToModule } from '../../scroll-to/scroll-to.module';\n// import { SubstanceFormNotesCardComponent } from './substance-form-notes-card.component';\nimport { DynamicComponentLoaderModule } from '../../dynamic-component-loader/dynamic-component-loader.module';\nimport { SubstanceFormModule } from '../../substance-form/substance-form.module';\n// import { SubstanceFormSsg4mSitesCardComponent} from '../ssg4m-sites/ssg4m-sites.module'\nimport { Ssg4mStagesModule } from '../ssg4m-stages/substance-form-ssg4m-stages.module';\nimport { Ssg4mSitesComponent } from './ssg4m-sites.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SubstanceFormModule,\n MatDividerModule,\n MatIconModule,\n MatTooltipModule,\n MatButtonModule,\n ScrollToModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n FormsModule,\n MatPaginatorModule,\n MatInputModule,\n MatBadgeModule,\n Ssg4mStagesModule\n ],\n declarations: [\n Ssg4mSitesComponent\n ],\n exports: [\n Ssg4mSitesComponent\n ]\n})\n\nexport class Ssg4mSitesModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatSelectModule } from '@angular/material/select';\nimport { SubstanceFormModule } from '../../substance-form/substance-form.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { Ssg4mCriticalParameterFormComponent } from '../ssg4m-critical-parameter/ssg4m-critical-parameter-form.component';\n\n@NgModule({\n imports: [\n ReactiveFormsModule,\n MatFormFieldModule,\n FormsModule,\n MatInputModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n SubstanceFormModule,\n MatSelectModule,\n SubstanceSelectorModule,\n CommonModule\n ],\n declarations: [\n Ssg4mCriticalParameterFormComponent\n ],\n exports: [\n Ssg4mCriticalParameterFormComponent\n ]\n})\nexport class Ssg4mCriticalParameterModule { }\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule, formatDate } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatListModule } from '@angular/material/list';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatProgressBarModule} from '@angular/material/progress-bar';\nimport { NgxJsonViewerModule} from 'ngx-json-viewer';\n// GSRS Imports\nimport { FileSelectModule } from 'file-select';\nimport { ScrollToModule } from '@gsrs-core/scroll-to/scroll-to.module';\nimport { ExpandDetailsModule } from '@gsrs-core/expand-details/expand-details.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { SubstanceFormModule } from '@gsrs-core/substance-form/substance-form.module';\nimport { Ssg4mProcessingMaterialsFormComponent } from './ssg4m-processing-materials-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatDividerModule,\n MatSelectModule,\n MatInputModule,\n MatChipsModule,\n MatAutocompleteModule,\n ScrollToModule,\n MatDialogModule,\n MatTableModule,\n MatExpansionModule,\n MatBadgeModule,\n MatRadioModule,\n ExpandDetailsModule,\n SubstanceSelectorModule,\n MatListModule,\n FileSelectModule,\n MatButtonToggleModule,\n NgxJsonViewerModule,\n RouterModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n SubstanceImageModule,\n SubstanceSelectorModule,\n SubstanceFormModule\n ],\n declarations: [\n Ssg4mProcessingMaterialsFormComponent\n ],\n exports: [\n Ssg4mProcessingMaterialsFormComponent\n ]\n})\nexport class SubstanceFormSsg4mProcessingMaterialsModule { }\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule, formatDate } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatListModule } from '@angular/material/list';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatProgressBarModule} from '@angular/material/progress-bar';\nimport { NgxJsonViewerModule} from 'ngx-json-viewer';\n// GSRS Imports\nimport { FileSelectModule } from 'file-select';\nimport { ScrollToModule } from '@gsrs-core/scroll-to/scroll-to.module';\nimport { ExpandDetailsModule } from '@gsrs-core/expand-details/expand-details.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { SubstanceFormModule } from '@gsrs-core/substance-form/substance-form.module';\nimport { Ssg4mStagesModule } from '../ssg4m-stages/substance-form-ssg4m-stages.module';\nimport { Ssg4mResultingMaterialsFormComponent } from './ssg4m-resulting-materials-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatDividerModule,\n MatSelectModule,\n MatInputModule,\n MatChipsModule,\n MatAutocompleteModule,\n ScrollToModule,\n MatDialogModule,\n MatTableModule,\n MatExpansionModule,\n MatBadgeModule,\n MatRadioModule,\n ExpandDetailsModule,\n SubstanceSelectorModule,\n MatListModule,\n FileSelectModule,\n MatButtonToggleModule,\n NgxJsonViewerModule,\n RouterModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n SubstanceImageModule,\n SubstanceSelectorModule,\n SubstanceFormModule\n // Ssg4mStagesModule\n ],\n declarations: [\n Ssg4mResultingMaterialsFormComponent\n ],\n exports: [\n Ssg4mResultingMaterialsFormComponent\n ]\n})\nexport class SubstanceFormSsg4mResultingMaterialsModule { }\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule, formatDate } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatListModule } from '@angular/material/list';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatProgressBarModule} from '@angular/material/progress-bar';\nimport { NgxJsonViewerModule} from 'ngx-json-viewer';\n// GSRS Imports\nimport { FileSelectModule } from 'file-select';\nimport { ScrollToModule } from '@gsrs-core/scroll-to/scroll-to.module';\nimport { ExpandDetailsModule } from '@gsrs-core/expand-details/expand-details.module';\nimport { SubstanceFormModule } from '../../substance-form/substance-form.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n\nimport { CvInputComponent} from '@gsrs-core/substance-form/cv-input/cv-input.component';\nimport { CvDialogComponent} from '@gsrs-core/substance-form/cv-dialog/cv-dialog.component';\nimport { JsonDialogComponent} from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport { AuditInfoComponent} from '@gsrs-core/substance-form/audit-info/audit-info.component';\n\n// import { SubmitSuccessDialogComponent } from './submit-success-dialog/submit-success-dialog.component';\n// import { MergeConceptDialogComponent} from '@gsrs-core/substance-form/merge-concept-dialog/merge-concept-dialog.component';\n// import { SubstanceFormComponent } from './substance-form.component';\n// import { CanActivateSubstanceForm } from './can-activate-substance-form';\n// import { CanRegisterSubstanceForm } from './can-register-substance-form';\n// import { SubstanceFormService } from '../substance-form.service';\n// import { AccessManagerComponent } from './access-manager/access-manager.component';\n// import { SubstanceSsg4mService } from './substance-ssg4m-form.service';\n// import { SubstanceFormComponent } from '../substance-form/substance-form.component';\n// import { SubstanceFormSsg4mSitesService } from './ssg4m-sites/substance-form-ssg4m-sites.service.';\nimport { Ssg4mStagesFormComponent } from './ssg4m-stages-form.component';\nimport { Ssg4mCriticalParameterModule } from '../ssg4m-critical-parameter/ssg4m-critical-parameter.module';\nimport { SubstanceFormSsg4mStartingMaterialsModule } from '../ssg4m-starting-materials/substance-form-ssg4m-starting-materials.module';\nimport { SubstanceFormSsg4mProcessingMaterialsModule } from '../ssg4m-processing-materials/substance-form-ssg4m-processing-materials.module';\nimport { SubstanceFormSsg4mResultingMaterialsModule } from '../ssg4m-resulting-materials/substance-form-ssg4m-resulting-materials.module';\nimport { Ssg4mSchemeViewModule } from '../ssg4m-scheme-view/ssg4m-scheme-view.module';\nimport { SubstanceFormSsg4mStagesService } from './substance-form-ssg4m-stages.service';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatDividerModule,\n MatSelectModule,\n MatInputModule,\n MatChipsModule,\n MatAutocompleteModule,\n ScrollToModule,\n MatDialogModule,\n MatTableModule,\n MatExpansionModule,\n MatBadgeModule,\n MatRadioModule,\n ExpandDetailsModule,\n SubstanceSelectorModule,\n MatListModule,\n FileSelectModule,\n MatButtonToggleModule,\n NgxJsonViewerModule,\n RouterModule,\n SubstanceImageModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n SubstanceFormModule,\n Ssg4mCriticalParameterModule,\n SubstanceFormSsg4mStartingMaterialsModule,\n SubstanceFormSsg4mProcessingMaterialsModule,\n SubstanceFormSsg4mResultingMaterialsModule,\n Ssg4mSchemeViewModule\n ],\n declarations: [\n // SubstanceFormComponent,\n Ssg4mStagesFormComponent\n // CvInputComponent,\n // CvDialogComponent,\n // JsonDialogComponent\n ],\n exports: [\n Ssg4mStagesFormComponent\n // SubstanceFormComponent,\n // SubstanceSsg4ManufactureFormComponent,\n // CvInputComponent,\n // CvDialogComponent,\n // JsonDialogComponent,\n ],\n entryComponents: [\n // CvDialogComponent,\n // JsonDialogComponent,\n // AuditInfoComponent,\n // SubmitSuccessDialogComponent,\n ]\n})\n\nexport class Ssg4mStagesModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: Ssg4mStagesModule,\n providers: [\n ]\n };\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule, formatDate } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatListModule } from '@angular/material/list';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatProgressBarModule} from '@angular/material/progress-bar';\nimport { NgxJsonViewerModule} from 'ngx-json-viewer';\n// GSRS Imports\nimport { FileSelectModule } from 'file-select';\nimport { ScrollToModule } from '@gsrs-core/scroll-to/scroll-to.module';\nimport { ExpandDetailsModule } from '@gsrs-core/expand-details/expand-details.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { SubstanceFormModule } from '@gsrs-core/substance-form/substance-form.module';\nimport { Ssg4mStartingMaterialsFormComponent } from './ssg4m-starting-materials-form.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatDividerModule,\n MatSelectModule,\n MatInputModule,\n MatChipsModule,\n MatAutocompleteModule,\n ScrollToModule,\n MatDialogModule,\n MatTableModule,\n MatExpansionModule,\n MatBadgeModule,\n MatRadioModule,\n ExpandDetailsModule,\n SubstanceSelectorModule,\n MatListModule,\n FileSelectModule,\n MatButtonToggleModule,\n NgxJsonViewerModule,\n RouterModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n SubstanceImageModule,\n SubstanceSelectorModule,\n SubstanceFormModule\n ],\n declarations: [\n Ssg4mStartingMaterialsFormComponent\n ],\n exports: [\n Ssg4mStartingMaterialsFormComponent\n ]\n})\nexport class SubstanceFormSsg4mStartingMaterialsModule { }\n","
        \r\n
        \r\n \r\n \r\n {{hintMessage}}\r\n {{errorMessage}}\r\n \r\n
        \r\n
        {{field['display']}}
        \r\n \r\n
        {{suggestion.key}}
        \r\n
        \r\n
        \r\n
        \r\n      \r\n    
        \r\n \r\n \r\n \r\n
        \r\n
        ","import { Component, OnInit, ElementRef, AfterViewInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { MatAutocompleteSelectedEvent, MatAutocomplete } from '@angular/material/autocomplete';\r\nimport { debounceTime, distinctUntilChanged, switchMap, take } from 'rxjs/operators';\r\nimport { SubstanceSuggestionsGroup } from '../utils/substance-suggestions-group.model';\r\nimport { UtilsService } from '../utils/utils.service';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\nimport { ConfigService } from '@gsrs-core/config';\r\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\r\n\r\n@Component({\r\n selector: 'app-substance-text-search',\r\n templateUrl: './substance-text-search.component.html',\r\n styleUrls: ['./substance-text-search.component.scss']\r\n})\r\n\r\nexport class SubstanceTextSearchComponent implements OnInit, AfterViewInit, OnDestroy {\r\n searchControl = new FormControl();\r\n substanceSuggestionsGroup: SubstanceSuggestionsGroup;\r\n suggestionsFields: Array;\r\n matOpen = true;\r\n private testElem: HTMLElement;\r\n private searchContainerElement: HTMLElement;\r\n private query: string;\r\n @Input() eventCategory: string;\r\n @Input() styling?: string;\r\n @Output() searchPerformed = new EventEmitter();\r\n @Output() searchValueOut = new EventEmitter();\r\n @Input() placeholder = 'Search';\r\n @Input() hintMessage = '';\r\n private privateErrorMessage = '';\r\n @Output() opened = new EventEmitter();\r\n @Output() closed = new EventEmitter();\r\n @Input() source?: string;\r\n private CasDisplay = 'CAS';\r\n codeSystemVocab?: any;\r\n\r\n constructor(\r\n private utilsService: UtilsService,\r\n private element: ElementRef,\r\n public gaService: GoogleAnalyticsService,\r\n public configService: ConfigService,\r\n private cvService: ControlledVocabularyService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.cvService.getDomainVocabulary('CODE_SYSTEM').pipe(take(1)).subscribe(response => {\r\n let resp;\r\n resp = response['CODE_SYSTEM'].dictionary;\r\n this.codeSystemVocab = response['CODE_SYSTEM'].dictionary;\r\n if (resp['CAS']) {\r\n this.CasDisplay = resp['CAS'].display;\r\n }\r\n });\r\n this.searchControl.valueChanges.pipe(\r\n debounceTime(500),\r\n distinctUntilChanged(),\r\n switchMap(searchValue => {\r\n this.query = searchValue;\r\n this.searchValueOut.emit(this.query);\r\n const eventCategory = this.eventCategory || 'substanceTextSearch';\r\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchValue || 'search term';\r\n this.gaService.sendEvent(eventCategory, 'search:enter-term', eventLabel);\r\n return this.utilsService.getStructureSearchSuggestions(searchValue.toUpperCase());\r\n })\r\n ).subscribe((response: SubstanceSuggestionsGroup) => {\r\n this.substanceSuggestionsGroup = response; \r\n let showTypes = ['Standardized_Name', 'Display_Name', 'CAS', 'Name', 'Approval_ID', ];\r\n if(this.configService && this.configService.configData && this.configService.configData.typeaheadFields) {\r\n showTypes = this.configService.configData.typeaheadFields;\r\n }\r\n this.suggestionsFields = Object.keys(this.substanceSuggestionsGroup).filter(function(item) {\r\n return showTypes.indexOf(item) > -1;\r\n });\r\n /* this.suggestionsFields.forEach((value, index) => {\r\n if (value === 'Approval_ID') {\r\n this.suggestionsFields[index] = 'UNII';\r\n }\r\n if (value === 'Display_Name') {\r\n this.suggestionsFields[index] = 'Preferred Term';\r\n }\r\n });*/\r\n this.suggestionsFields.sort(function (x, y) { return x === 'Display_Name' ? -1 : y === 'Display_Name' ? 1 : 0; });\r\n this.suggestionsFields.forEach((value, index) => {\r\n if (value === 'Approval_ID') {\r\n if(this.configService && this.configService.configData && this.configService.configData.approvalCodeName) {\r\n this.suggestionsFields[index] = {value: 'Approval_ID', display: this.configService.configData.approvalCodeName};\r\n } else {\r\n this.suggestionsFields[index] = {value: 'Approval_ID', display: 'UNII'};\r\n }\r\n } else if (value === 'Standardized_Name') {\r\n this.suggestionsFields[index] = { value: 'Standardized_Name', display: 'Standardized Name' };\r\n } else if (value === 'Display_Name') {\r\n this.suggestionsFields[index] = { value: 'Display_Name', display: 'Preferred Term' };\r\n } else if (value === 'CAS') {\r\n this.suggestionsFields[index] = {value: 'CAS', display: this.CasDisplay};\r\n } else if(this.codeSystemVocab[value]){\r\n let disp = this.codeSystemVocab[value].display;\r\n this.suggestionsFields[index] = {value: value, display: disp};\r\n } else {\r\n this.suggestionsFields[index] = { value: value, display: value };\r\n }\r\n });\r\n\r\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\r\n this.matOpen = true;\r\n this.opened.emit();\r\n }\r\n\r\n }, error => {\r\n this.gaService.sendException('search suggestion error from API call');\r\n console.log(error);\r\n });\r\n\r\n }\r\n\r\n @Input()\r\n set searchValue(searchValue: string) {\r\n this.searchControl.setValue(searchValue);\r\n }\r\n\r\n @Input()\r\n set errorMessage(errorMessage: string) {\r\n this.searchControl.markAsTouched();\r\n if (errorMessage) {\r\n this.searchControl.setErrors({\r\n error: true\r\n });\r\n } else {\r\n this.searchControl.setErrors(null);\r\n }\r\n this.privateErrorMessage = errorMessage;\r\n }\r\n\r\n get errorMessage(): string {\r\n return this.privateErrorMessage;\r\n }\r\n\r\n ngOnDestroy() { }\r\n\r\n autoCompleteClosed(): void {\r\n this.matOpen = false;\r\n this.closed.emit();\r\n }\r\n\r\n focused(): void {\r\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\r\n this.matOpen = true;\r\n this.opened.emit();\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.searchContainerElement = this.element.nativeElement.querySelector('.search-container');\r\n }\r\n\r\n substanceSearchOptionSelected(event?: MatAutocompleteSelectedEvent) {\r\n const eventCategory = this.eventCategory || 'substanceTextSearch';\r\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && event.option.value || 'auto-complete option';\r\n this.gaService.sendEvent(eventCategory, 'select:auto-complete', eventLabel);\r\n let searchTerm = event.option.value;\r\n\r\n if (eventCategory === 'topSearch') {\r\n searchTerm = this.topSearchClean(searchTerm);\r\n }\r\n this.searchPerformed.emit(searchTerm);\r\n }\r\n\r\n highlight(field: string) {\r\n if (!this.query) {\r\n return field;\r\n } else {\r\n if (this.matOpen) {\r\n this.testElem = document.querySelector('#overflow') as HTMLElement;\r\n if (this.testElem != null) {\r\n this.testElem.innerText = field;\r\n if (this.testElem.scrollWidth > this.testElem.offsetWidth) {\r\n const pos = field.toUpperCase().indexOf(this.query.toUpperCase());\r\n field = '...' + field.substring(pos - 15, field.length);\r\n }\r\n }\r\n }\r\n const query = this.query.replace(/(?=[() \\[\\]])/g, '\\\\');\r\n return field.replace(new RegExp(query, 'gi'), match => {\r\n return '' + match + '';\r\n });\r\n }\r\n }\r\n\r\n processSubstanceSearch() {\r\n let searchTerm = this.searchControl.value;\r\n const eventCategory = this.eventCategory || 'substanceTextSearch';\r\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchTerm || 'search term option';\r\n this.gaService.sendEvent(eventCategory, 'search:submit', eventLabel);\r\n\r\n if (eventCategory === 'topSearch') {\r\n searchTerm = this.topSearchClean(searchTerm);\r\n }\r\n this.searchPerformed.emit(searchTerm);\r\n }\r\n\r\n activateSearch(): void {\r\n if (this.source) {\r\n this.searchContainerElement.classList.add('active-' + this.source);\r\n } else {\r\n this.searchContainerElement.classList.add('active-search');\r\n }\r\n }\r\n\r\n deactivateSearch(): void {\r\n this.searchContainerElement.classList.add('deactivate-search');\r\n setTimeout(() => {\r\n if (this.source) {\r\n\r\n this.searchContainerElement.classList.remove('active-' + this.source);\r\n this.searchContainerElement.classList.remove('deactivate-search');\r\n } else {\r\n this.searchContainerElement.classList.remove('active-search');\r\n this.searchContainerElement.classList.remove('deactivate-search');\r\n }\r\n }, 300);\r\n }\r\n\r\n topSearchClean(searchTerm): string {\r\n if (searchTerm && searchTerm.length > 0) {\r\n searchTerm = searchTerm.trim();\r\n // Should rename this util method to looksLikeFieldNameSearchTerm \r\n const looksComplex = this.utilsService.looksLikeComplexSearchTerm(searchTerm);\r\n // Removed this condition to allow automatic quoting of OAT-2* type complex searches \r\n // && searchTerm.indexOf('*') < 0\r\n if (searchTerm.indexOf('\"') < 0 && !looksComplex) {\r\n // Put slash in front of brackets, for example:\r\n // 1. [INN] to \\[INN\\]\r\n // 2. IBUPROFEN [INN] to IBUPROFEN \\[INN\\]\r\n // 3. *[INN] to *\\[INN\\]\r\n // 4. [INN]* to \\[INN\\]*\r\n // 5. \"[INN]\" to \"\\[INN\\]\"\r\n // 6. \"IBUPROFEN [INN]\" to \"IBUPROFEN \\[INN\\]\"\r\n // 7. \"*[INN]\" to \"*\\[INN\\]\"\r\n // 8. [INN]* to \\[INN\\]*\r\n\r\n \r\n searchTerm = '\"' + searchTerm\r\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\r\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\r\n + '\"';\r\n } else if (!looksComplex) {\r\n searchTerm\r\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\r\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\r\n } \r\n this.searchControl.setValue(searchTerm);\r\n }\r\n return searchTerm;\r\n }\r\n\r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubstanceTextSearchComponent } from './substance-text-search.component';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatIconModule,\r\n MatAutocompleteModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatButtonModule\r\n ],\r\n declarations: [\r\n SubstanceTextSearchComponent\r\n ],\r\n exports: [\r\n SubstanceTextSearchComponent\r\n ]\r\n})\r\nexport class SubstanceTextSearchModule { }\r\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\nimport { UtilsService } from '../utils/utils.service';\n\n@Directive({\n selector: '[appSubstanceImage]'\n})\nexport class SubstanceImageDirective implements AfterViewInit {\n private privateEntityId: string;\n private privateSize?: number;\n private privateStereo = false;\n private imageElement: HTMLImageElement;\n private isAfterViewInit = false;\n private privateAtomMaps?: Array;\n private privateVersion?: number;\n\n constructor(\n private el: ElementRef,\n private utilsService: UtilsService\n ) {\n this.imageElement = this.el.nativeElement as HTMLImageElement;\n }\n\n ngAfterViewInit() {\n this.isAfterViewInit = true;\n this.setImageSrc();\n }\n\n @Input()\n set version(version: number) {\n if (version !== this.privateVersion) {\n this.privateVersion = version;\n this.setImageSrc();\n }\n }\n\n @Input()\n set entityId(entityId: string) {\n if (entityId !== this.privateEntityId) {\n this.privateEntityId = entityId;\n this.setImageSrc();\n }\n }\n\n @Input()\n set size(size: number) {\n if (size !== this.privateSize) {\n this.privateSize = size;\n this.setImageSrc();\n }\n }\n\n @Input()\n set stereo(showStereo: boolean) {\n if (showStereo !== this.privateStereo) {\n this.privateStereo = showStereo;\n this.setImageSrc();\n }\n }\n\n @Input()\n set atomMaps(atomMaps: Array) {\n if (atomMaps !== this.privateAtomMaps) {\n this.privateAtomMaps = atomMaps;\n this.setImageSrc();\n }\n }\n\n private setImageSrc(): void {\n if (this.isAfterViewInit) {\n if (this.privateVersion) {\n const srcUrl = this.utilsService.getStructureImgUrl(\n this.privateEntityId, this.privateSize, this.privateStereo, this.privateAtomMaps, this.privateVersion);\n this.imageElement.src = srcUrl;\n } else {\n const srcUrl = this.utilsService.getStructureImgUrl(\n this.privateEntityId, this.privateSize, this.privateStereo, this.privateAtomMaps);\n this.imageElement.src = srcUrl;\n }\n this.imageElement.alt = 'structure image';\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubstanceImageDirective } from './substance-image.directive';\n\n\n@NgModule({\n declarations: [\n SubstanceImageDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SubstanceImageDirective\n ]\n})\nexport class SubstanceImageModule { }\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams, HttpClientJsonpModule, HttpParameterCodec } from '@angular/common/http';\nimport { Observable, Observer, Subject } from 'rxjs';\nimport { ConfigService } from '../config/config.service';\nimport { BaseHttpService } from '../base/base-http.service';\nimport {\n SubstanceSummary,\n SubstanceDetail,\n SubstanceEdit,\n SubstanceName,\n SubstanceCode,\n SubstanceRelationship,\n SubstanceRelated,\n SubstanceReference\n} from './substance.model';\nimport { PagingResponse, ShortResult } from '../utils/paging-response.model';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { FacetParam } from '../facets-manager/facet.model';\nimport { FacetHttpParams } from '../facets-manager/facet-http-params';\nimport { UtilsService } from '../utils/utils.service';\nimport { switchMap, map, catchError } from 'rxjs/operators';\nimport { ValidationResults} from '@gsrs-core/substance-form/substance-form.model';\nimport {Facet, FacetQueryResponse} from '@gsrs-core/facets-manager';\nimport { StructuralUnit } from '@gsrs-core/substance';\nimport {HierarchyNode} from '@gsrs-core/substances-browse/substance-hierarchy/hierarchy.model';\nimport { stringify } from 'querystring';\nclass CustomEncoder implements HttpParameterCodec {\n encodeKey(key: string): string {\n return encodeURIComponent(key);\n }\n\n encodeValue(value: string): string {\n return encodeURIComponent(value);\n }\n\n decodeKey(key: string): string {\n return decodeURIComponent(key);\n }\n\n decodeValue(value: string): string {\n return decodeURIComponent(value);\n }\n}\n@Injectable({\n providedIn: 'root'\n})\nexport class SubstanceService extends BaseHttpService {\n private searchKeys: { [structureSearchTerm: string]: string } = {};\n public showDeprecated = false;\n private resultEmitter = new Subject();\n showImagePopup = new Subject();\n imagePopupUnit = new Subject();\n private searchResult: any;\n constructor(\n public http: HttpClient,\n public configService: ConfigService,\n private sanitizer: DomSanitizer,\n private utilsService: UtilsService,\n ) {\n super(configService);\n }\n\n get searchResults(): Observable {\n return new Observable(observer => {\n if (!this.searchResult) {\n this.searchResult = { etag: '', uuids: [], total: 0};\n }\n observer.next(this.searchResult);\n this.resultEmitter.subscribe(sites => {\n observer.next(this.searchResult);\n });\n });\n }\n\n setResult(result: string, content: Array, total: number) {\n const uuid = [];\n if (content && content.length > 0) {\n content.forEach(substance => {\n uuid.push(substance.uuid);\n });\n }\n this.searchResult = {etag: result, uuids: uuid, total: total };\n this.resultEmitter.next(this.searchResult);\n }\n\n getSubstancesSummaries(args: {\n searchTerm?: string,\n structureSearchTerm?: string,\n sequenceSearchTerm?: string,\n cutoff?: number,\n type?: string,\n seqType?: string,\n pageSize?: number,\n order?: string,\n facets?: FacetParam,\n skip?: number,\n sequenceSearchKey?: string,\n deprecated?: boolean\n } = {}): Observable> {\n if (args.deprecated) {\n this.showDeprecated = true;\n } else {\n this.showDeprecated = false;\n }\n return new Observable(observer => {\n if (args.structureSearchTerm != null && args.structureSearchTerm !== '') {\n this.searchSubstanceStructures(\n args.structureSearchTerm,\n args.searchTerm,\n args.cutoff,\n args.type,\n args.pageSize,\n args.facets,\n args.order,\n args.skip\n ).subscribe(response => {\n observer.next(response);\n }, error => {\n observer.error(error);\n }, () => {\n observer.complete();\n });\n } else if ((args.sequenceSearchKey != null && args.sequenceSearchKey !== '') ||\n (args.sequenceSearchTerm != null && args.sequenceSearchTerm !== '')) {\n this.searchSubstanceSequences(\n args.sequenceSearchTerm,\n args.sequenceSearchKey,\n args.searchTerm,\n args.cutoff,\n args.type,\n args.seqType,\n args.pageSize,\n args.facets,\n args.order,\n args.skip\n ).subscribe(response => {\n observer.next(response);\n }, error => {\n observer.error(error);\n }, () => {\n observer.complete();\n });\n } else {\n this.searchSubstances(\n args.searchTerm,\n args.pageSize,\n args.facets,\n args.order,\n args.skip\n ).subscribe(response => {\n observer.next(response);\n }, error => {\n observer.error(error);\n }, () => {\n observer.complete();\n });\n\n }\n });\n }\n\n\n searchSubstances(\n searchTerm?: string,\n pageSize: number = 10,\n facets?: FacetParam,\n order?: string,\n skip: number = 0\n ): Observable> {\n\n let params = new FacetHttpParams({encoder: new CustomEncoder()});\n let url = this.apiBaseUrl;\n\n url += 'substances/search';\n if (searchTerm != null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets, this.showDeprecated);\n\n params = params.appendDictionary({\n top: pageSize && pageSize.toString(),\n skip: skip && skip.toString()\n });\n\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n params = params.append('fdim', '10');\n\n const options = {\n params: params\n };\n return this.http.get>(url, options);\n }\n\n searchSubstanceStructures(\n searchTerm: string,\n querySearchTerm?: string,\n cutoff?: number,\n type: string = 'substructure',\n pageSize: number = 10,\n facets?: FacetParam,\n order?: string,\n skip: number = 0,\n sync: boolean = false\n ): Observable> {\n return new Observable(observer => {\n let params = new FacetHttpParams({encoder: new CustomEncoder()});\n let url = this.apiBaseUrl;\n let structureFacetsKey: number;\n structureFacetsKey = this.utilsService.hashCode(searchTerm, type, cutoff);\n\n if (type && (type === 'flex' || type === 'exact')) {\n sync = true;\n }\n\n if (!sync && this.searchKeys[structureFacetsKey]) {\n url += `status(${this.searchKeys[structureFacetsKey]})/results`;\n params = params.appendFacetParams(facets, this.showDeprecated);\n if(querySearchTerm.length > 0) {\n params = params.appendDictionary({\n top: pageSize.toString(),\n skip: skip.toString(),\n q: querySearchTerm.toString()\n });\n } else {\n params = params.appendDictionary({\n top: pageSize.toString(),\n skip: skip.toString()\n });\n }\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n } else {\n params = params.append('q', (searchTerm));\n if (type) {\n params = params.append('type', type);\n if (type === 'similarity') {\n cutoff = cutoff || 0;\n params = params.append('cutoff', cutoff.toString());\n }\n }\n if (sync) {\n // Do text search along with Exact and Flex Structure search\n if (querySearchTerm) {\n params = params.append('qText', querySearchTerm);\n }\n params = params.append('sync', sync.toString());\n params = params.appendFacetParams(facets, this.showDeprecated);\n params = params.appendDictionary({\n top: pageSize.toString(),\n skip: skip.toString()\n });\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n }\n url += 'substances/structureSearch';\n }\n\n const options = {\n params: params\n };\n\n this.http.get(url, options).subscribe(\n response => {\n // call async\n if (response.results) {\n const resultKey = response.key;\n this.searchKeys[structureFacetsKey] = resultKey;\n this.processAsyncSearchResults(\n querySearchTerm,\n url,\n response,\n observer,\n resultKey,\n options,\n pageSize,\n facets,\n skip\n );\n } else {\n observer.next(response);\n observer.complete();\n }\n }, error => {\n observer.error(error);\n observer.complete();\n }\n );\n });\n }\n\n searchSubstanceSequences(\n searchTerm?: string,\n searchKey?: string,\n querySearchTerm?: string,\n cutoff: number = 0.5,\n type?: string,\n seqType?: string,\n pageSize: number = 10,\n facets?: FacetParam,\n order?: string,\n skip: number = 0,\n sync: boolean = true\n ): Observable> {\n return new Observable(observer => {\n let params = new FacetHttpParams({encoder: new CustomEncoder()});\n let url = this.apiBaseUrl;\n let structureFacetsKey;\n\n structureFacetsKey = this.utilsService.hashCode(searchTerm, cutoff, type, seqType);\n if ((searchKey && searchKey.length > 30) || (!sync && this.searchKeys[structureFacetsKey])) {\n if (!sync && this.searchKeys[structureFacetsKey]) {\n url += `status(${this.searchKeys[structureFacetsKey]})`;\n } else {\n url += `status(${searchKey})`;\n }\n params = params.appendFacetParams(facets, this.showDeprecated);\n params = params.appendDictionary({\n top: pageSize.toString(),\n skip: skip.toString()\n });\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n } else {\n params = params.appendDictionary({\n q: searchTerm,\n type: type,\n cutoff: cutoff.toString(),\n seqType: seqType\n });\n\n if (sync) {\n params = params.append('sync', sync.toString());\n }\n url += 'substances/sequenceSearch';\n }\n\n const options = {\n params: params\n };\n this.http.get(url, options).subscribe(\n response => {\n // call async\n if (response.results) {\n const resultKey = response.key;\n this.searchKeys[structureFacetsKey] = resultKey;\n this.processAsyncSearchResults(\n querySearchTerm,\n url,\n response,\n observer,\n resultKey,\n options,\n pageSize,\n facets,\n skip\n );\n } else {\n observer.next(response);\n observer.complete();\n }\n }, error => {\n observer.error(error);\n observer.complete();\n }\n );\n });\n }\n\n private processAsyncSearchResults(\n querySearchTerm: string,\n url: string,\n asyncCallResponse: any,\n observer: Observer>,\n searchKey: string,\n httpCallOptions: any,\n pageSize?: number,\n facets?: FacetParam,\n skip?: number,\n view?: string\n ): void {\n this.getAsyncSearchResults(\n querySearchTerm,\n searchKey,\n pageSize,\n facets,\n skip,\n view\n )\n .subscribe(response => {\n observer.next(response);\n if (!asyncCallResponse.finished) {\n this.http.get(url, httpCallOptions).subscribe(searchResponse => {\n setTimeout(() => {\n this.processAsyncSearchResults(\n querySearchTerm,\n url,\n searchResponse,\n observer,\n searchKey,\n httpCallOptions,\n pageSize,\n facets,\n skip,\n view\n );\n });\n }, error => {\n observer.error(error);\n observer.complete();\n });\n } else {\n observer.complete();\n }\n }, error => {\n observer.error(error);\n observer.complete();\n });\n\n }\n\n private getAsyncSearchResults(\n querySearchTerm: string,\n structureSearchKey: string,\n pageSize?: number,\n facets?: FacetParam,\n skip?: number,\n view?: string\n ): any {\n const url = `${this.apiBaseUrl}status(${structureSearchKey})/results`;\n let params = new FacetHttpParams({encoder: new CustomEncoder()});\n\n params = params.appendFacetParams(facets, this.showDeprecated);\n\n // remove this when async backend issue is fixed\n const random_key = Math.random().toString(36).replace('0.', '');\n params = params.appendFacetParams({ facet: { isAllMatch: false, params: { cache: false } } }, this.showDeprecated);\n\n params = params.appendDictionary({\n top: pageSize.toString(),\n skip: skip.toString(),\n view: view || ''\n });\n\n // Added for 3.0.2, Advanced Search:Combine structure Search with query search.\n if (querySearchTerm != null && querySearchTerm !== '') {\n params = params.append('q', querySearchTerm);\n }\n\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getQuickSubstancesSummaries(\n searchTerm?: string,\n getFacets?: boolean,\n facets?: FacetParam\n ): Observable> {\n\n let params = new FacetHttpParams({encoder: new CustomEncoder()});\n\n let url = this.apiBaseUrl + 'substances/';\n\n if (searchTerm) {\n params = params.append('q', searchTerm);\n }\n\n if (searchTerm != null || getFacets === true) {\n url += 'search';\n }\n\n if (facets != null) {\n params = params.appendFacetParams(facets, this.showDeprecated);\n }\n\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n searchSingleFacet(name: string, value: string) {\n const url = this.apiBaseUrl + 'substances/search?facet=' + name + '/' + value;\n return this.http.get(url);\n }\n\n searchSingleFacetSimpleCount(name: string, value: string) {\n const url = this.apiBaseUrl + 'substances/search?facet=' + name + '/' + value + '&simpleSearchOnly=true&fdim=0&top=1&view=key';\n return this.http.get(url);\n }\n\n searchFromString(value: string) {\n const url = this.apiBaseUrl + 'substances/search?' + value;\n return this.http.get>(url);\n }\n\n getRecordCount() {\n const url = this.apiBaseUrl + 'substances/@count';\n return this.http.get(url);\n }\n\n getFasta(id: string): Observable {\n const url = `${this.configService.configData.apiBaseUrl}export/${id}.fas`;\n return this.http.get(url, { responseType: 'blob' as 'json' });\n }\n\n getSubstanceSummary(id: string): Observable {\n const url = `${this.apiBaseUrl}substances(${id})`;\n return this.http.get(url);\n }\n\n getEdits(id: string): Observable> {\n const url = `${this.apiBaseUrl}substances(${id})/@edits`;\n return this.http.get>(url, { withCredentials: true });\n }\n\n getSubstanceDetails(id: string, version?: string): Observable {\n const url = `${this.apiBaseUrl}substances(${id})`;\n let params = new HttpParams();\n params = params.append('view', 'internal');\n const options = {\n params: params\n };\n if (version) {\n\n const editurl = `${this.apiBaseUrl}substances(${id})/@edits`;\n\n return this.http.get(editurl, { withCredentials: true }).pipe(\n switchMap(response => {\n response = response.filter(resp => resp.version === version);\n return this.http.get(response[0].oldValue, options);\n }));\n\n } else {\n return this.http.get(url, options);\n }\n }\n\n getSubstanceNames(id: string): Observable> {\n const url = `${this.apiBaseUrl}substances(${id})/names`;\n return this.http.get>(url);\n }\n\n getSubstanceCodes(id: string): Observable> {\n const url = `${this.apiBaseUrl}substances(${id})/codes`;\n return this.http.get>(url);\n }\n\n getSubstanceRelationships(id: string): Observable> {\n const url = `${this.apiBaseUrl}substances(${id})/relationships`;\n return this.http.get>(url);\n }\n\n checkVersion(id: string): any {\n const verurl = `${this.apiBaseUrl}substances(${id})/version`;\n return this.http.get(verurl);\n }\n\n getSafeIconImgUrl(substance: SubstanceDetail , size?: number): SafeUrl {\n let imgUrl = `${this.configService.configData.apiBaseUrl}assets/ginas/images/noimage.svg`;\n const substanceType = substance.substanceClass;\n if ((substanceType === 'chemical') && (substance.structure.id)) {\n const structureId = substance.structure.id;\n imgUrl = `${this.configService.configData.apiBaseUrl}img/${structureId}.svg`;\n } else if ((substanceType === 'polymer') && (substance.polymer.displayStructure.id)) {\n const structureId = substance.polymer.displayStructure.id;\n imgUrl = `${this.configService.configData.apiBaseUrl}img/${structureId}.svg`;\n } else {\n imgUrl = `assets/images/${substanceType}.svg`;\n }\n\n if (size != null) {\n imgUrl += `?size=${size.toString()}`;\n }\n\n return this.sanitizer.bypassSecurityTrustUrl(imgUrl);\n }\n\n getIconFromUuid(uuid: string): SafeUrl {\n const imgUrl = `${this.configService.configData.apiBaseUrl}img/${uuid}.svg`;\n return this.sanitizer.bypassSecurityTrustUrl(imgUrl);\n\n }\n\n saveSubstance(substance: SubstanceDetail, type?: string): Observable {\n const url = `${this.apiBaseUrl}substances?view=internal`;\n let method = substance.uuid ? 'PUT' : 'POST';\n if (type && type === 'import') {\n method = 'POST';\n }\n const options = {\n body: substance\n };\n return this.http.request(method, url, options);\n }\n\n validateSubstance(substance: SubstanceDetail): Observable {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/@validate`;\n return this.http.post(url, substance);\n }\n\n getHierarchy(id: string): Observable> {\n const url = `${this.apiBaseUrl}substances(${id})/@hierarchy`;\n return this.http.get(url);\n }\n\n approveSubstance(keyid: string): Observable {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances(${keyid})/@approve`;\n return this.http.get(url);\n }\n\n oldSiteRedirect(page: string, uuid: string) {\n let url = this.baseUrl + 'substance/' + uuid;\n if (page === 'edit') {\n url = url + '/edit';\n }\n return url;\n }\n\n getSequenceByID(substance: string, unit: string, type: string): Observable {\n const url = `${this.apiBaseUrl}substances(${substance})/${type}/subunits(uuid:${unit})`;\n return this.http.get(url);\n }\n\n getSubstanceSequenceResults(\n searchTerm?: string,\n cutoff: number = 0.5,\n type?: string,\n seqType?: string,\n ): Observable {\n let params = new FacetHttpParams();\n const url = this.apiBaseUrl + 'substances/sequenceSearch';\n\n params = params.appendDictionary({\n q: searchTerm,\n type: type,\n cutoff: cutoff.toString(),\n seqType: seqType\n });\n\n return this.http.post(url, params);\n }\n\n oldLinkFix(link: string): string {\n if (link && link.length > 10) {\n const oid = link.split('/');\n const link3 = 'substances/' + oid[oid.length - 1];\n return link3;\n } else {\n return link;\n }\n }\n\n getPrimaryCode(reference: SubstanceRelated , codeSystem: string): Observable {\n //TODO: may need to url-encode some codeSystems for spaces/hyphens\n const refuuid = `${this.apiBaseUrl}substances(${reference.refuuid })/codes(codeSystem:` + codeSystem + `)(type:PRIMARY)($0)/code`;\n const refPname = `${this.apiBaseUrl}substances(${ reference.refPname })/codes(codeSystem:` + codeSystem + `)(type:PRIMARY)($0)/code`;\n return this.http.get(refuuid).pipe(\n catchError(error => this.http.get(refPname))\n );\n }\n getPrimaryConfigCode(reference: SubstanceRelated): Observable {\n let cs: string;\n //TODO: need to establish the config name, and how to deal with default values\n cs = this.configService.configData && this.configService.configData.primaryCode ? this.configService.configData.primaryCode : 'BDNUM';\n return this.getPrimaryCode(reference, cs);\n }\n\n\n getBDNUM(reference: SubstanceRelated ): Observable {\n const refuuid = `${this.apiBaseUrl}substances(${reference.refuuid })/codes(codeSystem:BDNUM)(type:PRIMARY)($0)/code`;\n const refPname = `${this.apiBaseUrl}substances(${ reference.refPname })/codes(codeSystem:BDNUM)(type:PRIMARY)($0)/code`;\n return this.http.get(refuuid).pipe(\n catchError(error => this.http.get(refPname))\n );\n }\n\n getSubstanceFacets(facet: Facet, searchTerm?: string, nextUrl?: string): Observable {\n let url: string;\n if (searchTerm) {\n url = `${this.configService.configData.apiBaseUrl}api/v1/substances/search/@facets?wait=false&kind=ix.ginas.models.v1.Substance&skip=0&fdim=200&sideway=true&field=${facet.name.replace(' ', '+')}&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=${searchTerm}`;\n } else if (nextUrl != null) {\n url = nextUrl;\n } else {\n url = facet._self;\n }\n return this.http.get(url);\n }\n\n\n getSubstanceReferences(top: number = 10, user: string): Observable {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/references/search?top=${top}&order=$lastEdited&q=root_lastEditedBy:\"${user}\" AND NOT (root_docType:SYSTEM) AND NOT (root_docType:BDNUM)`;\n return this.http.get< any>(url);\n }\n\n hasInxightLink(ID: string): Observable {\n const url = `https://drugs.ncats.io/api/v1/substances/search?q=root_approvalID:${ID}&fdim=1`;\n return this.http.jsonp(url, 'callback' );\n\n }\n\n getExportOptions(etag: string, search?: string): Observable {\n if (!search) {\n search = 'substances';\n }\n const url = `${this.configService.configData.apiBaseUrl}api/v1/${search}/export/${etag}`;\n return this.http.get< any>(url);\n }\n\n getTags(): Observable> {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/search/@facets?kind=ix.ginas.models.v1.Substance&fdim=999999&sideway=true&field=GInAS+Tag`;\n return this.http.get(url).pipe(\n map(response => {\n return response.content.map(item => item.label).sort();\n })\n );\n }\n\n getMixtureParent(id: string) {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/search?q=root_mixture_components_substance_refuuid:\"${id}\"`;\n return this.http.get< any>(url);\n }\n getConstituentParent(id: string) {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/search?q=root_specifiedSubstance_constituents_substance_refuuid:\"${id}\"`;\n return this.http.get< any>(url);\n }\n}\n\n\n\n\n","import { Component, OnInit, Inject } from '@angular/core';\nimport * as moment from 'moment';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-export-dialog',\n templateUrl: './export-dialog.component.html',\n styleUrls: ['./export-dialog.component.scss']\n})\nexport class ExportDialogComponent implements OnInit {\n name: string;\n extension: string;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) { }\n\n ngOnInit() {\n const date = new Date();\n if (this.data.type && this.data.type !== null && this.data.type !== '') {\n this.name = this.data.type + '-' + moment(date).format('DD-MM-YYYY_H-mm-ss');\n } else {\n this.name = 'export-' + moment(date).format('DD-MM-YYYY_H-mm-ss');\n }\n this.extension = this.data.extension;\n }\n\n save(): void {\n this.dialogRef.close(this.name);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n}\n\n","\n

        Enter a Filename

        \n
        \n Preparing download. Please enter a file name.\n
        \n
        \n
        \n \n \n \n
        \n
        .{{extension}}
        \n
        \n \n \n \n \n \n","import { CodeSystemDisplayPipe } from '@gsrs-core/utils/code-system-display.pipe';\nimport { NgModule } from '@angular/core';\n\n@NgModule({\n imports: [\n // dep modules\n ],\n declarations: [\n CodeSystemDisplayPipe\n ],\n exports: [\n CodeSystemDisplayPipe\n ]\n })\n export class CodeDisplayModule {}","import {Pipe, PipeTransform} from '@angular/core';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { map } from 'rxjs/operators';\nimport { Observable } from 'rxjs';\n\n@Pipe({\n name: 'codeSystemDisplay'\n})\nexport class CodeSystemDisplayPipe implements PipeTransform {\n constructor(public cvService: ControlledVocabularyService) {\n\n }\n transform(name: string, item2?: string): any {\n return this.cvService.getDomainVocabulary('CODE_SYSTEM').pipe(map(response => {\n let resp;\n resp = response['CODE_SYSTEM'].dictionary;\n if (resp[name]) {\n return resp[name].display;\n } else {\n return name;\n }\n }));\n}\n}\n","export const DataDictionary: any = {'Code UUID': {fieldName: 'Uuid',\n fieldPath: '/codes/?/uuid', finalField: 'uuid',\n lucenePath: 'root_codes_uuid', CVDomain: '',\n displayName: 'Code UUID',\n dataType: 'string', luceneQueryable: false},\n'Mixture Component Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/mixture/components/?/substance/uuid', finalField: 'uuid',\n lucenePath: 'root_mixture_components_substance_uuid', CVDomain: '',\n displayName: 'Mixture Component Substance UUID',\n dataType: 'string', luceneQueryable: false},\n'Mixture Component UUID': {fieldName: 'Uuid',\n fieldPath: '/mixture/components/?/uuid', finalField: 'uuid',\n lucenePath: 'root_mixture_components_uuid', CVDomain: '',\n displayName: 'Mixture Component UUID',\n dataType: 'string', luceneQueryable: false},\n'Mixture Parent Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/mixture/parentSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_mixture_parentSubstance_uuid', CVDomain: '',\n displayName: 'Mixture Parent Substance UUID',\n dataType: 'string', luceneQueryable: false},\n'Mixture UUID': {fieldName: 'Uuid',\n fieldPath: '/mixture/uuid', finalField: 'uuid',\n lucenePath: 'root_mixture_uuid', CVDomain: '',\n displayName: 'Mixture UUID',\n dataType: 'string', luceneQueryable: false},\n'Agent Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_uuid', CVDomain: '',\n displayName: 'Agent Substance UUID',\n dataType: 'string', luceneQueryable: false},\n'Agent Modification Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/agentModifications/?/amount/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_agentModifications_amount_uuid', CVDomain: '',\n displayName: 'Agent Modification Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Agent Modification UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/agentModifications/?/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_agentModifications_uuid', CVDomain: '',\n displayName: 'Agent Modification UUID',\n dataType: 'string', luceneQueryable: false},\n'Physical Modification Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_uuid', CVDomain: '',\n displayName: 'Physical Modification Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Physical Modification Parameter UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_physicalModifications_parameters_uuid', CVDomain: '',\n displayName: 'Physical Modification Parameter UUID',\n dataType: 'string', luceneQueryable: false},\n'Physical Modification UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/physicalModifications/?/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_physicalModifications_uuid', CVDomain: '',\n displayName: 'Physical Modification UUID',\n dataType: 'string', luceneQueryable: false},\n'Structural Modification Extent Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_uuid', CVDomain: '',\n displayName: 'Structural Modification Extent Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Molecular Fragment UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_uuid', CVDomain: '',\n displayName: 'Molecular Fragment UUID',\n dataType: 'string', luceneQueryable: false},\n'Structural Modification UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/structuralModifications/?/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_structuralModifications_uuid', CVDomain: '',\n displayName: 'Structural Modification UUID',\n dataType: 'string', luceneQueryable: false},\n'Modification UUID': {fieldName: 'Uuid',\n fieldPath: '/modifications/uuid', finalField: 'uuid',\n lucenePath: 'root_modifications_uuid', CVDomain: '',\n displayName: 'Modification UUID',\n dataType: 'string', luceneQueryable: false},\n'Count Amount Average': {fieldName: 'Average',\n fieldPath: '/moieties/?/countAmount/average', finalField: 'average',\n lucenePath: 'root_moieties_countAmount_average', CVDomain: '',\n displayName: 'Count Amount Average',\n dataType: 'number', luceneQueryable: false},\n'Count Amount Created': {fieldName: 'Created',\n fieldPath: '/moieties/?/countAmount/created', finalField: 'created',\n lucenePath: 'root_moieties_countAmount_created', CVDomain: '',\n displayName: 'Count Amount Created',\n dataType: 'number', luceneQueryable: false},\n'Count Amount Created By': {fieldName: 'Created By',\n fieldPath: '/moieties/?/countAmount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_moieties_countAmount_createdBy', CVDomain: '',\n displayName: 'Count Amount Created By',\n dataType: 'string', luceneQueryable: false},\n'Count Amount High': {fieldName: 'High',\n fieldPath: '/moieties/?/countAmount/high', finalField: 'high',\n lucenePath: 'root_moieties_countAmount_high', CVDomain: '',\n displayName: 'Count Amount High',\n dataType: 'number', luceneQueryable: false},\n'Count Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/moieties/?/countAmount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_moieties_countAmount_lastEdited', CVDomain: '',\n displayName: 'Count Amount Last Edited',\n dataType: 'number', luceneQueryable: false},\n'Count Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/moieties/?/countAmount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_moieties_countAmount_lastEditedBy', CVDomain: '',\n displayName: 'Count Amount Last Edited By',\n dataType: 'string', luceneQueryable: false},\n'Count Amount Low': {fieldName: 'Low',\n fieldPath: '/moieties/?/countAmount/low', finalField: 'low',\n lucenePath: 'root_moieties_countAmount_low', CVDomain: '',\n displayName: 'Count Amount Low',\n dataType: 'number', luceneQueryable: false},\n'Count Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/moieties/?/countAmount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_moieties_countAmount_nonNumericValue', CVDomain: '',\n displayName: 'Count Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: false},\n'Count Amount Type': {fieldName: 'Type',\n fieldPath: '/moieties/?/countAmount/type', finalField: 'type',\n lucenePath: 'root_moieties_countAmount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Count Amount Type',\n dataType: 'string', luceneQueryable: false},\n'Count Amount Units': {fieldName: 'Units',\n fieldPath: '/moieties/?/countAmount/units', finalField: 'units',\n lucenePath: 'root_moieties_countAmount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Count Amount Units',\n dataType: 'string', luceneQueryable: false},\n'Count Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/moieties/?/countAmount/uuid', finalField: 'uuid',\n lucenePath: 'root_moieties_countAmount_uuid', CVDomain: '',\n displayName: 'Count Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Moiety UUID': {fieldName: 'Uuid',\n fieldPath: '/moieties/?/uuid', finalField: 'uuid',\n lucenePath: 'root_moieties_uuid', CVDomain: '',\n displayName: 'Moiety UUID',\n dataType: 'string', luceneQueryable: false},\n'Naming Organization UUID': {fieldName: 'Uuid',\n fieldPath: '/names/?/nameOrgs/?/uuid', finalField: 'uuid',\n lucenePath: 'root_names_nameOrgs_uuid', CVDomain: '',\n displayName: 'Naming Organization UUID',\n dataType: 'string', luceneQueryable: false},\n'Name UUID': {fieldName: 'Uuid',\n fieldPath: '/names/?/uuid', finalField: 'uuid',\n lucenePath: 'root_names_uuid', CVDomain: '',\n displayName: 'Name UUID',\n dataType: 'string', luceneQueryable: false},\n'Polymer Classification UUID': {fieldName: 'Uuid',\n fieldPath: '/notes/?/uuid', finalField: 'uuid',\n lucenePath: 'root_notes_uuid', CVDomain: '',\n displayName: 'Polymer Classification UUID',\n dataType: 'string', luceneQueryable: false},\n'Linkage Created': {fieldName: 'Created',\n fieldPath: '/nucleicAcid/linkages/?/created', finalField: 'created',\n lucenePath: 'root_nucleicAcid_linkages_created', CVDomain: '',\n displayName: 'Linkage Created',\n dataType: 'number', luceneQueryable: false},\n'Linkage Created By': {fieldName: 'Created By',\n fieldPath: '/nucleicAcid/linkages/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_nucleicAcid_linkages_createdBy', CVDomain: '',\n displayName: 'Linkage Created By',\n dataType: 'string', luceneQueryable: false},\n'Linkage Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/nucleicAcid/linkages/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_nucleicAcid_linkages_lastEdited', CVDomain: '',\n displayName: 'Linkage Last Edited',\n dataType: 'number', luceneQueryable: false},\n'Linkage Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/nucleicAcid/linkages/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_nucleicAcid_linkages_lastEditedBy', CVDomain: '',\n displayName: 'Linkage Last Edited By',\n dataType: 'string', luceneQueryable: false},\n'Linkage Linkage': {fieldName: 'Linkage',\n fieldPath: '/nucleicAcid/linkages/?/linkage', finalField: 'linkage',\n lucenePath: 'root_nucleicAcid_linkages_linkage', CVDomain: 'NUCLEIC_ACID_LINKAGE',\n displayName: 'Linkage Linkage',\n dataType: 'string', luceneQueryable: false},\n'Linkage UUID': {fieldName: 'Uuid',\n fieldPath: '/nucleicAcid/linkages/?/uuid', finalField: 'uuid',\n lucenePath: 'root_nucleicAcid_linkages_uuid', CVDomain: '',\n displayName: 'Linkage UUID',\n dataType: 'string', luceneQueryable: false},\n'Nucleic Acid Sub Type': {fieldName: 'Nucleic Acid Sub Type',\n fieldPath: '/nucleicAcid/nucleicAcidSubType', finalField: 'nucleicAcidSubType',\n lucenePath: 'root_nucleicAcid_nucleicAcidSubType', CVDomain: 'NUCLEIC_ACID_SUBTYPE',\n displayName: 'Nucleic Acid Sub Type',\n dataType: 'string', luceneQueryable: false},\n'Nucleic Acid Type': {fieldName: 'Nucleic Acid Type',\n fieldPath: '/nucleicAcid/nucleicAcidType', finalField: 'nucleicAcidType',\n lucenePath: 'root_nucleicAcid_nucleicAcidType', CVDomain: 'NUCLEIC_ACID_TYPE',\n displayName: 'Nucleic Acid Type',\n dataType: 'string', luceneQueryable: false},\n'Nucleic Acid Sequence Origin': {fieldName: 'Sequence Origin',\n fieldPath: '/nucleicAcid/sequenceOrigin', finalField: 'sequenceOrigin',\n lucenePath: 'root_nucleicAcid_sequenceOrigin', CVDomain: 'NUCLEIC_ACID_SEQUENCE_ORIGIN',\n displayName: 'Nucleic Acid Sequence Origin',\n dataType: 'string', luceneQueryable: false},\n'Nucleic Acid Sequence Type': {fieldName: 'Sequence Type',\n fieldPath: '/nucleicAcid/sequenceType', finalField: 'sequenceType',\n lucenePath: 'root_nucleicAcid_sequenceType', CVDomain: 'SEQUENCE_TYPE',\n displayName: 'Nucleic Acid Sequence Type',\n dataType: 'string', luceneQueryable: false},\n'Nucleic Acid Subunit UUID': {fieldName: 'Uuid',\n fieldPath: '/nucleicAcid/subunits/?/uuid', finalField: 'uuid',\n lucenePath: 'root_nucleicAcid_subunits_uuid', CVDomain: '',\n displayName: 'Nucleic Acid Subunit UUID',\n dataType: 'string', luceneQueryable: false},\n'Sugar Created': {fieldName: 'Created',\n fieldPath: '/nucleicAcid/sugars/?/created', finalField: 'created',\n lucenePath: 'root_nucleicAcid_sugars_created', CVDomain: '',\n displayName: 'Sugar Created',\n dataType: 'number', luceneQueryable: false},\n'Sugar Created By': {fieldName: 'Created By',\n fieldPath: '/nucleicAcid/sugars/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_nucleicAcid_sugars_createdBy', CVDomain: '',\n displayName: 'Sugar Created By',\n dataType: 'string', luceneQueryable: false},\n'Sugar Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/nucleicAcid/sugars/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_nucleicAcid_sugars_lastEdited', CVDomain: '',\n displayName: 'Sugar Last Edited',\n dataType: 'number', luceneQueryable: false},\n'Sugar Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/nucleicAcid/sugars/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_nucleicAcid_sugars_lastEditedBy', CVDomain: '',\n displayName: 'Sugar Last Edited By',\n dataType: 'string', luceneQueryable: false},\n'Sugar Sugar': {fieldName: 'Sugar',\n fieldPath: '/nucleicAcid/sugars/?/sugar', finalField: 'sugar',\n lucenePath: 'root_nucleicAcid_sugars_sugar', CVDomain: '',\n displayName: 'Sugar Sugar',\n dataType: 'string', luceneQueryable: false},\n'Sugar UUID': {fieldName: 'Uuid',\n fieldPath: '/nucleicAcid/sugars/?/uuid', finalField: 'uuid',\n lucenePath: 'root_nucleicAcid_sugars_uuid', CVDomain: '',\n displayName: 'Sugar UUID',\n dataType: 'string', luceneQueryable: false},\n'Nucleic Acid UUID': {fieldName: 'Uuid',\n fieldPath: '/nucleicAcid/uuid', finalField: 'uuid',\n lucenePath: 'root_nucleicAcid_uuid', CVDomain: '',\n displayName: 'Nucleic Acid UUID',\n dataType: 'string', luceneQueryable: false},\n'Polymer Parent Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/polymer/classification/parentSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_polymer_classification_parentSubstance_uuid', CVDomain: '',\n displayName: 'Polymer Parent Substance UUID',\n dataType: 'string', luceneQueryable: false},\n'Display Structure UUID': {fieldName: 'Uuid',\n fieldPath: '/polymer/classification/uuid', finalField: 'uuid',\n lucenePath: 'root_polymer_classification_uuid', CVDomain: '',\n displayName: 'Display Structure UUID',\n dataType: 'string', luceneQueryable: false},\n'Monomer Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/polymer/monomers/?/amount/uuid', finalField: 'uuid',\n lucenePath: 'root_polymer_monomers_amount_uuid', CVDomain: '',\n displayName: 'Monomer Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Monomer Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/polymer/monomers/?/monomerSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_polymer_monomers_monomerSubstance_uuid', CVDomain: '',\n displayName: 'Monomer Substance UUID',\n dataType: 'string', luceneQueryable: false},\n'Monomer UUID': {fieldName: 'Uuid',\n fieldPath: '/polymer/monomers/?/uuid', finalField: 'uuid',\n lucenePath: 'root_polymer_monomers_uuid', CVDomain: '',\n displayName: 'Monomer UUID',\n dataType: 'string', luceneQueryable: false},\n'SRU Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/polymer/structuralUnits/?/amount/uuid', finalField: 'uuid',\n lucenePath: 'root_polymer_structuralUnits_amount_uuid', CVDomain: '',\n displayName: 'SRU Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Polymer UUID': {fieldName: 'Uuid',\n fieldPath: '/polymer/uuid', finalField: 'uuid',\n lucenePath: 'root_polymer_uuid', CVDomain: '',\n displayName: 'Polymer UUID',\n dataType: 'string', luceneQueryable: false},\n'Parameter Created': {fieldName: 'Created',\n fieldPath: '/properties/?/parameters/?/created', finalField: 'created',\n lucenePath: 'root_properties_parameters_created', CVDomain: '',\n displayName: 'Parameter Created',\n dataType: 'number', luceneQueryable: false},\n'Parameter Created By': {fieldName: 'Created By',\n fieldPath: '/properties/?/parameters/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_properties_parameters_createdBy', CVDomain: '',\n displayName: 'Parameter Created By',\n dataType: 'string', luceneQueryable: false},\n'Parameter Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/properties/?/parameters/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_properties_parameters_lastEdited', CVDomain: '',\n displayName: 'Parameter Last Edited',\n dataType: 'number', luceneQueryable: false},\n'Parameter Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/properties/?/parameters/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_properties_parameters_lastEditedBy', CVDomain: '',\n displayName: 'Parameter Last Edited By',\n dataType: 'string', luceneQueryable: false},\n'Parameter Type': {fieldName: 'Type',\n fieldPath: '/properties/?/parameters/?/type', finalField: 'type',\n lucenePath: 'root_properties_parameters_type', CVDomain: '',\n displayName: 'Parameter Type',\n dataType: 'string', luceneQueryable: false},\n'Parameter UUID': {fieldName: 'Uuid',\n fieldPath: '/properties/?/parameters/?/uuid', finalField: 'uuid',\n lucenePath: 'root_properties_parameters_uuid', CVDomain: '',\n displayName: 'Parameter UUID',\n dataType: 'string', luceneQueryable: false},\n'Parameter Value Average': {fieldName: 'Average',\n fieldPath: '/properties/?/parameters/?/value/average', finalField: 'average',\n lucenePath: 'root_properties_parameters_value_average', CVDomain: '',\n displayName: 'Parameter Value Average',\n dataType: 'number', luceneQueryable: false},\n'Parameter Value Created': {fieldName: 'Created',\n fieldPath: '/properties/?/parameters/?/value/created', finalField: 'created',\n lucenePath: 'root_properties_parameters_value_created', CVDomain: '',\n displayName: 'Parameter Value Created',\n dataType: 'number', luceneQueryable: false},\n'Parameter Value Created By': {fieldName: 'Created By',\n fieldPath: '/properties/?/parameters/?/value/createdBy', finalField: 'createdBy',\n lucenePath: 'root_properties_parameters_value_createdBy', CVDomain: '',\n displayName: 'Parameter Value Created By',\n dataType: 'string', luceneQueryable: false},\n'Parameter Value High': {fieldName: 'High',\n fieldPath: '/properties/?/parameters/?/value/high', finalField: 'high',\n lucenePath: 'root_properties_parameters_value_high', CVDomain: '',\n displayName: 'Parameter Value High',\n dataType: 'number', luceneQueryable: false},\n'Parameter Value Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/properties/?/parameters/?/value/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_properties_parameters_value_lastEdited', CVDomain: '',\n displayName: 'Parameter Value Last Edited',\n dataType: 'number', luceneQueryable: false},\n'Parameter Value Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/properties/?/parameters/?/value/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_properties_parameters_value_lastEditedBy', CVDomain: '',\n displayName: 'Parameter Value Last Edited By',\n dataType: 'string', luceneQueryable: false},\n'Parameter Value Low': {fieldName: 'Low',\n fieldPath: '/properties/?/parameters/?/value/low', finalField: 'low',\n lucenePath: 'root_properties_parameters_value_low', CVDomain: '',\n displayName: 'Parameter Value Low',\n dataType: 'number', luceneQueryable: false},\n'Parameter Value Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/properties/?/parameters/?/value/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_properties_parameters_value_nonNumericValue', CVDomain: '',\n displayName: 'Parameter Value Non-Numeric Value',\n dataType: 'string', luceneQueryable: false},\n'Parameter Value Type': {fieldName: 'Type',\n fieldPath: '/properties/?/parameters/?/value/type', finalField: 'type',\n lucenePath: 'root_properties_parameters_value_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Parameter Value Type',\n dataType: 'string', luceneQueryable: false},\n'Parameter Value Units': {fieldName: 'Units',\n fieldPath: '/properties/?/parameters/?/value/units', finalField: 'units',\n lucenePath: 'root_properties_parameters_value_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Parameter Value Units',\n dataType: 'string', luceneQueryable: false},\n'Parameter Value UUID': {fieldName: 'Uuid',\n fieldPath: '/properties/?/parameters/?/value/uuid', finalField: 'uuid',\n lucenePath: 'root_properties_parameters_value_uuid', CVDomain: '',\n displayName: 'Parameter Value UUID',\n dataType: 'string', luceneQueryable: false},\n'Property Type': {fieldName: 'Value type',\n fieldPath: '/properties/?/type', finalField: 'type',\n lucenePath: 'root_properties_type', CVDomain: '',\n displayName: 'Property Type',\n dataType: 'string', luceneQueryable: false},\n'Property UUID': {fieldName: 'Uuid',\n fieldPath: '/properties/?/uuid', finalField: 'uuid',\n lucenePath: 'root_properties_uuid', CVDomain: '',\n displayName: 'Property UUID',\n dataType: 'string', luceneQueryable: false},\n'Value Average': {fieldName: 'Average',\n fieldPath: '/properties/?/value/average', finalField: 'average',\n lucenePath: 'root_properties_value_average', CVDomain: '',\n displayName: 'Value Average',\n dataType: 'number', luceneQueryable: false},\n'Value Created': {fieldName: 'Created',\n fieldPath: '/properties/?/value/created', finalField: 'created',\n lucenePath: 'root_properties_value_created', CVDomain: '',\n displayName: 'Value Created',\n dataType: 'number', luceneQueryable: false},\n'Value Created By': {fieldName: 'Created By',\n fieldPath: '/properties/?/value/createdBy', finalField: 'createdBy',\n lucenePath: 'root_properties_value_createdBy', CVDomain: '',\n displayName: 'Value Created By',\n dataType: 'string', luceneQueryable: false},\n'Value High': {fieldName: 'High',\n fieldPath: '/properties/?/value/high', finalField: 'high',\n lucenePath: 'root_properties_value_high', CVDomain: '',\n displayName: 'Value High',\n dataType: 'number', luceneQueryable: false},\n'Value High Limit': {fieldName: 'High Limit',\n fieldPath: '/properties/?/value/highLimit', finalField: 'highLimit',\n lucenePath: 'root_properties_value_highLimit', CVDomain: '',\n displayName: 'Value High Limit',\n dataType: 'number', luceneQueryable: false},\n'Value Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/properties/?/value/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_properties_value_lastEdited', CVDomain: '',\n displayName: 'Value Last Edited',\n dataType: 'number', luceneQueryable: false},\n'Value Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/properties/?/value/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_properties_value_lastEditedBy', CVDomain: '',\n displayName: 'Value Last Edited By',\n dataType: 'string', luceneQueryable: false},\n'Value Low': {fieldName: 'Low',\n fieldPath: '/properties/?/value/low', finalField: 'low',\n lucenePath: 'root_properties_value_low', CVDomain: '',\n displayName: 'Value Low',\n dataType: 'number', luceneQueryable: false},\n'Value Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/properties/?/value/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_properties_value_lowLimit', CVDomain: '',\n displayName: 'Value Low Limit',\n dataType: 'number', luceneQueryable: false},\n'Value Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/properties/?/value/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_properties_value_nonNumericValue', CVDomain: '',\n displayName: 'Value Non-Numeric Value',\n dataType: 'string', luceneQueryable: false},\n'Value Type': {fieldName: 'Type',\n fieldPath: '/properties/?/value/type', finalField: 'type',\n lucenePath: 'root_properties_value_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Value Type',\n dataType: 'string', luceneQueryable: false},\n'Value Units': {fieldName: 'Units',\n fieldPath: '/properties/?/value/units', finalField: 'units',\n lucenePath: 'root_properties_value_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Value Units',\n dataType: 'string', luceneQueryable: false},\n'Value UUID': {fieldName: 'Uuid',\n fieldPath: '/properties/?/value/uuid', finalField: 'uuid',\n lucenePath: 'root_properties_value_uuid', CVDomain: '',\n displayName: 'Value UUID',\n dataType: 'string', luceneQueryable: false},\n'Protein Glycosylation UUID': {fieldName: 'Uuid',\n fieldPath: '/protein/glycosylation/uuid', finalField: 'uuid',\n lucenePath: 'root_protein_glycosylation_uuid', CVDomain: '',\n displayName: 'Protein Glycosylation UUID',\n dataType: 'string', luceneQueryable: false},\n'Other Link UUID': {fieldName: 'Uuid',\n fieldPath: '/protein/otherLinks/?/uuid', finalField: 'uuid',\n lucenePath: 'root_protein_otherLinks_uuid', CVDomain: '',\n displayName: 'Other Link UUID',\n dataType: 'string', luceneQueryable: false},\n'Protein Subunit UUID': {fieldName: 'Uuid',\n fieldPath: '/protein/subunits/?/uuid', finalField: 'uuid',\n lucenePath: 'root_protein_subunits_uuid', CVDomain: '',\n displayName: 'Protein Subunit UUID',\n dataType: 'string', luceneQueryable: false},\n'Protein UUID': {fieldName: 'Uuid',\n fieldPath: '/protein/uuid', finalField: 'uuid',\n lucenePath: 'root_protein_uuid', CVDomain: '',\n displayName: 'Protein UUID',\n dataType: 'string', luceneQueryable: false},\n'Reference UUID': {fieldName: 'Uuid',\n fieldPath: '/references/?/uuid', finalField: 'uuid',\n lucenePath: 'root_references_uuid', CVDomain: '',\n displayName: 'Reference UUID',\n dataType: 'string', luceneQueryable: false},\n'Relationship Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/relationships/?/amount/uuid', finalField: 'uuid',\n lucenePath: 'root_relationships_amount_uuid', CVDomain: '',\n displayName: 'Relationship Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Mediator Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/relationships/?/mediatorSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_relationships_mediatorSubstance_uuid', CVDomain: '',\n displayName: 'Mediator Substance UUID',\n dataType: 'string', luceneQueryable: false},\n'Related Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/relationships/?/relatedSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_relationships_relatedSubstance_uuid', CVDomain: '',\n displayName: 'Related Substance UUID',\n dataType: 'string', luceneQueryable: false},\n'Relationship UUID': {fieldName: 'Uuid',\n fieldPath: '/relationships/?/uuid', finalField: 'uuid',\n lucenePath: 'root_relationships_uuid', CVDomain: '',\n displayName: 'Relationship UUID',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent (m) UUID': {fieldName: 'Uuid',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/uuid', finalField: 'uuid',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_uuid', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) UUID',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent (p) UUID': {fieldName: 'Uuid',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/uuid', finalField: 'uuid',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_uuid', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) UUID',\n dataType: 'boolean', luceneQueryable: false},\n'St. Div. Hybrid Parent UUID': {fieldName: 'Uuid',\n fieldPath: '/structurallyDiverse/parentSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_structurallyDiverse_parentSubstance_uuid', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent UUID',\n dataType: 'string', luceneQueryable: false},\n'Structurally Diverse UUID': {fieldName: 'Uuid',\n fieldPath: '/structurallyDiverse/uuid', finalField: 'uuid',\n lucenePath: 'root_structurallyDiverse_uuid', CVDomain: '',\n displayName: 'Structurally Diverse UUID',\n dataType: 'array ', luceneQueryable: false},\n'Record Uuid': {fieldName: 'Uuid',\n fieldPath: '/uuid', finalField: 'uuid',\n lucenePath: 'root_uuid', CVDomain: '',\n displayName: 'Record Uuid',\n dataType: 'boolean', luceneQueryable: false},\n'Mixture Component Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/mixture/components/?/substance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_mixture_components_substance_linkingID', CVDomain: '',\n displayName: 'Mixture Component Substance Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Mixture Component Substance Name': {fieldName: 'Name',\n fieldPath: '/mixture/components/?/substance/name', finalField: 'name',\n lucenePath: 'root_mixture_components_substance_name', CVDomain: '',\n displayName: 'Mixture Component Substance Name',\n dataType: 'string', luceneQueryable: false},\n'Mixture Parent Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/mixture/parentSubstance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_mixture_parentSubstance_linkingID', CVDomain: '',\n displayName: 'Mixture Parent Substance Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Mixture Parent Substance Name': {fieldName: 'Name',\n fieldPath: '/mixture/parentSubstance/name', finalField: 'name',\n lucenePath: 'root_mixture_parentSubstance_name', CVDomain: '',\n displayName: 'Mixture Parent Substance Name',\n dataType: 'string', luceneQueryable: false},\n'Agent Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_linkingID', CVDomain: '',\n displayName: 'Agent Substance Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Agent Substance Name': {fieldName: 'Name',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/name', finalField: 'name',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_name', CVDomain: '',\n displayName: 'Agent Substance Name',\n dataType: 'string', luceneQueryable: false},\n'Molecular Fragment Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/linkingID', finalField: 'linkingID',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_linkingID', CVDomain: '',\n displayName: 'Molecular Fragment Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Molecular Fragment Name': {fieldName: 'Name',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/name', finalField: 'name',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_name', CVDomain: '',\n displayName: 'Molecular Fragment Name',\n dataType: 'string', luceneQueryable: false},\n'Moiety Hash': {fieldName: 'Hash',\n fieldPath: '/moieties/?/hash', finalField: 'hash',\n lucenePath: 'root_moieties_hash', CVDomain: '',\n displayName: 'Moiety Hash',\n dataType: 'string', luceneQueryable: false},\n'Moiety ID': {fieldName: 'Id',\n fieldPath: '/moieties/?/id', finalField: 'id',\n lucenePath: 'root_moieties_id', CVDomain: '',\n displayName: 'Moiety ID',\n dataType: 'string', luceneQueryable: false},\n'Linkage Sites Shorthand': {fieldName: 'Sites Shorthand',\n fieldPath: '/nucleicAcid/linkages/?/sitesShorthand', finalField: 'sitesShorthand',\n lucenePath: 'root_nucleicAcid_linkages_sitesShorthand', CVDomain: '',\n displayName: 'Linkage Sites Shorthand',\n dataType: 'string', luceneQueryable: false},\n'Nucleic Acid Subunit Length': {fieldName: 'Length',\n fieldPath: '/nucleicAcid/subunits/?/length', finalField: 'length',\n lucenePath: 'root_nucleicAcid_subunits_length', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Length',\n dataType: 'number', luceneQueryable: false},\n'Sugar Sites Shorthand': {fieldName: 'Sites Shorthand',\n fieldPath: '/nucleicAcid/sugars/?/sitesShorthand', finalField: 'sitesShorthand',\n lucenePath: 'root_nucleicAcid_sugars_sitesShorthand', CVDomain: '',\n displayName: 'Sugar Sites Shorthand',\n dataType: 'string', luceneQueryable: false},\n'Polymer Parent Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/polymer/classification/parentSubstance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_polymer_classification_parentSubstance_linkingID', CVDomain: '',\n displayName: 'Polymer Parent Substance Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Polymer Parent Substance Name': {fieldName: 'Name',\n fieldPath: '/polymer/classification/parentSubstance/name', finalField: 'name',\n lucenePath: 'root_polymer_classification_parentSubstance_name', CVDomain: '',\n displayName: 'Polymer Parent Substance Name',\n dataType: 'string', luceneQueryable: false},\n'Display Structure ID': {fieldName: 'Id',\n fieldPath: '/polymer/displayStructure/id', finalField: 'id',\n lucenePath: 'root_polymer_displayStructure_id', CVDomain: '',\n displayName: 'Display Structure ID',\n dataType: 'string', luceneQueryable: false},\n'Idealized Structure ID': {fieldName: 'Id',\n fieldPath: '/polymer/idealizedStructure/id', finalField: 'id',\n lucenePath: 'root_polymer_idealizedStructure_id', CVDomain: '',\n displayName: 'Idealized Structure ID',\n dataType: 'string', luceneQueryable: false},\n'Monomer Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/polymer/monomers/?/monomerSubstance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_polymer_monomers_monomerSubstance_linkingID', CVDomain: '',\n displayName: 'Monomer Substance Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Monomer Substance Original Name': {fieldName: 'Name',\n fieldPath: '/polymer/monomers/?/monomerSubstance/name', finalField: 'name',\n lucenePath: 'root_polymer_monomers_monomerSubstance_name', CVDomain: '',\n displayName: 'Monomer Substance Original Name',\n dataType: 'string', luceneQueryable: false},\n'Parameter Name': {fieldName: 'Name',\n fieldPath: '/properties/?/parameters/?/name', finalField: 'name',\n lucenePath: 'root_properties_parameters_name', CVDomain: '',\n displayName: 'Parameter Name',\n dataType: 'string', luceneQueryable: false},\n'Disulfide Link Sites Shorthand': {fieldName: 'Sites Shorthand',\n fieldPath: '/protein/disulfideLinks/?/sitesShorthand', finalField: 'sitesShorthand',\n lucenePath: 'root_protein_disulfideLinks_sitesShorthand', CVDomain: '',\n displayName: 'Disulfide Link Sites Shorthand',\n dataType: 'string', luceneQueryable: false},\n'Protein Subunit Length': {fieldName: 'Length',\n fieldPath: '/protein/subunits/?/length', finalField: 'length',\n lucenePath: 'root_protein_subunits_length', CVDomain: '',\n displayName: 'Protein Subunit Length',\n dataType: 'number', luceneQueryable: false},\n'Mediator Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/relationships/?/mediatorSubstance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_relationships_mediatorSubstance_linkingID', CVDomain: '',\n displayName: 'Mediator Substance Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Mediator Substance Name': {fieldName: 'Name',\n fieldPath: '/relationships/?/mediatorSubstance/name', finalField: 'name',\n lucenePath: 'root_relationships_mediatorSubstance_name', CVDomain: '',\n displayName: 'Mediator Substance Name',\n dataType: 'string', luceneQueryable: false},\n'Related Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/relationships/?/relatedSubstance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_relationships_relatedSubstance_linkingID', CVDomain: '',\n displayName: 'Related Substance Linking ID',\n dataType: 'string', luceneQueryable: false},\n'Related Substance Original Name': {fieldName: 'Name',\n fieldPath: '/relationships/?/relatedSubstance/name', finalField: 'name',\n lucenePath: 'root_relationships_relatedSubstance_name', CVDomain: '',\n displayName: 'Related Substance Original Name',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent (m) Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/linkingID', finalField: 'linkingID',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_linkingID', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Linking ID',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent (m) Name': {fieldName: 'Name',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/name', finalField: 'name',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_name', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Name',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent (p) Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/linkingID', finalField: 'linkingID',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_linkingID', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Linking ID',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent (p) Name': {fieldName: 'Name',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/name', finalField: 'name',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_name', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Name',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/structurallyDiverse/parentSubstance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_structurallyDiverse_parentSubstance_linkingID', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Linking ID',\n dataType: 'number', luceneQueryable: false},\n'St. Div. Hybrid Parent Name': {fieldName: 'Name',\n fieldPath: '/structurallyDiverse/parentSubstance/name', finalField: 'name',\n lucenePath: 'root_structurallyDiverse_parentSubstance_name', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Name',\n dataType: 'string', luceneQueryable: false},\n'Structure Hash': {fieldName: 'Hash',\n fieldPath: '/structure/hash', finalField: 'hash',\n lucenePath: 'root_structure_hash', CVDomain: '',\n displayName: 'Structure Hash',\n dataType: 'string', luceneQueryable: false},\n'Structure ID': {fieldName: 'Id',\n fieldPath: '/structure/id', finalField: 'id',\n lucenePath: 'root_structure_id', CVDomain: '',\n displayName: 'Structure ID',\n dataType: 'string', luceneQueryable: false},\n'Record Codes': {fieldName: 'Codes',\n fieldPath: '/codes', finalField: 'codes',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Codes',\n dataType: 'array ', luceneQueryable: false},\n'Code References': {fieldName: 'References',\n fieldPath: '/codes/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Code References',\n dataType: 'array ', luceneQueryable: false},\n'Mixture': {fieldName: 'Mixture',\n fieldPath: '/mixture', finalField: 'mixture',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture',\n dataType: 'object ', luceneQueryable: false},\n'Mixture Components': {fieldName: 'Components',\n fieldPath: '/mixture/components', finalField: 'components',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture Components',\n dataType: 'array ', luceneQueryable: false},\n'Mixture Component References': {fieldName: 'References',\n fieldPath: '/mixture/components/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture Component References',\n dataType: 'array ', luceneQueryable: false},\n'Mixture Component Substance': {fieldName: 'Substance',\n fieldPath: '/mixture/components/?/substance', finalField: 'substance',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture Component Substance',\n dataType: 'object ', luceneQueryable: false},\n'Mixture Component Substance References': {fieldName: 'References',\n fieldPath: '/mixture/components/?/substance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture Component Substance References',\n dataType: 'array ', luceneQueryable: false},\n'Mixture Parent Substance': {fieldName: 'Parent Substance',\n fieldPath: '/mixture/parentSubstance', finalField: 'parentSubstance',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture Parent Substance',\n dataType: 'object ', luceneQueryable: false},\n'Mixture Parent Substance References': {fieldName: 'References',\n fieldPath: '/mixture/parentSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture Parent Substance References',\n dataType: 'array ', luceneQueryable: false},\n'Mixture References': {fieldName: 'References',\n fieldPath: '/mixture/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Mixture References',\n dataType: 'array ', luceneQueryable: false},\n'Modifications': {fieldName: 'Modifications',\n fieldPath: '/modifications', finalField: 'modifications',\n lucenePath: '', CVDomain: '',\n displayName: 'Modifications',\n dataType: 'object ', luceneQueryable: false},\n'Agent Modifications': {fieldName: 'Agent Modifications',\n fieldPath: '/modifications/agentModifications', finalField: 'agentModifications',\n lucenePath: '', CVDomain: '',\n displayName: 'Agent Modifications',\n dataType: 'array ', luceneQueryable: false},\n'Agent Modification Agent Substance': {fieldName: 'Agent Substance',\n fieldPath: '/modifications/agentModifications/?/agentSubstance', finalField: 'agentSubstance',\n lucenePath: '', CVDomain: '',\n displayName: 'Agent Modification Agent Substance',\n dataType: 'object ', luceneQueryable: false},\n'Agent Substance References': {fieldName: 'References',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Agent Substance References',\n dataType: 'array ', luceneQueryable: false},\n'Agent Modification Amount': {fieldName: 'Amount',\n fieldPath: '/modifications/agentModifications/?/amount', finalField: 'amount',\n lucenePath: '', CVDomain: '',\n displayName: 'Agent Modification Amount',\n dataType: 'object ', luceneQueryable: false},\n'Agent Modification Amount References': {fieldName: 'References',\n fieldPath: '/modifications/agentModifications/?/amount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Agent Modification Amount References',\n dataType: 'array ', luceneQueryable: false},\n'Agent Modification References': {fieldName: 'References',\n fieldPath: '/modifications/agentModifications/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Agent Modification References',\n dataType: 'array ', luceneQueryable: false},\n'Physical Modifications': {fieldName: 'Physical Modifications',\n fieldPath: '/modifications/physicalModifications', finalField: 'physicalModifications',\n lucenePath: '', CVDomain: '',\n displayName: 'Physical Modifications',\n dataType: 'array ', luceneQueryable: false},\n'Physical Modification Parameters': {fieldName: 'Parameters',\n fieldPath: '/modifications/physicalModifications/?/parameters', finalField: 'parameters',\n lucenePath: '', CVDomain: 'PHYSICAL_PARAMETERS',\n displayName: 'Physical Modification Parameters',\n dataType: 'array ', luceneQueryable: false},\n'Physical Modification Parameter Amount': {fieldName: 'Amount',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount', finalField: 'amount',\n lucenePath: '', CVDomain: '',\n displayName: 'Physical Modification Parameter Amount',\n dataType: 'object ', luceneQueryable: false},\n'Physical Modification Amount References': {fieldName: 'References',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Physical Modification Amount References',\n dataType: 'array ', luceneQueryable: false},\n'Physical Modification Parameter References': {fieldName: 'References',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Physical Modification Parameter References',\n dataType: 'array ', luceneQueryable: false},\n'Physical Modification References': {fieldName: 'References',\n fieldPath: '/modifications/physicalModifications/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Physical Modification References',\n dataType: 'array ', luceneQueryable: false},\n'Modification References': {fieldName: 'References',\n fieldPath: '/modifications/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Modification References',\n dataType: 'array ', luceneQueryable: false},\n'Structural Modifications': {fieldName: 'Structural Modifications',\n fieldPath: '/modifications/structuralModifications', finalField: 'structuralModifications',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modifications',\n dataType: 'array ', luceneQueryable: false},\n'Structural Modification Extent Amount': {fieldName: 'Extent Amount',\n fieldPath: '/modifications/structuralModifications/?/extentAmount', finalField: 'extentAmount',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modification Extent Amount',\n dataType: 'object ', luceneQueryable: false},\n'Structural Modification Extent Amount References': {fieldName: 'References',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modification Extent Amount References',\n dataType: 'array ', luceneQueryable: false},\n'Structural Modification Molecular Fragment': {fieldName: 'Molecular Fragment',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment', finalField: 'molecularFragment',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modification Molecular Fragment',\n dataType: 'object ', luceneQueryable: false},\n'Molecular Fragment References': {fieldName: 'References',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Molecular Fragment References',\n dataType: 'array ', luceneQueryable: false},\n'Structural Modification References': {fieldName: 'References',\n fieldPath: '/modifications/structuralModifications/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modification References',\n dataType: 'array ', luceneQueryable: false},\n'Structural Modification Sites': {fieldName: 'Sites',\n fieldPath: '/modifications/structuralModifications/?/sites', finalField: 'sites',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modification Sites',\n dataType: 'array ', luceneQueryable: false},\n'Structural Modification Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/modifications/structuralModifications/?/sites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modification Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'Structural Modification Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/modifications/structuralModifications/?/sites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Structural Modification Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Record Moieties': {fieldName: 'Moieties',\n fieldPath: '/moieties', finalField: 'moieties',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Moieties',\n dataType: 'array ', luceneQueryable: false},\n'Moiety Count Amount': {fieldName: 'Count Amount',\n fieldPath: '/moieties/?/countAmount', finalField: 'countAmount',\n lucenePath: '', CVDomain: '',\n displayName: 'Moiety Count Amount',\n dataType: 'object ', luceneQueryable: false},\n'Count Amount References': {fieldName: 'References',\n fieldPath: '/moieties/?/countAmount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Count Amount References',\n dataType: 'array ', luceneQueryable: false},\n'Moiety Molfile': {fieldName: 'Molfile',\n fieldPath: '/moieties/?/molfile', finalField: 'molfile',\n lucenePath: '', CVDomain: '',\n displayName: 'Moiety Molfile',\n dataType: 'string', luceneQueryable: false},\n'Moiety References': {fieldName: 'References',\n fieldPath: '/moieties/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Moiety References',\n dataType: 'array ', luceneQueryable: false},\n'Moiety Smiles': {fieldName: 'Smiles',\n fieldPath: '/moieties/?/smiles', finalField: 'smiles',\n lucenePath: '', CVDomain: '',\n displayName: 'Moiety Smiles',\n dataType: 'string', luceneQueryable: false},\n'Record Names': {fieldName: 'Names',\n fieldPath: '/names', finalField: 'names',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Names',\n dataType: 'array ', luceneQueryable: false},\n'Name Nameorgs': {fieldName: 'Naming Organizations',\n fieldPath: '/names/?/nameOrgs', finalField: 'nameOrgs',\n lucenePath: '', CVDomain: '',\n displayName: 'Name Nameorgs',\n dataType: 'array ', luceneQueryable: false},\n'Naming Organization References': {fieldName: 'References',\n fieldPath: '/names/?/nameOrgs/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Naming Organization References',\n dataType: 'array ', luceneQueryable: false},\n'Name References': {fieldName: 'References',\n fieldPath: '/names/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Name References',\n dataType: 'array ', luceneQueryable: false},\n'Record Notes': {fieldName: 'Notes',\n fieldPath: '/notes', finalField: 'notes',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Notes',\n dataType: 'array ', luceneQueryable: false},\n'Note References': {fieldName: 'References',\n fieldPath: '/notes/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Note References',\n dataType: 'array ', luceneQueryable: false},\n'Record Nucleic Acid': {fieldName: 'Nucleicacid',\n fieldPath: '/nucleicAcid', finalField: 'nucleicAcid',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Nucleic Acid',\n dataType: 'object ', luceneQueryable: false},\n'Nucleic Acid Linkages': {fieldName: 'Linkages',\n fieldPath: '/nucleicAcid/linkages', finalField: 'linkages',\n lucenePath: '', CVDomain: '',\n displayName: 'Nucleic Acid Linkages',\n dataType: 'array ', luceneQueryable: false},\n'Linkage References': {fieldName: 'References',\n fieldPath: '/nucleicAcid/linkages/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Linkage References',\n dataType: 'array ', luceneQueryable: false},\n'Linkage Sites': {fieldName: 'Sites',\n fieldPath: '/nucleicAcid/linkages/?/sites', finalField: 'sites',\n lucenePath: '', CVDomain: '',\n displayName: 'Linkage Sites',\n dataType: 'array ', luceneQueryable: false},\n'Linkage Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/nucleicAcid/linkages/?/sites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Linkage Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'Linkage Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/nucleicAcid/linkages/?/sites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Linkage Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Nucleic Acid References': {fieldName: 'References',\n fieldPath: '/nucleicAcid/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Nucleic Acid References',\n dataType: 'array ', luceneQueryable: false},\n'Nucleic Acid Subunits': {fieldName: 'Subunits',\n fieldPath: '/nucleicAcid/subunits', finalField: 'subunits',\n lucenePath: '', CVDomain: '',\n displayName: 'Nucleic Acid Subunits',\n dataType: 'array ', luceneQueryable: false},\n'Nucleic Acid Subunit References': {fieldName: 'References',\n fieldPath: '/nucleicAcid/subunits/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Nucleic Acid Subunit References',\n dataType: 'array ', luceneQueryable: false},\n'Nucleic Acid Sugars': {fieldName: 'Sugars',\n fieldPath: '/nucleicAcid/sugars', finalField: 'sugars',\n lucenePath: '', CVDomain: 'NUCLEIC_ACID_SUGAR',\n displayName: 'Nucleic Acid Sugars',\n dataType: 'array ', luceneQueryable: false},\n'Sugar References': {fieldName: 'References',\n fieldPath: '/nucleicAcid/sugars/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Sugar References',\n dataType: 'array ', luceneQueryable: false},\n'Sugar Sites': {fieldName: 'Sites',\n fieldPath: '/nucleicAcid/sugars/?/sites', finalField: 'sites',\n lucenePath: '', CVDomain: '',\n displayName: 'Sugar Sites',\n dataType: 'array ', luceneQueryable: false},\n'Sugar Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/nucleicAcid/sugars/?/sites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Sugar Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'Sugar Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/nucleicAcid/sugars/?/sites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Sugar Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Record Polymer': {fieldName: 'Polymer',\n fieldPath: '/polymer', finalField: 'polymer',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Polymer',\n dataType: 'object ', luceneQueryable: false},\n'Polymer Classification': {fieldName: 'Classification',\n fieldPath: '/polymer/classification', finalField: 'classification',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer Classification',\n dataType: 'object ', luceneQueryable: false},\n'Polymer Classification Parent Substance': {fieldName: 'Parent Substance',\n fieldPath: '/polymer/classification/parentSubstance', finalField: 'parentSubstance',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer Classification Parent Substance',\n dataType: 'object ', luceneQueryable: false},\n'Polymer Parent Substance References': {fieldName: 'References',\n fieldPath: '/polymer/classification/parentSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer Parent Substance References',\n dataType: 'array ', luceneQueryable: false},\n'Polymer Classification References': {fieldName: 'References',\n fieldPath: '/polymer/classification/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer Classification References',\n dataType: 'array ', luceneQueryable: false},\n'Polymer Display Structure': {fieldName: 'Display Structure',\n fieldPath: '/polymer/displayStructure', finalField: 'displayStructure',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer Display Structure',\n dataType: 'object ', luceneQueryable: false},\n'Display Structure Molfile': {fieldName: 'Molfile',\n fieldPath: '/polymer/displayStructure/molfile', finalField: 'molfile',\n lucenePath: '', CVDomain: '',\n displayName: 'Display Structure Molfile',\n dataType: 'string', luceneQueryable: false},\n'Display Structure References': {fieldName: 'References',\n fieldPath: '/polymer/displayStructure/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Display Structure References',\n dataType: 'array ', luceneQueryable: false},\n'Display Structure Smiles': {fieldName: 'Smiles',\n fieldPath: '/polymer/displayStructure/smiles', finalField: 'smiles',\n lucenePath: '', CVDomain: '',\n displayName: 'Display Structure Smiles',\n dataType: 'string', luceneQueryable: false},\n'Polymer Idealized Structure': {fieldName: 'Idealized Structure',\n fieldPath: '/polymer/idealizedStructure', finalField: 'idealizedStructure',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer Idealized Structure',\n dataType: 'object ', luceneQueryable: false},\n'Idealized Structure Molfile': {fieldName: 'Molfile',\n fieldPath: '/polymer/idealizedStructure/molfile', finalField: 'molfile',\n lucenePath: '', CVDomain: '',\n displayName: 'Idealized Structure Molfile',\n dataType: 'string', luceneQueryable: false},\n'Idealized Structure References': {fieldName: 'References',\n fieldPath: '/polymer/idealizedStructure/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Idealized Structure References',\n dataType: 'array ', luceneQueryable: false},\n'Idealized Structure Smiles': {fieldName: 'Smiles',\n fieldPath: '/polymer/idealizedStructure/smiles', finalField: 'smiles',\n lucenePath: '', CVDomain: '',\n displayName: 'Idealized Structure Smiles',\n dataType: 'string', luceneQueryable: false},\n'Polymer Monomers': {fieldName: 'Monomers',\n fieldPath: '/polymer/monomers', finalField: 'monomers',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer Monomers',\n dataType: 'array ', luceneQueryable: false},\n'Monomer Amount': {fieldName: 'Amount',\n fieldPath: '/polymer/monomers/?/amount', finalField: 'amount',\n lucenePath: '', CVDomain: '',\n displayName: 'Monomer Amount',\n dataType: 'object ', luceneQueryable: false},\n'Monomer Amount References': {fieldName: 'References',\n fieldPath: '/polymer/monomers/?/amount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Monomer Amount References',\n dataType: 'array ', luceneQueryable: false},\n'Monomer Monomer Substance': {fieldName: 'Monomer Substance',\n fieldPath: '/polymer/monomers/?/monomerSubstance', finalField: 'monomerSubstance',\n lucenePath: '', CVDomain: '',\n displayName: 'Monomer Monomer Substance',\n dataType: 'object ', luceneQueryable: false},\n'Monomer Substance References': {fieldName: 'References',\n fieldPath: '/polymer/monomers/?/monomerSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Monomer Substance References',\n dataType: 'array ', luceneQueryable: false},\n'Monomer References': {fieldName: 'References',\n fieldPath: '/polymer/monomers/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Monomer References',\n dataType: 'array ', luceneQueryable: false},\n'Polymer References': {fieldName: 'References',\n fieldPath: '/polymer/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Polymer References',\n dataType: 'array ', luceneQueryable: false},\n'SRU Structuralunits': {fieldName: 'Structural Units',\n fieldPath: '/polymer/structuralUnits', finalField: 'structuralUnits',\n lucenePath: '', CVDomain: '',\n displayName: 'SRU Structuralunits',\n dataType: 'array ', luceneQueryable: false},\n'SRU Amount References': {fieldName: 'References',\n fieldPath: '/polymer/structuralUnits/?/amount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'SRU Amount References',\n dataType: 'array ', luceneQueryable: false},\n'SRU Amount Attachment Map': {fieldName: 'Attachment Map',\n fieldPath: '/polymer/structuralUnits/?/attchmentMap', finalField: 'attachmentMap',\n lucenePath: '', CVDomain: '',\n displayName: 'SRU Amount Attachment Map',\n dataType: 'object ', luceneQueryable: false},\n'Record Properties': {fieldName: 'Properties',\n fieldPath: '/properties', finalField: 'properties',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Properties',\n dataType: 'array ', luceneQueryable: false},\n'Parameter References': {fieldName: 'References',\n fieldPath: '/properties/?/parameters/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Parameter References',\n dataType: 'array ', luceneQueryable: false},\n'Parameter Value': {fieldName: 'Value',\n fieldPath: '/properties/?/parameters/?/value', finalField: 'value',\n lucenePath: '', CVDomain: '',\n displayName: 'Parameter Value',\n dataType: 'object ', luceneQueryable: false},\n'Parameter Value References': {fieldName: 'References',\n fieldPath: '/properties/?/parameters/?/value/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Parameter Value References',\n dataType: 'array ', luceneQueryable: false},\n'Property References': {fieldName: 'References',\n fieldPath: '/properties/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Property References',\n dataType: 'array ', luceneQueryable: false},\n'Value References': {fieldName: 'References',\n fieldPath: '/properties/?/value/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Value References',\n dataType: 'array ', luceneQueryable: false},\n'Record Protein': {fieldName: 'Protein',\n fieldPath: '/protein', finalField: 'protein',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Protein',\n dataType: 'object ', luceneQueryable: false},\n'Protein Disulfide Links': {fieldName: 'Disulfide Links',\n fieldPath: '/protein/disulfideLinks', finalField: 'disulfideLinks',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Disulfide Links',\n dataType: 'array ', luceneQueryable: false},\n'Disulfide Link Sites': {fieldName: 'Sites',\n fieldPath: '/protein/disulfideLinks/?/sites', finalField: 'sites',\n lucenePath: '', CVDomain: '',\n displayName: 'Disulfide Link Sites',\n dataType: 'array ', luceneQueryable: false},\n'Disulfide Link Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/protein/disulfideLinks/?/sites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Disulfide Link Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'Disulfide Link Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/protein/disulfideLinks/?/sites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Disulfide Link Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Protein Glycosylation': {fieldName: 'Glycosylation',\n fieldPath: '/protein/glycosylation', finalField: 'glycosylation',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Glycosylation',\n dataType: 'object ', luceneQueryable: false},\n'Protein Glycosylation C Glycosylation Sites': {fieldName: 'C Glycosylation Sites',\n fieldPath: '/protein/glycosylation/CGlycosylationSites', finalField: 'CGlycosylationSites',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Glycosylation C Glycosylation Sites',\n dataType: 'array ', luceneQueryable: false},\n'C Glycosylation Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/protein/glycosylation/CGlycosylationSites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'C Glycosylation Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'C Glycosylation Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/protein/glycosylation/CGlycosylationSites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'C Glycosylation Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Protein Glycosylation N Glycosylation Sites': {fieldName: 'N-Glycosylation Sites',\n fieldPath: '/protein/glycosylation/NGlycosylationSites', finalField: 'NGlycosylationSites',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Glycosylation N Glycosylation Sites',\n dataType: 'array ', luceneQueryable: false},\n'N Glycosylation Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/protein/glycosylation/NGlycosylationSites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'N Glycosylation Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'N Glycosylation Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/protein/glycosylation/NGlycosylationSites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'N Glycosylation Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Protein Glycosylation O Glycosylation Sites': {fieldName: 'O-Glycosylation Sites',\n fieldPath: '/protein/glycosylation/OGlycosylationSites', finalField: 'OGlycosylationSites',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Glycosylation O Glycosylation Sites',\n dataType: 'array ', luceneQueryable: false},\n'O Glycosylation Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/protein/glycosylation/OGlycosylationSites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'O Glycosylation Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'O Glycosylation Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/protein/glycosylation/OGlycosylationSites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'O Glycosylation Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Protein Glycosylation References': {fieldName: 'References',\n fieldPath: '/protein/glycosylation/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Glycosylation References',\n dataType: 'array ', luceneQueryable: false},\n'Protein Otherlinks': {fieldName: 'Other Links',\n fieldPath: '/protein/otherLinks', finalField: 'otherLinks',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Otherlinks',\n dataType: 'array ', luceneQueryable: false},\n'Other Link References': {fieldName: 'References',\n fieldPath: '/protein/otherLinks/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Other Link References',\n dataType: 'array ', luceneQueryable: false},\n'Other Link Sites': {fieldName: 'Sites',\n fieldPath: '/protein/otherLinks/?/sites', finalField: 'sites',\n lucenePath: '', CVDomain: '',\n displayName: 'Other Link Sites',\n dataType: 'array ', luceneQueryable: false},\n'Other Link Site Residue Index': {fieldName: 'Residue Index',\n fieldPath: '/protein/otherLinks/?/sites/?/residueIndex', finalField: 'residueIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Other Link Site Residue Index',\n dataType: 'number', luceneQueryable: false},\n'Other Link Site Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/protein/otherLinks/?/sites/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: '', CVDomain: '',\n displayName: 'Other Link Site Subunit Index',\n dataType: 'number', luceneQueryable: false},\n'Protein References': {fieldName: 'References',\n fieldPath: '/protein/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein References',\n dataType: 'array ', luceneQueryable: false},\n'Protein Subunits': {fieldName: 'Subunits',\n fieldPath: '/protein/subunits', finalField: 'subunits',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Subunits',\n dataType: 'array ', luceneQueryable: false},\n'Protein Subunit References': {fieldName: 'References',\n fieldPath: '/protein/subunits/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Protein Subunit References',\n dataType: 'array ', luceneQueryable: false},\n'Record References': {fieldName: 'References',\n fieldPath: '/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Record References',\n dataType: 'array ', luceneQueryable: false},\n'Record Relationships': {fieldName: 'Relationships',\n fieldPath: '/relationships', finalField: 'relationships',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Relationships',\n dataType: 'array ', luceneQueryable: false},\n'Relationship Amount': {fieldName: 'Amount',\n fieldPath: '/relationships/?/amount', finalField: 'amount',\n lucenePath: '', CVDomain: '',\n displayName: 'Relationship Amount',\n dataType: 'object ', luceneQueryable: false},\n'Relationship Amount References': {fieldName: 'References',\n fieldPath: '/relationships/?/amount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Relationship Amount References',\n dataType: 'array ', luceneQueryable: false},\n'Relationship Mediator Substance': {fieldName: 'Mediator Substance',\n fieldPath: '/relationships/?/mediatorSubstance', finalField: 'mediatorSubstance',\n lucenePath: '', CVDomain: '',\n displayName: 'Relationship Mediator Substance',\n dataType: 'object ', luceneQueryable: false},\n'Mediator Substance References': {fieldName: 'References',\n fieldPath: '/relationships/?/mediatorSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Mediator Substance References',\n dataType: 'array ', luceneQueryable: false},\n'Relationship References': {fieldName: 'References',\n fieldPath: '/relationships/?/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Relationship References',\n dataType: 'array ', luceneQueryable: false},\n'Relationship Related Substance': {fieldName: 'Related Substance',\n fieldPath: '/relationships/?/relatedSubstance', finalField: 'relatedSubstance',\n lucenePath: '', CVDomain: '',\n displayName: 'Relationship Related Substance',\n dataType: 'object ', luceneQueryable: false},\n'Related Substance References': {fieldName: 'References',\n fieldPath: '/relationships/?/relatedSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Related Substance References',\n dataType: 'array ', luceneQueryable: false},\n'Record Structurally Diverse': {fieldName: 'Structurally Diverse',\n fieldPath: '/structurallyDiverse', finalField: 'structurallyDiverse',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Structurally Diverse',\n dataType: 'array ', luceneQueryable: false},\n'Structurally Diverse Hybrid Species Maternal Organism': {fieldName: 'Hybrid Species Maternal Organism',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism', finalField: 'hybridSpeciesMaternalOrganism',\n lucenePath: '', CVDomain: '',\n displayName: 'Structurally Diverse Hybrid Species Maternal Organism',\n dataType: 'number', luceneQueryable: false},\n'St. Div. Hybrid Parent (m) References': {fieldName: 'References',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) References',\n dataType: 'string', luceneQueryable: false},\n'Structurally Diverse Hybrid Species Paternal Organism': {fieldName: 'Hybrid Species Paternal Organism',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism', finalField: 'hybridSpeciesPaternalOrganism',\n lucenePath: '', CVDomain: '',\n displayName: 'Structurally Diverse Hybrid Species Paternal Organism',\n dataType: 'number', luceneQueryable: false},\n'St. Div. Hybrid Parent (p) References': {fieldName: 'References',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) References',\n dataType: 'string', luceneQueryable: false},\n'Structurally Diverse Parent Substance': {fieldName: 'Parent Substance',\n fieldPath: '/structurallyDiverse/parentSubstance', finalField: 'parentSubstance',\n lucenePath: '', CVDomain: '',\n displayName: 'Structurally Diverse Parent Substance',\n dataType: 'string', luceneQueryable: false},\n'St. Div. Hybrid Parent References': {fieldName: 'References',\n fieldPath: '/structurallyDiverse/parentSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent References',\n dataType: 'boolean', luceneQueryable: false},\n'Structurally Diverse References': {fieldName: 'References',\n fieldPath: '/structurallyDiverse/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Structurally Diverse References',\n dataType: 'string', luceneQueryable: false},\n'Record Structure': {fieldName: 'Structure',\n fieldPath: '/structure', finalField: 'structure',\n lucenePath: '', CVDomain: '',\n displayName: 'Record Structure',\n dataType: 'string', luceneQueryable: false},\n'Structure Molfile': {fieldName: 'Molfile',\n fieldPath: '/structure/molfile', finalField: 'molfile',\n lucenePath: '', CVDomain: '',\n displayName: 'Structure Molfile',\n dataType: 'string', luceneQueryable: false},\n'Structure References': {fieldName: 'References',\n fieldPath: '/structure/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Structure References',\n dataType: 'string', luceneQueryable: false},\n'Structure Smiles': {fieldName: 'Smiles',\n fieldPath: '/structure/smiles', finalField: 'smiles',\n lucenePath: '', CVDomain: '',\n displayName: 'Structure Smiles',\n dataType: 'string', luceneQueryable: false},\n'SpecifiedSubstance': {fieldName: 'Specified Substance',\n fieldPath: '/specifiedSubstance', finalField: '',\n lucenePath: '', CVDomain: '',\n displayName: 'SpecifiedSubstance',\n dataType: 'string', luceneQueryable: false},\n'SpecifiedSubstance Access': {fieldName: 'Access',\n fieldPath: '/specifiedSubstance/access', finalField: 'access',\n lucenePath: 'root_specifiedSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'SpecifiedSubstance Access',\n dataType: 'string', luceneQueryable: false},\n'SpecifiedSubstance References': {fieldName: 'References',\n fieldPath: '/specifiedSubstance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'SpecifiedSubstance References',\n dataType: 'string', luceneQueryable: false},\n'SpecifiedSubstance UUID': {fieldName: 'Uuid',\n fieldPath: '/specifiedSubstance/uuid', finalField: 'uuid',\n lucenePath: 'root_specifiedSubstance_uuid', CVDomain: '',\n displayName: 'SpecifiedSubstance UUID',\n dataType: 'array ', luceneQueryable: false},\n'Constituent': {fieldName: 'Constituents',\n fieldPath: '/specifiedSubstance/constituents', finalField: '',\n lucenePath: 'root_specifiedSubstance_constituent', CVDomain: '',\n displayName: 'Constituent',\n dataType: 'string', luceneQueryable: false},\n'Constituent Substance': {fieldName: 'Substance',\n fieldPath: '/specifiedSubstance/constituents/?/substance', finalField: 'parentSubstance',\n lucenePath: 'root_specifiedSubstance_constituents_substance', CVDomain: '',\n displayName: 'Constituent Substance',\n dataType: 'string', luceneQueryable: false},\n'Constituent Substance Access': {fieldName: 'Access',\n fieldPath: '/specifiedSubstance/constituents/?/substance/access', finalField: 'access',\n lucenePath: 'root_specifiedSubstance_constituents_substance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Constituent Substance Access',\n dataType: 'string', luceneQueryable: false},\n'Constituent Substance Linking ID': {fieldName: 'Linking Id',\n fieldPath: '/specifiedSubstance/constituents/?/substance/linkingID', finalField: 'linkingID',\n lucenePath: 'root_specifiedSubstance_constituents_substance_linkingID', CVDomain: '',\n displayName: 'Constituent Substance Linking ID',\n dataType: 'number', luceneQueryable: false},\n'Constituent Substance Name': {fieldName: 'Name',\n fieldPath: '/specifiedSubstance/constituents/?/substance/name', finalField: 'name',\n lucenePath: 'root_specifiedSubstance_constituents_substance_name', CVDomain: '',\n displayName: 'Constituent Substance Name',\n dataType: 'number', luceneQueryable: false},\n'Constituent Substance References': {fieldName: 'References',\n fieldPath: '/specifiedSubstance/constituents/?/substance/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Constituent Substance References',\n dataType: 'string', luceneQueryable: false},\n'Constituent Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/specifiedSubstance/constituents/?/substance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_specifiedSubstance_constituents_substance_substanceClass', CVDomain: '',\n displayName: 'Constituent Substance Substance Class',\n dataType: 'string', luceneQueryable: false},\n'Constituent Amount': {fieldName: 'Amount',\n fieldPath: '/specifiedSubstance/constituents/?/amount', finalField: 'amount',\n lucenePath: '', CVDomain: '',\n displayName: 'Constituent Amount',\n dataType: 'string', luceneQueryable: false},\n'Constituent Amount Access': {fieldName: 'Access',\n fieldPath: '/specifiedSubstance/constituents/?/amount/access', finalField: 'access',\n lucenePath: 'root_specifiedSubstance_constituents_amount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Constituent Amount Access',\n dataType: 'string', luceneQueryable: false},\n'Constituent Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/specifiedSubstance/constituents/?/amount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_specifiedSubstance_constituents_amount_deprecated', CVDomain: '',\n displayName: 'Constituent Amount Deprecated',\n dataType: 'string', luceneQueryable: false},\n'Constituent Amount References': {fieldName: 'References',\n fieldPath: '/specifiedSubstance/constituents/?/amount/references', finalField: 'references',\n lucenePath: '', CVDomain: '',\n displayName: 'Constituent Amount References',\n dataType: 'string', luceneQueryable: false},\n'Constituent Amount UUID': {fieldName: 'Uuid',\n fieldPath: '/specifiedSubstance/constituents/?/amount/uuid', finalField: 'uuid',\n lucenePath: 'root_specifiedSubstance_constituents_amount_uuid', CVDomain: '',\n displayName: 'Constituent Amount UUID',\n dataType: 'string', luceneQueryable: false},\n'Moiety Atropisomerism': {fieldName: 'Atropisomerism',\n fieldPath: '/moieties/?/atropisomerism', finalField: 'atropisomerism',\n lucenePath: 'root_moieties_structure_atropisomerism', CVDomain: 'ATROPISOMERISM',\n displayName: 'Moiety Atropisomerism',\n dataType: 'string', luceneQueryable: false},\n'Moiety Charge': {fieldName: 'Charge',\n fieldPath: '/moieties/?/charge', finalField: 'charge',\n lucenePath: 'root_moieties_structure_charge', CVDomain: '',\n displayName: 'Moiety Charge',\n dataType: 'number', luceneQueryable: false},\n'Moiety Count': {fieldName: 'Count',\n fieldPath: '/moieties/?/count', finalField: 'count',\n lucenePath: 'root_moieties_structure_count', CVDomain: '',\n displayName: 'Moiety Count',\n dataType: 'number', luceneQueryable: false},\n'Moiety Defined Stereo': {fieldName: 'Defined Stereocenters Count',\n fieldPath: '/moieties/?/definedStereo', finalField: 'definedStereo',\n lucenePath: 'root_moieties_structure_definedStereo', CVDomain: '',\n displayName: 'Moiety Defined Stereo',\n dataType: 'number', luceneQueryable: false},\n'Moiety Digest': {fieldName: 'Digest',\n fieldPath: '/moieties/?/digest', finalField: 'digest',\n lucenePath: 'root_moieties_structure_digest', CVDomain: '',\n displayName: 'Moiety Digest',\n dataType: 'string', luceneQueryable: false},\n'Moiety Ez Centers': {fieldName: 'E/Z Center Count',\n fieldPath: '/moieties/?/ezCenters', finalField: 'ezCenters',\n lucenePath: 'root_moieties_structure_ezCenters', CVDomain: '',\n displayName: 'Moiety Ez Centers',\n dataType: 'number', luceneQueryable: false},\n'Moiety Formula': {fieldName: 'Formula',\n fieldPath: '/moieties/?/formula', finalField: 'formula',\n lucenePath: 'root_moieties_structure_formula', CVDomain: '',\n displayName: 'Moiety Formula',\n dataType: 'string', luceneQueryable: false},\n'Moiety Mwt': {fieldName: 'Molecular Weight',\n fieldPath: '/moieties/?/mwt', finalField: 'mwt',\n lucenePath: 'root_moieties_structure_mwt', CVDomain: '',\n displayName: 'Moiety Mwt',\n dataType: 'number', luceneQueryable: false},\n'Moiety Optical Activity': {fieldName: 'Optical Activity',\n fieldPath: '/moieties/?/opticalActivity', finalField: 'opticalActivity',\n lucenePath: 'root_moieties_structure_opticalActivity', CVDomain: 'OPTICAL_ACTIVITY',\n displayName: 'Moiety Optical Activity',\n dataType: 'string', luceneQueryable: false},\n'Moiety Stereo Centers': {fieldName: 'Total Stereocenters Count',\n fieldPath: '/moieties/?/stereoCenters', finalField: 'stereoCenters',\n lucenePath: 'root_moieties_structure_stereoCenters', CVDomain: '',\n displayName: 'Moiety Stereo Centers',\n dataType: 'number', luceneQueryable: false},\n'Moiety Stereo Comments': {fieldName: 'Stereo Comments',\n fieldPath: '/moieties/?/stereoComments', finalField: 'stereoComments',\n lucenePath: 'root_moieties_structure_stereoComments', CVDomain: '',\n displayName: 'Moiety Stereo Comments',\n dataType: 'string', luceneQueryable: false},\n'Name Domains': {fieldName: 'Domains',\n fieldPath: '/names/?/domains', finalField: 'domains',\n lucenePath: 'root_names_domains_term', CVDomain: 'NAME_DOMAIN',\n displayName: 'Name Domains',\n dataType: 'array ', luceneQueryable: false},\n'Name Languages': {fieldName: 'Languages',\n fieldPath: '/names/?/languages', finalField: 'languages',\n lucenePath: 'root_names_languages_term', CVDomain: 'LANGUAGE',\n displayName: 'Name Languages',\n dataType: 'array ', luceneQueryable: false},\n'Name Name Jurisdiction': {fieldName: 'Naming Jurisdictions',\n fieldPath: '/names/?/nameJurisdiction', finalField: 'nameJurisdiction',\n lucenePath: 'root_names_nameJurisdiction_term', CVDomain: 'JURISDICTION',\n displayName: 'Name Name Jurisdiction',\n dataType: 'array ', luceneQueryable: false},\n'Polymer Classification Polymer Subclass': {fieldName: 'Polymer Subclass',\n fieldPath: '/polymer/classification/polymerSubclass', finalField: 'polymerSubclass',\n lucenePath: 'root_polymer_classification_polymerSubclass_term', CVDomain: 'POLYMER_SUBCLASS',\n displayName: 'Polymer Classification Polymer Subclass',\n dataType: 'array ', luceneQueryable: false},\n'Reference Tags': {fieldName: 'Tags',\n fieldPath: '/references/?/tags', finalField: 'tags',\n lucenePath: 'root_references_tags_term', CVDomain: 'DOCUMENT_COLLECTION',\n displayName: 'Reference Tags',\n dataType: 'array ', luceneQueryable: false},\n'Structurally Diverse Part': {fieldName: 'Part',\n fieldPath: '/structurallyDiverse/part', finalField: 'part',\n lucenePath: 'root_structurallyDiverse_part_term', CVDomain: 'PART',\n displayName: 'Structurally Diverse Part',\n dataType: 'array ', luceneQueryable: false},\n'Record Tags': {fieldName: 'Tags',\n fieldPath: '/tags', finalField: 'tags',\n lucenePath: 'root_tags_term', CVDomain: '',\n displayName: 'Record Tags',\n dataType: 'string', luceneQueryable: false},\n'Record Access': {fieldName: 'Access',\n fieldPath: '/access', finalField: 'access',\n lucenePath: 'root_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Record Access',\n dataType: 'array ', luceneQueryable: true},\n'Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/approvalID', finalField: 'approvalID',\n lucenePath: 'root_approvalID', CVDomain: '',\n displayName: 'Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Record Approved By': {fieldName: 'Approved By',\n fieldPath: '/approvedBy', finalField: 'approvedBy',\n lucenePath: 'root_approvedBy', CVDomain: '',\n displayName: 'Record Approved By',\n dataType: 'string', luceneQueryable: true},\n'Record Change Reason': {fieldName: 'Change Reason',\n fieldPath: '/changeReason', finalField: 'changeReason',\n lucenePath: 'root_changeReason', CVDomain: '',\n displayName: 'Record Change Reason',\n dataType: 'string', luceneQueryable: true},\n'Code Access': {fieldName: 'Access',\n fieldPath: '/codes/?/access', finalField: 'access',\n lucenePath: 'root_codes_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Code Access',\n dataType: 'array ', luceneQueryable: true},\n'Code Literal': {fieldName: 'Code',\n fieldPath: '/codes/?/code', finalField: 'code',\n lucenePath: 'root_codes_code', CVDomain: '',\n displayName: 'Code Literal',\n dataType: 'string', luceneQueryable: true},\n'Code System': {fieldName: 'Code System',\n fieldPath: '/codes/?/codeSystem', finalField: 'codeSystem',\n lucenePath: 'root_codes_codeSystem', CVDomain: 'CODE_SYSTEM',\n displayName: 'Code System',\n dataType: 'string', luceneQueryable: true},\n'Code Comments': {fieldName: 'Comments',\n fieldPath: '/codes/?/comments', finalField: 'comments',\n lucenePath: 'root_codes_comments', CVDomain: '',\n displayName: 'Code Comments',\n dataType: 'string', luceneQueryable: true},\n'Code Created': {fieldName: 'Created',\n fieldPath: '/codes/?/created', finalField: 'created',\n lucenePath: 'root_codes_created', CVDomain: '',\n displayName: 'Code Created',\n dataType: 'number', luceneQueryable: true},\n'Code Created By': {fieldName: 'Created By',\n fieldPath: '/codes/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_codes_createdBy', CVDomain: '',\n displayName: 'Code Created By',\n dataType: 'string', luceneQueryable: true},\n'Code Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/codes/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_codes_deprecated', CVDomain: '',\n displayName: 'Code Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Code Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/codes/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_codes_lastEdited', CVDomain: '',\n displayName: 'Code Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Code Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/codes/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_codes_lastEditedBy', CVDomain: '',\n displayName: 'Code Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Code Type': {fieldName: 'Code Type',\n fieldPath: '/codes/?/type', finalField: 'type',\n lucenePath: 'root_codes_type', CVDomain: 'CODE_TYPE',\n displayName: 'Code Type',\n dataType: 'string', luceneQueryable: true},\n'Code URL': {fieldName: 'Url',\n fieldPath: '/codes/?/url', finalField: 'url',\n lucenePath: 'root_codes_url', CVDomain: '',\n displayName: 'Code URL',\n dataType: 'string', luceneQueryable: true},\n'Record Created': {fieldName: 'Created',\n fieldPath: '/created', finalField: 'created',\n lucenePath: 'root_created', CVDomain: '',\n displayName: 'Record Created',\n dataType: 'number', luceneQueryable: true},\n'Record Created By': {fieldName: 'Created By',\n fieldPath: '/createdBy', finalField: 'createdBy',\n lucenePath: 'root_createdBy', CVDomain: '',\n displayName: 'Record Created By',\n dataType: 'string', luceneQueryable: true},\n'Record Definition Level': {fieldName: 'Definition Level',\n fieldPath: '/definitionLevel', finalField: 'definitionLevel',\n lucenePath: 'root_definitionLevel', CVDomain: '',\n displayName: 'Record Definition Level',\n dataType: 'string', luceneQueryable: true},\n'Record Definition Type': {fieldName: 'Definition Type',\n fieldPath: '/definitionType', finalField: 'definitionType',\n lucenePath: 'root_definitionType', CVDomain: '',\n displayName: 'Record Definition Type',\n dataType: 'string', luceneQueryable: true},\n'Record Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/deprecated', finalField: 'deprecated',\n lucenePath: 'root_deprecated', CVDomain: '',\n displayName: 'Record Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Record Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_lastEdited', CVDomain: '',\n displayName: 'Record Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Record Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_lastEditedBy', CVDomain: '',\n displayName: 'Record Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Access': {fieldName: 'Access',\n fieldPath: '/mixture/access', finalField: 'access',\n lucenePath: 'root_mixture_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Mixture Access',\n dataType: 'array ', luceneQueryable: true},\n'Mixture Component Access': {fieldName: 'Access',\n fieldPath: '/mixture/components/?/access', finalField: 'access',\n lucenePath: 'root_mixture_components_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Mixture Component Access',\n dataType: 'array ', luceneQueryable: true},\n'Mixture Component Created': {fieldName: 'Created',\n fieldPath: '/mixture/components/?/created', finalField: 'created',\n lucenePath: 'root_mixture_components_created', CVDomain: '',\n displayName: 'Mixture Component Created',\n dataType: 'number', luceneQueryable: true},\n'Mixture Component Created By': {fieldName: 'Created By',\n fieldPath: '/mixture/components/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_mixture_components_createdBy', CVDomain: '',\n displayName: 'Mixture Component Created By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/mixture/components/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_mixture_components_deprecated', CVDomain: '',\n displayName: 'Mixture Component Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Mixture Component Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/mixture/components/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_mixture_components_lastEdited', CVDomain: '',\n displayName: 'Mixture Component Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Mixture Component Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/mixture/components/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_mixture_components_lastEditedBy', CVDomain: '',\n displayName: 'Mixture Component Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Substance Access': {fieldName: 'Access',\n fieldPath: '/mixture/components/?/substance/access', finalField: 'access',\n lucenePath: 'root_mixture_components_substance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Mixture Component Substance Access',\n dataType: 'array ', luceneQueryable: true},\n'Mixture Component ApprovalID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/mixture/components/?/substance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_mixture_components_substance_approvalID', CVDomain: '',\n displayName: 'Mixture Component ApprovalID',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Substance Created': {fieldName: 'Created',\n fieldPath: '/mixture/components/?/substance/created', finalField: 'created',\n lucenePath: 'root_mixture_components_substance_created', CVDomain: '',\n displayName: 'Mixture Component Substance Created',\n dataType: 'number', luceneQueryable: true},\n'Mixture Component Substance Created By': {fieldName: 'Created By',\n fieldPath: '/mixture/components/?/substance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_mixture_components_substance_createdBy', CVDomain: '',\n displayName: 'Mixture Component Substance Created By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/mixture/components/?/substance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_mixture_components_substance_deprecated', CVDomain: '',\n displayName: 'Mixture Component Substance Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Mixture Component Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/mixture/components/?/substance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_mixture_components_substance_lastEdited', CVDomain: '',\n displayName: 'Mixture Component Substance Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Mixture Component Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/mixture/components/?/substance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_mixture_components_substance_lastEditedBy', CVDomain: '',\n displayName: 'Mixture Component Substance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Name': {fieldName: 'Ref Pname',\n fieldPath: '/mixture/components/?/substance/refPname', finalField: 'refPname',\n lucenePath: 'root_mixture_components_substance_refPname', CVDomain: '',\n displayName: 'Mixture Component Name',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/mixture/components/?/substance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_mixture_components_substance_refuuid', CVDomain: '',\n displayName: 'Mixture Component Substance Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/mixture/components/?/substance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_mixture_components_substance_substanceClass', CVDomain: '',\n displayName: 'Mixture Component Substance Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Mixture Component Type': {fieldName: 'Type',\n fieldPath: '/mixture/components/?/type', finalField: 'type',\n lucenePath: 'root_mixture_components_type', CVDomain: 'MIXTURE_TYPE',\n displayName: 'Mixture Component Type',\n dataType: 'string', luceneQueryable: true},\n'Mixture Created': {fieldName: 'Created',\n fieldPath: '/mixture/created', finalField: 'created',\n lucenePath: 'root_mixture_created', CVDomain: '',\n displayName: 'Mixture Created',\n dataType: 'number', luceneQueryable: true},\n'Mixture Created By': {fieldName: 'Created By',\n fieldPath: '/mixture/createdBy', finalField: 'createdBy',\n lucenePath: 'root_mixture_createdBy', CVDomain: '',\n displayName: 'Mixture Created By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/mixture/deprecated', finalField: 'deprecated',\n lucenePath: 'root_mixture_deprecated', CVDomain: '',\n displayName: 'Mixture Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Mixture Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/mixture/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_mixture_lastEdited', CVDomain: '',\n displayName: 'Mixture Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Mixture Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/mixture/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_mixture_lastEditedBy', CVDomain: '',\n displayName: 'Mixture Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Parent Substance Access': {fieldName: 'Access',\n fieldPath: '/mixture/parentSubstance/access', finalField: 'access',\n lucenePath: 'root_mixture_parentSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Mixture Parent Substance Access',\n dataType: 'array ', luceneQueryable: true},\n'Mixture Parent Substance Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/mixture/parentSubstance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_mixture_parentSubstance_approvalID', CVDomain: '',\n displayName: 'Mixture Parent Substance Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Mixture Parent Substance Created': {fieldName: 'Created',\n fieldPath: '/mixture/parentSubstance/created', finalField: 'created',\n lucenePath: 'root_mixture_parentSubstance_created', CVDomain: '',\n displayName: 'Mixture Parent Substance Created',\n dataType: 'number', luceneQueryable: true},\n'Mixture Parent Substance Created By': {fieldName: 'Created By',\n fieldPath: '/mixture/parentSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_mixture_parentSubstance_createdBy', CVDomain: '',\n displayName: 'Mixture Parent Substance Created By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Parent Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/mixture/parentSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_mixture_parentSubstance_deprecated', CVDomain: '',\n displayName: 'Mixture Parent Substance Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Mixture Parent Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/mixture/parentSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_mixture_parentSubstance_lastEdited', CVDomain: '',\n displayName: 'Mixture Parent Substance Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Mixture Parent Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/mixture/parentSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_mixture_parentSubstance_lastEditedBy', CVDomain: '',\n displayName: 'Mixture Parent Substance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Mixture Parent Substance Preferred Name': {fieldName: 'Ref Pname',\n fieldPath: '/mixture/parentSubstance/refPname', finalField: 'refPname',\n lucenePath: 'root_mixture_parentSubstance_refPname', CVDomain: '',\n displayName: 'Mixture Parent Substance Preferred Name',\n dataType: 'string', luceneQueryable: true},\n'Mixture Parent Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/mixture/parentSubstance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_mixture_parentSubstance_refuuid', CVDomain: '',\n displayName: 'Mixture Parent Substance Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Mixture Parent Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/mixture/parentSubstance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_mixture_parentSubstance_substanceClass', CVDomain: '',\n displayName: 'Mixture Parent Substance Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Modification Access': {fieldName: 'Access',\n fieldPath: '/modifications/access', finalField: 'access',\n lucenePath: 'root_modifications_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Modification Access',\n dataType: 'array ', luceneQueryable: true},\n'Agent Modification Access': {fieldName: 'Access',\n fieldPath: '/modifications/agentModifications/?/access', finalField: 'access',\n lucenePath: 'root_modifications_agentModifications_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Agent Modification Access',\n dataType: 'array ', luceneQueryable: true},\n'Agent Modification Agent Modification Process': {fieldName: 'Agent Modification Process',\n fieldPath: '/modifications/agentModifications/?/agentModificationProcess', finalField: 'agentModificationProcess',\n lucenePath: 'root_modifications_agentModifications_agentModificationProcess', CVDomain: 'AGENT_MODIFICATION_PROCESS',\n displayName: 'Agent Modification Agent Modification Process',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Agent Modification Role': {fieldName: 'Agent Modification Role',\n fieldPath: '/modifications/agentModifications/?/agentModificationRole', finalField: 'agentModificationRole',\n lucenePath: 'root_modifications_agentModifications_agentModificationRole', CVDomain: 'ROLE',\n displayName: 'Agent Modification Agent Modification Role',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Agent Modification Type': {fieldName: 'Agent Modification Type',\n fieldPath: '/modifications/agentModifications/?/agentModificationType', finalField: 'agentModificationType',\n lucenePath: 'root_modifications_agentModifications_agentModificationType', CVDomain: 'AGENT_MODIFICATION_TYPE',\n displayName: 'Agent Modification Agent Modification Type',\n dataType: 'string', luceneQueryable: true},\n'Agent Substance Access': {fieldName: 'Access',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/access', finalField: 'access',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Agent Substance Access',\n dataType: 'array ', luceneQueryable: true},\n'Agent Substance Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_approvalID', CVDomain: '',\n displayName: 'Agent Substance Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Agent Substance Created': {fieldName: 'Created',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/created', finalField: 'created',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_created', CVDomain: '',\n displayName: 'Agent Substance Created',\n dataType: 'number', luceneQueryable: true},\n'Agent Substance Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_createdBy', CVDomain: '',\n displayName: 'Agent Substance Created By',\n dataType: 'string', luceneQueryable: true},\n'Agent Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_deprecated', CVDomain: '',\n displayName: 'Agent Substance Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Agent Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_lastEdited', CVDomain: '',\n displayName: 'Agent Substance Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Agent Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_lastEditedBy', CVDomain: '',\n displayName: 'Agent Substance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Agent Substance Preferred Name': {fieldName: 'Ref Pname',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/refPname', finalField: 'refPname',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_refPname', CVDomain: '',\n displayName: 'Agent Substance Preferred Name',\n dataType: 'string', luceneQueryable: true},\n'Agent Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_refuuid', CVDomain: '',\n displayName: 'Agent Substance Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Agent Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/modifications/agentModifications/?/agentSubstance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_modifications_agentModifications_agentSubstance_substanceClass', CVDomain: '',\n displayName: 'Agent Substance Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Amount Access': {fieldName: 'Access',\n fieldPath: '/modifications/agentModifications/?/amount/access', finalField: 'access',\n lucenePath: 'root_modifications_agentModifications_amount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Agent Modification Amount Access',\n dataType: 'array ', luceneQueryable: true},\n'Agent Modification Amount Average': {fieldName: 'Average',\n fieldPath: '/modifications/agentModifications/?/amount/average', finalField: 'average',\n lucenePath: 'root_modifications_agentModifications_amount_average', CVDomain: '',\n displayName: 'Agent Modification Amount Average',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Amount Created': {fieldName: 'Created',\n fieldPath: '/modifications/agentModifications/?/amount/created', finalField: 'created',\n lucenePath: 'root_modifications_agentModifications_amount_created', CVDomain: '',\n displayName: 'Agent Modification Amount Created',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Amount Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/agentModifications/?/amount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_agentModifications_amount_createdBy', CVDomain: '',\n displayName: 'Agent Modification Amount Created By',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/agentModifications/?/amount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_agentModifications_amount_deprecated', CVDomain: '',\n displayName: 'Agent Modification Amount Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Agent Modification Amount High': {fieldName: 'High',\n fieldPath: '/modifications/agentModifications/?/amount/high', finalField: 'high',\n lucenePath: 'root_modifications_agentModifications_amount_high', CVDomain: '',\n displayName: 'Agent Modification Amount High',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Amount High Limit': {fieldName: 'High Limit',\n fieldPath: '/modifications/agentModifications/?/amount/highLimit', finalField: 'highLimit',\n lucenePath: 'root_modifications_agentModifications_amount_highLimit', CVDomain: '',\n displayName: 'Agent Modification Amount High Limit',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/agentModifications/?/amount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_agentModifications_amount_lastEdited', CVDomain: '',\n displayName: 'Agent Modification Amount Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/agentModifications/?/amount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_agentModifications_amount_lastEditedBy', CVDomain: '',\n displayName: 'Agent Modification Amount Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Amount Low': {fieldName: 'Low',\n fieldPath: '/modifications/agentModifications/?/amount/low', finalField: 'low',\n lucenePath: 'root_modifications_agentModifications_amount_low', CVDomain: '',\n displayName: 'Agent Modification Amount Low',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Amount Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/modifications/agentModifications/?/amount/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_modifications_agentModifications_amount_lowLimit', CVDomain: '',\n displayName: 'Agent Modification Amount Low Limit',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/modifications/agentModifications/?/amount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_modifications_agentModifications_amount_nonNumericValue', CVDomain: '',\n displayName: 'Agent Modification Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Amount Type': {fieldName: 'Type',\n fieldPath: '/modifications/agentModifications/?/amount/type', finalField: 'type',\n lucenePath: 'root_modifications_agentModifications_amount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Agent Modification Amount Type',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Amount Units': {fieldName: 'Units',\n fieldPath: '/modifications/agentModifications/?/amount/units', finalField: 'units',\n lucenePath: 'root_modifications_agentModifications_amount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Agent Modification Amount Units',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Created': {fieldName: 'Created',\n fieldPath: '/modifications/agentModifications/?/created', finalField: 'created',\n lucenePath: 'root_modifications_agentModifications_created', CVDomain: '',\n displayName: 'Agent Modification Created',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/agentModifications/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_agentModifications_createdBy', CVDomain: '',\n displayName: 'Agent Modification Created By',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/agentModifications/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_agentModifications_deprecated', CVDomain: '',\n displayName: 'Agent Modification Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Agent Modification Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/agentModifications/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_agentModifications_lastEdited', CVDomain: '',\n displayName: 'Agent Modification Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Agent Modification Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/agentModifications/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_agentModifications_lastEditedBy', CVDomain: '',\n displayName: 'Agent Modification Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Agent Modification Modification Group': {fieldName: 'Modification Group',\n fieldPath: '/modifications/agentModifications/?/modificationGroup', finalField: 'modificationGroup',\n lucenePath: 'root_modifications_agentModifications_modificationGroup', CVDomain: '',\n displayName: 'Agent Modification Modification Group',\n dataType: 'string', luceneQueryable: true},\n'Modification Created': {fieldName: 'Created',\n fieldPath: '/modifications/created', finalField: 'created',\n lucenePath: 'root_modifications_created', CVDomain: '',\n displayName: 'Modification Created',\n dataType: 'number', luceneQueryable: true},\n'Modification Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_createdBy', CVDomain: '',\n displayName: 'Modification Created By',\n dataType: 'string', luceneQueryable: true},\n'Modification Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_deprecated', CVDomain: '',\n displayName: 'Modification Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Modification Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_lastEdited', CVDomain: '',\n displayName: 'Modification Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Modification Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_lastEditedBy', CVDomain: '',\n displayName: 'Modification Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Access': {fieldName: 'Access',\n fieldPath: '/modifications/physicalModifications/?/access', finalField: 'access',\n lucenePath: 'root_modifications_physicalModifications_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Physical Modification Access',\n dataType: 'array ', luceneQueryable: true},\n'Physical Modification Created': {fieldName: 'Created',\n fieldPath: '/modifications/physicalModifications/?/created', finalField: 'created',\n lucenePath: 'root_modifications_physicalModifications_created', CVDomain: '',\n displayName: 'Physical Modification Created',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/physicalModifications/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_physicalModifications_createdBy', CVDomain: '',\n displayName: 'Physical Modification Created By',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/physicalModifications/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_physicalModifications_deprecated', CVDomain: '',\n displayName: 'Physical Modification Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Physical Modification Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/physicalModifications/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_physicalModifications_lastEdited', CVDomain: '',\n displayName: 'Physical Modification Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/physicalModifications/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_physicalModifications_lastEditedBy', CVDomain: '',\n displayName: 'Physical Modification Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Modification Group': {fieldName: 'Modification Group',\n fieldPath: '/modifications/physicalModifications/?/modificationGroup', finalField: 'modificationGroup',\n lucenePath: 'root_modifications_physicalModifications_modificationGroup', CVDomain: '',\n displayName: 'Physical Modification Modification Group',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Parameter Access': {fieldName: 'Access',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/access', finalField: 'access',\n lucenePath: 'root_modifications_physicalModifications_parameters_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Physical Modification Parameter Access',\n dataType: 'array ', luceneQueryable: true},\n'Physical Modification Amount Access': {fieldName: 'Access',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/access', finalField: 'access',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Physical Modification Amount Access',\n dataType: 'array ', luceneQueryable: true},\n'Physical Modification Amount Average': {fieldName: 'Average',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/average', finalField: 'average',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_average', CVDomain: '',\n displayName: 'Physical Modification Amount Average',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Amount Created': {fieldName: 'Created',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/created', finalField: 'created',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_created', CVDomain: '',\n displayName: 'Physical Modification Amount Created',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Amount Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_createdBy', CVDomain: '',\n displayName: 'Physical Modification Amount Created By',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_deprecated', CVDomain: '',\n displayName: 'Physical Modification Amount Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Physical Modification Amount High Limit': {fieldName: 'High Limit',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/highLimit', finalField: 'highLimit',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_highLimit', CVDomain: '',\n displayName: 'Physical Modification Amount High Limit',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_lastEdited', CVDomain: '',\n displayName: 'Physical Modification Amount Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_lastEditedBy', CVDomain: '',\n displayName: 'Physical Modification Amount Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Amount Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_lowLimit', CVDomain: '',\n displayName: 'Physical Modification Amount Low Limit',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_nonNumericValue', CVDomain: '',\n displayName: 'Physical Modification Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Amount Type': {fieldName: 'Type',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/type', finalField: 'type',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Physical Modification Amount Type',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Amount Units': {fieldName: 'Units',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/amount/units', finalField: 'units',\n lucenePath: 'root_modifications_physicalModifications_parameters_amount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Physical Modification Amount Units',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Parameter Created': {fieldName: 'Created',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/created', finalField: 'created',\n lucenePath: 'root_modifications_physicalModifications_parameters_created', CVDomain: '',\n displayName: 'Physical Modification Parameter Created',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Parameter Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_physicalModifications_parameters_createdBy', CVDomain: '',\n displayName: 'Physical Modification Parameter Created By',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Parameter Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_physicalModifications_parameters_deprecated', CVDomain: '',\n displayName: 'Physical Modification Parameter Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Physical Modification Parameter Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_physicalModifications_parameters_lastEdited', CVDomain: '',\n displayName: 'Physical Modification Parameter Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Physical Modification Parameter Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_physicalModifications_parameters_lastEditedBy', CVDomain: '',\n displayName: 'Physical Modification Parameter Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Parameter Parameter Name': {fieldName: 'Parameter Name',\n fieldPath: '/modifications/physicalModifications/?/parameters/?/parameterName', finalField: 'parameterName',\n lucenePath: 'root_modifications_physicalModifications_parameters_parameterName', CVDomain: '',\n displayName: 'Physical Modification Parameter Parameter Name',\n dataType: 'string', luceneQueryable: true},\n'Physical Modification Physical Modification Role': {fieldName: 'Physicalmodificationrole',\n fieldPath: '/modifications/physicalModifications/?/physicalModificationRole', finalField: 'physicalModificationRole',\n lucenePath: 'root_modifications_physicalModifications_physicalModificationRole', CVDomain: 'PHYSICAL_MODIFICATION_ROLE',\n displayName: 'Physical Modification Physical Modification Role',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Access': {fieldName: 'Access',\n fieldPath: '/modifications/structuralModifications/?/access', finalField: 'access',\n lucenePath: 'root_modifications_structuralModifications_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Structural Modification Access',\n dataType: 'array ', luceneQueryable: true},\n'Structural Modification Created': {fieldName: 'Created',\n fieldPath: '/modifications/structuralModifications/?/created', finalField: 'created',\n lucenePath: 'root_modifications_structuralModifications_created', CVDomain: '',\n displayName: 'Structural Modification Created',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/structuralModifications/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_structuralModifications_createdBy', CVDomain: '',\n displayName: 'Structural Modification Created By',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/structuralModifications/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_structuralModifications_deprecated', CVDomain: '',\n displayName: 'Structural Modification Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Structural Modification Extent': {fieldName: 'Extent',\n fieldPath: '/modifications/structuralModifications/?/extent', finalField: 'extent',\n lucenePath: 'root_modifications_structuralModifications_extent', CVDomain: 'EXTENT_TYPE',\n displayName: 'Structural Modification Extent',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Extent Amount Access': {fieldName: 'Access',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/access', finalField: 'access',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Structural Modification Extent Amount Access',\n dataType: 'array ', luceneQueryable: true},\n'Structural Modification Extent Amount Average': {fieldName: 'Average',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/average', finalField: 'average',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_average', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Average',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Extent Amount Created': {fieldName: 'Created',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/created', finalField: 'created',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_created', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Created',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Extent Amount Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_createdBy', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Created By',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Extent Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_deprecated', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Structural Modification Extent Amount High': {fieldName: 'High',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/high', finalField: 'high',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_high', CVDomain: '',\n displayName: 'Structural Modification Extent Amount High',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Extent Amount High Limit': {fieldName: 'High Limit',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/highLimit', finalField: 'highLimit',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_highLimit', CVDomain: '',\n displayName: 'Structural Modification Extent Amount High Limit',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Extent Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_lastEdited', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Extent Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_lastEditedBy', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Extent Amount Low': {fieldName: 'Low',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/low', finalField: 'low',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_low', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Low',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Extent Amount Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_lowLimit', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Low Limit',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Extent Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_nonNumericValue', CVDomain: '',\n displayName: 'Structural Modification Extent Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Extent Amount Type': {fieldName: 'Type',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/type', finalField: 'type',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Structural Modification Extent Amount Type',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Extent Amount Units': {fieldName: 'Units',\n fieldPath: '/modifications/structuralModifications/?/extentAmount/units', finalField: 'units',\n lucenePath: 'root_modifications_structuralModifications_extentAmount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Structural Modification Extent Amount Units',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/structuralModifications/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_structuralModifications_lastEdited', CVDomain: '',\n displayName: 'Structural Modification Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Structural Modification Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/structuralModifications/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_structuralModifications_lastEditedBy', CVDomain: '',\n displayName: 'Structural Modification Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Locationtype': {fieldName: 'Location Type',\n fieldPath: '/modifications/structuralModifications/?/locationType', finalField: 'locationType',\n lucenePath: 'root_modifications_structuralModifications_locationType', CVDomain: 'LOCATION_TYPE',\n displayName: 'Structural Modification Locationtype',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Modification Group': {fieldName: 'Modification Group',\n fieldPath: '/modifications/structuralModifications/?/modificationGroup', finalField: 'modificationGroup',\n lucenePath: 'root_modifications_structuralModifications_modificationGroup', CVDomain: '',\n displayName: 'Structural Modification Modification Group',\n dataType: 'string', luceneQueryable: true},\n'Molecular Fragment Access': {fieldName: 'Access',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/access', finalField: 'access',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Molecular Fragment Access',\n dataType: 'array ', luceneQueryable: true},\n'Molecular Fragment Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/approvalID', finalField: 'approvalID',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_approvalID', CVDomain: '',\n displayName: 'Molecular Fragment Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Molecular Fragment Created': {fieldName: 'Created',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/created', finalField: 'created',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_created', CVDomain: '',\n displayName: 'Molecular Fragment Created',\n dataType: 'number', luceneQueryable: true},\n'Molecular Fragment Created By': {fieldName: 'Created By',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/createdBy', finalField: 'createdBy',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_createdBy', CVDomain: '',\n displayName: 'Molecular Fragment Created By',\n dataType: 'string', luceneQueryable: true},\n'Molecular Fragment Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/deprecated', finalField: 'deprecated',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_deprecated', CVDomain: '',\n displayName: 'Molecular Fragment Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Molecular Fragment Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_lastEdited', CVDomain: '',\n displayName: 'Molecular Fragment Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Molecular Fragment Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_lastEditedBy', CVDomain: '',\n displayName: 'Molecular Fragment Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Molecular Fragment Preferred Name': {fieldName: 'Ref Pname',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/refPname', finalField: 'refPname',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_refPname', CVDomain: '',\n displayName: 'Molecular Fragment Preferred Name',\n dataType: 'string', luceneQueryable: true},\n'Molecular Fragment Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/refuuid', finalField: 'refuuid',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_refuuid', CVDomain: '',\n displayName: 'Molecular Fragment Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Molecular Fragment Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/modifications/structuralModifications/?/molecularFragment/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_modifications_structuralModifications_molecularFragment_substanceClass', CVDomain: '',\n displayName: 'Molecular Fragment Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Residuemodified': {fieldName: 'Residue Modified',\n fieldPath: '/modifications/structuralModifications/?/residueModified', finalField: 'residueModified',\n lucenePath: 'root_modifications_structuralModifications_residueModified', CVDomain: '',\n displayName: 'Structural Modification Residuemodified',\n dataType: 'string', luceneQueryable: true},\n'Structural Modification Structural Modification Type': {fieldName: 'Structural Modification Type',\n fieldPath: '/modifications/structuralModifications/?/structuralModificationType', finalField: 'structuralModificationType',\n lucenePath: 'root_modifications_structuralModifications_structuralModificationType', CVDomain: 'STRUCTURAL_MODIFICATION_TYPE',\n displayName: 'Structural Modification Structural Modification Type',\n dataType: 'string', luceneQueryable: true},\n'Moiety Access': {fieldName: 'Access',\n fieldPath: '/moieties/?/access', finalField: 'access',\n lucenePath: 'root_moieties_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Moiety Access',\n dataType: 'array ', luceneQueryable: true},\n'Count Amount Access': {fieldName: 'Access',\n fieldPath: '/moieties/?/countAmount/access', finalField: 'access',\n lucenePath: 'root_moieties_countAmount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Count Amount Access',\n dataType: 'array ', luceneQueryable: true},\n'Count Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/moieties/?/countAmount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_moieties_countAmount_deprecated', CVDomain: '',\n displayName: 'Count Amount Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Moiety Created': {fieldName: 'Created',\n fieldPath: '/moieties/?/created', finalField: 'created',\n lucenePath: 'root_moieties_created', CVDomain: '',\n displayName: 'Moiety Created',\n dataType: 'number', luceneQueryable: true},\n'Moiety Created By': {fieldName: 'Created By',\n fieldPath: '/moieties/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_moieties_createdBy', CVDomain: '',\n displayName: 'Moiety Created By',\n dataType: 'string', luceneQueryable: true},\n'Moiety Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/moieties/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_moieties_deprecated', CVDomain: '',\n displayName: 'Moiety Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Moiety Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/moieties/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_moieties_lastEdited', CVDomain: '',\n displayName: 'Moiety Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Moiety Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/moieties/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_moieties_lastEditedBy', CVDomain: '',\n displayName: 'Moiety Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Moiety Stereochemistry': {fieldName: 'Stereochemistry',\n fieldPath: '/moieties/?/stereochemistry', finalField: 'stereochemistry',\n lucenePath: 'root_moieties_stereochemistry', CVDomain: 'STEREOCHEMISTRY_TYPE',\n displayName: 'Moiety Stereochemistry',\n dataType: 'string', luceneQueryable: true},\n'Name Access': {fieldName: 'Access',\n fieldPath: '/names/?/access', finalField: 'access',\n lucenePath: 'root_names_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Name Access',\n dataType: 'array ', luceneQueryable: true},\n'Name Created': {fieldName: 'Created',\n fieldPath: '/names/?/created', finalField: 'created',\n lucenePath: 'root_names_created', CVDomain: '',\n displayName: 'Name Created',\n dataType: 'number', luceneQueryable: true},\n'Name Created By': {fieldName: 'Created By',\n fieldPath: '/names/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_names_createdBy', CVDomain: '',\n displayName: 'Name Created By',\n dataType: 'string', luceneQueryable: true},\n'Name Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/names/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_names_deprecated', CVDomain: '',\n displayName: 'Name Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Name Display Name': {fieldName: 'Display Name',\n fieldPath: '/names/?/displayName', finalField: 'displayName',\n lucenePath: 'root_names_displayName', CVDomain: '',\n displayName: 'Name Display Name',\n dataType: 'boolean', luceneQueryable: true},\n'Name Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/names/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_names_lastEdited', CVDomain: '',\n displayName: 'Name Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Name Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/names/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_names_lastEditedBy', CVDomain: '',\n displayName: 'Name Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Any Name': {fieldName: 'Name',\n fieldPath: '/names/?/name', finalField: 'name',\n lucenePath: 'root_names_name', CVDomain: '',\n displayName: 'Any Name',\n dataType: 'string', luceneQueryable: true},\n'Naming Organization Access': {fieldName: 'Access',\n fieldPath: '/names/?/nameOrgs/?/access', finalField: 'access',\n lucenePath: 'root_names_nameOrgs_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Naming Organization Access',\n dataType: 'array ', luceneQueryable: true},\n'Naming Organization Created': {fieldName: 'Created',\n fieldPath: '/names/?/nameOrgs/?/created', finalField: 'created',\n lucenePath: 'root_names_nameOrgs_created', CVDomain: '',\n displayName: 'Naming Organization Created',\n dataType: 'number', luceneQueryable: true},\n'Naming Organization Created By': {fieldName: 'Created By',\n fieldPath: '/names/?/nameOrgs/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_names_nameOrgs_createdBy', CVDomain: '',\n displayName: 'Naming Organization Created By',\n dataType: 'string', luceneQueryable: true},\n'Naming Organization Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/names/?/nameOrgs/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_names_nameOrgs_deprecated', CVDomain: '',\n displayName: 'Naming Organization Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Naming Organization Deprecated Date': {fieldName: 'Deprecated Date',\n fieldPath: '/names/?/nameOrgs/?/deprecatedDate', finalField: 'deprecatedDate',\n lucenePath: 'root_names_nameOrgs_deprecatedDate', CVDomain: '',\n displayName: 'Naming Organization Deprecated Date',\n dataType: 'number', luceneQueryable: true},\n'Naming Organization Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/names/?/nameOrgs/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_names_nameOrgs_lastEdited', CVDomain: '',\n displayName: 'Naming Organization Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Naming Organization Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/names/?/nameOrgs/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_names_nameOrgs_lastEditedBy', CVDomain: '',\n displayName: 'Naming Organization Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Naming Organization': {fieldName: 'Name Org',\n fieldPath: '/names/?/nameOrgs/?/nameOrg', finalField: 'nameOrg',\n lucenePath: 'root_names_nameOrgs_nameOrg', CVDomain: 'NAME_ORG',\n displayName: 'Naming Organization',\n dataType: 'string', luceneQueryable: true},\n'Name Preferred': {fieldName: 'Preferred Status',\n fieldPath: '/names/?/preferred', finalField: 'preferred',\n lucenePath: 'root_names_preferred', CVDomain: '',\n displayName: 'Name Preferred',\n dataType: 'boolean', luceneQueryable: true},\n'Name Type Code': {fieldName: 'Type',\n fieldPath: '/names/?/type', finalField: 'type',\n lucenePath: 'root_names_type', CVDomain: 'NAME_TYPE',\n displayName: 'Name Type Code',\n dataType: 'string', luceneQueryable: true},\n'Note Access': {fieldName: 'Access',\n fieldPath: '/notes/?/access', finalField: 'access',\n lucenePath: 'root_notes_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Note Access',\n dataType: 'array ', luceneQueryable: true},\n'Note Created': {fieldName: 'Created',\n fieldPath: '/notes/?/created', finalField: 'created',\n lucenePath: 'root_notes_created', CVDomain: '',\n displayName: 'Note Created',\n dataType: 'number', luceneQueryable: true},\n'Note Created By': {fieldName: 'Created By',\n fieldPath: '/notes/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_notes_createdBy', CVDomain: '',\n displayName: 'Note Created By',\n dataType: 'string', luceneQueryable: true},\n'Note Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/notes/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_notes_deprecated', CVDomain: '',\n displayName: 'Note Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Note Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/notes/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_notes_lastEdited', CVDomain: '',\n displayName: 'Note Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Note Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/notes/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_notes_lastEditedBy', CVDomain: '',\n displayName: 'Note Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Note': {fieldName: 'Notes',\n fieldPath: '/notes/?/note', finalField: 'note',\n lucenePath: 'root_notes_note', CVDomain: '',\n displayName: 'Note',\n dataType: 'string', luceneQueryable: true},\n'Nucleic Acid Access': {fieldName: 'Access',\n fieldPath: '/nucleicAcid/access', finalField: 'access',\n lucenePath: 'root_nucleicAcid_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Nucleic Acid Access',\n dataType: 'array ', luceneQueryable: true},\n'Nucleic Acid Created': {fieldName: 'Created',\n fieldPath: '/nucleicAcid/created', finalField: 'created',\n lucenePath: 'root_nucleicAcid_created', CVDomain: '',\n displayName: 'Nucleic Acid Created',\n dataType: 'number', luceneQueryable: true},\n'Nucleic Acid Created By': {fieldName: 'Created By',\n fieldPath: '/nucleicAcid/createdBy', finalField: 'createdBy',\n lucenePath: 'root_nucleicAcid_createdBy', CVDomain: '',\n displayName: 'Nucleic Acid Created By',\n dataType: 'string', luceneQueryable: true},\n'Nucleic Acid Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/nucleicAcid/deprecated', finalField: 'deprecated',\n lucenePath: 'root_nucleicAcid_deprecated', CVDomain: '',\n displayName: 'Nucleic Acid Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Nucleic Acid Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/nucleicAcid/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_nucleicAcid_lastEdited', CVDomain: '',\n displayName: 'Nucleic Acid Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Nucleic Acid Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/nucleicAcid/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_nucleicAcid_lastEditedBy', CVDomain: '',\n displayName: 'Nucleic Acid Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Linkage Access': {fieldName: 'Access',\n fieldPath: '/nucleicAcid/linkages/?/access', finalField: 'access',\n lucenePath: 'root_nucleicAcid_linkages_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Linkage Access',\n dataType: 'array ', luceneQueryable: true},\n'Linkage Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/nucleicAcid/linkages/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_nucleicAcid_linkages_deprecated', CVDomain: '',\n displayName: 'Linkage Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Nucleic Acid Subunit Access': {fieldName: 'Access',\n fieldPath: '/nucleicAcid/subunits/?/access', finalField: 'access',\n lucenePath: 'root_nucleicAcid_subunits_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Nucleic Acid Subunit Access',\n dataType: 'array ', luceneQueryable: true},\n'Nucleic Acid Subunit Created': {fieldName: 'Created',\n fieldPath: '/nucleicAcid/subunits/?/created', finalField: 'created',\n lucenePath: 'root_nucleicAcid_subunits_created', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Created',\n dataType: 'number', luceneQueryable: true},\n'Nucleic Acid Subunit Created By': {fieldName: 'Created By',\n fieldPath: '/nucleicAcid/subunits/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_nucleicAcid_subunits_createdBy', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Created By',\n dataType: 'string', luceneQueryable: true},\n'Nucleic Acid Subunit Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/nucleicAcid/subunits/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_nucleicAcid_subunits_deprecated', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Nucleic Acid Subunit Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/nucleicAcid/subunits/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_nucleicAcid_subunits_lastEdited', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Nucleic Acid Subunit Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/nucleicAcid/subunits/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_nucleicAcid_subunits_lastEditedBy', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Nucleic Acid Subunit Sequence': {fieldName: 'Sequence',\n fieldPath: '/nucleicAcid/subunits/?/sequence', finalField: 'sequence',\n lucenePath: 'root_nucleicAcid_subunits_sequence', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Sequence',\n dataType: 'string', luceneQueryable: true},\n'Nucleic Acid Subunit Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/nucleicAcid/subunits/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: 'root_nucleicAcid_subunits_subunitIndex', CVDomain: '',\n displayName: 'Nucleic Acid Subunit Subunit Index',\n dataType: 'number', luceneQueryable: true},\n'Sugar Access': {fieldName: 'Access',\n fieldPath: '/nucleicAcid/sugars/?/access', finalField: 'access',\n lucenePath: 'root_nucleicAcid_sugars_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Sugar Access',\n dataType: 'array ', luceneQueryable: true},\n'Sugar Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/nucleicAcid/sugars/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_nucleicAcid_sugars_deprecated', CVDomain: '',\n displayName: 'Sugar Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Polymer Access': {fieldName: 'Access',\n fieldPath: '/polymer/access', finalField: 'access',\n lucenePath: 'root_polymer_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Polymer Access',\n dataType: 'array ', luceneQueryable: true},\n'Polymer Classification Access': {fieldName: 'Access',\n fieldPath: '/polymer/classification/access', finalField: 'access',\n lucenePath: 'root_polymer_classification_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Polymer Classification Access',\n dataType: 'array ', luceneQueryable: true},\n'Polymer Classification Created': {fieldName: 'Created',\n fieldPath: '/polymer/classification/created', finalField: 'created',\n lucenePath: 'root_polymer_classification_created', CVDomain: '',\n displayName: 'Polymer Classification Created',\n dataType: 'number', luceneQueryable: true},\n'Polymer Classification Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/classification/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_classification_createdBy', CVDomain: '',\n displayName: 'Polymer Classification Created By',\n dataType: 'string', luceneQueryable: true},\n'Polymer Classification Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/classification/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_classification_deprecated', CVDomain: '',\n displayName: 'Polymer Classification Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Polymer Classification Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/classification/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_classification_lastEdited', CVDomain: '',\n displayName: 'Polymer Classification Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Polymer Classification Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/classification/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_classification_lastEditedBy', CVDomain: '',\n displayName: 'Polymer Classification Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Polymer Parent Substance Access': {fieldName: 'Access',\n fieldPath: '/polymer/classification/parentSubstance/access', finalField: 'access',\n lucenePath: 'root_polymer_classification_parentSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Polymer Parent Substance Access',\n dataType: 'array ', luceneQueryable: true},\n'Polymer Parent Substance Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/polymer/classification/parentSubstance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_polymer_classification_parentSubstance_approvalID', CVDomain: '',\n displayName: 'Polymer Parent Substance Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Polymer Parent Substance Created': {fieldName: 'Created',\n fieldPath: '/polymer/classification/parentSubstance/created', finalField: 'created',\n lucenePath: 'root_polymer_classification_parentSubstance_created', CVDomain: '',\n displayName: 'Polymer Parent Substance Created',\n dataType: 'number', luceneQueryable: true},\n'Polymer Parent Substance Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/classification/parentSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_classification_parentSubstance_createdBy', CVDomain: '',\n displayName: 'Polymer Parent Substance Created By',\n dataType: 'string', luceneQueryable: true},\n'Polymer Parent Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/classification/parentSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_classification_parentSubstance_deprecated', CVDomain: '',\n displayName: 'Polymer Parent Substance Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Polymer Parent Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/classification/parentSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_classification_parentSubstance_lastEdited', CVDomain: '',\n displayName: 'Polymer Parent Substance Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Polymer Parent Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/classification/parentSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_classification_parentSubstance_lastEditedBy', CVDomain: '',\n displayName: 'Polymer Parent Substance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Polymer Parent Substance Preferred Name': {fieldName: 'Ref Pname',\n fieldPath: '/polymer/classification/parentSubstance/refPname', finalField: 'refPname',\n lucenePath: 'root_polymer_classification_parentSubstance_refPname', CVDomain: '',\n displayName: 'Polymer Parent Substance Preferred Name',\n dataType: 'string', luceneQueryable: true},\n'Polymer Parent Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/polymer/classification/parentSubstance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_polymer_classification_parentSubstance_refuuid', CVDomain: '',\n displayName: 'Polymer Parent Substance Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Polymer Parent Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/polymer/classification/parentSubstance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_polymer_classification_parentSubstance_substanceClass', CVDomain: '',\n displayName: 'Polymer Parent Substance Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Polymer Class': {fieldName: 'Polymer Class',\n fieldPath: '/polymer/classification/polymerClass', finalField: 'polymerClass',\n lucenePath: 'root_polymer_classification_polymerClass', CVDomain: 'POLYMER_CLASS',\n displayName: 'Polymer Class',\n dataType: 'string', luceneQueryable: true},\n'Polymer Geometry': {fieldName: 'Polymer Geometry',\n fieldPath: '/polymer/classification/polymerGeometry', finalField: 'polymerGeometry',\n lucenePath: 'root_polymer_classification_polymerGeometry', CVDomain: 'POLYMER_GEOMETRY',\n displayName: 'Polymer Geometry',\n dataType: 'string', luceneQueryable: true},\n'Polymer Classification Source Type': {fieldName: 'Sourcetype',\n fieldPath: '/polymer/classification/sourceType', finalField: 'sourceType',\n lucenePath: 'root_polymer_classification_sourceType', CVDomain: 'POLYMER_SOURCE_TYPE',\n displayName: 'Polymer Classification Source Type',\n dataType: 'string', luceneQueryable: true},\n'Polymer Created': {fieldName: 'Created',\n fieldPath: '/polymer/created', finalField: 'created',\n lucenePath: 'root_polymer_created', CVDomain: '',\n displayName: 'Polymer Created',\n dataType: 'number', luceneQueryable: true},\n'Polymer Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_createdBy', CVDomain: '',\n displayName: 'Polymer Created By',\n dataType: 'string', luceneQueryable: true},\n'Polymer Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_deprecated', CVDomain: '',\n displayName: 'Polymer Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Display Structure Access': {fieldName: 'Access',\n fieldPath: '/polymer/displayStructure/access', finalField: 'access',\n lucenePath: 'root_polymer_displayStructure_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Display Structure Access',\n dataType: 'array ', luceneQueryable: true},\n'Display Structure Charge': {fieldName: 'Charge',\n fieldPath: '/polymer/displayStructure/charge', finalField: 'charge',\n lucenePath: 'root_polymer_displayStructure_charge', CVDomain: '',\n displayName: 'Display Structure Charge',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Count': {fieldName: 'Count',\n fieldPath: '/polymer/displayStructure/count', finalField: 'count',\n lucenePath: 'root_polymer_displayStructure_count', CVDomain: '',\n displayName: 'Display Structure Count',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Created': {fieldName: 'Created',\n fieldPath: '/polymer/displayStructure/created', finalField: 'created',\n lucenePath: 'root_polymer_displayStructure_created', CVDomain: '',\n displayName: 'Display Structure Created',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/displayStructure/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_displayStructure_createdBy', CVDomain: '',\n displayName: 'Display Structure Created By',\n dataType: 'string', luceneQueryable: true},\n'Display Structure Defined Stereo': {fieldName: 'Defined Stereocenters Count',\n fieldPath: '/polymer/displayStructure/definedStereo', finalField: 'definedStereo',\n lucenePath: 'root_polymer_displayStructure_definedStereo', CVDomain: '',\n displayName: 'Display Structure Defined Stereo',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/displayStructure/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_displayStructure_deprecated', CVDomain: '',\n displayName: 'Display Structure Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Display Structure Digest': {fieldName: 'Digest',\n fieldPath: '/polymer/displayStructure/digest', finalField: 'digest',\n lucenePath: 'root_polymer_displayStructure_digest', CVDomain: '',\n displayName: 'Display Structure Digest',\n dataType: 'string', luceneQueryable: true},\n'Display Structure Ez Centers': {fieldName: 'E/Z Center Count',\n fieldPath: '/polymer/displayStructure/ezCenters', finalField: 'ezCenters',\n lucenePath: 'root_polymer_displayStructure_ezCenters', CVDomain: '',\n displayName: 'Display Structure Ez Centers',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Formula': {fieldName: 'Formula',\n fieldPath: '/polymer/displayStructure/formula', finalField: 'formula',\n lucenePath: 'root_polymer_displayStructure_formula', CVDomain: '',\n displayName: 'Display Structure Formula',\n dataType: 'string', luceneQueryable: true},\n'Display Structure Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/displayStructure/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_displayStructure_lastEdited', CVDomain: '',\n displayName: 'Display Structure Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/displayStructure/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_displayStructure_lastEditedBy', CVDomain: '',\n displayName: 'Display Structure Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Display Structure Mwt': {fieldName: 'Molecular Weight',\n fieldPath: '/polymer/displayStructure/mwt', finalField: 'mwt',\n lucenePath: 'root_polymer_displayStructure_mwt', CVDomain: '',\n displayName: 'Display Structure Mwt',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Optical Activity': {fieldName: 'Optical Activity',\n fieldPath: '/polymer/displayStructure/opticalActivity', finalField: 'opticalActivity',\n lucenePath: 'root_polymer_displayStructure_opticalActivity', CVDomain: 'OPTICAL_ACTIVITY',\n displayName: 'Display Structure Optical Activity',\n dataType: 'string', luceneQueryable: true},\n'Display Structure Stereo Centers': {fieldName: 'Total Stereocenters Count',\n fieldPath: '/polymer/displayStructure/stereoCenters', finalField: 'stereoCenters',\n lucenePath: 'root_polymer_displayStructure_stereoCenters', CVDomain: '',\n displayName: 'Display Structure Stereo Centers',\n dataType: 'number', luceneQueryable: true},\n'Display Structure Stereochemistry': {fieldName: 'Stereochemistry',\n fieldPath: '/polymer/displayStructure/stereochemistry', finalField: 'stereochemistry',\n lucenePath: 'root_polymer_displayStructure_stereochemistry', CVDomain: '',\n displayName: 'Display Structure Stereochemistry',\n dataType: 'string', luceneQueryable: true},\n'Idealized Structure Access': {fieldName: 'Access',\n fieldPath: '/polymer/idealizedStructure/access', finalField: 'access',\n lucenePath: 'root_polymer_idealizedStructure_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Idealized Structure Access',\n dataType: 'array ', luceneQueryable: true},\n'Idealized Structure Charge': {fieldName: 'Charge',\n fieldPath: '/polymer/idealizedStructure/charge', finalField: 'charge',\n lucenePath: 'root_polymer_idealizedStructure_charge', CVDomain: '',\n displayName: 'Idealized Structure Charge',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Count': {fieldName: 'Count',\n fieldPath: '/polymer/idealizedStructure/count', finalField: 'count',\n lucenePath: 'root_polymer_idealizedStructure_count', CVDomain: '',\n displayName: 'Idealized Structure Count',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Created': {fieldName: 'Created',\n fieldPath: '/polymer/idealizedStructure/created', finalField: 'created',\n lucenePath: 'root_polymer_idealizedStructure_created', CVDomain: '',\n displayName: 'Idealized Structure Created',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/idealizedStructure/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_idealizedStructure_createdBy', CVDomain: '',\n displayName: 'Idealized Structure Created By',\n dataType: 'string', luceneQueryable: true},\n'Idealized Structure Defined Stereo': {fieldName: 'Defined Stereocenters Count',\n fieldPath: '/polymer/idealizedStructure/definedStereo', finalField: 'definedStereo',\n lucenePath: 'root_polymer_idealizedStructure_definedStereo', CVDomain: '',\n displayName: 'Idealized Structure Defined Stereo',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/idealizedStructure/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_idealizedStructure_deprecated', CVDomain: '',\n displayName: 'Idealized Structure Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Idealized Structure Digest': {fieldName: 'Digest',\n fieldPath: '/polymer/idealizedStructure/digest', finalField: 'digest',\n lucenePath: 'root_polymer_idealizedStructure_digest', CVDomain: '',\n displayName: 'Idealized Structure Digest',\n dataType: 'string', luceneQueryable: true},\n'Idealized Structure Ez Centers': {fieldName: 'E/Z Center Count',\n fieldPath: '/polymer/idealizedStructure/ezCenters', finalField: 'ezCenters',\n lucenePath: 'root_polymer_idealizedStructure_ezCenters', CVDomain: '',\n displayName: 'Idealized Structure Ez Centers',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Formula': {fieldName: 'Formula',\n fieldPath: '/polymer/idealizedStructure/formula', finalField: 'formula',\n lucenePath: 'root_polymer_idealizedStructure_formula', CVDomain: '',\n displayName: 'Idealized Structure Formula',\n dataType: 'string', luceneQueryable: true},\n'Idealized Structure Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/idealizedStructure/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_idealizedStructure_lastEdited', CVDomain: '',\n displayName: 'Idealized Structure Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/idealizedStructure/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_idealizedStructure_lastEditedBy', CVDomain: '',\n displayName: 'Idealized Structure Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Idealized Structure Mwt': {fieldName: 'Molecular Weight',\n fieldPath: '/polymer/idealizedStructure/mwt', finalField: 'mwt',\n lucenePath: 'root_polymer_idealizedStructure_mwt', CVDomain: '',\n displayName: 'Idealized Structure Mwt',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Optical Activity': {fieldName: 'Optical Activity',\n fieldPath: '/polymer/idealizedStructure/opticalActivity', finalField: 'opticalActivity',\n lucenePath: 'root_polymer_idealizedStructure_opticalActivity', CVDomain: 'OPTICAL_ACTIVITY',\n displayName: 'Idealized Structure Optical Activity',\n dataType: 'string', luceneQueryable: true},\n'Idealized Structure Stereo Centers': {fieldName: 'Total Stereocenters Count',\n fieldPath: '/polymer/idealizedStructure/stereoCenters', finalField: 'stereoCenters',\n lucenePath: 'root_polymer_idealizedStructure_stereoCenters', CVDomain: '',\n displayName: 'Idealized Structure Stereo Centers',\n dataType: 'number', luceneQueryable: true},\n'Idealized Structure Stereochemistry': {fieldName: 'Stereochemistry',\n fieldPath: '/polymer/idealizedStructure/stereochemistry', finalField: 'stereochemistry',\n lucenePath: 'root_polymer_idealizedStructure_stereochemistry', CVDomain: '',\n displayName: 'Idealized Structure Stereochemistry',\n dataType: 'string', luceneQueryable: true},\n'Polymer Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_lastEdited', CVDomain: '',\n displayName: 'Polymer Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Polymer Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_lastEditedBy', CVDomain: '',\n displayName: 'Polymer Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Monomer Access': {fieldName: 'Access',\n fieldPath: '/polymer/monomers/?/access', finalField: 'access',\n lucenePath: 'root_polymer_monomers_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Monomer Access',\n dataType: 'array ', luceneQueryable: true},\n'Monomer Amount Access': {fieldName: 'Access',\n fieldPath: '/polymer/monomers/?/amount/access', finalField: 'access',\n lucenePath: 'root_polymer_monomers_amount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Monomer Amount Access',\n dataType: 'array ', luceneQueryable: true},\n'Monomer Amount Average': {fieldName: 'Average',\n fieldPath: '/polymer/monomers/?/amount/average', finalField: 'average',\n lucenePath: 'root_polymer_monomers_amount_average', CVDomain: '',\n displayName: 'Monomer Amount Average',\n dataType: 'number', luceneQueryable: true},\n'Monomer Amount Created': {fieldName: 'Created',\n fieldPath: '/polymer/monomers/?/amount/created', finalField: 'created',\n lucenePath: 'root_polymer_monomers_amount_created', CVDomain: '',\n displayName: 'Monomer Amount Created',\n dataType: 'number', luceneQueryable: true},\n'Monomer Amount Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/monomers/?/amount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_monomers_amount_createdBy', CVDomain: '',\n displayName: 'Monomer Amount Created By',\n dataType: 'string', luceneQueryable: true},\n'Monomer Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/monomers/?/amount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_monomers_amount_deprecated', CVDomain: '',\n displayName: 'Monomer Amount Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Monomer Amount High': {fieldName: 'High',\n fieldPath: '/polymer/monomers/?/amount/high', finalField: 'high',\n lucenePath: 'root_polymer_monomers_amount_high', CVDomain: '',\n displayName: 'Monomer Amount High',\n dataType: 'number', luceneQueryable: true},\n'Monomer Amount High Limit': {fieldName: 'High Limit',\n fieldPath: '/polymer/monomers/?/amount/highLimit', finalField: 'highLimit',\n lucenePath: 'root_polymer_monomers_amount_highLimit', CVDomain: '',\n displayName: 'Monomer Amount High Limit',\n dataType: 'number', luceneQueryable: true},\n'Monomer Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/monomers/?/amount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_monomers_amount_lastEdited', CVDomain: '',\n displayName: 'Monomer Amount Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Monomer Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/monomers/?/amount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_monomers_amount_lastEditedBy', CVDomain: '',\n displayName: 'Monomer Amount Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Monomer Amount Low': {fieldName: 'Low',\n fieldPath: '/polymer/monomers/?/amount/low', finalField: 'low',\n lucenePath: 'root_polymer_monomers_amount_low', CVDomain: '',\n displayName: 'Monomer Amount Low',\n dataType: 'number', luceneQueryable: true},\n'Monomer Amount Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/polymer/monomers/?/amount/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_polymer_monomers_amount_lowLimit', CVDomain: '',\n displayName: 'Monomer Amount Low Limit',\n dataType: 'number', luceneQueryable: true},\n'Monomer Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/polymer/monomers/?/amount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_polymer_monomers_amount_nonNumericValue', CVDomain: '',\n displayName: 'Monomer Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: true},\n'Monomer Amount Type': {fieldName: 'Type',\n fieldPath: '/polymer/monomers/?/amount/type', finalField: 'type',\n lucenePath: 'root_polymer_monomers_amount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Monomer Amount Type',\n dataType: 'string', luceneQueryable: true},\n'Monomer Amount Units': {fieldName: 'Units',\n fieldPath: '/polymer/monomers/?/amount/units', finalField: 'units',\n lucenePath: 'root_polymer_monomers_amount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Monomer Amount Units',\n dataType: 'string', luceneQueryable: true},\n'Monomer Created': {fieldName: 'Created',\n fieldPath: '/polymer/monomers/?/created', finalField: 'created',\n lucenePath: 'root_polymer_monomers_created', CVDomain: '',\n displayName: 'Monomer Created',\n dataType: 'number', luceneQueryable: true},\n'Monomer Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/monomers/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_monomers_createdBy', CVDomain: '',\n displayName: 'Monomer Created By',\n dataType: 'string', luceneQueryable: true},\n'Monomer Defining': {fieldName: 'Defining',\n fieldPath: '/polymer/monomers/?/defining', finalField: 'defining',\n lucenePath: 'root_polymer_monomers_defining', CVDomain: '',\n displayName: 'Monomer Defining',\n dataType: 'boolean', luceneQueryable: true},\n'Monomer Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/monomers/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_monomers_deprecated', CVDomain: '',\n displayName: 'Monomer Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Monomer Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/monomers/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_monomers_lastEdited', CVDomain: '',\n displayName: 'Monomer Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Monomer Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/monomers/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_monomers_lastEditedBy', CVDomain: '',\n displayName: 'Monomer Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Monomer Substance Access': {fieldName: 'Access',\n fieldPath: '/polymer/monomers/?/monomerSubstance/access', finalField: 'access',\n lucenePath: 'root_polymer_monomers_monomerSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Monomer Substance Access',\n dataType: 'array ', luceneQueryable: true},\n'Monomer Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/polymer/monomers/?/monomerSubstance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_polymer_monomers_monomerSubstance_approvalID', CVDomain: '',\n displayName: 'Monomer Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Monomer Substance Created': {fieldName: 'Created',\n fieldPath: '/polymer/monomers/?/monomerSubstance/created', finalField: 'created',\n lucenePath: 'root_polymer_monomers_monomerSubstance_created', CVDomain: '',\n displayName: 'Monomer Substance Created',\n dataType: 'number', luceneQueryable: true},\n'Monomer Substance Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/monomers/?/monomerSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_monomers_monomerSubstance_createdBy', CVDomain: '',\n displayName: 'Monomer Substance Created By',\n dataType: 'string', luceneQueryable: true},\n'Monomer Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/monomers/?/monomerSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_monomers_monomerSubstance_deprecated', CVDomain: '',\n displayName: 'Monomer Substance Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Monomer Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/monomers/?/monomerSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_monomers_monomerSubstance_lastEdited', CVDomain: '',\n displayName: 'Monomer Substance Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Monomer Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/monomers/?/monomerSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_monomers_monomerSubstance_lastEditedBy', CVDomain: '',\n displayName: 'Monomer Substance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Monomer Substance Name': {fieldName: 'Ref Pname',\n fieldPath: '/polymer/monomers/?/monomerSubstance/refPname', finalField: 'refPname',\n lucenePath: 'root_polymer_monomers_monomerSubstance_refPname', CVDomain: '',\n displayName: 'Monomer Substance Name',\n dataType: 'string', luceneQueryable: true},\n'Monomer Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/polymer/monomers/?/monomerSubstance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_polymer_monomers_monomerSubstance_refuuid', CVDomain: '',\n displayName: 'Monomer Substance Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Monomer Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/polymer/monomers/?/monomerSubstance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_polymer_monomers_monomerSubstance_substanceClass', CVDomain: '',\n displayName: 'Monomer Substance Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Monomer Type': {fieldName: 'Type',\n fieldPath: '/polymer/monomers/?/type', finalField: 'type',\n lucenePath: 'root_polymer_monomers_type', CVDomain: 'MONOMER_TYPE',\n displayName: 'Monomer Type',\n dataType: 'string', luceneQueryable: true},\n'SRU Access': {fieldName: 'Access',\n fieldPath: '/polymer/structuralUnits/?/access', finalField: 'access',\n lucenePath: 'root_polymer_structuralUnits_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'SRU Access',\n dataType: 'array ', luceneQueryable: true},\n'SRU Amount Access': {fieldName: 'Access',\n fieldPath: '/polymer/structuralUnits/?/amount/access', finalField: 'access',\n lucenePath: 'root_polymer_structuralUnits_amount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'SRU Amount Access',\n dataType: 'array ', luceneQueryable: true},\n'SRU Amount Average': {fieldName: 'Average',\n fieldPath: '/polymer/structuralUnits/?/amount/average', finalField: 'average',\n lucenePath: 'root_polymer_structuralUnits_amount_average', CVDomain: '',\n displayName: 'SRU Amount Average',\n dataType: 'number', luceneQueryable: true},\n'SRU Amount Created': {fieldName: 'Created',\n fieldPath: '/polymer/structuralUnits/?/amount/created', finalField: 'created',\n lucenePath: 'root_polymer_structuralUnits_amount_created', CVDomain: '',\n displayName: 'SRU Amount Created',\n dataType: 'number', luceneQueryable: true},\n'SRU Amount Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/structuralUnits/?/amount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_structuralUnits_amount_createdBy', CVDomain: '',\n displayName: 'SRU Amount Created By',\n dataType: 'string', luceneQueryable: true},\n'SRU Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/structuralUnits/?/amount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_structuralUnits_amount_deprecated', CVDomain: '',\n displayName: 'SRU Amount Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'SRU Amount High': {fieldName: 'High',\n fieldPath: '/polymer/structuralUnits/?/amount/high', finalField: 'high',\n lucenePath: 'root_polymer_structuralUnits_amount_high', CVDomain: '',\n displayName: 'SRU Amount High',\n dataType: 'number', luceneQueryable: true},\n'SRU Amount High Limit': {fieldName: 'High Limit',\n fieldPath: '/polymer/structuralUnits/?/amount/highLimit', finalField: 'highLimit',\n lucenePath: 'root_polymer_structuralUnits_amount_highLimit', CVDomain: '',\n displayName: 'SRU Amount High Limit',\n dataType: 'number', luceneQueryable: true},\n'SRU Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/structuralUnits/?/amount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_structuralUnits_amount_lastEdited', CVDomain: '',\n displayName: 'SRU Amount Last Edited',\n dataType: 'number', luceneQueryable: true},\n'SRU Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/structuralUnits/?/amount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_structuralUnits_amount_lastEditedBy', CVDomain: '',\n displayName: 'SRU Amount Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'SRU Amount Low': {fieldName: 'Low',\n fieldPath: '/polymer/structuralUnits/?/amount/low', finalField: 'low',\n lucenePath: 'root_polymer_structuralUnits_amount_low', CVDomain: '',\n displayName: 'SRU Amount Low',\n dataType: 'number', luceneQueryable: true},\n'SRU Amount Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/polymer/structuralUnits/?/amount/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_polymer_structuralUnits_amount_lowLimit', CVDomain: '',\n displayName: 'SRU Amount Low Limit',\n dataType: 'number', luceneQueryable: true},\n'SRU Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/polymer/structuralUnits/?/amount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_polymer_structuralUnits_amount_nonNumericValue', CVDomain: '',\n displayName: 'SRU Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: true},\n'SRU Amount Type': {fieldName: 'Type',\n fieldPath: '/polymer/structuralUnits/?/amount/type', finalField: 'type',\n lucenePath: 'root_polymer_structuralUnits_amount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'SRU Amount Type',\n dataType: 'string', luceneQueryable: true},\n'SRU Amount Units': {fieldName: 'Units',\n fieldPath: '/polymer/structuralUnits/?/amount/units', finalField: 'units',\n lucenePath: 'root_polymer_structuralUnits_amount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'SRU Amount Units',\n dataType: 'string', luceneQueryable: true},\n'SRU Attachment Count': {fieldName: 'Attachment Count',\n fieldPath: '/polymer/structuralUnits/?/attachmentCount', finalField: 'attachmentCount',\n lucenePath: 'root_polymer_structuralUnits_attachmentCount', CVDomain: '',\n displayName: 'SRU Attachment Count',\n dataType: 'number', luceneQueryable: true},\n'SRU Created': {fieldName: 'Created',\n fieldPath: '/polymer/structuralUnits/?/created', finalField: 'created',\n lucenePath: 'root_polymer_structuralUnits_created', CVDomain: '',\n displayName: 'SRU Created',\n dataType: 'number', luceneQueryable: true},\n'SRU Created By': {fieldName: 'Created By',\n fieldPath: '/polymer/structuralUnits/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_polymer_structuralUnits_createdBy', CVDomain: '',\n displayName: 'SRU Created By',\n dataType: 'string', luceneQueryable: true},\n'SRU Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/polymer/structuralUnits/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_polymer_structuralUnits_deprecated', CVDomain: '',\n displayName: 'SRU Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'SRU Label': {fieldName: 'Label',\n fieldPath: '/polymer/structuralUnits/?/label', finalField: 'label',\n lucenePath: 'root_polymer_structuralUnits_label', CVDomain: '',\n displayName: 'SRU Label',\n dataType: 'string', luceneQueryable: true},\n'SRU Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/polymer/structuralUnits/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_polymer_structuralUnits_lastEdited', CVDomain: '',\n displayName: 'SRU Last Edited',\n dataType: 'number', luceneQueryable: true},\n'SRU Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/polymer/structuralUnits/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_polymer_structuralUnits_lastEditedBy', CVDomain: '',\n displayName: 'SRU Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'SRU Structure': {fieldName: 'structure',\n fieldPath: '/polymer/structuralUnits/?/structure', finalField: 'structure',\n lucenePath: 'root_polymer_structuralUnits_structure', CVDomain: '',\n displayName: 'SRU Structure',\n dataType: 'string', luceneQueryable: true},\n'SRU Type': {fieldName: 'Type',\n fieldPath: '/polymer/structuralUnits/?/type', finalField: 'type',\n lucenePath: 'root_polymer_structuralUnits_type', CVDomain: 'POLYMER_SRU_TYPE',\n displayName: 'SRU Type',\n dataType: 'string', luceneQueryable: true},\n'Property Access': {fieldName: 'Access',\n fieldPath: '/properties/?/access', finalField: 'access',\n lucenePath: 'root_properties_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Property Access',\n dataType: 'array ', luceneQueryable: true},\n'Property Created': {fieldName: 'Created',\n fieldPath: '/properties/?/created', finalField: 'created',\n lucenePath: 'root_properties_created', CVDomain: '',\n displayName: 'Property Created',\n dataType: 'number', luceneQueryable: true},\n'Property Created By': {fieldName: 'Created By',\n fieldPath: '/properties/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_properties_createdBy', CVDomain: '',\n displayName: 'Property Created By',\n dataType: 'string', luceneQueryable: true},\n'Property Defining': {fieldName: 'Defining',\n fieldPath: '/properties/?/defining', finalField: 'defining',\n lucenePath: 'root_properties_defining', CVDomain: '',\n displayName: 'Property Defining',\n dataType: 'boolean', luceneQueryable: true},\n'Property Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/properties/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_properties_deprecated', CVDomain: '',\n displayName: 'Property Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Property Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/properties/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_properties_lastEdited', CVDomain: '',\n displayName: 'Property Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Property Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/properties/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_properties_lastEditedBy', CVDomain: '',\n displayName: 'Property Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Property Name': {fieldName: 'Property Name',\n fieldPath: '/properties/?/name', finalField: 'name',\n lucenePath: 'root_properties_name', CVDomain: 'PROPERTY_NAME',\n displayName: 'Property Name',\n dataType: 'string', luceneQueryable: true},\n'Property Parameters': {fieldName: 'Property Parameters',\n fieldPath: '/properties/?/parameters', finalField: 'parameters',\n lucenePath: 'root_properties_parameters', CVDomain: '',\n displayName: 'Property Parameters',\n dataType: 'array ', luceneQueryable: true},\n'Parameter Access': {fieldName: 'Access',\n fieldPath: '/properties/?/parameters/?/access', finalField: 'access',\n lucenePath: 'root_properties_parameters_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Parameter Access',\n dataType: 'array ', luceneQueryable: true},\n'Parameter Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/properties/?/parameters/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_properties_parameters_deprecated', CVDomain: '',\n displayName: 'Parameter Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Parameter Value Access': {fieldName: 'Access',\n fieldPath: '/properties/?/parameters/?/value/access', finalField: 'access',\n lucenePath: 'root_properties_parameters_value_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Parameter Value Access',\n dataType: 'array ', luceneQueryable: true},\n'Parameter Value Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/properties/?/parameters/?/value/deprecated', finalField: 'deprecated',\n lucenePath: 'root_properties_parameters_value_deprecated', CVDomain: '',\n displayName: 'Parameter Value Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Property Property Type': {fieldName: 'Property Type',\n fieldPath: '/properties/?/propertyType', finalField: 'propertyType',\n lucenePath: 'root_properties_propertyType', CVDomain: 'PROPERTY_TYPE',\n displayName: 'Property Property Type',\n dataType: 'string', luceneQueryable: true},\n'Property Value': {fieldName: 'Property Value',\n fieldPath: '/properties/?/value', finalField: 'value',\n lucenePath: 'root_properties_value', CVDomain: '',\n displayName: 'Property Value',\n dataType: 'object ', luceneQueryable: true},\n'Value Access': {fieldName: 'Access',\n fieldPath: '/properties/?/value/access', finalField: 'access',\n lucenePath: 'root_properties_value_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Value Access',\n dataType: 'array ', luceneQueryable: true},\n'Value Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/properties/?/value/deprecated', finalField: 'deprecated',\n lucenePath: 'root_properties_value_deprecated', CVDomain: '',\n displayName: 'Value Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Protein Access': {fieldName: 'Access',\n fieldPath: '/protein/access', finalField: 'access',\n lucenePath: 'root_protein_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Protein Access',\n dataType: 'array ', luceneQueryable: true},\n'Protein Created': {fieldName: 'Created',\n fieldPath: '/protein/created', finalField: 'created',\n lucenePath: 'root_protein_created', CVDomain: '',\n displayName: 'Protein Created',\n dataType: 'number', luceneQueryable: true},\n'Protein Created By': {fieldName: 'Created By',\n fieldPath: '/protein/createdBy', finalField: 'createdBy',\n lucenePath: 'root_protein_createdBy', CVDomain: '',\n displayName: 'Protein Created By',\n dataType: 'string', luceneQueryable: true},\n'Protein Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/protein/deprecated', finalField: 'deprecated',\n lucenePath: 'root_protein_deprecated', CVDomain: '',\n displayName: 'Protein Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Protein Glycosylation Access': {fieldName: 'Access',\n fieldPath: '/protein/glycosylation/access', finalField: 'access',\n lucenePath: 'root_protein_glycosylation_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Protein Glycosylation Access',\n dataType: 'array ', luceneQueryable: true},\n'Protein Glycosylation Created': {fieldName: 'Created',\n fieldPath: '/protein/glycosylation/created', finalField: 'created',\n lucenePath: 'root_protein_glycosylation_created', CVDomain: '',\n displayName: 'Protein Glycosylation Created',\n dataType: 'number', luceneQueryable: true},\n'Protein Glycosylation Created By': {fieldName: 'Created By',\n fieldPath: '/protein/glycosylation/createdBy', finalField: 'createdBy',\n lucenePath: 'root_protein_glycosylation_createdBy', CVDomain: '',\n displayName: 'Protein Glycosylation Created By',\n dataType: 'string', luceneQueryable: true},\n'Protein Glycosylation Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/protein/glycosylation/deprecated', finalField: 'deprecated',\n lucenePath: 'root_protein_glycosylation_deprecated', CVDomain: '',\n displayName: 'Protein Glycosylation Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Protein Glycosylation Type': {fieldName: 'Glycosylation Type',\n fieldPath: '/protein/glycosylation/glycosylationType', finalField: 'glycosylationType',\n lucenePath: 'root_protein_glycosylation_glycosylationType', CVDomain: 'GLYCOSYLATION_TYPE',\n displayName: 'Protein Glycosylation Type',\n dataType: 'string', luceneQueryable: true},\n'Protein Glycosylation Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/protein/glycosylation/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_protein_glycosylation_lastEdited', CVDomain: '',\n displayName: 'Protein Glycosylation Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Protein Glycosylation Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/protein/glycosylation/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_protein_glycosylation_lastEditedBy', CVDomain: '',\n displayName: 'Protein Glycosylation Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Protein Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/protein/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_protein_lastEdited', CVDomain: '',\n displayName: 'Protein Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Protein Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/protein/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_protein_lastEditedBy', CVDomain: '',\n displayName: 'Protein Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Other Link Access': {fieldName: 'Access',\n fieldPath: '/protein/otherLinks/?/access', finalField: 'access',\n lucenePath: 'root_protein_otherLinks_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Other Link Access',\n dataType: 'array ', luceneQueryable: true},\n'Other Link Created': {fieldName: 'Created',\n fieldPath: '/protein/otherLinks/?/created', finalField: 'created',\n lucenePath: 'root_protein_otherLinks_created', CVDomain: '',\n displayName: 'Other Link Created',\n dataType: 'number', luceneQueryable: true},\n'Other Link Created By': {fieldName: 'Created By',\n fieldPath: '/protein/otherLinks/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_protein_otherLinks_createdBy', CVDomain: '',\n displayName: 'Other Link Created By',\n dataType: 'string', luceneQueryable: true},\n'Other Link Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/protein/otherLinks/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_protein_otherLinks_deprecated', CVDomain: '',\n displayName: 'Other Link Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Other Link Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/protein/otherLinks/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_protein_otherLinks_lastEdited', CVDomain: '',\n displayName: 'Other Link Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Other Link Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/protein/otherLinks/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_protein_otherLinks_lastEditedBy', CVDomain: '',\n displayName: 'Other Link Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Other Link Linkagetype': {fieldName: 'Linkage Type',\n fieldPath: '/protein/otherLinks/?/linkageType', finalField: 'linkageType',\n lucenePath: 'root_protein_otherLinks_linkageType', CVDomain: 'OTHER_LINKAGE_TYPE',\n displayName: 'Other Link Linkagetype',\n dataType: 'string', luceneQueryable: true},\n'Protein Protein Subtype': {fieldName: 'Protein Sub Type',\n fieldPath: '/protein/proteinSubType', finalField: 'proteinSubType',\n lucenePath: 'root_protein_proteinSubType', CVDomain: 'PROTEIN_SUBTYPE',\n displayName: 'Protein Protein Subtype',\n dataType: 'string', luceneQueryable: true},\n'Protein Proteintype': {fieldName: 'Protein Type',\n fieldPath: '/protein/proteinType', finalField: 'proteinType',\n lucenePath: 'root_protein_proteinType', CVDomain: 'PROTEIN_TYPE',\n displayName: 'Protein Proteintype',\n dataType: 'string', luceneQueryable: true},\n'Protein Sequence Origin': {fieldName: 'Sequence Origin',\n fieldPath: '/protein/sequenceOrigin', finalField: 'sequenceOrigin',\n lucenePath: 'root_protein_sequenceOrigin', CVDomain: 'SEQUENCE_ORIGIN',\n displayName: 'Protein Sequence Origin',\n dataType: 'string', luceneQueryable: true},\n'Protein Sequence Type': {fieldName: 'Sequence Type',\n fieldPath: '/protein/sequenceType', finalField: 'sequenceType',\n lucenePath: 'root_protein_sequenceType', CVDomain: 'SEQUENCE_TYPE',\n displayName: 'Protein Sequence Type',\n dataType: 'string', luceneQueryable: true},\n'Protein Subunit Access': {fieldName: 'Access',\n fieldPath: '/protein/subunits/?/access', finalField: 'access',\n lucenePath: 'root_protein_subunits_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Protein Subunit Access',\n dataType: 'array ', luceneQueryable: true},\n'Protein Subunit Created': {fieldName: 'Created',\n fieldPath: '/protein/subunits/?/created', finalField: 'created',\n lucenePath: 'root_protein_subunits_created', CVDomain: '',\n displayName: 'Protein Subunit Created',\n dataType: 'number', luceneQueryable: true},\n'Protein Subunit Created By': {fieldName: 'Created By',\n fieldPath: '/protein/subunits/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_protein_subunits_createdBy', CVDomain: '',\n displayName: 'Protein Subunit Created By',\n dataType: 'string', luceneQueryable: true},\n'Protein Subunit Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/protein/subunits/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_protein_subunits_deprecated', CVDomain: '',\n displayName: 'Protein Subunit Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Protein Subunit Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/protein/subunits/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_protein_subunits_lastEdited', CVDomain: '',\n displayName: 'Protein Subunit Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Protein Subunit Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/protein/subunits/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_protein_subunits_lastEditedBy', CVDomain: '',\n displayName: 'Protein Subunit Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Protein Sequence': {fieldName: 'Sequence',\n fieldPath: '/protein/subunits/?/sequence', finalField: 'sequence',\n lucenePath: 'root_protein_subunits_sequence', CVDomain: '',\n displayName: 'Protein Sequence',\n dataType: 'string', luceneQueryable: true},\n'Protein Subunit Subunit Index': {fieldName: 'Subunit Index',\n fieldPath: '/protein/subunits/?/subunitIndex', finalField: 'subunitIndex',\n lucenePath: 'root_protein_subunits_subunitIndex', CVDomain: '',\n displayName: 'Protein Subunit Subunit Index',\n dataType: 'number', luceneQueryable: true},\n'Reference Access': {fieldName: 'Access',\n fieldPath: '/references/?/access', finalField: 'access',\n lucenePath: 'root_references_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Reference Access',\n dataType: 'array ', luceneQueryable: true},\n'Reference Text / Citation': {fieldName: 'CITATION',\n fieldPath: '/references/?/citation', finalField: 'citation',\n lucenePath: 'root_references_citation', CVDomain: '',\n displayName: 'Reference Text / Citation',\n dataType: 'string', luceneQueryable: true},\n'Reference Created': {fieldName: 'Created',\n fieldPath: '/references/?/created', finalField: 'created',\n lucenePath: 'root_references_created', CVDomain: '',\n displayName: 'Reference Created',\n dataType: 'number', luceneQueryable: true},\n'Reference Created By': {fieldName: 'Created By',\n fieldPath: '/references/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_references_createdBy', CVDomain: '',\n displayName: 'Reference Created By',\n dataType: 'string', luceneQueryable: true},\n'Reference Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/references/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_references_deprecated', CVDomain: '',\n displayName: 'Reference Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Reference Type': {fieldName: 'Doc Type',\n fieldPath: '/references/?/docType', finalField: 'docType',\n lucenePath: 'root_references_docType', CVDomain: 'DOCUMENT_TYPE',\n displayName: 'Reference Type',\n dataType: 'string', luceneQueryable: true},\n'Reference Document Date': {fieldName: 'Document Date',\n fieldPath: '/references/?/documentDate', finalField: 'documentDate',\n lucenePath: 'root_references_documentDate', CVDomain: '',\n displayName: 'Reference Document Date',\n dataType: 'number', luceneQueryable: true},\n'Reference ID': {fieldName: 'Id',\n fieldPath: '/references/?/id', finalField: 'id',\n lucenePath: 'root_references_id', CVDomain: '',\n displayName: 'Reference ID',\n dataType: 'string', luceneQueryable: true},\n'Reference Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/references/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_references_lastEdited', CVDomain: '',\n displayName: 'Reference Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Reference Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/references/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_references_lastEditedBy', CVDomain: '',\n displayName: 'Reference Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Reference Public Domain': {fieldName: 'Public Domain',\n fieldPath: '/references/?/publicDomain', finalField: 'publicDomain',\n lucenePath: 'root_references_publicDomain', CVDomain: '',\n displayName: 'Reference Public Domain',\n dataType: 'boolean', luceneQueryable: true},\n'Reference Uploaded File': {fieldName: 'Uploaded File',\n fieldPath: '/references/?/uploadedFile', finalField: 'uploadedFile',\n lucenePath: 'root_references_uploadedFile', CVDomain: '',\n displayName: 'Reference Uploaded File',\n dataType: 'string', luceneQueryable: true},\n'Reference URL': {fieldName: 'Url',\n fieldPath: '/references/?/url', finalField: 'url',\n lucenePath: 'root_references_url', CVDomain: '',\n displayName: 'Reference URL',\n dataType: 'string', luceneQueryable: true},\n'Relationship Access': {fieldName: 'Access',\n fieldPath: '/relationships/?/access', finalField: 'access',\n lucenePath: 'root_relationships_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Relationship Access',\n dataType: 'array ', luceneQueryable: true},\n'Relationship Amount Access': {fieldName: 'Access',\n fieldPath: '/relationships/?/amount/access', finalField: 'access',\n lucenePath: 'root_relationships_amount_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Relationship Amount Access',\n dataType: 'array ', luceneQueryable: true},\n'Relationship Amount Average': {fieldName: 'Average',\n fieldPath: '/relationships/?/amount/average', finalField: 'average',\n lucenePath: 'root_relationships_amount_average', CVDomain: '',\n displayName: 'Relationship Amount Average',\n dataType: 'number', luceneQueryable: true},\n'Relationship Amount Created': {fieldName: 'Created',\n fieldPath: '/relationships/?/amount/created', finalField: 'created',\n lucenePath: 'root_relationships_amount_created', CVDomain: '',\n displayName: 'Relationship Amount Created',\n dataType: 'number', luceneQueryable: true},\n'Relationship Amount Created By': {fieldName: 'Created By',\n fieldPath: '/relationships/?/amount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_relationships_amount_createdBy', CVDomain: '',\n displayName: 'Relationship Amount Created By',\n dataType: 'string', luceneQueryable: true},\n'Relationship Amount Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/relationships/?/amount/deprecated', finalField: 'deprecated',\n lucenePath: 'root_relationships_amount_deprecated', CVDomain: '',\n displayName: 'Relationship Amount Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Relationship Amount High': {fieldName: 'High',\n fieldPath: '/relationships/?/amount/high', finalField: 'high',\n lucenePath: 'root_relationships_amount_high', CVDomain: '',\n displayName: 'Relationship Amount High',\n dataType: 'number', luceneQueryable: true},\n'Relationship Amount High Limit': {fieldName: 'High Limit',\n fieldPath: '/relationships/?/amount/highLimit', finalField: 'highLimit',\n lucenePath: 'root_relationships_amount_highLimit', CVDomain: '',\n displayName: 'Relationship Amount High Limit',\n dataType: 'number', luceneQueryable: true},\n'Relationship Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/relationships/?/amount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_relationships_amount_lastEdited', CVDomain: '',\n displayName: 'Relationship Amount Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Relationship Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/relationships/?/amount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_relationships_amount_lastEditedBy', CVDomain: '',\n displayName: 'Relationship Amount Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Relationship Amount Low': {fieldName: 'Low',\n fieldPath: '/relationships/?/amount/low', finalField: 'low',\n lucenePath: 'root_relationships_amount_low', CVDomain: '',\n displayName: 'Relationship Amount Low',\n dataType: 'number', luceneQueryable: true},\n'Relationship Amount Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/relationships/?/amount/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_relationships_amount_lowLimit', CVDomain: '',\n displayName: 'Relationship Amount Low Limit',\n dataType: 'number', luceneQueryable: true},\n'Relationship Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/relationships/?/amount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_relationships_amount_nonNumericValue', CVDomain: '',\n displayName: 'Relationship Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: true},\n'Relationship Amount Type': {fieldName: 'Type',\n fieldPath: '/relationships/?/amount/type', finalField: 'type',\n lucenePath: 'root_relationships_amount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Relationship Amount Type',\n dataType: 'string', luceneQueryable: true},\n'Relationship Amount Units': {fieldName: 'Units',\n fieldPath: '/relationships/?/amount/units', finalField: 'units',\n lucenePath: 'root_relationships_amount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Relationship Amount Units',\n dataType: 'string', luceneQueryable: true},\n'Relationship Comments': {fieldName: 'Comments',\n fieldPath: '/relationships/?/comments', finalField: 'comments',\n lucenePath: 'root_relationships_comments', CVDomain: '',\n displayName: 'Relationship Comments',\n dataType: 'string', luceneQueryable: true},\n'Relationship Created': {fieldName: 'Created',\n fieldPath: '/relationships/?/created', finalField: 'created',\n lucenePath: 'root_relationships_created', CVDomain: '',\n displayName: 'Relationship Created',\n dataType: 'number', luceneQueryable: true},\n'Relationship Created By': {fieldName: 'Created By',\n fieldPath: '/relationships/?/createdBy', finalField: 'createdBy',\n lucenePath: 'root_relationships_createdBy', CVDomain: '',\n displayName: 'Relationship Created By',\n dataType: 'string', luceneQueryable: true},\n'Relationship Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/relationships/?/deprecated', finalField: 'deprecated',\n lucenePath: 'root_relationships_deprecated', CVDomain: '',\n displayName: 'Relationship Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Relationship Interaction Type': {fieldName: 'Interaction Type',\n fieldPath: '/relationships/?/interactionType', finalField: 'interactionType',\n lucenePath: 'root_relationships_interactionType', CVDomain: 'INTERACTION_TYPE',\n displayName: 'Relationship Interaction Type',\n dataType: 'string', luceneQueryable: true},\n'Relationship Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/relationships/?/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_relationships_lastEdited', CVDomain: '',\n displayName: 'Relationship Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Relationship Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/relationships/?/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_relationships_lastEditedBy', CVDomain: '',\n displayName: 'Relationship Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Mediator Substance Access': {fieldName: 'Access',\n fieldPath: '/relationships/?/mediatorSubstance/access', finalField: 'access',\n lucenePath: 'root_relationships_mediatorSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Mediator Substance Access',\n dataType: 'array ', luceneQueryable: true},\n'Mediator Substance Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/relationships/?/mediatorSubstance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_relationships_mediatorSubstance_approvalID', CVDomain: '',\n displayName: 'Mediator Substance Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Mediator Substance Created': {fieldName: 'Created',\n fieldPath: '/relationships/?/mediatorSubstance/created', finalField: 'created',\n lucenePath: 'root_relationships_mediatorSubstance_created', CVDomain: '',\n displayName: 'Mediator Substance Created',\n dataType: 'number', luceneQueryable: true},\n'Mediator Substance Created By': {fieldName: 'Created By',\n fieldPath: '/relationships/?/mediatorSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_relationships_mediatorSubstance_createdBy', CVDomain: '',\n displayName: 'Mediator Substance Created By',\n dataType: 'string', luceneQueryable: true},\n'Mediator Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/relationships/?/mediatorSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_relationships_mediatorSubstance_deprecated', CVDomain: '',\n displayName: 'Mediator Substance Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Mediator Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/relationships/?/mediatorSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_relationships_mediatorSubstance_lastEdited', CVDomain: '',\n displayName: 'Mediator Substance Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Mediator Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/relationships/?/mediatorSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_relationships_mediatorSubstance_lastEditedBy', CVDomain: '',\n displayName: 'Mediator Substance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Mediator Substance Preferred Name': {fieldName: 'Ref Pname',\n fieldPath: '/relationships/?/mediatorSubstance/refPname', finalField: 'refPname',\n lucenePath: 'root_relationships_mediatorSubstance_refPname', CVDomain: '',\n displayName: 'Mediator Substance Preferred Name',\n dataType: 'string', luceneQueryable: true},\n'Mediator Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/relationships/?/mediatorSubstance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_relationships_mediatorSubstance_refuuid', CVDomain: '',\n displayName: 'Mediator Substance Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Mediator Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/relationships/?/mediatorSubstance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_relationships_mediatorSubstance_substanceClass', CVDomain: '',\n displayName: 'Mediator Substance Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Relationship Originator UUID': {fieldName: 'Originator UUID',\n fieldPath: '/relationships/?/originatorUuid', finalField: 'originatorUuid',\n lucenePath: 'root_relationships_originatorUuid', CVDomain: '',\n displayName: 'Relationship Originator UUID',\n dataType: 'string', luceneQueryable: true},\n'Relationship Qualification': {fieldName: 'Qualification',\n fieldPath: '/relationships/?/qualification', finalField: 'qualification',\n lucenePath: 'root_relationships_qualification', CVDomain: 'QUALIFICATION',\n displayName: 'Relationship Qualification',\n dataType: 'string', luceneQueryable: true},\n'Related Substance Access': {fieldName: 'Access',\n fieldPath: '/relationships/?/relatedSubstance/access', finalField: 'access',\n lucenePath: 'root_relationships_relatedSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Related Substance Access',\n dataType: 'array ', luceneQueryable: true},\n'Related Substance Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/relationships/?/relatedSubstance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_relationships_relatedSubstance_approvalID', CVDomain: '',\n displayName: 'Related Substance Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Related Substance Created': {fieldName: 'Created',\n fieldPath: '/relationships/?/relatedSubstance/created', finalField: 'created',\n lucenePath: 'root_relationships_relatedSubstance_created', CVDomain: '',\n displayName: 'Related Substance Created',\n dataType: 'number', luceneQueryable: true},\n'Related Substance Created By': {fieldName: 'Created By',\n fieldPath: '/relationships/?/relatedSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_relationships_relatedSubstance_createdBy', CVDomain: '',\n displayName: 'Related Substance Created By',\n dataType: 'string', luceneQueryable: true},\n'Related Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/relationships/?/relatedSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_relationships_relatedSubstance_deprecated', CVDomain: '',\n displayName: 'Related Substance Deprecated',\n dataType: 'boolean', luceneQueryable: true},\n'Related Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/relationships/?/relatedSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_relationships_relatedSubstance_lastEdited', CVDomain: '',\n displayName: 'Related Substance Last Edited',\n dataType: 'number', luceneQueryable: true},\n'Related Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/relationships/?/relatedSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_relationships_relatedSubstance_lastEditedBy', CVDomain: '',\n displayName: 'Related Substance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Related Substance Name': {fieldName: 'Ref Pname',\n fieldPath: '/relationships/?/relatedSubstance/refPname', finalField: 'refPname',\n lucenePath: 'root_relationships_relatedSubstance_refPname', CVDomain: '',\n displayName: 'Related Substance Name',\n dataType: 'string', luceneQueryable: true},\n'Related Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/relationships/?/relatedSubstance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_relationships_relatedSubstance_refuuid', CVDomain: '',\n displayName: 'Related Substance Refuuid',\n dataType: 'string', luceneQueryable: true},\n'Related Substance Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/relationships/?/relatedSubstance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_relationships_relatedSubstance_substanceClass', CVDomain: '',\n displayName: 'Related Substance Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Relationship Type': {fieldName: 'Type',\n fieldPath: '/relationships/?/type', finalField: 'type',\n lucenePath: 'root_relationships_type', CVDomain: 'RELATIONSHIP_TYPE',\n displayName: 'Relationship Type',\n dataType: 'string', luceneQueryable: true},\n'Record Status': {fieldName: 'Status',\n fieldPath: '/status', finalField: 'status',\n lucenePath: 'root_status', CVDomain: '',\n displayName: 'Record Status',\n dataType: 'object ', luceneQueryable: true},\n'Structurally Diverse Access': {fieldName: 'Access',\n fieldPath: '/structurallyDiverse/access', finalField: 'access',\n lucenePath: 'root_structurallyDiverse_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Structurally Diverse Access',\n dataType: 'array ', luceneQueryable: true},\n'Structurally Diverse Created': {fieldName: 'Created',\n fieldPath: '/structurallyDiverse/created', finalField: 'created',\n lucenePath: 'root_structurallyDiverse_created', CVDomain: '',\n displayName: 'Structurally Diverse Created',\n dataType: 'object ', luceneQueryable: true},\n'Structurally Diverse Created By': {fieldName: 'Created By',\n fieldPath: '/structurallyDiverse/createdBy', finalField: 'createdBy',\n lucenePath: 'root_structurallyDiverse_createdBy', CVDomain: '',\n displayName: 'Structurally Diverse Created By',\n dataType: 'array ', luceneQueryable: true},\n'Structurally Diverse Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/structurallyDiverse/deprecated', finalField: 'deprecated',\n lucenePath: 'root_structurallyDiverse_deprecated', CVDomain: '',\n displayName: 'Structurally Diverse Deprecated',\n dataType: 'number', luceneQueryable: true},\n'Structurally Diverse Developmental Stage': {fieldName: 'Developmental Stage',\n fieldPath: '/structurallyDiverse/developmentalStage', finalField: 'developmentalStage',\n lucenePath: 'root_structurallyDiverse_developmentalStage', CVDomain: 'DEVELOPMENTAL_STAGE',\n displayName: 'Structurally Diverse Developmental Stage',\n dataType: 'number', luceneQueryable: true},\n'Structurally Diverse Fraction Material Type': {fieldName: 'Fraction Material Type',\n fieldPath: '/structurallyDiverse/fractionMaterialType', finalField: 'fractionMaterialType',\n lucenePath: 'root_structurallyDiverse_fractionMaterialType', CVDomain: 'FRACTION_MATERIAL_TYPE',\n displayName: 'Structurally Diverse Fraction Material Type',\n dataType: 'string', luceneQueryable: true},\n'Structurally Diverse Fraction Name': {fieldName: 'Fraction Name',\n fieldPath: '/structurallyDiverse/fractionName', finalField: 'fractionName',\n lucenePath: 'root_structurallyDiverse_fractionName', CVDomain: '',\n displayName: 'Structurally Diverse Fraction Name',\n dataType: 'boolean', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Access': {fieldName: 'Access',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/access', finalField: 'access',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'St. Div. Hybrid Parent (m) Access',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/approvalID', finalField: 'approvalID',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_approvalID', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Approval ID',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Created': {fieldName: 'Created',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/created', finalField: 'created',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_created', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Created',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Created By': {fieldName: 'Created By',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/createdBy', finalField: 'createdBy',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_createdBy', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Created By',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/deprecated', finalField: 'deprecated',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_deprecated', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Deprecated',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_lastEdited', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Last Edited',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_lastEditedBy', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Last Edited By',\n dataType: 'array ', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Substance Name': {fieldName: 'Ref Pname',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/refPname', finalField: 'refPname',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_refPname', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Substance Name',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/refuuid', finalField: 'refuuid',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_refuuid', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Refuuid',\n dataType: 'object ', luceneQueryable: true},\n'St. Div. Hybrid Parent (m) Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/structurallyDiverse/hybridSpeciesMaternalOrganism/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesMaternalOrganism_substanceClass', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (m) Substance Class',\n dataType: 'array ', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Access': {fieldName: 'Access',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/access', finalField: 'access',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'St. Div. Hybrid Parent (p) Access',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/approvalID', finalField: 'approvalID',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_approvalID', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Approval ID',\n dataType: 'boolean', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Created': {fieldName: 'Created',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/created', finalField: 'created',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_created', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Created',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Created By': {fieldName: 'Created By',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/createdBy', finalField: 'createdBy',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_createdBy', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Created By',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/deprecated', finalField: 'deprecated',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_deprecated', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Deprecated',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_lastEdited', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Last Edited',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_lastEditedBy', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Last Edited By',\n dataType: 'array ', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Substance Name': {fieldName: 'Ref Pname',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/refPname', finalField: 'refPname',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_refPname', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Substance Name',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/refuuid', finalField: 'refuuid',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_refuuid', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Refuuid',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent (p) Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/structurallyDiverse/hybridSpeciesPaternalOrganism/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_structurallyDiverse_hybridSpeciesPaternalOrganism_substanceClass', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent (p) Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Structurally Diverse Infraspecific Name': {fieldName: 'Infra Specific Name',\n fieldPath: '/structurallyDiverse/infraSpecificName', finalField: 'infraSpecificName',\n lucenePath: 'root_structurallyDiverse_infraSpecificName', CVDomain: '',\n displayName: 'Structurally Diverse Infraspecific Name',\n dataType: 'number', luceneQueryable: true},\n'Structurally Diverse Infraspecific type': {fieldName: 'Infra Specific Type',\n fieldPath: '/structurallyDiverse/infraSpecificType', finalField: 'infraSpecificType',\n lucenePath: 'root_structurallyDiverse_infraSpecificType', CVDomain: 'INFRA_SPECIFIC_TYPE',\n displayName: 'Structurally Diverse Infraspecific type',\n dataType: 'string', luceneQueryable: true},\n'Structurally Diverse Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/structurallyDiverse/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_structurallyDiverse_lastEdited', CVDomain: '',\n displayName: 'Structurally Diverse Last Edited',\n dataType: 'array ', luceneQueryable: true},\n'Structurally Diverse Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/structurallyDiverse/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_structurallyDiverse_lastEditedBy', CVDomain: '',\n displayName: 'Structurally Diverse Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Organism Author': {fieldName: 'Author',\n fieldPath: '/structurallyDiverse/organismAuthor', finalField: 'organismAuthor',\n lucenePath: 'root_structurallyDiverse_organismAuthor', CVDomain: '',\n displayName: 'Organism Author',\n dataType: 'string', luceneQueryable: true},\n'Organism Family': {fieldName: 'Family',\n fieldPath: '/structurallyDiverse/organismFamily', finalField: 'organismFamily',\n lucenePath: 'root_structurallyDiverse_organismFamily', CVDomain: '',\n displayName: 'Organism Family',\n dataType: 'object ', luceneQueryable: true},\n'Organism Genus': {fieldName: 'Genus',\n fieldPath: '/structurallyDiverse/organismGenus', finalField: 'organismGenus',\n lucenePath: 'root_structurallyDiverse_organismGenus', CVDomain: '',\n displayName: 'Organism Genus',\n dataType: 'array ', luceneQueryable: true},\n'Organism Species': {fieldName: 'Species',\n fieldPath: '/structurallyDiverse/organismSpecies', finalField: 'organismSpecies',\n lucenePath: 'root_structurallyDiverse_organismSpecies', CVDomain: '',\n displayName: 'Organism Species',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent Access': {fieldName: 'Access',\n fieldPath: '/structurallyDiverse/parentSubstance/access', finalField: 'access',\n lucenePath: 'root_structurallyDiverse_parentSubstance_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'St. Div. Hybrid Parent Access',\n dataType: 'boolean', luceneQueryable: true},\n'St. Div. Parent Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/structurallyDiverse/parentSubstance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_structurallyDiverse_parentSubstance_approvalID', CVDomain: '',\n displayName: 'St. Div. Parent Approval ID',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent Created': {fieldName: 'Created',\n fieldPath: '/structurallyDiverse/parentSubstance/created', finalField: 'created',\n lucenePath: 'root_structurallyDiverse_parentSubstance_created', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Created',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent Created By': {fieldName: 'Created By',\n fieldPath: '/structurallyDiverse/parentSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_structurallyDiverse_parentSubstance_createdBy', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Created By',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/structurallyDiverse/parentSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_structurallyDiverse_parentSubstance_deprecated', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Deprecated',\n dataType: 'object ', luceneQueryable: true},\n'St. Div. Hybrid Parent Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/structurallyDiverse/parentSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_structurallyDiverse_parentSubstance_lastEdited', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Last Edited',\n dataType: 'array ', luceneQueryable: true},\n'St. Div. Hybrid Parent Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/structurallyDiverse/parentSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_structurallyDiverse_parentSubstance_lastEditedBy', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Parent Substance Name': {fieldName: 'Ref Pname',\n fieldPath: '/structurallyDiverse/parentSubstance/refPname', finalField: 'refPname',\n lucenePath: 'root_structurallyDiverse_parentSubstance_refPname', CVDomain: '',\n displayName: 'St. Div. Parent Substance Name',\n dataType: 'number', luceneQueryable: true},\n'St. Div. Hybrid Parent Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/structurallyDiverse/parentSubstance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_structurallyDiverse_parentSubstance_refuuid', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Refuuid',\n dataType: 'string', luceneQueryable: true},\n'St. Div. Hybrid Parent Substance Class': {fieldName: 'Substance Class',\n fieldPath: '/structurallyDiverse/parentSubstance/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_structurallyDiverse_parentSubstance_substanceClass', CVDomain: '',\n displayName: 'St. Div. Hybrid Parent Substance Class',\n dataType: 'string', luceneQueryable: true},\n'Structurally Diverse Partlocation': {fieldName: 'Part Location',\n fieldPath: '/structurallyDiverse/partLocation', finalField: 'partLocation',\n lucenePath: 'root_structurallyDiverse_partLocation', CVDomain: 'PART_LOCATION',\n displayName: 'Structurally Diverse Partlocation',\n dataType: 'string', luceneQueryable: true},\n'Source Material Class': {fieldName: 'Material Class',\n fieldPath: '/structurallyDiverse/sourceMaterialClass', finalField: 'sourceMaterialClass',\n lucenePath: 'root_structurallyDiverse_sourceMaterialClass', CVDomain: 'SOURCE_MATERIAL_CLASS',\n displayName: 'Source Material Class',\n dataType: 'string', luceneQueryable: true},\n'Source Material Source Material State': {fieldName: 'Source Material State',\n fieldPath: '/structurallyDiverse/sourceMaterialState', finalField: 'sourceMaterialState',\n lucenePath: 'root_structurallyDiverse_sourceMaterialState', CVDomain: 'SOURCE_MATERIAL_STATE',\n displayName: 'Source Material Source Material State',\n dataType: 'string', luceneQueryable: true},\n'Source Material Type': {fieldName: 'Material Type',\n fieldPath: '/structurallyDiverse/sourceMaterialType', finalField: 'sourceMaterialType',\n lucenePath: 'root_structurallyDiverse_sourceMaterialType', CVDomain: 'SOURCE_MATERIAL_TYPE',\n displayName: 'Source Material Type',\n dataType: 'object ', luceneQueryable: true},\n'Structure Access': {fieldName: 'Access',\n fieldPath: '/structure/access', finalField: 'access',\n lucenePath: 'root_structure_access', CVDomain: 'ACCESS_GROUP',\n displayName: 'Structure Access',\n dataType: 'number', luceneQueryable: true},\n'Structure Has Atropisomerism': {fieldName: 'Atropisomerism',\n fieldPath: '/structure/atropisomerism', finalField: 'atropisomerism',\n lucenePath: 'root_structure_atropisomerism', CVDomain: 'ATROPISOMERISM',\n displayName: 'Structure Has Atropisomerism',\n dataType: 'string', luceneQueryable: true},\n'Structure Charge': {fieldName: 'Charge',\n fieldPath: '/structure/charge', finalField: 'charge',\n lucenePath: 'root_structure_charge', CVDomain: '',\n displayName: 'Structure Charge',\n dataType: 'boolean', luceneQueryable: true},\n'Structure Count': {fieldName: 'Count',\n fieldPath: '/structure/count', finalField: 'count',\n lucenePath: 'root_structure_count', CVDomain: '',\n displayName: 'Structure Count',\n dataType: 'number', luceneQueryable: true},\n'Structure Created': {fieldName: 'Created',\n fieldPath: '/structure/created', finalField: 'created',\n lucenePath: 'root_structure_created', CVDomain: '',\n displayName: 'Structure Created',\n dataType: 'string', luceneQueryable: true},\n'Structure Created By': {fieldName: 'Created By',\n fieldPath: '/structure/createdBy', finalField: 'createdBy',\n lucenePath: 'root_structure_createdBy', CVDomain: '',\n displayName: 'Structure Created By',\n dataType: 'string', luceneQueryable: true},\n'Structure Defined Stereo': {fieldName: 'Defined Stereocenters Count',\n fieldPath: '/structure/definedStereo', finalField: 'definedStereo',\n lucenePath: 'root_structure_definedStereo', CVDomain: '',\n displayName: 'Structure Defined Stereo',\n dataType: 'string', luceneQueryable: true},\n'Structure Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/structure/deprecated', finalField: 'deprecated',\n lucenePath: 'root_structure_deprecated', CVDomain: '',\n displayName: 'Structure Deprecated',\n dataType: 'array ', luceneQueryable: true},\n'Structure Digest': {fieldName: 'Digest',\n fieldPath: '/structure/digest', finalField: 'digest',\n lucenePath: 'root_structure_digest', CVDomain: '',\n displayName: 'Structure Digest',\n dataType: 'string', luceneQueryable: true},\n'Structure Ez Centers': {fieldName: 'E/Z Center Count',\n fieldPath: '/structure/ezCenters', finalField: 'ezCenters',\n lucenePath: 'root_structure_ezCenters', CVDomain: '',\n displayName: 'Structure Ez Centers',\n dataType: 'string', luceneQueryable: true},\n'Mol Formua': {fieldName: 'Molecular Formula',\n fieldPath: '/structure/formula', finalField: 'formula',\n lucenePath: 'root_structure_formula', CVDomain: '',\n displayName: 'Mol Formua',\n dataType: 'string', luceneQueryable: true},\n'Structure Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/structure/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_structure_lastEdited', CVDomain: '',\n displayName: 'Structure Last Edited',\n dataType: 'string', luceneQueryable: true},\n'Structure Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/structure/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_structure_lastEditedBy', CVDomain: '',\n displayName: 'Structure Last Edited By',\n dataType: 'number', luceneQueryable: true},\n'Structure Mwt': {fieldName: 'Molecular Weight',\n fieldPath: '/structure/mwt', finalField: 'mwt',\n lucenePath: 'root_structure_mwt', CVDomain: '',\n displayName: 'Structure Mwt',\n dataType: 'string', luceneQueryable: true},\n'Structure Optical Activity': {fieldName: 'Optical Activity',\n fieldPath: '/structure/opticalActivity', finalField: 'opticalActivity',\n lucenePath: 'root_structure_opticalActivity', CVDomain: 'OPTICAL_ACTIVITY',\n displayName: 'Structure Optical Activity',\n dataType: 'string', luceneQueryable: true},\n'Structure Stereo Centers': {fieldName: 'Total Stereocenters Count',\n fieldPath: '/structure/stereoCenters', finalField: 'stereoCenters',\n lucenePath: 'root_structure_stereoCenters', CVDomain: '',\n displayName: 'Structure Stereo Centers',\n dataType: 'object ', luceneQueryable: true},\n'Structure Stereochemistry': {fieldName: 'Stereochemistry',\n fieldPath: '/structure/stereochemistry', finalField: 'stereochemistry',\n lucenePath: 'root_structure_stereoChemistry', CVDomain: 'STEREOCHEMISTRY_TYPE',\n displayName: 'Structure Stereochemistry',\n dataType: 'array ', luceneQueryable: true},\n'Structure Stereo Comments': {fieldName: 'Stereocomments',\n fieldPath: '/structure/stereoComments', finalField: 'stereoComments',\n lucenePath: 'root_structure_stereoComments', CVDomain: '',\n displayName: 'Structure Stereo Comments',\n dataType: 'string', luceneQueryable: true},\n'Substance Class': {fieldName: 'Substance Type',\n fieldPath: '/substanceClass', finalField: 'substanceClass',\n lucenePath: 'root_substanceClass', CVDomain: 'SUBSTANCE_CLASS',\n displayName: 'Substance Class',\n dataType: 'number', luceneQueryable: true},\n'Record Version': {fieldName: 'Version',\n fieldPath: '/version', finalField: 'version',\n lucenePath: 'root_version', CVDomain: '',\n displayName: 'Record Version',\n dataType: 'number', luceneQueryable: true},\n'SpecifiedSubstance Created': {fieldName: 'Created',\n fieldPath: '/specifiedSubstance/created', finalField: 'created',\n lucenePath: 'root_specifiedSubstance_created', CVDomain: '',\n displayName: 'SpecifiedSubstance Created',\n dataType: 'string', luceneQueryable: true},\n'SpecifiedSubstance Created By': {fieldName: 'Created By',\n fieldPath: '/specifiedSubstance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_specifiedSubstance_createdBy', CVDomain: '',\n displayName: 'SpecifiedSubstance Created By',\n dataType: 'array ', luceneQueryable: true},\n'SpecifiedSubstance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/specifiedSubstance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_specifiedSubstance_deprecated', CVDomain: '',\n displayName: 'SpecifiedSubstance Deprecated',\n dataType: 'string', luceneQueryable: true},\n'SpecifiedSubstance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/specifiedSubstance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_specifiedSubstance_lastEdited', CVDomain: '',\n displayName: 'SpecifiedSubstance Last Edited',\n dataType: 'string', luceneQueryable: true},\n'SpecifiedSubstance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/specifiedSubstance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_specifiedSubstance_lastEditedBy', CVDomain: '',\n displayName: 'SpecifiedSubstance Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Constituent Role': {fieldName: 'Role',\n fieldPath: '/specifiedSubstance/constituents/?/role', finalField: '',\n lucenePath: 'root_specifiedSubstance_constituents_role', CVDomain: 'CONSTITUENT_ROLE',\n displayName: 'Constituent Role',\n dataType: 'array ', luceneQueryable: true},\n'Constituent Substance Approval ID': {fieldName: 'Approval ID (UNII)',\n fieldPath: '/specifiedSubstance/constituents/?/substance/approvalID', finalField: 'approvalID',\n lucenePath: 'root_specifiedSubstance_constituents_substance_approvalID', CVDomain: '',\n displayName: 'Constituent Substance Approval ID',\n dataType: 'string', luceneQueryable: true},\n'Constituent Substance Created': {fieldName: 'Created',\n fieldPath: '/specifiedSubstance/constituents/?/substance/created', finalField: 'created',\n lucenePath: 'root_specifiedSubstance_constituents_substance_created', CVDomain: '',\n displayName: 'Constituent Substance Created',\n dataType: 'string', luceneQueryable: true},\n'Constituent Substance Created By': {fieldName: 'Created By',\n fieldPath: '/specifiedSubstance/constituents/?/substance/createdBy', finalField: 'createdBy',\n lucenePath: 'root_specifiedSubstance_constituents_substance_createdBy', CVDomain: '',\n displayName: 'Constituent Substance Created By',\n dataType: 'object ', luceneQueryable: true},\n'Constituent Substance Deprecated': {fieldName: 'Deprecated',\n fieldPath: '/specifiedSubstance/constituents/?/substance/deprecated', finalField: 'deprecated',\n lucenePath: 'root_specifiedSubstance_constituents_substance_deprecated', CVDomain: '',\n displayName: 'Constituent Substance Deprecated',\n dataType: 'array ', luceneQueryable: true},\n'Constituent Substance Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/specifiedSubstance/constituents/?/substance/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_specifiedSubstance_constituents_substance_lastEdited', CVDomain: '',\n displayName: 'Constituent Substance Last Edited',\n dataType: 'string', luceneQueryable: true},\n'Constituent Substance Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/specifiedSubstance/constituents/?/substance/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_specifiedSubstance_constituents_substance_lastEditedBy', CVDomain: '',\n displayName: 'Constituent Substance Last Edited By',\n dataType: 'number', luceneQueryable: true},\n'Constituent Substance Substance Name': {fieldName: 'Ref Pname',\n fieldPath: '/specifiedSubstance/constituents/?/substance/refPname', finalField: 'refPname',\n lucenePath: 'root_specifiedSubstance_constituents_substance_refPname', CVDomain: '',\n displayName: 'Constituent Substance Substance Name',\n dataType: 'number', luceneQueryable: true},\n'Constituent Substance Refuuid': {fieldName: 'Refuuid',\n fieldPath: '/specifiedSubstance/constituents/?/substance/refuuid', finalField: 'refuuid',\n lucenePath: 'root_specifiedSubstance_constituents_substance_refuuid', CVDomain: '',\n displayName: 'Constituent Substance Refuuid',\n dataType: 'boolean', luceneQueryable: true},\n'Constituent Substance UUID': {fieldName: 'Uuid',\n fieldPath: '/specifiedSubstance/constituents/?/substance/uuid', finalField: 'uuid',\n lucenePath: 'root_specifiedSubstance_constituents_substance_uuid', CVDomain: '',\n displayName: 'Constituent Substance UUID',\n dataType: 'number', luceneQueryable: true},\n'Constituent Amount Average': {fieldName: 'Average',\n fieldPath: '/specifiedSubstance/constituents/?/amount/average', finalField: 'average',\n lucenePath: 'root_specifiedSubstance_constituents_amount_average', CVDomain: '',\n displayName: 'Constituent Amount Average',\n dataType: 'string', luceneQueryable: true},\n'Constituent Amount Created': {fieldName: 'Created',\n fieldPath: '/specifiedSubstance/constituents/?/amount/created', finalField: 'created',\n lucenePath: 'root_specifiedSubstance_constituents_amount_created', CVDomain: '',\n displayName: 'Constituent Amount Created',\n dataType: 'number', luceneQueryable: true},\n'Constituent Amount Created By': {fieldName: 'Created By',\n fieldPath: '/specifiedSubstance/constituents/?/amount/createdBy', finalField: 'createdBy',\n lucenePath: 'root_specifiedSubstance_constituents_amount_createdBy', CVDomain: '',\n displayName: 'Constituent Amount Created By',\n dataType: 'string', luceneQueryable: true},\n'Constituent Amount High': {fieldName: 'High',\n fieldPath: '/specifiedSubstance/constituents/?/amount/high', finalField: 'high',\n lucenePath: 'root_specifiedSubstance_constituents_amount_high', CVDomain: '',\n displayName: 'Constituent Amount High',\n dataType: 'number', luceneQueryable: true},\n'Constituent Amount High Limit': {fieldName: 'High Limit',\n fieldPath: '/specifiedSubstance/constituents/?/amount/highLimit', finalField: 'highLimit',\n lucenePath: 'root_specifiedSubstance_constituents_amount_highLimit', CVDomain: '',\n displayName: 'Constituent Amount High Limit',\n dataType: 'string', luceneQueryable: true},\n'Constituent Amount Last Edited': {fieldName: 'Last Edited',\n fieldPath: '/specifiedSubstance/constituents/?/amount/lastEdited', finalField: 'lastEdited',\n lucenePath: 'root_specifiedSubstance_constituents_amount_lastEdited', CVDomain: '',\n displayName: 'Constituent Amount Last Edited',\n dataType: 'array ', luceneQueryable: true},\n'Constituent Amount Last Edited By': {fieldName: 'Last Edited By',\n fieldPath: '/specifiedSubstance/constituents/?/amount/lastEditedBy', finalField: 'lastEditedBy',\n lucenePath: 'root_specifiedSubstance_constituents_amount_lastEditedBy', CVDomain: '',\n displayName: 'Constituent Amount Last Edited By',\n dataType: 'string', luceneQueryable: true},\n'Constituent Amount Low': {fieldName: 'Low',\n fieldPath: '/specifiedSubstance/constituents/?/amount/low', finalField: 'low',\n lucenePath: 'root_specifiedSubstance_constituents_amount_low', CVDomain: '',\n displayName: 'Constituent Amount Low',\n dataType: 'number', luceneQueryable: true},\n'Constituent Amount Low Limit': {fieldName: 'Low Limit',\n fieldPath: '/specifiedSubstance/constituents/?/amount/lowLimit', finalField: 'lowLimit',\n lucenePath: 'root_specifiedSubstance_constituents_amount_lowLimit', CVDomain: '',\n displayName: 'Constituent Amount Low Limit',\n dataType: 'string', luceneQueryable: true},\n'Constituent Amount Non-Numeric Value': {fieldName: 'Non Numeric Value',\n fieldPath: '/specifiedSubstance/constituents/?/amount/nonNumericValue', finalField: 'nonNumericValue',\n lucenePath: 'root_specifiedSubstance_constituents_amount_nonNumericValue', CVDomain: '',\n displayName: 'Constituent Amount Non-Numeric Value',\n dataType: 'string', luceneQueryable: true},\n'Constituent Amount Type': {fieldName: 'Type',\n fieldPath: '/specifiedSubstance/constituents/?/amount/type', finalField: 'type',\n lucenePath: 'root_specifiedSubstance_constituents_amount_type', CVDomain: 'AMOUNT_TYPE',\n displayName: 'Constituent Amount Type',\n dataType: 'array ', luceneQueryable: true},\n'Constituent Amount Units': {fieldName: 'Units',\n fieldPath: '/specifiedSubstance/constituents/?/amount/units', finalField: 'units',\n lucenePath: 'root_specifiedSubstance_constituents_amount_units', CVDomain: 'AMOUNT_UNIT',\n displayName: 'Constituent Amount Units',\n dataType: 'string', luceneQueryable: true}};\n","import { Injectable } from '@angular/core';\nimport {DataDictionary} from '@gsrs-core/utils/data-dictionary';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataDictionaryService {\n private dataDictionary: any = DataDictionary;\n constructor() { }\n\n\n\n getDictionaryRow(key: string): any {\n return this.dataDictionary[key];\n }\n\n getDictionaryField(key: string, field: string): string {\n return this.dataDictionary[key][field];\n }\n\n getCVDomainRows(): any {\n const newObj = [];\n Object.keys(this.dataDictionary).forEach(key => {\n const cv = this.dataDictionary[key]['CVDomain'];\n if (cv !== '') {\n if (newObj[cv] && newObj[cv].length > 0) {\n newObj[cv].push(key);\n } else {\n newObj[cv] = [key];\n\n }\n }\n });\n return newObj;\n }\n}\n","export const searchSortValues = [\r\n {\r\n 'value': 'default',\r\n 'display': 'Relevance'\r\n },\r\n {\r\n 'value': '^Display Name',\r\n 'display': 'Display Name, A-Z'\r\n },\r\n {\r\n 'value': '$Display Name',\r\n 'display': 'Display Name, Z-A'\r\n },\r\n {\r\n 'value': '^Reference Count',\r\n 'display': 'Least References'\r\n },\r\n {\r\n 'value': '$Reference Count',\r\n 'display': 'Most References'\r\n },\r\n {\r\n 'value': '^root_lastEdited',\r\n 'display': 'Oldest Change'\r\n },\r\n {\r\n 'value': '$root_lastEdited',\r\n 'display': 'Newest Change'\r\n },\r\n {\r\n 'value': '$root_structure_mwt',\r\n 'display': 'Highest Molecular Weight'\r\n },\r\n {\r\n 'value': '^root_structure_mwt',\r\n 'display': 'Lowest Molecular Weight'\r\n }\r\n];\r\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { BaseHttpService } from '../base/base-http.service';\nimport { Observable } from 'rxjs';\nimport { ConfigService } from '../config/config.service';\nimport { SubstanceSuggestionsGroup } from './substance-suggestions-group.model';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { map } from 'rxjs/operators';\nimport { BuildInfo } from './build-info.model';\nimport { S } from '@angular/cdk/keycodes';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UtilsService {\n private bodyElement: HTMLBodyElement;\n private matSidenavContentElement: HTMLElement;\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService,\n private sanitizer: DomSanitizer\n ) {}\n\n getStructureSearchSuggestions(searchTerm: string): Observable {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n\n return this.http.get(url + 'suggest?q=' + searchTerm);\n }\n\n getSafeStructureImgUrl(structureId: string, size: number = 150, stereo?: boolean): SafeUrl {\n if (!stereo) {\n stereo = false;\n }\n const imgUrl = `${this.configService.configData.apiBaseUrl}img/${structureId}.svg?size=${size.toString()}&stereo=${stereo}`;\n return this.sanitizer.bypassSecurityTrustUrl(imgUrl);\n }\n\n getStructureImgUrl(structureId: string, size: number = 150, stereo?: boolean, atomMaps?: Array, version?: number): string {\n if (!stereo) {\n stereo = false;\n }\n const apiBaseUrl = this.configService.configData.apiBaseUrl;\n const randomKey = Math.random().toString(36).replace('0.', '');\n let url = `${apiBaseUrl}img/${structureId}.svg?size=${size.toString()}&stereo=${stereo}&cache-control=${randomKey}`;\n if (atomMaps != null) {\n url = `${url}&context=${atomMaps.toString()}`;\n }\n if (version != null) {\n url = `${url}&version=${version}`;\n }\n return url;\n }\n\n handleMatSidenavOpen(widthBreakingPoint?: number): void {\n\n if (widthBreakingPoint == null || (window && window.innerWidth < widthBreakingPoint)) {\n this.bodyElement = document.getElementsByTagName('BODY')[0] as HTMLBodyElement;\n this.matSidenavContentElement = document.getElementsByTagName('mat-sidenav-content')[0] as HTMLElement;\n\n this.bodyElement.style.overflowX = 'hidden';\n this.matSidenavContentElement.style.width = `${this.matSidenavContentElement.offsetWidth}px`;\n } else {\n this.handleMatSidenavClose();\n }\n }\n\n handleMatSidenavClose(): void {\n if (this.bodyElement != null || this.matSidenavContentElement != null) {\n setTimeout(() => {\n this.bodyElement.style.overflowX = null;\n this.matSidenavContentElement.style.width = null;\n this.bodyElement = null;\n this.matSidenavContentElement = null;\n }, 500);\n }\n }\n\n capitalize(phrase: string): string {\n const stringArray = phrase.split(' ');\n\n for (let i = 0, x = stringArray.length; i < x; i++) {\n stringArray[i] = stringArray[i][0].toUpperCase() + stringArray[i].substr(1);\n }\n\n return stringArray.join(' ');\n }\n\n /* eslint-disable no-bitwise */\n hashCode(...args): number {\n const stringToHash = JSON.stringify([...args]);\n let hash = 0, i, chr;\n if (stringToHash.length === 0) {\n return hash;\n }\n for (i = 0; i < stringToHash.length; i++) {\n chr = stringToHash.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0; // Convert to 32bit integer\n }\n return hash;\n }\n\n toCamelCase(term: string = ''): string {\n return term\n .replace(/\\s(.)/g, ($1) => $1.toUpperCase())\n .replace(/\\s/g, '')\n .replace(/^(.)/, ($1) => $1.toLowerCase());\n }\n\n // https://gist.github.com/jed/982883\n newUUID(\n a?: number // placeholder\n ) {\n return a // if the placeholder was passed, return\n ? ( // a random number from 0 to 15\n a ^ // unless b is 8,\n Math.random() // in which case\n * 16 // a random number from\n >> a / 4 // 8 to 11\n ).toString(16) // in hexadecimal\n : ( // or otherwise a concatenated string:\n [1e7] as any + // 10000000 +\n -1e3 + // -1000 +\n -4e3 + // -4000 +\n -8e3 + // -80000000 +\n -1e11 // -100000000000,\n ).replace( // replacing\n /[018]/g, // zeroes, ones, and eights with\n this.newUUID // random hex digits\n );\n }\n\n // https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore#_get\n getObjectValue(obj: any, path: string, defaultValue: any = null): any {\n String.prototype.split.call(path, /[,[\\].]+?/)\n .filter(Boolean)\n .reduce((a: any, c: string) => (Object.hasOwnProperty.call(a, c) ? a[c] : defaultValue), obj);\n }\n\n uploadFile(file: File): Observable {\n const formData = new FormData();\n formData.append('file-name', file);\n formData.append('file-type', file.type);\n return this.http.post(`${this.configService.configData.apiBaseUrl}upload`, formData)\n .pipe(\n map(response => response && response.url || '')\n );\n }\n\n sruDisplayToConnectivity(display: string): any {\n if (!display) {\n return {};\n }\n const errors = [];\n const connections = display.split(';');\n const regex = /^\\s*[A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)[-][A-Za-z][A-Za-z]*[0-9]*_(R[0-9][0-9]*)\\s*$/g;\n const mapper = {$errors: []};\n for (let i = 0; i < connections.length; i++) {\n const con = connections[i].trim();\n if (con === '') { continue; }\n regex.lastIndex = 0;\n const res = regex.exec(con);\n if (res == null) {\n const text = 'Connection \\'' + con + '\\' is not properly formatted';\n errors.push({ text: text, type: 'warning' });\n } else {\n if (!mapper[res[1]]) {\n mapper[res[1]] = [];\n }\n mapper[res[1]].push(res[2]);\n }\n }\n if (errors.length > 0) {\n mapper.$errors = errors;\n }\n return mapper;\n\n }\n\n\n displayAmount(amt): string {\n\n function formatValue(v) {\n if (v) {\n if (typeof v === 'object') {\n if (v.display) {\n return v.display;\n } else if (v.value) {\n return v.value;\n } else {\n return null;\n }\n } else {\n return v;\n }\n }\n return null;\n }\n\n let ret = '';\n if (amt) {\n if (typeof amt === 'object') {\n if (amt) {\n let addedunits = false;\n let unittext = formatValue(amt.units);\n if (!unittext) {\n unittext = '';\n }\n const atype = formatValue(amt.type);\n if (atype) {\n ret += atype + '\\n';\n }\n if (amt.average || amt.high || amt.low) {\n if (amt.average) {\n ret += amt.average;\n if (amt.units) {\n ret += ' ' + unittext;\n addedunits = true;\n }\n }\n if (amt.high || amt.low) {\n ret += ' [';\n if (amt.high && !amt.low) {\n ret += '<' + amt.high;\n } else if (!amt.high && amt.low) {\n ret += '>' + amt.low;\n } else if (amt.high && amt.low) {\n ret += amt.low + ' to ' + amt.high;\n }\n ret += '] ';\n if (!addedunits) {\n if (amt.units) {\n ret += ' ' + unittext;\n addedunits = true;\n }\n }\n }\n ret += ' (average) ';\n }\n if (amt.highLimit || amt.lowLimit) {\n ret += '\\n[';\n }\n if (amt.highLimit && !amt.lowLimit) {\n ret += '<' + amt.highLimit;\n } else if (!amt.highLimit && amt.lowLimit) {\n ret += '>' + amt.lowLimit;\n } else if (amt.highLimit && amt.lowLimit) {\n ret += amt.lowLimit + ' to ' + amt.highLimit;\n }\n if (amt.highLimit || amt.lowLimit) {\n ret += '] ';\n if (!addedunits) {\n if (amt.units) {\n ret += ' ' + unittext;\n addedunits = true;\n }\n }\n ret += ' (limits)';\n }\n }\n if (amt.nonNumericValue) {\n ret += ' ' + amt.nonNumericValue;\n }\n }\n }\n return ret;\n }\n\n compare(a: number | string, b: number | string, isAsc: boolean) {\n return (a < b ? -1 : 1) * (isAsc ? 1 : -1);\n }\n\n getBuildInfo(): Observable {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/buildInfo`;\n return this.http.get(url);\n }\n\n looksLikeComplexSearchTerm(searchTerm:string): boolean {\n // If we have an underscore followed by a colon, we think it's a complex search.\n // e.g. root_names_name:Aspirin\n const regexp : RegExp = /_.*:/g;\n // The AND/OR checks were in a previous version but may be unneeded/confounding\n // unless we're considering draft searchTerms that may have forgotten the complex search syntax. \n if (regexp.test(searchTerm) || (searchTerm.indexOf(' AND ') > -1) || (searchTerm.indexOf(' OR ') > -1)){\n return true; \n }\n return false;\n }\n\n looksLikeComplexSearchTermOrContainsStrings(searchTerm:string, strings:Array): boolean {\n // often you'll want to check if the string has a double quote or * \n if (this.looksLikeComplexSearchTerm){\n return true; \n }\n strings.forEach(function(value) {\n if (searchTerm.indexOf(value.valueOf())>-1) { return true; };\n });\n return false;\n }\n\n makeBeginsWithSearchTerm(targetField: string, searchTerm:string): string {\n // Make and clean a begins-with search term from a non-complex search term that may \n // have a wildcard or quotes. \n // Remove extra carets ^ and double quotes \" before adding them here. \n var s: string = searchTerm.replace(/(^\"|\"$)/g, '');\n s = s.replace(/(^^)/g, '');\n const lq =targetField + ':\"^' + s +'\"';\n return lq;\n }\n}\n","export const adverseEventCvmSearchSortValues = [\n {\n 'value': 'default',\n 'display': 'Relevance',\n 'displayedColumns': 'default',\n 'direction': 'asc'\n },\n {\n 'value': '^root_adverseEvent',\n 'display': 'Adverse Events, Ascending',\n 'displayedColumns': 'adverseEvent',\n 'direction': 'asc'\n },\n {\n 'value': '$root_adverseEvent',\n 'display': 'Adverse Events, Descending',\n 'displayedColumns': 'adverseEvent',\n 'direction': 'desc'\n },\n {\n 'value': '^root_species',\n 'display': 'Species, Ascending',\n 'displayedColumns': 'species',\n 'direction': 'asc'\n },\n {\n 'value': '$root_species',\n 'display': 'Species, Descending',\n 'displayedColumns': 'species',\n 'direction': 'desc'\n },\n {\n 'value': '^root_aeCount',\n 'display': 'Adverse Event Count, Ascending',\n 'displayedColumns': 'adverseEventCount',\n 'direction': 'asc'\n },\n {\n 'value': '$root_aeCount',\n 'display': 'Adverse Event Count, Descending',\n 'displayedColumns': 'adverseEventCount',\n 'direction': 'desc'\n },\n {\n 'value': '^root_routeOfAdmin',\n 'display': 'Route of Admin, Ascending',\n 'displayedColumns': 'routeOfAdmin',\n 'direction': 'asc'\n },\n {\n 'value': '$root_routeOfAdmin',\n 'display': 'Route of Admin, Descending',\n 'displayedColumns': 'routeOfAdmin',\n 'direction': 'desc'\n },\n {\n 'value': '^root_name',\n 'display': 'Ingredient, Ascending',\n 'displayedColumns': 'ingredientName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_name',\n 'display': 'Ingredient Name, Descending',\n 'displayedColumns': 'ingredientName',\n 'direction': 'desc'\n }\n];\n","export const adverseEventDmeSearchSortValues = [\n {\n 'value': 'default',\n 'display': 'Relevance',\n 'displayedColumns': 'default',\n 'direction': 'asc'\n },\n {\n 'value': '^root_dmeReactions',\n 'display': 'Dme Reactions, Ascending',\n 'displayedColumns': 'dmeReactions',\n 'direction': 'asc'\n },\n {\n 'value': '$root_dmeReactions',\n 'display': 'Dme Reactions, Descending',\n 'displayedColumns': 'dmeReactions',\n 'direction': 'desc'\n },\n {\n 'value': '^root_ptTermMeddra',\n 'display': 'PT Term Meddra, Ascending',\n 'displayedColumns': 'ptTermMeddra',\n 'direction': 'asc'\n },\n {\n 'value': '$root_ptTermMeddra',\n 'display': 'PT Term Meddra, Descending',\n 'displayedColumns': 'ptTermMeddra',\n 'direction': 'desc'\n },\n {\n 'value': '^root_caseCount',\n 'display': 'Case Count, Ascending',\n 'displayedColumns': 'caseCount',\n 'direction': 'asc'\n },\n {\n 'value': '$root_caseCount',\n 'display': 'Case Count, Descending',\n 'displayedColumns': 'caseCount',\n 'direction': 'desc'\n },\n {\n 'value': '^root_dmeCount',\n 'display': 'Dme Count, Ascending',\n 'displayedColumns': 'dmeCount',\n 'direction': 'asc'\n },\n {\n 'value': '$root_dmeCount',\n 'display': 'Dme Count, Descending',\n 'displayedColumns': 'dmeCount',\n 'direction': 'desc'\n },\n {\n 'value': '$root_dmeCountPercent',\n 'display': 'Dme Count Percent, Descending',\n 'displayedColumns': 'dmeCountPercent',\n 'direction': 'desc'\n },\n {\n 'value': '^root_dmeCountPercent',\n 'display': 'Dme Count Percent, Ascending',\n 'displayedColumns': 'dmeCountPercent',\n 'direction': 'asc'\n },\n {\n 'value': '^root_weightedAvgPrr',\n 'display': 'Weighted Avg Prr, Ascending',\n 'displayedColumns': 'weightedAvgPrr',\n 'direction': 'asc'\n },\n {\n 'value': '$root_weightedAvgPrr',\n 'display': 'Weighted Avg Prr, Descending',\n 'displayedColumns': 'weightedAvgPrr',\n 'direction': 'desc'\n },\n {\n 'value': '^root_name',\n 'display': 'Ingredient, Ascending',\n 'displayedColumns': 'ingredientName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_name',\n 'display': 'Ingredient Name, Descending',\n 'displayedColumns': 'ingredientName',\n 'direction': 'desc'\n }\n];\n","export const adverseEventPtSearchSortValues = [\n {\n 'value': 'default',\n 'display': 'Relevance',\n 'displayedColumns': 'default',\n 'direction': 'asc'\n },\n {\n 'value': '^root_ptTerm',\n 'display': 'PT Term, Ascending',\n 'displayedColumns': 'ptTerm',\n 'direction': 'asc'\n },\n {\n 'value': '$root_ptTerm',\n 'display': 'PT Term, Descending',\n 'displayedColumns': 'ptTerm',\n 'direction': 'desc'\n },\n {\n 'value': '^root_primSoc',\n 'display': 'Prim SOC, Ascending',\n 'displayedColumns': 'primSoc',\n 'direction': 'asc'\n },\n {\n 'value': '$root_primSoc',\n 'display': 'Prim SOC, Descending',\n 'displayedColumns': 'primSoc',\n 'direction': 'desc'\n },\n {\n 'value': '^root_caseCount',\n 'display': 'Case Count, Ascending',\n 'displayedColumns': 'caseCount',\n 'direction': 'asc'\n },\n {\n 'value': '$root_caseCount',\n 'display': 'Case Count, Descending',\n 'displayedColumns': 'caseCount',\n 'direction': 'desc'\n },\n {\n 'value': '^root_ptCount',\n 'display': 'PT Count, Ascending',\n 'displayedColumns': 'ptCount',\n 'direction': 'asc'\n },\n {\n 'value': '$root_ptCount',\n 'display': 'PT Count, Descending',\n 'displayedColumns': 'ptCount',\n 'direction': 'desc'\n },\n {\n 'value': '^root_prr',\n 'display': 'PRR, Ascending',\n 'displayedColumns': 'prr',\n 'direction': 'asc'\n },\n {\n 'value': '$root_prr',\n 'display': 'PRR, Descending',\n 'displayedColumns': 'prr',\n 'direction': 'desc'\n },\n {\n 'value': '^root_name',\n 'display': 'Ingredient, Ascending',\n 'displayedColumns': 'ingredientName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_name',\n 'display': 'Ingredient Name, Descending',\n 'displayedColumns': 'ingredientName',\n 'direction': 'desc'\n }\n];\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http';\nimport { Observable, throwError, of } from 'rxjs';\nimport { map, switchMap } from 'rxjs/operators';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { ConfigService } from '@gsrs-core/config';\nimport { PagingResponse } from '@gsrs-core/utils';\nimport { Facet } from '@gsrs-core/facets-manager';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport { AdverseEventPt, AdverseEventDme, AdverseEventCvm } from '../model/adverse-event.model';\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils/substance-suggestions-group.model';\n\n// import { SubstanceFacetParam } from '../../../core/substance/substance-facet-param.model';\n// import { SubstanceHttpParams } from '../../../core/substance/substance-http-params';\n\n\n@Injectable(\n {\n providedIn: 'root',\n }\n)\n\nexport class AdverseEventService extends BaseHttpService {\n\n totalRecords = 0;\n\n apiBaseUrlWithEntityPtContext = this.configService.configData.apiBaseUrl + 'api/v1/adverseeventpt' + '/';\n apiBaseUrlWithEntityDmeContext = this.configService.configData.apiBaseUrl + 'api/v1/adverseeventdme' + '/';\n apiBaseUrlWithEntityCvmContext = this.configService.configData.apiBaseUrl + 'api/v1/adverseeventcvm' + '/';\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService\n ) {\n super(configService);\n }\n\n getAdverseEventPt(\n order: string,\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam,\n adverseEventType?: string,\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n /*\n let selectedTypeContext = this.apiBaseUrlWithEntityPtContext;\n\n if (adverseEventType) {\n if (adverseEventType === 'pt') {\n selectedTypeContext = this.apiBaseUrlWithEntityPtContext;\n } else if (adverseEventType === 'dme') {\n selectedTypeContext = this.apiBaseUrlWithEntityDmeContext;\n } else if (adverseEventType === 'cvm') {\n selectedTypeContext = this.apiBaseUrlWithEntityCvmContext;\n }\n }\n */\n const url = this.apiBaseUrlWithEntityPtContext + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getAdverseEventDme(\n order: string,\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam,\n adverseEventType?: string,\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n const url = this.apiBaseUrlWithEntityDmeContext + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getAdverseEventCvm(\n order: string,\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam,\n adverseEventType?: string,\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n const url = this.apiBaseUrlWithEntityCvmContext + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getAdverseEventPtFacets(facet: Facet, searchTerm?: string, nextUrl?: string): Observable {\n let url: string;\n if (searchTerm) {\n url = `${this.configService.configData.apiBaseUrl}api/v1/adverseeventpt/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventpt.models.AdverseEventPt&skip=0&fdim=200&sideway=true&field=${facet.name.replace(' ', '+')}&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=${searchTerm}`;\n } else if (nextUrl != null) {\n url = nextUrl;\n } else {\n url = facet._self;\n }\n return this.http.get(url);\n }\n\n getAdverseEventDmeFacets(facet: Facet, searchTerm?: string, nextUrl?: string): Observable {\n let url: string;\n if (searchTerm) {\n url = `${this.configService.configData.apiBaseUrl}api/v1/adverseeventdme/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventdme.models.AdverseEventDme&skip=0&fdim=200&sideway=true&field=${facet.name.replace(' ', '+')}&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=${searchTerm}`;\n } else if (nextUrl != null) {\n url = nextUrl;\n } else {\n url = facet._self;\n }\n return this.http.get(url);\n }\n\n getAdverseEventCvmFacets(facet: Facet, searchTerm?: string, nextUrl?: string): Observable {\n let url: string;\n if (searchTerm) {\n url = `${this.configService.configData.apiBaseUrl}api/v1/adverseeventcvm/search/@facets?wait=false&kind=gov.hhs.gsrs.adverseevents.adverseeventcvm.models.AdverseEventCvm&skip=0&fdim=200&sideway=true&field=${facet.name.replace(' ', '+')}&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=${searchTerm}`;\n } else if (nextUrl != null) {\n url = nextUrl;\n } else {\n url = facet._self;\n }\n return this.http.get(url);\n }\n\n exportBrowseApplicationsUrl(\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): string {\n let params = new FacetHttpParams();\n // params = params.append('skip', skip.toString());\n // params = params.append('top', '1000');\n params = params.append('page', '1');\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n const url = this.baseUrl + 'exportApplications?' + params;\n const options = {\n params: params\n };\n\n return url;\n }\n\n getAdverseEventSearchSuggestions(searchTerm: string, eventCategory: string): Observable {\n if (eventCategory && eventCategory === 'adverseEventPtSearch') {\n return this.http.get(this.apiBaseUrlWithEntityPtContext + 'suggest?q=' + searchTerm);\n } else if (eventCategory && eventCategory === 'adverseEventDmeSearch') {\n return this.http.get(this.apiBaseUrlWithEntityDmeContext + 'suggest?q=' + searchTerm);\n } else if (eventCategory && eventCategory === 'adverseEventCvmSearch') {\n return this.http.get(this.apiBaseUrlWithEntityCvmContext + 'suggest?q=' + searchTerm);\n } else {\n return null;\n }\n }\n\n getSubstanceAdverseEventPt(\n bdnum: string, page: number, pageSize: number, orderBy: string, ascDescDir: string\n ): Observable> {\n const url = this.baseUrl + 'adverseEventPtListByBdnum?bdnum=' + bdnum + '&page=' + (page + 1) + '&pageSize='\n + pageSize + '&orderBy=' + orderBy + '&ascDescDir=' + ascDescDir;\n\n return this.http.get>(url)\n .pipe(\n map(results => {\n this.totalRecords = results['totalRecords'];\n return results['data'];\n })\n );\n }\n\n getSubstanceAdverseEventPtAdv(\n bdnum: string, page: number, pageSize: number, orderBy: number, ascDescDir: string\n ): Observable> {\n const orderByParam = 'order[0][column]=' + orderBy;\n const ascDescDirParam = 'order[0][dir]=' + ascDescDir;\n const start = 'start=' + '0';\n const length = 'length=' + pageSize;\n const url = this.baseUrl + 'advSearchResult?searchCategory=adversept&searchBy=bdnum&matchType=IN&q=' + bdnum + '&disp=d&dispFrom=detail&' + start + '&' + length + '&' + orderByParam + '&' + ascDescDirParam;\n\n // const url = this.baseUrl + 'adverseEventPtListByBdnum?bdnum=' + bdnum + '&page=' + (page + 1) + '&pageSize='\n // + pageSize + '&orderBy=' + orderBy + '&ascDescDir=' + ascDescDir;\n\n return this.http.get>(url)\n .pipe(\n map(results => {\n this.totalRecords = results['recordsTotal'];\n return results['data'];\n })\n );\n }\n\n getSubstanceAdverseEventDme(\n bdnum: string, page: number, pageSize: number\n ): Observable> {\n const url = this.baseUrl + 'adverseEventDmeListByBdnum?bdnum=' + bdnum + '&page=' + (page + 1) + '&pageSize=' + pageSize;\n\n return this.http.get>(url)\n .pipe(\n map(results => {\n this.totalRecords = results['totalRecords'];\n return results['data'];\n })\n );\n\n }\n\n getSubstanceAdverseEventCvm(\n bdnum: string, page: number, pageSize: number\n ): Observable> {\n const url = this.baseUrl + 'adverseEventCvmListByBdnum?bdnum=' + bdnum + '&page=' + (page + 1) + '&pageSize=' + pageSize;\n\n return this.http.get>(url)\n .pipe(\n map(results => {\n this.totalRecords = results['totalRecords'];\n return results['data'];\n })\n );\n\n }\n\n getFaersDashboardRecordByName(\n name: string\n ): Observable {\n const url = this.apiBaseUrlWithEntityPtContext + 'faersdashboard/' + name;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getApiExportUrlPt(etag: string, extension: string): string {\n const url = this.apiBaseUrlWithEntityPtContext + 'export/' + etag + '/' + extension;\n return url;\n }\n\n getApiExportUrlDme(etag: string, extension: string): string {\n const url = this.apiBaseUrlWithEntityDmeContext + 'export/' + etag + '/' + extension;\n return url;\n }\n\n getApiExportUrlCvm(etag: string, extension: string): string {\n const url = this.apiBaseUrlWithEntityCvmContext + 'export/' + etag + '/' + extension;\n return url;\n }\n\n getAdverseEventPtListExportUrl(bdnum: string): string {\n return this.baseUrl + 'adverseEventPtListExport?bdnum=' + bdnum;\n }\n\n getAdverseEventDmeListExportUrl(bdnum: string): string {\n return this.baseUrl + 'adverseEventDmeListExport?bdnum=' + bdnum;\n }\n\n getAdverseEventCvmListExportUrl(bdnum: string): string {\n return this.baseUrl + 'adverseEventCvmListExport?bdnum=' + bdnum;\n }\n\n} // class\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http';\nimport { Observable, throwError, of } from 'rxjs';\nimport { map, switchMap } from 'rxjs/operators';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { ConfigService } from '@gsrs-core/config';\nimport { PagingResponse } from '@gsrs-core/utils';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { Facet } from '@gsrs-core/facets-manager';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport { Application, Product, ProductName, ApplicationIngredient, ApplicationIndication } from '../model/application.model';\nimport { ApplicationAll } from '../model/application.model';\nimport { ValidationResults } from '../model/application.model';\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils/substance-suggestions-group.model';\n\n// import { SubstanceFacetParam } from '../../../core/substance/substance-facet-param.model';\n// import { SubstanceHttpParams } from '../../../core/substance/substance-http-params';\n\n@Injectable(\n {\n providedIn: 'root',\n }\n)\n\nexport class ApplicationService extends BaseHttpService {\n\n private _bypassUpdateCheck = false;\n private applicationStateHash?: number;\n totalRecords = 0;\n application: Application;\n\n //apiBaseUrlWithApplicationEntityUrl = this.apiBaseUrl + 'applications' + '/';\n //apiBaseUrlWithApplicationAllEntityUrl = this.apiBaseUrl + 'applicationsall' + '/';\n // apiBaseUrlWithApplicationDarrtsEntityUrl = this.apiBaseUrl + 'applicationsdarrts' + '/';\n\n apiBaseUrlWithApplicationEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/applications' + '/';\n apiBaseUrlWithApplicationAllEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/applicationsall' + '/';\n //TODO: remove explicit references like this if at all possible\n apiBaseUrlWithApplicationDarrtsEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/applicationsdarrts' + '/';\n\n APPALL_SEARCH_SUBSTANCE_KEY = 'root_applicationProductList_applicationIngredientList_substanceKey:';\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService,\n public utilsService: UtilsService\n ) {\n super(configService);\n }\n\n getApplications(\n order: string,\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getApplicationFacets(facet: Facet, searchTerm?: string, nextUrl?: string): Observable {\n let url: string;\n if (searchTerm) {\n url = `${this.configService.configData.apiBaseUrl}api/v1/applications/search/@facets?wait=false&kind=gov.hhs.gsrs.application.application.models.Application&skip=0&fdim=200&sideway=true&field=${facet.name.replace(' ', '+')}&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=${searchTerm}`;\n } else if (nextUrl != null) {\n url = nextUrl;\n } else {\n url = facet._self;\n }\n return this.http.get(url);\n }\n\n filterFacets(name: string, category: string): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + `search/@facets?wait=false&kind=gov.hhs.gsrs.application.application.models.Application&skip=0&fdim=200&sideway=true&field=${category}&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=${name}`;\n return this.http.get(url);\n }\n\n retrieveFacetValues(facet: Facet): Observable {\n const url = facet._self;\n return this.http.get(url);\n }\n\n retrieveNextFacetValues(facet: Facet): Observable {\n const url = facet._self;\n if (!facet.$next) {\n return this.http.get(url).pipe(\n switchMap(response => {\n if (response) {\n const next = response.nextPageUri;\n return this.http.get(next);\n } else {\n return 'nada';\n }\n }));\n } else {\n return this.http.get(facet.$next);\n }\n\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'export/' + etag + '/' + extension;\n return url;\n }\n\n getApplicationSearchSuggestions(searchTerm: string): Observable {\n return this.http.get(this.apiBaseUrlWithApplicationEntityUrl + 'suggest?q=' + searchTerm);\n }\n\n getApplicationAll(\n order: string,\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n const url = this.apiBaseUrlWithApplicationAllEntityUrl + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n // 2.x play framework, Will REMOVE in Future\n exportBrowseApplicationsUrl(\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): string {\n let params = new FacetHttpParams();\n // params = params.append('skip', skip.toString());\n // params = params.append('top', '1000');\n params = params.append('page', '1');\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n const url = this.baseUrl + 'exportApplications?' + params;\n const options = {\n params: params\n };\n\n return url;\n }\n\n getAppAllApiExportUrl(etag: string, extension: string): string {\n const url = this.apiBaseUrlWithApplicationAllEntityUrl + 'export/' + etag + '/' + extension;\n return url;\n }\n\n /*\n getClinicalTrialApplication(\n applications: Array\n ): Observable> {\n\n //appType: string, appNumber: string\n let clinicalTrial: Array = [];\n\n //: Observable> {\n //console.log(\"clinical2 \" + application.appType + \" \" + application.appNumber);\n applications.forEach((element, index) => {\n console.log(\"AAA: \" + element.appType + \" \" +element.appNumber);\n const url = this.baseUrl + 'getClinicalTrialApplication2?appType=' + element.appType + '&appNumber=' + element.appNumber;\n // clinicalTrial = this.http.get>(url)\n });\n\n return this.http.get>(url).pipe(\n map(results => {\n return results;\n })\n );\n\n }\n*/\n\n getApplicationCenterList(\n substanceKey: string\n ): Observable {\n const url = this.apiBaseUrlWithApplicationAllEntityUrl + 'distcenter/' + substanceKey;\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n getApplicationBySubstanceKeyCenter(substanceKey: string): Observable {\n // const url = this.apiBaseUrlWithEntityAllContext + 'search?q=root_applicationProductList_applicationIngredientList_substanceKey:'\n // + substanceKey;\n\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'search?q=root_applicationProductList_applicationIngredientList_substanceKey:'\n + substanceKey;\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n // 2.x play framework, Will REMOVE in Future\n getSubstanceApplications(\n bdnum: string, center: string, fromTable: string, page: number, pageSize: number\n ): Observable> {\n\n const func = this.baseUrl + 'applicationListByBdnum?bdnum=';\n const url = func + bdnum + '¢er=' + center + '&fromTable=' + fromTable + '&page=' + (page + 1) + '&pageSize=' + pageSize;\n\n return this.http.get>(url).pipe(\n map(results => {\n this.totalRecords = results['totalRecords'];\n return results['data'];\n })\n );\n }\n\n searchApplicationBySubstanceKey(\n substanceKey: string // , center: string, fromTable: string, page: number, pageSize: number\n ): Observable> {\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'search?q=' + substanceKey;\n // + '¢er=' + center + '&fromTable=' + fromTable + '&page=' + (page + 1) + '&pageSize=' + pageSize;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getApplicationById(\n id: number\n ): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + id;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getApplicationHistory(\n applicationId: number\n ): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'applicationhistory/' + applicationId;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getProductTechnicalEffect(\n applicationId: number\n ): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'prodtechnicaleffect/' + applicationId;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getProductEffected(\n applicationId: number\n ): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'prodeffected/' + applicationId;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getClinicalTrialApplication(\n applicationId: number\n ): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'appclinicaltrial/' + applicationId;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n // APPLICATION DARRTS\n getApplicationDarrtsDetails(\n appType: string, appNumber: string\n ): Observable {\n const appTypeNumber = appType + appNumber;\n const url = this.apiBaseUrlWithApplicationDarrtsEntityUrl + appTypeNumber;\n // const url = this.baseUrl + 'applicationDarrtsDetails2?appType=' + appType + '&appNumber=' + appNumber;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n // APPLICATION DARRTS\n getSubstanceParentConcept(\n substanceKey: string\n ): Observable {\n const url = this.apiBaseUrlWithApplicationDarrtsEntityUrl + 'substanceparentconcept/' + substanceKey;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n\n // Changed, work Spring Boot and Play\n /*\n getSubstanceDetailsByAnyId(\n id: string\n ): Observable {\n const url = this.apiBaseUrl + 'substances(' + id + ')';\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n // Changed, work Spring Boot and Play\n getSubstanceDetailsBySubstanceId(\n substanceId: string\n ): Observable {\n // const url = this.apiBaseUrl + 'substances(' + substanceId + ')/codes'\n // const url = this.baseUrl + 'getSubstanceDetailsBySubstanceId?substanceId=' + substanceId;\n\n // TESTING TESTING\n this.apiBaseUrl = 'http://localhost:9000/ginas/app/api/v1/';\n\n const url = this.apiBaseUrl + 'substances(' + substanceId + ')';\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n // Changed, work Spring Boot and Play\n getSubstanceCodesBySubstanceUuid(\n substanceId: string\n ): Observable {\n // const url = this.apiBaseUrl + 'substances(' + substanceId + ')/codes'\n // const url = this.baseUrl + 'getSubstanceDetailsBySubstanceId?substanceId=' + substanceId;\n\n // TESTING TESTING\n this.apiBaseUrl = 'http://localhost:9000/ginas/app/api/v1/';\n\n const url = this.apiBaseUrl + 'substances(' + substanceId + ')/codes';\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n */\n\n // 2.x play framework, Will REMOVE in Future\n getApplicationCenterByBdnum(\n bdnum: string\n ): Observable {\n const url = this.baseUrl + 'getApplicationCenterByBdnum2?bdnum=' + bdnum;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n // 2.x play framework, Will REMOVE in Future\n getSubstanceRelationship(\n substanceId: string\n ): Observable> {\n const url = this.baseUrl + 'getRelationshipBySubstanceId?substanceId=' + substanceId;\n return this.http.get>(url).pipe(\n map(results => {\n return results['data'];\n })\n );\n }\n\n get isApplicationUpdated(): boolean {\n const applicationString = JSON.stringify(this.application);\n if (this._bypassUpdateCheck) {\n this._bypassUpdateCheck = false;\n return false;\n } else {\n return this.applicationStateHash !== this.utilsService.hashCode(applicationString);\n }\n }\n\n bypassUpdateCheck(): void {\n this._bypassUpdateCheck = true;\n }\n\n loadApplication(application?: Application): void {\n // if Update/Exist Application\n // setTimeout(() => {\n if (application != null) {\n this.application = application;\n\n // Add a new Indication if there is no indication record.\n if (this.application.applicationIndicationList.length < 1) {\n const newIndication: ApplicationIndication = {};\n this.application.applicationIndicationList.unshift(newIndication);\n }\n\n // Add a new Product Name if there is no Product Name record.\n /* if (this.application.applicationProductList[0].applicationProductNameList.length < 1) {\n const newProductNameSrs: ProductNameSrs = {};\n this.application.applicationProductList[0].applicationProductNameList.unshift(newProductNameSrs);\n }\n */\n // console.log('AFTER' + JSON.stringify(this.application));\n } else {\n this.application = {\n applicationIndicationList: [{}],\n applicationProductList: [{\n applicationProductNameList: [{}],\n applicationIngredientList: [{}]\n }]\n };\n }\n // });\n }\n\n saveApplication(): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl;\n const params = new HttpParams();\n const options = {\n params: params,\n type: 'JSON',\n headers: {\n 'Content-type': 'application/json'\n }\n };\n // Update Application\n if ((this.application != null) && (this.application.id)) {\n return this.http.put(url, this.application, options);\n } else {\n // Save New Application\n return this.http.post(url, this.application, options);\n }\n }\n\n validateApplication(): Observable {\n return new Observable(observer => {\n this.validateApp().subscribe(results => {\n observer.next(results);\n observer.complete();\n }, error => {\n observer.error();\n observer.complete();\n });\n });\n }\n\n // Changed this function for GSRS 3.0 Spring Boot\n validateApp(): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + '@validate';\n return this.http.post(url, this.application);\n }\n\n deleteApplication(): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + this.application.id;\n const params = new HttpParams();\n const options = {\n };\n const x = this.http.delete(url, options);\n return x;\n }\n\n addNewIndication(): void {\n const newIndication: ApplicationIndication = {};\n this.application.applicationIndicationList.unshift(newIndication);\n }\n\n deleteIndication(indIndex: number): void {\n this.application.applicationIndicationList.splice(indIndex, 1);\n }\n\n addNewProduct(): void {\n const newProduct: Product = {\n applicationProductNameList: [{}],\n applicationIngredientList: [{}]\n };\n\n this.application.applicationProductList.unshift(newProduct);\n }\n\n addNewProductName(prodIndex: number): void {\n const newProductName: ProductName = {};\n\n this.application.applicationProductList[prodIndex].applicationProductNameList.unshift(newProductName);\n }\n\n deleteProduct(prodIndex: number): void {\n this.application.applicationProductList.splice(prodIndex, 1);\n }\n\n deleteProductName(prodIndex: number, prodNameIndex: number): void {\n this.application.applicationProductList[prodIndex].applicationProductNameList.splice(prodNameIndex, 1);\n }\n\n copyProduct(product: any): void {\n const newProduct = JSON.parse(JSON.stringify(product));\n newProduct.reviewedBy = null;\n newProduct.reviewDate = null;\n this.application.applicationProductList.unshift(newProduct);\n }\n\n reviewProduct(prodIndex: number): void {\n // this.application.applicationProductList[prodIndex].applicationIngredientList.unshift(newIngredient);\n }\n\n addNewIngredient(index: number): void {\n const newIngredient: ApplicationIngredient = {};\n this.application.applicationProductList[index].applicationIngredientList.unshift(newIngredient);\n }\n\n deleteIngredient(prodIndex: number, ingredIndex: number): void {\n this.application.applicationProductList[prodIndex].applicationIngredientList.splice(ingredIndex, 1);\n }\n\n copyIngredient(ingredient: any, prodIndex: number): void {\n const newIngredient = JSON.parse(JSON.stringify(ingredient));\n newIngredient.reviewedBy = null;\n newIngredient.reviewDate = null;\n this.application.applicationProductList[prodIndex].applicationIngredientList.unshift(newIngredient);\n }\n\n reviewIngredient(prodIndex: number, ingredIndex: number): void {\n // this.application.applicationProductList[prodIndex].applicationIngredientList.unshift(newIngredient);\n }\n\n getJson() {\n return this.application;\n }\n\n getUpdateApplicationUrl(): string {\n return this.baseUrl + 'updateApplication?applicationId=';\n }\n\n getApplicationListExportUrl(bdnum: string): string {\n return this.baseUrl + 'applicationListExport?bdnum=' + bdnum;\n }\n\n /*\n getSubstanceCodeCodeSystemConfig(): string {\n let url = null;\n url = `${(this.configService.configData && this.configService.configData.substanceCodeCodeSystem)}`;\n return url;\n }\n\n getSubstanceCodeIdTypeConfig(): string {\n let url = null;\n url = `${(this.configService.configData && this.configService.configData.substanceCodeIdType)}`;\n return url;\n }\n */\n\n} // class\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http';\nimport { Observable, throwError, of } from 'rxjs';\nimport { ConfigService } from '@gsrs-core/config';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { ClinicalTrial } from './clinical-trial.model';\nimport { PagingResponse } from '@gsrs-core/utils';\nimport { map, switchMap, tap } from 'rxjs/operators';\nimport { ClinicalTrialFacetParam } from '../misc/clinical-trial-facet-param.model';\nimport {Facet, FacetQueryResponse, FacetHttpParams} from '@gsrs-core/facets-manager';\n\n@Injectable()\nexport class ClinicalTrialService extends BaseHttpService {\n\n totalRecords = 0;\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService\n ) {\n super(configService);\n }\n\n getClinicalTrials(args: {\n searchTerm?: string,\n cutoff?: number,\n type?: string,\n pageSize?: number,\n order?: string,\n facets?: ClinicalTrialFacetParam,\n skip?: number\n } = {}): Observable> {\n return new Observable(observer => {\n this.searchClinicalTrials(\n args.searchTerm,\n args.pageSize,\n args.facets,\n args.order,\n args.skip,\n args.type\n ).subscribe(response => {\n observer.next(response);\n }, error => {\n observer.error(error);\n }, () => {\n observer.complete();\n });\n });\n }\n\n searchClinicalTrials(\n searchTerm?: string,\n pageSize: number = 10,\n facets?: ClinicalTrialFacetParam,\n order?: string,\n skip: number = 0,\n type?: string\n ): Observable> {\n let params = new FacetHttpParams();\n let url = this.apiBaseUrl;\n // search\n url += 'clinicaltrialsus/search';\n if (!searchTerm) { searchTerm = ''; }\n if (searchTerm !== null && searchTerm !== '') {\n if (type !== null && type !== '') {\n if (type === 'trialNumber' ) {\n // having an issue with this locally\n params = params.append('q', 'root_trialNumber:\\\"^' + searchTerm + '$\\\"');\n } else if (type === 'substanceKey' ) {\n params = params.append('q', 'root_clinicalTrialUSDrug_substanceKey:\\\"^' + searchTerm + '$\\\"');\n } else if (type === 'title') {\n params = params.append('q', 'root_title:\\\"' + searchTerm + '\\\"');\n } else {\n params = params.append('q', searchTerm);\n }\n } else {\n params = params.append('q', searchTerm);\n }\n }\n params = params.appendFacetParams(facets);\n\n params = params.appendDictionary({\n top: pageSize && pageSize.toString(),\n skip: skip && skip.toString()\n });\n\n if (order !== null && order !== '') {\n params = params.append('order', order);\n }\n params = params.append('fdim', '10');\n\n const options = {\n params: params\n };\n return this.http.get>(url, options);\n }\n\n deleteClinicalTrial(id: string): Observable {\n const url = `${this.apiBaseUrl}clinicaltrialsus/${id}`;\n const params = new HttpParams();\n // params = params.append('view', 'full');\n const options = {\n params: params\n };\n const x = this.http.delete(url, options);\n return x;\n }\n\n getClinicalTrial(id: string): Observable {\n const url = this.apiBaseUrl + `clinicaltrialsus/${id}`;\n const params = new HttpParams();\n // params = params.append('view', 'full');\n const options = {\n params: params\n };\n const x = this.http.get(url, options);\n return x;\n }\n\n getSubstanceDetailsFromName(name: string): Observable {\n\n // ^ = %5E\n const url = this.apiBaseUrl + 'substances/search?q=root_names_name:\"%5E'\n + encodeURIComponent(name) + '$\"&fdim=1';\n\n const params = new HttpParams();\n // params = params.append('view', 'full');\n const options = {\n params: params\n };\n // let headers: HttpHeaders = new HttpHeaders();\n // headers = headers.append('Accept', 'application/json');\n const x = this.http.get(url);\n return x;\n }\n\n getSubstanceDetailsFromSubstanceKey(substanceKey: string): Observable {\n const url = this.apiBaseUrl + 'substances(' + encodeURIComponent(substanceKey) + ')';\n let params = new HttpParams();\n params = params.append('view', 'full');\n const options = {\n params: params\n };\n const x = this.http.get(url, options);\n return x;\n }\n\n\n addClinicalTrial(body): Observable {\n const url = this.apiBaseUrl + `clinicaltrialsus`;\n const params = new HttpParams();\n const options = {\n params: params,\n type: 'JSON',\n headers: {\n 'Content-type': 'application/json'\n }\n };\n const x = this.http.post(url, body, options);\n return x;\n }\n\n updateClinicalTrial(body): Observable {\n const url = this.apiBaseUrl + `clinicaltrialsus`;\n const params = new HttpParams();\n // params = params.append('view', 'full');\n const options = {\n params: params,\n headers: {\n 'Content-type': 'application/json'\n }\n\n };\n // this is actually geting the data from the PUT, but that gets lost in the subscribe routine.\n // letting the prevous data remain; very annoying. Could this have something to do with const declarations?\n const x = this.http.put(url, body, options);\n return x;\n }\n\n getSubstanceClinicalTrialsEurope(\n uuid: string, page: number, pageSize: number\n ): Observable> {\n const skip = page * pageSize;\n\n const url = this.baseUrl + 'api/v1/clinicaltrialseurope/search?q=root_clinicalTrialEuropeProductList_clinicalTrialEuropeDrugList_substanceKey:\"^'+ uuid +'$\"' + '&top=' + pageSize + '&skip=' + skip; \n return this.http.get>(url).pipe(\n map(results => {\n this.totalRecords = results['total'];\n console.log(JSON.stringify(results));\n return results;\n })\n );\n }\n\n getClinicalTrialDetails(\n trialNumber: string, src: string\n ): Observable {\n const url = this.apiBaseUrl + `clinicaltrialsus/${trialNumber}`;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getClinicalTrialsFacets(facet: Facet, searchTerm?: string, nextUrl?: string): Observable {\n let url: string;\n if (searchTerm) {\n url = `${this.configService.configData.apiBaseUrl}api/v1/clinicaltrialsus/search/@facets?wait=false&kind=ix.ct.models.ClinicalTrial&skip=0&fdim=200&sideway=true&field=${facet.name.replace(' ', '+')}&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=${searchTerm}`;\n } else if (nextUrl != null) {\n url = nextUrl;\n } else {\n url = facet._self;\n }\n return this.http.get(url);\n }\n\n // see substance.service\n filterFacets(name: string, category: string ): Observable {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/clinicaltrialsus/search/@facets?wait=false&kind=ix.ct.models.ClinicalTrial&skip=0&fdim=200&sideway=true&field=${category}&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=${name}`;\n return this.http.get(url);\n }\n// see substance.service\n retrieveFacetValues(facet: Facet): Observable {\n const url = facet._self;\n return this.http.get(url);\n }\n// see substance.service\n retrieveNextFacetValues(facet: Facet): Observable {\n const url = facet._self;\n if (!facet.$next) {\n return this.http.get(url).pipe(\n switchMap(response => {\n if (response) {\n const next = response.nextPageUri;\n return this.http.get(next);\n } else {\n return 'nada';\n }\n }));\n } else {\n return this.http.get(facet.$next);\n }\n\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n const url = this.apiBaseUrl + 'clinicaltrialsus/' + `export/${etag}/${extension}`;\n return url;\n }\n getApiEuropeExportUrl(etag: string, extension: string): string {\n const url = this.apiBaseUrl + 'clinicaltrialseurope/' + `export/${etag}/${extension}`;\n return url;\n }\n\n getClinicalTrialListExportUrl(bdnum: string): string {\n return this.baseUrl + 'clinicalTrialListExport?bdnum=' + bdnum;\n }\n\n getClinicalTrialEuropeListExportUrl(bdnum: string): string {\n return this.baseUrl + 'clinicalTrialEuropeListExport?bdnum=' + bdnum;\n }\n\n getUpdateApplicationUrl(): string {\n return this.baseUrl + 'updateApplication?applicationId=';\n }\n\n\n}\n","
        \n {{data.message}}\n
        \n
        \n
        \n \n
        \n \n \n \n \n
        ","import { Component, Inject, OnInit } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { ActivatedRoute, Router } from '@angular/router';\n\n@Component({\n selector: 'app-confirm-dialog',\n templateUrl: './confirm-dialog.component.html',\n styleUrls: ['./confirm-dialog.component.scss']\n})\nexport class ConfirmDialogComponent implements OnInit {\n public dialogRef: MatDialogRef;\n\n testData: string;\n\n constructor(\n private sanitizer: DomSanitizer,\n @Inject(MAT_DIALOG_DATA) public data: any,\n private activatedRoute: ActivatedRoute,\n private router: Router\n ) { }\n\n ngOnInit() {\n }\n\n}\n","
        \n
        \n
        \n Application Count:\n
        \n
        \n \n
        \n
        \n \n
        \n
        \n
        \n
        \n \n \n
        \n
        \n
        \n \n {{searchCount.appCountConcat}}\n \n
        \n
        \n\n
        \n
        \n Product Count:\n
        \n
        \n \n
        \n
        \n \n
        \n
        \n
        \n
        \n \n
        \n
        \n
        \n \n {{searchCount.prodCountConcat}}\n \n
        \n\n \n
        \n\n
        \n
        \n Clinical Trial Count:\n
        \n
        \n 0; else noRecordClinical\">\n \n {{searchCount.clinicalCount}}\n \n \n \n \n {{searchCount.clinicalCount}}\n \n
        \n
        \n\n
        \n
        \n Adverse Event Case Count:\n
        \n
        \n 0; else noRecordAdverse\">\n \n {{searchCount.adverseEventCount}}\n \n \n \n \n {{searchCount.adverseEventCount}}\n \n
        \n
        \n
        \n\n\n
        0 && loadedComponents && loadedComponents.applications\">\n
        \n
        \n \n
        \n
        \n
        ","import { Component, OnInit, Input } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { SubstanceSummaryDynamicContent } from '@gsrs-core/substances-browse';\nimport { SubstanceDetail } from '@gsrs-core/substance';\nimport { GeneralService } from '../../service/general.service';\nimport { ConfigService } from '../../../core/config/config.service';\nimport { ApplicationService } from '../../application/service/application.service';\nimport { LoadedComponents } from '@gsrs-core/config';\n\n@Component({\n selector: 'app-substance-counts',\n templateUrl: './substance-counts.component.html',\n styleUrls: ['./substance-counts.component.scss']\n})\nexport class SubstanceCountsComponent implements OnInit, SubstanceSummaryDynamicContent {\n substanceNames: any;\n substanceKey: string;\n substance: SubstanceDetail;\n searchCount: any;\n appMatchListCount = 0;\n appMatchList: any;\n substanceId: string;\n fullFacetField = '';\n total = 0;\n privateSearch: string;\n privateFacetParams: FacetParam;\n pageSize = 0;\n isShowMatchList = 'false';\n // application: Application;\n displayMatchApplicationConfig = false;\n loadedComponents: LoadedComponents;\n appCountConcat = '0';\n\n constructor(\n private applicationService: ApplicationService,\n private generalService: GeneralService,\n public activatedRoute: ActivatedRoute,\n private router: Router,\n private configService: ConfigService) { }\n\n ngOnInit() {\n this.substanceId = this.substance.uuid;\n this.loadedComponents = (this.configService.configData && this.configService.configData.loadedComponents) || null;\n if (this.loadedComponents && this.loadedComponents.applications) {\n this.getSearchCount();\n this.getAppIngredMatchListCount();\n }\n // Get Search Count for Application (Commenting below line, do not need)\n // this.getApplicationBySubstanceKeyCenter();\n }\n\n getSubstanceKey() {\n if (this.substance) {\n // Get Substance Name\n // this.substanceName = this.substance._name;\n if (this.substance.codes.length > 0) {\n this.substance.codes.forEach(element => {\n if (element.codeSystem && element.codeSystem === 'BDNUM') {\n if (element.type && element.type === 'PRIMARY') {\n this.substanceKey = element.code;\n }\n }\n });\n }\n }\n }\n\n getSearchCount(): void {\n this.generalService.getSearchCount(this.substance.uuid).subscribe(searchCount => {\n if (searchCount) {\n this.searchCount = searchCount;\n }\n });\n }\n\n // Application Match Lists functions\n getAppIngredMatchListCount(): void {\n this.isShowMatchList = sessionStorage.getItem('matchAppCheckBoxValueSess');\n if ((this.isShowMatchList !== null) && (this.isShowMatchList === 'true')) {\n this.getSubstanceNames(this.substance.uuid);\n // this.generalService.getAppIngredtMatchListCount(this.substance.uuid).subscribe(response => {\n // this.appMatchListCount = response.count;\n // });\n }\n }\n\n getSubstanceNames(substanceId: string): void {\n if (substanceId) {\n this.generalService.getSubstanceNamesBySubstanceUuid(substanceId).subscribe(substanceNames => {\n this.substanceNames = substanceNames;\n\n // Get Preferred Term or DisplayName == true\n this.substanceNames.forEach((names, index) => {\n if (names.displayName === true) {\n // this.preferredTerm = names.name;\n }\n const facetField = 'root_applicationProductList_applicationProductNameList_productName:';\n if (names) {\n if (names.name) {\n if (index > 0) {\n this.fullFacetField = this.fullFacetField + ' OR ';\n }\n this.fullFacetField = this.fullFacetField + facetField + \"\\\"\" + names.name + \"\\\"\";\n }\n }\n });\n this.getApplicationIngredientMatchList();\n });\n }\n }\n\n getApplicationIngredientMatchList(): void {\n // Facet Search for \"Has No Ingredient\"\n const facetParam = { 'Has Ingredients': { 'params': { 'Has No Ingredient': true }, 'isAllMatch': false } };\n\n const subscription = this.applicationService.getApplications(\n null,\n 0,\n 200,\n this.fullFacetField,\n facetParam\n )\n .subscribe(pagingResponse => {\n this.appMatchListCount = pagingResponse.count;\n });\n }\n\n // GSRS 3.0\n getApplicationBySubstanceKeyCenter() {\n const skip = 5000;\n this.pageSize = 5000;\n this.privateSearch = this.applicationService.APPALL_SEARCH_SUBSTANCE_KEY + this.substanceKey;\n // + this.bdnum + ' AND root_center:' + this.center + ' AND root_fromTable: ' + this.fromTable;\n\n // this.privateSearch = \"http://localhost:8083/api/v1/applicationsall/search?q=root_applicationProductList_applicationIngredientList_substanceKey:\";\n\n // if (searchType && searchType === 'initial') {\n // this.pageSize = 100;\n // }\n const subscription = this.applicationService.getApplicationAll(\n 'default',\n skip,\n this.pageSize,\n this.privateSearch,\n this.privateFacetParams\n ).subscribe(pagingResponse => {\n this.appCountConcat = pagingResponse.total.toString();\n }, error => {\n console.log('error');\n }, () => {\n subscription.unsubscribe();\n });\n }\n\n launchApplicationMatchingList(substanceId: string) {\n this.router.navigate(['/sub-app-match-list', substanceId]);\n }\n\n}\n","
        \n \n
        \n
        \n \n Display Match Application Names\n \n
        \n
        \n\n \n
        -1\">\n \n
        \n\n
        -1\">\n \n
        \n\n
        -1\">\n \n
        \n\n
        -1\">\n \n
        \n\n\n
        \n help\n \n
        \n\n
        ","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { SubstanceBrowseHeaderDynamicContent } from '@gsrs-core/substances-browse/substance-browse-header-dynamic-content.component';\nimport { GeneralService } from '../../service/general.service';\nimport { ConfigService } from '../../../core/config/config.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { take } from 'rxjs/operators';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-show-application-toggle',\n templateUrl: './show-application-toggle.component.html',\n styleUrls: ['./show-application-toggle.component.scss']\n})\nexport class ShowApplicationToggleComponent implements OnInit, AfterViewInit, OnDestroy, SubstanceBrowseHeaderDynamicContent {\n private subscriptions: Array = [];\n test: any;\n isAdmin = false;\n privateExport = false;\n displayMatchApplicationConfig = false;\n displayMatchAppCheckBoxValue = false;\n etag = '';\n etagDetails: any;\n paramUrl = '';\n totalSubstance = 0;\n loadedComponents: any;\n exportOptions: Array;\n hasAdditionalDownloads = false;\n additionalExportOptions = [];\n\n constructor(\n private generalService: GeneralService,\n private configService: ConfigService,\n private authService: AuthService,\n private substanceService: SubstanceService,\n private router: Router,\n public activatedRoute: ActivatedRoute,\n public loadingService: LoadingService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n\n if (this.isAdmin === true) {\n this.isDisplayAppToMatchConfig();\n }\n });\n this.loadedComponents = (this.configService.configData && this.configService.configData.loadedComponents) || null;\n /*\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'SuperUpdater');\n if (this.isAdmin === true) {\n this.isDisplayAppToMatchConfig();\n }\n */\n\n // TESTING TESTING TESTING TESTING. NEED TO REMOVE\n // this.isDisplayAppToMatchConfig();\n\n // Get Etag and total from Browse Substance Results\n const subscriptionResult = this.substanceService.searchResults.subscribe(response => {\n if (response) {\n this.etag = response.etag;\n this.totalSubstance = response.total;\n\n // Get Export Option lists\n this.getExportOptions();\n }\n });\n this.subscriptions.push(subscriptionResult);\n }\n\n ngAfterViewInit() {\n // put something;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n }\n\n isDisplayAppToMatchConfig(): void {\n if (this.configService.configData && this.configService.configData.displayMatchApplication !== null) {\n this.displayMatchApplicationConfig = JSON.parse(this.configService.configData.displayMatchApplication);\n\n // If the key 'displayMatchApplication' is set to true in conf.json file,\n // display the checkbox.\n if (this.displayMatchApplicationConfig === true) {\n const data = sessionStorage.getItem('matchAppCheckBoxValueSess');\n if (data === null) {\n sessionStorage.setItem('matchAppCheckBoxValueSess', 'false');\n } else {\n this.displayMatchAppCheckBoxValue = JSON.parse(data);\n }\n }\n }\n }\n\n setDisplayAppToMatchSession(checkBoxValue: any): void {\n sessionStorage.setItem('matchAppCheckBoxValueSess', checkBoxValue);\n\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigate(['/browse-substance']);\n }\n\n export(source: string) {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension, source);\n if (this.isAdmin === true) {\n let type = '';\n if (source != null) {\n if (source === 'app') {\n type = 'browseSubstanceApplication';\n } else if (source === 'prod') {\n type = 'browseSubstanceProduct';\n } else if (source === 'clinicaltrialsus') {\n type = 'browseSubstanceClinicalTrial-US';\n } else if (source === 'clinicaltrialseurope') {\n type = 'browseSubstanceClinicalTrial-EU';\n }\n }\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': type }\n });\n dialogReference.afterClosed().subscribe(name => {\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n }\n };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string, source: string): string {\n return this.generalService.getApiExportUrlBrowseSubstance(etag, extension, source);\n }\n\n getExportOptions() {\n this.substanceService.getExportOptions(this.etag).subscribe(response => {\n this.exportOptions = response;\n if (this.exportOptions) {\n this.exportOptions.forEach(element => {\n if (element.extension) {\n if ((element.extension === 'appxlsx') || (element.extension === 'prodxlsx') \n || (element.extension === 'ctusxlsx') || (element.extension === 'cteuxlsx')\n ) {\n this.hasAdditionalDownloads = true;\n this.additionalExportOptions.push(element.extension);\n }\n }\n });\n }\n });\n }\n\n}\n","import {\r\n LazyLoadedComponentManifest,\r\n DynamicComponentManifest\r\n} from '@gsrs-core/dynamic-component-loader';\r\nimport { SubstanceCountsComponent } from './substance-browse/substance-counts/substance-counts.component';\r\nimport { ShowApplicationToggleComponent } from './substance-browse/show-application-toggle/show-application-toggle.component';\r\n\r\nexport const fdaLazyLoadedComponentManifests: Array = [\r\n {\r\n componentId: 'fda-substance-product',\r\n path: 'fda-substance-product',\r\n loadChildren: () => import('./substance-details/substance-products/substance-products.module').then(m => m.SubstanceProductsModule),\r\n }\r\n];\r\n\r\nexport const fdaDynamicBrowseComponentManifests: Array> = [\r\n {\r\n component: ShowApplicationToggleComponent,\r\n componentType: 'browseHeader'\r\n }\r\n];\r\n\r\nexport const fdaDynamicSubSummaryComponentManifests: Array> = [\r\n {\r\n component: SubstanceCountsComponent,\r\n componentType: 'summary'\r\n\r\n }\r\n];\r\n\r\n\r\n","export const applicationSearchSortValues = [\n {\n 'value': 'default',\n 'display': 'Relevance'\n },\n {\n 'value': '^root_appType',\n 'display': 'Application Type, Ascending',\n 'displayedColumns': 'appType',\n 'direction': 'asc'\n },\n {\n 'value': '$root_appType',\n 'display': 'Application Type, Descending',\n 'displayedColumns': 'appType',\n 'direction': 'desc'\n },\n {\n 'value': '^root_appNumber',\n 'display': 'Application Number, Ascending',\n 'displayedColumns': 'appNumber',\n 'direction': 'asc'\n },\n {\n 'value': '$root_appNumber',\n 'display': 'Application Number, Descending',\n 'displayedColumns': 'appNumber',\n 'direction': 'desc'\n },\n {\n 'value': '^root_center',\n 'display': 'Center, A-Z',\n 'displayedColumns': 'center',\n 'direction': 'asc'\n },\n {\n 'value': '$root_center',\n 'display': 'Center, Z-A',\n 'displayedColumns': 'center',\n 'direction': 'desc'\n },\n {\n 'value': '^root_provenace',\n 'display': 'Provenance, A-Z',\n 'displayedColumns': 'provenance',\n 'direction': 'asc'\n },\n {\n 'value': '$root_provenance',\n 'display': 'Provenance, Z-A',\n 'displayedColumns': 'provenance',\n 'direction': 'desc'\n },\n {\n 'value': '^root_status',\n 'display': 'Status, A-Z',\n 'displayedColumns': 'applicationStatus',\n 'direction': 'asc'\n },\n {\n 'value': '$root_status',\n 'display': 'Status, Z-A',\n 'displayedColumns': 'applicationStatus',\n 'direction': 'desc'\n },\n {\n 'value': '^root_sponsorName',\n 'display': 'Sponsor Name, A-Z',\n 'displayedColumns': 'sponsorName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_sponsorName',\n 'display': 'Sponsor Name, Z-A',\n 'displayedColumns': 'sponsorName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_applicationProductList_applicationProductNameList_productName',\n 'display': 'Product Name, A-Z',\n 'displayedColumns': 'productName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_applicationProductList_applicationProductNameList_productName',\n 'display': 'Product Name, Z-A',\n 'displayedColumns': 'productName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_Ingredient Name',\n 'display': 'Ingredient Name, A-Z',\n 'displayedColumns': 'ingredientName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_Ingredient Name',\n 'display': 'Ingredient Name, Z-A',\n 'displayedColumns': 'ingredientName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_creationDate',\n 'display': 'Oldest Creation'\n },\n {\n 'value': '$root_creationDate',\n 'display': 'Newest Creation'\n },\n {\n 'value': '^root_lastModifiedDate',\n 'display': 'Oldest Change'\n },\n {\n 'value': '$root_lastModifiedDate',\n 'display': 'Newest Change'\n }\n\n];\n","
        \n
        \n \n \n {{hintMessage}}\n {{errorMessage}}\n \n
        \n
        {{field['display']}}
        \n \n
        {{suggestion.key}}
        \n
        \n
        \n
        \n      
        \n
        \n \n \n
        \n
        ","import { Component, OnInit, ElementRef, AfterViewInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { MatAutocompleteSelectedEvent, MatAutocomplete } from '@angular/material/autocomplete';\nimport { debounceTime, distinctUntilChanged, switchMap, take } from 'rxjs/operators';\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils/substance-suggestions-group.model';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics/google-analytics.service';\nimport { ConfigService } from '@gsrs-core/config';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { ApplicationService } from '../service/application.service';\n\n@Component({\n selector: 'app-application-text-search',\n templateUrl: './application-text-search.component.html',\n styleUrls: ['./application-text-search.component.scss']\n})\n\nexport class ApplicationTextSearchComponent implements OnInit, AfterViewInit, OnDestroy {\n searchControl = new FormControl();\n substanceSuggestionsGroup: SubstanceSuggestionsGroup;\n suggestionsFields: Array;\n matOpen = true;\n private testElem: HTMLElement;\n private searchContainerElement: HTMLElement;\n private query: string;\n @Input() eventCategory: string;\n @Input() styling?: string;\n @Output() searchPerformed = new EventEmitter();\n @Output() searchValueOut = new EventEmitter();\n @Input() placeholder = 'Search';\n @Input() hintMessage = '';\n private privateErrorMessage = '';\n @Output() opened = new EventEmitter();\n @Output() closed = new EventEmitter();\n @Input() source?: string;\n private CasDisplay = 'CAS';\n codeSystemVocab?: any;\n\n constructor(\n public applicationService: ApplicationService,\n private element: ElementRef,\n public gaService: GoogleAnalyticsService,\n public configService: ConfigService,\n private cvService: ControlledVocabularyService\n ) { }\n\n ngOnInit() {\n this.searchControl.valueChanges.pipe(\n debounceTime(500),\n distinctUntilChanged(),\n switchMap(searchValue => {\n this.query = searchValue;\n this.searchValueOut.emit(this.query);\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchValue || 'search term';\n this.gaService.sendEvent(eventCategory, 'search:enter-term', eventLabel);\n return this.applicationService.getApplicationSearchSuggestions(searchValue.toUpperCase());\n })\n ).subscribe((response: SubstanceSuggestionsGroup) => {\n this.substanceSuggestionsGroup = response;\n let showTypes = ['root_applicationID', 'Application_Type', 'Product_Name', 'Sponsor_Name', 'Title', 'Ingredient_Name', 'Division_Class_Division', 'Indication'];\n /* if(this.configService && this.configService.configData && this.configService.configData.typeaheadFields) {\n showTypes = this.configService.configData.typeaheadFields;\n } */\n this.suggestionsFields = Object.keys(this.substanceSuggestionsGroup).filter(function (item) {\n return showTypes.indexOf(item) > -1;\n });\n // this.suggestionsFields.sort(function (x, y) { return x === 'Display_Name' ? -1 : y === 'Display_Name' ? 1 : 0; });\n this.suggestionsFields.forEach((value, index) => {\n if (value === 'root_applicationID') {\n this.suggestionsFields[index] = { value: 'root_applicationID', display: 'Application Type Number' };\n } else if (value === 'Application_Type') {\n this.suggestionsFields[index] = { value: 'Application_Type', display: 'Application Type' };\n } else if (value === 'Product_Name') {\n this.suggestionsFields[index] = { value: 'Product_Name', display: 'Product Name' };\n } else if (value === 'Sponsor_Name') {\n this.suggestionsFields[index] = { value: 'Sponsor_Name', display: 'Sponsor Name' };\n } else if (value === 'Ingredient_Name') {\n this.suggestionsFields[index] = { value: 'Ingredient_Name', display: 'Ingredient Name' };\n } else {\n this.suggestionsFields[index] = { value: value, display: value };\n }\n });\n\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\n this.matOpen = true;\n this.opened.emit();\n }\n\n }, error => {\n this.gaService.sendException('search suggestion error from API call');\n console.log(error);\n });\n\n }\n\n @Input()\n set searchValue(searchValue: string) {\n this.searchControl.setValue(searchValue);\n }\n\n @Input()\n set errorMessage(errorMessage: string) {\n this.searchControl.markAsTouched();\n if (errorMessage) {\n this.searchControl.setErrors({\n error: true\n });\n } else {\n this.searchControl.setErrors(null);\n }\n this.privateErrorMessage = errorMessage;\n }\n\n get errorMessage(): string {\n return this.privateErrorMessage;\n }\n\n ngOnDestroy() { }\n\n autoCompleteClosed(): void {\n this.matOpen = false;\n this.closed.emit();\n }\n\n focused(): void {\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\n this.matOpen = true;\n this.opened.emit();\n }\n }\n\n ngAfterViewInit() {\n this.searchContainerElement = this.element.nativeElement.querySelector('.search-container');\n }\n\n substanceSearchOptionSelected(event?: MatAutocompleteSelectedEvent) {\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && event.option.value || 'auto-complete option';\n this.gaService.sendEvent(eventCategory, 'select:auto-complete', eventLabel);\n let searchTerm = event.option.value;\n\n searchTerm = this.topSearchClean(searchTerm);\n\n this.searchPerformed.emit(searchTerm);\n }\n\n processSubstanceSearch() {\n let searchTerm = this.searchControl.value;\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchTerm || 'search term option';\n this.gaService.sendEvent(eventCategory, 'search:submit', eventLabel);\n\n // Clean up searchTerm\n searchTerm = this.topSearchClean(searchTerm);\n\n this.searchPerformed.emit(searchTerm);\n }\n\n highlight(field: string) {\n if (!this.query) {\n return field;\n } else {\n if (this.matOpen) {\n this.testElem = document.querySelector('#overflow') as HTMLElement;\n if (this.testElem != null) {\n this.testElem.innerText = field;\n if (this.testElem.scrollWidth > this.testElem.offsetWidth) {\n const pos = field.toUpperCase().indexOf(this.query.toUpperCase());\n field = '...' + field.substring(pos - 15, field.length);\n }\n }\n }\n const query = this.query.replace(/(?=[() ])/g, '\\\\');\n return field.replace(new RegExp(query, 'gi'), match => {\n return '' + match + '';\n });\n }\n }\n\n activateSearch(): void {\n if (this.source) {\n this.searchContainerElement.classList.add('active-' + this.source);\n } else {\n this.searchContainerElement.classList.add('active-search');\n }\n }\n\n deactivateSearch(): void {\n this.searchContainerElement.classList.add('deactivate-search');\n setTimeout(() => {\n if (this.source) {\n\n this.searchContainerElement.classList.remove('active-' + this.source);\n this.searchContainerElement.classList.remove('deactivate-search');\n } else {\n this.searchContainerElement.classList.remove('active-search');\n this.searchContainerElement.classList.remove('deactivate-search');\n }\n }, 300);\n }\n\n topSearchClean(searchTerm): string {\n if (searchTerm && searchTerm.length > 0) {\n searchTerm = searchTerm.trim();\n if (searchTerm.indexOf('\"') < 0 && searchTerm.indexOf('*') < 0 && searchTerm.indexOf(':') < 0\n && searchTerm.indexOf(' AND ') < 0 && searchTerm.indexOf(' OR ') < 0) {\n // Put slash in front of brackets, for example:\n // 1. [INN] to \\[INN\\]\n // 2. IBUPROFEN [INN] to IBUPROFEN \\[INN\\]\n // 3. *[INN] to *\\[INN\\]\n // 4. [INN]* to \\[INN\\]*\n // 5. \"[INN]\" to \"\\[INN\\]\"\n // 6. \"IBUPROFEN [INN]\" to \"IBUPROFEN \\[INN\\]\"\n // 7. \"*[INN]\" to \"*\\[INN\\]\"\n // 8. [INN]* to \\[INN\\]*\n searchTerm = '\"' + searchTerm\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\n + '\"';\n } else if (searchTerm.indexOf(':') < 0) {\n searchTerm = searchTerm\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\n }\n this.searchControl.setValue(searchTerm);\n }\n return searchTerm;\n }\n}\n","


        \n\n\n \n \n \n \n\n \n \n
        \n \n\n \n
        0; else filterParameters\">\n
        \n
        \n
        \n Would you like to restrict this search to a field?\n
         \n \n \n \n \n
        \n
        \n
        \n {{matchType == 'WORD' ? 'Contains Match' : 'Exact Match'}}\n
        \n \n
        \n
        \n
        \n
        \n
        \n
        \n
        \n For more options use the Advanced Search\n
        \n
        \n
        \n \n\n\n \n \n
        \n
        \n
        \n Search Query: \n {{searchTerm}}\n
        \n
        \n \n \n
        \n
        \n\n \n
        \n
        \n \n \n {{facet.type}}:\n \n \n {{facet.val}}\n \n
        \n
        \n \n
        \n
        \n \n
        \n
        \n\n \n
        \n\n
        \n Browse Applications\n
        \n\n \n \n \n \n \n \n \n \n \n\n \n \n Sort By\n \n \n {{option.display}}\n \n \n \n\n \n
        \n \n
        \n\n
        \n \n
        \n \n \n\n
        \n Page: \n \n \n \n of {{lastPage}}\n
        \n
        \n
        \n\n
        \n \n \n \n\n \n \n
        \n\n \n\n
        \n\n \n
        \n
        \n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
        Application Type \n \n Application Number {{application.appNumber}} Center {{application.center}} Provenance {{application.provenance}} Application Status {{application.status}} Product Name \n
          \n
          \n \n
          \n
        1. \n {{prodName.productName}}\n
        2. \n
          \n
          \n
        \n
        Ingredient Name (Active Ingredient) \n
          \n
          0; else noRecordProdName\">\n
          \n
          \n
          \n
          \n \n
        1. \n \n {{ing._ingredientName}}\n \n \n \n
        2. \n
          \n
          \n
          \n
          \n
          \n \n
        \n
        Sponsor Name {{application.sponsorName}}
        \n\n
        \n
        \n\n \n\n \n
        \n \n \n \n\n
        \n Center: {{application.center}}\n        \n Provenance: {{application.provenance}}\n
        \n\n \n
        \n\n \n\n
        \n\n \n
        \n
        \n\n
        \n \n\n
        0; else noRecordProdName\">\n\n
        \n\n
        \n\n
        \n Product Name {{indexProd + 1}}:\n
        \n
        \n
        0; else noProdNameList\">\n
        \n
        \n
        \n ▪\n \n {{ prodName.productName }}\n \n \n (Deprecated)\n \n
        \n \n ▪\n {{ prodName.productName }}\n \n
        \n \n (No Product Name)\n \n
        \n
        \n \n (No Product Name)\n \n
        \n \n\n
        \n\n
        \n
        \n \n
        \n Ingredient Name: {{indexIng + 1}}:\n
        \n
        \n\n \n
        \n
        \n \n \n {{ing._ingredientName}}\n \n \n \n\n \n\n \n \n \n \n
        \n\n \n
        \n
        \n ({{ ing.ingredientType }})\n
        \n \n ({{ ing.ingredientType }})\n \n
        \n\n \n
        \n \n {{ing.activeMoietyName}}\n  (Active Moiety)\n
        \n
        \n \n
        \n {{ing.activeMoietyName}}\n  (Active Moiety)
        \n
        \n
        \n\n
        \n \n (No Ingredient Name)\n \n
        \n \n \n\n
        \n\n
        \n\n
        \n\n
        \n\n \n
        \n
        \n Product Name 1:\n
        \n
        \n (No Product Name)\n
        \n
        \n
        \n
        \n Ingredient Name 1:\n
        \n
        \n (No Ingredient Name)\n
        \n
        \n
        \n\n
        \n\n
        \n\n\n
        \n
        \n Title:\n
        \n
        \n {{application.title}}\n
        \n
        \n\n
        \n
        \n Sponsor Name:\n
        \n
        \n {{ application.sponsorName}}\n
        \n
        \n\n
        \n
        \n
        \n Status Date:\n
        \n
        \n  {{application.statusDate}}\n
        \n
        \n
        \n
        \n \n Clinical\n Trials:\n \n \n
        \n
        \n  \n
        \n • \n \n {{clinical.nctNumber}}\n \n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n Submit Date:\n
        \n
        \n  {{application.submitDate}}\n
        \n
        \n\n
        \n
        \n Indications: \n \n
        \n
        \n
        \n \n • {{ ind.indication }}\n \n
        \n
        \n
        \n
        \n\n \n\n \n \n\n
        \n\n\n \n\n
        \n\n \n \n
        \n
        \n Create By:\n
        \n
        \n {{application.createdBy}}\n
        \n
        \n\n
        \n
        \n Create Date:\n
        \n
        \n {{application.creationDate|date: 'MM/dd/yyyy h:mm a'}}\n
        \n
        \n\n
        \n
        \n Edited By:\n
        \n
        \n {{application.modifiedBy}}\n
        \n
        \n\n
        \n
        \n Edit Date:\n
        \n
        \n {{application.lastModifiedDate|date: 'MM/dd/yyyy h:mm a'}}\n
        \n
        \n
        \n\n
        \n\n
        \n\n
        \n\n
        \n
        \n
        \n\n \n
        \n
        \n \n \n\n
        \n Page: \n \n \n \n of {{lastPage}}\n
        \n
        \n
        \n\n \n \n \n \n\n
        \n
        \n
        ","import { Component, OnInit, AfterViewInit, OnDestroy, HostListener } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Location, LocationStrategy } from '@angular/common';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport * as _ from 'lodash';\nimport { Sort } from '@angular/material/sort';\nimport { Facet, FacetsManagerService, FacetUpdateEvent } from '@gsrs-core/facets-manager';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { ConfigService } from '@gsrs-core/config';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { GoogleAnalyticsService } from '../../../../app/core/google-analytics/google-analytics.service';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { NarrowSearchSuggestion } from '@gsrs-core/utils';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\nimport { environment } from '../../../../environments/environment';\nimport { applicationSearchSortValues } from './application-search-sort-values';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { StructureImageModalComponent, StructureService } from '@gsrs-core/structure';\nimport { ApplicationService } from '../service/application.service';\nimport { GeneralService } from '../../service/general.service';\nimport { Application } from '../model/application.model';\n\n@Component({\n selector: 'app-applications-browse',\n templateUrl: './applications-browse.component.html',\n styleUrls: ['./applications-browse.component.scss']\n})\nexport class ApplicationsBrowseComponent implements OnInit, AfterViewInit, OnDestroy {\n // @ViewChild('matSideNavInstance', { static: true }) matSideNav: MatSidenav;\n view = 'cards';\n public privateSearchTerm?: string;\n public applications: Array;\n order: string;\n public sortValues = applicationSearchSortValues;\n pageIndex: number;\n pageSize: number;\n jumpToValue: string;\n totalApplications: number;\n isLoading = true;\n isError = false;\n isAdmin: boolean;\n isLoggedIn = false;\n dataSource = [];\n hasBackdrop = false;\n appType: string;\n appNumber: string;\n clinicalTrialApplication: Array;\n exportUrl: string;\n private isComponentInit = false;\n privateExport = false;\n disableExport = false;\n private overlayContainer: HTMLElement;\n etag = '';\n environment: any;\n narrowSearchSuggestions?: { [matchType: string]: Array } = {};\n matchTypes?: Array = [];\n narrowSearchSuggestionsCount = 0;\n previousState: Array = [];\n private searchTermHash: number;\n isSearchEditable = false;\n searchValue: string;\n lastPage: number;\n invalidPage = false;\n ascDescDir = 'desc';\n displayedColumns: string[] = [\n 'appType',\n 'appNumber',\n 'center',\n 'provenance',\n 'applicationStatus',\n 'productName',\n 'sponsorName',\n 'ingredientName'\n ];\n\n // needed for facets\n private privateFacetParams: FacetParam;\n rawFacets: Array;\n private isFacetsParamsInit = false;\n public displayFacets: Array = [];\n private subscriptions: Array = [];\n\n constructor(\n public applicationService: ApplicationService,\n public generalService: GeneralService,\n private activatedRoute: ActivatedRoute,\n private location: Location,\n private locationStrategy: LocationStrategy,\n private router: Router,\n private sanitizer: DomSanitizer,\n public gaService: GoogleAnalyticsService,\n public configService: ConfigService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n private authService: AuthService,\n private overlayContainerService: OverlayContainer,\n private facetManagerService: FacetsManagerService,\n private utilsService: UtilsService,\n private dialog: MatDialog,\n private titleService: Title\n ) { }\n\n @HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if (this.router.url === this.previousState[0]) {\n this.ngOnInit();\n }\n\n }, 50);\n }\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.applicationService.getApplicationFacets);\n this.gaService.sendPageView('Browse Applications');\n\n this.titleService.setTitle(`A:Browse Applications`);\n\n this.pageSize = 10;\n this.pageIndex = 0;\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n this.privateSearchTerm = this.activatedRoute.snapshot.queryParams['search'] || '';\n\n if (this.privateSearchTerm) {\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n }\n\n this.order = this.activatedRoute.snapshot.queryParams['order'] || 'root_appNumber';\n this.pageSize = parseInt(this.activatedRoute.snapshot.queryParams['pageSize'], null) || 10;\n this.pageIndex = parseInt(this.activatedRoute.snapshot.queryParams['pageIndex'], null) || 0;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.isLoggedIn = true;\n }\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\n });\n this.subscriptions.push(authSubscription);\n\n const paramsSubscription = this.activatedRoute.queryParamMap.subscribe(params => {\n this.searchValue = params.get('search');\n // this.setClassicLinkQueryParams(params);\n });\n this.subscriptions.push(paramsSubscription);\n\n this.isComponentInit = true;\n this.loadComponent();\n\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n private loadComponent(): void {\n if (this.isFacetsParamsInit && this.isComponentInit) {\n this.searchApplications();\n }\n }\n\n searchApplications() {\n this.loadingService.setLoading(true);\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.applicationService.getApplications(\n this.order,\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.isError = false;\n this.applications = pagingResponse.content;\n // didn't work unless I did it like this instead of\n // below export statement\n this.dataSource = this.applications;\n this.totalApplications = pagingResponse.total;\n this.etag = pagingResponse.etag;\n\n // alert('This etag' + this.etag);\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n\n // Narrow Suggest Search Begin\n this.narrowSearchSuggestions = {};\n this.matchTypes = [];\n this.narrowSearchSuggestionsCount = 0;\n if (pagingResponse.narrowSearchSuggestions && pagingResponse.narrowSearchSuggestions.length) {\n pagingResponse.narrowSearchSuggestions.forEach(suggestion => {\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n });\n }\n this.matchTypes.sort();\n // Narrow Suggest Search End\n\n this.getSubstanceBySubstanceKey();\n // Get Application Clinical Trial Record\n this.getClinicalTrialApplication();\n }, error => {\n console.log('error');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve Applications. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n subscription.unsubscribe();\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n setSearchTermValue() {\n this.pageSize = 10;\n this.pageIndex = 0;\n this.searchApplications();\n }\n\n clearSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n this.gaService.sendEvent('applicationFiltering', 'icon-button:clear-search', eventLabel);\n\n this.privateSearchTerm = '';\n this.pageIndex = 0;\n this.pageSize = 10;\n\n this.populateUrlQueryParameters();\n this.searchApplications();\n }\n\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n this.clearSearch();\n\n this.facetManagerService.clearSelections();\n }\n\n populateUrlQueryParameters(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n navigationExtras.queryParams['searchTerm'] = this.privateSearchTerm;\n navigationExtras.queryParams['pageSize'] = this.pageSize;\n navigationExtras.queryParams['pageIndex'] = this.pageIndex;\n navigationExtras.queryParams['skip'] = this.pageIndex * this.pageSize;\n\n this.previousState.push(this.router.url);\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n get searchTerm(): string {\n return this.privateSearchTerm;\n }\n\n // get facetParams(): FacetParam | { showAllMatchOption?: boolean } {\n // return this.privateFacetParams;\n // }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString();\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n // Search Applications\n this.searchApplications();\n }\n return;\n }\n\n openSideNav() {\n this.gaService.sendEvent('substancesFiltering', 'button:sidenav', 'open');\n // this.matSideNav.open();\n }\n\n updateView(event): void {\n // this.gaService.sendEvent('adverseeventptsContent', 'button:view-update', event.value);\n this.view = event.value;\n }\n\n changePage(pageEvent: PageEvent) {\n\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.pageIndex !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent('applicationsContent', eventAction, 'pager', eventValue);\n\n this.pageSize = pageEvent.pageSize;\n this.pageIndex = pageEvent.pageIndex;\n this.populateUrlQueryParameters();\n this.searchApplications();\n }\n\n customPage(event: any): void {\n if (this.validatePageInput(event)) {\n this.invalidPage = false;\n const newpage = Number(event.target.value) - 1;\n this.pageIndex = newpage;\n this.gaService.sendEvent('applicationsContent', 'select:page-number', 'pager', newpage);\n this.populateUrlQueryParameters();\n this.searchApplications();\n }\n }\n\n validatePageInput(event: any): boolean {\n if (event && event.target) {\n const newpage = Number(event.target.value);\n if (!isNaN(Number(newpage))) {\n if ((Number.isInteger(newpage)) && (newpage <= this.lastPage) && (newpage > 0)) {\n return true;\n }\n }\n }\n return false;\n }\n\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n this.pageIndex = 0;\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.displayFacets = facetsUpdateEvent.displayFacets;\n if (!this.isFacetsParamsInit) {\n this.isFacetsParamsInit = true;\n this.loadComponent();\n } else {\n this.searchApplications();\n }\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n }\n\n editAdvancedSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'Browse Application search term' :\n `${this.privateSearchTerm}`;\n this.gaService.sendEvent('Application Filtering', 'icon-button:edit-advanced-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n 'g-search-hash': this.searchTermHash.toString()\n }\n };\n\n this.router.navigate(['/advanced-search'], navigationExtras);\n }\n\n getSubstanceBySubstanceKey(): void {\n // let bdnumName: any;\n // let relationship: any;\n // let substanceId: string;\n\n this.applications.forEach((element, index) => {\n element.applicationProductList.forEach((elementProd, indexProd) => {\n\n // Sort Product Name by create date descending\n elementProd.applicationProductNameList.sort((a, b) => {\n return new Date(b.creationDate) - new Date(a.creationDate);\n });\n\n elementProd.applicationIngredientList.forEach((elementIngred, indexIngred) => {\n if (elementIngred.substanceKey != null) {\n\n const substanceSubscription = this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(response => {\n if (response) {\n // Get Substance Details, uuid, approval_id, substance name\n if (elementIngred.substanceKey) {\n this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(responseInactive => {\n if (responseInactive) {\n elementIngred._substanceUuid = responseInactive.uuid;\n elementIngred._ingredientName = responseInactive._name;\n }\n });\n }\n\n // Get Active Moiety - Relationship\n /*\n this.applicationService.getSubstanceRelationship(substanceId).subscribe(responseRel => {\n relationship = responseRel;\n relationship.forEach((elementRel, indexRel) => {\n if (elementRel.relationshipName != null) {\n elementIngred.activeMoietyName = elementRel.relationshipName;\n elementIngred.activeMoietyUnii = elementRel.relationshipUnii;\n }\n });\n });\n */\n }\n });\n this.subscriptions.push(substanceSubscription);\n }\n }); // Ingredient forEach\n\n }); // Product forEach\n\n }); // Application forEach\n\n }\n\n restricSearh(searchTerm: string): void {\n this.privateSearchTerm = searchTerm;\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n this.populateUrlQueryParameters();\n this.searchApplications();\n // this.substanceTextSearchService.setSearchValue('main-substance-search', this.privateSearchTerm);\n }\n\n export() {\n // alert('EXPORT etag' + this.etag);\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n // if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'BrowseApplications' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalApplications\n }\n };\n const params = { 'total': this.totalApplications };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => { this.loadingService.setLoading(false); });\n }\n });\n // }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.applicationService.getApiExportUrl(etag, extension);\n }\n\n get updateApplicationUrl(): string {\n return this.applicationService.getUpdateApplicationUrl();\n }\n\n getClinicalTrialApplication() {\n this.applications.forEach((app, index) => {\n // Get Clinical Trial Application\n const clinicalSubscription = this.applicationService.getClinicalTrialApplication(app.id).subscribe(response => {\n app._clinicalTrialList = [];\n app._clinicalTrialList = response;\n })\n this.subscriptions.push(clinicalSubscription);\n });\n }\n\n openImageModal($event, subUuid: string): void {\n // const eventLabel = environment.isAnalyticsPrivate ? 'substance' : substance._name;\n\n // this.gaService.sendEvent('substancesContent', 'link:structure-zoom', eventLabel);\n\n let data: any;\n\n // if (substance.substanceClass === 'chemical') {\n data = {\n structure: subUuid,\n // smiles: substance.structure.smiles,\n uuid: subUuid,\n // names: substance.names\n };\n // }\n\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\n height: '90%',\n width: '650px',\n panelClass: 'structure-image-panel',\n data: data\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n const subscription = dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n }, () => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n });\n }\n\n processSubstanceSearch(searchValue: string) {\n this.privateSearchTerm = searchValue;\n this.setSearchTermValue();\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { SafeUrl } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../core/utils/utils.service';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { ApplicationService } from '../service/application.service';\nimport { GeneralService } from '../../service/general.service';\n\n@Component({\n selector: 'app-application-details-base',\n templateUrl: './application-details-base.component.html',\n styleUrls: ['./application-details-base.component.scss']\n})\nexport class ApplicationDetailsBaseComponent implements OnInit {\n\n id: number;\n src: string;\n appType: string;\n appNumber: string;\n application: any;\n flagIconSrcPath: string;\n isAdmin = false;\n updateApplicationUrl: string;\n message = '';\n subscriptions: Array = [];\n\n constructor(\n public applicationService: ApplicationService,\n public generalService: GeneralService,\n public activatedRoute: ActivatedRoute,\n public loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private router: Router,\n private gaService: GoogleAnalyticsService,\n private utilsService: UtilsService,\n public titleService: Title\n // private authService: AuthService,\n ) { }\n\n ngOnInit() {\n this.loadingService.setLoading(true);\n if (this.id) {\n if (this.isNumber(this.id) === true) {\n this.getApplicationDetails();\n } else {\n this.message = 'The application Id in url should be a number';\n }\n } else if ((this.appType != null) && (this.appNumber != null)) {\n // get Application Id by Type and Number. To be done soon.\n } else {\n this.handleSubstanceRetrivalError();\n }\n this.loadingService.setLoading(false);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getApplicationDetails(): void {\n const appIdSubscription = this.applicationService.getApplicationById(this.id).subscribe(response => {\n this.application = response;\n if (Object.keys(this.application).length > 0) {\n this.titleService.setTitle(`Application ` + this.application.appType + ' ' + this.application.appNumber);\n // Get Substance by Substance Key\n this.getSubstanceBySubstanceKey();\n\n // Get Application History\n const appHistSubscription = this.applicationService.getApplicationHistory(this.id).subscribe(response => {\n this.application.applicationHistoryList = [];\n this.application.applicationHistoryList = response;\n });\n this.subscriptions.push(appHistSubscription);\n\n // Get Product Technical Effect\n const prodTechEffectSubscription = this.applicationService.getProductTechnicalEffect(this.id).subscribe(response => {\n this.application.productTechEffectList = [];\n this.application.productTechEffectList = response;\n });\n this.subscriptions.push(prodTechEffectSubscription);\n\n // Get Product Effected\n const prodEffectedSubscription = this.applicationService.getProductEffected(this.id).subscribe(response => {\n this.application.productEffectedList = [];\n this.application.productEffectedList = response;\n });\n this.subscriptions.push(prodEffectedSubscription);\n\n // Get Clinical Trial Application\n const clinicalSubscription = this.applicationService.getClinicalTrialApplication(this.id).subscribe(response => {\n this.application.clinicalTrialList = [];\n this.application.clinicalTrialList = response;\n });\n this.subscriptions.push(clinicalSubscription);\n }\n }, error => {\n // this.message = 'No Application record found';\n // this.handleSubstanceRetrivalError();\n });\n this.subscriptions.push(appIdSubscription);\n }\n\n getSubstanceBySubstanceKey() {\n if (this.application != null) {\n this.application.applicationProductList.forEach(elementProd => {\n if (elementProd != null) {\n elementProd.applicationIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n // Get Substance Details, uuid, approval_id, substance name\n if (elementIngred.substanceKey) {\n const ingSubscription = this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(response => {\n if (response) {\n elementIngred._substanceUuid = response.uuid;\n elementIngred._ingredientName = response._name;\n }\n });\n this.subscriptions.push(ingSubscription);\n }\n\n // Get Basis of Strength\n if (elementIngred.basisOfStrengthSubstanceKey) {\n const basisSubscription = this.generalService.getSubstanceByAnyId(elementIngred.basisOfStrengthSubstanceKey).subscribe(response => {\n if (response) {\n elementIngred._basisOfStrengthSubstanceUuid = response.uuid;\n elementIngred._basisOfStrengthIngredientName = response._name;\n }\n });\n this.subscriptions.push(basisSubscription);\n }\n }\n });\n }\n });\n }\n }\n\n isNumber(str: any): boolean {\n if (str) {\n const num = Number(str);\n const nan = isNaN(num);\n return !nan;\n }\n return false;\n }\n\n public handleSubstanceRetrivalError() {\n this.loadingService.setLoading(false);\n const notification: AppNotification = {\n message: 'The web address above is incorrect. You\\'re being forwarded to Browse Substances',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n // this.router.navigate(['/browse-substance']);\n }, 5000);\n\n }\n\n getSafeStructureImgUrl(structureId: string, size: number = 150): SafeUrl {\n return this.utilsService.getSafeStructureImgUrl(structureId, size, true);\n }\n}\n","
        \n



        \n {{message}}\n
        \n
        \n
        \n \n \n
        \n
        \n Application Details\n    \n \n \n \n \n \n \n \n
        \n\n
        \n Created By: {{application.createdBy}}   \n Create Date:\n {{application.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{application.modifiedBy}}   \n Modify Date: {{application.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
        \n
        \n
        \n\n \n\n
        \n
        \n
        \n Application Type and Number:\n
        \n
        \n {{application.appType}} {{application.appNumber}}\n
        \n
        \n
        \n
        \n Center:\n
        \n
        \n {{application.center}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Sponsor Name:\n
        \n
        \n {{application.sponsorName}}\n
        \n
        \n
        \n
        \n Non Proprietary Name:\n
        \n
        \n {{application.nonProprietaryName}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Title:\n
        \n
        \n {{application.title}}\n
        \n
        \n
        \n
        \n External Title:\n
        \n
        \n {{application.externalTitle}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Application Sub Type:\n
        \n
        \n {{application.appSubType}}\n
        \n
        \n
        \n
        \n Division Class Desc:\n
        \n
        \n {{application.divisionClassDesc}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Application Status:\n
        \n
        \n {{application.status}}\n
        \n
        \n
        \n
        \n Submit Date:\n
        \n
        \n {{application.submitDate}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Provenance:\n
        \n
        \n {{application.provenance}}\n
        \n
        \n
        \n
        \n Status Date:\n
        \n
        \n {{application.statusDate}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Public Domain:\n
        \n
        \n {{application.publicDomain}}\n
        \n
        \n \n
        \n\n
        \n
        \n
        \n Indications:\n
        \n
        \n
        \n \n • {{ind.indication}}
        \n
        \n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n Clinical Trials:\n
        \n
        \n
        0\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        #NCT NumberClinical Trials Gov WebsiteTitle
        {{(i+1)}}\n {{clinical.trialNumber}}\n \n \n {{ clinical.url }}\n \n {{ clinical.title }}\n
        \n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n\n \n
        0\">\n
        \n \n \n Application History ({{application.applicationHistoryList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        Product NameSponsor NameStatusStatus DateCreate Date
        {{ ingred.productName }}{{ ingred.sponsorName }}{{ ingred.status }}{{ ingred.statusDate|date: 'MM/dd/yyyy' }}{{ ingred.createDate|date: 'MM/dd/yyyy' }}
        \n
        \n
        \n
        \n \n\n \n
        0\">\n
        \n \n \n Technical Effect ({{application.productTechEffectList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n
        Technical Effect
        {{ ingred.technicalEffect }}
        \n
        \n
        \n
        \n \n\n \n
        0\">\n
        \n \n \n Effected Product ({{application.productEffectedList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n
        Effected Product
        {{ ingred.effectedProduct }}
        \n
        \n
        \n
        \n \n\n
        \n
        \n \n \n
        \n
        \n Product {{i + 1}}\n
        \n\n \n
        0; else noRecordProdName\">\n
        \n
        \n
        \n Product Name:\n
        \n
        \n {{prodName.productName}}\n
        \n
        \n
        \n
        \n Product Name Type:\n
        \n
        \n {{prodName.productNameType}}\n
        \n
        \n
        \n
        \n \n
        \n
        \n
        \n Product Name:\n
        \n
        \n
        \n
        \n
        \n
        \n Product Name Type:\n
        \n
        \n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n Dosage Form:\n
        \n
        \n {{prod.dosageForm}}\n
        \n
        \n
        \n
        \n Route of Administration:\n
        \n
        \n {{prod.routeAdmin}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Amount:\n
        \n
        \n {{prod.amount}}\n
        \n
        \n
        \n
        \n Unit of Presentation:\n
        \n
        \n {{prod.unitPresentation}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Unit:\n
        \n
        \n {{prod.unit}}\n
        \n
        \n
        \n
        \n Reviewed By:\n
        \n
        \n {{prod.reviewedBy}} {{prod.reviewDate|date: 'MM/dd/yyyy hh:mm:ss a' }}\n
        \n
        \n
        \n\n \n \n \n Substances in Application ({{prod.applicationIngredientList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n
        Applicant Ingredient NameIngredient NameBasis Of StrengthIngredient TypeAverageLowHighLow LimitHigh LimitUnitNon Numeric ValueGradeReviewed By
        {{ ingred.applicantIngredName }}\n \n \n \n \n \n {{ ingred.ingredientType }}{{ ingred.average }}{{ ingred.low }}{{ ingred.high }}{{ ingred.lowLimit }}{{ ingred.highLimit }}{{ ingred.unit }}{{ ingred.nonNumericValue }}{{ ingred.grade }}{{ ingred.reviewedBy }}  {{ ingred.reviewDate|date: 'MM/dd/yyyy hh:mm:ss a' }}
        \n
        \n
        \n \n\n

        \n
        \n
        \n
        \n
        \n\n
        \n\n



        ","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { Title } from '@angular/platform-browser';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../../core/utils/utils.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ApplicationDetailsBaseComponent } from '../application-details-base.component';\nimport { ApplicationService } from '../../service/application.service';\nimport { GeneralService } from '../../../service/general.service';\n\n@Component({\n selector: 'app-application-details',\n templateUrl: './application-details.component.html',\n styleUrls: ['./application-details.component.scss']\n})\n\nexport class ApplicationDetailsComponent extends ApplicationDetailsBaseComponent implements OnInit {\n\n constructor(\n applicationService: ApplicationService,\n public generalService: GeneralService,\n public activatedRoute: ActivatedRoute,\n loadingService: LoadingService,\n mainNotificationService: MainNotificationService,\n router: Router,\n gaService: GoogleAnalyticsService,\n utilsService: UtilsService,\n public authService: AuthService,\n titleService: Title\n ) {\n super(applicationService, generalService, activatedRoute, loadingService, mainNotificationService, router, gaService, utilsService, titleService);\n }\n\n ngOnInit() {\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n\n this.id = this.activatedRoute.snapshot.params['id'];\n this.appType = this.activatedRoute.snapshot.params['appType'];\n this.appNumber = this.activatedRoute.snapshot.params['appNumber'];\n super.ngOnInit();\n\n }\n\n}\n","
        \n



        \n {{message}}\n
        \n
        \n
        \n
        \n \n \n Application Details (Darrts)\n \n\n \n\n
        \n
        \n
        \n Product Name:\n
        \n
        \n {{application.productName}}\n
        \n
        \n
        \n
        \n Application Type Number:\n
        \n
        \n {{application.appType}} {{application.appNumber}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Sponsor Name:\n
        \n
        \n {{application.sponsorName}}\n
        \n
        \n
        \n
        \n Dosage Form Desc:\n
        \n
        \n {{application.dosageFormDesc}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Application Status:\n
        \n
        \n {{application.status}}\n
        \n
        \n
        \n
        \n Status Date:\n
        \n
        \n {{application.statusDate |date: 'MM/dd/yyyy'}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Division Class Number:\n
        \n
        \n {{application.divisionClass}}\n
        \n
        \n
        \n
        \n Division Class Desc:\n
        \n
        \n {{application.divisionClassDesc}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Application Sub Type Desc:\n
        \n
        \n {{application.appSubTypeDesc}}\n
        \n
        \n
        \n
        \n Route of Administration:\n
        \n
        \n {{application.routeOfAdmin}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Indication:\n
        \n
        \n
        \n • {{ind.indication}}
        \n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n\n
        \n \n \n Substances in Application ({{application.ingredientList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        #Product NoPart NoSubstance NameStructureSubstance KeyUniiActivityPotencyParent BdnumParent Substance Name
        {{ i+1 }}{{ x.productNo }}{{ x.partNo }}\n
        \n \n \n {{x._ingredientname}}\n \n
        \n
        \n
        \n \n
        \n
        {{ x.substanceKey }}{{ x._approvalID }}{{ x.activity }}{{ x.potency }}{{ x._parentSubstanceKey }}{{ x._parentDisplayTerm }}
        \n
        \n
        \n
        \n
        \n \n
        ","import { Component, OnInit } from '@angular/core';\nimport { ApplicationService } from '../../service/application.service';\nimport { GeneralService } from '../../../service/general.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { Title } from '@angular/platform-browser';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../../core/utils/utils.service';\n// import { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ApplicationDetailsBaseComponent } from '../application-details-base.component';\nimport { element } from 'protractor';\n\n@Component({\n selector: 'app-application-darrts-details',\n templateUrl: './application-darrts-details.component.html',\n styleUrls: ['./application-darrts-details.component.scss']\n})\n\nexport class ApplicationDarrtsDetailsComponent extends ApplicationDetailsBaseComponent implements OnInit {\n\n constructor(\n public applicationService: ApplicationService,\n public generalService: GeneralService,\n activatedRoute: ActivatedRoute,\n loadingService: LoadingService,\n mainNotificationService: MainNotificationService,\n router: Router,\n gaService: GoogleAnalyticsService,\n utilsService: UtilsService,\n titleService: Title\n // authService: AuthService,\n ) {\n super(applicationService, generalService, activatedRoute, loadingService, mainNotificationService, router, gaService, utilsService, titleService);\n // , authService);\n }\n\n ngOnInit() {\n this.appType = this.activatedRoute.snapshot.params['appType'];\n this.appNumber = this.activatedRoute.snapshot.params['appNumber'];\n this.loadingService.setLoading(true);\n\n if ((this.appType != null) && (this.appNumber != null)) {\n this.getApplicationDarrtsDetails();\n } else {\n this.handleSubstanceRetrivalError();\n }\n }\n\n getApplicationDarrtsDetails(): void {\n const appDarrtsSubscription = this.applicationService.getApplicationDarrtsDetails(this.appType, this.appNumber).subscribe(response => {\n this.application = response;\n if (response) {\n this.titleService.setTitle(`Application ` + this.application.appType + ' ' + this.application.appNumber);\n this.getSubstanceBySubstanceKey();\n }\n this.loadingService.setLoading(false);\n }, error => {\n // this.handleSubstanceRetrivalError();\n this.message = 'No Application (Darrts) record found';\n this.loadingService.setLoading(false);\n });\n this.subscriptions.push(appDarrtsSubscription);\n\n }\n\n getSubstanceBySubstanceKey() {\n if (this.application != null) {\n this.application.ingredientList.forEach(elementIngred => {\n\n if (elementIngred != null) {\n // Get Substance Details, uuid, approval_id, substance name\n if (elementIngred.substanceKey) {\n const subSubscription = this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(response => {\n if (response) {\n elementIngred._substanceUuid = response.uuid;\n elementIngred._ingredientname = response._name;\n elementIngred._approvalID = response._approvalIDDisplay;\n }\n });\n this.subscriptions.push(subSubscription);\n\n\n // Get Substance Key Parent Concept\n const conceptSubscription = this.applicationService.getSubstanceParentConcept(elementIngred.substanceKey).subscribe(response => {\n if (response) {\n elementIngred._parentSubstanceKey = response.parentSubstanceKey;\n elementIngred._parentDisplayTerm = response.parentDisplayTerm;\n }\n });\n this.subscriptions.push(conceptSubscription);\n\n }\n }\n });\n }\n }\n\n}\n","
        \n

        JSON Object structure

        \n
        \n  \n \n \n \n Export JSON\n \n
        \n
        \n\n
        \n
        \n \n
        \n
        \n \n
        \n
        \n\n
        \n \n\n \n
        ","import { Component, Inject, OnInit, Input } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { NgxJsonViewerModule } from 'ngx-json-viewer';\n\n@Component({\n selector: 'app-json-fda-dialog',\n templateUrl: './json-dialog-fda.component.html',\n styleUrls: ['./json-dialog-fda.component.scss']\n})\nexport class JsonDialogFdaComponent implements OnInit {\n\n // @Input() json: any;\n\n public dialogRef: MatDialogRef;\n public json: any;\n expand = true;\n raw = false;\n downloadJsonHref: any;\n\n constructor(\n private sanitizer: DomSanitizer,\n // private dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n\n ) { }\n\n ngOnInit() {\n this.json = this.data;\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' + encodeURIComponent(JSON.stringify(this.json)));\n this.downloadJsonHref = uri;\n }\n\n close() {\n this.dialogRef.close();\n }\n\n dismissDialog(): void {\n this.dialogRef.close();\n }\n\n}\n","
        \n
        \n \n \n \n \n \n \n    \n    \n \n \n \n View Application\n    \n \n    \n \n \n \n\n \n  \n \n      \n \n
        \n\n \n
        \n
        \n {{submissionMessage}}\n
        \n\n \n
        \n 0\">\n
        \n Please correct or dismiss the following errors and submit again:\n
        \n
        \n
        \n {{message.messageType}}
        \n
        {{message.message}}
        {{link.text}}
        \n \n
        \n
        \n\n
        \n \n \n
        \n\n
        \n\n
        \n
        \n\n\n\n
        \n
        \n
        \n\n
        \n
        \n
        \n {{title}}\n
        \n\n
        \n
        \n \n Provenance: DARRTS (some fields are non-editable)\n \n
        \n
        \n
        \n Created By: {{application.createdBy}}   \n Create Date: {{application.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{application.modifiedBy}}   \n Modify Date: {{application.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
        \n
        \n
        \n\n \n \n\n
        \n \n \n\n \n \n \n\n \n \n \n\n \n \n\n \n \n {{submitDateMessage}}\n \n\n \n\n \n\n \n \n {{statusDateMessage}}\n \n
        \n\n\n
        \n\n \n \n\n \n \n \n \n\n \n \n\n \n \n \n\n
        \n\n\n
        \n \n \n \n
        \n\n\n \n\n
        \n \n \n \n
        \n\n\n
        \n \n \n \n
        \n\n \n
        \n
        \n \n \n \n\n \n \n \n \n \n \n
        \n
        \n
        \n\n \n \n\n
        \n\n
        \n
        \n
        \n
        \n
        \n
        \n\n
        \n
        ","import { Component, OnInit, AfterViewInit, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { ApplicationService } from '../service/application.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ControlledVocabularyService } from '../../../core/controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../core/controlled-vocabulary/vocabulary.model';\nimport { Application, ValidationMessage } from '../model/application.model';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { take } from 'rxjs/operators';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { JsonDialogFdaComponent } from '../../json-dialog-fda/json-dialog-fda.component';\nimport { ConfirmDialogComponent } from '../../confirm-dialog/confirm-dialog.component';\nimport { finalize } from 'rxjs/operators';\nimport { CvInputComponent } from '@gsrs-core/substance-form/cv-input/cv-input.component';\nimport { anyExistsFilter } from '@gsrs-core/substance-details';\nimport { DatePipe } from '@angular/common';\nimport { MatDatepickerInputEvent } from '@angular/material/datepicker';\nimport { FormBuilder } from '@angular/forms';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { NativeDateAdapter, DateAdapter, MAT_NATIVE_DATE_FORMATS } from '@angular/material/core';\nimport { element } from 'protractor';\nimport { GeneralService } from '../../service/general.service';\n\n@Component({\n selector: 'app-application-form',\n templateUrl: './application-form.component.html',\n styleUrls: ['./application-form.component.scss'],\n // encapsulation: ViewEncapsulation.None\n})\n\nexport class ApplicationFormComponent implements OnInit, AfterViewInit, OnDestroy {\n\n application: Application;\n /*\n centerList: Array = [];\n appTypeList: Array = [];\n appStatusList: Array = [];\n publicDomainList: Array = [];\n appSubTypeList: Array = [];\n*/\n\n id?: number;\n isLoading = true;\n showSubmissionMessages = false;\n submissionMessage: string;\n validationMessages: Array = [];\n validationResult = false;\n private subscriptions: Array = [];\n copy: string;\n private overlayContainer: HTMLElement;\n serverError: boolean;\n isDisableData = false;\n username = null;\n title = null;\n submitDateMessage = '';\n statusDateMessage = '';\n appForm: FormGroup;\n isAdmin = false;\n\n constructor(\n private applicationService: ApplicationService,\n private generalService: GeneralService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private gaService: GoogleAnalyticsService,\n private utilsService: UtilsService,\n private cvService: ControlledVocabularyService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog,\n private fb: FormBuilder,\n private titleService: Title) { }\n\n // get submitDateControl() { return this.appForm.get('submitDateControl'); }\n\n ngOnInit() {\n // this.generateFormContorls();\n this.isAdmin = this.authService.hasRoles('admin');\n this.loadingService.setLoading(true);\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.username = this.authService.getUser();\n const routeSubscription = this.activatedRoute\n .params\n .subscribe(params => {\n if (params['id']) {\n const id = params['id'];\n this.title = 'Update Application';\n if (id !== this.id) {\n this.id = id;\n this.gaService.sendPageView(`Application Edit`);\n this.getApplicationDetails();\n }\n } else {\n this.title = 'Register New Application';\n setTimeout(() => {\n this.gaService.sendPageView(`Application Register`);\n this.titleService.setTitle(`Register Application`);\n this.applicationService.loadApplication();\n this.application = this.applicationService.application;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }\n }, error => {\n this.loadingService.setLoading(false);\n });\n this.subscriptions.push(routeSubscription);\n }\n\n ngAfterViewInit(): void {\n }\n\n ngOnDestroy(): void {\n // this.applicationService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getApplicationDetails(newType?: string): void {\n this.applicationService.getApplicationById(this.id).subscribe(response => {\n if (response) {\n this.applicationService.loadApplication(response);\n this.application = this.applicationService.application;\n\n // Check if Data is from external source, and Disable some fields.\n if (this.application) {\n this.titleService.setTitle(`Edit Application ` + this.application.appType + ' ' + this.application.appNumber);\n if (this.application.provenance) {\n if (this.application.provenance.toLowerCase() === 'darrts') {\n this.isDisableData = true;\n }\n }\n }\n } else {\n this.handleApplicationRetrivalError();\n }\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }, error => {\n this.gaService.sendException('getApplicationDetails: error from API call');\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.handleApplicationRetrivalError();\n });\n }\n\n validate(validationType?: string): void {\n this.isLoading = true;\n this.serverError = false;\n this.loadingService.setLoading(true);\n\n this.validateClient();\n // If there is no error on client side, check validation on server side\n if (this.validationMessages.length === 0) {\n this.applicationService.validateApplication().pipe(take(1)).subscribe(results => {\n this.submissionMessage = null;\n this.validationMessages = results.validationMessages.filter(\n message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.validationResult = results.valid;\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n if (this.validationMessages.length === 0 && this.validationResult === true) {\n this.submissionMessage = 'Application is Valid. Would you like to submit?';\n }\n }, error => {\n this.addServerError(error);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }\n }\n\n setValidationMessage(message: string) {\n const validate: ValidationMessage = {};\n validate.message = message;\n validate.messageType = 'ERROR';\n this.validationMessages.push(validate);\n this.validationResult = false;\n }\n\n // Validate data in client side first\n validateClient(): void {\n this.submissionMessage = null;\n this.validationMessages = [];\n this.validationResult = true;\n\n // Validate Center in application\n if ((this.application.center == null) || (this.application.center != null && this.application.center.length < 1)) {\n this.setValidationMessage('Center is required');\n }\n\n // Validate Application Type in application\n if ((this.application.appType == null) || (this.application.appType != null && this.application.appType.length < 1)) {\n this.setValidationMessage('Application Type is required');\n }\n\n // Validate Application Number in application\n if ((this.application.appNumber == null) || (this.application.appNumber != null && this.application.appNumber.length < 1)) {\n this.setValidationMessage('Application Number is required');\n }\n\n // Validate Submit Date in application\n if ((this.submitDateMessage !== null) && (this.submitDateMessage.length > 0)) {\n this.setValidationMessage(this.submitDateMessage);\n }\n\n // Validate Status Date in application\n if ((this.statusDateMessage !== null) && (this.statusDateMessage.length > 0)) {\n this.setValidationMessage(this.statusDateMessage);\n }\n\n // Validate Product Amount, which should be integer/number\n if (this.application != null) {\n this.application.applicationProductList.forEach(elementProd => {\n if (elementProd != null) {\n if (elementProd.amount) {\n if (this.isNumber(elementProd.amount) === false) {\n this.setValidationMessage('Amount must be a number');\n }\n }\n\n // Validate Ingredient Average, Low, High, LowLimit, HighLimit should be integer/number\n elementProd.applicationIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n if (elementIngred.average) {\n if (this.isNumber(elementIngred.average) === false) {\n this.setValidationMessage('Average must be a number');\n }\n }\n if (elementIngred.low) {\n if (this.isNumber(elementIngred.low) === false) {\n this.setValidationMessage('Low must be a number');\n }\n }\n if (elementIngred.high) {\n if (this.isNumber(elementIngred.high) === false) {\n this.setValidationMessage('High must be a number');\n }\n }\n if (elementIngred.lowLimit) {\n if (this.isNumber(elementIngred.lowLimit) === false) {\n this.setValidationMessage('Low Limit must be a number');\n }\n }\n if (elementIngred.highLimit) {\n if (this.isNumber(elementIngred.highLimit) === false) {\n this.setValidationMessage('High Limit must be a number');\n }\n }\n // Ingredient Name Validation\n if (elementIngred.$$ingredientNameValidation) {\n this.setValidationMessage(elementIngred.$$ingredientNameValidation);\n }\n // Basis of Strength Validation\n if (elementIngred.$$basisOfStrengthValidation) {\n this.setValidationMessage(elementIngred.$$basisOfStrengthValidation);\n }\n }\n });\n\n }\n });\n }\n\n if (this.validationMessages.length > 0) {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }\n }\n\n toggleValidation(): void {\n this.showSubmissionMessages = !this.showSubmissionMessages;\n }\n\n addServerError(error: any): void {\n this.serverError = true;\n this.validationResult = false;\n this.validationMessages = null;\n\n const message: ValidationMessage = {\n actionType: 'server failure',\n links: [],\n appliedChange: false,\n suggestedChange: false,\n messageType: 'ERROR',\n message: 'Unknown Server Error'\n };\n if (error && error.error && error.error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || ': ') + error.error.message;\n } else if (error && error.error && (typeof error.error) === 'string') {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.error;\n } else if (error && error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.message;\n }\n this.validationMessages = [message];\n this.showSubmissionMessages = true;\n }\n\n submit(): void {\n this.isLoading = true;\n this.loadingService.setLoading(true);\n // remove non-field form property/field/key from Application object\n this.application = this.cleanApplication();\n if (this.application) {\n if (this.application.id) {\n } else {\n if (this.application.provenance === null || this.application.provenance === undefined) {\n // Set Provenance to GSRS\n this.application.provenance = 'GSRS';\n }\n }\n }\n this.applicationService.saveApplication().subscribe(response => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.validationMessages = null;\n this.submissionMessage = 'Application was saved successfully!';\n this.showSubmissionMessages = true;\n this.validationResult = false;\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = '';\n if (response.id) {\n this.applicationService.bypassUpdateCheck();\n const id = response.id;\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigate(['/application', id, 'edit']);\n }\n }, 4000);\n }, error => {\n this.loadingService.setLoading(false);\n }\n /*\n , (error: SubstanceFormResults) => {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.submissionMessage = null;\n if (error.validationMessages && error.validationMessages.length) {\n this.validationResult = error.isSuccessfull;\n this.validationMessages = error.validationMessages\n .filter(message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.showSubmissionMessages = true;\n } else {\n this.submissionMessage = 'There was a problem with your submission';\n this.addServerError(error.serverError);\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = null;\n }, 8000);\n }\n }*/\n\n );\n\n }\n\n private handleApplicationRetrivalError() {\n const notification: AppNotification = {\n message: 'The application you\\'re trying to edit doesn\\'t exist.',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/application/register']);\n this.applicationService.loadApplication();\n }, 5000);\n }\n\n getVocabularies(): void {\n /* this.cvService.getDomainVocabulary('CENTER', 'APPLICATION_TYPE',\n 'APPLICATION_STATUS', 'PUBLIC_DOMAIN', 'APPLICATION_SUB_TYPE').subscribe(response => {\n this.centerList = response['CENTER'].list;\n this.appTypeList = response['APPLICATION_TYPE'].list;\n this.appStatusList = response['APPLICATION_STATUS'].list;\n this.publicDomainList = response['PUBLIC_DOMAIN'].list;\n this.appSubTypeList = response['APPLICATION_SUB_TYPE'].list;\n });\n */\n }\n\n confirmDeleteApplication() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete this Application?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteApplication();\n }\n });\n }\n\n deleteApplication(): void {\n this.applicationService.deleteApplication().subscribe(response => {\n this.applicationService.bypassUpdateCheck();\n this.displayMessageAfterDeleteApp();\n }, (err) => {\n console.log(err);\n }\n );\n }\n\n displayMessageAfterDeleteApp() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: {\n message: 'This application record was deleted successfully',\n type: 'home'\n }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n this.router.navigate(['/home']);\n });\n }\n\n cleanApplication(): Application {\n let applicationStr = JSON.stringify(this.application);\n let applicationCopy: Application = JSON.parse(applicationStr);\n applicationCopy.applicationProductList.forEach(elementProd => {\n if (elementProd != null) {\n elementProd.applicationIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n // remove property for Ingredient Name Validation. Do not need in the form JSON\n if (elementIngred.$$ingredientNameValidation || elementIngred.$$ingredientNameValidation === \"\") {\n delete elementIngred.$$ingredientNameValidation;\n }\n // remove property for Basis of Strength Validation. Do not need in the form JSON\n if (elementIngred.$$basisOfStrengthValidation || elementIngred.$$basisOfStrengthValidation === \"\") {\n delete elementIngred.$$basisOfStrengthValidation;\n }\n }\n });\n }\n });\n return applicationCopy;\n }\n\n showJSON(): void {\n let cleanApplication = this.cleanApplication();\n const dialogRef = this.dialog.open(JsonDialogFdaComponent, {\n width: '90%',\n height: '90%',\n data: cleanApplication\n });\n\n // this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n addNewIndication() {\n this.applicationService.addNewIndication();\n }\n\n confirmDeleteIndication(indIndex: number, indication: string) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Indication (' + (indIndex + 1) + ')?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteIndication(indIndex);\n }\n });\n }\n\n deleteIndication(indIndex: number) {\n this.applicationService.deleteIndication(indIndex);\n }\n\n validateSubmitDate() {\n this.submitDateMessage = '';\n const isValid = this.validateDate(this.application.submitDate);\n if (isValid === false) {\n this.submitDateMessage = 'Submit Date is invalid';\n } else {\n const isValid = this.validateSubmitDateWithStatusDate(this.application.submitDate, this.application.statusDate);\n if (isValid === false) {\n this.submitDateMessage = 'Submit Date should be earlier than Status Date;';\n }\n }\n }\n\n validateStatusDate() {\n this.statusDateMessage = '';\n let isValid = this.validateDate(this.application.statusDate);\n if (isValid === false) {\n this.statusDateMessage = 'Status Date is invalid';\n } else {\n isValid = this.validateFutureDate(this.application.statusDate);\n if (isValid === false) {\n this.statusDateMessage = 'Status Date should not be a future date';\n } else {\n isValid = this.validateSubmitDateWithStatusDate(this.application.submitDate, this.application.statusDate);\n if (isValid === false) {\n this.submitDateMessage = 'Submit Date should be earlier than Status Date;';\n }\n }\n }\n }\n\n validateFutureDate(dateinput: any): boolean {\n let isValid = true;\n // compare if the entered date is future date or not\n const now = new Date();\n const nowDate = now.setHours(0, 0, 0);\n if ((dateinput !== null) && (dateinput.length > 0)) {\n if ((dateinput.length >= 8) || (dateinput.length <= 10)) {\n const enteredDate = new Date(dateinput);\n const enteredDateOnly = enteredDate.setHours(0, 0, 0);\n if (enteredDateOnly > nowDate) {\n isValid = false;\n }\n }\n }\n return isValid;\n }\n\n validateSubmitDateWithStatusDate(submitDateInput: any, statusDateInput: any): boolean {\n let isValid = true;\n // Submit Date should not be later than Status Date.\n if ((submitDateInput) && (statusDateInput)) {\n const submitDt = new Date(submitDateInput).setHours(0, 0, 0);\n const statusDt = new Date(statusDateInput).setHours(0, 0, 0);\n if (submitDt > statusDt) {\n isValid = false;\n }\n }\n return isValid;\n }\n\n validateDate(dateinput: any): boolean {\n let isValid = true;\n if ((dateinput !== null) && (dateinput.length > 0)) {\n if ((dateinput.length < 8) || (dateinput.length > 10)) {\n return false;\n }\n const split = dateinput.split('/');\n if (split.length !== 3 || (split[0].length < 1 || split[0].length > 2) ||\n (split[1].length < 1 || split[1].length > 2) || split[2].length !== 4) {\n return false;\n }\n if (split.length === 3) {\n const comstring = split[0] + split[1] + split[2];\n for (let i = 0; i < split.length; i++) {\n const valid = this.isNumber(split[i]);\n if (valid === false) {\n isValid = false;\n break;\n }\n }\n }\n }\n return isValid;\n }\n\n isNumber(str: any): boolean {\n if (str) {\n const num = Number(str);\n const nan = isNaN(num);\n return !nan;\n }\n return false;\n }\n\n convertDateFormat(formDate: any): any {\n if (formDate !== null) {\n const datepipe = new DatePipe('en-US');\n const date = new Date(formDate);\n const formattedDate = datepipe.transform(date, 'MM/dd/yyyy');\n return formattedDate;\n }\n }\n}\n","
        \n
        \n
        \n
        \n \n \n PRODUCT\n \n           \n \n

        \n\n
        \n\n \n
        \n \n   \n \n   \n \n Reviewed\n By:{{product.reviewedBy}} {{product.reviewDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n \n
        \n\n\n \n
        \n Product Details {{prodIndex + 1}}\n \n\n \n\n
        \n\n
        \n \n \n \n\n \n \n\n   \n \n \n \n \n
        \n\n
        \n\n
        \n \n \n\n \n
        \n \n \n
        \n\n \n\n \n \n\n \n \n \n\n \n \n
        \n\n \n
        \n
        \n
        \n \n INGREDIENT\n \n\n \n           \n \n\n
        \n \n \n
        \n \n\n
        \n


        \n
        \n\n
        ","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { Application } from '../../model/application.model';\nimport { ControlledVocabularyService } from '../../../../core/controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../../core/controlled-vocabulary/vocabulary.model';\nimport { ApplicationService } from '../../service/application.service';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { GeneralService } from 'src/app/fda/service/general.service';\n\n@Component({\n selector: 'app-application-product-form',\n templateUrl: './application-product-form.component.html',\n styleUrls: ['./application-product-form.component.scss']\n})\nexport class ApplicationProductFormComponent implements OnInit {\n @Input() application: Application;\n reviewProductMessage: Array = [];\n productMessage = '';\n username = null;\n\n constructor(\n private applicationService: ApplicationService,\n public cvService: ControlledVocabularyService,\n private authService: AuthService,\n private generalService: GeneralService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n this.username = this.authService.getUser();\n }\n\n addNewProduct() {\n this.applicationService.addNewProduct();\n }\n\n addNewProductName(prodIndex: number) {\n this.applicationService.addNewProductName(prodIndex);\n }\n\n confirmDeleteProduct(prodIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Product Details ' + (prodIndex + 1) + ' data?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProduct(prodIndex);\n }\n });\n }\n\n deleteProduct(prodIndex: number) {\n this.applicationService.deleteProduct(prodIndex);\n }\n\n confirmDeleteProductName(prodIndex: number, prodNameIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Product Name ' + (prodNameIndex + 1) + ' ?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductName(prodIndex, prodNameIndex);\n }\n });\n }\n\n deleteProductName(prodIndex: number, prodNameIndex: number) {\n this.applicationService.deleteProductName(prodIndex, prodNameIndex);\n }\n\n copyProduct(product: any) {\n this.applicationService.copyProduct(product);\n }\n\n confirmReviewProduct(prodIndex: number) {\n if (this.application.applicationProductList[prodIndex].reviewDate) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to overwrite Reviewed By and Review Date?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.reviewProduct(prodIndex);\n }\n });\n } else {\n this.reviewProduct(prodIndex);\n }\n }\n\n reviewProduct(prodIndex: number) {\n const currentDate = this.generalService.getCurrentDate();\n this.application.applicationProductList[prodIndex].reviewDate = currentDate;\n this.application.applicationProductList[prodIndex].reviewedBy = this.username;\n }\n\n addNewIngredient(prodIndex: number) {\n this.applicationService.addNewIngredient(prodIndex);\n }\n\n /*\n loadRouteAdmin() {\n this.application.applicationProductList.forEach((elementProd, prodIndex) => {\n if (elementProd != null) {\n if (elementProd.routeAdmin) {\n }\n }\n });\n }\n */\n\n updateRouteAdmin(routeAdmins: Array, prodIndex: number): void {\n this.application.applicationProductList[prodIndex].routeAdmin = routeAdmins.toString();\n }\n\n}\n","\n
        \n \n   \n \n   \n \n Reviewed\n By: {{ingredient.reviewedBy}} {{ingredient.reviewDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n \n\n    \n \n \n Created By: {{ingredient.createdBy}}   \n {{ingredient.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{ingredient.modifiedBy}}   \n {{ingredient.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n \n \n
        \n\n\n
        \n Ingredient Details {{ingredIndex + 1}}\n\n
        \n \n \n \n\n \n
        \n
        \n \n \n\n
        \n {{ingredientNameMessage}}\n
        \n\n \n
        \n
        \n {{ingredientName}}\n
        \n \n
        \n {{active}} (Active Moiety)\n
        \n
        \n
        \n {{ingredient.substanceKey}}\n ({{ingredient.substanceKeyType}})\n
        \n \n
        \n
        \n\n
        \n
        \n\n \n
        \n
        \n \n \n\n\n
        \n {{basisOfStrengthMessage}}\n
        \n\n
        \n
        \n {{basisOfStrengthIngredientName}}\n
        \n \n
        \n {{active}} (Active Moiety)\n
        \n
        \n\n
        \n {{ingredient.basisOfStrengthSubstanceKey}}\n ({{ingredient.basisOfStrengthSubstanceKeyType}})\n
        \n \n
        \n
        \n\n
        \n
        \n\n \n \n
        \n\n\n
        \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n\n \n \n \n
        \n\n
        \n
        ","import { Component, OnInit, Input, Output, OnDestroy, EventEmitter, ViewChild } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { ApplicationIngredient } from '../../model/application.model';\nimport { ControlledVocabularyService } from '../../../../core/controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../../core/controlled-vocabulary/vocabulary.model';\nimport { ApplicationService } from '../../service/application.service';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\nimport { SubstanceRelated, SubstanceSummary } from '@gsrs-core/substance';\nimport { SubstanceSearchSelectorComponent } from '../../../substance-search-select/substance-search-selector.component';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ConfigService } from '@gsrs-core/config/config.service';\nimport { GsrsModule } from '@gsrs-core/gsrs.module';\nimport { GeneralService } from 'src/app/fda/service/general.service';\n\n@Component({\n selector: 'app-ingredient-form',\n templateUrl: './ingredient-form.component.html',\n styleUrls: ['./ingredient-form.component.scss']\n})\nexport class IngredientFormComponent implements OnInit, OnDestroy {\n @Input() ingredient: ApplicationIngredient;\n @Input() prodIndex: number;\n @Input() ingredIndex: number;\n @Input() totalIngredient: number;\n\n substanceUuid: string;\n ingredientName: string;\n ingredientNameSubstanceUuid: string;\n ingredientNameBdnumOld: string;\n basisofStrengthBdnumOld: string;\n ingredientNameMessage = '';\n basisOfStrengthIngredientName: string;\n basisOfStrengthSubstanceUuid: string;\n basisOfStrengthMessage = '';\n relationship: any;\n ingredientNameActiveMoiety = new Array();\n basisOfStrengthActiveMoiety = new Array();\n username = null;\n substanceConfig: any;\n substanceKeyTypeConfig: string;\n searchValue: string;\n private subscriptions: Array = [];\n\n constructor(\n private authService: AuthService,\n private configService: ConfigService,\n public cvService: ControlledVocabularyService,\n private applicationService: ApplicationService,\n private generalService: GeneralService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n setTimeout(() => {\n this.username = this.authService.getUser();\n\n // Get Substance Linking Key Details from Config file\n // this.substanceConfig = this.configService.configData.substance;\n // if (this.substanceConfig.linking.keyType.default) {\n // this.substanceKeyType = this.substanceConfig.linking.keyType.default;\n // }\n\n // Save the old or current Substance Key and Basis of Strength. Keeping track when deleting the name.\n this.ingredientNameBdnumOld = this.ingredient.substanceKey;\n this.basisofStrengthBdnumOld = this.ingredient.basisOfStrengthSubstanceKey;\n\n // Get Substance Linking Key Type from Config\n this.substanceKeyTypeConfig = this.generalService.getSubstanceKeyType();\n if (!this.substanceKeyTypeConfig) {\n alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add \"Ingredient Name\" and \"Basis of Strength\" into the database.');\n }\n // this.getSubstanceId(this.ingredient.bdnum, 'ingredientname');\n // this.getSubstanceId(this.ingredient.basisOfStrengthBdnum, 'basisofstrength');\n\n this.getSubstanceBySubstanceKey();\n }, 600);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n addNewIngredient(prodIndex: number) {\n this.applicationService.addNewIngredient(prodIndex);\n }\n\n confirmDeleteIngredient(prodIndex: number, ingredIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Ingredient Details ' + (ingredIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteIngredient(prodIndex, ingredIndex);\n }\n });\n }\n\n deleteIngredient(prodIndex: number, ingredIndex: number) {\n this.applicationService.deleteIngredient(prodIndex, ingredIndex);\n }\n\n copyIngredient(ingredient: any, prodIndex) {\n this.applicationService.copyIngredient(ingredient, prodIndex);\n }\n\n confirmReviewIngredient() {\n if (this.ingredient.reviewDate) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to overwrite Reviewed By and Review Date?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.reviewIngredient();\n }\n });\n } else {\n this.reviewIngredient();\n }\n }\n\n reviewIngredient() {\n const currentDate = this.generalService.getCurrentDate();\n this.ingredient.reviewDate = currentDate;\n this.ingredient.reviewedBy = this.username;\n }\n\n confirmDeleteIngredientName(ingredIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Ingredient Name ' + (ingredIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteIngredientName();\n }\n });\n }\n\n deleteIngredientName() {\n this.ingredientNameMessage = '';\n if (this.ingredient.id != null) {\n // Display this message if deleting existing Ingredient Name which is in database.\n if (this.ingredientNameBdnumOld != null) {\n this.ingredientNameMessage = 'Click Validate and Submit button to delete ' + this.ingredientName;\n }\n }\n this.ingredientNameSubstanceUuid = null;\n this.ingredientName = null;\n this.ingredient.substanceKey = null;\n this.ingredient.substanceKeyType = null;\n }\n\n confirmDeleteBasisOfStrength(ingredIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Basis of Strength ' + (ingredIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteBasisOfStrength();\n }\n });\n }\n\n deleteBasisOfStrength() {\n this.basisOfStrengthMessage = '';\n if (this.ingredient.id != null) {\n // Display this message if deleting existing Basis of Strength which is in database.\n if (this.basisofStrengthBdnumOld != null) {\n this.basisOfStrengthMessage = 'Click Validate and Submit button to delete ' + this.basisOfStrengthIngredientName;\n }\n }\n this.basisOfStrengthSubstanceUuid = null;\n this.basisOfStrengthIngredientName = null;\n this.ingredient.basisOfStrengthSubstanceKey = null;\n this.ingredient.basisOfStrengthSubstanceKeyType = null;\n }\n\n getSubstanceCode(substanceUuid: string, type: string) {\n const subCodesSubscription = this.generalService.getSubstanceCodesBySubstanceUuid(substanceUuid).subscribe(response => {\n if (response) {\n const substanceCodes = response;\n for (let index = 0; index < substanceCodes.length; index++) {\n if (substanceCodes[index].codeSystem) {\n if ((substanceCodes[index].codeSystem === this.substanceKeyTypeConfig) &&\n (substanceCodes[index].type === 'PRIMARY')) {\n\n if (type) {\n if (type === 'ingredientname') {\n this.ingredient.substanceKey = substanceCodes[index].code;\n this.ingredient.substanceKeyType = this.substanceKeyTypeConfig;\n\n if (!this.ingredient.basisOfStrengthSubstanceKey) {\n this.ingredient.basisOfStrengthSubstanceKey = substanceCodes[index].code;\n this.ingredient.basisOfStrengthSubstanceKeyType = this.substanceKeyTypeConfig;\n }\n }\n if (type === 'basisofstrength') {\n this.ingredient.basisOfStrengthSubstanceKey = substanceCodes[index].code;\n this.ingredient.basisOfStrengthSubstanceKeyType = this.substanceKeyTypeConfig;\n }\n }\n break;\n }\n }\n }\n }\n });\n this.subscriptions.push(subCodesSubscription);\n }\n\n getSubstanceBySubstanceKey() {\n if (this.ingredient != null) {\n // Get Substance Details, uuid, approval_id, substance name\n if (this.ingredient.substanceKey) {\n const subIdSubscription = this.generalService.getSubstanceByAnyId(this.ingredient.substanceKey).subscribe(response => {\n if (response) {\n if (response.uuid) {\n this.substanceUuid = response.uuid;\n this.ingredientName = response._name;\n\n // Get Active Moiety\n this.getActiveMoiety(this.substanceUuid, 'ingredientname');\n }\n }\n });\n this.subscriptions.push(subIdSubscription);\n }\n\n // Get Basis of Strength\n if (this.ingredient.basisOfStrengthSubstanceKey) {\n const subIdSubscription = this.generalService.getSubstanceByAnyId(this.ingredient.basisOfStrengthSubstanceKey).subscribe(response => {\n if (response) {\n if (response.uuid) {\n this.basisOfStrengthSubstanceUuid = response.uuid;\n this.basisOfStrengthIngredientName = response._name;\n\n // Get Active Moiety\n this.getActiveMoiety(this.basisOfStrengthSubstanceUuid, 'basisofstrength');\n }\n }\n });\n this.subscriptions.push(subIdSubscription);\n }\n }\n }\n\n /*\n if (response.bdnum) {\n\n if (type === 'ingredientname') {\n this.ingredientNameMessage = '';\n this.ingredient.bdnum = response.bdnum;\n this.ingredientName = response.name;\n this.ingredientNameSubstanceUuid = response.substanceId;\n\n // Get Active Moiety\n this.getActiveMoiety(response.substanceId, 'ingredientname');\n\n // If Basis of Strenght is empty/null, copy the Ingredient Name to Basis of Strength\n if (this.ingredient.basisOfStrengthBdnum == null) {\n this.basisOfStrengthMessage = '';\n this.ingredient.basisOfStrengthBdnum = response.bdnum;\n this.basisOfStrengthName = response.name;\n this.basisofStrengthSubstanceUuid = response.substanceId;\n\n // Get Active Moiety\n this.getActiveMoiety(response.substanceId, 'basisofstrength');\n }\n // Basis is strength\n } else {\n this.basisOfStrengthMessage = '';\n this.ingredient.basisOfStrengthBdnum = response.bdnum;\n this.basisOfStrengthName = response.name;\n this.basisofStrengthSubstanceUuid = response.substanceId;\n\n // Get Active Moiety\n this.getActiveMoiety(response.substanceId, 'basisofstrength');\n }\n\n }\n }\n else {\n if (type === 'ingredientname') {\n this.ingredientNameMessage = 'There is no Ingredient Name found for this Substance Code';\n } else {\n this.basisOfStrengthMessage = 'There is no Basis of Strength found for this Substance Code';\n }\n }\n */\n\n /*\n getSubstanceId(bdnum: string, type: string) {\n alert(\"SUBBBBBBBBB\");\n if (bdnum != null) {\n this.applicationService.getSubstanceDetailsByBdnum(bdnum).subscribe(response => {\n if (response) {\n if (response.substanceId) {\n if (type === 'ingredientname') {\n this.ingredientNameMessage = '';\n this.ingredient.bdnum = response.bdnum;\n this.ingredientName = response.name;\n this.ingredientNameSubstanceUuid = response.substanceId;\n\n // Get Active Moiety\n this.getActiveMoiety(response.substanceId, 'ingredientname');\n\n } else { // Basis is strength\n this.basisOfStrengthMessage = '';\n this.ingredient.basisOfStrengthBdnum = response.bdnum;\n this.basisOfStrengthName = response.name;\n this.basisofStrengthSubstanceUuid = response.substanceId;\n\n // Get Active Moiety\n this.getActiveMoiety(response.substanceId, 'basisofstrength');\n }\n } else {\n this.basisOfStrengthMessage = '';\n this.basisOfStrengthMessage = 'No Ingredient Name found for this bdnum';\n }\n } else {\n if (type === 'ingredientname') {\n this.ingredientNameMessage = 'There is no Ingredient Name found for this bdnum';\n } else {\n this.basisOfStrengthMessage = 'There is no Basis of Strength found for this bdnum';\n }\n }\n });\n }\n }\n */\n\n getActiveMoiety(substanceUuid: string, type: string) {\n if (substanceUuid != null) {\n // Get Active Moiety - Relationship\n this.generalService.getSubstanceRelationships(substanceUuid).subscribe(responseRel => {\n if (responseRel) {\n if (responseRel && responseRel.length > 0) {\n for (let i = 0; i < responseRel.length; i++) {\n const relType = responseRel[i].type;\n // if type is ACTIVE MOIETY, get Relationship Name\n if (relType && relType === 'ACTIVE MOIETY') {\n if (responseRel[i].relatedSubstance.name) {\n if ((type != null) && (type === 'ingredientname')) {\n this.ingredientNameActiveMoiety.push(responseRel[i].relatedSubstance.name);\n } else {\n this.basisOfStrengthActiveMoiety.push(responseRel[i].relatedSubstance.name);\n }\n }\n break;\n }\n }\n }\n }\n });\n }\n }\n\n ingredientNameUpdated(substance: SubstanceSummary): void {\n this.ingredientNameMessage = '';\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n if (relatedSubstance != null) {\n if (relatedSubstance.refuuid != null) {\n this.ingredientNameMessage = '';\n this.ingredientNameActiveMoiety.length = 0;\n\n if (!this.substanceKeyTypeConfig) {\n alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add Ingredient Name');\n this.ingredientNameMessage = 'Add Substance Key Type in Config';\n } else {\n this.getSubstanceCode(relatedSubstance.refuuid, 'ingredientname');\n\n this.substanceUuid = relatedSubstance.refuuid;\n this.ingredientName = relatedSubstance.name;\n\n // Clear the Validation Message\n this.ingredientNameMessage = '';\n this.ingredient.$$ingredientNameValidation = '';\n\n // Populate Basis of Strength if it is empty/null\n if (!this.ingredient.basisOfStrengthSubstanceKey) {\n\n // Clear the Validation Message\n this.basisOfStrengthMessage = '';\n this.ingredient.$$basisOfStrengthValidation = '';\n\n this.basisOfStrengthIngredientName = relatedSubstance.name;\n this.basisOfStrengthSubstanceUuid = relatedSubstance.refuuid;\n // Get Active Moiety\n this.getActiveMoiety(this.substanceUuid, 'basisofstrength');\n }\n\n // Get Active Moiety\n this.getActiveMoiety(this.substanceUuid, 'ingredientname');\n }\n }\n }\n } else {\n this.substanceUuid = null;\n }\n }\n\n basisOfStrengthUpdated(substance: SubstanceSummary): void {\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n if (relatedSubstance != null) {\n if (relatedSubstance.refuuid != null) {\n this.basisOfStrengthMessage = '';\n this.basisOfStrengthActiveMoiety.length = 0; //Clear Array\n\n if (!this.substanceKeyTypeConfig) {\n alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add Basis of Strength');\n this.basisOfStrengthMessage = 'Add Substance Key Type in Config';\n } else {\n this.getSubstanceCode(relatedSubstance.refuuid, 'basisofstrength');\n\n this.basisOfStrengthSubstanceUuid = relatedSubstance.refuuid;\n this.basisOfStrengthIngredientName = relatedSubstance.name;\n\n // Clear the Validation Message\n this.basisOfStrengthMessage = '';\n this.ingredient.$$basisOfStrengthValidation = '';\n\n // Get Active Moiety\n this.getActiveMoiety(this.basisOfStrengthSubstanceUuid, 'basisofstrength');\n }\n }\n }\n } else {\n this.basisOfStrengthSubstanceUuid = null;\n }\n }\n\n showMessageIngredientName(message: string): void {\n this.ingredientNameMessage = message;\n // Send this to Application form for Validation\n // This message is displayed when 'No Substance Found' is passed from Substance Search Selector\n this.ingredient.$$ingredientNameValidation = 'Ingredient Name: ' + this.ingredientNameMessage;\n }\n\n showMessageBasisOfStrength(message: string): void {\n this.basisOfStrengthMessage = message;\n // Send this to Application form for Validation\n // This message is displayed when 'No Substance Found' is passed from Substance Search Selector\n this.ingredient.$$basisOfStrengthValidation = 'Basis of Strength: ' + this.basisOfStrengthMessage;\n }\n\n searchValueOutChange(searchValue: string) {\n this.searchValue = searchValue;\n // SearchValue is empty, clear the message\n if (!searchValue) {\n this.ingredientNameMessage = '';\n this.ingredient.$$ingredientNameValidation = '';\n }\n // if searchValue is not empty and there is no Ingredient Name selected, display error message\n if ((searchValue) && (this.substanceUuid === null || this.substanceUuid === undefined)) {\n this.ingredient.$$ingredientNameValidation = 'Ingredient Name: No substances found for ' + searchValue;\n }\n }\n\n searchValueBasisOutChange(searchValue: string) {\n this.searchValue = searchValue;\n if (!this.searchValue) {\n this.basisOfStrengthMessage = '';\n this.ingredient.$$basisOfStrengthValidation = '';\n }\n if ((this.searchValue) && (this.basisOfStrengthSubstanceUuid === null || this.basisOfStrengthSubstanceUuid === undefined)) {\n this.ingredient.$$basisOfStrengthValidation = 'Basis of Strength: No substances found for ' + this.searchValue;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { RouterModule } from '@angular/router';\nimport { SubstanceTextSearchModule } from '@gsrs-core/substance-text-search/substance-text-search.module';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { SubstanceSearchSelectorComponent } from './substance-search-selector.component';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\n@NgModule({\n imports: [\n CommonModule,\n SubstanceTextSearchModule,\n MatIconModule,\n MatButtonModule,\n RouterModule,\n SubstanceImageModule,\n MatProgressSpinnerModule\n ],\n declarations: [\n SubstanceSearchSelectorComponent\n ],\n exports: [\n SubstanceSearchSelectorComponent\n ]\n})\nexport class SubstanceSearchSelectorModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatButtonModule } from '@angular/material/button';\nimport { NgxJsonViewerModule } from 'ngx-json-viewer';\nimport { JsonDialogFdaComponent } from './json-dialog-fda.component';\nimport { Routes, RouterModule } from '@angular/router';\n\n@NgModule({\n imports: [\n CommonModule,\n MatDialogModule,\n MatButtonModule,\n NgxJsonViewerModule,\n RouterModule\n ],\n declarations: [\n JsonDialogFdaComponent\n ],\n exports: [\n JsonDialogFdaComponent\n ],\n entryComponents: [\n JsonDialogFdaComponent\n ]\n})\nexport class JsonDialogFdaModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ConfirmDialogComponent } from './confirm-dialog.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { Routes, RouterModule } from '@angular/router';\n\n@NgModule({\n imports: [\n CommonModule,\n MatDialogModule,\n MatButtonModule,\n RouterModule\n ],\n declarations: [\n ConfirmDialogComponent\n ],\n exports: [\n ConfirmDialogComponent\n ],\n entryComponents: [\n ConfirmDialogComponent\n ]\n})\nexport class ConfirmDialogModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ApplicationTextSearchComponent } from './application-text-search.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatAutocompleteModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule\n ],\n declarations: [\n ApplicationTextSearchComponent\n ],\n exports: [\n ApplicationTextSearchComponent\n ]\n})\nexport class ApplicationTextSearchModule { }\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { take } from 'rxjs/operators';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class CanActivateRegisterApplicationFormComponent implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) {}\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('DataEntry', 'SuperDataEntry').pipe(take(1)).subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/browse-applications'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { take } from 'rxjs/operators';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { Observable } from 'rxjs';\nimport { ConfigService } from '@gsrs-core/config';\n\n@Injectable()\nexport class CanActivateUpdateApplicationFormComponent implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService,\n private configService: ConfigService,\n\n ) { }\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n const loadedComponents = this.configService.configData.loadedComponents || null;\n if (loadedComponents && loadedComponents.applications) {\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/browse-applications'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanDeactivate } from '@angular/router';\nimport { ApplicationFormComponent } from './application-form.component';\nimport { ApplicationService } from '../service/application.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CanDeactivateApplicationFormComponent implements CanDeactivate {\n constructor(\n private applicationService: ApplicationService\n ) {}\n canDeactivate(component: ApplicationFormComponent): boolean {\n if (this.applicationService.isApplicationUpdated) {\n if (confirm('You have unsaved changes! If you leave, your changes will be lost.')) {\n return true;\n } else {\n return false;\n }\n }\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, Router, ActivatedRouteSnapshot, NavigationExtras, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { ConfigService } from '@gsrs-core/config';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApplicationLoadedComponent implements CanActivate {\n constructor(\n private configService: ConfigService,\n private router: Router\n ) {}\n canActivate( route: ActivatedRouteSnapshot, state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n const loadedComponents = this.configService.configData.loadedComponents || null;\n if ( loadedComponents && loadedComponents.applications) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n\n }\n}\n","
        \n \n \n
        \n
        \n \n \n \n \n
        \n
        {{header}}
        \n \n \n
        \n \n \n
        \n
        \n \n
        NOT IN DATABASE
        \n
        \n
        \n
        ","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { SubstanceSummary } from '@gsrs-core/substance/substance.model';\nimport { ConfigService } from '@gsrs-core/config';\n\n@Component({\n selector: 'app-substance-search-selector',\n templateUrl: './substance-search-selector.component.html',\n styleUrls: ['./substance-search-selector.component.scss']\n})\nexport class SubstanceSearchSelectorComponent implements OnInit {\n selectedSubstance?: SubstanceSummary;\n @Input() eventCategory: string;\n @Output() selectionUpdated = new EventEmitter();\n @Output() showMessage = new EventEmitter();\n @Output() searchValueOut = new EventEmitter();\n @Input() placeholder = 'Search';\n @Input() hintMessage = '';\n @Input() header = 'Substance';\n @Input() name?: string;\n errorMessage: string;\n showOptions: boolean;\n displayName: string;\n searchValue: string = null;\n loadingStructure = false;\n private substanceSelectorProperties: Array = null;\n\n constructor(\n public substanceService: SubstanceService,\n public configService: ConfigService,\n ) { }\n\n ngOnInit() {\n if (this.configService.configData.substanceSelectorProperties != null) {\n this.substanceSelectorProperties = this.configService.configData.substanceSelectorProperties;\n } else {\n console.log(\"The config value for substanceSelectorProperties is null.\");\n }\n }\n\n @Input()\n set subuuid(uuid: string) {\n if (uuid) {\n this.substanceService.getSubstanceSummary(uuid).subscribe(response => {\n this.selectedSubstance = response;\n }, error => {\n console.log(error);\n if (this.name && this.name !== '') {\n this.selectedSubstance = {_name: this.name};\n } else {\n this.selectedSubstance = {_name: ''};\n }\n this.errorMessage = 'Not in database';\n });\n } else {\n this.selectedSubstance = null;\n this.searchValue = '';\n }\n }\n\n processSubstanceSearch(searchValue: string = ''): void {\n this.searchValue = searchValue;\n const q = searchValue.replace('\\\"', '');\n // Changed to configuration approach.\n const searchStr = this.substanceSelectorProperties.map(property => `${property}:\\\"^${q}$\\\"`).join(' OR ');\n /*\n const searchStr =\n `root_names_name:\\\"^${q}$\\\" OR ` +\n `root_names_stdName:\\\"^${q}$\\\" OR ` +\n `root_approvalID:\\\"^${q}$\\\" OR ` +\n `root_codes_BDNUM:\\\"^${q}$\\\"`\n ;\n */\n this.substanceService.getQuickSubstancesSummaries(searchStr, true).subscribe(response => {\n this.loadingStructure = true;\n if (response.content && response.content.length) {\n this.selectedSubstance = response.content[0];\n this.selectionUpdated.emit(this.selectedSubstance);\n this.errorMessage = '';\n } else {\n this.showMessage.emit('No substances found for ' + this.searchValue);\n }\n this.loadingStructure = false;\n });\n }\n\n editSelectedSubstance(): void {\n this.selectedSubstance = null;\n this.selectionUpdated.emit(this.selectedSubstance);\n }\n\n searchValueOutChange(searchValue: string) {\n this.searchValueOut.emit(searchValue);\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatListModule } from '@angular/material/list';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MatNativeDateModule } from '@angular/material/core';\nimport { ApplicationsBrowseComponent } from './applications-browse/applications-browse.component';\nimport { ApplicationDetailsComponent } from './application-details/application-details/application-details.component';\nimport { ApplicationDarrtsDetailsComponent } from './application-details/application-darrts-details/application-darrts-details.component';\nimport { ApplicationDetailsBaseComponent } from './application-details/application-details-base.component';\nimport { ApplicationFormComponent } from './application-form/application-form.component';\nimport { ApplicationProductFormComponent } from '../application/application-form/application-product-form/application-product-form.component';\nimport { IngredientFormComponent } from './application-form/ingredient-form/ingredient-form.component';\n// import { JsonDialogFdaComponent } from '../json-dialog-fda/json-dialog-fda.component';\n// import { ConfirmDialogComponent } from './application-form/confirm-dialog/confirm-dialog.component';\nimport { ApplicationService } from './service/application.service';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { SubstanceSearchSelectorModule } from '../substance-search-select/substance-search-selector.module';\nimport { FacetsManagerModule } from '@gsrs-core/facets-manager';\nimport { JsonDialogFdaModule } from '../json-dialog-fda/json-dialog-fda.module';\nimport { ConfirmDialogModule } from '../confirm-dialog/confirm-dialog.module';\n// import { CvInputComponent } from '@gsrs-core/substance-form/cv-input/cv-input.component';\nimport { SubstanceFormModule } from '../../core/substance-form/substance-form.module';\nimport { ApplicationTextSearchModule } from './application-text-search/application-text-search.module';\nimport { DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';\nimport { CanActivateRegisterApplicationFormComponent } from './application-form/can-activate-register-application-form.component';\nimport { CanActivateUpdateApplicationFormComponent } from './application-form/can-activate-update-application-form.component';\nimport { CanDeactivateApplicationFormComponent } from './application-form/can-deactivate-application-form.component';\nimport { ApplicationLoadedComponent } from './application-loaded.component';\n\n// import { AppDateAdapter } from '../format-datepicker/format-datepicker';\n\nconst applicationRoutes: Routes = [\n {\n path: 'browse-applications',\n component: ApplicationsBrowseComponent,\n canActivate: [ApplicationLoadedComponent],\n\n },\n {\n path: 'application/register',\n component: ApplicationFormComponent,\n canActivate: [ApplicationLoadedComponent, CanActivateRegisterApplicationFormComponent],\n canDeactivate: [CanDeactivateApplicationFormComponent]\n },\n {\n path: 'application/:id/edit',\n component: ApplicationFormComponent,\n canActivate: [ApplicationLoadedComponent, CanActivateUpdateApplicationFormComponent],\n canDeactivate: [CanDeactivateApplicationFormComponent]\n },\n {\n path: 'application/:id',\n component: ApplicationDetailsComponent,\n canActivate: [ApplicationLoadedComponent]\n },\n {\n path: 'application/:appType/:appNumber',\n component: ApplicationDetailsComponent,\n canActivate: [ApplicationLoadedComponent]\n },\n {\n path: 'application-darrts/:appType/:appNumber',\n component: ApplicationDarrtsDetailsComponent,\n canActivate: [ApplicationLoadedComponent]\n }\n];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule.forChild(applicationRoutes),\n MatToolbarModule,\n MatSidenavModule,\n MatCardModule,\n MatAutocompleteModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule,\n MatIconModule,\n MatChipsModule,\n MatBadgeModule,\n MatExpansionModule,\n MatCheckboxModule,\n MatTableModule,\n MatSortModule,\n MatPaginatorModule,\n MatSelectModule,\n MatSliderModule,\n MatDialogModule,\n MatListModule,\n MatMenuModule,\n MatButtonToggleModule,\n MatTooltipModule,\n MatTabsModule,\n MatBottomSheetModule,\n MatDatepickerModule,\n MatNativeDateModule,\n FormsModule,\n ReactiveFormsModule,\n OverlayModule,\n MatProgressBarModule,\n SubstanceImageModule,\n SubstanceSearchSelectorModule,\n FacetsManagerModule,\n JsonDialogFdaModule,\n ConfirmDialogModule,\n SubstanceFormModule,\n ApplicationTextSearchModule\n ],\n declarations: [\n ApplicationsBrowseComponent,\n ApplicationDetailsComponent,\n ApplicationDarrtsDetailsComponent,\n ApplicationDetailsBaseComponent,\n ApplicationFormComponent,\n ApplicationProductFormComponent,\n IngredientFormComponent\n ],\n exports: [\n ApplicationsBrowseComponent,\n ],\n entryComponents: [\n ],\n providers: [\n CanActivateRegisterApplicationFormComponent,\n CanActivateUpdateApplicationFormComponent,\n ApplicationLoadedComponent\n ]\n})\n\nexport class ApplicationModule {\n constructor(router: Router) {\n applicationRoutes.forEach(route => {\n router.config[0].children.push(route);\n });\n }\n\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ApplicationModule,\n providers: [\n ApplicationService,\n CanActivateRegisterApplicationFormComponent,\n CanActivateUpdateApplicationFormComponent,\n ApplicationLoadedComponent,\n CanDeactivateApplicationFormComponent\n ]\n };\n }\n\n}\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { SubstanceApplicationMatchListComponent } from './substance-application-match-list.component';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n@NgModule({\n declarations: [SubstanceApplicationMatchListComponent],\n imports: [\n CommonModule,\n RouterModule,\n MatTableModule,\n MatCardModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule\n ]\n})\nexport class SubstanceApplicationMatchListModule { }\n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { SafeUrl } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../core/utils/utils.service';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { ProductService } from '../service/product.service';\nimport { GeneralService } from '../../service/general.service';\n\n@Component({\n selector: 'app-product-details-base',\n template: '',\n styleUrls: ['./product-details-base.component.scss']\n})\nexport class ProductDetailsBaseComponent implements OnInit, AfterViewInit, OnDestroy {\n\n productId: string;\n src: string;\n product: any;\n iconSrcPath: string;\n message = '';\n isAdmin = false;\n subscriptions: Array = [];\n\n constructor(\n public productService: ProductService,\n public generalService: GeneralService,\n public activatedRoute: ActivatedRoute,\n public loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private router: Router,\n private gaService: GoogleAnalyticsService,\n private utilsService: UtilsService,\n public titleService: Title\n ) { }\n\n ngOnInit() {\n this.loadingService.setLoading(true);\n this.productId = this.activatedRoute.snapshot.params['id'];\n this.src = this.activatedRoute.snapshot.params['src'];\n\n if (this.productId != null) {\n this.getProduct();\n } else {\n this.handleSubstanceRetrivalError();\n }\n this.loadingService.setLoading(false);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n ngAfterViewInit() { }\n\n getProduct(): void {\n const prodSubscription = this.productService.getProduct(this.productId).subscribe(response => {\n if (response) {\n this.product = response;\n if (Object.keys(this.product).length > 0) {\n\n // Add title on the browser. Concatenate multiple Product Code\n let prodCode = '';\n this.product.productCodeList.forEach((elementProdCode, indexProdCode) => {\n if (elementProdCode != null) {\n if (elementProdCode.productCode) {\n if (indexProdCode > 0) {\n prodCode = prodCode.concat('|');\n }\n prodCode = prodCode.concat(elementProdCode.productCode);\n }\n }\n });\n this.titleService.setTitle(`Product ` + prodCode);\n\n this.getSubstanceBySubstanceKey();\n }\n }\n }, error => {\n this.message = 'No Product record found';\n // this.handleSubstanceRetrivalError();\n });\n this.subscriptions.push(prodSubscription);\n }\n\n getSubstanceBySubstanceKey() {\n if (this.product != null) {\n this.product.productComponentList.forEach(elementComp => {\n if (elementComp != null) {\n elementComp.productLotList.forEach(elementLot => {\n if (elementLot != null) {\n elementLot.productIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n // Get Substance Details, uuid, approval_id, substance name\n if (elementIngred.substanceKey) {\n const subSubscription = this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(response => {\n if (response) {\n elementIngred._substanceUuid = response.uuid;\n elementIngred._ingredientName = response._name;\n }\n });\n this.subscriptions.push(subSubscription);\n }\n\n // Get Basis of Strength\n if (elementIngred.basisOfStrengthSubstanceKey) {\n const subBasisSubscription = this.generalService.getSubstanceByAnyId(elementIngred.basisOfStrengthSubstanceKey)\n .subscribe(response => {\n if (response) {\n elementIngred._basisOfStrengthSubstanceUuid = response.uuid;\n elementIngred._basisOfStrengthIngredientName = response._name;\n }\n });\n this.subscriptions.push(subBasisSubscription);\n }\n }\n }); // Ingredient Loop\n }\n }); // Lot Loop\n }\n }); // Component Loop\n }\n }\n\n /*\n getSubstanceDetails() {\n if (this.product != null) {\n this.product.productComponentList.forEach(elementComp => {\n if (elementComp != null) {\n elementComp.productLotList.forEach(elementLot => {\n if (elementLot != null) {\n elementLot.productIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n // Get Ingredient Name\n if (elementIngred.bdnum) {\n this.productService.getSubstanceDetailsByBdnum(elementIngred.bdnum).subscribe(response => {\n if (response) {\n if (response.substanceId) {\n elementIngred.substanceId = response.substanceId;\n elementIngred.ingredientName = response.name;\n }\n }\n });\n }\n\n // Get Basis of Strength\n if (elementIngred.basisOfStrengthBdnum) {\n this.productService.getSubstanceDetailsByBdnum(elementIngred.basisOfStrengthBdnum).subscribe(response => {\n if (response) {\n if (response.substanceId) {\n elementIngred.basisOfStrengthSubstanceId = response.substanceId;\n elementIngred.basisOfStrengthIngredientName = response.name;\n }\n }\n });\n }\n }\n });\n }\n });\n }\n });\n }\n }\n */\n\n private handleSubstanceRetrivalError() {\n this.loadingService.setLoading(false);\n const notification: AppNotification = {\n message: 'The web address above is incorrect. You\\'re being forwarded to Browse Substances',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/browse-substance']);\n }, 5000);\n }\n\n getSafeStructureImgUrl(structureId: string, size: number = 150): SafeUrl {\n return this.utilsService.getSafeStructureImgUrl(structureId, size, true);\n }\n\n\n}\n","
        \n



        \n {{message}}\n
        \n
        \n
        \n \n \n
        \n
        \n Product Details     \n \n \n \n \n \n \n \n \n
        \n\n
        \n Created By: {{product.createdBy}}   \n Create Date:\n {{product.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{product.modifiedBy}}   \n Modify Date: {{product.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
        \n
        \n
        \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n\n \n
        Full Product NameProduct TypeTerm and Term Part
        \n {{ prodName.productName }}\n {{ prodName.productNameType }}\n
        \n Term: {{prodPart.productTerm}}\n Term Part:  {{prodPart.productTermPart}}

        \n
        \n
        \n No Product Name Available\n
        \n\n \n
        \n
        \n
        \n
        \n Non Proprietary Name/INN/USAN Name/Generic Name:\n
        \n
        \n {{product.nonProprietaryName}}\n
        \n
        \n
        \n
        \n Proprietary Name/Invented Name:\n
        \n
        \n {{product.proprietaryName}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Dosage Form/Pharmacedical Dosage Form:\n
        \n
        \n {{product.pharmacedicalDosageForm}}\n
        \n
        \n
        \n
        \n Compose Product Name:\n
        \n
        \n {{product.composeProductName}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Release Characteristic:\n
        \n
        \n {{product.releaseCharacteristic}}\n
        \n
        \n
        \n
        \n Strength Characteristic:\n
        \n
        \n {{product.strengthCharacteristic}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Country Code:\n
        \n
        \n {{product.countryCode}}\n
        \n
        \n
        \n
        \n Language:\n
        \n
        \n {{product.language}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Product Type:\n
        \n
        \n {{product.productType}}\n
        \n
        \n
        \n
        \n Public Domain:\n
        \n
        \n {{product.publicDomain}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Source Type:\n
        \n
        \n {{product.sourceType}}\n
        \n
        \n
        \n
        \n Source\n
        \n
        \n {{product.source}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Unit of Presentation:\n
        \n
        \n {{product.unitPresentation}}\n
        \n
        \n
        \n
        \n Route of Administration:\n
        \n
        \n {{product.routeAdmin}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Status:\n
        \n
        \n {{product.status}}\n
        \n
        \n\n
        \n
        \n Application Type Number:\n
        \n
        \n {{product.appType}} {{product.appNumber}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Product ID/Code:
        \n Product Type:\n
        \n
        \n
        \n {{prodCode.productCode}}
        \n {{prodCode.productCodeType}}
        \n
        \n
        \n
        \n
        \n
        \n Provenance:\n
        \n
        \n {{product.provenance}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n\n
        \n \n \n Company ({{product.productCompanyList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        #Company NameCompany AddressCityStateZipCompany CountryCompany CodeCompany Code TypeCompany Role
        {{i + 1}}{{ x.companyName }}{{ x.companyAddress }}{{ x.companyCity }}{{ x.companyState }}{{ x.companyZip }}{{ x.companyCountry }} {{ x.companyCode }}{{ x.companyCodeType }}{{ x.companyRole }}
        \n
        \n
        \n
        \n\n

        \n \n \n \n \n \n\n \n \n \n
        \n Manufacture Item {{index + 1}}\n
        \n\n
        \n
        \n
        \n
        \n Dosage Form:\n
        \n
        \n {{ prodComp.dosageForm }}\n
        \n
        \n
        \n
        \n Amount:\n
        \n
        \n {{prodComp.amount}}\n
        \n
        \n
        \n
        \n Unit:\n
        \n
        \n {{prodComp.unit}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Code:\n
        \n
        \n {{prodComp.manufactureCode}}\n
        \n
        \n
        \n
        \n Code Type:\n
        \n
        \n {{prodComp.manufactureCodeType}}\n
        \n
        \n
        \n
        \n Size:\n
        \n
        \n {{prodComp.charSize}}\n
        \n
        \n
        \n
        \n Imprint Text:\n
        \n
        \n {{prodComp.charImprintText}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Color Name:\n
        \n
        \n {{prodComp.charColor}}\n
        \n
        \n
        \n
        \n Flavor Name:\n
        \n
        \n {{prodComp.charFlavor}}\n
        \n
        \n
        \n
        \n Shape Name:\n
        \n
        \n {{prodComp.charShape}}\n
        \n
        \n
        \n
        \n Number of Fragments:\n
        \n
        \n {{prodComp.charNumFragments}}\n
        \n
        \n
        \n\n\n \n\n \n \n \n
        \n
        \n Lot {{indexLot + 1}}\n
        \n\n
        \n
        \n
        \n Lot Number:\n
        \n
        \n {{ lot.lotNo }}\n
        \n
        \n
        \n
        \n Lot Size:\n
        \n
        \n {{ lot.lotSize }}\n
        \n
        \n
        \n
        \n Expiry Date:\n
        \n
        \n {{ lot.expiryDate }}\n
        \n
        \n
        \n
        \n Manufacture Date:\n
        \n
        \n {{ lot.manufactureDate }}\n
        \n
        \n
        \n\n\n \n\n \n \n \n Core/Internal Active Ingredients\n ({{lot.productIngredientList.length}})\n \n \n \n
        \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        Ingredient NameBasis Of StrengthIngredient TypeIngredient LocationAverageLowHighUnitManufactureLot NoGradeRelease CharacteristicsNotes
        \n \n \n \n \n \n {{ ingred.ingredientType }}{{ ingred.ingredientLocation }}{{ ingred.average }}{{ ingred.low }}{{ ingred.high }}{{ ingred.unit }}{{ ingred.manufacturer }}{{ ingred.ingredLotNo }}{{ ingred.grade }}{{ ingred.releaseCharacteristic }}{{ ingred.notes }}
        \n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n\n
        \n
        \n \n\n
        \n
        \n\n
        \n
        \n
        \n\n


        ","import { Component, OnInit, AfterViewInit } from '@angular/core';\nimport { ProductService } from '../../service/product.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { Title } from '@angular/platform-browser';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../../core/utils/utils.service';\nimport { ProductDetailsBaseComponent } from '../product-details-base.component';\nimport { GeneralService } from '../../../service/general.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\n\n@Component({\n selector: 'app-product-details',\n templateUrl: './product-details.component.html',\n styleUrls: ['./product-details.component.scss']\n})\nexport class ProductDetailsComponent extends ProductDetailsBaseComponent implements OnInit, AfterViewInit {\n\n constructor(\n public productService: ProductService,\n generalService: GeneralService,\n activatedRoute: ActivatedRoute,\n loadingService: LoadingService,\n mainNotificationService: MainNotificationService,\n router: Router,\n gaService: GoogleAnalyticsService,\n utilsService: UtilsService,\n public authService: AuthService,\n titleService: Title\n ) {\n super(productService, generalService, activatedRoute, loadingService, mainNotificationService,\n router, gaService, utilsService, titleService);\n }\n\n ngOnInit() {\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n\n super.ngOnInit();\n }\n\n ngAfterViewInit() {\n }\n\n}\n","
        \n



        \n {{message}}\n
        \n
        \n
        \n \n \n Product Details (SPL)\n \n \n\n
        \n
        \n
        \n Product NDC:\n
        \n \n
        \n
        \n
        \n Application Number:\n
        \n
        \n {{product.applicationNumber}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Product Name:\n
        \n
        \n {{product.productName}}\n
        \n
        \n
        \n
        \n Product Type:\n
        \n
        \n {{product.productTypeName}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Non Proprietary Name:\n
        \n
        \n {{product.nonProprietaryName}}\n
        \n
        \n
        \n
        \n Proprietary Name Suffix:\n
        \n
        \n {{product.proprietaryNameSuffix}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Labeler Name:\n
        \n
        \n {{product.labelerName}}\n
        \n
        \n
        \n
        \n Dosage Form Name:\n
        \n
        \n {{product.dosageFormName}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Marketing Status:\n
        \n
        \n {{product.marketingStatus}}\n
        \n
        \n
        \n
        \n Marketing Category Code:\n
        \n
        \n {{product.marketingCategoryCode}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Marketing Category Name:\n
        \n
        \n {{product.marketingCategoryName}}\n
        \n
        \n
        \n
        \n Start Marketing Date:\n
        \n
        \n {{product.startMarketingDate|date: 'MM/dd/yyyy'}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Route Name:\n
        \n
        \n
        0\">\n
        \n 0\">|{{x.routeName}}\n
        \n
        \n
        \n
        \n
        \n
        \n End Marketing Date:\n
        \n
        \n {{product.endMarketingDate|date: 'MM/dd/yyyy'}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Color:\n
        \n
        \n {{product.prodCharElist.colorName}}\n
        \n
        \n
        \n
        \n Flavor:\n
        \n
        \n {{product.prodCharElist.flavorName}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Shape:\n
        \n
        \n {{product.prodCharElist.shapeName}}\n
        \n
        \n\n
        \n
        \n Imprint Text:\n
        \n
        \n {{product.prodCharElist.imprintText}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Size (mm):\n
        \n
        \n {{product.prodCharElist.sizeMm}}\n
        \n
        \n
        \n
        \n Number of Fragments:\n
        \n
        \n {{product.prodCharElist.numberOfFragments}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n\n \n
        0\">\n
        \n \n \n Product Labeler Details\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        Firm NameDUNS NumberFEI NumberAddressCityStateZipCountryCountry Code
        {{ x.firmName }}{{ x.dunsNumber }}{{ x.feiNumber }}{{ x.address }}{{ x.city }}{{ x.state }}{{ x.zip }}{{ x.country }}{{ x.countryCode }}
        \n
        \n
        \n
        \n
        \n\n
        \n \n \n Active Ingredient ({{product.prodActiveElistList.length}})\n \n 0\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        #NameActive Moiety NameStructureUniiStrength Number (Unit)
        {{i + 1}}\n
        \n \n \n {{x.name}}\n \n
        \n
        {{ x.activeMoietyName }}\n \n
        \n \n
        \n
        {{ x.unii }}\n \n {{x.originalNumeratorNumber}} {{x.originalNumeratorUnit}}\n \n in\n {{x.originalDenominatorNumber}}\n \n \n {{x.originalDenominatorUnit}}\n \n
        \n
        \n
        \n
        \n\n
        \n \n \n Inactive Ingredient ({{product.prodInactiveElistList.length}})\n \n 0\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        #NameUniiStrength Number (Unit)
        {{i + 1}}\n
        \n \n \n {{x.name}}\n \n
        \n
        {{ x.unii }}{{ x.strengthNumber }} {{ x.strengthNumeratorUnit}}
        \n
        \n
        \n
        \n
        \n","import { Component, OnInit, AfterViewInit, OnDestroy } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { ProductService } from '../../service/product.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { Title } from '@angular/platform-browser';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../../core/utils/utils.service';\nimport { ProductDetailsBaseComponent } from '../product-details-base.component';\nimport { ConfigService } from '@gsrs-core/config';\nimport { GeneralService } from '../../../service/general.service';\nimport { ProductElist } from '../../model/productelist/productelist.model';\n\n@Component({\n selector: 'app-product-elist-details',\n templateUrl: './product-elist-details.component.html',\n styleUrls: ['./product-elist-details.component.scss']\n})\n\nexport class ProductElistDetailsComponent extends ProductDetailsBaseComponent implements OnInit, AfterViewInit, OnDestroy {\n\n dailyMedUrl = '';\n product: ProductElist;\n showSpinner = false;\n\n constructor(\n producService: ProductService,\n generalService: GeneralService,\n activatedRoute: ActivatedRoute,\n loadingService: LoadingService,\n mainNotificationService: MainNotificationService,\n router: Router,\n gaService: GoogleAnalyticsService,\n utilsService: UtilsService,\n public configService: ConfigService,\n titleService: Title\n ) {\n super(producService, generalService, activatedRoute, loadingService, mainNotificationService,\n router, gaService, utilsService, titleService);\n }\n\n ngOnInit() {\n this.productId = this.activatedRoute.snapshot.params['id'];\n this.getProduct();\n this.iconSrcPath = `${this.configService.environment.baseHref || ''}assets/icons/fda/icon_dailymed.png`;\n }\n\n ngAfterViewInit() { }\n\n getProduct(): void {\n this.loadingService.setLoading(true);\n this.productService.getProductElist(this.productId).subscribe(response => {\n this.product = response;\n if (response) {\n\n this.titleService.setTitle(`Product ` + this.product.productNDC);\n\n this.getSubstanceByApprovalID();\n this.dailyMedUrl = 'https://dailymed.nlm.nih.gov/dailymed/search.cfm?labeltype=all&query=' + this.product.productNDC;\n }\n }, error => {\n this.message = 'No Product record found';\n });\n\n this.loadingService.setLoading(false);\n }\n\n getSubstanceByApprovalID() {\n if (this.product != null) {\n\n // Sort Active Substance Name in Ascending order\n if (this.product.prodActiveElistList.length > 0) {\n this.product.prodActiveElistList.sort((a, b) => (a.name < b.name ? -1 : 1));\n\n // Active Ingredient - get Substance Uuid for each Substance Name\n this.product.prodActiveElistList.forEach(elementActive => {\n\n if (elementActive != null) {\n // Get Substance Details, uuid\n if (elementActive.unii) {\n const subActiveSubscription = this.generalService.getSubstanceByAnyId(elementActive.unii).subscribe(response => {\n if (response) {\n elementActive._substanceUuid = response.uuid;\n }\n });\n this.subscriptions.push(subActiveSubscription);\n }\n }\n });\n }\n\n // Sort Inactive Substance Name in Ascending order\n if (this.product.prodInactiveElistList.length > 0) {\n this.product.prodInactiveElistList.sort((a, b) => (a.name < b.name ? -1 : 1));\n\n // Inactive Ingredient - get Substance Uuid for each Substance Name\n this.product.prodInactiveElistList.forEach(elementInactive => {\n if (elementInactive != null) {\n // Get Substance Details, uuid\n if (elementInactive.unii) {\n const subInactiveSubscription = this.generalService.getSubstanceByAnyId(elementInactive.unii).subscribe(response => {\n if (response) {\n elementInactive._substanceUuid = response.uuid;\n }\n });\n this.subscriptions.push(subInactiveSubscription);\n }\n }\n });\n }\n }\n }\n\n}\n","
        \n
        \n \n \n \n\n \n \n \n    \n\n    \n\n \n \n View Product   \n\n \n    \n \n\n \n \n\n \n  \n \n      \n \n
        \n\n \n
        \n
        \n {{submissionMessage}}\n
        \n\n \n
        \n 0\">\n
        \n Please correct or dismiss the following errors and submit again:\n
        \n
        \n
        \n {{message.messageType}}
        \n
        {{message.message}}
        {{link.text}}
        \n \n
        \n
        \n\n
        \n \n \n
        \n
        \n\n
        \n
        \n\n\n\n\n
        \n
        \n
        \n\n
        \n
        \n
        \n {{title}}\n
        \n\n
        \n
        \n
        \n Created By: {{product.createdBy}}   \n Create Date: {{product.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{product.modifiedBy}}   \n Modify Date: {{product.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
        \n
        \n
        \n\n \n \n\n \n
        \n
        \n
        0\">\n
        \n \n \n \n\n \n \n\n \n\n \n\n \n \n \n\n \n\n \n \n\n
        \n\n \n\n \n
        \n
        \n \n \n \n\n \n \n \n\n \n \n \n  \n \n \n\n
        \n
        \n\n
        \n
        \n\n\n \n
        \n
        \n
        \n \n \n \n \n \n \n \n \n \n
        \n\n
        \n \n \n \n \n \n\n \n \n \n
        \n\n
        \n \n \n \n \n \n \n \n \n \n
        \n\n
        \n \n \n \n\n \n \n \n \n \n \n\n \n \n\n \n
        \n\n
        \n \n \n\n \n \n\n \n \n\n \n \n \n
        \n\n \n
        \n
        \n
        \n \n \n \n\n \n \n\n \n
        \n\n \n \n \n \n \n\n
        \n
        \n \n\n\n \n
        \n
        \n
        0\">\n
        \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
        \n\n\n
        \n
        \n \n \n \n \n \n \n \n
        \n\n \n \n \n \n \n
        \n\n
        \n
        \n \n\n\n \n
        \n
        \n
        \n
        \n \n MANUFACTURE ITEM \n \n           \n \n

        \n\n
        \n \n \n
        \n
        \n \n\n\n
        \n\n
        \n
        \n


        \n\n
        \n
        \n
        \n\n
        \n
        ","import { Component, OnInit, AfterViewInit, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { ProductService } from '../service/product.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ControlledVocabularyService } from '../../../core/controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '../../../core/controlled-vocabulary/vocabulary.model';\nimport { Product, ValidationMessage } from '../model/product.model';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { take } from 'rxjs/operators';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { JsonDialogFdaComponent } from '../../json-dialog-fda/json-dialog-fda.component';\nimport { ConfirmDialogComponent } from '../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-product-form',\n templateUrl: './product-form.component.html',\n styleUrls: ['./product-form.component.scss']\n})\n\nexport class ProductFormComponent implements OnInit, AfterViewInit, OnDestroy {\n\n product: Product;\n id?: number;\n isLoading = true;\n showSubmissionMessages = false;\n submissionMessage: string;\n validationMessages: Array = [];\n validationResult = false;\n private subscriptions: Array = [];\n copy: string;\n private overlayContainer: HTMLElement;\n serverError: boolean;\n isDisableData = false;\n username = null;\n title = null;\n isAdmin = false;\n expiryDateMessage = '';\n manufactureDateMessage = '';\n viewProductUrl = '';\n message = '';\n\n constructor(\n private productService: ProductService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private gaService: GoogleAnalyticsService,\n private utilsService: UtilsService,\n private cvService: ControlledVocabularyService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog,\n private titleService: Title) { }\n\n ngOnInit() {\n this.isAdmin = this.authService.hasRoles('admin');\n this.loadingService.setLoading(true);\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.username = this.authService.getUser();\n const routeSubscription = this.activatedRoute\n .params\n .subscribe(params => {\n if (params['id']) {\n const id = params['id'];\n this.title = 'Update Product';\n if (id !== this.id) {\n this.id = id;\n this.gaService.sendPageView(`Product Edit`);\n this.getProductDetails();\n }\n } else {\n this.title = 'Register New Product';\n setTimeout(() => {\n this.gaService.sendPageView(`Product Register`);\n this.titleService.setTitle(`Register Product`);\n this.productService.loadProduct();\n this.product = this.productService.product;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }\n });\n this.subscriptions.push(routeSubscription);\n }\n\n ngAfterViewInit(): void {\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getProductDetails(newType?: string): void {\n if (this.id != null) {\n const id = this.id.toString();\n this.productService.getProduct(id).subscribe(response => {\n if (response) {\n this.productService.loadProduct(response);\n this.product = this.productService.product;\n // Check if there is not Product Code Object, create one\n if (this.product.productCodeList.length == 0) {\n this.product.productCodeList = [{}];\n }\n let prodCode = '';\n if (this.product.productCodeList.length > 0) {\n for (let codeObj of this.product.productCodeList) {\n if (codeObj) {\n if (codeObj.productCode) {\n prodCode = codeObj.productCode;\n break;\n }\n }\n }\n }\n this.titleService.setTitle(`Edit Product ` + prodCode);\n } else {\n this.handleProductRetrivalError();\n }\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }, error => {\n this.message = 'No Product Record found for Id ' + this.id;\n this.gaService.sendException('getProductDetails: error from API call');\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.handleProductRetrivalError();\n });\n }\n }\n\n validate(validationType?: string): void {\n this.isLoading = true;\n this.serverError = false;\n this.loadingService.setLoading(true);\n\n this.validateClient();\n // If there is no error on client side, check validation on server side\n if (this.validationMessages.length === 0) {\n this.showSubmissionMessages = false;\n this.productService.validateProduct().pipe(take(1)).subscribe(results => {\n this.submissionMessage = null;\n this.validationMessages = results.validationMessages.filter(\n message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.validationResult = results.valid;\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n if (this.validationMessages.length === 0 && results.valid === true) {\n this.submissionMessage = 'Product is Valid. Would you like to submit?';\n }\n }, error => {\n this.addServerError(error);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }\n }\n\n setValidationMessage(message: string) {\n const validate: ValidationMessage = {};\n validate.message = message;\n validate.messageType = 'ERROR';\n this.validationMessages.push(validate);\n this.validationResult = false;\n }\n\n // Validate data in client side first\n validateClient(): void {\n this.submissionMessage = null;\n this.validationMessages = [];\n this.validationResult = true;\n\n // Validate Expiry Date in Lot\n if ((this.expiryDateMessage !== null) && (this.expiryDateMessage.length > 0)) {\n this.setValidationMessage(this.expiryDateMessage);\n }\n\n // Validate Manufacture Date in Lot\n if ((this.manufactureDateMessage !== null) && (this.manufactureDateMessage.length > 0)) {\n this.setValidationMessage(this.manufactureDateMessage);\n }\n\n // Validate Ingredient Average, which should be integer/number\n if (this.product != null) {\n this.product.productComponentList.forEach(elementComp => {\n if (elementComp != null) {\n elementComp.productLotList.forEach(elementLot => {\n if (elementLot != null) {\n\n // Validate Ingredient Average, Low, High, LowLimit, HighLimit should be integer/number\n elementLot.productIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n if (elementIngred.average) {\n if (this.isNumber(elementIngred.average) === false) {\n this.setValidationMessage('Average must be a number');\n }\n }\n if (elementIngred.low) {\n if (this.isNumber(elementIngred.low) === false) {\n this.setValidationMessage('Low must be a number');\n }\n }\n if (elementIngred.high) {\n if (this.isNumber(elementIngred.high) === false) {\n this.setValidationMessage('High must be a number');\n }\n }\n // Ingredient Name Validation\n if (elementIngred.$$ingredientNameValidation) {\n this.setValidationMessage(elementIngred.$$ingredientNameValidation);\n }\n // Basis of Strength Validation\n if (elementIngred.$$basisOfStrengthValidation) {\n this.setValidationMessage(elementIngred.$$basisOfStrengthValidation);\n }\n }\n });\n }\n });\n }\n });\n }\n\n if (this.validationMessages.length > 0) {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }\n\n }\n\n toggleValidation(): void {\n this.showSubmissionMessages = !this.showSubmissionMessages;\n }\n\n addServerError(error: any): void {\n this.serverError = true;\n this.validationResult = false;\n this.validationMessages = null;\n\n const message: ValidationMessage = {\n actionType: 'server failure',\n links: [],\n appliedChange: false,\n suggestedChange: false,\n messageType: 'ERROR',\n message: 'Unknown Server Error'\n };\n if (error && error.error && error.error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || ': ') + error.error.message;\n } else if (error && error.error && (typeof error.error) === 'string') {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.error;\n } else if (error && error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.message;\n }\n this.validationMessages = [message];\n this.showSubmissionMessages = true;\n }\n\n submit(): void {\n this.isLoading = true;\n this.loadingService.setLoading(true);\n // remove non-field form property/field/key from Product object\n this.product = this.cleanProduct();\n this.productService.saveProduct().subscribe(response => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.validationMessages = null;\n this.submissionMessage = 'Product was saved successfully!';\n this.showSubmissionMessages = true;\n this.validationResult = false;\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = '';\n if (response.id) {\n this.productService.bypassUpdateCheck();\n const id = response.id;\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigate(['/product', id, 'edit']);\n }\n }, 4000);\n }\n /*\n , (error: SubstanceFormResults) => {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.submissionMessage = null;\n if (error.validationMessages && error.validationMessages.length) {\n this.validationResult = error.isSuccessfull;\n this.validationMessages = error.validationMessages\n .filter(message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.showSubmissionMessages = true;\n } else {\n this.submissionMessage = 'There was a problem with your submission';\n this.addServerError(error.serverError);\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = null;\n }, 8000);\n }\n }*/\n );\n }\n\n private handleProductRetrivalError() {\n const notification: AppNotification = {\n message: 'The product you\\'re trying to edit doesn\\'t exist.',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/product/register']);\n this.productService.loadProduct();\n }, 5000);\n }\n\n cleanProduct(): Product {\n let productStr = JSON.stringify(this.product);\n let productCopy: Product = JSON.parse(productStr);\n productCopy.productComponentList.forEach(elementComp => {\n if (elementComp != null) {\n elementComp.productLotList.forEach(elementLot => {\n if (elementLot != null) {\n elementLot.productIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n // remove property for Ingredient Name Validation. Do not need in the form JSON\n if (elementIngred.$$ingredientNameValidation || elementIngred.$$ingredientNameValidation === \"\") {\n delete elementIngred.$$ingredientNameValidation;\n }\n // remove property for Basis of Strength Validation. Do not need in the form JSON\n if (elementIngred.$$basisOfStrengthValidation || elementIngred.$$basisOfStrengthValidation === \"\") {\n delete elementIngred.$$basisOfStrengthValidation;\n }\n } // if ingred is not null\n }); // ingred loop\n } // if lot is not null\n }); // lot loop\n } // if comp is not null\n }); // comp loop\n\n return productCopy;\n }\n\n showJSON(): void {\n const dialogRef = this.dialog.open(JsonDialogFdaComponent, {\n width: '90%',\n height: '90%',\n data: this.product\n });\n\n // this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n });\n this.subscriptions.push(dialogSubscription);\n\n }\n\n confirmDeleteProduct(productId: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete this Product?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProduct(productId);\n }\n });\n }\n\n deleteProduct(productId: number): void {\n this.productService.deleteProduct(productId).subscribe(response => {\n this.productService.bypassUpdateCheck();\n this.displayMessageAfterDeleteProd();\n }, (err) => {\n console.log(err);\n }\n );\n }\n\n displayMessageAfterDeleteProd() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: {\n message: 'This product record was deleted successfully',\n type: 'home'\n }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n this.router.navigate(['/home']);\n });\n }\n\n addNewProductName() {\n this.productService.addNewProductName();\n }\n\n confirmDeleteProductName(prodNameIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Product Name ' + (prodNameIndex + 1) + ' ?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductName(prodNameIndex);\n }\n });\n }\n\n deleteProductName(prodNameIndex: number) {\n this.productService.deleteProductName(prodNameIndex);\n }\n\n addNewTermAndTermPart(prodNameIndex: number) {\n this.productService.addNewTermAndTermPart(prodNameIndex);\n }\n\n confirmDeleteTermAndTermPart(prodNameIndex: number, prodNameTermIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Term and Term Part ' + (prodNameTermIndex + 1) + ' ?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteTermAndTermPart(prodNameIndex, prodNameTermIndex);\n }\n });\n }\n\n deleteTermAndTermPart(prodNameIndex: number, prodNameTermIndex: number) {\n this.productService.deleteTermAndTermPart(prodNameIndex, prodNameTermIndex);\n }\n\n addNewProductCode() {\n this.productService.addNewProductCode();\n }\n\n confirmDeleteProductCode(prodCodeIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Product Code ' + (prodCodeIndex + 1) + ' ?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductCode(prodCodeIndex);\n }\n });\n }\n\n deleteProductCode(prodCodeIndex: number) {\n this.productService.deleteProductCode(prodCodeIndex);\n }\n\n addNewProductCompany() {\n this.productService.addNewProductCompany();\n }\n\n confirmDeleteProductCompany(prodCompanyIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Product Company ' + (prodCompanyIndex + 1) + ' ?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductCompany(prodCompanyIndex);\n }\n });\n }\n\n deleteProductCompany(prodCompanyIndex: number) {\n this.productService.deleteProductCompany(prodCompanyIndex);\n }\n\n addNewProductComponent() {\n this.productService.addNewProductComponent();\n }\n\n expiryDateMessageOutChange($event) {\n this.expiryDateMessage = $event;\n }\n\n manufactureDateMessageOutChange($event) {\n this.manufactureDateMessage = $event;\n }\n\n isNumber(str: any): boolean {\n if (str) {\n const num = Number(str);\n const nan = isNaN(num);\n return !nan;\n }\n return false;\n }\n\n getViewProductUrl(): string {\n return this.productService.getViewProductUrl(this.id);\n }\n}\n","\n\n
        \n \n   \n \n
        \n\n\n\n
        \n Manufacture Item Details {{prodComponentIndex + 1}}\n \n\n
        \n \n \n \n \n \n \n
        \n\n
        \n \n \n \n \n \n \n \n \n \n \n
        \n\n
        \n \n \n \n \n \n \n \n \n \n \n
        \n\n \n
        \n
        \n
        \n
        \n \n LOT \n \n           \n \n
        \n
        \n \n \n
        \n
        \n \n\n
        \n

        ","import { Component, OnInit, Input, AfterViewInit, OnDestroy, ViewEncapsulation, Output, EventEmitter } from '@angular/core';\nimport { ProductService } from '../../service/product.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '@gsrs-core/controlled-vocabulary/vocabulary.model';\nimport { Product, ProductComponent, ValidationMessage } from '../../model/product.model';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { JsonDialogFdaComponent } from '../../../json-dialog-fda/json-dialog-fda.component';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-product-component-form',\n templateUrl: './product-component-form.component.html',\n styleUrls: ['./product-component-form.component.scss']\n})\nexport class ProductComponentFormComponent implements OnInit {\n\n @Input() productComponent: ProductComponent;\n @Input() totalComponent: number;\n @Input() prodComponentIndex: number;\n @Output() expiryDateMessageOut = new EventEmitter();\n @Output() manufactureDateMessageOut = new EventEmitter();\n\n /*\n dosageFormList: Array = [];\n colorList: Array = [];\n flavorList: Array = [];\n shapeList: Array = [];\n scoringList: Array = [];\n reviewProductMessage: Array = [];\n */\n productMessage = '';\n username = null;\n expiryDateMessage = '';\n manufactureDateMessage = '';\n\n constructor(\n private productService: ProductService,\n public cvService: ControlledVocabularyService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n this.username = this.authService.getUser();\n // this.getVocabularies();\n }\n\n /*\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('DOSAGE_FORM', 'PROD_CHARACTER_COLOR', 'PROD_CHARACTER_FLAVOR',\n 'PROD_CHARACTER_SHAPE', 'PROD_CHARACTER_FRAGMENTS').subscribe(response => {\n this.dosageFormList = response['DOSAGE_FORM'].list;\n this.colorList = response['PROD_CHARACTER_COLOR'].list;\n this.flavorList = response['PROD_CHARACTER_FLAVOR'].list;\n this.shapeList = response['PROD_CHARACTER_SHAPE'].list;\n this.scoringList = response['PROD_CHARACTER_FRAGMENTS'].list;\n });\n }\n*/\n\n confirmDeleteComponent(prodComponentIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: {message: 'Are you sure you want to delete Manufacture Item Details ' + (prodComponentIndex + 1) + ' data?'}\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductComponent(prodComponentIndex);\n }\n });\n }\n\n deleteProductComponent(prodComponentIndex: number) {\n this.productService.deleteProductComponent(prodComponentIndex);\n }\n\n addNewProductLot(prodComponentIndex: number) {\n this.productService.addNewProductLot(prodComponentIndex);\n }\n\n copyProductComponent() {\n this.productService.copyProductComponent(this.productComponent);\n }\n\n /*\n confirmDeleteProduct(prodIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: 'Are you sure you want to delete Product Details ' + (prodIndex + 1) + ' data?'\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProduct(prodIndex);\n }\n });\n }\n\n deleteProduct(prodIndex: number) {\n this.applicationService.deleteProduct(prodIndex);\n }\n\n\n confirmDeleteProductName(prodIndex: number, prodNameIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: 'Are you sure you want to delete Product Name ' + (prodNameIndex + 1) + ' ?'\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductName(prodIndex, prodNameIndex);\n }\n });\n }\n\n deleteProductName(prodIndex: number, prodNameIndex: number) {\n this.applicationService.deleteProductName(prodIndex, prodNameIndex);\n }\n\n copyProduct(product: any) {\n this.applicationService.copyProduct(product);\n }\n\n confirmReviewProduct(prodIndex: number) {\n if (this.application.applicationProductList[prodIndex].reviewDate) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: 'Are you sure you want to overwrite Reviewed By and Review Date?'\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.reviewProduct(prodIndex);\n }\n });\n } else {\n this.reviewProduct(prodIndex);\n }\n }\n\n reviewProduct(prodIndex: number) {\n this.applicationService.getCurrentDate().subscribe(response => {\n if (response) {\n this.application.applicationProductList[prodIndex].reviewDate = response.date;\n this.application.applicationProductList[prodIndex].reviewedBy = this.username;\n }\n });\n }\n\n addNewIngredient(prodIndex: number) {\n this.applicationService.addNewIngredient(prodIndex);\n }\n*/\n\nexpiryDateMessageOutChange($event) {\n this.expiryDateMessage = $event;\n this.expiryDateMessageOut.emit(this.expiryDateMessage);\n}\n\nmanufactureDateMessageOutChange($event) {\n this.manufactureDateMessage = $event;\n this.manufactureDateMessageOut.emit(this.manufactureDateMessage);\n}\n\n}\n","\n
        \n \n   \n \n \n          \n \n \n Created By: {{ingredient.createdBy}}   \n {{ingredient.createDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{ingredient.modifiedBy}}   \n {{ingredient.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n \n \n
        \n\n\n\n
        \n Ingredient Details {{prodIngredientIndex + 1}}\n \n\n
        \n \n
        \n
        \n \n \n\n
        \n {{ingredientNameMessage}}\n
        \n\n \n
        \n
        \n {{ingredientName}}\n
        \n \n
        \n {{active}} (Active Moiety)\n
        \n
        \n
        \n {{ingredient.substanceKey}}\n ({{ingredient.substanceKeyType}})\n
        \n \n
        \n
        \n
        \n
        \n\n \n
        \n
        \n \n \n\n
        \n {{basisOfStrengthMessage}}\n
        \n\n \n
        \n
        \n {{basisOfStrengthIngredientName}}\n
        \n \n
        \n {{active}} (Active Moiety)\n
        \n
        \n\n
        \n {{ingredient.basisOfStrengthSubstanceKey}}\n ({{ingredient.basisOfStrengthSubstanceKeyType}})\n
        \n \n
        \n
        \n
        \n
        \n\n \n \n \n\n
        \n
        \n \n \n {{data.value}}\n \n  \n \n
        \n\n \n \n\n
        \n\n
        \n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n\n \n
        \n\n
        \n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n
        \n\n
        \n
        ","import { Component, OnInit, Input, AfterViewInit, OnDestroy } from '@angular/core';\nimport { ViewEncapsulation, Output, EventEmitter, ViewChildren, QueryList } from '@angular/core';\nimport { ProductService } from '../../service/product.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '@gsrs-core/controlled-vocabulary/vocabulary.model';\nimport { ProductIngredient, ValidationMessage } from '../../model/product.model';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { JsonDialogFdaComponent } from '../../../json-dialog-fda/json-dialog-fda.component';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\nimport { SubstanceSearchSelectorComponent } from '../../../substance-search-select/substance-search-selector.component';\nimport { SubstanceRelated, SubstanceSummary } from '@gsrs-core/substance';\nimport { GeneralService } from '../../../service/general.service';\nimport { ConfigService } from '@gsrs-core/config/config.service';\n\n@Component({\n selector: 'app-product-ingredient-form',\n templateUrl: './product-ingredient-form.component.html',\n styleUrls: ['./product-ingredient-form.component.scss']\n})\nexport class ProductIngredientFormComponent implements OnInit {\n\n @ViewChildren('checkBox') checkBox: QueryList;\n @Input() ingredient: ProductIngredient;\n @Input() totalIngredient: number;\n @Input() prodIngredientIndex: number;\n @Input() prodComponentIndex: number;\n @Input() prodLotIndex: number;\n\n /*\n ingredientTypeList: Array = [];\n unitList: Array = [];\n gradeList: Array = [];\n releaseCharacteristicList: Array = [];\n */\n username = null;\n searchValue: string;\n substanceUuid: string;\n ingredientName: string;\n basisOfStrengthSubstanceUuid: string;\n basisOfStrengthIngredientName: string;\n\n substanceKeyOld: string;\n basisofStrengthSubstanceKeyOld: string;\n ingredientNameMessage = '';\n basisOfStrengthMessage = '';\n relationship: any;\n ingredientNameActiveMoiety = new Array();\n basisOfStrengthActiveMoiety = new Array();\n selectedIngredientLocation = new Array();\n substanceKeyTypeConfig = '';\n private subscriptions: Array = [];\n\n locationList: Array = [\n { value: 'Whole', checked: false },\n { value: 'Core', checked: false },\n { value: 'Coating', checked: false },\n { value: 'Other', checked: false }\n ];\n\n constructor(\n public generalService: GeneralService,\n private productService: ProductService,\n public cvService: ControlledVocabularyService,\n private authService: AuthService,\n private configService: ConfigService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n // Get Substance Linking Key Details from Config file\n // this.substanceConfig = this.configService.configData.substance;\n // this.ingredient.substanceKeyType = this.substanceConfig.linking.keyType.default;\n // this.ingredient.basisOfStrengthSubstanceKeyType = this.substanceConfig.linking.keyType.default;\n\n setTimeout(() => {\n this.loadIngredientLocation();\n this.username = this.authService.getUser();\n\n this.substanceKeyOld = this.ingredient.substanceKey;\n this.basisofStrengthSubstanceKeyOld = this.ingredient.basisOfStrengthSubstanceKey;\n\n // Get Substance Linking Key Type from Config\n this.substanceKeyTypeConfig = this.generalService.getSubstanceKeyType();\n if (!this.substanceKeyTypeConfig) {\n alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add Ingredient Name');\n }\n this.getSubstanceBySubstanceKey();\n }, 600);\n\n }\n\n loadIngredientLocation() {\n if ((this.ingredient.ingredientLocation) && (this.ingredient.ingredientLocation.length > 0)) {\n const arrLoc = this.ingredient.ingredientLocation.split(',');\n for (let i = 0; i < this.locationList.length; i++) {\n for (let j = 0; j < arrLoc.length; j++) {\n if (this.locationList[i].value === arrLoc[j]) {\n this.locationList[i].checked = true;\n }\n }\n }\n }\n }\n\n setSelectedIngredientLocation(data: any, checkbox) {\n let selStr = '';\n const selected = [];\n const checked = this.checkBox.filter(checkbox1 => checkbox1.checked);\n checked.forEach(data1 => {\n selected.push(data1.value);\n });\n if (selected.length > 0) {\n selStr = selected.join(',');\n this.ingredient.ingredientLocation = selStr;\n }\n }\n\n confirmDeleteProductIngredient(prodComponentIndex: number, prodLotIndex: number, prodIngredientIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Product Ingredient Details ' + (prodIngredientIndex + 1) + ' data?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductIngredient(prodComponentIndex, prodLotIndex, prodIngredientIndex);\n }\n });\n }\n\n deleteProductIngredient(prodComponentIndex: number, prodLotIndex: number, prodIngredientIndex: number) {\n this.productService.deleteProductIngredient(prodComponentIndex, prodLotIndex, prodIngredientIndex);\n }\n\n copyProductIngredient() {\n this.productService.copyProductIngredient(this.ingredient, this.prodComponentIndex, this.prodLotIndex);\n }\n\n confirmDeleteIngredientName() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Ingredient Name ' + (this.prodIngredientIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteIngredientName();\n }\n });\n }\n\n deleteIngredientName() {\n this.ingredientNameMessage = '';\n if (this.ingredient.id != null) {\n // Display this message if deleting existing Ingredient Name which is in database.\n if (this.substanceKeyOld != null) {\n this.ingredientNameMessage = 'Click Validate and Submit button to delete ' + this.ingredientName;\n }\n }\n this.substanceUuid = null;\n this.ingredientName = null;\n this.ingredient.substanceKey = null;\n this.ingredient.substanceKeyType = null;\n }\n\n confirmDeleteBasisOfStrength() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Basis of Strength ' + (this.prodIngredientIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteBasisOfStrength();\n }\n });\n }\n\n deleteBasisOfStrength() {\n this.basisOfStrengthMessage = '';\n if (this.ingredient.id != null) {\n // Display this message if deleting existing Basis of Strength which is in database.\n if (this.basisofStrengthSubstanceKeyOld != null) {\n this.basisOfStrengthMessage = 'Click Validate and Submit button to delete ' + this.basisOfStrengthIngredientName;\n }\n }\n this.basisOfStrengthSubstanceUuid = null;\n this.basisOfStrengthIngredientName = null;\n this.ingredient.basisOfStrengthSubstanceKey = null;\n this.ingredient.basisOfStrengthSubstanceKeyType = null;\n }\n\n getSubstanceCode(substanceUuid: string, type: string) {\n const subCodeSubscription = this.generalService.getSubstanceCodesBySubstanceUuid(substanceUuid).subscribe(response => {\n if (response) {\n const substanceCodes = response;\n for (let index = 0; index < substanceCodes.length; index++) {\n if (substanceCodes[index].codeSystem) {\n if ((substanceCodes[index].codeSystem === this.substanceKeyTypeConfig) &&\n (substanceCodes[index].type === 'PRIMARY')) {\n\n if (type) {\n if (type === 'ingredientname') {\n this.ingredient.substanceKey = substanceCodes[index].code;\n this.ingredient.substanceKeyType = this.substanceKeyTypeConfig;\n\n if (!this.ingredient.basisOfStrengthSubstanceKey) {\n this.ingredient.basisOfStrengthSubstanceKey = substanceCodes[index].code;\n this.ingredient.basisOfStrengthSubstanceKeyType = this.substanceKeyTypeConfig;\n }\n }\n\n if (type === 'basisofstrength') {\n this.ingredient.basisOfStrengthSubstanceKey = substanceCodes[index].code;\n this.ingredient.basisOfStrengthSubstanceKeyType = this.substanceKeyTypeConfig;\n }\n }\n break;\n }\n }\n }\n }\n });\n this.subscriptions.push(subCodeSubscription);\n }\n\n getSubstanceBySubstanceKey() {\n if (this.ingredient != null) {\n // Get Substance Details, uuid, approval_id, substance name\n if (this.ingredient.substanceKey) {\n const subSubscription = this.generalService.getSubstanceByAnyId(this.ingredient.substanceKey).subscribe(response => {\n if (response) {\n if (response.uuid) {\n this.substanceUuid = response.uuid;\n this.ingredientName = response._name;\n\n // Get Active Moiety\n this.getActiveMoiety(this.substanceUuid, 'ingredientname');\n }\n }\n });\n this.subscriptions.push(subSubscription);\n }\n\n // Get Basis of Strength\n if (this.ingredient.basisOfStrengthSubstanceKey) {\n this.generalService.getSubstanceByAnyId(this.ingredient.basisOfStrengthSubstanceKey).subscribe(response => {\n if (response) {\n if (response.uuid) {\n this.basisOfStrengthSubstanceUuid = response.uuid;\n this.basisOfStrengthIngredientName = response._name;\n\n // Get Active Moiety\n this.getActiveMoiety(this.basisOfStrengthSubstanceUuid, 'basisofstrength');\n }\n }\n });\n }\n }\n }\n\n getActiveMoiety(substanceUuid: string, type: string) {\n if (substanceUuid != null) {\n // Get Active Moiety - Relationship\n this.generalService.getSubstanceRelationships(substanceUuid).subscribe(responseRel => {\n if (responseRel) {\n if (responseRel && responseRel.length > 0) {\n for (let i = 0; i < responseRel.length; i++) {\n const relType = responseRel[i].type;\n // if type is ACTIVE MOIETY, get Relationship Name\n if (relType && relType === 'ACTIVE MOIETY') {\n if (responseRel[i].relatedSubstance.name) {\n if ((type != null) && (type === 'ingredientname')) {\n this.ingredientNameActiveMoiety.push(responseRel[i].relatedSubstance.name);\n } else {\n this.basisOfStrengthActiveMoiety.push(responseRel[i].relatedSubstance.name);\n }\n }\n break;\n }\n }\n }\n }\n });\n }\n }\n\n ingredientNameUpdated(substance: SubstanceSummary): void {\n this.ingredientNameMessage = '';\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n if (relatedSubstance != null) {\n if (relatedSubstance.refuuid != null) {\n this.ingredientNameMessage = '';\n this.ingredientNameActiveMoiety.length = 0;\n\n if (!this.substanceKeyTypeConfig) {\n alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add Ingredient Name');\n this.ingredientNameMessage = 'Add Substance Key Type in Config';\n } else {\n this.getSubstanceCode(relatedSubstance.refuuid, 'ingredientname');\n\n this.substanceUuid = relatedSubstance.refuuid;\n this.ingredientName = relatedSubstance.name;\n\n // Clear the Validation Message\n this.ingredientNameMessage = '';\n this.ingredient.$$ingredientNameValidation = '';\n\n // Populate Basis of Strength if it is empty/null\n if (!this.ingredient.basisOfStrengthSubstanceKey) {\n\n // Clear the Validation Message\n this.basisOfStrengthMessage = '';\n this.ingredient.$$basisOfStrengthValidation = '';\n\n this.basisOfStrengthIngredientName = relatedSubstance.name;\n this.basisOfStrengthSubstanceUuid = relatedSubstance.refuuid;\n // Get Active Moiety\n this.getActiveMoiety(this.basisOfStrengthSubstanceUuid, 'basisofstrength');\n }\n\n // Get Active Moiety\n this.getActiveMoiety(this.substanceUuid, 'ingredientname');\n }\n }\n }\n } else {\n this.substanceUuid = null;\n }\n }\n\n basisOfStrengthUpdated(substance: SubstanceSummary): void {\n if (substance != null) {\n const relatedSubstance: SubstanceRelated = {\n refPname: substance._name,\n name: substance._name,\n refuuid: substance.uuid,\n substanceClass: 'reference',\n approvalID: substance.approvalID\n };\n\n if (relatedSubstance != null) {\n if (relatedSubstance.refuuid != null) {\n this.basisOfStrengthMessage = '';\n this.basisOfStrengthActiveMoiety.length = 0; // Clear Array\n\n if (!this.substanceKeyTypeConfig) {\n alert('There is no Substance configuration found in config file: substance.linking.keyType.default. Unable to add Basis of Strength');\n this.basisOfStrengthMessage = 'Add Substance Key Type in Config';\n } else {\n this.getSubstanceCode(relatedSubstance.refuuid, 'basisofstrength');\n\n this.basisOfStrengthSubstanceUuid = relatedSubstance.refuuid;\n this.basisOfStrengthIngredientName = relatedSubstance.name;\n\n // Clear the Validation Message\n this.basisOfStrengthMessage = '';\n this.ingredient.$$basisOfStrengthValidation = '';\n\n // Get Active Moiety\n this.getActiveMoiety(this.basisOfStrengthSubstanceUuid, 'basisofstrength');\n }\n }\n }\n } else {\n this.basisOfStrengthSubstanceUuid = null;\n }\n }\n\n confirmReviewIngredient() {\n if (this.ingredient.reviewDate) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to overwrite Reviewed By and Review Date?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.reviewIngredient();\n }\n });\n } else {\n this.reviewIngredient();\n }\n }\n\n reviewIngredient() {\n const currentDate = this.generalService.getCurrentDate();\n this.ingredient.reviewDate = currentDate;\n this.ingredient.reviewedBy = this.username;\n }\n\n showMessageIngredientName(message: string): void {\n this.ingredientNameMessage = message;\n // Send this to Application form for Validation\n // This message is displayed when 'No Substance Found' is passed from Substance Search Selector\n this.ingredient.$$ingredientNameValidation = 'Ingredient Name: ' + this.ingredientNameMessage;\n }\n\n showMessageBasisOfStrength(message: string): void {\n this.basisOfStrengthMessage = message;\n // Send this to Application form for Validation\n // This message is displayed when 'No Substance Found' is passed from Substance Search Selector\n this.ingredient.$$basisOfStrengthValidation = 'Basis of Strength: ' + this.basisOfStrengthMessage;\n }\n\n searchValueOutChange(searchValue: string) {\n this.searchValue = searchValue;\n // SearchValue is empty, clear the message\n if (!this.searchValue) {\n this.ingredientNameMessage = '';\n this.ingredient.$$ingredientNameValidation = '';\n }\n // if searchValue is not empty and there is no Ingredient Name selected, display error message\n if ((this.searchValue) && (this.substanceUuid === null || this.substanceUuid === undefined)) {\n this.ingredient.$$ingredientNameValidation = 'Ingredient Name: No substances found for ' + this.searchValue;\n }\n }\n\n searchValueBasisOutChange(searchValue: string) {\n this.searchValue = searchValue;\n if (!this.searchValue) {\n this.basisOfStrengthMessage = '';\n this.ingredient.$$basisOfStrengthValidation = '';\n }\n if ((this.searchValue) && (this.basisOfStrengthSubstanceUuid === null || this.basisOfStrengthSubstanceUuid === undefined)) {\n this.ingredient.$$basisOfStrengthValidation = 'Basis of Strength: No substances found for ' + this.searchValue;\n }\n }\n}\n","\n
        \n \n   \n \n \n
        \n\n\n\n
        \n Lot Details {{prodLotIndex + 1}}\n \n\n
        \n \n \n \n \n \n {{expiryDateMessage}}\n \n \n \n {{manufactureDateMessage}}\n \n \n \n \n
        \n\n \n\n
        \n
        \n
        \n
        \n \n INGREDIENT \n \n           \n \n

        \n\n
        \n \n \n
        \n
        \n\n \n\n\n
        ","import { Component, OnInit, Input, AfterViewInit, OnDestroy, ViewEncapsulation, Output, EventEmitter } from '@angular/core';\nimport { ProductService } from '../../service/product.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary/controlled-vocabulary.service';\nimport { VocabularyTerm } from '@gsrs-core/controlled-vocabulary/vocabulary.model';\nimport { ProductLot, ValidationMessage } from '../../model/product.model';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { JsonDialogFdaComponent } from '../../../json-dialog-fda/json-dialog-fda.component';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-product-lot-form',\n templateUrl: './product-lot-form.component.html',\n styleUrls: ['./product-lot-form.component.scss']\n})\nexport class ProductLotFormComponent implements OnInit {\n\n @Input() productLot: ProductLot;\n @Input() totalLot: number;\n @Input() prodLotIndex: number;\n @Input() prodComponentIndex: number;\n @Output() expiryDateMessageOut = new EventEmitter();\n @Output() manufactureDateMessageOut = new EventEmitter();\n\n dosageFormList: Array = [];\n colorList: Array = [];\n flavorList: Array = [];\n shapeList: Array = [];\n scoringList: Array = [];\n reviewProductMessage: Array = [];\n productMessage = '';\n username = null;\n expiryDateMessage = '';\n manufactureDateMessage = '';\n\n constructor(\n private productService: ProductService,\n public cvService: ControlledVocabularyService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n this.username = this.authService.getUser();\n // this.getVocabularies();\n }\n\n /*\n getVocabularies(): void {\n this.cvService.getDomainVocabulary('DOSAGE_FORM', 'PROD_CHARACTER_COLOR', 'PROD_CHARACTER_FLAVOR',\n 'PROD_CHARACTER_SHAPE', 'PROD_CHARACTER_FRAGMENTS').subscribe(response => {\n this.dosageFormList = response['DOSAGE_FORM'].list;\n this.colorList = response['PROD_CHARACTER_COLOR'].list;\n this.flavorList = response['PROD_CHARACTER_FLAVOR'].list;\n this.shapeList = response['PROD_CHARACTER_SHAPE'].list;\n this.scoringList = response['PROD_CHARACTER_FRAGMENTS'].list;\n });\n }\n*/\n confirmDeleteProductLot(prodComponentIndex: number, prodLotIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: {message: 'Are you sure you want to delete Product Lot Details ' + (prodLotIndex + 1) + ' data?'}\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteProductLot(prodComponentIndex, prodLotIndex);\n }\n });\n }\n\n deleteProductLot(prodComponentIndex: number, prodLotIndex: number) {\n this.productService.deleteProductLot(prodComponentIndex, prodLotIndex);\n }\n\n addNewProductIngredient(prodComponentIndex: number, prodLotIndex: number) {\n this.productService.addNewProductIngredient(prodComponentIndex, prodLotIndex);\n }\n\n copyProductLot() {\n this.productService.copyProductLot(this.productLot, this.prodComponentIndex);\n }\n\n validateExpiryDate() {\n this.expiryDateMessage = '';\n const isValid = this.validateDate(this.productLot.expiryDate);\n if (isValid === false) {\n this.expiryDateMessage = 'Expiry Date is invalid';\n }\n this.expiryDateMessageOut.emit(this.expiryDateMessage);\n }\n\n validateManufactureDate() {\n this.manufactureDateMessage = '';\n const isValid = this.validateDate(this.productLot.manufactureDate);\n if (isValid === false) {\n this.manufactureDateMessage = 'Manufacture Date is invalid';\n }\n this.manufactureDateMessageOut.emit(this.manufactureDateMessage);\n }\n\n validateDate(dateinput: any): boolean {\n let isValid = true;\n if ((dateinput !== null) && (dateinput.length > 0)) {\n if ((dateinput.length < 8) || (dateinput.length > 10)) {\n return false;\n }\n const split = dateinput.split('/');\n if (split.length !== 3 || (split[0].length < 1 || split[0].length > 2) ||\n (split[1].length < 1 || split[1].length > 2) || split[2].length !== 4) {\n return false;\n }\n if (split.length === 3) {\n const comstring = split[0] + split[1] + split[2];\n for (let i = 0; i < split.length; i++) {\n const valid = this.isNumber(split[i]);\n if (valid === false) {\n isValid = false;\n break;\n }\n }\n }\n }\n return isValid;\n }\n\n isNumber(str: string): boolean {\n if ((str !== null) && (str !== '')) {\n const num = Number(str);\n const nan = isNaN(num);\n return !nan;\n }\n return false;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ProductTextSearchComponent } from './product-text-search.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatAutocompleteModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule\n ],\n declarations: [\n ProductTextSearchComponent\n ],\n exports: [\n ProductTextSearchComponent\n ]\n})\nexport class ProductTextSearchModule { }\n","export const productSearchSortValues = [\n {\n 'value': 'default',\n 'display': 'Relevance'\n },\n {\n 'value': '^root_productNDC',\n 'display': 'Product ID, Ascending',\n 'displayedColumns': 'productNDC',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productNDC',\n 'display': 'Product ID, Descending',\n 'displayedColumns': 'productNDC',\n 'direction': 'desc'\n },\n {\n 'value': '^root_productType',\n 'display': 'Product Type, Ascending',\n 'displayedColumns': 'productNameType',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productType',\n 'display': 'Product Type, Descending',\n 'displayedColumns': 'productNameType',\n 'direction': 'desc'\n },\n {\n 'value': '^root_status',\n 'display': 'Status, Ascending',\n 'displayedColumns': 'status',\n 'direction': 'asc'\n },\n {\n 'value': '$root_status',\n 'display': 'Status, Descending',\n 'displayedColumns': 'status',\n 'direction': 'desc'\n },\n {\n 'value': '^Ingredient Name',\n 'display': 'Ingredient Name, A-Z',\n 'displayedColumns': 'ingredientName',\n 'direction': 'asc'\n },\n {\n 'value': '$Ingredient Name',\n 'display': 'Ingredient Name, Z-A',\n 'displayedColumns': 'ingredientName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_productIngredientAllList_ingredientType',\n 'display': 'Ingredient Type, A-Z',\n 'displayedColumns': 'ingredientType',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productIngredientAllList_ingredientType',\n 'display': 'Ingredient Type, Z-A',\n 'displayedColumns': 'ingredientType',\n 'direction': 'desc'\n },\n {\n 'value': '^root_productNameAllList_productName',\n 'display': 'Dosage Form, A-Z',\n 'displayedColumns': 'productName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productNameAllList_productName',\n 'display': 'Dosage Form, Z-A',\n 'displayedColumns': 'productName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_productIngredientAllList_dosageFormName',\n 'display': 'Dosage Form, A-Z',\n 'displayedColumns': 'dosageName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productIngredientAllList_dosageFormName',\n 'display': 'Dosage Form, Z-A',\n 'displayedColumns': 'dosageName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_productCompanyAllList_labelerName',\n 'display': 'Labeler Name, A-Z',\n 'displayedColumns': 'labelerName',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productCompanyAllList_labelerName',\n 'display': 'Labeler Name, Z-A',\n 'displayedColumns': 'labelerName',\n 'direction': 'desc'\n },\n {\n 'value': '^root_productCompanyAllList_countryWithoutCode',\n 'display': 'Company Country, A-Z',\n 'displayedColumns': 'country',\n 'direction': 'asc'\n },\n {\n 'value': '$root_productCompanyAllList_countryWithoutCode',\n 'display': 'Company Country, Z-A',\n 'displayedColumns': 'country',\n 'direction': 'desc'\n },\n {\n 'value': '^root_appTypeNumber',\n 'display': 'Application Type Number, A-Z',\n 'displayedColumns': 'applicationNumber',\n 'direction': 'asc'\n },\n {\n 'value': '$root_appTypeNumber',\n 'display': 'Application Type Number, Z-A',\n 'displayedColumns': 'applicationNumber',\n 'direction': 'desc'\n },\n {\n 'value': '^root_creationDate',\n 'display': 'Oldest Creation'\n },\n {\n 'value': '$root_creationDate',\n 'display': 'Newest Creation'\n },\n {\n 'value': '^root_lastModifiedDate',\n 'display': 'Oldest Change'\n },\n {\n 'value': '$root_lastModifiedDate',\n 'display': 'Newest Change'\n }\n];\n","
        \n
        \n \n \n {{hintMessage}}\n {{errorMessage}}\n \n
        \n
        {{field['display']}}
        \n \n
        {{suggestion.key}}
        \n
        \n
        \n
        \n      
        \n
        \n \n \n \n
        \n
        \n","import { Component, OnInit, ElementRef, AfterViewInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { MatAutocompleteSelectedEvent, MatAutocomplete } from '@angular/material/autocomplete';\nimport { debounceTime, distinctUntilChanged, switchMap, take } from 'rxjs/operators';\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils/substance-suggestions-group.model';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics/google-analytics.service';\nimport { ConfigService } from '@gsrs-core/config';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { ProductService } from '../service/product.service';\n\n@Component({\n selector: 'app-product-text-search',\n templateUrl: './product-text-search.component.html',\n styleUrls: ['./product-text-search.component.scss']\n})\n\nexport class ProductTextSearchComponent implements OnInit, AfterViewInit, OnDestroy {\n searchControl = new FormControl();\n substanceSuggestionsGroup: SubstanceSuggestionsGroup;\n suggestionsFields: Array;\n matOpen = true;\n private testElem: HTMLElement;\n private searchContainerElement: HTMLElement;\n private query: string;\n @Input() eventCategory: string;\n @Input() styling?: string;\n @Output() searchPerformed = new EventEmitter();\n @Output() searchValueOut = new EventEmitter();\n @Input() placeholder = 'Search';\n @Input() hintMessage = '';\n private privateErrorMessage = '';\n @Output() opened = new EventEmitter();\n @Output() closed = new EventEmitter();\n @Input() source?: string;\n private CasDisplay = 'CAS';\n codeSystemVocab?: any;\n\n constructor(\n public productService: ProductService,\n private element: ElementRef,\n public gaService: GoogleAnalyticsService,\n public configService: ConfigService,\n private cvService: ControlledVocabularyService\n ) { }\n\n ngOnInit() {\n this.searchControl.valueChanges.pipe(\n debounceTime(500),\n distinctUntilChanged(),\n switchMap(searchValue => {\n this.query = searchValue;\n this.searchValueOut.emit(this.query);\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchValue || 'search term';\n this.gaService.sendEvent(eventCategory, 'search:enter-term', eventLabel);\n return this.productService.getProductSearchSuggestions(searchValue.toUpperCase());\n })\n ).subscribe((response: SubstanceSuggestionsGroup) => {\n this.substanceSuggestionsGroup = response;\n let showTypes = ['Active_Moiety', 'Dosage_Form_Name', 'Marketing_Category_Name', 'Ingredient_Approval_ID', 'Product_Name', 'Ingredient_Type', 'Company_Country', 'Route_of_Admin', 'Labeler_Name', 'Application_Type_Number', 'Ingredient_Name', 'Nonproprietary_Name', 'Product_Type'];\n /* if(this.configService && this.configService.configData && this.configService.configData.typeaheadFields) {\n showTypes = this.configService.configData.typeaheadFields;\n } */\n this.suggestionsFields = Object.keys(this.substanceSuggestionsGroup).filter(function (item) {\n return showTypes.indexOf(item) > -1;\n });\n // this.suggestionsFields.sort(function (x, y) { return x === 'Display_Name' ? -1 : y === 'Display_Name' ? 1 : 0; });\n this.suggestionsFields.forEach((value, index) => {\n if (value === 'Active_Moiety') {\n this.suggestionsFields[index] = { value: 'Active_Moiety', display: 'Active Moiety' };\n } else if (value === 'Dosage_Form_Name') {\n this.suggestionsFields[index] = { value: 'Dosage_Form_Name', display: 'Dosage Form Name' };\n } else if (value === 'Marketing_Category_Name') {\n this.suggestionsFields[index] = { value: 'Marketing_Category_Name', display: 'Marketing Category Name' };\n } else if (value === 'Ingredient_Name') {\n this.suggestionsFields[index] = { value: 'Ingredient_Name', display: 'Ingredient Name' };\n } else if (value === 'Ingredient_Approval_ID') {\n this.suggestionsFields[index] = { value: 'Ingredient_Approval_ID', display: 'Ingredient Approval ID' };\n } else if (value === 'Product_Name') {\n this.suggestionsFields[index] = { value: 'Product_Name', display: 'Product Name' };\n } else if (value === 'Ingredient_Type') {\n this.suggestionsFields[index] = { value: 'Ingredient_Type', display: 'Ingredient Type' };\n } else if (value === 'Company_Country') {\n this.suggestionsFields[index] = { value: 'Company_Country', display: 'Company Country' };\n } else if (value === 'Route_of_Admin') {\n this.suggestionsFields[index] = { value: 'Route_of_Admin', display: 'Route of Administration' };\n } else if (value === 'Labeler_Name') {\n this.suggestionsFields[index] = { value: 'Labeler_Name', display: 'Labeler Name' };\n } else if (value === 'Application_Type_Number') {\n this.suggestionsFields[index] = { value: 'Application_Type_Number', display: 'Application Type Number' };\n } else if (value === 'Ingredient_Name') {\n this.suggestionsFields[index] = { value: 'Ingredient_Name', display: 'Ingredient Name' };\n } else if (value === 'Nonproprietary_Name') {\n this.suggestionsFields[index] = { value: 'Nonproprietary_Name', display: 'Nonproprietary Name' };\n } else if (value === 'Product_Type') {\n this.suggestionsFields[index] = { value: 'Product_Type', display: 'Product Type' };\n } else {\n this.suggestionsFields[index] = { value: value, display: value };\n }\n });\n\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\n this.matOpen = true;\n this.opened.emit();\n }\n\n }, error => {\n this.gaService.sendException('search suggestion error from API call');\n console.log(error);\n });\n\n }\n\n @Input()\n set searchValue(searchValue: string) {\n this.searchControl.setValue(searchValue);\n }\n\n @Input()\n set errorMessage(errorMessage: string) {\n this.searchControl.markAsTouched();\n if (errorMessage) {\n this.searchControl.setErrors({\n error: true\n });\n } else {\n this.searchControl.setErrors(null);\n }\n this.privateErrorMessage = errorMessage;\n }\n\n get errorMessage(): string {\n return this.privateErrorMessage;\n }\n\n ngOnDestroy() { }\n\n autoCompleteClosed(): void {\n this.matOpen = false;\n this.closed.emit();\n }\n\n focused(): void {\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\n this.matOpen = true;\n this.opened.emit();\n }\n }\n\n ngAfterViewInit() {\n this.searchContainerElement = this.element.nativeElement.querySelector('.search-container');\n }\n\n substanceSearchOptionSelected(event?: MatAutocompleteSelectedEvent) {\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && event.option.value || 'auto-complete option';\n this.gaService.sendEvent(eventCategory, 'select:auto-complete', eventLabel);\n let searchTerm = event.option.value;\n\n searchTerm = this.topSearchClean(searchTerm);\n\n this.searchPerformed.emit(searchTerm);\n }\n\n highlight(field: string) {\n if (!this.query) {\n return field;\n } else {\n if (this.matOpen) {\n this.testElem = document.querySelector('#overflow') as HTMLElement;\n if (this.testElem != null) {\n this.testElem.innerText = field;\n if (this.testElem.scrollWidth > this.testElem.offsetWidth) {\n const pos = field.toUpperCase().indexOf(this.query.toUpperCase());\n field = '...' + field.substring(pos - 15, field.length);\n }\n }\n }\n const query = this.query.replace(/(?=[() ])/g, '\\\\');\n return field.replace(new RegExp(query, 'gi'), match => {\n return '' + match + '';\n });\n }\n }\n\n processSubstanceSearch() {\n let searchTerm = this.searchControl.value;\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchTerm || 'search term option';\n this.gaService.sendEvent(eventCategory, 'search:submit', eventLabel);\n\n // Clean up searchTerm\n searchTerm = this.topSearchClean(searchTerm);\n\n this.searchPerformed.emit(searchTerm);\n }\n\n activateSearch(): void {\n if (this.source) {\n this.searchContainerElement.classList.add('active-' + this.source);\n } else {\n this.searchContainerElement.classList.add('active-search');\n }\n }\n\n deactivateSearch(): void {\n this.searchContainerElement.classList.add('deactivate-search');\n setTimeout(() => {\n if (this.source) {\n\n this.searchContainerElement.classList.remove('active-' + this.source);\n this.searchContainerElement.classList.remove('deactivate-search');\n } else {\n this.searchContainerElement.classList.remove('active-search');\n this.searchContainerElement.classList.remove('deactivate-search');\n }\n }, 300);\n }\n\n topSearchClean(searchTerm): string {\n if (searchTerm && searchTerm.length > 0) {\n searchTerm = searchTerm.trim();\n if (searchTerm.indexOf('\"') < 0 && searchTerm.indexOf('*') < 0 && searchTerm.indexOf(':') < 0\n && searchTerm.indexOf(' AND ') < 0 && searchTerm.indexOf(' OR ') < 0) {\n // Put slash in front of brackets, for example:\n // 1. [INN] to \\[INN\\]\n // 2. IBUPROFEN [INN] to IBUPROFEN \\[INN\\]\n // 3. *[INN] to *\\[INN\\]\n // 4. [INN]* to \\[INN\\]*\n // 5. \"[INN]\" to \"\\[INN\\]\"\n // 6. \"IBUPROFEN [INN]\" to \"IBUPROFEN \\[INN\\]\"\n // 7. \"*[INN]\" to \"*\\[INN\\]\"\n // 8. [INN]* to \\[INN\\]*\n searchTerm = '\"' + searchTerm\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\n + '\"';\n } else if (searchTerm.indexOf(':') < 0) {\n searchTerm = searchTerm\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\n }\n this.searchControl.setValue(searchTerm);\n }\n return searchTerm;\n }\n}\n\n","


        \n\n\n \n \n \n \n\n \n \n
        \n \n \n
        0; else filterParameters\">\n
        \n
        \n
        \n Would you like to restrict this search to a field?\n
         \n \n \n \n \n
        \n
        \n
        \n {{matchType == 'WORD' ? 'Contains Match' : 'Exact Match'}}\n
        \n \n
        \n
        \n
        \n
        \n
        \n
        \n
        \n For more options use the Advanced Search\n
        \n
        \n
        \n \n\n \n
        \n
        \n
        \n Search Query: \n {{searchTerm}}\n
        \n
        \n \n \n
        \n
        \n\n \n
        \n
        \n \n \n {{facet.type}}:\n \n \n {{facet.val}}\n \n
        \n
        \n \n
        \n
        \n \n
        \n
        \n\n \n
        \n\n
        \n Browse Products\n
        \n\n \n \n \n \n \n \n \n \n \n\n \n \n Sort By\n \n \n {{option.display}}\n \n \n \n\n \n
        \n \n
        \n\n
        \n \n
        \n \n \n\n
        \n Page: \n \n \n \n of {{lastPage}}\n
        \n
        \n\n
        \n\n
        \n \n \n \n\n \n \n
        \n\n \n
        \n\n \n
        \n
        \n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n\n \n \n \n \n\n \n \n
        Product ID \n \n \n \n
        \n \n \n \n \n \n \n \n
        \n
        \n\n \n \n {{product.productNDC}}\n (NO ID)\n \n   \n \n \n \n \n \n
        Product Name \n
        \n {{prodName.productName}}\n
        \n
        Ingredient Name (Active Ingredient) \n
          \n
          \n
          \n
          \n \n
        1. \n {{ing.substanceName}}\n \n \n
        2. \n
          \n
          \n
          \n \n
        \n
        Labeler Name {{product.labelerName}}\n
        \n {{prodComp.labelerName}}\n
        \n
        Country \n
        \n {{prodComp.countryWithoutCode}}\n
        \n
        Status {{product.status}} Product Type {{product.productType}} Application Number \n \n {{product.appTypeNumber}}\n \n \n \n \n {{product.appTypeNumber}}\n \n \n
        \n\n
        \n
        \n \n\n \n
        \n \n \n
        \n Product ID: \n\n \n \n {{product.productNDC}}\n (NO ID)\n \n \n   \n \n \n \n \n \n \n \n\n    \n \n \n {{product.productNDC}}\n (NO ID)\n \n\n \n \n \n \n \n
        \n\n
        \n Company Country: \n \n \n \n 0\">|\n {{prodComp.countryWithoutCode}}\n \n \n \n
        \n\n
        \n Application: \n \n \n {{product.appTypeNumber}}\n \n \n \n \n {{product.appTypeNumber}}\n \n \n
        \n
        \n\n \n\n
        \n
        \n
        \n Product Name:\n
        \n
        \n
        \n {{prodName.productName}}\n
        \n
        \n
        \n
        \n
        \n Product Type:\n
        \n
        \n {{product.productType}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Nonproprietary Name:\n
        \n
        \n {{product.nonProprietaryName}}\n
        \n
        \n
        \n
        \n Route of Admin:\n
        \n
        \n {{product.routeName}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Labeler Name (DUNS):\n
        \n
        \n
        \n {{prodComp.labelerName}}\n  ({{prodComp.labelerDuns}})\n
        \n
        \n
        \n
        \n
        \n City, State, Country:\n
        \n
        \n
        \n {{prodComp.city}}\n ,\n {{prodComp.state}}\n ,\n {{prodComp.countryWithoutCode}}\n
        \n
        \n
        \n
        \n\n
        \n
        \n
        \n Dosage Form:\n
        \n
        \n
        \n \n {{ing.dosageFormName}}\n \n
        \n
        \n
        \n
        \n
        \n Status:\n
        \n
        \n {{product.status}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Create By:\n
        \n
        \n {{product.createdBy}}\n
        \n
        \n
        \n
        \n Edited By:\n
        \n
        \n {{product.modifiedBy}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Create Date:\n
        \n
        \n {{product.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
        \n
        \n
        \n
        \n Edit Date:\n
        \n
        \n {{product.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
        \n
        \n
        \n\n
        \n
        \n
        \n Substance Name (Active):\n
        \n
        \n\n \n
          \n\n
          \n\n \n \n\n \n
        1. \n {{prodIngred.substanceName}}\n \n \n
        2. \n
          \n\n
          \n
          \n\n
          \n
        \n\n
        \n
        \n\n\n
        \n
        \n Substance Name (Inactive):\n
        \n
        \n \n
          \n
          \n\n \n
          \n\n \n
          \n\n
          \n
        1. \n {{prodIngred.substanceName}}\n \n \n
        2. \n
          \n\n \n ({{ prodIngred.ingredientType }})\n \n
          \n
          \n\n
          \n\n \n \n \n \n \n\n
        \n \n\n
        \n
        \n\n
        \n\n \n\n \n
        \n
        \n\n \n
        \n
        \n \n \n\n
        \n Page: \n \n \n \n of {{lastPage}}\n
        \n
        \n
        \n\n \n \n \n \n\n
    \n \n","import { Component, OnInit, AfterViewInit, OnDestroy, HostListener } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Location, LocationStrategy } from '@angular/common';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport * as _ from 'lodash';\nimport { Sort } from '@angular/material/sort';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { take } from 'rxjs/operators';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { NarrowSearchSuggestion } from '@gsrs-core/utils';\nimport { Facet, FacetsManagerService, FacetUpdateEvent } from '@gsrs-core/facets-manager';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { productSearchSortValues } from './product-search-sort-values';\nimport { ProductAll } from '../model/product.model';\nimport { environment } from '../../../../environments/environment';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ConfigService } from '@gsrs-core/config';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { StructureImageModalComponent, StructureService } from '@gsrs-core/structure';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '../../../../app/core/google-analytics/google-analytics.service';\nimport { ProductService } from '../service/product.service';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\n\n@Component({\n selector: 'app-products-browse',\n templateUrl: './products-browse.component.html',\n styleUrls: ['./products-browse.component.scss']\n})\n\nexport class ProductsBrowseComponent implements OnInit, AfterViewInit, OnDestroy {\n view = 'cards';\n public privateSearchTerm?: string;\n public _searchTerm?: string;\n public products: Array;\n order: string;\n public sortValues = productSearchSortValues;\n hasBackdrop = false;\n pageIndex: number;\n pageSize: number;\n jumpToValue: string;\n totalProducts: number;\n isLoading = true;\n isError = false;\n dataSource = [];\n appType: string;\n appNumber: string;\n clinicalTrialApplication: Array;\n exportUrl: string;\n private isComponentInit = false;\n privateExport = false;\n disableExport = false;\n private overlayContainer: HTMLElement;\n isLoggedIn = false;\n isAdmin = false;\n etag = '';\n environment: any;\n narrowSearchSuggestions?: { [matchType: string]: Array } = {};\n matchTypes?: Array = [];\n narrowSearchSuggestionsCount = 0;\n previousState: Array = [];\n private searchTermHash: number;\n searchValue: string;\n isSearchEditable = false;\n lastPage: number;\n invalidPage = false;\n iconSrcPath = '';\n dailyMedUrl = '';\n ascDescDir = 'desc';\n public displayedColumns: string[] = [\n 'productNDC',\n 'productName',\n 'ingredientName',\n 'labelerName',\n 'country',\n 'status',\n 'productNameType',\n 'applicationNumber'\n ];\n\n // needed for facets\n private privateFacetParams: FacetParam;\n rawFacets: Array;\n private isFacetsParamsInit = false;\n public displayFacets: Array = [];\n private subscriptions: Array = [];\n\n constructor(\n public productService: ProductService,\n private authService: AuthService,\n private facetManagerService: FacetsManagerService,\n public configService: ConfigService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n public gaService: GoogleAnalyticsService,\n private overlayContainerService: OverlayContainer,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private location: Location,\n private locationStrategy: LocationStrategy,\n private sanitizer: DomSanitizer,\n private utilsService: UtilsService,\n private dialog: MatDialog,\n private titleService: Title) { }\n\n @HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if (this.router.url === this.previousState[0]) {\n this.ngOnInit();\n }\n\n }, 50);\n }\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.productService.getProductFacets);\n this.gaService.sendPageView('Browse Products');\n\n this.titleService.setTitle(`P:Browse Products`);\n\n this.pageSize = 10;\n this.pageIndex = 0;\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n /*\n navigationExtras.queryParams['searchTerm'] = this.activatedRoute.snapshot.queryParams['searchTerm'] || '';\n navigationExtras.queryParams['order'] = this.activatedRoute.snapshot.queryParams['order'] || '';\n navigationExtras.queryParams['pageSize'] = this.activatedRoute.snapshot.queryParams['pageSize'] || '10';\n navigationExtras.queryParams['pageIndex'] = this.activatedRoute.snapshot.queryParams['pageIndex'] || '0';\n navigationExtras.queryParams['skip'] = this.activatedRoute.snapshot.queryParams['skip'] || '10';\n */\n\n this.privateSearchTerm = this.activatedRoute.snapshot.queryParams['search'] || '';\n\n if (this.privateSearchTerm) {\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n }\n\n this.order = this.activatedRoute.snapshot.queryParams['order'] || 'default';\n this.pageSize = parseInt(this.activatedRoute.snapshot.queryParams['pageSize'], null) || 10;\n this.pageIndex = parseInt(this.activatedRoute.snapshot.queryParams['pageIndex'], null) || 0;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.isLoggedIn = true;\n }\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\n });\n this.subscriptions.push(authSubscription);\n\n this.iconSrcPath = `${this.configService.environment.baseHref || ''}assets/icons/fda/icon_dailymed.png`;\n this.dailyMedUrl = 'https://dailymed.nlm.nih.gov/dailymed/search.cfm?labeltype=all&query=';\n\n this.isComponentInit = true;\n this.loadComponent();\n\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n private loadComponent(): void {\n if (this.isFacetsParamsInit && this.isComponentInit) {\n this.searchProducts();\n }\n }\n\n searchProducts() {\n this.loadingService.setLoading(true);\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.productService.getProducts(\n this.order,\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.isError = false;\n this.products = pagingResponse.content;\n this.dataSource = this.products;\n this.totalProducts = pagingResponse.total;\n this.etag = pagingResponse.etag;\n\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n // Set Facets from paging response\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n\n // Narrow Suggest Search Begin\n this.narrowSearchSuggestions = {};\n this.matchTypes = [];\n this.narrowSearchSuggestionsCount = 0;\n if (pagingResponse.narrowSearchSuggestions && pagingResponse.narrowSearchSuggestions.length) {\n pagingResponse.narrowSearchSuggestions.forEach(suggestion => {\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n });\n }\n this.matchTypes.sort();\n // Narrow Suggest Search End\n\n // Separate Application Type and Application Number in Product Result.\n this.separateAppTypeNumber();\n\n }, error => {\n console.log('error');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve Products. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n subscription.unsubscribe();\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n setSearchTermValue() {\n this.pageSize = 10;\n this.pageIndex = 0;\n this.searchProducts();\n }\n\n resetSearch() {\n this.pageSize = 10;\n this.pageIndex = 0;\n this.privateSearchTerm = '';\n this.searchProducts();\n }\n\n customPage(event: any): void {\n if (this.validatePageInput(event)) {\n this.invalidPage = false;\n const newpage = Number(event.target.value) - 1;\n this.pageIndex = newpage;\n this.gaService.sendEvent('productsContent', 'select:page-number', 'pager', newpage);\n this.populateUrlQueryParameters();\n this.searchProducts();\n }\n }\n\n validatePageInput(event: any): boolean {\n if (event && event.target) {\n const newpage = Number(event.target.value);\n if (!isNaN(Number(newpage))) {\n if ((Number.isInteger(newpage)) && (newpage <= this.lastPage) && (newpage > 0)) {\n return true;\n }\n }\n }\n return false;\n }\n\n editAdvancedSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'Browse Product search term' :\n `${this.privateSearchTerm}`;\n this.gaService.sendEvent('Application Filtering', 'icon-button:edit-advanced-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n 'g-search-hash': this.searchTermHash\n }\n };\n\n this.router.navigate(['/advanced-search'], navigationExtras);\n }\n\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n this.pageIndex = 0;\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.displayFacets = facetsUpdateEvent.displayFacets;\n if (!this.isFacetsParamsInit) {\n this.isFacetsParamsInit = true;\n this.loadComponent();\n } else {\n this.searchProducts();\n }\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString();\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n // Search Applications\n this.searchProducts();\n }\n return;\n }\n\n updateView(event): void {\n this.view = event.value;\n }\n\n changePage(pageEvent: PageEvent) {\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.pageIndex !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent('productsContent', eventAction, 'pager', eventValue);\n\n this.pageSize = pageEvent.pageSize;\n this.pageIndex = pageEvent.pageIndex;\n this.populateUrlQueryParameters();\n this.searchProducts();\n }\n\n clearSearch(): void {\n\n const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n this.gaService.sendEvent('productFiltering', 'icon-button:clear-search', eventLabel);\n\n this.privateSearchTerm = '';\n this.pageIndex = 0;\n this.pageSize = 10;\n\n this.populateUrlQueryParameters();\n this.searchProducts();\n }\n\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n this.clearSearch();\n\n this.facetManagerService.clearSelections();\n }\n\n populateUrlQueryParameters(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n navigationExtras.queryParams['searchTerm'] = this.privateSearchTerm;\n navigationExtras.queryParams['pageSize'] = this.pageSize;\n navigationExtras.queryParams['pageIndex'] = this.pageIndex;\n navigationExtras.queryParams['skip'] = this.pageIndex * this.pageSize;\n\n this.previousState.push(this.router.url);\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n get searchTerm(): string {\n return this.privateSearchTerm;\n }\n\n get facetParams(): FacetParam | { showAllMatchOption?: boolean } {\n return this.privateFacetParams;\n }\n\n restricSearh(searchTerm: string): void {\n this.privateSearchTerm = searchTerm;\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n this.populateUrlQueryParameters();\n this.searchProducts();\n // this.substanceTextSearchService.setSearchValue('main-substance-search', this.privateSearchTerm);\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'BrowseProducts' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalProducts\n }\n };\n const params = { 'total': this.totalProducts };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.productService.getApiExportUrl(etag, extension);\n }\n\n separateAppTypeNumber(): void {\n if (this.products) {\n this.products.forEach((element, index) => {\n if (element.appTypeNumber) {\n let apt = '';\n let apn = '';\n let done = false;\n for (const char of element.appTypeNumber) {\n // Application Number\n if (char) {\n if (this.isNumber(char) === true) {\n done = true;\n apn = apn + char;\n element.appNumber = apn;\n } else {\n if (done === false) {\n // Application Type\n apt = apt + char;\n element.appType = apt;\n }\n }\n }\n }\n }\n });\n }\n }\n\n isNumber(str: any): boolean {\n if (str) {\n const num = Number(str);\n const nan = isNaN(num);\n return !nan;\n }\n return false;\n }\n\n openImageModal($event, subUuid: string): void {\n // const eventLabel = environment.isAnalyticsPrivate ? 'substance' : substance._name;\n\n // this.gaService.sendEvent('substancesContent', 'link:structure-zoom', eventLabel);\n\n let data: any;\n\n // if (substance.substanceClass === 'chemical') {\n data = {\n structure: subUuid,\n // smiles: substance.structure.smiles,\n uuid: subUuid,\n // names: substance.names\n };\n // }\n\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\n height: '90%',\n width: '650px',\n panelClass: 'structure-image-panel',\n data: data\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n const subscription = dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n }, () => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n });\n }\n\n getAppTypeNumberUrl(appType: string, appNumber: string): string {\n let appUrl = 'browse-applications?search=root_appType:\\\"^' + appType + '$\\\" AND root_appNumber:\\\"^' + appNumber + '$\\\"';\n return appUrl;\n }\n\n processSubstanceSearch(searchValue: string) {\n this.privateSearchTerm = searchValue;\n this.setSearchTermValue();\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { take } from 'rxjs/operators';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { Observable } from 'rxjs';\nimport { subscribeOn } from 'rxjs/operators';\n\n@Injectable()\nexport class CanActivateRegisterProductFormComponent implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) {}\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('DataEntry', 'SuperDataEntry').pipe(take(1)).subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/browse-products'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { take } from 'rxjs/operators';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class CanActivateUpdateProductFormComponent implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) { }\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/browse-products'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanDeactivate } from '@angular/router';\nimport { ProductFormComponent } from './product-form.component';\nimport { ProductService } from '../service/product.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CanDeactivateProductFormComponent implements CanDeactivate {\n constructor(\n private productService: ProductService\n ) {}\n canDeactivate(component: ProductFormComponent): boolean {\n if (this.productService.isProductUpdated) {\n if (confirm('You have unsaved changes! If you leave, your changes will be lost.')) {\n return true;\n } else {\n return false;\n }\n }\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, Router, ActivatedRouteSnapshot, NavigationExtras, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { ConfigService } from '@gsrs-core/config';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ActivateProductsComponent implements CanActivate {\n constructor(\n private configService: ConfigService,\n private router: Router\n ) {}\n canActivate( route: ActivatedRouteSnapshot, state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n const loadedComponents = this.configService.configData.loadedComponents || null;\n if (loadedComponents && loadedComponents.products) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n\n }\n}","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { ProductService } from './service/product.service';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatListModule } from '@angular/material/list';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\nimport { ProductDetailsBaseComponent } from './product-details/product-details-base.component';\nimport { ProductDetailsComponent } from './product-details/product-details/product-details.component';\nimport { ProductElistDetailsComponent } from './product-details/product-elist-details/product-elist-details.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { ProductFormComponent } from './product-form/product-form.component';\nimport { ProductComponentFormComponent } from './product-form/product-component/product-component-form.component';\nimport { ProductLotFormComponent } from './product-form/product-lot-form/product-lot-form.component';\nimport { ProductIngredientFormComponent } from './product-form/product-ingredient-form/product-ingredient-form.component';\nimport { JsonDialogFdaComponent } from '../json-dialog-fda/json-dialog-fda.component';\nimport { SubstanceSearchSelectorModule } from '../substance-search-select/substance-search-selector.module';\nimport { SubstanceFormModule } from '../../core/substance-form/substance-form.module';\nimport { ProductTextSearchModule } from './product-text-search/product-text-search.module';\nimport { ProductsBrowseComponent } from './products-browse/products-browse.component';\nimport { FacetsManagerModule } from '@gsrs-core/facets-manager';\nimport { CanActivateRegisterProductFormComponent } from './product-form/can-activate-register-product-form.component';\nimport { CanActivateUpdateProductFormComponent } from './product-form/can-activate-update-product-form.component';\nimport { CanDeactivateProductFormComponent } from './product-form/can-deactivate-product-form.component';\nimport { ActivateProductsComponent } from './activate-products.component';\n\nconst productRoutes: Routes = [\n {\n path: 'browse-products',\n component: ProductsBrowseComponent,\n canActivate: [ActivateProductsComponent]\n },\n {\n path: 'product/register',\n component: ProductFormComponent,\n canActivate: [ActivateProductsComponent, CanActivateRegisterProductFormComponent],\n canDeactivate: [CanDeactivateProductFormComponent]\n },\n {\n path: 'product/:id/edit',\n component: ProductFormComponent,\n canActivate: [ActivateProductsComponent, CanActivateUpdateProductFormComponent],\n canDeactivate: [CanDeactivateProductFormComponent]\n },\n {\n path: 'product/:id',\n component: ProductDetailsComponent,\n canActivate: [ActivateProductsComponent]\n\n },\n {\n path: 'product-elist/:id',\n component: ProductElistDetailsComponent,\n canActivate: [ActivateProductsComponent]\n\n }\n];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule.forChild(productRoutes),\n MatToolbarModule,\n MatSidenavModule,\n MatCardModule,\n MatAutocompleteModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule,\n MatIconModule,\n MatChipsModule,\n MatBadgeModule,\n MatExpansionModule,\n MatCheckboxModule,\n MatTableModule,\n MatSortModule,\n MatPaginatorModule,\n MatSelectModule,\n MatSliderModule,\n MatDialogModule,\n MatListModule,\n MatMenuModule,\n MatButtonToggleModule,\n MatTooltipModule,\n MatTabsModule,\n MatBottomSheetModule,\n MatProgressSpinnerModule,\n FormsModule,\n ReactiveFormsModule,\n OverlayModule,\n SubstanceImageModule,\n SubstanceSearchSelectorModule,\n SubstanceFormModule,\n FacetsManagerModule,\n ProductTextSearchModule\n ],\n declarations: [\n ProductsBrowseComponent,\n ProductDetailsBaseComponent,\n ProductDetailsComponent,\n ProductElistDetailsComponent,\n ProductFormComponent,\n ProductComponentFormComponent,\n ProductLotFormComponent,\n ProductIngredientFormComponent,\n ],\n exports: [\n ProductsBrowseComponent,\n ProductDetailsBaseComponent,\n ProductDetailsComponent,\n ProductElistDetailsComponent\n ],\n providers: [\n CanActivateRegisterProductFormComponent,\n CanActivateUpdateProductFormComponent,\n ActivateProductsComponent\n ]\n})\n\nexport class ProductModule {\n constructor(router: Router) {\n productRoutes.forEach(route => {\n router.config[0].children.push(route);\n });\n }\n\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ProductModule,\n providers: [\n ProductService,\n CanActivateRegisterProductFormComponent,\n CanActivateUpdateProductFormComponent,\n CanDeactivateProductFormComponent,\n ActivateProductsComponent\n ]\n };\n }\n\n}\n","\n \n \n \n \n\n
    \n

    Browse Clinical Trials

    \n
    \n
    \n \n \n \n \n \n Type\n \n \n {{searchType.title}}\n \n \n \n \n \n \n\n
    \n\n
    \n \n \n
    \n
    \n

    All - search in all indexed fields; wild cards work (e.g health*).

    \n

    Title - search for full words contained in the title field.

    \n

    Trial Number - search for Trial Number exactly.

    \n

    Substance Key - search for Substance Key exactly.

    \n
    \n
    \n
    \n
    \n \n\n
    \n\n \n\n \n\n\n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n \n \n
    \n Edit +\n Trial Number\n {{element.trialNumber}}\n Title\n {{element.title}} ({{element.clinicalTrialUSDrug.length}}) \n Last Updated{{element.lastUpdated | date : 'MM/dd/yyyy':'UTC'}} \n Del\n
    \n
    \n \n\n
    \n
    \n
    \n
    \n","import { Component, OnInit, ViewChild, AfterViewInit, HostListener, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { ClinicalTrialService } from '../clinical-trial/clinical-trial.service';\nimport { ClinicalTrial } from '../clinical-trial/clinical-trial.model';\nimport { ConfigService } from '@gsrs-core/config';\nimport * as _ from 'lodash';\nimport { LoadingService } from '@gsrs-core/loading/loading.service';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { PageEvent } from '@angular/material/paginator';\nimport { UtilsService } from '@gsrs-core//utils/utils.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { Location } from '@angular/common';\nimport { Subscription, Observable, Subject } from 'rxjs';\nimport { take } from 'rxjs/operators';\n\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { Facet, FacetUpdateEvent } from '@gsrs-core/facets-manager/facet.model';\nimport { FacetsManagerService } from '@gsrs-core/facets-manager';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\n\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { Auth } from '@gsrs-core/auth/auth.model';\nimport { MatTableModule, MatTableDataSource } from '@angular/material/table';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics/google-analytics.service';\n// import { environment } from '../../../../environments/environment';\n\n@Component({\n selector: 'app-clinical-trials-browse',\n templateUrl: './clinical-trials-browse.component.html',\n styleUrls: ['./clinical-trials-browse.component.scss']\n})\n\nexport class ClinicalTrialsBrowseComponent implements OnInit, AfterViewInit, OnDestroy {\n public lodash = _;\n public privateSearchTerm = '';\n private privateSearchType = 'all';\n private privateSearchCutoff?: number;\n public clinicalTrials: Array;\n showHelp = false;\n pageIndex: number;\n pageSize: number;\n totalClinicalTrials: number;\n isLoading = true;\n isError = false;\n searchTypes = [];\n @ViewChild('matSideNavInstance', { static: true }) matSideNav: MatSidenav;\n hasBackdrop = false;\n // view = 'cards';\n displayedColumns: string[];\n public smiles: string;\n private argsHash?: number;\n public auth?: Auth;\n showAudit: boolean;\n public order: string;\n // public sortValues = searchSortValues;\n searchText: string[] = [];\n private overlayContainer: HTMLElement;\n toggle: Array = [];\n private subscriptions: Array = [];\n dataSource = new MatTableDataSource([]);\n isAdmin: boolean;\n showExactMatches = false;\n private isComponentInit = false;\n\n // needed for facets\n private privateFacetParams: FacetParam;\n rawFacets: Array;\n public displayFacets: Array = [];\n private isFacetsParamsInit = false;\n public isCollapsed = true;\n private searchTermHash: number;\n isSearchEditable = false;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private clinicalTrialService: ClinicalTrialService,\n public configService: ConfigService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n public utilsService: UtilsService,\n private router: Router,\n // private dialog: MatDialog,\n private authService: AuthService,\n private overlayContainerService: OverlayContainer,\n private location: Location,\n private facetManagerService: FacetsManagerService,\n public gaService: GoogleAnalyticsService,\n ) {}\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.clinicalTrialService.getClinicalTrialsFacets);\n this.pageSize = 10;\n this.pageIndex = 0;\n this.privateSearchTerm = this.activatedRoute.snapshot.queryParams['searchTerm'] || '';\n this.privateSearchType = this.activatedRoute.snapshot.queryParams['type'] || 'all';\n this.privateSearchCutoff = Number(this.activatedRoute.snapshot.queryParams['cutoff']) || 0;\n this.order = this.activatedRoute.snapshot.queryParams['order'] || '$trialNumber';\n this.pageSize = parseInt(this.activatedRoute.snapshot.queryParams['pageSize'], null) || 10;\n this.pageIndex = parseInt(this.activatedRoute.snapshot.queryParams['pageIndex'], null) || 0;\n\n // Need this to go back to Advanced Search\n if (this.privateSearchTerm) {\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n }\n\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n this.isAdmin = this.authService.hasAnyRoles('Updater', 'SuperUpdater');\n // testing\n // this.isAdmin = true;\n // this.showAudit = this.authService.hasRoles('admin');\n if (this.isAdmin) {\n this.displayedColumns = ['edit', 'trialNumber', 'title', 'lastUpdated', 'delete'];\n } else {\n this.displayedColumns = ['edit', 'trialNumber', 'title', 'lastUpdated'];\n }\n });\n this.searchTypes = [\n {'title': 'All', 'value': 'all'},\n {'title': 'Title', 'value': 'title'},\n {'title': 'Trial Number', 'value': 'trialNumber'},\n {'title': 'Substance Key', 'value': 'substanceKey'}\n ];\n this.isComponentInit = true;\n this.loadComponent();\n }\n\n ngAfterViewInit() {\n const openSubscription = this.matSideNav.openedStart.subscribe(() => {\n this.utilsService.handleMatSidenavOpen(1100);\n });\n this.subscriptions.push(openSubscription);\n const closeSubscription = this.matSideNav.closedStart.subscribe(() => {\n this.utilsService.handleMatSidenavClose();\n });\n this.subscriptions.push(closeSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n @HostListener('window:resize', ['$event'])\n onResize() {\n this.processResponsiveness();\n }\n\n private loadComponent(): void {\n if (this.isFacetsParamsInit && this.isComponentInit) {\n this.searchClinicalTrials();\n }\n }\n\n changePage(pageEvent: PageEvent) {\n\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.pageIndex !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n // this.gaService.sendEvent('substancesContent', eventAction, 'pager', eventValue);\n\n this.pageSize = pageEvent.pageSize;\n this.pageIndex = pageEvent.pageIndex;\n this.populateUrlQueryParameters();\n this.searchClinicalTrials();\n }\n\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n this.pageIndex = 0;\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n if (!this.isFacetsParamsInit) {\n this.isFacetsParamsInit = true;\n this.loadComponent();\n } else {\n this.searchClinicalTrials();\n }\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n if (numFacetsLoaded > 0) {\n this.processResponsiveness();\n } else {\n this.matSideNav.close();\n }\n }\n\n searchClinicalTrials() {\n const newArgsHash = this.utilsService.hashCode(\n this.privateSearchTerm,\n this.privateSearchCutoff,\n this.privateSearchType,\n this.pageSize,\n this.order,\n this.privateFacetParams,\n (this.pageIndex * this.pageSize),\n );\n if (this.argsHash === null || this.argsHash !== newArgsHash) {\n this.isLoading = true;\n this.loadingService.setLoading(true);\n this.argsHash = newArgsHash;\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.clinicalTrialService.getClinicalTrials({\n searchTerm: this.privateSearchTerm,\n cutoff: this.privateSearchCutoff,\n type: this.privateSearchType,\n order: this.order,\n pageSize: this.pageSize,\n facets: this.privateFacetParams,\n skip: skip\n })\n .subscribe(pagingResponse => {\n this.isError = false;\n/*\n if (pagingResponse.exactMatches && pagingResponse.exactMatches.length > 0\n && pagingResponse.skip === 0\n && (!pagingResponse.sideway || pagingResponse.sideway.length < 2)\n ) {\n this.exactMatchSubstances = pagingResponse.exactMatches;\n this.showExactMatches = true;\n }\n*/\n this.clinicalTrials = pagingResponse.content;\n this.totalClinicalTrials = pagingResponse.total;\n this.dataSource.data = this.clinicalTrials;\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n/*\n this.narrowSearchSuggestions = {};\n this.matchTypes = [];\n this.narrowSearchSuggestionsCount = 0;\n if (pagingResponse.narrowSearchSuggestions && pagingResponse.narrowSearchSuggestions.length) {\n pagingResponse.narrowSearchSuggestions.forEach(suggestion => {\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n });\n }\n*/\n }, () => {\n // this.gaService.sendException('getSubstancesDetails: error from API cal');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve ClinicalTrials. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n subscription.unsubscribe();\n /*\n if (this.exactMatchSubstances && this.exactMatchSubstances.length > 0) {\n this.exactMatchSubstances.forEach(substance => {\n this.setSubstanceNames(substance.uuid);\n this.setSubstanceCodes(substance.uuid);\n });\n\n }\n this.substances.forEach(substance => {\n this.setSubstanceNames(substance.uuid);\n this.setSubstanceCodes(substance.uuid);\n });\n */\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n }\n\n setSearchTermValue() {\n this.pageSize = 10;\n this.pageIndex = 0;\n this.privateSearchTerm = this.privateSearchTerm.trim();\n this.populateUrlQueryParameters();\n this.searchClinicalTrials();\n }\n\n deleteClinicalTrial(index: number) {\n if (typeof this.clinicalTrials[index] === 'undefined' || ! _.has(this.clinicalTrials[index], 'trialNumber')) {\n alert('A trial number is required.');\n return;\n }\n if (!confirm('Are you sure to delete ' + this.clinicalTrials[index].trialNumber + '?')) {\n return;\n }\n this.loadingService.setLoading(true);\n this.clinicalTrialService.deleteClinicalTrial(this.clinicalTrials[index].trialNumber)\n .subscribe( () => {\n this.isError = false;\n const deletedClinicalTrials = this.clinicalTrials.splice(index, 1);\n this.dataSource.data = this.clinicalTrials;\n const notification: AppNotification = {\n message: 'You deleted the clinical trial record for:' + deletedClinicalTrials[0].trialNumber,\n type: NotificationType.success,\n milisecondsToShow: 6000\n };\n this.isError = false;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n const notification: AppNotification = {\n message: 'There was an error trying to delete a clinical trial.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n // see substances code\n populateUrlQueryParameters(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n navigationExtras.queryParams['searchTerm'] = this.privateSearchTerm;\n navigationExtras.queryParams['cutoff'] = this.privateSearchCutoff;\n navigationExtras.queryParams['type'] = this.privateSearchType;\n navigationExtras.queryParams['order'] = this.order;\n navigationExtras.queryParams['pageSize'] = this.pageSize;\n navigationExtras.queryParams['pageIndex'] = this.pageIndex;\n navigationExtras.queryParams['skip'] = this.pageIndex * this.pageSize;\n\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n // see substances code\n clearSearch(): void {\n // const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n // this.gaService.sendEvent('substancesFiltering', 'icon-button:clear-search', eventLabel);\n this.privateSearchTerm = '';\n this.pageIndex = 0;\n\n this.populateUrlQueryParameters();\n this.searchClinicalTrials();\n }\n\n // see substance code\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n this.clearSearch();\n this.facetManagerService.clearSelections();\n }\n\n get searchTerm(): string {\n return this.privateSearchTerm;\n }\n\n set searchTerm(s: string) {\n this.privateSearchTerm = s;\n }\n\n get searchType(): string {\n return this.privateSearchType;\n }\n\n set searchType(s: string) {\n this.privateSearchType = s;\n }\n\n // see substances code\n private processResponsiveness = () => {\n if (window) {\n if (window.innerWidth < 1100) {\n this.matSideNav.close();\n this.isCollapsed = true;\n this.hasBackdrop = true;\n } else {\n this.matSideNav.open();\n this.hasBackdrop = false;\n }\n }\n }\n\n // see substances code\n openSideNav() {\n // this.gaService.sendEvent('substancesFiltering', 'button:sidenav', 'open');\n this.matSideNav.open();\n }\n\n\n showAllRecords(): void {\n this.showExactMatches = false;\n this.processResponsiveness();\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n\n toggleShowHelp() {\n this.showHelp = !this.showHelp;\n }\n\n editAdvancedSearch(): void {\n // const eventLabel = environment.isAnalyticsPrivate ? 'Browse Clinical Trial search term' :\n // `${this.privateSearchTerm}`;\n // this.gaService.sendEvent('Clinical Trial Filtering', 'icon-button:edit-advanced-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n 'g-search-hash': this.searchTermHash.toString()\n }\n };\n\n this.router.navigate(['/advanced-search'], navigationExtras);\n }\n}\n","
    \r\n \r\n\t\r\n\t\r\n\t
    \r\n\t\t\r\n\t\t
    {{suggestion.key}}
    \r\n\t\t
    \r\n\t
    \r\n\t
    \r\n
    \r\n\t\r\n\t\r\n\t\r\n
    \r\n","import { Component, Output, Input, EventEmitter, OnInit, AfterViewInit, ViewChild } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\r\nimport { NavigationExtras, Router, RouterEvent, NavigationEnd } from '@angular/router';\r\nimport { debounceTime, distinctUntilChanged, switchMap } from 'rxjs/operators';\r\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils';\r\nimport { UtilsService } from '@gsrs-core/utils';\r\nimport {MatAutocompleteTrigger} from '@angular/material/autocomplete';\r\n\r\n@Component({\r\n selector: 'app-mini-search',\r\n templateUrl: './mini-search.component.html',\r\n styleUrls: ['./mini-search.component.scss']\r\n})\r\nexport class MiniSearchComponent implements OnInit, AfterViewInit {\r\n\r\n @Input() myIndex: number;\r\n @Input() myInitialSearch: string;\r\n\r\n\r\n // need to handle escape or none selected???\r\n // https://github.com/angular/material2/issues/3334\r\n // https://material.angular.io/components/autocomplete/api\r\n // regarding myIndex, etc, think about how this could be generlized, so that an object\r\n // is added onto the data emitted. This would allow mini search to be used in other\r\n // contexts than in this assumed table type layout.\r\n\r\n // need to consider what happens when partial change to text is made but nothing is selected.\r\n // might be too complicated to implement w/out a modal or something.\r\n\r\n\r\n @Output() miniSearchOutput = new EventEmitter();\r\n @ViewChild(MatAutocompleteTrigger, { static: true }) trigger;\r\n\r\n searchControl = new FormControl();\r\n\r\n substanceSuggestionsGroup: SubstanceSuggestionsGroup;\r\n suggestionsFields: Array;\r\n mainPathSegment = '';\r\n // try to get this from the markup.\r\n showIcon = false;\r\n suggestions: Array = [];\r\n constructor(\r\n private utilsService: UtilsService,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.searchControl.valueChanges.pipe(\r\n debounceTime(500),\r\n distinctUntilChanged(),\r\n switchMap(searchValue =>\r\n this.utilsService.getStructureSearchSuggestions(searchValue)\r\n )\r\n ).subscribe((response: SubstanceSuggestionsGroup) => {\r\n this.substanceSuggestionsGroup = response;\r\n this.suggestionsFields = Object.keys(this.substanceSuggestionsGroup);\r\n this.suggestions = response['Name'];\r\n }, error => {\r\n });\r\n\r\n this.mainPathSegment = this.getMainPathSegmentFromUrl(this.router.routerState.snapshot.url.substring(1));\r\n\r\n this.router.events.subscribe((event: RouterEvent) => {\r\n if (event instanceof NavigationEnd) {\r\n this.mainPathSegment = this.getMainPathSegmentFromUrl(event.url.substring(1));\r\n }\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.searchControl.setValue(this.myInitialSearch);\r\n this.trigger.panelClosingActions\r\n .subscribe(e => {\r\n const data = {value: this.searchControl.value, myIndex: this.myIndex};\r\n this.miniSearchOutput.emit(data);\r\n });\r\n }\r\n\r\n getMainPathSegmentFromUrl(url: string): string {\r\n const path = url.split('?')[0];\r\n const mainPathPart = path.split('/')[0];\r\n return mainPathPart;\r\n }\r\n\r\n substanceSearchOptionSelected(event?: MatAutocompleteSelectedEvent) {\r\n // this.navigateToSearchResults(event.option.value);\r\n const data = {value: event.option.value, myIndex: this.myIndex};\r\n this.miniSearchOutput.emit(data);\r\n }\r\n\r\n processSubstanceNameSearch() {\r\n // will enhance in future\r\n // const searchTerm = this.searchControl.value;\r\n }\r\n\r\n navigateToSearchResults(searchTerm: string) {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: searchTerm ? { 'search_term': searchTerm } : null\r\n };\r\n this.router.navigate(['/browse-substance'], navigationExtras);\r\n }\r\n\r\n}\r\n","
    \n\n\t
    \n\t\t

    Clinical Trial with not found for editing.

    \n\t\t

    Go to browse

    \n\t
    \n\n\t
    \n\n\t
    \n\t\t

    \n\t\t\t{{clinicalTrial.trialNumber}}\n\t\t\t {{clinicalTrial.title}}\n\t\t

    \n\t
    \n\n\t
    \n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t
    \n\n\t

    Substances in Clinical Trial ({{ clinicalTrial.clinicalTrialUSDrug.length}})

    \n\t
    \n\t\t\n\t\t\n\t
    \n\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\tID\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\n\t\t\tName\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{element.name}}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\n\t\t\tSubstance Key\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{element.substanceKey}}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t Protected Match \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{element.protectedMatch}}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\tOrg. Substance Key\n\t\t\t\n\t\t\t\t{{element.orgSubstanceKey}}\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\tlink\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\tDelete\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\n\t
    \n\n\n\n\t
    \n\n\t
    \n\t\tTrial Details \n\t\t{{clinicalTrial.trialNumber}} \n\t\tXML \n\t\tHistory \n\t
    \n\n\t
    \n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t

    {{clinicalTrial.title}}

    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Intervention:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\t\t\t\t\t

    Recruitment: {{clinicalTrial.recruitment}}

    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Conditions:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Sponsors:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Locations:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Sponsor:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Phases:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Study Types:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Age Groups:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\t\t\t\t\t

    Gender: {{clinicalTrial.gender}}

    \n\t\t\t\t\t

    Allocation: {{clinicalTrial.allocation}}

    \n\t\t\t\t\t

    Study Results: {{clinicalTrial.studyResults}}

    \n\t\t\t\t\t

    Enrollment: {{clinicalTrial.enrollment}}

    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Other Ids:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\t\t\t\t\t

    Acronym: {{clinicalTrial.acronym}}

    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Outcome Measures:

    \n\t\t\t\t\t\t
    {{ content }}
    \n\t\t\t\t\t
    \n\t\t\t\t\t

    Url: {{clinicalTrial.url}}

    \n\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\n\t\t
    \n\n\t\t\t
    \n\t\t\t\t

    Updated:

    \n\t\t\t\t
    {{clinicalTrial.lastUpdated|date : \"MM/dd/yyyy\": 'UTC'}} ct.gov
    \n\t\t\t\t
    {{clinicalTrial.gsrsUpdated|date : \"MM/dd/yyyy\": 'UTC'}} gsrs
    \n\t\t\t
    \n\t\t\t

    First Received: {{clinicalTrial.firstReceived|date : \"MM/dd/yyyy\" : \"UTC\"}}

    \n\t\t\t

    Study Start Date: {{clinicalTrial.startDate|date : \"MM/dd/yyyy\" : \"UTC\"}}

    \n\t\t\t

    Last Verified: {{clinicalTrial.lastVerified}}

    \n\t\t\t

    Primary Completion Date: {{clinicalTrial.primaryCompletionDate|date : \"MM/dd/yyyy\" : \"UTC\"}}

    \n\t\t\t

    Study Completion Date: {{clinicalTrial.completionDate|date : \"MM/dd/yyyy\" : \"UTC\"}}

    \n\t\t
    \n\t
    \n\n\t

    Go to browse

    \n\n\n\t
    \n\t\t
    isAdmin: {{isAdmin}}
    \n\n\t\t
    \n\t\t\t
     
    \n\n\t\t\t
    clinicalTrial: {{clinicalTrial|json}}
    \n\t\t
    \n\n\t\t
    \n\t\t\t
     
    \n\t\t\t
    datasource.data: {{dataSource.data|json}}
    \n\t\t
    \n\n\t\t
    \n\t\t\t
     
    \n\t\t\t
    miniSearchOutputReported: {{miniSearchOutputReported}}
    \n\t\t
    \n\t
    \n\t
    \n","import { Component, OnInit, ViewChild, AfterViewInit, OnDestroy} from '@angular/core';\nimport { ActivatedRoute, Router} from '@angular/router';\nimport { ClinicalTrialService } from '../clinical-trial/clinical-trial.service';\nimport { ClinicalTrial, BdnumNameAll } from '../clinical-trial/clinical-trial.model';\nimport { ClinicalTrialUSDrug } from '../clinical-trial/clinical-trial.model';\nimport { MiniSearchComponent } from '../mini-search/mini-search.component';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { ConfigService } from '@gsrs-core/config';\nimport * as _ from 'lodash';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatTable } from '@angular/material/table';\n\nimport { FormsModule } from '@angular/forms';\nimport { MatTableDataSource } from '@angular/material/table';\nimport {MatCheckboxModule} from '@angular/material/checkbox';\nimport {AuthService} from '@gsrs-core/auth/auth.service';\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { tap, switchMap, map, concat, concatMap, delay, mergeMap } from 'rxjs/operators';\nimport { forkJoin } from 'rxjs';\nimport { Subscription } from 'rxjs';\nimport { Observable, throwError, of } from 'rxjs';\nimport { GeneralService } from '../../service/general.service';\nimport { L } from '@angular/cdk/keycodes';\nimport { MatMenuModule } from '@angular/material/menu';\n\n// import { Auth } from '../../../core/auth/auth.model';\n\n/**\n * @title Table with editing\n */\n\n@Component({\n selector: 'app-clinical-trial-edit',\n templateUrl: './clinical-trial-edit.component.html',\n styleUrls: ['./clinical-trial-edit.component.scss']\n})\nexport class ClinicalTrialEditComponent implements OnInit, AfterViewInit, OnDestroy {\n clinicalTrial: ClinicalTrial;\n defaultSubstanceKeyType = 'UUID';\n agencySubstanceKeyType = 'UUID';\n\n isAdmin: boolean;\n isTesting = false;\n displayedColumns: string[];\n dataSource = new MatTableDataSource([]);\n public _trialNumber: string;\n bulkInputValue = '';\n // public facets: Array = [];\n // private _facetParams: { [facetName: string]: { [facetValueLabel: string]: boolean } } = {};\n pageIndex: number;\n pageSize: number;\n totalClinicalTrials: number;\n isLoading = true;\n isError = false;\n model = {};\n miniSearchOutputReported = '';\n private subscriptions: Array = [];\n\n @ViewChild(MatTable, { static: false }) table: MatTable;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private clinicalTrialService: ClinicalTrialService,\n\n private sanitizer: DomSanitizer,\n public configService: ConfigService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n private authService: AuthService,\n private router: Router\n ) {\n }\n\n ngOnInit() {\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n // testing\n // this.isAdmin = true;\n if (this.isAdmin) {\n this.displayedColumns = ['id', 'name', 'substanceKey', 'protectedMatch', 'orgSubstanceKey', 'link', 'delete'];\n } else {\n this.displayedColumns = ['name', 'substanceKey', 'protectedMatch', 'orgSubstanceKey', 'link'];\n }\n });\n this.pageSize = 10;\n this.pageIndex = 0;\n /*\n this.activatedRoute\n .queryParamMap\n .subscribe(params => {\n this._trialNumber = params.get('trialNumber') || '';\n this.getClinicalTrial();\n });\n */\n\n this.activatedRoute.paramMap.subscribe(params => {\n this._trialNumber = params.get('trialNumber');\n this.getClinicalTrial();\n\n });\n }\n\n ngAfterViewInit() {}\n\n reportMiniSearchOutput(data) {\n this.clinicalTrialService.getSubstanceDetailsFromName(data.value).pipe(\n map(pageResult => pageResult['content'][0]),\n switchMap(substance => {\n return this.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(substance['uuid']);\n })).subscribe(substance => {\n if (substance === null) {\n this.dataSource.data[data.myIndex].substanceKey = null;\n this.dataSource.data[data.myIndex].orgSubstanceKey = null;\n } else {\n this.dataSource.data[data.myIndex].name = data.value;\n if (substance !== undefined) {\n this.dataSource.data[data.myIndex].substanceKey = substance.uuid;\n this.dataSource.data[data.myIndex].orgSubstanceKey = this.getOrgSubstanceKeyFromSubstance(substance);\n }\n }\n }, () => {\n this.dataSource.data[data.myIndex].substanceKey = null;\n });\n this.dataSource.data = this.dataSource.data;\n }\n\n reportMiniSearchOutput_OLD(data) {\n this.clinicalTrialService.getSubstanceDetailsFromName(data.value).subscribe(\n substanceDetails => {\n if (substanceDetails === null\n || substanceDetails.content === null\n || substanceDetails.content[0] === undefined\n// || substanceDetails.content[0].name===String('NULL')\n// || substanceDetails.content[0].name===String('null')\n ) {\n this.dataSource.data[data.myIndex].substanceKey = null;\n this.dataSource.data[data.myIndex].orgSubstanceKey = null;\n\n } else {\n this.dataSource.data[data.myIndex].name = data.value;\n if (substanceDetails.content[0] !== undefined) {\n this.dataSource.data[data.myIndex].substanceKey = substanceDetails.content[0].uuid;\n // this.dataSource.data[data.myIndex].orgSubstanceKey = getOrgSubstanceKeyFromSubstanceCodes()\n }\n }\n }, () => {\n this.dataSource.data[data.myIndex].substanceKey = null;\n }\n);\n this.dataSource.data = this.dataSource.data;\n }\n\n // need to work on this from config.\n addRow() {\n const model = { id: '', name: '', substanceKey: '', substanceKeyType: this.defaultSubstanceKeyType };\n this.dataSource.data.push(model);\n\n // why?\n this.dataSource.data = this.dataSource.data;\n }\n\n removeRow(i) {\n this.dataSource.data.splice(i, 1);\n this.dataSource.data = this.dataSource.data;\n }\n\n applyFilter(filterValue: string) {\n filterValue = filterValue.trim(); // Remove whitespace\n filterValue = filterValue.toLowerCase(); // MatTableDataSource defaults to lowercase matches\n this.dataSource.filter = filterValue;\n }\n\n // New\n getClinicalTrial() {\n this.loadingService.setLoading(true);\n this.dataSource.data = [];\n const trialObs = this.clinicalTrialService.getClinicalTrial(this._trialNumber);\n const substanceObs: Array> = [];\n const trialObs$ = forkJoin(trialObs).pipe(\n map(_data => {\n const data = _data[0];\n this.isError = false;\n if (data.clinicalTrialUSDrug !== null) {\n data.clinicalTrialUSDrug.forEach(element => {\n this.dataSource.data.push({\n id: element.id,\n substanceKey: element.substanceKey,\n substanceKeyType: element.substanceKeyType,\n name: '',\n protectedMatch: element.protectedMatch\n });\n substanceObs.push(this.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(element.substanceKey));\n });\n }\n this.clinicalTrial = data;\n return substanceObs;\n }),\n mergeMap((substanceObs) => forkJoin(substanceObs).pipe(\n map(substances => {\n const complements = {};\n substances.forEach(substance => {\n complements[substance.uuid] = {\n 'substanceKey': substance.uuid,\n 'orgSubstanceKey': this.getOrgSubstanceKeyFromSubstance(substance),\n 'name': substance._name,\n };\n });\n this.dataSource.data.forEach((element) => {\n if (complements[element.substanceKey]) {\n element.name = complements[element.substanceKey].name;\n element.orgSubstanceKey = complements[element.substanceKey].orgSubstanceKey;\n console.log('element.orgSubstanceKey: ' + element.orgSubstanceKey);\n }\n });\n // don't know why but deep clone makes the myInitialSearch value work as expected perhaps by rerending table.\n const data = _.cloneDeep(this.dataSource.data);\n // but this doesn't work.\n // const data = [...this.dataSource.data];\n this.dataSource.data = data;\n })\n )\n )\n );\n const subscription = trialObs$.subscribe(() => {\n // this.table.renderRows();\n // console.log('table:');\n // console.log(\"table:\", this.table);\n }, () => {\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve clinical trial. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n this.subscriptions.push(subscription);\n }\n\n getOrgSubstanceKeyFromSubstance(substance) {\n let code = null;\n if (substance.codes && substance.codes !== null && substance.codes.length > 0) {\n for (const element of substance.codes) {\n if (element.codeSystem && element.codeSystem === 'BDNUM') {\n if (element.type && element.type === 'PRIMARY') {\n console.log('bdnum: ' + element.code);\n code = element.code;\n break;\n }\n }\n }\n }\n return code;\n }\n\n // OLD2\n getClinicalTrialOLD2() {\n this.loadingService.setLoading(true);\n this.dataSource.data = [];\n console.log('XXXX ab' + this._trialNumber);\n\n const trialSubscription = this.clinicalTrialService.getClinicalTrial(this._trialNumber)\n .subscribe(data => {\n this.isError = false;\n console.log('XXXX ac' + data);\n if (data.clinicalTrialUSDrug !== null) {\n const _observables: Array> = [];\n data.clinicalTrialUSDrug.forEach(element => {\n this.dataSource.data.push({\n id: element.id,\n substanceKey: element.substanceKey,\n substanceKeyType: element.substanceKeyType,\n name: null,\n protectedMatch: element.protectedMatch\n });\n _observables.push(this.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(element.substanceKey));\n });\n const substanceSubscriptions = forkJoin(_observables).subscribe({\n next: substances => {\n const complements = {};\n substances.forEach(substance => {\n complements[substance.uuid] = { 'substanceKey': substance.uuid, 'name': substance._name };\n });\n console.log('complements: ');\n console.log(complements);\n\n\n this.dataSource.data.forEach(element => {\n // if (complements[element.substanceKey]) {\n console.log('sk: ');\n console.log(element.substanceKey);\n console.log('name: ');\n console.log(complements[element.substanceKey].name);\n\n element.name = complements[element.substanceKey].name;\n // }\n });\n },\n complete: () => console.log('This is how it ends!')\n });\n // this.subscriptions.push(substanceSubscriptions);\n\n\n // Weird, why is this necessary?substanceName\n this.clinicalTrial = data;\n this.dataSource.data = this.dataSource.data;\n console.log('this.dataSource.data');\n console.log(this.dataSource.data);\n }\n\n }, () => {\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve clinical trial. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n // OLD1\n getClinicalTrialOLD1() {\n this.loadingService.setLoading(true);\n this.dataSource.data = [];\n console.log('XXXX ab' + this._trialNumber);\n\n const trialSubscription = this.clinicalTrialService.getClinicalTrial(this._trialNumber)\n .subscribe(data => {\n this.isError = false;\n console.log('XXXX ac' + data);\n if (data.clinicalTrialUSDrug !== null) {\n\n data.clinicalTrialUSDrug.forEach(element => {\n let substanceName = null;\n const subscription =\n this.clinicalTrialService.getSubstanceDetailsFromSubstanceKey(element.substanceKey).subscribe(substance => {\n substanceName = substance._name;\n console.log('substanceName: ' + substanceName);\n });\n // this.subscriptions.push(subscription);\n\n this.dataSource.data.push({\n id: element.id,\n substanceKey: element.substanceKey,\n substanceKeyType: element.substanceKeyType,\n name: substanceName,\n protectedMatch: element.protectedMatch\n });\n });\n // this.subscriptions.push(trialSubscription);\n\n // Weird, why is this necessary?substanceName\n this.clinicalTrial = data;\n this.dataSource.data = this.dataSource.data;\n console.log('this.dataSource.data');\n console.log(this.dataSource.data);\n }\n\n }, () => {\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve clinical trial. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n updateClinicalTrial() {\n // var that = this;\n this.loadingService.setLoading(true);\n const newClinicalTrial = _.cloneDeep(this.clinicalTrial);\n const newClinicalTrialUSDrugs: Array = [];\n this.dataSource.data.forEach((element) => {\n const ctd = {} as ClinicalTrialUSDrug;\n ctd.id = element.id;\n ctd.trialNumber = element.trialNumber;\n ctd.substanceKey = element.substanceKey;\n ctd.substanceKeyType = element.substanceKeyType;\n ctd.protectedMatch = element.protectedMatch;\n newClinicalTrialUSDrugs.push(ctd);\n });\n newClinicalTrial.clinicalTrialUSDrug = newClinicalTrialUSDrugs;\n this.clinicalTrialService.updateClinicalTrial(\n newClinicalTrial\n )\n .subscribe( data => {\n this.getClinicalTrial();\n // the code below in the if (0) { ... } used to work by relying on the data reponse\n // from the PUT, but for some reason, now, data from prior to the update would\n // sneak back into the edit component. Thefore, for now, I am reloading\n // the data with the GET after a successful update.\n if (0) {\n this.isError = false;\n this.dataSource.data = [];\n data.clinicalTrialUSDrug.forEach(element => {\n this.dataSource.data.push(\n {\n id: element.id,\n substanceKey: element.substanceKey,\n name: element.substanceDisplayName,\n protectedMatch: element.protectedMatch\n }\n );\n // Weird, why is this necessary?\n this.clinicalTrial = data;\n this.dataSource.data = this.dataSource.data;\n });\n }\n\n const message = 'Success';\n const notification: AppNotification = {\n message: message,\n type: NotificationType.success,\n milisecondsToShow: 6000\n };\n this.isError = false;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, error => {\n let message = 'There was an error trying to update clinical trial.';\n if (error.error.errors !== undefined && error.error.errors !== null) {\n error.error.errors.forEach(element => {\n if (element) {\n message = message + ' ' + element;\n }\n });\n }\n if (error.error.validationMessages !== undefined && error.error.validationMessages !== null) {\n error.error.validationMessages.forEach(element => {\n if (element.message !== null) {\n message = message + ' ' + element.message;\n }\n });\n }\n const notification: AppNotification = {\n message: message,\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n }).add(() => {\n console.log('Inside empty add method.');\n });\n }\n\n copyInputMessage(inputElement) {\n inputElement.select();\n document.execCommand('copy');\n// inputElement.setSelectionRange(0, 0);\n// this.textMessageFunc('Text');\n }\n\n substancesToClipboard1a() {\n const textArray = [];\n this.dataSource.data.forEach(element => {\n textArray.push(element.substanceKey);\n });\n this.copyTextAreaToClipBoard(textArray.join('\\n'));\n }\n substancesToClipboard1b() {\n const textArray = [];\n this.dataSource.data.forEach(element => {\n textArray.push(element.substanceKey);\n });\n this.copyTextAreaToClipBoard(textArray.join('; '));\n }\n\n\n substancesToClipboard2a() {\n const textArray = [];\n this.dataSource.data.forEach(element => {\n textArray.push(element.name + '\\t' + element.substanceKey);\n });\n this.copyTextAreaToClipBoard(textArray.join('\\n'));\n }\n\n substancesToClipboard2b() {\n const textArray1 = [];\n const textArray2 = [];\n this.dataSource.data.forEach(element => {\n textArray1.push(element.name);\n textArray2.push(element.substanceKey);\n });\n this.copyTextAreaToClipBoard(textArray1.join('; ') + '\\t' + textArray2.join('; '));\n }\n\n substancesToClipboard3a() {\n const textArray = [];\n this.dataSource.data.forEach(element => {\n textArray.push(this._trialNumber + '\\t' + element.name + '\\t' + element.substanceKey);\n });\n this.copyTextAreaToClipBoard(textArray.join('\\n'));\n }\n\n substancesToClipboard3b() {\n const textArray1 = [];\n const textArray2 = [];\n this.dataSource.data.forEach(element => {\n textArray1.push(element.name);\n textArray2.push(element.substanceKey);\n });\n this.copyTextAreaToClipBoard(this._trialNumber + '\\t' + textArray1.join('; ') + '\\t' + textArray2.join('; '));\n }\n\n\n copyTextAreaToClipBoard(message: string) {\n const cleanText = message.replace(/<\\/?[^>]+(>|$)/g, '');\n const x = document.createElement('TEXTAREA') as HTMLTextAreaElement;\n x.value = cleanText;\n document.body.appendChild(x);\n x.select();\n document.execCommand('copy');\n document.body.removeChild(x);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n // this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n\n} // end class\n","
    \r\n
    \r\n

    Add/Update a Clinical Trial from JSON

    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n You must have permission to add/update a Clinical Trial.\r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { ClinicalTrialService } from '../clinical-trial/clinical-trial.service';\r\nimport { ClinicalTrial } from '../clinical-trial/clinical-trial.model';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { ConfigService } from '@gsrs-core/config';\r\nimport * as _ from 'lodash';\r\nimport { LoadingService } from '@gsrs-core/loading';\r\nimport { MainNotificationService } from '@gsrs-core/main-notification';\r\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\r\nimport {AuthService} from '@gsrs-core/auth/auth.service';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-clinical-add',\r\n templateUrl: './clinical-trial-add.component.html',\r\n styleUrls: ['./clinical-trial-add.component.scss']\r\n})\r\nexport class ClinicalTrialAddComponent implements OnInit {\r\n public clinicalTrials: Array;\r\n isTesting: Boolean = false;\r\n isLoading = true;\r\n isError = false;\r\n canEdit: boolean;\r\n json: String = '';\r\n\r\n constructor(\r\n private clinicalTrialService: ClinicalTrialService,\r\n private sanitizer: DomSanitizer,\r\n public configService: ConfigService,\r\n private loadingService: LoadingService,\r\n private notificationService: MainNotificationService,\r\n private authService: AuthService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\r\n this.canEdit = response;\r\n });\r\n }\r\n\r\n addClinicalTrial() {\r\n this.loadingService.setLoading(true);\r\n\r\n this.clinicalTrialService.addClinicalTrial(this.json)\r\n .subscribe(result => {\r\n this.isError = false;\r\n const notification: AppNotification = {\r\n message: 'You added a clinical trial record.',\r\n type: NotificationType.success,\r\n milisecondsToShow: 6000\r\n };\r\n this.isError = false;\r\n this.isLoading = false;\r\n this.loadingService.setLoading(this.isLoading);\r\n this.notificationService.setNotification(notification);\r\n // this.searchClinicalTrials();\r\n\r\n }, error => {\r\n const notification: AppNotification = {\r\n message: 'There was an error trying to add a clinical trial.',\r\n type: NotificationType.error,\r\n milisecondsToShow: 6000\r\n };\r\n this.isError = true;\r\n this.isLoading = false;\r\n this.loadingService.setLoading(this.isLoading);\r\n this.notificationService.setNotification(notification);\r\n }, () => {\r\n this.isLoading = false;\r\n this.loadingService.setLoading(this.isLoading);\r\n });\r\n }\r\n updateClinicalTrial() {\r\n this.loadingService.setLoading(true);\r\n this.clinicalTrialService.updateClinicalTrial(this.json)\r\n .subscribe(result => {\r\n this.isError = false;\r\n const notification: AppNotification = {\r\n message: 'You updated a clinical trial record.',\r\n type: NotificationType.success,\r\n milisecondsToShow: 6000\r\n };\r\n this.isError = false;\r\n this.isLoading = false;\r\n this.loadingService.setLoading(this.isLoading);\r\n this.notificationService.setNotification(notification);\r\n // this.searchClinicalTrials();\r\n\r\n }, error => {\r\n const notification: AppNotification = {\r\n message: 'There was an error trying to update a clinical trial.',\r\n type: NotificationType.error,\r\n milisecondsToShow: 6000\r\n };\r\n this.isError = true;\r\n this.isLoading = false;\r\n this.loadingService.setLoading(this.isLoading);\r\n this.notificationService.setNotification(notification);\r\n }, () => {\r\n this.isLoading = false;\r\n this.loadingService.setLoading(this.isLoading);\r\n });\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { ClinicalTrialService } from '../clinical-trial/clinical-trial.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../core/utils/utils.service';\nimport { SafeUrl } from '@angular/platform-browser';\nimport { ClinicalTrial } from '../../application/model/application.model';\n\n@Component({\n selector: 'app-clinical-trial-details-base',\n template: '',\n styleUrls: ['./clinical-trial-details-base.component.scss']\n})\n\nexport class ClinicalTrialDetailsBaseComponent implements OnInit {\n\n trialNumber: string;\n src: string;\n clinicalTrial: any;\n flagIconSrcPath: string;\n\n constructor(\n private clinicalTrialService: ClinicalTrialService,\n private activatedRoute: ActivatedRoute,\n private loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private router: Router,\n private gaService: GoogleAnalyticsService,\n private utilsService: UtilsService,\n ) { }\n\n ngOnInit() {\n // this.loadingService.setLoading(true);\n this.trialNumber = this.activatedRoute.snapshot.params['trialNumber'];\n\n if (this.trialNumber != null) {\n this.getClinicalTrialDetails();\n } else {\n this.handleSubstanceRetrivalError();\n }\n }\n\n getClinicalTrialDetails(): void {\n this.clinicalTrialService.getClinicalTrialDetails(this.trialNumber, this.src).subscribe(response => {\n this.clinicalTrial = response;\n // this.loadingService.setLoading(false);\n }, error => {\n this.handleSubstanceRetrivalError();\n });\n }\n\n private handleSubstanceRetrivalError() {\n // this.loadingService.setLoading(false);\n const notification: AppNotification = {\n message: 'The web address above is incorrect. You\\'re being forwarded to Browse Substances',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/browse-substance']);\n }, 5000);\n }\n\n getSafeStructureImgUrl(structureId: string, size: number = 150): SafeUrl {\n return this.utilsService.getSafeStructureImgUrl(structureId, size, true);\n }\n}\n\n","\n
    \n
    \n\n
    \n\n
    \n
    \n \n  Clinical Trial US Details\n     \n \n \n \n
    \n\n\n
    \n
    \n Trial Number:\n
    \n \n
    \n\n
    \n
    \n Title:\n
    \n
    \n {{clinicalTrial.title}}\n
    \n
    \n\n
    \n
    \n Sponsor Name:\n
    \n
    \n {{clinicalTrial.sponsor}}\n
    \n
    \n\n
    \n
    \n\n
    \n \n
    \n \n\n \n
    \n \n
    Clinical Trial US
    \n \n\n
    \n
    \n
    \n Trial Number:\n
    \n \n
    \n
    \n
    \n Recruitment:\n
    \n
    \n {{clinicalTrial.recruitment}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Title:\n
    \n
    \n {{clinicalTrial.title}}\n
    \n
    \n
    \n
    \n Conditions:\n
    \n
    \n {{clinicalTrial.conditions}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Sponsor Name:\n
    \n
    \n {{clinicalTrial.sponsor}}\n
    \n
    \n
    \n
    \n Intervention:\n
    \n
    \n {{clinicalTrial.intervention}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Funded Bys:\n
    \n
    \n {{clinicalTrial.fundedBys}}\n
    \n
    \n
    \n
    \n Phases:\n
    \n
    \n {{clinicalTrial.phases}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Study Types:\n
    \n
    \n {{clinicalTrial.studyTypes}}\n
    \n
    \n
    \n
    \n Age Groups:\n
    \n
    \n {{clinicalTrial.ageGroups}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Study Designs:\n
    \n
    \n {{clinicalTrial.studyDesigns}}\n
    \n
    \n
    \n
    \n Gender:\n
    \n
    \n {{clinicalTrial.gender}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Study Results:\n
    \n
    \n {{clinicalTrial.studyResults}}\n
    \n
    \n
    \n
    \n Enrollment:\n
    \n
    \n {{clinicalTrial.enrollment}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Other Ids:\n
    \n
    \n {{clinicalTrial.otherIds}}\n
    \n
    \n
    \n
    \n Acronym:\n
    \n
    \n {{clinicalTrial.acronym}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Study Start Date:\n
    \n
    \n {{clinicalTrial.startDate|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n
    \n Last Verified:\n
    \n
    \n {{clinicalTrial.lastVerified|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Study Completion Date:\n
    \n
    \n {{clinicalTrial.completionDate|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n
    \n Primary Completion Date:\n
    \n
    \n {{clinicalTrial.primaryCompletionDate|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n First Received:\n
    \n
    \n {{clinicalTrial.firstReceived|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n
    \n Last Updated:\n
    \n
    \n {{clinicalTrial.lastUpdated|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Website Url:\n
    \n \n
    \n
    \n\n
    \n
    \n
    \n Outcome Measures:\n
    \n
    \n {{clinicalTrial.outcomeMeasures}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Locations:\n
    \n
    \n
    0\">\n
    \n {{i+1}}.{{x}}\n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n\n \n
    \n \n
    Applications in Clinical Trial
    \n \n
    0; else noRecordApp\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Application TypeApplication NumberCenterDecisionDecision Date
    {{i+1}}{{x.appType}}{{x.appNumber}}{{x.center}}{{x.decision}}{{x.decisionDate}}
    \n\n
    \n \n


    \n There is no Application Data for this Clinical Trial\n

    \n
    \n
    \n
    \n
    \n
    \n\n \n
    \n \n
    Substances in Clinical Trial
    \n \n
    0; else noRecordSub\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Substance NameStructure
    {{i+1}}\n \n \n
    \n \n
    \n
    \n
    \n \n


    \n There is no Substance Data for this Clinical Trial\n

    \n
    \n
    \n
    \n
    \n
    \n\n
    \n\n
    \n
    \n\n
    \n \n



    \n
    No Clinical Trial record found for {{this.trialNumber}}
    \n
    \n
    \n



    \n","import { Component, OnInit } from '@angular/core';\nimport { ClinicalTrialService } from '../../clinical-trial/clinical-trial.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../../core/utils/utils.service';\nimport { ClinicalTrialDetailsBaseComponent} from '../clinical-trial-details-base.component';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ConfigService } from '@gsrs-core/config';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-clinical-trial-details',\n templateUrl: './clinical-trial-details.component.html',\n styleUrls: ['./clinical-trial-details.component.scss']\n})\n\nexport class ClinicalTrialDetailsComponent extends ClinicalTrialDetailsBaseComponent implements OnInit {\n\n isAdmin = false;\n\n constructor(\n clinicalTrialService: ClinicalTrialService,\n activatedRoute: ActivatedRoute,\n loadingService: LoadingService,\n mainNotificationService: MainNotificationService,\n router: Router,\n gaService: GoogleAnalyticsService,\n utilsService: UtilsService,\n public authService: AuthService,\n public configService: ConfigService\n ) { super(clinicalTrialService, activatedRoute, loadingService, mainNotificationService,\n router, gaService, utilsService);\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n this.isAdmin = response;\n });\n this.flagIconSrcPath = `${this.configService.environment.baseHref || ''}assets/icons/fda/united-states.svg`;\n\n }\n\n}\n","
    \n\n
    \n
    \n \n  Clinical Trial Europe Details\n
    \n
    \n
    \n Eudract Number:\n
    \n \n
    \n\n
    \n
    \n Title:\n
    \n
    \n {{clinicalTrial.title}}\n
    \n
    \n\n
    \n
    \n Sponsor Name:\n
    \n
    \n {{clinicalTrial.sponsorName}}\n
    \n
    \n
    \n
    \n\n
    \n \n
    \n \n\n \n
    \n \n
    Clinical Trial Europe
    \n \n
    \n
    \n
    \n Eudract Number:\n
    \n \n
    \n
    \n
    \n Trial Status:\n
    \n
    \n {{clinicalTrial.trialStatus}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Title:\n
    \n
    \n {{clinicalTrial.title}}\n
    \n
    \n
    \n
    \n Trial Results:\n
    \n
    \n {{clinicalTrial.trialResults}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Sponsor Name:\n
    \n
    \n {{clinicalTrial.sponsorName}}\n
    \n
    \n
    \n
    \n Date First Entered DB:\n
    \n
    \n {{clinicalTrial.dateFirstEnteredDb|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n National Competent Authority:\n
    \n
    \n {{clinicalTrial.nationalCompetentAuthority}}\n
    \n
    \n
    \n
    \n National Competent Authority Decision:\n
    \n
    \n {{clinicalTrial.competentAuthorityDecision}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Date Competent Authority Decision:\n
    \n
    \n {{clinicalTrial.competentAuthorityDecisionDate|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n
    \n Ethics Competent Opinion Approved:\n
    \n
    \n {{clinicalTrial.ethicsComOpinionApp}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Ethics Competent Opinion Reason:\n
    \n
    \n {{clinicalTrial.ethicsComOpinionReason}}\n
    \n
    \n
    \n
    \n Date Ethics Competent Opinion Reason:\n
    \n
    \n {{clinicalTrial.ethicsComOpinionDate|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Country:\n
    \n
    \n {{clinicalTrial.country}}\n
    \n
    \n
    \n
    \n Website Url:\n
    \n \n
    \n
    \n\n
    \n
    \n
    \n
    \n\n \n
    \n \n
    Products in Clinical Trial
    \n \n
    0; else noRecordProd\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Product NameTrade NameSubstancesIMP Route of AdministrationPharmaceutical FormIMP SectionsIMP Role
    {{i+1}}{{x.productName}}{{x.tradeName}}\n
    \n
    {{x.impRoutesAdmin}}{{x.pharmaceuticalForm}}{{x.impSection}}{{x.impRole}}
    \n
    \n \n


    \n There is no Product and Substance Data for this Clinical Trial\n

    \n
    \n
    \n
    \n
    \n
    \n\n\n \n
    \n \n
    Medical Conditions in Clinical Trial
    \n \n
    0; else noRecordMed\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Medical Condition InvestigatedMedical Condition Investigated EZMedical Condition Therapy Area
    {{i+1}}{{x.medicalCondInvesigated}}{{x.medicalCondInvesigatedEz}}{{x.medicalCondTherapyArea}}
    \n
    \n \n


    \n There is no Medical Data for this Clinical Trial\n

    \n
    \n
    \n
    \n
    \n
    \n\n \n
    \n \n
    Meddra in Clinical Trial
    \n \n
    0; else noRecordMeddra\">\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Meddra VersionMeddra Class CodeMeddra TermMeddra System Organ Class
    {{i+1}}{{x.meddraVersion}}{{x.meddraClassCode}}{{x.meddraTerm}}{{x.meddraSystemOrganClass}}
    \n
    \n \n


    \n There is no Meddra Data for this Clinical Trial\n

    \n
    \n
    \n
    \n
    \n
    \n\n
    \n\n
    \n
    \n


    ","import { Component, OnInit } from '@angular/core';\nimport { ClinicalTrialService } from '../../clinical-trial/clinical-trial.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { UtilsService } from '../../../../core/utils/utils.service';\nimport { ClinicalTrialDetailsBaseComponent} from '../clinical-trial-details-base.component';\nimport { Environment } from 'src/environments/environment.model';\nimport { ConfigService } from '@gsrs-core/config';\n\n@Component({\n selector: 'app-clinical-trial-europe-details',\n templateUrl: './clinical-trial-europe-details.component.html',\n styleUrls: ['./clinical-trial-europe-details.component.scss']\n})\n\nexport class ClinicalTrialEuropeDetailsComponent extends ClinicalTrialDetailsBaseComponent implements OnInit {\n environment: Environment;\n\n constructor(\n clinicalTrialService: ClinicalTrialService,\n activatedRoute: ActivatedRoute,\n loadingService: LoadingService,\n mainNotificationService: MainNotificationService,\n router: Router,\n gaService: GoogleAnalyticsService,\n utilsService: UtilsService,\n private configService: ConfigService\n ) { super(clinicalTrialService, activatedRoute, loadingService, mainNotificationService,\n router, gaService, utilsService);\n this.environment = configService.environment;\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n this.flagIconSrcPath = `${this.environment.baseHref || ''}assets/icons/fda/european-union.svg`;\n\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, Router, ActivatedRouteSnapshot, NavigationExtras, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { ConfigService } from '@gsrs-core/config';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ActivateClinicalTrialsComponent implements CanActivate {\n constructor(\n private configService: ConfigService,\n private router: Router\n ) {}\n canActivate( route: ActivatedRouteSnapshot, state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n const loadedComponents = this.configService.configData.loadedComponents || null;\n if (loadedComponents && loadedComponents.clinicaltrials) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { MatTableModule } from '@angular/material/table';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { ClinicalTrialsBrowseComponent } from './clinical-trials-browse/clinical-trials-browse.component';\nimport { ClinicalTrialEditComponent } from './clinical-trial-edit/clinical-trial-edit.component';\nimport { ClinicalTrialAddComponent } from './clinical-trial-add/clinical-trial-add.component';\nimport { MiniSearchComponent } from './mini-search/mini-search.component';\nimport { ClinicalTrialService } from './clinical-trial/clinical-trial.service';\nimport { ClinicalTrialDetailsBaseComponent } from './clinical-trial-details/clinical-trial-details-base.component';\nimport { ClinicalTrialDetailsComponent } from './clinical-trial-details/clinical-trial-details/clinical-trial-details.component';\n// eslint-disable-next-line max-len\nimport { ClinicalTrialEuropeDetailsComponent } from './clinical-trial-details/clinical-trial-europe-details/clinical-trial-europe-details.component';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { FacetsManagerModule } from '@gsrs-core/facets-manager';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { ActivateClinicalTrialsComponent } from './activate-clinical-trials.component';\n\nconst clinicalTrialsRoutes: Routes = [\n {\n path: 'browse-clinical-trials',\n component: ClinicalTrialsBrowseComponent,\n canActivate: [ActivateClinicalTrialsComponent]\n\n },\n {\n path: 'edit-clinical-trial/:trialNumber',\n component: ClinicalTrialEditComponent,\n canActivate: [ActivateClinicalTrialsComponent]\n },\n {\n path: 'add-clinical-trial',\n component: ClinicalTrialAddComponent,\n canActivate: [ActivateClinicalTrialsComponent]\n\n },\n {\n path: 'clinical-trial/:trialNumber',\n component: ClinicalTrialDetailsComponent,\n canActivate: [ActivateClinicalTrialsComponent]\n },\n {\n path: 'clinicalTrialEuropeDetails/:trialNumber/:src',\n component: ClinicalTrialEuropeDetailsComponent,\n canActivate: [ActivateClinicalTrialsComponent]\n }\n];\n// abcd\n@NgModule({\n imports: [\n MatTableModule,\n MatFormFieldModule,\n MatInputModule,\n MatAutocompleteModule,\n MatIconModule,\n MatButtonModule,\n MatPaginatorModule,\n MatSidenavModule,\n MatExpansionModule,\n MatCardModule,\n MatTabsModule,\n ReactiveFormsModule,\n FormsModule,\n MatCheckboxModule,\n MatSelectModule,\n CommonModule,\n RouterModule.forChild(clinicalTrialsRoutes),\n MatProgressBarModule,\n SubstanceImageModule,\n FacetsManagerModule,\n MatMenuModule\n ],\n declarations: [\n MiniSearchComponent,\n ClinicalTrialsBrowseComponent,\n ClinicalTrialEditComponent,\n ClinicalTrialAddComponent,\n ClinicalTrialDetailsComponent,\n ClinicalTrialEuropeDetailsComponent,\n ClinicalTrialDetailsBaseComponent\n ],\n exports: [\n MiniSearchComponent,\n ClinicalTrialsBrowseComponent,\n ClinicalTrialEditComponent,\n ClinicalTrialAddComponent\n ],\n providers: [\n ActivateClinicalTrialsComponent\n ]\n})\nexport class ClinicalTrialsModule {\n constructor(router: Router) {\n clinicalTrialsRoutes.forEach(route => {\n router.config[0].children.push(route);\n });\n }\n\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ClinicalTrialsModule,\n providers: [\n ClinicalTrialService,\n ActivateClinicalTrialsComponent\n ]\n };\n }\n }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { UserManualComponent } from './user-manual.component';\n\n@NgModule({\n declarations: [UserManualComponent],\n imports: [\n CommonModule\n ]\n})\nexport class UserManualModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { JiraSubmitTicketComponent } from './jira-submit-ticket.component';\n\n@NgModule({\n declarations: [JiraSubmitTicketComponent],\n imports: [\n CommonModule,\n MatButtonModule\n ]\n})\nexport class JiraSubmitTicketModule { }\n","




    \n\n Substance Application Matching Lists\n \n\n
    \n\n

    Substance Ingredient Names:

    \n\n
      \n
      \n
    1. {{names.name}}\n \n  (Preferred Term)\n \n
    2. \n
      \n
    \n\n

    \n
    Applications Lists that contain Substance Ingredient Names in Product Names or\n Reference IND:
    \n\n

    \n Total Applications Found: {{total}}\n

    \n \n\n \n Num \n \n {{i + 1}}\n \n \n\n \n Action \n \n \n
    \n
    \n \n \n \n
    \n \n
    \n \n \n \n
    \n\n \n Application Type \n {{element.appType}} \n \n\n \n Application Number \n {{element.appNumber}} \n \n\n \n Application Status \n {{element.status}} \n \n\n \n Application Sub Type \n {{element.appSubType}} \n \n\n \n Product Name \n {{element.productName}} \n \n\n \n Application Bdnum \n \n \n {{element.bdnum}}\n \n \n {{element.bdnum}}\n \n \n \n\n \n Substance Ingredient Names and Product Name - Exact\n Match \n {{element.exactMatchName}} \n \n\n \n \n\n
    \n
    \n\n
    \n
    \n


    ","import { Component, OnInit, AfterViewInit } from '@angular/core';\nimport { GeneralService } from '../../service/general.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { UtilsService } from '../../../core/utils/utils.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ApplicationService } from '../../application/service/application.service';\nimport { Subscription } from 'rxjs';\nimport { Application, SubstanceApplicationMatch } from '../../application/model/application.model';\n\n@Component({\n selector: 'app-substance-application-match-list',\n templateUrl: './substance-application-match-list.component.html',\n styleUrls: ['./substance-application-match-list.component.scss']\n})\n\nexport class SubstanceApplicationMatchListComponent implements OnInit, AfterViewInit {\n\n id: string;\n isAdmin = false;\n appMatchList: any;\n substanceNames: any;\n displayedColumns: string[] = ['Num', 'Action', 'Application Type', 'Application Number', 'Status', 'Application Sub Type', 'Product Name', 'Application Substance Key', 'Exact Match'];\n dataSource = null;\n updated = 'false';\n autoUpdateSavedSuccess = false;\n private subscriptions: Array = [];\n applications: Array;\n substanceApplicationMatchList: Array = [];\n preferredTerm = '';\n fullFacetField = '';\n total = 0;\n application: Application;\n\n constructor(\n public generalService: GeneralService,\n private applicationService: ApplicationService,\n public activatedRoute: ActivatedRoute,\n private router: Router,\n public loadingService: LoadingService,\n private utilsService: UtilsService,\n private authService: AuthService) { }\n\n ngOnInit() {\n this.loadingService.setLoading(true);\n this.authService.hasRolesAsync('Admin').subscribe(response => {\n this.isAdmin = response;\n });\n\n this.id = this.activatedRoute.snapshot.params['id'];\n\n if (this.id) {\n this.getSubstanceNames(this.id);\n }\n this.loadingService.setLoading(false);\n }\n\n ngAfterViewInit() {\n }\n\n getSubstanceNames(substanceId: string): void {\n this.generalService.getSubstanceNamesBySubstanceUuid(substanceId).subscribe(substanceNames => {\n this.substanceNames = substanceNames;\n\n // Get Preferred Term or DisplayName == true\n this.substanceNames.forEach((names, index) => {\n if (names.displayName === true) {\n this.preferredTerm = names.name;\n }\n const facetField = 'root_applicationProductList_applicationProductNameList_productName:';\n if (names) {\n if (names.name) {\n if (index > 0) {\n this.fullFacetField = this.fullFacetField + ' OR ';\n }\n this.fullFacetField = this.fullFacetField + facetField + \"\\\"\" + names.name + \"\\\"\";\n }\n }\n });\n this.getApplicationIngredientMatchList();\n });\n }\n\n getApplicationIngredientMatchList(): void {\n // Facet Search for \"Has No Ingredient\"\n const facetParam = { 'Has Ingredients': { 'params': { 'Has No Ingredient': true }, 'isAllMatch': false } };\n\n const subscription = this.applicationService.getApplications(\n null,\n 0,\n 200,\n this.fullFacetField,\n facetParam\n )\n .subscribe(pagingResponse => {\n this.applications = pagingResponse.content;\n this.total = pagingResponse.count;\n if (this.applications.length > 0) {\n this.applications.forEach((application, index) => {\n if (application) {\n\n // Create object locally to display selected columns in tabular format into the table\n const matchObject: SubstanceApplicationMatch = {};\n matchObject.id = application.id;\n matchObject.appType = application.appType;\n matchObject.appNumber = application.appNumber;\n matchObject.status = application.status;\n matchObject.appSubType = application.appSubType;\n\n let productName = '';\n let bdnum = '';\n const newline = ' || ';\n let exactMatchName = '';\n let exactMatchBdnum = '';\n\n // Product\n application.applicationProductList.forEach((elementProd, indexProd) => {\n\n // Need to think about this\n let bdnum = '';\n\n // Product Name\n elementProd.applicationProductNameList.forEach((elementProdName, indexProdName) => {\n if (elementProdName) {\n if (indexProdName > 0) {\n productName = productName + newline;\n }\n productName = productName + elementProdName.productName;\n\n // look for if Substance Name and Product Name have Exact Match\n this.substanceNames.forEach((names, indexNames) => {\n if (names) {\n if (names.name) {\n if (elementProdName.productName) {\n if (names.name === elementProdName.productName.trim()) {\n exactMatchName = names.name;\n\n // Get Substance Key for the Name\n this.generalService.getSubstanceCodesBySubstanceUuid(this.id).subscribe(response => {\n if (response) {\n const substanceCodes = response;\n for (let index = 0; index < substanceCodes.length; index++) {\n if (substanceCodes[index].codeSystem) {\n if ((substanceCodes[index].codeSystem === this.generalService.getSubstanceKeyType()) &&\n (substanceCodes[index].type === 'PRIMARY')) {\n exactMatchBdnum = substanceCodes[index].code;\n matchObject.exactMatchName = exactMatchName;\n\n }\n }\n }\n }\n });\n }\n }\n }\n }\n });\n }\n });\n\n // Ingredient\n elementProd.applicationIngredientList.forEach((elementIngred, indexIngred) => {\n if (elementIngred) {\n if (elementIngred.substanceKey) {\n if (indexIngred > 0) {\n bdnum = bdnum + '|';\n }\n bdnum = bdnum + elementIngred.substanceKey;\n } else {\n bdnum = bdnum + '(No Substance Key)';\n }\n } else {\n bdnum = bdnum + '(No Substance Key)';\n }\n }); // Ingredient forEach\n\n matchObject.productName = productName;\n matchObject.exactMatchName = exactMatchName;\n // matchObject.exactMatchBdnum = exactMatchBdnum;\n matchObject.bdnum = bdnum;\n\n // alert('later ' + exactMatchBdnum);\n\n }); // Product forEach\n\n\n this.substanceApplicationMatchList.push(matchObject);\n }\n }); // Application forEach\n\n this.dataSource = this.substanceApplicationMatchList;\n }\n });\n }\n\n autoUpdateApp(index: number, applicationId: number, bdnum: string): void {\n this.loadingService.setLoading(true);\n this.dataSource[index].autoUpdateMessage = 'Saving....Please wait.';\n this.dataSource[index].isDisableButton = true;\n this.applicationService.getApplicationById(applicationId).subscribe(response => {\n if (response) {\n this.application = response;\n if (this.application) {\n this.application.applicationProductList.forEach((elementProd, indexProd) => {\n elementProd.applicationIngredientList.forEach((elementIngred, indexIngred) => {\n if (!elementIngred.substanceKey) {\n elementIngred.substanceKey = bdnum;\n elementIngred.basisOfStrengthSubstanceKeyType = this.generalService.getSubstanceKeyType();\n elementIngred.basisOfStrengthSubstanceKey = bdnum;\n elementIngred.basisOfStrengthSubstanceKeyType = this.generalService.getSubstanceKeyType();\n elementIngred.ingredientType = 'Active Ingredient';\n elementIngred.applicantIngredName = this.preferredTerm;\n\n this.applicationService.application = this.application;\n this.applicationService.saveApplication().subscribe(responseSaved => {\n const savedApp = responseSaved;\n alert('The Auto Update saved the application record successfully');\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigate(['/sub-app-match-list', this.id]);\n });\n }\n });\n });\n }\n }\n });\n this.loadingService.setLoading(false);\n }\n\n}\n","import { HttpClient } from '@angular/common/http';\r\nimport { SubstanceCardFilter } from '@gsrs-core/substance-details';\r\nimport { SubstanceDetail } from '@gsrs-core/substance';\r\nimport { SubstanceCardFilterParameters } from '@gsrs-core/config';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport const fdaSubstanceCardsFilters: Array = [\r\n {\r\n name: 'fdaSample',\r\n filter: fdaSampleFilter\r\n },\r\n {\r\n name: 'products',\r\n filter: productsFilter\r\n }\r\n];\r\n\r\nexport function fdaSampleFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters,\r\n http: HttpClient\r\n): Observable {\r\n return new Observable(observer => {\r\n observer.next(true);\r\n observer.complete();\r\n });\r\n}\r\n\r\nexport function productsFilter(\r\n substance: SubstanceDetail,\r\n filter: SubstanceCardFilterParameters,\r\n http: HttpClient\r\n): Observable {\r\n return new Observable(observer => {\r\n http.get('/assets/data/gsrs-products-test.json').subscribe((response: Array) => {\r\n\r\n if (response && response.length) {\r\n observer.next(true);\r\n } else {\r\n observer.next(false);\r\n }\r\n observer.complete();\r\n });\r\n });\r\n}\r\n","import { Injectable, Inject, PLATFORM_ID, OnDestroy } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nimport { AuthService } from '@gsrs-core/auth';\nimport { UtilsService } from '@gsrs-core/utils';\n\n@Injectable()\nexport class SsoRefreshService implements OnDestroy {\n private iframe: HTMLIFrameElement;\n private refreshInterval: any;\n private baseHref: string;\n\n constructor(\n @Inject(PLATFORM_ID) private platformId: Object,\n private authService: AuthService,\n private utilsService: UtilsService\n ) {\n if (isPlatformBrowser(this.platformId)) {\n this.iframe = document.createElement('IFRAME') as HTMLIFrameElement;\n this.iframe.title = 'page refresher';\n this.iframe.name = 'refresher';\n this.iframe.style.height = '0';\n this.iframe.style.opacity = '0';\n this.iframe.src = `/assets/refresh/refresh.html`;\n document.body.appendChild(this.iframe);\n\n if (window.location.pathname.indexOf('/ginas/app/beta/') > -1) {\n this.baseHref = '/ginas/app/beta/';\n }\n }\n }\n\n init(): any {\n this.authService.getAuth().subscribe(auth => {\n if (auth != null && this.refreshInterval == null) {\n clearInterval(this.refreshInterval);\n this.refreshInterval = setInterval(() => {\n this.iframe.src = `${this.baseHref || ''}assets/refresh/refresh.html?key=${this.utilsService.newUUID()}`;\n }, 120000);\n } else {\n clearInterval(this.refreshInterval);\n this.refreshInterval = null;\n }\n });\n }\n\n ngOnDestroy() {\n clearInterval(this.refreshInterval);\n this.refreshInterval = null;\n }\n}\n","import { Component, OnInit, AfterViewInit } from '@angular/core';\n\n@Component({\n selector: 'app-jira-submit-ticket',\n templateUrl: './jira-submit-ticket.component.html',\n styleUrls: ['./jira-submit-ticket.component.scss']\n})\nexport class JiraSubmitTicketComponent implements OnInit, AfterViewInit {\n\n constructor() { }\n\n ngOnInit() {\n this.loadJiraScript();\n this.initCollectorDialog();\n }\n\n ngAfterViewInit() {\n }\n\n loadJiraScript() {\n const src = 'https://cnigsllc.atlassian.net/s/d41d8cd98f00b204e9800998ecf8427e-T/-nh6v6l/b/0/a44af77267a987a660377e5c46e0fb64/_/download/batch/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector.js?locale=en-US&collectorId=558f42b6';\n\n const node = document.createElement('script');\n node.src = src;\n node.type = 'text/javascript';\n node.async = true;\n document.getElementsByTagName('head')[0].appendChild(node);\n }\n\n initCollectorDialog() {\n const text = 'window.ATL_JQ_PAGE_PROPS = {\"triggerFunction\": function (showCollectorDialog) {window.showCollectorDialog = showCollectorDialog}};';\n const node = document.createElement('script');\n node.type = 'text/javascript';\n node.innerHTML = text;\n node.async = true;\n document.getElementsByTagName('head')[0].appendChild(node);\n }\n\n createTicket() {\n (window as any).showCollectorDialog();\n }\n\n}\n","
    Submit a Helpdesk Ticket (JIRA) \n\n
    \n","import { Component, OnInit } from '@angular/core';\nimport { GeneralService } from '../service/general.service';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-user-manual',\n templateUrl: './user-manual.component.html',\n styleUrls: ['./user-manual.component.scss']\n})\nexport class UserManualComponent implements OnInit {\n\n message: string;\n\n constructor(\n private generalService: GeneralService,\n private sanitizer: DomSanitizer) { }\n\n ngOnInit() {\n this.getUserManual();\n }\n\n getUserManual(): void {\n this.generalService.getManualFile().subscribe(response => {\n let filename = response.headers.get('Content-Disposition').split(';')[1].split('filename')[1].split('=')[1].trim();\n if (filename == null) {\n filename = 'FDA_GSRS_User_Manual.pdf';\n }\n this.downloadFile(response.body, filename);\n });\n }\n\n downloadFile(response: any, filename: string): void {\n const dataType = 'application/x-download';\n const binaryData = [];\n binaryData.push(response);\n const downloadLink = document.createElement('a');\n downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, { type: dataType }));\n downloadLink.setAttribute('download', filename);\n document.body.appendChild(downloadLink);\n downloadLink.click();\n this.message = 'The User Manual has been downloaded to your local download directory';\n }\n\n}\n","
    \n{{message}}\n
    ","
    \n
    \n
    \n\n \n \n \n\n\n \n \n \n    \n\n \n \n View Impurities\n    \n\n \n    \n \n\n \n \n\n \n  \n \n      \n \n\n
    \n\n \n \n
    \n {{submissionMessage}}\n
    \n\n \n
    \n 0\">\n
    \n Please correct or dismiss the following errors and submit again:\n
    \n
    \n
    \n {{message.messageType}}
    \n
    {{message.message}}
    {{link.text}}
    \n \n
    \n
    \n\n
    \n \n \n
    \n
    \n \n\n
    \n
    \n\n \n\n
    \n
    \n
    \n
    \n
    \n
    \n {{title}}\n
    \n\n
    \n
    \n
    \n Created By: {{impurities.createdBy}}   \n Create Date:\n {{impurities.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{impurities.modifiedBy}}   \n Modify Date:\n {{impurities.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
    \n
    \n
    \n\n \n \n \n\n
    \n \n \n\n \n \n\n \n \n \n\n \n \n\n \n \n \n\n \n \n
    \n\n \n
    \n \n \n \n\n \n \n \n\n \n \n\n \n \n \n \n\n
    \n \n\n\n \n
    \n \n \n \n
    \n
    \n Substance \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n\n\n \n \n\n\n \n\n
    \n \n \n \n
    \n Total Impurities\n
    \n
    \n \n \n
    \n \n \n
    \n\n \n \n\n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n


    ","import { Component, OnInit, AfterViewInit, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { Impurities, ImpuritiesDetails, ImpuritiesUnspecified, SubRelationship, ValidationMessage } from '../model/impurities.model';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { ImpuritiesService } from '../service/impurities.service';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { ControlledVocabularyService } from '../../../core/controlled-vocabulary/controlled-vocabulary.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { Subscription } from 'rxjs';\nimport * as moment from 'moment';\nimport { DatePipe, formatDate } from '@angular/common';\nimport { Title } from '@angular/platform-browser';\nimport * as defiant from '@gsrs-core/../../../node_modules/defiant.js/dist/defiant.min.js';\nimport { MatDialog } from '@angular/material/dialog';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { FormBuilder } from '@angular/forms';\nimport { JsonDialogFdaComponent } from '../../json-dialog-fda/json-dialog-fda.component';\nimport { ConfirmDialogComponent } from '../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-impurities-form',\n templateUrl: './impurities-form.component.html',\n styleUrls: ['./impurities-form.component.scss']\n})\nexport class ImpuritiesFormComponent implements OnInit, OnDestroy {\n\n isLoading = true;\n showSubmissionMessages = false;\n submissionMessage: string;\n validationMessages: Array = [];\n validationResult = false;\n private subscriptions: Array = [];\n copy: string;\n private overlayContainer: HTMLElement;\n serverError: boolean;\n searchValue: string;\n errorMessage: string;\n subName = 'Substance Name *';\n impurities: Impurities;\n substanceId = null;\n id?: number;\n isDisableData = false;\n username = null;\n title = null;\n submitDateMessage = '';\n statusDateMessage = '';\n isAdmin = false;\n subRelationship: Array = [];\n substanceName: string;\n substanceNameHintMessage = '';\n panelExpanded = true;\n\n constructor(\n private impuritiesService: ImpuritiesService,\n private substanceService: SubstanceService,\n private authService: AuthService,\n private loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private gaService: GoogleAnalyticsService,\n private utilsService: UtilsService,\n private cvService: ControlledVocabularyService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog,\n private fb: FormBuilder,\n private titleService: Title) { }\n\n ngOnInit() {\n const rolesSubscription = this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(rolesSubscription);\n\n this.loadingService.setLoading(true);\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.username = this.authService.getUser();\n const routeSubscription = this.activatedRoute\n .params\n .subscribe(params => {\n if (params['id']) {\n const id = params['id'];\n this.title = 'Update Impurity';\n if (id !== this.id) {\n this.id = id;\n this.gaService.sendPageView(`Impurity Edit`);\n this.titleService.setTitle(`Update Impurities`);\n this.getImpurities();\n }\n } else { //Copy Impurities to register form\n this.title = 'Register Impurities';\n this.id = this.activatedRoute.snapshot.queryParams['copy'] || null;\n if (this.id) {\n this.getImpurities('copy');\n this.gaService.sendPageView(`Impurities Register`);\n } else {\n setTimeout(() => {\n this.gaService.sendPageView(`Impurities Register`);\n this.titleService.setTitle(`Register Impurities`);\n this.impuritiesService.loadImpurities();\n this.impurities = this.impuritiesService.impurities;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }\n }\n });\n this.subscriptions.push(routeSubscription);\n }\n\n ngOnDestroy(): void {\n // this.applicationService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n getImpurities(newType?: string): void {\n if (this.id != null) {\n const id = this.id.toString();\n const getImpuritySubscribe = this.impuritiesService.getImpurities(id).subscribe(response => {\n if (response) {\n\n // before copying existing impurities, delete the id\n if (newType && newType === 'copy') {\n this.scrub(response);\n }\n this.impuritiesService.loadImpurities(response);\n this.impurities = this.impuritiesService.impurities;\n\n // if (this.impurities.substanceUuid) {\n // this.getSubstancePreferredName(this.impurities.substanceUuid);\n // }\n } else {\n this.handleProductRetrivalError();\n }\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }, error => {\n this.gaService.sendException('getImpurities: error from API call');\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.handleProductRetrivalError();\n });\n this.subscriptions.push(getImpuritySubscribe);\n }\n }\n\n validate(): void {\n this.isLoading = true;\n this.serverError = false;\n this.loadingService.setLoading(true);\n\n // Check validation on Client side.\n this.validateClient();\n\n // If there is no error on client side, check validation on server side\n if (this.validationMessages.length === 0) {\n // this.impuritiesService.validateImpurities().pipe(take(1)).subscribe(results => {\n this.submissionMessage = null;\n // this.validationMessages = results.validationMessages.filter(\n // message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n // this.validationResult = results.valid;\n\n this.validationResult = true;\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n\n\n if (this.validationMessages.length === 0 && this.validationResult === true) {\n this.submissionMessage = 'Impurities is Valid. Would you like to submit?';\n }\n /* }, error => {\n this.addServerError(error);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n */\n }\n // }\n }\n\n setValidationMessage(message: string) {\n const validate: ValidationMessage = {};\n validate.message = message;\n validate.messageType = 'ERROR';\n this.validationMessages.push(validate);\n this.validationResult = false;\n }\n\n // Validate data in client side first\n validateClient(): void {\n this.validationMessages = [];\n this.validationResult = true;\n\n // Validate Subsance\n if (this.impurities.impuritiesSubstanceList.length === 0) {\n this.setValidationMessage('Substance Name is required');\n }\n\n // Validate Substance Name\n if (this.impurities != null) {\n this.impurities.impuritiesSubstanceList.forEach((elementSub, index) => {\n if (elementSub != null) {\n if (elementSub.substanceUuid == null) {\n this.setValidationMessage('Substance Name (' + (index + 1) + ') is required');\n }\n }\n });\n }\n\n if (this.validationMessages.length > 0) {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }\n\n }\n\n toggleValidation(): void {\n this.showSubmissionMessages = !this.showSubmissionMessages;\n }\n\n addServerError(error: any): void {\n this.serverError = true;\n this.validationResult = false;\n this.validationMessages = null;\n\n const message: ValidationMessage = {\n actionType: 'server failure',\n links: [],\n appliedChange: false,\n suggestedChange: false,\n messageType: 'ERROR',\n message: 'Unknown Server Error'\n };\n if (error && error.error && error.error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || ': ') + error.error.message;\n } else if (error && error.error && (typeof error.error) === 'string') {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.error;\n } else if (error && error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.message;\n }\n this.validationMessages = [message];\n this.showSubmissionMessages = true;\n }\n\n private handleProductRetrivalError() {\n const notification: AppNotification = {\n message: 'The impurities you\\'re trying to edit doesn\\'t exist.',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/impurities/register']);\n this.impuritiesService.loadImpurities();\n }, 5000);\n }\n\n submit(): void {\n this.isLoading = true;\n this.loadingService.setLoading(true);\n this.impuritiesService.saveImpurities().subscribe(response => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.validationMessages = null;\n this.submissionMessage = 'Impurities was saved successfully!';\n this.showSubmissionMessages = true;\n this.validationResult = false;\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = '';\n if (response.id) {\n this.impuritiesService.bypassUpdateCheck();\n const id = response.id;\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\n this.router.onSameUrlNavigation = 'reload';\n // this.router.navigate(['/impuritiesDetails', id, 'edit']);\n this.router.navigate(['/impurities', id]);\n }\n }, 4000);\n }\n /*\n , (error: SubstanceFormResults) => {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.submissionMessage = null;\n if (error.validationMessages && error.validationMessages.length) {\n this.validationResult = error.isSuccessfull;\n this.validationMessages = error.validationMessages\n .filter(message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.showSubmissionMessages = true;\n } else {\n this.submissionMessage = 'There was a problem with your submission';\n this.addServerError(error.serverError);\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = null;\n }, 8000);\n }\n }*/\n );\n }\n\n\n confirmDeleteImpurities() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete this Impurities?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteImpurities();\n }\n });\n }\n\n deleteImpurities(): void {\n this.impuritiesService.deleteImpurities().subscribe(response => {\n this.impuritiesService.bypassUpdateCheck();\n this.displayMessageAfterDeleteImpurities();\n }, (err) => {\n console.log(err);\n }\n );\n }\n\n displayMessageAfterDeleteImpurities() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: {\n message: 'This impurities record was deleted successfully',\n type: 'home'\n }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n this.router.navigate(['/home']);\n });\n }\n\n showJSON(): void {\n const dialogRef = this.dialog.open(JsonDialogFdaComponent, {\n width: '90%',\n height: '90%',\n data: this.impurities\n });\n\n // this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n });\n this.subscriptions.push(dialogSubscription);\n\n }\n\n addNewImpuritiesSubstance(event: Event) {\n event.stopPropagation();\n\n this.impuritiesService.addNewImpuritiesSubstance();\n }\n\n addNewImpuritiesTotal() {\n this.impuritiesService.addNewImpuritiesTotal();\n }\n\n scrub(oldraw: any): any {\n const old = oldraw;\n const idHolders = defiant.json.search(old, '//*[id]');\n for (let i = 0; i < idHolders.length; i++) {\n if (idHolders[i].id) {\n delete idHolders[i].id;\n }\n }\n\n const createHolders = defiant.json.search(old, '//*[creationDate]');\n for (let i = 0; i < createHolders.length; i++) {\n delete createHolders[i].creationDate;\n }\n\n const createdByHolders = defiant.json.search(old, '//*[createdBy]');\n for (let i = 0; i < createdByHolders.length; i++) {\n delete createdByHolders[i].createdBy;\n }\n\n const modifyHolders = defiant.json.search(old, '//*[lastModifiedDate]');\n for (let i = 0; i < modifyHolders.length; i++) {\n delete modifyHolders[i].lastModifiedDate;\n }\n\n const modifiedByHolders = defiant.json.search(old, '//*[modifiedBy]');\n for (let i = 0; i < modifiedByHolders.length; i++) {\n delete modifiedByHolders[i].modifiedBy;\n }\n\n const intVersionHolders = defiant.json.search(old, '//*[internalVersion]');\n for (let i = 0; i < intVersionHolders.length; i++) {\n delete intVersionHolders[i].internalVersion;\n }\n\n delete old['creationDate'];\n delete old['createdBy'];\n delete old['modifiedBy'];\n delete old['lastModifiedDate'];\n delete old['internalVersion'];\n delete old['$$update'];\n\n return old;\n }\n\n updateDateTypeDate(event) {\n const impDate = new Date(event);\n // Adding one day since the Date object is decreasing one day. moment.utc did not work.\n this.impurities.dateTypeDate = moment(impDate).add(1, 'days').format('MM/DD/yyyy');\n }\n\n}\n","
    \n
    \n
    \n
    Impurities {{(impuritiesDetailsIndex+1)}}
    \n
    \n
    \n \n
    \n
    \n\n\n \n
    \n\n \n
    \n \n \n
    \n {{impuritiesDetails.relatedSubstanceUnii}}\n
    \n
    \n \n
    \n
    \n\n \n
    \n\n
    \n \n \n \n\n \n \n\n \n \n \n \n
    \n\n
    \n \n \n\n \n \n \n\n \n \n
    \n\n\n \n
    \n\n
    \n \n
    \n\n
    \n
    \n\n
    \n \n \n\n \n \n \n\n \n \n\n
    \n \n
    \n
    \n
    \n\n
    \n\n
    \n\n
    \n \n\n\n
    \n\n
    \n
    ","import { Component, OnInit, Input } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\nimport { ImpuritiesService } from '../../service/impurities.service';\nimport { Impurities, ImpuritiesDetails, IdentityCriteria, SubRelationship } from '../../model/impurities.model';\n\n@Component({\n selector: 'app-impurities-details-form',\n templateUrl: './impurities-details-form.component.html',\n styleUrls: ['./impurities-details-form.component.scss']\n})\nexport class ImpuritiesDetailsFormComponent implements OnInit {\n\n @Input() impuritiesDetails: ImpuritiesDetails;\n @Input() impuritiesDetailsIndex: number;\n @Input() impuritiesTestIndex: number;\n @Input() impuritiesSubstanceIndex: number;\n @Input() relatedSubstanceUuid: string;\n\n impurity: any;\n public subRelationship: Array = [];\n substanceName: string;\n isDisableData: false;\n isLoading = false;\n\n constructor(\n private impuritiesService: ImpuritiesService,\n private loadingService: LoadingService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n }\n\n relatedSubstanceUpdated(substance: any): void {\n if (substance != null) {\n this.impuritiesDetails.relatedSubstanceUuid = substance.uuid;\n this.impuritiesDetails.relatedSubstanceUnii = substance.approvalID;\n }\n }\n\n addNewImpurities() {\n const newImpuritiesDetails: ImpuritiesDetails = { identityCriteriaList: [] };\n this.impuritiesService.addNewImpuritiesDetails(this.impuritiesSubstanceIndex, this.impuritiesTestIndex, newImpuritiesDetails);\n }\n\n addNewIdentityCriteria() {\n const identityCriteria: IdentityCriteria = {};\n this.impuritiesDetails.identityCriteriaList.unshift(identityCriteria);\n }\n\n confirmDeleteImpuritiesDetails() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Impurities ' + (this.impuritiesDetailsIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteImpuritiesDetails();\n }\n });\n }\n\n deleteImpuritiesDetails() {\n this.impuritiesService.deleteImpuritiesDetails(this.impuritiesSubstanceIndex, this.impuritiesTestIndex, this.impuritiesDetailsIndex);\n }\n\n confirmDeleteIdentityCriteria(impuritiesDetailsIndex: number, identityCriteriaIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Identity Criteria ' + (identityCriteriaIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteIdentityCriteria(identityCriteriaIndex);\n }\n });\n }\n\n deleteIdentityCriteria(identityCriteriaIndex: number) {\n this.impuritiesService.deleteIdentityCriteria(this.impuritiesSubstanceIndex,\n this.impuritiesTestIndex, this.impuritiesDetailsIndex, identityCriteriaIndex);\n }\n\n}\n","
    \n
    \n
    \n
    \n\n \n \n
    \n Impurities Details    \n \n \n \n \n \n \n \n \n
    \n
    \n Created By: {{impurities.createdBy}}   \n Create\n Date:{{impurities.creationDate|date: 'MM/dd/yyyy hh:mm:ss a'}}   \n Modified By: {{impurities.modifiedBy}}   \n Modify Date: {{impurities.lastModifiedDate|date: 'MM/dd/yyyy hh:mm:ss a'}}\n
    \n
    \n\n \n \n
    \n
    \n
    \n
    \n Source Type:\n
    \n
    \n {{impurities.sourceType}}\n
    \n
    \n
    \n
    \n Source:\n
    \n
    \n {{impurities.source}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Source ID:\n
    \n
    \n {{impurities.sourceId}}\n
    \n
    \n
    \n
    \n Type:\n
    \n
    \n {{impurities.type}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Spec Type:\n
    \n
    \n {{impurities.specType}}\n
    \n
    \n
    \n
    \n Product ID:\n
    \n
    \n {{impurities.productId}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Date Type:\n
    \n
    \n {{impurities.dateType}}\n
    \n
    \n
    \n
    \n Date Type Date:\n
    \n
    \n {{impurities.dateTypeDate|date: 'MM/dd/yyyy'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Product/Substance Name:\n
    \n
    \n {{impurities.productSubstanceName}}\n
    \n
    \n
    \n
    \n Submitter Name:\n
    \n
    \n {{impurities.submitterName}}\n
    \n
    \n
    \n\n\n \n
    \n\n
    0\">\n


    \n
    \n
    \n {{(i + 1)}} of {{impurities.impuritiesSubstanceList.length}}. Impurity Substance\n
    \n\n
    \n \n \n \n\n
    \n
    \n
    \n Substance Name:\n
    \n
    \n \n

    {{subs.approvalID}}
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n Assay Low:

    \n Assay High:

    \n Unit:

    \n Comments:
    \n
    \n
    \n {{subs.low}}

    \n {{subs.high}}

    \n {{subs.unit}}

    \n {{subs.comments}}
    \n
    \n
    \n
    \n\n \n \n\n
    \n
    \n \n Test {{(i + 1)}} of {{subs.impuritiesTestList.length}}\n ({{subs.substanceName}})\n \n\n
    \n
    \n
    \n Test:\n
    \n
    \n {{impTest.test}}\n
    \n
    \n
    \n
    \n Test Type:\n
    \n
    \n {{impTest.testType}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Test Description:\n
    \n
    \n {{impTest.testDescription}}\n
    \n
    \n
    \n
    \n Comments:\n
    \n
    \n {{impTest.comments}}\n
    \n
    \n
    \n\n\n \n
    \n \n \n Impurities ({{impTest.impuritiesDetailsList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Related SubstanceSource Impurity NameImpurity TypeLimit TypeLimit ValueUnitCommentsIdentity Criteria
    {{i + 1}}\n
    \n \n

    {{x.relatedSubstanceUnii}}
    \n \n
    \n
    {{ x.sourceImpurityName }}{{ x.impurityType }}{{ x.limitType }}{{ x.limitValue }}{{ x.unit }}{{ x.comments }}\n
    \n 0\">
    \n Criteria Type: {{idenCriteria.identityCriteriaType}}
    \n Amount Value: {{idenCriteria.amountValue}}
    \n Unit: {{idenCriteria.unit}}\n
    \n
    \n
    \n
    \n
    \n \n\n\n\n \n
    \n \n \n Unspecified Impurities ({{impTest.impuritiesUnspecifiedList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Impurity TypeTest TypeLimit TypeLimit ValueUnitCommentsIdentity Criteria
    {{i + 1}}{{ x.impurityType }}{{ x.testType }}{{ x.limitType }}{{ x.limitValue }}{{ x.unit }}{{ x.comments }}\n
    \n 0\">
    \n Criteria Type: {{idenCriteria.identityCriteriaType}}
    \n Amount Value: {{idenCriteria.amountValue}}
    \n Unit: {{idenCriteria.unit}}\n
    \n
    \n
    \n
    \n
    \n \n\n\n
    \n

    \n
    \n\n\n \n
    \n \n \n Residual Solvents Impurities ({{subs.impuritiesResidualSolventsList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Related SubstancePharmaceutical LimitTest TypeLimit TypeLimit ValueUnitComments
    {{i + 1}}\n
    \n \n

    {{x.relatedSubstanceUnii}}
    \n \n
    \n
    {{ x.pharmaceuticalLimit }}{{ x.testType }}{{ x.limitType }}{{ x.limitValue }}{{ x.unit }}{{ x.comments }}
    \n
    \n
    \n
    \n \n\n\n \n
    \n \n \n Inorganic Impurities ({{subs.impuritiesInorganicList.length}})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    #Related SubstanceTest TypeLimit TypeLimit ValueUnitComments
    {{i + 1}}\n
    \n \n

    {{x.relatedSubstanceUnii}}
    \n \n
    \n
    {{ x.testType }}{{ x.limitType }}{{ x.limitValue }}{{ x.unit }}{{ x.comments }}
    \n
    \n
    \n
    \n \n\n
    \n
    \n
    \n\n\n
    \n\n\n\n \n
    \n \n \n Total Impurities\n \n \n
    \n
    \n
    \n Test Type:\n
    \n
    \n {{impurities.impuritiesTotal.testType}}\n
    \n
    \n
    \n
    \n Limit Value:\n
    \n
    \n {{impurities.impuritiesTotal.limitValue}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Amount Value:\n
    \n
    \n {{impurities.impuritiesTotal.amountValue}}\n
    \n
    \n
    \n
    \n Limit Type:\n
    \n
    \n {{impurities.impuritiesTotal.limitType}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Comments:\n
    \n
    \n {{impurities.impuritiesTotal.comments}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n \n\n
    \n
    \n\n
    \n
    \n\n \n



    \n
    There is no Impurities Data found.
    \n
    \n\n
    \n



    ","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { SafeUrl } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { UtilsService } from '../../../core/utils/utils.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { ImpuritiesService } from '../service/impurities.service';\nimport { GeneralService } from '../../service/general.service';\nimport { Impurities } from '../model/impurities.model';\n\n@Component({\n selector: 'app-impurities-details',\n templateUrl: './impurities-details.component.html',\n styleUrls: ['./impurities-details.component.scss']\n})\nexport class ImpuritiesDetailsComponent implements OnInit, OnDestroy {\n\n id: string;\n impurities: Impurities;\n substanceName = '';\n flagIconSrcPath: string;\n isAdmin = false;\n updateApplicationUrl: string;\n message = '';\n subRelationship: any;\n private subscriptions: Array = [];\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private authService: AuthService,\n private utilsService: UtilsService,\n private loadingService: LoadingService,\n private gaService: GoogleAnalyticsService,\n private mainNotificationService: MainNotificationService,\n private impuritiesService: ImpuritiesService,\n private generalService: GeneralService,\n private titleService: Title\n ) { }\n\n ngOnInit() {\n this.loadingService.setLoading(true);\n\n const rolesSubscription = this.authService.hasAnyRolesAsync('admin', 'updater', 'superUpdater').subscribe(canEdit => {\n this.isAdmin = canEdit;\n });\n this.subscriptions.push(rolesSubscription);\n\n this.id = this.activatedRoute.snapshot.params['id'];\n if (this.id != null) {\n this.getImpurities();\n } else {\n this.handleSubstanceRetrivalError();\n }\n this.loadingService.setLoading(false);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n }\n\n getImpurities(): void {\n const getImpuritiesSubscribe = this.impuritiesService.getImpurities(this.id).subscribe(response => {\n this.impurities = response;\n if (Object.keys(this.impurities).length > 0) {\n\n this.titleService.setTitle(`Impurities Details`);\n\n // Get Substance Name for SubstanceUuid in SubstanceList\n this.impurities.impuritiesSubstanceList.forEach((elementRel, indexRel) => {\n if (elementRel.substanceUuid) {\n const impSubNameSubscription = this.generalService.getSubstanceBySubstanceUuid(elementRel.substanceUuid).subscribe\n (substance => {\n if (substance) {\n elementRel.substanceName = substance._name;\n elementRel.approvalID = substance.approvalID;\n }\n });\n this.subscriptions.push(impSubNameSubscription);\n }\n });\n\n // Get Substance Name for SubstanceUuid in ImpuritiesDetailsList\n this.impurities.impuritiesSubstanceList.forEach((elementRelSub) => {\n elementRelSub.impuritiesTestList.forEach((elementRelTest) => {\n elementRelTest.impuritiesDetailsList.forEach((elementRelImpuDet) => {\n if (elementRelImpuDet.relatedSubstanceUuid) {\n const impDetNameSubscription = this.generalService.getSubstanceBySubstanceUuid\n (elementRelImpuDet.relatedSubstanceUuid)\n .subscribe(substance => {\n if (substance) {\n elementRelImpuDet.substanceName = substance._name;\n elementRelImpuDet.relatedSubstanceUnii = substance.approvalID;\n }\n });\n this.subscriptions.push(impDetNameSubscription);\n }\n });\n });\n });\n\n // Get Substance Name for SubstanceUuid in ImpuritiesResidualSolventsList\n this.impurities.impuritiesSubstanceList.forEach((elementRelSub) => {\n elementRelSub.impuritiesResidualSolventsList.forEach((elementRelResidual) => {\n if (elementRelResidual.relatedSubstanceUuid) {\n const impResidualNameSubscription = this.generalService.getSubstanceBySubstanceUuid\n (elementRelResidual.relatedSubstanceUuid).subscribe(substance => {\n if (substance) {\n elementRelResidual.substanceName = substance._name;\n elementRelResidual.relatedSubstanceUnii = substance.approvalID;\n }\n });\n this.subscriptions.push(impResidualNameSubscription);\n }\n });\n });\n\n // Get Substance Name for SubstanceUuid in ImpuritiesInorganicList\n this.impurities.impuritiesSubstanceList.forEach((elementRelSub) => {\n elementRelSub.impuritiesInorganicList.forEach((elementRelInorganic) => {\n if (elementRelInorganic.relatedSubstanceUuid) {\n const impInorganicNameSubscription = this.impuritiesService.getSubstanceDetailsBySubstanceId\n (elementRelInorganic.relatedSubstanceUuid).subscribe(substanceNames => {\n if (substanceNames) {\n elementRelInorganic.substanceName = substanceNames.name;\n elementRelInorganic.relatedSubstanceUnii = substanceNames.unii;\n }\n });\n this.subscriptions.push(impInorganicNameSubscription);\n }\n });\n });\n\n }\n }, error => {\n this.handleSubstanceRetrivalError();\n });\n this.subscriptions.push(getImpuritiesSubscribe);\n }\n\n getSubstancePreferredName(substanceUuid: string) {\n let name = '';\n const getSubDetailsSubscribe = this.generalService.getSubstanceBySubstanceUuid(substanceUuid).subscribe(substance => {\n if (substance) {\n name = substance._name;\n }\n });\n this.subscriptions.push(getSubDetailsSubscribe);\n }\n\n private handleSubstanceRetrivalError() {\n this.loadingService.setLoading(false);\n const notification: AppNotification = {\n message: 'The web address above is incorrect. You\\'re being forwarded to Browse Substances',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/browse-substance']);\n }, 5000);\n }\n\n getSafeStructureImgUrl(structureId: string, size: number = 150): SafeUrl {\n return this.utilsService.getSafeStructureImgUrl(structureId, size, true);\n }\n\n}\n","\n\n 0\">\n

    \n\n
    \n\n
    \n \n \n\n \n \n\n \n \n\n \n \n \n\n \n \n\n \n \n \n\n
    \n \n
    \n
    \n\n\n \n
    \n\n
    \n \n
    \n\n
    \n
    \n\n
    \n \n \n\n \n \n \n\n \n \n\n
    \n \n
    \n
    \n
    \n\n
    \n\n
    \n\n
    ","import { Component, OnInit, Input } from '@angular/core';\nimport { Impurities, ImpuritiesDetails, IdentityCriteria, ImpuritiesUnspecified, SubRelationship, ValidationMessage } from '../../model/impurities.model';\nimport { ImpuritiesService } from '../../service/impurities.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-impurities-unspecified-form',\n templateUrl: './impurities-unspecified-form.component.html',\n styleUrls: ['./impurities-unspecified-form.component.scss']\n})\nexport class ImpuritiesUnspecifiedFormComponent implements OnInit {\n\n @Input() impuritiesUnspecified: ImpuritiesUnspecified;\n @Input() impuritiesUnspecifiedIndex: number;\n @Input() impuritiesTestIndex: number;\n @Input() impuritiesSubstanceIndex: number;\n\n impurity: any;\n public subRelationship: Array = [];\n substanceName: string;\n isDisableData: false;\n isLoading = false;\n\n constructor(\n private impuritiesService: ImpuritiesService,\n private loadingService: LoadingService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n }\n\n confirmDeleteImpuritiesUnspecified() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Unspecified Impurities ' + (this.impuritiesUnspecifiedIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteImpuritiesUnspecified();\n }\n });\n }\n\n deleteImpuritiesUnspecified() {\n this.impuritiesService.deleteImpuritiesUnspecified(this.impuritiesSubstanceIndex,\n this.impuritiesTestIndex, this.impuritiesUnspecifiedIndex);\n }\n\n addNewIdentityCriteria() {\n this.impuritiesService.addNewIdentityCriteriaUnspecified(this.impuritiesSubstanceIndex,\n this.impuritiesTestIndex, this.impuritiesUnspecifiedIndex);\n }\n\n confirmDeleteIdentityCriteria(impuritiesUnspecifiedIndex: number) {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Identity Critieria ' + (impuritiesUnspecifiedIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteIdentityCriteria(impuritiesUnspecifiedIndex);\n }\n });\n }\n\n deleteIdentityCriteria(identityCriteriaUnspecIndex: number) {\n this.impuritiesService.deleteIdentityCriteriaUnspecified(this.impuritiesSubstanceIndex,\n this.impuritiesTestIndex, this.impuritiesUnspecifiedIndex, identityCriteriaUnspecIndex);\n }\n\n\n}\n","import { Component, OnInit, Input } from '@angular/core';\nimport { Impurities, ImpuritiesDetails, IdentityCriteria, ImpuritiesUnspecified, SubRelationship, ValidationMessage, ImpuritiesTotal } from '../../model/impurities.model';\nimport { ImpuritiesService } from '../../service/impurities.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-impurities-total-form',\n templateUrl: './impurities-total-form.component.html',\n styleUrls: ['./impurities-total-form.component.scss']\n})\nexport class ImpuritiesTotalFormComponent implements OnInit {\n\n @Input() impuritiesTotal: ImpuritiesTotal;\n @Input() impuritiesTotalIndex: number;\n\n constructor(\n private impuritiesService: ImpuritiesService,\n private loadingService: LoadingService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n // alert(this.impuritiesTotalIndex);\n // this.addNewImpuritiesTotal();\n }\n\n addNewImpuritiesTotal() {\n this.impuritiesService.addNewImpuritiesTotal();\n }\n\n}\n","
    \n \n \n \n\n \n \n\n \n \n \n\n \n \n \n\n \n \n \n
    ","
    \n
    \n
    \n
    Test  {{(impuritiesTestIndex+1)}}
    \n
    \n
    \n \n
    \n
    \n\n\n \n
    \n \n \n \n\n \n \n
    \n\n \n
    \n \n \n \n \n\n \n \n \n \n
    \n\n \n
    \n
    \n \n Impurities\n \n           \n \n
    \n
    \n\n
    \n \n \n
    \n \n\n\n

    \n \n \n \n Unspecified Impurities\n \n           \n \n \n
    \n
    \n \n \n
    \n \n \n\n
    \n
    \n
    ","import { Component, OnInit, Input } from '@angular/core';\nimport { Impurities, ImpuritiesTesting, ImpuritiesDetails, IdentityCriteria, SubRelationship, ImpuritiesSubstance } from '../../model/impurities.model';\nimport { ImpuritiesService } from '../../service/impurities.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-impurities-test-form',\n templateUrl: './impurities-test-form.component.html',\n styleUrls: ['./impurities-test-form.component.scss']\n})\nexport class ImpuritiesTestFormComponent implements OnInit {\n\n @Input() impuritiesTest: ImpuritiesTesting;\n @Input() impuritiesTestIndex: number;\n @Input() impuritiesSubstanceIndex: number;\n\n constructor( private impuritiesService: ImpuritiesService,\n private loadingService: LoadingService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n }\n\n addNewImpuritiesDetails() {\n this.createNewImpurities(null);\n }\n\n createNewImpurities(relationshipUuid: string) {\n const newImpuritiesDetails: ImpuritiesDetails = { identityCriteriaList: [] };\n newImpuritiesDetails.relatedSubstanceUuid = relationshipUuid;\n this.impuritiesTest.impuritiesDetailsList.unshift(newImpuritiesDetails);\n }\n\n addNewImpuritiesUnspecified() {\n this.impuritiesService.addNewImpuritiesUnspecified(this.impuritiesSubstanceIndex, this.impuritiesTestIndex);\n }\n\n confirmDeleteImpuritiesTest() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Test ' + (this.impuritiesTestIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteImpuritiesTest();\n }\n });\n }\n\n deleteImpuritiesTest() {\n this.impuritiesService.deleteImpuritiesTest(this.impuritiesSubstanceIndex, this.impuritiesTestIndex);\n }\n\n}\n","
    \n
    \n
    Substance  {{(impuritiesSubstanceIndex+1)}}
    \n
    \n
    \n \n
    \n
    \n\n\n \n
    \n\n \n
    \n \n \n
    \n {{impuritiesSubstance.approvalID}}\n
    \n
    \n
    \n \n \n Register New\n \n             \n \n \n Search By Structure\n \n
    \n
    \n
    \n\n \n
    \n
    \n \n \n \n\n \n \n \n\n \n \n
    \n\n
    \n \n \n \n
    \n\n
    \n
    \n
    \n\n \n \n \n \n
    \n
    \n Test \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n {{errorMessage}}\n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n\n\n \n
    \n \n \n \n
    \n
    \n Residual Solvents \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n\n
    \n \n \n
    \n
    \n \n\n\n\n \n
    \n \n \n \n
    \n
    \n Inorganic Impurities \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n\n
    \n \n \n
    \n\n
    \n \n\n
    \n
    \n

    ","import { Component, OnInit, Input } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\nimport { ImpuritiesService } from '../../service/impurities.service';\nimport { GeneralService } from '../../../service/general.service';\nimport { Impurities, ImpuritiesSubstance, ImpuritiesTesting, ImpuritiesDetails, IdentityCriteria, SubRelationship } from '../../model/impurities.model';\n\n\n@Component({\n selector: 'app-impurities-substance-form',\n templateUrl: './impurities-substance-form.component.html',\n styleUrls: ['./impurities-substance-form.component.scss']\n})\nexport class ImpuritiesSubstanceFormComponent implements OnInit {\n\n @Input() impuritiesSubstance: ImpuritiesSubstance;\n @Input() impuritiesSubstanceIndex: number;\n\n isLoading = true;\n errorMessage: string;\n searchValue: string;\n subscriptions: Array = [];\n existingImpurities: Array = [];\n\n // subRelationship: Array = [];\n substanceName: string;\n substanceNameHintMessage = '';\n\n constructor(\n private impuritiesService: ImpuritiesService,\n private generalService: GeneralService,\n private loadingService: LoadingService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n }\n\n relatedSubstanceUpdated(substance: any): void {\n if (substance != null) {\n this.impuritiesSubstance.substanceUuid = substance.uuid;\n this.impuritiesSubstance.approvalID = substance.approvalID;\n }\n }\n\n getExistingImpuritiesFromSubstance(event: Event) {\n event.stopPropagation();\n\n this.isLoading = true;\n this.loadingService.setLoading(true);\n this.errorMessage = 'Getting Existing Impurities...';\n\n const substanceUuid = this.impuritiesSubstance.substanceUuid;\n if (substanceUuid) {\n const getRelImpuritySubscribe = this.impuritiesService.getRelationshipImpurity(substanceUuid).subscribe(response => {\n\n if (response) {\n const relImpurities = response;\n if (Object.keys(relImpurities).length > 0) {\n // Remove Duplicate Impurites Substance UUID\n this.existingImpurities = relImpurities.filter((v, i) => relImpurities.findIndex\n (item => item.relationshipUuid === v.relationshipUuid) === i);\n this.loadExistingImpurities();\n } else {\n this.errorMessage = 'No Impurities found';\n }\n }\n });\n this.subscriptions.push(getRelImpuritySubscribe);\n } else {\n this.errorMessage = 'Please select a Substance Name';\n }\n\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }\n\n loadExistingImpurities() {\n this.errorMessage = 'Found ' + this.existingImpurities.length + ' Existing Impurities';\n // Add New Test\n this.impuritiesService.addNewTest(this.impuritiesSubstanceIndex);\n this.existingImpurities.forEach((elementRel) => {\n\n const newImpuritiesDetails: ImpuritiesDetails = { identityCriteriaList: [] };\n newImpuritiesDetails.relatedSubstanceUuid = elementRel.relationshipUuid;\n newImpuritiesDetails.relatedSubstanceUnii = elementRel.relationshipUnii;\n // Creating a New Impurities Detail for Test 0\n this.impuritiesService.addNewImpuritiesDetails(this.impuritiesSubstanceIndex, 0, newImpuritiesDetails);\n });\n }\n\n createNewImpurities(relationshipUuid: string) {\n const newImpuritiesDetails: ImpuritiesDetails = { identityCriteriaList: [] };\n newImpuritiesDetails.relatedSubstanceUuid = relationshipUuid;\n }\n\n addNewImpuritiesSubstance() {\n this.impuritiesService.addNewImpuritiesSubstance();\n }\n\n getSubstancePreferredName(substanceUuid: string): void {\n const getSubDetailsSubscribe = this.generalService.getSubstanceBySubstanceUuid(substanceUuid).subscribe(substance => {\n if (substance) {\n this.searchValue = substance._name;\n }\n });\n this.subscriptions.push(getSubDetailsSubscribe);\n }\n\n addNewTest(event: Event) {\n event.stopPropagation();\n\n this.impuritiesService.addNewTest(this.impuritiesSubstanceIndex);\n }\n\n addNewImpuritiesResidualSolvents(event: Event) {\n event.stopPropagation();\n\n this.impuritiesService.addNewImpuritiesResidualSolvents(this.impuritiesSubstanceIndex);\n }\n\n addNewImpuritiesInorganic(event: Event) {\n event.stopPropagation();\n\n this.impuritiesService.addNewImpuritiesInorganic(this.impuritiesSubstanceIndex);\n }\n\n confirmDeleteImpuritiesSubstance() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delele Substance Name ' + (this.impuritiesSubstanceIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteImpuritiesSubstance();\n }\n });\n }\n\n deleteImpuritiesSubstance() {\n this.impuritiesService.deleteImpuritiesSubstance(this.impuritiesSubstanceIndex);\n }\n\n}\n","
    \n
    \n
    \n
    Residual Solvents {{(impuritiesResidualIndex+1)}}
    \n
    \n
    \n \n
    \n
    \n\n\n \n
    \n\n \n
    \n \n \n
    \n {{impuritiesResidualSolvents.relatedSubstanceUnii}}\n
    \n
    \n
    \n \n \n Register New\n \n         \n \n \n Search By Structure\n \n
    \n
    \n
    \n\n \n
    \n\n
    \n\n \n \n \n\n \n \n \n\n \n \n
    \n\n
    \n \n \n \n\n \n \n\n \n \n \n
    \n\n
    \n \n\n\n
    \n\n
    \n
    ","import { Component, OnInit, Input } from '@angular/core';\nimport { Impurities, ImpuritiesDetails, ImpuritiesResidualSolvents, IdentityCriteria, SubRelationship } from '../../model/impurities.model';\nimport { ImpuritiesService } from '../../service/impurities.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-impurities-residual-solvents-form',\n templateUrl: './impurities-residual-solvents-form.component.html',\n styleUrls: ['./impurities-residual-solvents-form.component.scss']\n})\nexport class ImpuritiesResidualSolventsFormComponent implements OnInit {\n\n @Input() impuritiesResidualSolvents: ImpuritiesResidualSolvents;\n @Input() impuritiesResidualIndex: number;\n @Input() impuritiesSubstanceIndex: number;\n\n constructor(\n private impuritiesService: ImpuritiesService,\n private loadingService: LoadingService,\n private authService: AuthService,\n private dialog: MatDialog) {}\n\n ngOnInit() {\n }\n\n confirmDeleteImpuritiesResidualSolvents() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Residual Solvents ' + (this.impuritiesResidualIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteImpuritiesResidualSolvents();\n }\n });\n }\n deleteImpuritiesResidualSolvents() {\n this.impuritiesService.deleteImpuritiesResidualSolvents(this.impuritiesSubstanceIndex, this.impuritiesResidualIndex);\n }\n\n relatedSubstanceUpdated(substance: any): void {\n if (substance != null) {\n this.impuritiesResidualSolvents.relatedSubstanceUuid = substance.uuid;\n this.impuritiesResidualSolvents.relatedSubstanceUnii = substance.approvalID;\n }\n }\n\n}\n","
    \n
    \n
    \n
    Inorganic {{(impuritiesInorganicIndex+1)}}
    \n
    \n
    \n \n
    \n
    \n\n\n \n
    \n\n \n
    \n \n \n
    \n {{impuritiesInorganic.relatedSubstanceUnii}}\n
    \n
    \n
    \n \n \n Register New\n \n         \n \n \n Search By Structure\n \n
    \n
    \n
    \n\n \n
    \n\n
    \n \n \n\n \n \n\n \n \n \n\n
    \n\n
    \n \n \n\n \n \n \n
    \n\n
    \n \n\n\n
    \n\n
    \n
    ","import { Component, OnInit, Input } from '@angular/core';\nimport { Impurities, ImpuritiesDetails, ImpuritiesResidualSolvents, ImpuritiesInorganic, IdentityCriteria, SubRelationship } from '../../model/impurities.model';\nimport { ImpuritiesService } from '../../service/impurities.service';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ConfirmDialogComponent } from '../../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-impurities-inorganic-form',\n templateUrl: './impurities-inorganic-form.component.html',\n styleUrls: ['./impurities-inorganic-form.component.scss']\n})\nexport class ImpuritiesInorganicFormComponent implements OnInit {\n\n @Input() impuritiesInorganic: ImpuritiesInorganic;\n @Input() impuritiesInorganicIndex: number;\n @Input() impuritiesSubstanceIndex: number;\n\n constructor(\n private impuritiesService: ImpuritiesService,\n private loadingService: LoadingService,\n private authService: AuthService,\n private dialog: MatDialog) { }\n\n ngOnInit() {\n }\n\n relatedSubstanceUpdated(substance: any): void {\n if (substance != null) {\n this.impuritiesInorganic.relatedSubstanceUuid = substance.uuid;\n this.impuritiesInorganic.relatedSubstanceUnii = substance.approvalID;\n }\n }\n\n confirmDeleteImpuritiesInorganic() {\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\n data: { message: 'Are you sure you want to delete Inorganic Impurities' + (this.impuritiesInorganicIndex + 1) + '?' }\n });\n\n dialogRef.afterClosed().subscribe(result => {\n if (result && result === true) {\n this.deleteImpuritiesInorganic();\n }\n });\n }\n\n deleteImpuritiesInorganic() {\n this.impuritiesService.deleteImpuritiesInorganic(this.impuritiesSubstanceIndex, this.impuritiesInorganicIndex);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { take } from 'rxjs/operators';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class CanActivateRegisterImpuritiesFormComponent implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) {}\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('DataEntry', 'SuperDataEntry').pipe(take(1)).subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { take } from 'rxjs/operators';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class CanActivateUpdateImpuritiesFormComponent implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) { }\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('Updater', 'SuperUpdater').pipe(take(1)).subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanDeactivate } from '@angular/router';\nimport { ImpuritiesFormComponent } from './impurities-form.component';\nimport { ImpuritiesService } from '../service/impurities.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CanDeactivateImpuritiesFormComponent implements CanDeactivate {\n constructor(\n private impuritiesService: ImpuritiesService\n ) {}\n canDeactivate(component: ImpuritiesFormComponent): boolean {\n if (this.impuritiesService.isImpuritiesUpdated) {\n if (confirm('You have unsaved changes! If you leave, your changes will be lost.')) {\n return true;\n } else {\n return false;\n }\n }\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, Router, ActivatedRouteSnapshot, NavigationExtras, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { ConfigService } from '@gsrs-core/config';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ActivateImpuritiesComponent implements CanActivate {\n constructor(\n private configService: ConfigService,\n private router: Router\n ) {}\n canActivate( route: ActivatedRouteSnapshot, state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n const loadedComponents = this.configService.configData.loadedComponents || null;\n if (loadedComponents && loadedComponents.impurities) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n\n }\n}","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { SubstanceFormModule } from '../../core/substance-form/substance-form.module';\nimport { SubstanceSearchSelectorModule } from '../substance-search-select/substance-search-selector.module';\nimport { SubstanceTextSearchModule } from '@gsrs-core/substance-text-search/substance-text-search.module';\nimport { SubstanceSelectorModule } from '../../core/substance-selector/substance-selector.module';\nimport { ImpuritiesFormComponent } from '../impurities/impurities-form/impurities-form.component';\nimport { ImpuritiesDetailsFormComponent} from '../impurities/impurities-form/impurities-details-form/impurities-details-form.component';\nimport { ImpuritiesDetailsComponent } from './impurities-details/impurities-details.component';\nimport { ImpuritiesUnspecifiedFormComponent } from './impurities-form/impurities-unspecified-form/impurities-unspecified-form.component';\nimport { ImpuritiesTotalFormComponent } from './impurities-form/impurities-total-form/impurities-total-form.component';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { ImpuritiesTestFormComponent } from './impurities-form/impurities-test-form/impurities-test-form.component';\nimport { ImpuritiesSubstanceFormComponent } from './impurities-form/impurities-substance-form/impurities-substance-form.component';\nimport { ImpuritiesResidualSolventsFormComponent } from './impurities-form/impurities-residual-solvents-form/impurities-residual-solvents-form.component';\nimport { ImpuritiesInorganicFormComponent } from './impurities-form/impurities-inorganic-form/impurities-inorganic-form.component';\nimport { CanActivateRegisterImpuritiesFormComponent } from './impurities-form/can-activate-register-impurities-form.component';\nimport { CanActivateUpdateImpuritiesFormComponent } from './impurities-form/can-activate-update-impurities-form.component';\nimport { CanDeactivateImpuritiesFormComponent } from './impurities-form/can-deactivate-impurities-form.component';\nimport { ActivateImpuritiesComponent } from './activate-impurities.component';\n\nconst impurityRoutes: Routes = [\n {\n path: 'impurities/register',\n component: ImpuritiesFormComponent,\n canActivate: [ActivateImpuritiesComponent, CanActivateRegisterImpuritiesFormComponent],\n canDeactivate: [CanDeactivateImpuritiesFormComponent]\n },\n {\n path: 'impurities/:id/edit',\n component: ImpuritiesFormComponent,\n canActivate: [ActivateImpuritiesComponent, CanActivateUpdateImpuritiesFormComponent],\n canDeactivate: [CanDeactivateImpuritiesFormComponent]\n },\n {\n path: 'impurities/:id',\n component: ImpuritiesDetailsComponent,\n canActivate: [ActivateImpuritiesComponent]\n }\n];\n\n@NgModule({\n declarations: [\n ImpuritiesFormComponent,\n ImpuritiesDetailsFormComponent,\n ImpuritiesDetailsComponent,\n ImpuritiesUnspecifiedFormComponent,\n ImpuritiesTotalFormComponent,\n ImpuritiesTestFormComponent,\n ImpuritiesSubstanceFormComponent,\n ImpuritiesResidualSolventsFormComponent,\n ImpuritiesInorganicFormComponent\n ],\n imports: [\n RouterModule.forChild(impurityRoutes),\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatInputModule,\n MatFormFieldModule,\n MatCardModule,\n MatButtonModule,\n MatTooltipModule,\n MatIconModule,\n MatBadgeModule,\n MatExpansionModule,\n SubstanceFormModule,\n SubstanceTextSearchModule,\n SubstanceSearchSelectorModule,\n SubstanceSelectorModule,\n SubstanceImageModule\n ],\n providers: [\n CanActivateRegisterImpuritiesFormComponent,\n CanActivateUpdateImpuritiesFormComponent,\n CanDeactivateImpuritiesFormComponent,\n ActivateImpuritiesComponent\n ]\n})\n\nexport class ImpuritiesModule {\n constructor(router: Router) {\n impurityRoutes.forEach(route => {\n router.config[0].children.push(route);\n });\n }\n\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ImpuritiesModule,\n providers: [\n CanActivateRegisterImpuritiesFormComponent,\n CanActivateUpdateImpuritiesFormComponent,\n CanDeactivateImpuritiesFormComponent,\n ActivateImpuritiesComponent\n ]\n };\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { Observable, } from 'rxjs';\nimport { ConfigService } from '@gsrs-core/config';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { PagingResponse } from '@gsrs-core/utils';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport { SubstanceDetail, SubstanceName, SubstanceCode } from '@gsrs-core/substance/substance.model';\nimport { ProductAll } from '../../product/model/product.model';\nimport { ClinicalTrial } from '../../clinical-trials/clinical-trial/clinical-trial.model';\n// import { map, switchMap, tap } from 'rxjs/operators';\n// import { Facet } from '@gsrs-core/facets-manager';\nimport { Application, ApplicationIngredient } from '../../application/model/application.model';\n\n@Injectable(\n { providedIn: 'root' }\n)\n\nexport class AdvancedSearchService extends BaseHttpService {\n\n totalRecords: 0;\n baseHref: '';\n\n apiBaseUrlWithSubstanceEntityUrl = this.configService.configData.apiBaseUrl || '' + 'api/v1/substances' + '/';\n apiBaseUrlWithApplicationEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/applications' + '/';\n apiBaseUrlWithApplicationAllEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/applicationsall' + '/';\n apiBaseUrlWithApplicationDarrtsEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/applicationsdarrts' + '/';\n\n apiBaseUrlWithProductEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/products' + '/';\n apiBaseUrlWithProductBrowseEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/productsall' + '/';\n apiBaseUrlWithProductElistEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/productselist' + '/';\n\n apiBaseUrlWithClinicalTrialEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/clinicaltrialsus' + '/';\n\n apiBaseUrlWithEntityPtContext = this.configService.configData.apiBaseUrl + 'api/v1/adverseeventpt' + '/';\n apiBaseUrlWithEntityDmeContext = this.configService.configData.apiBaseUrl + 'api/v1/adverseeventdme' + '/';\n apiBaseUrlWithEntityCvmContext = this.configService.configData.apiBaseUrl + 'api/v1/adverseeventcvm' + '/';\n\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService,\n ) {\n super(configService);\n }\n\n getBaseHref(): string {\n return this.configService.environment.baseHref;\n }\n\n getSubstanceCount(): Observable {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/substances/@count`;\n return this.http.get(url);\n }\n\n getApplicationCount(): Observable {\n const url = this.apiBaseUrlWithApplicationEntityUrl + `@count`;\n return this.http.get(url);\n }\n\n getProductCount(): Observable {\n const url = this.apiBaseUrlWithProductBrowseEntityUrl + `@count`;\n return this.http.get(url);\n }\n\n getClinicalTrialCount(): Observable {\n const url = this.apiBaseUrlWithClinicalTrialEntityUrl + `@count`;\n return this.http.get(url);\n }\n\n getSubstances(\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', '1'); // setting top=1, faster result, no content\n params = params.append('view','key'); // setting view=key, faster result, no content\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n params = params.appendFacetParams(facets);\n\n const url = `${this.apiBaseUrl}substances/search`;\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getApplications(\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', '1'); // setting top=1, faster result, no content\n params = params.append('view','key'); // setting view=key, faster result, no content\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n params = params.appendFacetParams(facets);\n\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getProducts(\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', '1'); // setting top=1, faster result, no content\n params = params.append('view','key'); // setting view=key, faster result, no content\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n params = params.appendFacetParams(facets);\n\n const url = this.apiBaseUrlWithProductBrowseEntityUrl + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getClinicalTrials(\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', '1'); // setting top=1, faster result, no content\n params = params.append('view','key'); // setting view=key, faster result, no content\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n params = params.appendFacetParams(facets);\n\n const url = this.apiBaseUrlWithClinicalTrialEntityUrl + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getTypeAheadSearchText(category: string, fieldName: string, searchTerm: string): Observable {\n let url: string;\n let entityUrl: string;\n let slash = '/';\n if (category) {\n if (category === 'Substance') {\n entityUrl = `${this.configService.configData.apiBaseUrl}api/v1/`;\n }\n if (category === 'Application') {\n entityUrl = this.apiBaseUrlWithApplicationEntityUrl;\n }\n if (category === 'Product') {\n entityUrl = this.apiBaseUrlWithProductBrowseEntityUrl;\n }\n if (category === 'Clinical Trial') {\n entityUrl = this.apiBaseUrlWithClinicalTrialEntityUrl;\n }\n if (category === 'Adverse Event') {\n if (fieldName) {\n if (fieldName === 'Ingredient_Name') {\n entityUrl = `${this.configService.configData.apiBaseUrl}api/v1/`;\n fieldName = 'Name';\n }\n if (fieldName === 'PT_Term') {\n entityUrl = this.apiBaseUrlWithEntityPtContext;\n }\n if (fieldName === 'Prim_SOC') {\n entityUrl = this.apiBaseUrlWithEntityPtContext;\n }\n if (fieldName === 'DME_Reactions') {\n entityUrl = this.apiBaseUrlWithEntityDmeContext;\n }\n if (fieldName === 'PTTerm_Meddra') {\n entityUrl = this.apiBaseUrlWithEntityDmeContext;\n }\n if (fieldName === 'Adverse_Event') {\n entityUrl = this.apiBaseUrlWithEntityCvmContext;\n }\n if (fieldName === 'Species') {\n entityUrl = this.apiBaseUrlWithEntityCvmContext;\n }\n }\n }\n\n url = entityUrl + 'suggest' + slash + fieldName + '?q=' + searchTerm;\n }\n return this.http.get(url);\n }\n\n /*\n getSearchSuggestions(searchTerm: string): Observable {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n\n return this.http.get(url + 'suggest?q=' + searchTerm);\n }\n */\n}\n","
    \n
    \n \n

    \n Advanced Search\n

    \n \n
    \n\n \n
    \n
    \n \n
    \n
    \n\n \n \n \n \n
    Substance
    \n
    \n ({{substanceCount}})\n
    \n
    \n
    \n
    \n\n \n \n
    Application
    \n \n
    \n ({{applicationCount}})\n
    \n
    \n
    \n
    \n\n \n \n
    Product
    \n
    \n ({{productCount}})\n
    \n
    \n
    \n
    \n\n \n \n\n \n \n
    Adverse Event
    \n
    \n PT ({{adverseEventPtCount}})   DME ({{adverseEventDmeCount}})   CVM ({{adverseEventCvmCount}})\n
    \n
    \n
    \n
    \n
    \n\n
    \n\n \n \n \n \n
    \n
    \n
    \n \n \n
    \n\n
    \n
    \n \n
    \n\n
    \n \n
    \n\n \n
    \n
    \n
    \n\n
    \n Query\n
    \n
    \n
    \n {{queryDisplay}}\n
    \n
    \n\n
    \n
    \n\n \n \n \n \n
    Filter by \n {{category}} Facets({{numFacetsLoaded}})\n
    \n
    \n
    \n\n
    \n \n
    \n \n \n \n
    \n\n
    \n \n Facet View:\n \n \n {{option}}\n \n \n \n
    \n\n
    \n \n
    \n
    \n
    \n\n \n
    \n \n \n
    x\n
    \n \n \n
    \n
    \n\n\n\n \n \n \n\n \n
    \n
    \n \n \n \n AND Search Structure\n \n \n \n \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n \n Substructure\n \n \n Similarity\n \n \n Exact\n \n \n Flex\n \n \n \n
    \n
    Similarity cutoff (tanimoto)
    \n \n
    {{similarityCutoff}}
    \n
    \n
    \n\n \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n

    \n Get Structure From Name\n

    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n\n
    \n


    ","import {\n Component,\n OnInit,\n Input,\n Output,\n EventEmitter,\n PLATFORM_ID,\n Inject,\n OnDestroy,\n ViewChild,\n ElementRef, AfterViewInit\n} from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { NavigationExtras, Router, ActivatedRoute } from '@angular/router';\nimport { Location, formatNumber } from '@angular/common';\nimport { Title } from '@angular/platform-browser';\nimport { FormControl } from '@angular/forms';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatTabChangeEvent } from '@angular/material/tabs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { Subscription } from 'rxjs';\nimport { transform } from 'lodash';\nimport { environment } from '../../../environments/environment';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { Ketcher } from 'ketcher-wrapper';\nimport { JSDraw } from 'jsdraw-wrapper';\n\nimport { InterpretStructureResponse } from '@gsrs-core/structure/structure-post-response.model';\nimport { StructureExportComponent } from '@gsrs-core/structure/structure-export/structure-export.component';\nimport { StructureImportComponent } from '@gsrs-core/structure/structure-import/structure-import.component';\nimport { StructureSearchComponent } from '@gsrs-core/structure-search/structure-search.component';\nimport { StructureService } from '@gsrs-core/structure/structure.service';\nimport { EditorImplementation } from '@gsrs-core/structure-editor/structure-editor-implementation.model';\n\nimport { Facet, FacetParam, FacetValue, FacetUpdateEvent, FacetsManagerService } from '@gsrs-core/facets-manager';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\nimport { SubstanceDetail } from '@gsrs-core/substance/substance.model';\nimport { QueryableSubstanceDictionary } from '@gsrs-core/guided-search/queryable-substance-dictionary.model';\nimport { Editor } from '@gsrs-core/structure-editor/structure.editor.model';\nimport { AdvancedQueryStatement } from './advanced-query-statement/advanced-query-statement.model';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics/google-analytics.service';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { ApplicationService } from '../application/service/application.service';\nimport { ProductService } from '../product/service/product.service';\nimport { ClinicalTrialService } from '../clinical-trials/clinical-trial/clinical-trial.service';\nimport { AdverseEventService } from '../adverse-event/service/adverseevent.service';\nimport { AdvancedSearchService } from './service/advanced-search.service';\n\n@Component({\n selector: 'app-advanced-search',\n templateUrl: './advanced-search.component.html',\n styleUrls: ['./advanced-search.component.scss']\n})\n\n/*\nexport interface FacetValueAdvanced {\n label: string;\n count: number;\n url: string;\n}\n*/\n\nexport class AdvancedSearchComponent implements OnInit, OnDestroy {\n loadedComponents: LoadedComponents;\n advancedSearchFacetDisplay = false;\n query: string;\n queryStatements: Array = [];\n queryableSubstanceDict: QueryableSubstanceDictionary;\n displayProperties: Array;\n displayPropertiesCommon: Array;\n facetViewControl = new FormControl();\n // editor: EditorImplementation;\n // @Output() editorOnLoad = new EventEmitter();\n // @Output() loadedMolfile = new EventEmitter();\n private ketcher: Ketcher;\n private jsdraw: JSDraw;\n structureEditor: string;\n anchorElement: HTMLAnchorElement;\n smiles: string;\n mol: string;\n height = 0;\n width = 0;\n canvasToggle = true;\n canvasMessage = '';\n tempClass = '';\n categoryOptions = [\n 'Substance',\n 'Application',\n 'Product',\n 'Clinical Trial',\n 'Adverse Event'\n ];\n tabSelectedIndex = 0;\n category = 'Substance';\n configName: 'substances';\n tabClicked = false;\n @ViewChild('structure_canvas', { static: false }) myCanvas: ElementRef;\n public context: CanvasRenderingContext2D;\n public canvasCopy: HTMLCanvasElement;\n private jsdrawScriptUrls = [\n `${environment.baseHref || ''}assets/dojo/dojo.js`,\n `${environment.baseHref || ''}assets/jsdraw/Scilligence.JSDraw2.Pro.js`,\n `${environment.baseHref || ''}assets/jsdraw/Scilligence.JSDraw2.Resources.js`,\n `${environment.baseHref || ''}assets/jsdraw/JSDraw.extensions.js`\n ];\n ketcherFilePath: string;\n showSpinner = false;\n dictionaryFileName: string;\n private subscriptions: Array = [];\n panelExpanded = false;\n numFacetsLoaded = 0;\n queryStatementHashes: Array;\n private privateFacetParams: FacetParam;\n privateFacetParamsUrl: string;\n facetKey = 'substances';\n rawFacets: Array = [];\n rawFacetsSubstance: Array = [];\n rawFacetsApplication: Array = [];\n rawFacetsProduct: Array = [];\n rawFacetsClinicalTrial: Array = [];\n rawFacetsAdverseEventPt: Array = [];\n rawFacetsAdverseEventDme: Array = [];\n rawFacetsAdverseEventCvm: Array = [];\n public displayFacets: Array = [];\n facetViewCategorySelected = 'Default';\n facetViewCategory: Array = [];\n substanceFacetsQuickSearch: Array = [];\n applicationFacetsQuickSearch: Array = [];\n productFacetsQuickSearch: Array = [];\n clinicalTrialFacetsQuickSearch: Array = [];\n navigationExtrasFacet: NavigationExtras = {\n queryParams: {}\n };\n queryFacet = '';\n queryDisplay = '';\n facetNameText = '';\n facetDisplayType = 'all';\n substanceFacetsDisplay = ['Record Status', 'Substance Class', 'Relationships', 'GInAS Tag'];\n applicationFacetsDisplay = ['Center', 'Application Type', 'Application Status', 'Provenance (GSRS)'];\n productFacetsDisplay = ['Provenance', 'Company Country', 'Product Type', 'Dosage Form Name'];\n clinicalTrialFacetsDisplay = ['Intervention Type', 'Age Groups', 'Conditions', 'Study Types'];\n\n applicationFacetValue: Array = [];\n\n substances: Array;\n applications: any;\n products: any;\n clinicalTrials: any;\n adverseEventPt: any;\n adverseEventDme: any;\n adverseEventCvm: any;\n\n substanceCount = '0';\n applicationCount = '0';\n productCount = '0';\n clinicalTrialCount = '0';\n adverseEventPtCount = '0';\n adverseEventDmeCount = '0';\n adverseEventCvmCount = '0';\n\n // Structure Editor\n private editor: Editor;\n private searchType: string;\n _searchtype: string;\n similarityCutoff?: number;\n showSimilarityCutoff = false;\n searchTypeControl = new FormControl();\n @ViewChild('contentContainer', { static: true }) contentContainer;\n private overlayContainer: HTMLElement;\n\n constructor(\n private http: HttpClient,\n private router: Router,\n private activatedRoute: ActivatedRoute,\n private loadingService: LoadingService,\n private advancedSearchService: AdvancedSearchService,\n private adverseEventService: AdverseEventService,\n private configService: ConfigService,\n private utilitiesService: UtilsService,\n private substanceService: SubstanceService,\n public applicationService: ApplicationService,\n public productService: ProductService,\n private clinicalTrialService: ClinicalTrialService,\n private facetManagerService: FacetsManagerService,\n private gaService: GoogleAnalyticsService,\n private titleService: Title,\n private location: Location,\n private dialog: MatDialog,\n private structureService: StructureService\n ) {\n this.searchType = 'substructure';\n this._searchtype = 'substructure';\n }\n\n ngOnInit() {\n this.loadingService.setLoading(true);\n this.showSpinner = true; // Start progress spinner\n\n // Get configration values to hide/show Modules\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n\n // Get configuration value to hide/show Facets View in Advanced Search\n this.advancedSearchFacetDisplay = this.configService.configData.advancedSearchFacetDisplay || false;\n\n this.titleService.setTitle(`Advanced Search`);\n const advancedSearchHash = Number(this.activatedRoute.snapshot.queryParams['g-search-hash']) || null;\n\n // Get Stored Search Criteria\n // For example: -681458537\n if (advancedSearchHash) {\n const queryStatementHashesString = localStorage.getItem(advancedSearchHash.toString());\n // Found previous stored search criteria in local Storage\n // For example: [-900654012,1838576297]\n if (queryStatementHashesString != null) {\n // For example: [-900654012,1838576297]\n this.queryStatementHashes = JSON.parse(queryStatementHashesString);\n // Get Category from Stored Cookies\n if (this.queryStatementHashes[0] != null) {\n const categoryStored = localStorage.getItem(this.queryStatementHashes[0].toString());\n if (categoryStored != null) {\n this.category = categoryStored;\n this.categoryOptions.forEach((cat, index) => {\n if (cat != null) {\n if (cat === categoryStored) {\n this.tabSelectedIndex = index;\n }\n }\n });\n this.queryStatementHashes.splice(0, 1);\n }\n }\n } else {\n // NOT FOUND: could not find this search criteria in local Storage. Use this search critieria\n // with 'Manual Query Entry' in dropdown 'Search in Field'.\n\n }\n }\n\n this.getBrowseSubstanceDetails();\n\n if (this.loadedComponents) {\n if (this.loadedComponents.applications) {\n this.getBrowseApplicationDetails();\n }\n if (this.loadedComponents.products) {\n this.getBrowseProductDetails();\n }\n if (this.loadedComponents.clinicaltrials) {\n // this.getBrowseClinicalTrialDetails();\n }\n if (this.loadedComponents.adverseevents) {\n this.getBrowseAdverseEventPtDetails();\n this.getBrowseAdverseEventDmeDetails();\n this.getBrowseAdverseEventCvmDetails();\n }\n }\n\n this.loadFileName();\n\n this.loadFacetViewFromConfig();\n\n this.showSpinner = false; // Stop progress spinner\n this.loadingService.setLoading(false);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n loadFacetViewFromConfig() {\n this.facetViewControl.setValue(this.facetViewCategorySelected);\n const facetConf = this.configService.configData.facets && this.configService.configData.facets['substances'] || {};\n facetConf['facetView'].forEach(categoryRow => {\n const category = categoryRow['category'];\n this.facetViewCategory.push(category);\n });\n this.facetViewCategory.push('All');\n }\n\n getBrowseSubstanceDetails() {\n const subscriptionBrowseSub = this.advancedSearchService.getSubstances(\n 0,\n 10,\n null,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.substances = pagingResponse.content;\n this.substanceCount = formatNumber(Number(pagingResponse.total), 'en-US', '1.0-0');\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n // this.substanceFacetsQuickSearch = this.populateFacets(pagingResponse.facets, this.substanceFacetsDisplay, 'browse-substance');\n\n // this.rawFacets = this.populateFacets(pagingResponse.facets, this.substanceFacetsDisplay, 'browse-substance');\n this.rawFacetsSubstance = pagingResponse.facets;\n this.rawFacets = pagingResponse.facets;\n }\n });\n this.subscriptions.push(subscriptionBrowseSub);\n }\n\n getBrowseApplicationDetails() {\n const subscriptionBrowseApp = this.advancedSearchService.getApplications(\n 0,\n 10,\n null,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.applications = pagingResponse.content;\n\n // Convert Number with commas\n this.applicationCount = formatNumber(Number(pagingResponse.total), 'en-US', '1.0-0');\n\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacetsApplication = pagingResponse.facets;\n }\n });\n this.subscriptions.push(subscriptionBrowseApp);\n }\n\n getBrowseProductDetails() {\n const subscriptionBrowseProd = this.advancedSearchService.getProducts(\n 0,\n 10,\n null,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.products = pagingResponse.content;\n\n this.productCount = formatNumber(Number(pagingResponse.total), 'en-US', '1.0-0');\n\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacetsProduct = pagingResponse.facets;\n // this.productFacetsQuickSearch = this.populateFacets(pagingResponse.facets, this.productFacetsDisplay, 'browse-products');\n }\n });\n this.subscriptions.push(subscriptionBrowseProd);\n }\n\n getBrowseClinicalTrialDetails() {\n const subscriptionBrowseClinical = this.advancedSearchService.getClinicalTrials(\n 0,\n 10,\n null,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.clinicalTrials = pagingResponse.content;\n\n this.clinicalTrialCount = formatNumber(Number(pagingResponse.total), 'en-US', '1.0-0');\n\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacetsClinicalTrial = pagingResponse.facets;\n // this.clinicalTrialFacetsQuickSearch = this.populateFacets(pagingResponse.facets\n // , this.clinicalTrialFacetsDisplay, 'browse-clinical-trials');\n }\n });\n this.subscriptions.push(subscriptionBrowseClinical);\n }\n\n getBrowseAdverseEventPtDetails() {\n const subscriptionBrowseAdvPt = this.adverseEventService.getAdverseEventPt(\n null,\n 0,\n 10,\n null,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.adverseEventPt = pagingResponse.content;\n\n this.adverseEventPtCount = formatNumber(Number(pagingResponse.total), 'en-US', '1.0-0');\n\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacetsAdverseEventPt = pagingResponse.facets;\n // this.productFacetsQuickSearch = this.populateFacets(pagingResponse.facets, this.productFacetsDisplay, 'browse-products');\n }\n });\n this.subscriptions.push(subscriptionBrowseAdvPt);\n }\n\n getBrowseAdverseEventDmeDetails() {\n const subscriptionBrowseAdvDme = this.adverseEventService.getAdverseEventDme(\n null,\n 0,\n 10,\n null,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.adverseEventDme = pagingResponse.content;\n\n this.adverseEventDmeCount = formatNumber(Number(pagingResponse.total), 'en-US', '1.0-0');\n\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacetsAdverseEventDme = pagingResponse.facets;\n // this.productFacetsQuickSearch = this.populateFacets(pagingResponse.facets, this.productFacetsDisplay, 'browse-products');\n }\n });\n this.subscriptions.push(subscriptionBrowseAdvDme);\n }\n\n getBrowseAdverseEventCvmDetails() {\n const subscriptionBrowseAdvCvm = this.adverseEventService.getAdverseEventCvm(\n null,\n 0,\n 10,\n null,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.adverseEventCvm = pagingResponse.content;\n\n this.adverseEventCvmCount = formatNumber(Number(pagingResponse.total), 'en-US', '1.0-0');\n\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacetsAdverseEventCvm = pagingResponse.facets;\n // this.productFacetsQuickSearch = this.populateFacets(pagingResponse.facets, this.productFacetsDisplay, 'browse-products');\n }\n });\n this.subscriptions.push(subscriptionBrowseAdvCvm);\n }\n\n\n /*\n private populateFacets(rawFacets: Array, facetDisplay: Array, browse: string): Array {\n const facetQuickSearch: Array = [];\n if (rawFacets && facetDisplay) {\n const facetsCopy = rawFacets.slice();\n facetDisplay.forEach(facetKey => {\n for (let facetIndex = 0; facetIndex < facetsCopy.length; facetIndex++) {\n if (facetKey === facetsCopy[facetIndex].name) {\n const facetValues = facetsCopy[facetIndex].values;\n for (let valueIndex = 0; valueIndex < facetValues.length; valueIndex++) {\n }\n facetQuickSearch.push(facetsCopy[facetIndex]);\n }\n }\n });\n }\n return facetQuickSearch;\n }\n */\n\n tabSelectedUpdated(event: MatTabChangeEvent) {\n if (event) {\n this.category = event.tab.textLabel;\n if (this.category) {\n this.tabClicked = true;\n this.loadFileName();\n }\n }\n }\n\n private loadFileName() {\n if (this.category) {\n this.query = '';\n this.facetDisplayType = 'default';\n this.facetManagerService.clearSelections();\n this.facetManagerService.unregisterFacetSearchHandler();\n\n if (this.category === 'Substance') {\n this.dictionaryFileName = 'substance_dictionary.json';\n this.facetManagerService.registerGetFacetsHandler(this.substanceService.getSubstanceFacets);\n this.rawFacets = this.rawFacetsSubstance;\n this.facetKey = 'substances';\n this.facetDisplayType = 'facetView';\n } else if (this.category === 'Application') {\n this.dictionaryFileName = 'application_dictionary.json';\n this.facetManagerService.registerGetFacetsHandler(this.applicationService.getApplicationFacets);\n this.rawFacets = this.rawFacetsApplication;\n this.facetKey = 'applications';\n } else if (this.category === 'Product') {\n this.dictionaryFileName = 'productall_dictionary.json';\n this.facetManagerService.registerGetFacetsHandler(this.productService.getProductFacets);\n this.rawFacets = this.rawFacetsProduct;\n this.facetKey = 'products';\n } else if (this.category === 'Clinical Trial') {\n this.dictionaryFileName = 'ctus_dictionary.json';\n // this.facetManagerService.registerGetFacetsHandler(this.clinicalTrialService.getClinicalTrialsFacets);\n // this.rawFacets = this.rawFacetsClinicalTrial;\n this.facetKey = 'ctclinicaltrial';\n } else if (this.category === 'Adverse Event') {\n this.dictionaryFileName = 'adverseevent_dictionary.json';\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets);\n this.rawFacets = this.rawFacetsAdverseEventPt;\n this.facetKey = 'adverseeventpt';\n // this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventDmeFacets);\n // this.rawFacets = this.rawFacetsAdverseEventDme;\n // this.facetKey = 'adverseeventDme';\n // this.rawFacets.splice(0, this.rawFacets.length);\n }\n }\n this.getSearchField();\n }\n\n getSearchField() {\n this.http.get(`${this.configService.environment.baseHref}assets/data/` + this.dictionaryFileName)\n // this.http.get(`${this.configService.environment.baseHref}assets/data/substance_dictionary.json`)\n .subscribe((response: QueryableSubstanceDictionary) => {\n\n response['All'] = {\n lucenePath: '',\n description: 'All substance fields',\n type: 'string',\n cvDomain: ''\n };\n this.queryableSubstanceDict = response;\n\n const displayProperties = ['All'];\n const displayPropertiesCommon = ['All', 'Manual Query Entry'];\n Object.keys(this.queryableSubstanceDict).forEach(key => {\n displayProperties.push(key);\n if (this.queryableSubstanceDict[key].priority != null) {\n displayPropertiesCommon.push(key);\n }\n });\n this.displayProperties = displayProperties;\n this.displayPropertiesCommon = displayPropertiesCommon;\n\n // Get queryStatement from previous/stored local storage\n if (this.queryStatementHashes != null) {\n if (this.tabClicked === false) {\n // [1838576297]\n this.queryStatementHashes.forEach(queryStatementHash => {\n this.queryStatements.push({ queryHash: queryStatementHash });\n });\n }\n }\n\n if (this.queryStatements.length === 0) {\n this.queryStatements.push({});\n }\n // }\n });\n }\n\n queryUpdated(queryStatement: AdvancedQueryStatement, index: number) {\n setTimeout(() => {\n Object.keys(queryStatement).forEach(key => {\n this.queryStatements[index][key] = queryStatement[key];\n });\n this.query = '';\n this.query = this.queryStatements.map(statement => statement.query).join(' ').trim();\n\n // Combine query and facetQuery\n this.facetQueryConstruct();\n // this.queryDisplay = this.query + this.queryFacet;\n });\n }\n\n addQueryStatement(): void {\n this.queryStatements.push({\n condition: '',\n queryableProperty: 'All',\n command: ''\n });\n }\n\n removeQueryStatement(index: number): void {\n this.queryStatements.splice(index, 1);\n this.query = this.queryStatements.map(statement => statement.query).join(' ');\n\n // Combine query and facetQuery\n this.queryDisplay = this.query + this.queryFacet;\n }\n\n togglePanelExpand() {\n this.showSpinner = true; // Start progress spinner\n this.panelExpanded = !this.panelExpanded;\n this.showSpinner = false; // Stop progress spinner\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n this.numFacetsLoaded = numFacetsLoaded;\n }\n\n facetViewChange(event): void {\n this.facetViewCategorySelected = event.value;\n }\n\n clearSearch(): void {\n\n // const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n // this.gaService.sendEvent('applicationFiltering', 'icon-button:clear-search', eventLabel);\n\n // this.privateSearchTerm = '';\n // this.pageIndex = 0;\n // this.pageSize = 10;\n\n // this.populateUrlQueryParameters();\n // this.searchApplications();\n }\n\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n this.clearSearch();\n\n this.facetManagerService.clearSelections();\n }\n\n facetQueryConstruct(): void {\n this.queryFacet = '';\n this.displayFacets.forEach((element, index) => {\n if (element) {\n const boolQuery = (this.query && index === 0) ? ' AND ' : '';\n const bool = (this.queryFacet) ? ' AND ' : '';\n this.queryFacet = boolQuery + this.queryFacet + bool + element.type + ':' + element.val;\n\n }\n });\n // Combine query and facetQuery\n this.queryDisplay = this.query + this.queryFacet;\n }\n\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.displayFacets = facetsUpdateEvent.displayFacets;\n\n this.populateUrlQueryParameters();\n this.facetQueryConstruct();\n\n let applyReady = false;\n for (const key of Object.keys(this.privateFacetParams)) {\n if ((this.privateFacetParams[key].isUpdated === false) && (this.displayFacets.length > 0)) {\n applyReady = true;\n } else {\n applyReady = false;\n break;\n }\n }\n\n // When Apply Button is clicked, Do Search]\n if (applyReady === true) { // && this.privateFacetParamsUrl) {\n this.setFacetLocationUrl();\n // Search Button, Search Browse\n this.processSearch();\n }\n }\n private encodeValue(facetValue: string) {\n let encFV = facetValue.replace('!', '!@');\n encFV = encFV.replace(/[.]/g, '!.');\n encFV = encFV.replace(/[\\+]/g, '!+');\n encFV = encFV.replace(/[,]/g, '!,');\n encFV = encFV.replace(/[\\*]/g, '!*');\n return encFV;\n }\n\n populateUrlQueryParameters(deprecated?: boolean): void {\n const catArr = [];\n let facetString = '';\n for (const key of Object.keys(this.privateFacetParams)) {\n if (this.privateFacetParams[key] !== undefined &&\n this.privateFacetParams[key].hasSelections === true &&\n !(this.privateFacetParams[key] !== undefined &&\n this.privateFacetParams[key].params &&\n this.privateFacetParams[key].params['Deprecated'] === true)) {\n const cat = this.privateFacetParams[key];\n const valArr = [];\n for (const subkey of Object.keys(cat.params)) {\n if (typeof cat.params[subkey] === 'boolean') {\n valArr.push(this.encodeValue(subkey) + '.' + cat.params[subkey]);\n }\n }\n if (cat.isAllMatch) {\n valArr.push('is_all_match.true');\n }\n catArr.push(key + '*' + valArr.join('+'));\n const paramsString = JSON.stringify(this.privateFacetParams[key].params);\n // const newHash = this.utilsService.hashCode(paramsString, this.privateFacetParams[key].isAllMatch.toString());\n // this.privateFacetParams[key].currentStateHash = newHash;\n // this.privateFacetParams[key].isUpdated = false;\n }\n }\n facetString = catArr.join(',');\n if (facetString !== '') {\n this.navigationExtrasFacet.queryParams['facets'] = facetString;\n }\n /*\n if (this.showDeprecated) {\n navigationExtras.queryParams['showDeprecated'] = 'true';\n } else {\n navigationExtras.queryParams['showDeprecated'] = null;\n }\n\n this.previousState.push(this.router.url);\n */\n\n /*\n setTimeout(() => {\n const urlTree = this.router.createUrlTree([], {\n queryParams: this.navigationExtrasFacet.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n });\n */\n }\n\n setFacetLocationUrl() {\n setTimeout(() => {\n const urlTree = this.router.createUrlTree([], {\n queryParams: this.navigationExtrasFacet.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n });\n }\n\n processSearch(): void {\n const queryStatementHashes = [];\n\n // Store in cookies, Category tab (Substance, Application, etc)\n const categoryHash = this.utilitiesService.hashCode(this.category);\n localStorage.setItem(categoryHash.toString(), this.category);\n queryStatementHashes.push(categoryHash);\n\n // Generate Hash Code for Query Statement\n this.queryStatements.forEach(queryStatement => {\n const queryStatementString = JSON.stringify(queryStatement);\n const hash = this.utilitiesService.hashCode(queryStatementString);\n\n // Store in cookies, Each Query Statement is stored in separate hash\n localStorage.setItem(hash.toString(), queryStatementString);\n\n // Push Query Statements Hashes in Array\n queryStatementHashes.push(hash);\n });\n\n // Generate Hash Code for Query\n const queryHash = this.utilitiesService.hashCode(this.query);\n\n const queryStatementHashesString = JSON.stringify(queryStatementHashes);\n\n // Store in cookies, store in Query Hash - Query Statement Hashes Array\n localStorage.setItem(queryHash.toString(), queryStatementHashesString);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n if ((this.query) || (Object.keys(this.privateFacetParams).length > 0)) {\n\n if (this.query) {\n if (this.category === 'Clinical Trial') {\n navigationExtras.queryParams['searchTerm'] = this.query;\n } else {\n navigationExtras.queryParams['search'] = this.query;\n navigationExtras.queryParams['g-search-hash'] = queryHash.toString();\n }\n } else if (Object.keys(this.privateFacetParams).length > 0) {\n navigationExtras.queryParams['facets'] = this.navigationExtrasFacet.queryParams['facets'];\n }\n\n // const navigationExtrasClinical: NavigationExtras = {\n // queryParams: this.query ? { 'searchTerm': this.query, 'facets': this.privateFacetParamsUrl } : null\n // };\n\n const navigationExtras2: NavigationExtras = {\n queryParams: {\n 'g-search-hash': queryHash.toString()\n }\n };\n\n // this is a test of the push state needed\n // to keep the back button working as desired\n window.history.pushState({}, 'Advanced Search', '/advanced-search'\n + '?g-search-hash=' + navigationExtras2.queryParams['g-search-hash']);\n\n /*****************************************************************************/\n /* STRUCTURE SEARCH */\n /*****************************************************************************/\n\n if (this.category === 'Substance') {\n const mol = this.editor.getMolfile();\n if (mol && mol.length > 72) {\n this.structureService.interpretStructure(mol).subscribe((response: InterpretStructureResponse) => {\n const eventLabel = !environment.isAnalyticsPrivate && response.structure.smiles || 'structure search term';\n // this.gaService.sendEvent('structureSearch', 'button:search', eventLabel);\n\n const navigationExtrasStructure: NavigationExtras = {\n queryParams: {}\n };\n\n const structureSearchTerm = response.structure.id;\n const smiles = response.structure.smiles;\n\n navigationExtras.queryParams['structure_search'] = structureSearchTerm || null;\n navigationExtras.queryParams['type'] = this.searchType || null;\n\n navigationExtras2.queryParams['structure'] = structureSearchTerm;\n navigationExtras2.queryParams['type'] = this.searchType || null;\n\n if (this.searchType === 'similarity') {\n navigationExtras.queryParams['cutoff'] = this.similarityCutoff || 0;\n navigationExtras2.queryParams['cutoff'] = this.similarityCutoff || 0;\n }\n\n if (smiles != null) {\n navigationExtras.queryParams['smiles'] = smiles;\n }\n\n // this is a test of the push state needed\n // to keep the back button working as desired\n window.history.pushState({}, 'Structure Search', '/structure-search'\n + '?structure=' + navigationExtras2.queryParams['structure']\n + '&type=' + navigationExtras2.queryParams['type']\n + '&cutoff=' + navigationExtras2.queryParams['cutoff']);\n\n this.router.navigate(['/browse-substance'], navigationExtras);\n }, () => { });\n\n }\n /********* STRUCTURE QUERY **********/\n\n // If no structure search, do this\n else {\n this.router.navigate(['/browse-substance'], navigationExtras);\n // }\n }\n }\n else if (this.category === 'Application') {\n this.router.navigate(['/browse-applications'], navigationExtras);\n } else if (this.category === 'Product') {\n this.router.navigate(['/browse-products'], navigationExtras);\n } else if (this.category === 'Clinical Trial') {\n this.router.navigate(['/browse-clinical-trials'], navigationExtras);\n } else if (this.category === 'Adverse Event') {\n this.router.navigate(['/browse-adverse-events'], navigationExtras);\n } else {\n this.router.navigate(['/browse-substance'], navigationExtras);\n }\n } else {\n alert('Please select any criteria to search');\n }\n }\n\n processSearchOut(): void {\n this.processSearch();\n }\n\n /***************************************/\n /*** STRUCTURE FUNCTIONS BELOW *****/\n\n editorOnLoad(editor: Editor): void {\n this.loadingService.setLoading(false);\n this.editor = editor;\n setTimeout(() => {\n this.activatedRoute\n .queryParamMap\n .subscribe(params => {\n if (params.has('structure')) {\n this.structureService.getMolfile(params.get('structure')).subscribe(molfile => {\n this.editor.setMolecule(molfile);\n });\n }\n if (params.has('type')) {\n this.searchType = params.get('type');\n }\n\n if (this.searchType === 'similarity') {\n this.showSimilarityCutoff = true;\n this.similarityCutoff = params.has('cutoff') && Number(params.get('cutoff')) || 0.8;\n }\n\n this.searchTypeControl.setValue(this.searchType);\n });\n });\n }\n\n searchTypeSelected(event): void {\n this.searchType = event.value;\n\n this.gaService.sendEvent('structureSearch', 'select:search-type', this.searchType);\n\n if (this.searchType === 'similarity') {\n this.showSimilarityCutoff = true;\n this.similarityCutoff = 0.8;\n } else {\n this.showSimilarityCutoff = false;\n }\n }\n\n molvecUpdate(mol: any) {\n this.editor.setMolecule(mol);\n }\n\n openStructureImportDialog(): void {\n this.gaService.sendEvent('structureSearch', 'button:import', 'import structure');\n const dialogRef = this.dialog.open(StructureImportComponent, {\n height: 'auto',\n width: '650px',\n data: {}\n });\n // this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe((structurePostResponse?: InterpretStructureResponse) => {\n // this.overlayContainer.style.zIndex = null;\n if (structurePostResponse && structurePostResponse.structure && structurePostResponse.structure.molfile) {\n this.editor.setMolecule(structurePostResponse.structure.molfile);\n }\n }, () => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n openStructureExportDialog(): void {\n this.gaService.sendEvent('structureSearch', 'button:export', 'export structure');\n const dialogRef = this.dialog.open(StructureExportComponent, {\n height: 'auto',\n width: '650px',\n data: {\n molfile: this.editor.getMolfile(),\n smiles: this.editor.getSmiles()\n }\n });\n this.overlayContainer.style.zIndex = '1002';\n dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n }, () => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n searchCutoffChanged(event): void {\n this.similarityCutoff = event.value;\n this.gaService.sendEvent('structureSearch', 'slider', 'similarity-cutoff', this.similarityCutoff);\n }\n\n get _editor(): Editor {\n return this.editor;\n }\n\n get _searchType(): string {\n return this.searchType;\n }\n\n nameResolved(molfile: string): void {\n this.editor.setMolecule(molfile);\n }\n\n}\n","\n\n
    \n\n
    \n 0\">\n Condition\n \n \n {{option}}\n \n \n \n
    \n\n
    \n \n Search in Fields\n \n \n {{option}}\n \n \n \n \n Show all fields\n \n \n
    \n \n \n \n \n \n \n Show common fields\n \n \n \n \n {{option}}\n \n \n
    \n
    \n\n \n
    \n \n For\n \n \n {{option}}\n \n \n \n {{isShowAllCommandOptions? 'Hide Some Options':'Show More Options'}}\n \n \n
    \n\n \n
    \n
    \n \n\n \n
    \n \n \n\n \n \n \n
    {{suggestion.key}}
    \n
    \n \n
    \n
    \n
    \n\n \n \n \n \n Required\n \n {{this.commandOptionsExample}}\n \n \n
    \n
    \n \n \n Required\n \n \n \n \n
    \n
    \n \n \n \n {{option.display}}\n \n \n Required\n \n
    \n
    \n
    \n\n
    \n\n","import { Component, OnInit, Input, OnDestroy, Output, EventEmitter, AfterViewInit } from '@angular/core';\nimport { QueryableSubstanceDictionary, CommandInput, Command } from '@gsrs-core/guided-search/queryable-substance-dictionary.model';\nimport { FormControl } from '@angular/forms';\nimport { debounceTime, distinctUntilChanged, switchMap, take } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\nimport { typeCommandOptions, inputTypes } from '@gsrs-core/guided-search/query-statement/type-command-options.constant';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { AdvancedQueryStatement } from './advanced-query-statement.model';\nimport { HttpClient } from '@angular/common/http';\nimport { ConfigService } from '@gsrs-core/config';\nimport { NavigationExtras, Router, ActivatedRoute } from '@angular/router';\nimport { FacetsManagerService } from '@gsrs-core/facets-manager';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { SubstanceRelated, SubstanceSummary } from '@gsrs-core/substance';\nimport { ApplicationService } from '../../application/service/application.service';\nimport { ProductService } from '../../product/service/product.service';\nimport { ClinicalTrialService } from '../../clinical-trials/clinical-trial/clinical-trial.service';\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils';\nimport { AdvancedSearchService } from '../service/advanced-search.service';\nimport { MatAutocompleteSelectedEvent, MatAutocomplete } from '@angular/material/autocomplete';\n\n@Component({\n selector: 'app-advanced-query-statement',\n templateUrl: './advanced-query-statement.component.html',\n styleUrls: ['./advanced-query-statement.component.scss']\n})\n\nexport class AdvancedQueryStatementComponent implements OnInit, OnDestroy {\n\n queryableSubstanceDict: QueryableSubstanceDictionary;\n displayProperties: Array;\n displayPropertiesCommon: Array;\n queryStatements: Array = [];\n query = '';\n @Input() queryStatementHash?: number;\n @Input() queryableOptionsCommon: Array;\n // @Input() category: string;\n private _index = 0;\n private _queryableDictionary: QueryableSubstanceDictionary;\n @Output() queryUpdated = new EventEmitter();\n @Output() processSearchOut = new EventEmitter();\n\n // @Output() tabSelectUpdated = new EventEmitter();\n private allOptions: Array;\n queryableOptionsAll: Array;\n queryablePropertiesControl = new FormControl();\n queryablePropertiesAutocompleteControl = new FormControl();\n private subscriptions: Array = [];\n conditionOptions = [\n 'AND',\n 'OR',\n 'NOT'\n ];\n searchFields: Array;\n conditionControl = new FormControl();\n categoryControl = new FormControl();\n commandControl = new FormControl();\n searchFieldControl = new FormControl();\n\n selectedCondition = '';\n selectedQueryableProperty: string;\n selectedQueryablePropertyType: string;\n selectedLucenePath: string;\n commandOptions: Array;\n commandOptionsExample: string;\n isShowAllCommandOptions = false;\n selectedCommandOption: string;\n commandInputs: Array;\n queryParts: Array = [];\n private typeCommandOptions = typeCommandOptions;\n commandInputValueDict: { [queryablePropertyType: string]: Array } = {};\n private overlayContainer: HTMLElement;\n cvOptions: Array;\n isShowCommonFields = true;\n searchText: string;\n categoryinput: string;\n advancedQueryStatements: Array = [];\n dictionaryFileName: string;\n searchValue: string;\n\n searchControl = new FormControl();\n substanceSuggestionsGroup: SubstanceSuggestionsGroup;\n suggestionsFields: Array;\n suggestions: Array = [];\n private testElem: HTMLElement;\n matOpen = true;\n categorySearch: string;\n typeAheadFieldName: string;\n selectedQueryableSuggest: string;\n @Output() searchPerformed = new EventEmitter();\n @Output() opened = new EventEmitter();\n @Output() closed = new EventEmitter();\n @Output() typeAheadUpdatedOut: EventEmitter = new EventEmitter();\n\n constructor(\n private overlayContainerService: OverlayContainer,\n public cvService: ControlledVocabularyService,\n private http: HttpClient,\n private router: Router,\n private configService: ConfigService,\n private utilitiesService: UtilsService,\n private substanceService: SubstanceService,\n public applicationService: ApplicationService,\n public productService: ProductService,\n private clinicalTrialService: ClinicalTrialService,\n private facetManagerService: FacetsManagerService,\n private activatedRoute: ActivatedRoute,\n private advancedSearchService: AdvancedSearchService\n ) { }\n\n @Input()\n set category(cat) {\n this.categoryinput = cat;\n // this.loadSearchField();\n }\n\n @Input()\n set queryableDictionary(queryableSubstanceDictionary: QueryableSubstanceDictionary) {\n if (queryableSubstanceDictionary != null) {\n this._queryableDictionary = queryableSubstanceDictionary;\n }\n }\n\n @Input()\n set queryableOptions(options: Array) {\n this.allOptions = options;\n this.queryableOptionsAll = options;\n }\n\n @Input()\n set index(index: number) {\n if (index != null) {\n this._index = index;\n if (this._index === 0 && this.commandInputs) {\n this.selectedCondition = '';\n this.refreshQuery();\n }\n }\n }\n\n get index(): number {\n return this._index;\n }\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n inputTypes.forEach(key => {\n this.commandInputValueDict[key] = [];\n });\n\n const subscription = this.queryablePropertiesControl.valueChanges.subscribe(value => {\n this.queryablePropertySelected(value);\n });\n this.subscriptions.push(subscription);\n\n const allQueriablePropertiesSubscription = this.queryablePropertiesAutocompleteControl.valueChanges.subscribe(value => {\n this.queryableOptionsAll = this.allOptions.filter(option => {\n return option.toLowerCase().indexOf(value.toLowerCase()) > -1;\n });\n });\n this.subscriptions.push(allQueriablePropertiesSubscription);\n\n const commandSubscription = this.commandControl.valueChanges.subscribe((command: string) => {\n this.setCommand(command);\n });\n this.subscriptions.push(commandSubscription);\n\n if (this._index > 0) {\n this.conditionControl.setValue('AND');\n this.selectedCondition = 'AND ';\n const conditionSubscription = this.conditionControl.valueChanges.subscribe((condition: string) => {\n this.selectedCondition = `${condition} `;\n this.refreshQuery();\n });\n this.subscriptions.push(conditionSubscription);\n }\n\n let queryStatement: AdvancedQueryStatement;\n\n // load/get Search text from hashcode from localStorage.\n // For example: 1838576297\n if (this.queryStatementHash) {\n const queryStatementString = localStorage.getItem(this.queryStatementHash.toString());\n if (queryStatementString) {\n queryStatement = JSON.parse(queryStatementString);\n }\n }\n \n // if queryStatement exists from hashcode\n // queryStatement returns something like this:\n // {\"queryHash\":1638073503,\"condition\":\"OR \",\"queryableProperty\":\"CAS RN\",\"command\":\"Contains\",\"commandInputValues\":[\"15475 56 6\"],\"query\":\"OR root_codes_CAS:\\\"*15475 56 6*\\\"\"}\n if (queryStatement != null) {\n // Get type (text, Date, Number) for dropdown field 'Search In Field' from dictionary file\n let queryablePropertyType = 'string';\n // if (queryStatement.queryableProperty && queryStatement.queryableProperty !== 'Manual Query Entry') {\n if (this._queryableDictionary[queryStatement.queryableProperty]) {\n queryablePropertyType = this._queryableDictionary[queryStatement.queryableProperty].type;\n } else {\n queryablePropertyType = 'string';\n }\n let inputType: string;\n const commandObject = typeCommandOptions[queryablePropertyType][queryStatement.command] as Command;\n // commandObject returns something like this: {\"commandInputs\":[{\"type\":\"text\",\"example\":\"Example: sodium\"}]}\n if (commandObject.commandInputs) {\n inputType = commandObject.commandInputs[0].type;\n // search textbox value\n // {\"text\":[\"15475 56 6\"],\"datetime\":[],\"number\":[],\"select\":[]}\n // **** LOAD PREVIOUS SEARCH TEXT BOX VALUE HERE\n this.commandInputValueDict[inputType] = queryStatement.commandInputValues;\n }\n this.queryParts = queryStatement.queryParts;\n this.conditionControl.setValue(queryStatement.condition.trim(), { emitEvent: false });\n this.selectedCondition = queryStatement.condition;\n\n // Get value for 'suggest' key from dictionary file, if there is a value, will use to display\n // typeahead text box.\n if (queryStatement.queryableProperty) {\n // if (queryStatement.queryableProperty && queryStatement.queryableProperty !== 'Manual Query Entry') {\n if (this._queryableDictionary[queryStatement.queryableProperty]) {\n this.selectedQueryableSuggest = this._queryableDictionary[queryStatement.queryableProperty].suggest;\n }\n }\n\n this.isShowCommonFields = this.queryableOptionsCommon.indexOf(queryStatement.queryableProperty) > -1;\n if (this.queryableOptionsCommon.indexOf(queryStatement.queryableProperty) > -1) {\n this.isShowCommonFields = true;\n this.queryablePropertiesControl.setValue(queryStatement.queryableProperty, { emitEvent: false });\n } else {\n this.isShowCommonFields = false;\n this.queryablePropertiesAutocompleteControl.setValue(queryStatement.queryableProperty, { emitEvent: false });\n }\n // ***** LOAD PREVIOUS Query Properties (Any Name, CAS, etc)\n this.processQueriablePropertyChange(queryStatement.queryableProperty);\n // ***** LOAD PREVIOUS COMMAND (Contains, Exact, etc)\n this.commandControl.setValue(queryStatement.command);\n // **** LOAD PREVIOUS SEARCH TEXT BOX VALUE HERE FOR TYPE AHEAD TEXT BOX\n if (queryStatement.commandInputValues) {\n this.searchControl.setValue(queryStatement.commandInputValues);\n }\n } else {\n this.queryablePropertiesControl.setValue('All');\n }\n\n // Type Ahead/Suggestion in Search Text box\n this.searchControl.valueChanges.pipe(\n debounceTime(500),\n distinctUntilChanged(),\n switchMap(searchValue => {\n this.query = searchValue;\n // const eventCategory = this.eventCategory || 'advancedSearchTypeAheadTextSearch';\n // const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchValue || 'search term';\n // this.gaService.sendEvent(eventCategory, 'TypeAheadSearch:enter-term', eventLabel);\n\n // Search text by fieldName for Type Ahead\n return this.advancedSearchService.getTypeAheadSearchText(this.categoryinput, this.selectedQueryableSuggest, searchValue)\n })\n ).subscribe((response: SubstanceSuggestionsGroup) => {\n this.substanceSuggestionsGroup = response;\n this.suggestionsFields = Object.keys(this.substanceSuggestionsGroup);\n }, error => {\n // this.gaService.sendException('type ahead search suggestion error from API call');\n console.log(error);\n });\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n queryablePropertySelected(queryableProperty: string): void {\n this.processQueriablePropertyChange(queryableProperty);\n\n if (this._queryableDictionary[queryableProperty]) {\n // Get Suggestion/TypeAhead text from file\n this.selectedQueryableSuggest = this._queryableDictionary[queryableProperty].suggest;\n\n if (!this._queryableDictionary[queryableProperty].cvDomain && this._queryableDictionary[queryableProperty].type === 'string') {\n // this.commandControl.setValue('ALL of the following words in any order or position');\n this.commandControl.setValue('Contains');\n } else {\n this.commandControl.setValue(this.commandOptions[0]);\n }\n }\n }\n\n private processQueriablePropertyChange(queryableProperty: string): void {\n let queryablePropertyType = 'string';\n this.selectedQueryablePropertyType = 'string';\n this.selectedQueryableProperty = queryableProperty;\n if (this._queryableDictionary[queryableProperty]) {\n // if CV\n if (this._queryableDictionary[queryableProperty].cvDomain) {\n this.setCvOptions(this._queryableDictionary[queryableProperty].cvDomain);\n }\n this.selectedLucenePath = this._queryableDictionary[queryableProperty].lucenePath;\n if (this.selectedLucenePath) {\n // In \"Search in Field\", replace space with '\\ ' in the lucene path\n this.selectedLucenePath = this.selectedLucenePath.replace(' ', '\\\\ ');\n if (this.selectedLucenePath)\n this.selectedLucenePath = this.selectedLucenePath + ':';\n }\n this.selectedQueryablePropertyType = this._queryableDictionary[queryableProperty].type;\n queryablePropertyType = this._queryableDictionary[queryableProperty].type;\n }\n this.commandOptions = Object.keys(\n this.typeCommandOptions[queryablePropertyType]\n )\n .filter(\n option => {\n let result = false;\n // return this._queryableDictionary[queryableProperty].cvDomain || option !== 'the following exact default values'\n // && (this.commandOptionsShowAll === false && (option === 'Contains' || option === 'Exact Match' || option === 'Starts With')));\n if (this.isShowAllCommandOptions === false) {\n if (option === 'Contains' || option === 'Exact Match' || option === 'Starts With' || option === 'Ends With' || option === 'Manual Query Entry') {\n result = true;\n } else if (this._queryableDictionary[queryableProperty] && this._queryableDictionary[queryableProperty].cvDomain && option === 'the following exact default values') {\n result = true;\n } else if (this.selectedQueryablePropertyType === 'timestamp') {\n result = true;\n } else if (this.selectedQueryablePropertyType === 'number') {\n result = true;\n } else {\n result = false;\n }\n } else {\n if (this._queryableDictionary[queryableProperty]) {\n if (this._queryableDictionary[queryableProperty].cvDomain || option !== 'the following exact default values') {\n result = true;\n }\n }\n }\n return result;\n }\n ).sort((a, b) => {\n if (a === 'the following exact default values') {\n return -1;\n }\n if (b === 'the following exact default values') {\n return 1;\n }\n if (a.toLowerCase() < b.toLowerCase()) {\n return -1;\n }\n if (a.toLowerCase() > b.toLowerCase()) {\n return 1;\n }\n return 0;\n });\n }\n\n setCvOptions(cvDomain: string): void {\n this.cvService.getDomainVocabulary(cvDomain).subscribe(response => {\n this.cvOptions = response[cvDomain].list;\n });\n }\n\n refreshQuery(): void {\n if (this.commandInputs && this.commandInputs.length > 0) {\n this.commandOptionsExample = this.commandInputs[0].example;\n }\n this.queryParts = [];\n this.commandInputs.forEach((commandInput, index) => {\n if (this.commandInputValueDict[commandInput.type] && this.commandInputValueDict[commandInput.type][index] != null) {\n commandInput.constructQuery(\n this.commandInputValueDict[commandInput.type][index],\n this.selectedCondition,\n this.selectedQueryableProperty,\n this.selectedLucenePath,\n this.queryUpdated,\n this.queryParts\n );\n } else {\n this.queryUpdated.emit({\n condition: this.selectedCondition,\n queryableProperty: this.selectedQueryableProperty,\n command: this.selectedCommandOption,\n commandInputValues: [],\n query: ''\n });\n }\n });\n }\n\n queryablePropertiesAutocompleteClosed(): void {\n this.decreaseOverlayZindex();\n const inputValue = this.queryablePropertiesAutocompleteControl.value;\n\n if (inputValue) {\n for (let i = 0; i < this.allOptions.length; i++) {\n if (this.allOptions[i].toLowerCase() === inputValue.toLowerCase()) {\n this.queryablePropertySelected(this.allOptions[i]);\n this.queryablePropertiesAutocompleteControl.setValue(this.allOptions[i]);\n break;\n }\n }\n }\n\n }\n\n queryablePropertiesAutocompleteBlurred(): void {\n if (this.queryableOptionsAll.length === 0) {\n this.queryablePropertiesAutocompleteControl.setValue('All');\n this.queryablePropertySelected('All');\n }\n }\n\n clearSelectedQueryableProperty(): void {\n this.queryablePropertiesAutocompleteControl.setValue('');\n }\n\n showAllFields(): void {\n this.isShowCommonFields = false;\n this.queryablePropertiesAutocompleteControl.setValue(this.selectedQueryableProperty || '');\n }\n\n showCommonFields(): void {\n this.isShowCommonFields = true;\n if (this.queryableOptionsCommon.indexOf(this.selectedQueryableProperty) > -1) {\n this.queryablePropertiesControl.setValue(this.selectedQueryableProperty);\n } else {\n this.queryablePropertiesControl.setValue('All');\n }\n }\n\n showAllCommandOptions(): void {\n this.isShowAllCommandOptions = !this.isShowAllCommandOptions;\n this.processQueriablePropertyChange(this.selectedQueryableProperty);\n }\n\n private setCommand(command: string): void {\n this.selectedCommandOption = command;\n const commandObj = this.typeCommandOptions[this.selectedQueryablePropertyType][command] as any;\n if (commandObj.commandInputs) {\n this.commandInputs = commandObj.commandInputs;\n this.refreshQuery();\n } else if (commandObj.constructQuery) {\n this.commandInputs = [];\n commandObj.constructQuery(\n command.trim(),\n this.selectedCondition,\n this.selectedQueryableProperty,\n this.selectedLucenePath,\n this.queryUpdated,\n this.queryParts\n );\n }\n }\n\n processSubstanceSearch(searchValue: string) {\n this.navigateToSearchResults(searchValue);\n }\n\n navigateToSearchResults(searchTerm: string) {\n\n const navigationExtras: NavigationExtras = {\n queryParams: searchTerm ? { 'search': searchTerm } : null\n };\n\n this.router.navigate(['/browse-substance'], navigationExtras);\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n openedChange(opened: boolean): void {\n if (opened) {\n this.increaseOverlayZindex();\n } else {\n this.decreaseOverlayZindex();\n }\n }\n\n searchOptionSelected(event?: MatAutocompleteSelectedEvent) {\n // const eventCategory = this.eventCategory || 'advancedSearchTypeAheadTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && event.option.value || 'auto-complete option';\n // this.gaService.sendEvent(eventCategory, 'select:auto-complete', eventLabel);\n let searchTerm = event.option.value;\n\n this.searchPerformed.emit(searchTerm);\n\n if (searchTerm) {\n this.queryParts = [];\n this.commandInputs.forEach((commandInput, index) => {\n // if (this.commandInputValueDict[commandInput.type] && this.commandInputValueDict[commandInput.type][index] != null) {\n commandInput.constructQuery(\n searchTerm,\n this.selectedCondition,\n this.selectedQueryableProperty,\n this.selectedLucenePath,\n this.queryUpdated,\n this.queryParts\n );\n });\n }\n }\n\n highlight(field: string) {\n if (!this.query) {\n return field;\n } else {\n if (this.matOpen) {\n this.testElem = document.querySelector('#overflow') as HTMLElement;\n if (this.testElem != null) {\n this.testElem.innerText = field;\n if (this.testElem.scrollWidth > this.testElem.offsetWidth) {\n const pos = field.toUpperCase().indexOf(this.query.toUpperCase());\n field = '...' + field.substring(pos - 15, field.length);\n }\n }\n }\n const query = this.query.replace(/(?=[() ])/g, '\\\\');\n return field.replace(new RegExp(query, 'gi'), match => {\n return '' + match + '';\n });\n }\n }\n\n focused(): void {\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\n this.matOpen = true;\n this.opened.emit();\n }\n }\n\n autoCompleteClosed(): void {\n this.matOpen = false;\n this.closed.emit();\n }\n\n processSearch(): void {\n this.processSearchOut.emit();\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { AdvancedSearchService } from './service/advanced-search.service';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatListModule } from '@angular/material/list';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\nimport { FacetsManagerModule } from '@gsrs-core/facets-manager';\nimport { SubstanceTextSearchService } from '@gsrs-core/substance-text-search/substance-text-search.service';\nimport { SubstanceSearchSelectorModule } from '../substance-search-select/substance-search-selector.module';\nimport { SubstanceSelectorModule } from '@gsrs-core/substance-selector/substance-selector.module';\nimport { SubstanceFormModule } from '../../core/substance-form/substance-form.module';\nimport { AdvancedSearchComponent } from '../advanced-search/advanced-search.component';\nimport { AdvancedQueryStatementComponent } from './advanced-query-statement/advanced-query-statement.component';\nimport { StructureEditorModule } from '@gsrs-core/structure-editor/structure-editor.module';\nimport { NameResolverModule } from '@gsrs-core/name-resolver/name-resolver.module';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { FacetDisplayPipe } from '@gsrs-core/facets-manager/facet-display.pipe';\nimport { StructureModule } from '@gsrs-core/structure/structure.module';\n\nconst advSearchRoutes: Routes = [\n {\n path: 'advanced-search',\n component: AdvancedSearchComponent\n }\n];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule.forChild(advSearchRoutes),\n MatToolbarModule,\n MatSidenavModule,\n MatCardModule,\n MatAutocompleteModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule,\n MatIconModule,\n MatChipsModule,\n MatBadgeModule,\n MatExpansionModule,\n MatCheckboxModule,\n MatTableModule,\n MatPaginatorModule,\n MatSelectModule,\n MatSliderModule,\n MatDialogModule,\n MatListModule,\n MatMenuModule,\n MatButtonToggleModule,\n MatTooltipModule,\n MatTabsModule,\n MatBottomSheetModule,\n MatProgressSpinnerModule,\n MatDatepickerModule,\n FormsModule,\n ReactiveFormsModule,\n OverlayModule,\n SubstanceSearchSelectorModule,\n SubstanceFormModule,\n FacetsManagerModule,\n StructureEditorModule,\n NameResolverModule,\n StructureModule\n ],\n declarations: [\n AdvancedSearchComponent,\n AdvancedQueryStatementComponent\n ],\n exports: [\n AdvancedSearchComponent\n ]\n})\n\nexport class AdvancedSearchModule {\n constructor(router: Router) {\n advSearchRoutes.forEach(route => {\n router.config[0].children.push(route);\n });\n }\n\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: AdvancedSearchModule,\n providers: [\n AdvancedSearchService\n ]\n };\n }\n\n}\n\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AdverseEventTextSearchComponent } from './adverse-event-text-search.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatAutocompleteModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule\n ],\n declarations: [\n AdverseEventTextSearchComponent\n ],\n exports: [\n AdverseEventTextSearchComponent\n ]\n})\nexport class AdverseEventTextSearchModule { }\n","
    \n
    \n \n \n {{hintMessage}}\n {{errorMessage}}\n \n
    \n
    {{field['display']}}
    \n \n
    {{suggestion.key}}
    \n
    \n
    \n
    \n      
    \n
    \n \n \n
    \n
    \n","import { Component, OnInit, ElementRef, AfterViewInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { MatAutocompleteSelectedEvent, MatAutocomplete } from '@angular/material/autocomplete';\nimport { debounceTime, distinctUntilChanged, switchMap, take } from 'rxjs/operators';\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils/substance-suggestions-group.model';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics/google-analytics.service';\nimport { ConfigService } from '@gsrs-core/config';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { AdverseEventService } from '../service/adverseevent.service';\n\n@Component({\n selector: 'app-adverse-event-text-search',\n templateUrl: './adverse-event-text-search.component.html',\n styleUrls: ['./adverse-event-text-search.component.scss']\n})\n\nexport class AdverseEventTextSearchComponent implements OnInit, AfterViewInit, OnDestroy {\n searchControl = new FormControl();\n substanceSuggestionsGroup: SubstanceSuggestionsGroup;\n suggestionsFields: Array;\n matOpen = true;\n private testElem: HTMLElement;\n private searchContainerElement: HTMLElement;\n private query: string;\n @Input() eventCategory: string;\n @Input() styling?: string;\n @Output() searchPerformed = new EventEmitter();\n @Output() searchValueOut = new EventEmitter();\n @Input() placeholder = 'Search';\n @Input() hintMessage = '';\n private privateErrorMessage = '';\n @Output() opened = new EventEmitter();\n @Output() closed = new EventEmitter();\n @Input() source?: string;\n private CasDisplay = 'CAS';\n codeSystemVocab?: any;\n\n constructor(\n public adverseEventService: AdverseEventService,\n private element: ElementRef,\n public gaService: GoogleAnalyticsService,\n public configService: ConfigService,\n private cvService: ControlledVocabularyService\n ) { }\n\n ngOnInit() {\n this.searchControl.valueChanges.pipe(\n debounceTime(500),\n distinctUntilChanged(),\n switchMap(searchValue => {\n this.query = searchValue;\n this.searchValueOut.emit(this.query);\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchValue || 'search term';\n this.gaService.sendEvent(eventCategory, 'search:enter-term', eventLabel);\n return this.adverseEventService.getAdverseEventSearchSuggestions(searchValue.toUpperCase(), this.eventCategory);\n })\n ).subscribe((response: SubstanceSuggestionsGroup) => {\n this.substanceSuggestionsGroup = response;\n let showTypes = [];\n if (this.eventCategory && this.eventCategory === 'adverseEventPtSearch') {\n showTypes = ['PT_Term', 'Prim_SOC', 'Ingredient_Name', 'ATC_Level_1', 'ATC_Level_2', 'ATC_Level_3', 'ATC_Level_4'];\n } else if (this.eventCategory && this.eventCategory === 'adverseEventDmeSearch') {\n showTypes = ['DME_Reactions', 'PTTerm_Meddra', 'Ingredient_Name', 'ATC_Level_1', 'ATC_Level_2', 'ATC_Level_3', 'ATC_Level_4'];\n } else if (this.eventCategory && this.eventCategory === 'adverseEventCvmSearch') {\n showTypes = ['Adverse_Event', 'Route_of_Administration', 'Ingredient_Name', 'Species', 'ATC_Level_1', 'ATC_Level_2', 'ATC_Level_3', 'ATC_Level_4'];\n }\n\n this.suggestionsFields = Object.keys(this.substanceSuggestionsGroup).filter(function (item) {\n return showTypes.indexOf(item) > -1;\n });\n\n this.suggestionsFields.forEach((value, index) => {\n if (value === 'DME_Reactions') {\n this.suggestionsFields[index] = { value: 'DME_Reactions', display: 'DME Reactions' };\n } else if (value === 'PTTerm_Meddra') {\n this.suggestionsFields[index] = { value: 'PTTerm_Meddra', display: 'PTTerm Meddra' };\n } else if (value === 'PT_Term') {\n this.suggestionsFields[index] = { value: 'PT_Term', display: 'PT Term' };\n } else if (value === 'Adverse_Event') {\n this.suggestionsFields[index] = { value: 'Adverse_Event', display: 'Adverse Event' };\n } else if (value === 'Prim_SOC') {\n this.suggestionsFields[index] = { value: 'Prim_SOC', display: 'Prim SOC' };\n } else if (value === 'Route_of_Administration') {\n this.suggestionsFields[index] = { value: 'Route_of_Administration', display: 'Route of Administration' };\n } else if (value === 'Species') {\n this.suggestionsFields[index] = { value: 'Species', display: 'Species' };\n } else if (value === 'Ingredient_Name') {\n this.suggestionsFields[index] = { value: 'Ingredient_Name', display: 'Ingredient Name' };\n } else if (value === 'ATC_Level_1') {\n this.suggestionsFields[index] = { value: 'ATC_Level_1', display: 'ATC Level 1' };\n } else if (value === 'ATC_Level_2') {\n this.suggestionsFields[index] = { value: 'ATC_Level_2', display: 'ATC Level 2' };\n } else if (value === 'ATC_Level_3') {\n this.suggestionsFields[index] = { value: 'ATC_Level_3', display: 'ATC Level 3' };\n } else if (value === 'ATC_Level_4') {\n this.suggestionsFields[index] = { value: 'ATC_Level_4', display: 'ATC Level 4' };\n } else {\n this.suggestionsFields[index] = { value: value, display: value };\n }\n });\n\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\n this.matOpen = true;\n this.opened.emit();\n }\n\n }, error => {\n this.gaService.sendException('search suggestion error from API call');\n console.log(error);\n });\n\n }\n\n @Input()\n set searchValue(searchValue: string) {\n this.searchControl.setValue(searchValue);\n }\n\n @Input()\n set errorMessage(errorMessage: string) {\n this.searchControl.markAsTouched();\n if (errorMessage) {\n this.searchControl.setErrors({\n error: true\n });\n } else {\n this.searchControl.setErrors(null);\n }\n this.privateErrorMessage = errorMessage;\n }\n\n get errorMessage(): string {\n return this.privateErrorMessage;\n }\n\n ngOnDestroy() { }\n\n autoCompleteClosed(): void {\n this.matOpen = false;\n this.closed.emit();\n }\n\n focused(): void {\n if (this.suggestionsFields != null && this.suggestionsFields.length > 0) {\n this.matOpen = true;\n this.opened.emit();\n }\n }\n\n ngAfterViewInit() {\n this.searchContainerElement = this.element.nativeElement.querySelector('.search-container');\n }\n\n substanceSearchOptionSelected(event?: MatAutocompleteSelectedEvent) {\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && event.option.value || 'auto-complete option';\n this.gaService.sendEvent(eventCategory, 'select:auto-complete', eventLabel);\n let searchTerm = event.option.value;\n\n searchTerm = this.topSearchClean(searchTerm);\n\n this.searchPerformed.emit(searchTerm);\n }\n\n highlight(field: string) {\n if (!this.query) {\n return field;\n } else {\n if (this.matOpen) {\n this.testElem = document.querySelector('#overflow') as HTMLElement;\n if (this.testElem != null) {\n this.testElem.innerText = field;\n if (this.testElem.scrollWidth > this.testElem.offsetWidth) {\n const pos = field.toUpperCase().indexOf(this.query.toUpperCase());\n field = '...' + field.substring(pos - 15, field.length);\n }\n }\n }\n const query = this.query.replace(/(?=[() ])/g, '\\\\');\n return field.replace(new RegExp(query, 'gi'), match => {\n return '' + match + '';\n });\n }\n }\n\n processSubstanceSearch() {\n let searchTerm = this.searchControl.value;\n const eventCategory = this.eventCategory || 'substanceTextSearch';\n const eventLabel = !this.configService.environment.isAnalyticsPrivate && searchTerm || 'search term option';\n this.gaService.sendEvent(eventCategory, 'search:submit', eventLabel);\n\n // Clean up searchTerm\n searchTerm = this.topSearchClean(searchTerm);\n\n this.searchPerformed.emit(searchTerm);\n }\n\n activateSearch(): void {\n if (this.source) {\n this.searchContainerElement.classList.add('active-' + this.source);\n } else {\n this.searchContainerElement.classList.add('active-search');\n }\n }\n\n deactivateSearch(): void {\n this.searchContainerElement.classList.add('deactivate-search');\n setTimeout(() => {\n if (this.source) {\n\n this.searchContainerElement.classList.remove('active-' + this.source);\n this.searchContainerElement.classList.remove('deactivate-search');\n } else {\n this.searchContainerElement.classList.remove('active-search');\n this.searchContainerElement.classList.remove('deactivate-search');\n }\n }, 300);\n }\n\n topSearchClean(searchTerm): string {\n if (searchTerm && searchTerm.length > 0) {\n searchTerm = searchTerm.trim();\n if (searchTerm.indexOf('\"') < 0 && searchTerm.indexOf('*') < 0 && searchTerm.indexOf(':') < 0\n && searchTerm.indexOf(' AND ') < 0 && searchTerm.indexOf(' OR ') < 0) {\n // Put slash in front of brackets, for example:\n // 1. [INN] to \\[INN\\]\n // 2. IBUPROFEN [INN] to IBUPROFEN \\[INN\\]\n // 3. *[INN] to *\\[INN\\]\n // 4. [INN]* to \\[INN\\]*\n // 5. \"[INN]\" to \"\\[INN\\]\"\n // 6. \"IBUPROFEN [INN]\" to \"IBUPROFEN \\[INN\\]\"\n // 7. \"*[INN]\" to \"*\\[INN\\]\"\n // 8. [INN]* to \\[INN\\]*\n searchTerm = '\"' + searchTerm\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\n + '\"';\n } else if (searchTerm.indexOf(':') < 0) {\n searchTerm = searchTerm\n .replace(/([^\\\\])\\[/g, \"$1\\\\[\").replace(/^\\[/g, \"\\\\[\")\n .replace(/([^\\\\])\\]/g, \"$1\\\\]\").replace(/^\\]/g, \"\\\\]\")\n }\n this.searchControl.setValue(searchTerm);\n }\n return searchTerm;\n }\n}\n","\n\n \n \n \n \n\n \n \n
    \n\n \n
    0; else filterParameters\">\n
    \n
    \n
    \n Would you like to restrict this search to a field?\n
     \n \n \n \n \n
    \n
    \n
    \n {{matchType == 'WORD' ? 'Contains Match' : 'Exact Match'}}\n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n For more options use the Advanced Search\n
    \n
    \n
    \n \n\n \n
    \n\n
    \n
    \n Search Query: \n {{searchTerm}}\n
    \n
    \n \n \n
    \n
    \n\n \n
    \n
    \n \n \n {{facet.type}}:\n \n \n {{facet.val}}\n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n \n
    \n\n
    \n Browse Adverse Event PT\n
    \n\n \n \n \n \n \n \n \n \n \n\n \n \n\n \n
    \n \n
    \n\n
    \n \n
    \n \n \n\n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n\n
    \n\n
    \n \n \n \n\n \n \n
    \n\n \n
    \n\n \n
    \n
    \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
    PT Term \n \n Prim SOC {{adverse.primSoc}} Ingredient Name \n \n {{adverse.name}}\n \n Case Count {{adverse.caseCount}} PT Count \n
    \n \n
    \n
    \n FAERS Public Dashboard\n
    \n \n
    \n
    \n
    PRR {{adverse.prr | number : '.2-2'}}
    \n
    \n
    \n \n\n \n
    0; else noRecordAdverseEventPt\">\n \n \n
    \n Adverse Event: \n {{adverse.ptTerm}}\n
    \n
    \n
    \n
    \n
    \n
    \n\n \n\n
    \n
    \n
    \n Ingredient Name:\n
    \n \n
    \n
    \n
    \n Substance Key:\n
    \n
    \n {{adverse.substanceKey}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Prim SOC:\n
    \n
    \n {{ adverse.primSoc}}\n
    \n
    \n
    \n
    \n PRR:\n
    \n
    \n {{adverse.prr | number : '.2-2'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Case Count:\n
    \n
    \n {{adverse.caseCount}}\n
    \n
    \n
    \n
    \n SOC Count:\n
    \n
    \n {{adverse.socCount}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n PT Count:\n
    \n
    \n {{adverse.ptCount}}\n
    \n
    \n
    \n
    \n SOC Count Percent:\n
    \n
    \n {{adverse.socCountPercent}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n PT Count Percent:\n
    \n
    \n {{adverse.ptCountPercent}}\n
    \n
    \n
    \n
    \n PT Count Total Vs Drug:\n
    \n
    \n {{adverse.ptCountTotalVsDrug}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n \n\n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n
    \n\n \n \n \n\n
    \n
    \n
    ","import { Component, OnInit, AfterViewInit, OnDestroy, Output, EventEmitter, HostListener } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Location, LocationStrategy } from '@angular/common';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport * as _ from 'lodash';\nimport { Sort } from '@angular/material/sort';\nimport { Facet, FacetsManagerService, FacetUpdateEvent } from '@gsrs-core/facets-manager';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { ConfigService } from '@gsrs-core/config';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { GoogleAnalyticsService } from '../../../../app/core/google-analytics/google-analytics.service';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { NarrowSearchSuggestion } from '@gsrs-core/utils';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\nimport { environment } from '../../../../environments/environment';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AdverseEventService } from '../service/adverseevent.service';\nimport { GeneralService } from '../../service/general.service';\nimport { AdverseEventPt } from '../model/adverse-event.model';\nimport { adverseEventPtSearchSortValues } from './adverse-events-pt-search-sort-values';\n\n@Component({\n selector: 'app-adverse-events-pt-browse',\n templateUrl: './adverse-events-pt-browse.component.html',\n styleUrls: ['./adverse-events-pt-browse.component.scss']\n})\n\nexport class AdverseEventsPtBrowseComponent implements OnInit, AfterViewInit, OnDestroy {\n @Output() countAdverseEventPtOut: EventEmitter = new EventEmitter();\n isAdmin: boolean;\n isLoggedIn = false;\n isLoading = true;\n isError = false;\n invalidPage = false;\n private isComponentInit = false;\n privateExport = false;\n isSearchEditable = false;\n environment: any;\n narrowSearchSuggestions?: { [matchType: string]: Array } = {};\n matchTypes?: Array = [];\n narrowSearchSuggestionsCount = 0;\n searchValue: string;\n previousState: Array = [];\n private overlayContainer: HTMLElement;\n\n // needed for facets\n ascDescDir = 'desc';\n private isFacetsParamsInit = false;\n private privateFacetParams: FacetParam;\n rawFacets: Array;\n private searchTermHash: number;\n public displayFacets: Array = [];\n private subscriptions: Array = [];\n\n view = 'table';\n order = '$root_ptCount';\n etag = '';\n totalAdverseEventPt = 0;\n pageIndex: number;\n pageSize: number;\n lastPage: number;\n public sortValues = adverseEventPtSearchSortValues;\n public privateSearchTerm?: string;\n public adverseEventPtList: Array;\n displayedColumns: string[] = [\n 'ptTerm',\n 'primSoc',\n 'ingredientName',\n 'caseCount',\n 'ptCount',\n 'prr'\n ];\n\n constructor(\n public adverseEventService: AdverseEventService,\n public generalService: GeneralService,\n private activatedRoute: ActivatedRoute,\n private location: Location,\n private locationStrategy: LocationStrategy,\n private router: Router,\n private sanitizer: DomSanitizer,\n public gaService: GoogleAnalyticsService,\n public configService: ConfigService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n private authService: AuthService,\n private overlayContainerService: OverlayContainer,\n private facetManagerService: FacetsManagerService,\n private utilsService: UtilsService,\n private dialog: MatDialog,\n private titleService: Title\n ) { }\n\n @HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if (this.router.url === this.previousState[0]) {\n this.ngOnInit();\n }\n }, 50);\n }\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets);\n // this.gaService.sendPageView('Browse Adverse Event');\n\n this.titleService.setTitle(`AE:Browse Adverse Events`);\n\n this.pageSize = 10;\n this.pageIndex = 0;\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n this.privateSearchTerm = this.activatedRoute.snapshot.queryParams['search'] || '';\n\n if (this.privateSearchTerm) {\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n }\n\n this.order = this.activatedRoute.snapshot.queryParams['order'] || '$root_ptCount';\n this.pageSize = parseInt(this.activatedRoute.snapshot.queryParams['pageSize'], null) || 10;\n this.pageIndex = parseInt(this.activatedRoute.snapshot.queryParams['pageIndex'], null) || 0;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.isLoggedIn = true;\n }\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\n });\n this.subscriptions.push(authSubscription);\n\n this.isComponentInit = true;\n this.loadComponent();\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n private loadComponent(): void {\n if (this.isFacetsParamsInit && this.isComponentInit) {\n this.searchAdverseEventPt();\n }\n }\n\n // For Table View\n /*\n getAdverseEventPt(pageEvent?: PageEvent) {\n this.loadingService.setLoading(true);\n this.setPageEvent(pageEvent);\n // this.showSpinner = true; // Start progress spinner\n const skip = this.pageIndex * this.pageSize;\n // const privateSearch = 'root_substanceKey:' + this.bdnum;\n const subscription = this.adverseEventService.getAdverseEventPt(\n this.order,\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams\n )\n .subscribe(pagingResponse => {\n this.totalAdverseEventPt = pagingResponse.total;\n this.adverseEventService.totalRecords = pagingResponse.total;\n // this.adverseEventCount = pagingResponse.total;\n // this.setResultData(pagingResponse.content);\n // this.paged = pagingResponse.content;\n // this.results = results;\n // this.filtered = results;\n // this.totalRecords = this.service.totalRecords;\n // this.pageChangeFda();\n this.etag = pagingResponse.etag;\n }, error => {\n console.log('error');\n }, () => {\n subscription.unsubscribe();\n this.isLoading = false;\n this.loadingService.setLoading(false);\n });\n // this.loadingStatus = '';\n // this.showSpinner = false; // Stop progress spinner\n // this.loadingService.setLoading(false);\n }\n */\n\n searchAdverseEventPt() {\n this.loadingService.setLoading(true);\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.adverseEventService.getAdverseEventPt(\n this.order,\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.isError = false;\n this.adverseEventPtList = pagingResponse.content;\n this.totalAdverseEventPt = pagingResponse.total;\n this.countAdverseEventPtOut.emit(pagingResponse.total);\n this.etag = pagingResponse.etag;\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n\n // Narrow Suggest Search Begin\n this.narrowSearchSuggestions = {};\n this.matchTypes = [];\n this.narrowSearchSuggestionsCount = 0;\n if (pagingResponse.narrowSearchSuggestions && pagingResponse.narrowSearchSuggestions.length) {\n pagingResponse.narrowSearchSuggestions.forEach(suggestion => {\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n });\n }\n this.matchTypes.sort();\n // Narrow Suggest Search End\n }, error => {\n console.log('error');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve Adverse Event PT. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n subscription.unsubscribe();\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n setPageEvent(pageEvent?: PageEvent): void {\n if (pageEvent != null) {\n this.pageIndex = pageEvent.pageIndex;\n this.pageSize = pageEvent.pageSize;\n }\n }\n\n setSearchTermValue() {\n this.pageSize = 10;\n this.pageIndex = 0;\n this.searchAdverseEventPt();\n }\n\n clearSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n this.gaService.sendEvent('adverseEventFiltering', 'icon-button:clear-search', eventLabel);\n\n this.privateSearchTerm = '';\n this.pageIndex = 0;\n this.pageSize = 10;\n\n this.populateUrlQueryParameters();\n this.searchAdverseEventPt();\n }\n\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n this.clearSearch();\n\n this.facetManagerService.clearSelections();\n }\n\n populateUrlQueryParameters(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n navigationExtras.queryParams['searchTerm'] = this.privateSearchTerm;\n navigationExtras.queryParams['pageSize'] = this.pageSize;\n navigationExtras.queryParams['pageIndex'] = this.pageIndex;\n navigationExtras.queryParams['skip'] = this.pageIndex * this.pageSize;\n\n this.previousState.push(this.router.url);\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n get searchTerm(): string {\n return this.privateSearchTerm;\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString();\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n // Search Adverse Event\n this.searchAdverseEventPt();\n }\n return;\n }\n\n updateView(event): void {\n // this.gaService.sendEvent('adverseeventptsContent', 'button:view-update', event.value);\n this.view = event.value;\n }\n\n changePage(pageEvent: PageEvent) {\n\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.pageIndex !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent('applicationsContent', eventAction, 'pager', eventValue);\n\n this.pageSize = pageEvent.pageSize;\n this.pageIndex = pageEvent.pageIndex;\n this.populateUrlQueryParameters();\n this.searchAdverseEventPt();\n }\n\n customPage(event: any): void {\n if (this.validatePageInput(event)) {\n this.invalidPage = false;\n const newpage = Number(event.target.value) - 1;\n this.pageIndex = newpage;\n this.gaService.sendEvent('adverseEventPtContent', 'select:page-number', 'pager', newpage);\n this.populateUrlQueryParameters();\n this.searchAdverseEventPt();\n }\n }\n\n validatePageInput(event: any): boolean {\n if (event && event.target) {\n const newpage = Number(event.target.value);\n if (!isNaN(Number(newpage))) {\n if ((Number.isInteger(newpage)) && (newpage <= this.lastPage) && (newpage > 0)) {\n return true;\n }\n }\n }\n return false;\n }\n\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n this.pageIndex = 0;\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.displayFacets = facetsUpdateEvent.displayFacets;\n if (!this.isFacetsParamsInit) {\n this.isFacetsParamsInit = true;\n this.loadComponent();\n } else {\n this.searchAdverseEventPt();\n }\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n }\n\n editAdvancedSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'Browse Application search term' :\n `${this.privateSearchTerm}`;\n this.gaService.sendEvent('AdverseEventPt Filtering', 'icon-button:edit-advanced-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n 'g-search-hash': this.searchTermHash.toString()\n }\n };\n\n this.router.navigate(['/advanced-search'], navigationExtras);\n }\n\n restricSearh(searchTerm: string): void {\n this.privateSearchTerm = searchTerm;\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n this.populateUrlQueryParameters();\n this.searchAdverseEventPt();\n // this.substanceTextSearchService.setSearchValue('main-substance-search', this.privateSearchTerm);\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'browseAdverseEventPt' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalAdverseEventPt\n }\n };\n const params = { 'total': this.totalAdverseEventPt };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlPt(etag, extension);\n }\n\n processSubstanceSearch(searchValue: string) {\n this.privateSearchTerm = searchValue;\n this.setSearchTermValue();\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n}\n","\n \n \n \n \n\n \n
    \n\n \n
    0; else filterParameters\">\n
    \n
    \n
    \n Would you like to restrict this search to a field?\n
     \n \n \n \n \n
    \n
    \n
    \n {{matchType == 'WORD' ? 'Contains Match' : 'Exact Match'}}\n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n For more options use the Advanced Search\n
    \n
    \n
    \n \n\n \n
    \n
    \n
    \n Search Query: \n {{searchTerm}}\n
    \n
    \n \n \n
    \n
    \n\n \n
    \n
    \n \n \n {{facet.type}}:\n \n \n {{facet.val}}\n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n \n
    \n\n
    \n Browse Adverse Event DME\n
    \n\n \n \n \n \n \n \n \n \n \n\n \n \n \n
    \n \n
    \n\n
    \n \n
    \n \n \n\n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n\n
    \n\n
    \n \n \n \n\n \n \n
    \n\n\n \n
    \n\n \n
    \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
    DME Reactions {{adverse.dmeReactions}} PT Term Meddra {{adverse.ptTermMeddra}} Ingredient Name \n \n {{adverse.name}}\n \n Case Count {{adverse.caseCount}} Dme Count {{adverse.dmeCount}} Dme Count Percent {{adverse.dmeCountPercent}} Weighted Average PRR {{adverse.weightedAvgPrr | number : '.2-2'}}
    \n
    \n\n \n
    \n \n \n
    \n DME Reactions: \n {{adverseEventDme.dmeReactions}}\n
    \n
    \n
    \n
    \n
    \n
    \n\n \n\n
    \n
    \n
    \n Ingredient Name:\n
    \n \n
    \n
    \n
    \n Substance Key:\n
    \n
    \n {{adverseEventDme.substanceKey}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n PTTerm Meddra:\n
    \n
    \n {{ adverseEventDme.ptTermMeddra}}\n
    \n
    \n
    \n
    \n Case Count:\n
    \n
    \n {{ adverseEventDme.caseCount}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n DME Count:\n
    \n
    \n {{ adverseEventDme.dmeCount}}\n
    \n
    \n
    \n
    \n DME Count Percent:\n
    \n
    \n {{ adverseEventDme.dmeCountPercent}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Weighted Average PRR:\n
    \n
    \n {{adverseEventDme.weightedAvgPrr | number : '.2-2'}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n \n\n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n
    \n\n \n \n \n\n
    \n
    \n
    ","import { Component, OnInit, AfterViewInit, OnDestroy, Output, EventEmitter, HostListener } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Location, LocationStrategy } from '@angular/common';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport * as _ from 'lodash';\nimport { Sort } from '@angular/material/sort';\nimport { Facet, FacetsManagerService, FacetUpdateEvent } from '@gsrs-core/facets-manager';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { ConfigService } from '@gsrs-core/config';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { GoogleAnalyticsService } from '../../../../app/core/google-analytics/google-analytics.service';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { NarrowSearchSuggestion } from '@gsrs-core/utils';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\nimport { environment } from '../../../../environments/environment';\n// import { adverseEventSearchSortValues } from './application-search-sort-values';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AdverseEventService } from '../service/adverseevent.service';\nimport { GeneralService } from '../../service/general.service';\nimport { AdverseEventDme } from '../model/adverse-event.model';\nimport { adverseEventDmeSearchSortValues } from './adverse-events-dme-search-sort-values';\n\n@Component({\n selector: 'app-adverse-events-dme-browse',\n templateUrl: './adverse-events-dme-browse.component.html',\n styleUrls: ['./adverse-events-dme-browse.component.scss']\n})\n\nexport class AdverseEventsDmeBrowseComponent implements OnInit, AfterViewInit, OnDestroy {\n @Output() countAdverseEventDmeOut: EventEmitter = new EventEmitter();\n isAdmin: boolean;\n isLoggedIn = false;\n isLoading = true;\n isError = false;\n invalidPage = false;\n private isComponentInit = false;\n privateExport = false;\n isSearchEditable = false;\n environment: any;\n narrowSearchSuggestions?: { [matchType: string]: Array } = {};\n matchTypes?: Array = [];\n narrowSearchSuggestionsCount = 0;\n searchValue: string;\n previousState: Array = [];\n private overlayContainer: HTMLElement;\n\n // needed for facets\n ascDescDir = 'desc';\n private isFacetsParamsInit = false;\n private privateFacetParams: FacetParam;\n rawFacets: Array;\n private searchTermHash: number;\n public displayFacets: Array = [];\n private subscriptions: Array = [];\n\n view = 'table';\n order = '$root_dmeCount';\n etag = '';\n totalAdverseEventDme = 0;\n pageIndex: number;\n pageSize: number;\n lastPage: number;\n public sortValues = adverseEventDmeSearchSortValues;\n public privateSearchTerm?: string;\n public adverseEventDme: Array;\n displayedColumns: string[] = [\n 'dmeReactions',\n 'ptTermMeddra',\n 'ingredientName',\n 'caseCount',\n 'dmeCount',\n 'dmeCountPercent',\n 'weightedAvgPrr'\n ];\n\n constructor(\n public adverseEventService: AdverseEventService,\n public generalService: GeneralService,\n private activatedRoute: ActivatedRoute,\n private location: Location,\n private locationStrategy: LocationStrategy,\n private router: Router,\n private sanitizer: DomSanitizer,\n public gaService: GoogleAnalyticsService,\n public configService: ConfigService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n private authService: AuthService,\n private overlayContainerService: OverlayContainer,\n private facetManagerService: FacetsManagerService,\n private utilsService: UtilsService,\n private dialog: MatDialog,\n private titleService: Title\n ) { }\n\n @HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if (this.router.url === this.previousState[0]) {\n this.ngOnInit();\n }\n\n }, 50);\n }\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventDmeFacets);\n // this.gaService.sendPageView('Browse Adverse Event Dme');\n\n this.titleService.setTitle(`AE:Browse Adverse Events`);\n\n this.pageSize = 10;\n this.pageIndex = 0;\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n this.privateSearchTerm = this.activatedRoute.snapshot.queryParams['search'] || '';\n\n if (this.privateSearchTerm) {\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n }\n\n this.order = this.activatedRoute.snapshot.queryParams['order'] || '$root_dmeCount';\n this.pageSize = parseInt(this.activatedRoute.snapshot.queryParams['pageSize'], null) || 10;\n this.pageIndex = parseInt(this.activatedRoute.snapshot.queryParams['pageIndex'], null) || 0;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.isLoggedIn = true;\n }\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\n });\n this.subscriptions.push(authSubscription);\n\n this.isComponentInit = true;\n this.loadComponent();\n\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n private loadComponent(): void {\n if (this.isFacetsParamsInit && this.isComponentInit) {\n this.searchAdverseEventDme();\n }\n }\n\n searchAdverseEventDme() {\n this.loadingService.setLoading(true);\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.adverseEventService.getAdverseEventDme(\n this.order,\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.isError = false;\n\n this.adverseEventDme = pagingResponse.content;\n // didn't work unless I did it like this instead of\n // below export statement\n // this.dataSource = this.adverseEventDme;\n this.totalAdverseEventDme = pagingResponse.total;\n this.countAdverseEventDmeOut.emit(pagingResponse.total);\n this.etag = pagingResponse.etag;\n\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n\n // Narrow Suggest Search Begin\n this.narrowSearchSuggestions = {};\n this.matchTypes = [];\n this.narrowSearchSuggestionsCount = 0;\n if (pagingResponse.narrowSearchSuggestions && pagingResponse.narrowSearchSuggestions.length) {\n pagingResponse.narrowSearchSuggestions.forEach(suggestion => {\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n });\n }\n this.matchTypes.sort();\n // Narrow Suggest Search End\n\n // this.getSubstanceBySubstanceKey();\n // this.applicationService.getClinicalTrialApplication(this.applications);\n }, error => {\n console.log('error');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve Adverse Event DME. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n subscription.unsubscribe();\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n setSearchTermValue() {\n this.pageSize = 10;\n this.pageIndex = 0;\n this.searchAdverseEventDme();\n }\n\n clearSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n this.gaService.sendEvent('adverseEventFiltering', 'icon-button:clear-search', eventLabel);\n\n this.privateSearchTerm = '';\n this.pageIndex = 0;\n this.pageSize = 10;\n\n this.populateUrlQueryParameters();\n this.searchAdverseEventDme();\n }\n\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n this.clearSearch();\n\n this.facetManagerService.clearSelections();\n }\n\n populateUrlQueryParameters(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n navigationExtras.queryParams['searchTerm'] = this.privateSearchTerm;\n navigationExtras.queryParams['pageSize'] = this.pageSize;\n navigationExtras.queryParams['pageIndex'] = this.pageIndex;\n navigationExtras.queryParams['skip'] = this.pageIndex * this.pageSize;\n\n this.previousState.push(this.router.url);\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n get searchTerm(): string {\n return this.privateSearchTerm;\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString();\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n // Search Adverse Event\n this.searchAdverseEventDme();\n }\n return;\n }\n\n updateView(event): void {\n // this.gaService.sendEvent('adverseeventptsContent', 'button:view-update', event.value);\n this.view = event.value;\n }\n\n changePage(pageEvent: PageEvent) {\n\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.pageIndex !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent('applicationsContent', eventAction, 'pager', eventValue);\n\n this.pageSize = pageEvent.pageSize;\n this.pageIndex = pageEvent.pageIndex;\n this.populateUrlQueryParameters();\n this.searchAdverseEventDme();\n }\n\n customPage(event: any): void {\n if (this.validatePageInput(event)) {\n this.invalidPage = false;\n const newpage = Number(event.target.value) - 1;\n this.pageIndex = newpage;\n this.gaService.sendEvent('adverseEventPtContent', 'select:page-number', 'pager', newpage);\n this.populateUrlQueryParameters();\n this.searchAdverseEventDme();\n }\n }\n\n validatePageInput(event: any): boolean {\n if (event && event.target) {\n const newpage = Number(event.target.value);\n if (!isNaN(Number(newpage))) {\n if ((Number.isInteger(newpage)) && (newpage <= this.lastPage) && (newpage > 0)) {\n return true;\n }\n }\n }\n return false;\n }\n\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n this.pageIndex = 0;\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.displayFacets = facetsUpdateEvent.displayFacets;\n if (!this.isFacetsParamsInit) {\n this.isFacetsParamsInit = true;\n this.loadComponent();\n } else {\n this.searchAdverseEventDme();\n }\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n }\n\n editAdvancedSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'Browse Application search term' :\n `${this.privateSearchTerm}`;\n this.gaService.sendEvent('AdverseEventPt Filtering', 'icon-button:edit-advanced-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n 'g-search-hash': this.searchTermHash.toString()\n }\n };\n\n this.router.navigate(['/advanced-search'], navigationExtras);\n }\n\n getSubstanceBySubstanceKey(): void {\n // let bdnumName: any;\n // let relationship: any;\n // let substanceId: string;\n\n /*\n this.adverseEventPt.forEach((element, index) => {\n\n element.applicationProductList.forEach((elementProd, indexProd) => {\n\n // Sort Product Name by create date descending\n elementProd.applicationProductNameList.sort((a, b) => {\n return new Date(b.createDate) - new Date(a.createDate);\n });\n\n elementProd.applicationIngredientList.forEach((elementIngred, indexIngred) => {\n if (elementIngred.substanceKey != null) {\n\n const substanceSubscription = this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(response => {\n if (response) {\n // Get Substance Details, uuid, approval_id, substance name\n if (elementIngred.substanceKey) {\n this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(responseInactive => {\n if (responseInactive) {\n elementIngred._substanceUuid = responseInactive.uuid;\n elementIngred._ingredientName = responseInactive._name;\n }\n });\n }\n\n // Get Active Moiety - Relationship\n\n }\n });\n this.subscriptions.push(substanceSubscription);\n }\n }); // Ingredient forEach\n\n }); // Product forEach\n\n }); // Application forEach\n */\n }\n\n restricSearh(searchTerm: string): void {\n this.privateSearchTerm = searchTerm;\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n this.populateUrlQueryParameters();\n this.searchAdverseEventDme();\n // this.substanceTextSearchService.setSearchValue('main-substance-search', this.privateSearchTerm);\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n // if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'browseAdverseEventDme' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalAdverseEventDme\n }\n };\n const params = { 'total': this.totalAdverseEventDme };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n // }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlDme(etag, extension);\n }\n\n processSubstanceSearch(searchValue: string) {\n this.privateSearchTerm = searchValue;\n this.setSearchTermValue();\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n}\n","\n\n \n \n \n \n\n \n \n
    \n\n \n
    0; else filterParameters\">\n
    \n
    \n
    \n Would you like to restrict this search to a field?\n
     \n \n \n \n \n
    \n
    \n
    \n {{matchType == 'WORD' ? 'Contains Match' : 'Exact Match'}}\n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n For more options use the Advanced Search\n
    \n
    \n
    \n \n\n \n
    \n\n
    \n
    \n Search Query: \n {{searchTerm}}\n
    \n
    \n \n \n
    \n
    \n\n \n
    \n
    \n \n \n {{facet.type}}:\n \n \n {{facet.val}}\n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n \n
    \n\n
    \n Browse Adverse Event CVM\n
    \n\n \n \n \n \n \n \n \n \n \n\n \n \n \n
    \n \n
    \n\n
    \n \n
    \n \n \n\n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n\n
    \n\n
    \n \n \n \n\n \n \n
    \n\n\n \n
    \n\n \n
    \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n
    Adverse Event {{adverse.adverseEvent}} Species {{adverse.species}} Ingredient Name \n \n {{adverse.name}}\n \n Adverse Event Count {{adverse.aeCount}} Route of Administration {{adverse.routeOfAdmin}}
    \n
    \n\n\n \n
    \n \n \n
    \n Adverse Event: \n {{adverseEventCvm.adverseEvent}}\n
    \n
    \n
    \n
    \n
    \n
    \n\n \n\n
    \n
    \n
    \n Ingredient Name:\n
    \n \n
    \n\n
    \n
    \n Substance Key:\n
    \n
    \n {{adverseEventCvm.substanceKey}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Species:\n
    \n
    \n {{adverseEventCvm.species}}\n
    \n
    \n\n
    \n
    \n Route of Administration:\n
    \n
    \n {{adverseEventCvm.name}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n Adverse Event Count:\n
    \n
    \n {{adverseEventCvm.aeCount}}\n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n \n\n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n
    \n\n \n \n \n\n
    \n
    \n
    ","import { Component, OnInit, AfterViewInit, OnDestroy, Output, EventEmitter, HostListener } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Location, LocationStrategy } from '@angular/common';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { Title } from '@angular/platform-browser';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport * as _ from 'lodash';\nimport { Sort } from '@angular/material/sort';\nimport { Facet, FacetsManagerService, FacetUpdateEvent } from '@gsrs-core/facets-manager';\nimport { LoadingService } from '@gsrs-core/loading';\nimport { MainNotificationService } from '@gsrs-core/main-notification';\nimport { AppNotification, NotificationType } from '@gsrs-core/main-notification';\nimport { ConfigService } from '@gsrs-core/config';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { GoogleAnalyticsService } from '../../../../app/core/google-analytics/google-analytics.service';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { NarrowSearchSuggestion } from '@gsrs-core/utils';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\nimport { environment } from '../../../../environments/environment';\n// import { adverseEventSearchSortValues } from './application-search-sort-values';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { AdverseEventService } from '../service/adverseevent.service';\nimport { GeneralService } from '../../service/general.service';\nimport { AdverseEventCvm } from '../model/adverse-event.model';\nimport { adverseEventCvmSearchSortValues } from './adverse-events-cvm-search-sort-values';\n\n@Component({\n selector: 'app-adverse-events-cvm-browse',\n templateUrl: './adverse-events-cvm-browse.component.html',\n styleUrls: ['./adverse-events-cvm-browse.component.scss']\n})\n\nexport class AdverseEventsCvmBrowseComponent implements OnInit, AfterViewInit, OnDestroy {\n @Output() countAdverseEventCvmOut: EventEmitter = new EventEmitter();\n isAdmin: boolean;\n isLoggedIn = false;\n isLoading = true;\n isError = false;\n invalidPage = false;\n private isComponentInit = false;\n privateExport = false;\n isSearchEditable = false;\n environment: any;\n narrowSearchSuggestions?: { [matchType: string]: Array } = {};\n matchTypes?: Array = [];\n narrowSearchSuggestionsCount = 0;\n searchValue: string;\n previousState: Array = [];\n private overlayContainer: HTMLElement;\n\n // needed for facets\n ascDescDir = 'desc';\n private isFacetsParamsInit = false;\n private privateFacetParams: FacetParam;\n rawFacets: Array;\n private searchTermHash: number;\n public displayFacets: Array = [];\n private subscriptions: Array = [];\n\n view = 'table';\n order = '$root_aeCount';\n etag = '';\n totalAdverseEventCvm = 0;\n pageIndex: number;\n pageSize: number;\n lastPage: number;\n public sortValues = adverseEventCvmSearchSortValues;\n public privateSearchTerm?: string;\n public adverseEventCvm: Array;\n displayedColumns: string[] = [\n 'adverseEvent',\n 'species',\n 'ingredientName',\n 'adverseEventCount',\n 'routeOfAdmin'\n ];\n\n constructor(\n public adverseEventService: AdverseEventService,\n public generalService: GeneralService,\n private activatedRoute: ActivatedRoute,\n private location: Location,\n private locationStrategy: LocationStrategy,\n private router: Router,\n private sanitizer: DomSanitizer,\n public gaService: GoogleAnalyticsService,\n public configService: ConfigService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n private authService: AuthService,\n private overlayContainerService: OverlayContainer,\n private facetManagerService: FacetsManagerService,\n private utilsService: UtilsService,\n private dialog: MatDialog,\n private titleService: Title\n ) { }\n\n @HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if (this.router.url === this.previousState[0]) {\n this.ngOnInit();\n }\n }, 50);\n }\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventCvmFacets);\n // this.gaService.sendPageView('Browse Adverse Event Cvm');\n\n this.titleService.setTitle(`AE:Browse Adverse Events`);\n\n this.pageSize = 10;\n this.pageIndex = 0;\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n this.privateSearchTerm = this.activatedRoute.snapshot.queryParams['search'] || '';\n\n if (this.privateSearchTerm) {\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n }\n\n this.order = this.activatedRoute.snapshot.queryParams['order'] || '$root_aeCount';\n this.pageSize = parseInt(this.activatedRoute.snapshot.queryParams['pageSize'], null) || 10;\n this.pageIndex = parseInt(this.activatedRoute.snapshot.queryParams['pageIndex'], null) || 0;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.isLoggedIn = true;\n }\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\n });\n this.subscriptions.push(authSubscription);\n\n this.isComponentInit = true;\n this.loadComponent();\n\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n private loadComponent(): void {\n if (this.isFacetsParamsInit && this.isComponentInit) {\n this.searchAdverseEventCvm();\n }\n }\n\n searchAdverseEventCvm() {\n this.loadingService.setLoading(true);\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.adverseEventService.getAdverseEventCvm(\n this.order,\n skip,\n this.pageSize,\n this.privateSearchTerm,\n this.privateFacetParams,\n )\n .subscribe(pagingResponse => {\n this.isError = false;\n\n this.adverseEventCvm = pagingResponse.content;\n // didn't work unless I did it like this instead of\n // below export statement\n // this.dataSource = this.adverseEventCvm;\n this.totalAdverseEventCvm = pagingResponse.total;\n this.countAdverseEventCvmOut.emit(pagingResponse.total);\n this.etag = pagingResponse.etag;\n\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n\n // Narrow Suggest Search Begin\n this.narrowSearchSuggestions = {};\n this.matchTypes = [];\n this.narrowSearchSuggestionsCount = 0;\n if (pagingResponse.narrowSearchSuggestions && pagingResponse.narrowSearchSuggestions.length) {\n pagingResponse.narrowSearchSuggestions.forEach(suggestion => {\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n });\n }\n this.matchTypes.sort();\n // Narrow Suggest Search End\n\n // this.getSubstanceBySubstanceKey();\n // this.applicationService.getClinicalTrialApplication(this.applications);\n }, error => {\n console.log('error');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve Adverse Event CVM. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n subscription.unsubscribe();\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n setSearchTermValue() {\n this.pageSize = 10;\n this.pageIndex = 0;\n this.searchAdverseEventCvm();\n }\n\n clearSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n this.gaService.sendEvent('adverseEventFiltering', 'icon-button:clear-search', eventLabel);\n\n this.privateSearchTerm = '';\n this.pageIndex = 0;\n this.pageSize = 10;\n\n this.populateUrlQueryParameters();\n this.searchAdverseEventCvm();\n }\n\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n this.clearSearch();\n\n this.facetManagerService.clearSelections();\n }\n\n populateUrlQueryParameters(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n navigationExtras.queryParams['searchTerm'] = this.privateSearchTerm;\n navigationExtras.queryParams['pageSize'] = this.pageSize;\n navigationExtras.queryParams['pageIndex'] = this.pageIndex;\n navigationExtras.queryParams['skip'] = this.pageIndex * this.pageSize;\n\n this.previousState.push(this.router.url);\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n get searchTerm(): string {\n return this.privateSearchTerm;\n }\n\n sortData(sort: Sort) {\n if (sort.active) {\n const orderIndex = this.displayedColumns.indexOf(sort.active).toString();\n this.ascDescDir = sort.direction;\n this.sortValues.forEach(sortValue => {\n if (sortValue.displayedColumns && sortValue.direction) {\n if (this.displayedColumns[orderIndex] === sortValue.displayedColumns && this.ascDescDir === sortValue.direction) {\n this.order = sortValue.value;\n }\n }\n });\n // Search Adverse Event\n this.searchAdverseEventCvm();\n }\n return;\n }\n\n updateView(event): void {\n // this.gaService.sendEvent('adverseeventptsContent', 'button:view-update', event.value);\n this.view = event.value;\n }\n\n changePage(pageEvent: PageEvent) {\n\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.pageIndex !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent('applicationsContent', eventAction, 'pager', eventValue);\n\n this.pageSize = pageEvent.pageSize;\n this.pageIndex = pageEvent.pageIndex;\n this.populateUrlQueryParameters();\n this.searchAdverseEventCvm();\n }\n\n customPage(event: any): void {\n if (this.validatePageInput(event)) {\n this.invalidPage = false;\n const newpage = Number(event.target.value) - 1;\n this.pageIndex = newpage;\n this.gaService.sendEvent('adverseEventPtContent', 'select:page-number', 'pager', newpage);\n this.populateUrlQueryParameters();\n this.searchAdverseEventCvm();\n }\n }\n\n validatePageInput(event: any): boolean {\n if (event && event.target) {\n const newpage = Number(event.target.value);\n if (!isNaN(Number(newpage))) {\n if ((Number.isInteger(newpage)) && (newpage <= this.lastPage) && (newpage > 0)) {\n return true;\n }\n }\n }\n return false;\n }\n\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n this.pageIndex = 0;\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.displayFacets = facetsUpdateEvent.displayFacets;\n if (!this.isFacetsParamsInit) {\n this.isFacetsParamsInit = true;\n this.loadComponent();\n } else {\n this.searchAdverseEventCvm();\n }\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n }\n\n editAdvancedSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'Browse Application search term' :\n `${this.privateSearchTerm}`;\n this.gaService.sendEvent('AdverseEventPt Filtering', 'icon-button:edit-advanced-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n 'g-search-hash': this.searchTermHash.toString()\n }\n };\n\n this.router.navigate(['/advanced-search'], navigationExtras);\n }\n\n getSubstanceBySubstanceKey(): void {\n // let bdnumName: any;\n // let relationship: any;\n // let substanceId: string;\n\n /*\n this.adverseEventPt.forEach((element, index) => {\n\n element.applicationProductList.forEach((elementProd, indexProd) => {\n\n // Sort Product Name by create date descending\n elementProd.applicationProductNameList.sort((a, b) => {\n return new Date(b.createDate) - new Date(a.createDate);\n });\n\n elementProd.applicationIngredientList.forEach((elementIngred, indexIngred) => {\n if (elementIngred.substanceKey != null) {\n\n const substanceSubscription = this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(response => {\n if (response) {\n // Get Substance Details, uuid, approval_id, substance name\n if (elementIngred.substanceKey) {\n this.generalService.getSubstanceByAnyId(elementIngred.substanceKey).subscribe(responseInactive => {\n if (responseInactive) {\n elementIngred._substanceUuid = responseInactive.uuid;\n elementIngred._ingredientName = responseInactive._name;\n }\n });\n }\n\n // Get Active Moiety - Relationship\n\n }\n });\n this.subscriptions.push(substanceSubscription);\n }\n }); // Ingredient forEach\n\n }); // Product forEach\n\n }); // Application forEach\n */\n }\n\n restricSearh(searchTerm: string): void {\n this.privateSearchTerm = searchTerm;\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n this.populateUrlQueryParameters();\n this.searchAdverseEventCvm();\n // this.substanceTextSearchService.setSearchValue('main-substance-search', this.privateSearchTerm);\n }\n\n export() {\n if (this.etag) {\n const extension = 'xlsx';\n const url = this.getApiExportUrl(this.etag, extension);\n // if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension, 'type': 'browseAdverseEventCvm' }\n });\n // this.overlayContainer.style.zIndex = '1002';\n dialogReference.afterClosed().subscribe(name => {\n // this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalAdverseEventCvm\n }\n };\n const params = { 'total': this.totalAdverseEventCvm };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n // }\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n return this.adverseEventService.getApiExportUrlCvm(etag, extension);\n }\n\n processSubstanceSearch(searchValue: string) {\n this.privateSearchTerm = searchValue;\n this.setSearchTermValue();\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n}\n","




    \n\n\n \n \n
    Adverse Event PT\n
    \n ({{adverseEventPtCount}})\n
    \n
    \n
    \n \n \n
    \n\n \n \n
    Adverse Event DME\n
    \n ({{adverseEventDmeCount}})\n
    \n
    \n
    \n \n \n
    \n\n \n \n
    Adverse Event CVM\n
    \n ({{adverseEventCvmCount}})\n
    \n
    \n
    \n \n \n
    \n\n
    ","import { Component, OnInit, AfterViewInit } from '@angular/core';\nimport { MatTabChangeEvent } from '@angular/material/tabs';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Facet, FacetsManagerService, FacetUpdateEvent } from '@gsrs-core/facets-manager';\nimport { AdverseEventService } from '../service/adverseevent.service';\n\n@Component({\n selector: 'app-adverse-events-browse',\n templateUrl: './adverse-events-browse.component.html',\n styleUrls: ['./adverse-events-browse.component.scss']\n})\nexport class AdverseEventsBrowseComponent implements OnInit, AfterViewInit {\n adverseEventPtCount = 0;\n adverseEventDmeCount = 0;\n adverseEventCvmCount = 0;\n tabSelectedIndex = 0;\n category = 'Adverse Event PT';\n\n constructor(\n public adverseEventService: AdverseEventService,\n private facetManagerService: FacetsManagerService) { }\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets);\n }\n\n ngAfterViewInit() {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets);\n }\n\n tabSelectedUpdated(event: MatTabChangeEvent) {\n if (event) {\n this.category = event.tab.textLabel;\n\n this.setFacetsforTabs();\n }\n }\n\n setFacetsforTabs() {\n if (this.category) {\n if (this.category === 'Adverse Event PT') {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventPtFacets);\n }\n if (this.category === 'Adverse Event DME') {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventDmeFacets);\n }\n if (this.category === 'Adverse Event CVM') {\n this.facetManagerService.registerGetFacetsHandler(this.adverseEventService.getAdverseEventCvmFacets);\n }\n }\n }\n\n getAdverseEventPtCount($event: any) {\n this.adverseEventPtCount = $event;\n if (this.adverseEventPtCount > 0) {\n this.tabSelectedIndex = 0;\n }\n }\n\n getAdverseEventDmeCount($event: any) {\n this.adverseEventDmeCount = $event;\n // if PT and CVM counts are 0, and DME count is greater than 0, set the tab to DME\n if (((this.adverseEventPtCount == 0) && (this.adverseEventCvmCount == 0)) && (this.adverseEventDmeCount > 0)) {\n this.tabSelectedIndex = 1;\n }\n }\n\n getAdverseEventCvmCount($event: any) {\n this.adverseEventCvmCount = $event;\n // if PT and DME counts are 0, and CVM count is greater than 0, set the tab to CVM\n if (((this.adverseEventPtCount == 0) && (this.adverseEventDmeCount == 0)) && (this.adverseEventCvmCount > 0)) {\n this.tabSelectedIndex = 2;\n }\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, Router, ActivatedRouteSnapshot, NavigationExtras, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { ConfigService } from '@gsrs-core/config';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ActivateAdverseeventsComponent implements CanActivate {\n constructor(\n private configService: ConfigService,\n private router: Router\n ) {}\n canActivate( route: ActivatedRouteSnapshot, state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n const loadedComponents = this.configService.configData.loadedComponents || null;\n if (loadedComponents && loadedComponents.adverseevents) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Router, Routes, RouterModule } from '@angular/router';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatListModule } from '@angular/material/list';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\nimport { SubstanceSearchSelectorModule } from '../substance-search-select/substance-search-selector.module';\nimport { FacetsManagerModule } from '@gsrs-core/facets-manager';\nimport { SubstanceFormModule } from '../../core/substance-form/substance-form.module';\nimport { AdverseEventTextSearchModule } from './adverse-event-text-search/adverse-event-text-search.module';\nimport { AdverseEventService } from './service/adverseevent.service';\nimport { AdverseEventsPtBrowseComponent } from './adverse-events-pt-browse/adverse-events-pt-browse.component';\nimport { AdverseEventsDmeBrowseComponent } from './adverse-events-dme-browse/adverse-events-dme-browse.component';\nimport { AdverseEventsCvmBrowseComponent } from './adverse-events-cvm-browse/adverse-events-cvm-browse.component';\nimport { AdverseEventsBrowseComponent } from './adverse-events-browse/adverse-events-browse.component';\nimport { ActivateAdverseeventsComponent } from './activate-adverse-events.component';\n\nconst advEventRoutes: Routes = [\n {\n path: 'browse-adverse-events',\n component: AdverseEventsBrowseComponent,\n canActivate: [ActivateAdverseeventsComponent]\n },\n {\n path: 'adverse-event-pt-browse',\n component: AdverseEventsPtBrowseComponent,\n canActivate: [ActivateAdverseeventsComponent]\n },\n {\n path: 'adverse-event-dme-browse',\n component: AdverseEventsDmeBrowseComponent,\n canActivate: [ActivateAdverseeventsComponent]\n },\n {\n path: 'adverse-event-cvm-browse',\n component: AdverseEventsCvmBrowseComponent,\n canActivate: [ActivateAdverseeventsComponent]\n }\n];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule.forChild(advEventRoutes),\n MatToolbarModule,\n MatSidenavModule,\n MatCardModule,\n MatAutocompleteModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule,\n MatIconModule,\n MatChipsModule,\n MatBadgeModule,\n MatExpansionModule,\n MatCheckboxModule,\n MatTableModule,\n MatSortModule,\n MatPaginatorModule,\n MatSelectModule,\n MatSliderModule,\n MatDialogModule,\n MatListModule,\n MatMenuModule,\n MatButtonToggleModule,\n MatTooltipModule,\n MatTabsModule,\n MatBottomSheetModule,\n // MatProgressSpinnerModule,\n FormsModule,\n ReactiveFormsModule,\n OverlayModule,\n SubstanceSearchSelectorModule,\n SubstanceFormModule,\n FacetsManagerModule,\n AdverseEventTextSearchModule\n ],\n declarations: [\n AdverseEventsPtBrowseComponent,\n AdverseEventsDmeBrowseComponent,\n AdverseEventsCvmBrowseComponent,\n AdverseEventsBrowseComponent,\n AdverseEventsBrowseComponent\n ],\n exports: [\n ],\n providers: [\n ActivateAdverseeventsComponent\n ]\n})\n\nexport class AdverseEventsBrowseModule {\n constructor(router: Router) {\n advEventRoutes.forEach(route => {\n router.config[0].children.push(route);\n });\n }\n\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: AdverseEventsBrowseModule,\n providers: [\n AdverseEventService,\n ActivateAdverseeventsComponent\n ]\n };\n }\n}\n","import { NgModule, ModuleWithProviders, APP_INITIALIZER } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Routes, RouterModule } from '@angular/router';\nimport { Router } from '@angular/router';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { DynamicComponentLoaderModule } from '@gsrs-core/dynamic-component-loader';\n// eslint-disable-next-line max-len\nimport { fdaLazyLoadedComponentManifests, fdaDynamicSubSummaryComponentManifests, fdaDynamicBrowseComponentManifests } from './fda-dynamic-componet-manifests';\nimport { SubstanceCardsModule } from '@gsrs-core/substance-details';\nimport { ApplicationModule} from './application/application.module';\nimport { SubstanceApplicationMatchListModule } from './substance-browse/substance-application-match-list/substance-application-match-list.module';\nimport { ProductModule} from './product/product.module';\nimport { ClinicalTrialsModule } from './clinical-trials/clinical-trials.module';\nimport { UserManualModule } from './user-manual/user-manual.module';\nimport { JiraSubmitTicketModule } from './jira-submit-ticket/jira-submit-ticket.module';\nimport { SubstanceCountsComponent } from './substance-browse/substance-counts/substance-counts.component';\nimport { SubstanceApplicationMatchListComponent} from './substance-browse/substance-application-match-list/substance-application-match-list.component';\nimport { ApplicationsBrowseComponent } from './application/applications-browse/applications-browse.component';\nimport { ClinicalTrialsBrowseComponent } from './clinical-trials/clinical-trials-browse/clinical-trials-browse.component';\nimport { fdaSubstanceCardsFilters } from './substance-details/fda-substance-cards-filters.constant';\nimport { SsoRefreshService } from './service/sso-refresh.service';\nimport { ProductService } from './product/service/product.service';\nimport { GeneralService} from './service/general.service';\nimport { ShowApplicationToggleComponent } from './substance-browse/show-application-toggle/show-application-toggle.component';\nimport { JiraSubmitTicketComponent } from './jira-submit-ticket/jira-submit-ticket.component';\nimport { UserManualComponent } from './user-manual/user-manual.component';\nimport { ImpuritiesModule } from '../fda/impurities/impurities.module';\nimport { AdvancedSearchModule } from '../fda/advanced-search/advanced-search.module';\nimport { AdverseEventsBrowseModule } from '../fda/adverse-event/adverse-events-browse.module';\n\nconst fdaRoutes: Routes = [\n {\n path: 'browse-clinical-trial',\n component: ClinicalTrialsBrowseComponent\n },\n {\n path: 'sub-app-match-list/:id',\n component: SubstanceApplicationMatchListComponent\n },\n {\n path: 'user-manual',\n component: UserManualComponent\n },\n {\n path: 'jira-submit',\n component: JiraSubmitTicketComponent\n }\n];\n\nexport function init_sso_refresh_service(ssoService: SsoRefreshService) {\n return() => {\n ssoService.init();\n };\n}\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule.forChild(fdaRoutes),\n DynamicComponentLoaderModule.forRoot(fdaLazyLoadedComponentManifests, fdaDynamicSubSummaryComponentManifests),\n DynamicComponentLoaderModule.forRoot(fdaLazyLoadedComponentManifests, fdaDynamicBrowseComponentManifests),\n SubstanceCardsModule.forRoot(fdaSubstanceCardsFilters),\n ClinicalTrialsModule.forRoot(),\n ApplicationModule,\n ProductModule,\n ImpuritiesModule,\n AdvancedSearchModule,\n AdverseEventsBrowseModule,\n SubstanceApplicationMatchListModule,\n UserManualModule,\n JiraSubmitTicketModule,\n MatCardModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatExpansionModule,\n MatProgressSpinnerModule,\n MatTableModule,\n MatBadgeModule,\n MatCheckboxModule\n ],\n declarations: [\n SubstanceCountsComponent,\n ShowApplicationToggleComponent\n ],\n exports: [],\n entryComponents: [\n SubstanceCountsComponent,\n ShowApplicationToggleComponent\n\n ],\n providers: [\n SsoRefreshService,\n {\n provide: APP_INITIALIZER,\n useFactory: init_sso_refresh_service,\n deps: [SsoRefreshService],\n multi: true\n }\n ]\n})\nexport class FdaModule {\n constructor(\n router: Router\n ) {\n fdaRoutes.forEach(route => {\n router.config[0].children.push(route);\n });\n }\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: FdaModule,\n providers: [\n ProductService,\n GeneralService\n ]\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { map, switchMap } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { PagingResponse } from '@gsrs-core/utils';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { Facet } from '@gsrs-core/facets-manager';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport {\n Impurities, ImpuritiesSubstance, ImpuritiesDetails, ImpuritiesTesting,\n ImpuritiesUnspecified, ImpuritiesResidualSolvents, ImpuritiesInorganic, ImpuritiesTotal, ValidationResults, IdentityCriteria\n} from '../model/impurities.model';\n\n@Injectable(\n {\n providedIn: 'root',\n }\n)\n\nexport class ImpuritiesService extends BaseHttpService {\n\n private _bypassUpdateCheck = false;\n private impuritiesStateHash?: number;\n totalRecords: 0;\n impurities: Impurities;\n\n apiBaseUrlWithEntityContext = this.configService.configData.apiBaseUrl + 'api/v1/impurities' + '/';\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService,\n public utilsService: UtilsService\n ) {\n super(configService);\n }\n\n get isImpuritiesUpdated(): boolean {\n const impuritiestring = JSON.stringify(this.impurities);\n if (this._bypassUpdateCheck) {\n this._bypassUpdateCheck = false;\n return false;\n } else {\n return this.impuritiesStateHash !== this.utilsService.hashCode(impuritiestring);\n }\n }\n\n bypassUpdateCheck(): void {\n this._bypassUpdateCheck = true;\n }\n\n getImpuritiesBySubstanceUuid(substanceUuid: string): Observable {\n const query = 'search?q=root_impuritiesSubstanceList_substanceUuid:\\\"' + substanceUuid + '\"' +\n ' OR root_impuritiesSubstanceList_impuritiesTestList_impuritiesDetailsList_relatedSubstanceUuid:\\\"' + substanceUuid + '\"';\n const url = this.apiBaseUrlWithEntityContext + query;\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n getImpuritiesByTestImpuritiesDetails(relatedSubstanceUuid: string): Observable {\n const url = this.apiBaseUrlWithEntityContext + 'search?root_impuritiesSubstanceList_impuritiesTestList_impuritiesDetailsList_relatedSubstanceUuid:\\\"' + relatedSubstanceUuid + '\"';\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n searchImpurities(\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n const url = this.apiBaseUrlWithEntityContext + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n const url = this.apiBaseUrlWithEntityContext + 'export/' + etag + '/' + extension;\n return url;\n }\n\n loadImpurities(impurities?: Impurities): void {\n // if Update/Exist Impurity\n if (impurities != null) {\n this.impurities = impurities;\n } else {\n this.impurities = {\n impuritiesSubstanceList: [],\n impuritiesTotal: {}\n };\n }\n }\n\n getImpurities(id: string): Observable {\n const url = this.apiBaseUrlWithEntityContext + `${id}`;\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n saveImpurities(): Observable {\n const url = this.apiBaseUrl + `impurities`;\n const params = new HttpParams();\n const options = {\n params: params,\n type: 'JSON',\n headers: {\n 'Content-type': 'application/json'\n }\n };\n // Update Impurity\n if ((this.impurities != null) && (this.impurities.id)) {\n return this.http.put(url, this.impurities, options);\n } else {\n // Save New Impurities\n return this.http.post(url, this.impurities, options);\n }\n }\n\n validateImpurities(): Observable {\n return new Observable(observer => {\n this.validateImpur().subscribe(results => {\n observer.next(results);\n observer.complete();\n }, error => {\n observer.error();\n observer.complete();\n });\n });\n }\n\n validateImpur(): Observable {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/impurities/@validate`;\n return this.http.post(url, this.impurities);\n }\n\n getJson() {\n return this.impurities;\n }\n\n addNewImpuritiesSubstance(): void {\n const newSubstance: ImpuritiesSubstance = { impuritiesTestList: [], impuritiesResidualSolventsList: [], impuritiesInorganicList: [] };\n this.impurities.impuritiesSubstanceList.unshift(newSubstance);\n }\n\n addNewTest(impuritiesSubstanceIndex: number): void {\n const newTest: ImpuritiesTesting = { impuritiesDetailsList: [], impuritiesUnspecifiedList: [] };\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesTestList.unshift(newTest);\n }\n\n addNewImpuritiesDetails(impuritiesSubstanceIndex: number, impuritiesTestIndex: number, impuritiesDetails: ImpuritiesDetails): void {\n // const newImpuritiesDetails: ImpuritiesDetails = { identityCriteriaList: [] };\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex]\n .impuritiesTestList[impuritiesTestIndex]\n .impuritiesDetailsList.unshift(impuritiesDetails);\n }\n\n addNewImpuritiesUnspecified(impuritiesSubstanceIndex: number, impuritiesTestIndex: number): void {\n const newImpuritiesUnspec: ImpuritiesUnspecified = { identityCriteriaList: [] };\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesTestList[impuritiesTestIndex]\n .impuritiesUnspecifiedList.unshift(newImpuritiesUnspec);\n }\n\n addNewIdentityCriteriaUnspecified(impuritiesSubstanceIndex: number, impuritiesTestIndex, impuritiesUnspecifiedIndex: number) {\n const newIdentityCriteria: IdentityCriteria = {};\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesTestList[impuritiesTestIndex]\n .impuritiesUnspecifiedList[impuritiesUnspecifiedIndex].identityCriteriaList.unshift(newIdentityCriteria);\n }\n\n addNewImpuritiesResidualSolvents(impuritiesSubstanceIndex: number): void {\n const newImpuritiesResidual: ImpuritiesResidualSolvents = {};\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesResidualSolventsList.unshift(newImpuritiesResidual);\n }\n\n addNewImpuritiesInorganic(impuritiesSubstanceIndex: number): void {\n const newImpuritiesInorganic: ImpuritiesInorganic = {};\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesInorganicList.unshift(newImpuritiesInorganic);\n }\n\n addNewImpuritiesTotal(): void {\n const newImpuritiesTotal: ImpuritiesTotal = {};\n // this.impurities.impuritiesTotalList.unshift(newImpuritiesTotal);\n }\n\n deleteImpurities(): Observable {\n const url = this.apiBaseUrlWithEntityContext + this.impurities.id;\n const params = new HttpParams();\n const options = {\n params: params\n };\n const x = this.http.delete(url, options);\n return x;\n }\n\n deleteImpuritiesSubstance(impuritiesSubstanceIndex: number): void {\n this.impurities.impuritiesSubstanceList.splice(impuritiesSubstanceIndex, 1);\n }\n\n deleteImpuritiesTest(impuritiesSubstanceIndex: number, impuritiesTestIndex: number): void {\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesTestList.splice(impuritiesTestIndex, 1);\n }\n\n deleteImpuritiesDetails(impuritiesSubstanceIndex: number, impuritiesTestIndex: number, impuritiesDetailsIndex: number): void {\n this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesTestList[impuritiesTestIndex]\n .impuritiesDetailsList.splice(impuritiesDetailsIndex, 1);\n }\n\n deleteIdentityCriteria(impuritiesSubstanceIndex: number, impuritiesTestIndex: number,\n impuritiesDetailsIndex: number, identityCriteriaIndex: number): void {\n const impuritiesTest = this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesTestList[impuritiesTestIndex];\n impuritiesTest.impuritiesDetailsList[impuritiesDetailsIndex].identityCriteriaList.splice(identityCriteriaIndex, 1);\n }\n\n deleteImpuritiesUnspecified(impuritiesSubstanceIndex: number, impuritiesTestIndex: number, impuritiesUnspecifiedIndex: number): void {\n const impuritiesTest = this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex]\n .impuritiesTestList[impuritiesTestIndex];\n impuritiesTest.impuritiesUnspecifiedList.splice(impuritiesUnspecifiedIndex, 1);\n }\n\n deleteIdentityCriteriaUnspecified(impuritiesSubstanceIndex: number, impuritiesTestIndex: number,\n impuritiesUnspecifiedIndex: number, identityCriteriaIndex: number): void {\n const impuritiesTest = this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex].impuritiesTestList[impuritiesTestIndex];\n impuritiesTest.impuritiesUnspecifiedList[impuritiesUnspecifiedIndex].identityCriteriaList.splice(identityCriteriaIndex, 1);\n }\n\n deleteImpuritiesResidualSolvents(impuritiesSubstanceIndex: number, impuritiesResidualIndex: number): void {\n const impuritiesSub = this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex];\n impuritiesSub.impuritiesResidualSolventsList.splice(impuritiesResidualIndex, 1);\n }\n\n deleteImpuritiesInorganic(impuritiesSubstanceIndex: number, impuritiesInorganicIndex: number): void {\n const impuritiesSub = this.impurities.impuritiesSubstanceList[impuritiesSubstanceIndex];\n impuritiesSub.impuritiesInorganicList.splice(impuritiesInorganicIndex, 1);\n }\n\n getSubstanceImpurities(\n substanceUuid: string, page: number, pageSize: number\n ): Observable> {\n\n const func = this.baseUrl + 'impuritiesListBySubstanceUuid?substanceUuid=';\n const url = func + substanceUuid + '&page=' + (page + 1) + '&pageSize=' + pageSize;\n\n return this.http.get>(url).pipe(\n map(results => {\n this.totalRecords = results['totalRecords'];\n return results['data'];\n })\n );\n }\n\n getRelationshipImpurity(\n substanceId: string\n ): Observable {\n const url = this.apiBaseUrlWithEntityContext + 'subRelationship/' + substanceId;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getSubstanceDetailsBySubstanceId(\n substanceId: string\n ): Observable {\n const url = this.baseUrl + 'getSubstanceDetailsBySubstanceId?substanceId=' + substanceId;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getImpuritiesListExportUrl(substanceId: string): string {\n return this.baseUrl + 'impuritiesListExport?substanceId=' + substanceId;\n }\n\n} // class\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { Observable, } from 'rxjs';\nimport { map, switchMap, tap } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { PagingResponse } from '@gsrs-core/utils';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { Facet } from '@gsrs-core/facets-manager';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport { Product, ProductName, ProductTermAndPart, ProductCode, ProductAll } from '../model/product.model';\nimport { ProductCompany, ProductComponent, ProductLot, ProductIngredient } from '../model/product.model';\nimport { ValidationResults } from '../model/product.model';\nimport { SubstanceSuggestionsGroup } from '@gsrs-core/utils/substance-suggestions-group.model';\n\n@Injectable()\nexport class ProductService extends BaseHttpService {\n\n private _bypassUpdateCheck = false;\n private productStateHash?: number;\n totalRecords = 0;\n product: Product;\n\n apiBaseUrlWithProductEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/products' + '/';\n apiBaseUrlWithProductBrowseEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/productsall' + '/';\n apiBaseUrlWithProductElistEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/productselist' + '/';\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService,\n public utilsService: UtilsService\n ) {\n super(configService);\n }\n\n getProducts(\n order: string,\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n if (order != null && order !== '') {\n params = params.append('order', order);\n }\n\n const url = this.apiBaseUrlWithProductBrowseEntityUrl + 'search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n getProductFacets(facet: Facet, searchTerm?: string, nextUrl?: string): Observable {\n let url: string;\n if (searchTerm) {\n url = `${this.configService.configData.apiBaseUrl}api/v1/productsall/search/@facets?wait=false&kind=gov.hhs.gsrs.products.productall.models.ProductMainAll&skip=0&fdim=200&sideway=true&field=${facet.name.replace(' ', '+')}&top=14448&fskip=0&fetch=100&termfilter=SubstanceDeprecated%3Afalse&order=%24lastEdited&ffilter=${searchTerm}`;\n } else if (nextUrl != null) {\n url = nextUrl;\n } else {\n url = facet._self;\n }\n return this.http.get(url);\n }\n\n filterFacets(name: string, category: string): Observable {\n const url = this.apiBaseUrlWithProductBrowseEntityUrl + `search/@facets?wait=false&kind=gov.hhs.gsrs.products.productall.models.ProductMainAll&skip=0&fdim=200&sideway=true&field=${category}&top=14448&fskip=0&fetch=100&order=%24lastUpdated&ffilter=${name}`;\n return this.http.get(url);\n }\n\n retrieveFacetValues(facet: Facet): Observable {\n const url = facet._self;\n return this.http.get(url);\n }\n\n retrieveNextFacetValues(facet: Facet): Observable {\n const url = facet._self;\n if (!facet.$next) {\n return this.http.get(url).pipe(\n switchMap(response => {\n if (response) {\n const next = response.nextPageUri;\n return this.http.get(next);\n } else {\n return 'nada';\n }\n }));\n } else {\n return this.http.get(facet.$next);\n }\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n // const url = `${this.configService.configData.apiBaseUrl}api/v1/productmainall/export/${etag}/${extension}`;\n const url = this.apiBaseUrlWithProductBrowseEntityUrl + `export/${etag}/${extension}`;\n return url;\n }\n\n getProductSearchSuggestions(searchTerm: string): Observable {\n return this.http.get(this.apiBaseUrlWithProductBrowseEntityUrl + 'suggest?q=' + searchTerm);\n }\n\n getProductProvenanceList(\n substanceUuid: string\n ): Observable {\n const url = this.apiBaseUrlWithProductBrowseEntityUrl + 'distprovenance/' + substanceUuid;\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n getProductElist(\n productId: string\n ): Observable {\n const url = this.apiBaseUrlWithProductElistEntityUrl + productId;\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n get isProductUpdated(): boolean {\n const productString = JSON.stringify(this.product);\n if (this._bypassUpdateCheck) {\n this._bypassUpdateCheck = false;\n return false;\n } else {\n return this.productStateHash !== this.utilsService.hashCode(productString);\n }\n }\n\n bypassUpdateCheck(): void {\n this._bypassUpdateCheck = true;\n }\n\n getProduct(productId: string): Observable {\n const url = this.apiBaseUrlWithProductEntityUrl + productId;\n return this.http.get(url)\n .pipe(\n map(result => {\n return result;\n })\n );\n }\n\n getViewProductUrl(productId: number): string {\n return this.apiBaseUrlWithProductEntityUrl + productId;\n }\n\n loadProduct(product?: Product): void {\n // if Update/Exist Application\n // setTimeout(() => {\n if (product != null) {\n this.product = product;\n } else {\n this.product = {\n productNameList: [{}],\n productCodeList: [{}],\n productCompanyList: [{}],\n productComponentList: [{\n productLotList: [{\n productIngredientList: [{}]\n }]\n }]\n };\n }\n // });\n }\n\n saveProduct(): Observable {\n const url = this.apiBaseUrlWithProductEntityUrl;\n const params = new HttpParams();\n const options = {\n params: params,\n type: 'JSON',\n headers: {\n 'Content-type': 'application/json'\n }\n };\n // Update Product\n if ((this.product != null) && (this.product.id)) {\n return this.http.put(url, this.product, options);\n } else {\n // Save New Product\n return this.http.post(url, this.product, options);\n }\n }\n\n validateProduct(): Observable {\n return new Observable(observer => {\n this.validateProd().subscribe(results => {\n observer.next(results);\n observer.complete();\n }, error => {\n observer.error();\n observer.complete();\n });\n });\n }\n\n validateProd(): Observable {\n const url = this.apiBaseUrlWithProductEntityUrl + '@validate';\n return this.http.post(url, this.product);\n }\n\n deleteProduct(productId: number): Observable {\n const options = {\n };\n const url = this.apiBaseUrlWithProductEntityUrl + productId;\n const x = this.http.delete(url, options);\n return x;\n }\n\n addNewProductName(): void {\n const newProductName: ProductName = { productTermAndTermPartList: [] };\n this.product.productNameList.unshift(newProductName);\n }\n\n deleteProductName(prodNameIndex: number): void {\n this.product.productNameList.splice(prodNameIndex, 1);\n }\n\n addNewTermAndTermPart(prodNameIndex: number): void {\n if (this.product.productNameList[prodNameIndex].productTermAndTermPartList == null) {\n this.product.productNameList[prodNameIndex].productTermAndTermPartList = [];\n }\n const newProductPartTerm: ProductTermAndPart = {};\n this.product.productNameList[prodNameIndex].productTermAndTermPartList.unshift(newProductPartTerm);\n }\n\n deleteTermAndTermPart(prodNameIndex: number, prodNameTermIndex: number): void {\n this.product.productNameList[prodNameIndex].productTermAndTermPartList.splice(prodNameTermIndex, 1);\n }\n\n addNewProductCode(): void {\n const newProductCode: ProductCode = {};\n this.product.productCodeList.unshift(newProductCode);\n }\n\n deleteProductCode(prodCodeIndex: number): void {\n this.product.productCodeList.splice(prodCodeIndex, 1);\n }\n\n addNewProductCompany(): void {\n const newProductCompany: ProductCompany = {};\n this.product.productCompanyList.unshift(newProductCompany);\n }\n\n deleteProductCompany(prodCompanyIndex: number): void {\n this.product.productCompanyList.splice(prodCompanyIndex, 1);\n }\n\n addNewProductComponent(): void {\n const newProductComponent: ProductComponent = {\n productLotList: [{\n productIngredientList: [{}]\n }]\n };\n this.product.productComponentList.unshift(newProductComponent);\n }\n\n deleteProductComponent(prodComponentIndex: number): void {\n this.product.productComponentList.splice(prodComponentIndex, 1);\n }\n\n addNewProductLot(prodComponentIndex: number): void {\n const newProductLot: ProductLot = { productIngredientList: [{}] };\n this.product.productComponentList[prodComponentIndex].productLotList.unshift(newProductLot);\n }\n\n deleteProductLot(prodComponentIndex: number, prodLotIndex: number): void {\n this.product.productComponentList[prodComponentIndex].productLotList.splice(prodLotIndex, 1);\n }\n\n addNewProductIngredient(prodComponentIndex: number, prodLotIndex: number): void {\n const newProductIngredient: ProductIngredient = {};\n this.product.productComponentList[prodComponentIndex].productLotList[prodLotIndex].productIngredientList.unshift(newProductIngredient);\n }\n\n deleteProductIngredient(prodComponentIndex: number, prodLotIndex: number, prodIngredientIndex: number): void {\n this.product.productComponentList[prodComponentIndex].productLotList[prodLotIndex].productIngredientList.splice(prodIngredientIndex, 1);\n }\n\n copyProductComponent(productComp: any): void {\n const newProduct = JSON.parse(JSON.stringify(productComp));\n /*\n newProduct.id = null;\n newProduct.createdBy = null;\n newProduct.creationDate = null;\n newProduct.createdBy = null;\n newProduct.lastModifiedDate = null;\n */\n this.product.productComponentList.unshift(newProduct);\n }\n\n copyProductLot(productLot: any, prodComponentIndex: number): void {\n /*\n let newProduct: any;\n\n newProduct = productLot;\n\n if (newProduct != null) {\n newProduct.id = null;\n newProduct.createdBy = null;\n newProduct.creationDate = null;\n newProduct.modifiedBy = null;\n newProduct.lastModifiedDate = null;\n\n newProduct.productIngredientList.forEach(elementIngred => {\n if (elementIngred != null) {\n elementIngred.id = null;\n elementIngred.createdBy = null;\n elementIngred.creationDate = null;\n elementIngred.modifiedBy = null;\n elementIngred.lastModifiedDate = null;\n }\n });\n */\n const newProduct = JSON.parse(JSON.stringify(productLot));\n\n this.product.productComponentList[prodComponentIndex].productLotList.unshift(newProduct);\n // }\n }\n\n copyProductIngredient(productIngredient: any, prodComponentIndex: number, prodLotIndex: number): void {\n const newProduct = JSON.parse(JSON.stringify(productIngredient));\n /*\n newProduct.id = null;\n newProduct.createdBy = null;\n newProduct.creationDate = null;\n newProduct.modifiedBy = null;\n newProduct.lastModifiedDate = null;\n */\n this.product.productComponentList[prodComponentIndex].productLotList[prodLotIndex].productIngredientList.unshift(newProduct);\n }\n\n /*\n reviewProduct(prodIndex: number): void {\n // this.application.applicationProductList[prodIndex].applicationIngredientList.unshift(newIngredient);\n }\n\n addNewIngredient(index: number): void {\n const newIngredient: ApplicationIngredient = {};\n this.application.applicationProductList[index].applicationIngredientList.unshift(newIngredient);\n }\n\n deleteIngredient(prodIndex: number, ingredIndex: number): void {\n this.application.applicationProductList[prodIndex].applicationIngredientList.splice(ingredIndex, 1);\n }\n\n copyIngredient(ingredient: any, prodIndex: number): void {\n const newIngredient = JSON.parse(JSON.stringify(ingredient));\n newIngredient.reviewedBy = null;\n newIngredient.reviewDate = null;\n this.application.applicationProductList[prodIndex].applicationIngredientList.unshift(newIngredient);\n }\n\n reviewIngredient(prodIndex: number, ingredIndex: number): void {\n // this.application.applicationProductList[prodIndex].applicationIngredientList.unshift(newIngredient);\n }\n\n getJson() {\n return this.application;\n }\n\n getUpdateApplicationUrl(): string {\n return this.baseUrl + 'updateApplication?applicationId=';\n }\n\n getApplicationListExportUrl(bdnum: string): string {\n return this.baseUrl + 'applicationListExport?bdnum=' + bdnum;\n }\n*/\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http';\nimport { Observable, throwError, of } from 'rxjs';\nimport { ConfigService } from '@gsrs-core/config';\nimport { BaseHttpService } from '@gsrs-core/base';\nimport { map } from 'rxjs/operators';\nimport { SubstanceRelationship } from '@gsrs-core/substance/substance.model';\nimport { PagingResponse } from '@gsrs-core/utils';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { Facet } from '@gsrs-core/facets-manager';\nimport { FacetParam, FacetHttpParams, FacetQueryResponse } from '@gsrs-core/facets-manager';\nimport { Application } from '../application/model/application.model';\n\n@Injectable()\nexport class GeneralService extends BaseHttpService {\n\n apiBaseUrlWithApplicationEntityUrl = this.configService.configData.apiBaseUrl + 'api/v1/applications' + '/';\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService\n ) {\n super(configService);\n }\n\n getSubstanceBySubstanceUuid(\n substanceUuid: string\n ): Observable {\n\n const url = this.apiBaseUrl + 'substances(' + substanceUuid + ')';\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getSubstanceCodesBySubstanceUuid(\n substanceUuid: string\n ): Observable {\n // const url = this.apiBaseUrl + 'substances(' + substanceUuid + ')/codes'\n // const url = this.baseUrl + 'getSubstanceDetailsBySubstanceId?substanceId=' + substanceId;\n\n const url = this.apiBaseUrl + 'substances(' + substanceUuid + ')/codes';\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getSubstanceNamesBySubstanceUuid(substanceUuid: string): Observable> {\n\n const url = this.apiBaseUrl + 'substances(' + substanceUuid + ')/names';\n // const url = `${this.apiBaseUrl}substances(${substanceUuid})/names`;\n return this.http.get>(url);\n }\n\n getSubstanceByAnyId(\n id: string\n ): Observable {\n const url = this.apiBaseUrl + 'substances(' + id + ')';\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n /*\n getSubstanceKeyBySubstanceUuid(\n substanceUuid: string\n ): string {\n let substanceKey = null;\n const url = this.apiBaseUrl + 'substances(' + substanceUuid + ')/codes';\n const response = this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n\n response.subscribe(substanceCodes => {\n if (substanceCodes) {\n for (let index = 0; index < substanceCodes.length; index++) {\n if (substanceCodes[index].codeSystem && this.getSubstanceKeyType) {\n if ((substanceCodes[index].codeSystem === this.getSubstanceKeyType) &&\n (substanceCodes[index].type === 'PRIMARY')) {\n substanceKey = substanceCodes[index].code;\n }\n }\n }\n }\n });\n return substanceKey;\n }\n */\n\n getSubstanceRelationships(substanceUuid: string): Observable> {\n\n const url = `${this.apiBaseUrl}substances(${substanceUuid})/relationships`;\n return this.http.get>(url);\n }\n\n getSearchCount(substanceUuid: string): Observable {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/searchcounts/` + substanceUuid;\n // const url = this.baseUrl + 'getSubstanceSearchCountBySubstanceUuid?substanceUuid=' + substanceUuid;\n // const url = this.apiBaseUrl + 'searchcounts/' + substanceUuid;\n return this.http.get(url)\n .pipe(\n map(res => {\n return res;\n })\n );\n }\n\n searchApplicationByAppTypeNumber(\n appType: string, appNumber: number\n ): Observable> {\n const url = this.apiBaseUrlWithApplicationEntityUrl + 'search?skip=0&top=10&q=root_appType:\\\"^' + appType + '\\\" AND root_appNumber:\\\"*' + appNumber + '*\\\"';\n // + '¢er=' + center + '&fromTable=' + fromTable + '&page=' + (page + 1) + '&pageSize=' + pageSize;\n return this.http.get(url).pipe(\n map(results => {\n return results;\n })\n );\n }\n\n getAppIngredtMatchListSearchResult(\n order: string,\n skip: number = 0,\n pageSize: number = 10,\n searchTerm?: string,\n facets?: FacetParam\n ): Observable> {\n let params = new FacetHttpParams();\n params = params.append('skip', skip.toString());\n params = params.append('top', pageSize.toString());\n if (searchTerm !== null && searchTerm !== '') {\n params = params.append('q', searchTerm);\n }\n\n params = params.appendFacetParams(facets);\n\n const url = this.apiBaseUrl + 'application/search';\n const options = {\n params: params\n };\n\n return this.http.get>(url, options);\n }\n\n createAppIngredMatchSearchCritieria(substanceUuid: string): string {\n let fullFacetField = '';\n this.getSubstanceNamesBySubstanceUuid(substanceUuid).subscribe(responseNames => {\n if (responseNames) {\n const names = responseNames;\n names.forEach((element, index) => {\n const facetField = 'root_applicationProductList_applicationProductNameList_productName:';\n if (element) {\n if (element.name) {\n if (index > 0) {\n fullFacetField = fullFacetField + ' OR ';\n }\n fullFacetField = fullFacetField + facetField + \"\\\"\" + element.name + \"\\\"\";\n }\n }\n });\n }\n });\n return fullFacetField;\n }\n\n // getAppIngredtMatchListCount(substanceUuid: string)\n // : Observable> {\n // let count = 0;\n // let fullFacetField = '';\n // let result : PagingResponse;\n /*\n this.getSubstanceNamesBySubstanceUuid(substanceUuid).subscribe(responseNames => {\n if (responseNames) {\n const names = responseNames;\n names.forEach((element, index) => {\n const facetField = \"root_applicationProductList_applicationProductNameList_productName:\";\n if (element) {\n if (element.name) {\n if (index > 0) {\n fullFacetField = fullFacetField + \" OR \";\n }\n fullFacetField = fullFacetField + facetField + \"\\\"\" + element.name + \"\\\"\";\n }\n }\n });\n\n // DO Application Search in Product Name\n const facetParam = { \"Has Ingredients\": { \"params\": { \"Has No Ingredient\": true }, \"isAllMatch\": false } };\n\n this.getAppIngredtMatchListSearchResult(null, 0, 10, fullFacetField, facetParam).subscribe(response => {\n // alert('RRRRRRR' + JSON.stringify(response));\n // if (response) {\n // alert(\"RESULT RESPONSE\");\n // result = response;\n // }\n return response;\n });\n }\n });\n */\n // return result;\n\n /*\n const url = this.baseUrl + 'getAppIngredtMatchListCountJson?substanceId=' + substanceUuid + '&citation=';\n return this.http.get(url)\n .pipe(\n map(res => {\n return res;\n })\n );\n */\n\n // }\n\n getApplicationIngredientMatchList(substanceUuid: string): Observable {\n const result = null;\n // result = this.getAppIngredtMatchListCount(substanceUuid);\n // JSON.stringify(result);\n return result;\n /*\n const url = this.baseUrl + 'getAppIngredMatchList2?substanceId=' + substanceUuid + '&citation=';\n return this.http.get(url)\n .pipe(\n map(res => {\n return res.data;\n })\n );\n */\n }\n\n appIngredMatchListAutoUpdateSave(applicationId: number, bdnum: string): Observable {\n const url = this.baseUrl + 'appIngredMatchListAutoUpdateSaveJson?applicationId=' + applicationId + '&bdnum=' + bdnum;\n return this.http.get(url)\n .pipe(\n map(res => {\n return res;\n })\n );\n }\n\n // for GSRS 3.0\n getApiExportUrlBrowseSubstance(etag: string, extension: string, source: string): string {\n let url = '';\n if (source) {\n if (source === 'app') {\n return url = `${this.configService.configData.apiBaseUrl}api/v1/substances/export/${etag}/appxlsx`;\n }\n if (source === 'prod') {\n return url = `${this.configService.configData.apiBaseUrl}api/v1/substances/export/${etag}/prodxlsx`;\n }\n if (source === 'clinicaltrialsus') {\n return url = `${this.configService.configData.apiBaseUrl}api/v1/substances/export/${etag}/ctusxlsx`;\n }\n if (source === 'clinicaltrialseurope') {\n return url = `${this.configService.configData.apiBaseUrl}api/v1/substances/export/${etag}/cteuxlsx`;\n }\n }\n return url;\n }\n\n getApiExportUrl(etag: string, extension: string): string {\n const url = `${this.configService.configData.apiBaseUrl}api/v1/applicationssrs/export/${etag}/${extension}`;\n return url;\n }\n\n // for 2.x, will REMOVE in the future\n getEtagDetails(etag: string, fullname: string, source: string): Observable {\n const url = this.baseUrl + 'getEtagDetails?etagId=' + etag + '&filename=' + fullname + '&source=' + source;\n return this.http.get(url)\n .pipe(\n map(res => {\n return res;\n })\n );\n }\n\n getManualFile(): Observable {\n const url = this.baseUrl + 'manual';\n return this.http.get(url, {\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n }, responseType: 'blob' as 'json', observe: 'response'\n })\n .pipe(\n map(res => {\n return res;\n })\n );\n }\n\n getManualUrl(): string {\n const url = this.baseUrl + 'manual';\n return url;\n }\n\n getSubstanceKeyType(): string {\n let key = null;\n if (this.configService.configData && this.configService.configData.substance) {\n const substanceConfig = this.configService.configData && this.configService.configData.substance;\n key = substanceConfig.linking.keyType.default;\n }\n return key;\n }\n\n getCurrentDate(): any {\n const currentDate = new Date();\n return currentDate;\n }\n\n}\n","import { Environment } from './environment.model';\n\nexport const baseEnvironment: Environment = {\n apiBaseUrl: 'https://ginas.ncats.nih.gov/ginas/app/',\n baseHref: '',\n clasicBaseHref: '',\n production: false,\n appId: 'gsrs',\n structureEditor: 'jsdraw',\n googleAnalyticsId: '',\n version: '2.3.4',\n isAnalyticsPrivate: false,\n contactEmail: 'ginas@mail.nih.gov'\n};\n\n\n// options for structureEditor are 'ketcher' or 'jsdraw'\n","import { baseEnvironment } from 'src/environments';\n\nexport const environment = baseEnvironment;\nenvironment.apiBaseUrl = '/ginas/app/';\nenvironment.production = true;\nenvironment.baseHref = '/ginas/app/beta/';\nenvironment.clasicBaseHref = '/ginas/app/';\nenvironment.appId = 'fda';\n// environment.googleAnalyticsId = null;\nenvironment.isAnalyticsPrivate = true;\n\nexport { FdaModule as EnvironmentModule } from '../app/fda/fda.module';\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-page-not-found',\r\n template: '
    ',\r\n styles: []\r\n})\r\nexport class PageNotFoundComponent implements OnInit {\r\n\r\n constructor(\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MAT_BOTTOM_SHEET_DATA, MatBottomSheetRef } from '@angular/material/bottom-sheet';\r\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-highlighted-search-action',\r\n templateUrl: './highlighted-search-action.component.html',\r\n styleUrls: ['./highlighted-search-action.component.scss']\r\n})\r\nexport class HighlightedSearchActionComponent implements OnInit {\r\n searchTerm: string;\r\n\r\n constructor(\r\n @Inject(MAT_BOTTOM_SHEET_DATA) public data: any,\r\n private bottomSheetRef: MatBottomSheetRef,\r\n public activatedRoute: ActivatedRoute\r\n ) {\r\n this.searchTerm = data.searchTerm;\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n dismiss(): void {\r\n this.bottomSheetRef.dismiss();\r\n }\r\n\r\n get googleSearchUrl(): string {\r\n const googleUrl = `http://www.google.com/search?q=${encodeURIComponent(this.searchTerm)}`;\r\n return googleUrl;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n Search for:\r\n \r\n \r\n
    \r\n
    \r\n \"{{searchTerm}}\"\r\n
    \r\n \r\n
    \r\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams, HttpErrorResponse } from '@angular/common/http';\nimport { BaseHttpService } from '../base/base-http.service';\nimport { Observable, Subject, forkJoin, throwError } from 'rxjs';\nimport { ConfigService } from '../config/config.service';\nimport { PagingResponse } from '../utils/paging-response.model';\nimport { map, catchError, retry } from 'rxjs/operators';\nimport { FacetHttpParams } from '@gsrs-core/facets-manager';\nimport { ScheduledJob } from '@gsrs-core/admin/scheduled-jobs/scheduled-job.model';\nimport { Auth } from '@gsrs-core/auth';\nimport { UserEditObject, UploadObject, DirectoryFile } from '@gsrs-core/admin/admin-objects.model';\n\n\n @Injectable({\n providedIn: 'root'\n})\nexport class AdminService extends BaseHttpService {\n\n constructor(\n public http: HttpClient,\n public configService: ConfigService\n ) {\n super(configService);\n }\n\n public fetchJobs(): Observable< any > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.get< any >(`${url}scheduledjobs`);\n }\n\n public fetchJob(id: number): Observable< ScheduledJob > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.get< any >(`${url}scheduledjobs(${id})`);\n\n }\n\n public runJob(job: string): Observable< ScheduledJob > {\n return this.http.get< ScheduledJob >(job).pipe(retry(2), catchError(err => throwError(err)));\n }\n\n\n public getEnvironmentHealth(): Observable< any > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.get< any >(`${url}health/info`);\n\n }\n\n public getUserByID(id: any): Observable< Auth > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.get< Auth >(`${url}users(${id})`);\n }\n public getUserByName(name: string): Observable< Auth > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.get< Auth >(`${url}users(${name})`);\n }\n\n public getAllUsers(): Observable< any > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.get< any >(`${url}users`);\n }\n\n public editUser(user: UserEditObject, name: string): Observable< Auth > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.put< Auth >(`${url}users(${name})`, user);\n }\n\n public addUser(user: UserEditObject): Observable< Auth > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.post< Auth >(`${url}users/`, user);\n }\n\n public deleteUser(user: string): Observable< Auth > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.delete< Auth >(`${url}users/${user}`);\n }\n\n public getGroups(): Observable< any > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n return this.http.get< any >(`${url}admin/groups/@names`);\n }\n\n\n public changePassword( newpass: string, id: number): Observable< any > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n const body = {};\n body['newPassword'] = newpass;\n return this.http.post< any >(`${url}users/${id}/password`, body);\n }\n\n public changeMyPassword(oldpass: string, newpass: string, id: number): Observable< any > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/`;\n const body3 = {};\n body3['oldPassword'] = oldpass;\n body3['newPassword'] = newpass;\n return this.http.post< any >(`${url}profile/password `, body3);\n }\n\n public loadData(form: any) {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/admin/load`;\n return this.http.post< any >(url, form);\n }\n\n public queryLoad(id: string): Observable< UploadObject > {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/jobs`;\n return this.http.get< any >(`${url}/${id}/`);\n }\n\n public getFiles(): Observable < Array< DirectoryFile >> {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/admin/files`;\n return this.http.get< any >(`${url}`);\n }\n\n public getLogs(): Observable< Array< DirectoryFile >> {\n const url = `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/admin/logs`;\n return this.http.get< any >(`${url}`);\n }\n\n public getDownloadLink(name: string): string {\n return `${(this.configService.configData && this.configService.configData.apiBaseUrl) || '/' }api/v1/admin/files/${name}`;\n }\n}\n","import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { identity } from '../util/identity';\nimport { timer } from '../observable/timer';\nimport { innerFrom } from '../observable/innerFrom';\nexport function retry(configOrCount = Infinity) {\n let config;\n if (configOrCount && typeof configOrCount === 'object') {\n config = configOrCount;\n }\n else {\n config = {\n count: configOrCount,\n };\n }\n const { count = Infinity, delay, resetOnSuccess: resetOnSuccess = false } = config;\n return count <= 0\n ? identity\n : operate((source, subscriber) => {\n let soFar = 0;\n let innerSub;\n const subscribeForRetry = () => {\n let syncUnsub = false;\n innerSub = source.subscribe(createOperatorSubscriber(subscriber, (value) => {\n if (resetOnSuccess) {\n soFar = 0;\n }\n subscriber.next(value);\n }, undefined, (err) => {\n if (soFar++ < count) {\n const resub = () => {\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRetry();\n }\n else {\n syncUnsub = true;\n }\n };\n if (delay != null) {\n const notifier = typeof delay === 'number' ? timer(delay) : innerFrom(delay(err, soFar));\n const notifierSubscriber = createOperatorSubscriber(subscriber, () => {\n notifierSubscriber.unsubscribe();\n resub();\n }, () => {\n subscriber.complete();\n });\n notifier.subscribe(notifierSubscriber);\n }\n else {\n resub();\n }\n }\n else {\n subscriber.error(err);\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRetry();\n }\n };\n subscribeForRetry();\n });\n}\n","
    \n \n
    \n\n
    Saved Drafts
    \n \n \n
    \n\n
    \n \n 0\">\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Delete Type {{draft.type}} Name {{draft.name}} Date Saved {{draft.date | date:'medium'}} [AUTOSAVE]
    {{draft.fromNow}}
    UUID {{draft.uuid}} Use
    \n
    \n No drafts were found for these conditions under local storage. Substance drafts are stored in this browser's cache, so using an incognito tab or clearing cache\n will clear or not allow access to drafts. You can save and load stored record drafts using the buttons below.\n
    \n\n\n \n\n\n\n
    \n
    \n\n
    \n
    \n \n Show only current record\n \n
    \n \n
    \n \n Show only new registrations\n \n
    \n
    \n\n
    \n \n Save Backup\n \n
    \n \n
    {{filename? filename: 'no file chosen'}}
    \n \n
    \n \n \n \n
    \n
    ","import { Component, OnInit, Inject } from '@angular/core';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport {MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { Sort } from '@angular/material/sort';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { FormGroup } from '@angular/forms';\nimport { Router } from '@angular/router';\nimport * as moment from 'moment';\n\n@Component({\n selector: 'app-substance-drafts',\n templateUrl: './substance-drafts.component.html',\n styleUrls: ['./substance-drafts.component.scss']\n})\nexport class SubstanceDraftsComponent implements OnInit {\n draft: SubstanceDraft;\n displayedColumns: string[] = ['delete', 'type', 'name', 'uuid', 'date', 'load'];\n\n json: any;\n values: Array;\n filtered: Array;\n onlyRegister = false;\n onlyCurrent = false;\n downloadJsonHref: any;\n fileName: string;\n filename: string; \n uploadForm: FormGroup;\n view = 'edit';\n file: any;\n uuid: string;\n \n constructor(\n private substanceFormService: SubstanceFormService,\n public dialogRef: MatDialogRef,\n private utilsService: UtilsService,\n private sanitizer: DomSanitizer,\n private router: Router,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.view = data.view || null;\n this.data = data;\n }\n\n ngOnInit(): void {\n if (!this.view || this.data.view !== 'user') {\n this.json = this.substanceFormService.cleanSubstance();\n this.uuid = this.json.uuid;\n\n }\n \n this.fetchDrafts();\n const time = new Date().getTime();\n this.fileName = 'gsrs-drafts-' + time;\n this.download();\n\n \n }\n\n\n download() {\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' + encodeURIComponent(JSON.stringify(this.values)));\n this.downloadJsonHref = uri;\n }\n\n fileChanged(e) {\n this.file = e.target.files[0];\n }\n\n readFile() {\n var reader = new FileReader();\n reader.onload = (e) => {\n const file = e.target.result;\n this.filtered = JSON.parse(file);\n this.values = JSON.parse(file);\n };\n reader.readAsText(this.file);\n}\n\n\n filterToggle(value:string) {\n if (value === 'register') {\n this.onlyRegister = !this.onlyRegister;\n } else {\n this.onlyCurrent = !this.onlyCurrent;\n }\n\n this.filtered = this.values;\n if (this.onlyCurrent) {\n this.filtered = this.filtered.filter(obj => {\n if(this.uuid) {\n return obj.uuid == this.uuid;\n } else if (this.json && this.json.uuid){\n return obj.uuid == this.json.uuid;\n } else {\n return false;\n }\n });\n }\n\n if (this.onlyRegister) {\n this.filtered = this.filtered.filter(function( obj ) {\n return obj.uuid === 'register';\n });\n }\n\n }\n\n\n useDraft(index) {\n \n this.dialogRef.close(index);\n }\n\n\n sortData(sort: Sort) {\n if (!sort.active || sort.direction === '') {\n // this.filtered = data;\n return;\n }\n const data = this.filtered.slice();\n this.filtered = data.sort((a, b) => {\n const isAsc = sort.direction === 'asc';\n return this.utilsService.compare(a[sort.active] ? a[sort.active] : null, b[sort.active] ? b[sort.active] : null, isAsc);\n });\n }\n\n deleteDraft(draft: any): void {\n localStorage.removeItem(draft.key);\n this.filtered = this.filtered.filter(function( obj ) {\n return obj.key !== draft.key;\n });\n\n this.values = this.values.filter(function( obj ) {\n return obj.key !== draft.key;\n});\n\n }\n\n onFileSelect(event): void {\n if (event.target.files.length > 0) {\n this.file = event.target.files[0];\n this.filename = this.file.name;\n // this.uploadForm.get('file').setValue(this.file);\n this.readFile()\n }\n }\n\n openInput(): void {\n document.getElementById('fileInput').click();\n }\n\n fetchDrafts() {\n\n this.values = [];\n let keys = Object.keys(localStorage);\n let i = keys.length;\n \n while ( i-- ) {\n if (keys[i].startsWith('gsrs-draft-')){\n const entry = JSON.parse(localStorage.getItem(keys[i]));\n entry.key = keys[i];\n entry.fromNow = moment(entry.date).fromNow();\n this.values.push( entry );\n\n }\n }\n this.filtered = this.values.sort((a, b) => {\n return b.date - a.date;\n });;\n\n if (this.json && this.json.uuid) {\n this.filterToggle('substance');\n } else {\n this.filterToggle('register');\n }\n }\n\n\n saveDraft() {\n this.json = this.substanceFormService.cleanSubstance();\n const time = new Date().getTime();\n const file = 'gsrs-draft-' + time;\n const uuid = this.json.uuid ? this.json.uuid : 'register';\n const type = this.json.substanceClass;\n let primary = null;\n this.json.names.forEach(name => {\n if (name.displayName) {\n primary = name.name;\n }\n });\n if (!primary && this.json.names.length > 0) {\n primary = this.json.names[0].name;\n }\n\n let draft = {\n 'uuid': uuid,\n 'date': time,\n 'type': type,\n 'name': primary,\n 'substance': this.json\n }\n\n localStorage.setItem(file, JSON.stringify(draft));\n\n }\n\n\n \n}\n\n\nexport interface SubstanceDraft {\n key: string;\n uuid: any;\n date: string;\n type: string;\n name?: string; \n substance: any;\n auto?: boolean;\n file?: any;\n fromNow?: string;\n}","
    \n

    User Profile

    \n
    \n {{ user.user.username}}\n
    \n
    \n\n
    \n \n \n
    \n
    \n
    Email:
    \n
    {{user.user.email}}
    \n
    \n
    \n
    \n Roles:\n
    \n
    \n \n {{role}}{{!islast? ', ':''}}\n \n
    \n
    \n
    \n
    \n Groups:\n
    \n
    \n \n {{group.name}}{{!islast? ', ':''}}\n \n
    \n
    \n \n \n \n
    \n \n
    \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n {{this.message}}\n
    \n
    \n\n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { Auth } from '@gsrs-core/auth/auth.model';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { take } from 'rxjs/operators';\nimport { isString } from 'util';\nimport { Router } from '@angular/router';\nimport { MatDialogRef, MatDialog } from '@angular/material/dialog';\nimport { SubstanceDraftsComponent } from '@gsrs-core/substance-form/substance-drafts/substance-drafts.component';\n\n@Component({\n selector: 'app-user-profile',\n templateUrl: './user-profile.component.html',\n styleUrls: ['./user-profile.component.scss']\n})\nexport class UserProfileComponent implements OnInit {\n user: Auth;\n newPassword = '';\n oldPassword = '';\n newPasswordConfirm = '';\n changePassword = false;\n message = '';\n loading = false;\n constructor(\n private authService: AuthService,\n private adminService: AdminService,\n private router: Router,\n public dialogRef: MatDialogRef,\n private dialog: MatDialog,\n\n ) { }\n\n ngOnInit() {\n this.authService.getAuth().pipe(take(1)).subscribe( response => {\n this.user = response;\n });\n }\n\n viewDownloads(): void {\n this.router.navigate(['/user-downloads']);\n setTimeout(() => {\n this.dialogRef.close();\n }, 400);\n }\n\n validatePassword(): void {\n if (this.newPassword !== this.newPasswordConfirm) {\n this.message = 'Error: passwords do not match';\n this.newPassword = '';\n this.newPasswordConfirm = '';\n } else if (this.newPassword === this.oldPassword) {\n this.message = 'Error: no change in password detected';\n } else {\n this.loading = true;\n this.adminService.changeMyPassword(this.oldPassword, this.newPassword, this.user.id).pipe(take(1)).subscribe(response => {\n this.message = 'Password updated successfully!';\n this.loading = false;\n this.newPassword = '';\n this.newPasswordConfirm = '';\n this.oldPassword = '';\n this.changePassword = false;\n }, error => {\n this.loading = false;\n if (error.error && isString(error.error) ) {\n this.message = 'Error - ' + error.error;\n } else {\n this.newPassword = '';\n this.newPasswordConfirm = '';\n this.changePassword = !this.changePassword;\n this.message = 'Error: unknown error';\n }\n });\n }\n\n}\n\nviewDrafts(): void {\n const dialogRef = this.dialog.open(SubstanceDraftsComponent, {\n maxHeight: '85%',\n width: '70%',\n data: {profile: true}\n });\n // this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(response => {\n // this.overlayContainer.style.zIndex = null;\n\n\n /* if (response) {\n\n const read = response.substance;\n if (response.uuid && response.uuid != 'register'){\n const url = '/substances/' + response.uuid + '/edit?action=import';\n this.router.navigateByUrl(url, { state: { record: response.substance } });\n } else {\n setTimeout(() => {\n // this.overlayContainer.style.zIndex = null;\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigateByUrl('/substances/register?action=import', { state: { record: response.json } });\n \n }, 1000);\n }\n }*/\n\n });\n}\n}\n","
    \n

    Substance Import

    \n
    \n
    \n
    \n Select a .json file to import into a new edit form.\n
    \n
    \n
    \n
    {{filename? filename: 'no file chosen'}}
    \n \n
    \n
    \n
    Or paste JSON here:
    \n \n
    \n
    \n {{message}}\n
    \n\n
    \n
    \n \n \n \n
    ","import { Component, OnInit } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-substance-edit-import-dialog',\n templateUrl: './substance-edit-import-dialog.component.html',\n styleUrls: ['./substance-edit-import-dialog.component.scss']\n})\nexport class SubstanceEditImportDialogComponent implements OnInit {\n public json: any;\n message = '';\n loaded = false;\n record: any;\n filename: string;\n pastedJSON: string;\n uploaded = false;\n\n constructor(\n private router: Router,\n public dialogRef: MatDialogRef\n\n ) { }\n\n ngOnInit() {\n }\n\n\n uploadFile(event) {\n if (event.target.files.length !== 1) {\n this.message = 'No file selected';\n this.loaded = false;\n } else {\n const file = event.target.files[0];\n this.filename = file.name;\n const reader = new FileReader();\n reader.onloadend = (e) => {\n const response = reader.result.toString();\n if (this.jsonValid(response)) {\n const read = JSON.parse(response);\n if (!read['substanceClass']) {\n this.message = 'Error: Invalid JSON format';\n this.loaded = false;\n } else {\n this.loaded = true;\n this.record = response;\n this.message = '';\n }\n } else {\n this.message = 'Error: Invalid file format';\n this.loaded = false;\n }\n };\n reader.readAsText(event.target.files[0]);\n this.uploaded = true;\n }\n }\n\n useFile() {\n if (!this.uploaded && this.pastedJSON) {\n const read = JSON.parse(this.pastedJSON);\n if (!read['substanceClass']) {\n this.message = 'Error: Invalid JSON format';\n this.loaded = false;\n } else {\n this.loaded = true;\n this.record = this.pastedJSON;\n this.message = '';\n }\n }\n this.dialogRef.close(this.record);\n }\n\n\n checkLoaded() {\n this.loaded = true;\n try {\n JSON.parse(this.pastedJSON);\n this.message = '';\n } catch (e) {\n this.message = 'Error: Invalid JSON format in pasted string';\n this.loaded = false;\n }\n}\n\n\n openInput(): void {\n document.getElementById('fileInput').click();\n }\n\n jsonValid(file: any): boolean {\n try {\n JSON.parse(file);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n}\n","import { Injectable } from '@angular/core';\r\nimport { SubstanceTextSearchModule } from './substance-text-search.module';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: SubstanceTextSearchModule\r\n})\r\nexport class SubstanceTextSearchService {\r\n private registeredSearchComponents: { [id: string]: Subject } = {};\r\n\r\n constructor() { }\r\n\r\n registerSearchComponent(id: string): void {\r\n this.registeredSearchComponents[id] = new Subject();\r\n }\r\n\r\n setSearchComponentValueEvent(id: string): Observable {\r\n return this.registeredSearchComponents[id].asObservable();\r\n }\r\n\r\n unregisterSearchComponent(id: string): void {\r\n this.registeredSearchComponents[id].complete();\r\n this.registeredSearchComponents[id] = null;\r\n }\r\n\r\n setSearchValue(id: string, value: string = ''): void {\r\n if (this.registeredSearchComponents[id]) {\r\n this.registeredSearchComponents[id].next(value);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WildcardService {\n\n wildCardObservable: Observable;\n topSearchObservable: Observable;\n private wildcardText = new Subject();\n private topSearchBox = new Subject();\n\n constructor() { \n this.wildCardObservable = this.wildcardText.asObservable();\n this.topSearchObservable = this.topSearchBox.asObservable();\n }\n\n getWildCardText(data) {\n this.wildcardText.next(data);\n }\n\n getTopSearchBoxText(data) {\n this.topSearchBox.next(data);\n }\n\n}\n","import { Component, OnInit, ViewChild, OnDestroy } from '@angular/core';\r\nimport { MainNotificationService } from '../main-notification.service';\r\nimport { AppNotification, NotificationType } from '../notification.model';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-main-notification',\r\n templateUrl: './main-notification.component.html',\r\n styleUrls: ['./main-notification.component.scss']\r\n})\r\nexport class MainNotificationComponent implements OnInit, OnDestroy {\r\n @ViewChild('notification', { static: true }) appNotification: { nativeElement: HTMLElement };\r\n private notificationTimer: any;\r\n private notifcationType: NotificationType;\r\n public notificationMessage: string;\r\n private subscriptions: Array = [];\r\n\r\n constructor(\r\n private notificationService: MainNotificationService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.appNotification.nativeElement.classList.add('hidden');\r\n const subscription = this.notificationService.notificationEvent.subscribe(notification => {\r\n this.setNotification(notification);\r\n });\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(subscription => {\r\n subscription.unsubscribe();\r\n });\r\n clearTimeout(this.notificationTimer);\r\n }\r\n\r\n setNotification(notification: AppNotification): void {\r\n this.notifcationType = notification.type || NotificationType.default;\r\n this.notificationMessage = notification.message;\r\n this.appNotification.nativeElement.classList.remove('hidden');\r\n this.appNotification.nativeElement.classList.add(NotificationType[this.notifcationType]);\r\n this.appNotification.nativeElement.classList.add('showing');\r\n const timeout = notification.milisecondsToShow || 5000;\r\n this.notificationTimer = setTimeout(() => {\r\n this.removeNotification(notification.type);\r\n this.notificationTimer = null;\r\n }, timeout);\r\n }\r\n\r\n removeNotification(notificationType: NotificationType): void {\r\n if (this.notificationTimer != null) {\r\n clearTimeout(this.notificationTimer);\r\n }\r\n this.appNotification.nativeElement.classList.remove('showing');\r\n this.appNotification.nativeElement.classList.add('hidden');\r\n this.appNotification.nativeElement.classList.remove(NotificationType[this.notifcationType]);\r\n }\r\n\r\n}\r\n","
    \r\n {{notificationMessage}}\r\n
    ","\n\n\n\n\n\n","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { LoadingService } from '../loading.service';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-loading',\r\n templateUrl: './loading.component.html',\r\n styleUrls: ['./loading.component.scss']\r\n})\r\nexport class LoadingComponent implements OnInit, OnDestroy {\r\n isLoading = false;\r\n private subscription: Subscription;\r\n\r\n constructor(\r\n private loadingService: LoadingService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.subscription = this.loadingService.loadingEvent.subscribe(isLoading => {\r\n this.isLoading = isLoading;\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","\n
    \n \n \n \"gsrs-logo\"\n \n \n Ver. {{version}}\n
    \n\n \n \n \n \n \n \n \n Advanced Search\n \n \n \n Admin Panel\n \n \n Contact Us\n \n \n \n
    \n \n
    \n
    \n \n \n \n \n Browse Applications\n \n \n \n \n \n Browse Products\n \n \n \n \n \n Browse Clinical Trials\n \n \n \n\n \n \n Browse Adverse Events\n \n \n \n\n \n
    \n \n \n\n
    \n\n \n \n \n \n
    \n \n
    \n \n \n
    \n {{auth.identifier}}\n
    \n \n \n Profile\n \n \n User Downloads\n \n \n Saved Edit Drafts\n \n \n Admin Panel\n \n \n Registrars\n \n \n \n
    \n \n
    \n\n\n","import { Component, OnInit, ViewEncapsulation, HostListener, OnDestroy } from '@angular/core';\nimport { Router, RouterEvent, NavigationExtras, ActivatedRoute, NavigationStart, ResolveEnd, ParamMap } from '@angular/router';\nimport { Environment } from '../../../environments/environment.model';\nimport { AuthService } from '../auth/auth.service';\nimport { Auth } from '../auth/auth.model';\nimport { ConfigService } from '../config/config.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { LoadingService } from '../loading/loading.service';\nimport { HighlightedSearchActionComponent } from '../highlighted-search-action/highlighted-search-action.component';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatBottomSheet, MatBottomSheetRef } from '@angular/material/bottom-sheet';\nimport { Observable, Subscription } from 'rxjs';\nimport { UserProfileComponent } from '@gsrs-core/auth/user-profile/user-profile.component';\nimport { SubstanceTextSearchService } from '@gsrs-core/substance-text-search/substance-text-search.service';\nimport { NavItem, LoadedComponents } from '../config/config.model';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { take } from 'rxjs/operators';\nimport * as moment from 'moment';\nimport { SubstanceEditImportDialogComponent } from '@gsrs-core/substance-edit-import-dialog/substance-edit-import-dialog.component';\nimport { WildcardService } from '@gsrs-core/utils/wildcard.service';\nimport { SubstanceDraftsComponent } from '@gsrs-core/substance-form/substance-drafts/substance-drafts.component';\n\n@Component({\n selector: 'app-base',\n templateUrl: './base.component.html',\n styleUrls: ['./base.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class BaseComponent implements OnInit, OnDestroy {\n mainPathSegment = '';\n logoSrcPath: string;\n auth?: Auth;\n environment: Environment;\n searchValue: string;\n baseDomain: string;\n classicLinkPath: string;\n classicLinkQueryParamsString: string;\n isAdmin = false;\n contactEmail: string;\n version?: string;\n versionTooltipMessage = '';\n appId: string;\n clasicBaseHref: string;\n navItems: Array;\n canRegister = false;\n registerNav: Array;\n adverseEventShinyHomepageDisplay = false;\n loadedComponents: LoadedComponents;\n private overlayContainer: HTMLElement;\n private bottomSheetOpenTimer: any;\n private bottomSheetRef: MatBottomSheetRef;\n private bottomSheetCloseTimer: any;\n private selectedText: string;\n private subscriptions: Array = [];\n private wildCardText: string;\n private classicLinkQueryParams = {};\n showHeaderBar = 'true';\n\n constructor(\n private router: Router,\n public authService: AuthService,\n private configService: ConfigService,\n private activatedRoute: ActivatedRoute,\n private overlayContainerService: OverlayContainer,\n private loadingService: LoadingService,\n private bottomSheet: MatBottomSheet,\n private dialog: MatDialog,\n private substanceTextSearchService: SubstanceTextSearchService,\n private utilsService: UtilsService,\n private wildCardService: WildcardService\n ) {\n this.classicLinkPath = this.configService.environment.clasicBaseHref;\n this.classicLinkQueryParamsString = '';\n this.contactEmail = this.configService.configData.contactEmail;\n this.clasicBaseHref = this.configService.environment.clasicBaseHref;\n this.navItems = this.configService.configData.navItems;\n this.wildCardService.wildCardObservable.subscribe((data) => {\n this.wildCardText = data;\n });\n }\n\n @HostListener('document:mouseup', ['$event'])\n @HostListener('document:keyup', ['$event'])\n // @HostListener('document:selectionchange', ['$event'])\n onKeyUp(event: Event) {\n let text = '';\n let selection: Selection;\n let range: Range;\n let selectionStart: number;\n let selectionEnd: number;\n const activeEl: HTMLInputElement = document.activeElement as HTMLInputElement;\n\n if (activeEl != null) {\n const activeElTagName = activeEl ? activeEl.tagName.toLowerCase() : null;\n if (\n (activeElTagName === 'textarea') || (activeElTagName === 'input' &&\n /^(?:text|search|password|tel|url)$/i.test(activeEl.type)) &&\n (typeof activeEl.selectionStart === 'number')\n ) {\n selectionStart = activeEl.selectionStart;\n selectionEnd = activeEl.selectionEnd;\n text = activeEl.value.slice(selectionStart, selectionEnd);\n } else if (window.getSelection) {\n selection = window.getSelection();\n // ###### why just chrome?\n if (selection.rangeCount > 0) {\n range = selection.getRangeAt(0);\n }\n text = selection.toString();\n }\n\n clearTimeout(this.bottomSheetOpenTimer);\n\n if (text && text !== this.selectedText) {\n this.selectedText = text;\n /* this.bottomSheetOpenTimer = setTimeout(() => {\n const subscription = this.openSearchBottomSheet(text).subscribe(() => {\n setTimeout(() => {\n if (selection != null && range != null) {\n selection.removeAllRanges();\n selection.addRange(range);\n } else if (selectionStart != null) {\n activeEl.focus();\n activeEl.selectionStart = selectionStart;\n activeEl.selectionEnd = selectionEnd;\n }\n });\n subscription.unsubscribe();\n }, () => {\n subscription.unsubscribe();\n }, () => {\n this.selectedText = '';\n subscription.unsubscribe();\n });\n }, 600);*/\n }\n }\n }\n\n ngOnInit() {\n this.showHeaderBar = this.activatedRoute.snapshot.queryParams['header'] || 'true';\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n\n let notempty = false;\n if (this.loadedComponents) {\n if (this.loadedComponents.applications) {\n notempty = true;\n } else if (this.loadedComponents.clinicaltrials) {\n notempty = true;\n } else if (this.loadedComponents.adverseevents) {\n notempty = true;\n } else if (this.loadedComponents.impurities) {\n notempty = true;\n } else if (this.loadedComponents.products) {\n notempty = true;\n }\n\n if (!notempty) {\n this.loadedComponents = null;\n }\n }\n const roleSubscription = this.authService.hasRolesAsync('Admin').subscribe(response => {\n this.isAdmin = response;\n });\n this.subscriptions.push(roleSubscription);\n\n const regSubscription =\n this.authService.hasAnyRolesAsync('Admin', 'Updater', 'SuperUpdater', 'DataEntry', 'SuperDataEntry').subscribe(response => {\n this.canRegister = response;\n });\n this.subscriptions.push(regSubscription);\n this.baseDomain = this.configService.configData.apiUrlDomain;\n\n this.utilsService.getBuildInfo().pipe(take(1)).subscribe(buildInfo => {\n this.version = this.configService.configData.version || buildInfo.version;\n this.versionTooltipMessage = `V${this.version}`;\n this.versionTooltipMessage += ` built on ${moment(buildInfo.buildTime).utc().format('ddd MMM D YYYY HH:mm:SS z')}`;\n });\n this.navItems.forEach(item => {\n if (item.display === 'Register') {\n this.registerNav = item.children;\n }\n });\n if (this.loadedComponents) {\n for(let i = this.navItems.length - 1; i >= 0; i--) {\n if (this.navItems[i].children) {\n for (let j = this.navItems[i].children.length - 1; j >= 0; j--) {\n if (this.navItems[i].children[j].component) {\n if (!this.loadedComponents[this.navItems[i].children[j].component]) {\n this.navItems[i].children.splice(j, 1);\n }\n }\n\n }\n }\n if (this.navItems[i].component) {\n if (!this.loadedComponents[this.navItems[i].component]) {\n this.navItems.splice(i, 1);\n\n }\n }\n }\n}\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n let urlPath = this.router.routerState.snapshot.url.split('?')[0];\n this.setClassicLinkPath(urlPath.substring(1));\n\n if (this.activatedRoute.snapshot.queryParamMap.has('search')) {\n this.searchValue = this.activatedRoute.snapshot.queryParamMap.get('search');\n this.setClassicLinkQueryParams(this.activatedRoute.snapshot.queryParamMap);\n }\n\n const paramsSubscription = this.activatedRoute.queryParamMap.subscribe(params => {\n this.searchValue = params.get('search');\n this.setClassicLinkQueryParams(params);\n });\n this.subscriptions.push(paramsSubscription);\n\n const authSubscription2 = this.authService.checkAuth().subscribe(auth => {\n }, error => {\n if (error.status === 403 && (this.router.url.split('?')[0] !== '/login' && this.router.url.split('?')[0] !== '/unauthorized')) {\n this.loadingService.setLoading(false);\n this.router.navigate(['/unauthorized']);\n }\n });\n this.subscriptions.push(authSubscription2);\n\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n this.auth = auth;\n }, error => {\n });\n\n this.subscriptions.push(authSubscription);\n\n this.environment = this.configService.environment;\n this.appId = this.environment.appId;\n\n this.logoSrcPath = `${this.environment.baseHref || ''}assets/images/gsrs-logo.svg`;\n\n const routerSubscription = this.router.events.subscribe((event: RouterEvent) => {\n if (event instanceof ResolveEnd) {\n this.mainPathSegment = this.getMainPathSegmentFromUrl(event.url.substring(1));\n urlPath = event.url.split('?')[0];\n this.setClassicLinkPath(urlPath.substring(1));\n }\n\n if (event instanceof NavigationStart) {\n this.classicLinkQueryParams = {};\n this.loadingService.resetLoading();\n }\n });\n this.subscriptions.push(routerSubscription);\n\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\n this.mainPathSegment = this.getMainPathSegmentFromUrl(this.router.routerState.snapshot.url.substring(1));\n\n this.substanceTextSearchService.registerSearchComponent('main-substance-search');\n const cleanSearchSubscription = this.substanceTextSearchService.setSearchComponentValueEvent('main-substance-search')\n .subscribe(value => {\n this.searchValue = value;\n });\n this.subscriptions.push(cleanSearchSubscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n clearTimeout(this.bottomSheetOpenTimer);\n clearTimeout(this.bottomSheetCloseTimer);\n }\n\n getMainPathSegmentFromUrl(url: string): string {\n const path = url.split('?')[0];\n const mainPathPart = path.split('/')[0];\n return mainPathPart;\n }\n\n routeToLogin(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: this.router.url\n }\n };\n\n this.router.navigate(['/login'], navigationExtras);\n }\n\n processSubstanceSearch(searchValue: string) {\n this.wildCardService.getTopSearchBoxText(searchValue);\n this.navigateToSearchResults(searchValue);\n }\n\n navigateToSearchResults(searchTerm: string) {\n\n const navigationExtras: NavigationExtras = {\n queryParams: searchTerm ? { search: searchTerm } : null\n };\n this.router.navigate(['/browse-substance'], navigationExtras);\n }\n\n increaseMenuZindex(): void {\n this.overlayContainer.style.zIndex = '1001';\n }\n\n removeZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n openSearchBottomSheet(searchTerm: string): Observable {\n\n return new Observable(observer => {\n\n if (searchTerm) {\n\n clearTimeout(this.bottomSheetCloseTimer);\n\n if (this.bottomSheetRef != null) {\n this.bottomSheetRef.dismiss();\n this.bottomSheetRef = null;\n }\n\n this.bottomSheetRef = this.bottomSheet.open(HighlightedSearchActionComponent, {\n data: { searchTerm: searchTerm },\n hasBackdrop: false,\n closeOnNavigation: true\n });\n\n const openedSubscription = this.bottomSheetRef.afterOpened().subscribe(() => {\n observer.next();\n openedSubscription.unsubscribe();\n });\n this.bottomSheetCloseTimer = setTimeout(() => {\n if (this.bottomSheetRef != null) {\n this.bottomSheetRef.dismiss();\n this.bottomSheetRef = null;\n observer.complete();\n }\n }, 5000);\n const dismissedSubscription = this.bottomSheetRef.afterDismissed().subscribe(() => {\n clearTimeout(this.bottomSheetCloseTimer);\n this.bottomSheetRef = null;\n observer.complete();\n dismissedSubscription.unsubscribe();\n });\n } else {\n observer.error();\n observer.complete();\n }\n });\n }\n\n setClassicLinkPath(path: string): void {\n const basePath = this.clasicBaseHref;\n\n const pathDictionary = {\n '/home': '',\n '/browse-substance': 'substances',\n '/structure-search': 'structure',\n '/sequence-search': 'sequence',\n '/substances/register': 'wizard',\n '/admin': 'admin'\n };\n\n const pathParts = path.split('/');\n\n let pathKey = '';\n pathParts.forEach((part, index) => {\n if (index < 2) {\n pathKey += `/${part}`;\n } else {\n this.setClassicLinkQueryParams(null, { kind: part });\n }\n });\n this.classicLinkPath = `${basePath}${pathDictionary[pathKey] || ''}`;\n }\n\n setClassicLinkQueryParams(paramMap?: ParamMap, params?: { [queryParam: string]: string }): void {\n\n if (paramMap != null) {\n const paramsDict = {};\n paramsDict['q'] = paramMap.get('search')\n || paramMap.get('structure_search')\n || paramMap.get('sequence_search')\n || paramMap.get('structure');\n\n if (paramMap.get('sequence_search')) {\n paramsDict['type'] = 'sequence';\n paramsDict['identity'] = paramMap.get('cutoff');\n paramsDict['identityType'] = paramMap.get('type');\n } else if (paramMap.get('structure_search') || paramMap.get('structure')) {\n paramsDict['cutoff'] = paramMap.get('cutoff');\n paramsDict['type'] = paramMap.get('type');\n }\n\n paramsDict['id'] = paramMap.get('sequence');\n paramsDict['seqType'] = paramMap.get('seq_type');\n\n Object.keys(paramsDict).forEach(key => {\n if (paramsDict[key] != null) {\n this.classicLinkQueryParams[key] = paramsDict[key];\n }\n });\n }\n\n if (params != null) {\n Object.keys(params).forEach(key => {\n this.classicLinkQueryParams[key] = params[key];\n });\n }\n\n let queryParamsString = '';\n Object.keys(this.classicLinkQueryParams).forEach((key, index) => {\n const separator = index && '&' || '?';\n queryParamsString += `${separator}${key}=${this.classicLinkQueryParams[key]}`;\n });\n\n this.classicLinkQueryParamsString = queryParamsString;\n }\n\n openProfile(): void {\n const dialogRef = this.dialog.open(UserProfileComponent, {\n data: {},\n width: '800px'\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n importDialog(): void {\n const dialogRef = this.dialog.open(SubstanceEditImportDialogComponent, {\n width: '650px',\n autoFocus: false\n\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe(response => {\n if (response) {\n this.overlayContainer.style.zIndex = null;\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigateByUrl('/substances/register?action=import', { state: { record: response } });\n }\n });\n\n }\n\n logout() {\n this.authService.logout();\n setTimeout(() => {\n this.router.navigate(['/home']);\n }, 1200);\n }\n\n viewDrafts(): void {\n const dialogRef = this.dialog.open(SubstanceDraftsComponent, {\n maxHeight: '85%',\n width: '70%',\n data: {view: 'user'}\n });\n this.overlayContainer.style.zIndex = '1002';\n \n dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n \n \n if (response) {\n this.loadingService.setLoading(true);\n // console.log(response.json);\n \n const read = response.substance;\n \n if (response.uuid && response.uuid != 'register'){\n const url = '/substances/' + response.uuid + '/edit?action=import&source=draft';\n this.router.navigateByUrl(url, { state: { record: response.substance } });\n } else {\n setTimeout(() => {\n // this.overlayContainer.style.zIndex = null;\n this.router.onSameUrlNavigation = 'reload';\n let url = '/substances/register/' + response.substance.substanceClass + '?action=import'\n this.router.navigateByUrl(url, { state: { record: response.substance } });\n \n }, 500);\n }\n }\n \n \n });\n }\n\n}\n","
    \r\n \r\n \r\n\r\n\r\n\r\n
    \r\n
    \r\n \r\n \r\n

    Quick Links

    \r\n
    \r\n \r\n \r\n \r\n \r\n Substances\r\n \r\n \r\n\r\n \r\n \r\n \r\n Browse Substances\r\n \r\n \r\n\r\n \r\n \r\n Structure Search\r\n \r\n \r\n \r\n \r\n Sequence Search\r\n \r\n \r\n \r\n \r\n Advanced Search\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n Other\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Browse Applications\r\n \r\n \r\n \r\n \r\n \r\n \r\n Browse Products\r\n \r\n \r\n \r\n \r\n \r\n \r\n Browse Clinical Trials\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Browse Adverse Events\r\n Other\r\n Other\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n Register\r\n \r\n \r\n \r\n \r\n \r\n Chemical\r\n \r\n \r\n \r\n \r\n Protein\r\n \r\n \r\n \r\n \r\n Polymer\r\n \r\n \r\n \r\n \r\n Nucleic Acid\r\n \r\n \r\n \r\n \r\n Structurally Diverse\r\n \r\n \r\n \r\n \r\n Concept\r\n \r\n \r\n \r\n \r\n Mixture\r\n \r\n \r\n\r\n \r\n \r\n\r\n Specified Substance Group 1\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n Register Other\r\n \r\n \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n Product\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Application\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Impurities\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n\r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \"first\r\n
    \r\n
    \r\n \"second\r\n
    \r\n
    \r\n \"third\r\n
    \r\n
    \r\n \"fourth\r\n
    \r\n
    \r\n\r\n
    \r\n

    Global Substance Registration System - GSRS

    \r\n
    \r\n GSRS has been developed to assist regulators in managing substance information. It was designed to facilitate global monitoring of human and animal medicinal, food, tobacco, and cosmetic products. GSRS provides unique substance identifiers consistent with the ISO 11238 standard. FDA’s GSRS specifically generates the Unique Ingredient Identifiers (UNIIs) used in electronic listing and other regulatory activities.\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n Browse Applications\r\n
    \r\n \r\n
    \r\n Sequence Search\r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n Total substances: {{total | number:'1.0':'en-US'}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{link.display}}\r\n
    \r\n
    \r\n {{link.total | number:'1.0':'en-US'}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n

    Helpful Resources

    \r\n
    \r\n
    \r\n \r\n\r\n

    GSRSFind Excel tools

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    GSRSFind is an add-in for Microsoft Excel that gives a user access to data in GSRS for both search/browse and creation/modification purposes. (Note: write access requires valid credentials!)\r\n GSRSFind can augment an existing spreadsheet with data from GSRS. For example, you can add chemical structures to a column of names or identifiers.\r\n
    \r\n
    \r\n\r\n \r\n

    {{excelCard.title? excelCard.title : 'no tile'}}

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n

    GSRS User Guide

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    GSRS User Guide

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    The GSRS user guide is comprehensive set of instructions for searching and registering new substances of all types in GSRS.\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    GSRS Data Dictionary

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n

    GSRS Data Dictionary

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    The GSRS Data Dictionary is a comprehensive spreadsheet of all properties of the substance object used by GSRS. You will find descriptions, relative paths, data types, and more for every property present in the GSRS substance model.\r\n
    \r\n \r\n
    \r\n\r\n \r\n

    GSRS API Documentation

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    Swagger documentation of the GSRS API calls with working examples and implementation notes.\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n

    GSRS JSON schema

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    This file contains a JSON formatted schema used by GSRS for recording substances to help visualize the substance object described by the GSRS Data Dictionary.\r\n
    \r\n
    \r\n \r\n

    ISO 11238 Standard

    \r\n
    \r\n \"GSRS\r\n
    \r\n
    ISO 11238 is the standard that all substance data used by GSRS conforms to. ISO 11238 Substance Identification (SubID) provides an information model to define and identify substances within medicinal products or substances used for medicinal purposes.\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    ","import { Component, OnInit, ViewChild, AfterViewInit, HostListener } from '@angular/core';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\r\nimport { Environment } from 'src/environments/environment.model';\r\nimport { AuthService } from '@gsrs-core/auth';\r\nimport { Router, NavigationExtras } from '@angular/router';\r\nimport { SubstanceService } from '@gsrs-core/substance';\r\nimport { take } from 'rxjs/operators';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatSidenav } from '@angular/material/sidenav';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { UtilsService } from '@gsrs-core/utils';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.scss']\r\n})\r\nexport class HomeComponent implements OnInit, AfterViewInit {\r\n environment: Environment;\r\n baseDomain: string;\r\n isAuthenticated = false;\r\n contactEmail: string;\r\n isClosedWelcomeMessage = true;\r\n imageLoc: any;\r\n appId: string;\r\n customLinks: Array;\r\n total: string;\r\n isCollapsed = true;\r\n hasBackdrop = false;\r\n bannerMessage?: string;\r\n usefulLinks?: Array;\r\n excelCard?: any;\r\n guideCard?: any;\r\n dictionaryCard?: any;\r\n \r\n \r\n // these may be necessary due to a strange quirk\r\n // of angular and ngif\r\n searchValue: string;\r\n loadedComponents: LoadedComponents;\r\n \r\n \r\n private overlayContainer: HTMLElement;\r\n @ViewChild('matSideNavInstance', { static: true }) matSideNav: MatSidenav;\r\n\r\n\r\n browseAll: string;\r\n application: string;\r\n chemicon: string;\r\n clasicBaseHref: string;\r\n\r\n // Config for Adverse Event on Shiny Server\r\n adverseEventShinyHomepageDisplay = false;\r\n adverseEventShinyHomepageURL: string;\r\n\r\n constructor(\r\n private gaService: GoogleAnalyticsService,\r\n private configService: ConfigService,\r\n private authService: AuthService,\r\n private substanceService: SubstanceService,\r\n private router: Router,\r\n private dialog: MatDialog,\r\n private overlayContainerService: OverlayContainer,\r\n public utilsService: UtilsService,\r\n\r\n ) {\r\n this.contactEmail = this.configService.configData.contactEmail;\r\n this.clasicBaseHref = this.configService.environment.clasicBaseHref;\r\n }\r\n\r\n ngOnInit() {\r\n this.environment = this.configService.environment;\r\n this.application = `${this.configService.environment.baseHref || ''}assets/icons/home/icon_application.png`;\r\n this.browseAll = `${this.configService.environment.baseHref || ''}assets/icons/home/icon_browseall.png`;\r\n this.chemicon = `${this.configService.environment.baseHref || ''}assets/icons/home/icon_registersubstance.png`;\r\n\r\n this.appId = this.configService.environment.appId;\r\n this.bannerMessage = this.configService.configData.bannerMessage || null;\r\n this.loadedComponents = this.configService.configData.loadedComponents || null;\r\n // this code cause memory errors in the build process\r\n /*let notempty = false;\r\n for (const property in this.loadedComponents) {\r\n if (this.loadedComponents[property] === true) {\r\n notempty = true;\r\n }\r\n }\r\n if (!notempty) {\r\n this.loadedComponents = null;\r\n }*/\r\n\r\n\r\n \r\n//this is to set the groundwork for having all the 'useful links be dynamically rendered. Right now we are only doing this for excel tools through.\r\n \r\n if (this.configService.configData.usefulLinks) {\r\n this.configService.configData.usefulLinks.forEach (link => {\r\n if (link.title === 'GSRSFind Excel tools') {\r\n this.excelCard = link;\r\n }\r\n if (link.title === 'GSRS User Guide') {\r\n this.guideCard = link;\r\n }\r\n if (link.title === 'GSRS Data Dictionary') {\r\n this.dictionaryCard = link;\r\n }\r\n });\r\n }\r\n\r\n let notempty = false;\r\n if (this.loadedComponents) {\r\n if (this.loadedComponents.applications) {\r\n notempty = true;\r\n } else if (this.loadedComponents.clinicaltrials) {\r\n notempty = true;\r\n } else if (this.loadedComponents.adverseevents) {\r\n notempty = true;\r\n } else if (this.loadedComponents.impurities) {\r\n notempty = true;\r\n } else if (this.loadedComponents.products) {\r\n notempty = true;\r\n }\r\n\r\n if (!notempty) {\r\n this.loadedComponents = null;\r\n }\r\n }\r\n\r\n this.imageLoc = `${this.environment.baseHref || ''}assets/images/home/`;\r\n\r\n\r\n this.authService.hasAnyRolesAsync('DataEntry', 'SuperDataEntry', 'Admin').subscribe(response => {\r\n this.isAuthenticated = response;\r\n });\r\n this.gaService.sendPageView(`Home`);\r\n this.baseDomain = this.configService.configData.apiUrlDomain;\r\n this.customLinks = this.configService.configData.homeDynamicLinks || [];\r\n this.customLinks.forEach (link => {\r\n link.total = 0;\r\n const searchStr = `${link.facetName}:${link.facetValue}`;\r\n this.substanceService.searchSingleFacetSimpleCount(link.facetName, link.facetValue).pipe(take(1)).subscribe( response => {\r\n if (response){\r\n link.total = Number(response.total);\r\n } else {\r\n link.total = 0;\r\n }\r\n });\r\n });\r\n this.substanceService.getRecordCount().subscribe( response => {\r\n this.total = response;\r\n });\r\n // this.isClosedWelcomeMessage = localStorage.getItem('isClosedWelcomeMessage') === 'false';\r\n this.isClosedWelcomeMessage = false;\r\n\r\n this.getAdverseEventShinyConfig();\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n\r\n }\r\nngAfterViewInit(){\r\n this.processResponsiveness();\r\n const openSubscription = this.matSideNav.openedStart.subscribe(() => {\r\n this.utilsService.handleMatSidenavOpen(1100);\r\n });\r\n const closeSubscription = this.matSideNav.closedStart.subscribe(() => {\r\n this.utilsService.handleMatSidenavClose();\r\n });\r\n\r\n}\r\n\r\n@HostListener('window:resize', ['$event'])\r\nonResize() {\r\n this.processResponsiveness();\r\n}\r\n\r\nprivate processResponsiveness = () => {\r\n setTimeout(() => {\r\n if (window) {\r\n if (window.innerWidth < 1100) {\r\n this.matSideNav.close();\r\n this.isCollapsed = true;\r\n this.hasBackdrop = true;\r\n } else {\r\n this.matSideNav.open();\r\n this.hasBackdrop = false;\r\n }\r\n }\r\n });\r\n}\r\n openSideNav() {\r\n this.gaService.sendEvent('substancesFiltering', 'button:sidenav', 'open');\r\n this.matSideNav.open();\r\n }\r\n\r\n routeToCustom(link) {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: { 'facets': link.facetName + '*' + link.facetValue + '.true' }\r\n };\r\n this.router.navigate(['/browse-substance'], navigationExtras);\r\n }\r\n\r\n closeWelcomeMessage(): void {\r\n this.isClosedWelcomeMessage = true;\r\n localStorage.setItem('isClosedWelcomeMessage', this.isClosedWelcomeMessage.toString());\r\n }\r\n\r\n browseSubstances(): void {\r\n this.router.navigate(['/browse-substance']);\r\n }\r\n\r\n openModal(templateRef) {\r\n\r\n const dialogRef = this.dialog.open(templateRef, {\r\n height: '200px',\r\n width: '400px'\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n\r\n increaseMenuZindex(): void {\r\n this.overlayContainer.style.zIndex = '1001';\r\n }\r\n\r\n removeZindex(): void {\r\n this.overlayContainer.style.zIndex = null;\r\n }\r\n\r\n processSubstanceSearch(searchValue: string) {\r\n this.navigateToSearchResults(searchValue);\r\n }\r\n\r\n navigateToSearchResults(searchTerm: string) {\r\n\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: searchTerm ? { 'search': searchTerm } : null\r\n };\r\n\r\n this.router.navigate(['/browse-substance'], navigationExtras);\r\n }\r\n\r\n getAdverseEventShinyConfig(): void {\r\n if (this.configService.configData) {\r\n if (this.configService.configData.adverseEventShinyHomepageDisplay && this.configService.configData.adverseEventShinyHomepageDisplay !== null) {\r\n this.adverseEventShinyHomepageDisplay = JSON.parse(this.configService.configData.adverseEventShinyHomepageDisplay);\r\n }\r\n if (this.configService.configData.adverseEventShinyHomepageURL && this.configService.configData.adverseEventShinyHomepageURL !== null) {\r\n this.adverseEventShinyHomepageURL = this.configService.configData.adverseEventShinyHomepageURL;\r\n }\r\n }\r\n }\r\n\r\n}\r\n","
    \n \n \n \n Search\n \n \n \n \n

    \n \n Search GSRS

    \n \n \n \n \n Browse Substances\n \n \n \n \n \n \n Structure Search\n \n \n \n \n Sequence Search\n \n \n \n \n Advanced Search\n \n \n \n \n \n \n \n \n Browse Applications\n \n \n \n \n \n \n Browse Products\n \n \n \n \n \n \n Browse Clinical Trials\n \n \n \n \n \n \n \n \n Structure Search\n \n \n \n \n Sequence Search\n \n \n \n \n Advanced Search\n \n \n \n
    \n
    \n
    \n \n \n Register (Login to Register)\n \n \n
    \n \n \n
    \n
    \n
    \n\n \n \n Registrar's Quick Links\n \n \n \n \n \n\n
    \n","import { Component, OnInit } from '@angular/core';\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\nimport { ConfigService, LoadedComponents } from '@gsrs-core/config';\nimport { Environment } from 'src/environments/environment.model';\nimport { AuthService } from '@gsrs-core/auth';\nimport { Router, NavigationExtras } from '@angular/router';\nimport { SubstanceService } from '@gsrs-core/substance';\nimport { take } from 'rxjs/operators';\n@Component({\n selector: 'app-registrars',\n templateUrl: './registrars.component.html',\n styleUrls: ['./registrars.component.scss']\n})\nexport class RegistrarsComponent implements OnInit {\n\n environment: Environment;\n baseDomain: string;\n isAuthenticated = false;\n contactEmail: string;\n isClosedWelcomeMessage = true;\n imageLoc: any;\n appId: string;\n customLinks1: Array;\n customLinks2: Array;\n\n browseAll: string;\n application: string;\n chemicon: string;\n clasicBaseHref: string;\n loadedComponents: LoadedComponents;\n\n // Config for Adverse Event on Shiny Server\n adverseEventShinyHomepageDisplay = false;\n adverseEventShinyHomepageURL: string;\n\n constructor(\n private gaService: GoogleAnalyticsService,\n private configService: ConfigService,\n private authService: AuthService,\n private substanceService: SubstanceService,\n private router: Router\n ) {\n this.contactEmail = this.configService.configData.contactEmail;\n this.clasicBaseHref = this.configService.environment.clasicBaseHref;\n }\n\n ngOnInit() {\n this.environment = this.configService.environment;\n this.application = `${this.configService.environment.baseHref || ''}assets/icons/home/icon_application.png`;\n this.browseAll = `${this.configService.environment.baseHref || ''}assets/icons/home/icon_browseall.png`;\n this.chemicon = `${this.configService.environment.baseHref || ''}assets/icons/home/icon_registersubstance.png`;\n this.loadedComponents = this.configService.configData.loadedComponents || null;\n this.appId = this.configService.environment.appId;\n\n this.authService.hasAnyRolesAsync('DataEntry', 'SuperDataEntry', 'Admin').subscribe(response => {\n this.isAuthenticated = response;\n });\n this.gaService.sendPageView(`Home`);\n this.baseDomain = this.configService.configData.apiUrlDomain;\n this.customLinks1 = this.configService.configData.registrarDynamicLinks;\n this.customLinks2 = this.configService.configData.registrarDynamicLinks2;\n\n this.customLinks1.forEach (link => {\n let str = '';\n for (let i = 0; i < link.facets.length; i++) {\n\n if (i === 0) {\n str = 'facet=' + link.facets[i].facetName + '/' + link.facets[i].facetValue;\n } else {\n str += '&facet=' + link.facets[i].facetName + '/' + link.facets[i].facetValue;\n }\n }\n this.substanceService.searchFromString(str).pipe(take(1)).subscribe( response => {\n link.total = response.total;\n });\n });\n this.customLinks2.forEach (link => {\n let str = '';\n for (let i = 0; i < link.facets.length; i++) {\n\n if (i === 0) {\n str = 'facet=' + link.facets[i].facetName + '/' + link.facets[i].facetValue;\n } else {\n str += '&facet=' + link.facets[i].facetName + '/' + link.facets[i].facetValue;\n }\n }\n this.substanceService.searchFromString(str).pipe(take(1)).subscribe( response => {\n link.total = Number(response.total);\n });\n });\n this.isClosedWelcomeMessage = localStorage.getItem('isClosedWelcomeMessage') === 'true';\n this.processFacets();\n }\n\n routeToCustom(link) {\n for (let i = 0; i < link.facets.length; i++) {\n let string = '';\n if (i === 0) {\n string = 'facets:' + link.facetName + '*' + link.facetValue + '.true';\n } else {\n string += ',' + link.facetName + '*' + link.facetValue + '.true';\n }\n }\n const navigationExtras: NavigationExtras = {\n queryParams: { 'facets': link.facetName + '*' + link.facetValue + '.true' }\n };\n this.router.navigate(['/browse-substance'], navigationExtras);\n }\n\n processFacets() {\n this.customLinks1.forEach(link => {\n let str = '';\n for (let i = 0; i < link.facets.length; i++) {\n\n if (i === 0) {\n str += '' + link.facets[i].facetName + '*' + link.facets[i].facetValue + '.true';\n } else {\n str += ',' + link.facets[i].facetName + '*' + link.facets[i].facetValue + '.true';\n }\n }\n\n link.queryParams = str;\n });\n\n this.customLinks2.forEach(link => {\n let str = '';\n for (let i = 0; i < link.facets.length; i++) {\n\n if (i === 0) {\n str += '' + link.facets[i].facetName + '*' + link.facets[i].facetValue + '.true';\n } else {\n str += ',' + link.facets[i].facetName + '*' + link.facets[i].facetValue + '.true';\n }\n }\n\n link.queryParams = str;\n });\n }\n\n}\n","import { Directive, ViewContainerRef } from '@angular/core';\n\n@Directive({\n selector: '[appBrowseHeaderDynamicSection]'\n})\nexport class BrowseHeaderDynamicSectionDirective {\n\n constructor(public viewContainerRef: ViewContainerRef) { }\n\n}\n","import { EventEmitter, Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SubBrowseEmitterService {\n\n public refresh: EventEmitter = new EventEmitter();\n public cancel: EventEmitter = new EventEmitter();\n\n public setRefresh(value) {\n console.log('setting refresh as ', value);\n this.refresh.emit(value)\n }\n\n public setCancel(value) {\n console.log('setting cancel as ', value);\n this.cancel.emit(value)\n }\n\n}","import { Directive, ViewContainerRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appCardDynamicSection]'\r\n})\r\nexport class CardDynamicSectionDirective {\r\n constructor(public viewContainerRef: ViewContainerRef) { }\r\n}\r\n","

    View Molfile

    \n\n
    \n\n \n\n\n
    \n
    \n \n \n
    ","import { Component, OnInit, Inject } from '@angular/core';\nimport { SubstanceHistoryDialogComponent } from '@gsrs-core/substance-history-dialog/substance-history-dialog.component';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { StructureService } from '@gsrs-core/structure';\n\n@Component({\n selector: 'app-show-molfile-dialog',\n templateUrl: './show-molfile-dialog.component.html',\n styleUrls: ['./show-molfile-dialog.component.scss']\n})\nexport class ShowMolfileDialogComponent implements OnInit {\nmolfile: string;\n constructor(\n public dialogRef: MatDialogRef,\n private structureService: StructureService,\n @Inject(MAT_DIALOG_DATA) public data: any\n\n ) {\n }\n\n ngOnInit() {\n\n this.structureService.getMolfile(this.data.uuid).subscribe( response => {\n this.molfile = response;\n\n\n });\n}\n\n}\n","
    \n
    \n Subunit {{alignmentArray.subunitIndex}}\n {{alignmentArray.id}}\n
    \n
    \n\n  
    \n\n
    \n","import {Component, Input, OnInit} from '@angular/core';\nimport {Alignment} from '@gsrs-core/utils';\n\n@Component({\n selector: 'app-sequence-alignment',\n templateUrl: './sequence-alignment.component.html',\n styleUrls: ['./sequence-alignment.component.scss']\n})\nexport class SequenceAlignmentComponent implements OnInit {\n @Input() alignmentArray: Alignment;\n alignment: Alignment;\n text: string;\n constructor() { }\n\n ngOnInit() {\n if (this.alignmentArray && this.alignmentArray.alignments && this.alignmentArray.alignments.length) {\n this.alignment = this.alignmentArray.alignments[0];\n this.text = '';\n if (this.alignment.global) {\n this.text += 'identity: = ' + this.alignment.global.toFixed(3).toString() + ' \\n';\n }\n if (this.alignment.iden) {\n this.text += 'local: = ' + this.alignment.iden.toFixed(3).toString() + ' \\n';\n }\n if (this.alignment['sub']) {\n this.text += 'sub: = ' + this.alignment['sub'].toFixed(3).toString() + ' \\n';\n }\n if (this.alignment.score) {\n this.text += 'matched: = ' + this.alignment.score.toString() + ' \\n';\n }\n if (this.alignment.score) {\n this.text += this.alignment.alignment;\n }\n }\n }\n\n}\n","
    \n
    Substance Hierarchy
    \n 0\" [dataSource]=\"dataSource\" [treeControl]=\"treeControl\" class=\"hierarchy-tree\">\n \n
  • \n \n
    \n \n
    \n
    \n
    \n {{node.value.approvalID? node.value.approvalID : 'PENDING'}}\n {{node.relationship}}\n\n
    \n
    \n
  • \n
    \n \n
  • \n
    \n\n\n \n
    \n \n
    \n {{node.value.approvalID || 'PENDING'}}\n {{node.relationship}}\n
    \n
    \n
    \n
      \n \n
    \n
  • \n
    \n
    \n
    \n","import {Component, Input, OnInit} from '@angular/core';\nimport {NestedTreeControl} from '@angular/cdk/tree';\nimport {MatTreeNestedDataSource} from '@angular/material/tree';\nimport {SubstanceName, SubstanceRelated, SubstanceService, SubstanceSummary} from '@gsrs-core/substance';\nimport {HierarchyNode} from '@gsrs-core/substances-browse/substance-hierarchy/hierarchy.model';\nimport {AuthService} from '@gsrs-core/auth';\n\n@Component({\n selector: 'app-substance-hierarchy',\n templateUrl: './substance-hierarchy.component.html',\n styleUrls: ['./substance-hierarchy.component.scss']\n})\nexport class SubstanceHierarchyComponent implements OnInit {\n @Input() uuid: string;\n @Input() name: string;\n @Input() approvalID?: string;\n @Input() substance?: SubstanceSummary;\n treeControl = new NestedTreeControl(node => node.children);\n dataSource = new MatTreeNestedDataSource();\n selfNode: HierarchyNode;\n activeNode: any;\n isAdmin: boolean;\n hasChild = (_: number, node: any) => !!node.children && node.children.length > 0;\n constructor(\n private substanceService: SubstanceService,\n private authService: AuthService\n ) { }\n\n ngOnInit() {\n this.selfNode = {\n 'id': 0,\n 'type': 'ROOT',\n 'parent': '#',\n 'expandable': false,\n 'value': {\n 'refuuid': this.uuid,\n 'name': this.name,\n 'approvalID': this.approvalID || ''\n },\n 'relationship': ''\n };\n this.substanceService.getHierarchy(this.uuid).subscribe(resp => {\n this.loadHierarchy(resp);\n }, error => {\n this.loadHierarchy([this.selfNode]);\n });\n this.isAdmin = this.authService.hasAnyRoles('Admin', 'Updater', 'SuperUpdater');\n }\n\n loadHierarchy(orig: any): void {\n\n if (orig.length === 0) {\n orig.push(this.selfNode);\n }\n\n for (let i = 0; i < orig.length; i++) {\n const row: any = orig[i];\n if (row.depth === 0) {\n row.parent = '#';\n }\n }\n if (orig.length > 1) {\n orig = this.formatHierarchy(orig);\n }\n const temp2 = this.list_to_tree(orig);\n this.dataSource.data = temp2;\n this.activeNode = this.dataSource.data[0];\n }\n\n formatHierarchy(data: any): HierarchyNode {\n let lastID = '';\n let lastProp = '';\n const parentRemap = [];\n\n for (let i = (data.length - 1); i >= 0; i--) {\n if (data[i].depth === 0) {\n data[i].parent = '#';\n }\n const subref = data[i].value;\n data[i].relationship = '';\n if (subref.refuuid === this.uuid) {\n data[i].self = true;\n }\n\n if (!subref.approvalID && subref.linkingID && subref.linkingID.length === 10) {\n data[i].value.approvalID = data[i].value.linkingID;\n }\n if (!data[i].value.approvalID) {\n const matches = data[i].text.match(/\\[(.*?)\\]/);\n if (matches) {\n data[i].value.approvalID = matches[1];\n }\n }\n // remove children identical to parent with active moiety relationship, format text\n if ((subref.refuuid === lastID) && (lastProp.includes('HAS ACTIVE MOIETY'))) {\n parentRemap.push([data[i + 1].id, data[i].id]);\n data.splice(i + 1, 1);\n data[i].relationship += '{ACTIVE MOIETY} ';\n }\n if (data[i].type.includes('HAS ACTIVE MOIETY')) {\n data[i].relationship += '{ACTIVE FORM} ';\n } else if (data[i].type.includes('IS SALT/SOLVATE OF')) {\n data[i].relationship += '{SALT/SOLVATE} ';\n } else if (data[i].type.includes('IS SUBCONCEPT OF')) {\n data[i].relationship += '{SUBCONCEPT} ';\n } else if (data[i].type.includes('IS G1SS CONSTITUENT OF')) {\n data[i].relationship += '{G1SS} ';\n } else if ((data[i].type.length > 8 ) && (data[i].relationship = '')) {\n data[i].relationship += ' {' + data[i].type + '} ';\n }\n\n\n data[i].refuuid = data[i].value.refuuid;\n lastID = data[i].refuuid;\n lastProp = data[i].type;\n }\n // further remove self referential relationships with both salt and moiety relationship.\n data.sort(function(a, b) {\n const textA = a.refuuid.toUpperCase();\n const textB = b.refuuid.toUpperCase();\n if (textA === textB) {\n return (a.parent < b.parent) ? -1 : (a.parent > b.parent) ? 1 : 0;\n } else {\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;\n }\n });\n\n // delete duplicates entries with both active moiety and salt/ solvate relationships.\n for (let i = (data.length - 1); i >= 0; i--) {\n if (i !== data.length - 1) {\n if ((data[i].value.refuuid === data[i + 1].value.refuuid)) {\n if ((data[i].parent === data[i + 1].parent)) {\n if (data[i].type.includes('HAS ACTIVE MOIETY') && data[i + 1].type.includes('IS SALT/SOLVATE OF')) {\n parentRemap.push([data[i].id, data[i + 1].id]);\n data.splice(i, 1);\n } else if (data[i + 1].type.includes('HAS ACTIVE MOIETY') && data[i].type.includes('IS SALT/SOLVATE OF')) {\n parentRemap.push([data[i + 1].id, data[i].id]);\n data.splice(i + 1, 1);\n }\n }\n }\n }\n }\n data.sort(function(a, b) {\n return a.id - b.id;\n });\n\n for (let i = data.length - 1; i >= 0; i--) {\n for (let k = 0; k < parentRemap.length; k++) {\n if (data[i].parent === parentRemap[k][0]) {\n data[i].parent = parentRemap[k][1];\n }\n }\n }\n return data;\n }\n\n list_to_tree(list) {\n const map = {}, roots = [];\n let node, i;\n for (i = 0; i < list.length; i += 1) {\n map[list[i].id] = i;\n list[i].children = [];\n if (i === 0) {\n list[i].order = 'primary';\n\n } else if (i % 2 === 0) {\n list[i].order = 'even';\n } else {\n list[i].order = 'odd';\n }\n }\n for (i = 0; i < list.length; i += 1) {\n node = list[i];\n if (node.parent !== '#') {\n list[map[node.parent]].children.push(node);\n } else {\n roots.push(node);\n }\n }\n return roots;\n }\n}\n\n\n","import { Pipe, PipeTransform } from '@angular/core';\n@Pipe({\n name: 'namesDisplayOrder'\n})\nexport class NamesDisplayPipe implements PipeTransform {\n transform(names: Array): Array {\n names = names.slice().sort((a, b) => {\n let returned = -1;\n if (a.displayName) {\n returned = -1;\n } else if ( b.displayName === true) {\n returned = 1;\n } else if (b.preferred === true && a.displayName !== true) {\n returned = 1;\n } else if (!b.displayName && !a.displayName && a.name > b.name) {\n returned = 1;\n }\n return returned;\n });\n return names.slice(0, 4);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'take'\r\n})\r\nexport class TakePipe implements PipeTransform {\r\n\r\n transform(items: Array, num: number): Array {\r\n if (items && items.length && items.length > num) {\r\n return items.slice(0, num);\r\n } else {\r\n return items;\r\n }\r\n }\r\n\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\nimport { ConfigService } from '@gsrs-core/config';\n\n@Pipe({\n name: 'statusDisplay'\n})\nexport class SubstanceStatusPipe implements PipeTransform {\n constructor(public configService: ConfigService) {\n\n }\n transform(name: string, item2?: string): string {\n\n if(name === 'approved') {\n if(this.configService.configData && this.configService.configData.approvalCodeName) {\n return 'Validated (' + this.configService.configData.approvalCodeName + ')';\n } else {\n return 'Validated (UNII)';\n }\n } else {\n return name;\n }\n\n }\n}","\r\n \r\n \r\n {{substance._name}}\r\n \r\n 0\">\r\n \r\n \r\n
    \r\n {{substance.approvalID}}\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{substance.structure.stereochemistry}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{substance.substanceClass | facetDisplay: 'types' | uppercase}}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n similarity: {{substance._matchContext.similarity.toFixed(3)}}\r\n
    \r\n
    \r\n {{substance.definitionLevel }} DEFINITION\r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n
    \r\n\r\n \r\n \r\n subunit {{unit.subunitIndex}} ({{unit.sequence && unit.sequence.length || 0}}) similarity search\r\n \r\n \r\n\r\n \r\n\r\n \r\n Download JSON\r\n \r\n \r\n Show Molfile\r\n \r\n \r\n Download Molfile\r\n \r\n \r\n Download Molfile\r\n \r\n \r\n Download Fasta\r\n \r\n \r\n\r\n \r\n \r\n Search Structure\r\n \r\n \r\n Search Structure\r\n \r\n \r\n\r\n \r\n \r\n Advanced Structure\r\n \r\n \r\n\r\n \r\n \r\n Copy Substance to New Form\r\n \r\n \r\n Copy Definition to New Form\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    Names:
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    See {{names.length - 4}} More
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    Less
    \r\n
    \r\n
    \r\n
    \r\n
    Codes:
    \r\n
    \r\n
    \r\n
    \r\n {{codeSystemName | codeSystemDisplay | async}}\r\n\r\n : \r\n \r\n \r\n \r\n \r\n {{codeObject.code.trim()}}\r\n \r\n 1 && codeObject.type !== 'PRIMARY'\" style=\"font-size: 90%;\r\n font-weight: 400;\">[{{codeObject.type}}]\r\n\r\n \r\n \r\n {{codeObject.code.trim()}}\r\n 1 && codeObject.type !== 'PRIMARY'\" style=\"font-size: 90%;\r\n font-weight: 400;\">[{{codeObject.type}}]\r\n \r\n\r\n , \r\n \r\n \r\n 4\">\r\n {{showAll[codeSystemName] ? 'Show Less': 'Show More'}}\r\n \r\n
    \r\n
    \r\n
    See {{codeSystemNames.length - 5}} More
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{codeSystemName | codeSystemDisplay | async}}\r\n\r\n : \r\n \r\n \r\n \r\n \r\n {{codeObject.code.trim()}}\r\n \r\n 1 && codeObject.type !== 'PRIMARY'\" style = \"font-size: 90%;\r\n font-weight: 400;\">[{{codeObject.type}}]\r\n\r\n \r\n \r\n {{codeObject.code.trim()}}\r\n 1 && codeObject.type !== 'PRIMARY'\" style = \"font-size: 90%;\r\n font-weight: 400;\">[{{codeObject.type}}]\r\n \r\n\r\n , \r\n \r\n \r\n 4\">\r\n {{showAll[codeSystemName] ? 'Show Less': 'Show More'}}\r\n \r\n
    \r\n
    \r\n
    Less
    \r\n
    \r\n
    \r\n
    \r\n
    Relationships:
    \r\n
    \r\n {{substance._relationships.count}}\r\n
    \r\n
    \r\n
    \r\n
    Components:
    \r\n
    \r\n {{substance.mixture.components.length}}\r\n
    \r\n
    \r\n
    \r\n
    Constituents:
    \r\n
    \r\n {{substance.specifiedSubstance.constituents.length}}\r\n
    \r\n
    \r\n
    \r\n
    Subunits:
    \r\n
    \r\n {{substance.nucleicAcid.subunits.length}}\r\n
    \r\n
    \r\n
    \r\n
    Mol. Weight:
    \r\n
    \r\n {{substance.structure.mwt | number: rounding}}\r\n
    \r\n
    \r\n
    \r\n
    Formula:
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    Part:
    \r\n
    \r\n \r\n \r\n {{part}}\r\n , \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    Created:
    \r\n
    \r\n \r\n {{substance.created | date : 'shortDate'}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    Created By:
    \r\n
    \r\n \r\n {{substance.createdBy }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    Status:
    \r\n
    \r\n \r\n {{substance.status | statusDisplay}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    Validated By:
    \r\n
    \r\n \r\n {{substance.approvedBy }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    Validated Date:
    \r\n
    \r\n \r\n {{substance.approved| date : 'short'}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    Last Modified:
    \r\n
    \r\n \r\n {{substance.lastEdited | date : 'shortDate'}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    Last Modified By:
    \r\n
    \r\n \r\n {{substance.lastEditedBy }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    Version:
    \r\n
    \r\n \r\n {{substance.version}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, Input, Output, EventEmitter, ComponentFactoryResolver, Inject, ViewChild } from '@angular/core';\r\nimport {\r\n SubstanceDetail,\r\n SubstanceName,\r\n SubstanceSummary,\r\n SubstanceCode,\r\n SubstanceRelationship,\r\n Subunit\r\n} from '../../substance/substance.model';\r\nimport { DYNAMIC_COMPONENT_MANIFESTS, DynamicComponentManifest } from '@gsrs-core/dynamic-component-loader';\r\nimport { CardDynamicSectionDirective } from '../card-dynamic-section/card-dynamic-section.directive';\r\nimport { UtilsService } from '../../utils/utils.service';\r\nimport { SafeUrl } from '@angular/platform-browser';\r\nimport { GoogleAnalyticsService } from '@gsrs-core/google-analytics';\r\nimport { AuthService } from '@gsrs-core/auth';\r\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\r\nimport { StructureService } from '@gsrs-core/structure';\r\nimport { SubstanceSummaryDynamicContent } from './substance-summary-dynamic-content.component';\r\nimport {Router} from '@angular/router';\r\nimport {Alignment} from '@gsrs-core/utils';\r\nimport { take } from 'rxjs/operators';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ShowMolfileDialogComponent } from '@gsrs-core/substances-browse/substance-summary-card/show-molfile-dialog/show-molfile-dialog.component';\r\nimport { ConfigService } from '@gsrs-core/config';\r\n\r\n@Component({\r\n selector: 'app-substance-summary-card',\r\n templateUrl: './substance-summary-card.component.html',\r\n styleUrls: ['./substance-summary-card.component.scss']\r\n})\r\nexport class SubstanceSummaryCardComponent implements OnInit {\r\n private privateSubstance: SubstanceSummary;\r\n @Output() openImage = new EventEmitter();\r\n @Input() showAudit: boolean;\r\n isAdmin = false; //this shouldn't be called \"isAdmin\", it's typically used to mean \"canUpdate\". Should fix for future devs.\r\n canCreate = false; //meant to allow creating new records\r\n subunits?: Array;\r\n @ViewChild(CardDynamicSectionDirective, {static: true}) dynamicContentContainer: CardDynamicSectionDirective;\r\n @Input() names?: Array;\r\n @Input() codeSystemNames?: Array;\r\n// @Input() codeSystems?: { [codeSystem: string]: Array };\r\n alignments?: Array;\r\n inxightLink = false;\r\n inxightUrl: string;\r\n overlayContainer: any;\r\n rounding = '1.0-2';\r\n showAll = [];\r\n privateCodeSystems?: { [codeSystem: string]: Array };\r\n privateCodeSystemNames?: Array;\r\n allPrimary = [];\r\n showLessNames = true;\r\n showLessCodes = true;\r\n\r\n constructor(\r\n public utilsService: UtilsService,\r\n public gaService: GoogleAnalyticsService,\r\n public authService: AuthService,\r\n private substanceService: SubstanceService,\r\n private structureService: StructureService,\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private router: Router,\r\n private overlayContainerService: OverlayContainer,\r\n private dialog: MatDialog,\r\n private configService: ConfigService,\r\n @Inject(DYNAMIC_COMPONENT_MANIFESTS) private dynamicContentItems: DynamicComponentManifest[]\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n\r\n this.authService.hasAnyRolesAsync('Updater', 'SuperUpdater', 'Approver', 'admin').pipe(take(1)).subscribe(response => {\r\n if (response) {\r\n this.isAdmin = response;\r\n }\r\n });\r\n this.authService.hasAnyRolesAsync('DataEntry', 'SuperDataEntry', 'admin').pipe(take(1)).subscribe(response => {\r\n if (response) {\r\n this.canCreate = response;\r\n }\r\n });\r\n if (this.substance.protein) {\r\n this.subunits = this.substance.protein.subunits;\r\n this.getAlignments();\r\n }\r\n if (this.substance.nucleicAcid) {\r\n this.subunits = this.substance.nucleicAcid.subunits;\r\n this.getAlignments();\r\n }\r\n\r\n if (this.substance.structure && this.substance.structure.formula) {\r\n this.substance.structure.formula = this.structureService.formatFormula(this.substance.structure);\r\n }\r\n if (this.substance.approvalID) {\r\n this.substanceService.hasInxightLink(this.substance.approvalID).subscribe(response => {\r\n if (response.total && response.total > 0) {\r\n this.inxightLink = true;\r\n this.inxightUrl = 'https://drugs.ncats.io/drug/' + this.substance.approvalID;\r\n }\r\n }, error => {});\r\n } else {\r\n this.getApprovalID();\r\n }\r\n\r\n if (this.configService.configData && this.configService.configData.molWeightRounding) {\r\n this.rounding = '1.0-' + this.configService.configData.molWeightRounding;\r\n }\r\n }\r\n\r\n getApprovalID() {\r\n if (!this.substance.approvalID) {\r\n if (this.substance._approvalIDDisplay &&\r\n this.substance._approvalIDDisplay.length === 10 &&\r\n this.substance._approvalIDDisplay.indexOf(' ') < 0) {\r\n this.substance.approvalID = this.substance._approvalIDDisplay;\r\n }\r\n }\r\n }\r\n\r\n @Input()\r\n set substance(substance: SubstanceSummary) {\r\n if (substance != null) {\r\n this.privateSubstance = substance;\r\n\r\n this.loadDynamicContent();\r\n }\r\n }\r\n\r\n get substance(): SubstanceSummary {\r\n return this.privateSubstance;\r\n }\r\n\r\n @Input()\r\n set codeSystems(codeSystems: any) {\r\n if (codeSystems && this.codeSystemNames) {\r\n this.privateCodeSystems = codeSystems;\r\n this.formatCodeSystems();\r\n }\r\n }\r\n\r\n get codeSystems(): any {\r\n return this.privateCodeSystems;\r\n }\r\n\r\n formatCodeSystems() {\r\n // sort() function in substance-browse isn't working... pushing this as alternative to get all primary codes first\r\n this.codeSystemNames.forEach(sysName => {\r\n const testing = [];\r\n this.allPrimary[sysName] = 'true';\r\n this.codeSystems[sysName].forEach(code => {\r\n if (code.type === 'PRIMARY') {\r\n testing.unshift(code);\r\n } else {\r\n this.allPrimary[sysName] = 'false';\r\n testing.push(code);\r\n }\r\n });\r\n this.codeSystems[sysName] = testing;\r\n });\r\n }\r\n\r\n openImageModal(): void {\r\n this.substance.names = this.names\r\n this.openImage.emit(this.substance);\r\n }\r\n\r\n editForm(): void {\r\n this.router.navigate(['/substances/' + this.substance.uuid + '/edit']);\r\n }\r\n getFasta(id: string, filename: string): void {\r\n this.substanceService.getFasta(id).subscribe(response => {\r\n this.downloadFile(response, filename);\r\n });\r\n }\r\n\r\n getMol(id: string, filename: string): void {\r\n this.structureService.downloadMolfile(id).subscribe(response => {\r\n this.downloadFile(response, filename);\r\n });\r\n }\r\n\r\n downloadFile(response: any, filename: string): void {\r\n const dataType = response.type;\r\n const binaryData = [];\r\n binaryData.push(response);\r\n const downloadLink = document.createElement('a');\r\n downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, { type: dataType }));\r\n downloadLink.setAttribute('download', filename);\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n }\r\n\r\n loadDynamicContent(): void {\r\n const viewContainerRef = this.dynamicContentContainer.viewContainerRef;\r\n viewContainerRef.clear();\r\n if (this.configService.configData && this.configService.configData.loadedComponents){\r\n const dynamicContentItemsFlat = this.dynamicContentItems.reduce((acc, val) => acc.concat(val), [])\r\n .filter(item => item.componentType === 'summary');\r\n dynamicContentItemsFlat.forEach(dynamicContentItem => {\r\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(dynamicContentItem.component);\r\n const componentRef = viewContainerRef.createComponent(componentFactory);\r\n (componentRef.instance).substance = this.privateSubstance;\r\n });\r\n }\r\n }\r\n\r\n downloadJson() {\r\n this.substanceService.getSubstanceDetails(this.substance.uuid).pipe(take(1)).subscribe(response => {\r\n this.downloadFile(JSON.stringify(response), this.substance.uuid + '.json');\r\n });\r\n }\r\n\r\n getAlignments(): void {\r\n if (this.substance._matchContext) {\r\n if (this.substance._matchContext.alignments) {\r\n this.alignments = this.substance._matchContext.alignments;\r\n this.alignments.forEach(alignment => {\r\n this.subunits.forEach(subunit => {\r\n if (subunit.uuid === alignment.id) {\r\n alignment.subunitIndex = subunit.subunitIndex;\r\n }\r\n });\r\n });\r\n }\r\n }\r\n }\r\n\r\n openMolModal() {\r\n\r\n const dialogRef = this.dialog.open(ShowMolfileDialogComponent, {\r\n minWidth: '40%',\r\n maxWidth: '90%',\r\n height: '90%',\r\n data: {uuid: this.substance.uuid, approval: this.substance.approvalID}\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n moreThanNumberCount(names, number) {\r\n if(names.length < number) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n showMoreLessNames() {\r\n this.showLessNames = !this.showLessNames;\r\n }\r\n\r\n showMoreLessCodes() {\r\n this.showLessCodes = !this.showLessCodes;\r\n }\r\n\r\n\r\n}\r\n","\n \n \n Facet View:\n \n \n {{option}}\n \n \n \n \n \n \n \n \n
    \n
    \n Your search did not return any results. Please try modifying it or\n click here to clear all your search criteria.\n
    \n
    0)\">\n Your search did not return any results within the default fields. However, this query has some results if you restrict your search to specific fields below.\n
    \n
    \n
    \n
    \n Search Query: \n {{this.searchTerm}}\n
    \n
    \n \n \n
    \n
    \n
    \n
    \n {{structureSearchTerm && searchType}} Query:\n  \n \n \n \n \n  ≥ {{searchCutoff}}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n Sequence Query:\n  \n \n {{getSequenceDisplay(sequenceSearchTerm)}}\n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    0)\">\n
    0; else filterParameters\">\n
    \n
    \n
    \n Would you like to restrict this search to a field?\n
     \n \n \n \n \n
    \n
    \n
    Other Match
    \n
    Exact Match
    \n
    Contains Match
    \n
    Contains Match
    \n
    Contains Match
    \n
    No Match
    \n
    Unknown Match
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n For more options use the Advanced Search\n
    \n
    \n
    \n \n
    \n
    \n
    \n Search Query: \n {{this.searchTerm}}\n
    \n\n\n
    \n \n \n
    \n
    \n\n
    \n
    \n \n \n {{facet.type}}:\n \n \n {{facet.val}}\n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n {{structureSearchTerm && searchType}} Query:\n  \n \n \n \n \n  ≥ {{searchCutoff}}\n \n \n
    \n
    \n \n \n \n \n \n \n
    \n
    \n
    \n
    \n Sequence Query:\n  \n \n {{getSequenceDisplay(sequenceSearchTerm)}}\n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n

    Results below are an incomplete preview

    \n
    \n
    \n \n
    \n

    searching... {{totalSubstances}} matches

    \n \n \n
    \n

    Page will auto-reload when search is complete

    \n
    \n
    \n
    \n
    \n Browse Substances\n
    \n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n Sort By\n \n \n {{option.display}}\n \n \n \n \n \n {{option.displayname}}\n \n \n Include Private Data\n \n \n\n
    \n \n
    \n\n
    \n
    \n
    \n
    \n \n \n \n \n \n
    \n \n \n \n\n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n \n
    \n
    \n
    \n\n
    \n \n \n
    \n
    \n
    \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n \n
    Name Approval ID {{substance.approvalID}} Names \n \n
    \n \n ; \n
    \n
    \n
    Codes \n \n \n
    \n {{codeSystemName}}: \n \n \n \n {{codeObject.code.trim()}}\n \n \n {{codeObject.code.trim()}}\n , \n \n
    \n
    \n \n
    Actions \n \n \n \n\n \n\n \n \n \n\n \n\n \n \n Download JSON\n \n \n \n Download Molfile\n \n \n Download Molfile\n \n \n Download Fasta\n \n \n \n\n \n \n Search Structure\n \n \n Search Structure\n \n \n\n \n \n Copy Substance to New Form\n \n \n Copy Definition to New Form\n \n \n
    \n
    \n
    \n
    \n \n \n \n \n\n \n
    \n
    \n
    \n
    \n \n {{substance.structure.stereochemistry}}\n \n
    \n
    \n
    \n
    \n \n {{substance.substanceClass | facetDisplay: 'types' | uppercase}}\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n
    \n
    \n
    \n similarity: {{substance._matchContext.similarity.toFixed(3)}}\n
    \n
    \n \n \n 0\">\n \n
    \n
    \n \n \n \n \n\n \n\n \n \n \n\n \n \n
    \n\n
    \n\n\n \n\n \n Download JSON\n \n\n \n Download Molfile\n \n \n Download Molfile\n \n \n Download Fasta\n \n \n\n \n \n Search Structure\n \n \n Search Structure\n \n \n\n \n \n Copy Substance to New Form\n \n \n Copy Definition to New Form\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n Page: \n \n \n \n of {{lastPage}}\n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n
    \n There is one exact (name, standardized name or code) match for {{this.searchTerm}}\n
    \n \n
    \n
    \n \n \n
    \n
    \n","import {\n Component,\n OnInit,\n ViewChild,\n AfterViewInit,\n HostListener,\n OnDestroy,\n TemplateRef,\n Inject,\n ComponentFactoryResolver,\n ViewChildren,\n QueryList\n} from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { SubstanceService } from '../substance/substance.service';\nimport { SubstanceDetail, SubstanceName, SubstanceCode } from '../substance/substance.model';\nimport { ConfigService } from '../config/config.service';\nimport * as _ from 'lodash';\nimport { LoadingService } from '../loading/loading.service';\nimport { MainNotificationService } from '../main-notification/main-notification.service';\nimport { AppNotification, NotificationType } from '../main-notification/notification.model';\nimport { MatDialog } from '@angular/material/dialog';\nimport { PageEvent } from '@angular/material/paginator';\nimport { UtilsService } from '../utils/utils.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { StructureImageModalComponent } from '../structure/structure-image-modal/structure-image-modal.component';\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\nimport { environment } from '../../../environments/environment';\nimport { AuthService } from '../auth/auth.service';\nimport { searchSortValues } from '../utils/search-sort-values';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { Location } from '@angular/common';\nimport { StructureService } from '@gsrs-core/structure';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { NarrowSearchSuggestion } from '@gsrs-core/utils';\nimport { FacetParam } from '@gsrs-core/facets-manager';\nimport { Facet, FacetUpdateEvent } from '../facets-manager/facet.model';\nimport { FacetsManagerService } from '@gsrs-core/facets-manager';\nimport { DisplayFacet } from '@gsrs-core/facets-manager/display-facet';\nimport { SubstanceTextSearchService } from '@gsrs-core/substance-text-search/substance-text-search.service';\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\n// eslint-disable-next-line max-len\nimport { BrowseHeaderDynamicSectionDirective } from '@gsrs-core/substances-browse/browse-header-dynamic-section/browse-header-dynamic-section.directive';\nimport { DYNAMIC_COMPONENT_MANIFESTS, DynamicComponentManifest } from '@gsrs-core/dynamic-component-loader';\nimport { SubstanceBrowseHeaderDynamicContent } from '@gsrs-core/substances-browse/substance-browse-header-dynamic-content.component';\nimport { Title } from '@angular/platform-browser';\nimport { ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { FormControl } from '@angular/forms';\nimport { SubBrowseEmitterService } from './sub-browse-emitter.service';\nimport { WildcardService } from '@gsrs-core/utils/wildcard.service';\nimport { I } from '@angular/cdk/keycodes';\n\n@Component({\n selector: 'app-substances-browse',\n templateUrl: './substances-browse.component.html',\n styleUrls: ['./substances-browse.component.scss']\n})\nexport class SubstancesBrowseComponent implements OnInit, AfterViewInit, OnDestroy {\n private privateSearchTerm?: string;\n private privateStructureSearchTerm?: string;\n private privateSequenceSearchTerm?: string;\n private privateSearchType?: string;\n private privateSearchCutoff?: number;\n private privateSearchSeqType?: string;\n private privateSequenceSearchKey?: string;\n public substances: Array;\n public exactMatchSubstances: Array;\n pageIndex: number;\n pageSize: number;\n test: any;\n pageCount: number;\n invalidPage = false;\n totalSubstances: number;\n isLoading = true;\n lastPage: number;\n etag: string;\n privateExport = false;\n disableExport = false;\n isError = false;\n isRefresher = false;\n @ViewChildren(BrowseHeaderDynamicSectionDirective) dynamicContentContainer: QueryList;\n @ViewChild('matSideNavInstance', { static: true }) matSideNav: MatSidenav;\n hasBackdrop = false;\n view = 'cards';\n displayedColumns: string[] = ['name', 'approvalID', 'names', 'codes', 'actions'];\n public smiles: string;\n private argsHash?: number;\n public order: string;\n public sortValues = searchSortValues;\n showAudit: boolean;\n private overlayContainer: HTMLElement;\n private subscriptions: Array = [];\n isAdmin = false;\n isLoggedIn = false;\n showExactMatches = false;\n names: { [substanceId: string]: Array } = {};\n codes: {\n [substanceId: string]: {\n codeSystemNames?: Array\n codeSystems?: { [codeSystem: string]: Array }\n }\n } = {};\n narrowSearchSuggestions?: { [matchType: string]: Array } = {};\n matchTypes?: Array = [];\n narrowSearchSuggestionsCount = 0;\n private isComponentInit = false;\n sequenceID?: string;\n searchHashFromAdvanced: string;\n\n // needed for facets\n private privateFacetParams: FacetParam;\n rawFacets: Array;\n public displayFacets: Array = [];\n private isFacetsParamsInit = false;\n isCollapsed = true;\n exportOptions: Array;\n private searchTermHash: number;\n isSearchEditable = false;\n showDeprecated = false;\n codeSystem: any;\n previousState: Array = [];\n facetViewCategorySelected = 'Default';\n facetDisplayType = 'facetView';\n facetViewCategory: Array = [];\n facetViewControl = new FormControl();\n private wildCardText: string;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private substanceService: SubstanceService,\n public configService: ConfigService,\n public emitService: SubBrowseEmitterService,\n private loadingService: LoadingService,\n private notificationService: MainNotificationService,\n public utilsService: UtilsService,\n private router: Router,\n private dialog: MatDialog,\n public gaService: GoogleAnalyticsService,\n public authService: AuthService,\n private structureService: StructureService,\n private overlayContainerService: OverlayContainer,\n private location: Location,\n private facetManagerService: FacetsManagerService,\n private componentFactoryResolver: ComponentFactoryResolver,\n private substanceTextSearchService: SubstanceTextSearchService,\n private title: Title,\n private cvService: ControlledVocabularyService,\n private wildCardService: WildcardService,\n @Inject(DYNAMIC_COMPONENT_MANIFESTS) private dynamicContentItems: DynamicComponentManifest[],\n\n ) {\n }\n\n @HostListener('window:popstate', ['$event'])\n onPopState(event) {\n setTimeout(() => {\n if (this.router.url === this.previousState[0]) {\n this.ngOnInit();\n }\n\n }, 50);\n }\n\n saveWildCardText() {\n this.wildCardService.getWildCardText(this.wildCardText);\n }\n\n wildCardSearch() {\n this.wildCardService.getWildCardText(this.wildCardText);\n this.setUpPrivateSearchTerm();\n this.searchSubstances();\n }\n\n ngOnInit() {\n this.facetManagerService.registerGetFacetsHandler(this.substanceService.getSubstanceFacets);\n this.gaService.sendPageView('Browse Substances');\n this.cvService.getDomainVocabulary('CODE_SYSTEM').pipe(take(1)).subscribe(response => {\n this.codeSystem = response['CODE_SYSTEM'].dictionary;\n\n });\n this.title.setTitle('Browse Substances');\n\n this.pageSize = 10;\n this.pageIndex = 0;\n\n this.setUpPrivateSearchTerm();\n\n this.privateStructureSearchTerm = this.activatedRoute.snapshot.queryParams['structure_search'] || '';\n this.privateSequenceSearchTerm = this.activatedRoute.snapshot.queryParams['sequence_search'] || '';\n this.privateSequenceSearchKey = this.activatedRoute.snapshot.queryParams['sequence_key'] || '';\n\n this.privateSearchType = this.activatedRoute.snapshot.queryParams['type'] || '';\n if (this.activatedRoute.snapshot.queryParams['sequence_key'] && this.activatedRoute.snapshot.queryParams['sequence_key'].length > 9) {\n this.sequenceID = this.activatedRoute.snapshot.queryParams['source_id'];\n this.privateSequenceSearchTerm = JSON.parse(sessionStorage.getItem('gsrs_search_sequence_' + this.sequenceID));\n }\n this.privateSearchCutoff = Number(this.activatedRoute.snapshot.queryParams['cutoff']) || 0;\n this.privateSearchSeqType = this.activatedRoute.snapshot.queryParams['seq_type'] || '';\n this.smiles = this.activatedRoute.snapshot.queryParams['smiles'] || '';\n this.order = this.activatedRoute.snapshot.queryParams['order'] || '$root_lastEdited';\n this.view = this.activatedRoute.snapshot.queryParams['view'] || 'cards';\n this.pageSize = parseInt(this.activatedRoute.snapshot.queryParams['pageSize'], null) || 10;\n const deprecated = this.activatedRoute.snapshot.queryParams['showDeprecated'];\n this.searchHashFromAdvanced = this.activatedRoute.snapshot.queryParams['g-search-hash'];\n if (this.pageSize > 500) {\n this.pageSize = 500;\n }\n this.pageIndex = parseInt(this.activatedRoute.snapshot.queryParams['pageIndex'], null) || 0;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n const authSubscription = this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.isLoggedIn = true;\n } else {\n this.showDeprecated = false;\n }\n this.isAdmin = this.authService.hasAnyRoles('Updater', 'SuperUpdater');\n this.showAudit = this.authService.hasRoles('admin');\n\n });\n if (deprecated && deprecated === 'true' && this.showAudit) {\n this.showDeprecated = true;\n }\n\n this.subscriptions.push(authSubscription);\n this.isComponentInit = true;\n this.loadComponent();\n\n this.loadFacetViewFromConfig();\n }\n\n setUpPrivateSearchTerm() {\n this.privateSearchTerm = this.activatedRoute.snapshot.queryParams['search'] || '';\n if(this.wildCardText && this.wildCardText.length > 0) {\n if(this.privateSearchTerm.length > 0) {\n this.privateSearchTerm += ' AND \"' + this.wildCardText + '\"';\n } else {\n this.privateSearchTerm += '\"' + this.wildCardText + '\"';\n }\n }\n if (this.privateSearchTerm) {\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n }\n }\n\n ngAfterViewInit() {\n const openSubscription = this.matSideNav.openedStart.subscribe(() => {\n this.utilsService.handleMatSidenavOpen(1100);\n });\n this.subscriptions.push(openSubscription);\n const closeSubscription = this.matSideNav.closedStart.subscribe(() => {\n this.utilsService.handleMatSidenavClose();\n });\n this.subscriptions.push(closeSubscription);\n const dynamicSubscription = this.dynamicContentContainer.changes.subscribe((comps: QueryList) => {\n const container = this.dynamicContentContainer.toArray();\n const dynamicContentItemsFlat = this.dynamicContentItems.reduce((acc, val) => acc.concat(val), [])\n .filter(item => item.componentType === 'browseHeader');\n if (container[0] != null) {\n const viewContainerRef = container[0].viewContainerRef;\n viewContainerRef.clear();\n\n dynamicContentItemsFlat.forEach(dynamicContentItem => {\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(dynamicContentItem.component);\n const componentRef = viewContainerRef.createComponent(componentFactory);\n (componentRef.instance).test = 'testing';\n });\n }\n });\n this.subscriptions.push(dynamicSubscription);\n\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n this.facetManagerService.unregisterFacetSearchHandler();\n }\n\n @HostListener('window:resize', ['$event'])\n onResize() {\n this.processResponsiveness();\n }\n\n private loadComponent(): void {\n\n if (this.isFacetsParamsInit && this.isComponentInit || this.isRefresher) {\n this.searchSubstances();\n } else {\n }\n }\n\n clipboard(value: string) {\n document.addEventListener('copy', (e: ClipboardEvent) => {\n e.clipboardData.setData('text/plain', (value));\n e.preventDefault();\n document.removeEventListener('copy', null);\n });\n document.execCommand('copy');\n }\n\n changePage(pageEvent: PageEvent) {\n\n let eventAction;\n let eventValue;\n\n if (this.pageSize !== pageEvent.pageSize) {\n eventAction = 'select:page-size';\n eventValue = pageEvent.pageSize;\n } else if (this.pageIndex !== pageEvent.pageIndex) {\n eventAction = 'icon-button:page-number';\n eventValue = pageEvent.pageIndex + 1;\n }\n\n this.gaService.sendEvent('substancesContent', eventAction, 'pager', eventValue);\n\n this.pageSize = pageEvent.pageSize;\n this.pageIndex = pageEvent.pageIndex;\n this.populateUrlQueryParameters();\n this.searchSubstances();\n }\n\n customPage(event: any): void {\n if (this.validatePageInput(event)) {\n this.invalidPage = false;\n const newpage = Number(event.target.value) - 1;\n this.pageIndex = newpage;\n this.gaService.sendEvent('substancesContent', 'select:page-number', 'pager', newpage);\n this.populateUrlQueryParameters();\n this.searchSubstances();\n }\n }\n\n validatePageInput(event: any): boolean {\n if (event && event.target) {\n const newpage = Number(event.target.value);\n if (!isNaN(Number(newpage))) {\n if ((Number.isInteger(newpage)) && (newpage <= this.lastPage) && (newpage > 0)) {\n return true;\n }\n }\n }\n return false;\n }\n // for facets\n facetsParamsUpdated(facetsUpdateEvent: FacetUpdateEvent): void {\n this.pageIndex = 0;\n if (facetsUpdateEvent.deprecated && facetsUpdateEvent.deprecated === true) {\n this.showDeprecated = true;\n } else {\n this.showDeprecated = false;\n }\n this.privateFacetParams = facetsUpdateEvent.facetParam;\n this.displayFacets = facetsUpdateEvent.displayFacets.filter(facet => !(facet.type === 'Deprecated' && facet.bool === false));\n if (!this.isFacetsParamsInit) {\n this.isFacetsParamsInit = true;\n this.loadComponent();\n } else {\n this.searchSubstances();\n }\n }\n\n facetViewChange(event): void {\n this.facetViewCategorySelected = event.value;\n }\n\n openedSortSubstances(event: any) {\n if (event) {\n this.overlayContainer.style.zIndex = '1002';\n } else {\n this.overlayContainer.style.zIndex = '1000';\n }\n }\n\n openedFacetViewChange(event: any) {\n if (event) {\n this.overlayContainer.style.zIndex = '1002';\n } else {\n this.overlayContainer.style.zIndex = '1000';\n }\n }\n\n loadFacetViewFromConfig() {\n this.facetViewControl.setValue(this.facetViewCategorySelected);\n const facetConf = this.configService.configData.facets && this.configService.configData.facets['substances'] || {};\n facetConf['facetView'].forEach(categoryRow => {\n const category = categoryRow['category'];\n this.facetViewCategory.push(category);\n });\n this.facetViewCategory.push('All');\n }\n\n // for facets\n facetsLoaded(numFacetsLoaded: number) {\n if (numFacetsLoaded > 0) {\n this.processResponsiveness();\n } else {\n this.matSideNav.close();\n }\n }\n\n searchSubstances() {\n this.disableExport = false;\n const newArgsHash = this.utilsService.hashCode(\n this.privateSearchTerm,\n this.privateStructureSearchTerm,\n this.privateSequenceSearchTerm,\n this.privateSearchCutoff,\n this.privateSearchType,\n this.privateSearchSeqType,\n this.pageSize,\n this.order,\n this.privateFacetParams,\n (this.pageIndex * this.pageSize),\n this.showDeprecated\n );\n if (this.argsHash == null || this.argsHash !== newArgsHash) {\n this.isLoading = true;\n this.loadingService.setLoading(true);\n this.argsHash = newArgsHash;\n const skip = this.pageIndex * this.pageSize;\n const subscription = this.substanceService.getSubstancesSummaries({\n searchTerm: this.privateSearchTerm,\n structureSearchTerm: this.privateStructureSearchTerm,\n sequenceSearchTerm: this.privateSequenceSearchTerm,\n cutoff: this.privateSearchCutoff,\n type: this.privateSearchType,\n seqType: this.privateSearchSeqType,\n order: this.order,\n pageSize: this.pageSize,\n facets: this.privateFacetParams,\n skip: skip,\n sequenceSearchKey: this.privateSequenceSearchKey,\n deprecated: this.showDeprecated\n })\n .subscribe(pagingResponse => {\n this.isError = false;\n this.totalSubstances = pagingResponse.total;\n if (pagingResponse.total % this.pageSize === 0) {\n this.lastPage = (pagingResponse.total / this.pageSize);\n } else {\n this.lastPage = Math.floor(pagingResponse.total / this.pageSize + 1);\n }\n\n if (pagingResponse.exactMatches && pagingResponse.exactMatches.length > 0\n && pagingResponse.skip === 0\n && (!pagingResponse.sideway || pagingResponse.sideway.length < 2)\n ) {\n this.exactMatchSubstances = pagingResponse.exactMatches;\n this.showExactMatches = true;\n }\n\n this.substances = pagingResponse.content;\n this.totalSubstances = pagingResponse.total;\n if (pagingResponse.facets && pagingResponse.facets.length > 0) {\n this.rawFacets = pagingResponse.facets;\n }\n this.narrowSearchSuggestions = {};\n this.matchTypes = [];\n this.narrowSearchSuggestionsCount = 0;\n\n if (pagingResponse.narrowSearchSuggestions && pagingResponse.narrowSearchSuggestions.length) {\n\n pagingResponse.narrowSearchSuggestions.forEach(suggestion => {\n if (this.codeSystem && this.codeSystem[suggestion.displayField]) {\n suggestion.displayField = this.codeSystem[suggestion.displayField].display;\n }\n\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n });\n\n if(this.privateSearchTerm && !this.utilsService.looksLikeComplexSearchTerm(this.privateSearchTerm)) {\n \n const lq: string = this.utilsService.makeBeginsWithSearchTerm('root_names_name', this.privateSearchTerm.toString());\n\n // The match type usually originates from the backend.\n // But below, it is specified here to make additonal match options(s) in the backend. \n // Can't figure out why the sort of matchTypes does not work.\n // I am not sure it worked before this change.\n // I would like Additional matches to appear first.\n \n let suggestion: NarrowSearchSuggestion = {\n matchType: 'ADDITIONAL',\n count: 0,\n displayField: 'Any Name Begins With',\n luceneField: 'root_names_name',\n luceneQuery: lq\n };\n this.substanceService.searchSubstances(lq).subscribe(response => {\n if(response?.total && response.total>0) {\n suggestion.count = response.total;\n if (this.narrowSearchSuggestions[suggestion.matchType] == null) {\n this.narrowSearchSuggestions[suggestion.matchType] = [];\n if (suggestion.matchType === 'WORD') {\n this.matchTypes.unshift(suggestion.matchType);\n } else {\n this.matchTypes.push(suggestion.matchType);\n }\n }\n this.narrowSearchSuggestions[suggestion.matchType].push(suggestion);\n this.narrowSearchSuggestionsCount++;\n }\n });\n }\n\n // use method sortMatchTypes in template instead\n // this.matchTypes.sort();\n\n }\n this.substanceService.getExportOptions(pagingResponse.etag).subscribe(response => {\n this.exportOptions = response.filter(exp => {\n if (exp.extension) {\n //TODO Make this generic somehow, so addditional-type exports are isolated\n if ((exp.extension === 'appxlsx') || (exp.extension === 'prodxlsx') || \n (exp.extension === 'ctusxlsx')|| (exp.extension === 'cteuxlsx')) {\n return false;\n }\n }\n return true;\n });\n });\n this.substanceService.setResult(pagingResponse.etag, pagingResponse.content, pagingResponse.total);\n }, error => {\n this.gaService.sendException('getSubstancesDetails: error from API cal');\n const notification: AppNotification = {\n message: 'There was an error trying to retrieve substances. Please refresh and try again.',\n type: NotificationType.error,\n milisecondsToShow: 6000\n };\n this.isError = true;\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n this.notificationService.setNotification(notification);\n }, () => {\n subscription.unsubscribe();\n if (this.exactMatchSubstances && this.exactMatchSubstances.length > 0) {\n this.exactMatchSubstances.forEach(substance => {\n this.setSubstanceNames(substance.uuid);\n this.setSubstanceCodes(substance.uuid);\n });\n\n }\n this.substances.forEach(substance => {\n this.setSubstanceNames(substance.uuid);\n this.setSubstanceCodes(substance.uuid);\n });\n this.isLoading = false;\n this.loadingService.setLoading(this.isLoading);\n });\n }\n\n }\n\nsortMatchTypes(a:Array) { \n return _.sortBy(a);\n}\n\nsearchTermOkforBeginsWithSearch(): boolean {\n return (this.privateSearchTerm && !this.utilsService.looksLikeComplexSearchTerm(this.privateSearchTerm));\n}\n\n\n\n restricSearh(searchTerm: string): void {\n this.privateSearchTerm = searchTerm;\n this.searchTermHash = this.utilsService.hashCode(this.privateSearchTerm);\n this.isSearchEditable = localStorage.getItem(this.searchTermHash.toString()) != null;\n this.populateUrlQueryParameters();\n this.searchSubstances();\n this.substanceTextSearchService.setSearchValue('main-substance-search', this.privateSearchTerm);\n }\n\n export(url: string, extension: string) {\n if (this.authService.getUser() !== '') {\n const dialogReference = this.dialog.open(ExportDialogComponent, {\n height: '215x',\n width: '550px',\n data: { 'extension': extension }\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n const exportSub = dialogReference.afterClosed().subscribe(name => {\n this.overlayContainer.style.zIndex = null;\n if (name && name !== '') {\n this.loadingService.setLoading(true);\n const fullname = name + '.' + extension;\n this.authService.startUserDownload(url, this.privateExport, fullname).subscribe(response => {\n this.loadingService.setLoading(false);\n this.loadingService.setLoading(false);\n const navigationExtras: NavigationExtras = {\n queryParams: {\n totalSub: this.totalSubstances\n }\n };\n const params = { 'total': this.totalSubstances };\n this.router.navigate(['/user-downloads/', response.id]);\n }, error => this.loadingService.setLoading(false));\n }\n });\n } else {\n this.disableExport = true;\n }\n\n }\n\n setSubstanceNames(substanceId: string): void {\n this.loadingService.setLoading(true);\n this.substanceService.getSubstanceNames(substanceId).pipe(take(1)).subscribe(names => {\n this.names[substanceId] = names;\n this.loadingService.setLoading(false);\n }, error => {\n this.loadingService.setLoading(false);\n });\n }\n\n setSubstanceCodes(substanceId: string): void {\n this.loadingService.setLoading(true);\n this.substanceService.getSubstanceCodes(substanceId).pipe(take(1)).subscribe(codes => {\n if (codes && codes.length > 0) {\n this.codes[substanceId] = {\n codeSystemNames: [],\n codeSystems: {}\n };\n codes.forEach(code => {\n if (this.codes[substanceId].codeSystems[code.codeSystem]) {\n this.codes[substanceId].codeSystems[code.codeSystem].push(code);\n } else {\n this.codes[substanceId].codeSystems[code.codeSystem] = [code];\n this.codes[substanceId].codeSystemNames.push(code.codeSystem);\n }\n });\n this.codes[substanceId].codeSystemNames = this.sortCodeSystems(this.codes[substanceId].codeSystemNames);\n this.codes[substanceId].codeSystemNames.forEach(sysName => {\n this.codes[substanceId].codeSystems[sysName] = this.codes[substanceId].codeSystems[sysName].sort((a, b) => {\n let test = 0;\n if (a.type === 'PRIMARY' && b.type !== 'PRIMARY') {\n test = 1;\n } else if (a.type !== 'PRIMARY' && b.type === 'PRIMARY') {\n test = -1;\n } else {\n test = 0;\n }\n return test;\n });\n });\n\n }\n this.loadingService.setLoading(false);\n }, error => {\n this.loadingService.setLoading(false);\n });\n }\n\n populateUrlQueryParameters(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n navigationExtras.queryParams['search'] = this.privateSearchTerm;\n navigationExtras.queryParams['structure_search'] = this.privateStructureSearchTerm;\n navigationExtras.queryParams['sequence_search'] = this.privateSequenceSearchTerm;\n navigationExtras.queryParams['cutoff'] = this.privateSearchCutoff;\n navigationExtras.queryParams['type'] = this.privateSearchType;\n navigationExtras.queryParams['seq_type'] = this.privateSearchSeqType;\n navigationExtras.queryParams['smiles'] = this.smiles;\n navigationExtras.queryParams['order'] = this.order;\n navigationExtras.queryParams['pageSize'] = this.pageSize;\n navigationExtras.queryParams['pageIndex'] = this.pageIndex;\n navigationExtras.queryParams['skip'] = this.pageIndex * this.pageSize;\n navigationExtras.queryParams['view'] = this.view;\n // navigationExtras.queryParams['g-search-hash'] = this.searchTermHash;\n this.previousState.push(this.router.url);\n const urlTree = this.router.createUrlTree([], {\n queryParams: navigationExtras.queryParams,\n queryParamsHandling: 'merge',\n preserveFragment: true\n });\n this.location.go(urlTree.toString());\n }\n\n editAdvancedSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'advanced search term' :\n `${this.privateSearchTerm}`;\n this.gaService.sendEvent('substancesFiltering', 'icon-button:edit-advanced-search', eventLabel);\n // Structure Search\n // const eventLabel = environment.isAnalyticsPrivate ? 'structure search term' :\n // `${this.privateStructureSearchTerm}-${this.privateSearchType}-${this.privateSearchCutoff}`;\n // this.gaService.sendEvent('substancesFiltering', 'icon-button:edit-structure-search', eventLabel);\n\n // ** BEGIN: Store in Local Storage for Advanced Search\n // storage searchterm in local storage when going from Browse Substance to Advanced Search (NOT COMING FROM ADVANCED SEARCH)\n if (!this.searchHashFromAdvanced) {\n const advSearchTerm: Array = [];\n advSearchTerm[0] = this.privateSearchTerm;\n const queryStatementHashes = [];\n const queryStatement = {\n condition: '',\n queryableProperty: 'Manual Query Entry',\n command: 'Manual Query Entry',\n commandInputValues: advSearchTerm,\n query: this.privateSearchTerm\n };\n\n // Store in cookies, Category tab (Substance, Application, etc)\n const categoryHash = this.utilsService.hashCode('Substance');\n localStorage.setItem(categoryHash.toString(), 'Substance');\n queryStatementHashes.push(categoryHash);\n\n const queryStatementString = JSON.stringify(queryStatement);\n const hash = this.utilsService.hashCode(queryStatementString);\n\n // Store in cookies, Each Query Statement is stored in separate hash\n localStorage.setItem(hash.toString(), queryStatementString);\n\n // Push Query Statements Hashes in Array\n queryStatementHashes.push(hash);\n\n // Store in cookies, store in Query Hash - Query Statement Hashes Array\n const queryStatementHashesString = JSON.stringify(queryStatementHashes);\n\n localStorage.setItem(this.searchTermHash.toString(), queryStatementHashesString);\n }\n // ** END: Store in Local Storage for Advanced Search\n\n const navigationExtras: NavigationExtras = {\n queryParams: {\n 'g-search-hash': this.searchTermHash\n }\n };\n\n navigationExtras.queryParams['structure'] = this.privateStructureSearchTerm || null;\n navigationExtras.queryParams['type'] = this.privateSearchType || null;\n\n if(this.privateSearchType === 'similarity') {\n navigationExtras.queryParams['cutoff'] = this.privateSearchCutoff || 0;\n }\n this.router.navigate(['/advanced-search'], navigationExtras);\n }\n\n editStructureSearch(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'structure search term' :\n `${this.privateStructureSearchTerm}-${this.privateSearchType}-${this.privateSearchCutoff}`;\n this.gaService.sendEvent('substancesFiltering', 'icon-button:edit-structure-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n navigationExtras.queryParams['structure'] = this.privateStructureSearchTerm || null;\n navigationExtras.queryParams['type'] = this.privateSearchType || null;\n\n if (this.privateSearchType === 'similarity') {\n navigationExtras.queryParams['cutoff'] = this.privateSearchCutoff || 0;\n }\n\n this.router.navigate(['/structure-search'], navigationExtras);\n }\n\n clearStructureSearch(): void {\n\n const eventLabel = environment.isAnalyticsPrivate ? 'structure search term' :\n `${this.privateStructureSearchTerm}-${this.privateSearchType}-${this.privateSearchCutoff}`;\n this.gaService.sendEvent('substancesFiltering', 'icon-button:clear-structure-search', eventLabel);\n\n this.privateStructureSearchTerm = '';\n this.privateSearchType = '';\n this.privateSearchCutoff = 0;\n this.smiles = '';\n this.pageIndex = 0;\n\n this.populateUrlQueryParameters();\n this.searchSubstances();\n }\n\n editSequenceSearh(): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'sequence search term' :\n `${this.privateSequenceSearchTerm}-${this.privateSearchType}-${this.privateSearchCutoff}-${this.privateSearchSeqType}`;\n this.gaService.sendEvent('substancesFiltering', 'icon-button:edit-sequence-search', eventLabel);\n\n const navigationExtras: NavigationExtras = {\n queryParams: {}\n };\n\n navigationExtras.queryParams['type'] = this.privateSearchType || null;\n navigationExtras.queryParams['cutoff'] = this.privateSearchCutoff || 0;\n navigationExtras.queryParams['seq_type'] = this.privateSearchSeqType || null;\n sessionStorage.setItem('gsrs_edit_sequence_' + this.sequenceID, JSON.stringify(this.privateSequenceSearchTerm));\n navigationExtras.queryParams['source'] = 'edit';\n navigationExtras.queryParams['source_id'] = this.sequenceID;\n\n this.router.navigate(['/sequence-search'], navigationExtras);\n }\n\n clearSequenceSearch(): void {\n\n const eventLabel = environment.isAnalyticsPrivate ? 'sequence search term' :\n `${this.privateSequenceSearchTerm}-${this.privateSearchType}-${this.privateSearchCutoff}-${this.privateSearchSeqType}`;\n this.gaService.sendEvent('substancesFiltering', 'icon-button:clear-sequence-search', eventLabel);\n\n this.privateSequenceSearchTerm = '';\n this.privateSequenceSearchKey = '';\n this.privateSearchType = '';\n this.privateSearchCutoff = 0;\n this.privateSearchSeqType = '';\n this.pageIndex = 0;\n\n this.populateUrlQueryParameters();\n this.searchSubstances();\n }\n\n clearSearch(): void {\n\n const eventLabel = environment.isAnalyticsPrivate ? 'search term' : this.privateSearchTerm;\n this.gaService.sendEvent('substancesFiltering', 'icon-button:clear-search', eventLabel);\n\n this.privateSearchTerm = '';\n this.wildCardText = '';\n this.searchTermHash = null;\n this.pageIndex = 0;\n\n this.populateUrlQueryParameters();\n this.substanceTextSearchService.setSearchValue('main-substance-search');\n this.searchSubstances();\n }\n\n clearFilters(): void {\n // for facets\n this.displayFacets.forEach(displayFacet => {\n displayFacet.removeFacet(displayFacet.type, displayFacet.bool, displayFacet.val);\n });\n if (this.privateStructureSearchTerm != null && this.privateStructureSearchTerm !== '') {\n this.clearStructureSearch();\n } else if ((this.privateSequenceSearchTerm != null && this.privateSequenceSearchTerm !== '') ||\n (this.privateSequenceSearchKey != null && this.privateSequenceSearchKey !== '')) {\n this.clearSequenceSearch();\n } else {\n this.clearSearch();\n }\n this.facetManagerService.clearSelections();\n }\n\n clickToRefreshPreview() {\n this.emitService.setRefresh(true);\n this.isRefresher = true;\n this.loadComponent();\n }\n\n clickToCancel() {\n this.emitService.setCancel(true);\n }\n\n get searchTerm(): string {\n return this.privateSearchTerm;\n }\n\n get structureSearchTerm(): string {\n return this.privateStructureSearchTerm;\n }\n\n get sequenceSearchTerm(): string {\n return this.privateSequenceSearchTerm;\n }\n\n get searchType(): string {\n return this.privateSearchType;\n }\n\n get searchCutoff(): number {\n return this.privateSearchCutoff;\n }\n\n get searchSeqType(): string {\n return this.privateSearchSeqType;\n }\n\n private processResponsiveness = () => {\n setTimeout(() => {\n if (window) {\n if (window.innerWidth < 1100) {\n this.matSideNav.close();\n this.isCollapsed = true;\n this.hasBackdrop = true;\n } else {\n this.matSideNav.open();\n this.hasBackdrop = false;\n }\n }\n });\n }\n\n openSideNav() {\n this.gaService.sendEvent('substancesFiltering', 'button:sidenav', 'open');\n this.matSideNav.open();\n }\n\n updateView(event): void {\n this.gaService.sendEvent('substancesContent', 'button:view-update', event.value);\n this.view = event.value;\n }\n\n\n getSequenceDisplay(sequence?: string): string {\n if (sequence != null) {\n if (sequence.length < 16) {\n return sequence;\n } else {\n return `${sequence.substr(0, 15)}...`;\n }\n } else {\n return '';\n }\n }\n\n openImageModal(substance: SubstanceDetail): void {\n const eventLabel = environment.isAnalyticsPrivate ? 'substance' : substance._name;\n this.gaService.sendEvent('substancesContent', 'link:structure-zoom', eventLabel);\n\n let data: any;\n\n if (substance.substanceClass === 'chemical') {\n data = {\n structure: substance.uuid,\n smiles: substance.structure.smiles,\n uuid: substance.uuid,\n names: this.names[substance.uuid]\n };\n } else {\n data = {\n structure: substance.uuid,\n names: this.names[substance.uuid]\n };\n }\n\n \n\n const dialogRef = this.dialog.open(StructureImageModalComponent, {\n width: '650px',\n panelClass: 'structure-image-panel',\n data: data\n });\n\n this.overlayContainer.style.zIndex = '1002';\n\n const subscription = dialogRef.afterClosed().subscribe(() => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n }, () => {\n this.overlayContainer.style.zIndex = null;\n subscription.unsubscribe();\n });\n }\n\n getMol(id: string, filename: string): void {\n const subscription = this.structureService.downloadMolfile(id).subscribe(response => {\n this.downloadFile(response, filename);\n subscription.unsubscribe();\n }, error => {\n subscription.unsubscribe();\n });\n }\n\n getFasta(id: string, filename: string): void {\n const subscription = this.substanceService.getFasta(id).subscribe(response => {\n this.downloadFile(response, filename);\n subscription.unsubscribe();\n }, error => {\n subscription.unsubscribe();\n });\n }\n\n downloadFile(response: any, filename: string): void {\n const dataType = response.type;\n const binaryData = [];\n binaryData.push(response);\n const downloadLink = document.createElement('a');\n downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, { type: dataType }));\n downloadLink.setAttribute('download', filename);\n document.body.appendChild(downloadLink);\n downloadLink.click();\n }\n\n sortCodeSystems(codes: Array): Array {\n if (this.configService.configData && this.configService.configData.codeSystemOrder &&\n this.configService.configData.codeSystemOrder.length > 0) {\n const order = this.configService.configData.codeSystemOrder;\n for (let i = order.length - 1; i >= 0; i--) {\n for (let j = 0; j <= codes.length; j++) {\n if (order[i] === codes[j]) {\n const a = codes.splice(j, 1); // removes the item\n codes.unshift(a[0]); // adds it back to the beginning\n break;\n }\n }\n }\n }\n return codes;\n }\n\n showAllRecords(): void {\n this.showExactMatches = false;\n this.processResponsiveness();\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n\n\n downloadJson(id: string) {\n this.substanceService.getSubstanceDetails(id).pipe(take(1)).subscribe(response => {\n this.downloadFile(JSON.stringify(response), id + '.json');\n });\n\n }\n\n copySmiles(val: string) {\n const selBox = document.createElement('textarea');\n selBox.style.position = 'fixed';\n selBox.style.left = '0';\n selBox.style.top = '0';\n selBox.style.opacity = '0';\n selBox.value = val;\n document.body.appendChild(selBox);\n selBox.focus();\n selBox.select();\n document.execCommand('copy');\n document.body.removeChild(selBox);\n }\n\n}\n","
    \r\n \r\n

    Structure Search

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n Substructure\r\n \r\n \r\n Similarity\r\n \r\n \r\n Exact\r\n \r\n \r\n Flex\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    Similarity cutoff (tanimoto)
    \r\n \r\n
    {{similarityCutoff}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Get Structure From Name\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, AfterViewInit, Renderer2, ViewChild, OnDestroy } from '@angular/core';\r\nimport { NavigationExtras, Router, ActivatedRoute } from '@angular/router';\r\nimport { InterpretStructureResponse } from '../structure/structure-post-response.model';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { StructureImportComponent } from '../structure/structure-import/structure-import.component';\r\nimport { Editor } from '../structure-editor/structure.editor.model';\r\nimport { LoadingService } from '../loading/loading.service';\r\nimport { environment } from '../../../environments/environment';\r\nimport { StructureService } from '../structure/structure.service';\r\nimport { FormControl } from '@angular/forms';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\nimport { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { StructureExportComponent } from '@gsrs-core/structure/structure-export/structure-export.component';\r\nimport { Title } from '@angular/platform-browser';\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-structure-search',\r\n templateUrl: './structure-search.component.html',\r\n styleUrls: ['./structure-search.component.scss']\r\n})\r\nexport class StructureSearchComponent implements OnInit, AfterViewInit, OnDestroy {\r\n private editor: Editor;\r\n private searchType: string;\r\n _searchtype: string;\r\n similarityCutoff?: number;\r\n showSimilarityCutoff = false;\r\n searchTypeControl = new FormControl();\r\n @ViewChild('contentContainer', { static: true }) contentContainer;\r\n private overlayContainer: HTMLElement;\r\n\r\n constructor(\r\n public router: Router,\r\n private dialog: MatDialog,\r\n private loadingService: LoadingService,\r\n private structureService: StructureService,\r\n private activatedRoute: ActivatedRoute,\r\n private renderer: Renderer2,\r\n private gaService: GoogleAnalyticsService,\r\n private overlayContainerService: OverlayContainer,\r\n private titleService: Title\r\n\r\n ) {\r\n this.searchType = 'substructure';\r\n this._searchtype ='substructure';\r\n }\r\n\r\n ngOnInit() {\r\n this.gaService.sendPageView(`Structure Search`);\r\n this.titleService.setTitle('Structure Search');\r\n this.loadingService.setLoading(true);\r\n this.overlayContainer = this.overlayContainerService.getContainerElement();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.renderer.addClass(this.contentContainer.nativeElement, environment.structureEditor);\r\n }\r\n\r\n ngOnDestroy() {}\r\n\r\n molvecUpdate(mol: any) {\r\n this.editor.setMolecule(mol);\r\n }\r\n\r\n editorOnLoad(editor: Editor): void {\r\n this.loadingService.setLoading(false);\r\n this.editor = editor;\r\n setTimeout(() => {\r\n this.activatedRoute\r\n .queryParamMap\r\n .subscribe(params => {\r\n if (params.has('structure')) {\r\n this.structureService.getMolfile(params.get('structure')).subscribe(molfile => {\r\n this.editor.setMolecule(molfile);\r\n });\r\n }\r\n if (params.has('type')) {\r\n this.searchType = params.get('type');\r\n this._searchtype = params.get('type');\r\n\r\n }\r\n\r\n if (this.searchType === 'similarity') {\r\n this.showSimilarityCutoff = true;\r\n this.similarityCutoff = params.has('cutoff') && Number(params.get('cutoff')) || 0.8;\r\n }\r\n\r\n this.searchTypeControl.setValue(this.searchType);\r\n });\r\n });\r\n }\r\n\r\n search(): void {\r\n const mol = this.editor.getMolfile();\r\n this.structureService.interpretStructure(mol).subscribe((response: InterpretStructureResponse) => {\r\n const eventLabel = !environment.isAnalyticsPrivate && response.structure.smiles || 'structure search term';\r\n this.gaService.sendEvent('structureSearch', 'button:search', eventLabel);\r\n this.navigateToBrowseSubstance(response.structure.id, response.structure.smiles);\r\n }, () => {});\r\n }\r\n\r\n standardize(standard: string): void {\r\n const mol = this.editor.getMolfile();\r\n this.structureService.interpretStructure(mol, '', standard).subscribe((response: InterpretStructureResponse) => {\r\n if (response && response.structure && response.structure.molfile) {\r\n this.editor.setMolecule(response.structure.molfile);\r\n }\r\n }, () => {});\r\n }\r\n\r\n\r\n private navigateToBrowseSubstance(structureSearchTerm: string, smiles?: string): void {\r\n\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {}\r\n };\r\n const navigationExtras2: NavigationExtras = {\r\n queryParams: {}\r\n };\r\n\r\n navigationExtras.queryParams['structure_search'] = structureSearchTerm || null;\r\n navigationExtras.queryParams['type'] = this.searchType || null;\r\n\r\n navigationExtras2.queryParams['structure'] = structureSearchTerm;\r\n navigationExtras2.queryParams['type'] = this.searchType || null;\r\n\r\n if (this.searchType === 'similarity') {\r\n navigationExtras.queryParams['cutoff'] = this.similarityCutoff || 0;\r\n navigationExtras2.queryParams['cutoff'] = this.similarityCutoff || 0;\r\n }\r\n\r\n if (smiles != null) {\r\n navigationExtras.queryParams['smiles'] = smiles;\r\n }\r\n // this is a test of the push state needed\r\n // to keep the back button working as desired\r\n window.history.pushState({},'Structure Search', '/structure-search'\r\n + '?structure=' + navigationExtras2.queryParams['structure']\r\n + '&type=' + navigationExtras2.queryParams['type']\r\n + '&cutoff=' + navigationExtras2.queryParams['cutoff']);\r\n\r\n\r\n this.router.navigate(['/browse-substance'], navigationExtras);\r\n }\r\n\r\n searchTypeSelected(event): void {\r\n this.searchType = event.value;\r\n this._searchtype = event.value;\r\n\r\n\r\n this.gaService.sendEvent('structureSearch', 'select:search-type', this.searchType);\r\n\r\n if (this.searchType === 'similarity') {\r\n this.showSimilarityCutoff = true;\r\n this.similarityCutoff = 0.8;\r\n } else {\r\n this.showSimilarityCutoff = false;\r\n }\r\n }\r\n\r\n openStructureImportDialog(): void {\r\n this.gaService.sendEvent('structureSearch', 'button:import', 'import structure');\r\n const dialogRef = this.dialog.open(StructureImportComponent, {\r\n height: 'auto',\r\n width: '650px',\r\n data: {}\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe((structurePostResponse?: InterpretStructureResponse) => {\r\n this.overlayContainer.style.zIndex = null;\r\n\r\n if (structurePostResponse && structurePostResponse.structure && structurePostResponse.structure.molfile) {\r\n this.editor.setMolecule(structurePostResponse.structure.molfile);\r\n }\r\n }, () => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n openStructureExportDialog(): void {\r\n this.gaService.sendEvent('structureSearch', 'button:export', 'export structure');\r\n const dialogRef = this.dialog.open(StructureExportComponent, {\r\n height: 'auto',\r\n width: '650px',\r\n data: {\r\n molfile: this.editor.getMolfile(),\r\n smiles: this.editor.getSmiles()\r\n }\r\n });\r\n this.overlayContainer.style.zIndex = '1002';\r\n\r\n dialogRef.afterClosed().subscribe(() => {\r\n this.overlayContainer.style.zIndex = null;\r\n }, () => {\r\n this.overlayContainer.style.zIndex = null;\r\n });\r\n }\r\n\r\n searchCutoffChanged(event): void {\r\n this.similarityCutoff = event.value;\r\n this.gaService.sendEvent('structureSearch', 'slider', 'similarity-cutoff', this.similarityCutoff);\r\n }\r\n\r\n get _editor(): Editor {\r\n return this.editor;\r\n }\r\n\r\n get _searchType(): string {\r\n return this.searchType;\r\n }\r\n\r\n nameResolved(molfile: string): void {\r\n this.editor.setMolecule(molfile);\r\n }\r\n}\r\n","
    \r\n \r\n \r\n Sequence Search\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n Only values between 0 and 1 are allowed\r\n \r\n \r\n This is required\r\n \r\n \r\n \r\n \r\n \r\n Contains Alignment Match\r\n \r\n \r\n Global Alignment Match\r\n \r\n \r\n \r\n \r\n \r\n \r\n Protein\r\n \r\n \r\n Nucleic Acid\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n {{errorMessage}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { FormControl, Validators, FormGroup } from '@angular/forms';\r\nimport { NavigationExtras, Router, ActivatedRoute } from '@angular/router';\r\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { environment } from '../../../environments/environment';\r\nimport {SubstanceService} from '@gsrs-core/substance';\r\nimport {LoadingService} from '@gsrs-core/loading';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-sequence-search',\r\n templateUrl: './sequence-search.component.html',\r\n styleUrls: ['./sequence-search.component.scss']\r\n})\r\nexport class SequenceSearchComponent implements OnInit, OnDestroy {\r\n sequenceSearchForm = new FormGroup({\r\n cutoff: new FormControl(0.9, [Validators.min(0), Validators.max(1), Validators.required]),\r\n type: new FormControl('GLOBAL', Validators.required),\r\n sequenceType: new FormControl('protein', Validators.required),\r\n sequence: new FormControl('', Validators.required)\r\n });\r\n errorMessage = '';\r\n id?: string;\r\n\r\n\r\n\r\n constructor(\r\n public router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private substanceService: SubstanceService,\r\n private gaService: GoogleAnalyticsService,\r\n private loadingService: LoadingService,\r\n private titleService: Title\r\n\r\n\r\n ) {\r\n this.activatedRoute\r\n .queryParamMap\r\n .subscribe(params => {\r\n if (params.has('source') && params.get('source') === 'edit') {\r\n this.id = params.get('source_id');\r\n this.sequenceSearchForm.controls.sequence.setValue(JSON.parse(sessionStorage.getItem('gsrs_edit_sequence_' + this.id)));\r\n } else {\r\n if (params.has('sequence')) {\r\n this.sequenceSearchForm.controls.sequence.setValue(params.get('sequence'));\r\n }\r\n }\r\n if (params.has('type')) {\r\n this.sequenceSearchForm.controls.type.setValue(params.get('type'));\r\n }\r\n if (params.has('cutoff')) {\r\n this.sequenceSearchForm.controls.cutoff.setValue(params.get('cutoff'));\r\n }\r\n if (params.has('seq_type')) {\r\n const type = params.get('seq_type');\r\n if (type.toLowerCase() === 'nucleicacid') {\r\n this.sequenceSearchForm.controls.sequenceType.setValue('nucleicAcid');\r\n } else {\r\n this.sequenceSearchForm.controls.sequenceType.setValue('protein');\r\n }\r\n }\r\n if (params.has('subunit') && params.has('substance') && params.has('seq_type')) {\r\n this.getSequence(params.get('substance'), params.get('subunit'), params.get('seq_type'));\r\n }\r\n\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.titleService.setTitle('Sequence Search');\r\n this.gaService.sendPageView(`Sequence Search`);\r\n this.sequenceSearchForm.controls.cutoff.valueChanges.pipe(\r\n debounceTime(1000)\r\n ).subscribe(value => {\r\n this.gaService.sendEvent('sequenceSearch', 'input:cutoff', 'search identity', value);\r\n });\r\n this.sequenceSearchForm.controls.type.valueChanges.subscribe(value => {\r\n const eventLabel = !environment.isAnalyticsPrivate && value || 'cutoff type';\r\n this.gaService.sendEvent('sequenceSearch', 'select:cutoff-type', eventLabel);\r\n });\r\n this.sequenceSearchForm.controls.sequenceType.valueChanges.subscribe(value => {\r\n const eventLabel = !environment.isAnalyticsPrivate && value || 'cutoff type';\r\n this.gaService.sendEvent('sequenceSearch', 'select:sequence-type', eventLabel);\r\n });\r\n }\r\n\r\n ngOnDestroy() {}\r\n\r\n search(): void {\r\n if (this.sequenceSearchForm.valid) {\r\n this.gaService.sendEvent('sequenceSearch', 'button:search', 'sequence');\r\n this.navigateToBrowseSubstance();\r\n } else {\r\n this.gaService.sendException('tried invalid sequence search');\r\n }\r\n }\r\n\r\n cleanSequence(type): void {\r\n let mod = ['G', 'T', 'U', 'N', 'A', 'C', 'X'];\r\n\r\n if (type.toUpperCase() === 'PROTEIN') {\r\n mod = ['A', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'V', 'W', 'X', 'Y'];\r\n }\r\n this.sequenceSearchForm.controls.sequence.setValue(this.filterbychr(this.sequenceSearchForm.controls.sequence.value, mod));\r\n\r\n\r\n }\r\n\r\n getSequence(substance: string, unit: string, type: string) {\r\n type = type.charAt(0).toLowerCase() + type.slice(1);\r\n this.substanceService.getSequenceByID(substance, unit, type).subscribe(response => {\r\n if (response && response.length > 0 && response[0].sequence) {\r\n this.sequenceSearchForm.controls.sequence.setValue(response[0].sequence);\r\n }\r\n });\r\n }\r\n\r\n filterbychr(str: string, reg: string[]): string {\r\n const arr = str.toString().split('');\r\n const newArr = [];\r\n arr.forEach( (item, index, object) => {\r\n if (reg.indexOf(item.toUpperCase()) >= 0) {\r\n newArr.push(item);\r\n }\r\n });\r\n return newArr.join('');\r\n }\r\n makeRandom() {\r\n let text = '';\r\n const possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';\r\n for (let i = 0; i < 6; i++) {\r\n text += possible.charAt(Math.floor(Math.random() * possible.length));\r\n }\r\n return text;\r\n }\r\n\r\n private navigateToBrowseSubstance(): void {\r\n this.errorMessage = '';\r\n this.loadingService.setLoading(true);\r\n if (!this.id) {\r\n this.id = this.makeRandom();\r\n }\r\n sessionStorage.setItem('gsrs_search_sequence_' + this.id, JSON.stringify(this.sequenceSearchForm.value.sequence));\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {}\r\n };\r\n\r\n navigationExtras.queryParams['type'] = 'sequence';\r\n navigationExtras.queryParams['cutoff'] = this.sequenceSearchForm.value.cutoff;\r\n navigationExtras.queryParams['type'] = this.sequenceSearchForm.value.type;\r\n navigationExtras.queryParams['seq_type'] = this.sequenceSearchForm.value.sequenceType;\r\n navigationExtras.queryParams['source_id'] = this.id;\r\n\r\n if ( this.sequenceSearchForm.value.sequence.length > 1000) {\r\n // navigationExtras.queryParams['sequence_search'] = this.sequenceSearchForm.value.sequence.substring(0, 1000);\r\n } else {\r\n // navigationExtras.queryParams['sequence_search'] = this.sequenceSearchForm.value.sequence;\r\n }\r\n\r\n this.substanceService.getSubstanceSequenceResults(\r\n this.sequenceSearchForm.value.sequence,\r\n this.sequenceSearchForm.value.cutoff,\r\n this.sequenceSearchForm.value.type,\r\n this.sequenceSearchForm.value.sequenceType\r\n ).subscribe(response => {\r\n this.loadingService.setLoading(false);\r\n if (response.key) {\r\n navigationExtras.queryParams['sequence_key'] = response.key;\r\n this.router.navigate(['/browse-substance'], navigationExtras);\r\n } else {\r\n this.errorMessage = 'There was a problem processing your sequence search request';\r\n }\r\n }, error => {\r\n console.log(error);\r\n if (this.sequenceSearchForm.value.sequence > 50000 ) {\r\n this.errorMessage = 'Cannot process searches for sequences with more than 50,000 sites';\r\n } else {\r\n this.errorMessage = 'There was a problem processing your sequence search request';\r\n }\r\n this.loadingService.setLoading(false);\r\n });\r\n }\r\n\r\n}\r\n","
    \r\n \r\n \r\n Login\r\n \r\n \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n","import { Component, OnInit, OnDestroy, HostListener } from '@angular/core';\nimport { AuthService } from '../auth.service';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { LoadingService } from '../../loading/loading.service';\nimport { MainNotificationService } from '../../main-notification/main-notification.service';\nimport { AppNotification, NotificationType } from '../../main-notification/notification.model';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss']\n})\nexport class LoginComponent implements OnInit, OnDestroy {\n isLoaded = false;\n isLoading = true;\n loginForm = new FormGroup({\n username: new FormControl('', Validators.required),\n password: new FormControl('', Validators.required)\n });\n private subscriptions: Array = [];\n\n constructor(\n private authService: AuthService,\n private router: Router,\n private loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private activatedRoute: ActivatedRoute\n ) { }\n\n @HostListener('keyup', ['$event'])\n onKeyup(event: KeyboardEvent) {\n if (event.code && event.code.toLowerCase() === 'enter') {\n this.login();\n }\n }\n\n ngOnInit() {\n this.loadingService.setLoading(true);\n const subscription = this.authService.getAuth().subscribe(auth => {\n this.loadingService.setLoading(false);\n if (auth) {\n const route = this.activatedRoute.snapshot.queryParamMap.get('path') || '/browse-substance';\n this.router.navigate([route]);\n } else {\n this.isLoaded = true;\n this.isLoading = false;\n }\n }, error => {\n this.loadingService.setLoading(false);\n this.isLoaded = true;\n this.isLoading = false;\n });\n this.subscriptions.push(subscription);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n login() {\n if (this.loginForm.valid) {\n this.loadingService.setLoading(true);\n this.isLoading = true;\n const username = this.loginForm.controls.username.value;\n const password = this.loginForm.controls.password.value;\n const subscription = this.authService.login(username, password).subscribe(auth => {\n subscription.unsubscribe();\n this.loadingService.setLoading(false);\n if (auth) {\n const route = this.activatedRoute.snapshot.queryParamMap.get('path') || '/browse-substance';\n this.router.navigate([route]);\n } else {\n this.isLoading = false;\n }\n }, error => {\n subscription.unsubscribe();\n const notification: AppNotification = {\n message: 'There was an error logging you in. Please check your credentials and try again.',\n type: NotificationType.error\n };\n this.mainNotificationService.setNotification(notification);\n this.loadingService.setLoading(false);\n this.isLoaded = true;\n this.isLoading = false;\n });\n }\n }\n\n}\n","import { ComponentRef, Output, EventEmitter, Injectable } from '@angular/core';\r\nimport { SubstanceFormBase } from './base-classes/substance-form-base';\r\nimport { SubstanceCardBaseFilteredList } from '@gsrs-core/substance-details';\r\nimport { MatExpansionPanel } from '@angular/material/expansion';\r\n\r\n@Injectable()\r\nexport class SubstanceFormSection {\r\n dynamicComponentName: string;\r\n dynamicComponentRef: ComponentRef | any>;\r\n matExpansionPanel: MatExpansionPanel;\r\n menuLabel: string;\r\n isHidden = false;\r\n canAddItem = false;\r\n @Output() addItemEmitter = new EventEmitter();\r\n\r\n constructor(dynamicComponentName?: string) {\r\n this.dynamicComponentName = dynamicComponentName;\r\n }\r\n\r\n addItem(): void {\r\n this.addItemEmitter.emit();\r\n }\r\n}\r\n","
    \n

    JSON Object structure

    \n
    \n  \n \n \n \n Export JSON\n \n\n
    \n
    \n
    \n\n
    \n \n
    \n
    \n \n\n
    \n
    \n
    \n \n\n \n\n
    \n","import {Component, Inject, OnInit} from '@angular/core';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog';\nimport {DomSanitizer} from '@angular/platform-browser';\n\n@Component({\n selector: 'app-json-dialog',\n templateUrl: './json-dialog.component.html',\n styleUrls: ['./json-dialog.component.scss']\n})\nexport class JsonDialogComponent implements OnInit {\n public dialogRef: MatDialogRef;\n public json: any;\n expand = true;\n raw = false;\n downloadJsonHref: any;\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private sanitizer: DomSanitizer,\n @Inject(MAT_DIALOG_DATA) public data: any\n\n ) { }\n\n ngOnInit() {\n // apply the same cleaning to remove deleted objects and return what will be sent to the server on validation / submission\n this.json = this.substanceFormService.cleanSubstance();\n // this.json = this.cleanObject(substanceCopy);\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' + encodeURIComponent(JSON.stringify(this.json)));\n this.downloadJsonHref = uri;\n }\n\n dismissDialog(): void {\n this.dialogRef.close();\n }\n\n}\n","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-submit-success-dialog',\n templateUrl: './submit-success-dialog.component.html',\n styleUrls: ['./submit-success-dialog.component.scss']\n})\nexport class SubmitSuccessDialogComponent implements OnInit {\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) { }\n\n ngOnInit() {\n }\n\n dismissDialog(action: 'continue'|'browse'|'view'): void {\n this.dialogRef.close(action);\n }\n\n}\n","

    \n Success\n

    \n
    \n Update was performed.\n
    \n
    \n \n \n \n
    ","
    \n\n
    \n

    Merge and Deprecate SubConcept

    \n
    \n
    \n\n
    {{text}}
    \n\n
    \n \n \n
    \n\n
    \n
    \n \n
    \n
    \n
    \n \n
    \n\n
    \n
    \n \n\n \n\n
    \n
    \n","import {Component, Inject, OnInit} from '@angular/core';\nimport {SubstanceFormService} from '@gsrs-core/substance-form/substance-form.service';\nimport {MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog';\nimport {DomSanitizer} from '@angular/platform-browser';\nimport {SubstanceDetail, SubstanceRelated, SubstanceService} from '@gsrs-core/substance';\nimport {take} from 'rxjs/operators';\nimport * as _ from 'lodash';\nimport * as defiant from '../../../../../node_modules/defiant.js/dist/defiant.min.js';\n\n@Component({\n selector: 'app-merge-concept-dialog',\n templateUrl: './merge-concept-dialog.component.html',\n styleUrls: ['./merge-concept-dialog.component.scss']\n})\nexport class MergeConceptDialogComponent implements OnInit {\n public dialogRef: MatDialogRef;\n subconcepts: Array = [];\n text = 'searching for subconcepts...';\n loading: boolean;\n copy: SubstanceDetail;\n addmergebutton = false;\n showButtons = true;\n showDepricate = false;\n merge = false;\n concept: SubstanceDetail;\n mapName: string;\n oldBdnum: string;\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceService: SubstanceService,\n private sanitizer: DomSanitizer,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n }\n\n ngOnInit() {\n this.getSubconcepts();\n }\n\n dismissDialog(): void {\n this.dialogRef.close();\n }\n\n getSubconcepts(): void {\n this.loading = true;\n this.substanceService.getSubstanceDetails(this.data.uuid).pipe(take(1)).subscribe(sub => {\n this.copy = sub;\n this.subconcepts = _.chain(sub.relationships).filter(relationship => {\n return relationship.type === 'SUB_CONCEPT->SUBSTANCE';\n }).map(relationship => {\n return relationship.relatedSubstance;\n }).map(relationship => {\n this.substanceService.getBDNUM(relationship).subscribe(resp => {\n relationship['$$bdnum'] = resp;\n });\n\n\n return relationship;\n }).value();\n this.loading = false;\n\n if (this.subconcepts && this.subconcepts.length > 0) {\n this.text = 'Select a Concept to Merge';\n } else {\n this.text = 'No sub-concepts were found for this record';\n }\n\n\n });\n this.loading = true;\n }\n\n mergeTheRecord(uuid: string): void {\n this.loading = true;\n\n function BDNUM_MAPPER(oldSub) {\n return _.chain(oldSub.codes).filter(function (code) {\n return code.codeSystem === 'BDNUM';\n }).filter(function (code) {\n return code.type === 'PRIMARY';\n }).map(function (code) {\n return code.code;\n }).value()[0];\n }\n\n this.substanceService.getSubstanceDetails(uuid).subscribe( concept => {\n this.loading = false;\n this.showButtons = false;\n this.concept = concept;\n const newSub = this.scrub(concept);\n const oldSub = this.copy;\n const newBdnum = BDNUM_MAPPER(concept);\n const oldBdnum = BDNUM_MAPPER(oldSub);\n this.mapName = newBdnum + ' MAPS TO ' + oldBdnum + ' ' + oldSub._name;\n this.loading = false;\n this.text = 'merging names, codes, notes, relationships and references from:' + newBdnum + ' with this record.';\n\n function addAll(l1, l2) {\n l2.map(function (o) {\n return l1.push(o);\n });\n }\n\n const bdref = {\n 'uuid': this.guid(),\n 'docType': 'BDNUM',\n 'citation': 'Imported during merging with record:[' + newBdnum + '].',\n 'id': newBdnum,\n 'publicDomain': false,\n 'tags': ['RECORD_MERGE'],\n 'access': ['protected']\n };\n\n const oldref = _.chain(oldSub.relationships).filter(r => {\n return r.relatedSubstance.refuuid === uuid;\n }).value();\n\n if (oldref.length > 0) {\n oldref[0].relatedSubstance.refPname = this.mapName;\n }\n\n\n newSub.relationships = _.chain(newSub.relationships).filter(r => {\n return r.type !== 'SUBSTANCE->SUB_CONCEPT';\n }).value();\n newSub.references.push(bdref);\n\n for (let i = 0; i < newSub.names.length; i++) {\n if (newSub.names[i].displayName === true) {\n newSub.names[i].displayName = false;\n }\n }\n\n addAll(oldSub.names, newSub.names.map(n => {\n n.references.push(bdref.uuid);\n return n;\n }));\n addAll(oldSub.codes, newSub.codes.map(n => {\n n.references.push(bdref.uuid);\n return n;\n }));\n addAll(oldSub.notes, newSub.notes.map(n => {\n n.references.push(bdref.uuid);\n return n;\n }));\n addAll(oldSub.relationships, newSub.relationships.map(n => {\n n.references.push(bdref.uuid);\n return n;\n }));\n addAll(oldSub.references, newSub.references);\n oldSub.changeReason = 'Merged with ' + newBdnum;\n // setJson(oldSub);\n this.substanceFormService.loadSubstance(oldSub.substanceClass, oldSub, null, true);\n this.addmergebutton = true;\n this.text = 'Fields merged. Click \\'Confirm Deprecate old record\\' to to prevent duplicate collision';\n this.oldBdnum = oldBdnum;\n });\n }\n\n mergeConcept(): void {\n this.loading = false;\n const concept = this.concept;\n if (!confirm('Are you sure you want to deprecate the old record? You will still need to submit this new merged record as well.')) {\n this.text = 'Deprecation cancelled. Refresh this page to undo the merge';\n this.loading = false;\n return;\n } else {\n this.text = 'Merging...';\n this.loading = true;\n }\n\n const depRef = {\n 'uuid': this.guid(),\n 'docType': 'FDA_SRS',\n 'citation': 'Generated as part of migration merge to:' + this.oldBdnum + '.',\n 'publicDomain': false,\n 'tags': ['RECORD_MERGE'],\n 'access': ['protected']\n };\n concept.references.push(depRef);\n concept.names = [{\n // 'language': 'en',\n 'name': this.mapName,\n 'access': ['admin', 'protected'],\n 'references': [depRef.uuid]\n }];\n concept.codes = _.chain(concept.codes).filter(function (c) {\n return c.codeSystem === 'BDNUM';\n }).value();\n concept.notes = [{\n 'note': 'Data migrated to record:' + this.oldBdnum\n }];\n concept.relationships = _.chain(concept.relationships).filter(function (r) {\n return r.type === 'SUBSTANCE->SUB_CONCEPT';\n }).value();\n concept.deprecated = true;\n\n if (!concept.access) {\n concept.access = [];\n }\n\n concept.access.push('protected');\n concept.changeReason = 'Migrated data into:' + this.oldBdnum;\n this.loading = false;\n this.text = 'Deprecating...';\n this.substanceService.saveSubstance(concept).subscribe(response => {\n this.loading = false;\n this.text = 'Old record deprecated, please save this record to complete the merge.';\n this.subconcepts = undefined;\n this.addmergebutton = false; \n }, error => {\n this.loading = false;\n this.text = 'There was a problem deprecating the old record. Refresh the page to undo the changes to the parent record.';\n });\n}\n\n scrub(oldraw: any, importType?: string): SubstanceDetail {\n function guid() {\n function s4() {\n return Math.floor((1 + Math.random()) * 0x10000)\n .toString(16)\n .substring(1);\n }\n return s4() + s4() + '-' + s4() + '-' + s4() + '-' +\n s4() + '-' + s4() + s4() + s4();\n }\n const old = JSON.parse(JSON.stringify(oldraw));\n const uuidHolders = defiant.json.search(old, '//*[uuid]');\n const map = {};\n for (let i = 0; i < uuidHolders.length; i++) {\n const ouuid = uuidHolders[i].uuid;\n if (map[ouuid]) {\n uuidHolders[i].uuid = map[ouuid];\n if (uuidHolders[i].id) {\n uuidHolders[i].id = map[ouuid];\n }\n } else {\n const nid = guid();\n uuidHolders[i].uuid = nid;\n map[ouuid] = nid;\n if (uuidHolders[i].id) {\n uuidHolders[i].id = nid;\n }\n }\n }\n const refHolders = defiant.json.search(old, '//*[references]');\n for (let i = 0; i < refHolders.length; i++) {\n const refs = refHolders[i].references;\n for (let j = 0; j < refs.length; j++) {\n const or = refs[j];\n if (typeof or === 'object') { continue; }\n refs[j] = map[or];\n }\n }\n defiant.json.search(old, '//*[uuid]');\n _.remove(old.codes, {\n codeSystem: 'BDNUM'\n });\n const createHolders = defiant.json.search(old, '//*[created]');\n for (let i = 0; i < createHolders.length; i++) {\n const rec = createHolders[i];\n delete rec['created'];\n delete rec['createdBy'];\n delete rec['lastEdited'];\n delete rec['lastEditedBy'];\n }\n\n const originHolders = defiant.json.search(old, '//*[originatorUuid]');\n for (let i = 0; i < originHolders.length; i++) {\n const rec = originHolders[i];\n delete rec['originatorUuid'];\n }\n\n delete old.approvalID;\n delete old.approved;\n delete old.approvedBy;\n old.status = 'pending';\n if ((importType) && (importType === 'definition')) {\n old.names = [];\n old.codes = [];\n old.notes = [];\n old.relationships = [];\n }\n delete old['createdBy'];\n delete old['created'];\n delete old['lastEdited'];\n delete old['lastEditedBy'];\n delete old['version'];\n delete old['$$update'];\n delete old['changeReason'];\n\n\n if (true) {\n const refSet = {};\n\n const refHolders2 = defiant.json.search(old, '//*[references]');\n for (let i = 0; i < refHolders2.length; i++) {\n const refs = refHolders2[i].references;\n for (let j = 0; j < refs.length; j++) {\n const or = refs[j];\n if (typeof or === 'object') { continue; }\n refSet[or] = true;\n }\n }\n\n const nrefs = _.chain(old.references)\n .filter(function(ref) {\n if (refSet[ref.uuid]) {\n return true;\n } else {\n return false;\n }\n })\n .value();\n\n old.references = nrefs;\n\n }\n\n\n return old;\n }\n\n guid(): string {\n function s4() {\n return Math.floor((1 + Math.random()) * 0x10000)\n .toString(16)\n .substring(1);\n }\n return s4() + s4() + '-' + s4() + '-' + s4() + '-' +\n s4() + '-' + s4() + s4() + s4();\n }\n}\n","
    \n\n
    \n

    Switch Alternative and Primary Definitions

    \n
    \n
    \n
    \n
    \n
    {{error}}
    \n
    0 && showButtons\" class = \"substances-container\">\n
    \n \n
    \n {{c.linkingID}} \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n\n \n\n
    \n
    \n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { SubstanceDetail, SubstanceService } from '@gsrs-core/substance';\nimport { SubstanceFormService } from '@gsrs-core/substance-form/substance-form.service';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport * as _ from 'lodash';\nimport * as defiant from '../../../../../node_modules/defiant.js/dist/defiant.min.js';\nimport { LoadingService } from '@gsrs-core/loading/index';\nimport { UtilsService } from '@gsrs-core/utils/index';\n\n@Component( {\n selector: 'app-definition-switch-dialog',\n templateUrl: './definition-switch-dialog.component.html',\n styleUrls: ['./definition-switch-dialog.component.scss']\n})\nexport class DefinitionSwitchDialogComponent implements OnInit {\n public dialogRef: MatDialogRef < DefinitionSwitchDialogComponent >;\n primeVersion: string;\n altversion = '';\n full_prom = null;\n oldAlt: any = {};\n didStep5 = false;\n oldPrime: any = {};\n uuidNew: string;\n newstructureid: string;\n structureuuid: string;\n structureid: string;\n alt: any = {};\n currentAlts: Array < any >;\n sub: SubstanceDetail;\n fieldGetter: any;\n text: string;\n showButtons = true;\n loading = false;\n error = '';\n test1: any;\n test2: any;\n\n constructor(\n private substanceFormService: SubstanceFormService,\n private substanceService: SubstanceService,\n private sanitizer: DomSanitizer,\n private loadingService: LoadingService,\n private utilsService: UtilsService,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {}\n\n ngOnInit() {\n this.defSwitch();\n }\n\n dismissDialog(): void {\n this.dialogRef.close();\n }\n\n defSwitch() {\n this.sub = this.substanceFormService.getJson();\n\n this.fieldGetter = {\n 'protein': ['protein', 'modifications', 'properties'],\n 'chemical': ['structure', 'moieties', 'modifications', 'properties'],\n 'structurallyDiverse': ['structurallyDiverse', 'modifications', 'properties'],\n 'polymer': ['polymer', 'modifications', 'properties'],\n 'nucleicAcid': ['nucleicAcid', 'modifications', 'properties'],\n 'mixture': ['mixture', 'modifications', 'properties']\n };\n this.primeVersion = this.sub.version;\n this.altversion = '';\n this.full_prom = null;\n this.oldAlt = {};\n this.oldPrime = this.sub;\n this.uuidNew = this.utilsService.newUUID();\n this.newstructureid = this.utilsService.newUUID();\n this.structureuuid = this.utilsService.newUUID();\n this.structureid = this.utilsService.newUUID();\n this.alt = {};\n\n this.currentAlts = this.sub.relationships.map(r=>r).filter(function (r) {\n if (r.type === 'SUBSTANCE->SUB_ALTERNATE') {\n return r;\n }\n }).map(function (r) {\n return r['relatedSubstance'];\n });\n\n if (this.currentAlts.length > 0) {\n this.text = 'Select a substance to switch';\n } else {\n this.text = 'No alternate definitions were found for this record';\n }\n\n }\n\n // set primary substance type to different and != alternative\n tempPrimeChange(uuid) {\n if (!confirm('This process involves multiple updates to both records and may take several minutes.\\n' +\n 'If the switch fails at any stage, follow the instructions that appear to restore both records. \\n\\n' +\n ' Click \\'OK\\' to proceed.')) {\n this.showButtons = true;\n return;\n }\n this.loadingService.setLoading(true);\n this.loading = true;\n this.text = 'Starting step 1';\n this.showButtons = false;\n console.log('Temporarily changing primary type');\n this.substanceService.getSubstanceDetails(this.sub.uuid).subscribe(c => {\n this.oldPrime = _.cloneDeep(c);\n if (!this.fieldGetter[this.oldPrime.substanceClass]) {\n this.text = 'The selected alternative is incompatible with the definition switch function';\n return;\n }\n // delete all old definitional fields\n this.fieldGetter[this.sub.substanceClass].forEach(x => {\n if (this.oldPrime[x]) {\n delete this.oldPrime[x];\n }\n });\n console.log('setting primary to temporary substance type');\n const depRef = {\n 'uuid': this.uuidNew,\n 'docType': 'FDA_SRS',\n 'citation': 'Generated to switch definition type',\n 'publicDomain': true,\n 'tags': ['RECORD_MERGE', 'PUBLIC DOMAIN RELEASE'],\n 'access': []\n };\n\n if (this.oldPrime.substanceClass !== 'structurallyDiverse') {\n this.oldPrime.substanceClass = 'structurallyDiverse';\n this.oldPrime.structurallyDiverse = {\n 'uuid': this.utilsService.newUUID(),\n 'created': 1567806115158,\n 'createdBy': 'definitionSwitcher',\n 'lastEdited': 1567806115158,\n 'lastEditedBy': 'definitionSwitcher',\n 'sourceMaterialClass': 'Temporary class for definition switch',\n 'sourceMaterialType': 'Temporary class for definition switch',\n 'part': ['WHOLE'],\n 'references': [this.uuidNew]\n };\n } else {\n this.oldPrime.substanceClass = 'chemical';\n this.oldPrime.structure = {\n 'opticalActivity': 'none',\n 'access': [],\n 'molfile': '\\n JSDraw209061916362D\\n\\n 6 6 0 0 0 0 999 V2000\\n 28.8600 -9.2560 ' +\n '0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 30.2110 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0' +\n ' 0 0 0\\n 30.2110 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 28.8600 -6.1360 0.0000 He' +\n ' 0 0 0 0 0 0 0 0 0 0 0 0\\n 27.5090 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 27.5090 ' +\n ' -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 1 2 1 0 0 0 0\\n 2 3 1 0 0 0 0\\n 3 4 1 0 0 ' +\n '0 0\\n 1 5 1 0 0 0 0\\n 5 6 1 0 0 0 0\\n 4 6 1 0 0 0 0\\nM END',\n 'deprecated': false,\n 'digest': '4b4cb19b839f6eb23b836addbaa87729a9632a35',\n 'smiles': '[He]1[He][He][He][He][He]1',\n 'formula': 'He6',\n 'stereoCenters': 0,\n 'definedStereo': 0,\n 'ezCenters': 0,\n 'charge': 0,\n 'mwt': 24.015612,\n 'count': 1,\n 'hash': '3ZYHCH786T4L',\n 'stereochemistry': 'ACHIRAL',\n 'id': this.newstructureid,\n 'references': [this.uuidNew]\n };\n }\n\n this.oldPrime.references.push(depRef);\n this.test1 = defiant.json.search(this.oldPrime, '//*[references]');\n this.substanceService.getSubstanceDetails(uuid).subscribe(d => {\n this.test2 = defiant.json.search(d, '//*[references]');\n\n this.oldAlt = _.cloneDeep(d);\n if (!this.fieldGetter[this.oldAlt.substanceClass]) {\n this.text = 'The selected alternative is incompatible with the definition switch function';\n return;\n }\n if (this.oldAlt.substanceClass === this.sub.substanceClass) {\n this.updateRecord(this.oldPrime, () => {\n this.AltNewType(this.oldAlt);\n }, 1);\n } else {\n this.updateRecord(this.oldPrime, () => {\n this.AltNewDef(this.oldAlt);\n }, 1);\n }\n });\n });\n }\n // change alt type if it's the same as the primary\n AltNewType(alt) {\n this.didStep5 = true;\n this.text = 'Step 1 complete. Running step 2a...';\n this.substanceService.getSubstanceDetails(this.oldAlt.uuid).subscribe(d => {\n alt = _.cloneDeep(d);\n\n const altSwitch = _.cloneDeep(d);\n\n this.fieldGetter[altSwitch.substanceClass].forEach(x => {\n if (alt[x]) {\n delete alt[x];\n }\n });\n\n if (altSwitch.substanceClass === 'structurallyDiverse') {\n console.log('deleting ' + altSwitch.substanceClass + ' adding temporary chemical');\n altSwitch.substanceClass = 'chemical';\n altSwitch.structure = {\n 'opticalActivity': 'none',\n 'access': [],\n 'molfile': '\\n JSDraw209061916362D\\n\\n 6 6 0 0 0 0 999 V2000\\n 28.8600 -9.2560 ' +\n '0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 30.2110 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0' +\n ' 0 0 0\\n 30.2110 -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 28.8600 -6.1360 0.0000 He' +\n ' 0 0 0 0 0 0 0 0 0 0 0 0\\n 27.5090 -8.4760 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 27.5090 ' +\n ' -6.9160 0.0000 He 0 0 0 0 0 0 0 0 0 0 0 0\\n 1 2 1 0 0 0 0\\n 2 3 1 0 0 0 0\\n 3 4 1 0 ' +\n '0 0 0\\n 1 5 1 0 0 0 0\\n 5 6 1 0 0 0 0\\n 4 6 1 0 0 0 0\\nM END',\n 'id': this.structureid,\n 'references': [this.structureuuid]\n };\n } else {\n console.log('deleting ' + altSwitch.substanceClass + ' adding temporary structurallyDiverse');\n altSwitch.substanceClass = 'structurallyDiverse';\n altSwitch.structurallyDiverse = {\n 'uuid': this.utilsService.newUUID(),\n 'created': 1567806115158,\n 'createdBy': 'definitionSwitcher',\n 'lastEdited': 1567806115158,\n 'lastEditedBy': 'definitionSwitcher',\n 'deprecated': false,\n 'sourceMaterialClass': 'Temporary class for definition switch',\n 'sourceMaterialType': 'Temporary class for definition switch',\n 'part': ['WHOLE'],\n 'references': [this.structureuuid]\n };\n }\n\n const depRef = {\n 'uuid': this.structureuuid,\n 'docType': 'FDA_SRS',\n 'citation': 'Generated to switch definition type',\n 'publicDomain': true,\n 'tags': ['RECORD_MERGE', 'PUBLIC DOMAIN RELEASE'],\n 'access': []\n };\n altSwitch.references.push(depRef);\n this.updateRecord(altSwitch, () => {\n this.AltNewDef(this.oldAlt);\n }, '2b');\n });\n }\n\n // set old primary definition info to alternative\n AltNewDef(alt) {\n if (this.didStep5 === true) {\n this.text = 'Step 2a complete. Running step 2b...';\n\n } else {\n this.text = 'Step 1 complete. Running step 2...';\n }\n // get server version for server-side updates\n this.substanceService.getSubstanceDetails(this.oldAlt.uuid).subscribe(d => {\n\n alt = _.cloneDeep(d);\n this.fieldGetter[alt.substanceClass].forEach(x => {\n if (alt[x]) {\n delete alt[x];\n }\n });\n this.fieldGetter[this.sub.substanceClass].forEach(x => {\n if (this.sub[x]) {\n alt[x] = this.sub[x];\n }\n });\n alt.substanceClass = this.sub.substanceClass;\n const altReferences = defiant.json.search(alt, '//*[references]');\n altReferences.forEach(e => {\n });\n const objectsA = altReferences.filter(e => {\n if (this.isObject(e)) {\n return true;\n } else {\n return false;\n }\n });\n const toPush = [];\n\n for (let i = 0; i < objectsA.length; i++) {\n const current = objectsA[i].references;\n\n for (let k = 0; k < current.length; k++) {\n for (let l = 0; l < this.sub.references.length; l++) {\n if (this.sub.references[l].uuid === current[k]) {\n const replace = this.utilsService.newUUID();\n current[k] = replace;\n this.sub.references[l].uuid = replace;\n toPush.push(this.sub.references[l]);\n }\n }\n }\n }\n\n toPush.forEach(ref => {\n alt.references.push(ref);\n });\n\n if (this.didStep5 === true) {\n alt.references = alt.references.filter(r => {\n if (r.uuid !== this.structureuuid) {\n return r;\n }\n });\n }\n const temp = _.cloneDeep(alt);\n if (this.didStep5 === true) {\n this.text = 'Step 2a complete. Sending update for 2b...';\n } else {\n this.text = 'Step 1 complete. Sending update for step 2...';\n }\n this.updateRecord(alt, () => {\n this.primeNewDef(alt);\n }, 2);\n });\n }\n\n // set primary to alternative definition info\n primeNewDef(alt) {\n this.text = 'Step 2 complete. Running final step...';\n this.substanceService.getSubstanceDetails(this.sub.uuid).subscribe(e => {\n\n this.substanceService.getSubstanceDetails(this.oldAlt.uuid).subscribe(f => {\n const newSub = _.cloneDeep(e);\n\n newSub.substanceClass = this.oldAlt.substanceClass;\n this.fieldGetter[newSub.substanceClass].forEach(x => {\n if (newSub[x]) {\n delete newSub[x];\n }\n });\n this.fieldGetter[this.oldAlt.substanceClass].forEach(x => {\n if (this.oldAlt[x]) {\n newSub[x] = this.oldAlt[x];\n }\n });\n const subReferences = defiant.json.search(newSub, '//*[references]');\n const objectsA = subReferences.filter(h => {\n\n if (this.isObject(h)) {\n return true;\n } else {\n return false;\n }\n // return h.isObject;\n });\n const toPush = [];\n\n for (let i = 0; i < objectsA.length; i++) {\n const current = objectsA[i].references;\n\n for (let k = 0; k < current.length; k++) {\n for (let l = 0; l < this.oldAlt.references.length; l++) {\n if (this.oldAlt.references[l].uuid === current[k]) {\n const replace = this.utilsService.newUUID();\n current[k] = replace;\n this.oldAlt.references[l].uuid = replace;\n toPush.push(this.oldAlt.references[l]);\n }\n }\n }\n }\n\n toPush.forEach(ref => {\n newSub.references.push(ref);\n });\n newSub.references = newSub.references.filter(r => {\n if (r.uuid !== this.uuidNew) {\n return r;\n }\n });\n this.text = 'Step 2 complete. Sending update for final step...';\n this.updateRecord(newSub, () => {\n location.reload();\n }, 3);\n });\n });\n }\n\n updateRecord(nsub, cb, step) {\n console.log('SENDING THE FOLLOWING DATA FOR STEP ' + step);\n console.log(nsub);\n this.substanceService.saveSubstance(nsub).subscribe( data => {\n console.log('SUCCESS ON STEP ' + step + '. Response data:');\n console.log(data);\n\n if (step === 3) {\n this.text = 'Definitions switched successfully!';\n this.loadingService.setLoading(false);\n this.loading = false;\n setTimeout(function () {\n alert('Record definitions successfully switched. The page will now refresh. ' +\n '\\n\\n Please review and remove any unnecessary validation Notes created for each substance during the switch');\n cb();\n }, 1000);\n } else {\n cb();\n }\n },\n error => {\n this.loadingService.setLoading(false);\n this.loading = false;\n console.log('FAILURE - SERVER RESPONSE');\n console.log(error);\n console.log('SENT SUBSTANCE');\n console.log(nsub);\n let errorString = 'VALIDATION ERROR - \\n\\n';\n if (error && error.error && error.error.validationMessages) {\n error.error.validationMessages.forEach( e => {\n if (e.messageType === 'ERROR') {\n errorString += e.message + '\\n\\n';\n }\n });\n } else if (error && error.message) {\n errorString += error.message;\n } else {\n errorString += \"unknown server error\";\n }\n this.error = errorString;\n this.undo(step);\n });\n }\n\n undo(step) {\n this.text = '';\n\n if (step === 1) {\n this.text = '

    There was a problem changing the primary definition.

    No changes were made to either record';\n } else if (step === 2 && this.didStep5 === false || step === '2b') {\n this.text = '

    There was a problem changing the substance definition.


    To Restore the records:
    ' +\n '';\n } else {\n this.text = '

    There was a problem updating the new definition.


    ' +\n ' To Restore the records:
    • Go to ' +\n '' +\n 'the earliest alternative details history and restore version ' + this.altversion + '
      ' +\n 'If that version is not available, go to the ' +\n ' current version substance history card and select a previous version to restore
    • ' +\n '
    • Go to ' +\n 'the earliest primary version and restore version ' + this.primeVersion + '
      ' +\n 'If that version is not available, go to the
      ' +\n 'current version and select a previous version to restore ';\n }\n }\n\n\n getJson() {\n return this.substanceFormService.getJson();\n }\n\n _typeof2(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n this. _typeof2 = function _typeof2(_obj) { return typeof _obj; };\n } else {\n this._typeof2 = function _typeof2(_obj) {\n return _obj && typeof Symbol === 'function' && _obj.constructor === Symbol && _obj !== Symbol.prototype ? 'symbol' : typeof _obj; };\n }\n return this._typeof2(obj);\n }\n\n _typeof(obj) {\n if (typeof Symbol === 'function' && this._typeof2(Symbol.iterator) === 'symbol') {\n this._typeof = function _typeof(_obj) {\n return this._typeof2(_obj);\n };\n } else {\n this._typeof = function _typeof(_obj) {\n return _obj && typeof Symbol === 'function' &&\n _obj.constructor === Symbol &&\n _obj !== Symbol.prototype ? 'symbol' : this._typeof2(_obj);\n };\n }\n }\n\n isObject(a) {\n return (!!a) && (a.constructor === Object);\n }\n\n}\n","
      \n
      \n x\n \n
      \n
      \n
      \n \n \n\n \n \n\n \n
      \n
      \n \n Advanced Features\n \n \n \n Change Substance Class\n \n \n Change Status to approved\n \n \n Change Status to pending\n \n \n Set Definition to private\n \n \n Set Definition to public\n \n \n Un-approve record (Remove approval ID)\n \n \n Change Approval ID\n \n \n Set concept status to non-approved\n \n \n Merge subconcept\n \n \n Switch primary and alt definitions\n \n \n \n \n Predict N-Glycosylation Sites \n \n \n Predict disulfide links by monoclonal antibody type\n \n \n Register a Fragment\n \n \n \n \n
      \n \n
      Saved Drafts
      \n
      \n
      \n
      \n \n
      April 1, 2022 08:05
      \n
      \n
      \n
      \n
      \n \n
      April 1, 2022 08:00
      \n
      \n
      \n\n
      \n
      \n
      register = protein
      \n
      April 1, 2022 08:00
      \n
      \n
      \n\n \n
      \n \n
      \n \n \n
      \n
      \n \n\n
      \n \n New Class\n \n \n {{class}}\n \n \n \n
      \n
      \n \n \n \n\n
      \n
      \n
      \n {{submissionMessage}}\n
      \n
      \n 0\">\n
      \n Please correct or dismiss the following errors and submit again:\n
      \n
      \n \n
      \n {{message.messageType}}
      \n
      {{message.message}}
      \n {{link.text}}
      \n
      \n
      \n \n \n \n
      \n
      \n
      \n \n \n \n \n\n
      \n
      \n
      \n
      \n
      \n
      \n
      \n \n -1\"\n *ngFor=\"let section of formSections; index as index; last as isLast\" [id]=\"section.dynamicComponentName\"\n [ngClass]=\"{'hidden': section.isHidden}\">\n \n \n

      {{section.menuLabel}}

      \n
      \n
      \n \n
      \n
      \n
      \n
      \n
      \n
      \n
      \n
      \n
      \n","import {\n Component,\n OnInit,\n AfterViewInit,\n ViewChildren,\n ViewContainerRef,\n QueryList,\n OnDestroy, HostListener\n} from '@angular/core';\nimport { formSections } from './form-sections.constant';\nimport { ActivatedRoute, Router, RouterEvent, NavigationStart, NavigationEnd } from '@angular/router';\nimport { SubstanceService } from '../substance/substance.service';\nimport { LoadingService } from '../loading/loading.service';\nimport { MainNotificationService } from '../main-notification/main-notification.service';\nimport { AppNotification, NotificationType } from '../main-notification/notification.model';\nimport { DynamicComponentLoader } from '../dynamic-component-loader/dynamic-component-loader.service';\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\nimport { SubstanceFormSection } from './substance-form-section';\nimport { SubstanceFormService } from './substance-form.service';\nimport { ValidationMessage, SubstanceFormResults, SubstanceFormDefinition } from './substance-form.model';\nimport { Subscription, Observable } from 'rxjs';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { MatDialog } from '@angular/material/dialog';\nimport { JsonDialogComponent } from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport * as _ from 'lodash';\nimport * as defiant from '../../../../node_modules/defiant.js/dist/defiant.min.js';\nimport { Title } from '@angular/platform-browser';\nimport { AuthService } from '@gsrs-core/auth';\nimport { take, map } from 'rxjs/operators';\nimport { MatExpansionPanel } from '@angular/material/expansion';\nimport { SubmitSuccessDialogComponent } from './submit-success-dialog/submit-success-dialog.component';\nimport {MergeConceptDialogComponent} from '@gsrs-core/substance-form/merge-concept-dialog/merge-concept-dialog.component';\nimport {DefinitionSwitchDialogComponent} from '@gsrs-core/substance-form/definition-switch-dialog/definition-switch-dialog.component';\nimport { SubstanceEditImportDialogComponent } from '@gsrs-core/substance-edit-import-dialog/substance-edit-import-dialog.component';\nimport { StructuralUnit } from '@gsrs-core/substance';\nimport { ConfigService } from '@gsrs-core/config';\nimport { FragmentWizardComponent } from '@gsrs-core/admin/fragment-wizard/fragment-wizard.component';\nimport { SubstanceDraftsComponent } from '@gsrs-core/substance-form/substance-drafts/substance-drafts.component';\nimport { UtilsService } from '@gsrs-core/utils';\n\n@Component({\n selector: 'app-substance-form',\n templateUrl: './substance-form.component.html',\n styleUrls: ['./substance-form.component.scss']\n})\nexport class SubstanceFormComponent implements OnInit, AfterViewInit, OnDestroy {\n isLoading = true;\n id?: string;\n formSections: Array< SubstanceFormSection > = [];\n @ViewChildren('dynamicComponent', { read: ViewContainerRef }) dynamicComponents: QueryList;\n @ViewChildren('expansionPanel', { read: MatExpansionPanel }) matExpansionPanels: QueryList;\n private subClass: string;\n definitionType: string;\n expandedComponents = [\n 'substance-form-definition',\n 'substance-form-structure',\n 'substance-form-moieties',\n 'substance-form-references'\n ];\n showSubmissionMessages = false;\n submissionMessage: string;\n validationMessages: Array< ValidationMessage >;\n validationResult = false;\n private subscriptions: Array< Subscription > = [];\n copy: string;\n private overlayContainer: HTMLElement;\n serverError: boolean;\n canApprove: boolean;\n approving: boolean;\n definition: SubstanceFormDefinition;\n user: string;\n feature: string;\n isAdmin: boolean;\n isUpdater: boolean;\n messageField: string;\n uuid: string;\n substanceClass: string;\n drafts: Array;\n draftCount = 0;\n status: string;\n hidePopup: boolean;\n unit: StructuralUnit;\n autoSaveWait = 60000;\n classes = [\n 'concept',\n 'protein',\n 'chemical',\n 'structurallyDiverse',\n 'polymer',\n 'nucleicAcid',\n 'mixture',\n 'specifiedSubstanceG1',\n 'specifiedSubstanceG2',\n 'specifiedSubstanceG3'];\n imported = false;\n forceChange = false;\n sameSubstance = false;\n UNII: string;\n approvalType = 'lastEditedBy';\n previousState: number;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private substanceService: SubstanceService,\n private loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private router: Router,\n private dynamicComponentLoader: DynamicComponentLoader,\n private gaService: GoogleAnalyticsService,\n private substanceFormService: SubstanceFormService,\n private overlayContainerService: OverlayContainer,\n private configService: ConfigService,\n private dialog: MatDialog,\n private authService: AuthService,\n private titleService: Title,\n private utilsService: UtilsService\n ) {\n this.substanceService.showImagePopup.subscribe (data => {\n this.hidePopup = data;\n })\n this.substanceService.imagePopupUnit.subscribe (data => {\n this.unit = data;\n })\n }\n\n showHidePopup(): void {\n this.hidePopup = !this.hidePopup;\n this.substanceService.showImagePopup.next(this.hidePopup);\n }\n\n\n autoSave(): void {\n setTimeout(() => {\n if (this.substanceFormService.autoSave()) {\n this.saveDraft(true);\n } else {\n }\n this.autoSave();\n }, this.autoSaveWait);\n }\n\n openModal(templateRef) {\n\n const dialogRef = this.dialog.open(templateRef, {\n height: '200px',\n width: '400px'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(result => {\n this.overlayContainer.style.zIndex = null;\n });\n }\n\n showDrafts(): void {\n const dialogRef = this.dialog.open(SubstanceDraftsComponent, {\n maxHeight: '85%',\n width: '70%',\n data: {uuid: this.id}\n });\n this.overlayContainer.style.zIndex = '1002';\n\n dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n\n\n if (response) {\n this.loadingService.setLoading(true);\n // console.log(response.json);\n\n const read = response.substance;\n if (this.id && read.uuid && this.id === read.uuid) {\n this.substanceFormService.importSubstance(read, 'update');\n this.submissionMessage = null;\n this.validationMessages = [];\n this.showSubmissionMessages = false;\n setTimeout(() => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.overlayContainer.style.zIndex = null;\n }, 1000);\n }else if (response.uuid && response.uuid != 'register'){\n const url = '/substances/' + response.uuid + '/edit?action=import&source=draft';\n this.router.navigateByUrl(url, { state: { record: response.substance } });\n } else {\n setTimeout(() => {\n this.overlayContainer.style.zIndex = null;\n this.router.onSameUrlNavigation = 'reload';\n this.loadingService.setLoading(false);\n this.router.onSameUrlNavigation = 'reload';\n this.router.navigateByUrl('/substances/register/' + response.substance.substanceClass + '?action=import', { state: { record: response.substance } });\n \n }, 1000);\n }\n }\n\n let keys = Object.keys(localStorage);\n let i = keys.length;\n this.draftCount =0;\n this.drafts = [];\n\n while ( i-- ) {\n if (keys[i].startsWith('gsrs-draft-')){\n const entry = JSON.parse(localStorage.getItem(keys[i]));\n entry.key = keys[i];\n if (this.id && entry.uuid === this.id) {\n this.draftCount++;\n } else if (!this.id && entry.type === (this.activatedRoute.snapshot.params['type']) && entry.uuid === 'register') {\n this.draftCount++;\n }\n this.drafts.push( entry );\n\n }\n }\n });\n }\n \n\n importDialog(): void {\n const dialogRef = this.dialog.open(SubstanceEditImportDialogComponent, {\n width: '650px',\n autoFocus: false\n\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe(response => {\n if (response) {\n // this.overlayContainer.style.zIndex = null;\n this.loadingService.setLoading(true);\n\n // attempting to reload a substance without a router refresh has proven to cause issues with the relationship dropdowns\n // There are probably other components affected. There is an issue with subscriptions likely due to some OnInit not firing\n\n const read = JSON.parse(response);\n if (this.id && read.uuid && this.id === read.uuid) {\n this.substanceFormService.importSubstance(read, 'update');\n this.submissionMessage = null;\n this.validationMessages = [];\n this.showSubmissionMessages = false;\n setTimeout(() => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.overlayContainer.style.zIndex = null;\n }, 1000);\n /* } else {\n if ( read.substanceClass === this.substanceClass) {\n this.imported = true;\n this.substanceFormService.importSubstance(read);\n this.submissionMessage = null;\n this.validationMessages = [];\n this.showSubmissionMessages = false;\n this.loadingService.setLoading(false);\n this.isLoading = false;*/\n } else {\n setTimeout(() => {\n this.overlayContainer.style.zIndex = null;\n this.router.onSameUrlNavigation = 'reload';\n this.loadingService.setLoading(false);\n this.router.navigateByUrl('/substances/register?action=import', { state: { record: response } });\n\n }, 1000);\n }\n }\n // }\n });\n\n }\n\n test() {\n this.router.navigated = false;\n this.router.navigate([this.router.url]);\n }\n\n ngOnInit() {\n this.loadingService.setLoading(true);\n if (this.configService.configData && this.configService.configData.approvalType) {\n this.approvalType = this.configService.configData.approvalType;\n }\n if (this.configService.configData && this.configService.configData.autoSaveWait) {\n this.autoSaveWait = this.configService.configData.autoSaveWait;\n }\n this.isAdmin = this.authService.hasRoles('admin');\n this.isUpdater = this.authService.hasAnyRoles('Updater', 'SuperUpdater');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.imported = false;\n const routeSubscription = this.activatedRoute\n .params\n .subscribe(params => {\n \n const action = this.activatedRoute.snapshot.queryParams['action'] || null;\n \n if (params['id']) {\n \n if(action && action === 'import' && window.history.state) {\n const record = window.history.state;\n this.imported = true;\n \n this.getDetailsFromImport(record.record);\n } else {\n const id = params['id'];\n if (id !== this.id) {\n this.id = id;\n this.gaService.sendPageView(`Substance Edit`);\n const newType = this.activatedRoute.snapshot.queryParamMap.get('switch') || null;\n if (newType) {\n this.getSubstanceDetails(newType);\n } else {\n this.getSubstanceDetails();\n }\n }\n }\n } else {\n if (action && action === 'import' && window.history.state) {\n const record = window.history.state;\n this.imported = true;\n this.getDetailsFromImport(record.record);\n this.gaService.sendPageView(`Substance Register`);\n\n } else {\n this.copy = this.activatedRoute.snapshot.queryParams['copy'] || null;\n if (this.copy) {\n const copyType = this.activatedRoute.snapshot.queryParams['copyType'] || null;\n this.getPartialSubstanceDetails(this.copy, copyType);\n this.gaService.sendPageView(`Substance Register`);\n } else {\n setTimeout(() => {\n this.gaService.sendPageView(`Substance Register`);\n this.subClass = this.activatedRoute.snapshot.params['type'] || 'chemical';\n this.substanceClass = this.subClass;\n this.titleService.setTitle('Register - ' + this.subClass);\n this.substanceFormService.loadSubstance(this.subClass).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[this.subClass]);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n\n });\n });\n }\n }\n\n\n }\n });\n this.subscriptions.push(routeSubscription);\n const routerSubscription = this.router.events.subscribe((event: RouterEvent) => {\n if (event instanceof NavigationStart) {\n this.substanceFormService.unloadSubstance();\n }\n });\n this.subscriptions.push(routerSubscription);\n this.approving = false;\n const definitionSubscription = this.substanceFormService.definition.subscribe(response => {\n this.definition = response;\n setTimeout(() => {\n this.canApprove = this.canBeApproved();\n });\n });\n this.subscriptions.push(definitionSubscription);\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n this.user = auth.identifier;\n setTimeout(() => {\n this.canApprove = this.canBeApproved();\n\n });\n });\n\n }\n\ngetDrafts() {\n let keys = Object.keys(localStorage);\n let i = keys.length;\n this.drafts = [];\n let temp = 0;\n while ( i-- ) {\n if (keys[i].startsWith('gsrs-draft-')){\n const entry = JSON.parse(localStorage.getItem(keys[i]));\n entry.key = keys[i];\n if (this.id && entry.uuid === this.id) {\n temp++;\n // this.draftCount++;\n } else if (!this.id && entry.type === (this.activatedRoute.snapshot.params['type']) && entry.uuid === 'register') {\n temp++;\n // this.draftCount++;\n }\n this.drafts.push( entry );\n\n }\n }\n this.draftCount = temp;\n}\n\n ngAfterViewInit(): void {\n this.getDrafts();\n \n\n const subscription = this.dynamicComponents.changes\n .subscribe(() => {\n\n const total = this.formSections.length;\n let finished = 0;\n if (!this.forceChange) {\n this.loadingService.setLoading(true);\n const startTime = new Date();\n this.dynamicComponents.forEach((cRef, index) => {\n this.dynamicComponentLoader\n .getComponentFactory(this.formSections[index].dynamicComponentName)\n .subscribe(componentFactory => {\n this.loadingService.setLoading(true);\n this.formSections[index].dynamicComponentRef = cRef.createComponent(componentFactory);\n this.formSections[index].matExpansionPanel = this.matExpansionPanels.find((item, panelIndex) => index === panelIndex);\n this.formSections[index].dynamicComponentRef.instance.menuLabelUpdate.pipe(take(1)).subscribe(label => {\n this.formSections[index].menuLabel = label;\n });\n const hiddenStateSubscription =\n this.formSections[index].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(isHidden => {\n this.formSections[index].isHidden = isHidden;\n });\n this.subscriptions.push(hiddenStateSubscription);\n this.formSections[index].dynamicComponentRef.instance.canAddItemUpdate.pipe(take(1)).subscribe(isList => {\n this.formSections[index].canAddItem = isList;\n if (isList) {\n const aieSubscription = this.formSections[index].addItemEmitter.subscribe(() => {\n this.formSections[index].matExpansionPanel.open();\n this.formSections[index].dynamicComponentRef.instance.addItem();\n });\n this.formSections[index].dynamicComponentRef.instance.componentDestroyed.pipe(take(1)).subscribe(() => {\n aieSubscription.unsubscribe();\n });\n }\n });\n this.formSections[index].dynamicComponentRef.changeDetectorRef.detectChanges();\n finished++;\n if (finished >= total) {\n this.loadingService.setLoading(false);\n } else {\n const currentTime = new Date();\n if (currentTime.getTime() - startTime.getTime() > 12000) {\n if (confirm('There was a network error while fetching files, would you like to refresh?')) {\n window.location.reload();\n }\n }\n }\n setTimeout(() => {\n this.loadingService.setLoading(false);\n this.UNII = this.substanceFormService.getUNII();\n }, 5);\n });\n });\n // this.loadingService.setLoading(false);\n\n }\n subscription.unsubscribe();\n setTimeout(() => {\n\n this.autoSave();},10000);\n\n });\n }\n\n openedChange(event: any) {\n if (event) {\n this.overlayContainer.style.zIndex = '1002';\n } else {\n this.overlayContainer.style.zIndex = '1000';\n }\n }\n\n useFeature(feature: any): void {\n this.feature = feature.value;\n if (this.feature === 'glyco') {\n this.glyco();\n } else if (this.feature === 'disulfide') {\n this.disulfide();\n } if (this.feature === 'concept') {\n this.concept();\n } if (this.feature === 'unapprove') {\n if (confirm('Are you sure you\\'d like to remove the approvalID?')) {\n this.substanceFormService.unapproveRecord();\n }\n this.feature = undefined;\n }\n if (this.feature === 'setPrivate') {\n this.substanceFormService.setDefinitionPrivate();\n this.feature = undefined;\n }\n if (this.feature === 'setPublic') {\n this.substanceFormService.setDefinitionPublic();\n this.feature = undefined;\n }\n if (this.feature === 'approved') {\n this.substanceFormService.changeStatus('approved');\n this.feature = undefined;\n }\n if (this.feature === 'pending') {\n this.substanceFormService.changeStatus('pending');\n this.feature = undefined;\n }\n if (this.feature === 'merge') {\n this.mergeConcept();\n this.feature = undefined;\n }\n if (this.feature === 'switch') {\n this.definitionSwitch();\n this.feature = undefined;\n }\n if (this.feature === 'changeApproval') {\n this.substanceFormService.changeApproval();\n }\n if (this.feature === 'fragment') {\n this.openFragmentDialog();\n }\n\n \n\n }\n\n openFragmentDialog(): void {\n const dialogRef = this.dialog.open(FragmentWizardComponent, {\n width: '70%',\n height: '70%'\n });\n this.overlayContainer.style.zIndex = '50';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe(response => {\n\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n changeClass(type: any): void {\n this.router.navigate(['/substances', this.id, 'edit'], { queryParams: { switch: type.value } });\n this.feature = undefined;\n }\n\n changeStatus(status: any): void {\n this.substanceFormService.changeStatus(status);\n this.feature = undefined;\n }\n\n concept(): void {\n this.substanceFormService.conceptNonApproved();\n this.feature = undefined;\n }\n\n glyco(): void {\n this.substanceFormService.predictSites();\n this.feature = undefined;\n }\n\n disulfide(): void {\n this.substanceFormService.disulfideLinks();\n this.feature = undefined;\n }\n\n ngOnDestroy(): void {\n // this.substanceFormService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n canBeApproved(): boolean {\n const action = this.activatedRoute.snapshot.queryParams['action'] || null;\n if (action && action === 'import') {\n return false;\n }\n // if config var set and set to 'createdBy then set approval button enabled if user is not creator\n if(this.approvalType === 'createdBy') {\n if (this.definition && this.definition.createdBy && this.user) {\n const creator = this.definition.createdBy;\n if (!creator) {\n return false;\n }\n if (this.definition.status === 'approved') {\n return false;\n }\n if (creator === this.user) {\n return false;\n }\n return true;\n \n }\n return false;\n //default to 'lastEditedBy' if not set in config\n } else {\n if (this.definition && this.definition.lastEditedBy && this.user) {\n const lastEdit = this.definition.lastEditedBy;\n if (!lastEdit) {\n return false;\n }\n if (this.definition.status === 'approved') {\n return false;\n\n }\n if (lastEdit === this.user) {\n return false;\n }\n return true;\n }\n }\n \n }\n\n showJSON(): void {\n const dialogRef = this.dialog.open(JsonDialogComponent, {\n width: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe(response => {\n\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n getSubstanceDetails(newType?: string): void {\n this.substanceService.getSubstanceDetails(this.id).pipe(take(1)).subscribe(response => {\n if (response._name){\n this.titleService.setTitle('Edit - ' + response._name);\n }\n if (response) {\n this.definitionType = response.definitionType;\n if (newType) {\n response = this.substanceFormService.switchType(response, newType);\n }\n this.substanceClass = response.substanceClass;\n this.status = response.status;\n this.substanceFormService.loadSubstance(response.substanceClass, response).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[response.substanceClass]);\n });\n } else {\n this.handleSubstanceRetrivalError();\n }\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }, error => {\n this.gaService.sendException('getSubstanceDetails: error from API call');\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.handleSubstanceRetrivalError();\n });\n }\n\n jsonValid(file: any): boolean {\n try {\n JSON.parse(file);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n getDetailsFromImport(state: any, same?: boolean) {\n if(!this.jsonValid(state)) {\n state = JSON.stringify(state);\n }\n if (state && this.jsonValid(state)) {\n const response = JSON.parse(state);\n same = false;\n this.definitionType = response.definitionType;\n this.substanceClass = response.substanceClass;\n this.status = response.status;\n this.substanceFormService.loadSubstance(response.substanceClass, response, 'import').pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[response.substanceClass]);\n if (!same) {\n setTimeout(() => {\n this.forceChange = true;\n this.dynamicComponents.forEach((cRef, index) => {\n this.dynamicComponentLoader\n .getComponentFactory(this.formSections[index].dynamicComponentName)\n .subscribe(componentFactory => {\n this.formSections[index].dynamicComponentRef = cRef.createComponent(componentFactory);\n this.formSections[index].matExpansionPanel = this.matExpansionPanels.find((item, panelIndex) => index === panelIndex);\n this.formSections[index].dynamicComponentRef.instance.menuLabelUpdate.pipe(take(1)).subscribe(label => {\n this.formSections[index].menuLabel = label;\n });\n const hiddenStateSubscription =\n this.formSections[index].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(isHidden => {\n this.formSections[index].isHidden = isHidden;\n });\n this.subscriptions.push(hiddenStateSubscription);\n this.formSections[index].dynamicComponentRef.instance.canAddItemUpdate.pipe(take(1)).subscribe(isList => {\n this.formSections[index].canAddItem = isList;\n if (isList) {\n const aieSubscription = this.formSections[index].addItemEmitter.subscribe(() => {\n this.formSections[index].matExpansionPanel.open();\n this.formSections[index].dynamicComponentRef.instance.addItem();\n });\n this.formSections[index].dynamicComponentRef.instance.componentDestroyed.pipe(take(1)).subscribe(() => {\n aieSubscription.unsubscribe();\n });\n }\n });\n this.formSections[index].dynamicComponentRef.changeDetectorRef.detectChanges();\n });\n });\n\n this.canApprove = false;\n });\n }\n }, error => {\n this.loadingService.setLoading(false);\n });\n } else {\n this.handleSubstanceRetrivalError();\n this.loadingService.setLoading(false);\n\n }\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }\n\n getPartialSubstanceDetails(uuid: string, type: string): void {\n this.substanceService.getSubstanceDetails(uuid).pipe(take(1)).subscribe(response => {\n if (response) {\n this.substanceClass = response.substanceClass;\n this.status = response.status;\n delete response.uuid;\n if (response._name) {\n delete response._name;\n }\n this.scrub(response, type);\n this.substanceFormService.loadSubstance(response.substanceClass, response).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[response.substanceClass]);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n } else {\n this.handleSubstanceRetrivalError();\n }\n }, error => {\n this.gaService.sendException('getSubstanceDetails: error from API call');\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.handleSubstanceRetrivalError();\n });\n }\n\n\n private setFormSections(sectionNames: Array = []): void {\n this.formSections = [];\n sectionNames.forEach(sectionName => {\n const formSection = new SubstanceFormSection(sectionName);\n /* if (!this.definitionType || !(this.definitionType === 'ALTERNATIVE' &&\n (formSection.dynamicComponentName === 'substance-form-names'\n || formSection.dynamicComponentName === 'substance-form-codes-card'))) {\n } */\n this.formSections.push(formSection);\n });\n }\n\n private handleSubstanceRetrivalError() {\n const notification: AppNotification = {\n message: 'The substance you\\'re trying to edit doesn\\'t exist.',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/substances/register']);\n this.substanceFormService.loadSubstance(this.subClass).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections.chemical);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }, 5000);\n }\n\n validate(validationType?: string): void {\n if (validationType && validationType === 'approval') {\n this.approving = true;\n } else {\n this.approving = false;\n }\n this.isLoading = true;\n this.serverError = false;\n this.loadingService.setLoading(true);\n this.substanceFormService.validateSubstance().pipe(take(1)).subscribe(results => {\n this.submissionMessage = null;\n this.validationMessages = results.validationMessages.filter(\n message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.validationResult = results.valid;\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n if (this.validationMessages.length === 0 && results.valid === true) {\n this.submissionMessage = 'Substance is Valid. Would you like to submit?';\n }\n if (validationType && validationType === 'approval') {\n this.submissionMessage = 'Are you sure you\\'d like to approve this substance?';\n }\n }, error => {\n this.addServerError(error);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }\n\n approve(): void {\n this.isLoading = true;\n this.loadingService.setLoading(true);\n this.substanceFormService.approveSubstance().pipe(take(1)).subscribe(response => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.validationMessages = null;\n this.openSuccessDialog('approve');\n this.submissionMessage = 'Substance was approved successfully';\n this.showSubmissionMessages = true;\n this.validationResult = false;\n },\n (error: SubstanceFormResults) => {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.submissionMessage = 'Substance Could not be approved';\n this.addServerError(error.serverError);\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = null;\n }, 10000);\n }\n );\n }\n\n submit(): void {\n this.isLoading = true;\n this.approving = false;\n this.loadingService.setLoading(true);\n this.substanceFormService.saveSubstance().pipe(take(1)).subscribe(response => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.validationMessages = null;\n this.showSubmissionMessages = false;\n this.submissionMessage = '';\n if (!this.id) {\n this.id = response.uuid;\n }\n this.openSuccessDialog();\n }, (error: SubstanceFormResults) => {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.submissionMessage = null;\n if (error.validationMessages && error.validationMessages.length) {\n this.validationResult = error.isSuccessfull;\n this.validationMessages = error.validationMessages\n .filter(message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.showSubmissionMessages = true;\n } else {\n this.submissionMessage = 'There was a problem with your submission';\n this.addServerError(error.serverError);\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = null;\n }, 8000);\n }\n });\n }\n\n dismissValidationMessage(index: number) {\n this.validationMessages.splice(index, 1);\n\n if (this.validationMessages.length === 0) {\n this.submissionMessage = 'Substance is Valid. Would you like to submit?';\n }\n }\n\n addServerError(error: any): void {\n this.serverError = true;\n this.validationResult = false;\n this.validationMessages = null;\n\n const message: ValidationMessage = {\n actionType: 'server failure',\n links: [],\n appliedChange: false,\n suggestedChange: false,\n messageType: 'ERROR',\n message: 'Unknown Server Error'\n };\n if (error && error.error && error.error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || ': ') + error.error.message;\n } else if (error && error.error && (typeof error.error) === 'string') {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.error;\n } else if (error && error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.message;\n }\n this.validationMessages = [message];\n this.showSubmissionMessages = true;\n }\n\n toggleValidation(): void {\n this.showSubmissionMessages = !this.showSubmissionMessages;\n }\n\n dismissAllValidationMessages(): void {\n for (let i = this.validationMessages.length - 1; i >= 0; i--) {\n if (this.validationMessages[i].messageType !== 'ERROR') {\n this.validationMessages.splice(i, 1);\n }\n }\n if (this.validationMessages.length === 0) {\n this.submissionMessage = 'Substance is Valid. Would you like to submit?';\n }\n }\n\n @HostListener('window:beforeunload', ['$event'])\n unloadNotification($event: any) {\n if (this.substanceFormService.isSubstanceUpdated) {\n $event.returnValue = true;\n }\n }\n\n scrub(oldraw: any, importType: string): any {\n function guid() {\n function s4() {\n return Math.floor((1 + Math.random()) * 0x10000)\n .toString(16)\n .substring(1);\n }\n return s4() + s4() + '-' + s4() + '-' + s4() + '-' +\n s4() + '-' + s4() + s4() + s4();\n }\n const old = oldraw;\n\n const idHolders = defiant.json.search(old, '//*[id]');\n const idMap = {};\n for (let i = 0; i < idHolders.length; i++) {\n const oid = idHolders[i].id;\n if (idMap[oid]) {\n idHolders[i].id = idMap[oid];\n } else {\n const nid = guid();\n idHolders[i].id = nid;\n idMap[oid] = nid;\n }\n }\n\n const uuidHolders = defiant.json.search(old, '//*[uuid]');\n const _map = {};\n for (let i = 0; i < uuidHolders.length; i++) {\n const ouuid = uuidHolders[i].uuid;\n if (_map[ouuid]) {\n uuidHolders[i].uuid = _map[ouuid];\n if (uuidHolders[i].id) {\n uuidHolders[i].id = _map[ouuid];\n }\n } else {\n const nid = guid();\n uuidHolders[i].uuid = nid;\n _map[ouuid] = nid;\n if (uuidHolders[i].id) {\n uuidHolders[i].id = nid;\n }\n }\n }\n const refHolders = defiant.json.search(old, '//*[references]');\n for (let i = 0; i < refHolders.length; i++) {\n const refs = refHolders[i].references;\n for (let j = 0; j < refs.length; j++) {\n const or = refs[j];\n if (typeof or === 'object') { continue; }\n refs[j] = _map[or];\n }\n }\n defiant.json.search(old, '//*[uuid]');\n let remove = ['BDNUM'];\n if (this.configService.configData && this.configService.configData.filteredDuplicationCodes) {\n remove = this.configService.configData.filteredDuplicationCodes;\n }\n remove.forEach(code => {\n _.remove(old.codes, {\n codeSystem: code\n });\n })\n \n const createHolders = defiant.json.search(old, '//*[created]');\n for (let i = 0; i < createHolders.length; i++) {\n const rec = createHolders[i];\n delete rec['created'];\n delete rec['createdBy'];\n delete rec['lastEdited'];\n delete rec['lastEditedBy'];\n }\n\n const originHolders = defiant.json.search(old, '//*[originatorUuid]');\n for (let i = 0; i < originHolders.length; i++) {\n const rec = originHolders[i];\n delete rec['originatorUuid'];\n }\n\n delete old.approvalID;\n delete old.approved;\n delete old.approvedBy;\n old.status = 'pending';\n if ((importType) && (importType === 'definition')) {\n old.names = [];\n old.codes = [];\n old.notes = [];\n old.relationships = [];\n old.tags = [];\n }\n delete old['createdBy'];\n delete old['created'];\n delete old['lastEdited'];\n delete old['lastEditedBy'];\n delete old['version'];\n delete old['$$update'];\n delete old['changeReason'];\n\n\n if (true) {\n const refSet = {};\n\n const refHolders2 = defiant.json.search(old, '//*[references]');\n for (let i = 0; i < refHolders2.length; i++) {\n const refs = refHolders2[i].references;\n for (let j = 0; j < refs.length; j++) {\n const or = refs[j];\n if (typeof or === 'object') { continue; }\n refSet[or] = true;\n }\n }\n\n const nrefs = _.chain(old.references)\n .filter(function (ref) {\n if (refSet[ref.uuid]) {\n return true;\n } else {\n return false;\n }\n })\n .value();\n\n old.references = nrefs;\n\n }\n\n return old;\n }\n\n openSuccessDialog(type?: string): void {\n const dialogRef = this.dialog.open(SubmitSuccessDialogComponent, {});\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe((response?: 'continue' | 'browse' | 'view') => {\n\n this.substanceFormService.bypassUpdateCheck();\n if (response === 'continue') {\n this.router.navigate(['/substances', this.id, 'edit']);\n } else if (response === 'browse') {\n this.router.navigate(['/browse-substance']);\n } else if (response === 'view') {\n this.router.navigate(['/substances', this.id]);\n } else {\n this.submissionMessage = 'Substance was saved successfully!';\n if (type && type === 'approve') {\n this.submissionMessage = 'Substance was approved successfully';\n }\n this.showSubmissionMessages = true;\n this.validationResult = false;\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = '';\n this.router.navigate(['/substances', this.id, 'edit']);\n }, 3000);\n }\n });\n this.subscriptions.push(dialogSubscription);\n\n}\n\n\nmergeConcept() {\n this.feature = undefined;\n const dialogRef = this.dialog.open(MergeConceptDialogComponent, {\n width: '900px', data: {uuid: this.id}\n });\n this.overlayContainer.style.zIndex = '1002';\n}\n\n definitionSwitch() {\n this.feature = undefined;\n const dialogRef = this.dialog.open(DefinitionSwitchDialogComponent, {\n width: '900px', data: {uuid: this.id}, autoFocus: false\n });\n this.overlayContainer.style.zIndex = '1000';\n }\n\n fixLink(link: string) {\n return this.substanceService.oldLinkFix(link);\n }\n\n\n saveDraft(auto?: boolean) {\n const json = this.substanceFormService.cleanSubstance();\n const time = new Date().getTime();\n \n const uuid = json.uuid ? json.uuid : 'register';\n const type = json.substanceClass;\n let primary = null;\n json.names.forEach(name => {\n if (name.displayName) {\n primary = name.name;\n }\n });\n if (!primary && json.names.length > 0) {\n primary = json.names[0].name;\n }\n if(!auto) {\n const file = 'gsrs-draft-' + time;\n\n let draft = {\n 'uuid': uuid,\n 'date': time,\n 'type': type,\n 'name': primary,\n 'substance': json,\n 'auto': false,\n 'file': file\n }\n \n localStorage.setItem(file, JSON.stringify(draft));\n this.draftCount++;\n\n } else {\n this.getDrafts();\n let autos = this.drafts.filter(opt => {\n return opt.auto;\n });\n let auto1 = null;\n let auto2 = null;\n let auto3 = null;\n this.drafts.forEach(draft => {\n if (draft.auto) {\n if (draft.file === 'gsrs-draft-auto1') {\n auto1 = draft;\n }\n if (draft.file === 'gsrs-draft-auto2') {\n auto2 = draft;\n }\n if (draft.file === 'gsrs-draft-auto3') {\n auto3 = draft;\n }\n }\n });\n let file = 'gsrs-draft-auto';\n\n if (!auto1) {\n file = 'gsrs-draft-auto1';\n this.draftCount++;\n\n } else if (!auto2) {\n file = 'gsrs-draft-auto2';\n this.draftCount++;\n\n } else if (!auto3) {\n file = 'gsrs-draft-auto3';\n this.draftCount++;\n\n } else {\n if(auto1.date < auto2.date && auto1.date < auto3.date) {\n file = 'gsrs-draft-auto1';\n }\n else if (auto2.date < auto1.date && auto2.date < auto3.date) {\n file = 'gsrs-draft-auto2';\n }\n else {\n file = 'gsrs-draft-auto3';\n }\n }\n\n let draft = {\n 'uuid': uuid,\n 'date': time,\n 'type': type,\n 'name': primary,\n 'substance': json,\n 'auto': true,\n 'file': file\n }\n\n localStorage.setItem(file, JSON.stringify(draft));\n\n \n }\n \n\n \n\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanDeactivate } from '@angular/router';\nimport { SubstanceFormComponent } from './substance-form.component';\nimport { SubstanceFormService } from './substance-form.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CanDeactivateSubstanceFormGuard implements CanDeactivate {\n constructor(\n private substanceFormService: SubstanceFormService\n ) {}\n canDeactivate(component: SubstanceFormComponent): boolean {\n if (this.substanceFormService.isSubstanceUpdated) {\n if (confirm('You have unsaved changes! If you leave, your changes will be lost.')) {\n return true;\n } else {\n return false;\n }\n }\n return true;\n }\n}\n","
      \n
      \n 0\">\n \n \n {{option}}\n \n \n \n
      \n
      \n \n \n \n {{option}}\n \n \n \n \n Show all fields\n \n \n
      \n \n \n \n \n \n \n Show common fields\n \n \n \n \n {{option}}\n \n \n
      \n
      \n
      \n \n \n \n {{option}}\n \n \n \n
      \n
      \n
      \n
      \n \n \n Required\n \n
      \n
      \n \n \n Required\n \n \n \n
      \n
      \n \n \n \n {{option.display}}\n \n \n Required\n \n
      \n
      \n
      \n
      \n","import { Component, OnInit, Input, OnDestroy, Output, EventEmitter, AfterViewInit } from '@angular/core';\nimport { QueryableSubstanceDictionary, CommandInput, Command } from '../queryable-substance-dictionary.model';\nimport { FormControl } from '@angular/forms';\nimport { Subscription } from 'rxjs';\nimport { typeCommandOptions, inputTypes } from './type-command-options.constant';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { ControlledVocabularyService, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { QueryStatement } from './query-statement.model';\n\n@Component({\n selector: 'app-query-statement',\n templateUrl: './query-statement.component.html',\n styleUrls: ['./query-statement.component.scss']\n})\nexport class QueryStatementComponent implements OnInit, AfterViewInit, OnDestroy {\n @Input() queryStatementHash?: number;\n @Input() queryableOptionsCommon: Array;\n private _index = 0;\n private _queryableDictionary: QueryableSubstanceDictionary;\n @Output() queryUpdated = new EventEmitter();\n private allOptions: Array;\n queryableOptionsAll: Array;\n queryablePropertiesControl = new FormControl();\n queryablePropertiesAutocompleteControl = new FormControl();\n commandControl = new FormControl();\n private subscriptions: Array = [];\n conditionOptions = [\n 'AND',\n 'OR',\n 'NOT'\n ];\n conditionControl = new FormControl();\n selectedCondition = '';\n selectedQueryableProperty: string;\n selectedQueryablePropertyType: string;\n selectedLucenePath: string;\n commandOptions: Array;\n selectedCommandOption: string;\n commandInputs: Array;\n queryParts: Array = [];\n private typeCommandOptions = typeCommandOptions;\n commandInputValueDict: {[queryablePropertyType: string]: Array } = {};\n private overlayContainer: HTMLElement;\n cvOptions: Array;\n isShowCommonFields = true;\n\n constructor(\n private overlayContainerService: OverlayContainer,\n public cvService: ControlledVocabularyService\n ) {}\n\n ngOnInit() {\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n inputTypes.forEach(key => {\n this.commandInputValueDict[key] = [];\n });\n\n const subscription = this.queryablePropertiesControl.valueChanges.subscribe(value => {\n this.queryablePropertySelected(value);\n });\n this.subscriptions.push(subscription);\n\n const allQueriablePropertiesSubscription = this.queryablePropertiesAutocompleteControl.valueChanges.subscribe(value => {\n this.queryableOptionsAll = this.allOptions.filter(option => {\n return option.toLowerCase().indexOf(value.toLowerCase()) > -1;\n });\n });\n this.subscriptions.push(allQueriablePropertiesSubscription);\n\n const commandSubscription = this.commandControl.valueChanges.subscribe((command: string) => {\n this.setCommand(command);\n });\n this.subscriptions.push(commandSubscription);\n\n if (this._index > 0) {\n this.conditionControl.setValue('AND');\n this.selectedCondition = 'AND ';\n const conditionSubscription = this.conditionControl.valueChanges.subscribe((condition: string) => {\n this.selectedCondition = `${condition} `;\n this.refreshQuery();\n });\n this.subscriptions.push(conditionSubscription);\n }\n\n let queryStatement: QueryStatement;\n\n if (this.queryStatementHash) {\n const queryStatementString = localStorage.getItem(this.queryStatementHash.toString());\n if (queryStatementString) {\n queryStatement = JSON.parse(queryStatementString);\n }\n }\n\n if (queryStatement != null) {\n const queryablePropertyType = this._queryableDictionary[queryStatement.queryableProperty].type;\n let inputType: string;\n const commandObject = typeCommandOptions[queryablePropertyType][queryStatement.command] as Command;\n if (commandObject.commandInputs) {\n inputType = commandObject.commandInputs[0].type;\n this.commandInputValueDict[inputType] = queryStatement.commandInputValues;\n }\n this.queryParts = queryStatement.queryParts;\n this.conditionControl.setValue(queryStatement.condition.trim(), { emitEvent: false });\n this.selectedCondition = queryStatement.condition;\n this.isShowCommonFields = this.queryableOptionsCommon.indexOf(queryStatement.queryableProperty) > -1;\n if (this.queryableOptionsCommon.indexOf(queryStatement.queryableProperty) > -1) {\n this.isShowCommonFields = true;\n this.queryablePropertiesControl.setValue(queryStatement.queryableProperty, { emitEvent: false });\n } else {\n this.isShowCommonFields = false;\n this.queryablePropertiesAutocompleteControl.setValue(queryStatement.queryableProperty, { emitEvent: false });\n }\n this.processQueriablePropertyChange(queryStatement.queryableProperty);\n this.commandControl.setValue(queryStatement.command);\n } else {\n this.queryablePropertiesControl.setValue('All');\n }\n }\n\n ngAfterViewInit() {\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n @Input()\n set queryableDictionary(queryableSubstanceDictionary: QueryableSubstanceDictionary) {\n if (queryableSubstanceDictionary != null) {\n this._queryableDictionary = queryableSubstanceDictionary;\n }\n }\n\n @Input()\n set index(index: number) {\n if (index != null) {\n this._index = index;\n if (this._index === 0 && this.commandInputs) {\n this.selectedCondition = '';\n this.refreshQuery();\n }\n }\n }\n\n get index(): number {\n return this._index;\n }\n\n @Input()\n set queryableOptions(options: Array) {\n this.allOptions = options;\n this.queryableOptionsAll = options;\n }\n\n private setCommand(command: string): void {\n this.selectedCommandOption = command;\n const commandObj = this.typeCommandOptions[this.selectedQueryablePropertyType][command] as any;\n if (commandObj.commandInputs) {\n this.commandInputs = commandObj.commandInputs;\n this.refreshQuery();\n } else if (commandObj.constructQuery) {\n this.commandInputs = [];\n commandObj.constructQuery(\n command.trim(),\n this.selectedCondition,\n this.selectedQueryableProperty,\n this.selectedLucenePath,\n this.queryUpdated,\n this.queryParts\n );\n }\n }\n\n queryablePropertySelected(queryableProperty: string): void {\n this.processQueriablePropertyChange(queryableProperty);\n if (!this._queryableDictionary[queryableProperty].cvDomain && this._queryableDictionary[queryableProperty].type === 'string') {\n this.commandControl.setValue('ALL of the following words in any order or position');\n } else {\n this.commandControl.setValue(this.commandOptions[0]);\n }\n }\n\n private processQueriablePropertyChange(queryableProperty: string): void {\n this.selectedQueryableProperty = queryableProperty;\n\n if (this._queryableDictionary[queryableProperty].cvDomain) {\n this.setCvOptions(this._queryableDictionary[queryableProperty].cvDomain);\n }\n this.selectedLucenePath = this._queryableDictionary[queryableProperty].lucenePath;\n if (this.selectedLucenePath) {\n this.selectedLucenePath = this.selectedLucenePath + ':';\n }\n this.selectedQueryablePropertyType = this._queryableDictionary[queryableProperty].type;\n \n /* Commenting for now. At this moment will use Exact Match, Contains, and Starts With. April, 2020 */\n /*\n this.commandOptions = Object.keys(\n this.typeCommandOptions[this._queryableDictionary[queryableProperty].type]\n ).filter(option => {\n return this._queryableDictionary[queryableProperty].cvDomain || option !== 'the following exact default values';\n }).sort((a, b) => {\n if (a === 'the following exact default values') {\n return -1;\n }\n if (b === 'the following exact default values') {\n return 1;\n }\n if (a.toLowerCase() < b.toLowerCase()) {\n return -1;\n }\n if (a.toLowerCase() > b.toLowerCase()) {\n return 1;\n }\n return 0;\n });\n */\n }\n\n setCvOptions(cvDomain: string): void {\n this.cvService.getDomainVocabulary(cvDomain).subscribe(response => {\n this.cvOptions = response[cvDomain].list;\n });\n }\n\n refreshQuery(): void {\n this.queryParts = [];\n this.commandInputs.forEach((commandInput, index) => {\n if (this.commandInputValueDict[commandInput.type] && this.commandInputValueDict[commandInput.type][index] != null) {\n commandInput.constructQuery(\n this.commandInputValueDict[commandInput.type][index],\n this.selectedCondition,\n this.selectedQueryableProperty,\n this.selectedLucenePath,\n this.queryUpdated,\n this.queryParts\n );\n } else {\n this.queryUpdated.emit({\n condition: this.selectedCondition,\n queryableProperty: this.selectedQueryableProperty,\n command: this.selectedCommandOption,\n commandInputValues: [],\n query: ''\n });\n }\n });\n }\n\n queryablePropertiesAutocompleteClosed(): void {\n this.decreaseOverlayZindex();\n const inputValue = this.queryablePropertiesAutocompleteControl.value;\n\n if (inputValue) {\n for (let i = 0; i < this.allOptions.length; i++) {\n if (this.allOptions[i].toLowerCase() === inputValue.toLowerCase()) {\n this.queryablePropertySelected(this.allOptions[i]);\n this.queryablePropertiesAutocompleteControl.setValue(this.allOptions[i]);\n break;\n }\n }\n }\n\n }\n\n queryablePropertiesAutocompleteBlurred(): void {\n if (this.queryableOptionsAll.length === 0) {\n this.queryablePropertiesAutocompleteControl.setValue('All');\n this.queryablePropertySelected('All');\n }\n }\n\n clearSelectedQueryableProperty(): void {\n this.queryablePropertiesAutocompleteControl.setValue('');\n }\n\n showAllFields(): void {\n this.isShowCommonFields = false;\n this.queryablePropertiesAutocompleteControl.setValue(this.selectedQueryableProperty || '');\n }\n\n showCommonFields(): void {\n this.isShowCommonFields = true;\n if (this.queryableOptionsCommon.indexOf(this.selectedQueryableProperty) > -1) {\n this.queryablePropertiesControl.setValue(this.selectedQueryableProperty);\n } else {\n this.queryablePropertiesControl.setValue('All');\n }\n }\n\n openedChange(opened: boolean): void {\n if (opened) {\n this.increaseOverlayZindex();\n } else {\n this.decreaseOverlayZindex();\n }\n }\n\n increaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = '1002';\n }\n\n decreaseOverlayZindex(): void {\n this.overlayContainer.style.zIndex = null;\n }\n}\n","
      \n \n \n Guided Search\n \n \n

      \n Builder\n

      \n
      \n
      \n
      \n
      \n Search In Fields\n
      \n
      \n For\n
      \n
      \n Query\n
      \n
      \n
      \n
      \n \n \n
      \n
      \n
      \n \n
      \n
      \n \n
      \n
      \n
      \n
      \n
      \n \n
      \n

      \n Query\n

      \n
      \n
      \n {{query}}\n
      \n
      \n
      \n
      \n
      ","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { QueryableSubstanceDictionary } from './queryable-substance-dictionary.model';\nimport { NavigationExtras, Router, ActivatedRoute } from '@angular/router';\nimport { ConfigService } from '@gsrs-core/config';\nimport { QueryStatement } from './query-statement/query-statement.model';\nimport { typeCommandOptions } from './query-statement/type-command-options.constant';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { Title } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-guided-search',\n templateUrl: './guided-search.component.html',\n styleUrls: ['./guided-search.component.scss']\n})\nexport class GuidedSearchComponent implements OnInit {\n queryableSubstanceDict: QueryableSubstanceDictionary;\n displayProperties: Array;\n displayPropertiesCommon: Array;\n queryStatements: Array = [];\n query = '';\n\n constructor(\n private http: HttpClient,\n private router: Router,\n private configService: ConfigService,\n private utilitiesService: UtilsService,\n private activatedRoute: ActivatedRoute,\n private titleService: Title\n ) { }\n\n ngOnInit() {\n this.titleService.setTitle(`Guided Search`);\n const guidedSearchHash = Number(this.activatedRoute.snapshot.queryParams['g-search-hash']) || null;\n let queryStatementHashes: Array;\n if (guidedSearchHash) {\n const queryStatementHashesString = localStorage.getItem(guidedSearchHash.toString());\n if (queryStatementHashesString != null) {\n queryStatementHashes = JSON.parse(queryStatementHashesString);\n }\n }\n\n this.http.get(`${this.configService.environment.baseHref}assets/data/substance_dictionary.json`)\n .subscribe((response: QueryableSubstanceDictionary) => {\n\n response['All'] = {\n lucenePath: 'text',\n description: 'All substance fields',\n type: 'string',\n cvDomain: ''\n };\n this.queryableSubstanceDict = response;\n\n const displayProperties = ['All'];\n const displayPropertiesCommon = ['All'];\n Object.keys(this.queryableSubstanceDict).forEach(key => {\n displayProperties.push(key);\n if (this.queryableSubstanceDict[key].priority != null) {\n displayPropertiesCommon.push(key);\n }\n });\n this.displayProperties = displayProperties;\n this.displayPropertiesCommon = displayPropertiesCommon;\n\n if (queryStatementHashes != null) {\n queryStatementHashes.forEach(queryStatementHash => {\n this.queryStatements.push({queryHash: queryStatementHash});\n });\n } else {\n this.queryStatements.push({});\n }\n });\n }\n\n queryUpdated(queryStatement: QueryStatement, index: number) {\n setTimeout(() => {\n Object.keys(queryStatement).forEach(key => {\n this.queryStatements[index][key] = queryStatement[key];\n });\n this.query = '';\n this.query = this.queryStatements.map(statement => statement.query).join(' ').trim();\n });\n }\n\n addQueryStatement(): void {\n this.queryStatements.push({\n condition: '',\n queryableProperty: 'All',\n command: ''\n });\n }\n\n removeQueryStatement(index: number): void {\n this.queryStatements.splice(index, 1);\n this.query = this.queryStatements.map(statement => statement.query).join(' ');\n }\n\n processSearch(): void {\n\n const queryStatementHashes = [];\n\n this.queryStatements.forEach(queryStatement => {\n const queryStatementString = JSON.stringify(queryStatement);\n const hash = this.utilitiesService.hashCode(queryStatementString);\n localStorage.setItem(hash.toString(), queryStatementString);\n queryStatementHashes.push(hash);\n });\n\n const queryHash = this.utilitiesService.hashCode(this.query);\n const queryStatementHashesString = JSON.stringify(queryStatementHashes);\n\n localStorage.setItem(queryHash.toString(), queryStatementHashesString);\n\n const navigationExtras: NavigationExtras = {\n queryParams: this.query ? { 'search': this.query } : null\n };\n\n const navigationExtras2: NavigationExtras = {\n queryParams: {\n 'g-search-hash': queryHash.toString()\n }\n };\n\n // this is a test of the push state needed\n // to keep the back button working as desired\n window.history.pushState({},'Guided Search', '/guided-search'\n + '?g-search-hash=' + navigationExtras2.queryParams['g-search-hash']);\n\n this.router.navigate(['/browse-substance'], navigationExtras);\n }\n}\n","
      \n
      \n \n Runtime Environment\n
      \n
      Epoch
      \n
      {{health.epoch | date: 'medium'}}
      \n
      \n \n
      \n
      Uptime
      \n
      {{runtime}}
      \n
      \n\n
      \n
      Server
      \n
      {{health.hostname}}
      \n
      \n
      \n
      Available Processors
      \n
      {{health.runtime.availableProcessors}}
      \n
      \n
      \n
      Free Memory
      \n
      {{health.runtime.freeMemory/(1024*1024) | number : '1.1-1'}} Mb
      \n
      \n\n
      \n
      Total Memory
      \n
      {{health.runtime.totalMemory/(1024*1024) | number : '1.1-1'}} Mb
      \n
      \n\n
      \n
      Max Memory
      \n
      {{health.runtime.maxMemory/(1024*1024) | number : '1.1-1'}} Mb
      \n
      \n\n
      \n
      JRE Version
      \n
      {{health.javaVersion}}
      \n
      \n\n
      \n
      Number of Threads
      \n
      {{health.threads}}
      \n
      \n\n
      \n
      Number of Running Threads
      \n
      {{health.runningThreads}}
      \n
      \n\n
      \n
      \n
      \n
      \n
      \n
      \n\n
      \n \n Cache Configuration\n
      \n
      Max Cache Elements
      \n
      {{health.cacheInfo.maxCacheElements}}
      \n
      \n
      \n
      Max Evictable Cache Elements
      \n
      {{health.cacheInfo.maxNotEvictableCacheElements}}
      \n
      \n
      \n
      Time to Live (seconds)
      \n
      {{health.cacheInfo.timeToLive}}
      \n
      \n
      \n
      Time to Idle (seconds)
      \n
      {{health.cacheInfo.timeToIdle}}
      \n
      \n
      \n
      \n
      \n\n Database Information\n
      \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
      Database {{db.database}} Driver {{db.driver}} Product {{db.product}} Latency {{db.latency}} ms Connected {{db.connected}}
      \n
      \n
      \n
      \n
      ","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { HealthInfo } from '@gsrs-core/admin/admin-objects.model';\nimport { AuthService } from '@gsrs-core/auth';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { Subscription } from 'rxjs';\nimport * as moment from 'moment';\n\n@Component({\n selector: 'app-cache-summary',\n templateUrl: './cache-summary.component.html',\n styleUrls: ['./cache-summary.component.scss']\n})\nexport class CacheSummaryComponent implements OnInit, OnDestroy {\n displayedColumns: string[] = ['database', 'driver', 'product', 'latency', 'connected'];\n health: HealthInfo;\n sub: Subscription;\n runtime = '';\n constructor(\n private adminService: AdminService\n ) { }\n\n ngOnInit() {\n this.sub = this.adminService.getEnvironmentHealth().subscribe(response => {\n this.health = response;\n this.setStart();\n });\n }\n\n setStart() {\n if (this.health.epoch) {\n const date = new Date();\n const duration = moment.duration((( date.getTime() - 0) - this.health.epoch));\n let timestring = '';\n if ( duration.years() !== 0) {\n timestring += duration.years() + (duration.years() > 1 ? ' years, ' : ' year, ');\n }\n if ( duration.months() !== 0) {\n timestring += duration.months() + (duration.months() > 1 ? ' months, ' : ' month, ');\n }\n if ( duration.days() !== 0) {\n timestring += duration.days() + (duration.days() > 1 ? ' days, ' : ' day, ');\n }\n if ( duration.hours() !== 0) {\n timestring += duration.hours() + (duration.hours() > 1 ? ' hrs, ' : ' hr, ');\n }\n if ( duration.minutes() !== 0) {\n timestring += duration.minutes() + (duration.minutes() > 1 ? ' min, ' : ' min, ');\n }\n if ( duration.seconds() !== 0) {\n timestring += duration.seconds() + (duration.seconds() > 1 ? ' sec' : ' sec');\n } else if (timestring === '') {\n timestring = (( date.getTime() - 0) - this.health.epoch) + ' ms';\n }\n this.runtime = timestring;\n }\n}\n\n\n ngOnDestroy() {\n this.sub.unsubscribe();\n }\n\n}\n","
      {{message}}
      \n
      \n

      \n Add User\n

      \n

      \n Edit User\n

      \n
      \n
      \n
      \n
      \n
      \n \n User Name\n \n \n
      \n
      \n \n Email\n \n \n
      \n
      \n \n active\n \n
      \n
      \n
      \n\n
      \n
      \n \n
      \n \n
      \n \n \n \n
      \n
      \n \n \n \n
      \n \n \n
      \n \n
      \n
      \n
      \n
      \n
      \n \n \n \n
      \n
      \n \n \n \n
      \n \n \n
      \n
      \n
      \n
      \n \n \n
      \n
      Groups\n
      \n \n
      \n {{group.name}}\n
      \n
      \n
      \n \n \n \n
      \n
      Roles\n
      \n \n {{role.name}}\n \n
      \n
      \n
      \n \n
      \n
      \n
      \n \n \n
      \n
      \n\n
      \n
      \n
      User successfully {{newUser? 'added': 'edited'}}!
      \n
      \n\n
      \n \n \n \n\n \n \n\n \n
      \n\n
      \n \n \n\n \n \n \n
      ","import { Component, OnInit, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { isString } from 'util';\nimport { IfStmt } from '@angular/compiler';\nimport { AuthService, Auth } from '@gsrs-core/auth';\nimport { take } from 'rxjs/operators';\nimport { UserEditObject } from '@gsrs-core/admin/admin-objects.model';\n\n@Component({\n selector: 'app-user-edit-dialog',\n templateUrl: './user-edit-dialog.component.html',\n styleUrls: ['./user-edit-dialog.component.scss']\n})\nexport class UserEditDialogComponent implements OnInit {\n userLoggedIn: any;\n user: any;\n userID: string;\n userHasAdminRole: boolean;\n originalName: string;\n newPassword: string;\n newUser = false;\n newPasswordConfirm: string;\n changePassword = false;\n loading = true;\n message: string;\n newGroup = '';\n groups: Array< any >;\n submitted = false;\n response: any;\n isError: boolean = false;\n roles = [\n {name: 'Query', hasRole: false},\n {name: 'DataEntry', hasRole: false},\n {name: 'SuperDataEntry', hasRole: false},\n {name: 'Updater', hasRole: false},\n {name: 'SuperUpdate', hasRole: false},\n {name: 'Approver', hasRole: false},\n {name: 'Admin', hasRole: false}];\n constructor(\n private adminService: AdminService,\n public dialogRef: MatDialogRef,\n private authService: AuthService,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.user = data.user;\n this.userID = data.userID;\n this.submitted = data.submission;\n this.userLoggedIn = this.authService.getUser();\n }\n\n ngOnInit() {\n if (this.user) {\n this.checkRoles();\n this.originalName = this.user.username;\n this.loading = false;\n this.newUser = false;\n this.userHasAdminRole = this.checkIfUserHasAdminRole(this.user.roles);\n this.adminService.getGroups().pipe(take(1)).subscribe( response => {\n this.groups = [];\n response.forEach( grp => {\n const temp = {name: grp, hasGroup: false};\n this.user.groups.forEach(element => {\n if (element.name === grp) {\n temp.hasGroup = true;\n }\n });\n this.groups.push(temp);\n });\n });\n } else if (this.userID) {\n this.adminService.getUserByID(this.userID).pipe(take(1)).subscribe( resp => {\n this.user = resp;\n this.checkRoles();\n this.originalName = resp.user.username;\n this.loading = false;\n this.newUser = false;\n this.userHasAdminRole = this.checkIfUserHasAdminRole(this.user.roles);\n this.adminService.getGroups().pipe(take(1)).subscribe( response => {\n this.groups = [];\n response.forEach( grp => {\n const temp = {name: grp, hasGroup: false};\n this.user.groups.forEach(element => {\n if (element.name === grp) {\n temp.hasGroup = true;\n }\n });\n this.groups.push(temp);\n });\n });\n });\n } else {\n this.newUser = true;\n this.userHasAdminRole = false;\n this.user = {groups: [], roles: [], user: {}};\n this.user.active = true;\n this.loading = false;\n this.adminService.getGroups().pipe(take(1)).subscribe( response => {\n this.groups = [];\n response.forEach( grp => {\n const temp = {name: grp, hasGroup: false};\n this.groups.push(temp);\n });\n });\n }\n }\n\n checkRoles(): void {\n this.roles.forEach(role => {\n this.user.roles.forEach(element => {\n if (element === role.name) {\n role.hasRole = true;\n }\n });\n });\n }\n\n checkIfUserHasAdminRole(roles): boolean {\n let toReturn = false;\n roles.forEach(role => {\n if(role.toLowerCase() === 'admin') {\n toReturn = true;\n }\n });\n return toReturn;\n }\n\n checkGroups(): void {\n this.groups.forEach(group => {\n this.user.groups.forEach(element => {\n if (element.name === group.name) {\n group.hasGroup = true;\n }\n });\n });\n }\n\n saveChanges(): void {\n if (this.changePassword && this.newPassword !== '' ) {\n this.isError = true;\n this.message = 'Cancel or submit new password to save other changes';\n } else {\n this.isError = false;\n const rolesArr = [];\n this.roles.forEach(role => {\n if (role.hasRole) {\n rolesArr.push(role.name);\n }\n });\n const groups = [];\n this.groups.forEach(group => {\n if (group.hasGroup ) {\n groups.push(group.name);\n\n }\n });\n\n if (this.newGroup && this.newGroup !== '') {\n groups.push(this.newGroup);\n }\n const userEditObj: UserEditObject = {\n username: this.user.user.username,\n isAdmin: this.user.user.admin,\n isActive: this.user.active,\n email: this.user.user.email || null,\n roles: rolesArr,\n groups: groups\n };\n\n if(this.userLoggedIn === this.user.user.username) { // if userLoggedIn is making changes to their account\n if((this.userHasAdminRole !== this.checkIfUserHasAdminRole(rolesArr))\n || !this.user.active) { // user is trying to remove their admin role or make themselves inactive\n if (confirm('Setting your own account as inactive or removing admin role are significant changes. ARE YOU SURE YOU WANT TO PROCEED?')) {\n this.editUser(userEditObj);\n }\n } else { // safe changes\n this.editUser(userEditObj);\n }\n } else { // not userloggedin's acct\n this.editUser(userEditObj);\n }\n }\n }\n\n editUser(userEditObj): void {\n this.adminService.editUser(userEditObj, this.userID).pipe(take(1)).subscribe(response => {\n if (response && response.user) {\n this.isError = false;\n this.successfulChange(response);\n } else {\n this.isError = true;\n this.message = 'Unable to edit user';\n }\n }, error => {\n this.isError = true;\n this.message = 'Unable to edit user';\n if (error.error) {\n this.isError = true;\n this.message = error;\n }\n });\n }\n\n addUser(): void {\n this.isError = false;\n if (this.newPassword === this.newPasswordConfirm) {\n const rolesArr = [];\n this.roles.forEach(role => {\n if (role.hasRole) {\n rolesArr.push(role.name);\n }\n });\n const groups = [];\n this.groups.forEach(group => {\n if (group.hasGroup ) {\n groups.push(group.name);\n }\n });\n if (this.newGroup && this.newGroup !== '') {\n groups.push(this.newGroup);\n }\n const userEditObj: UserEditObject = {\n username: this.user.user.username,\n isAdmin: this.user.user.admin,\n isActive: this.user.active,\n email: this.user.user.email || null,\n roles: rolesArr,\n groups: groups,\n password: this.newPassword\n };\n\n this.adminService.addUser(userEditObj).pipe(take(1)).subscribe(response => {\n this.message = '';\n if (response && response.user) {\n this.successfulChange(response);\n }\n }, error => {\n if (error.error) {\n this.isError = true;\n this.message = 'ERROR: ';\n let dummytext = 'This user either already exists or there was a server problem updating the record';\n this.message += error.error.message === undefined ?\n dummytext : error.error.message.split(':')[1];\n }\n this.adminService.getUserByName(this.user.user.username).pipe(take(1)).subscribe(response => {\n let userIsActive = false;\n userIsActive = response.active;\n if(userIsActive) {\n this.message += '. This user is active.';\n } else {\n this.message += '. This user is NOT active.';\n }\n\n }, err => {\n });\n });\n } else {\n this.isError = true;\n this.message = 'passwords do not match';\n }\n }\n\n successfulChange(response) {\n this.response = response;\n this.submitted = true;\n setTimeout(() => {\n this.dialogRef.close(this.response);\n }, 300000);\n }\n\n succesClose() {\n this.dialogRef.close(this.response);\n }\n\n validatePassword(): void {\n if (this.newPassword !== this.newPasswordConfirm) {\n this.isError = true;\n this.message = 'Error: passwords do not match';\n this.newPassword = '';\n this.newPasswordConfirm = '';\n } else {\n this.isError = false;\n if ( this.authService.getUser === this.user.identifier ) {\n this.adminService.changeMyPassword('', this.newPassword, this.user.id).pipe(take(1)).subscribe(response => {\n this.isError = false;\n this.changePassword = !this.changePassword;\n this.message = 'Password updated successfully';\n }, error => {\n if (error.error) {\n this.isError = true;\n this.message = 'Error - ' + error.error;\n } else {\n this.isError = true;\n this.newPassword = '';\n this.newPasswordConfirm = '';\n this.changePassword = !this.changePassword;\n this.message = 'Error:unknown server error';\n }\n });\n } else {\n this.adminService.changePassword( this.newPassword, this.user.id).pipe(take(1)).subscribe(response => {\n this.changePassword = !this.changePassword;\n this.isError = false;\n this.message = 'Password updated successfully';\n }, error => {\n if (error.error) {\n this.isError = true;\n this.message = 'Error: ' + error.error;\n } else {\n this.isError = true;\n this.newPassword = '';\n this.newPasswordConfirm = '';\n this.changePassword = !this.changePassword;\n this.message = 'Error: unknown server error';\n }\n });\n }\n }\n }\n}\n","\n
      \n
      \n
      \n \n
      \n\n
      \n \n
      \n
      \n \n \n
      \n
      \n
      \n \n
      \n \n \n \n \n \n
      \n
      \n\n
      \n
      \n \n \n
      \n
      \n\n
      \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
      \n (Un)Select All\n \n User Name\n \n {{user.user.username}}\n \n Email {{user.user.email}} Created {{user.user.created | date:'medium'}} Modified {{user.modified | date:'medium'}} Active/ Set Inactive \n {{user.active? 'active': 'inactive'}} \n \n \n
      \n
      \n\n\n
      \n\n
      \n
      \n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { User, Auth, AuthService } from '@gsrs-core/auth';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Sort } from '@angular/material/sort';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { PageEvent } from '@angular/material/paginator';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { UserEditDialogComponent } from '@gsrs-core/admin/user-management/user-edit-dialog/user-edit-dialog.component';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { DataSource } from '@angular/cdk/table';\nimport { FormControl } from '@angular/forms';\nimport {MatPaginator} from '@angular/material/paginator';\nimport { TouchSequence } from 'selenium-webdriver';\n\n@Component({\n selector: 'app-user-management',\n templateUrl: './user-management.component.html',\n styleUrls: ['./user-management.component.scss']\n})\nexport class UserManagementComponent implements OnInit {\n @ViewChild(MatPaginator, {static: true}) paginator: MatPaginator;\n userID: number;\n alert: string;\n filtered = new MatTableDataSource();\n searchControl = new FormControl();\n loading = false;\n showAll = false;\n showInactive = false;\n private overlayContainer: HTMLElement;\n displayedColumns: string[] = ['checkbox', 'name', 'email', 'created', 'modified', 'active'];\n page = 0;\n pageSize = 10000;\n paged: Array< any >;\n users: Array< any > = [];\n lastSort: Sort;\n checkedList: Array = [];\n showHideActions: boolean = false;\n private searchTimer: any;\n\nconstructor(\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private adminService: AdminService,\n private utilsService: UtilsService,\n private authService: AuthService\n\n ) { }\n\n ngOnInit() {\n this.filtered.paginator = this.paginator;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.showAllUsers();\n this.pageChange();\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.users);\n }, error => {\n });\n}\n\ntoggleActions() {\n this.showHideActions = !this.showHideActions;\n}\n\nselectUnselectAll(): void {\n if(this.checkedList.length === this.paged.length) { // all are selected, need to deselect all\n this.checkedList = [];\n } else { // select all\n this.checkedList = [];\n for(let user of this.paged) {\n this.checkedList.push(user.user.username);\n }\n }\n}\n\nisInCheckList(username): boolean {\n let toReturn = false;\n for(let users of this.checkedList) {\n if(users === username) {\n toReturn = true;\n }\n }\n return toReturn;\n}\n\ngetPagedIndex(username): number {\n let toReturn = 0;\n this.paged.forEach((user, index) => {\n if(user.user.username === username) {\n toReturn = index;\n }\n });\n return toReturn;\n}\n\nmarkSelected(status): void {\n let extraWarning = '';\n if(status === 'inactive') {\n extraWarning = '. If the user is inactive that user won\\'t be able to log in until they\\'ve been reactivated'\n }\n if (confirm('Please confirm you would like to set the selected accounts to ' + status + extraWarning\n + '. \\n NOTE: Selecting up to 50 at a time may take some time and so is not adviseable.')) {\n switch(status) {\n case 'inactive': \n this.setSelectedToInactive();\n break;\n }\n }\n}\n\nsetSelectedToInactive(): void {\n for(let user of this.checkedList) {\n let index = this.getPagedIndex(user);\n this.deleteUsers(user, index);\n }\n}\n\ncheckListToggle(username): void {\n if(this.checkedList.includes(username)) {\n this.checkedList.forEach((user, index) => {\n if(user === username) {\n this.checkedList.splice(index, 1);\n }\n })\n } else {\n this.checkedList.push(username);\n }\n}\n\nshowAllUsers(): void {\n this.loading = true;\n this.showAll = true;\n this.adminService.getAllUsers().subscribe(response => {\n this.users = response;\n this.filtered.data = response;\n this.showInactiveUsers();\n this.loading = false;\n\n\n });\n\n this.pageChange();\n}\n\nshowInactiveUsers(): void {\n this.showInactive = !this.showInactive;\n if (this.showInactive) {\n const backup = [];\n this.users.forEach(user => {\n if (user.active) {\n backup.push(user);\n }\n });\n this.filtered.data = backup;\n } else {\n this.filtered.data = this.users;\n }\n if (this.searchControl.value && this.searchControl.value !== '') {\n this.searchFields(this.searchControl.value);\n }\n this.pageChange();\n}\n\n/* editUserByName(name: any): void {\n this.loading = true;\n this.alert = '';\n this.adminService.getUserByID(name).subscribe(response => {\n this.loading = false;\n if (response && response.user) {\n const dialogRef = this.dialog.open(UserEditDialogComponent, {\n data: {'user': response},\n width: '800px',\n autoFocus: false,\n disableClose: true\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(resp => {\n this.overlayContainer.style.zIndex = null;\n if (resp && this.showAll === true ) {\n this.updateLocalData(resp, null, null, resp.user.username);\n this.filtered.data.forEach( usr => {\n if (usr['user'] && usr['user'].username === resp.user.username) {\n usr = resp;\n }\n });\n }\n });\n } else {\n this.alert = 'User Not found';\n }\n }, error => {\n this.alert = 'User Not found';\n this.loading = false;\n });\n} */\n\n editUser(userID: any, index: number): void {\n const dialogRef = this.dialog.open(UserEditDialogComponent, {\n data: {userID: userID, submission: false},\n width: '800px',\n autoFocus: false,\n disableClose: true\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n if (response ) {\n this.updateLocalData(response, index, userID, null);\n const backup = this.filtered.data;\n backup[index] = response;\n this.filtered.data = backup;\n this.pageChange();\n }\n });\n }\n\n // change both dataSource and original source to avoid making an API call after every edit\nupdateLocalData(response: any, index?: number, id?: number, username?: string ) {\n let i = this.users.findIndex(x => x.id === response.id);\n let u = this.users[i];\n this.users[i] = response;\n if (index) {\n const backup = this.filtered.data;\n backup[index] = response;\n this.filtered.data = backup;\n }\n this.pageChange();\n}\n\n\n deleteUser(username: string, index: number): void {\n if (confirm('Are you sure you want to set this user to inactive? If the user is inactive that user won\\'t be able to log in until they\\'ve been reactivated.')) {\n this.adminService.deleteUser(username).subscribe( response => {\n const dialogRef = this.dialog.open(UserEditDialogComponent, {\n data: {userID: response.id, submission: true},\n width: '800px',\n autoFocus: false,\n disableClose: true\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response1 => {\n this.overlayContainer.style.zIndex = null;\n if (response) {\n this.updateLocalData(response, index, null, username);\n const backup = this.filtered.data;\n backup[index] = response;\n this.filtered.data = backup;\n this.pageChange();\n }\n });\n });\n }\n }\n\n // identical to deleteUser but no warning since warning is combined in mark selected\n // only used when user selects multiple users to set inactive\n deleteUsers(username: string, index: number): void {\n this.adminService.deleteUser(username).subscribe( response => {\n const dialogRef = this.dialog.open(UserEditDialogComponent, {\n data: {userID: response.id, submission: true},\n width: '800px',\n autoFocus: false,\n disableClose: true\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response1 => {\n this.overlayContainer.style.zIndex = null;\n if (response) {\n this.updateLocalData(response, index, null, username);\n const backup = this.filtered.data;\n backup[index] = response;\n this.filtered.data = backup;\n }\n });\n });\n }\n\n addUser(): void {\n const dialogRef = this.dialog.open(UserEditDialogComponent, {\n data: {type: 'add', submission: false},\n width: '800px',\n autoFocus: false,\n disableClose: true\n });\n this.overlayContainer.style.zIndex = '1002';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n this.overlayContainer.style.zIndex = null;\n if (response ) {\n this.users.push(response);\n this.sortData(this.lastSort);\n this.searchControl.setValue('');\n }\n });\n }\n\n sortData(sort: any): void {\n this.lastSort = sort;\n let data = this.users.slice();\n if (this.showInactive) {\n data = [];\n this.users.forEach(user => {\n if (user.active) {\n data.push(user);\n }\n });\n }\n if (!sort.active || sort.direction === '') {\n this.filtered.data = data;\n this.pageChange();\n return;\n }\n this.filtered.data = data.sort((a, b) => {\n const isAsc = sort.direction === 'asc';\n switch (sort.active) {\n case 'name' : return this.utilsService.compare(a.user.username ? a.user.username.toUpperCase() : '',\n b.user.username ? b.user.username.toUpperCase() : '', isAsc);\n case 'active' : return this.utilsService.compare(a.active, b.active, !isAsc);\n case 'email' : return this.utilsService.compare(a.user.email || '', b.user.email || '', isAsc);\n case 'modified' : return this.utilsService.compare(a.modified, b.modified, isAsc);\n case 'created' : return this.utilsService.compare(a.created, b.created, isAsc);\n }\n });\n this.pageChange();\n }\n\n filterList(searchInput: string, listToFilter: Array): void {\n if (this.searchTimer != null) {\n clearTimeout(this.searchTimer);\n }\n this.searchTimer = setTimeout(() => {\n this.searchFields(searchInput);\n clearTimeout(this.searchTimer);\n this.pageChange();\n this.searchTimer = null;\n }, 700);\n }\n\n searchFields(searchInput: string) {\n const backup = [];\n this.users.forEach(user => {\n if (this.showInactive) {\n if (user.active) {\n backup.push(user);\n }\n } else {\n backup.push(user);\n }\n });\n\n this.filtered.data = [];\n backup.forEach(item => {\n if (item.user) {\n const itemString = item.user.username ? item.user.username.toUpperCase() : null;\n const emailString = item.user.email ? item.user.email.toUpperCase() : null;\n if ((itemString !== null && itemString.indexOf(searchInput.toUpperCase()) > -1) ||\n (emailString !== null && emailString.indexOf(searchInput.toUpperCase()) > -1)) {\n this.filtered.data.push(item);\n }\n }\n });\n }\n\n pageChange(pageEvent?: PageEvent): void {\n if (pageEvent != null) {\n this.page = pageEvent.pageIndex;\n this.pageSize = pageEvent.pageSize;\n }\n this.paged = [];\n const startIndex = this.page * this.pageSize;\n for (let i = startIndex; i < (startIndex + this.pageSize); i++) {\n if (this.filtered.data[i] != null) {\n this.paged.push(this.filtered.data[i]);\n } else {\n break;\n }\n }\n}\n\n}\n","
      \n
      \n
      \n \n
      \n
      \n
      {{filename? filename: 'no file chosen'}}
      \n \n
      \n\n
      \n
      \n \n \n \n GSRS Dump File\n \n \n SD File\n \n \n SD File (custom)\n \n \n \n
      \n
      \n\n \n Preserve Audit Information\n \n\n
      \n
      \n
      \n \n
      \n \n
      {{message}}
      \n \n
      \n \n \n
      \n \n\n
      \n
      \n
      \n
      \n \n
      ","import { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators, FormBuilder } from '@angular/forms';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { take } from 'rxjs/operators';\nimport * as moment from 'moment';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { UploadObject } from '@gsrs-core/admin/admin-objects.model';\nimport { LoadingService } from '@gsrs-core/loading';\n\n@Component({\n selector: 'app-data-management',\n templateUrl: './data-management.component.html',\n styleUrls: ['./data-management.component.scss']\n})\nexport class DataManagementComponent implements OnInit {\n uploadForm: FormGroup;\n filename: string;\n fileType: string;\n audit = false;\n processing = false;\n message: string;\n constructor(\n public formBuilder: FormBuilder,\n public adminService: AdminService,\n private router: Router,\n private route: ActivatedRoute,\n private loadingService: LoadingService\n\n ) { }\n\n ngOnInit() {\n this.uploadForm = this.formBuilder.group({\n file: [''],\n fileType: ['JSON'],\n audit: [false]\n });\n this.fileType = 'JSON';\n }\n\n onSubmit() {\n const formData = new FormData();\n this.loadingService.setLoading(true);\n\n formData.append('preserve-audit', this.audit.toString());\n formData.append('file-name', this.uploadForm.get('file').value);\n formData.append('file-type', this.fileType);\n\n this.adminService.loadData(formData).pipe(take(1)).subscribe(response => {\n this.loadingService.setLoading(false);\n\n this.router.navigate(['/monitor/' + response.id]);\n }, error => {\n this.message = 'File could not be uploaded';\n this.loadingService.setLoading(false);\n });\n}\n\n onFileSelect(event): void {\n if (event.target.files.length > 0) {\n const file = event.target.files[0];\n this.filename = file.name;\n this.uploadForm.get('file').setValue(file);\n }\n }\n\n openInput(): void {\n document.getElementById('fileInput').click();\n }\n}\n","
      \n

      \n Add Term to CV - {{vocabulary.domain}}\n

      \n
      \n
      \n
      \n
      \n
      \n
      \n \n
      \n \n
      \n
      \n \n
      \n \n \n \n \n \n \n \n\n \n \n \n\n \n \n \n
      \n \n Hidden\n \n
      \n
      \n \n Selected\n \n
      \n
      \n \n\n \n
      \n
      \n
      \n \n \n \n \n \n \n \n
      \n
      \n
      \n
      \n \n \n \n
      \n
      \n \n
      \n \n
      \n
      \n
      \n \n \n \n
      \n
      \n \n
      \n \n
      \n
      \n \n \n\n
      \n \n
      \n\n
      \n
      0\">
      CV not valid:
      \n
      {{message.messageType}} :{{message.message}}
      \n \n
      \n \n \n \n \n
      \n\n","import { Component, OnInit, Input, Inject, ViewChild, ElementRef, AfterViewInit } from '@angular/core';\nimport { VocabularyTerm, Vocabulary, ControlledVocabularyService } from '@gsrs-core/controlled-vocabulary';\nimport { MatDialogRef, MAT_DIALOG_DATA, MatDialog } from '@angular/material/dialog';\nimport { ScrollToService } from '@gsrs-core/scroll-to/scroll-to.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { FragmentWizardComponent } from '@gsrs-core/admin/fragment-wizard/fragment-wizard.component';\n\n@Component({\n selector: 'app-cv-term-dialog',\n templateUrl: './cv-term-dialog.component.html',\n styleUrls: ['./cv-term-dialog.component.scss']\n})\nexport class CvTermDialogComponent implements OnInit, AfterViewInit{\n isNew: boolean;\n vocabulary: Vocabulary;\n terms: any;\n message: string;\n validationMessages = [];\n loading = true;\n toggled = [];\n private overlayContainer: HTMLElement;\n\n\n constructor(\n public cvService: ControlledVocabularyService,\n public dialogRef: MatDialogRef,\n public scrollToService: ScrollToService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.vocabulary = data.vocabulary;\n this.terms = data.vocabulary.terms.sort(function(a, b) {\n const textA = a.value ? a.value.toUpperCase() : '';\n const textB = b.value ? b.value.toUpperCase() : '';\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;\n });\n }\n @ViewChild('scroller', {static: false}) private myScrollContainer: ElementRef;\n\n\n\n ngOnInit() {\n this.loading = false;\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n}\n\n ngAfterViewInit() {\n \n if (this.vocabulary.vocabularyTermType === 'ix.ginas.models.v1.FragmentControlledVocabulary') {\n this.terms.forEach(term => {\n if (term.simplifiedStructure) {\n term.simpleSrc = this.cvService.getStructureUrl(term.simplifiedStructure);\n }\n if (term.fragmentStructure) {\n term.fragmentSrc = this.cvService.getStructureUrl(term.fragmentStructure);\n }\n });\n }\n }\n\n updateStructure(term: any, index: any) {\n this.terms[index] = term;\n }\n\n getStructure(structure) {\n this.cvService.getStructure(structure).subscribe(response => (\n response\n ));\n }\n\n editTerms(term: any, index): void {\n // this.dialog.openDialogs.pop();\n // this.overlayContainer.style.zIndex = '1003';\n let thisy = window.pageYOffset;\n /* window.scroll({ \n top: 0, \n left: 0, \n behavior: 'auto' });*/\n let dialogConfig = { width: '70%', height: '85%',data: {vocabulary: this.vocabulary, domain: this.vocabulary.domain, term: term, adminPanel: true}, };\n const dialogRef = this.dialog.open(FragmentWizardComponent, dialogConfig);\n this.overlayContainer.style.zIndex = '1003';\n\n setTimeout(() => {\n // this.dialog.openDialogs.pop();\n // this.overlayContainer.style.zIndex = '10003';\n },3000);\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n window.scroll({ \n top: thisy, \n left: 0, \n behavior: 'auto' });\n // this.overlayContainer.style.zIndex = null;\n if (response ) {\n this.terms[index].simplifiedStructure = response;\n this.terms[index].fragmentStructure = response;\n this.terms[index].fragmentSrc = this.cvService.getStructureUrl(response);\n this.terms[index].simpleSrc = this.cvService.getStructureUrl(response);\n\n // this.getVocab();\n }\n });\n }\n\n\n checkImg(term: any, img: string) {\n term.fragmentSrc = this.cvService.getStructureUrl(term.fragmentStructure);\n term.simpleSrc = this.cvService.getStructureUrl(term.simplifiedStructure);\n\n }\n\n\n\n submit(): void {\n this.vocabulary.terms = this.terms;\n this.validationMessages = [];\n this.cvService.validateVocab(this.vocabulary).subscribe(response => {\n if(response && response.valid) {\n this.cvService.addVocabTerm( this.vocabulary).subscribe (response => {\n this.loading = false;\n if (response.terms && response.terms.length === this.vocabulary.terms.length) {\n alert('vocabulary updated');\n setTimeout(() => {\n this.dialogRef.close(response);\n }, 200);\n }\n },error => {\n let str = 'Invalid Vocabulary';\n if (error.error && error.error.message) {\n str += '\\n\\n' + error.error.message;\n \n }\n else if(error.message) {\n str += '\\n\\n' + error.message;\n }\n alert(str);\n this.loading = false;\n \n });\n } else {\n if(response && response.validationMessages) {\n response.validationMessages.forEach(message => {\n this.validationMessages.push(message);\n });\n }\n }\n },error => {\n let str = 'Invalid Vocabulary';\n if (error.error && error.error.message) {\n str += '\\n\\n' + error.error.message;\n\n }\n else if(error.message) {\n str += '\\n\\n' + error.message;\n }\n alert(str);\n this.loading = false;\n\n });\n /* this.cvService.addVocabTerm( this.vocabulary).subscribe (response => {\n this.loading = false;\n if (response.terms && response.terms.length === this.vocabulary.terms.length) {\n alert('vocabulary updated');\n setTimeout(() => {\n this.dialogRef.close(response);\n }, 200);\n } else {\n alert('invalid vocabulary');\n }\n }, error => {\n alert('invalid vocabulary');\n });*/\n this.loading = false;\n\n }\n\n\n cancel(): void {\n this.dialogRef.close();\n }\n\n addTerm(): void {\n this.terms.push({});\n setTimeout(() => {\n try {\n this.myScrollContainer.nativeElement.scrollTop = this.myScrollContainer.nativeElement.scrollHeight;\n } catch (err) { }\n }, 100);\n }\n\n deleteTerm(index: number): void {\n this.terms.splice(index, 1);\n }\n}\n","
      \n
      \n \n Download CV as JSON\n \n \n \n \n
      \n
      \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n \n \n \n
      Domain {{vocab.domain}} Substance Fields \n \n \n \n {{toggle[index] || i < 2? field+' ':''}}\n {{(toggle[index] || i < 1) && !last? ', ':''}}\n {{!toggle[index] && i === 1 && !last? '...':''}}\n \n \n 2\">\n {{toggle[index]? 'hide': 'show all'}} \n \n \n Vocabulary Term Type {{getVocabType(vocab.vocabularyTermType)}} Count {{vocab.terms.length}} Edit \n
      \n \n
      \n
      \n\n\n
      \n
      \n
      \n \n \n
      \n","import { Component, OnInit } from '@angular/core';\nimport { ControlledVocabularyService, Vocabulary, VocabularyTerm } from '@gsrs-core/controlled-vocabulary';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Sort } from '@angular/material/sort';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { CvTermDialogComponent } from '@gsrs-core/admin/cv-management/cv-term-dialog/cv-term-dialog.component';\nimport { UtilsService } from '@gsrs-core/utils';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { FormControl } from '@angular/forms';\nimport { DataDictionaryService } from '@gsrs-core/utils/data-dictionary.service';\n\n@Component({\n selector: 'app-cv-management',\n templateUrl: './cv-management.component.html',\n styleUrls: ['./cv-management.component.scss']\n})\nexport class CvManagementComponent implements OnInit {\n vocabularies: Array< Vocabulary > = [];\n displayedColumns: string[] = ['domain', 'type', 'path', 'terms', 'edit'];\n filtered: Array< Vocabulary >;\n vocabType: any = [];\n downloadHref: SafeUrl;\n searchControl = new FormControl();\n dictionary: Array< any >;\n loading: boolean;\n toggle: Array< boolean > = [];\n private searchTimer: any;\n private overlayContainer: HTMLElement;\n\n constructor(public cvService: ControlledVocabularyService,\n private dialog: MatDialog,\n private overlayContainerService: OverlayContainer,\n private utilsService: UtilsService,\n private sanitizer: DomSanitizer,\n private dictionaryService: DataDictionaryService\n\n\n\n ) { }\n\n ngOnInit() {\n this.getVocab();\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n\n }\n\n getVocab() {\n this.loading = true;\n this.cvService.getVocabularies(null, 1000).subscribe(response => {\n this.loading = false;\n this.dictionary = this.dictionaryService.getCVDomainRows();\n this.vocabularies = response.content;\n this.filtered = this.vocabularies;\n this.vocabularies.forEach(vocab => {\n if (vocab.domain === 'VOCAB_TYPE') {\n this.vocabType = vocab.terms;\n }\n this.searchControl.valueChanges.subscribe(value => {\n this.filterList(value, this.vocabularies);\n }, error => {\n this.loading = false;\n alert('The controlled vocabulary has failed to load from the server' +\n (error && error.message ? 'with the following message \\n\\n' + error.message : ''));\n });\n });\n this.downloadHref = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' +\n encodeURIComponent(JSON.stringify(this.vocabularies)));\n this.sortData({active: 'domain', direction: 'asc'});\n });\n }\n\n getVocabType(type: string): string {\n this.vocabType.forEach( term => {\n if (term.value === type) {\n type = term.display;\n }\n });\n return type;\n }\n\n getPath(val: string): string {\n if (this.dictionary[val]) {\n return this.dictionary[val];\n } else {\n return '';\n }\n }\n\n editTerms(vocab: any, index: number): void {\n let thisy = window.pageYOffset;\n window.scroll({ \n top: 0, \n left: 0, \n behavior: 'auto' });\n const dialogRef = this.dialog.open(CvTermDialogComponent, {\n data: {vocabulary: vocab},\n width: '1200px'\n });\n this.overlayContainer.style.zIndex = '1002';\n // this.overlayContainer.style.zIndex = '0';\n const dialogSubscription = dialogRef.afterClosed().subscribe(response => {\n window.scroll({ \n top: thisy, \n left: 0, \n behavior: 'auto' });\n this.overlayContainer.style.zIndex = null;\n if (response ) {\n // this.vocabularies[index] = response;\n this.getVocab();\n }\n });\n }\n\n\n sortData(sort: Sort) {\n const data = this.vocabularies.slice();\n if (!sort.active || sort.direction === '') {\n this.filtered = data;\n return;\n }\n this.filtered = data.sort((a, b) => {\n const isAsc = sort.direction === 'asc';\n return this.utilsService.compare(a[sort.active], b[sort.active], isAsc);\n });\n }\n\n download() {\n\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' + encodeURIComponent(\n JSON.stringify(this.vocabularies)\n ));\n this.downloadHref = uri;\n }\n\n filterList(searchInput: string, listToFilter: Array): void {\n if (this.searchTimer != null) {\n clearTimeout(this.searchTimer);\n }\n\n this.searchTimer = setTimeout(() => {\n\n this.filtered = [];\n listToFilter.forEach(item => {\n const itemString = item.domain;\n if (itemString.indexOf(searchInput.toUpperCase()) > -1) {\n this.filtered.push(item);\n }\n });\n clearTimeout(this.searchTimer);\n this.searchTimer = null;\n }, 700);\n}\n\n}\n","import { Pipe, ChangeDetectorRef, EventEmitter, NgZone, InjectionToken, Inject, Optional, NgModule } from '@angular/core';\nimport * as moment from 'moment';\nimport { duration, relativeTimeThreshold, unix, utc, parseZone, isMoment, isDate, locale } from 'moment';\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nimport * as ɵngcc0 from '@angular/core';\nconst momentConstructor = moment;\r\nclass AddPipe {\r\n /**\r\n * @param {?} value\r\n * @param {?} amount\r\n * @param {?=} unit\r\n * @return {?}\r\n */\r\n transform(value, amount, unit) {\r\n if (typeof amount === 'undefined' || (typeof amount === 'number' && typeof unit === 'undefined')) {\r\n throw new Error('AddPipe: missing required arguments');\r\n }\r\n return momentConstructor(value).add(amount, unit);\r\n }\r\n}\nAddPipe.ɵfac = function AddPipe_Factory(t) { return new (t || AddPipe)(); };\nAddPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amAdd\", type: AddPipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(AddPipe, [{\n type: Pipe,\n args: [{ name: 'amAdd' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$1 = moment;\r\nclass CalendarPipe {\r\n /**\r\n * @param {?} cdRef\r\n * @param {?} ngZone\r\n */\r\n constructor(cdRef, ngZone) {\r\n this.cdRef = cdRef;\r\n this.ngZone = ngZone;\r\n // using a single static timer for all instances of this pipe for performance reasons\r\n CalendarPipe.initTimer(ngZone);\r\n CalendarPipe.refs++;\r\n // values such as Today will need to be replaced with Yesterday after midnight,\r\n // so make sure we subscribe to an EventEmitter that we set up to emit at midnight\r\n this.midnightSub = CalendarPipe.midnight.subscribe(() => {\r\n this.ngZone.run(() => this.cdRef.markForCheck());\r\n });\r\n }\r\n /**\r\n * @param {?} value\r\n * @param {...?} args\r\n * @return {?}\r\n */\r\n transform(value, ...args) {\r\n /** @type {?} */\r\n let formats = null;\r\n /** @type {?} */\r\n let referenceTime = null;\r\n for (let i = 0, len = args.length; i < len; i++) {\r\n if (args[i] !== null) {\r\n if (typeof args[i] === 'object' && !isMoment(args[i])) {\r\n formats = args[i];\r\n }\r\n else {\r\n referenceTime = momentConstructor$1(args[i]);\r\n }\r\n }\r\n }\r\n return momentConstructor$1(value).calendar(referenceTime, formats);\r\n }\r\n /**\r\n * @return {?}\r\n */\r\n ngOnDestroy() {\r\n if (CalendarPipe.refs > 0) {\r\n CalendarPipe.refs--;\r\n }\r\n if (CalendarPipe.refs === 0) {\r\n CalendarPipe.removeTimer();\r\n }\r\n this.midnightSub.unsubscribe();\r\n }\r\n /**\r\n * @param {?} ngZone\r\n * @return {?}\r\n */\r\n static initTimer(ngZone) {\r\n // initialize the timer\r\n if (!CalendarPipe.midnight) {\r\n CalendarPipe.midnight = new EventEmitter();\r\n if (typeof window !== 'undefined') {\r\n /** @type {?} */\r\n const timeToUpdate = CalendarPipe._getMillisecondsUntilUpdate();\r\n CalendarPipe.timer = ngZone.runOutsideAngular(() => {\r\n return window.setTimeout(() => {\r\n // emit the current date\r\n CalendarPipe.midnight.emit(new Date());\r\n // refresh the timer\r\n CalendarPipe.removeTimer();\r\n CalendarPipe.initTimer(ngZone);\r\n }, timeToUpdate);\r\n });\r\n }\r\n }\r\n }\r\n /**\r\n * @return {?}\r\n */\r\n static removeTimer() {\r\n if (CalendarPipe.timer) {\r\n window.clearTimeout(CalendarPipe.timer);\r\n CalendarPipe.timer = null;\r\n CalendarPipe.midnight = null;\r\n }\r\n }\r\n /**\r\n * @return {?}\r\n */\r\n static _getMillisecondsUntilUpdate() {\r\n /** @type {?} */\r\n const now = momentConstructor$1();\r\n /** @type {?} */\r\n const tomorrow = momentConstructor$1().startOf('day').add(1, 'days');\r\n /** @type {?} */\r\n const timeToMidnight = tomorrow.valueOf() - now.valueOf();\r\n return timeToMidnight + 1000; // 1 second after midnight\r\n }\r\n}\nCalendarPipe.ɵfac = function CalendarPipe_Factory(t) { return new (t || CalendarPipe)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef, 16), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone, 16)); };\nCalendarPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amCalendar\", type: CalendarPipe, pure: false });\r\n/**\r\n * Internal reference counter, so we can clean up when no instances are in use\r\n */\r\nCalendarPipe.refs = 0;\r\nCalendarPipe.timer = null;\r\nCalendarPipe.midnight = null;\r\n/** @nocollapse */\r\nCalendarPipe.ctorParameters = () => [\r\n { type: ChangeDetectorRef },\r\n { type: NgZone }\r\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CalendarPipe, [{\n type: Pipe,\n args: [{ name: 'amCalendar', pure: false }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.NgZone }]; }, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$2 = moment;\r\nclass DateFormatPipe {\r\n /**\r\n * @param {?} value\r\n * @param {...?} args\r\n * @return {?}\r\n */\r\n transform(value, ...args) {\r\n if (!value) {\r\n return '';\r\n }\r\n return momentConstructor$2(value).format(args[0]);\r\n }\r\n}\nDateFormatPipe.ɵfac = function DateFormatPipe_Factory(t) { return new (t || DateFormatPipe)(); };\nDateFormatPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amDateFormat\", type: DateFormatPipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(DateFormatPipe, [{\n type: Pipe,\n args: [{ name: 'amDateFormat' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$3 = moment;\r\nclass DifferencePipe {\r\n /**\r\n * @param {?} value\r\n * @param {?} otherValue\r\n * @param {?=} unit\r\n * @param {?=} precision\r\n * @return {?}\r\n */\r\n transform(value, otherValue, unit, precision) {\r\n /** @type {?} */\r\n const date = momentConstructor$3(value);\r\n /** @type {?} */\r\n const date2 = (otherValue !== null) ? momentConstructor$3(otherValue) : momentConstructor$3();\r\n return date.diff(date2, unit, precision);\r\n }\r\n}\nDifferencePipe.ɵfac = function DifferencePipe_Factory(t) { return new (t || DifferencePipe)(); };\nDifferencePipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amDifference\", type: DifferencePipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(DifferencePipe, [{\n type: Pipe,\n args: [{ name: 'amDifference' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst NGX_MOMENT_OPTIONS = new InjectionToken('NGX_MOMENT_OPTIONS');\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\nclass DurationPipe {\r\n /**\r\n * @param {?=} momentOptions\r\n */\r\n constructor(momentOptions) {\r\n this.allowedUnits = ['ss', 's', 'm', 'h', 'd', 'M'];\r\n this._applyOptions(momentOptions);\r\n }\r\n /**\r\n * @param {?} value\r\n * @param {...?} args\r\n * @return {?}\r\n */\r\n transform(value, ...args) {\r\n if (typeof args === 'undefined' || args.length !== 1) {\r\n throw new Error('DurationPipe: missing required time unit argument');\r\n }\r\n return duration(value, (/** @type {?} */ (args[0]))).humanize();\r\n }\r\n /**\r\n * @param {?} momentOptions\r\n * @return {?}\r\n */\r\n _applyOptions(momentOptions) {\r\n if (!momentOptions) {\r\n return;\r\n }\r\n if (!!momentOptions.relativeTimeThresholdOptions) {\r\n /** @type {?} */\r\n const units = Object.keys(momentOptions.relativeTimeThresholdOptions);\r\n /** @type {?} */\r\n const filteredUnits = units.filter(unit => this.allowedUnits.indexOf(unit) !== -1);\r\n filteredUnits.forEach(unit => {\r\n relativeTimeThreshold(unit, momentOptions.relativeTimeThresholdOptions[unit]);\r\n });\r\n }\r\n }\r\n}\nDurationPipe.ɵfac = function DurationPipe_Factory(t) { return new (t || DurationPipe)(ɵngcc0.ɵɵdirectiveInject(NGX_MOMENT_OPTIONS, 24)); };\nDurationPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amDuration\", type: DurationPipe, pure: true });\r\n/** @nocollapse */\r\nDurationPipe.ctorParameters = () => [\r\n { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [NGX_MOMENT_OPTIONS,] }] }\r\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(DurationPipe, [{\n type: Pipe,\n args: [{ name: 'amDuration' }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [NGX_MOMENT_OPTIONS]\n }] }]; }, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\nclass FromUnixPipe {\r\n /**\r\n * @param {?} value\r\n * @param {...?} args\r\n * @return {?}\r\n */\r\n transform(value, ...args) {\r\n if (typeof value === 'string') {\r\n value = +value;\r\n }\r\n return unix(value);\r\n }\r\n}\nFromUnixPipe.ɵfac = function FromUnixPipe_Factory(t) { return new (t || FromUnixPipe)(); };\nFromUnixPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amFromUnix\", type: FromUnixPipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FromUnixPipe, [{\n type: Pipe,\n args: [{ name: 'amFromUnix' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$4 = moment;\r\nclass ParsePipe {\r\n /**\r\n * @param {?} value\r\n * @param {?} formats\r\n * @return {?}\r\n */\r\n transform(value, formats) {\r\n return momentConstructor$4(value, formats);\r\n }\r\n}\nParsePipe.ɵfac = function ParsePipe_Factory(t) { return new (t || ParsePipe)(); };\nParsePipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amParse\", type: ParsePipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ParsePipe, [{\n type: Pipe,\n args: [{ name: 'amParse' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\nclass FromUtcPipe {\r\n /**\r\n * @param {?} value\r\n * @param {?=} formats\r\n * @param {...?} args\r\n * @return {?}\r\n */\r\n transform(value, formats, ...args) {\r\n return formats ? utc(value, formats) : utc(value);\r\n }\r\n}\nFromUtcPipe.ɵfac = function FromUtcPipe_Factory(t) { return new (t || FromUtcPipe)(); };\nFromUtcPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amFromUtc\", type: FromUtcPipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FromUtcPipe, [{\n type: Pipe,\n args: [{ name: 'amFromUtc' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$5 = moment;\r\nclass IsAfterPipe {\r\n /**\r\n * @param {?} value\r\n * @param {?} otherValue\r\n * @param {?=} unit\r\n * @return {?}\r\n */\r\n transform(value, otherValue, unit) {\r\n return momentConstructor$5(value).isAfter(momentConstructor$5(otherValue), unit);\r\n }\r\n}\nIsAfterPipe.ɵfac = function IsAfterPipe_Factory(t) { return new (t || IsAfterPipe)(); };\nIsAfterPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amIsAfter\", type: IsAfterPipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(IsAfterPipe, [{\n type: Pipe,\n args: [{\n name: 'amIsAfter'\n }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$6 = moment;\r\nclass IsBeforePipe {\r\n /**\r\n * @param {?} value\r\n * @param {?} otherValue\r\n * @param {?=} unit\r\n * @return {?}\r\n */\r\n transform(value, otherValue, unit) {\r\n return momentConstructor$6(value).isBefore(momentConstructor$6(otherValue), unit);\r\n }\r\n}\nIsBeforePipe.ɵfac = function IsBeforePipe_Factory(t) { return new (t || IsBeforePipe)(); };\nIsBeforePipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amIsBefore\", type: IsBeforePipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(IsBeforePipe, [{\n type: Pipe,\n args: [{\n name: 'amIsBefore'\n }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$7 = moment;\r\nclass LocalTimePipe {\r\n /**\r\n * @param {?} value\r\n * @return {?}\r\n */\r\n transform(value) {\r\n return momentConstructor$7(value).local();\r\n }\r\n}\nLocalTimePipe.ɵfac = function LocalTimePipe_Factory(t) { return new (t || LocalTimePipe)(); };\nLocalTimePipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amLocal\", type: LocalTimePipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(LocalTimePipe, [{\n type: Pipe,\n args: [{ name: 'amLocal' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n// under systemjs, moment is actually exported as the default export, so we account for that\r\n/** @type {?} */\r\nconst momentConstructor$8 = moment;\r\nclass LocalePipe {\r\n /**\r\n * @param {?} value\r\n * @param {?} locale\r\n * @return {?}\r\n */\r\n transform(value, locale$$1) {\r\n return momentConstructor$8(value).locale(locale$$1);\r\n }\r\n}\nLocalePipe.ɵfac = function LocalePipe_Factory(t) { return new (t || LocalePipe)(); };\nLocalePipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amLocale\", type: LocalePipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(LocalePipe, [{\n type: Pipe,\n args: [{ name: 'amLocale' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\nclass ParseZonePipe {\r\n /**\r\n * @param {?} value\r\n * @return {?}\r\n */\r\n transform(value) {\r\n return parseZone(value);\r\n }\r\n}\nParseZonePipe.ɵfac = function ParseZonePipe_Factory(t) { return new (t || ParseZonePipe)(); };\nParseZonePipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amParseZone\", type: ParseZonePipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ParseZonePipe, [{\n type: Pipe,\n args: [{ name: 'amParseZone' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$9 = moment;\r\nclass SubtractPipe {\r\n /**\r\n * @param {?} value\r\n * @param {?} amount\r\n * @param {?=} unit\r\n * @return {?}\r\n */\r\n transform(value, amount, unit) {\r\n if (typeof amount === 'undefined' || (typeof amount === 'number' && typeof unit === 'undefined')) {\r\n throw new Error('SubtractPipe: missing required arguments');\r\n }\r\n return momentConstructor$9(value).subtract(amount, unit);\r\n }\r\n}\nSubtractPipe.ɵfac = function SubtractPipe_Factory(t) { return new (t || SubtractPipe)(); };\nSubtractPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amSubtract\", type: SubtractPipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(SubtractPipe, [{\n type: Pipe,\n args: [{ name: 'amSubtract' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$a = moment;\r\nclass TimeAgoPipe {\r\n /**\r\n * @param {?} cdRef\r\n * @param {?} ngZone\r\n */\r\n constructor(cdRef, ngZone) {\r\n this.cdRef = cdRef;\r\n this.ngZone = ngZone;\r\n }\r\n /**\r\n * @param {?} m\r\n * @return {?}\r\n */\r\n format(m) {\r\n return m.from(momentConstructor$a(), this.lastOmitSuffix);\r\n }\r\n /**\r\n * @param {?} value\r\n * @param {?=} omitSuffix\r\n * @param {?=} formatFn\r\n * @return {?}\r\n */\r\n transform(value, omitSuffix, formatFn) {\r\n if (this.hasChanged(value, omitSuffix)) {\r\n this.lastTime = this.getTime(value);\r\n this.lastValue = value;\r\n this.lastOmitSuffix = omitSuffix;\r\n this.lastLocale = this.getLocale(value);\r\n this.formatFn = formatFn || this.format.bind(this);\r\n this.removeTimer();\r\n this.createTimer();\r\n this.lastText = this.formatFn(momentConstructor$a(value));\r\n }\r\n else {\r\n this.createTimer();\r\n }\r\n return this.lastText;\r\n }\r\n /**\r\n * @return {?}\r\n */\r\n ngOnDestroy() {\r\n this.removeTimer();\r\n }\r\n /**\r\n * @return {?}\r\n */\r\n createTimer() {\r\n if (this.currentTimer) {\r\n return;\r\n }\r\n /** @type {?} */\r\n const momentInstance = momentConstructor$a(this.lastValue);\r\n /** @type {?} */\r\n const timeToUpdate = this.getSecondsUntilUpdate(momentInstance) * 1000;\r\n this.currentTimer = this.ngZone.runOutsideAngular(() => {\r\n if (typeof window !== 'undefined') {\r\n return window.setTimeout(() => {\r\n this.lastText = this.formatFn(momentConstructor$a(this.lastValue));\r\n this.currentTimer = null;\r\n this.ngZone.run(() => this.cdRef.markForCheck());\r\n }, timeToUpdate);\r\n }\r\n else {\r\n return null;\r\n }\r\n });\r\n }\r\n /**\r\n * @return {?}\r\n */\r\n removeTimer() {\r\n if (this.currentTimer) {\r\n window.clearTimeout(this.currentTimer);\r\n this.currentTimer = null;\r\n }\r\n }\r\n /**\r\n * @param {?} momentInstance\r\n * @return {?}\r\n */\r\n getSecondsUntilUpdate(momentInstance) {\r\n /** @type {?} */\r\n const howOld = Math.abs(momentConstructor$a().diff(momentInstance, 'minute'));\r\n if (howOld < 1) {\r\n return 1;\r\n }\r\n else if (howOld < 60) {\r\n return 30;\r\n }\r\n else if (howOld < 180) {\r\n return 300;\r\n }\r\n else {\r\n return 3600;\r\n }\r\n }\r\n /**\r\n * @param {?} value\r\n * @param {?=} omitSuffix\r\n * @return {?}\r\n */\r\n hasChanged(value, omitSuffix) {\r\n return this.getTime(value) !== this.lastTime\r\n || this.getLocale(value) !== this.lastLocale\r\n || omitSuffix !== this.lastOmitSuffix;\r\n }\r\n /**\r\n * @param {?} value\r\n * @return {?}\r\n */\r\n getTime(value) {\r\n if (isDate(value)) {\r\n return value.getTime();\r\n }\r\n else if (isMoment(value)) {\r\n return value.valueOf();\r\n }\r\n else {\r\n return momentConstructor$a(value).valueOf();\r\n }\r\n }\r\n /**\r\n * @param {?} value\r\n * @return {?}\r\n */\r\n getLocale(value) {\r\n return isMoment(value) ? value.locale() : locale();\r\n }\r\n}\nTimeAgoPipe.ɵfac = function TimeAgoPipe_Factory(t) { return new (t || TimeAgoPipe)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef, 16), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone, 16)); };\nTimeAgoPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amTimeAgo\", type: TimeAgoPipe, pure: false });\r\n/** @nocollapse */\r\nTimeAgoPipe.ctorParameters = () => [\r\n { type: ChangeDetectorRef },\r\n { type: NgZone }\r\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(TimeAgoPipe, [{\n type: Pipe,\n args: [{ name: 'amTimeAgo', pure: false }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.NgZone }]; }, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst momentConstructor$b = moment;\r\nclass UtcPipe {\r\n /**\r\n * @param {?} value\r\n * @return {?}\r\n */\r\n transform(value) {\r\n return momentConstructor$b(value).utc();\r\n }\r\n}\nUtcPipe.ɵfac = function UtcPipe_Factory(t) { return new (t || UtcPipe)(); };\nUtcPipe.ɵpipe = /*@__PURE__*/ ɵngcc0.ɵɵdefinePipe({ name: \"amUtc\", type: UtcPipe, pure: true });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(UtcPipe, [{\n type: Pipe,\n args: [{ name: 'amUtc' }]\n }], null, null); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\r\n/** @type {?} */\r\nconst ANGULAR_MOMENT_PIPES = [\r\n AddPipe,\r\n CalendarPipe,\r\n DateFormatPipe,\r\n DifferencePipe,\r\n DurationPipe,\r\n FromUnixPipe,\r\n ParsePipe,\r\n SubtractPipe,\r\n TimeAgoPipe,\r\n UtcPipe,\r\n FromUtcPipe,\r\n LocalTimePipe,\r\n LocalePipe,\r\n ParseZonePipe,\r\n IsBeforePipe,\r\n IsAfterPipe\r\n];\r\nclass MomentModule {\r\n /**\r\n * @param {?=} options\r\n * @return {?}\r\n */\r\n static forRoot(options) {\r\n return {\r\n ngModule: MomentModule,\r\n providers: [\r\n {\r\n provide: NGX_MOMENT_OPTIONS, useValue: Object.assign({}, options)\r\n }\r\n ]\r\n };\r\n }\r\n}\nMomentModule.ɵfac = function MomentModule_Factory(t) { return new (t || MomentModule)(); };\nMomentModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: MomentModule });\nMomentModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({});\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MomentModule, [{\n type: NgModule,\n args: [{\n declarations: ANGULAR_MOMENT_PIPES,\n exports: ANGULAR_MOMENT_PIPES\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(MomentModule, { declarations: [AddPipe, CalendarPipe, DateFormatPipe, DifferencePipe, DurationPipe, FromUnixPipe, ParsePipe, SubtractPipe, TimeAgoPipe, UtcPipe, FromUtcPipe, LocalTimePipe, LocalePipe, ParseZonePipe, IsBeforePipe, IsAfterPipe], exports: [AddPipe, CalendarPipe, DateFormatPipe, DifferencePipe, DurationPipe, FromUnixPipe, ParsePipe, SubtractPipe, TimeAgoPipe, UtcPipe, FromUtcPipe, LocalTimePipe, LocalePipe, ParseZonePipe, IsBeforePipe, IsAfterPipe] }); })();\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\n\n/**\r\n * @fileoverview added by tsickle\r\n * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc\r\n */\n\nexport { AddPipe, CalendarPipe, DateFormatPipe, DifferencePipe, DurationPipe, FromUnixPipe, ParsePipe, MomentModule, SubtractPipe, TimeAgoPipe, UtcPipe, FromUtcPipe, LocalTimePipe, LocalePipe, ParseZonePipe, IsBeforePipe, IsAfterPipe, NGX_MOMENT_OPTIONS };\n\n","
      \n
      \n
      \n
      \n \n \n
      Running task ...
      \n \n
      \n
      \n
      \n \n \n
      Next Run Time
      \n {{momentTime(job.nextRun)}}
      \n
      \n
      \n \n \n
      \n
      Schedule Disabled
      \n {{job.nextRun | amTimeAgo}}\n \n
      \n
      \n
      \n
      \n
      \n \n \n
      \n \n
      \n
      \n\n
      \n
      \n
      Description:
      \n
      {{job.description}}
      \n
      \n
      \n
      Enabled:
      \n
      {{job.enabled}}
      \n
      \n \n
      \n
      Cron Schedule:
      \n
      \n
      \n {{job.cronSchedule}}\n
      \n
      \n \n ({{cronTime(job.cronSchedule)}})\n \n
      \n
      \n
      \n
      \n
      Number of times run:
      \n
      {{job.numberOfRuns}}
      \n
      \n \n
      \n
      Last Execution Duration:
      \n
      {{job.lastDurationHuman}}
      \n
      \n
      \n
      Message:
      \n
      {{job.taskDetails.message}}
      \n
      \n
      \n
      \n
      \n
      \n
      \n Last started: \n {{job.lastStarted | amTimeAgo}}\n
      \n
      \n Last ended: \n {{job.lastFinished | amTimeAgo}}\n
      \n
      \n
      \n \n
      \n
      \n \n
      \n
      \n
      ","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport * as moment from 'moment';\nimport cronstrue from 'cronstrue';\nimport { ScheduledJob } from '@gsrs-core/admin/scheduled-jobs/scheduled-job.model';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-scheduled-job',\n templateUrl: './scheduled-job.component.html',\n styleUrls: ['./scheduled-job.component.scss']\n})\nexport class ScheduledJobComponent implements OnInit, OnDestroy {\n\n @Input() job: ScheduledJob;\n @Input() pollIn: any;\n monitor: boolean;\n quickLoad = false;\n mess: any;\n constructor(\n private adminService: AdminService,\n ) { }\n\n ngOnInit() {\n this.monitor = this.pollIn;\n this.refresh(true);\n\n }\n\n ngOnDestroy() {\n this.monitor = false;\n this.refresh(false);\n this.stopMonitor();\n }\n\n momentTime(time: any) {\n return moment(time).fromNow();\n }\n\n cronTime(time: any) {\n return cronstrue.toString(time);\n }\n\n refresh(spawn?: boolean) {\n this.adminService.fetchJob(this.job.id).pipe(take(1)).subscribe( response => {\n this.job = response;\n if (!this.job.running && this.job.lastFinished) {\n const duration = moment.duration((this.job.lastFinished - this.job.lastStarted));\n let timestring = '';\n if ( duration.years() !== 0) {\n timestring += duration.years() + (duration.years() > 1 ? ' years, ' : ' year, ');\n }\n if ( duration.months() !== 0) {\n timestring += duration.months() + (duration.months() > 1 ? ' months, ' : ' month, ');\n }\n if ( duration.days() !== 0) {\n timestring += duration.days() + (duration.days() > 1 ? ' days, ' : ' day, ');\n }\n if ( duration.hours() !== 0) {\n timestring += duration.hours() + (duration.hours() > 1 ? ' hrs, ' : ' hr, ');\n }\n if ( duration.minutes() !== 0) {\n timestring += duration.minutes() + (duration.minutes() > 1 ? ' min, ' : ' min, ');\n }\n if ( duration.seconds() !== 0) {\n timestring += duration.seconds() + (duration.seconds() > 1 ? ' sec' : ' sec');\n } else if (timestring === '') {\n timestring = (this.job.lastFinished - this.job.lastStarted) + ' ms';\n }\n this.job.lastDurationHuman = timestring;\n\n\n }\n this.quickLoad = false;\n if (this.monitor && spawn) {\n this.mess = 'Polling ... ' + response.status;\n if (this.job.running) {\n setTimeout(() => {\n this.refresh(true);\n }, Math.min(this.untilNextRun(), 200));\n } else {\n setTimeout(() => {\n this.refresh(true);\n }, Math.min(this.untilNextRun(), 10000));\n }\n }\n }, error => {\n this.monitor = false;\n console.log(error);\n });\n\n\n }\n\n untilNextRun() {\n const date = new Date();\n return this.job.nextRun - ( date.getTime() - 0);\n }\n\n stopMonitor() {\n this.monitor = false;\n}\n\ndisable(job: any) {\n this.adminService.runJob(job['@disable']).pipe(take(1)).subscribe( response => {\n this.refresh();\n });\n}\n\nenable(job: any) {\n this.adminService.runJob(job['@enable']).pipe(take(1)).subscribe( response => {\n this.refresh();\n });\n}\n\nexecute(job: any) {\n this.quickLoad = true;\n this.adminService.runJob(job['@execute']).pipe(take(1)).subscribe( response => {\n this.refresh(true);\n }, error => {\n setTimeout(() => {\n this.refresh();\n } );\n });\n}\ncancel(job: any) {\n this.adminService.runJob(job['@cancel']).pipe(take(1)).subscribe( response => {\n this.refresh();\n });\n}\n\nformatDate(ts) {\n return new Date(ts) + '';\n}\n\n}\n","
      \n \n \n \n \n \n

      No scheduled tasks

      \n
      \n
      \n \n\n
      \n \n \n
      \n \n","import { Component, OnInit } from '@angular/core';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-scheduled-jobs',\n templateUrl: './scheduled-jobs.component.html',\n styleUrls: ['./scheduled-jobs.component.scss']\n})\nexport class ScheduledJobsComponent implements OnInit {\n\n jobs: any = [];\n loading: boolean;\n\n constructor(\n private adminService: AdminService\n ) { }\n\n ngOnInit() {\n this.loading = true;\n setTimeout(() => {\n this.adminService.fetchJobs().pipe(take(1)).subscribe( resp => {\n this.loading = false;\n this.jobs = resp.content;\n });\n }, 1000);\n }\n\n\n}\n","
      Click the chevrons to expand / collapse a folder. Click on a log file to download
      \n\n\n\n \n \n \n {{node.text}} \n \n \n {{node.text}}\n \n \n \n \n {{node.name}}\n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { take } from 'rxjs/operators';\nimport { NestedTreeControl, FlatTreeControl } from '@angular/cdk/tree';\nimport {MatTreeModule} from '@angular/material/tree';\nimport {MatTreeNestedDataSource} from '@angular/material/tree';\nimport {MatTreeFlattener} from '@angular/material/tree';\nimport {MatTreeFlatDataSource} from '@angular/material/tree';\nimport { DirectoryFile } from '@gsrs-core/admin/admin-objects.model';\nimport { LoadingService } from '@gsrs-core/loading';\n\n@Component({\n selector: 'app-all-files',\n templateUrl: './all-files.component.html',\n styleUrls: ['./all-files.component.scss']\n})\nexport class AllFilesComponent implements OnInit {\n\n /* eslint-enable */\n ngOnInit() {\n this.loadingService.setLoading(true);\n this.adminService.getFiles().pipe(take(1)).subscribe( result => {\n for (const r of result) {\n if (r.isDir === false) {\n r.hasLink = this.adminService.getDownloadLink(r.id);\n }\n }\n const temp = this.listToTree(result);\n this.dataSource.data = temp;\n this.loadingService.setLoading(false);\n\n }, error => this.loadingService.setLoading(false));\n\n }\n\n listToTree(list) {\n const map = {};\n const roots = [];\n let node;\n let count = 0;\n for (const l of list) {\n map[l.id] = count;\n count++;\n l.children = [];\n if (count === 1) {\n l.order = 'primary';\n\n } else if (count % 2 === 0) {\n l.order = 'even';\n } else {\n l.order = 'odd';\n }\n }\n for (const l of list) {\n node = l;\n if (node.parent !== '#') {\n list[map[node.parent]].children.push(node);\n } else {\n roots.push(node);\n }\n }\n return roots;\n }\n\n private _transformer = (node: any, level: number) => (\n {\n expandable: !!node.children && node.children.length > 0,\n name: node.id,\n text: node.text,\n level: level,\n hasLink: node.hasLink\n }\n );\n // it is impossible to follow the ordering rule. Doing so results in another tslint error.\n/* eslint-disable */\n treeControl = new FlatTreeControl(\n node => node.level, node => node.expandable);\n\n treeFlattener = new MatTreeFlattener(\n this._transformer, node => node.level, node => node.expandable, node => node.children);\n\n dataSource = new MatTreeFlatDataSource(this.treeControl, this.treeFlattener);\n logFiles: Array< DirectoryFile >;\n constructor(\n private adminService: AdminService,\n private loadingService: LoadingService\n ) {\n }\n hasChild = (_: number, node: FileTreeNode) => node.expandable;\n}\n\n\ninterface FileTreeNode {\n expandable: boolean;\n name?: string;\n id?: string;\n level: number;\n text?: string;\n hasLink?: string;\n}\n","
      \n
      \n \n \n \n Server Status\n \n

      Server Status

      \n
      \n \n
      \n
      \n \n \n User Management\n \n \n

      User Management

      \n \n \n \n
      \n
      \n \n \n Data Management\n \n

      Data Import

      \n \n \n \n
      \n \n \n CV Management\n \n

      Controlled Vocabulary Edit

      \n \n \n \n
      \n \n \n Scheduled Jobs\n \n \n

      Scheduled Jobs

      \n
      \n \n
      \n
      \n
      \n \n \n All Files\n \n \n

      All Files

      \n \n \n \n
      \n
      \n \n
      \n \n
      \n
      ","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MatTabChangeEvent } from '@angular/material/tabs';\nimport {Location} from '@angular/common';\n\n@Component({\n selector: 'app-admin',\n templateUrl: './admin.component.html',\n styleUrls: ['./admin.component.scss']\n})\nexport class AdminComponent implements OnInit {\n activeTab: number;\n current: string;\n lastTab: number;\n constructor(\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private location: Location\n ) { }\n\n ngOnInit() {\n\n this.activatedRoute.params.subscribe(routeParams => {\n this.current = routeParams.function;\n switch (this.current) {\n case 'cache': this.activeTab = 0; break;\n case 'user': this.activeTab = 1; break;\n case 'data': this.activeTab = 2; break;\n case 'cv': this.activeTab = 3; break;\n case 'jobs': this.activeTab = 4; break;\n case 'files': this.activeTab = 5; break;\n default: this.activeTab = 0; break;\n }\n });\n const tab = this.activatedRoute.snapshot.queryParams['function'] || 'cache';\n\n}\n\n\n onTabChanged(event: MatTabChangeEvent): void {\n\n let route = 'cache';\n\n switch (event.index) {\n case 0:\n\n break;\n case 1:\n route = 'user';\n break;\n case 2:\n route = 'data';\n break;\n case 3:\n route = 'cv';\n break;\n case 4:\n route = 'jobs';\n break;\n case 5:\n route = 'files';\n break;\n }\n if (this.current !== 'jobs') {\n this.current = route;\n this.router.navigate(['/admin/' + route] );\n } else {\n this.current = route;\n this.activeTab = 0;\n this.router.navigate(['/admin/' + route] );\n }\n\n\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n@Pipe({\n name: 'decodeUri'\n})\nexport class DecodeUriPipe implements PipeTransform {\n transform(item: string, item2?: string): string {\n return decodeURIComponent(item);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n@Pipe({\n name: 'fileSize'\n})\nexport class FileSizePipe implements PipeTransform {\n transform(input: number): string {\n if ( isNaN( parseFloat( String(input)))) {\n return input.toString();\n }\n\n const order = [' B', ' KB', ' MB', ' GB', ' TB', ' PB'];\n\n let index = 0;\n\n while (input >= 1024 && index < 5) {\n input = input / 1024;\n index++;\n }\n\n return input.toFixed(2) + order[index];\n }\n}\n","\n
      \n
      \n
      {{download.displayFilename}}
      \n
      \n Status: \n {{download.status}}\n
      \n
      \n\n
      \n
      \n
      \n
      \n \n \n
      Running task ...
      \n
      \n
      \n \n \n
      \n
      Download Cancelled
      \n\n
      \n
      \n
      \n \n \n
      \n
      Export complete
      \n\n
      \n
      \n\n\n
      \n\n
      \n \n \n Download\n \n \n
      \n\n
      \n
      \n\n
      \n
      \n
      Records Processed So Far:
      \n
      {{download.numRecords}}
      \n
      \n
      \n
      Records Processed:
      \n
      {{download.numRecords}}
      \n
      \n
      \n \n
      \n
      \n
      Search:
      \n
      {{parameters.search}}
      \n
      \n \n \n
      \n
      {{facet.facet}}:
      \n
      {{value | decodeUri}}
      \n
      \n
      \n
      \n\n
      \n
      Sort By:
      \n
      {{displayOrder}}
      \n
      \n\n\n
      \n
      \n
      \n
      Size:
      \n
      {{download.size | fileSize}}
      \n
      \n
      \n
      SHA-1:
      \n
      {{download.sha1}}
      \n
      \n\n
      \n
      \n
      \n
      \n
      \n Started: \n {{download.startedHuman}}\n
      \n
      \n Ended: \n {{download.finishedHuman}}\n
      \n
      \n
      \n \n
      \n\n
      \n
      \n
      \n The download is preparing on the server. This dialog can be closed and the file downloaded by clicking on 'user downloads' in the user icon menu\n
      \n
      \n
      \n
      \n Deleted Download\n
      \n
      \n
      \n
      \n Download not found\n
      \n
      \n","import { Component, OnInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport * as moment from 'moment';\nimport { take } from 'rxjs/operators';\nimport { ConfigService } from '@gsrs-core/config';\nimport { NavigationExtras } from '@angular/router';\n\n@Component({\n selector: 'app-download-monitor',\n templateUrl: './download-monitor.component.html',\n styleUrls: ['./download-monitor.component.scss']\n})\nexport class DownloadMonitorComponent implements OnInit, OnDestroy {\n @Input() id: string;\n @Input() fromRoute?: boolean;\n @Output() deletedEmitter = new EventEmitter();\n download: any;\n deleted = false;\n exists: boolean;\n browseLink = false;\n parameters: NavigationExtras = {};\n facetArray = [];\n displayOrder: string;\n type?: string;\n killed = false;\n constructor(\n private authService: AuthService\n ) { }\n\n ngOnInit() {\n this.refresh();\n }\n\n refresh(stop?: boolean) {\n if (!stop) {\n this.authService.getUpdateStatus(this.id).pipe(take(1)).subscribe(response => {\n // console.log((this.exists? this.exists : 't') + '---' + this.download.status);\n this.download = response;\n if (response.originalQuery) {\n this.processQuery(response.originalQuery);\n }\n\n this.exists = true;\n if (this.download.started) {\n this.download.startedHuman = moment(this.download.started).fromNow();\n }\n if (this.download.finished) {\n this.download.finishedHuman = moment(this.download.finished).fromNow();\n }\n if (this.download.status === 'RUNNING' || this.download.status === 'PREPARING' || this.download.status === 'INITIALIZED') {\n if (!this.killed) {\n setTimeout(() => {\n this.refresh();\n }, 1400);\n }\n }\n }, error => {\n this.exists = false;\n });\n }\n }\n\n ngOnDestroy() {\n this.killed = true;\n this.exists = false;\n this.refresh(true);\n }\n\n cancel() {\n this.authService.changeDownload(this.download.cancelUrl.url).pipe(take(1)).subscribe(response => {\n this.refresh();\n });\n }\n\n downloadExport() {\n this.authService.changeDownload(this.download.downloadUrl).pipe(take(1)).subscribe(response => {\n this.refresh();\n });\n }\n\n deleteDownload() {\n this.authService.deleteDownload(this.download.removeUrl.url).pipe(take(1)).subscribe(response => {\n this.deleted = true;\n });\n }\n\n processQuery(url: string) {\n if (url.indexOf('status(') < 0) {\n this.browseLink = true;\n if (url.indexOf('v1/productsall') > 0) {\n this.type = 'product';\n } else if ((url.indexOf('v1/applications') > 0) || (url.indexOf('v1/applicationsall') > 0)) {\n this.type = 'application';\n } else if\n ((url.indexOf('v1/adverseeventpt') > 0) || (url.indexOf('v1/adverseeventdme') > 0) || (url.indexOf('v1/adverseeventcvm') > 0)) {\n this.type = 'adverseevent';\n } else {\n this.type = 'browse';\n }\n url = url.split('?')[1];\n\n const urlParams = new URLSearchParams(url);\n this.facetArray = [];\n const facets = urlParams.getAll('facet');\n facets.forEach(str => {\n const facet = str.split('/');\n let bool = 'true';\n if (facet[0].indexOf('!') > -1) {\n bool = 'false';\n facet[0] = facet[0].slice(1, facet[0].length);\n }\n let exists = false;\n facet[1] = encodeURIComponent(facet[1]);\n const value = facet[1] + '.' + bool;\n this.facetArray.forEach(entry => {\n if (entry.facet === facet[0]) {\n // build valuestring for queryParams and values for template display\n entry.valueString = entry.valueString + '+' + value;\n entry.values.push(bool === 'false' ? 'NOT ' + facet[1] : facet[1]);\n exists = true;\n }\n });\n if (exists === false) {\n this.facetArray.push(\n { facet: facet[0], valueString: value, values: [bool === 'false' ? 'NOT ' + facet[1] : facet[1]] }\n );\n }\n });\n if (urlParams.has('q')) {\n this.parameters['search'] = urlParams.get('q');\n }\n\n if (urlParams.has('order')) {\n this.parameters['order'] = urlParams.get('order');\n let order = urlParams.get('order');\n if (order.charAt(0) === '$') {\n order = order.slice(1, order.length);\n order = order.replace('root_', '') + ' - descending';\n\n }\n if (order.charAt(0) === '^') {\n order = order.slice(1, order.length);\n order = order.replace('root_', '') + ' - ascending';\n }\n this.displayOrder = order;\n }\n\n if (this.facetArray.length > 0) {\n let facetVal = '';\n for (let i = 0; i < this.facetArray.length; i++) {\n const object = this.facetArray[i];\n facetVal += object.facet + '*' + object.valueString;\n if (i < (this.facetArray.length - 1)) {\n facetVal += ',';\n }\n }\n this.parameters['facets'] = facetVal;\n }\n }\n }\n\n}\n","
      \n \n \n \n
      \n \n
      \n
      \n\n
      \n

      User Downloads

      \n\n \n \n\n \n \n

      No downloads found

      \n
      \n
      \n\n\n","import { Component, OnInit } from '@angular/core';\nimport { RouterLink, ActivatedRoute, Router } from '@angular/router';\nimport { AuthService } from '@gsrs-core/auth/auth.service';\nimport { UserDownload } from '@gsrs-core/auth/user-downloads/download.model';\nimport { take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-user-downloads',\n templateUrl: './user-downloads.component.html',\n styleUrls: ['./user-downloads.component.scss']\n})\nexport class UserDownloadsComponent implements OnInit {\n id?: string;\n downloads?: Array< UserDownload >;\n totalSubs?: string;\n constructor(\n private activatedRoute: ActivatedRoute,\n private authService: AuthService,\n private router: Router\n ) {}\n\n // use aspirin for initial development a05ec20c-8fe2-4e02-ba7f-df69e5e30248\n ngOnInit() {\n this.id = this.activatedRoute.snapshot.params['id'] || null;\n if (!this.id) {\n this.authService.getAllDownloads().pipe(take(1)).subscribe(response => {\n this.downloads = response.downloads;\n });\n }\n }\n\n allDownloads() {\n this.router.navigate(['/user-downloads'], {queryParams: {}});\n }\n\n}\n","
      \n

      Upload Monitor

      \n\n\n
      \n
      \n
      Importing {{loadJob.name}}
      \n \n
      Status: {{loadJob.status}}
      {{ellipses}}
      \n
      \n
      \n
      \n\n
      \n
      Progress
      \n
      \n \n \n
      \n
      \n {{dynamic}} / {{max}}\n
      \n
      \n
      \n \n
      \n\n
      \n
      = 0) || stats.extractFail && stats.extractFail >= 0\">\n
      Extracted Records
      \n \n \n\n \n \n
      \n
      0\">\n {{loadJob.statistics.recordsExtractedSuccess}}\n
      \n
      0\">\n {{loadJob.statistics.recordsExtractedFailed}}\n
      \n
      \n
      \n
      = 0) || (stats.processedPass && stats.processedPass >= 0)\">\n
      Processed Records
      \n \n\n \n\n \n \n
      \n
      0\">\n {{loadJob.statistics.recordsProcessedSuccess}}\n
      \n
      0\">\n {{loadJob.statistics.recordsProcessedFailed }}\n
      \n
      \n
      \n
      = 0) || stats.persistFail && stats.persistFail >= 0\" >\n
      Persisted Records
      \n \n \n\n \n \n
      \n
      0\">\n {{loadJob.statistics.recordsPersistedSuccess}}\n
      \n
      0\">\n {{loadJob.statistics.recordsPersistedFailed}}\n
      \n
      \n
      \n\n\n
      \n\n
      \n
      \n
      \n
      \n Time started:
      \n
      {{startedHuman}}\n
      \n
      \n
      \n
      \n Time Finished:
      \n
      {{finishedHuman}}\n
      \n
      \n
      \n
      Total time running:
      \n
      {{humanTimeTotal}}
      \n
      \n
      \n
      Average Records per second:
      \n
      {{averagePersistRate | number}}
      \n
      \n
      \n
      Estimated time left:
      \n
      {{humanTimeLeft}}
      \n
      \n
      \n
      Estimated total time:
      \n
      {{humanTimeEstimate}}
      \n \n
      \n
      \n
      \n
      \n \n \n \n \n \n \n \n
      \n\n
      \n
      \n
      ","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\nimport { AdminService } from '@gsrs-core/admin/admin.service';\nimport { take } from 'rxjs/operators';\nimport * as moment from 'moment';\nimport { UploadObject } from '@gsrs-core/admin/admin-objects.model';\n\n@Component({\n selector: 'app-monitor',\n templateUrl: './monitor.component.html',\n styleUrls: ['./monitor.component.scss']\n})\nexport class MonitorComponent implements OnInit, OnDestroy {\n jobId: any;\n loadJob: UploadObject;\n dynamic = 0;\n timeleft: string;\n max = 0;\n averagePersistRate: number;\n humanTimeTotal: string;\n humanTimeLeft: string;\n humanTimeEstimate: string;\n startedHuman: string;\n finishedHuman: string;\n message: string;\n monitor = true;\n stats: any = {};\n hide = false;\n ellipses = '.';\n constructor(\n private activeRoute: ActivatedRoute,\n public adminService: AdminService,\n private router: Router\n ) { }\n\n ngOnInit() {\n this.activeRoute.params.subscribe(routeParams => {\n this.jobId = routeParams.id;\n this.adminService.queryLoad(this.jobId).pipe(take(1)).subscribe(response => {\n if (response.statistics && response.statistics.totalRecords && response.statistics.totalRecords.count) {\n this.max = response.statistics.totalRecords.count;\n }\n this.loadJob = response;\n this.stats.extractFail = 0;\n this.stats.extractPass = 0;\n this.stats.persistFail = 0;\n this.stats.persistPass = 0;\n this.stats.processedFail = 0;\n this.stats.processedPass = 0;\n this.humanizeFields(response);\n this.mixResultDisplay(response);\n this.changeEllipses();\n this.refresh(true);\n });\n });\n }\n\n ngOnDestroy() {\n this.refresh(false);\n }\n\n mixResultDisplay(job): void {\n this.stats.extractFail = (job.statistics.recordsExtractedFailed + job.statistics.recordsExtractedSuccess) / this.max * 100;\n this.stats.extractPass = (job.statistics.recordsExtractedSuccess) / this.max * 100;\n this.stats.persistFail = (job.statistics.recordsPersistedFailed + job.statistics.recordsPersistedSuccess) / this.max * 100;\n this.stats.persistPass = (job.statistics.recordsPersistedSuccess) / this.max * 100;\n this.stats.processedFail = (job.statistics.recordsProcessedFailed + job.statistics.recordsProcessedSuccess) / this.max * 100;\n this.stats.processedPass = (job.statistics.recordsProcessedSuccess) / this.max * 100;\n }\n\n clearJob(): void {\n const navigationExtras: NavigationExtras = {\n queryParams: { function: 'data' }\n };\n this.router.navigate(['/admin'], navigationExtras);\n }\n\n refresh(bool: boolean = true): void {\n this.adminService.queryLoad(this.loadJob.id).pipe(take(1)).subscribe(response => {\n this.loadJob = response;\n if (response.statistics.totalRecords && response.statistics.totalRecords.count) {\n this.max = response.statistics.totalRecords.count;\n }\n this.humanizeFields(response);\n this.mixResultDisplay(response);\n if (response.status !== 'COMPLETE' && bool) {\n setTimeout(() => {\n if (this.monitor) {\n this.refresh();\n }\n });\n } else {\n this.monitor = false;\n }\n }, error => {\n this.message = 'invalid Job ID';\n this.jobId = null;\n });\n }\n\n humanizeFields(job: UploadObject): void {\n this.dynamic = job.statistics.recordsPersistedSuccess +\n job.statistics.recordsPersistedFailed +\n job.statistics.recordsProcessedFailed +\n job.statistics.recordsExtractedFailed;\n let end = job.stop || null;\n const time = moment.duration(job.statistics.estimatedTimeLeft , 'milliseconds');\n this.humanTimeLeft = time.humanize();\n if (!end) {\n this.averagePersistRate = 1000.0 / job.statistics.averageTimeToPersist;\n end = new Date().getTime();\n } else {\n this.averagePersistRate = job.statistics.recordsPersistedSuccess * 1000 / (end - job.start);\n }\n\n this.humanTimeTotal = moment.duration(end - job.start, 'milliseconds').humanize();\n // this.humanTimeTotal.full = this.toFullHumanTime(dur);\n // dur = moment.duration((end - job.start) + job.statistics.estimatedTimeLeft, 'milliseconds');\n\n this.humanTimeEstimate = moment.duration((end - job.start) + job.statistics.estimatedTimeLeft, 'milliseconds').humanize();\n if (job.start) {\n this.startedHuman = moment(job.start).fromNow();\n }\n if (job.stop) {\n this.finishedHuman = moment(job.stop).fromNow();\n }\n // this.humanTimeEstimate.full = this.toFullHumanTime(dur);\n }\n\n toFullHumanTime(sent): string {\n let result = '0';\n if (sent.years() > 0) {\n result += sent.years() + ' years ';\n }\n if (sent.months() > 0 || result !== '') {\n result += sent.months() + ' months ';\n }\n if (sent.days() > 0 || result !== '') {\n result += sent.days() + ' days ';\n }\n if (sent.hours() > 0 || result !== '') {\n result += sent.hours() + ' hours ';\n }\n if (sent.minutes() > 0 || result !== '') {\n result += sent.minutes() + ' minutes ';\n }\n if (sent.seconds() > 0 || result !== '') {\n result += sent.seconds() + ' seconds';\n }\n return result;\n }\n\n changeEllipses() {\n if (this.loadJob && this.loadJob.status === 'RUNNING') {\n switch (this.ellipses) {\n case '.': this.ellipses = '..'; break;\n case '..': this.ellipses = '...'; break;\n case '...': this.ellipses = '.'; break;\n default: this.ellipses = '.'; break;\n }\n setTimeout(() => {\n this.changeEllipses();\n }, 1000);\n } else {\n this.ellipses = '';\n }\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { AuthService } from '../auth/auth.service';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class CanActivateAdmin implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) { }\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('Admin').subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/home'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","
      \n \n
      \n You are not authorized to see this resource. Please contact an administrator \n or send an email to {{email}} \n \n to be granted access.\n
      \n
      \n
      \n","import { Component, OnInit } from '@angular/core';\nimport { ConfigService } from '@gsrs-core/config';\nimport { AuthService } from '@gsrs-core/auth';\nimport { take } from 'rxjs/operators';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-unauthorized',\n templateUrl: './unauthorized.component.html',\n styleUrls: ['./unauthorized.component.scss']\n})\nexport class UnauthorizedComponent implements OnInit {\n email?: string;\n constructor(\n private configService: ConfigService,\n private authService: AuthService,\n private router: Router\n ) { }\n\n ngOnInit() {\n if (this.configService.configData && this.configService.configData.contactEmail) {\n this.email = this.configService.configData.contactEmail;\n }\n\n this.authService.getAuth().pipe(take(1)).subscribe(response => {\n if (response && response.active) {\n this.router.navigate(['/home']);\n }\n });\n }\n\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport {\n SubstanceDetail\n} from '../substance/substance.model';\nimport {\n SubstanceName, SubstanceNameOrg, SubstanceStructure,\n SubstanceMoiety,\n Subunit,\n Link,\n DisulfideLink,\n Glycosylation,\n Site,\n StructuralModification,\n Sugar,\n Linkage,\n NucleicAcid,\n StructurallyDiverse, DisplayStructure, Monomer, PolymerClassification\n} from '../substance/substance.model';\nimport {\n SequenceUnit,\n SubstanceFormDefinition,\n SubstanceFormResults, SubunitSequence, ValidationResults, ValidationMessage\n} from '../substance-form/substance-form.model';\nimport { Observable, Subject, ReplaySubject, Subscription } from 'rxjs';\nimport { SubstanceService } from '@gsrs-core/substance/substance.service';\nimport { UtilsService } from '@gsrs-core/utils/utils.service';\nimport { StructureService } from '@gsrs-core/structure';\nimport * as _ from 'lodash';\nimport { take } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\n\n@Injectable()\nexport class SubstanceSsg4mService implements OnDestroy {\n private privateSubstance: SubstanceDetail;\n private substanceStateHash?: number;\n private substanceEmitter: ReplaySubject;\n private substanceDisulfideLinksEmitter = new ReplaySubject>();\n private substanceGlycosylationEmitter = new ReplaySubject();\n private substanceLinksEmitter = new ReplaySubject>();\n private substanceNamesEmitter = new ReplaySubject>();\n private substanceOtherLinksEmitter = new ReplaySubject>();\n private substanceStructuralModificationsEmitter = new ReplaySubject>();\n private substanceCysteineEmitter = new ReplaySubject>();\n private substanceFormActionEmitter = new ReplaySubject<'load' | 'unload'>();\n\n private definitionEmitter = new Subject();\n private subClass: string;\n private substanceSubunitsEmitter = new Subject>();\n private substanceSugarsEmitter = new Subject>();\n private substanceNucleicAcidEmitter = new Subject();\n private displaySequences: Array;\n private displaySequencesEmitter = new Subject>();\n private substanceChangeReasonEmitter = new Subject();\n private nameResolver = new Subject();\n resolvedMol = this.nameResolver.asObservable();\n private _bypassUpdateCheck = false;\n private method?: string;\n\n constructor(\n private substanceService: SubstanceService,\n public utilsService: UtilsService,\n private structureService: StructureService\n ) {\n this.substanceEmitter = new ReplaySubject();\n }\n\n ngOnDestroy() {\n this.unloadSubstance();\n }\n\n loadSubstance(substanceClass: string = 'chemical', substance?: SubstanceDetail, method?: string, mergeConcept?: boolean): Observable {\n if (method) {\n this.method = method;\n } else {\n this.method = null;\n }\n if (mergeConcept) {\n this.privateSubstance = substance;\n this.substanceEmitter.next(substance);\n // this.namesUpdated();\n }\n return new Observable(observer => {\n if (substance != null) {\n this.privateSubstance = substance;\n substanceClass = this.privateSubstance.substanceClass;\n } else {\n // the second case happens in the forms sometimes but really shouldn't\n if (substanceClass === 'chemical' || substanceClass === 'structure') {\n this.privateSubstance = {\n substanceClass: 'chemical',\n references: [],\n names: [],\n structure: {\n molfile: '\\n\\n\\n 0 0 0 0 0 0 999 V2000\\nM END'\n },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'protein') {\n this.privateSubstance = {\n substanceClass: 'protein',\n references: [],\n names: [],\n protein: { proteinType: '' },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'nucleicAcid') {\n this.privateSubstance = {\n substanceClass: 'nucleicAcid',\n references: [],\n names: [],\n nucleicAcid: {},\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'mixture') {\n this.privateSubstance = {\n substanceClass: 'mixture',\n references: [],\n names: [],\n mixture: {},\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'structurallyDiverse') {\n this.privateSubstance = {\n substanceClass: 'structurallyDiverse',\n references: [],\n names: [],\n structurallyDiverse: {\n part: ['whole'],\n $$diverseType: 'whole'\n },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'specifiedSubstance' || (substanceClass === 'specifiedSubstanceG1')) {\n this.privateSubstance = {\n substanceClass: 'specifiedSubstanceG1',\n references: [],\n names: [],\n specifiedSubstance: {\n constituents: [],\n references: []\n },\n codes: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'specifiedSubstanceG3') {\n this.privateSubstance = {\n substanceClass: substanceClass,\n references: [],\n names: [],\n specifiedSubstanceG3: {\n parentSubstance: {},\n definition: { references: [] },\n grade: { references: [] }\n },\n codes: [],\n properties: []\n };\n } else if (substanceClass === 'polymer') {\n this.privateSubstance = {\n substanceClass: substanceClass,\n references: [],\n names: [],\n polymer: {\n idealizedStructure: {},\n monomers: [],\n },\n codes: [],\n moieties: [],\n relationships: [],\n properties: []\n };\n } else if (substanceClass === 'specifiedSubstanceG4m') {\n this.privateSubstance = {\n substanceClass: substanceClass,\n // references: [],\n specifiedSubstanceG4m: {\n parentSubstance: {},\n process: []\n },\n // codes: [],\n // properties: []\n };\n } else {\n this.privateSubstance = {\n substanceClass: substanceClass,\n references: [],\n names: [],\n codes: []\n };\n }\n // default values\n\n // TP: default to protected for root level record.\n // this.privateSubstance.access = [\"protected\"];\n // this.privateSubstance.definitionLevel = \"COMPLETE\";\n // this.privateSubstance.definitionType = \"PRIMARY\";\n }\n\n this.subClass = this.privateSubstance.substanceClass;\n\n // Only these two substance classes differ from\n // the name of their JSON defintional element\n // That's why they are used as exceptions\n\n if (this.subClass === 'chemical') {\n this.subClass = 'structure';\n } else if (this.subClass === 'specifiedSubstanceG1') {\n this.subClass = 'specifiedSubstance';\n }\n\n if (this.privateSubstance[this.subClass] == null) {\n this.privateSubstance[this.subClass] = {};\n }\n this.initForm();\n this.substanceEmitter.next(this.privateSubstance);\n observer.next();\n observer.complete();\n });\n }\n\n get substanceFormAction(): Observable<'load' | 'unload'> {\n return this.substanceFormActionEmitter.asObservable();\n }\n\n initForm(): void {\n this.substanceFormActionEmitter.next('load');\n }\n\n get substance(): Observable {\n return this.substanceEmitter.asObservable();\n }\n\n resetState(): void {\n const substanceString = JSON.stringify(this.privateSubstance);\n this.substanceStateHash = this.utilsService.hashCode(substanceString);\n }\n\n unloadSubstance(): void {\n // this.privateSubstance = null;\n this.displaySequences = null;\n this.substanceEmitter.complete();\n this.substanceDisulfideLinksEmitter.complete();\n this.substanceGlycosylationEmitter.complete();\n this.substanceLinksEmitter.complete();\n this.substanceNamesEmitter.complete();\n this.substanceOtherLinksEmitter.complete();\n this.substanceStructuralModificationsEmitter.complete();\n this.substanceCysteineEmitter.complete();\n this.substanceEmitter = new ReplaySubject();\n this.substanceDisulfideLinksEmitter = new ReplaySubject>();\n this.substanceGlycosylationEmitter = new ReplaySubject();\n this.substanceLinksEmitter = new ReplaySubject>();\n this.substanceLinksEmitter = new ReplaySubject>();\n this.substanceOtherLinksEmitter = new ReplaySubject>();\n this.substanceStructuralModificationsEmitter = new ReplaySubject>();\n this.substanceCysteineEmitter = new ReplaySubject>();\n this.substanceFormActionEmitter.next('unload');\n }\n\n ready(): Observable {\n return new Observable(observer => {\n this.substanceEmitter.pipe(take(1)).subscribe(substance => {\n observer.next();\n observer.complete();\n });\n });\n }\n\n get isSubstanceUpdated(): boolean {\n const substanceString = JSON.stringify(this.privateSubstance);\n if (this._bypassUpdateCheck) {\n this._bypassUpdateCheck = false;\n return false;\n } else {\n return this.substanceStateHash !== this.utilsService.hashCode(substanceString);\n }\n }\n\n bypassUpdateCheck(): void {\n this._bypassUpdateCheck = true;\n }\n\n saveSubstance(): Observable {\n return new Observable(observer => {\n const results: SubstanceFormResults = {\n isSuccessfull: true\n };\n if (this.privateSubstance.structure != null && !this.privateSubstance.structure.uuid) {\n this.privateSubstance.structure.id = this.utilsService.newUUID();\n this.privateSubstance.structure.uuid = this.privateSubstance.structure.id;\n }\n if (this.privateSubstance.moieties != null && this.privateSubstance.moieties.length) {\n this.privateSubstance.moieties.forEach(moiety => {\n if (!moiety.uuid) {\n moiety.id = this.utilsService.newUUID();\n moiety.uuid = moiety.id;\n }\n });\n }\n\n const substanceCopy = this.cleanSubstance();\n this.substanceService.saveSubstance(substanceCopy, this.method).subscribe(substance => {\n this.privateSubstance = substance;\n results.uuid = substance.uuid;\n // this.definitionEmitter.next(this.getDefinition());\n if (this.privateSubstance.substanceClass === 'protein') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.protein.subunits);\n } else if (this.privateSubstance.substanceClass === 'nucleicAcid') {\n this.substanceSugarsEmitter.next(this.privateSubstance.nucleicAcid.sugars);\n this.substanceSubunitsEmitter.next(this.privateSubstance.nucleicAcid.subunits);\n } else if (this.privateSubstance.substanceClass === 'mixture') {\n this.substanceSubunitsEmitter.next(this.privateSubstance.mixture.components);\n }\n this.substanceChangeReasonEmitter.next(this.privateSubstance.changeReason);\n this.substanceService.getSubstanceDetails(results.uuid).subscribe(resp => {\n this.privateSubstance = resp;\n this.resetState();\n this.substanceEmitter.next(this.privateSubstance);\n observer.next(results);\n observer.complete();\n }, error => {\n observer.next(results);\n observer.complete();\n });\n }, error => {\n results.isSuccessfull = false;\n if (error && error.error && error.error.validationMessages) {\n results.validationMessages = error.error.validationMessages;\n } else {\n results.serverError = error;\n }\n observer.error(results);\n observer.complete();\n });\n });\n }\n\n cleanSubstance(): SubstanceDetail {\n if (this.privateSubstance.structurallyDiverse) {\n if (this.privateSubstance.structurallyDiverse.$$diverseType) {\n delete this.privateSubstance.structurallyDiverse.$$diverseType;\n }\n if (this.privateSubstance.structurallyDiverse.$$storedPart) {\n delete this.privateSubstance.structurallyDiverse.$$storedPart;\n }\n\n const toclean = ['organismFamily', 'organismGenus', 'organismSpecies', 'organismAuthor', 'infraSpecificName', 'infraSpecificType', 'fractionMaterialType', 'fractionName', 'developmentalStage'];\n toclean.forEach( field => {\n if (this.privateSubstance.structurallyDiverse[field] && this.privateSubstance.structurallyDiverse[field] !== null &&\n this.privateSubstance.structurallyDiverse[field] !== '') {\n this.privateSubstance.structurallyDiverse[field] = this.privateSubstance.structurallyDiverse[field].trim();\n }\n });\n }\n /*\n if (this.privateSubstance.nucleicAcid) {\n if (this.privateSubstance.nucleicAcid.sugars) {\n this.privateSubstance.nucleicAcid.sugars.forEach((sugar, index) => {\n if (sugar.sites.length === 0) {\n this.privateSubstance.nucleicAcid.sugars.splice(index, 1);\n }\n });\n }\n if (this.privateSubstance.nucleicAcid.linkages) {\n this.privateSubstance.nucleicAcid.linkages.forEach((linkage, index) => {\n if (linkage.sites.length === 0) {\n this.privateSubstance.nucleicAcid.linkages.splice(index, 1);\n }\n });\n }\n }\n */\n\n /*the substance API call for view=internal vs the usual 'view=full' adds some properties that should not be submitted\n and can cause errors upon submission. the view change was to allow the stdName property to be visible to the forms*/\n if (this.privateSubstance.structure) {\n\n if ( this.privateSubstance.structure.properties) {\n delete this.privateSubstance.structure.properties;\n }\n if ( this.privateSubstance.structure.links) {\n delete this.privateSubstance.structure.links;\n }\n }\n if (this.privateSubstance.polymer && this.privateSubstance.polymer.displayStructure) {\n\n if ( this.privateSubstance.polymer.displayStructure.properties) {\n delete this.privateSubstance.polymer.displayStructure.properties;\n }\n if ( this.privateSubstance.polymer.displayStructure.links) {\n delete this.privateSubstance.polymer.displayStructure.links;\n }\n }\n if (this.privateSubstance.polymer && this.privateSubstance.polymer.idealizedStructure) {\n\n if ( this.privateSubstance.polymer.idealizedStructure.properties) {\n delete this.privateSubstance.polymer.idealizedStructure.properties;\n }\n if ( this.privateSubstance.polymer.idealizedStructure.links) {\n delete this.privateSubstance.polymer.idealizedStructure.links;\n }\n }\n\n if (this.privateSubstance.moieties) {\n this.privateSubstance.moieties.forEach(moiety => {\n if (moiety.properties) {\n delete moiety.properties;\n }\n if (moiety.links) {\n delete moiety.links;\n }\n });\n }\n\n if (this.privateSubstance.protein && this.privateSubstance.protein.disulfideLinks\n && this.privateSubstance.protein.disulfideLinks.length > 0) {\n for ( let i = this.privateSubstance.protein.disulfideLinks.length; i >= 0; i--) {\n if (this.privateSubstance.protein.disulfideLinks[i] && this.privateSubstance.protein.disulfideLinks[i].sites &&\n this.privateSubstance.protein.disulfideLinks[i].sites[0] && this.privateSubstance.protein.disulfideLinks[i].sites[1] &&\n Object.keys(this.privateSubstance.protein.disulfideLinks[i].sites[0]).length === 0 &&\n Object.keys(this.privateSubstance.protein.disulfideLinks[i].sites[1]).length === 0 ) {\n this.privateSubstance.protein.disulfideLinks.splice(i, 1);\n }\n }\n }\n // end view=internal changes\n\n let substanceString = JSON.stringify(this.privateSubstance);\n let substanceCopy: SubstanceDetail = JSON.parse(substanceString);\n\n const response = this.cleanObject(substanceCopy);\n const deletedUuids = response.deletedUuids;\n\n if (deletedUuids.length > 0) {\n substanceString = JSON.stringify(substanceCopy);\n\n deletedUuids.forEach(uuid => {\n substanceString = substanceString.replace(new RegExp(`\"${uuid}\"`, 'g'), '');\n });\n substanceString = substanceString.replace(/,[,]+/g, ',');\n substanceString = substanceString.replace(/\\[,/g, '[');\n substanceString = substanceString.replace(/,\\]/g, ']');\n substanceCopy = JSON.parse(substanceString);\n }\n\n return substanceCopy;\n }\n\n private cleanObject(substanceProperty: any, deletedUuids: Array = []): { deletedUuids: Array, isDeleted: boolean } {\n if (Object.prototype.toString.call(substanceProperty) === '[object Object]') {\n\n const hasDeleletedCode = substanceProperty.$$deletedCode != null;\n if (!hasDeleletedCode) {\n delete substanceProperty.$$deletedCode;\n Object.keys(substanceProperty).forEach(key => {\n if (Object.prototype.toString.call(substanceProperty[key]) === '[object Array]') {\n substanceProperty[key] = substanceProperty[key].filter(childProperty => {\n const response = this.cleanObject(childProperty, deletedUuids);\n return !response.isDeleted;\n });\n } else if (Object.prototype.toString.call(substanceProperty[key]) === '[object Object]') {\n this.cleanObject(substanceProperty[key], deletedUuids);\n }\n });\n } else if (substanceProperty.uuid != null) {\n deletedUuids.push(substanceProperty.uuid);\n }\n\n return {\n deletedUuids: deletedUuids,\n isDeleted: hasDeleletedCode\n };\n } else if (Object.prototype.toString.call(substanceProperty) === '[object Array]') {\n substanceProperty.forEach(childProperty => {\n this.cleanObject(childProperty, deletedUuids);\n });\n } else {\n return {\n deletedUuids: deletedUuids,\n isDeleted: false\n };\n }\n }\n}\n","
      \n
      \n \n \n     \n \n Save as JSON\n \n\n \n\n \n \n \n \n
      \n
      \n
      \n {{submissionMessage}}\n
      \n
      \n 0\">\n
      \n Please correct or dismiss the following errors and submit again:\n
      \n
      \n
      \n {{message.messageType}}
      \n
      {{message.message}}
      \n {{link.text}}
      \n
      \n \n
      \n
      \n
      \n \n \n \n \n
      \n
      \n
      \n
      \n\n
      \n
      \n {{(uuid && !imported) ? 'Editing ' : 'Registering New '}} -\n Specified Substance Group 4 Manufacturing\n \n
      \n
      \n\n
      \n
      \n
      \n \n -1\"\n *ngFor=\"let section of formSections; index as index; last as isLast\" [id]=\"section.dynamicComponentName\"\n [ngClass]=\"{'hidden': section.isHidden}\">\n \n \n

      {{section.menuLabel}}

      \n
      \n
      \n \n
      \n
      \n
      \n
      \n
      \n
      \n
      \n
      \n
      \n","import {\n Component,\n OnInit,\n AfterViewInit,\n ViewChildren,\n ViewContainerRef,\n QueryList,\n OnDestroy, HostListener\n} from '@angular/core';\nimport { ActivatedRoute, Router, RouterEvent, NavigationStart, NavigationEnd } from '@angular/router';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { MatExpansionPanel } from '@angular/material/expansion';\nimport { MatDialog } from '@angular/material/dialog';\nimport { take, map } from 'rxjs/operators';\nimport { Subscription, Observable } from 'rxjs';\nimport * as _ from 'lodash';\nimport * as moment from 'moment';\nimport * as defiant from '../../../../node_modules/defiant.js/dist/defiant.min.js';\nimport { Title } from '@angular/platform-browser';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\n// GSRS Import\nimport { GoogleAnalyticsService } from '../google-analytics/google-analytics.service';\nimport { DynamicComponentLoader } from '../dynamic-component-loader/dynamic-component-loader.service';\nimport { formSections } from '../substance-form/form-sections.constant';\nimport { SubstanceFormSection } from '../substance-form/substance-form-section';\nimport { MainNotificationService } from '../main-notification/main-notification.service';\nimport { AuthService } from '@gsrs-core/auth';\nimport { LoadingService } from '../loading/loading.service';\nimport { SubstanceService } from '../substance/substance.service';\nimport { SubstanceFormService } from '../substance-form/substance-form.service';\nimport { AppNotification, NotificationType } from '../main-notification/notification.model';\nimport { ValidationResults } from '../substance-form/substance-form.model';\nimport { SubstanceDetail } from '../substance/substance.model';\nimport { ValidationMessage, SubstanceFormResults, SubstanceFormDefinition } from '../substance-form/substance-form.model';\nimport { SubmitSuccessDialogComponent } from '../substance-form/submit-success-dialog/submit-success-dialog.component';\nimport { MergeConceptDialogComponent } from '@gsrs-core/substance-form/merge-concept-dialog/merge-concept-dialog.component';\nimport { DefinitionSwitchDialogComponent } from '@gsrs-core/substance-form/definition-switch-dialog/definition-switch-dialog.component';\nimport { SubstanceEditImportDialogComponent } from '@gsrs-core/substance-edit-import-dialog/substance-edit-import-dialog.component';\nimport { JsonDialogComponent } from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport { SubstanceSsg4mService } from './substance-ssg4m-form.service';\nimport { environment } from '@gsrs-core/../../environments/environment';\n\n@Component({\n selector: 'app-substance-ssg4m-form',\n templateUrl: './substance-ssg4m-form.component.html',\n styleUrls: ['./substance-ssg4m-form.component.scss']\n})\nexport class SubstanceSsg4ManufactureFormComponent implements OnInit, AfterViewInit, OnDestroy {\n isLoading = true;\n id?: string;\n formSections: Array = [];\n @ViewChildren('dynamicComponent', { read: ViewContainerRef }) dynamicComponents: QueryList;\n @ViewChildren('expansionPanel', { read: MatExpansionPanel }) matExpansionPanels: QueryList;\n private subClass: string;\n definitionType: string;\n expandedComponents = [\n 'substance-form-definition',\n 'substance-form-structure',\n 'substance-form-moieties'\n // 'substance-form-references'\n ];\n showSubmissionMessages = false;\n submissionMessage: string;\n validationMessages: Array;\n validationResult = false;\n private subscriptions: Array = [];\n copy: string;\n private overlayContainer: HTMLElement;\n serverError: boolean;\n canApprove: boolean;\n approving: boolean;\n definition: SubstanceFormDefinition;\n user: string;\n feature: string;\n isAdmin: boolean;\n isUpdater: boolean;\n messageField: string;\n uuid: string;\n substanceClass: string;\n status: string;\n classes = [\n 'concept',\n 'protein',\n 'chemical',\n 'structurallyDiverse',\n 'polymer',\n 'nucleicAcid',\n 'mixture',\n 'specifiedSubstanceG1',\n 'specifiedSubstanceG2',\n 'specifiedSubstanceG3',\n 'specifiedSubstanceG4m'];\n imported = false;\n forceChange = false;\n sameSubstance = false;\n UNII: string;\n json: SubstanceDetail;\n downloadJsonHref: any;\n jsonFileName: string;\n showHeaderBar = 'true';\n\n private jsLibScriptUrls = [\n `${environment.baseHref || ''}assets/pathway/cola.min.js`,\n `${environment.baseHref || ''}assets/pathway/d3v4.js`,\n `${environment.baseHref || ''}assets/pathway/pathwayviz.js`\n ];\n constructor(\n private activatedRoute: ActivatedRoute,\n private substanceService: SubstanceService,\n private loadingService: LoadingService,\n private mainNotificationService: MainNotificationService,\n private router: Router,\n private dynamicComponentLoader: DynamicComponentLoader,\n private gaService: GoogleAnalyticsService,\n private substanceSsg4mService: SubstanceSsg4mService,\n private substanceFormService: SubstanceFormService,\n private overlayContainerService: OverlayContainer,\n private dialog: MatDialog,\n private authService: AuthService,\n private titleService: Title,\n private sanitizer: DomSanitizer\n ) {\n }\n\n importDialog(): void {\n const dialogRef = this.dialog.open(SubstanceEditImportDialogComponent, {\n width: '650px',\n autoFocus: false\n\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe(response => {\n if (response) {\n this.loadingService.setLoading(true);\n this.overlayContainer.style.zIndex = null;\n\n // attempting to reload a substance without a router refresh has proven to cause issues with the relationship dropdowns\n // There are probably other components affected. There is an issue with subscriptions likely due to some OnInit not firing\n\n /* const read = JSON.parse(response);\n if (this.id && read.uuid && this.id === read.uuid) {\n this.substanceFormService.importSubstance(read, 'update');\n this.submissionMessage = null;\n this.validationMessages = [];\n this.showSubmissionMessages = false;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n } else {\n if ( read.substanceClass === this.substanceClass) {\n this.imported = true;\n this.substanceFormService.importSubstance(read);\n this.submissionMessage = null;\n this.validationMessages = [];\n this.showSubmissionMessages = false;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n } else {*/\n setTimeout(() => {\n this.router.onSameUrlNavigation = 'reload';\n this.loadingService.setLoading(false);\n this.router.navigateByUrl('/substances-ssg4m/register?action=import&header=' + this.showHeaderBar, { state: { record: response } });\n\n }, 1000);\n }\n // }\n // }\n });\n\n }\n\n test() {\n this.router.navigated = false;\n this.router.navigate([this.router.url]);\n }\n\n ngOnInit() {\n this.showHeaderBar = this.activatedRoute.snapshot.queryParams['header'] || 'true';\n this.loadingService.setLoading(true);\n this.isAdmin = this.authService.hasRoles('admin');\n this.isUpdater = this.authService.hasAnyRoles('Updater', 'SuperUpdater');\n this.overlayContainer = this.overlayContainerService.getContainerElement();\n this.imported = false;\n const routeSubscription = this.activatedRoute\n .params\n .subscribe(params => {\n if (params['id']) {\n const id = params['id'];\n if (id !== this.id) {\n this.id = id;\n this.gaService.sendPageView(`Substance Edit`);\n const newType = this.activatedRoute.snapshot.queryParamMap.get('switch') || null;\n if (newType) {\n this.getSubstanceDetails(newType);\n } else {\n this.getSubstanceDetails();\n }\n }\n } else {\n const action = this.activatedRoute.snapshot.queryParams['action'] || null;\n if (action && action === 'import' && window.history.state) {\n const record = window.history.state;\n this.imported = true;\n this.getDetailsFromImport(record.record);\n this.gaService.sendPageView(`Substance Register`);\n } else {\n this.copy = this.activatedRoute.snapshot.queryParams['copy'] || null;\n if (this.copy) {\n const copyType = this.activatedRoute.snapshot.queryParams['copyType'] || null;\n this.getPartialSubstanceDetails(this.copy, copyType);\n this.gaService.sendPageView(`Substance Register`);\n } else {\n setTimeout(() => {\n this.gaService.sendPageView(`Substance Register`);\n this.subClass = this.activatedRoute.snapshot.params['type'] || 'specifiedSubstanceG4m';\n this.substanceClass = this.subClass;\n this.titleService.setTitle('Register - Specified Substance Group 4 Manufacturing');\n this.substanceFormService.loadSubstance(this.subClass).pipe(take(1)).subscribe(() => {\n // this.substanceSsg4mService.loadSubstance(this.subClass).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[this.subClass]);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n });\n }\n }\n }\n });\n this.subscriptions.push(routeSubscription);\n const routerSubscription = this.router.events.subscribe((event: RouterEvent) => {\n if (event instanceof NavigationStart) {\n this.substanceSsg4mService.unloadSubstance();\n }\n });\n this.subscriptions.push(routerSubscription);\n this.approving = false;\n /* // Commenting this out\n const definitionSubscription = this.substanceSsg4mService.definition.subscribe(response => {\n this.definition = response;\n setTimeout(() => {\n this.canApprove = this.canBeApproved();\n });\n });\n this.subscriptions.push(definitionSubscription);\n */\n this.authService.getAuth().pipe(take(1)).subscribe(auth => {\n this.user = auth.identifier;\n setTimeout(() => {\n this.canApprove = this.canBeApproved();\n });\n });\n if (!window['schemeUtil']) {\n for (let i = 0; i < this.jsLibScriptUrls.length; i++) {\n const node = document.createElement('script');\n node.src = this.jsLibScriptUrls[i];\n node.type = 'text/javascript';\n node.async = false;\n document.getElementsByTagName('head')[0].appendChild(node);\n }\n }\n }\n\n ngAfterViewInit(): void {\n const subscription = this.dynamicComponents.changes\n .subscribe(() => {\n\n const total = this.formSections.length;\n let finished = 0;\n if (!this.forceChange) {\n this.loadingService.setLoading(true);\n const startTime = new Date();\n this.dynamicComponents.forEach((cRef, index) => {\n this.dynamicComponentLoader\n .getComponentFactory(this.formSections[index].dynamicComponentName)\n .subscribe(componentFactory => {\n this.loadingService.setLoading(true);\n this.formSections[index].dynamicComponentRef = cRef.createComponent(componentFactory);\n this.formSections[index].matExpansionPanel = this.matExpansionPanels.find((item, panelIndex) => index === panelIndex);\n this.formSections[index].dynamicComponentRef.instance.menuLabelUpdate.pipe(take(1)).subscribe(label => {\n this.formSections[index].menuLabel = label;\n });\n const hiddenStateSubscription =\n this.formSections[index].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(isHidden => {\n this.formSections[index].isHidden = isHidden;\n });\n this.subscriptions.push(hiddenStateSubscription);\n this.formSections[index].dynamicComponentRef.instance.canAddItemUpdate.pipe(take(1)).subscribe(isList => {\n this.formSections[index].canAddItem = isList;\n if (isList) {\n const aieSubscription = this.formSections[index].addItemEmitter.subscribe(() => {\n this.formSections[index].matExpansionPanel.open();\n this.formSections[index].dynamicComponentRef.instance.addItem();\n });\n this.formSections[index].dynamicComponentRef.instance.componentDestroyed.pipe(take(1)).subscribe(() => {\n aieSubscription.unsubscribe();\n });\n }\n });\n this.formSections[index].dynamicComponentRef.changeDetectorRef.detectChanges();\n finished++;\n if (finished >= total) {\n this.loadingService.setLoading(false);\n } else {\n const currentTime = new Date();\n if (currentTime.getTime() - startTime.getTime() > 12000) {\n if (confirm('There was a network error while fetching files, would you like to refresh?')) {\n window.location.reload();\n }\n }\n }\n setTimeout(() => {\n this.loadingService.setLoading(false);\n // this.UNII = this.substanceSsg4mService.getUNII();\n }, 5);\n });\n });\n // this.loadingService.setLoading(false);\n\n }\n subscription.unsubscribe();\n });\n }\n\n openedChange(event: any) {\n if (event) {\n this.overlayContainer.style.zIndex = '1002';\n } else {\n this.overlayContainer.style.zIndex = '1000';\n }\n }\n\n /*\n useFeature(feature: any): void {\n this.feature = feature.value;\n if (this.feature === 'glyco') {\n this.glyco();\n } else if (this.feature === 'disulfide') {\n this.disulfide();\n } if (this.feature === 'concept') {\n this.concept();\n } if (this.feature === 'unapprove') {\n if (confirm('Are you sure you\\'d like to remove the approvalID?')) {\n this.substanceFormService.unapproveRecord();\n }\n this.feature = undefined;\n }\n if (this.feature === 'setPrivate') {\n this.substanceFormService.setDefinitionPrivate();\n this.feature = undefined;\n }\n if (this.feature === 'setPublic') {\n this.substanceFormService.setDefinitionPublic();\n this.feature = undefined;\n }\n if (this.feature === 'approved') {\n this.substanceFormService.changeStatus('approved');\n this.feature = undefined;\n }\n if (this.feature === 'pending') {\n this.substanceFormService.changeStatus('pending');\n this.feature = undefined;\n }\n if (this.feature === 'merge') {\n this.mergeConcept();\n this.feature = undefined;\n }\n if (this.feature === 'switch') {\n this.definitionSwitch();\n this.feature = undefined;\n }\n if (this.feature === 'changeApproval') {\n this.substanceFormService.changeApproval();\n }\n\n }\n\n changeClass(type: any): void {\n this.router.navigate(['/substances', this.id, 'edit'], { queryParams: { switch: type.value } });\n this.feature = undefined;\n }\n\n changeStatus(status: any): void {\n this.substanceFormService.changeStatus(status);\n this.feature = undefined;\n }\n\n concept(): void {\n this.substanceFormService.conceptNonApproved();\n this.feature = undefined;\n }\n\n glyco(): void {\n this.substanceFormService.predictSites();\n this.feature = undefined;\n }\n\n disulfide(): void {\n this.substanceFormService.disulfideLinks();\n this.feature = undefined;\n }\n */\n\n ngOnDestroy(): void {\n // this.substanceFormService.unloadSubstance();\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n\n canBeApproved(): boolean {\n const action = this.activatedRoute.snapshot.queryParams['action'] || null;\n if (action && action === 'import') {\n return false;\n }\n if (this.definition && this.definition.lastEditedBy && this.user) {\n const lastEdit = this.definition.lastEditedBy;\n if (!lastEdit) {\n return false;\n }\n if (this.definition.status === 'approved') {\n return false;\n }\n if (lastEdit === this.user) {\n return false;\n }\n return true;\n\n }\n return false;\n }\n\n showJSON(): void {\n const dialogRef = this.dialog.open(JsonDialogComponent, {\n width: '90%'\n });\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe(response => {\n\n });\n this.subscriptions.push(dialogSubscription);\n }\n\n saveJSON(): void {\n // apply the same cleaning to remove deleted objects and return what will be sent to the server on validation / submission\n this.json = this.substanceFormService.cleanSubstance();\n // this.json = this.cleanObject(substanceCopy);\n const uri = this.sanitizer.bypassSecurityTrustUrl('data:text/json;charset=UTF-8,' + encodeURIComponent(JSON.stringify(this.json)));\n this.downloadJsonHref = uri;\n\n const date = new Date();\n this.jsonFileName = 'SSG4m_' + moment(date).format('MMM-DD-YYYY_H-mm-ss');\n}\n\ngetSubstanceDetails(newType ?: string): void {\n this.substanceService.getSubstanceDetails(this.id).pipe(take(1)).subscribe(response => {\n if (response._name) {\n this.titleService.setTitle('Edit - ' + response._name);\n }\n if (response) {\n this.definitionType = response.definitionType;\n // if (newType) {\n // response = this.substanceSsg4mService.switchType(response, newType);\n // }\n this.substanceClass = response.substanceClass;\n this.status = response.status;\n this.substanceSsg4mService.loadSubstance(response.substanceClass, response).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[response.substanceClass]);\n });\n } else {\n this.handleSubstanceRetrivalError();\n }\n this.loadingService.setLoading(false);\n this.isLoading = false;\n }, error => {\n this.gaService.sendException('getSubstanceDetails: error from API call');\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.handleSubstanceRetrivalError();\n });\n}\n\njsonValid(file: any): boolean {\n try {\n JSON.parse(file);\n } catch (e) {\n return false;\n }\n return true;\n}\n\ngetDetailsFromImport(state: any, same ?: boolean) {\n if (state && this.jsonValid(state)) {\n const response = JSON.parse(state);\n same = false;\n this.definitionType = response.definitionType;\n this.substanceClass = response.substanceClass;\n this.status = response.status;\n this.substanceFormService.loadSubstance(response.substanceClass, response, 'import').pipe(take(1)).subscribe(() => {\n // this.substanceSsg4mService.loadSubstance(response.substanceClass, response, 'import').pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[response.substanceClass]);\n if (!same) {\n setTimeout(() => {\n this.forceChange = true;\n this.dynamicComponents.forEach((cRef, index) => {\n this.dynamicComponentLoader\n .getComponentFactory(this.formSections[index].dynamicComponentName)\n .subscribe(componentFactory => {\n this.formSections[index].dynamicComponentRef = cRef.createComponent(componentFactory);\n this.formSections[index].matExpansionPanel = this.matExpansionPanels.find((item, panelIndex) => index === panelIndex);\n this.formSections[index].dynamicComponentRef.instance.menuLabelUpdate.pipe(take(1)).subscribe(label => {\n this.formSections[index].menuLabel = label;\n });\n const hiddenStateSubscription =\n this.formSections[index].dynamicComponentRef.instance.hiddenStateUpdate.subscribe(isHidden => {\n this.formSections[index].isHidden = isHidden;\n });\n this.subscriptions.push(hiddenStateSubscription);\n this.formSections[index].dynamicComponentRef.instance.canAddItemUpdate.pipe(take(1)).subscribe(isList => {\n this.formSections[index].canAddItem = isList;\n if (isList) {\n const aieSubscription = this.formSections[index].addItemEmitter.subscribe(() => {\n this.formSections[index].matExpansionPanel.open();\n this.formSections[index].dynamicComponentRef.instance.addItem();\n });\n this.formSections[index].dynamicComponentRef.instance.componentDestroyed.pipe(take(1)).subscribe(() => {\n aieSubscription.unsubscribe();\n });\n }\n });\n this.formSections[index].dynamicComponentRef.changeDetectorRef.detectChanges();\n });\n });\n\n this.canApprove = false;\n });\n }\n }, error => {\n this.loadingService.setLoading(false);\n });\n } else {\n this.handleSubstanceRetrivalError();\n this.loadingService.setLoading(false);\n\n }\n this.loadingService.setLoading(false);\n this.isLoading = false;\n}\n\ngetPartialSubstanceDetails(uuid: string, type: string): void {\n this.substanceService.getSubstanceDetails(uuid).pipe(take(1)).subscribe(response => {\n if (response) {\n this.substanceClass = response.substanceClass;\n this.status = response.status;\n delete response.uuid;\n if (response._name) {\n delete response._name;\n }\n this.scrub(response, type);\n this.substanceSsg4mService.loadSubstance(response.substanceClass, response).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections[response.substanceClass]);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n } else {\n this.handleSubstanceRetrivalError();\n }\n }, error => {\n this.gaService.sendException('getSubstanceDetails: error from API call');\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.handleSubstanceRetrivalError();\n });\n}\n\n\n private setFormSections(sectionNames: Array < string > =[]): void {\n this.formSections = [];\n sectionNames.forEach(sectionName => {\n const formSection = new SubstanceFormSection(sectionName);\n /* if (!this.definitionType || !(this.definitionType === 'ALTERNATIVE' &&\n (formSection.dynamicComponentName === 'substance-form-names'\n || formSection.dynamicComponentName === 'substance-form-codes-card'))) {\n } */\n this.formSections.push(formSection);\n });\n}\n\n private handleSubstanceRetrivalError() {\n const notification: AppNotification = {\n message: 'The substance you\\'re trying to edit doesn\\'t exist.',\n type: NotificationType.error,\n milisecondsToShow: 4000\n };\n this.mainNotificationService.setNotification(notification);\n setTimeout(() => {\n this.router.navigate(['/substances/register']);\n this.substanceSsg4mService.loadSubstance(this.subClass).pipe(take(1)).subscribe(() => {\n this.setFormSections(formSections.chemical);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n }, 5000);\n}\n\nvalidate(validationType ?: string): void {\n if(validationType && validationType === 'approval') {\n this.approving = true;\n} else {\n this.approving = false;\n}\nthis.isLoading = true;\nthis.serverError = false;\nthis.loadingService.setLoading(true);\n /*\n this.substanceSsg4mService.validateSubstance().pipe(take(1)).subscribe(results => {\n this.submissionMessage = null;\n this.validationMessages = results.validationMessages.filter(\n message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.validationResult = results.valid;\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n if (this.validationMessages.length === 0 && results.valid === true) {\n this.submissionMessage = 'Substance is Valid. Would you like to submit?';\n }\n if (validationType && validationType === 'approval') {\n this.submissionMessage = 'Are you sure you\\'d like to approve this substance?';\n }\n }, error => {\n this.addServerError(error);\n this.loadingService.setLoading(false);\n this.isLoading = false;\n });\n */\n }\n\n/*\napprove(): void {\n this.isLoading = true;\n this.loadingService.setLoading(true);\n this.substanceSsg4mService.approveSubstance().pipe(take(1)).subscribe(response => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.validationMessages = null;\n this.openSuccessDialog('approve');\n this.submissionMessage = 'Substance was approved successfully';\n this.showSubmissionMessages = true;\n this.validationResult = false;\n },\n (error: SubstanceFormResults) => {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.submissionMessage = 'Substance Could not be approved';\n this.addServerError(error.serverError);\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = null;\n }, 10000);\n }\n );\n}\n*/\n\nvalidateSubstance(): Observable < ValidationResults > {\n return new Observable(observer => {\n // const substanceCopy = this.cleanSubstance();\n // CHANGING THIS NOW CHANGING THIS NOW\n const substanceCopy = null;\n this.substanceService.validateSubstance(substanceCopy).subscribe(results => {\n // check for missing required reference fields and append a validationMessage\n if (results.validationMessages) {\n for (let i = 0; i < substanceCopy.references.length; i++) {\n const ref = substanceCopy.references[i];\n if (ref.docType !== 'SYSTEM') {\n if ((!ref.citation || ref.citation === '') || (!ref.docType || ref.docType === '')) {\n const invalidReferenceMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'All references require a non-empty source type and text/citation value',\n messageType: 'WARNING',\n suggestedChange: true\n };\n results.validationMessages.push(invalidReferenceMessage);\n break;\n }\n }\n }\n if (substanceCopy.properties) {\n for (let i = 0; i < substanceCopy.properties.length; i++) {\n const prop = substanceCopy.properties[i];\n if (!prop.propertyType || !prop.name) {\n const invalidPropertyMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Property #' + (i + 1) + ' requires a non-empty name and type',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidPropertyMessage);\n results.valid = false;\n }\n }\n }\n if (substanceCopy.relationships) {\n for (let i = 0; i < substanceCopy.relationships.length; i++) {\n const relationship = substanceCopy.relationships[i];\n if (!relationship.relatedSubstance || !relationship.type || relationship.type === '') {\n const invalidRelationshipMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Relationship #' + (i + 1) + ' requires a non-empty related substance and type',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidRelationshipMessage);\n results.valid = false;\n }\n }\n }\n if (substanceCopy.polymer && substanceCopy.polymer.monomers) {\n for (let i = 0; i < substanceCopy.polymer.monomers.length; i++) {\n const prop = substanceCopy.polymer.monomers[i];\n if (!prop.monomerSubstance || prop.monomerSubstance === {}) {\n const invalidPropertyMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Monomer #' + (i + 1) + ' requires a selected substance',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidPropertyMessage);\n results.valid = false;\n }\n }\n }\n if (substanceCopy.modifications && substanceCopy.modifications.physicalModifications) {\n for (let i = 0; i < substanceCopy.modifications.physicalModifications.length; i++) {\n const prop = substanceCopy.modifications.physicalModifications[i];\n let present = false;\n prop.parameters.forEach(param => {\n if (param.parameterName) {\n present = true;\n }\n });\n\n if (!prop.physicalModificationRole && !present) {\n const invalidPropertyMessage: ValidationMessage = {\n actionType: 'frontEnd',\n appliedChange: false,\n links: [],\n message: 'Physical Modification #' + (i + 1) + ' requires a modification role or valid parameter',\n messageType: 'ERROR',\n suggestedChange: true\n };\n results.validationMessages.push(invalidPropertyMessage);\n results.valid = false;\n }\n }\n }\n }\n observer.next(results);\n observer.complete();\n }, error => {\n observer.error();\n observer.complete();\n });\n });\n}\n\nsubmit(): void {\n this.isLoading = true;\n this.approving = false;\n this.loadingService.setLoading(true);\n this.substanceSsg4mService.saveSubstance().pipe(take(1)).subscribe(response => {\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.validationMessages = null;\n this.showSubmissionMessages = false;\n this.submissionMessage = '';\n if (!this.id) {\n this.id = response.uuid;\n }\n this.openSuccessDialog();\n }, (error: SubstanceFormResults) => {\n this.showSubmissionMessages = true;\n this.loadingService.setLoading(false);\n this.isLoading = false;\n this.submissionMessage = null;\n if (error.validationMessages && error.validationMessages.length) {\n this.validationResult = error.isSuccessfull;\n this.validationMessages = error.validationMessages\n .filter(message => message.messageType.toUpperCase() === 'ERROR' || message.messageType.toUpperCase() === 'WARNING');\n this.showSubmissionMessages = true;\n } else {\n this.submissionMessage = 'There was a problem with your submission';\n this.addServerError(error.serverError);\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = null;\n }, 8000);\n }\n });\n}\n\ndismissValidationMessage(index: number) {\n this.validationMessages.splice(index, 1);\n\n if (this.validationMessages.length === 0) {\n this.submissionMessage = 'Substance is Valid. Would you like to submit?';\n }\n}\n\naddServerError(error: any): void {\n this.serverError = true;\n this.validationResult = false;\n this.validationMessages = null;\n\n const message: ValidationMessage = {\n actionType: 'server failure',\n links: [],\n appliedChange: false,\n suggestedChange: false,\n messageType: 'ERROR',\n message: 'Unknown Server Error'\n };\n if(error && error.error && error.error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || ': ') + error.error.message;\n} else if (error && error.error && (typeof error.error) === 'string') {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.error;\n} else if (error && error.message) {\n message.message = 'Server Error ' + (error.status + ': ' || '') + error.message;\n}\nthis.validationMessages = [message];\nthis.showSubmissionMessages = true;\n }\n\ntoggleValidation(): void {\n this.showSubmissionMessages = !this.showSubmissionMessages;\n}\n\ndismissAllValidationMessages(): void {\n for(let i = this.validationMessages.length - 1; i >= 0; i--) {\n if (this.validationMessages[i].messageType !== 'ERROR') {\n this.validationMessages.splice(i, 1);\n }\n}\nif (this.validationMessages.length === 0) {\n this.submissionMessage = 'Substance is Valid. Would you like to submit?';\n}\n }\n\n@HostListener('window:beforeunload', ['$event'])\nunloadNotification($event: any) {\n if (this.substanceSsg4mService.isSubstanceUpdated) {\n $event.returnValue = true;\n }\n}\n\nscrub(oldraw: any, importType: string): any {\n function guid() {\n function s4() {\n return Math.floor((1 + Math.random()) * 0x10000)\n .toString(16)\n .substring(1);\n }\n return s4() + s4() + '-' + s4() + '-' + s4() + '-' +\n s4() + '-' + s4() + s4() + s4();\n }\n const old = oldraw;\n\n const idHolders = defiant.json.search(old, '//*[id]');\n const idMap = {};\n for (let i = 0; i < idHolders.length; i++) {\n const oid = idHolders[i].id;\n if (idMap[oid]) {\n idHolders[i].id = idMap[oid];\n } else {\n const nid = guid();\n idHolders[i].id = nid;\n idMap[oid] = nid;\n }\n }\n\n const uuidHolders = defiant.json.search(old, '//*[uuid]');\n const _map = {};\n for (let i = 0; i < uuidHolders.length; i++) {\n const ouuid = uuidHolders[i].uuid;\n if (_map[ouuid]) {\n uuidHolders[i].uuid = _map[ouuid];\n if (uuidHolders[i].id) {\n uuidHolders[i].id = _map[ouuid];\n }\n } else {\n const nid = guid();\n uuidHolders[i].uuid = nid;\n _map[ouuid] = nid;\n if (uuidHolders[i].id) {\n uuidHolders[i].id = nid;\n }\n }\n }\n const refHolders = defiant.json.search(old, '//*[references]');\n for (let i = 0; i < refHolders.length; i++) {\n const refs = refHolders[i].references;\n for (let j = 0; j < refs.length; j++) {\n const or = refs[j];\n if (typeof or === 'object') { continue; }\n refs[j] = _map[or];\n }\n }\n defiant.json.search(old, '//*[uuid]');\n _.remove(old.codes, {\n codeSystem: 'BDNUM'\n });\n const createHolders = defiant.json.search(old, '//*[created]');\n for (let i = 0; i < createHolders.length; i++) {\n const rec = createHolders[i];\n delete rec['created'];\n delete rec['createdBy'];\n delete rec['lastEdited'];\n delete rec['lastEditedBy'];\n }\n\n const originHolders = defiant.json.search(old, '//*[originatorUuid]');\n for (let i = 0; i < originHolders.length; i++) {\n const rec = originHolders[i];\n delete rec['originatorUuid'];\n }\n\n delete old.approvalID;\n delete old.approved;\n delete old.approvedBy;\n old.status = 'pending';\n if ((importType) && (importType === 'definition')) {\n old.names = [];\n old.codes = [];\n old.notes = [];\n old.relationships = [];\n old.tags = [];\n }\n delete old['createdBy'];\n delete old['created'];\n delete old['lastEdited'];\n delete old['lastEditedBy'];\n delete old['version'];\n delete old['$$update'];\n delete old['changeReason'];\n\n\n if (true) {\n const refSet = {};\n\n const refHolders2 = defiant.json.search(old, '//*[references]');\n for (let i = 0; i < refHolders2.length; i++) {\n const refs = refHolders2[i].references;\n for (let j = 0; j < refs.length; j++) {\n const or = refs[j];\n if (typeof or === 'object') { continue; }\n refSet[or] = true;\n }\n }\n\n const nrefs = _.chain(old.references)\n .filter(function (ref) {\n if (refSet[ref.uuid]) {\n return true;\n } else {\n return false;\n }\n })\n .value();\n\n old.references = nrefs;\n\n }\n\n return old;\n}\n\nopenSuccessDialog(type ?: string): void {\n const dialogRef = this.dialog.open(SubmitSuccessDialogComponent, {});\n this.overlayContainer.style.zIndex = '1002';\n\n const dialogSubscription = dialogRef.afterClosed().pipe(take(1)).subscribe((response?: 'continue' | 'browse' | 'view') => {\n\n this.substanceSsg4mService.bypassUpdateCheck();\n if (response === 'continue') {\n this.router.navigate(['/substances', this.id, 'edit']);\n } else if (response === 'browse') {\n this.router.navigate(['/browse-substance']);\n } else if (response === 'view') {\n this.router.navigate(['/substances', this.id]);\n } else {\n this.submissionMessage = 'Substance was saved successfully!';\n if (type && type === 'approve') {\n this.submissionMessage = 'Substance was approved successfully';\n }\n this.showSubmissionMessages = true;\n this.validationResult = false;\n setTimeout(() => {\n this.showSubmissionMessages = false;\n this.submissionMessage = '';\n this.router.navigate(['/substances', this.id, 'edit']);\n }, 3000);\n }\n });\n this.subscriptions.push(dialogSubscription);\n\n}\n\nmergeConcept() {\n this.feature = undefined;\n const dialogRef = this.dialog.open(MergeConceptDialogComponent, {\n width: '900px', data: { uuid: this.id }\n });\n this.overlayContainer.style.zIndex = '1002';\n}\n\ndefinitionSwitch() {\n this.feature = undefined;\n const dialogRef = this.dialog.open(DefinitionSwitchDialogComponent, {\n width: '900px', data: { uuid: this.id }, autoFocus: false\n });\n this.overlayContainer.style.zIndex = '1000';\n}\n\nfixLink(link: string) {\n return this.substanceService.oldLinkFix(link);\n}\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { PageNotFoundComponent } from './page-not-found/page-not-found.component';\nimport { BaseComponent } from './base/base.component';\nimport { HomeComponent } from './home/home.component';\nimport { RegistrarsComponent } from './registrars/registrars.component';\nimport { SubstancesBrowseComponent } from './substances-browse/substances-browse.component';\nimport { StructureSearchComponent } from './structure-search/structure-search.component';\nimport { SubstanceDetailsComponent } from './substance-details/substance-details.component';\nimport { SequenceSearchComponent } from './sequence-search/sequence-search.component';\nimport { LoginComponent } from './auth/login/login.component';\nimport { SubstanceFormComponent } from './substance-form/substance-form.component';\nimport { CanActivateSubstanceForm } from './substance-form/can-activate-substance-form';\nimport {CanRegisterSubstanceForm} from '@gsrs-core/substance-form/can-register-substance-form';\nimport { CanDeactivateSubstanceFormGuard } from './substance-form/can-deactivate-substance-form.guard';\nimport { GuidedSearchComponent } from './guided-search/guided-search.component';\nimport { AdminComponent } from '@gsrs-core/admin/admin.component';\nimport { UserProfileComponent } from '@gsrs-core/auth/user-profile/user-profile.component';\nimport { UserDownloadsComponent } from '@gsrs-core/auth/user-downloads/user-downloads.component';\nimport { MonitorComponent } from '@gsrs-core/admin/monitor/monitor.component';\nimport { CanActivateAdmin } from '@gsrs-core/admin/can-activate-admin';\nimport { CanActivateAdminPage } from './admin/can-activate-admin-page';\nimport { UnauthorizedComponent } from '@gsrs-core/unauthorized/unauthorized.component';\nimport { SubstanceSsg4ManufactureFormComponent } from './substance-ssg4m/substance-ssg4m-form.component';\n\nconst childRoutes: Routes = [\n {\n path: '',\n component: HomeComponent\n },\n {\n path: 'home',\n component: HomeComponent\n },\n {\n path: 'unauthorized',\n component: UnauthorizedComponent\n },\n {\n path: 'browse-substance',\n component: SubstancesBrowseComponent\n },\n {\n path: 'registrars',\n component: RegistrarsComponent,\n },\n {\n path: 'substances/register',\n component: SubstanceFormComponent,\n canActivate: [CanRegisterSubstanceForm],\n canDeactivate: [CanDeactivateSubstanceFormGuard]\n },\n {\n path: 'substances/register/:type',\n component: SubstanceFormComponent,\n canActivate: [CanRegisterSubstanceForm],\n canDeactivate: [CanDeactivateSubstanceFormGuard]\n },\n {\n path: 'substances/:id',\n component: SubstanceDetailsComponent\n },\n {\n path: 'substances/:id/v/:version',\n component: SubstanceDetailsComponent\n },\n {\n path: 'structure-search',\n component: StructureSearchComponent\n },\n {\n path: 'guided-search',\n component: GuidedSearchComponent\n },\n {\n path: 'sequence-search',\n component: SequenceSearchComponent\n },\n {\n path: 'login',\n component: LoginComponent\n },\n {\n path: 'substances/:id/edit',\n component: SubstanceFormComponent,\n canActivate: [CanActivateSubstanceForm],\n canDeactivate: [CanDeactivateSubstanceFormGuard]\n },\n {\n path: 'admin',\n component: AdminComponent,\n canActivate: [CanActivateAdmin]\n\n },\n {\n path: 'admin/:function',\n component: AdminComponent,\n canActivate: [CanActivateAdmin]\n\n },\n {\n path: 'monitor/:id',\n component: MonitorComponent,\n canActivate: [CanActivateAdmin]\n },\n {\n path: 'profile',\n component: UserProfileComponent\n },\n {\n path: 'user-downloads',\n component: UserDownloadsComponent\n },\n {\n path: 'user-downloads/:id',\n component: UserDownloadsComponent\n },\n {\n path: 'substances-ssg4m/register',\n component: SubstanceSsg4ManufactureFormComponent\n // canActivate: [CanRegisterSubstanceForm],\n // canDeactivate: [CanDeactivateSubstanceFormGuard]\n },\n];\n\nconst routes: Routes = [\n {\n path: '',\n children: childRoutes,\n component: BaseComponent\n },\n {\n path: '**',\n component: PageNotFoundComponent\n }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\nexport class AppRoutingModule { }\n","import {Component, OnInit} from '@angular/core';\r\nimport {DomSanitizer, Title} from '@angular/platform-browser';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { GoogleAnalyticsService } from './google-analytics/google-analytics.service';\r\nimport {Router, NavigationStart} from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent {\r\n constructor(\r\n iconRegistry: MatIconRegistry, sanitizer: DomSanitizer,\r\n private title: Title,\r\n private router: Router,\r\n private googleAnalyticsService: GoogleAnalyticsService\r\n ) {\r\n router.events.subscribe((event) => {\r\n title.setTitle('GSRS');\r\n });\r\n iconRegistry.addSvgIcon(\r\n 'chevron_right',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-chevron_right-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'search',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-search-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'subdirectory_arrow_right',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-subdirectory_arrow_right-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'list',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-list-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'view_stream',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-view_stream-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'menu',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-menu-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'close',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-close-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'delete_forever',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-delete_forever-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'edit',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-edit-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'zoom_in',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-zoom_in-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'chevron_down',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-keyboard_arrow_down-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'chevron_up',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-keyboard_arrow_up-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'drop_down',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-arrow_drop_down-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'drop_up',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-arrow_drop_up-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'done',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-done-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'link',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-link-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'get_app',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-get_app-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'account_circle',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-account_circle-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'find_replace',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-find_replace-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'not_interested',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-not_interested-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'spellcheck',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-spellcheck-24px.svg'));\r\n\r\n iconRegistry.addSvgIcon(\r\n 'view_module',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-view_module-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'lock_open',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-lock_open-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'lock',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-lock-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'open_in_new',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-open_in_new-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'cancel',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-cancel-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'add_circle_outline',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-add_circle_outline-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'remove_circle_outline',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-remove_circle_outline-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'arrow_downward',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-arrow_downward-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'cloud_upload',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-cloud_upload-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'cloud_download',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-cloud_download-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'attachment',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-attachment-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'undo',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-undo-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'move_to_inbox',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-move_to_inbox-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'clear',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-clear-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'settings_applications',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-settings_applications-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'file_copy',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-file_copy-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'outline-file_copy',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/outline-file_copy-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'outline-description',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/outline-description-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'local-pharmacy',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-local_pharmacy-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'insert-chart',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/outline-insert_chart-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'youtube',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-youtube_searched_for-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'find-in-page',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/outline-find_in_page-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'note',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/outline-note-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'pageview',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/outline-pageview-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'brush',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/outline-brush-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'alarm-on',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-alarm_on-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'view-list',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-view_list-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'glasses',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-glasses-24px.svg'));\r\n iconRegistry.addSvgIcon(\r\n 'paste',\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/baseline-paste-24px.svg'));\r\n }\r\n\r\n}\r\n","\r\n","import { ConfigService } from './config.service';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n// eslint-disable-next-line ban-types\r\nexport function configServiceFactory(startupService: ConfigService): Function {\r\n return () => startupService.load(environment);\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MainNotificationService } from './main-notification.service';\r\nimport { MainNotificationComponent } from './main-notification/main-notification.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n MainNotificationComponent\r\n ],\r\n providers: [\r\n MainNotificationService\r\n ],\r\n exports: [\r\n MainNotificationComponent\r\n ]\r\n})\r\nexport class MainNotificationModule { }\r\n","import {\n LazyLoadedComponentManifest\n} from './dynamic-component-loader/dynamic-component-manifest';\n\nexport const dynamicComponentManifests: LazyLoadedComponentManifest[] = [\n {\n componentId: 'structure-details',\n path: 'structure-details',\n loadChildren: () => import('./substance-details/structure-details/structure-details.module')\n .then(m => m.StructureDetailsModule),\n },\n {\n componentId: 'substance-audit-info',\n path: 'substance-audit-info',\n loadChildren: () => import('./substance-details/substance-audit-info/substance-audit-info.module')\n .then(m => m.SubstanceAuditInfoModule),\n },\n {\n componentId: 'substance-codes',\n path: 'substance-codes',\n loadChildren: () => import('./substance-details/substance-codes/substance-codes.module')\n .then(m => m.SubstanceCodesModule),\n },\n {\n componentId: 'substance-subunits',\n path: 'substance-subunits',\n loadChildren: () => import('./substance-details/substance-subunits/substance-subunits.module')\n .then(m => m.SubstanceSubunitsModule),\n },\n {\n componentId: 'substance-moieties',\n path: 'substance-moieties',\n loadChildren: () => import('./substance-details/substance-moieties/substance-moieties.module')\n .then(m => m.SubstanceMoietiesModule),\n },\n {\n componentId: 'substance-names',\n path: 'substance-names',\n loadChildren: () => import('./substance-details/substance-names/substance-names.module')\n .then(m => m.SubstanceNamesModule),\n },\n {\n componentId: 'substance-notes',\n path: 'substance-notes',\n loadChildren: () => import('./substance-details/substance-notes/substance-notes.module')\n .then(m => m.SubstanceNotesModule),\n },\n {\n componentId: 'substance-overview',\n path: 'substance-overview',\n loadChildren: () => import('./substance-details/substance-overview/substance-overview.module')\n .then(m => m.SubstanceOverviewModule),\n },\n {\n componentId: 'substance-references',\n path: 'substance-references',\n loadChildren: () => import('./substance-details/substance-references/substance-references.module')\n .then(m => m.SubstanceReferencesModule),\n },\n {\n componentId: 'substance-relationships-visualization',\n path: 'substance-relationships-visualization',\n loadChildren: () => import('./substance-details/substance-relationships-visualization/substance-relationships-visualization.module')\n .then(m => m.SubstanceRelationshipsVisualizationModule),\n },\n {\n componentId: 'substance-relationships',\n path: 'substance-relationships',\n loadChildren: () => import('./substance-details/substance-relationships/substance-relationships.module')\n .then(m => m.SubstanceRelationshipsModule),\n },\n {\n componentId: 'substance-concept-definition',\n path: 'substance-concept-definition',\n loadChildren: () => import('./substance-details/substance-concept-definition/substance-concept-definition.module')\n .then(m => m.SubstanceConceptDefinitionModule),\n },\n {\n componentId: 'substance-polymer-structure',\n path: 'substance-polymer-structure',\n loadChildren: () => import('./substance-details/substance-polymer-structure/substance-polymer-structure.module')\n .then(m => m.SubstancePolymerStructureModule),\n },\n {\n componentId: 'substance-monomers',\n path: 'substance-monomers',\n loadChildren: () => import('./substance-details/substance-monomers/substance-monomers.module')\n .then(m => m.SubstanceMonomersModule),\n },\n {\n componentId: 'substance-structural-units',\n path: 'substance-structural-units',\n loadChildren: () => import('./substance-details/substance-structural-units/substance-structural-units.module')\n .then(m => m.SubstanceStructuralUnitsModule),\n },\n {\n componentId: 'substance-mixture-components',\n path: 'substance-mixture-components',\n loadChildren: () => import('./substance-details/substance-mixture-components/substance-mixture-components.module')\n .then(m => m.SubstanceMixtureComponentsModule),\n },\n {\n componentId: 'substance-modifications',\n path: 'substance-modifications',\n loadChildren: () => import('./substance-details/substance-modifications/substance-modifications.module')\n .then(m => m.SubstanceModificationsModule),\n },\n {\n componentId: 'substance-disulfide-links',\n path: 'substance-disulfide-links',\n loadChildren: () => import('./substance-details/substance-disulfide-links/substance-disulfide-links.module')\n .then(m => m.SubstanceDisulfideLinksModule),\n },\n {\n componentId: 'substance-other-links',\n path: 'substance-other-links',\n loadChildren: () => import('./substance-details/substance-other-links/substance-other-links.module')\n .then(m => m.SubstanceOtherLinksModule),\n },\n {\n componentId: 'substance-glycosylation',\n path: 'substance-glycosylation',\n loadChildren: () => import('./substance-details/substance-glycosylation/substance-glycosylation.module')\n .then(m => m.SubstanceGlycosylationModule),\n },\n {\n componentId: 'substance-na-sugars',\n path: 'substance-na-sugars',\n loadChildren: () => import('./substance-details/substance-na-sugars/substance-na-sugars.module')\n .then(m => m.SubstanceNaSugarsModule),\n },\n {\n componentId: 'substance-na-linkages',\n path: 'substance-na-linkages',\n loadChildren: () => import('./substance-details/substance-na-linkages/substance-na-linkages.module')\n .then(m => m.SubstanceNaLinkagesModule),\n },\n {\n componentId: 'substance-properties',\n path: 'substance-properties',\n loadChildren: () => import('./substance-details/substance-properties/substance-properties.module')\n .then(m => m.SubstancePropertiesModule),\n },\n {\n componentId: 'substance-constituents',\n path: 'substance-constituents',\n loadChildren: () => import('./substance-details/substance-constituents/substance-constituents.module')\n .then(m => m.SubstanceConstituentsModule),\n },\n {\n componentId: 'substance-primary-definition',\n path: 'substance-primary-definition',\n loadChildren: () => import('./substance-details/substance-primary-definition/substance-primary-definition.module')\n .then(m => m.SubstancePrimaryDefinitionModule),\n },\n {\n componentId: 'substance-alternative-definition',\n path: 'substance-alternative-definition',\n loadChildren: () => import('./substance-details/substance-alternative-definition/substance-alternative-definition.module')\n .then(m => m.SubstanceAlternativeDefinitionModule),\n },\n {\n componentId: 'substance-variant-concepts',\n path: 'substance-variant-concepts',\n loadChildren: () => import('./substance-details/substance-variant-concepts/substance-variant-concepts.module')\n .then(m => m.SubstanceVariantConceptsModule),\n },\n {\n componentId: 'substance-mixture-source',\n path: 'substance-mixture-source',\n loadChildren: () => import('./substance-details/substance-mixture-source/substance-mixture-source.module')\n .then(m => m.SubstanceMixtureSourceModule),\n },\n {\n componentId: 'substance-mixture-parent',\n path: 'substance-mixture-parent',\n loadChildren: () => import('./substance-details/substance-mixture-parent/substance-mixture-parent.module')\n .then(m => m.SubstanceMixtureParentModule),\n },\n {\n componentId: 'substance-hierarchy',\n path: 'substance-hierarchy',\n loadChildren: () => import('./substance-details/substance-hierarchy/substance-hierarchy.module')\n .then(m => m.SubstanceHierarchyModule),\n },\n {\n componentId: 'substance-history',\n path: 'substance-history',\n loadChildren: () => import('./substance-details/substance-history/substance-history.module')\n .then(m => m.SubstanceHistoryModule),\n },\n {\n componentId: 'substance-ssg-parent-substance',\n path: 'substance-ssg-parent-substance',\n loadChildren: () => import('./substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.module')\n .then(m => m.SubstanceSsgParentSubstanceModule),\n },\n {\n componentId: 'substance-ssg1-parent',\n path: 'substance-ssg1-parent',\n loadChildren: () => import('./substance-details/substance-ssg1-parent/substance-ssg1-parent.module')\n .then(m => m.SubstanceSsg1ParentModule),\n },\n {\n componentId: 'substance-ssg-grade',\n path: 'substance-ssg-grade',\n loadChildren: () => import('./substance-details/substance-ssg-grade/substance-ssg-grade.module')\n .then(m => m.SubstanceSsgGradeModule),\n },\n {\n componentId: 'substance-ssg-definition',\n path: 'substance-ssg-definition',\n loadChildren: () => import('./substance-details/substance-ssg-definition/substance-ssg-definition.module')\n .then(m => m.SubstanceSsgDefinitionModule),\n },\n {\n componentId: 'substance-form-definition',\n path: 'substance-form-definition',\n loadChildren: () => import('./substance-form/substance-form-definition/substance-form-definition.module')\n .then(m => m.SubstanceFormDefinitionModule),\n },\n {\n componentId: 'substance-form-references',\n path: 'substance-form-references',\n loadChildren: () => import('./substance-form/references/substance-form-references.module')\n .then(m => m.SubstanceFormReferencesModule),\n },\n {\n componentId: 'substance-form-names',\n path: 'substance-form-names',\n loadChildren: () => import('./substance-form/names/substance-form-names.module')\n .then(m => m.SubstanceFormNamesModule),\n },\n {\n componentId: 'substance-form-structure',\n path: 'substance-form-structure',\n loadChildren: () => import('./substance-form/structure/substance-form-structure.module')\n .then(m => m.SubstanceFormStructureModule),\n },\n {\n componentId: 'substance-form-moieties',\n path: 'substance-form-moieties',\n loadChildren: () => import('./substance-form/moieties/substance-form-moieties.module')\n .then(m => m.SubstanceFormMoietiesModule),\n },\n {\n componentId: 'substance-form-codes-card',\n path: 'substance-form-codes-card',\n loadChildren: () => import('./substance-form/codes/substance-form-codes.module')\n .then(m => m.SubstanceFormCodesModule),\n },\n {\n componentId: 'substance-form-relationships',\n path: 'substance-form-relationships',\n loadChildren: () => import('./substance-form/relationships/substance-form-relationships.module')\n .then(m => m.SubstanceFormRelationshipsModule),\n },\n {\n componentId: 'substance-form-notes',\n path: 'substance-form-notes',\n loadChildren: () => import('./substance-form/notes/substance-form-notes.module')\n .then(m => m.SubstanceFormNotesModule),\n },\n {\n componentId: 'substance-form-properties',\n path: 'substance-form-properties',\n loadChildren: () => import('./substance-form/properties/substance-form-properties.module')\n .then(m => m.SubstanceFormPropertiesModule)\n },\n {\n componentId: 'substance-form-subunits',\n path: 'substance-form-subunits',\n loadChildren: () => import('./substance-form/substance-form-subunits/substance-form-subunits.module')\n .then(m => m.SubstanceFormSubunitsModule)\n },\n {\n componentId: 'substance-form-other-links',\n path: 'substance-form-other-links',\n loadChildren: () => import('./substance-form/other-links/substance-form-other-links.module')\n .then(m => m.SubstanceFormOtherLinksModule)\n },\n {\n componentId: 'substance-form-disulfide-links',\n path: 'substance-form-disulfide-links',\n loadChildren: () => import('./substance-form/disulfide-links/substance-form-disulfide-links.module')\n .then(m => m.SubstanceFormDisulfideLinksModule)\n },\n {\n componentId: 'substance-form-glycosylation',\n path: 'substance-form-glycosylation',\n loadChildren: () => import('./substance-form/glycosylation/substance-form-glycosylation.module')\n .then(m => m.SubstanceFormGlycosylationModule)\n },\n {\n componentId: 'substance-form-structural-modifications',\n path: 'substance-form-structural-modifications',\n loadChildren: () => import('./substance-form/structural-modifications/substance-form-structural-modifications.module')\n .then(m => m.SubstanceFormStructuralModificationsModule)\n },\n {\n componentId: 'substance-form-agent-modifications-card',\n path: 'substance-form-agent-modifications-card',\n loadChildren: () => import('./substance-form/agent-modifications/substance-form-agent-modifications.module')\n .then(m => m.SubstanceFormAgentModificationsModule)\n },\n {\n componentId: 'substance-form-physical-modifications',\n path: 'substance-form-physical-modifications',\n loadChildren: () => import('./substance-form/physical-modifications/substance-form-physical-modifications.module')\n .then(m => m.SubstanceFormPhysicalModificationsModule)\n },\n {\n componentId: 'substance-form-protein-details',\n path: 'substance-form-protein-details',\n loadChildren: () => import('./substance-form/protein-details/substance-form-protein-details.module')\n .then(m => m.SubstanceFormProteinDetailsModule)\n },\n {\n componentId: 'nucleic-acid-details-form',\n path: 'nucleic-acid-details-form',\n loadChildren: () => import('./substance-form/nucleic-acid-details-form/nucleic-acid-details-form.module')\n .then(m => m.NucleicAcidDetailsFormModule)\n },\n {\n componentId: 'substance-form-links',\n path: 'substance-form-links',\n loadChildren: () => import('./substance-form/links/substance-form-links.module')\n .then(m => m.SubstanceFormLinksModule)\n },\n {\n componentId: 'substance-form-sugars',\n path: 'substance-form-sugars',\n loadChildren: () => import('./substance-form/substance-form-sugars/substance-form-sugars.module')\n .then(m => m.SubstanceFormSugarsModule)\n },\n {\n componentId: 'substance-form-mixture-details',\n path: 'substance-form-mixture-details',\n loadChildren: () => import('./substance-form/mixture-details/substance-form-mixture-details.module')\n .then(m => m.SubstanceFormMixtureDetailsModule)\n },\n {\n componentId: 'substance-form-mixture-components',\n path: 'substance-form-mixture-components',\n loadChildren: () => import('./substance-form/mixture-components/substance-form-mixture-components.module')\n .then(m => m.SubstanceFormMixtureComponentsModule)\n },\n {\n componentId: 'substance-form-structurally-diverse-source',\n path: 'substance-form-structurally-diverse-source',\n loadChildren: () =>\n import('./substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.module')\n .then(m => m.SubstanceFormStructurallyDiverseSourceModule)\n },\n {\n componentId: 'substance-form-structurally-diverse-organism',\n path: 'substance-form-structurally-diverse-organism',\n loadChildren: () =>\n import('./substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.module')\n .then(m => m.SubstanceFormStructurallyDiverseOrganismModule)\n },\n {\n componentId: 'substance-form-constituents',\n path: 'substance-form-constituents',\n loadChildren: () => import('./substance-form/constituents/substance-form-constituents.module')\n .then(m => m.SubstanceFormConstituentsModule)\n },\n {\n componentId: 'substance-form-polymer-classification',\n path: 'substance-form-polymer-classification',\n loadChildren: () => import('./substance-form/polymer-classification/substance-form-polymer-classification.module')\n .then(m => m.SubstanceFormPolymerClassificationModule)\n },\n {\n componentId: 'substance-form-monomers',\n path: 'substance-form-monomers',\n loadChildren: () => import('./substance-form/monomers/substance-form-monomers.module')\n .then(m => m.SubstanceFormMonomersModule)\n },\n {\n componentId: 'substance-form-structural-units',\n path: 'substance-form-structural-units',\n loadChildren: () => import('./substance-form/structural-units/substance-form-structural-units.module')\n .then(m => m.SubstanceFormStructuralUnitsModule)\n },\n {\n componentId: 'substance-form-change-reason',\n path: 'substance-form-change-reason',\n loadChildren: () => import('./substance-form/substance-form-change-reason/substance-form-change-reason.module')\n .then(m => m.SubstanceFormChangeReasonModule),\n },\n {\n componentId: 'substance-form-ssg-parent-substance',\n path: 'ssg-parent-substance-form',\n loadChildren: () => import('./substance-form/ssg-parent-substance-form/ssg-parent-substance-form.module')\n .then(m => m.SsgParentSubstanceFormModule)\n },\n {\n componentId: 'substance-form-ssg-grade',\n path: 'ssg-grade-form',\n loadChildren: () => import('./substance-form/ssg-grade-form/ssg-grade-form.module')\n .then(m => m.SsgGradeFormModule)\n },\n {\n componentId: 'substance-form-ssg-definition',\n path: 'ssg-definition-form',\n loadChildren: () => import('./substance-form/ssg-definition-form/ssg-definition-form.module')\n .then(m => m.SsgDefinitionFormModule)\n },\n {\n componentId: 'substance-form-ssg4m-process',\n path: 'ssg4m-process-form',\n loadChildren: () => import('./substance-ssg4m/ssg4m-process/substance-form-ssg4m-process.module')\n .then(m => m.SubstanceSsg4mProcessModule)\n }\n];\n","import { NgModule } from '@angular/core';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { UserProfileComponent } from '@gsrs-core/auth/user-profile/user-profile.component';\r\nimport { DownloadMonitorComponent } from '@gsrs-core/auth/user-downloads/download-monitor/download-monitor.component';\r\nimport { UserDownloadsComponent } from '@gsrs-core/auth/user-downloads/user-downloads.component';\r\nimport {MatProgressSpinnerModule} from '@angular/material/progress-spinner';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport { RouterModule } from '@angular/router';\r\nimport { DecodeUriPipe } from '@gsrs-core/auth/user-downloads/download-monitor/decodeURI.pipe';\r\nimport { FileSizePipe } from '@gsrs-core/auth/user-downloads/download-monitor/fileSize.pipe';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatCardModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatTooltipModule,\r\n BrowserAnimationsModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n RouterModule,\r\n MatProgressSpinnerModule\r\n ],\r\n declarations: [\r\n LoginComponent,\r\n UserProfileComponent,\r\n UserDownloadsComponent,\r\n DownloadMonitorComponent,\r\n DecodeUriPipe,\r\n FileSizePipe\r\n ],\r\n exports: [\r\n LoginComponent,\r\n UserProfileComponent,\r\n DownloadMonitorComponent,\r\n UserDownloadsComponent\r\n ]\r\n})\r\nexport class AuthModule { }\r\n","import { Injectable, PLATFORM_ID, Inject } from '@angular/core';\r\nimport {\r\n HttpEvent, HttpInterceptor, HttpHandler, HttpRequest\r\n} from '@angular/common/http';\r\nimport { isPlatformBrowser } from '@angular/common';\r\n\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n\r\n constructor(@Inject(PLATFORM_ID) private platformId: any) {\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n if (isPlatformBrowser(this.platformId)) {\r\n const authToken = sessionStorage.getItem('authToken');\r\n if (authToken) {\r\n req = req.clone({\r\n headers: req.headers.set('auth-token', authToken)\r\n });\r\n }\r\n }\r\n\r\n return next.handle(req);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CvManagementComponent } from '@gsrs-core/admin/cv-management/cv-management.component';\n// eslint-disable-next-line max-len\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatCardModule} from '@angular/material/card';\nimport {MatCheckboxModule} from '@angular/material/checkbox';\nimport {MatTableModule} from '@angular/material/table';\nimport {MatSortModule} from '@angular/material/sort';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {MatTabsModule} from '@angular/material/tabs';\nimport {MatProgressSpinnerModule} from '@angular/material/progress-spinner';\nimport {MatDialogModule} from '@angular/material/dialog';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatSelectModule} from '@angular/material/select';\nimport {MatTreeModule} from '@angular/material/tree';\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { AdminComponent } from '@gsrs-core/admin/admin.component';\nimport { CvTermDialogComponent } from '@gsrs-core/admin/cv-management/cv-term-dialog/cv-term-dialog.component';\nimport { ScheduledJobsComponent } from '@gsrs-core/admin/scheduled-jobs/scheduled-jobs.component';\nimport { ScheduledJobComponent } from '@gsrs-core/admin/scheduled-jobs/scheduled-job/scheduled-job.component';\nimport { MomentModule } from 'ngx-moment';\nimport { UserManagementComponent } from '@gsrs-core/admin/user-management/user-management.component';\nimport { UserEditDialogComponent } from '@gsrs-core/admin/user-management/user-edit-dialog/user-edit-dialog.component';\nimport { CacheSummaryComponent } from '@gsrs-core/admin/cache-summary/cache-summary.component';\nimport { DataManagementComponent } from '@gsrs-core/admin/data-management/data-management.component';\nimport { MonitorComponent } from '@gsrs-core/admin/monitor/monitor.component';\nimport { CanActivateAdmin } from '@gsrs-core/admin/can-activate-admin';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { AllFilesComponent } from '@gsrs-core/admin/all-files/all-files.component';\nimport { FragmentWizardComponent } from '@gsrs-core/admin/fragment-wizard/fragment-wizard.component';\nimport { StructureEditorModule } from '@gsrs-core/structure-editor';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatCardModule,\n MatTableModule,\n MatFormFieldModule,\n MatInputModule,\n MatTabsModule,\n MatTooltipModule,\n BrowserAnimationsModule,\n MatTreeModule,\n MatProgressSpinnerModule,\n MatProgressBarModule,\n MatButtonModule,\n MatCheckboxModule,\n MatSelectModule,\n MatSortModule,\n MatTooltipModule,\n MatProgressSpinnerModule,\n MatDialogModule,\n MomentModule,\n MatPaginatorModule,\n MatIconModule,\n StructureEditorModule],\n declarations: [\n CvManagementComponent,\n ScheduledJobsComponent,\n AdminComponent,\n CvTermDialogComponent,\n ScheduledJobComponent,\n UserManagementComponent,\n UserEditDialogComponent,\n CacheSummaryComponent,\n DataManagementComponent,\n MonitorComponent,\n AllFilesComponent,\n FragmentWizardComponent\n ],\n exports: [\n CvManagementComponent,\n ScheduledJobsComponent,\n ScheduledJobComponent,\n AdminComponent,\n CvTermDialogComponent,\n UserEditDialogComponent,\n UserManagementComponent,\n CacheSummaryComponent,\n DataManagementComponent,\n MonitorComponent,\n AllFilesComponent,\n FragmentWizardComponent\n ],\n entryComponents: [\n CvTermDialogComponent,\n UserEditDialogComponent\n ],\n providers: [\n CanActivateAdmin\n ]\n})\nexport class AdminModule { }","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GuidedSearchComponent } from './guided-search.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { QueryStatementComponent } from './query-statement/query-statement.component';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\n\n@NgModule({\n declarations: [\n GuidedSearchComponent,\n QueryStatementComponent\n ],\n imports: [\n CommonModule,\n MatCardModule,\n MatAutocompleteModule,\n MatInputModule,\n FormsModule,\n ReactiveFormsModule,\n MatSelectModule,\n MatTooltipModule,\n MatButtonModule,\n MatIconModule,\n MatDatepickerModule,\n RouterModule\n ],\n exports: [\n GuidedSearchComponent\n ]\n})\nexport class GuidedSearchModule { }\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, NavigationExtras, UrlTree } from '@angular/router';\nimport { AuthService } from '../auth/auth.service';\nimport { Observable } from 'rxjs';\nimport {Role} from '@gsrs-core/auth/auth.model';\n\n@Injectable()\nexport class CanActivateAdminPage implements CanActivate {\n\n constructor(\n private router: Router,\n private authService: AuthService\n ) {}\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable | Promise | (boolean | UrlTree) {\n return new Observable(observer => {\n this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.authService.hasAnyRolesAsync('Admin').subscribe(response => {\n if (response) {\n observer.next(true);\n observer.complete();\n } else {\n observer.next(this.router.parseUrl('/admin'));\n observer.complete();\n }\n });\n } else {\n const navigationExtras: NavigationExtras = {\n queryParams: {\n path: state.url\n }\n };\n observer.next(this.router.createUrlTree(['/login'], navigationExtras));\n observer.complete();\n }\n });\n });\n }\n}\n","import { ErrorHandler, Injectable } from '@angular/core';\n\n@Injectable()\nexport class GlobalErrorHandler implements ErrorHandler {\n\n handleError(error: any): void {\n const chunkFailedMessage = /Loading chunk/;\n if (chunkFailedMessage.test(error.message)) {\n /* // replaced by function in substance.form.component which checks loaded component count \n if (confirm('There was a network error while fetching files, would you like to refresh?')) {\n window.location.reload(true);\n }*/\n } else {\n console.error(error);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { Ssg4mStepViewDialogComponent } from './ssg4m-step-view-dialog.component';\nimport { Ssg4mSchemeViewModule } from '../ssg4m-scheme-view/ssg4m-scheme-view.module';\n\n@NgModule({\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n Ssg4mSchemeViewModule\n ],\n declarations: [\n Ssg4mStepViewDialogComponent\n ]\n})\nexport class Ssg4mStepViewDialogModule { }\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule, formatDate } from '@angular/common';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { ScrollToModule } from '../scroll-to/scroll-to.module';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { ExpandDetailsModule } from '../expand-details/expand-details.module';\n// import { AccessManagerComponent } from './access-manager/access-manager.component';\nimport { SubstanceSelectorModule } from '../substance-selector/substance-selector.module';\nimport { MatListModule } from '@angular/material/list';\nimport { FileSelectModule } from 'file-select';\nimport { CvInputComponent} from '@gsrs-core/substance-form/cv-input/cv-input.component';\nimport { CvDialogComponent} from '@gsrs-core/substance-form/cv-dialog/cv-dialog.component';\nimport { MatButtonToggleModule} from '@angular/material/button-toggle';\nimport { JsonDialogComponent} from '@gsrs-core/substance-form/json-dialog/json-dialog.component';\nimport { NgxJsonViewerModule} from 'ngx-json-viewer';\nimport { AuditInfoComponent} from '@gsrs-core/substance-form/audit-info/audit-info.component';\nimport { RouterModule } from '@angular/router';\nimport { SubstanceImageModule } from '@gsrs-core/substance/substance-image.module';\n// import { SubmitSuccessDialogComponent } from './submit-success-dialog/submit-success-dialog.component';\nimport { MergeConceptDialogComponent} from '@gsrs-core/substance-form/merge-concept-dialog/merge-concept-dialog.component';\nimport { MatProgressBarModule} from '@angular/material/progress-bar';\n// import { SubstanceFormComponent } from './substance-form.component';\n// import { CanActivateSubstanceForm } from './can-activate-substance-form';\n// import { CanRegisterSubstanceForm } from './can-register-substance-form';\n// import { SubstanceFormService } from '../substance-form.service';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { SubstanceSsg4mService } from './substance-ssg4m-form.service';\nimport { SubstanceFormSsg4mProcessService } from './ssg4m-process/substance-form-ssg4m-process.service';\nimport { SubstanceSsg4ManufactureFormComponent } from './substance-ssg4m-form.component';\nimport { SubstanceFormComponent } from '../substance-form/substance-form.component';\n// import { SubstanceFormSsg4mSitesService } from './ssg4m-sites/substance-form-ssg4m-sites.service.';\nimport { SubstanceSsg4mProcessModule } from './ssg4m-process/substance-form-ssg4m-process.module';\nimport { Ssg4mSitesModule } from './ssg4m-sites/ssg4m-sites.module';\nimport { Ssg4mStepViewDialogModule } from './ssg4m-step-view-dialog/ssg4m-step-view-dialog.module';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n MatFormFieldModule,\n MatMenuModule,\n MatCheckboxModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTabsModule,\n MatDividerModule,\n MatSelectModule,\n MatInputModule,\n MatChipsModule,\n MatAutocompleteModule,\n ScrollToModule,\n MatDialogModule,\n MatTableModule,\n MatExpansionModule,\n MatBadgeModule,\n MatRadioModule,\n ExpandDetailsModule,\n SubstanceSelectorModule,\n MatListModule,\n FileSelectModule,\n MatButtonToggleModule,\n NgxJsonViewerModule,\n RouterModule,\n SubstanceImageModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n Ssg4mStepViewDialogModule\n // SubstanceSsg4mProcessModule\n // Ssg4mSitesModule\n ],\n declarations: [\n // SubstanceFormComponent,\n SubstanceSsg4ManufactureFormComponent\n // CvInputComponent,\n // CvDialogComponent,\n // JsonDialogComponent\n ],\n exports: [\n // SubstanceFormComponent,\n // SubstanceSsg4ManufactureFormComponent,\n // CvInputComponent,\n // CvDialogComponent,\n // JsonDialogComponent,\n ],\n entryComponents: [\n // CvDialogComponent,\n // JsonDialogComponent,\n // AuditInfoComponent,\n // SubmitSuccessDialogComponent,\n ]\n})\n\nexport class SubstanceSsg4mModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: SubstanceSsg4mModule,\n providers: [\n // SubstanceSsg4mService,\n // SubstanceFormSsg4mProcessService,\n // SubstanceFormSsg4mSitesService\n ]\n };\n }\n}\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule, APP_INITIALIZER, ErrorHandler } from '@angular/core';\r\nimport { HttpClientModule, HttpClientJsonpModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatBadgeModule } from '@angular/material/badge';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatSliderModule } from '@angular/material/slider';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { OverlayModule } from '@angular/cdk/overlay';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { PageNotFoundComponent } from './page-not-found/page-not-found.component';\r\nimport { BaseComponent } from './base/base.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { RegistrarsComponent } from './registrars/registrars.component';\r\nimport { SubstancesBrowseComponent } from './substances-browse/substances-browse.component';\r\nimport { configServiceFactory } from './config/config.factory';\r\nimport { ConfigService } from './config/config.service';\r\nimport { LoadingModule } from './loading/loading.module';\r\nimport { MainNotificationModule } from './main-notification/main-notification.module';\r\nimport { StructureSearchComponent } from './structure-search/structure-search.component';\r\nimport { StructureEditorModule } from './structure-editor/structure-editor.module';\r\nimport { FileSelectModule } from 'file-select';\r\nimport { SubstanceDetailsComponent } from './substance-details/substance-details.component';\r\nimport { DynamicComponentLoaderModule } from './dynamic-component-loader/dynamic-component-loader.module';\r\nimport { dynamicComponentManifests } from './app-dynamic-component-manifests';\r\nimport { ScrollToModule } from './scroll-to/scroll-to.module';\r\nimport { TakePipe } from './utils/take.pipe';\r\nimport { EnvironmentModule } from '../../environments/environment';\r\nimport { SubstanceTextSearchModule } from './substance-text-search/substance-text-search.module';\r\nimport { StructureImageModalComponent } from './structure/structure-image-modal/structure-image-modal.component';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { SequenceSearchComponent } from './sequence-search/sequence-search.component';\r\nimport { TrackLinkEventDirective } from './google-analytics/track-link-event/track-link-event.directive';\r\nimport { SubstanceCardsModule } from './substance-details/substance-cards.module';\r\nimport { substanceCardsFilters } from './substance-details/substance-cards-filters.constant';\r\nimport { AuthModule } from './auth/auth.module';\r\nimport { AuthInterceptor } from './auth/auth.interceptor';\r\nimport { SubstanceFormModule } from './substance-form/substance-form.module';\r\nimport { NameResolverModule } from './name-resolver/name-resolver.module';\r\nimport { HighlightedSearchActionComponent } from './highlighted-search-action/highlighted-search-action.component';\r\nimport { CardDynamicSectionDirective } from './substances-browse/card-dynamic-section/card-dynamic-section.directive';\r\nimport { SubstanceSummaryCardComponent } from './substances-browse/substance-summary-card/substance-summary-card.component';\r\nimport { SubstanceImageModule } from './substance/substance-image.module';\r\nimport { StructureModule } from './structure/structure.module';\r\nimport {MatTreeModule} from '@angular/material/tree';\r\nimport {SubstanceHierarchyComponent} from '@gsrs-core/substances-browse/substance-hierarchy/substance-hierarchy.component';\r\nimport {SequenceAlignmentComponent} from '@gsrs-core/substances-browse/sequence-alignment/sequence-alignment.component';\r\nimport { AdminModule } from '@gsrs-core/admin/admin.module';\r\nimport { FacetsManagerModule } from './facets-manager/facets-manager.module';\r\nimport { GuidedSearchModule } from './guided-search/guided-search.module';\r\nimport { CanActivateAdminPage } from '@gsrs-core/admin/can-activate-admin-page';\r\nimport { ExportDialogComponent } from '@gsrs-core/substances-browse/export-dialog/export-dialog.component';\r\nimport { NamesDisplayPipe } from '@gsrs-core/utils/names-display-order.pipe';\r\n// eslint-disable-next-line max-len\r\nimport { BrowseHeaderDynamicSectionDirective } from '@gsrs-core/substances-browse/browse-header-dynamic-section/browse-header-dynamic-section.directive';\r\nimport { SubstanceHistoryDialogComponent } from '@gsrs-core/substance-history-dialog/substance-history-dialog.component';\r\nimport { SubstanceEditImportDialogComponent } from '@gsrs-core/substance-edit-import-dialog/substance-edit-import-dialog.component';\r\nimport { CodeDisplayModule } from '@gsrs-core/utils/code-display.module';\r\nimport { GlobalErrorHandler } from '@gsrs-core/error-handler/error-handler';\r\nimport { ShowMolfileDialogComponent } from\r\n'@gsrs-core/substances-browse/substance-summary-card/show-molfile-dialog/show-molfile-dialog.component';\r\nimport { UnauthorizedComponent } from '@gsrs-core/unauthorized/unauthorized.component';\r\nimport { SubstanceSsg4mModule } from './substance-ssg4m/substance-ssg4m.module';\r\nimport { SubstanceSsg4mProcessModule } from './substance-ssg4m/ssg4m-process/substance-form-ssg4m-process.module';\r\nimport { Ssg4mSitesModule } from './substance-ssg4m/ssg4m-sites/ssg4m-sites.module';\r\nimport { Ssg4mStagesModule } from './substance-ssg4m/ssg4m-stages/substance-form-ssg4m-stages.module';\r\nimport { SubstanceFormSsg4mStartingMaterialsModule } from './substance-ssg4m/ssg4m-starting-materials/substance-form-ssg4m-starting-materials.module';\r\nimport { SubstanceStatusPipe } from '@gsrs-core/utils/substance-status.pipe';\r\nimport {MatProgressSpinnerModule} from '@angular/material/progress-spinner';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n PageNotFoundComponent,\r\n BaseComponent,\r\n HomeComponent,\r\n UnauthorizedComponent,\r\n SubstancesBrowseComponent,\r\n StructureSearchComponent,\r\n SubstanceDetailsComponent,\r\n RegistrarsComponent,\r\n TakePipe,\r\n SequenceSearchComponent,\r\n TrackLinkEventDirective,\r\n HighlightedSearchActionComponent,\r\n CardDynamicSectionDirective,\r\n BrowseHeaderDynamicSectionDirective,\r\n SubstanceSummaryCardComponent,\r\n SubstanceHierarchyComponent,\r\n SequenceAlignmentComponent,\r\n ExportDialogComponent,\r\n SubstanceEditImportDialogComponent,\r\n SubstanceHistoryDialogComponent,\r\n ShowMolfileDialogComponent,\r\n NamesDisplayPipe,\r\n SubstanceStatusPipe\r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'gsrs' }),\r\n AppRoutingModule,\r\n BrowserAnimationsModule,\r\n MatToolbarModule,\r\n MatSidenavModule,\r\n MatCardModule,\r\n HttpClientModule,\r\n MatAutocompleteModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n HttpClientModule,\r\n HttpClientJsonpModule,\r\n MatChipsModule,\r\n MatBadgeModule,\r\n MatExpansionModule,\r\n MatCheckboxModule,\r\n LoadingModule,\r\n MainNotificationModule,\r\n MatTableModule,\r\n MatPaginatorModule,\r\n MatSelectModule,\r\n MatSliderModule,\r\n MatDialogModule,\r\n StructureEditorModule,\r\n FileSelectModule,\r\n MatListModule,\r\n DynamicComponentLoaderModule.forRoot(dynamicComponentManifests),\r\n ScrollToModule,\r\n EnvironmentModule.forRoot(),\r\n MatMenuModule,\r\n MatButtonToggleModule,\r\n MatTooltipModule,\r\n MatTabsModule,\r\n SubstanceTextSearchModule,\r\n SubstanceCardsModule.forRoot(substanceCardsFilters),\r\n AuthModule,\r\n SubstanceFormModule.forRoot(),\r\n OverlayModule,\r\n NameResolverModule,\r\n MatBottomSheetModule,\r\n MatProgressBarModule,\r\n SubstanceImageModule,\r\n StructureModule,\r\n MatTreeModule,\r\n FacetsManagerModule,\r\n GuidedSearchModule,\r\n MatNativeDateModule,\r\n AdminModule,\r\n FacetsManagerModule,\r\n CodeDisplayModule,\r\n SubstanceSsg4mModule,\r\n SubstanceSsg4mProcessModule,\r\n Ssg4mSitesModule,\r\n MatProgressSpinnerModule,\r\n Ssg4mStagesModule,\r\n SubstanceFormSsg4mStartingMaterialsModule\r\n ],\r\n providers: [\r\n {\r\n provide: ErrorHandler,\r\n useClass: GlobalErrorHandler\r\n },\r\n CanActivateAdminPage,\r\n ConfigService,\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: configServiceFactory,\r\n deps: [ConfigService],\r\n multi: true\r\n },\r\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true }\r\n ],\r\n bootstrap: [AppComponent],\r\n entryComponents: [\r\n HighlightedSearchActionComponent,\r\n ExportDialogComponent,\r\n SubstanceEditImportDialogComponent,\r\n SubstanceHistoryDialogComponent,\r\n ShowMolfileDialogComponent\r\n ]\r\n})\r\nexport class AppModule {}\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { AppModule } from './app/core/app.module';\r\nimport { environment } from './environments/environment';\r\nimport 'hammerjs';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar callBind = require('./');\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n","'use strict';\n\nvar bind = require('function-bind');\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tvar func = $reflectApply(bind, $call, arguments);\n\tif ($gOPD && $defineProperty) {\n\t\tvar desc = $gOPD(func, 'length');\n\t\tif (desc.configurable) {\n\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t$defineProperty(\n\t\t\t\tfunc,\n\t\t\t\t'length',\n\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t);\n\t\t}\n\t}\n\treturn func;\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"cronstrue\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"cronstrue\"] = factory();\n\telse\n\t\troot[\"cronstrue\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 4);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar stringUtilities_1 = __webpack_require__(1);\nvar cronParser_1 = __webpack_require__(2);\nvar ExpressionDescriptor = (function () {\n function ExpressionDescriptor(expression, options) {\n this.expression = expression;\n this.options = options;\n this.expressionParts = new Array(5);\n if (ExpressionDescriptor.locales[options.locale]) {\n this.i18n = ExpressionDescriptor.locales[options.locale];\n }\n else {\n console.warn(\"Locale '\" + options.locale + \"' could not be found; falling back to 'en'.\");\n this.i18n = ExpressionDescriptor.locales[\"en\"];\n }\n if (options.use24HourTimeFormat === undefined) {\n options.use24HourTimeFormat = this.i18n.use24HourTimeFormatByDefault();\n }\n }\n ExpressionDescriptor.toString = function (expression, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.throwExceptionOnParseError, throwExceptionOnParseError = _c === void 0 ? true : _c, _d = _b.verbose, verbose = _d === void 0 ? false : _d, _e = _b.dayOfWeekStartIndexZero, dayOfWeekStartIndexZero = _e === void 0 ? true : _e, use24HourTimeFormat = _b.use24HourTimeFormat, _f = _b.locale, locale = _f === void 0 ? \"en\" : _f;\n var options = {\n throwExceptionOnParseError: throwExceptionOnParseError,\n verbose: verbose,\n dayOfWeekStartIndexZero: dayOfWeekStartIndexZero,\n use24HourTimeFormat: use24HourTimeFormat,\n locale: locale\n };\n var descripter = new ExpressionDescriptor(expression, options);\n return descripter.getFullDescription();\n };\n ExpressionDescriptor.initialize = function (localesLoader) {\n ExpressionDescriptor.specialCharacters = [\"/\", \"-\", \",\", \"*\"];\n localesLoader.load(ExpressionDescriptor.locales);\n };\n ExpressionDescriptor.prototype.getFullDescription = function () {\n var description = \"\";\n try {\n var parser = new cronParser_1.CronParser(this.expression, this.options.dayOfWeekStartIndexZero);\n this.expressionParts = parser.parse();\n var timeSegment = this.getTimeOfDayDescription();\n var dayOfMonthDesc = this.getDayOfMonthDescription();\n var monthDesc = this.getMonthDescription();\n var dayOfWeekDesc = this.getDayOfWeekDescription();\n var yearDesc = this.getYearDescription();\n description += timeSegment + dayOfMonthDesc + dayOfWeekDesc + monthDesc + yearDesc;\n description = this.transformVerbosity(description, this.options.verbose);\n description = description.charAt(0).toLocaleUpperCase() + description.substr(1);\n }\n catch (ex) {\n if (!this.options.throwExceptionOnParseError) {\n description = this.i18n.anErrorOccuredWhenGeneratingTheExpressionD();\n }\n else {\n throw \"\" + ex;\n }\n }\n return description;\n };\n ExpressionDescriptor.prototype.getTimeOfDayDescription = function () {\n var secondsExpression = this.expressionParts[0];\n var minuteExpression = this.expressionParts[1];\n var hourExpression = this.expressionParts[2];\n var description = \"\";\n if (!stringUtilities_1.StringUtilities.containsAny(minuteExpression, ExpressionDescriptor.specialCharacters) &&\n !stringUtilities_1.StringUtilities.containsAny(hourExpression, ExpressionDescriptor.specialCharacters) &&\n !stringUtilities_1.StringUtilities.containsAny(secondsExpression, ExpressionDescriptor.specialCharacters)) {\n description += this.i18n.atSpace() + this.formatTime(hourExpression, minuteExpression, secondsExpression);\n }\n else if (!secondsExpression &&\n minuteExpression.indexOf(\"-\") > -1 &&\n !(minuteExpression.indexOf(\",\") > -1) &&\n !(minuteExpression.indexOf(\"/\") > -1) &&\n !stringUtilities_1.StringUtilities.containsAny(hourExpression, ExpressionDescriptor.specialCharacters)) {\n var minuteParts = minuteExpression.split(\"-\");\n description += stringUtilities_1.StringUtilities.format(this.i18n.everyMinuteBetweenX0AndX1(), this.formatTime(hourExpression, minuteParts[0], \"\"), this.formatTime(hourExpression, minuteParts[1], \"\"));\n }\n else if (!secondsExpression &&\n hourExpression.indexOf(\",\") > -1 &&\n hourExpression.indexOf(\"-\") == -1 &&\n hourExpression.indexOf(\"/\") == -1 &&\n !stringUtilities_1.StringUtilities.containsAny(minuteExpression, ExpressionDescriptor.specialCharacters)) {\n var hourParts = hourExpression.split(\",\");\n description += this.i18n.at();\n for (var i = 0; i < hourParts.length; i++) {\n description += \" \";\n description += this.formatTime(hourParts[i], minuteExpression, \"\");\n if (i < hourParts.length - 2) {\n description += \",\";\n }\n if (i == hourParts.length - 2) {\n description += this.i18n.spaceAnd();\n }\n }\n }\n else {\n var secondsDescription = this.getSecondsDescription();\n var minutesDescription = this.getMinutesDescription();\n var hoursDescription = this.getHoursDescription();\n description += secondsDescription;\n if (description.length > 0 && minutesDescription.length > 0) {\n description += \", \";\n }\n description += minutesDescription;\n if (description.length > 0 && hoursDescription.length > 0) {\n description += \", \";\n }\n description += hoursDescription;\n }\n return description;\n };\n ExpressionDescriptor.prototype.getSecondsDescription = function () {\n var _this = this;\n var description = this.getSegmentDescription(this.expressionParts[0], this.i18n.everySecond(), function (s) {\n return s;\n }, function (s) {\n return stringUtilities_1.StringUtilities.format(_this.i18n.everyX0Seconds(), s);\n }, function (s) {\n return _this.i18n.secondsX0ThroughX1PastTheMinute();\n }, function (s) {\n return s == \"0\"\n ? \"\"\n : parseInt(s) < 20\n ? _this.i18n.atX0SecondsPastTheMinute()\n : _this.i18n.atX0SecondsPastTheMinuteGt20() || _this.i18n.atX0SecondsPastTheMinute();\n });\n return description;\n };\n ExpressionDescriptor.prototype.getMinutesDescription = function () {\n var _this = this;\n var secondsExpression = this.expressionParts[0];\n var hourExpression = this.expressionParts[2];\n var description = this.getSegmentDescription(this.expressionParts[1], this.i18n.everyMinute(), function (s) {\n return s;\n }, function (s) {\n return stringUtilities_1.StringUtilities.format(_this.i18n.everyX0Minutes(), s);\n }, function (s) {\n return _this.i18n.minutesX0ThroughX1PastTheHour();\n }, function (s) {\n try {\n return s == \"0\" && hourExpression.indexOf(\"/\") == -1 && secondsExpression == \"\"\n ? _this.i18n.everyHour()\n : parseInt(s) < 20\n ? _this.i18n.atX0MinutesPastTheHour()\n : _this.i18n.atX0MinutesPastTheHourGt20() || _this.i18n.atX0MinutesPastTheHour();\n }\n catch (e) {\n return _this.i18n.atX0MinutesPastTheHour();\n }\n });\n return description;\n };\n ExpressionDescriptor.prototype.getHoursDescription = function () {\n var _this = this;\n var expression = this.expressionParts[2];\n var description = this.getSegmentDescription(expression, this.i18n.everyHour(), function (s) {\n return _this.formatTime(s, \"0\", \"\");\n }, function (s) {\n return stringUtilities_1.StringUtilities.format(_this.i18n.everyX0Hours(), s);\n }, function (s) {\n return _this.i18n.betweenX0AndX1();\n }, function (s) {\n return _this.i18n.atX0();\n });\n return description;\n };\n ExpressionDescriptor.prototype.getDayOfWeekDescription = function () {\n var _this = this;\n var daysOfWeekNames = this.i18n.daysOfTheWeek();\n var description = null;\n if (this.expressionParts[5] == \"*\") {\n description = \"\";\n }\n else {\n description = this.getSegmentDescription(this.expressionParts[5], this.i18n.commaEveryDay(), function (s) {\n var exp = s;\n if (s.indexOf(\"#\") > -1) {\n exp = s.substr(0, s.indexOf(\"#\"));\n }\n else if (s.indexOf(\"L\") > -1) {\n exp = exp.replace(\"L\", \"\");\n }\n return daysOfWeekNames[parseInt(exp)];\n }, function (s) {\n if (parseInt(s) == 1) {\n return \"\";\n }\n else {\n return stringUtilities_1.StringUtilities.format(_this.i18n.commaEveryX0DaysOfTheWeek(), s);\n }\n }, function (s) {\n return _this.i18n.commaX0ThroughX1();\n }, function (s) {\n var format = null;\n if (s.indexOf(\"#\") > -1) {\n var dayOfWeekOfMonthNumber = s.substring(s.indexOf(\"#\") + 1);\n var dayOfWeekOfMonthDescription = null;\n switch (dayOfWeekOfMonthNumber) {\n case \"1\":\n dayOfWeekOfMonthDescription = _this.i18n.first();\n break;\n case \"2\":\n dayOfWeekOfMonthDescription = _this.i18n.second();\n break;\n case \"3\":\n dayOfWeekOfMonthDescription = _this.i18n.third();\n break;\n case \"4\":\n dayOfWeekOfMonthDescription = _this.i18n.fourth();\n break;\n case \"5\":\n dayOfWeekOfMonthDescription = _this.i18n.fifth();\n break;\n }\n format = _this.i18n.commaOnThe() + dayOfWeekOfMonthDescription + _this.i18n.spaceX0OfTheMonth();\n }\n else if (s.indexOf(\"L\") > -1) {\n format = _this.i18n.commaOnTheLastX0OfTheMonth();\n }\n else {\n var domSpecified = _this.expressionParts[3] != \"*\";\n format = domSpecified ? _this.i18n.commaAndOnX0() : _this.i18n.commaOnlyOnX0();\n }\n return format;\n });\n }\n return description;\n };\n ExpressionDescriptor.prototype.getMonthDescription = function () {\n var _this = this;\n var monthNames = this.i18n.monthsOfTheYear();\n var description = this.getSegmentDescription(this.expressionParts[4], \"\", function (s) {\n return monthNames[parseInt(s) - 1];\n }, function (s) {\n if (parseInt(s) == 1) {\n return \"\";\n }\n else {\n return stringUtilities_1.StringUtilities.format(_this.i18n.commaEveryX0Months(), s);\n }\n }, function (s) {\n return _this.i18n.commaMonthX0ThroughMonthX1() || _this.i18n.commaX0ThroughX1();\n }, function (s) {\n return _this.i18n.commaOnlyInMonthX0 ? _this.i18n.commaOnlyInMonthX0() : _this.i18n.commaOnlyInX0();\n });\n return description;\n };\n ExpressionDescriptor.prototype.getDayOfMonthDescription = function () {\n var _this = this;\n var description = null;\n var expression = this.expressionParts[3];\n switch (expression) {\n case \"L\":\n description = this.i18n.commaOnTheLastDayOfTheMonth();\n break;\n case \"WL\":\n case \"LW\":\n description = this.i18n.commaOnTheLastWeekdayOfTheMonth();\n break;\n default:\n var weekDayNumberMatches = expression.match(/(\\d{1,2}W)|(W\\d{1,2})/);\n if (weekDayNumberMatches) {\n var dayNumber = parseInt(weekDayNumberMatches[0].replace(\"W\", \"\"));\n var dayString = dayNumber == 1\n ? this.i18n.firstWeekday()\n : stringUtilities_1.StringUtilities.format(this.i18n.weekdayNearestDayX0(), dayNumber.toString());\n description = stringUtilities_1.StringUtilities.format(this.i18n.commaOnTheX0OfTheMonth(), dayString);\n break;\n }\n else {\n var lastDayOffSetMatches = expression.match(/L-(\\d{1,2})/);\n if (lastDayOffSetMatches) {\n var offSetDays = lastDayOffSetMatches[1];\n description = stringUtilities_1.StringUtilities.format(this.i18n.commaDaysBeforeTheLastDayOfTheMonth(), offSetDays);\n break;\n }\n else if (expression == \"*\" && this.expressionParts[5] != \"*\") {\n return \"\";\n }\n else {\n description = this.getSegmentDescription(expression, this.i18n.commaEveryDay(), function (s) {\n return s == \"L\" ? _this.i18n.lastDay() : ((_this.i18n.dayX0) ? stringUtilities_1.StringUtilities.format(_this.i18n.dayX0(), s) : s);\n }, function (s) {\n return s == \"1\" ? _this.i18n.commaEveryDay() : _this.i18n.commaEveryX0Days();\n }, function (s) {\n return _this.i18n.commaBetweenDayX0AndX1OfTheMonth();\n }, function (s) {\n return _this.i18n.commaOnDayX0OfTheMonth();\n });\n }\n break;\n }\n }\n return description;\n };\n ExpressionDescriptor.prototype.getYearDescription = function () {\n var _this = this;\n var description = this.getSegmentDescription(this.expressionParts[6], \"\", function (s) {\n return /^\\d+$/.test(s) ? new Date(parseInt(s), 1).getFullYear().toString() : s;\n }, function (s) {\n return stringUtilities_1.StringUtilities.format(_this.i18n.commaEveryX0Years(), s);\n }, function (s) {\n return _this.i18n.commaYearX0ThroughYearX1() || _this.i18n.commaX0ThroughX1();\n }, function (s) {\n return _this.i18n.commaOnlyInYearX0 ? _this.i18n.commaOnlyInYearX0() : _this.i18n.commaOnlyInX0();\n });\n return description;\n };\n ExpressionDescriptor.prototype.getSegmentDescription = function (expression, allDescription, getSingleItemDescription, getIntervalDescriptionFormat, getBetweenDescriptionFormat, getDescriptionFormat) {\n var _this = this;\n var description = null;\n if (!expression) {\n description = \"\";\n }\n else if (expression === \"*\") {\n description = allDescription;\n }\n else if (!stringUtilities_1.StringUtilities.containsAny(expression, [\"/\", \"-\", \",\"])) {\n description = stringUtilities_1.StringUtilities.format(getDescriptionFormat(expression), getSingleItemDescription(expression));\n }\n else if (expression.indexOf(\"/\") > -1) {\n var segments = expression.split(\"/\");\n description = stringUtilities_1.StringUtilities.format(getIntervalDescriptionFormat(segments[1]), segments[1]);\n if (segments[0].indexOf(\"-\") > -1) {\n var betweenSegmentDescription = this.generateBetweenSegmentDescription(segments[0], getBetweenDescriptionFormat, getSingleItemDescription);\n if (betweenSegmentDescription.indexOf(\", \") != 0) {\n description += \", \";\n }\n description += betweenSegmentDescription;\n }\n else if (!stringUtilities_1.StringUtilities.containsAny(segments[0], [\"*\", \",\"])) {\n var rangeItemDescription = stringUtilities_1.StringUtilities.format(getDescriptionFormat(segments[0]), getSingleItemDescription(segments[0]));\n rangeItemDescription = rangeItemDescription.replace(\", \", \"\");\n description += stringUtilities_1.StringUtilities.format(this.i18n.commaStartingX0(), rangeItemDescription);\n }\n }\n else if (expression.indexOf(\",\") > -1) {\n var segments = expression.split(\",\");\n var descriptionContent = \"\";\n for (var i = 0; i < segments.length; i++) {\n if (i > 0 && segments.length > 2) {\n descriptionContent += \",\";\n if (i < segments.length - 1) {\n descriptionContent += \" \";\n }\n }\n if (i > 0 && segments.length > 1 && (i == segments.length - 1 || segments.length == 2)) {\n descriptionContent += this.i18n.spaceAnd() + \" \";\n }\n if (segments[i].indexOf(\"-\") > -1) {\n var betweenSegmentDescription = this.generateBetweenSegmentDescription(segments[i], function (s) {\n return _this.i18n.commaX0ThroughX1();\n }, getSingleItemDescription);\n betweenSegmentDescription = betweenSegmentDescription.replace(\", \", \"\");\n descriptionContent += betweenSegmentDescription;\n }\n else {\n descriptionContent += getSingleItemDescription(segments[i]);\n }\n }\n description = stringUtilities_1.StringUtilities.format(getDescriptionFormat(expression), descriptionContent);\n }\n else if (expression.indexOf(\"-\") > -1) {\n description = this.generateBetweenSegmentDescription(expression, getBetweenDescriptionFormat, getSingleItemDescription);\n }\n return description;\n };\n ExpressionDescriptor.prototype.generateBetweenSegmentDescription = function (betweenExpression, getBetweenDescriptionFormat, getSingleItemDescription) {\n var description = \"\";\n var betweenSegments = betweenExpression.split(\"-\");\n var betweenSegment1Description = getSingleItemDescription(betweenSegments[0]);\n var betweenSegment2Description = getSingleItemDescription(betweenSegments[1]);\n betweenSegment2Description = betweenSegment2Description.replace(\":00\", \":59\");\n var betweenDescriptionFormat = getBetweenDescriptionFormat(betweenExpression);\n description += stringUtilities_1.StringUtilities.format(betweenDescriptionFormat, betweenSegment1Description, betweenSegment2Description);\n return description;\n };\n ExpressionDescriptor.prototype.formatTime = function (hourExpression, minuteExpression, secondExpression) {\n var hour = parseInt(hourExpression);\n var period = \"\";\n var setPeriodBeforeTime = false;\n if (!this.options.use24HourTimeFormat) {\n setPeriodBeforeTime = this.i18n.setPeriodBeforeTime && this.i18n.setPeriodBeforeTime();\n period = setPeriodBeforeTime ? this.getPeriod(hour) + \" \" : \" \" + this.getPeriod(hour);\n if (hour > 12) {\n hour -= 12;\n }\n if (hour === 0) {\n hour = 12;\n }\n }\n var minute = minuteExpression;\n var second = \"\";\n if (secondExpression) {\n second = \":\" + (\"00\" + secondExpression).substring(secondExpression.length);\n }\n return \"\" + (setPeriodBeforeTime ? period : \"\") + (\"00\" + hour.toString()).substring(hour.toString().length) + \":\" + (\"00\" + minute.toString()).substring(minute.toString().length) + second + (!setPeriodBeforeTime ? period : \"\");\n };\n ExpressionDescriptor.prototype.transformVerbosity = function (description, useVerboseFormat) {\n if (!useVerboseFormat) {\n description = description.replace(new RegExp(\", \" + this.i18n.everyMinute(), \"g\"), \"\");\n description = description.replace(new RegExp(\", \" + this.i18n.everyHour(), \"g\"), \"\");\n description = description.replace(new RegExp(this.i18n.commaEveryDay(), \"g\"), \"\");\n description = description.replace(/\\, ?$/, \"\");\n }\n return description;\n };\n ExpressionDescriptor.prototype.getPeriod = function (hour) {\n return hour >= 12 ? this.i18n.pm && this.i18n.pm() || \"PM\" : this.i18n.am && this.i18n.am() || \"AM\";\n };\n ExpressionDescriptor.locales = {};\n return ExpressionDescriptor;\n}());\nexports.ExpressionDescriptor = ExpressionDescriptor;\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar StringUtilities = (function () {\n function StringUtilities() {\n }\n StringUtilities.format = function (template) {\n var values = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n values[_i - 1] = arguments[_i];\n }\n return template.replace(/%s/g, function () {\n return values.shift();\n });\n };\n StringUtilities.containsAny = function (text, searchStrings) {\n return searchStrings.some(function (c) {\n return text.indexOf(c) > -1;\n });\n };\n return StringUtilities;\n}());\nexports.StringUtilities = StringUtilities;\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar CronParser = (function () {\n function CronParser(expression, dayOfWeekStartIndexZero) {\n if (dayOfWeekStartIndexZero === void 0) { dayOfWeekStartIndexZero = true; }\n this.expression = expression;\n this.dayOfWeekStartIndexZero = dayOfWeekStartIndexZero;\n }\n CronParser.prototype.parse = function () {\n var parsed = this.extractParts(this.expression);\n this.normalize(parsed);\n this.validate(parsed);\n return parsed;\n };\n CronParser.prototype.extractParts = function (expression) {\n if (!this.expression) {\n throw new Error(\"Expression is empty\");\n }\n var parsed = expression.trim().split(/[ ]+/);\n if (parsed.length < 5) {\n throw new Error(\"Expression has only \" + parsed.length + \" part\" + (parsed.length == 1 ? \"\" : \"s\") + \". At least 5 parts are required.\");\n }\n else if (parsed.length == 5) {\n parsed.unshift(\"\");\n parsed.push(\"\");\n }\n else if (parsed.length == 6) {\n if (/\\d{4}$/.test(parsed[5])) {\n parsed.unshift(\"\");\n }\n else {\n parsed.push(\"\");\n }\n }\n else if (parsed.length > 7) {\n throw new Error(\"Expression has \" + parsed.length + \" parts; too many!\");\n }\n return parsed;\n };\n CronParser.prototype.normalize = function (expressionParts) {\n var _this = this;\n expressionParts[3] = expressionParts[3].replace(\"?\", \"*\");\n expressionParts[5] = expressionParts[5].replace(\"?\", \"*\");\n expressionParts[2] = expressionParts[2].replace(\"?\", \"*\");\n if (expressionParts[0].indexOf(\"0/\") == 0) {\n expressionParts[0] = expressionParts[0].replace(\"0/\", \"*/\");\n }\n if (expressionParts[1].indexOf(\"0/\") == 0) {\n expressionParts[1] = expressionParts[1].replace(\"0/\", \"*/\");\n }\n if (expressionParts[2].indexOf(\"0/\") == 0) {\n expressionParts[2] = expressionParts[2].replace(\"0/\", \"*/\");\n }\n if (expressionParts[3].indexOf(\"1/\") == 0) {\n expressionParts[3] = expressionParts[3].replace(\"1/\", \"*/\");\n }\n if (expressionParts[4].indexOf(\"1/\") == 0) {\n expressionParts[4] = expressionParts[4].replace(\"1/\", \"*/\");\n }\n if (expressionParts[5].indexOf(\"1/\") == 0) {\n expressionParts[5] = expressionParts[5].replace(\"1/\", \"*/\");\n }\n if (expressionParts[6].indexOf(\"1/\") == 0) {\n expressionParts[6] = expressionParts[6].replace(\"1/\", \"*/\");\n }\n expressionParts[5] = expressionParts[5].replace(/(^\\d)|([^#/\\s]\\d)/g, function (t) {\n var dowDigits = t.replace(/\\D/, \"\");\n var dowDigitsAdjusted = dowDigits;\n if (_this.dayOfWeekStartIndexZero) {\n if (dowDigits == \"7\") {\n dowDigitsAdjusted = \"0\";\n }\n }\n else {\n dowDigitsAdjusted = (parseInt(dowDigits) - 1).toString();\n }\n return t.replace(dowDigits, dowDigitsAdjusted);\n });\n if (expressionParts[5] == \"L\") {\n expressionParts[5] = \"6\";\n }\n if (expressionParts[3] == \"?\") {\n expressionParts[3] = \"*\";\n }\n if (expressionParts[3].indexOf(\"W\") > -1 &&\n (expressionParts[3].indexOf(\",\") > -1 || expressionParts[3].indexOf(\"-\") > -1)) {\n throw new Error(\"The 'W' character can be specified only when the day-of-month is a single day, not a range or list of days.\");\n }\n var days = {\n SUN: 0,\n MON: 1,\n TUE: 2,\n WED: 3,\n THU: 4,\n FRI: 5,\n SAT: 6\n };\n for (var day in days) {\n expressionParts[5] = expressionParts[5].replace(new RegExp(day, \"gi\"), days[day].toString());\n }\n var months = {\n JAN: 1,\n FEB: 2,\n MAR: 3,\n APR: 4,\n MAY: 5,\n JUN: 6,\n JUL: 7,\n AUG: 8,\n SEP: 9,\n OCT: 10,\n NOV: 11,\n DEC: 12\n };\n for (var month in months) {\n expressionParts[4] = expressionParts[4].replace(new RegExp(month, \"gi\"), months[month].toString());\n }\n if (expressionParts[0] == \"0\") {\n expressionParts[0] = \"\";\n }\n if (!/\\*|\\-|\\,|\\//.test(expressionParts[2]) &&\n (/\\*|\\//.test(expressionParts[1]) || /\\*|\\//.test(expressionParts[0]))) {\n expressionParts[2] += \"-\" + expressionParts[2];\n }\n for (var i = 0; i < expressionParts.length; i++) {\n if (expressionParts[i] == \"*/1\") {\n expressionParts[i] = \"*\";\n }\n if (expressionParts[i].indexOf(\"/\") > -1 && !/^\\*|\\-|\\,/.test(expressionParts[i])) {\n var stepRangeThrough = null;\n switch (i) {\n case 4:\n stepRangeThrough = \"12\";\n break;\n case 5:\n stepRangeThrough = \"6\";\n break;\n case 6:\n stepRangeThrough = \"9999\";\n break;\n default:\n stepRangeThrough = null;\n break;\n }\n if (stepRangeThrough != null) {\n var parts = expressionParts[i].split(\"/\");\n expressionParts[i] = parts[0] + \"-\" + stepRangeThrough + \"/\" + parts[1];\n }\n }\n }\n };\n CronParser.prototype.validate = function (parsed) {\n this.assertNoInvalidCharacters(\"DOW\", parsed[5]);\n this.assertNoInvalidCharacters(\"DOM\", parsed[3]);\n };\n CronParser.prototype.assertNoInvalidCharacters = function (partDescription, expression) {\n var invalidChars = expression.match(/[A-KM-VX-Z]+/gi);\n if (invalidChars && invalidChars.length) {\n throw new Error(partDescription + \" part contains invalid values: '\" + invalidChars.toString() + \"'\");\n }\n };\n return CronParser;\n}());\nexports.CronParser = CronParser;\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar en = (function () {\n function en() {\n }\n en.prototype.atX0SecondsPastTheMinuteGt20 = function () {\n return null;\n };\n en.prototype.atX0MinutesPastTheHourGt20 = function () {\n return null;\n };\n en.prototype.commaMonthX0ThroughMonthX1 = function () {\n return null;\n };\n en.prototype.commaYearX0ThroughYearX1 = function () {\n return null;\n };\n en.prototype.use24HourTimeFormatByDefault = function () {\n return false;\n };\n en.prototype.anErrorOccuredWhenGeneratingTheExpressionD = function () {\n return \"An error occured when generating the expression description. Check the cron expression syntax.\";\n };\n en.prototype.everyMinute = function () {\n return \"every minute\";\n };\n en.prototype.everyHour = function () {\n return \"every hour\";\n };\n en.prototype.atSpace = function () {\n return \"At \";\n };\n en.prototype.everyMinuteBetweenX0AndX1 = function () {\n return \"Every minute between %s and %s\";\n };\n en.prototype.at = function () {\n return \"At\";\n };\n en.prototype.spaceAnd = function () {\n return \" and\";\n };\n en.prototype.everySecond = function () {\n return \"every second\";\n };\n en.prototype.everyX0Seconds = function () {\n return \"every %s seconds\";\n };\n en.prototype.secondsX0ThroughX1PastTheMinute = function () {\n return \"seconds %s through %s past the minute\";\n };\n en.prototype.atX0SecondsPastTheMinute = function () {\n return \"at %s seconds past the minute\";\n };\n en.prototype.everyX0Minutes = function () {\n return \"every %s minutes\";\n };\n en.prototype.minutesX0ThroughX1PastTheHour = function () {\n return \"minutes %s through %s past the hour\";\n };\n en.prototype.atX0MinutesPastTheHour = function () {\n return \"at %s minutes past the hour\";\n };\n en.prototype.everyX0Hours = function () {\n return \"every %s hours\";\n };\n en.prototype.betweenX0AndX1 = function () {\n return \"between %s and %s\";\n };\n en.prototype.atX0 = function () {\n return \"at %s\";\n };\n en.prototype.commaEveryDay = function () {\n return \", every day\";\n };\n en.prototype.commaEveryX0DaysOfTheWeek = function () {\n return \", every %s days of the week\";\n };\n en.prototype.commaX0ThroughX1 = function () {\n return \", %s through %s\";\n };\n en.prototype.first = function () {\n return \"first\";\n };\n en.prototype.second = function () {\n return \"second\";\n };\n en.prototype.third = function () {\n return \"third\";\n };\n en.prototype.fourth = function () {\n return \"fourth\";\n };\n en.prototype.fifth = function () {\n return \"fifth\";\n };\n en.prototype.commaOnThe = function () {\n return \", on the \";\n };\n en.prototype.spaceX0OfTheMonth = function () {\n return \" %s of the month\";\n };\n en.prototype.lastDay = function () {\n return \"the last day\";\n };\n en.prototype.commaOnTheLastX0OfTheMonth = function () {\n return \", on the last %s of the month\";\n };\n en.prototype.commaOnlyOnX0 = function () {\n return \", only on %s\";\n };\n en.prototype.commaAndOnX0 = function () {\n return \", and on %s\";\n };\n en.prototype.commaEveryX0Months = function () {\n return \", every %s months\";\n };\n en.prototype.commaOnlyInX0 = function () {\n return \", only in %s\";\n };\n en.prototype.commaOnTheLastDayOfTheMonth = function () {\n return \", on the last day of the month\";\n };\n en.prototype.commaOnTheLastWeekdayOfTheMonth = function () {\n return \", on the last weekday of the month\";\n };\n en.prototype.commaDaysBeforeTheLastDayOfTheMonth = function () {\n return \", %s days before the last day of the month\";\n };\n en.prototype.firstWeekday = function () {\n return \"first weekday\";\n };\n en.prototype.weekdayNearestDayX0 = function () {\n return \"weekday nearest day %s\";\n };\n en.prototype.commaOnTheX0OfTheMonth = function () {\n return \", on the %s of the month\";\n };\n en.prototype.commaEveryX0Days = function () {\n return \", every %s days\";\n };\n en.prototype.commaBetweenDayX0AndX1OfTheMonth = function () {\n return \", between day %s and %s of the month\";\n };\n en.prototype.commaOnDayX0OfTheMonth = function () {\n return \", on day %s of the month\";\n };\n en.prototype.commaEveryHour = function () {\n return \", every hour\";\n };\n en.prototype.commaEveryX0Years = function () {\n return \", every %s years\";\n };\n en.prototype.commaStartingX0 = function () {\n return \", starting %s\";\n };\n en.prototype.daysOfTheWeek = function () {\n return [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n };\n en.prototype.monthsOfTheYear = function () {\n return [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ];\n };\n return en;\n}());\nexports.en = en;\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar expressionDescriptor_1 = __webpack_require__(0);\nvar enLocaleLoader_1 = __webpack_require__(5);\nexpressionDescriptor_1.ExpressionDescriptor.initialize(new enLocaleLoader_1.enLocaleLoader());\nexports.default = expressionDescriptor_1.ExpressionDescriptor;\nvar toString = expressionDescriptor_1.ExpressionDescriptor.toString;\nexports.toString = toString;\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar en_1 = __webpack_require__(3);\nvar enLocaleLoader = (function () {\n function enLocaleLoader() {\n }\n enLocaleLoader.prototype.load = function (availableLocales) {\n availableLocales[\"en\"] = new en_1.en();\n };\n return enLocaleLoader;\n}());\nexports.enLocaleLoader = enLocaleLoader;\n\n\n/***/ })\n/******/ ]);\n});","/*\n * defiant.js [v2.2.6]\n * http://www.defiantjs.com\n * Copyright (c) 2013-2019 Hakan Bilgin \n * License GNU AGPLv3\n */if(function(window,module){\"use strict\";var defiant={is_ie:/(msie|trident)/i.test(navigator.userAgent),is_safari:/safari/i.test(navigator.userAgent),env:\"production\",xml_decl:'',namespace:'xmlns:d=\"defiant-namespace\"',tabsize:4,snapshots:{},renderXml:function(e,t){var n=new window.XSLTProcessor,r=document.createElement(\"span\"),a='//xsl:template[@name=\"'+e+'\"]',s=this.node.selectSingleNode(this.xsl_template,a);return(s=this.node.selectSingleNode(this.xsl_template,a)).setAttribute(\"match\",\"/\"),n.importStylesheet(this.xsl_template),r.appendChild(n.transformToFragment(t,document)),s.removeAttribute(\"match\"),r.innerHTML},render:function(e,t){var n,r,a,s,o=new window.XSLTProcessor,i=document.createElement(\"span\"),l={match:\"/\"};switch(typeof e){case\"object\":this.extend(l,e),l.data||(l.data=t);break;case\"string\":l.template=e,l.data=t;break;default:throw\"error\"}if(l.data=l.data.nodeType?l.data:defiant.json.toXML(l.data),n='//xsl:template[@name=\"'+l.template+'\"]',this.xsl_template||this.gatherTemplates(),l.sorter&&(s=this.node.selectSingleNode(this.xsl_template,n+\"//xsl:for-each//xsl:sort\"))&&(l.sorter.order&&s.setAttribute(\"order\",l.sorter.order),l.sorter.select&&s.setAttribute(\"select\",l.sorter.select),s.setAttribute(\"data-type\",l.sorter.type||\"text\")),(a=this.node.selectSingleNode(this.xsl_template,n)).setAttribute(\"match\",l.match),o.importStylesheet(this.xsl_template),i.appendChild(o.transformToFragment(l.data,document)),a.removeAttribute(\"match\"),this.is_safari)for(var c=0,d=(r=i.getElementsByTagName(\"script\")).length;c\"+t.replace(/defiant:(\\w+)/g,\"$1\")+\"\")},registerTemplate:function(e){this.xsl_template=this.xmlFromString('\"+e.replace(/defiant:(\\w+)/g,\"$1\")+\"\")},getSnapshot:function(e,t){return this.json.toXML(e,t||!0)},createSnapshot:function(e,t){var n=this,r=\"snapshot_\"+Date.now();this.json.toXML(e,function(e){n.snapshots[r]=e,t(r)})},getFacets:function(e,t){var n,r,a,s,o,i,l=e.constructor===String&&\"snapshot_\"===e.slice(0,9)?this.snapshots[e].doc:defiant.json.toXML(e),c=l.cloneNode(!0),d={},u={},p=0,h=function(e){var t=e.childNodes.length;switch(e.nodeType){case 1:t>=p&&(p=t,r=e);case 9:e.childNodes.map(function(e){return h(e)})}};for(i in h(l),r.childNodes.map(function(e){u[e.nodeName]||(u[e.nodeName]=1),u[e.nodeName]++}),p=0,u)p<=u[i]&&(p=u[i],o=i);return this.createFacetTemplate(t),s=defiant.node.selectSingleNode(c,'//*[@d:mi=\"'+r.getAttribute(\"d:mi\")+'\"]'),defiant.node.selectNodes(c,'//*[@d:mi=\"'+r.getAttribute(\"d:mi\")+'\"]/'+o).map(function(e){return e.parentNode.removeChild(e)}),a=defiant.node.selectNodes(l,'//*[@d:mi=\"'+r.getAttribute(\"d:mi\")+'\"]/'+o),n=a.length-1,a.map(function(e,t){if(s.appendChild(e.cloneNode(!0)),t%50==49||t===n){var a=defiant.render(\"facets\",c).replace(/\\n|\\t/g,\"\").replace(/\"\": 0,?/g,\"\").replace(/,\\}/g,\"}\"),i=JSON.parse(a);d=defiant.concatFacet(i,d),defiant.node.selectNodes(c,'//*[@d:mi=\"'+r.getAttribute(\"d:mi\")+'\"]/'+o).map(function(e){return e.parentNode.removeChild(e)})}}),d},createFacetTemplate:function(e){var t,n,r=[],a=[];for(n in e)r.push(''),a.push('\"'+n+'\": {\"\": '+',}'.replace(/\\n|\\t/g,\"\"));t=r.join(\"\")+'{'+a.join(\",\")+\"}\",this.registerTemplate(t)},xmlFromString:function(e){var t;return null===(e=e.replace(/>\\s{1,}<\")).trim().match(/<\\?xml/)&&(e=this.xml_decl+e),\"ActiveXObject\"in window?((t=new ActiveXObject(\"Msxml2.DOMDocument\")).loadXML(e),t.setProperty(\"SelectionNamespaces\",this.namespace),-1===e.indexOf(\"xsl:stylesheet\")&&t.setProperty(\"SelectionLanguage\",\"XPath\")):t=(new DOMParser).parseFromString(e,\"text/xml\"),t},concatFacet:function(e,t){for(var n in t)e[n]&&\"object\"==typeof t[n]?this.concatFacet(e[n],t[n]):e[n]=(e[n]||0)+t[n];return e},extend:function(e,t){for(var n in t)e[n]&&\"object\"==typeof t[n]?this.extend(e[n],t[n]):e[n]=t[n];return e},node:{selectNodes:function(e,t){if(e.evaluate){for(var n=e.createNSResolver(e.documentElement),r=e.evaluate(t,e,n,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),a=[],s=0,o=r.snapshotLength;s0?n[0]:null}return e.selectSingleNode(t)},prettyPrint:function(e){var t,n=defiant,r=n.tabsize,a=n.xml_decl.toLowerCase();t=n.is_ie?e.xml:(new XMLSerializer).serializeToString(e),\"development\"!==n.env&&(t=t.replace(/ \\w+\\:d=\".*?\"| d\\:\\w+=\".*?\"/g,\"\"));for(var s,o,i=t.trim().replace(/(>)\\s*(<)(\\/*)/g,\"$1\\n$2$3\").split(\"\\n\"),l=-1,c=0,d=i.length;c/g),o=null!==i[c].match(/<\\/[\\w\\:]+>/g),null!==i[c].match(/<.*?\\/>/g)&&(s=o=!0),s&&l++,i[c]=String().fill(l,\"\\t\")+i[c],s&&o&&l--,!s&&o&&l--);return i.join(\"\\n\").replace(/\\t/g,String().fill(r,\" \"))},toJSON:function(e,t){var n=function(e){var t,r,a,s,o,i,l,c,d,u,p={},h=window;switch(e.nodeType){case 1:for(\"Array\"===(o=e.getAttribute(\"d:constr\"))?p=[]:\"String\"===o&&\"\"===e.textContent&&(p=\"\"),c=0,d=(t=e.attributes).length;c/,rx_constructor:/<(.+?)( d:contr=\".*?\")>/,rx_namespace:/ xmlns\\:d=\"defiant\\-namespace\"/,rx_data:/(<.+?>)(.*?)(<\\/d:data>)/i,rx_function:/function (\\w+)/i,namespace:'xmlns:d=\"defiant-namespace\"',to_xml_str:function(e){return{str:this.hash_to_xml(null,e),map:this.map}},hash_to_xml:function(e,t,n){var r,a,s,o,i,l,c,d,u,p=t.constructor===Array,h=this,m=[],f=[],g=function(t,r){if(null!==(a=r[t])&&void 0!==a&&\"NaN\"!==a.toString()||(a=null),o=\"@\"===t.slice(0,1),(i=n?e:t)==+i&&r.constructor!==Object&&(i=\"d:item\"),null===a?(l=null,c=!1):(l=a.constructor,c=l.toString().match(h.rx_function)[1]),o)f.push(i.slice(1)+'=\"'+h.escape_xml(a)+'\"'),\"String\"!==c&&f.push(\"d:\"+i.slice(1)+'=\"'+c+'\"');else if(null===a)m.push(h.scalar_to_xml(i,a));else switch(l){case Function:throw\"JSON data should not contain functions. Please check your structure.\";case Object:m.push(h.hash_to_xml(i,a));break;case Array:if(t===i){if(s=a.constructor===Array)for(d=a.length;d--;)null!==a[d]&&a[d]&&a[d].constructor!==Array||(s=!0),s||a[d].constructor!==Object||(s=!0);m.push(h.scalar_to_xml(i,a,s));break}case String:if(\"string\"==typeof a&&(a=a.toString().replace(/\\&/g,\"&\").replace(/\\r|\\n/g,\" \")),\"#text\"===i){h.map.push(r),f.push('d:mi=\"'+h.map.length+'\"'),f.push('d:constr=\"'+c+'\"'),m.push(h.escape_xml(a));break}case Number:case Boolean:if(\"#text\"===i&&\"String\"!==c){h.map.push(r),f.push('d:mi=\"'+h.map.length+'\"'),f.push('d:constr=\"'+c+'\"'),m.push(h.escape_xml(a));break}m.push(h.scalar_to_xml(i,a))}};if(t.constructor===Array)for(d=0,u=t.length;d\"+m.join(\"\")+\"\":\"/>\"))},scalar_to_xml:function(e,t,n){var r,a,s,o=\"\";if(null===e.match(this.rx_validate_name)&&(o+=' d:name=\"'+e+'\"',e=\"d:name\",n=!1),null!==t&&\"NaN\"!==t.toString()||(t=null),null===t)return\"<\"+e+' d:constr=\"null\"/>';if(1===t.length&&t.constructor===Array&&!t[0])return\"<\"+e+' d:constr=\"null\" d:type=\"ArrayItem\"/>';if(1===t.length&&t[0].constructor===Object){var i=(r=this.hash_to_xml(!1,t[0])).match(this.rx_node),l=r.match(this.rx_constructor);return\"<\"+e+(i=null!==i?i[2].replace(this.rx_namespace,\"\").replace(/>/,\"\").replace(/\"\\/$/,'\"'):\"\")+\" \"+(l=null!==l?l[2]:\"\")+' d:type=\"ArrayItem\">'+(r=null!==(r=r.match(this.rx_data))?r[2]:\"\")+\"\"}return 0===t.length&&t.constructor===Array?\"<\"+e+' d:constr=\"Array\"/>':n?this.hash_to_xml(e,t,!0):(s=(a=t.constructor).toString().match(this.rx_function)[1],r=a===Array?this.hash_to_xml(\"d:item\",t,!0):this.escape_xml(t),o+=' d:constr=\"'+s+'\"',this.map.push(t),o+=' d:mi=\"'+this.map.length+'\"',\"#text\"===e?this.escape_xml(t):\"<\"+e+o+\">\"+r+\"\")},escape_xml:function(e){return String(e).replace(/&/g,\"&\").replace(//g,\">\").replace(/\"/g,\""\").replace(/ /g,\" \")}},toXML:function(e,t){var n,r,a=defiant.json.interpreter;switch(typeof t){case\"function\":return void defiant.compiled.to_xml_str(e,function(n){t({doc:defiant.xmlFromString(n.str),src:e,map:n.map})});case\"boolean\":return n=a.to_xml_str.call(a,e),{doc:defiant.xmlFromString(n.str),src:e,map:n.map};default:return n=a.to_xml_str.call(a,e),r=defiant.xmlFromString(n.str),this.search.map=n.map,r}},search:function(e,t,n){e.constructor===String&&\"snapshot_\"===e.slice(0,9)&&defiant.snapshots[e]&&(e=defiant.snapshots[e]);var r,a,s=defiant.json,o=e.doc&&e.doc.nodeType,i=o?e.doc:s.toXML(e),l=o?e.map:s.search.map,c=o?e.src:e,d=defiant.node[n?\"selectSingleNode\":\"selectNodes\"](i,t.xTransform()),u=[];for(n&&(d=[d]),a=d.length;a--;)switch(d[a].nodeType){case 2:case 3:u.unshift(d[a].nodeValue);break;default:r=+d[a].getAttribute(\"d:mi\"),u.unshift(l[r-1])}return\"development\"===defiant.env&&(u.trace=s.matchTrace(c,u,d)),u},matchTrace:function(e,t,n){var r=[],a=0,s=window,o=defiant.node.toJSON,i=function(e){return JSON.stringify(e,null,\"\\t\").replace(/\\t/g,\"\")},l=i(e);return n.map(function(e,c){var d,u,p,h,m,f,g,x=0;switch(e.nodeType){case 2:d=n[c].ownerElement?n[c].ownerElement.getAttribute(\"d:\"+n[c].nodeName):\"String\",h=s[d](t[c]),m='\"@'+n[c].nodeName+'\": '+h,f=l.indexOf(m,a);break;case 3:d=n[c].parentNode.getAttribute(\"d:constr\"),h=s[d](t[c]),m='\"'+n[c].parentNode.nodeName+'\": '+(\"Number\"===m?h:'\"'+h+'\"'),f=l.indexOf(m,a);break;default:d=e.getAttribute(\"d:constr\"),[\"String\",\"Number\"].indexOf(d)>-1?(u=o(n[c].parentNode),p=i(u),h=s[d](t[c]),m='\"'+n[c].nodeName+'\": '+(\"Number\"===d?h:'\"'+h+'\"'),f=l.indexOf(p,a)+p.indexOf(m)):(m=i(t[c]),f=l.indexOf(m),x=m.split(\"\\n\").length-1)}a=f+1,g=l.slice(0,f).split(\"\\n\").length,r.push([g,x])}),r}}},x10={id:1,work_handler:function(e){var t=Array.prototype.slice.call(e.data,2),n=e.data[0],r=e.data[1],a=tree[n].apply(tree,t);a.map=JSON.parse(JSON.stringify(a.map)),postMessage([r,n,a])},setup:function(e){var t=window.URL||window.webkitURL,n=\"var tree = {\"+this.parse(e).join(\",\")+\"};\",r=new Blob([n+'self.addEventListener(\"message\", '+this.work_handler.toString()+\", false);\"],{type:\"text/javascript\"}),a=new Worker(t.createObjectURL(r));return a.onmessage=function(e){var t=Array.prototype.slice.call(e.data,2),n=e.data[0],r=e.data[1];x10.observer.emit(\"x10:\"+r+n,t),x10.observer.off(\"x10:\"+r+n)},a},call_handler:function(e,t){return function(){var n=Array.prototype.slice.call(arguments,0,-1),r=arguments[arguments.length-1],a=x10.id++;n.unshift(a),n.unshift(e),x10.observer.on(\"x10:\"+e+a,function(e){r(e.detail[0])}),t.postMessage(n)}},compile:function(e){var t,n=this.setup(\"function\"==typeof e?{func:e}:e),r={};if(\"function\"==typeof e)return r.func=this.call_handler(\"func\",n),r.func;for(t in e)r[t]=this.call_handler(t,n);return r},parse:function(e,t){var n,r,a,s=[];for(n in e)if(null!==(a=e[n]))if(void 0!==a){switch(a.constructor){case Date:r=\"new Date(\"+a.valueOf()+\")\";break;case Object:r=\"{\"+this.parse(a).join(\",\")+\"}\";break;case Array:r=\"[\"+this.parse(a,!0).join(\",\")+\"]\";break;case String:r='\"'+a.replace(/\"/g,'\\\\\"')+'\"';break;case RegExp:case Function:r=a.toString();break;default:r=a}t?s.push(r):s.push(n+\":\"+r)}else s.push(n+\":undefined\");else s.push(n+\":null\");return s},observer:(stack={},{on:function(e,t){stack[e]||(stack[e]=[]),stack[e].unshift(t)},off:function(e,t){if(stack[e]){var n=stack[e].indexOf(t);stack[e].splice(n,1)}},emit:function(e,t){if(stack[e])for(var n={type:e,detail:t,isCanceled:!1,cancelBubble:function(){this.isCanceled=!0}},r=stack[e].length;r--;){if(n.isCanceled)return;stack[e][r](n)}}})},stack;String.prototype.fill||(String.prototype.fill=function(e,t){var n=this;for(t=t||\" \";n.length 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","/*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n(function(window, document, exportName, undefined) {\n 'use strict';\n\nvar VENDOR_PREFIXES = ['', 'webkit', 'Moz', 'MS', 'ms', 'o'];\nvar TEST_ELEMENT = document.createElement('div');\n\nvar TYPE_FUNCTION = 'function';\n\nvar round = Math.round;\nvar abs = Math.abs;\nvar now = Date.now;\n\n/**\n * set a timeout with a given scope\n * @param {Function} fn\n * @param {Number} timeout\n * @param {Object} context\n * @returns {number}\n */\nfunction setTimeoutContext(fn, timeout, context) {\n return setTimeout(bindFn(fn, context), timeout);\n}\n\n/**\n * if the argument is an array, we want to execute the fn on each entry\n * if it aint an array we don't want to do a thing.\n * this is used by all the methods that accept a single and array argument.\n * @param {*|Array} arg\n * @param {String} fn\n * @param {Object} [context]\n * @returns {Boolean}\n */\nfunction invokeArrayArg(arg, fn, context) {\n if (Array.isArray(arg)) {\n each(arg, context[fn], context);\n return true;\n }\n return false;\n}\n\n/**\n * walk objects and arrays\n * @param {Object} obj\n * @param {Function} iterator\n * @param {Object} context\n */\nfunction each(obj, iterator, context) {\n var i;\n\n if (!obj) {\n return;\n }\n\n if (obj.forEach) {\n obj.forEach(iterator, context);\n } else if (obj.length !== undefined) {\n i = 0;\n while (i < obj.length) {\n iterator.call(context, obj[i], i, obj);\n i++;\n }\n } else {\n for (i in obj) {\n obj.hasOwnProperty(i) && iterator.call(context, obj[i], i, obj);\n }\n }\n}\n\n/**\n * wrap a method with a deprecation warning and stack trace\n * @param {Function} method\n * @param {String} name\n * @param {String} message\n * @returns {Function} A new function wrapping the supplied method.\n */\nfunction deprecate(method, name, message) {\n var deprecationMessage = 'DEPRECATED METHOD: ' + name + '\\n' + message + ' AT \\n';\n return function() {\n var e = new Error('get-stack-trace');\n var stack = e && e.stack ? e.stack.replace(/^[^\\(]+?[\\n$]/gm, '')\n .replace(/^\\s+at\\s+/gm, '')\n .replace(/^Object.\\s*\\(/gm, '{anonymous}()@') : 'Unknown Stack Trace';\n\n var log = window.console && (window.console.warn || window.console.log);\n if (log) {\n log.call(window.console, deprecationMessage, stack);\n }\n return method.apply(this, arguments);\n };\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} target\n * @param {...Object} objects_to_assign\n * @returns {Object} target\n */\nvar assign;\nif (typeof Object.assign !== 'function') {\n assign = function assign(target) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert undefined or null to object');\n }\n\n var output = Object(target);\n for (var index = 1; index < arguments.length; index++) {\n var source = arguments[index];\n if (source !== undefined && source !== null) {\n for (var nextKey in source) {\n if (source.hasOwnProperty(nextKey)) {\n output[nextKey] = source[nextKey];\n }\n }\n }\n }\n return output;\n };\n} else {\n assign = Object.assign;\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} dest\n * @param {Object} src\n * @param {Boolean} [merge=false]\n * @returns {Object} dest\n */\nvar extend = deprecate(function extend(dest, src, merge) {\n var keys = Object.keys(src);\n var i = 0;\n while (i < keys.length) {\n if (!merge || (merge && dest[keys[i]] === undefined)) {\n dest[keys[i]] = src[keys[i]];\n }\n i++;\n }\n return dest;\n}, 'extend', 'Use `assign`.');\n\n/**\n * merge the values from src in the dest.\n * means that properties that exist in dest will not be overwritten by src\n * @param {Object} dest\n * @param {Object} src\n * @returns {Object} dest\n */\nvar merge = deprecate(function merge(dest, src) {\n return extend(dest, src, true);\n}, 'merge', 'Use `assign`.');\n\n/**\n * simple class inheritance\n * @param {Function} child\n * @param {Function} base\n * @param {Object} [properties]\n */\nfunction inherit(child, base, properties) {\n var baseP = base.prototype,\n childP;\n\n childP = child.prototype = Object.create(baseP);\n childP.constructor = child;\n childP._super = baseP;\n\n if (properties) {\n assign(childP, properties);\n }\n}\n\n/**\n * simple function bind\n * @param {Function} fn\n * @param {Object} context\n * @returns {Function}\n */\nfunction bindFn(fn, context) {\n return function boundFn() {\n return fn.apply(context, arguments);\n };\n}\n\n/**\n * let a boolean value also be a function that must return a boolean\n * this first item in args will be used as the context\n * @param {Boolean|Function} val\n * @param {Array} [args]\n * @returns {Boolean}\n */\nfunction boolOrFn(val, args) {\n if (typeof val == TYPE_FUNCTION) {\n return val.apply(args ? args[0] || undefined : undefined, args);\n }\n return val;\n}\n\n/**\n * use the val2 when val1 is undefined\n * @param {*} val1\n * @param {*} val2\n * @returns {*}\n */\nfunction ifUndefined(val1, val2) {\n return (val1 === undefined) ? val2 : val1;\n}\n\n/**\n * addEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction addEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.addEventListener(type, handler, false);\n });\n}\n\n/**\n * removeEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction removeEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.removeEventListener(type, handler, false);\n });\n}\n\n/**\n * find if a node is in the given parent\n * @method hasParent\n * @param {HTMLElement} node\n * @param {HTMLElement} parent\n * @return {Boolean} found\n */\nfunction hasParent(node, parent) {\n while (node) {\n if (node == parent) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n}\n\n/**\n * small indexOf wrapper\n * @param {String} str\n * @param {String} find\n * @returns {Boolean} found\n */\nfunction inStr(str, find) {\n return str.indexOf(find) > -1;\n}\n\n/**\n * split string on whitespace\n * @param {String} str\n * @returns {Array} words\n */\nfunction splitStr(str) {\n return str.trim().split(/\\s+/g);\n}\n\n/**\n * find if a array contains the object using indexOf or a simple polyFill\n * @param {Array} src\n * @param {String} find\n * @param {String} [findByKey]\n * @return {Boolean|Number} false when not found, or the index\n */\nfunction inArray(src, find, findByKey) {\n if (src.indexOf && !findByKey) {\n return src.indexOf(find);\n } else {\n var i = 0;\n while (i < src.length) {\n if ((findByKey && src[i][findByKey] == find) || (!findByKey && src[i] === find)) {\n return i;\n }\n i++;\n }\n return -1;\n }\n}\n\n/**\n * convert array-like objects to real arrays\n * @param {Object} obj\n * @returns {Array}\n */\nfunction toArray(obj) {\n return Array.prototype.slice.call(obj, 0);\n}\n\n/**\n * unique array with objects based on a key (like 'id') or just by the array's value\n * @param {Array} src [{id:1},{id:2},{id:1}]\n * @param {String} [key]\n * @param {Boolean} [sort=False]\n * @returns {Array} [{id:1},{id:2}]\n */\nfunction uniqueArray(src, key, sort) {\n var results = [];\n var values = [];\n var i = 0;\n\n while (i < src.length) {\n var val = key ? src[i][key] : src[i];\n if (inArray(values, val) < 0) {\n results.push(src[i]);\n }\n values[i] = val;\n i++;\n }\n\n if (sort) {\n if (!key) {\n results = results.sort();\n } else {\n results = results.sort(function sortUniqueArray(a, b) {\n return a[key] > b[key];\n });\n }\n }\n\n return results;\n}\n\n/**\n * get the prefixed property\n * @param {Object} obj\n * @param {String} property\n * @returns {String|Undefined} prefixed\n */\nfunction prefixed(obj, property) {\n var prefix, prop;\n var camelProp = property[0].toUpperCase() + property.slice(1);\n\n var i = 0;\n while (i < VENDOR_PREFIXES.length) {\n prefix = VENDOR_PREFIXES[i];\n prop = (prefix) ? prefix + camelProp : property;\n\n if (prop in obj) {\n return prop;\n }\n i++;\n }\n return undefined;\n}\n\n/**\n * get a unique id\n * @returns {number} uniqueId\n */\nvar _uniqueId = 1;\nfunction uniqueId() {\n return _uniqueId++;\n}\n\n/**\n * get the window object of an element\n * @param {HTMLElement} element\n * @returns {DocumentView|Window}\n */\nfunction getWindowForElement(element) {\n var doc = element.ownerDocument || element;\n return (doc.defaultView || doc.parentWindow || window);\n}\n\nvar MOBILE_REGEX = /mobile|tablet|ip(ad|hone|od)|android/i;\n\nvar SUPPORT_TOUCH = ('ontouchstart' in window);\nvar SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined;\nvar SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent);\n\nvar INPUT_TYPE_TOUCH = 'touch';\nvar INPUT_TYPE_PEN = 'pen';\nvar INPUT_TYPE_MOUSE = 'mouse';\nvar INPUT_TYPE_KINECT = 'kinect';\n\nvar COMPUTE_INTERVAL = 25;\n\nvar INPUT_START = 1;\nvar INPUT_MOVE = 2;\nvar INPUT_END = 4;\nvar INPUT_CANCEL = 8;\n\nvar DIRECTION_NONE = 1;\nvar DIRECTION_LEFT = 2;\nvar DIRECTION_RIGHT = 4;\nvar DIRECTION_UP = 8;\nvar DIRECTION_DOWN = 16;\n\nvar DIRECTION_HORIZONTAL = DIRECTION_LEFT | DIRECTION_RIGHT;\nvar DIRECTION_VERTICAL = DIRECTION_UP | DIRECTION_DOWN;\nvar DIRECTION_ALL = DIRECTION_HORIZONTAL | DIRECTION_VERTICAL;\n\nvar PROPS_XY = ['x', 'y'];\nvar PROPS_CLIENT_XY = ['clientX', 'clientY'];\n\n/**\n * create new input type manager\n * @param {Manager} manager\n * @param {Function} callback\n * @returns {Input}\n * @constructor\n */\nfunction Input(manager, callback) {\n var self = this;\n this.manager = manager;\n this.callback = callback;\n this.element = manager.element;\n this.target = manager.options.inputTarget;\n\n // smaller wrapper around the handler, for the scope and the enabled state of the manager,\n // so when disabled the input events are completely bypassed.\n this.domHandler = function(ev) {\n if (boolOrFn(manager.options.enable, [manager])) {\n self.handler(ev);\n }\n };\n\n this.init();\n\n}\n\nInput.prototype = {\n /**\n * should handle the inputEvent data and trigger the callback\n * @virtual\n */\n handler: function() { },\n\n /**\n * bind the events\n */\n init: function() {\n this.evEl && addEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && addEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && addEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n },\n\n /**\n * unbind the events\n */\n destroy: function() {\n this.evEl && removeEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && removeEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && removeEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n }\n};\n\n/**\n * create new input type manager\n * called by the Manager constructor\n * @param {Hammer} manager\n * @returns {Input}\n */\nfunction createInputInstance(manager) {\n var Type;\n var inputClass = manager.options.inputClass;\n\n if (inputClass) {\n Type = inputClass;\n } else if (SUPPORT_POINTER_EVENTS) {\n Type = PointerEventInput;\n } else if (SUPPORT_ONLY_TOUCH) {\n Type = TouchInput;\n } else if (!SUPPORT_TOUCH) {\n Type = MouseInput;\n } else {\n Type = TouchMouseInput;\n }\n return new (Type)(manager, inputHandler);\n}\n\n/**\n * handle input events\n * @param {Manager} manager\n * @param {String} eventType\n * @param {Object} input\n */\nfunction inputHandler(manager, eventType, input) {\n var pointersLen = input.pointers.length;\n var changedPointersLen = input.changedPointers.length;\n var isFirst = (eventType & INPUT_START && (pointersLen - changedPointersLen === 0));\n var isFinal = (eventType & (INPUT_END | INPUT_CANCEL) && (pointersLen - changedPointersLen === 0));\n\n input.isFirst = !!isFirst;\n input.isFinal = !!isFinal;\n\n if (isFirst) {\n manager.session = {};\n }\n\n // source event is the normalized value of the domEvents\n // like 'touchstart, mouseup, pointerdown'\n input.eventType = eventType;\n\n // compute scale, rotation etc\n computeInputData(manager, input);\n\n // emit secret event\n manager.emit('hammer.input', input);\n\n manager.recognize(input);\n manager.session.prevInput = input;\n}\n\n/**\n * extend the data with some usable properties like scale, rotate, velocity etc\n * @param {Object} manager\n * @param {Object} input\n */\nfunction computeInputData(manager, input) {\n var session = manager.session;\n var pointers = input.pointers;\n var pointersLength = pointers.length;\n\n // store the first input to calculate the distance and direction\n if (!session.firstInput) {\n session.firstInput = simpleCloneInputData(input);\n }\n\n // to compute scale and rotation we need to store the multiple touches\n if (pointersLength > 1 && !session.firstMultiple) {\n session.firstMultiple = simpleCloneInputData(input);\n } else if (pointersLength === 1) {\n session.firstMultiple = false;\n }\n\n var firstInput = session.firstInput;\n var firstMultiple = session.firstMultiple;\n var offsetCenter = firstMultiple ? firstMultiple.center : firstInput.center;\n\n var center = input.center = getCenter(pointers);\n input.timeStamp = now();\n input.deltaTime = input.timeStamp - firstInput.timeStamp;\n\n input.angle = getAngle(offsetCenter, center);\n input.distance = getDistance(offsetCenter, center);\n\n computeDeltaXY(session, input);\n input.offsetDirection = getDirection(input.deltaX, input.deltaY);\n\n var overallVelocity = getVelocity(input.deltaTime, input.deltaX, input.deltaY);\n input.overallVelocityX = overallVelocity.x;\n input.overallVelocityY = overallVelocity.y;\n input.overallVelocity = (abs(overallVelocity.x) > abs(overallVelocity.y)) ? overallVelocity.x : overallVelocity.y;\n\n input.scale = firstMultiple ? getScale(firstMultiple.pointers, pointers) : 1;\n input.rotation = firstMultiple ? getRotation(firstMultiple.pointers, pointers) : 0;\n\n input.maxPointers = !session.prevInput ? input.pointers.length : ((input.pointers.length >\n session.prevInput.maxPointers) ? input.pointers.length : session.prevInput.maxPointers);\n\n computeIntervalInputData(session, input);\n\n // find the correct target\n var target = manager.element;\n if (hasParent(input.srcEvent.target, target)) {\n target = input.srcEvent.target;\n }\n input.target = target;\n}\n\nfunction computeDeltaXY(session, input) {\n var center = input.center;\n var offset = session.offsetDelta || {};\n var prevDelta = session.prevDelta || {};\n var prevInput = session.prevInput || {};\n\n if (input.eventType === INPUT_START || prevInput.eventType === INPUT_END) {\n prevDelta = session.prevDelta = {\n x: prevInput.deltaX || 0,\n y: prevInput.deltaY || 0\n };\n\n offset = session.offsetDelta = {\n x: center.x,\n y: center.y\n };\n }\n\n input.deltaX = prevDelta.x + (center.x - offset.x);\n input.deltaY = prevDelta.y + (center.y - offset.y);\n}\n\n/**\n * velocity is calculated every x ms\n * @param {Object} session\n * @param {Object} input\n */\nfunction computeIntervalInputData(session, input) {\n var last = session.lastInterval || input,\n deltaTime = input.timeStamp - last.timeStamp,\n velocity, velocityX, velocityY, direction;\n\n if (input.eventType != INPUT_CANCEL && (deltaTime > COMPUTE_INTERVAL || last.velocity === undefined)) {\n var deltaX = input.deltaX - last.deltaX;\n var deltaY = input.deltaY - last.deltaY;\n\n var v = getVelocity(deltaTime, deltaX, deltaY);\n velocityX = v.x;\n velocityY = v.y;\n velocity = (abs(v.x) > abs(v.y)) ? v.x : v.y;\n direction = getDirection(deltaX, deltaY);\n\n session.lastInterval = input;\n } else {\n // use latest velocity info if it doesn't overtake a minimum period\n velocity = last.velocity;\n velocityX = last.velocityX;\n velocityY = last.velocityY;\n direction = last.direction;\n }\n\n input.velocity = velocity;\n input.velocityX = velocityX;\n input.velocityY = velocityY;\n input.direction = direction;\n}\n\n/**\n * create a simple clone from the input used for storage of firstInput and firstMultiple\n * @param {Object} input\n * @returns {Object} clonedInputData\n */\nfunction simpleCloneInputData(input) {\n // make a simple copy of the pointers because we will get a reference if we don't\n // we only need clientXY for the calculations\n var pointers = [];\n var i = 0;\n while (i < input.pointers.length) {\n pointers[i] = {\n clientX: round(input.pointers[i].clientX),\n clientY: round(input.pointers[i].clientY)\n };\n i++;\n }\n\n return {\n timeStamp: now(),\n pointers: pointers,\n center: getCenter(pointers),\n deltaX: input.deltaX,\n deltaY: input.deltaY\n };\n}\n\n/**\n * get the center of all the pointers\n * @param {Array} pointers\n * @return {Object} center contains `x` and `y` properties\n */\nfunction getCenter(pointers) {\n var pointersLength = pointers.length;\n\n // no need to loop when only one touch\n if (pointersLength === 1) {\n return {\n x: round(pointers[0].clientX),\n y: round(pointers[0].clientY)\n };\n }\n\n var x = 0, y = 0, i = 0;\n while (i < pointersLength) {\n x += pointers[i].clientX;\n y += pointers[i].clientY;\n i++;\n }\n\n return {\n x: round(x / pointersLength),\n y: round(y / pointersLength)\n };\n}\n\n/**\n * calculate the velocity between two points. unit is in px per ms.\n * @param {Number} deltaTime\n * @param {Number} x\n * @param {Number} y\n * @return {Object} velocity `x` and `y`\n */\nfunction getVelocity(deltaTime, x, y) {\n return {\n x: x / deltaTime || 0,\n y: y / deltaTime || 0\n };\n}\n\n/**\n * get the direction between two points\n * @param {Number} x\n * @param {Number} y\n * @return {Number} direction\n */\nfunction getDirection(x, y) {\n if (x === y) {\n return DIRECTION_NONE;\n }\n\n if (abs(x) >= abs(y)) {\n return x < 0 ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return y < 0 ? DIRECTION_UP : DIRECTION_DOWN;\n}\n\n/**\n * calculate the absolute distance between two points\n * @param {Object} p1 {x, y}\n * @param {Object} p2 {x, y}\n * @param {Array} [props] containing x and y keys\n * @return {Number} distance\n */\nfunction getDistance(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n\n return Math.sqrt((x * x) + (y * y));\n}\n\n/**\n * calculate the angle between two coordinates\n * @param {Object} p1\n * @param {Object} p2\n * @param {Array} [props] containing x and y keys\n * @return {Number} angle\n */\nfunction getAngle(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n return Math.atan2(y, x) * 180 / Math.PI;\n}\n\n/**\n * calculate the rotation degrees between two pointersets\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} rotation\n */\nfunction getRotation(start, end) {\n return getAngle(end[1], end[0], PROPS_CLIENT_XY) + getAngle(start[1], start[0], PROPS_CLIENT_XY);\n}\n\n/**\n * calculate the scale factor between two pointersets\n * no scale is 1, and goes down to 0 when pinched together, and bigger when pinched out\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} scale\n */\nfunction getScale(start, end) {\n return getDistance(end[0], end[1], PROPS_CLIENT_XY) / getDistance(start[0], start[1], PROPS_CLIENT_XY);\n}\n\nvar MOUSE_INPUT_MAP = {\n mousedown: INPUT_START,\n mousemove: INPUT_MOVE,\n mouseup: INPUT_END\n};\n\nvar MOUSE_ELEMENT_EVENTS = 'mousedown';\nvar MOUSE_WINDOW_EVENTS = 'mousemove mouseup';\n\n/**\n * Mouse events input\n * @constructor\n * @extends Input\n */\nfunction MouseInput() {\n this.evEl = MOUSE_ELEMENT_EVENTS;\n this.evWin = MOUSE_WINDOW_EVENTS;\n\n this.pressed = false; // mousedown state\n\n Input.apply(this, arguments);\n}\n\ninherit(MouseInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function MEhandler(ev) {\n var eventType = MOUSE_INPUT_MAP[ev.type];\n\n // on start we want to have the left mouse button down\n if (eventType & INPUT_START && ev.button === 0) {\n this.pressed = true;\n }\n\n if (eventType & INPUT_MOVE && ev.which !== 1) {\n eventType = INPUT_END;\n }\n\n // mouse must be down\n if (!this.pressed) {\n return;\n }\n\n if (eventType & INPUT_END) {\n this.pressed = false;\n }\n\n this.callback(this.manager, eventType, {\n pointers: [ev],\n changedPointers: [ev],\n pointerType: INPUT_TYPE_MOUSE,\n srcEvent: ev\n });\n }\n});\n\nvar POINTER_INPUT_MAP = {\n pointerdown: INPUT_START,\n pointermove: INPUT_MOVE,\n pointerup: INPUT_END,\n pointercancel: INPUT_CANCEL,\n pointerout: INPUT_CANCEL\n};\n\n// in IE10 the pointer types is defined as an enum\nvar IE10_POINTER_TYPE_ENUM = {\n 2: INPUT_TYPE_TOUCH,\n 3: INPUT_TYPE_PEN,\n 4: INPUT_TYPE_MOUSE,\n 5: INPUT_TYPE_KINECT // see https://twitter.com/jacobrossi/status/480596438489890816\n};\n\nvar POINTER_ELEMENT_EVENTS = 'pointerdown';\nvar POINTER_WINDOW_EVENTS = 'pointermove pointerup pointercancel';\n\n// IE10 has prefixed support, and case-sensitive\nif (window.MSPointerEvent && !window.PointerEvent) {\n POINTER_ELEMENT_EVENTS = 'MSPointerDown';\n POINTER_WINDOW_EVENTS = 'MSPointerMove MSPointerUp MSPointerCancel';\n}\n\n/**\n * Pointer events input\n * @constructor\n * @extends Input\n */\nfunction PointerEventInput() {\n this.evEl = POINTER_ELEMENT_EVENTS;\n this.evWin = POINTER_WINDOW_EVENTS;\n\n Input.apply(this, arguments);\n\n this.store = (this.manager.session.pointerEvents = []);\n}\n\ninherit(PointerEventInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function PEhandler(ev) {\n var store = this.store;\n var removePointer = false;\n\n var eventTypeNormalized = ev.type.toLowerCase().replace('ms', '');\n var eventType = POINTER_INPUT_MAP[eventTypeNormalized];\n var pointerType = IE10_POINTER_TYPE_ENUM[ev.pointerType] || ev.pointerType;\n\n var isTouch = (pointerType == INPUT_TYPE_TOUCH);\n\n // get index of the event in the store\n var storeIndex = inArray(store, ev.pointerId, 'pointerId');\n\n // start and mouse must be down\n if (eventType & INPUT_START && (ev.button === 0 || isTouch)) {\n if (storeIndex < 0) {\n store.push(ev);\n storeIndex = store.length - 1;\n }\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n removePointer = true;\n }\n\n // it not found, so the pointer hasn't been down (so it's probably a hover)\n if (storeIndex < 0) {\n return;\n }\n\n // update the event in the store\n store[storeIndex] = ev;\n\n this.callback(this.manager, eventType, {\n pointers: store,\n changedPointers: [ev],\n pointerType: pointerType,\n srcEvent: ev\n });\n\n if (removePointer) {\n // remove from the store\n store.splice(storeIndex, 1);\n }\n }\n});\n\nvar SINGLE_TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar SINGLE_TOUCH_TARGET_EVENTS = 'touchstart';\nvar SINGLE_TOUCH_WINDOW_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Touch events input\n * @constructor\n * @extends Input\n */\nfunction SingleTouchInput() {\n this.evTarget = SINGLE_TOUCH_TARGET_EVENTS;\n this.evWin = SINGLE_TOUCH_WINDOW_EVENTS;\n this.started = false;\n\n Input.apply(this, arguments);\n}\n\ninherit(SingleTouchInput, Input, {\n handler: function TEhandler(ev) {\n var type = SINGLE_TOUCH_INPUT_MAP[ev.type];\n\n // should we handle the touch events?\n if (type === INPUT_START) {\n this.started = true;\n }\n\n if (!this.started) {\n return;\n }\n\n var touches = normalizeSingleTouches.call(this, ev, type);\n\n // when done, reset the started state\n if (type & (INPUT_END | INPUT_CANCEL) && touches[0].length - touches[1].length === 0) {\n this.started = false;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction normalizeSingleTouches(ev, type) {\n var all = toArray(ev.touches);\n var changed = toArray(ev.changedTouches);\n\n if (type & (INPUT_END | INPUT_CANCEL)) {\n all = uniqueArray(all.concat(changed), 'identifier', true);\n }\n\n return [all, changed];\n}\n\nvar TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar TOUCH_TARGET_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Multi-user touch events input\n * @constructor\n * @extends Input\n */\nfunction TouchInput() {\n this.evTarget = TOUCH_TARGET_EVENTS;\n this.targetIds = {};\n\n Input.apply(this, arguments);\n}\n\ninherit(TouchInput, Input, {\n handler: function MTEhandler(ev) {\n var type = TOUCH_INPUT_MAP[ev.type];\n var touches = getTouches.call(this, ev, type);\n if (!touches) {\n return;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction getTouches(ev, type) {\n var allTouches = toArray(ev.touches);\n var targetIds = this.targetIds;\n\n // when there is only one touch, the process can be simplified\n if (type & (INPUT_START | INPUT_MOVE) && allTouches.length === 1) {\n targetIds[allTouches[0].identifier] = true;\n return [allTouches, allTouches];\n }\n\n var i,\n targetTouches,\n changedTouches = toArray(ev.changedTouches),\n changedTargetTouches = [],\n target = this.target;\n\n // get target touches from touches\n targetTouches = allTouches.filter(function(touch) {\n return hasParent(touch.target, target);\n });\n\n // collect touches\n if (type === INPUT_START) {\n i = 0;\n while (i < targetTouches.length) {\n targetIds[targetTouches[i].identifier] = true;\n i++;\n }\n }\n\n // filter changed touches to only contain touches that exist in the collected target ids\n i = 0;\n while (i < changedTouches.length) {\n if (targetIds[changedTouches[i].identifier]) {\n changedTargetTouches.push(changedTouches[i]);\n }\n\n // cleanup removed touches\n if (type & (INPUT_END | INPUT_CANCEL)) {\n delete targetIds[changedTouches[i].identifier];\n }\n i++;\n }\n\n if (!changedTargetTouches.length) {\n return;\n }\n\n return [\n // merge targetTouches with changedTargetTouches so it contains ALL touches, including 'end' and 'cancel'\n uniqueArray(targetTouches.concat(changedTargetTouches), 'identifier', true),\n changedTargetTouches\n ];\n}\n\n/**\n * Combined touch and mouse input\n *\n * Touch has a higher priority then mouse, and while touching no mouse events are allowed.\n * This because touch devices also emit mouse events while doing a touch.\n *\n * @constructor\n * @extends Input\n */\n\nvar DEDUP_TIMEOUT = 2500;\nvar DEDUP_DISTANCE = 25;\n\nfunction TouchMouseInput() {\n Input.apply(this, arguments);\n\n var handler = bindFn(this.handler, this);\n this.touch = new TouchInput(this.manager, handler);\n this.mouse = new MouseInput(this.manager, handler);\n\n this.primaryTouch = null;\n this.lastTouches = [];\n}\n\ninherit(TouchMouseInput, Input, {\n /**\n * handle mouse and touch events\n * @param {Hammer} manager\n * @param {String} inputEvent\n * @param {Object} inputData\n */\n handler: function TMEhandler(manager, inputEvent, inputData) {\n var isTouch = (inputData.pointerType == INPUT_TYPE_TOUCH),\n isMouse = (inputData.pointerType == INPUT_TYPE_MOUSE);\n\n if (isMouse && inputData.sourceCapabilities && inputData.sourceCapabilities.firesTouchEvents) {\n return;\n }\n\n // when we're in a touch event, record touches to de-dupe synthetic mouse event\n if (isTouch) {\n recordTouches.call(this, inputEvent, inputData);\n } else if (isMouse && isSyntheticEvent.call(this, inputData)) {\n return;\n }\n\n this.callback(manager, inputEvent, inputData);\n },\n\n /**\n * remove the event listeners\n */\n destroy: function destroy() {\n this.touch.destroy();\n this.mouse.destroy();\n }\n});\n\nfunction recordTouches(eventType, eventData) {\n if (eventType & INPUT_START) {\n this.primaryTouch = eventData.changedPointers[0].identifier;\n setLastTouch.call(this, eventData);\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n setLastTouch.call(this, eventData);\n }\n}\n\nfunction setLastTouch(eventData) {\n var touch = eventData.changedPointers[0];\n\n if (touch.identifier === this.primaryTouch) {\n var lastTouch = {x: touch.clientX, y: touch.clientY};\n this.lastTouches.push(lastTouch);\n var lts = this.lastTouches;\n var removeLastTouch = function() {\n var i = lts.indexOf(lastTouch);\n if (i > -1) {\n lts.splice(i, 1);\n }\n };\n setTimeout(removeLastTouch, DEDUP_TIMEOUT);\n }\n}\n\nfunction isSyntheticEvent(eventData) {\n var x = eventData.srcEvent.clientX, y = eventData.srcEvent.clientY;\n for (var i = 0; i < this.lastTouches.length; i++) {\n var t = this.lastTouches[i];\n var dx = Math.abs(x - t.x), dy = Math.abs(y - t.y);\n if (dx <= DEDUP_DISTANCE && dy <= DEDUP_DISTANCE) {\n return true;\n }\n }\n return false;\n}\n\nvar PREFIXED_TOUCH_ACTION = prefixed(TEST_ELEMENT.style, 'touchAction');\nvar NATIVE_TOUCH_ACTION = PREFIXED_TOUCH_ACTION !== undefined;\n\n// magical touchAction value\nvar TOUCH_ACTION_COMPUTE = 'compute';\nvar TOUCH_ACTION_AUTO = 'auto';\nvar TOUCH_ACTION_MANIPULATION = 'manipulation'; // not implemented\nvar TOUCH_ACTION_NONE = 'none';\nvar TOUCH_ACTION_PAN_X = 'pan-x';\nvar TOUCH_ACTION_PAN_Y = 'pan-y';\nvar TOUCH_ACTION_MAP = getTouchActionProps();\n\n/**\n * Touch Action\n * sets the touchAction property or uses the js alternative\n * @param {Manager} manager\n * @param {String} value\n * @constructor\n */\nfunction TouchAction(manager, value) {\n this.manager = manager;\n this.set(value);\n}\n\nTouchAction.prototype = {\n /**\n * set the touchAction value on the element or enable the polyfill\n * @param {String} value\n */\n set: function(value) {\n // find out the touch-action by the event handlers\n if (value == TOUCH_ACTION_COMPUTE) {\n value = this.compute();\n }\n\n if (NATIVE_TOUCH_ACTION && this.manager.element.style && TOUCH_ACTION_MAP[value]) {\n this.manager.element.style[PREFIXED_TOUCH_ACTION] = value;\n }\n this.actions = value.toLowerCase().trim();\n },\n\n /**\n * just re-set the touchAction value\n */\n update: function() {\n this.set(this.manager.options.touchAction);\n },\n\n /**\n * compute the value for the touchAction property based on the recognizer's settings\n * @returns {String} value\n */\n compute: function() {\n var actions = [];\n each(this.manager.recognizers, function(recognizer) {\n if (boolOrFn(recognizer.options.enable, [recognizer])) {\n actions = actions.concat(recognizer.getTouchAction());\n }\n });\n return cleanTouchActions(actions.join(' '));\n },\n\n /**\n * this method is called on each input cycle and provides the preventing of the browser behavior\n * @param {Object} input\n */\n preventDefaults: function(input) {\n var srcEvent = input.srcEvent;\n var direction = input.offsetDirection;\n\n // if the touch action did prevented once this session\n if (this.manager.session.prevented) {\n srcEvent.preventDefault();\n return;\n }\n\n var actions = this.actions;\n var hasNone = inStr(actions, TOUCH_ACTION_NONE) && !TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];\n\n if (hasNone) {\n //do not prevent defaults if this is a tap gesture\n\n var isTapPointer = input.pointers.length === 1;\n var isTapMovement = input.distance < 2;\n var isTapTouchTime = input.deltaTime < 250;\n\n if (isTapPointer && isTapMovement && isTapTouchTime) {\n return;\n }\n }\n\n if (hasPanX && hasPanY) {\n // `pan-x pan-y` means browser handles all scrolling/panning, do not prevent\n return;\n }\n\n if (hasNone ||\n (hasPanY && direction & DIRECTION_HORIZONTAL) ||\n (hasPanX && direction & DIRECTION_VERTICAL)) {\n return this.preventSrc(srcEvent);\n }\n },\n\n /**\n * call preventDefault to prevent the browser's default behavior (scrolling in most cases)\n * @param {Object} srcEvent\n */\n preventSrc: function(srcEvent) {\n this.manager.session.prevented = true;\n srcEvent.preventDefault();\n }\n};\n\n/**\n * when the touchActions are collected they are not a valid value, so we need to clean things up. *\n * @param {String} actions\n * @returns {*}\n */\nfunction cleanTouchActions(actions) {\n // none\n if (inStr(actions, TOUCH_ACTION_NONE)) {\n return TOUCH_ACTION_NONE;\n }\n\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X);\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y);\n\n // if both pan-x and pan-y are set (different recognizers\n // for different directions, e.g. horizontal pan but vertical swipe?)\n // we need none (as otherwise with pan-x pan-y combined none of these\n // recognizers will work, since the browser would handle all panning\n if (hasPanX && hasPanY) {\n return TOUCH_ACTION_NONE;\n }\n\n // pan-x OR pan-y\n if (hasPanX || hasPanY) {\n return hasPanX ? TOUCH_ACTION_PAN_X : TOUCH_ACTION_PAN_Y;\n }\n\n // manipulation\n if (inStr(actions, TOUCH_ACTION_MANIPULATION)) {\n return TOUCH_ACTION_MANIPULATION;\n }\n\n return TOUCH_ACTION_AUTO;\n}\n\nfunction getTouchActionProps() {\n if (!NATIVE_TOUCH_ACTION) {\n return false;\n }\n var touchMap = {};\n var cssSupports = window.CSS && window.CSS.supports;\n ['auto', 'manipulation', 'pan-y', 'pan-x', 'pan-x pan-y', 'none'].forEach(function(val) {\n\n // If css.supports is not supported but there is native touch-action assume it supports\n // all values. This is the case for IE 10 and 11.\n touchMap[val] = cssSupports ? window.CSS.supports('touch-action', val) : true;\n });\n return touchMap;\n}\n\n/**\n * Recognizer flow explained; *\n * All recognizers have the initial state of POSSIBLE when a input session starts.\n * The definition of a input session is from the first input until the last input, with all it's movement in it. *\n * Example session for mouse-input: mousedown -> mousemove -> mouseup\n *\n * On each recognizing cycle (see Manager.recognize) the .recognize() method is executed\n * which determines with state it should be.\n *\n * If the recognizer has the state FAILED, CANCELLED or RECOGNIZED (equals ENDED), it is reset to\n * POSSIBLE to give it another change on the next cycle.\n *\n * Possible\n * |\n * +-----+---------------+\n * | |\n * +-----+-----+ |\n * | | |\n * Failed Cancelled |\n * +-------+------+\n * | |\n * Recognized Began\n * |\n * Changed\n * |\n * Ended/Recognized\n */\nvar STATE_POSSIBLE = 1;\nvar STATE_BEGAN = 2;\nvar STATE_CHANGED = 4;\nvar STATE_ENDED = 8;\nvar STATE_RECOGNIZED = STATE_ENDED;\nvar STATE_CANCELLED = 16;\nvar STATE_FAILED = 32;\n\n/**\n * Recognizer\n * Every recognizer needs to extend from this class.\n * @constructor\n * @param {Object} options\n */\nfunction Recognizer(options) {\n this.options = assign({}, this.defaults, options || {});\n\n this.id = uniqueId();\n\n this.manager = null;\n\n // default is enable true\n this.options.enable = ifUndefined(this.options.enable, true);\n\n this.state = STATE_POSSIBLE;\n\n this.simultaneous = {};\n this.requireFail = [];\n}\n\nRecognizer.prototype = {\n /**\n * @virtual\n * @type {Object}\n */\n defaults: {},\n\n /**\n * set options\n * @param {Object} options\n * @return {Recognizer}\n */\n set: function(options) {\n assign(this.options, options);\n\n // also update the touchAction, in case something changed about the directions/enabled state\n this.manager && this.manager.touchAction.update();\n return this;\n },\n\n /**\n * recognize simultaneous with an other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n recognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'recognizeWith', this)) {\n return this;\n }\n\n var simultaneous = this.simultaneous;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (!simultaneous[otherRecognizer.id]) {\n simultaneous[otherRecognizer.id] = otherRecognizer;\n otherRecognizer.recognizeWith(this);\n }\n return this;\n },\n\n /**\n * drop the simultaneous link. it doesnt remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRecognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRecognizeWith', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n delete this.simultaneous[otherRecognizer.id];\n return this;\n },\n\n /**\n * recognizer can only run when an other is failing\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n requireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'requireFailure', this)) {\n return this;\n }\n\n var requireFail = this.requireFail;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (inArray(requireFail, otherRecognizer) === -1) {\n requireFail.push(otherRecognizer);\n otherRecognizer.requireFailure(this);\n }\n return this;\n },\n\n /**\n * drop the requireFailure link. it does not remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRequireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRequireFailure', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n var index = inArray(this.requireFail, otherRecognizer);\n if (index > -1) {\n this.requireFail.splice(index, 1);\n }\n return this;\n },\n\n /**\n * has require failures boolean\n * @returns {boolean}\n */\n hasRequireFailures: function() {\n return this.requireFail.length > 0;\n },\n\n /**\n * if the recognizer can recognize simultaneous with an other recognizer\n * @param {Recognizer} otherRecognizer\n * @returns {Boolean}\n */\n canRecognizeWith: function(otherRecognizer) {\n return !!this.simultaneous[otherRecognizer.id];\n },\n\n /**\n * You should use `tryEmit` instead of `emit` directly to check\n * that all the needed recognizers has failed before emitting.\n * @param {Object} input\n */\n emit: function(input) {\n var self = this;\n var state = this.state;\n\n function emit(event) {\n self.manager.emit(event, input);\n }\n\n // 'panstart' and 'panmove'\n if (state < STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n\n emit(self.options.event); // simple 'eventName' events\n\n if (input.additionalEvent) { // additional event(panleft, panright, pinchin, pinchout...)\n emit(input.additionalEvent);\n }\n\n // panend and pancancel\n if (state >= STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n },\n\n /**\n * Check that all the require failure recognizers has failed,\n * if true, it emits a gesture event,\n * otherwise, setup the state to FAILED.\n * @param {Object} input\n */\n tryEmit: function(input) {\n if (this.canEmit()) {\n return this.emit(input);\n }\n // it's failing anyway\n this.state = STATE_FAILED;\n },\n\n /**\n * can we emit?\n * @returns {boolean}\n */\n canEmit: function() {\n var i = 0;\n while (i < this.requireFail.length) {\n if (!(this.requireFail[i].state & (STATE_FAILED | STATE_POSSIBLE))) {\n return false;\n }\n i++;\n }\n return true;\n },\n\n /**\n * update the recognizer\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n // make a new copy of the inputData\n // so we can change the inputData without messing up the other recognizers\n var inputDataClone = assign({}, inputData);\n\n // is is enabled and allow recognizing?\n if (!boolOrFn(this.options.enable, [this, inputDataClone])) {\n this.reset();\n this.state = STATE_FAILED;\n return;\n }\n\n // reset when we've reached the end\n if (this.state & (STATE_RECOGNIZED | STATE_CANCELLED | STATE_FAILED)) {\n this.state = STATE_POSSIBLE;\n }\n\n this.state = this.process(inputDataClone);\n\n // the recognizer has recognized a gesture\n // so trigger an event\n if (this.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED | STATE_CANCELLED)) {\n this.tryEmit(inputDataClone);\n }\n },\n\n /**\n * return the state of the recognizer\n * the actual recognizing happens in this method\n * @virtual\n * @param {Object} inputData\n * @returns {Const} STATE\n */\n process: function(inputData) { }, // jshint ignore:line\n\n /**\n * return the preferred touch-action\n * @virtual\n * @returns {Array}\n */\n getTouchAction: function() { },\n\n /**\n * called when the gesture isn't allowed to recognize\n * like when another is being recognized or it is disabled\n * @virtual\n */\n reset: function() { }\n};\n\n/**\n * get a usable string, used as event postfix\n * @param {Const} state\n * @returns {String} state\n */\nfunction stateStr(state) {\n if (state & STATE_CANCELLED) {\n return 'cancel';\n } else if (state & STATE_ENDED) {\n return 'end';\n } else if (state & STATE_CHANGED) {\n return 'move';\n } else if (state & STATE_BEGAN) {\n return 'start';\n }\n return '';\n}\n\n/**\n * direction cons to string\n * @param {Const} direction\n * @returns {String}\n */\nfunction directionStr(direction) {\n if (direction == DIRECTION_DOWN) {\n return 'down';\n } else if (direction == DIRECTION_UP) {\n return 'up';\n } else if (direction == DIRECTION_LEFT) {\n return 'left';\n } else if (direction == DIRECTION_RIGHT) {\n return 'right';\n }\n return '';\n}\n\n/**\n * get a recognizer by name if it is bound to a manager\n * @param {Recognizer|String} otherRecognizer\n * @param {Recognizer} recognizer\n * @returns {Recognizer}\n */\nfunction getRecognizerByNameIfManager(otherRecognizer, recognizer) {\n var manager = recognizer.manager;\n if (manager) {\n return manager.get(otherRecognizer);\n }\n return otherRecognizer;\n}\n\n/**\n * This recognizer is just used as a base for the simple attribute recognizers.\n * @constructor\n * @extends Recognizer\n */\nfunction AttrRecognizer() {\n Recognizer.apply(this, arguments);\n}\n\ninherit(AttrRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof AttrRecognizer\n */\n defaults: {\n /**\n * @type {Number}\n * @default 1\n */\n pointers: 1\n },\n\n /**\n * Used to check if it the recognizer receives valid input, like input.distance > 10.\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {Boolean} recognized\n */\n attrTest: function(input) {\n var optionPointers = this.options.pointers;\n return optionPointers === 0 || input.pointers.length === optionPointers;\n },\n\n /**\n * Process the input and return the state for the recognizer\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {*} State\n */\n process: function(input) {\n var state = this.state;\n var eventType = input.eventType;\n\n var isRecognized = state & (STATE_BEGAN | STATE_CHANGED);\n var isValid = this.attrTest(input);\n\n // on cancel input and we've recognized before, return STATE_CANCELLED\n if (isRecognized && (eventType & INPUT_CANCEL || !isValid)) {\n return state | STATE_CANCELLED;\n } else if (isRecognized || isValid) {\n if (eventType & INPUT_END) {\n return state | STATE_ENDED;\n } else if (!(state & STATE_BEGAN)) {\n return STATE_BEGAN;\n }\n return state | STATE_CHANGED;\n }\n return STATE_FAILED;\n }\n});\n\n/**\n * Pan\n * Recognized when the pointer is down and moved in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PanRecognizer() {\n AttrRecognizer.apply(this, arguments);\n\n this.pX = null;\n this.pY = null;\n}\n\ninherit(PanRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PanRecognizer\n */\n defaults: {\n event: 'pan',\n threshold: 10,\n pointers: 1,\n direction: DIRECTION_ALL\n },\n\n getTouchAction: function() {\n var direction = this.options.direction;\n var actions = [];\n if (direction & DIRECTION_HORIZONTAL) {\n actions.push(TOUCH_ACTION_PAN_Y);\n }\n if (direction & DIRECTION_VERTICAL) {\n actions.push(TOUCH_ACTION_PAN_X);\n }\n return actions;\n },\n\n directionTest: function(input) {\n var options = this.options;\n var hasMoved = true;\n var distance = input.distance;\n var direction = input.direction;\n var x = input.deltaX;\n var y = input.deltaY;\n\n // lock to axis?\n if (!(direction & options.direction)) {\n if (options.direction & DIRECTION_HORIZONTAL) {\n direction = (x === 0) ? DIRECTION_NONE : (x < 0) ? DIRECTION_LEFT : DIRECTION_RIGHT;\n hasMoved = x != this.pX;\n distance = Math.abs(input.deltaX);\n } else {\n direction = (y === 0) ? DIRECTION_NONE : (y < 0) ? DIRECTION_UP : DIRECTION_DOWN;\n hasMoved = y != this.pY;\n distance = Math.abs(input.deltaY);\n }\n }\n input.direction = direction;\n return hasMoved && distance > options.threshold && direction & options.direction;\n },\n\n attrTest: function(input) {\n return AttrRecognizer.prototype.attrTest.call(this, input) &&\n (this.state & STATE_BEGAN || (!(this.state & STATE_BEGAN) && this.directionTest(input)));\n },\n\n emit: function(input) {\n\n this.pX = input.deltaX;\n this.pY = input.deltaY;\n\n var direction = directionStr(input.direction);\n\n if (direction) {\n input.additionalEvent = this.options.event + direction;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Pinch\n * Recognized when two or more pointers are moving toward (zoom-in) or away from each other (zoom-out).\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PinchRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(PinchRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'pinch',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.scale - 1) > this.options.threshold || this.state & STATE_BEGAN);\n },\n\n emit: function(input) {\n if (input.scale !== 1) {\n var inOut = input.scale < 1 ? 'in' : 'out';\n input.additionalEvent = this.options.event + inOut;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Press\n * Recognized when the pointer is down for x ms without any movement.\n * @constructor\n * @extends Recognizer\n */\nfunction PressRecognizer() {\n Recognizer.apply(this, arguments);\n\n this._timer = null;\n this._input = null;\n}\n\ninherit(PressRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PressRecognizer\n */\n defaults: {\n event: 'press',\n pointers: 1,\n time: 251, // minimal time of the pointer to be pressed\n threshold: 9 // a minimal movement is ok, but keep it low\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_AUTO];\n },\n\n process: function(input) {\n var options = this.options;\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTime = input.deltaTime > options.time;\n\n this._input = input;\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (!validMovement || !validPointers || (input.eventType & (INPUT_END | INPUT_CANCEL) && !validTime)) {\n this.reset();\n } else if (input.eventType & INPUT_START) {\n this.reset();\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.time, this);\n } else if (input.eventType & INPUT_END) {\n return STATE_RECOGNIZED;\n }\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function(input) {\n if (this.state !== STATE_RECOGNIZED) {\n return;\n }\n\n if (input && (input.eventType & INPUT_END)) {\n this.manager.emit(this.options.event + 'up', input);\n } else {\n this._input.timeStamp = now();\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Rotate\n * Recognized when two or more pointer are moving in a circular motion.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction RotateRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(RotateRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof RotateRecognizer\n */\n defaults: {\n event: 'rotate',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.rotation) > this.options.threshold || this.state & STATE_BEGAN);\n }\n});\n\n/**\n * Swipe\n * Recognized when the pointer is moving fast (velocity), with enough distance in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction SwipeRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(SwipeRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof SwipeRecognizer\n */\n defaults: {\n event: 'swipe',\n threshold: 10,\n velocity: 0.3,\n direction: DIRECTION_HORIZONTAL | DIRECTION_VERTICAL,\n pointers: 1\n },\n\n getTouchAction: function() {\n return PanRecognizer.prototype.getTouchAction.call(this);\n },\n\n attrTest: function(input) {\n var direction = this.options.direction;\n var velocity;\n\n if (direction & (DIRECTION_HORIZONTAL | DIRECTION_VERTICAL)) {\n velocity = input.overallVelocity;\n } else if (direction & DIRECTION_HORIZONTAL) {\n velocity = input.overallVelocityX;\n } else if (direction & DIRECTION_VERTICAL) {\n velocity = input.overallVelocityY;\n }\n\n return this._super.attrTest.call(this, input) &&\n direction & input.offsetDirection &&\n input.distance > this.options.threshold &&\n input.maxPointers == this.options.pointers &&\n abs(velocity) > this.options.velocity && input.eventType & INPUT_END;\n },\n\n emit: function(input) {\n var direction = directionStr(input.offsetDirection);\n if (direction) {\n this.manager.emit(this.options.event + direction, input);\n }\n\n this.manager.emit(this.options.event, input);\n }\n});\n\n/**\n * A tap is ecognized when the pointer is doing a small tap/click. Multiple taps are recognized if they occur\n * between the given interval and position. The delay option can be used to recognize multi-taps without firing\n * a single tap.\n *\n * The eventData from the emitted event contains the property `tapCount`, which contains the amount of\n * multi-taps being recognized.\n * @constructor\n * @extends Recognizer\n */\nfunction TapRecognizer() {\n Recognizer.apply(this, arguments);\n\n // previous time and center,\n // used for tap counting\n this.pTime = false;\n this.pCenter = false;\n\n this._timer = null;\n this._input = null;\n this.count = 0;\n}\n\ninherit(TapRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'tap',\n pointers: 1,\n taps: 1,\n interval: 300, // max time between the multi-tap taps\n time: 250, // max time of the pointer to be down (like finger on the screen)\n threshold: 9, // a minimal movement is ok, but keep it low\n posThreshold: 10 // a multi-tap can be a bit off the initial position\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_MANIPULATION];\n },\n\n process: function(input) {\n var options = this.options;\n\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTouchTime = input.deltaTime < options.time;\n\n this.reset();\n\n if ((input.eventType & INPUT_START) && (this.count === 0)) {\n return this.failTimeout();\n }\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (validMovement && validTouchTime && validPointers) {\n if (input.eventType != INPUT_END) {\n return this.failTimeout();\n }\n\n var validInterval = this.pTime ? (input.timeStamp - this.pTime < options.interval) : true;\n var validMultiTap = !this.pCenter || getDistance(this.pCenter, input.center) < options.posThreshold;\n\n this.pTime = input.timeStamp;\n this.pCenter = input.center;\n\n if (!validMultiTap || !validInterval) {\n this.count = 1;\n } else {\n this.count += 1;\n }\n\n this._input = input;\n\n // if tap count matches we have recognized it,\n // else it has began recognizing...\n var tapCount = this.count % options.taps;\n if (tapCount === 0) {\n // no failing requirements, immediately trigger the tap event\n // or wait as long as the multitap interval to trigger\n if (!this.hasRequireFailures()) {\n return STATE_RECOGNIZED;\n } else {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.interval, this);\n return STATE_BEGAN;\n }\n }\n }\n return STATE_FAILED;\n },\n\n failTimeout: function() {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_FAILED;\n }, this.options.interval, this);\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function() {\n if (this.state == STATE_RECOGNIZED) {\n this._input.tapCount = this.count;\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Simple way to create a manager with a default set of recognizers.\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Hammer(element, options) {\n options = options || {};\n options.recognizers = ifUndefined(options.recognizers, Hammer.defaults.preset);\n return new Manager(element, options);\n}\n\n/**\n * @const {string}\n */\nHammer.VERSION = '2.0.7';\n\n/**\n * default settings\n * @namespace\n */\nHammer.defaults = {\n /**\n * set if DOM events are being triggered.\n * But this is slower and unused by simple implementations, so disabled by default.\n * @type {Boolean}\n * @default false\n */\n domEvents: false,\n\n /**\n * The value for the touchAction property/fallback.\n * When set to `compute` it will magically set the correct value based on the added recognizers.\n * @type {String}\n * @default compute\n */\n touchAction: TOUCH_ACTION_COMPUTE,\n\n /**\n * @type {Boolean}\n * @default true\n */\n enable: true,\n\n /**\n * EXPERIMENTAL FEATURE -- can be removed/changed\n * Change the parent input target element.\n * If Null, then it is being set the to main element.\n * @type {Null|EventTarget}\n * @default null\n */\n inputTarget: null,\n\n /**\n * force an input class\n * @type {Null|Function}\n * @default null\n */\n inputClass: null,\n\n /**\n * Default recognizer setup when calling `Hammer()`\n * When creating a new Manager these will be skipped.\n * @type {Array}\n */\n preset: [\n // RecognizerClass, options, [recognizeWith, ...], [requireFailure, ...]\n [RotateRecognizer, {enable: false}],\n [PinchRecognizer, {enable: false}, ['rotate']],\n [SwipeRecognizer, {direction: DIRECTION_HORIZONTAL}],\n [PanRecognizer, {direction: DIRECTION_HORIZONTAL}, ['swipe']],\n [TapRecognizer],\n [TapRecognizer, {event: 'doubletap', taps: 2}, ['tap']],\n [PressRecognizer]\n ],\n\n /**\n * Some CSS properties can be used to improve the working of Hammer.\n * Add them to this method and they will be set when creating a new Manager.\n * @namespace\n */\n cssProps: {\n /**\n * Disables text selection to improve the dragging gesture. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userSelect: 'none',\n\n /**\n * Disable the Windows Phone grippers when pressing an element.\n * @type {String}\n * @default 'none'\n */\n touchSelect: 'none',\n\n /**\n * Disables the default callout shown when you touch and hold a touch target.\n * On iOS, when you touch and hold a touch target such as a link, Safari displays\n * a callout containing information about the link. This property allows you to disable that callout.\n * @type {String}\n * @default 'none'\n */\n touchCallout: 'none',\n\n /**\n * Specifies whether zooming is enabled. Used by IE10>\n * @type {String}\n * @default 'none'\n */\n contentZooming: 'none',\n\n /**\n * Specifies that an entire element should be draggable instead of its contents. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userDrag: 'none',\n\n /**\n * Overrides the highlight color shown when the user taps a link or a JavaScript\n * clickable element in iOS. This property obeys the alpha value, if specified.\n * @type {String}\n * @default 'rgba(0,0,0,0)'\n */\n tapHighlightColor: 'rgba(0,0,0,0)'\n }\n};\n\nvar STOP = 1;\nvar FORCED_STOP = 2;\n\n/**\n * Manager\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Manager(element, options) {\n this.options = assign({}, Hammer.defaults, options || {});\n\n this.options.inputTarget = this.options.inputTarget || element;\n\n this.handlers = {};\n this.session = {};\n this.recognizers = [];\n this.oldCssProps = {};\n\n this.element = element;\n this.input = createInputInstance(this);\n this.touchAction = new TouchAction(this, this.options.touchAction);\n\n toggleCssProps(this, true);\n\n each(this.options.recognizers, function(item) {\n var recognizer = this.add(new (item[0])(item[1]));\n item[2] && recognizer.recognizeWith(item[2]);\n item[3] && recognizer.requireFailure(item[3]);\n }, this);\n}\n\nManager.prototype = {\n /**\n * set options\n * @param {Object} options\n * @returns {Manager}\n */\n set: function(options) {\n assign(this.options, options);\n\n // Options that need a little more setup\n if (options.touchAction) {\n this.touchAction.update();\n }\n if (options.inputTarget) {\n // Clean up existing event listeners and reinitialize\n this.input.destroy();\n this.input.target = options.inputTarget;\n this.input.init();\n }\n return this;\n },\n\n /**\n * stop recognizing for this session.\n * This session will be discarded, when a new [input]start event is fired.\n * When forced, the recognizer cycle is stopped immediately.\n * @param {Boolean} [force]\n */\n stop: function(force) {\n this.session.stopped = force ? FORCED_STOP : STOP;\n },\n\n /**\n * run the recognizers!\n * called by the inputHandler function on every movement of the pointers (touches)\n * it walks through all the recognizers and tries to detect the gesture that is being made\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n var session = this.session;\n if (session.stopped) {\n return;\n }\n\n // run the touch-action polyfill\n this.touchAction.preventDefaults(inputData);\n\n var recognizer;\n var recognizers = this.recognizers;\n\n // this holds the recognizer that is being recognized.\n // so the recognizer's state needs to be BEGAN, CHANGED, ENDED or RECOGNIZED\n // if no recognizer is detecting a thing, it is set to `null`\n var curRecognizer = session.curRecognizer;\n\n // reset when the last recognizer is recognized\n // or when we're in a new session\n if (!curRecognizer || (curRecognizer && curRecognizer.state & STATE_RECOGNIZED)) {\n curRecognizer = session.curRecognizer = null;\n }\n\n var i = 0;\n while (i < recognizers.length) {\n recognizer = recognizers[i];\n\n // find out if we are allowed try to recognize the input for this one.\n // 1. allow if the session is NOT forced stopped (see the .stop() method)\n // 2. allow if we still haven't recognized a gesture in this session, or the this recognizer is the one\n // that is being recognized.\n // 3. allow if the recognizer is allowed to run simultaneous with the current recognized recognizer.\n // this can be setup with the `recognizeWith()` method on the recognizer.\n if (session.stopped !== FORCED_STOP && ( // 1\n !curRecognizer || recognizer == curRecognizer || // 2\n recognizer.canRecognizeWith(curRecognizer))) { // 3\n recognizer.recognize(inputData);\n } else {\n recognizer.reset();\n }\n\n // if the recognizer has been recognizing the input as a valid gesture, we want to store this one as the\n // current active recognizer. but only if we don't already have an active recognizer\n if (!curRecognizer && recognizer.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED)) {\n curRecognizer = session.curRecognizer = recognizer;\n }\n i++;\n }\n },\n\n /**\n * get a recognizer by its event name.\n * @param {Recognizer|String} recognizer\n * @returns {Recognizer|Null}\n */\n get: function(recognizer) {\n if (recognizer instanceof Recognizer) {\n return recognizer;\n }\n\n var recognizers = this.recognizers;\n for (var i = 0; i < recognizers.length; i++) {\n if (recognizers[i].options.event == recognizer) {\n return recognizers[i];\n }\n }\n return null;\n },\n\n /**\n * add a recognizer to the manager\n * existing recognizers with the same event name will be removed\n * @param {Recognizer} recognizer\n * @returns {Recognizer|Manager}\n */\n add: function(recognizer) {\n if (invokeArrayArg(recognizer, 'add', this)) {\n return this;\n }\n\n // remove existing\n var existing = this.get(recognizer.options.event);\n if (existing) {\n this.remove(existing);\n }\n\n this.recognizers.push(recognizer);\n recognizer.manager = this;\n\n this.touchAction.update();\n return recognizer;\n },\n\n /**\n * remove a recognizer by name or instance\n * @param {Recognizer|String} recognizer\n * @returns {Manager}\n */\n remove: function(recognizer) {\n if (invokeArrayArg(recognizer, 'remove', this)) {\n return this;\n }\n\n recognizer = this.get(recognizer);\n\n // let's make sure this recognizer exists\n if (recognizer) {\n var recognizers = this.recognizers;\n var index = inArray(recognizers, recognizer);\n\n if (index !== -1) {\n recognizers.splice(index, 1);\n this.touchAction.update();\n }\n }\n\n return this;\n },\n\n /**\n * bind event\n * @param {String} events\n * @param {Function} handler\n * @returns {EventEmitter} this\n */\n on: function(events, handler) {\n if (events === undefined) {\n return;\n }\n if (handler === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n handlers[event] = handlers[event] || [];\n handlers[event].push(handler);\n });\n return this;\n },\n\n /**\n * unbind event, leave emit blank to remove all handlers\n * @param {String} events\n * @param {Function} [handler]\n * @returns {EventEmitter} this\n */\n off: function(events, handler) {\n if (events === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n if (!handler) {\n delete handlers[event];\n } else {\n handlers[event] && handlers[event].splice(inArray(handlers[event], handler), 1);\n }\n });\n return this;\n },\n\n /**\n * emit event to the listeners\n * @param {String} event\n * @param {Object} data\n */\n emit: function(event, data) {\n // we also want to trigger dom events\n if (this.options.domEvents) {\n triggerDomEvent(event, data);\n }\n\n // no handlers, so skip it all\n var handlers = this.handlers[event] && this.handlers[event].slice();\n if (!handlers || !handlers.length) {\n return;\n }\n\n data.type = event;\n data.preventDefault = function() {\n data.srcEvent.preventDefault();\n };\n\n var i = 0;\n while (i < handlers.length) {\n handlers[i](data);\n i++;\n }\n },\n\n /**\n * destroy the manager and unbinds all events\n * it doesn't unbind dom events, that is the user own responsibility\n */\n destroy: function() {\n this.element && toggleCssProps(this, false);\n\n this.handlers = {};\n this.session = {};\n this.input.destroy();\n this.element = null;\n }\n};\n\n/**\n * add/remove the css properties as defined in manager.options.cssProps\n * @param {Manager} manager\n * @param {Boolean} add\n */\nfunction toggleCssProps(manager, add) {\n var element = manager.element;\n if (!element.style) {\n return;\n }\n var prop;\n each(manager.options.cssProps, function(value, name) {\n prop = prefixed(element.style, name);\n if (add) {\n manager.oldCssProps[prop] = element.style[prop];\n element.style[prop] = value;\n } else {\n element.style[prop] = manager.oldCssProps[prop] || '';\n }\n });\n if (!add) {\n manager.oldCssProps = {};\n }\n}\n\n/**\n * trigger dom event\n * @param {String} event\n * @param {Object} data\n */\nfunction triggerDomEvent(event, data) {\n var gestureEvent = document.createEvent('Event');\n gestureEvent.initEvent(event, true, true);\n gestureEvent.gesture = data;\n data.target.dispatchEvent(gestureEvent);\n}\n\nassign(Hammer, {\n INPUT_START: INPUT_START,\n INPUT_MOVE: INPUT_MOVE,\n INPUT_END: INPUT_END,\n INPUT_CANCEL: INPUT_CANCEL,\n\n STATE_POSSIBLE: STATE_POSSIBLE,\n STATE_BEGAN: STATE_BEGAN,\n STATE_CHANGED: STATE_CHANGED,\n STATE_ENDED: STATE_ENDED,\n STATE_RECOGNIZED: STATE_RECOGNIZED,\n STATE_CANCELLED: STATE_CANCELLED,\n STATE_FAILED: STATE_FAILED,\n\n DIRECTION_NONE: DIRECTION_NONE,\n DIRECTION_LEFT: DIRECTION_LEFT,\n DIRECTION_RIGHT: DIRECTION_RIGHT,\n DIRECTION_UP: DIRECTION_UP,\n DIRECTION_DOWN: DIRECTION_DOWN,\n DIRECTION_HORIZONTAL: DIRECTION_HORIZONTAL,\n DIRECTION_VERTICAL: DIRECTION_VERTICAL,\n DIRECTION_ALL: DIRECTION_ALL,\n\n Manager: Manager,\n Input: Input,\n TouchAction: TouchAction,\n\n TouchInput: TouchInput,\n MouseInput: MouseInput,\n PointerEventInput: PointerEventInput,\n TouchMouseInput: TouchMouseInput,\n SingleTouchInput: SingleTouchInput,\n\n Recognizer: Recognizer,\n AttrRecognizer: AttrRecognizer,\n Tap: TapRecognizer,\n Pan: PanRecognizer,\n Swipe: SwipeRecognizer,\n Pinch: PinchRecognizer,\n Rotate: RotateRecognizer,\n Press: PressRecognizer,\n\n on: addEventListeners,\n off: removeEventListeners,\n each: each,\n merge: merge,\n extend: extend,\n assign: assign,\n inherit: inherit,\n bindFn: bindFn,\n prefixed: prefixed\n});\n\n// this prevents errors when Hammer is loaded in the presence of an AMD\n// style loader but by script tag, not by the loader.\nvar freeGlobal = (typeof window !== 'undefined' ? window : (typeof self !== 'undefined' ? self : {})); // jshint ignore:line\nfreeGlobal.Hammer = Hammer;\n\nif (typeof define === 'function' && define.amd) {\n define(function() {\n return Hammer;\n });\n} else if (typeof module != 'undefined' && module.exports) {\n module.exports = Hammer;\n} else {\n window[exportName] = Hammer;\n}\n\n})(window, document, 'Hammer');\n","'use strict';\n\nvar origSymbol = global.Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar hasSymbols = require('has-symbols/shams');\n\nmodule.exports = function hasToStringTagShams() {\n\treturn hasSymbols() && !!Symbol.toStringTag;\n};\n","'use strict';\n\nvar bind = require('function-bind');\n\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","'use strict';\n\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\nvar toStr = Object.prototype.toString;\n\nvar isStandardArguments = function isArguments(value) {\n\tif (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {\n\t\treturn false;\n\t}\n\treturn toStr.call(value) === '[object Arguments]';\n};\n\nvar isLegacyArguments = function isArguments(value) {\n\tif (isStandardArguments(value)) {\n\t\treturn true;\n\t}\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.length === 'number' &&\n\t\tvalue.length >= 0 &&\n\t\ttoStr.call(value) !== '[object Array]' &&\n\t\ttoStr.call(value.callee) === '[object Function]';\n};\n\nvar supportsStandardArguments = (function () {\n\treturn isStandardArguments(arguments);\n}());\n\nisStandardArguments.isLegacyArguments = isLegacyArguments; // for tests\n\nmodule.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\nvar fnToStr = Function.prototype.toString;\nvar isFnRegex = /^\\s*(?:function)?\\*/;\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar getProto = Object.getPrototypeOf;\nvar getGeneratorFunc = function () { // eslint-disable-line consistent-return\n\tif (!hasToStringTag) {\n\t\treturn false;\n\t}\n\ttry {\n\t\treturn Function('return function*() {}')();\n\t} catch (e) {\n\t}\n};\nvar GeneratorFunction;\n\nmodule.exports = function isGeneratorFunction(fn) {\n\tif (typeof fn !== 'function') {\n\t\treturn false;\n\t}\n\tif (isFnRegex.test(fnToStr.call(fn))) {\n\t\treturn true;\n\t}\n\tif (!hasToStringTag) {\n\t\tvar str = toStr.call(fn);\n\t\treturn str === '[object GeneratorFunction]';\n\t}\n\tif (!getProto) {\n\t\treturn false;\n\t}\n\tif (typeof GeneratorFunction === 'undefined') {\n\t\tvar generatorFunc = getGeneratorFunc();\n\t\tGeneratorFunction = generatorFunc ? getProto(generatorFunc) : false;\n\t}\n\treturn getProto(fn) === GeneratorFunction;\n};\n","'use strict';\n\nvar forEach = require('foreach');\nvar availableTypedArrays = require('available-typed-arrays');\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\nvar hasToStringTag = require('has-tostringtag/shams')();\n\nvar g = typeof globalThis === 'undefined' ? global : globalThis;\nvar typedArrays = availableTypedArrays();\n\nvar $indexOf = callBound('Array.prototype.indexOf', true) || function indexOf(array, value) {\n\tfor (var i = 0; i < array.length; i += 1) {\n\t\tif (array[i] === value) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n};\nvar $slice = callBound('String.prototype.slice');\nvar toStrTags = {};\nvar gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor');\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\nif (hasToStringTag && gOPD && getPrototypeOf) {\n\tforEach(typedArrays, function (typedArray) {\n\t\tvar arr = new g[typedArray]();\n\t\tif (Symbol.toStringTag in arr) {\n\t\t\tvar proto = getPrototypeOf(arr);\n\t\t\tvar descriptor = gOPD(proto, Symbol.toStringTag);\n\t\t\tif (!descriptor) {\n\t\t\t\tvar superProto = getPrototypeOf(proto);\n\t\t\t\tdescriptor = gOPD(superProto, Symbol.toStringTag);\n\t\t\t}\n\t\t\ttoStrTags[typedArray] = descriptor.get;\n\t\t}\n\t});\n}\n\nvar tryTypedArrays = function tryAllTypedArrays(value) {\n\tvar anyTrue = false;\n\tforEach(toStrTags, function (getter, typedArray) {\n\t\tif (!anyTrue) {\n\t\t\ttry {\n\t\t\t\tanyTrue = getter.call(value) === typedArray;\n\t\t\t} catch (e) { /**/ }\n\t\t}\n\t});\n\treturn anyTrue;\n};\n\nmodule.exports = function isTypedArray(value) {\n\tif (!value || typeof value !== 'object') { return false; }\n\tif (!hasToStringTag || !(Symbol.toStringTag in value)) {\n\t\tvar tag = $slice($toString(value), 8, -1);\n\t\treturn $indexOf(typedArrays, tag) > -1;\n\t}\n\tif (!gOPD) { return false; }\n\treturn tryTypedArrays(value);\n};\n","/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n;(function() {\n\n /** Used as a safe reference for `undefined` in pre-ES5 environments. */\n var undefined;\n\n /** Used as the semantic version number. */\n var VERSION = '4.17.21';\n\n /** Used as the size to enable large array optimizations. */\n var LARGE_ARRAY_SIZE = 200;\n\n /** Error message constants. */\n var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.',\n FUNC_ERROR_TEXT = 'Expected a function',\n INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n /** Used to stand-in for `undefined` hash values. */\n var HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n /** Used as the maximum memoize cache size. */\n var MAX_MEMOIZE_SIZE = 500;\n\n /** Used as the internal argument placeholder. */\n var PLACEHOLDER = '__lodash_placeholder__';\n\n /** Used to compose bitmasks for cloning. */\n var CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n /** Used to compose bitmasks for value comparisons. */\n var COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n /** Used to compose bitmasks for function metadata. */\n var WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_BOUND_FLAG = 4,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64,\n WRAP_ARY_FLAG = 128,\n WRAP_REARG_FLAG = 256,\n WRAP_FLIP_FLAG = 512;\n\n /** Used as default options for `_.truncate`. */\n var DEFAULT_TRUNC_LENGTH = 30,\n DEFAULT_TRUNC_OMISSION = '...';\n\n /** Used to detect hot functions by number of calls within a span of milliseconds. */\n var HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n /** Used to indicate the type of lazy iteratees. */\n var LAZY_FILTER_FLAG = 1,\n LAZY_MAP_FLAG = 2,\n LAZY_WHILE_FLAG = 3;\n\n /** Used as references for various `Number` constants. */\n var INFINITY = 1 / 0,\n MAX_SAFE_INTEGER = 9007199254740991,\n MAX_INTEGER = 1.7976931348623157e+308,\n NAN = 0 / 0;\n\n /** Used as references for the maximum length and index of an array. */\n var MAX_ARRAY_LENGTH = 4294967295,\n MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,\n HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;\n\n /** Used to associate wrap methods with their bit flags. */\n var wrapFlags = [\n ['ary', WRAP_ARY_FLAG],\n ['bind', WRAP_BIND_FLAG],\n ['bindKey', WRAP_BIND_KEY_FLAG],\n ['curry', WRAP_CURRY_FLAG],\n ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n ['flip', WRAP_FLIP_FLAG],\n ['partial', WRAP_PARTIAL_FLAG],\n ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n ['rearg', WRAP_REARG_FLAG]\n ];\n\n /** `Object#toString` result references. */\n var argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n domExcTag = '[object DOMException]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]',\n weakSetTag = '[object WeakSet]';\n\n var arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n /** Used to match empty string literals in compiled template source. */\n var reEmptyStringLeading = /\\b__p \\+= '';/g,\n reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n /** Used to match HTML entities and HTML characters. */\n var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n reUnescapedHtml = /[&<>\"']/g,\n reHasEscapedHtml = RegExp(reEscapedHtml.source),\n reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n /** Used to match template delimiters. */\n var reEscape = /<%-([\\s\\S]+?)%>/g,\n reEvaluate = /<%([\\s\\S]+?)%>/g,\n reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\n /** Used to match property names within property paths. */\n var reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n /**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\n var reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n reHasRegExpChar = RegExp(reRegExpChar.source);\n\n /** Used to match leading whitespace. */\n var reTrimStart = /^\\s+/;\n\n /** Used to match a single whitespace character. */\n var reWhitespace = /\\s/;\n\n /** Used to match wrap detail comments. */\n var reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,\n reWrapDetails = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,\n reSplitDetails = /,? & /;\n\n /** Used to match words composed of alphanumeric characters. */\n var reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n /**\n * Used to validate the `validate` option in `_.template` variable.\n *\n * Forbids characters which could potentially change the meaning of the function argument definition:\n * - \"(),\" (modification of function parameters)\n * - \"=\" (default value)\n * - \"[]{}\" (destructuring of function parameters)\n * - \"/\" (beginning of a comment)\n * - whitespace\n */\n var reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n /** Used to match backslashes in property paths. */\n var reEscapeChar = /\\\\(\\\\)?/g;\n\n /**\n * Used to match\n * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n */\n var reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n /** Used to match `RegExp` flags from their coerced string values. */\n var reFlags = /\\w*$/;\n\n /** Used to detect bad signed hexadecimal string values. */\n var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n /** Used to detect binary string values. */\n var reIsBinary = /^0b[01]+$/i;\n\n /** Used to detect host constructors (Safari). */\n var reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n /** Used to detect octal string values. */\n var reIsOctal = /^0o[0-7]+$/i;\n\n /** Used to detect unsigned integer values. */\n var reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n /** Used to ensure capturing order of template delimiters. */\n var reNoMatch = /($^)/;\n\n /** Used to match unescaped characters in compiled string literals. */\n var reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n /** Used to compose unicode character classes. */\n var rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n /** Used to compose unicode capture groups. */\n var rsApos = \"['\\u2019]\",\n rsAstral = '[' + rsAstralRange + ']',\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n /** Used to compose unicode regexes. */\n var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n /** Used to match apostrophes. */\n var reApos = RegExp(rsApos, 'g');\n\n /**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\n var reComboMark = RegExp(rsCombo, 'g');\n\n /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\n var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n /** Used to match complex or compound words. */\n var reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n ].join('|'), 'g');\n\n /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\n var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n /** Used to detect strings that need a more robust regexp to match words. */\n var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n /** Used to assign default `context` object properties. */\n var contextProps = [\n 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array',\n 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object',\n 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array',\n 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap',\n '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout'\n ];\n\n /** Used to make template sourceURLs easier to identify. */\n var templateCounter = -1;\n\n /** Used to identify `toStringTag` values of typed arrays. */\n var typedArrayTags = {};\n typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\n typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\n typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\n typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\n typedArrayTags[uint32Tag] = true;\n typedArrayTags[argsTag] = typedArrayTags[arrayTag] =\n typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\n typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\n typedArrayTags[errorTag] = typedArrayTags[funcTag] =\n typedArrayTags[mapTag] = typedArrayTags[numberTag] =\n typedArrayTags[objectTag] = typedArrayTags[regexpTag] =\n typedArrayTags[setTag] = typedArrayTags[stringTag] =\n typedArrayTags[weakMapTag] = false;\n\n /** Used to identify `toStringTag` values supported by `_.clone`. */\n var cloneableTags = {};\n cloneableTags[argsTag] = cloneableTags[arrayTag] =\n cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\n cloneableTags[boolTag] = cloneableTags[dateTag] =\n cloneableTags[float32Tag] = cloneableTags[float64Tag] =\n cloneableTags[int8Tag] = cloneableTags[int16Tag] =\n cloneableTags[int32Tag] = cloneableTags[mapTag] =\n cloneableTags[numberTag] = cloneableTags[objectTag] =\n cloneableTags[regexpTag] = cloneableTags[setTag] =\n cloneableTags[stringTag] = cloneableTags[symbolTag] =\n cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\n cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\n cloneableTags[errorTag] = cloneableTags[funcTag] =\n cloneableTags[weakMapTag] = false;\n\n /** Used to map Latin Unicode letters to basic Latin letters. */\n var deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n };\n\n /** Used to map characters to HTML entities. */\n var htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n };\n\n /** Used to map HTML entities to characters. */\n var htmlUnescapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n };\n\n /** Used to escape characters for inclusion in compiled string literals. */\n var stringEscapes = {\n '\\\\': '\\\\',\n \"'\": \"'\",\n '\\n': 'n',\n '\\r': 'r',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n };\n\n /** Built-in method references without a dependency on `root`. */\n var freeParseFloat = parseFloat,\n freeParseInt = parseInt;\n\n /** Detect free variable `global` from Node.js. */\n var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n /** Detect free variable `self`. */\n var freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n /** Used as a reference to the global object. */\n var root = freeGlobal || freeSelf || Function('return this')();\n\n /** Detect free variable `exports`. */\n var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n /** Detect free variable `module`. */\n var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n /** Detect the popular CommonJS extension `module.exports`. */\n var moduleExports = freeModule && freeModule.exports === freeExports;\n\n /** Detect free variable `process` from Node.js. */\n var freeProcess = moduleExports && freeGlobal.process;\n\n /** Used to access faster Node.js helpers. */\n var nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n }());\n\n /* Node.js helper references. */\n var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer,\n nodeIsDate = nodeUtil && nodeUtil.isDate,\n nodeIsMap = nodeUtil && nodeUtil.isMap,\n nodeIsRegExp = nodeUtil && nodeUtil.isRegExp,\n nodeIsSet = nodeUtil && nodeUtil.isSet,\n nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\n function apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n }\n\n /**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.forEachRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEachRight(array, iteratee) {\n var length = array == null ? 0 : array.length;\n\n while (length--) {\n if (iteratee(array[length], length, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.every` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n */\n function arrayEvery(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (!predicate(array[index], index, array)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.includes` for arrays without support for\n * specifying an index to search from.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludes(array, value) {\n var length = array == null ? 0 : array.length;\n return !!length && baseIndexOf(array, value, 0) > -1;\n }\n\n /**\n * This function is like `arrayIncludes` except that it accepts a comparator.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludesWith(array, value, comparator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (comparator(value, array[index])) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n }\n\n /**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\n function arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n }\n\n /**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.reduceRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the last element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduceRight(array, iteratee, accumulator, initAccum) {\n var length = array == null ? 0 : array.length;\n if (initAccum && length) {\n accumulator = array[--length];\n }\n while (length--) {\n accumulator = iteratee(accumulator, array[length], length, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Gets the size of an ASCII `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n var asciiSize = baseProperty('length');\n\n /**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function asciiToArray(string) {\n return string.split('');\n }\n\n /**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function asciiWords(string) {\n return string.match(reAsciiWord) || [];\n }\n\n /**\n * The base implementation of methods like `_.findKey` and `_.findLastKey`,\n * without support for iteratee shorthands, which iterates over `collection`\n * using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the found element or its key, else `undefined`.\n */\n function baseFindKey(collection, predicate, eachFunc) {\n var result;\n eachFunc(collection, function(value, key, collection) {\n if (predicate(value, key, collection)) {\n result = key;\n return false;\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOf(array, value, fromIndex) {\n return value === value\n ? strictIndexOf(array, value, fromIndex)\n : baseFindIndex(array, baseIsNaN, fromIndex);\n }\n\n /**\n * This function is like `baseIndexOf` except that it accepts a comparator.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOfWith(array, value, fromIndex, comparator) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (comparator(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\n function baseIsNaN(value) {\n return value !== value;\n }\n\n /**\n * The base implementation of `_.mean` and `_.meanBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the mean.\n */\n function baseMean(array, iteratee) {\n var length = array == null ? 0 : array.length;\n return length ? (baseSum(array, iteratee) / length) : NAN;\n }\n\n /**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.reduce` and `_.reduceRight`, without support\n * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} accumulator The initial value.\n * @param {boolean} initAccum Specify using the first or last element of\n * `collection` as the initial value.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the accumulated value.\n */\n function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n eachFunc(collection, function(value, index, collection) {\n accumulator = initAccum\n ? (initAccum = false, value)\n : iteratee(accumulator, value, index, collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.sortBy` which uses `comparer` to define the\n * sort order of `array` and replaces criteria objects with their corresponding\n * values.\n *\n * @private\n * @param {Array} array The array to sort.\n * @param {Function} comparer The function to define sort order.\n * @returns {Array} Returns `array`.\n */\n function baseSortBy(array, comparer) {\n var length = array.length;\n\n array.sort(comparer);\n while (length--) {\n array[length] = array[length].value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\n function baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\n function baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array\n * of key-value pairs for `object` corresponding to the property names of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the key-value pairs.\n */\n function baseToPairs(object, props) {\n return arrayMap(props, function(key) {\n return [key, object[key]];\n });\n }\n\n /**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\n function baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n }\n\n /**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\n function baseUnary(func) {\n return function(value) {\n return func(value);\n };\n }\n\n /**\n * The base implementation of `_.values` and `_.valuesIn` which creates an\n * array of `object` property values corresponding to the property names\n * of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the array of property values.\n */\n function baseValues(object, props) {\n return arrayMap(props, function(key) {\n return object[key];\n });\n }\n\n /**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function cacheHas(cache, key) {\n return cache.has(key);\n }\n\n /**\n * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the first unmatched string symbol.\n */\n function charsStartIndex(strSymbols, chrSymbols) {\n var index = -1,\n length = strSymbols.length;\n\n while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the last unmatched string symbol.\n */\n function charsEndIndex(strSymbols, chrSymbols) {\n var index = strSymbols.length;\n\n while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Gets the number of `placeholder` occurrences in `array`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} placeholder The placeholder to search for.\n * @returns {number} Returns the placeholder count.\n */\n function countHolders(array, placeholder) {\n var length = array.length,\n result = 0;\n\n while (length--) {\n if (array[length] === placeholder) {\n ++result;\n }\n }\n return result;\n }\n\n /**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\n var deburrLetter = basePropertyOf(deburredLetters);\n\n /**\n * Used by `_.escape` to convert characters to HTML entities.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n var escapeHtmlChar = basePropertyOf(htmlEscapes);\n\n /**\n * Used by `_.template` to escape characters for inclusion in compiled string literals.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n function escapeStringChar(chr) {\n return '\\\\' + stringEscapes[chr];\n }\n\n /**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function getValue(object, key) {\n return object == null ? undefined : object[key];\n }\n\n /**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\n function hasUnicode(string) {\n return reHasUnicode.test(string);\n }\n\n /**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\n function hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n }\n\n /**\n * Converts `iterator` to an array.\n *\n * @private\n * @param {Object} iterator The iterator to convert.\n * @returns {Array} Returns the converted array.\n */\n function iteratorToArray(iterator) {\n var data,\n result = [];\n\n while (!(data = iterator.next()).done) {\n result.push(data.value);\n }\n return result;\n }\n\n /**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\n function mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n }\n\n /**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\n function overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n }\n\n /**\n * Replaces all `placeholder` elements in `array` with an internal placeholder\n * and returns an array of their indexes.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {*} placeholder The placeholder to replace.\n * @returns {Array} Returns the new array of placeholder indexes.\n */\n function replaceHolders(array, placeholder) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value === placeholder || value === PLACEHOLDER) {\n array[index] = PLACEHOLDER;\n result[resIndex++] = index;\n }\n }\n return result;\n }\n\n /**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\n function setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n }\n\n /**\n * Converts `set` to its value-value pairs.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the value-value pairs.\n */\n function setToPairs(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = [value, value];\n });\n return result;\n }\n\n /**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictIndexOf(array, value, fromIndex) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (array[index] === value) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * A specialized version of `_.lastIndexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictLastIndexOf(array, value, fromIndex) {\n var index = fromIndex + 1;\n while (index--) {\n if (array[index] === value) {\n return index;\n }\n }\n return index;\n }\n\n /**\n * Gets the number of symbols in `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the string size.\n */\n function stringSize(string) {\n return hasUnicode(string)\n ? unicodeSize(string)\n : asciiSize(string);\n }\n\n /**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\n function trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n }\n\n /**\n * Used by `_.unescape` to convert HTML entities to characters.\n *\n * @private\n * @param {string} chr The matched character to unescape.\n * @returns {string} Returns the unescaped character.\n */\n var unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\n /**\n * Gets the size of a Unicode `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n function unicodeSize(string) {\n var result = reUnicode.lastIndex = 0;\n while (reUnicode.test(string)) {\n ++result;\n }\n return result;\n }\n\n /**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function unicodeToArray(string) {\n return string.match(reUnicode) || [];\n }\n\n /**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n }\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * Create a new pristine `lodash` function using the `context` object.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Util\n * @param {Object} [context=root] The context object.\n * @returns {Function} Returns a new `lodash` function.\n * @example\n *\n * _.mixin({ 'foo': _.constant('foo') });\n *\n * var lodash = _.runInContext();\n * lodash.mixin({ 'bar': lodash.constant('bar') });\n *\n * _.isFunction(_.foo);\n * // => true\n * _.isFunction(_.bar);\n * // => false\n *\n * lodash.isFunction(lodash.foo);\n * // => false\n * lodash.isFunction(lodash.bar);\n * // => true\n *\n * // Create a suped-up `defer` in Node.js.\n * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;\n */\n var runInContext = (function runInContext(context) {\n context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps));\n\n /** Built-in constructor references. */\n var Array = context.Array,\n Date = context.Date,\n Error = context.Error,\n Function = context.Function,\n Math = context.Math,\n Object = context.Object,\n RegExp = context.RegExp,\n String = context.String,\n TypeError = context.TypeError;\n\n /** Used for built-in method references. */\n var arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n /** Used to detect overreaching core-js shims. */\n var coreJsData = context['__core-js_shared__'];\n\n /** Used to resolve the decompiled source of functions. */\n var funcToString = funcProto.toString;\n\n /** Used to check objects for own properties. */\n var hasOwnProperty = objectProto.hasOwnProperty;\n\n /** Used to generate unique IDs. */\n var idCounter = 0;\n\n /** Used to detect methods masquerading as native. */\n var maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n }());\n\n /**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n var nativeObjectToString = objectProto.toString;\n\n /** Used to infer the `Object` constructor. */\n var objectCtorString = funcToString.call(Object);\n\n /** Used to restore the original `_` reference in `_.noConflict`. */\n var oldDash = root._;\n\n /** Used to detect if a method is native. */\n var reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n );\n\n /** Built-in value references. */\n var Buffer = moduleExports ? context.Buffer : undefined,\n Symbol = context.Symbol,\n Uint8Array = context.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,\n symIterator = Symbol ? Symbol.iterator : undefined,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n var defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n }());\n\n /** Mocked built-ins. */\n var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout,\n ctxNow = Date && Date.now !== root.Date.now && Date.now,\n ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout;\n\n /* Built-in method references for those with the same name as other `lodash` methods. */\n var nativeCeil = Math.ceil,\n nativeFloor = Math.floor,\n nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeIsFinite = context.isFinite,\n nativeJoin = arrayProto.join,\n nativeKeys = overArg(Object.keys, Object),\n nativeMax = Math.max,\n nativeMin = Math.min,\n nativeNow = Date.now,\n nativeParseInt = context.parseInt,\n nativeRandom = Math.random,\n nativeReverse = arrayProto.reverse;\n\n /* Built-in method references that are verified to be native. */\n var DataView = getNative(context, 'DataView'),\n Map = getNative(context, 'Map'),\n Promise = getNative(context, 'Promise'),\n Set = getNative(context, 'Set'),\n WeakMap = getNative(context, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n /** Used to store function metadata. */\n var metaMap = WeakMap && new WeakMap;\n\n /** Used to lookup unminified function names. */\n var realNames = {};\n\n /** Used to detect maps, sets, and weakmaps. */\n var dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n /** Used to convert symbols to primitives and strings. */\n var symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` object which wraps `value` to enable implicit method\n * chain sequences. Methods that operate on and return arrays, collections,\n * and functions can be chained together. Methods that retrieve a single value\n * or may return a primitive value will automatically end the chain sequence\n * and return the unwrapped value. Otherwise, the value must be unwrapped\n * with `_#value`.\n *\n * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n * enabled using `_.chain`.\n *\n * The execution of chained methods is lazy, that is, it's deferred until\n * `_#value` is implicitly or explicitly called.\n *\n * Lazy evaluation allows several methods to support shortcut fusion.\n * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n * the creation of intermediate arrays and can greatly reduce the number of\n * iteratee executions. Sections of a chain sequence qualify for shortcut\n * fusion if the section is applied to an array and iteratees accept only\n * one argument. The heuristic for whether a section qualifies for shortcut\n * fusion is subject to change.\n *\n * Chaining is supported in custom builds as long as the `_#value` method is\n * directly or indirectly included in the build.\n *\n * In addition to lodash methods, wrappers have `Array` and `String` methods.\n *\n * The wrapper `Array` methods are:\n * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n *\n * The wrapper `String` methods are:\n * `replace` and `split`\n *\n * The wrapper methods that support shortcut fusion are:\n * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n *\n * The chainable wrapper methods are:\n * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n * `zipObject`, `zipObjectDeep`, and `zipWith`\n *\n * The wrapper methods that are **not** chainable by default are:\n * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n * `upperFirst`, `value`, and `words`\n *\n * @name _\n * @constructor\n * @category Seq\n * @param {*} value The value to wrap in a `lodash` instance.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2, 3]);\n *\n * // Returns an unwrapped value.\n * wrapped.reduce(_.add);\n * // => 6\n *\n * // Returns a wrapped value.\n * var squares = wrapped.map(square);\n *\n * _.isArray(squares);\n * // => false\n *\n * _.isArray(squares.value());\n * // => true\n */\n function lodash(value) {\n if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n if (value instanceof LodashWrapper) {\n return value;\n }\n if (hasOwnProperty.call(value, '__wrapped__')) {\n return wrapperClone(value);\n }\n }\n return new LodashWrapper(value);\n }\n\n /**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\n var baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n }());\n\n /**\n * The function whose prototype chain sequence wrappers inherit from.\n *\n * @private\n */\n function baseLodash() {\n // No operation performed.\n }\n\n /**\n * The base constructor for creating `lodash` wrapper objects.\n *\n * @private\n * @param {*} value The value to wrap.\n * @param {boolean} [chainAll] Enable explicit method chain sequences.\n */\n function LodashWrapper(value, chainAll) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__chain__ = !!chainAll;\n this.__index__ = 0;\n this.__values__ = undefined;\n }\n\n /**\n * By default, the template delimiters used by lodash are like those in\n * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n * following template settings to use alternative delimiters.\n *\n * @static\n * @memberOf _\n * @type {Object}\n */\n lodash.templateSettings = {\n\n /**\n * Used to detect `data` property values to be HTML-escaped.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'escape': reEscape,\n\n /**\n * Used to detect code to be evaluated.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'evaluate': reEvaluate,\n\n /**\n * Used to detect `data` property values to inject.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'interpolate': reInterpolate,\n\n /**\n * Used to reference the data object in the template text.\n *\n * @memberOf _.templateSettings\n * @type {string}\n */\n 'variable': '',\n\n /**\n * Used to import variables into the compiled template.\n *\n * @memberOf _.templateSettings\n * @type {Object}\n */\n 'imports': {\n\n /**\n * A reference to the `lodash` function.\n *\n * @memberOf _.templateSettings.imports\n * @type {Function}\n */\n '_': lodash\n }\n };\n\n // Ensure wrappers are instances of `baseLodash`.\n lodash.prototype = baseLodash.prototype;\n lodash.prototype.constructor = lodash;\n\n LodashWrapper.prototype = baseCreate(baseLodash.prototype);\n LodashWrapper.prototype.constructor = LodashWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.\n *\n * @private\n * @constructor\n * @param {*} value The value to wrap.\n */\n function LazyWrapper(value) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__dir__ = 1;\n this.__filtered__ = false;\n this.__iteratees__ = [];\n this.__takeCount__ = MAX_ARRAY_LENGTH;\n this.__views__ = [];\n }\n\n /**\n * Creates a clone of the lazy wrapper object.\n *\n * @private\n * @name clone\n * @memberOf LazyWrapper\n * @returns {Object} Returns the cloned `LazyWrapper` object.\n */\n function lazyClone() {\n var result = new LazyWrapper(this.__wrapped__);\n result.__actions__ = copyArray(this.__actions__);\n result.__dir__ = this.__dir__;\n result.__filtered__ = this.__filtered__;\n result.__iteratees__ = copyArray(this.__iteratees__);\n result.__takeCount__ = this.__takeCount__;\n result.__views__ = copyArray(this.__views__);\n return result;\n }\n\n /**\n * Reverses the direction of lazy iteration.\n *\n * @private\n * @name reverse\n * @memberOf LazyWrapper\n * @returns {Object} Returns the new reversed `LazyWrapper` object.\n */\n function lazyReverse() {\n if (this.__filtered__) {\n var result = new LazyWrapper(this);\n result.__dir__ = -1;\n result.__filtered__ = true;\n } else {\n result = this.clone();\n result.__dir__ *= -1;\n }\n return result;\n }\n\n /**\n * Extracts the unwrapped value from its lazy wrapper.\n *\n * @private\n * @name value\n * @memberOf LazyWrapper\n * @returns {*} Returns the unwrapped value.\n */\n function lazyValue() {\n var array = this.__wrapped__.value(),\n dir = this.__dir__,\n isArr = isArray(array),\n isRight = dir < 0,\n arrLength = isArr ? array.length : 0,\n view = getView(0, arrLength, this.__views__),\n start = view.start,\n end = view.end,\n length = end - start,\n index = isRight ? end : (start - 1),\n iteratees = this.__iteratees__,\n iterLength = iteratees.length,\n resIndex = 0,\n takeCount = nativeMin(length, this.__takeCount__);\n\n if (!isArr || (!isRight && arrLength == length && takeCount == length)) {\n return baseWrapperValue(array, this.__actions__);\n }\n var result = [];\n\n outer:\n while (length-- && resIndex < takeCount) {\n index += dir;\n\n var iterIndex = -1,\n value = array[index];\n\n while (++iterIndex < iterLength) {\n var data = iteratees[iterIndex],\n iteratee = data.iteratee,\n type = data.type,\n computed = iteratee(value);\n\n if (type == LAZY_MAP_FLAG) {\n value = computed;\n } else if (!computed) {\n if (type == LAZY_FILTER_FLAG) {\n continue outer;\n } else {\n break outer;\n }\n }\n }\n result[resIndex++] = value;\n }\n return result;\n }\n\n // Ensure `LazyWrapper` is an instance of `baseLodash`.\n LazyWrapper.prototype = baseCreate(baseLodash.prototype);\n LazyWrapper.prototype.constructor = LazyWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\n function hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n }\n\n /**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n }\n\n /**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\n function hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n }\n\n // Add methods to `Hash`.\n Hash.prototype.clear = hashClear;\n Hash.prototype['delete'] = hashDelete;\n Hash.prototype.get = hashGet;\n Hash.prototype.has = hashHas;\n Hash.prototype.set = hashSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\n function listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n }\n\n /**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n }\n\n /**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n }\n\n /**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\n function listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n }\n\n // Add methods to `ListCache`.\n ListCache.prototype.clear = listCacheClear;\n ListCache.prototype['delete'] = listCacheDelete;\n ListCache.prototype.get = listCacheGet;\n ListCache.prototype.has = listCacheHas;\n ListCache.prototype.set = listCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\n function mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n }\n\n /**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function mapCacheGet(key) {\n return getMapData(this, key).get(key);\n }\n\n /**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function mapCacheHas(key) {\n return getMapData(this, key).has(key);\n }\n\n /**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\n function mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n }\n\n // Add methods to `MapCache`.\n MapCache.prototype.clear = mapCacheClear;\n MapCache.prototype['delete'] = mapCacheDelete;\n MapCache.prototype.get = mapCacheGet;\n MapCache.prototype.has = mapCacheHas;\n MapCache.prototype.set = mapCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\n function SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n }\n\n /**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\n function setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n }\n\n /**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\n function setCacheHas(value) {\n return this.__data__.has(value);\n }\n\n // Add methods to `SetCache`.\n SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\n SetCache.prototype.has = setCacheHas;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n }\n\n /**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\n function stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n }\n\n /**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function stackGet(key) {\n return this.__data__.get(key);\n }\n\n /**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function stackHas(key) {\n return this.__data__.has(key);\n }\n\n /**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\n function stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n }\n\n // Add methods to `Stack`.\n Stack.prototype.clear = stackClear;\n Stack.prototype['delete'] = stackDelete;\n Stack.prototype.get = stackGet;\n Stack.prototype.has = stackHas;\n Stack.prototype.set = stackSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\n function arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.sample` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @returns {*} Returns the random element.\n */\n function arraySample(array) {\n var length = array.length;\n return length ? array[baseRandom(0, length - 1)] : undefined;\n }\n\n /**\n * A specialized version of `_.sampleSize` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function arraySampleSize(array, n) {\n return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));\n }\n\n /**\n * A specialized version of `_.shuffle` for arrays.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function arrayShuffle(array) {\n return shuffleSelf(copyArray(array));\n }\n\n /**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n }\n\n /**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n }\n\n /**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n }\n\n /**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n }\n\n /**\n * The base implementation of `_.at` without support for individual paths.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {string[]} paths The property paths to pick.\n * @returns {Array} Returns the picked elements.\n */\n function baseAt(object, paths) {\n var index = -1,\n length = paths.length,\n result = Array(length),\n skip = object == null;\n\n while (++index < length) {\n result[index] = skip ? undefined : get(object, paths[index]);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.clamp` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n */\n function baseClamp(number, lower, upper) {\n if (number === number) {\n if (upper !== undefined) {\n number = number <= upper ? number : upper;\n }\n if (lower !== undefined) {\n number = number >= lower ? number : lower;\n }\n }\n return number;\n }\n\n /**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\n function baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n }\n\n /**\n * The base implementation of `_.conforms` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property predicates to conform to.\n * @returns {Function} Returns the new spec function.\n */\n function baseConforms(source) {\n var props = keys(source);\n return function(object) {\n return baseConformsTo(object, source, props);\n };\n }\n\n /**\n * The base implementation of `_.conformsTo` which accepts `props` to check.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n */\n function baseConformsTo(object, source, props) {\n var length = props.length;\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (length--) {\n var key = props[length],\n predicate = source[key],\n value = object[key];\n\n if ((value === undefined && !(key in object)) || !predicate(value)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.delay` and `_.defer` which accepts `args`\n * to provide to `func`.\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {Array} args The arguments to provide to `func`.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n function baseDelay(func, wait, args) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return setTimeout(function() { func.apply(undefined, args); }, wait);\n }\n\n /**\n * The base implementation of methods like `_.difference` without support\n * for excluding multiple arrays or iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Array} values The values to exclude.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n */\n function baseDifference(array, values, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n isCommon = true,\n length = array.length,\n result = [],\n valuesLength = values.length;\n\n if (!length) {\n return result;\n }\n if (iteratee) {\n values = arrayMap(values, baseUnary(iteratee));\n }\n if (comparator) {\n includes = arrayIncludesWith;\n isCommon = false;\n }\n else if (values.length >= LARGE_ARRAY_SIZE) {\n includes = cacheHas;\n isCommon = false;\n values = new SetCache(values);\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee == null ? value : iteratee(value);\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var valuesIndex = valuesLength;\n while (valuesIndex--) {\n if (values[valuesIndex] === computed) {\n continue outer;\n }\n }\n result.push(value);\n }\n else if (!includes(values, computed, comparator)) {\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEach = createBaseEach(baseForOwn);\n\n /**\n * The base implementation of `_.forEachRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEachRight = createBaseEach(baseForOwnRight, true);\n\n /**\n * The base implementation of `_.every` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`\n */\n function baseEvery(collection, predicate) {\n var result = true;\n baseEach(collection, function(value, index, collection) {\n result = !!predicate(value, index, collection);\n return result;\n });\n return result;\n }\n\n /**\n * The base implementation of methods like `_.max` and `_.min` which accepts a\n * `comparator` to determine the extremum value.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The iteratee invoked per iteration.\n * @param {Function} comparator The comparator used to compare values.\n * @returns {*} Returns the extremum value.\n */\n function baseExtremum(array, iteratee, comparator) {\n var index = -1,\n length = array.length;\n\n while (++index < length) {\n var value = array[index],\n current = iteratee(value);\n\n if (current != null && (computed === undefined\n ? (current === current && !isSymbol(current))\n : comparator(current, computed)\n )) {\n var computed = current,\n result = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.fill` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n */\n function baseFill(array, value, start, end) {\n var length = array.length;\n\n start = toInteger(start);\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = (end === undefined || end > length) ? length : toInteger(end);\n if (end < 0) {\n end += length;\n }\n end = start > end ? 0 : toLength(end);\n while (start < end) {\n array[start++] = value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\n function baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseFor = createBaseFor();\n\n /**\n * This function is like `baseFor` except that it iterates over properties\n * in the opposite order.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseForRight = createBaseFor(true);\n\n /**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.forOwnRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwnRight(object, iteratee) {\n return object && baseForRight(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.functions` which creates an array of\n * `object` function property names filtered from `props`.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Array} props The property names to filter.\n * @returns {Array} Returns the function names.\n */\n function baseFunctions(object, props) {\n return arrayFilter(props, function(key) {\n return isFunction(object[key]);\n });\n }\n\n /**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\n function baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n }\n\n /**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n }\n\n /**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n function baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n }\n\n /**\n * The base implementation of `_.gt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n */\n function baseGt(value, other) {\n return value > other;\n }\n\n /**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n }\n\n /**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHasIn(object, key) {\n return object != null && key in Object(object);\n }\n\n /**\n * The base implementation of `_.inRange` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to check.\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n */\n function baseInRange(number, start, end) {\n return number >= nativeMin(start, end) && number < nativeMax(start, end);\n }\n\n /**\n * The base implementation of methods like `_.intersection`, without support\n * for iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of shared values.\n */\n function baseIntersection(arrays, iteratee, comparator) {\n var includes = comparator ? arrayIncludesWith : arrayIncludes,\n length = arrays[0].length,\n othLength = arrays.length,\n othIndex = othLength,\n caches = Array(othLength),\n maxLength = Infinity,\n result = [];\n\n while (othIndex--) {\n var array = arrays[othIndex];\n if (othIndex && iteratee) {\n array = arrayMap(array, baseUnary(iteratee));\n }\n maxLength = nativeMin(array.length, maxLength);\n caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n ? new SetCache(othIndex && array)\n : undefined;\n }\n array = arrays[0];\n\n var index = -1,\n seen = caches[0];\n\n outer:\n while (++index < length && result.length < maxLength) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (!(seen\n ? cacheHas(seen, computed)\n : includes(result, computed, comparator)\n )) {\n othIndex = othLength;\n while (--othIndex) {\n var cache = caches[othIndex];\n if (!(cache\n ? cacheHas(cache, computed)\n : includes(arrays[othIndex], computed, comparator))\n ) {\n continue outer;\n }\n }\n if (seen) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.invert` and `_.invertBy` which inverts\n * `object` with values transformed by `iteratee` and set by `setter`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform values.\n * @param {Object} accumulator The initial inverted object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseInverter(object, setter, iteratee, accumulator) {\n baseForOwn(object, function(value, key, object) {\n setter(accumulator, iteratee(value), key, object);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.invoke` without support for individual\n * method arguments.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {Array} args The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n */\n function baseInvoke(object, path, args) {\n path = castPath(path, object);\n object = parent(object, path);\n var func = object == null ? object : object[toKey(last(path))];\n return func == null ? undefined : apply(func, object, args);\n }\n\n /**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\n function baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n }\n\n /**\n * The base implementation of `_.isArrayBuffer` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n */\n function baseIsArrayBuffer(value) {\n return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;\n }\n\n /**\n * The base implementation of `_.isDate` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n */\n function baseIsDate(value) {\n return isObjectLike(value) && baseGetTag(value) == dateTag;\n }\n\n /**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\n function baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n }\n\n /**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n }\n\n /**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\n function baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n }\n\n /**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\n function baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\n function baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n }\n\n /**\n * The base implementation of `_.isRegExp` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n */\n function baseIsRegExp(value) {\n return isObjectLike(value) && baseGetTag(value) == regexpTag;\n }\n\n /**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\n function baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n }\n\n /**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\n function baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n }\n\n /**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\n function baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n }\n\n /**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.lt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n */\n function baseLt(value, other) {\n return value < other;\n }\n\n /**\n * The base implementation of `_.map` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function baseMap(collection, iteratee) {\n var index = -1,\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value, key, collection) {\n result[++index] = iteratee(value, key, collection);\n });\n return result;\n }\n\n /**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n }\n\n /**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n }\n\n /**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n }\n\n /**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n }\n\n /**\n * The base implementation of `_.nth` which doesn't coerce arguments.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {number} n The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n */\n function baseNth(array, n) {\n var length = array.length;\n if (!length) {\n return;\n }\n n += n < 0 ? length : 0;\n return isIndex(n, length) ? array[n] : undefined;\n }\n\n /**\n * The base implementation of `_.orderBy` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n * @param {string[]} orders The sort orders of `iteratees`.\n * @returns {Array} Returns the new sorted array.\n */\n function baseOrderBy(collection, iteratees, orders) {\n if (iteratees.length) {\n iteratees = arrayMap(iteratees, function(iteratee) {\n if (isArray(iteratee)) {\n return function(value) {\n return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n }\n }\n return iteratee;\n });\n } else {\n iteratees = [identity];\n }\n\n var index = -1;\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n\n var result = baseMap(collection, function(value, key, collection) {\n var criteria = arrayMap(iteratees, function(iteratee) {\n return iteratee(value);\n });\n return { 'criteria': criteria, 'index': ++index, 'value': value };\n });\n\n return baseSortBy(result, function(object, other) {\n return compareMultiple(object, other, orders);\n });\n }\n\n /**\n * The base implementation of `_.pick` without support for individual\n * property identifiers.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @returns {Object} Returns the new object.\n */\n function basePick(object, paths) {\n return basePickBy(object, paths, function(value, path) {\n return hasIn(object, path);\n });\n }\n\n /**\n * The base implementation of `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\n function basePickBy(object, paths, predicate) {\n var index = -1,\n length = paths.length,\n result = {};\n\n while (++index < length) {\n var path = paths[index],\n value = baseGet(object, path);\n\n if (predicate(value, path)) {\n baseSet(result, castPath(path, object), value);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n }\n\n /**\n * The base implementation of `_.pullAllBy` without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n */\n function basePullAll(array, values, iteratee, comparator) {\n var indexOf = comparator ? baseIndexOfWith : baseIndexOf,\n index = -1,\n length = values.length,\n seen = array;\n\n if (array === values) {\n values = copyArray(values);\n }\n if (iteratee) {\n seen = arrayMap(array, baseUnary(iteratee));\n }\n while (++index < length) {\n var fromIndex = 0,\n value = values[index],\n computed = iteratee ? iteratee(value) : value;\n\n while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {\n if (seen !== array) {\n splice.call(seen, fromIndex, 1);\n }\n splice.call(array, fromIndex, 1);\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.pullAt` without support for individual\n * indexes or capturing the removed elements.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {number[]} indexes The indexes of elements to remove.\n * @returns {Array} Returns `array`.\n */\n function basePullAt(array, indexes) {\n var length = array ? indexes.length : 0,\n lastIndex = length - 1;\n\n while (length--) {\n var index = indexes[length];\n if (length == lastIndex || index !== previous) {\n var previous = index;\n if (isIndex(index)) {\n splice.call(array, index, 1);\n } else {\n baseUnset(array, index);\n }\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.random` without support for returning\n * floating-point numbers.\n *\n * @private\n * @param {number} lower The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the random number.\n */\n function baseRandom(lower, upper) {\n return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n }\n\n /**\n * The base implementation of `_.range` and `_.rangeRight` which doesn't\n * coerce arguments.\n *\n * @private\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @param {number} step The value to increment or decrement by.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the range of numbers.\n */\n function baseRange(start, end, step, fromRight) {\n var index = -1,\n length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n result = Array(length);\n\n while (length--) {\n result[fromRight ? length : ++index] = start;\n start += step;\n }\n return result;\n }\n\n /**\n * The base implementation of `_.repeat` which doesn't coerce arguments.\n *\n * @private\n * @param {string} string The string to repeat.\n * @param {number} n The number of times to repeat the string.\n * @returns {string} Returns the repeated string.\n */\n function baseRepeat(string, n) {\n var result = '';\n if (!string || n < 1 || n > MAX_SAFE_INTEGER) {\n return result;\n }\n // Leverage the exponentiation by squaring algorithm for a faster repeat.\n // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.\n do {\n if (n % 2) {\n result += string;\n }\n n = nativeFloor(n / 2);\n if (n) {\n string += string;\n }\n } while (n);\n\n return result;\n }\n\n /**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\n function baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n }\n\n /**\n * The base implementation of `_.sample`.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n */\n function baseSample(collection) {\n return arraySample(values(collection));\n }\n\n /**\n * The base implementation of `_.sampleSize` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function baseSampleSize(collection, n) {\n var array = values(collection);\n return shuffleSelf(array, baseClamp(n, 0, array.length));\n }\n\n /**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n }\n\n /**\n * The base implementation of `setData` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var baseSetData = !metaMap ? identity : function(func, data) {\n metaMap.set(func, data);\n return func;\n };\n\n /**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n };\n\n /**\n * The base implementation of `_.shuffle`.\n *\n * @private\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function baseShuffle(collection) {\n return shuffleSelf(values(collection));\n }\n\n /**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n }\n\n /**\n * The base implementation of `_.some` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function baseSome(collection, predicate) {\n var result;\n\n baseEach(collection, function(value, index, collection) {\n result = predicate(value, index, collection);\n return !result;\n });\n return !!result;\n }\n\n /**\n * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which\n * performs a binary search of `array` to determine the index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndex(array, value, retHighest) {\n var low = 0,\n high = array == null ? low : array.length;\n\n if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {\n while (low < high) {\n var mid = (low + high) >>> 1,\n computed = array[mid];\n\n if (computed !== null && !isSymbol(computed) &&\n (retHighest ? (computed <= value) : (computed < value))) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return high;\n }\n return baseSortedIndexBy(array, value, identity, retHighest);\n }\n\n /**\n * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`\n * which invokes `iteratee` for `value` and each element of `array` to compute\n * their sort ranking. The iteratee is invoked with one argument; (value).\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} iteratee The iteratee invoked per element.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndexBy(array, value, iteratee, retHighest) {\n var low = 0,\n high = array == null ? 0 : array.length;\n if (high === 0) {\n return 0;\n }\n\n value = iteratee(value);\n var valIsNaN = value !== value,\n valIsNull = value === null,\n valIsSymbol = isSymbol(value),\n valIsUndefined = value === undefined;\n\n while (low < high) {\n var mid = nativeFloor((low + high) / 2),\n computed = iteratee(array[mid]),\n othIsDefined = computed !== undefined,\n othIsNull = computed === null,\n othIsReflexive = computed === computed,\n othIsSymbol = isSymbol(computed);\n\n if (valIsNaN) {\n var setLow = retHighest || othIsReflexive;\n } else if (valIsUndefined) {\n setLow = othIsReflexive && (retHighest || othIsDefined);\n } else if (valIsNull) {\n setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);\n } else if (valIsSymbol) {\n setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);\n } else if (othIsNull || othIsSymbol) {\n setLow = false;\n } else {\n setLow = retHighest ? (computed <= value) : (computed < value);\n }\n if (setLow) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return nativeMin(high, MAX_ARRAY_INDEX);\n }\n\n /**\n * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseSortedUniq(array, iteratee) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n if (!index || !eq(computed, seen)) {\n var seen = computed;\n result[resIndex++] = value === 0 ? 0 : value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toNumber` which doesn't ensure correct\n * conversions of binary, hexadecimal, or octal string values.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n */\n function baseToNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n return +value;\n }\n\n /**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\n function baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseUniq(array, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n length = array.length,\n isCommon = true,\n result = [],\n seen = result;\n\n if (comparator) {\n isCommon = false;\n includes = arrayIncludesWith;\n }\n else if (length >= LARGE_ARRAY_SIZE) {\n var set = iteratee ? null : createSet(array);\n if (set) {\n return setToArray(set);\n }\n isCommon = false;\n includes = cacheHas;\n seen = new SetCache;\n }\n else {\n seen = iteratee ? [] : result;\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var seenIndex = seen.length;\n while (seenIndex--) {\n if (seen[seenIndex] === computed) {\n continue outer;\n }\n }\n if (iteratee) {\n seen.push(computed);\n }\n result.push(value);\n }\n else if (!includes(seen, computed, comparator)) {\n if (seen !== result) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\n function baseUnset(object, path) {\n path = castPath(path, object);\n object = parent(object, path);\n return object == null || delete object[toKey(last(path))];\n }\n\n /**\n * The base implementation of `_.update`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to update.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseUpdate(object, path, updater, customizer) {\n return baseSet(object, path, updater(baseGet(object, path)), customizer);\n }\n\n /**\n * The base implementation of methods like `_.dropWhile` and `_.takeWhile`\n * without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {Function} predicate The function invoked per iteration.\n * @param {boolean} [isDrop] Specify dropping elements instead of taking them.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseWhile(array, predicate, isDrop, fromRight) {\n var length = array.length,\n index = fromRight ? length : -1;\n\n while ((fromRight ? index-- : ++index < length) &&\n predicate(array[index], index, array)) {}\n\n return isDrop\n ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))\n : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));\n }\n\n /**\n * The base implementation of `wrapperValue` which returns the result of\n * performing a sequence of actions on the unwrapped `value`, where each\n * successive action is supplied the return value of the previous.\n *\n * @private\n * @param {*} value The unwrapped value.\n * @param {Array} actions Actions to perform to resolve the unwrapped value.\n * @returns {*} Returns the resolved value.\n */\n function baseWrapperValue(value, actions) {\n var result = value;\n if (result instanceof LazyWrapper) {\n result = result.value();\n }\n return arrayReduce(actions, function(result, action) {\n return action.func.apply(action.thisArg, arrayPush([result], action.args));\n }, result);\n }\n\n /**\n * The base implementation of methods like `_.xor`, without support for\n * iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of values.\n */\n function baseXor(arrays, iteratee, comparator) {\n var length = arrays.length;\n if (length < 2) {\n return length ? baseUniq(arrays[0]) : [];\n }\n var index = -1,\n result = Array(length);\n\n while (++index < length) {\n var array = arrays[index],\n othIndex = -1;\n\n while (++othIndex < length) {\n if (othIndex != index) {\n result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);\n }\n }\n }\n return baseUniq(baseFlatten(result, 1), iteratee, comparator);\n }\n\n /**\n * This base implementation of `_.zipObject` which assigns values using `assignFunc`.\n *\n * @private\n * @param {Array} props The property identifiers.\n * @param {Array} values The property values.\n * @param {Function} assignFunc The function to assign values.\n * @returns {Object} Returns the new object.\n */\n function baseZipObject(props, values, assignFunc) {\n var index = -1,\n length = props.length,\n valsLength = values.length,\n result = {};\n\n while (++index < length) {\n var value = index < valsLength ? values[index] : undefined;\n assignFunc(result, props[index], value);\n }\n return result;\n }\n\n /**\n * Casts `value` to an empty array if it's not an array like object.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array|Object} Returns the cast array-like object.\n */\n function castArrayLikeObject(value) {\n return isArrayLikeObject(value) ? value : [];\n }\n\n /**\n * Casts `value` to `identity` if it's not a function.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Function} Returns cast function.\n */\n function castFunction(value) {\n return typeof value == 'function' ? value : identity;\n }\n\n /**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\n function castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n }\n\n /**\n * A `baseRest` alias which can be replaced with `identity` by module\n * replacement plugins.\n *\n * @private\n * @type {Function}\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n var castRest = baseRest;\n\n /**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\n function castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n }\n\n /**\n * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout).\n *\n * @private\n * @param {number|Object} id The timer id or timeout object of the timer to clear.\n */\n var clearTimeout = ctxClearTimeout || function(id) {\n return root.clearTimeout(id);\n };\n\n /**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\n function cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n }\n\n /**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\n function cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n }\n\n /**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\n function cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n }\n\n /**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\n function cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n }\n\n /**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\n function cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n }\n\n /**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\n function cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n }\n\n /**\n * Compares values to sort them in ascending order.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {number} Returns the sort order indicator for `value`.\n */\n function compareAscending(value, other) {\n if (value !== other) {\n var valIsDefined = value !== undefined,\n valIsNull = value === null,\n valIsReflexive = value === value,\n valIsSymbol = isSymbol(value);\n\n var othIsDefined = other !== undefined,\n othIsNull = other === null,\n othIsReflexive = other === other,\n othIsSymbol = isSymbol(other);\n\n if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n (valIsNull && othIsDefined && othIsReflexive) ||\n (!valIsDefined && othIsReflexive) ||\n !valIsReflexive) {\n return 1;\n }\n if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n (othIsNull && valIsDefined && valIsReflexive) ||\n (!othIsDefined && valIsReflexive) ||\n !othIsReflexive) {\n return -1;\n }\n }\n return 0;\n }\n\n /**\n * Used by `_.orderBy` to compare multiple properties of a value to another\n * and stable sort them.\n *\n * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n * of corresponding values.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {boolean[]|string[]} orders The order to sort by for each property.\n * @returns {number} Returns the sort order indicator for `object`.\n */\n function compareMultiple(object, other, orders) {\n var index = -1,\n objCriteria = object.criteria,\n othCriteria = other.criteria,\n length = objCriteria.length,\n ordersLength = orders.length;\n\n while (++index < length) {\n var result = compareAscending(objCriteria[index], othCriteria[index]);\n if (result) {\n if (index >= ordersLength) {\n return result;\n }\n var order = orders[index];\n return result * (order == 'desc' ? -1 : 1);\n }\n }\n // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n // that causes it, under certain circumstances, to provide the same value for\n // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n // for more details.\n //\n // This also ensures a stable sort in V8 and other engines.\n // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n return object.index - other.index;\n }\n\n /**\n * Creates an array that is the composition of partially applied arguments,\n * placeholders, and provided arguments into a single array of arguments.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to prepend to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgs(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersLength = holders.length,\n leftIndex = -1,\n leftLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(leftLength + rangeLength),\n isUncurried = !isCurried;\n\n while (++leftIndex < leftLength) {\n result[leftIndex] = partials[leftIndex];\n }\n while (++argsIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[holders[argsIndex]] = args[argsIndex];\n }\n }\n while (rangeLength--) {\n result[leftIndex++] = args[argsIndex++];\n }\n return result;\n }\n\n /**\n * This function is like `composeArgs` except that the arguments composition\n * is tailored for `_.partialRight`.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to append to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgsRight(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersIndex = -1,\n holdersLength = holders.length,\n rightIndex = -1,\n rightLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(rangeLength + rightLength),\n isUncurried = !isCurried;\n\n while (++argsIndex < rangeLength) {\n result[argsIndex] = args[argsIndex];\n }\n var offset = argsIndex;\n while (++rightIndex < rightLength) {\n result[offset + rightIndex] = partials[rightIndex];\n }\n while (++holdersIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[offset + holders[holdersIndex]] = args[argsIndex++];\n }\n }\n return result;\n }\n\n /**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\n function copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n }\n\n /**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\n function copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n }\n\n /**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n }\n\n /**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n }\n\n /**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\n function createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, getIteratee(iteratee, 2), accumulator);\n };\n }\n\n /**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\n function createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n }\n\n /**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n }\n\n /**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the optional `this`\n * binding of `thisArg`.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createBind(func, bitmask, thisArg) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return fn.apply(isBind ? thisArg : this, arguments);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\n function createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n }\n\n /**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\n function createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n }\n\n /**\n * Creates a function that produces an instance of `Ctor` regardless of\n * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n *\n * @private\n * @param {Function} Ctor The constructor to wrap.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCtor(Ctor) {\n return function() {\n // Use a `switch` statement to work with class constructors. See\n // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n // for more details.\n var args = arguments;\n switch (args.length) {\n case 0: return new Ctor;\n case 1: return new Ctor(args[0]);\n case 2: return new Ctor(args[0], args[1]);\n case 3: return new Ctor(args[0], args[1], args[2]);\n case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n }\n var thisBinding = baseCreate(Ctor.prototype),\n result = Ctor.apply(thisBinding, args);\n\n // Mimic the constructor's `return` behavior.\n // See https://es5.github.io/#x13.2.2 for more details.\n return isObject(result) ? result : thisBinding;\n };\n }\n\n /**\n * Creates a function that wraps `func` to enable currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {number} arity The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCurry(func, bitmask, arity) {\n var Ctor = createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length,\n placeholder = getHolder(wrapper);\n\n while (index--) {\n args[index] = arguments[index];\n }\n var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n ? []\n : replaceHolders(args, placeholder);\n\n length -= holders.length;\n if (length < arity) {\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, undefined,\n args, holders, undefined, undefined, arity - length);\n }\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return apply(fn, this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\n function createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = getIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n }\n\n /**\n * Creates a `_.flow` or `_.flowRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new flow function.\n */\n function createFlow(fromRight) {\n return flatRest(function(funcs) {\n var length = funcs.length,\n index = length,\n prereq = LodashWrapper.prototype.thru;\n\n if (fromRight) {\n funcs.reverse();\n }\n while (index--) {\n var func = funcs[index];\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (prereq && !wrapper && getFuncName(func) == 'wrapper') {\n var wrapper = new LodashWrapper([], true);\n }\n }\n index = wrapper ? index : length;\n while (++index < length) {\n func = funcs[index];\n\n var funcName = getFuncName(func),\n data = funcName == 'wrapper' ? getData(func) : undefined;\n\n if (data && isLaziable(data[0]) &&\n data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&\n !data[4].length && data[9] == 1\n ) {\n wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);\n } else {\n wrapper = (func.length == 1 && isLaziable(func))\n ? wrapper[funcName]()\n : wrapper.thru(func);\n }\n }\n return function() {\n var args = arguments,\n value = args[0];\n\n if (wrapper && args.length == 1 && isArray(value)) {\n return wrapper.plant(value).value();\n }\n var index = 0,\n result = length ? funcs[index].apply(this, args) : value;\n\n while (++index < length) {\n result = funcs[index].call(this, result);\n }\n return result;\n };\n });\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with optional `this`\n * binding of `thisArg`, partial application, and currying.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [partialsRight] The arguments to append to those provided\n * to the new function.\n * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {\n var isAry = bitmask & WRAP_ARY_FLAG,\n isBind = bitmask & WRAP_BIND_FLAG,\n isBindKey = bitmask & WRAP_BIND_KEY_FLAG,\n isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),\n isFlip = bitmask & WRAP_FLIP_FLAG,\n Ctor = isBindKey ? undefined : createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length;\n\n while (index--) {\n args[index] = arguments[index];\n }\n if (isCurried) {\n var placeholder = getHolder(wrapper),\n holdersCount = countHolders(args, placeholder);\n }\n if (partials) {\n args = composeArgs(args, partials, holders, isCurried);\n }\n if (partialsRight) {\n args = composeArgsRight(args, partialsRight, holdersRight, isCurried);\n }\n length -= holdersCount;\n if (isCurried && length < arity) {\n var newHolders = replaceHolders(args, placeholder);\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, thisArg,\n args, newHolders, argPos, ary, arity - length\n );\n }\n var thisBinding = isBind ? thisArg : this,\n fn = isBindKey ? thisBinding[func] : func;\n\n length = args.length;\n if (argPos) {\n args = reorder(args, argPos);\n } else if (isFlip && length > 1) {\n args.reverse();\n }\n if (isAry && ary < length) {\n args.length = ary;\n }\n if (this && this !== root && this instanceof wrapper) {\n fn = Ctor || createCtor(fn);\n }\n return fn.apply(thisBinding, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.invertBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} toIteratee The function to resolve iteratees.\n * @returns {Function} Returns the new inverter function.\n */\n function createInverter(setter, toIteratee) {\n return function(object, iteratee) {\n return baseInverter(object, setter, toIteratee(iteratee), {});\n };\n }\n\n /**\n * Creates a function that performs a mathematical operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @param {number} [defaultValue] The value used for `undefined` arguments.\n * @returns {Function} Returns the new mathematical operation function.\n */\n function createMathOperation(operator, defaultValue) {\n return function(value, other) {\n var result;\n if (value === undefined && other === undefined) {\n return defaultValue;\n }\n if (value !== undefined) {\n result = value;\n }\n if (other !== undefined) {\n if (result === undefined) {\n return other;\n }\n if (typeof value == 'string' || typeof other == 'string') {\n value = baseToString(value);\n other = baseToString(other);\n } else {\n value = baseToNumber(value);\n other = baseToNumber(other);\n }\n result = operator(value, other);\n }\n return result;\n };\n }\n\n /**\n * Creates a function like `_.over`.\n *\n * @private\n * @param {Function} arrayFunc The function to iterate over iteratees.\n * @returns {Function} Returns the new over function.\n */\n function createOver(arrayFunc) {\n return flatRest(function(iteratees) {\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n return baseRest(function(args) {\n var thisArg = this;\n return arrayFunc(iteratees, function(iteratee) {\n return apply(iteratee, thisArg, args);\n });\n });\n });\n }\n\n /**\n * Creates the padding for `string` based on `length`. The `chars` string\n * is truncated if the number of characters exceeds `length`.\n *\n * @private\n * @param {number} length The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padding for `string`.\n */\n function createPadding(length, chars) {\n chars = chars === undefined ? ' ' : baseToString(chars);\n\n var charsLength = chars.length;\n if (charsLength < 2) {\n return charsLength ? baseRepeat(chars, length) : chars;\n }\n var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));\n return hasUnicode(chars)\n ? castSlice(stringToArray(result), 0, length).join('')\n : result.slice(0, length);\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the `this` binding\n * of `thisArg` and `partials` prepended to the arguments it receives.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} partials The arguments to prepend to those provided to\n * the new function.\n * @returns {Function} Returns the new wrapped function.\n */\n function createPartial(func, bitmask, thisArg, partials) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var argsIndex = -1,\n argsLength = arguments.length,\n leftIndex = -1,\n leftLength = partials.length,\n args = Array(leftLength + argsLength),\n fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n while (++leftIndex < leftLength) {\n args[leftIndex] = partials[leftIndex];\n }\n while (argsLength--) {\n args[leftIndex++] = arguments[++argsIndex];\n }\n return apply(fn, isBind ? thisArg : this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.range` or `_.rangeRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new range function.\n */\n function createRange(fromRight) {\n return function(start, end, step) {\n if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n end = step = undefined;\n }\n // Ensure the sign of `-0` is preserved.\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n return baseRange(start, end, step, fromRight);\n };\n }\n\n /**\n * Creates a function that performs a relational operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @returns {Function} Returns the new relational operation function.\n */\n function createRelationalOperation(operator) {\n return function(value, other) {\n if (!(typeof value == 'string' && typeof other == 'string')) {\n value = toNumber(value);\n other = toNumber(other);\n }\n return operator(value, other);\n };\n }\n\n /**\n * Creates a function that wraps `func` to continue currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {Function} wrapFunc The function to create the `func` wrapper.\n * @param {*} placeholder The placeholder value.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n var isCurry = bitmask & WRAP_CURRY_FLAG,\n newHolders = isCurry ? holders : undefined,\n newHoldersRight = isCurry ? undefined : holders,\n newPartials = isCurry ? partials : undefined,\n newPartialsRight = isCurry ? undefined : partials;\n\n bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n }\n var newData = [\n func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n newHoldersRight, argPos, ary, arity\n ];\n\n var result = wrapFunc.apply(undefined, newData);\n if (isLaziable(func)) {\n setData(result, newData);\n }\n result.placeholder = placeholder;\n return setWrapToString(result, func, bitmask);\n }\n\n /**\n * Creates a function like `_.round`.\n *\n * @private\n * @param {string} methodName The name of the `Math` method to use when rounding.\n * @returns {Function} Returns the new round function.\n */\n function createRound(methodName) {\n var func = Math[methodName];\n return function(number, precision) {\n number = toNumber(number);\n precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);\n if (precision && nativeIsFinite(number)) {\n // Shift with exponential notation to avoid floating-point issues.\n // See [MDN](https://mdn.io/round#Examples) for more details.\n var pair = (toString(number) + 'e').split('e'),\n value = func(pair[0] + 'e' + (+pair[1] + precision));\n\n pair = (toString(value) + 'e').split('e');\n return +(pair[0] + 'e' + (+pair[1] - precision));\n }\n return func(number);\n };\n }\n\n /**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\n var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n return new Set(values);\n };\n\n /**\n * Creates a `_.toPairs` or `_.toPairsIn` function.\n *\n * @private\n * @param {Function} keysFunc The function to get the keys of a given object.\n * @returns {Function} Returns the new pairs function.\n */\n function createToPairs(keysFunc) {\n return function(object) {\n var tag = getTag(object);\n if (tag == mapTag) {\n return mapToArray(object);\n }\n if (tag == setTag) {\n return setToPairs(object);\n }\n return baseToPairs(object, keysFunc(object));\n };\n }\n\n /**\n * Creates a function that either curries or invokes `func` with optional\n * `this` binding and partially applied arguments.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags.\n * 1 - `_.bind`\n * 2 - `_.bindKey`\n * 4 - `_.curry` or `_.curryRight` of a bound function\n * 8 - `_.curry`\n * 16 - `_.curryRight`\n * 32 - `_.partial`\n * 64 - `_.partialRight`\n * 128 - `_.rearg`\n * 256 - `_.ary`\n * 512 - `_.flip`\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to be partially applied.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n if (!isBindKey && typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var length = partials ? partials.length : 0;\n if (!length) {\n bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n partials = holders = undefined;\n }\n ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n arity = arity === undefined ? arity : toInteger(arity);\n length -= holders ? holders.length : 0;\n\n if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n var partialsRight = partials,\n holdersRight = holders;\n\n partials = holders = undefined;\n }\n var data = isBindKey ? undefined : getData(func);\n\n var newData = [\n func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n argPos, ary, arity\n ];\n\n if (data) {\n mergeData(newData, data);\n }\n func = newData[0];\n bitmask = newData[1];\n thisArg = newData[2];\n partials = newData[3];\n holders = newData[4];\n arity = newData[9] = newData[9] === undefined\n ? (isBindKey ? 0 : func.length)\n : nativeMax(newData[9] - length, 0);\n\n if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n }\n if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n var result = createBind(func, bitmask, thisArg);\n } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n result = createCurry(func, bitmask, arity);\n } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n result = createPartial(func, bitmask, thisArg, partials);\n } else {\n result = createHybrid.apply(undefined, newData);\n }\n var setter = data ? baseSetData : setData;\n return setWrapToString(setter(result, newData), func, bitmask);\n }\n\n /**\n * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n * of source objects to the destination object for all destination properties\n * that resolve to `undefined`.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to assign.\n * @param {Object} object The parent object of `objValue`.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsAssignIn(objValue, srcValue, key, object) {\n if (objValue === undefined ||\n (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n return srcValue;\n }\n return objValue;\n }\n\n /**\n * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source\n * objects into destination objects that are passed thru.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to merge.\n * @param {Object} object The parent object of `objValue`.\n * @param {Object} source The parent object of `srcValue`.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {\n if (isObject(objValue) && isObject(srcValue)) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, objValue);\n baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);\n stack['delete'](srcValue);\n }\n return objValue;\n }\n\n /**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\n function customOmitClone(value) {\n return isPlainObject(value) ? undefined : value;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\n function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n function flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n }\n\n /**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n }\n\n /**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n }\n\n /**\n * Gets metadata for `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {*} Returns the metadata for `func`.\n */\n var getData = !metaMap ? noop : function(func) {\n return metaMap.get(func);\n };\n\n /**\n * Gets the name of `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {string} Returns the function name.\n */\n function getFuncName(func) {\n var result = (func.name + ''),\n array = realNames[result],\n length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n while (length--) {\n var data = array[length],\n otherFunc = data.func;\n if (otherFunc == null || otherFunc == func) {\n return data.name;\n }\n }\n return result;\n }\n\n /**\n * Gets the argument placeholder value for `func`.\n *\n * @private\n * @param {Function} func The function to inspect.\n * @returns {*} Returns the placeholder value.\n */\n function getHolder(func) {\n var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func;\n return object.placeholder;\n }\n\n /**\n * Gets the appropriate \"iteratee\" function. If `_.iteratee` is customized,\n * this function returns the custom method, otherwise it returns `baseIteratee`.\n * If arguments are provided, the chosen function is invoked with them and\n * its result is returned.\n *\n * @private\n * @param {*} [value] The value to convert to an iteratee.\n * @param {number} [arity] The arity of the created iteratee.\n * @returns {Function} Returns the chosen function or its result.\n */\n function getIteratee() {\n var result = lodash.iteratee || iteratee;\n result = result === iteratee ? baseIteratee : result;\n return arguments.length ? result(arguments[0], arguments[1]) : result;\n }\n\n /**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\n function getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n }\n\n /**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\n function getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n }\n\n /**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\n function getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n }\n\n /**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\n function getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n }\n\n /**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n };\n\n /**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n };\n\n /**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n var getTag = baseGetTag;\n\n // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\n if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n }\n\n /**\n * Gets the view, applying any `transforms` to the `start` and `end` positions.\n *\n * @private\n * @param {number} start The start of the view.\n * @param {number} end The end of the view.\n * @param {Array} transforms The transformations to apply to the view.\n * @returns {Object} Returns an object containing the `start` and `end`\n * positions of the view.\n */\n function getView(start, end, transforms) {\n var index = -1,\n length = transforms.length;\n\n while (++index < length) {\n var data = transforms[index],\n size = data.size;\n\n switch (data.type) {\n case 'drop': start += size; break;\n case 'dropRight': end -= size; break;\n case 'take': end = nativeMin(end, start + size); break;\n case 'takeRight': start = nativeMax(start, end - size); break;\n }\n }\n return { 'start': start, 'end': end };\n }\n\n /**\n * Extracts wrapper details from the `source` body comment.\n *\n * @private\n * @param {string} source The source to inspect.\n * @returns {Array} Returns the wrapper details.\n */\n function getWrapDetails(source) {\n var match = source.match(reWrapDetails);\n return match ? match[1].split(reSplitDetails) : [];\n }\n\n /**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\n function hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n }\n\n /**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\n function initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n }\n\n /**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n }\n\n /**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n }\n\n /**\n * Inserts wrapper `details` in a comment at the top of the `source` body.\n *\n * @private\n * @param {string} source The source to modify.\n * @returns {Array} details The details to insert.\n * @returns {string} Returns the modified source.\n */\n function insertWrapDetails(source, details) {\n var length = details.length;\n if (!length) {\n return source;\n }\n var lastIndex = length - 1;\n details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n details = details.join(length > 2 ? ', ' : ' ');\n return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n }\n\n /**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\n function isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n }\n\n /**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\n function isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n }\n\n /**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\n function isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n }\n\n /**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\n function isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n }\n\n /**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\n function isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n }\n\n /**\n * Checks if `func` has a lazy counterpart.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n * else `false`.\n */\n function isLaziable(func) {\n var funcName = getFuncName(func),\n other = lodash[funcName];\n\n if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n return false;\n }\n if (func === other) {\n return true;\n }\n var data = getData(other);\n return !!data && func === data[0];\n }\n\n /**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\n function isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n }\n\n /**\n * Checks if `func` is capable of being masked.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `func` is maskable, else `false`.\n */\n var isMaskable = coreJsData ? isFunction : stubFalse;\n\n /**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\n function isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n }\n\n /**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\n function isStrictComparable(value) {\n return value === value && !isObject(value);\n }\n\n /**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n }\n\n /**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\n function memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n }\n\n /**\n * Merges the function metadata of `source` into `data`.\n *\n * Merging metadata reduces the number of wrappers used to invoke a function.\n * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`\n * may be applied regardless of execution order. Methods like `_.ary` and\n * `_.rearg` modify function arguments, making the order in which they are\n * executed important, preventing the merging of metadata. However, we make\n * an exception for a safe combined case where curried functions have `_.ary`\n * and or `_.rearg` applied.\n *\n * @private\n * @param {Array} data The destination metadata.\n * @param {Array} source The source metadata.\n * @returns {Array} Returns `data`.\n */\n function mergeData(data, source) {\n var bitmask = data[1],\n srcBitmask = source[1],\n newBitmask = bitmask | srcBitmask,\n isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);\n\n var isCombo =\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||\n ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));\n\n // Exit early if metadata can't be merged.\n if (!(isCommon || isCombo)) {\n return data;\n }\n // Use source `thisArg` if available.\n if (srcBitmask & WRAP_BIND_FLAG) {\n data[2] = source[2];\n // Set when currying a bound function.\n newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;\n }\n // Compose partial arguments.\n var value = source[3];\n if (value) {\n var partials = data[3];\n data[3] = partials ? composeArgs(partials, value, source[4]) : value;\n data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];\n }\n // Compose partial right arguments.\n value = source[5];\n if (value) {\n partials = data[5];\n data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;\n data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];\n }\n // Use source `argPos` if available.\n value = source[7];\n if (value) {\n data[7] = value;\n }\n // Use source `ary` if it's smaller.\n if (srcBitmask & WRAP_ARY_FLAG) {\n data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);\n }\n // Use source `arity` if one is not provided.\n if (data[9] == null) {\n data[9] = source[9];\n }\n // Use source `func` and merge bitmasks.\n data[0] = source[0];\n data[1] = newBitmask;\n\n return data;\n }\n\n /**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\n function objectToString(value) {\n return nativeObjectToString.call(value);\n }\n\n /**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\n function overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n }\n\n /**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\n function parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n }\n\n /**\n * Reorder `array` according to the specified indexes where the element at\n * the first index is assigned as the first element, the element at\n * the second index is assigned as the second element, and so on.\n *\n * @private\n * @param {Array} array The array to reorder.\n * @param {Array} indexes The arranged array indexes.\n * @returns {Array} Returns `array`.\n */\n function reorder(array, indexes) {\n var arrLength = array.length,\n length = nativeMin(indexes.length, arrLength),\n oldArray = copyArray(array);\n\n while (length--) {\n var index = indexes[length];\n array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;\n }\n return array;\n }\n\n /**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n }\n\n /**\n * Sets metadata for `func`.\n *\n * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n * period of time, it will trip its breaker and transition to an identity\n * function to avoid garbage collection pauses in V8. See\n * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n * for more details.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var setData = shortOut(baseSetData);\n\n /**\n * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout).\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n var setTimeout = ctxSetTimeout || function(func, wait) {\n return root.setTimeout(func, wait);\n };\n\n /**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var setToString = shortOut(baseSetToString);\n\n /**\n * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n * with wrapper details in a comment at the top of the source body.\n *\n * @private\n * @param {Function} wrapper The function to modify.\n * @param {Function} reference The reference function.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Function} Returns `wrapper`.\n */\n function setWrapToString(wrapper, reference, bitmask) {\n var source = (reference + '');\n return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n }\n\n /**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\n function shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n }\n\n /**\n * A specialized version of `_.shuffle` which mutates and sets the size of `array`.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @param {number} [size=array.length] The size of `array`.\n * @returns {Array} Returns `array`.\n */\n function shuffleSelf(array, size) {\n var index = -1,\n length = array.length,\n lastIndex = length - 1;\n\n size = size === undefined ? length : size;\n while (++index < size) {\n var rand = baseRandom(index, lastIndex),\n value = array[rand];\n\n array[rand] = array[index];\n array[index] = value;\n }\n array.length = size;\n return array;\n }\n\n /**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\n var stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n });\n\n /**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\n function toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\n function toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n }\n\n /**\n * Updates wrapper `details` based on `bitmask` flags.\n *\n * @private\n * @returns {Array} details The details to modify.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Array} Returns `details`.\n */\n function updateWrapDetails(details, bitmask) {\n arrayEach(wrapFlags, function(pair) {\n var value = '_.' + pair[0];\n if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n details.push(value);\n }\n });\n return details.sort();\n }\n\n /**\n * Creates a clone of `wrapper`.\n *\n * @private\n * @param {Object} wrapper The wrapper to clone.\n * @returns {Object} Returns the cloned wrapper.\n */\n function wrapperClone(wrapper) {\n if (wrapper instanceof LazyWrapper) {\n return wrapper.clone();\n }\n var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);\n result.__actions__ = copyArray(wrapper.__actions__);\n result.__index__ = wrapper.__index__;\n result.__values__ = wrapper.__values__;\n return result;\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of elements split into groups the length of `size`.\n * If `array` can't be split evenly, the final chunk will be the remaining\n * elements.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to process.\n * @param {number} [size=1] The length of each chunk\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the new array of chunks.\n * @example\n *\n * _.chunk(['a', 'b', 'c', 'd'], 2);\n * // => [['a', 'b'], ['c', 'd']]\n *\n * _.chunk(['a', 'b', 'c', 'd'], 3);\n * // => [['a', 'b', 'c'], ['d']]\n */\n function chunk(array, size, guard) {\n if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {\n size = 1;\n } else {\n size = nativeMax(toInteger(size), 0);\n }\n var length = array == null ? 0 : array.length;\n if (!length || size < 1) {\n return [];\n }\n var index = 0,\n resIndex = 0,\n result = Array(nativeCeil(length / size));\n\n while (index < length) {\n result[resIndex++] = baseSlice(array, index, (index += size));\n }\n return result;\n }\n\n /**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\n function compact(array) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * Creates a new array concatenating `array` with any additional arrays\n * and/or values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to concatenate.\n * @param {...*} [values] The values to concatenate.\n * @returns {Array} Returns the new concatenated array.\n * @example\n *\n * var array = [1];\n * var other = _.concat(array, 2, [3], [[4]]);\n *\n * console.log(other);\n * // => [1, 2, 3, [4]]\n *\n * console.log(array);\n * // => [1]\n */\n function concat() {\n var length = arguments.length;\n if (!length) {\n return [];\n }\n var args = Array(length - 1),\n array = arguments[0],\n index = length;\n\n while (index--) {\n args[index - 1] = arguments[index];\n }\n return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));\n }\n\n /**\n * Creates an array of `array` values not included in the other given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * **Note:** Unlike `_.pullAll`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.without, _.xor\n * @example\n *\n * _.difference([2, 1], [2, 3]);\n * // => [1]\n */\n var difference = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `iteratee` which\n * is invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var differenceBy = baseRest(function(array, values) {\n var iteratee = last(values);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `comparator`\n * which is invoked to compare elements of `array` to `values`. The order and\n * references of result values are determined by the first array. The comparator\n * is invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.pullAllWith`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n *\n * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }]\n */\n var differenceWith = baseRest(function(array, values) {\n var comparator = last(values);\n if (isArrayLikeObject(comparator)) {\n comparator = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)\n : [];\n });\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.drop([1, 2, 3]);\n * // => [2, 3]\n *\n * _.drop([1, 2, 3], 2);\n * // => [3]\n *\n * _.drop([1, 2, 3], 5);\n * // => []\n *\n * _.drop([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function drop(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.dropRight([1, 2, 3]);\n * // => [1, 2]\n *\n * _.dropRight([1, 2, 3], 2);\n * // => [1]\n *\n * _.dropRight([1, 2, 3], 5);\n * // => []\n *\n * _.dropRight([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function dropRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the end.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.dropRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropRightWhile(users, ['active', false]);\n * // => objects for ['barney']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropRightWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the beginning.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.dropWhile(users, function(o) { return !o.active; });\n * // => objects for ['pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropWhile(users, ['active', false]);\n * // => objects for ['pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true)\n : [];\n }\n\n /**\n * Fills elements of `array` with `value` from `start` up to, but not\n * including, `end`.\n *\n * **Note:** This method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Array\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.fill(array, 'a');\n * console.log(array);\n * // => ['a', 'a', 'a']\n *\n * _.fill(Array(3), 2);\n * // => [2, 2, 2]\n *\n * _.fill([4, 6, 8, 10], '*', 1, 3);\n * // => [4, '*', '*', 10]\n */\n function fill(array, value, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {\n start = 0;\n end = length;\n }\n return baseFill(array, value, start, end);\n }\n\n /**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\n function findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index);\n }\n\n /**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\n function findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index, true);\n }\n\n /**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\n function flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n }\n\n /**\n * Recursively flattens `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flattenDeep([1, [2, [3, [4]], 5]]);\n * // => [1, 2, 3, 4, 5]\n */\n function flattenDeep(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, INFINITY) : [];\n }\n\n /**\n * Recursively flatten `array` up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * var array = [1, [2, [3, [4]], 5]];\n *\n * _.flattenDepth(array, 1);\n * // => [1, 2, [3, [4]], 5]\n *\n * _.flattenDepth(array, 2);\n * // => [1, 2, 3, [4], 5]\n */\n function flattenDepth(array, depth) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(array, depth);\n }\n\n /**\n * The inverse of `_.toPairs`; this method returns an object composed\n * from key-value `pairs`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} pairs The key-value pairs.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.fromPairs([['a', 1], ['b', 2]]);\n * // => { 'a': 1, 'b': 2 }\n */\n function fromPairs(pairs) {\n var index = -1,\n length = pairs == null ? 0 : pairs.length,\n result = {};\n\n while (++index < length) {\n var pair = pairs[index];\n result[pair[0]] = pair[1];\n }\n return result;\n }\n\n /**\n * Gets the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias first\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the first element of `array`.\n * @example\n *\n * _.head([1, 2, 3]);\n * // => 1\n *\n * _.head([]);\n * // => undefined\n */\n function head(array) {\n return (array && array.length) ? array[0] : undefined;\n }\n\n /**\n * Gets the index at which the first occurrence of `value` is found in `array`\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. If `fromIndex` is negative, it's used as the\n * offset from the end of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.indexOf([1, 2, 1, 2], 2);\n * // => 1\n *\n * // Search from the `fromIndex`.\n * _.indexOf([1, 2, 1, 2], 2, 2);\n * // => 3\n */\n function indexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseIndexOf(array, value, index);\n }\n\n /**\n * Gets all but the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.initial([1, 2, 3]);\n * // => [1, 2]\n */\n function initial(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 0, -1) : [];\n }\n\n /**\n * Creates an array of unique values that are included in all given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersection([2, 1], [2, 3]);\n * // => [2]\n */\n var intersection = baseRest(function(arrays) {\n var mapped = arrayMap(arrays, castArrayLikeObject);\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped)\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `iteratee`\n * which is invoked for each element of each `arrays` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [2.1]\n *\n * // The `_.property` iteratee shorthand.\n * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }]\n */\n var intersectionBy = baseRest(function(arrays) {\n var iteratee = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n if (iteratee === last(mapped)) {\n iteratee = undefined;\n } else {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `comparator`\n * which is invoked to compare elements of `arrays`. The order and references\n * of result values are determined by the first array. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.intersectionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }]\n */\n var intersectionWith = baseRest(function(arrays) {\n var comparator = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n comparator = typeof comparator == 'function' ? comparator : undefined;\n if (comparator) {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, undefined, comparator)\n : [];\n });\n\n /**\n * Converts all elements in `array` into a string separated by `separator`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to convert.\n * @param {string} [separator=','] The element separator.\n * @returns {string} Returns the joined string.\n * @example\n *\n * _.join(['a', 'b', 'c'], '~');\n * // => 'a~b~c'\n */\n function join(array, separator) {\n return array == null ? '' : nativeJoin.call(array, separator);\n }\n\n /**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\n function last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n }\n\n /**\n * This method is like `_.indexOf` except that it iterates over elements of\n * `array` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.lastIndexOf([1, 2, 1, 2], 2);\n * // => 3\n *\n * // Search from the `fromIndex`.\n * _.lastIndexOf([1, 2, 1, 2], 2, 2);\n * // => 1\n */\n function lastIndexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);\n }\n return value === value\n ? strictLastIndexOf(array, value, index)\n : baseFindIndex(array, baseIsNaN, index, true);\n }\n\n /**\n * Gets the element at index `n` of `array`. If `n` is negative, the nth\n * element from the end is returned.\n *\n * @static\n * @memberOf _\n * @since 4.11.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=0] The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n *\n * _.nth(array, 1);\n * // => 'b'\n *\n * _.nth(array, -2);\n * // => 'c';\n */\n function nth(array, n) {\n return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;\n }\n\n /**\n * Removes all given values from `array` using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`\n * to remove elements from an array by predicate.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...*} [values] The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pull(array, 'a', 'c');\n * console.log(array);\n * // => ['b', 'b']\n */\n var pull = baseRest(pullAll);\n\n /**\n * This method is like `_.pull` except that it accepts an array of values to remove.\n *\n * **Note:** Unlike `_.difference`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pullAll(array, ['a', 'c']);\n * console.log(array);\n * // => ['b', 'b']\n */\n function pullAll(array, values) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values)\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `iteratee` which is\n * invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The iteratee is invoked with one argument: (value).\n *\n * **Note:** Unlike `_.differenceBy`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];\n *\n * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');\n * console.log(array);\n * // => [{ 'x': 2 }]\n */\n function pullAllBy(array, values, iteratee) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, getIteratee(iteratee, 2))\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `comparator` which\n * is invoked to compare elements of `array` to `values`. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.differenceWith`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];\n *\n * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);\n * console.log(array);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]\n */\n function pullAllWith(array, values, comparator) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, undefined, comparator)\n : array;\n }\n\n /**\n * Removes elements from `array` corresponding to `indexes` and returns an\n * array of removed elements.\n *\n * **Note:** Unlike `_.at`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...(number|number[])} [indexes] The indexes of elements to remove.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n * var pulled = _.pullAt(array, [1, 3]);\n *\n * console.log(array);\n * // => ['a', 'c']\n *\n * console.log(pulled);\n * // => ['b', 'd']\n */\n var pullAt = flatRest(function(array, indexes) {\n var length = array == null ? 0 : array.length,\n result = baseAt(array, indexes);\n\n basePullAt(array, arrayMap(indexes, function(index) {\n return isIndex(index, length) ? +index : index;\n }).sort(compareAscending));\n\n return result;\n });\n\n /**\n * Removes all elements from `array` that `predicate` returns truthy for\n * and returns an array of the removed elements. The predicate is invoked\n * with three arguments: (value, index, array).\n *\n * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n * to pull elements from an array by value.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = [1, 2, 3, 4];\n * var evens = _.remove(array, function(n) {\n * return n % 2 == 0;\n * });\n *\n * console.log(array);\n * // => [1, 3]\n *\n * console.log(evens);\n * // => [2, 4]\n */\n function remove(array, predicate) {\n var result = [];\n if (!(array && array.length)) {\n return result;\n }\n var index = -1,\n indexes = [],\n length = array.length;\n\n predicate = getIteratee(predicate, 3);\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result.push(value);\n indexes.push(index);\n }\n }\n basePullAt(array, indexes);\n return result;\n }\n\n /**\n * Reverses `array` so that the first element becomes the last, the second\n * element becomes the second to last, and so on.\n *\n * **Note:** This method mutates `array` and is based on\n * [`Array#reverse`](https://mdn.io/Array/reverse).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.reverse(array);\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function reverse(array) {\n return array == null ? array : nativeReverse.call(array);\n }\n\n /**\n * Creates a slice of `array` from `start` up to, but not including, `end`.\n *\n * **Note:** This method is used instead of\n * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n * returned.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function slice(array, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n start = 0;\n end = length;\n }\n else {\n start = start == null ? 0 : toInteger(start);\n end = end === undefined ? length : toInteger(end);\n }\n return baseSlice(array, start, end);\n }\n\n /**\n * Uses a binary search to determine the lowest index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedIndex([30, 50], 40);\n * // => 1\n */\n function sortedIndex(array, value) {\n return baseSortedIndex(array, value);\n }\n\n /**\n * This method is like `_.sortedIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedIndexBy(objects, { 'x': 4 }, 'x');\n * // => 0\n */\n function sortedIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2));\n }\n\n /**\n * This method is like `_.indexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedIndexOf([4, 5, 5, 5, 6], 5);\n * // => 1\n */\n function sortedIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value);\n if (index < length && eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.sortedIndex` except that it returns the highest\n * index at which `value` should be inserted into `array` in order to\n * maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedLastIndex([4, 5, 5, 5, 6], 5);\n * // => 4\n */\n function sortedLastIndex(array, value) {\n return baseSortedIndex(array, value, true);\n }\n\n /**\n * This method is like `_.sortedLastIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 1\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');\n * // => 1\n */\n function sortedLastIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true);\n }\n\n /**\n * This method is like `_.lastIndexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);\n * // => 3\n */\n function sortedLastIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value, true) - 1;\n if (eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.uniq` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniq([1, 1, 2]);\n * // => [1, 2]\n */\n function sortedUniq(array) {\n return (array && array.length)\n ? baseSortedUniq(array)\n : [];\n }\n\n /**\n * This method is like `_.uniqBy` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);\n * // => [1.1, 2.3]\n */\n function sortedUniqBy(array, iteratee) {\n return (array && array.length)\n ? baseSortedUniq(array, getIteratee(iteratee, 2))\n : [];\n }\n\n /**\n * Gets all but the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.tail([1, 2, 3]);\n * // => [2, 3]\n */\n function tail(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 1, length) : [];\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.take([1, 2, 3]);\n * // => [1]\n *\n * _.take([1, 2, 3], 2);\n * // => [1, 2]\n *\n * _.take([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.take([1, 2, 3], 0);\n * // => []\n */\n function take(array, n, guard) {\n if (!(array && array.length)) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.takeRight([1, 2, 3]);\n * // => [3]\n *\n * _.takeRight([1, 2, 3], 2);\n * // => [2, 3]\n *\n * _.takeRight([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.takeRight([1, 2, 3], 0);\n * // => []\n */\n function takeRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with elements taken from the end. Elements are\n * taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.takeRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeRightWhile(users, ['active', false]);\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeRightWhile(users, 'active');\n * // => []\n */\n function takeRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), false, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` with elements taken from the beginning. Elements\n * are taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.takeWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeWhile(users, ['active', false]);\n * // => objects for ['barney', 'fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeWhile(users, 'active');\n * // => []\n */\n function takeWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3))\n : [];\n }\n\n /**\n * Creates an array of unique values, in order, from all given arrays using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.union([2], [1, 2]);\n * // => [2, 1]\n */\n var union = baseRest(function(arrays) {\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));\n });\n\n /**\n * This method is like `_.union` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which uniqueness is computed. Result values are chosen from the first\n * array in which the value occurs. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.unionBy([2.1], [1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n var unionBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.union` except that it accepts `comparator` which\n * is invoked to compare elements of `arrays`. Result values are chosen from\n * the first array in which the value occurs. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.unionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var unionWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator);\n });\n\n /**\n * Creates a duplicate-free version of an array, using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons, in which only the first occurrence of each element\n * is kept. The order of result values is determined by the order they occur\n * in the array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniq([2, 1, 2]);\n * // => [2, 1]\n */\n function uniq(array) {\n return (array && array.length) ? baseUniq(array) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n function uniqBy(array, iteratee) {\n return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `comparator` which\n * is invoked to compare elements of `array`. The order of result values is\n * determined by the order they occur in the array.The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.uniqWith(objects, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]\n */\n function uniqWith(array, comparator) {\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return (array && array.length) ? baseUniq(array, undefined, comparator) : [];\n }\n\n /**\n * This method is like `_.zip` except that it accepts an array of grouped\n * elements and creates an array regrouping the elements to their pre-zip\n * configuration.\n *\n * @static\n * @memberOf _\n * @since 1.2.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n *\n * _.unzip(zipped);\n * // => [['a', 'b'], [1, 2], [true, false]]\n */\n function unzip(array) {\n if (!(array && array.length)) {\n return [];\n }\n var length = 0;\n array = arrayFilter(array, function(group) {\n if (isArrayLikeObject(group)) {\n length = nativeMax(group.length, length);\n return true;\n }\n });\n return baseTimes(length, function(index) {\n return arrayMap(array, baseProperty(index));\n });\n }\n\n /**\n * This method is like `_.unzip` except that it accepts `iteratee` to specify\n * how regrouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * regrouped values.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip([1, 2], [10, 20], [100, 200]);\n * // => [[1, 10, 100], [2, 20, 200]]\n *\n * _.unzipWith(zipped, _.add);\n * // => [3, 30, 300]\n */\n function unzipWith(array, iteratee) {\n if (!(array && array.length)) {\n return [];\n }\n var result = unzip(array);\n if (iteratee == null) {\n return result;\n }\n return arrayMap(result, function(group) {\n return apply(iteratee, undefined, group);\n });\n }\n\n /**\n * Creates an array excluding all given values using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.pull`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...*} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.xor\n * @example\n *\n * _.without([2, 1, 2, 3], 1, 2);\n * // => [3]\n */\n var without = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, values)\n : [];\n });\n\n /**\n * Creates an array of unique values that is the\n * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)\n * of the given arrays. The order of result values is determined by the order\n * they occur in the arrays.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.without\n * @example\n *\n * _.xor([2, 1], [2, 3]);\n * // => [1, 3]\n */\n var xor = baseRest(function(arrays) {\n return baseXor(arrayFilter(arrays, isArrayLikeObject));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which by which they're compared. The order of result values is determined\n * by the order they occur in the arrays. The iteratee is invoked with one\n * argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2, 3.4]\n *\n * // The `_.property` iteratee shorthand.\n * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var xorBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `comparator` which is\n * invoked to compare elements of `arrays`. The order of result values is\n * determined by the order they occur in the arrays. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.xorWith(objects, others, _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var xorWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator);\n });\n\n /**\n * Creates an array of grouped elements, the first of which contains the\n * first elements of the given arrays, the second of which contains the\n * second elements of the given arrays, and so on.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n */\n var zip = baseRest(unzip);\n\n /**\n * This method is like `_.fromPairs` except that it accepts two arrays,\n * one of property identifiers and one of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 0.4.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObject(['a', 'b'], [1, 2]);\n * // => { 'a': 1, 'b': 2 }\n */\n function zipObject(props, values) {\n return baseZipObject(props || [], values || [], assignValue);\n }\n\n /**\n * This method is like `_.zipObject` except that it supports property paths.\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);\n * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n */\n function zipObjectDeep(props, values) {\n return baseZipObject(props || [], values || [], baseSet);\n }\n\n /**\n * This method is like `_.zip` except that it accepts `iteratee` to specify\n * how grouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * grouped values.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {\n * return a + b + c;\n * });\n * // => [111, 222]\n */\n var zipWith = baseRest(function(arrays) {\n var length = arrays.length,\n iteratee = length > 1 ? arrays[length - 1] : undefined;\n\n iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined;\n return unzipWith(arrays, iteratee);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` wrapper instance that wraps `value` with explicit method\n * chain sequences enabled. The result of such sequences must be unwrapped\n * with `_#value`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Seq\n * @param {*} value The value to wrap.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'pebbles', 'age': 1 }\n * ];\n *\n * var youngest = _\n * .chain(users)\n * .sortBy('age')\n * .map(function(o) {\n * return o.user + ' is ' + o.age;\n * })\n * .head()\n * .value();\n * // => 'pebbles is 1'\n */\n function chain(value) {\n var result = lodash(value);\n result.__chain__ = true;\n return result;\n }\n\n /**\n * This method invokes `interceptor` and returns `value`. The interceptor\n * is invoked with one argument; (value). The purpose of this method is to\n * \"tap into\" a method chain sequence in order to modify intermediate results.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns `value`.\n * @example\n *\n * _([1, 2, 3])\n * .tap(function(array) {\n * // Mutate input array.\n * array.pop();\n * })\n * .reverse()\n * .value();\n * // => [2, 1]\n */\n function tap(value, interceptor) {\n interceptor(value);\n return value;\n }\n\n /**\n * This method is like `_.tap` except that it returns the result of `interceptor`.\n * The purpose of this method is to \"pass thru\" values replacing intermediate\n * results in a method chain sequence.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns the result of `interceptor`.\n * @example\n *\n * _(' abc ')\n * .chain()\n * .trim()\n * .thru(function(value) {\n * return [value];\n * })\n * .value();\n * // => ['abc']\n */\n function thru(value, interceptor) {\n return interceptor(value);\n }\n\n /**\n * This method is the wrapper version of `_.at`.\n *\n * @name at\n * @memberOf _\n * @since 1.0.0\n * @category Seq\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _(object).at(['a[0].b.c', 'a[1]']).value();\n * // => [3, 4]\n */\n var wrapperAt = flatRest(function(paths) {\n var length = paths.length,\n start = length ? paths[0] : 0,\n value = this.__wrapped__,\n interceptor = function(object) { return baseAt(object, paths); };\n\n if (length > 1 || this.__actions__.length ||\n !(value instanceof LazyWrapper) || !isIndex(start)) {\n return this.thru(interceptor);\n }\n value = value.slice(start, +start + (length ? 1 : 0));\n value.__actions__.push({\n 'func': thru,\n 'args': [interceptor],\n 'thisArg': undefined\n });\n return new LodashWrapper(value, this.__chain__).thru(function(array) {\n if (length && !array.length) {\n array.push(undefined);\n }\n return array;\n });\n });\n\n /**\n * Creates a `lodash` wrapper instance with explicit method chain sequences enabled.\n *\n * @name chain\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 }\n * ];\n *\n * // A sequence without explicit chaining.\n * _(users).head();\n * // => { 'user': 'barney', 'age': 36 }\n *\n * // A sequence with explicit chaining.\n * _(users)\n * .chain()\n * .head()\n * .pick('user')\n * .value();\n * // => { 'user': 'barney' }\n */\n function wrapperChain() {\n return chain(this);\n }\n\n /**\n * Executes the chain sequence and returns the wrapped result.\n *\n * @name commit\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2];\n * var wrapped = _(array).push(3);\n *\n * console.log(array);\n * // => [1, 2]\n *\n * wrapped = wrapped.commit();\n * console.log(array);\n * // => [1, 2, 3]\n *\n * wrapped.last();\n * // => 3\n *\n * console.log(array);\n * // => [1, 2, 3]\n */\n function wrapperCommit() {\n return new LodashWrapper(this.value(), this.__chain__);\n }\n\n /**\n * Gets the next value on a wrapped object following the\n * [iterator protocol](https://mdn.io/iteration_protocols#iterator).\n *\n * @name next\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the next iterator value.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 1 }\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 2 }\n *\n * wrapped.next();\n * // => { 'done': true, 'value': undefined }\n */\n function wrapperNext() {\n if (this.__values__ === undefined) {\n this.__values__ = toArray(this.value());\n }\n var done = this.__index__ >= this.__values__.length,\n value = done ? undefined : this.__values__[this.__index__++];\n\n return { 'done': done, 'value': value };\n }\n\n /**\n * Enables the wrapper to be iterable.\n *\n * @name Symbol.iterator\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the wrapper object.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped[Symbol.iterator]() === wrapped;\n * // => true\n *\n * Array.from(wrapped);\n * // => [1, 2]\n */\n function wrapperToIterator() {\n return this;\n }\n\n /**\n * Creates a clone of the chain sequence planting `value` as the wrapped value.\n *\n * @name plant\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @param {*} value The value to plant.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2]).map(square);\n * var other = wrapped.plant([3, 4]);\n *\n * other.value();\n * // => [9, 16]\n *\n * wrapped.value();\n * // => [1, 4]\n */\n function wrapperPlant(value) {\n var result,\n parent = this;\n\n while (parent instanceof baseLodash) {\n var clone = wrapperClone(parent);\n clone.__index__ = 0;\n clone.__values__ = undefined;\n if (result) {\n previous.__wrapped__ = clone;\n } else {\n result = clone;\n }\n var previous = clone;\n parent = parent.__wrapped__;\n }\n previous.__wrapped__ = value;\n return result;\n }\n\n /**\n * This method is the wrapper version of `_.reverse`.\n *\n * **Note:** This method mutates the wrapped array.\n *\n * @name reverse\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _(array).reverse().value()\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function wrapperReverse() {\n var value = this.__wrapped__;\n if (value instanceof LazyWrapper) {\n var wrapped = value;\n if (this.__actions__.length) {\n wrapped = new LazyWrapper(this);\n }\n wrapped = wrapped.reverse();\n wrapped.__actions__.push({\n 'func': thru,\n 'args': [reverse],\n 'thisArg': undefined\n });\n return new LodashWrapper(wrapped, this.__chain__);\n }\n return this.thru(reverse);\n }\n\n /**\n * Executes the chain sequence to resolve the unwrapped value.\n *\n * @name value\n * @memberOf _\n * @since 0.1.0\n * @alias toJSON, valueOf\n * @category Seq\n * @returns {*} Returns the resolved unwrapped value.\n * @example\n *\n * _([1, 2, 3]).value();\n * // => [1, 2, 3]\n */\n function wrapperValue() {\n return baseWrapperValue(this.__wrapped__, this.__actions__);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the number of times the key was returned by `iteratee`. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.countBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': 1, '6': 2 }\n *\n * // The `_.property` iteratee shorthand.\n * _.countBy(['one', 'two', 'three'], 'length');\n * // => { '3': 2, '5': 1 }\n */\n var countBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n ++result[key];\n } else {\n baseAssignValue(result, key, 1);\n }\n });\n\n /**\n * Checks if `predicate` returns truthy for **all** elements of `collection`.\n * Iteration is stopped once `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * **Note:** This method returns `true` for\n * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because\n * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of\n * elements of empty collections.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n * @example\n *\n * _.every([true, 1, null, 'yes'], Boolean);\n * // => false\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.every(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.every(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.every(users, 'active');\n * // => false\n */\n function every(collection, predicate, guard) {\n var func = isArray(collection) ? arrayEvery : baseEvery;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\n function filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\n var find = createFind(findIndex);\n\n /**\n * This method is like `_.find` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=collection.length-1] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * _.findLast([1, 2, 3, 4], function(n) {\n * return n % 2 == 1;\n * });\n * // => 3\n */\n var findLast = createFind(findLastIndex);\n\n /**\n * Creates a flattened array of values by running each element in `collection`\n * thru `iteratee` and flattening the mapped results. The iteratee is invoked\n * with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [n, n];\n * }\n *\n * _.flatMap([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMap(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), 1);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDeep([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMapDeep(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), INFINITY);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDepth([1, 2], duplicate, 2);\n * // => [[1, 1], [2, 2]]\n */\n function flatMapDepth(collection, iteratee, depth) {\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(map(collection, iteratee), depth);\n }\n\n /**\n * Iterates over elements of `collection` and invokes `iteratee` for each element.\n * The iteratee is invoked with three arguments: (value, index|key, collection).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * **Note:** As with other \"Collections\" methods, objects with a \"length\"\n * property are iterated like arrays. To avoid this behavior use `_.forIn`\n * or `_.forOwn` for object iteration.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias each\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEachRight\n * @example\n *\n * _.forEach([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `1` then `2`.\n *\n * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forEach(collection, iteratee) {\n var func = isArray(collection) ? arrayEach : baseEach;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forEach` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @alias eachRight\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEach\n * @example\n *\n * _.forEachRight([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `2` then `1`.\n */\n function forEachRight(collection, iteratee) {\n var func = isArray(collection) ? arrayEachRight : baseEachRight;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\n var groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n });\n\n /**\n * Checks if `value` is in `collection`. If `collection` is a string, it's\n * checked for a substring of `value`, otherwise\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * is used for equality comparisons. If `fromIndex` is negative, it's used as\n * the offset from the end of `collection`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {boolean} Returns `true` if `value` is found, else `false`.\n * @example\n *\n * _.includes([1, 2, 3], 1);\n * // => true\n *\n * _.includes([1, 2, 3], 1, 2);\n * // => false\n *\n * _.includes({ 'a': 1, 'b': 2 }, 1);\n * // => true\n *\n * _.includes('abcd', 'bc');\n * // => true\n */\n function includes(collection, value, fromIndex, guard) {\n collection = isArrayLike(collection) ? collection : values(collection);\n fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;\n\n var length = collection.length;\n if (fromIndex < 0) {\n fromIndex = nativeMax(length + fromIndex, 0);\n }\n return isString(collection)\n ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)\n : (!!length && baseIndexOf(collection, value, fromIndex) > -1);\n }\n\n /**\n * Invokes the method at `path` of each element in `collection`, returning\n * an array of the results of each invoked method. Any additional arguments\n * are provided to each invoked method. If `path` is a function, it's invoked\n * for, and `this` bound to, each element in `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array|Function|string} path The path of the method to invoke or\n * the function invoked per iteration.\n * @param {...*} [args] The arguments to invoke each method with.\n * @returns {Array} Returns the array of results.\n * @example\n *\n * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');\n * // => [[1, 5, 7], [1, 2, 3]]\n *\n * _.invokeMap([123, 456], String.prototype.split, '');\n * // => [['1', '2', '3'], ['4', '5', '6']]\n */\n var invokeMap = baseRest(function(collection, path, args) {\n var index = -1,\n isFunc = typeof path == 'function',\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value) {\n result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);\n });\n return result;\n });\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the last element responsible for generating the key. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * var array = [\n * { 'dir': 'left', 'code': 97 },\n * { 'dir': 'right', 'code': 100 }\n * ];\n *\n * _.keyBy(array, function(o) {\n * return String.fromCharCode(o.code);\n * });\n * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }\n *\n * _.keyBy(array, 'dir');\n * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }\n */\n var keyBy = createAggregator(function(result, value, key) {\n baseAssignValue(result, key, value);\n });\n\n /**\n * Creates an array of values by running each element in `collection` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n *\n * The guarded methods are:\n * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * _.map([4, 8], square);\n * // => [16, 64]\n *\n * _.map({ 'a': 4, 'b': 8 }, square);\n * // => [16, 64] (iteration order is not guaranteed)\n *\n * var users = [\n * { 'user': 'barney' },\n * { 'user': 'fred' }\n * ];\n *\n * // The `_.property` iteratee shorthand.\n * _.map(users, 'user');\n * // => ['barney', 'fred']\n */\n function map(collection, iteratee) {\n var func = isArray(collection) ? arrayMap : baseMap;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.sortBy` except that it allows specifying the sort\n * orders of the iteratees to sort by. If `orders` is unspecified, all values\n * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n * descending or \"asc\" for ascending sort order of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @param {string[]} [orders] The sort orders of `iteratees`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 34 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'barney', 'age': 36 }\n * ];\n *\n * // Sort by `user` in ascending order and by `age` in descending order.\n * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n */\n function orderBy(collection, iteratees, orders, guard) {\n if (collection == null) {\n return [];\n }\n if (!isArray(iteratees)) {\n iteratees = iteratees == null ? [] : [iteratees];\n }\n orders = guard ? undefined : orders;\n if (!isArray(orders)) {\n orders = orders == null ? [] : [orders];\n }\n return baseOrderBy(collection, iteratees, orders);\n }\n\n /**\n * Creates an array of elements split into two groups, the first of which\n * contains elements `predicate` returns truthy for, the second of which\n * contains elements `predicate` returns falsey for. The predicate is\n * invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the array of grouped elements.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true },\n * { 'user': 'pebbles', 'age': 1, 'active': false }\n * ];\n *\n * _.partition(users, function(o) { return o.active; });\n * // => objects for [['fred'], ['barney', 'pebbles']]\n *\n * // The `_.matches` iteratee shorthand.\n * _.partition(users, { 'age': 1, 'active': false });\n * // => objects for [['pebbles'], ['barney', 'fred']]\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.partition(users, ['active', false]);\n * // => objects for [['barney', 'pebbles'], ['fred']]\n *\n * // The `_.property` iteratee shorthand.\n * _.partition(users, 'active');\n * // => objects for [['fred'], ['barney', 'pebbles']]\n */\n var partition = createAggregator(function(result, value, key) {\n result[key ? 0 : 1].push(value);\n }, function() { return [[], []]; });\n\n /**\n * Reduces `collection` to a value which is the accumulated result of running\n * each element in `collection` thru `iteratee`, where each successive\n * invocation is supplied the return value of the previous. If `accumulator`\n * is not given, the first element of `collection` is used as the initial\n * value. The iteratee is invoked with four arguments:\n * (accumulator, value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.reduce`, `_.reduceRight`, and `_.transform`.\n *\n * The guarded methods are:\n * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n * and `sortBy`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduceRight\n * @example\n *\n * _.reduce([1, 2], function(sum, n) {\n * return sum + n;\n * }, 0);\n * // => 3\n *\n * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * return result;\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n */\n function reduce(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduce : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n }\n\n /**\n * This method is like `_.reduce` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduce\n * @example\n *\n * var array = [[0, 1], [2, 3], [4, 5]];\n *\n * _.reduceRight(array, function(flattened, other) {\n * return flattened.concat(other);\n * }, []);\n * // => [4, 5, 2, 3, 0, 1]\n */\n function reduceRight(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduceRight : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);\n }\n\n /**\n * The opposite of `_.filter`; this method returns the elements of `collection`\n * that `predicate` does **not** return truthy for.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.filter\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true }\n * ];\n *\n * _.reject(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.reject(users, { 'age': 40, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.reject(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.reject(users, 'active');\n * // => objects for ['barney']\n */\n function reject(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, negate(getIteratee(predicate, 3)));\n }\n\n /**\n * Gets a random element from `collection`.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n * @example\n *\n * _.sample([1, 2, 3, 4]);\n * // => 2\n */\n function sample(collection) {\n var func = isArray(collection) ? arraySample : baseSample;\n return func(collection);\n }\n\n /**\n * Gets `n` random elements at unique keys from `collection` up to the\n * size of `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @param {number} [n=1] The number of elements to sample.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the random elements.\n * @example\n *\n * _.sampleSize([1, 2, 3], 2);\n * // => [3, 1]\n *\n * _.sampleSize([1, 2, 3], 4);\n * // => [2, 3, 1]\n */\n function sampleSize(collection, n, guard) {\n if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n var func = isArray(collection) ? arraySampleSize : baseSampleSize;\n return func(collection, n);\n }\n\n /**\n * Creates an array of shuffled values, using a version of the\n * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n * @example\n *\n * _.shuffle([1, 2, 3, 4]);\n * // => [4, 1, 3, 2]\n */\n function shuffle(collection) {\n var func = isArray(collection) ? arrayShuffle : baseShuffle;\n return func(collection);\n }\n\n /**\n * Gets the size of `collection` by returning its length for array-like\n * values or the number of own enumerable string keyed properties for objects.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @returns {number} Returns the collection size.\n * @example\n *\n * _.size([1, 2, 3]);\n * // => 3\n *\n * _.size({ 'a': 1, 'b': 2 });\n * // => 2\n *\n * _.size('pebbles');\n * // => 7\n */\n function size(collection) {\n if (collection == null) {\n return 0;\n }\n if (isArrayLike(collection)) {\n return isString(collection) ? stringSize(collection) : collection.length;\n }\n var tag = getTag(collection);\n if (tag == mapTag || tag == setTag) {\n return collection.size;\n }\n return baseKeys(collection).length;\n }\n\n /**\n * Checks if `predicate` returns truthy for **any** element of `collection`.\n * Iteration is stopped once `predicate` returns truthy. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n * @example\n *\n * _.some([null, 0, 'yes', false], Boolean);\n * // => true\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.some(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.some(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.some(users, 'active');\n * // => true\n */\n function some(collection, predicate, guard) {\n var func = isArray(collection) ? arraySome : baseSome;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Creates an array of elements, sorted in ascending order by the results of\n * running each element in a collection thru each iteratee. This method\n * performs a stable sort, that is, it preserves the original sort order of\n * equal elements. The iteratees are invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {...(Function|Function[])} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 30 },\n * { 'user': 'barney', 'age': 34 }\n * ];\n *\n * _.sortBy(users, [function(o) { return o.user; }]);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]]\n *\n * _.sortBy(users, ['user', 'age']);\n * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]]\n */\n var sortBy = baseRest(function(collection, iteratees) {\n if (collection == null) {\n return [];\n }\n var length = iteratees.length;\n if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {\n iteratees = [];\n } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {\n iteratees = [iteratees[0]];\n }\n return baseOrderBy(collection, baseFlatten(iteratees, 1), []);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n var now = ctxNow || function() {\n return root.Date.now();\n };\n\n /*------------------------------------------------------------------------*/\n\n /**\n * The opposite of `_.before`; this method creates a function that invokes\n * `func` once it's called `n` or more times.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {number} n The number of calls before `func` is invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var saves = ['profile', 'settings'];\n *\n * var done = _.after(saves.length, function() {\n * console.log('done saving!');\n * });\n *\n * _.forEach(saves, function(type) {\n * asyncSave({ 'type': type, 'complete': done });\n * });\n * // => Logs 'done saving!' after the two async saves have completed.\n */\n function after(n, func) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n < 1) {\n return func.apply(this, arguments);\n }\n };\n }\n\n /**\n * Creates a function that invokes `func`, with up to `n` arguments,\n * ignoring any additional arguments.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @param {number} [n=func.length] The arity cap.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.ary(parseInt, 1));\n * // => [6, 8, 10]\n */\n function ary(func, n, guard) {\n n = guard ? undefined : n;\n n = (func && n == null) ? func.length : n;\n return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);\n }\n\n /**\n * Creates a function that invokes `func`, with the `this` binding and arguments\n * of the created function, while it's called less than `n` times. Subsequent\n * calls to the created function return the result of the last `func` invocation.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {number} n The number of calls at which `func` is no longer invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * jQuery(element).on('click', _.before(5, addContactToList));\n * // => Allows adding up to 4 contacts to the list.\n */\n function before(n, func) {\n var result;\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n > 0) {\n result = func.apply(this, arguments);\n }\n if (n <= 1) {\n func = undefined;\n }\n return result;\n };\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of `thisArg`\n * and `partials` prepended to the arguments it receives.\n *\n * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for partially applied arguments.\n *\n * **Note:** Unlike native `Function#bind`, this method doesn't set the \"length\"\n * property of bound functions.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to bind.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * function greet(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n *\n * var object = { 'user': 'fred' };\n *\n * var bound = _.bind(greet, object, 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bind(greet, object, _, '!');\n * bound('hi');\n * // => 'hi fred!'\n */\n var bind = baseRest(function(func, thisArg, partials) {\n var bitmask = WRAP_BIND_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bind));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(func, bitmask, thisArg, partials, holders);\n });\n\n /**\n * Creates a function that invokes the method at `object[key]` with `partials`\n * prepended to the arguments it receives.\n *\n * This method differs from `_.bind` by allowing bound functions to reference\n * methods that may be redefined or don't yet exist. See\n * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)\n * for more details.\n *\n * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Function\n * @param {Object} object The object to invoke the method on.\n * @param {string} key The key of the method.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * var object = {\n * 'user': 'fred',\n * 'greet': function(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n * };\n *\n * var bound = _.bindKey(object, 'greet', 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * object.greet = function(greeting, punctuation) {\n * return greeting + 'ya ' + this.user + punctuation;\n * };\n *\n * bound('!');\n * // => 'hiya fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bindKey(object, 'greet', _, '!');\n * bound('hi');\n * // => 'hiya fred!'\n */\n var bindKey = baseRest(function(object, key, partials) {\n var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bindKey));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(key, bitmask, object, partials, holders);\n });\n\n /**\n * Creates a function that accepts arguments of `func` and either invokes\n * `func` returning its result, if at least `arity` number of arguments have\n * been provided, or returns a function that accepts the remaining `func`\n * arguments, and so on. The arity of `func` may be specified if `func.length`\n * is not sufficient.\n *\n * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curry(abc);\n *\n * curried(1)(2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(1)(_, 3)(2);\n * // => [1, 2, 3]\n */\n function curry(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curry.placeholder;\n return result;\n }\n\n /**\n * This method is like `_.curry` except that arguments are applied to `func`\n * in the manner of `_.partialRight` instead of `_.partial`.\n *\n * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curryRight(abc);\n *\n * curried(3)(2)(1);\n * // => [1, 2, 3]\n *\n * curried(2, 3)(1);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(3)(1, _)(2);\n * // => [1, 2, 3]\n */\n function curryRight(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curryRight.placeholder;\n return result;\n }\n\n /**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n function debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n }\n\n /**\n * Defers invoking the `func` until the current call stack has cleared. Any\n * additional arguments are provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to defer.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.defer(function(text) {\n * console.log(text);\n * }, 'deferred');\n * // => Logs 'deferred' after one millisecond.\n */\n var defer = baseRest(function(func, args) {\n return baseDelay(func, 1, args);\n });\n\n /**\n * Invokes `func` after `wait` milliseconds. Any additional arguments are\n * provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.delay(function(text) {\n * console.log(text);\n * }, 1000, 'later');\n * // => Logs 'later' after one second.\n */\n var delay = baseRest(function(func, wait, args) {\n return baseDelay(func, toNumber(wait) || 0, args);\n });\n\n /**\n * Creates a function that invokes `func` with arguments reversed.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to flip arguments for.\n * @returns {Function} Returns the new flipped function.\n * @example\n *\n * var flipped = _.flip(function() {\n * return _.toArray(arguments);\n * });\n *\n * flipped('a', 'b', 'c', 'd');\n * // => ['d', 'c', 'b', 'a']\n */\n function flip(func) {\n return createWrap(func, WRAP_FLIP_FLAG);\n }\n\n /**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\n function memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n }\n\n // Expose `MapCache`.\n memoize.Cache = MapCache;\n\n /**\n * Creates a function that negates the result of the predicate `func`. The\n * `func` predicate is invoked with the `this` binding and arguments of the\n * created function.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} predicate The predicate to negate.\n * @returns {Function} Returns the new negated function.\n * @example\n *\n * function isEven(n) {\n * return n % 2 == 0;\n * }\n *\n * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n * // => [1, 3, 5]\n */\n function negate(predicate) {\n if (typeof predicate != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return function() {\n var args = arguments;\n switch (args.length) {\n case 0: return !predicate.call(this);\n case 1: return !predicate.call(this, args[0]);\n case 2: return !predicate.call(this, args[0], args[1]);\n case 3: return !predicate.call(this, args[0], args[1], args[2]);\n }\n return !predicate.apply(this, args);\n };\n }\n\n /**\n * Creates a function that is restricted to invoking `func` once. Repeat calls\n * to the function return the value of the first invocation. The `func` is\n * invoked with the `this` binding and arguments of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var initialize = _.once(createApplication);\n * initialize();\n * initialize();\n * // => `createApplication` is invoked once\n */\n function once(func) {\n return before(2, func);\n }\n\n /**\n * Creates a function that invokes `func` with its arguments transformed.\n *\n * @static\n * @since 4.0.0\n * @memberOf _\n * @category Function\n * @param {Function} func The function to wrap.\n * @param {...(Function|Function[])} [transforms=[_.identity]]\n * The argument transforms.\n * @returns {Function} Returns the new function.\n * @example\n *\n * function doubled(n) {\n * return n * 2;\n * }\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var func = _.overArgs(function(x, y) {\n * return [x, y];\n * }, [square, doubled]);\n *\n * func(9, 3);\n * // => [81, 6]\n *\n * func(10, 5);\n * // => [100, 10]\n */\n var overArgs = castRest(function(func, transforms) {\n transforms = (transforms.length == 1 && isArray(transforms[0]))\n ? arrayMap(transforms[0], baseUnary(getIteratee()))\n : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee()));\n\n var funcsLength = transforms.length;\n return baseRest(function(args) {\n var index = -1,\n length = nativeMin(args.length, funcsLength);\n\n while (++index < length) {\n args[index] = transforms[index].call(this, args[index]);\n }\n return apply(func, this, args);\n });\n });\n\n /**\n * Creates a function that invokes `func` with `partials` prepended to the\n * arguments it receives. This method is like `_.bind` except it does **not**\n * alter the `this` binding.\n *\n * The `_.partial.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 0.2.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var sayHelloTo = _.partial(greet, 'hello');\n * sayHelloTo('fred');\n * // => 'hello fred'\n *\n * // Partially applied with placeholders.\n * var greetFred = _.partial(greet, _, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n */\n var partial = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partial));\n return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);\n });\n\n /**\n * This method is like `_.partial` except that partially applied arguments\n * are appended to the arguments it receives.\n *\n * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var greetFred = _.partialRight(greet, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n *\n * // Partially applied with placeholders.\n * var sayHelloTo = _.partialRight(greet, 'hello', _);\n * sayHelloTo('fred');\n * // => 'hello fred'\n */\n var partialRight = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partialRight));\n return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);\n });\n\n /**\n * Creates a function that invokes `func` with arguments arranged according\n * to the specified `indexes` where the argument value at the first index is\n * provided as the first argument, the argument value at the second index is\n * provided as the second argument, and so on.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to rearrange arguments for.\n * @param {...(number|number[])} indexes The arranged argument indexes.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var rearged = _.rearg(function(a, b, c) {\n * return [a, b, c];\n * }, [2, 0, 1]);\n *\n * rearged('b', 'c', 'a')\n * // => ['a', 'b', 'c']\n */\n var rearg = flatRest(function(func, indexes) {\n return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);\n });\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * created function and arguments from `start` and beyond provided as\n * an array.\n *\n * **Note:** This method is based on the\n * [rest parameter](https://mdn.io/rest_parameters).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.rest(function(what, names) {\n * return what + ' ' + _.initial(names).join(', ') +\n * (_.size(names) > 1 ? ', & ' : '') + _.last(names);\n * });\n *\n * say('hello', 'fred', 'barney', 'pebbles');\n * // => 'hello fred, barney, & pebbles'\n */\n function rest(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start === undefined ? start : toInteger(start);\n return baseRest(func, start);\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * create function and an array of arguments much like\n * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).\n *\n * **Note:** This method is based on the\n * [spread operator](https://mdn.io/spread_operator).\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Function\n * @param {Function} func The function to spread arguments over.\n * @param {number} [start=0] The start position of the spread.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.spread(function(who, what) {\n * return who + ' says ' + what;\n * });\n *\n * say(['fred', 'hello']);\n * // => 'fred says hello'\n *\n * var numbers = Promise.all([\n * Promise.resolve(40),\n * Promise.resolve(36)\n * ]);\n *\n * numbers.then(_.spread(function(x, y) {\n * return x + y;\n * }));\n * // => a Promise of 76\n */\n function spread(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start == null ? 0 : nativeMax(toInteger(start), 0);\n return baseRest(function(args) {\n var array = args[start],\n otherArgs = castSlice(args, 0, start);\n\n if (array) {\n arrayPush(otherArgs, array);\n }\n return apply(func, this, otherArgs);\n });\n }\n\n /**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\n function throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n }\n\n /**\n * Creates a function that accepts up to one argument, ignoring any\n * additional arguments.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.unary(parseInt));\n * // => [6, 8, 10]\n */\n function unary(func) {\n return ary(func, 1);\n }\n\n /**\n * Creates a function that provides `value` to `wrapper` as its first\n * argument. Any additional arguments provided to the function are appended\n * to those provided to the `wrapper`. The wrapper is invoked with the `this`\n * binding of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {*} value The value to wrap.\n * @param {Function} [wrapper=identity] The wrapper function.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var p = _.wrap(_.escape, function(func, text) {\n * return '

      ' + func(text) + '

      ';\n * });\n *\n * p('fred, barney, & pebbles');\n * // => '

      fred, barney, & pebbles

      '\n */\n function wrap(value, wrapper) {\n return partial(castFunction(wrapper), value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\n function castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n }\n\n /**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\n function clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.clone` except that it accepts `customizer` which\n * is invoked to produce the cloned value. If `customizer` returns `undefined`,\n * cloning is handled by the method instead. The `customizer` is invoked with\n * up to four arguments; (value [, index|key, object, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeepWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(false);\n * }\n * }\n *\n * var el = _.cloneWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 0\n */\n function cloneWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\n function cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.cloneWith` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the deep cloned value.\n * @see _.cloneWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(true);\n * }\n * }\n *\n * var el = _.cloneDeepWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 20\n */\n function cloneDeepWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * Checks if `object` conforms to `source` by invoking the predicate\n * properties of `source` with the corresponding property values of `object`.\n *\n * **Note:** This method is equivalent to `_.conforms` when `source` is\n * partially applied.\n *\n * @static\n * @memberOf _\n * @since 4.14.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 1; } });\n * // => true\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 2; } });\n * // => false\n */\n function conformsTo(object, source) {\n return source == null || baseConformsTo(object, source, keys(source));\n }\n\n /**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\n function eq(value, other) {\n return value === other || (value !== value && other !== other);\n }\n\n /**\n * Checks if `value` is greater than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n * @see _.lt\n * @example\n *\n * _.gt(3, 1);\n * // => true\n *\n * _.gt(3, 3);\n * // => false\n *\n * _.gt(1, 3);\n * // => false\n */\n var gt = createRelationalOperation(baseGt);\n\n /**\n * Checks if `value` is greater than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than or equal to\n * `other`, else `false`.\n * @see _.lte\n * @example\n *\n * _.gte(3, 1);\n * // => true\n *\n * _.gte(3, 3);\n * // => true\n *\n * _.gte(1, 3);\n * // => false\n */\n var gte = createRelationalOperation(function(value, other) {\n return value >= other;\n });\n\n /**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\n var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n };\n\n /**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\n var isArray = Array.isArray;\n\n /**\n * Checks if `value` is classified as an `ArrayBuffer` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n * @example\n *\n * _.isArrayBuffer(new ArrayBuffer(2));\n * // => true\n *\n * _.isArrayBuffer(new Array(2));\n * // => false\n */\n var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;\n\n /**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\n function isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n }\n\n /**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\n function isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n }\n\n /**\n * Checks if `value` is classified as a boolean primitive or object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * _.isBoolean(false);\n * // => true\n *\n * _.isBoolean(null);\n * // => false\n */\n function isBoolean(value) {\n return value === true || value === false ||\n (isObjectLike(value) && baseGetTag(value) == boolTag);\n }\n\n /**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\n var isBuffer = nativeIsBuffer || stubFalse;\n\n /**\n * Checks if `value` is classified as a `Date` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n * @example\n *\n * _.isDate(new Date);\n * // => true\n *\n * _.isDate('Mon April 23 2012');\n * // => false\n */\n var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;\n\n /**\n * Checks if `value` is likely a DOM element.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.\n * @example\n *\n * _.isElement(document.body);\n * // => true\n *\n * _.isElement('');\n * // => false\n */\n function isElement(value) {\n return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);\n }\n\n /**\n * Checks if `value` is an empty object, collection, map, or set.\n *\n * Objects are considered empty if they have no own enumerable string keyed\n * properties.\n *\n * Array-like values such as `arguments` objects, arrays, buffers, strings, or\n * jQuery-like collections are considered empty if they have a `length` of `0`.\n * Similarly, maps and sets are considered empty if they have a `size` of `0`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is empty, else `false`.\n * @example\n *\n * _.isEmpty(null);\n * // => true\n *\n * _.isEmpty(true);\n * // => true\n *\n * _.isEmpty(1);\n * // => true\n *\n * _.isEmpty([1, 2, 3]);\n * // => false\n *\n * _.isEmpty({ 'a': 1 });\n * // => false\n */\n function isEmpty(value) {\n if (value == null) {\n return true;\n }\n if (isArrayLike(value) &&\n (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||\n isBuffer(value) || isTypedArray(value) || isArguments(value))) {\n return !value.length;\n }\n var tag = getTag(value);\n if (tag == mapTag || tag == setTag) {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !baseKeys(value).length;\n }\n for (var key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\n function isEqual(value, other) {\n return baseIsEqual(value, other);\n }\n\n /**\n * This method is like `_.isEqual` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with up to\n * six arguments: (objValue, othValue [, index|key, object, other, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, othValue) {\n * if (isGreeting(objValue) && isGreeting(othValue)) {\n * return true;\n * }\n * }\n *\n * var array = ['hello', 'goodbye'];\n * var other = ['hi', 'goodbye'];\n *\n * _.isEqualWith(array, other, customizer);\n * // => true\n */\n function isEqualWith(value, other, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n var result = customizer ? customizer(value, other) : undefined;\n return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;\n }\n\n /**\n * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n * `SyntaxError`, `TypeError`, or `URIError` object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n * @example\n *\n * _.isError(new Error);\n * // => true\n *\n * _.isError(Error);\n * // => false\n */\n function isError(value) {\n if (!isObjectLike(value)) {\n return false;\n }\n var tag = baseGetTag(value);\n return tag == errorTag || tag == domExcTag ||\n (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n }\n\n /**\n * Checks if `value` is a finite primitive number.\n *\n * **Note:** This method is based on\n * [`Number.isFinite`](https://mdn.io/Number/isFinite).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.\n * @example\n *\n * _.isFinite(3);\n * // => true\n *\n * _.isFinite(Number.MIN_VALUE);\n * // => true\n *\n * _.isFinite(Infinity);\n * // => false\n *\n * _.isFinite('3');\n * // => false\n */\n function isFinite(value) {\n return typeof value == 'number' && nativeIsFinite(value);\n }\n\n /**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\n function isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n }\n\n /**\n * Checks if `value` is an integer.\n *\n * **Note:** This method is based on\n * [`Number.isInteger`](https://mdn.io/Number/isInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an integer, else `false`.\n * @example\n *\n * _.isInteger(3);\n * // => true\n *\n * _.isInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isInteger(Infinity);\n * // => false\n *\n * _.isInteger('3');\n * // => false\n */\n function isInteger(value) {\n return typeof value == 'number' && value == toInteger(value);\n }\n\n /**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\n function isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\n function isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n }\n\n /**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\n function isObjectLike(value) {\n return value != null && typeof value == 'object';\n }\n\n /**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\n var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\n /**\n * Performs a partial deep comparison between `object` and `source` to\n * determine if `object` contains equivalent property values.\n *\n * **Note:** This method is equivalent to `_.matches` when `source` is\n * partially applied.\n *\n * Partial comparisons will match empty array and empty object `source`\n * values against any array or object value, respectively. See `_.isEqual`\n * for a list of supported value comparisons.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.isMatch(object, { 'b': 2 });\n * // => true\n *\n * _.isMatch(object, { 'b': 1 });\n * // => false\n */\n function isMatch(object, source) {\n return object === source || baseIsMatch(object, source, getMatchData(source));\n }\n\n /**\n * This method is like `_.isMatch` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with five\n * arguments: (objValue, srcValue, index|key, object, source).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, srcValue) {\n * if (isGreeting(objValue) && isGreeting(srcValue)) {\n * return true;\n * }\n * }\n *\n * var object = { 'greeting': 'hello' };\n * var source = { 'greeting': 'hi' };\n *\n * _.isMatchWith(object, source, customizer);\n * // => true\n */\n function isMatchWith(object, source, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseIsMatch(object, source, getMatchData(source), customizer);\n }\n\n /**\n * Checks if `value` is `NaN`.\n *\n * **Note:** This method is based on\n * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n * `undefined` and other non-number values.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n * @example\n *\n * _.isNaN(NaN);\n * // => true\n *\n * _.isNaN(new Number(NaN));\n * // => true\n *\n * isNaN(undefined);\n * // => true\n *\n * _.isNaN(undefined);\n * // => false\n */\n function isNaN(value) {\n // An `NaN` primitive is the only value that is not equal to itself.\n // Perform the `toStringTag` check first to avoid errors with some\n // ActiveX objects in IE.\n return isNumber(value) && value != +value;\n }\n\n /**\n * Checks if `value` is a pristine native function.\n *\n * **Note:** This method can't reliably detect native functions in the presence\n * of the core-js package because core-js circumvents this kind of detection.\n * Despite multiple requests, the core-js maintainer has made it clear: any\n * attempt to fix the detection will be obstructed. As a result, we're left\n * with little choice but to throw an error. Unfortunately, this also affects\n * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),\n * which rely on core-js.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n * @example\n *\n * _.isNative(Array.prototype.push);\n * // => true\n *\n * _.isNative(_);\n * // => false\n */\n function isNative(value) {\n if (isMaskable(value)) {\n throw new Error(CORE_ERROR_TEXT);\n }\n return baseIsNative(value);\n }\n\n /**\n * Checks if `value` is `null`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `null`, else `false`.\n * @example\n *\n * _.isNull(null);\n * // => true\n *\n * _.isNull(void 0);\n * // => false\n */\n function isNull(value) {\n return value === null;\n }\n\n /**\n * Checks if `value` is `null` or `undefined`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is nullish, else `false`.\n * @example\n *\n * _.isNil(null);\n * // => true\n *\n * _.isNil(void 0);\n * // => true\n *\n * _.isNil(NaN);\n * // => false\n */\n function isNil(value) {\n return value == null;\n }\n\n /**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `_.isFinite` method.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * _.isNumber(3);\n * // => true\n *\n * _.isNumber(Number.MIN_VALUE);\n * // => true\n *\n * _.isNumber(Infinity);\n * // => true\n *\n * _.isNumber('3');\n * // => false\n */\n function isNumber(value) {\n return typeof value == 'number' ||\n (isObjectLike(value) && baseGetTag(value) == numberTag);\n }\n\n /**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\n function isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n }\n\n /**\n * Checks if `value` is classified as a `RegExp` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n * @example\n *\n * _.isRegExp(/abc/);\n * // => true\n *\n * _.isRegExp('/abc/');\n * // => false\n */\n var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;\n\n /**\n * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754\n * double precision number which isn't the result of a rounded unsafe integer.\n *\n * **Note:** This method is based on\n * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.\n * @example\n *\n * _.isSafeInteger(3);\n * // => true\n *\n * _.isSafeInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isSafeInteger(Infinity);\n * // => false\n *\n * _.isSafeInteger('3');\n * // => false\n */\n function isSafeInteger(value) {\n return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\n var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\n /**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\n function isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n }\n\n /**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n function isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n }\n\n /**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\n var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n /**\n * Checks if `value` is `undefined`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.\n * @example\n *\n * _.isUndefined(void 0);\n * // => true\n *\n * _.isUndefined(null);\n * // => false\n */\n function isUndefined(value) {\n return value === undefined;\n }\n\n /**\n * Checks if `value` is classified as a `WeakMap` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.\n * @example\n *\n * _.isWeakMap(new WeakMap);\n * // => true\n *\n * _.isWeakMap(new Map);\n * // => false\n */\n function isWeakMap(value) {\n return isObjectLike(value) && getTag(value) == weakMapTag;\n }\n\n /**\n * Checks if `value` is classified as a `WeakSet` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.\n * @example\n *\n * _.isWeakSet(new WeakSet);\n * // => true\n *\n * _.isWeakSet(new Set);\n * // => false\n */\n function isWeakSet(value) {\n return isObjectLike(value) && baseGetTag(value) == weakSetTag;\n }\n\n /**\n * Checks if `value` is less than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n * @see _.gt\n * @example\n *\n * _.lt(1, 3);\n * // => true\n *\n * _.lt(3, 3);\n * // => false\n *\n * _.lt(3, 1);\n * // => false\n */\n var lt = createRelationalOperation(baseLt);\n\n /**\n * Checks if `value` is less than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than or equal to\n * `other`, else `false`.\n * @see _.gte\n * @example\n *\n * _.lte(1, 3);\n * // => true\n *\n * _.lte(3, 3);\n * // => true\n *\n * _.lte(3, 1);\n * // => false\n */\n var lte = createRelationalOperation(function(value, other) {\n return value <= other;\n });\n\n /**\n * Converts `value` to an array.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Array} Returns the converted array.\n * @example\n *\n * _.toArray({ 'a': 1, 'b': 2 });\n * // => [1, 2]\n *\n * _.toArray('abc');\n * // => ['a', 'b', 'c']\n *\n * _.toArray(1);\n * // => []\n *\n * _.toArray(null);\n * // => []\n */\n function toArray(value) {\n if (!value) {\n return [];\n }\n if (isArrayLike(value)) {\n return isString(value) ? stringToArray(value) : copyArray(value);\n }\n if (symIterator && value[symIterator]) {\n return iteratorToArray(value[symIterator]());\n }\n var tag = getTag(value),\n func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values);\n\n return func(value);\n }\n\n /**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\n function toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n }\n\n /**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\n function toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n }\n\n /**\n * Converts `value` to an integer suitable for use as the length of an\n * array-like object.\n *\n * **Note:** This method is based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toLength(3.2);\n * // => 3\n *\n * _.toLength(Number.MIN_VALUE);\n * // => 0\n *\n * _.toLength(Infinity);\n * // => 4294967295\n *\n * _.toLength('3.2');\n * // => 3\n */\n function toLength(value) {\n return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0;\n }\n\n /**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n function toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n }\n\n /**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\n function toPlainObject(value) {\n return copyObject(value, keysIn(value));\n }\n\n /**\n * Converts `value` to a safe integer. A safe integer can be compared and\n * represented correctly.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toSafeInteger(3.2);\n * // => 3\n *\n * _.toSafeInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toSafeInteger(Infinity);\n * // => 9007199254740991\n *\n * _.toSafeInteger('3.2');\n * // => 3\n */\n function toSafeInteger(value) {\n return value\n ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER)\n : (value === 0 ? value : 0);\n }\n\n /**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\n function toString(value) {\n return value == null ? '' : baseToString(value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Assigns own enumerable string keyed properties of source objects to the\n * destination object. Source objects are applied from left to right.\n * Subsequent sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object` and is loosely based on\n * [`Object.assign`](https://mdn.io/Object/assign).\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assignIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assign({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'c': 3 }\n */\n var assign = createAssigner(function(object, source) {\n if (isPrototype(source) || isArrayLike(source)) {\n copyObject(source, keys(source), object);\n return;\n }\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n assignValue(object, key, source[key]);\n }\n }\n });\n\n /**\n * This method is like `_.assign` except that it iterates over own and\n * inherited source properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extend\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assign\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assignIn({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }\n */\n var assignIn = createAssigner(function(object, source) {\n copyObject(source, keysIn(source), object);\n });\n\n /**\n * This method is like `_.assignIn` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extendWith\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignInWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keysIn(source), object, customizer);\n });\n\n /**\n * This method is like `_.assign` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignInWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keys(source), object, customizer);\n });\n\n /**\n * Creates an array of values corresponding to `paths` of `object`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Array} Returns the picked values.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _.at(object, ['a[0].b.c', 'a[1]']);\n * // => [3, 4]\n */\n var at = flatRest(baseAt);\n\n /**\n * Creates an object that inherits from the `prototype` object. If a\n * `properties` object is given, its own enumerable string keyed properties\n * are assigned to the created object.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Object\n * @param {Object} prototype The object to inherit from.\n * @param {Object} [properties] The properties to assign to the object.\n * @returns {Object} Returns the new object.\n * @example\n *\n * function Shape() {\n * this.x = 0;\n * this.y = 0;\n * }\n *\n * function Circle() {\n * Shape.call(this);\n * }\n *\n * Circle.prototype = _.create(Shape.prototype, {\n * 'constructor': Circle\n * });\n *\n * var circle = new Circle;\n * circle instanceof Circle;\n * // => true\n *\n * circle instanceof Shape;\n * // => true\n */\n function create(prototype, properties) {\n var result = baseCreate(prototype);\n return properties == null ? result : baseAssign(result, properties);\n }\n\n /**\n * Assigns own and inherited enumerable string keyed properties of source\n * objects to the destination object for all destination properties that\n * resolve to `undefined`. Source objects are applied from left to right.\n * Once a property is set, additional values of the same property are ignored.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaultsDeep\n * @example\n *\n * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var defaults = baseRest(function(object, sources) {\n object = Object(object);\n\n var index = -1;\n var length = sources.length;\n var guard = length > 2 ? sources[2] : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n length = 1;\n }\n\n while (++index < length) {\n var source = sources[index];\n var props = keysIn(source);\n var propsIndex = -1;\n var propsLength = props.length;\n\n while (++propsIndex < propsLength) {\n var key = props[propsIndex];\n var value = object[key];\n\n if (value === undefined ||\n (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n object[key] = source[key];\n }\n }\n }\n\n return object;\n });\n\n /**\n * This method is like `_.defaults` except that it recursively assigns\n * default properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaults\n * @example\n *\n * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });\n * // => { 'a': { 'b': 2, 'c': 3 } }\n */\n var defaultsDeep = baseRest(function(args) {\n args.push(undefined, customDefaultsMerge);\n return apply(mergeWith, undefined, args);\n });\n\n /**\n * This method is like `_.find` except that it returns the key of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findKey(users, function(o) { return o.age < 40; });\n * // => 'barney' (iteration order is not guaranteed)\n *\n * // The `_.matches` iteratee shorthand.\n * _.findKey(users, { 'age': 1, 'active': true });\n * // => 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findKey(users, 'active');\n * // => 'barney'\n */\n function findKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwn);\n }\n\n /**\n * This method is like `_.findKey` except that it iterates over elements of\n * a collection in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findLastKey(users, function(o) { return o.age < 40; });\n * // => returns 'pebbles' assuming `_.findKey` returns 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastKey(users, { 'age': 36, 'active': true });\n * // => 'barney'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastKey(users, 'active');\n * // => 'pebbles'\n */\n function findLastKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight);\n }\n\n /**\n * Iterates over own and inherited enumerable string keyed properties of an\n * object and invokes `iteratee` for each property. The iteratee is invoked\n * with three arguments: (value, key, object). Iteratee functions may exit\n * iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forInRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forIn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).\n */\n function forIn(object, iteratee) {\n return object == null\n ? object\n : baseFor(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * This method is like `_.forIn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forInRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.\n */\n function forInRight(object, iteratee) {\n return object == null\n ? object\n : baseForRight(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * Iterates over own enumerable string keyed properties of an object and\n * invokes `iteratee` for each property. The iteratee is invoked with three\n * arguments: (value, key, object). Iteratee functions may exit iteration\n * early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwnRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forOwn(object, iteratee) {\n return object && baseForOwn(object, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forOwn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwnRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.\n */\n function forOwnRight(object, iteratee) {\n return object && baseForOwnRight(object, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an array of function property names from own enumerable properties\n * of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functionsIn\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functions(new Foo);\n * // => ['a', 'b']\n */\n function functions(object) {\n return object == null ? [] : baseFunctions(object, keys(object));\n }\n\n /**\n * Creates an array of function property names from own and inherited\n * enumerable properties of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functions\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functionsIn(new Foo);\n * // => ['a', 'b', 'c']\n */\n function functionsIn(object) {\n return object == null ? [] : baseFunctions(object, keysIn(object));\n }\n\n /**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\n function get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n }\n\n /**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\n function has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n }\n\n /**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\n function hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n }\n\n /**\n * Creates an object composed of the inverted keys and values of `object`.\n * If `object` contains duplicate values, subsequent values overwrite\n * property assignments of previous values.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Object\n * @param {Object} object The object to invert.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invert(object);\n * // => { '1': 'c', '2': 'b' }\n */\n var invert = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n result[value] = key;\n }, constant(identity));\n\n /**\n * This method is like `_.invert` except that the inverted object is generated\n * from the results of running each element of `object` thru `iteratee`. The\n * corresponding inverted value of each inverted key is an array of keys\n * responsible for generating the inverted value. The iteratee is invoked\n * with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Object\n * @param {Object} object The object to invert.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invertBy(object);\n * // => { '1': ['a', 'c'], '2': ['b'] }\n *\n * _.invertBy(object, function(value) {\n * return 'group' + value;\n * });\n * // => { 'group1': ['a', 'c'], 'group2': ['b'] }\n */\n var invertBy = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n if (hasOwnProperty.call(result, value)) {\n result[value].push(key);\n } else {\n result[value] = [key];\n }\n }, getIteratee);\n\n /**\n * Invokes the method at `path` of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {...*} [args] The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };\n *\n * _.invoke(object, 'a[0].b.c.slice', 1, 3);\n * // => [2, 3]\n */\n var invoke = baseRest(baseInvoke);\n\n /**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\n function keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n }\n\n /**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\n function keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n }\n\n /**\n * The opposite of `_.mapValues`; this method creates an object with the\n * same values as `object` and keys generated by running each own enumerable\n * string keyed property of `object` thru `iteratee`. The iteratee is invoked\n * with three arguments: (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapValues\n * @example\n *\n * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {\n * return key + value;\n * });\n * // => { 'a1': 1, 'b2': 2 }\n */\n function mapKeys(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, iteratee(value, key, object), value);\n });\n return result;\n }\n\n /**\n * Creates an object with the same keys as `object` and values generated\n * by running each own enumerable string keyed property of `object` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapKeys\n * @example\n *\n * var users = {\n * 'fred': { 'user': 'fred', 'age': 40 },\n * 'pebbles': { 'user': 'pebbles', 'age': 1 }\n * };\n *\n * _.mapValues(users, function(o) { return o.age; });\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n *\n * // The `_.property` iteratee shorthand.\n * _.mapValues(users, 'age');\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n */\n function mapValues(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, key, iteratee(value, key, object));\n });\n return result;\n }\n\n /**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\n var merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n });\n\n /**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\n var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n });\n\n /**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\n var omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n });\n\n /**\n * The opposite of `_.pickBy`; this method creates an object composed of\n * the own and inherited enumerable string keyed properties of `object` that\n * `predicate` doesn't return truthy for. The predicate is invoked with two\n * arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omitBy(object, _.isNumber);\n * // => { 'b': '2' }\n */\n function omitBy(object, predicate) {\n return pickBy(object, negate(getIteratee(predicate)));\n }\n\n /**\n * Creates an object composed of the picked `object` properties.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pick(object, ['a', 'c']);\n * // => { 'a': 1, 'c': 3 }\n */\n var pick = flatRest(function(object, paths) {\n return object == null ? {} : basePick(object, paths);\n });\n\n /**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\n function pickBy(object, predicate) {\n if (object == null) {\n return {};\n }\n var props = arrayMap(getAllKeysIn(object), function(prop) {\n return [prop];\n });\n predicate = getIteratee(predicate);\n return basePickBy(object, props, function(value, path) {\n return predicate(value, path[0]);\n });\n }\n\n /**\n * This method is like `_.get` except that if the resolved value is a\n * function it's invoked with the `this` binding of its parent object and\n * its result is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to resolve.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };\n *\n * _.result(object, 'a[0].b.c1');\n * // => 3\n *\n * _.result(object, 'a[0].b.c2');\n * // => 4\n *\n * _.result(object, 'a[0].b.c3', 'default');\n * // => 'default'\n *\n * _.result(object, 'a[0].b.c3', _.constant('default'));\n * // => 'default'\n */\n function result(object, path, defaultValue) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length;\n\n // Ensure the loop is entered when path is empty.\n if (!length) {\n length = 1;\n object = undefined;\n }\n while (++index < length) {\n var value = object == null ? undefined : object[toKey(path[index])];\n if (value === undefined) {\n index = length;\n value = defaultValue;\n }\n object = isFunction(value) ? value.call(object) : value;\n }\n return object;\n }\n\n /**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\n function set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n }\n\n /**\n * This method is like `_.set` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.setWith(object, '[0][1]', 'a', Object);\n * // => { '0': { '1': 'a' } }\n */\n function setWith(object, path, value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseSet(object, path, value, customizer);\n }\n\n /**\n * Creates an array of own enumerable string keyed-value pairs for `object`\n * which can be consumed by `_.fromPairs`. If `object` is a map or set, its\n * entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entries\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairs(new Foo);\n * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)\n */\n var toPairs = createToPairs(keys);\n\n /**\n * Creates an array of own and inherited enumerable string keyed-value pairs\n * for `object` which can be consumed by `_.fromPairs`. If `object` is a map\n * or set, its entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entriesIn\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairsIn(new Foo);\n * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)\n */\n var toPairsIn = createToPairs(keysIn);\n\n /**\n * An alternative to `_.reduce`; this method transforms `object` to a new\n * `accumulator` object which is the result of running each of its own\n * enumerable string keyed properties thru `iteratee`, with each invocation\n * potentially mutating the `accumulator` object. If `accumulator` is not\n * provided, a new object with the same `[[Prototype]]` will be used. The\n * iteratee is invoked with four arguments: (accumulator, value, key, object).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The custom accumulator value.\n * @returns {*} Returns the accumulated value.\n * @example\n *\n * _.transform([2, 3, 4], function(result, n) {\n * result.push(n *= n);\n * return n % 2 == 0;\n * }, []);\n * // => [4, 9]\n *\n * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] }\n */\n function transform(object, iteratee, accumulator) {\n var isArr = isArray(object),\n isArrLike = isArr || isBuffer(object) || isTypedArray(object);\n\n iteratee = getIteratee(iteratee, 4);\n if (accumulator == null) {\n var Ctor = object && object.constructor;\n if (isArrLike) {\n accumulator = isArr ? new Ctor : [];\n }\n else if (isObject(object)) {\n accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {};\n }\n else {\n accumulator = {};\n }\n }\n (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) {\n return iteratee(accumulator, value, index, object);\n });\n return accumulator;\n }\n\n /**\n * Removes the property at `path` of `object`.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 7 } }] };\n * _.unset(object, 'a[0].b.c');\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n *\n * _.unset(object, ['a', '0', 'b', 'c']);\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n */\n function unset(object, path) {\n return object == null ? true : baseUnset(object, path);\n }\n\n /**\n * This method is like `_.set` except that accepts `updater` to produce the\n * value to set. Use `_.updateWith` to customize `path` creation. The `updater`\n * is invoked with one argument: (value).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.update(object, 'a[0].b.c', function(n) { return n * n; });\n * console.log(object.a[0].b.c);\n * // => 9\n *\n * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; });\n * console.log(object.x[0].y.z);\n * // => 0\n */\n function update(object, path, updater) {\n return object == null ? object : baseUpdate(object, path, castFunction(updater));\n }\n\n /**\n * This method is like `_.update` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.updateWith(object, '[0][1]', _.constant('a'), Object);\n * // => { '0': { '1': 'a' } }\n */\n function updateWith(object, path, updater, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer);\n }\n\n /**\n * Creates an array of the own enumerable string keyed property values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.values(new Foo);\n * // => [1, 2] (iteration order is not guaranteed)\n *\n * _.values('hi');\n * // => ['h', 'i']\n */\n function values(object) {\n return object == null ? [] : baseValues(object, keys(object));\n }\n\n /**\n * Creates an array of the own and inherited enumerable string keyed property\n * values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.valuesIn(new Foo);\n * // => [1, 2, 3] (iteration order is not guaranteed)\n */\n function valuesIn(object) {\n return object == null ? [] : baseValues(object, keysIn(object));\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Clamps `number` within the inclusive `lower` and `upper` bounds.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Number\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n * @example\n *\n * _.clamp(-10, -5, 5);\n * // => -5\n *\n * _.clamp(10, -5, 5);\n * // => 5\n */\n function clamp(number, lower, upper) {\n if (upper === undefined) {\n upper = lower;\n lower = undefined;\n }\n if (upper !== undefined) {\n upper = toNumber(upper);\n upper = upper === upper ? upper : 0;\n }\n if (lower !== undefined) {\n lower = toNumber(lower);\n lower = lower === lower ? lower : 0;\n }\n return baseClamp(toNumber(number), lower, upper);\n }\n\n /**\n * Checks if `n` is between `start` and up to, but not including, `end`. If\n * `end` is not specified, it's set to `start` with `start` then set to `0`.\n * If `start` is greater than `end` the params are swapped to support\n * negative ranges.\n *\n * @static\n * @memberOf _\n * @since 3.3.0\n * @category Number\n * @param {number} number The number to check.\n * @param {number} [start=0] The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n * @see _.range, _.rangeRight\n * @example\n *\n * _.inRange(3, 2, 4);\n * // => true\n *\n * _.inRange(4, 8);\n * // => true\n *\n * _.inRange(4, 2);\n * // => false\n *\n * _.inRange(2, 2);\n * // => false\n *\n * _.inRange(1.2, 2);\n * // => true\n *\n * _.inRange(5.2, 4);\n * // => false\n *\n * _.inRange(-3, -2, -6);\n * // => true\n */\n function inRange(number, start, end) {\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n number = toNumber(number);\n return baseInRange(number, start, end);\n }\n\n /**\n * Produces a random number between the inclusive `lower` and `upper` bounds.\n * If only one argument is provided a number between `0` and the given number\n * is returned. If `floating` is `true`, or either `lower` or `upper` are\n * floats, a floating-point number is returned instead of an integer.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Number\n * @param {number} [lower=0] The lower bound.\n * @param {number} [upper=1] The upper bound.\n * @param {boolean} [floating] Specify returning a floating-point number.\n * @returns {number} Returns the random number.\n * @example\n *\n * _.random(0, 5);\n * // => an integer between 0 and 5\n *\n * _.random(5);\n * // => also an integer between 0 and 5\n *\n * _.random(5, true);\n * // => a floating-point number between 0 and 5\n *\n * _.random(1.2, 5.2);\n * // => a floating-point number between 1.2 and 5.2\n */\n function random(lower, upper, floating) {\n if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n upper = floating = undefined;\n }\n if (floating === undefined) {\n if (typeof upper == 'boolean') {\n floating = upper;\n upper = undefined;\n }\n else if (typeof lower == 'boolean') {\n floating = lower;\n lower = undefined;\n }\n }\n if (lower === undefined && upper === undefined) {\n lower = 0;\n upper = 1;\n }\n else {\n lower = toFinite(lower);\n if (upper === undefined) {\n upper = lower;\n lower = 0;\n } else {\n upper = toFinite(upper);\n }\n }\n if (lower > upper) {\n var temp = lower;\n lower = upper;\n upper = temp;\n }\n if (floating || lower % 1 || upper % 1) {\n var rand = nativeRandom();\n return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n }\n return baseRandom(lower, upper);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\n var camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n });\n\n /**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\n function capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n }\n\n /**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\n function deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n }\n\n /**\n * Checks if `string` ends with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=string.length] The position to search up to.\n * @returns {boolean} Returns `true` if `string` ends with `target`,\n * else `false`.\n * @example\n *\n * _.endsWith('abc', 'c');\n * // => true\n *\n * _.endsWith('abc', 'b');\n * // => false\n *\n * _.endsWith('abc', 'b', 2);\n * // => true\n */\n function endsWith(string, target, position) {\n string = toString(string);\n target = baseToString(target);\n\n var length = string.length;\n position = position === undefined\n ? length\n : baseClamp(toInteger(position), 0, length);\n\n var end = position;\n position -= target.length;\n return position >= 0 && string.slice(position, end) == target;\n }\n\n /**\n * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n * corresponding HTML entities.\n *\n * **Note:** No other characters are escaped. To escape additional\n * characters use a third-party library like [_he_](https://mths.be/he).\n *\n * Though the \">\" character is escaped for symmetry, characters like\n * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n * unless they're part of a tag or unquoted attribute value. See\n * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n * (under \"semi-related fun fact\") for more details.\n *\n * When working with HTML you should always\n * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n * XSS vectors.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escape('fred, barney, & pebbles');\n * // => 'fred, barney, & pebbles'\n */\n function escape(string) {\n string = toString(string);\n return (string && reHasUnescapedHtml.test(string))\n ? string.replace(reUnescapedHtml, escapeHtmlChar)\n : string;\n }\n\n /**\n * Escapes the `RegExp` special characters \"^\", \"$\", \"\\\", \".\", \"*\", \"+\",\n * \"?\", \"(\", \")\", \"[\", \"]\", \"{\", \"}\", and \"|\" in `string`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escapeRegExp('[lodash](https://lodash.com/)');\n * // => '\\[lodash\\]\\(https://lodash\\.com/\\)'\n */\n function escapeRegExp(string) {\n string = toString(string);\n return (string && reHasRegExpChar.test(string))\n ? string.replace(reRegExpChar, '\\\\$&')\n : string;\n }\n\n /**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\n var kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n });\n\n /**\n * Converts `string`, as space separated words, to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the lower cased string.\n * @example\n *\n * _.lowerCase('--Foo-Bar--');\n * // => 'foo bar'\n *\n * _.lowerCase('fooBar');\n * // => 'foo bar'\n *\n * _.lowerCase('__FOO_BAR__');\n * // => 'foo bar'\n */\n var lowerCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + word.toLowerCase();\n });\n\n /**\n * Converts the first character of `string` to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.lowerFirst('Fred');\n * // => 'fred'\n *\n * _.lowerFirst('FRED');\n * // => 'fRED'\n */\n var lowerFirst = createCaseFirst('toLowerCase');\n\n /**\n * Pads `string` on the left and right sides if it's shorter than `length`.\n * Padding characters are truncated if they can't be evenly divided by `length`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.pad('abc', 8);\n * // => ' abc '\n *\n * _.pad('abc', 8, '_-');\n * // => '_-abc_-_'\n *\n * _.pad('abc', 3);\n * // => 'abc'\n */\n function pad(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n if (!length || strLength >= length) {\n return string;\n }\n var mid = (length - strLength) / 2;\n return (\n createPadding(nativeFloor(mid), chars) +\n string +\n createPadding(nativeCeil(mid), chars)\n );\n }\n\n /**\n * Pads `string` on the right side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padEnd('abc', 6);\n * // => 'abc '\n *\n * _.padEnd('abc', 6, '_-');\n * // => 'abc_-_'\n *\n * _.padEnd('abc', 3);\n * // => 'abc'\n */\n function padEnd(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (string + createPadding(length - strLength, chars))\n : string;\n }\n\n /**\n * Pads `string` on the left side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padStart('abc', 6);\n * // => ' abc'\n *\n * _.padStart('abc', 6, '_-');\n * // => '_-_abc'\n *\n * _.padStart('abc', 3);\n * // => 'abc'\n */\n function padStart(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (createPadding(length - strLength, chars) + string)\n : string;\n }\n\n /**\n * Converts `string` to an integer of the specified radix. If `radix` is\n * `undefined` or `0`, a `radix` of `10` is used unless `value` is a\n * hexadecimal, in which case a `radix` of `16` is used.\n *\n * **Note:** This method aligns with the\n * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category String\n * @param {string} string The string to convert.\n * @param {number} [radix=10] The radix to interpret `value` by.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.parseInt('08');\n * // => 8\n *\n * _.map(['6', '08', '10'], _.parseInt);\n * // => [6, 8, 10]\n */\n function parseInt(string, radix, guard) {\n if (guard || radix == null) {\n radix = 0;\n } else if (radix) {\n radix = +radix;\n }\n return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);\n }\n\n /**\n * Repeats the given string `n` times.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to repeat.\n * @param {number} [n=1] The number of times to repeat the string.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {string} Returns the repeated string.\n * @example\n *\n * _.repeat('*', 3);\n * // => '***'\n *\n * _.repeat('abc', 2);\n * // => 'abcabc'\n *\n * _.repeat('abc', 0);\n * // => ''\n */\n function repeat(string, n, guard) {\n if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n return baseRepeat(toString(string), n);\n }\n\n /**\n * Replaces matches for `pattern` in `string` with `replacement`.\n *\n * **Note:** This method is based on\n * [`String#replace`](https://mdn.io/String/replace).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to modify.\n * @param {RegExp|string} pattern The pattern to replace.\n * @param {Function|string} replacement The match replacement.\n * @returns {string} Returns the modified string.\n * @example\n *\n * _.replace('Hi Fred', 'Fred', 'Barney');\n * // => 'Hi Barney'\n */\n function replace() {\n var args = arguments,\n string = toString(args[0]);\n\n return args.length < 3 ? string : string.replace(args[1], args[2]);\n }\n\n /**\n * Converts `string` to\n * [snake case](https://en.wikipedia.org/wiki/Snake_case).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the snake cased string.\n * @example\n *\n * _.snakeCase('Foo Bar');\n * // => 'foo_bar'\n *\n * _.snakeCase('fooBar');\n * // => 'foo_bar'\n *\n * _.snakeCase('--FOO-BAR--');\n * // => 'foo_bar'\n */\n var snakeCase = createCompounder(function(result, word, index) {\n return result + (index ? '_' : '') + word.toLowerCase();\n });\n\n /**\n * Splits `string` by `separator`.\n *\n * **Note:** This method is based on\n * [`String#split`](https://mdn.io/String/split).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to split.\n * @param {RegExp|string} separator The separator pattern to split by.\n * @param {number} [limit] The length to truncate results to.\n * @returns {Array} Returns the string segments.\n * @example\n *\n * _.split('a-b-c', '-', 2);\n * // => ['a', 'b']\n */\n function split(string, separator, limit) {\n if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {\n separator = limit = undefined;\n }\n limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;\n if (!limit) {\n return [];\n }\n string = toString(string);\n if (string && (\n typeof separator == 'string' ||\n (separator != null && !isRegExp(separator))\n )) {\n separator = baseToString(separator);\n if (!separator && hasUnicode(string)) {\n return castSlice(stringToArray(string), 0, limit);\n }\n }\n return string.split(separator, limit);\n }\n\n /**\n * Converts `string` to\n * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).\n *\n * @static\n * @memberOf _\n * @since 3.1.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the start cased string.\n * @example\n *\n * _.startCase('--foo-bar--');\n * // => 'Foo Bar'\n *\n * _.startCase('fooBar');\n * // => 'Foo Bar'\n *\n * _.startCase('__FOO_BAR__');\n * // => 'FOO BAR'\n */\n var startCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + upperFirst(word);\n });\n\n /**\n * Checks if `string` starts with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=0] The position to search from.\n * @returns {boolean} Returns `true` if `string` starts with `target`,\n * else `false`.\n * @example\n *\n * _.startsWith('abc', 'a');\n * // => true\n *\n * _.startsWith('abc', 'b');\n * // => false\n *\n * _.startsWith('abc', 'b', 1);\n * // => true\n */\n function startsWith(string, target, position) {\n string = toString(string);\n position = position == null\n ? 0\n : baseClamp(toInteger(position), 0, string.length);\n\n target = baseToString(target);\n return string.slice(position, position + target.length) == target;\n }\n\n /**\n * Creates a compiled template function that can interpolate data properties\n * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n * properties may be accessed as free variables in the template. If a setting\n * object is given, it takes precedence over `_.templateSettings` values.\n *\n * **Note:** In the development build `_.template` utilizes\n * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n * for easier debugging.\n *\n * For more information on precompiling templates see\n * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n *\n * For more information on Chrome extension sandboxes see\n * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The template string.\n * @param {Object} [options={}] The options object.\n * @param {RegExp} [options.escape=_.templateSettings.escape]\n * The HTML \"escape\" delimiter.\n * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n * The \"evaluate\" delimiter.\n * @param {Object} [options.imports=_.templateSettings.imports]\n * An object to import into the template as free variables.\n * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n * The \"interpolate\" delimiter.\n * @param {string} [options.sourceURL='lodash.templateSources[n]']\n * The sourceURL of the compiled template.\n * @param {string} [options.variable='obj']\n * The data object variable name.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the compiled template function.\n * @example\n *\n * // Use the \"interpolate\" delimiter to create a compiled template.\n * var compiled = _.template('hello <%= user %>!');\n * compiled({ 'user': 'fred' });\n * // => 'hello fred!'\n *\n * // Use the HTML \"escape\" delimiter to escape data property values.\n * var compiled = _.template('<%- value %>');\n * compiled({ 'value': '